From f052c4ad0a23e18e303d26a5586e0ce0098a1c4f Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 13 Sep 2023 08:23:24 +0000 Subject: [PATCH 01/74] allat --- build.sh | 22 +- fonts/jet-bold.ttf | Bin 0 -> 277828 bytes fonts/jet-extra-bold.ttf | Bin 0 -> 213372 bytes src/common.c | 12 + src/editor.c | 529 ++++++++++++++++++++-- src/editor.h | 50 +++ src/file_browser.c | 7 +- src/file_browser.h | 11 + src/keychords.c | 63 +++ src/keychords.h | 40 ++ src/main.c | 934 +++++++++++++++++++++++++++++++-------- src/repl.c | 47 ++ src/repl.h | 18 + 13 files changed, 1499 insertions(+), 234 deletions(-) create mode 100644 fonts/jet-bold.ttf create mode 100644 fonts/jet-extra-bold.ttf create mode 100644 src/keychords.c create mode 100644 src/keychords.h create mode 100644 src/repl.c create mode 100644 src/repl.h diff --git a/build.sh b/build.sh index 2c961d43..952e8c88 100755 --- a/build.sh +++ b/build.sh @@ -6,10 +6,30 @@ CC="${CXX:-cc}" PKGS="sdl2 glew freetype2" CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb" LIBS=-lm -SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c" +# SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c" +SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c src/repl.c" + if [ `uname` = "Darwin" ]; then CFLAGS+=" -framework OpenGL" fi $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS` + + + + +# ORIGINAL +# set -xe + +# CC="${CXX:-cc}" +# PKGS="sdl2 glew freetype2" +# CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb" +# LIBS=-lm +# SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c" + +# if [ `uname` = "Darwin" ]; then +# CFLAGS+=" -framework OpenGL" +# fi + +# $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS` diff --git a/fonts/jet-bold.ttf b/fonts/jet-bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8c93043de6454ad2d5575f0751150c6551d9c588 GIT binary patch literal 277828 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

^Q2@p_nJptvCyhdNtfUDv9XvP^J$Tq^Yf}I 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 s3n!(`lCJDArN|NmBd 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

Zh7cd=34FaGWy`SDvi)66*nbC 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 RXt+-ctVzYaTEQjd{{RH8A$|Y= literal 0 HcmV?d00001 diff --git a/fonts/jet-extra-bold.ttf b/fonts/jet-extra-bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fe5be6a15846a6fbee3a4645829c533e21f9222f GIT binary patch literal 213372 zcmd442YgjU*YCe(@0o-S0YVFgQ%FJyz4wq%1(YfY3M3R21VKQ>j$OenVto|FiiH!f z7wp)3M@7Njdqv3ot~2NG1RnH#@4fH+{Qu$e~W6$1w9XCN3bMgBlUG>yY->-mn{9}t@}5y{kBN6x92UGS&?zmr2f=*Gu!XY zuUNXUeuu`jIbKTs$l(?9XJ>W$?h6UFzbuk5ZsCH(OTI7894%qcT4X@$g^Ok{T>ipU zxgv+r2YFMp@4=YY3NKvKV0!)jzexS?bN0vwpC5dT*Ts)-U%GQ)u)~(KogqQ;45||e z|JwOFCzoztT6JKsBeh>oO8#W@)IAwJ&AoEC>?c-&U}gBLoGaqW>(#;5Mr=?TM#NFZ z@<3ZZ%Bz_sT}=^tMQZx8R@c6ItbqJ~M{ka$sM=0k?FCWa?`=$0AG6w?^mR0? z|5d;A`2UoRwH)ocwnN9z4JkBs(qlM%O;>FKsr!ZYSz3YGRY|vB%WDUEzV1(#qjl-{ zPsgSDF&%rFN9|R8ylDAsSN)pW-wD++Iz#%NrRNLid3mX{UiY;>>YubJN^m+d6=Bx}93SUOUr$scsLgU-v`O9@WR0UKn~o8+ zho;phnpfMd<>ptC9)jW!BYg^P$>3Gog;^V6KVL>&{B|RL_WZ8O-o}Vr& z-FEGxrq#C7Q^$2%>rsEC+pT>`pHqu;x;?s2%TU{DTeMxOG0-y7=oMKdGPP`NtHz4PLr>5$ z6wRyqRF(9;^l>dmZK~UvFMVA5qv>9t?b7XZJ(||M+VB0K2XwE79`6HsZPB#mD@kc@ zRNJikPJr{_95@N|p0f;&gVW(y&^-TN<-3Tw&j5|}|4v%lTb<+Cu7+OIsk)a9*HHCu7f|0lEmGACv`trn z_Df?z&rO$;-qvzff!29(>bT}9gS1b^q|%y4eW+;6XkD6CA8&#opz)&I2f9yHw>9<@ z?LQ>jTuypRP`Z=yw^xzY`gA<325qy(kJhPn&^Bp(yP>N>_NB*TKIu-N?WqNNOvkg< ztFf#0(zNE+e0ogtT@9KyZA-0NkLftu3OZJ=@#$o{bqr{~o2UALCjGP-T?%SP^-;R5 z+JDWXHmAO-gx6%*>RYWt^QxvHZ?Z1!OS+uYxKHk{zAv5DHfudfDsQqM>3y0{+oEXu z(&_YZRlN>q-_+;o3(Z$OZ~7cWoAcCPs#zc;k6 zxFZ#t+t&$woB7xsh*Q6H@%N- zwPn(t>`SN9+uDZozQ0Q+^J-i}I&WI#&;Q(?+^5&#J$}C)uuax?2C!$9I)mt-SQUztie=PUqRPpS$g^R`zb~ zuI{@%+P3R_ZM()+8_;_V_v7kuRXv@)e$9rfvrmC_px5B^eL~ZEo~qhUuNk_n_f$QnNeaEDZ3Jz%qG`>y7qp$pHE8F5 zP%W2plX=IHrf!~vmsULkx3I1CssA9^@2^RZfNJ%nVJG7sA z57P3|wo_j)_t^0Ve9L_5CiG=}N{>DVzmr}~9-U8dUrEM}+VdPx|B+A55!qP_j)iux z2(p+*?uTZk$U#RyBn6*y?AS#5VDe?4dhU3b?Dy>)!|~wiBy)ke$XsczH3{>gdD*;bUN>)=x6Nkr zp83ptWqvVLK~B&u=oOR&_XiIKPX*5e?*~5xzlAoe6V?wKhB;w8Y!mhlj|@)?mxt$s z7lhY_w}grCnee6XEnCO7uyNbhme~F6L3X;m*j{PZ*h+hkeZanBKd@ieUuu1sdwTBG zxqn1Vq;{l1q;aH4Bo=8M$&Yl7bdU6n42lekEQ}lzIW}^9rg=!)p&(W|4Yqido!Mb}1ek8X@U6Ma4UZuEobC(+NNU&iXh z8pX0>En>N`yjc5KpIHCcz*tFaXl!I`RBTLaVr+73c5HF%_}JO8%VRgh?u^|Vdnooq zY*Xyn*o(23W7}ds#9h30yji?eJU`wh-adY8d`0|{`0eo*<2zeNTer?znRiXzwRyMZ zJ)ied-Wz$J=6#j-UEZ(x^Ya(vpP7GcL8F4~f~EyM3yvsQS#Wj1rh@khzAE^wZIib9 zwmqwzw99B;`r&mSZrC|vXI0gKRa2{WR8`^4x_olgS^COq)7_k(^wesz&b+XPr#>}b znxD;IL9?K1(o^^0sZDt5?WCt9%-H3rys&4u1W%oYr_Kv64A+Ef!^-g4@C|EhJ)2`& z+kSS49cQQ63+xs4I(vt`+um>Aw(r@G?az2>8J=35@>C-{)hy+yu8}^G{*fVgYDv;l z%Obb#;i>Fs^J<=29=#y?FFbW!^oHmyDNntOr?%j!&+wGQ>fxzocq$$%h;`rPso}dk zH9a;rc5LjF*mP$T4@YL!L6V*Kx&S!jHkH3;X z=KCtHD*98^t!hHmvZ~XnPO3Vw>IA>f|G)FComVhu>xcOvBQ|(8cuMyNF9gp8kK?@u zf;)mqRljjv*b0yAe3<{ANT0vsL9Ux0rnml6e;+8a^$U@Yj{IoeN25L(_ED5{(~mMg z;&bJXI%@uH7j3)fqvJkmy=~UEH@3aK?WJu`ZF^|z>aACNd?;tG+Pd=N@mnwXcf zec9VC+ji-;Rs1`9+o{|59C#bO-Bz}3#z*V*_|{Y45x5VY-#TaO@U5dsy|#7I)_z;p z`4as9TkCzeQ&U^H#(ucz!)HJI((m84LUr5G+qkcAbS=E8DgD{<%9d?gHYZbSwp_a9 znk{E;IrW1nACzs`vSrhjNn0jvnXsjY$b0v_M_b-~fz&~pKifR*ofqG^_nkX8Psm%5 zccQz<9v^-ie&aUiC(!0bcr4gAoM-v?STC10uy~;QPxyQIXZTmR(^|{blRP#2QJ>G& zvJI=}PUfgbu4c&;|J#@?w4E(iXnPQxVXw05?VXIH2kl1tgxzGHw$Iv^Exk&z?cb%j zG!*3?i9Cj_dM<_$~Z4|e7U=hEiCJ9gFDhW9p73=<+#n= z>z;Kly7%0Vx+f#Z$l(7}&oeSI>SWOCj3yb}JJFUIM0*Cd%y>HE#mokoDT~zTUV{kw zyPq0k^+=8Jp1;eb`@^MS$8c`gH#{l)(JcrM3roTwVR!B*?ZU}n+i*bGJ}eC13||Z1 z2s^vO@oNjok*MTJZ|-YFQX>1yIGG@2GDXVeSUFx!kdx(XIZv*Y>*OZxfR*9!a9}th zd_O$MeIXC=&4;(-ec38M%P)NMqRP}Y4NN1`!sM8k8DIvPA~VE{Hsj13GuJFI3(Ya% zP`5N37QPoA6Ltzu2v6sldZs(Z9pOH6i_E5QcKB{s>K3~n+>zls+$){?GW^ml47<7? z!_Yhx9vsHPD0j{-(vUAU)RLxrC!~oqlU(U4`O=pA^S&~Kd;D;T$#gkPDrBZCl{w)n za+Iu;^W{RhNN$ni%)auXY?Mv%nmjMB%ImUOzLjnAiF{>h7-Ot)vc*JAM-w;srk^Pc zUp0NqL1w&}WDYP#n1N=oG?tf{B|I$I@`|*Sx22W5%RT2k*+<@yxO~7I;zQ{!-%Ejf z#GUAC=^;Nz8~IoU$RE;Aev?76T?WdZQY<@Vu}m6idDc9~4DBWJ3UjpAn5Dg8wwi6`WAl;u#C&SL zUAT2MvQpL3Yq2Xv(~xd6369VcG-*LEE5R&>`p;6f&#p9rOtr z2YrJE%p1A{-Gd%M&!AJ#nK?v@pmosRybxrW--3ST_n^P|BN$-*38grQ3VCGAfydaI_C8;e>F{61#>dCWw z!|FMy!xL#MkMKRB$C#HsE;Zx{zW?*6bdhhQn|vp|6>^1{Ay=B2a+xWY+s%=3n^_`vn4=_NmWCDKjBsi=Gn^ilhttAY?pSwx z*v%c~jt=KA+wBwf4+n*jut(T4xZR!L?sNCrF1EexU_04vw!7`h9iSukfF8D&9mec; zh#hK&yX)MwwiPqvFT(3>%kYEnlkkS{s_@D1U$$xZM0id3X?RiiS@?3e!Dcc$`#f9~ zUKW03_X$^UKl(kqoY~sOaC7*0_(%9Uv+QSVYVi-%WO--B=fQ-CUs?;fA=bZl)XW zX1Mllf-7+quDcuVCb*D&ksjjDM>pHqw?jTp{ z_H+BY&Tg9P4yQ+>LLtpWDamFZLz-EqD9x>@)T&`=tGvd;e$5 zs1x>4`zbSmJM1I&XIJ0Vv@hD9TwRxGpSQoe99P3ux@PtsSI@p`e{(HdhF#~H+PhpG z`-=U|NhkeUFY=5+G*zK;ib9N{5^yloa_D%bjYwoOF@0!@nPV8&;4|}hx zWvf_my==EJ3;D=C#N7Ty)?l~UYnhkaYFE34F0?neEEm}8U9QWvx43;=V|%l`&#txC zxCYMHHLj&=WN%_E@UDH|Zn0bKhshP(_x2lB2ahwSd5ZbXm-YwdI4`i;n`kH51MFm5 zYRl{td!U_VXWALI!j`iRoMva+BkUr(*iN-8?D_Um)`jP==D3Wx(#7@?d#=6EUT*(o z&$Ab?4!PQ{w5#li_9VN^9%oOsN7`fU@pef#I@~WD6^;qVg%iVt;o|V{@Q83hxQOct zKix|8f96=s!?@}s36Di1o^UA|^@KVrj(NhlXxtO_MO%CHTb#@=l7u=(%J;YhXn`l> z2?BRV;SMfg3EIvR>bE!Bd%~B{LQkm2J9t8#KyZai5^_FsfF$7nv@`T!eZV&?xjPAW zUJ13l{+>|h%bE|u*HBgfO85pk$P;QAMIPo%!rj`#4Vt^RFl*v#tS}^n+Gc19?YG)- zIP``QDT>gMDfIk(Q|yn9N-+){onivY?4NId3bQj|p5`e>b#|zzkMtboiOk%Dd7S5D zbYhCL(Mc)JLk|G8-?gBA*RpSdDJd$^13jVk;UG__cADx5wNKML;rr-xPpEmzJwg0RXdhYBLThW8z5cnB%cC7pbb5c~H8gpPYPBn(WG(hKhOe1tY;5VZ_ zTHrAnvkN_D0D1&0B9HofvB#)Cmw1f&;Yg2B8y^KnlV97Sjm)0Zn+E+NshLzJsoZ4fMsL zcY55H=v|&r(|3EE`s5x@*cH9klU!TfM;gKqz29S=LLcyi8ZQreLiO)Mo-m4T^n`Kr zVGnBv{r0n`A^K>F0DUY)E%fmeP0=S(XpB9Xq6wG_#(Un!{Fr<+Q(N?=$Lyog^q*QQdFR?rv2 zoI>sKNeb=Xrzx~gpQX@teV*c5^otZ)_LnKNjIXNkHEA$4&~H4(pnCpy?AKWRK85z_ z2ak!OKYC0@^e2zexcb>+)W5%YOh5Ejk10fd^Mu-$-#w-e`iI9Hg#PI<~8YQs_9)ekS{xjXICUl*#b0vK7_~ zNi;6hUP+s^LTh?77Ff3?kqBDbqw&F-HVLcZ8SmP$qc+qQj^7`Ex z&GKmMumVoPidyuVp1iK(A6CUlbRJ=}51?_xDmjVX|5-IBN&34PX<#)jte}&qZ}r}g zyg#%-b37V@tgw^l{D3uf67`kI_2_(p6?hW$t%-Pa?x3-fj2C>U_nYKB2Y+d-B;y4? zvsO={^9YmYQQv9|CF5u?s(l0Xzy8LIqVoXOZ6398JCDv6SjTzPC&XMb?uMcrQfMp? zyUF++gLX=xep7pa&Qn+idf3$8qEU37!J5#ce(UMcIS0=kgl7QWZ+%eEc?Zt|JnAd8 z7wEi$=Mx_FkJ=Y>ZlW=rM181s1f8Rpq7>>wwF~H+g=ZTc^=FAk=PY{vPNF{4{)5h0 zc=q8@zYX{3yoP5Z9`)_W6#Jn2dUTG%vky-MRa=A35qO5;Q5&dlK<79-WAUh;)pnrs z3!OtGQTwUwbgUnPPDr7)QQLve5p?_~(SED#K$f9u7e)K6wg5Q^ElZ)cnc|UCP_>Jq z_Rv0qoQ|qp6t#i&6XY~>dJ45uxkpY#D^jQ}wV$A$cJfTXqy3)ckrn9d6l$A;J+d4< zB!$}VP>-xe=cLemb3O7e^sp3K-aL<7fX+{$_B-4o*PshhXgv!(aus?+3T@*ek6ewa zZxn5#`W1AZ#WN0%)_Igi=S}A56k5hokItcV{+FBsu1Alp#&M)U=RrJ8`!^?$2AwAv z^|zvV)t8FK-T5A#zKPL31JB{aT;vJWzgMQnMpt`u{%fvH(HULmkyU6S1^zZKc=Wf$ z%!?kKv38a_Eg;W==&ar%>q3J?jiIykK4$+nI?vY{jZ>b$6+g-PwU*= zQD>Opac`lS9*6(K8Xor&N_;4ewuH4jj<$!jJ?=HMj>i!fVSSIItzkotqrD+^R@@de z?r|TW#8%jb{U4$|0sp&?(Ir4!IBXW4n1b!_G*3oT^mI=~a}*yd!5s9=6j}!3CtS|{ zx#&5bfH4xD2j{c@aP$ICpn4%Negdx9;TpJwG}pUuE!;|aA$l9!L3$Os&J$>P2~Th_ zS_!m0&^ABo38*h5CX|4296s*}R-(j&5@`J|dV)*Pmps8D^bNqq!4;_b41&vfc7vZ4 z9lQE@onn4P@wH;8M?aNQ%(tlXm~T*GKtH)N-=j657U{3h+8#q}**YE__qLwL;4fR> zqhs1OfJU7AG};)lNz)J81Q>7T6%_wld~ayCZ4G)|*^1_S%*SYf$9#km7q%^VK0(_- zd(vN^g&y-c+QDPKLpwqz^8Ac;hHltL+uj{|kR~2&Pv}dU_St?=LR#B31cs8PP5LZM z3AFyVn0=3^n zk6wrDBu~%Ufb+6PoOrQ?g_A+y}+Z_etV%O$U-mj znBUNgJ%QTh3Xl06z0wo(N3ZjkKhQOvU;uiD$NY(|^8^FYgvV@0D?Py=^lpz{*X=!? zpa{L+qt|%*fF~G?zU|TLy?w_M6r)^g6us_St~E-4U+oqT!$B<98YNIaYn(x#<3?i( z0(@^j^#q(?HKrlZSkO3wAVf9(Aket@*%Mgw7f(Qp)cVq+*R|Yb9(_)ed$LF8EV-w6 z^chd?sUDs0g851&9u?kygDhLOA0!>3Y`d#gvDLvQow6Xo37J^Cyp zmv~SF`{WW2iadf64~k@<#Dk*GU~<=cBop1>(dRL_cY34-dY4C^&Eyh4ia3<`QS`Y^ z?!6v9A(PzuJi6}BC9V`cHIrQ8O40Ry?t>maNt4`%Ji6}B-RRNh)430O^qEBNBOZM| zovZbMK9k7RK7c-}&ee8k*l@?eKwq{{s3Kn z=c*4tpC#w2-9gvuxzBs_*=X(y9$o+CzUYy8=t~}5|K+~yky+>~9$j(e-F9<5ZE^DC1Pob!_ftk3OHxeb=Mw&RoW>A`4N* zuEJ-MlFRs2?r$DlujKyj(Py-|e|U7g5;2~T zJdxU-@MyGwC&VU^M$nkKMH$+}6ZS%zL38%g-$)Bjh^-Ff!yO$5J2$m_H(-96zPv=8*94a91s zKMWw<8y)Bgb>ARQs5-ik%b`!AxcuX%=qiuJZ&AjTqVu@uWgeZoMKAa0+%5VqkIvhoS9>gR z7{%6##ivoV(Hhcy&>H|d>6|Wl3#=uLf1_$6(0N~UqsILh6fUdcqsf8lF(=s_6-zL~D6M>>6Y2E4C?G#}ht**7Jnd zp!GfBr)UFDh@WFwo{;{<8hS$P7b7;6a05zwDj`0O5l@QMHa7R@+ABt!Dj_zC<$6Nw z8jE{E;w9GF6A~k_JWu!)S^&gd_#xWeV~O<`v7&@4Q2ecgf1<>V68?_%_JqV*jJQ!k zVkp+%qidlU{!_x6P~t$*HDqk4N7sn4;hu0KI>HlfM)9{2K8}v^*j#jsCnRQK6Fs{A zj7|3FIxIHb6aImgdqQF`R^icgX>5i^*OsxF9$jz6W_iN5(b*ndAI9c-!n@GJJmH<_ zJddu4WAi=XCiHNRu32LXJmFL5LQnV{dW0u@8eQbk^=@pjC%h3o*2CM2B*ryM(Y0Xg zcu)8ndWuKaim_8YwmEtloQ@4&K+k|PNpDBbg0o3KjA{%)cn_*}1YM8DbS#0@I8{G^ zu1#YayP)4nja>{YN!LU#@#y+8whAs~e*vm72f8+mUGCAfXzWUlu47|5#z5DxF&$T+ z>)P1W9$OdHu>`t?j&a>mbPXL-UxKc)V;U2n>+;wdkFJ$t*L!sR9J|3|qp121!pG2i zJ>lKx10EYgAM}K}?;%h4D5~c?&bfO02~VgtP~U^D;bZDo2+u_|&LF%U)tCT%))0Hq z6Jp2M%bxHGbeku99{tu6sy)8*gzM4oJvM^=;0dv7Jn%S8haN{P#H~ly+i`59xI54q zo^XE@Un=2vw3a6vi(+3ToPaj-IBXnm>2btVoNI^Th_g6jHQtK!>1b<@uJ7Y{9*6(p z#DwDLSG3fkM_MxtDM6gLd*>v2QTejca&?eB4e(E%Pu ze8vZQoVII_$CaT)9!Cts^&D{H&|;6%<0T$91|8yY`=VMmIIUCL1a2}q+~d>^BRo!R zt9<|$NA-Mg-B4{exI$FV0jK9_ec-gt{XDKKs{R8v6V-CTsUNl7;AWt@4Nh&Wz67T_ z(c`pFlRT~hJ;39-quK{>+K*C?)4Xaga2-(f4Y*F|fgYzmImqMG&r>~aIy%kcw0_+N zM@+=aJx=Yd?Et6yv=89gq1sPyTF)$xBM#!TJx=59V2|s99^!Et7l(SBwq=gTX{^ol zxVGqF9@i0_=W$xke2>#U9qw^zj|H%h_NY&e@VL(CB9GI)F7`N$BJLdKLVOG5$4r zwI}=my#`jZ|2yv`OIw7$nxq76I_ zzqQWtxO32k9(Nwv$m7mM8++UeG~45_b?YV`cMsaswP@#GBnrY)}gID?tV1laT`!#RB^;w>$t})LovSM@P8hDQ1sbf9==fQV<rIR{T;<$iqqrxOL1xs{H0i8EHC15 zT2IttiIcpT$7#Ruonl`_@tb0QLvftqv@Q7_hY#`!Ja!%0#^bb4Z9Vobw4KMPz1w^2 zD`=s|eu8%J*w@jH9{VTS$zzGJyv`nbJKDu#8S8mnJ@zfMo5wzkcK6sH(H+7*^qy0SgIkdmW{)!Ip*f-IE9{U$M$m7(XMIJ{?=MDDQ z^=Prj5fgbO9=jPG;-NW`H`HTaLx*|nALww8y%!zfaT@O%jjs2 z-G+|w*ay-5JoY1We~*0#9qX~zq2oOEMs&Q#K7dZ}*xS&F9(yf1$z$(F5AfJq(a9dW z8ZGs>hG?0`h3FKIy#YPY>BpoP+=XzXA^e~TWgwFHWo6z|l{oEz* zaF2Z#T>uLigYTn9cF?mZo`k6}JkskX!dX&e0gC6bC&usFRdhFxq zF&_IYdaTDjg&yaz8`0xE_Dl2xkNp8X(PN)LPx9Co&}AO0zB(DsqAwa3XM3#Lc)7=_ z?N@lL`s5sstw7K9SoPs~9;?1R-(%J17kI4t>O#1fy3}SXJyv7n62Na(eYhH~C4CCI z7KlfC8meOwthQx?$7(%ydhDg>T^{`$FYj)T)%M=w(a#3+bWDQ14AmF{dljl<04(jx zd%$D0T@QM!_Vpo;)qbem!CsC&?6LnsAMseV$Dc zafhLdFC`p}Qoa)IhceETa1=`1DB&0sdns1a_^$w4TFs9Qm2e!24V7>r`kp7e1^v_$ zYT5K%2^XWEdqQo?7oJe-{L&L@yRefIGS&-zf#0Z?y4p7JggelEJ>ktL_Gx<-`6r3A z6HiF|wR4cce&VlvsmI+a@*y_-@H##=Y>y^@SkLIl*JBxbO87Hc7DNO^g2Wze{!xH2y+ zNdzSmmqrqG;v`BcW+m*{rR(`6LyAd6XSa;%-u3meO>xTz$$0VlMy3(R;t3gBI=gIr z6QemhBy3?KY@f(3Db@NCO-f2q8FC`CB8f-FCT#wc^=(YulA$w)CNhSWMiXIP+4uuX z$(*yiG?ExQmR&_q^Uz(6nnmNjL&ZtDLrgBGB+}l8AYL0uI%qT0H zRZ*5O?aRtiJt&LJqCfHCvJMGX7#SK#*t`n*lvy&iG?5uEPSl7O;{i@7?~uqynj1?* zW>sd+D30hs?QV{5zW$$Z$%OZ)Q z38fs%QM;s?(jk#qn5bFOe!T?V%{ADJ7sm;gcyUD{m~n8z%%mZS%yu0TH47u!+In=$ z$_%p5-lFm{%~C!j+1gr#>uc7NlA*=zqPqg8cH!=URL7TM+S7y*x?Ua`x;$Q?PE8tH za?~M-NDhrmw-VRJD~9+g>i*5?iPoIO$-BB%{iJ#t|MB7tb$Mm|P+XJ~kCwF~i0cC6h`k8#XLS zn2O>=R(li)0ch=vyuu`N^93z(`WZ-&ZOmY-v7fPiBLnoFd8pewwLlgA~zq)Zkt~gSD zPqSu5vZRp|7Zivt-zXs%_|>YFqlJ+K&FIb}WqaPY$F`g^}_^v+@WRJyWhRQGq5pYRq;nOmu3W=)`#J z!cZ7a#O`%K#w&Wq^}_y-IS9uNiLPlESJulIsu7py(yr2(?4hMx6xEB}s+s5S@^mkZ z^hmb62c`LPhW_Vef~(J7TdVt}$(^Dd6ABh;d)8Hv?G@P0!A4vp zXM@dmEy{}ZN?VJIHuckj_^|Rs2HxI%xH7U#dw*B5CFQdieB4yI*x8bb9Ma`wTp#v4 zr-G(&{f`f;=$#X%hGFy*N!CJnd#Qwm=p{LWiwMqe1RQseJz7GE6?(VQMuhyIx|068 zE`p_h+7=O7;PO+pi1)`#19lxs)Z$_ii42Pm*Gkok1JlQno$;1V$i&i)k^bD!we^AD zNuj%3k;uqnYb1wu&0V|`|1v zw4`)w4)@eZ|FVviolRrL?cm*xj?Wpp+tK3Pj;7D8Uf!N(loTfVwy&NceNwu@A%%&4 z?UxgN8e_{D>3`QY9NIC_nI;ZRc3HzX-&?+d30kr5x`uO{k=Bus=Q}j4u(B5S8jb#B z{R%ap6Js#* z{)Mc2hmjad!f0Y#;d+zYGoD0p&jiggoI?{ek0vH*9!(sec{DM(khO%AkSZm`y`5B9 z;RfUPO(Es?9jN(?9z96&B~w#1UotgK^CeT$wa%erE7v+TQK5BeVuseKiJ6*b1c_Oi zM-#I(k0uV*JeoKp*{&g^4o$X8Q*)B-($w5!yEJuJvR#^*mu#1&<|o^wsl$`)($oTM z+<%t?7bdq7MI1Q7CkK;Uq(;|liDI@EbFU?-d6xL3<~cH%M-OP8qd0lMu2PRqZY9rH z>XUlLF+Qo;kENUezR2TzQZpRylbYcK@($cp-igVrWO*m~q-I~{lbZcx&K&5=JH;n8 z!>K;08BQbbpk3vip4>{7cZN@D_A`A_v!BJ8gM4{s`=n-A?vt8fMdA9|$(d~;BWJx0 z!l5jhxR;d`w@=iVod{cxU7Eh3cMukUPmgChY0l$b=a+m7DMvWx86aUE_m&gMk?xGg`Uit~$jV8$FWsNZm(jK9W(yS6*wAEvtB=6z%$_ z`|gvFdwOMSbJjRk3ul$;_N*b5ZFKwI8sc}zkg}Z00^N0gjb&nN(OEMmCUbH?e~Rji z4MqgLGumXdaIRjvdrj5p341O#@*x}CtPB~#TKIqKXO*myQ+Q|PX4c2~ti4AEAM=*Z z&Q-rwjpoR|k8Q4Y^y7a%9yU)MpCL13GH*%hS9P2zsyd3T^C`vj1&RR{CZf%mJPlnahDmxp@Z27mzP#4qad*Q~>1#7s4$(Z5RRNuoQS2Wa|M} z2mO>>KW%k9VanJFe~4se0Z*%H)PdH($gf!!@?Ze)1f(WUk!qd}H^4*i27JRe$sOzi zJ%A@VwPwQ!BDHG*d1{lV4o@oTd<5J1GIt~32}#`&;0Z|G#jr`F-Y}R3JUOZNG<*oZ z^WMt_&<2Wtr!Dmt0#9Wc)P^|R1U$vdY6ZQ3^0HRI8h8Md?AvJjkB9W7Z?fHIQtm5P^3u*7z$J2NH`a;O%rU>gnl<&F47F! zH@g6C7HNU~TVUfB--+a0B+{}W@K~v3F-#HJrw@z++R}=CwW7_fCcx(+5&9E(K_p6@ zQR<9YXbJdGzbO>E4W0m=l*M?;6vvNo{HUKI$FV{DHTa584nxR+ZZHbog`ap*SQ}>W z1dwv`DL2165GVPw06!EAfJrbPPKSTNT|k=(K7kz~Z8+YB<83(JhU0B%Yg^jdb}AeR z=K_66K1sWlr)Dp~XTTG&!lr=l3ipRY;3T*d*1=OizC!YKAYX@0FdU}C(QrQ8#7kD_ zS10<_iGFq727iild0(XKYPc6(7U{kK&V+0DrR$UVg+=oAn#{{kW{dRc4-;V?oCa6H zo$xw*Ez%d;^u;!Pu}xoW(-+(HJswuVZM@6{U-!e;{dwZo{}Nu}avt0W8{tj(mY2C? zKrUd5f!Ju^!|)a_cfsF-`oRP^3{HhBVFSDdUx^gqyCV8HxF$q_co|F`gQ=r96Iubb zDJJfUuVZ4+0=mM!fL}_m#SrojC7y>8&qF5yeH}_)hxLW=z*rf^wPJWZ$cKS&02~FJ zJDj?P)1Tq=XZW|w4(QJa`ZMA=_z1R(jBEt$p#%QK&(Z})vnKAt0 zIBniPfCqqn?oU6*($BG6+=s!BB9j^e`3@l80ZZT< zxE>ya*Wqh^S-S~v?U+0lRsz17`~B{*74VD5L3JSy2EZi1<_9qr4#Lj|-6b-W<5M|4mE%)6K9!i8 zS_#j zckY)WhvBEgT0mDIrVg6{`0=odMCL`{4PI{ZDKEEKFS3C2!mIhk2>Q8*e2d2e_FsGo zV6VmGS^TWX67n25kr&v|=A(OvEWJnMn89#AFRqD;97p^d_aWf_fUP3uoeMX>LqNOE`$pva6|hF+0{VYJH^6@vV3!L!!Z6q_ zauMyii1uGhnHMu|F8+#_qF~3Bv|%M}Sos&fG=lF}JtcA}m-T`>V28-% zwEyyPfDJCkMwf4Z$KhR(E3nlS*TU~2SMCq1MXs`NJYc_nl>zp>n%KOCn7W2Oua5Ad zAOp>TK3_W$-r}V})VGHAuVL(5Pu}aV0_wkk`foTDh`$?$@N%G*&>e`qo3PzY)O9mu z-rO6o`OPo#vY@sw7;Xpbb_;e}i#^w3i?!Hy?cKaMs0rjlPrzokehR&P!V8<2VdZYLfGb^i(oB00&l{%yj%z$ZKN+7JM(fO?DojLfZZM?J|4xU zk8$j=cEH$soW3M^hnEQvuTLH+vZ)c^lTF0bQ}^-Gpn*VJpTTd>P|vd*f0q5vVTBColbpz;hyRQvO@`@9j~% z)aOKA=+m4R`BaGLJAmKEXYa4$1wMa?eDE@#q@BTwda&Cz%KB(IFXW+ppX>wp=~H6p zQ_A{m8W2aHmoklR2KeHOZ+Phr^?t?nSFiJuorUlPFWGrX3(<%e&(e*S%7bTrp-Td{?GX3XKeHH!|)#bA@WNT=muk9KG5D@ zZUAie%ez1v{z^H&7Q%3t0Vlv^BEMmS-{$c$9%AM9cX$y`4|t51@EicNdHeOefTuT1 zf<9Ur@WNKKuf?kJHF(T#8Ur@tIZ!0CsEjmzc;jco5zJ+VyutIX|{U4By^0 ztviX~+dL+}3-F+&;7T!VI>KjS+G2~g^s60pwI@#@{Vsf0Oot=k0iaDC&lA&$zIHwr zJ{Hp@8#u4aCGZ5iE~aY-SS6+#{^+({O!wp9S1~=VgIC4$ECA~0wNOm&T5u@5z)N$8 zm%jJ#lAKJq2q?dQDey^ie{3-z7p4Q{45a))-C-sCE~bbWDf*Td<6!S%>|A^?(Dst4 z@Q9cpoICVZ9*V8wq1U})M&P>M1+CSF=|63gP5V#d>^ z@wbVY5P{A>nz6zI=^ z*yq4I#2kbTnai1jsQV!LJeB>^0%!2HcTV~LnE*?%T6cIHkoXI%iq26H8I_6{-2FNCMX ztiVPq-Vk#R<(%_`m~+d;oJU>f(XaC-!%Og+mMZzcU% zISUvAE3wZ?&bfqsT~Y?ifj(UFgP2v=Xw^748L-hR%DS{M;FC+20=ByJT``x{1MGF# z@xZvaycUcEwl9BG%oX*;Tt(Tde-*Qad~2}H^>MgI%ng)(1LxehOw3Ii#N15%x2zJg zmRMTb8|Vvj7ISMqI1C;FY;)THz)rVq6LWi4AYN|&Ld+e_p%)woC%`j6|CpPYb%z4} zTz5UZ0@xza9%yUg2)Gd5<}s25+F3alsB1lKU;mhx4Nc)vs1kGMAy6siu4(X@n7e7` z-PrOT^4vo`_i*fe0WXQUAHUsCzWeFV11*5|KY$+}>Jcr+& zy9VCm#U*{=cA#G`5KAu*_b;r2AH}?g|6e=>UJ>(B1kQpFc?n7{pxl?g7xM~zeT9C# zO1od333rNl&A|+~RSZ)W^LjDhlh@x7^F~h~R^NC_%$wNs&4oZry_Eyl;H{^4;Sqj) z8{52t{oa`cm9SIH=BaQSY!~w`ar-X)dXKW-qb=``7qcZFh@CBLf3QN#hbQs!lTko? zY@@&1u+c~Ni1~N{FFc6>b$rV9XSCxp;`6hc#e9y9K2Pv?68n8gY=4Pwzr6FuZ+82 z+W}?#M(qDi`~FxY=Fcubd$v>Gc8>jpAO3oYmoU-R9r$J^F|iXrRN^EaPH$PJ+x3`bkiOm!;P{LxNg!C8+&?1a(?S zQ1@5~>b)UB{SPE)uvUVsPB0qSpT(C68rFcR5;STAr}3hdRT5;6m7qyeI7x!0oh4}2 zM1tlVXI>ICKO3mCMJ9}dza+@HP=c1j;U@`lqwtFatzMBJa=ir61+YVc*!vRj8wo+{ zA9N5PryV1(^T@Um>^oF~QTS){)e?-M4P)rrek0%$3HI*^ z!{99V6exdeU$|F-adm(;j5`lLmtcGj%!YLmOy~~xNicCSY>;454>%bfli+|}uv~)4 z^#Pktraz@e!QFt3%kW8AF-(MmVJVQm>?*he9)VZkWB65qDK&stn9>eb!`BiVmxx+P`y=d*{*3`hPj%Vjie-z_Ve zm1p=9QCU;W^*hfqg*#tw%pa26yd!^p&~L|b-U1W|Yo=fjb!18dDJ*JR*H|WxVj0~w zV2vid$2h9wPiE}L2NpHRmYJ26l~J>K`)-Z8HHsI+GaGd)$j>jx$jEHIVdGtw$M1;u zKQ5kG-`cu0w4xhsF#9C(M`dU4o6jF}N>&!$%?Cj&wItL19?W1_^`HCy3QDW(|4Rxo z^v}6*718rFe^t|95X-Fsm(01VybpFiFTFpb_22Bz`L2jiy}ka=Ag23Yy}kQYJ1_ai3RC6nUu}Qebb0EuYWv&mwtr)~ey4vtZ&&?+ zegK!WdxrjDyuI1|w*W8i^2a;7@-v>R?Y}O)-{~Jxr78HMRWgX0NGs`E)T^bzQKK92 zY56E3*P0A_D4D__B+8$wQhQ?%)s$i88BU=hFJ|bt3E?Se`?p< zr+t@3(d>9O-GOKi9WGh%v&{q7uUK*Y&JT`l(SA;sVDkyLoVwvenq1H9kMWbWCkIJ0 zlBq$$m@cMOWR`}KBdw)RQO}wNLyo3(&IXQ)LHO@RnduocGC62l$8uZdG|z6td0ElS zntD~}*0o8K?8X_H*|`Cd5f8g{?b)Myemu?*pD6xn(aY-mubP~P80hKoKPdMT}F2rG`)wpvs0V49d;2C+DZzm+32uW7>u_3GBDA+1cS%$iNwyI6jHkF4%J zdnQ{Nr)jZ_>@329=5?dRru)dl2MjoTds&$jQ>seSRxURX8Ru%uOUQdZ?Ds9<75Po2xGkj%_MnfvjL=4=Y+ zyO#noYnWyKof3-r{nN?9bHIP7pHKc9(zVXgDXUS#yjY_)jia?|wrbzBN6P8F{@Lc4 znaOC0KRvd2?tor76KCvc|GsmE*J?Gmzb2g$5H8Hb7y`8=TMCN!(~i4BJ_wTcKp*nijq24QPpzo?cerP1 zpciOYvoz8NeKY!qL4%GMJ$Z76K7Be&4mQ*Jo!f`a?RRGHLgV-}RsSNDudKf8BfW~c zGobLaHF5|(4W{E==55x7(`%TJzlFo--=}3x3yoy10QI6-SvB=0nHBGm8gF|vKrab{ zdi2=68Dqwnq0>#zJ=(HvIwnbWJsH2zWc(&?MgRY5B@xV1TmI&fI;c|-vnirgubaDH zE;CH(YDuoz$?IgMUi-76+39~{&0{-XF?DwSY&r#-Pr3g1yHCLY$)b}6$lGlI@45f4 zR1EF8KRK}XQcgPNH2<39JvCW=MnSq9<{Axm)my;5Q!fyiuKIZss-4#+eIDgathT>x zwfzmN?Qgf+evNtGzhC}le{w8nKeS!Rd%ACLvR!-W-*3T$!b_qelH^K#ep zO}$gQl*4!3%Lg>2Err}w`fyk2Ao~@K$~4aEZI3@G7uaQZBEw~JIkv*z4ocnz(>Ixn z45_G*zR9#}TaXuRmD{pelg5o2)RPXTL(TM!hFL}ru6=vlZc>wwYmL$3GLZX5z+XTO^sdFtIAb?6>AjdM zo4*&g%H5~suDfyE#A~FD^f!0o9`PPgokN(;|9MBAXM(@GCl5L4aerG*HZnQ7`XonH zdPT73{`87q&;98c`JVgJGxGjb4b%u&J6V24W^hn4>V1A4ZN6Up)7BdG#dtxZzP9N7 zh3kE2>>>K3qxTp_e(FNM$AyavJpbbSD_(W;s#P}!n|FR}TJFd>p6xgVK7U2fFLdr6OO+1-?E ztuCIG)vZUoxOZ==)&Fk3IjB4RaDJxm_(>}_8+AUJ>{8OiMM)DUO+(l8g1{P$&Jb{{ zBu(n3_P=<06Zp8U@^1K^duP`=nq4!}XlA4tNuzbNjATjnNZz&Cj+a=9V_T9p*^Xjc zvE#&Xu$4sxOo@{smXH7`A-wtEO9*yYTA-wTzm`x6gd`+}Lc>~XvM)Py0%`v%szkl@;v+d`T2DF zyt=h5yrs1{i^*HcD%Tb>zg$~1QBI2^-lK^z`Q?1ks9lgkj6|!ii#Pf2*Tfr9PNa~( z-=v8*qMS&fXjh0gf)vtB`K9($D^3uRz$FuQ10t9;X-kNpn8c?u1W=pLEDESkEl~~8 zH6f}n$%#WwT`Q4B1%K+5m;z?#6nG=Tm1Jp>))RcTKLzL;G8mIDEctFMRl=mg0t*;h zse~aJ8)w16YIBYoo7-t(#k2DZolQ-h3lG}PA8kr@G_mVxcJv(jMtyiMUtRzZ{AT6gQ0Ym|a1sB>|2abL;%F>+iYL_v*` z(QY?by*N_DcFZoY7_f>@(-uBN&+@V0)+FJJL2-?8^_^%-l)o%nL^=9^wzP8e;euX& zi&oCeN}cp&=8&wg6#hJOJlhe+L^#pZDs;1ma2K1^V#a-jl%)i}EYs&AsmSFLeKvO_ zar}}lGZ?1x)6)y*&$AfwcU1E)X~G z%-2WKA7K0Xzc!l&z%2EmMY_N2Qgtd+h&_k~MMD^u){tGY+ue2}=ZxDNO>zejP6dL6 zz4w_fDHh}X&-{gg<9luK>opS-Vb-u1l{>0-k4Msfg*D(U@U;OjMr)&@NBQNMJE4?% zgtZa%-%$5QFHDrFr{%O9P89l#WjH2)O#w(X=tK~w`cg$Iw#`E`!YkF^O*GEF9S@cW;9_UsI z;L0w-Re>{;5txnWoiw4I4_2EiL`2~Q_>5J54^F5Avt*V*bSclO#v&E-Qw zwSA>6z00lPAYVh6&G6Hq&8>&}jIoGv4RaJ@p|Okd|B~0KYei$EvGa0Vjv$%p9vM_< z&x-o#tnyV^d*}CAYZ_4KG8J>HVTHYrD`<~bfkt(uIwS=+kRnZyP%R)6+!SIe*RauW zh)Lkv>%;ZIiqc}UNvdL1DoaY>AQ2FaZO67Zn@uWssALYnWZ#C`s!d0`dya1&Jl31o(erAKO=h)zIcX-oN-j=4;eNC+&_150sww8}I(s(y^(2E##Wv|@w6ISDEO0R2< ze=GgJ99U{TTE3)b)U7nBZ-D^c0%A!uvQ>HgkHAZRB2`Fn>0iY(*b1PJ@G;3G4+HmV z!o;A&Dyt>>2a7yBHYT2kkOXIf1ZTzhVH1Fe0TdQkCn*T_u^G3C$%;&7&@~3feR^8R7-bv%M<{xBOBIFuS)+X zyR@pI0h&RH1X8U%LUR}-M+V6ex*@6(-emi^>r!*PsUhCnaOG*1 zoB|~v_?Rd`|5W+kvBsu2>r|m+>LRT{2iBk%=dvx;Vr94hG;JB-g6c{@)K<}VkIN1; zP%5^2fW7m1QL%T<-0Cwk@GqmM)~xS&*Pox+uq%;FCU(i!IuESdc*2){nK{${$`%rh z&BQqH_W8*?kBP{zK>6hw3p4=s6#WGe7WFk2s2LYo9j3ZgIy&@h2~KCVWH16(0gjCg zD&LEtC=*~m0ALg2p+fckRE?;{F5Ix*Sjs`So)1`y)oe6KwX9Z0^;MaoJsN}B5Hy^2 zi3;#LJsz%?FtH}=&4+sut;y=h*sg=`0RQrEq9NY0e$TFheJ5?5Q)}y5n`6ONi_1B? zb@If?{n2=Rq`TDRc*j`(WCx~+506jN#hhu%FBc#xL;WD1jxH7?upiq_2vc34NV3Uz ziqI2TSpn-enG6%yrI;#3F=w!Tn$_;5&o2Y@ukZq)EZ`l0P?71uTYUpSpBp@!r7T#k zeex3|Z9$imw3mm=;$i19+Jd*RmYUY!uesKseC)^y%X;zlY~4YsRokg;~yR!9q+q+xV^chGuhny!P8Bh?E2ct z&i8z>__po+6CLNf8ymZ3o@$Gy87F*#?f0UcwW$r7C3x@qQnK>aG!kb^)lC z0YbDB5YZc7kS$-3x6jWn!VpP+LkUS;M#ex>fI4#MOWDT}2@6xndd#^Xa1f1%xh=67H6A!?vrM(n4!WM5=T2GDKM2# zPGO4i8w3xO&2S)VWNL5xDcrQc7KFy{hE>N>rD)kF`JAB|!ZNhJ6I`Y$&-A^L*sqQklI(Op1^B zbfGyjDG5~;BeYAKoTHJmy=}P@6d4+7-)K$Ws!!9q`L0{Yn*uNQK79 z_kR{ZOq+MGynN8d{(g~+VMxbI*nBl%;6cB;%#0A9Y#8*HGt|&t3e_$uRNKqT1ww|` z1F>2yzzMQFs>s#9Guu3#eO;j^1R+zJK@W>p5c6aDZO zwv zghG<7i${v4B90;m-~nwf@5?(XLiH(H(q*dPqE8jbQFz!_$7eLuYNx?=n*AP_be`L?3f5W_*QUUGp z_wsr9OwPRImun(~D5rT5^)*cy-%#jZfDmRs7%5O(!uN50lnZo^a)epyUqA}1e11A` zP9uu4Zq=O?I4d|ga^F2Y3WyYjSAKTQNBc4VX>UY2_-&fq#>vs2b6|tYw zfyp~4S98Xd+4!PdTkp(45#`!?=hqhpMTmYxfs9xYh~J={SQAhRK2YeQIjaaXK{8oQ z0P{)7P-cStNk}18MhH}sz5nX7e}3i5X=Q=k!}g{>k-k6{l2{Uw(u5-8i_~>hks$

0EeY-&nt4U^^tnfY~A{$gQMI%&c>?{UcUJ0E`hP;ao>0pdfHuItOgN zVSU_XD^`UJ+pWG|wE}=l;}7_m6bkxl0yQ4D!(LKcXfqq7a#n6r;T%Y$ZN$unP38!< zKXXChX;L|7KsiqLPjA|P=GgIgZM0GTQ|0a>x7~f&wzIG~Ib9oXwCx+&zCRL-R90-; ze_%ZQr~6vF&NfH8V!>c7mYL6%V#i7P65pXO5s0!(`FF`8KrbhX!Rwp+dbvk->+gvf ze@Nv316F!2pg)JzQogCbuOg?MD3EBUGN(M#-&a>CeE#1@{qO1T zq20cymtUiDh;MC>Fh+3->ZK0pM|=lAU+b173ywjmpq4>iA9j=Ap&o{&%we!vm=&-Q zWDwJoCgt^K~wFSkaCX4yPTYHvNA1al5JI`T-VqHll_4OqCyZYM`%}p?D zst#9?*^a(aux=_{LeB^a0NMt|jW9Rh)Ve(_RtyIG4wdfVP9T(k)4J!@Zr?lH=ykcg zcizu9BYloTgNso z98f>i*SE4A{HyfehAR#<)>Jp*sPSdtr0ivtBu?@pHK0njWm1(iCk}uO=FZ?TBm*=G zDfI)GRk~uh-Ua6eBCv{E_CxDJc1;Y1Hp2KJl=nUE&2F`lif)djJWk-2exIYtSycoH z2-0&ID^t}?F>do>Rws{Cte7NWn2d>JN0Xyvmlq6WBgw6klkci)Y^;knHrl$|0jw|F z+m<{%d1>*vPO zlWHFcfnDCHI=3E2VEyG@HzeLd*i}Pcp(C)Wp_?ZXcPVw7tl-cF-}19%U_iz z@I4KgY^qzNCRUMSQ=Jr6&4k4mO($+>QH^23qIy!dsHTbQTJrcZ5UFaBo&UT5S(lo0 zztuOqU5o6T_BD{TNous0!6dtEIg{)amn))TN?#QQ*;{X2Zt0F?!>R*iC$=wH#|)O5 zzihA2vgylA_o`UtZ}H_6+HkU!%RZzwW@M$>Ar&9Mtu8sFoNv_*DX{hYL#lp{LvW)* z3SAs2)zw2v$~d7=@Wi;qmB~aZxXdB_<(8?bEyE-W@4{kq zs=a%TA5Xr?akJOrdT)_`0rtC58c3~ybvNk%&15g)WiniMxqaYKPFhG6Ce;2=R7S!~ zs*8miBaLpC6__c5_QxF$g)?TRp0-Y?Kw!!fYxBUAN7Z}~RS`r5G^Jtmbbs3(gzK!c znOL}?v?C2o05nW3|5eb;noyuN3;di~b-^pBkE zJI`yN7G$zoP@CJaR!+$)MWqj@B-IAT2D?zwrflK^7DHRDYEWEQx~nLW*{m*#jkD~E z#*{PLC*HsRWMAhz7IeC^Pj0z#CA}%p z_#X0Mc~4_Ph1+*?$+cekkUkSuQddJCjmrg26!>5!<+S*^#>il%AOoO)F+1Ggm~|Su zg06f{EmgNdy=54!6fA8Sk{eajSJvk#mjf)I@mZO<0CEgV5pMU{fjP;&etxt4z=7>O zLsrH3&_fFY1D6%+kg=|*sjeRT`;Mutlc#%=^O5nLJI5DanNIfN9@;>TG5AMUKC}Qp z4NEga6gQrc6@|`72rFpXNdf zf4?cHmy@ZJ_8t<>gsD^ZbCX%mRq4->2^0xC;(ej4@&FfhM0q%;oQSd*-#1q%|CU}( zCQu{%go2Ov&?z|3JF1?{`d6vklulWAW?pe%K0`Tvz`_J0gck;)CS22NW^Hk z0JV@}G{XnPWCfj(4oDUYZVy?;R?1lUz`(!0HdY-jCyg;|7of?iVKpR?8%dTRGoPGY z(w3k-0tlKmOq+|*W&yv-j`VFV(*X;A;$Q+K1LdQ3-Fjq=>~eb{*fF#9RV@{zqis? zNx(YS(*cyp)6=P715N?V31Pm+wRCapdbW**QTC3p!Q(wW#|I~0plwh6-n5&zGK^z( zx}=0ubPZUB3XnAi0fw+k10Dpfk^BNx%NR2VceiO2%SEQ;ju5OtEY^UkUL%PPK9?pJ zr!ilC_~GfDAN#P=_qDIF9rHU!Zk_Wvx6Y?O#TR;5#e8a|2UY6n1fOk2i=2AmgCaht z)UyiHf&Lj0i`8V3CkWcb^25k-KQZYrvh=5_GgTC&XN1=iyCka`=tuzmV2H+B8>j{5 z3qF8{7PUX7F?y)P&a6Xw@%3!aa3y-zAjacAv0et z1i*8_ShS^U>%>B1ZEd4`?aEZ5=fth)$Jh=UfBI7xCjO)5WRr~WSl6##|0;b}{wKQi zNA$*Qe1&~cx*}O%;r#3s7&zkzG9YSE&~Zi&n~mR+kK;GucT+i@vr62@Liio@j6k-N z4EvV%a}gHwFe=*c{1dF}@p&NH=?Sve7Hxpss%^X^pW&0AU;bTcdzt#Lu2B9;PI+bw z-&~=bkB#0BZ9!(tF?GylTm#Fu|803Pt6w0u>NviaU7yIUT7HenaSAt(R$KAGd80;p zhtO!(gVtKimMMaA_y$PPRzO-ZgQ168Oquo-SYb{F5re)sVV@W!a_I) z)D+fKRaW>jR&an#3s?a$DvSd@!rY7LE0yo*z*2Rst#$ZG|07?+FK1jHLAo;5!c3r;n^oY_~B39F$8tTJ>N?ICjHN^ zy@rN2LOp;6&@kB-n2p>70Of;dc%vM}iG+3(9U&d5FixvY)o7#U^gsd=&kZP}PG7I1mi5NG(N#DI{ck453eaQc4>+V(Tq4~vMR#ek5<&bB`0y#L@oJa&t@ zKvs$@`(oBpoWA3i0bKQF7?i4Rl7?cLOVzM*auBc|qY ztP%SEuOL=R9nifzcMNUz+%yz7`D4f=4?xF5BNf&z*hSn{1@69~nB8H(-IMG{avwNy z$Kc!ut{}*v2M%Bw=jJexPh(1db}8}9{4e@1^*@T~#LVu*)J4&y1el4SwCi~rxM(ya zZd133Ls!5C5fXXC0*y3RqWM$h=m>TazGV}bQ?TRum%{WUCa|05AW>KyJ##`gm1urL>v+QI?@y^`fYT%a7(v# z8AT5ydh_lg-W7fng@3rJNxA;dm{YIf#x_Mc?xZ)^L&|C4b)%dXms0+tno@&wa9+BW z=uz#E(WqgRigLho`>xt4$cj4Z01lV}j||SP;FcxgVuYcj(b#7MeXYXCL2wu|Oo0A^ z-N~;qmLe)rAqA@KjvAl?evJsJ7czO+iPa;A4pZbm;bGEPSKF{~S+NcGY@JYDOjul8 z&@#!on5E~1gNYa=5lk@}0fP(3hB#O|wq2HkNk6|IbO#d$OmEA*WkE*}vKkDCR9hJi zuMl{wajDrNIcwNV3@X{!!|a?)X3?=M5sf%i2%Z2yIkRD`51TvTWi2^W66WF-*6qqy1pYiyQKlUXj3xO`(B5) zx#K`{$NOBB$CD$peSFE2UEAmne=|FE*Wa64(tl{FpJOju>Gr3g@$iOFrrE9i(S#2r{#IvGliTNe{#N{J z+rE|+ue-?`DJ_k7Z(8@!8DF4d?RN2TqJtH81bpdV`vSk&ia$VG=+>iq!YPHN<0+d0 z0lo|hQ&N@+WgFQciz}aGcn;~T;lu{4HSHi`2B4`?1<|E-u!Gz#+<$&o*c~RuFctwA z0Zts(9_I$c9fQHgJTC6qqzmx_K<|?sTN@j#+917|(*B`FfWg6B>BNBce3LOk5I8vcQgkq$u zrdl6XMt4Y~vgZv-(;aSwBJoyrNKY&G>&nCKcGz)+b4En|GGu*2{xXmOX<=-o7#8?e zp(MozFyHh+SCY~I1n)>|!U;gmx^XcnXOy{hFu+`|8%IqIt(y_H@A>dcF80DM7@1?F zlj~rhEB&Raf4Q=7J|WbjP?o}&t07AP!=zm*lkAZ0(RofJh)rRSQuq(@a@Y2u3LL2B z5(wv~#s^tiBUPz?$+u|+FTs=`#s*aEEAptWh^mFK@48&Lt#A9@g{J!YCOLYfqwmCI zvN7J=(VG4|NEGilCs8StLrw%>{PaPsWPPgi-6Jf4(hq@oB zk2cgbR@dCSdGyuhgJ&O!MVcekk*c%XZo1>7Ek4{92v8e_66-DNp4vU=Eid&uvWWBL+kNy#i>qX-mwPR@Y`DQn zXB5r(3#)PL2^<1!b{qn+5jfC+1t+JScAyOP6o;!2=8t6K59=9&G7XB%2^6=1WD{ms zTdQD0y;NTvstz?)3yfQ1#K4ESmOAc;d7+(c?_E8!Y2)#}R9o-Rnwd>4@pv*Bk5^Hk zpZYfBNISGDG2YX&(<&Do80g#EK9`I)bj&1bYZKi~X*#g;=&J|UOo2qfCzuu|DPzx! zpjV-YuxHjWcl-S5$uB$;u9J)Q-ac0sUi=MS1i=mW)mK5?J5mV@R(SwUGeELP9m^4N z3GlfJ>XelhL9+nJf^1fh0i2jnKs(SPXj(&6Q!=$<|DXNY!gs&xaX-0#$1mm|eRTe3 z?f}J$&|348p($_8#H0e7Y(~h>!#NFGEY|(-yY03TgobcWUN`gz;=e*fsY#;6OsnJ$ ztDzzt9UG>3<4-<`=CAD7|NYsm)Pt?F5%gjI4l>1Ez z|Kq~-M}*27Dj8p|FNW#>M3aHzfT4=X;E=?h@jHP+8G3S=GMuEGAhB#8 zm^R{{p;4Ozfm=g>k{@3yTxeVR?O4hhag>F_0BQnp#D-DbbX0#PoInyHQZNj7FmiUV zfA-+P*>AI*=}+$3#dgD)sc-QAJ$%O<>e8R%OOIqQ{2s;;=j9$5UBwVY`43fDoQ9TN z|JyjMqCS<=kVXCP<}eE(NU8DFL;l`Mjn zo5Z|vU#1Gb9U51g73$=fIP{?zz5 z{hJZM_0s|~RCRSNHf*bs>o|$qS;M!qF`xH_D6~6DhwmP2KWtOyB(6qx-Go zTw~e$7>oqcUk~(_m-qTv=i)WcJA${j4#y?gWbQcC20IwpU}`+EW1-PtgZ>DPPSNzs(Onf4yTGpFubV3> zZpL4W*H~x8)^dBI)scP?bHh8ux6@H|I|;Tfzg(jXqMRs$sIO6m{QCT4VbFlX<<%JU zQqQHHk+WgDwt)|sLzo2{y7CjDROAI}vB zZMIJ)fV&C}q)n!yJz=ciDV^HYfB74>P0i*jv?ldi4|Q?sn!62Gb5%x`G}D^34_ zeJ=eg=AUEXxw-TYDE=pZFQ1pYa^@w!T)TioIn9fxuN%UkfA9d8O~k5UDHHfi{=qrg zXsE5Qns2I&PJHGm*7rGbt`gD1_`A58>|Wl--$C(66p_lg4;d5XFUzx{95+0*9W%Zm z!T6KQqPZwH!K02-vpM+NA_Vw zTm~g}6zVYFU{q>G~0Dex&tklzs#j*{ZY1-LO_QJOG_0IXFl# zp_gprk%iybb%hLqNj|r1odl=9#!5aYwC=0&UtqPd3vclakSes+W%x)?^KboWATl(y zjZ#AlI5HH6g8incy#f23nP5$(6>NB5U}M(anKBr%h1m7>$)Vi6l#yFYa9lC5ASsx7 zogr7G*!2M%?-nT{HA{W0IAyaigUO5>ZyH`&U%(ItAJL5JX;7eT64*xCx3^ZMu3!@}DIrGqL1Z2tF#T3Dg5Li6qF}CsWN!9zq55 z$s$cH^E8l7tVtx%Qd13dyR)S)(HF0)Zmwwt&g11_l8U4V3#;fh59BXG>>}hDWI`^0 zn<+vNg$P0bdMuT|cb#rM7(IuXe%iIGW&8T>HFq2cR{Zjd&CQ3$c6aY=Y1!F*h%i$8 z7#^&ML@MZ?FUN;l2W}}?SGKKpY|=Jsh}EtgHFh+NBwB~#?B_MuIN?aNCjD^GS6)$3 z?hE29@rC1eiU_WtAy4_`ny`~!uH7~H<=WjW%1>a!i1+`a${vbxx|>9~b~kllBb9M` zmdkvDeG8xm-BDC-!JX=ob`L#EOI#^sLV2ndJ|qH8s6L=1E@%}H&j*11K`gweNFX(A zzA2Jb0kOs~pUmiYL0icLx5Ew>Vp2P^;QAx07MjD67I+eWsOQL+5qqb%H`de?V;AQa ze}_mRm__Q{1AG=muU`?pzW(31H^{x)AtfMfLsibmR9L^A2)mu64)Y`cr6ushRN)If zHUl@v;T;lGe+pp>nKxcj6JNN;cIQFf2kOlD_(907qCtNBKEkJuTd8Q}{F;54>_KqN z;(K0R$~&03e(5=xzvouo@t|~vAbl`(h8+e>qTv%p0hDpWXtyjM2SG7B$ZCu#;wna@ zEX)k) z>*?>I^Fz2p>E(3hU;==%_z}+XQkVe}S4<+v0cV+AsOKU06FMyf1CV4M?T%YuA&U%7 zoMj&%K!WqoIYg+i3!`Qcd0xdKb&Qqln(>o(_q*Rcv-5omPVWmZyfFXL+$|$F&v~8O z=3XLBw;!DV{0x00I9<4wT}2~UV?TbASs%1$C`|eAHx55ZdSqA$kNFaC};rO>&DL-3+_`+&N}f3O4l)KNxR(a-LPp-PgC_a$HF=Qd$(bWP;w!jEMmVz2^Oc8L@ zeh@ckbR%A86&bsEa5p5grC9}+cckT>vI*S4-Gr>!gMYg;!X+=}w0!mTJ@D%^_lrNXT!Un<;+a!t4; zTnFZ5xYEc5j^Yyvt(=1!zCpUBJB@$<3Rao&Xr=hf&9YT!YKeZ4@fZU{NeP$|H?Zu^ zF@jsX#?9c^RQgk7@x^w4Wb@u&4^U+JLpl8kNJjWBBlyf=Gg;*2cdTm3*Gqcnasuvl zdYp)RiT87BJu5YC0aby% z`UC_LNhT+et`Qr>|3vT2W&>CSuANmCywy~hJ@6)VQ?)Br!^`Ns8o~;8wxSq;m5W2g zTz+#oN=wLD0};^?Vwrr?7?wwkcn7l#&oWEK8g4o~8w*xNXAiwUd-2X~UmJ)-0&BPL zTrwwF6Ji3Qbvk8(oQ&K6ib<0lf^F~zkVCRX%;0j1S`?IhFR7mT_p(8?oS2t zzvULC@OPgC(OE-Wy^kB}2MeLlr`RUNMPis5L#YkTvCJ~F2GuzKt62m3U)ng7lH~_N z;Y94X`aRM#Zph3)aKFF-2x_&%%Z{XK$=6GU;^nM`$KWA{K`y2cgJA`O;efyFa%b<~ zPCq&QP*&$@6s75pgq+%&7ed1~vPMW4dj97q~!;_If5%3z);pI-7YK5UzHD0(; z-Bj(0)$)%gR<8tHK}ooTZ&SAuiR2LZDpW1bC&Xifmm~`er`f#R@PE@<;@>*myviN9 znllNj$_nf|n`2>r{W6n5suZYdpoI!ZkMV(Bg%2!vJwJX!lTHi|o!m+YZ_IFlte?R3 z==w&)DH1}Dn3D?B0=%?RrBrCi_wYp#noCuB0u6?zD0#!`k^0~ZOUi6d&eez@bX*>c zU?;=s=m(p3E<}P=VXob}tXS6CZr_`^C%J|zy&C4x;6M0yIqUp+mH)_Baf$M!DlSpJ zRK+FAm#Vl#IahJvgiyOsap5mBgswZU7N~TQtVV*^YBt5H03u?CmnV12)yOAzsVa+w zPL0KHfll60hERuAgV_L?nltBxI6Dj%bqGJp61Rcr_s*uDz(1@uX9r!vf6MG0^&rWM z|9_u<0M^SLfV1pKXLi5eJ2NxAlxoqA56Vzl;PBtcx9#&}G6Fshp?Y8k%fo9Kd8i&* znsNy+9`4C(?IPjWP%rv%DssQ1a8n?~OlR`A*E8@im551U7S^qUJCjSUT7)^(JzAfk z{FWIXh=o?}ECppGa$Dx{fs5CKuavsW+{#Y%_Pt-feQ79g2!e>ulxZ82!89S{!tz&Z z-OBZr?6|jizh(zFSau6GtQi?uLqGmd$d4ap%wEx(H*|Mz;6GJ9giJ5@Ro%ICfi?Q> z2Q$^gq^p$-j>oEr2vT3eWrIvXQX?{%^BN`~q9N~+O}1EY-CC_C__hlNIYH8DQJLn0 zO}}}4igAy)wl}EH$(_}zM=v3JG1W^N2OM|L1*{>$q%p)CTGF|^hY5bg905RT@;Aln zqBRr&i2K*$*qaO#(Tu=X7H*Qss)+y(cy3g}xLA=^bV_WLX4DE_P39f9FHds$lH9-(9$Txob-PNn*UWqPn_b zc0Tsd1 z%-gs(wh<1n5FVanFR=d`bL|JT_B90E14+Ver@a`b<4!U6M7(}diBT-QX++!uVlkEp zyl0ZOL8eOJ5i&F5j~F2u7_l9fK8jdn>Z4He(UYl6n6bD16gIEFBEY0@RUlds%?iZl zXMS6O?op}+q|yTMVH0bSFN6&$vos{vv~TbsqldiJvaYpj{fJV~WC}z!lsdfZg_hb_ zi?6t}xFFixTKCt_^=HRwThn$Eb_5@aLjJ5{%hLWXilx@fD zEcTc9VX;rycGUiJ@okA8fWl|KBi7uL78b`A`5wzjX|5b(5m{C@ls z05?J|hZOe_7eBTEOw{oYse>uI0Ch^s>fqjhFFh# zcy_qnC3(~S z{$10~0nEWxOdzG_G{Iz$RQmk0LSa<#8FRwZdlE2@dZcS`Nu8;-LXLAH7Zv*na8+TCZ4 z-f?y^YCL4Dy@ew2re9_C{O5`E{S0t2{a~tt;7=*_22ZdV6&AKo#z13vL02Tf;uZ=V zgew#oje{aJ1Zn%LD2sCy5}A12Wu+xW-1v|ZY?{?f&U&5zF2iW5K0Pvh#w3?TMoter zLdi7OByQTlZEiarfj#afVUN4^P8)J+*0oVO&3jsLx;x^?shP3IO-&{-7P1!BBcqp^ zF@wT3r(9SCiS4TKkQ)pc)TC#~de(ct(WLyvGxr-U%9r4Y{a4}f-66Syd=n!3 zC#x5~j@9IC@E!ggzM5JT^nSE0PBiSkP>+A6dLl&~PQoPWlX1d-0|cP7eItTedx&!s zn-dk}36311tK9HU{|1MT{7gkSLTp_DBx3Ip@@+D!3Cd{W;;JNUwxqH=jJ@>ng>xo$ z+qjXE8~+D#s%=j{a{L|WUOk#ZmN;zEG2UIG0_YY#r}$^?iYfmDpZB9#CaK@!0K$AN z>u`d0GC!l;nR7I$7xn@6GNr_%RylE?cOb0{-g!4~gG3`_498~}|DsPK<`#WVx>2SP z$t9*%<=oUttfnxvB4Pw^S~qB89~=746Z=W6QeeL2vGnyX$f5Liy{nzhH6B*SZLK%~ z=F9j)>bsFIBbc!A>;EjTMl@;%`V^6#6Dd-V&lqgO2?RBRr|(IeQCy+8#E)8FM}mjP z=(m~Q8fJc@mhwwjf5!OWn>~`MM+@=;)WDlo#tm9d2yG->5pepQh|5511So^cUPuIt zwC%W|V0c2-?zp7Pu9%$|L4hulw*8Iq+in|QpnvXh7h5Pc4%+0w2uuNtfk`YO#A}re_yg>TX&1!}LDpP5(Mv$HsVU_5qcM^ZcZ6td@;C#Cyrq zlW$1BL|abJB8_nyp|<9W6cEAS9#H75x)0G3oyGkIkYY@U zKjo$G_!i3hYAjWpH({O*IGXeSMO<%u1bJjXa{fHV_nbVs7(K7DBw7+EN;(DGdfWns z@fI`+zIH#cO8gM28K4S6b`$3c@K(*dBg2X;?A>xYl{&p;?_P>uw-?m)m#Yr1TYI>B zuCqSgO{#Z69r9S9Y1(QkbtEo+Wfq7m29~xvGs~f_*ivo=Nvhz@RJ43;k8X)*=GXo1G=w;0TDlf`%o!G}W5H z)8WKLXkKf`nu1PSBzm!O_n||(|Mg<}bY-ZfCRB;R|MYJL?!lWU<>TpzHG4Z|V>KITM0{RpL=Hqd05gWOhMoXxnTF6y^9tS0ek&o~ zoEHoD-6HjI4cJ<{%}nvB)c<9AW>02K>(m+Z*v!n>`Ki~<;c9dS^ZIYhk^Z--n|JJ* zVq@v2W@@XqMajE_Ckx_N%|+T!9F@b>0}{U}wO;oLTp^)2_#FyWp5b?b6@Cs?mQtn_ zSUW{@en-zqm?gZbgcq746Kl`SmHoA^wKg`kE-cNJJve`mbbWAwMrT`aPkMQ0;q0HW zhQN&>F#-A*CinbVA@3JgBP9#Qu^fI96yaZ7Gt1!&>>gLw3aD+z$Z z?E?1;(+;!Qe&7H*GE>|)GP;*7u)b)0NFKd(>B(XWlJPnVZ>zdN!a76L-ix&rP9U8jz)@?2?gGf13-)eo2#IL^V60bB;< z?}O)@5W0A_IZelJ$8VTAm=&AKp+VS5-nu!n)y}h*UXOm%lkH* zKD2XZYgZR*@Sfbb?m#E_WS+6^h4yAd+r$xvsXQ%kQ0h;ub~0u{Ky8KvhR_S+1W4Sf zVH&1UWpB+mWXKyviO}&>B|$NcYEUVt!wBAL60Zf_tnfM`H2^{9E}9H;T~sCnQr#qF)_I#uEZGBvw%Ckenv zN!5CuHOxPGKK)I+I|0sMJKkMNw+UE9VJ>6>(vSC(IqZ}mfiQE@IFC}P6m9VAQ5Y{L zd=TqAnEVcib@l|$hJA3)-1!-)FbGwW`{WJzvi-FRna*!z&wmRoJ zaV83lUkXFT(o} z5VAj0AICwJH96;3C3UAdF+Y%kk#H1}@dS2N5J!=01Bsi#EKpd@ih#GuS4E~8z~&Ir z%%W1%OqLUqqFr+iV#N3aG@QEk-czUUU3Ki4zXLazIFLyEUBY(m5NkYm?%cujch(;4 zW?vd=OeP!CcXu_6k2jFmLr8KNALWm;dwu=)DBp**L@+!Y46>~>Lko&SFw8}Zt`Q5O zpMr}dr{uyyN)IDAMpJ>Q045k<)5}P!ttN>fC`ZAWaIhcEOrO2&&czSid&gb3pP4hB zH1d=&Po^)j^X%3%z#C#3(XRotkAr~g^o#s@<)4-3Vdll522qZg>{CgR6@(5BBM_me zkJxCS#n5h%Z6Ej^5oyc@!$4b+4L&6>0JI`9IR$v&J>+zVr?PpNQrXL5LH5i1x9^b%JL?H$dM#?l6Oh4UXSx1LL z$w4dgfL1N%OZekZW=RpFyQ~xgH&I?meza6j0kQ6o>_fz9Q3KZI1T;d<`BS(5=pTCe ztlI}B4j{x2jS@dL`Sij6zI)zW^4?;@>aJAx>Qe`AS$nYKzUKHXR0IE@N3?_EpbjOF zPeM{JqB1~pge#MHTqJD7)rpZ1;}YN^8B8x#0Tfw%5I?xA6i*gALF_p+4N9!TixJ(m zAd`2O875Ax?dl&sHF4i@5@n8`si~{0IU`3$`&)Yu({@wOrd@1fFc1i)KUE#9f_W!L zw>{`!4m2LfLZg;I;~!7|T8>^yAHup4H0~h-1R2*THsVY21^m`t`d$cefX2z@A`co5 z@JyS_K;!xsD?{Us%hdk#Z_|gck(?j|1L%D*Sl*@3c;Np88pmdEhU_&Udka9u|E2!f z3o;8{VlX`EgW2y``nN#F3s`h+)yA9Q2hazKlPoKPZPxYbdovfS{{s8}xhv(1n9~L8W z{rA{{jqv9ArVt6*vGV|iBRLG1Hj9D_8YloG)mjcD9uhbV*(4GUGxTgZ7P4cRXQ4*9 z@FoxA{?h>XtVZAbK>&j|y|E~a82vs0$CC|XGi%bsjZ9#d3>>er3l!re>%f4aW{1vR zu8(Yr)YU~EyigUb4Y!A)m+v^x-anaKms~U2eQ2$De8l4q`pYX%1w6h$xqE1LO)B1u zIA3hAJ24u^bkd0?i?fU{aFsw$2Y3fBS8Hs4b%r2TMpDW<63kE0P4fud*N;a zYa8n^&o@-FUGTpC$m@N#5@;n*{V1+iFvq1uxYX&YSA9I7%ERcvSZNavS=xi)llB0E zN8C1W#O)CHlF%YmDlS+3=Qj_2;hj(>Y&&_A*@6uiU0j6SMd;AUgH`F*m@l~Z=v4KA ztYt2cVu(_t0)BxSzQR5- z4}CmZP|fMl!U^6&#;_fq_5GB|6$w-k=xuFL)THkamxX_^VO!3GzpJQXC;*{z^XP-?gi?bywGd_;oSX*!T#3 zVpp!noqKxT*>g*$On=^jKlk8IR?RlHHM}$4-X4EvLmNg1-7vY_V|2Ik`QltLKiPTU zKX%y4;6FM@!BMdA?4G%O(+hR60}D?by7e!g3)TFNhcgh!KbgqZrJ@<+pVk4yV?UaH z%gBE;eTaQ1eJD+2J&N8Z(Ay01Pq+5lLjI%a5%yX7;r$fIKM}TE#+aO!aYY$-+A!-Y_zT}Ix9z?JbcUU!xxYxF+vOp8rqD83USqEj2?8v zAFbse{uwocYV<&-kOc1R1}~ju#e>x3P(L-<&pvdCw>cN8tO$V;YCFNkrOiC3A1&rU z{RIWW)S{rc0Dksjq$<>}HB8_MN6H1zAGrDGv0c9e&>x^2TLC%x%#oY7A0&^6nYwTd z@QUky0Lo7RJ1Dc~N+>^e5h&0NQGT_`iYR}u92mdkUV`%Te$$Krp8)rkh4P!6fgmuj z?#R%sdxjQ96}ESjorpMnK4-)@n`mTX&+OVfu zGZ*1U5c#DDKivb_y~;xPYtPM|LU(Q*T$uf-=!qP?a^=dd&3$XPgTMUajN7r=RSxQ; z#>xYATF0pqX_hH=9*>Slj$6>+Qc%ECpu-fofbb%-ApaF7=UI8@zmf$Aem zJh5yycz_2oK)yr>j4r^aJnveF0k>4GAUKMO{Cis7HG;diHkRjJYtwVDEhw$Xz4re1 zBl}vbvXGyB&2-8p@~?q5(10m6b=Ck?KJ`ZYDG$(~4p3t;HD}>v8CvZDK0w%bV0094 zg8Rl~1{iB|3r}5LvyhY1gw-IeTxMvs2^!jMgSYke-e#NGR~>7P+fJDpnrb8aW}sJ? zgU$mhx&gEylTAU*AhArjo|R#Rd;r)En5b(|Kmk`mPAcHwxZSN5tgi$Fz(B0FiClU~ zP}ZQz3aJ8aPc;Pj+MqeHLt%m~ibXSPak=&E8L)C#c<3Rch|Imf!*t7W%D2=nqH@0u zr)3DZ>7UC4R+7$va#7w;=McD|&Ve5)Bk3Ht%<+Gsa{y|M;ix(X(1JWGws((?^m;2mqf4OaZc*Bq6==b}F$Hs>LeRzB(==*o_rT=$d5W^y7fY{$6FrF)` z8$hyDYmpM@qLFLfUE;rbkN{<)o;`6pKG(zm~jGw#Q7_7Sfs-^r=D`uPTG27YmaOGfn^H3OD1%PL4y zGaUWfM<=W{gQ3u}_k;iQ$dQHdaX4LnJuu*O4)CyANPvxDlA?jQla&+=*{ijTq9McT z(qP#sjos~^(->YpU^GOej&_BxqrnGF%OH4EVO_OE%K&`|u^c$d-`8F(N3~buZJCJw zx#`^$P`*?67D2xF{U=S39W=iH*#zid6*)K{<^k1{FWk7|^6A}h>v8*SoDvf$l{+-G z1ltrbsn)!G_tF{5n5-s*GDSUO z8HE&3btBZ!qdcO(;^G3V4GYr0OXD(HyoLeuS93%Le__#i92aU5rp1Jfp)E+!cS`X2OjO71Rp5%|u=#xOEM7n4y0)HcdpCqZ4pf0wbBHL6Bo=euWKH4tc#pXpbyQvMsA=@lg%^`;6W{-H25`$v?qK_5*C8 z@U{jRAVE8=YZjYulmRSo&0;h3s{u-Y5(oy6q7w=Qzr!z%v(=(<^16Kw84jy)`H`iC zkeA#vD7Zr^?xIu7I&psSJN+Vl&yBOr@$vMFa=1B zmVJC4349iFC=4|W7U()Kg%N~iY;A#PqtG0F2ssNZ<^t0MpTchhdg|+X{pkc+6aXR3 z*chKN)nXc-$MJqeq8?BTWAauk;7&Y1b8!(Uhskq>D_^jfNSFXUnbBBh992CJ3oI~i z$?`e0Vrd-^&zbtu51?Zc;FwKF&IMzf^bhd!GM@uMZB;{K^pI0)zNfyYuc>Y{j5(nm zl1{#Wl$qF32x>-iLShWXztg%%p?^u;SV!&>s9aEHcN#4)YC+mv^eN;qhg|(%{382l z`rFT6WleLx`SINR_kTsh=0itNZ6;l-asO$i*>bUYwIo| zh1AoA?ukA`as9uVy4YW&*LOA1-#zg4W5ftxnn}94)HI_X<`LNa-qaGBk}4 z;Z^qY2s@Y_Bsbtypz^%1QXLUtr%tMKfm5!nvs*2&Pyt(N%UbqBh-4y^l5$2yp;U;0@r_*%TJ zE&f_C_A`WO`bUh04g~3zK`l+*>!md3*MUKDLJ%cOCn`@rp_h|!eN2>KTc`AL9JH)* zn5N-9?}0o0&)+ZhPEI-ALz@^JE+vk0OTd54u&pGN-i*_0x`1!Z3Ns(3MXDWvplUMJ5iDgO zkHtpvS;13oD4`={DrB=%>ZU>tQl4r@6P#7XPQfLmi_T$DD?g*qnMjp>ntV^k* z6!G8iWN}%UooDAHqb>A>yi<7JYUn24+MTQ;6N2}2-m)wG%)%9P>97?(?lGHD4ee0=W`C1_RIGX*COiagrjxPIa^iHtbhRzflB zvUoVu0l+~qxdP=*&;~WRI7L$j-S=eOsxdCOESp`tbGS?~B1Ko(upu|Ucmgie`x43A z^x~AjqZ=C!E@;FG6yl6}iG~e>_o3{$lrL49z*;xK07$ihY36rTqdZy>kdQVvS{(@m zS}R)d4u4a%6&Ha=znw_&4NZVxz+(}SM}@=%EQscW12WUwcYMS8qrIydYF9_v_O2Ni zMH=bD&E4J2_5Ql%=DOOJ?kn;a1`c*5#(LU^;40g7Q)}PUDrA&iV4dBqt=)&4VzH)< z#`Hh8LRGJcZMc{ssj4De8=AH+&NbxdIK~5CD}=_S&UR!=X09J)%Vf|*TAw z9923p)zXI4+9JFj`;sYe+%|%4(WKo==rn~mBnk^tfk{G9vAAA@84Xr=s=d_|`VO`? zZsw+yHEQGw+!DVOxCWHa5M;g}y(q{RYd}T-_!%ix$cp%dbo#+}pSioKp}^70jT*Wp zQ@8Z(OZqx0XU;Z1d(V6CzkgsPwjtacKMI2eD3zcV?2vP`$%u4jfM+HHtVo6p7UYIP zL{9itS`e`ZCtRLD|FJ{iPqLr1$#q%UEE%x`P_ZO_nvZlzMNWJTZ+Ul zePNYOQj$Ou^P@dYNW8YPkf`oKowL*}_p*euhbxjKkM%mO{ zQ_~F81b37ciEHs1P~N`I`2|b}7<4%W&H$Fpv?Bo{3_$1j6RAmBl}ZLNA#B*`kmb$5 zoS`A-rk-ShM~>mj1Qw);mZAaSiXh<`5y7CzgvDT>LVOwcxuVQFW;1rTnwTeZ{D3f! zc7b)oTASCtGJ)3T)2%Z`nJ#I@u3zn+?ZO@`9mFK3pFO)z7uprOKkt z`*sZVY%28|s@yYM*X=8k3$}H4Zfk1Zp7e(>sC-qt4ce_y#m8A%?of+$ zpi4`p*f2!4QWZJh$ubs#DiGd;?>Tss6Z=`ca4GXUH$)aj-hBA7Z+!aH<;`;Y&5;VP zaeDmc>2dan3m1M|8JSm^7Rp&h>9Bx5mts5MZXmNatVAmoUB5wzfx$(To5(6!ZO*wp ziH$;@F7?{Xu(AU^$2M*})^lKc&k!!ko9i1J>+2hvuE<6G6CE8B{g)RO&N@%TH~Yf}P>azDR9T!&IQbTI+qsjverv?8!EQs9o+58_?QYvY;`BDvoa@`u-nP5TUK?+$VOOpw9ea8%?3pdP zWU32Yh_|xOBJrn`$uvg&6GA>LiIFD2ZCev(g$61@#O+ALOvO6HcA_I| zGCi|qbYh#==W>)e&p68*E}wVX#FkXsTBB*5ZDRE4J!dg(O`)q4iQy|>p?|N2noO69 z&hB}7bfUkrvmeXO?@SIUp2xDAOdcPJc%qaLS1KiRc{>;VMET=txyb~~M%y~{4!(8p zj>=3a-oZ;V2sPhm3f`gC7Vi-FG`%A%`oZ79CzJQ?J)+dEu_IbUwi@aEs>D=`eAiC+ z+Q^7;1Y2RV!3h>nmzeNY7(2s4Ot?GI{n-k0Bkbh~qZOb^GZ7^KMp`9<0TiAbqi|V) zLk0Y!)+WPgR31xJ`n*695D&mx`FarfWMZi7d1)P0waPS$T{e(N4Z?8s< z+JO`S=74P|2gjhZ7Pg^TFb8fF%}P|@98FoaqUqHf=+F&DRl_?R2Lg>`$p*4SDgrnw zNSjj|=xl&%00W5t92YDQFSX0WY(wWjp{#;JkvLg{SbhF-Pp!8WcJkb@kA%tsomwUN z?IN6kIb8x)Ohl^so>=(dxgqI~=kjEQWzv18!eN7iMzU5Kr zLGuxy2aYFjXi}rVlLQBnZZ;zjx#+LQK_ZD97}!}-XFmi&FsO=nuf!S}Vo0;Q zYwhmhqCFdLIZoqx9rIKnE9rkP>yO7%Ws8?!lx#@9>e!S>Y;@p&4dQ?mLjv-FEgwv6 z^p|3Dl-r?x0n8->xWVbyfEz{#qXIW~Ak|}h>j1kkNZXhsBAZb>UJ1d$%qFgg(VT9$ zm$li>t&e~*#Oz?GAjYwV!{^Q&p1!Moa#vGzbfP9sez9pITBD;?jI|-1AzA0bmLiCh7T|c%xD8U^QeH@SeUn}W*s)N0(C*L_Gu>ngK`(=)xj^0nIZ4{Ot3sYMU)b|{3nDu`wS?jqD44Cga? zAf7VW04E#-2P9ZpodYYiWkYl1+EMgf5&*DQFKtN;SJFPIsc_jb z8opCtHe|X$Ar~qAg08wl3^}49YR)0pzSkk%A{@3#iuh(h_)snUt?Cn)*(^!2>A`KH z?H40XMMorW*ECgc{inNsf^EZ`6~W%Ty;H&}YCoF2eZ1I4XE7R8CCOLGA+1UE0*0^x z;77J05KaS@=r962DT?W4{4y!~Y?xD%vIXwfbcnN8tiZ&562N?8`tU!RMTVcDhn{%o zp(hUY_A-RC02FbR4FN7Woc+Gg!XQQO~S46AsXSn zr6#w&?|tm^k391G-d?=Fws!H1x;^~=o4PlFkE*=)htG3npUE=&B$=6H_L)rfWilb_ zge5=%S%3f`fe;9?2na-xMKGX%wrNGQvDLQPdTCv%xL|8rwcD-r-rCLD-u~^TZMA## z-uCvkmK@&i?>T2ClK|HCzW>krc>^WW z8$hER^czv6M+rxiL65uTXb>acD}cMLPDd%V6ws@5-KU#=UiY!j-*XbJZemfY}_=} zeg|#MvD2(p+D7v`-NON{;w~T5q#XeF&=~V`M2+ACym`_DD3oD6A|FO!gm@~zoupDd zxuf$(q53>F2yVAK5%fVB-SIdc^g(6=9`hkOEVg8nud>=l`g$KYjXAxg_PuD~Uf-G& zYoY%9^ru*DPuFc(?M5208{Dh6)WN8`ZSX&*_w%KPQL?|Hmt;QzmNG$E076S0f@FZr zi|(k`036~7b~QK$W#!{~3Ift;DVZHlJV2{n1ri4DY8D*1;jbz&e)NCPAM*m~7fA3n z{WV{on>~u$QceC|kF+8xP6C6cDUOW4qeSVWK7?ydc7gV2sNyl0Qi`Z2Q3VDM$ZG(d zY7GV>QVgVufQYowd|#mfW5}=9&V)e1(_7&I6p|0scsDa_+&4aQ5X<gDY#TZzuiV@b8H^F2PnfD4!~#&MLqXfnE|uT73GY{WdZ%A z9kv3Z>st>mXxsbJCD1CrrGM|<;riT5X^6+f9v})L@-9Lc4fq5k2~(4uJ{LOt zLcs@}PEV@4*z0tF$RMH?ax%nx$ON=%kx7;q#qFr>1ywRoH>Kk-f@M)Nz&;WR_&NIu z1dir%El$6QFJ!;Wh-GjH_%J>P8mt>jLjxE{Z7|r))EoEpEPVKrA1$KkxVE^csQ6mu z3HyDK&IPxbOcgXQ%dWCWPqI#Ba`dcT|M7}N4(Y!fozg;90*6898UGA&4O6zzLCd}! zw$WN_JB$LJ&IkjXz{Z5;`6%r@vN3^tBL0Q^h*4y=EMP4Qn0XD^OvXONenJ5jN-~?7 z((i$YE%QYuvy|Y~NgC5?JL01&nikfS?P^S_sYlyFh0#JiJE!%=PCogA{4X`C%R&DqgIzi1(DRMbze1RIKvzYs66OY(sa6*JNbQ8SQlY$EyL8N^N- zKSM%@Yar4^^>z!>xC>0eAi)Ip1Pg&>(uIBQ#!Y zRlt!FnUz2ysi5UkQCgI*)yM*|mdGXmONDn(bO4#K(sVN%3I_Z>+{Mewa*~qu_?dwI zAT16!sKIuD9cl>k6jh{9!S9Swd}Xi&SKA!XfxoL_QWBM8Jb6)pMj_m z)_ew(*bN(r63H|&&45|0R=!M-lEEhD)>IK03Vi)r51#mV&9gsv@coao;ZEt(i`W8o zm-IKLk-jCZVJ_*{^72t!f`H2H#5&t8u!h6W5l<#QK%vgFCeeoMnYbLbahVUu0;3A( zJAvGuZ@l#JGsb+C%4$4Q_06kV&d>iGu+R6U&pG2pQ@N8ZkQPa=#r}ugA#KFa$)}iv z1!CS2NKbMjsReKcxfgHMVW;5vYv>aKJ64#e>YbhZ!D_MU35g{b*-shR5*B2gtWx?B zIQf@Yopc|o?vTD+E}o2)Pah&4WqLnIMFY?fDw}fG*$V7WWKbkSoy7+PT2)zApw{Zk zDLV}`lCyu);WyZn=;G3}y9ua?Ud!~EY$zSejXLX3rZ@!I@RLqK42%K4k2)gx z;7Yib9{hmA8BM@K_sbO{8&=%CuzB86Ra~`g>-fRb=Dzo|bS;dOe{oU&-IjbybBl4^ z^6oW_3%eFIb!{A3C*8WTthSc*w)Ggz{R!!lUF~~Re^gn1;OpukW`N^zGA>h~NL=`+ z441rks7R09qC=QB9ADh2tRKMFr@#S?%g}uGn^;Y<_-01+`F9J>s(NFSJ`|_CJ|;hsa`Uf z;gB!ih{^P)Cv)b9D^4aG1<}q-rs@ilsa%E0RFTH*?@cC&W8iz0$;@(hA{Ja;^t?=` zvL7r?nFn^*e}g&fQReexOUsj(#CATN3q3yL&Y_2gcUH%ldOFeN z7DXp}&c3+n;f;V#C*WhnR64+124oFDDBvkT(uH6y#UKD_lF3m;vJKRA8mQ}#NKXa? zMwg`l07qJg?TpAGJ|N^-OKSj>X?6G=q$;AQJ9t?TKaVsKv?@t&MDtronwjl~rGJgo zt{lTwKK$IL!d11A?_+6R6tZS|-GAh-UOKdsHGDHK{~NVs3!Ks>_7UfNKI34;6y$3M z7K9I-i)UX;&jzV!NV81zyLmbEJTS1J0<2QY4#`~Q02VL|7K_OM?>;V%^JpzHo#F+- z9QzAB?s(t(-q+gt?}&&zFTK&?Es3%3$CAzSW0Nr{4upKGy2{Vj-!f&ZgaO@J;a(Y; zI)f;ON?ZG^$_3~XWzGMyH`+Ccbq^kW7g2PvhN2(zXrV)20q;NWlP9)QqBat}av zs*D6qVlA=NbUMEDFu==S4Szc~Y?SfRfUhX*4r3n|*utS2BUPG%k6LZIMut3b_=&62 z6w@e42QE?%q~~qdw8p45cO`p=hkKJ<=F@AtuT3ppoN}1W&$qPji8~)-KPau_YqGL* z`SjP94Zg%zqgpCff4I0G87!0R8GC2d!&QqEb%GgN*2+aOOrbkRMUG}r7=sxCvjhe( zgI0(s%9gV!GbDr^2sxCfP?570)QDN-2r;e9fh2a?vZQ|b(CK_zYbTgcmf$)aDPFmA zSo$Ec9Y9G>wV>0)U@rrE%u1N9x z0ooCCoG&)DT0fF2FE&`VDBDau-3j_XA>S$-eOLFU_yez-2>8a!JrE|W zuw0gl_{IW%f!_x=ds0hem*&a?CT21P=F*ewjwid7sbt-hya9r&S*cuAN_Jele*Wa$ zEdFunF92btAXl)!2FEXy37FnU+d~p#_y8Qc5ik0z0>=;xeJ_1F?BS{k8J^V&Jb4I% z$m`N6@Fc%?Wq8=qx)Bq2i&h=k2??4Ru*f$GM~Uh9J9k32s!T!pCIJbiIV`X6Ffs

HERH5`nT84()71JrQI@3(#E>;qeu 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 z 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 Z{$N?+9UlVzs#1Veq&_A7h{#da{{z-~j-CJj literal 0 HcmV?d00001 diff --git a/src/common.c b/src/common.c index 46bcfc50..d4d774c2 100644 --- a/src/common.c +++ b/src/common.c @@ -89,6 +89,18 @@ static Errno file_size(FILE *file, size_t *size) return 0; } +Errno create_new_file_here(const char *file_name) +{ + Errno result = 0; + + FILE *f = fopen(file_name, "wb"); + if (f == NULL) + return errno; + + fclose(f); + return result; +} + Errno read_entire_file(const char *file_path, String_Builder *sb) { Errno result = 0; diff --git a/src/editor.c b/src/editor.c index 1aaeee76..a48dc42e 100644 --- a/src/editor.c +++ b/src/editor.c @@ -6,6 +6,180 @@ #include "./editor.h" #include "./common.h" + +EvilMode current_mode = NORMAL; +float zoom_factor = 5.0f; +Theme themes[7]; + +int currentThemeIndex = 0; + + +void initialize_themes() { + // Best theme ever + themes[0] = (Theme) { + .cursor = hex_to_vec4f(0xFFFFFFFF), // White cursor + .text = hex_to_vec4f(0xFFFFFFFF), + .background = hex_to_vec4f(0x181818FF), + .comment = hex_to_vec4f(0xCC8C3CFF), + .hashtag = hex_to_vec4f(0x95A99FFF), + .logic = hex_to_vec4f(0xFFDD33FF), + .string = hex_to_vec4f(0x73c936ff), + .selection = hex_to_vec4f(0x00000000), + .search = hex_to_vec4f(0xFFDD33FF), + .marks = hex_to_vec4f(0xFFDD33FF), + .fb_selection = hex_to_vec4f(0x00000000) + }; + + + // Dracula + themes[1] = (Theme) { + .cursor = hex_to_vec4f(0xFF79C6FF), + .text = hex_to_vec4f(0xF8F8F2FF), + .logic = hex_to_vec4f(0x50FA7BFF), + .background = hex_to_vec4f(0x282A36FF), + .comment = hex_to_vec4f(0x6272A4FF), + .hashtag = hex_to_vec4f(0x8BE9FDFF), + .string = hex_to_vec4f(0xF1FA8CFF), + .selection = hex_to_vec4f(0x00000000), + .selection = hex_to_vec4f(0x44475AFF), + .search = hex_to_vec4f(0xFF5555FF), + .marks = hex_to_vec4f(0xBD93F9FF), + .fb_selection = hex_to_vec4f(0x44475AFF) + }; + + themes[1] = (Theme) { + .cursor = hex_to_vec4f(0xF8F8F2FF), + .text = hex_to_vec4f(0xE9E9F4FF), + .background = hex_to_vec4f(0x282A36FF), + .comment = hex_to_vec4f(0x6272A4FF), + .hashtag = hex_to_vec4f(0x50FA7BFF), + .logic = hex_to_vec4f(0xFF79C6FF), + .string = hex_to_vec4f(0xF1FA8CFF), + .selection = hex_to_vec4f(0x44475AFF), + .search = hex_to_vec4f(0xFF5555FF), + .marks = hex_to_vec4f(0xBD93F9FF), + .fb_selection = hex_to_vec4f(0x44475AFF) + }; + + // Palenight + themes[2] = (Theme) { + .cursor = hex_to_vec4f(0xAB47BCFF), + .text = hex_to_vec4f(0xA6ACCDFF), + .logic = hex_to_vec4f(0x89DDFFFF), + .background = hex_to_vec4f(0x292D3EFF), + .comment = hex_to_vec4f(0x676E95FF), + .hashtag = hex_to_vec4f(0xC792EAFF), + .string = hex_to_vec4f(0xC3E88DFF), + .selection = hex_to_vec4f(0x00000000), + .fb_selection = hex_to_vec4f(0x00000000) + }; + + // Monokai + themes[3] = (Theme) { + .cursor = hex_to_vec4f(0xF8F8F0FF), + .text = hex_to_vec4f(0xF8F8F2FF), + .background = hex_to_vec4f(0x272822FF), + .comment = hex_to_vec4f(0x75715E), + .hashtag = hex_to_vec4f(0xA6E22EFF), + .logic = hex_to_vec4f(0xF92672FF), + .string = hex_to_vec4f(0xE6DB74FF), + .selection = hex_to_vec4f(0x49483EFF), + .search = hex_to_vec4f(0x66D9EFFF), + .marks = hex_to_vec4f(0xFD971FFF), + .fb_selection = hex_to_vec4f(0x3E3D32FF) + }; + + // Solarized dark + themes[4] = (Theme) { + .cursor = hex_to_vec4f(0x93A1A1FF), + .text = hex_to_vec4f(0x839496FF), + .background = hex_to_vec4f(0x002B36FF), + .comment = hex_to_vec4f(0x586E75FF), + .hashtag = hex_to_vec4f(0x859900FF), + .logic = hex_to_vec4f(0xB58900FF), + .string = hex_to_vec4f(0x2AA198FF), + .selection = hex_to_vec4f(0x073642FF), + .search = hex_to_vec4f(0xDC322FFF), + .marks = hex_to_vec4f(0xD33682FF), + .fb_selection = hex_to_vec4f(0x073642FF) + }; + + // Nord + themes[5] = (Theme) { + .cursor = hex_to_vec4f(0xECEFF4FF), + .text = hex_to_vec4f(0xE5E9F0FF), + .background = hex_to_vec4f(0x2E3440FF), + .comment = hex_to_vec4f(0x4C566AFF), + .hashtag = hex_to_vec4f(0x8FBCBBFF), + .logic = hex_to_vec4f(0x81A1C1FF), + .string = hex_to_vec4f(0xA3BE8CFF), + .selection = hex_to_vec4f(0x3B4252FF), + .search = hex_to_vec4f(0xBF616AFF), + .marks = hex_to_vec4f(0xB48EADFF), + .fb_selection = hex_to_vec4f(0x3B4252FF) + }; + + // Catppuccin + themes[6] = (Theme) { + .cursor = hex_to_vec4f(0xf38ba8FF), // Red + .text = hex_to_vec4f(0xcdd6f4FF), // Text + .background = hex_to_vec4f(0x1e1e2eFF), // Base + .comment = hex_to_vec4f(0x9399b2FF), // Overlay2 + .hashtag = hex_to_vec4f(0x89b4faFF), // Blue + .logic = hex_to_vec4f(0xa6e3a1FF), // Green + .string = hex_to_vec4f(0xf9e2afFF), // Yellow + .selection = hex_to_vec4f(0xf5c2e7FF), // Pink + .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo + .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire + .fb_selection = hex_to_vec4f(0xb4befeFF) // Lavender + }; + + +} + +void theme_next(int *currentThemeIndex) { + // Assuming themes is globally defined with a known size + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex += 1; + if (*currentThemeIndex >= themeCount) { + *currentThemeIndex = 0; // wrap around if we've gone past the last theme + } +} + +void theme_previous(int *currentThemeIndex) { + *currentThemeIndex -= 1; + if (*currentThemeIndex < 0) { + // Assuming themes is globally defined with a known size + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = themeCount - 1; // wrap around to the last theme + } +} + + +/* void editor_backspace(Editor *e) */ +/* { */ +/* if (e->searching) { */ +/* if (e->search.count > 0) { */ +/* e->search.count -= 1; */ +/* } */ +/* } else { */ +/* if (e->cursor > e->data.count) { */ +/* e->cursor = e->data.count; */ +/* } */ +/* if (e->cursor == 0) return; */ + +/* memmove( */ +/* &e->data.items[e->cursor - 1], */ +/* &e->data.items[e->cursor], */ +/* e->data.count - e->cursor */ +/* ); */ +/* e->cursor -= 1; */ +/* e->data.count -= 1; */ +/* editor_retokenize(e); */ +/* } */ +/* } */ + +// Smart Parenthesis void editor_backspace(Editor *e) { if (e->searching) { @@ -13,22 +187,40 @@ void editor_backspace(Editor *e) e->search.count -= 1; } } else { - if (e->cursor > e->data.count) { - e->cursor = e->data.count; + if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete + + size_t cursor_pos = e->cursor; + + if (cursor_pos > e->data.count) { + cursor_pos = e->data.count; + } + + // Determine the characters before and after the cursor + char char_before_cursor = (cursor_pos > 0) ? e->data.items[cursor_pos - 1] : '\0'; + char char_after_cursor = (cursor_pos < e->data.count) ? e->data.items[cursor_pos] : '\0'; + + if ((char_before_cursor == '(' && char_after_cursor == ')') || + (char_before_cursor == '[' && char_after_cursor == ']') || + (char_before_cursor == '{' && char_after_cursor == '}') || + (char_before_cursor == '\'' && char_after_cursor == '\'') || + (char_before_cursor == '"' && char_after_cursor == '"')) { + // Delete both characters and move cursor left + memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos + 1], e->data.count - cursor_pos); + e->cursor -= 1; + e->data.count -= 2; + } else { + // Delete only the character before the cursor + memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos], e->data.count - cursor_pos); + e->cursor -= 1; + e->data.count -= 1; } - if (e->cursor == 0) return; - memmove( - &e->data.items[e->cursor - 1], - &e->data.items[e->cursor], - e->data.count - e->cursor - ); - e->cursor -= 1; - e->data.count -= 1; editor_retokenize(e); } } + + void editor_delete(Editor *e) { if (e->searching) return; @@ -298,6 +490,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer &select_end_scr); Vec4f selection_color = vec4f(.25, .25, .25, 1); + simple_renderer_solid_rect(sr, select_begin_scr, vec2f(select_end_scr.x - select_begin_scr.x, FREE_GLYPH_FONT_SIZE), selection_color); } } @@ -323,7 +516,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer { if (editor->searching) { simple_renderer_set_shader(sr, SHADER_FOR_COLOR); - Vec4f selection_color = vec4f(.10, .10, .25, 1); + /* Vec4f selection_color = vec4f(.10, .10, .25, 1); */ + Vec4f selection_color = themes[currentThemeIndex].search; // or .selection_color if that's what you named it in the struct. Vec2f p1 = cursor_pos; Vec2f p2 = p1; free_glyph_atlas_measure_line_sized(editor->atlas, editor->search.items, editor->search.count, &p2); @@ -332,25 +526,70 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } } + // Render marked search result + { + simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + if (editor->has_mark) { + for (size_t row = 0; row < editor->lines.count; ++row) { + size_t mark_begin_chr = editor->mark_start; + size_t mark_end_chr = editor->mark_end; + + Line line_chr = editor->lines.items[row]; + + if (mark_begin_chr < line_chr.begin) { + mark_begin_chr = line_chr.begin; + } + + if (mark_end_chr > line_chr.end) { + mark_end_chr = line_chr.end; + } + + if (mark_begin_chr <= mark_end_chr) { + Vec2f mark_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + line_chr.begin, mark_begin_chr - line_chr.begin, + &mark_begin_scr); + + Vec2f mark_end_scr = mark_begin_scr; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + mark_begin_chr, mark_end_chr - mark_begin_chr, + &mark_end_scr); + + /* Vec4f mark_color = vec4f(.20, .20, .20, 1); // Adjust color as needed */ + Vec4f mark_color = themes[currentThemeIndex].marks; + simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); + } + } + } + simple_renderer_flush(sr); + } + + // Render text { simple_renderer_set_shader(sr, SHADER_FOR_TEXT); for (size_t i = 0; i < editor->tokens.count; ++i) { Token token = editor->tokens.items[i]; Vec2f pos = token.position; - Vec4f color = vec4fs(1); + /* Vec4f color = vec4fs(1); */ + Vec4f color = themes[currentThemeIndex].text; switch (token.kind) { case TOKEN_PREPROC: - color = hex_to_vec4f(0x95A99FFF); + /* color = hex_to_vec4f(0x95A99FFF); */ + color = themes[currentThemeIndex].hashtag; break; case TOKEN_KEYWORD: - color = hex_to_vec4f(0xFFDD33FF); + /* color = hex_to_vec4f(0xFFDD33FF); */ + color = themes[currentThemeIndex].logic; + break; case TOKEN_COMMENT: - color = hex_to_vec4f(0xCC8C3CFF); + /* color = hex_to_vec4f(0xCC8C3CFF); */ + color = themes[currentThemeIndex].comment; break; case TOKEN_STRING: - color = hex_to_vec4f(0x73c936ff); + /* color = hex_to_vec4f(0x73c936ff); */ + color = themes[currentThemeIndex].string; break; default: {} @@ -362,32 +601,105 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + // Render cursor simple_renderer_set_shader(sr, SHADER_FOR_COLOR); - { - float CURSOR_WIDTH = 5.0f; - Uint32 CURSOR_BLINK_THRESHOLD = 500; - Uint32 CURSOR_BLINK_PERIOD = 1000; - Uint32 t = SDL_GetTicks() - editor->last_stroke; - - sr->verticies_count = 0; - if (t < CURSOR_BLINK_THRESHOLD || t/CURSOR_BLINK_PERIOD%2 != 0) { - simple_renderer_solid_rect( - sr, - cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), - vec4fs(1)); + + // Constants + float CURSOR_WIDTH; + Uint32 CURSOR_BLINK_THRESHOLD = 500; + Uint32 CURSOR_BLINK_PERIOD = 1000; + Uint32 t = SDL_GetTicks() - editor->last_stroke; + /* Vec4f CURSOR_COLOR = vec4fs(1); // Default color for NORMAL */ + Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; + + sr->verticies_count = 0; + + switch (current_mode) { + case NORMAL: + CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; // Half the size for NORMAL mode + /* CURSOR_COLOR = vec4fs(1); // Assuming this sets it to a solid color */ + simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); + + + + /* // Render cursor based on the set dimensions */ + /* simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); */ + break; + + case INSERT: + CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode + + // Implement blinking for INSERT mode + if (t < CURSOR_BLINK_THRESHOLD || (t / CURSOR_BLINK_PERIOD) % 2 != 0) { + simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); } + break; + + case VISUAL: + CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; // Same size as NORMAL mode + + // Solid border color + /* CURSOR_COLOR = vec4f(1, 1, 1, 1); // Fully opaque white */ + + // Inner transparent color + /* Vec4f INNER_COLOR = vec4f(1, 1, 1, 0.3); // White with low alpha */ + Vec4f INNER_COLOR = themes[currentThemeIndex].cursor; // TODO remove alpha + + + + + // Border thickness (adjust to your liking) + float BORDER_THICKNESS = 5.0f; + + // Draw inner rectangle (more transparent) + simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH - 2 * BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), INNER_COLOR); + + // Draw the outline (borders) + + // Top border + simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, BORDER_THICKNESS), CURSOR_COLOR); + + // Bottom border + simple_renderer_solid_rect(sr, vec2f(cursor_pos.x, cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), vec2f(CURSOR_WIDTH, BORDER_THICKNESS), CURSOR_COLOR); + + // Left border + simple_renderer_solid_rect(sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); + + // Right border + simple_renderer_solid_rect(sr, vec2f(cursor_pos.x + CURSOR_WIDTH - BORDER_THICKNESS, cursor_pos.y), vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); + + break; - simple_renderer_flush(sr); } + // Render minibuffer TODO + /* { */ + /* simple_renderer_set_shader(sr, SHADER_FOR_TEXT); */ + + /* // Positioning the minibuffer at the bottom of the window */ + /* Vec2f minibuffer_pos = vec2f(5.0f, h - FREE_GLYPH_FONT_SIZE - 5.0f); // 5px padding from the bottom and left */ + /* Vec4f minibuffer_color = hex_to_vec4f(0xFFFFFF); // Assuming white color for the text; adjust if needed */ + + /* // Rendering the minibuffer text */ + /* free_glyph_atlas_render_line_sized(atlas, sr, editor->minibuffer, strlen(editor->minibuffer), &minibuffer_pos, minibuffer_color); */ + + /* simple_renderer_flush(sr); */ + /* } */ + + + + // Update camera { if (max_line_len > 1000.0f) { max_line_len = 1000.0f; } - float target_scale = w/3/(max_line_len*0.75); // TODO: division by 0 + /* float target_scale = w/5/(max_line_len*0.75); // TODO: division by 0 */ + float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 + + Vec2f target = cursor_pos; float offset = 0.0f; @@ -406,24 +718,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); - sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; + sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; // ORIGINAL } } -void editor_update_selection(Editor *e, bool shift) -{ - if (e->searching) return; - if (shift) { - if (!e->selection) { - e->selection = true; - e->select_begin = e->cursor; - } - } else { - if (e->selection) { - e->selection = false; - } - } -} void editor_clipboard_copy(Editor *e) { @@ -455,6 +753,85 @@ void editor_clipboard_paste(Editor *e) SDL_free(text); } +// ADDED +void editor_cut_char_under_cursor(Editor *e) { + if (e->searching) return; + + if (e->cursor >= e->data.count) return; + + // 1. Copy the character to clipboard. + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // 2. Delete the character from the editor. + memmove( + &e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) + ); + e->data.count -= 1; + editor_retokenize(e); +} + +// VISUAL selection + +void editor_start_visual_selection(Editor *e) { + e->selection = true; + + // Identify the current line the cursor is on + size_t cursor_row = editor_cursor_row(e); + Line current_line = e->lines.items[cursor_row]; + + // If in VISUAL_LINE mode, adjust the selection to span the entire line + if (current_mode == VISUAL_LINE) { + e->select_begin = current_line.begin; + + // Set the cursor to the end of the current line to span the whole line + e->cursor = current_line.end; + } else { + e->select_begin = e->cursor; + } +} + +void editor_start_visual_line_selection(Editor *e) { + e->selection = true; + + // Identify the current line the cursor is on + size_t cursor_row = editor_cursor_row(e); + Line current_line = e->lines.items[cursor_row]; + + // Set the beginning and end of the selection to span the entire line + e->select_begin = current_line.begin; + e->cursor = current_line.end; +} + + + + +void editor_update_selection(Editor *e, bool shift) { + if (e->searching) return; + + if (current_mode == VISUAL) { + if (!e->selection) { + editor_start_visual_selection(e); + } + // If you want the selection to end when you leave VISUAL mode, + // you will need to handle that logic elsewhere (perhaps where mode changes are managed). + } else if (shift) { + if (!e->selection) { + e->selection = true; + e->select_begin = e->cursor; + } + } else { + e->selection = false; + } +} + +// search void editor_start_search(Editor *e) { if (e->searching) { @@ -480,6 +857,15 @@ void editor_stop_search(Editor *e) e->searching = false; } +void editor_stop_search_and_mark(Editor *e) { + e->searching = false; + + e->has_mark = true; // Mark the search result. + e->mark_start = e->cursor; + e->mark_end = e->cursor + e->search.count; +} + + bool editor_search_matches_at(Editor *e, size_t pos) { if (e->data.count - pos < e->search.count) return false; @@ -491,6 +877,59 @@ bool editor_search_matches_at(Editor *e, size_t pos) return true; } +void editor_search_next(Editor *e) { + size_t startPos = e->cursor + 1; + for (size_t pos = startPos; pos < e->data.count; ++pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + + // If not found in the remainder of the text, wrap around to the beginning + for (size_t pos = 0; pos < startPos; ++pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } +} + +void editor_search_previous(Editor *e) { + if (e->cursor == 0) { + // If we are at the beginning of the file, wrap around immediately + for (size_t pos = e->data.count - 1; pos != SIZE_MAX; --pos) { // Note the loop condition + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + } else { + for (size_t pos = e->cursor - 1; pos != SIZE_MAX; --pos) { // Note the loop condition + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + + // If not found in the preceding text, wrap around to the end + for (size_t pos = e->data.count - 1; pos > e->cursor; --pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + } +} + + + + void editor_move_to_begin(Editor *e) { editor_stop_search(e); diff --git a/src/editor.h b/src/editor.h index 4b5ddd58..fccb7b97 100644 --- a/src/editor.h +++ b/src/editor.h @@ -7,8 +7,11 @@ #include "simple_renderer.h" #include "lexer.h" +#include + #include + typedef struct { size_t begin; size_t end; @@ -26,6 +29,32 @@ typedef struct { size_t capacity; } Tokens; +typedef enum { + NORMAL, + INSERT, + VISUAL, + VISUAL_LINE, + COMMAND, + CHORDING +} EvilMode; + +extern EvilMode current_mode; + +typedef struct { + Vec4f cursor; + Vec4f text; + Vec4f background; + Vec4f logic; + Vec4f comment; + Vec4f hashtag; + Vec4f string; + Vec4f selection; + Vec4f search; + Vec4f marks; + Vec4f fb_selection; +} Theme; + + typedef struct { Free_Glyph_Atlas *atlas; @@ -41,6 +70,12 @@ typedef struct { size_t select_begin; size_t cursor; + /* EvilMode mode; // TODO */ + bool has_mark; // Indicates if there's a marked search result. + size_t mark_start; // Start of marked search result. + size_t mark_end; // End of marked search result. + + Uint32 last_stroke; String_Builder clipboard; @@ -80,4 +115,19 @@ void editor_start_search(Editor *e); void editor_stop_search(Editor *e); bool editor_search_matches_at(Editor *e, size_t pos); +// ADDED +void editor_stop_search_and_mark(Editor *e); +void editor_search_next(Editor *e); +void editor_search_previous(Editor *e); +extern float zoom_factor; +// THEME +extern Theme themes[]; +extern int currentThemeIndex; +void initialize_themes(); +#define CURRENT_THEME (themes[currentThemeIndex]) + +void theme_next(int *currentThemeIndex); +void theme_previous(int *currentThemeIndex); + + #endif // EDITOR_H_ diff --git a/src/file_browser.c b/src/file_browser.c index d4afb45e..629933f8 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -1,6 +1,9 @@ #include #include "file_browser.h" #include "sv.h" +#include + + static int file_cmp(const void *ap, const void *bp) { @@ -150,6 +153,8 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl atlas, fb->files.items[fb->cursor], strlen(fb->files.items[fb->cursor]), &end); simple_renderer_solid_rect(sr, begin, vec2f(end.x - begin.x, FREE_GLYPH_FONT_SIZE), vec4f(.25, .25, .25, 1)); + + } simple_renderer_flush(sr); @@ -184,7 +189,7 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl if (target_scale > 3.0f) { target_scale = 3.0f; } else { - offset = cursor_pos.x - w/3/sr->camera_scale; + offset = cursor_pos.x - w/1/sr->camera_scale; if (offset < 0.0f) offset = 0.0f; target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); } diff --git a/src/file_browser.h b/src/file_browser.h index f83497c8..9f756eb9 100644 --- a/src/file_browser.h +++ b/src/file_browser.h @@ -6,16 +6,27 @@ #include +#include + typedef struct { Files files; size_t cursor; String_Builder dir_path; String_Builder file_path; + + // for file creation mode + bool is_in_file_creation_mode; + char tmp_filename[PATH_MAX]; + size_t tmp_filename_len; + } File_Browser; Errno fb_open_dir(File_Browser *fb, const char *dir_path); Errno fb_change_dir(File_Browser *fb); void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr); + const char *fb_file_path(File_Browser *fb); +Errno fb_go_to_parent(File_Browser *fb); + #endif // FILE_BROWSER_H_ diff --git a/src/keychords.c b/src/keychords.c new file mode 100644 index 00000000..8bb4800f --- /dev/null +++ b/src/keychords.c @@ -0,0 +1,63 @@ +#include "keychords.h" +#include +#include +#include + +#include "file_browser.h" + +bool file_browser = false; + +Keychord keychords[] = { + {SEQ(SDLK_SPACE, SDLK_d, SDLK_j), NORMAL, ACTION_BOOL_SET, .action.boolSet = {&file_browser, true}}, + // ... other sequences ... +}; + +void capture_sequence(SDL_Event *event, KeySequence *currentSequence) { + if (currentSequence->length < MAX_SEQUENCE_LENGTH) { + currentSequence->keys[currentSequence->length++] = event->key.keysym.sym; + } +} + +void clear_sequence(KeySequence *currentSequence) { + currentSequence->length = 0; + memset(currentSequence->keys, 0, sizeof(currentSequence->keys)); +} + +bool sequence_matches(const KeySequence *seq1, const KeySequence *seq2) { + if (seq1->length != seq2->length) { + return false; + } + for (int i = 0; i < seq1->length; i++) { + if (seq1->keys[i] != seq2->keys[i]) { + return false; + } + } + return true; +} + +bool check_for_keychord(EvilMode mode, SDL_Event *event, KeySequence *currentSequence, Editor *editor) { + (void)editor; // To silence the unused parameter warning, if editor is not used in this context + capture_sequence(event, currentSequence); + + for (size_t i = 0; i < sizeof(keychords) / sizeof(Keychord); i++) { + if (mode == keychords[i].mode && sequence_matches(&keychords[i].sequence, currentSequence)) { + // Execute the action of the matching keychord + switch (keychords[i].type) { + case ACTION_FUNC: + keychords[i].action.func(); + break; + case ACTION_BOOL_SET: + *(keychords[i].action.boolSet.var) = keychords[i].action.boolSet.value; + break; + } + clear_sequence(currentSequence); + return true; + } + } + + // If you've reached here, no sequence matched. But don't clear sequence unless it's of maximum length. + if (currentSequence->length == MAX_SEQUENCE_LENGTH) { + clear_sequence(currentSequence); + } + return false; +} diff --git a/src/keychords.h b/src/keychords.h new file mode 100644 index 00000000..86271a25 --- /dev/null +++ b/src/keychords.h @@ -0,0 +1,40 @@ +#pragma once + +#include +#include "editor.h" + +typedef void (*ActionFunction)(); + +typedef enum { + ACTION_BOOL_SET, + ACTION_FUNC +} ActionType; + +#define MAX_SEQUENCE_LENGTH 10 + +typedef struct { + SDL_Keycode keys[MAX_SEQUENCE_LENGTH]; + int length; +} KeySequence; + +typedef struct { + KeySequence sequence; + EvilMode mode; + ActionType type; + union { + ActionFunction func; + struct { + bool *var; + bool value; + } boolSet; + } action; +} Keychord; + +#define SEQ(...) { .keys = {__VA_ARGS__}, .length = sizeof((SDL_Keycode[]){__VA_ARGS__}) / sizeof(SDL_Keycode) } + +extern Keychord keychords[]; // Declaration of keychords array without definition + +bool check_for_keychord(EvilMode mode, SDL_Event *event, KeySequence *currentSequence, Editor *editor); +void capture_sequence(SDL_Event *event, KeySequence *currentSequence); +void clear_sequence(KeySequence *currentSequence); +bool sequence_matches(const KeySequence *seq1, const KeySequence *seq2); diff --git a/src/main.c b/src/main.c index eac9ac5f..4037642b 100644 --- a/src/main.c +++ b/src/main.c @@ -3,6 +3,8 @@ #include #include #include +#include "common.h" + #include #define GLEW_STATIC @@ -14,6 +16,7 @@ #include FT_FREETYPE_H #include "./editor.h" +#include "./repl.h" #include "./file_browser.h" #include "./la.h" #include "./free_glyph.h" @@ -22,6 +25,17 @@ #include "./lexer.h" #include "./sv.h" +// added +#include +#include +#include +#include +#include "keychords.h" + +#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) + + + // TODO: Save file dialog // Needed when ded is ran without any file so it does not know where to save. @@ -51,13 +65,20 @@ static Free_Glyph_Atlas atlas = {0}; static Simple_Renderer sr = {0}; static Editor editor = {0}; static File_Browser fb = {0}; +static Repl repl = {0}; + // TODO: display errors reported via flash_error right in the text editor window somehow #define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) +KeySequence currentSequence = {0}; // This initializes a zero-length sequence + int main(int argc, char **argv) { + + initialize_themes(); + Errno err; FT_Library library = {0}; @@ -69,8 +90,22 @@ int main(int argc, char **argv) } // TODO: users should be able to customize the font - // const char *const font_file_path = "./fonts/VictorMono-Regular.ttf"; - const char *const font_file_path = "./fonts/iosevka-regular.ttf"; + /* const char *const font_file_path = "./fonts/VictorMono-Regular.ttf"; */ + /* const char *const font_file_path = "./fonts/jet-bold.ttf"; */ + /* const char *const font_file_path = "~/.config/ded/fonts/jet-extra-bold.ttf"; */ + /* const char *const font_file_path = "./fonts/iosevka-regular.ttf"; */ + + + char font_file_path_buffer[1024]; + const char *homeDir = getenv("HOME"); + if (homeDir) { + snprintf(font_file_path_buffer, sizeof(font_file_path_buffer), "%s/.config/ded/fonts/jet-extra-bold.ttf", homeDir); + } else { + // handle the error, for now, we'll just set it to the original value as a fallback + strncpy(font_file_path_buffer, "~/.config/ded/fonts/jet-extra-bold.ttf", sizeof(font_file_path_buffer)); + } + const char *const font_file_path = font_file_path_buffer; + FT_Face face; error = FT_New_Face(library, font_file_path, 0, &face); @@ -159,167 +194,363 @@ int main(int argc, char **argv) editor.atlas = &atlas; editor_retokenize(&editor); + + bool quit = false; bool file_browser = false; + bool repl = false; + static bool file_creation_mode = false; // To track if we're in "file creation mode" + static char new_filename[PATH_MAX] = ""; // To accumulate filename + static size_t filename_cursor = 0; // Cursor for where we're writing in new_filename + while (!quit) { const Uint32 start = SDL_GetTicks(); SDL_Event event = {0}; while (SDL_PollEvent(&event)) { switch (event.type) { - case SDL_QUIT: { - quit = true; - } - break; - - case SDL_KEYDOWN: { - if (file_browser) { - switch (event.key.keysym.sym) { - case SDLK_F3: { - file_browser = false; - } - break; - - case SDLK_UP: { - if (fb.cursor > 0) fb.cursor -= 1; - } - break; - - case SDLK_DOWN: { - if (fb.cursor + 1 < fb.files.count) fb.cursor += 1; - } - break; - - case SDLK_RETURN: { - const char *file_path = fb_file_path(&fb); - if (file_path) { - File_Type ft; - err = type_of_file(file_path, &ft); - if (err != 0) { - flash_error("Could not determine type of file %s: %s", file_path, strerror(err)); - } else { - switch (ft) { - case FT_DIRECTORY: { - err = fb_change_dir(&fb); - if (err != 0) { - flash_error("Could not change directory to %s: %s", file_path, strerror(err)); - } - } - break; - - case FT_REGULAR: { - // TODO: before opening a new file make sure you don't have unsaved changes - // And if you do, annoy the user about it. (just like all the other editors do) - err = editor_load_from_file(&editor, file_path); - if (err != 0) { - flash_error("Could not open file %s: %s", file_path, strerror(err)); - } else { - file_browser = false; - } - } - break; - - case FT_OTHER: { - flash_error("%s is neither a regular file nor a directory. We can't open it.", file_path); - } - break; - - default: - UNREACHABLE("unknown File_Type"); - } - } + case SDL_QUIT: + quit = true; + break; + + case SDL_KEYDOWN: + if (file_browser) { + switch (event.key.keysym.sym) { + case SDLK_F3: { + file_browser = false; + } break; + + + case SDLK_UP: { + if (fb.cursor > 0) + fb.cursor -= 1; + } break; + + case SDLK_k: { + if (fb.cursor > 0) + fb.cursor -= 1; + } break; + + case SDLK_DOWN: { + if (fb.cursor + 1 < fb.files.count) + fb.cursor += 1; + } break; + + case SDLK_j: { + if (fb.cursor + 1 < fb.files.count) + fb.cursor += 1; + } break; + + case SDLK_h: { + // Copy current directory path + char current_dir[PATH_MAX]; + strncpy(current_dir, fb.dir_path.items, fb.dir_path.count); + current_dir[fb.dir_path.count - 1] = '\0'; // Ensure null-termination + + // Get parent directory + char *parent = dirname(current_dir); + + // Open parent directory + Errno err = fb_open_dir(&fb, parent); + if (err != 0) { + // Handle error, for example, print out an error message. + } else { + fb.cursor = 0; // Reset cursor position in the new directory + } + } break; + + case SDLK_t: { + if (!file_creation_mode) { + file_creation_mode = true; + memset(new_filename, 0, sizeof(new_filename)); // Reset filename buffer + filename_cursor = 0; + } + } break; + + + case SDLK_l: { + const char *file_path = fb_file_path(&fb); + if (file_path) { + File_Type ft; + err = type_of_file(file_path, &ft); + if (err != 0) { + flash_error("Could not determine type of file %s: %s", + file_path, strerror(err)); + } else { + switch (ft) { + case FT_DIRECTORY: { + err = fb_change_dir(&fb); + if (err != 0) { + flash_error("Could not change directory to %s: %s", + file_path, strerror(err)); } - } - break; - } - } else { - switch (event.key.keysym.sym) { - case SDLK_HOME: { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_to_begin(&editor); + } break; + + // WARNING + case SDLK_RETURN: { + if (file_creation_mode) { + // Create the new file with name in new_filename buffer in the current directory + char full_path[PATH_MAX]; + snprintf(full_path, sizeof(full_path), "%s/%s", fb.dir_path.items, new_filename); + + FILE *new_file = fopen(full_path, "w"); + if (new_file) { + fclose(new_file); + file_creation_mode = false; // Exit file creation mode after creating file + // Optional: Refresh the file browser to show the new file + } else { + flash_error("Failed to create file %s: %s", full_path, strerror(errno)); + } } else { - editor_move_to_line_begin(&editor); + // Whatever behavior you want for RETURN key when not in file_creation_mode } - editor.last_stroke = SDL_GetTicks(); - } break; + } break; - case SDLK_END: { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_to_end(&editor); + + case FT_REGULAR: { + // TODO: before opening a new file make sure you don't + // have unsaved changes And if you do, annoy the user + // about it. (just like all the other editors do) + err = editor_load_from_file(&editor, file_path); + if (err != 0) { + flash_error("Could not open file %s: %s", file_path, + strerror(err)); } else { - editor_move_to_line_end(&editor); + file_browser = false; } - editor.last_stroke = SDL_GetTicks(); - } break; + } break; + + case FT_OTHER: { + flash_error("%s is neither a regular file nor a " + "directory. We can't open it.", + file_path); + } break; - case SDLK_BACKSPACE: { - editor_backspace(&editor); - editor.last_stroke = SDL_GetTicks(); + default: + UNREACHABLE("unknown File_Type"); + } } - break; + } + } + break; + } + } else { + switch (current_mode) { + case NORMAL: + switch (event.key.keysym.sym) { + SDL_Event tmpEvent; // Declare once at the beginning of the switch block - case SDLK_F2: { - if (editor.file_path.count > 0) { - err = editor_save(&editor); - if (err != 0) { - flash_error("Could not save currently edited file: %s", strerror(err)); - } - } else { - // TODO: ask the user for the path to save to in this situation - flash_error("Nowhere to save the text"); + case SDLK_TAB: { + // TODO: indent on Tab instead of just inserting 4 spaces at the cursor + // That is insert the spaces at the beginning of the line. Shift+TAB should + // do unindent, that is remove 4 spaces from the beginning of the line. + // TODO: customizable indentation style + // - tabs/spaces + // - tab width + // - etc. + for (size_t i = 0; i < 4; ++i) { + editor_insert_char(&editor, ' '); } } break; - case SDLK_F3: { - file_browser = true; - } + case SDLK_COLON: // Assuming SDLK_COLON is the correct enum value for ':', adjust if not + current_mode = COMMAND; + + // Move cursor to the bottom left + // You would replace this with actual code to move your cursor. + // move_cursor_to_bottom_left(); + break; - case SDLK_F5: { - simple_renderer_reload_shaders(&sr); - } + case SDLK_y: + editor_clipboard_copy(&editor); break; - case SDLK_RETURN: { - if (editor.searching) { - editor_stop_search(&editor); - } else { - editor_insert_char(&editor, '\n'); - editor.last_stroke = SDL_GetTicks(); - } + case SDLK_g: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_move_to_end(&editor); + } else { + editor_move_to_begin(&editor); + } + } break; + + /* case SDLK_SLASH: { */ + /* current_mode = INSERT; */ + /* // TODO eat up the first press here */ + /* editor_start_search(&editor); */ + /* } break; */ + + case SDLK_SLASH: { + current_mode = INSERT; + editor_start_search(&editor); + + // Consume the next SDL_TEXTINPUT event for '/' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '/') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } break; + + + case SDLK_n: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_search_previous(&editor); + } else { + editor_search_next(&editor); } + } break; + + + case SDLK_EQUALS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_next(¤tThemeIndex); + printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor += 0.333f; + } + } break; + + case SDLK_MINUS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_previous(¤tThemeIndex); + printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor -= 0.8f; + if (zoom_factor < 1.0f) zoom_factor = 1.0f; // Ensure zoom_factor doesn't drop below a threshold + } + } break; + + // TODO mouse support + /* case SDL_MOUSEWHEEL: */ + /* if (event.wheel.y > 0 && SDL_GetModState() & KMOD_CTRL) { // Mouse wheel scrolled up with Ctrl held */ + /* zoom_factor -= 0.1f; // Adjust the zoom factor for zooming in */ + /* if (zoom_factor < 1.0f) zoom_factor = 1.0f; // Ensure zoom_factor doesn't drop below a threshold */ + /* } else if (event.wheel.y < 0 && SDL_GetModState() & KMOD_CTRL) { // Mouse wheel scrolled down with Ctrl held */ + /* zoom_factor += 0.1f; // Adjust the zoom factor for zooming out */ + /* } */ + /* break; */ + + case SDLK_i: + current_mode = INSERT; + + // Eat up the next SDL_TEXTINPUT event for 'i' + SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'i' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'i') { + SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue + } + break; + + case SDLK_v: { + if (SDL_GetModState() & KMOD_SHIFT) { + current_mode = VISUAL_LINE; + editor_start_visual_line_selection(&editor); // Initiate line selection. + } else { + current_mode = VISUAL; + editor_start_visual_selection(&editor); // Initiate character selection. + } + } break; + + + case SDLK_a: + if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held + editor_move_to_line_end(&editor); + } else { + // Move the cursor one position to the right + editor_move_char_right(&editor); + } + + // Enter INSERT mode + current_mode = INSERT; + + // Eat up the next SDL_TEXTINPUT event for 'a' or 'A' + SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'a' or 'A' + if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != 'a' && tmpEvent.text.text[0] != 'A')) { + SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue + } + break; + + // Enter INSERT mode + current_mode = INSERT; + + // Eat up the next SDL_TEXTINPUT event for 'a' + SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'a' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'a') { + SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue + } + break; + + case SDLK_x: + editor_cut_char_under_cursor(&editor); + break; + + case SDLK_p: + editor_clipboard_paste(&editor); + break; + + case SDLK_0: + editor_move_to_line_begin(&editor); + break; + + case SDLK_F1: + repl = true; break; - case SDLK_DELETE: { - editor_delete(&editor); - editor.last_stroke = SDL_GetTicks(); + case SDLK_F3: + file_browser = true; + break; + + case SDLK_BACKSPACE: // yes you can delete in normal mode + editor_backspace(&editor); + break; + + case SDLK_h: // Left + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); } + editor.last_stroke = SDL_GetTicks(); break; - case SDLK_f: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor_start_search(&editor); - } + case SDLK_j: // Down + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); } + editor.last_stroke = SDL_GetTicks(); break; - case SDLK_ESCAPE: { - editor_stop_search(&editor); - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + case SDLK_k: // Up + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } else { + editor_move_line_up(&editor); } + editor.last_stroke = SDL_GetTicks(); break; - case SDLK_a: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor.selection = true; - editor.select_begin = 0; - editor.cursor = editor.data.count; - } + case SDLK_l: // Right + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_right(&editor); + } else { + editor_move_char_right(&editor); } + editor.last_stroke = SDL_GetTicks(); break; + // Add additional NORMAL mode keybinds here... + } + break; + + case INSERT: + switch (event.key.keysym.sym) { + case SDLK_TAB: { // TODO: indent on Tab instead of just inserting 4 spaces at the cursor // That is insert the spaces at the beginning of the line. Shift+TAB should @@ -334,113 +565,442 @@ int main(int argc, char **argv) } break; - case SDLK_c: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor_clipboard_copy(&editor); - } + case SDLK_MINUS: + if (SDL_GetModState() & KMOD_CTRL) { + zoom_factor -= 2; + + if (zoom_factor < 1.0f) { + zoom_factor = 1.0f; + } + + // Consume the next SDL_TEXTINPUT event for '-' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (!(tmpEvent.type == SDL_TEXTINPUT && tmpEvent.text.text[0] == '-')) { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } } break; - case SDLK_v: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor_clipboard_paste(&editor); - } + case SDLK_EQUALS: + if (SDL_GetModState() & KMOD_CTRL) { + zoom_factor += 2; // Increase by a factor of 0.2 + + // Consume the next SDL_TEXTINPUT event for '=' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (!(tmpEvent.type == SDL_TEXTINPUT && tmpEvent.text.text[0] == '=')) { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } } break; - case SDLK_UP: { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_up(&editor); - } else { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); + case SDLK_9: { + if (event.key.keysym.mod & KMOD_SHIFT) { + char pair[] = "()"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + + // Consume both characters '(' and ')' immediately + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume '(' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '(') { + SDL_PushEvent(&tmpEvent); + } + SDL_PollEvent(&tmpEvent); // Consume ')' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ')') { + SDL_PushEvent(&tmpEvent); + } + } else { + editor_insert_char(&editor, '9'); + + // Consume the next SDL_TEXTINPUT event for '9' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '9') { + SDL_PushEvent(&tmpEvent); + } } + } break; - case SDLK_DOWN: { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); + case SDLK_LEFTBRACKET: { + if (event.key.keysym.mod & KMOD_SHIFT) { + char pair[] = "{}"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + + // Consume both characters '{' and '}' immediately + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume '{' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '{') { + SDL_PushEvent(&tmpEvent); + } + SDL_PollEvent(&tmpEvent); // Consume '}' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '}') { + SDL_PushEvent(&tmpEvent); + } + } else { + // Insert two '[' characters, move the cursor left, and consume the keypress + char pair[] = "[]"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume '[' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '[') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } } + } break; - case SDLK_LEFT: { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + case SDLK_LESS: { + if (event.key.keysym.mod & KMOD_SHIFT) { + // Handle '<' with shift pressed + char pair[] = "<>"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); // Move cursor between angle brackets + } else { + // Handle '<' without shift. + editor_insert_char(&editor, '<'); + } + + // Consume the upcoming character events + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume the first character + if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != '<' && tmpEvent.text.text[0] != '>')) { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + if (event.key.keysym.mod & KMOD_SHIFT) { // Only try to consume the second character if shift was pressed + SDL_PollEvent(&tmpEvent); // Consume the second character + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '>') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + } + break; + + + + + case SDLK_QUOTE: { + if (event.key.keysym.mod & KMOD_SHIFT) { + // If Shift + ' is pressed, insert double quotes "" + char pair[] = "\"\""; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + + // Consume both characters '"' and '"' immediately + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume first '"' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\"') { + SDL_PushEvent(&tmpEvent); + } + SDL_PollEvent(&tmpEvent); // Consume second '"' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\"') { + SDL_PushEvent(&tmpEvent); + } + } else { + // If just ' is pressed, insert single quotes '' + char pair[] = "''"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume first ''' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\'') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + } + break; + + + + // TODO QUOTE + + case SDLK_BACKSPACE: + editor_backspace(&editor); + break; + + case SDLK_RETURN: { + if (editor.searching) { + editor_stop_search_and_mark(&editor); + current_mode = NORMAL; + + } else { + editor_insert_char(&editor, '\n'); + editor.last_stroke = SDL_GetTicks(); + } + } + break; + + case SDLK_f: { if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); + editor_start_search(&editor); } - editor.last_stroke = SDL_GetTicks(); } break; - case SDLK_RIGHT: { + case SDLK_ESCAPE: { + current_mode = NORMAL; + editor_stop_search(&editor); editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_right(&editor); - } else { - editor_move_char_right(&editor); + } + break; + + + case SDLK_c: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_clipboard_copy(&editor); + } + break; + + /* case SDLK_s: */ + /* if (event.key.keysym.mod & KMOD_CTRL) { */ + /* editor_save(&editor); */ + /* } */ + /* break; */ + + case SDLK_s: { + if (SDL_GetModState() & KMOD_CTRL) { // Checks if CTRL is held down + if (editor.file_path.count > 0) { + err = editor_save(&editor); + if (err != 0) { + flash_error("Could not save currently edited file: %s", strerror(err)); } - editor.last_stroke = SDL_GetTicks(); + } else { + // TODO: ask the user for the path to save to in this situation + flash_error("Nowhere to save the text"); + } } + } break; + + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); } - } - } - break; + break; - case SDL_TEXTINPUT: { - if (file_browser) { - // Nothing for now - // Once we have incremental search in the file browser this may become useful - } else { - const char *text = event.text.text; - size_t text_len = strlen(text); - for (size_t i = 0; i < text_len; ++i) { - editor_insert_char(&editor, text[i]); + case SDLK_v: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_clipboard_paste(&editor); + } + break; + + case SDLK_UP: + editor_update_selection(&editor, + event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_DOWN: + editor_update_selection(&editor, + event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_LEFT: + editor_update_selection(&editor, + event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_RIGHT: + editor_update_selection(&editor, + event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_right(&editor); + } else { + editor_move_char_right(&editor); } editor.last_stroke = SDL_GetTicks(); + break; + } + break; + + case VISUAL: + switch (event.key.keysym.sym) { + + case SDLK_j: // Down + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_h: // Left + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_k: // Up + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: // Right + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_right(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + // transition back to NORMAL mode + case SDLK_ESCAPE: + current_mode = NORMAL; + break; + } + break; + + // Add additional VISUAL mode keybinds here... + } + break; + } - } - break; - } - } + break; + + case VISUAL_LINE: + switch (event.key.keysym.sym) { + + case SDLK_j: // Down + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; - { - int w, h; - SDL_GetWindowSize(window, &w, &h); - // TODO(#19): update the viewport and the resolution only on actual window change - glViewport(0, 0, w, h); + case SDLK_h: // Left + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_k: // Up + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: // Right + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_right(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + // Transition back to NORMAL mode + case SDLK_ESCAPE: + current_mode = NORMAL; + break; + + // Add additional VISUAL_LINE mode keybinds here... + } + break; + + // More cases for other modes can follow here... + // ... + break; + + + + + case SDL_TEXTINPUT: + if (file_browser) { + // Once we have incremental search in the file browser this may become useful + } else if (current_mode == INSERT) { // Process text input only in INSERT mode + const char *text = event.text.text; + size_t text_len = strlen(text); + for (size_t i = 0; i < text_len; ++i) { + editor_insert_char(&editor, text[i]); + } + editor.last_stroke = SDL_GetTicks(); + } + break; + + } } - Vec4f bg = hex_to_vec4f(0x181818FF); + int w, h; + SDL_GetWindowSize(window, &w, &h); + glViewport(0, 0, w, h); + /* Vec4f bg = hex_to_vec4f(0x181818FF); // FDABCF 181818 */ + Vec4f bg = themes[currentThemeIndex].background; glClearColor(bg.x, bg.y, bg.z, bg.w); glClear(GL_COLOR_BUFFER_BIT); + /* if (file_browser) { */ + /* fb_render(&fb, window, &atlas, &sr); */ + /* } else { */ + /* editor_render(window, &atlas, &sr, &editor); */ + /* } */ + + if (file_browser) { - fb_render(&fb, window, &atlas, &sr); + fb_render(&fb, window, &atlas, &sr); + } else if (repl) { + repl_render(&repl, window, &atlas, &sr); // Add the &atlas parameter here } else { - editor_render(window, &atlas, &sr, &editor); + editor_render(window, &atlas, &sr, &editor); } - SDL_GL_SwapWindow(window); + + + SDL_GL_SwapWindow(window); const Uint32 duration = SDL_GetTicks() - start; const Uint32 delta_time_ms = 1000 / FPS; if (duration < delta_time_ms) { SDL_Delay(delta_time_ms - duration); } } - return 0; -} + } // TODO: ability to search within file browser // Very useful when you have a lot of files diff --git a/src/repl.c b/src/repl.c new file mode 100644 index 00000000..923f27c4 --- /dev/null +++ b/src/repl.c @@ -0,0 +1,47 @@ +#include "repl.h" +#include "sv.h" +#include "simple_renderer.h" +#include +#include +#include + +#define BUFFER_SIZE 256 + +Errno repl_execute(Repl *repl, const char *command) { + char buffer[BUFFER_SIZE]; + FILE *fp = popen(command, "r"); + + if (!fp) { + return 1; // Adjust error codes as needed + } + + repl->output_line.count = 0; // Reset the string builder + + while (fgets(buffer, sizeof(buffer), fp)) { + sb_append_cstr(&repl->output_line, buffer); + } + + pclose(fp); + return 0; +} + +void repl_render(const Repl *repl, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr) { + // Implement rendering based on your application's needs. + // For now, we'll stick to a basic implementation similar to the one provided in file_browser.c + + Vec2f cursor_pos = vec2f(0, 0); + int w, h; + SDL_GetWindowSize(window, &w, &h); + sr->resolution = vec2f(w, h); + sr->time = (float) SDL_GetTicks() / 1000.0f; + + simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + + simple_renderer_set_shader(sr, SHADER_FOR_EPICNESS); + free_glyph_atlas_render_line_sized( + atlas, sr, repl->output_line.items, repl->output_line.count, + &cursor_pos, + vec4fs(0)); + + simple_renderer_flush(sr); +} diff --git a/src/repl.h b/src/repl.h new file mode 100644 index 00000000..e93136a6 --- /dev/null +++ b/src/repl.h @@ -0,0 +1,18 @@ +#ifndef REPL_H +#define REPL_H + +#include "sv.h" +#include "common.h" +#include "simple_renderer.h" +#include "./free_glyph.h" +#include + + +typedef struct { + String_Builder output_line; +} Repl; + +Errno repl_execute(Repl *repl, const char *command); +void repl_render(const Repl *repl, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr); + +#endif // REPL_H From da6bcaa3f134af9a6d6be62040f57d83035d3a4b Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 13 Sep 2023 08:40:07 +0000 Subject: [PATCH 02/74] minor-change --- src/main.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/src/main.c b/src/main.c index 4037642b..0dc2d7fb 100644 --- a/src/main.c +++ b/src/main.c @@ -374,12 +374,6 @@ int main(int argc, char **argv) } } break; - /* case SDLK_SLASH: { */ - /* current_mode = INSERT; */ - /* // TODO eat up the first press here */ - /* editor_start_search(&editor); */ - /* } break; */ - case SDLK_SLASH: { current_mode = INSERT; editor_start_search(&editor); @@ -392,7 +386,6 @@ int main(int argc, char **argv) } } break; - case SDLK_n: { if (SDL_GetModState() & KMOD_SHIFT) { editor_search_previous(&editor); @@ -407,7 +400,7 @@ int main(int argc, char **argv) theme_next(¤tThemeIndex); printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor += 0.333f; + zoom_factor -= 0.8f; } } break; @@ -416,7 +409,7 @@ int main(int argc, char **argv) theme_previous(¤tThemeIndex); printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor -= 0.8f; + zoom_factor += 0.8f; if (zoom_factor < 1.0f) zoom_factor = 1.0f; // Ensure zoom_factor doesn't drop below a threshold } } break; From 4636df3fbd4a5f1aeae96f5a651441af4ec7b1a4 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 13 Sep 2023 10:54:45 +0000 Subject: [PATCH 03/74] update --- shaders/simple_acid.frag | 36 ++++++++++++++++++++ shaders/simple_epic.frag | 13 ++++++-- shaders/simple_pony.frag | 31 +++++++++++++++++ shaders/simple_rainbow.frag | 22 +++++++++++++ src/editor.c | 66 +++++++++++++++++++++++++++---------- src/main.c | 24 ++++++++++++++ 6 files changed, 173 insertions(+), 19 deletions(-) create mode 100644 shaders/simple_acid.frag create mode 100644 shaders/simple_pony.frag create mode 100644 shaders/simple_rainbow.frag diff --git a/shaders/simple_acid.frag b/shaders/simple_acid.frag new file mode 100644 index 00000000..3752a132 --- /dev/null +++ b/shaders/simple_acid.frag @@ -0,0 +1,36 @@ +#version 330 core + +uniform float time; +uniform vec2 resolution; +uniform sampler2D image; + +in vec2 out_uv; + +vec3 hsl2rgb(vec3 c) { + vec3 rgb = clamp(abs(mod(c.x*6.0+vec3(0.0,4.0,2.0),6.0)-3.0)-1.0, 0.0, 1.0); + return c.z + c.y * (rgb-0.5)*(1.0-abs(2.0*c.z-1.0)); +} + +void main() { + vec4 tc = texture(image, out_uv); + float d = tc.r; + float aaf = fwidth(d); + float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); + + vec2 frag_uv = gl_FragCoord.xy / resolution; + + // Firefly movement: This simulates the movement of 3 "fireflies" + float f1 = abs(sin(frag_uv.x * 10.0 + time)); + float f2 = abs(cos(frag_uv.y * 8.0 + time * 1.5)); + float f3 = abs(sin(frag_uv.x * 12.0 + frag_uv.y * 12.0 + time * 0.7)); + + // Combine fireflies' impact + float fireflyEffect = f1 + f2 + f3; + + // Translate that to a color-shifting effect + vec3 fireflyColor = hsl2rgb(vec3(fireflyEffect * 0.3, 0.6, 0.5)); + + vec3 finalColor = mix(tc.rgb, fireflyColor, d * fireflyEffect); + + gl_FragColor = vec4(finalColor, alpha); +} diff --git a/shaders/simple_epic.frag b/shaders/simple_epic.frag index 9cfc9000..919caefe 100644 --- a/shaders/simple_epic.frag +++ b/shaders/simple_epic.frag @@ -16,7 +16,16 @@ void main() { float d = tc.r; float aaf = fwidth(d); float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); + vec2 frag_uv = gl_FragCoord.xy / resolution; - vec4 rainbow = vec4(hsl2rgb(vec3((time + frag_uv.x + frag_uv.y), 0.5, 0.5)), 1.0); - gl_FragColor = vec4(rainbow.rgb, alpha); + + // Dynamic color-shifting aura + vec3 auraColor = hsl2rgb(vec3(mod(time * 0.2 + frag_uv.y, 1.0), 0.5, 0.5)); + + // Shimmering gradient across the text + float shimmer = (sin(time * 3.0 + frag_uv.x * 10.0) + 1.0) * 0.5; + vec3 shimmerColor = mix(vec3(1.0, 0.8, 0.6), vec3(0.6, 0.8, 1.0), shimmer); + + vec3 finalColor = mix(auraColor, shimmerColor, d); + gl_FragColor = vec4(finalColor, alpha); } diff --git a/shaders/simple_pony.frag b/shaders/simple_pony.frag new file mode 100644 index 00000000..919caefe --- /dev/null +++ b/shaders/simple_pony.frag @@ -0,0 +1,31 @@ +#version 330 core + +uniform float time; +uniform vec2 resolution; +uniform sampler2D image; + +in vec2 out_uv; + +vec3 hsl2rgb(vec3 c) { + vec3 rgb = clamp(abs(mod(c.x*6.0+vec3(0.0,4.0,2.0),6.0)-3.0)-1.0, 0.0, 1.0); + return c.z + c.y * (rgb-0.5)*(1.0-abs(2.0*c.z-1.0)); +} + +void main() { + vec4 tc = texture(image, out_uv); + float d = tc.r; + float aaf = fwidth(d); + float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); + + vec2 frag_uv = gl_FragCoord.xy / resolution; + + // Dynamic color-shifting aura + vec3 auraColor = hsl2rgb(vec3(mod(time * 0.2 + frag_uv.y, 1.0), 0.5, 0.5)); + + // Shimmering gradient across the text + float shimmer = (sin(time * 3.0 + frag_uv.x * 10.0) + 1.0) * 0.5; + vec3 shimmerColor = mix(vec3(1.0, 0.8, 0.6), vec3(0.6, 0.8, 1.0), shimmer); + + vec3 finalColor = mix(auraColor, shimmerColor, d); + gl_FragColor = vec4(finalColor, alpha); +} diff --git a/shaders/simple_rainbow.frag b/shaders/simple_rainbow.frag new file mode 100644 index 00000000..9cfc9000 --- /dev/null +++ b/shaders/simple_rainbow.frag @@ -0,0 +1,22 @@ +#version 330 core + +uniform float time; +uniform vec2 resolution; +uniform sampler2D image; + +in vec2 out_uv; + +vec3 hsl2rgb(vec3 c) { + vec3 rgb = clamp(abs(mod(c.x*6.0+vec3(0.0,4.0,2.0),6.0)-3.0)-1.0, 0.0, 1.0); + return c.z + c.y * (rgb-0.5)*(1.0-abs(2.0*c.z-1.0)); +} + +void main() { + vec4 tc = texture(image, out_uv); + float d = tc.r; + float aaf = fwidth(d); + float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); + vec2 frag_uv = gl_FragCoord.xy / resolution; + vec4 rainbow = vec4(hsl2rgb(vec3((time + frag_uv.x + frag_uv.y), 0.5, 0.5)), 1.0); + gl_FragColor = vec4(rainbow.rgb, alpha); +} diff --git a/src/editor.c b/src/editor.c index a48dc42e..539b8d55 100644 --- a/src/editor.c +++ b/src/editor.c @@ -9,7 +9,7 @@ EvilMode current_mode = NORMAL; float zoom_factor = 5.0f; -Theme themes[7]; +Theme themes[10]; int currentThemeIndex = 0; @@ -47,28 +47,15 @@ void initialize_themes() { .fb_selection = hex_to_vec4f(0x44475AFF) }; - themes[1] = (Theme) { - .cursor = hex_to_vec4f(0xF8F8F2FF), - .text = hex_to_vec4f(0xE9E9F4FF), - .background = hex_to_vec4f(0x282A36FF), - .comment = hex_to_vec4f(0x6272A4FF), - .hashtag = hex_to_vec4f(0x50FA7BFF), - .logic = hex_to_vec4f(0xFF79C6FF), - .string = hex_to_vec4f(0xF1FA8CFF), - .selection = hex_to_vec4f(0x44475AFF), - .search = hex_to_vec4f(0xFF5555FF), - .marks = hex_to_vec4f(0xBD93F9FF), - .fb_selection = hex_to_vec4f(0x44475AFF) - }; // Palenight themes[2] = (Theme) { - .cursor = hex_to_vec4f(0xAB47BCFF), + .cursor = hex_to_vec4f(0xC792EAFF), .text = hex_to_vec4f(0xA6ACCDFF), .logic = hex_to_vec4f(0x89DDFFFF), .background = hex_to_vec4f(0x292D3EFF), .comment = hex_to_vec4f(0x676E95FF), - .hashtag = hex_to_vec4f(0xC792EAFF), + .hashtag = hex_to_vec4f(0xAB47BCFF), .string = hex_to_vec4f(0xC3E88DFF), .selection = hex_to_vec4f(0x00000000), .fb_selection = hex_to_vec4f(0x00000000) @@ -119,8 +106,53 @@ void initialize_themes() { .fb_selection = hex_to_vec4f(0x3B4252FF) }; - // Catppuccin + // Modus Operandi Inspired 1 themes[6] = (Theme) { + .cursor = hex_to_vec4f(0x000f0eff), + .text = hex_to_vec4f(0x000f0eff), + .logic = hex_to_vec4f(0x0090a1ff), + .background = hex_to_vec4f(0xfafafaff), + .comment = hex_to_vec4f(0x52676fff), + .hashtag = hex_to_vec4f(0xa070c0ff), + .string = hex_to_vec4f(0x7a5eafff), + .selection = hex_to_vec4f(0xd0d0e0ff), + .search = hex_to_vec4f(0xffc9c0ff), + .marks = hex_to_vec4f(0x9058d7ff), + .fb_selection = hex_to_vec4f(0xc0c0d8ff) + }; + + // Wildcherry Theme + themes[7] = (Theme) { + .background = hex_to_vec4f(0x000507FF), + .cursor = hex_to_vec4f(0xAA6F99FF), + .text = hex_to_vec4f(0xacbbc7FF), + .logic = hex_to_vec4f(0x6E5F95FF), + .comment = hex_to_vec4f(0x78828bFF), + .hashtag = hex_to_vec4f(0x7B6DA9FF), + .string = hex_to_vec4f(0xAA6F99FF), + .selection = hex_to_vec4f(0x8370AFFF), + .search = hex_to_vec4f(0xB375A8FF), + .marks = hex_to_vec4f(0x66578AFF), + .fb_selection = hex_to_vec4f(0x6E5F95FF) + }; + + // Rose-Pine + themes[8] = (Theme) { + .cursor = hex_to_vec4f(0xeb6f92FF), // Love (Pinkish) + .text = hex_to_vec4f(0xe0def4FF), // Text + .background = hex_to_vec4f(0x191724FF), // Base + .comment = hex_to_vec4f(0x6e6a86FF), // Muted + .hashtag = hex_to_vec4f(0x31748fFF), // Pine (Bluish) + .logic = hex_to_vec4f(0x908caaFF), // Subtle (Purple-ish) + .string = hex_to_vec4f(0xf6c177FF), // Gold (Yellow) + .selection = hex_to_vec4f(0x26233aFF), // Overlay + .search = hex_to_vec4f(0xc4a7e7FF), // Iris (Light Purple) + .marks = hex_to_vec4f(0xebbcbaFF), // Rose (Light Pink) + .fb_selection = hex_to_vec4f(0x9ccfd8FF) // Foam (Cyan) + }; + + // Catppuccin + themes[9] = (Theme) { .cursor = hex_to_vec4f(0xf38ba8FF), // Red .text = hex_to_vec4f(0xcdd6f4FF), // Text .background = hex_to_vec4f(0x1e1e2eFF), // Base diff --git a/src/main.c b/src/main.c index 0dc2d7fb..5c250891 100644 --- a/src/main.c +++ b/src/main.c @@ -220,6 +220,25 @@ int main(int argc, char **argv) } break; + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); + } + break; + + case SDLK_EQUALS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_next(¤tThemeIndex); + printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } + } break; + + case SDLK_MINUS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_previous(¤tThemeIndex); + printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } + } break; + case SDLK_UP: { if (fb.cursor > 0) fb.cursor -= 1; @@ -353,6 +372,11 @@ int main(int argc, char **argv) } break; + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); + } + break; + case SDLK_COLON: // Assuming SDLK_COLON is the correct enum value for ':', adjust if not current_mode = COMMAND; From 80fe2fbd25bb1d45544e605e51fbea88ed3e66c8 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 13 Sep 2023 18:30:22 +0000 Subject: [PATCH 04/74] editor_delete_selection --- src/editor.c | 34 ++++++++++++++++++++++++++++++++++ src/editor.h | 1 + src/main.c | 16 ++++++++++++++++ 3 files changed, 51 insertions(+) diff --git a/src/editor.c b/src/editor.c index 539b8d55..c7385d7b 100644 --- a/src/editor.c +++ b/src/editor.c @@ -267,6 +267,40 @@ void editor_delete(Editor *e) editor_retokenize(e); } +void editor_delete_selection(Editor *e) +{ + assert(e->selection); + + if (e->cursor > e->select_begin) { + if (e->cursor > e->data.count) { + e->cursor = e->data.count; + } + if (e->cursor == 0) return; + + size_t nchars = e->cursor - e->select_begin; + memmove( + &e->data.items[e->cursor - nchars], + &e->data.items[e->cursor], + e->data.count - e->cursor + ); + + e->cursor -= nchars; + e->data.count -= nchars; + } else { + if (e->cursor >= e->data.count) return; + + size_t nchars = e->select_begin - e->cursor; + memmove( + &e->data.items[e->cursor], + &e->data.items[e->cursor + nchars], + e->data.count - e->cursor - nchars + ); + + e->data.count -= nchars; + } + editor_retokenize(e); +} + // TODO: make sure that you always have new line at the end of the file while saving // https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 diff --git a/src/editor.h b/src/editor.h index fccb7b97..244de527 100644 --- a/src/editor.h +++ b/src/editor.h @@ -87,6 +87,7 @@ Errno editor_load_from_file(Editor *editor, const char *file_path); void editor_backspace(Editor *editor); void editor_delete(Editor *editor); +void editor_delete_selection(Editor *editor); size_t editor_cursor_row(const Editor *e); void editor_move_line_up(Editor *e); diff --git a/src/main.c b/src/main.c index 5c250891..a406796b 100644 --- a/src/main.c +++ b/src/main.c @@ -853,6 +853,22 @@ int main(int argc, char **argv) case VISUAL: switch (event.key.keysym.sym) { + /* case SDLK_x: */ + /* editor_delete_selection(&editor); */ + /* editor.selection = false; */ + /* break; */ + + + case SDLK_x: + if (editor.selection) { + editor_delete_selection(&editor); + editor.selection = false; + current_mode = NORMAL; + + } + break; + + case SDLK_j: // Down editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { From 2fa49ed24388c8603fe6b6e74e6d1c6b41e82b97 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 13 Sep 2023 18:32:35 +0000 Subject: [PATCH 05/74] selection-fix --- src/main.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main.c b/src/main.c index a406796b..dbf1abcc 100644 --- a/src/main.c +++ b/src/main.c @@ -497,10 +497,20 @@ int main(int argc, char **argv) } break; + /* case SDLK_x: */ + /* editor_cut_char_under_cursor(&editor); */ + /* break; */ + case SDLK_x: - editor_cut_char_under_cursor(&editor); + if (editor.selection) { + editor_delete_selection(&editor); + editor.selection = false; + } else { + editor_cut_char_under_cursor(&editor); + } break; + case SDLK_p: editor_clipboard_paste(&editor); break; From e3204a43f78ed0ef302051873775bbf9e3ecb2ae Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 13 Sep 2023 20:44:25 +0000 Subject: [PATCH 06/74] java-and-python --- src/editor.c | 3 +- src/lexer.c | 89 ++++++++++++++++++++++++++++++++++++++++++++++------ src/lexer.h | 5 ++- test.py | 0 4 files changed, 86 insertions(+), 11 deletions(-) create mode 100644 test.py diff --git a/src/editor.c b/src/editor.c index c7385d7b..8723d91d 100644 --- a/src/editor.c +++ b/src/editor.c @@ -476,7 +476,8 @@ void editor_retokenize(Editor *e) // Syntax Highlighting { e->tokens.count = 0; - Lexer l = lexer_new(e->atlas, e->data.items, e->data.count); + /* Lexer l = lexer_new(e->atlas, e->data.items, e->data.count); */ + Lexer l = lexer_new(e->atlas, e->data.items, e->data.count, e->file_path); Token t = lexer_next(&l); while (t.kind != TOKEN_END) { da_append(&e->tokens, t); diff --git a/src/lexer.c b/src/lexer.c index cfd9022c..dcb77730 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -2,6 +2,7 @@ #include #include #include +#include #include "common.h" #include "lexer.h" @@ -19,7 +20,16 @@ Literal_Token literal_tokens[] = { }; #define literal_tokens_count (sizeof(literal_tokens)/sizeof(literal_tokens[0])) -const char *keywords[] = { + +const char *jKeywords[] = { + "abstract", "assert", "boolean", "break", "byte", "case", "catch", "char", "class", "const", "continue", "default", "do", "double", "else", "enum", "extends", "final", "finally", "float", "for", "goto", "if", "implements", "import", "instanceof", "int", "interface", "long", "native", "new", "package", "private", "protected", "public", "return", "short", "static", "super", "switch", "synchronized", "this", "throw", "throws", "transient", "try", "void", "volatile", "while", "non-sealed", "open", "opens", "permits", "provides", "record", "sealed", "to", "transitive", "uses", "var", "with", "yield", "true", "false", "null", "const", "goto", "strictfp", +}; +#define jKeywords_count (sizeof(jKeywords)/sizeof(jKeywords[0])) + + + + +const char *cKeywords[] = { "auto", "break", "case", "char", "const", "continue", "default", "do", "double", "else", "enum", "extern", "float", "for", "goto", "if", "int", "long", "register", "return", "short", "signed", "sizeof", "static", "struct", "switch", "typedef", @@ -34,7 +44,20 @@ const char *keywords[] = { "template", "this", "thread_local", "throw", "true", "try", "typeid", "typename", "using", "virtual", "wchar_t", "xor", "xor_eq", }; -#define keywords_count (sizeof(keywords)/sizeof(keywords[0])) +/* #define keywords_count (sizeof(keywords)/sizeof(keywords[0])) */ +#define cKeywords_count (sizeof(cKeywords)/sizeof(cKeywords[0])) + + + +const char *pyKeywords[] = { + "False", "None", "True", "and", "as", "assert", "async", "await", "break", "class", "continue", "def", "del", "elif", "else", "except", "finally", "for", "from", "global", "if", "import", "in", "is", "lambda", "nonlocal", "not", "or", "pass", "raise", "return", "try", "while", "with", "yield", +}; +#define pyKeywords_count (sizeof(pyKeywords)/sizeof(pyKeywords[0])) + + + + + const char *token_kind_name(Token_Kind kind) { @@ -65,12 +88,26 @@ const char *token_kind_name(Token_Kind kind) return NULL; } -Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len) +// ORIGINAL +/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len) */ +/* { */ +/* Lexer l = {0}; */ +/* l.atlas = atlas; */ +/* l.content = content; */ +/* l.content_len = content_len; */ +/* return l; */ +/* } */ + +Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path) { Lexer l = {0}; l.atlas = atlas; l.content = content; l.content_len = content_len; + if (file_path.items != NULL) { + l.file_path.items = (char*) malloc(sizeof(char*) * (strlen(file_path.items) + 1)); + strcpy(l.file_path.items, file_path.items); + } return l; } @@ -203,14 +240,48 @@ Token lexer_next(Lexer *l) token.text_len += 1; } - for (size_t i = 0; i < keywords_count; ++i) { - size_t keyword_len = strlen(keywords[i]); - if (keyword_len == token.text_len && memcmp(keywords[i], token.text, keyword_len) == 0) { - token.kind = TOKEN_KEYWORD; - break; + if (l->file_path.items == NULL) + return token; + + const char* file_ext; + const char* filename = l->file_path.items; + const char *dot = strrchr(filename, '.'); + if(!dot || dot == filename) + file_ext = ""; + else + file_ext = dot + 1; + + /* for (size_t i = 0; i < keywords_count; ++i) { */ + /* size_t keyword_len = strlen(keywords[i]); */ + /* if (keyword_len == token.text_len && memcmp(keywords[i], token.text, keyword_len) == 0) { */ + /* token.kind = TOKEN_KEYWORD; */ + /* break; */ + + if (strcmp(file_ext, "java") == 0) { + for (size_t i = 0; i < jKeywords_count; ++i) { + size_t keyword_len = strlen(jKeywords[i]); + if (keyword_len == token.text_len && memcmp(jKeywords[i], token.text, keyword_len) == 0) { + token.kind = TOKEN_KEYWORD; + break; + } + } + } else if (strcmp(file_ext, "py") == 0) { + for (size_t i = 0; i < pyKeywords_count; ++i) { + size_t keyword_len = strlen(pyKeywords[i]); + if (keyword_len == token.text_len && memcmp(pyKeywords[i], token.text, keyword_len) == 0) { + token.kind = TOKEN_KEYWORD; + break; + } + } + } else { + for (size_t i = 0; i < cKeywords_count; ++i) { + size_t keyword_len = strlen(cKeywords[i]); + if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { + token.kind = TOKEN_KEYWORD; + break; + } } } - return token; } diff --git a/src/lexer.h b/src/lexer.h index 6ee721ed..35b93dec 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -4,6 +4,7 @@ #include #include "./la.h" #include "./free_glyph.h" +#include "./common.h" typedef enum { TOKEN_END = 0, @@ -37,9 +38,11 @@ typedef struct { size_t line; size_t bol; float x; + String_Builder file_path; } Lexer; -Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len); +/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len); */ +Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path); Token lexer_next(Lexer *l); #endif // LEXER_H_ diff --git a/test.py b/test.py new file mode 100644 index 00000000..e69de29b From d255a51a4836793f9d1e24c757f357fdcb3c8799 Mon Sep 17 00:00:00 2001 From: laluxx Date: Thu, 14 Sep 2023 16:31:43 +0000 Subject: [PATCH 07/74] hex-colors-preview --- src/common.c | 5 +++ src/common.h | 3 ++ src/editor.c | 94 +++++++++++++++++++++++++++++++++++----------------- src/lexer.c | 66 +++++++++++++++++++++++++++++++----- src/lexer.h | 4 ++- src/main.c | 4 --- 6 files changed, 132 insertions(+), 44 deletions(-) diff --git a/src/common.c b/src/common.c index d4d774c2..38772104 100644 --- a/src/common.c +++ b/src/common.c @@ -128,6 +128,11 @@ Errno read_entire_file(const char *file_path, String_Builder *sb) return result; } +bool is_hex_digit(char c) { + return (c >= '0' && c <= '9') || (c >= 'a' && c <= 'f') || (c >= 'A' && c <= 'F'); +} + + Vec4f hex_to_vec4f(uint32_t color) { Vec4f result; diff --git a/src/common.h b/src/common.h index 761b093f..1bbbe7e2 100644 --- a/src/common.h +++ b/src/common.h @@ -4,6 +4,7 @@ #include #include #include +#include #include "./la.h" #define SCREEN_WIDTH 800 @@ -109,6 +110,8 @@ Errno read_entire_file(const char *file_path, String_Builder *sb); Errno write_entire_file(const char *file_path, const char *buf, size_t buf_size); Errno read_entire_dir(const char *dir_path, Files *files); + +bool is_hex_digit(char c); Vec4f hex_to_vec4f(uint32_t color); #endif // COMMON_H_ diff --git a/src/editor.c b/src/editor.c index 8723d91d..e7af030f 100644 --- a/src/editor.c +++ b/src/editor.c @@ -14,20 +14,22 @@ Theme themes[10]; int currentThemeIndex = 0; + void initialize_themes() { - // Best theme ever + + // Catppuccin themes[0] = (Theme) { - .cursor = hex_to_vec4f(0xFFFFFFFF), // White cursor - .text = hex_to_vec4f(0xFFFFFFFF), - .background = hex_to_vec4f(0x181818FF), - .comment = hex_to_vec4f(0xCC8C3CFF), - .hashtag = hex_to_vec4f(0x95A99FFF), - .logic = hex_to_vec4f(0xFFDD33FF), - .string = hex_to_vec4f(0x73c936ff), - .selection = hex_to_vec4f(0x00000000), - .search = hex_to_vec4f(0xFFDD33FF), - .marks = hex_to_vec4f(0xFFDD33FF), - .fb_selection = hex_to_vec4f(0x00000000) + .cursor = hex_to_vec4f(0xf38ba8FF), // Red + .text = hex_to_vec4f(0xcdd6f4FF), // Text + .background = hex_to_vec4f(0x1e1e2eFF), // Base + .comment = hex_to_vec4f(0x9399b2FF), // Overlay2 + .hashtag = hex_to_vec4f(0x89b4faFF), // Blue + .logic = hex_to_vec4f(0xa6e3a1FF), // Green + .string = hex_to_vec4f(0xf9e2afFF), // Yellow + .selection = hex_to_vec4f(0xf5c2e7FF), // Pink + .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo + .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire + .fb_selection = hex_to_vec4f(0xb4befeFF) // Lavender }; @@ -41,7 +43,6 @@ void initialize_themes() { .hashtag = hex_to_vec4f(0x8BE9FDFF), .string = hex_to_vec4f(0xF1FA8CFF), .selection = hex_to_vec4f(0x00000000), - .selection = hex_to_vec4f(0x44475AFF), .search = hex_to_vec4f(0xFF5555FF), .marks = hex_to_vec4f(0xBD93F9FF), .fb_selection = hex_to_vec4f(0x44475AFF) @@ -151,22 +152,20 @@ void initialize_themes() { .fb_selection = hex_to_vec4f(0x9ccfd8FF) // Foam (Cyan) }; - // Catppuccin + // Best theme ever themes[9] = (Theme) { - .cursor = hex_to_vec4f(0xf38ba8FF), // Red - .text = hex_to_vec4f(0xcdd6f4FF), // Text - .background = hex_to_vec4f(0x1e1e2eFF), // Base - .comment = hex_to_vec4f(0x9399b2FF), // Overlay2 - .hashtag = hex_to_vec4f(0x89b4faFF), // Blue - .logic = hex_to_vec4f(0xa6e3a1FF), // Green - .string = hex_to_vec4f(0xf9e2afFF), // Yellow - .selection = hex_to_vec4f(0xf5c2e7FF), // Pink - .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo - .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire - .fb_selection = hex_to_vec4f(0xb4befeFF) // Lavender + .cursor = hex_to_vec4f(0xFFFFFFFF), // White cursor + .text = hex_to_vec4f(0xFFFFFFFF), + .background = hex_to_vec4f(0x181818FF), + .comment = hex_to_vec4f(0xCC8C3CFF), + .hashtag = hex_to_vec4f(0x95A99FFF), + .logic = hex_to_vec4f(0xFFDD33FF), + .string = hex_to_vec4f(0x73c936ff), + .selection = hex_to_vec4f(0x00000000), + .search = hex_to_vec4f(0xFFDD33FF), + .marks = hex_to_vec4f(0xFFDD33FF), + .fb_selection = hex_to_vec4f(0x00000000) }; - - } void theme_next(int *currentThemeIndex) { @@ -638,13 +637,40 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer for (size_t i = 0; i < editor->tokens.count; ++i) { Token token = editor->tokens.items[i]; Vec2f pos = token.position; - /* Vec4f color = vec4fs(1); */ + //Vec4f color = vec4fs(1); + // TODO match color for open and close Vec4f color = themes[currentThemeIndex].text; + switch (token.kind) { + /* case TOKEN_PREPROC: */ + /* /\* color = hex_to_vec4f(0x95A99FFF); *\/ */ + /* color = themes[currentThemeIndex].hashtag; */ + /* break; */ + case TOKEN_PREPROC: - /* color = hex_to_vec4f(0x95A99FFF); */ - color = themes[currentThemeIndex].hashtag; + if (token.text_len >= 7 && token.text[0] == '#') { // Check if it's likely a hex color + bool valid_hex = true; + for (size_t j = 1; j < 7 && valid_hex; ++j) { + if (!is_hex_digit(token.text[j])) { + valid_hex = false; + } + } + + if (valid_hex) { + unsigned int hex_value; + if(sscanf(token.text, "#%06x", &hex_value) == 1) { + color = hex_to_vec4f(hex_value); + } else { + color = themes[currentThemeIndex].hashtag; // Default to the hashtag color if not a valid hex + } + } else { + color = themes[currentThemeIndex].hashtag; // Not a valid hex color + } + } else { + color = themes[currentThemeIndex].hashtag; // Default color for preprocessor directives + } break; + case TOKEN_KEYWORD: /* color = hex_to_vec4f(0xFFDD33FF); */ color = themes[currentThemeIndex].logic; @@ -658,6 +684,14 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer /* color = hex_to_vec4f(0x73c936ff); */ color = themes[currentThemeIndex].string; break; + case TOKEN_COLOR: // Added case for TOKEN_COLOR + { + unsigned long long hex_value; + if(sscanf(token.text, "0x%llx", &hex_value) == 1) { + color = hex_to_vec4f((uint32_t)hex_value); + } + } + break; default: {} } diff --git a/src/lexer.c b/src/lexer.c index dcb77730..3e56b52b 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -11,6 +11,9 @@ typedef struct { const char *text; } Literal_Token; + +/* int nesting_level = 0; */ // TODO + Literal_Token literal_tokens[] = { {.text = "(", .kind = TOKEN_OPEN_PAREN}, {.text = ")", .kind = TOKEN_CLOSE_PAREN}, @@ -49,6 +52,10 @@ const char *cKeywords[] = { + + + + const char *pyKeywords[] = { "False", "None", "True", "and", "as", "assert", "async", "await", "break", "class", "continue", "def", "del", "elif", "else", "except", "finally", "for", "from", "global", "if", "import", "in", "is", "lambda", "nonlocal", "not", "or", "pass", "raise", "return", "try", "while", "with", "yield", }; @@ -76,6 +83,8 @@ const char *token_kind_name(Token_Kind kind) return "close paren"; case TOKEN_OPEN_CURLY: return "open curly"; + case TOKEN_COLOR: + return "color"; case TOKEN_CLOSE_CURLY: return "close curly"; case TOKEN_SEMICOLON: @@ -183,6 +192,28 @@ Token lexer_next(Lexer *l) if (l->cursor >= l->content_len) return token; + // Check for color-like format (e.g., 0xf38ba8FF) + if (l->content[l->cursor] == '0' && + (l->cursor + 1 < l->content_len) && + (l->content[l->cursor + 1] == 'x' || l->content[l->cursor + 1] == 'X')) { + + size_t start_cursor = l->cursor; + size_t potential_length = 0; + + // Count the potential hex digits + while ((start_cursor + 2 + potential_length) < l->content_len && isxdigit(l->content[start_cursor + 2 + potential_length])) { + potential_length++; + } + + // Check if the length is 8, meaning it's a full color + if (potential_length == 8) { + lexer_chop_char(l, 10); // Skip the entire color token including '0x' + token.kind = TOKEN_COLOR; + token.text_len = 10; // Including the '0x' prefix + return token; + } + } + if (l->content[l->cursor] == '"') { // TODO: TOKEN_STRING should also handle escape sequences token.kind = TOKEN_STRING; @@ -198,18 +229,35 @@ Token lexer_next(Lexer *l) } if (l->content[l->cursor] == '#') { - // TODO: preproc should also handle newlines - token.kind = TOKEN_PREPROC; - while (l->cursor < l->content_len && l->content[l->cursor] != '\n') { - lexer_chop_char(l, 1); - } - if (l->cursor < l->content_len) { - lexer_chop_char(l, 1); + if (l->cursor + 6 < l->content_len && is_hex_digit(l->content[l->cursor + 1]) + && is_hex_digit(l->content[l->cursor + 2]) + && is_hex_digit(l->content[l->cursor + 3]) + && is_hex_digit(l->content[l->cursor + 4]) + && is_hex_digit(l->content[l->cursor + 5]) + && is_hex_digit(l->content[l->cursor + 6])) { + token.kind = TOKEN_PREPROC; + lexer_chop_char(l, 7); // Chop # and the 6 characters + token.text_len = &l->content[l->cursor] - token.text; + return token; + } else { + // Your existing handling for # as a preprocessor directive + token.kind = TOKEN_PREPROC; + while (l->cursor < l->content_len && l->content[l->cursor] != '\n') { + lexer_chop_char(l, 1); + } + if (l->cursor < l->content_len) { + lexer_chop_char(l, 1); + } + token.text_len = &l->content[l->cursor] - token.text; + return token; } - token.text_len = &l->content[l->cursor] - token.text; - return token; } + + + + + if (lexer_starts_with(l, "//")) { token.kind = TOKEN_COMMENT; while (l->cursor < l->content_len && l->content[l->cursor] != '\n') { diff --git a/src/lexer.h b/src/lexer.h index 35b93dec..1e0f924f 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -19,7 +19,8 @@ typedef enum { TOKEN_KEYWORD, TOKEN_COMMENT, TOKEN_STRING, -} Token_Kind; + TOKEN_COLOR, + } Token_Kind; const char *token_kind_name(Token_Kind kind); @@ -28,6 +29,7 @@ typedef struct { const char *text; size_t text_len; Vec2f position; + int nesting_level; // <-- New attribute } Token; typedef struct { diff --git a/src/main.c b/src/main.c index dbf1abcc..9ca93f23 100644 --- a/src/main.c +++ b/src/main.c @@ -741,10 +741,6 @@ int main(int argc, char **argv) } break; - - - // TODO QUOTE - case SDLK_BACKSPACE: editor_backspace(&editor); break; From 7517a02f46f5ffb146a016cb5ba124b49ba8e2bc Mon Sep 17 00:00:00 2001 From: laluxx Date: Thu, 14 Sep 2023 17:29:47 +0000 Subject: [PATCH 08/74] togglable-line-numbers --- src/editor.c | 131 ++++++++++++++++++++++++++++++++++++++++++++++----- src/editor.h | 2 + src/main.c | 10 ++++ 3 files changed, 132 insertions(+), 11 deletions(-) diff --git a/src/editor.c b/src/editor.c index e7af030f..d38fbbc4 100644 --- a/src/editor.c +++ b/src/editor.c @@ -10,6 +10,9 @@ EvilMode current_mode = NORMAL; float zoom_factor = 5.0f; Theme themes[10]; +bool showLineNumbers = true; // This is the actual definition and initialization + + int currentThemeIndex = 0; @@ -523,6 +526,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->resolution = vec2f(w, h); sr->time = (float) SDL_GetTicks() / 1000.0f; + float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; + Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed + + // Render selection { simple_renderer_set_shader(sr, SHADER_FOR_COLOR); @@ -547,13 +554,19 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer if (select_begin_chr <= select_end_chr) { Vec2f select_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + line_chr.begin, select_begin_chr - line_chr.begin, - &select_begin_scr); + atlas, editor->data.items + line_chr.begin, select_begin_chr - line_chr.begin, + &select_begin_scr); Vec2f select_end_scr = select_begin_scr; free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + select_begin_chr, select_end_chr - select_begin_chr, - &select_end_scr); + atlas, editor->data.items + select_begin_chr, select_end_chr - select_begin_chr, + &select_end_scr); + + // Adjust selection for line numbers if displayed + if (showLineNumbers) { + select_begin_scr.x += lineNumberWidth; + select_end_scr.x += lineNumberWidth; + } Vec4f selection_color = vec4f(.25, .25, .25, 1); @@ -578,20 +591,82 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer ); } + /* // Render search */ + /* { */ + /* if (editor->searching) { */ + /* simple_renderer_set_shader(sr, SHADER_FOR_COLOR); */ + /* /\* Vec4f selection_color = vec4f(.10, .10, .25, 1); *\/ */ + /* Vec4f selection_color = themes[currentThemeIndex].search; // or .selection_color if that's what you named it in the struct. */ + /* Vec2f p1 = cursor_pos; */ + /* Vec2f p2 = p1; */ + /* free_glyph_atlas_measure_line_sized(editor->atlas, editor->search.items, editor->search.count, &p2); */ + /* simple_renderer_solid_rect(sr, p1, vec2f(p2.x - p1.x, FREE_GLYPH_FONT_SIZE), selection_color); */ + /* simple_renderer_flush(sr); */ + /* } */ + /* } */ + // Render search { if (editor->searching) { simple_renderer_set_shader(sr, SHADER_FOR_COLOR); - /* Vec4f selection_color = vec4f(.10, .10, .25, 1); */ Vec4f selection_color = themes[currentThemeIndex].search; // or .selection_color if that's what you named it in the struct. + Vec2f p1 = cursor_pos; Vec2f p2 = p1; + free_glyph_atlas_measure_line_sized(editor->atlas, editor->search.items, editor->search.count, &p2); + + // Adjust for line numbers width if they are displayed + if (showLineNumbers) { + p1.x += lineNumberWidth; + p2.x += lineNumberWidth; + } + simple_renderer_solid_rect(sr, p1, vec2f(p2.x - p1.x, FREE_GLYPH_FONT_SIZE), selection_color); simple_renderer_flush(sr); } } + + + /* // Render marked search result */ + /* { */ + /* simple_renderer_set_shader(sr, SHADER_FOR_COLOR); */ + /* if (editor->has_mark) { */ + /* for (size_t row = 0; row < editor->lines.count; ++row) { */ + /* size_t mark_begin_chr = editor->mark_start; */ + /* size_t mark_end_chr = editor->mark_end; */ + + /* Line line_chr = editor->lines.items[row]; */ + + /* if (mark_begin_chr < line_chr.begin) { */ + /* mark_begin_chr = line_chr.begin; */ + /* } */ + + /* if (mark_end_chr > line_chr.end) { */ + /* mark_end_chr = line_chr.end; */ + /* } */ + + /* if (mark_begin_chr <= mark_end_chr) { */ + /* Vec2f mark_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); */ + /* free_glyph_atlas_measure_line_sized( */ + /* atlas, editor->data.items + line_chr.begin, mark_begin_chr - line_chr.begin, */ + /* &mark_begin_scr); */ + + /* Vec2f mark_end_scr = mark_begin_scr; */ + /* free_glyph_atlas_measure_line_sized( */ + /* atlas, editor->data.items + mark_begin_chr, mark_end_chr - mark_begin_chr, */ + /* &mark_end_scr); */ + + /* /\* Vec4f mark_color = vec4f(.20, .20, .20, 1); // Adjust color as needed *\/ */ + /* Vec4f mark_color = themes[currentThemeIndex].marks; */ + /* simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); */ + /* } */ + /* } */ + /* } */ + /* simple_renderer_flush(sr); */ + /* } */ + // Render marked search result { simple_renderer_set_shader(sr, SHADER_FOR_COLOR); @@ -621,7 +696,12 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer atlas, editor->data.items + mark_begin_chr, mark_end_chr - mark_begin_chr, &mark_end_scr); - /* Vec4f mark_color = vec4f(.20, .20, .20, 1); // Adjust color as needed */ + // Adjust for line numbers width if they are displayed + if (showLineNumbers) { + mark_begin_scr.x += lineNumberWidth; + mark_end_scr.x += lineNumberWidth; + } + Vec4f mark_color = themes[currentThemeIndex].marks; simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); } @@ -630,6 +710,29 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + if (showLineNumbers) { + // Render line numbers + simple_renderer_set_shader(sr, SHADER_FOR_TEXT); + + // Calculate the width for the line numbers, say every line number takes up to 5 characters of space + + for (size_t i = 0; i < editor->lines.count; ++i) { + char lineNumberStr[10]; // Buffer for line number string + snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", i + 1); // Convert line number to string + + Vec2f pos; + pos.x = 0; // Start from the left edge of the window + pos.y = -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + + free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, lineNumberColor); + } + + simple_renderer_flush(sr); + } + + + + /* pos.x += lineNumberWidth; // Push the main text content to the right */ // Render text { @@ -641,12 +744,12 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // TODO match color for open and close Vec4f color = themes[currentThemeIndex].text; - switch (token.kind) { - /* case TOKEN_PREPROC: */ - /* /\* color = hex_to_vec4f(0x95A99FFF); *\/ */ - /* color = themes[currentThemeIndex].hashtag; */ - /* break; */ + // Adjust for line numbers width if they are displayed + if (showLineNumbers) { + pos.x += lineNumberWidth; + } + switch (token.kind) { case TOKEN_PREPROC: if (token.text_len >= 7 && token.text[0] == '#') { // Check if it's likely a hex color bool valid_hex = true; @@ -706,6 +809,12 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render cursor simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + /* cursor_pos.x += lineNumberWidth; */ + if (showLineNumbers) { + cursor_pos.x += lineNumberWidth; + } + + // Constants float CURSOR_WIDTH; Uint32 CURSOR_BLINK_THRESHOLD = 500; diff --git a/src/editor.h b/src/editor.h index 244de527..54446d5b 100644 --- a/src/editor.h +++ b/src/editor.h @@ -121,6 +121,8 @@ void editor_stop_search_and_mark(Editor *e); void editor_search_next(Editor *e); void editor_search_previous(Editor *e); extern float zoom_factor; +extern bool showLineNumbers; + // THEME extern Theme themes[]; extern int currentThemeIndex; diff --git a/src/main.c b/src/main.c index 9ca93f23..416c1d32 100644 --- a/src/main.c +++ b/src/main.c @@ -68,6 +68,8 @@ static File_Browser fb = {0}; static Repl repl = {0}; + + // TODO: display errors reported via flash_error right in the text editor window somehow #define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) @@ -372,6 +374,14 @@ int main(int argc, char **argv) } break; + case SDLK_z: { + if (SDL_GetModState() & KMOD_CTRL) { + showLineNumbers = !showLineNumbers; // Toggle the state of showLineNumbers + } + } + break; + + case SDLK_F5: { simple_renderer_reload_shaders(&sr); } From a21cb5d7b61bb4b1432ec0ed6efaa204c50915a1 Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 15 Sep 2023 18:16:35 +0000 Subject: [PATCH 09/74] toggle-animations-1 --- src/editor.c | 158 ++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 136 insertions(+), 22 deletions(-) diff --git a/src/editor.c b/src/editor.c index d38fbbc4..b861a5f7 100644 --- a/src/editor.c +++ b/src/editor.c @@ -11,7 +11,7 @@ EvilMode current_mode = NORMAL; float zoom_factor = 5.0f; Theme themes[10]; bool showLineNumbers = true; // This is the actual definition and initialization - +bool is_animated = true; // or false, depending on your initial requirement int currentThemeIndex = 0; @@ -712,7 +712,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer if (showLineNumbers) { // Render line numbers - simple_renderer_set_shader(sr, SHADER_FOR_TEXT); + simple_renderer_set_shader(sr, SHADER_FOR_EPICNESS); // Calculate the width for the line numbers, say every line number takes up to 5 characters of space @@ -899,40 +899,154 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer + // ORIGINAL + /* // Update camera */ + /* { */ + /* if (max_line_len > 1000.0f) { */ + /* max_line_len = 1000.0f; */ + /* } */ + + /* /\* float target_scale = w/5/(max_line_len*0.75); // TODO: division by 0 *\/ */ + /* float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 */ + + + + /* Vec2f target = cursor_pos; */ + /* float offset = 0.0f; */ + + /* if (target_scale > 3.0f) { */ + /* target_scale = 3.0f; */ + /* } else { */ + /* offset = cursor_pos.x - w/3/sr->camera_scale; */ + /* if (offset < 0.0f) offset = 0.0f; */ + /* target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); */ + /* } */ + + /* sr->camera_vel = vec2f_mul( */ + /* vec2f_sub(target, sr->camera_pos), */ + /* vec2fs(2.0f)); */ + /* sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; */ + + /* sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); */ + /* sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; // ORIGINAL */ + /* } */ + + + + /* // Update camera */ + /* { */ + /* if (is_animated) { */ + /* // Your current camera update logic for animated behavior */ + + /* if (max_line_len > 1000.0f) { */ + /* max_line_len = 1000.0f; */ + /* } */ + + /* float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 */ + + /* Vec2f target = cursor_pos; */ + /* float offset = 0.0f; */ + + /* if (target_scale > 3.0f) { */ + /* target_scale = 3.0f; */ + /* } else { */ + /* offset = cursor_pos.x - w/3/sr->camera_scale; */ + /* if (offset < 0.0f) offset = 0.0f; */ + /* target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); */ + /* } */ + + /* sr->camera_vel = vec2f_mul( */ + /* vec2f_sub(target, sr->camera_pos), */ + /* vec2fs(2.0f)); */ + /* sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; */ + + /* sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); */ + /* sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; */ + + /* } else { */ + /* static bool hasShifted = false; // This will ensure the code inside the if-block runs once */ + + /* sr->camera_scale = 0.5f; // Set the zoom level to 0.5 */ + /* if (!hasShifted) { */ + /* sr->camera_pos.x = 101.0f; // Set the x-position */ + /* sr->camera_pos.y = 11.0f; // Set the y-position */ + /* hasShifted = true; // Mark as shifted */ + /* } */ + /* } */ + /* } */ + // Update camera { - if (max_line_len > 1000.0f) { - max_line_len = 1000.0f; - } + if (is_animated) { + // Your current camera update logic for animated behavior - /* float target_scale = w/5/(max_line_len*0.75); // TODO: division by 0 */ - float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 + if (max_line_len > 1000.0f) { + max_line_len = 1000.0f; + } + float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 + Vec2f target = cursor_pos; + float offset = 0.0f; - Vec2f target = cursor_pos; - float offset = 0.0f; + if (target_scale > 3.0f) { + target_scale = 3.0f; + } else { + offset = cursor_pos.x - w/3/sr->camera_scale; + if (offset < 0.0f) offset = 0.0f; + target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); + } - if (target_scale > 3.0f) { - target_scale = 3.0f; - } else { - offset = cursor_pos.x - w/3/sr->camera_scale; - if (offset < 0.0f) offset = 0.0f; - target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); - } + sr->camera_vel = vec2f_mul( + vec2f_sub(target, sr->camera_pos), + vec2fs(2.0f)); + sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; - sr->camera_vel = vec2f_mul( - vec2f_sub(target, sr->camera_pos), - vec2fs(2.0f)); - sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; + sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); + sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; - sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); - sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; // ORIGINAL + } else { + static bool hasShifted = false; // This will ensure the code inside the if-block runs once + sr->camera_scale = 0.24f; // Set the zoom level to 0.5 + + if (!hasShifted) { + sr->camera_pos.x = 2150.0f; // Set the x-position + sr->camera_pos.y = -2000.0f; // Set the initial y-position + hasShifted = true; // Mark as shifted + } else { + // Determine the height of a line + Vec2f pos = {0.0f, 0.0f}; + const char *sampleText = "Sample text to measure."; + free_glyph_atlas_measure_line_sized(atlas, sampleText, strlen(sampleText), &pos); + float lineHeight = pos.y; + + // Check the current cursor line position and adjust camera's Y-position if necessary + int currentLine = editor_cursor_row(editor); + if (currentLine > 66) { + sr->camera_pos.y = -2000.0f - (lineHeight * (currentLine - 66)); + } + } + } } } + + /* } else { */ + /* static bool hasShifted = false; // This will ensure the code inside the if-block runs once */ + + /* sr->camera_scale = 0.24f; // Set the zoom level to 0.5 */ + /* if (!hasShifted) { */ + /* sr->camera_pos.x = 2150.0f; // Set the x-position */ + /* sr->camera_pos.y = -2000.0f; // Set the y-position */ + /* hasShifted = true; // Mark as shifted */ + /* } */ + /* } */ + + + + void editor_clipboard_copy(Editor *e) { if (e->searching) return; From 758c740b66b659b6b07e4dfd50a2cc5f8286b786 Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 16 Sep 2023 03:07:11 +0000 Subject: [PATCH 10/74] TODOOOO --- src/editor.c | 247 +++++++++++++++++++-------------------------------- src/editor.h | 2 + src/lexer.c | 77 ++++++++++++---- src/lexer.h | 1 + src/main.c | 13 ++- 5 files changed, 167 insertions(+), 173 deletions(-) diff --git a/src/editor.c b/src/editor.c index b861a5f7..7d420b7d 100644 --- a/src/editor.c +++ b/src/editor.c @@ -10,7 +10,7 @@ EvilMode current_mode = NORMAL; float zoom_factor = 5.0f; Theme themes[10]; -bool showLineNumbers = true; // This is the actual definition and initialization +bool showLineNumbers = false; // This is the actual definition and initialization bool is_animated = true; // or false, depending on your initial requirement @@ -31,6 +31,7 @@ void initialize_themes() { .string = hex_to_vec4f(0xf9e2afFF), // Yellow .selection = hex_to_vec4f(0xf5c2e7FF), // Pink .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo + .todo = hex_to_vec4f(0xf2cdcdFF), // Flamingo .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire .fb_selection = hex_to_vec4f(0xb4befeFF) // Lavender }; @@ -47,6 +48,7 @@ void initialize_themes() { .string = hex_to_vec4f(0xF1FA8CFF), .selection = hex_to_vec4f(0x00000000), .search = hex_to_vec4f(0xFF5555FF), + .todo = hex_to_vec4f(0xBD93F9FF), .marks = hex_to_vec4f(0xBD93F9FF), .fb_selection = hex_to_vec4f(0x44475AFF) }; @@ -591,20 +593,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer ); } - /* // Render search */ - /* { */ - /* if (editor->searching) { */ - /* simple_renderer_set_shader(sr, SHADER_FOR_COLOR); */ - /* /\* Vec4f selection_color = vec4f(.10, .10, .25, 1); *\/ */ - /* Vec4f selection_color = themes[currentThemeIndex].search; // or .selection_color if that's what you named it in the struct. */ - /* Vec2f p1 = cursor_pos; */ - /* Vec2f p2 = p1; */ - /* free_glyph_atlas_measure_line_sized(editor->atlas, editor->search.items, editor->search.count, &p2); */ - /* simple_renderer_solid_rect(sr, p1, vec2f(p2.x - p1.x, FREE_GLYPH_FONT_SIZE), selection_color); */ - /* simple_renderer_flush(sr); */ - /* } */ - /* } */ - // Render search { if (editor->searching) { @@ -627,46 +615,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } } - - - /* // Render marked search result */ - /* { */ - /* simple_renderer_set_shader(sr, SHADER_FOR_COLOR); */ - /* if (editor->has_mark) { */ - /* for (size_t row = 0; row < editor->lines.count; ++row) { */ - /* size_t mark_begin_chr = editor->mark_start; */ - /* size_t mark_end_chr = editor->mark_end; */ - - /* Line line_chr = editor->lines.items[row]; */ - - /* if (mark_begin_chr < line_chr.begin) { */ - /* mark_begin_chr = line_chr.begin; */ - /* } */ - - /* if (mark_end_chr > line_chr.end) { */ - /* mark_end_chr = line_chr.end; */ - /* } */ - - /* if (mark_begin_chr <= mark_end_chr) { */ - /* Vec2f mark_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); */ - /* free_glyph_atlas_measure_line_sized( */ - /* atlas, editor->data.items + line_chr.begin, mark_begin_chr - line_chr.begin, */ - /* &mark_begin_scr); */ - - /* Vec2f mark_end_scr = mark_begin_scr; */ - /* free_glyph_atlas_measure_line_sized( */ - /* atlas, editor->data.items + mark_begin_chr, mark_end_chr - mark_begin_chr, */ - /* &mark_end_scr); */ - - /* /\* Vec4f mark_color = vec4f(.20, .20, .20, 1); // Adjust color as needed *\/ */ - /* Vec4f mark_color = themes[currentThemeIndex].marks; */ - /* simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); */ - /* } */ - /* } */ - /* } */ - /* simple_renderer_flush(sr); */ - /* } */ - // Render marked search result { simple_renderer_set_shader(sr, SHADER_FOR_COLOR); @@ -730,10 +678,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } - - - /* pos.x += lineNumberWidth; // Push the main text content to the right */ - // Render text { simple_renderer_set_shader(sr, SHADER_FOR_TEXT); @@ -779,10 +723,74 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color = themes[currentThemeIndex].logic; break; + /* case TOKEN_COMMENT: */ + /* color = themes[currentThemeIndex].comment; */ + /* break; */ + + /* case TOKEN_COMMENT: */ + /* { */ + /* color = themes[currentThemeIndex].comment; */ + + /* // Find the "TODO" in the comment */ + /* char* todoLoc = strstr(token.text, "TODO"); */ + + /* // If "TODO" was found inside the comment */ + /* if (todoLoc) { */ + /* size_t numOs = 0; // Count the number of Os */ + /* for (size_t j = 4; todoLoc[j] && (todoLoc[j] == 'O' || todoLoc[j] == 'o'); j++) { */ + /* numOs++; */ + /* } */ + + /* // Adjust the color if any Os were found */ + /* if (numOs >= 1) { */ + /* Vec4f baseColor = themes[currentThemeIndex].todo; */ + /* float deltaRed = (1.0f - baseColor.x) / 5; // We divide by 5 to adjust for TODO to TODOOOOO */ + + /* color.x = baseColor.x + deltaRed * numOs; */ + /* color.y = baseColor.y * (1 - 0.2 * numOs); // Decrease green component */ + /* color.z = baseColor.z * (1 - 0.2 * numOs); // Decrease blue component */ + /* color.w = baseColor.w; // alpha remains unchanged */ + /* } */ + /* } */ + + /* // TODO: Continue the rendering with the determined color */ + /* } */ + /* break; */ + + case TOKEN_COMMENT: - /* color = hex_to_vec4f(0xCC8C3CFF); */ - color = themes[currentThemeIndex].comment; + { + color = themes[currentThemeIndex].comment; + + char* todoLoc = strstr(token.text, "TODO"); + if (todoLoc && (todoLoc - token.text + 3) < token.text_len) { // Ensure "TODO" is within token boundary + size_t numOs = 0; + char* ptr = todoLoc + 4; // Start right after "TODO" + + // Count 'O's without crossing token boundary + while ((ptr - token.text) < token.text_len && (*ptr == 'O' || *ptr == 'o')) { + numOs++; + ptr++; + } + + Vec4f baseColor = themes[currentThemeIndex].todo; + float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of TODOOOOO + + color.x = baseColor.x + deltaRed * numOs; + color.y = baseColor.y * (1 - 0.2 * numOs); + color.z = baseColor.z * (1 - 0.2 * numOs); + color.w = baseColor.w; + } + + // Continue rendering with the determined color + } break; + + + + + + case TOKEN_STRING: /* color = hex_to_vec4f(0x73c936ff); */ color = themes[currentThemeIndex].string; @@ -795,6 +803,30 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } } break; + case TOKEN_TODO: + { + size_t numOs = 0; // Count the number of Os + for (size_t j = 3; j < token.text_len; j++) { + if (token.text[j] == 'O' || token.text[j] == 'o') { + numOs++; + } else { + break; + } + } + + // Base color (from theme) + Vec4f baseColor = themes[currentThemeIndex].todo; + + // The change required in the red component of the color for each additional 'O' + float deltaRed = (1.0f - baseColor.x) / 5; // We divide by 5 because there are 5 steps from TODO to TODOOOOO + + // Calculate the new color + color.x = baseColor.x + deltaRed * numOs; + color.y = baseColor.y * (1 - 0.2 * numOs); // Decrease green component + color.z = baseColor.z * (1 - 0.2 * numOs); // Decrease blue component + color.w = baseColor.w; // alpha remains the same + } + break; default: {} } @@ -883,99 +915,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } - // Render minibuffer TODO - /* { */ - /* simple_renderer_set_shader(sr, SHADER_FOR_TEXT); */ - - /* // Positioning the minibuffer at the bottom of the window */ - /* Vec2f minibuffer_pos = vec2f(5.0f, h - FREE_GLYPH_FONT_SIZE - 5.0f); // 5px padding from the bottom and left */ - /* Vec4f minibuffer_color = hex_to_vec4f(0xFFFFFF); // Assuming white color for the text; adjust if needed */ - - /* // Rendering the minibuffer text */ - /* free_glyph_atlas_render_line_sized(atlas, sr, editor->minibuffer, strlen(editor->minibuffer), &minibuffer_pos, minibuffer_color); */ - - /* simple_renderer_flush(sr); */ - /* } */ - - - - // ORIGINAL - /* // Update camera */ - /* { */ - /* if (max_line_len > 1000.0f) { */ - /* max_line_len = 1000.0f; */ - /* } */ - - /* /\* float target_scale = w/5/(max_line_len*0.75); // TODO: division by 0 *\/ */ - /* float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 */ - - - - /* Vec2f target = cursor_pos; */ - /* float offset = 0.0f; */ - - /* if (target_scale > 3.0f) { */ - /* target_scale = 3.0f; */ - /* } else { */ - /* offset = cursor_pos.x - w/3/sr->camera_scale; */ - /* if (offset < 0.0f) offset = 0.0f; */ - /* target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); */ - /* } */ - - /* sr->camera_vel = vec2f_mul( */ - /* vec2f_sub(target, sr->camera_pos), */ - /* vec2fs(2.0f)); */ - /* sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; */ - - /* sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); */ - /* sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; // ORIGINAL */ - /* } */ - - - - /* // Update camera */ - /* { */ - /* if (is_animated) { */ - /* // Your current camera update logic for animated behavior */ - - /* if (max_line_len > 1000.0f) { */ - /* max_line_len = 1000.0f; */ - /* } */ - - /* float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 */ - - /* Vec2f target = cursor_pos; */ - /* float offset = 0.0f; */ - - /* if (target_scale > 3.0f) { */ - /* target_scale = 3.0f; */ - /* } else { */ - /* offset = cursor_pos.x - w/3/sr->camera_scale; */ - /* if (offset < 0.0f) offset = 0.0f; */ - /* target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); */ - /* } */ - - /* sr->camera_vel = vec2f_mul( */ - /* vec2f_sub(target, sr->camera_pos), */ - /* vec2fs(2.0f)); */ - /* sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; */ - - /* sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); */ - /* sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; */ - - /* } else { */ - /* static bool hasShifted = false; // This will ensure the code inside the if-block runs once */ - - /* sr->camera_scale = 0.5f; // Set the zoom level to 0.5 */ - /* if (!hasShifted) { */ - /* sr->camera_pos.x = 101.0f; // Set the x-position */ - /* sr->camera_pos.y = 11.0f; // Set the y-position */ - /* hasShifted = true; // Mark as shifted */ - /* } */ - /* } */ - /* } */ - - // Update camera { if (is_animated) { diff --git a/src/editor.h b/src/editor.h index 54446d5b..8aab07a3 100644 --- a/src/editor.h +++ b/src/editor.h @@ -12,6 +12,7 @@ #include +extern bool is_animated; typedef struct { size_t begin; size_t end; @@ -50,6 +51,7 @@ typedef struct { Vec4f string; Vec4f selection; Vec4f search; + Vec4f todo; Vec4f marks; Vec4f fb_selection; } Theme; diff --git a/src/lexer.c b/src/lexer.c index 3e56b52b..045cdada 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -12,8 +12,6 @@ typedef struct { } Literal_Token; -/* int nesting_level = 0; */ // TODO - Literal_Token literal_tokens[] = { {.text = "(", .kind = TOKEN_OPEN_PAREN}, {.text = ")", .kind = TOKEN_CLOSE_PAREN}, @@ -85,6 +83,8 @@ const char *token_kind_name(Token_Kind kind) return "open curly"; case TOKEN_COLOR: return "color"; + case TOKEN_TODO: + return "color"; case TOKEN_CLOSE_CURLY: return "close curly"; case TOKEN_SEMICOLON: @@ -192,6 +192,29 @@ Token lexer_next(Lexer *l) if (l->cursor >= l->content_len) return token; + // Check for TODO-like format (e.g., TODO, TODOO, TODOOO...) + if (l->content[l->cursor] == 'T' && (l->cursor + 1 < l->content_len) && + l->content[l->cursor + 1] == 'O' && (l->cursor + 2 < l->content_len) && + l->content[l->cursor + 2] == 'D') { + + size_t start_cursor = l->cursor; + size_t potential_length = 3; // "TOD" already accounted for + + // Count the consecutive 'O's + while ((start_cursor + potential_length) < l->content_len && + l->content[start_cursor + potential_length] == 'O') { + potential_length++; + } + + // If the sequence starts with "TOD", we consider it a TODO token + if (potential_length > 2) { // Ensure we have at least "TOD" + lexer_chop_char(l, potential_length); // Skip the entire TODO token + token.kind = TOKEN_TODO; + token.text_len = potential_length; + return token; + } + } + // Check for color-like format (e.g., 0xf38ba8FF) if (l->content[l->cursor] == '0' && (l->cursor + 1 < l->content_len) && @@ -253,10 +276,28 @@ Token lexer_next(Lexer *l) } } - - - - + /* if (lexer_starts_with(l, "//")) { */ + /* token.kind = TOKEN_COMMENT; */ + /* while (l->cursor < l->content_len && l->content[l->cursor] != '\n') { */ + /* lexer_chop_char(l, 1); */ + /* } */ + /* if (l->cursor < l->content_len) { */ + /* lexer_chop_char(l, 1); */ + /* } */ + /* token.text_len = &l->content[l->cursor] - token.text; */ + /* return token; */ + /* } */ + + /* for (size_t i = 0; i < literal_tokens_count; ++i) { */ + /* if (lexer_starts_with(l, literal_tokens[i].text)) { */ + /* // NOTE: this code assumes that there is no newlines in literal_tokens[i].text */ + /* size_t text_len = strlen(literal_tokens[i].text); */ + /* token.kind = literal_tokens[i].kind; */ + /* token.text_len = text_len; */ + /* lexer_chop_char(l, text_len); */ + /* return token; */ + /* } */ + /* } */ if (lexer_starts_with(l, "//")) { token.kind = TOKEN_COMMENT; @@ -269,17 +310,6 @@ Token lexer_next(Lexer *l) token.text_len = &l->content[l->cursor] - token.text; return token; } - - for (size_t i = 0; i < literal_tokens_count; ++i) { - if (lexer_starts_with(l, literal_tokens[i].text)) { - // NOTE: this code assumes that there is no newlines in literal_tokens[i].text - size_t text_len = strlen(literal_tokens[i].text); - token.kind = literal_tokens[i].kind; - token.text_len = text_len; - lexer_chop_char(l, text_len); - return token; - } - } if (is_symbol_start(l->content[l->cursor])) { token.kind = TOKEN_SYMBOL; @@ -299,6 +329,11 @@ Token lexer_next(Lexer *l) else file_ext = dot + 1; + + + + + /* for (size_t i = 0; i < keywords_count; ++i) { */ /* size_t keyword_len = strlen(keywords[i]); */ /* if (keyword_len == token.text_len && memcmp(keywords[i], token.text, keyword_len) == 0) { */ @@ -321,6 +356,14 @@ Token lexer_next(Lexer *l) break; } } + } else if (strcmp(file_ext, "c") == 0) { + for (size_t i = 0; i < cKeywords_count; ++i) { + size_t keyword_len = strlen(cKeywords[i]); + if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { + token.kind = TOKEN_KEYWORD; + break; + } + } } else { for (size_t i = 0; i < cKeywords_count; ++i) { size_t keyword_len = strlen(cKeywords[i]); diff --git a/src/lexer.h b/src/lexer.h index 1e0f924f..76f132da 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -20,6 +20,7 @@ typedef enum { TOKEN_COMMENT, TOKEN_STRING, TOKEN_COLOR, + TOKEN_TODO, } Token_Kind; const char *token_kind_name(Token_Kind kind); diff --git a/src/main.c b/src/main.c index 416c1d32..176fddc3 100644 --- a/src/main.c +++ b/src/main.c @@ -35,7 +35,6 @@ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) - // TODO: Save file dialog // Needed when ded is ran without any file so it does not know where to save. @@ -381,6 +380,13 @@ int main(int argc, char **argv) } break; + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + is_animated = !is_animated; // Toggle the state + } + } + break; + case SDLK_F5: { simple_renderer_reload_shaders(&sr); @@ -513,9 +519,11 @@ int main(int argc, char **argv) case SDLK_x: if (editor.selection) { + editor_clipboard_copy(&editor); editor_delete_selection(&editor); editor.selection = false; } else { + editor_clipboard_copy(&editor); editor_cut_char_under_cursor(&editor); } break; @@ -877,6 +885,7 @@ int main(int argc, char **argv) case SDLK_x: if (editor.selection) { + editor_clipboard_copy(&editor); editor_delete_selection(&editor); editor.selection = false; current_mode = NORMAL; @@ -928,6 +937,7 @@ int main(int argc, char **argv) // transition back to NORMAL mode case SDLK_ESCAPE: + editor.selection = false; current_mode = NORMAL; break; } @@ -1018,7 +1028,6 @@ int main(int argc, char **argv) int w, h; SDL_GetWindowSize(window, &w, &h); glViewport(0, 0, w, h); - /* Vec4f bg = hex_to_vec4f(0x181818FF); // FDABCF 181818 */ Vec4f bg = themes[currentThemeIndex].background; glClearColor(bg.x, bg.y, bg.z, bg.w); glClear(GL_COLOR_BUFFER_BIT); From 17d9a54cb5a8bf30a7a8387df55cc3293d43c6d6 Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 16 Sep 2023 03:11:10 +0000 Subject: [PATCH 11/74] FIXMEEE --- src/editor.c | 62 ++++++++++++++++++++-------------------------------- src/editor.h | 1 + src/lexer.c | 5 ----- 3 files changed, 25 insertions(+), 43 deletions(-) diff --git a/src/editor.c b/src/editor.c index 7d420b7d..4aa1d6f9 100644 --- a/src/editor.c +++ b/src/editor.c @@ -32,6 +32,7 @@ void initialize_themes() { .selection = hex_to_vec4f(0xf5c2e7FF), // Pink .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo .todo = hex_to_vec4f(0xf2cdcdFF), // Flamingo + .fixme = hex_to_vec4f(0xf2cdcdFF), // Flamingo .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire .fb_selection = hex_to_vec4f(0xb4befeFF) // Lavender }; @@ -723,47 +724,14 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color = themes[currentThemeIndex].logic; break; - /* case TOKEN_COMMENT: */ - /* color = themes[currentThemeIndex].comment; */ - /* break; */ - - /* case TOKEN_COMMENT: */ - /* { */ - /* color = themes[currentThemeIndex].comment; */ - - /* // Find the "TODO" in the comment */ - /* char* todoLoc = strstr(token.text, "TODO"); */ - - /* // If "TODO" was found inside the comment */ - /* if (todoLoc) { */ - /* size_t numOs = 0; // Count the number of Os */ - /* for (size_t j = 4; todoLoc[j] && (todoLoc[j] == 'O' || todoLoc[j] == 'o'); j++) { */ - /* numOs++; */ - /* } */ - - /* // Adjust the color if any Os were found */ - /* if (numOs >= 1) { */ - /* Vec4f baseColor = themes[currentThemeIndex].todo; */ - /* float deltaRed = (1.0f - baseColor.x) / 5; // We divide by 5 to adjust for TODO to TODOOOOO */ - - /* color.x = baseColor.x + deltaRed * numOs; */ - /* color.y = baseColor.y * (1 - 0.2 * numOs); // Decrease green component */ - /* color.z = baseColor.z * (1 - 0.2 * numOs); // Decrease blue component */ - /* color.w = baseColor.w; // alpha remains unchanged */ - /* } */ - /* } */ - - /* // TODO: Continue the rendering with the determined color */ - /* } */ - /* break; */ - case TOKEN_COMMENT: { color = themes[currentThemeIndex].comment; + // Checking for TODOOOO... char* todoLoc = strstr(token.text, "TODO"); - if (todoLoc && (todoLoc - token.text + 3) < token.text_len) { // Ensure "TODO" is within token boundary + if (todoLoc && (todoLoc - token.text + 3) < token.text_len) { size_t numOs = 0; char* ptr = todoLoc + 4; // Start right after "TODO" @@ -782,12 +750,30 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color.w = baseColor.w; } - // Continue rendering with the determined color - } - break; + // Checking for FIXMEEEE... + char* fixmeLoc = strstr(token.text, "FIXME"); + if (fixmeLoc && (fixmeLoc - token.text + 4) < token.text_len) { + size_t numEs = 0; + char* ptr = fixmeLoc + 5; // Start right after "FIXME" + // Count 'E's without crossing token boundary + while ((ptr - token.text) < token.text_len && (*ptr == 'E' || *ptr == 'e')) { + numEs++; + ptr++; + } + Vec4f baseColor = themes[currentThemeIndex].fixme; // Assuming you have a similar color definition for FIXME + float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of FIXMEEEE + color.x = baseColor.x + deltaRed * numEs; + color.y = baseColor.y * (1 - 0.2 * numEs); + color.z = baseColor.z * (1 - 0.2 * numEs); + color.w = baseColor.w; + } + + // Continue rendering with the determined color + } + break; diff --git a/src/editor.h b/src/editor.h index 8aab07a3..744b63fb 100644 --- a/src/editor.h +++ b/src/editor.h @@ -52,6 +52,7 @@ typedef struct { Vec4f selection; Vec4f search; Vec4f todo; + Vec4f fixme; Vec4f marks; Vec4f fb_selection; } Theme; diff --git a/src/lexer.c b/src/lexer.c index 045cdada..f5ba01d5 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -329,11 +329,6 @@ Token lexer_next(Lexer *l) else file_ext = dot + 1; - - - - - /* for (size_t i = 0; i < keywords_count; ++i) { */ /* size_t keyword_len = strlen(keywords[i]); */ /* if (keyword_len == token.text_len && memcmp(keywords[i], token.text, keyword_len) == 0) { */ From 080426813a23f94983f6d93ff11853df151b1d33 Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 16 Sep 2023 03:27:16 +0000 Subject: [PATCH 12/74] NOTE --- src/editor.c | 35 ++++++++--------------------------- src/editor.h | 1 + src/lexer.c | 25 ------------------------- src/lexer.h | 1 - 4 files changed, 9 insertions(+), 53 deletions(-) diff --git a/src/editor.c b/src/editor.c index 4aa1d6f9..4759eec0 100644 --- a/src/editor.c +++ b/src/editor.c @@ -33,6 +33,7 @@ void initialize_themes() { .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo .todo = hex_to_vec4f(0xf2cdcdFF), // Flamingo .fixme = hex_to_vec4f(0xf2cdcdFF), // Flamingo + .note = hex_to_vec4f(0xa6e3a1FF), // Green .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire .fb_selection = hex_to_vec4f(0xb4befeFF) // Lavender }; @@ -762,7 +763,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer ptr++; } - Vec4f baseColor = themes[currentThemeIndex].fixme; // Assuming you have a similar color definition for FIXME + Vec4f baseColor = themes[currentThemeIndex].fixme; float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of FIXMEEEE color.x = baseColor.x + deltaRed * numEs; @@ -771,12 +772,16 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color.w = baseColor.w; } + // Checking for NOTE... + char* noteLoc = strstr(token.text, "NOTE"); + if (noteLoc && (noteLoc - token.text + 3) < token.text_len) { + color = themes[currentThemeIndex].note; + } + // Continue rendering with the determined color } break; - - case TOKEN_STRING: /* color = hex_to_vec4f(0x73c936ff); */ color = themes[currentThemeIndex].string; @@ -789,30 +794,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } } break; - case TOKEN_TODO: - { - size_t numOs = 0; // Count the number of Os - for (size_t j = 3; j < token.text_len; j++) { - if (token.text[j] == 'O' || token.text[j] == 'o') { - numOs++; - } else { - break; - } - } - - // Base color (from theme) - Vec4f baseColor = themes[currentThemeIndex].todo; - - // The change required in the red component of the color for each additional 'O' - float deltaRed = (1.0f - baseColor.x) / 5; // We divide by 5 because there are 5 steps from TODO to TODOOOOO - - // Calculate the new color - color.x = baseColor.x + deltaRed * numOs; - color.y = baseColor.y * (1 - 0.2 * numOs); // Decrease green component - color.z = baseColor.z * (1 - 0.2 * numOs); // Decrease blue component - color.w = baseColor.w; // alpha remains the same - } - break; default: {} } diff --git a/src/editor.h b/src/editor.h index 744b63fb..df0a02b6 100644 --- a/src/editor.h +++ b/src/editor.h @@ -53,6 +53,7 @@ typedef struct { Vec4f search; Vec4f todo; Vec4f fixme; + Vec4f note; Vec4f marks; Vec4f fb_selection; } Theme; diff --git a/src/lexer.c b/src/lexer.c index f5ba01d5..e1133afe 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -83,8 +83,6 @@ const char *token_kind_name(Token_Kind kind) return "open curly"; case TOKEN_COLOR: return "color"; - case TOKEN_TODO: - return "color"; case TOKEN_CLOSE_CURLY: return "close curly"; case TOKEN_SEMICOLON: @@ -192,29 +190,6 @@ Token lexer_next(Lexer *l) if (l->cursor >= l->content_len) return token; - // Check for TODO-like format (e.g., TODO, TODOO, TODOOO...) - if (l->content[l->cursor] == 'T' && (l->cursor + 1 < l->content_len) && - l->content[l->cursor + 1] == 'O' && (l->cursor + 2 < l->content_len) && - l->content[l->cursor + 2] == 'D') { - - size_t start_cursor = l->cursor; - size_t potential_length = 3; // "TOD" already accounted for - - // Count the consecutive 'O's - while ((start_cursor + potential_length) < l->content_len && - l->content[start_cursor + potential_length] == 'O') { - potential_length++; - } - - // If the sequence starts with "TOD", we consider it a TODO token - if (potential_length > 2) { // Ensure we have at least "TOD" - lexer_chop_char(l, potential_length); // Skip the entire TODO token - token.kind = TOKEN_TODO; - token.text_len = potential_length; - return token; - } - } - // Check for color-like format (e.g., 0xf38ba8FF) if (l->content[l->cursor] == '0' && (l->cursor + 1 < l->content_len) && diff --git a/src/lexer.h b/src/lexer.h index 76f132da..1e0f924f 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -20,7 +20,6 @@ typedef enum { TOKEN_COMMENT, TOKEN_STRING, TOKEN_COLOR, - TOKEN_TODO, } Token_Kind; const char *token_kind_name(Token_Kind kind); From f7b4e5666be414ba51858d89871c05acba5d4da0 Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 16 Sep 2023 04:12:00 +0000 Subject: [PATCH 13/74] BUG --- src/editor.c | 64 ++++++++++++++++++++-------------------------------- src/editor.h | 1 + src/main.c | 14 ++++-------- 3 files changed, 30 insertions(+), 49 deletions(-) diff --git a/src/editor.c b/src/editor.c index 4759eec0..e8497d73 100644 --- a/src/editor.c +++ b/src/editor.c @@ -34,6 +34,7 @@ void initialize_themes() { .todo = hex_to_vec4f(0xf2cdcdFF), // Flamingo .fixme = hex_to_vec4f(0xf2cdcdFF), // Flamingo .note = hex_to_vec4f(0xa6e3a1FF), // Green + .bug = hex_to_vec4f(0xf38ba8FF), // Red .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire .fb_selection = hex_to_vec4f(0xb4befeFF) // Lavender }; @@ -772,13 +773,20 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color.w = baseColor.w; } + // Checking for BUG... + char* bugLoc = strstr(token.text, "BUG"); + if (bugLoc && (bugLoc - token.text + 2) < token.text_len) { + color = themes[currentThemeIndex].bug; + } + + // Checking for NOTE... char* noteLoc = strstr(token.text, "NOTE"); if (noteLoc && (noteLoc - token.text + 3) < token.text_len) { color = themes[currentThemeIndex].note; } - // Continue rendering with the determined color + // Continue rendering with } break; @@ -808,37 +816,32 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render cursor simple_renderer_set_shader(sr, SHADER_FOR_COLOR); - /* cursor_pos.x += lineNumberWidth; */ + // Adjust cursor position if line numbers are shown if (showLineNumbers) { cursor_pos.x += lineNumberWidth; } - - // Constants + // Constants and Default Settings float CURSOR_WIDTH; - Uint32 CURSOR_BLINK_THRESHOLD = 500; - Uint32 CURSOR_BLINK_PERIOD = 1000; - Uint32 t = SDL_GetTicks() - editor->last_stroke; - /* Vec4f CURSOR_COLOR = vec4fs(1); // Default color for NORMAL */ - Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; + const Uint32 CURSOR_BLINK_THRESHOLD = 500; + const Uint32 CURSOR_BLINK_PERIOD = 1000; + const Uint32 t = SDL_GetTicks() - editor->last_stroke; + Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; // Default cursor color + float VISUAL_CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; + float BORDER_THICKNESS = 5.0f; + Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); // Same color but with reduced alpha sr->verticies_count = 0; + // Rendering based on mode switch (current_mode) { case NORMAL: CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; // Half the size for NORMAL mode - /* CURSOR_COLOR = vec4fs(1); // Assuming this sets it to a solid color */ simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); - - - - /* // Render cursor based on the set dimensions */ - /* simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); */ break; case INSERT: CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode - // Implement blinking for INSERT mode if (t < CURSOR_BLINK_THRESHOLD || (t / CURSOR_BLINK_PERIOD) % 2 != 0) { simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); @@ -846,40 +849,23 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer break; case VISUAL: - CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; // Same size as NORMAL mode - - // Solid border color - /* CURSOR_COLOR = vec4f(1, 1, 1, 1); // Fully opaque white */ - - // Inner transparent color - /* Vec4f INNER_COLOR = vec4f(1, 1, 1, 0.3); // White with low alpha */ - Vec4f INNER_COLOR = themes[currentThemeIndex].cursor; // TODO remove alpha - - - - - // Border thickness (adjust to your liking) - float BORDER_THICKNESS = 5.0f; - - // Draw inner rectangle (more transparent) - simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH - 2 * BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), INNER_COLOR); - - // Draw the outline (borders) + // Draw inner rectangle with reduced alpha + simple_renderer_solid_rect(sr, cursor_pos, vec2f(VISUAL_CURSOR_WIDTH - 2 * BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), INNER_COLOR); + // Draw the outline (borders) using the theme's cursor color // Top border - simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, BORDER_THICKNESS), CURSOR_COLOR); + simple_renderer_solid_rect(sr, cursor_pos, vec2f(VISUAL_CURSOR_WIDTH, BORDER_THICKNESS), CURSOR_COLOR); // Bottom border - simple_renderer_solid_rect(sr, vec2f(cursor_pos.x, cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), vec2f(CURSOR_WIDTH, BORDER_THICKNESS), CURSOR_COLOR); + simple_renderer_solid_rect(sr, vec2f(cursor_pos.x, cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), vec2f(VISUAL_CURSOR_WIDTH, BORDER_THICKNESS), CURSOR_COLOR); // Left border simple_renderer_solid_rect(sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); // Right border - simple_renderer_solid_rect(sr, vec2f(cursor_pos.x + CURSOR_WIDTH - BORDER_THICKNESS, cursor_pos.y), vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); + simple_renderer_solid_rect(sr, vec2f(cursor_pos.x + VISUAL_CURSOR_WIDTH - BORDER_THICKNESS, cursor_pos.y), vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); break; - } // Update camera diff --git a/src/editor.h b/src/editor.h index df0a02b6..453af863 100644 --- a/src/editor.h +++ b/src/editor.h @@ -54,6 +54,7 @@ typedef struct { Vec4f todo; Vec4f fixme; Vec4f note; + Vec4f bug; Vec4f marks; Vec4f fb_selection; } Theme; diff --git a/src/main.c b/src/main.c index 176fddc3..58092c33 100644 --- a/src/main.c +++ b/src/main.c @@ -610,6 +610,10 @@ int main(int argc, char **argv) } break; + case SDLK_F3: + file_browser = true; + break; + case SDLK_MINUS: if (SDL_GetModState() & KMOD_CTRL) { zoom_factor -= 2; @@ -725,9 +729,6 @@ int main(int argc, char **argv) } break; - - - case SDLK_QUOTE: { if (event.key.keysym.mod & KMOD_SHIFT) { // If Shift + ' is pressed, insert double quotes "" @@ -789,19 +790,12 @@ int main(int argc, char **argv) } break; - case SDLK_c: if (event.key.keysym.mod & KMOD_CTRL) { editor_clipboard_copy(&editor); } break; - /* case SDLK_s: */ - /* if (event.key.keysym.mod & KMOD_CTRL) { */ - /* editor_save(&editor); */ - /* } */ - /* break; */ - case SDLK_s: { if (SDL_GetModState() & KMOD_CTRL) { // Checks if CTRL is held down if (editor.file_path.count > 0) { From a255142b54cd848253875e4d0c436f417ab6f5db Mon Sep 17 00:00:00 2001 From: laluxx Date: Sun, 17 Sep 2023 17:50:12 +0000 Subject: [PATCH 14/74] anim-fix --- gif/pekora.gif | Bin 0 -> 11420 bytes src/editor.c | 56 +++++++++++++++++++++---- src/editor.h | 3 ++ src/file_browser.c | 46 +++++++++++--------- src/main.c | 95 +++++++++++++++++++++++++++++++++++++----- src/simple_renderer.c | 6 ++- 6 files changed, 166 insertions(+), 40 deletions(-) create mode 100644 gif/pekora.gif diff --git a/gif/pekora.gif b/gif/pekora.gif new file mode 100644 index 0000000000000000000000000000000000000000..a842ab01c9a6f0e061eb4868b43a7960015f3594 GIT binary patch literal 11420 zcma*tcTiIc+b!^&N(vo8ni_iOp@^X1N$4OdiXu&vu!zTPw6d*AQg%rHB{F#P$Owbru@jP%uy*}DL~fDZtO?4!@i3?|yiEz7mE(sQGoC^vTN+DqTc?fcvN9W8lSOO8NvydEE~Y zyXQ|1kB*BM4~q_^BsnF5QMak)T#p&f0H>+Z5YKy%e0Vz$HS0NB+ z7ZlQ3)(${}I=j0eJ_7)3ls-BJg2SJ|=Eu9{p$lU(14|3zuh*6!vyv>SQ&WhEo?h`C zmYs(mMiIMHlte}mM@Ks@2!Y)=#!A4Ex+rXh)D9XY0)@KMX)c-D=g|EtED(Fc0UXKC zvG0uJ$2bhQupR6dcB@(j;GO3k?BB=%^)4fJ+*G4_^0`#C>&C53@vFEZ?aS;c#(UWF zVd}|eZY<)v%^XgmkBY)E#oZ+rOOl{OZjTyxf1V>1Hq& z;EXV|bA~11&w=-Na~COBIWJ~#;d&-1AqS&(#)9^z8|@)afRFZE=fjG@_YR`exWQOa z+}ybcK!uBY57P?{L(XB(NArrO=0n-!>EoWJ%Kl!x4BC5}Lg9-pxMhy1d95ho`w6 zHY1cGnv`VIVo5nodLv>E=Bsvli!jPO9~yT>rermlB}m3C&zSF90l2UNhDu*LZTdF( zV28|xNd2TSDE-WmyI@thmr-Yx^>tO?yR4% zjo3*KH>G-k zcIY6_5<=(K29K?FfjOjNSC^JebvL(J#!e5b$MB85@87-~^mDl2K6DH8bCZ1ECg!|v zmvzL9_zHT+X^%9u+Q?FrKV+B){B_opKKM*iE(0kh6<;@Max7}-IY%Dmk=O;ZOmLrt zOB7*LhWOK9Qt&?8r%CQ?5xy6eRTwqxpz6ze=<5MBYU4+3=Jk370T!KkYoJY)o#a9O zNIagu1snArGW30X1*7i6LG=-7hU2k^edkhKytewx5bU~maJF?MjFBhiUdy|rF&eO5 zR>yvG{lFuk$EqQ8c0c8o^yu%1>MNN0bx)FUKi&(8KOwvyKDPbiBf~)P=dKnLs6S{S z0Rcb3c)m|`*AVxq+)>W^DYsQ%E!bc=}=Q!J)iOthF{G2QwnTL04Oe?R|)7M2t0 z#zd~p-7sI#{wJ$$Ede8-b} zIKgKRb5|7Fiymscc5x=l?9J!<#~f~v$V%s~-43S6$}$Oxjq$UNP=`iQW7DA!6L%bvCO{V!SN9s z0zgbBGmw=r5L7>U89k&pJu?#-w-t+wDT+ZYt*lJSuOnE0;0m6mt8y9Q8A4LTT|Saf z_2SIQ2S3!_DuFR}BofQZqth1Dj@}@Yu$-`6Kqm^$C$xWiaE(2$FG~1`CaKv}-0+67 zg_HLHPkdplEV5tNc(>CKw%nmXOEw!D%mf`32ou+~Yt7XIMb^8-yQT1=6!euf63z0I z@Ifa@9ei{~DSF5)(?#?=sX7ILcOr@}6tZxEA14}#dUd6VgM-^fo^^JmU+LUuIIlA|uFXT(ZPc z^hhqZ?YbuG?;VeeSj0+^O58)2R_3n~Je>q`jW@;cC=P3|tXM;^7pkfD4Rb`}xS zTZU)VST2m0fZ* zz^SI}md>!{ZfU7h9b-HQ=3#u7kmWsUDHV$aTRB2(*h^h7QH<2J?1xsS(k4+>&I6Wl z=hsULNc2ELUMUeJLCZSdQe2#8Y$2U) zLcbAV62p|`clcpyf_IGlO$pN!X88G?g8r$=f1{+e_QtiBZ)6z0+j(`Fk)LIgZqcWP z`-Nfg6#_M1b+pf(CzA&2&lru#H@fmVLS}YTA}1f{UHvGy3Tv3Sc}2@->dl_d75fJd zwal4@ghMQSgVdqNLE#C|P{Wv$uvpo|#87x@T6#uSHY8UIR#sRDD=twBFDr+Z*QZxi z*WeQB8yX)aJ#Lk+NMOkd3++*i7z<}%2}>A)AV#F)$CLU)=b+C+r(f8CLbIPf+ekpZ zL@cjlF3!I~e%}22?zI@I=i^Jpx#vFD$%Ft#_j!-s))p^-u{#_u=07jim6%}8Z|1Z^J{usa?L0SqE_O6CgHIEO z*cKNpQoE=|UR)N=%bW2wwtTuf+mm3Xho{ZBrNq@{G|V+QsAKNa3eZd~ z8~PZ%D@M_9A@La>o?b%K;`S9G&;ya&tmZRhcqgchuLK%ueeJ!aG!gVSI1|2+>?Sl}#7{mM;AwBKjR?hOkwtB+f86qh`UzB)O=9FZ| z<@l3cUmO!yFQ($p}x=|0T-ED+~Slp z+x2D_2=P~Hm^bvY(VFAT+ndGNm%_PSGmxC_p!|NL8D|Zw>*r}`-;FeK5rpFIP?8tt zzOE%mODQdt$!~sJSkdBB3a=S7E;~@sB2x|%I54yUuXUiw*yb&*d)5dDr*HbV+PRd~ zRrb19gK8muQZbJvKa|P`@&1A+xJDTf<(kLS?o}SxIB!^{F-;JvXb|!}QFTam`rdZC zu_~POWFKr3@T67nesvpC_6G%y@L1eI_iE4XbYm?t;pI&zntQ z2EpL+$8qDv`vj6@SB65&$q1@f%Y}bB!3yvL2LBf){zMKY6-*xfR3)Ysznx&F3nmpz z9+*@x!CdumBU z4cuCa>)}?JsY5~LHeH4GY&*N9TReX0_lRO2Z=Lao-<{)Rr>^dqFog(&n8F@vK-B^Q zqbZ=!Fco;j(dZN?B`zKZPfSWpp=2s$XXmEE^9$qyixP{V)pg|+vMI&2wLuVZ7J#Lr zQM4o)ks3fjqEMZ5dIcygXd)1Sh?*E0MxoJ+g6HEiGcPE8t4Jhd;U%N%?sLjo%+&OB zG%M@e2Ib`V(A@CwS!7EbE&C zEc@cFoj{1#Nsf)w@qR9#!%N1hA>n;oOsHS9pgRBhqIgNdRz{AYx}z!Er9kDADQWLl zpN3M>?NxyE~|UTINN z8ttt-N{080^#{IA}uGZS;;=3BWbrsVd$tn3^WJMELiWD? z#l@nR0eoLRUm>}@rBZ#7lep)OA7XbF1NKj2&!6YB4a{M?*tYWu#%aQti`-l+2niDy z-FXG&vB5al4)YTnqm;{wUq>IB*wqEjgiQrT9SKG(-Wt#3B7uz`C`rJzgNu_RNha|$ zR+F`mf(P>KFNQ&rup41w=4vHJqIDc-B;3uzBB&G);)PQvpywzhNjRC}n6ys-IMv?+ zAXnC7>(cf){#KomtjE|}mh!0jPQ9)&sM0GiUYm7scrdq$KAWr+YCS|?^R+k>NOKRM z(klJP6%`KOM3w4J^1D}*EzPVK>xMt~sD2Xs%?>`?Vl0;&X37Or4=f1E?AHyu<2N5N z2F14O8y+xohoI{T_q5FWvm4>l&i52r-j>SB*O|ChOSHZp^w5EW7T31htOiQ2yHVyn zWRM@+aRgw?*>0y(&IAB;ZE4GOK~WwIBAm}Bv8I>TXH&Zwl<>HwUpAr4yBSc8^hU{6 z&3VHyPws0E%S7N6`qbh{Dnnv{b1J}J>5JZD>UqTap2?n83WH@<;wIXZN9-u$f+Jd~ z19w5o$bMwn;}WaYOK`)WqtE3#(k`o!khVjT&l=zc=H~>XuaPQ%N#6&uN>ENlj!)x5 zCBpVg68dCDLI~uY@8JN5J!C0tKc{iIK;!V2sYHnOSBCukc5M*i{}de*a1by8tp0P+ zVS4i$p5Ft_A9a}IFyUdU!zAawZ8ZO5I{7bkk_f`Bx2{FhV1|9R(=`rl8??fFWK+xg z6W&s>SMmLFhePlyb?%wx&(6qy_6ekCEY)laYLz}dyNQtZ?Rp~K@>8Mj?#4ac^GtVw zA!lG@J*aX}Ff|Yq9`P4EN{N~V4NOQp22V~&PYcY}%E`%3hZl;mh*lS2gG-W2pbgEH zH7xBwZJl^pX;V`O)0vL;5xR0lSuip^C=dl1M9-o}vl)R;mzWb)4D}6UdSGt84%GiD zWG!%Yd1`NCHZgW5n05}%8uZlJwV<}cUyvS{oG+#zb z5;>#JrDbqDRcqMCCz3K=W_{$9nf{%vs5>SE24;S<3vmEj{B}$fwr9aPMPlueH=ko? z!&toBzjQYWH;z_u`oK>DA*SQG#S>mz2SIYh&!IS405;vX19l?D{La3e;rn+(L2zuj zjxDzm2JaB2v~1<|InP3HfS%g8o-1c4FE6 z>^FV_O#8fLL85GEyadMqBIqg;jh);S5nBPI-5q?hLyEY%j}t0?)4nLdY-xgqPA~2} z1i#brwGd%4Vj+3;mU&KhW~l8>K`!nvKD4lvVb{;EjJK3dPf=C@ik$og^?dGA(eU1|V9?H!UcCzXs=X1B&b4Sfwk}opiRluKNzW?kaJfmafnO%nnt; zzpg)CJ$$|!r#yW&~Y%W<955#jeiu(n6Q zu(KxXK-c41ZqM4U%EQZ}N;d&s!`RrH8rz09#{^lf>5PD=o~mpr7x2~3PCZ|&hl{&# z9u0(=UEZCLbIRPCw8>k1G-VfZnm+CNmuJ-rmpm;s;FG)mZCkH?bw_tI>Uuv)9D09UrTGoppj-Yq0ozn-{A1W5=@EP4j~k_J}50 zz>xznDEc2uuz*jxHx);u-ns{M5IpQbf_L8JVT2@@j`ks=I+R*CO z^G{x^>+$z}&pdP_``i9K$wWd-V8I4Z-H6Dfa1b^2FL=Cc5)B%jmaYNM%*vsK7ibj~ zmFB?9nP@dsNJUm*q*PmjVLx&cI}nQ^(PvXE_7jLwC=mlVn?o;jk)70Zonb=M6exwAxT72pPLvwW zGvrb{okd*4vlJivw5x=Yxv6{1U58hK9|N|cWJ;zfU$csFVD))%xY!@3;-SMe*5ntY z?_B~xaGEQ90Lf5ZHkdy;e7c&mW3EckAhIX@(o)P>GqLVr0e<0?3c)st#Epa3)sSAE zoH>22s;W^G9@k-$DTTmLRxpmrnHL%gC`+W7U&igNQ*M$OX5Fz3TYu?FnqH&b>v0Q6 zx_eM=^L7}@lrua=U+Fjyv@)!vk=#D&K}bsqVTf&U=Rp}V2Bs1p{58Y`ZMju(79xIj zgL4`#NXHi=@FQM}Jqb4ZCh(PDAvV@%(?d2^CCPZ;AnF{AtSer;cmp^vPJ%+Q{5%kJ zel;gpQ8mu~KG5nz3t{s#po96Azbu3uv>}02=`?DzSl4#)d+I5rcLuC!ZR~Z$Ji{GRbnlA~K$+xf;mw_I; z2#R`D)2(od@bwv?wZN&(q3y(du;+H0GuVUZgJdZu!=2w)?{vxPwi3H4N_VOo=1XKn zIuG4reUGZHmG&M`&etUL3sgsT4S{s!ZnAoUsnrciFEyda6Q4Kh*iLY;>2&A`9m+s} zj%5<)#$zkHbV-2Pri{Aivw0i5-ur_7#8KzD+JNhr z(6L$VK0BWQkL-%i3l){~m1yF}wp}(7OZy%6pt6cm4osKpE_&&Vg3d}(+0^AX2`;S4 zt8^{aKm(&;BDL!PDIeE*Fhz5j_Jranw}{$TWbA^ww{nEEig8Z$fnv#T)& z9cFO)Zxa3KYMeCYO>3vPlDX-8uqpH1E(On=T9r+5reIiIJ;O;xBItEb?L_%}ntQA9 z=^6P(pPnqb4D0nxIebwRi`$$1UPX-69@ZrMTW$%s}J1k2gr@0lsH>rz{OKRWPGtZH? z@s6Oz;4Zcpp)?}Lm)U8; zOQwpCy_!HHua^pY8D2hfoa@mB1VI$R!Z>g1>SUl}pg&#Qwn_yJbhJV_LGNr@Zf}Jl z+&+adPH|sUt)_?Xyy`i(5k(wSwv|bYkI>}%f!Usywu+BQNzY;)9ZonYN89uq^w@wOef951mxgZ^`bX%Kr)i2^(4(J9TT)U zb5Py%?9f0YiZ?;j0@WQ)f^k&J9tSJ5UIRItc^}4ycHRtydhQ_?%%h zCL!b-T*;9tEv9)U&rTQdQVF%8o$-p}#ins4HJtfS9!*Pe^tE%%7tjQX4=6$YR!OkA zZ5v}b#mU=}n_cnUQJqAy9Y%iAwb}xq48_q;9ULlhq|P)eFoRVsomV6tqUdg@n+d8{ z$3|Gxx)rNC%FV3hVao;HKs_DoIC4+R4W7&POkm`v__#}V7Q4B+lhGa&mMihPC%>+1 zk-G=Z=RcyXmzY$#PnL5$iBp+z?|aSXHP#ll@E7l1f9($iHv zbs(T(Z}Mnz=3bZeP~N9;k=iyY-MMdGq4!q6H6QreO2x4mi7!7tgU`ocd?#>)miQdWvVk>9HqFRW1dvV9k`RG#qAHlGzbpD$63dHC-djF0Z=| ziVKrtnbQncDPctb)!<^nfper&N7=FbWh9x4ks6rdAYAlQjG>(fjNilDeL~1XZ0+X^ zLv}9H`|XS#X;Fb4;rH1=@B&rQ%$Ra$z)W4|+R{TWfn(+xjdG{;5*(K&h9W!ANN!0J zYV{((BZ;zl*pQO6d#3IBiZOA-k+41K5b^>28AclHmR%my!ixYwFc9nEVn)@QUUju4 z$!I%04RQ3MwB{8mjSdUSs`_4%vnVSL%s#%y0koeCg7WuA8$K!Y|E{sYbwS4;>Og&I z@jY>ceV;XI=VKPDDHmb^#%)J6K{{UCJ>x2#;yj1-9>JL^qeC$w?tF)dU{^#Tr|A_= zeXK26It`!npk4U&D>m+VpCeIoR4QPp+WaMg12RD+#UO!!5sNiW%X~lg@eZeW9%DOl z5UXYh9t`AP%EwS`ERVQbJJ_99HvOb3nL0Y}!jZHn5DGf)M0Sfxyg6fb zwHqTra~&699QCeIVS^<}SX$&sV=&pu3iCFbD~7M2$BkS>*G z-g|bev^2dX4G(V;v?wl*tDNyDD|k~Xt4U?7dz8g3m6n(AA9$TvlWSF7UM)=5c=_xR z$Rt8Gy3p=kMS}oQHllHmEUQqn;7%hq)8cS15i<>^!0x-b`r54@!1(K-J7?0X+J!tZ z1VAWd@p?N`hw9FuUqZM}^viqIttbPznp*ZtHak81Vyy%?Dj9dAnRA{4wI`sIyHw86rQq!ZpD(v;Bdo=P@)G;em7##>U+HGFro*RFL_xY|6EHC80 z#W?B01nEZ{F>my-_Whet6_e*(;ZcrRy-|L+s`&f~xDQtlY$ zT`FC+^PPb>JftUoEA+zg%O(pqtsK-!Ebyvo@ymd<>~CMz3ON-Zm; z#Xt&+rJjZftsFFq}7X=*DL^|^2#pJpGKjfFGsQdGm?r5+HrB=nmvcpgXQpo~T~ zZDNiGn&B)x$Y*#0XsXF>nno}ovLL(Ew}ku}LQ_5nBQJfEbXe;apekrmTB4uY2;!6D zc^bM9U+vIr7ziADcOJOC5gQ8N32aC)ntWKlPjEM{w-Jp;Q&jsgKesYu(Z`X{jf^%J z{Aum8vvM$1!j!fX>cZy7D#*fb6yFVwNR$@}j=g((Lrr0rVoSJ}k7!mAT{~Hxw#SM( z+Vb?oPQ#b(XRo*lY%rP^O7mAN2KBej& z*U3W~rrkz3@!?)9Uo+({8M)#$Lb6Tz6^mGQwfk1h!S3+Qz!|0lPwB9{$*Y7)2Yp#{ zCh=)bpR+yIVVDEHuV%NBeFNS z%yV5}NrmC1#ani?lCa{8aQD(2hndo{>a^0;g8E?hx5bt2>jQW9zq)UhH^OB-C9aca zWUG>Mi#F?bG=HCoy!x2&$1T;(~k4RTE+1Tkq7?f{zb97{=PR+ zJd#XTBbkKK#qQYz4BWZ3+0`TE@&ht-rQZZP>_y##j#{p@-mJD929$X5mn3%SmIwT& zIxL#}T)F+P#yV;3+Su)})gtF$d}islJK=VY{=1VG#NX~t*d2g!V{WK)6K zgB9?ivv0$%Mjb6Fk#E>oA)mFbBiYsjZsmFZ%M79%hxvxFRQ88a^S4Gl|qf?SNF%8G)Y@Z1$KoQ|m7 z7LDfl1xILp4g|w)vAxtQx1i)D{AI41!D)G`YasEI>0wTSiVIR!@YQZC2Csv1u(?xT zm%H~0$HF3~uypN~*L+K3{ihL^X9RGB1g+`u*KW}DM>nn$vRWJ81YOF~Ir0G98g^@n z$H@be`u*(!`eFQZ9N>8Ct$6Xru6JzyEx%Z*rS!!nMj9!1DdXm|`#j4ljYmko3dFS4 zcrRGkLm@ajGG_Oy=&a|8R02Fo;F9NXT{ukxdE{9GdwMo8g-qjTd9-d^a6V!h=}gDo<+KDvi~H(K#JSy$jZ3nL<`j?7 zxW*gAk1Tf03pdNU8<2J?^qfcruV9I&@}`ZXxV*KiB{_jl4nr{%*%PJEcv?$xb5_K| z!)XC(?s>sM(R=3Zfu_bY&;vGu0NlnZwV+7qJf}MhZI55i$uhOdDJ>msaWBh1liG)> zHOI?VNcFC+mjzB6IaPFso+8}OYq2U6jw|?9R@<%+v9Vu07A^LI@A>4qN05M1$5{3B zy3Ct~SuonGX(Vn#F3p@KyUq8?c~PPH;k)BiPJ8ae?dqLhHQT74zc$=E!12LePXxbw zugaCYZzbp|%Fp^<9Ccl!2FY=S72ozM{DyWPX8@}*N?g|6yGefT-upqhMiVbZ+|+l< zp6_-YHGO@`c73dOnKTQ+msCKj~;kXL=&V9 zO`SbpI}>ORyN(!Fq_he{{;># BB7*<` literal 0 HcmV?d00001 diff --git a/src/editor.c b/src/editor.c index e8497d73..258e8b94 100644 --- a/src/editor.c +++ b/src/editor.c @@ -10,8 +10,8 @@ EvilMode current_mode = NORMAL; float zoom_factor = 5.0f; Theme themes[10]; -bool showLineNumbers = false; // This is the actual definition and initialization -bool is_animated = true; // or false, depending on your initial requirement +bool showLineNumbers = true; // This is the actual definition and initialization +bool is_animated = false; // or false, depending on your initial requirement int currentThemeIndex = 0; @@ -32,6 +32,7 @@ void initialize_themes() { .selection = hex_to_vec4f(0xf5c2e7FF), // Pink .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo .todo = hex_to_vec4f(0xf2cdcdFF), // Flamingo + .line_numbers = hex_to_vec4f(0x9399b2FF), // Overlay2 .fixme = hex_to_vec4f(0xf2cdcdFF), // Flamingo .note = hex_to_vec4f(0xa6e3a1FF), // Green .bug = hex_to_vec4f(0xf38ba8FF), // Red @@ -258,8 +259,6 @@ void editor_backspace(Editor *e) } } - - void editor_delete(Editor *e) { if (e->searching) return; @@ -661,9 +660,33 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + /* if (showLineNumbers) { */ + /* // Render line numbers */ + /* simple_renderer_set_shader(sr, SHADER_FOR_TEXT); */ + + /* // Calculate the width for the line numbers, say every line number takes up to 5 characters of space */ + + /* for (size_t i = 0; i < editor->lines.count; ++i) { */ + /* char lineNumberStr[10]; // Buffer for line number string */ + /* snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", i + 1); // Convert line number to string */ + + /* Vec2f pos; */ + /* pos.x = 0; // Start from the left edge of the window */ + /* pos.y = -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; */ + + /* free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, lineNumberColor); */ + /* } */ + + /* simple_renderer_flush(sr); */ + /* } */ + + if (showLineNumbers) { // Render line numbers - simple_renderer_set_shader(sr, SHADER_FOR_EPICNESS); + simple_renderer_set_shader(sr, SHADER_FOR_TEXT); + + // Get the color for line numbers from the current theme + Vec4f color = themes[currentThemeIndex].line_numbers; // Calculate the width for the line numbers, say every line number takes up to 5 characters of space @@ -675,12 +698,14 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer pos.x = 0; // Start from the left edge of the window pos.y = -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; - free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, lineNumberColor); + // Use the theme color for line numbers + free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, color); } simple_renderer_flush(sr); } + // Render text { simple_renderer_set_shader(sr, SHADER_FOR_TEXT); @@ -803,7 +828,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } break; default: - {} + {} } free_glyph_atlas_render_line_sized(atlas, sr, token.text, token.text_len, &pos, color); // TODO: the max_line_len should be calculated based on what's visible on the screen right now @@ -816,6 +841,12 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render cursor simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + // Exit early if the editor has a mark and should not render the cursor + // since the camera follow the cursor i cant do it or i dont know how + /* if (editor->has_mark) { */ + /* return; // Skip the cursor rendering */ + /* } */ + // Adjust cursor position if line numbers are shown if (showLineNumbers) { cursor_pos.x += lineNumberWidth; @@ -903,9 +934,9 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->camera_scale = 0.24f; // Set the zoom level to 0.5 if (!hasShifted) { - sr->camera_pos.x = 2150.0f; // Set the x-position + sr->camera_pos.x = 3850.0f; // Set the x-position sr->camera_pos.y = -2000.0f; // Set the initial y-position - hasShifted = true; // Mark as shifted + /* hasShifted = true; // Mark as shifted */ } else { // Determine the height of a line Vec2f pos = {0.0f, 0.0f}; @@ -1081,6 +1112,13 @@ void editor_stop_search_and_mark(Editor *e) { e->mark_end = e->cursor + e->search.count; } +void editor_clear_mark(Editor *editor) { + editor->has_mark = false; + editor->mark_start = 0; // or some other appropriate default value + editor->mark_end = 0; // or some other appropriate default value +} + + bool editor_search_matches_at(Editor *e, size_t pos) { diff --git a/src/editor.h b/src/editor.h index 453af863..1f91f0b7 100644 --- a/src/editor.h +++ b/src/editor.h @@ -51,6 +51,7 @@ typedef struct { Vec4f string; Vec4f selection; Vec4f search; + Vec4f line_numbers; Vec4f todo; Vec4f fixme; Vec4f note; @@ -125,6 +126,8 @@ bool editor_search_matches_at(Editor *e, size_t pos); void editor_stop_search_and_mark(Editor *e); void editor_search_next(Editor *e); void editor_search_previous(Editor *e); +void editor_clear_mark(Editor *editor); + extern float zoom_factor; extern bool showLineNumbers; diff --git a/src/file_browser.c b/src/file_browser.c index 629933f8..0183064c 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -1,6 +1,7 @@ #include #include "file_browser.h" #include "sv.h" +#include "editor.h" // only for zoom_factor maybe im bad at programming #include @@ -177,30 +178,37 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl // Update camera { - if (max_line_len > 1000.0f) { - max_line_len = 1000.0f; - } - float target_scale = w/3/(max_line_len*0.75); // TODO: division by 0 + if (is_animated) { - Vec2f target = cursor_pos; - float offset = 0.0f; + if (max_line_len > 1000.0f) { + max_line_len = 1000.0f; + } - if (target_scale > 3.0f) { - target_scale = 3.0f; - } else { - offset = cursor_pos.x - w/1/sr->camera_scale; - if (offset < 0.0f) offset = 0.0f; - target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); - } + float target_scale = w/ zoom_factor /(max_line_len*0.75); // TODO: division by 0 + + Vec2f target = cursor_pos; + float offset = 0.0f; - sr->camera_vel = vec2f_mul( - vec2f_sub(target, sr->camera_pos), - vec2fs(2.0f)); - sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; + if (target_scale > 3.0f) { + target_scale = 3.0f; + } else { + offset = cursor_pos.x - w/1/sr->camera_scale; + if (offset < 0.0f) offset = 0.0f; + target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); + } + + sr->camera_vel = vec2f_mul( + vec2f_sub(target, sr->camera_pos), + vec2fs(2.0f)); + sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; + + sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); + sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; + } + // dont need the else ? + // the camera is already adjusted - sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); - sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; } } diff --git a/src/main.c b/src/main.c index 58092c33..adaf62d3 100644 --- a/src/main.c +++ b/src/main.c @@ -220,16 +220,12 @@ int main(int argc, char **argv) file_browser = false; } break; - - case SDLK_F5: { - simple_renderer_reload_shaders(&sr); - } - break; - case SDLK_EQUALS: { if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed theme_next(¤tThemeIndex); printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor -= 0.8f; } } break; @@ -237,9 +233,29 @@ int main(int argc, char **argv) if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed theme_previous(¤tThemeIndex); printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor += 0.8f; + if (zoom_factor < 1.0f) zoom_factor = 1.0f; // Ensure zoom_factor doesn't drop below a threshold } } break; + case SDLK_ESCAPE: { + file_browser = false; + } break; + + + case SDLK_r: + if (event.key.keysym.mod & KMOD_CTRL) { + file_browser = false; + } + break; + + + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); + } + break; + case SDLK_UP: { if (fb.cursor > 0) fb.cursor -= 1; @@ -278,13 +294,22 @@ int main(int argc, char **argv) } } break; + // TODO + /* case SDLK_t: { */ + /* if (!file_creation_mode) { */ + /* file_creation_mode = true; */ + /* memset(new_filename, 0, sizeof(new_filename)); // Reset filename buffer */ + /* filename_cursor = 0; */ + /* } */ + /* } break; */ + + case SDLK_t: { - if (!file_creation_mode) { - file_creation_mode = true; - memset(new_filename, 0, sizeof(new_filename)); // Reset filename buffer - filename_cursor = 0; + if (SDL_GetModState() & KMOD_CTRL) { + is_animated = !is_animated; // Toggle the state } - } break; + } + break; case SDLK_l: { @@ -359,6 +384,13 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { SDL_Event tmpEvent; // Declare once at the beginning of the switch block + case SDLK_ESCAPE: { + editor_clear_mark(&editor); + editor_stop_search(&editor); + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + } + break; + case SDLK_TAB: { // TODO: indent on Tab instead of just inserting 4 spaces at the cursor // That is insert the spaces at the beginning of the line. Shift+TAB should @@ -467,6 +499,9 @@ int main(int argc, char **argv) case SDLK_i: current_mode = INSERT; + + /* is_animated = true; // TODO make this an option and smooth */ + // Eat up the next SDL_TEXTINPUT event for 'i' SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'i' if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'i') { @@ -545,6 +580,13 @@ int main(int argc, char **argv) file_browser = true; break; + + case SDLK_r: + if (event.key.keysym.mod & KMOD_CTRL) { + file_browser = true; + } + break; + case SDLK_BACKSPACE: // yes you can delete in normal mode editor_backspace(&editor); break; @@ -593,9 +635,38 @@ int main(int argc, char **argv) } break; + case INSERT: switch (event.key.keysym.sym) { + case SDLK_h: // Left + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_j: // Down + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_k: // Up + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: // Right + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + case SDLK_TAB: { // TODO: indent on Tab instead of just inserting 4 spaces at the cursor // That is insert the spaces at the beginning of the line. Shift+TAB should @@ -785,6 +856,7 @@ int main(int argc, char **argv) case SDLK_ESCAPE: { current_mode = NORMAL; + editor_clear_mark(&editor); editor_stop_search(&editor); editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); } @@ -868,6 +940,7 @@ int main(int argc, char **argv) } break; + case VISUAL: switch (event.key.keysym.sym) { diff --git a/src/simple_renderer.c b/src/simple_renderer.c index 546678b7..c12a115c 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -6,6 +6,7 @@ #include #include "./simple_renderer.h" #include "./common.h" +#include "./editor.h" #define vert_shader_file_path "./shaders/simple.vert" @@ -130,7 +131,10 @@ static void get_uniform_location(GLuint program, GLint locations[COUNT_UNIFORM_S void simple_renderer_init(Simple_Renderer *sr) { - sr->camera_scale = 3.0f; + + if (is_animated) { + sr->camera_scale = 3.0f; + } { glGenVertexArrays(1, &sr->vao); From 8e70f2498cb306244ad96dcbc3f468ec58b786e7 Mon Sep 17 00:00:00 2001 From: laluxx Date: Sun, 17 Sep 2023 21:11:58 +0000 Subject: [PATCH 15/74] preatty-code --- src/editor.c | 60 +++++++++++++++++++++- src/editor.h | 11 ++++ src/lexer.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++---- src/lexer.h | 11 ++++ src/main.c | 26 ---------- 5 files changed, 207 insertions(+), 39 deletions(-) diff --git a/src/editor.c b/src/editor.c index 258e8b94..32dc3ffa 100644 --- a/src/editor.c +++ b/src/editor.c @@ -27,7 +27,7 @@ void initialize_themes() { .background = hex_to_vec4f(0x1e1e2eFF), // Base .comment = hex_to_vec4f(0x9399b2FF), // Overlay2 .hashtag = hex_to_vec4f(0x89b4faFF), // Blue - .logic = hex_to_vec4f(0xa6e3a1FF), // Green + .logic = hex_to_vec4f(0xCBA6F7FF), // Peach .string = hex_to_vec4f(0xf9e2afFF), // Yellow .selection = hex_to_vec4f(0xf5c2e7FF), // Pink .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo @@ -36,8 +36,19 @@ void initialize_themes() { .fixme = hex_to_vec4f(0xf2cdcdFF), // Flamingo .note = hex_to_vec4f(0xa6e3a1FF), // Green .bug = hex_to_vec4f(0xf38ba8FF), // Red + .not_equals = hex_to_vec4f(0xf38ba8FF), // Red + .exclamation = hex_to_vec4f(0xf38ba8FF), // Red + .equals = hex_to_vec4f(0xa6e3a1FF), // Green + .equals_equals = hex_to_vec4f(0xa6e3a1FF), // Green + .greater_than = hex_to_vec4f(0xa6e3a1FF), // Green + .less_than = hex_to_vec4f(0x74c7ecFF), // Sapphire .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire - .fb_selection = hex_to_vec4f(0xb4befeFF) // Lavender + .fb_selection = hex_to_vec4f(0xb4befeFF), // Lavender + .plus = hex_to_vec4f(0xa6e3a1FF), // Green + .minus = hex_to_vec4f(0xf38ba8FF), // Red + .truee = hex_to_vec4f(0xa6e3a1FF), // Green + .falsee = hex_to_vec4f(0xf38ba8FF), // Red + .arrow = hex_to_vec4f(0xf9e2afFF), // Yellow }; @@ -815,6 +826,51 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } break; + + case TOKEN_EQUALS: + color = themes[currentThemeIndex].equals; + break; + + case TOKEN_EXCLAMATION: + color = themes[currentThemeIndex].exclamation; + break; + + case TOKEN_NOT_EQUALS: + color = themes[currentThemeIndex].not_equals; + break; + + case TOKEN_EQUALS_EQUALS: + color = themes[currentThemeIndex].equals_equals; + break; + + + case TOKEN_LESS_THAN: + color = themes[currentThemeIndex].less_than; + break; + + case TOKEN_GREATER_THAN: + color = themes[currentThemeIndex].greater_than; + break; + case TOKEN_ARROW: + color = themes[currentThemeIndex].arrow; + break; + + case TOKEN_MINUS: + color = themes[currentThemeIndex].minus; + break; + + case TOKEN_PLUS: + color = themes[currentThemeIndex].plus; + break; + + case TOKEN_TRUE: + color = themes[currentThemeIndex].truee; + break; + case TOKEN_FALSE: + color = themes[currentThemeIndex].falsee; + break; + + case TOKEN_STRING: /* color = hex_to_vec4f(0x73c936ff); */ color = themes[currentThemeIndex].string; diff --git a/src/editor.h b/src/editor.h index 1f91f0b7..398f5747 100644 --- a/src/editor.h +++ b/src/editor.h @@ -56,6 +56,17 @@ typedef struct { Vec4f fixme; Vec4f note; Vec4f bug; + Vec4f equals; + Vec4f not_equals; + Vec4f exclamation; + Vec4f equals_equals; + Vec4f less_than; + Vec4f greater_than; + Vec4f arrow; + Vec4f plus; + Vec4f minus; + Vec4f truee; + Vec4f falsee; Vec4f marks; Vec4f fb_selection; } Theme; diff --git a/src/lexer.c b/src/lexer.c index e1133afe..5cdf4916 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -18,6 +18,10 @@ Literal_Token literal_tokens[] = { {.text = "{", .kind = TOKEN_OPEN_CURLY}, {.text = "}", .kind = TOKEN_CLOSE_CURLY}, {.text = ";", .kind = TOKEN_SEMICOLON}, + {.text = "=", .kind = TOKEN_EQUALS}, + {.text = "!=", .kind = TOKEN_NOT_EQUALS}, + {.text = "==", .kind = TOKEN_EQUALS_EQUALS}, + {.text = "!", .kind = TOKEN_EXCLAMATION}, }; #define literal_tokens_count (sizeof(literal_tokens)/sizeof(literal_tokens[0])) @@ -28,8 +32,6 @@ const char *jKeywords[] = { #define jKeywords_count (sizeof(jKeywords)/sizeof(jKeywords[0])) - - const char *cKeywords[] = { "auto", "break", "case", "char", "const", "continue", "default", "do", "double", "else", "enum", "extern", "float", "for", "goto", "if", "int", "long", "register", @@ -45,25 +47,17 @@ const char *cKeywords[] = { "template", "this", "thread_local", "throw", "true", "try", "typeid", "typename", "using", "virtual", "wchar_t", "xor", "xor_eq", }; + /* #define keywords_count (sizeof(keywords)/sizeof(keywords[0])) */ #define cKeywords_count (sizeof(cKeywords)/sizeof(cKeywords[0])) - - - - - const char *pyKeywords[] = { "False", "None", "True", "and", "as", "assert", "async", "await", "break", "class", "continue", "def", "del", "elif", "else", "except", "finally", "for", "from", "global", "if", "import", "in", "is", "lambda", "nonlocal", "not", "or", "pass", "raise", "return", "try", "while", "with", "yield", }; #define pyKeywords_count (sizeof(pyKeywords)/sizeof(pyKeywords[0])) - - - - const char *token_kind_name(Token_Kind kind) { switch (kind) { @@ -89,6 +83,24 @@ const char *token_kind_name(Token_Kind kind) return "semicolon"; case TOKEN_KEYWORD: return "keyword"; + case TOKEN_EQUALS: + return "="; + case TOKEN_NOT_EQUALS: + return "!="; + case TOKEN_EQUALS_EQUALS: + return "=="; + case TOKEN_EXCLAMATION: + return "!"; + case TOKEN_ARROW: + return "->"; + case TOKEN_MINUS: + return "-"; + case TOKEN_PLUS: + return "+"; + case TOKEN_TRUE: + return "true"; + case TOKEN_FALSE: + return "false"; default: UNREACHABLE("token_kind_name"); } @@ -190,6 +202,110 @@ Token lexer_next(Lexer *l) if (l->cursor >= l->content_len) return token; + // Check for specific operators (e.g., "=", "!", "!=", "==", "<", ">", "<=", ">=") + if (l->cursor < l->content_len) { + char current_char = l->content[l->cursor]; + char next_char = (l->cursor + 1 < l->content_len) ? l->content[l->cursor + 1] : '\0'; + + switch (current_char) { + case '=': + if (next_char == '=') { + token.kind = TOKEN_EQUALS_EQUALS; + token.text_len = 2; + lexer_chop_char(l, 2); + } else { + token.kind = TOKEN_EQUALS; + token.text_len = 1; + lexer_chop_char(l, 1); + } + return token; + + case '!': + if (next_char == '=') { + token.kind = TOKEN_NOT_EQUALS; + token.text_len = 2; + lexer_chop_char(l, 2); + } else { + token.kind = TOKEN_EXCLAMATION; + token.text_len = 1; + lexer_chop_char(l, 1); + } + return token; + + case '<': + token.kind = TOKEN_LESS_THAN; + token.text_len = 1; + lexer_chop_char(l, 1); + return token; + + case '>': + token.kind = TOKEN_GREATER_THAN; + token.text_len = 1; + lexer_chop_char(l, 1); + return token; + + case '-': + if (next_char == '>') { + token.kind = TOKEN_ARROW; + token.text_len = 2; + lexer_chop_char(l, 2); + } else { + token.kind = TOKEN_MINUS; + token.text_len = 1; + lexer_chop_char(l, 1); + } + return token; + + case '+': + token.kind = TOKEN_PLUS; + token.text_len = 1; + lexer_chop_char(l, 1); + return token; + + } + } + + + /* // Check for boolean literals "true" and "false" */ + /* if ((l->cursor + 3 < l->content_len) && */ + /* (strncmp(&l->content[l->cursor], "true", 4) == 0)) { */ + + /* lexer_chop_char(l, 4); // Skip the entire "true" token */ + /* token.kind = TOKEN_TRUE; */ + /* token.text_len = 4; */ + /* return token; */ + + /* } else if ((l->cursor + 4 < l->content_len) && */ + /* (strncmp(&l->content[l->cursor], "false", 5) == 0)) { */ + + /* lexer_chop_char(l, 5); // Skip the entire "false" token */ + /* token.kind = TOKEN_FALSE; */ + /* token.text_len = 5; */ + /* return token; */ + + /* } */ + + // Check for boolean literals "true" and "false" + if ((l->cursor + 3 < l->content_len) && + (strncmp(&l->content[l->cursor], "true", 4) == 0) && + ((l->cursor + 4 == l->content_len) || !isalnum(l->content[l->cursor + 4]))) { + + lexer_chop_char(l, 4); // Skip the entire "true" token + token.kind = TOKEN_TRUE; + token.text_len = 4; + return token; + + } else if ((l->cursor + 4 < l->content_len) && + (strncmp(&l->content[l->cursor], "false", 5) == 0) && + ((l->cursor + 5 == l->content_len) || !isalnum(l->content[l->cursor + 5]))) { + + lexer_chop_char(l, 5); // Skip the entire "false" token + token.kind = TOKEN_FALSE; + token.text_len = 5; + return token; + } + + // Check for color-like format (e.g., 0xf38ba8FF) if (l->content[l->cursor] == '0' && (l->cursor + 1 < l->content_len) && diff --git a/src/lexer.h b/src/lexer.h index 1e0f924f..04cc3c96 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -20,6 +20,17 @@ typedef enum { TOKEN_COMMENT, TOKEN_STRING, TOKEN_COLOR, + TOKEN_EQUALS, + TOKEN_NOT_EQUALS, + TOKEN_EQUALS_EQUALS, + TOKEN_EXCLAMATION, + TOKEN_LESS_THAN, + TOKEN_GREATER_THAN, + TOKEN_ARROW, + TOKEN_MINUS, + TOKEN_PLUS, + TOKEN_TRUE, + TOKEN_FALSE, } Token_Kind; const char *token_kind_name(Token_Kind kind); diff --git a/src/main.c b/src/main.c index adaf62d3..435e5475 100644 --- a/src/main.c +++ b/src/main.c @@ -774,32 +774,6 @@ int main(int argc, char **argv) } break; - case SDLK_LESS: { - if (event.key.keysym.mod & KMOD_SHIFT) { - // Handle '<' with shift pressed - char pair[] = "<>"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); // Move cursor between angle brackets - } else { - // Handle '<' without shift. - editor_insert_char(&editor, '<'); - } - - // Consume the upcoming character events - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume the first character - if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != '<' && tmpEvent.text.text[0] != '>')) { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - if (event.key.keysym.mod & KMOD_SHIFT) { // Only try to consume the second character if shift was pressed - SDL_PollEvent(&tmpEvent); // Consume the second character - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '>') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - } - break; - case SDLK_QUOTE: { if (event.key.keysym.mod & KMOD_SHIFT) { // If Shift + ' is pressed, insert double quotes "" From 6cb6c283190b692f9eba8e24fe6255fac3ff8afa Mon Sep 17 00:00:00 2001 From: laluxx Date: Sun, 17 Sep 2023 22:26:06 +0000 Subject: [PATCH 16/74] lexer-arrays --- src/editor.c | 12 ++++++++ src/editor.h | 3 ++ src/lexer.c | 83 +++++++++++++++++++++++++++++----------------------- src/lexer.h | 4 +++ 4 files changed, 65 insertions(+), 37 deletions(-) diff --git a/src/editor.c b/src/editor.c index 32dc3ffa..35dbdf10 100644 --- a/src/editor.c +++ b/src/editor.c @@ -49,6 +49,9 @@ void initialize_themes() { .truee = hex_to_vec4f(0xa6e3a1FF), // Green .falsee = hex_to_vec4f(0xf38ba8FF), // Red .arrow = hex_to_vec4f(0xf9e2afFF), // Yellow + .open_square = hex_to_vec4f(0x89b4faFF), // Blue + .close_square = hex_to_vec4f(0xa6e3a1FF), // Blue + .array_content = hex_to_vec4f(0x74c7ecFF), // Sapphire }; @@ -869,6 +872,15 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case TOKEN_FALSE: color = themes[currentThemeIndex].falsee; break; + case TOKEN_OPEN_SQUARE: + color = themes[currentThemeIndex].open_square; + break; + case TOKEN_CLOSE_SQUARE: + color = themes[currentThemeIndex].close_square; + break; + case TOKEN_ARRAY_CONTENT: + color = themes[currentThemeIndex].array_content; + break; case TOKEN_STRING: diff --git a/src/editor.h b/src/editor.h index 398f5747..1fae488f 100644 --- a/src/editor.h +++ b/src/editor.h @@ -67,6 +67,9 @@ typedef struct { Vec4f minus; Vec4f truee; Vec4f falsee; + Vec4f open_square; + Vec4f close_square; + Vec4f array_content; Vec4f marks; Vec4f fb_selection; } Theme; diff --git a/src/lexer.c b/src/lexer.c index 5cdf4916..10e4a3d0 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -101,6 +101,12 @@ const char *token_kind_name(Token_Kind kind) return "true"; case TOKEN_FALSE: return "false"; + case TOKEN_ARRAY_CONTENT: + return "array_content"; + case TOKEN_OPEN_SQUARE: + return "open_square"; + case TOKEN_CLOSE_SQUARE: + return "close_square"; default: UNREACHABLE("token_kind_name"); } @@ -266,24 +272,50 @@ Token lexer_next(Lexer *l) } - /* // Check for boolean literals "true" and "false" */ - /* if ((l->cursor + 3 < l->content_len) && */ - /* (strncmp(&l->content[l->cursor], "true", 4) == 0)) { */ - /* lexer_chop_char(l, 4); // Skip the entire "true" token */ - /* token.kind = TOKEN_TRUE; */ - /* token.text_len = 4; */ - /* return token; */ - /* } else if ((l->cursor + 4 < l->content_len) && */ - /* (strncmp(&l->content[l->cursor], "false", 5) == 0)) { */ + // Check for arrays + if (l->cursor < l->content_len) { + char current_char = l->content[l->cursor]; + + // If the current character is the start of an array + if (current_char == '[') { + token.kind = TOKEN_OPEN_SQUARE; + token.text_len = 1; + lexer_chop_char(l, 1); + l->in_array = true; // Set the flag indicating we are inside an array + return token; + } + else if (current_char == ']' && l->in_array) { + token.kind = TOKEN_CLOSE_SQUARE; + token.text_len = 1; + lexer_chop_char(l, 1); + l->in_array = false; // Reset the flag indicating we are no longer inside an array + return token; + } + } + + // Check for array content, but only if we are inside an array + if (l->in_array && l->cursor < l->content_len) { + size_t potential_length = 0; + + while (l->cursor + potential_length < l->content_len && l->content[l->cursor + potential_length] != ']') { + potential_length++; + } + + // If potential array content was detected and not empty + if (potential_length > 0) { + token.kind = TOKEN_ARRAY_CONTENT; + token.text_len = potential_length; + lexer_chop_char(l, potential_length); + return token; + } + } + + + - /* lexer_chop_char(l, 5); // Skip the entire "false" token */ - /* token.kind = TOKEN_FALSE; */ - /* token.text_len = 5; */ - /* return token; */ - /* } */ // Check for boolean literals "true" and "false" if ((l->cursor + 3 < l->content_len) && @@ -367,29 +399,6 @@ Token lexer_next(Lexer *l) } } - /* if (lexer_starts_with(l, "//")) { */ - /* token.kind = TOKEN_COMMENT; */ - /* while (l->cursor < l->content_len && l->content[l->cursor] != '\n') { */ - /* lexer_chop_char(l, 1); */ - /* } */ - /* if (l->cursor < l->content_len) { */ - /* lexer_chop_char(l, 1); */ - /* } */ - /* token.text_len = &l->content[l->cursor] - token.text; */ - /* return token; */ - /* } */ - - /* for (size_t i = 0; i < literal_tokens_count; ++i) { */ - /* if (lexer_starts_with(l, literal_tokens[i].text)) { */ - /* // NOTE: this code assumes that there is no newlines in literal_tokens[i].text */ - /* size_t text_len = strlen(literal_tokens[i].text); */ - /* token.kind = literal_tokens[i].kind; */ - /* token.text_len = text_len; */ - /* lexer_chop_char(l, text_len); */ - /* return token; */ - /* } */ - /* } */ - if (lexer_starts_with(l, "//")) { token.kind = TOKEN_COMMENT; while (l->cursor < l->content_len && l->content[l->cursor] != '\n') { diff --git a/src/lexer.h b/src/lexer.h index 04cc3c96..61e3f6b0 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -31,6 +31,9 @@ typedef enum { TOKEN_PLUS, TOKEN_TRUE, TOKEN_FALSE, + TOKEN_OPEN_SQUARE, + TOKEN_CLOSE_SQUARE, + TOKEN_ARRAY_CONTENT, } Token_Kind; const char *token_kind_name(Token_Kind kind); @@ -52,6 +55,7 @@ typedef struct { size_t bol; float x; String_Builder file_path; + bool in_array; // to remember if we are inside an array } Lexer; /* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len); */ From 0fdce54baca126b848e75f4752fc77f2a5e8dc5f Mon Sep 17 00:00:00 2001 From: laluxx Date: Sun, 17 Sep 2023 23:19:23 +0000 Subject: [PATCH 17/74] idk --- rc.lua | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++ src/editor.c | 4 +--- 2 files changed, 62 insertions(+), 3 deletions(-) create mode 100644 rc.lua diff --git a/rc.lua b/rc.lua new file mode 100644 index 00000000..e28a5371 --- /dev/null +++ b/rc.lua @@ -0,0 +1,61 @@ +--- ░█▀▄░█░█░█░█░█░█░█▀█░▀░█▀▀░░░█▀█░█░█░█▀▀░█▀▀░█▀█░█▄█░█▀▀ +--- ░█▀▄░▄▀▄░░█░░█▀█░█░█░░░▀▀█░░░█▀█░█▄█░█▀▀░▀▀█░█░█░█░█░█▀▀ +--- ░▀░▀░▀░▀░░▀░░▀░▀░▀░▀░░░▀▀▀░░░▀░▀░▀░▀░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀▀▀ +--- ~~~~~~~~~~~~~~~~~~ @author rxyhn ~~~~~~~~~~~~~~~~~~~~~~ +--- ~~~~~~~~~~~~ https://github.com/rxyhn ~~~~~~~~~~~~~~~~~~ + +pcall(require, "luarocks.loader") +local gears = require("gears") +local beautiful = require("beautiful") + + +--- ░▀█▀░█░█░█▀▀░█▄█░█▀▀ +--- ░░█░░█▀█░█▀▀░█░█░█▀▀ +--- ░░▀░░▀░▀░▀▀▀░▀░▀░▀▀▀ + +local theme_dir = gears.filesystem.get_configuration_dir() .. "theme/" +beautiful.init(theme_dir .. "theme.lua") + +--- ░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀░█░█░█▀▄░█▀█░▀█▀░▀█▀░█▀█░█▀█░█▀▀ +--- ░█░░░█░█░█░█░█▀▀░░█░░█░█░█░█░█▀▄░█▀█░░█░░░█░░█░█░█░█░▀▀█ +--- ░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀░▀░░▀░░▀▀▀░▀▀▀░▀░▀░▀▀▀ + +require("configuration") + +--- ░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀ +--- ░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█ +--- ░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀ + +require("modules") + +--- ░█░█░▀█▀ +--- ░█░█░░█░ +--- ░▀▀▀░▀▀▀ + +require("ui") + + + + + + + + + +--- ░█▀▀░█▀█░█▀▄░█▀▄░█▀█░█▀▀░█▀▀ +--- ░█░█░█▀█░█▀▄░█▀▄░█▀█░█░█░█▀▀ +--- ░▀▀▀░▀░▀░▀░▀░▀▀░░▀░▀░▀▀▀░▀▀▀ + +--- Enable for lower memory consumption +collectgarbage("setpause", 110) +collectgarbage("setstepmul", 1000) +gears.timer({ + timeout = 5, + autostart = true, + call_now = true, + callback = function() + collectgarbage("collect") + end, +}) + + diff --git a/src/editor.c b/src/editor.c index 35dbdf10..b4c09397 100644 --- a/src/editor.c +++ b/src/editor.c @@ -17,7 +17,6 @@ bool is_animated = false; // or false, depending on your initial requirement int currentThemeIndex = 0; - void initialize_themes() { // Catppuccin @@ -50,7 +49,7 @@ void initialize_themes() { .falsee = hex_to_vec4f(0xf38ba8FF), // Red .arrow = hex_to_vec4f(0xf9e2afFF), // Yellow .open_square = hex_to_vec4f(0x89b4faFF), // Blue - .close_square = hex_to_vec4f(0xa6e3a1FF), // Blue + .close_square = hex_to_vec4f(0x89b4faFF), // Blue .array_content = hex_to_vec4f(0x74c7ecFF), // Sapphire }; @@ -882,7 +881,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color = themes[currentThemeIndex].array_content; break; - case TOKEN_STRING: /* color = hex_to_vec4f(0x73c936ff); */ color = themes[currentThemeIndex].string; From 903a3b38c01e413b759c1035fe584c9bfd31762c Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 20 Sep 2023 01:23:49 +0000 Subject: [PATCH 18/74] change-font --- build.sh | 24 ++++++- src/editor.c | 53 +++++++++------ src/main.c | 181 ++++++++++++++++++++++++++++++++++++++++++++++----- 3 files changed, 218 insertions(+), 40 deletions(-) diff --git a/build.sh b/build.sh index 952e8c88..197bf812 100755 --- a/build.sh +++ b/build.sh @@ -4,12 +4,11 @@ set -xe CC="${CXX:-cc}" PKGS="sdl2 glew freetype2" -CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb" +CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -D_DEFAULT_SOURCE" LIBS=-lm # SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c" SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c src/repl.c" - if [ `uname` = "Darwin" ]; then CFLAGS+=" -framework OpenGL" fi @@ -19,6 +18,27 @@ $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PK +#!/bin/sh + +# set -xe +# +# CC="${CXX:-cc}" +# PKGS="sdl2 glew freetype2" +# CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb" +# LIBS=-lm +# # SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c" +# SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c src/repl.c" +# +# +# if [ `uname` = "Darwin" ]; then +# CFLAGS+=" -framework OpenGL" +# fi +# +# $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS` + + + + # ORIGINAL # set -xe diff --git a/src/editor.c b/src/editor.c index b4c09397..e0595ea7 100644 --- a/src/editor.c +++ b/src/editor.c @@ -5,13 +5,14 @@ #include #include "./editor.h" #include "./common.h" +#include "./free_glyph.h" EvilMode current_mode = NORMAL; float zoom_factor = 5.0f; Theme themes[10]; -bool showLineNumbers = true; // This is the actual definition and initialization -bool is_animated = false; // or false, depending on your initial requirement +bool showLineNumbers = false; // This is the actual definition and initialization +bool is_animated = true; // or false, depending on your initial requirement int currentThemeIndex = 0; @@ -994,15 +995,41 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; + // original + /* } else { */ + /* static bool hasShifted = false; // This will ensure the code inside the if-block runs once */ + /* sr->camera_scale = 0.24f; // Set the zoom level to 0.5 */ + + /* if (!hasShifted) { */ + /* sr->camera_pos.x = 3850.0f; // Set the x-position */ + /* sr->camera_pos.y = -2000.0f; // Set the initial y-position */ + /* /\* hasShifted = true; // Mark as shifted *\/ */ + /* } else { */ + /* // Determine the height of a line */ + /* Vec2f pos = {0.0f, 0.0f}; */ + /* const char *sampleText = "Sample text to measure."; */ + /* free_glyph_atlas_measure_line_sized(atlas, sampleText, strlen(sampleText), &pos); */ + /* float lineHeight = pos.y; */ + + /* // Check the current cursor line position and adjust camera's Y-position if necessary */ + /* int currentLine = editor_cursor_row(editor); */ + /* if (currentLine > 66) { */ + /* sr->camera_pos.y = -2000.0f - (lineHeight * (currentLine - 66)); */ + /* } */ + /* } */ + /* } */ } else { static bool hasShifted = false; // This will ensure the code inside the if-block runs once - sr->camera_scale = 0.24f; // Set the zoom level to 0.5 + sr->camera_scale = 0.24f * zoom_factor; // Adjust the zoom based on zoom_factor. if (!hasShifted) { sr->camera_pos.x = 3850.0f; // Set the x-position sr->camera_pos.y = -2000.0f; // Set the initial y-position - /* hasShifted = true; // Mark as shifted */ + + /* Apply a shift factor based on zoom. */ + sr->camera_pos.x *= zoom_factor; + sr->camera_pos.y *= zoom_factor; } else { // Determine the height of a line Vec2f pos = {0.0f, 0.0f}; @@ -1013,29 +1040,13 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Check the current cursor line position and adjust camera's Y-position if necessary int currentLine = editor_cursor_row(editor); if (currentLine > 66) { - sr->camera_pos.y = -2000.0f - (lineHeight * (currentLine - 66)); + sr->camera_pos.y = (-2000.0f * zoom_factor) - (lineHeight * (currentLine - 66)); } } } } } - - - /* } else { */ - /* static bool hasShifted = false; // This will ensure the code inside the if-block runs once */ - - /* sr->camera_scale = 0.24f; // Set the zoom level to 0.5 */ - /* if (!hasShifted) { */ - /* sr->camera_pos.x = 2150.0f; // Set the x-position */ - /* sr->camera_pos.y = -2000.0f; // Set the y-position */ - /* hasShifted = true; // Mark as shifted */ - /* } */ - /* } */ - - - - void editor_clipboard_copy(Editor *e) { if (e->searching) return; diff --git a/src/main.c b/src/main.c index 435e5475..94700e38 100644 --- a/src/main.c +++ b/src/main.c @@ -5,6 +5,7 @@ #include #include "common.h" +#include #include #define GLEW_STATIC @@ -34,6 +35,15 @@ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) +#define FONT_DIR "~/.config/ded/fonts/" +#define DEFAULT_FONT "jet-extra-bold.ttf" +#define MAX_FONTS 100 +#define MAX_PATH_SIZE 1024 + +char *fonts[MAX_FONTS]; +int font_count = 0; +int current_font_index = 0; + // TODO: Save file dialog // Needed when ded is ran without any file so it does not know where to save. @@ -67,6 +77,96 @@ static File_Browser fb = {0}; static Repl repl = {0}; +FT_Face load_font_face(FT_Library library, const char *font_name) { + char font_path[MAX_PATH_SIZE]; + const char *homeDir = getenv("HOME"); + snprintf(font_path, sizeof(font_path), "%s/.config/ded/fonts/%s", homeDir, font_name); + + FT_Face face; + FT_Error error = FT_New_Face(library, font_path, 0, &face); + if (error == FT_Err_Unknown_File_Format) { + fprintf(stderr, "ERROR: `%s` has an unknown format\n", font_path); + exit(1); + } else if (error) { + fprintf(stderr, "ERROR: Could not load file `%s`\n", font_path); + exit(1); + } + + return face; +} + + + + + +void prev_font(FT_Library library) { + if (current_font_index > 0) { + current_font_index--; + } else { + current_font_index = font_count - 1; // wrap around to the last font + } + + FT_Face face = load_font_face(library, fonts[current_font_index]); + // TODO: Apply the face to your text rendering system +} + +void next_font(FT_Library library) { + if (current_font_index < font_count - 1) { + current_font_index++; + } else { + current_font_index = 0; // wrap around to the first font + } + + FT_Face face = load_font_face(library, fonts[current_font_index]); + // TODO: Apply the face to your text rendering system +} + + + +void populate_font_list() { + char path[MAX_PATH_SIZE]; + const char *homeDir = getenv("HOME"); + if (!homeDir) { + fprintf(stderr, "ERROR: Could not get HOME directory\n"); + exit(1); + } + + snprintf(path, sizeof(path), "%s/.config/ded/fonts/", homeDir); + + DIR *dir = opendir(path); + if (!dir) { + fprintf(stderr, "ERROR: Could not open directory `%s`\n", path); + exit(1); + } + + struct dirent *entry; + while ((entry = readdir(dir)) && font_count < MAX_FONTS) { + if (entry->d_type == DT_REG) { // If the entry is a regular file + fonts[font_count] = strdup(entry->d_name); + font_count++; + } + } + closedir(dir); +} + + + + +void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas *atlas, int direction) { + if (direction > 0) { + next_font(library); + } else { + prev_font(library); + } + *currentFace = load_font_face(library, fonts[current_font_index]); + + // Dispose the old texture + /* glDeleteTextures(1, &atlas->glyphs_texture); */ + + // Reinitialize the atlas with the new font face + free_glyph_atlas_init(atlas, *currentFace); +} + // TODO: display errors reported via flash_error right in the text editor window somehow @@ -97,27 +197,52 @@ int main(int argc, char **argv) /* const char *const font_file_path = "./fonts/iosevka-regular.ttf"; */ - char font_file_path_buffer[1024]; - const char *homeDir = getenv("HOME"); - if (homeDir) { - snprintf(font_file_path_buffer, sizeof(font_file_path_buffer), "%s/.config/ded/fonts/jet-extra-bold.ttf", homeDir); - } else { - // handle the error, for now, we'll just set it to the original value as a fallback - strncpy(font_file_path_buffer, "~/.config/ded/fonts/jet-extra-bold.ttf", sizeof(font_file_path_buffer)); - } - const char *const font_file_path = font_file_path_buffer; + /* char font_file_path_buffer[1024]; */ + /* const char *homeDir = getenv("HOME"); */ + /* if (homeDir) { */ + /* snprintf(font_file_path_buffer, sizeof(font_file_path_buffer), "%s/.config/ded/fonts/minecraft_font.ttf", homeDir); */ + /* } else { */ + /* // handle the error, for now, we'll just set it to the original value as a fallback */ + /* strncpy(font_file_path_buffer, "~/.config/ded/fonts/jet-extra-bold.ttf", sizeof(font_file_path_buffer)); */ + /* } */ + /* const char *const font_file_path = font_file_path_buffer; */ - FT_Face face; - error = FT_New_Face(library, font_file_path, 0, &face); - if (error == FT_Err_Unknown_File_Format) { - fprintf(stderr, "ERROR: `%s` has an unknown format\n", font_file_path); - return 1; - } else if (error) { - fprintf(stderr, "ERROR: Could not load file `%s`\n", font_file_path); - return 1; + + populate_font_list(); + + if (font_count == 0) { + fprintf(stderr, "ERROR: No fonts found in `%s`\n", FONT_DIR); + return 1; } + // Start with the default font + for (int i = 0; i < font_count; i++) { + if (strcmp(fonts[i], DEFAULT_FONT) == 0) { + current_font_index = i; + break; + } + } + + FT_Face face = load_font_face(library, fonts[current_font_index]); + + + + + + + /* original */ + /* FT_Face face; */ + /* error = FT_New_Face(library, font_file_path, 0, &face); */ + /* if (error == FT_Err_Unknown_File_Format) { */ + /* fprintf(stderr, "ERROR: `%s` has an unknown format\n", font_file_path); */ + /* return 1; */ + /* } else if (error) { */ + /* fprintf(stderr, "ERROR: Could not load file `%s`\n", font_file_path); */ + /* return 1; */ + /* } */ + + FT_UInt pixel_size = FREE_GLYPH_FONT_SIZE; error = FT_Set_Pixel_Sizes(face, 0, pixel_size); if (error) { @@ -391,6 +516,28 @@ int main(int argc, char **argv) } break; + + case SDLK_LEFTBRACKET: + if (SDL_GetModState() & KMOD_ALT) { + switch_to_font(library, &face, &atlas, -1); + printf("Switched to previous font: %s\n", fonts[current_font_index]); + /* redraw_screen(); */ + } + break; + + case SDLK_RIGHTBRACKET: + if (SDL_GetModState() & KMOD_ALT) { + switch_to_font(library, &face, &atlas, 1); + printf("Switched to next font: %s\n", fonts[current_font_index]); + /* redraw_screen(); */ + } + break; + + + + + + case SDLK_TAB: { // TODO: indent on Tab instead of just inserting 4 spaces at the cursor // That is insert the spaces at the beginning of the line. Shift+TAB should From b6f019bb0954ef492841b4337bfd82bb9e9ac33a Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 20 Sep 2023 22:19:42 +0000 Subject: [PATCH 19/74] font-fix --- src/editor.c | 60 ++++++++++++++++++++++++++-------------------------- src/main.c | 52 ++++++++++++++++++++++----------------------- 2 files changed, 56 insertions(+), 56 deletions(-) diff --git a/src/editor.c b/src/editor.c index e0595ea7..eaebc5fc 100644 --- a/src/editor.c +++ b/src/editor.c @@ -545,7 +545,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->time = (float) SDL_GetTicks() / 1000.0f; float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; - Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed + /* Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed */ // Render selection @@ -996,40 +996,14 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; // original - /* } else { */ - /* static bool hasShifted = false; // This will ensure the code inside the if-block runs once */ - /* sr->camera_scale = 0.24f; // Set the zoom level to 0.5 */ - - /* if (!hasShifted) { */ - /* sr->camera_pos.x = 3850.0f; // Set the x-position */ - /* sr->camera_pos.y = -2000.0f; // Set the initial y-position */ - /* /\* hasShifted = true; // Mark as shifted *\/ */ - /* } else { */ - /* // Determine the height of a line */ - /* Vec2f pos = {0.0f, 0.0f}; */ - /* const char *sampleText = "Sample text to measure."; */ - /* free_glyph_atlas_measure_line_sized(atlas, sampleText, strlen(sampleText), &pos); */ - /* float lineHeight = pos.y; */ - - /* // Check the current cursor line position and adjust camera's Y-position if necessary */ - /* int currentLine = editor_cursor_row(editor); */ - /* if (currentLine > 66) { */ - /* sr->camera_pos.y = -2000.0f - (lineHeight * (currentLine - 66)); */ - /* } */ - /* } */ - /* } */ - } else { static bool hasShifted = false; // This will ensure the code inside the if-block runs once - sr->camera_scale = 0.24f * zoom_factor; // Adjust the zoom based on zoom_factor. + sr->camera_scale = 0.24f; // Set the zoom level to 0.5 if (!hasShifted) { sr->camera_pos.x = 3850.0f; // Set the x-position sr->camera_pos.y = -2000.0f; // Set the initial y-position - - /* Apply a shift factor based on zoom. */ - sr->camera_pos.x *= zoom_factor; - sr->camera_pos.y *= zoom_factor; + /* hasShifted = true; // Mark as shifted */ } else { // Determine the height of a line Vec2f pos = {0.0f, 0.0f}; @@ -1040,10 +1014,36 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Check the current cursor line position and adjust camera's Y-position if necessary int currentLine = editor_cursor_row(editor); if (currentLine > 66) { - sr->camera_pos.y = (-2000.0f * zoom_factor) - (lineHeight * (currentLine - 66)); + sr->camera_pos.y = -2000.0f - (lineHeight * (currentLine - 66)); } } } + + /* } else { */ + /* static bool hasShifted = false; // This will ensure the code inside the if-block runs once */ + /* sr->camera_scale = 0.24f * zoom_factor; // Adjust the zoom based on zoom_factor. */ + + /* if (!hasShifted) { */ + /* sr->camera_pos.x = 3850.0f; // Set the x-position */ + /* sr->camera_pos.y = -2000.0f; // Set the initial y-position */ + + /* /\* Apply a shift factor based on zoom. *\/ */ + /* sr->camera_pos.x *= zoom_factor; */ + /* sr->camera_pos.y *= zoom_factor; */ + /* } else { */ + /* // Determine the height of a line */ + /* Vec2f pos = {0.0f, 0.0f}; */ + /* const char *sampleText = "Sample text to measure."; */ + /* free_glyph_atlas_measure_line_sized(atlas, sampleText, strlen(sampleText), &pos); */ + /* float lineHeight = pos.y; */ + + /* // Check the current cursor line position and adjust camera's Y-position if necessary */ + /* int currentLine = editor_cursor_row(editor); */ + /* if (currentLine > 66) { */ + /* sr->camera_pos.y = (-2000.0f * zoom_factor) - (lineHeight * (currentLine - 66)); */ + /* } */ + /* } */ + /* } */ } } diff --git a/src/main.c b/src/main.c index 94700e38..4f1be187 100644 --- a/src/main.c +++ b/src/main.c @@ -36,7 +36,8 @@ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) #define FONT_DIR "~/.config/ded/fonts/" -#define DEFAULT_FONT "jet-extra-bold.ttf" +/* #define DEFAULT_FONT "jet-extra-bold.ttf" */ +#define DEFAULT_FONT "Letters.ttf" #define MAX_FONTS 100 #define MAX_PATH_SIZE 1024 @@ -77,7 +78,8 @@ static File_Browser fb = {0}; static Repl repl = {0}; -FT_Face load_font_face(FT_Library library, const char *font_name) { +FT_Face load_font_face(FT_Library library, const char *font_name, FT_UInt pixel_size) { + printf("Loading font: %s at index: %d\n", font_name, current_font_index); char font_path[MAX_PATH_SIZE]; const char *homeDir = getenv("HOME"); snprintf(font_path, sizeof(font_path), "%s/.config/ded/fonts/%s", homeDir, font_name); @@ -92,37 +94,36 @@ FT_Face load_font_face(FT_Library library, const char *font_name) { exit(1); } + error = FT_Set_Pixel_Sizes(face, 0, pixel_size); // Set pixel size for the loaded font face + if (error) { + fprintf(stderr, "ERROR: Could not set pixel size to %u\n", pixel_size); + return NULL; // or handle the error in a different way + } + return face; } - - - - void prev_font(FT_Library library) { - if (current_font_index > 0) { - current_font_index--; - } else { - current_font_index = font_count - 1; // wrap around to the last font + if (current_font_index == 0) { + // Already at the first font, don't do anything. + return; } - - FT_Face face = load_font_face(library, fonts[current_font_index]); + current_font_index--; + FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); // TODO: Apply the face to your text rendering system } void next_font(FT_Library library) { - if (current_font_index < font_count - 1) { - current_font_index++; - } else { - current_font_index = 0; // wrap around to the first font + if (current_font_index == font_count - 1) { + // Already at the last font, don't do anything. + return; } - - FT_Face face = load_font_face(library, fonts[current_font_index]); + current_font_index++; + FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); // TODO: Apply the face to your text rendering system } - void populate_font_list() { char path[MAX_PATH_SIZE]; const char *homeDir = getenv("HOME"); @@ -151,14 +152,15 @@ void populate_font_list() { - void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas *atlas, int direction) { if (direction > 0) { next_font(library); } else { prev_font(library); } - *currentFace = load_font_face(library, fonts[current_font_index]); + /* *currentFace = load_font_face(library, fonts[current_font_index]); */ + *currentFace = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); + // Dispose the old texture /* glDeleteTextures(1, &atlas->glyphs_texture); */ @@ -224,7 +226,9 @@ int main(int argc, char **argv) } } - FT_Face face = load_font_face(library, fonts[current_font_index]); + /* FT_Face face = load_font_face(library, fonts[current_font_index]); */ + FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); + @@ -534,10 +538,6 @@ int main(int argc, char **argv) break; - - - - case SDLK_TAB: { // TODO: indent on Tab instead of just inserting 4 spaces at the cursor // That is insert the spaces at the beginning of the line. Shift+TAB should From cce174df359db7c2249dbfd1d2eda0723835d271 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 20 Sep 2023 22:40:27 +0000 Subject: [PATCH 20/74] lexer-fix --- src/editor.c | 4 +- src/lexer.c | 160 +++++++++++++++++++++++++++++++-------------------- src/lexer.h | 4 +- 3 files changed, 102 insertions(+), 66 deletions(-) diff --git a/src/editor.c b/src/editor.c index eaebc5fc..eb1ecac0 100644 --- a/src/editor.c +++ b/src/editor.c @@ -496,8 +496,8 @@ void editor_retokenize(Editor *e) // Syntax Highlighting { e->tokens.count = 0; - /* Lexer l = lexer_new(e->atlas, e->data.items, e->data.count); */ - Lexer l = lexer_new(e->atlas, e->data.items, e->data.count, e->file_path); + Lexer l = lexer_new(e->atlas, e->data.items, e->data.count); + /* Lexer l = lexer_new(e->atlas, e->data.items, e->data.count, e->file_path); */ Token t = lexer_next(&l); while (t.kind != TOKEN_END) { da_append(&e->tokens, t); diff --git a/src/lexer.c b/src/lexer.c index 10e4a3d0..25d64487 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -114,28 +114,28 @@ const char *token_kind_name(Token_Kind kind) } // ORIGINAL -/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len) */ -/* { */ -/* Lexer l = {0}; */ -/* l.atlas = atlas; */ -/* l.content = content; */ -/* l.content_len = content_len; */ -/* return l; */ -/* } */ - -Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path) +Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len) { Lexer l = {0}; l.atlas = atlas; l.content = content; l.content_len = content_len; - if (file_path.items != NULL) { - l.file_path.items = (char*) malloc(sizeof(char*) * (strlen(file_path.items) + 1)); - strcpy(l.file_path.items, file_path.items); - } return l; } +/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path) */ +/* { */ +/* Lexer l = {0}; */ +/* l.atlas = atlas; */ +/* l.content = content; */ +/* l.content_len = content_len; */ +/* if (file_path.items != NULL) { */ +/* l.file_path.items = (char*) malloc(sizeof(char*) * (strlen(file_path.items) + 1)); */ +/* strcpy(l.file_path.items, file_path.items); */ +/* } */ +/* return l; */ +/* } */ + bool lexer_starts_with(Lexer *l, const char *prefix) { size_t prefix_len = strlen(prefix); @@ -411,6 +411,84 @@ Token lexer_next(Lexer *l) return token; } + /* if (is_symbol_start(l->content[l->cursor])) { */ + /* token.kind = TOKEN_SYMBOL; */ + /* while (l->cursor < l->content_len && is_symbol(l->content[l->cursor])) { */ + /* lexer_chop_char(l, 1); */ + /* token.text_len += 1; */ + /* } */ + + /* if (l->file_path.items == NULL) */ + /* return token; */ + + /* const char* file_ext; */ + /* const char* filename = l->file_path.items; */ + /* const char *dot = strrchr(filename, '.'); */ + /* if(!dot || dot == filename) */ + /* file_ext = ""; */ + /* else */ + /* file_ext = dot + 1; */ + +/* /\* for (size_t i = 0; i < cKeywords_count; ++i) { *\/ */ +/* /\* size_t keyword_len = strlen(cKeywords[i]); *\/ */ +/* /\* if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { *\/ */ +/* /\* token.kind = TOKEN_KEYWORD; *\/ */ +/* /\* break; *\/ */ + +/* if (strcmp(file_ext, "java") == 0) { */ +/* for (size_t i = 0; i < jKeywords_count; ++i) { */ +/* size_t keyword_len = strlen(jKeywords[i]); */ +/* if (keyword_len == token.text_len && memcmp(jKeywords[i], token.text, keyword_len) == 0) { */ +/* token.kind = TOKEN_KEYWORD; */ +/* break; */ +/* } */ +/* } */ +/* } else if (strcmp(file_ext, "py") == 0) { */ +/* for (size_t i = 0; i < pyKeywords_count; ++i) { */ +/* size_t keyword_len = strlen(pyKeywords[i]); */ +/* if (keyword_len == token.text_len && memcmp(pyKeywords[i], token.text, keyword_len) == 0) { */ +/* token.kind = TOKEN_KEYWORD; */ +/* break; */ +/* } */ +/* } */ +/* } else if (strcmp(file_ext, "c") == 0) { */ +/* for (size_t i = 0; i < cKeywords_count; ++i) { */ +/* size_t keyword_len = strlen(cKeywords[i]); */ +/* if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { */ +/* token.kind = TOKEN_KEYWORD; */ +/* break; */ +/* } */ +/* } */ +/* } else { */ +/* for (size_t i = 0; i < cKeywords_count; ++i) { */ +/* size_t keyword_len = strlen(cKeywords[i]); */ +/* if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { */ +/* token.kind = TOKEN_KEYWORD; */ +/* break; */ +/* } */ +/* } */ +/* } */ +/* return token; */ +/* } */ + +/* lexer_chop_char(l, 1); */ +/* token.kind = TOKEN_INVALID; */ +/* token.text_len = 1; */ +/* return token; */ +/* } */ + + + for (size_t i = 0; i < literal_tokens_count; ++i) { + if (lexer_starts_with(l, literal_tokens[i].text)) { + // NOTE: this code assumes that there is no newlines in literal_tokens[i].text + size_t text_len = strlen(literal_tokens[i].text); + token.kind = literal_tokens[i].kind; + token.text_len = text_len; + lexer_chop_char(l, text_len); + return token; + } + } + if (is_symbol_start(l->content[l->cursor])) { token.kind = TOKEN_SYMBOL; while (l->cursor < l->content_len && is_symbol(l->content[l->cursor])) { @@ -418,56 +496,14 @@ Token lexer_next(Lexer *l) token.text_len += 1; } - if (l->file_path.items == NULL) - return token; - - const char* file_ext; - const char* filename = l->file_path.items; - const char *dot = strrchr(filename, '.'); - if(!dot || dot == filename) - file_ext = ""; - else - file_ext = dot + 1; - - /* for (size_t i = 0; i < keywords_count; ++i) { */ - /* size_t keyword_len = strlen(keywords[i]); */ - /* if (keyword_len == token.text_len && memcmp(keywords[i], token.text, keyword_len) == 0) { */ - /* token.kind = TOKEN_KEYWORD; */ - /* break; */ - - if (strcmp(file_ext, "java") == 0) { - for (size_t i = 0; i < jKeywords_count; ++i) { - size_t keyword_len = strlen(jKeywords[i]); - if (keyword_len == token.text_len && memcmp(jKeywords[i], token.text, keyword_len) == 0) { - token.kind = TOKEN_KEYWORD; - break; - } - } - } else if (strcmp(file_ext, "py") == 0) { - for (size_t i = 0; i < pyKeywords_count; ++i) { - size_t keyword_len = strlen(pyKeywords[i]); - if (keyword_len == token.text_len && memcmp(pyKeywords[i], token.text, keyword_len) == 0) { - token.kind = TOKEN_KEYWORD; - break; - } - } - } else if (strcmp(file_ext, "c") == 0) { - for (size_t i = 0; i < cKeywords_count; ++i) { - size_t keyword_len = strlen(cKeywords[i]); - if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { - token.kind = TOKEN_KEYWORD; - break; - } - } - } else { - for (size_t i = 0; i < cKeywords_count; ++i) { - size_t keyword_len = strlen(cKeywords[i]); - if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { - token.kind = TOKEN_KEYWORD; - break; - } + for (size_t i = 0; i < cKeywords_count; ++i) { + size_t keyword_len = strlen(cKeywords[i]); + if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { + token.kind = TOKEN_KEYWORD; + break; } } + return token; } diff --git a/src/lexer.h b/src/lexer.h index 61e3f6b0..feebbed7 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -58,8 +58,8 @@ typedef struct { bool in_array; // to remember if we are inside an array } Lexer; -/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len); */ -Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path); +Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len); +/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path); */ Token lexer_next(Lexer *l); #endif // LEXER_H_ From 32574c31d3dd57d71e90e6b82f92b638b7260c67 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 20 Sep 2023 22:46:44 +0000 Subject: [PATCH 21/74] lexer-fix --- src/lexer.c | 102 ---------------------------------------------------- 1 file changed, 102 deletions(-) diff --git a/src/lexer.c b/src/lexer.c index 25d64487..17fbc3c8 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -25,13 +25,6 @@ Literal_Token literal_tokens[] = { }; #define literal_tokens_count (sizeof(literal_tokens)/sizeof(literal_tokens[0])) - -const char *jKeywords[] = { - "abstract", "assert", "boolean", "break", "byte", "case", "catch", "char", "class", "const", "continue", "default", "do", "double", "else", "enum", "extends", "final", "finally", "float", "for", "goto", "if", "implements", "import", "instanceof", "int", "interface", "long", "native", "new", "package", "private", "protected", "public", "return", "short", "static", "super", "switch", "synchronized", "this", "throw", "throws", "transient", "try", "void", "volatile", "while", "non-sealed", "open", "opens", "permits", "provides", "record", "sealed", "to", "transitive", "uses", "var", "with", "yield", "true", "false", "null", "const", "goto", "strictfp", -}; -#define jKeywords_count (sizeof(jKeywords)/sizeof(jKeywords[0])) - - const char *cKeywords[] = { "auto", "break", "case", "char", "const", "continue", "default", "do", "double", "else", "enum", "extern", "float", "for", "goto", "if", "int", "long", "register", @@ -52,12 +45,6 @@ const char *cKeywords[] = { #define cKeywords_count (sizeof(cKeywords)/sizeof(cKeywords[0])) -const char *pyKeywords[] = { - "False", "None", "True", "and", "as", "assert", "async", "await", "break", "class", "continue", "def", "del", "elif", "else", "except", "finally", "for", "from", "global", "if", "import", "in", "is", "lambda", "nonlocal", "not", "or", "pass", "raise", "return", "try", "while", "with", "yield", -}; -#define pyKeywords_count (sizeof(pyKeywords)/sizeof(pyKeywords[0])) - - const char *token_kind_name(Token_Kind kind) { switch (kind) { @@ -113,7 +100,6 @@ const char *token_kind_name(Token_Kind kind) return NULL; } -// ORIGINAL Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len) { Lexer l = {0}; @@ -123,19 +109,6 @@ Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len return l; } -/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path) */ -/* { */ -/* Lexer l = {0}; */ -/* l.atlas = atlas; */ -/* l.content = content; */ -/* l.content_len = content_len; */ -/* if (file_path.items != NULL) { */ -/* l.file_path.items = (char*) malloc(sizeof(char*) * (strlen(file_path.items) + 1)); */ -/* strcpy(l.file_path.items, file_path.items); */ -/* } */ -/* return l; */ -/* } */ - bool lexer_starts_with(Lexer *l, const char *prefix) { size_t prefix_len = strlen(prefix); @@ -271,9 +244,6 @@ Token lexer_next(Lexer *l) } } - - - // Check for arrays if (l->cursor < l->content_len) { char current_char = l->content[l->cursor]; @@ -312,11 +282,6 @@ Token lexer_next(Lexer *l) } } - - - - - // Check for boolean literals "true" and "false" if ((l->cursor + 3 < l->content_len) && (strncmp(&l->content[l->cursor], "true", 4) == 0) && @@ -411,73 +376,6 @@ Token lexer_next(Lexer *l) return token; } - /* if (is_symbol_start(l->content[l->cursor])) { */ - /* token.kind = TOKEN_SYMBOL; */ - /* while (l->cursor < l->content_len && is_symbol(l->content[l->cursor])) { */ - /* lexer_chop_char(l, 1); */ - /* token.text_len += 1; */ - /* } */ - - /* if (l->file_path.items == NULL) */ - /* return token; */ - - /* const char* file_ext; */ - /* const char* filename = l->file_path.items; */ - /* const char *dot = strrchr(filename, '.'); */ - /* if(!dot || dot == filename) */ - /* file_ext = ""; */ - /* else */ - /* file_ext = dot + 1; */ - -/* /\* for (size_t i = 0; i < cKeywords_count; ++i) { *\/ */ -/* /\* size_t keyword_len = strlen(cKeywords[i]); *\/ */ -/* /\* if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { *\/ */ -/* /\* token.kind = TOKEN_KEYWORD; *\/ */ -/* /\* break; *\/ */ - -/* if (strcmp(file_ext, "java") == 0) { */ -/* for (size_t i = 0; i < jKeywords_count; ++i) { */ -/* size_t keyword_len = strlen(jKeywords[i]); */ -/* if (keyword_len == token.text_len && memcmp(jKeywords[i], token.text, keyword_len) == 0) { */ -/* token.kind = TOKEN_KEYWORD; */ -/* break; */ -/* } */ -/* } */ -/* } else if (strcmp(file_ext, "py") == 0) { */ -/* for (size_t i = 0; i < pyKeywords_count; ++i) { */ -/* size_t keyword_len = strlen(pyKeywords[i]); */ -/* if (keyword_len == token.text_len && memcmp(pyKeywords[i], token.text, keyword_len) == 0) { */ -/* token.kind = TOKEN_KEYWORD; */ -/* break; */ -/* } */ -/* } */ -/* } else if (strcmp(file_ext, "c") == 0) { */ -/* for (size_t i = 0; i < cKeywords_count; ++i) { */ -/* size_t keyword_len = strlen(cKeywords[i]); */ -/* if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { */ -/* token.kind = TOKEN_KEYWORD; */ -/* break; */ -/* } */ -/* } */ -/* } else { */ -/* for (size_t i = 0; i < cKeywords_count; ++i) { */ -/* size_t keyword_len = strlen(cKeywords[i]); */ -/* if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { */ -/* token.kind = TOKEN_KEYWORD; */ -/* break; */ -/* } */ -/* } */ -/* } */ -/* return token; */ -/* } */ - -/* lexer_chop_char(l, 1); */ -/* token.kind = TOKEN_INVALID; */ -/* token.text_len = 1; */ -/* return token; */ -/* } */ - - for (size_t i = 0; i < literal_tokens_count; ++i) { if (lexer_starts_with(l, literal_tokens[i].text)) { // NOTE: this code assumes that there is no newlines in literal_tokens[i].text From f9adeade69e8d0494db1db4475e52dcc783752c7 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 20 Sep 2023 23:28:32 +0000 Subject: [PATCH 22/74] dynamic-shaders1 --- src/main.c | 1 + src/simple_renderer.c | 33 +++++++++++++++++++++++++++++++++ src/simple_renderer.h | 4 ++++ 3 files changed, 38 insertions(+) diff --git a/src/main.c b/src/main.c index 4f1be187..217af85d 100644 --- a/src/main.c +++ b/src/main.c @@ -181,6 +181,7 @@ int main(int argc, char **argv) { initialize_themes(); + /* resolve_shader_path(); */ Errno err; diff --git a/src/simple_renderer.c b/src/simple_renderer.c index c12a115c..b13fe250 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -8,6 +8,9 @@ #include "./common.h" #include "./editor.h" +#include + +// hardocded #define vert_shader_file_path "./shaders/simple.vert" static_assert(COUNT_SIMPLE_SHADERS == 4, "The amount of fragment shaders has changed"); @@ -18,6 +21,36 @@ const char *frag_shader_file_paths[COUNT_SIMPLE_SHADERS] = { [SHADER_FOR_EPICNESS] = "./shaders/simple_epic.frag", }; + + +// TODO +/* #define COUNT_SIMPLE_SHADERS 4 */ +/* static_assert(COUNT_SIMPLE_SHADERS == 4, "The amount of fragment shaders has changed"); */ + +/* const char *resolve_shader_path(const char *shader_file_name) { */ +/* static char resolved_path[512]; */ +/* const char* home_dir = getenv("HOME"); */ +/* if (!home_dir) { */ +/* fprintf(stderr, "Error: HOME environment variable not set\n"); */ +/* exit(EXIT_FAILURE); // Exit if HOME is not found */ +/* } */ +/* snprintf(resolved_path, sizeof(resolved_path), "%s/.config/ded/shaders/%s", home_dir, shader_file_name); */ +/* return resolved_path; */ +/* } */ + +/* const char *vert_shader_file_path = resolve_shader_path("simple.vert"); */ +/* const char *frag_shader_file_paths[COUNT_SIMPLE_SHADERS] = { */ +/* [SHADER_FOR_COLOR] = resolve_shader_path("simple_color.frag"), */ +/* [SHADER_FOR_IMAGE] = resolve_shader_path("simple_image.frag"), */ +/* [SHADER_FOR_TEXT] = resolve_shader_path("simple_text.frag"), */ +/* [SHADER_FOR_EPICNESS] = resolve_shader_path("simple_epic.frag"), */ +/* }; */ + + + + + + static const char *shader_type_as_cstr(GLuint shader) { switch (shader) { diff --git a/src/simple_renderer.h b/src/simple_renderer.h index b67bdb03..279fd564 100644 --- a/src/simple_renderer.h +++ b/src/simple_renderer.h @@ -62,6 +62,8 @@ typedef struct { Vec2f camera_vel; } Simple_Renderer; +extern const char *vert_shader_file_path; + void simple_renderer_init(Simple_Renderer *sr); void simple_renderer_reload_shaders(Simple_Renderer *sr); @@ -83,4 +85,6 @@ void simple_renderer_flush(Simple_Renderer *sr); void simple_renderer_sync(Simple_Renderer *sr); void simple_renderer_draw(Simple_Renderer *sr); +/* const char *resolve_shader_path(const char *shader_file_name); */ + #endif // SIMPLE_RENDERER_H_ From 170df427fe859c0acb2a9e7cf1ad09165b525f60 Mon Sep 17 00:00:00 2001 From: laluxx Date: Thu, 21 Sep 2023 01:31:09 +0000 Subject: [PATCH 23/74] relative-line-numbers --- src/editor.c | 90 +++++++++++++++++++++++++++++++++++++++++++++------- src/editor.h | 1 + src/todo.org | 40 +++++++++++++++++++++++ 3 files changed, 119 insertions(+), 12 deletions(-) create mode 100644 src/todo.org diff --git a/src/editor.c b/src/editor.c index eb1ecac0..b13ebde7 100644 --- a/src/editor.c +++ b/src/editor.c @@ -14,6 +14,9 @@ Theme themes[10]; bool showLineNumbers = false; // This is the actual definition and initialization bool is_animated = true; // or false, depending on your initial requirement +bool highlight_current_line = true; +bool relative_line_numbers = true; + int currentThemeIndex = 0; @@ -51,6 +54,7 @@ void initialize_themes() { .arrow = hex_to_vec4f(0xf9e2afFF), // Yellow .open_square = hex_to_vec4f(0x89b4faFF), // Blue .close_square = hex_to_vec4f(0x89b4faFF), // Blue + .current_line_number = hex_to_vec4f(0x89b4faFF), // Blue .array_content = hex_to_vec4f(0x74c7ecFF), // Sapphire }; @@ -674,10 +678,15 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + + /* if (showLineNumbers) { */ /* // Render line numbers */ /* simple_renderer_set_shader(sr, SHADER_FOR_TEXT); */ + /* // Get the color for line numbers from the current theme */ + /* Vec4f color = themes[currentThemeIndex].line_numbers; */ + /* // Calculate the width for the line numbers, say every line number takes up to 5 characters of space */ /* for (size_t i = 0; i < editor->lines.count; ++i) { */ @@ -688,7 +697,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer /* pos.x = 0; // Start from the left edge of the window */ /* pos.y = -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; */ - /* free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, lineNumberColor); */ + /* // Use the theme color for line numbers */ + /* free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, color); */ /* } */ /* simple_renderer_flush(sr); */ @@ -696,30 +706,86 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer if (showLineNumbers) { - // Render line numbers simple_renderer_set_shader(sr, SHADER_FOR_TEXT); - // Get the color for line numbers from the current theme - Vec4f color = themes[currentThemeIndex].line_numbers; + // Determine the current line number using the provided function + size_t currentLineNumber = editor_cursor_row(editor); - // Calculate the width for the line numbers, say every line number takes up to 5 characters of space + // Different colors for line numbers + Vec4f defaultColor = themes[currentThemeIndex].line_numbers; + Vec4f currentLineColor = themes[currentThemeIndex].current_line_number; for (size_t i = 0; i < editor->lines.count; ++i) { - char lineNumberStr[10]; // Buffer for line number string - snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", i + 1); // Convert line number to string + char lineNumberStr[10]; - Vec2f pos; - pos.x = 0; // Start from the left edge of the window - pos.y = -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + // Calculate display line number based on relative number setting + size_t displayLineNumber; + if (relative_line_numbers) { + // Show the distance from the current line instead of the absolute line number + displayLineNumber = (i >= currentLineNumber) ? i - currentLineNumber : currentLineNumber - i; + } else { + displayLineNumber = i + 1; + } + snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", displayLineNumber); + + Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + + // Decide on the color to use + Vec4f colorToUse = defaultColor; + if (highlight_current_line && i == currentLineNumber) { + colorToUse = currentLineColor; + } - // Use the theme color for line numbers - free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, color); + free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, colorToUse); } simple_renderer_flush(sr); } + + + + + + + + // chain + /* if (showLineNumbers) { */ + /* simple_renderer_set_shader(sr, SHADER_FOR_TEXT); */ + + /* size_t currentLineNumber = editor_cursor_row(editor); */ + + /* Vec4f defaultColor = themes[currentThemeIndex].line_numbers; */ + /* Vec4f currentLineColor = themes[currentThemeIndex].current_line_number; */ + + /* char lineNumberStr[10]; */ + /* Vec2f pos = {0, 0}; */ + + /* for (size_t i = 0; i < editor->lines.count; ++i) { */ + /* // Calculate display line number based on relative number setting */ + /* size_t displayLineNumber = relative_line_numbers */ + /* ? (i >= currentLineNumber) ? i - currentLineNumber : currentLineNumber - i */ + /* : i + 1; */ + + /* snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", displayLineNumber); */ + + /* pos.y = -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; */ + + /* Vec4f* colorToUse = &defaultColor; // Use a pointer to avoid copying the whole struct */ + /* if (highlight_current_line && i == currentLineNumber) { */ + /* colorToUse = ¤tLineColor; */ + /* } */ + + /* free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, *colorToUse); */ + /* } */ + + /* simple_renderer_flush(sr); */ + /* } */ + + + + // Render text { simple_renderer_set_shader(sr, SHADER_FOR_TEXT); diff --git a/src/editor.h b/src/editor.h index 1fae488f..1080d168 100644 --- a/src/editor.h +++ b/src/editor.h @@ -70,6 +70,7 @@ typedef struct { Vec4f open_square; Vec4f close_square; Vec4f array_content; + Vec4f current_line_number; Vec4f marks; Vec4f fb_selection; } Theme; diff --git a/src/todo.org b/src/todo.org new file mode 100644 index 00000000..998ea481 --- /dev/null +++ b/src/todo.org @@ -0,0 +1,40 @@ +#+title: Todo + + +* TODO +every function defined in the code should be callable while the app is running +add dwm like configuration files so the user could extend the editor +in those files everyy function could be redefined +** Mouse support +clickable links +ctrl click for documentation on the thing +mouse scroll +ctrl scroll should scroll more +** Evil Mode +splits [] +5k should work [] +shift + 8 [] +** Modeline +show the current EvilMode file name info and cool icons +** Minibuffer +to get user input for anything and everything + +** Minimap +code minimap based on https://github.com/Ivoah/minimap + + + + +** Lexer +syntax highlighting for : | || & && +different shader per token +different font per token + +** Dinamic cursor +adjust syze based on overed glyph + +** Font +changing font more times than the total number of font you have inside =~/.config/ded/fonts= should not crash + +** Camera + when animation are false move the camera like in emacs or vim From 89d0d2b1d53caa6bc8208d4d5b2e663a07da1ca7 Mon Sep 17 00:00:00 2001 From: laluxx Date: Thu, 21 Sep 2023 03:10:53 +0000 Subject: [PATCH 24/74] themes --- src/editor.c | 428 +++++++++++++++++++++++++++------------------------ src/main.c | 4 +- 2 files changed, 228 insertions(+), 204 deletions(-) diff --git a/src/editor.c b/src/editor.c index b13ebde7..667537d5 100644 --- a/src/editor.c +++ b/src/editor.c @@ -10,7 +10,6 @@ EvilMode current_mode = NORMAL; float zoom_factor = 5.0f; -Theme themes[10]; bool showLineNumbers = false; // This is the actual definition and initialization bool is_animated = true; // or false, depending on your initial requirement @@ -18,13 +17,152 @@ bool highlight_current_line = true; bool relative_line_numbers = true; -int currentThemeIndex = 0; +int currentThemeIndex = 0; +Theme themes[6]; + void initialize_themes() { - // Catppuccin themes[0] = (Theme) { + .cursor = hex_to_vec4f(0x80D4FFFF), // Purple Cursor from --color-primary + .text = hex_to_vec4f(0xFFFFFFFF), // Main text color, based on --color-foreground for dark mode + .background = hex_to_vec4f(0x0D0D0DFF), // Background, from --color-background for dark mode + .comment = hex_to_vec4f(0x808080FF), // Comments with muted foreground, from --color-foreground-muted for dark mode + .hashtag = hex_to_vec4f(0xD6EBFFFF), // Using the hover link color for hashtags + .logic = hex_to_vec4f(0x80D4FFFF), // Logic color same as --color-links for dark mode + .string = hex_to_vec4f(0x2E2E2EFF), // Border color for strings + .selection = hex_to_vec4f(0x1A1A1AFF), // Selection using the muted border color + .search = hex_to_vec4f(0x808080FF), // Search color similar to comments + .marks = hex_to_vec4f(0x171717FF), // Marks using the raised background + .todo = hex_to_vec4f(0x1E1E1EFF), // Todos with slightly more visible background + .line_numbers = hex_to_vec4f(0x808080FF), // Muted line numbers + .fixme = hex_to_vec4f(0xCCD6F5FF), // Slightly brighter color for emphasis on FIXMEs + .note = hex_to_vec4f(0x808080FF), // Notes with muted foreground + .bug = hex_to_vec4f(0xF5F5F5FF), // Bugs with bright foreground + .not_equals = hex_to_vec4f(0x80D4FFFF), // Using links color for not equals + .exclamation = hex_to_vec4f(0xCCD6F5FF), // Slight emphasis for exclamation + .equals = hex_to_vec4f(0x808080FF), // Muted equals color + .equals_equals = hex_to_vec4f(0x808080FF), // Muted equals_equals color + .greater_than = hex_to_vec4f(0x80D4FFFF), // Links color for greater_than + .less_than = hex_to_vec4f(0x80D4FFFF), // Links color for less_than + .plus = hex_to_vec4f(0x80D4FFFF), // Links color for plus + .minus = hex_to_vec4f(0xCCD6F5FF), // Slight emphasis for minus + .truee = hex_to_vec4f(0x80D4FFFF), // Links color for true + .falsee = hex_to_vec4f(0xCCD6F5FF), // Emphasis for false + .arrow = hex_to_vec4f(0x808080FF), // Muted arrows + .open_square = hex_to_vec4f(0x80D4FFFF), // Links color for open brackets + .close_square = hex_to_vec4f(0x80D4FFFF), // Links color for close brackets + .current_line_number = hex_to_vec4f(0x80D4FFFF), // Highlight current line number with links color + .array_content = hex_to_vec4f(0x808080FF) // Muted array content + }; + + // Base2Tone + themes[2] = (Theme) { + .cursor = hex_to_vec4f(0x4183c4FF), // Link Color + .text = hex_to_vec4f(0x111111FF), // Primary Text Color + .background = hex_to_vec4f(0x00000026), // Base Background Color + .comment = hex_to_vec4f(0x222222FF), // Heading Colors + .hashtag = hex_to_vec4f(0x3ca555FF), // List Bullet Color + .logic = hex_to_vec4f(0x06f06fFF), // Button Focus Box Shadow + .string = hex_to_vec4f(0xc0c0c0FF), // Fieldset Border Color + .selection = hex_to_vec4f(0x999999FF), // Button Active Border Color + .search = hex_to_vec4f(0xcccCCCFF), // Various Elements Border Color + .todo = hex_to_vec4f(0xf8f8f8FF), // Pre Background Color + .line_numbers = hex_to_vec4f(0x9399b2FF), // As per example + .fixme = hex_to_vec4f(0xf7f7f7FF), // Blockquote Background + .note = hex_to_vec4f(0x666666FF), // Blockquote Text Color + .bug = hex_to_vec4f(0x4183c4FF), // Link Color + .not_equals = hex_to_vec4f(0x06f06fFF), // Button Focus Box Shadow + .exclamation = hex_to_vec4f(0x666666FF), // Blockquote Text Color + .equals = hex_to_vec4f(0x3ca555FF), // List Bullet Color + .equals_equals = hex_to_vec4f(0x3ca555FF), // List Bullet Color + .greater_than = hex_to_vec4f(0x06f06fFF), // Button Focus Box Shadow + .less_than = hex_to_vec4f(0x4183c4FF), // Link Color + .marks = hex_to_vec4f(0x06f06fFF), // Button Focus Box Shadow + .fb_selection = hex_to_vec4f(0xdddDDDFF), // Various Elements Border Color + .plus = hex_to_vec4f(0x3ca555FF), // List Bullet Color + .minus = hex_to_vec4f(0x4183c4FF), // Link Color + .truee = hex_to_vec4f(0x3ca555FF), // List Bullet Color + .falsee = hex_to_vec4f(0x4183c4FF), // Link Color + .arrow = hex_to_vec4f(0x666666FF), // Blockquote Text Color + .open_square = hex_to_vec4f(0x4183c4FF), // Link Color + .close_square = hex_to_vec4f(0x4183c4FF), // Link Color + .current_line_number = hex_to_vec4f(0x3ca555FF), // List Bullet Color + .array_content = hex_to_vec4f(0xdddDDDFF), // Various Elements Border Color + }; + + // Base2Tone Extended Pink & Purple + themes[3] = (Theme) { + .cursor = hex_to_vec4f(0x912D56FF), // Darker Pink for Cursor + .text = hex_to_vec4f(0xEEEDF7FF), // Very Light Lavender for Text + .background = hex_to_vec4f(0x1E001380), // Deep Purple Transparent Background + .comment = hex_to_vec4f(0x554455FF), // Muted Dark Purple for Comments + .hashtag = hex_to_vec4f(0xB34688FF), // Magenta-ish for Hashtags + .logic = hex_to_vec4f(0xA22882FF), // Rich Purple for Logic Operations + .string = hex_to_vec4f(0x995D99FF), // Purple for Strings + .selection = hex_to_vec4f(0x4B004B80), // Transparent Mid-Purple for Selection + .search = hex_to_vec4f(0xDF88DFFF), // Pink-Purple for Search Highlights + .todo = hex_to_vec4f(0xEDE2F2FF), // Light Lavender for TODOs + .line_numbers = hex_to_vec4f(0x7A507AFF), // Purple-Gray for Line Numbers + .fixme = hex_to_vec4f(0xE8CFE8FF), // Soft Lavender for FIXME Background + .note = hex_to_vec4f(0x774877FF), // Dark Lavender for Notes + .bug = hex_to_vec4f(0xD2146BFF), // Bright Magenta for Bugs + .not_equals = hex_to_vec4f(0xA22882FF), // Rich Purple for Inequality + .exclamation = hex_to_vec4f(0xC23F91FF), // Pink-Purple for Exclamation + .equals = hex_to_vec4f(0x8E558E), // Mid Purple for Equality + .equals_equals = hex_to_vec4f(0x8E558E), // Mid Purple for Double Equality + .greater_than = hex_to_vec4f(0xA22882FF), // Rich Purple for Greater Than + .less_than = hex_to_vec4f(0x912D56FF), // Darker Pink for Less Than + .marks = hex_to_vec4f(0xC91C7EFF), // Magenta for Marks + .fb_selection = hex_to_vec4f(0xD49FD4FF), // Muted Pink for Fallback Selections + .plus = hex_to_vec4f(0x995D99FF), // Purple for Addition + .minus = hex_to_vec4f(0xB34688FF), // Magenta-ish for Subtraction + .truee = hex_to_vec4f(0x774877FF), // Dark Lavender for True + .falsee = hex_to_vec4f(0xA22882FF), // Rich Purple for False + .arrow = hex_to_vec4f(0x7A507AFF), // Purple-Gray for Arrows + .open_square = hex_to_vec4f(0x995D99FF), // Purple for Open Brackets + .close_square = hex_to_vec4f(0x995D99FF), // Purple for Close Brackets + .current_line_number = hex_to_vec4f(0xB34688FF), // Magenta-ish for Current Line Number + .array_content = hex_to_vec4f(0xD49FD4FF) // Muted Pink for Array Content + }; + + /* // Monokai Expanded */ + themes[4] = (Theme) { + .cursor = hex_to_vec4f(0xF8F8F0FF), // Off-white for Cursor + .text = hex_to_vec4f(0xF8F8F2FF), // Primary Text Color + .background = hex_to_vec4f(0x272822FF), // Base Background Color + .comment = hex_to_vec4f(0x75715EFF), // Grayish for Comments + .hashtag = hex_to_vec4f(0xA6E22EFF), // Emerald for Hashtags + .logic = hex_to_vec4f(0xF92672FF), // Pink for Logic Operations + .string = hex_to_vec4f(0xE6DB74FF), // Yellow for Strings + .selection = hex_to_vec4f(0x49483EFF), // Darker Gray for Selection + .search = hex_to_vec4f(0x66D9EFFF), // Cyan for Search Highlights + .todo = hex_to_vec4f(0xFD971FFF), // Orange-red for TODO markers + .line_numbers = hex_to_vec4f(0x8F908AFF),// Muted Gray for Line Numbers + .fixme = hex_to_vec4f(0xFF0000FF), // Red for FIXME markers + .note = hex_to_vec4f(0x66D9EFFF), // Cyan for Notes + .bug = hex_to_vec4f(0xFD5F00FF), // Orange for Bugs + .not_equals = hex_to_vec4f(0xA6E22EFF), // Emerald for Inequality + .exclamation = hex_to_vec4f(0xF92672FF), // Pink for Exclamation + .equals = hex_to_vec4f(0x66D9EFFF), // Cyan for Equality + .greater_than = hex_to_vec4f(0xF92672FF), // Pink for Comparison Operators + .less_than = hex_to_vec4f(0xA6E22EFF), // Emerald for Comparison Operators + .marks = hex_to_vec4f(0xFD971FFF), // Orange-red for Marks + .fb_selection = hex_to_vec4f(0x3E3D32FF), // Darker Shade for Fallback Selections + .plus = hex_to_vec4f(0x66D9EFFF), // Cyan for Addition + .minus = hex_to_vec4f(0xF92672FF), // Pink for Subtraction + .truee = hex_to_vec4f(0xA6E22EFF), // Emerald for True + .falsee = hex_to_vec4f(0xF92672FF), // Pink for False + .arrow = hex_to_vec4f(0xE6DB74FF), // Yellow for Arrows + .open_square = hex_to_vec4f(0xE6DB74FF), // Yellow for Open Brackets + .close_square = hex_to_vec4f(0xE6DB74FF), // Yellow for Close Brackets + .current_line_number = hex_to_vec4f(0x66D9EFFF), // Cyan for Current Line + .array_content = hex_to_vec4f(0x3E3D32FF) // Darker Shade for Array Content + }; + + // Catppuccin + themes[5] = (Theme) { .cursor = hex_to_vec4f(0xf38ba8FF), // Red .text = hex_to_vec4f(0xcdd6f4FF), // Text .background = hex_to_vec4f(0x1e1e2eFF), // Base @@ -57,146 +195,68 @@ void initialize_themes() { .current_line_number = hex_to_vec4f(0x89b4faFF), // Blue .array_content = hex_to_vec4f(0x74c7ecFF), // Sapphire }; - - - // Dracula - themes[1] = (Theme) { - .cursor = hex_to_vec4f(0xFF79C6FF), - .text = hex_to_vec4f(0xF8F8F2FF), - .logic = hex_to_vec4f(0x50FA7BFF), - .background = hex_to_vec4f(0x282A36FF), - .comment = hex_to_vec4f(0x6272A4FF), - .hashtag = hex_to_vec4f(0x8BE9FDFF), - .string = hex_to_vec4f(0xF1FA8CFF), - .selection = hex_to_vec4f(0x00000000), - .search = hex_to_vec4f(0xFF5555FF), - .todo = hex_to_vec4f(0xBD93F9FF), - .marks = hex_to_vec4f(0xBD93F9FF), - .fb_selection = hex_to_vec4f(0x44475AFF) - }; - - - // Palenight - themes[2] = (Theme) { - .cursor = hex_to_vec4f(0xC792EAFF), - .text = hex_to_vec4f(0xA6ACCDFF), - .logic = hex_to_vec4f(0x89DDFFFF), - .background = hex_to_vec4f(0x292D3EFF), - .comment = hex_to_vec4f(0x676E95FF), - .hashtag = hex_to_vec4f(0xAB47BCFF), - .string = hex_to_vec4f(0xC3E88DFF), - .selection = hex_to_vec4f(0x00000000), - .fb_selection = hex_to_vec4f(0x00000000) - }; - - // Monokai - themes[3] = (Theme) { - .cursor = hex_to_vec4f(0xF8F8F0FF), - .text = hex_to_vec4f(0xF8F8F2FF), - .background = hex_to_vec4f(0x272822FF), - .comment = hex_to_vec4f(0x75715E), - .hashtag = hex_to_vec4f(0xA6E22EFF), - .logic = hex_to_vec4f(0xF92672FF), - .string = hex_to_vec4f(0xE6DB74FF), - .selection = hex_to_vec4f(0x49483EFF), - .search = hex_to_vec4f(0x66D9EFFF), - .marks = hex_to_vec4f(0xFD971FFF), - .fb_selection = hex_to_vec4f(0x3E3D32FF) - }; - - // Solarized dark - themes[4] = (Theme) { - .cursor = hex_to_vec4f(0x93A1A1FF), - .text = hex_to_vec4f(0x839496FF), - .background = hex_to_vec4f(0x002B36FF), - .comment = hex_to_vec4f(0x586E75FF), - .hashtag = hex_to_vec4f(0x859900FF), - .logic = hex_to_vec4f(0xB58900FF), - .string = hex_to_vec4f(0x2AA198FF), - .selection = hex_to_vec4f(0x073642FF), - .search = hex_to_vec4f(0xDC322FFF), - .marks = hex_to_vec4f(0xD33682FF), - .fb_selection = hex_to_vec4f(0x073642FF) - }; - - // Nord - themes[5] = (Theme) { - .cursor = hex_to_vec4f(0xECEFF4FF), - .text = hex_to_vec4f(0xE5E9F0FF), - .background = hex_to_vec4f(0x2E3440FF), - .comment = hex_to_vec4f(0x4C566AFF), - .hashtag = hex_to_vec4f(0x8FBCBBFF), - .logic = hex_to_vec4f(0x81A1C1FF), - .string = hex_to_vec4f(0xA3BE8CFF), - .selection = hex_to_vec4f(0x3B4252FF), - .search = hex_to_vec4f(0xBF616AFF), - .marks = hex_to_vec4f(0xB48EADFF), - .fb_selection = hex_to_vec4f(0x3B4252FF) - }; - - // Modus Operandi Inspired 1 - themes[6] = (Theme) { - .cursor = hex_to_vec4f(0x000f0eff), - .text = hex_to_vec4f(0x000f0eff), - .logic = hex_to_vec4f(0x0090a1ff), - .background = hex_to_vec4f(0xfafafaff), - .comment = hex_to_vec4f(0x52676fff), - .hashtag = hex_to_vec4f(0xa070c0ff), - .string = hex_to_vec4f(0x7a5eafff), - .selection = hex_to_vec4f(0xd0d0e0ff), - .search = hex_to_vec4f(0xffc9c0ff), - .marks = hex_to_vec4f(0x9058d7ff), - .fb_selection = hex_to_vec4f(0xc0c0d8ff) - }; - - // Wildcherry Theme - themes[7] = (Theme) { - .background = hex_to_vec4f(0x000507FF), - .cursor = hex_to_vec4f(0xAA6F99FF), - .text = hex_to_vec4f(0xacbbc7FF), - .logic = hex_to_vec4f(0x6E5F95FF), - .comment = hex_to_vec4f(0x78828bFF), - .hashtag = hex_to_vec4f(0x7B6DA9FF), - .string = hex_to_vec4f(0xAA6F99FF), - .selection = hex_to_vec4f(0x8370AFFF), - .search = hex_to_vec4f(0xB375A8FF), - .marks = hex_to_vec4f(0x66578AFF), - .fb_selection = hex_to_vec4f(0x6E5F95FF) - }; - - // Rose-Pine - themes[8] = (Theme) { - .cursor = hex_to_vec4f(0xeb6f92FF), // Love (Pinkish) - .text = hex_to_vec4f(0xe0def4FF), // Text - .background = hex_to_vec4f(0x191724FF), // Base - .comment = hex_to_vec4f(0x6e6a86FF), // Muted - .hashtag = hex_to_vec4f(0x31748fFF), // Pine (Bluish) - .logic = hex_to_vec4f(0x908caaFF), // Subtle (Purple-ish) - .string = hex_to_vec4f(0xf6c177FF), // Gold (Yellow) - .selection = hex_to_vec4f(0x26233aFF), // Overlay - .search = hex_to_vec4f(0xc4a7e7FF), // Iris (Light Purple) - .marks = hex_to_vec4f(0xebbcbaFF), // Rose (Light Pink) - .fb_selection = hex_to_vec4f(0x9ccfd8FF) // Foam (Cyan) - }; + /* // Solarized dark */ + /* themes[4] = (Theme) { */ + /* .cursor = hex_to_vec4f(0x93A1A1FF), */ + /* .text = hex_to_vec4f(0x839496FF), */ + /* .background = hex_to_vec4f(0x002B36FF), */ + /* .comment = hex_to_vec4f(0x586E75FF), */ + /* .hashtag = hex_to_vec4f(0x859900FF), */ + /* .logic = hex_to_vec4f(0xB58900FF), */ + /* .string = hex_to_vec4f(0x2AA198FF), */ + /* .selection = hex_to_vec4f(0x073642FF), */ + /* .search = hex_to_vec4f(0xDC322FFF), */ + /* .marks = hex_to_vec4f(0xD33682FF), */ + /* .fb_selection = hex_to_vec4f(0x073642FF) */ + /* }; */ + + /* // Nord */ + /* themes[5] = (Theme) { */ + /* .cursor = hex_to_vec4f(0xECEFF4FF), */ + /* .text = hex_to_vec4f(0xE5E9F0FF), */ + /* .background = hex_to_vec4f(0x2E3440FF), */ + /* .comment = hex_to_vec4f(0x4C566AFF), */ + /* .hashtag = hex_to_vec4f(0x8FBCBBFF), */ + /* .logic = hex_to_vec4f(0x81A1C1FF), */ + /* .string = hex_to_vec4f(0xA3BE8CFF), */ + /* .selection = hex_to_vec4f(0x3B4252FF), */ + /* .search = hex_to_vec4f(0xBF616AFF), */ + /* .marks = hex_to_vec4f(0xB48EADFF), */ + /* .fb_selection = hex_to_vec4f(0x3B4252FF) */ + /* }; */ + + /* // Modus Operandi Inspired 1 */ + /* themes[6] = (Theme) { */ + /* .cursor = hex_to_vec4f(0x000f0eff), */ + /* .text = hex_to_vec4f(0x000f0eff), */ + /* .logic = hex_to_vec4f(0x0090a1ff), */ + /* .background = hex_to_vec4f(0xfafafaff), */ + /* .comment = hex_to_vec4f(0x52676fff), */ + /* .hashtag = hex_to_vec4f(0xa070c0ff), */ + /* .string = hex_to_vec4f(0x7a5eafff), */ + /* .selection = hex_to_vec4f(0xd0d0e0ff), */ + /* .search = hex_to_vec4f(0xffc9c0ff), */ + /* .marks = hex_to_vec4f(0x9058d7ff), */ + /* .fb_selection = hex_to_vec4f(0xc0c0d8ff) */ + /* }; */ // Best theme ever - themes[9] = (Theme) { - .cursor = hex_to_vec4f(0xFFFFFFFF), // White cursor - .text = hex_to_vec4f(0xFFFFFFFF), - .background = hex_to_vec4f(0x181818FF), - .comment = hex_to_vec4f(0xCC8C3CFF), - .hashtag = hex_to_vec4f(0x95A99FFF), - .logic = hex_to_vec4f(0xFFDD33FF), - .string = hex_to_vec4f(0x73c936ff), - .selection = hex_to_vec4f(0x00000000), - .search = hex_to_vec4f(0xFFDD33FF), - .marks = hex_to_vec4f(0xFFDD33FF), - .fb_selection = hex_to_vec4f(0x00000000) - }; + /* themes[9] = (Theme) { */ + /* .cursor = hex_to_vec4f(0xFFFFFFFF), // White cursor */ + /* .text = hex_to_vec4f(0xFFFFFFFF), */ + /* .background = hex_to_vec4f(0x181818FF), */ + /* .comment = hex_to_vec4f(0xCC8C3CFF), */ + /* .hashtag = hex_to_vec4f(0x95A99FFF), */ + /* .logic = hex_to_vec4f(0xFFDD33FF), */ + /* .string = hex_to_vec4f(0x73c936ff), */ + /* .selection = hex_to_vec4f(0x00000000), */ + /* .search = hex_to_vec4f(0xFFDD33FF), */ + /* .marks = hex_to_vec4f(0xFFDD33FF), */ + /* .fb_selection = hex_to_vec4f(0x00000000) */ + /* }; */ } void theme_next(int *currentThemeIndex) { - // Assuming themes is globally defined with a known size const int themeCount = sizeof(themes) / sizeof(themes[0]); *currentThemeIndex += 1; if (*currentThemeIndex >= themeCount) { @@ -207,36 +267,11 @@ void theme_next(int *currentThemeIndex) { void theme_previous(int *currentThemeIndex) { *currentThemeIndex -= 1; if (*currentThemeIndex < 0) { - // Assuming themes is globally defined with a known size const int themeCount = sizeof(themes) / sizeof(themes[0]); *currentThemeIndex = themeCount - 1; // wrap around to the last theme } } - -/* void editor_backspace(Editor *e) */ -/* { */ -/* if (e->searching) { */ -/* if (e->search.count > 0) { */ -/* e->search.count -= 1; */ -/* } */ -/* } else { */ -/* if (e->cursor > e->data.count) { */ -/* e->cursor = e->data.count; */ -/* } */ -/* if (e->cursor == 0) return; */ - -/* memmove( */ -/* &e->data.items[e->cursor - 1], */ -/* &e->data.items[e->cursor], */ -/* e->data.count - e->cursor */ -/* ); */ -/* e->cursor -= 1; */ -/* e->data.count -= 1; */ -/* editor_retokenize(e); */ -/* } */ -/* } */ - // Smart Parenthesis void editor_backspace(Editor *e) { @@ -1061,55 +1096,44 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; - // original + } else { - static bool hasShifted = false; // This will ensure the code inside the if-block runs once - sr->camera_scale = 0.24f; // Set the zoom level to 0.5 + sr->camera_scale = 0.24f; // Set the zoom level to 0.24 + + // Static flag to ensure initial camera position is set only once + static bool hasSetInitialPosition = false; - if (!hasShifted) { + // If the initial position hasn't been set, set it now + if (!hasSetInitialPosition) { sr->camera_pos.x = 3850.0f; // Set the x-position sr->camera_pos.y = -2000.0f; // Set the initial y-position - /* hasShifted = true; // Mark as shifted */ + hasSetInitialPosition = true; } else { - // Determine the height of a line - Vec2f pos = {0.0f, 0.0f}; - const char *sampleText = "Sample text to measure."; - free_glyph_atlas_measure_line_sized(atlas, sampleText, strlen(sampleText), &pos); - float lineHeight = pos.y; - - // Check the current cursor line position and adjust camera's Y-position if necessary + // Calculate the vertical position of the cursor in world coordinates. int currentLine = editor_cursor_row(editor); - if (currentLine > 66) { - sr->camera_pos.y = -2000.0f - (lineHeight * (currentLine - 66)); + float cursorPosY = -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + + // Define the top and bottom edges of the current camera view. + float cameraTopEdge = sr->camera_pos.y - (h/2.0f) / sr->camera_scale; + float cameraBottomEdge = sr->camera_pos.y + (h/2.0f) / sr->camera_scale; + + // Adjust the camera's Y position if the cursor is outside the viewport. + if (cursorPosY > cameraBottomEdge) { + sr->camera_pos.y += cursorPosY - cameraBottomEdge; // Move camera down just enough + } else if (cursorPosY < cameraTopEdge) { + sr->camera_pos.y -= cameraTopEdge - cursorPosY; // Move camera up just enough } + + // Keeping the x-position fixed as per the previous logic + sr->camera_pos.x = 3850.0f; } } - /* } else { */ - /* static bool hasShifted = false; // This will ensure the code inside the if-block runs once */ - /* sr->camera_scale = 0.24f * zoom_factor; // Adjust the zoom based on zoom_factor. */ - - /* if (!hasShifted) { */ - /* sr->camera_pos.x = 3850.0f; // Set the x-position */ - /* sr->camera_pos.y = -2000.0f; // Set the initial y-position */ - - /* /\* Apply a shift factor based on zoom. *\/ */ - /* sr->camera_pos.x *= zoom_factor; */ - /* sr->camera_pos.y *= zoom_factor; */ - /* } else { */ - /* // Determine the height of a line */ - /* Vec2f pos = {0.0f, 0.0f}; */ - /* const char *sampleText = "Sample text to measure."; */ - /* free_glyph_atlas_measure_line_sized(atlas, sampleText, strlen(sampleText), &pos); */ - /* float lineHeight = pos.y; */ - - /* // Check the current cursor line position and adjust camera's Y-position if necessary */ - /* int currentLine = editor_cursor_row(editor); */ - /* if (currentLine > 66) { */ - /* sr->camera_pos.y = (-2000.0f * zoom_factor) - (lineHeight * (currentLine - 66)); */ - /* } */ - /* } */ - /* } */ + + + + + } } diff --git a/src/main.c b/src/main.c index 217af85d..eec1f6ee 100644 --- a/src/main.c +++ b/src/main.c @@ -36,8 +36,8 @@ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) #define FONT_DIR "~/.config/ded/fonts/" -/* #define DEFAULT_FONT "jet-extra-bold.ttf" */ -#define DEFAULT_FONT "Letters.ttf" +#define DEFAULT_FONT "jet-extra-bold.ttf" +/* #define DEFAULT_FONT "Letters.ttf" */ #define MAX_FONTS 100 #define MAX_PATH_SIZE 1024 From b312f5662666fa57ad3282e8d428e98100d25ebd Mon Sep 17 00:00:00 2001 From: laluxx Date: Tue, 3 Oct 2023 01:18:52 +0000 Subject: [PATCH 25/74] config-shaders --- fonts/VictorMono-Regular.ttf | Bin 151576 -> 0 bytes fonts/iosevka-regular.ttf | Bin 4774196 -> 0 bytes fonts/jet-bold.ttf | Bin 277828 -> 0 bytes fonts/jet-extra-bold.ttf | Bin 213372 -> 0 bytes rc.lua | 61 --------- shaders/simple_glow.frag | 20 +++ src/editor.c | 231 +++++++++++++---------------------- src/editor.h | 2 + src/lexer.c | 35 ++++++ src/lexer.h | 1 + src/main.c | 67 ++++++++-- src/simple_renderer.c | 56 ++++----- src/simple_renderer.h | 13 +- src/todo.org | 6 +- test.py | 0 15 files changed, 243 insertions(+), 249 deletions(-) delete mode 100644 fonts/VictorMono-Regular.ttf delete mode 100644 fonts/iosevka-regular.ttf delete mode 100644 fonts/jet-bold.ttf delete mode 100644 fonts/jet-extra-bold.ttf delete mode 100644 rc.lua create mode 100644 shaders/simple_glow.frag delete mode 100644 test.py diff --git a/fonts/VictorMono-Regular.ttf b/fonts/VictorMono-Regular.ttf deleted file mode 100644 index aadcc88af58bebac86d44904e950cbad103edbf5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151576 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�*9yP}-) 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 S{H!yBKeH3(KH{k0fBqNgZI(O$ diff --git a/fonts/iosevka-regular.ttf b/fonts/iosevka-regular.ttf deleted file mode 100644 index bb168999d41df5d0234e9597f85cea77266ee97a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4774196 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�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 z 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 {5I* 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≺GEb5h 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Π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 z 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 UXo)DwV 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≈&yK<{LD5;^6DlfbN9;W7ZwJ^>vzG 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�UcqATUh+m9o5?ttfmM8?fr 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 z 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

ZRU+kEa$Jv(d^<(=5h+yq?{Mf>C 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�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⪙{U$(DRCq2za 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

n5JKo$ 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

r$IgOl7&LC%!v&h-x9C9u>kDN~~ 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%0D;At%o0Az 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 K1N}Jm_WnQBb%r(o diff --git a/fonts/jet-bold.ttf b/fonts/jet-bold.ttf deleted file mode 100644 index 8c93043de6454ad2d5575f0751150c6551d9c588..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 277828 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

^Q2@p_nJptvCyhdNtfUDv9XvP^J$Tq^Yf}I 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 s3n!(`lCJDArN|NmBd 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

Zh7cd=34FaGWy`SDvi)66*nbC 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 RXt+-ctVzYaTEQjd{{RH8A$|Y= diff --git a/fonts/jet-extra-bold.ttf b/fonts/jet-extra-bold.ttf deleted file mode 100644 index fe5be6a15846a6fbee3a4645829c533e21f9222f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 213372 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

HERH5`nT84()71JrQI@3(#E>;qeu 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 z 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 Z{$N?+9UlVzs#1Veq&_A7h{#da{{z-~j-CJj diff --git a/rc.lua b/rc.lua deleted file mode 100644 index e28a5371..00000000 --- a/rc.lua +++ /dev/null @@ -1,61 +0,0 @@ ---- ░█▀▄░█░█░█░█░█░█░█▀█░▀░█▀▀░░░█▀█░█░█░█▀▀░█▀▀░█▀█░█▄█░█▀▀ ---- ░█▀▄░▄▀▄░░█░░█▀█░█░█░░░▀▀█░░░█▀█░█▄█░█▀▀░▀▀█░█░█░█░█░█▀▀ ---- ░▀░▀░▀░▀░░▀░░▀░▀░▀░▀░░░▀▀▀░░░▀░▀░▀░▀░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀▀▀ ---- ~~~~~~~~~~~~~~~~~~ @author rxyhn ~~~~~~~~~~~~~~~~~~~~~~ ---- ~~~~~~~~~~~~ https://github.com/rxyhn ~~~~~~~~~~~~~~~~~~ - -pcall(require, "luarocks.loader") -local gears = require("gears") -local beautiful = require("beautiful") - - ---- ░▀█▀░█░█░█▀▀░█▄█░█▀▀ ---- ░░█░░█▀█░█▀▀░█░█░█▀▀ ---- ░░▀░░▀░▀░▀▀▀░▀░▀░▀▀▀ - -local theme_dir = gears.filesystem.get_configuration_dir() .. "theme/" -beautiful.init(theme_dir .. "theme.lua") - ---- ░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀░█░█░█▀▄░█▀█░▀█▀░▀█▀░█▀█░█▀█░█▀▀ ---- ░█░░░█░█░█░█░█▀▀░░█░░█░█░█░█░█▀▄░█▀█░░█░░░█░░█░█░█░█░▀▀█ ---- ░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀░▀░░▀░░▀▀▀░▀▀▀░▀░▀░▀▀▀ - -require("configuration") - ---- ░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀ ---- ░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█ ---- ░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀ - -require("modules") - ---- ░█░█░▀█▀ ---- ░█░█░░█░ ---- ░▀▀▀░▀▀▀ - -require("ui") - - - - - - - - - ---- ░█▀▀░█▀█░█▀▄░█▀▄░█▀█░█▀▀░█▀▀ ---- ░█░█░█▀█░█▀▄░█▀▄░█▀█░█░█░█▀▀ ---- ░▀▀▀░▀░▀░▀░▀░▀▀░░▀░▀░▀▀▀░▀▀▀ - ---- Enable for lower memory consumption -collectgarbage("setpause", 110) -collectgarbage("setstepmul", 1000) -gears.timer({ - timeout = 5, - autostart = true, - call_now = true, - callback = function() - collectgarbage("collect") - end, -}) - - diff --git a/shaders/simple_glow.frag b/shaders/simple_glow.frag new file mode 100644 index 00000000..fd823472 --- /dev/null +++ b/shaders/simple_glow.frag @@ -0,0 +1,20 @@ +#version 330 core + +uniform sampler2D image; // The off-screen texture with the cursor +uniform float blurSize; // The size of the blur effect (experiment with this value) + +in vec2 out_uv; + +const float offset[5] = float[](0.0, 1.333, 2.666, 4.0, 5.333); // Offsets for Gaussian blur + +void main() { + vec4 sum = texture(image, out_uv) * 0.2941; // Central sample (weight is highest) + + sum += texture(image, out_uv + vec2(blurSize * offset[1], 0.0)) * 0.2353; + sum += texture(image, out_uv - vec2(blurSize * offset[1], 0.0)) * 0.2353; + sum += texture(image, out_uv + vec2(blurSize * offset[2], 0.0)) * 0.1176; + sum += texture(image, out_uv - vec2(blurSize * offset[2], 0.0)) * 0.1176; + // ... Add more samples if needed + + gl_FragColor = sum; +} diff --git a/src/editor.c b/src/editor.c index 667537d5..f8fd1cc3 100644 --- a/src/editor.c +++ b/src/editor.c @@ -6,7 +6,8 @@ #include "./editor.h" #include "./common.h" #include "./free_glyph.h" - +#include "./file_browser.h" +#include // For isalnum EvilMode current_mode = NORMAL; float zoom_factor = 5.0f; @@ -19,8 +20,69 @@ bool relative_line_numbers = true; +// TODO bad implementation +bool extractWordUnderCursor(Editor *editor, char *word) { + // Make a copy of cursor position to avoid modifying the actual cursor + int cursor = editor->cursor; + + // Move left to find the start of the word. + while (cursor > 0 && isalnum(editor->data.items[cursor - 1])) { + cursor--; + } + + // Check if the cursor is on a word or on whitespace/special character. + if (!isalnum(editor->data.items[cursor])) return false; + + int start = cursor; + + // Move right to find the end of the word. + while (cursor < editor->data.count && isalnum(editor->data.items[cursor])) { + cursor++; + } + + int end = cursor; + + // Copy the word to the provided buffer. + // Make sure not to overflow the buffer and null-terminate the string. + int length = end - start; + strncpy(word, &editor->data.items[start], length); + word[length] = '\0'; + + // Debugging print + printf("Extracted word: %s\n", word); + + return true; +} + + + + +void move_camera(Simple_Renderer *sr, const char* direction, float amount) { + if(sr == NULL) return; // check if the SimpleRenderer pointer is valid + + // Check the direction and adjust the camera position accordingly. + if(strcmp(direction, "up") == 0) { + sr->camera_pos.y -= amount; + } else if(strcmp(direction, "down") == 0) { + sr->camera_pos.y += amount; + } else if(strcmp(direction, "left") == 0) { + sr->camera_pos.x -= amount; + } else if(strcmp(direction, "right") == 0) { + sr->camera_pos.x += amount; + } else { + printf("Invalid direction '%s'\n", direction); + } +} + + + + + + + + int currentThemeIndex = 0; -Theme themes[6]; +Theme themes[5]; void initialize_themes() { @@ -58,7 +120,7 @@ void initialize_themes() { }; // Base2Tone - themes[2] = (Theme) { + themes[1] = (Theme) { .cursor = hex_to_vec4f(0x4183c4FF), // Link Color .text = hex_to_vec4f(0x111111FF), // Primary Text Color .background = hex_to_vec4f(0x00000026), // Base Background Color @@ -93,7 +155,7 @@ void initialize_themes() { }; // Base2Tone Extended Pink & Purple - themes[3] = (Theme) { + themes[2] = (Theme) { .cursor = hex_to_vec4f(0x912D56FF), // Darker Pink for Cursor .text = hex_to_vec4f(0xEEEDF7FF), // Very Light Lavender for Text .background = hex_to_vec4f(0x1E001380), // Deep Purple Transparent Background @@ -128,7 +190,7 @@ void initialize_themes() { }; /* // Monokai Expanded */ - themes[4] = (Theme) { + themes[3] = (Theme) { .cursor = hex_to_vec4f(0xF8F8F0FF), // Off-white for Cursor .text = hex_to_vec4f(0xF8F8F2FF), // Primary Text Color .background = hex_to_vec4f(0x272822FF), // Base Background Color @@ -162,7 +224,7 @@ void initialize_themes() { }; // Catppuccin - themes[5] = (Theme) { + themes[4] = (Theme) { .cursor = hex_to_vec4f(0xf38ba8FF), // Red .text = hex_to_vec4f(0xcdd6f4FF), // Text .background = hex_to_vec4f(0x1e1e2eFF), // Base @@ -195,66 +257,7 @@ void initialize_themes() { .current_line_number = hex_to_vec4f(0x89b4faFF), // Blue .array_content = hex_to_vec4f(0x74c7ecFF), // Sapphire }; - /* // Solarized dark */ - /* themes[4] = (Theme) { */ - /* .cursor = hex_to_vec4f(0x93A1A1FF), */ - /* .text = hex_to_vec4f(0x839496FF), */ - /* .background = hex_to_vec4f(0x002B36FF), */ - /* .comment = hex_to_vec4f(0x586E75FF), */ - /* .hashtag = hex_to_vec4f(0x859900FF), */ - /* .logic = hex_to_vec4f(0xB58900FF), */ - /* .string = hex_to_vec4f(0x2AA198FF), */ - /* .selection = hex_to_vec4f(0x073642FF), */ - /* .search = hex_to_vec4f(0xDC322FFF), */ - /* .marks = hex_to_vec4f(0xD33682FF), */ - /* .fb_selection = hex_to_vec4f(0x073642FF) */ - /* }; */ - - /* // Nord */ - /* themes[5] = (Theme) { */ - /* .cursor = hex_to_vec4f(0xECEFF4FF), */ - /* .text = hex_to_vec4f(0xE5E9F0FF), */ - /* .background = hex_to_vec4f(0x2E3440FF), */ - /* .comment = hex_to_vec4f(0x4C566AFF), */ - /* .hashtag = hex_to_vec4f(0x8FBCBBFF), */ - /* .logic = hex_to_vec4f(0x81A1C1FF), */ - /* .string = hex_to_vec4f(0xA3BE8CFF), */ - /* .selection = hex_to_vec4f(0x3B4252FF), */ - /* .search = hex_to_vec4f(0xBF616AFF), */ - /* .marks = hex_to_vec4f(0xB48EADFF), */ - /* .fb_selection = hex_to_vec4f(0x3B4252FF) */ - /* }; */ - - /* // Modus Operandi Inspired 1 */ - /* themes[6] = (Theme) { */ - /* .cursor = hex_to_vec4f(0x000f0eff), */ - /* .text = hex_to_vec4f(0x000f0eff), */ - /* .logic = hex_to_vec4f(0x0090a1ff), */ - /* .background = hex_to_vec4f(0xfafafaff), */ - /* .comment = hex_to_vec4f(0x52676fff), */ - /* .hashtag = hex_to_vec4f(0xa070c0ff), */ - /* .string = hex_to_vec4f(0x7a5eafff), */ - /* .selection = hex_to_vec4f(0xd0d0e0ff), */ - /* .search = hex_to_vec4f(0xffc9c0ff), */ - /* .marks = hex_to_vec4f(0x9058d7ff), */ - /* .fb_selection = hex_to_vec4f(0xc0c0d8ff) */ - /* }; */ - - // Best theme ever - /* themes[9] = (Theme) { */ - /* .cursor = hex_to_vec4f(0xFFFFFFFF), // White cursor */ - /* .text = hex_to_vec4f(0xFFFFFFFF), */ - /* .background = hex_to_vec4f(0x181818FF), */ - /* .comment = hex_to_vec4f(0xCC8C3CFF), */ - /* .hashtag = hex_to_vec4f(0x95A99FFF), */ - /* .logic = hex_to_vec4f(0xFFDD33FF), */ - /* .string = hex_to_vec4f(0x73c936ff), */ - /* .selection = hex_to_vec4f(0x00000000), */ - /* .search = hex_to_vec4f(0xFFDD33FF), */ - /* .marks = hex_to_vec4f(0xFFDD33FF), */ - /* .fb_selection = hex_to_vec4f(0x00000000) */ - /* }; */ -} + } void theme_next(int *currentThemeIndex) { const int themeCount = sizeof(themes) / sizeof(themes[0]); @@ -587,6 +590,9 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer /* Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed */ + + + // Render selection { simple_renderer_set_shader(sr, SHADER_FOR_COLOR); @@ -714,32 +720,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } - - /* if (showLineNumbers) { */ - /* // Render line numbers */ - /* simple_renderer_set_shader(sr, SHADER_FOR_TEXT); */ - - /* // Get the color for line numbers from the current theme */ - /* Vec4f color = themes[currentThemeIndex].line_numbers; */ - - /* // Calculate the width for the line numbers, say every line number takes up to 5 characters of space */ - - /* for (size_t i = 0; i < editor->lines.count; ++i) { */ - /* char lineNumberStr[10]; // Buffer for line number string */ - /* snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", i + 1); // Convert line number to string */ - - /* Vec2f pos; */ - /* pos.x = 0; // Start from the left edge of the window */ - /* pos.y = -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; */ - - /* // Use the theme color for line numbers */ - /* free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, color); */ - /* } */ - - /* simple_renderer_flush(sr); */ - /* } */ - - + /* current line number */ if (showLineNumbers) { simple_renderer_set_shader(sr, SHADER_FOR_TEXT); @@ -756,11 +737,17 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Calculate display line number based on relative number setting size_t displayLineNumber; if (relative_line_numbers) { - // Show the distance from the current line instead of the absolute line number - displayLineNumber = (i >= currentLineNumber) ? i - currentLineNumber : currentLineNumber - i; + if (i == currentLineNumber) { + // Display the actual line number for the current line + displayLineNumber = currentLineNumber + 1; + } else { + // Show the distance from the current line for other lines + displayLineNumber = (i > currentLineNumber) ? i - currentLineNumber : currentLineNumber - i; + } } else { displayLineNumber = i + 1; } + snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", displayLineNumber); Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; @@ -778,49 +765,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } - - - - - - - - // chain - /* if (showLineNumbers) { */ - /* simple_renderer_set_shader(sr, SHADER_FOR_TEXT); */ - - /* size_t currentLineNumber = editor_cursor_row(editor); */ - - /* Vec4f defaultColor = themes[currentThemeIndex].line_numbers; */ - /* Vec4f currentLineColor = themes[currentThemeIndex].current_line_number; */ - - /* char lineNumberStr[10]; */ - /* Vec2f pos = {0, 0}; */ - - /* for (size_t i = 0; i < editor->lines.count; ++i) { */ - /* // Calculate display line number based on relative number setting */ - /* size_t displayLineNumber = relative_line_numbers */ - /* ? (i >= currentLineNumber) ? i - currentLineNumber : currentLineNumber - i */ - /* : i + 1; */ - - /* snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", displayLineNumber); */ - - /* pos.y = -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; */ - - /* Vec4f* colorToUse = &defaultColor; // Use a pointer to avoid copying the whole struct */ - /* if (highlight_current_line && i == currentLineNumber) { */ - /* colorToUse = ¤tLineColor; */ - /* } */ - - /* free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, *colorToUse); */ - /* } */ - - /* simple_renderer_flush(sr); */ - /* } */ - - - - // Render text { simple_renderer_set_shader(sr, SHADER_FOR_TEXT); @@ -864,7 +808,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case TOKEN_KEYWORD: /* color = hex_to_vec4f(0xFFDD33FF); */ color = themes[currentThemeIndex].logic; - break; case TOKEN_COMMENT: @@ -982,7 +925,9 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case TOKEN_ARRAY_CONTENT: color = themes[currentThemeIndex].array_content; break; - + case TOKEN_BAD_SPELLCHECK: + color = themes[currentThemeIndex].bug; + break; case TOKEN_STRING: /* color = hex_to_vec4f(0x73c936ff); */ color = themes[currentThemeIndex].string; @@ -1007,7 +952,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render cursor - simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + simple_renderer_set_shader(sr, SHADER_FOR_EPICNESS); // Exit early if the editor has a mark and should not render the cursor // since the camera follow the cursor i cant do it or i dont know how @@ -1128,12 +1073,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->camera_pos.x = 3850.0f; } } - - - - - - } } diff --git a/src/editor.h b/src/editor.h index 1080d168..d1229b0c 100644 --- a/src/editor.h +++ b/src/editor.h @@ -142,6 +142,8 @@ void editor_stop_search_and_mark(Editor *e); void editor_search_next(Editor *e); void editor_search_previous(Editor *e); void editor_clear_mark(Editor *editor); +void move_camera(Simple_Renderer *sr, const char* direction, float amount); + extern float zoom_factor; extern bool showLineNumbers; diff --git a/src/lexer.c b/src/lexer.c index 17fbc3c8..627c86b0 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -94,6 +94,8 @@ const char *token_kind_name(Token_Kind kind) return "open_square"; case TOKEN_CLOSE_SQUARE: return "close_square"; + case TOKEN_BAD_SPELLCHECK: + return "bad_spellcheck"; default: UNREACHABLE("token_kind_name"); } @@ -244,6 +246,39 @@ Token lexer_next(Lexer *l) } } + + + + + /* // all bad spell */ + /* if (l->cursor < l->content_len) { */ + /* // Check for other words or identifiers here */ + /* // Example: */ + /* if (isalpha(l->content[l->cursor])) { */ + /* size_t potential_length = 0; */ + + /* // Count the potential word length */ + /* while (l->cursor + potential_length < l->content_len && isalnum(l->content[l->cursor + potential_length])) { */ + /* potential_length++; */ + /* } */ + + /* // If potential word was detected and not empty */ + /* if (potential_length > 0) { */ + /* // Mark all words as TOKEN_BAD_SPELLCHECK */ + /* token.kind = TOKEN_BAD_SPELLCHECK; */ + /* token.text_len = potential_length; */ + /* lexer_chop_char(l, potential_length); */ + /* return token; */ + /* } */ + /* } */ + /* } */ + + + + + + + // Check for arrays if (l->cursor < l->content_len) { char current_char = l->content[l->cursor]; diff --git a/src/lexer.h b/src/lexer.h index feebbed7..dbbabb25 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -34,6 +34,7 @@ typedef enum { TOKEN_OPEN_SQUARE, TOKEN_CLOSE_SQUARE, TOKEN_ARRAY_CONTENT, + TOKEN_BAD_SPELLCHECK, } Token_Kind; const char *token_kind_name(Token_Kind kind); diff --git a/src/main.c b/src/main.c index eec1f6ee..0d422c18 100644 --- a/src/main.c +++ b/src/main.c @@ -36,9 +36,10 @@ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) #define FONT_DIR "~/.config/ded/fonts/" -#define DEFAULT_FONT "jet-extra-bold.ttf" + /* #define DEFAULT_FONT "jet-extra-bold.ttf" */ /* #define DEFAULT_FONT "Letters.ttf" */ -#define MAX_FONTS 100 +#define DEFAULT_FONT "designer.otf" +#define MAX_FONTS 20 #define MAX_PATH_SIZE 1024 char *fonts[MAX_FONTS]; @@ -181,8 +182,7 @@ int main(int argc, char **argv) { initialize_themes(); - /* resolve_shader_path(); */ - + initialize_shader_paths(); Errno err; FT_Library library = {0}; @@ -327,9 +327,12 @@ int main(int argc, char **argv) + + bool quit = false; - bool file_browser = false; bool repl = false; + bool file_browser = false; + static bool file_creation_mode = false; // To track if we're in "file creation mode" static char new_filename[PATH_MAX] = ""; // To accumulate filename static size_t filename_cursor = 0; // Cursor for where we're writing in new_filename @@ -514,6 +517,29 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { SDL_Event tmpEvent; // Declare once at the beginning of the switch block + + case SDLK_RETURN: { + if (editor.searching) { + editor_stop_search_and_mark(&editor); + current_mode = NORMAL; + } else { + printf("Return key pressed\n"); // Debug print to check if the case is executed + // Allocate a buffer to hold the extracted word. Assuming the maximum word length is 255 characters. + char word[256]; + + // If the word is successfully extracted, print it to the debug output. + if (extractWordUnderCursor(&editor, word)) { + printf("Extracted word: %s\n", word); // Debug print + } else { + printf("No word under cursor\n"); // Debug print when there is no word under the cursor + } + } + } + break; + + + + case SDLK_ESCAPE: { editor_clear_mark(&editor); editor_stop_search(&editor); @@ -521,6 +547,19 @@ int main(int argc, char **argv) } break; + case SDL_MOUSEWHEEL: + if (event.wheel.y > 0) { // Scroll up + printf("Scroll Up event captured\n"); // Debug print + move_camera(&sr, "up", 20.0f); // Notice &sr, passed the address of sr + } else if (event.wheel.y < 0) { // Scroll down + printf("Scroll Down event captured\n"); // Debug print + move_camera(&sr, "down", 20.0f); // Notice &sr, passed the address of sr + } + break; + + + + case SDLK_LEFTBRACKET: if (SDL_GetModState() & KMOD_ALT) { @@ -751,7 +790,9 @@ int main(int argc, char **argv) case SDLK_j: // Down editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { + if ((event.key.keysym.mod & KMOD_ALT) && !is_animated) { + move_camera(&sr, "down", 50.0f); + } else if (event.key.keysym.mod & KMOD_CTRL) { editor_move_paragraph_down(&editor); } else { editor_move_line_down(&editor); @@ -761,7 +802,9 @@ int main(int argc, char **argv) case SDLK_k: // Up editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { + if ((event.key.keysym.mod & KMOD_ALT) && !is_animated) { + move_camera(&sr, "up", 50.0f); + } else if (event.key.keysym.mod & KMOD_CTRL) { editor_move_paragraph_up(&editor); } else { editor_move_line_up(&editor); @@ -769,6 +812,8 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; + + case SDLK_l: // Right editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { @@ -969,6 +1014,9 @@ int main(int argc, char **argv) } break; + + + case SDLK_f: { if (event.key.keysym.mod & KMOD_CTRL) { editor_start_search(&editor); @@ -1218,9 +1266,14 @@ int main(int argc, char **argv) SDL_GetWindowSize(window, &w, &h); glViewport(0, 0, w, h); Vec4f bg = themes[currentThemeIndex].background; + glClearColor(bg.x, bg.y, bg.z, bg.w); glClear(GL_COLOR_BUFFER_BIT); + + + + /* if (file_browser) { */ /* fb_render(&fb, window, &atlas, &sr); */ /* } else { */ diff --git a/src/simple_renderer.c b/src/simple_renderer.c index b13fe250..f9f1eb4e 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -11,41 +11,39 @@ #include // hardocded -#define vert_shader_file_path "./shaders/simple.vert" - -static_assert(COUNT_SIMPLE_SHADERS == 4, "The amount of fragment shaders has changed"); -const char *frag_shader_file_paths[COUNT_SIMPLE_SHADERS] = { - [SHADER_FOR_COLOR] = "./shaders/simple_color.frag", - [SHADER_FOR_IMAGE] = "./shaders/simple_image.frag", - [SHADER_FOR_TEXT] = "./shaders/simple_text.frag", - [SHADER_FOR_EPICNESS] = "./shaders/simple_epic.frag", -}; +/* #define vert_shader_file_path "./shaders/simple.vert" */ +/* static_assert(COUNT_SIMPLE_SHADERS == 5, "The amount of fragment shaders has changed"); */ +/* const char *frag_shader_file_paths[COUNT_SIMPLE_SHADERS] = { */ +/* [SHADER_FOR_COLOR] = "./shaders/simple_color.frag", */ +/* [SHADER_FOR_IMAGE] = "./shaders/simple_image.frag", */ +/* [SHADER_FOR_TEXT] = "./shaders/simple_text.frag", */ +/* [SHADER_FOR_EPICNESS] = "./shaders/simple_epic.frag", */ +/* [SHADER_FOR_GLOW] = "./shaders/simple_glow.frag", */ +/* }; */ -// TODO -/* #define COUNT_SIMPLE_SHADERS 4 */ -/* static_assert(COUNT_SIMPLE_SHADERS == 4, "The amount of fragment shaders has changed"); */ -/* const char *resolve_shader_path(const char *shader_file_name) { */ -/* static char resolved_path[512]; */ -/* const char* home_dir = getenv("HOME"); */ -/* if (!home_dir) { */ -/* fprintf(stderr, "Error: HOME environment variable not set\n"); */ -/* exit(EXIT_FAILURE); // Exit if HOME is not found */ -/* } */ -/* snprintf(resolved_path, sizeof(resolved_path), "%s/.config/ded/shaders/%s", home_dir, shader_file_name); */ -/* return resolved_path; */ -/* } */ +// still hardcoded but ~/.config is cool +char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; +char frag_shader_file_paths[COUNT_SIMPLE_SHADERS][MAX_SHADER_PATH_LENGTH]; -/* const char *vert_shader_file_path = resolve_shader_path("simple.vert"); */ -/* const char *frag_shader_file_paths[COUNT_SIMPLE_SHADERS] = { */ -/* [SHADER_FOR_COLOR] = resolve_shader_path("simple_color.frag"), */ -/* [SHADER_FOR_IMAGE] = resolve_shader_path("simple_image.frag"), */ -/* [SHADER_FOR_TEXT] = resolve_shader_path("simple_text.frag"), */ -/* [SHADER_FOR_EPICNESS] = resolve_shader_path("simple_epic.frag"), */ -/* }; */ +void set_shader_path(char* buffer, const char* shaderName) { + const char* home = getenv("HOME"); + snprintf(buffer, MAX_SHADER_PATH_LENGTH, "%s/.config/ded/shaders/%s", home, shaderName); +} + +void initialize_shader_paths() { + set_shader_path(vert_shader_file_path, "simple.vert"); + + set_shader_path(frag_shader_file_paths[SHADER_FOR_COLOR], "simple_color.frag"); + set_shader_path(frag_shader_file_paths[SHADER_FOR_IMAGE], "simple_image.frag"); + set_shader_path(frag_shader_file_paths[SHADER_FOR_TEXT], "simple_text.frag"); + set_shader_path(frag_shader_file_paths[SHADER_FOR_EPICNESS], "simple_epic.frag"); + set_shader_path(frag_shader_file_paths[SHADER_FOR_GLOW], "simple_glow.frag"); +} +// Call initialize_shader_paths() early in your program. diff --git a/src/simple_renderer.h b/src/simple_renderer.h index 279fd564..c2824f5d 100644 --- a/src/simple_renderer.h +++ b/src/simple_renderer.h @@ -39,6 +39,7 @@ typedef enum { SHADER_FOR_COLOR = 0, SHADER_FOR_IMAGE, SHADER_FOR_TEXT, + SHADER_FOR_GLOW, SHADER_FOR_EPICNESS, // This is the one that does that cool rainbowish animation COUNT_SIMPLE_SHADERS, } Simple_Shader; @@ -62,7 +63,17 @@ typedef struct { Vec2f camera_vel; } Simple_Renderer; -extern const char *vert_shader_file_path; + +// old +/* extern const char *vert_shader_file_path; */ + + +#define MAX_SHADER_PATH_LENGTH 256 +extern char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; + + + + void simple_renderer_init(Simple_Renderer *sr); diff --git a/src/todo.org b/src/todo.org index 998ea481..a6c5bef6 100644 --- a/src/todo.org +++ b/src/todo.org @@ -24,17 +24,13 @@ code minimap based on https://github.com/Ivoah/minimap - ** Lexer syntax highlighting for : | || & && different shader per token different font per token - ** Dinamic cursor adjust syze based on overed glyph - ** Font changing font more times than the total number of font you have inside =~/.config/ded/fonts= should not crash - ** Camera - when animation are false move the camera like in emacs or vim + when animation are false move the camera like in emacs or vim [x] diff --git a/test.py b/test.py deleted file mode 100644 index e69de29b..00000000 From 9cf898cb0de2403b0397d4a64d43657ff93edf68 Mon Sep 17 00:00:00 2001 From: laluxx Date: Tue, 3 Oct 2023 01:40:52 +0000 Subject: [PATCH 26/74] trasparent-cursor-when-mark --- src/editor.c | 8 ++++++++ src/todo.org | 36 ------------------------------------ todo.org | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 54 insertions(+), 36 deletions(-) delete mode 100644 src/todo.org create mode 100644 todo.org diff --git a/src/editor.c b/src/editor.c index f8fd1cc3..9daf2de9 100644 --- a/src/editor.c +++ b/src/editor.c @@ -960,6 +960,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer /* return; // Skip the cursor rendering */ /* } */ + // Adjust cursor position if line numbers are shown if (showLineNumbers) { cursor_pos.x += lineNumberWidth; @@ -977,6 +978,13 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->verticies_count = 0; + + // If editor has a mark, make the cursor transparent + if (editor->has_mark) { + CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) + } + + // Rendering based on mode switch (current_mode) { case NORMAL: diff --git a/src/todo.org b/src/todo.org deleted file mode 100644 index a6c5bef6..00000000 --- a/src/todo.org +++ /dev/null @@ -1,36 +0,0 @@ -#+title: Todo - - -* TODO -every function defined in the code should be callable while the app is running -add dwm like configuration files so the user could extend the editor -in those files everyy function could be redefined -** Mouse support -clickable links -ctrl click for documentation on the thing -mouse scroll -ctrl scroll should scroll more -** Evil Mode -splits [] -5k should work [] -shift + 8 [] -** Modeline -show the current EvilMode file name info and cool icons -** Minibuffer -to get user input for anything and everything - -** Minimap -code minimap based on https://github.com/Ivoah/minimap - - - -** Lexer -syntax highlighting for : | || & && -different shader per token -different font per token -** Dinamic cursor -adjust syze based on overed glyph -** Font -changing font more times than the total number of font you have inside =~/.config/ded/fonts= should not crash -** Camera - when animation are false move the camera like in emacs or vim [x] diff --git a/todo.org b/todo.org new file mode 100644 index 00000000..1699ced7 --- /dev/null +++ b/todo.org @@ -0,0 +1,46 @@ +#+title: Todo + + +* TODO +every function defined in the code should be callable while the app is running M-x [] + +dwm like configuration file so the user could extend the editor [] +in those files every function could be redefined +** Mouse support +clickable links with both cursor and mouse [] +ctrl click for documentation on the thing or enter in normal mode [] +mouse scroll [] +ctrl scroll should scroll more [] +** Evil Mode +splits [] +5k should work [] +shift + 8 [] +better than vim macros [] +** Modeline +show the current EvilMode, file name, info and cool icons +** Minibuffer +to get user input for anything and everything popups are for loosers + +** Minimap +code minimap based on https://github.com/Ivoah/minimap + + +** Lexer +syntax highlighting for : | || & && [] +different shader per token [] +different font per token [] +** Dinamic cursor +adjust syze based on overed glyph [] +** Font +changing font more times than the total number of font you have inside =~/.config/ded/fonts= should not crash +** Camera + when animation are false move the camera like in emacs or vim [x] + +** Shaders +use shaders from =~/.config/ded/shaders= instead [x] +** Editor +if editor->has_mark make the cursor trasparent [x] +support multiple marks not just one [] +highlight links [] +render wavy or normal line under text for errors or whatever [] +use window hight and width dinamicly instead of fixed position when animations are off [] From 7fe5eff0bb20225855c2cd712c62d11366e51553 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 4 Oct 2023 17:03:49 +0000 Subject: [PATCH 27/74] visual-line-indicator --- src/editor.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/editor.c b/src/editor.c index 9daf2de9..7f972b56 100644 --- a/src/editor.c +++ b/src/editor.c @@ -1018,6 +1018,19 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_solid_rect(sr, vec2f(cursor_pos.x + VISUAL_CURSOR_WIDTH - BORDER_THICKNESS, cursor_pos.y), vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); break; + + case VISUAL_LINE: + // Set the cursor width to cover the entire height of the line + CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE; + + // Adjust cursor color for visual distinction. For instance, make it slightly transparent + Vec4f TRANSPARENT_CURSOR_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.5f); // 50% transparency + + // Render the cursor for the entire line + simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), TRANSPARENT_CURSOR_COLOR); + + // If you'd like to add additional visual cues, consider adding a border or some other distinguishing feature. + break; } // Update camera From 294b98647d91f13b666ecf794c4067851e995e64 Mon Sep 17 00:00:00 2001 From: laluxx Date: Mon, 23 Oct 2023 01:45:43 +0000 Subject: [PATCH 28/74] deepclean --- build.sh | 41 +--------------- gif/pekora.gif | Bin 11420 -> 0 bytes src/editor.c | 25 +++++----- src/editor.h | 6 ++- src/main.c | 108 +++++------------------------------------- src/simple_renderer.h | 5 ++ 6 files changed, 37 insertions(+), 148 deletions(-) delete mode 100644 gif/pekora.gif diff --git a/build.sh b/build.sh index 197bf812..6f76b4d5 100755 --- a/build.sh +++ b/build.sh @@ -7,49 +7,10 @@ PKGS="sdl2 glew freetype2" CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -D_DEFAULT_SOURCE" LIBS=-lm # SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c" -SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c src/repl.c" +SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c" if [ `uname` = "Darwin" ]; then CFLAGS+=" -framework OpenGL" fi $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS` - - - - -#!/bin/sh - -# set -xe -# -# CC="${CXX:-cc}" -# PKGS="sdl2 glew freetype2" -# CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb" -# LIBS=-lm -# # SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c" -# SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c src/repl.c" -# -# -# if [ `uname` = "Darwin" ]; then -# CFLAGS+=" -framework OpenGL" -# fi -# -# $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS` - - - - -# ORIGINAL -# set -xe - -# CC="${CXX:-cc}" -# PKGS="sdl2 glew freetype2" -# CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb" -# LIBS=-lm -# SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c" - -# if [ `uname` = "Darwin" ]; then -# CFLAGS+=" -framework OpenGL" -# fi - -# $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS` diff --git a/gif/pekora.gif b/gif/pekora.gif deleted file mode 100644 index a842ab01c9a6f0e061eb4868b43a7960015f3594..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11420 zcma*tcTiIc+b!^&N(vo8ni_iOp@^X1N$4OdiXu&vu!zTPw6d*AQg%rHB{F#P$Owbru@jP%uy*}DL~fDZtO?4!@i3?|yiEz7mE(sQGoC^vTN+DqTc?fcvN9W8lSOO8NvydEE~Y zyXQ|1kB*BM4~q_^BsnF5QMak)T#p&f0H>+Z5YKy%e0Vz$HS0NB+ z7ZlQ3)(${}I=j0eJ_7)3ls-BJg2SJ|=Eu9{p$lU(14|3zuh*6!vyv>SQ&WhEo?h`C zmYs(mMiIMHlte}mM@Ks@2!Y)=#!A4Ex+rXh)D9XY0)@KMX)c-D=g|EtED(Fc0UXKC zvG0uJ$2bhQupR6dcB@(j;GO3k?BB=%^)4fJ+*G4_^0`#C>&C53@vFEZ?aS;c#(UWF zVd}|eZY<)v%^XgmkBY)E#oZ+rOOl{OZjTyxf1V>1Hq& z;EXV|bA~11&w=-Na~COBIWJ~#;d&-1AqS&(#)9^z8|@)afRFZE=fjG@_YR`exWQOa z+}ybcK!uBY57P?{L(XB(NArrO=0n-!>EoWJ%Kl!x4BC5}Lg9-pxMhy1d95ho`w6 zHY1cGnv`VIVo5nodLv>E=Bsvli!jPO9~yT>rermlB}m3C&zSF90l2UNhDu*LZTdF( zV28|xNd2TSDE-WmyI@thmr-Yx^>tO?yR4% zjo3*KH>G-k zcIY6_5<=(K29K?FfjOjNSC^JebvL(J#!e5b$MB85@87-~^mDl2K6DH8bCZ1ECg!|v zmvzL9_zHT+X^%9u+Q?FrKV+B){B_opKKM*iE(0kh6<;@Max7}-IY%Dmk=O;ZOmLrt zOB7*LhWOK9Qt&?8r%CQ?5xy6eRTwqxpz6ze=<5MBYU4+3=Jk370T!KkYoJY)o#a9O zNIagu1snArGW30X1*7i6LG=-7hU2k^edkhKytewx5bU~maJF?MjFBhiUdy|rF&eO5 zR>yvG{lFuk$EqQ8c0c8o^yu%1>MNN0bx)FUKi&(8KOwvyKDPbiBf~)P=dKnLs6S{S z0Rcb3c)m|`*AVxq+)>W^DYsQ%E!bc=}=Q!J)iOthF{G2QwnTL04Oe?R|)7M2t0 z#zd~p-7sI#{wJ$$Ede8-b} zIKgKRb5|7Fiymscc5x=l?9J!<#~f~v$V%s~-43S6$}$Oxjq$UNP=`iQW7DA!6L%bvCO{V!SN9s z0zgbBGmw=r5L7>U89k&pJu?#-w-t+wDT+ZYt*lJSuOnE0;0m6mt8y9Q8A4LTT|Saf z_2SIQ2S3!_DuFR}BofQZqth1Dj@}@Yu$-`6Kqm^$C$xWiaE(2$FG~1`CaKv}-0+67 zg_HLHPkdplEV5tNc(>CKw%nmXOEw!D%mf`32ou+~Yt7XIMb^8-yQT1=6!euf63z0I z@Ifa@9ei{~DSF5)(?#?=sX7ILcOr@}6tZxEA14}#dUd6VgM-^fo^^JmU+LUuIIlA|uFXT(ZPc z^hhqZ?YbuG?;VeeSj0+^O58)2R_3n~Je>q`jW@;cC=P3|tXM;^7pkfD4Rb`}xS zTZU)VST2m0fZ* zz^SI}md>!{ZfU7h9b-HQ=3#u7kmWsUDHV$aTRB2(*h^h7QH<2J?1xsS(k4+>&I6Wl z=hsULNc2ELUMUeJLCZSdQe2#8Y$2U) zLcbAV62p|`clcpyf_IGlO$pN!X88G?g8r$=f1{+e_QtiBZ)6z0+j(`Fk)LIgZqcWP z`-Nfg6#_M1b+pf(CzA&2&lru#H@fmVLS}YTA}1f{UHvGy3Tv3Sc}2@->dl_d75fJd zwal4@ghMQSgVdqNLE#C|P{Wv$uvpo|#87x@T6#uSHY8UIR#sRDD=twBFDr+Z*QZxi z*WeQB8yX)aJ#Lk+NMOkd3++*i7z<}%2}>A)AV#F)$CLU)=b+C+r(f8CLbIPf+ekpZ zL@cjlF3!I~e%}22?zI@I=i^Jpx#vFD$%Ft#_j!-s))p^-u{#_u=07jim6%}8Z|1Z^J{usa?L0SqE_O6CgHIEO z*cKNpQoE=|UR)N=%bW2wwtTuf+mm3Xho{ZBrNq@{G|V+QsAKNa3eZd~ z8~PZ%D@M_9A@La>o?b%K;`S9G&;ya&tmZRhcqgchuLK%ueeJ!aG!gVSI1|2+>?Sl}#7{mM;AwBKjR?hOkwtB+f86qh`UzB)O=9FZ| z<@l3cUmO!yFQ($p}x=|0T-ED+~Slp z+x2D_2=P~Hm^bvY(VFAT+ndGNm%_PSGmxC_p!|NL8D|Zw>*r}`-;FeK5rpFIP?8tt zzOE%mODQdt$!~sJSkdBB3a=S7E;~@sB2x|%I54yUuXUiw*yb&*d)5dDr*HbV+PRd~ zRrb19gK8muQZbJvKa|P`@&1A+xJDTf<(kLS?o}SxIB!^{F-;JvXb|!}QFTam`rdZC zu_~POWFKr3@T67nesvpC_6G%y@L1eI_iE4XbYm?t;pI&zntQ z2EpL+$8qDv`vj6@SB65&$q1@f%Y}bB!3yvL2LBf){zMKY6-*xfR3)Ysznx&F3nmpz z9+*@x!CdumBU z4cuCa>)}?JsY5~LHeH4GY&*N9TReX0_lRO2Z=Lao-<{)Rr>^dqFog(&n8F@vK-B^Q zqbZ=!Fco;j(dZN?B`zKZPfSWpp=2s$XXmEE^9$qyixP{V)pg|+vMI&2wLuVZ7J#Lr zQM4o)ks3fjqEMZ5dIcygXd)1Sh?*E0MxoJ+g6HEiGcPE8t4Jhd;U%N%?sLjo%+&OB zG%M@e2Ib`V(A@CwS!7EbE&C zEc@cFoj{1#Nsf)w@qR9#!%N1hA>n;oOsHS9pgRBhqIgNdRz{AYx}z!Er9kDADQWLl zpN3M>?NxyE~|UTINN z8ttt-N{080^#{IA}uGZS;;=3BWbrsVd$tn3^WJMELiWD? z#l@nR0eoLRUm>}@rBZ#7lep)OA7XbF1NKj2&!6YB4a{M?*tYWu#%aQti`-l+2niDy z-FXG&vB5al4)YTnqm;{wUq>IB*wqEjgiQrT9SKG(-Wt#3B7uz`C`rJzgNu_RNha|$ zR+F`mf(P>KFNQ&rup41w=4vHJqIDc-B;3uzBB&G);)PQvpywzhNjRC}n6ys-IMv?+ zAXnC7>(cf){#KomtjE|}mh!0jPQ9)&sM0GiUYm7scrdq$KAWr+YCS|?^R+k>NOKRM z(klJP6%`KOM3w4J^1D}*EzPVK>xMt~sD2Xs%?>`?Vl0;&X37Or4=f1E?AHyu<2N5N z2F14O8y+xohoI{T_q5FWvm4>l&i52r-j>SB*O|ChOSHZp^w5EW7T31htOiQ2yHVyn zWRM@+aRgw?*>0y(&IAB;ZE4GOK~WwIBAm}Bv8I>TXH&Zwl<>HwUpAr4yBSc8^hU{6 z&3VHyPws0E%S7N6`qbh{Dnnv{b1J}J>5JZD>UqTap2?n83WH@<;wIXZN9-u$f+Jd~ z19w5o$bMwn;}WaYOK`)WqtE3#(k`o!khVjT&l=zc=H~>XuaPQ%N#6&uN>ENlj!)x5 zCBpVg68dCDLI~uY@8JN5J!C0tKc{iIK;!V2sYHnOSBCukc5M*i{}de*a1by8tp0P+ zVS4i$p5Ft_A9a}IFyUdU!zAawZ8ZO5I{7bkk_f`Bx2{FhV1|9R(=`rl8??fFWK+xg z6W&s>SMmLFhePlyb?%wx&(6qy_6ekCEY)laYLz}dyNQtZ?Rp~K@>8Mj?#4ac^GtVw zA!lG@J*aX}Ff|Yq9`P4EN{N~V4NOQp22V~&PYcY}%E`%3hZl;mh*lS2gG-W2pbgEH zH7xBwZJl^pX;V`O)0vL;5xR0lSuip^C=dl1M9-o}vl)R;mzWb)4D}6UdSGt84%GiD zWG!%Yd1`NCHZgW5n05}%8uZlJwV<}cUyvS{oG+#zb z5;>#JrDbqDRcqMCCz3K=W_{$9nf{%vs5>SE24;S<3vmEj{B}$fwr9aPMPlueH=ko? z!&toBzjQYWH;z_u`oK>DA*SQG#S>mz2SIYh&!IS405;vX19l?D{La3e;rn+(L2zuj zjxDzm2JaB2v~1<|InP3HfS%g8o-1c4FE6 z>^FV_O#8fLL85GEyadMqBIqg;jh);S5nBPI-5q?hLyEY%j}t0?)4nLdY-xgqPA~2} z1i#brwGd%4Vj+3;mU&KhW~l8>K`!nvKD4lvVb{;EjJK3dPf=C@ik$og^?dGA(eU1|V9?H!UcCzXs=X1B&b4Sfwk}opiRluKNzW?kaJfmafnO%nnt; zzpg)CJ$$|!r#yW&~Y%W<955#jeiu(n6Q zu(KxXK-c41ZqM4U%EQZ}N;d&s!`RrH8rz09#{^lf>5PD=o~mpr7x2~3PCZ|&hl{&# z9u0(=UEZCLbIRPCw8>k1G-VfZnm+CNmuJ-rmpm;s;FG)mZCkH?bw_tI>Uuv)9D09UrTGoppj-Yq0ozn-{A1W5=@EP4j~k_J}50 zz>xznDEc2uuz*jxHx);u-ns{M5IpQbf_L8JVT2@@j`ks=I+R*CO z^G{x^>+$z}&pdP_``i9K$wWd-V8I4Z-H6Dfa1b^2FL=Cc5)B%jmaYNM%*vsK7ibj~ zmFB?9nP@dsNJUm*q*PmjVLx&cI}nQ^(PvXE_7jLwC=mlVn?o;jk)70Zonb=M6exwAxT72pPLvwW zGvrb{okd*4vlJivw5x=Yxv6{1U58hK9|N|cWJ;zfU$csFVD))%xY!@3;-SMe*5ntY z?_B~xaGEQ90Lf5ZHkdy;e7c&mW3EckAhIX@(o)P>GqLVr0e<0?3c)st#Epa3)sSAE zoH>22s;W^G9@k-$DTTmLRxpmrnHL%gC`+W7U&igNQ*M$OX5Fz3TYu?FnqH&b>v0Q6 zx_eM=^L7}@lrua=U+Fjyv@)!vk=#D&K}bsqVTf&U=Rp}V2Bs1p{58Y`ZMju(79xIj zgL4`#NXHi=@FQM}Jqb4ZCh(PDAvV@%(?d2^CCPZ;AnF{AtSer;cmp^vPJ%+Q{5%kJ zel;gpQ8mu~KG5nz3t{s#po96Azbu3uv>}02=`?DzSl4#)d+I5rcLuC!ZR~Z$Ji{GRbnlA~K$+xf;mw_I; z2#R`D)2(od@bwv?wZN&(q3y(du;+H0GuVUZgJdZu!=2w)?{vxPwi3H4N_VOo=1XKn zIuG4reUGZHmG&M`&etUL3sgsT4S{s!ZnAoUsnrciFEyda6Q4Kh*iLY;>2&A`9m+s} zj%5<)#$zkHbV-2Pri{Aivw0i5-ur_7#8KzD+JNhr z(6L$VK0BWQkL-%i3l){~m1yF}wp}(7OZy%6pt6cm4osKpE_&&Vg3d}(+0^AX2`;S4 zt8^{aKm(&;BDL!PDIeE*Fhz5j_Jranw}{$TWbA^ww{nEEig8Z$fnv#T)& z9cFO)Zxa3KYMeCYO>3vPlDX-8uqpH1E(On=T9r+5reIiIJ;O;xBItEb?L_%}ntQA9 z=^6P(pPnqb4D0nxIebwRi`$$1UPX-69@ZrMTW$%s}J1k2gr@0lsH>rz{OKRWPGtZH? z@s6Oz;4Zcpp)?}Lm)U8; zOQwpCy_!HHua^pY8D2hfoa@mB1VI$R!Z>g1>SUl}pg&#Qwn_yJbhJV_LGNr@Zf}Jl z+&+adPH|sUt)_?Xyy`i(5k(wSwv|bYkI>}%f!Usywu+BQNzY;)9ZonYN89uq^w@wOef951mxgZ^`bX%Kr)i2^(4(J9TT)U zb5Py%?9f0YiZ?;j0@WQ)f^k&J9tSJ5UIRItc^}4ycHRtydhQ_?%%h zCL!b-T*;9tEv9)U&rTQdQVF%8o$-p}#ins4HJtfS9!*Pe^tE%%7tjQX4=6$YR!OkA zZ5v}b#mU=}n_cnUQJqAy9Y%iAwb}xq48_q;9ULlhq|P)eFoRVsomV6tqUdg@n+d8{ z$3|Gxx)rNC%FV3hVao;HKs_DoIC4+R4W7&POkm`v__#}V7Q4B+lhGa&mMihPC%>+1 zk-G=Z=RcyXmzY$#PnL5$iBp+z?|aSXHP#ll@E7l1f9($iHv zbs(T(Z}Mnz=3bZeP~N9;k=iyY-MMdGq4!q6H6QreO2x4mi7!7tgU`ocd?#>)miQdWvVk>9HqFRW1dvV9k`RG#qAHlGzbpD$63dHC-djF0Z=| ziVKrtnbQncDPctb)!<^nfper&N7=FbWh9x4ks6rdAYAlQjG>(fjNilDeL~1XZ0+X^ zLv}9H`|XS#X;Fb4;rH1=@B&rQ%$Ra$z)W4|+R{TWfn(+xjdG{;5*(K&h9W!ANN!0J zYV{((BZ;zl*pQO6d#3IBiZOA-k+41K5b^>28AclHmR%my!ixYwFc9nEVn)@QUUju4 z$!I%04RQ3MwB{8mjSdUSs`_4%vnVSL%s#%y0koeCg7WuA8$K!Y|E{sYbwS4;>Og&I z@jY>ceV;XI=VKPDDHmb^#%)J6K{{UCJ>x2#;yj1-9>JL^qeC$w?tF)dU{^#Tr|A_= zeXK26It`!npk4U&D>m+VpCeIoR4QPp+WaMg12RD+#UO!!5sNiW%X~lg@eZeW9%DOl z5UXYh9t`AP%EwS`ERVQbJJ_99HvOb3nL0Y}!jZHn5DGf)M0Sfxyg6fb zwHqTra~&699QCeIVS^<}SX$&sV=&pu3iCFbD~7M2$BkS>*G z-g|bev^2dX4G(V;v?wl*tDNyDD|k~Xt4U?7dz8g3m6n(AA9$TvlWSF7UM)=5c=_xR z$Rt8Gy3p=kMS}oQHllHmEUQqn;7%hq)8cS15i<>^!0x-b`r54@!1(K-J7?0X+J!tZ z1VAWd@p?N`hw9FuUqZM}^viqIttbPznp*ZtHak81Vyy%?Dj9dAnRA{4wI`sIyHw86rQq!ZpD(v;Bdo=P@)G;em7##>U+HGFro*RFL_xY|6EHC80 z#W?B01nEZ{F>my-_Whet6_e*(;ZcrRy-|L+s`&f~xDQtlY$ zT`FC+^PPb>JftUoEA+zg%O(pqtsK-!Ebyvo@ymd<>~CMz3ON-Zm; z#Xt&+rJjZftsFFq}7X=*DL^|^2#pJpGKjfFGsQdGm?r5+HrB=nmvcpgXQpo~T~ zZDNiGn&B)x$Y*#0XsXF>nno}ovLL(Ew}ku}LQ_5nBQJfEbXe;apekrmTB4uY2;!6D zc^bM9U+vIr7ziADcOJOC5gQ8N32aC)ntWKlPjEM{w-Jp;Q&jsgKesYu(Z`X{jf^%J z{Aum8vvM$1!j!fX>cZy7D#*fb6yFVwNR$@}j=g((Lrr0rVoSJ}k7!mAT{~Hxw#SM( z+Vb?oPQ#b(XRo*lY%rP^O7mAN2KBej& z*U3W~rrkz3@!?)9Uo+({8M)#$Lb6Tz6^mGQwfk1h!S3+Qz!|0lPwB9{$*Y7)2Yp#{ zCh=)bpR+yIVVDEHuV%NBeFNS z%yV5}NrmC1#ani?lCa{8aQD(2hndo{>a^0;g8E?hx5bt2>jQW9zq)UhH^OB-C9aca zWUG>Mi#F?bG=HCoy!x2&$1T;(~k4RTE+1Tkq7?f{zb97{=PR+ zJd#XTBbkKK#qQYz4BWZ3+0`TE@&ht-rQZZP>_y##j#{p@-mJD929$X5mn3%SmIwT& zIxL#}T)F+P#yV;3+Su)})gtF$d}islJK=VY{=1VG#NX~t*d2g!V{WK)6K zgB9?ivv0$%Mjb6Fk#E>oA)mFbBiYsjZsmFZ%M79%hxvxFRQ88a^S4Gl|qf?SNF%8G)Y@Z1$KoQ|m7 z7LDfl1xILp4g|w)vAxtQx1i)D{AI41!D)G`YasEI>0wTSiVIR!@YQZC2Csv1u(?xT zm%H~0$HF3~uypN~*L+K3{ihL^X9RGB1g+`u*KW}DM>nn$vRWJ81YOF~Ir0G98g^@n z$H@be`u*(!`eFQZ9N>8Ct$6Xru6JzyEx%Z*rS!!nMj9!1DdXm|`#j4ljYmko3dFS4 zcrRGkLm@ajGG_Oy=&a|8R02Fo;F9NXT{ukxdE{9GdwMo8g-qjTd9-d^a6V!h=}gDo<+KDvi~H(K#JSy$jZ3nL<`j?7 zxW*gAk1Tf03pdNU8<2J?^qfcruV9I&@}`ZXxV*KiB{_jl4nr{%*%PJEcv?$xb5_K| z!)XC(?s>sM(R=3Zfu_bY&;vGu0NlnZwV+7qJf}MhZI55i$uhOdDJ>msaWBh1liG)> zHOI?VNcFC+mjzB6IaPFso+8}OYq2U6jw|?9R@<%+v9Vu07A^LI@A>4qN05M1$5{3B zy3Ct~SuonGX(Vn#F3p@KyUq8?c~PPH;k)BiPJ8ae?dqLhHQT74zc$=E!12LePXxbw zugaCYZzbp|%Fp^<9Ccl!2FY=S72ozM{DyWPX8@}*N?g|6yGefT-upqhMiVbZ+|+l< zp6_-YHGO@`c73dOnKTQ+msCKj~;kXL=&V9 zO`SbpI}>ORyN(!Fq_he{{;># BB7*<` diff --git a/src/editor.c b/src/editor.c index 7f972b56..6aa2f886 100644 --- a/src/editor.c +++ b/src/editor.c @@ -1,5 +1,6 @@ #include #include +#include #include #include #include @@ -23,7 +24,7 @@ bool relative_line_numbers = true; // TODO bad implementation bool extractWordUnderCursor(Editor *editor, char *word) { // Make a copy of cursor position to avoid modifying the actual cursor - int cursor = editor->cursor; + size_t cursor = editor->cursor; // Move left to find the start of the word. while (cursor > 0 && isalnum(editor->data.items[cursor - 1])) { @@ -48,9 +49,6 @@ bool extractWordUnderCursor(Editor *editor, char *word) { strncpy(word, &editor->data.items[start], length); word[length] = '\0'; - // Debugging print - printf("Extracted word: %s\n", word); - return true; } @@ -806,7 +804,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer break; case TOKEN_KEYWORD: - /* color = hex_to_vec4f(0xFFDD33FF); */ color = themes[currentThemeIndex].logic; break; @@ -816,12 +813,14 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Checking for TODOOOO... char* todoLoc = strstr(token.text, "TODO"); - if (todoLoc && (todoLoc - token.text + 3) < token.text_len) { + if (todoLoc && (size_t)(todoLoc - token.text + 3) < token.text_len) { + size_t numOs = 0; char* ptr = todoLoc + 4; // Start right after "TODO" // Count 'O's without crossing token boundary - while ((ptr - token.text) < token.text_len && (*ptr == 'O' || *ptr == 'o')) { + while ((size_t)(ptr - token.text) < token.text_len && (*ptr == 'O' || *ptr == 'o')) { + numOs++; ptr++; } @@ -837,12 +836,14 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Checking for FIXMEEEE... char* fixmeLoc = strstr(token.text, "FIXME"); - if (fixmeLoc && (fixmeLoc - token.text + 4) < token.text_len) { + if (fixmeLoc && (size_t)(fixmeLoc - token.text + 4) < token.text_len) { + size_t numEs = 0; char* ptr = fixmeLoc + 5; // Start right after "FIXME" // Count 'E's without crossing token boundary - while ((ptr - token.text) < token.text_len && (*ptr == 'E' || *ptr == 'e')) { + while ((size_t)(ptr - token.text) < token.text_len && (*ptr == 'E' || *ptr == 'e')) { + numEs++; ptr++; } @@ -858,14 +859,16 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Checking for BUG... char* bugLoc = strstr(token.text, "BUG"); - if (bugLoc && (bugLoc - token.text + 2) < token.text_len) { + if (bugLoc && (size_t)(bugLoc - token.text + 2) < token.text_len) { + color = themes[currentThemeIndex].bug; } // Checking for NOTE... char* noteLoc = strstr(token.text, "NOTE"); - if (noteLoc && (noteLoc - token.text + 3) < token.text_len) { + if (noteLoc && (size_t)(noteLoc - token.text + 3) < token.text_len) { + color = themes[currentThemeIndex].note; } diff --git a/src/editor.h b/src/editor.h index d1229b0c..247b6629 100644 --- a/src/editor.h +++ b/src/editor.h @@ -35,8 +35,6 @@ typedef enum { INSERT, VISUAL, VISUAL_LINE, - COMMAND, - CHORDING } EvilMode; extern EvilMode current_mode; @@ -143,6 +141,10 @@ void editor_search_next(Editor *e); void editor_search_previous(Editor *e); void editor_clear_mark(Editor *editor); void move_camera(Simple_Renderer *sr, const char* direction, float amount); +bool extractWordUnderCursor(Editor *editor, char *word); +void editor_start_visual_selection(Editor *e); +void editor_start_visual_line_selection(Editor *e); +void editor_cut_char_under_cursor(Editor *e); extern float zoom_factor; diff --git a/src/main.c b/src/main.c index 0d422c18..b9323e92 100644 --- a/src/main.c +++ b/src/main.c @@ -36,9 +36,9 @@ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) #define FONT_DIR "~/.config/ded/fonts/" - /* #define DEFAULT_FONT "jet-extra-bold.ttf" */ +#define DEFAULT_FONT "jet-extra-bold.ttf" /* #define DEFAULT_FONT "Letters.ttf" */ -#define DEFAULT_FONT "designer.otf" +/* #define DEFAULT_FONT "designer.otf" */ #define MAX_FONTS 20 #define MAX_PATH_SIZE 1024 @@ -76,7 +76,6 @@ static Free_Glyph_Atlas atlas = {0}; static Simple_Renderer sr = {0}; static Editor editor = {0}; static File_Browser fb = {0}; -static Repl repl = {0}; FT_Face load_font_face(FT_Library library, const char *font_name, FT_UInt pixel_size) { @@ -104,24 +103,20 @@ FT_Face load_font_face(FT_Library library, const char *font_name, FT_UInt pixel_ return face; } -void prev_font(FT_Library library) { +void prev_font() { if (current_font_index == 0) { // Already at the first font, don't do anything. return; } current_font_index--; - FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); - // TODO: Apply the face to your text rendering system } -void next_font(FT_Library library) { +void next_font() { if (current_font_index == font_count - 1) { // Already at the last font, don't do anything. return; } current_font_index++; - FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); - // TODO: Apply the face to your text rendering system } @@ -155,9 +150,9 @@ void populate_font_list() { void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas *atlas, int direction) { if (direction > 0) { - next_font(library); + next_font(); } else { - prev_font(library); + prev_font(); } /* *currentFace = load_font_face(library, fonts[current_font_index]); */ *currentFace = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); @@ -330,13 +325,8 @@ int main(int argc, char **argv) bool quit = false; - bool repl = false; bool file_browser = false; - static bool file_creation_mode = false; // To track if we're in "file creation mode" - static char new_filename[PATH_MAX] = ""; // To accumulate filename - static size_t filename_cursor = 0; // Cursor for where we're writing in new_filename - while (!quit) { const Uint32 start = SDL_GetTicks(); SDL_Event event = {0}; @@ -427,16 +417,6 @@ int main(int argc, char **argv) } } break; - // TODO - /* case SDLK_t: { */ - /* if (!file_creation_mode) { */ - /* file_creation_mode = true; */ - /* memset(new_filename, 0, sizeof(new_filename)); // Reset filename buffer */ - /* filename_cursor = 0; */ - /* } */ - /* } break; */ - - case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { is_animated = !is_animated; // Toggle the state @@ -463,27 +443,6 @@ int main(int argc, char **argv) } } break; - // WARNING - case SDLK_RETURN: { - if (file_creation_mode) { - // Create the new file with name in new_filename buffer in the current directory - char full_path[PATH_MAX]; - snprintf(full_path, sizeof(full_path), "%s/%s", fb.dir_path.items, new_filename); - - FILE *new_file = fopen(full_path, "w"); - if (new_file) { - fclose(new_file); - file_creation_mode = false; // Exit file creation mode after creating file - // Optional: Refresh the file browser to show the new file - } else { - flash_error("Failed to create file %s: %s", full_path, strerror(errno)); - } - } else { - // Whatever behavior you want for RETURN key when not in file_creation_mode - } - } break; - - case FT_REGULAR: { // TODO: before opening a new file make sure you don't // have unsaved changes And if you do, annoy the user @@ -523,8 +482,8 @@ int main(int argc, char **argv) editor_stop_search_and_mark(&editor); current_mode = NORMAL; } else { - printf("Return key pressed\n"); // Debug print to check if the case is executed - // Allocate a buffer to hold the extracted word. Assuming the maximum word length is 255 characters. + // buffer to hold the extracted word. + // Assuming the maximum word length is 255 characters. char word[256]; // If the word is successfully extracted, print it to the debug output. @@ -612,15 +571,6 @@ int main(int argc, char **argv) } break; - case SDLK_COLON: // Assuming SDLK_COLON is the correct enum value for ':', adjust if not - current_mode = COMMAND; - - // Move cursor to the bottom left - // You would replace this with actual code to move your cursor. - // move_cursor_to_bottom_left(); - - break; - case SDLK_y: editor_clipboard_copy(&editor); break; @@ -735,10 +685,6 @@ int main(int argc, char **argv) } break; - /* case SDLK_x: */ - /* editor_cut_char_under_cursor(&editor); */ - /* break; */ - case SDLK_x: if (editor.selection) { editor_clipboard_copy(&editor); @@ -750,7 +696,6 @@ int main(int argc, char **argv) } break; - case SDLK_p: editor_clipboard_paste(&editor); break; @@ -759,15 +704,10 @@ int main(int argc, char **argv) editor_move_to_line_begin(&editor); break; - case SDLK_F1: - repl = true; - break; - case SDLK_F3: file_browser = true; break; - case SDLK_r: if (event.key.keysym.mod & KMOD_CTRL) { file_browser = true; @@ -812,8 +752,6 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - - case SDLK_l: // Right editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { @@ -1181,11 +1119,6 @@ int main(int argc, char **argv) break; // Add additional VISUAL mode keybinds here... - } - break; - - } - break; case VISUAL_LINE: switch (event.key.keysym.sym) { @@ -1241,11 +1174,12 @@ int main(int argc, char **argv) // More cases for other modes can follow here... // ... + } + break; + } break; - - case SDL_TEXTINPUT: if (file_browser) { // Once we have incremental search in the file browser this may become useful @@ -1270,28 +1204,12 @@ int main(int argc, char **argv) glClearColor(bg.x, bg.y, bg.z, bg.w); glClear(GL_COLOR_BUFFER_BIT); - - - - - /* if (file_browser) { */ - /* fb_render(&fb, window, &atlas, &sr); */ - /* } else { */ - /* editor_render(window, &atlas, &sr, &editor); */ - /* } */ - - if (file_browser) { - fb_render(&fb, window, &atlas, &sr); - } else if (repl) { - repl_render(&repl, window, &atlas, &sr); // Add the &atlas parameter here + fb_render(&fb, window, &atlas, &sr); } else { - editor_render(window, &atlas, &sr, &editor); + editor_render(window, &atlas, &sr, &editor); } - - - SDL_GL_SwapWindow(window); const Uint32 duration = SDL_GetTicks() - start; const Uint32 delta_time_ms = 1000 / FPS; diff --git a/src/simple_renderer.h b/src/simple_renderer.h index c2824f5d..58c38113 100644 --- a/src/simple_renderer.h +++ b/src/simple_renderer.h @@ -96,6 +96,11 @@ void simple_renderer_flush(Simple_Renderer *sr); void simple_renderer_sync(Simple_Renderer *sr); void simple_renderer_draw(Simple_Renderer *sr); +// ADDED +void initialize_shader_paths(); + + + /* const char *resolve_shader_path(const char *shader_file_name); */ #endif // SIMPLE_RENDERER_H_ From f29a01c51d1802b44e000af2133d0e742655cb93 Mon Sep 17 00:00:00 2001 From: laluxx Date: Tue, 14 Nov 2023 22:41:44 +0100 Subject: [PATCH 29/74] update --- src/editor.c | 15 ++++++------ src/editor.h | 2 ++ src/keychords.c | 63 ------------------------------------------------- src/keychords.h | 40 ------------------------------- src/main.c | 48 +++++++++++++++++++++++++------------ 5 files changed, 42 insertions(+), 126 deletions(-) delete mode 100644 src/keychords.c delete mode 100644 src/keychords.h diff --git a/src/editor.c b/src/editor.c index 6aa2f886..a451d25b 100644 --- a/src/editor.c +++ b/src/editor.c @@ -8,10 +8,13 @@ #include "./common.h" #include "./free_glyph.h" #include "./file_browser.h" +#include "simple_renderer.h" #include // For isalnum EvilMode current_mode = NORMAL; -float zoom_factor = 5.0f; +float zoom_factor = 3.0f; +float min_zoom_factor = 1.0; +float max_zoom_factor = 10.0; bool showLineNumbers = false; // This is the actual definition and initialization bool is_animated = true; // or false, depending on your initial requirement @@ -957,13 +960,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render cursor simple_renderer_set_shader(sr, SHADER_FOR_EPICNESS); - // Exit early if the editor has a mark and should not render the cursor - // since the camera follow the cursor i cant do it or i dont know how - /* if (editor->has_mark) { */ - /* return; // Skip the cursor rendering */ - /* } */ - - // Adjust cursor position if line numbers are shown if (showLineNumbers) { cursor_pos.x += lineNumberWidth; @@ -1005,7 +1001,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case VISUAL: // Draw inner rectangle with reduced alpha + if (t < CURSOR_BLINK_THRESHOLD || (t / CURSOR_BLINK_PERIOD) % 2 != 0) { simple_renderer_solid_rect(sr, cursor_pos, vec2f(VISUAL_CURSOR_WIDTH - 2 * BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), INNER_COLOR); + } + /* simple_renderer_solid_rect(sr, cursor_pos, vec2f(VISUAL_CURSOR_WIDTH - 2 * BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), INNER_COLOR); */ // Draw the outline (borders) using the theme's cursor color // Top border diff --git a/src/editor.h b/src/editor.h index 247b6629..f3db96cf 100644 --- a/src/editor.h +++ b/src/editor.h @@ -148,6 +148,8 @@ void editor_cut_char_under_cursor(Editor *e); extern float zoom_factor; +extern float min_zoom_factor; +extern float max_zoom_factor; extern bool showLineNumbers; // THEME diff --git a/src/keychords.c b/src/keychords.c deleted file mode 100644 index 8bb4800f..00000000 --- a/src/keychords.c +++ /dev/null @@ -1,63 +0,0 @@ -#include "keychords.h" -#include -#include -#include - -#include "file_browser.h" - -bool file_browser = false; - -Keychord keychords[] = { - {SEQ(SDLK_SPACE, SDLK_d, SDLK_j), NORMAL, ACTION_BOOL_SET, .action.boolSet = {&file_browser, true}}, - // ... other sequences ... -}; - -void capture_sequence(SDL_Event *event, KeySequence *currentSequence) { - if (currentSequence->length < MAX_SEQUENCE_LENGTH) { - currentSequence->keys[currentSequence->length++] = event->key.keysym.sym; - } -} - -void clear_sequence(KeySequence *currentSequence) { - currentSequence->length = 0; - memset(currentSequence->keys, 0, sizeof(currentSequence->keys)); -} - -bool sequence_matches(const KeySequence *seq1, const KeySequence *seq2) { - if (seq1->length != seq2->length) { - return false; - } - for (int i = 0; i < seq1->length; i++) { - if (seq1->keys[i] != seq2->keys[i]) { - return false; - } - } - return true; -} - -bool check_for_keychord(EvilMode mode, SDL_Event *event, KeySequence *currentSequence, Editor *editor) { - (void)editor; // To silence the unused parameter warning, if editor is not used in this context - capture_sequence(event, currentSequence); - - for (size_t i = 0; i < sizeof(keychords) / sizeof(Keychord); i++) { - if (mode == keychords[i].mode && sequence_matches(&keychords[i].sequence, currentSequence)) { - // Execute the action of the matching keychord - switch (keychords[i].type) { - case ACTION_FUNC: - keychords[i].action.func(); - break; - case ACTION_BOOL_SET: - *(keychords[i].action.boolSet.var) = keychords[i].action.boolSet.value; - break; - } - clear_sequence(currentSequence); - return true; - } - } - - // If you've reached here, no sequence matched. But don't clear sequence unless it's of maximum length. - if (currentSequence->length == MAX_SEQUENCE_LENGTH) { - clear_sequence(currentSequence); - } - return false; -} diff --git a/src/keychords.h b/src/keychords.h deleted file mode 100644 index 86271a25..00000000 --- a/src/keychords.h +++ /dev/null @@ -1,40 +0,0 @@ -#pragma once - -#include -#include "editor.h" - -typedef void (*ActionFunction)(); - -typedef enum { - ACTION_BOOL_SET, - ACTION_FUNC -} ActionType; - -#define MAX_SEQUENCE_LENGTH 10 - -typedef struct { - SDL_Keycode keys[MAX_SEQUENCE_LENGTH]; - int length; -} KeySequence; - -typedef struct { - KeySequence sequence; - EvilMode mode; - ActionType type; - union { - ActionFunction func; - struct { - bool *var; - bool value; - } boolSet; - } action; -} Keychord; - -#define SEQ(...) { .keys = {__VA_ARGS__}, .length = sizeof((SDL_Keycode[]){__VA_ARGS__}) / sizeof(SDL_Keycode) } - -extern Keychord keychords[]; // Declaration of keychords array without definition - -bool check_for_keychord(EvilMode mode, SDL_Event *event, KeySequence *currentSequence, Editor *editor); -void capture_sequence(SDL_Event *event, KeySequence *currentSequence); -void clear_sequence(KeySequence *currentSequence); -bool sequence_matches(const KeySequence *seq1, const KeySequence *seq2); diff --git a/src/main.c b/src/main.c index b9323e92..afbcc8e1 100644 --- a/src/main.c +++ b/src/main.c @@ -30,13 +30,12 @@ #include #include #include -#include -#include "keychords.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) #define FONT_DIR "~/.config/ded/fonts/" -#define DEFAULT_FONT "jet-extra-bold.ttf" +/* #define DEFAULT_FONT "jet-extra-bold.ttf" */ +#define DEFAULT_FONT "radon.otf" /* #define DEFAULT_FONT "Letters.ttf" */ /* #define DEFAULT_FONT "designer.otf" */ #define MAX_FONTS 20 @@ -170,8 +169,6 @@ void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas * // TODO: display errors reported via flash_error right in the text editor window somehow #define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) -KeySequence currentSequence = {0}; // This initializes a zero-length sequence - int main(int argc, char **argv) { @@ -349,6 +346,10 @@ int main(int argc, char **argv) printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed zoom_factor -= 0.8f; + + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } } } break; @@ -358,7 +359,10 @@ int main(int argc, char **argv) printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed zoom_factor += 0.8f; - if (zoom_factor < 1.0f) zoom_factor = 1.0f; // Ensure zoom_factor doesn't drop below a threshold + + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } } } break; @@ -609,7 +613,10 @@ int main(int argc, char **argv) theme_next(¤tThemeIndex); printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor -= 0.8f; + zoom_factor -= 1.0f; + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } } } break; @@ -618,8 +625,10 @@ int main(int argc, char **argv) theme_previous(¤tThemeIndex); printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor += 0.8f; - if (zoom_factor < 1.0f) zoom_factor = 1.0f; // Ensure zoom_factor doesn't drop below a threshold + zoom_factor += 1.0f; + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } } } break; @@ -636,7 +645,8 @@ int main(int argc, char **argv) case SDLK_i: current_mode = INSERT; - + // Reset the blink timer + editor.last_stroke = SDL_GetTicks(); /* is_animated = true; // TODO make this an option and smooth */ // Eat up the next SDL_TEXTINPUT event for 'i' @@ -818,12 +828,14 @@ int main(int argc, char **argv) case SDLK_MINUS: if (SDL_GetModState() & KMOD_CTRL) { - zoom_factor -= 2; + zoom_factor += 1.0f; + - if (zoom_factor < 1.0f) { - zoom_factor = 1.0f; + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; } + printf("zoom_factor = %f\n", zoom_factor); // Consume the next SDL_TEXTINPUT event for '-' SDL_Event tmpEvent; SDL_PollEvent(&tmpEvent); @@ -835,7 +847,13 @@ int main(int argc, char **argv) case SDLK_EQUALS: if (SDL_GetModState() & KMOD_CTRL) { - zoom_factor += 2; // Increase by a factor of 0.2 + zoom_factor -= 1.0f; + + printf("zoom_factor = %f\n", zoom_factor); + + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } // Consume the next SDL_TEXTINPUT event for '=' SDL_Event tmpEvent; @@ -1218,7 +1236,7 @@ int main(int argc, char **argv) } } return 0; - } +} // TODO: ability to search within file browser // Very useful when you have a lot of files From 098537a0e8f2a0c0e875b009cae8f35b3938e278 Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 17 Nov 2023 06:57:37 +0100 Subject: [PATCH 30/74] update --- src/common.h | 2 +- src/editor.c | 244 ++++++++++++++++++++++++------------------ src/editor.h | 9 +- src/file_browser.c | 2 +- src/lexer.c | 75 ++++++++++++- src/lexer.h | 7 ++ src/main.c | 44 +++++--- src/simple_renderer.c | 2 +- 8 files changed, 265 insertions(+), 120 deletions(-) diff --git a/src/common.h b/src/common.h index 1bbbe7e2..6daecb14 100644 --- a/src/common.h +++ b/src/common.h @@ -9,7 +9,7 @@ #define SCREEN_WIDTH 800 #define SCREEN_HEIGHT 600 -#define FPS 60 +#define FPS 144 #define DELTA_TIME (1.0f / FPS) #define CURSOR_OFFSET 0.13f diff --git a/src/editor.c b/src/editor.c index a451d25b..ea2a50f5 100644 --- a/src/editor.c +++ b/src/editor.c @@ -8,6 +8,7 @@ #include "./common.h" #include "./free_glyph.h" #include "./file_browser.h" +#include "lexer.h" #include "simple_renderer.h" #include // For isalnum @@ -15,11 +16,11 @@ EvilMode current_mode = NORMAL; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; float max_zoom_factor = 10.0; -bool showLineNumbers = false; // This is the actual definition and initialization -bool is_animated = true; // or false, depending on your initial requirement +bool showLineNumbers = false; +bool isAnimated = true; -bool highlight_current_line = true; -bool relative_line_numbers = true; +bool highlightCurrentLineNumber = true; +bool relativeLineNumbers = false; @@ -82,42 +83,43 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { -int currentThemeIndex = 0; +int currentThemeIndex = 4; Theme themes[5]; void initialize_themes() { themes[0] = (Theme) { - .cursor = hex_to_vec4f(0x80D4FFFF), // Purple Cursor from --color-primary - .text = hex_to_vec4f(0xFFFFFFFF), // Main text color, based on --color-foreground for dark mode - .background = hex_to_vec4f(0x0D0D0DFF), // Background, from --color-background for dark mode - .comment = hex_to_vec4f(0x808080FF), // Comments with muted foreground, from --color-foreground-muted for dark mode - .hashtag = hex_to_vec4f(0xD6EBFFFF), // Using the hover link color for hashtags - .logic = hex_to_vec4f(0x80D4FFFF), // Logic color same as --color-links for dark mode - .string = hex_to_vec4f(0x2E2E2EFF), // Border color for strings - .selection = hex_to_vec4f(0x1A1A1AFF), // Selection using the muted border color - .search = hex_to_vec4f(0x808080FF), // Search color similar to comments - .marks = hex_to_vec4f(0x171717FF), // Marks using the raised background - .todo = hex_to_vec4f(0x1E1E1EFF), // Todos with slightly more visible background - .line_numbers = hex_to_vec4f(0x808080FF), // Muted line numbers - .fixme = hex_to_vec4f(0xCCD6F5FF), // Slightly brighter color for emphasis on FIXMEs - .note = hex_to_vec4f(0x808080FF), // Notes with muted foreground - .bug = hex_to_vec4f(0xF5F5F5FF), // Bugs with bright foreground - .not_equals = hex_to_vec4f(0x80D4FFFF), // Using links color for not equals - .exclamation = hex_to_vec4f(0xCCD6F5FF), // Slight emphasis for exclamation - .equals = hex_to_vec4f(0x808080FF), // Muted equals color - .equals_equals = hex_to_vec4f(0x808080FF), // Muted equals_equals color - .greater_than = hex_to_vec4f(0x80D4FFFF), // Links color for greater_than - .less_than = hex_to_vec4f(0x80D4FFFF), // Links color for less_than - .plus = hex_to_vec4f(0x80D4FFFF), // Links color for plus - .minus = hex_to_vec4f(0xCCD6F5FF), // Slight emphasis for minus - .truee = hex_to_vec4f(0x80D4FFFF), // Links color for true - .falsee = hex_to_vec4f(0xCCD6F5FF), // Emphasis for false - .arrow = hex_to_vec4f(0x808080FF), // Muted arrows - .open_square = hex_to_vec4f(0x80D4FFFF), // Links color for open brackets - .close_square = hex_to_vec4f(0x80D4FFFF), // Links color for close brackets - .current_line_number = hex_to_vec4f(0x80D4FFFF), // Highlight current line number with links color - .array_content = hex_to_vec4f(0x808080FF) // Muted array content + .cursor = hex_to_vec4f(0x80D4FFFF), + .text = hex_to_vec4f(0xFFFFFFFF), + .background = hex_to_vec4f(0x0D0D0DFF), + .comment = hex_to_vec4f(0x808080FF), + .hashtag = hex_to_vec4f(0xD6EBFFFF), + .logic = hex_to_vec4f(0x80D4FFFF), + .string = hex_to_vec4f(0x2E2E2EFF), + .selection = hex_to_vec4f(0x1A1A1AFF), + .search = hex_to_vec4f(0x808080FF), + .marks = hex_to_vec4f(0x171717FF), + .todo = hex_to_vec4f(0x1E1E1EFF), + .line_numbers = hex_to_vec4f(0x808080FF), + .fixme = hex_to_vec4f(0xCCD6F5FF), + .note = hex_to_vec4f(0x808080FF), + .bug = hex_to_vec4f(0xF5F5F5FF), + .not_equals = hex_to_vec4f(0x80D4FFFF), + .exclamation = hex_to_vec4f(0xCCD6F5FF), + .equals = hex_to_vec4f(0x808080FF), + .equals_equals = hex_to_vec4f(0x808080FF), + .greater_than = hex_to_vec4f(0x80D4FFFF), + .less_than = hex_to_vec4f(0x80D4FFFF), + .plus = hex_to_vec4f(0x80D4FFFF), + .minus = hex_to_vec4f(0xCCD6F5FF), + .truee = hex_to_vec4f(0x80D4FFFF), + .falsee = hex_to_vec4f(0xCCD6F5FF), + .arrow = hex_to_vec4f(0x808080FF), + .open_square = hex_to_vec4f(0x80D4FFFF), + .close_square = hex_to_vec4f(0x80D4FFFF), + .current_line_number = hex_to_vec4f(0x80D4FFFF), + .array_content = hex_to_vec4f(0x808080FF), + .link = hex_to_vec4f(0x89b4faFF), // Blue }; // Base2Tone @@ -153,75 +155,78 @@ void initialize_themes() { .close_square = hex_to_vec4f(0x4183c4FF), // Link Color .current_line_number = hex_to_vec4f(0x3ca555FF), // List Bullet Color .array_content = hex_to_vec4f(0xdddDDDFF), // Various Elements Border Color + .link = hex_to_vec4f(0x89b4faFF), // Blue }; // Base2Tone Extended Pink & Purple themes[2] = (Theme) { - .cursor = hex_to_vec4f(0x912D56FF), // Darker Pink for Cursor - .text = hex_to_vec4f(0xEEEDF7FF), // Very Light Lavender for Text - .background = hex_to_vec4f(0x1E001380), // Deep Purple Transparent Background - .comment = hex_to_vec4f(0x554455FF), // Muted Dark Purple for Comments - .hashtag = hex_to_vec4f(0xB34688FF), // Magenta-ish for Hashtags - .logic = hex_to_vec4f(0xA22882FF), // Rich Purple for Logic Operations - .string = hex_to_vec4f(0x995D99FF), // Purple for Strings - .selection = hex_to_vec4f(0x4B004B80), // Transparent Mid-Purple for Selection - .search = hex_to_vec4f(0xDF88DFFF), // Pink-Purple for Search Highlights - .todo = hex_to_vec4f(0xEDE2F2FF), // Light Lavender for TODOs - .line_numbers = hex_to_vec4f(0x7A507AFF), // Purple-Gray for Line Numbers - .fixme = hex_to_vec4f(0xE8CFE8FF), // Soft Lavender for FIXME Background - .note = hex_to_vec4f(0x774877FF), // Dark Lavender for Notes - .bug = hex_to_vec4f(0xD2146BFF), // Bright Magenta for Bugs - .not_equals = hex_to_vec4f(0xA22882FF), // Rich Purple for Inequality - .exclamation = hex_to_vec4f(0xC23F91FF), // Pink-Purple for Exclamation - .equals = hex_to_vec4f(0x8E558E), // Mid Purple for Equality - .equals_equals = hex_to_vec4f(0x8E558E), // Mid Purple for Double Equality - .greater_than = hex_to_vec4f(0xA22882FF), // Rich Purple for Greater Than - .less_than = hex_to_vec4f(0x912D56FF), // Darker Pink for Less Than - .marks = hex_to_vec4f(0xC91C7EFF), // Magenta for Marks - .fb_selection = hex_to_vec4f(0xD49FD4FF), // Muted Pink for Fallback Selections - .plus = hex_to_vec4f(0x995D99FF), // Purple for Addition - .minus = hex_to_vec4f(0xB34688FF), // Magenta-ish for Subtraction - .truee = hex_to_vec4f(0x774877FF), // Dark Lavender for True - .falsee = hex_to_vec4f(0xA22882FF), // Rich Purple for False - .arrow = hex_to_vec4f(0x7A507AFF), // Purple-Gray for Arrows - .open_square = hex_to_vec4f(0x995D99FF), // Purple for Open Brackets - .close_square = hex_to_vec4f(0x995D99FF), // Purple for Close Brackets - .current_line_number = hex_to_vec4f(0xB34688FF), // Magenta-ish for Current Line Number - .array_content = hex_to_vec4f(0xD49FD4FF) // Muted Pink for Array Content + .cursor = hex_to_vec4f(0x912D56FF), + .text = hex_to_vec4f(0xEEEDF7FF), + .background = hex_to_vec4f(0x1E001380), + .comment = hex_to_vec4f(0x554455FF), + .hashtag = hex_to_vec4f(0xB34688FF), + .logic = hex_to_vec4f(0xA22882FF), + .string = hex_to_vec4f(0x995D99FF), + .selection = hex_to_vec4f(0x4B004B80), + .search = hex_to_vec4f(0xDF88DFFF), + .todo = hex_to_vec4f(0xEDE2F2FF), + .line_numbers = hex_to_vec4f(0x7A507AFF), + .fixme = hex_to_vec4f(0xE8CFE8FF), + .note = hex_to_vec4f(0x774877FF), + .bug = hex_to_vec4f(0xD2146BFF), + .not_equals = hex_to_vec4f(0xA22882FF), + .exclamation = hex_to_vec4f(0xC23F91FF), + .equals = hex_to_vec4f(0x8E558E), + .equals_equals = hex_to_vec4f(0x8E558E), + .greater_than = hex_to_vec4f(0xA22882FF), + .less_than = hex_to_vec4f(0x912D56FF), + .marks = hex_to_vec4f(0xC91C7EFF), + .fb_selection = hex_to_vec4f(0xD49FD4FF), + .plus = hex_to_vec4f(0x995D99FF), + .minus = hex_to_vec4f(0xB34688FF), + .truee = hex_to_vec4f(0x774877FF), + .falsee = hex_to_vec4f(0xA22882FF), + .arrow = hex_to_vec4f(0x7A507AFF), + .open_square = hex_to_vec4f(0x995D99FF), + .close_square = hex_to_vec4f(0x995D99FF), + .current_line_number = hex_to_vec4f(0xB34688FF), + .array_content = hex_to_vec4f(0xD49FD4FF), + .link = hex_to_vec4f(0x89b4faFF), // Blue }; - /* // Monokai Expanded */ + // Monokai Expanded themes[3] = (Theme) { - .cursor = hex_to_vec4f(0xF8F8F0FF), // Off-white for Cursor - .text = hex_to_vec4f(0xF8F8F2FF), // Primary Text Color - .background = hex_to_vec4f(0x272822FF), // Base Background Color - .comment = hex_to_vec4f(0x75715EFF), // Grayish for Comments - .hashtag = hex_to_vec4f(0xA6E22EFF), // Emerald for Hashtags - .logic = hex_to_vec4f(0xF92672FF), // Pink for Logic Operations - .string = hex_to_vec4f(0xE6DB74FF), // Yellow for Strings - .selection = hex_to_vec4f(0x49483EFF), // Darker Gray for Selection - .search = hex_to_vec4f(0x66D9EFFF), // Cyan for Search Highlights - .todo = hex_to_vec4f(0xFD971FFF), // Orange-red for TODO markers - .line_numbers = hex_to_vec4f(0x8F908AFF),// Muted Gray for Line Numbers - .fixme = hex_to_vec4f(0xFF0000FF), // Red for FIXME markers - .note = hex_to_vec4f(0x66D9EFFF), // Cyan for Notes - .bug = hex_to_vec4f(0xFD5F00FF), // Orange for Bugs - .not_equals = hex_to_vec4f(0xA6E22EFF), // Emerald for Inequality - .exclamation = hex_to_vec4f(0xF92672FF), // Pink for Exclamation - .equals = hex_to_vec4f(0x66D9EFFF), // Cyan for Equality - .greater_than = hex_to_vec4f(0xF92672FF), // Pink for Comparison Operators - .less_than = hex_to_vec4f(0xA6E22EFF), // Emerald for Comparison Operators - .marks = hex_to_vec4f(0xFD971FFF), // Orange-red for Marks - .fb_selection = hex_to_vec4f(0x3E3D32FF), // Darker Shade for Fallback Selections - .plus = hex_to_vec4f(0x66D9EFFF), // Cyan for Addition - .minus = hex_to_vec4f(0xF92672FF), // Pink for Subtraction - .truee = hex_to_vec4f(0xA6E22EFF), // Emerald for True - .falsee = hex_to_vec4f(0xF92672FF), // Pink for False - .arrow = hex_to_vec4f(0xE6DB74FF), // Yellow for Arrows - .open_square = hex_to_vec4f(0xE6DB74FF), // Yellow for Open Brackets - .close_square = hex_to_vec4f(0xE6DB74FF), // Yellow for Close Brackets - .current_line_number = hex_to_vec4f(0x66D9EFFF), // Cyan for Current Line - .array_content = hex_to_vec4f(0x3E3D32FF) // Darker Shade for Array Content + .cursor = hex_to_vec4f(0xF8F8F0FF), + .text = hex_to_vec4f(0xF8F8F2FF), + .background = hex_to_vec4f(0x272822FF), + .comment = hex_to_vec4f(0x75715EFF), + .hashtag = hex_to_vec4f(0xA6E22EFF), + .logic = hex_to_vec4f(0xF92672FF), + .string = hex_to_vec4f(0xE6DB74FF), + .selection = hex_to_vec4f(0x49483EFF), + .search = hex_to_vec4f(0x66D9EFFF), + .todo = hex_to_vec4f(0xFD971FFF), + .line_numbers = hex_to_vec4f(0x8F908AFF), + .fixme = hex_to_vec4f(0xFF0000FF), + .note = hex_to_vec4f(0x66D9EFFF), + .bug = hex_to_vec4f(0xFD5F00FF), + .not_equals = hex_to_vec4f(0xA6E22EFF), + .exclamation = hex_to_vec4f(0xF92672FF), + .equals = hex_to_vec4f(0x66D9EFFF), + .greater_than = hex_to_vec4f(0xF92672FF), + .less_than = hex_to_vec4f(0xA6E22EFF), + .marks = hex_to_vec4f(0xFD971FFF), + .fb_selection = hex_to_vec4f(0x3E3D32FF), + .plus = hex_to_vec4f(0x66D9EFFF), + .minus = hex_to_vec4f(0xF92672FF), + .truee = hex_to_vec4f(0xA6E22EFF), + .falsee = hex_to_vec4f(0xF92672FF), + .arrow = hex_to_vec4f(0xE6DB74FF), + .open_square = hex_to_vec4f(0xE6DB74FF), + .close_square = hex_to_vec4f(0xE6DB74FF), + .current_line_number = hex_to_vec4f(0x66D9EFFF), + .array_content = hex_to_vec4f(0x3E3D32FF), + .link = hex_to_vec4f(0x89b4faFF), // Blue }; // Catppuccin @@ -257,6 +262,13 @@ void initialize_themes() { .close_square = hex_to_vec4f(0x89b4faFF), // Blue .current_line_number = hex_to_vec4f(0x89b4faFF), // Blue .array_content = hex_to_vec4f(0x74c7ecFF), // Sapphire + .link = hex_to_vec4f(0x89b4faFF), // Blue + .logic_or = hex_to_vec4f(0xf38ba8FF), // Red + .pipe = hex_to_vec4f(0xa6e3a1FF), // Green + .ampersand = hex_to_vec4f(0xb4befeFF), // Lavender + .logic_and = hex_to_vec4f(0xa6e3a1FF), // Green + .pointer = hex_to_vec4f(0xf5c2e7FF), // Pink + .multiplication = hex_to_vec4f(0xFAB387FF), // Peach }; } @@ -264,7 +276,7 @@ void theme_next(int *currentThemeIndex) { const int themeCount = sizeof(themes) / sizeof(themes[0]); *currentThemeIndex += 1; if (*currentThemeIndex >= themeCount) { - *currentThemeIndex = 0; // wrap around if we've gone past the last theme + *currentThemeIndex = 0; // wrap around } } @@ -276,7 +288,7 @@ void theme_previous(int *currentThemeIndex) { } } -// Smart Parenthesis +// Smart parentheses void editor_backspace(Editor *e) { if (e->searching) { @@ -737,7 +749,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Calculate display line number based on relative number setting size_t displayLineNumber; - if (relative_line_numbers) { + if (relativeLineNumbers) { if (i == currentLineNumber) { // Display the actual line number for the current line displayLineNumber = currentLineNumber + 1; @@ -755,7 +767,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Decide on the color to use Vec4f colorToUse = defaultColor; - if (highlight_current_line && i == currentLineNumber) { + if (highlightCurrentLineNumber && i == currentLineNumber) { colorToUse = currentLineColor; } @@ -810,6 +822,34 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color = themes[currentThemeIndex].logic; break; + case TOKEN_LINK: + color = themes[currentThemeIndex].link; + break; + + case TOKEN_OR: + color = themes[currentThemeIndex].logic_or; + break; + + case TOKEN_PIPE: + color = themes[currentThemeIndex].pipe; + break; + + case TOKEN_AND: + color = themes[currentThemeIndex].logic_and; + break; + + case TOKEN_AMPERSAND: + color = themes[currentThemeIndex].ampersand; + break; + + case TOKEN_POINTER: + color = themes[currentThemeIndex].pointer; + break; + + case TOKEN_MULTIPLICATION: + color = themes[currentThemeIndex].multiplication; + break; + case TOKEN_COMMENT: { color = themes[currentThemeIndex].comment; @@ -1037,7 +1077,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Update camera { - if (is_animated) { + if (isAnimated) { // Your current camera update logic for animated behavior if (max_line_len > 1000.0f) { diff --git a/src/editor.h b/src/editor.h index f3db96cf..859458fb 100644 --- a/src/editor.h +++ b/src/editor.h @@ -12,7 +12,7 @@ #include -extern bool is_animated; +extern bool isAnimated; typedef struct { size_t begin; size_t end; @@ -71,6 +71,13 @@ typedef struct { Vec4f current_line_number; Vec4f marks; Vec4f fb_selection; + Vec4f link; + Vec4f logic_or; + Vec4f pipe; + Vec4f logic_and; + Vec4f ampersand; + Vec4f multiplication; + Vec4f pointer; } Theme; diff --git a/src/file_browser.c b/src/file_browser.c index 0183064c..7beca9a9 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -179,7 +179,7 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl // Update camera { - if (is_animated) { + if (isAnimated) { if (max_line_len > 1000.0f) { max_line_len = 1000.0f; diff --git a/src/lexer.c b/src/lexer.c index 627c86b0..19a21e17 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -94,6 +94,20 @@ const char *token_kind_name(Token_Kind kind) return "open_square"; case TOKEN_CLOSE_SQUARE: return "close_square"; + case TOKEN_LINK: + return "link"; + case TOKEN_OR: + return "logic_or"; + case TOKEN_PIPE: + return "pipe"; + case TOKEN_AND: + return "logic_and"; + case TOKEN_AMPERSAND: + return "ampersand"; + case TOKEN_MULTIPLICATION: + return "multiplication"; + case TOKEN_POINTER: + return "pointer"; case TOKEN_BAD_SPELLCHECK: return "bad_spellcheck"; default: @@ -187,6 +201,7 @@ Token lexer_next(Lexer *l) if (l->cursor < l->content_len) { char current_char = l->content[l->cursor]; char next_char = (l->cursor + 1 < l->content_len) ? l->content[l->cursor + 1] : '\0'; + char prev_char = (l->cursor > 0) ? l->content[l->cursor - 1] : '\0'; // added for * switch (current_char) { case '=': @@ -243,12 +258,68 @@ Token lexer_next(Lexer *l) lexer_chop_char(l, 1); return token; + case '|': + if (next_char == '|') { + token.kind = TOKEN_OR; + token.text_len = 2; + lexer_chop_char(l, 2); + } else { + token.kind = TOKEN_PIPE; + token.text_len = 1; + lexer_chop_char(l, 1); + } + return token; + + case '&': + if (next_char == '&') { + token.kind = TOKEN_AND; + token.text_len = 2; + lexer_chop_char(l, 2); + } else { + token.kind = TOKEN_AMPERSAND; + token.text_len = 1; + lexer_chop_char(l, 1); + } + return token; + + case '*': + // If either the previous or next character is whitespace, treat it + // as multiplication. Otherwise, treat it as a pointer. + if (isspace(prev_char) || isspace(next_char)) { + token.kind = TOKEN_MULTIPLICATION; + } else { + token.kind = TOKEN_POINTER; + } + token.text_len = 1; + lexer_chop_char(l, 1); + return token; } } + // Check for links + if ((l->cursor + 6 < l->content_len && + strncmp(&l->content[l->cursor], "http://", 7) == 0) || + (l->cursor + 7 < l->content_len && + strncmp(&l->content[l->cursor], "https://", 8) == 0) || + (l->cursor + 3 < l->content_len && + strncmp(&l->content[l->cursor], "www.", 4) == 0)) { + size_t potential_length = 0; + while (l->cursor + potential_length < l->content_len && + !isspace(l->content[l->cursor + potential_length]) && + l->content[l->cursor + potential_length] != '\n' && + l->content[l->cursor + potential_length] != + ')') { // Exclude closing parenthesis + potential_length++; + } - + if (potential_length > 0) { + token.kind = TOKEN_LINK; + token.text_len = potential_length; + lexer_chop_char(l, potential_length); + return token; + } + } /* // all bad spell */ /* if (l->cursor < l->content_len) { */ @@ -386,7 +457,7 @@ Token lexer_next(Lexer *l) token.text_len = &l->content[l->cursor] - token.text; return token; } else { - // Your existing handling for # as a preprocessor directive + // # as a preprocessor directive token.kind = TOKEN_PREPROC; while (l->cursor < l->content_len && l->content[l->cursor] != '\n') { lexer_chop_char(l, 1); diff --git a/src/lexer.h b/src/lexer.h index dbbabb25..25c3fc4b 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -35,6 +35,13 @@ typedef enum { TOKEN_CLOSE_SQUARE, TOKEN_ARRAY_CONTENT, TOKEN_BAD_SPELLCHECK, + TOKEN_LINK, + TOKEN_OR, + TOKEN_PIPE, + TOKEN_AND, + TOKEN_AMPERSAND, + TOKEN_MULTIPLICATION, + TOKEN_POINTER, } Token_Kind; const char *token_kind_name(Token_Kind kind); diff --git a/src/main.c b/src/main.c index afbcc8e1..17300115 100644 --- a/src/main.c +++ b/src/main.c @@ -1,3 +1,5 @@ +#include +#include #include #include #include @@ -366,6 +368,7 @@ int main(int argc, char **argv) } } break; + case SDLK_q: case SDLK_ESCAPE: { file_browser = false; } break; @@ -423,7 +426,7 @@ int main(int argc, char **argv) case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { - is_animated = !is_animated; // Toggle the state + isAnimated = !isAnimated; // Toggle the state } } break; @@ -480,7 +483,6 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { SDL_Event tmpEvent; // Declare once at the beginning of the switch block - case SDLK_RETURN: { if (editor.searching) { editor_stop_search_and_mark(&editor); @@ -564,7 +566,7 @@ int main(int argc, char **argv) case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { - is_animated = !is_animated; // Toggle the state + isAnimated = !isAnimated; // Toggle the state } } break; @@ -602,11 +604,33 @@ int main(int argc, char **argv) case SDLK_n: { if (SDL_GetModState() & KMOD_SHIFT) { editor_search_previous(&editor); - } else { + } else if(editor.has_mark){ editor_search_next(&editor); } + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_line_down(&editor); + } } break; + case SDLK_p: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } else { + editor_clipboard_paste(&editor); + } + break; + + case SDLK_b: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_left(&editor); + } + break; + + case SDLK_f: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_right(&editor); + } + break; case SDLK_EQUALS: { if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed @@ -706,10 +730,6 @@ int main(int argc, char **argv) } break; - case SDLK_p: - editor_clipboard_paste(&editor); - break; - case SDLK_0: editor_move_to_line_begin(&editor); break; @@ -740,7 +760,7 @@ int main(int argc, char **argv) case SDLK_j: // Down editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_ALT) && !is_animated) { + if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "down", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { editor_move_paragraph_down(&editor); @@ -752,7 +772,7 @@ int main(int argc, char **argv) case SDLK_k: // Up editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_ALT) && !is_animated) { + if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "up", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { editor_move_paragraph_up(&editor); @@ -1223,9 +1243,9 @@ int main(int argc, char **argv) glClear(GL_COLOR_BUFFER_BIT); if (file_browser) { - fb_render(&fb, window, &atlas, &sr); + fb_render(&fb, window, &atlas, &sr); } else { - editor_render(window, &atlas, &sr, &editor); + editor_render(window, &atlas, &sr, &editor); } SDL_GL_SwapWindow(window); diff --git a/src/simple_renderer.c b/src/simple_renderer.c index f9f1eb4e..3004a714 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -163,7 +163,7 @@ static void get_uniform_location(GLuint program, GLint locations[COUNT_UNIFORM_S void simple_renderer_init(Simple_Renderer *sr) { - if (is_animated) { + if (isAnimated) { sr->camera_scale = 3.0f; } From 838100afde3cd78da15aa252dbdef2116b27033c Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 17 Nov 2023 07:16:16 +0100 Subject: [PATCH 31/74] update --- src/editor.c | 10 ++++++++-- todo.org | 22 +++++++++++----------- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/src/editor.c b/src/editor.c index ea2a50f5..cdb49dfd 100644 --- a/src/editor.c +++ b/src/editor.c @@ -119,7 +119,14 @@ void initialize_themes() { .close_square = hex_to_vec4f(0x80D4FFFF), .current_line_number = hex_to_vec4f(0x80D4FFFF), .array_content = hex_to_vec4f(0x808080FF), - .link = hex_to_vec4f(0x89b4faFF), // Blue + .link = hex_to_vec4f(0x80D4FFFF), + .logic_or = hex_to_vec4f(0xCCD6F5FF), + .pipe = hex_to_vec4f(0x80D4FFFF), + .ampersand = hex_to_vec4f(0xCCD6F5FF), + .logic_and = hex_to_vec4f(0x80D4FFFF), + .pointer = hex_to_vec4f(0xCCD6F5FF), + .multiplication = hex_to_vec4f(0x80D4FFFF), + }; // Base2Tone @@ -155,7 +162,6 @@ void initialize_themes() { .close_square = hex_to_vec4f(0x4183c4FF), // Link Color .current_line_number = hex_to_vec4f(0x3ca555FF), // List Bullet Color .array_content = hex_to_vec4f(0xdddDDDFF), // Various Elements Border Color - .link = hex_to_vec4f(0x89b4faFF), // Blue }; // Base2Tone Extended Pink & Purple diff --git a/todo.org b/todo.org index 1699ced7..4d7417af 100644 --- a/todo.org +++ b/todo.org @@ -2,17 +2,16 @@ * TODO -every function defined in the code should be callable while the app is running M-x [] +every function defined in the code should be callable +while the app is running holy c emacs style M-x [] -dwm like configuration file so the user could extend the editor [] -in those files every function could be redefined ** Mouse support clickable links with both cursor and mouse [] ctrl click for documentation on the thing or enter in normal mode [] mouse scroll [] ctrl scroll should scroll more [] ** Evil Mode -splits [] +splits(maybe) [] 5k should work [] shift + 8 [] better than vim macros [] @@ -20,27 +19,28 @@ better than vim macros [] show the current EvilMode, file name, info and cool icons ** Minibuffer to get user input for anything and everything popups are for loosers - ** Minimap code minimap based on https://github.com/Ivoah/minimap - - +or better from scratch ** Lexer -syntax highlighting for : | || & && [] +syntax highlighting for : | || & && [x] +highlight links [x] different shader per token [] different font per token [] ** Dinamic cursor adjust syze based on overed glyph [] ** Font -changing font more times than the total number of font you have inside =~/.config/ded/fonts= should not crash +changing font more times than the total number of font you have inside =~/.config/ded/fonts= +make the text disappear [] ** Camera when animation are false move the camera like in emacs or vim [x] - + (bad when going up) [] ** Shaders use shaders from =~/.config/ded/shaders= instead [x] ** Editor +mismatched cut and selection [] if editor->has_mark make the cursor trasparent [x] support multiple marks not just one [] -highlight links [] render wavy or normal line under text for errors or whatever [] +most symple emacs style completition (ctrl + n in insert mode)[] use window hight and width dinamicly instead of fixed position when animations are off [] From 04a7cb0e17280c32e667c45dac380e0f34cc5388 Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 17 Nov 2023 20:35:22 +0100 Subject: [PATCH 32/74] open-includes --- src/editor.c | 5 +- src/editor.h | 1 + src/lexer.c | 6 +-- src/main.c | 134 +++++++++++++++++++++++++++++++++++++++++++-------- todo.org | 3 ++ 5 files changed, 124 insertions(+), 25 deletions(-) diff --git a/src/editor.c b/src/editor.c index cdb49dfd..9cdcf241 100644 --- a/src/editor.c +++ b/src/editor.c @@ -58,7 +58,7 @@ bool extractWordUnderCursor(Editor *editor, char *word) { - +// TODO void move_camera(Simple_Renderer *sr, const char* direction, float amount) { if(sr == NULL) return; // check if the SimpleRenderer pointer is valid @@ -82,8 +82,7 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { - -int currentThemeIndex = 4; +int currentThemeIndex = 0; Theme themes[5]; void initialize_themes() { diff --git a/src/editor.h b/src/editor.h index 859458fb..fc54f58c 100644 --- a/src/editor.h +++ b/src/editor.h @@ -159,6 +159,7 @@ extern float min_zoom_factor; extern float max_zoom_factor; extern bool showLineNumbers; + // THEME extern Theme themes[]; extern int currentThemeIndex; diff --git a/src/lexer.c b/src/lexer.c index 19a21e17..b050dd60 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -283,9 +283,9 @@ Token lexer_next(Lexer *l) return token; case '*': - // If either the previous or next character is whitespace, treat it - // as multiplication. Otherwise, treat it as a pointer. - if (isspace(prev_char) || isspace(next_char)) { + // If there's a space both before and after '*', treat it as + // multiplication. In all other cases, treat it as a pointer. + if (isspace(prev_char) && isspace(next_char)) { token.kind = TOKEN_MULTIPLICATION; } else { token.kind = TOKEN_POINTER; diff --git a/src/main.c b/src/main.c index 17300115..26513aaf 100644 --- a/src/main.c +++ b/src/main.c @@ -168,6 +168,90 @@ void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas * +// TODO tomove +bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length) { + size_t start = cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + size_t end = start; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + size_t length = end - start; + if (length < max_length) { + strncpy(line, &editor->data.items[start], length); + line[length] = '\0'; + return true; + } + + return false; +} + +bool extractLocalIncludePath(Editor *editor, char *includePath) { + char line[512]; // Adjust size as needed + if (!extractLine(editor, editor->cursor, line, sizeof(line))) { + return false; + } + + if (strncmp(line, "#include \"", 10) == 0) { + char *start = strchr(line, '\"') + 1; + char *end = strrchr(line, '\"'); + if (start && end && start < end) { + size_t length = end - start; + strncpy(includePath, start, length); + includePath[length] = '\0'; + return true; + } + } + + return false; +} + +void getDirectoryFromFilePath(const char *filePath, char *directory) { + strcpy(directory, filePath); + char *lastSlash = strrchr(directory, '/'); + if (lastSlash != NULL) { + *lastSlash = '\0'; // Null-terminate at the last slash + } else { + // Handle the case where there is no slash in the path + strcpy(directory, "."); + } +} + +// Function to open a local include file +Errno openLocalIncludeFile(Editor *editor, const char *includePath) { + char fullPath[512]; // Buffer for the full path + char directory[256]; // Buffer for the directory + + // Get the directory of the current file + getDirectoryFromFilePath(editor->file_path.items, directory); + + // Construct the full path + snprintf(fullPath, sizeof(fullPath), "%s/%s", directory, includePath); + + // Load the file using the full path + Errno load_err = editor_load_from_file(editor, fullPath); + if (load_err != 0) { + fprintf(stderr, "Error loading file %s: %s\n", fullPath, strerror(load_err)); + return load_err; + } + + printf("Opened file: %s\n", fullPath); + return 0; +} + + + + + + + + + + // TODO: display errors reported via flash_error right in the text editor window somehow #define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) @@ -483,27 +567,36 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { SDL_Event tmpEvent; // Declare once at the beginning of the switch block + /* case SDLK_RETURN: { */ + /* if (editor.searching) { */ + /* editor_stop_search_and_mark(&editor); */ + /* current_mode = NORMAL; */ + /* } else { */ + /* // buffer to hold the extracted word. */ + /* // Assuming the maximum word length is 255 characters. */ + /* char word[256]; */ + + /* // If the word is successfully extracted, print it to the */ + /* // debug output. */ + /* if (extractWordUnderCursor(&editor, word)) { */ + /* printf("Extracted word: %s\n", word); */ + /* } else { */ + /* printf("No word under cursor\n"); */ + /* } */ + /* } */ + /* } break; */ + case SDLK_RETURN: { if (editor.searching) { editor_stop_search_and_mark(&editor); current_mode = NORMAL; } else { - // buffer to hold the extracted word. - // Assuming the maximum word length is 255 characters. - char word[256]; - - // If the word is successfully extracted, print it to the debug output. - if (extractWordUnderCursor(&editor, word)) { - printf("Extracted word: %s\n", word); // Debug print - } else { - printf("No word under cursor\n"); // Debug print when there is no word under the cursor + char includePath[256]; + if (extractLocalIncludePath(&editor, includePath)) { + openLocalIncludeFile(&editor, includePath); } } - } - break; - - - + } break; case SDLK_ESCAPE: { editor_clear_mark(&editor); @@ -770,7 +863,7 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - case SDLK_k: // Up + case SDLK_k: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "up", 50.0f); @@ -782,7 +875,7 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - case SDLK_l: // Right + case SDLK_l: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { editor_move_word_right(&editor); @@ -792,10 +885,13 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - // Add additional NORMAL mode keybinds here... - } - break; + case SDLK_w: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_word_right(&editor); + break; + // Add additional NORMAL mode keybinds here... + } break; case INSERT: switch (event.key.keysym.sym) { diff --git a/todo.org b/todo.org index 4d7417af..375bbbd1 100644 --- a/todo.org +++ b/todo.org @@ -38,6 +38,9 @@ make the text disappear [] ** Shaders use shaders from =~/.config/ded/shaders= instead [x] ** Editor +keep a list of opened files to quickly +go to the previous or next "buffer" or kill them [] +search should not be case sensitive [] mismatched cut and selection [] if editor->has_mark make the cursor trasparent [x] support multiple marks not just one [] From 9732d35bbc1810066037e1e8ceae9d7adead95c5 Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 18 Nov 2023 05:44:09 +0100 Subject: [PATCH 33/74] better-cursor --- src/editor.c | 95 +++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 72 insertions(+), 23 deletions(-) diff --git a/src/editor.c b/src/editor.c index 9cdcf241..c873d02f 100644 --- a/src/editor.c +++ b/src/editor.c @@ -738,7 +738,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } - /* current line number */ + + // Render line numbers if (showLineNumbers) { simple_renderer_set_shader(sr, SHADER_FOR_TEXT); @@ -1016,8 +1017,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer const Uint32 CURSOR_BLINK_PERIOD = 1000; const Uint32 t = SDL_GetTicks() - editor->last_stroke; Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; // Default cursor color - float VISUAL_CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; - float BORDER_THICKNESS = 5.0f; + float BORDER_THICKNESS = 3.0f; Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); // Same color but with reduced alpha sr->verticies_count = 0; @@ -1031,10 +1031,33 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Rendering based on mode switch (current_mode) { - case NORMAL: - CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; // Half the size for NORMAL mode - simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); - break; + + case NORMAL: { + float cursor_width; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + // Measure the width of a default character 'a' for empty lines or + // space + /* Vec2f next_char_pos = cursor_pos; */ + /* free_glyph_atlas_measure_line_sized(atlas, "a", 1, + * &next_char_pos); */ + /* cursor_width = next_char_pos.x - cursor_pos.x; */ + + cursor_width = FREE_GLYPH_FONT_SIZE / 2.0f; + } + + simple_renderer_solid_rect(sr, cursor_pos, + vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } break; case INSERT: CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode @@ -1044,27 +1067,53 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } break; - case VISUAL: - // Draw inner rectangle with reduced alpha - if (t < CURSOR_BLINK_THRESHOLD || (t / CURSOR_BLINK_PERIOD) % 2 != 0) { - simple_renderer_solid_rect(sr, cursor_pos, vec2f(VISUAL_CURSOR_WIDTH - 2 * BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), INNER_COLOR); - } - /* simple_renderer_solid_rect(sr, cursor_pos, vec2f(VISUAL_CURSOR_WIDTH - 2 * BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), INNER_COLOR); */ - // Draw the outline (borders) using the theme's cursor color - // Top border - simple_renderer_solid_rect(sr, cursor_pos, vec2f(VISUAL_CURSOR_WIDTH, BORDER_THICKNESS), CURSOR_COLOR); + case VISUAL: { + float cursor_width; - // Bottom border - simple_renderer_solid_rect(sr, vec2f(cursor_pos.x, cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), vec2f(VISUAL_CURSOR_WIDTH, BORDER_THICKNESS), CURSOR_COLOR); + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, 1, &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized(atlas, "a", 1, &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } - // Left border - simple_renderer_solid_rect(sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); + // Draw inner rectangle + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x + BORDER_THICKNESS, + cursor_pos.y + BORDER_THICKNESS), + vec2f(cursor_width - 2 * BORDER_THICKNESS, + FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), + INNER_COLOR); - // Right border - simple_renderer_solid_rect(sr, vec2f(cursor_pos.x + VISUAL_CURSOR_WIDTH - BORDER_THICKNESS, cursor_pos.y), vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); + // Draw the outline (borders) using the theme's cursor color + simple_renderer_solid_rect(sr, cursor_pos, + vec2f(cursor_width, BORDER_THICKNESS), + CURSOR_COLOR); // Top border + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x, + cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), + vec2f(cursor_width, BORDER_THICKNESS), + CURSOR_COLOR); // Bottom border + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); // Left border + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x + cursor_width - BORDER_THICKNESS, cursor_pos.y), + vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); // Right border break; + } case VISUAL_LINE: // Set the cursor width to cover the entire height of the line @@ -1198,7 +1247,7 @@ void editor_cut_char_under_cursor(Editor *e) { editor_retokenize(e); } -// VISUAL selection +// VISUAL selection TODO void editor_start_visual_selection(Editor *e) { e->selection = true; From 249845de2268d1524cf116a73be4fa444cc7112d Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 18 Nov 2023 21:08:08 +0100 Subject: [PATCH 34/74] config-update --- build.sh | 12 +++++++++++- shaders/simple.vert | 24 ------------------------ shaders/simple_acid.frag | 36 ------------------------------------ shaders/simple_color.frag | 7 ------- shaders/simple_epic.frag | 31 ------------------------------- shaders/simple_glow.frag | 20 -------------------- shaders/simple_image.frag | 9 --------- shaders/simple_pony.frag | 31 ------------------------------- shaders/simple_rainbow.frag | 22 ---------------------- shaders/simple_text.frag | 13 ------------- src/main.c | 2 ++ 11 files changed, 13 insertions(+), 194 deletions(-) delete mode 100644 shaders/simple.vert delete mode 100644 shaders/simple_acid.frag delete mode 100644 shaders/simple_color.frag delete mode 100644 shaders/simple_epic.frag delete mode 100644 shaders/simple_glow.frag delete mode 100644 shaders/simple_image.frag delete mode 100644 shaders/simple_pony.frag delete mode 100644 shaders/simple_rainbow.frag delete mode 100644 shaders/simple_text.frag diff --git a/build.sh b/build.sh index 6f76b4d5..02b05f10 100755 --- a/build.sh +++ b/build.sh @@ -1,4 +1,11 @@ -#!/bin/sh +#!/bin/bash + + +if [ ! -d "$HOME/.config/ded" ]; then + cp -r ./config/ded "$HOME/.config/" +else + echo "Config already exists." +fi set -xe @@ -14,3 +21,6 @@ if [ `uname` = "Darwin" ]; then fi $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS` + + + diff --git a/shaders/simple.vert b/shaders/simple.vert deleted file mode 100644 index bdf951ab..00000000 --- a/shaders/simple.vert +++ /dev/null @@ -1,24 +0,0 @@ -#version 330 core - -uniform vec2 resolution; -uniform float time; -uniform float camera_scale; -uniform vec2 camera_pos; - -layout(location = 0) in vec2 position; -layout(location = 1) in vec4 color; -layout(location = 2) in vec2 uv; - -out vec4 out_color; -out vec2 out_uv; - -vec2 camera_project(vec2 point) -{ - return 2.0 * (point - camera_pos) * camera_scale / resolution; -} - -void main() { - gl_Position = vec4(camera_project(position), 0, 1); - out_color = color; - out_uv = uv; -} diff --git a/shaders/simple_acid.frag b/shaders/simple_acid.frag deleted file mode 100644 index 3752a132..00000000 --- a/shaders/simple_acid.frag +++ /dev/null @@ -1,36 +0,0 @@ -#version 330 core - -uniform float time; -uniform vec2 resolution; -uniform sampler2D image; - -in vec2 out_uv; - -vec3 hsl2rgb(vec3 c) { - vec3 rgb = clamp(abs(mod(c.x*6.0+vec3(0.0,4.0,2.0),6.0)-3.0)-1.0, 0.0, 1.0); - return c.z + c.y * (rgb-0.5)*(1.0-abs(2.0*c.z-1.0)); -} - -void main() { - vec4 tc = texture(image, out_uv); - float d = tc.r; - float aaf = fwidth(d); - float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); - - vec2 frag_uv = gl_FragCoord.xy / resolution; - - // Firefly movement: This simulates the movement of 3 "fireflies" - float f1 = abs(sin(frag_uv.x * 10.0 + time)); - float f2 = abs(cos(frag_uv.y * 8.0 + time * 1.5)); - float f3 = abs(sin(frag_uv.x * 12.0 + frag_uv.y * 12.0 + time * 0.7)); - - // Combine fireflies' impact - float fireflyEffect = f1 + f2 + f3; - - // Translate that to a color-shifting effect - vec3 fireflyColor = hsl2rgb(vec3(fireflyEffect * 0.3, 0.6, 0.5)); - - vec3 finalColor = mix(tc.rgb, fireflyColor, d * fireflyEffect); - - gl_FragColor = vec4(finalColor, alpha); -} diff --git a/shaders/simple_color.frag b/shaders/simple_color.frag deleted file mode 100644 index f4373609..00000000 --- a/shaders/simple_color.frag +++ /dev/null @@ -1,7 +0,0 @@ -#version 330 core - -in vec4 out_color; - -void main() { - gl_FragColor = out_color; -} diff --git a/shaders/simple_epic.frag b/shaders/simple_epic.frag deleted file mode 100644 index 919caefe..00000000 --- a/shaders/simple_epic.frag +++ /dev/null @@ -1,31 +0,0 @@ -#version 330 core - -uniform float time; -uniform vec2 resolution; -uniform sampler2D image; - -in vec2 out_uv; - -vec3 hsl2rgb(vec3 c) { - vec3 rgb = clamp(abs(mod(c.x*6.0+vec3(0.0,4.0,2.0),6.0)-3.0)-1.0, 0.0, 1.0); - return c.z + c.y * (rgb-0.5)*(1.0-abs(2.0*c.z-1.0)); -} - -void main() { - vec4 tc = texture(image, out_uv); - float d = tc.r; - float aaf = fwidth(d); - float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); - - vec2 frag_uv = gl_FragCoord.xy / resolution; - - // Dynamic color-shifting aura - vec3 auraColor = hsl2rgb(vec3(mod(time * 0.2 + frag_uv.y, 1.0), 0.5, 0.5)); - - // Shimmering gradient across the text - float shimmer = (sin(time * 3.0 + frag_uv.x * 10.0) + 1.0) * 0.5; - vec3 shimmerColor = mix(vec3(1.0, 0.8, 0.6), vec3(0.6, 0.8, 1.0), shimmer); - - vec3 finalColor = mix(auraColor, shimmerColor, d); - gl_FragColor = vec4(finalColor, alpha); -} diff --git a/shaders/simple_glow.frag b/shaders/simple_glow.frag deleted file mode 100644 index fd823472..00000000 --- a/shaders/simple_glow.frag +++ /dev/null @@ -1,20 +0,0 @@ -#version 330 core - -uniform sampler2D image; // The off-screen texture with the cursor -uniform float blurSize; // The size of the blur effect (experiment with this value) - -in vec2 out_uv; - -const float offset[5] = float[](0.0, 1.333, 2.666, 4.0, 5.333); // Offsets for Gaussian blur - -void main() { - vec4 sum = texture(image, out_uv) * 0.2941; // Central sample (weight is highest) - - sum += texture(image, out_uv + vec2(blurSize * offset[1], 0.0)) * 0.2353; - sum += texture(image, out_uv - vec2(blurSize * offset[1], 0.0)) * 0.2353; - sum += texture(image, out_uv + vec2(blurSize * offset[2], 0.0)) * 0.1176; - sum += texture(image, out_uv - vec2(blurSize * offset[2], 0.0)) * 0.1176; - // ... Add more samples if needed - - gl_FragColor = sum; -} diff --git a/shaders/simple_image.frag b/shaders/simple_image.frag deleted file mode 100644 index 487cd219..00000000 --- a/shaders/simple_image.frag +++ /dev/null @@ -1,9 +0,0 @@ -#version 330 core - -uniform sampler2D image; - -in vec2 out_uv; - -void main() { - gl_FragColor = texture(image, out_uv); -} diff --git a/shaders/simple_pony.frag b/shaders/simple_pony.frag deleted file mode 100644 index 919caefe..00000000 --- a/shaders/simple_pony.frag +++ /dev/null @@ -1,31 +0,0 @@ -#version 330 core - -uniform float time; -uniform vec2 resolution; -uniform sampler2D image; - -in vec2 out_uv; - -vec3 hsl2rgb(vec3 c) { - vec3 rgb = clamp(abs(mod(c.x*6.0+vec3(0.0,4.0,2.0),6.0)-3.0)-1.0, 0.0, 1.0); - return c.z + c.y * (rgb-0.5)*(1.0-abs(2.0*c.z-1.0)); -} - -void main() { - vec4 tc = texture(image, out_uv); - float d = tc.r; - float aaf = fwidth(d); - float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); - - vec2 frag_uv = gl_FragCoord.xy / resolution; - - // Dynamic color-shifting aura - vec3 auraColor = hsl2rgb(vec3(mod(time * 0.2 + frag_uv.y, 1.0), 0.5, 0.5)); - - // Shimmering gradient across the text - float shimmer = (sin(time * 3.0 + frag_uv.x * 10.0) + 1.0) * 0.5; - vec3 shimmerColor = mix(vec3(1.0, 0.8, 0.6), vec3(0.6, 0.8, 1.0), shimmer); - - vec3 finalColor = mix(auraColor, shimmerColor, d); - gl_FragColor = vec4(finalColor, alpha); -} diff --git a/shaders/simple_rainbow.frag b/shaders/simple_rainbow.frag deleted file mode 100644 index 9cfc9000..00000000 --- a/shaders/simple_rainbow.frag +++ /dev/null @@ -1,22 +0,0 @@ -#version 330 core - -uniform float time; -uniform vec2 resolution; -uniform sampler2D image; - -in vec2 out_uv; - -vec3 hsl2rgb(vec3 c) { - vec3 rgb = clamp(abs(mod(c.x*6.0+vec3(0.0,4.0,2.0),6.0)-3.0)-1.0, 0.0, 1.0); - return c.z + c.y * (rgb-0.5)*(1.0-abs(2.0*c.z-1.0)); -} - -void main() { - vec4 tc = texture(image, out_uv); - float d = tc.r; - float aaf = fwidth(d); - float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); - vec2 frag_uv = gl_FragCoord.xy / resolution; - vec4 rainbow = vec4(hsl2rgb(vec3((time + frag_uv.x + frag_uv.y), 0.5, 0.5)), 1.0); - gl_FragColor = vec4(rainbow.rgb, alpha); -} diff --git a/shaders/simple_text.frag b/shaders/simple_text.frag deleted file mode 100644 index f0413756..00000000 --- a/shaders/simple_text.frag +++ /dev/null @@ -1,13 +0,0 @@ -#version 330 core - -uniform sampler2D image; - -in vec4 out_color; -in vec2 out_uv; - -void main() { - float d = texture(image, out_uv).r; - float aaf = fwidth(d); - float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); - gl_FragColor = vec4(out_color.rgb, alpha); -} diff --git a/src/main.c b/src/main.c index 26513aaf..317e6fc3 100644 --- a/src/main.c +++ b/src/main.c @@ -785,6 +785,7 @@ int main(int argc, char **argv) case SDLK_a: + editor.last_stroke = SDL_GetTicks(); if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held editor_move_to_line_end(&editor); } else { @@ -1072,6 +1073,7 @@ int main(int argc, char **argv) case SDLK_BACKSPACE: editor_backspace(&editor); + editor.last_stroke = SDL_GetTicks(); break; case SDLK_RETURN: { From fb9fc5a230ea57d0293058d597e80ee253547d9e Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 18 Nov 2023 21:13:40 +0100 Subject: [PATCH 35/74] fix --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 62061e74..fdba1717 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ te +!config/ded ded SDL2 *.exe From 6330ddfbc63074091e3b5fdbcfc485a81d9fa8ad Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 18 Nov 2023 21:14:23 +0100 Subject: [PATCH 36/74] fix --- .gitignore | 2 -- config/ded/fonts/Overwave.ttf | Bin 0 -> 61632 bytes config/ded/fonts/designer.otf | Bin 0 -> 133824 bytes config/ded/fonts/jet-extra-bold.ttf | Bin 0 -> 213372 bytes config/ded/fonts/minecraft_font.ttf | Bin 0 -> 15700 bytes config/ded/fonts/radon.otf | Bin 0 -> 88992 bytes config/ded/shaders/simple.vert | 24 +++++++++++++++++ config/ded/shaders/simple_acid.frag | 36 +++++++++++++++++++++++++ config/ded/shaders/simple_color.frag | 7 +++++ config/ded/shaders/simple_epic.frag | 31 +++++++++++++++++++++ config/ded/shaders/simple_glow.frag | 20 ++++++++++++++ config/ded/shaders/simple_image.frag | 9 +++++++ config/ded/shaders/simple_pony.frag | 31 +++++++++++++++++++++ config/ded/shaders/simple_rainbow.frag | 22 +++++++++++++++ config/ded/shaders/simple_text.frag | 13 +++++++++ 15 files changed, 193 insertions(+), 2 deletions(-) create mode 100644 config/ded/fonts/Overwave.ttf create mode 100644 config/ded/fonts/designer.otf create mode 100644 config/ded/fonts/jet-extra-bold.ttf create mode 100644 config/ded/fonts/minecraft_font.ttf create mode 100644 config/ded/fonts/radon.otf create mode 100644 config/ded/shaders/simple.vert create mode 100644 config/ded/shaders/simple_acid.frag create mode 100644 config/ded/shaders/simple_color.frag create mode 100644 config/ded/shaders/simple_epic.frag create mode 100644 config/ded/shaders/simple_glow.frag create mode 100644 config/ded/shaders/simple_image.frag create mode 100644 config/ded/shaders/simple_pony.frag create mode 100644 config/ded/shaders/simple_rainbow.frag create mode 100644 config/ded/shaders/simple_text.frag diff --git a/.gitignore b/.gitignore index fdba1717..17d10047 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,4 @@ te -!config/ded -ded SDL2 *.exe *.obj diff --git a/config/ded/fonts/Overwave.ttf b/config/ded/fonts/Overwave.ttf new file mode 100644 index 0000000000000000000000000000000000000000..82602a2c921960376519c473c1edbfc47d35ed32 GIT binary patch literal 61632 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ఉ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 a7-keQz5U<7aARI)1_egmF#j{E@P7l4acb27 literal 0 HcmV?d00001 diff --git a/config/ded/fonts/designer.otf b/config/ded/fonts/designer.otf new file mode 100644 index 0000000000000000000000000000000000000000..c503f3f220ddbfc87ef3575339d807961851038b GIT binary patch literal 133824 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

hd~HD;lz_yyrfbAIygd8rihY#ri;5;qg^mVT|h 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 D^J|&L literal 0 HcmV?d00001 diff --git a/config/ded/fonts/jet-extra-bold.ttf b/config/ded/fonts/jet-extra-bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fe5be6a15846a6fbee3a4645829c533e21f9222f GIT binary patch literal 213372 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

HERH5`nT84()71JrQI@3(#E>;qeu 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 z zN3>xHmvSyQ4)uEn!OXaODOZA5n zQZK&MxCKJKND9iD+BHbcVRH|dyJPOIykq2>j&D-$82KJ2FyA%R>-OZBras(|!Glf52jYc{a9m^xcb9W4gd7B?fBEXROvz-n$z ziyAPZ!$TfLs%H3YSLMTycYWQe#?0Q-{mc^*Z6K?cM#+Xm3xXw=34^>rvR# zztuPUdXfkNhiKtF0MXa05!@Tu*$2IR-_C7OUvEmbV2DLQ(0!>8d*j@owAJ9P)u6W3 zbbG6Zdei+a?V@jZq_vt>ws~KfT&X#WmSQAba_wlmT*;OmimA&{v_$~-I7sb|AH zTGUIrq%4y~^^$t_sU$mHVqGTKnHu%#S$`jLhF{PL>c!VBZ;sB;?y8r}Zq+;HISGZ6 zmogGlzOq%ZPVVrSR6qJomA9ZO8N*4vXa-V`RiT_$-Ki z&;h>&+LeU_{Jy>N7RcPIC_p{ur4W!x$l2?Wn0l4p2ijC$$PYar0|E1cDpEGxeZV&#G$z;Y{5_weh&^N0PiL z{u~T=cf}_B!GM-qf&tBwf_`(?k|%!GOeq-9vu@DueWwM6U_cM@pq7!4Ur$@XfM#An zzh+*+fMQ4Z-Fw&5Tri+zs$f7dWPi|u(>C?k20q(^&*ZlaT(*JBHgMPmE?bFMD9^y- z_sTc*+Xg<{z~%Syd2oB}_3AP3`c3(MQ=i||<2U8l9(<-gzk$EryPNW{{*Y5lP_J|R z!DiDhdcA{plg~^BK{E*iwYcjKYQYkB1CJId{lRw4Xo3MPU`d(;(wjgVW>lj`QeNs) ze^Crf4=;bv-zMov53ist>A2pY$T6Tgri--9=nrZ>?+>~j33(yi6bxrxMsn0d_xTc(-2cN0W^+?CVtH}pJR+Es) z*KFFW1!s_u$)_bJf3VfmuVo*Qj)AYuz@a4wkdU5kf^MB86hlu&VAu5Iq*9GLf}YfD zs^^bjaF{8BDpKhwsOd>G_3Ydh;my&3h*%Wau_K}yJn_=&aQ=XKlg z#Ft<-E|x}i?u=kLx}&2jLYEKH6@&En7?yi6xtgb|Vr>!R4I zZ86q@zg6*=uBNFzL)Aaf*V`A*GBv7~F{n{Jq{|BR@1}hHV#-u687p^0VLze@k=eaT zB-do}-gTud?HLOG;W6m6Nbc{i6A^`s4zyErOJsuKsh12@n|@Rc*I7(s)yo((Ry}C=wV>~JwBV0>C_^=0 zAumH=43Cf$G&YxXHeO9FdK$#LDXB^4(v=2vr9tysoBpj`-CV`Q?0_BAuewrK zSL&KXT_-dbvI$sIy@;ks;m4kghMJ>kH}nLb|?? zt`CRs$ofLMzL2gjr0WYcr=K3}@2i!UF$25%WM|ZkiO2S+hxFc9Z&W>HL}T6Cq`)4i zPv08bB@?v(VEgMd0{nG~tKnU7LEIJB!(AiZU#GYj-Zkd^b&8weU2#?1>oq7{y?r~z zK+jjJ9wbciA!A@07P9IweQV!fzj>0NsC*J+l`js>WUqeIFw0ck5cQ;*+dH_UU)7-= zWF7Ls)FB^r9r{Vuq4LQ(R6bpYden8Oj0#!uNe%p{$@Qp_?r!0!Uivh z@Tc<|yo3#2!UiwlddbUyA6xZ=d67~>K(TL$IrWn5;Yz=G7*TII3OI>?;j9wW;jGCw zoi+KYCK3Rza_Y)){K0VLVO_ZaOU^`r`rKj6r@nh-ng)e+X7i;K-)(=6A}#}`_iDbg z)j|b`)mhDVenq=Es$11}@=3p{@8qiiTW3{Fs!40|Y)p3=`&yQ;{ee(=bWbNZ6IQzV z7pFA`)QA-<)F{zNSJZT`7G`X})1J}UhZzv7;&`-dXS6@o*Co}^Q0sLmMNUi8I`v!e zp?{N=w6|-K0(Uj_+hI*Sb~vONTsW);S2(0Z2;0%pEbdB#vBNF88IG2Yk*-7vq-&z8 zH-oKS4>rGF>)_B_fA(pEXqwdL_rs=AH(AU0Xj`yYBV)5Nz^s+_msp|%>dRA;NB^kG z2x~dl4jV*=wfu{B&2Yn7?Sc1jdZZT+^h9GustC9F+LpuMvn%I>wlym^E@@r2cs2aHsp-%T8N@Ujl-B8nH2F2+n*16uO?uU4+s$4Vm~yqA z7I-u8m`TH~GhJgk+BO|;>!pBg`&%+JaSh`%WbkB$l5K{Ttv3b$vca_(f_9sojw0fN z9r38??K*c%bjQwty-3LD>FbU`9|p}>x_RvD&x*<6ACD@dW&ylm?@D3atV#XN9vPTX zTd!N|)N9b3dW|)w-i-DpLtc7cqrJ_5>JJ;NChrDodZA|9dLabD4rTR6pAO_vg^lrU&(26y6QYOyUtKjy`eCz=df+PKF83~_1hsQYbW&7Xh}*Bg`3C32RpY7Y>VhF z3k3Z+Uapiz+j=t+l^Wpu!E^}iKu=%4H>#S`0j^|@5j`K+dM^mym`>EIHvnc3WjfI| zood$`lCKZtNIe#Y_h8RJY-i72gO~aYoxHPWFrF6a@9*0^xKsTUs1IkT_kJmRnWVaO zmDJU@ThmmazFw#FM7Mf*LOP|RZ(y5#8r<3C<<=AyFufcwSPvMi2TU&p3_=2?kpa`& z0mBahdP#~+G(G+ThVcdT)~X$7sn?)m79HG~twHYSQ4PuR-een+FB1IZi-cUaS8og0 z0loCa-S8#9rXt5M(y*bbut9p*bVAs)FWjy>E8MQBCfu(1h--va*9fgHgx0R!4(z{d zSM|F_XmyRy>ehvY`E_SXE>pW}Xx25{&8=%q>)D!;uTGPQTc^jZ3+~lFkn(%IhSIIq zP`dR7N<%`fR_tKM$$W1}&NZ!eO{-ngY8PXxX8>ENT~VQ~Xz&Q^ccqInlb6>T{hHEhs6SZ?&|2x|`rflu!(#@oYvd=_%pb0qr(8qNt~L!od8UW7P>*-brCc*V;kZd%uHk|>@yEPt z4(^8ZcyW!K=V}!cJZ?3YbB*ZX>YXRs4SC<0dbLVQdg$tMwTjPnwRYHcwRY8ZjiBHf zNzTfHdq zW$>-( zs%p@WDK}v7Y2;ZqWawI}s@`YFGClO8E1~6cgHLO9Mk`fp*zR$Wyg$v$I!Q9 z#=B$qx?||VaZNuP{_Yrl=@>pAGVAh?k-tJ_eheG_88-AB*1LCh*a;OxI=A=s?Z%|q z9mOgXHX1#79Y~AsjC6Vlz8$e%7|8js1nKMTQY{Xc5(84f5g&jh$w0I#vm@HmV+v8Z zf`(5zbb@w>(SD5bw^ zbn`R&qdQ?~qBJ8p@ollK153Qt=c?D0gI>pFr4EFm_&}t8VCB}uP~5=~&j3|mQd7D+ zU#=bpVgnd8CR1^IZ*S)|Y*YcMOS*czWQ{f>$Or10#$uWs7!7VI){6sDEpSj@}`F0+an!)yU_2+GL@|9cZ?;56KKwYRv0X_Z})H}W9DE6oZm6#4vsN% zFam<#Oenb5X+Z6e1XL=j0T2}9P$rufn6Ka^C)rf}nrv@sR_y5xe+P~I@C&wnhhLz+ zAAZ3OF7wOlGoO?=+*)a!=>1| z>E@SIq}bS_PFCjVnzOwNUey1>vI%V`U^kO0~07`EpZDjbvtHB_$t? zMG_vfaf8Kc#!Zgw6+Wl9&ZU45UZ?YMZKUnE!p{`frF12(tLa)?*VB!-ZlWjP3hz=}HzPg@p%EIv zwUc(?x|MFlHAWFr1)imYxbCHUaXo{cfh#;paXp8ggX<^hCvm-qUWDtX=%;YK6bDEU z_>f+Q>-F?{T<@ZH;rbW_X5e>t7Ov+od<%a=d?me*aP1PP7al;L!1ZErF|N0YTXDTz z+>R?ea4ZTxo4;C2yzR@h7<^b};0n(a^pOm7g!oqYlV^@K;yp9zbMto6F9u#Q=zE4z Z{$N?+9UlVzs#1Veq&_A7h{#da{{z-~j-CJj literal 0 HcmV?d00001 diff --git a/config/ded/fonts/minecraft_font.ttf b/config/ded/fonts/minecraft_font.ttf new file mode 100644 index 0000000000000000000000000000000000000000..61b4610bd20cd58a9782bd5e1cc8f217a9858f30 GIT binary patch literal 15700 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 gZSc=l5+Pi|iEB4+S_Fk}H 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 Date: Sun, 19 Nov 2023 02:31:28 +0100 Subject: [PATCH 37/74] vim-o --- src/editor.c | 12 +++++++++ src/editor.h | 2 ++ src/main.c | 72 +++++++++++++++++++++++++++++++++++++++++++++------- 3 files changed, 77 insertions(+), 9 deletions(-) diff --git a/src/editor.c b/src/editor.c index c873d02f..f7d676f9 100644 --- a/src/editor.c +++ b/src/editor.c @@ -25,6 +25,18 @@ bool relativeLineNumbers = false; +void editor_new_line_down(Editor *editor) { + editor_move_to_line_end(editor); + editor_insert_char(editor, '\n'); +} + +void editor_new_line_up(Editor *editor) { + editor_move_to_line_begin(editor); + editor_insert_char(editor, '\n'); + editor_move_line_up(editor); +} + + // TODO bad implementation bool extractWordUnderCursor(Editor *editor, char *word) { // Make a copy of cursor position to avoid modifying the actual cursor diff --git a/src/editor.h b/src/editor.h index fc54f58c..96b856dc 100644 --- a/src/editor.h +++ b/src/editor.h @@ -152,6 +152,8 @@ bool extractWordUnderCursor(Editor *editor, char *word); void editor_start_visual_selection(Editor *e); void editor_start_visual_line_selection(Editor *e); void editor_cut_char_under_cursor(Editor *e); +void editor_new_line_down(Editor *editor); +void editor_new_line_up(Editor *editor); extern float zoom_factor; diff --git a/src/main.c b/src/main.c index 317e6fc3..d15ed77e 100644 --- a/src/main.c +++ b/src/main.c @@ -598,6 +598,7 @@ int main(int argc, char **argv) } } break; + case SDLK_ESCAPE: { editor_clear_mark(&editor); editor_stop_search(&editor); @@ -605,6 +606,26 @@ int main(int argc, char **argv) } break; + + case SDLK_o: + if (SDL_GetModState() & KMOD_SHIFT) { + editor_new_line_up(&editor); + } else { + editor_new_line_down(&editor); + } + + current_mode = INSERT; + editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'o' or 'O' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not 'o' or 'O' + } + break; + + case SDL_MOUSEWHEEL: if (event.wheel.y > 0) { // Scroll up printf("Scroll Up event captured\n"); // Debug print @@ -616,9 +637,6 @@ int main(int argc, char **argv) break; - - - case SDLK_LEFTBRACKET: if (SDL_GetModState() & KMOD_ALT) { switch_to_font(library, &face, &atlas, -1); @@ -670,8 +688,36 @@ int main(int argc, char **argv) } break; + // TODO the else should probably be in a function + // like editor_clipboard_copy() case SDLK_y: - editor_clipboard_copy(&editor); + if (editor.selection) { + editor_clipboard_copy(&editor); + } else { + size_t start = editor.cursor; + while (start > 0 && + editor.data.items[start - 1] != '\n') { + start--; + } + + size_t end = start; + while (end < editor.data.count && + editor.data.items[end] != '\n') { + end++; + } + + if (start < end) { + editor.clipboard.count = 0; + sb_append_buf(&editor.clipboard, + &editor.data.items[start], end - start); + sb_append_null(&editor.clipboard); + + if (SDL_SetClipboardText(editor.clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", + SDL_GetError()); + } + } + } break; case SDLK_g: { @@ -725,6 +771,14 @@ int main(int argc, char **argv) } break; + case SDLK_s: { + current_mode = INSERT; + if (event.key.keysym.mod & KMOD_CTRL) { + editor_start_search(&editor); + } + } + break; + case SDLK_EQUALS: { if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed theme_next(¤tThemeIndex); @@ -1188,11 +1242,11 @@ int main(int argc, char **argv) case VISUAL: switch (event.key.keysym.sym) { - /* case SDLK_x: */ - /* editor_delete_selection(&editor); */ - /* editor.selection = false; */ - /* break; */ - + case SDLK_y: + if (editor.selection) { + editor_clipboard_copy(&editor); + } + break; case SDLK_x: if (editor.selection) { From 59b173d0b20ae573680f0c340a55e342f26f5221 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 22 Nov 2023 18:07:27 +0100 Subject: [PATCH 38/74] wave --- config/ded/shaders/wave.vert | 32 ++++ src/editor.c | 27 ++- src/file_browser.c | 5 +- src/main.c | 3 + src/simple_renderer.c | 328 ++++++++++++++++++++++++++--------- src/simple_renderer.h | 64 ++++--- 6 files changed, 334 insertions(+), 125 deletions(-) create mode 100644 config/ded/shaders/wave.vert diff --git a/config/ded/shaders/wave.vert b/config/ded/shaders/wave.vert new file mode 100644 index 00000000..09264ab5 --- /dev/null +++ b/config/ded/shaders/wave.vert @@ -0,0 +1,32 @@ +#version 330 core + +uniform vec2 resolution; +uniform float time; +uniform float camera_scale; +uniform vec2 camera_pos; + +layout(location = 0) in vec2 position; +layout(location = 1) in vec4 color; +layout(location = 2) in vec2 uv; + +out vec4 out_color; +out vec2 out_uv; + +vec2 camera_project(vec2 point) +{ + return 2.0 * (point - camera_pos) * camera_scale / resolution; +} + +void main() { + // Apply camera projection first + vec4 projected_position = vec4(camera_project(position), 0.0, 1.0); + + // Adding a displacement effect that varies with time in screen space + projected_position.x += sin(projected_position.y + time) * 0.22; // Horizontal wave + projected_position.y += cos(projected_position.x + time) * 0.02; // Vertical wave + + gl_Position = projected_position; + + out_color = color; + out_uv = uv; +} diff --git a/src/editor.c b/src/editor.c index f7d676f9..a97fd5f9 100644 --- a/src/editor.c +++ b/src/editor.c @@ -625,7 +625,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render selection { - simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); if (editor->selection) { for (size_t row = 0; row < editor->lines.count; ++row) { size_t select_begin_chr = editor->select_begin; @@ -687,7 +687,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render search { if (editor->searching) { - simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); Vec4f selection_color = themes[currentThemeIndex].search; // or .selection_color if that's what you named it in the struct. Vec2f p1 = cursor_pos; @@ -708,7 +708,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render marked search result { - simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); if (editor->has_mark) { for (size_t row = 0; row < editor->lines.count; ++row) { size_t mark_begin_chr = editor->mark_start; @@ -753,7 +753,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render line numbers if (showLineNumbers) { - simple_renderer_set_shader(sr, SHADER_FOR_TEXT); + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); // Determine the current line number using the provided function size_t currentLineNumber = editor_cursor_row(editor); @@ -798,7 +798,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render text { - simple_renderer_set_shader(sr, SHADER_FOR_TEXT); + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); for (size_t i = 0; i < editor->tokens.count; ++i) { Token token = editor->tokens.items[i]; Vec2f pos = token.position; @@ -1016,7 +1016,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render cursor - simple_renderer_set_shader(sr, SHADER_FOR_EPICNESS); + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_EPICNESS); // Adjust cursor position if line numbers are shown if (showLineNumbers) { @@ -1056,14 +1056,13 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer &next_char_pos); cursor_width = next_char_pos.x - cursor_pos.x; } else { - // Measure the width of a default character 'a' for empty lines or - // space - /* Vec2f next_char_pos = cursor_pos; */ - /* free_glyph_atlas_measure_line_sized(atlas, "a", 1, - * &next_char_pos); */ - /* cursor_width = next_char_pos.x - cursor_pos.x; */ - - cursor_width = FREE_GLYPH_FONT_SIZE / 2.0f; + // Measure the width of a default character ' ' + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + + /* cursor_width = FREE_GLYPH_FONT_SIZE / 2.0f; */ } simple_renderer_solid_rect(sr, cursor_pos, diff --git a/src/file_browser.c b/src/file_browser.c index 7beca9a9..944996b0 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -1,5 +1,6 @@ #include #include "file_browser.h" +#include "simple_renderer.h" #include "sv.h" #include "editor.h" // only for zoom_factor maybe im bad at programming #include @@ -146,7 +147,7 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl sr->resolution = vec2f(w, h); sr->time = (float) SDL_GetTicks() / 1000.0f; - simple_renderer_set_shader(sr, SHADER_FOR_COLOR); + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); if (fb->cursor < fb->files.count) { const Vec2f begin = vec2f(0, -((float)fb->cursor + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); Vec2f end = begin; @@ -159,7 +160,7 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl } simple_renderer_flush(sr); - simple_renderer_set_shader(sr, SHADER_FOR_EPICNESS); + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_EPICNESS); for (size_t row = 0; row < fb->files.count; ++row) { const Vec2f begin = vec2f(0, -(float)row * FREE_GLYPH_FONT_SIZE); Vec2f end = begin; diff --git a/src/main.c b/src/main.c index d15ed77e..e1b28129 100644 --- a/src/main.c +++ b/src/main.c @@ -466,6 +466,7 @@ int main(int argc, char **argv) case SDLK_F5: { + initialize_shader_paths(); simple_renderer_reload_shaders(&sr); } break; @@ -684,6 +685,7 @@ int main(int argc, char **argv) case SDLK_F5: { + initialize_shader_paths(); simple_renderer_reload_shaders(&sr); } break; @@ -1182,6 +1184,7 @@ int main(int argc, char **argv) break; case SDLK_F5: { + initialize_shader_paths(); simple_renderer_reload_shaders(&sr); } break; diff --git a/src/simple_renderer.c b/src/simple_renderer.c index 3004a714..f9a1caa4 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -25,8 +25,9 @@ // still hardcoded but ~/.config is cool -char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; -char frag_shader_file_paths[COUNT_SIMPLE_SHADERS][MAX_SHADER_PATH_LENGTH]; +/* char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; */ +char vert_shader_file_path[COUNT_VERTEX_SHADERS][MAX_SHADER_PATH_LENGTH]; +char frag_shader_file_paths[COUNT_FRAGMENT_SHADERS][MAX_SHADER_PATH_LENGTH]; void set_shader_path(char* buffer, const char* shaderName) { const char* home = getenv("HOME"); @@ -34,7 +35,10 @@ void set_shader_path(char* buffer, const char* shaderName) { } void initialize_shader_paths() { - set_shader_path(vert_shader_file_path, "simple.vert"); + /* set_shader_path(vert_shader_file_path, "simple.vert"); */ + set_shader_path(vert_shader_file_path[VERTEX_SHADER_SIMPLE], "simple.vert"); + set_shader_path(vert_shader_file_path[VERTEX_SHADER_FIXED], "fixed.vert"); + set_shader_path(vert_shader_file_path[VERTEX_SHADER_WAVE], "wave.vert"); set_shader_path(frag_shader_file_paths[SHADER_FOR_COLOR], "simple_color.frag"); set_shader_path(frag_shader_file_paths[SHADER_FOR_IMAGE], "simple_image.frag"); @@ -160,109 +164,248 @@ static void get_uniform_location(GLuint program, GLint locations[COUNT_UNIFORM_S } } -void simple_renderer_init(Simple_Renderer *sr) -{ - +/* void simple_renderer_init(Simple_Renderer *sr) */ +/* { */ + +/* if (isAnimated) { */ +/* sr->camera_scale = 3.0f; */ +/* } */ + +/* { */ +/* glGenVertexArrays(1, &sr->vao); */ +/* glBindVertexArray(sr->vao); */ + +/* glGenBuffers(1, &sr->vbo); */ +/* glBindBuffer(GL_ARRAY_BUFFER, sr->vbo); */ +/* glBufferData(GL_ARRAY_BUFFER, sizeof(sr->verticies), sr->verticies, GL_DYNAMIC_DRAW); */ + +/* // position */ +/* glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_POSITION); */ +/* glVertexAttribPointer( */ +/* SIMPLE_VERTEX_ATTR_POSITION, */ +/* 2, */ +/* GL_FLOAT, */ +/* GL_FALSE, */ +/* sizeof(Simple_Vertex), */ +/* (GLvoid *) offsetof(Simple_Vertex, position)); */ + +/* // color */ +/* glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_COLOR); */ +/* glVertexAttribPointer( */ +/* SIMPLE_VERTEX_ATTR_COLOR, */ +/* 4, */ +/* GL_FLOAT, */ +/* GL_FALSE, */ +/* sizeof(Simple_Vertex), */ +/* (GLvoid *) offsetof(Simple_Vertex, color)); */ + +/* // uv */ +/* glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_UV); */ +/* glVertexAttribPointer( */ +/* SIMPLE_VERTEX_ATTR_UV, */ +/* 2, */ +/* GL_FLOAT, */ +/* GL_FALSE, */ +/* sizeof(Simple_Vertex), */ +/* (GLvoid *) offsetof(Simple_Vertex, uv)); */ +/* } */ + +/* GLuint shaders[2] = {0}; */ + +/* if (!compile_shader_file(vert_shader_file_path[VERTEX_SHADER_SIMPLE], GL_VERTEX_SHADER, &shaders[0])) { */ +/* exit(1); */ +/* } */ + +/* for (int v = 0; v < COUNT_VERTEX_SHADERS; ++v) { */ +/* for (int f = 0; f < COUNT_FRAGMENT_SHADERS; ++f) { */ +/* GLuint vertexShader, fragmentShader; */ +/* compile_shader_file(vert_shader_file_path[v], GL_VERTEX_SHADER, &vertexShader); */ +/* compile_shader_file(frag_shader_file_paths[f], GL_FRAGMENT_SHADER, &fragmentShader); */ + +/* GLuint program = glCreateProgram(); */ +/* glAttachShader(program, vertexShader); */ +/* glAttachShader(program, fragmentShader); */ +/* link_program(program, __FILE__, __LINE__); */ + +/* sr->programs[v][f] = program; */ + +/* glDeleteShader(fragmentShader); */ +/* glDeleteShader(vertexShader); */ +/* } */ +/* } */ +/* glDeleteShader(shaders[0]); */ +/* } */ + +/* void simple_renderer_reload_shaders(Simple_Renderer *sr) */ +/* { */ +/* GLuint programs[COUNT_FRAGMENT_SHADERS]; */ +/* GLuint shaders[2] = {0}; */ + +/* bool ok = true; */ + +/* if (!compile_shader_file(vert_shader_file_path, GL_VERTEX_SHADER, &shaders[0])) { */ +/* ok = false; */ +/* } */ + +/* for (int i = 0; i < COUNT_FRAGMENT_SHADERS; ++i) { */ +/* if (!compile_shader_file(frag_shader_file_paths[i], GL_FRAGMENT_SHADER, &shaders[1])) { */ +/* ok = false; */ +/* } */ +/* programs[i] = glCreateProgram(); */ +/* attach_shaders_to_program(shaders, sizeof(shaders) / sizeof(shaders[0]), programs[i]); */ +/* if (!link_program(programs[i], __FILE__, __LINE__)) { */ +/* ok = false; */ +/* } */ +/* glDeleteShader(shaders[1]); */ +/* } */ +/* glDeleteShader(shaders[0]); */ + +/* if (ok) { */ +/* /\* for (int i = 0; i < COUNT_FRAGMENT_SHADERS; ++i) { *\/ */ +/* /\* glDeleteProgram(sr->programs[i]); *\/ */ +/* /\* sr->programs[i] = programs[i]; *\/ */ +/* /\* } *\/ */ +/* for (int v = 0; v < COUNT_VERTEX_SHADERS; ++v) { */ +/* for (int f = 0; f < COUNT_FRAGMENT_SHADERS; ++f) { */ +/* glDeleteProgram(sr->programs[v][f]); */ +/* sr->programs[v][f] = programs[v][f]; */ +/* } */ +/* } */ + +/* printf("Reloaded shaders successfully!\n"); */ +/* } else { */ +/* for (int i = 0; i < COUNT_FRAGMENT_SHADERS; ++i) { */ +/* glDeleteProgram(programs[i]); */ +/* } */ +/* } */ +/* } */ + + +void simple_renderer_init(Simple_Renderer *sr) { if (isAnimated) { sr->camera_scale = 3.0f; } - { - glGenVertexArrays(1, &sr->vao); - glBindVertexArray(sr->vao); - - glGenBuffers(1, &sr->vbo); - glBindBuffer(GL_ARRAY_BUFFER, sr->vbo); - glBufferData(GL_ARRAY_BUFFER, sizeof(sr->verticies), sr->verticies, GL_DYNAMIC_DRAW); - - // position - glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_POSITION); - glVertexAttribPointer( - SIMPLE_VERTEX_ATTR_POSITION, - 2, - GL_FLOAT, - GL_FALSE, - sizeof(Simple_Vertex), - (GLvoid *) offsetof(Simple_Vertex, position)); - - // color - glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_COLOR); - glVertexAttribPointer( - SIMPLE_VERTEX_ATTR_COLOR, - 4, - GL_FLOAT, - GL_FALSE, - sizeof(Simple_Vertex), - (GLvoid *) offsetof(Simple_Vertex, color)); - - // uv - glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_UV); - glVertexAttribPointer( - SIMPLE_VERTEX_ATTR_UV, - 2, - GL_FLOAT, - GL_FALSE, - sizeof(Simple_Vertex), - (GLvoid *) offsetof(Simple_Vertex, uv)); + // Initialize VAO and VBO + glGenVertexArrays(1, &sr->vao); + glBindVertexArray(sr->vao); + glGenBuffers(1, &sr->vbo); + glBindBuffer(GL_ARRAY_BUFFER, sr->vbo); + glBufferData(GL_ARRAY_BUFFER, sizeof(sr->verticies), sr->verticies, GL_DYNAMIC_DRAW); + + // Setup vertex attributes + // Position + glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_POSITION); + glVertexAttribPointer(SIMPLE_VERTEX_ATTR_POSITION, 2, GL_FLOAT, GL_FALSE, sizeof(Simple_Vertex), (GLvoid *)offsetof(Simple_Vertex, position)); + + // Color + glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_COLOR); + glVertexAttribPointer(SIMPLE_VERTEX_ATTR_COLOR, 4, GL_FLOAT, GL_FALSE, sizeof(Simple_Vertex), (GLvoid *)offsetof(Simple_Vertex, color)); + + // UV + glEnableVertexAttribArray(SIMPLE_VERTEX_ATTR_UV); + glVertexAttribPointer(SIMPLE_VERTEX_ATTR_UV, 2, GL_FLOAT, GL_FALSE, sizeof(Simple_Vertex), (GLvoid *)offsetof(Simple_Vertex, uv)); + + // Compile and link shaders for each combination + for (int v = 0; v < COUNT_VERTEX_SHADERS; ++v) { + for (int f = 0; f < COUNT_FRAGMENT_SHADERS; ++f) { + GLuint vertexShader, fragmentShader; + + if (!compile_shader_file(vert_shader_file_path[v], GL_VERTEX_SHADER, &vertexShader)) { + fprintf(stderr, "Failed to compile vertex in init: %s\n", vert_shader_file_path[v]); + continue; + } + + if (!compile_shader_file(frag_shader_file_paths[f], GL_FRAGMENT_SHADER, &fragmentShader)) { + fprintf(stderr, "Failed to compile fragment in init: %s\n", frag_shader_file_paths[f]); + glDeleteShader(vertexShader); + continue; + } + + GLuint program = glCreateProgram(); + glAttachShader(program, vertexShader); + glAttachShader(program, fragmentShader); + + if (!link_program(program, __FILE__, __LINE__)) { + fprintf(stderr, "Failed to link shader program in init\n"); + glDeleteShader(vertexShader); + glDeleteShader(fragmentShader); + continue; + } + + sr->programs[v][f] = program; + + // Delete shaders after linking + glDeleteShader(vertexShader); + glDeleteShader(fragmentShader); + } } +} - GLuint shaders[2] = {0}; - if (!compile_shader_file(vert_shader_file_path, GL_VERTEX_SHADER, &shaders[0])) { - exit(1); - } - for (int i = 0; i < COUNT_SIMPLE_SHADERS; ++i) { - if (!compile_shader_file(frag_shader_file_paths[i], GL_FRAGMENT_SHADER, &shaders[1])) { - exit(1); - } - sr->programs[i] = glCreateProgram(); - attach_shaders_to_program(shaders, sizeof(shaders) / sizeof(shaders[0]), sr->programs[i]); - if (!link_program(sr->programs[i], __FILE__, __LINE__)) { - exit(1); - } - glDeleteShader(shaders[1]); - } - glDeleteShader(shaders[0]); -} -void simple_renderer_reload_shaders(Simple_Renderer *sr) -{ - GLuint programs[COUNT_SIMPLE_SHADERS]; - GLuint shaders[2] = {0}; +void simple_renderer_reload_shaders(Simple_Renderer *sr) { bool ok = true; - if (!compile_shader_file(vert_shader_file_path, GL_VERTEX_SHADER, &shaders[0])) { - ok = false; - } + GLuint vertexShaders[COUNT_VERTEX_SHADERS]; + GLuint fragmentShaders[COUNT_FRAGMENT_SHADERS]; - for (int i = 0; i < COUNT_SIMPLE_SHADERS; ++i) { - if (!compile_shader_file(frag_shader_file_paths[i], GL_FRAGMENT_SHADER, &shaders[1])) { + // Compile all vertex shaders + for (int v = 0; v < COUNT_VERTEX_SHADERS; ++v) { + if (!compile_shader_file(vert_shader_file_path[v], GL_VERTEX_SHADER, &vertexShaders[v])) { ok = false; } - programs[i] = glCreateProgram(); - attach_shaders_to_program(shaders, sizeof(shaders) / sizeof(shaders[0]), programs[i]); - if (!link_program(programs[i], __FILE__, __LINE__)) { + } + + // Compile all fragment shaders + for (int f = 0; f < COUNT_FRAGMENT_SHADERS; ++f) { + if (!compile_shader_file(frag_shader_file_paths[f], GL_FRAGMENT_SHADER, &fragmentShaders[f])) { ok = false; } - glDeleteShader(shaders[1]); } - glDeleteShader(shaders[0]); + // Link programs for each combination + GLuint newPrograms[COUNT_VERTEX_SHADERS][COUNT_FRAGMENT_SHADERS]; + for (int v = 0; v < COUNT_VERTEX_SHADERS; ++v) { + for (int f = 0; f < COUNT_FRAGMENT_SHADERS; ++f) { + newPrograms[v][f] = glCreateProgram(); + glAttachShader(newPrograms[v][f], vertexShaders[v]); + glAttachShader(newPrograms[v][f], fragmentShaders[f]); + if (!link_program(newPrograms[v][f], __FILE__, __LINE__)) { + ok = false; + } + } + } + + // Clean up old programs and assign new ones if (ok) { - for (int i = 0; i < COUNT_SIMPLE_SHADERS; ++i) { - glDeleteProgram(sr->programs[i]); - sr->programs[i] = programs[i]; + for (int v = 0; v < COUNT_VERTEX_SHADERS; ++v) { + for (int f = 0; f < COUNT_FRAGMENT_SHADERS; ++f) { + glDeleteProgram(sr->programs[v][f]); + sr->programs[v][f] = newPrograms[v][f]; + } } printf("Reloaded shaders successfully!\n"); } else { - for (int i = 0; i < COUNT_SIMPLE_SHADERS; ++i) { - glDeleteProgram(programs[i]); + for (int v = 0; v < COUNT_VERTEX_SHADERS; ++v) { + for (int f = 0; f < COUNT_FRAGMENT_SHADERS; ++f) { + glDeleteProgram(newPrograms[v][f]); + } } } + + // Clean up shaders + for (int v = 0; v < COUNT_VERTEX_SHADERS; ++v) { + glDeleteShader(vertexShaders[v]); + } + for (int f = 0; f < COUNT_FRAGMENT_SHADERS; ++f) { + glDeleteShader(fragmentShaders[f]); + } } + // TODO: Don't render triples of verticies that form a triangle that is completely outside of the screen // // Ideas on how to check if a triangle is outside of the screen: @@ -349,17 +492,34 @@ void simple_renderer_draw(Simple_Renderer *sr) glDrawArrays(GL_TRIANGLES, 0, sr->verticies_count); } -void simple_renderer_set_shader(Simple_Renderer *sr, Simple_Shader shader) -{ - sr->current_shader = shader; - glUseProgram(sr->programs[sr->current_shader]); - get_uniform_location(sr->programs[sr->current_shader], sr->uniforms); +/* void simple_renderer_set_shader(Simple_Renderer *sr, Simple_Shader shader) */ +/* { */ +/* sr->current_shader = shader; */ +/* glUseProgram(sr->programs[sr->current_shader]); */ +/* get_uniform_location(sr->programs[sr->current_shader], sr->uniforms); */ +/* glUniform2f(sr->uniforms[UNIFORM_SLOT_RESOLUTION], sr->resolution.x, sr->resolution.y); */ +/* glUniform1f(sr->uniforms[UNIFORM_SLOT_TIME], sr->time); */ +/* glUniform2f(sr->uniforms[UNIFORM_SLOT_CAMERA_POS], sr->camera_pos.x, sr->camera_pos.y); */ +/* glUniform1f(sr->uniforms[UNIFORM_SLOT_CAMERA_SCALE], sr->camera_scale); */ +/* } */ + +void simple_renderer_set_shader(Simple_Renderer *sr, int vertexShaderIndex, int fragmentShaderIndex) { + GLuint program = sr->programs[vertexShaderIndex][fragmentShaderIndex]; + glUseProgram(program); + + get_uniform_location(program, sr->uniforms); + glUniform2f(sr->uniforms[UNIFORM_SLOT_RESOLUTION], sr->resolution.x, sr->resolution.y); glUniform1f(sr->uniforms[UNIFORM_SLOT_TIME], sr->time); glUniform2f(sr->uniforms[UNIFORM_SLOT_CAMERA_POS], sr->camera_pos.x, sr->camera_pos.y); glUniform1f(sr->uniforms[UNIFORM_SLOT_CAMERA_SCALE], sr->camera_scale); + + // Optionally store the current shader indices if needed + sr->current_vertex_shader_index = vertexShaderIndex; + sr->current_fragment_shader_index = fragmentShaderIndex; } + void simple_renderer_flush(Simple_Renderer *sr) { simple_renderer_sync(sr); diff --git a/src/simple_renderer.h b/src/simple_renderer.h index 58c38113..53ff2878 100644 --- a/src/simple_renderer.h +++ b/src/simple_renderer.h @@ -40,16 +40,25 @@ typedef enum { SHADER_FOR_IMAGE, SHADER_FOR_TEXT, SHADER_FOR_GLOW, - SHADER_FOR_EPICNESS, // This is the one that does that cool rainbowish animation - COUNT_SIMPLE_SHADERS, + SHADER_FOR_EPICNESS, + SHADER_FOR_ERIC, + VERTEX_SHADER_SIMPLE, + VERTEX_SHADER_FIXED, + VERTEX_SHADER_WAVE, + COUNT_FRAGMENT_SHADERS, + COUNT_VERTEX_SHADERS, } Simple_Shader; typedef struct { GLuint vao; GLuint vbo; - GLuint programs[COUNT_SIMPLE_SHADERS]; + /* GLuint programs[COUNT_SIMPLE_SHADERS]; */ + GLuint programs[COUNT_VERTEX_SHADERS][COUNT_FRAGMENT_SHADERS]; Simple_Shader current_shader; + int current_vertex_shader_index; + int current_fragment_shader_index; + GLint uniforms[COUNT_UNIFORM_SLOTS]; Simple_Vertex verticies[SIMPLE_VERTICIES_CAP]; size_t verticies_count; @@ -69,7 +78,9 @@ typedef struct { #define MAX_SHADER_PATH_LENGTH 256 -extern char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; +/* extern char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; */ +extern char vert_shader_file_path[COUNT_VERTEX_SHADERS][MAX_SHADER_PATH_LENGTH]; + @@ -81,26 +92,29 @@ void simple_renderer_reload_shaders(Simple_Renderer *sr); void simple_renderer_vertex(Simple_Renderer *sr, Vec2f p, Vec4f c, Vec2f uv); -void simple_renderer_set_shader(Simple_Renderer *sr, Simple_Shader shader); -void simple_renderer_triangle(Simple_Renderer *sr, - Vec2f p0, Vec2f p1, Vec2f p2, - Vec4f c0, Vec4f c1, Vec4f c2, - Vec2f uv0, Vec2f uv1, Vec2f uv2); -void simple_renderer_quad(Simple_Renderer *sr, - Vec2f p0, Vec2f p1, Vec2f p2, Vec2f p3, - Vec4f c0, Vec4f c1, Vec4f c2, Vec4f c3, - Vec2f uv0, Vec2f uv1, Vec2f uv2, Vec2f uv3); -void simple_renderer_solid_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, Vec4f c); -void simple_renderer_image_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, Vec2f uvp, Vec2f uvs, Vec4f c); -void simple_renderer_flush(Simple_Renderer *sr); -void simple_renderer_sync(Simple_Renderer *sr); -void simple_renderer_draw(Simple_Renderer *sr); - -// ADDED -void initialize_shader_paths(); - - - -/* const char *resolve_shader_path(const char *shader_file_name); */ + +/* void simple_renderer_set_shader(Simple_Renderer *sr, Simple_Shader shader); */ +void simple_renderer_set_shader(Simple_Renderer *sr, int vertexShaderIndex, + int fragmentShaderIndex); + + void simple_renderer_triangle(Simple_Renderer * sr, Vec2f p0, Vec2f p1, + Vec2f p2, Vec4f c0, Vec4f c1, Vec4f c2, + Vec2f uv0, Vec2f uv1, Vec2f uv2); + void simple_renderer_quad(Simple_Renderer * sr, Vec2f p0, Vec2f p1, + Vec2f p2, Vec2f p3, Vec4f c0, Vec4f c1, Vec4f c2, + Vec4f c3, Vec2f uv0, Vec2f uv1, Vec2f uv2, + Vec2f uv3); + void simple_renderer_solid_rect(Simple_Renderer * sr, Vec2f p, Vec2f s, + Vec4f c); + void simple_renderer_image_rect(Simple_Renderer * sr, Vec2f p, Vec2f s, + Vec2f uvp, Vec2f uvs, Vec4f c); + void simple_renderer_flush(Simple_Renderer * sr); + void simple_renderer_sync(Simple_Renderer * sr); + void simple_renderer_draw(Simple_Renderer * sr); + + // ADDED + void initialize_shader_paths(); + + /* const char *resolve_shader_path(const char *shader_file_name); */ #endif // SIMPLE_RENDERER_H_ From 05d35be1fe2764e94f0b7b0ac78d2e24dc40a206 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 22 Nov 2023 21:46:03 +0100 Subject: [PATCH 39/74] waved --- src/editor.c | 263 ++++++++++++++++++++++++++++++--------------------- src/editor.h | 3 + src/main.c | 12 ++- 3 files changed, 164 insertions(+), 114 deletions(-) diff --git a/src/editor.c b/src/editor.c index a97fd5f9..4e088636 100644 --- a/src/editor.c +++ b/src/editor.c @@ -18,6 +18,7 @@ float min_zoom_factor = 1.0; float max_zoom_factor = 10.0; bool showLineNumbers = false; bool isAnimated = true; +bool isWave = true; bool highlightCurrentLineNumber = true; bool relativeLineNumbers = false; @@ -103,6 +104,7 @@ void initialize_themes() { .cursor = hex_to_vec4f(0x80D4FFFF), .text = hex_to_vec4f(0xFFFFFFFF), .background = hex_to_vec4f(0x0D0D0DFF), + .minibuffer = hex_to_vec4f(0x0A0A0AFF), .comment = hex_to_vec4f(0x808080FF), .hashtag = hex_to_vec4f(0xD6EBFFFF), .logic = hex_to_vec4f(0x80D4FFFF), @@ -624,8 +626,13 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render selection + { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + if (isWave){ + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + }else{ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } if (editor->selection) { for (size_t row = 0; row < editor->lines.count; ++row) { size_t select_begin_chr = editor->select_begin; @@ -753,7 +760,11 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render line numbers if (showLineNumbers) { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + if (isWave){ + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); + }else{ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + } // Determine the current line number using the provided function size_t currentLineNumber = editor_cursor_row(editor); @@ -798,7 +809,11 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render text { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); + if (isWave){ + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); + }else{ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + } for (size_t i = 0; i < editor->tokens.count; ++i) { Token token = editor->tokens.items[i]; Vec2f pos = token.position; @@ -1015,129 +1030,159 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } - // Render cursor - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_EPICNESS); - - // Adjust cursor position if line numbers are shown - if (showLineNumbers) { - cursor_pos.x += lineNumberWidth; + // MODELINE + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + { + simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){1920, 21.0f}, CURRENT_THEME.minibuffer); + simple_renderer_flush(sr); } - // Constants and Default Settings - float CURSOR_WIDTH; - const Uint32 CURSOR_BLINK_THRESHOLD = 500; - const Uint32 CURSOR_BLINK_PERIOD = 1000; - const Uint32 t = SDL_GetTicks() - editor->last_stroke; - Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; // Default cursor color - float BORDER_THICKNESS = 3.0f; - Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); // Same color but with reduced alpha - - sr->verticies_count = 0; - - // If editor has a mark, make the cursor transparent - if (editor->has_mark) { - CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) + // Render cursor + if(editor->searching){ + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + }else if (isWave){ + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + }else{ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); } + { + // Adjust cursor position if line numbers are shown + if (showLineNumbers) { + cursor_pos.x += lineNumberWidth; + } - // Rendering based on mode - switch (current_mode) { - - case NORMAL: { - float cursor_width; - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - // Measure the width of a default character ' ' - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized(atlas, " ", 1, - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - - /* cursor_width = FREE_GLYPH_FONT_SIZE / 2.0f; */ + // Constants and Default Settings + float CURSOR_WIDTH; + const Uint32 CURSOR_BLINK_THRESHOLD = 500; + const Uint32 CURSOR_BLINK_PERIOD = 1000; + const Uint32 t = SDL_GetTicks() - editor->last_stroke; + Vec4f CURSOR_COLOR = + themes[currentThemeIndex].cursor; // Default cursor color + float BORDER_THICKNESS = 3.0f; + Vec4f INNER_COLOR = + vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, + 0.3); // Same color but with reduced alpha + + sr->verticies_count = 0; + + // If editor has a mark, make the cursor transparent + if (editor->has_mark) { + CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) } - simple_renderer_solid_rect(sr, cursor_pos, - vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); - } break; + // Rendering based on mode + switch (current_mode) { - case INSERT: - CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode - // Implement blinking for INSERT mode - if (t < CURSOR_BLINK_THRESHOLD || (t / CURSOR_BLINK_PERIOD) % 2 != 0) { - simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); - } - break; + case NORMAL: { + float cursor_width; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + // Measure the width of a default character ' ' + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + /* cursor_width = FREE_GLYPH_FONT_SIZE / 2.0f; */ + } - case VISUAL: { - float cursor_width; + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } break; + + case INSERT: + CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode + // Implement blinking for INSERT mode + if (t < CURSOR_BLINK_THRESHOLD || + (t / CURSOR_BLINK_PERIOD) % 2 != 0) { + simple_renderer_solid_rect( + sr, cursor_pos, + vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } + break; - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, 1, &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized(atlas, "a", 1, &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } + case VISUAL: { + float cursor_width; - // Draw inner rectangle - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x + BORDER_THICKNESS, - cursor_pos.y + BORDER_THICKNESS), - vec2f(cursor_width - 2 * BORDER_THICKNESS, - FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), - INNER_COLOR); - - // Draw the outline (borders) using the theme's cursor color - simple_renderer_solid_rect(sr, cursor_pos, - vec2f(cursor_width, BORDER_THICKNESS), - CURSOR_COLOR); // Top border - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x, - cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), - vec2f(cursor_width, BORDER_THICKNESS), - CURSOR_COLOR); // Bottom border - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); // Left border - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x + cursor_width - BORDER_THICKNESS, cursor_pos.y), - vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); // Right border - - break; - } + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, 1, + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized(atlas, "a", 1, + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } - case VISUAL_LINE: - // Set the cursor width to cover the entire height of the line - CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE; + // Draw inner rectangle + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x + BORDER_THICKNESS, + cursor_pos.y + BORDER_THICKNESS), + vec2f(cursor_width - 2 * BORDER_THICKNESS, + FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), + INNER_COLOR); + + // Draw the outline (borders) using the theme's cursor color + simple_renderer_solid_rect(sr, cursor_pos, + vec2f(cursor_width, BORDER_THICKNESS), + CURSOR_COLOR); // Top border + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x, + cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), + vec2f(cursor_width, BORDER_THICKNESS), + CURSOR_COLOR); // Bottom border + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); // Left border + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x + cursor_width - BORDER_THICKNESS, + cursor_pos.y), + vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); // Right border + + break; + } + + case VISUAL_LINE: + // Set the cursor width to cover the entire height of the line + CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE; - // Adjust cursor color for visual distinction. For instance, make it slightly transparent - Vec4f TRANSPARENT_CURSOR_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.5f); // 50% transparency + // Adjust cursor color for visual distinction. For instance, make it + // slightly transparent + Vec4f TRANSPARENT_CURSOR_COLOR = + vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, + 0.5f); // 50% transparency - // Render the cursor for the entire line - simple_renderer_solid_rect(sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), TRANSPARENT_CURSOR_COLOR); + // Render the cursor for the entire line + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), + TRANSPARENT_CURSOR_COLOR); - // If you'd like to add additional visual cues, consider adding a border or some other distinguishing feature. - break; + // If you'd like to add additional visual cues, consider adding a + // border or some other distinguishing feature. + break; + } + simple_renderer_flush(sr); } // Update camera diff --git a/src/editor.h b/src/editor.h index 96b856dc..855a2cca 100644 --- a/src/editor.h +++ b/src/editor.h @@ -78,6 +78,8 @@ typedef struct { Vec4f ampersand; Vec4f multiplication; Vec4f pointer; + Vec4f modeline; + Vec4f minibuffer; } Theme; @@ -160,6 +162,7 @@ extern float zoom_factor; extern float min_zoom_factor; extern float max_zoom_factor; extern bool showLineNumbers; +extern bool isWave; // THEME diff --git a/src/main.c b/src/main.c index e1b28129..d38fe0ad 100644 --- a/src/main.c +++ b/src/main.c @@ -466,7 +466,6 @@ int main(int argc, char **argv) case SDLK_F5: { - initialize_shader_paths(); simple_renderer_reload_shaders(&sr); } break; @@ -685,7 +684,6 @@ int main(int argc, char **argv) case SDLK_F5: { - initialize_shader_paths(); simple_renderer_reload_shaders(&sr); } break; @@ -732,6 +730,7 @@ int main(int argc, char **argv) case SDLK_SLASH: { current_mode = INSERT; + editor.last_stroke = SDL_GetTicks(); editor_start_search(&editor); // Consume the next SDL_TEXTINPUT event for '/' @@ -943,8 +942,12 @@ int main(int argc, char **argv) break; case SDLK_w: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_word_right(&editor); + if (event.key.keysym.mod & KMOD_CTRL) { + isWave = !isWave; + }else{ + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_word_right(&editor); + } break; // Add additional NORMAL mode keybinds here... @@ -1184,7 +1187,6 @@ int main(int argc, char **argv) break; case SDLK_F5: { - initialize_shader_paths(); simple_renderer_reload_shaders(&sr); } break; From 5c6411bc15d86ae485035de0a7118bd47336c256 Mon Sep 17 00:00:00 2001 From: laluxx Date: Thu, 21 Dec 2023 09:39:01 +0100 Subject: [PATCH 40/74] shaders --- build.sh | 15 ++++++- config/ded/fonts/Overwave.ttf | Bin 61632 -> 0 bytes config/ded/fonts/VictorMono-Regular.ttf | Bin 0 -> 151576 bytes config/ded/fonts/iosevka-regular.ttf | Bin 0 -> 4774196 bytes config/ded/shaders/fixed.vert | 24 ++++++++++++ config/ded/shaders/wave.vert | 50 ++++++++++++++++++++++-- todo.org | 12 +++--- 7 files changed, 90 insertions(+), 11 deletions(-) delete mode 100644 config/ded/fonts/Overwave.ttf create mode 100644 config/ded/fonts/VictorMono-Regular.ttf create mode 100644 config/ded/fonts/iosevka-regular.ttf create mode 100644 config/ded/shaders/fixed.vert diff --git a/build.sh b/build.sh index 02b05f10..71ec33b9 100755 --- a/build.sh +++ b/build.sh @@ -1,10 +1,23 @@ #!/bin/bash +askforoverwrite=true # Set to false to disable overwrite prompt if [ ! -d "$HOME/.config/ded" ]; then cp -r ./config/ded "$HOME/.config/" +elif [ "$askforoverwrite" = true ]; then + echo "Config already exists. Overwrite? (y/n)" + read -r -n 1 overwrite_confirmation + echo # Move to a new line + + if [ "$overwrite_confirmation" = "y" ]; then + rm -rf "$HOME/.config/ded" + cp -r ./config/ded "$HOME/.config/" + echo "Config overwritten." + else + echo "Not overwriting the config." + fi else - echo "Config already exists." + echo "Config already exists. Overwrite not allowed." fi set -xe diff --git a/config/ded/fonts/Overwave.ttf b/config/ded/fonts/Overwave.ttf deleted file mode 100644 index 82602a2c921960376519c473c1edbfc47d35ed32..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61632 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ఉ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 a7-keQz5U<7aARI)1_egmF#j{E@P7l4acb27 diff --git a/config/ded/fonts/VictorMono-Regular.ttf b/config/ded/fonts/VictorMono-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..aadcc88af58bebac86d44904e950cbad103edbf5 GIT binary patch literal 151576 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�*9yP}-) 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 S{H!yBKeH3(KH{k0fBqNgZI(O$ literal 0 HcmV?d00001 diff --git a/config/ded/fonts/iosevka-regular.ttf b/config/ded/fonts/iosevka-regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..bb168999d41df5d0234e9597f85cea77266ee97a GIT binary patch literal 4774196 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�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 z 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 {5I* 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≺GEb5h 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Π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 z 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 UXo)DwV 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≈&yK<{LD5;^6DlfbN9;W7ZwJ^>vzG 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�UcqATUh+m9o5?ttfmM8?fr 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 z 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

ZRU+kEa$Jv(d^<(=5h+yq?{Mf>C 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�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⪙{U$(DRCq2za zwo{FrL6UYIjz@-h+Pp~~PrO2H!hR@cf7^PVQf+@q@smw`Y5%l!o?AYC|Na=yqP=l5 z`uT88Vk;#5J!x&U-?TSNK{?sJRKKR1v^^S1)rbC}Poc7nLFbFcpz@-2q^*;I zk#yaowPwQcwpI3XR2-Eh)7tpHriXrJ?~Dv%gylkKjlaIb{@U1+1^1&L?^NmjzR57p zqR@Lqp>e0#{qs>VRhCTiwXykaLO=8Aj0|IhWxGcHp3^=Psx!OUe5rjV%x33;zh)J~ zpI^Q6YCj0=lTlzf`2B_J?ZqhDy!&@r+zkO=`_sf4;Q7Lut=MnV_AXe}$eYtgmk9nlqK9Yc2Evzn_lk zwl|MQS|9#c%qHpErTcZE9{O52LpwufgRpC^cNM#5_@76a&E{0!w-a`qHCLufQqCSj zvcDva__HTFizL;DN$pF&Pt&dMQ0j9hF%t$SsLgo^^+@YWb2B$7OP>I`{?Rs_q!`f=!2)~`JFI@*)f7<`L zKdCHTYe##fP|j&~f2~`+t;sZL>sC^G+sbzC+r1`D7TU+Qwrt-0wpw3eBG}&2yv#_- z(lem-la_BGo88wWEv`QozHZke&1Q9W?Ih)Ave20QSfOq)Lur1#UDsTU1&u{MwifMr z+Mbs5*S^I|vss;88%g<@EVN(!SfOq)Lur1#U1y585+;FsY^~XtZJf3TZM-J6Hl$02 zzIMHAF0GCEo3uV9wJx=uY`sXzW-|1(xwCN%)XEjD$V`C9|Jv1b?Lek!AB(2S4bWsY*XHtUtHQnTRY-y-I^iT6kv)LH5 zhU-D)yV{XD%TAQEd#r5!e203t#?tEByPj$FbLm%{<6&iA+I5gLyS1^sE2+FpX3&Lf z+W)oiYREuGY~dJH_UA#mY<3?pf8WQ>S6wsHC6jBI{Tn)SFKOhTf$aQG>sNh_@UXsZ z?0ycuZhogy`rpIy=SF(kSo~c4T%}uGXir;9vYCHcKW9@f?EUOQbYag@g<_s6yXESS zO>0!>Ot=F4d#CBv&ZK{~Nw;&&_Kf^Y56>al+p4!YvUy57d+a>1I?GGa#-=&6yd*OT zh2~amtJ~qg+V6(iNSE~YjPx*`%3&-k`)k>3wx?6}cfq~w&y&RorR8DLuTRVQ zWZUw4SkGO|i9K7EqEAc8(uad`EAIsM`IV&NnoNt~`931HK3U>Y+N7CDZ!*4tC+U z3H{8cGtzPlV_BK~+#Hjvp_$CHI2WGs^hM}bvObvWj*^|qya?{Y&$Gs2meU{a>83yb zMf8ut8jtrRx@1~^tgGjRwc(ny@-v^#NY>Z$BCSts$6jHuuId>F>o;Z<^1nR&N%T*^ zJ5yjx%|dOAmFVoJW=X5>j12qfLmW{ATJNUotl*t7+rQ()IazL&ucT~7*uTn_e^_U2 zB*Qvu(-|4YINq}6-cW9KP2P?!l#|H^(0$tKGi@w>+q|BfRsI~mnSS2p@p^Q@eLa=W zV*lJpU_CL?cnrI-1O4X-2a%i&&2LIrm&k!g-dma_b@qm^7PTJJ?`bLaZ(vKvzKS&* z!nxHU+a)P}*xH=Ck5iw@E^2dR%ZZVO->3Cw z(yt43^9iKR=@x9GES|`by^A~y-FL|;rUWTC+he$oMwwymPR?qrs7V6t_k#FL!HqBapDcJr^m8JBPLL5&q#f^!i z?`&_#B+NqAQfG6THm_f&-q4!8GeNP$YZG)mIltqw^atP`V0?MBzEs!N8l*nI2ejw3 z4Dj=D5LKb6z`u(h~HvEH&;bAJ1zU4H*)AL;+U?*GmNr{@-f`mz^+ zp7de7sQod{J{`n<=Y=HCI9bl_Rs{Fq=07t3K7XOj87*zu+1N&4v${iy>*aI<`tYPY zryZGg9erD<``4Lgx$LRNuCe5)?o09W{b}AP_wrD^&TH)f>0Q!D=6fX4=#8#+mB?^D z{c?V8@yqM9Q-6l~wf?2|<(<9WL*+cI5!T8nX9j&3FKT~`wXTCS;%A&gzSC0(bLYO? z>@$b*{J{1MW$wAnRyPLyW%PAf!XD(!iLT%8Cwn28b{&0NsQ;h3&dlpY9(JuR#U_1N z8qBrU$6OEn4ji4GvytI^`sMuG;+NNHr*}j{{Ytl7X0mT5vM0+5z_Xp6?{a&YxDV2H zW&svs7Z(WP>U=-V={c}9(3ADx)1R`B?)yG|opirWx*tn=XZ-mcRdM^SNjt^ssI9a8 zb|$aRjw8(F1k2g)^Sg-xTFvu`_QCIY$_BLR!`6(+Fr`$lCcn?nol2Gv zzY+F;>1)vSdokbWp}H^+{eC_nKS{sd>N+a@w!Uud{oj*lHeX&&|6&`g27XUt%sk{B zVD*w3Ynsoa*q3`)*_ZlVhlbg$&1g)cz__}`o zr+$Z`q@l8S8O%+jbSuktSAz9n*Vd2i>slu^pVGepZAn{Gif^%RLs!|4EB#hbEMeF6 zGfBCSG=E9UtG%3TtfBPt@z-Q$bj7?LEVg1UgzG$;>Q1yTtud{g_HwiN(R_Xhv=3yv z7x;an@$WsBeg){fdjOQ5q|Y+SX{7n5`K8&kHctet-!yFQZJyKCVCbWLC!6-G=4Uf> z)aJ*sK5wGEA)Af!5_EB*WgEBljP-B*N!q$lKZSBiv-@o=hU6@dCFnx!O6ZuCGw1`@RWB*RdtZC?{yAX#+GM!jEvK94M_3NF$E-e-<{!$}62s_d zn?lc?FC&)nl{8ci*WqWet$_D|=K6s|57(GI*XsNhniG?D?#0qM_lSW{N7v92eE*T( zjXFAxLVj&McUv2~=Ki|S^^jfCCtTN7PV=|A_N48<)%0cez_z5;z=@#sn1;;_EFvO_F-}Tc#jkBL`eI&RoV8yS3Ruk%crR~ z%x-OzQ(C@HBzAuc(mxNMO*r29Ii7Yq=~Fxf;XK;hSY9@sQ2JxBIl5!zw{*r%4+8j*U6q4#+{c6tD?x)aE zTR0zu=FR3X&EM+Ulm3{b7aEV*Z7#!kx3$$->BkFW>N?7{1$5?gHn#lz_!iH%eK7D* zU7GEo6hGO1lweQE1R((LhB&;3|`&+9x-4np@) zo$zha3)#=5E~Jp}#rU3)(16ruNFr>1D$C*6E~Ec%z?(pSYs|;SVX_PLK9^E9>sf)W=SKSa~r$wFMSv&2a{oanBU1RkEd_L=D4%c&&kifvvERyKQ4OwecX=N zex1yz=Ntb$VvSSREbJ#NTRVR&+Gpa^a5L!h0hJ3$^Ow~AR2#Lm7-`b>iuG|R{-QgK z1FM&`n4yo#%HQlJ{r&9gY5snFTe?5CwDE-F4bO(omi_Vjx?QhO`q$5|lRdoV?Ui3o z8+|Xpu(B`bP;Z#s{OhO_%ERQuq&y9&`CAPgwfWWDNJ+atne=m)Ug-X&vHE+<&WZ4B2*(tzC&kfx z7wX6Fqb*%Of1_tOou8)Pj;_44W(_?ngmLV8%163iZ*?7&ep_GHx)O{v-isxk+>h?z zsPnNp-zGh8*FF_P6RB%iC`KRZAbSuwHo+mQK<&h-*1g;`1~(W!0#`tiUtW5?@tD6$ z?mmno`zP9It;*NduRV8~4C^&!A8#&N{0-2f#19DPHs7c9oi>M~>Cfgj7*nfwVSRtv z3fUz!M_SuAfaXl+g5nG5hS^N&b7HldoiGDA6C_^=SLVj*&O*NcBopE}I6|2mvL?B9 z@%7X90bdKsM_7E5;doAExq|-1zy#@9&+Va{G_RT~U$?!b_Jwqd?bi>(U(5q?$o_Xu z&wd7ZooBn2I@#pMKFIq$mH3&BHu`(Z@!!n-H8Nb2mV?Q(IVM*8ysEv{1owk%55qOE z7H)?3B(jtKwlCxFMG{|UjP_=BZ<24aZwuA8+QYV=Y!8Pr+|w$DJ}UeB+;oji^PsUm z2>x8$Ls@enyXFEJ&iBbGx4ZYbj#?8w?XG28114X}7 zn^0boL%?e$S#ItnWixA-klmVIy1( znlrrz*;ws!ZQo{fx8ipbT#+yZc|J(Wc4=>AZ2oh&y7UJ*KYy#JK)*` zi*HhSzgXDy_obZ?ZAs;)dDUF`y7q!lTS;9@>2{6%n7+;QIrx%Gd~RNje2DT@DK`0W z_QZbZ*^P;x*=QqMypOpKI>UV8ocvtU=38f*){XYsy|4sidmmf}D?#-SBvQ6cwz0kG zZlf)IXm7^sME(-Iy<5nq)n2x1Y3n$Ys@HhUPcrmTxikfhPxGPcqH+6kavx>QiR=k& zoeL*Y*OC2U_bHRDuDO5x)AaKgM>((#V`*hy>fBfel4du5Jv#}_wWRjT%i$`}`n?IR zg^t?%GfKK)*G}b`z_}Fvu8ZW|G=4|bnKd3Hr{>W7=g-F>=*lm_>f-Mokbhos|B27A zKKRz4{{netPR7p(%At^5^Y9{(e^xkI&kX+kE{U0+E1qXMJFZsu@o-PtH8mO52YWL= zUao0d`>Iu*{(V@wf1g}H`3}$;6?T70q<>#i-1vQ#^%3tC?We&Bim7u#=Z18h5t6}} zvcDyU_-l@MZE_FEehc=umhru|o;V?Oo^4jrmu&5!ID0_*M!MduE(VQPWgCAZdToH} z#oUCnzEp2^^ADx==VS=&dajTy1L|ASP?}%g^Vcq)yV$dm3dQ%Po|Ctgy~6 zdw$v9w9KJZ`MIE8<+DNK@MHSA#s3OEANSBT6JPewwUeK&pUyUwh5XDGURS%mVJv^n zjz_n=+mik`3+YYdE_9!jyZ|PF;_5nH29H8VZDBsP#$?Zc#wuyp*ma$>mh>5g`m+Ai z?n03CDYX6yjWe`QC*DZd1E$}OuJLLPg!?q%|}3O(Bsby526psmGjRr#0x(I$oD5-p}xXCb=@on^_50{ z?3&~7bEnrN_8CY$Ye>Elu1s<{g06Ur;kAjL7T>qo-W-U(P`+uXjpju8Yi{KuX}XPR z9=Y&2f!RycE>0*>%ro0NL6@ZN34z7fbH~mnNuey5fxuu>LN= zF4FpvkJ-&Xlsc<*PKS0ItFD>)wzX#EOwvYsDQxSPH8#U?X;1p?+w%4N!k>L=RsMC$ zJUjIBP8R>uw0)n4u9=YC(6y7UYt|i97VKA4IQdX3*O*w^e{qlI~4ZlC%NBhg_F81Q7 zo&4+?O1JA~{^7N;xR>B7w6|=J*q%{bn`24Mqt=cvT~dAdeTHLKoXKEu{kfCw_tBQF z=blacsPH9sGK$>!|eGdb+){wt6QWOg=>kJ&>A*N*Iz*NLQP8 zLT^BiKRY{&-Y-|qf8IsB@EtkdpS=$&2SfczKNBnm%P*9D@M#3iyS=+hzZGr*U5E1% zc?FWS5a*)jJH=W6cO-fkJ1lElKH)mCvf61Lm5=65b{m_o&moun)Lo8z2zgadwtC5p zUcLM%r+wDi;{Ia!>l*3YT?r2)dSKJF)90P}&q67OwpQ2G<|2&sJKCNA`L$vBC(=Gw zjOWbex-A**7d>Nl^s~P-zi^GsBp&N2{_IcdY&=K?pZD2kdGWI}@7t-L;RRz&n}dS; zSNrP_{VImmT^LK(N7qXBIHx{~fvxACKshls7>GY=AMq?@)~fBcIF>>-rt57VklH zp|WyW4&!Lk9XUObR$hwjwglU>Uq6k(!@-5?%A$5hmi-UT!C={$$VV|E74aV4gdI#^iED z|HhjA6#B(E^5t_WgOy{M_{RQ8`xbFJQLh+27Uv&UE@VEy=0kZ#E0eM$__@b^ov{0D z3+ak!b<(r{`2w=XeR4jTUp&7m>-wrbkQVEBWPA<=YoN=WNk2LxgSxnX-)`q-J2IL< z-eBi!G>kI1n-cCqLNp*p-Y;k;pAPv2`NVz6_7Mo`3Y9fCmZwSi#&*p?2jk@ZlHB7l zXxyD?{}=or8k{5F_T$)vAL}W~hHr0APx^4%X#W^|33Olm5WEf4{xgYu0Qo(TulN|K z{wT<&qv!2(e1+N$OejNEG0yHSaZ9lq%h83(<8qjPevN2-y~0EHIQg5jc4O%W+yzO! zN$O*Jd-JCHWF1HM(+1oV37R9J`H@dD#}Ut|F*A_&=CEs+Uu(a?J}HO$Ic0+Cc}1x?4jSOEL#qtJQaP0 zeOS3rU-|ksa}A&48s3w;jzxEOIau^Rx$9b}ZAa~jqj-v~KH~dN8|$T`aecpNM=sY; z`aXs9s82G^5sCEHVE$QYcvAP0);{iY*sMNj8x3K+Jv|2Da|nLSTyU02#%B;xdMh|1 z|1QrRr~5rU@2A(m={0bA4V+#Br`N#gHE?9zWOleOa0|ByM9JC z;|B26$DPAhpIBE}7Jb>jP5kZgA+D0I5$<}|gRkq|$k=ZpH3NuJkLxR3IUuvo$(R2+ zEH3-E7wWQqjq86E`?~CZQgZGpcTD z2fyd+&-r=|OPq-tO*X%ZeHQZHg>GToQf+cA>&d*{O^CmSFh-TOAbayw&$#{y&$;UO ztImCxuR6YRt?J!HZZ9*DImurmnA_pR90{Y`8T>bQO-I{sIv{1|QZb+Z4R>&}fcaPB?G_wbebS4eN&KfmRie|xg~^d*h8 zB->+1zU0S#&h_VuxYRz!mtW`Uiq6;93)ElZu5owrr53~a%C*$qs%xV~PtK1LM)SMu zkMJ4?rS5!pHebWguZj0c>vdPo&ack?man7u>tx_7`<%YC@8feyXUHq!8M!OFGyeLm z8=HlAvUP4ePZ=mLY@K2D>x}gCd}$o#^EHgJ#<+^F2i#})Qq5g_UGAFrQg2`9{2;UV zYZ&L9&S15XWjHgdd1*bGj$24Ido=qUjR1Kxkxx^4I#)aLIlt%YT?6;UOIan; zSm8CS_c5H1!?`=1@20w1$|K`-Z*7wMAnV!gzPbmV%^Ev9`$typSpNG$nOSU6RvW** z%$2n$7rSE0ReZHRgZwjz>Nft#)A#oEHk!3jWf40UsZcA~FLZBqUvbYxbp+&?`V?`+Km6c4sV7;Ce z`noCk%9WBwMzC4y%DS(P8I`s-X@RLldk5{!U{Nf7`BT z8|;F8a0rg^6Ov_61vM}q_*;5ih}DI+(PH{7rr%;>78A307Bs*jSOzO$Eo_9XuoL#e zLFc*>r|S-Q77hTv(YjkPRKO^h3^QRKEQHNKyAtdrbAj=dECI$>vKrO{J|){>H|&SQ z&Xtxz25O-m=0c-$-K(JvW%CO+5h=&w%$tOI=d>;(MFSHe-}`j!GQ`_6#bFdr7fa#-zLzeRA&x&Bpv zPk-wBFNL+R4fZ=%Q4G~U`wHf%q6yXmxm6r=Za^83%K+waz%p3p+(7aiNSuMh8AzOg z#2G}KLBtu<=v<{(0UKc#9CmJS1#E`xuotimDTNHw0WpWrZU}u0Sq-!ug6|M~hu}LD z-=X*p#kY!Fsu*V#eN>T8)fS+issnJuxnVGzyoZm18G!$A{Lh#T3t=U!haIpF@Xz3% zsfAg9Z)OFMLxvnO2jCblW%Pe0wllZFPB`S;$YQ95dRPceum(24ZaC=NC}NKq1+$D8F#?B@$+CA;6HvNYzNtoIX8j06X zovR^sO%2QhV%IE%wXhkUg+tDrRSwlq55zjF35azTvCdu(J76E+I}zWBlVLV2ft7&Y zM0_UFXRQPBs+|GzU@@$Qjj#(2ICoAd)WA$w1j}IqYy*7Gp|5if!7=A1SHf1<>D&~2 zrfh*7@T_xF*Eu(hoTtrou8uf$%U~s}b#8h&WPpUGA9e2hVyJ*Rm<0{c1go5zu@*MM zR_87t=7rmxyJ)|2FDZ5IV%lF^@7zmg0^@nq8$H1@t?Myk_ln?vnM+T}u6B_|L}o@=Bnu%a1rW2j4lwoO1vuUqRg!)LlXU zS75(lHIVNWy8xfL)X$v>%U}cSb?(YysDp)k`-Xn6BEPF>bJafQt}cZdpv~39yc(aY zR{}X*y#o$9huO^|?mT?vQ9qCRdDPF_3dER4Ue^=@{@39DO8j3r85&^)tb^@9F0VZ1 z+_e=zKG)8LrLYP%!%jHlTm!Khs-YehLKCb9`fH%S2Ku|M5^7-{EQZyv5$NYS`nm3~ zbFV4|{I4hW_0Pgl=jLOZPum+NJNN2kuoBk7Ho)iA^uK`q7t{fLFQ9J04mjvsqXXJC zqBO36b+8F&+qetp>!vE_Zf<}kSPxtI2)Y7@w{R9vw{Vejw_v+v6kxjr+b#ItvIg+K zWjE{x#&GL8*y7x6wSe!UmCoJ1+POQh-$CDZQoeJobBif2ro4C?kjvtIa0re$_nI>2 z?y7`p=U&?ct6-gTOBmnXHLwkK!9F+pRYzOUQl-0R8h^*dp&b4$^e zqAx{%1MS~H`+F*ZKJFpTGICtT_?K;l?XcUqdl~P&lYw^k((c}aaMZas(a(JwfN|cp z1F$z?e>45QnSS3=0gGT69CPliW$>(X_s@dE&ONZ!xwp-PdCslCZv}o2E(daWkQ^S| z>fGCj@%B+L84fx3jt$Pev)s9V$~gCK>fS?)_il6UefYk=&bc*nVLuT61B;#eAbuY_ z;@pRd0sjvX>qEr)&`g*I3t=g&fHgqgA0pm|cELU%&e~$w;M|AF`@{2L3E=->`u;Hf zAKnhT;Q$k z`h1vJ53dGnADs-8Kl-e5k5oew(Do79K0;eu-1-WjZv70H3k!k1)^7rQ9$f>p{}_HB zTLnj)`#7C$sDhnv%(+j@gcU&CPnH4pPZ94^8=c!&4oiWU8&%%r+^1>#>BWHmXJ*4T z=RR8t8=TujPMaEG2j7&-0PQ|U-RJf>_xXCjzIi6BfTPZRVY_pWm%=O{&J*}PLB3na zcgsB30+hc<`HPglxD3`g_au2eNsK3n`=#}O+&ULF1O8iy{S_U+2-7iI@s*oH>-gd z-`wcjx3)U>4CQB*!)n0y8GLpwgrz{5i1WSOu;01evjE@Si}1M2pW=bmc7wg;a*#ND$J7}K5|&OM9I zzc&K*e_!t04~g|da{hmeaW8H6R=_CO>)em#!(yQS{~+d%9qe;%AN*uC9B}TZ07sB_N~zqtyCmnBA)`s@xD zxq6rjn?U7f;Q$!Pkp zU^%RX%`WP;0@k^xWHqdZt*{#o!ciBMmO}>WU@p*a={6Vjz}{n(i+U2bjGW3w!DOKS zGWsuD2upz&y%xKuw*&lpZ-$+)*F}AZRldPRefPm3IOd{$^wp2P`V*&OHY|aaunBg! zXaF$=Ho!&~4H^Zs9Yotfw5{CYqQOlr8d493T{M(Fhi-FG)j=SSVc3VQ2YiQPKZE=- zj3a|BvlVv3exU6L2h@$oKrPh6T)^+lDyV@OE*e=0_>W%ZqA{CcC+r7oywgOy(?nwz z0eO$5zB&V|;i!woHNp`WjbG`a3B;MeT-3~l`LGz8fOa+OU=!?ygFxG}N@1;w&SnnI zrrkv1PFw*8TvWTvMdy?O{hV6?_?$Zn=??Nv>b>( zX&XEX2Y_68w}>X!!aN|y$@DRKBW#78aL7edilG|nVIefZdcbGOJ|NCi;!GvZRD7lq zW9k;z<)UegKz-dR7fr8%H7+`jc;{8XD4_lM_@7U_^EbnG*zKYj^fzOP2cGwO3fxfOL z*Q?7R1N1v@E;PatSPrXUy^F44?62Gm+hI5Chr=$q*1=ZT=_1}Wq6YK^>3iWI9Cguk zr9l3#BLC~j^ZLmy;vFL59U_`v4RtUJ8eDV(dEc8@@wehHT3_Q)j&S4+3cdbmILM2*1!yy4fBBWmZg|HM>z#7=#qBk7%HG18i2g+quqV@+_wYv!4VfVl>y^!!l#K? zP53n7(}YhGK27+%8J{BrI=px=TqPNt*OqdT#VLfbz11@@NDNz4b>fgEu zR>20?2F%IwVyJ@2FdG&^6Rd%qaKuITb3N{#0rOxntblc}1$Mzv7d>}QiqPNrL?K5FMtOWXgJAJ<$pSRQZJMei2KJUQi9mL>WDtZTXD~q8P$Z6$L zSPSH{l6+Q@&&s1NdS^LQLp?OW5}=QFu7|Bae($OT@_W}ZAisB!-@A6f0T=yKDP(}Y z|B3wmX*sNgZSXA6eieDFqK{Sdv1%bS0r6K6f7L!X;-Yt#!6=vk^I$QohK;Zt_QEk2 zy(a^;K%4gx_q|mx85)4x-@5^JyJ$6atMOaC5LUwuIP9YL;r~ARc;6CO2fN{zi~hM5 z=EG{(1_xdAe#Z8G`s4jGdOvmVUkYnsGaPWynsS&4OJD=+cF_llp%(D}Koc;|4{Qb1 z5%Yr%Dq#jN&JV7HEkGUbvC)TS0sVYvBRuP(wfL_khqd&xmY8do139eS2C6^mq7Rot zHPk}`EP*w!3HH0_BMv6RJXi_D{>VN!=Awsa_s}e0z8_iv>s+*s{MX^T4%@obfd9Jf zuon)y=;2bxKpo75MX(As!?Qq6AFYCVSO_a&J#2;DaL`4MIH-gf&0|vOSPpA}e%8~^`lBv-lztwq2l{z*C2Ruvc=Vu)KIVWvK2{5}pb?hAYS;pM z;h2j)o`IP_A0KBNA1D6Dcfx+4j}7He4fQ}j8&(4SY}gG)T=WV0_(Uzt0{Zv_eSBgy zY=rGVKcAqVPiBCAKDh{%!&=x3J7GT@bgQ5QW%evi@TV@*I_k3H+6&pD`p23Q7bVJqx~qb~Y4--4F_HH1?s+#fqJ0b7nZ>~*bWC=^f>j8Q~x;aAD;#DVF|2(Ex>pl zKjfk(ih-P;z~_m@uo|d;g8C;8x@ZgaTPmRz@Y%8y)&se0p`S07LJiCX>b^+(FKzDfVNLI0(m}(&y(9=zl**^{4Z6*Y*+$ofY@K6|1TYK(N^lWj)ED$7`85l z4X_iae~NlO?}(nN=>$#qs_iiseYp%~0=6%&f^{zXN(HO{e74O8#{gK{)E79mLte_;*x89jt(@F8XFUWS|y^`%U70 zvk{2>&E>Ef*28Al4!dE$i@rsiZ#BXe*a6SN0XX8KXBfvbjQ^Qkun!KwF&FJ5*PV=Y zXAR7N*)ZQl-=5{7e}(T*-nAGGx#+v(_+4z@ZGc5UuHP#K>iG;N`ralN?Ix$)s++Q!7dm5d&WgSq`w~$>xcC7!)0&?j=5+r_Pw;(OPjrn;YZBJkM_Fg zKUM-`_%Ze$W8XI!4!YY`tiLoE>R z7aL#)(C079pa$^$V8ArZ^+@$Iv4$R z6&!NW{}j9EcjWQACGf0^4kHh*bkXk_-|xxw_q$y5hxxD?cDm?~Gl5+HxDb{Cwj+z7 z3AO<-ju4m6TB1J@i_cb~Kd*o_unCU1=r3h33s$-4Xa%fu(O;SCzmo5BjV}5dv7aC1 zqU>B(34ESy4#XDV5SIXU%!YWr(vf34uijA(Q zJ8gQdh0Q?Qp7{6L;fl)ZT~Xf#pxh68|0S>-XxD!|;NO2c>~=*J#H`o=+u&I^U-qly?+#2B^|j=G}Zw+qDV^+qRLLO4+ld)E( zjJ25|LH;`QTsL3FdYl(B8^3)R8!*oX^xm)-gEES!Rn!G)ZN%C}%(78N#>V7r+>A*X zn~=ZBD5kL>qc{hJGB)j&vAK^V8qfyTO4?;?L7gq>wPio%W$+t=vDJu-QhJp3fPSUa z+S)}PsJAsaTMuDT#x~?`lajG*HOS+)24g#7x0{u*J@f6*E2E6r%cxt{h&dTMa@=uD z#!kfUG$UhYX4!cVtnIw?n!4q=pmupVs9#Rc@-(PdK8y)uW$eQBuGKPj%fX0@3Tju3 z%h)}EPE5*Jk`MYXA$AFK?NNa~uvclJ23+r1Dr2vusL$^WMiu?`Ny^x_8T8tZ8v9Mj zsHR^v{r9huaey!=>XMt<1lg#W46O9Wz^=N zUB(d{k0=3aM>NVflK3O5WgJz9Ss8WoJ(~QZseKGHA48pEtI#B)J|*Kg?%}u=8ON7_ z^MjC4M# zWL#MwSe-&{Z^zUG%YdU3ITO;GTVvNe@B(8H9^D?e42m9AA%D5qg2^lwb$>?Iv zu1c`iH6`Pw1n74YbKXSW%}H>)r5b}6!36&~Rz7O~ALh7~UVP6nZl&g}skt z8Fv?;6ji84E4nZMp3mLH-Mt{=o*WdS3^iy(J9;pLam>oNSI9##Do~4Nbf6CzOkz$( zpNj&Nq6+nBMHdDzifJs!xGx8VC_@bz(T*MrVH~qE?icbPP+ zw4w_G7{xReWc25t5M`)ABihk}A&g^I#)B5}!JpfM{JA|?hZgYX_8`yuL7w-6Q{d0- zA^zMRN+5}9G=Q29QIqdc#zWM6h?)-zc_;=oAExHR)O?tl4^#7DYVy6xc$k_4#0?NP zP=Q)BqXT`&U=njO_?~6(JX$(h<5Z~2;-QQ@tBZ@ zVpO0O&FDZMGML1ij6oL#C`A?O(TXk%U=-6>knwm93Q>j{G@>0n7{WMaWjrC|p%@jY zMKe0khm4FT=VS~KH^(J(X%O=?F;9=m7%q_U>;M*IJV)&FMd$#r znH&_N3^iy(J9;pLr7^QIUZBB&YSD}i^dTeT#T*$g7MOL68e_~j zM%-8_DnN}fa^7UNH=AU<)d|+#V(slZ8RO-smhnzK7G=DfiyCxeTE=?`85319-fzU5 zj1M?|!0|(lAI{2{ByW=AM;t$zk@0Z~%=>Xx#wX11NgGCFOwspK`g}Sn|Z5N0q)@|W}0b~@pZF| zZ}Vk*mxB^CpcgYTzGwY=X8xXj-%rcV*iq60k`KnCNO#+(ekHyOW-U;@nb%e;(VE#xAB5|pDFb!b8x zI?;yYn3wUJgd}mLbfFJJ7{w%JWi0Rv z7kGvXJi`T^;a@@y3Q&wPRG}7)XhjElFn|okF^xGH{}XahfMS%PO2*$jzrT5YfAjqQ zu0|c2(1uR*Vh|&kzzpVPELzA#0wpL%HR{lWHguvFgEIc%+5N+_`==ZI7{(Z;kj0{m ze|_Ym2m>aW25N`)AfnU^nf<&?}-sJSY!`9m^SCwKK(nFZA{*DR2^ zRvy}Au1$@#`(!43w4wt&7(fQ&n8uvUb%Y!gpcrMSLaoeonRneJDnajc8_L?u#aKnv37Mn8sS7Pg@iy%@v@CNP6}nd@7~MFJ%#M>Xougf?`d z7lRnV1ZFTVa{~*x;Ms4$^V(oR=7uhKUK{1x z24rr+bKHdIxCzg36Q1KHW0*n~i!zIS=Uc^kW!fm_indGB@>+51!#> zJj2a+hMOf&f^t-&4ozr7Cwei65lmnP^D;NLkc$LLP>yQUp$Tm=OL%@IJin4=w4)1s z7{VwfF^dJ6Te!$WAxcq!8q}j1?dU=uhA@gr%*x!7XSZbrD zkij^nF(-2yAqNF0Mj5J5i$=7f13ef(2IH8Dv^@8Ln(SNfQ-ztb};9T37I?b=e!f=JN3!jd0b{Wb;_x;OS8;flUR^hA>^O{ z#h8(~dmZ?{i6uptlDWr#%*sxgdv?g&i}<~$xi@|G=2%6{KE&@^gISsTkzd^-bN>dJ z2Uf_e=|(?>F$U_@WU(moAYbOeF7i-_Qjl{nwGLtS6m#+4O_-^AnTOKj&{0fcR_0;U zJB)gVvtHYdIhjW=+mS^W#E8tJSgRxFX!eik!w|SWh8o9q$*eCxvCQLKQ15u=K7spe zAoj$3WMrO1os%YHp4=$2k^NITWS&aSX_YdYa*>sJ26Hs$p%A60Kn?2AjCPr4aXf43 zu?u||!l=x%du5)(-Z}I-XIy3rbDWz%3Cd-jmxn^Ie?B>_%*Agd<^?sF0{t)YF(b2$ zS{D;{F?BAU#+=Mc`ej~9{G~~m?G~tU8TWX3hs-N_WTv@?G;3Eb#XMKl$-J669qe60 z&b3uCuS;N2<_*koV;ji7k(e6?F@g!qU|wby=Utq4aekA9TqLj{^X6fhw+K04?(S;T zp-JYg^t!bYlQM6cmC5fF=Itq&J#8}Ypbo!3n0Im?cXCg6^~>xX#0VxZBlGSqnfK&@ z8SmlV`L1sE)ycfCLgxMDApQYr_S2_->5-U+h=15ex6A?ZAE}o4Xo1Yf7G*xpeLr4{ zMzn%@d~Y)!A3#Rt6CC+oWG>>kKGz}h`CKGqW|;Sdd{FB};$EW8OL^elUYe0PLi|XR%$Jj(#w%koUmcY>Iw|ut z?(H?!UdJ2E^G3JKG3va@-dp6n-7a%HCG(vUneQ>j#4yNzKOaR%f*S7=^L_(bkVZH9 zF)Z_gF_|AS%cLvwBWC%CnLgosstDZ2XTHqOlc+=r4QN3c-RQ?K#xR8}7G+NR$VU;9 zs6+}4Xh9m?=*KX|Foi4@Wq#o!AEl^9BRWCcm*bcQ&*dwg%U3xl0C8W9fI45z%bcOc zOae);H`9PNnO{@$>k8248)ClA1##b&pd2X>`)v!-=te(=F@`B*u_$xaM?Q*>L?u#a zKnv37Mn8rzhACvRDDyiX`6xmXl}MohEl8sq{TRj=rjW&=%i_t%%8ht&gG$7<}dtt{X(r@t3d2;9DkdU zIo~Mrcm8kV_W_xIq`(^A$IL&+WiC{Mntzp`Pv-y1Fe&qIa{i{)Vm*ler(GuBQ_O$I zWd2u+d0A?awM+@JvWzZSCgzmRwQmEV)Cf7@`S8a=&>qm`RuJWBy06P zS!>M7S~Ex1TE48cb7duJWvxrC_2{)ewKw3nA@z!g-6$(-lWJMTg|hg3YHjAq+ML{y zI$3Rw(V3wRMlIZHQ0S$l9)0*7oG=U|~_#j;!rO+|I+Y%6nz)Lhaq?UC}0M z_fA<$nq=*P%1K#!ai4ov%BrH@KEAAdx!#YM>UvrGr(_*aD(k=!SvABTMEt?jJp`$= ztV5}HSVmSYxwZ4Mj$oc6xju^hqnZ5}@{g^NRbMLWxTLJ(yJa;<)``q{;BF+l7?pJwnbT&5%m*Mr&ogHYV#0V#jJ^ zy~*C&oR3rcojMH3dYAiomm2Rj$a=3r)&x24x61l}c;1_=NlVs8`LaGH?~@!b#}xPb zDRn=amBssyHQg@ji+)-BhGy{^Z++b>>l@a;otE_-HNU6N50kR8bFzNS%KEuT)*R2~ zmj+qCreytw`5sxnv&UVrD@U9wkel)XARt5au<2H6Fi7mUeXvqkn= z%(->~S=kBJ)**h~R@v*NW%K)hy*_hnuqeBTxQ+T`Z#*u$nD|XQWpCCYd-DO=d~dY3 z$jIJuR(5HL?5%}4+1rfD-nK_}lA7BM%HE!uJG99ztCziFrR<%mWbfQ0dzW0YiN?UQ{(Erw+unGbT0qHkT7?4w&`^IBx{_r7+0yX@n7WFODo3H`Dg za3Z-U^~yeZR`w}r*{6=nZfcZ$dbR8`s*sg^W{2$NB<5wGH6;7&HreM?$Zp96`{$0y zKCeOc`COkrBDSgX5)Kw+r2}FDu1_?91C_Uy;P1 z>~s-0URj1|*}PWSR~H~7yQ4|=HHEUTrSElV*`4fPzbN}gX6|CPn~1xae7+ml-M;Kw zIr2TgzHL_a?HSoU|UPJ-NUl)&6C}?)Pn5$UChXSU|x3roa_gQe~9ac z$sL%G{V2U3tCl@DDEsj#*-s{A50%U2b;^F4n$IL;53}|xp5y#^)-oJl;P_&v?3buB zl9l~RvFukXWRIp~zs4M|56FIFME0Bcvfrwd{dSA&ajxH)mi_Lc>hoE{*|twk zl6uKJG=ZG$a?uRxZ$B(&2hPiq=*6I%9f{p>RL)Ms?`(nioqObzQ>UETyHI;q)^=T# z!|x={?lqv+68bO6$l0S1U2-akucYRl9QUNwUOpPZ{p?+VX*pHYs_K)o5B>KUma{MG z`?9_tdHZp_-vqdiYUZeJlf&zivwx?Y1IRldBZuEroCC+@)U;qh&OsaxF2tamL+a(E z%CRWt&?z~G&B{5vT}~})M-<38GDpr)`5?BA*rQoL#s#zUy5rR6$vMtKx18gXApZn< zH}uFku~yDWEpkpSMg_P&xfvbk!xWgiu?$t{1$`RlSzw9+z`Yy_}XD49PjSNzQrfpI?eaIjv)IF6fbSVH;-TTtuyl(sJ4gkwTZ8ixX(U zw46)Gy@Z@gh`ogTOLI|#au9zh^)DsAyTwIs2Cn%DJKfQ*zSHa;_xr$^ki7 zRiaPM)fO5sE~g_2)~+GunpQd2vUe@@uH*VTX6-D&sGRHRcm1548!Ev1jl|tpk4ZUQ z#h`cBf}ERbF(~I|>fTJ;Edsr}YvkOTkBpq#8s*$heO`y1o?1C~Q0tB+jLW%``geBA zxr?>C$hm7mPHzc1<=pLqx$n-(xu+83-&=qYIepB~*Cpq^QcTIYzg^A))Oer;({lQm zwV(9|lc3K-T=Tipd3Zq10DT_G2fZF`lk*t01_k0CXP(FV0${DW0f}Cf`eJ&;E`8*JpVL#J^c{wlCA|vNTdb~I&=Ot!% zX;jWggPfPC_wtmSSD5Ej&R-pu!{2E;qtkL;E5opy*Ar-!^9D1$(TGVoWAq(k@6B=y z$$6^))PB1V-E#Py#u=ZH^G>rIKJPm34#;^g334Xbd!ISqr`HEvaz3QiB)uo+ zF&5>_&dT|&Q_lAZ^vU^wnm@3XCI80;IX_j%`I)^r?&FsnIltzkU(Rpj|283Ko@esA z59sL>clgOa!raXU!h2Du_7ywyW&zUm{w$^TFfevSBD8jR_1!;c|}%f0QFX-Uw*kFtCc9S zdLFo5!$KPt6e*x?0duTbiGD@a%E7QAYZo95_7dbI<`v=Z1taUwYuz42)?2b4n;PYQe?vtbSqLM3@Ne^xf^E{*`x}@@i{$GJfX;@1Bz_MJe$#DvqeSt%pNJ} zQe+Ds%(f*nZkbVJD|(ccVnh)>!$-DGqEC@+azUSMskdz%sL9_`M3T*5mLxITQER&% zMYgB+_SD~@49rqCr^rqvitOA8&db{s*@e2hkh{y$^KncovMaOgO5UzBm{(*s@^`CJ zq{2cWn$V`m?##D)3gqoh-V)B2G$^u1HK@7A1gODxhe#!RdlrE@dk$kvk-f@6?B3Mb zoBh4J!2DIjS1l^C57)d;NA^o7Qk{z_MfkoDIUudbfz+?b2R#ld0rMYB?L&M}>yQr6 zBSl_{^;C}{hvtB|Lz(q3dLK5R$l=sJoczP-d3YUK(20JGfS!lXD^g3{T4HOHs0MpS z?ZiRIw>B#tMID#H7Jg!lVMV*?fx;k`X_s)aU1PAkBmB2C0LjVW?^lOkv2 zqDzr8^T53}v)4?Yvr>wjEp#h#PFj%`_ReLN^LiCIpFXYhzJR$d99HBaju(@E3H2|n zRiwRCk;_^YxtyFUMijX+2eXP?U8YC}HLmGYksJCIxe;B1irhq< zo2hg2oFca@Dsn3|Zl%_3^uN7Mksk8zXjkOUaz*Yc1T)<2Dsm6!_YiY$B_sI8x zMo{N|&L3d^0qXHS7I|FC@tH_HvioC?$2x~7>@0D&vUY${7l>OH#6nUM! zH>fw}f+>OOX$%75R|fldOG|57s|s-jDkg z`J@gLicA%P{V8gET7wxyJ}U>cKOa|Qx=)cW+7$V6QIW3(6q%`0 zTIJg8+gZ8%M(alE<+`C*=n82-4`58x~+jZk+z{cDXsZn2@_H zb@<-oE?0_-+~vv5EyIG`6^7)l*erLYR=Ihda(ORtS0QfII=T7OT&+j$>KxbLSkNMO zO=eyTYgfrlRLET?DR*7+*Bg*qNR9O?;5&bsiJ~rVVikswa+ADXn zak(X~+%4#}C3#yBTRI_k8(;3W<#Lnla<`k3yM3SB9lH4E6REKyeRg7oo#|grpIwOC z6}xd=k&j8ayAR4;LhK$Dn3G#c-92kDFLy6$?Olag{wc-|x%-r0M()0x?^h$YIuB!V z_ivJW0DA{4$USgCZcT&SgP7}}UbzRee(;FgL+a%6`s${re<=Hhv40rz9^S)0@yPWN z1t9K7dLJbW%B^GlXx5J=?ihL=o0414-1XCPk4wuvz6j);z$^_GhUA`DFZU#3cnx$< z?v>lvB=?kZFx#m;a!=#D$;X)7)2VR=HP58SnIm$WIX{aT&m#A1`khmW8M!UgI5&ZD zx#wl&p3hqAoZJg7aJ*<^1Z_4_ZYXmSMFuCaxX8$h}{5q~@JJ?!^zeMhg{JLz*5_4qE}_72Luo9laszh_qNy`0}WDYvf? z3v%yk#iHE%o8>-`iypcC%-i1y)*oz_`w+Dr;`(9sAEy35IR@oELd{3Igz&dBm+;3i4M;VM5VWsk16I z^K(!KVphvTt)i>5wt804HM$fnXjgPi*4JdNwGtp_ZT8nDXKm^wn3>n#XktOpb*Q^; ztD@^QDq6^TVOr7keYAo74Jy%tSw%N226-FSq8T0NLk5$WQ?$rM0ZLJYdbFZT(T%9R zG54}b3FuqQ-lkk{R;1|W7J3yeA#V$=w^&qkOJcTa;-9;vW+`)&(vR2q=+@1OZbR<2 zKJr2Qwo}L|n(S6|y9(4Ox;-_wp9XX7Fs3N)1JSZhMR%;kC?*x%sTxadV)msce=iWN_R*l|{uSV!4xr}&Sw#;dw}#mc zqQ^mliXKeP!A*)DQjJ+fQ!OC=Q1T8d!I+|l*Mnnik)lTse?*U>M;0QZ=uyr?dT zT1Agx@7PjBk0bAR`W?^geAbRORAXMz6FU_>iF-XMt?0=^iZ)XBlmc+gdrb6Hp8IL- zit<}ow28GQa?W7RGsxq8CVFPa|NWN!O_=y?t2*W$Vo{8`!^bR?)7MqBm74dh@8Fx0Hh1 zZu;C>gfT^LV}{!c6zw6mr$^B{xW1G4yXbW{Yj}5iKAzY8?TS9Y zJ@;2D`e0hohsb%jP0>dhF{|jKeTqIt{A0{N$ob>ccp^v9Clla&h}@^@6@8lA;X*W{ z9TSQ^OU-9{6@9J-W0+F(dDfnvRW!r>@V*hvj4Jv9wO$xh^hN5vIIieRRj37VBh-4? z1=lY(VnoqbnDG_rzFL4{4De4+SAf0Ol3@R}jH0j8<8|hEqX8|7j^%>&H<^d`m*`vh z=vVY@YL5%#zeCQud6-o6J?5Jz!JMM+H!J!<8Ho9inI`G`5%oT*$F!m!Q{$6z^eW1C zfanx6ecGewXRV5UPL1gTOey+BqoQAO{go7*p~lzMihjeq-((g2mVUEoMZcrR_j8K= zfNYzhKT_{U_I~P6^yf}R=Ngbv^p{c$D*9`eqQ5mMI-fu@$ork^KWY^HvlugqE|h_s zzv%Tp^8V)D|DIHIu?W42{=@Y@1B(7z0@nWREt7+0EGlNSU_vo7iHu@anPRq& zcEy}rkP}H^QZc>*#G)2@6pM8z=DA2K<`;t+K?TMX3mX)RQzO2hSPthoS;dy6-g1Q? zcX^J>k13Yhq}U47Twz|Z6+0DMshWRcoZ0dQ6kC~|t0X{fzCgd#iZH9#>V1l>Q3lQn z`W0J~ds(Ypv9${^s#qee*gBPpt(%J}#nz*CA+^_M&J9@GU|z8erxhz|RBR(^Z#1ab z#&wEql8>WI# z*dd&!GKw9F!@3kZyj8Knt(rDHFYV??nR>BnnfY@|l9SESgh#EnvGl(^AZ#a=5#I~Ejsy&mknQHXBE z#&XaI^4}!y%?ZWcqV8LRioIQijAG+?Am$y8?{NJNvF}V{PO*1|KE>XvQfvb6S0arm z#XjJEKWMhU5ip?{}@2!gcLF}KzEl}@&`HKBrsMun?V!Yzo8 z4tdKg$TREYStIhCa(R&nc~OqBNqK&SykJ^hyh&b8THdn#@|GKwxBQH}+~!m%LSp;r|cD%O@_M8u_#GR=4D>Q32Kph%F#@%^nQMTdPeTpO?M0XXGWw zOAwPFZ=G6s>yo!_r@Zw_zZ_`0} zn=QrlW)t!@r(X#*wscVma<}B(wkiVarSvOhhOO%{CvTf>dE2tKEj5!q@ z{ZZn_Y%y@TauQy2m6(ISdho- zm$w%&dlOs5{p^#Fw=c8q=OZhxnwbu;zcsaM^pD`?(gVMOv*c^2#pw#cWfbg!TPbY^6JSyu0r1N zNKZfOaJ9At{ z-^(iHUEVD33i8uwc~`c`yNdj)%TX<_gZOKSyRJ%JCvn#kcVj|cS1uaCtT(wJ_9m`x zX8mS*-qL_}Ov>wKj_xiD%DXim^_Z4-TM2qGFYop`kas)%Zl9IcBjlkN6{tlshB1aI zWaZuAqY%X0!7O)VFpULycQVhN9T>o%FYs-7oK6X6&QK zeH`y=z=*v2x##<-e?PPG-r+qkA+Nsxjq)B$%6o{|hvwuxJT7lwQr;so@*Z83H<$}@ z2TSBVPRtYB)03_|-aEXZQqYsn+}=~HKSkZA+A%5b=`u8-4-4|1sR6OiFw1ZXE%Kfv z{<%_l&of8H1?QPo^nl(k5dQ-A@gnOlcFKFH2$k|inCE353-VrJ&R3c7RcgLU%~vPo zjV3|g*K#l~kI&uS>#V;~f)0?wXK!z;0yUt|7;A5qVp`r??eg9(2Iu3Pzr*@Fi}K!O zmiNecZ&cnyy}b8bn5p#B$W3}9Z~mwBi|JE-+#R^C^| zV1}=V`D#Mm3^6mMUV%An*GmQs}}cSo^^RJ$@kn2iAY+Ll%qjvczXA zK`*}Ncv*6?lk$F~{*SpRLls&;pC1P?0_OZlpzcr9{fWJwx^#7e&zvqK`zfVh~v@%3r1gBdbfJqQzv1cXGf;2|Ko}GgN)PdS|F9xwF-|<0Drxw(5GV&u9a#4vCIzdik z3R(GX0wrid8~QMWdHGRtqlG91xzPr6ftV=sM42Z_-carptYgM3sXg+=*ckNkKN^v@}mzbti^?UuhBJ(e4i zpG)nP^5w6Rke^TN8qBh0r~I|)w+^$d$4rIn7gnJi^je?&4eI4@NX~}S@{6dmQHT7E z>AQ)GJQSi76{tfi=(|ZjhB1aIWU(l}*hfB!kVGX?Xg~|n=te(=F@`B*u_%AjTrkh3 zB`8NNTF`|)Fyp49n8Yj=yYn3rE-Ar}dhpd8hxLlfH2iCzq11QVFSy!08joXHCCe6|~x&vyWShZ^~1Jd?61`8%?=BWpXkNP|A*)ZjO6e^>JPKHyjM z%in!W{u1K&9mC(F3&ZmFBxbK(`Fm&N?^7y&-<16Qs8QV~fB$j}$v=SD19>(zLc9Ef z8n7V$;0gJM)XGm$BQ+}jQ0g4U^ER2j%Ux)77{kDZlY&t5&} z$1&e=8O+H)J|ER+!yu-?`UweCfZivxfEiDq#|hMFAisgQ6X|mz^-ih*$CC?CFTb$_ z6Y@_Pk$)=JrxjsTeiON;lXnKkGr4Xalh5zf{#i?p^gKIP{yCN4{9K^}?4O&Fe;zUC zx1$F`7{{#qR^nRoP>c%s7ts5{0{ItN7?s~vh<1>3F)m5Vzmyv7t@1CU<`vw_mBd~} z?$vGbJBYnzMEUuFx-ldF z_5v_>kBeGR>y8A-yQ4w=os07CqSoDw^6x1}3kK!in~!RwLC(Fz^_75}zFthpzmHz` zRiX{Un3sQl5$e#53HcBBCreH`f12~BtFZKZLH;up=)s));WBh#M*g!&a6iv-{v7i^$E?qD zPcKmSg>m^WQuihDM(|3${8w3fjpOTe^4}Ph|0cEGB9`Bf{I}^dPVPI!;QrsG?t8>d zl*@mgoDVqvfS3=-n{1N*QK|foeJskK;`-A(aQ<0F{^#xTzsQmQCBEvGKT{$9YifMM z9N)HpKHn}qpOZf;K1~YtLje0bL`rmh<55pM4G^qDO8QA|} zQht{F?1=my8|D8*|DR^%|2!mru3r8xrSgBRk^ft({CRT!sFeR_KgKaHe<2S^G=Lrp zw#6P!0u4s%wSOg zpBI8i5z0}mz|B(-%~udhfEd022i|}J-m8P4K|#ndUV=FVIRbmjlDC|XA&e?mo*v83 zE6D9vutG|~iWWFusaZi@DJm4KoQnkot4xWvd!hT>OhSRnRP?Xi<%T{ zlt#CLjj6c_^@@otZp4IwO*<9v{u*pHsbKRO1-#b_p$4xh_vC*rgDq3U)14up6-z*q!qw ztnE>*ppuw9>9rU3Mitllu)a^Vf_;TP1^cBGRQniJuzxF<<$xS?DL9a|11A;KRAF4f zK~u;oI2ecYD@fHVIJ8;8VPy&qw-nUoV^+Ztg9?ruQ*acybvTAz$5OLCPXWJG1;^Ja zIH6HNLxX}73o)bMq&WpA4=8A4{ggHZr&cOBEf)!ND`+CFX-L88O<@1@c?D;bgI;Hh zC^)lDK{N5ZF9m0@f7YUcv$>yhTy!XC;nApQ3R;P2 zCFTO^Tri>F!W8BeT-2+nJ=p0sXeTRY@S`^$^4A#0P z72MRL;AYltX;9Ez2-a_%#+-uN#ueO7y*r8&-033=uJ58YzYhg>)BA4bx`(}cnC;$D z1%1N2g8N1l+~1&p_n+W_AqD;9@VijZPwfYr6+A@TL;V<5@NgNj3I^DJgnN2~`*^ef zf|^gXD0s3QBMOGP6+Bg`;OV7O7*_BMd(V*1-#rAwV+x*aQ1BeJ zpUYre!SnQdenLTp^~|Dz7X}o(Sg+tE@<*B!yxgbY73#dYpy0JC1+OO*ypgY9tVqF| z%=T7N!P|`r#_978=kHc3c#oPBDFyF$DEMGn!6fG&O(Cn`<5>k$0>@9s6?{&;&*v0O z_bd2t;%`5miN5MCF3cg*c5X>+;q~N<|1>Y0*193l4liwGDY(~M4X$3#g z>u1(~o(6U2SpTI}!LMZsek)cm?}FaHQ|FI%1%I;lXNQ6Xp3h(O_^T9?3V7`f{;mY| z7e^HQQ>WnH9I*FavqDv2RN*p}m{n-hDl~J@uF&$)uh33l0y7FD9HV^-J=XjIg<-zJ zII%gbFIS{+`Fe%9y%k}P@{0eTCi7Cf*yq%B^7Q=-Hlr@uW*xkg?!%%i^QyTBXF4jwsxkysi7e{cJ;@ZOKm-E8MOC>~Bx*4y6jq z=uyV?j%^Bes#Ul%aXV)e@;V-tPb%Dny1Np$n=q@eVoKreeF~SbzNB5@9yy>#CABN5 zvnR28jw{@&TjAbmg;iBpRJafKx37h)!u_aGJqhaVj{`VAkldP4g$HqcF!3qs9-35m zSfj$jI~3LqC_I9_BNh}M*`n~MDus0}dK4a=2ad<&q6@?vOWv{csVA;}Na1nRI*uC0 z7ot?*2?Yuph(8f0ac?Iv*GY>CPwrLNNK7L+r!ey=)nNV9CWWWb@3a;$Yg4Df)2Vs- zoWe88&e>j9!|~bfndSO7g=vkH5v6y8yy@Xn;dyHW~!>lEHi&wHj6-b-9x0qA*OS|P9P;RBTl z`>Fe2jlzc-(W>y_3WWo?3Lhx~Gd((hjKas-6%OL@afMIN@5yRV|H%b~L*zY`hdvA` ze3}`aCXdhf;WP9euEn&%XNh|*AJl$sR^ju*3NvYiFLWtwS%n`DVnpF5lM1I6 z6@F$RSK;Rg%qyH`Z+b%E7nPV+_+<(U3cu=9IFrPb!mrclR`?BlzAaZcTYyD{-x2>k z`9E|h%+@IUk(xiwDg24GpPBh*?q#k7V+wz%RrssG`ft?zjefte&-+IByM>UbLY2M#OGRzl~Yng!AI0;+xWM({9B#D_4AT z&Nt7+qT(f4#kVX}e5)MHD_+W8X(h%L-?|?3+NKQ5u`Tttol-nGr1*9XV8-p66yJe4 zcA(D=U7$u;9mwCY3bhzhe5Vvf6yG_CUd7AvK+Y}&=umvuT(l|9`%iqg98kZ4n2Hv~ zcP|FHOUPR?h(*QsV1EzlR#sy`@jZ#zvrqB8%E8)R{fh5hh#tkOs8>bqJ|&9p>ngq< zJ*qiY&ntd_rTBpf3@TnzulPaCbI_>b2Xiln(Blw#rKo=>dxufyuxZ5)C-w+m@gqAF zugeAbM-zKYtK!EJ$9qxyxE{ri&nSMvxZ(|yil0Or?>+I8#}sc|Q2bQ#Ps>M<;!VV# z{(o4qAFx>FzyISegb+JBe|L9gc0&jugg7CD5JCtcbdC^0$Pq#ap+g8Egb+H!2_b|K zLVQCAA%xH&gx}MB{jU3ZTr>0ey#Gz#+s@7&?)B^`Mb0JeT;l4Pp`N_+Iuu#jqsaL~ ziZsygf=bjXa$%by7gZ?INdCo{id<5r$fYfcG*u~bS&<@_|A)0J*l*4Ny_)+KxsrX} z4)5;vJJ&G*L!k8l0mta(p8@Rt4CKYKTrma(v zo0#F|c|~sF`nCc^I_edb#5h8WkC1Z;ZV6ixlB`5&2)B$T+j|jEH>1 zydMuMGBJY%MLy|O$d~L-)qokkqUP7dihN@$GF<>- zzpYl}yBy3ZGDDvqDiryVzCYzEGRrJKPbl)sxFWw|B{?g}`HlI08&ib$g~)s**!zRy zAFTaZjsZpf%0s6j3pN_Cpvd3M@%I$w6!~XDhB9TWQY~ZEG8wBC;lJa8jI>4>tH)4_ z0U2vlVOqwT4H%P=PG0(ujJ1kEowdnZyA!=K)~Um+jEou?>t;I$%F& zmJt?!TFEXMnK|G(vkeO}*5@8K$d|EUu8b_93ga?1;>hns#wM(1(=$60)Xb*GrZt$7 zu^G9W$Ive$hx08;WNbu$-N@aY+&xNV6k*Q{khd2(d-upFZj!N2i;R8Q z+b>r}Ng+7jKU2m5X)+Gvn$KvXbP}^N4r-QhFl&dfe+c!cd78%DH;JT7}mBb&{DC78CaDDusj1y`wEu*Rq^D-8b zvm_JaGES_LQO$hS?J`cvM=>}*IRn%`nY>fTtD#;E>!)U+N5*MfpT=CL*Mnni8AfHC zQ37(#Y{I0BvnnwmqplotGR_{5ac;VddS+P4acKRd>Vi-u)1PRY1LGA<2dG!@FYtXjt9<1(6S&>-VV=DU(Pt|aFwTs<$Ng+49qGOmfC zTgJ7-T+8t~YFw8iqqRWBvQkvaxV}!t4Ye}bn$RZWMuECFQs<^-aJ-r8_6+pOxTRdi ztv32(+*SqhJ2>9nDdUbF49K{Xc{+z=@SHI2BJOVT?p8icxF(>0KK2h2K}C+&htew28kb> zmGL4uFA?)H$Cpb%?8|d9UdaJ7zCyiM>Hlgynq>@=`x?2gP0M(lxDjDW#+&0Z-Xiwx zc^U8If_m@F%6PW}Ju=>_kugR+o(aYn>+hGMU&aU2`k)>oV7~vcHcrksIUf$l_^3_B z$JHQ)XNECRf-V`K(Bl*KKFvY9jL(X}{$#U^&kc-YTE-U(GNv+Re3gxS89Y0TZ(?BY zn|T@2wctL!ZIr4Ku0%_y3at>_lyZZW6mmh5dw?3M$HZdHm(^kY`hT-I~T!QR&7Z{3V(%qzNW zI+!c3P0{W86y3g2(H%+@&975*NAh-Jo<%vBQ?y`E(VZt1-KAI2U7Hjw>``<#;&-R^ z9#x7KWr4bTG0R@m+`C=TVtVrIi0)gd=zi4Nk6QaRD_W9?dQ2#~e*wl6Js=;QiXKS* zf#jA7wV?MwU5Xx@4eA|C?L(>*EhDas^+QWg0oD&ILcgMiQ|oZ%KYU!#a*pMbiXKsp zYD_D7B=>hzHi$clnicF-3@dsxf4ifpa}4#5q3^LBidM$Zr|5CS9ybp1kLT}Nm8KXRx5? zb#<6mw6#gmW%O7^&axpzuV;oEIB%m~TaThQwtzY}6=6=%n@1FFuUGVz97S(UN57&x zQ=%PZir&uk?bNuV8?4`1f-yxqYe3JtGEfE9_{}PM_W(u|y@%TO(4#90jcCP;qW6|4 zdS5ZhLEZaHLEUcdr@LLz2dMWzgQ5>I>w_F0;_vWKEy(44CE7Em=);^pnyqLrf0yMp zMlq@AW6bzC>yLBnD^>J~984(sB=bEvtLO^m=r=%Ke+O85N+9>?VT>#KOg?Hs>@%zl zF#kXWx)gnu*k?;X{b!l^xpcH(TG8k0F{JF3pTCt+97b*Hip`s(4zgem1Tdcp$-}RkRaQ#ldqVLAgsOWp#_j}Ct-ms!$ zT)$7<_v!lqasSIkKE@RtZ&CEaa?B{ovnl#9=N~i2M8Be+G%NaPCYbxPc62K`$?@}E zMR|{jeo5~s=KpFKzip8L=&#iMbwts*63~Ao_pp+@--;CdJss5jy#YNSc0NEe$p0fBU5frm zy+6tOlRTb7(S<=p|DICx-)xzxk-5sC%+<1FrZvl4qgW>IFlKtL%(ZOH$Xt6&<~qF~ zE~8WCx(zbd>yR0#muV0m%|L)k5NlS0J#$2+MO|wYlQL~;IIS|>7MWg&%osUw15+{+ z!!mv1gEpCAjm#u9lGI32FO@GdGZ%#*cKvpA%iJIxtZh&V);5@vxnU0KFe)>P`dQS- zYL>ZCvCNG#LChwzGP7r7ZpJnLW@6@WFI#5I+=^aXQ9qaKt*N<<0cP4}Lgu#2wC%ji zJbLEQYdenHb;{h{2KTsqx6B==w?mK2{2UC(+_4bU;TdG^M9)QoG7H*d?o6$n8)WW6 z+%A(ccV(@xSmtij+%1ManfzX5?m^xjT{4TP!*j{pvqk1!1v2+e12YtJUOa;Znfug% z`Sxv+xnB{=Fe0;r8YSeF3}H+rzf+m}x5+$!xC1yINR0!jeIU7|<>;1qPz<$blzDI# z$UTJnIE0w8W|@cPqgdu)MKTZ1lUbfA^N0*^k4FmhIjU1;MU~8>b1*0Km^8G@Jhl+b zTS=YcvN0v|_y(CLaDKv!%&JD2i#cCB4f-u92DMI1M+bUj@=jz{Gj}!fSC3#q=1I)N zyODWv4CJ5OB=Z!ZOJ+?G%4D9(-l^0*Z9wMf?ALNnwUwam8EI(2f9LZu&#aJn7V&3M z>n!H48jTnJ`rXXbY9`<8Z@ylAM<#M*-dQBG zll@L=cd~bPz07-tWOfmI?}E(xn`CxV|ABd#4`s>hX_5Ib9%+;L=(Nn`fy~E>Q7-fG z2AO?DGI>ujpJWc+lgt&=>`#-)v&wv$y=TZBXqNeGBU)uX*Dv#V&Ie0mzCfK9Ip-b8 z9BP-zzr&cX)Pwj}G0fU zwK6(ntxL?hHJFsOUL|T}MTj@3A6<}TmB_Nmvu9+v>9V{6Suw8Tm9-Ve+)^;h z)-|%Wq0Y9P=P?t{1#7!0S=&#@+F?xAjybY+qUNF@Sp}@`Lj11tvUbas#pk=V$DFL9 zG_belq^!M&+q+*@aha@rSl_2p*1q)GcU;zf^eqwEWbL1c5m^URVL{e`8L~>Lc~Fb2 zgSjpXWbqko@fmF$N{_?pWgTvy8hx_L>CO9ubp-22jLJIF#-OaDia@W5T-2dS*3sk~ zLtj3-tz*fnER%Iy7U+L`t*jHuLCgu%sp5Qb8pvBh%o2JmnU!^7gRJUobjv!a0Q5SU z*i%|%)#QShQ_10XE9^s_h5oXB5ghlbkb$WSuo8tB$y{$v>BSJ-0(vJ@?ML zgLPi9tfe`!&ZlleDMn@SxocgRE$gC~tj0=N7gP7*M$E~&q*d0Xxu8}P_j(z*m(9z% zd|K8OXdaPu<+!Y?h`qX7RttI8RLifq z|JEXuVN}*_?B6yctD{BM?U@*sbw`z~J8fiv-ktR1cPNYBpsahS!@pHn_ojn-_pyF| zoh*KPvK}D*fjn6crpbDUd+XsodKP3oJOpANA@`9vS&uR^-~FxLK3U7l!3@iZc`RGj zdv*dXVfep&At zC`KoGWxbaN<{Ya4Iq!2X?+?oQfLb3A^S=OHvc`!UC+@>cG@%W%vOePcqX}6b7l9rV zh3Js=NgArLAnVgAjLQ0~Ox7gplP$77r_Sf}_`FWm7aYH&&zCu%##9!V^(*H8ioCB& zF(d1nX0*$iwo!w5S>ICgI|J1Fu1D7Qc^Hy4!}<(;e<+sqBlUlrlQm17pKV#cFvBln zvVJB0*8y2`6|z=RW95Xb-)d#?z2Ews^Z7n*5B0mhuZ%( z$>w{$y-F!6(Jgz`91LSz_G+E7(=x$v^+MTe1Q?RNW(n9&ug1LWwbD_AG1+SqxAq`L zWv^2JYGvf2TlTsJ=(+Bk?Dd*KZlnP-vW;rggBsCBOvyIeWn0W+XMo-|J#6-!JPgQo zV<5(}(F^+W8E?nhWXH*gQ#(P=M5k=OOLj0KJIQq_TXrV>)*q6+LAUG;$;}#-y%GBx z&&tkbKf7P{rZuuR%L410cgW7EmAwTyTNTO9<+ybY3c%hr=_m(z+mf?wi|jnXz`X43 zus!lKW$#!ld#5_ti@IbN(07*-*}G1I{lZq+yK#TJ(PMY)QI2XX$S!J-&A(yTeBZbC zqV8Tz;9mFcmR&rAG1>df%HDTI_I`7+OVUsSYVS{-{l{e=P>d1T2Uf@~Wj?;w+Xq$2 zKA6~p`#_yTI3CL0VXPfy%RW3;c6pZUBe*_-`HtuWHIFO;GaWf3`zY?~D0&?=4Ej{G z$v(PT_A&Xgk0q|MR5rge+58)aeL{|Go(cA1VitGFUcw&V~+jqH!1sU z{s!lee@?dSa|>kGSIR!G8uhZ5w#Yu8{RV0`aNRKU|BcD!JG*@$vtQIGyOH`APs_fP znoZLRWjd-rEZ@WJD~Y>`K3CPEPxjU9UtNMukk>-~HAN_seQmDn>zY9B zbqlgvnWc45_ObxXvuqgSvacVLeZvH1WZy{No62S1TnBP*9+llr{dQ{KLfu<9-pV!q z?qT0X+->A`G|Rp{10$f$oy^op{kw+1{ynzru6)_|lK+3oWZ%cV-k*kP+1(4WA1s#r zP=V~8LfH=!_eg{6N2f3+ySEgLXa)6_XQKk0VE-{{Kh}Z{*^e_@p8@LkQTs{edNM#0 zsJDVXE4pR(r-AwVt7SjcF8k>=bjf~ZRQAAt>}QF2wqN#h#63sv=f-6}Ux{Ja{Jvxl za(tl%)3RS=j+b&UE1Q2Ww_nbb{Yt6qS8LHId$>pTYt( z?-TMq;rbJLeL~!)0m%KdPxfc&h+#tZ0=aD@{-){uO<{BKNCC z*q_%SEB=-+N@w&&&SPKqjVS|3#huGcKEFk-b3eg)U6X{<{Fo@He&i4a)wfPxikZ za?~Ve6^^UU$XRVx&gyA$)`-bjvrPc|BWW) zY+QkM5W5NIypuRQr<`o+X7|Y1)CT=FoshFx0b0>1XLIW02!@<3vgB-8iCPTE*@~R4 zINxeqPA+wFiQhU6b(od2O+9Ah@Ee!2Ew%Id4@Mb1v8auykK3i9OaoQnlHyU=gfemRA+a&~8L_e_k+*<%dcUlDtIwt-%Iai4ql zVMtCf`Ni#W_7N&EC}&?AS#tKvkyFBY$uOwD|D>D)n2+}$r<9n3$UV3arRcz%oI}bm zAcyxNr>q&Q9a@7~IfpfZ+{2sDCa0WSo`22})aQBU95pScqEF7zt#Xd3m2)idmFyiy z?c;jn9A78rgaSELC2|%U7{#QVB?EF!?2^N8Q_e}8pWKOFIj7`cP)hYzuW;#^qeY-nHai+b-w2JW#)tddspgC+GTMIXBeHX`^mi0ocEh{2Qmh{!L|Q z!K|E{b5V^!Iqe4co3u~Lxn%|ma&B#va~pkc>ygtzy^cOPw{yImx_5B@cl67-vsO-L zv7EbXOv|~uTh2W-a=J=TA?IHD-N*4h*6z>3jGXRSIS&x`AouW4shl2qJRD$5&Lcx| z9?eCMoZd=|$XQO0&i;JN4UymLO8 zkn<^hKjR)hW4=jxO%gLn{O3jJl=DRgdgSo_<$T#IXNoy^&N*Mz%lW!Y&Nns|y`ekXRG+JBJCbI{>A=={lSe~!uds{q9QH6dq#9t-sN zoA|%mF(>CA?(bjv{5vRD<#JcaLlHXVt}4u6LGEg-tu`$;tqXl}R}WAJ*4AKejWW4w z=E_Y^!;svy#^kQuB6l73GBPj$YOPy^dAaM=%Z=Eek5P&#xzP^v$Tg{J<%7QVfLx~$ ztsvj!+#Q$e6@uJY9@vXfGhTsNxe4ke$n)v#a~;r&=b;}%+qfCbwh6VeiO;6*rfC?G%d^kjyj*ThHs<7R(Ip>TJtiUZvdaO5|>z2WoE5EZY;iLlx%b=BI->^5^94*o#5AJEfsr z?jqI~k-w-0U>cREF z^gfs#2eWqYjNC(N!9A8W$vu=BhjxLSL+9ll)*|=tB9wu-%jsQCEdQS49>LlXJ(!Yv zWDdwbazyS?S;)h<+=>RY$UU0g$JBwCV`k+ZOYX5Vaw|*FBlkFg+Q+efdk$M-?`;t*i%Dt2so4Cizh`Vf7 z?&Z|Jd`RvUzO;&C9)U zSnf@oa(NGQ+w-v?_f}@UbwciK^z5L=?QL@Jp!XdOa_=>PY$bC2i^n4_S zY_wup?xPjx$FSU9Vtc8zybM*Ck^5M?+{cN3d|YlHHJ`{r9>{r;m=y+k<@PhX=p zJ0b_<9ZCLC^r%P&HID9)cMOiDPUV2S<5)YM8ho~URn%SFA#X{Wyc65yRddZ}xOZ}e zyi-c$)fCG+wM5=&T%S(P8O(5216t(O#V{oAY~s%eFeC5W0eSp;k9QvRmUhTHpJPLx zybC7eUDze>BJvs=iF?Q`;Oq0g;Z7?gKgfF`is zQHd#ex7W$LBLkgSkas8Rchawues@v(t`>QB+vt~f4>h|oL0%U%?kxoQ_x565-hFv! z1bg>WM$ekagKfI=#cjWvpy-%Zw1%=_41yo0C7)K`jW6RiE5C-0YLdB4uco5RX!dA|+H`@Kuvd^O1Zqf*|V zZSwvam$xt=@9z%ufEoUw=Rb4u{%uFMVro)sl@7&L9Z+nwHpSAaP=_JKcwdOEK8R6F zVpg#=1Ou7KMIlO2iCQ$G6`knCAVx8XS;f{A3}hk~g(yWOYSE}z`n+Q6R4BIYuwsT3 zGnvCC&dpLRhD1y;e@d|=>zS-?P@q^AHm2St3ySd@S1gA*eAdSJ-7293+Kqhh(g#Ck#WV|BIfNL#on<&%)6C}y+_Y6W_e#Q z6#Jl4vGGjM@54Z`kBI$fOtFuf6`SZ&>=WWY#b?YiNsZ4-75kz{u`j`Yo3W`ujA9bA zihU);zUF$GzTb6#;|#e!GS@7%XQ}Zs_wy@ruOx0IdB0Qtk9x)assOQnS1a~!rQ)m9 zph5A~$`oHcPw_Rgk+1k#Qhe=E#WVUagfYd}n^fEw$28^@kESCAa?C-+?Q+E(_Pj>4 zDjw&^ca?a^da4*4*UwaZ17fne72lY>jfu&|X2_{me9QkdE56l);#=n`z6~+k4r5&L z?Ftp&p1d6v6yLEL#4gHKynwx3S`{xWMWy1q%`3hK*L&KE@70Sz#rfV4-?v!tl9=NA z&nkX^U?_edaR;R?dV27hCy8GH0BjwmW~** zk&j}OqZ;*SMmxIEk70~s8uN-@pN<%^k+1j-%yv_a;(V`(-&U;n?cIuZ+KS)J{de(q zy02gH?qS6rTu}UBavsIOmPp5oJ)ihq}( z_>2_)F;INANbz3^6`!k8{I@p6=ergEi@m=~6#utX3EpQCX$@#W2YN7|#2Q?umn*S$ zE((=cXI_bQ`;>^(qgjb)g%Vbd5)S!JObK^PiCCKwiAvNe5mYIWBqsAeHA-wijVwcn zjb^Z*#3ubpY)Y-oi%4!Z$j354Dl-Q?EiGA7MFHeaQ`jn8fKQr#%ro;hU zA6TeFX`sYG8Tjuwt^}VWi9<@2C@WCnP}UB!!95%{r39ZHiE?Tlfg`DP6!(7=vsIKS zaWt_<=YV;SA@|r4%qvlep9W%&&jT^XSD*$BXh9bSK+f^x@Sc+38J{@8 zMh=QV&I#n4K+Xx|oX~+jjDVaI$f+Wyikzw}6rc>`RFP9fP8B&-Js83S$XQIzVsaLf zvp5eWr~)~Q$yrR!VsaJ_U<@-#EFotJIZMb{Le7#RRG<#zEFotJIZMb{GJ+{AC~+b= zCz4a$ro>4@N}N2b#3^G+oXY>sr*W(`lsJQ0XLc)bR;LnmIEVke&L!?Vj^|Nh>8KLt zcPY`p-~0mVU&!$yH1;WRF|%Eohek{&(PX0%#9bzoff|<+e?_el%?+4U;!4)998}_} zOwjvkW^Bm-vDZ@LT8`IEDbbn>a+eukhU?S7|9{-T@dno0^1%Q0H`Xh0Q@#>6mnhL* zr^GGvxphd1+t9(^&!gzg!GaRYnP)l2 z$LRSu^&YRrloEZ^=o?ak?_h~1=b^Cg#M@&^jB-B8@tq5Ar6d{rQX%UvfQ_r^Hv;Xj0sRc|X(p=W!)|A?6qA|1z({uSIA8_2!73qu$)G5-V9>Nz89Hnw9vSz2Ezl znD0>Hj{wt3{8^>MUwKL_etZ!)IRyAQRDOu`L$K@&mi{9eEDak z%de}He|83_cTN_#mve^YpG%!{=jGS8U`qaZx!@j_62Ej#{`nP(cfc!@8t&yG=56QoT{Y%NYj2f5M$iE^JBl4SZCHq&k$iKQoehW3OsR6Oq*2}-H zP<|^lmyvgUsr(!0*TyV2+465L0D0|cXalqIdFtO9lYd*b{0@#C_402g=634cNu4{n z?j*L88h15=SN(^2hq*zfa8%#^wKSO#V2>52xgR zG%x?-bacv}$VHd@PjbNQpBBsiEDa;_C+p>Z&i?1r`=STreOUnFrihIwF@_!naKRYD<=W6-CaIe3X%b)9( zzp_F8Z{+=6BY(a{{vXu-V@Cd;_-k7J0{#E4mH$tZe7;`?|M!1g3RbCCuxhb_)v~al zVD%gYYg8!UGcHKa1Z!)}D_FZj!8+yOJfmO1x>E`wxe5%{q8y{63d|Y>RwHH=*wnO# z6gbp%3lw<03Sz{>I~62q74V@G1a%5R@{{=rQbh_f#}uqTqhNyx1se`4*oYb%8)#Lq z3CB(7n?0alQ~GQ=r(m-N1)FD}1LWmYVN$^s%&=t%rW9<&UM|;LbG;2cx2;!@SE*pT z8U@=^YX|!7FsmScRKbqSvr~bBMa;8^`UT9x=VY+Ukb+$Y6%?|zJMnuk+n!Ad_F}%h zi7zfwuuraneaYLeN0^dUeKKp_bSvzrD0l(J= zC*kCI1vSkIPAf#eg43Dt^f3js^$N~N12JbZ!Zt$7NT(SI5Bub)?N1NGaec_Z`OM14N< z0)9UWZYAcnn1T+jZ)g1uX6P(Za953jyIU39)2*P3UiX$LxUWvZ{T#cq6+BR`;6Zvk zWP@0~8wNdG_mKZE{U2tZ&$!?b)*cyB@Ms0*6!fy*%k^^Bmv4XDpkdeO|0Yzk-*F(4}A~7hJzw0&2ffui#Z`zB;R5xJkil?7v3M z*V`1lL5&d`Jqq5eQ1BLUZ`EO5!Q1SQvNlSMcj)nMx`Ou%3@I3+_Sm?B_p7m>-~;CU zfSmsk$M?oyoLR>E6?{mq4~hRM4_tpteZD^iACogd&IGZal%re0r_}$n38M-=%R!HV zN#ZAa6@1Q2Ur_5ya=$7>DcJuy3oQ!1Nkc8>6iioR8uJSHP8od1-gkovzHd`7!`=_n z`ms^LPaJ3QbG?FJ=n-TDMXkau4NNM`rAKa?!mWwfx=!IX)YxWP;kKoqUmp2+#BJBFaC>@e->qQ@St*q2RA4@q)TBL z=ZCU)DC>ujdw4dOryNISDLg8sup$#P3XdL8cr4eI=?af4R(SlF!V^XmRt+j#T!UGK zOPWC~KBq%Ir^D(BQ0t@;v@1Nh2*V0bsYJiRnlyAOJT(t}3i%ulPow7P)e39rUpuAn zj8=tbvVN8@1p3yoS67Q}%qToN7mc9TIjo;U%(>*8OON_|5OW@TOZmH=-=naB{05E} zaJ+!yg$9`YLSinW_eG-$8%r^$@M7{WUQl>R1LhT8+M%$iPT^(bUPkWac?z#!wkwFg zVpw5wIR+G7N&hP+6kb)J@M`w1?pN3{qVO87uO)_OKzQA(!q!?WC|uU1@Ot8IFhCx^ zcZO}u(nidU*{A{aZ^{9&H?wwgJ;oKbQ=@%A;Vm)rE4+17VMm(6+o^R2eePtI&J2)$ zSF^&qsdW!)UBq|ID7?2;R@DyCWQU0Jw@KrMVMFkOp8LkABQ{( z!e@zlu2JFhnHW|$*sSn{GSL6U4uvmOC>+X0r^1&5aIdeFD||H_oDWm$wQ7a0lmGgJ z!Z(P2V^-lvy}~z%d6U|2aeRy8+Z^8}_U$Q!qoo*9_)ZS`6uz4cdb~^SdzF}0I97}i zh3|9y{-DASxR(#c6#lPS;dl)53O_1TI6>T}?0v@hWE#l%yi4I1tbK{8QiWe-VL{>7 z?0wU!aJpRKx4B^Ldtp-H40HU@qVPxdexm+Q+|O*ULO#pGU+`<0!a3^9k+YIsD~Vk> ztMIofj4I?ia`-!Y^Tf`x{zsd_KXX8hzsf<(0N_zR2P%>7CVI|`wpk9JrJ~94( z$2lbfa)Nm!!*(T;c}k|3Ba`F$MM`c!?uHyU>{K#~URga#Zj^-`irQ)XjI7pj(itS?#z5Uk0`lIgOa-vw=4Hvm@{6dmXO)tB5w}-4`jp%|0J+75O76q?zBah;{R+^pWC`mf^y3+kJRlR)I94M>6k`%y(2Jrj)Fx!-$ecQ{(6cC68gwW5$&{mim>spx$xRIj&2|<7<^X z;XmwGm0&>0#T7~}$wr5gCz5+&i;~qjN}j~rClPznjFKnQsBw0ilIK(@S)Z=td0d}Qe8Ym0 z7j`Ro(VUVO6MG3cmyRiUS+(N#vdz+P9E^vH|{Kwjre7q3- zO7?N=8&~p)QV{=SJ;sz=L9Z3e)L(*OC7;R#_wh9OPq!=ij6nZ^YLNdd{huZ8Ir5$x zRPy&-lLEBO|+-(s$}Gth*2B}ZG8e1~$P9^_WujF{Cl6?11en{R&)cv?k$%$$uKVimCW0+HNGEnk!;=afRabMDh-$#;D zgGzo?qvY3V=vVR^8+A%fvp3xU`h3gvcdbf(Pt6%>{=j|wSfu1nnM%%5^XGgef1y6l zf#e)Bu4Jy?rj(qg)*tNs*`(xO14=GTEBW_=lK)Wi-%h18sMIR$O08O})M^~l>Xll( z96d^{k%2m;))dOnj0vUEt1z$BT5U@4Z<49CTd|JZ&ayB zHinflGQplPrBt*D9Qj_KGW(RW=worTiLtwsa=3QJlya-ksg%b|UYk-e1LVeI=vFF` z1CD+%CY1`v3%KSzAQiSMm84#>N2ydHMwQAOR%-nLr8a0$YD11$)Y^!9-?&t%O~~1V znCwQSHl-e)_o>Z@+nl}4=akB!&K3m%< zQ)h=F3@OEDe=489-Hu~Q?bNE&B5Ew^R;nN$qe|_ZjZUR@NkbE+mD;r)<4P5hTS)KS z0x-|+#O_YtJ#5fpk9nnvN-?L@p5;pIm5vUj_O1iHi}OMJKE&@+18VPE3G((U0Wl@S zlng4hKl=w5=uzsxTBZ2>PaVWe2Q4UdF!c|iUs*1ulsdFisl%F-I=mX}m3Jw1M7dH& z(&tEOA2p%W(c~XP-O6I6j_X$H_+h0^=vS($SE(g2rB2LKs=7d_lZuo&ncBP)q-vPy z)HP@rLM}vs8UzAE7iie?=) zt|P9MKFg@Jj5)67czvHzH`orYee9;i_2L1uYKm{qEWoQGSLdW0U27NZ

n5JKo$ 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

r$IgOl7&LC%!v&h-x9C9u>kDN~~ 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%0D;At%o0Az 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 K1N}Jm_WnQBb%r(o literal 0 HcmV?d00001 diff --git a/config/ded/shaders/fixed.vert b/config/ded/shaders/fixed.vert new file mode 100644 index 00000000..f5b742f4 --- /dev/null +++ b/config/ded/shaders/fixed.vert @@ -0,0 +1,24 @@ +#version 330 core + +uniform vec2 resolution; +uniform float time; + +layout(location = 0) in vec2 position; +layout(location = 1) in vec4 color; +layout(location = 2) in vec2 uv; + +out vec4 out_color; +out vec2 out_uv; + +vec2 simple_project(vec2 point) +{ + // Project the point directly based on the resolution + return (2.0 * point / resolution) - vec2(1.0); +} + +void main() { + // Use the simple projection method without camera transformations + gl_Position = vec4(simple_project(position), 0.0, 1.0); + out_color = color; + out_uv = uv; +} diff --git a/config/ded/shaders/wave.vert b/config/ded/shaders/wave.vert index 09264ab5..f04c5114 100644 --- a/config/ded/shaders/wave.vert +++ b/config/ded/shaders/wave.vert @@ -1,3 +1,40 @@ +//WAWE +/* #version 330 core */ + +/* uniform vec2 resolution; */ +/* uniform float time; */ +/* uniform float camera_scale; */ +/* uniform vec2 camera_pos; */ + +/* layout(location = 0) in vec2 position; */ +/* layout(location = 1) in vec4 color; */ +/* layout(location = 2) in vec2 uv; */ + +/* out vec4 out_color; */ +/* out vec2 out_uv; */ + +/* vec2 camera_project(vec2 point) */ +/* { */ +/* return 2.0 * (point - camera_pos) * camera_scale / resolution; */ +/* } */ + +/* void main() { */ +/* // Apply camera projection first */ +/* vec4 projected_position = vec4(camera_project(position), 0.0, 1.0); */ + +/* // Adding a displacement effect that varies with time in screen space */ +/* projected_position.x += sin(projected_position.y + time) * 0.22; // Horizontal wave */ +/* projected_position.y += cos(projected_position.x + time) * 0.02; // Vertical wave */ + +/* gl_Position = projected_position; */ + +/* out_color = color; */ +/* out_uv = uv; */ +/* } */ + + + +// GUITAR HERO #version 330 core uniform vec2 resolution; @@ -19,11 +56,16 @@ vec2 camera_project(vec2 point) void main() { // Apply camera projection first - vec4 projected_position = vec4(camera_project(position), 0.0, 1.0); + vec2 projected_point = camera_project(position); + + // Apply a static perspective transformation + float perspectiveDepth = -0.45; // Adjust for more or less perspective + float depth = 1.0 / (1.0 - projected_point.y * perspectiveDepth); + + projected_point *= depth; - // Adding a displacement effect that varies with time in screen space - projected_position.x += sin(projected_position.y + time) * 0.22; // Horizontal wave - projected_position.y += cos(projected_position.x + time) * 0.02; // Vertical wave + // Convert back to vec4 + vec4 projected_position = vec4(projected_point, 0.0, 1.0); gl_Position = projected_position; diff --git a/todo.org b/todo.org index 375bbbd1..80a771bd 100644 --- a/todo.org +++ b/todo.org @@ -1,5 +1,6 @@ #+title: Todo +https://google.com * TODO every function defined in the code should be callable @@ -14,21 +15,20 @@ ctrl scroll should scroll more [] splits(maybe) [] 5k should work [] shift + 8 [] -better than vim macros [] ** Modeline show the current EvilMode, file name, info and cool icons ** Minibuffer to get user input for anything and everything popups are for loosers ** Minimap -code minimap based on https://github.com/Ivoah/minimap -or better from scratch +code minimap from scratch ** Lexer syntax highlighting for : | || & && [x] highlight links [x] -different shader per token [] +line under links [] +different vertex and fragment shader per token [] different font per token [] -** Dinamic cursor -adjust syze based on overed glyph [] +** cursor +adjust syze based on overed glyph [x] ** Font changing font more times than the total number of font you have inside =~/.config/ded/fonts= make the text disappear [] From 61e840f5f0bb71f2680be8c54a9c3722c4091a5e Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 22 Dec 2023 17:12:01 +0100 Subject: [PATCH 41/74] dumb smart indentation --- src/editor.c | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++ src/editor.h | 3 ++ src/la.c | 1 - src/main.c | 74 +++++++++++++++++++++++++++++++++++++++++-------- test | 0 todo.org | 9 ++++++ 6 files changed, 152 insertions(+), 13 deletions(-) create mode 100644 test diff --git a/src/editor.c b/src/editor.c index 4e088636..027b5716 100644 --- a/src/editor.c +++ b/src/editor.c @@ -19,6 +19,7 @@ float max_zoom_factor = 10.0; bool showLineNumbers = false; bool isAnimated = true; bool isWave = true; +int indentation = 4; bool highlightCurrentLineNumber = true; bool relativeLineNumbers = false; @@ -1463,6 +1464,8 @@ void editor_search_previous(Editor *e) { + + void editor_move_to_begin(Editor *e) { editor_stop_search(e); @@ -1514,3 +1517,78 @@ void editor_move_paragraph_down(Editor *e) } e->cursor = e->lines.items[row].begin; } + + +/* void editor_kill_line(Editor *e) { */ +/* if (e->searching || e->cursor >= e->data.count) return; */ + +/* // Get the current row and the end of the line */ +/* size_t row = editor_cursor_row(e); */ +/* size_t end_of_line = e->lines.items[row].end; */ + +/* if (end_of_line <= e->cursor) { */ +/* // Cursor is at or beyond the end of the line, nothing to kill */ +/* return; */ +/* } */ + +/* // Calculate the length of text to kill */ +/* size_t length = end_of_line - e->cursor; */ + +/* // Copy to clipboard */ +/* e->clipboard.count = 0; */ +/* sb_append_buf(&e->clipboard, &e->data.items[e->cursor], length); */ +/* sb_append_null(&e->clipboard); */ +/* if (SDL_SetClipboardText(e->clipboard.items) < 0) { */ +/* fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); */ +/* } */ + +/* // Delete the range from the editor */ +/* memmove(&e->data.items[e->cursor], &e->data.items[end_of_line], e->data.count - end_of_line); */ +/* e->data.count -= length; */ + +/* editor_retokenize(e); */ +/* } */ + + + +void editor_kill_line(Editor *e) { + if (e->searching || e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Check if the line is empty or if the cursor is at the end of the line + if (line_begin == line_end || e->cursor == line_end) { + // If the line is empty or the cursor is at the end of the line + // Remove the newline character if it's not the first line + if (row < e->lines.count - 1) { + memmove(&e->data.items[line_begin], &e->data.items[line_end + 1], e->data.count - line_end - 1); + e->data.count -= (line_end - line_begin + 1); + } else if (row > 0 && e->data.items[line_begin - 1] == '\n') { + // If it's the last line, remove the preceding newline character + e->data.count -= 1; + memmove(&e->data.items[line_begin - 1], &e->data.items[line_end], e->data.count - line_end); + } + // Update the lines array to reflect the removed line + // ... (Adjust the lines structure here) + } else { + // If the line is not empty, kill the text from the cursor to the end of the line + size_t length = line_end - e->cursor; + + // Copy the text to be killed to the clipboard + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[e->cursor], length); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // Delete the range from the editor + memmove(&e->data.items[e->cursor], &e->data.items[line_end], e->data.count - line_end); + e->data.count -= length; + } + + editor_retokenize(e); +} + diff --git a/src/editor.h b/src/editor.h index 855a2cca..3ca3d664 100644 --- a/src/editor.h +++ b/src/editor.h @@ -13,6 +13,8 @@ extern bool isAnimated; +extern int indentation; + typedef struct { size_t begin; size_t end; @@ -156,6 +158,7 @@ void editor_start_visual_line_selection(Editor *e); void editor_cut_char_under_cursor(Editor *e); void editor_new_line_down(Editor *editor); void editor_new_line_up(Editor *editor); +void editor_kill_line(Editor *e); extern float zoom_factor; diff --git a/src/la.c b/src/la.c index 2d736c7d..501a1c4c 100644 --- a/src/la.c +++ b/src/la.c @@ -1,5 +1,4 @@ #include "./la.h" - Vec2f vec2f(float x, float y) { return (Vec2f) { diff --git a/src/main.c b/src/main.c index d38fe0ad..717fe481 100644 --- a/src/main.c +++ b/src/main.c @@ -912,6 +912,8 @@ int main(int argc, char **argv) if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "down", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { + editor_new_line_down(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { editor_move_paragraph_down(&editor); } else { editor_move_line_down(&editor); @@ -924,6 +926,8 @@ int main(int argc, char **argv) if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "up", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { + editor_kill_line(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { editor_move_paragraph_up(&editor); } else { editor_move_line_up(&editor); @@ -1135,21 +1139,67 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - case SDLK_RETURN: { - if (editor.searching) { - editor_stop_search_and_mark(&editor); - current_mode = NORMAL; - - } else { - editor_insert_char(&editor, '\n'); - editor.last_stroke = SDL_GetTicks(); - } - } - break; - + /* case SDLK_RETURN: { */ + /* if (editor.searching) { */ + /* editor_stop_search_and_mark(&editor); */ + /* current_mode = NORMAL; */ + /* } else { */ + /* editor_insert_char(&editor, '\n'); */ + /* editor.last_stroke = SDL_GetTicks(); */ + /* } */ + /* } */ + /* break; */ + case SDLK_RETURN: { + if (editor.searching) { + editor_stop_search_and_mark(&editor); + current_mode = NORMAL; + } else { + size_t row = editor_cursor_row(&editor); + size_t line_end = editor.lines.items[row].end; + + editor_insert_char(&editor, '\n'); + size_t line_begin = editor.lines.items[row].begin; + bool inside_braces = false; + + // Check if the line contains an opening brace '{' + for (size_t i = line_begin; i < line_end; ++i) { + char c = editor.data.items[i]; + if (c == '{') { + inside_braces = true; + break; + } + } + + // Insert the same whitespace character + for (size_t i = line_begin; i < line_end; ++i) { + char c = editor.data.items[i]; + if (c == ' ' || c == '\t') { + editor_insert_char(&editor, c); + } else { + break; + } + } + + // If inside braces, perform additional steps + if (inside_braces) { + editor_move_line_up(&editor); + editor_move_to_line_end(&editor); + editor_insert_char(&editor, '\n'); + + // Add indentation + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(&editor, ' '); + } + } + + editor.last_stroke = SDL_GetTicks(); + } + } + break; + case SDLK_f: { if (event.key.keysym.mod & KMOD_CTRL) { editor_start_search(&editor); diff --git a/test b/test new file mode 100644 index 00000000..e69de29b diff --git a/todo.org b/todo.org index 80a771bd..d0ab1799 100644 --- a/todo.org +++ b/todo.org @@ -38,6 +38,15 @@ make the text disappear [] ** Shaders use shaders from =~/.config/ded/shaders= instead [x] ** Editor +Togglable visibility of whitespaces[] +Togglable visibility of new lines[] +Togglable indentation lines[] +ctrl + backspace should delete an entire word [] +different cursor color based on the mode[] +show characters under cursor with the same color as the bg[] +evil join on shift + j [] + + keep a list of opened files to quickly go to the previous or next "buffer" or kill them [] search should not be case sensitive [] From 3d1e78ed1dcc3fa29faeb949ed7bf60fa8523856 Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 22 Dec 2023 17:52:58 +0100 Subject: [PATCH 42/74] editor backward-kill-word --- src/editor.c | 40 ++++++++++++++++++++++++++++++++++++++-- src/editor.h | 1 + src/main.c | 39 ++++++++++++++++++++++++++------------- todo.org | 7 +++---- 4 files changed, 68 insertions(+), 19 deletions(-) diff --git a/src/editor.c b/src/editor.c index 027b5716..51afe1f4 100644 --- a/src/editor.c +++ b/src/editor.c @@ -1570,8 +1570,7 @@ void editor_kill_line(Editor *e) { e->data.count -= 1; memmove(&e->data.items[line_begin - 1], &e->data.items[line_end], e->data.count - line_end); } - // Update the lines array to reflect the removed line - // ... (Adjust the lines structure here) + // ... } else { // If the line is not empty, kill the text from the cursor to the end of the line size_t length = line_end - e->cursor; @@ -1592,3 +1591,40 @@ void editor_kill_line(Editor *e) { editor_retokenize(e); } +void editor_backward_kill_word(Editor *e) { + editor_stop_search(e); + + // Remember the start position of the deletion + size_t start_pos = e->cursor; + + // Move cursor left to the start of the previous word + while (e->cursor > 0 && !isalnum(e->data.items[e->cursor - 1])) { + e->cursor -= 1; + } + while (e->cursor > 0 && isalnum(e->data.items[e->cursor - 1])) { + e->cursor -= 1; + } + + // Remember the end position of the deletion + size_t end_pos = e->cursor; + + // Check if there is anything to delete + if (start_pos > end_pos) { + // Copy the deleted text to clipboard + size_t length = start_pos - end_pos; + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[end_pos], length); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // Perform the deletion + memmove(&e->data.items[end_pos], &e->data.items[start_pos], e->data.count - start_pos); + e->data.count -= length; + } + + editor_retokenize(e); +} + + diff --git a/src/editor.h b/src/editor.h index 3ca3d664..6e0c8939 100644 --- a/src/editor.h +++ b/src/editor.h @@ -159,6 +159,7 @@ void editor_cut_char_under_cursor(Editor *e); void editor_new_line_down(Editor *editor); void editor_new_line_up(Editor *editor); void editor_kill_line(Editor *e); +void editor_backward_kill_word(Editor *e); extern float zoom_factor; diff --git a/src/main.c b/src/main.c index 717fe481..23e42064 100644 --- a/src/main.c +++ b/src/main.c @@ -893,11 +893,19 @@ int main(int argc, char **argv) } break; - case SDLK_BACKSPACE: // yes you can delete in normal mode - editor_backspace(&editor); + case SDLK_BACKSPACE: // yes you can delete in normal mode + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_CTRL) { + editor_backward_kill_word(&editor); + } else { + editor_backspace(&editor); + } break; - case SDLK_h: // Left + case SDLK_h: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { editor_move_word_left(&editor); @@ -907,7 +915,7 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - case SDLK_j: // Down + case SDLK_j: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "down", 50.0f); @@ -960,28 +968,28 @@ int main(int argc, char **argv) case INSERT: switch (event.key.keysym.sym) { - case SDLK_h: // Left + case SDLK_h: if (event.key.keysym.mod & KMOD_CTRL) { editor_move_char_left(&editor); } editor.last_stroke = SDL_GetTicks(); break; - case SDLK_j: // Down + case SDLK_j: if (event.key.keysym.mod & KMOD_CTRL) { editor_move_line_down(&editor); } editor.last_stroke = SDL_GetTicks(); break; - case SDLK_k: // Up + case SDLK_k: if (event.key.keysym.mod & KMOD_CTRL) { editor_move_line_up(&editor); } editor.last_stroke = SDL_GetTicks(); break; - case SDLK_l: // Right + case SDLK_l: if (event.key.keysym.mod & KMOD_CTRL) { editor_move_char_right(&editor); } @@ -993,10 +1001,10 @@ int main(int argc, char **argv) // That is insert the spaces at the beginning of the line. Shift+TAB should // do unindent, that is remove 4 spaces from the beginning of the line. // TODO: customizable indentation style - // - tabs/spaces - // - tab width + // - tabs/spaces [ ] + // - tab width [x] // - etc. - for (size_t i = 0; i < 4; ++i) { + for (size_t i = 0; i < indentation; ++i) { editor_insert_char(&editor, ' '); } } @@ -1135,8 +1143,13 @@ int main(int argc, char **argv) break; case SDLK_BACKSPACE: - editor_backspace(&editor); - editor.last_stroke = SDL_GetTicks(); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + editor.last_stroke = SDL_GetTicks(); + } break; /* case SDLK_RETURN: { */ diff --git a/todo.org b/todo.org index d0ab1799..246f484c 100644 --- a/todo.org +++ b/todo.org @@ -41,18 +41,17 @@ use shaders from =~/.config/ded/shaders= instead [x] Togglable visibility of whitespaces[] Togglable visibility of new lines[] Togglable indentation lines[] -ctrl + backspace should delete an entire word [] different cursor color based on the mode[] show characters under cursor with the same color as the bg[] evil join on shift + j [] - - keep a list of opened files to quickly go to the previous or next "buffer" or kill them [] search should not be case sensitive [] mismatched cut and selection [] -if editor->has_mark make the cursor trasparent [x] support multiple marks not just one [] render wavy or normal line under text for errors or whatever [] most symple emacs style completition (ctrl + n in insert mode)[] use window hight and width dinamicly instead of fixed position when animations are off [] + +if editor->has_mark make the cursor trasparent [x] +ctrl + backspace should delete an entire word [x] From 9e355dfe1949976341c15c8359eec3e32c13fe9b Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 23 Dec 2023 09:21:47 +0100 Subject: [PATCH 43/74] whitespaces --- src/editor.c | 83 +++++++++++++++++++++++++++++++++++++++++++++++----- src/editor.h | 3 +- src/main.c | 8 ++++- todo.org | 3 +- 4 files changed, 86 insertions(+), 11 deletions(-) diff --git a/src/editor.c b/src/editor.c index 51afe1f4..6841e97c 100644 --- a/src/editor.c +++ b/src/editor.c @@ -24,6 +24,7 @@ int indentation = 4; bool highlightCurrentLineNumber = true; bool relativeLineNumbers = false; +bool showWhitespaces = true; @@ -103,6 +104,7 @@ void initialize_themes() { themes[0] = (Theme) { .cursor = hex_to_vec4f(0x80D4FFFF), + .insert_cursor = hex_to_vec4f(0x80D4FFFF), .text = hex_to_vec4f(0xFFFFFFFF), .background = hex_to_vec4f(0x0D0D0DFF), .minibuffer = hex_to_vec4f(0x0A0A0AFF), @@ -146,6 +148,7 @@ void initialize_themes() { // Base2Tone themes[1] = (Theme) { .cursor = hex_to_vec4f(0x4183c4FF), // Link Color + .insert_cursor = hex_to_vec4f(0x4183c4FF), // Link Color .text = hex_to_vec4f(0x111111FF), // Primary Text Color .background = hex_to_vec4f(0x00000026), // Base Background Color .comment = hex_to_vec4f(0x222222FF), // Heading Colors @@ -181,6 +184,7 @@ void initialize_themes() { // Base2Tone Extended Pink & Purple themes[2] = (Theme) { .cursor = hex_to_vec4f(0x912D56FF), + .insert_cursor = hex_to_vec4f(0x912D56FF), .text = hex_to_vec4f(0xEEEDF7FF), .background = hex_to_vec4f(0x1E001380), .comment = hex_to_vec4f(0x554455FF), @@ -217,6 +221,7 @@ void initialize_themes() { // Monokai Expanded themes[3] = (Theme) { .cursor = hex_to_vec4f(0xF8F8F0FF), + .insert_cursor = hex_to_vec4f(0xF8F8F0FF), .text = hex_to_vec4f(0xF8F8F2FF), .background = hex_to_vec4f(0x272822FF), .comment = hex_to_vec4f(0x75715EFF), @@ -252,6 +257,7 @@ void initialize_themes() { // Catppuccin themes[4] = (Theme) { .cursor = hex_to_vec4f(0xf38ba8FF), // Red + .insert_cursor = hex_to_vec4f(0xf38ba8FF), // Red .text = hex_to_vec4f(0xcdd6f4FF), // Text .background = hex_to_vec4f(0x1e1e2eFF), // Base .comment = hex_to_vec4f(0x9399b2FF), // Overlay2 @@ -316,7 +322,7 @@ void editor_backspace(Editor *e) e->search.count -= 1; } } else { - if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete + if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete TODO also check for the beginning of line size_t cursor_pos = e->cursor; @@ -807,7 +813,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } - // Render text { if (isWave){ @@ -826,7 +831,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer if (showLineNumbers) { pos.x += lineNumberWidth; } - + switch (token.kind) { case TOKEN_PREPROC: if (token.text_len >= 7 && token.text[0] == '#') { // Check if it's likely a hex color @@ -1023,6 +1028,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer default: {} } + + free_glyph_atlas_render_line_sized(atlas, sr, token.text, token.text_len, &pos, color); // TODO: the max_line_len should be calculated based on what's visible on the screen right now if (max_line_len < pos.x) max_line_len = pos.x; @@ -1031,6 +1038,68 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } + // WHITESPACES + { + if (showWhitespaces) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; + + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + Vec2f pos = { 0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE }; + + if (showLineNumbers) { + pos.x += lineNumberWidth; + } + + for (size_t j = line.begin; j < line.end; ++j) { + if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { + /* Vec4f whitespaceColor = vec4f(1, 0, 0, 1); // Red color for visibility */ + + Vec4f backgroundColor = themes[currentThemeIndex].background; + Vec4f whitespaceColor; + + // Increase each RGB component by 70%, but not above 1 + whitespaceColor.x = backgroundColor.x + 0.7 * (1 - backgroundColor.x); + whitespaceColor.y = backgroundColor.y + 0.7 * (1 - backgroundColor.y); + whitespaceColor.z = backgroundColor.z + 0.7 * (1 - backgroundColor.z); + + // Clamp values to max 1.0 + whitespaceColor.x = whitespaceColor.x > 1 ? 1 : whitespaceColor.x; + whitespaceColor.y = whitespaceColor.y > 1 ? 1 : whitespaceColor.y; + whitespaceColor.z = whitespaceColor.z > 1 ? 1 : whitespaceColor.z; + + // Keep the alpha value the same + whitespaceColor.w = backgroundColor.w; + + + + + // Measure the actual character width + Vec2f char_pos = pos; + char_pos.x += (j - line.begin) * squareSize; // Starting position for this character + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); + float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; + + Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; + simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); + } + } + } + simple_renderer_flush(sr); + + } + } + + + + + // MODELINE simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); { @@ -1059,12 +1128,9 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer const Uint32 CURSOR_BLINK_THRESHOLD = 500; const Uint32 CURSOR_BLINK_PERIOD = 1000; const Uint32 t = SDL_GetTicks() - editor->last_stroke; - Vec4f CURSOR_COLOR = - themes[currentThemeIndex].cursor; // Default cursor color + Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; float BORDER_THICKNESS = 3.0f; - Vec4f INNER_COLOR = - vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, - 0.3); // Same color but with reduced alpha + Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); sr->verticies_count = 0; @@ -1103,6 +1169,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } break; case INSERT: + CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode // Implement blinking for INSERT mode if (t < CURSOR_BLINK_THRESHOLD || diff --git a/src/editor.h b/src/editor.h index 6e0c8939..95b22908 100644 --- a/src/editor.h +++ b/src/editor.h @@ -43,6 +43,7 @@ extern EvilMode current_mode; typedef struct { Vec4f cursor; + Vec4f insert_cursor; Vec4f text; Vec4f background; Vec4f logic; @@ -167,7 +168,7 @@ extern float min_zoom_factor; extern float max_zoom_factor; extern bool showLineNumbers; extern bool isWave; - +extern bool showWhitespaces; // THEME extern Theme themes[]; diff --git a/src/main.c b/src/main.c index 23e42064..b172b571 100644 --- a/src/main.c +++ b/src/main.c @@ -955,13 +955,19 @@ int main(int argc, char **argv) case SDLK_w: if (event.key.keysym.mod & KMOD_CTRL) { - isWave = !isWave; + showWhitespaces = !showWhitespaces; }else{ editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); editor_move_word_right(&editor); } break; + case SDLK_e: + if (event.key.keysym.mod & KMOD_CTRL) { + isWave = !isWave; + } + break; + // Add additional NORMAL mode keybinds here... } break; diff --git a/todo.org b/todo.org index 246f484c..a565f1f4 100644 --- a/todo.org +++ b/todo.org @@ -41,7 +41,6 @@ use shaders from =~/.config/ded/shaders= instead [x] Togglable visibility of whitespaces[] Togglable visibility of new lines[] Togglable indentation lines[] -different cursor color based on the mode[] show characters under cursor with the same color as the bg[] evil join on shift + j [] keep a list of opened files to quickly @@ -53,5 +52,7 @@ render wavy or normal line under text for errors or whatever [] most symple emacs style completition (ctrl + n in insert mode)[] use window hight and width dinamicly instead of fixed position when animations are off [] + +different cursor color based on the mode[x] if editor->has_mark make the cursor trasparent [x] ctrl + backspace should delete an entire word [x] From 0bdc93f01a8e6db805d0b30736a8d64d25372010 Mon Sep 17 00:00:00 2001 From: laluxx Date: Tue, 26 Dec 2023 23:59:06 +0100 Subject: [PATCH 44/74] Emacs mode and lines --- src/editor.c | 322 ++++++++++++++++++++++++++++++++++++++++++++------- src/editor.h | 9 ++ src/main.c | 239 +++++++++++++++++++++++++++++++------- todo.org | 16 ++- 4 files changed, 500 insertions(+), 86 deletions(-) diff --git a/src/editor.c b/src/editor.c index 6841e97c..04c91edf 100644 --- a/src/editor.c +++ b/src/editor.c @@ -25,6 +25,7 @@ bool highlightCurrentLineNumber = true; bool relativeLineNumbers = false; bool showWhitespaces = true; +bool copiedLine = false; @@ -105,6 +106,7 @@ void initialize_themes() { themes[0] = (Theme) { .cursor = hex_to_vec4f(0x80D4FFFF), .insert_cursor = hex_to_vec4f(0x80D4FFFF), + .emacs_cursor = hex_to_vec4f(0x834EB6FF), .text = hex_to_vec4f(0xFFFFFFFF), .background = hex_to_vec4f(0x0D0D0DFF), .minibuffer = hex_to_vec4f(0x0A0A0AFF), @@ -149,6 +151,7 @@ void initialize_themes() { themes[1] = (Theme) { .cursor = hex_to_vec4f(0x4183c4FF), // Link Color .insert_cursor = hex_to_vec4f(0x4183c4FF), // Link Color + .emacs_cursor = hex_to_vec4f(0x834EB6FF), .text = hex_to_vec4f(0x111111FF), // Primary Text Color .background = hex_to_vec4f(0x00000026), // Base Background Color .comment = hex_to_vec4f(0x222222FF), // Heading Colors @@ -185,6 +188,7 @@ void initialize_themes() { themes[2] = (Theme) { .cursor = hex_to_vec4f(0x912D56FF), .insert_cursor = hex_to_vec4f(0x912D56FF), + .emacs_cursor = hex_to_vec4f(0x834EB6FF), .text = hex_to_vec4f(0xEEEDF7FF), .background = hex_to_vec4f(0x1E001380), .comment = hex_to_vec4f(0x554455FF), @@ -222,6 +226,7 @@ void initialize_themes() { themes[3] = (Theme) { .cursor = hex_to_vec4f(0xF8F8F0FF), .insert_cursor = hex_to_vec4f(0xF8F8F0FF), + .emacs_cursor = hex_to_vec4f(0x834EB6FF), .text = hex_to_vec4f(0xF8F8F2FF), .background = hex_to_vec4f(0x272822FF), .comment = hex_to_vec4f(0x75715EFF), @@ -258,6 +263,7 @@ void initialize_themes() { themes[4] = (Theme) { .cursor = hex_to_vec4f(0xf38ba8FF), // Red .insert_cursor = hex_to_vec4f(0xf38ba8FF), // Red + .emacs_cursor = hex_to_vec4f(0x834EB6FF), .text = hex_to_vec4f(0xcdd6f4FF), // Text .background = hex_to_vec4f(0x1e1e2eFF), // Base .comment = hex_to_vec4f(0x9399b2FF), // Overlay2 @@ -315,16 +321,58 @@ void theme_previous(int *currentThemeIndex) { } // Smart parentheses -void editor_backspace(Editor *e) -{ +/* void editor_backspace(Editor *e) */ +/* { */ +/* if (e->searching) { */ +/* if (e->search.count > 0) { */ +/* e->search.count -= 1; */ +/* } */ +/* } else { */ +/* if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete TODO also check for the beginning of line */ + +/* size_t cursor_pos = e->cursor; */ + +/* if (cursor_pos > e->data.count) { */ +/* cursor_pos = e->data.count; */ +/* } */ + +/* // Determine the characters before and after the cursor */ +/* char char_before_cursor = (cursor_pos > 0) ? e->data.items[cursor_pos - 1] : '\0'; */ +/* char char_after_cursor = (cursor_pos < e->data.count) ? e->data.items[cursor_pos] : '\0'; */ + +/* if ((char_before_cursor == '(' && char_after_cursor == ')') || */ +/* (char_before_cursor == '[' && char_after_cursor == ']') || */ +/* (char_before_cursor == '{' && char_after_cursor == '}') || */ +/* (char_before_cursor == '\'' && char_after_cursor == '\'') || */ +/* (char_before_cursor == '"' && char_after_cursor == '"')) { */ +/* // Delete both characters and move cursor left */ +/* memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos + 1], e->data.count - cursor_pos); */ +/* e->cursor -= 1; */ +/* e->data.count -= 2; */ +/* } else { */ +/* // Delete only the character before the cursor */ +/* memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos], e->data.count - cursor_pos); */ +/* e->cursor -= 1; */ +/* e->data.count -= 1; */ +/* } */ + +/* editor_retokenize(e); */ +/* } */ +/* } */ + + +void editor_backspace(Editor *e) { + // If in search mode, reduce the search query length if (e->searching) { if (e->search.count > 0) { e->search.count -= 1; } } else { - if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete TODO also check for the beginning of line + // Check if the cursor is at the beginning or at the beginning of a line + if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete size_t cursor_pos = e->cursor; + size_t row = editor_cursor_row(e); if (cursor_pos > e->data.count) { cursor_pos = e->data.count; @@ -334,15 +382,39 @@ void editor_backspace(Editor *e) char char_before_cursor = (cursor_pos > 0) ? e->data.items[cursor_pos - 1] : '\0'; char char_after_cursor = (cursor_pos < e->data.count) ? e->data.items[cursor_pos] : '\0'; + // Smart parentheses: delete both characters if they match if ((char_before_cursor == '(' && char_after_cursor == ')') || (char_before_cursor == '[' && char_after_cursor == ']') || (char_before_cursor == '{' && char_after_cursor == '}') || (char_before_cursor == '\'' && char_after_cursor == '\'') || (char_before_cursor == '"' && char_after_cursor == '"')) { - // Delete both characters and move cursor left memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos + 1], e->data.count - cursor_pos); e->cursor -= 1; e->data.count -= 2; + } else if (editor_is_line_empty(e, row)) { + if (row > 0) { + // If it's not the first line, delete the newline character from the previous line + size_t newline_pos = e->lines.items[row - 1].end; // Position of newline character + memmove(&e->data.items[newline_pos], &e->data.items[newline_pos + 1], e->data.count - newline_pos - 1); + e->cursor = newline_pos; // Move cursor to the end of the previous line + e->data.count -= 1; + } else if (e->lines.count > 1) { + // If it's the first line but there are more lines, delete the newline character at the end of this line + size_t newline_pos = e->lines.items[row].end; // Position of newline character + memmove(&e->data.items[newline_pos], &e->data.items[newline_pos + 1], e->data.count - newline_pos - 1); + e->data.count -= 1; + // Cursor stays at the beginning of the next line (which is now the first line) + } + // Handle completely empty line + // Logic to delete the line or move cursor to the previous line + } else if (editor_is_line_whitespaced(e, row)) { + // If the line is only whitespaces + size_t line_begin = e->lines.items[row].begin; + size_t delete_length = (cursor_pos - line_begin >= indentation) ? indentation : cursor_pos - line_begin; + + memmove(&e->data.items[cursor_pos - delete_length], &e->data.items[cursor_pos], e->data.count - cursor_pos); + e->cursor -= delete_length; + e->data.count -= delete_length; } else { // Delete only the character before the cursor memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos], e->data.count - cursor_pos); @@ -350,10 +422,14 @@ void editor_backspace(Editor *e) e->data.count -= 1; } + // Retokenize the editor content editor_retokenize(e); } } + + + void editor_delete(Editor *e) { if (e->searching) return; @@ -1168,8 +1244,37 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer CURSOR_COLOR); } break; + case EMACS: { + float cursor_width; + CURSOR_COLOR = themes[currentThemeIndex].emacs_cursor; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + // Measure the width of a default character ' ' + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } + + // Implement blinking for EMACS mode + if (t < CURSOR_BLINK_THRESHOLD || + (t / CURSOR_BLINK_PERIOD) % 2 != 0) { + simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } + } break; + + case INSERT: - CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; + CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode // Implement blinking for INSERT mode if (t < CURSOR_BLINK_THRESHOLD || @@ -1333,6 +1438,7 @@ void editor_clipboard_copy(Editor *e) fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); } } + copiedLine = false; } void editor_clipboard_paste(Editor *e) @@ -1347,7 +1453,6 @@ void editor_clipboard_paste(Editor *e) SDL_free(text); } -// ADDED void editor_cut_char_under_cursor(Editor *e) { if (e->searching) return; @@ -1403,9 +1508,6 @@ void editor_start_visual_line_selection(Editor *e) { e->cursor = current_line.end; } - - - void editor_update_selection(Editor *e, bool shift) { if (e->searching) return; @@ -1585,39 +1687,6 @@ void editor_move_paragraph_down(Editor *e) e->cursor = e->lines.items[row].begin; } - -/* void editor_kill_line(Editor *e) { */ -/* if (e->searching || e->cursor >= e->data.count) return; */ - -/* // Get the current row and the end of the line */ -/* size_t row = editor_cursor_row(e); */ -/* size_t end_of_line = e->lines.items[row].end; */ - -/* if (end_of_line <= e->cursor) { */ -/* // Cursor is at or beyond the end of the line, nothing to kill */ -/* return; */ -/* } */ - -/* // Calculate the length of text to kill */ -/* size_t length = end_of_line - e->cursor; */ - -/* // Copy to clipboard */ -/* e->clipboard.count = 0; */ -/* sb_append_buf(&e->clipboard, &e->data.items[e->cursor], length); */ -/* sb_append_null(&e->clipboard); */ -/* if (SDL_SetClipboardText(e->clipboard.items) < 0) { */ -/* fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); */ -/* } */ - -/* // Delete the range from the editor */ -/* memmove(&e->data.items[e->cursor], &e->data.items[end_of_line], e->data.count - end_of_line); */ -/* e->data.count -= length; */ - -/* editor_retokenize(e); */ -/* } */ - - - void editor_kill_line(Editor *e) { if (e->searching || e->cursor >= e->data.count) return; @@ -1694,4 +1763,173 @@ void editor_backward_kill_word(Editor *e) { editor_retokenize(e); } +// TODO when there is a {} dont add the space +void editor_join_lines(Editor *e) { + size_t row = editor_cursor_row(e); + if (row >= e->lines.count - 1) return; // Exit if on the last line + + // Get the current line and the next line + size_t current_line_end = e->lines.items[row].end; + size_t next_line_begin = e->lines.items[row + 1].begin; + size_t next_line_end = e->lines.items[row + 1].end; + + + // Check if the current line is empty or only has whitespaces + bool only_whitespaces = true; + for (size_t i = e->lines.items[row].begin; i < current_line_end; ++i) { + if (!isspace(e->data.items[i])) { + only_whitespaces = false; + break; + } + } + + if (only_whitespaces) { + // Current line is empty or has only whitespaces, delete the line + size_t length_to_move = e->data.count - current_line_end; + memmove(&e->data.items[e->lines.items[row].begin], + &e->data.items[next_line_begin], + length_to_move); + e->data.count -= (next_line_begin - e->lines.items[row].begin); + editor_retokenize(e); + return; + } + + // Check if the current line ends in a newline character + if (e->data.items[current_line_end] == '\n') { + // Skip leading spaces on the next line + while (next_line_begin < next_line_end && + isspace(e->data.items[next_line_begin])) { + next_line_begin++; + } + + // Calculate the length to move in memmove + size_t length_to_move = e->data.count - next_line_begin; + + // Move the data from the next line start to the current line end + memmove(&e->data.items[current_line_end + 1], + &e->data.items[next_line_begin], + length_to_move); + + // Adjust the total count of characters in the buffer + e->data.count -= (next_line_begin - current_line_end - 1); + + // Insert a single space to separate the lines + e->data.items[current_line_end] = ' '; + } + + editor_retokenize(e); +} + + +bool editor_is_line_empty(Editor *e, size_t row) { + if (row >= e->lines.count) return true; // Non-existent lines are considered empty + + return e->lines.items[row].begin == e->lines.items[row].end; +} + +bool editor_is_line_whitespaced(Editor *e, size_t row) { + if (row >= e->lines.count) return false; + + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + for (size_t i = line_begin; i < line_end; ++i) { + if (!isspace(e->data.items[i])) { + return false; + } + } + return true; +} + + + +void editor_yank_line(Editor* editor) { + size_t start = editor->cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + size_t end = start; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + if (start < end) { + editor->clipboard.count = 0; + sb_append_buf(&editor->clipboard, &editor->data.items[start], end - start); + sb_append_null(&editor->clipboard); + + if (SDL_SetClipboardText(editor->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + } + copiedLine = true; +} + +void editor_paste_line_after(Editor* editor) { + if (!copiedLine) { + return; // Do nothing if no line has been copied + } + + char *text = SDL_GetClipboardText(); + if (!text) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + return; + } + + size_t text_len = strlen(text); + if (text_len > 0) { + editor_move_line_down(editor); // Move to the start of the next line + + // Insert the text from the clipboard + editor_insert_buf(editor, text, text_len); + + // Insert a newline after pasting if the text doesn't end with one + if (text[text_len - 1] != '\n') { + editor_insert_buf(editor, "\n", 1); + } + + editor_move_line_up(editor); // Move back to the original line + } else { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + SDL_free(text); +} + +void editor_paste_line_before(Editor* editor) { + if (!copiedLine) { + return; // Do nothing if no line has been copied + } + + char *text = SDL_GetClipboardText(); + if (!text) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + return; + } + + size_t text_len = strlen(text); + if (text_len > 0) { + // Move cursor to the start of the current line + size_t start = editor->cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + editor->cursor = start; + + // Insert the text from the clipboard + editor_insert_buf(editor, text, text_len); + + // Optionally, insert a newline after pasting if the text doesn't end with one + if (text[text_len - 1] != '\n') { + editor_insert_buf(editor, "\n", 1); + } + } else { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + editor_move_line_up(editor); // like this the cursor behave like vim HACK TODO + SDL_free(text); +} + + diff --git a/src/editor.h b/src/editor.h index 95b22908..ea599d7c 100644 --- a/src/editor.h +++ b/src/editor.h @@ -33,6 +33,7 @@ typedef struct { } Tokens; typedef enum { + EMACS, NORMAL, INSERT, VISUAL, @@ -44,6 +45,7 @@ extern EvilMode current_mode; typedef struct { Vec4f cursor; Vec4f insert_cursor; + Vec4f emacs_cursor; Vec4f text; Vec4f background; Vec4f logic; @@ -161,6 +163,12 @@ void editor_new_line_down(Editor *editor); void editor_new_line_up(Editor *editor); void editor_kill_line(Editor *e); void editor_backward_kill_word(Editor *e); +void editor_join_lines(Editor *e); +bool editor_is_line_empty(Editor *e, size_t row); +bool editor_is_line_whitespaced(Editor *e, size_t row); +void editor_yank_line(Editor *editor); +void editor_paste_line_after(Editor *editor); +void editor_paste_line_before(Editor* editor); extern float zoom_factor; @@ -169,6 +177,7 @@ extern float max_zoom_factor; extern bool showLineNumbers; extern bool isWave; extern bool showWhitespaces; +extern bool copiedLine; // THEME extern Theme themes[]; diff --git a/src/main.c b/src/main.c index b172b571..106ab6f2 100644 --- a/src/main.c +++ b/src/main.c @@ -563,8 +563,171 @@ int main(int argc, char **argv) } } else { switch (current_mode) { + case EMACS: + // TODO add all keybinds + switch (event.key.keysym.sym) { + + case SDLK_BACKSPACE: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + editor.last_stroke = SDL_GetTicks(); + } + break; + + + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + isAnimated = !isAnimated; // Toggle the state + } + } + break; + + + case SDLK_TAB: { + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(&editor, ' '); + } + editor.last_stroke = SDL_GetTicks(); + } + break; + + case SDLK_r: + if (event.key.keysym.mod & KMOD_CTRL) { + file_browser = true; + } + break; + + case SDLK_n: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_search_previous(&editor); + } else if(editor.has_mark){ + editor_search_next(&editor); + } + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_line_down(&editor); + editor.last_stroke = SDL_GetTicks(); + } + } break; + + case SDLK_p: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_v: + if (SDL_GetModState() & KMOD_CTRL){ + editor_clipboard_paste(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_b: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_left(&editor); + } else { + editor_move_word_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_RETURN: { + if (editor.searching) { + editor_stop_search_and_mark(&editor); + current_mode = NORMAL; + } else { + size_t row = editor_cursor_row(&editor); + size_t line_end = editor.lines.items[row].end; + + editor_insert_char(&editor, '\n'); + size_t line_begin = editor.lines.items[row].begin; + bool inside_braces = false; + + // Check if the line contains an opening brace '{' + for (size_t i = line_begin; i < line_end; ++i) { + char c = editor.data.items[i]; + if (c == '{') { + inside_braces = true; + break; + } + } + + // Insert the same whitespace character + for (size_t i = line_begin; i < line_end; ++i) { + char c = editor.data.items[i]; + if (c == ' ' || c == '\t') { + editor_insert_char(&editor, c); + } else { + break; + } + } + + // If inside braces, perform additional steps + if (inside_braces) { + editor_move_line_up(&editor); + editor_move_to_line_end(&editor); + editor_insert_char(&editor, '\n'); + + // Add indentation + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(&editor, ' '); + } + } + + editor.last_stroke = SDL_GetTicks(); + } + } + break; + + + case SDLK_EQUALS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_next(¤tThemeIndex); + printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor -= 1.0f; + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } + } + } break; + + case SDLK_MINUS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_previous(¤tThemeIndex); + printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor += 1.0f; + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } + } + } break; + + case SDLK_f: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_s: { + if (event.key.keysym.mod & KMOD_CTRL) { + editor_start_search(&editor); + } + }} + break; + case NORMAL: - switch (event.key.keysym.sym) { + switch (event.key.keysym.sym) { SDL_Event tmpEvent; // Declare once at the beginning of the switch block /* case SDLK_RETURN: { */ @@ -598,7 +761,7 @@ int main(int argc, char **argv) } } break; - + case SDLK_ESCAPE: { editor_clear_mark(&editor); editor_stop_search(&editor); @@ -662,7 +825,7 @@ int main(int argc, char **argv) // - tabs/spaces // - tab width // - etc. - for (size_t i = 0; i < 4; ++i) { + for (size_t i = 0; i < indentation; ++i) { editor_insert_char(&editor, ' '); } } @@ -688,38 +851,28 @@ int main(int argc, char **argv) } break; - // TODO the else should probably be in a function - // like editor_clipboard_copy() - case SDLK_y: - if (editor.selection) { - editor_clipboard_copy(&editor); - } else { - size_t start = editor.cursor; - while (start > 0 && - editor.data.items[start - 1] != '\n') { - start--; - } - - size_t end = start; - while (end < editor.data.count && - editor.data.items[end] != '\n') { - end++; - } - - if (start < end) { - editor.clipboard.count = 0; - sb_append_buf(&editor.clipboard, - &editor.data.items[start], end - start); - sb_append_null(&editor.clipboard); - - if (SDL_SetClipboardText(editor.clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", - SDL_GetError()); + case SDLK_y: + if (editor.selection) { + editor_clipboard_copy(&editor); + } else { + editor_yank_line(&editor); } - } + break; + + case SDLK_p: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } else if (copiedLine) { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_paste_line_before(&editor); + } else { + editor_paste_line_after(&editor); + } + } else { + editor_clipboard_paste(&editor); } break; - + case SDLK_g: { if (SDL_GetModState() & KMOD_SHIFT) { editor_move_to_end(&editor); @@ -752,17 +905,12 @@ int main(int argc, char **argv) } } break; - case SDLK_p: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_line_up(&editor); - } else { - editor_clipboard_paste(&editor); - } - break; - case SDLK_b: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (SDL_GetModState() & KMOD_CTRL){ editor_move_char_left(&editor); + } else { + editor_move_word_left(&editor); } break; @@ -839,6 +987,13 @@ int main(int argc, char **argv) } break; + case SDLK_4: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_move_to_line_end(&editor); + } + } break; + + case SDLK_a: editor.last_stroke = SDL_GetTicks(); if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held @@ -921,6 +1076,8 @@ int main(int argc, char **argv) move_camera(&sr, "down", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { editor_new_line_down(&editor); + } else if (event.key.keysym.mod & KMOD_SHIFT) { + editor_join_lines(&editor); } else if (event.key.keysym.mod & KMOD_ALT) { editor_move_paragraph_down(&editor); } else { @@ -1447,7 +1604,7 @@ int main(int argc, char **argv) case SDL_TEXTINPUT: if (file_browser) { // Once we have incremental search in the file browser this may become useful - } else if (current_mode == INSERT) { // Process text input only in INSERT mode + } else if (current_mode == INSERT || current_mode == EMACS) { // Process text input const char *text = event.text.text; size_t text_len = strlen(text); for (size_t i = 0; i < text_len; ++i) { diff --git a/todo.org b/todo.org index a565f1f4..23187b82 100644 --- a/todo.org +++ b/todo.org @@ -37,12 +37,18 @@ make the text disappear [] (bad when going up) [] ** Shaders use shaders from =~/.config/ded/shaders= instead [x] +** Renderer +render circles (for whitespaces) [] ** Editor -Togglable visibility of whitespaces[] +a theme should be able to define how much lighter of the bg +whitespaces indicators are in % (currently hardcoded to 70%)[] +yasnippet [] +Replace mode [] +Replace character mode [] +Pipe selection to unix command [] Togglable visibility of new lines[] Togglable indentation lines[] -show characters under cursor with the same color as the bg[] -evil join on shift + j [] +show character under cursor with the same color as the bg[] keep a list of opened files to quickly go to the previous or next "buffer" or kill them [] search should not be case sensitive [] @@ -53,6 +59,10 @@ most symple emacs style completition (ctrl + n in insert mode)[] use window hight and width dinamicly instead of fixed position when animations are off [] +when copying with y do it like vim[x] +evil join on shift + j [x] +Emacs mode [x] +Togglable visibility of whitespaces[x] different cursor color based on the mode[x] if editor->has_mark make the cursor trasparent [x] ctrl + backspace should delete an entire word [x] From f2f2b4c6b5ef80f2e0a1b9514b45b3b25d8e89ac Mon Sep 17 00:00:00 2001 From: laluxx Date: Thu, 4 Jan 2024 13:52:09 +0100 Subject: [PATCH 45/74] Matching parenthesis --- config/ded/shaders/cursor.frag | 28 ++++ src/editor.c | 255 +++++++++++++++++++++++++-------- src/editor.h | 7 +- src/main.c | 28 ++-- src/simple_renderer.c | 3 +- src/simple_renderer.h | 2 +- test | 0 todo.org | 4 +- 8 files changed, 254 insertions(+), 73 deletions(-) create mode 100644 config/ded/shaders/cursor.frag delete mode 100644 test diff --git a/config/ded/shaders/cursor.frag b/config/ded/shaders/cursor.frag new file mode 100644 index 00000000..e80ffbd8 --- /dev/null +++ b/config/ded/shaders/cursor.frag @@ -0,0 +1,28 @@ +// GRADIENT +#version 330 core + +in vec2 fragTexCoord; // Texture coordinate, if you're using textures +uniform float time; // Uniform variable for time +uniform vec2 cursorPos; // Cursor position in screen coordinates +uniform vec2 resolution; // Screen resolution + +out vec4 color; + +void main() { + // Calculate normalized coordinates + vec2 uv = fragTexCoord / resolution; + + // Create a dynamic gradient based on time + vec3 gradient = 0.5 + 0.9 * cos(time + uv.xyx + vec3(0, 2, 4)); + + // Create a glow effect + float dist = distance(uv, cursorPos / resolution); + float glow = exp(20.0 * dist); + + // Combine the gradient and glow + vec3 finalColor = gradient * glow; + + // Output the color + color = vec4(finalColor, 0.7); // Fully opaque +} + diff --git a/src/editor.c b/src/editor.c index 04c91edf..7e185d66 100644 --- a/src/editor.c +++ b/src/editor.c @@ -16,16 +16,18 @@ EvilMode current_mode = NORMAL; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; float max_zoom_factor = 10.0; -bool showLineNumbers = false; + bool isAnimated = true; -bool isWave = true; +bool isWave = false; int indentation = 4; +bool showLineNumbers = false; bool highlightCurrentLineNumber = true; bool relativeLineNumbers = false; bool showWhitespaces = true; bool copiedLine = false; +bool matchParenthesis = true; //TODO segfault and highlight size @@ -144,6 +146,7 @@ void initialize_themes() { .logic_and = hex_to_vec4f(0x80D4FFFF), .pointer = hex_to_vec4f(0xCCD6F5FF), .multiplication = hex_to_vec4f(0x80D4FFFF), + .matching_parenthesis = hex_to_vec4f(0x1A1A1AFF), }; @@ -182,6 +185,7 @@ void initialize_themes() { .close_square = hex_to_vec4f(0x4183c4FF), // Link Color .current_line_number = hex_to_vec4f(0x3ca555FF), // List Bullet Color .array_content = hex_to_vec4f(0xdddDDDFF), // Various Elements Border Color + .matching_parenthesis = hex_to_vec4f(0x999999FF), // Button Active Border Color }; // Base2Tone Extended Pink & Purple @@ -220,6 +224,7 @@ void initialize_themes() { .current_line_number = hex_to_vec4f(0xB34688FF), .array_content = hex_to_vec4f(0xD49FD4FF), .link = hex_to_vec4f(0x89b4faFF), // Blue + .matching_parenthesis = hex_to_vec4f(0xD2146BFF), }; // Monokai Expanded @@ -257,6 +262,7 @@ void initialize_themes() { .current_line_number = hex_to_vec4f(0x66D9EFFF), .array_content = hex_to_vec4f(0x3E3D32FF), .link = hex_to_vec4f(0x89b4faFF), // Blue + .matching_parenthesis = hex_to_vec4f(0x49483EFF), }; // Catppuccin @@ -301,6 +307,7 @@ void initialize_themes() { .logic_and = hex_to_vec4f(0xa6e3a1FF), // Green .pointer = hex_to_vec4f(0xf5c2e7FF), // Pink .multiplication = hex_to_vec4f(0xFAB387FF), // Peach + .matching_parenthesis = hex_to_vec4f(0xf5c2e7FF), // Pink }; } @@ -843,9 +850,9 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render line numbers if (showLineNumbers) { - if (isWave){ + if (isWave) { simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); - }else{ + } else { simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); } @@ -889,11 +896,55 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + // Render matching parenthesis + { + if (current_mode == NORMAL || current_mode == EMACS) { + if (matchParenthesis) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + ssize_t matching_pos = find_matching_parenthesis(editor, editor->cursor); + if (matching_pos != -1) { + size_t matching_row = editor_row_from_pos(editor, matching_pos); + + Vec2f match_pos_screen = vec2fs(0.0f); // Initialize to zero + match_pos_screen.y = -((float)matching_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + + Line line = editor->lines.items[matching_row]; + if (matching_pos >= line.begin && matching_pos < line.end) { + // Measure the position up to the matching character + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + line.begin, matching_pos - line.begin, &match_pos_screen); + + // Measure the width of the actual character at the matching position + Vec2f char_end_pos = match_pos_screen; + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + matching_pos, 1, &char_end_pos); + float char_width = char_end_pos.x - match_pos_screen.x; + + // Adjust for line numbers if displayed + if (showLineNumbers) { + match_pos_screen.x += lineNumberWidth; + } + + // Define the size of the highlight rectangle to match character size + Vec2f rect_size = vec2f(char_width, FREE_GLYPH_FONT_SIZE); + + simple_renderer_solid_rect(sr, match_pos_screen, rect_size, themes[currentThemeIndex].matching_parenthesis); + } + } + } + simple_renderer_flush(sr); + } + } + + // Render text { - if (isWave){ - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); - }else{ + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_EPICNESS); + } else { simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); } for (size_t i = 0; i < editor->tokens.count; ++i) { @@ -1113,63 +1164,60 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + // WHITESPACES { - if (showWhitespaces) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - - float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; - - for (size_t i = 0; i < editor->lines.count; ++i) { - Line line = editor->lines.items[i]; - Vec2f pos = { 0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE }; - - if (showLineNumbers) { - pos.x += lineNumberWidth; - } - - for (size_t j = line.begin; j < line.end; ++j) { - if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { - /* Vec4f whitespaceColor = vec4f(1, 0, 0, 1); // Red color for visibility */ - - Vec4f backgroundColor = themes[currentThemeIndex].background; - Vec4f whitespaceColor; - - // Increase each RGB component by 70%, but not above 1 - whitespaceColor.x = backgroundColor.x + 0.7 * (1 - backgroundColor.x); - whitespaceColor.y = backgroundColor.y + 0.7 * (1 - backgroundColor.y); - whitespaceColor.z = backgroundColor.z + 0.7 * (1 - backgroundColor.z); - - // Clamp values to max 1.0 - whitespaceColor.x = whitespaceColor.x > 1 ? 1 : whitespaceColor.x; - whitespaceColor.y = whitespaceColor.y > 1 ? 1 : whitespaceColor.y; - whitespaceColor.z = whitespaceColor.z > 1 ? 1 : whitespaceColor.z; - - // Keep the alpha value the same - whitespaceColor.w = backgroundColor.w; - - - + if (showWhitespaces) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } - // Measure the actual character width - Vec2f char_pos = pos; - char_pos.x += (j - line.begin) * squareSize; // Starting position for this character - free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); - float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; - - Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; - simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); + float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; + + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + Vec2f pos = { 0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE }; + + if (showLineNumbers) { + pos.x += lineNumberWidth; + } + + for (size_t j = line.begin; j < line.end; ++j) { + if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { + /* Vec4f whitespaceColor = vec4f(1, 0, 0, 1); // Red color for visibility */ + + Vec4f backgroundColor = themes[currentThemeIndex].background; + Vec4f whitespaceColor; + + // Increase each RGB component by 70%, but not above 1 + whitespaceColor.x = backgroundColor.x + 0.7 * (1 - backgroundColor.x); + whitespaceColor.y = backgroundColor.y + 0.7 * (1 - backgroundColor.y); + whitespaceColor.z = backgroundColor.z + 0.7 * (1 - backgroundColor.z); + + // Clamp values to max 1.0 + whitespaceColor.x = whitespaceColor.x > 1 ? 1 : whitespaceColor.x; + whitespaceColor.y = whitespaceColor.y > 1 ? 1 : whitespaceColor.y; + whitespaceColor.z = whitespaceColor.z > 1 ? 1 : whitespaceColor.z; + + // Keep the alpha value the same + whitespaceColor.w = backgroundColor.w; + + // Measure the actual character width + Vec2f char_pos = pos; + char_pos.x += (j - line.begin) * squareSize; // Starting position for this character + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); + float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; + + Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; + simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); + } + } } - } + simple_renderer_flush(sr); } - simple_renderer_flush(sr); - - } } @@ -1897,6 +1945,7 @@ void editor_paste_line_after(Editor* editor) { SDL_free(text); } +// BUG void editor_paste_line_before(Editor* editor) { if (!copiedLine) { return; // Do nothing if no line has been copied @@ -1933,3 +1982,93 @@ void editor_paste_line_before(Editor* editor) { +ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos) { + // Ensure the cursor position is within the valid range + if (cursor_pos >= editor->data.count) return -1; + if (matchParenthesis){ + char current_char = editor->data.items[cursor_pos]; + char matching_char; + int direction; + + // Check if the character at cursor is a parenthesis + switch (current_char) { + case '(': matching_char = ')'; direction = 1; break; + case ')': matching_char = '('; direction = -1; break; + case '[': matching_char = ']'; direction = 1; break; + case ']': matching_char = '['; direction = -1; break; + case '{': matching_char = '}'; direction = 1; break; + case '}': matching_char = '{'; direction = -1; break; + default: return -1; // Not on a parenthesis character + } + + int balance = 1; + size_t pos = cursor_pos; + + while ((direction > 0 && pos < editor->data.count - 1) || (direction < 0 && pos > 0)) { + pos += direction; + + if (editor->data.items[pos] == current_char) { + balance++; + } else if (editor->data.items[pos] == matching_char) { + balance--; + if (balance == 0) { + return pos; // Found the matching parenthesis + } + } + } + return -1; // No matching parenthesis found + } +} + +size_t editor_row_from_pos(const Editor *e, size_t pos) { + assert(e->lines.count > 0); + for (size_t row = 0; row < e->lines.count; ++row) { + Line line = e->lines.items[row]; + if (line.begin <= pos && pos <= line.end) { + return row; + } + } + return e->lines.count - 1; +} + +/* void editor_jump_to_matching_parenthesis(Editor *editor) { */ +/* if (editor->cursor >= editor->data.count) return; */ + +/* ssize_t matching_pos = find_matching_parenthesis(editor, editor->cursor); */ +/* if (matching_pos != -1) { */ +/* // Move the cursor to the matching parenthesis */ +/* editor->cursor = matching_pos; */ +/* } */ +/* } */ + +void editor_jump_to_matching_parenthesis(Editor *editor) { + if (editor->cursor >= editor->data.count) return; + + char current_char = editor->data.items[editor->cursor]; + ssize_t matching_pos = -1; + + // Check if the current cursor position is a parenthesis + if (strchr("()[]{}", current_char)) { + matching_pos = find_matching_parenthesis(editor, editor->cursor); + } else { + // If not, search for a parenthesis on the current line + size_t row = editor_cursor_row(editor); + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + + for (size_t pos = line_begin; pos < line_end; ++pos) { + current_char = editor->data.items[pos]; + if (strchr("()[]{}", current_char)) { + matching_pos = find_matching_parenthesis(editor, pos); + if (matching_pos != -1) { + break; + } + } + } + } + + // Move the cursor to the matching parenthesis + if (matching_pos != -1) { + editor->cursor = matching_pos; + } +} diff --git a/src/editor.h b/src/editor.h index ea599d7c..5b7e0850 100644 --- a/src/editor.h +++ b/src/editor.h @@ -85,6 +85,7 @@ typedef struct { Vec4f pointer; Vec4f modeline; Vec4f minibuffer; + Vec4f matching_parenthesis; } Theme; @@ -103,9 +104,8 @@ typedef struct { size_t select_begin; size_t cursor; - /* EvilMode mode; // TODO */ bool has_mark; // Indicates if there's a marked search result. - size_t mark_start; // Start of marked search result. + size_t mark_start; // Start of marked search result. TODO support multiple marks size_t mark_end; // End of marked search result. @@ -169,6 +169,9 @@ bool editor_is_line_whitespaced(Editor *e, size_t row); void editor_yank_line(Editor *editor); void editor_paste_line_after(Editor *editor); void editor_paste_line_before(Editor* editor); +ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); +size_t editor_row_from_pos(const Editor *e, size_t pos); +void editor_jump_to_matching_parenthesis(Editor *editor); extern float zoom_factor; diff --git a/src/main.c b/src/main.c index 106ab6f2..8685022c 100644 --- a/src/main.c +++ b/src/main.c @@ -762,14 +762,22 @@ int main(int argc, char **argv) } break; - case SDLK_ESCAPE: { - editor_clear_mark(&editor); - editor_stop_search(&editor); - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - } + case SDLK_ESCAPE: { + editor_clear_mark(&editor); + editor_stop_search(&editor); + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + } break; + case SDLK_5: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_jump_to_matching_parenthesis(&editor); + } + } + break; + + case SDLK_o: if (SDL_GetModState() & KMOD_SHIFT) { editor_new_line_up(&editor); @@ -858,8 +866,8 @@ int main(int argc, char **argv) editor_yank_line(&editor); } break; - - case SDLK_p: + + case SDLK_p: if (SDL_GetModState() & KMOD_CTRL){ editor_move_line_up(&editor); } else if (copiedLine) { @@ -921,9 +929,9 @@ int main(int argc, char **argv) break; case SDLK_s: { - current_mode = INSERT; if (event.key.keysym.mod & KMOD_CTRL) { - editor_start_search(&editor); + editor_start_search(&editor); + current_mode = INSERT; } } break; @@ -1122,6 +1130,8 @@ int main(int argc, char **argv) case SDLK_e: if (event.key.keysym.mod & KMOD_CTRL) { isWave = !isWave; + /* current_mode = EMACS; */ + /* editor.last_stroke = SDL_GetTicks(); */ } break; diff --git a/src/simple_renderer.c b/src/simple_renderer.c index f9a1caa4..ae9eabaf 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -10,7 +10,7 @@ #include -// hardocded +// hardcoded /* #define vert_shader_file_path "./shaders/simple.vert" */ /* static_assert(COUNT_SIMPLE_SHADERS == 5, "The amount of fragment shaders has changed"); */ @@ -45,6 +45,7 @@ void initialize_shader_paths() { set_shader_path(frag_shader_file_paths[SHADER_FOR_TEXT], "simple_text.frag"); set_shader_path(frag_shader_file_paths[SHADER_FOR_EPICNESS], "simple_epic.frag"); set_shader_path(frag_shader_file_paths[SHADER_FOR_GLOW], "simple_glow.frag"); + set_shader_path(frag_shader_file_paths[SHADER_FOR_CURSOR], "cursor.frag"); } // Call initialize_shader_paths() early in your program. diff --git a/src/simple_renderer.h b/src/simple_renderer.h index 53ff2878..2ad2a05d 100644 --- a/src/simple_renderer.h +++ b/src/simple_renderer.h @@ -41,7 +41,7 @@ typedef enum { SHADER_FOR_TEXT, SHADER_FOR_GLOW, SHADER_FOR_EPICNESS, - SHADER_FOR_ERIC, + SHADER_FOR_CURSOR, VERTEX_SHADER_SIMPLE, VERTEX_SHADER_FIXED, VERTEX_SHADER_WAVE, diff --git a/test b/test deleted file mode 100644 index e69de29b..00000000 diff --git a/todo.org b/todo.org index 23187b82..7a7f8702 100644 --- a/todo.org +++ b/todo.org @@ -1,7 +1,5 @@ #+title: Todo -https://google.com - * TODO every function defined in the code should be callable while the app is running holy c emacs style M-x [] @@ -15,6 +13,7 @@ ctrl scroll should scroll more [] splits(maybe) [] 5k should work [] shift + 8 [] +shift + 5 [x] ** Modeline show the current EvilMode, file name, info and cool icons ** Minibuffer @@ -40,6 +39,7 @@ use shaders from =~/.config/ded/shaders= instead [x] ** Renderer render circles (for whitespaces) [] ** Editor +Fringe[] a theme should be able to define how much lighter of the bg whitespaces indicators are in % (currently hardcoded to 70%)[] yasnippet [] From 9adaf3116e1ec26694739fa4400f656303888737 Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 6 Jan 2024 19:39:25 +0100 Subject: [PATCH 46/74] Yasnippet --- build.sh | 2 +- config/ded/snippets/for | 3 + src/editor.c | 351 ++++++++++++++++++++++++---------------- src/editor.h | 3 + src/main.c | 101 ++++-------- src/yasnippet.c | 181 +++++++++++++++++++++ src/yasnippet.h | 31 ++++ todo.org | 10 +- 8 files changed, 471 insertions(+), 211 deletions(-) create mode 100644 config/ded/snippets/for create mode 100644 src/yasnippet.c create mode 100644 src/yasnippet.h diff --git a/build.sh b/build.sh index 71ec33b9..55285498 100755 --- a/build.sh +++ b/build.sh @@ -27,7 +27,7 @@ PKGS="sdl2 glew freetype2" CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -D_DEFAULT_SOURCE" LIBS=-lm # SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c" -SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c" +SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/yasnippet.c" if [ `uname` = "Darwin" ]; then CFLAGS+=" -framework OpenGL" diff --git a/config/ded/snippets/for b/config/ded/snippets/for new file mode 100644 index 00000000..ca4ef6e3 --- /dev/null +++ b/config/ded/snippets/for @@ -0,0 +1,3 @@ +for (int i = 0; i < $1; i++) { + $0 +} diff --git a/src/editor.c b/src/editor.c index 7e185d66..8774aeca 100644 --- a/src/editor.c +++ b/src/editor.c @@ -78,7 +78,7 @@ bool extractWordUnderCursor(Editor *editor, char *word) { // TODO void move_camera(Simple_Renderer *sr, const char* direction, float amount) { - if(sr == NULL) return; // check if the SimpleRenderer pointer is valid + if(sr == NULL) return; // Check the direction and adjust the camera position accordingly. if(strcmp(direction, "up") == 0) { @@ -101,7 +101,7 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { int currentThemeIndex = 0; -Theme themes[5]; +Theme themes[6]; void initialize_themes() { @@ -152,40 +152,40 @@ void initialize_themes() { // Base2Tone themes[1] = (Theme) { - .cursor = hex_to_vec4f(0x4183c4FF), // Link Color - .insert_cursor = hex_to_vec4f(0x4183c4FF), // Link Color + .cursor = hex_to_vec4f(0x4183c4FF), + .insert_cursor = hex_to_vec4f(0x4183c4FF), .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0x111111FF), // Primary Text Color - .background = hex_to_vec4f(0x00000026), // Base Background Color - .comment = hex_to_vec4f(0x222222FF), // Heading Colors - .hashtag = hex_to_vec4f(0x3ca555FF), // List Bullet Color - .logic = hex_to_vec4f(0x06f06fFF), // Button Focus Box Shadow - .string = hex_to_vec4f(0xc0c0c0FF), // Fieldset Border Color - .selection = hex_to_vec4f(0x999999FF), // Button Active Border Color - .search = hex_to_vec4f(0xcccCCCFF), // Various Elements Border Color - .todo = hex_to_vec4f(0xf8f8f8FF), // Pre Background Color - .line_numbers = hex_to_vec4f(0x9399b2FF), // As per example - .fixme = hex_to_vec4f(0xf7f7f7FF), // Blockquote Background - .note = hex_to_vec4f(0x666666FF), // Blockquote Text Color - .bug = hex_to_vec4f(0x4183c4FF), // Link Color - .not_equals = hex_to_vec4f(0x06f06fFF), // Button Focus Box Shadow - .exclamation = hex_to_vec4f(0x666666FF), // Blockquote Text Color - .equals = hex_to_vec4f(0x3ca555FF), // List Bullet Color - .equals_equals = hex_to_vec4f(0x3ca555FF), // List Bullet Color - .greater_than = hex_to_vec4f(0x06f06fFF), // Button Focus Box Shadow - .less_than = hex_to_vec4f(0x4183c4FF), // Link Color - .marks = hex_to_vec4f(0x06f06fFF), // Button Focus Box Shadow - .fb_selection = hex_to_vec4f(0xdddDDDFF), // Various Elements Border Color - .plus = hex_to_vec4f(0x3ca555FF), // List Bullet Color - .minus = hex_to_vec4f(0x4183c4FF), // Link Color - .truee = hex_to_vec4f(0x3ca555FF), // List Bullet Color - .falsee = hex_to_vec4f(0x4183c4FF), // Link Color - .arrow = hex_to_vec4f(0x666666FF), // Blockquote Text Color - .open_square = hex_to_vec4f(0x4183c4FF), // Link Color - .close_square = hex_to_vec4f(0x4183c4FF), // Link Color - .current_line_number = hex_to_vec4f(0x3ca555FF), // List Bullet Color - .array_content = hex_to_vec4f(0xdddDDDFF), // Various Elements Border Color - .matching_parenthesis = hex_to_vec4f(0x999999FF), // Button Active Border Color + .text = hex_to_vec4f(0x111111FF), + .background = hex_to_vec4f(0x00000026), + .comment = hex_to_vec4f(0x222222FF), + .hashtag = hex_to_vec4f(0x3ca555FF), + .logic = hex_to_vec4f(0x06f06fFF), + .string = hex_to_vec4f(0xc0c0c0FF), + .selection = hex_to_vec4f(0x999999FF), + .search = hex_to_vec4f(0xcccCCCFF), + .todo = hex_to_vec4f(0xf8f8f8FF), + .line_numbers = hex_to_vec4f(0x9399b2FF), + .fixme = hex_to_vec4f(0xf7f7f7FF), + .note = hex_to_vec4f(0x666666FF), + .bug = hex_to_vec4f(0x4183c4FF), + .not_equals = hex_to_vec4f(0x06f06fFF), + .exclamation = hex_to_vec4f(0x666666FF), + .equals = hex_to_vec4f(0x3ca555FF), + .equals_equals = hex_to_vec4f(0x3ca555FF), + .greater_than = hex_to_vec4f(0x06f06fFF), + .less_than = hex_to_vec4f(0x4183c4FF), + .marks = hex_to_vec4f(0x06f06fFF), + .fb_selection = hex_to_vec4f(0xdddDDDFF), + .plus = hex_to_vec4f(0x3ca555FF), + .minus = hex_to_vec4f(0x4183c4FF), + .truee = hex_to_vec4f(0x3ca555FF), + .falsee = hex_to_vec4f(0x4183c4FF), + .arrow = hex_to_vec4f(0x666666FF), + .open_square = hex_to_vec4f(0x4183c4FF), + .close_square = hex_to_vec4f(0x4183c4FF), + .current_line_number = hex_to_vec4f(0x3ca555FF), + .array_content = hex_to_vec4f(0xdddDDDFF), + .matching_parenthesis = hex_to_vec4f(0x999999FF), }; // Base2Tone Extended Pink & Purple @@ -266,48 +266,93 @@ void initialize_themes() { }; // Catppuccin - themes[4] = (Theme) { - .cursor = hex_to_vec4f(0xf38ba8FF), // Red - .insert_cursor = hex_to_vec4f(0xf38ba8FF), // Red + themes[4] = (Theme){ + .cursor = hex_to_vec4f(0xf38ba8FF), + .insert_cursor = hex_to_vec4f(0xf38ba8FF), .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0xcdd6f4FF), // Text - .background = hex_to_vec4f(0x1e1e2eFF), // Base - .comment = hex_to_vec4f(0x9399b2FF), // Overlay2 - .hashtag = hex_to_vec4f(0x89b4faFF), // Blue - .logic = hex_to_vec4f(0xCBA6F7FF), // Peach - .string = hex_to_vec4f(0xf9e2afFF), // Yellow - .selection = hex_to_vec4f(0xf5c2e7FF), // Pink - .search = hex_to_vec4f(0xf2cdcdFF), // Flamingo - .todo = hex_to_vec4f(0xf2cdcdFF), // Flamingo - .line_numbers = hex_to_vec4f(0x9399b2FF), // Overlay2 - .fixme = hex_to_vec4f(0xf2cdcdFF), // Flamingo - .note = hex_to_vec4f(0xa6e3a1FF), // Green - .bug = hex_to_vec4f(0xf38ba8FF), // Red - .not_equals = hex_to_vec4f(0xf38ba8FF), // Red - .exclamation = hex_to_vec4f(0xf38ba8FF), // Red - .equals = hex_to_vec4f(0xa6e3a1FF), // Green - .equals_equals = hex_to_vec4f(0xa6e3a1FF), // Green - .greater_than = hex_to_vec4f(0xa6e3a1FF), // Green - .less_than = hex_to_vec4f(0x74c7ecFF), // Sapphire - .marks = hex_to_vec4f(0x74c7ecFF), // Sapphire - .fb_selection = hex_to_vec4f(0xb4befeFF), // Lavender - .plus = hex_to_vec4f(0xa6e3a1FF), // Green - .minus = hex_to_vec4f(0xf38ba8FF), // Red - .truee = hex_to_vec4f(0xa6e3a1FF), // Green - .falsee = hex_to_vec4f(0xf38ba8FF), // Red - .arrow = hex_to_vec4f(0xf9e2afFF), // Yellow - .open_square = hex_to_vec4f(0x89b4faFF), // Blue - .close_square = hex_to_vec4f(0x89b4faFF), // Blue - .current_line_number = hex_to_vec4f(0x89b4faFF), // Blue - .array_content = hex_to_vec4f(0x74c7ecFF), // Sapphire - .link = hex_to_vec4f(0x89b4faFF), // Blue - .logic_or = hex_to_vec4f(0xf38ba8FF), // Red - .pipe = hex_to_vec4f(0xa6e3a1FF), // Green - .ampersand = hex_to_vec4f(0xb4befeFF), // Lavender - .logic_and = hex_to_vec4f(0xa6e3a1FF), // Green - .pointer = hex_to_vec4f(0xf5c2e7FF), // Pink - .multiplication = hex_to_vec4f(0xFAB387FF), // Peach - .matching_parenthesis = hex_to_vec4f(0xf5c2e7FF), // Pink + .text = hex_to_vec4f(0xcdd6f4FF), + .background = hex_to_vec4f(0x1e1e2eFF), + .comment = hex_to_vec4f(0x9399b2FF), + .hashtag = hex_to_vec4f(0x89b4faFF), + .logic = hex_to_vec4f(0xCBA6F7FF), + .string = hex_to_vec4f(0xf9e2afFF), + .selection = hex_to_vec4f(0xf5c2e7FF), + .search = hex_to_vec4f(0xf2cdcdFF), + .todo = hex_to_vec4f(0xf2cdcdFF), + .line_numbers = hex_to_vec4f(0x9399b2FF), + .fixme = hex_to_vec4f(0xf2cdcdFF), + .note = hex_to_vec4f(0xa6e3a1FF), + .bug = hex_to_vec4f(0xf38ba8FF), + .not_equals = hex_to_vec4f(0xf38ba8FF), + .exclamation = hex_to_vec4f(0xf38ba8FF), + .equals = hex_to_vec4f(0xa6e3a1FF), + .equals_equals = hex_to_vec4f(0xa6e3a1FF), + .greater_than = hex_to_vec4f(0xa6e3a1FF), + .less_than = hex_to_vec4f(0x74c7ecFF), + .marks = hex_to_vec4f(0x74c7ecFF), + .fb_selection = hex_to_vec4f(0xb4befeFF), + .plus = hex_to_vec4f(0xa6e3a1FF), + .minus = hex_to_vec4f(0xf38ba8FF), + .truee = hex_to_vec4f(0xa6e3a1FF), + .falsee = hex_to_vec4f(0xf38ba8FF), + .arrow = hex_to_vec4f(0xf9e2afFF), + .open_square = hex_to_vec4f(0x89b4faFF), + .close_square = hex_to_vec4f(0x89b4faFF), + .current_line_number = hex_to_vec4f(0x89b4faFF), + .array_content = hex_to_vec4f(0x74c7ecFF), + .link = hex_to_vec4f(0x89b4faFF), + .logic_or = hex_to_vec4f(0xf38ba8FF), + .pipe = hex_to_vec4f(0xa6e3a1FF), + .ampersand = hex_to_vec4f(0xb4befeFF), + .logic_and = hex_to_vec4f(0xa6e3a1FF), + .pointer = hex_to_vec4f(0xf5c2e7FF), + .multiplication = hex_to_vec4f(0xFAB387FF), + .matching_parenthesis = hex_to_vec4f(0xf5c2e7FF), + }; + + // Nature + themes[5] = (Theme) { + .cursor = hex_to_vec4f(0x658B5FFF), + .insert_cursor = hex_to_vec4f(0x514B8EFF), + .emacs_cursor = hex_to_vec4f(0x834EB6FF), + .text = hex_to_vec4f(0xC0ACD1FF), + .background = hex_to_vec4f(0x090909FF), + .comment = hex_to_vec4f(0x867892FF), + .hashtag = hex_to_vec4f(0x658B5FFF), + .logic = hex_to_vec4f(0x658B5FFF), + .string = hex_to_vec4f(0x4C6750FF), + .selection = hex_to_vec4f(0x262626FF), + .search = hex_to_vec4f(0x262626FF), + .todo = hex_to_vec4f(0x565663FF), + .line_numbers = hex_to_vec4f(0x171717FF), + .current_line_number = hex_to_vec4f(0xC0ACD1FF), + .fixme = hex_to_vec4f(0x444E46FF), + .note = hex_to_vec4f(0x4C6750FF), + .bug = hex_to_vec4f(0x867892FF), + .not_equals = hex_to_vec4f(0x867892FF), + .exclamation = hex_to_vec4f(0x4C6750FF), + .equals = hex_to_vec4f(0xC0ACD1FF), + .equals_equals = hex_to_vec4f(0x658B5FFF), + .greater_than = hex_to_vec4f(0x834EB6FF), + .less_than = hex_to_vec4f(0x834EB6FF), + .marks = hex_to_vec4f(0x565663FF), + .fb_selection = hex_to_vec4f(0x262626FF), + .plus = hex_to_vec4f(0x658B5FFF), + .minus = hex_to_vec4f(0x658B5FFF), + .truee = hex_to_vec4f(0x4C6750FF), + .falsee = hex_to_vec4f(0x867892FF), + .arrow = hex_to_vec4f(0x834EB6FF), + .open_square = hex_to_vec4f(0xC0ACD1FF), + .close_square = hex_to_vec4f(0xC0ACD1FF), + .array_content = hex_to_vec4f(0x4C6750FF), + .link = hex_to_vec4f(0x565663FF), + .logic_or = hex_to_vec4f(0x658B5FFF), + .pipe = hex_to_vec4f(0x565663FF), + .ampersand = hex_to_vec4f(0x658B5FFF), + .logic_and = hex_to_vec4f(0x658B5FFF), + .pointer = hex_to_vec4f(0x514B8EFF), + .multiplication = hex_to_vec4f(0x867892FF), + .matching_parenthesis = hex_to_vec4f(0x262626FF), }; } @@ -327,47 +372,6 @@ void theme_previous(int *currentThemeIndex) { } } -// Smart parentheses -/* void editor_backspace(Editor *e) */ -/* { */ -/* if (e->searching) { */ -/* if (e->search.count > 0) { */ -/* e->search.count -= 1; */ -/* } */ -/* } else { */ -/* if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete TODO also check for the beginning of line */ - -/* size_t cursor_pos = e->cursor; */ - -/* if (cursor_pos > e->data.count) { */ -/* cursor_pos = e->data.count; */ -/* } */ - -/* // Determine the characters before and after the cursor */ -/* char char_before_cursor = (cursor_pos > 0) ? e->data.items[cursor_pos - 1] : '\0'; */ -/* char char_after_cursor = (cursor_pos < e->data.count) ? e->data.items[cursor_pos] : '\0'; */ - -/* if ((char_before_cursor == '(' && char_after_cursor == ')') || */ -/* (char_before_cursor == '[' && char_after_cursor == ']') || */ -/* (char_before_cursor == '{' && char_after_cursor == '}') || */ -/* (char_before_cursor == '\'' && char_after_cursor == '\'') || */ -/* (char_before_cursor == '"' && char_after_cursor == '"')) { */ -/* // Delete both characters and move cursor left */ -/* memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos + 1], e->data.count - cursor_pos); */ -/* e->cursor -= 1; */ -/* e->data.count -= 2; */ -/* } else { */ -/* // Delete only the character before the cursor */ -/* memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos], e->data.count - cursor_pos); */ -/* e->cursor -= 1; */ -/* e->data.count -= 1; */ -/* } */ - -/* editor_retokenize(e); */ -/* } */ -/* } */ - - void editor_backspace(Editor *e) { // If in search mode, reduce the search query length if (e->searching) { @@ -412,24 +416,50 @@ void editor_backspace(Editor *e) { e->data.count -= 1; // Cursor stays at the beginning of the next line (which is now the first line) } - // Handle completely empty line - // Logic to delete the line or move cursor to the previous line } else if (editor_is_line_whitespaced(e, row)) { + /* // If the line is only whitespaces */ + /* size_t line_begin = e->lines.items[row].begin; */ + /* size_t delete_length = (cursor_pos - line_begin >= indentation) ? indentation : cursor_pos - line_begin; */ + + /* memmove(&e->data.items[cursor_pos - delete_length], &e->data.items[cursor_pos], e->data.count - cursor_pos); */ + /* e->cursor -= delete_length; */ + /* e->data.count -= delete_length; */ + // If the line is only whitespaces size_t line_begin = e->lines.items[row].begin; - size_t delete_length = (cursor_pos - line_begin >= indentation) ? indentation : cursor_pos - line_begin; - - memmove(&e->data.items[cursor_pos - delete_length], &e->data.items[cursor_pos], e->data.count - cursor_pos); - e->cursor -= delete_length; - e->data.count -= delete_length; + size_t line_end = e->lines.items[row].end; + size_t whitespace_length = cursor_pos - line_begin; + + if (whitespace_length == indentation) { + // If the number of whitespaces matches indentation exactly, remove the entire line + if (row < e->lines.count - 1) { + memmove(&e->data.items[line_begin], &e->data.items[line_end + 1], e->data.count - line_end - 1); + e->data.count -= (line_end - line_begin + 1); + e->cursor = line_begin; // Update cursor position to the beginning of the next line + } else if (row > 0 && e->data.items[line_begin - 1] == '\n') { + // If it's the last line, remove the preceding newline character + e->data.count -= 1; + memmove(&e->data.items[line_begin - 1], &e->data.items[line_end], e->data.count - line_end); + e->cursor = (line_begin > 1) ? line_begin - 1 : 0; // Move cursor to the end of the previous line, plus one character + } + // Update the cursor position if it's not the first line + if (row > 0) { + e->cursor = e->lines.items[row - 1].end; // Move cursor to one character right of the end of the previous line + if (e->cursor > e->data.count) e->cursor = e->data.count; // Bound check + } + } else { + // Original behavior for deleting whitespaces + size_t delete_length = (whitespace_length >= indentation) ? indentation : whitespace_length; + memmove(&e->data.items[cursor_pos - delete_length], &e->data.items[cursor_pos], e->data.count - cursor_pos); + e->cursor -= delete_length; + e->data.count -= delete_length; + } } else { // Delete only the character before the cursor memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos], e->data.count - cursor_pos); e->cursor -= 1; e->data.count -= 1; } - - // Retokenize the editor content editor_retokenize(e); } } @@ -1754,7 +1784,6 @@ void editor_kill_line(Editor *e) { e->data.count -= 1; memmove(&e->data.items[line_begin - 1], &e->data.items[line_end], e->data.count - line_end); } - // ... } else { // If the line is not empty, kill the text from the cursor to the end of the line size_t length = line_end - e->cursor; @@ -2031,17 +2060,17 @@ size_t editor_row_from_pos(const Editor *e, size_t pos) { return e->lines.count - 1; } -/* void editor_jump_to_matching_parenthesis(Editor *editor) { */ -/* if (editor->cursor >= editor->data.count) return; */ +void editor_jump_to_matching_parenthesis(Editor *editor) { + if (editor->cursor >= editor->data.count) return; -/* ssize_t matching_pos = find_matching_parenthesis(editor, editor->cursor); */ -/* if (matching_pos != -1) { */ -/* // Move the cursor to the matching parenthesis */ -/* editor->cursor = matching_pos; */ -/* } */ -/* } */ + ssize_t matching_pos = find_matching_parenthesis(editor, editor->cursor); + if (matching_pos != -1) { + // Move the cursor to the matching parenthesis + editor->cursor = matching_pos; + } +} -void editor_jump_to_matching_parenthesis(Editor *editor) { +void evil_jump_item(Editor *editor) { if (editor->cursor >= editor->data.count) return; char current_char = editor->data.items[editor->cursor]; @@ -2072,3 +2101,53 @@ void editor_jump_to_matching_parenthesis(Editor *editor) { editor->cursor = matching_pos; } } + + +void editor_enter(Editor *e) { + if (e->searching) { + editor_stop_search_and_mark(e); + current_mode = NORMAL; + return; + } + + size_t row = editor_cursor_row(e); + size_t line_end = e->lines.items[row].end; + + editor_insert_char(e, '\n'); + size_t line_begin = e->lines.items[row].begin; + bool inside_braces = false; + + // Check if the line contains an opening brace '{' + for (size_t i = line_begin; i < line_end; ++i) { + char c = e->data.items[i]; + if (c == '{') { + inside_braces = true; + break; + } + } + + // Insert the same whitespace character + for (size_t i = line_begin; i < line_end; ++i) { + char c = e->data.items[i]; + if (c == ' ' || c == '\t') { + editor_insert_char(e, c); + } else { + break; + } + } + + // If inside braces, perform additional steps + if (inside_braces) { + editor_move_line_up(e); + editor_move_to_line_end(e); + editor_insert_char(e, '\n'); + + // Add indentation + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(e, ' '); + } + } + + e->last_stroke = SDL_GetTicks(); +} + diff --git a/src/editor.h b/src/editor.h index 5b7e0850..2e2ec38a 100644 --- a/src/editor.h +++ b/src/editor.h @@ -172,6 +172,8 @@ void editor_paste_line_before(Editor* editor); ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); size_t editor_row_from_pos(const Editor *e, size_t pos); void editor_jump_to_matching_parenthesis(Editor *editor); +void evil_jump_item(Editor *editor); +void editor_enter(Editor *e); extern float zoom_factor; @@ -192,4 +194,5 @@ void theme_next(int *currentThemeIndex); void theme_previous(int *currentThemeIndex); + #endif // EDITOR_H_ diff --git a/src/main.c b/src/main.c index 8685022c..cd6ce738 100644 --- a/src/main.c +++ b/src/main.c @@ -32,14 +32,14 @@ #include #include #include +#include "yasnippet.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) #define FONT_DIR "~/.config/ded/fonts/" /* #define DEFAULT_FONT "jet-extra-bold.ttf" */ -#define DEFAULT_FONT "radon.otf" -/* #define DEFAULT_FONT "Letters.ttf" */ -/* #define DEFAULT_FONT "designer.otf" */ +/* #define DEFAULT_FONT "radon.otf" */ +#define DEFAULT_FONT "iosevka-regular.ttf" #define MAX_FONTS 20 #define MAX_PATH_SIZE 1024 @@ -52,10 +52,9 @@ int current_font_index = 0; // Needed when ded is ran without any file so it does not know where to save. // TODO: An ability to create a new file -// TODO: Delete a word -// TODO: Delete selection // TODO: Undo/redo system - +// DONE: Delete a word +// DONE: Delete selection void MessageCallback(GLenum source, GLenum type, GLuint id, @@ -259,8 +258,10 @@ Errno openLocalIncludeFile(Editor *editor, const char *includePath) { int main(int argc, char **argv) { - initialize_themes(); - initialize_shader_paths(); + initialize_themes(); + initialize_shader_paths(); + load_snippets_from_directory(); + Errno err; FT_Library library = {0}; @@ -308,12 +309,7 @@ int main(int argc, char **argv) /* FT_Face face = load_font_face(library, fonts[current_font_index]); */ FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); - - - - - - + /* original */ /* FT_Face face; */ /* error = FT_New_Face(library, font_file_path, 0, &face); */ @@ -585,12 +581,13 @@ int main(int argc, char **argv) } break; - + case SDLK_TAB: { - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(&editor, ' '); - } - editor.last_stroke = SDL_GetTicks(); + activate_snippet(&editor); + /* for (size_t i = 0; i < indentation; ++i) { */ + /* editor_insert_char(&editor, ' '); */ + /* } */ + /* editor.last_stroke = SDL_GetTicks(); */ } break; @@ -640,50 +637,7 @@ int main(int argc, char **argv) case SDLK_RETURN: { - if (editor.searching) { - editor_stop_search_and_mark(&editor); - current_mode = NORMAL; - } else { - size_t row = editor_cursor_row(&editor); - size_t line_end = editor.lines.items[row].end; - - editor_insert_char(&editor, '\n'); - size_t line_begin = editor.lines.items[row].begin; - bool inside_braces = false; - - // Check if the line contains an opening brace '{' - for (size_t i = line_begin; i < line_end; ++i) { - char c = editor.data.items[i]; - if (c == '{') { - inside_braces = true; - break; - } - } - - // Insert the same whitespace character - for (size_t i = line_begin; i < line_end; ++i) { - char c = editor.data.items[i]; - if (c == ' ' || c == '\t') { - editor_insert_char(&editor, c); - } else { - break; - } - } - - // If inside braces, perform additional steps - if (inside_braces) { - editor_move_line_up(&editor); - editor_move_to_line_end(&editor); - editor_insert_char(&editor, '\n'); - - // Add indentation - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(&editor, ' '); - } - } - - editor.last_stroke = SDL_GetTicks(); - } + editor_enter(&editor); } break; @@ -772,7 +726,7 @@ int main(int argc, char **argv) case SDLK_5: { if (SDL_GetModState() & KMOD_SHIFT) { - editor_jump_to_matching_parenthesis(&editor); + evil_jump_item(&editor); } } break; @@ -792,7 +746,7 @@ int main(int argc, char **argv) SDL_PollEvent(&tmpEvent); if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not 'o' or 'O' + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not } break; @@ -833,9 +787,11 @@ int main(int argc, char **argv) // - tabs/spaces // - tab width // - etc. - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(&editor, ' '); - } + /* for (size_t i = 0; i < indentation; ++i) { */ + /* editor_insert_char(&editor, ' '); */ + /* } */ + + activate_snippet(&editor); } break; @@ -1177,9 +1133,11 @@ int main(int argc, char **argv) // - tabs/spaces [ ] // - tab width [x] // - etc. - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(&editor, ' '); - } + /* for (size_t i = 0; i < indentation; ++i) { */ + /* editor_insert_char(&editor, ' '); */ + /* } */ + + activate_snippet(&editor); } break; @@ -1648,6 +1606,7 @@ int main(int argc, char **argv) SDL_Delay(delta_time_ms - duration); } } + free_snippet_array(&snippets); return 0; } diff --git a/src/yasnippet.c b/src/yasnippet.c new file mode 100644 index 00000000..b9bc6202 --- /dev/null +++ b/src/yasnippet.c @@ -0,0 +1,181 @@ +// YANSIPPET + +#include +#include "editor.h" +#include +#include "yasnippet.h" + + +SnippetArray snippets; + +void init_snippet_array(SnippetArray *a, size_t initial_size) { + a->array = (Snippet *)malloc(initial_size * sizeof(Snippet)); + a->used = 0; + a->size = initial_size; +} + +void insert_snippet(SnippetArray *a, Snippet snippet) { + if (a->used == a->size) { + a->size *= 2; + a->array = (Snippet *)realloc(a->array, a->size * sizeof(Snippet)); + } + a->array[a->used++] = snippet; +} + +void free_snippet_array(SnippetArray *a) { + free(a->array); + a->array = NULL; + a->used = a->size = 0; +} + + +void load_snippets_from_directory() { + const char* home = getenv("HOME"); + if (!home) { + fprintf(stderr, "ERROR: HOME environment variable not set.\n"); + return; + } + + char directory[256]; + snprintf(directory, sizeof(directory), "%s/.config/ded/snippets", home); + + DIR *dir; + struct dirent *entry; + + if ((dir = opendir(directory)) == NULL) { + fprintf(stderr, "opendir failed: %s\n", strerror(errno)); + return; + } + + init_snippet_array(&snippets, 10); // Start with an initial size of 10 + + while ((entry = readdir(dir)) != NULL) { + if (entry->d_type == DT_REG) { + char filepath[256]; + snprintf(filepath, sizeof(filepath), "%s/%s", directory, entry->d_name); + + FILE *file = fopen(filepath, "r"); + if (file) { + Snippet new_snippet; + strncpy(new_snippet.key, entry->d_name, MAX_SNIPPET_KEY_LENGTH - 1); + new_snippet.key[MAX_SNIPPET_KEY_LENGTH - 1] = '\0'; + new_snippet.content[0] = '\0'; // Initialize content as empty string + + char line[256]; + while (fgets(line, sizeof(line), file)) { + strncat(new_snippet.content, line, MAX_SNIPPET_CONTENT_LENGTH - strlen(new_snippet.content) - 1); + } + new_snippet.content[MAX_SNIPPET_CONTENT_LENGTH - 1] = '\0'; + + insert_snippet(&snippets, new_snippet); + fclose(file); + } + } + } + + closedir(dir); +} + + + +bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { + if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { + return false; // No word directly to the left of the cursor + } + + size_t end = e->cursor; + size_t start = end; + + while (start > 0 && isalnum(e->data.items[start - 1])) { + start--; + } + + size_t word_length = end - start; + if (word_length >= max_word_length) { + return false; // Word is too long for the buffer + } + + memcpy(word, &e->data.items[start], word_length); + word[word_length] = '\0'; // Null-terminate the word + + e->cursor = start; // Move cursor to the start of the word + printf("Extracted word: '%s'\n", word); // Debug print + return true; +} + +void activate_snippet(Editor *e) { + char word[MAX_SNIPPET_KEY_LENGTH]; + size_t original_cursor_position = e->cursor; // Save the original cursor position + + if (!get_word_left_of_cursor(e, word, sizeof(word))) { + return; // No valid word found, so do nothing. + } + + bool snippet_found = false; // Flag to check if a snippet is found + + for (size_t i = 0; i < snippets.used; i++) { + if (strcmp(snippets.array[i].key, word) == 0) { + snippet_found = true; // A matching snippet is found. + size_t word_length = strlen(word); + + // Delete the word from the buffer + memmove(&e->data.items[e->cursor], + &e->data.items[e->cursor + word_length], + e->data.count - (e->cursor + word_length)); + e->data.count -= word_length; + + // Duplicate snippet content to manipulate + char *snippet_content = strdup(snippets.array[i].content); + char *placeholder_pos = strstr(snippet_content, "$0"); + + // Capture the current indentation level + size_t cursor_row = editor_row_from_pos(e, e->cursor); + size_t line_start = e->lines.items[cursor_row].begin; + size_t current_indent = e->cursor - line_start; + + // Calculate the position of $0 + size_t placeholder_line = 0; + size_t placeholder_col = 0; + if (placeholder_pos) { + for (char *p = snippet_content; p < placeholder_pos; ++p) { + if (*p == '\n') { + placeholder_line++; + placeholder_col = 0; + } else { + placeholder_col++; + } + } + memmove(placeholder_pos, placeholder_pos + 2, strlen(placeholder_pos + 2) + 1); // Remove $0 + } + + // Insert the snippet content line by line with indentation + char *line = strtok(snippet_content, "\n"); + while (line != NULL) { + if (cursor_row != editor_row_from_pos(e, e->cursor)) { + // Apply indentation for new lines + for (size_t i = 0; i < current_indent; ++i) { + editor_insert_char(e, ' '); + } + } + + editor_insert_buf(e, line, strlen(line)); + line = strtok(NULL, "\n"); + if (line) { + editor_insert_char(e, '\n'); + } + } + + // Adjust cursor position to where $0 was + if (placeholder_pos) { + e->cursor = e->lines.items[cursor_row + placeholder_line].begin + placeholder_col + (placeholder_line > 0 ? current_indent : 0); + } + + free(snippet_content); + break; // Exit the loop as the snippet is found and processed. + } + } + + if (!snippet_found) { + e->cursor = original_cursor_position; // Restore cursor to its original position. + } +} diff --git a/src/yasnippet.h b/src/yasnippet.h new file mode 100644 index 00000000..f99ff3bf --- /dev/null +++ b/src/yasnippet.h @@ -0,0 +1,31 @@ +#ifndef YASNIPPET_H_ +#define YASNIPPET_H_ + + +// YASNIPPET +#define MAX_SNIPPET_KEY_LENGTH 50 +#define MAX_SNIPPET_CONTENT_LENGTH 1024 + +typedef struct { + char key[MAX_SNIPPET_KEY_LENGTH]; + char content[MAX_SNIPPET_CONTENT_LENGTH]; +} Snippet; + +typedef struct { + Snippet *array; + size_t used; + size_t size; +} SnippetArray; + +extern SnippetArray snippets; + +void init_snippet_array(SnippetArray *a, size_t initial_size); +void insert_snippet(SnippetArray *a, Snippet snippet); +void free_snippet_array(SnippetArray *a); +void load_snippets_from_directory(); +bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); +void activate_snippet(Editor *e); + + + +#endif // YASNIPPET_H_ diff --git a/todo.org b/todo.org index 7a7f8702..ee64c5f7 100644 --- a/todo.org +++ b/todo.org @@ -39,10 +39,13 @@ use shaders from =~/.config/ded/shaders= instead [x] ** Renderer render circles (for whitespaces) [] ** Editor -Fringe[] +Editor_new_line_down shoudl mantain indentation [] +Drag lines up/down [] next +multicursor[] +Iedit[] +Fringe(showing unsaved changes, and later with git integration )[] a theme should be able to define how much lighter of the bg whitespaces indicators are in % (currently hardcoded to 70%)[] -yasnippet [] Replace mode [] Replace character mode [] Pipe selection to unix command [] @@ -59,7 +62,8 @@ most symple emacs style completition (ctrl + n in insert mode)[] use window hight and width dinamicly instead of fixed position when animations are off [] -when copying with y do it like vim[x] +yasnippet [x] TODO +when copying with y do it like vim[x] TODO BUG evil join on shift + j [x] Emacs mode [x] Togglable visibility of whitespaces[x] From f5f44f5337ea922344cd6116dab7552452bbfeaa Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 6 Jan 2024 21:26:35 +0100 Subject: [PATCH 47/74] hl_line --- src/editor.c | 31 ++++++++++++++++++++++++++++--- src/editor.h | 2 ++ src/main.c | 44 +++++++++++++++----------------------------- 3 files changed, 45 insertions(+), 32 deletions(-) diff --git a/src/editor.c b/src/editor.c index 8774aeca..4969b1a0 100644 --- a/src/editor.c +++ b/src/editor.c @@ -25,10 +25,11 @@ bool showLineNumbers = false; bool highlightCurrentLineNumber = true; bool relativeLineNumbers = false; -bool showWhitespaces = true; +bool showWhitespaces = false; bool copiedLine = false; bool matchParenthesis = true; //TODO segfault and highlight size +bool hl_line = true; void editor_new_line_down(Editor *editor) { @@ -100,7 +101,7 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { -int currentThemeIndex = 0; +int currentThemeIndex = 5; Theme themes[6]; void initialize_themes() { @@ -353,6 +354,7 @@ void initialize_themes() { .pointer = hex_to_vec4f(0x514B8EFF), .multiplication = hex_to_vec4f(0x867892FF), .matching_parenthesis = hex_to_vec4f(0x262626FF), + .hl_line = hex_to_vec4f(0x070707FF) }; } @@ -811,6 +813,30 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer ); } + + // Render hl_line + { + if (hl_line){ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + + size_t currentLine = editor_cursor_row(editor); + Vec2f highlightPos = {0.0f, -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + + float highlightWidth = 8000; // Default width for the highlight + + // If showing line numbers, adjust the position and width of the highlight + if (showLineNumbers) { + highlightPos.x -= lineNumberWidth - 260; // Move highlight to the left to cover line numbers + highlightWidth += lineNumberWidth; // Increase width to include line numbers area + } + + simple_renderer_solid_rect(sr, highlightPos, vec2f(highlightWidth, FREE_GLYPH_FONT_SIZE), themes[currentThemeIndex].hl_line); + + simple_renderer_flush(sr); + } + } + + // Render search { if (editor->searching) { @@ -1439,7 +1465,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Update camera { if (isAnimated) { - // Your current camera update logic for animated behavior if (max_line_len > 1000.0f) { max_line_len = 1000.0f; diff --git a/src/editor.h b/src/editor.h index 2e2ec38a..b19a71d2 100644 --- a/src/editor.h +++ b/src/editor.h @@ -86,6 +86,7 @@ typedef struct { Vec4f modeline; Vec4f minibuffer; Vec4f matching_parenthesis; + Vec4f hl_line; } Theme; @@ -183,6 +184,7 @@ extern bool showLineNumbers; extern bool isWave; extern bool showWhitespaces; extern bool copiedLine; +extern bool hl_line; // THEME extern Theme themes[]; diff --git a/src/main.c b/src/main.c index cd6ce738..faeae6eb 100644 --- a/src/main.c +++ b/src/main.c @@ -584,10 +584,10 @@ int main(int argc, char **argv) case SDLK_TAB: { activate_snippet(&editor); - /* for (size_t i = 0; i < indentation; ++i) { */ - /* editor_insert_char(&editor, ' '); */ - /* } */ - /* editor.last_stroke = SDL_GetTicks(); */ + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(&editor, ' '); + } + editor.last_stroke = SDL_GetTicks(); } break; @@ -684,25 +684,6 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { SDL_Event tmpEvent; // Declare once at the beginning of the switch block - /* case SDLK_RETURN: { */ - /* if (editor.searching) { */ - /* editor_stop_search_and_mark(&editor); */ - /* current_mode = NORMAL; */ - /* } else { */ - /* // buffer to hold the extracted word. */ - /* // Assuming the maximum word length is 255 characters. */ - /* char word[256]; */ - - /* // If the word is successfully extracted, print it to the */ - /* // debug output. */ - /* if (extractWordUnderCursor(&editor, word)) { */ - /* printf("Extracted word: %s\n", word); */ - /* } else { */ - /* printf("No word under cursor\n"); */ - /* } */ - /* } */ - /* } break; */ - case SDLK_RETURN: { if (editor.searching) { editor_stop_search_and_mark(&editor); @@ -714,7 +695,6 @@ int main(int argc, char **argv) } } } break; - case SDLK_ESCAPE: { editor_clear_mark(&editor); @@ -723,13 +703,19 @@ int main(int argc, char **argv) } break; - case SDLK_5: { if (SDL_GetModState() & KMOD_SHIFT) { evil_jump_item(&editor); } } break; + + case SDLK_1: { + if (SDL_GetModState() & KMOD_CTRL) { + hl_line = !hl_line; + } + } + break; case SDLK_o: @@ -787,11 +773,11 @@ int main(int argc, char **argv) // - tabs/spaces // - tab width // - etc. - /* for (size_t i = 0; i < indentation; ++i) { */ - /* editor_insert_char(&editor, ' '); */ - /* } */ + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(&editor, ' '); + } - activate_snippet(&editor); + /* activate_snippet(&editor); */ } break; From 36c028f9c3068ea78c1be5596b826fd1afe6f354 Mon Sep 17 00:00:00 2001 From: laluxx Date: Sun, 7 Jan 2024 20:03:10 +0100 Subject: [PATCH 48/74] Function definition --- src/editor.c | 84 +++++++++++++++++----------------- src/editor.h | 2 + src/lexer.c | 125 ++++++++++++++++++++++++++++++++++++++------------- src/lexer.h | 2 + 4 files changed, 142 insertions(+), 71 deletions(-) diff --git a/src/editor.c b/src/editor.c index 4969b1a0..607f884b 100644 --- a/src/editor.c +++ b/src/editor.c @@ -313,48 +313,42 @@ void initialize_themes() { // Nature themes[5] = (Theme) { - .cursor = hex_to_vec4f(0x658B5FFF), - .insert_cursor = hex_to_vec4f(0x514B8EFF), + .cursor = hex_to_vec4f(0x658B5FFF), + .insert_cursor = hex_to_vec4f(0x514B8EFF), .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0xC0ACD1FF), - .background = hex_to_vec4f(0x090909FF), - .comment = hex_to_vec4f(0x867892FF), - .hashtag = hex_to_vec4f(0x658B5FFF), - .logic = hex_to_vec4f(0x658B5FFF), - .string = hex_to_vec4f(0x4C6750FF), - .selection = hex_to_vec4f(0x262626FF), - .search = hex_to_vec4f(0x262626FF), - .todo = hex_to_vec4f(0x565663FF), - .line_numbers = hex_to_vec4f(0x171717FF), - .current_line_number = hex_to_vec4f(0xC0ACD1FF), - .fixme = hex_to_vec4f(0x444E46FF), - .note = hex_to_vec4f(0x4C6750FF), - .bug = hex_to_vec4f(0x867892FF), - .not_equals = hex_to_vec4f(0x867892FF), - .exclamation = hex_to_vec4f(0x4C6750FF), - .equals = hex_to_vec4f(0xC0ACD1FF), - .equals_equals = hex_to_vec4f(0x658B5FFF), - .greater_than = hex_to_vec4f(0x834EB6FF), - .less_than = hex_to_vec4f(0x834EB6FF), - .marks = hex_to_vec4f(0x565663FF), - .fb_selection = hex_to_vec4f(0x262626FF), - .plus = hex_to_vec4f(0x658B5FFF), - .minus = hex_to_vec4f(0x658B5FFF), - .truee = hex_to_vec4f(0x4C6750FF), - .falsee = hex_to_vec4f(0x867892FF), - .arrow = hex_to_vec4f(0x834EB6FF), - .open_square = hex_to_vec4f(0xC0ACD1FF), - .close_square = hex_to_vec4f(0xC0ACD1FF), - .array_content = hex_to_vec4f(0x4C6750FF), - .link = hex_to_vec4f(0x565663FF), - .logic_or = hex_to_vec4f(0x658B5FFF), - .pipe = hex_to_vec4f(0x565663FF), - .ampersand = hex_to_vec4f(0x658B5FFF), - .logic_and = hex_to_vec4f(0x658B5FFF), - .pointer = hex_to_vec4f(0x514B8EFF), - .multiplication = hex_to_vec4f(0x867892FF), - .matching_parenthesis = hex_to_vec4f(0x262626FF), - .hl_line = hex_to_vec4f(0x070707FF) + .text = hex_to_vec4f(0xC0ACD1FF), + .background = hex_to_vec4f(0x090909FF), + .comment = hex_to_vec4f(0x867892FF), + .hashtag = hex_to_vec4f(0x658B5FFF), .logic = hex_to_vec4f(0x658B5FFF), + .string = hex_to_vec4f(0x4C6750FF), + .selection = hex_to_vec4f(0x262626FF), + .search = hex_to_vec4f(0x262626FF), .todo = hex_to_vec4f(0x565663FF), + .line_numbers = hex_to_vec4f(0x171717FF), + .current_line_number = hex_to_vec4f(0xC0ACD1FF), + .fixme = hex_to_vec4f(0x444E46FF), .note = hex_to_vec4f(0x4C6750FF), + .bug = hex_to_vec4f(0x867892FF), .not_equals = hex_to_vec4f(0x867892FF), + .exclamation = hex_to_vec4f(0x4C6750FF), + .equals = hex_to_vec4f(0xC0ACD1FF), + .equals_equals = hex_to_vec4f(0x658B5FFF), + .greater_than = hex_to_vec4f(0x834EB6FF), + .less_than = hex_to_vec4f(0x834EB6FF), + .marks = hex_to_vec4f(0x565663FF), + .fb_selection = hex_to_vec4f(0x262626FF), + .plus = hex_to_vec4f(0x658B5FFF), .minus = hex_to_vec4f(0x658B5FFF), + .truee = hex_to_vec4f(0x4C6750FF), .falsee = hex_to_vec4f(0x867892FF), + .arrow = hex_to_vec4f(0x834EB6FF), + .open_square = hex_to_vec4f(0xC0ACD1FF), + .close_square = hex_to_vec4f(0xC0ACD1FF), + .array_content = hex_to_vec4f(0x4C6750FF), + .link = hex_to_vec4f(0x565663FF), .logic_or = hex_to_vec4f(0x658B5FFF), + .pipe = hex_to_vec4f(0x565663FF), .ampersand = hex_to_vec4f(0x658B5FFF), + .logic_and = hex_to_vec4f(0x658B5FFF), + .pointer = hex_to_vec4f(0x514B8EFF), + .multiplication = hex_to_vec4f(0x867892FF), + .matching_parenthesis = hex_to_vec4f(0x262626FF), + .hl_line = hex_to_vec4f(0x070707FF), + .type = hex_to_vec4f(0x565663FF), + .function_definition = hex_to_vec4f(0x564F96FF) }; } @@ -1043,6 +1037,14 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case TOKEN_KEYWORD: color = themes[currentThemeIndex].logic; break; + + case TOKEN_TYPE: + color = themes[currentThemeIndex].type; + break; + + case TOKEN_FUNCTION_DEFINITION: + color = themes[currentThemeIndex].function_definition; + break; case TOKEN_LINK: color = themes[currentThemeIndex].link; diff --git a/src/editor.h b/src/editor.h index b19a71d2..49409374 100644 --- a/src/editor.h +++ b/src/editor.h @@ -87,6 +87,8 @@ typedef struct { Vec4f minibuffer; Vec4f matching_parenthesis; Vec4f hl_line; + Vec4f type; + Vec4f function_definition; } Theme; diff --git a/src/lexer.c b/src/lexer.c index b050dd60..b5239e2c 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -45,6 +45,18 @@ const char *cKeywords[] = { #define cKeywords_count (sizeof(cKeywords)/sizeof(cKeywords[0])) +const char *cTypeKeywords[] = { + "char", "double", "float", "int", "long", "short", "signed", "unsigned", "void", + "_Bool", "_Complex", "_Imaginary", "bool" +}; + + + +#define cTypeKeywords_count (sizeof(cTypeKeywords) / sizeof(cTypeKeywords[0])) + + + + const char *token_kind_name(Token_Kind kind) { switch (kind) { @@ -321,35 +333,6 @@ Token lexer_next(Lexer *l) } } - /* // all bad spell */ - /* if (l->cursor < l->content_len) { */ - /* // Check for other words or identifiers here */ - /* // Example: */ - /* if (isalpha(l->content[l->cursor])) { */ - /* size_t potential_length = 0; */ - - /* // Count the potential word length */ - /* while (l->cursor + potential_length < l->content_len && isalnum(l->content[l->cursor + potential_length])) { */ - /* potential_length++; */ - /* } */ - - /* // If potential word was detected and not empty */ - /* if (potential_length > 0) { */ - /* // Mark all words as TOKEN_BAD_SPELLCHECK */ - /* token.kind = TOKEN_BAD_SPELLCHECK; */ - /* token.text_len = potential_length; */ - /* lexer_chop_char(l, potential_length); */ - /* return token; */ - /* } */ - /* } */ - /* } */ - - - - - - - // Check for arrays if (l->cursor < l->content_len) { char current_char = l->content[l->cursor]; @@ -482,6 +465,76 @@ Token lexer_next(Lexer *l) return token; } + // FUNCTION DEFINITION + if (l->cursor < l->content_len && is_symbol_start(l->content[l->cursor])) { + // Save the start position of the potential function name + size_t symbolStart = l->cursor; + + // Skip over the potential function name + while (l->cursor < l->content_len && is_symbol(l->content[l->cursor])) { + l->cursor++; + } + + size_t symbolEnd = l->cursor; + + // Look to the left for a type keyword + bool precededByTypeKeyword = false; + size_t leftCursor = symbolStart; + while (leftCursor > 0 && isspace(l->content[leftCursor - 1])) { + leftCursor--; // Skip whitespace + } + if (leftCursor > 0) { + for (size_t i = 0; i < cTypeKeywords_count; ++i) { + size_t keyword_len = strlen(cTypeKeywords[i]); + if (leftCursor >= keyword_len && + strncmp(cTypeKeywords[i], &l->content[leftCursor - keyword_len], keyword_len) == 0 && + (leftCursor == keyword_len || isspace(l->content[leftCursor - keyword_len - 1]))) { + precededByTypeKeyword = true; + break; + } + } + } + + // Look to the right for parentheses + bool followedByParentheses = false; + size_t rightCursor = symbolEnd; + while (rightCursor < l->content_len && isspace(l->content[rightCursor])) { + rightCursor++; // Skip whitespace + } + if (l->content_len - rightCursor >= 1 && l->content[rightCursor] == '(') { + followedByParentheses = true; + } + + // Mark as a function definition if conditions are met + if (precededByTypeKeyword && followedByParentheses) { + token.kind = TOKEN_FUNCTION_DEFINITION; + token.text_len = symbolEnd - symbolStart; + token.text = &l->content[symbolStart]; + + // IMPORTANT: Adjust the position offset for the next token + token.position.x = l->x; + for (size_t i = symbolStart; i < rightCursor; i++) { + char c = l->content[i]; + size_t glyph_index = c; + if (glyph_index >= GLYPH_METRICS_CAPACITY) { + glyph_index = '?'; + } + Glyph_Metric metric = l->atlas->metrics[glyph_index]; + l->x += metric.ax; + } + + l->cursor = rightCursor; // Set cursor to the start of the parentheses + return token; + } else { + // Reset cursor position to start of symbol for further processing + l->cursor = symbolStart; + } + } + + + + + for (size_t i = 0; i < literal_tokens_count; ++i) { if (lexer_starts_with(l, literal_tokens[i].text)) { // NOTE: this code assumes that there is no newlines in literal_tokens[i].text @@ -491,7 +544,9 @@ Token lexer_next(Lexer *l) lexer_chop_char(l, text_len); return token; } - } + } + + if (is_symbol_start(l->content[l->cursor])) { token.kind = TOKEN_SYMBOL; @@ -500,6 +555,16 @@ Token lexer_next(Lexer *l) token.text_len += 1; } + // First, check if the token is a type + for (size_t i = 0; i < cTypeKeywords_count; ++i) { + size_t keyword_len = strlen(cTypeKeywords[i]); + if (keyword_len == token.text_len && memcmp(cTypeKeywords[i], token.text, keyword_len) == 0) { + token.kind = TOKEN_TYPE; + return token; + } + } + + // If not a type, check if it's a general keyword for (size_t i = 0; i < cKeywords_count; ++i) { size_t keyword_len = strlen(cKeywords[i]); if (keyword_len == token.text_len && memcmp(cKeywords[i], token.text, keyword_len) == 0) { diff --git a/src/lexer.h b/src/lexer.h index 25c3fc4b..e3b1f517 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -42,6 +42,8 @@ typedef enum { TOKEN_AMPERSAND, TOKEN_MULTIPLICATION, TOKEN_POINTER, + TOKEN_TYPE, + TOKEN_FUNCTION_DEFINITION, } Token_Kind; const char *token_kind_name(Token_Kind kind); From 0938eaa26bb28fa34d519ae0858408a61661bc90 Mon Sep 17 00:00:00 2001 From: laluxx Date: Tue, 9 Jan 2024 02:12:04 +0100 Subject: [PATCH 49/74] Anchor and drag lines --- .../{minecraft_font.ttf => minecraft.ttf} | Bin src/editor.c | 249 +++++++++++++++--- src/editor.h | 10 + src/main.c | 37 ++- src/yasnippet.c | 236 +++++++++++++++-- todo.org | 14 +- 6 files changed, 485 insertions(+), 61 deletions(-) rename config/ded/fonts/{minecraft_font.ttf => minecraft.ttf} (100%) diff --git a/config/ded/fonts/minecraft_font.ttf b/config/ded/fonts/minecraft.ttf similarity index 100% rename from config/ded/fonts/minecraft_font.ttf rename to config/ded/fonts/minecraft.ttf diff --git a/src/editor.c b/src/editor.c index 607f884b..c36f33d0 100644 --- a/src/editor.c +++ b/src/editor.c @@ -29,18 +29,57 @@ bool showWhitespaces = false; bool copiedLine = false; bool matchParenthesis = true; //TODO segfault and highlight size -bool hl_line = true; +bool hl_line = false; void editor_new_line_down(Editor *editor) { + size_t row = editor_cursor_row(editor); + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + editor_move_to_line_end(editor); editor_insert_char(editor, '\n'); + + // Copy indentation + for (size_t i = line_begin; i < line_end; ++i) { + char c = editor->data.items[i]; + if (c == ' ' || c == '\t') { + editor_insert_char(editor, c); + } else { + break; + } + } } void editor_new_line_up(Editor *editor) { + size_t row = editor_cursor_row(editor); + + // Determine the current line's start and end for capturing indentation + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + + // Capture the indentation of the current line in a local array + char indentation[128]; // Assuming 128 characters is enough for indentation + size_t indentIndex = 0; + for (size_t i = line_begin; i < line_end && indentIndex < sizeof(indentation) - 1; ++i) { + char c = editor->data.items[i]; + if (c == ' ' || c == '\t') { + indentation[indentIndex++] = c; + } else { + break; + } + } + indentation[indentIndex] = '\0'; // Null-terminate the string + + // Insert a newline at the beginning of the current line editor_move_to_line_begin(editor); editor_insert_char(editor, '\n'); editor_move_line_up(editor); + + // Apply the captured indentation + for (size_t i = 0; i < indentIndex; ++i) { + editor_insert_char(editor, indentation[i]); + } } @@ -348,7 +387,8 @@ void initialize_themes() { .matching_parenthesis = hex_to_vec4f(0x262626FF), .hl_line = hex_to_vec4f(0x070707FF), .type = hex_to_vec4f(0x565663FF), - .function_definition = hex_to_vec4f(0x564F96FF) + .function_definition = hex_to_vec4f(0x564F96FF), + .anchor = hex_to_vec4f(0x564F96FF) }; } @@ -737,8 +777,66 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; /* Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed */ + // Calculate the width of a whitespace character + Vec2f whitespace_size = vec2fs(0.0f); + free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespace_size); + float whitespace_width = whitespace_size.x; + + // Render hl_line + { + if (hl_line){ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + + size_t currentLine = editor_cursor_row(editor); + Vec2f highlightPos = {0.0f, -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + + float highlightWidth = 8000; // Default width for the highlight + + // If showing line numbers, adjust the position and width of the highlight + if (showLineNumbers) { + highlightPos.x -= lineNumberWidth - 260; // Move highlight to the left to cover line numbers + highlightWidth += lineNumberWidth; // Increase width to include line numbers area + } + + simple_renderer_solid_rect(sr, highlightPos, vec2f(highlightWidth, FREE_GLYPH_FONT_SIZE), themes[currentThemeIndex].hl_line); + + simple_renderer_flush(sr); + } + } + + // Render anchor + if (editor->has_anchor) { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + + size_t anchor_row = editor_row_from_pos(editor, editor->anchor_pos); + Line anchor_line = editor->lines.items[anchor_row]; + size_t anchor_col = editor->anchor_pos - anchor_line.begin; + + Vec2f anchor_pos = vec2fs(0.0f); + anchor_pos.y = -((float)anchor_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + anchor_pos.x = free_glyph_atlas_cursor_pos( + atlas, + editor->data.items + anchor_line.begin, anchor_line.end - anchor_line.begin, + vec2f(0.0, anchor_pos.y), + anchor_col + ); + + // Adjust anchor position if line numbers are shown + if (showLineNumbers) { + anchor_pos.x += lineNumberWidth; + } + + Vec4f ANCHOR_COLOR = themes[currentThemeIndex].anchor; + + simple_renderer_solid_rect( + sr, anchor_pos, vec2f(whitespace_width, FREE_GLYPH_FONT_SIZE), + themes[currentThemeIndex].anchor); + + + simple_renderer_flush(sr); + } // Render selection @@ -808,29 +906,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } - // Render hl_line - { - if (hl_line){ - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - - size_t currentLine = editor_cursor_row(editor); - Vec2f highlightPos = {0.0f, -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - - float highlightWidth = 8000; // Default width for the highlight - - // If showing line numbers, adjust the position and width of the highlight - if (showLineNumbers) { - highlightPos.x -= lineNumberWidth - 260; // Move highlight to the left to cover line numbers - highlightWidth += lineNumberWidth; // Increase width to include line numbers area - } - - simple_renderer_solid_rect(sr, highlightPos, vec2f(highlightWidth, FREE_GLYPH_FONT_SIZE), themes[currentThemeIndex].hl_line); - - simple_renderer_flush(sr); - } - } - - // Render search { if (editor->searching) { @@ -1336,13 +1411,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer &next_char_pos); cursor_width = next_char_pos.x - cursor_pos.x; } else { - // Measure the width of a default character ' ' - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized(atlas, " ", 1, - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - - /* cursor_width = FREE_GLYPH_FONT_SIZE / 2.0f; */ + cursor_width = whitespace_width; } simple_renderer_solid_rect( @@ -1363,11 +1432,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer &next_char_pos); cursor_width = next_char_pos.x - cursor_pos.x; } else { - // Measure the width of a default character ' ' - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized(atlas, " ", 1, - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; + cursor_width = whitespace_width; } // Implement blinking for EMACS mode @@ -2178,3 +2243,113 @@ void editor_enter(Editor *e) { e->last_stroke = SDL_GetTicks(); } + +void editor_set_anchor(Editor *editor) { + editor->has_anchor = true; + editor->anchor_pos = editor->cursor; +} + +void editor_goto_anchor_and_clear(Editor *editor) { + if (editor->has_anchor) { + editor->cursor = editor->anchor_pos; + editor->has_anchor = false; + } +} + + +void editor_drag_line_down(Editor *editor) { + size_t row = editor_cursor_row(editor); + if (row >= editor->lines.count - 1) return; // Can't move the last line down + + Line current_line = editor->lines.items[row]; + Line next_line = editor->lines.items[row + 1]; + + // Calculate lengths including the newline character + size_t current_line_length = current_line.end - current_line.begin + 1; + size_t next_line_length = next_line.end - next_line.begin + 1; + + // Allocate temporary buffer to hold the lines + char *temp = malloc(current_line_length + next_line_length); + if (!temp) { + // Handle memory allocation error + fprintf(stderr, "ERROR: Unable to allocate memory for line swapping.\n"); + return; + } + + // Copy current and next lines into temp + memcpy(temp, &editor->data.items[current_line.begin], current_line_length); + memcpy(temp + current_line_length, &editor->data.items[next_line.begin], next_line_length); + + // Swap lines in editor's data + memcpy(&editor->data.items[current_line.begin], temp + current_line_length, next_line_length); + memcpy(&editor->data.items[current_line.begin + next_line_length], temp, current_line_length); + + // Free the temporary buffer + free(temp); + + // Update cursor position + if (editor->cursor >= current_line.begin && editor->cursor < current_line.end) { + // The cursor is on the current line, move it down with the line + editor->cursor += next_line_length; + } else if (editor->cursor >= next_line.begin && editor->cursor <= next_line.end) { + // The cursor is on the next line, move it up to the start of the current line + editor->cursor = current_line.begin + (editor->cursor - next_line.begin); + } + + // Update line positions in the Lines struct + editor->lines.items[row].begin = current_line.begin; + editor->lines.items[row].end = current_line.begin + next_line_length - 1; + editor->lines.items[row + 1].begin = current_line.begin + next_line_length; + editor->lines.items[row + 1].end = editor->lines.items[row + 1].begin + current_line_length - 1; + + // Retokenize + editor_retokenize(editor); +} + + + + + +void editor_drag_line_up(Editor *editor) { + size_t row = editor_cursor_row(editor); + if (row == 0) return; // Can't move the first line up + + Line current_line = editor->lines.items[row]; + Line previous_line = editor->lines.items[row - 1]; + + // Calculate lengths including the newline character + size_t current_line_length = current_line.end - current_line.begin + 1; + size_t previous_line_length = previous_line.end - previous_line.begin + 1; + + // Allocate temporary buffer to hold the lines + char *temp = malloc(current_line_length + previous_line_length); + if (!temp) { + // Handle memory allocation error + fprintf(stderr, "ERROR: Unable to allocate memory for line swapping.\n"); + return; + } + + // Copy current and previous lines into temp + memcpy(temp, &editor->data.items[previous_line.begin], previous_line_length); + memcpy(temp + previous_line_length, &editor->data.items[current_line.begin], current_line_length); + + // Swap lines in editor's data + memcpy(&editor->data.items[previous_line.begin], temp + previous_line_length, current_line_length); + memcpy(&editor->data.items[previous_line.begin + current_line_length], temp, previous_line_length); + + // Free the temporary buffer + free(temp); + + // Update cursor position + editor->cursor = previous_line.begin + (editor->cursor - current_line.begin); + + // Update line positions in the Lines struct + editor->lines.items[row - 1].begin = previous_line.begin; + editor->lines.items[row - 1].end = previous_line.begin + current_line_length - 1; + editor->lines.items[row].begin = previous_line.begin + current_line_length; + editor->lines.items[row].end = editor->lines.items[row].begin + previous_line_length - 1; + + // Retokenize + editor_retokenize(editor); +} + diff --git a/src/editor.h b/src/editor.h index 49409374..6ae41d4e 100644 --- a/src/editor.h +++ b/src/editor.h @@ -89,6 +89,7 @@ typedef struct { Vec4f hl_line; Vec4f type; Vec4f function_definition; + Vec4f anchor; } Theme; @@ -115,6 +116,11 @@ typedef struct { Uint32 last_stroke; String_Builder clipboard; + + // ANCHOR + bool has_anchor; // Indicates if an anchor is set. + size_t anchor_pos; // Position of the set anchor. + } Editor; Errno editor_save_as(Editor *editor, const char *file_path); @@ -177,6 +183,10 @@ size_t editor_row_from_pos(const Editor *e, size_t pos); void editor_jump_to_matching_parenthesis(Editor *editor); void evil_jump_item(Editor *editor); void editor_enter(Editor *e); +void editor_set_anchor(Editor *editor); +void editor_goto_anchor_and_clear(Editor *editor); +void editor_drag_line_down(Editor *editor); +void editor_drag_line_up(Editor *editor); extern float zoom_factor; diff --git a/src/main.c b/src/main.c index faeae6eb..a7718d0c 100644 --- a/src/main.c +++ b/src/main.c @@ -39,6 +39,7 @@ #define FONT_DIR "~/.config/ded/fonts/" /* #define DEFAULT_FONT "jet-extra-bold.ttf" */ /* #define DEFAULT_FONT "radon.otf" */ +/* #define DEFAULT_FONT "minecraft.ttf" */ #define DEFAULT_FONT "iosevka-regular.ttf" #define MAX_FONTS 20 #define MAX_PATH_SIZE 1024 @@ -703,6 +704,18 @@ int main(int argc, char **argv) } break; + + case SDLK_SPACE: { + if (SDL_GetModState() & KMOD_CTRL) { + if (!editor.has_anchor){ + editor_set_anchor(&editor); + } else { + editor_goto_anchor_and_clear(&editor); + } + } + } + break; + case SDLK_5: { if (SDL_GetModState() & KMOD_SHIFT) { evil_jump_item(&editor); @@ -1026,7 +1039,7 @@ int main(int argc, char **argv) move_camera(&sr, "down", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { editor_new_line_down(&editor); - } else if (event.key.keysym.mod & KMOD_SHIFT) { + } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { editor_join_lines(&editor); } else if (event.key.keysym.mod & KMOD_ALT) { editor_move_paragraph_down(&editor); @@ -1060,6 +1073,28 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; + + case SDLK_DOWN: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_down(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_down(&editor); + } + break; + + + case SDLK_UP: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_up(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_up(&editor); + } + break; + + + case SDLK_w: if (event.key.keysym.mod & KMOD_CTRL) { showWhitespaces = !showWhitespaces; diff --git a/src/yasnippet.c b/src/yasnippet.c index b9bc6202..5005212b 100644 --- a/src/yasnippet.c +++ b/src/yasnippet.c @@ -78,15 +78,42 @@ void load_snippets_from_directory() { +/* bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { */ +/* if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { */ +/* return false; // No word directly to the left of the cursor */ +/* } */ + +/* size_t end = e->cursor; */ +/* size_t start = end; */ + +/* while (start > 0 && isalnum(e->data.items[start - 1])) { */ +/* start--; */ +/* } */ + +/* size_t word_length = end - start; */ +/* if (word_length >= max_word_length) { */ +/* return false; // Word is too long for the buffer */ +/* } */ + +/* memcpy(word, &e->data.items[start], word_length); */ +/* word[word_length] = '\0'; // Null-terminate the word */ + +/* e->cursor = start; // Move cursor to the start of the word */ +/* printf("Extracted word: '%s'\n", word); // Debug print */ +/* return true; */ +/* } */ + + bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { - if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { - return false; // No word directly to the left of the cursor + if (e->cursor == 0 || !(isalnum(e->data.items[e->cursor - 1]) || e->data.items[e->cursor - 1] == '<')) { + return false; // No word or symbol directly to the left of the cursor } size_t end = e->cursor; size_t start = end; - while (start > 0 && isalnum(e->data.items[start - 1])) { + // Move start to the left while the character is alphanumeric or specific symbols + while (start > 0 && (isalnum(e->data.items[start - 1]) || e->data.items[start - 1] == '<')) { start--; } @@ -99,10 +126,93 @@ bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { word[word_length] = '\0'; // Null-terminate the word e->cursor = start; // Move cursor to the start of the word - printf("Extracted word: '%s'\n", word); // Debug print + printf("Extracted word: '%s'\n", word); return true; } + + +// ORIGINAL +/* void activate_snippet(Editor *e) { */ +/* char word[MAX_SNIPPET_KEY_LENGTH]; */ +/* size_t original_cursor_position = e->cursor; // Save the original cursor position */ + +/* if (!get_word_left_of_cursor(e, word, sizeof(word))) { */ +/* return; // No valid word found, so do nothing. */ +/* } */ + +/* bool snippet_found = false; // Flag to check if a snippet is found */ + +/* for (size_t i = 0; i < snippets.used; i++) { */ +/* if (strcmp(snippets.array[i].key, word) == 0) { */ +/* snippet_found = true; // A matching snippet is found. */ +/* size_t word_length = strlen(word); */ + +/* // Delete the word from the buffer */ +/* memmove(&e->data.items[e->cursor], */ +/* &e->data.items[e->cursor + word_length], */ +/* e->data.count - (e->cursor + word_length)); */ +/* e->data.count -= word_length; */ + +/* // Duplicate snippet content to manipulate */ +/* char *snippet_content = strdup(snippets.array[i].content); */ +/* char *placeholder_pos = strstr(snippet_content, "$0"); */ + +/* // Capture the current indentation level */ +/* size_t cursor_row = editor_row_from_pos(e, e->cursor); */ +/* size_t line_start = e->lines.items[cursor_row].begin; */ +/* size_t current_indent = e->cursor - line_start; */ + +/* // Calculate the position of $0 */ +/* size_t placeholder_line = 0; */ +/* size_t placeholder_col = 0; */ +/* if (placeholder_pos) { */ +/* for (char *p = snippet_content; p < placeholder_pos; ++p) { */ +/* if (*p == '\n') { */ +/* placeholder_line++; */ +/* placeholder_col = 0; */ +/* } else { */ +/* placeholder_col++; */ +/* } */ +/* } */ +/* memmove(placeholder_pos, placeholder_pos + 2, strlen(placeholder_pos + 2) + 1); // Remove $0 */ +/* } */ + +/* // Insert the snippet content line by line with indentation */ +/* char *line = strtok(snippet_content, "\n"); */ +/* while (line != NULL) { */ +/* if (cursor_row != editor_row_from_pos(e, e->cursor)) { */ +/* // Apply indentation for new lines */ +/* for (size_t i = 0; i < current_indent; ++i) { */ +/* editor_insert_char(e, ' '); */ +/* } */ +/* } */ + +/* editor_insert_buf(e, line, strlen(line)); */ +/* line = strtok(NULL, "\n"); */ +/* if (line) { */ +/* editor_insert_char(e, '\n'); */ +/* } */ +/* } */ + +/* // Adjust cursor position to where $0 was */ +/* if (placeholder_pos) { */ +/* e->cursor = e->lines.items[cursor_row + placeholder_line].begin + placeholder_col + (placeholder_line > 0 ? current_indent : 0); */ +/* } */ + +/* free(snippet_content); */ +/* break; // Exit the loop as the snippet is found and processed. */ +/* } */ +/* } */ + +/* if (!snippet_found) { */ +/* e->cursor = original_cursor_position; // Restore cursor to its original position. */ +/* } */ +/* } */ + + + +/* INDENTATION PROBLEM */ void activate_snippet(Editor *e) { char word[MAX_SNIPPET_KEY_LENGTH]; size_t original_cursor_position = e->cursor; // Save the original cursor position @@ -148,20 +258,28 @@ void activate_snippet(Editor *e) { memmove(placeholder_pos, placeholder_pos + 2, strlen(placeholder_pos + 2) + 1); // Remove $0 } - // Insert the snippet content line by line with indentation - char *line = strtok(snippet_content, "\n"); - while (line != NULL) { - if (cursor_row != editor_row_from_pos(e, e->cursor)) { - // Apply indentation for new lines - for (size_t i = 0; i < current_indent; ++i) { - editor_insert_char(e, ' '); + // Process each line of the snippet + char *line_start_ptr = snippet_content; + char *line_end_ptr; + while ((line_end_ptr = strchr(line_start_ptr, '\n')) != NULL || *line_start_ptr) { + if (line_end_ptr != NULL) { + size_t line_length = line_end_ptr - line_start_ptr; + if (line_length > 0) { + editor_insert_buf(e, line_start_ptr, line_length); } + editor_insert_char(e, '\n'); // Insert newline and move to the next line + line_start_ptr = line_end_ptr + 1; + } else { + // Last line of the snippet + editor_insert_buf(e, line_start_ptr, strlen(line_start_ptr)); + break; } - editor_insert_buf(e, line, strlen(line)); - line = strtok(NULL, "\n"); - if (line) { - editor_insert_char(e, '\n'); + // Apply indentation for new lines + if (*line_start_ptr && cursor_row != editor_row_from_pos(e, e->cursor)) { + for (size_t i = 0; i < current_indent; ++i) { + editor_insert_char(e, ' '); + } } } @@ -179,3 +297,91 @@ void activate_snippet(Editor *e) { e->cursor = original_cursor_position; // Restore cursor to its original position. } } + +// ONLY CURSOR POSITION PROBLEM +/* void activate_snippet(Editor *e) { */ +/* char word[MAX_SNIPPET_KEY_LENGTH]; */ +/* size_t original_cursor_position = e->cursor; // Save the original cursor position */ + +/* if (!get_word_left_of_cursor(e, word, sizeof(word))) { */ +/* return; // No valid word found, so do nothing. */ +/* } */ + +/* bool snippet_found = false; // Flag to check if a snippet is found */ + +/* for (size_t i = 0; i < snippets.used; i++) { */ +/* if (strcmp(snippets.array[i].key, word) == 0) { */ +/* snippet_found = true; // A matching snippet is found. */ +/* size_t word_length = strlen(word); */ + +/* // Delete the word from the buffer */ +/* memmove(&e->data.items[e->cursor], */ +/* &e->data.items[e->cursor + word_length], */ +/* e->data.count - (e->cursor + word_length)); */ +/* e->data.count -= word_length; */ + +/* // Duplicate snippet content to manipulate */ +/* char *snippet_content = strdup(snippets.array[i].content); */ + +/* // Find and process the placeholder position */ +/* char *placeholder_pos = strstr(snippet_content, "$0"); */ +/* size_t placeholder_offset = placeholder_pos ? (placeholder_pos - snippet_content) : 0; */ + +/* if (placeholder_pos) { */ +/* // Remove the placeholder from the content */ +/* memmove(placeholder_pos, placeholder_pos + 2, strlen(placeholder_pos + 2) + 1); */ +/* } */ + +/* size_t cursor_row = editor_row_from_pos(e, e->cursor); */ +/* size_t line_start = e->lines.items[cursor_row].begin; */ +/* size_t current_indent = e->cursor - line_start; */ + +/* // Process each line of the snippet */ +/* char *line_start_ptr = snippet_content; */ +/* char *line_end_ptr; */ +/* bool is_first_line = true; */ + +/* while ((line_end_ptr = strchr(line_start_ptr, '\n')) != NULL || *line_start_ptr) { */ +/* if (!is_first_line) { */ +/* editor_insert_char(e, '\n'); // Insert newline for all but the first line */ +/* } */ + +/* size_t line_length = line_end_ptr ? (line_end_ptr - line_start_ptr) : strlen(line_start_ptr); */ + +/* if (line_length > 0) { */ +/* // Apply indentation only if the line is not the first */ +/* if (!is_first_line) { */ +/* for (size_t i = 0; i < current_indent; ++i) { */ +/* editor_insert_char(e, ' '); */ +/* } */ +/* } */ +/* editor_insert_buf(e, line_start_ptr, line_length); */ +/* } */ + +/* if (line_end_ptr) { */ +/* line_start_ptr = line_end_ptr + 1; // Move to the next line */ +/* } else { */ +/* break; // Last line of the snippet */ +/* } */ + +/* is_first_line = false; */ +/* } */ + +/* if (placeholder_pos) { */ +/* e->cursor = original_cursor_position + placeholder_offset; */ +/* } else { */ +/* // Move cursor to the end if no placeholder is found */ +/* e->cursor = original_cursor_position + (line_start_ptr - snippet_content); */ +/* } */ + +/* free(snippet_content); */ +/* break; // Exit the loop as the snippet is found and processed. */ +/* } */ +/* } */ + +/* if (!snippet_found) { */ +/* e->cursor = original_cursor_position; // Restore cursor to its original position. */ +/* } */ +/* } */ + + diff --git a/todo.org b/todo.org index ee64c5f7..9c077e6e 100644 --- a/todo.org +++ b/todo.org @@ -2,13 +2,8 @@ * TODO every function defined in the code should be callable -while the app is running holy c emacs style M-x [] +while the app is running emacs style M-x [] -** Mouse support -clickable links with both cursor and mouse [] -ctrl click for documentation on the thing or enter in normal mode [] -mouse scroll [] -ctrl scroll should scroll more [] ** Evil Mode splits(maybe) [] 5k should work [] @@ -38,9 +33,10 @@ make the text disappear [] use shaders from =~/.config/ded/shaders= instead [x] ** Renderer render circles (for whitespaces) [] +** Bugs +opening a file with ded file.c that contain a +function definition, trow a [1] 35755 segmentation fault (core dumped) ** Editor -Editor_new_line_down shoudl mantain indentation [] -Drag lines up/down [] next multicursor[] Iedit[] Fringe(showing unsaved changes, and later with git integration )[] @@ -62,6 +58,8 @@ most symple emacs style completition (ctrl + n in insert mode)[] use window hight and width dinamicly instead of fixed position when animations are off [] +Drag lines up/down [x] // TODO drag selection or multiple cursors BUG behaves bad when there are only 2 lines in the editor and you swap them +Editor_new_line_down and up should mantain indentation [x] yasnippet [x] TODO when copying with y do it like vim[x] TODO BUG evil join on shift + j [x] From e382bff54f6cc8fdd17d74a83c6819236f8fcc04 Mon Sep 17 00:00:00 2001 From: laluxx Date: Tue, 9 Jan 2024 03:39:02 +0100 Subject: [PATCH 50/74] Buffers --- src/editor.c | 104 ++++++++++++++++++++++++++++++++++++++++++++++++--- src/editor.h | 21 +++++++++-- src/main.c | 49 +++++++++++++++++------- 3 files changed, 151 insertions(+), 23 deletions(-) diff --git a/src/editor.c b/src/editor.c index c36f33d0..48a7c89c 100644 --- a/src/editor.c +++ b/src/editor.c @@ -588,6 +588,11 @@ Errno editor_load_from_file(Editor *e, const char *file_path) sb_append_cstr(&e->file_path, file_path); sb_append_null(&e->file_path); + // Add file path to buffer history + if (e->buffer_history_count < MAX_BUFFER_HISTORY) { + e->buffer_history[e->buffer_history_count++] = strdup(file_path); + } + return 0; } @@ -1068,7 +1073,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render text { if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_EPICNESS); + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); } else { simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); } @@ -2306,10 +2311,6 @@ void editor_drag_line_down(Editor *editor) { editor_retokenize(editor); } - - - - void editor_drag_line_up(Editor *editor) { size_t row = editor_cursor_row(editor); if (row == 0) return; // Can't move the first line up @@ -2353,3 +2354,96 @@ void editor_drag_line_up(Editor *editor) { editor_retokenize(editor); } + + +// BUFFERS +// TODO switching buffers delete unsaved changes +// TODO save cursor position on each buffer + +void editor_add_to_buffer_history(Editor *e, const char *file_path) { + if (e->buffer_history_count < MAX_BUFFER_HISTORY) { + free(e->buffer_history[e->buffer_history_count]); // Free existing string if any + e->buffer_history[e->buffer_history_count] = strdup(file_path); + } + e->buffer_index = e->buffer_history_count; // Update buffer index + e->buffer_history_count++; +} + + +void editor_remove_from_buffer_history(Editor *e) { + if (e->buffer_history_count > 0) { + free(e->buffer_history[--e->buffer_history_count]); // Free the last string + } +} + + +Errno editor_open_buffer(Editor *e, const char *file_path) { + printf("Opening buffer: %s\n", file_path); + + e->data.count = 0; + Errno err = read_entire_file(file_path, &e->data); + if (err != 0) return err; + + e->cursor = 0; + editor_retokenize(e); + + e->file_path.count = 0; + sb_append_cstr(&e->file_path, file_path); + sb_append_null(&e->file_path); + + return 0; +} + +void editor_kill_buffer(Editor *e) { + if (e->buffer_history_count > 0) { + // Free the current buffer path and remove it from the history + free(e->buffer_history[e->buffer_index]); + e->buffer_history[e->buffer_index] = NULL; + + // Shift all elements after the current index down + for (int i = e->buffer_index; i < e->buffer_history_count - 1; i++) { + e->buffer_history[i] = e->buffer_history[i + 1]; + } + + // Decrease the count of buffers in the history + e->buffer_history_count--; + + // Update the buffer index to point to the previous buffer, if possible + if (e->buffer_index > 0) { + e->buffer_index--; + } + + // If there are still buffers in the history, load the previous one + if (e->buffer_history_count > 0) { + const char *prev_file_path = e->buffer_history[e->buffer_index]; + editor_open_buffer(e, prev_file_path); // Open the previous buffer without adding to history + } else { + // Handle the case when there are no more buffers in the history + // For example open a scratch buffer + } + } +} + + +void editor_previous_buffer(Editor *e) { + if (e->buffer_index > 0) { + e->buffer_index--; // Move to the previous buffer in history + const char *prev_file_path = e->buffer_history[e->buffer_index]; + editor_open_buffer(e, prev_file_path); // Open the previous buffer + } else { + // Handle case when there's no previous buffer + printf("No previous buffer available.\n"); + } +} + +void editor_next_buffer(Editor *e) { + if (e->buffer_index < e->buffer_history_count - 1) { + e->buffer_index++; // Move to the next buffer in history + const char *next_file_path = e->buffer_history[e->buffer_index]; + editor_open_buffer(e, next_file_path); // Open the next buffer + } else { + // Handle case when there's no next buffer + printf("No next buffer available.\n"); + } +} + diff --git a/src/editor.h b/src/editor.h index 6ae41d4e..e9ce5000 100644 --- a/src/editor.h +++ b/src/editor.h @@ -93,6 +93,9 @@ typedef struct { } Theme; + +#define MAX_BUFFER_HISTORY 100 + typedef struct { Free_Glyph_Atlas *atlas; @@ -112,14 +115,16 @@ typedef struct { size_t mark_start; // Start of marked search result. TODO support multiple marks size_t mark_end; // End of marked search result. - Uint32 last_stroke; String_Builder clipboard; - // ANCHOR - bool has_anchor; // Indicates if an anchor is set. - size_t anchor_pos; // Position of the set anchor. + bool has_anchor; + size_t anchor_pos; + + char *buffer_history[MAX_BUFFER_HISTORY]; + int buffer_history_count; + int buffer_index; } Editor; @@ -188,6 +193,14 @@ void editor_goto_anchor_and_clear(Editor *editor); void editor_drag_line_down(Editor *editor); void editor_drag_line_up(Editor *editor); +void editor_add_to_buffer_history(Editor *e, const char *file_path); +void editor_remove_from_buffer_history(Editor *e); +Errno editor_open_buffer(Editor *e, const char *file_path); +Errno editor_open_buffer(Editor *e, const char *file_path); +void editor_kill_buffer(Editor *e); +void editor_previous_buffer(Editor *e); +void editor_next_buffer(Editor *e); + extern float zoom_factor; extern float min_zoom_factor; diff --git a/src/main.c b/src/main.c index a7718d0c..b4857e50 100644 --- a/src/main.c +++ b/src/main.c @@ -822,19 +822,6 @@ int main(int argc, char **argv) } break; - case SDLK_p: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_line_up(&editor); - } else if (copiedLine) { - if (SDL_GetModState() & KMOD_SHIFT) { - editor_paste_line_before(&editor); - } else { - editor_paste_line_after(&editor); - } - } else { - editor_clipboard_paste(&editor); - } - break; case SDLK_g: { if (SDL_GetModState() & KMOD_SHIFT) { @@ -866,14 +853,38 @@ int main(int argc, char **argv) if (SDL_GetModState() & KMOD_CTRL) { editor_move_line_down(&editor); } + + if (SDL_GetModState() & KMOD_ALT) { + editor_next_buffer(&editor); + } } break; + + case SDLK_p: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_previous_buffer(&editor); + } else if (copiedLine) { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_paste_line_before(&editor); + } else { + editor_paste_line_after(&editor); + } + } else { + editor_clipboard_paste(&editor); + } + break; + + case SDLK_b: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (SDL_GetModState() & KMOD_CTRL){ editor_move_char_left(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_kill_buffer(&editor); } else { - editor_move_word_left(&editor); + editor_move_word_left(&editor); } break; @@ -1094,6 +1105,16 @@ int main(int argc, char **argv) break; + case SDLK_RIGHT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_right(&editor); + break; + + case SDLK_LEFT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_left(&editor); + break; + case SDLK_w: if (event.key.keysym.mod & KMOD_CTRL) { From 9d168dba72cca8a5e9a9c62a1334285eb2244025 Mon Sep 17 00:00:00 2001 From: laluxx Date: Tue, 9 Jan 2024 21:44:00 +0100 Subject: [PATCH 51/74] Bug hunting --- src/editor.c | 140 ++++++++++++++++++++++++++++++++++++++------------- src/editor.h | 13 +++++ src/main.c | 12 +++++ todo.org | 10 ++-- 4 files changed, 138 insertions(+), 37 deletions(-) diff --git a/src/editor.c b/src/editor.c index 48a7c89c..a97a24b4 100644 --- a/src/editor.c +++ b/src/editor.c @@ -501,8 +501,7 @@ void editor_backspace(Editor *e) { } - - +// Unused ? void editor_delete(Editor *e) { if (e->searching) return; @@ -551,6 +550,9 @@ void editor_delete_selection(Editor *e) editor_retokenize(e); } + + + // TODO: make sure that you always have new line at the end of the file while saving // https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 @@ -707,6 +709,30 @@ void editor_insert_buf(Editor *e, char *buf, size_t buf_len) } } + +void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos) { + // Ensure the position is within bounds + if (pos > e->data.count) { + pos = e->data.count; + } + + // Expand the buffer to accommodate the new text + for (size_t i = 0; i < buf_len; ++i) { + da_append(&e->data, '\0'); // Assuming da_append is a function to expand the buffer + } + + // Shift existing text to make room for the new text + memmove(&e->data.items[pos + buf_len], &e->data.items[pos], e->data.count - pos); + + // Copy the new text into the buffer at the specified position + memcpy(&e->data.items[pos], buf, buf_len); + + // Update the cursor position and retokenize + e->cursor = pos + buf_len; + editor_retokenize(e); +} + + void editor_retokenize(Editor *e) { // Lines @@ -814,31 +840,34 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render anchor if (editor->has_anchor) { simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + + // Update the anchor position before rendering + editor_update_anchor(editor); size_t anchor_row = editor_row_from_pos(editor, editor->anchor_pos); Line anchor_line = editor->lines.items[anchor_row]; size_t anchor_col = editor->anchor_pos - anchor_line.begin; - Vec2f anchor_pos = vec2fs(0.0f); - anchor_pos.y = -((float)anchor_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; - anchor_pos.x = free_glyph_atlas_cursor_pos( - atlas, - editor->data.items + anchor_line.begin, anchor_line.end - anchor_line.begin, - vec2f(0.0, anchor_pos.y), - anchor_col - ); + Vec2f anchor_pos_vec = vec2fs(0.0f); + anchor_pos_vec.y = -((float)anchor_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + anchor_pos_vec.x = free_glyph_atlas_cursor_pos( + atlas, + editor->data.items + anchor_line.begin, anchor_line.end - anchor_line.begin, + vec2f(0.0, anchor_pos_vec.y), + anchor_col + ); // Adjust anchor position if line numbers are shown if (showLineNumbers) { - anchor_pos.x += lineNumberWidth; + anchor_pos_vec.x += lineNumberWidth; } Vec4f ANCHOR_COLOR = themes[currentThemeIndex].anchor; simple_renderer_solid_rect( - sr, anchor_pos, vec2f(whitespace_width, FREE_GLYPH_FONT_SIZE), - themes[currentThemeIndex].anchor); - + sr, anchor_pos_vec, vec2f(whitespace_width, FREE_GLYPH_FONT_SIZE), + ANCHOR_COLOR); + simple_renderer_flush(sr); } @@ -1862,6 +1891,7 @@ void editor_move_paragraph_down(Editor *e) e->cursor = e->lines.items[row].begin; } + void editor_kill_line(Editor *e) { if (e->searching || e->cursor >= e->data.count) return; @@ -1901,6 +1931,7 @@ void editor_kill_line(Editor *e) { editor_retokenize(e); } + void editor_backward_kill_word(Editor *e) { editor_stop_search(e); @@ -1937,6 +1968,9 @@ void editor_backward_kill_word(Editor *e) { editor_retokenize(e); } + + + // TODO when there is a {} dont add the space void editor_join_lines(Editor *e) { size_t row = editor_cursor_row(e); @@ -1995,6 +2029,7 @@ void editor_join_lines(Editor *e) { } + bool editor_is_line_empty(Editor *e, size_t row) { if (row >= e->lines.count) return true; // Non-existent lines are considered empty @@ -2053,25 +2088,35 @@ void editor_paste_line_after(Editor* editor) { size_t text_len = strlen(text); if (text_len > 0) { - editor_move_line_down(editor); // Move to the start of the next line + // Find the end of the current line + size_t end = editor->cursor; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + // If not at the end of the file, move to the start of the next line + if (end < editor->data.count) { + end++; + } // Insert the text from the clipboard - editor_insert_buf(editor, text, text_len); + editor_insert_buf_at(editor, text, text_len, end); - // Insert a newline after pasting if the text doesn't end with one + // If the pasted text does not end with a newline, add one if (text[text_len - 1] != '\n') { - editor_insert_buf(editor, "\n", 1); + editor_insert_buf_at(editor, "\n", 1, end + text_len); } - editor_move_line_up(editor); // Move back to the original line - } else { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + // Move cursor to the first non-space character of the pasted line + editor->cursor = end; + while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { + editor->cursor++; + } } SDL_free(text); } -// BUG void editor_paste_line_before(Editor* editor) { if (!copiedLine) { return; // Do nothing if no line has been copied @@ -2085,29 +2130,31 @@ void editor_paste_line_before(Editor* editor) { size_t text_len = strlen(text); if (text_len > 0) { - // Move cursor to the start of the current line + // Find the start of the current line size_t start = editor->cursor; while (start > 0 && editor->data.items[start - 1] != '\n') { start--; } - editor->cursor = start; - // Insert the text from the clipboard - editor_insert_buf(editor, text, text_len); + // Insert the text from the clipboard at the start of the line + editor_insert_buf_at(editor, text, text_len, start); // Optionally, insert a newline after pasting if the text doesn't end with one if (text[text_len - 1] != '\n') { - editor_insert_buf(editor, "\n", 1); + editor_insert_buf_at(editor, "\n", 1, start + text_len); + } + + // Move cursor to the first non-space character of the pasted line + editor->cursor = start; + while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { + editor->cursor++; } - } else { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); } - editor_move_line_up(editor); // like this the cursor behave like vim HACK TODO + SDL_free(text); } - ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos) { // Ensure the cursor position is within the valid range if (cursor_pos >= editor->data.count) return -1; @@ -2200,6 +2247,7 @@ void evil_jump_item(Editor *editor) { } +//TODO BUG void editor_enter(Editor *e) { if (e->searching) { editor_stop_search_and_mark(e); @@ -2249,18 +2297,42 @@ void editor_enter(Editor *e) { } +// Anchor Implementation: Initially, the anchor used a single index from the +// start of the buffer, requiring updates on text changes. To simplify, we now +// track two indices (start and end of buffer). The anchor position self-adjusts +// based on cursor's relative position, ensuring correct placement without +// modifying all text-manipulating functions. + void editor_set_anchor(Editor *editor) { - editor->has_anchor = true; - editor->anchor_pos = editor->cursor; + if (editor->cursor < editor->data.count) { + editor->has_anchor = true; + editor->anchor_pos_from_start = editor->cursor; + editor->anchor_pos_from_end = editor->data.count - editor->cursor; + } } void editor_goto_anchor_and_clear(Editor *editor) { if (editor->has_anchor) { - editor->cursor = editor->anchor_pos; + if (editor->cursor > editor->anchor_pos_from_start) { + editor->cursor = editor->anchor_pos_from_start; + } else { + editor->cursor = editor->data.count - editor->anchor_pos_from_end; + } editor->has_anchor = false; } } +void editor_update_anchor(Editor *editor) { + if (!editor->has_anchor) return; + + if (editor->cursor > editor->anchor_pos_from_start) { + // Cursor is after the anchor, use position from the start + editor->anchor_pos = editor->anchor_pos_from_start; + } else { + // Cursor is before the anchor, use position from the end + editor->anchor_pos = editor->data.count - editor->anchor_pos_from_end; + } +} void editor_drag_line_down(Editor *editor) { size_t row = editor_cursor_row(editor); diff --git a/src/editor.h b/src/editor.h index e9ce5000..12f061bc 100644 --- a/src/editor.h +++ b/src/editor.h @@ -119,8 +119,14 @@ typedef struct { String_Builder clipboard; + /* bool has_anchor; */ + /* size_t anchor_pos; */ + bool has_anchor; + size_t anchor_pos_from_start; + size_t anchor_pos_from_end; size_t anchor_pos; + char *buffer_history[MAX_BUFFER_HISTORY]; int buffer_history_count; @@ -188,10 +194,14 @@ size_t editor_row_from_pos(const Editor *e, size_t pos); void editor_jump_to_matching_parenthesis(Editor *editor); void evil_jump_item(Editor *editor); void editor_enter(Editor *e); + void editor_set_anchor(Editor *editor); void editor_goto_anchor_and_clear(Editor *editor); +void editor_update_anchor(Editor *editor); + void editor_drag_line_down(Editor *editor); void editor_drag_line_up(Editor *editor); +/* size_t editor_determine_anchor_position(const Editor *editor); */ void editor_add_to_buffer_history(Editor *e, const char *file_path); void editor_remove_from_buffer_history(Editor *e); @@ -201,6 +211,9 @@ void editor_kill_buffer(Editor *e); void editor_previous_buffer(Editor *e); void editor_next_buffer(Editor *e); +void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); + + extern float zoom_factor; extern float min_zoom_factor; diff --git a/src/main.c b/src/main.c index b4857e50..e0ce8e34 100644 --- a/src/main.c +++ b/src/main.c @@ -1139,6 +1139,18 @@ int main(int argc, char **argv) case INSERT: switch (event.key.keysym.sym) { + case SDLK_SPACE: { + if (SDL_GetModState() & KMOD_CTRL) { + if (!editor.has_anchor){ + editor_set_anchor(&editor); + } else { + editor_goto_anchor_and_clear(&editor); + } + } + } + break; + + case SDLK_h: if (event.key.keysym.mod & KMOD_CTRL) { editor_move_char_left(&editor); diff --git a/todo.org b/todo.org index 9c077e6e..47c41742 100644 --- a/todo.org +++ b/todo.org @@ -37,6 +37,9 @@ render circles (for whitespaces) [] opening a file with ded file.c that contain a function definition, trow a [1] 35755 segmentation fault (core dumped) ** Editor +ivy for everything [] +imenu for function definition jump [] +sub-pixel antialiasing [] multicursor[] Iedit[] Fringe(showing unsaved changes, and later with git integration )[] @@ -48,16 +51,17 @@ Pipe selection to unix command [] Togglable visibility of new lines[] Togglable indentation lines[] show character under cursor with the same color as the bg[] -keep a list of opened files to quickly -go to the previous or next "buffer" or kill them [] search should not be case sensitive [] -mismatched cut and selection [] support multiple marks not just one [] render wavy or normal line under text for errors or whatever [] most symple emacs style completition (ctrl + n in insert mode)[] use window hight and width dinamicly instead of fixed position when animations are off [] + +keep a list of opened files to quickly +go to the previous or next "buffer" or kill them [x] +mismatched cut and selection [x] Drag lines up/down [x] // TODO drag selection or multiple cursors BUG behaves bad when there are only 2 lines in the editor and you swap them Editor_new_line_down and up should mantain indentation [x] yasnippet [x] TODO From 390c63ca7a797489eb58c285a3206eef3a9f87d0 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 10 Jan 2024 22:22:56 +0100 Subject: [PATCH 52/74] Themes and editor_open_include --- src/editor.c | 546 ++++++++++++++++++++++++++++----------------------- src/editor.h | 3 - src/lexer.c | 16 +- src/main.c | 79 ++++++-- todo.org | 4 + 5 files changed, 378 insertions(+), 270 deletions(-) diff --git a/src/editor.c b/src/editor.c index a97a24b4..d3ef3b46 100644 --- a/src/editor.c +++ b/src/editor.c @@ -31,6 +31,8 @@ bool matchParenthesis = true; //TODO segfault and highlight size bool hl_line = false; +bool showMinibuffer = true; + void editor_new_line_down(Editor *editor) { size_t row = editor_cursor_row(editor); @@ -140,232 +142,31 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { -int currentThemeIndex = 5; +int currentThemeIndex = 0; Theme themes[6]; void initialize_themes() { - themes[0] = (Theme) { - .cursor = hex_to_vec4f(0x80D4FFFF), - .insert_cursor = hex_to_vec4f(0x80D4FFFF), - .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0xFFFFFFFF), - .background = hex_to_vec4f(0x0D0D0DFF), - .minibuffer = hex_to_vec4f(0x0A0A0AFF), - .comment = hex_to_vec4f(0x808080FF), - .hashtag = hex_to_vec4f(0xD6EBFFFF), - .logic = hex_to_vec4f(0x80D4FFFF), - .string = hex_to_vec4f(0x2E2E2EFF), - .selection = hex_to_vec4f(0x1A1A1AFF), - .search = hex_to_vec4f(0x808080FF), - .marks = hex_to_vec4f(0x171717FF), - .todo = hex_to_vec4f(0x1E1E1EFF), - .line_numbers = hex_to_vec4f(0x808080FF), - .fixme = hex_to_vec4f(0xCCD6F5FF), - .note = hex_to_vec4f(0x808080FF), - .bug = hex_to_vec4f(0xF5F5F5FF), - .not_equals = hex_to_vec4f(0x80D4FFFF), - .exclamation = hex_to_vec4f(0xCCD6F5FF), - .equals = hex_to_vec4f(0x808080FF), - .equals_equals = hex_to_vec4f(0x808080FF), - .greater_than = hex_to_vec4f(0x80D4FFFF), - .less_than = hex_to_vec4f(0x80D4FFFF), - .plus = hex_to_vec4f(0x80D4FFFF), - .minus = hex_to_vec4f(0xCCD6F5FF), - .truee = hex_to_vec4f(0x80D4FFFF), - .falsee = hex_to_vec4f(0xCCD6F5FF), - .arrow = hex_to_vec4f(0x808080FF), - .open_square = hex_to_vec4f(0x80D4FFFF), - .close_square = hex_to_vec4f(0x80D4FFFF), - .current_line_number = hex_to_vec4f(0x80D4FFFF), - .array_content = hex_to_vec4f(0x808080FF), - .link = hex_to_vec4f(0x80D4FFFF), - .logic_or = hex_to_vec4f(0xCCD6F5FF), - .pipe = hex_to_vec4f(0x80D4FFFF), - .ampersand = hex_to_vec4f(0xCCD6F5FF), - .logic_and = hex_to_vec4f(0x80D4FFFF), - .pointer = hex_to_vec4f(0xCCD6F5FF), - .multiplication = hex_to_vec4f(0x80D4FFFF), - .matching_parenthesis = hex_to_vec4f(0x1A1A1AFF), - - }; - - // Base2Tone - themes[1] = (Theme) { - .cursor = hex_to_vec4f(0x4183c4FF), - .insert_cursor = hex_to_vec4f(0x4183c4FF), - .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0x111111FF), - .background = hex_to_vec4f(0x00000026), - .comment = hex_to_vec4f(0x222222FF), - .hashtag = hex_to_vec4f(0x3ca555FF), - .logic = hex_to_vec4f(0x06f06fFF), - .string = hex_to_vec4f(0xc0c0c0FF), - .selection = hex_to_vec4f(0x999999FF), - .search = hex_to_vec4f(0xcccCCCFF), - .todo = hex_to_vec4f(0xf8f8f8FF), - .line_numbers = hex_to_vec4f(0x9399b2FF), - .fixme = hex_to_vec4f(0xf7f7f7FF), - .note = hex_to_vec4f(0x666666FF), - .bug = hex_to_vec4f(0x4183c4FF), - .not_equals = hex_to_vec4f(0x06f06fFF), - .exclamation = hex_to_vec4f(0x666666FF), - .equals = hex_to_vec4f(0x3ca555FF), - .equals_equals = hex_to_vec4f(0x3ca555FF), - .greater_than = hex_to_vec4f(0x06f06fFF), - .less_than = hex_to_vec4f(0x4183c4FF), - .marks = hex_to_vec4f(0x06f06fFF), - .fb_selection = hex_to_vec4f(0xdddDDDFF), - .plus = hex_to_vec4f(0x3ca555FF), - .minus = hex_to_vec4f(0x4183c4FF), - .truee = hex_to_vec4f(0x3ca555FF), - .falsee = hex_to_vec4f(0x4183c4FF), - .arrow = hex_to_vec4f(0x666666FF), - .open_square = hex_to_vec4f(0x4183c4FF), - .close_square = hex_to_vec4f(0x4183c4FF), - .current_line_number = hex_to_vec4f(0x3ca555FF), - .array_content = hex_to_vec4f(0xdddDDDFF), - .matching_parenthesis = hex_to_vec4f(0x999999FF), - }; - - // Base2Tone Extended Pink & Purple - themes[2] = (Theme) { - .cursor = hex_to_vec4f(0x912D56FF), - .insert_cursor = hex_to_vec4f(0x912D56FF), - .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0xEEEDF7FF), - .background = hex_to_vec4f(0x1E001380), - .comment = hex_to_vec4f(0x554455FF), - .hashtag = hex_to_vec4f(0xB34688FF), - .logic = hex_to_vec4f(0xA22882FF), - .string = hex_to_vec4f(0x995D99FF), - .selection = hex_to_vec4f(0x4B004B80), - .search = hex_to_vec4f(0xDF88DFFF), - .todo = hex_to_vec4f(0xEDE2F2FF), - .line_numbers = hex_to_vec4f(0x7A507AFF), - .fixme = hex_to_vec4f(0xE8CFE8FF), - .note = hex_to_vec4f(0x774877FF), - .bug = hex_to_vec4f(0xD2146BFF), - .not_equals = hex_to_vec4f(0xA22882FF), - .exclamation = hex_to_vec4f(0xC23F91FF), - .equals = hex_to_vec4f(0x8E558E), - .equals_equals = hex_to_vec4f(0x8E558E), - .greater_than = hex_to_vec4f(0xA22882FF), - .less_than = hex_to_vec4f(0x912D56FF), - .marks = hex_to_vec4f(0xC91C7EFF), - .fb_selection = hex_to_vec4f(0xD49FD4FF), - .plus = hex_to_vec4f(0x995D99FF), - .minus = hex_to_vec4f(0xB34688FF), - .truee = hex_to_vec4f(0x774877FF), - .falsee = hex_to_vec4f(0xA22882FF), - .arrow = hex_to_vec4f(0x7A507AFF), - .open_square = hex_to_vec4f(0x995D99FF), - .close_square = hex_to_vec4f(0x995D99FF), - .current_line_number = hex_to_vec4f(0xB34688FF), - .array_content = hex_to_vec4f(0xD49FD4FF), - .link = hex_to_vec4f(0x89b4faFF), // Blue - .matching_parenthesis = hex_to_vec4f(0xD2146BFF), - }; - - // Monokai Expanded - themes[3] = (Theme) { - .cursor = hex_to_vec4f(0xF8F8F0FF), - .insert_cursor = hex_to_vec4f(0xF8F8F0FF), - .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0xF8F8F2FF), - .background = hex_to_vec4f(0x272822FF), - .comment = hex_to_vec4f(0x75715EFF), - .hashtag = hex_to_vec4f(0xA6E22EFF), - .logic = hex_to_vec4f(0xF92672FF), - .string = hex_to_vec4f(0xE6DB74FF), - .selection = hex_to_vec4f(0x49483EFF), - .search = hex_to_vec4f(0x66D9EFFF), - .todo = hex_to_vec4f(0xFD971FFF), - .line_numbers = hex_to_vec4f(0x8F908AFF), - .fixme = hex_to_vec4f(0xFF0000FF), - .note = hex_to_vec4f(0x66D9EFFF), - .bug = hex_to_vec4f(0xFD5F00FF), - .not_equals = hex_to_vec4f(0xA6E22EFF), - .exclamation = hex_to_vec4f(0xF92672FF), - .equals = hex_to_vec4f(0x66D9EFFF), - .greater_than = hex_to_vec4f(0xF92672FF), - .less_than = hex_to_vec4f(0xA6E22EFF), - .marks = hex_to_vec4f(0xFD971FFF), - .fb_selection = hex_to_vec4f(0x3E3D32FF), - .plus = hex_to_vec4f(0x66D9EFFF), - .minus = hex_to_vec4f(0xF92672FF), - .truee = hex_to_vec4f(0xA6E22EFF), - .falsee = hex_to_vec4f(0xF92672FF), - .arrow = hex_to_vec4f(0xE6DB74FF), - .open_square = hex_to_vec4f(0xE6DB74FF), - .close_square = hex_to_vec4f(0xE6DB74FF), - .current_line_number = hex_to_vec4f(0x66D9EFFF), - .array_content = hex_to_vec4f(0x3E3D32FF), - .link = hex_to_vec4f(0x89b4faFF), // Blue - .matching_parenthesis = hex_to_vec4f(0x49483EFF), - }; - - // Catppuccin - themes[4] = (Theme){ - .cursor = hex_to_vec4f(0xf38ba8FF), - .insert_cursor = hex_to_vec4f(0xf38ba8FF), - .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0xcdd6f4FF), - .background = hex_to_vec4f(0x1e1e2eFF), - .comment = hex_to_vec4f(0x9399b2FF), - .hashtag = hex_to_vec4f(0x89b4faFF), - .logic = hex_to_vec4f(0xCBA6F7FF), - .string = hex_to_vec4f(0xf9e2afFF), - .selection = hex_to_vec4f(0xf5c2e7FF), - .search = hex_to_vec4f(0xf2cdcdFF), - .todo = hex_to_vec4f(0xf2cdcdFF), - .line_numbers = hex_to_vec4f(0x9399b2FF), - .fixme = hex_to_vec4f(0xf2cdcdFF), - .note = hex_to_vec4f(0xa6e3a1FF), - .bug = hex_to_vec4f(0xf38ba8FF), - .not_equals = hex_to_vec4f(0xf38ba8FF), - .exclamation = hex_to_vec4f(0xf38ba8FF), - .equals = hex_to_vec4f(0xa6e3a1FF), - .equals_equals = hex_to_vec4f(0xa6e3a1FF), - .greater_than = hex_to_vec4f(0xa6e3a1FF), - .less_than = hex_to_vec4f(0x74c7ecFF), - .marks = hex_to_vec4f(0x74c7ecFF), - .fb_selection = hex_to_vec4f(0xb4befeFF), - .plus = hex_to_vec4f(0xa6e3a1FF), - .minus = hex_to_vec4f(0xf38ba8FF), - .truee = hex_to_vec4f(0xa6e3a1FF), - .falsee = hex_to_vec4f(0xf38ba8FF), - .arrow = hex_to_vec4f(0xf9e2afFF), - .open_square = hex_to_vec4f(0x89b4faFF), - .close_square = hex_to_vec4f(0x89b4faFF), - .current_line_number = hex_to_vec4f(0x89b4faFF), - .array_content = hex_to_vec4f(0x74c7ecFF), - .link = hex_to_vec4f(0x89b4faFF), - .logic_or = hex_to_vec4f(0xf38ba8FF), - .pipe = hex_to_vec4f(0xa6e3a1FF), - .ampersand = hex_to_vec4f(0xb4befeFF), - .logic_and = hex_to_vec4f(0xa6e3a1FF), - .pointer = hex_to_vec4f(0xf5c2e7FF), - .multiplication = hex_to_vec4f(0xFAB387FF), - .matching_parenthesis = hex_to_vec4f(0xf5c2e7FF), - }; - // Nature - themes[5] = (Theme) { + themes[0] = (Theme) { .cursor = hex_to_vec4f(0x658B5FFF), .insert_cursor = hex_to_vec4f(0x514B8EFF), .emacs_cursor = hex_to_vec4f(0x834EB6FF), .text = hex_to_vec4f(0xC0ACD1FF), .background = hex_to_vec4f(0x090909FF), .comment = hex_to_vec4f(0x867892FF), - .hashtag = hex_to_vec4f(0x658B5FFF), .logic = hex_to_vec4f(0x658B5FFF), + .hashtag = hex_to_vec4f(0x658B5FFF), + .logic = hex_to_vec4f(0x658B5FFF), .string = hex_to_vec4f(0x4C6750FF), .selection = hex_to_vec4f(0x262626FF), - .search = hex_to_vec4f(0x262626FF), .todo = hex_to_vec4f(0x565663FF), + .search = hex_to_vec4f(0x262626FF), + .todo = hex_to_vec4f(0x565663FF), .line_numbers = hex_to_vec4f(0x171717FF), .current_line_number = hex_to_vec4f(0xC0ACD1FF), - .fixme = hex_to_vec4f(0x444E46FF), .note = hex_to_vec4f(0x4C6750FF), - .bug = hex_to_vec4f(0x867892FF), .not_equals = hex_to_vec4f(0x867892FF), + .fixme = hex_to_vec4f(0x444E46FF), + .note = hex_to_vec4f(0x4C6750FF), + .bug = hex_to_vec4f(0x867892FF), + .not_equals = hex_to_vec4f(0x867892FF), .exclamation = hex_to_vec4f(0x4C6750FF), .equals = hex_to_vec4f(0xC0ACD1FF), .equals_equals = hex_to_vec4f(0x658B5FFF), @@ -373,14 +174,18 @@ void initialize_themes() { .less_than = hex_to_vec4f(0x834EB6FF), .marks = hex_to_vec4f(0x565663FF), .fb_selection = hex_to_vec4f(0x262626FF), - .plus = hex_to_vec4f(0x658B5FFF), .minus = hex_to_vec4f(0x658B5FFF), - .truee = hex_to_vec4f(0x4C6750FF), .falsee = hex_to_vec4f(0x867892FF), + .plus = hex_to_vec4f(0x658B5FFF), + .minus = hex_to_vec4f(0x658B5FFF), + .truee = hex_to_vec4f(0x4C6750FF), + .falsee = hex_to_vec4f(0x867892FF), .arrow = hex_to_vec4f(0x834EB6FF), .open_square = hex_to_vec4f(0xC0ACD1FF), .close_square = hex_to_vec4f(0xC0ACD1FF), .array_content = hex_to_vec4f(0x4C6750FF), - .link = hex_to_vec4f(0x565663FF), .logic_or = hex_to_vec4f(0x658B5FFF), - .pipe = hex_to_vec4f(0x565663FF), .ampersand = hex_to_vec4f(0x658B5FFF), + .link = hex_to_vec4f(0x565663FF), + .logic_or = hex_to_vec4f(0x658B5FFF), + .pipe = hex_to_vec4f(0x565663FF), + .ampersand = hex_to_vec4f(0x658B5FFF), .logic_and = hex_to_vec4f(0x658B5FFF), .pointer = hex_to_vec4f(0x514B8EFF), .multiplication = hex_to_vec4f(0x867892FF), @@ -388,7 +193,261 @@ void initialize_themes() { .hl_line = hex_to_vec4f(0x070707FF), .type = hex_to_vec4f(0x565663FF), .function_definition = hex_to_vec4f(0x564F96FF), - .anchor = hex_to_vec4f(0x564F96FF) + .anchor = hex_to_vec4f(0x564F96FF), + .minibuffer = hex_to_vec4f(0x090909FF), + }; + + // DOOM one + themes[1] = (Theme) { + .cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF + .insert_cursor = hex_to_vec4f(0x51AFEFFF), + .emacs_cursor = hex_to_vec4f(0xECBE7BFF), //#ECBE7B + .text = hex_to_vec4f(0xBBC2CFFF), + .background = hex_to_vec4f(0x282C34FF), + .comment = hex_to_vec4f(0x5B6268FF), + .hashtag = hex_to_vec4f(0x51AFEFFF), + .logic = hex_to_vec4f(0x51AFEFFF), + .string = hex_to_vec4f(0x98BE65FF), //#98BE65 + .selection = hex_to_vec4f(0x42444AFF), + .search = hex_to_vec4f(0x387AA7FF), //#387AA7 + .todo = hex_to_vec4f(0xECBE7BFF), + .line_numbers = hex_to_vec4f(0x3F444AFF), + .current_line_number = hex_to_vec4f(0xBBC2CFFF), + .fixme = hex_to_vec4f(0xFF6C6BFF), //#FF6C6B + .note = hex_to_vec4f(0x98BE65FF), + .bug = hex_to_vec4f(0xFF6C6BFF), + .not_equals = hex_to_vec4f(0xFF6C6BFF), + .exclamation = hex_to_vec4f(0x51AFEFFF), + .equals = hex_to_vec4f(0x98BE65FF), + .equals_equals = hex_to_vec4f(0x98BE65FF), + .greater_than = hex_to_vec4f(0x98BE65FF), + .less_than = hex_to_vec4f(0xFF6C6BFF), + .marks = hex_to_vec4f(0x387AA7FF), + .fb_selection = hex_to_vec4f(0x42444AFF), + .plus = hex_to_vec4f(0x98BE65FF), + .minus = hex_to_vec4f(0xFF6C6BFF), + .truee = hex_to_vec4f(0x98BE65FF), + .falsee = hex_to_vec4f(0xFF6C6BFF), + .arrow = hex_to_vec4f(0xBBC2CFFF), + .open_square = hex_to_vec4f(0xBBC2CFFF), + .close_square = hex_to_vec4f(0xBBC2CFFF), + .array_content = hex_to_vec4f(0xA9A1E1FF), + .link = hex_to_vec4f(0xA9A1E1FF), //#A9A1E1 + .matching_parenthesis = hex_to_vec4f(0x42444AFF), + .type = hex_to_vec4f(0xECBE7BFF), + .function_definition = hex_to_vec4f(0xC678DDFF), //#C678DD + .anchor = hex_to_vec4f(0xA9A1E1FF), + .hl_line = hex_to_vec4f(0x21242BFF),//#21242B + .multiplication = hex_to_vec4f(0x98BE65FF), + .pointer = hex_to_vec4f(0xA9A1E1FF), + .logic_and = hex_to_vec4f(0x98BE65FF), + .logic_or = hex_to_vec4f(0xFF6C6BFF), + .ampersand = hex_to_vec4f(0x51AFEFFF), + .pipe = hex_to_vec4f(0x98BE65FF), + .minibuffer = hex_to_vec4f(0x21242BFF), + }; + + // Dracula + themes[2] = (Theme) { + .cursor = hex_to_vec4f(0xBD93F9FF), //#BD93F9 + .insert_cursor = hex_to_vec4f(0xBD93F9FF), + .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), //#F1FA8C + .text = hex_to_vec4f(0xF8F8F2FF), + .background = hex_to_vec4f(0x282A36FF), + .comment = hex_to_vec4f(0x6272A4FF), + .hashtag = hex_to_vec4f(0xBD93F9FF), + .logic = hex_to_vec4f(0xFF79C6FF), //#FF79C6 + .string = hex_to_vec4f(0xF1FA8CFF), + .selection = hex_to_vec4f(0x44475AFF), + .search = hex_to_vec4f(0x8466AEFF), //#8466AE + .todo = hex_to_vec4f(0xF1FA8CFF), + .line_numbers = hex_to_vec4f(0x6272A4FF), + .current_line_number = hex_to_vec4f(0xF8F8F2FF), + .fixme = hex_to_vec4f(0xFF5555FF), //#FF5555 + .note = hex_to_vec4f(0x50FA7BFF), //#50FA7B + .bug = hex_to_vec4f(0xFF5555FF), + .not_equals = hex_to_vec4f(0xFF5555FF), + .exclamation = hex_to_vec4f(0xBD93F9FF), + .equals = hex_to_vec4f(0x50FA7BFF), + .equals_equals = hex_to_vec4f(0x50FA7BFF), + .greater_than = hex_to_vec4f(0x50FA7BFF), + .less_than = hex_to_vec4f(0xFF5555FF), + .marks = hex_to_vec4f(0x8466AEFF), + .fb_selection = hex_to_vec4f(0x44475AFF), + .plus = hex_to_vec4f(0x50FA7BFF), + .minus = hex_to_vec4f(0xFF5555FF), + .truee = hex_to_vec4f(0x50FA7BFF), + .falsee = hex_to_vec4f(0xFF5555FF), + .arrow = hex_to_vec4f(0x8BE9FDFF), //#8BE9FD + .open_square = hex_to_vec4f(0xF8F8F2FF), + .close_square = hex_to_vec4f(0xF8F8F2FF), + .array_content = hex_to_vec4f(0xBD93F9FF), + .link = hex_to_vec4f(0x8BE9FDFF), + .matching_parenthesis = hex_to_vec4f(0x44475AFF), + .type = hex_to_vec4f(0xBD93F9FF), + .function_definition = hex_to_vec4f(0x50FA7BFF), + .anchor = hex_to_vec4f(0xFF79C6FF), + .hl_line = hex_to_vec4f(0x1E2029FF), //#1E2029 + .multiplication = hex_to_vec4f(0x50FA7BFF), + .pointer = hex_to_vec4f(0xFFC9E8FF), //#FFC9E8 + .logic_and = hex_to_vec4f(0x50FA7BFF), + .logic_or = hex_to_vec4f(0xFF5555FF), + .ampersand = hex_to_vec4f(0x8BE9FDFF), + .pipe = hex_to_vec4f(0x50FA7BFF), + .minibuffer = hex_to_vec4f(0x1E2029FF), //#1E2029 + }; + + // DOOM city lights + themes[3] = (Theme){ + .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D + .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 + .text = hex_to_vec4f(0xA0B3C5FF), + .background = hex_to_vec4f(0x1D252CFF), + .comment = hex_to_vec4f(0x41505EFF), + .hashtag = hex_to_vec4f(0x5EC4FFFF), + .logic = hex_to_vec4f(0x5EC4FFFF), + .string = hex_to_vec4f(0x539AFCFF), // #539AFC + .selection = hex_to_vec4f(0x28323BFF), + .search = hex_to_vec4f(0x4189B2FF), + .todo = hex_to_vec4f(0xEBBF83FF), + .line_numbers = hex_to_vec4f(0x384551FF), + .current_line_number = hex_to_vec4f(0xA0B3C5FF), + .fixme = hex_to_vec4f(0xD95468FF), // #D95468 + .note = hex_to_vec4f(0x8BD49CFF), // #8BD49C + .bug = hex_to_vec4f(0xD95468FF), + .not_equals = hex_to_vec4f(0xD95468FF), + .exclamation = hex_to_vec4f(0x5EC4FFFF), + .equals = hex_to_vec4f(0x8BD49CFF), + .equals_equals = hex_to_vec4f(0x8BD49CFF), + .greater_than = hex_to_vec4f(0x8BD49CFF), + .less_than = hex_to_vec4f(0xD95468FF), + .marks = hex_to_vec4f(0x4189B2FF), + .fb_selection = hex_to_vec4f(0x28323BFF), + .plus = hex_to_vec4f(0x8BD49CFF), + .minus = hex_to_vec4f(0xD95468FF), + .truee = hex_to_vec4f(0x8BD49CFF), + .falsee = hex_to_vec4f(0xD95468FF), + .arrow = hex_to_vec4f(0xA0B3C5FF), + .open_square = hex_to_vec4f(0xA0B3C5FF), + .close_square = hex_to_vec4f(0xA0B3C5FF), + .array_content = hex_to_vec4f(0x539AFCFF), + .link = hex_to_vec4f(0x539AFCFF), + .matching_parenthesis = hex_to_vec4f(0x28323BFF), + .type = hex_to_vec4f(0xEBBF83FF), + .function_definition = hex_to_vec4f(0x33CED8FF), // #33CED8 + .anchor = hex_to_vec4f(0xE27E8DFF), + .hl_line = hex_to_vec4f(0x181E24FF), + .multiplication = hex_to_vec4f(0x8BD49CFF), + .pointer = hex_to_vec4f(0x539AFCFF), + .logic_and = hex_to_vec4f(0x8BD49CFF), + .logic_or = hex_to_vec4f(0xD95468FF), + .ampersand = hex_to_vec4f(0x5EC4FFFF), + .pipe = hex_to_vec4f(0x8BD49CFF), + .minibuffer = hex_to_vec4f(0x181E24FF), + }; + + + // DOOM molokai + themes[4] = (Theme) { + .cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 + .insert_cursor = hex_to_vec4f(0xFB2874FF), + .emacs_cursor = hex_to_vec4f(0xE2C770FF), //#E2C770 + .text = hex_to_vec4f(0xD6D6D4FF), + .background = hex_to_vec4f(0x1C1E1FFF), + .comment = hex_to_vec4f(0x555556FF), + .hashtag = hex_to_vec4f(0x9C91E4FF), //#9C91E4 + .logic = hex_to_vec4f(0xFB2874FF), + .string = hex_to_vec4f(0xE2C770FF), + .selection = hex_to_vec4f(0x4E4E4EFF), + .search = hex_to_vec4f(0x9C91E4FF), + .todo = hex_to_vec4f(0xE2C770FF), + .line_numbers = hex_to_vec4f(0x555556FF), + .current_line_number = hex_to_vec4f(0xCFC0C5FF), + .fixme = hex_to_vec4f(0xE74C3CFF), //#E74C3C + .note = hex_to_vec4f(0xB6E63EFF), //#B6E63E + .bug = hex_to_vec4f(0xE74C3CFF), + .not_equals = hex_to_vec4f(0xE74C3CFF), + .exclamation = hex_to_vec4f(0x9C91E4FF), + .equals = hex_to_vec4f(0xB6E63EFF), + .equals_equals = hex_to_vec4f(0xB6E63EFF), + .greater_than = hex_to_vec4f(0xB6E63EFF), + .less_than = hex_to_vec4f(0xE74C3CFF), + .marks = hex_to_vec4f(0xB6E63EFF), + .fb_selection = hex_to_vec4f(0x4E4E4EFF), + .plus = hex_to_vec4f(0xB6E63EFF), + .minus = hex_to_vec4f(0xE74C3CFF), + .truee = hex_to_vec4f(0xB6E63EFF), + .falsee = hex_to_vec4f(0xE74C3CFF), + .arrow = hex_to_vec4f(0xD6D6D4FF), + .open_square = hex_to_vec4f(0xD6D6D4FF), + .close_square = hex_to_vec4f(0xD6D6D4FF), + .array_content = hex_to_vec4f(0x9C91E4FF), + .link = hex_to_vec4f(0x9C91E4FF), + .matching_parenthesis = hex_to_vec4f(0x4E4E4EFF), + .type = hex_to_vec4f(0x66D9EFFF), + .function_definition = hex_to_vec4f(0xB6E63EFF), + .anchor = hex_to_vec4f(0x9C91E4FF), + .hl_line = hex_to_vec4f(0x222323FF), + .multiplication = hex_to_vec4f(0xB6E63EFF), + .pointer = hex_to_vec4f(0x9C91E4FF), + .logic_and = hex_to_vec4f(0xB6E63EFF), + .logic_or = hex_to_vec4f(0xE74C3CFF), + .ampersand = hex_to_vec4f(0x9C91E4FF), + .pipe = hex_to_vec4f(0xB6E63EFF), + .minibuffer = hex_to_vec4f(0x222323FF), + }; + + + + // Palenight + themes[5] = (Theme) { + .cursor = hex_to_vec4f(0xC792EAFF), //#C792EA + .insert_cursor = hex_to_vec4f(0xC792EAFF), + .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), //#FFCB6B + .text = hex_to_vec4f(0xEEFFFFFF), + .background = hex_to_vec4f(0x292D3EFF), + .comment = hex_to_vec4f(0x676E95FF), + .hashtag = hex_to_vec4f(0x89DDFFFF), //#89DDFF + .logic = hex_to_vec4f(0x89DDFFFF), + .string = hex_to_vec4f(0xC3E88DFF), //#C3E88D + .selection = hex_to_vec4f(0x3C435EFF), + .search = hex_to_vec4f(0x4E5579FF), + .todo = hex_to_vec4f(0xFFCB6BFF), + .line_numbers = hex_to_vec4f(0x676E95FF), + .current_line_number = hex_to_vec4f(0xEEFFFFFF), + .fixme = hex_to_vec4f(0xFF5370FF), //#FF5370 + .note = hex_to_vec4f(0xC3E88DFF), + .bug = hex_to_vec4f(0xFF5370FF), + .not_equals = hex_to_vec4f(0xFF5370FF), + .exclamation = hex_to_vec4f(0x89DDFFFF), + .equals = hex_to_vec4f(0xC3E88DFF), + .equals_equals = hex_to_vec4f(0xC3E88DFF), + .greater_than = hex_to_vec4f(0xC3E88DFF), + .less_than = hex_to_vec4f(0xFF5370FF), + .marks = hex_to_vec4f(0x4E5579FF), + .fb_selection = hex_to_vec4f(0x3C435EFF), + .plus = hex_to_vec4f(0xC3E88DFF), + .minus = hex_to_vec4f(0xFF5370FF), + .truee = hex_to_vec4f(0xC3E88DFF), + .falsee = hex_to_vec4f(0xFF5370FF), + .arrow = hex_to_vec4f(0xFFCB6BFF), + .open_square = hex_to_vec4f(0xEEFFFFFF), + .close_square = hex_to_vec4f(0xEEFFFFFF), + .array_content = hex_to_vec4f(0x82AAFFFF), //#82AAFF + .link = hex_to_vec4f(0x89DDFFFF), + .logic_or = hex_to_vec4f(0xFF5370FF), + .pipe = hex_to_vec4f(0xC3E88DFF), + .ampersand = hex_to_vec4f(0x89DDFFFF), + .logic_and = hex_to_vec4f(0xC3E88DFF), + .pointer = hex_to_vec4f(0xF78C6CFF), //#F78C6C + .multiplication = hex_to_vec4f(0xC3E88DFF), + .matching_parenthesis = hex_to_vec4f(0x3C435EFF), + .hl_line = hex_to_vec4f(0x242837FF), + .type = hex_to_vec4f(0xC792EAFF), + .function_definition = hex_to_vec4f(0x82AAFFFF), + .anchor = hex_to_vec4f(0xFF5370FF), + .minibuffer = hex_to_vec4f(0x292D3EFF), }; } @@ -520,39 +579,33 @@ void editor_delete_selection(Editor *e) { assert(e->selection); - if (e->cursor > e->select_begin) { - if (e->cursor > e->data.count) { - e->cursor = e->data.count; - } - if (e->cursor == 0) return; + size_t begin = e->select_begin; + size_t end = e->cursor; + if (begin > end) { + SWAP(size_t, begin, end); + } - size_t nchars = e->cursor - e->select_begin; - memmove( - &e->data.items[e->cursor - nchars], - &e->data.items[e->cursor], - e->data.count - e->cursor - ); + if (end >= e->data.count) { + end = e->data.count - 1; + } + if (begin == e->data.count) return; - e->cursor -= nchars; - e->data.count -= nchars; - } else { - if (e->cursor >= e->data.count) return; + size_t nchars = end - begin + 1; // Correct calculation to include the end character - size_t nchars = e->select_begin - e->cursor; - memmove( - &e->data.items[e->cursor], - &e->data.items[e->cursor + nchars], - e->data.count - e->cursor - nchars - ); + memmove( + &e->data.items[begin], + &e->data.items[end + 1], + e->data.count - end - 1 + ); + + e->data.count -= nchars; + e->cursor = begin; // Set cursor to the beginning of the deleted range - e->data.count -= nchars; - } editor_retokenize(e); } - // TODO: make sure that you always have new line at the end of the file while saving // https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 @@ -1388,14 +1441,13 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } - - - - // MODELINE - simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + // Render minibuffer { - simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){1920, 21.0f}, CURRENT_THEME.minibuffer); - simple_renderer_flush(sr); + if (showMinibuffer) { + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){1920, 21.0f}, CURRENT_THEME.minibuffer); + simple_renderer_flush(sr); + } } diff --git a/src/editor.h b/src/editor.h index 12f061bc..1239e6cc 100644 --- a/src/editor.h +++ b/src/editor.h @@ -119,9 +119,6 @@ typedef struct { String_Builder clipboard; - /* bool has_anchor; */ - /* size_t anchor_pos; */ - bool has_anchor; size_t anchor_pos_from_start; size_t anchor_pos_from_end; diff --git a/src/lexer.c b/src/lexer.c index b5239e2c..1210b51c 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -26,18 +26,18 @@ Literal_Token literal_tokens[] = { #define literal_tokens_count (sizeof(literal_tokens)/sizeof(literal_tokens[0])) const char *cKeywords[] = { - "auto", "break", "case", "char", "const", "continue", "default", "do", "double", - "else", "enum", "extern", "float", "for", "goto", "if", "int", "long", "register", - "return", "short", "signed", "sizeof", "static", "struct", "switch", "typedef", - "union", "unsigned", "void", "volatile", "while", "alignas", "alignof", "and", + "auto", "break", "case", "const", "continue", "default", "do", + "else", "enum", "extern", "for", "goto", "if", "int", "register", + "return", "sizeof", "static", "struct", "switch", "typedef", + "union", "volatile", "while", "alignas", "alignof", "and", "and_eq", "asm", "atomic_cancel", "atomic_commit", "atomic_noexcept", "bitand", - "bitor", "bool", "catch", "char16_t", "char32_t", "char8_t", "class", "co_await", + "bitor", "catch", "char16_t", "char32_t", "char8_t", "class", "co_await", "co_return", "co_yield", "compl", "concept", "const_cast", "consteval", "constexpr", - "constinit", "decltype", "delete", "dynamic_cast", "explicit", "export", "false", + "constinit", "decltype", "delete", "dynamic_cast", "explicit", "export", "friend", "inline", "mutable", "namespace", "new", "noexcept", "not", "not_eq", "nullptr", "operator", "or", "or_eq", "private", "protected", "public", "reflexpr", "reinterpret_cast", "requires", "static_assert", "static_cast", "synchronized", - "template", "this", "thread_local", "throw", "true", "try", "typeid", "typename", + "template", "this", "thread_local", "throw", "try", "typeid", "typename", "using", "virtual", "wchar_t", "xor", "xor_eq", }; @@ -47,7 +47,7 @@ const char *cKeywords[] = { const char *cTypeKeywords[] = { "char", "double", "float", "int", "long", "short", "signed", "unsigned", "void", - "_Bool", "_Complex", "_Imaginary", "bool" + "_Bool", "_Complex", "_Imaginary", "bool", "Vec4f" }; diff --git a/src/main.c b/src/main.c index e0ce8e34..c49d1e25 100644 --- a/src/main.c +++ b/src/main.c @@ -168,6 +168,8 @@ void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas * + + // TODO tomove bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length) { size_t start = cursor; @@ -221,7 +223,6 @@ void getDirectoryFromFilePath(const char *filePath, char *directory) { } } -// Function to open a local include file Errno openLocalIncludeFile(Editor *editor, const char *includePath) { char fullPath[512]; // Buffer for the full path char directory[256]; // Buffer for the directory @@ -243,6 +244,62 @@ Errno openLocalIncludeFile(Editor *editor, const char *includePath) { return 0; } +bool extractGlobalIncludePath(Editor *editor, char *includePath) { + char line[512]; + if (!extractLine(editor, editor->cursor, line, sizeof(line))) { + return false; + } + + if (strncmp(line, "#include <", 10) == 0) { + char *start = strchr(line, '<') + 1; + char *end = strrchr(line, '>'); + if (start && end && start < end) { + size_t length = end - start; + strncpy(includePath, start, length); + includePath[length] = '\0'; + return true; + } + } + + return false; +} + + +Errno openGlobalIncludeFile(Editor *editor, const char *includePath) { + char fullPath[512]; // Buffer for the full path + + // List of standard directories (expandable) + const char *standardDirs[] = {"/usr/include", NULL}; // NULL terminated array + + for (int i = 0; standardDirs[i] != NULL; i++) { + snprintf(fullPath, sizeof(fullPath), "%s/%s", standardDirs[i], includePath); + + // Try to load the file using the constructed full path + Errno load_err = editor_load_from_file(editor, fullPath); + if (load_err == 0) { + printf("Opened file: %s\n", fullPath); + return 0; // File opened successfully + } + } + + fprintf(stderr, "Error: File %s not found in standard directories\n", includePath); + return -1; // File not found in standard directories +} + +void editor_open_include(Editor *editor) { + char includePath[256]; + + if (extractLocalIncludePath(editor, includePath)) { + openLocalIncludeFile(editor, includePath); + } else if (extractGlobalIncludePath(editor, includePath)) { + openGlobalIncludeFile(editor, includePath); + } +} + + + + + @@ -685,17 +742,15 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { SDL_Event tmpEvent; // Declare once at the beginning of the switch block - case SDLK_RETURN: { - if (editor.searching) { - editor_stop_search_and_mark(&editor); - current_mode = NORMAL; - } else { - char includePath[256]; - if (extractLocalIncludePath(&editor, includePath)) { - openLocalIncludeFile(&editor, includePath); - } - } - } break; + case SDLK_RETURN: { + if (editor.searching) { + editor_stop_search_and_mark(&editor); + current_mode = NORMAL; + } else { + editor_open_include(&editor); + } + } break; + case SDLK_ESCAPE: { editor_clear_mark(&editor); diff --git a/todo.org b/todo.org index 47c41742..e9d459a9 100644 --- a/todo.org +++ b/todo.org @@ -16,6 +16,8 @@ to get user input for anything and everything popups are for loosers ** Minimap code minimap from scratch ** Lexer +NULL [] +multi line comments [] syntax highlighting for : | || & && [x] highlight links [x] line under links [] @@ -37,6 +39,8 @@ render circles (for whitespaces) [] opening a file with ded file.c that contain a function definition, trow a [1] 35755 segmentation fault (core dumped) ** Editor +goto definition (a dumb version later i will integrate lsp)[] +Togglable emacs like scroll for when animations are disabled [] ivy for everything [] imenu for function definition jump [] sub-pixel antialiasing [] From 321382949d6e4a9a11f6f6788ded782bc77a1225 Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 12 Jan 2024 16:40:18 +0100 Subject: [PATCH 53/74] Refactor --- build.sh | 4 +- src/buffer.c | 94 ++++ src/buffer.h | 16 + src/editor.c | 1291 +------------------------------------------------- src/editor.h | 37 +- src/evil.c | 373 +++++++++++++++ src/evil.h | 28 ++ src/main.c | 199 +++++--- src/render.c | 846 +++++++++++++++++++++++++++++++++ src/render.h | 13 + src/repl.c | 47 -- src/repl.h | 18 - todo.org | 41 +- 13 files changed, 1553 insertions(+), 1454 deletions(-) create mode 100644 src/buffer.c create mode 100644 src/buffer.h create mode 100644 src/evil.c create mode 100644 src/evil.h create mode 100644 src/render.c create mode 100644 src/render.h delete mode 100644 src/repl.c delete mode 100644 src/repl.h diff --git a/build.sh b/build.sh index 55285498..1aac5c0b 100755 --- a/build.sh +++ b/build.sh @@ -26,8 +26,8 @@ CC="${CXX:-cc}" PKGS="sdl2 glew freetype2" CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -D_DEFAULT_SOURCE" LIBS=-lm -# SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/keychords.c" -SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/yasnippet.c" +# SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/yasnippet.c" +SRC="src/*.c" if [ `uname` = "Darwin" ]; then CFLAGS+=" -framework OpenGL" diff --git a/src/buffer.c b/src/buffer.c new file mode 100644 index 00000000..c1a33c9a --- /dev/null +++ b/src/buffer.c @@ -0,0 +1,94 @@ +#include "buffer.h" + + + +// BUFFER +// TODO switching buffers delete unsaved changes +// TODO save cursor position on each buffer + +void editor_add_to_buffer_history(Editor *e, const char *file_path) { + if (e->buffer_history_count < MAX_BUFFER_HISTORY) { + free(e->buffer_history[e->buffer_history_count]); // Free existing string if any + e->buffer_history[e->buffer_history_count] = strdup(file_path); + } + e->buffer_index = e->buffer_history_count; // Update buffer index + e->buffer_history_count++; +} + + +void editor_remove_from_buffer_history(Editor *e) { + if (e->buffer_history_count > 0) { + free(e->buffer_history[--e->buffer_history_count]); // Free the last string + } +} + + +Errno editor_open_buffer(Editor *e, const char *file_path) { + printf("Opening buffer: %s\n", file_path); + + e->data.count = 0; + Errno err = read_entire_file(file_path, &e->data); + if (err != 0) return err; + + e->cursor = 0; + editor_retokenize(e); + + e->file_path.count = 0; + sb_append_cstr(&e->file_path, file_path); + sb_append_null(&e->file_path); + + return 0; +} + +void editor_kill_buffer(Editor *e) { + if (e->buffer_history_count > 0) { + // Free the current buffer path and remove it from the history + free(e->buffer_history[e->buffer_index]); + e->buffer_history[e->buffer_index] = NULL; + + // Shift all elements after the current index down + for (int i = e->buffer_index; i < e->buffer_history_count - 1; i++) { + e->buffer_history[i] = e->buffer_history[i + 1]; + } + + // Decrease the count of buffers in the history + e->buffer_history_count--; + + // Update the buffer index to point to the previous buffer, if possible + if (e->buffer_index > 0) { + e->buffer_index--; + } + + // If there are still buffers in the history, load the previous one + if (e->buffer_history_count > 0) { + const char *prev_file_path = e->buffer_history[e->buffer_index]; + editor_open_buffer(e, prev_file_path); // Open the previous buffer without adding to history + } else { + // Handle the case when there are no more buffers in the history + // For example open a scratch buffer + } + } +} + + +void editor_previous_buffer(Editor *e) { + if (e->buffer_index > 0) { + e->buffer_index--; // Move to the previous buffer in history + const char *prev_file_path = e->buffer_history[e->buffer_index]; + editor_open_buffer(e, prev_file_path); // Open the previous buffer + } else { + // Handle case when there's no previous buffer + printf("No previous buffer available.\n"); + } +} + +void editor_next_buffer(Editor *e) { + if (e->buffer_index < e->buffer_history_count - 1) { + e->buffer_index++; // Move to the next buffer in history + const char *next_file_path = e->buffer_history[e->buffer_index]; + editor_open_buffer(e, next_file_path); // Open the next buffer + } else { + // Handle case when there's no next buffer + printf("No next buffer available.\n"); + } +} diff --git a/src/buffer.h b/src/buffer.h new file mode 100644 index 00000000..9cea9e8f --- /dev/null +++ b/src/buffer.h @@ -0,0 +1,16 @@ +#ifndef BUFFER_H +#define BUFFER_H + +#include "editor.h" + +// BUFFER +void editor_add_to_buffer_history(Editor *e, const char *file_path); +void editor_remove_from_buffer_history(Editor *e); +Errno editor_open_buffer(Editor *e, const char *file_path); +Errno editor_open_buffer(Editor *e, const char *file_path); +void editor_kill_buffer(Editor *e); +void editor_previous_buffer(Editor *e); +void editor_next_buffer(Editor *e); + + +#endif // BUFFER_H diff --git a/src/editor.c b/src/editor.c index d3ef3b46..e80b7cac 100644 --- a/src/editor.c +++ b/src/editor.c @@ -12,6 +12,9 @@ #include "simple_renderer.h" #include // For isalnum +#include "evil.h" + + EvilMode current_mode = NORMAL; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; @@ -32,57 +35,9 @@ bool matchParenthesis = true; //TODO segfault and highlight size bool hl_line = false; bool showMinibuffer = true; +bool superDrammtic = false; -void editor_new_line_down(Editor *editor) { - size_t row = editor_cursor_row(editor); - size_t line_begin = editor->lines.items[row].begin; - size_t line_end = editor->lines.items[row].end; - - editor_move_to_line_end(editor); - editor_insert_char(editor, '\n'); - - // Copy indentation - for (size_t i = line_begin; i < line_end; ++i) { - char c = editor->data.items[i]; - if (c == ' ' || c == '\t') { - editor_insert_char(editor, c); - } else { - break; - } - } -} - -void editor_new_line_up(Editor *editor) { - size_t row = editor_cursor_row(editor); - - // Determine the current line's start and end for capturing indentation - size_t line_begin = editor->lines.items[row].begin; - size_t line_end = editor->lines.items[row].end; - - // Capture the indentation of the current line in a local array - char indentation[128]; // Assuming 128 characters is enough for indentation - size_t indentIndex = 0; - for (size_t i = line_begin; i < line_end && indentIndex < sizeof(indentation) - 1; ++i) { - char c = editor->data.items[i]; - if (c == ' ' || c == '\t') { - indentation[indentIndex++] = c; - } else { - break; - } - } - indentation[indentIndex] = '\0'; // Null-terminate the string - - // Insert a newline at the beginning of the current line - editor_move_to_line_begin(editor); - editor_insert_char(editor, '\n'); - editor_move_line_up(editor); - - // Apply the captured indentation - for (size_t i = 0; i < indentIndex; ++i) { - editor_insert_char(editor, indentation[i]); - } -} // TODO bad implementation @@ -848,835 +803,9 @@ const char *editor_line_starts_with_one_of(Editor *e, size_t row, size_t col, co return NULL; } -void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) -{ - int w, h; - SDL_GetWindowSize(window, &w, &h); - - float max_line_len = 0.0f; - - sr->resolution = vec2f(w, h); - sr->time = (float) SDL_GetTicks() / 1000.0f; - - float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; - /* Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed */ - - // Calculate the width of a whitespace character - Vec2f whitespace_size = vec2fs(0.0f); - free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespace_size); - float whitespace_width = whitespace_size.x; - - - - // Render hl_line - { - if (hl_line){ - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - - size_t currentLine = editor_cursor_row(editor); - Vec2f highlightPos = {0.0f, -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - - float highlightWidth = 8000; // Default width for the highlight - - // If showing line numbers, adjust the position and width of the highlight - if (showLineNumbers) { - highlightPos.x -= lineNumberWidth - 260; // Move highlight to the left to cover line numbers - highlightWidth += lineNumberWidth; // Increase width to include line numbers area - } - - simple_renderer_solid_rect(sr, highlightPos, vec2f(highlightWidth, FREE_GLYPH_FONT_SIZE), themes[currentThemeIndex].hl_line); - - simple_renderer_flush(sr); - } - } - - // Render anchor - if (editor->has_anchor) { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - - // Update the anchor position before rendering - editor_update_anchor(editor); - - size_t anchor_row = editor_row_from_pos(editor, editor->anchor_pos); - Line anchor_line = editor->lines.items[anchor_row]; - size_t anchor_col = editor->anchor_pos - anchor_line.begin; - - Vec2f anchor_pos_vec = vec2fs(0.0f); - anchor_pos_vec.y = -((float)anchor_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; - anchor_pos_vec.x = free_glyph_atlas_cursor_pos( - atlas, - editor->data.items + anchor_line.begin, anchor_line.end - anchor_line.begin, - vec2f(0.0, anchor_pos_vec.y), - anchor_col - ); - - // Adjust anchor position if line numbers are shown - if (showLineNumbers) { - anchor_pos_vec.x += lineNumberWidth; - } - - Vec4f ANCHOR_COLOR = themes[currentThemeIndex].anchor; - - simple_renderer_solid_rect( - sr, anchor_pos_vec, vec2f(whitespace_width, FREE_GLYPH_FONT_SIZE), - ANCHOR_COLOR); - - - simple_renderer_flush(sr); - } - - - // Render selection - - { - if (isWave){ - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - }else{ - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - if (editor->selection) { - for (size_t row = 0; row < editor->lines.count; ++row) { - size_t select_begin_chr = editor->select_begin; - size_t select_end_chr = editor->cursor; - if (select_begin_chr > select_end_chr) { - SWAP(size_t, select_begin_chr, select_end_chr); - } - - Line line_chr = editor->lines.items[row]; - - if (select_begin_chr < line_chr.begin) { - select_begin_chr = line_chr.begin; - } - - if (select_end_chr > line_chr.end) { - select_end_chr = line_chr.end; - } - - if (select_begin_chr <= select_end_chr) { - Vec2f select_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + line_chr.begin, select_begin_chr - line_chr.begin, - &select_begin_scr); - - Vec2f select_end_scr = select_begin_scr; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + select_begin_chr, select_end_chr - select_begin_chr, - &select_end_scr); - - // Adjust selection for line numbers if displayed - if (showLineNumbers) { - select_begin_scr.x += lineNumberWidth; - select_end_scr.x += lineNumberWidth; - } - - Vec4f selection_color = vec4f(.25, .25, .25, 1); - - simple_renderer_solid_rect(sr, select_begin_scr, vec2f(select_end_scr.x - select_begin_scr.x, FREE_GLYPH_FONT_SIZE), selection_color); - } - } - } - simple_renderer_flush(sr); - } - - Vec2f cursor_pos = vec2fs(0.0f); - { - size_t cursor_row = editor_cursor_row(editor); - Line line = editor->lines.items[cursor_row]; - size_t cursor_col = editor->cursor - line.begin; - cursor_pos.y = -((float)cursor_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; - cursor_pos.x = free_glyph_atlas_cursor_pos( - atlas, - editor->data.items + line.begin, line.end - line.begin, - vec2f(0.0, cursor_pos.y), - cursor_col - ); - } - - - // Render search - { - if (editor->searching) { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - Vec4f selection_color = themes[currentThemeIndex].search; // or .selection_color if that's what you named it in the struct. - - Vec2f p1 = cursor_pos; - Vec2f p2 = p1; - - free_glyph_atlas_measure_line_sized(editor->atlas, editor->search.items, editor->search.count, &p2); - - // Adjust for line numbers width if they are displayed - if (showLineNumbers) { - p1.x += lineNumberWidth; - p2.x += lineNumberWidth; - } - - simple_renderer_solid_rect(sr, p1, vec2f(p2.x - p1.x, FREE_GLYPH_FONT_SIZE), selection_color); - simple_renderer_flush(sr); - } - } - - // Render marked search result - { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - if (editor->has_mark) { - for (size_t row = 0; row < editor->lines.count; ++row) { - size_t mark_begin_chr = editor->mark_start; - size_t mark_end_chr = editor->mark_end; - - Line line_chr = editor->lines.items[row]; - if (mark_begin_chr < line_chr.begin) { - mark_begin_chr = line_chr.begin; - } - - if (mark_end_chr > line_chr.end) { - mark_end_chr = line_chr.end; - } - - if (mark_begin_chr <= mark_end_chr) { - Vec2f mark_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + line_chr.begin, mark_begin_chr - line_chr.begin, - &mark_begin_scr); - - Vec2f mark_end_scr = mark_begin_scr; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + mark_begin_chr, mark_end_chr - mark_begin_chr, - &mark_end_scr); - - // Adjust for line numbers width if they are displayed - if (showLineNumbers) { - mark_begin_scr.x += lineNumberWidth; - mark_end_scr.x += lineNumberWidth; - } - - Vec4f mark_color = themes[currentThemeIndex].marks; - simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); - } - } - } - simple_renderer_flush(sr); - } - - - - // Render line numbers - if (showLineNumbers) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); - } - - // Determine the current line number using the provided function - size_t currentLineNumber = editor_cursor_row(editor); - - // Different colors for line numbers - Vec4f defaultColor = themes[currentThemeIndex].line_numbers; - Vec4f currentLineColor = themes[currentThemeIndex].current_line_number; - - for (size_t i = 0; i < editor->lines.count; ++i) { - char lineNumberStr[10]; - - // Calculate display line number based on relative number setting - size_t displayLineNumber; - if (relativeLineNumbers) { - if (i == currentLineNumber) { - // Display the actual line number for the current line - displayLineNumber = currentLineNumber + 1; - } else { - // Show the distance from the current line for other lines - displayLineNumber = (i > currentLineNumber) ? i - currentLineNumber : currentLineNumber - i; - } - } else { - displayLineNumber = i + 1; - } - - snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", displayLineNumber); - - Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - // Decide on the color to use - Vec4f colorToUse = defaultColor; - if (highlightCurrentLineNumber && i == currentLineNumber) { - colorToUse = currentLineColor; - } - - free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, colorToUse); - } - simple_renderer_flush(sr); - } - - // Render matching parenthesis - { - if (current_mode == NORMAL || current_mode == EMACS) { - if (matchParenthesis) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - - ssize_t matching_pos = find_matching_parenthesis(editor, editor->cursor); - if (matching_pos != -1) { - size_t matching_row = editor_row_from_pos(editor, matching_pos); - - Vec2f match_pos_screen = vec2fs(0.0f); // Initialize to zero - match_pos_screen.y = -((float)matching_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; - - Line line = editor->lines.items[matching_row]; - if (matching_pos >= line.begin && matching_pos < line.end) { - // Measure the position up to the matching character - free_glyph_atlas_measure_line_sized(atlas, editor->data.items + line.begin, matching_pos - line.begin, &match_pos_screen); - - // Measure the width of the actual character at the matching position - Vec2f char_end_pos = match_pos_screen; - free_glyph_atlas_measure_line_sized(atlas, editor->data.items + matching_pos, 1, &char_end_pos); - float char_width = char_end_pos.x - match_pos_screen.x; - - // Adjust for line numbers if displayed - if (showLineNumbers) { - match_pos_screen.x += lineNumberWidth; - } - - // Define the size of the highlight rectangle to match character size - Vec2f rect_size = vec2f(char_width, FREE_GLYPH_FONT_SIZE); - - simple_renderer_solid_rect(sr, match_pos_screen, rect_size, themes[currentThemeIndex].matching_parenthesis); - } - } - } - simple_renderer_flush(sr); - } - } - - - // Render text - { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); - } - for (size_t i = 0; i < editor->tokens.count; ++i) { - Token token = editor->tokens.items[i]; - Vec2f pos = token.position; - //Vec4f color = vec4fs(1); - // TODO match color for open and close - Vec4f color = themes[currentThemeIndex].text; - - // Adjust for line numbers width if they are displayed - if (showLineNumbers) { - pos.x += lineNumberWidth; - } - - switch (token.kind) { - case TOKEN_PREPROC: - if (token.text_len >= 7 && token.text[0] == '#') { // Check if it's likely a hex color - bool valid_hex = true; - for (size_t j = 1; j < 7 && valid_hex; ++j) { - if (!is_hex_digit(token.text[j])) { - valid_hex = false; - } - } - - if (valid_hex) { - unsigned int hex_value; - if(sscanf(token.text, "#%06x", &hex_value) == 1) { - color = hex_to_vec4f(hex_value); - } else { - color = themes[currentThemeIndex].hashtag; // Default to the hashtag color if not a valid hex - } - } else { - color = themes[currentThemeIndex].hashtag; // Not a valid hex color - } - } else { - color = themes[currentThemeIndex].hashtag; // Default color for preprocessor directives - } - break; - - case TOKEN_KEYWORD: - color = themes[currentThemeIndex].logic; - break; - - case TOKEN_TYPE: - color = themes[currentThemeIndex].type; - break; - - case TOKEN_FUNCTION_DEFINITION: - color = themes[currentThemeIndex].function_definition; - break; - - case TOKEN_LINK: - color = themes[currentThemeIndex].link; - break; - - case TOKEN_OR: - color = themes[currentThemeIndex].logic_or; - break; - - case TOKEN_PIPE: - color = themes[currentThemeIndex].pipe; - break; - - case TOKEN_AND: - color = themes[currentThemeIndex].logic_and; - break; - - case TOKEN_AMPERSAND: - color = themes[currentThemeIndex].ampersand; - break; - - case TOKEN_POINTER: - color = themes[currentThemeIndex].pointer; - break; - - case TOKEN_MULTIPLICATION: - color = themes[currentThemeIndex].multiplication; - break; - - case TOKEN_COMMENT: - { - color = themes[currentThemeIndex].comment; - - // Checking for TODOOOO... - char* todoLoc = strstr(token.text, "TODO"); - if (todoLoc && (size_t)(todoLoc - token.text + 3) < token.text_len) { - - size_t numOs = 0; - char* ptr = todoLoc + 4; // Start right after "TODO" - - // Count 'O's without crossing token boundary - while ((size_t)(ptr - token.text) < token.text_len && (*ptr == 'O' || *ptr == 'o')) { - - numOs++; - ptr++; - } - - Vec4f baseColor = themes[currentThemeIndex].todo; - float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of TODOOOOO - - color.x = baseColor.x + deltaRed * numOs; - color.y = baseColor.y * (1 - 0.2 * numOs); - color.z = baseColor.z * (1 - 0.2 * numOs); - color.w = baseColor.w; - } - - // Checking for FIXMEEEE... - char* fixmeLoc = strstr(token.text, "FIXME"); - if (fixmeLoc && (size_t)(fixmeLoc - token.text + 4) < token.text_len) { - - size_t numEs = 0; - char* ptr = fixmeLoc + 5; // Start right after "FIXME" - - // Count 'E's without crossing token boundary - while ((size_t)(ptr - token.text) < token.text_len && (*ptr == 'E' || *ptr == 'e')) { - - numEs++; - ptr++; - } - - Vec4f baseColor = themes[currentThemeIndex].fixme; - float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of FIXMEEEE - - color.x = baseColor.x + deltaRed * numEs; - color.y = baseColor.y * (1 - 0.2 * numEs); - color.z = baseColor.z * (1 - 0.2 * numEs); - color.w = baseColor.w; - } - - // Checking for BUG... - char* bugLoc = strstr(token.text, "BUG"); - if (bugLoc && (size_t)(bugLoc - token.text + 2) < token.text_len) { - - color = themes[currentThemeIndex].bug; - } - - - // Checking for NOTE... - char* noteLoc = strstr(token.text, "NOTE"); - if (noteLoc && (size_t)(noteLoc - token.text + 3) < token.text_len) { - - color = themes[currentThemeIndex].note; - } - - // Continue rendering with - } - break; - - - case TOKEN_EQUALS: - color = themes[currentThemeIndex].equals; - break; - - case TOKEN_EXCLAMATION: - color = themes[currentThemeIndex].exclamation; - break; - - case TOKEN_NOT_EQUALS: - color = themes[currentThemeIndex].not_equals; - break; - - case TOKEN_EQUALS_EQUALS: - color = themes[currentThemeIndex].equals_equals; - break; - - - case TOKEN_LESS_THAN: - color = themes[currentThemeIndex].less_than; - break; - - case TOKEN_GREATER_THAN: - color = themes[currentThemeIndex].greater_than; - break; - case TOKEN_ARROW: - color = themes[currentThemeIndex].arrow; - break; - - case TOKEN_MINUS: - color = themes[currentThemeIndex].minus; - break; - - case TOKEN_PLUS: - color = themes[currentThemeIndex].plus; - break; - - case TOKEN_TRUE: - color = themes[currentThemeIndex].truee; - break; - case TOKEN_FALSE: - color = themes[currentThemeIndex].falsee; - break; - case TOKEN_OPEN_SQUARE: - color = themes[currentThemeIndex].open_square; - break; - case TOKEN_CLOSE_SQUARE: - color = themes[currentThemeIndex].close_square; - break; - case TOKEN_ARRAY_CONTENT: - color = themes[currentThemeIndex].array_content; - break; - case TOKEN_BAD_SPELLCHECK: - color = themes[currentThemeIndex].bug; - break; - case TOKEN_STRING: - /* color = hex_to_vec4f(0x73c936ff); */ - color = themes[currentThemeIndex].string; - break; - case TOKEN_COLOR: // Added case for TOKEN_COLOR - { - unsigned long long hex_value; - if(sscanf(token.text, "0x%llx", &hex_value) == 1) { - color = hex_to_vec4f((uint32_t)hex_value); - } - } - break; - default: - {} - } - - - free_glyph_atlas_render_line_sized(atlas, sr, token.text, token.text_len, &pos, color); - // TODO: the max_line_len should be calculated based on what's visible on the screen right now - if (max_line_len < pos.x) max_line_len = pos.x; - } - simple_renderer_flush(sr); - } - - - - // WHITESPACES - { - if (showWhitespaces) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - - float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; - - for (size_t i = 0; i < editor->lines.count; ++i) { - Line line = editor->lines.items[i]; - Vec2f pos = { 0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE }; - - if (showLineNumbers) { - pos.x += lineNumberWidth; - } - - for (size_t j = line.begin; j < line.end; ++j) { - if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { - /* Vec4f whitespaceColor = vec4f(1, 0, 0, 1); // Red color for visibility */ - - Vec4f backgroundColor = themes[currentThemeIndex].background; - Vec4f whitespaceColor; - - // Increase each RGB component by 70%, but not above 1 - whitespaceColor.x = backgroundColor.x + 0.7 * (1 - backgroundColor.x); - whitespaceColor.y = backgroundColor.y + 0.7 * (1 - backgroundColor.y); - whitespaceColor.z = backgroundColor.z + 0.7 * (1 - backgroundColor.z); - - // Clamp values to max 1.0 - whitespaceColor.x = whitespaceColor.x > 1 ? 1 : whitespaceColor.x; - whitespaceColor.y = whitespaceColor.y > 1 ? 1 : whitespaceColor.y; - whitespaceColor.z = whitespaceColor.z > 1 ? 1 : whitespaceColor.z; - - // Keep the alpha value the same - whitespaceColor.w = backgroundColor.w; - - // Measure the actual character width - Vec2f char_pos = pos; - char_pos.x += (j - line.begin) * squareSize; // Starting position for this character - free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); - float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; - - Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; - simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); - } - } - } - simple_renderer_flush(sr); - } - } - - - // Render minibuffer - { - if (showMinibuffer) { - simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); - simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){1920, 21.0f}, CURRENT_THEME.minibuffer); - simple_renderer_flush(sr); - } - } - - - // Render cursor - if(editor->searching){ - simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); - }else if (isWave){ - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - }else{ - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - - { - // Adjust cursor position if line numbers are shown - if (showLineNumbers) { - cursor_pos.x += lineNumberWidth; - } - - // Constants and Default Settings - float CURSOR_WIDTH; - const Uint32 CURSOR_BLINK_THRESHOLD = 500; - const Uint32 CURSOR_BLINK_PERIOD = 1000; - const Uint32 t = SDL_GetTicks() - editor->last_stroke; - Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; - float BORDER_THICKNESS = 3.0f; - Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); - - sr->verticies_count = 0; - - // If editor has a mark, make the cursor transparent - if (editor->has_mark) { - CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) - } - - // Rendering based on mode - switch (current_mode) { - - case NORMAL: { - float cursor_width; - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - cursor_width = whitespace_width; - } - - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); - } break; - - case EMACS: { - float cursor_width; - CURSOR_COLOR = themes[currentThemeIndex].emacs_cursor; - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - cursor_width = whitespace_width; - } - - // Implement blinking for EMACS mode - if (t < CURSOR_BLINK_THRESHOLD || - (t / CURSOR_BLINK_PERIOD) % 2 != 0) { - simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); - } - } break; - - - case INSERT: - CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; - CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode - // Implement blinking for INSERT mode - if (t < CURSOR_BLINK_THRESHOLD || - (t / CURSOR_BLINK_PERIOD) % 2 != 0) { - simple_renderer_solid_rect( - sr, cursor_pos, - vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); - } - break; - - case VISUAL: { - float cursor_width; - - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, 1, - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized(atlas, "a", 1, - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } - - // Draw inner rectangle - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x + BORDER_THICKNESS, - cursor_pos.y + BORDER_THICKNESS), - vec2f(cursor_width - 2 * BORDER_THICKNESS, - FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), - INNER_COLOR); - - // Draw the outline (borders) using the theme's cursor color - simple_renderer_solid_rect(sr, cursor_pos, - vec2f(cursor_width, BORDER_THICKNESS), - CURSOR_COLOR); // Top border - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x, - cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), - vec2f(cursor_width, BORDER_THICKNESS), - CURSOR_COLOR); // Bottom border - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); // Left border - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x + cursor_width - BORDER_THICKNESS, - cursor_pos.y), - vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); // Right border - - break; - } - - case VISUAL_LINE: - // Set the cursor width to cover the entire height of the line - CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE; - - // Adjust cursor color for visual distinction. For instance, make it - // slightly transparent - Vec4f TRANSPARENT_CURSOR_COLOR = - vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, - 0.5f); // 50% transparency - - // Render the cursor for the entire line - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), - TRANSPARENT_CURSOR_COLOR); - - // If you'd like to add additional visual cues, consider adding a - // border or some other distinguishing feature. - break; - } - simple_renderer_flush(sr); - } - - // Update camera - { - if (isAnimated) { - - if (max_line_len > 1000.0f) { - max_line_len = 1000.0f; - } - - float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 - - Vec2f target = cursor_pos; - float offset = 0.0f; - - if (target_scale > 3.0f) { - target_scale = 3.0f; - } else { - offset = cursor_pos.x - w/3/sr->camera_scale; - if (offset < 0.0f) offset = 0.0f; - target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); - } - - sr->camera_vel = vec2f_mul( - vec2f_sub(target, sr->camera_pos), - vec2fs(2.0f)); - sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; - - sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); - sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; - - } else { - sr->camera_scale = 0.24f; // Set the zoom level to 0.24 - - // Static flag to ensure initial camera position is set only once - static bool hasSetInitialPosition = false; - - // If the initial position hasn't been set, set it now - if (!hasSetInitialPosition) { - sr->camera_pos.x = 3850.0f; // Set the x-position - sr->camera_pos.y = -2000.0f; // Set the initial y-position - hasSetInitialPosition = true; - } else { - // Calculate the vertical position of the cursor in world coordinates. - int currentLine = editor_cursor_row(editor); - float cursorPosY = -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; - - // Define the top and bottom edges of the current camera view. - float cameraTopEdge = sr->camera_pos.y - (h/2.0f) / sr->camera_scale; - float cameraBottomEdge = sr->camera_pos.y + (h/2.0f) / sr->camera_scale; - - // Adjust the camera's Y position if the cursor is outside the viewport. - if (cursorPosY > cameraBottomEdge) { - sr->camera_pos.y += cursorPosY - cameraBottomEdge; // Move camera down just enough - } else if (cursorPosY < cameraTopEdge) { - sr->camera_pos.y -= cameraTopEdge - cursorPosY; // Move camera up just enough - } - - // Keeping the x-position fixed as per the previous logic - sr->camera_pos.x = 3850.0f; - } - } - } -} void editor_clipboard_copy(Editor *e) { @@ -1709,67 +838,13 @@ void editor_clipboard_paste(Editor *e) SDL_free(text); } -void editor_cut_char_under_cursor(Editor *e) { - if (e->searching) return; - - if (e->cursor >= e->data.count) return; - - // 1. Copy the character to clipboard. - e->clipboard.count = 0; - sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); - sb_append_null(&e->clipboard); - if (SDL_SetClipboardText(e->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - - // 2. Delete the character from the editor. - memmove( - &e->data.items[e->cursor], - &e->data.items[e->cursor + 1], - (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) - ); - e->data.count -= 1; - editor_retokenize(e); -} - -// VISUAL selection TODO - -void editor_start_visual_selection(Editor *e) { - e->selection = true; - - // Identify the current line the cursor is on - size_t cursor_row = editor_cursor_row(e); - Line current_line = e->lines.items[cursor_row]; - - // If in VISUAL_LINE mode, adjust the selection to span the entire line - if (current_mode == VISUAL_LINE) { - e->select_begin = current_line.begin; - - // Set the cursor to the end of the current line to span the whole line - e->cursor = current_line.end; - } else { - e->select_begin = e->cursor; - } -} - -void editor_start_visual_line_selection(Editor *e) { - e->selection = true; - - // Identify the current line the cursor is on - size_t cursor_row = editor_cursor_row(e); - Line current_line = e->lines.items[cursor_row]; - - // Set the beginning and end of the selection to span the entire line - e->select_begin = current_line.begin; - e->cursor = current_line.end; -} void editor_update_selection(Editor *e, bool shift) { if (e->searching) return; if (current_mode == VISUAL) { if (!e->selection) { - editor_start_visual_selection(e); + evil_visual_char(e); } // If you want the selection to end when you leave VISUAL mode, // you will need to handle that logic elsewhere (perhaps where mode changes are managed). @@ -1783,6 +858,9 @@ void editor_update_selection(Editor *e, bool shift) { } } + + + // search void editor_start_search(Editor *e) { @@ -1823,8 +901,6 @@ void editor_clear_mark(Editor *editor) { editor->mark_end = 0; // or some other appropriate default value } - - bool editor_search_matches_at(Editor *e, size_t pos) { if (e->data.count - pos < e->search.count) return false; @@ -1836,57 +912,6 @@ bool editor_search_matches_at(Editor *e, size_t pos) return true; } -void editor_search_next(Editor *e) { - size_t startPos = e->cursor + 1; - for (size_t pos = startPos; pos < e->data.count; ++pos) { - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } - - // If not found in the remainder of the text, wrap around to the beginning - for (size_t pos = 0; pos < startPos; ++pos) { - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } -} - -void editor_search_previous(Editor *e) { - if (e->cursor == 0) { - // If we are at the beginning of the file, wrap around immediately - for (size_t pos = e->data.count - 1; pos != SIZE_MAX; --pos) { // Note the loop condition - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } - } else { - for (size_t pos = e->cursor - 1; pos != SIZE_MAX; --pos) { // Note the loop condition - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } - - // If not found in the preceding text, wrap around to the end - for (size_t pos = e->data.count - 1; pos > e->cursor; --pos) { - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } - } -} - - @@ -2023,63 +1048,6 @@ void editor_backward_kill_word(Editor *e) { -// TODO when there is a {} dont add the space -void editor_join_lines(Editor *e) { - size_t row = editor_cursor_row(e); - if (row >= e->lines.count - 1) return; // Exit if on the last line - - // Get the current line and the next line - size_t current_line_end = e->lines.items[row].end; - size_t next_line_begin = e->lines.items[row + 1].begin; - size_t next_line_end = e->lines.items[row + 1].end; - - - // Check if the current line is empty or only has whitespaces - bool only_whitespaces = true; - for (size_t i = e->lines.items[row].begin; i < current_line_end; ++i) { - if (!isspace(e->data.items[i])) { - only_whitespaces = false; - break; - } - } - - if (only_whitespaces) { - // Current line is empty or has only whitespaces, delete the line - size_t length_to_move = e->data.count - current_line_end; - memmove(&e->data.items[e->lines.items[row].begin], - &e->data.items[next_line_begin], - length_to_move); - e->data.count -= (next_line_begin - e->lines.items[row].begin); - editor_retokenize(e); - return; - } - - // Check if the current line ends in a newline character - if (e->data.items[current_line_end] == '\n') { - // Skip leading spaces on the next line - while (next_line_begin < next_line_end && - isspace(e->data.items[next_line_begin])) { - next_line_begin++; - } - - // Calculate the length to move in memmove - size_t length_to_move = e->data.count - next_line_begin; - - // Move the data from the next line start to the current line end - memmove(&e->data.items[current_line_end + 1], - &e->data.items[next_line_begin], - length_to_move); - - // Adjust the total count of characters in the buffer - e->data.count -= (next_line_begin - current_line_end - 1); - - // Insert a single space to separate the lines - e->data.items[current_line_end] = ' '; - } - - editor_retokenize(e); -} - bool editor_is_line_empty(Editor *e, size_t row) { @@ -2103,110 +1071,6 @@ bool editor_is_line_whitespaced(Editor *e, size_t row) { } - -void editor_yank_line(Editor* editor) { - size_t start = editor->cursor; - while (start > 0 && editor->data.items[start - 1] != '\n') { - start--; - } - - size_t end = start; - while (end < editor->data.count && editor->data.items[end] != '\n') { - end++; - } - - if (start < end) { - editor->clipboard.count = 0; - sb_append_buf(&editor->clipboard, &editor->data.items[start], end - start); - sb_append_null(&editor->clipboard); - - if (SDL_SetClipboardText(editor->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - } - copiedLine = true; -} - -void editor_paste_line_after(Editor* editor) { - if (!copiedLine) { - return; // Do nothing if no line has been copied - } - - char *text = SDL_GetClipboardText(); - if (!text) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - return; - } - - size_t text_len = strlen(text); - if (text_len > 0) { - // Find the end of the current line - size_t end = editor->cursor; - while (end < editor->data.count && editor->data.items[end] != '\n') { - end++; - } - - // If not at the end of the file, move to the start of the next line - if (end < editor->data.count) { - end++; - } - - // Insert the text from the clipboard - editor_insert_buf_at(editor, text, text_len, end); - - // If the pasted text does not end with a newline, add one - if (text[text_len - 1] != '\n') { - editor_insert_buf_at(editor, "\n", 1, end + text_len); - } - - // Move cursor to the first non-space character of the pasted line - editor->cursor = end; - while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { - editor->cursor++; - } - } - - SDL_free(text); -} - -void editor_paste_line_before(Editor* editor) { - if (!copiedLine) { - return; // Do nothing if no line has been copied - } - - char *text = SDL_GetClipboardText(); - if (!text) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - return; - } - - size_t text_len = strlen(text); - if (text_len > 0) { - // Find the start of the current line - size_t start = editor->cursor; - while (start > 0 && editor->data.items[start - 1] != '\n') { - start--; - } - - // Insert the text from the clipboard at the start of the line - editor_insert_buf_at(editor, text, text_len, start); - - // Optionally, insert a newline after pasting if the text doesn't end with one - if (text[text_len - 1] != '\n') { - editor_insert_buf_at(editor, "\n", 1, start + text_len); - } - - // Move cursor to the first non-space character of the pasted line - editor->cursor = start; - while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { - editor->cursor++; - } - } - - SDL_free(text); -} - - ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos) { // Ensure the cursor position is within the valid range if (cursor_pos >= editor->data.count) return -1; @@ -2256,49 +1120,6 @@ size_t editor_row_from_pos(const Editor *e, size_t pos) { return e->lines.count - 1; } -void editor_jump_to_matching_parenthesis(Editor *editor) { - if (editor->cursor >= editor->data.count) return; - - ssize_t matching_pos = find_matching_parenthesis(editor, editor->cursor); - if (matching_pos != -1) { - // Move the cursor to the matching parenthesis - editor->cursor = matching_pos; - } -} - -void evil_jump_item(Editor *editor) { - if (editor->cursor >= editor->data.count) return; - - char current_char = editor->data.items[editor->cursor]; - ssize_t matching_pos = -1; - - // Check if the current cursor position is a parenthesis - if (strchr("()[]{}", current_char)) { - matching_pos = find_matching_parenthesis(editor, editor->cursor); - } else { - // If not, search for a parenthesis on the current line - size_t row = editor_cursor_row(editor); - size_t line_begin = editor->lines.items[row].begin; - size_t line_end = editor->lines.items[row].end; - - for (size_t pos = line_begin; pos < line_end; ++pos) { - current_char = editor->data.items[pos]; - if (strchr("()[]{}", current_char)) { - matching_pos = find_matching_parenthesis(editor, pos); - if (matching_pos != -1) { - break; - } - } - } - } - - // Move the cursor to the matching parenthesis - if (matching_pos != -1) { - editor->cursor = matching_pos; - } -} - - //TODO BUG void editor_enter(Editor *e) { if (e->searching) { @@ -2353,7 +1174,7 @@ void editor_enter(Editor *e) { // start of the buffer, requiring updates on text changes. To simplify, we now // track two indices (start and end of buffer). The anchor position self-adjusts // based on cursor's relative position, ensuring correct placement without -// modifying all text-manipulating functions. +// modifying all text-manipulating functions still a dumb implementation. void editor_set_anchor(Editor *editor) { if (editor->cursor < editor->data.count) { @@ -2477,97 +1298,3 @@ void editor_drag_line_up(Editor *editor) { // Retokenize editor_retokenize(editor); } - - - -// BUFFERS -// TODO switching buffers delete unsaved changes -// TODO save cursor position on each buffer - -void editor_add_to_buffer_history(Editor *e, const char *file_path) { - if (e->buffer_history_count < MAX_BUFFER_HISTORY) { - free(e->buffer_history[e->buffer_history_count]); // Free existing string if any - e->buffer_history[e->buffer_history_count] = strdup(file_path); - } - e->buffer_index = e->buffer_history_count; // Update buffer index - e->buffer_history_count++; -} - - -void editor_remove_from_buffer_history(Editor *e) { - if (e->buffer_history_count > 0) { - free(e->buffer_history[--e->buffer_history_count]); // Free the last string - } -} - - -Errno editor_open_buffer(Editor *e, const char *file_path) { - printf("Opening buffer: %s\n", file_path); - - e->data.count = 0; - Errno err = read_entire_file(file_path, &e->data); - if (err != 0) return err; - - e->cursor = 0; - editor_retokenize(e); - - e->file_path.count = 0; - sb_append_cstr(&e->file_path, file_path); - sb_append_null(&e->file_path); - - return 0; -} - -void editor_kill_buffer(Editor *e) { - if (e->buffer_history_count > 0) { - // Free the current buffer path and remove it from the history - free(e->buffer_history[e->buffer_index]); - e->buffer_history[e->buffer_index] = NULL; - - // Shift all elements after the current index down - for (int i = e->buffer_index; i < e->buffer_history_count - 1; i++) { - e->buffer_history[i] = e->buffer_history[i + 1]; - } - - // Decrease the count of buffers in the history - e->buffer_history_count--; - - // Update the buffer index to point to the previous buffer, if possible - if (e->buffer_index > 0) { - e->buffer_index--; - } - - // If there are still buffers in the history, load the previous one - if (e->buffer_history_count > 0) { - const char *prev_file_path = e->buffer_history[e->buffer_index]; - editor_open_buffer(e, prev_file_path); // Open the previous buffer without adding to history - } else { - // Handle the case when there are no more buffers in the history - // For example open a scratch buffer - } - } -} - - -void editor_previous_buffer(Editor *e) { - if (e->buffer_index > 0) { - e->buffer_index--; // Move to the previous buffer in history - const char *prev_file_path = e->buffer_history[e->buffer_index]; - editor_open_buffer(e, prev_file_path); // Open the previous buffer - } else { - // Handle case when there's no previous buffer - printf("No previous buffer available.\n"); - } -} - -void editor_next_buffer(Editor *e) { - if (e->buffer_index < e->buffer_history_count - 1) { - e->buffer_index++; // Move to the next buffer in history - const char *next_file_path = e->buffer_history[e->buffer_index]; - editor_open_buffer(e, next_file_path); // Open the next buffer - } else { - // Handle case when there's no next buffer - printf("No next buffer available.\n"); - } -} - diff --git a/src/editor.h b/src/editor.h index 1239e6cc..0b84a7eb 100644 --- a/src/editor.h +++ b/src/editor.h @@ -158,38 +158,30 @@ void editor_move_paragraph_down(Editor *e); void editor_insert_char(Editor *e, char x); void editor_insert_buf(Editor *e, char *buf, size_t buf_len); void editor_retokenize(Editor *e); -void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); void editor_update_selection(Editor *e, bool shift); void editor_clipboard_copy(Editor *e); void editor_clipboard_paste(Editor *e); + + + void editor_start_search(Editor *e); void editor_stop_search(Editor *e); bool editor_search_matches_at(Editor *e, size_t pos); + // ADDED +void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); void editor_stop_search_and_mark(Editor *e); -void editor_search_next(Editor *e); -void editor_search_previous(Editor *e); void editor_clear_mark(Editor *editor); void move_camera(Simple_Renderer *sr, const char* direction, float amount); bool extractWordUnderCursor(Editor *editor, char *word); -void editor_start_visual_selection(Editor *e); -void editor_start_visual_line_selection(Editor *e); -void editor_cut_char_under_cursor(Editor *e); -void editor_new_line_down(Editor *editor); -void editor_new_line_up(Editor *editor); + void editor_kill_line(Editor *e); void editor_backward_kill_word(Editor *e); -void editor_join_lines(Editor *e); bool editor_is_line_empty(Editor *e, size_t row); bool editor_is_line_whitespaced(Editor *e, size_t row); -void editor_yank_line(Editor *editor); -void editor_paste_line_after(Editor *editor); -void editor_paste_line_before(Editor* editor); ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); size_t editor_row_from_pos(const Editor *e, size_t pos); -void editor_jump_to_matching_parenthesis(Editor *editor); -void evil_jump_item(Editor *editor); void editor_enter(Editor *e); void editor_set_anchor(Editor *editor); @@ -198,17 +190,11 @@ void editor_update_anchor(Editor *editor); void editor_drag_line_down(Editor *editor); void editor_drag_line_up(Editor *editor); -/* size_t editor_determine_anchor_position(const Editor *editor); */ -void editor_add_to_buffer_history(Editor *e, const char *file_path); -void editor_remove_from_buffer_history(Editor *e); -Errno editor_open_buffer(Editor *e, const char *file_path); -Errno editor_open_buffer(Editor *e, const char *file_path); -void editor_kill_buffer(Editor *e); -void editor_previous_buffer(Editor *e); -void editor_next_buffer(Editor *e); -void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); + + + @@ -220,6 +206,11 @@ extern bool isWave; extern bool showWhitespaces; extern bool copiedLine; extern bool hl_line; +extern bool relativeLineNumbers; +extern bool highlightCurrentLineNumber; +extern bool matchParenthesis; +extern bool showMinibuffer; +extern bool superDrammtic; // THEME extern Theme themes[]; diff --git a/src/evil.c b/src/evil.c new file mode 100644 index 00000000..fb44f2f7 --- /dev/null +++ b/src/evil.c @@ -0,0 +1,373 @@ +#include "evil.h" + +void evil_open_below(Editor *editor) { + size_t row = editor_cursor_row(editor); + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + + editor_move_to_line_end(editor); + editor_insert_char(editor, '\n'); + + // Copy indentation + for (size_t i = line_begin; i < line_end; ++i) { + char c = editor->data.items[i]; + if (c == ' ' || c == '\t') { + editor_insert_char(editor, c); + } else { + break; + } + } +} + +void evil_open_above(Editor *editor) { + size_t row = editor_cursor_row(editor); + + // Determine the current line's start and end for capturing indentation + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + + // Capture the indentation of the current line in a local array + char indentation[128]; // Assuming 128 characters is enough for indentation + size_t indentIndex = 0; + for (size_t i = line_begin; i < line_end && indentIndex < sizeof(indentation) - 1; ++i) { + char c = editor->data.items[i]; + if (c == ' ' || c == '\t') { + indentation[indentIndex++] = c; + } else { + break; + } + } + indentation[indentIndex] = '\0'; // Null-terminate the string + + // Insert a newline at the beginning of the current line + editor_move_to_line_begin(editor); + editor_insert_char(editor, '\n'); + editor_move_line_up(editor); + + // Apply the captured indentation + for (size_t i = 0; i < indentIndex; ++i) { + editor_insert_char(editor, indentation[i]); + } +} + +void evil_jump_item(Editor *editor) { + if (editor->cursor >= editor->data.count) return; + + char current_char = editor->data.items[editor->cursor]; + ssize_t matching_pos = -1; + + // Check if the current cursor position is a parenthesis + if (strchr("()[]{}", current_char)) { + matching_pos = find_matching_parenthesis(editor, editor->cursor); + } else { + // If not, search for a parenthesis on the current line + size_t row = editor_cursor_row(editor); + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + + for (size_t pos = line_begin; pos < line_end; ++pos) { + current_char = editor->data.items[pos]; + if (strchr("()[]{}", current_char)) { + matching_pos = find_matching_parenthesis(editor, pos); + if (matching_pos != -1) { + break; + } + } + } + } + + // Move the cursor to the matching parenthesis + if (matching_pos != -1) { + editor->cursor = matching_pos; + } +} + +// TODO when there is a {} dont add the space +void evil_join(Editor *e) { + size_t row = editor_cursor_row(e); + if (row >= e->lines.count - 1) return; // Exit if on the last line + + // Get the current line and the next line + size_t current_line_end = e->lines.items[row].end; + size_t next_line_begin = e->lines.items[row + 1].begin; + size_t next_line_end = e->lines.items[row + 1].end; + + + // Check if the current line is empty or only has whitespaces + bool only_whitespaces = true; + for (size_t i = e->lines.items[row].begin; i < current_line_end; ++i) { + if (!isspace(e->data.items[i])) { + only_whitespaces = false; + break; + } + } + + if (only_whitespaces) { + // Current line is empty or has only whitespaces, delete the line + size_t length_to_move = e->data.count - current_line_end; + memmove(&e->data.items[e->lines.items[row].begin], + &e->data.items[next_line_begin], + length_to_move); + e->data.count -= (next_line_begin - e->lines.items[row].begin); + editor_retokenize(e); + return; + } + + // Check if the current line ends in a newline character + if (e->data.items[current_line_end] == '\n') { + // Skip leading spaces on the next line + while (next_line_begin < next_line_end && + isspace(e->data.items[next_line_begin])) { + next_line_begin++; + } + + // Calculate the length to move in memmove + size_t length_to_move = e->data.count - next_line_begin; + + // Move the data from the next line start to the current line end + memmove(&e->data.items[current_line_end + 1], + &e->data.items[next_line_begin], + length_to_move); + + // Adjust the total count of characters in the buffer + e->data.count -= (next_line_begin - current_line_end - 1); + + // Insert a single space to separate the lines + e->data.items[current_line_end] = ' '; + } + + editor_retokenize(e); +} + +void evil_yank_line(Editor* editor) { + size_t start = editor->cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + size_t end = start; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + if (start < end) { + editor->clipboard.count = 0; + sb_append_buf(&editor->clipboard, &editor->data.items[start], end - start); + sb_append_null(&editor->clipboard); + + if (SDL_SetClipboardText(editor->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + } + copiedLine = true; +} + +void evil_paste_after(Editor* editor) { + if (!copiedLine) { + return; // Do nothing if no line has been copied + } + + char *text = SDL_GetClipboardText(); + if (!text) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + return; + } + + size_t text_len = strlen(text); + if (text_len > 0) { + // Find the end of the current line + size_t end = editor->cursor; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + // If not at the end of the file, move to the start of the next line + if (end < editor->data.count) { + end++; + } + + // Insert the text from the clipboard + editor_insert_buf_at(editor, text, text_len, end); + + // If the pasted text does not end with a newline, add one + if (text[text_len - 1] != '\n') { + editor_insert_buf_at(editor, "\n", 1, end + text_len); + } + + // Move cursor to the first non-space character of the pasted line + editor->cursor = end; + while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { + editor->cursor++; + } + } + + SDL_free(text); +} + +void evil_paste_before(Editor* editor) { + if (!copiedLine) { + return; // Do nothing if no line has been copied + } + + char *text = SDL_GetClipboardText(); + if (!text) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + return; + } + + size_t text_len = strlen(text); + if (text_len > 0) { + // Find the start of the current line + size_t start = editor->cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + // Insert the text from the clipboard at the start of the line + editor_insert_buf_at(editor, text, text_len, start); + + // Optionally, insert a newline after pasting if the text doesn't end with one + if (text[text_len - 1] != '\n') { + editor_insert_buf_at(editor, "\n", 1, start + text_len); + } + + // Move cursor to the first non-space character of the pasted line + editor->cursor = start; + while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { + editor->cursor++; + } + } + + SDL_free(text); +} + +void evil_visual_char(Editor *e) { + e->selection = true; + + // Identify the current line the cursor is on + size_t cursor_row = editor_cursor_row(e); + Line current_line = e->lines.items[cursor_row]; + + // If in VISUAL_LINE mode, adjust the selection to span the entire line + if (current_mode == VISUAL_LINE) { + e->select_begin = current_line.begin; + + // Set the cursor to the end of the current line to span the whole line + e->cursor = current_line.end; + } else { + e->select_begin = e->cursor; + } +} + +// TODO doesn't work +void evil_visual_line(Editor *e) { + e->selection = true; + + // Identify the current line the cursor is on + size_t cursor_row = editor_cursor_row(e); + Line current_line = e->lines.items[cursor_row]; + + // Set the beginning and end of the selection to span the entire line + e->select_begin = current_line.begin; + e->cursor = current_line.end; +} + +void evil_delete_char(Editor *e) { + if (e->searching) return; + + if (e->cursor >= e->data.count) return; + + // 1. Copy the character to clipboard. + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // 2. Delete the character from the editor. + memmove( + &e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) + ); + e->data.count -= 1; + editor_retokenize(e); +} + +void evil_delete_backward_char(Editor *e) { + // If in search mode or at the start of the data, return. + if (e->searching || e->cursor == 0) return; + + // Adjust the cursor to point to the previous character. + e->cursor -= 1; + + // 1. Copy the character to clipboard. + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // 2. Delete the character from the editor. + memmove( + &e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) + ); + e->data.count -= 1; + editor_retokenize(e); +} + + + +void evil_search_next(Editor *e) { + size_t startPos = e->cursor + 1; + for (size_t pos = startPos; pos < e->data.count; ++pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + + // If not found in the remainder of the text, wrap around to the beginning + for (size_t pos = 0; pos < startPos; ++pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } +} + +void evil_search_previous(Editor *e) { + if (e->cursor == 0) { + // If we are at the beginning of the file, wrap around immediately + for (size_t pos = e->data.count - 1; pos != SIZE_MAX; --pos) { // Note the loop condition + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + } else { + for (size_t pos = e->cursor - 1; pos != SIZE_MAX; --pos) { // Note the loop condition + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + + // If not found in the preceding text, wrap around to the end + for (size_t pos = e->data.count - 1; pos > e->cursor; --pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + } +} diff --git a/src/evil.h b/src/evil.h new file mode 100644 index 00000000..693131fa --- /dev/null +++ b/src/evil.h @@ -0,0 +1,28 @@ +#ifndef EVIL_H +#define EVIL_H + +#include "editor.h" + +void evil_open_below(Editor *editor); +void evil_open_above(Editor *editor); +void evil_jump_item(Editor *editor); +void evil_jump_item(Editor *editor); +void evil_join(Editor *e); + + +void evil_yank_line(Editor *editor); +void evil_paste_after(Editor *editor); +void evil_paste_before(Editor *editor); + + +void evil_visual_char(Editor *e); +void evil_visual_line(Editor *e); +void evil_delete_char(Editor *e); +void evil_delete_backward_char(Editor *e); + + +void evil_search_next(Editor *e); +void evil_search_previous(Editor *e); + + +#endif // EVIL_H diff --git a/src/main.c b/src/main.c index c49d1e25..cb288c1c 100644 --- a/src/main.c +++ b/src/main.c @@ -19,7 +19,6 @@ #include FT_FREETYPE_H #include "./editor.h" -#include "./repl.h" #include "./file_browser.h" #include "./la.h" #include "./free_glyph.h" @@ -33,6 +32,9 @@ #include #include #include "yasnippet.h" +#include "render.h" +#include "evil.h" +#include "buffer.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) @@ -297,18 +299,6 @@ void editor_open_include(Editor *editor) { } - - - - - - - - - - - - // TODO: display errors reported via flash_error right in the text editor window somehow #define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) @@ -480,6 +470,53 @@ int main(int argc, char **argv) file_browser = false; } break; + case SDLK_RETURN: { + const char *file_path = fb_file_path(&fb); + if (file_path) { + File_Type ft; + err = type_of_file(file_path, &ft); + if (err != 0) { + flash_error("Could not determine type of file %s: %s", file_path, strerror(err)); + } else { + switch (ft) { + case FT_DIRECTORY: { + err = fb_change_dir(&fb); + if (err != 0) { + flash_error("Could not change directory to %s: %s", file_path, strerror(err)); + } + } + break; + + case FT_REGULAR: { + // TODO: before opening a new file make sure you don't have unsaved changes + // And if you do, annoy the user about it. (just like all the other editors do) + err = editor_load_from_file(&editor, file_path); + if (err != 0) { + flash_error("Could not open file %s: %s", file_path, strerror(err)); + } else { + file_browser = false; + } + } + break; + + case FT_OTHER: { + flash_error("%s is neither a regular file nor a directory. We can't open it.", file_path); + } + break; + + default: + UNREACHABLE("unknown File_Type"); + } + } + } + } + break; + + + + + + case SDLK_EQUALS: { if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed theme_next(¤tThemeIndex); @@ -657,9 +694,9 @@ int main(int argc, char **argv) case SDLK_n: { if (SDL_GetModState() & KMOD_SHIFT) { - editor_search_previous(&editor); - } else if(editor.has_mark){ - editor_search_next(&editor); + evil_search_previous(&editor); + } else { + evil_search_next(&editor); } if (SDL_GetModState() & KMOD_CTRL) { editor_move_line_down(&editor); @@ -751,7 +788,7 @@ int main(int argc, char **argv) } } break; - + case SDLK_ESCAPE: { editor_clear_mark(&editor); editor_stop_search(&editor); @@ -784,25 +821,28 @@ int main(int argc, char **argv) } } break; - - - case SDLK_o: - if (SDL_GetModState() & KMOD_SHIFT) { - editor_new_line_up(&editor); - } else { - editor_new_line_down(&editor); - } - current_mode = INSERT; - editor.last_stroke = SDL_GetTicks(); - // Eat up the next SDL_TEXTINPUT event for 'o' or 'O' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - break; + case SDLK_o: + if (superDrammtic) { + isAnimated = true; + } + if (SDL_GetModState() & KMOD_SHIFT) { + evil_open_above(&editor); + } else { + evil_open_below(&editor); + } + + current_mode = INSERT; + editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'o' or 'O' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + break; case SDL_MOUSEWHEEL: @@ -873,7 +913,7 @@ int main(int argc, char **argv) if (editor.selection) { editor_clipboard_copy(&editor); } else { - editor_yank_line(&editor); + evil_yank_line(&editor); } break; @@ -899,22 +939,22 @@ int main(int argc, char **argv) } } break; - case SDLK_n: { - if (SDL_GetModState() & KMOD_SHIFT) { - editor_search_previous(&editor); - } else if(editor.has_mark){ - editor_search_next(&editor); - } - if (SDL_GetModState() & KMOD_CTRL) { - editor_move_line_down(&editor); - } - - if (SDL_GetModState() & KMOD_ALT) { - editor_next_buffer(&editor); - } - } break; - - + case SDLK_n: { + if (SDL_GetModState() & KMOD_ALT) { + editor_next_buffer(&editor); + } else { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_previous(&editor); + } else { + evil_search_next(&editor); + } + + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_line_down(&editor); + } + } + } break; + case SDLK_p: if (SDL_GetModState() & KMOD_CTRL){ editor_move_line_up(&editor); @@ -922,16 +962,15 @@ int main(int argc, char **argv) editor_previous_buffer(&editor); } else if (copiedLine) { if (SDL_GetModState() & KMOD_SHIFT) { - editor_paste_line_before(&editor); + evil_paste_before(&editor); } else { - editor_paste_line_after(&editor); + evil_paste_after(&editor); } } else { editor_clipboard_paste(&editor); } break; - - + case SDLK_b: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (SDL_GetModState() & KMOD_CTRL){ @@ -996,7 +1035,9 @@ int main(int argc, char **argv) // Reset the blink timer editor.last_stroke = SDL_GetTicks(); - /* is_animated = true; // TODO make this an option and smooth */ + if (superDrammtic){ + isAnimated = true; + } // Eat up the next SDL_TEXTINPUT event for 'i' SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'i' @@ -1008,23 +1049,24 @@ int main(int argc, char **argv) case SDLK_v: { if (SDL_GetModState() & KMOD_SHIFT) { current_mode = VISUAL_LINE; - editor_start_visual_line_selection(&editor); // Initiate line selection. + evil_visual_line(&editor); } else { current_mode = VISUAL; - editor_start_visual_selection(&editor); // Initiate character selection. + evil_visual_char(&editor); } } break; - - + case SDLK_4: { if (SDL_GetModState() & KMOD_SHIFT) { editor_move_to_line_end(&editor); } } break; - - + case SDLK_a: editor.last_stroke = SDL_GetTicks(); + if (superDrammtic){ + isAnimated = true; + } if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held editor_move_to_line_end(&editor); } else { @@ -1032,7 +1074,6 @@ int main(int argc, char **argv) editor_move_char_right(&editor); } - // Enter INSERT mode current_mode = INSERT; // Eat up the next SDL_TEXTINPUT event for 'a' or 'A' @@ -1042,7 +1083,6 @@ int main(int argc, char **argv) } break; - // Enter INSERT mode current_mode = INSERT; // Eat up the next SDL_TEXTINPUT event for 'a' @@ -1057,9 +1097,11 @@ int main(int argc, char **argv) editor_clipboard_copy(&editor); editor_delete_selection(&editor); editor.selection = false; + } else if (event.key.keysym.mod & KMOD_SHIFT) { + evil_delete_backward_char(&editor); } else { editor_clipboard_copy(&editor); - editor_cut_char_under_cursor(&editor); + evil_delete_char(&editor); } break; @@ -1104,9 +1146,9 @@ int main(int argc, char **argv) if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "down", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { - editor_new_line_down(&editor); + evil_open_below(&editor); } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { - editor_join_lines(&editor); + evil_join(&editor); } else if (event.key.keysym.mod & KMOD_ALT) { editor_move_paragraph_down(&editor); } else { @@ -1194,6 +1236,16 @@ int main(int argc, char **argv) case INSERT: switch (event.key.keysym.sym) { + case SDLK_x: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + current_mode = NORMAL; + + } + break; + case SDLK_SPACE: { if (SDL_GetModState() & KMOD_CTRL) { if (!editor.has_anchor){ @@ -1205,6 +1257,15 @@ int main(int argc, char **argv) } break; + case SDLK_a: { + if (event.key.keysym.mod & KMOD_CTRL) { + editor.selection = true; + editor.select_begin = 0; + editor.cursor = editor.data.count; + } + } + break; + case SDLK_h: if (event.key.keysym.mod & KMOD_CTRL) { @@ -1461,6 +1522,9 @@ int main(int argc, char **argv) break; case SDLK_ESCAPE: { + if (superDrammtic){ + isAnimated = false; + } current_mode = NORMAL; editor_clear_mark(&editor); editor_stop_search(&editor); @@ -1706,6 +1770,7 @@ int main(int argc, char **argv) fb_render(&fb, window, &atlas, &sr); } else { editor_render(window, &atlas, &sr, &editor); + render_search_text(&atlas, &sr, &editor); } SDL_GL_SwapWindow(window); diff --git a/src/render.c b/src/render.c new file mode 100644 index 00000000..57875c3f --- /dev/null +++ b/src/render.c @@ -0,0 +1,846 @@ +#include "render.h" + + +void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor) { + if (editor->searching) { + Vec4f color = themes[currentThemeIndex].text; + Vec2f searchPos = {0.0f, 0.0f}; // Adjust position as needed + + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_TEXT); + free_glyph_atlas_render_line_sized(minibuffer_atlas, sr, editor->search.items, editor->search.count, &searchPos, color); + + simple_renderer_flush(sr); + } +} + + + +void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) +{ + int w, h; + SDL_GetWindowSize(window, &w, &h); + + float max_line_len = 0.0f; + + sr->resolution = vec2f(w, h); + sr->time = (float) SDL_GetTicks() / 1000.0f; + + float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; + /* Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed */ + + // Calculate the width of a whitespace character + Vec2f whitespace_size = vec2fs(0.0f); + free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespace_size); + float whitespace_width = whitespace_size.x; + + + + // Render hl_line + { + if (hl_line){ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + + size_t currentLine = editor_cursor_row(editor); + Vec2f highlightPos = {0.0f, -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + + float highlightWidth = 8000; // Default width for the highlight + + // If showing line numbers, adjust the position and width of the highlight + if (showLineNumbers) { + highlightPos.x -= lineNumberWidth - 260; // Move highlight to the left to cover line numbers + highlightWidth += lineNumberWidth; // Increase width to include line numbers area + } + + simple_renderer_solid_rect(sr, highlightPos, vec2f(highlightWidth, FREE_GLYPH_FONT_SIZE), themes[currentThemeIndex].hl_line); + + simple_renderer_flush(sr); + } + } + + // Render anchor + if (editor->has_anchor) { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + + // Update the anchor position before rendering + editor_update_anchor(editor); + + size_t anchor_row = editor_row_from_pos(editor, editor->anchor_pos); + Line anchor_line = editor->lines.items[anchor_row]; + size_t anchor_col = editor->anchor_pos - anchor_line.begin; + + Vec2f anchor_pos_vec = vec2fs(0.0f); + anchor_pos_vec.y = -((float)anchor_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + anchor_pos_vec.x = free_glyph_atlas_cursor_pos( + atlas, + editor->data.items + anchor_line.begin, anchor_line.end - anchor_line.begin, + vec2f(0.0, anchor_pos_vec.y), + anchor_col + ); + + // Adjust anchor position if line numbers are shown + if (showLineNumbers) { + anchor_pos_vec.x += lineNumberWidth; + } + + Vec4f ANCHOR_COLOR = themes[currentThemeIndex].anchor; + + simple_renderer_solid_rect( + sr, anchor_pos_vec, vec2f(whitespace_width, FREE_GLYPH_FONT_SIZE), + ANCHOR_COLOR); + + + simple_renderer_flush(sr); + } + + + // Render selection + + { + if (isWave){ + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + }else{ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + if (editor->selection) { + for (size_t row = 0; row < editor->lines.count; ++row) { + size_t select_begin_chr = editor->select_begin; + size_t select_end_chr = editor->cursor; + if (select_begin_chr > select_end_chr) { + SWAP(size_t, select_begin_chr, select_end_chr); + } + + Line line_chr = editor->lines.items[row]; + + if (select_begin_chr < line_chr.begin) { + select_begin_chr = line_chr.begin; + } + + if (select_end_chr > line_chr.end) { + select_end_chr = line_chr.end; + } + + if (select_begin_chr <= select_end_chr) { + Vec2f select_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + line_chr.begin, select_begin_chr - line_chr.begin, + &select_begin_scr); + + Vec2f select_end_scr = select_begin_scr; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + select_begin_chr, select_end_chr - select_begin_chr, + &select_end_scr); + + // Adjust selection for line numbers if displayed + if (showLineNumbers) { + select_begin_scr.x += lineNumberWidth; + select_end_scr.x += lineNumberWidth; + } + + Vec4f selection_color = vec4f(.25, .25, .25, 1); + + simple_renderer_solid_rect(sr, select_begin_scr, vec2f(select_end_scr.x - select_begin_scr.x, FREE_GLYPH_FONT_SIZE), selection_color); + } + } + } + simple_renderer_flush(sr); + } + + Vec2f cursor_pos = vec2fs(0.0f); + { + size_t cursor_row = editor_cursor_row(editor); + Line line = editor->lines.items[cursor_row]; + size_t cursor_col = editor->cursor - line.begin; + cursor_pos.y = -((float)cursor_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + cursor_pos.x = free_glyph_atlas_cursor_pos( + atlas, + editor->data.items + line.begin, line.end - line.begin, + vec2f(0.0, cursor_pos.y), + cursor_col + ); + } + + + // Render search + { + if (editor->searching) { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + Vec4f selection_color = themes[currentThemeIndex].search; // or .selection_color if that's what you named it in the struct. + + Vec2f p1 = cursor_pos; + Vec2f p2 = p1; + + free_glyph_atlas_measure_line_sized(editor->atlas, editor->search.items, editor->search.count, &p2); + + // Adjust for line numbers width if they are displayed + if (showLineNumbers) { + p1.x += lineNumberWidth; + p2.x += lineNumberWidth; + } + + simple_renderer_solid_rect(sr, p1, vec2f(p2.x - p1.x, FREE_GLYPH_FONT_SIZE), selection_color); + simple_renderer_flush(sr); + } + } + + // Render marked search result + { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + if (editor->has_mark) { + for (size_t row = 0; row < editor->lines.count; ++row) { + size_t mark_begin_chr = editor->mark_start; + size_t mark_end_chr = editor->mark_end; + + Line line_chr = editor->lines.items[row]; + + if (mark_begin_chr < line_chr.begin) { + mark_begin_chr = line_chr.begin; + } + + if (mark_end_chr > line_chr.end) { + mark_end_chr = line_chr.end; + } + + if (mark_begin_chr <= mark_end_chr) { + Vec2f mark_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + line_chr.begin, mark_begin_chr - line_chr.begin, + &mark_begin_scr); + + Vec2f mark_end_scr = mark_begin_scr; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + mark_begin_chr, mark_end_chr - mark_begin_chr, + &mark_end_scr); + + // Adjust for line numbers width if they are displayed + if (showLineNumbers) { + mark_begin_scr.x += lineNumberWidth; + mark_end_scr.x += lineNumberWidth; + } + + Vec4f mark_color = themes[currentThemeIndex].marks; + simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); + } + } + } + simple_renderer_flush(sr); + } + + + + // Render line numbers + if (showLineNumbers) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + } + + // Determine the current line number using the provided function + size_t currentLineNumber = editor_cursor_row(editor); + + // Different colors for line numbers + Vec4f defaultColor = themes[currentThemeIndex].line_numbers; + Vec4f currentLineColor = themes[currentThemeIndex].current_line_number; + + for (size_t i = 0; i < editor->lines.count; ++i) { + char lineNumberStr[10]; + + // Calculate display line number based on relative number setting + size_t displayLineNumber; + if (relativeLineNumbers) { + if (i == currentLineNumber) { + // Display the actual line number for the current line + displayLineNumber = currentLineNumber + 1; + } else { + // Show the distance from the current line for other lines + displayLineNumber = (i > currentLineNumber) ? i - currentLineNumber : currentLineNumber - i; + } + } else { + displayLineNumber = i + 1; + } + + snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", displayLineNumber); + + Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + + // Decide on the color to use + Vec4f colorToUse = defaultColor; + if (highlightCurrentLineNumber && i == currentLineNumber) { + colorToUse = currentLineColor; + } + + free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, colorToUse); + } + + simple_renderer_flush(sr); + } + + // Render matching parenthesis + { + if (current_mode == NORMAL || current_mode == EMACS) { + if (matchParenthesis) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + ssize_t matching_pos = find_matching_parenthesis(editor, editor->cursor); + if (matching_pos != -1) { + size_t matching_row = editor_row_from_pos(editor, matching_pos); + + Vec2f match_pos_screen = vec2fs(0.0f); // Initialize to zero + match_pos_screen.y = -((float)matching_row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + + Line line = editor->lines.items[matching_row]; + if (matching_pos >= line.begin && matching_pos < line.end) { + // Measure the position up to the matching character + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + line.begin, matching_pos - line.begin, &match_pos_screen); + + // Measure the width of the actual character at the matching position + Vec2f char_end_pos = match_pos_screen; + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + matching_pos, 1, &char_end_pos); + float char_width = char_end_pos.x - match_pos_screen.x; + + // Adjust for line numbers if displayed + if (showLineNumbers) { + match_pos_screen.x += lineNumberWidth; + } + + // Define the size of the highlight rectangle to match character size + Vec2f rect_size = vec2f(char_width, FREE_GLYPH_FONT_SIZE); + + simple_renderer_solid_rect(sr, match_pos_screen, rect_size, themes[currentThemeIndex].matching_parenthesis); + } + } + } + simple_renderer_flush(sr); + } + } + + + // Render text + { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + } + for (size_t i = 0; i < editor->tokens.count; ++i) { + Token token = editor->tokens.items[i]; + Vec2f pos = token.position; + //Vec4f color = vec4fs(1); + // TODO match color for open and close + Vec4f color = themes[currentThemeIndex].text; + + // Adjust for line numbers width if they are displayed + if (showLineNumbers) { + pos.x += lineNumberWidth; + } + + switch (token.kind) { + case TOKEN_PREPROC: + if (token.text_len >= 7 && token.text[0] == '#') { // Check if it's likely a hex color + bool valid_hex = true; + for (size_t j = 1; j < 7 && valid_hex; ++j) { + if (!is_hex_digit(token.text[j])) { + valid_hex = false; + } + } + + if (valid_hex) { + unsigned int hex_value; + if(sscanf(token.text, "#%06x", &hex_value) == 1) { + color = hex_to_vec4f(hex_value); + } else { + color = themes[currentThemeIndex].hashtag; // Default to the hashtag color if not a valid hex + } + } else { + color = themes[currentThemeIndex].hashtag; // Not a valid hex color + } + } else { + color = themes[currentThemeIndex].hashtag; // Default color for preprocessor directives + } + break; + + case TOKEN_KEYWORD: + color = themes[currentThemeIndex].logic; + break; + + case TOKEN_TYPE: + color = themes[currentThemeIndex].type; + break; + + case TOKEN_FUNCTION_DEFINITION: + color = themes[currentThemeIndex].function_definition; + break; + + case TOKEN_LINK: + color = themes[currentThemeIndex].link; + break; + + case TOKEN_OR: + color = themes[currentThemeIndex].logic_or; + break; + + case TOKEN_PIPE: + color = themes[currentThemeIndex].pipe; + break; + + case TOKEN_AND: + color = themes[currentThemeIndex].logic_and; + break; + + case TOKEN_AMPERSAND: + color = themes[currentThemeIndex].ampersand; + break; + + case TOKEN_POINTER: + color = themes[currentThemeIndex].pointer; + break; + + case TOKEN_MULTIPLICATION: + color = themes[currentThemeIndex].multiplication; + break; + + case TOKEN_COMMENT: + { + color = themes[currentThemeIndex].comment; + + // Checking for TODOOOO... + char* todoLoc = strstr(token.text, "TODO"); + if (todoLoc && (size_t)(todoLoc - token.text + 3) < token.text_len) { + + size_t numOs = 0; + char* ptr = todoLoc + 4; // Start right after "TODO" + + // Count 'O's without crossing token boundary + while ((size_t)(ptr - token.text) < token.text_len && (*ptr == 'O' || *ptr == 'o')) { + + numOs++; + ptr++; + } + + Vec4f baseColor = themes[currentThemeIndex].todo; + float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of TODOOOOO + + color.x = baseColor.x + deltaRed * numOs; + color.y = baseColor.y * (1 - 0.2 * numOs); + color.z = baseColor.z * (1 - 0.2 * numOs); + color.w = baseColor.w; + } + + // Checking for FIXMEEEE... + char* fixmeLoc = strstr(token.text, "FIXME"); + if (fixmeLoc && (size_t)(fixmeLoc - token.text + 4) < token.text_len) { + + size_t numEs = 0; + char* ptr = fixmeLoc + 5; // Start right after "FIXME" + + // Count 'E's without crossing token boundary + while ((size_t)(ptr - token.text) < token.text_len && (*ptr == 'E' || *ptr == 'e')) { + + numEs++; + ptr++; + } + + Vec4f baseColor = themes[currentThemeIndex].fixme; + float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of FIXMEEEE + + color.x = baseColor.x + deltaRed * numEs; + color.y = baseColor.y * (1 - 0.2 * numEs); + color.z = baseColor.z * (1 - 0.2 * numEs); + color.w = baseColor.w; + } + + // Checking for BUG... + char* bugLoc = strstr(token.text, "BUG"); + if (bugLoc && (size_t)(bugLoc - token.text + 2) < token.text_len) { + + color = themes[currentThemeIndex].bug; + } + + + // Checking for NOTE... + char* noteLoc = strstr(token.text, "NOTE"); + if (noteLoc && (size_t)(noteLoc - token.text + 3) < token.text_len) { + + color = themes[currentThemeIndex].note; + } + + // Continue rendering with + } + break; + + + case TOKEN_EQUALS: + color = themes[currentThemeIndex].equals; + break; + + case TOKEN_EXCLAMATION: + color = themes[currentThemeIndex].exclamation; + break; + + case TOKEN_NOT_EQUALS: + color = themes[currentThemeIndex].not_equals; + break; + + case TOKEN_EQUALS_EQUALS: + color = themes[currentThemeIndex].equals_equals; + break; + + + case TOKEN_LESS_THAN: + color = themes[currentThemeIndex].less_than; + break; + + case TOKEN_GREATER_THAN: + color = themes[currentThemeIndex].greater_than; + break; + case TOKEN_ARROW: + color = themes[currentThemeIndex].arrow; + break; + + case TOKEN_MINUS: + color = themes[currentThemeIndex].minus; + break; + + case TOKEN_PLUS: + color = themes[currentThemeIndex].plus; + break; + + case TOKEN_TRUE: + color = themes[currentThemeIndex].truee; + break; + case TOKEN_FALSE: + color = themes[currentThemeIndex].falsee; + break; + case TOKEN_OPEN_SQUARE: + color = themes[currentThemeIndex].open_square; + break; + case TOKEN_CLOSE_SQUARE: + color = themes[currentThemeIndex].close_square; + break; + case TOKEN_ARRAY_CONTENT: + color = themes[currentThemeIndex].array_content; + break; + case TOKEN_BAD_SPELLCHECK: + color = themes[currentThemeIndex].bug; + break; + case TOKEN_STRING: + /* color = hex_to_vec4f(0x73c936ff); */ + color = themes[currentThemeIndex].string; + break; + case TOKEN_COLOR: // Added case for TOKEN_COLOR + { + unsigned long long hex_value; + if(sscanf(token.text, "0x%llx", &hex_value) == 1) { + color = hex_to_vec4f((uint32_t)hex_value); + } + } + break; + default: + {} + } + + + free_glyph_atlas_render_line_sized(atlas, sr, token.text, token.text_len, &pos, color); + // TODO: the max_line_len should be calculated based on what's visible on the screen right now + if (max_line_len < pos.x) max_line_len = pos.x; + } + simple_renderer_flush(sr); + } + + + + // WHITESPACES + { + if (showWhitespaces) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; + + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + Vec2f pos = { 0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE }; + + if (showLineNumbers) { + pos.x += lineNumberWidth; + } + + for (size_t j = line.begin; j < line.end; ++j) { + if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { + /* Vec4f whitespaceColor = vec4f(1, 0, 0, 1); // Red color for visibility */ + + Vec4f backgroundColor = themes[currentThemeIndex].background; + Vec4f whitespaceColor; + + // Increase each RGB component by 70%, but not above 1 + whitespaceColor.x = backgroundColor.x + 0.7 * (1 - backgroundColor.x); + whitespaceColor.y = backgroundColor.y + 0.7 * (1 - backgroundColor.y); + whitespaceColor.z = backgroundColor.z + 0.7 * (1 - backgroundColor.z); + + // Clamp values to max 1.0 + whitespaceColor.x = whitespaceColor.x > 1 ? 1 : whitespaceColor.x; + whitespaceColor.y = whitespaceColor.y > 1 ? 1 : whitespaceColor.y; + whitespaceColor.z = whitespaceColor.z > 1 ? 1 : whitespaceColor.z; + + // Keep the alpha value the same + whitespaceColor.w = backgroundColor.w; + + // Measure the actual character width + Vec2f char_pos = pos; + char_pos.x += (j - line.begin) * squareSize; // Starting position for this character + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); + float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; + + Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; + simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); + } + } + } + simple_renderer_flush(sr); + } + } + + + // Render minibuffer + { + if (showMinibuffer) { + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){w, 21.0f}, CURRENT_THEME.minibuffer); + simple_renderer_flush(sr); + } + } + + + // Render cursor + if(editor->searching){ + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + }else if (isWave){ + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + }else{ + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + { + // Adjust cursor position if line numbers are shown + if (showLineNumbers) { + cursor_pos.x += lineNumberWidth; + } + + // Constants and Default Settings + float CURSOR_WIDTH; + const Uint32 CURSOR_BLINK_THRESHOLD = 500; + const Uint32 CURSOR_BLINK_PERIOD = 1000; + const Uint32 t = SDL_GetTicks() - editor->last_stroke; + Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; + float BORDER_THICKNESS = 3.0f; + Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); + + sr->verticies_count = 0; + + // If editor has a mark, make the cursor transparent + if (editor->has_mark) { + CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) + } + + // Rendering based on mode + switch (current_mode) { + + case NORMAL: { + float cursor_width; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + cursor_width = whitespace_width; + } + + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } break; + + case EMACS: { + float cursor_width; + CURSOR_COLOR = themes[currentThemeIndex].emacs_cursor; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + cursor_width = whitespace_width; + } + + // Implement blinking for EMACS mode + if (t < CURSOR_BLINK_THRESHOLD || + (t / CURSOR_BLINK_PERIOD) % 2 != 0) { + simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } + } break; + + + case INSERT: + CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; + CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode + // Implement blinking for INSERT mode + if (t < CURSOR_BLINK_THRESHOLD || + (t / CURSOR_BLINK_PERIOD) % 2 != 0) { + simple_renderer_solid_rect( + sr, cursor_pos, + vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } + break; + + case VISUAL: { + float cursor_width; + + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, 1, + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized(atlas, "a", 1, + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } + + // Draw inner rectangle + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x + BORDER_THICKNESS, + cursor_pos.y + BORDER_THICKNESS), + vec2f(cursor_width - 2 * BORDER_THICKNESS, + FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), + INNER_COLOR); + + // Draw the outline (borders) using the theme's cursor color + simple_renderer_solid_rect(sr, cursor_pos, + vec2f(cursor_width, BORDER_THICKNESS), + CURSOR_COLOR); // Top border + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x, + cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), + vec2f(cursor_width, BORDER_THICKNESS), + CURSOR_COLOR); // Bottom border + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); // Left border + simple_renderer_solid_rect( + sr, + vec2f(cursor_pos.x + cursor_width - BORDER_THICKNESS, + cursor_pos.y), + vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); // Right border + + break; + } + + case VISUAL_LINE: + // Set the cursor width to cover the entire height of the line + CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE; + + // Adjust cursor color for visual distinction. For instance, make it + // slightly transparent + Vec4f TRANSPARENT_CURSOR_COLOR = + vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, + 0.5f); // 50% transparency + + // Render the cursor for the entire line + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), + TRANSPARENT_CURSOR_COLOR); + + // If you'd like to add additional visual cues, consider adding a + // border or some other distinguishing feature. + break; + } + simple_renderer_flush(sr); + } + + // Update camera + { + if (isAnimated) { + + if (max_line_len > 1000.0f) { + max_line_len = 1000.0f; + } + + float target_scale = w / zoom_factor / (max_line_len * 0.75); // TODO: division by 0 + + Vec2f target = cursor_pos; + float offset = 0.0f; + + if (target_scale > 3.0f) { + target_scale = 3.0f; + } else { + offset = cursor_pos.x - w/3/sr->camera_scale; + if (offset < 0.0f) offset = 0.0f; + target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); + } + + sr->camera_vel = vec2f_mul( + vec2f_sub(target, sr->camera_pos), + vec2fs(2.0f)); + sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; + + sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); + sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; + + } else { + sr->camera_scale = 0.24f; // Set the zoom level to 0.24 + + // Static flag to ensure initial camera position is set only once + static bool hasSetInitialPosition = false; + + // If the initial position hasn't been set, set it now + if (!hasSetInitialPosition) { + sr->camera_pos.x = 3850.0f; // Set the x-position + sr->camera_pos.y = -2000.0f; // Set the initial y-position + hasSetInitialPosition = true; + } else { + // Calculate the vertical position of the cursor in world coordinates. + int currentLine = editor_cursor_row(editor); + float cursorPosY = -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; + + // Define the top and bottom edges of the current camera view. + float cameraTopEdge = sr->camera_pos.y - (h/2.0f) / sr->camera_scale; + float cameraBottomEdge = sr->camera_pos.y + (h/2.0f) / sr->camera_scale; + + // Adjust the camera's Y position if the cursor is outside the viewport. + if (cursorPosY > cameraBottomEdge) { + sr->camera_pos.y += cursorPosY - cameraBottomEdge; // Move camera down just enough + } else if (cursorPosY < cameraTopEdge) { + sr->camera_pos.y -= cameraTopEdge - cursorPosY; // Move camera up just enough + } + + // Keeping the x-position fixed as per the previous logic + sr->camera_pos.x = 3850.0f; + } + } + } +} diff --git a/src/render.h b/src/render.h new file mode 100644 index 00000000..a3a6c2c5 --- /dev/null +++ b/src/render.h @@ -0,0 +1,13 @@ +#ifndef RENDER_H +#define RENDER_H + +#include +#include "free_glyph.h" +#include "simple_renderer.h" +#include "editor.h" + +void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); +void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor); + + +#endif // RENDER_H diff --git a/src/repl.c b/src/repl.c deleted file mode 100644 index 923f27c4..00000000 --- a/src/repl.c +++ /dev/null @@ -1,47 +0,0 @@ -#include "repl.h" -#include "sv.h" -#include "simple_renderer.h" -#include -#include -#include - -#define BUFFER_SIZE 256 - -Errno repl_execute(Repl *repl, const char *command) { - char buffer[BUFFER_SIZE]; - FILE *fp = popen(command, "r"); - - if (!fp) { - return 1; // Adjust error codes as needed - } - - repl->output_line.count = 0; // Reset the string builder - - while (fgets(buffer, sizeof(buffer), fp)) { - sb_append_cstr(&repl->output_line, buffer); - } - - pclose(fp); - return 0; -} - -void repl_render(const Repl *repl, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr) { - // Implement rendering based on your application's needs. - // For now, we'll stick to a basic implementation similar to the one provided in file_browser.c - - Vec2f cursor_pos = vec2f(0, 0); - int w, h; - SDL_GetWindowSize(window, &w, &h); - sr->resolution = vec2f(w, h); - sr->time = (float) SDL_GetTicks() / 1000.0f; - - simple_renderer_set_shader(sr, SHADER_FOR_COLOR); - - simple_renderer_set_shader(sr, SHADER_FOR_EPICNESS); - free_glyph_atlas_render_line_sized( - atlas, sr, repl->output_line.items, repl->output_line.count, - &cursor_pos, - vec4fs(0)); - - simple_renderer_flush(sr); -} diff --git a/src/repl.h b/src/repl.h deleted file mode 100644 index e93136a6..00000000 --- a/src/repl.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef REPL_H -#define REPL_H - -#include "sv.h" -#include "common.h" -#include "simple_renderer.h" -#include "./free_glyph.h" -#include - - -typedef struct { - String_Builder output_line; -} Repl; - -Errno repl_execute(Repl *repl, const char *command); -void repl_render(const Repl *repl, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr); - -#endif // REPL_H diff --git a/todo.org b/todo.org index e9d459a9..7b933257 100644 --- a/todo.org +++ b/todo.org @@ -4,25 +4,12 @@ every function defined in the code should be callable while the app is running emacs style M-x [] -** Evil Mode -splits(maybe) [] -5k should work [] -shift + 8 [] -shift + 5 [x] ** Modeline show the current EvilMode, file name, info and cool icons ** Minibuffer to get user input for anything and everything popups are for loosers ** Minimap code minimap from scratch -** Lexer -NULL [] -multi line comments [] -syntax highlighting for : | || & && [x] -highlight links [x] -line under links [] -different vertex and fragment shader per token [] -different font per token [] ** cursor adjust syze based on overed glyph [x] ** Font @@ -35,10 +22,36 @@ make the text disappear [] use shaders from =~/.config/ded/shaders= instead [x] ** Renderer render circles (for whitespaces) [] +line under links (and clickable things)[] ** Bugs opening a file with ded file.c that contain a function definition, trow a [1] 35755 segmentation fault (core dumped) +** Lexer +'' [] +NULL [] +multi line comments [] +different vertex and fragment shader per token [] +different font per token [] +syntax highlighting for : | || & && [x] +highlight links [x] +** Evil +evil-delete-backward-char [x] +evil-search-backward [] +evil-change-line [] + +splits(maybe) [] +5k should work [] +shift + 8 [] +shift + 5 [x] ** Editor + +a theme should be able to define how much lighter of the bg +whitespaces indicators are in % (currently hardcoded to 70%)[] + +u can only type stuff that exist in the file in the +search buffer, u should be able to type anything +(also highlight not found stuff in red like emacs) [] + goto definition (a dumb version later i will integrate lsp)[] Togglable emacs like scroll for when animations are disabled [] ivy for everything [] @@ -47,8 +60,6 @@ sub-pixel antialiasing [] multicursor[] Iedit[] Fringe(showing unsaved changes, and later with git integration )[] -a theme should be able to define how much lighter of the bg -whitespaces indicators are in % (currently hardcoded to 70%)[] Replace mode [] Replace character mode [] Pipe selection to unix command [] From 04a54151e3efb5f7a6828576b48b42dc9256ac64 Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 12 Jan 2024 19:34:55 +0100 Subject: [PATCH 54/74] cool stuff --- src/editor.c | 364 ++------------------------------------------------- src/editor.h | 112 ++++------------ src/evil.c | 23 ++++ src/evil.h | 7 +- src/main.c | 9 ++ src/render.c | 130 ++++++++++-------- src/theme.c | 345 ++++++++++++++++++++++++++++++++++++++++++++++++ src/theme.h | 67 ++++++++++ todo.org | 16 +-- 9 files changed, 560 insertions(+), 513 deletions(-) create mode 100644 src/theme.c create mode 100644 src/theme.h diff --git a/src/editor.c b/src/editor.c index e80b7cac..e5eaa315 100644 --- a/src/editor.c +++ b/src/editor.c @@ -22,7 +22,7 @@ float max_zoom_factor = 10.0; bool isAnimated = true; bool isWave = false; -int indentation = 4; +size_t indentation = 4; bool showLineNumbers = false; bool highlightCurrentLineNumber = true; @@ -33,15 +33,18 @@ bool copiedLine = false; bool matchParenthesis = true; //TODO segfault and highlight size bool hl_line = false; - -bool showMinibuffer = true; bool superDrammtic = false; +bool showMinibuffer = true; +bool showModeline = true; +float minibufferHeight = 21.0f; +float modelineHeight = 35.0f; +float modelineAccentWidth = 5.0f; // TODO bad implementation -bool extractWordUnderCursor(Editor *editor, char *word) { +bool extract_word_under_cursor(Editor *editor, char *word) { // Make a copy of cursor position to avoid modifying the actual cursor size_t cursor = editor->cursor; @@ -92,336 +95,7 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { } - - - - - -int currentThemeIndex = 0; -Theme themes[6]; - -void initialize_themes() { - - // Nature - themes[0] = (Theme) { - .cursor = hex_to_vec4f(0x658B5FFF), - .insert_cursor = hex_to_vec4f(0x514B8EFF), - .emacs_cursor = hex_to_vec4f(0x834EB6FF), - .text = hex_to_vec4f(0xC0ACD1FF), - .background = hex_to_vec4f(0x090909FF), - .comment = hex_to_vec4f(0x867892FF), - .hashtag = hex_to_vec4f(0x658B5FFF), - .logic = hex_to_vec4f(0x658B5FFF), - .string = hex_to_vec4f(0x4C6750FF), - .selection = hex_to_vec4f(0x262626FF), - .search = hex_to_vec4f(0x262626FF), - .todo = hex_to_vec4f(0x565663FF), - .line_numbers = hex_to_vec4f(0x171717FF), - .current_line_number = hex_to_vec4f(0xC0ACD1FF), - .fixme = hex_to_vec4f(0x444E46FF), - .note = hex_to_vec4f(0x4C6750FF), - .bug = hex_to_vec4f(0x867892FF), - .not_equals = hex_to_vec4f(0x867892FF), - .exclamation = hex_to_vec4f(0x4C6750FF), - .equals = hex_to_vec4f(0xC0ACD1FF), - .equals_equals = hex_to_vec4f(0x658B5FFF), - .greater_than = hex_to_vec4f(0x834EB6FF), - .less_than = hex_to_vec4f(0x834EB6FF), - .marks = hex_to_vec4f(0x565663FF), - .fb_selection = hex_to_vec4f(0x262626FF), - .plus = hex_to_vec4f(0x658B5FFF), - .minus = hex_to_vec4f(0x658B5FFF), - .truee = hex_to_vec4f(0x4C6750FF), - .falsee = hex_to_vec4f(0x867892FF), - .arrow = hex_to_vec4f(0x834EB6FF), - .open_square = hex_to_vec4f(0xC0ACD1FF), - .close_square = hex_to_vec4f(0xC0ACD1FF), - .array_content = hex_to_vec4f(0x4C6750FF), - .link = hex_to_vec4f(0x565663FF), - .logic_or = hex_to_vec4f(0x658B5FFF), - .pipe = hex_to_vec4f(0x565663FF), - .ampersand = hex_to_vec4f(0x658B5FFF), - .logic_and = hex_to_vec4f(0x658B5FFF), - .pointer = hex_to_vec4f(0x514B8EFF), - .multiplication = hex_to_vec4f(0x867892FF), - .matching_parenthesis = hex_to_vec4f(0x262626FF), - .hl_line = hex_to_vec4f(0x070707FF), - .type = hex_to_vec4f(0x565663FF), - .function_definition = hex_to_vec4f(0x564F96FF), - .anchor = hex_to_vec4f(0x564F96FF), - .minibuffer = hex_to_vec4f(0x090909FF), - }; - - // DOOM one - themes[1] = (Theme) { - .cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF - .insert_cursor = hex_to_vec4f(0x51AFEFFF), - .emacs_cursor = hex_to_vec4f(0xECBE7BFF), //#ECBE7B - .text = hex_to_vec4f(0xBBC2CFFF), - .background = hex_to_vec4f(0x282C34FF), - .comment = hex_to_vec4f(0x5B6268FF), - .hashtag = hex_to_vec4f(0x51AFEFFF), - .logic = hex_to_vec4f(0x51AFEFFF), - .string = hex_to_vec4f(0x98BE65FF), //#98BE65 - .selection = hex_to_vec4f(0x42444AFF), - .search = hex_to_vec4f(0x387AA7FF), //#387AA7 - .todo = hex_to_vec4f(0xECBE7BFF), - .line_numbers = hex_to_vec4f(0x3F444AFF), - .current_line_number = hex_to_vec4f(0xBBC2CFFF), - .fixme = hex_to_vec4f(0xFF6C6BFF), //#FF6C6B - .note = hex_to_vec4f(0x98BE65FF), - .bug = hex_to_vec4f(0xFF6C6BFF), - .not_equals = hex_to_vec4f(0xFF6C6BFF), - .exclamation = hex_to_vec4f(0x51AFEFFF), - .equals = hex_to_vec4f(0x98BE65FF), - .equals_equals = hex_to_vec4f(0x98BE65FF), - .greater_than = hex_to_vec4f(0x98BE65FF), - .less_than = hex_to_vec4f(0xFF6C6BFF), - .marks = hex_to_vec4f(0x387AA7FF), - .fb_selection = hex_to_vec4f(0x42444AFF), - .plus = hex_to_vec4f(0x98BE65FF), - .minus = hex_to_vec4f(0xFF6C6BFF), - .truee = hex_to_vec4f(0x98BE65FF), - .falsee = hex_to_vec4f(0xFF6C6BFF), - .arrow = hex_to_vec4f(0xBBC2CFFF), - .open_square = hex_to_vec4f(0xBBC2CFFF), - .close_square = hex_to_vec4f(0xBBC2CFFF), - .array_content = hex_to_vec4f(0xA9A1E1FF), - .link = hex_to_vec4f(0xA9A1E1FF), //#A9A1E1 - .matching_parenthesis = hex_to_vec4f(0x42444AFF), - .type = hex_to_vec4f(0xECBE7BFF), - .function_definition = hex_to_vec4f(0xC678DDFF), //#C678DD - .anchor = hex_to_vec4f(0xA9A1E1FF), - .hl_line = hex_to_vec4f(0x21242BFF),//#21242B - .multiplication = hex_to_vec4f(0x98BE65FF), - .pointer = hex_to_vec4f(0xA9A1E1FF), - .logic_and = hex_to_vec4f(0x98BE65FF), - .logic_or = hex_to_vec4f(0xFF6C6BFF), - .ampersand = hex_to_vec4f(0x51AFEFFF), - .pipe = hex_to_vec4f(0x98BE65FF), - .minibuffer = hex_to_vec4f(0x21242BFF), - }; - - // Dracula - themes[2] = (Theme) { - .cursor = hex_to_vec4f(0xBD93F9FF), //#BD93F9 - .insert_cursor = hex_to_vec4f(0xBD93F9FF), - .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), //#F1FA8C - .text = hex_to_vec4f(0xF8F8F2FF), - .background = hex_to_vec4f(0x282A36FF), - .comment = hex_to_vec4f(0x6272A4FF), - .hashtag = hex_to_vec4f(0xBD93F9FF), - .logic = hex_to_vec4f(0xFF79C6FF), //#FF79C6 - .string = hex_to_vec4f(0xF1FA8CFF), - .selection = hex_to_vec4f(0x44475AFF), - .search = hex_to_vec4f(0x8466AEFF), //#8466AE - .todo = hex_to_vec4f(0xF1FA8CFF), - .line_numbers = hex_to_vec4f(0x6272A4FF), - .current_line_number = hex_to_vec4f(0xF8F8F2FF), - .fixme = hex_to_vec4f(0xFF5555FF), //#FF5555 - .note = hex_to_vec4f(0x50FA7BFF), //#50FA7B - .bug = hex_to_vec4f(0xFF5555FF), - .not_equals = hex_to_vec4f(0xFF5555FF), - .exclamation = hex_to_vec4f(0xBD93F9FF), - .equals = hex_to_vec4f(0x50FA7BFF), - .equals_equals = hex_to_vec4f(0x50FA7BFF), - .greater_than = hex_to_vec4f(0x50FA7BFF), - .less_than = hex_to_vec4f(0xFF5555FF), - .marks = hex_to_vec4f(0x8466AEFF), - .fb_selection = hex_to_vec4f(0x44475AFF), - .plus = hex_to_vec4f(0x50FA7BFF), - .minus = hex_to_vec4f(0xFF5555FF), - .truee = hex_to_vec4f(0x50FA7BFF), - .falsee = hex_to_vec4f(0xFF5555FF), - .arrow = hex_to_vec4f(0x8BE9FDFF), //#8BE9FD - .open_square = hex_to_vec4f(0xF8F8F2FF), - .close_square = hex_to_vec4f(0xF8F8F2FF), - .array_content = hex_to_vec4f(0xBD93F9FF), - .link = hex_to_vec4f(0x8BE9FDFF), - .matching_parenthesis = hex_to_vec4f(0x44475AFF), - .type = hex_to_vec4f(0xBD93F9FF), - .function_definition = hex_to_vec4f(0x50FA7BFF), - .anchor = hex_to_vec4f(0xFF79C6FF), - .hl_line = hex_to_vec4f(0x1E2029FF), //#1E2029 - .multiplication = hex_to_vec4f(0x50FA7BFF), - .pointer = hex_to_vec4f(0xFFC9E8FF), //#FFC9E8 - .logic_and = hex_to_vec4f(0x50FA7BFF), - .logic_or = hex_to_vec4f(0xFF5555FF), - .ampersand = hex_to_vec4f(0x8BE9FDFF), - .pipe = hex_to_vec4f(0x50FA7BFF), - .minibuffer = hex_to_vec4f(0x1E2029FF), //#1E2029 - }; - - // DOOM city lights - themes[3] = (Theme){ - .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF - .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D - .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 - .text = hex_to_vec4f(0xA0B3C5FF), - .background = hex_to_vec4f(0x1D252CFF), - .comment = hex_to_vec4f(0x41505EFF), - .hashtag = hex_to_vec4f(0x5EC4FFFF), - .logic = hex_to_vec4f(0x5EC4FFFF), - .string = hex_to_vec4f(0x539AFCFF), // #539AFC - .selection = hex_to_vec4f(0x28323BFF), - .search = hex_to_vec4f(0x4189B2FF), - .todo = hex_to_vec4f(0xEBBF83FF), - .line_numbers = hex_to_vec4f(0x384551FF), - .current_line_number = hex_to_vec4f(0xA0B3C5FF), - .fixme = hex_to_vec4f(0xD95468FF), // #D95468 - .note = hex_to_vec4f(0x8BD49CFF), // #8BD49C - .bug = hex_to_vec4f(0xD95468FF), - .not_equals = hex_to_vec4f(0xD95468FF), - .exclamation = hex_to_vec4f(0x5EC4FFFF), - .equals = hex_to_vec4f(0x8BD49CFF), - .equals_equals = hex_to_vec4f(0x8BD49CFF), - .greater_than = hex_to_vec4f(0x8BD49CFF), - .less_than = hex_to_vec4f(0xD95468FF), - .marks = hex_to_vec4f(0x4189B2FF), - .fb_selection = hex_to_vec4f(0x28323BFF), - .plus = hex_to_vec4f(0x8BD49CFF), - .minus = hex_to_vec4f(0xD95468FF), - .truee = hex_to_vec4f(0x8BD49CFF), - .falsee = hex_to_vec4f(0xD95468FF), - .arrow = hex_to_vec4f(0xA0B3C5FF), - .open_square = hex_to_vec4f(0xA0B3C5FF), - .close_square = hex_to_vec4f(0xA0B3C5FF), - .array_content = hex_to_vec4f(0x539AFCFF), - .link = hex_to_vec4f(0x539AFCFF), - .matching_parenthesis = hex_to_vec4f(0x28323BFF), - .type = hex_to_vec4f(0xEBBF83FF), - .function_definition = hex_to_vec4f(0x33CED8FF), // #33CED8 - .anchor = hex_to_vec4f(0xE27E8DFF), - .hl_line = hex_to_vec4f(0x181E24FF), - .multiplication = hex_to_vec4f(0x8BD49CFF), - .pointer = hex_to_vec4f(0x539AFCFF), - .logic_and = hex_to_vec4f(0x8BD49CFF), - .logic_or = hex_to_vec4f(0xD95468FF), - .ampersand = hex_to_vec4f(0x5EC4FFFF), - .pipe = hex_to_vec4f(0x8BD49CFF), - .minibuffer = hex_to_vec4f(0x181E24FF), - }; - - - // DOOM molokai - themes[4] = (Theme) { - .cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 - .insert_cursor = hex_to_vec4f(0xFB2874FF), - .emacs_cursor = hex_to_vec4f(0xE2C770FF), //#E2C770 - .text = hex_to_vec4f(0xD6D6D4FF), - .background = hex_to_vec4f(0x1C1E1FFF), - .comment = hex_to_vec4f(0x555556FF), - .hashtag = hex_to_vec4f(0x9C91E4FF), //#9C91E4 - .logic = hex_to_vec4f(0xFB2874FF), - .string = hex_to_vec4f(0xE2C770FF), - .selection = hex_to_vec4f(0x4E4E4EFF), - .search = hex_to_vec4f(0x9C91E4FF), - .todo = hex_to_vec4f(0xE2C770FF), - .line_numbers = hex_to_vec4f(0x555556FF), - .current_line_number = hex_to_vec4f(0xCFC0C5FF), - .fixme = hex_to_vec4f(0xE74C3CFF), //#E74C3C - .note = hex_to_vec4f(0xB6E63EFF), //#B6E63E - .bug = hex_to_vec4f(0xE74C3CFF), - .not_equals = hex_to_vec4f(0xE74C3CFF), - .exclamation = hex_to_vec4f(0x9C91E4FF), - .equals = hex_to_vec4f(0xB6E63EFF), - .equals_equals = hex_to_vec4f(0xB6E63EFF), - .greater_than = hex_to_vec4f(0xB6E63EFF), - .less_than = hex_to_vec4f(0xE74C3CFF), - .marks = hex_to_vec4f(0xB6E63EFF), - .fb_selection = hex_to_vec4f(0x4E4E4EFF), - .plus = hex_to_vec4f(0xB6E63EFF), - .minus = hex_to_vec4f(0xE74C3CFF), - .truee = hex_to_vec4f(0xB6E63EFF), - .falsee = hex_to_vec4f(0xE74C3CFF), - .arrow = hex_to_vec4f(0xD6D6D4FF), - .open_square = hex_to_vec4f(0xD6D6D4FF), - .close_square = hex_to_vec4f(0xD6D6D4FF), - .array_content = hex_to_vec4f(0x9C91E4FF), - .link = hex_to_vec4f(0x9C91E4FF), - .matching_parenthesis = hex_to_vec4f(0x4E4E4EFF), - .type = hex_to_vec4f(0x66D9EFFF), - .function_definition = hex_to_vec4f(0xB6E63EFF), - .anchor = hex_to_vec4f(0x9C91E4FF), - .hl_line = hex_to_vec4f(0x222323FF), - .multiplication = hex_to_vec4f(0xB6E63EFF), - .pointer = hex_to_vec4f(0x9C91E4FF), - .logic_and = hex_to_vec4f(0xB6E63EFF), - .logic_or = hex_to_vec4f(0xE74C3CFF), - .ampersand = hex_to_vec4f(0x9C91E4FF), - .pipe = hex_to_vec4f(0xB6E63EFF), - .minibuffer = hex_to_vec4f(0x222323FF), - }; - - - - // Palenight - themes[5] = (Theme) { - .cursor = hex_to_vec4f(0xC792EAFF), //#C792EA - .insert_cursor = hex_to_vec4f(0xC792EAFF), - .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), //#FFCB6B - .text = hex_to_vec4f(0xEEFFFFFF), - .background = hex_to_vec4f(0x292D3EFF), - .comment = hex_to_vec4f(0x676E95FF), - .hashtag = hex_to_vec4f(0x89DDFFFF), //#89DDFF - .logic = hex_to_vec4f(0x89DDFFFF), - .string = hex_to_vec4f(0xC3E88DFF), //#C3E88D - .selection = hex_to_vec4f(0x3C435EFF), - .search = hex_to_vec4f(0x4E5579FF), - .todo = hex_to_vec4f(0xFFCB6BFF), - .line_numbers = hex_to_vec4f(0x676E95FF), - .current_line_number = hex_to_vec4f(0xEEFFFFFF), - .fixme = hex_to_vec4f(0xFF5370FF), //#FF5370 - .note = hex_to_vec4f(0xC3E88DFF), - .bug = hex_to_vec4f(0xFF5370FF), - .not_equals = hex_to_vec4f(0xFF5370FF), - .exclamation = hex_to_vec4f(0x89DDFFFF), - .equals = hex_to_vec4f(0xC3E88DFF), - .equals_equals = hex_to_vec4f(0xC3E88DFF), - .greater_than = hex_to_vec4f(0xC3E88DFF), - .less_than = hex_to_vec4f(0xFF5370FF), - .marks = hex_to_vec4f(0x4E5579FF), - .fb_selection = hex_to_vec4f(0x3C435EFF), - .plus = hex_to_vec4f(0xC3E88DFF), - .minus = hex_to_vec4f(0xFF5370FF), - .truee = hex_to_vec4f(0xC3E88DFF), - .falsee = hex_to_vec4f(0xFF5370FF), - .arrow = hex_to_vec4f(0xFFCB6BFF), - .open_square = hex_to_vec4f(0xEEFFFFFF), - .close_square = hex_to_vec4f(0xEEFFFFFF), - .array_content = hex_to_vec4f(0x82AAFFFF), //#82AAFF - .link = hex_to_vec4f(0x89DDFFFF), - .logic_or = hex_to_vec4f(0xFF5370FF), - .pipe = hex_to_vec4f(0xC3E88DFF), - .ampersand = hex_to_vec4f(0x89DDFFFF), - .logic_and = hex_to_vec4f(0xC3E88DFF), - .pointer = hex_to_vec4f(0xF78C6CFF), //#F78C6C - .multiplication = hex_to_vec4f(0xC3E88DFF), - .matching_parenthesis = hex_to_vec4f(0x3C435EFF), - .hl_line = hex_to_vec4f(0x242837FF), - .type = hex_to_vec4f(0xC792EAFF), - .function_definition = hex_to_vec4f(0x82AAFFFF), - .anchor = hex_to_vec4f(0xFF5370FF), - .minibuffer = hex_to_vec4f(0x292D3EFF), - }; - } - -void theme_next(int *currentThemeIndex) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex += 1; - if (*currentThemeIndex >= themeCount) { - *currentThemeIndex = 0; // wrap around - } -} - -void theme_previous(int *currentThemeIndex) { - *currentThemeIndex -= 1; - if (*currentThemeIndex < 0) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex = themeCount - 1; // wrap around to the last theme - } -} - +// TODO BUG void editor_backspace(Editor *e) { // If in search mode, reduce the search query length if (e->searching) { @@ -560,7 +234,6 @@ void editor_delete_selection(Editor *e) } - // TODO: make sure that you always have new line at the end of the file while saving // https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 @@ -717,7 +390,6 @@ void editor_insert_buf(Editor *e, char *buf, size_t buf_len) } } - void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos) { // Ensure the position is within bounds if (pos > e->data.count) { @@ -740,7 +412,6 @@ void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos) { editor_retokenize(e); } - void editor_retokenize(Editor *e) { // Lines @@ -803,10 +474,6 @@ const char *editor_line_starts_with_one_of(Editor *e, size_t row, size_t col, co return NULL; } - - - - void editor_clipboard_copy(Editor *e) { if (e->searching) return; @@ -838,7 +505,6 @@ void editor_clipboard_paste(Editor *e) SDL_free(text); } - void editor_update_selection(Editor *e, bool shift) { if (e->searching) return; @@ -858,9 +524,6 @@ void editor_update_selection(Editor *e, bool shift) { } } - - - // search void editor_start_search(Editor *e) { @@ -912,10 +575,6 @@ bool editor_search_matches_at(Editor *e, size_t pos) return true; } - - - - void editor_move_to_begin(Editor *e) { editor_stop_search(e); @@ -968,7 +627,6 @@ void editor_move_paragraph_down(Editor *e) e->cursor = e->lines.items[row].begin; } - void editor_kill_line(Editor *e) { if (e->searching || e->cursor >= e->data.count) return; @@ -1045,11 +703,6 @@ void editor_backward_kill_word(Editor *e) { editor_retokenize(e); } - - - - - bool editor_is_line_empty(Editor *e, size_t row) { if (row >= e->lines.count) return true; // Non-existent lines are considered empty @@ -1207,6 +860,7 @@ void editor_update_anchor(Editor *editor) { } } + void editor_drag_line_down(Editor *editor) { size_t row = editor_cursor_row(editor); if (row >= editor->lines.count - 1) return; // Can't move the last line down diff --git a/src/editor.h b/src/editor.h index 0b84a7eb..46345f27 100644 --- a/src/editor.h +++ b/src/editor.h @@ -1,19 +1,36 @@ #ifndef EDITOR_H_ #define EDITOR_H_ +#include #include #include "common.h" #include "free_glyph.h" #include "simple_renderer.h" #include "lexer.h" - #include - #include extern bool isAnimated; -extern int indentation; +extern size_t indentation; +extern float zoom_factor; +extern float min_zoom_factor; +extern float max_zoom_factor; +extern bool showLineNumbers; +extern bool isWave; +extern bool showWhitespaces; +extern bool copiedLine; +extern bool hl_line; +extern bool relativeLineNumbers; +extern bool highlightCurrentLineNumber; +extern bool matchParenthesis; +extern bool superDrammtic; + +extern bool showMinibuffer; +extern bool showModeline; +extern float minibufferHeight; +extern float modelineHeight; +extern float modelineAccentWidth; typedef struct { size_t begin; @@ -42,57 +59,6 @@ typedef enum { extern EvilMode current_mode; -typedef struct { - Vec4f cursor; - Vec4f insert_cursor; - Vec4f emacs_cursor; - Vec4f text; - Vec4f background; - Vec4f logic; - Vec4f comment; - Vec4f hashtag; - Vec4f string; - Vec4f selection; - Vec4f search; - Vec4f line_numbers; - Vec4f todo; - Vec4f fixme; - Vec4f note; - Vec4f bug; - Vec4f equals; - Vec4f not_equals; - Vec4f exclamation; - Vec4f equals_equals; - Vec4f less_than; - Vec4f greater_than; - Vec4f arrow; - Vec4f plus; - Vec4f minus; - Vec4f truee; - Vec4f falsee; - Vec4f open_square; - Vec4f close_square; - Vec4f array_content; - Vec4f current_line_number; - Vec4f marks; - Vec4f fb_selection; - Vec4f link; - Vec4f logic_or; - Vec4f pipe; - Vec4f logic_and; - Vec4f ampersand; - Vec4f multiplication; - Vec4f pointer; - Vec4f modeline; - Vec4f minibuffer; - Vec4f matching_parenthesis; - Vec4f hl_line; - Vec4f type; - Vec4f function_definition; - Vec4f anchor; -} Theme; - - #define MAX_BUFFER_HISTORY 100 @@ -174,14 +140,10 @@ void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); void editor_stop_search_and_mark(Editor *e); void editor_clear_mark(Editor *editor); void move_camera(Simple_Renderer *sr, const char* direction, float amount); -bool extractWordUnderCursor(Editor *editor, char *word); void editor_kill_line(Editor *e); void editor_backward_kill_word(Editor *e); -bool editor_is_line_empty(Editor *e, size_t row); -bool editor_is_line_whitespaced(Editor *e, size_t row); ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); -size_t editor_row_from_pos(const Editor *e, size_t pos); void editor_enter(Editor *e); void editor_set_anchor(Editor *editor); @@ -191,35 +153,11 @@ void editor_update_anchor(Editor *editor); void editor_drag_line_down(Editor *editor); void editor_drag_line_up(Editor *editor); - - - - - - - -extern float zoom_factor; -extern float min_zoom_factor; -extern float max_zoom_factor; -extern bool showLineNumbers; -extern bool isWave; -extern bool showWhitespaces; -extern bool copiedLine; -extern bool hl_line; -extern bool relativeLineNumbers; -extern bool highlightCurrentLineNumber; -extern bool matchParenthesis; -extern bool showMinibuffer; -extern bool superDrammtic; - -// THEME -extern Theme themes[]; -extern int currentThemeIndex; -void initialize_themes(); -#define CURRENT_THEME (themes[currentThemeIndex]) - -void theme_next(int *currentThemeIndex); -void theme_previous(int *currentThemeIndex); +// UTILITY +size_t editor_row_from_pos(const Editor *e, size_t pos); +bool extract_word_under_cursor(Editor *editor, char *word); +bool editor_is_line_empty(Editor *e, size_t row); +bool editor_is_line_whitespaced(Editor *e, size_t row); diff --git a/src/evil.c b/src/evil.c index fb44f2f7..967f6bb0 100644 --- a/src/evil.c +++ b/src/evil.c @@ -1,4 +1,5 @@ #include "evil.h" +#include "editor.h" void evil_open_below(Editor *editor) { size_t row = editor_cursor_row(editor); @@ -371,3 +372,25 @@ void evil_search_previous(Editor *e) { } } } + + +void evil_search_word_forward(Editor *e) { + char word[256]; + + e->searching = true; + e->search.count = 0; + + // Extract the word under the cursor. + if (extract_word_under_cursor(e, word)) { + sb_append_buf(&e->search, word, strlen(word)); + editor_stop_search_and_mark(e); + evil_search_next(e); + } else { + // If no word is extracted, exit search mode + e->searching = false; + } +} + + + + diff --git a/src/evil.h b/src/evil.h index 693131fa..068fbe4c 100644 --- a/src/evil.h +++ b/src/evil.h @@ -8,21 +8,16 @@ void evil_open_above(Editor *editor); void evil_jump_item(Editor *editor); void evil_jump_item(Editor *editor); void evil_join(Editor *e); - - void evil_yank_line(Editor *editor); void evil_paste_after(Editor *editor); void evil_paste_before(Editor *editor); - - void evil_visual_char(Editor *e); void evil_visual_line(Editor *e); void evil_delete_char(Editor *e); void evil_delete_backward_char(Editor *e); - - void evil_search_next(Editor *e); void evil_search_previous(Editor *e); +void evil_search_word_forward(Editor *e); #endif // EVIL_H diff --git a/src/main.c b/src/main.c index cb288c1c..ab2ff6af 100644 --- a/src/main.c +++ b/src/main.c @@ -35,6 +35,7 @@ #include "render.h" #include "evil.h" #include "buffer.h" +#include "theme.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) @@ -815,6 +816,14 @@ int main(int argc, char **argv) } break; + case SDLK_8: { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_word_forward(&editor); + } + } + break; + + case SDLK_1: { if (SDL_GetModState() & KMOD_CTRL) { hl_line = !hl_line; diff --git a/src/render.c b/src/render.c index 57875c3f..e20a1e35 100644 --- a/src/render.c +++ b/src/render.c @@ -1,10 +1,13 @@ #include "render.h" +#include "editor.h" +#include "theme.h" +float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor) { if (editor->searching) { Vec4f color = themes[currentThemeIndex].text; - Vec2f searchPos = {0.0f, 0.0f}; // Adjust position as needed + Vec2f searchPos = {0.0f, 0.0f}; simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_TEXT); free_glyph_atlas_render_line_sized(minibuffer_atlas, sr, editor->search.items, editor->search.count, &searchPos, color); @@ -13,6 +16,60 @@ void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, } } +void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { + if (showWhitespaces) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; + float brightnessIncreasePercent = themes[currentThemeIndex].whitespace; + + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + Vec2f pos = { 0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE }; + + if (showLineNumbers) { + pos.x += lineNumberWidth; + } + + for (size_t j = line.begin; j < line.end; ++j) { + if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { + Vec4f backgroundColor = themes[currentThemeIndex].background; + Vec4f whitespaceColor; + + // Increase each RGB component based on the percentage, but not above 1 + whitespaceColor.x = backgroundColor.x + brightnessIncreasePercent * (1 - backgroundColor.x); + whitespaceColor.y = backgroundColor.y + brightnessIncreasePercent * (1 - backgroundColor.y); + whitespaceColor.z = backgroundColor.z + brightnessIncreasePercent * (1 - backgroundColor.z); + + // Clamp values to max 1.0 + whitespaceColor.x = whitespaceColor.x > 1 ? 1 : whitespaceColor.x; + whitespaceColor.y = whitespaceColor.y > 1 ? 1 : whitespaceColor.y; + whitespaceColor.z = whitespaceColor.z > 1 ? 1 : whitespaceColor.z; + + // Keep the alpha value the same + whitespaceColor.w = backgroundColor.w; + + // Measure the actual character width + Vec2f char_pos = pos; + char_pos.x += (j - line.begin) * squareSize; // Starting position for this character + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); + float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; + + Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; + simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); + } + } + } + simple_renderer_flush(sr); + } +} + + + void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) @@ -25,7 +82,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->resolution = vec2f(w, h); sr->time = (float) SDL_GetTicks() / 1000.0f; - float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; + /* float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; */ /* Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed */ // Calculate the width of a whitespace character @@ -552,72 +609,31 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } - - // WHITESPACES + render_whitespaces(atlas, sr, editor); + + // Render minibuffer { - if (showWhitespaces) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - - float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; - - for (size_t i = 0; i < editor->lines.count; ++i) { - Line line = editor->lines.items[i]; - Vec2f pos = { 0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE }; - - if (showLineNumbers) { - pos.x += lineNumberWidth; - } - - for (size_t j = line.begin; j < line.end; ++j) { - if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { - /* Vec4f whitespaceColor = vec4f(1, 0, 0, 1); // Red color for visibility */ - - Vec4f backgroundColor = themes[currentThemeIndex].background; - Vec4f whitespaceColor; - - // Increase each RGB component by 70%, but not above 1 - whitespaceColor.x = backgroundColor.x + 0.7 * (1 - backgroundColor.x); - whitespaceColor.y = backgroundColor.y + 0.7 * (1 - backgroundColor.y); - whitespaceColor.z = backgroundColor.z + 0.7 * (1 - backgroundColor.z); - - // Clamp values to max 1.0 - whitespaceColor.x = whitespaceColor.x > 1 ? 1 : whitespaceColor.x; - whitespaceColor.y = whitespaceColor.y > 1 ? 1 : whitespaceColor.y; - whitespaceColor.z = whitespaceColor.z > 1 ? 1 : whitespaceColor.z; - - // Keep the alpha value the same - whitespaceColor.w = backgroundColor.w; - - // Measure the actual character width - Vec2f char_pos = pos; - char_pos.x += (j - line.begin) * squareSize; // Starting position for this character - free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); - float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; - - Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; - simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); - } - } - } + if (showMinibuffer) { + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){w, minibufferHeight}, CURRENT_THEME.minibuffer); simple_renderer_flush(sr); } } - - - // Render minibuffer + + + // Render modeline { - if (showMinibuffer) { + if (showModeline) { simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); - simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){w, 21.0f}, CURRENT_THEME.minibuffer); + simple_renderer_solid_rect(sr, (Vec2f){0.0f, minibufferHeight}, (Vec2f){w, modelineHeight}, CURRENT_THEME.modeline); + // render accent + simple_renderer_solid_rect(sr, (Vec2f){0.0f, minibufferHeight}, (Vec2f){modelineAccentWidth, modelineHeight}, CURRENT_THEME.modeline_accent); simple_renderer_flush(sr); } } + // Render cursor if(editor->searching){ simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); diff --git a/src/theme.c b/src/theme.c new file mode 100644 index 00000000..e04b4a4f --- /dev/null +++ b/src/theme.c @@ -0,0 +1,345 @@ +#include "theme.h" +#include "common.h" + +int currentThemeIndex = 0; +Theme themes[6]; + +void initialize_themes() { + + // Nature + themes[0] = (Theme) { + .cursor = hex_to_vec4f(0x658B5FFF), + .insert_cursor = hex_to_vec4f(0x514B8EFF), + .emacs_cursor = hex_to_vec4f(0x834EB6FF), + .text = hex_to_vec4f(0xC0ACD1FF), + .background = hex_to_vec4f(0x090909FF), + .comment = hex_to_vec4f(0x867892FF), + .hashtag = hex_to_vec4f(0x658B5FFF), + .logic = hex_to_vec4f(0x658B5FFF), + .string = hex_to_vec4f(0x4C6750FF), + .selection = hex_to_vec4f(0x262626FF), + .search = hex_to_vec4f(0x262626FF), + .todo = hex_to_vec4f(0x565663FF), + .line_numbers = hex_to_vec4f(0x171717FF), + .current_line_number = hex_to_vec4f(0xC0ACD1FF), + .fixme = hex_to_vec4f(0x444E46FF), + .note = hex_to_vec4f(0x4C6750FF), + .bug = hex_to_vec4f(0x867892FF), + .not_equals = hex_to_vec4f(0x867892FF), + .exclamation = hex_to_vec4f(0x4C6750FF), + .equals = hex_to_vec4f(0xC0ACD1FF), + .equals_equals = hex_to_vec4f(0x658B5FFF), + .greater_than = hex_to_vec4f(0x834EB6FF), + .less_than = hex_to_vec4f(0x834EB6FF), + .marks = hex_to_vec4f(0x658B5FFF), + .fb_selection = hex_to_vec4f(0x262626FF), + .plus = hex_to_vec4f(0x658B5FFF), + .minus = hex_to_vec4f(0x658B5FFF), + .truee = hex_to_vec4f(0x4C6750FF), + .falsee = hex_to_vec4f(0x867892FF), + .arrow = hex_to_vec4f(0x834EB6FF), + .open_square = hex_to_vec4f(0xC0ACD1FF), + .close_square = hex_to_vec4f(0xC0ACD1FF), + .array_content = hex_to_vec4f(0x4C6750FF), + .link = hex_to_vec4f(0x565663FF), + .logic_or = hex_to_vec4f(0x658B5FFF), + .pipe = hex_to_vec4f(0x565663FF), + .ampersand = hex_to_vec4f(0x658B5FFF), + .logic_and = hex_to_vec4f(0x658B5FFF), + .pointer = hex_to_vec4f(0x514B8EFF), + .multiplication = hex_to_vec4f(0x867892FF), + .matching_parenthesis = hex_to_vec4f(0x262626FF), + .hl_line = hex_to_vec4f(0x070707FF), + .type = hex_to_vec4f(0x565663FF), + .function_definition = hex_to_vec4f(0x564F96FF), + .anchor = hex_to_vec4f(0x564F96FF), + .minibuffer = hex_to_vec4f(0x090909FF), + .modeline = hex_to_vec4f(0x060606FF), + .modeline_accent = hex_to_vec4f(0x658B5FFF), + .whitespace = 0.7, + }; + + // DOOM one + themes[1] = (Theme) { + .cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF + .insert_cursor = hex_to_vec4f(0x51AFEFFF), + .emacs_cursor = hex_to_vec4f(0xECBE7BFF), //#ECBE7B + .text = hex_to_vec4f(0xBBC2CFFF), + .background = hex_to_vec4f(0x282C34FF), + .comment = hex_to_vec4f(0x5B6268FF), + .hashtag = hex_to_vec4f(0x51AFEFFF), + .logic = hex_to_vec4f(0x51AFEFFF), + .string = hex_to_vec4f(0x98BE65FF), //#98BE65 + .selection = hex_to_vec4f(0x42444AFF), + .search = hex_to_vec4f(0x387AA7FF), //#387AA7 + .todo = hex_to_vec4f(0xECBE7BFF), + .line_numbers = hex_to_vec4f(0x3F444AFF), + .current_line_number = hex_to_vec4f(0xBBC2CFFF), + .fixme = hex_to_vec4f(0xFF6C6BFF), //#FF6C6B + .note = hex_to_vec4f(0x98BE65FF), + .bug = hex_to_vec4f(0xFF6C6BFF), + .not_equals = hex_to_vec4f(0xFF6C6BFF), + .exclamation = hex_to_vec4f(0x51AFEFFF), + .equals = hex_to_vec4f(0x98BE65FF), + .equals_equals = hex_to_vec4f(0x98BE65FF), + .greater_than = hex_to_vec4f(0x98BE65FF), + .less_than = hex_to_vec4f(0xFF6C6BFF), + .marks = hex_to_vec4f(0x387AA7FF), + .fb_selection = hex_to_vec4f(0x42444AFF), + .plus = hex_to_vec4f(0x98BE65FF), + .minus = hex_to_vec4f(0xFF6C6BFF), + .truee = hex_to_vec4f(0x98BE65FF), + .falsee = hex_to_vec4f(0xFF6C6BFF), + .arrow = hex_to_vec4f(0xBBC2CFFF), + .open_square = hex_to_vec4f(0xBBC2CFFF), + .close_square = hex_to_vec4f(0xBBC2CFFF), + .array_content = hex_to_vec4f(0xA9A1E1FF), + .link = hex_to_vec4f(0xA9A1E1FF), //#A9A1E1 + .matching_parenthesis = hex_to_vec4f(0x42444AFF), + .type = hex_to_vec4f(0xECBE7BFF), + .function_definition = hex_to_vec4f(0xC678DDFF), //#C678DD + .anchor = hex_to_vec4f(0xA9A1E1FF), + .hl_line = hex_to_vec4f(0x21242BFF),//#21242B + .multiplication = hex_to_vec4f(0x98BE65FF), + .pointer = hex_to_vec4f(0xA9A1E1FF), + .logic_and = hex_to_vec4f(0x98BE65FF), + .logic_or = hex_to_vec4f(0xFF6C6BFF), + .ampersand = hex_to_vec4f(0x51AFEFFF), + .pipe = hex_to_vec4f(0x98BE65FF), + .minibuffer = hex_to_vec4f(0x21242BFF), + .modeline = hex_to_vec4f(0x1D2026FF), + .modeline_accent = hex_to_vec4f(0x51AFEFFF), + .whitespace = 0.7, + }; + + // Dracula + themes[2] = (Theme) { + .cursor = hex_to_vec4f(0xBD93F9FF), //#BD93F9 + .insert_cursor = hex_to_vec4f(0xBD93F9FF), + .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), //#F1FA8C + .text = hex_to_vec4f(0xF8F8F2FF), + .background = hex_to_vec4f(0x282A36FF), + .comment = hex_to_vec4f(0x6272A4FF), + .hashtag = hex_to_vec4f(0xBD93F9FF), + .logic = hex_to_vec4f(0xFF79C6FF), //#FF79C6 + .string = hex_to_vec4f(0xF1FA8CFF), + .selection = hex_to_vec4f(0x44475AFF), + .search = hex_to_vec4f(0x8466AEFF), //#8466AE + .todo = hex_to_vec4f(0xF1FA8CFF), + .line_numbers = hex_to_vec4f(0x6272A4FF), + .current_line_number = hex_to_vec4f(0xF8F8F2FF), + .fixme = hex_to_vec4f(0xFF5555FF), //#FF5555 + .note = hex_to_vec4f(0x50FA7BFF), //#50FA7B + .bug = hex_to_vec4f(0xFF5555FF), + .not_equals = hex_to_vec4f(0xFF5555FF), + .exclamation = hex_to_vec4f(0xBD93F9FF), + .equals = hex_to_vec4f(0x50FA7BFF), + .equals_equals = hex_to_vec4f(0x50FA7BFF), + .greater_than = hex_to_vec4f(0x50FA7BFF), + .less_than = hex_to_vec4f(0xFF5555FF), + .marks = hex_to_vec4f(0x8466AEFF), + .fb_selection = hex_to_vec4f(0x44475AFF), + .plus = hex_to_vec4f(0x50FA7BFF), + .minus = hex_to_vec4f(0xFF5555FF), + .truee = hex_to_vec4f(0x50FA7BFF), + .falsee = hex_to_vec4f(0xFF5555FF), + .arrow = hex_to_vec4f(0x8BE9FDFF), //#8BE9FD + .open_square = hex_to_vec4f(0xF8F8F2FF), + .close_square = hex_to_vec4f(0xF8F8F2FF), + .array_content = hex_to_vec4f(0xBD93F9FF), + .link = hex_to_vec4f(0x8BE9FDFF), + .matching_parenthesis = hex_to_vec4f(0x44475AFF), + .type = hex_to_vec4f(0xBD93F9FF), + .function_definition = hex_to_vec4f(0x50FA7BFF), + .anchor = hex_to_vec4f(0xFF79C6FF), + .hl_line = hex_to_vec4f(0x1E2029FF), //#1E2029 + .multiplication = hex_to_vec4f(0x50FA7BFF), + .pointer = hex_to_vec4f(0xFFC9E8FF), //#FFC9E8 + .logic_and = hex_to_vec4f(0x50FA7BFF), + .logic_or = hex_to_vec4f(0xFF5555FF), + .ampersand = hex_to_vec4f(0x8BE9FDFF), + .pipe = hex_to_vec4f(0x50FA7BFF), + .minibuffer = hex_to_vec4f(0x1E2029FF), //#1E2029 + .modeline = hex_to_vec4f(0x22232DFF), + .modeline_accent = hex_to_vec4f(0xBD93F9FF), + .whitespace = 0.7, + }; + + // DOOM city lights + themes[3] = (Theme){ + .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D + .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 + .text = hex_to_vec4f(0xA0B3C5FF), + .background = hex_to_vec4f(0x1D252CFF), + .comment = hex_to_vec4f(0x41505EFF), + .hashtag = hex_to_vec4f(0x5EC4FFFF), + .logic = hex_to_vec4f(0x5EC4FFFF), + .string = hex_to_vec4f(0x539AFCFF), // #539AFC + .selection = hex_to_vec4f(0x28323BFF), + .search = hex_to_vec4f(0x4189B2FF), + .todo = hex_to_vec4f(0xEBBF83FF), + .line_numbers = hex_to_vec4f(0x384551FF), + .current_line_number = hex_to_vec4f(0xA0B3C5FF), + .fixme = hex_to_vec4f(0xD95468FF), // #D95468 + .note = hex_to_vec4f(0x8BD49CFF), // #8BD49C + .bug = hex_to_vec4f(0xD95468FF), + .not_equals = hex_to_vec4f(0xD95468FF), + .exclamation = hex_to_vec4f(0x5EC4FFFF), + .equals = hex_to_vec4f(0x8BD49CFF), + .equals_equals = hex_to_vec4f(0x8BD49CFF), + .greater_than = hex_to_vec4f(0x8BD49CFF), + .less_than = hex_to_vec4f(0xD95468FF), + .marks = hex_to_vec4f(0x4189B2FF), + .fb_selection = hex_to_vec4f(0x28323BFF), + .plus = hex_to_vec4f(0x8BD49CFF), + .minus = hex_to_vec4f(0xD95468FF), + .truee = hex_to_vec4f(0x8BD49CFF), + .falsee = hex_to_vec4f(0xD95468FF), + .arrow = hex_to_vec4f(0xA0B3C5FF), + .open_square = hex_to_vec4f(0xA0B3C5FF), + .close_square = hex_to_vec4f(0xA0B3C5FF), + .array_content = hex_to_vec4f(0x539AFCFF), + .link = hex_to_vec4f(0x539AFCFF), + .matching_parenthesis = hex_to_vec4f(0x28323BFF), + .type = hex_to_vec4f(0xEBBF83FF), + .function_definition = hex_to_vec4f(0x33CED8FF), // #33CED8 + .anchor = hex_to_vec4f(0xE27E8DFF), + .hl_line = hex_to_vec4f(0x181E24FF), + .multiplication = hex_to_vec4f(0x8BD49CFF), + .pointer = hex_to_vec4f(0x539AFCFF), + .logic_and = hex_to_vec4f(0x8BD49CFF), + .logic_or = hex_to_vec4f(0xD95468FF), + .ampersand = hex_to_vec4f(0x5EC4FFFF), + .pipe = hex_to_vec4f(0x8BD49CFF), + .minibuffer = hex_to_vec4f(0x181E24FF), + .modeline = hex_to_vec4f(0x181F25FF), + .modeline_accent = hex_to_vec4f(0x5EC4FFFF), + .whitespace = 0.7, + }; + + + // DOOM molokai + themes[4] = (Theme) { + .cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 + .insert_cursor = hex_to_vec4f(0xFB2874FF), + .emacs_cursor = hex_to_vec4f(0xE2C770FF), //#E2C770 + .text = hex_to_vec4f(0xD6D6D4FF), + .background = hex_to_vec4f(0x1C1E1FFF), + .comment = hex_to_vec4f(0x555556FF), + .hashtag = hex_to_vec4f(0x9C91E4FF), //#9C91E4 + .logic = hex_to_vec4f(0xFB2874FF), + .string = hex_to_vec4f(0xE2C770FF), + .selection = hex_to_vec4f(0x4E4E4EFF), + .search = hex_to_vec4f(0x9C91E4FF), + .todo = hex_to_vec4f(0xE2C770FF), + .line_numbers = hex_to_vec4f(0x555556FF), + .current_line_number = hex_to_vec4f(0xCFC0C5FF), + .fixme = hex_to_vec4f(0xE74C3CFF), //#E74C3C + .note = hex_to_vec4f(0xB6E63EFF), //#B6E63E + .bug = hex_to_vec4f(0xE74C3CFF), + .not_equals = hex_to_vec4f(0xE74C3CFF), + .exclamation = hex_to_vec4f(0x9C91E4FF), + .equals = hex_to_vec4f(0xB6E63EFF), + .equals_equals = hex_to_vec4f(0xB6E63EFF), + .greater_than = hex_to_vec4f(0xB6E63EFF), + .less_than = hex_to_vec4f(0xE74C3CFF), + .marks = hex_to_vec4f(0xB6E63EFF), + .fb_selection = hex_to_vec4f(0x4E4E4EFF), + .plus = hex_to_vec4f(0xB6E63EFF), + .minus = hex_to_vec4f(0xE74C3CFF), + .truee = hex_to_vec4f(0xB6E63EFF), + .falsee = hex_to_vec4f(0xE74C3CFF), + .arrow = hex_to_vec4f(0xD6D6D4FF), + .open_square = hex_to_vec4f(0xD6D6D4FF), + .close_square = hex_to_vec4f(0xD6D6D4FF), + .array_content = hex_to_vec4f(0x9C91E4FF), + .link = hex_to_vec4f(0x9C91E4FF), + .matching_parenthesis = hex_to_vec4f(0x4E4E4EFF), + .type = hex_to_vec4f(0x66D9EFFF), + .function_definition = hex_to_vec4f(0xB6E63EFF), + .anchor = hex_to_vec4f(0x9C91E4FF), + .hl_line = hex_to_vec4f(0x222323FF), + .multiplication = hex_to_vec4f(0xB6E63EFF), + .pointer = hex_to_vec4f(0x9C91E4FF), + .logic_and = hex_to_vec4f(0xB6E63EFF), + .logic_or = hex_to_vec4f(0xE74C3CFF), + .ampersand = hex_to_vec4f(0x9C91E4FF), + .pipe = hex_to_vec4f(0xB6E63EFF), + .minibuffer = hex_to_vec4f(0x222323FF), + .modeline = hex_to_vec4f(0x2D2E2EFF), + .modeline_accent = hex_to_vec4f(0xB6E63EFF), + .whitespace = 0.7, + }; + + + + // Palenight + themes[5] = (Theme) { + .cursor = hex_to_vec4f(0xC792EAFF), //#C792EA + .insert_cursor = hex_to_vec4f(0xC792EAFF), + .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), //#FFCB6B + .text = hex_to_vec4f(0xEEFFFFFF), + .background = hex_to_vec4f(0x292D3EFF), + .comment = hex_to_vec4f(0x676E95FF), + .hashtag = hex_to_vec4f(0x89DDFFFF), //#89DDFF + .logic = hex_to_vec4f(0x89DDFFFF), + .string = hex_to_vec4f(0xC3E88DFF), //#C3E88D + .selection = hex_to_vec4f(0x3C435EFF), + .search = hex_to_vec4f(0x4E5579FF), + .todo = hex_to_vec4f(0xFFCB6BFF), + .line_numbers = hex_to_vec4f(0x676E95FF), + .current_line_number = hex_to_vec4f(0xEEFFFFFF), + .fixme = hex_to_vec4f(0xFF5370FF), //#FF5370 + .note = hex_to_vec4f(0xC3E88DFF), + .bug = hex_to_vec4f(0xFF5370FF), + .not_equals = hex_to_vec4f(0xFF5370FF), + .exclamation = hex_to_vec4f(0x89DDFFFF), + .equals = hex_to_vec4f(0xC3E88DFF), + .equals_equals = hex_to_vec4f(0xC3E88DFF), + .greater_than = hex_to_vec4f(0xC3E88DFF), + .less_than = hex_to_vec4f(0xFF5370FF), + .marks = hex_to_vec4f(0x4E5579FF), + .fb_selection = hex_to_vec4f(0x3C435EFF), + .plus = hex_to_vec4f(0xC3E88DFF), + .minus = hex_to_vec4f(0xFF5370FF), + .truee = hex_to_vec4f(0xC3E88DFF), + .falsee = hex_to_vec4f(0xFF5370FF), + .arrow = hex_to_vec4f(0xFFCB6BFF), + .open_square = hex_to_vec4f(0xEEFFFFFF), + .close_square = hex_to_vec4f(0xEEFFFFFF), + .array_content = hex_to_vec4f(0x82AAFFFF), //#82AAFF + .link = hex_to_vec4f(0x89DDFFFF), + .logic_or = hex_to_vec4f(0xFF5370FF), + .pipe = hex_to_vec4f(0xC3E88DFF), + .ampersand = hex_to_vec4f(0x89DDFFFF), + .logic_and = hex_to_vec4f(0xC3E88DFF), + .pointer = hex_to_vec4f(0xF78C6CFF), //#F78C6C + .multiplication = hex_to_vec4f(0xC3E88DFF), + .matching_parenthesis = hex_to_vec4f(0x3C435EFF), + .hl_line = hex_to_vec4f(0x242837FF), + .type = hex_to_vec4f(0xC792EAFF), + .function_definition = hex_to_vec4f(0x82AAFFFF), + .anchor = hex_to_vec4f(0xFF5370FF), + .minibuffer = hex_to_vec4f(0x292D3EFF), + .modeline = hex_to_vec4f(0x232635FF), + .modeline_accent = hex_to_vec4f(0xC792EAFF), + .whitespace = 0.7, + }; + } + +void theme_next(int *currentThemeIndex) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex += 1; + if (*currentThemeIndex >= themeCount) { + *currentThemeIndex = 0; // wrap around + } +} + +void theme_previous(int *currentThemeIndex) { + *currentThemeIndex -= 1; + if (*currentThemeIndex < 0) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = themeCount - 1; // wrap around to the last theme + } +} diff --git a/src/theme.h b/src/theme.h new file mode 100644 index 00000000..48cfbeb3 --- /dev/null +++ b/src/theme.h @@ -0,0 +1,67 @@ +#ifndef THEME_H +#define THEME_H + +#include "la.h" + +typedef struct { + Vec4f cursor; + Vec4f insert_cursor; + Vec4f emacs_cursor; + Vec4f text; + Vec4f background; + Vec4f logic; + Vec4f comment; + Vec4f hashtag; + Vec4f string; + Vec4f selection; + Vec4f search; + Vec4f line_numbers; + Vec4f todo; + Vec4f fixme; + Vec4f note; + Vec4f bug; + Vec4f equals; + Vec4f not_equals; + Vec4f exclamation; + Vec4f equals_equals; + Vec4f less_than; + Vec4f greater_than; + Vec4f arrow; + Vec4f plus; + Vec4f minus; + Vec4f truee; + Vec4f falsee; + Vec4f open_square; + Vec4f close_square; + Vec4f array_content; + Vec4f current_line_number; + Vec4f marks; + Vec4f fb_selection; + Vec4f link; + Vec4f logic_or; + Vec4f pipe; + Vec4f logic_and; + Vec4f ampersand; + Vec4f multiplication; + Vec4f pointer; + Vec4f modeline; + Vec4f modeline_accent; + Vec4f minibuffer; + Vec4f matching_parenthesis; + Vec4f hl_line; + Vec4f type; + Vec4f function_definition; + Vec4f anchor; + float whitespace; // NOTE: How much brighter than the background from 0.1 to 1.0 +} Theme; + + +extern Theme themes[]; +extern int currentThemeIndex; +void initialize_themes(); +#define CURRENT_THEME (themes[currentThemeIndex]) + +void theme_next(int *currentThemeIndex); +void theme_previous(int *currentThemeIndex); + +#endif // THEME_H diff --git a/todo.org b/todo.org index 7b933257..8f173732 100644 --- a/todo.org +++ b/todo.org @@ -35,19 +35,15 @@ different font per token [] syntax highlighting for : | || & && [x] highlight links [x] ** Evil -evil-delete-backward-char [x] evil-search-backward [] -evil-change-line [] - +evil-change-line(smarter version, don't delete ";") [] splits(maybe) [] 5k should work [] -shift + 8 [] + +evil-delete-backward-char [x] +evil-search-word-forward (shift + 8) [x] shift + 5 [x] ** Editor - -a theme should be able to define how much lighter of the bg -whitespaces indicators are in % (currently hardcoded to 70%)[] - u can only type stuff that exist in the file in the search buffer, u should be able to type anything (also highlight not found stuff in red like emacs) [] @@ -74,6 +70,10 @@ use window hight and width dinamicly instead of fixed position when animations a + + +a theme should be able to define how much lighter of the bg +whitespaces indicators are in % (currently hardcoded to 70%)[x] keep a list of opened files to quickly go to the previous or next "buffer" or kill them [x] mismatched cut and selection [x] From 239f3c8c9aba67bedd737f44b31764a60f8e185d Mon Sep 17 00:00:00 2001 From: laluxx Date: Sun, 14 Jan 2024 15:08:10 +0100 Subject: [PATCH 55/74] Evil_find_char and render_indentation_lines --- config/ded/fonts/JetBrainsMono-Bold.ttf | Bin 0 -> 277828 bytes config/ded/fonts/jet-extra-bold.ttf | Bin 213372 -> 0 bytes src/editor.c | 5 +- src/editor.h | 1 + src/evil.c | 86 +++++++- src/evil.h | 4 + src/main.c | 78 ++++---- src/render.c | 250 +++++++++++++++--------- src/theme.c | 18 +- src/theme.h | 5 +- todo.org | 14 +- 11 files changed, 320 insertions(+), 141 deletions(-) create mode 100644 config/ded/fonts/JetBrainsMono-Bold.ttf delete mode 100644 config/ded/fonts/jet-extra-bold.ttf diff --git a/config/ded/fonts/JetBrainsMono-Bold.ttf b/config/ded/fonts/JetBrainsMono-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8c93043de6454ad2d5575f0751150c6551d9c588 GIT binary patch literal 277828 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

^Q2@p_nJptvCyhdNtfUDv9XvP^J$Tq^Yf}I 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 s3n!(`lCJDArN|NmBd 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

Zh7cd=34FaGWy`SDvi)66*nbC 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 RXt+-ctVzYaTEQjd{{RH8A$|Y= literal 0 HcmV?d00001 diff --git a/config/ded/fonts/jet-extra-bold.ttf b/config/ded/fonts/jet-extra-bold.ttf deleted file mode 100644 index fe5be6a15846a6fbee3a4645829c533e21f9222f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 213372 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

HERH5`nT84()71JrQI@3(#E>;qeu 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 z zN3>xHmvSyQ4)uEn!OXaODOZA5n zQZK&MxCKJKND9iD+BHbcVRH|dyJPOIykq2>j&D-$82KJ2FyA%R>-OZBras(|!Glf52jYc{a9m^xcb9W4gd7B?fBEXROvz-n$z ziyAPZ!$TfLs%H3YSLMTycYWQe#?0Q-{mc^*Z6K?cM#+Xm3xXw=34^>rvR# zztuPUdXfkNhiKtF0MXa05!@Tu*$2IR-_C7OUvEmbV2DLQ(0!>8d*j@owAJ9P)u6W3 zbbG6Zdei+a?V@jZq_vt>ws~KfT&X#WmSQAba_wlmT*;OmimA&{v_$~-I7sb|AH zTGUIrq%4y~^^$t_sU$mHVqGTKnHu%#S$`jLhF{PL>c!VBZ;sB;?y8r}Zq+;HISGZ6 zmogGlzOq%ZPVVrSR6qJomA9ZO8N*4vXa-V`RiT_$-Ki z&;h>&+LeU_{Jy>N7RcPIC_p{ur4W!x$l2?Wn0l4p2ijC$$PYar0|E1cDpEGxeZV&#G$z;Y{5_weh&^N0PiL z{u~T=cf}_B!GM-qf&tBwf_`(?k|%!GOeq-9vu@DueWwM6U_cM@pq7!4Ur$@XfM#An zzh+*+fMQ4Z-Fw&5Tri+zs$f7dWPi|u(>C?k20q(^&*ZlaT(*JBHgMPmE?bFMD9^y- z_sTc*+Xg<{z~%Syd2oB}_3AP3`c3(MQ=i||<2U8l9(<-gzk$EryPNW{{*Y5lP_J|R z!DiDhdcA{plg~^BK{E*iwYcjKYQYkB1CJId{lRw4Xo3MPU`d(;(wjgVW>lj`QeNs) ze^Crf4=;bv-zMov53ist>A2pY$T6Tgri--9=nrZ>?+>~j33(yi6bxrxMsn0d_xTc(-2cN0W^+?CVtH}pJR+Es) z*KFFW1!s_u$)_bJf3VfmuVo*Qj)AYuz@a4wkdU5kf^MB86hlu&VAu5Iq*9GLf}YfD zs^^bjaF{8BDpKhwsOd>G_3Ydh;my&3h*%Wau_K}yJn_=&aQ=XKlg z#Ft<-E|x}i?u=kLx}&2jLYEKH6@&En7?yi6xtgb|Vr>!R4I zZ86q@zg6*=uBNFzL)Aaf*V`A*GBv7~F{n{Jq{|BR@1}hHV#-u687p^0VLze@k=eaT zB-do}-gTud?HLOG;W6m6Nbc{i6A^`s4zyErOJsuKsh12@n|@Rc*I7(s)yo((Ry}C=wV>~JwBV0>C_^=0 zAumH=43Cf$G&YxXHeO9FdK$#LDXB^4(v=2vr9tysoBpj`-CV`Q?0_BAuewrK zSL&KXT_-dbvI$sIy@;ks;m4kghMJ>kH}nLb|?? zt`CRs$ofLMzL2gjr0WYcr=K3}@2i!UF$25%WM|ZkiO2S+hxFc9Z&W>HL}T6Cq`)4i zPv08bB@?v(VEgMd0{nG~tKnU7LEIJB!(AiZU#GYj-Zkd^b&8weU2#?1>oq7{y?r~z zK+jjJ9wbciA!A@07P9IweQV!fzj>0NsC*J+l`js>WUqeIFw0ck5cQ;*+dH_UU)7-= zWF7Ls)FB^r9r{Vuq4LQ(R6bpYden8Oj0#!uNe%p{$@Qp_?r!0!Uivh z@Tc<|yo3#2!UiwlddbUyA6xZ=d67~>K(TL$IrWn5;Yz=G7*TII3OI>?;j9wW;jGCw zoi+KYCK3Rza_Y)){K0VLVO_ZaOU^`r`rKj6r@nh-ng)e+X7i;K-)(=6A}#}`_iDbg z)j|b`)mhDVenq=Es$11}@=3p{@8qiiTW3{Fs!40|Y)p3=`&yQ;{ee(=bWbNZ6IQzV z7pFA`)QA-<)F{zNSJZT`7G`X})1J}UhZzv7;&`-dXS6@o*Co}^Q0sLmMNUi8I`v!e zp?{N=w6|-K0(Uj_+hI*Sb~vONTsW);S2(0Z2;0%pEbdB#vBNF88IG2Yk*-7vq-&z8 zH-oKS4>rGF>)_B_fA(pEXqwdL_rs=AH(AU0Xj`yYBV)5Nz^s+_msp|%>dRA;NB^kG z2x~dl4jV*=wfu{B&2Yn7?Sc1jdZZT+^h9GustC9F+LpuMvn%I>wlym^E@@r2cs2aHsp-%T8N@Ujl-B8nH2F2+n*16uO?uU4+s$4Vm~yqA z7I-u8m`TH~GhJgk+BO|;>!pBg`&%+JaSh`%WbkB$l5K{Ttv3b$vca_(f_9sojw0fN z9r38??K*c%bjQwty-3LD>FbU`9|p}>x_RvD&x*<6ACD@dW&ylm?@D3atV#XN9vPTX zTd!N|)N9b3dW|)w-i-DpLtc7cqrJ_5>JJ;NChrDodZA|9dLabD4rTR6pAO_vg^lrU&(26y6QYOyUtKjy`eCz=df+PKF83~_1hsQYbW&7Xh}*Bg`3C32RpY7Y>VhF z3k3Z+Uapiz+j=t+l^Wpu!E^}iKu=%4H>#S`0j^|@5j`K+dM^mym`>EIHvnc3WjfI| zood$`lCKZtNIe#Y_h8RJY-i72gO~aYoxHPWFrF6a@9*0^xKsTUs1IkT_kJmRnWVaO zmDJU@ThmmazFw#FM7Mf*LOP|RZ(y5#8r<3C<<=AyFufcwSPvMi2TU&p3_=2?kpa`& z0mBahdP#~+G(G+ThVcdT)~X$7sn?)m79HG~twHYSQ4PuR-een+FB1IZi-cUaS8og0 z0loCa-S8#9rXt5M(y*bbut9p*bVAs)FWjy>E8MQBCfu(1h--va*9fgHgx0R!4(z{d zSM|F_XmyRy>ehvY`E_SXE>pW}Xx25{&8=%q>)D!;uTGPQTc^jZ3+~lFkn(%IhSIIq zP`dR7N<%`fR_tKM$$W1}&NZ!eO{-ngY8PXxX8>ENT~VQ~Xz&Q^ccqInlb6>T{hHEhs6SZ?&|2x|`rflu!(#@oYvd=_%pb0qr(8qNt~L!od8UW7P>*-brCc*V;kZd%uHk|>@yEPt z4(^8ZcyW!K=V}!cJZ?3YbB*ZX>YXRs4SC<0dbLVQdg$tMwTjPnwRYHcwRY8ZjiBHf zNzTfHdq zW$>-( zs%p@WDK}v7Y2;ZqWawI}s@`YFGClO8E1~6cgHLO9Mk`fp*zR$Wyg$v$I!Q9 z#=B$qx?||VaZNuP{_Yrl=@>pAGVAh?k-tJ_eheG_88-AB*1LCh*a;OxI=A=s?Z%|q z9mOgXHX1#79Y~AsjC6Vlz8$e%7|8js1nKMTQY{Xc5(84f5g&jh$w0I#vm@HmV+v8Z zf`(5zbb@w>(SD5bw^ zbn`R&qdQ?~qBJ8p@ollK153Qt=c?D0gI>pFr4EFm_&}t8VCB}uP~5=~&j3|mQd7D+ zU#=bpVgnd8CR1^IZ*S)|Y*YcMOS*czWQ{f>$Or10#$uWs7!7VI){6sDEpSj@}`F0+an!)yU_2+GL@|9cZ?;56KKwYRv0X_Z})H}W9DE6oZm6#4vsN% zFam<#Oenb5X+Z6e1XL=j0T2}9P$rufn6Ka^C)rf}nrv@sR_y5xe+P~I@C&wnhhLz+ zAAZ3OF7wOlGoO?=+*)a!=>1| z>E@SIq}bS_PFCjVnzOwNUey1>vI%V`U^kO0~07`EpZDjbvtHB_$t? zMG_vfaf8Kc#!Zgw6+Wl9&ZU45UZ?YMZKUnE!p{`frF12(tLa)?*VB!-ZlWjP3hz=}HzPg@p%EIv zwUc(?x|MFlHAWFr1)imYxbCHUaXo{cfh#;paXp8ggX<^hCvm-qUWDtX=%;YK6bDEU z_>f+Q>-F?{T<@ZH;rbW_X5e>t7Ov+od<%a=d?me*aP1PP7al;L!1ZErF|N0YTXDTz z+>R?ea4ZTxo4;C2yzR@h7<^b};0n(a^pOm7g!oqYlV^@K;yp9zbMto6F9u#Q=zE4z Z{$N?+9UlVzs#1Veq&_A7h{#da{{z-~j-CJj diff --git a/src/editor.c b/src/editor.c index e5eaa315..22cee748 100644 --- a/src/editor.c +++ b/src/editor.c @@ -18,7 +18,7 @@ EvilMode current_mode = NORMAL; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; -float max_zoom_factor = 10.0; +float max_zoom_factor = 50.0; bool isAnimated = true; bool isWave = false; @@ -30,10 +30,11 @@ bool relativeLineNumbers = false; bool showWhitespaces = false; bool copiedLine = false; -bool matchParenthesis = true; //TODO segfault and highlight size +bool matchParenthesis = true; bool hl_line = false; bool superDrammtic = false; +bool showIndentationLines = true; bool showMinibuffer = true; bool showModeline = true; diff --git a/src/editor.h b/src/editor.h index 46345f27..db4088e2 100644 --- a/src/editor.h +++ b/src/editor.h @@ -25,6 +25,7 @@ extern bool relativeLineNumbers; extern bool highlightCurrentLineNumber; extern bool matchParenthesis; extern bool superDrammtic; +extern bool showIndentationLines; extern bool showMinibuffer; extern bool showModeline; diff --git a/src/evil.c b/src/evil.c index 967f6bb0..5a812e05 100644 --- a/src/evil.c +++ b/src/evil.c @@ -1,5 +1,6 @@ #include "evil.h" #include "editor.h" +#include void evil_open_below(Editor *editor) { size_t row = editor_cursor_row(editor); @@ -86,7 +87,7 @@ void evil_jump_item(Editor *editor) { // TODO when there is a {} dont add the space void evil_join(Editor *e) { size_t row = editor_cursor_row(e); - if (row >= e->lines.count - 1) return; // Exit if on the last line + if (row >= e->lines.count - 1) return; // Get the current line and the next line size_t current_line_end = e->lines.items[row].end; @@ -373,7 +374,6 @@ void evil_search_previous(Editor *e) { } } - void evil_search_word_forward(Editor *e) { char word[256]; @@ -391,6 +391,88 @@ void evil_search_word_forward(Editor *e) { } } +void evil_change_line(Editor *e) { + if (e->searching || e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Calculate the position of the first non-whitespace character + size_t first_non_whitespace = line_begin; + while (first_non_whitespace < line_end && + (e->data.items[first_non_whitespace] == ' ' || e->data.items[first_non_whitespace] == '\t')) { + first_non_whitespace++; + } + + // Adjust line_end to stop at the semicolon, if it's the last character + if (line_end > first_non_whitespace && e->data.items[line_end - 1] == ';') { + line_end--; + } + + // Determine the start position for deletion + size_t delete_from = e->cursor < first_non_whitespace ? first_non_whitespace : e->cursor; + + // Calculate the length from the deletion start position to the end of the line + size_t length = line_end - delete_from; + + // Copy the text to be deleted to the clipboard + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[delete_from], length); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // Delete the text from the deletion start position to the end of the line + memmove(&e->data.items[delete_from], &e->data.items[line_end], e->data.count - line_end); + e->data.count -= length; + + // Set the cursor position to the first non-whitespace character if the cursor was on the whitespace + e->cursor = e->cursor < first_non_whitespace ? first_non_whitespace : e->cursor; + + current_mode = INSERT; + + editor_retokenize(e); +} + +// TODO Capital char +void evil_find_char(Editor *e, char target) { + if (e->searching || e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Start searching from the character right after the cursor position + size_t search_position = e->cursor + 1; + + while (search_position < line_end) { + if (e->data.items[search_position] == target) { + // If the target character is found, move the cursor to its position + e->cursor = search_position; + break; + } + search_position++; + } +} + +bool handle_evil_find_char(Editor *editor, SDL_Event *event) { + static bool waitingForFindChar = false; // Static variable inside the function + + if (waitingForFindChar) { + // Call evil_find_char with the pressed key + evil_find_char(editor, event->key.keysym.sym); + waitingForFindChar = false; + editor->last_stroke = SDL_GetTicks(); + return true; // The key event has been handled + } else if (event->key.keysym.sym == SDLK_f && !(SDL_GetModState() & KMOD_CTRL)) { + waitingForFindChar = true; + editor->last_stroke = SDL_GetTicks(); + return false; // The key event has not been fully handled yet + } + return false; // The key event has not been fully handled +} diff --git a/src/evil.h b/src/evil.h index 068fbe4c..c8ef44a8 100644 --- a/src/evil.h +++ b/src/evil.h @@ -3,6 +3,7 @@ #include "editor.h" + void evil_open_below(Editor *editor); void evil_open_above(Editor *editor); void evil_jump_item(Editor *editor); @@ -18,6 +19,9 @@ void evil_delete_backward_char(Editor *e); void evil_search_next(Editor *e); void evil_search_previous(Editor *e); void evil_search_word_forward(Editor *e); +void evil_change_line(Editor *e); +void evil_find_char(Editor *e, char target); +bool handle_evil_find_char(Editor *editor, SDL_Event *event); #endif // EVIL_H diff --git a/src/main.c b/src/main.c index ab2ff6af..8282aca5 100644 --- a/src/main.c +++ b/src/main.c @@ -448,10 +448,7 @@ int main(int argc, char **argv) editor.atlas = &atlas; editor_retokenize(&editor); - - - - + bool quit = false; bool file_browser = false; @@ -465,6 +462,10 @@ int main(int argc, char **argv) break; case SDL_KEYDOWN: + if (handle_evil_find_char(&editor, &event)) { + break; // Skip further processing if the key event was handled + } + if (file_browser) { switch (event.key.keysym.sym) { case SDLK_F3: { @@ -762,13 +763,13 @@ int main(int argc, char **argv) } } break; - case SDLK_f: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - + case SDLK_f: + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + case SDLK_s: { if (event.key.keysym.mod & KMOD_CTRL) { editor_start_search(&editor); @@ -789,6 +790,22 @@ int main(int argc, char **argv) } } break; + + case SDLK_c: + if (event.key.keysym.mod & KMOD_SHIFT) { + evil_change_line(&editor); + } + + // Eat up the next SDL_TEXTINPUT event for 'C' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'C')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + + break; + + case SDLK_ESCAPE: { editor_clear_mark(&editor); @@ -1029,31 +1046,24 @@ int main(int argc, char **argv) } } break; - // TODO mouse support - /* case SDL_MOUSEWHEEL: */ - /* if (event.wheel.y > 0 && SDL_GetModState() & KMOD_CTRL) { // Mouse wheel scrolled up with Ctrl held */ - /* zoom_factor -= 0.1f; // Adjust the zoom factor for zooming in */ - /* if (zoom_factor < 1.0f) zoom_factor = 1.0f; // Ensure zoom_factor doesn't drop below a threshold */ - /* } else if (event.wheel.y < 0 && SDL_GetModState() & KMOD_CTRL) { // Mouse wheel scrolled down with Ctrl held */ - /* zoom_factor += 0.1f; // Adjust the zoom factor for zooming out */ - /* } */ - /* break; */ - case SDLK_i: - current_mode = INSERT; - - // Reset the blink timer - editor.last_stroke = SDL_GetTicks(); - if (superDrammtic){ - isAnimated = true; - } - // Eat up the next SDL_TEXTINPUT event for 'i' - SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'i' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'i') { - SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue - } - break; + if (SDL_GetModState() & KMOD_CTRL) { + showIndentationLines = !showIndentationLines; + } else { + current_mode = INSERT; + if (superDrammtic){ + isAnimated = true; + } + editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'i' + SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'i' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'i') { + SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue + } + } + break; case SDLK_v: { if (SDL_GetModState() & KMOD_SHIFT) { diff --git a/src/render.c b/src/render.c index e20a1e35..898123f5 100644 --- a/src/render.c +++ b/src/render.c @@ -1,12 +1,14 @@ #include "render.h" #include "editor.h" +#include "la.h" +#include "simple_renderer.h" #include "theme.h" float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor) { if (editor->searching) { - Vec4f color = themes[currentThemeIndex].text; + Vec4f color = CURRENT_THEME.text; Vec2f searchPos = {0.0f, 0.0f}; simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_TEXT); @@ -25,11 +27,11 @@ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed } float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; - float brightnessIncreasePercent = themes[currentThemeIndex].whitespace; + Vec4f whitespaceColor = CURRENT_THEME.whitespace; for (size_t i = 0; i < editor->lines.count; ++i) { Line line = editor->lines.items[i]; - Vec2f pos = { 0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE }; + Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; if (showLineNumbers) { pos.x += lineNumberWidth; @@ -37,22 +39,6 @@ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed for (size_t j = line.begin; j < line.end; ++j) { if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { - Vec4f backgroundColor = themes[currentThemeIndex].background; - Vec4f whitespaceColor; - - // Increase each RGB component based on the percentage, but not above 1 - whitespaceColor.x = backgroundColor.x + brightnessIncreasePercent * (1 - backgroundColor.x); - whitespaceColor.y = backgroundColor.y + brightnessIncreasePercent * (1 - backgroundColor.y); - whitespaceColor.z = backgroundColor.z + brightnessIncreasePercent * (1 - backgroundColor.z); - - // Clamp values to max 1.0 - whitespaceColor.x = whitespaceColor.x > 1 ? 1 : whitespaceColor.x; - whitespaceColor.y = whitespaceColor.y > 1 ? 1 : whitespaceColor.y; - whitespaceColor.z = whitespaceColor.z > 1 ? 1 : whitespaceColor.z; - - // Keep the alpha value the same - whitespaceColor.w = backgroundColor.w; - // Measure the actual character width Vec2f char_pos = pos; char_pos.x += (j - line.begin) * squareSize; // Starting position for this character @@ -70,6 +56,84 @@ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed +typedef struct { + size_t pos; + size_t line; + int level; + float startX; // X position of the start of the line +} BraceInfo; + + +// TODO exit early If a line does not contain any braces +// TODO calculate properly CHARACTER_WIDTH +void render_indentation_lines(Simple_Renderer *sr, Editor *editor) { + if (showIndentationLines) { + + float LINE_THICKNESS = 4.0f; + BraceInfo braceStack[5000]; // Assuming a max of 5000 nested braces + int braceCount = 0; + float CHARACTER_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; + + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + for (size_t j = line.begin; j < line.end; ++j) { + if (editor->data.items[j] == '{') { + ssize_t matching_pos = find_matching_parenthesis(editor, j); + if (matching_pos != -1) { + size_t matching_line = editor_row_from_pos(editor, matching_pos); + + if (matching_line == i) { + j = matching_pos; // Move past the closing brace on the same line + continue; + } + + // Calculate the position of the first non-whitespace character + size_t first_non_whitespace = line.begin; + while (first_non_whitespace < line.end && + (editor->data.items[first_non_whitespace] == ' ' || + editor->data.items[first_non_whitespace] == '\t')) { + first_non_whitespace++; + } + + // Calculate the X position where the line should start + float lineStartX = (first_non_whitespace - line.begin) * CHARACTER_WIDTH; + + braceStack[braceCount] = (BraceInfo){j, i, braceCount, lineStartX}; + braceCount++; + } + } else if (editor->data.items[j] == '}') { + if (braceCount > 0 && braceStack[braceCount - 1].line < i) { + braceCount--; + } + } + } + + // Draw lines for each brace in the stack + for (int k = 0; k < braceCount; k++) { + if (braceStack[k].line < i) { + Vec2f start_pos = {braceStack[k].startX, -((float)braceStack[k].line + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + // Extend the line to include the line with the closing brace + Vec2f end_pos = {start_pos.x, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + + if (showLineNumbers) { + start_pos.x += lineNumberWidth; + end_pos.x += lineNumberWidth; + } + + simple_renderer_solid_rect(sr, start_pos, vec2f(LINE_THICKNESS, end_pos.y - start_pos.y), CURRENT_THEME.indentation_line); + } + } + } + } +} + + + + + + + + void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) @@ -90,7 +154,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespace_size); float whitespace_width = whitespace_size.x; - + render_indentation_lines(sr, editor); // Render hl_line { @@ -108,7 +172,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer highlightWidth += lineNumberWidth; // Increase width to include line numbers area } - simple_renderer_solid_rect(sr, highlightPos, vec2f(highlightWidth, FREE_GLYPH_FONT_SIZE), themes[currentThemeIndex].hl_line); + simple_renderer_solid_rect(sr, highlightPos, vec2f(highlightWidth, FREE_GLYPH_FONT_SIZE), CURRENT_THEME.hl_line); simple_renderer_flush(sr); } @@ -139,7 +203,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer anchor_pos_vec.x += lineNumberWidth; } - Vec4f ANCHOR_COLOR = themes[currentThemeIndex].anchor; + Vec4f ANCHOR_COLOR = CURRENT_THEME.anchor; simple_renderer_solid_rect( sr, anchor_pos_vec, vec2f(whitespace_width, FREE_GLYPH_FONT_SIZE), @@ -221,7 +285,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer { if (editor->searching) { simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - Vec4f selection_color = themes[currentThemeIndex].search; // or .selection_color if that's what you named it in the struct. + Vec4f selection_color = CURRENT_THEME.search; // or .selection_color if that's what you named it in the struct. Vec2f p1 = cursor_pos; Vec2f p2 = p1; @@ -274,7 +338,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer mark_end_scr.x += lineNumberWidth; } - Vec4f mark_color = themes[currentThemeIndex].marks; + Vec4f mark_color = CURRENT_THEME.marks; simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); } } @@ -296,8 +360,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer size_t currentLineNumber = editor_cursor_row(editor); // Different colors for line numbers - Vec4f defaultColor = themes[currentThemeIndex].line_numbers; - Vec4f currentLineColor = themes[currentThemeIndex].current_line_number; + Vec4f defaultColor = CURRENT_THEME.line_numbers; + Vec4f currentLineColor = CURRENT_THEME.current_line_number; for (size_t i = 0; i < editor->lines.count; ++i) { char lineNumberStr[10]; @@ -367,7 +431,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Define the size of the highlight rectangle to match character size Vec2f rect_size = vec2f(char_width, FREE_GLYPH_FONT_SIZE); - simple_renderer_solid_rect(sr, match_pos_screen, rect_size, themes[currentThemeIndex].matching_parenthesis); + simple_renderer_solid_rect(sr, match_pos_screen, rect_size, CURRENT_THEME.matching_parenthesis); } } } @@ -383,12 +447,13 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } else { simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); } + for (size_t i = 0; i < editor->tokens.count; ++i) { Token token = editor->tokens.items[i]; Vec2f pos = token.position; //Vec4f color = vec4fs(1); // TODO match color for open and close - Vec4f color = themes[currentThemeIndex].text; + Vec4f color = CURRENT_THEME.text; // Adjust for line numbers width if they are displayed if (showLineNumbers) { @@ -410,59 +475,59 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer if(sscanf(token.text, "#%06x", &hex_value) == 1) { color = hex_to_vec4f(hex_value); } else { - color = themes[currentThemeIndex].hashtag; // Default to the hashtag color if not a valid hex + color = CURRENT_THEME.hashtag; // Default to the hashtag color if not a valid hex } } else { - color = themes[currentThemeIndex].hashtag; // Not a valid hex color + color = CURRENT_THEME.hashtag; // Not a valid hex color } } else { - color = themes[currentThemeIndex].hashtag; // Default color for preprocessor directives + color = CURRENT_THEME.hashtag; // Default color for preprocessor directives } break; case TOKEN_KEYWORD: - color = themes[currentThemeIndex].logic; + color = CURRENT_THEME.logic; break; case TOKEN_TYPE: - color = themes[currentThemeIndex].type; + color = CURRENT_THEME.type; break; case TOKEN_FUNCTION_DEFINITION: - color = themes[currentThemeIndex].function_definition; + color = CURRENT_THEME.function_definition; break; case TOKEN_LINK: - color = themes[currentThemeIndex].link; + color = CURRENT_THEME.link; break; case TOKEN_OR: - color = themes[currentThemeIndex].logic_or; + color = CURRENT_THEME.logic_or; break; case TOKEN_PIPE: - color = themes[currentThemeIndex].pipe; + color = CURRENT_THEME.pipe; break; case TOKEN_AND: - color = themes[currentThemeIndex].logic_and; + color = CURRENT_THEME.logic_and; break; case TOKEN_AMPERSAND: - color = themes[currentThemeIndex].ampersand; + color = CURRENT_THEME.ampersand; break; case TOKEN_POINTER: - color = themes[currentThemeIndex].pointer; + color = CURRENT_THEME.pointer; break; case TOKEN_MULTIPLICATION: - color = themes[currentThemeIndex].multiplication; + color = CURRENT_THEME.multiplication; break; case TOKEN_COMMENT: { - color = themes[currentThemeIndex].comment; + color = CURRENT_THEME.comment; // Checking for TODOOOO... char* todoLoc = strstr(token.text, "TODO"); @@ -478,7 +543,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer ptr++; } - Vec4f baseColor = themes[currentThemeIndex].todo; + Vec4f baseColor = CURRENT_THEME.todo; float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of TODOOOOO color.x = baseColor.x + deltaRed * numOs; @@ -501,7 +566,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer ptr++; } - Vec4f baseColor = themes[currentThemeIndex].fixme; + Vec4f baseColor = CURRENT_THEME.fixme; float deltaRed = (1.0f - baseColor.x) / 5; // Adjusting for maximum of FIXMEEEE color.x = baseColor.x + deltaRed * numEs; @@ -514,7 +579,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer char* bugLoc = strstr(token.text, "BUG"); if (bugLoc && (size_t)(bugLoc - token.text + 2) < token.text_len) { - color = themes[currentThemeIndex].bug; + color = CURRENT_THEME.bug; } @@ -522,7 +587,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer char* noteLoc = strstr(token.text, "NOTE"); if (noteLoc && (size_t)(noteLoc - token.text + 3) < token.text_len) { - color = themes[currentThemeIndex].note; + color = CURRENT_THEME.note; } // Continue rendering with @@ -531,62 +596,62 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case TOKEN_EQUALS: - color = themes[currentThemeIndex].equals; + color = CURRENT_THEME.equals; break; case TOKEN_EXCLAMATION: - color = themes[currentThemeIndex].exclamation; + color = CURRENT_THEME.exclamation; break; case TOKEN_NOT_EQUALS: - color = themes[currentThemeIndex].not_equals; + color = CURRENT_THEME.not_equals; break; case TOKEN_EQUALS_EQUALS: - color = themes[currentThemeIndex].equals_equals; + color = CURRENT_THEME.equals_equals; break; case TOKEN_LESS_THAN: - color = themes[currentThemeIndex].less_than; + color = CURRENT_THEME.less_than; break; case TOKEN_GREATER_THAN: - color = themes[currentThemeIndex].greater_than; + color = CURRENT_THEME.greater_than; break; case TOKEN_ARROW: - color = themes[currentThemeIndex].arrow; + color = CURRENT_THEME.arrow; break; case TOKEN_MINUS: - color = themes[currentThemeIndex].minus; + color = CURRENT_THEME.minus; break; case TOKEN_PLUS: - color = themes[currentThemeIndex].plus; + color = CURRENT_THEME.plus; break; case TOKEN_TRUE: - color = themes[currentThemeIndex].truee; + color = CURRENT_THEME.truee; break; case TOKEN_FALSE: - color = themes[currentThemeIndex].falsee; + color = CURRENT_THEME.falsee; break; case TOKEN_OPEN_SQUARE: - color = themes[currentThemeIndex].open_square; + color = CURRENT_THEME.open_square; break; case TOKEN_CLOSE_SQUARE: - color = themes[currentThemeIndex].close_square; + color = CURRENT_THEME.close_square; break; case TOKEN_ARRAY_CONTENT: - color = themes[currentThemeIndex].array_content; + color = CURRENT_THEME.array_content; break; case TOKEN_BAD_SPELLCHECK: - color = themes[currentThemeIndex].bug; + color = CURRENT_THEME.bug; break; case TOKEN_STRING: /* color = hex_to_vec4f(0x73c936ff); */ - color = themes[currentThemeIndex].string; + color = CURRENT_THEME.string; break; case TOKEN_COLOR: // Added case for TOKEN_COLOR { @@ -608,31 +673,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } - - render_whitespaces(atlas, sr, editor); - - // Render minibuffer - { - if (showMinibuffer) { - simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); - simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){w, minibufferHeight}, CURRENT_THEME.minibuffer); - simple_renderer_flush(sr); - } - } - - - // Render modeline - { - if (showModeline) { - simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); - simple_renderer_solid_rect(sr, (Vec2f){0.0f, minibufferHeight}, (Vec2f){w, modelineHeight}, CURRENT_THEME.modeline); - // render accent - simple_renderer_solid_rect(sr, (Vec2f){0.0f, minibufferHeight}, (Vec2f){modelineAccentWidth, modelineHeight}, CURRENT_THEME.modeline_accent); - simple_renderer_flush(sr); - } - } - - + render_whitespaces(atlas, sr, editor); // Render cursor if(editor->searching){ @@ -654,7 +695,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer const Uint32 CURSOR_BLINK_THRESHOLD = 500; const Uint32 CURSOR_BLINK_PERIOD = 1000; const Uint32 t = SDL_GetTicks() - editor->last_stroke; - Vec4f CURSOR_COLOR = themes[currentThemeIndex].cursor; + Vec4f CURSOR_COLOR = CURRENT_THEME.cursor; float BORDER_THICKNESS = 3.0f; Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); @@ -690,7 +731,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case EMACS: { float cursor_width; - CURSOR_COLOR = themes[currentThemeIndex].emacs_cursor; + CURSOR_COLOR = CURRENT_THEME.emacs_cursor; // Check if the cursor is on an actual character or an empty line if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { @@ -714,7 +755,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case INSERT: - CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; + CURSOR_COLOR = CURRENT_THEME.insert_cursor; CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode // Implement blinking for INSERT mode if (t < CURSOR_BLINK_THRESHOLD || @@ -797,6 +838,30 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } simple_renderer_flush(sr); } + + + // Render minibuffer + { + if (showMinibuffer) { + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, (Vec2f){0.0f, 0.0f}, (Vec2f){w, minibufferHeight}, CURRENT_THEME.minibuffer); + simple_renderer_flush(sr); + } + } + + + // Render modeline + { + if (showModeline) { + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, (Vec2f){0.0f, minibufferHeight}, (Vec2f){w, modelineHeight}, CURRENT_THEME.modeline); + // render accent + simple_renderer_solid_rect(sr, (Vec2f){0.0f, minibufferHeight}, (Vec2f){modelineAccentWidth, modelineHeight}, CURRENT_THEME.modeline_accent); + simple_renderer_flush(sr); + } + } + + // Update camera { @@ -844,9 +909,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer float cursorPosY = -((float)currentLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE; // Define the top and bottom edges of the current camera view. - float cameraTopEdge = sr->camera_pos.y - (h/2.0f) / sr->camera_scale; - float cameraBottomEdge = sr->camera_pos.y + (h/2.0f) / sr->camera_scale; + float cameraTopEdge = sr->camera_pos.y - (h * 1/2.3f) / sr->camera_scale; + float cameraBottomEdge = sr->camera_pos.y + (h * 1/2.3f) / sr->camera_scale; + // Adjust the camera's Y position if the cursor is outside the viewport. if (cursorPosY > cameraBottomEdge) { sr->camera_pos.y += cursorPosY - cameraBottomEdge; // Move camera down just enough diff --git a/src/theme.c b/src/theme.c index e04b4a4f..d75900de 100644 --- a/src/theme.c +++ b/src/theme.c @@ -56,7 +56,8 @@ void initialize_themes() { .minibuffer = hex_to_vec4f(0x090909FF), .modeline = hex_to_vec4f(0x060606FF), .modeline_accent = hex_to_vec4f(0x658B5FFF), - .whitespace = 0.7, + .whitespace = hex_to_vec4f(0x171717FF), + .indentation_line = hex_to_vec4f(0x171717FF), }; // DOOM one @@ -109,7 +110,8 @@ void initialize_themes() { .minibuffer = hex_to_vec4f(0x21242BFF), .modeline = hex_to_vec4f(0x1D2026FF), .modeline_accent = hex_to_vec4f(0x51AFEFFF), - .whitespace = 0.7, + .whitespace = hex_to_vec4f(0x3F444AFF), + .indentation_line = hex_to_vec4f(0x3F444AFF), }; // Dracula @@ -162,7 +164,8 @@ void initialize_themes() { .minibuffer = hex_to_vec4f(0x1E2029FF), //#1E2029 .modeline = hex_to_vec4f(0x22232DFF), .modeline_accent = hex_to_vec4f(0xBD93F9FF), - .whitespace = 0.7, + .whitespace = hex_to_vec4f(0x565761FF), + .indentation_line = hex_to_vec4f(0x565761FF), }; // DOOM city lights @@ -215,7 +218,8 @@ void initialize_themes() { .minibuffer = hex_to_vec4f(0x181E24FF), .modeline = hex_to_vec4f(0x181F25FF), .modeline_accent = hex_to_vec4f(0x5EC4FFFF), - .whitespace = 0.7, + .whitespace = hex_to_vec4f(0x384551FF), + .indentation_line = hex_to_vec4f(0x384551FF), }; @@ -269,7 +273,8 @@ void initialize_themes() { .minibuffer = hex_to_vec4f(0x222323FF), .modeline = hex_to_vec4f(0x2D2E2EFF), .modeline_accent = hex_to_vec4f(0xB6E63EFF), - .whitespace = 0.7, + .whitespace = hex_to_vec4f(0x4E4E4EFF), + .indentation_line = hex_to_vec4f(0x4E4E4EFF), }; @@ -324,7 +329,8 @@ void initialize_themes() { .minibuffer = hex_to_vec4f(0x292D3EFF), .modeline = hex_to_vec4f(0x232635FF), .modeline_accent = hex_to_vec4f(0xC792EAFF), - .whitespace = 0.7, + .whitespace = hex_to_vec4f(0x4E5579FF), + .indentation_line = hex_to_vec4f(0x4E5579FF), }; } diff --git a/src/theme.h b/src/theme.h index 48cfbeb3..1063b2a9 100644 --- a/src/theme.h +++ b/src/theme.h @@ -52,15 +52,16 @@ typedef struct { Vec4f type; Vec4f function_definition; Vec4f anchor; - float whitespace; // NOTE: How much brighter than the background from 0.1 to 1.0 + Vec4f whitespace; + Vec4f indentation_line; } Theme; extern Theme themes[]; extern int currentThemeIndex; -void initialize_themes(); #define CURRENT_THEME (themes[currentThemeIndex]) +void initialize_themes(); void theme_next(int *currentThemeIndex); void theme_previous(int *currentThemeIndex); diff --git a/todo.org b/todo.org index 8f173732..fb5314ab 100644 --- a/todo.org +++ b/todo.org @@ -20,13 +20,11 @@ make the text disappear [] (bad when going up) [] ** Shaders use shaders from =~/.config/ded/shaders= instead [x] -** Renderer -render circles (for whitespaces) [] -line under links (and clickable things)[] ** Bugs opening a file with ded file.c that contain a function definition, trow a [1] 35755 segmentation fault (core dumped) ** Lexer +chech for strings in arrays [] '' [] NULL [] multi line comments [] @@ -34,7 +32,15 @@ different vertex and fragment shader per token [] different font per token [] syntax highlighting for : | || & && [x] highlight links [x] +** Renderer +check if the #include exist in /usr/include +and if it exist render a line under it to show it's clickable +also check if the file exist before opening it [] + +render circles (for whitespaces) [] +line under links (and clickable things)[] ** Evil +evil-find-char-backward [] evil-search-backward [] evil-change-line(smarter version, don't delete ";") [] splits(maybe) [] @@ -44,6 +50,8 @@ evil-delete-backward-char [x] evil-search-word-forward (shift + 8) [x] shift + 5 [x] ** Editor +smarter editor_enter and editor_backspace [] + u can only type stuff that exist in the file in the search buffer, u should be able to type anything (also highlight not found stuff in red like emacs) [] From 570b04f4efac29239b21cec74855c03e40e187ed Mon Sep 17 00:00:00 2001 From: laluxx Date: Mon, 15 Jan 2024 03:47:29 +0100 Subject: [PATCH 56/74] Indent and render_indent_lines --- config/ded/fonts/VictorMono-Regular.ttf | Bin 151576 -> 0 bytes config/ded/shaders/minibuffer.vert | 28 +++++++ src/editor.c | 107 +++++++++++++++++++++++- src/editor.h | 10 ++- src/main.c | 86 +++++++++---------- src/render.c | 102 +++++++++++++++------- src/simple_renderer.c | 42 ++++------ src/simple_renderer.h | 42 ++++------ todo.org | 3 + 9 files changed, 292 insertions(+), 128 deletions(-) delete mode 100644 config/ded/fonts/VictorMono-Regular.ttf create mode 100644 config/ded/shaders/minibuffer.vert diff --git a/config/ded/fonts/VictorMono-Regular.ttf b/config/ded/fonts/VictorMono-Regular.ttf deleted file mode 100644 index aadcc88af58bebac86d44904e950cbad103edbf5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151576 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�*9yP}-) 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 S{H!yBKeH3(KH{k0fBqNgZI(O$ diff --git a/config/ded/shaders/minibuffer.vert b/config/ded/shaders/minibuffer.vert new file mode 100644 index 00000000..43c693fa --- /dev/null +++ b/config/ded/shaders/minibuffer.vert @@ -0,0 +1,28 @@ +#version 330 core + +uniform vec2 resolution; +uniform float time; + +layout(location = 0) in vec2 position; +layout(location = 1) in vec4 color; +layout(location = 2) in vec2 uv; + +out vec4 out_color; +out vec2 out_uv; + +const float scaleFactor = 0.25; + +vec2 simple_project(vec2 point) { + // Project the point directly based on the resolution + return (2.0 * point / resolution) - vec2(1.0); +} + +void main() { + // Apply the scale factor to the position + vec2 scaledPosition = position * scaleFactor; + + // Use the simple projection method without camera transformations + gl_Position = vec4(simple_project(scaledPosition), 0.0, 1.0); + out_color = color; + out_uv = uv; +} diff --git a/src/editor.c b/src/editor.c index 22cee748..020f3ada 100644 --- a/src/editor.c +++ b/src/editor.c @@ -41,6 +41,7 @@ bool showModeline = true; float minibufferHeight = 21.0f; float modelineHeight = 35.0f; float modelineAccentWidth = 5.0f; +bool minibuffering = false; @@ -76,8 +77,6 @@ bool extract_word_under_cursor(Editor *editor, char *word) { } - -// TODO void move_camera(Simple_Renderer *sr, const char* direction, float amount) { if(sr == NULL) return; @@ -96,7 +95,7 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { } -// TODO BUG +// TODO smarter void editor_backspace(Editor *e) { // If in search mode, reduce the search query length if (e->searching) { @@ -359,6 +358,12 @@ void editor_insert_char(Editor *e, char x) editor_insert_buf(e, &x, 1); } +void editor_insert_char_at(Editor *e, char c, size_t pos) { + editor_insert_buf_at(e, &c, 1, pos); +} + + + void editor_insert_buf(Editor *e, char *buf, size_t buf_len) { if (e->searching) { @@ -391,6 +396,7 @@ void editor_insert_buf(Editor *e, char *buf, size_t buf_len) } } + void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos) { // Ensure the position is within bounds if (pos > e->data.count) { @@ -399,7 +405,7 @@ void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos) { // Expand the buffer to accommodate the new text for (size_t i = 0; i < buf_len; ++i) { - da_append(&e->data, '\0'); // Assuming da_append is a function to expand the buffer + da_append(&e->data, '\0'); } // Shift existing text to make room for the new text @@ -628,6 +634,7 @@ void editor_move_paragraph_down(Editor *e) e->cursor = e->lines.items[row].begin; } +// TODO BUG void editor_kill_line(Editor *e) { if (e->searching || e->cursor >= e->data.count) return; @@ -953,3 +960,95 @@ void editor_drag_line_up(Editor *editor) { // Retokenize editor_retokenize(editor); } + +float measure_whitespace_width(Free_Glyph_Atlas *atlas) { + Vec2f whitespaceSize = {0.0f, 0.0f}; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); + return whitespaceSize.x; +} + +float measure_whitespace_height(Free_Glyph_Atlas *atlas) { + Vec2f whitespaceSize = {0.0f, 0.0f}; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); + return whitespaceSize.y; +} + +void add_one_indentation(Editor *editor) { + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(editor, ' '); + } +} + + + + + +// TODO empty line +void indent(Editor *editor) { + size_t cursor_row = editor_cursor_row(editor); + int braceLevel = 0; + + // Calculate brace level up to the current line + for (size_t i = 0; i < cursor_row; ++i) { + Line line = editor->lines.items[i]; + for (size_t j = line.begin; j < line.end; ++j) { + char c = editor->data.items[j]; + if (c == '{') { + braceLevel++; + } else if (c == '}') { + braceLevel = (braceLevel > 0) ? braceLevel - 1 : 0; + } + } + } + + Line currentLineData = editor->lines.items[cursor_row]; + bool decreaseIndentation = false; + size_t firstNonWhitespace = currentLineData.begin; + for (size_t j = currentLineData.begin; j < currentLineData.end; ++j) { + char c = editor->data.items[j]; + if (!isspace(c)) { + firstNonWhitespace = j; + if (c == '}') { + decreaseIndentation = true; + } + break; + } + } + + // Adjust brace level for current line if it starts with a closing brace + if (decreaseIndentation) { + braceLevel = (braceLevel > 0) ? braceLevel - 1 : 0; + } + + // Calculate required and current indentation + size_t requiredIndentation = braceLevel * indentation; + size_t currentIndentation = 0; + for (size_t i = currentLineData.begin; i < currentLineData.end && (editor->data.items[i] == ' ' || editor->data.items[i] == '\t'); ++i) { + currentIndentation++; + } + + // Save the current cursor position + size_t originalCursorPosition = editor->cursor; + + // Adjust indentation + editor->cursor = currentLineData.begin; + while (currentIndentation < requiredIndentation) { + editor_insert_char(editor, ' '); + currentIndentation++; + } + + while (currentIndentation > requiredIndentation && currentIndentation > 0) { + editor_delete(editor); // or evil_delete_char(editor); + currentIndentation--; + } + + // Adjust cursor position based on initial condition + if (originalCursorPosition <= firstNonWhitespace) { + // Cursor was on or before the first non-whitespace character + editor->cursor = currentLineData.begin + requiredIndentation; + } else { + // Cursor was on a character, maintain its relative position + size_t characterOffset = originalCursorPosition - firstNonWhitespace; + editor->cursor = currentLineData.begin + requiredIndentation + characterOffset; + } +} diff --git a/src/editor.h b/src/editor.h index db4088e2..2278732b 100644 --- a/src/editor.h +++ b/src/editor.h @@ -32,6 +32,7 @@ extern bool showModeline; extern float minibufferHeight; extern float modelineHeight; extern float modelineAccentWidth; +extern bool minibuffering; typedef struct { size_t begin; @@ -137,11 +138,13 @@ bool editor_search_matches_at(Editor *e, size_t pos); // ADDED -void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); void editor_stop_search_and_mark(Editor *e); void editor_clear_mark(Editor *editor); void move_camera(Simple_Renderer *sr, const char* direction, float amount); +void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); +void editor_insert_char_at(Editor *e, char c, size_t pos); + void editor_kill_line(Editor *e); void editor_backward_kill_word(Editor *e); ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); @@ -154,11 +157,16 @@ void editor_update_anchor(Editor *editor); void editor_drag_line_down(Editor *editor); void editor_drag_line_up(Editor *editor); +void add_one_indentation(Editor *editor); +void indent(Editor *editor); + // UTILITY size_t editor_row_from_pos(const Editor *e, size_t pos); bool extract_word_under_cursor(Editor *editor, char *word); bool editor_is_line_empty(Editor *e, size_t row); bool editor_is_line_whitespaced(Editor *e, size_t row); +float measure_whitespace_width(Free_Glyph_Atlas *atlas); +float measure_whitespace_height(Free_Glyph_Atlas *atlas); diff --git a/src/main.c b/src/main.c index 8282aca5..2e577f55 100644 --- a/src/main.c +++ b/src/main.c @@ -36,6 +36,7 @@ #include "evil.h" #include "buffer.h" #include "theme.h" +#include "unistd.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) @@ -267,7 +268,6 @@ bool extractGlobalIncludePath(Editor *editor, char *includePath) { return false; } - Errno openGlobalIncludeFile(Editor *editor, const char *includePath) { char fullPath[512]; // Buffer for the full path @@ -276,19 +276,26 @@ Errno openGlobalIncludeFile(Editor *editor, const char *includePath) { for (int i = 0; standardDirs[i] != NULL; i++) { snprintf(fullPath, sizeof(fullPath), "%s/%s", standardDirs[i], includePath); - - // Try to load the file using the constructed full path - Errno load_err = editor_load_from_file(editor, fullPath); - if (load_err == 0) { - printf("Opened file: %s\n", fullPath); - return 0; // File opened successfully + + // Check if the file exists and is accessible + if (access(fullPath, F_OK) != -1) { + // Try to load the file using the constructed full path + Errno load_err = editor_load_from_file(editor, fullPath); + if (load_err == 0) { + printf("Opened file: %s\n", fullPath); + return 0; // File opened successfully + } } } - fprintf(stderr, "Error: File %s not found in standard directories\n", includePath); - return -1; // File not found in standard directories + // Print the error message only if the file is not found in /usr/include + fprintf(stderr, "Error: File %s not found in /usr/include\n", includePath); + return -1; // File not found in /usr/include } + + + void editor_open_include(Editor *editor) { char includePath[256]; @@ -808,6 +815,10 @@ int main(int argc, char **argv) case SDLK_ESCAPE: { + if (minibuffering) { + minibufferHeight -= 189; + minibuffering = false; + } editor_clear_mark(&editor); editor_stop_search(&editor); editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); @@ -822,7 +833,11 @@ int main(int argc, char **argv) } else { editor_goto_anchor_and_clear(&editor); } - } + } else if (!minibuffering) { + // TODO time delay whichkey + minibufferHeight += 189; + minibuffering = true; + } } break; @@ -870,18 +885,6 @@ int main(int argc, char **argv) } break; - - case SDL_MOUSEWHEEL: - if (event.wheel.y > 0) { // Scroll up - printf("Scroll Up event captured\n"); // Debug print - move_camera(&sr, "up", 20.0f); // Notice &sr, passed the address of sr - } else if (event.wheel.y < 0) { // Scroll down - printf("Scroll Down event captured\n"); // Debug print - move_camera(&sr, "down", 20.0f); // Notice &sr, passed the address of sr - } - break; - - case SDLK_LEFTBRACKET: if (SDL_GetModState() & KMOD_ALT) { switch_to_font(library, &face, &atlas, -1); @@ -900,18 +903,7 @@ int main(int argc, char **argv) case SDLK_TAB: { - // TODO: indent on Tab instead of just inserting 4 spaces at the cursor - // That is insert the spaces at the beginning of the line. Shift+TAB should - // do unindent, that is remove 4 spaces from the beginning of the line. - // TODO: customizable indentation style - // - tabs/spaces - // - tab width - // - etc. - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(&editor, ' '); - } - - /* activate_snippet(&editor); */ + indent(&editor); } break; @@ -966,18 +958,14 @@ int main(int argc, char **argv) } break; case SDLK_n: { - if (SDL_GetModState() & KMOD_ALT) { + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_line_down(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { editor_next_buffer(&editor); + } else if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_previous(&editor); } else { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_search_previous(&editor); - } else { - evil_search_next(&editor); - } - - if (SDL_GetModState() & KMOD_CTRL) { - editor_move_line_down(&editor); - } + evil_search_next(&editor); } } break; @@ -1050,7 +1038,10 @@ int main(int argc, char **argv) if (SDL_GetModState() & KMOD_CTRL) { showIndentationLines = !showIndentationLines; - } else { + } else if (SDL_GetModState() & KMOD_ALT) { + add_one_indentation(&editor); + } + else { current_mode = INSERT; if (superDrammtic){ isAnimated = true; @@ -1116,6 +1107,11 @@ int main(int argc, char **argv) editor_clipboard_copy(&editor); editor_delete_selection(&editor); editor.selection = false; + } else if (event.key.keysym.mod & KMOD_ALT) { + if (!minibuffering) { + minibufferHeight += 189; + minibuffering = true; + } } else if (event.key.keysym.mod & KMOD_SHIFT) { evil_delete_backward_char(&editor); } else { diff --git a/src/render.c b/src/render.c index 898123f5..3c9a0918 100644 --- a/src/render.c +++ b/src/render.c @@ -1,52 +1,90 @@ #include "render.h" #include "editor.h" +#include "free_glyph.h" #include "la.h" #include "simple_renderer.h" #include "theme.h" float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; +// TODO cursor +// TODO sub-pixel rendering void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor) { if (editor->searching) { Vec4f color = CURRENT_THEME.text; - Vec2f searchPos = {0.0f, 0.0f}; + Vec2f searchPos = {30.0f, 20.0f}; - simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_TEXT); + simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); free_glyph_atlas_render_line_sized(minibuffer_atlas, sr, editor->search.items, editor->search.count, &searchPos, color); simple_renderer_flush(sr); } } + +/* void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { */ +/* if (showWhitespaces) { */ +/* if (isWave) { */ +/* simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); */ +/* } else { */ +/* simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); */ +/* } */ + +/* float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; */ +/* Vec4f whitespaceColor = CURRENT_THEME.whitespace; */ + +/* for (size_t i = 0; i < editor->lines.count; ++i) { */ +/* Line line = editor->lines.items[i]; */ +/* Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; */ + +/* if (showLineNumbers) { */ +/* pos.x += lineNumberWidth; */ +/* } */ + +/* for (size_t j = line.begin; j < line.end; ++j) { */ +/* if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { */ +/* // Measure the actual character width */ +/* Vec2f char_pos = pos; */ +/* char_pos.x += (j - line.begin) * squareSize; // Starting position for this character */ +/* free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); */ +/* float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; */ + +/* Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; */ +/* simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); */ +/* } */ +/* } */ +/* } */ +/* simple_renderer_flush(sr); */ +/* } */ +/* } */ + + void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { if (showWhitespaces) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - - float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; + float circleRadius = FREE_GLYPH_FONT_SIZE * 0.1; // Adjust the radius as needed Vec4f whitespaceColor = CURRENT_THEME.whitespace; - + int circleSegments = 20; // Adjust the number of segments for smoother circles + for (size_t i = 0; i < editor->lines.count; ++i) { Line line = editor->lines.items[i]; Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - + if (showLineNumbers) { pos.x += lineNumberWidth; } - + for (size_t j = line.begin; j < line.end; ++j) { if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { - // Measure the actual character width Vec2f char_pos = pos; - char_pos.x += (j - line.begin) * squareSize; // Starting position for this character + char_pos.x += (j - line.begin) * circleRadius * 2; free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); - float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; - - Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; - simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); + float char_width = char_pos.x - pos.x - (j - line.begin) * circleRadius * 2; + + Vec2f circleCenter = {pos.x + (j - line.begin) * char_width + char_width / 2, pos.y + FREE_GLYPH_FONT_SIZE / 2}; + + // Draw the circle for whitespace + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + simple_renderer_circle(sr, circleCenter, circleRadius, whitespaceColor, circleSegments); } } } @@ -63,16 +101,15 @@ typedef struct { float startX; // X position of the start of the line } BraceInfo; - // TODO exit early If a line does not contain any braces // TODO calculate properly CHARACTER_WIDTH -void render_indentation_lines(Simple_Renderer *sr, Editor *editor) { +void render_indentation_lines(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { if (showIndentationLines) { float LINE_THICKNESS = 4.0f; BraceInfo braceStack[5000]; // Assuming a max of 5000 nested braces int braceCount = 0; - float CHARACTER_WIDTH = FREE_GLYPH_FONT_SIZE / 2.0f; + float CHARACTER_WIDTH = measure_whitespace_width(atlas); for (size_t i = 0; i < editor->lines.count; ++i) { Line line = editor->lines.items[i]; @@ -146,16 +183,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->resolution = vec2f(w, h); sr->time = (float) SDL_GetTicks() / 1000.0f; - /* float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; */ - /* Vec4f lineNumberColor = vec4f(0.5, 0.5, 0.5, 1); // A lighter color for line numbers, adjust as needed */ + float whitespace_width = measure_whitespace_width(atlas); - // Calculate the width of a whitespace character - Vec2f whitespace_size = vec2fs(0.0f); - free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespace_size); - float whitespace_width = whitespace_size.x; - - render_indentation_lines(sr, editor); - // Render hl_line { if (hl_line){ @@ -266,6 +295,18 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + render_indentation_lines(sr, atlas, editor); + } + + + Vec2f cursor_pos = vec2fs(0.0f); { size_t cursor_row = editor_cursor_row(editor); @@ -675,6 +716,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer render_whitespaces(atlas, sr, editor); + // Render cursor if(editor->searching){ simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); diff --git a/src/simple_renderer.c b/src/simple_renderer.c index ae9eabaf..a620a7ec 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -7,25 +7,8 @@ #include "./simple_renderer.h" #include "./common.h" #include "./editor.h" - #include -// hardcoded -/* #define vert_shader_file_path "./shaders/simple.vert" */ - -/* static_assert(COUNT_SIMPLE_SHADERS == 5, "The amount of fragment shaders has changed"); */ -/* const char *frag_shader_file_paths[COUNT_SIMPLE_SHADERS] = { */ -/* [SHADER_FOR_COLOR] = "./shaders/simple_color.frag", */ -/* [SHADER_FOR_IMAGE] = "./shaders/simple_image.frag", */ -/* [SHADER_FOR_TEXT] = "./shaders/simple_text.frag", */ -/* [SHADER_FOR_EPICNESS] = "./shaders/simple_epic.frag", */ -/* [SHADER_FOR_GLOW] = "./shaders/simple_glow.frag", */ -/* }; */ - - - -// still hardcoded but ~/.config is cool -/* char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; */ char vert_shader_file_path[COUNT_VERTEX_SHADERS][MAX_SHADER_PATH_LENGTH]; char frag_shader_file_paths[COUNT_FRAGMENT_SHADERS][MAX_SHADER_PATH_LENGTH]; @@ -35,9 +18,9 @@ void set_shader_path(char* buffer, const char* shaderName) { } void initialize_shader_paths() { - /* set_shader_path(vert_shader_file_path, "simple.vert"); */ set_shader_path(vert_shader_file_path[VERTEX_SHADER_SIMPLE], "simple.vert"); set_shader_path(vert_shader_file_path[VERTEX_SHADER_FIXED], "fixed.vert"); + set_shader_path(vert_shader_file_path[VERTEX_SHADER_MINIBUFFER], "minibuffer.vert"); set_shader_path(vert_shader_file_path[VERTEX_SHADER_WAVE], "wave.vert"); set_shader_path(frag_shader_file_paths[SHADER_FOR_COLOR], "simple_color.frag"); @@ -48,12 +31,6 @@ void initialize_shader_paths() { set_shader_path(frag_shader_file_paths[SHADER_FOR_CURSOR], "cursor.frag"); } -// Call initialize_shader_paths() early in your program. - - - - - static const char *shader_type_as_cstr(GLuint shader) { switch (shader) { @@ -480,6 +457,23 @@ void simple_renderer_solid_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, Vec4f c) uv, uv, uv, uv); } +void simple_renderer_circle(Simple_Renderer *sr, Vec2f center, float radius, Vec4f color, int segments) { + float angleStep = 2.0f * M_PI / segments; + + // Generate vertices for the circle + Vec2f lastVertex = {center.x + radius, center.y}; + for (int i = 1; i <= segments; ++i) { + float angle = i * angleStep; + Vec2f newVertex = {center.x + cosf(angle) * radius, center.y + sinf(angle) * radius}; + + // Add the triangle for this segment + simple_renderer_triangle(sr, center, lastVertex, newVertex, color, color, color, vec2fs(0), vec2fs(0), vec2fs(0)); + lastVertex = newVertex; + } +} + + + void simple_renderer_sync(Simple_Renderer *sr) { glBufferSubData(GL_ARRAY_BUFFER, diff --git a/src/simple_renderer.h b/src/simple_renderer.h index 2ad2a05d..3d035aee 100644 --- a/src/simple_renderer.h +++ b/src/simple_renderer.h @@ -44,6 +44,7 @@ typedef enum { SHADER_FOR_CURSOR, VERTEX_SHADER_SIMPLE, VERTEX_SHADER_FIXED, + VERTEX_SHADER_MINIBUFFER, VERTEX_SHADER_WAVE, COUNT_FRAGMENT_SHADERS, COUNT_VERTEX_SHADERS, @@ -87,33 +88,26 @@ extern char vert_shader_file_path[COUNT_VERTEX_SHADERS][MAX_SHADER_PATH_LENGTH]; void simple_renderer_init(Simple_Renderer *sr); - void simple_renderer_reload_shaders(Simple_Renderer *sr); - -void simple_renderer_vertex(Simple_Renderer *sr, - Vec2f p, Vec4f c, Vec2f uv); - -/* void simple_renderer_set_shader(Simple_Renderer *sr, Simple_Shader shader); */ +void simple_renderer_vertex(Simple_Renderer *sr, Vec2f p, Vec4f c, Vec2f uv); void simple_renderer_set_shader(Simple_Renderer *sr, int vertexShaderIndex, int fragmentShaderIndex); - - void simple_renderer_triangle(Simple_Renderer * sr, Vec2f p0, Vec2f p1, - Vec2f p2, Vec4f c0, Vec4f c1, Vec4f c2, - Vec2f uv0, Vec2f uv1, Vec2f uv2); - void simple_renderer_quad(Simple_Renderer * sr, Vec2f p0, Vec2f p1, - Vec2f p2, Vec2f p3, Vec4f c0, Vec4f c1, Vec4f c2, - Vec4f c3, Vec2f uv0, Vec2f uv1, Vec2f uv2, - Vec2f uv3); - void simple_renderer_solid_rect(Simple_Renderer * sr, Vec2f p, Vec2f s, - Vec4f c); - void simple_renderer_image_rect(Simple_Renderer * sr, Vec2f p, Vec2f s, - Vec2f uvp, Vec2f uvs, Vec4f c); - void simple_renderer_flush(Simple_Renderer * sr); - void simple_renderer_sync(Simple_Renderer * sr); - void simple_renderer_draw(Simple_Renderer * sr); - - // ADDED - void initialize_shader_paths(); +void simple_renderer_triangle(Simple_Renderer *sr, Vec2f p0, Vec2f p1, Vec2f p2, + Vec4f c0, Vec4f c1, Vec4f c2, Vec2f uv0, + Vec2f uv1, Vec2f uv2); +void simple_renderer_quad(Simple_Renderer *sr, Vec2f p0, Vec2f p1, Vec2f p2, + Vec2f p3, Vec4f c0, Vec4f c1, Vec4f c2, Vec4f c3, + Vec2f uv0, Vec2f uv1, Vec2f uv2, Vec2f uv3); +void simple_renderer_solid_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, Vec4f c); +void simple_renderer_image_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, + Vec2f uvp, Vec2f uvs, Vec4f c); +void simple_renderer_flush(Simple_Renderer * sr); +void simple_renderer_sync(Simple_Renderer * sr); +void simple_renderer_draw(Simple_Renderer * sr); + +// ADDED +void initialize_shader_paths(); +void simple_renderer_circle(Simple_Renderer *sr, Vec2f center, float radius, Vec4f color, int segments); /* const char *resolve_shader_path(const char *shader_file_name); */ diff --git a/todo.org b/todo.org index fb5314ab..6533d841 100644 --- a/todo.org +++ b/todo.org @@ -50,6 +50,9 @@ evil-delete-backward-char [x] evil-search-word-forward (shift + 8) [x] shift + 5 [x] ** Editor +org mode [] +md mode rendered as you type [] +refactor on write(save) [] smarter editor_enter and editor_backspace [] u can only type stuff that exist in the file in the From 6cd3527cf1a83485226fc91874c14226a8ed8d3c Mon Sep 17 00:00:00 2001 From: laluxx Date: Tue, 16 Jan 2024 20:17:18 +0100 Subject: [PATCH 57/74] stuff --- config/ded/snippets/ // For isalnum - #include "evil.h" @@ -44,8 +43,10 @@ float modelineAccentWidth = 5.0f; bool minibuffering = false; +bool BlockInsertCurosr = true; + + -// TODO bad implementation bool extract_word_under_cursor(Editor *editor, char *word) { // Make a copy of cursor position to avoid modifying the actual cursor size_t cursor = editor->cursor; @@ -78,9 +79,6 @@ bool extract_word_under_cursor(Editor *editor, char *word) { void move_camera(Simple_Renderer *sr, const char* direction, float amount) { - if(sr == NULL) return; - - // Check the direction and adjust the camera position accordingly. if(strcmp(direction, "up") == 0) { sr->camera_pos.y -= amount; } else if(strcmp(direction, "down") == 0) { @@ -514,13 +512,11 @@ void editor_clipboard_paste(Editor *e) void editor_update_selection(Editor *e, bool shift) { if (e->searching) return; - + if (current_mode == VISUAL) { if (!e->selection) { evil_visual_char(e); } - // If you want the selection to end when you leave VISUAL mode, - // you will need to handle that logic elsewhere (perhaps where mode changes are managed). } else if (shift) { if (!e->selection) { e->selection = true; @@ -634,82 +630,6 @@ void editor_move_paragraph_down(Editor *e) e->cursor = e->lines.items[row].begin; } -// TODO BUG -void editor_kill_line(Editor *e) { - if (e->searching || e->cursor >= e->data.count) return; - - size_t row = editor_cursor_row(e); - size_t line_begin = e->lines.items[row].begin; - size_t line_end = e->lines.items[row].end; - - // Check if the line is empty or if the cursor is at the end of the line - if (line_begin == line_end || e->cursor == line_end) { - // If the line is empty or the cursor is at the end of the line - // Remove the newline character if it's not the first line - if (row < e->lines.count - 1) { - memmove(&e->data.items[line_begin], &e->data.items[line_end + 1], e->data.count - line_end - 1); - e->data.count -= (line_end - line_begin + 1); - } else if (row > 0 && e->data.items[line_begin - 1] == '\n') { - // If it's the last line, remove the preceding newline character - e->data.count -= 1; - memmove(&e->data.items[line_begin - 1], &e->data.items[line_end], e->data.count - line_end); - } - } else { - // If the line is not empty, kill the text from the cursor to the end of the line - size_t length = line_end - e->cursor; - - // Copy the text to be killed to the clipboard - e->clipboard.count = 0; - sb_append_buf(&e->clipboard, &e->data.items[e->cursor], length); - sb_append_null(&e->clipboard); - if (SDL_SetClipboardText(e->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - - // Delete the range from the editor - memmove(&e->data.items[e->cursor], &e->data.items[line_end], e->data.count - line_end); - e->data.count -= length; - } - - editor_retokenize(e); -} - - -void editor_backward_kill_word(Editor *e) { - editor_stop_search(e); - - // Remember the start position of the deletion - size_t start_pos = e->cursor; - - // Move cursor left to the start of the previous word - while (e->cursor > 0 && !isalnum(e->data.items[e->cursor - 1])) { - e->cursor -= 1; - } - while (e->cursor > 0 && isalnum(e->data.items[e->cursor - 1])) { - e->cursor -= 1; - } - - // Remember the end position of the deletion - size_t end_pos = e->cursor; - - // Check if there is anything to delete - if (start_pos > end_pos) { - // Copy the deleted text to clipboard - size_t length = start_pos - end_pos; - e->clipboard.count = 0; - sb_append_buf(&e->clipboard, &e->data.items[end_pos], length); - sb_append_null(&e->clipboard); - if (SDL_SetClipboardText(e->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - - // Perform the deletion - memmove(&e->data.items[end_pos], &e->data.items[start_pos], e->data.count - start_pos); - e->data.count -= length; - } - - editor_retokenize(e); -} bool editor_is_line_empty(Editor *e, size_t row) { if (row >= e->lines.count) return true; // Non-existent lines are considered empty @@ -973,17 +893,86 @@ float measure_whitespace_height(Free_Glyph_Atlas *atlas) { return whitespaceSize.y; } +void add_one_indentation_here(Editor *editor) { + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(editor, ' '); + } +} + +void remove_one_indentation_here(Editor *editor) { + for (size_t i = 0; i < indentation; ++i) { + editor_delete(editor); + } +} + void add_one_indentation(Editor *editor) { + size_t cursor_row = editor_cursor_row(editor); + Line currentLineData = editor->lines.items[cursor_row]; + size_t originalCursorPosition = editor->cursor; + + // Calculate current indentation of the line + size_t currentIndentation = 0; + for (size_t i = currentLineData.begin; i < currentLineData.end && isspace(editor->data.items[i]); ++i) { + currentIndentation++; + } + + // Move cursor to the beginning of the current line + editor->cursor = currentLineData.begin; + + // Add one level of indentation at the beginning of the line for (size_t i = 0; i < indentation; ++i) { editor_insert_char(editor, ' '); } + + // Adjust cursor position + if (originalCursorPosition <= currentLineData.begin + currentIndentation) { + // If the cursor was at or before the first non-whitespace character, move it right after the added indentation + editor->cursor = currentLineData.begin + currentIndentation + indentation; + } else { + // If the cursor was on a non-whitespace character, maintain relative position + editor->cursor = originalCursorPosition + indentation; + } } +void remove_one_indentation(Editor *editor) { + size_t cursor_row = editor_cursor_row(editor); + Line currentLineData = editor->lines.items[cursor_row]; + // Save the current cursor position + size_t originalCursorPosition = editor->cursor; + + // Calculate current indentation of the line + size_t currentIndentation = 0; + size_t firstNonWhitespace = currentLineData.begin; + while (firstNonWhitespace < currentLineData.end && isspace(editor->data.items[firstNonWhitespace])) { + currentIndentation++; + firstNonWhitespace++; + } + + // Check if there's at least one indentation level to remove + if (currentIndentation >= indentation) { + // Move cursor to the beginning of the current line + editor->cursor = currentLineData.begin; + + // Remove one level of indentation from the beginning of the line + for (size_t i = 0; i < indentation; ++i) { + editor_delete(editor); // Assuming delete removes one character. + } + + // Adjust cursor position + if (originalCursorPosition <= currentLineData.begin + currentIndentation) { + // If the cursor was within the leading whitespace, move it to the first non-whitespace character + editor->cursor = firstNonWhitespace - indentation; + } else { + // If the cursor was on a non-whitespace character, maintain relative position + editor->cursor = originalCursorPosition - indentation; + } + } +} -// TODO empty line +// TODO slow calculation on whitespaces void indent(Editor *editor) { size_t cursor_row = editor_cursor_row(editor); int braceLevel = 0; @@ -1004,10 +993,12 @@ void indent(Editor *editor) { Line currentLineData = editor->lines.items[cursor_row]; bool decreaseIndentation = false; size_t firstNonWhitespace = currentLineData.begin; + bool isLineEmpty = true; for (size_t j = currentLineData.begin; j < currentLineData.end; ++j) { char c = editor->data.items[j]; if (!isspace(c)) { firstNonWhitespace = j; + isLineEmpty = false; if (c == '}') { decreaseIndentation = true; } @@ -1043,12 +1034,139 @@ void indent(Editor *editor) { } // Adjust cursor position based on initial condition - if (originalCursorPosition <= firstNonWhitespace) { - // Cursor was on or before the first non-whitespace character + if (isLineEmpty || originalCursorPosition <= firstNonWhitespace) { + // If the line is empty or the cursor was on or before the first non-whitespace character editor->cursor = currentLineData.begin + requiredIndentation; } else { - // Cursor was on a character, maintain its relative position + // If the cursor was on a non-whitespace character, maintain relative position size_t characterOffset = originalCursorPosition - firstNonWhitespace; editor->cursor = currentLineData.begin + requiredIndentation + characterOffset; } } + + +size_t find_first_non_whitespace(const char* items, size_t begin, size_t end) { + size_t pos = begin; + while (pos < end && isspace((unsigned char)items[pos])) { + pos++; + } + return pos; +} + + + +// CLANG FORMAT TODO +#include + +int is_clang_format_installed() { + if (system("clang-format --version") != 0) { + return 0; + } + return 1; +} + +void clang_format(const char *filename, const char *arguments) { + if (!is_clang_format_installed()) { + printf("clang-format is not installed.\n"); + return; + } + + char command[1024]; + snprintf(command, sizeof(command), "clang-format %s %s", arguments, filename); + + // Execute the command + int result = system(command); + if (result != 0) { + printf("Error executing clang-format.\n"); + } +} + + +// TODO select more after end brace +void select_region_from_inside_braces(Editor *editor) { + if (editor->cursor >= editor->data.count) return; + + size_t row = editor_cursor_row(editor); + size_t start = row; + size_t end = row; + + // Find the start of the function + while (start > 0) { + start--; + size_t line_begin = editor->lines.items[start].begin; + size_t line_end = editor->lines.items[start].end; + + // Simple heuristic: a line ending with '{' might be the start of a function + if (editor->data.items[line_end - 1] == '{') { + break; + } + } + + // Find the end of the function + int brace_count = 1; // Start after finding the opening brace + while (end < editor->lines.count - 1) { + end++; + size_t line_begin = editor->lines.items[end].begin; + size_t line_end = editor->lines.items[end].end; + + for (size_t i = line_begin; i < line_end; i++) { + if (editor->data.items[i] == '{') { + brace_count++; + } else if (editor->data.items[i] == '}') { + brace_count--; + if (brace_count == 0) { + // Found the matching closing brace + goto found_end; + } + } + } + } +found_end: + + // Update the selection + editor->selection = true; + editor->select_begin = editor->lines.items[start].begin; + editor->cursor = editor->lines.items[end].end; +} + + +// TODO should not run from anywhere just curly braces +// TODO dont move the cursor on open brace like it does for closing brace +void select_region_from_brace(Editor *editor) { + if (editor->cursor >= editor->data.count) return; + + char current_char = editor->data.items[editor->cursor]; + + if (strchr("})", current_char)) { + // Called from a closing brace + editor->select_begin = editor->cursor; + evil_jump_item(editor); + size_t row = editor_cursor_row(editor); + editor->cursor = editor->lines.items[row].begin; // Extend to the beginning of the line + } else if (strchr("({", current_char)) { + // Called from an opening brace + size_t row = editor_cursor_row(editor); + editor->select_begin = editor->lines.items[row].begin; // Start from the beginning of the line + evil_jump_item(editor); + row = editor_cursor_row(editor); + editor->cursor = editor->lines.items[row].end; // Extend to the end of the line with the closing brace + } + + // Update the selection + editor->selection = true; + if (editor->select_begin > editor->cursor) { + // Ensure select_begin is always before the cursor + size_t temp = editor->select_begin; + editor->select_begin = editor->cursor; + editor->cursor = temp; + } +} + + +// TODO select_function + + + + + + diff --git a/src/editor.h b/src/editor.h index 2278732b..e14c7407 100644 --- a/src/editor.h +++ b/src/editor.h @@ -34,6 +34,8 @@ extern float modelineHeight; extern float modelineAccentWidth; extern bool minibuffering; +extern bool BlockInsertCurosr; + typedef struct { size_t begin; size_t end; @@ -145,8 +147,6 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount); void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); void editor_insert_char_at(Editor *e, char c, size_t pos); -void editor_kill_line(Editor *e); -void editor_backward_kill_word(Editor *e); ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); void editor_enter(Editor *e); @@ -157,8 +157,13 @@ void editor_update_anchor(Editor *editor); void editor_drag_line_down(Editor *editor); void editor_drag_line_up(Editor *editor); +void add_one_indentation_here(Editor *editor); void add_one_indentation(Editor *editor); +void remove_one_indentation(Editor *editor); void indent(Editor *editor); +void select_region_from_brace(Editor *editor); +void select_region_from_inside_braces(Editor *editor); + // UTILITY size_t editor_row_from_pos(const Editor *e, size_t pos); @@ -167,6 +172,7 @@ bool editor_is_line_empty(Editor *e, size_t row); bool editor_is_line_whitespaced(Editor *e, size_t row); float measure_whitespace_width(Free_Glyph_Atlas *atlas); float measure_whitespace_height(Free_Glyph_Atlas *atlas); +size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); diff --git a/src/emacs.c b/src/emacs.c new file mode 100644 index 00000000..b5809a5c --- /dev/null +++ b/src/emacs.c @@ -0,0 +1,117 @@ +#include "emacs.h" + +void emacs_kill_line(Editor *e) { + if (e->searching || e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Check if the line is empty or if the cursor is at the end of the line + if (line_begin == line_end || e->cursor == line_end) { + // If the line is empty or the cursor is at the end of the line + // Remove the newline character if it's not the first line + if (row < e->lines.count - 1) { + memmove(&e->data.items[line_begin], &e->data.items[line_end + 1], e->data.count - line_end - 1); + e->data.count -= (line_end - line_begin + 1); + } else if (row > 0 && e->data.items[line_begin - 1] == '\n') { + // If it's the last line, remove the preceding newline character + e->data.count -= 1; + memmove(&e->data.items[line_begin - 1], &e->data.items[line_end], e->data.count - line_end); + } + } else if (isspace(e->data.items[e->cursor])) { + // If the cursor is on a whitespace character within the line, delete the entire line + memmove(&e->data.items[line_begin], &e->data.items[line_end + 1], e->data.count - line_end - 1); + e->data.count -= (line_end - line_begin + 1); + } else { + // If the line is not empty and the cursor is not on a whitespace character, kill the text from the cursor to the end of the line + size_t length = line_end - e->cursor; + + // Copy the text to be killed to the clipboard + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[e->cursor], length); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // Delete the range from the editor + memmove(&e->data.items[e->cursor], &e->data.items[line_end], e->data.count - line_end); + e->data.count -= length; + } + + editor_retokenize(e); +} + +void emacs_backward_kill_word(Editor *e) { + editor_stop_search(e); // TODO make this work also on search + + size_t start_pos = e->cursor; + + // Move cursor left to the start of the previous word or to the first capital letter + if (e->cursor > 0 && isalnum(e->data.items[e->cursor - 1])) { + // Move left until a non-alphanumeric character or the start of the camelCase word + while (e->cursor > 0 && isalnum(e->data.items[e->cursor - 1])) { + e->cursor -= 1; + if (isupper(e->data.items[e->cursor]) && e->cursor != start_pos - 1) { + break; // Break if it's an uppercase letter and not the first letter of the word + } + } + } else { + // If the character left of the cursor is not alphanumeric, move until an alphanumeric is found + while (e->cursor > 0 && !isalnum(e->data.items[e->cursor - 1])) { + e->cursor -= 1; + } + } + + size_t end_pos = e->cursor; + + if (start_pos > end_pos) { + // Copy the deleted text to clipboard + size_t length = start_pos - end_pos; + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[end_pos], length); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // Perform the deletion + memmove(&e->data.items[end_pos], &e->data.items[start_pos], e->data.count - start_pos); + e->data.count -= length; + } + + editor_retokenize(e); +} + +void emacs_back_to_indentation(Editor *e) { + if (e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Find the first non-whitespace character using the utility function + size_t first_non_whitespace = find_first_non_whitespace(e->data.items, line_begin, line_end); + + // Move the cursor to the first non-whitespace character + e->cursor = first_non_whitespace; +} + +void emacs_mark_paragraph(Editor *e, bool shift) { + if (!e->selection) { + // Find the first empty line above + size_t row = editor_cursor_row(e); + while (row > 0 && !editor_is_line_empty(e, row - 1)) { + row--; + } + + // Set the selection start to the beginning of the line after the empty line + e->select_begin = e->lines.items[row].begin; + e->cursor = e->select_begin; + e->selection = true; + } + + // Extend the selection downwards to the end of the paragraph + editor_move_paragraph_down(e); +} diff --git a/src/emacs.h b/src/emacs.h new file mode 100644 index 00000000..e6e113be --- /dev/null +++ b/src/emacs.h @@ -0,0 +1,11 @@ +#ifndef EMACS_H +#define EMACS_H + +#include "editor.h" + +void emacs_kill_line(Editor *e); +void emacs_backward_kill_word(Editor *e); +void emacs_back_to_indentation(Editor *e); +void emacs_mark_paragraph(Editor *e, bool shift); + +#endif // EMACS_H diff --git a/src/evil.c b/src/evil.c index 5a812e05..5def86ac 100644 --- a/src/evil.c +++ b/src/evil.c @@ -164,6 +164,8 @@ void evil_yank_line(Editor* editor) { copiedLine = true; } + +// TODO handle !copiedline not in the keybind and behave like vim void evil_paste_after(Editor* editor) { if (!copiedLine) { return; // Do nothing if no line has been copied @@ -206,6 +208,7 @@ void evil_paste_after(Editor* editor) { SDL_free(text); } +// TODO handle !copiedline not in the keybind and behave like vim void evil_paste_before(Editor* editor) { if (!copiedLine) { return; // Do nothing if no line has been copied @@ -476,3 +479,64 @@ bool handle_evil_find_char(Editor *editor, SDL_Event *event) { +void evil_substitute(Editor *e) { + if (e->searching) return; // Check if editor is in search mode + + if (e->selection) { + // If there is an active selection, delete the selected text + editor_delete_selection(e); + } else if (e->cursor < e->data.count) { + // If no selection and cursor is within bounds, delete the character at cursor + memmove(&e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + (e->data.count - e->cursor - 1) * sizeof(e->data.items[0])); + e->data.count -= 1; + } + + // Switch to insert mode + current_mode = INSERT; + + // Re-tokenize if needed + editor_retokenize(e); +} + + + +void evil_change_whole_line(Editor *e) { + if (e->searching || e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Find the first non-whitespace character + size_t first_non_whitespace = line_begin; + while (first_non_whitespace < line_end && + (e->data.items[first_non_whitespace] == ' ' || e->data.items[first_non_whitespace] == '\t')) { + first_non_whitespace++; + } + + // If entire line is whitespace, first_non_whitespace will be line_end + if (first_non_whitespace < line_end) { + // Delete from the first non-whitespace character to the end of the line + size_t length = line_end - first_non_whitespace; + memmove(&e->data.items[first_non_whitespace], + &e->data.items[line_end], + e->data.count - line_end); + e->data.count -= length; + + // Set cursor to the first non-whitespace character + e->cursor = first_non_whitespace; + } else { + // If the line is all whitespace, just place the cursor at the end + e->cursor = line_end; + } + + // Switch to insert mode + current_mode = INSERT; + + // Re-tokenize if needed + editor_retokenize(e); +} + + diff --git a/src/evil.h b/src/evil.h index c8ef44a8..1dbdf3a1 100644 --- a/src/evil.h +++ b/src/evil.h @@ -20,8 +20,9 @@ void evil_search_next(Editor *e); void evil_search_previous(Editor *e); void evil_search_word_forward(Editor *e); void evil_change_line(Editor *e); - void evil_find_char(Editor *e, char target); bool handle_evil_find_char(Editor *editor, SDL_Event *event); +void evil_substitute(Editor *e); +void evil_change_whole_line(Editor *e); #endif // EVIL_H diff --git a/src/main.c b/src/main.c index 2e577f55..9bec4dd3 100644 --- a/src/main.c +++ b/src/main.c @@ -34,6 +34,7 @@ #include "yasnippet.h" #include "render.h" #include "evil.h" +#include "emacs.h" #include "buffer.h" #include "theme.h" #include "unistd.h" @@ -151,8 +152,6 @@ void populate_font_list() { closedir(dir); } - - void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas *atlas, int direction) { if (direction > 0) { next_font(); @@ -521,18 +520,12 @@ int main(int argc, char **argv) } break; - - - - - case SDLK_EQUALS: { if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed theme_next(¤tThemeIndex); printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor -= 0.8f; - + zoom_factor -= 0.8f; if (zoom_factor < min_zoom_factor) { zoom_factor = min_zoom_factor; } @@ -545,7 +538,6 @@ int main(int argc, char **argv) printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed zoom_factor += 0.8f; - if (zoom_factor > max_zoom_factor) { zoom_factor = max_zoom_factor; } @@ -590,6 +582,7 @@ int main(int argc, char **argv) fb.cursor += 1; } break; + // TODO cant go back more than the original direcory case SDLK_h: { // Copy current directory path char current_dir[PATH_MAX]; @@ -666,10 +659,20 @@ int main(int argc, char **argv) case EMACS: // TODO add all keybinds switch (event.key.keysym.sym) { - + + + case SDLK_z: { + if (SDL_GetModState() & KMOD_CTRL) { + current_mode = NORMAL; + editor.last_stroke = SDL_GetTicks(); + } + } + break; + + case SDLK_BACKSPACE: if (event.key.keysym.mod & KMOD_CTRL) { - editor_backward_kill_word(&editor); + emacs_backward_kill_word(&editor); editor.last_stroke = SDL_GetTicks(); }else{ editor_backspace(&editor); @@ -685,7 +688,7 @@ int main(int argc, char **argv) } break; - + // TODO check if the snippet activated if not indent case SDLK_TAB: { activate_snippet(&editor); for (size_t i = 0; i < indentation; ++i) { @@ -702,11 +705,6 @@ int main(int argc, char **argv) break; case SDLK_n: { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_search_previous(&editor); - } else { - evil_search_next(&editor); - } if (SDL_GetModState() & KMOD_CTRL) { editor_move_line_down(&editor); editor.last_stroke = SDL_GetTicks(); @@ -809,7 +807,12 @@ int main(int argc, char **argv) (tmpEvent.text.text[0] != 'C')) { SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not } + break; + case SDLK_m: + if (event.key.keysym.mod & KMOD_ALT) { + emacs_back_to_indentation(&editor); + } break; @@ -907,11 +910,11 @@ int main(int argc, char **argv) } break; - case SDLK_z: { - if (SDL_GetModState() & KMOD_CTRL) { - showLineNumbers = !showLineNumbers; // Toggle the state of showLineNumbers + case SDLK_z: { + if (SDL_GetModState() & KMOD_CTRL) { + current_mode = EMACS; + } } - } break; case SDLK_t: { @@ -1003,13 +1006,29 @@ int main(int argc, char **argv) break; case SDLK_s: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor_start_search(&editor); - current_mode = INSERT; - } + if (event.key.keysym.mod & KMOD_CTRL) { + // Ctrl+S is pressed + editor_start_search(&editor); + current_mode = INSERT; + } else { + // Either S or Shift+S is pressed + if (event.key.keysym.mod & KMOD_SHIFT) { + evil_change_whole_line(&editor); + } else { + evil_substitute(&editor); + } + editor.selection = false; + // Eat up the next SDL_TEXTINPUT event for 's' or 'S' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 's' && tmpEvent.text.text[0] != 'S')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + editor.last_stroke = SDL_GetTicks(); + } + break; } - break; - + case SDLK_EQUALS: { if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed theme_next(¤tThemeIndex); @@ -1035,11 +1054,14 @@ int main(int argc, char **argv) } break; case SDLK_i: - if (SDL_GetModState() & KMOD_CTRL) { showIndentationLines = !showIndentationLines; } else if (SDL_GetModState() & KMOD_ALT) { - add_one_indentation(&editor); + if (SDL_GetModState() & KMOD_SHIFT) { + remove_one_indentation(&editor); + } else { + add_one_indentation(&editor); + } } else { current_mode = INSERT; @@ -1140,28 +1162,33 @@ int main(int argc, char **argv) editor_delete_selection(&editor); editor.selection = false; } else if (event.key.keysym.mod & KMOD_CTRL) { - editor_backward_kill_word(&editor); + emacs_backward_kill_word(&editor); } else { editor_backspace(&editor); } break; + + case SDLK_h: + if (event.key.keysym.mod & KMOD_ALT) { + emacs_mark_paragraph(&editor, true); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + } + editor.last_stroke = SDL_GetTicks(); + break; - case SDLK_h: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - + case SDLK_j: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "down", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { - evil_open_below(&editor); + evil_open_above(&editor); } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { evil_join(&editor); } else if (event.key.keysym.mod & KMOD_ALT) { @@ -1177,7 +1204,7 @@ int main(int argc, char **argv) if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { move_camera(&sr, "up", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { - editor_kill_line(&editor); + emacs_kill_line(&editor); } else if (event.key.keysym.mod & KMOD_ALT) { editor_move_paragraph_up(&editor); } else { @@ -1186,15 +1213,17 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - case SDLK_l: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_right(&editor); - } else { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + case SDLK_l: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + showLineNumbers = !showLineNumbers; + } else if (event.key.keysym.mod & KMOD_ALT) { + select_region_from_inside_braces(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; case SDLK_DOWN: @@ -1202,7 +1231,11 @@ int main(int argc, char **argv) editor_drag_line_down(&editor); } else { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_line_down(&editor); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } } break; @@ -1213,8 +1246,13 @@ int main(int argc, char **argv) } else { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); editor_move_line_up(&editor); + + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } } break; + case SDLK_RIGHT: @@ -1245,11 +1283,12 @@ int main(int argc, char **argv) } break; - // Add additional NORMAL mode keybinds here... + // additional NORMAL mode keybinds here... } break; case INSERT: switch (event.key.keysym.sym) { + SDL_Event tmpEvent; case SDLK_x: if (editor.selection) { @@ -1271,7 +1310,38 @@ int main(int argc, char **argv) } } break; - + + case SDLK_i: + if (SDL_GetModState() & KMOD_ALT) { + if (SDL_GetModState() & KMOD_SHIFT) { + remove_one_indentation(&editor); + } else { + add_one_indentation(&editor); + } + + editor.last_stroke = SDL_GetTicks(); + // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } + break; + + case SDLK_o: + if (SDL_GetModState() & KMOD_CTRL) { + evil_open_below(&editor); + // Eat up the next SDL_TEXTINPUT event for 'o' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != '0')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } + editor.last_stroke = SDL_GetTicks(); + break; + case SDLK_a: { if (event.key.keysym.mod & KMOD_CTRL) { editor.selection = true; @@ -1280,51 +1350,52 @@ int main(int argc, char **argv) } } break; - case SDLK_h: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_char_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - + if (event.key.keysym.mod & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + case SDLK_j: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - + if (event.key.keysym.mod & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + case SDLK_k: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - + if (event.key.keysym.mod & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + case SDLK_l: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + if (event.key.keysym.mod & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; - case SDLK_TAB: { - // TODO: indent on Tab instead of just inserting 4 spaces at the cursor - // That is insert the spaces at the beginning of the line. Shift+TAB should - // do unindent, that is remove 4 spaces from the beginning of the line. - // TODO: customizable indentation style - // - tabs/spaces [ ] - // - tab width [x] - // - etc. - /* for (size_t i = 0; i < indentation; ++i) { */ - /* editor_insert_char(&editor, ' '); */ - /* } */ + + // TODO if no snippet was activated indent() + // TODO if no snippet was activated dont move the cursor + case SDLK_TAB: { + /* char word[MAX_SNIPPET_KEY_LENGTH]; */ + /* if (get_word_left_of_cursor(&editor, word, sizeof(word))) { */ + activate_snippet(&editor); + /* } else { */ + /* indent(&editor); */ + /* } */ + break; + } - activate_snippet(&editor); - } - break; case SDLK_F3: file_browser = true; @@ -1459,28 +1530,20 @@ int main(int argc, char **argv) break; case SDLK_BACKSPACE: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_backward_kill_word(&editor); - editor.last_stroke = SDL_GetTicks(); - }else{ - editor_backspace(&editor); + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + } editor.last_stroke = SDL_GetTicks(); - } - break; - - /* case SDLK_RETURN: { */ - /* if (editor.searching) { */ - /* editor_stop_search_and_mark(&editor); */ - /* current_mode = NORMAL; */ - - /* } else { */ - /* editor_insert_char(&editor, '\n'); */ - /* editor.last_stroke = SDL_GetTicks(); */ - /* } */ - /* } */ - /* break; */ - + break; + // TODO use editor_return() case SDLK_RETURN: { if (editor.searching) { editor_stop_search_and_mark(&editor); @@ -1644,9 +1707,8 @@ int main(int argc, char **argv) } break; - - - case SDLK_j: // Down + + case SDLK_j: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { editor_move_paragraph_down(&editor); @@ -1655,9 +1717,8 @@ int main(int argc, char **argv) } editor.last_stroke = SDL_GetTicks(); break; - - - case SDLK_h: // Left + + case SDLK_h: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { editor_move_word_left(&editor); @@ -1667,7 +1728,7 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - case SDLK_k: // Up + case SDLK_k: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { editor_move_paragraph_up(&editor); @@ -1677,7 +1738,7 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - case SDLK_l: // Right + case SDLK_l: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { editor_move_word_right(&editor); @@ -1687,7 +1748,6 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - // transition back to NORMAL mode case SDLK_ESCAPE: editor.selection = false; current_mode = NORMAL; @@ -1695,12 +1755,12 @@ int main(int argc, char **argv) } break; - // Add additional VISUAL mode keybinds here... + // additional VISUAL mode keybinds here... case VISUAL_LINE: switch (event.key.keysym.sym) { - case SDLK_j: // Down + case SDLK_j: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { editor_move_paragraph_down(&editor); @@ -1710,7 +1770,7 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - case SDLK_h: // Left + case SDLK_h: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { editor_move_word_left(&editor); @@ -1777,7 +1837,7 @@ int main(int argc, char **argv) SDL_GetWindowSize(window, &w, &h); glViewport(0, 0, w, h); Vec4f bg = themes[currentThemeIndex].background; - + bg.w = 0.0f; glClearColor(bg.x, bg.y, bg.z, bg.w); glClear(GL_COLOR_BUFFER_BIT); diff --git a/src/render.c b/src/render.c index 3c9a0918..b15e5d08 100644 --- a/src/render.c +++ b/src/render.c @@ -242,6 +242,9 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + + // TODO shader switch + render_indentation_lines(sr, atlas, editor); // Render selection @@ -295,16 +298,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } - { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - - render_indentation_lines(sr, atlas, editor); - } - Vec2f cursor_pos = vec2fs(0.0f); @@ -716,7 +709,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer render_whitespaces(atlas, sr, editor); - // Render cursor if(editor->searching){ simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); @@ -727,7 +719,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } { - // Adjust cursor position if line numbers are shown if (showLineNumbers) { cursor_pos.x += lineNumberWidth; } @@ -754,8 +745,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case NORMAL: { float cursor_width; // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { + if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { Vec2f next_char_pos = cursor_pos; free_glyph_atlas_measure_line_sized( atlas, editor->data.items + editor->cursor, @@ -798,8 +788,22 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case INSERT: CURSOR_COLOR = CURRENT_THEME.insert_cursor; - CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode - // Implement blinking for INSERT mode + if (BlockInsertCurosr) { + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + CURSOR_WIDTH = next_char_pos.x - cursor_pos.x; + } else { + CURSOR_WIDTH = whitespace_width; + } + } else { + CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode + } + // blinking for INSERT mode if (t < CURSOR_BLINK_THRESHOLD || (t / CURSOR_BLINK_PERIOD) % 2 != 0) { simple_renderer_solid_rect( diff --git a/src/theme.c b/src/theme.c index d75900de..5a69d70f 100644 --- a/src/theme.c +++ b/src/theme.c @@ -10,7 +10,7 @@ void initialize_themes() { themes[0] = (Theme) { .cursor = hex_to_vec4f(0x658B5FFF), .insert_cursor = hex_to_vec4f(0x514B8EFF), - .emacs_cursor = hex_to_vec4f(0x834EB6FF), + .emacs_cursor = hex_to_vec4f(0x565663FF), .text = hex_to_vec4f(0xC0ACD1FF), .background = hex_to_vec4f(0x090909FF), .comment = hex_to_vec4f(0x867892FF), diff --git a/src/yasnippet.c b/src/yasnippet.c index 5005212b..09b0cf9c 100644 --- a/src/yasnippet.c +++ b/src/yasnippet.c @@ -77,33 +77,6 @@ void load_snippets_from_directory() { } - -/* bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { */ -/* if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { */ -/* return false; // No word directly to the left of the cursor */ -/* } */ - -/* size_t end = e->cursor; */ -/* size_t start = end; */ - -/* while (start > 0 && isalnum(e->data.items[start - 1])) { */ -/* start--; */ -/* } */ - -/* size_t word_length = end - start; */ -/* if (word_length >= max_word_length) { */ -/* return false; // Word is too long for the buffer */ -/* } */ - -/* memcpy(word, &e->data.items[start], word_length); */ -/* word[word_length] = '\0'; // Null-terminate the word */ - -/* e->cursor = start; // Move cursor to the start of the word */ -/* printf("Extracted word: '%s'\n", word); // Debug print */ -/* return true; */ -/* } */ - - bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { if (e->cursor == 0 || !(isalnum(e->data.items[e->cursor - 1]) || e->data.items[e->cursor - 1] == '<')) { return false; // No word or symbol directly to the left of the cursor diff --git a/todo.org b/todo.org index 6533d841..447ea3b0 100644 --- a/todo.org +++ b/todo.org @@ -40,6 +40,7 @@ also check if the file exist before opening it [] render circles (for whitespaces) [] line under links (and clickable things)[] ** Evil +shift + i [] evil-find-char-backward [] evil-search-backward [] evil-change-line(smarter version, don't delete ";") [] @@ -49,7 +50,13 @@ splits(maybe) [] evil-delete-backward-char [x] evil-search-word-forward (shift + 8) [x] shift + 5 [x] +** Addresses + showIndentationLines = 5555555792d2 i8 + currentThemeIndex = 555559015340 + ** Editor +find_first_non_whitespace(and refactor) [] +select_function [] org mode [] md mode rendered as you type [] refactor on write(save) [] From a8ce744d60627cd64023eb11ef8a9d0e02ec9908 Mon Sep 17 00:00:00 2001 From: laluxx Date: Wed, 17 Jan 2024 15:23:42 +0100 Subject: [PATCH 58/74] M-x --- src/editor.c | 71 ++- src/editor.h | 21 +- src/emacs.c | 2 + src/evil.c | 16 +- src/evil.h | 1 + src/hashmap.c | 1149 +++++++++++++++++++++++++++++++++++++++++++++++++ src/hashmap.h | 50 +++ src/main.c | 145 +++++-- src/render.c | 81 +++- src/render.h | 1 + todo.org | 29 +- 11 files changed, 1511 insertions(+), 55 deletions(-) create mode 100644 src/hashmap.c create mode 100644 src/hashmap.h diff --git a/src/editor.c b/src/editor.c index df2dd1d5..b68af940 100644 --- a/src/editor.c +++ b/src/editor.c @@ -8,6 +8,7 @@ #include "./common.h" #include "./free_glyph.h" #include "./file_browser.h" +#include "emacs.h" #include "lexer.h" #include "simple_renderer.h" #include // For isalnum @@ -41,9 +42,11 @@ float minibufferHeight = 21.0f; float modelineHeight = 35.0f; float modelineAccentWidth = 5.0f; bool minibuffering = false; +bool M_x_active = false; bool BlockInsertCurosr = true; +bool highlightCurrentLineNumberOnInsertMode = true; // the loong way @@ -100,6 +103,10 @@ void editor_backspace(Editor *e) { if (e->search.count > 0) { e->search.count -= 1; } + } else if (e->minibuffer_active) { + if (e->minibuffer_text.count > 0) { + e->minibuffer_text.count -= 1; + } } else { // Check if the cursor is at the beginning or at the beginning of a line if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete @@ -375,6 +382,9 @@ void editor_insert_buf(Editor *e, char *buf, size_t buf_len) } } if (!matched) e->search.count -= buf_len; + } else if (e->minibuffer_active) { + sb_append_buf(&e->minibuffer_text, buf, buf_len); + /* printf("Minibuffer: "SB_Fmt"\n", SB_Arg(e->minibuffer_text)); */ } else { if (e->cursor > e->data.count) { e->cursor = e->data.count; @@ -707,7 +717,14 @@ void editor_enter(Editor *e) { editor_stop_search_and_mark(e); current_mode = NORMAL; return; - } + } /* else if (M_x_active && e->minibuffer_active) { */ + /* // Execute the command in the minibuffer */ + /* execute_command(e->commands, e, e->minibuffer_text.items); */ + /* e->minibuffer_text.count = 0; */ + /* e->minibuffer_active = false; */ + /* M_x_active = false; */ + /* current_mode = NORMAL; */ + /* } */ size_t row = editor_cursor_row(e); size_t line_end = e->lines.items[row].end; @@ -1168,5 +1185,57 @@ void select_region_from_brace(Editor *editor) { +// M-x +// TODO command aliases and +// history in program memory, when quitting save it in ~/.config/ded/M-x-history +// and load it when opening ded clamp it to max-M-x-history-size or something +void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *)) { + Command *cmd = malloc(sizeof(Command)); + if (cmd) { + cmd->name = name; + cmd->execute = execute; + hashmap_set(command_map, cmd); + } else { + // Handle allocation failure + } +} + +// TODO open-below && open-above && editor-enter behave weird +void initialize_commands(struct hashmap *command_map) { + register_command(command_map, "open-below", evil_open_below); + register_command(command_map, "open-above", evil_open_above); + register_command(command_map, "drag-down", editor_drag_line_down); + register_command(command_map, "drag-up", editor_drag_line_up); + register_command(command_map, "editor-enter", editor_enter); + register_command(command_map, "select", select_region_from_brace); + register_command(command_map, "back", emacs_backward_kill_word); + register_command(command_map, "evil-join", evil_join); + register_command(command_map, "evil-yank-line", evil_yank_line); +} +void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name) { + Command tempCmd = {command_name, NULL}; // Temporary command for lookup + Command *cmd = (Command *)hashmap_get(command_map, &tempCmd); + if (cmd && cmd->execute) { + cmd->execute(editor); + } else { + // Handle command not found + } +} + +int command_compare(const void *a, const void *b, void *udata) { + const Command *cmd_a = a; + const Command *cmd_b = b; + return strcmp(cmd_a->name, cmd_b->name); +} + +uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1) { + const Command *cmd = item; + const char *str = cmd->name; + uint64_t hash = seed0; + while (*str) { + hash = 31 * hash + (*str++); + } + return hash ^ seed1; +} diff --git a/src/editor.h b/src/editor.h index e14c7407..e5739975 100644 --- a/src/editor.h +++ b/src/editor.h @@ -10,6 +10,7 @@ #include #include +#include "hashmap.h" extern bool isAnimated; extern size_t indentation; @@ -32,9 +33,11 @@ extern bool showModeline; extern float minibufferHeight; extern float modelineHeight; extern float modelineAccentWidth; -extern bool minibuffering; +extern bool minibuffering; //TODO this will be ivy +extern bool M_x_active; extern bool BlockInsertCurosr; +extern bool highlightCurrentLineNumberOnInsertMode; typedef struct { size_t begin; @@ -77,6 +80,11 @@ typedef struct { bool searching; String_Builder search; + bool minibuffer_active; + String_Builder minibuffer_text; + + struct hashmap *commands; + bool selection; size_t select_begin; size_t cursor; @@ -175,5 +183,16 @@ float measure_whitespace_height(Free_Glyph_Atlas *atlas); size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); +// M-x +typedef struct { + const char *name; + void (*execute)(Editor *); // Function pointer with Editor* argument +} Command; + +void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *)); +void initialize_commands(struct hashmap *command_map); +void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name); +int command_compare(const void *a, const void *b, void *udata); +uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1); #endif // EDITOR_H_ diff --git a/src/emacs.c b/src/emacs.c index b5809a5c..47ec2e18 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -1,5 +1,7 @@ #include "emacs.h" + +// TODO it delete the line if it is on whitespaces even if there is text void emacs_kill_line(Editor *e) { if (e->searching || e->cursor >= e->data.count) return; diff --git a/src/evil.c b/src/evil.c index 5def86ac..ad4fb90a 100644 --- a/src/evil.c +++ b/src/evil.c @@ -282,7 +282,7 @@ void evil_delete_char(Editor *e) { if (e->cursor >= e->data.count) return; - // 1. Copy the character to clipboard. + // Copy the character to clipboard. e->clipboard.count = 0; sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); sb_append_null(&e->clipboard); @@ -290,7 +290,7 @@ void evil_delete_char(Editor *e) { fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); } - // 2. Delete the character from the editor. + // Delete the character from the editor. memmove( &e->data.items[e->cursor], &e->data.items[e->cursor + 1], @@ -439,7 +439,7 @@ void evil_change_line(Editor *e) { editor_retokenize(e); } -// TODO Capital char +// TODO can't find Capital chars void evil_find_char(Editor *e, char target) { if (e->searching || e->cursor >= e->data.count) return; @@ -540,3 +540,13 @@ void evil_change_whole_line(Editor *e) { } + + +void evil_insert_line(Editor *e) { + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + size_t first_non_whitespace = find_first_non_whitespace(e->data.items, line_begin, line_end); + e->cursor = first_non_whitespace; + current_mode = INSERT; +} diff --git a/src/evil.h b/src/evil.h index 1dbdf3a1..e3e63f99 100644 --- a/src/evil.h +++ b/src/evil.h @@ -24,5 +24,6 @@ void evil_find_char(Editor *e, char target); bool handle_evil_find_char(Editor *editor, SDL_Event *event); void evil_substitute(Editor *e); void evil_change_whole_line(Editor *e); +void evil_insert_line(Editor *e); #endif // EVIL_H diff --git a/src/hashmap.c b/src/hashmap.c new file mode 100644 index 00000000..769452e1 --- /dev/null +++ b/src/hashmap.c @@ -0,0 +1,1149 @@ +#include +#include +#include +#include +#include +#include "hashmap.h" + +#define GROW_AT 0.60 /* 60% */ +#define SHRINK_AT 0.10 /* 10% */ + +#ifndef HASHMAP_LOAD_FACTOR +#define HASHMAP_LOAD_FACTOR GROW_AT +#endif + +static void *(*__malloc)(size_t) = NULL; +static void *(*__realloc)(void *, size_t) = NULL; +static void (*__free)(void *) = NULL; + +// hashmap_set_allocator allows for configuring a custom allocator for +// all hashmap library operations. This function, if needed, should be called +// only once at startup and a prior to calling hashmap_new(). +void hashmap_set_allocator(void *(*malloc)(size_t), void (*free)(void*)) { + __malloc = malloc; + __free = free; +} + +struct bucket { + uint64_t hash:48; + uint64_t dib:16; +}; + +// hashmap is an open addressed hash map using robinhood hashing. +struct hashmap { + void *(*malloc)(size_t); + void *(*realloc)(void *, size_t); + void (*free)(void *); + size_t elsize; + size_t cap; + uint64_t seed0; + uint64_t seed1; + uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1); + int (*compare)(const void *a, const void *b, void *udata); + void (*elfree)(void *item); + void *udata; + size_t bucketsz; + size_t nbuckets; + size_t count; + size_t mask; + size_t growat; + size_t shrinkat; + uint8_t loadfactor; + uint8_t growpower; + bool oom; + void *buckets; + void *spare; + void *edata; +}; + +void hashmap_set_grow_by_power(struct hashmap *map, size_t power) { + map->growpower = power < 1 ? 1 : power > 16 ? 16 : power; +} + +static double clamp_load_factor(double factor, double default_factor) { + // Check for NaN and clamp between 50% and 90% + return factor != factor ? default_factor : + factor < 0.50 ? 0.50 : + factor > 0.95 ? 0.95 : + factor; +} + +void hashmap_set_load_factor(struct hashmap *map, double factor) { + factor = clamp_load_factor(factor, map->loadfactor / 100.0); + map->loadfactor = factor * 100; + map->growat = map->nbuckets * (map->loadfactor / 100.0); +} + +static struct bucket *bucket_at0(void *buckets, size_t bucketsz, size_t i) { + return (struct bucket*)(((char*)buckets)+(bucketsz*i)); +} + +static struct bucket *bucket_at(struct hashmap *map, size_t index) { + return bucket_at0(map->buckets, map->bucketsz, index); +} + +static void *bucket_item(struct bucket *entry) { + return ((char*)entry)+sizeof(struct bucket); +} + +static uint64_t clip_hash(uint64_t hash) { + return hash & 0xFFFFFFFFFFFF; +} + +static uint64_t get_hash(struct hashmap *map, const void *key) { + return clip_hash(map->hash(key, map->seed0, map->seed1)); +} + + +// hashmap_new_with_allocator returns a new hash map using a custom allocator. +// See hashmap_new for more information information +struct hashmap *hashmap_new_with_allocator(void *(*_malloc)(size_t), + void *(*_realloc)(void*, size_t), void (*_free)(void*), + size_t elsize, size_t cap, uint64_t seed0, uint64_t seed1, + uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1), + int (*compare)(const void *a, const void *b, void *udata), + void (*elfree)(void *item), + void *udata) +{ + _malloc = _malloc ? _malloc : __malloc ? __malloc : malloc; + _realloc = _realloc ? _realloc : __realloc ? __realloc : realloc; + _free = _free ? _free : __free ? __free : free; + size_t ncap = 16; + if (cap < ncap) { + cap = ncap; + } else { + while (ncap < cap) { + ncap *= 2; + } + cap = ncap; + } + size_t bucketsz = sizeof(struct bucket) + elsize; + while (bucketsz & (sizeof(uintptr_t)-1)) { + bucketsz++; + } + // hashmap + spare + edata + size_t size = sizeof(struct hashmap)+bucketsz*2; + struct hashmap *map = _malloc(size); + if (!map) { + return NULL; + } + memset(map, 0, sizeof(struct hashmap)); + map->elsize = elsize; + map->bucketsz = bucketsz; + map->seed0 = seed0; + map->seed1 = seed1; + map->hash = hash; + map->compare = compare; + map->elfree = elfree; + map->udata = udata; + map->spare = ((char*)map)+sizeof(struct hashmap); + map->edata = (char*)map->spare+bucketsz; + map->cap = cap; + map->nbuckets = cap; + map->mask = map->nbuckets-1; + map->buckets = _malloc(map->bucketsz*map->nbuckets); + if (!map->buckets) { + _free(map); + return NULL; + } + memset(map->buckets, 0, map->bucketsz*map->nbuckets); + map->growpower = 1; + map->loadfactor = clamp_load_factor(HASHMAP_LOAD_FACTOR, GROW_AT) * 100; + map->growat = map->nbuckets * (map->loadfactor / 100.0); + map->shrinkat = map->nbuckets * SHRINK_AT; + map->malloc = _malloc; + map->realloc = _realloc; + map->free = _free; + return map; +} + +// hashmap_new returns a new hash map. +// Param `elsize` is the size of each element in the tree. Every element that +// is inserted, deleted, or retrieved will be this size. +// Param `cap` is the default lower capacity of the hashmap. Setting this to +// zero will default to 16. +// Params `seed0` and `seed1` are optional seed values that are passed to the +// following `hash` function. These can be any value you wish but it's often +// best to use randomly generated values. +// Param `hash` is a function that generates a hash value for an item. It's +// important that you provide a good hash function, otherwise it will perform +// poorly or be vulnerable to Denial-of-service attacks. This implementation +// comes with two helper functions `hashmap_sip()` and `hashmap_murmur()`. +// Param `compare` is a function that compares items in the tree. See the +// qsort stdlib function for an example of how this function works. +// The hashmap must be freed with hashmap_free(). +// Param `elfree` is a function that frees a specific item. This should be NULL +// unless you're storing some kind of reference data in the hash. +struct hashmap *hashmap_new(size_t elsize, size_t cap, uint64_t seed0, + uint64_t seed1, + uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1), + int (*compare)(const void *a, const void *b, void *udata), + void (*elfree)(void *item), + void *udata) +{ + return hashmap_new_with_allocator(NULL, NULL, NULL, elsize, cap, seed0, + seed1, hash, compare, elfree, udata); +} + +static void free_elements(struct hashmap *map) { + if (map->elfree) { + for (size_t i = 0; i < map->nbuckets; i++) { + struct bucket *bucket = bucket_at(map, i); + if (bucket->dib) map->elfree(bucket_item(bucket)); + } + } +} + +// hashmap_clear quickly clears the map. +// Every item is called with the element-freeing function given in hashmap_new, +// if present, to free any data referenced in the elements of the hashmap. +// When the update_cap is provided, the map's capacity will be updated to match +// the currently number of allocated buckets. This is an optimization to ensure +// that this operation does not perform any allocations. +void hashmap_clear(struct hashmap *map, bool update_cap) { + map->count = 0; + free_elements(map); + if (update_cap) { + map->cap = map->nbuckets; + } else if (map->nbuckets != map->cap) { + void *new_buckets = map->malloc(map->bucketsz*map->cap); + if (new_buckets) { + map->free(map->buckets); + map->buckets = new_buckets; + } + map->nbuckets = map->cap; + } + memset(map->buckets, 0, map->bucketsz*map->nbuckets); + map->mask = map->nbuckets-1; + map->growat = map->nbuckets * (map->loadfactor / 100.0) ; + map->shrinkat = map->nbuckets * SHRINK_AT; +} + +static bool resize0(struct hashmap *map, size_t new_cap) { + struct hashmap *map2 = hashmap_new_with_allocator(map->malloc, map->realloc, + map->free, map->elsize, new_cap, map->seed0, map->seed1, map->hash, + map->compare, map->elfree, map->udata); + if (!map2) return false; + for (size_t i = 0; i < map->nbuckets; i++) { + struct bucket *entry = bucket_at(map, i); + if (!entry->dib) { + continue; + } + entry->dib = 1; + size_t j = entry->hash & map2->mask; + while(1) { + struct bucket *bucket = bucket_at(map2, j); + if (bucket->dib == 0) { + memcpy(bucket, entry, map->bucketsz); + break; + } + if (bucket->dib < entry->dib) { + memcpy(map2->spare, bucket, map->bucketsz); + memcpy(bucket, entry, map->bucketsz); + memcpy(entry, map2->spare, map->bucketsz); + } + j = (j + 1) & map2->mask; + entry->dib += 1; + } + } + map->free(map->buckets); + map->buckets = map2->buckets; + map->nbuckets = map2->nbuckets; + map->mask = map2->mask; + map->growat = map2->growat; + map->shrinkat = map2->shrinkat; + map->free(map2); + return true; +} + +static bool resize(struct hashmap *map, size_t new_cap) { + return resize0(map, new_cap); +} + +// hashmap_set_with_hash works like hashmap_set but you provide your +// own hash. The 'hash' callback provided to the hashmap_new function +// will not be called +const void *hashmap_set_with_hash(struct hashmap *map, const void *item, + uint64_t hash) +{ + hash = clip_hash(hash); + map->oom = false; + if (map->count >= map->growat) { + if (!resize(map, map->nbuckets*(1<growpower))) { + map->oom = true; + return NULL; + } + } + + struct bucket *entry = map->edata; + entry->hash = hash; + entry->dib = 1; + void *eitem = bucket_item(entry); + memcpy(eitem, item, map->elsize); + + void *bitem; + size_t i = entry->hash & map->mask; + while(1) { + struct bucket *bucket = bucket_at(map, i); + if (bucket->dib == 0) { + memcpy(bucket, entry, map->bucketsz); + map->count++; + return NULL; + } + bitem = bucket_item(bucket); + if (entry->hash == bucket->hash && (!map->compare || + map->compare(eitem, bitem, map->udata) == 0)) + { + memcpy(map->spare, bitem, map->elsize); + memcpy(bitem, eitem, map->elsize); + return map->spare; + } + if (bucket->dib < entry->dib) { + memcpy(map->spare, bucket, map->bucketsz); + memcpy(bucket, entry, map->bucketsz); + memcpy(entry, map->spare, map->bucketsz); + eitem = bucket_item(entry); + } + i = (i + 1) & map->mask; + entry->dib += 1; + } +} + +// hashmap_set inserts or replaces an item in the hash map. If an item is +// replaced then it is returned otherwise NULL is returned. This operation +// may allocate memory. If the system is unable to allocate additional +// memory then NULL is returned and hashmap_oom() returns true. +const void *hashmap_set(struct hashmap *map, const void *item) { + return hashmap_set_with_hash(map, item, get_hash(map, item)); +} + +// hashmap_get_with_hash works like hashmap_get but you provide your +// own hash. The 'hash' callback provided to the hashmap_new function +// will not be called +const void *hashmap_get_with_hash(struct hashmap *map, const void *key, + uint64_t hash) +{ + hash = clip_hash(hash); + size_t i = hash & map->mask; + while(1) { + struct bucket *bucket = bucket_at(map, i); + if (!bucket->dib) return NULL; + if (bucket->hash == hash) { + void *bitem = bucket_item(bucket); + if (!map->compare || map->compare(key, bitem, map->udata) == 0) { + return bitem; + } + } + i = (i + 1) & map->mask; + } +} + +// hashmap_get returns the item based on the provided key. If the item is not +// found then NULL is returned. +const void *hashmap_get(struct hashmap *map, const void *key) { + return hashmap_get_with_hash(map, key, get_hash(map, key)); +} + +// hashmap_probe returns the item in the bucket at position or NULL if an item +// is not set for that bucket. The position is 'moduloed' by the number of +// buckets in the hashmap. +const void *hashmap_probe(struct hashmap *map, uint64_t position) { + size_t i = position & map->mask; + struct bucket *bucket = bucket_at(map, i); + if (!bucket->dib) { + return NULL; + } + return bucket_item(bucket); +} + +// hashmap_delete_with_hash works like hashmap_delete but you provide your +// own hash. The 'hash' callback provided to the hashmap_new function +// will not be called +const void *hashmap_delete_with_hash(struct hashmap *map, const void *key, + uint64_t hash) +{ + hash = clip_hash(hash); + map->oom = false; + size_t i = hash & map->mask; + while(1) { + struct bucket *bucket = bucket_at(map, i); + if (!bucket->dib) { + return NULL; + } + void *bitem = bucket_item(bucket); + if (bucket->hash == hash && (!map->compare || + map->compare(key, bitem, map->udata) == 0)) + { + memcpy(map->spare, bitem, map->elsize); + bucket->dib = 0; + while(1) { + struct bucket *prev = bucket; + i = (i + 1) & map->mask; + bucket = bucket_at(map, i); + if (bucket->dib <= 1) { + prev->dib = 0; + break; + } + memcpy(prev, bucket, map->bucketsz); + prev->dib--; + } + map->count--; + if (map->nbuckets > map->cap && map->count <= map->shrinkat) { + // Ignore the return value. It's ok for the resize operation to + // fail to allocate enough memory because a shrink operation + // does not change the integrity of the data. + resize(map, map->nbuckets/2); + } + return map->spare; + } + i = (i + 1) & map->mask; + } +} + +// hashmap_delete removes an item from the hash map and returns it. If the +// item is not found then NULL is returned. +const void *hashmap_delete(struct hashmap *map, const void *key) { + return hashmap_delete_with_hash(map, key, get_hash(map, key)); +} + +// hashmap_count returns the number of items in the hash map. +size_t hashmap_count(struct hashmap *map) { + return map->count; +} + +// hashmap_free frees the hash map +// Every item is called with the element-freeing function given in hashmap_new, +// if present, to free any data referenced in the elements of the hashmap. +void hashmap_free(struct hashmap *map) { + if (!map) return; + free_elements(map); + map->free(map->buckets); + map->free(map); +} + +// hashmap_oom returns true if the last hashmap_set() call failed due to the +// system being out of memory. +bool hashmap_oom(struct hashmap *map) { + return map->oom; +} + +// hashmap_scan iterates over all items in the hash map +// Param `iter` can return false to stop iteration early. +// Returns false if the iteration has been stopped early. +bool hashmap_scan(struct hashmap *map, + bool (*iter)(const void *item, void *udata), void *udata) +{ + for (size_t i = 0; i < map->nbuckets; i++) { + struct bucket *bucket = bucket_at(map, i); + if (bucket->dib && !iter(bucket_item(bucket), udata)) { + return false; + } + } + return true; +} + +// hashmap_iter iterates one key at a time yielding a reference to an +// entry at each iteration. Useful to write simple loops and avoid writing +// dedicated callbacks and udata structures, as in hashmap_scan. +// +// map is a hash map handle. i is a pointer to a size_t cursor that +// should be initialized to 0 at the beginning of the loop. item is a void +// pointer pointer that is populated with the retrieved item. Note that this +// is NOT a copy of the item stored in the hash map and can be directly +// modified. +// +// Note that if hashmap_delete() is called on the hashmap being iterated, +// the buckets are rearranged and the iterator must be reset to 0, otherwise +// unexpected results may be returned after deletion. +// +// This function has not been tested for thread safety. +// +// The function returns true if an item was retrieved; false if the end of the +// iteration has been reached. +bool hashmap_iter(struct hashmap *map, size_t *i, void **item) { + struct bucket *bucket; + do { + if (*i >= map->nbuckets) return false; + bucket = bucket_at(map, *i); + (*i)++; + } while (!bucket->dib); + *item = bucket_item(bucket); + return true; +} + + +//----------------------------------------------------------------------------- +// SipHash reference C implementation +// +// Copyright (c) 2012-2016 Jean-Philippe Aumasson +// +// Copyright (c) 2012-2014 Daniel J. Bernstein +// +// To the extent possible under law, the author(s) have dedicated all copyright +// and related and neighboring rights to this software to the public domain +// worldwide. This software is distributed without any warranty. +// +// You should have received a copy of the CC0 Public Domain Dedication along +// with this software. If not, see +// . +// +// default: SipHash-2-4 +//----------------------------------------------------------------------------- +static uint64_t SIP64(const uint8_t *in, const size_t inlen, uint64_t seed0, + uint64_t seed1) +{ +#define U8TO64_LE(p) \ + { (((uint64_t)((p)[0])) | ((uint64_t)((p)[1]) << 8) | \ + ((uint64_t)((p)[2]) << 16) | ((uint64_t)((p)[3]) << 24) | \ + ((uint64_t)((p)[4]) << 32) | ((uint64_t)((p)[5]) << 40) | \ + ((uint64_t)((p)[6]) << 48) | ((uint64_t)((p)[7]) << 56)) } +#define U64TO8_LE(p, v) \ + { U32TO8_LE((p), (uint32_t)((v))); \ + U32TO8_LE((p) + 4, (uint32_t)((v) >> 32)); } +#define U32TO8_LE(p, v) \ + { (p)[0] = (uint8_t)((v)); \ + (p)[1] = (uint8_t)((v) >> 8); \ + (p)[2] = (uint8_t)((v) >> 16); \ + (p)[3] = (uint8_t)((v) >> 24); } +#define ROTL(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b)))) +#define SIPROUND \ + { v0 += v1; v1 = ROTL(v1, 13); \ + v1 ^= v0; v0 = ROTL(v0, 32); \ + v2 += v3; v3 = ROTL(v3, 16); \ + v3 ^= v2; \ + v0 += v3; v3 = ROTL(v3, 21); \ + v3 ^= v0; \ + v2 += v1; v1 = ROTL(v1, 17); \ + v1 ^= v2; v2 = ROTL(v2, 32); } + uint64_t k0 = U8TO64_LE((uint8_t*)&seed0); + uint64_t k1 = U8TO64_LE((uint8_t*)&seed1); + uint64_t v3 = UINT64_C(0x7465646279746573) ^ k1; + uint64_t v2 = UINT64_C(0x6c7967656e657261) ^ k0; + uint64_t v1 = UINT64_C(0x646f72616e646f6d) ^ k1; + uint64_t v0 = UINT64_C(0x736f6d6570736575) ^ k0; + const uint8_t *end = in + inlen - (inlen % sizeof(uint64_t)); + for (; in != end; in += 8) { + uint64_t m = U8TO64_LE(in); + v3 ^= m; + SIPROUND; SIPROUND; + v0 ^= m; + } + const int left = inlen & 7; + uint64_t b = ((uint64_t)inlen) << 56; + switch (left) { + case 7: b |= ((uint64_t)in[6]) << 48; /* fall through */ + case 6: b |= ((uint64_t)in[5]) << 40; /* fall through */ + case 5: b |= ((uint64_t)in[4]) << 32; /* fall through */ + case 4: b |= ((uint64_t)in[3]) << 24; /* fall through */ + case 3: b |= ((uint64_t)in[2]) << 16; /* fall through */ + case 2: b |= ((uint64_t)in[1]) << 8; /* fall through */ + case 1: b |= ((uint64_t)in[0]); break; + case 0: break; + } + v3 ^= b; + SIPROUND; SIPROUND; + v0 ^= b; + v2 ^= 0xff; + SIPROUND; SIPROUND; SIPROUND; SIPROUND; + b = v0 ^ v1 ^ v2 ^ v3; + uint64_t out = 0; + U64TO8_LE((uint8_t*)&out, b); + return out; +} + +//----------------------------------------------------------------------------- +// MurmurHash3 was written by Austin Appleby, and is placed in the public +// domain. The author hereby disclaims copyright to this source code. +// +// Murmur3_86_128 +//----------------------------------------------------------------------------- +static uint64_t MM86128(const void *key, const int len, uint32_t seed) { +#define ROTL32(x, r) ((x << r) | (x >> (32 - r))) +#define FMIX32(h) h^=h>>16; h*=0x85ebca6b; h^=h>>13; h*=0xc2b2ae35; h^=h>>16; + const uint8_t * data = (const uint8_t*)key; + const int nblocks = len / 16; + uint32_t h1 = seed; + uint32_t h2 = seed; + uint32_t h3 = seed; + uint32_t h4 = seed; + uint32_t c1 = 0x239b961b; + uint32_t c2 = 0xab0e9789; + uint32_t c3 = 0x38b34ae5; + uint32_t c4 = 0xa1e38b93; + const uint32_t * blocks = (const uint32_t *)(data + nblocks*16); + for (int i = -nblocks; i; i++) { + uint32_t k1 = blocks[i*4+0]; + uint32_t k2 = blocks[i*4+1]; + uint32_t k3 = blocks[i*4+2]; + uint32_t k4 = blocks[i*4+3]; + k1 *= c1; k1 = ROTL32(k1,15); k1 *= c2; h1 ^= k1; + h1 = ROTL32(h1,19); h1 += h2; h1 = h1*5+0x561ccd1b; + k2 *= c2; k2 = ROTL32(k2,16); k2 *= c3; h2 ^= k2; + h2 = ROTL32(h2,17); h2 += h3; h2 = h2*5+0x0bcaa747; + k3 *= c3; k3 = ROTL32(k3,17); k3 *= c4; h3 ^= k3; + h3 = ROTL32(h3,15); h3 += h4; h3 = h3*5+0x96cd1c35; + k4 *= c4; k4 = ROTL32(k4,18); k4 *= c1; h4 ^= k4; + h4 = ROTL32(h4,13); h4 += h1; h4 = h4*5+0x32ac3b17; + } + const uint8_t * tail = (const uint8_t*)(data + nblocks*16); + uint32_t k1 = 0; + uint32_t k2 = 0; + uint32_t k3 = 0; + uint32_t k4 = 0; + switch(len & 15) { + case 15: k4 ^= tail[14] << 16; /* fall through */ + case 14: k4 ^= tail[13] << 8; /* fall through */ + case 13: k4 ^= tail[12] << 0; + k4 *= c4; k4 = ROTL32(k4,18); k4 *= c1; h4 ^= k4; + /* fall through */ + case 12: k3 ^= tail[11] << 24; /* fall through */ + case 11: k3 ^= tail[10] << 16; /* fall through */ + case 10: k3 ^= tail[ 9] << 8; /* fall through */ + case 9: k3 ^= tail[ 8] << 0; + k3 *= c3; k3 = ROTL32(k3,17); k3 *= c4; h3 ^= k3; + /* fall through */ + case 8: k2 ^= tail[ 7] << 24; /* fall through */ + case 7: k2 ^= tail[ 6] << 16; /* fall through */ + case 6: k2 ^= tail[ 5] << 8; /* fall through */ + case 5: k2 ^= tail[ 4] << 0; + k2 *= c2; k2 = ROTL32(k2,16); k2 *= c3; h2 ^= k2; + /* fall through */ + case 4: k1 ^= tail[ 3] << 24; /* fall through */ + case 3: k1 ^= tail[ 2] << 16; /* fall through */ + case 2: k1 ^= tail[ 1] << 8; /* fall through */ + case 1: k1 ^= tail[ 0] << 0; + k1 *= c1; k1 = ROTL32(k1,15); k1 *= c2; h1 ^= k1; + /* fall through */ + }; + h1 ^= len; h2 ^= len; h3 ^= len; h4 ^= len; + h1 += h2; h1 += h3; h1 += h4; + h2 += h1; h3 += h1; h4 += h1; + FMIX32(h1); FMIX32(h2); FMIX32(h3); FMIX32(h4); + h1 += h2; h1 += h3; h1 += h4; + h2 += h1; h3 += h1; h4 += h1; + return (((uint64_t)h2)<<32)|h1; +} + +//----------------------------------------------------------------------------- +// xxHash Library +// Copyright (c) 2012-2021 Yann Collet +// All rights reserved. +// +// BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) +// +// xxHash3 +//----------------------------------------------------------------------------- +#define XXH_PRIME_1 11400714785074694791ULL +#define XXH_PRIME_2 14029467366897019727ULL +#define XXH_PRIME_3 1609587929392839161ULL +#define XXH_PRIME_4 9650029242287828579ULL +#define XXH_PRIME_5 2870177450012600261ULL + +static uint64_t XXH_read64(const void* memptr) { + uint64_t val; + memcpy(&val, memptr, sizeof(val)); + return val; +} + +static uint32_t XXH_read32(const void* memptr) { + uint32_t val; + memcpy(&val, memptr, sizeof(val)); + return val; +} + +static uint64_t XXH_rotl64(uint64_t x, int r) { + return (x << r) | (x >> (64 - r)); +} + +static uint64_t xxh3(const void* data, size_t len, uint64_t seed) { + const uint8_t* p = (const uint8_t*)data; + const uint8_t* const end = p + len; + uint64_t h64; + + if (len >= 32) { + const uint8_t* const limit = end - 32; + uint64_t v1 = seed + XXH_PRIME_1 + XXH_PRIME_2; + uint64_t v2 = seed + XXH_PRIME_2; + uint64_t v3 = seed + 0; + uint64_t v4 = seed - XXH_PRIME_1; + + do { + v1 += XXH_read64(p) * XXH_PRIME_2; + v1 = XXH_rotl64(v1, 31); + v1 *= XXH_PRIME_1; + + v2 += XXH_read64(p + 8) * XXH_PRIME_2; + v2 = XXH_rotl64(v2, 31); + v2 *= XXH_PRIME_1; + + v3 += XXH_read64(p + 16) * XXH_PRIME_2; + v3 = XXH_rotl64(v3, 31); + v3 *= XXH_PRIME_1; + + v4 += XXH_read64(p + 24) * XXH_PRIME_2; + v4 = XXH_rotl64(v4, 31); + v4 *= XXH_PRIME_1; + + p += 32; + } while (p <= limit); + + h64 = XXH_rotl64(v1, 1) + XXH_rotl64(v2, 7) + XXH_rotl64(v3, 12) + + XXH_rotl64(v4, 18); + + v1 *= XXH_PRIME_2; + v1 = XXH_rotl64(v1, 31); + v1 *= XXH_PRIME_1; + h64 ^= v1; + h64 = h64 * XXH_PRIME_1 + XXH_PRIME_4; + + v2 *= XXH_PRIME_2; + v2 = XXH_rotl64(v2, 31); + v2 *= XXH_PRIME_1; + h64 ^= v2; + h64 = h64 * XXH_PRIME_1 + XXH_PRIME_4; + + v3 *= XXH_PRIME_2; + v3 = XXH_rotl64(v3, 31); + v3 *= XXH_PRIME_1; + h64 ^= v3; + h64 = h64 * XXH_PRIME_1 + XXH_PRIME_4; + + v4 *= XXH_PRIME_2; + v4 = XXH_rotl64(v4, 31); + v4 *= XXH_PRIME_1; + h64 ^= v4; + h64 = h64 * XXH_PRIME_1 + XXH_PRIME_4; + } + else { + h64 = seed + XXH_PRIME_5; + } + + h64 += (uint64_t)len; + + while (p + 8 <= end) { + uint64_t k1 = XXH_read64(p); + k1 *= XXH_PRIME_2; + k1 = XXH_rotl64(k1, 31); + k1 *= XXH_PRIME_1; + h64 ^= k1; + h64 = XXH_rotl64(h64, 27) * XXH_PRIME_1 + XXH_PRIME_4; + p += 8; + } + + if (p + 4 <= end) { + h64 ^= (uint64_t)(XXH_read32(p)) * XXH_PRIME_1; + h64 = XXH_rotl64(h64, 23) * XXH_PRIME_2 + XXH_PRIME_3; + p += 4; + } + + while (p < end) { + h64 ^= (*p) * XXH_PRIME_5; + h64 = XXH_rotl64(h64, 11) * XXH_PRIME_1; + p++; + } + + h64 ^= h64 >> 33; + h64 *= XXH_PRIME_2; + h64 ^= h64 >> 29; + h64 *= XXH_PRIME_3; + h64 ^= h64 >> 32; + + return h64; +} + +// hashmap_sip returns a hash value for `data` using SipHash-2-4. +uint64_t hashmap_sip(const void *data, size_t len, uint64_t seed0, + uint64_t seed1) +{ + return SIP64((uint8_t*)data, len, seed0, seed1); +} + +// hashmap_murmur returns a hash value for `data` using Murmur3_86_128. +uint64_t hashmap_murmur(const void *data, size_t len, uint64_t seed0, + uint64_t seed1) +{ + (void)seed1; + return MM86128(data, len, seed0); +} + +uint64_t hashmap_xxhash3(const void *data, size_t len, uint64_t seed0, + uint64_t seed1) +{ + (void)seed1; + return xxh3(data, len ,seed0); +} + +//============================================================================== +// TESTS AND BENCHMARKS +// $ cc -DHASHMAP_TEST hashmap.c && ./a.out # run tests +// $ cc -DHASHMAP_TEST -O3 hashmap.c && BENCH=1 ./a.out # run benchmarks +//============================================================================== +#ifdef HASHMAP_TEST + +static size_t deepcount(struct hashmap *map) { + size_t count = 0; + for (size_t i = 0; i < map->nbuckets; i++) { + if (bucket_at(map, i)->dib) { + count++; + } + } + return count; +} + +#ifdef __GNUC__ +#pragma GCC diagnostic ignored "-Wpedantic" +#endif +#ifdef __clang__ +#pragma GCC diagnostic ignored "-Wunknown-warning-option" +#pragma GCC diagnostic ignored "-Wcompound-token-split-by-macro" +#pragma GCC diagnostic ignored "-Wgnu-statement-expression-from-macro-expansion" +#endif +#ifdef __GNUC__ +#pragma GCC diagnostic ignored "-Wunused-parameter" +#endif + +#include +#include +#include +#include +#include +#include "hashmap.h" + +static bool rand_alloc_fail = false; +static int rand_alloc_fail_odds = 3; // 1 in 3 chance malloc will fail. +static uintptr_t total_allocs = 0; +static uintptr_t total_mem = 0; + +static void *xmalloc(size_t size) { + if (rand_alloc_fail && rand()%rand_alloc_fail_odds == 0) { + return NULL; + } + void *mem = malloc(sizeof(uintptr_t)+size); + assert(mem); + *(uintptr_t*)mem = size; + total_allocs++; + total_mem += size; + return (char*)mem+sizeof(uintptr_t); +} + +static void xfree(void *ptr) { + if (ptr) { + total_mem -= *(uintptr_t*)((char*)ptr-sizeof(uintptr_t)); + free((char*)ptr-sizeof(uintptr_t)); + total_allocs--; + } +} + +static void shuffle(void *array, size_t numels, size_t elsize) { + char tmp[elsize]; + char *arr = array; + for (size_t i = 0; i < numels - 1; i++) { + int j = i + rand() / (RAND_MAX / (numels - i) + 1); + memcpy(tmp, arr + j * elsize, elsize); + memcpy(arr + j * elsize, arr + i * elsize, elsize); + memcpy(arr + i * elsize, tmp, elsize); + } +} + +static bool iter_ints(const void *item, void *udata) { + int *vals = *(int**)udata; + vals[*(int*)item] = 1; + return true; +} + +static int compare_ints_udata(const void *a, const void *b, void *udata) { + return *(int*)a - *(int*)b; +} + +static int compare_strs(const void *a, const void *b, void *udata) { + return strcmp(*(char**)a, *(char**)b); +} + +static uint64_t hash_int(const void *item, uint64_t seed0, uint64_t seed1) { + return hashmap_xxhash3(item, sizeof(int), seed0, seed1); + // return hashmap_sip(item, sizeof(int), seed0, seed1); + // return hashmap_murmur(item, sizeof(int), seed0, seed1); +} + +static uint64_t hash_str(const void *item, uint64_t seed0, uint64_t seed1) { + return hashmap_xxhash3(*(char**)item, strlen(*(char**)item), seed0, seed1); + // return hashmap_sip(*(char**)item, strlen(*(char**)item), seed0, seed1); + // return hashmap_murmur(*(char**)item, strlen(*(char**)item), seed0, seed1); +} + +static void free_str(void *item) { + xfree(*(char**)item); +} + +static void all(void) { + int seed = getenv("SEED")?atoi(getenv("SEED")):time(NULL); + int N = getenv("N")?atoi(getenv("N")):2000; + printf("seed=%d, count=%d, item_size=%zu\n", seed, N, sizeof(int)); + srand(seed); + + rand_alloc_fail = true; + + // test sip and murmur hashes + assert(hashmap_sip("hello", 5, 1, 2) == 2957200328589801622); + assert(hashmap_murmur("hello", 5, 1, 2) == 1682575153221130884); + assert(hashmap_xxhash3("hello", 5, 1, 2) == 2584346877953614258); + + int *vals; + while (!(vals = xmalloc(N * sizeof(int)))) {} + for (int i = 0; i < N; i++) { + vals[i] = i; + } + + struct hashmap *map; + + while (!(map = hashmap_new(sizeof(int), 0, seed, seed, + hash_int, compare_ints_udata, NULL, NULL))) {} + shuffle(vals, N, sizeof(int)); + for (int i = 0; i < N; i++) { + // // printf("== %d ==\n", vals[i]); + assert(map->count == (size_t)i); + assert(map->count == hashmap_count(map)); + assert(map->count == deepcount(map)); + const int *v; + assert(!hashmap_get(map, &vals[i])); + assert(!hashmap_delete(map, &vals[i])); + while (true) { + assert(!hashmap_set(map, &vals[i])); + if (!hashmap_oom(map)) { + break; + } + } + + for (int j = 0; j < i; j++) { + v = hashmap_get(map, &vals[j]); + assert(v && *v == vals[j]); + } + while (true) { + v = hashmap_set(map, &vals[i]); + if (!v) { + assert(hashmap_oom(map)); + continue; + } else { + assert(!hashmap_oom(map)); + assert(v && *v == vals[i]); + break; + } + } + v = hashmap_get(map, &vals[i]); + assert(v && *v == vals[i]); + v = hashmap_delete(map, &vals[i]); + assert(v && *v == vals[i]); + assert(!hashmap_get(map, &vals[i])); + assert(!hashmap_delete(map, &vals[i])); + assert(!hashmap_set(map, &vals[i])); + assert(map->count == (size_t)(i+1)); + assert(map->count == hashmap_count(map)); + assert(map->count == deepcount(map)); + } + + int *vals2; + while (!(vals2 = xmalloc(N * sizeof(int)))) {} + memset(vals2, 0, N * sizeof(int)); + assert(hashmap_scan(map, iter_ints, &vals2)); + + // Test hashmap_iter. This does the same as hashmap_scan above. + size_t iter = 0; + void *iter_val; + while (hashmap_iter (map, &iter, &iter_val)) { + assert (iter_ints(iter_val, &vals2)); + } + for (int i = 0; i < N; i++) { + assert(vals2[i] == 1); + } + xfree(vals2); + + shuffle(vals, N, sizeof(int)); + for (int i = 0; i < N; i++) { + const int *v; + v = hashmap_delete(map, &vals[i]); + assert(v && *v == vals[i]); + assert(!hashmap_get(map, &vals[i])); + assert(map->count == (size_t)(N-i-1)); + assert(map->count == hashmap_count(map)); + assert(map->count == deepcount(map)); + for (int j = N-1; j > i; j--) { + v = hashmap_get(map, &vals[j]); + assert(v && *v == vals[j]); + } + } + + for (int i = 0; i < N; i++) { + while (true) { + assert(!hashmap_set(map, &vals[i])); + if (!hashmap_oom(map)) { + break; + } + } + } + + assert(map->count != 0); + size_t prev_cap = map->cap; + hashmap_clear(map, true); + assert(prev_cap < map->cap); + assert(map->count == 0); + + + for (int i = 0; i < N; i++) { + while (true) { + assert(!hashmap_set(map, &vals[i])); + if (!hashmap_oom(map)) { + break; + } + } + } + + prev_cap = map->cap; + hashmap_clear(map, false); + assert(prev_cap == map->cap); + + hashmap_free(map); + + xfree(vals); + + + while (!(map = hashmap_new(sizeof(char*), 0, seed, seed, + hash_str, compare_strs, free_str, NULL))); + + for (int i = 0; i < N; i++) { + char *str; + while (!(str = xmalloc(16))); + snprintf(str, 16, "s%i", i); + while(!hashmap_set(map, &str)); + } + + hashmap_clear(map, false); + assert(hashmap_count(map) == 0); + + for (int i = 0; i < N; i++) { + char *str; + while (!(str = xmalloc(16))); + snprintf(str, 16, "s%i", i); + while(!hashmap_set(map, &str)); + } + + hashmap_free(map); + + if (total_allocs != 0) { + fprintf(stderr, "total_allocs: expected 0, got %lu\n", total_allocs); + exit(1); + } +} + +#define bench(name, N, code) {{ \ + if (strlen(name) > 0) { \ + printf("%-14s ", name); \ + } \ + size_t tmem = total_mem; \ + size_t tallocs = total_allocs; \ + uint64_t bytes = 0; \ + clock_t begin = clock(); \ + for (int i = 0; i < N; i++) { \ + (code); \ + } \ + clock_t end = clock(); \ + double elapsed_secs = (double)(end - begin) / CLOCKS_PER_SEC; \ + double bytes_sec = (double)bytes/elapsed_secs; \ + printf("%d ops in %.3f secs, %.0f ns/op, %.0f op/sec", \ + N, elapsed_secs, \ + elapsed_secs/(double)N*1e9, \ + (double)N/elapsed_secs \ + ); \ + if (bytes > 0) { \ + printf(", %.1f GB/sec", bytes_sec/1024/1024/1024); \ + } \ + if (total_mem > tmem) { \ + size_t used_mem = total_mem-tmem; \ + printf(", %.2f bytes/op", (double)used_mem/N); \ + } \ + if (total_allocs > tallocs) { \ + size_t used_allocs = total_allocs-tallocs; \ + printf(", %.2f allocs/op", (double)used_allocs/N); \ + } \ + printf("\n"); \ +}} + +static void benchmarks(void) { + int seed = getenv("SEED")?atoi(getenv("SEED")):time(NULL); + int N = getenv("N")?atoi(getenv("N")):5000000; + printf("seed=%d, count=%d, item_size=%zu\n", seed, N, sizeof(int)); + srand(seed); + + + int *vals = xmalloc(N * sizeof(int)); + for (int i = 0; i < N; i++) { + vals[i] = i; + } + + shuffle(vals, N, sizeof(int)); + + struct hashmap *map; + shuffle(vals, N, sizeof(int)); + + map = hashmap_new(sizeof(int), 0, seed, seed, hash_int, compare_ints_udata, + NULL, NULL); + bench("set", N, { + const int *v = hashmap_set(map, &vals[i]); + assert(!v); + }) + shuffle(vals, N, sizeof(int)); + bench("get", N, { + const int *v = hashmap_get(map, &vals[i]); + assert(v && *v == vals[i]); + }) + shuffle(vals, N, sizeof(int)); + bench("delete", N, { + const int *v = hashmap_delete(map, &vals[i]); + assert(v && *v == vals[i]); + }) + hashmap_free(map); + + map = hashmap_new(sizeof(int), N, seed, seed, hash_int, compare_ints_udata, + NULL, NULL); + bench("set (cap)", N, { + const int *v = hashmap_set(map, &vals[i]); + assert(!v); + }) + shuffle(vals, N, sizeof(int)); + bench("get (cap)", N, { + const int *v = hashmap_get(map, &vals[i]); + assert(v && *v == vals[i]); + }) + shuffle(vals, N, sizeof(int)); + bench("delete (cap)" , N, { + const int *v = hashmap_delete(map, &vals[i]); + assert(v && *v == vals[i]); + }) + + hashmap_free(map); + + + xfree(vals); + + if (total_allocs != 0) { + fprintf(stderr, "total_allocs: expected 0, got %lu\n", total_allocs); + exit(1); + } +} + +int main(void) { + hashmap_set_allocator(xmalloc, xfree); + + if (getenv("BENCH")) { + printf("Running hashmap.c benchmarks...\n"); + benchmarks(); + } else { + printf("Running hashmap.c tests...\n"); + all(); + printf("PASSED\n"); + } +} + + +#endif + + diff --git a/src/hashmap.h b/src/hashmap.h new file mode 100644 index 00000000..3ae8b519 --- /dev/null +++ b/src/hashmap.h @@ -0,0 +1,50 @@ +#ifndef HASHMAP_H +#define HASHMAP_H + +#include +#include +#include + +struct hashmap; + +struct hashmap *hashmap_new(size_t elsize, size_t cap, uint64_t seed0, + uint64_t seed1, + uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1), + int (*compare)(const void *a, const void *b, void *udata), + void (*elfree)(void *item), + void *udata); + +struct hashmap *hashmap_new_with_allocator(void *(*malloc)(size_t), + void *(*realloc)(void *, size_t), void (*free)(void*), size_t elsize, + size_t cap, uint64_t seed0, uint64_t seed1, + uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1), + int (*compare)(const void *a, const void *b, void *udata), + void (*elfree)(void *item), + void *udata); + +void hashmap_free(struct hashmap *map); +void hashmap_clear(struct hashmap *map, bool update_cap); +size_t hashmap_count(struct hashmap *map); +bool hashmap_oom(struct hashmap *map); +const void *hashmap_get(struct hashmap *map, const void *item); +const void *hashmap_set(struct hashmap *map, const void *item); +const void *hashmap_delete(struct hashmap *map, const void *item); +const void *hashmap_probe(struct hashmap *map, uint64_t position); +bool hashmap_scan(struct hashmap *map, bool (*iter)(const void *item, void *udata), void *udata); +bool hashmap_iter(struct hashmap *map, size_t *i, void **item); + +uint64_t hashmap_sip(const void *data, size_t len, uint64_t seed0, uint64_t seed1); +uint64_t hashmap_murmur(const void *data, size_t len, uint64_t seed0, uint64_t seed1); +uint64_t hashmap_xxhash3(const void *data, size_t len, uint64_t seed0, uint64_t seed1); + +const void *hashmap_get_with_hash(struct hashmap *map, const void *key, uint64_t hash); +const void *hashmap_delete_with_hash(struct hashmap *map, const void *key, uint64_t hash); +const void *hashmap_set_with_hash(struct hashmap *map, const void *item, uint64_t hash); +void hashmap_set_grow_by_power(struct hashmap *map, size_t power); +void hashmap_set_load_factor(struct hashmap *map, double load_factor); + + +// DEPRECATED: use `hashmap_new_with_allocator` +void hashmap_set_allocator(void *(*malloc)(size_t), void (*free)(void*)); + +#endif diff --git a/src/main.c b/src/main.c index 9bec4dd3..235c188b 100644 --- a/src/main.c +++ b/src/main.c @@ -317,6 +317,30 @@ int main(int argc, char **argv) initialize_shader_paths(); load_snippets_from_directory(); + // Define hash seeds (these could be randomly generated for more robustness) + uint64_t seed0 = 0x12345678; + uint64_t seed1 = 0x9ABCDEF0; + + // Allocate and initialize the commands hashmap + editor.commands = hashmap_new( + sizeof(Command), // Size of each element + 16, // Initial capacity + seed0, seed1, // Hash seeds + simple_string_hash, // Hash function + command_compare, // Compare function (you need to define this based on your Command struct) + NULL, // Element free function (NULL if not needed) + NULL // User data for compare function (NULL if not needed) + ); + + if (!editor.commands) { + // Handle allocation failure + fprintf(stderr, "Failed to initialize command map\n"); + return -1; + } + + initialize_commands(editor.commands); + + Errno err; FT_Library library = {0}; @@ -795,7 +819,18 @@ int main(int argc, char **argv) } } break; - + case SDLK_d: + if (event.key.keysym.mod & KMOD_SHIFT) { + emacs_kill_line(&editor); + } else if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else { + emacs_kill_line(&editor); + } + break; + case SDLK_c: if (event.key.keysym.mod & KMOD_SHIFT) { evil_change_line(&editor); @@ -822,6 +857,12 @@ int main(int argc, char **argv) minibufferHeight -= 189; minibuffering = false; } + + if (editor.minibuffer_active) { + M_x_active = false; + editor.minibuffer_active = false; + } + editor_clear_mark(&editor); editor_stop_search(&editor); editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); @@ -1053,6 +1094,7 @@ int main(int argc, char **argv) } } break; + case SDLK_i: if (SDL_GetModState() & KMOD_CTRL) { showIndentationLines = !showIndentationLines; @@ -1062,22 +1104,36 @@ int main(int argc, char **argv) } else { add_one_indentation(&editor); } - } - else { - current_mode = INSERT; + } else { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_insert_line(&editor); + } else { + current_mode = INSERT; + } + if (superDrammtic){ isAnimated = true; } + + // This section is executed for both Shift and no modifier editor.last_stroke = SDL_GetTicks(); - // Eat up the next SDL_TEXTINPUT event for 'i' - SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'i' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'i') { - SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue + // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not } - } + } break; + + + + + + + case SDLK_v: { if (SDL_GetModState() & KMOD_SHIFT) { current_mode = VISUAL_LINE; @@ -1124,23 +1180,37 @@ int main(int argc, char **argv) } break; - case SDLK_x: - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else if (event.key.keysym.mod & KMOD_ALT) { - if (!minibuffering) { - minibufferHeight += 189; - minibuffering = true; + case SDLK_x: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_ALT) { + if (!M_x_active) { + current_mode = INSERT; + M_x_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for 'x' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'x') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + + // TODO ivy + /* if (!minibuffering) { */ + /* minibufferHeight += 189; */ + /* minibuffering = true; */ + /* } */ + } else if (event.key.keysym.mod & KMOD_SHIFT) { + evil_delete_backward_char(&editor); + } else { + editor_clipboard_copy(&editor); + evil_delete_char(&editor); } - } else if (event.key.keysym.mod & KMOD_SHIFT) { - evil_delete_backward_char(&editor); - } else { - editor_clipboard_copy(&editor); - evil_delete_char(&editor); - } - break; + break; case SDLK_0: editor_move_to_line_begin(&editor); @@ -1295,8 +1365,6 @@ int main(int argc, char **argv) editor_clipboard_copy(&editor); editor_delete_selection(&editor); editor.selection = false; - current_mode = NORMAL; - } break; @@ -1548,7 +1616,15 @@ int main(int argc, char **argv) if (editor.searching) { editor_stop_search_and_mark(&editor); current_mode = NORMAL; - } else { + } else if (editor.minibuffer_active) { + sb_append_null(&editor.minibuffer_text); // null termination + execute_command(editor.commands, &editor, editor.minibuffer_text.items); + editor.minibuffer_text.count = 0; + editor.minibuffer_active = false; + M_x_active = false; + current_mode = NORMAL; + } + else { size_t row = editor_cursor_row(&editor); size_t line_end = editor.lines.items[row].end; @@ -1603,9 +1679,17 @@ int main(int argc, char **argv) if (superDrammtic){ isAnimated = false; } + + if (editor.searching) { + editor_clear_mark(&editor); + editor_stop_search(&editor); + } else if (editor.minibuffer_active) { + editor.minibuffer_text.count = 0; + M_x_active = false; + editor.minibuffer_active = false; + } + current_mode = NORMAL; - editor_clear_mark(&editor); - editor_stop_search(&editor); editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); } break; @@ -1846,6 +1930,7 @@ int main(int argc, char **argv) } else { editor_render(window, &atlas, &sr, &editor); render_search_text(&atlas, &sr, &editor); + render_M_x(&atlas, &sr, &editor); } SDL_GL_SwapWindow(window); diff --git a/src/render.c b/src/render.c index b15e5d08..be232194 100644 --- a/src/render.c +++ b/src/render.c @@ -7,21 +7,74 @@ float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; -// TODO cursor // TODO sub-pixel rendering -void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor) { +void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { if (editor->searching) { - Vec4f color = CURRENT_THEME.text; + Vec4f cursorColor = CURRENT_THEME.cursor; + Vec4f textColor = CURRENT_THEME.text; Vec2f searchPos = {30.0f, 20.0f}; + float minibufferCursorOffsett = 5.0f; + // Render the search text simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); - free_glyph_atlas_render_line_sized(minibuffer_atlas, sr, editor->search.items, editor->search.count, &searchPos, color); + free_glyph_atlas_render_line_sized(atlas, sr, editor->search.items, editor->search.count, &searchPos, textColor); + // Set cursor position at the start of the text (we already used those we can change them) + searchPos.y = 0.0f; + searchPos.x += minibufferCursorOffsett; + Vec2f cursorPos = searchPos; + + // Set cursor size + float cursor_width = measure_whitespace_width(atlas); + Vec2f cursorSize = {cursor_width, 21.0f * 4.0f}; // 21 is the minibufferHeight + + // Render the cursor + simple_renderer_flush(sr); + simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, cursorPos, cursorSize, cursorColor); + + // Flush the renderer simple_renderer_flush(sr); } } +void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { + if (editor->minibuffer_active) { + Vec4f cursorColor = CURRENT_THEME.cursor; + Vec4f textColor = CURRENT_THEME.text; + Vec2f searchPos = {30.0f, 20.0f}; + float minibufferCursorOffsett = 5.0f; + + // Render the search text + simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); + free_glyph_atlas_render_line_sized(atlas, sr, editor->minibuffer_text.items, editor->minibuffer_text.count, &searchPos, textColor); + + // Set cursor position at the start of the text (we already used those we can change them) + searchPos.y = 0.0f; + searchPos.x += minibufferCursorOffsett; + Vec2f cursorPos = searchPos; + + // Set cursor size + float cursor_width = measure_whitespace_width(atlas); + Vec2f cursorSize = {cursor_width, 21.0f * 4.0f}; // 21 is the minibufferHeight + + // Render the cursor + simple_renderer_flush(sr); + simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, cursorPos, cursorSize, cursorColor); + + // Flush the renderer + simple_renderer_flush(sr); + } +} + + + + + + +// SQAURES /* void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { */ /* if (showWhitespaces) { */ /* if (isWave) { */ @@ -390,12 +443,20 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); } - // Determine the current line number using the provided function size_t currentLineNumber = editor_cursor_row(editor); // Different colors for line numbers Vec4f defaultColor = CURRENT_THEME.line_numbers; - Vec4f currentLineColor = CURRENT_THEME.current_line_number; + Vec4f currentLineColor; + if (highlightCurrentLineNumberOnInsertMode){ + if (current_mode == INSERT) { + currentLineColor = CURRENT_THEME.insert_cursor; + } else { + currentLineColor = CURRENT_THEME.current_line_number; + } + } else { + currentLineColor = CURRENT_THEME.current_line_number; + } for (size_t i = 0; i < editor->lines.count; ++i) { char lineNumberStr[10]; @@ -710,11 +771,9 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer render_whitespaces(atlas, sr, editor); // Render cursor - if(editor->searching){ - simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); - }else if (isWave){ + if (isWave) { simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - }else{ + } else { simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); } @@ -801,7 +860,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer CURSOR_WIDTH = whitespace_width; } } else { - CURSOR_WIDTH = 5.0f; // Thin vertical line for INSERT mode + CURSOR_WIDTH = 5.0f; // Thin line } // blinking for INSERT mode if (t < CURSOR_BLINK_THRESHOLD || diff --git a/src/render.h b/src/render.h index a3a6c2c5..7fa2842d 100644 --- a/src/render.h +++ b/src/render.h @@ -8,6 +8,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor); +void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); #endif // RENDER_H diff --git a/todo.org b/todo.org index 447ea3b0..3cd4cc3f 100644 --- a/todo.org +++ b/todo.org @@ -20,9 +20,6 @@ make the text disappear [] (bad when going up) [] ** Shaders use shaders from =~/.config/ded/shaders= instead [x] -** Bugs -opening a file with ded file.c that contain a -function definition, trow a [1] 35755 segmentation fault (core dumped) ** Lexer chech for strings in arrays [] '' [] @@ -39,23 +36,37 @@ also check if the file exist before opening it [] render circles (for whitespaces) [] line under links (and clickable things)[] +** Addresses + showIndentationLines = 5555555792d2 i8 + currentThemeIndex = 555559015340 + ** Evil -shift + i [] evil-find-char-backward [] evil-search-backward [] -evil-change-line(smarter version, don't delete ";") [] splits(maybe) [] 5k should work [] +shift + i [x] +evil-change-line(smarter version, don't delete ";") [x] evil-delete-backward-char [x] evil-search-word-forward (shift + 8) [x] shift + 5 [x] -** Addresses - showIndentationLines = 5555555792d2 i8 - currentThemeIndex = 555559015340 +** Bugs +opening a file with ded file.c that contain a +function definition, trow a [1] 35755 segmentation fault (core dumped) + +activate_snippet on "if" take two times to activate +also editor_backspace take 3 times to delete [] ** Editor -find_first_non_whitespace(and refactor) [] +if superDramatic change update camera to be more usable [] + +switch true to false or false to true in editor_enter [] + +measure_whitespace_width only once on font switch rather +than 4 times every frame [] + +find_first_non_whitespace(and refactor) [/] select_function [] org mode [] md mode rendered as you type [] From 6d5732c6695cae4e53d75a019774c025820a8e0a Mon Sep 17 00:00:00 2001 From: laluxx Date: Fri, 19 Jan 2024 19:03:35 +0100 Subject: [PATCH 59/74] Variable documentation --- src/editor.c | 409 +++++++++++++++++++++++++++++++++++++----- src/editor.h | 46 ++++- src/emacs.c | 3 +- src/evil.c | 2 + src/file_browser.c | 2 +- src/free_glyph.c | 20 ++- src/free_glyph.h | 4 + src/lexer.c | 44 +++++ src/lexer.h | 1 + src/main.c | 341 +++++++++++------------------------ src/render.c | 188 +++++++++++-------- src/render.h | 5 +- src/simple_renderer.c | 4 +- src/theme.c | 83 ++++++++- src/theme.h | 1 + src/yasnippet.c | 2 +- test | 3 + todo.org | 29 +-- 18 files changed, 789 insertions(+), 398 deletions(-) create mode 100644 test diff --git a/src/editor.c b/src/editor.c index b68af940..7394dca9 100644 --- a/src/editor.c +++ b/src/editor.c @@ -15,12 +15,14 @@ #include "evil.h" + +bool quit = false; EvilMode current_mode = NORMAL; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; float max_zoom_factor = 50.0; -bool isAnimated = true; +bool followCursor = true; bool isWave = false; size_t indentation = 4; @@ -34,6 +36,7 @@ bool matchParenthesis = true; bool hl_line = false; bool superDrammtic = false; +bool instantCamera = false; bool showIndentationLines = true; bool showMinibuffer = true; @@ -41,8 +44,9 @@ bool showModeline = true; float minibufferHeight = 21.0f; float modelineHeight = 35.0f; float modelineAccentWidth = 5.0f; -bool minibuffering = false; +bool ivy = false; bool M_x_active = false; +bool evil_command_active = false; bool BlockInsertCurosr = true; @@ -401,6 +405,7 @@ void editor_insert_buf(Editor *e, char *buf, size_t buf_len) memcpy(&e->data.items[e->cursor], buf, buf_len); e->cursor += buf_len; editor_retokenize(e); + /* printf("%.*s", (int)buf_len, buf); */ } } @@ -717,54 +722,53 @@ void editor_enter(Editor *e) { editor_stop_search_and_mark(e); current_mode = NORMAL; return; - } /* else if (M_x_active && e->minibuffer_active) { */ - /* // Execute the command in the minibuffer */ - /* execute_command(e->commands, e, e->minibuffer_text.items); */ - /* e->minibuffer_text.count = 0; */ - /* e->minibuffer_active = false; */ - /* M_x_active = false; */ - /* current_mode = NORMAL; */ - /* } */ - - size_t row = editor_cursor_row(e); - size_t line_end = e->lines.items[row].end; - - editor_insert_char(e, '\n'); - size_t line_begin = e->lines.items[row].begin; - bool inside_braces = false; - - // Check if the line contains an opening brace '{' - for (size_t i = line_begin; i < line_end; ++i) { - char c = e->data.items[i]; - if (c == '{') { - inside_braces = true; - break; + } else if (M_x_active || evil_command_active && e->minibuffer_active) { + sb_append_null(&e->minibuffer_text); // null termination + execute_command(e->commands, e, e->minibuffer_text.items); + e->minibuffer_text.count = 0; + e->minibuffer_active = false; + M_x_active = false; + current_mode = NORMAL; + } else { + size_t row = editor_cursor_row(e); + size_t line_end = e->lines.items[row].end; + + editor_insert_char(e, '\n'); + size_t line_begin = e->lines.items[row].begin; + bool inside_braces = false; + + // Check if the line contains an opening brace '{' + for (size_t i = line_begin; i < line_end; ++i) { + char c = e->data.items[i]; + if (c == '{') { + inside_braces = true; + break; + } } - } - - // Insert the same whitespace character - for (size_t i = line_begin; i < line_end; ++i) { - char c = e->data.items[i]; - if (c == ' ' || c == '\t') { - editor_insert_char(e, c); - } else { - break; + + // Insert the same whitespace character + for (size_t i = line_begin; i < line_end; ++i) { + char c = e->data.items[i]; + if (c == ' ' || c == '\t') { + editor_insert_char(e, c); + } else { + break; + } } - } - - // If inside braces, perform additional steps - if (inside_braces) { - editor_move_line_up(e); - editor_move_to_line_end(e); - editor_insert_char(e, '\n'); - - // Add indentation - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(e, ' '); + + // If inside braces, perform additional steps + if (inside_braces) { + editor_move_line_up(e); + editor_move_to_line_end(e); + editor_insert_char(e, '\n'); + + // Add indentation + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(e, ' '); + } } + e->last_stroke = SDL_GetTicks(); } - - e->last_stroke = SDL_GetTicks(); } @@ -1072,6 +1076,145 @@ size_t find_first_non_whitespace(const char* items, size_t begin, size_t end) { +// TODO tomove +bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length) { + size_t start = cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + size_t end = start; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + size_t length = end - start; + if (length < max_length) { + strncpy(line, &editor->data.items[start], length); + line[length] = '\0'; + return true; + } + + return false; +} + +bool extractLocalIncludePath(Editor *editor, char *includePath) { + char line[512]; // Adjust size as needed + if (!extractLine(editor, editor->cursor, line, sizeof(line))) { + return false; + } + + if (strncmp(line, "#include \"", 10) == 0) { + char *start = strchr(line, '\"') + 1; + char *end = strrchr(line, '\"'); + if (start && end && start < end) { + size_t length = end - start; + strncpy(includePath, start, length); + includePath[length] = '\0'; + return true; + } + } + + return false; +} + +void getDirectoryFromFilePath(const char *filePath, char *directory) { + strcpy(directory, filePath); + char *lastSlash = strrchr(directory, '/'); + if (lastSlash != NULL) { + *lastSlash = '\0'; // Null-terminate at the last slash + } else { + // Handle the case where there is no slash in the path + strcpy(directory, "."); + } +} + +Errno openLocalIncludeFile(Editor *editor, const char *includePath) { + char fullPath[512]; // Buffer for the full path + char directory[256]; // Buffer for the directory + + // Get the directory of the current file + getDirectoryFromFilePath(editor->file_path.items, directory); + + // Construct the full path + snprintf(fullPath, sizeof(fullPath), "%s/%s", directory, includePath); + + // Load the file using the full path + Errno load_err = editor_load_from_file(editor, fullPath); + if (load_err != 0) { + fprintf(stderr, "Error loading file %s: %s\n", fullPath, strerror(load_err)); + return load_err; + } + + printf("Opened file: %s\n", fullPath); + return 0; +} + +bool extractGlobalIncludePath(Editor *editor, char *includePath) { + char line[512]; + if (!extractLine(editor, editor->cursor, line, sizeof(line))) { + return false; + } + + if (strncmp(line, "#include <", 10) == 0) { + char *start = strchr(line, '<') + 1; + char *end = strrchr(line, '>'); + if (start && end && start < end) { + size_t length = end - start; + strncpy(includePath, start, length); + includePath[length] = '\0'; + return true; + } + } + + return false; +} + +#include "unistd.h" // for F_OK +Errno openGlobalIncludeFile(Editor *editor, const char *includePath) { + char fullPath[512]; // Buffer for the full path + + // List of standard directories (expandable) + const char *standardDirs[] = {"/usr/include", NULL}; // NULL terminated array + + for (int i = 0; standardDirs[i] != NULL; i++) { + snprintf(fullPath, sizeof(fullPath), "%s/%s", standardDirs[i], includePath); + + // Check if the file exists and is accessible + if (access(fullPath, F_OK) != -1) { + // Try to load the file using the constructed full path + Errno load_err = editor_load_from_file(editor, fullPath); + if (load_err == 0) { + printf("Opened file: %s\n", fullPath); + return 0; // File opened successfully + } + } + } + + // Print the error message only if the file is not found in /usr/include + fprintf(stderr, "Error: File %s not found in /usr/include\n", includePath); + return -1; // File not found in /usr/include +} + +void editor_open_include(Editor *editor) { + char includePath[256]; + + if (extractLocalIncludePath(editor, includePath)) { + openLocalIncludeFile(editor, includePath); + } else if (extractGlobalIncludePath(editor, includePath)) { + openGlobalIncludeFile(editor, includePath); + } +} + + + + + + + + + + // CLANG FORMAT TODO #include @@ -1084,7 +1227,7 @@ int is_clang_format_installed() { void clang_format(const char *filename, const char *arguments) { if (!is_clang_format_installed()) { - printf("clang-format is not installed.\n"); + printf("bruh clang-format is not installed.\n"); return; } @@ -1183,6 +1326,60 @@ void select_region_from_brace(Editor *editor) { // TODO select_function +bool toggle_bool(Editor *editor) { + char word[256]; + if (!extract_word_under_cursor(editor, word)) { + return false; + } + + const char *replacement = NULL; + int difference = 0; + if (strcmp(word, "true") == 0) { + replacement = "false"; + difference = 1; // "false" is 1 character longer than "true" + } else if (strcmp(word, "false") == 0) { + replacement = "true"; + difference = -1; // "true" is 1 character shorter than "false" + } else { + return false; + } + + // Find the start position of the word + size_t word_start = editor->cursor; + while (word_start > 0 && isalnum(editor->data.items[word_start - 1])) { + word_start--; + } + + // Shift the buffer contents if necessary + if (difference != 0) { + memmove(&editor->data.items[word_start + strlen(replacement)], + &editor->data.items[word_start + strlen(word)], + editor->data.count - word_start - strlen(word)); + editor->data.count += difference; + } + + // Replace the word directly in the buffer + memcpy(&editor->data.items[word_start], replacement, strlen(replacement)); + + editor_retokenize(editor); + return true; // Successfully toggled +} + + +void editor_quit() { + quit = true; +} + + +void editor_save_and_quit(Editor *e) { + editor_save(e); + quit = true; +} + + + + + // M-x @@ -1202,8 +1399,8 @@ void register_command(struct hashmap *command_map, const char *name, void (*exec // TODO open-below && open-above && editor-enter behave weird void initialize_commands(struct hashmap *command_map) { - register_command(command_map, "open-below", evil_open_below); - register_command(command_map, "open-above", evil_open_above); + register_command(command_map, "open", evil_open_below); + register_command(command_map, "opena", evil_open_above); register_command(command_map, "drag-down", editor_drag_line_down); register_command(command_map, "drag-up", editor_drag_line_up); register_command(command_map, "editor-enter", editor_enter); @@ -1211,6 +1408,11 @@ void initialize_commands(struct hashmap *command_map) { register_command(command_map, "back", emacs_backward_kill_word); register_command(command_map, "evil-join", evil_join); register_command(command_map, "evil-yank-line", evil_yank_line); + register_command(command_map, "open-include", editor_open_include); + register_command(command_map, "toggle", toggle_bool); // Wincompatible-function-pointer-types + register_command(command_map, "w", editor_save); + register_command(command_map, "q", editor_quit); + register_command(command_map, "wq", editor_save_and_quit); } void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name) { @@ -1239,3 +1441,112 @@ uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1) { return hash ^ seed1; } + + + + + +// TODO doesn't work +// VARIABLES DOCUMENTATION +struct hashmap *variable_docs_map; + +void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1) { + variable_docs_map = hashmap_new( + sizeof(VariableDoc), // Size of each element + 16, // Initial capacity + seed0, seed1, // Hash seeds + variable_doc_hash, // Hash function + variable_doc_compare,// Compare function + NULL, // Element free function (NULL if not needed) + NULL // User data for compare function (NULL if not needed) + ); + + if (!variable_docs_map) { + // Handle hashmap initialization failure + fprintf(stderr, "Failed to initialize variable documentation map\n"); + } +} + + +bool document_variable(const char *name, const char *type, const char *description) { + // Check if the variable is already documented using the variable name as the key + if (hashmap_get(variable_docs_map, name) != NULL) { + // Variable already documented + return false; + } + + VariableDoc *doc = malloc(sizeof(VariableDoc)); + if (!doc) { + // Memory allocation failure + return false; + } + + // Duplicate the strings to ensure they are properly managed + doc->var_name = strdup(name); + doc->var_type = strdup(type); + doc->description = strdup(description); + + // Insert the new documentation into the map + // The hashmap_set function calculates the hash internally + if (hashmap_set(variable_docs_map, doc) == NULL) { + // Successfully documented the variable or replaced an existing one + return true; + } else { + // Cleanup in case of failure + free(doc->var_name); + free(doc->var_type); + free(doc->description); + free(doc); + return false; + } +} + + + +// TODO type checking +void initialize_variable_documentation() { + // Define hash seeds + uint64_t seed0 = 0x12345678; + uint64_t seed1 = 0x9ABCDEF0; + + // Initialize the hashmap with seeds + initialize_variable_docs_map(seed0, seed1); + + // Document variables + document_variable("zoom_factor", "float", "Controls the zoom level of the editor view."); + document_variable("showLineNumbers", "bool", "Determines whether line numbers are displayed."); + // Add more variables here... +} + + + +void print_variable_doc(const char *var_name) { + VariableDoc *doc = (VariableDoc *)hashmap_get(variable_docs_map, var_name); + if (doc) { + printf("Variable Name: %s\nType: %s\nDescription: %s\n", doc->var_name, doc->var_type, doc->description); + } else { + printf("No documentation found for variable '%s'.\n", var_name); + } +} + + + +uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1) { + const char *str = item; + uint64_t hash = seed0; + while (*str) { + hash = 31 * hash + (*str++); + } + return hash ^ seed1; +} + + +int variable_doc_compare(const void *a, const void *b, void *udata) { + const VariableDoc *doc = a; + const char *key = b; + return strcmp(doc->var_name, key); +} + + + + diff --git a/src/editor.h b/src/editor.h index e5739975..a757da7a 100644 --- a/src/editor.h +++ b/src/editor.h @@ -12,7 +12,7 @@ #include "hashmap.h" -extern bool isAnimated; +extern bool followCursor; extern size_t indentation; extern float zoom_factor; extern float min_zoom_factor; @@ -33,11 +33,14 @@ extern bool showModeline; extern float minibufferHeight; extern float modelineHeight; extern float modelineAccentWidth; -extern bool minibuffering; //TODO this will be ivy +extern bool ivy; extern bool M_x_active; +extern bool evil_command_active; +extern bool quit; extern bool BlockInsertCurosr; extern bool highlightCurrentLineNumberOnInsertMode; +extern bool instantCamera; typedef struct { size_t begin; @@ -56,12 +59,15 @@ typedef struct { size_t capacity; } Tokens; + +//TODO minibuffer, replace, replace char, helix typedef enum { EMACS, NORMAL, INSERT, VISUAL, VISUAL_LINE, + MINIBUFFER, } EvilMode; extern EvilMode current_mode; @@ -151,20 +157,15 @@ bool editor_search_matches_at(Editor *e, size_t pos); void editor_stop_search_and_mark(Editor *e); void editor_clear_mark(Editor *editor); void move_camera(Simple_Renderer *sr, const char* direction, float amount); - void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); void editor_insert_char_at(Editor *e, char c, size_t pos); - ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); void editor_enter(Editor *e); - void editor_set_anchor(Editor *editor); void editor_goto_anchor_and_clear(Editor *editor); void editor_update_anchor(Editor *editor); - void editor_drag_line_down(Editor *editor); void editor_drag_line_up(Editor *editor); - void add_one_indentation_here(Editor *editor); void add_one_indentation(Editor *editor); void remove_one_indentation(Editor *editor); @@ -172,8 +173,21 @@ void indent(Editor *editor); void select_region_from_brace(Editor *editor); void select_region_from_inside_braces(Editor *editor); +bool extractLocalIncludePath(Editor *editor, char *includePath); +void getDirectoryFromFilePath(const char *filePath, char *directory); +Errno openLocalIncludeFile(Editor *editor, const char *includePath); +bool extractGlobalIncludePath(Editor *editor, char *includePath); +Errno openGlobalIncludeFile(Editor *editor, const char *includePath); +void editor_open_include(Editor *editor); + +bool toggle_bool(Editor *editor); + + +void editor_quit(); +void editor_save_and_quit(Editor *e); // UTILITY +bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length); size_t editor_row_from_pos(const Editor *e, size_t pos); bool extract_word_under_cursor(Editor *editor, char *word); bool editor_is_line_empty(Editor *e, size_t row); @@ -195,4 +209,22 @@ void execute_command(struct hashmap *command_map, Editor *editor, const char *co int command_compare(const void *a, const void *b, void *udata); uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1); + +// Var Documentation + +typedef struct { + const char *var_name; // Name of the variable + const char *var_type; // Type of the variable (e.g., "int", "float", "bool") + const char *description; // Description of the variable +} VariableDoc; + +void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1); +bool document_variable(const char *name, const char *type, const char *description); +void initialize_variable_documentation(); +void print_variable_doc(const char *var_name); +uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1); +int variable_doc_compare(const void *a, const void *b, void *udata); + + + #endif // EDITOR_H_ diff --git a/src/emacs.c b/src/emacs.c index 47ec2e18..f084ade3 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -45,8 +45,9 @@ void emacs_kill_line(Editor *e) { editor_retokenize(e); } +// TODO make this work also on search and minibuffer void emacs_backward_kill_word(Editor *e) { - editor_stop_search(e); // TODO make this work also on search + editor_stop_search(e); size_t start_pos = e->cursor; diff --git a/src/evil.c b/src/evil.c index ad4fb90a..cbe70a81 100644 --- a/src/evil.c +++ b/src/evil.c @@ -85,6 +85,8 @@ void evil_jump_item(Editor *editor) { } // TODO when there is a {} dont add the space +// TODO when animatins are off +// move the cursor to the added whitespace void evil_join(Editor *e) { size_t row = editor_cursor_row(e); if (row >= e->lines.count - 1) return; diff --git a/src/file_browser.c b/src/file_browser.c index 944996b0..0eb7e1b6 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -180,7 +180,7 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl // Update camera { - if (isAnimated) { + if (followCursor) { if (max_line_len > 1000.0f) { max_line_len = 1000.0f; diff --git a/src/free_glyph.c b/src/free_glyph.c index fe2b55b3..9b491655 100644 --- a/src/free_glyph.c +++ b/src/free_glyph.c @@ -95,8 +95,7 @@ float free_glyph_atlas_cursor_pos(const Free_Glyph_Atlas *atlas, const char *tex return pos.x; } -void free_glyph_atlas_measure_line_sized(Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f *pos) -{ +void free_glyph_atlas_measure_line_sized(Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f *pos) { for (size_t i = 0; i < text_size; ++i) { size_t glyph_index = text[i]; // TODO: support for glyphs outside of ASCII range @@ -136,3 +135,20 @@ void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, Simple_Renderer color); } } + + +// ADDED + +float free_glyph_atlas_measure_line_width(Free_Glyph_Atlas *atlas, const char *text, size_t text_size) { + Vec2f pos = {0.0f, 0.0f}; + for (size_t i = 0; i < text_size; ++i) { + size_t glyph_index = text[i]; + // TODO: support for glyphs outside of ASCII range + if (glyph_index >= GLYPH_METRICS_CAPACITY) { + glyph_index = '?'; + } + Glyph_Metric metric = atlas->metrics[glyph_index]; + pos.x += metric.ax; + } + return pos.x; +} diff --git a/src/free_glyph.h b/src/free_glyph.h index cae2246d..efd11e99 100644 --- a/src/free_glyph.h +++ b/src/free_glyph.h @@ -46,4 +46,8 @@ float free_glyph_atlas_cursor_pos(const Free_Glyph_Atlas *atlas, const char *tex void free_glyph_atlas_measure_line_sized(Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f *pos); void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, const char *text, size_t text_size, Vec2f *pos, Vec4f color); +// ADDED + +float free_glyph_atlas_measure_line_width(Free_Glyph_Atlas *atlas, const char *text, size_t text_size); + #endif // FREE_GLYPH_H_ diff --git a/src/lexer.c b/src/lexer.c index 1210b51c..6c3ef6bf 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -428,6 +428,32 @@ Token lexer_next(Lexer *l) return token; } + // single quote + if (l->content[l->cursor] == '\'') { + token.kind = TOKEN_STRING; + lexer_chop_char(l, 1); + while (l->cursor < l->content_len && l->content[l->cursor] != '\'' && l->content[l->cursor] != '\n') { + lexer_chop_char(l, 1); + } + if (l->cursor < l->content_len) { + lexer_chop_char(l, 1); + } + token.text_len = &l->content[l->cursor] - token.text; + return token; + } + + // "NULL" + if ((l->cursor + 3 < l->content_len) && + (strncmp(&l->content[l->cursor], "NULL", 4) == 0) && + ((l->cursor + 4 == l->content_len) || !isalnum(l->content[l->cursor + 4]))) { + + lexer_chop_char(l, 4); // Skip the entire "NULL" token + token.kind = TOKEN_NULL; + token.text_len = 4; + return token; + } + + if (l->content[l->cursor] == '#') { if (l->cursor + 6 < l->content_len && is_hex_digit(l->content[l->cursor + 1]) && is_hex_digit(l->content[l->cursor + 2]) @@ -465,6 +491,24 @@ Token lexer_next(Lexer *l) return token; } + // TODO + // multi-line comments + /* if (lexer_starts_with(l, "/\*")) { */ + /* token.kind = TOKEN_COMMENT; // Assuming you use the same token kind for single and multi-line comments */ + /* lexer_chop_char(l, 2); // Skip the "/\*" */ + + /* while (l->cursor + 1 < l->content_len) { */ + /* if (l->content[l->cursor] == '*' && l->content[l->cursor + 1] == '/') { */ + /* lexer_chop_char(l, 2); // Skip the "*\/" */ + /* break; */ + /* } */ + /* lexer_chop_char(l, 1); */ + /* } */ + + /* token.text_len = &l->content[l->cursor] - token.text; */ + /* return token; */ + /* } */ + // FUNCTION DEFINITION if (l->cursor < l->content_len && is_symbol_start(l->content[l->cursor])) { // Save the start position of the potential function name diff --git a/src/lexer.h b/src/lexer.h index e3b1f517..8edb8260 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -44,6 +44,7 @@ typedef enum { TOKEN_POINTER, TOKEN_TYPE, TOKEN_FUNCTION_DEFINITION, + TOKEN_NULL, } Token_Kind; const char *token_kind_name(Token_Kind kind); diff --git a/src/main.c b/src/main.c index 235c188b..b2bcb7af 100644 --- a/src/main.c +++ b/src/main.c @@ -169,143 +169,6 @@ void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas * free_glyph_atlas_init(atlas, *currentFace); } - - - - -// TODO tomove -bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length) { - size_t start = cursor; - while (start > 0 && editor->data.items[start - 1] != '\n') { - start--; - } - - size_t end = start; - while (end < editor->data.count && editor->data.items[end] != '\n') { - end++; - } - - size_t length = end - start; - if (length < max_length) { - strncpy(line, &editor->data.items[start], length); - line[length] = '\0'; - return true; - } - - return false; -} - -bool extractLocalIncludePath(Editor *editor, char *includePath) { - char line[512]; // Adjust size as needed - if (!extractLine(editor, editor->cursor, line, sizeof(line))) { - return false; - } - - if (strncmp(line, "#include \"", 10) == 0) { - char *start = strchr(line, '\"') + 1; - char *end = strrchr(line, '\"'); - if (start && end && start < end) { - size_t length = end - start; - strncpy(includePath, start, length); - includePath[length] = '\0'; - return true; - } - } - - return false; -} - -void getDirectoryFromFilePath(const char *filePath, char *directory) { - strcpy(directory, filePath); - char *lastSlash = strrchr(directory, '/'); - if (lastSlash != NULL) { - *lastSlash = '\0'; // Null-terminate at the last slash - } else { - // Handle the case where there is no slash in the path - strcpy(directory, "."); - } -} - -Errno openLocalIncludeFile(Editor *editor, const char *includePath) { - char fullPath[512]; // Buffer for the full path - char directory[256]; // Buffer for the directory - - // Get the directory of the current file - getDirectoryFromFilePath(editor->file_path.items, directory); - - // Construct the full path - snprintf(fullPath, sizeof(fullPath), "%s/%s", directory, includePath); - - // Load the file using the full path - Errno load_err = editor_load_from_file(editor, fullPath); - if (load_err != 0) { - fprintf(stderr, "Error loading file %s: %s\n", fullPath, strerror(load_err)); - return load_err; - } - - printf("Opened file: %s\n", fullPath); - return 0; -} - -bool extractGlobalIncludePath(Editor *editor, char *includePath) { - char line[512]; - if (!extractLine(editor, editor->cursor, line, sizeof(line))) { - return false; - } - - if (strncmp(line, "#include <", 10) == 0) { - char *start = strchr(line, '<') + 1; - char *end = strrchr(line, '>'); - if (start && end && start < end) { - size_t length = end - start; - strncpy(includePath, start, length); - includePath[length] = '\0'; - return true; - } - } - - return false; -} - -Errno openGlobalIncludeFile(Editor *editor, const char *includePath) { - char fullPath[512]; // Buffer for the full path - - // List of standard directories (expandable) - const char *standardDirs[] = {"/usr/include", NULL}; // NULL terminated array - - for (int i = 0; standardDirs[i] != NULL; i++) { - snprintf(fullPath, sizeof(fullPath), "%s/%s", standardDirs[i], includePath); - - // Check if the file exists and is accessible - if (access(fullPath, F_OK) != -1) { - // Try to load the file using the constructed full path - Errno load_err = editor_load_from_file(editor, fullPath); - if (load_err == 0) { - printf("Opened file: %s\n", fullPath); - return 0; // File opened successfully - } - } - } - - // Print the error message only if the file is not found in /usr/include - fprintf(stderr, "Error: File %s not found in /usr/include\n", includePath); - return -1; // File not found in /usr/include -} - - - - -void editor_open_include(Editor *editor) { - char includePath[256]; - - if (extractLocalIncludePath(editor, includePath)) { - openLocalIncludeFile(editor, includePath); - } else if (extractGlobalIncludePath(editor, includePath)) { - openGlobalIncludeFile(editor, includePath); - } -} - - // TODO: display errors reported via flash_error right in the text editor window somehow #define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) @@ -316,11 +179,15 @@ int main(int argc, char **argv) initialize_themes(); initialize_shader_paths(); load_snippets_from_directory(); + // Define hash seeds (these could be randomly generated for more robustness) uint64_t seed0 = 0x12345678; uint64_t seed1 = 0x9ABCDEF0; + initialize_variable_docs_map(seed0, seed1); + initialize_variable_documentation(); + // Allocate and initialize the commands hashmap editor.commands = hashmap_new( sizeof(Command), // Size of each element @@ -479,7 +346,7 @@ int main(int argc, char **argv) editor_retokenize(&editor); - bool quit = false; + /* bool quit = false; */ bool file_browser = false; while (!quit) { @@ -627,7 +494,7 @@ int main(int argc, char **argv) case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { - isAnimated = !isAnimated; // Toggle the state + followCursor = !followCursor; // Toggle the state } } break; @@ -707,7 +574,7 @@ int main(int argc, char **argv) case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { - isAnimated = !isAnimated; // Toggle the state + followCursor = !followCursor; // Toggle the state } } break; @@ -811,14 +678,34 @@ int main(int argc, char **argv) SDL_Event tmpEvent; // Declare once at the beginning of the switch block case SDLK_RETURN: { - if (editor.searching) { - editor_stop_search_and_mark(&editor); - current_mode = NORMAL; - } else { + if (!toggle_bool(&editor)) { editor_open_include(&editor); } } break; + case SDLK_SEMICOLON: + if (event.key.keysym.mod & KMOD_SHIFT) { + current_mode = MINIBUFFER; + evil_command_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for ':' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ':') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + + // TODO ivy + /* if (!ivy) { */ + /* minibufferHeight += 189; */ + /* ivy = true; */ + /* } */ + } + break; + + + case SDLK_d: if (event.key.keysym.mod & KMOD_SHIFT) { emacs_kill_line(&editor); @@ -853,9 +740,9 @@ int main(int argc, char **argv) case SDLK_ESCAPE: { - if (minibuffering) { + if (ivy) { minibufferHeight -= 189; - minibuffering = false; + ivy = false; } if (editor.minibuffer_active) { @@ -877,10 +764,10 @@ int main(int argc, char **argv) } else { editor_goto_anchor_and_clear(&editor); } - } else if (!minibuffering) { + } else if (!ivy) { // TODO time delay whichkey minibufferHeight += 189; - minibuffering = true; + ivy = true; } } break; @@ -910,7 +797,7 @@ int main(int argc, char **argv) case SDLK_o: if (superDrammtic) { - isAnimated = true; + followCursor = true; } if (SDL_GetModState() & KMOD_SHIFT) { evil_open_above(&editor); @@ -960,7 +847,7 @@ int main(int argc, char **argv) case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { - isAnimated = !isAnimated; // Toggle the state + followCursor = !followCursor; // Toggle the state } } break; @@ -989,7 +876,7 @@ int main(int argc, char **argv) } break; case SDLK_SLASH: { - current_mode = INSERT; + current_mode = MINIBUFFER; editor.last_stroke = SDL_GetTicks(); editor_start_search(&editor); @@ -1050,7 +937,7 @@ int main(int argc, char **argv) if (event.key.keysym.mod & KMOD_CTRL) { // Ctrl+S is pressed editor_start_search(&editor); - current_mode = INSERT; + current_mode = MINIBUFFER; } else { // Either S or Shift+S is pressed if (event.key.keysym.mod & KMOD_SHIFT) { @@ -1094,7 +981,6 @@ int main(int argc, char **argv) } } break; - case SDLK_i: if (SDL_GetModState() & KMOD_CTRL) { showIndentationLines = !showIndentationLines; @@ -1112,10 +998,8 @@ int main(int argc, char **argv) } if (superDrammtic){ - isAnimated = true; + followCursor = true; } - - // This section is executed for both Shift and no modifier editor.last_stroke = SDL_GetTicks(); // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' @@ -1126,14 +1010,7 @@ int main(int argc, char **argv) } } break; - - - - - - - - + case SDLK_v: { if (SDL_GetModState() & KMOD_SHIFT) { current_mode = VISUAL_LINE; @@ -1153,7 +1030,7 @@ int main(int argc, char **argv) case SDLK_a: editor.last_stroke = SDL_GetTicks(); if (superDrammtic){ - isAnimated = true; + followCursor = true; } if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held editor_move_to_line_end(&editor); @@ -1171,15 +1048,6 @@ int main(int argc, char **argv) } break; - current_mode = INSERT; - - // Eat up the next SDL_TEXTINPUT event for 'a' - SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'a' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'a') { - SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue - } - break; - case SDLK_x: if (editor.selection) { editor_clipboard_copy(&editor); @@ -1187,7 +1055,7 @@ int main(int argc, char **argv) editor.selection = false; } else if (event.key.keysym.mod & KMOD_ALT) { if (!M_x_active) { - current_mode = INSERT; + current_mode = MINIBUFFER; M_x_active = true; editor.minibuffer_active = true; @@ -1200,9 +1068,9 @@ int main(int argc, char **argv) } // TODO ivy - /* if (!minibuffering) { */ + /* if (!ivy) { */ /* minibufferHeight += 189; */ - /* minibuffering = true; */ + /* ivy = true; */ /* } */ } else if (event.key.keysym.mod & KMOD_SHIFT) { evil_delete_backward_char(&editor); @@ -1255,7 +1123,7 @@ int main(int argc, char **argv) case SDLK_j: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { + if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { move_camera(&sr, "down", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { evil_open_above(&editor); @@ -1271,7 +1139,7 @@ int main(int argc, char **argv) case SDLK_k: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_ALT) && !isAnimated) { + if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { move_camera(&sr, "up", 50.0f); } else if (event.key.keysym.mod & KMOD_CTRL) { emacs_kill_line(&editor); @@ -1611,61 +1479,8 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - // TODO use editor_return() - case SDLK_RETURN: { - if (editor.searching) { - editor_stop_search_and_mark(&editor); - current_mode = NORMAL; - } else if (editor.minibuffer_active) { - sb_append_null(&editor.minibuffer_text); // null termination - execute_command(editor.commands, &editor, editor.minibuffer_text.items); - editor.minibuffer_text.count = 0; - editor.minibuffer_active = false; - M_x_active = false; - current_mode = NORMAL; - } - else { - size_t row = editor_cursor_row(&editor); - size_t line_end = editor.lines.items[row].end; - - editor_insert_char(&editor, '\n'); - size_t line_begin = editor.lines.items[row].begin; - bool inside_braces = false; - - // Check if the line contains an opening brace '{' - for (size_t i = line_begin; i < line_end; ++i) { - char c = editor.data.items[i]; - if (c == '{') { - inside_braces = true; - break; - } - } - - // Insert the same whitespace character - for (size_t i = line_begin; i < line_end; ++i) { - char c = editor.data.items[i]; - if (c == ' ' || c == '\t') { - editor_insert_char(&editor, c); - } else { - break; - } - } - - // If inside braces, perform additional steps - if (inside_braces) { - editor_move_line_up(&editor); - editor_move_to_line_end(&editor); - editor_insert_char(&editor, '\n'); - - // Add indentation - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(&editor, ' '); - } - } - - editor.last_stroke = SDL_GetTicks(); - } - } + case SDLK_RETURN: + editor_enter(&editor); break; case SDLK_f: { @@ -1677,7 +1492,7 @@ int main(int argc, char **argv) case SDLK_ESCAPE: { if (superDrammtic){ - isAnimated = false; + followCursor = false; } if (editor.searching) { @@ -1893,6 +1708,50 @@ int main(int argc, char **argv) } break; + case MINIBUFFER: + switch (event.key.keysym.sym) { + + case SDLK_ESCAPE: { + if (ivy) { + minibufferHeight -= 189; + ivy = false; + } + + if (editor.searching) { + editor_clear_mark(&editor); + editor_stop_search(&editor); + } else if (editor.minibuffer_active) { + editor.minibuffer_text.count = 0; + M_x_active = false; + editor.minibuffer_active = false; + } + current_mode = NORMAL; + } + break; + + case SDLK_BACKSPACE: + if (editor.selection) { + // TODO once we have selection in the minibuffer + /* editor_clipboard_copy(&editor); */ + /* editor_delete_selection(&editor); */ + /* editor.selection = false; */ + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + // TODO use editor_enter() + case SDLK_RETURN: { + editor_enter(&editor); + } + break; + } + break; + // More cases for other modes can follow here... // ... } @@ -1904,7 +1763,8 @@ int main(int argc, char **argv) case SDL_TEXTINPUT: if (file_browser) { // Once we have incremental search in the file browser this may become useful - } else if (current_mode == INSERT || current_mode == EMACS) { // Process text input + // or to edit file names or create files/direcory + } else if (current_mode == INSERT || current_mode == EMACS || current_mode == MINIBUFFER) { // Process text input const char *text = event.text.text; size_t text_len = strlen(text); for (size_t i = 0; i < text_len; ++i) { @@ -1930,7 +1790,12 @@ int main(int argc, char **argv) } else { editor_render(window, &atlas, &sr, &editor); render_search_text(&atlas, &sr, &editor); - render_M_x(&atlas, &sr, &editor); + if (M_x_active){ + render_minibuffer_content(&atlas, &sr, &editor, "M-x"); + } else if (evil_command_active) { + render_minibuffer_content(&atlas, &sr, &editor, ":"); + } + print_variable_doc("zoom_factor"); } SDL_GL_SwapWindow(window); @@ -1940,7 +1805,7 @@ int main(int argc, char **argv) SDL_Delay(delta_time_ms - duration); } } - free_snippet_array(&snippets); + free_snippet_array(&snippets); // TODO return 0; } diff --git a/src/render.c b/src/render.c index be232194..ac2b05d5 100644 --- a/src/render.c +++ b/src/render.c @@ -2,6 +2,7 @@ #include "editor.h" #include "free_glyph.h" #include "la.h" +#include "lexer.h" #include "simple_renderer.h" #include "theme.h" @@ -38,32 +39,48 @@ void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed } } - -void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { +void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText) { if (editor->minibuffer_active) { Vec4f cursorColor = CURRENT_THEME.cursor; Vec4f textColor = CURRENT_THEME.text; Vec2f searchPos = {30.0f, 20.0f}; + float prefixRightPadding; float minibufferCursorOffsett = 5.0f; - // Render the search text - simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); - free_glyph_atlas_render_line_sized(atlas, sr, editor->minibuffer_text.items, editor->minibuffer_text.count, &searchPos, textColor); - - // Set cursor position at the start of the text (we already used those we can change them) - searchPos.y = 0.0f; - searchPos.x += minibufferCursorOffsett; - Vec2f cursorPos = searchPos; - - // Set cursor size - float cursor_width = measure_whitespace_width(atlas); - Vec2f cursorSize = {cursor_width, 21.0f * 4.0f}; // 21 is the minibufferHeight + if (M_x_active) { + prefixRightPadding = 50; + } else if (evil_command_active) { + prefixRightPadding = 0; + } - // Render the cursor - simple_renderer_flush(sr); - simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_COLOR); - simple_renderer_solid_rect(sr, cursorPos, cursorSize, cursorColor); + if (editor->searching) { + } else { + // Render the prefix + free_glyph_atlas_render_line_sized(atlas, sr, prefixText, strlen(prefixText), &searchPos, cursorColor); + + // Calculate the width of the prefix and adjust the position for minibuffer text + float prefixWidth = free_glyph_atlas_measure_line_width(atlas, prefixText, strlen(prefixText)); + searchPos.x += prefixRightPadding; + + // Render the minibuffer text + simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); + free_glyph_atlas_render_line_sized(atlas, sr, editor->minibuffer_text.items, editor->minibuffer_text.count, &searchPos, textColor); + + // Adjust cursor position according to your original logic + searchPos.x += minibufferCursorOffsett; // Adjust x for the cursor + searchPos.y = 0.0f; // Reset y for the cursor + Vec2f cursorPos = searchPos; + + // Set cursor size + float cursor_width = measure_whitespace_width(atlas); + Vec2f cursorSize = {cursor_width, 21.0f * 4.0f}; // 21 is the minibufferHeight + + // Render the cursor + simple_renderer_flush(sr); + simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, cursorPos, cursorSize, cursorColor); + } // Flush the renderer simple_renderer_flush(sr); } @@ -72,6 +89,52 @@ void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { +void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { + if (showLineNumbers) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + } + + size_t currentLineNumber = editor_cursor_row(editor); + + // Different colors for line numbers + Vec4f defaultColor = CURRENT_THEME.line_numbers; + Vec4f currentLineColor = CURRENT_THEME.current_line_number; + if (highlightCurrentLineNumberOnInsertMode) { + currentLineColor = (current_mode == INSERT) ? CURRENT_THEME.insert_cursor : CURRENT_THEME.current_line_number; + } + + // Calculate the width needed for the largest line number + int lineNumberFieldWidth = snprintf(NULL, 0, "%zu", editor->lines.count); + + for (size_t i = 0; i < editor->lines.count; ++i) { + char lineNumberStr[12]; // Sufficiently large to hold the formatted number + + // Calculate display line number based on relative number setting + size_t displayLineNumber; + if (relativeLineNumbers) { + displayLineNumber = (i == currentLineNumber) ? currentLineNumber + 1 : abs((int)i - (int)currentLineNumber); + } else { + displayLineNumber = i + 1; + } + + // Format the line number with right justification + snprintf(lineNumberStr, sizeof(lineNumberStr), "%*zu", lineNumberFieldWidth, displayLineNumber); + + Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + + // Decide on the color to use + Vec4f colorToUse = (highlightCurrentLineNumber && i == currentLineNumber) ? currentLineColor : defaultColor; + + free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, colorToUse); + } + + simple_renderer_flush(sr); + } +} + // SQAURES @@ -432,64 +495,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } simple_renderer_flush(sr); } - - - - // Render line numbers - if (showLineNumbers) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); - } - - size_t currentLineNumber = editor_cursor_row(editor); - - // Different colors for line numbers - Vec4f defaultColor = CURRENT_THEME.line_numbers; - Vec4f currentLineColor; - if (highlightCurrentLineNumberOnInsertMode){ - if (current_mode == INSERT) { - currentLineColor = CURRENT_THEME.insert_cursor; - } else { - currentLineColor = CURRENT_THEME.current_line_number; - } - } else { - currentLineColor = CURRENT_THEME.current_line_number; - } - - for (size_t i = 0; i < editor->lines.count; ++i) { - char lineNumberStr[10]; - - // Calculate display line number based on relative number setting - size_t displayLineNumber; - if (relativeLineNumbers) { - if (i == currentLineNumber) { - // Display the actual line number for the current line - displayLineNumber = currentLineNumber + 1; - } else { - // Show the distance from the current line for other lines - displayLineNumber = (i > currentLineNumber) ? i - currentLineNumber : currentLineNumber - i; - } - } else { - displayLineNumber = i + 1; - } - - snprintf(lineNumberStr, sizeof(lineNumberStr), "%zu", displayLineNumber); - - Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - - // Decide on the color to use - Vec4f colorToUse = defaultColor; - if (highlightCurrentLineNumber && i == currentLineNumber) { - colorToUse = currentLineColor; - } - - free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, colorToUse); - } - - simple_renderer_flush(sr); - } + + render_line_numbers(sr, atlas, editor); // Render matching parenthesis { @@ -587,6 +594,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case TOKEN_TYPE: color = CURRENT_THEME.type; break; + + case TOKEN_NULL: + color = CURRENT_THEME.null; + break; case TOKEN_FUNCTION_DEFINITION: color = CURRENT_THEME.function_definition; @@ -970,7 +981,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Update camera { - if (isAnimated) { + if (followCursor && !instantCamera) { if (max_line_len > 1000.0f) { max_line_len = 1000.0f; @@ -997,6 +1008,29 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; + } else if (followCursor && instantCamera) { + // TODO looks bas maybe implement double buffering + if (max_line_len > 1000.0f) { + max_line_len = 1000.0f; + } + + float target_scale = w / zoom_factor / (max_line_len * 0.75); // Handle potential division by 0 + + Vec2f target = cursor_pos; + float offset = 0.0f; + + if (target_scale > 3.0f) { + target_scale = 3.0f; + } else { + offset = cursor_pos.x - w/3/sr->camera_scale; + if (offset < 0.0f) offset = 0.0f; + target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); + } + + // Instantly set the camera position and scale + sr->camera_pos = target; + sr->camera_scale = target_scale; + } else { sr->camera_scale = 0.24f; // Set the zoom level to 0.24 diff --git a/src/render.h b/src/render.h index 7fa2842d..321fc6d0 100644 --- a/src/render.h +++ b/src/render.h @@ -8,7 +8,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor); -void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); +/* void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); */ +/* void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText); */ +void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText); +void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor); #endif // RENDER_H diff --git a/src/simple_renderer.c b/src/simple_renderer.c index a620a7ec..1b6e91bb 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -145,7 +145,7 @@ static void get_uniform_location(GLuint program, GLint locations[COUNT_UNIFORM_S /* void simple_renderer_init(Simple_Renderer *sr) */ /* { */ -/* if (isAnimated) { */ +/* if (followCursor) { */ /* sr->camera_scale = 3.0f; */ /* } */ @@ -260,7 +260,7 @@ static void get_uniform_location(GLuint program, GLint locations[COUNT_UNIFORM_S void simple_renderer_init(Simple_Renderer *sr) { - if (isAnimated) { + if (followCursor) { sr->camera_scale = 3.0f; } diff --git a/src/theme.c b/src/theme.c index 5a69d70f..c18d5445 100644 --- a/src/theme.c +++ b/src/theme.c @@ -2,7 +2,7 @@ #include "common.h" int currentThemeIndex = 0; -Theme themes[6]; +Theme themes[7]; void initialize_themes() { @@ -58,6 +58,7 @@ void initialize_themes() { .modeline_accent = hex_to_vec4f(0x658B5FFF), .whitespace = hex_to_vec4f(0x171717FF), .indentation_line = hex_to_vec4f(0x171717FF), + .null = hex_to_vec4f(0x564F96FF), }; // DOOM one @@ -112,6 +113,7 @@ void initialize_themes() { .modeline_accent = hex_to_vec4f(0x51AFEFFF), .whitespace = hex_to_vec4f(0x3F444AFF), .indentation_line = hex_to_vec4f(0x3F444AFF), + .null = hex_to_vec4f(0xA9A1E1FF), }; // Dracula @@ -166,6 +168,7 @@ void initialize_themes() { .modeline_accent = hex_to_vec4f(0xBD93F9FF), .whitespace = hex_to_vec4f(0x565761FF), .indentation_line = hex_to_vec4f(0x565761FF), + .null = hex_to_vec4f(0x8BE9FDFF), }; // DOOM city lights @@ -220,6 +223,7 @@ void initialize_themes() { .modeline_accent = hex_to_vec4f(0x5EC4FFFF), .whitespace = hex_to_vec4f(0x384551FF), .indentation_line = hex_to_vec4f(0x384551FF), + .null = hex_to_vec4f(0xE27E8DFF), }; @@ -275,27 +279,28 @@ void initialize_themes() { .modeline_accent = hex_to_vec4f(0xB6E63EFF), .whitespace = hex_to_vec4f(0x4E4E4EFF), .indentation_line = hex_to_vec4f(0x4E4E4EFF), + .null = hex_to_vec4f(0xFD971FFF), }; // Palenight - themes[5] = (Theme) { - .cursor = hex_to_vec4f(0xC792EAFF), //#C792EA + themes[5] = (Theme){ + .cursor = hex_to_vec4f(0xC792EAFF), // #C792EA .insert_cursor = hex_to_vec4f(0xC792EAFF), - .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), //#FFCB6B + .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), // #FFCB6B .text = hex_to_vec4f(0xEEFFFFFF), .background = hex_to_vec4f(0x292D3EFF), .comment = hex_to_vec4f(0x676E95FF), - .hashtag = hex_to_vec4f(0x89DDFFFF), //#89DDFF + .hashtag = hex_to_vec4f(0x89DDFFFF), // #89DDFF .logic = hex_to_vec4f(0x89DDFFFF), - .string = hex_to_vec4f(0xC3E88DFF), //#C3E88D + .string = hex_to_vec4f(0xC3E88DFF), // #C3E88D .selection = hex_to_vec4f(0x3C435EFF), .search = hex_to_vec4f(0x4E5579FF), .todo = hex_to_vec4f(0xFFCB6BFF), .line_numbers = hex_to_vec4f(0x676E95FF), .current_line_number = hex_to_vec4f(0xEEFFFFFF), - .fixme = hex_to_vec4f(0xFF5370FF), //#FF5370 + .fixme = hex_to_vec4f(0xFF5370FF), // #FF5370 .note = hex_to_vec4f(0xC3E88DFF), .bug = hex_to_vec4f(0xFF5370FF), .not_equals = hex_to_vec4f(0xFF5370FF), @@ -313,13 +318,13 @@ void initialize_themes() { .arrow = hex_to_vec4f(0xFFCB6BFF), .open_square = hex_to_vec4f(0xEEFFFFFF), .close_square = hex_to_vec4f(0xEEFFFFFF), - .array_content = hex_to_vec4f(0x82AAFFFF), //#82AAFF + .array_content = hex_to_vec4f(0x82AAFFFF), // #82AAFF .link = hex_to_vec4f(0x89DDFFFF), .logic_or = hex_to_vec4f(0xFF5370FF), .pipe = hex_to_vec4f(0xC3E88DFF), .ampersand = hex_to_vec4f(0x89DDFFFF), .logic_and = hex_to_vec4f(0xC3E88DFF), - .pointer = hex_to_vec4f(0xF78C6CFF), //#F78C6C + .pointer = hex_to_vec4f(0xF78C6CFF), // #F78C6C .multiplication = hex_to_vec4f(0xC3E88DFF), .matching_parenthesis = hex_to_vec4f(0x3C435EFF), .hl_line = hex_to_vec4f(0x242837FF), @@ -331,7 +336,67 @@ void initialize_themes() { .modeline_accent = hex_to_vec4f(0xC792EAFF), .whitespace = hex_to_vec4f(0x4E5579FF), .indentation_line = hex_to_vec4f(0x4E5579FF), + .null = hex_to_vec4f(0xF78C6CFF), }; + + + // SUNSET + themes[6] = (Theme) { + .cursor = hex_to_vec4f(0xD9A173FF), //#D9A173 + .insert_cursor = hex_to_vec4f(0xD46A7DFF), //#D46A7D + .emacs_cursor = hex_to_vec4f(0x9A8B6AFF), //#9A8B6A + .text = hex_to_vec4f(0xCCCCC5FF), + .background = hex_to_vec4f(0x0C0D12FF), + .comment = hex_to_vec4f(0x8E8E89FF), + .hashtag = hex_to_vec4f(0xD9A173FF), + .logic = hex_to_vec4f(0xD9A173FF), + .string = hex_to_vec4f(0x6A7E74FF), //#6A7E74 + .selection = hex_to_vec4f(0x28292DFF), + .search = hex_to_vec4f(0x805F44FF), //#805F44 + .todo = hex_to_vec4f(0x9A8B6AFF), + .line_numbers = hex_to_vec4f(0x1B1B21FF), + .current_line_number = hex_to_vec4f(0xCCCCC5FF), + .fixme = hex_to_vec4f(0xC06873FF), //#C06873 + .note = hex_to_vec4f(0x6A7E74FF), + .bug = hex_to_vec4f(0xC06873FF), + .not_equals = hex_to_vec4f(0xD46A7DFF), + .exclamation = hex_to_vec4f(0xD46A7DFF), + .equals = hex_to_vec4f(0x6A7E74FF), + .equals_equals = hex_to_vec4f(0x6A7E74FF), + .greater_than = hex_to_vec4f(0x6A7E74FF), + .less_than = hex_to_vec4f(0xC06873FF), + .marks = hex_to_vec4f(0x805F44FF), + .fb_selection = hex_to_vec4f(0x28292DFF), + .plus = hex_to_vec4f(0x6A7E74FF), + .minus = hex_to_vec4f(0xD46A7DFF), + .truee = hex_to_vec4f(0x6A7E74FF), + .falsee = hex_to_vec4f(0xD46A7DFF), + .arrow = hex_to_vec4f(0xCCCCC5FF), + .open_square = hex_to_vec4f(0xCCCCC5FF), + .close_square = hex_to_vec4f(0xCCCCC5FF), + .array_content = hex_to_vec4f(0xCCCCC5FF), + .link = hex_to_vec4f(0xD9A173FF), + .logic_or = hex_to_vec4f(0xD46A7DFF), + .pipe = hex_to_vec4f(0x6A7E74FF), + .ampersand = hex_to_vec4f(0x6A7E74FF), + .logic_and = hex_to_vec4f(0x6A7E74FF), + .pointer = hex_to_vec4f(0xD9A173FF), + .multiplication = hex_to_vec4f(0x6A7E74FF), + .matching_parenthesis = hex_to_vec4f(0x28292DFF), + .hl_line = hex_to_vec4f(0x0A0B0FFF), + .type = hex_to_vec4f(0x9A8B6AFF), + .function_definition = hex_to_vec4f(0xE07084FF), //#E07084 + .anchor = hex_to_vec4f(0xE07084FF), + .minibuffer = hex_to_vec4f(0x0C0D12FF), + .modeline = hex_to_vec4f(0x08090CFF), + .modeline_accent = hex_to_vec4f(0xD9A173FF), + .whitespace = hex_to_vec4f(0x1B1B21FF), + .indentation_line = hex_to_vec4f(0x28292DFF), + .null = hex_to_vec4f(0xD46A7DFF), + }; + + + } void theme_next(int *currentThemeIndex) { diff --git a/src/theme.h b/src/theme.h index 1063b2a9..10aa7bc2 100644 --- a/src/theme.h +++ b/src/theme.h @@ -54,6 +54,7 @@ typedef struct { Vec4f anchor; Vec4f whitespace; Vec4f indentation_line; + Vec4f null; } Theme; diff --git a/src/yasnippet.c b/src/yasnippet.c index 09b0cf9c..3697e59a 100644 --- a/src/yasnippet.c +++ b/src/yasnippet.c @@ -30,7 +30,7 @@ void free_snippet_array(SnippetArray *a) { void load_snippets_from_directory() { - const char* home = getenv("HOME"); + const char * home = getenv("HOME"); if (!home) { fprintf(stderr, "ERROR: HOME environment variable not set.\n"); return; diff --git a/test b/test new file mode 100644 index 00000000..da2dc379 --- /dev/null +++ b/test @@ -0,0 +1,3 @@ +porcodio +ciao +diomerda \ No newline at end of file diff --git a/todo.org b/todo.org index 3cd4cc3f..6aa582a9 100644 --- a/todo.org +++ b/todo.org @@ -17,31 +17,32 @@ changing font more times than the total number of font you have inside =~/.confi make the text disappear [] ** Camera when animation are false move the camera like in emacs or vim [x] - (bad when going up) [] + togglable emacs style camera centering [] ** Shaders use shaders from =~/.config/ded/shaders= instead [x] ** Lexer chech for strings in arrays [] -'' [] -NULL [] multi line comments [] different vertex and fragment shader per token [] different font per token [] +'' [x] +NULL [x] syntax highlighting for : | || & && [x] highlight links [x] ** Renderer -check if the #include exist in /usr/include -and if it exist render a line under it to show it's clickable -also check if the file exist before opening it [] - -render circles (for whitespaces) [] -line under links (and clickable things)[] +render_trailing_whitespaces [] +line under links [] +render circles (we need to use a shader for better performance) [/] ** Addresses showIndentationLines = 5555555792d2 i8 currentThemeIndex = 555559015340 +** Theme +each theme should have a name not only and index + ** Evil evil-find-char-backward [] +evil-visual-liene-mode [] evil-search-backward [] splits(maybe) [] 5k should work [] @@ -59,7 +60,15 @@ activate_snippet on "if" take two times to activate also editor_backspace take 3 times to delete [] ** Editor -if superDramatic change update camera to be more usable [] + +map all variables to a string and write the gui to inspect variables st runtime and change them [] + +replace on typing when selection is true [] +move entire curly brace block of code on space as an option [] + +if the search found nothing until the end of the file wrap arround +and check from the start of the fil until the cursor [] + switch true to false or false to true in editor_enter [] From 29b15ff68a0f72ce24d298708aeb29ff19f2a34c Mon Sep 17 00:00:00 2001 From: laluxx Date: Sat, 20 Jan 2024 04:08:39 +0100 Subject: [PATCH 60/74] stuff --- src/editor.c | 117 ++++++++++++++++++++++++++++++++++++++++++++- src/editor.h | 16 +++++-- src/file_browser.c | 21 ++++++++ src/file_browser.h | 6 +++ src/lexer.c | 1 + src/main.c | 28 +++++++++-- src/render.c | 72 +++++++++++++++++++++++++++- src/render.h | 3 ++ src/theme.c | 7 +++ src/theme.h | 1 + src/yasnippet.c | 35 ++------------ src/yasnippet.h | 1 - test | 3 -- todo.org | 8 ++++ 14 files changed, 272 insertions(+), 47 deletions(-) delete mode 100644 test diff --git a/src/editor.c b/src/editor.c index 7394dca9..6f599396 100644 --- a/src/editor.c +++ b/src/editor.c @@ -1365,12 +1365,10 @@ bool toggle_bool(Editor *editor) { return true; // Successfully toggled } - void editor_quit() { quit = true; } - void editor_save_and_quit(Editor *e) { editor_save(e); quit = true; @@ -1380,6 +1378,121 @@ void editor_save_and_quit(Editor *e) { +bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { + if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { + return false; + } + + size_t end = e->cursor; + size_t start = end; + + while (start > 0 && isalnum(e->data.items[start - 1])) { + start--; + } + + size_t word_length = end - start; + if (word_length >= max_word_length) { + return false; + } + + memcpy(word, &e->data.items[start], word_length); + word[word_length] = '\0'; + e->cursor = start; + return true; +} + + + + + +#define MAX_MATCHES 1024 +#define MAX_WORD_LENGTH 256 + +// TODO cycle +// TODO bad match sometimes i invoke it and it does nothing + +void evil_complete_next(Editor *e) { + static char last_word[MAX_WORD_LENGTH] = {0}; + static size_t last_match_index = 0; + char current_word[MAX_WORD_LENGTH]; + + if (!extract_word_left_of_cursor(e, current_word, sizeof(current_word))) { + printf("No word to complete.\n"); + return; + } + + if (strcmp(last_word, current_word) != 0) { + strcpy(last_word, current_word); + last_match_index = 0; + } + + char *matches[MAX_MATCHES]; + size_t matches_count = 0; + find_matches_in_editor_data(e, current_word, matches, &matches_count); + + if (matches_count == 0) { + printf("Pattern not found.\n"); + return; + } + + const char *next_match = matches[last_match_index % matches_count]; + size_t next_match_length = strlen(next_match); + size_t current_word_length = strlen(current_word); + + // Adjust the buffer size and content + if (next_match_length != current_word_length) { + memmove(&e->data.items[e->cursor + next_match_length], + &e->data.items[e->cursor + current_word_length], + e->data.count - e->cursor); + e->data.count += next_match_length - current_word_length; + } + + // Replace the current word with the match + memcpy(&e->data.items[e->cursor], next_match, next_match_length); + + // Update the cursor position to the end of the new word + e->cursor += next_match_length; + + last_match_index++; + + // Clean up + for (size_t i = 0; i < matches_count; i++) { + free(matches[i]); + } + editor_retokenize(e); +} + +void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count) { + size_t word_length = strlen(word); + *matches_count = 0; + char *data = e->data.items; + size_t data_length = e->data.count; + + for (size_t i = 0; i < data_length; i++) { + if (isalnum(data[i]) && (i == 0 || !isalnum(data[i - 1]))) { + // Found the start of a word + if (strncmp(&data[i], word, word_length) == 0) { + // Found a matching word, now find the end of the word + size_t word_end = i + 1; + while (word_end < data_length && isalnum(data[word_end])) { + word_end++; + } + + size_t match_length = word_end - i; + if (*matches_count < MAX_MATCHES) { + matches[*matches_count] = malloc(match_length + 1); + strncpy(matches[*matches_count], &data[i], match_length); + matches[*matches_count][match_length] = '\0'; + (*matches_count)++; + } + } + } + } +} + + + + // M-x diff --git a/src/editor.h b/src/editor.h index a757da7a..3dbe9b07 100644 --- a/src/editor.h +++ b/src/editor.h @@ -96,8 +96,8 @@ typedef struct { size_t cursor; bool has_mark; // Indicates if there's a marked search result. - size_t mark_start; // Start of marked search result. TODO support multiple marks - size_t mark_end; // End of marked search result. + size_t mark_start; + size_t mark_end; Uint32 last_stroke; @@ -179,13 +179,20 @@ Errno openLocalIncludeFile(Editor *editor, const char *includePath); bool extractGlobalIncludePath(Editor *editor, char *includePath); Errno openGlobalIncludeFile(Editor *editor, const char *includePath); void editor_open_include(Editor *editor); - bool toggle_bool(Editor *editor); - void editor_quit(); void editor_save_and_quit(Editor *e); +void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count); +void evil_complete_next(Editor *e); + + + + + + + // UTILITY bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length); size_t editor_row_from_pos(const Editor *e, size_t pos); @@ -195,6 +202,7 @@ bool editor_is_line_whitespaced(Editor *e, size_t row); float measure_whitespace_width(Free_Glyph_Atlas *atlas); float measure_whitespace_height(Free_Glyph_Atlas *atlas); size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); +bool exract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); // M-x diff --git a/src/file_browser.c b/src/file_browser.c index 0eb7e1b6..dd2e099d 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -226,5 +226,26 @@ const char *fb_file_path(File_Browser *fb) sb_append_cstr(&fb->file_path, fb->files.items[fb->cursor]); sb_append_null(&fb->file_path); + extract_file_extension(fb->files.items[fb->cursor], &fb->file_extension); //added + printf("Current file_extention: "SB_Fmt"\n", SB_Arg(fb->file_extension)); + return fb->file_path.items; } + +// ADDED + + +void extract_file_extension(const char *filename, String_Builder *ext) { + const char *dot = strrchr(filename, '.'); + if (!dot || dot == filename) { + // No extension found or the dot is the first character (hidden files in Unix) + // Clear the String_Builder manually + ext->count = 0; + sb_append_null(ext); + return; + } + // Clear the String_Builder manually before appending new content + ext->count = 0; + sb_append_cstr(ext, dot + 1); // Skip the dot + sb_append_null(ext); // Ensure null termination +} diff --git a/src/file_browser.h b/src/file_browser.h index 9f756eb9..0626a433 100644 --- a/src/file_browser.h +++ b/src/file_browser.h @@ -13,6 +13,7 @@ typedef struct { size_t cursor; String_Builder dir_path; String_Builder file_path; + String_Builder file_extension; // for file creation mode bool is_in_file_creation_mode; @@ -29,4 +30,9 @@ const char *fb_file_path(File_Browser *fb); Errno fb_go_to_parent(File_Browser *fb); +// ADDED +void extract_file_extension(const char *filename, String_Builder *ext); + + + #endif // FILE_BROWSER_H_ diff --git a/src/lexer.c b/src/lexer.c index 6c3ef6bf..bc633058 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -442,6 +442,7 @@ Token lexer_next(Lexer *l) return token; } + // "NULL" if ((l->cursor + 3 < l->content_len) && (strncmp(&l->content[l->cursor], "NULL", 4) == 0) && diff --git a/src/main.c b/src/main.c index b2bcb7af..330cfb4f 100644 --- a/src/main.c +++ b/src/main.c @@ -179,13 +179,16 @@ int main(int argc, char **argv) initialize_themes(); initialize_shader_paths(); load_snippets_from_directory(); - + // Define hash seeds (these could be randomly generated for more robustness) uint64_t seed0 = 0x12345678; uint64_t seed1 = 0x9ABCDEF0; - initialize_variable_docs_map(seed0, seed1); + uint64_t seed2 = 0x1E7EDAD0; + uint64_t seed3 = 0x3E8A3D59; + + initialize_variable_docs_map(seed2, seed3); initialize_variable_documentation(); // Allocate and initialize the commands hashmap @@ -1235,6 +1238,16 @@ int main(int argc, char **argv) editor.selection = false; } break; + + + case SDLK_n: { + if (SDL_GetModState() & KMOD_CTRL) { + evil_complete_next(&editor); + editor.last_stroke = SDL_GetTicks(); + } + } + break; + case SDLK_SPACE: { if (SDL_GetModState() & KMOD_CTRL) { @@ -1790,12 +1803,21 @@ int main(int argc, char **argv) } else { editor_render(window, &atlas, &sr, &editor); render_search_text(&atlas, &sr, &editor); + + + + if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "md") == 0) { + render_markdown(&atlas, &sr, &editor, &fb); + } + + + if (M_x_active){ render_minibuffer_content(&atlas, &sr, &editor, "M-x"); } else if (evil_command_active) { render_minibuffer_content(&atlas, &sr, &editor, ":"); } - print_variable_doc("zoom_factor"); + /* print_variable_doc("zoom_factor"); */ } SDL_GL_SwapWindow(window); diff --git a/src/render.c b/src/render.c index ac2b05d5..c4357733 100644 --- a/src/render.c +++ b/src/render.c @@ -1,5 +1,6 @@ #include "render.h" #include "editor.h" +#include "file_browser.h" #include "free_glyph.h" #include "la.h" #include "lexer.h" @@ -39,6 +40,61 @@ void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed } } +#include // Include string.h for strcmp + +typedef struct { + size_t startLine; + size_t endLine; + float startX; +} MarkdownCodeBlockInfo; + +void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, File_Browser *fb) { + const float LINE_HEIGHT = FREE_GLYPH_FONT_SIZE; + MarkdownCodeBlockInfo codeBlockStack[500]; // Assuming a max of 500 code blocks + int codeBlockCount = 0; + + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + float lineStartX = 0; // Start of the line + + // Check for code block start or end + if (line.end - line.begin >= 3 && strncmp(editor->data.items + line.begin, "```", 3) == 0) { + if (codeBlockCount > 0 && codeBlockStack[codeBlockCount - 1].endLine == 0) { + // Closing code block + codeBlockStack[codeBlockCount - 1].endLine = i; + } else { + // Starting new code block + codeBlockStack[codeBlockCount++] = (MarkdownCodeBlockInfo){i, 0, lineStartX}; + } + } + } + + // Draw rectangles for each code block + for (int k = 0; k < codeBlockCount; k++) { + if (codeBlockStack[k].endLine > 0) { // Only if code block is closed + // Start one line before + Vec2f startPos = {codeBlockStack[k].startX, -((float)codeBlockStack[k].startLine + CURSOR_OFFSET - 1) * LINE_HEIGHT}; + // End one line later + Vec2f endPos = {1000.0f, -((float)codeBlockStack[k].endLine + CURSOR_OFFSET) * LINE_HEIGHT}; // Removed the -1 + + + if (showLineNumbers) { + startPos.x += lineNumberWidth; + endPos.x += lineNumberWidth; + } + + Vec4f codeBlockColor = CURRENT_THEME.code_block; + Vec2f rectSize = {/* endPos.x - */ startPos.x + 6000.0f, endPos.y - startPos.y}; // TODO use w + + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, startPos, rectSize, codeBlockColor); + } + } +} + + + + void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText) { if (editor->minibuffer_active) { Vec4f cursorColor = CURRENT_THEME.cursor; @@ -102,9 +158,21 @@ void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *e // Different colors for line numbers Vec4f defaultColor = CURRENT_THEME.line_numbers; Vec4f currentLineColor = CURRENT_THEME.current_line_number; + /* if (highlightCurrentLineNumberOnInsertMode) { */ + /* currentLineColor = (current_mode == INSERT) ? CURRENT_THEME.insert_cursor : CURRENT_THEME.current_line_number; */ + /* } */ + if (highlightCurrentLineNumberOnInsertMode) { - currentLineColor = (current_mode == INSERT) ? CURRENT_THEME.insert_cursor : CURRENT_THEME.current_line_number; + if (current_mode == INSERT) { + currentLineColor = CURRENT_THEME.insert_cursor; + } else if (current_mode == EMACS) { + currentLineColor = CURRENT_THEME.emacs_cursor; + } else { + currentLineColor = CURRENT_THEME.current_line_number; + } } + + // Calculate the width needed for the largest line number int lineNumberFieldWidth = snprintf(NULL, 0, "%zu", editor->lines.count); @@ -544,6 +612,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Render text { + if (isWave) { simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); } else { @@ -771,7 +840,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer {} } - free_glyph_atlas_render_line_sized(atlas, sr, token.text, token.text_len, &pos, color); // TODO: the max_line_len should be calculated based on what's visible on the screen right now if (max_line_len < pos.x) max_line_len = pos.x; diff --git a/src/render.h b/src/render.h index 321fc6d0..224ce89f 100644 --- a/src/render.h +++ b/src/render.h @@ -13,5 +13,8 @@ void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText); void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor); +#include "file_browser.h" +void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, File_Browser *fb); + #endif // RENDER_H diff --git a/src/theme.c b/src/theme.c index c18d5445..43748983 100644 --- a/src/theme.c +++ b/src/theme.c @@ -59,6 +59,7 @@ void initialize_themes() { .whitespace = hex_to_vec4f(0x171717FF), .indentation_line = hex_to_vec4f(0x171717FF), .null = hex_to_vec4f(0x564F96FF), + .code_block = hex_to_vec4f(0x080808FF), }; // DOOM one @@ -114,6 +115,7 @@ void initialize_themes() { .whitespace = hex_to_vec4f(0x3F444AFF), .indentation_line = hex_to_vec4f(0x3F444AFF), .null = hex_to_vec4f(0xA9A1E1FF), + .code_block = hex_to_vec4f(0x23272EFF), }; // Dracula @@ -169,6 +171,7 @@ void initialize_themes() { .whitespace = hex_to_vec4f(0x565761FF), .indentation_line = hex_to_vec4f(0x565761FF), .null = hex_to_vec4f(0x8BE9FDFF), + .code_block = hex_to_vec4f(0x23242FFF), }; // DOOM city lights @@ -224,6 +227,7 @@ void initialize_themes() { .whitespace = hex_to_vec4f(0x384551FF), .indentation_line = hex_to_vec4f(0x384551FF), .null = hex_to_vec4f(0xE27E8DFF), + .code_block = hex_to_vec4f(0x20282FFF), }; @@ -280,6 +284,7 @@ void initialize_themes() { .whitespace = hex_to_vec4f(0x4E4E4EFF), .indentation_line = hex_to_vec4f(0x4E4E4EFF), .null = hex_to_vec4f(0xFD971FFF), + .code_block = hex_to_vec4f(0x2D2E2EFF), }; @@ -337,6 +342,7 @@ void initialize_themes() { .whitespace = hex_to_vec4f(0x4E5579FF), .indentation_line = hex_to_vec4f(0x4E5579FF), .null = hex_to_vec4f(0xF78C6CFF), + .code_block = hex_to_vec4f(0x232635FF), }; @@ -393,6 +399,7 @@ void initialize_themes() { .whitespace = hex_to_vec4f(0x1B1B21FF), .indentation_line = hex_to_vec4f(0x28292DFF), .null = hex_to_vec4f(0xD46A7DFF), + .code_block = hex_to_vec4f(0x0B0C11FF), }; diff --git a/src/theme.h b/src/theme.h index 10aa7bc2..895dd42c 100644 --- a/src/theme.h +++ b/src/theme.h @@ -55,6 +55,7 @@ typedef struct { Vec4f whitespace; Vec4f indentation_line; Vec4f null; + Vec4f code_block; } Theme; diff --git a/src/yasnippet.c b/src/yasnippet.c index 3697e59a..b2b49801 100644 --- a/src/yasnippet.c +++ b/src/yasnippet.c @@ -76,41 +76,12 @@ void load_snippets_from_directory() { closedir(dir); } - -bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { - if (e->cursor == 0 || !(isalnum(e->data.items[e->cursor - 1]) || e->data.items[e->cursor - 1] == '<')) { - return false; // No word or symbol directly to the left of the cursor - } - - size_t end = e->cursor; - size_t start = end; - - // Move start to the left while the character is alphanumeric or specific symbols - while (start > 0 && (isalnum(e->data.items[start - 1]) || e->data.items[start - 1] == '<')) { - start--; - } - - size_t word_length = end - start; - if (word_length >= max_word_length) { - return false; // Word is too long for the buffer - } - - memcpy(word, &e->data.items[start], word_length); - word[word_length] = '\0'; // Null-terminate the word - - e->cursor = start; // Move cursor to the start of the word - printf("Extracted word: '%s'\n", word); - return true; -} - - - // ORIGINAL /* void activate_snippet(Editor *e) { */ /* char word[MAX_SNIPPET_KEY_LENGTH]; */ /* size_t original_cursor_position = e->cursor; // Save the original cursor position */ -/* if (!get_word_left_of_cursor(e, word, sizeof(word))) { */ +/* if (!exctract_word_left_of_cursor(e, word, sizeof(word))) { */ /* return; // No valid word found, so do nothing. */ /* } */ @@ -190,7 +161,7 @@ void activate_snippet(Editor *e) { char word[MAX_SNIPPET_KEY_LENGTH]; size_t original_cursor_position = e->cursor; // Save the original cursor position - if (!get_word_left_of_cursor(e, word, sizeof(word))) { + if (!extract_word_left_of_cursor(e, word, sizeof(word))) { return; // No valid word found, so do nothing. } @@ -276,7 +247,7 @@ void activate_snippet(Editor *e) { /* char word[MAX_SNIPPET_KEY_LENGTH]; */ /* size_t original_cursor_position = e->cursor; // Save the original cursor position */ -/* if (!get_word_left_of_cursor(e, word, sizeof(word))) { */ +/* if (!exctract_word_left_of_cursor(e, word, sizeof(word))) { */ /* return; // No valid word found, so do nothing. */ /* } */ diff --git a/src/yasnippet.h b/src/yasnippet.h index f99ff3bf..c3efacb1 100644 --- a/src/yasnippet.h +++ b/src/yasnippet.h @@ -23,7 +23,6 @@ void init_snippet_array(SnippetArray *a, size_t initial_size); void insert_snippet(SnippetArray *a, Snippet snippet); void free_snippet_array(SnippetArray *a); void load_snippets_from_directory(); -bool get_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); void activate_snippet(Editor *e); diff --git a/test b/test deleted file mode 100644 index da2dc379..00000000 --- a/test +++ /dev/null @@ -1,3 +0,0 @@ -porcodio -ciao -diomerda \ No newline at end of file diff --git a/todo.org b/todo.org index 6aa582a9..4c7710f5 100644 --- a/todo.org +++ b/todo.org @@ -60,6 +60,14 @@ activate_snippet on "if" take two times to activate also editor_backspace take 3 times to delete [] ** Editor +in M-x if the input is a number go to that line in the editor if it exist +dim a split the smaller it is [] + +option to render whitespaces on selection [] + +theme creator gui where colors update in real time [] + +function to search code in a specific C case map all variables to a string and write the gui to inspect variables st runtime and change them [] From 1b5a90ce41a95de51c5075901a6c398459f5b355 Mon Sep 17 00:00:00 2001 From: laluxx Date: Mon, 22 Jan 2024 04:49:59 +0100 Subject: [PATCH 61/74] bugs --- build.sh | 2 +- ccls_log.txt | 0 config/ded/fonts/designer.otf | Bin 133824 -> 0 bytes config/ded/fonts/minecraft.ttf | Bin 15700 -> 0 bytes config/ded/fonts/monocraft.ttf | Bin 0 -> 202764 bytes config/ded/shaders/cursor.frag | 47 +- config/ded/shaders/simple_text.frag | 79 +++ config/ded/snippets/{guard => h} | 0 config/ded/snippets/print | 1 + src/M-x.c | 174 +++++++ src/M-x.h | 21 + src/editor.c | 289 ++++++++--- src/editor.h | 54 +- src/elix.h | 8 + src/file_browser.c | 65 ++- src/file_browser.h | 1 + src/helix.c | 31 ++ src/helix.h | 8 + src/lsp.c | 188 +++++++ src/lsp.h | 21 + src/main.c | 774 ++++++++++++++++++++++++---- src/render.c | 302 +++++++---- src/render.h | 19 + src/theme.c | 396 ++++++++++---- src/theme.h | 19 +- todo.org | 26 +- 26 files changed, 2093 insertions(+), 432 deletions(-) create mode 100644 ccls_log.txt delete mode 100644 config/ded/fonts/designer.otf delete mode 100644 config/ded/fonts/minecraft.ttf create mode 100644 config/ded/fonts/monocraft.ttf rename config/ded/snippets/{guard => h} (100%) create mode 100644 config/ded/snippets/print create mode 100644 src/M-x.c create mode 100644 src/M-x.h create mode 100644 src/elix.h create mode 100644 src/helix.c create mode 100644 src/helix.h create mode 100644 src/lsp.c create mode 100644 src/lsp.h diff --git a/build.sh b/build.sh index 1aac5c0b..3cbd112b 100755 --- a/build.sh +++ b/build.sh @@ -24,7 +24,7 @@ set -xe CC="${CXX:-cc}" PKGS="sdl2 glew freetype2" -CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -D_DEFAULT_SOURCE" +CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -ljson-c -lpthread -D_DEFAULT_SOURCE" LIBS=-lm # SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/yasnippet.c" SRC="src/*.c" diff --git a/ccls_log.txt b/ccls_log.txt new file mode 100644 index 00000000..e69de29b diff --git a/config/ded/fonts/designer.otf b/config/ded/fonts/designer.otf deleted file mode 100644 index c503f3f220ddbfc87ef3575339d807961851038b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 133824 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

hd~HD;lz_yyrfbAIygd8rihY#ri;5;qg^mVT|h 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 D^J|&L diff --git a/config/ded/fonts/minecraft.ttf b/config/ded/fonts/minecraft.ttf deleted file mode 100644 index 61b4610bd20cd58a9782bd5e1cc8f217a9858f30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15700 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 g@}T58Zn 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

aqJ zL-?Bj!S`<%^EbO7Z2Q_cXaU4AU)v5L>+2&S-upVbf4x71-BY0@&_;-H-$2$kCPDKd zbo>V6zHu;wZ=%yTXG6=Nwa^xb@qddhf7=VqftEv?AoSTY0)qD*WbIi8?SYPl@U7_( z$9;?O-#Qe+w}(ND{q_n7oxZ&b;{Csa@88XUc>nLVLcF&Zo_iNUt02bjJsiT{Ple_| zYoI+L`~%1Q1N{DBJ+vD_=68_!oyE`wXnzR(y%2o*8PmTF8VKPZ@zpWLe4*}hPH>WFF?HBcN4TLgn#DsKhJ>}|IY_P_?M~B3W#I>1^(Zg z0rA=Q;I*I6_OFB(_x%R61lj=c*}qPQ)Ub4zl|<7g`1F zV25xR1i#z%gm630Z(j^;XHOAd99#%(fUxOD;PoARe#cs9H@lW2p+yij z-O1;N8qholIfvkP=x+8#r$Ni0t?Zlf`HyEqE1|t1{A3J-zCY=M82^)_A>55Ucdvs6 zLij0Tf6C`S-3%QI;b&8!rO9Mu@L^7WBz+HbTEWpj)7J|y#D3k5RT4( zmO>nV6j{H5$FF8X=<=)e&`t;*zee9*Bj?wfpaUV?6QF4j$K3<3d*FR+9K`EmJJ`|Y z^W(Fjwa`xJSO_QPK^q|C45G*2B4~3cIJ96dq+nm82**NE%!AfL2SU*?23id9S;yf} zu%0hE*Fd{M(crVj5{P3P{h{cZ4)MI}P$~cDzp+}+(hI}Tnudu#Uyl^v;^Y) zNk>C5c_9S<$@@Yvr5Cyhf*0RAEG}To1=~U~6<$+ULK~s|p?D}f9=ZbB8;XZbgEoZX zLi~2&G6+7?=0RIR@$fOw+E84?XBVx3j)dak+0b@qAQaOXJDoApH$#U*@rYT_P0*fD zT*8=3=0K~V{!m;x7DAs(`=CRim;vt@yq>W$6f-$?=28fmGj~JBLh;B2&_?J$C@z}> z&4<=P9Dmu}p_s+^S<9hK(7sSyJ`&=X%Q@z9m(6j#FUO7yw%a3~&w9gkTBG43(PLNN!vbKo-vxmWc<$h~SM zv=Q0^4TR!qcwIdU;<&4ihT^efpxMw;2%R3wadR8cbZ9x$2f^=gjCLa|^j#ODjvLwiDTEyr97 zziXF6yCC>K4PQKMF|-9@%+r@ZTcJatShxVX+vyq8L-C9?P=6?%36E#4gV5nwi=a)R zSTqvi_(gr8c=l9?W1o#4&lv`x=W{sjIU7Uq+y*os+5jC0#o|fOa)@J}2ao5W%kwzy zc?U!B{IL)`pAXOH^Z5$`G#gqAZG#SnVhQ7yEP>Ex$u8(vD6Zp}>sCTrq5YwF;Rt9R zv;x`=q4)K3Azoh(@9X!3f+?j~IvrXHZGjGj;s$u%uoyzt4ZMEQNN6qu?-#-QMeuns zvR=F#g71qDgksq+s25rWZG`$m@e(&ec56NU0;ShFX#A|FNYZaa%_IZFbICHSO#r^4u)dIScvyltcG?&@OVpo2 zV(oNjHMA!be>4VK0&RtkhT`pWq4m&#P~12bS_$pqtLP)3MbKtwAQbPI4XuOrh2ovP z&~j);DE_zsEr2#ccZcGp8PFPNZz$e17Fr5zgN}vb-SeOg(7{l!7BAkj3fdit^&_Fh z&=%-ODBe29Q$3pSJvCs@?0kj-i2W^ISK?k6t zq4>}k2>u^J-iMI?p|#K^XeYEEIueQx^Vx^tyK!+SKEm-IIUI^VI~0nKBI9QGf9$4E zY;J_&6B|Qu%fe86YFa4%d{QVrGdmQ2u`(2&+Z&4Qb3^f02SV}14WZb%JQQDD8j7#2 z4h8F~;#(s^v3G4K`p1RhpZ0~~ds{>CgUt|j9GC{(1RV>-57&g^wlUDoP~5&U6bI*o z;zx|RgYkDlhk8SC7jk~QIut+I9g3gw`e%$i%x6E}7>fVk_<?q`(Bx(H}a)nc&xuzV*yAies~HE%g4SqsEWA;L=eOCl$TN_V4fLKR$g@$GQN|0eCL!oM$}4)`sxMa98%T){CDb=*OY>sU0vO~>d!eaF9(bBST} z%uBmFp-X38I&-3tkD1tgX}1W@wVPy~=z|mQilH8?H+G&6;XDRh#A`f%lCHl?yT|i) zscU?quQ+IIi)ANzoA`73E7R{x&U&ID7C_F|cpFdgm074$YA7S|#=t85*SGS=jqyo3o9qgo(g9D~y)Xyr3XmP9DrA*cU%7@ zKf3G`2UGB=a88yK_vZMpaQuRJex!z;u^ zS!$W;(UClYVL6FBm!o)=H3&&AH-@i8l-^K^Kqs#V z46d{K1U9=2ljs66jThClW6_CTc^DEOO$|&`LaX^O@`$>CEzPwaTTlrn4P>N20(AE( z*BLq8WtTPx*VGneggo#0VL@eRWY7z*vfQxGRAI{VO5>Y;&%l6k*DTf1m0tIgKhlxl*i#%uns|<~yr!zid)Th5 zmi9_RIgJs#I?<=BX0k|`dN=(z|#Moqj6Y0($lHgz7 z+&Nx)hZyS`nvShwPxN)pGl*+&6+_iaWX60@d`iC=s9mhEQuoONEEh5~8$K)(dId6W z2&&|GT{QIO(qw6LS6tcq(qXx4a*scxO~2paHhjcW+$uilS*ls-wH}#K zoAk1ISo%1Y#n0yAI7-O!+wm>+7+aiFDgCeP&fw&b5IACp#ldsXdm=eUYZ=7|PZA|+ z-hjFub6$!t^kilY`CJC@8F^393f=o{-F%&%QD@rsUi ziAd$(R4|Z8=|FLB=NMeoKIeb3zO5c-o?Bu#$Um1d8X-LecaX1~P zEhw0!BpuV}m87Gs&5;!QK_UnK6Ph{BMjhLMini93eo2<*x0yn|=JITQgU5C`Fy73W z_PjV~@lWIF1C(p7Wyd(FC~2M&$qybgi*V%$MwQ$xO}%nkL5Tiiob?&8?}{B)s`4CJ z9e1j^ER`(>1mj|C!SA_X$*ji<@tI3X(2s?ns`J&@F0a~#40%y_%n*!J>k7>+)p`lL z5-!~D-S{4Fl(;a*)a*-nX1I^@m!nXSw?@ign0%VW*nFdUh!klGo`_UD5Eap`%oD(C zy}sfq96?qU4Moh!CMxrL)azvP7s%CUzb|tGAAoZ4H?5K!(<*hIq*Z>r<}4!B2CZh9 z-mll$ ztz{hAdoL<&1(@3WBk=fsp7{*co%3u;BNlK@^N#sP-k7QUcYnYq1v_JDF=Qu-IH1dA zGu^A|t9*1mUpaim1U1-Ov^A*jSNd8N-|mma_1T6b@-EseyU7jN z9hc=AteYd(r$D_%r4&o^JGk_^p$v07lNUV((oXYsoM*(tgruiyyG$M*Wq@I zjv^*!Dk_uB_KBk`laPsD%N50d2HI??PL|OGO7kT-;;Rd-`I*z;HC&Yun-vSRzO-8% z5!q<9SlaSUQ%@`SNKbvkpFPOYe6PiH$RfaKJda+@@A*nyX2b~F({^_;&M3?NBp%aRvn%+4N-7obRfFbjjJRh@4@A#kjMJN+a^r_Dmk}ae+-Mj>)H{$_iE#iIG z4-a?`KsLH|vd}-nU-GNGibT^)vb#N+IFYrx?MDgp3^AX2J+W9!u10w*e0NvdpbYST zHcoRfOBH05XsF9m#`{LTq@uj2ym>vc@ze{KS|4w*#A6W&8q?(u?=ggP>sM7f6j^a4eqQ%HiF|!0A+TW_j+OV- z*DHfyFA0&SYAAc+ri0t5n3zlKPO3(qsP1zd8K!OnsWB7fK}}Ru+&qWQQbli$w&fAx zN^Qw-d!jIVNUE4!$c=Mqr?O0_8f~_y_9vSxLl~RtiBHPT zTLMxXIuD|D)w0s@taKhT`V8BL;@g&UD{nHK1X|RXW&8IrGV*D&ww5h& z>&YGJHAnGLzY?S3$hE8h&3YtGM9Hd(dBHtF+^hJc_w!n&xuRQqwbHl#2kZ!=Xv``^ zXGvBKSi)JW;3%-w4|)xbw7G_h?mTm=p3dfc%Q71w3mt^YQdoNZ)ozs4z$zYRdcATC zGK1Mlg&xN7r&{Iv%L#pMu)5zC9*(=y zm^guhoRedqiBXLWcB%LuwET1~@VHdxglz6n|6o2wDP?)-7)y0_Yg@* zHgm1vrBb$uo#6%ntPO}d>s#fuXSSYO?8!_X^}diGolbf4p3M7WbTmAA?S!|yO5dXW zI=Uh)axCOt`YiTzUfLSVF;mNLIDi)8km04mN_hrh$l7PPyYD>O?!O`WCCvRKBLD#r~v>S>h*D`7Q24s3tS#u?AwEGcME){^Hyj z=VG@~rxk@A^;wJ|#^?IZudmsNFj}bcXx>c=dMm>7QgTbS@6E(GckZIkV#Z9hLF-%V zu|S<>URJn@Hg{1Ks}QNdGM||}$u|{0_sDO7-*A2_qCWSv=onE@?XfHO(o*{P^i0i6 z&$IaLiI$q%s;~3L1?{=3`N;W4tPvkwFX5i`dA3Ds8`hR>on_LQ9?o<&+!^w~9dT;a z*HAx!!_o-iK9~ z@|sA;q6~4Is_#e`)ylZUX~Jl%b1+SQtoTKY{^tBzG1|g2VYH2s3P+}9>ebp{sD*39 zP#dOome}s+MU?OC7L@s}SwTI9&f^F#3UBE;bEo{)G&cF|K8+o&&Yn2{Bq@&SJkxkT zpQBSPNw~QripL-6oQ`tJwHG!s4#j3^pE0P;L>VSyo%Ov)uaw3?`6FaozvlJMcMS~Y zsUuSI$D4<-oa4aKSwgzoWqvW+%GFibu?gF0X)0dIKnt5@f}G!d>eZ@HiG82yULEJw zt$4i9(Q438ecvf~okp+b96gq8^*ileEpcw)U9Z3QrB`cfzU89#YQi3SU7*%>8@q%* z?VDLouZbOK@Q+wl^|ZAQ6Y9KX)%!3neK62P0Zn+w^R?cEF-jOss_X2OEsX1Uvhguz z@B8@Hye)ZnGI*LsB@~cMjiy?b=WfZxlB>p~&O&wDdLGrTW<1A!vg}k)DQ0cl2C|dO zsd=&UHL-u9=Zfc7yW90#3I#=A;Mg455XT4u&6vtHP?@kqCn)4%dlk|=WP38!jgD`# z8zYs=lve*Zx^m*K!rEfcb4a|w*}*E_TI2kk#EwE zcTS??F8I=2K`zGH=KD@s*GhA1w^Qt;E^4P-u{?1+ zWc^CUr&}|FaHUmP6DKX8;AO~_YTRl*w5$E2t!W=r*XE$7??p)&aY#{43wc&9sJMtb z&Ol{6t!K&C95a>AO;=vF@JzPC%>*hnYI+W@_8Zfj+{#z6uA=Svm94af()YA^yVh3O z+v}}8o0x^nY3=;b;@Khnsy_Wb@RDxotWM_79OFaiCx^D^s5ghyQ~5*payqFY_Ii|R}rS|>TkpUz70%(Q^Vz<|~e z$G32utfAi_S*wY5Mvz*T@3&eN%Xc{OlwrD*?dKU&9cTn!=~}I^TWen%{Ys8mxz1yU^DOyF9hC>>D|N!Pz3IAMnXA&+YR<5+Xw$Tw5{D)| zYObp4FEg0c-%JD5Ock-@90DcfW4uz2r23uKiCS}lwVD>G?$#8sx@(^DLeyN(nsD6Y z7kRMm8@-Wo<{*{(zmJZH0g^*3b111NtUKF_pKJ? zL+IPgx2|u=_ulKPoUj^T=O3H(lt=42D)#O4Qyt6rH0foL=`}2sKCJt%$`4kD=Ynqj znzYf{QxT~Ya$M*7q`so;e{Dy}>a^A97QKvJlV(I=hnfoYv(2$3U#Rt9#OMFGZtW%$ z1HpKst9<+Hc{k+Cd=Mzj9 z$5b9gxLPFRH*m0}thY_MliO71Q!BB4p|kj;^^2WJCkH)OtX5d(L|jxk^ju-_n@@lS zNvWwDCkE_e(viJ~+3?l%64qy7JV|%TfwbJ*L^Zw3BKUk*vC}zqEcZHr%C1sWzr>Qus-!R42+kYR5?@ zt9f+7qYikFUrh3R7q!Z%(V9C{S(|k!^C@ZL7^tga7Q2nHN4=los}9ZeD7m;Q=2%}^ z2pQaR|Fo>z?uCz%mjsuS`KhIrH~T7<#Inh&?K($)=lf7r!@LW{TGiERP6IoA3SL>+ zy|R|J+L|KnXPt_VqNjPzrb{svsFFTy_Mk?q&e!xZNaAdtH_}xLE!tI>YT4I1HP2MH zn>0=5lXWeG?Oiq1Y6p`Z)78y@fpUJK+>)wNVuH0`US;Fjua<Nj{K)wqB@q}G?kf{jh=YV=83*kgvj^g1)EG# zjN0x==DfS9AFX_2Eh4ANo5JHbvbk_#eH{_AsYPeh^^07}b@{nvj~xDTd&pWzIuJi|%dt59Qw+A2!EWU2y&53M46` z?><*LDm}Qwv|9gk#%nss1+RLl-0BrN##su;WgY!&QQGuG@w3WQ$sb}}O1;!s2lyn< zOCQBD>EeYxyDq7ko7%5UTRCc{BGo48SwB&hbS&3rT4Ppv<#V}ovSt|$TG^Db(;6+U zPfPhWvXY%kO)}fAPjlI+T;(3AX;9Vx!%uTRoathmaBl93T%}|SwZvj&SO+OYnYk|R z3&mI^%y{i1R`cXm-Lz%W8Y{a7C+)#xJc~-dn8hkgxrR-_s`n6C2VLtSl9rmy1go@A z9uiVby+hIzt4qF>rim*Z=1DXy<6^a$RVBHMCpE+SZ@hSy&3Z%cz&+t#UgVZ^CD?kE zed)i#|M2P>3g;_-CVnZS;+!6*=HyRpzcXXm^pVXWO?r;jTyGk~l}D`$T+d3|N>R1k zezS`+(6e0g6RF((Jilr?tmaX5C24xLEjVif`e2>nWW9GhTc{X;&NiBw<;{xv${z6FgQ1Ie?e>wt3F4cvqY)r>vnfw#tXpO-X{^ zGM?rG%K&s5TGw`(4y~u^nDu%&&zg>{8aA~gnLmf?N?ofX79(5V5A9QHpW1lUO0LY0 z$jf}tZqBTHQPW!tT6NdE&HC4V8-f`QbdjCRXmL)o-rc^7M4bR5RvCnq*kgkcFf&R= z3%GvIW?EFBteu))eI1a#i&pVq6`|SH7qL-o+lba^va1?r`w-}WbXMBpkc~}Wcu)Nv zUoXqY>)an*f!P4YrFYrc0&7*bDBDxpjL2lCvD91SrcUTo*YCUTlFfBNS}imGtEXny zMd^gjY?PaDyUxJYbaB5$c1ArJ<$0NkJDO^D3Z-3Ht_UJ#fTfa0wxl?jzStZ2$@X-O zw{?`V-EO{d2=)>$YMSE3Y|nm1vKtG)CpFbvWHo`xCE2<=$nort`F@dVy`;IkB*YXq z5t+W);UuCqQ=qBMMS5hcQ+|!RuQ$mNe-atH{i?(C!~6ySzi&W{wI_p@%wcku{BAY7 z@>Pnh)jl+@dD~G@Iy?U4V$Ii7k?3njrSl<^lAkRzSaC*Ar?lW@#Rr{DkMUOD6f4hZ z+o4m#jtM0Pw>Za)=^!l>XGSw#zEp1MVk-@Z5sPE3#P~j6x^@ZqoTv3!6}*_|)%7l_ zCYEw)g=M8XF}J-%#>DJY9Vyq#Cd#ne%XqE0@x9HLhIQ6Lj7l?)GCLvEf|U{*2GYZ9 zL39fbMpe0q?xpujthy7pr(^eiAnJkdsV!QQsjgY3nE#RxF>Ik{Jhr3yO$i)e``w<`H47}F{?!MjIV&H2ryjPF4gVp3 zcb2|JHJfQilDITZhnX9Oh?Ln&PNoEw}1r^d_Y&_E{Zb+ZCt}{))q1V7!JX3S6IA#~# z##}FJM8cWXEYEVAabl-o*i*`8*s{LdR*yp_BSuT6Piz6WQjtA-Tc zc@vB3l8X!`hB~FQn`Pi%{*aK#P@UEHC+fG#Go@e>Qxf8O*nDpBY{EO* z$L=Q0_9gPOIY05gXOHq-GScK9`CAUO@;A*Re`aK_`KG#f#Kya?N(wLFin(7?nZ>-ux7&NwW}aLnV{aKF=N5U<2=t6(Z^TONq)JDQz!cZU3nexI|g;$~(ufL#< zs5^p(-ODrd;HiphsC*Ealn560k{|OQzG%;{4Y#C``5@lq_;2Zn;(0&Sp{D+=R->yc z=Biw3f1c0lKiOIFlR^AT^^yseK91F*%(sGH`L6xCm`EMlQT?`W>~Eu=m9^f}5;M&} zc$jq#o{m+|qzi!V55J;Bt&fx{ap&Jjrd#0Ge2AO>d6l+m1J|@tON^|m69$Nx zt=AHtii`2+LntgP<$T_d8r;e{rSl)G4(Ku3{%(whN`C+(pWch_)zFcY{gb27P^dUK zA0pA_Yc(m>nLai@2+gWfy1t^kW-j%tObp(G)caNSPSK{5^N4*?W@ODTHs_5WVwc%} z7r?#gu8}H!V^;-x;+zt7Q6EQ5i2beNWSyJ&SLpO6$R?)bD6bc*;x&EoS}VsOm;rTC zyu9hhfq9YYL+8AN4ewy64(3N6>3F4yC|L|xJCNE6;R{q~4+}2{UC8x&JK+0+v!-EGs(u$@{#wZa(>+f#stvMv6p+Ns`Yb_OAFAI~^i!X@72 zqyJ`u*_E!PH@muHcLzWDRQ`2t-iTP@mQ2!D4x?^yPf)WF+Nn0+n~r|-B4f1kO6KTS z{-Rv`sl5!JbMXf<8KXQwrbSZ|1~)4qsa)55k?k+VdXHQi>s6i*I4Ax83`uUewvnDl z^~{V2isO8)VWzRr>(2H(nG>*1$n~+hCl37Cj;2s=yF#f_^h$e~9d9^8+X>=ldj*as z^MLr6^)bUegM6s5z!2M;h#3Kk%8z8Y;BR@Fm zG{ih$w)<0b_j;nS<+&RE&xjTdWepMwB{?-Ap#fl+4%8*_v3Y~2;xpCPghF;X`)zgM z^3jGVG5wM|uiTH~fggya?UTxSyf2^FoXEXZ7`Yx3OaoI59dyfmfgX|%!YX8m*Qj`r zhs7RHsjG_j`A}2C1jjphC+bjQ5?}hrh)MVmRqd)VTmz(f zRKVCI9n>S>3-6ukxQ2(Sl>VBrt%?u7yn;vHs#j0>Duh+}CWN>*lT%C)g^RGH+=ycp zQAGvMdQ_x=dBVS8;&F+XsAReqEVq^Qg7PMaw50?O2u{l~LwB zGT6t&k;t_c+Dd%lfzB}}%IcKmL^VD-OmE~pP}a99kKAt8K(<$2&I=PPjGdTCk9uB^ z%{A{4!F~or2MPzZA2zRI7jw&MJUFg%aTKH|z>udF(Uv$^&BcfOp@$wN)8gJ|xe#3e zgVxx49im@n~tv*Ev)?Ea%Ez$K_jP ztn1L{$zT9P5zj`qUws(tl}Fy0*HyILMP6Psbq>Znz7jy9{K?@QZFZpwN? zqGm=kaQ~^-^t{(Oq!tcxn&R$72N33CtK9cmgU87|cz7RV1>9EDinLM*C z)6M?aQ_1jy#7XDCXJRd0M*FIFP2SCGtNGVvHu1N4+WZ^4R3H#<@~>^%Sb$PqRXx0A zRW;spt$L2c#rh?CL5#Kb(C^lA7Rcs#$@CdZ=a}RRubYcfKcT$AD%s{JM2b}oN1(w@ z4mq~N-J0P@-x^Tv3JY#2(rl)1)zq5B0#eEKdBgBijxjEAzKuis%b~oHbY`seKnXw6 z+3^>3w#p_BW$F4!vlBeZ4TBeKE1-C$F5=GSaqwYkJlSDQ@`O-g%Ut*|B8SzWcfw7J=| zcC0f5(5Xw-nQ_NonxibsOMFll(;Th%#x6;Cw*1YrMh>@|7c4!EvtGno^odPk^u5M_(UXty>+P(hW--Qpj(xNRV}=m!t8O5Z#?vy^s>hlORHN{odCX#l ze )jc(0-5Vb+MlV%``i^5}vS3RfIdychhJIFG!&aUq0GYER0QC>3?=LV}cXaaA# z3jWfs&ic&YlY#F;uES7n8p@LIycSn|TN`=uie@9j1+3+H4KKy<)Z%4(EIxPJwGUQ-RGG_q z$C19SMq?FouZ{5XTKUd|$4*UNM_ve0GtX zs3m^lueQ=A$T|gw9IK{jKho^=>v@Ta=e|YC;-!fB#)rI#m9Z3?w&EkaRX8vCDB2OP zaImNwpDI%{*vq={5}$bf1OGojol+ssyG=x(>6I!xx8y}0jiLTane+_32IBvp!Btv{ zCN9vA3AxVpfB$gx5}z@5=`#kVG0cPc7`HS2e?j*DV6Ykx$I)@5qlw-;^45QE1Li6o zQq(__p|KAu>${>=VbW89*4fv%P3Hkr-@%X0qIf1KFWcm!xX37O<-V=tf+tlV^*vnr ziimVhFzRLe!8?|zR%y;cw`wf`4v3;Qv>fyKHHx;T)9ge1k&u=vbjPMiO%KayS>S)d ztI(@IN4knpiZ4bOOk&@WeCU0m=F{AN7*?J@tuXbQ)IvgMYe=(CeU8@=X=iEgl~Vz( zasm5nzL$0>vt*s(?6#Ou@F?S?UuLNBAQpJXVt`L$OlsFYD+Vf_iih`P$u}BX^&2i( zvdfz*t(ss6$#qX-sg^>T^f$e0V{2c=2k8+%^kuW!dp2b}p#eyiD9_G4Dp zh3;~GFrekLQ?4tS=y~LwydZsix?TQR#lm{8JX<_pg9l z716r?(My>iq!1oXX(^lA`pmCAMP$qKmW1}jE?!wy_JXcx8+F)f4VJ;jd@UWKr;?u-Xwy;6 zMdqK_6X5Ui|5sGR%qJGFZq3eyC{!^frcajT{-4&Ok9eWa`QB&8`Br{SvFAB>;6CY< zJSx`Jb2%#6hkxN`=oXiVrmWWh4W3I;J7a^2B|qt0@k2kw3)IU>VP95?Qa#VQJ>%s# zihe3>bL)%;^0Co)m~Et-2~XKqYEoHP@kF2Y*Qt;jnj!M_PsCb8iO;IOW-wGJ;rn8< zrp(H}zo8nhIa_%PPQXWuLE4IPfBy!*Yg6T#VOnuEOj^|3$5m~&m{>+AIM!HH_+cKp z*Z<#_@MiIBsWUZmFqnkGBF*hC8rx4MhD zsJ+c-n>197N%NR?2+cz$u}wO-EuUK=U zZC2YEC4@W56V4Smzf~%FOl!HwJYnZ{O6<1cN|~N`Wsm0X?6oG$%J*Q@_8v;jWK~@^ z)q979=~d3Rwx8tlp{l3#Nq#SXqK)TrjFvs1hFhuT$zp1{WIeD&E@FW3>Q7bw;?dHC z=Xw>VABN&5dV8*OKK=g(D)v$Fd%pOjkp56XKW*CZXt5URbuNIPM%^VPbcL|Au@*Ao zQT@KoDWE?{!85Aq>PS>w$S|Erq&bli z59Fp9+iOMXacS-QJ<8(T|IR}*y=9`+8Z^*jtTzI;V$cT(fB~RV2|Mvc0 zC;8gsDYtT6(J+3^r_AAaeq0ezE%R(NKhe9HSGcpThSqty*@=+@JQc*qnTS*N)tWgN zTIkXe%B?z<9CX$x8;_rnZdwRq?r+6AecL^`*iL|gF5{{RH^&JxeuWcq7Mr{eaqRFs zUh7)wl)jOmYbmYJ%UrlSc5~jg4Pjz3l$#bLJheIt&K?-!!ddBB})6cS!+~ltuD@#?+s?km3hukxW_ETe+ zYl*yd`N-j~8*b)7k9y}W$_?!rDO=WU+Xu0nscKv5G0hg@SHml4FuW^kz?k6+Y&bre z*CyT;Sc@6^s1vyaN{WF|s*Y+O z8uO?a*XEkv$^JlIKdox0M$u;pW$415N!$9VnxP}zBh@)yT`FTuLDT+2JU&VAP^|Le z>;g2U5*PH*+>FoT`EDfW51snu84F|7s?@BCr^ia3rWP=c%(K~q`h!K>fd@a=9rGVq z_WSp;B-Jw;DVw}-q9*f)4{q-5=+N?dUY(N`I?5rHepO#ZZpM1YT%f8WJsnfA+PRaw zKg)9{uPK)430ZlbtKzZw4%!X(^w_mJZat}TJ=I<1vCS8t&H^X^dYQ0gUCJ5OS2}lx zuWa6oRv2PpN zYS_L{IgjEHOSZIkp*(Qg;yjvp*8I{(JdGtkHAb9>Z5fm36SJx6Cw#XCMn#4>FOx0ulzb%&n6GN{X-r%= zrRzbWkA|2_1qM6kk;ha%(A-`5Kr*xaSD#xvO%slCIqJvi=S8w}ov|hm|1`fSTJ7di z7vq_b>(?@uDu0ynv5pGQ*pT*MgaOML*&v>=%m8cLC6DEM<32X#*vaQr@iJg#acY@Y zt-AF(#$v8njjww4mU)%JRi=*F9mj!zd|q|0$hq|)kgnH1F^T=s8hk~10A0+PwMk0BMc{mEQPQsfA7ou z>A3W;<^E1J#44MzJIZZ z3^x;8;WzaO=3(n`x~uw9_8G(~-H1{8ef9Wzn)0T1kkplFXe^VZv-X4h_fCG(|K}21 zsHRyQ$vEWcdKY!OJX8OGc1i?Er3F}~)jPU4a9#p*O&gy$u^0pbO?Z#T| z@$s7Dkm#f1Z0a%9s2FOBktVt5V|4aBGUvj?xs&@SBqQs zt`c&h80je0YJBO2@Td6^zWS?mGKNC)iQOfRyr{P|;%PBbUt>JoQ;N@Mj}`H%R)wg< zKLxFVcnn@jzx=6j%TI9q*pJRQ?ar`#iE_B#cxTj>#b0R8-mY#-|k{JGG_vlutoh)&jX3O7_(G+_no-+bs( zIFPO1k(T_jPDbC<#}V_Uak_-q(O%U@<%)Dv?Bq-H=BchNiS{zK>*QmluUrN-?X_qf z$k>|KT{e2u1s@rUKG!*QiqwLt;&@D`!;il z@L^+GRBid;kH`;v>6$lcMB>+8OK;nnb*%lGUfrjrVL}8m44sv7!Ma%Yr)qe94w$Jv zI}4oSp!&@t!yLSn3Fbjr4EKs7Pm?bzKYIN5AkQnG&n+e~9%xw2$O;Rk%uM#>h^|u9 zbeM9J+N%A$nI%@Ts4CUcXa&Onq!8BQXqI^#$*LiA5k91QrI5of{(1_$qhdqHw5^WL zw^B60*xpYH*Y%xP;Y7cZce2bk*p_!mV^4T1L@^sl`nukk3_ALgW_-!so+SNamRHF> zqz&$K!)44#Re3PQ998B~^1bi*BtzUuCRd@cxpGK5tYXe=lA~-LT23;?B$Rhmj?Kbr zmSgsNh45A^K$8Bb`uJH|`As@g06)rmB?DN2Wf{(~ptH;*?surW`*VzBPY&Qj&Fbed)ss zvP!*A(${OdGOa1!yrMQ`b*%JW{pztjUEWQ4J4#dT*?dl2(<{-_Up2G@(@R>U@>8pLWq5mJUQ}K7*jlcGsG6yI9Rkza>c8*i3 zHM>r9G3B*!QQcHAuUmd%cJspc@8wLt;aJ<=Hs)m)i^)@UR&?kIIv?qaqNY`ow`rmkZ70Q zRb#C0HNQw#`BVO(VrCL8+SUQFXe1uFf4H9AyrUl6z9r?dB&c?tTrsP8(e~wHD{Hdq zKBVR_^P-V-O4oe4Kk+{vr=cU0bvM{v7!B!gVQ)p|!aRi&eJLzgXTy zFQuwvy%80-hBvuQi~ue7@gd{ovK48fB)phxJ61awwS8>aNS>se$JhL6M@^%Bq-4eY zJESE)^KR~^9OsO*!#KpRSjuXf}JIAG&NUz}|;>wYMo%~sB zI1VopS7CrFB2rz=WhX>|0p*3^xvW=m6@q2ByN)+hwW5z>eN|U4Z$&h@%?2h5t_`ip z#z&TiadsAKiHJ_B<3Y!gU*2J6=b<$>QMGFIv&4?@=~;$P@uiP;If|PZTorsWTbW~RUPh{0U>?I})lhSnX(9%A$ty!XUieG32_4cJ zuk^C&Nx7`c4Bo@x0nj!6MZ1pSu0;Z zX0)tCinzo>;1RzQj{oz|rMlrlGW6Yn{BvTc@phgh8(-5QGBAH99$*U@hOMNBG%>5} zoQrn3k;Ob%2npn)CTCOu?#X|?N2aQV&lGvtL=H+{-B69Rr$qAH&O^o;8^=k$&zw{# zRk)Z48Y*#qjw;rfYX4u??Fc2M_L3-^7&0VQ40KC5!q|9zOV`J!5?7J7-1KVW<82D@ zrc9wTgV8(kpq@t_)G6W2oQrHjJaO2pU-)wM@`@KJrjP%I`)rg)v1(5mWY*@$20nuzDCE_<7u%sS;%CROLX@N3vnzp z$bU~sb}Bx0pP@qDw40t7D(n>;t5{Y2mG3F%ou2!;PdcE2WtLRIoXQ3;OD!-x5+cD? zbd^bUKyspFj&f4Jp#~noxnB=t$^gF{JMbh9k*8zUtuoHW+YPZrS?YvMLYXV@upY{) zj8I5Ky#~boue)5^mEE6WTcO$AZp9?}+-*I@@ALTuMs4~)GPcUv%ts2aBJg3afu1Ku@*Dr*MSj!icX8KzA~RVlYupw*nB0%gnD z6yK7saYaWv56afPm$KOERk>n$?RBi|r)|DY=#i9s$`i^|dZnA@7k+=<`IlitI%N~oOB;$X5;aO)lVL+@`GH5Havtr;w|Bs_u(tL>VJ{75>zevh_rtxNJ9 zUWvDTx6}GwpZhdQ9Oq`)45c8n>_#2Y zQ3oYgS(-ejqdv-It?y@2k>wLr7>lg!4kZ&*SK{_k!Vvzj{9#1n6{EBc#-$)?~#0 zR}MYw|E(*~do(1++gvS$TwetaF8b{Q`Nw84&Pka(i&L*3$GyqY-VeU?e$9?H@2EdW zMMh4Qj;?e1O@TOG^;&Td_Nn)(H4zGqigNAZ{+IV%mi!|rcGaJ8=gwsy4D~Af;d}KP zl7K%nYsf9y1&QaX;oW5xqXAlg2lpMwQAq*jOtJi~6HL`l;9nhsf;!Cok^EN5vTIIY zkVIwr;9GTFh}Pmz)@tUca(74dQ@NUISHuPL ziO+ws-EzU>ZL^>!nC6D)U<6tdgdbwhM~u`vNpU5z>5*dOdWawSkGcTUZ0(b}nLkSZ z$8H4Q#p4hy$?fWv!nS5oD!UH%8)KDsa+dg{+)Hs%U!sgq_C-%|H6O#{{FX3> zvX+CDo{9z|qMqPZ8-><(Netxn<@3GOGqMODn}_SyN+HzC8C_J(H^fJ>@{D&YmBFzt z(JE-P-;`@n?gQf07mU_?ryM>r#>y*}7+A$HC)MOyetEU<)I4Y*>CNLteOG=OKCubA z)UlDseXfcZV4{v|@^SPCnk_v8gbgXrF{VX{koX(amTRsJvb2{Bb0t=)2~Ee1Mw5c$ zERf1go!wR>IZg#B@l*CH62?!*`FE~XDZ@DiiI=(8ZGXWW>^6X5J_ieY-W{VVUgdYG z%%iZYY-TRBy_pgNAjf*g_`l8*eVMPD0ikK1h_TigbX#>LmbThSIb#3oi;uO6AZJ@` zv))88vfOYEs^#NH>GuddNCJDm^;vo+8yDv#(^JROsN1nLh9r5co!I5;2~`e5navbL zHswazXf5+tiq?7%+PEXy;4~B7{39IU)+!Lr7g)O#*ZnrO{z7c8CQ~Aah9!vf5 z^9YKMd(7r#1;+RSLv8t(>k^jA|H}hAgkG`_PqbQwmowAU&DU*9|33<-@aji>sO+0k*nfwxg6(M`mWT6;}sjvti!Mh&!)fkU(#C^m?cTJ^2lW&&ZV1Rn23|S zEWcB#vKR>$;$o=7p19`lg(H(vTsWpNX1ig@Rw-nJa)N_=y#erSqLjnxax9m`U-O0P zp0dddH0K(Kw5w{VpXG?p_Z+Qi=_6zsh|PN6mR&{NN*Zxd(pC-Q`5Gbhc<)fiQLt6f5he}l*;f`O$8QH@AAO#yVjrho4X$XOGyE7}9LPVWTso)No>aRO$TBc%X~^yv!@i=5b>~ zTy@K84SksV9vw6rf>*ouF`C*12h8Cys~=t~H9}cx@`N?-=JCG{x6HC0QmtR?T+>uf*-pnxfY2;1* zqnlSzc-QkcX~m@h7sw7{R{#JewV{pO<<_6gnedMpKH!nF5Gw(ON%=MKqhlkb0INvA#kUbV*7{v5( z!|bK-5`BXF$|oM3I?|+paY(+X#l`kGFKmvvd|;K%V=lWa?)JXwQ<;OMeg2NQJALTB z&#>*eY4Im+;wn$UIj&Xvzz~D1Vev`DoW&dU9M5}a>Kb#>OvS*t;5GdkRoP*x@ivYb z4}4DivCw8SBB!Y5@vFzK0+fRscUHJ&UajL2yJV5w+w+L$zKV@(bXVDf&9Sw3VvGD^ zXq07%j|VaZ)Gy!Ql?q|zXL4B4OIVh7A~rSe!3*w&uQGa;y~f=9@5<>@SZ992R-doT zSL!>&r?M}y@y;<}H2vQ*8iQ=}wcppqyDn~^6)E1x+lUPF?(ZsIik?NV^pi7_{(X8{ zRV#N@#_NK5{xoR_UqwOhCOgG1-5lYSx1_OdiGS?5gsn86Rk75uJ`Hg0!SuAdG!~3< zKCxbl%Q(7LF>jJKdMvAOm5(ugO*J^5*~|QM4)PImT%SXsDgJ(rv(@)#lpu6YgK1^TNK-?2 zrH^`CkC%_m>XQXbh*CE$Xj!>R@gmj{OR@nT5tW9hsEK`opKKkOz?rP7LYLmLtB;Uc z+FHp_ujJ$%PUU^%);bNCnWoM(c_4`>A7h_i_HoAF@_T0L9yGRWJ$xl;Id0b>G|fYb zLYX(Q8IOLqSo#bi-^D)FaTRTnZ7Gg=tmidI;MUHP$WP~YnA5D*Req8_k@QI^!)AdB zq4J1TiPAOY6D!*KPDILym{aJ^`k>n*qI<9Y>6u~^vFl2Eq>ZiTm_fUa>9UXW?yt!U z+IdOE!}CG{a-3N0aE%O&_|tg!J+D$dBhMMzrepGONMRs!^BH6{JB3#e7!fb-U$3S7KCJvjb*+Pm{`YU z5KI!IrubUlns}HOZQe_JA5|jDPXCXtYxT);Lv|%ZcubWc`4yN6(c)q@mA+55n9o61 z$p;VF`rTVaW8l@-EYY358?uVs<%9A64q<;{G|^{X={^&RJ!T4-V@UhVx(6OPNIk&gOui*g=GCY7Xby#L8j!N;D z`AMsYxyUp2>Sga@{g3U)ISyi7GdKVW7`ZO7Hrbv|HOAL}I!wE!?D}~@sA`$!5Or{L zxAsW9gu7~-%VTt0597wXe`7u~yy7=uMx#Z_hRTmvidMXlmX}`Bk%gS$H#r>A~%6x2-K+QkqXIsNDLYx~+Z6dxPy z*l6}qKDstGmyegDz4uza^%>NC5S~WIvGTX)dbBR>@8(9O=V_sUn=*fTESmYo^I2)A z9_<3SDh_E})vYU2(%fwWW2esZ4Cl7qk{$YUy!d0;^&1~!&~#TuITe4afwAs*?si+8 zjql0%c|9x{RaoY_KKU|bplJy|s{`tiYdI0Yn)IZ=Sln$6;haA{noP76Z?h50#Mx(^ zG$=i~j|{J#Po)l6Qc86n6bEbg((%5om*v7ld3=-=_qL<26ubKI(kzR4gbK-C+q3l8 z&1~|HOGL8Xm;7W=_NbhW9icy|%^CEc@(_QFcF*Ilq`Ad|E$ffA5B**-! z9CkS+Pv)J>TZ~8`ORhtlLw6m&ZF|lKG_anmhXQkukuYn8t?Pn$0CdFoZv+FH<)-^_OKQl87u z+T7w%j*(as@2EM^YhzQrMvnQ-tk&85>~MK2w>6hj*_d=o1LZRH^FCHavBjQUV`TrS zRI?7Y!WGZjXo3hgFzV~M4o4?OL^O~t^ z`(Z9f+b8d`nqg=pWjv{eRYQEKJ}7wR!)p85rjILM^gN|g8A1yyD>I?AG0npp`4ivE z$;O-zC4URGZ_As=7cJN${-j@#tYAp|&74BW$bIGYBz#js^mgL#J}y#^Khms=r|g~A zlkKv07@#)jTa)zvNDr+AiQcDYY!BSt;^2H2m7H^#d@R<_EexzPEt}*a{r8J zXY5{iQq36M0L{*qjCH8dS__ecS9rDbf(FqDa&v2!I$u!xkp9I= z3jMQpF%kL7#VNtCxdtRflp-f?>^1%Ck9<2?tgbaS;#*}&v~28FBQp;&(L~tknlz|Q zQueleA89FKuw%6VnS%)(!jQvKyJ1VT*FTPPIlFR|d-R4p>tvmK8*M-yY{fmGVT=1YUPJ=j zUpYTIPi)H~P@b7=%!q5t40UB@G)dW?8AfB0u;$B%v++H?qWbZLAcFZe?{GgcZV><^+oFWSu6&RN!WtOZgsq6hqP zn-anwa4CNaB?I`6QY;y=!l>1m;%wm)9UdF$M z16iSBjF&ttXyo!R9sTm-lj<5YgL9ita2x-?hi|OQQD=e}kEm5a94dE-9mwsG&nOnq zMCKAbvNQn=GkzJ~v-V;yh#@jAC_SW6w#dDeF)hU?M1OTg!-F`C|D;E*JC*fAW|4?H zloPI5-NP&ZYm+7S6Krw$lg2c}Oj%DfR1k;ZPrq{Z#_J}mEY$|+eVh#lsbbwCua2Bf z=W^r@f8do|vM=+8qkWVna5_G!cfe;GRu5t~W{j6v66aRLqqb#)D&z=?ODoafY}fZP zy<~RCaSrq-okYuzk!Vax%mPJ$7UXZ}mn}7uf)}Gx%0-rHbdAxj$(pzUzoH$8G(fvZ zLB==op){b(SXL$)6X&=uV#lu=ag4D^Y!O?vxfZA*76(_f!+zia@^s!T zIufc#nMa-(N!ZByUWQ||YGOL%y&Q9c77OAfhgY{`kq={Ek;KR!1J>S)iHM7~@O_DU~xGIgMfv<%e=J{lNAmw%P0BI7aB1 z0Tcg;&t(@Q9TBFZv5=R7cky^hUR|A>&N&`g9z@=PYH4w{C6Pp=%oZK~Cmh3xX=WK8 z+LrneAE5nHQ}`8*voBZ>nlS!KYEBtSuI-NOnmUy>Bu{;1 zmc2yiU958{R8e6yAj;z=<=u^l{RtsHqrKc{Va4i8v7j|p3e_(XsJt%*eoRZFF%7%W~SK);}RX)5x}JCX^?L=-uB z7@b6*h?FgYUMWu1V#X8SJ0-8lEbs(xv9gr72DuumF#53Vd7}>HYHT9P^f5yMzKEkm9QN?t5A#8LAQas;PHkku2P0f@{La%EfE2s9-~IAU~e zG1_6%qh7_fxsS!B?(`$4BQiY@7uiOEX4nOFDUl?j z*EY|nRol`e-O>uhz{dEjLPR7FCgswJh!ds6<~`bo1fpjdS&H^=G$baYg*d#1%1LaY4O<9X_DBipW{s zi7dWs?QM}*86tyeZymtKX=7xhiv-x1Kz-$H0PTSYneh4~*)sf)9uuuqY4>cEq=m+X zl>+Mre3m4#0rl-pn$#sNMOnbh(?cCueV5SEK}k6sX6!NXsY57N&M~vWZ%nG60NNCJgSVR4;F%4~GRAaEXOyuq6p!b4^j04*&tWcY+lxO z3_plL_X1yyn>}!$Nj0J0Ir@#ysGmgOp)+H&W?)EFqCqe|cqGRiTrlpAn`*C+1>~6J zDwKnuSx6f)?L-D6c21X_G5w&@rm<$fX)BJm#uF$zd1f}a6|K_-IEu-bYvh& znBtpN&1%GMIweOm3+aNlA*m|4XIJtbs>4I`P}$BgP)id>8cfnb9zZ?`FT+4A@)H+RTAfmKt9P$`2&x z#+Hs}b9am|%yP4(VrvVzQ6@jG&92}op@5nY34n9Tp*yyc1nWkYJQCRDpVSZLbna=~ zIb6sB$OT;yS7b;2nfEyGj)#exXDY~i(Tv6P5a^9|g8@_>n(f_r8Cj!*#ZjYLSH8ic zt~rYI?b;v+Q5JC&LZNeJ=kkg(Q)$l?LaRM8!B1g*5u=rvLvmJ1-a!NBrRc`Ag+-BI zWgaF3%H5g~tjA=S;)}FUiD$&3RWXYZUo>Q(e*h^-qy<|zpJU@Ua|(jVV)5Q!;2}vyHIQq%Q4d(J1e-zJWkD#Jxi(PiefVLX(!=FQWXcWdkjs3M`lE6+< zsV|9flx-G2^7<9OB9kikg~N~- zr0pfaSGu%uw$S4G2WRNh^(*m*HZ4{T8?{l_P{ALifm;eLJ_=dwz`7(X8`u2n8VgY1 zWr8Sv2P{&cTD9^*eo6PWyP3_&crO{)BChelR}5#c7;MShpV8Vh#1HS)HnCd6hq3OC zaZko8zW2qB&1S7bnAEuE8F}jKRhJ-TM1OpPUSBbc~51-{TykyL?v=|!Ll0Gl> zC05EB6xXxJ2WKwu`K-@u4wb3M#tZ4o(2VgRvlO6Y?Nz3>XU(Kc|LP;zcn^BJbuGMG z1z1W7j%%(r(sPjH+EUKYjQ@>rhb!alhg5(qi?+G4Xq&!DN6KJGay|;{>d-LtD%TFk zkSW&_mz6W5qF;HoD9(bSJ+Gv*?P&=VJO1wyT|x3{K~hKR(Rlfh^Gn>2Yl`-zKI_t8 ziI3-8?Lz;+*ZYsU@da9{vp(Y$^a;z+ST8v(Af zE>c3p=@;Ai&lO9aiJqCgRQ0?R`X(O!5{z^sOMIq;}wXVcIj!#;f)aXA_um4~( zD?vpTsyJ!n6+1$mS$m;M_!L+q+S|mYNr#Et4qa*T_Mju6r8D0J#m4}`FOk7C&v}Lx zrn3uY{nQ1o2m;NB)y9tcNTJF@wL(4Hk88^#)QO`9Qbap5Pu7YQiS$vVNhQI$mSu-q zMw4x$eb{!S!nL(D@t&juxSl+B9s0#$2k1*U(h(!yCwr2Q)%(hv-md`DXve=r=2z!A z9D5|%6Srt-a)c7$KeaqK4gT{+968}_d+hjSWK`qKnP^8H?!xwIKpNlGJ}W%O%6~X> z)kjXzkx5T+c3tm25~g$UdM+)6S6ZlzNUqt3z1+E4>nmug9t_9Fwz!9UQC7Te_`#Hu z%EMY5dG{TIXQCI%OevLmk^=~Le2srZn0{ub~lJH-bd3^eZU((|(L zi@r`h2%}_HS(Ys@ZqMhhmbfe)F&DfEIn)e8DCO_+4!M?muBQjzG1seh$nP?RgMz&6 zW84u+Kn*Mk62LDq7IVKMflRu=J1)7}E_6y9llU&92IY|b36feS{iypopkj<-7mRa- zdm$zJ$+ABvjVgoQC@`Dt@wzC`WMYlV6m}yrl|TS(>-8{sZ16@KhR=XD<~Nibfnl+- zCF55oJ+Mz%&&C-_v>`p5Iul<-Py3|)Tsz3sT!TfMf=s1PZ7T-IFMimxqb=-FV=k{m z(Flmj@LGJMnY5HV#>foWv-X9a*jLud^+_Jp@NK{Bo1ZS4RrUtM#ujO9HDDSFzmS}a zFOnr^{o7SJQ3g9Pb&;pRcaWuIxh0GrWw3jLW3F*qgga+#_Ngb1L4ox@>Ky&y8aZRH zW}GFHY9YilIg-|eJWWPz=Q;VRlmT-*WOI<4i zXqwg0M(M_C1Fzia@CEHH=L<$Y@CC?}w#jdwFBm%WzTot6ELzD-s?!(1r1J$+zeGOP zC)6M*9P?L@P>xrnxtA}P>_7!;>#Dvh45!Yt+&|;}^1E_zdDYbSzv@b2`$| z!pV{Tnd^xBrlw*MzmjX-aP}ehe016X{+aLqwjdClmdhah+l3^9w3zwHBF)Gn$U{9x ztf`L{(Va!m6O!}n2){96c~eatSs z-DOsm64uI{-;n1(&6KMRC9e`xcoO;HGg)Og5H_$Nv6^QRAsKvOQBBvW^!h5SA)iW} zTkiFjTIy4av16=Q3?$2o3$wUHQBXv*MSMixi;c}frlN0Pck3LsEFn#s8zGa!;>Y5W zR`??%*+*?>$dIq0{3szsS`!WE#tN{5BC!KUqpqQmGWmnlL{pTZiknkWf*H!>M}6Az zsBtKh9C*xV5q`O!$%#<%0gxCGzB1^7ed78OwISy*lFyPpwHPEA08#s32Qm#X@M<59 zPklc~rU6T>`b>^nON^xvzh-cvGw1yW+BNjS(yV@&bK~E#oCndit>s!MpyvI^&jgD zx3oXxlF3>@O zYC}|6WL53LW^jX6tx32Vj+MK#5xG+~R<9~|6T{S&(V@!Q^sJJS z?+lB+YU~cOrksU0YkP{PoypE7q8I|V;tRbm(5kJ1wv;wWaYuzg31ZgDPUg-FgFKcESi*1nV?OPRq1s*pq4 z)a4DlC6d1g_{A7-4%7n;%%!DhUV|-(p`=yh2fkU#a`>%vC3ayt5INAMaSS}=YZ!l) zdoL+p%*?p{$H+)*)je!leLaNcriEi{_mM>S-9^c!3_T;zrei z{CMrR@CeJJpY!@u@dWU}v>z=vK1!D&rd-@X-X{{ERZ^1}rAaZ#$$z-$P>5H!V!_6K zX@~Y`&41jYT(fT@HLHFHOV+t(f2}`Jj;9*BfMbx79KEx@tm8r99V0`oedcVB>x|i`-1GbAx19*1VzqqhD|QE2|ZGnai@8m_IKg5{bf8FzY`j~{W`UgjAG}OFmjyl9~LtW zzghoI#wEQQLHjy4QYiKf&zPofNZyQa;_qesX3Q1jP0{1e_`8htoXb$N@~>N)LZt5Ohb;XV@7y^cla~P*J>VbA&kWuc zO@ECaxwe`)8`^|AJA;=7`D~!8t;$T=GEe60$kx|1#`Rs&mZO}mT`0}20k$jywr#Wx z{6b%}5Th@pdztD@`8HCsKl-aar`Pe|d?)<+aLyb8>ISVzdw`M4&YPH-BiZ6&h$aOR zhe(`_^97oa+g-d2xsS@DPjE<+AnT}PRx#wl9f2_v5i|R!T{_(WFT?7ydPRPui;7t@ zZdiJ(Oio?Z zux&-JkYTA_AzS9OSqK-(Gf5FO{w*2_pFl*#*ygc@mvFoF-$Ka&I+ z+H@VotWih?jqH)uCo>>ORpg>ZA)62oGgxZZ`YF~AK?`zFlS5dKgYD}YhgK#585!t4 zm%qw<5Z0v`KJ5(hps(`V(7+B!2dKa%2NqHwR#w0|9CXMkFJ;Q-D)LH9niSJ+wvh1; ztC-m}qUO5i3;QDUiI@rFE5 zsz4_8pLxjBzSB=J8ZCWR8$$;ldYQcsjMs03wd zd+J3JcSt2lj7NYdK5*?~X<^Punzbi?`~{`75Xw#C1gVjawj^DWe~4YdujLvJ8*Ywn&|kKV>R%2XSObX*6muyZB*b zf#n+cm}{8=@W(%nywD^5!?qX()fGsKw~f?C8|Hso*i1twTd|E?^B{WAe#9qCFQzwb znSFymhJQ3?+dX14xweog+VQ*%fA!`X{kEZ&O|3pOFXQMf(qfO$AvH;Rhlos8D#F5- zX~!{3@==cZ`L-qoNqae`A{ctE+6tVs^J8hSV-9fWb);NI97Y5Bug$Kw#dbW_*;eDA ziGi>byMClGPfFj3?Gs#HKOsWpQ3Rc1&Q)>_}XIE}V@6w>vf)J6uLg z>PERCtlc7>*%oMa0bCa|c`X~F3r03l3hJn5Mq{(i%i&EBz%d&8+H$;rmM}K5Ep0+u zGxBz{B|jP?a5fNmBmU7}Wl0&X$V;t-=d2FT3c-GOt)YMkcxN48;2)@#I4EcZ9QeHU zmFrLYqyl04A`k6Tu7TqCVLTmHtWijK6Kj!1d^mv>G7mV}D2};LMXmvceu|Nhk`Wa7 zqWh}L>oFta4jdm%b`&&N-9XNMnEP;KH+N5nmbRds21#5!54p?pyZ8HAAn8Nq6>c6# z`H9bT+N}7Y=#;jr{|xocXz5&;*-B~gh^t9^bp10|ujf8zqBCbt*asF;XfL@DbS(V}_3E*C_mqZ|iRuGnD+b0onOEm%P$Y8FCz|b~Lojf46$K&0c(7=5 zw3;GSjCIA2Vi>wK{27^2HW6n|+4YK!E_tt`q{~FpV4?&ufQmo3b7>OCXs>SAm5TDULtFl$@(zQs6(EF43il>N^BnQd|G6A zF{E@X{zxc>U`d@sn(Bi*5AD|@V+20NS6PqNoatNrgVDz5T}jkN^b55q#uxem`Y70x z)FWRV@c?~f^&okX7G&jMwT;MKOd?00@X>8&mJw$^mY1xq`V@MjglU_iR?`r?m^rND zCGSh-RR*vZbMga0bze7J_Wr+3}N4A~F&(R2(iM&ap#4(GJWr6P;;7wR?ioOyvJw1uzWml?WVtuDu< zM2<-rYcS_xeZ(yZ@se9&Ku3~iMjEj+d13?;K$Vny3%l47j_nTiGn*7T&3b~fD&Y>j zGS)59+`;4uyd#zNPjr53+CbX?&s=+ft$`0YQ)V&{iSmpKlFI=RddR5|-ldAfPe!4x zqsZ82aL-a)`iuPasqBjNU)?m0{w-gXb$ReWjt6x&Uq)WzkksbUSx+Wh)6iPZ7wn8(tXlIl_E#i?F{TT7H6MRTsXCJu!hO!mw7er{3deB}l z=T!T2GQMZ4wMHWpK1j#e3eJ#Gs`LYuBdEl-V3KBMIXsRdK(RndCia~DWSTZCh=H1Q z0Bf6~!)3%4iO4UuVLy_8oAo0DAc0@wG9@B;!$KLyJnJ|*Th=UDZ^z-NY8(`RVq2Pz zKC?C_%kw?i$Ffaw65**jwN+u^2M~-0$GD$sh!7Qd*GAbcimB@b?Z^;0Qwvm(Z zQM6~+H$6xKIc*tnho>4O01=6IM&|XLYp;=rkyLY7@dX)fivVcv;uvjhuH>|^ct)29 z6zG=3vCQ&85wSAorSTUjk~rW0nFCB>PzE@Y_KnBtmUiyUX~3I@pMo2PJgy)FBILZ+q{Mi;_SnBP?um z$+k;IMY%YMK%F^SL@#JtltrqdE=ee@gt4f!Gk-A4apfaf_8VK|pkj=4gf z&0+LhD&`loP@#{ts8|{7c|E+VD`OA!fN@>CgJY=H=QW&MKZj%C2ZJR}w^9bOo-6Gl zuIC1b8G($v$hD;7YZnkbb3C)2~Er*)E(jwY}~4 zucgbb32ML0qjUZDX`W6Uf*twfS=1x+x9r*oSjyaGZtMk*W&~CL)fNO3Jc5~lSY#&$ zsZ-#YbAPZi#vJ7wmI4hKYvCCw;K4cs)y&HXNqdpVM!OLkF>`6mZzRtEk0M)@a-ZRy z`anNiH^|nXB&P6-6Jt#}M6K*Z|IoS0()5AxoHIM~k82U=OEJa5fUWf68>hr_7Grx* zek3*;8$Dd#xg}Jiy;=K!WMt$3{pbVRif^c7C%RNG?qcj;<<4Z5<>q`>fqs#ZNSvrD z6Z{%WmEP6!aXw%hL5%#d0YI{YQ9+L9%P1o=9?2RMSNP4Sr#2??(ltf2vtj`Qc2i7{ zC#KZr#h=cTv6XZ>S`DS79RH*Q*s@113g>%Brv12n>=E;ui!q>D{R6nb!avh5Vs~DV zkO?e?2IBIV>|C}`gLdTDV1PPqNqzRJ79hXeB#`x2;rlY7L%1t&Y48LW+hWi1tN0>g z$bx+p={2l&{8%y!L2j1^^09ZZ#$F#SYC|3T89?pMaHz+MIYIu}6X1hbs#o`(07EiG z#7+G*w27>o&LoNm1}zW&)KkR81x96}LCDHm;v+^yG@>2)(%ySZEzi1awJF| zBM4U`i6v*JWvU_%T=L`%995ZVRPo1OwnG01Y?`RR`ehgHs-q`;2*uGh%yZzW0VER9 zlE@Ejk=r6AZmXpiflC24}1G{H>`=Ua3d+3X2k*N=$`NC|A9N2^;yg2zDHs zb2>##L3`erN-9Yb8uJGo^W25isnCb{8|^>qRV*U+o<%wntwEuTZqTRU4LTuj__MsB zDmwh_LZd^DEuc+gARJNeq6N{PQpFW=UQU5SCZ=Sx31yH7__0!f08}2B8X1wxP^fl8 z+R&%2n~*xOn7r;JGHx-tqmZnaI($Sdh6wxz?L!h$lUH`p@TAjDdFnil)Mo!UkIUS` zUWO)?YkZQnD(fhk1=Ewc3_`UTl|wMrC&1egB2W4Q{0`Y{RvQFH+bBr%XXlAV9ug~z zmZ1m!%X}6BF#KR$LkV*>g8s}so$7zo^A;sc(+Krd+5>zB;~4%)bRcEAMSfP($)GmQ zY0L-gQ7lLfa<&4!!B(<=;BOguR5fWsuqadtr8rdZH;flDM-pohEzpk z*N|^g=kUNg^a7uhY=kz5ApxS@1HJIu`mghc%w~+W$Y>5j$zmGiB$zIq8Hs`r4ZI9X zjt11H|G-CGi$c6cZAcf+Es~WO#(1K%Gb^L#F#j|5n;F%fYz@N1AKDc>*|f-MO#`Jk zo2bj!E&JfLTQ+)7(wVIDlD5_*vry6r_N>mqA8ZrrDCS?m%b_aDT0B<$O~RM;1+=BT zh?UVtsi!QyAk>O(7qUHdPGj@SR%|wtueDWcsTw+Ira7AJJX!jLjk0&`pE8ht>=J#- zTs1EZIZA>=%~qDGXOV)99@LqVEs;(I!DT8-N2X)#xu|0{rG_Q{k$7sy2+#^CEo1ax z3=`>YL3I(=7SLS8r$5@U*V(G|La(jntkw9O3R6ZCHPw#z#PK$>BTBQ=l5F5mZ7{%D zhlMR6FB2Q)`4f}x&xKBip}Jrck$j&E={v*}yd==tiN;4Ag&E_NW@bbxHyuGC>4of4KiU@e@X7O|^ZG$wXek)7C7h#? z9eYG$sy8uQ!85c7o;0ugs4GLusOJH987=tj<4va`Hw0j9av(Wf~`75sYFuqB1s(7`zy7 z@F6WSh&o@Eb8L*sT-fAUH%TgS4vzkdScLT(=FgzX%myT1c6mJW|3yj%ETT_r0&-9u z@V$(g826}k(U-Y7f!jFXw1pj!jI%Q{=OZfZO|@@hgyMlEG*hF`q?F~-kgduHbZC?T zhOv1Q;gk$eA=1JZEeb!G9jlz#KeWPV0sjXEIHCs$&C(R)Z`vbI8&O+yI+isGu60m5 zlFzB6C>7Bia80CRxT8?A44YKxl6 zG)fZ&H5zSkl$n?rx1i%}+_K{xeU^-%M6YAkIxvMfzAbAkbHP~v zZA&D=Hg$g?bPi6$c)^LfgQj`FF!9^q2yGZSE=F67g0LNW+9J%!ObkTlAd>@*FbAG! zc#H|cle9zsQh^oeq|~S2n|cNxXHIhXsI1mdfY)}CkIDOfkTdYSE8B7OWZW?8cc2L4 ziXn}2>Mi-$1Nvx#@CkSoERlTSn=5wgm@dg5Ws(h*uZGAK5rsL%ae=IQWdan&^702? z0dP?_Qk9?@dx&z;}<D#kmZ0@Ge$>z(#xsK^xU0F1(pIHx$<_vbY1|A?=Wqd?>Lk*wTG|>z3$j zQ?kU`gz|-}td{(0C;yC)Y3o?uuI|m}kGvL3|EhcU&ai)!Ah7XY^P6M|^dfnR_%nQ( zbn8Fnqf9!XQ@&eUV z+tnF+_qwBzhv6^tD^vei3WYw&}4JuC`cTy<^eJuWWVu zMXXb9n;vWN5{vcaou|zI(r&k3#5(<^>9J1TYq7pKVi}m^C zXKel4O1EFcI;S!{)>&ID)@K@L-+K2Zw_n6MZ^!gl=Qb?Xr?;H9ddD4Zzle3g?bBnO zzuaPdYWoFCKDpEF7qOO&O^$daMWTv{)Zoa`E=<%iVqv z>%nuT$9m8m7V9IcFWK_phTAV0skeyiIrVqLdwdaP?#TdcRGq3QPpnLjwR(%idQIaAx4wFl+b?3dJV&!f%^;cS@gK7&$)k`nF-6~NL5sg# zc}`EPnLB^J{IKo6$dus4a(PZqtXX&bq;bTSpRO)q*gZp+%X4~S&EE8*Epr-sGNZL9 z`fIRUp3@WS=#@X%K6m*Kw-zz%p22c?PEV}9`QP0;Z^rj_+t$TjgXQv^o><53{?3y5 zJ9p17V%R-{gjGyY-|^UoS#rdj`wpIX$r! zuKvo_MJvC0N7lTsVX$1D(-Uj)k}vH(W&W3U79g@6gXQv^o>-^u{lfgyc7Jh3*1WJ` zuw0(g6Kl!#&#gRT>*tpjAhI2UPn583p=EtfX#x;1NF*f3Zw z&*_PE*~$-WU$K1K)&fMfW3XJF(-Z6R`S06%#f#CqhdZ@=}LP46fmxE+J#@|>Pn*RFoc z*6UWj^$yoQzh$sop3@U+)si>uzJC6jcjgh?w!w0FPEV}I?0v)h8+N~OhHIbSGFUFp z>528Y?XO*V;55yn53UZhcL|wa;%EESKk$uWh;YoK1Ugsos)D z;dZvRRlc6%*2!k>%$ooF&cjw^J7y!pa(PZUUAgs}pX@pU3)sa^hUM~{a;)6?&7L{4 zby+h9mtna)ryMJ{e)Gc>M{mo)$YzG+@|<$4-1^P;#`(sqj^Do?X+E}(@HZrPvMTfh0-wlh|gV!1r094ohebN8OJ z=agc(Jf|Ehw|?{Kh3D=n#d3L0IaY4{=2NTAzq1s}5Jf|Ehw|?{1rPuB##d3L0IaY4{=FK;)y1f+35X;twjXvWuoKJWIlZy^Zu?%BVRd4; zJf}C-{F}aW`*iYhc}{Pv1xvrVV>&FC=k&%psq*#8bXYFW>5a8;$5)q5hvo8|-dKxo z|ME@KVYxh~H`ZxmU$|{LESKl>#yVrg=eA9U5X;Swrwk>!*Y2}Z>-C2d;i#UST4`$jdkTs@40##*`bT|1`3 za(PZ~tZORos7#0D@|@mS*Y0@h(&?~Vp3@s^)$MP-X*w*I=k&(9VeAdJO^4<3oZeVB zu6XUX>9Aa$(;Mpvb6<H&)P?G3MS6F=OnPx8Y(nF3{kbsGxE93Riacil1%EmmN9B zl^r?f$MQ@A+iuP-S2kzYk8mBH!<>7kE1P@g4_4*N=H24T=H2q$Tk>Vct#W0@t@`$z z`LYvm5hAaQ3vk8K2@AimD_?ff9#?kKp0CZxmo3`n$`)<=%8Gp1DYv<@Q*QgxSibD^ zn_SuHH|@MVUv}nFS9a#o&+f>Vol|jT=Tz>l{M<~TR(3tjt6Un!klTKAdWBHc2d8rUDY_nZEne3bIC-~1H$lDS>` zK=?Xf{-))#C$9(0Z;@}Ahd%4x@O`iO-zPatD~o$AkD^>;PW|G8A(w+DpM93oKFR8! z$*U+gSwDE?!IaxUm*0NLai3**(B)Z_tE{EG?NG?|kjZzy<-A|AK4kJP%3ao-?mCom zKjiX1AU*82E)Kaqih7YXyu0rUz1(N|Ibb~!shgFZFhx>+fFa@ql%C zpX;-zS6RFM>HVSC`%S<1TF>`N*Y}&gi+bmIh9J5>^?twW|Df2xy|#t>-5!c|!E;8z z+}{Vg_`R`@gJvfO#a4cA?4@WoJU>K}}~7VVbTLj?nWNOt=NXTOKkjt`kF|H0XF(XM%IUeNwSwCg`u`#$7$en@To z57yp`cF*fbgJ=CA+x;KB{of~kaL9e(58fY&e!**^gBSlX_{ATMf81w&a-aChAC12h z{f5{72e15N@|!<8|G7{7=sxqMKRSOZ`W5em3EuX{=vRNV{&k=G*?sD3f3*Hq^gG@+ z7Top6?00|k{&&Cl;eGClfAs!X^h@4@8QlG+;Fo_g{&~Oo>HXrXe=`1B^jqHV9DL(X z$#4JU{P%wK;`8YF7E-?82``W3Yo7EE8~O|n^NuOJw@2F++ZQl0m<-8a@kic=wCS+z zpkr|!s~fKqGY^|X&aeetpGmvvh%LZBs}tYfho_&8t_r>7`g8ou;X4yA^z~QXr@!Cs zt~+`!^q=Q>?sCxZ;4&I|(@{!`mz*w&I%slonKuJ8UD1oC>FMf4TN!yC3cF~`%WnQo z(0R>tbnY9i)6m<4WG~eox}AI%+yT08*cZC@o%ZSJ@6AF97hXQ{Iyh+)czM#k^0I&Y z>=RGZvQ^4i32#nMi&lcSf&Jla|M}Zj9`}XK9-Nl)n%Cti^TF@>{pI(-c-{}b_mTCU z-1p$$>HDG`E{bWS(Ni9In>b@DWb(8FmC3!6%YMsdzr-`Ggr<>^ zvzxPTg^ZqcZ)9}u<#Zsj+Fx<)gT$tlS>CqJTMfBA|K7^&;K=R(<#zxg+$SmSgB+dx zU9bdleDT4Me#sWd|Mdr3{)a{f2SE?_QWg89js4Jv^M^|t z(8t>jg+30QP7aPmpS;hkSPmV%_fYBR(CX=+>FS`UYri$NpE`4Xb;S(m z?5;zpvqP`9gQ>fNrM?5u;C|~c?|WD7gdRU}sP%Z?=<*=z^B}79fV6r5dUgJ}@($?r z?)yTo_nmGJzJ3p`iVslB2c+k`4_~thy8hCArR)1v--kr!2VLz4toZ}fz4P!aiKQxM4T! z&*^Vlw2B(@?eP<>=s%W;?0O3mRrS#qk$ZuC5GL#w&IF zYgZOlR#s~GZR2~iayIrGl?nVC!;woW=i%Q_rHTDUWwNrSaxSiOXjMjVG>>sLS`OgY zwJ00K-vH2Sm9=P9xq5KCUT-g4S!=gzqh~K{OiYZmFFEhLq2@$ma?QB|t&#Jz#?_+( z=Uv+xZ4Hdq)}omQDOdU!P(B2DhSAG-rSh2i(ByCp8&^sH6Y@Kb8g+1U0cc)|-%Ie< zjjG4bM~!nT55(UE*t&q%dR^5Tow%wsK2%?L!MRHpUa~Oj9oy$GJ?DYvT(I;4RO?2p zWHl?58$rQ1W5zMR{5gb;TU71rk3idL$a!jSKGOu!MWq#$j%JG#2l@lr_;$7M&Ln@0Z z52!2-4i9DpM+8R(vx7OoQNhu{+~Am?FPIk`8_W-m3yu#K1SbS11}6n42MdEm!2^QD z!70J1mCJ(Dg3~LP2TOu8f-{4&g0q8jf^&oOf~CRv!3DvE!9~Hc;DN!#!Sdii!6m_i zgNFo{1`iD`3swXV3oZ|?2p%3>8C(@SB3Kz*9Xv9)CU{hEZE#)i=wMZFeejszhTyT4 zF9webZVVnDtPY+KJTZ7u@Z`!@f~N#e4f=zdf?BX97zhS~dayPa3K~H(SQo4hhJ%q{ zG-w55!Og*V&<-Yo$zVgUG1wGL1)GDX1%DPiJ^1tB8Nn^VUj)w#o)tVh_{-oq!E=LK zgXaZ*6+Az9LGahX-voaf+!nkrcv0};;3dJ|1%Ds>L$D?I$KaoWmj*8j{yF%U;9rB= zgO>-d2woYyD)_hH)xm3mJA&5+uM1uuydijF@TTC+!JWZdg0}{53*H{QBY0=bU&!Ck?Jf)58D2|gNZ4?Y%rJorTLpTQ@CPX+%K><#`e_*L-h;GW<&!Eb}#g_SS}!!Qct zFbUJJ8qNr3hKGfRhqJ;X!Xv}k;hgZO@aS-Ecud$A&I^wX=ZD9I$A=5T6T%b2lfsk3 zh2f&`0pa5ClwD9zBNq9zhW_VV3c6d&BZg^g}G(11NAiOZVC|njkFuXWi9zH0% zBz$oAknqy*q2XoWitu6K<>3|K!^11XtHMWwE5ob9M~2sgj|#61uL~a?t_rUY9~0gX zJ~n(@cw_kZaCP{E@QLA*!Y7AM37;DFhc|__a7{Q64utSHiD`yTY%9Uk|?#elz@5`0emJ;qLIe;rGJt zhd&5^82)egqi|37wyqBu&T zG^$23qM6ZQ(c#go=!odZXm&IwIx0Fknj0Mx^+ofdW25=eanbS7g6M?k#OS2xk1mKVj4q0nMGuTFj+RFciY|#B z96cnuGgbWtHPNG@YoqI;M@Oro>!Zg+H$;z( z9v9shJw93;Jt2Bx^rYy?(Nm(QM*Y!EQ7u{%4Mc-cJz5(LMUAK#t&7%2!_i1I8nvRa z=;mlVYDW{%WV9jL7;TECqRr9MqCbnC9{qXrjOdo=FQR8g&x)QM{blr==(*9Y(et9e zik=_6Ao}a*Z=%1AZi`+Ry(oHd^pfcBqQ8&+A=(oCWAsnaOQV-X{~Y~G^smwF(aWP( zM6Zlq75!WE>gYAm9nou}*F~?7-VnVpdQ5t`cAYv`fl{S==;$R zq8~>88~rHS6a6^)N%Yg`XVK52Uqru*_D25~{VMu(bWik~=(o}D;z}IEVI0MAoWyBd zjc3F&^<5}?$@saWDcuss&d~`fFJ|^yq=f%gy^W)><XN%6_?!gx{q zfOv6yN_=X3T6}uEBt9cPGd?RmJ3c2qH$E?38lN9u5MLNy6fcV(7+)MOj~^6Y5yQIsFN^;<{+IY)pz|2_Udye< z2PY3nE=?YqT$Zdz9+q65T#-CHxiYybc|@`@xjK1da!vB6$qmV4 zlgA}DCXY{6Cr?P8m^>+Ya`KeqsY!owQ&LOTBm>D{Qcu<(-j=*Qc}McjOWvRSd-8!~Tk;>t2a~&!4<#Q?K9YPi*`9nX`FQe)I@;}K}lCLJalCLFSPri|SGx=8X?c_Vj?&Q14 z_mb}?KS+L<{BQE3WKZ(ryWm=_%={>1pZd>5}w}^vv|E^z8JU^xX8kbZL5idO><&dQrM8ePDWVx;%YQ zdP(}=^dae`=|j`Y(iQ2$(#z8;(ub#4rdOqpNLQv;r;kjpNgtJ7n_ibbI$f1spFSqN zA$@H6xb(*K@#*UH3F#BlC#6qLpOQW`?N4t?Yw4PFARSEW>DqKCZKTa~UAjIUPDj$w zw3UvfH>cxiJDo@;(+%mybW=K&Zcd+;{#p9;^v~00q_?Dhkv=nhR{HGpFVp9w&rNSl zpO^ks`uy|->0hURlm2abTl&KEMd^#vm!yA}{(brn>6Y{#(|<}|n!YUk=k#CFe@$;s zU!J}qeP#Np^xx7~r>{xxNMD=2E`5FahV+f;o6(x0Y3OMjmJBK>8$H~qi#SLv_Qd(z*ezfFHvtyF_*SdFT2 zHL0f6YIR0+X7#Y@;ni8yBdSMMXIJM`kE$MBom)Mo+E<-dJ+?Z(dR+DR>VoPC)f1~H zRZp%itS+iPpt`tvO7+z0Y1PxKOR8s7&#azRJ-d2N_1x-t)uq+*s~1!+tX@=IR()Xg z;_CA1gQ}NQA6$J%_0sA?tCv+*R3BEoyn03T;ngdvS5+TTU0J=l`pD`v)kjsYtzK7s zbahqr`s!n6eO&d%>f@`ct52vtvHGOyldDguKDF9ky{THOu9;KcG%#EnsZC&F z)jv`jUw`DyldTE2d-&+&$eQ|if4ey}diY>#81qHho;6kwZh`T!)xt(82omKh{uJIil@EsiV9jyBfuJs)p@*QmW4mN!U*ZB^v_Z=Me z9USo;9Q7S+`3{cx4&LlLIPN>x_8s)EZ0OpXsviHX%` zZK#h=GzSpH*3`yL%*z!UQ=4cG57v(yZJo1byk1-1-yW+C)Q@Y9vTc2^zcU!m%tGv8 zW39>2L5Z1102RS?U`qC8Ow~ta zhmAA`##@3kYpgkp?TyOuNON!ybPcv93W%-I`hpR7_T;daxiigpv=7`Z*f2Rfgb{Bo zVu%P7&=}=vP}cZ-UstReC` ztrx~Xb9`WOWbJT$Q%@i<&{KN>W%kswyKx#$ZB1)K{a8O(eX;lWfO0%gA8aDo@RM4f zRw|}O52=_MPAYz$O|^_?KS9lD2{JW$5M*jhN06zO5j5W`#rj0UPwA*qDq8l}XidwD zsnLTMQ^WDnv#TB^XMi$p=Z;JcPc+Ad8K#)AGSWQ2D*@B8J;A8x?|yPxPECy-oSGVr zQ@F#(hR}+oa_^2r=Bq!}gZG5c1eX_PH6xDKU_9&NLPbqKjSnL5J zsx*%6BO(((kB(gA=<`uym05rHIi2*)v(=hWfe_%A>V5EjTYSbsGLIr=IGF6bn zZm9cM$d~t|qBVq!YJCqXw1S@sf39M~MwS}+!ctcye~35Lkc?{DY|T$UsQBUq_}!rlaF@Xv^f^9I8!BVwJ18 z&P=n6)ZKBvtk>;}th*|in3naf%eCtbR$1DcG;4TA3rZ?0QFsBev|kr9+bA)7W>u z+%E-FqjXrxm-`Xg)6kGF_lFZx!_5(WiBwl5zlGXr<>ACzqeHH?PML+~%l%TBFk!6> zAz$uCFxh_TAe1lndx@!0?j?l^J*g=55(6RSe(jnXZes4!ZdWD0$C+x=d0ct54n1!) zTI!inbyf27X(mv;t+=a_f8g$%jQMr5c^c2lm;3uMHL?W3_*5Z$b=K)gOKBW2C{k{s zU!j-b7FK-QW?<{k(i-Kn(Q2(f(Hn>-xU$}EZd%}(x_6XyK)1$l(xY{f7qzx_94m#R z{evb2>}bmA>v)^zUHq$U?SaO|nxUwpsq|X+GrP8n*`l1Z80Tq>MvJAjku`&6{;a8j z@uNa5Gro$*^>oH?eaP={X6!QON+cHbPyx=yl&Sz_C9BQthLOKHf$s#{ZuAegT4R1e zZE%7r0p47)j9uT{=(nBt())b*32GXKG%%sPs&M^wBNn%|xuI^_7G$3lo?8IUPU{Q} zwpI^Tz^XfTgh@U+zaR6PHqie7PUN=&2MTU+zaRgGebtzT9i| zljEa|4*oo)X6E}kI2#HImg23^5lHOBxGc-am;1T2ldCd>e7Tt9nJZf*2M`0iSMG@D=cM(eKSm)%rrs8L)ZP?_?$U#5AR@M%0>ex_F*-cia#+=8Rn z^+;Sz;U6hX?!o-Q*FIP5&yq~M>X{{V*6|~msM8avvyR{5OomvV+ZQVM*tTm95Sy>q zh@Tgs_=>INpx95K5r__y{wiicyL?TfP{E&t87`0yo#nM6Lnlsa;ADY}tL3M3^JA~i zX7lBKj!dSi9Qo72NnT@9l0)f;vB8gR28?oP6)N~KOq?ypC{*xERDJJemwok5)SAP- znL}qCKTT$Zp`4~d1wV!{_Hv9ug&w1I&3DeMHaym-`3wS!rySy?+~*{@iHmQ}Q*)+n<$>WAr(PXxe3Ko-+TnV;-CwY5pVUkSL8~}EQuFu_>vBjC97BTqPyu^wltA7KlSs8%?9B5@PtqN zrr6CUNUSfF7)F-ZLqa1yD=^XJ&NYB~`D& z5&U_PW6Kv#j8V5n>O=M-_JTo-HJUvngzGNla`-|MBOwz)t%Q7uWw9oO;PvC8sC!gd z+iW+8Vg``{Rhiowx@_HE(zNRxX6mYV*736G^Z5B5A$UUoE=U~|UHgQ=3%w^?bg8!+ zKL5gD6$j&V56yTT!z3m}bMggbNf>-rZB34~o6xAw+;eLqJ?Prdqikc3vZ-Ern)1w;*T1}j(!u7Xu!QTcuFqw*( z&E&C+0<4iuKs^HuU>n1VIU;o6#}T~z5Mjx|2UtfO=B(VjB0UCK=Z)~<5_zE>v= zU;MUn>hV^aLnV`i9y(p$3*Vb%CLWYIBJk>vR1S+n0WiggyH!XBeg}Hg_uwGXBXM?+U}XzENm{XHD8ZwtaDdX&(UMG(N_ON zeYoDN9j^zhW=xlo`W@#jT2r4WX*5&=fquL}45PIZym)nWcYkM_(b;@|vob1hf7L|I zkJiLZTz>l2*T%+5if|*?VC`5h4I`8Od*! zBD9Ixq@My4bNxMGeD)U%loddwe%d4lFkpqDQw+`spin?_^ED7-^A(7xncfRX#?XA7 z(9Gtkii=JBeT#|taA;sYn#8<(1!7!%o}Nc0eMd*VM>knv7ic#|<%1b(`j~}5o#dfp zt=t8ZH>yH6Qs9Gwt@*TIEX~&fcIG<_EAt(Ojrk-h7G~VPNazIp;?x1$>@$qB37xlB zHqA1Ftd<^MTC267tY~muy|ip-UHz1@c9Xcu2X`Fdgj};6U~qGNX&JzpDJ-gvbL;>{ z4y}}lsb*tK0zAm&>F+TuMrPq`YXfRQ#>d zMq}k%*T+j+)!U^-6Xmj+ENxU@TUykpmHPTbyWBvKbCC$zWMQ zvkVKKR)V#;UcyMz>8n7N@v#!P^=16mhf7-2N6HFDODJoVG#D%65qEC-l~Qk)6ik#! zWwN9}eQilWqvi~+AV+voNeTR@qy%2%Jgk7$Zor3JTr8Aj9^@RpP)`3TX_|RYi7Lt@ zK2;{CsoG+{Dhe4&i7cC~61gBdDJem2@&JE_xm+R_0SbcQ@OrMlby-?cLitp)q@a{= zBqSv)Ass1EB$JVnMo2|U zct%#SgTnRpe6@viyc8h2>Xjm5DN9a9WJH!AcGYvn)IlRwjcW4nm&t`08wKKA1?O6& z79R^4SVq5s zqBu2X3aCObkw}1=Q|}rEay^`o1N!#I3sOm1{uR(JM#FG?1_3nCRfw#QTif z65HskR*Gk@e6g&S;B{7W(V>Grd#>#yzmeGD^RnWS_8s~^C#zpjs)g&QUCM2zVoSK~ ztX8U5b3I~Dy%y?}Qf6vRr`OJEXJvBfkfW_=9t6YtWSqShWaz2s9J2!zxoxSa3!vQ< zODSdk+5uWZsi$UXGO->@jQxZ41-0>!x-4LIa8jFEQ(CsBK3ZBf)Eqg!40Etn+N?g% zC~da6R$5dqZ&jZtZ8gyFuIG)%gPh>pK9qxQqV^$(3OkMlJc~Gau+8X9#P51P! zg&9C0+?unn2x_kHLWS}Y1iO+p2zB%Q-3``Cnjp-TG}&A$DX5pVs85u%m}r&sj^I{O zg3#uKS`Z8aTS+5?wGs*j%J@e}D{0bbl@zSYMTr7s3}z)nGnADOjX+k?(Nwdf34&Nj z2|`#2*oHD4Abgd8A$XOr!_ZaI&v+Rc!d6K?2wElmFl3c9Lcl7aU?4XV74*YkRnied zRY^w(R3#m?${0eB>T-Mgv;a6_9%s#(S zN5t9KKQ=i!FoEl_^dYl1*VdlkDZug~9vj=9y!j+g;ppUOf1|c`a($zAv?9!W zs(1(|(&rYBAo$dWJB|(3fH0?6uTk%S+EClj(QI>VsyW(G3)f+E9GU1kGSwP9w%D1T zZeCyOBp*jQ`oy{Oy1(^EeWasj9P#!833k-PkzD#~p2DLcarvTsbS2bya##G7i4%pP6e>K|<4-97zvu7({yRL2`~cnZ677BRY@ ztY}TGylkjP*w9o8Tx*w-IntxuXl=Zd^Hw=` zcyRRzWm4IUlP9ILjMwU=Wq5~EY1u>%Iwwa9}8k7hksXtc^9 zr^>}y!$6!-X@|(sxt)g)Pr8mFj&vPE{OE$KcUMEa=xT~M(RB>*p$pE_6!D;|DdIra zG5CMiG5CE~7p?AU@bhCjg+l-C!h>IT9fLo29fKct^@{al@UyOp^sg>N_*Iv58r_10A9YpR=&9x*1^&|2 zbZxWi(9~#Or%LL>xCYsIy>S{d3HCV!E@E?G35Ha|g=GwmvM+T?lw57&k!p_3up;^HNJxJWvdhCyf13~{VT^B_EIbN?V5 zv460rp%&u)FjzsfgekO&IQ80i@j$aRUi5;2jbewz2#Qx)3>2f(0B+41C{}7Cvn!4n zdGSq+7yU9Px~YzEg!{d~0Nz8<-#LQZT(qc7##hX{hjMdr)0cTvd_BMVWNZSDK1M{y zH8D!4jStr*@er%2ku@!=u89pzs22lV;V7Q&F~m{I94(TzzBmN58^!%r$M}M`ON_4P z(A~y+YB0nU{i;~n>{(iG^lDohC|YO{nZshQJIHFi3VXI3?A5Z~jWRxVeXfhs>jA3QN(shY!dt zw!H7q+#hIpH3BeCN62o&^WB);S;voL`s|6+S;voLp1#%-sk4r`3A%$jbL(dL16m3d z{M4A+i+fVjS*JIWy|l(BYl~#-_#fNzqUXt#t zxy=4jwL_>s($dwN=6XC40oTJ1v!dOqy6tCEj$Yp0fS-xF<(#Ct#X z))4M0`5rtXxp1eGnVabgLvNvC@qt(75o@K@8#uLuXHN3jSSB0j7|w7qimwRrJ)lBv zB=)4y(A^*tgZSA2@+?qa#`TisJriqo`GM<-p?7JIOG_jMlXR4-I#Ez@CvZ*!A!9&Cvh z%u{jhC|uQLYgN?7hhLvApK?Ls1Nc8Q-+x}PTS7K#ICuyC68mR;|^-vf89P3D>eNi zxSv{IY1qfz3Gj+Z;3Q55=xS{;HjWDoW*IQunZR2P(MWcV%pRE`yM5VizJ)uQZ+eCm zh`e3bzPr%(O2#uy&5qX``l^DSwK#u0I#8D@&5ku>biRi2aJ&byK0e;UNu!||HNNDr z*&aDAyU47w`f>RKSuMU?cn;Q%T5|m?*RQck;dsrz*l`wBWcpcubS9)W-d8!$LWo?* zhxpp^HXhyvFf9JrXM+q+_3?T*JY|H>cgekW5|0EL9G}dzF(?1p$<6ig*24S&&r^t+ zg%)dDljFq$c%n(+MU;4+b>Y>PZ9H#!v~WbO2PlB>g`9nPIQ}m${}CO@0@G$+d-8 za&1K@xqT5yt}z8N*L9VNBiBTP0ijuPa-uli9qkmv0$0=}hNJ6~c;jf{MXQI2>B(hH zM-1ScM;)dtdq=IM2jSERPaw#VnZwQTnr<;-$kt(_HG6QzM)RJs*`v5Ns@zuB!^Y)RvfP}B$5tCE*EA;v z5YnW^acz0i?Rb4aUQ0XFpS`tqHaHp7NF_Drm=za0fUaF&4j>+b4MeH6*%dZJJ<6sm zP;CTJox$Au-d8cyiN>tUoNB@>P2_~7xKZ5Y6$r0s=U+gv-*@HUc?_6c2h z@`_n4^diFNCK_FA@e$_`C5qZzy^$^P#m0&L-n6ir76CPdT}?%Z2Dd#AE~D?&#arfa z0tTl}`_XL|nT$k6T(jxL8*z3NVIL#X#v>-ja(i>ck#h%T54JXr=Jxfi&Fb#b{?yJE z{di+7A4gT_WpS>S86%~&W=)!O&vR|^RgSR)<_{iQf;Z2RTc|FfOR3HuKhsrLavTY` zmeO`CMb)*CEl$fJij80Z#C5$B$KY)B1V>0bf=jXh?##l80|bNmCcMkJeT?o5w(9ME zzUNtv9>p!5Vo;QRT(md9RH+G{tKo|E`Up<$9G|r@Wv*!UC^UzlHHjx^@q$pi-Pyhu z`e@w*rCF4pIWW1V-ap=IO&rca1?R}PJ$non%;St1nuGp{*5N$yj?_%Hak2$ZiyP+B z~8WaI8hY zh;$SEO+L6^dYov@a%xN!S*+xqi?x#2a#@`R?hBB5oz3?6Fy>|Z0Nvfn->l+^Ooh`^@ zpjFl)Tjl(R1Bc-eSL-$>Mf?jU<Bo%D{Z+o6PPEpyifEa&zF~xPjc==Ojy1k%gwVHCFV9+I2bOwa zS5PMIrRk}WuAmT~3Yx=jS7&&3Vxm&sS6=K}_}p&qHI|j~HYqJv0}G$%^%X1F{q7yj zpBdU$VR-lC?1(cvi6?Jt`$<=D;sOB{1G1N^oq+-F@=o6odBX$MXXRT5(9<)MD{7Xt zED?B(08cA@m7VawTk`Q1NQW^NS9;I{K*&k&niwk&;R(hKvnGaimKDb6_)NJstPzy0 zDB*?~SsGRXx|C=7!kkHjfpSz))UbqI9qaWgHj3dNao2U*MuAs7L1huM)>%PQgjsM7 zcqXq+33`*$(^HE^%XnX>AKZ4-Q*L0pO9q^k+3~9D=Z^-!JGdkxC{O|@I^AO}@r|}m z%npZbDs!3m3ZYDVhLVY2P(72yHD@t~lo$D7l^l%Ay~AaBDj^_e8Kcse z&t5V)TR}WNibq-x=zDw`G5Kum*}(N#!5pCs)JJg6U$*SF{<)->OXlX1`MG3aE?Eq& zKa_f1a8=4A$z4{{Gu_@52KOs_5$0FY=z>XXU|Z_VV(yv7D>Q=#jy|tX0Ik@1R_~s^ z;F|ZY;OSY^3irVB;6lUKZg78im$7`^oV^R*(+NP&U-y?!U)X3kG149M@^)|SY7*` z?ZAI^)?NPv2yc$I=@%e|bPEc>vR2?O-mJZ%zVB0+lN}0e2vr1_fScPYsz|U+H9~?p zg@|Ip`%ab2u$wy~GwkV(kYN8$L@|+>VaHcQW(Y7NBpB!-B-mOT;lOm137#6}w*4wC zAa{aCl!N`?5fTJ|5fTi+5x&ia&dVqs$bI4w&dJ^45hA%~Ji-U;9FH)P`^O_hau<0- ze%L-7A;FIF2nm2RvY^NY#~$+tBe~N&q9p86jc9S4>eb(M7!o2(_C}gSI*r}vef8Iq zho;Y$`Ku&#tdXb3#w*L~bKLW$%l)sD)F-~Xf(b5vnPP4=!8`ulh3HAnZTrGS@>n?@ zQsq$7JB+90$?4JQ+J0_K=jp!^CBI0a`?N!dUz=?Uwg6T4>%J>j-QR3S(r7bbMVH^u z9vx)k;GQ=!gqCYC2nI`Y^ZdkcK3zo+T-(N`+-!BB-WF3Ev+^5zBTXT{*}K^%^dHCy zmV~E=C&tn7!RoDU0a>fqtQB`Rb#>n7J8Fj}M@QAZuk*(v_!H`4a$SFPJSaYB<(eQ^ z-mcb;O9s~vj#dU8IX*MK8&Q*YXc((H{4&gp-~Ok$Xy2Ufpu z>a)7GmWwaPk>KE-Ltt4MnZL$C&hW(uymgDyK3*S(V60CY7^6Xv19mzk=V=bd1YGviNW1#l5i za!M-W&lZF^KBNSkW%4UL8SF5g%1qDryi9dkzL{D+yfp|qWx$4`=6Fn71$bzCXGIY)K8|1!-4QO~J4R5ed<8xNW?AI}cj+xUj^Ezfh$1LiY13G3&$JEtG z=xQW%H4?fS30;kZu0}#vBcZF2(A7xjY9w?u%4K`zV#V6E*2of#tXv~2-^eO7vWktY zfksxTku})c=xSEO>(}svhL_Xu@)}-2!z*fd0~%gQ!_(A5XzC#}^$?nR2u(eNrXE65 z522}t(9}a{>LE1s$Yr~Hyz+kwg~};ZUZDyKRaB?}g(@l3V0XB@{;W#&tE5oLoJ!_Z zvY?Vhl^jsXl1i#x3Dqm1dL>k^gzA-0y%MTdLiI|hUJ2DJp?Za`!W#?9)r|kUU!jCT z0BtC52XvCbTO132&GG*^x)!9 zS=lhrA0|YY$c2e~m?(saVwe~R6QwW__CSO^5Md8Q*aH#vK!iOIVGl&u0}=K>ggp>p z4{}+{`lpouk-e;|iYfT5y53x$7_gbstSkevX$F@tP_gE|2 zwW0&oiuP>i-PT#{SkQiJdF%SL&sx^1HeHWvwxw30y;g54nzYC2G3(K+wbZ0VRm*Lz zLltXDGYy()D&1{$MagLwutVD}G;J-?NodOIY~<6V)iIw-6Tk~4Z`uj$2ytkKM2^}I zja#gq9s}Zd61on!f)tGcSGuiD)_$PMnZ%~V{=~hB)5&adNAeTNQ>nhxWvPRyBdMqC zRrVJ9fPI(!2y3rHsRr)v`rBie!y(WEO`pR@QeM|aq`b7Fv`n1#O zWSqQnsdJSx;T&*oc5ZVHIY*rPoClqg&MD_fS`1Wk7x2UBwLrB6D=`AJT^>;kD^8bS+-S2b zVr|=Sx)@_kTjh}5rUj>qFgmqS2Bq54=kyAUW-aGW$u_h(y&Pj-i+NL`WnE62Fiy6V zFIg>Wa(Wp?)E4q&&$pz<=|YUW#{Ag-TF~M&i1FEw7yGYKhf~Rz%Nc_PrvZ%eO?+Yh zX)5Pb#P}F#&;H#+%Bg@DA;OmZD^kWOkN81r$DWIjaLOUF(AcnlYWbW5B8~=q_74r0 zQ$OO6dAjWH4LnX+#3qU!J3WuX>7|HPLOSek3eD*PL@#wYdp1OIdI@5gK*s)BPjlLc zxW?nNXMz-`7bC&}kNw5_%h_iU>2T{J>!5W!VJ9{xK9D$$2fIzl>yvjUpH6K^U7fl$ z^+4*3owbMUkJ=~f(`-H4$_}tY>>+lBHqaKDL7a1p9#1FJ8`7K8Bk3E{x2KP#A5K5( zEOs_Ho1810F~m5xICmhzIf3}*3FjH-Oo!9a)3K&wL&wIBe8+`!{sQA2m;G5j4=&_~ zUbLWy$7O$l{Q^9o^A-^Exa?_I$1a^-7(425*&ksWvt&9qX58blKfp3psdP@P$j4>B zhh2;kX+wspS2T=r||wwN=W-C`W%vL~R~Qm(YNrAWwSzk*&1IntUIVj-734lQGD zwAvUAx$KwFG2}$XXBPGtM#ZMN(8{I}k;@*1yh#ou=dXin%Kx?4};sFO}!1#k;{Gt-aJj}nHL|q?5E%; zTC`M&kX-f?&>;|1S(WSrgK#@NK!H(MTWI6KkeD8kt{S{fZVJKh5B zbM|#3rgL_m0kJvzT2n;k?5j;Mm$R=#;wopyBG8kwFKbbfv!fb3C!uZH!Wz=mB1UL9=#oSW6+|v0dJb>&|85wO*H5&z?(=py%~5DA*CyT zH(D9J33#KC&{p701E1aqyqU+P%YiovkKO>h32|r(@TN}F>wz}`MVA3@yfnQIID-^j z3S7CwN+1WhrsjGP2?wXPFJPl}fwC`P1@!O_`vT^61xSYcmyo|6+w$m5^6%q^cYiqe H`;q?xJ@PKt literal 0 HcmV?d00001 diff --git a/config/ded/shaders/cursor.frag b/config/ded/shaders/cursor.frag index e80ffbd8..3ec4e737 100644 --- a/config/ded/shaders/cursor.frag +++ b/config/ded/shaders/cursor.frag @@ -1,28 +1,37 @@ -// GRADIENT #version 330 core -in vec2 fragTexCoord; // Texture coordinate, if you're using textures -uniform float time; // Uniform variable for time -uniform vec2 cursorPos; // Cursor position in screen coordinates -uniform vec2 resolution; // Screen resolution - -out vec4 color; +in vec4 out_color; void main() { - // Calculate normalized coordinates - vec2 uv = fragTexCoord / resolution; + gl_FragColor = out_color; +} - // Create a dynamic gradient based on time - vec3 gradient = 0.5 + 0.9 * cos(time + uv.xyx + vec3(0, 2, 4)); - // Create a glow effect - float dist = distance(uv, cursorPos / resolution); - float glow = exp(20.0 * dist); - // Combine the gradient and glow - vec3 finalColor = gradient * glow; +/* // GRADIENT */ +/* #version 330 core */ - // Output the color - color = vec4(finalColor, 0.7); // Fully opaque -} +/* in vec2 fragTexCoord; // Texture coordinate, if you're using textures */ +/* uniform float time; // Uniform variable for time */ +/* uniform vec2 cursorPos; // Cursor position in screen coordinates */ +/* uniform vec2 resolution; // Screen resolution */ + +/* out vec4 color; */ + +/* void main() { */ +/* // Calculate normalized coordinates */ +/* vec2 uv = fragTexCoord / resolution; */ + +/* // Create a dynamic gradient based on time */ +/* vec3 gradient = 0.5 + 0.9 * cos(time + uv.xyx + vec3(0, 2, 4)); */ + +/* // Create a glow effect */ +/* float dist = distance(uv, cursorPos / resolution); */ +/* float glow = exp(20.0 * dist); */ + +/* // Combine the gradient and glow */ +/* vec3 finalColor = gradient * glow; */ +/* // Output the color */ +/* color = vec4(finalColor, 0.7); // Fully opaque */ +/* } */ diff --git a/config/ded/shaders/simple_text.frag b/config/ded/shaders/simple_text.frag index f0413756..0b61e310 100644 --- a/config/ded/shaders/simple_text.frag +++ b/config/ded/shaders/simple_text.frag @@ -11,3 +11,82 @@ void main() { float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); gl_FragColor = vec4(out_color.rgb, alpha); } + + + +// Dumb shadow +// look good only with radon font +/* #version 330 core */ + +/* uniform sampler2D image; */ + +/* in vec4 out_color; */ +/* in vec2 out_uv; */ + +/* void main() { */ +/* // Shadow properties */ +/* vec2 shadowOffset = vec2(0.001, -0.001); // Very close offset for the shadow */ +/* vec4 shadowColor = vec4(0.0, 0.0, 0.0, 0.7); // Black shadow with decent opacity */ + +/* // Calculate distance for shadow and text */ +/* float d = texture(image, out_uv).r; */ + +/* float aaf = fwidth(d); */ +/* float alpha = smoothstep(0.5 - aaf, 0.5 + aaf, d); */ + +/* // Basic blur approximation for shadow */ +/* float blurRadius = 0.0005; // Adjust this value for more/less blur */ +/* float shadowAlpha = 0.0; */ +/* for (float x = -blurRadius; x <= blurRadius; x += 0.001) { */ +/* for (float y = -blurRadius; y <= blurRadius; y += 0.001) { */ +/* float dShadow = texture(image, out_uv + shadowOffset + vec2(x, y)).r; */ +/* shadowAlpha += smoothstep(0.5 - aaf, 0.5 + aaf, dShadow); */ +/* } */ +/* } */ +/* shadowAlpha = shadowAlpha / ((2.0 * blurRadius / 0.001 + 1.0) * (2.0 * blurRadius / 0.001 + 1.0)); */ +/* shadowAlpha *= shadowColor.a; */ + +/* // Mix shadow and text */ +/* vec4 textColor = vec4(out_color.rgb, alpha); */ +/* vec4 shadow = vec4(shadowColor.rgb, shadowAlpha); */ +/* gl_FragColor = mix(shadow, textColor, alpha); */ +/* } */ + + +// idk +/* #version 330 core */ + +/* uniform sampler2D image; */ +/* uniform float time; // Time variable for animation */ + +/* in vec4 out_color; // Base text color */ +/* in vec2 out_uv; // Texture coordinates */ + +/* void main() { */ +/* float d = texture(image, out_uv).r; // Distance field value */ +/* float aaf = fwidth(d); // Antialiasing factor */ + +/* // Outline settings */ +/* float outlineSize = 0.09; // Width of the outline */ +/* float movingSegmentLength = 0.8; // Length of the moving segment */ +/* float speed = 0.5; // Speed of the segment's movement */ + +/* // Calculate position of the moving segment */ +/* float segmentPosition = mod(time * speed, 1.0); */ + +/* // Calculate outline alpha based on SDF */ +/* float outlineAlpha = smoothstep(0.5 - outlineSize - aaf, 0.5 - outlineSize, d) - */ +/* smoothstep(0.5 + outlineSize, 0.5 + outlineSize + aaf, d); */ + +/* // Determine if we're within the moving segment */ +/* float sdfCoord = (atan(out_uv.y - 0.5, out_uv.x - 0.5) / 3.14159265 + 1.0) * 0.5; */ +/* bool inMovingSegment = abs(sdfCoord - segmentPosition) < movingSegmentLength * 0.5 || */ +/* abs(sdfCoord - segmentPosition - 1.0) < movingSegmentLength * 0.5; */ + +/* // Mix colors: text, outline, and moving segment */ +/* vec3 outlineColor = vec3(0, 1, 0); // Green for the moving segment */ +/* vec4 textColor = vec4(out_color.rgb, smoothstep(0.5 - aaf, 0.5 + aaf, d)); */ +/* vec4 segmentColor = mix(vec4(outlineColor, outlineAlpha), textColor, float(!inMovingSegment)); */ + +/* gl_FragColor = segmentColor; */ +/* } */ diff --git a/config/ded/snippets/guard b/config/ded/snippets/h similarity index 100% rename from config/ded/snippets/guard rename to config/ded/snippets/h diff --git a/config/ded/snippets/print b/config/ded/snippets/print new file mode 100644 index 00000000..4be3ca8e --- /dev/null +++ b/config/ded/snippets/print @@ -0,0 +1 @@ +printf("$0"); diff --git a/src/M-x.c b/src/M-x.c new file mode 100644 index 00000000..de8c2819 --- /dev/null +++ b/src/M-x.c @@ -0,0 +1,174 @@ +#include "M-x.h" +#include "editor.h" +#include "hashmap.h" +#include "evil.h" +#include "helix.h" +#include "emacs.h" +#include "lsp.h" + +// TODO aliases (lua or lisp we will have an in init file), +// history in program memory, when quitting save it in ~/.config/ded/M-x-history +// and load it when opening ded clamp it to max-M-x-history-size or something + + +void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *, const char *params[]), int additional_params_count) { + Command *cmd = malloc(sizeof(Command)); + if (cmd) { + cmd->name = name; + cmd->execute = execute; + cmd->additional_params_count = additional_params_count; + hashmap_set(command_map, cmd); + } else { + // Handle allocation failure + } +} + +// TODO open-below && open-above && editor-enter behave weird +void initialize_commands(struct hashmap *command_map) { + register_command(command_map, "open", evil_open_below, 0); + register_command(command_map, "opena", evil_open_above, 0); + register_command(command_map, "drag-down", editor_drag_line_down, 0); + register_command(command_map, "drag-up", editor_drag_line_up, 0); + register_command(command_map, "editor-enter", editor_enter, 0); + register_command(command_map, "select", select_region_from_brace, 0); + register_command(command_map, "back", emacs_backward_kill_word, 0); + register_command(command_map, "evil-join", evil_join, 0); + register_command(command_map, "evil-yank-line", evil_yank_line, 0); + register_command(command_map, "open-include", editor_open_include, 0); + register_command(command_map, "toggle", toggle_bool, 0); // Wincompatible-function-pointer-types + register_command(command_map, "w", editor_save, 0); + register_command(command_map, "q", editor_quit, 0); + register_command(command_map, "wq", editor_save_and_quit, 0); + register_command(command_map, "go", editor_goto_line, 1); + register_command(command_map, "def", goto_definition, 0); + register_command(command_map, "helix", helix_mode, 0); + +} + +// TODO if you provide less arguments than needed warn the cursor +// TODO if the function fail print it and maybe with the actuall error code or string +void execute_command(struct hashmap *command_map, Editor *editor, const char *input) { + // First, check if the input is a number + if (is_number(input)) { + const char *params[2] = {input, NULL}; + editor_goto_line(editor, params); + return; + } + + char command_name[100]; + const char *params[10] = {0}; + int params_count = 0; + + // Duplicate the input string for safe tokenization + char *input_copy = strdup(input); + char *token = strtok(input_copy, " "); + + if (token != NULL) { + strncpy(command_name, token, sizeof(command_name) - 1); + command_name[sizeof(command_name) - 1] = '\0'; + + // Extract arguments + while ((token = strtok(NULL, " ")) != NULL && params_count < 10) { + params[params_count++] = token; + } + } + + Command tempCmd = {command_name, NULL, 0}; + Command *cmd = (Command *)hashmap_get(command_map, &tempCmd); + if (cmd) { + if (cmd->additional_params_count == params_count) { + cmd->execute(editor, params); + } else if (cmd->additional_params_count == 0 && params_count == 0) { + cmd->execute(editor, NULL); + } else { + // Handle incorrect number of arguments + } + } else { + // Command not found + } + + free(input_copy); +} + + + + + + + + +int command_compare(const void *a, const void *b, void *udata) { + const Command *cmd_a = a; + const Command *cmd_b = b; + return strcmp(cmd_a->name, cmd_b->name); +} + +uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1) { + const Command *cmd = item; + const char *str = cmd->name; + uint64_t hash = seed0; + while (*str) { + hash = 31 * hash + (*str++); + } + return hash ^ seed1; +} + + + + +// UTLITY +bool is_number(const char *str) { + if (!str || *str == '\0') + return false; // Empty string is not a number + + // Check if each character is a digit + for (const char *p = str; *p != '\0'; p++) { + if (!isdigit((unsigned char)*p)) + return false; + } + return true; +} + + + + + +// HISTORY + + +/* #define MAX_HISTORY 500 */ + +/* typedef struct { */ +/* char **items; */ +/* size_t count; */ +/* size_t capacity; */ +/* } History; */ + +/* History command_history = {NULL, 0, 0}; */ + +/* void add_to_history(const char *command) { */ +/* if (command_history.count >= MAX_HISTORY) { */ +/* // Remove the oldest command */ +/* free(command_history.items[0]); */ +/* memmove(command_history.items, command_history.items + 1, (MAX_HISTORY - 1) * sizeof(char*)); */ +/* command_history.count--; */ +/* } */ + +/* if (command_history.count == command_history.capacity) { */ +/* // Increase the capacity */ +/* size_t new_capacity = command_history.capacity == 0 ? 16 : command_history.capacity * 2; */ +/* char **new_items = realloc(command_history.items, new_capacity * sizeof(char*)); */ +/* if (!new_items) { */ +/* // Handle allocation failure */ +/* return; */ +/* } */ +/* command_history.items = new_items; */ +/* command_history.capacity = new_capacity; */ +/* } */ + +/* command_history.items[command_history.count++] = strdup(command); */ +/* } */ + +/* // Call this function in execute_command after successfully executing a command */ +/* add_to_history(input); */ + diff --git a/src/M-x.h b/src/M-x.h new file mode 100644 index 00000000..9d5c3d28 --- /dev/null +++ b/src/M-x.h @@ -0,0 +1,21 @@ +#ifndef META_H_ +#define META_H_ + +#include // for uint64_t +#include "editor.h" + +typedef struct { + const char *name; + void (*execute)(Editor *, const char *params[]); // Updated to take an array of strings as additional parameters + int additional_params_count; // Number of additional parameters needed +} Command; + + +/* void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *)); */ +void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *, const char *params[]), int additional_params_count); +void initialize_commands(struct hashmap *command_map); +void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name); +int command_compare(const void *a, const void *b, void *udata); +uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1); + +#endif // META_H__ diff --git a/src/editor.c b/src/editor.c index 6f599396..a1feca95 100644 --- a/src/editor.c +++ b/src/editor.c @@ -15,9 +15,7 @@ #include "evil.h" - bool quit = false; -EvilMode current_mode = NORMAL; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; float max_zoom_factor = 50.0; @@ -48,12 +46,27 @@ bool ivy = false; bool M_x_active = false; bool evil_command_active = false; - bool BlockInsertCurosr = true; -bool highlightCurrentLineNumberOnInsertMode = true; // the loong way +bool highlightCurrentLineNumberOnInsertMode = true; // the loong way +bool helix = false; +bool emacs = false; +bool automatic_zoom = true; + +void set_current_mode() { + if (emacs) { + current_mode = EMACS; + } else if (helix) { + current_mode = HELIX; + } else { + current_mode = NORMAL; + } +} + +EvilMode current_mode = HELIX; + bool extract_word_under_cursor(Editor *editor, char *word) { // Make a copy of cursor position to avoid modifying the actual cursor size_t cursor = editor->cursor; @@ -100,7 +113,7 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { } -// TODO smarter +// TODO if we are on a multiple of indentation delete the correct number of indentations void editor_backspace(Editor *e) { // If in search mode, reduce the search query length if (e->searching) { @@ -264,30 +277,115 @@ Errno editor_save(const Editor *e) return write_entire_file(e->file_path.items, e->data.items, e->data.count); } -Errno editor_load_from_file(Editor *e, const char *file_path) -{ - printf("Loading %s\n", file_path); +/* Errno editor_load_from_file(Editor *e, const char *file_path) */ +/* { */ +/* printf("Loading %s\n", file_path); */ + +/* e->data.count = 0; */ +/* Errno err = read_entire_file(file_path, &e->data); */ +/* if (err != 0) return err; */ + +/* e->cursor = 0; */ + +/* editor_retokenize(e); */ + +/* e->file_path.count = 0; */ +/* sb_append_cstr(&e->file_path, file_path); */ +/* sb_append_null(&e->file_path); */ + +/* // Add file path to buffer history */ +/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ +/* e->buffer_history[e->buffer_history_count++] = strdup(file_path); */ +/* } */ + +/* return 0; */ +/* } */ + + +size_t get_position_from_line_column(Editor *e, size_t line, size_t column) { + size_t pos = 0; + size_t current_line = 0; + + while (pos < e->data.count && current_line < line) { + if (e->data.items[pos] == '\n') { + current_line++; + } + pos++; + } + + // Adjust column position + size_t line_start = pos; + size_t current_column = 0; + while (pos < e->data.count && current_column < column) { + if (e->data.items[pos] == '\n') { + break; // Prevent going to next line + } + current_column++; + pos++; + } + + return line_start + current_column; +} + + + +/* Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { */ +/* printf("Loading %s\n", file_path); */ + +/* e->data.count = 0; */ +/* Errno err = read_entire_file(file_path, &e->data); */ +/* if (err != 0) return err; */ + +/* // Move cursor to the specified line and column */ +/* e->cursor = get_position_from_line_column(e, line, column); */ + +/* editor_retokenize(e); */ + +/* e->file_path.count = 0; */ +/* sb_append_cstr(&e->file_path, file_path); */ +/* sb_append_null(&e->file_path); */ + +/* // Add file path to buffer history */ +/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ +/* e->buffer_history[e->buffer_history_count++] = strdup(file_path); */ +/* } */ + +/* return 0; */ +/* } */ + + +Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { + char expanded_file_path[PATH_MAX]; + expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); + printf("Loading %s\n", expanded_file_path); e->data.count = 0; - Errno err = read_entire_file(file_path, &e->data); + Errno err = read_entire_file(expanded_file_path, &e->data); if (err != 0) return err; - e->cursor = 0; + // Move cursor to the specified line and column + e->cursor = get_position_from_line_column(e, line, column); editor_retokenize(e); e->file_path.count = 0; - sb_append_cstr(&e->file_path, file_path); + sb_append_cstr(&e->file_path, expanded_file_path); sb_append_null(&e->file_path); // Add file path to buffer history if (e->buffer_history_count < MAX_BUFFER_HISTORY) { - e->buffer_history[e->buffer_history_count++] = strdup(file_path); + e->buffer_history[e->buffer_history_count++] = strdup(expanded_file_path); } return 0; } + + + + + + size_t editor_cursor_row(const Editor *e) { assert(e->lines.count > 0); @@ -1140,7 +1238,7 @@ Errno openLocalIncludeFile(Editor *editor, const char *includePath) { snprintf(fullPath, sizeof(fullPath), "%s/%s", directory, includePath); // Load the file using the full path - Errno load_err = editor_load_from_file(editor, fullPath); + Errno load_err = find_file(editor, fullPath, 0, 0); if (load_err != 0) { fprintf(stderr, "Error loading file %s: %s\n", fullPath, strerror(load_err)); return load_err; @@ -1183,7 +1281,7 @@ Errno openGlobalIncludeFile(Editor *editor, const char *includePath) { // Check if the file exists and is accessible if (access(fullPath, F_OK) != -1) { // Try to load the file using the constructed full path - Errno load_err = editor_load_from_file(editor, fullPath); + Errno load_err = find_file(editor, fullPath, 0, 0); if (load_err == 0) { printf("Opened file: %s\n", fullPath); return 0; // File opened successfully @@ -1492,68 +1590,42 @@ void find_matches_in_editor_data(Editor *e, const char *word, char **matches, si +Errno editor_goto_line(Editor *editor, const char *params[]) { + if (!params || !params[0]) { + // Handle error: No line number provided + return -1; + } + size_t line_number = atoi(params[0]); + if (line_number == 0 || line_number > editor->lines.count) { + // Line number is out of range + return -1; + } + // Adjust line_number to zero-based index + line_number -= 1; -// M-x -// TODO command aliases and -// history in program memory, when quitting save it in ~/.config/ded/M-x-history -// and load it when opening ded clamp it to max-M-x-history-size or something -void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *)) { - Command *cmd = malloc(sizeof(Command)); - if (cmd) { - cmd->name = name; - cmd->execute = execute; - hashmap_set(command_map, cmd); - } else { - // Handle allocation failure - } -} - -// TODO open-below && open-above && editor-enter behave weird -void initialize_commands(struct hashmap *command_map) { - register_command(command_map, "open", evil_open_below); - register_command(command_map, "opena", evil_open_above); - register_command(command_map, "drag-down", editor_drag_line_down); - register_command(command_map, "drag-up", editor_drag_line_up); - register_command(command_map, "editor-enter", editor_enter); - register_command(command_map, "select", select_region_from_brace); - register_command(command_map, "back", emacs_backward_kill_word); - register_command(command_map, "evil-join", evil_join); - register_command(command_map, "evil-yank-line", evil_yank_line); - register_command(command_map, "open-include", editor_open_include); - register_command(command_map, "toggle", toggle_bool); // Wincompatible-function-pointer-types - register_command(command_map, "w", editor_save); - register_command(command_map, "q", editor_quit); - register_command(command_map, "wq", editor_save_and_quit); -} - -void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name) { - Command tempCmd = {command_name, NULL}; // Temporary command for lookup - Command *cmd = (Command *)hashmap_get(command_map, &tempCmd); - if (cmd && cmd->execute) { - cmd->execute(editor); - } else { - // Handle command not found - } -} + // Set the cursor to the beginning of the specified line + editor->cursor = editor->lines.items[line_number].begin; -int command_compare(const void *a, const void *b, void *udata) { - const Command *cmd_a = a; - const Command *cmd_b = b; - return strcmp(cmd_a->name, cmd_b->name); + return 0; } -uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1) { - const Command *cmd = item; - const char *str = cmd->name; - uint64_t hash = seed0; - while (*str) { - hash = 31 * hash + (*str++); +void get_cursor_position(const Editor *e, int *line, int *character) { + assert(e != NULL && line != NULL && character != NULL); + + // Get the line number + *line = editor_cursor_row(e); + + // Find the start of the current line + size_t line_start = 0; + if (*line > 0 && *line < e->lines.count) { + line_start = e->lines.items[*line].begin; } - return hash ^ seed1; -} + // Calculate the column number (character position) + *character = e->cursor - line_start; +} @@ -1663,3 +1735,84 @@ int variable_doc_compare(const void *a, const void *b, void *udata) { + +// ANIMATIONS +// TODO don't always update + +float easeOutCubic(float x) { + return 1 - pow(1 - x, 3); +} + + +float targetModelineHeight; +bool isModelineAnimating = false; +void update_modeline_animation() { + if (!isModelineAnimating) { + return; + } + + float animationSpeed = 1.50f; + + if (modelineHeight < targetModelineHeight) { + modelineHeight += animationSpeed; + if (modelineHeight > targetModelineHeight) { + modelineHeight = targetModelineHeight; + } + } else if (modelineHeight > targetModelineHeight) { + modelineHeight -= animationSpeed; + if (modelineHeight < targetModelineHeight) { + modelineHeight = targetModelineHeight; + } + } + + if (modelineHeight == targetModelineHeight) { + isModelineAnimating = false; + } +} + + +float targetMinibufferHeight; +bool isMinibufferAnimating = false; +float minibufferAnimationProgress = 0.0f; // Normalized progress of the animation +float minibufferAnimationDuration = 1.0f; // Duration of the animation in seconds + + +void update_minibuffer_animation(float deltaTime) { + if (!isMinibufferAnimating) { + return; + } + + minibufferAnimationProgress += deltaTime / minibufferAnimationDuration; + + if (minibufferAnimationProgress > 1.0f) { + minibufferAnimationProgress = 1.0f; + isMinibufferAnimating = false; + } + + float easedProgress = easeOutCubic(minibufferAnimationProgress); + minibufferHeight = easedProgress * (targetMinibufferHeight - minibufferHeight) + minibufferHeight; + + if (minibufferHeight == targetMinibufferHeight || minibufferAnimationProgress >= 1.0f) { + isMinibufferAnimating = false; + } +} + + + + + +size_t calculate_max_line_length(const Editor *editor) { + size_t max_len = 0; + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + size_t line_length = line.end - line.begin; + if (line_length > max_len) { + max_len = line_length; + } + } + return max_len; +} + + + + diff --git a/src/editor.h b/src/editor.h index 3dbe9b07..a51cd0b6 100644 --- a/src/editor.h +++ b/src/editor.h @@ -42,6 +42,11 @@ extern bool BlockInsertCurosr; extern bool highlightCurrentLineNumberOnInsertMode; extern bool instantCamera; + +extern bool helix; +extern bool emacs; +extern bool automatic_zoom; + typedef struct { size_t begin; size_t end; @@ -60,9 +65,11 @@ typedef struct { } Tokens; + //TODO minibuffer, replace, replace char, helix typedef enum { EMACS, + HELIX, NORMAL, INSERT, VISUAL, @@ -117,7 +124,9 @@ typedef struct { Errno editor_save_as(Editor *editor, const char *file_path); Errno editor_save(const Editor *editor); -Errno editor_load_from_file(Editor *editor, const char *file_path); +/* Errno editor_load_from_file(Editor *editor, const char *file_path); */ +Errno find_file(Editor *e, const char *file_path, size_t line, size_t column); +size_t get_position_from_line_column(Editor *e, size_t line, size_t column); void editor_backspace(Editor *editor); void editor_delete(Editor *editor); @@ -186,12 +195,12 @@ void editor_save_and_quit(Editor *e); void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count); void evil_complete_next(Editor *e); +Errno editor_goto_line(Editor *editor, const char *params[]); +void get_cursor_position(const Editor *e, int *line, int *character); - - - - +void set_current_mode(); +size_t calculate_max_line_length(const Editor *editor); // UTILITY bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length); @@ -203,20 +212,7 @@ float measure_whitespace_width(Free_Glyph_Atlas *atlas); float measure_whitespace_height(Free_Glyph_Atlas *atlas); size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); bool exract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); - - -// M-x -typedef struct { - const char *name; - void (*execute)(Editor *); // Function pointer with Editor* argument -} Command; - -void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *)); -void initialize_commands(struct hashmap *command_map); -void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name); -int command_compare(const void *a, const void *b, void *udata); -uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1); - +bool is_number(const char *str); // Var Documentation @@ -235,4 +231,24 @@ int variable_doc_compare(const void *a, const void *b, void *udata); +// animation + +extern float targetModelineHeight; +extern bool isModelineAnimating; +extern void update_modeline_animation(); + +extern float targetMinibufferHeight; +extern bool isMinibufferAnimating; + +extern float minibufferAnimationProgress; +extern float minibufferAnimationDuration; +void update_minibuffer_animation(float deltaTime); + +float easeOutCubic(float x); + + + + + + #endif // EDITOR_H_ diff --git a/src/elix.h b/src/elix.h new file mode 100644 index 00000000..e9cd4f94 --- /dev/null +++ b/src/elix.h @@ -0,0 +1,8 @@ +#ifndef HELIX_H +#define HELIX_H + +#include "editor.h" + + + +#endif // HELIX_H diff --git a/src/file_browser.c b/src/file_browser.c index dd2e099d..14e92930 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -6,7 +6,6 @@ #include - static int file_cmp(const void *ap, const void *bp) { const char *a = *(const char**)ap; @@ -16,21 +15,27 @@ static int file_cmp(const void *ap, const void *bp) Errno fb_open_dir(File_Browser *fb, const char *dir_path) { + char resolved_path[PATH_MAX]; + expand_path(dir_path, resolved_path, sizeof(resolved_path)); + fb->files.count = 0; fb->cursor = 0; - Errno err = read_entire_dir(dir_path, &fb->files); + Errno err = read_entire_dir(resolved_path, &fb->files); if (err != 0) { return err; } qsort(fb->files.items, fb->files.count, sizeof(*fb->files.items), file_cmp); fb->dir_path.count = 0; - sb_append_cstr(&fb->dir_path, dir_path); + sb_append_cstr(&fb->dir_path, resolved_path); sb_append_null(&fb->dir_path); - + printf("Opened directory: %s\n", fb->dir_path.items); return 0; } + + + #define PATH_SEP "/" #define PATH_EMPTY "" #define PATH_DOT "." @@ -101,6 +106,7 @@ void normpath(String_View path, String_Builder *result) free(new_comps.items); } + Errno fb_change_dir(File_Browser *fb) { assert(fb->dir_path.count > 0 && "You need to call fb_open_dir() before fb_change_dir()"); @@ -109,32 +115,29 @@ Errno fb_change_dir(File_Browser *fb) if (fb->cursor >= fb->files.count) return 0; const char *dir_name = fb->files.items[fb->cursor]; + char new_path[PATH_MAX]; + snprintf(new_path, sizeof(new_path), "%s/%s", fb->dir_path.items, dir_name); - fb->dir_path.count -= 1; - - // TODO: fb->dir_path grows indefinitely if we hit the root - sb_append_cstr(&fb->dir_path, "/"); - sb_append_cstr(&fb->dir_path, dir_name); + char resolved_path[PATH_MAX]; + expand_path(new_path, resolved_path, sizeof(resolved_path)); - String_Builder result = {0}; - normpath(sb_to_sv(fb->dir_path), &result); - da_move(&fb->dir_path, result); + fb->dir_path.count = 0; + sb_append_cstr(&fb->dir_path, resolved_path); sb_append_null(&fb->dir_path); - printf("Changed dir to %s\n", fb->dir_path.items); - fb->files.count = 0; fb->cursor = 0; - Errno err = read_entire_dir(fb->dir_path.items, &fb->files); - + Errno err = read_entire_dir(resolved_path, &fb->files); if (err != 0) { return err; } qsort(fb->files.items, fb->files.count, sizeof(*fb->files.items), file_cmp); - + printf("Changed directory to: %s\n", fb->dir_path.items); return 0; } + + void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr) { Vec2f cursor_pos = vec2f(0, -(float)fb->cursor * FREE_GLYPH_FONT_SIZE); @@ -226,15 +229,15 @@ const char *fb_file_path(File_Browser *fb) sb_append_cstr(&fb->file_path, fb->files.items[fb->cursor]); sb_append_null(&fb->file_path); - extract_file_extension(fb->files.items[fb->cursor], &fb->file_extension); //added - printf("Current file_extention: "SB_Fmt"\n", SB_Arg(fb->file_extension)); + extract_file_extension(fb->files.items[fb->cursor], &fb->file_extension); + printf("File path: %s\n", fb->file_path.items); // Print file path + printf("File extension: %s\n", fb->file_extension.items); // Print file extension return fb->file_path.items; } -// ADDED - +// ADDED void extract_file_extension(const char *filename, String_Builder *ext) { const char *dot = strrchr(filename, '.'); if (!dot || dot == filename) { @@ -249,3 +252,23 @@ void extract_file_extension(const char *filename, String_Builder *ext) { sb_append_cstr(ext, dot + 1); // Skip the dot sb_append_null(ext); // Ensure null termination } + +void expand_path(const char *original_path, char *expanded_path, size_t expanded_path_size) { + if (original_path[0] == '~') { + const char *home = getenv("HOME"); + if (home) { + snprintf(expanded_path, expanded_path_size, "%s%s", home, original_path + 1); + } else { + strncpy(expanded_path, original_path, expanded_path_size); + } + } else { + char resolved_path[PATH_MAX]; + if (realpath(original_path, resolved_path) != NULL) { + strncpy(expanded_path, resolved_path, expanded_path_size); + } else { + strncpy(expanded_path, original_path, expanded_path_size); + } + } + expanded_path[expanded_path_size - 1] = '\0'; +} + diff --git a/src/file_browser.h b/src/file_browser.h index 0626a433..1bcdcc7b 100644 --- a/src/file_browser.h +++ b/src/file_browser.h @@ -32,6 +32,7 @@ Errno fb_go_to_parent(File_Browser *fb); // ADDED void extract_file_extension(const char *filename, String_Builder *ext); +void expand_path(const char *original_path, char *expanded_path, size_t expanded_path_size); diff --git a/src/helix.c b/src/helix.c new file mode 100644 index 00000000..2dd09423 --- /dev/null +++ b/src/helix.c @@ -0,0 +1,31 @@ +#include +#include +#include "helix.h" +#include "editor.h" +#include "theme.h" + +void helix_mode() { + if (current_mode != HELIX) { + current_mode = HELIX; + switch_to_theme(¤tThemeIndex, 7); + targetModelineHeight = 21.0f; + targetMinibufferHeight = 0.0f; + } else { + current_mode = NORMAL; + targetModelineHeight = 35.0f; + targetMinibufferHeight = 21.0f; + srand(time(NULL)); + + int randomThemeIndex; + do { + randomThemeIndex = rand() % 8; + } while (randomThemeIndex == 7); // Ensure the random theme is not Helix + + switch_to_theme(¤tThemeIndex, randomThemeIndex); + } + + minibufferAnimationProgress = 0.0f; + isModelineAnimating = true; + isMinibufferAnimating = true; +} + diff --git a/src/helix.h b/src/helix.h new file mode 100644 index 00000000..a2f6437a --- /dev/null +++ b/src/helix.h @@ -0,0 +1,8 @@ +#ifndef HELIX_H +#define HELIX_H + +#include "editor.h" + +void helix_mode(); + +#endif // HELIX_H diff --git a/src/lsp.c b/src/lsp.c new file mode 100644 index 00000000..825cf270 --- /dev/null +++ b/src/lsp.c @@ -0,0 +1,188 @@ +#include +#include +#include +#include +#include +#include +#include "lsp.h" +#include + + +int to_ccls[2]; // Pipe for sending data to ccls +int from_ccls[2]; // Pipe for receiving data from ccls +pthread_t receive_thread; + +const char* project_root = "/home/l/Desktop/test/ded"; + + +#include "file_browser.h" + +void get_current_file_uri(Editor *e, char *file_uri, size_t uri_size) { + // Assuming that `e->file_path` is a String_Builder containing the full file path + // and `expand_path` is a function that normalizes or expands the path to a full path. + char expanded_path[256]; + expand_path(e->file_path.items, expanded_path, sizeof(expanded_path)); + + // Convert the file path to a URI format. This typically involves prefixing with "file://" + // and ensuring the path is correctly encoded for a URI (e.g., spaces are encoded, etc.) + // Here, for simplicity, we're just prefixing with "file://". + snprintf(file_uri, uri_size, "file://%s", expanded_path); +} + + +/* void start_ccls(const char* project_root) { */ +/* if (pipe(to_ccls) == -1 || pipe(from_ccls) == -1) { */ +/* perror("Failed to create pipes"); */ +/* exit(EXIT_FAILURE); */ +/* } */ + +/* pid_t pid = fork(); */ +/* if (pid == -1) { */ +/* perror("Failed to fork"); */ +/* exit(EXIT_FAILURE); */ +/* } */ + +/* if (pid == 0) { */ +/* dup2(to_ccls[0], STDIN_FILENO); */ +/* dup2(from_ccls[1], STDOUT_FILENO); */ +/* close(to_ccls[0]); */ +/* close(to_ccls[1]); */ +/* close(from_ccls[0]); */ +/* close(from_ccls[1]); */ +/* execlp("ccls", "ccls", NULL); */ +/* perror("Failed to start ccls"); */ +/* exit(EXIT_FAILURE); */ +/* } else { */ +/* close(to_ccls[0]); */ +/* close(from_ccls[1]); */ +/* } */ + +/* // After starting ccls, send initialize message with the project root */ +/* char init_params[1024]; */ +/* snprintf(init_params, sizeof(init_params), */ +/* "{\"processId\": null, \"rootUri\": \"file://%s\", \"capabilities\": {}}", */ +/* project_root); */ +/* send_json_rpc("initialize", init_params); */ +/* pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); */ +/* } */ + +void start_ccls() { + char expanded_root[PATH_MAX]; + // Assuming expand_path is a function that expands tildes and relative paths + expand_path(project_root, expanded_root, sizeof(expanded_root)); + + if (pipe(to_ccls) == -1 || pipe(from_ccls) == -1) { + perror("Failed to create pipes"); + exit(EXIT_FAILURE); + } + + pid_t pid = fork(); + if (pid == -1) { + perror("Failed to fork"); + exit(EXIT_FAILURE); + } + + if (pid == 0) { + // Child process: Setup pipes and start ccls + dup2(to_ccls[0], STDIN_FILENO); + dup2(from_ccls[1], STDOUT_FILENO); + close(to_ccls[0]); + close(to_ccls[1]); + close(from_ccls[0]); + close(from_ccls[1]); + + execlp("ccls", "ccls", "--log-file=/dev/stderr", NULL); + perror("Failed to start ccls"); + exit(EXIT_FAILURE); + } else { + // Parent process: Close unused pipe ends + close(to_ccls[0]); + close(from_ccls[1]); + } + + // Send initialize message with the expanded project root + char init_params[1024]; + snprintf(init_params, sizeof(init_params), + "{\"processId\": null, \"rootUri\": \"file://%s\", \"capabilities\": {}}", + expanded_root); + send_json_rpc("initialize", init_params); + pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); +} + + + +void goto_definition(Editor *e) { + printf("Debug: Entering goto_definition\n"); + + char file_uri[1024]; + int line, character; + get_current_file_uri(e, file_uri, sizeof(file_uri)); + get_cursor_position(e, &line, &character); + + printf("Debug: file_uri = %s, line = %d, character = %d\n", file_uri, line, character); + + char params[1024]; + snprintf(params, sizeof(params), + "{\"textDocument\": {\"uri\": \"%s\"}, \"position\": {\"line\": %d, \"character\": %d}}", + file_uri, line, character); + + send_json_rpc("textDocument/definition", params); + printf("Debug: JSON-RPC request sent\n"); +} + +void send_json_rpc(const char* method, const char* params) { + char message[4096]; + snprintf(message, sizeof(message), "{\"jsonrpc\": \"2.0\", \"method\": \"%s\", \"params\": %s}\n", method, params); + printf("Debug: Sending JSON-RPC: %s\n", message); + + if (write(to_ccls[1], message, strlen(message)) == -1) { + perror("Error sending JSON-RPC"); + } +} + +void* receive_json_rpc(void* arg) { + char buffer[4096]; + ssize_t nbytes; + + while ((nbytes = read(from_ccls[0], buffer, sizeof(buffer) - 1)) > 0) { + buffer[nbytes] = '\0'; + printf("Received from ccls: %s\n", buffer); // Print the raw response + + struct json_object *parsed_json = json_tokener_parse(buffer); + if (!parsed_json) { + printf("Failed to parse JSON response: %s\n", buffer); + continue; + } + + // Log the entire JSON object for debugging + printf("Parsed JSON response: %s\n", json_object_to_json_string(parsed_json)); + json_object_put(parsed_json); // Free the JSON object + } + + if (nbytes == -1) { + perror("Error reading from ccls"); + } + + return NULL; +} + +void initialize_lsp() { + send_json_rpc("initialize", "{\"capabilities\": {}}"); + pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); +} + +void shutdown_lsp() { + send_json_rpc("shutdown", "{}"); + send_json_rpc("exit", "{}"); + close(to_ccls[1]); // Close the write-end of the pipe + + pthread_join(receive_thread, NULL); // Wait for the receiving thread to finish + + int status; + waitpid(-1, &status, 0); // Wait for the ccls process to terminate +} + +void handle_signal(int sig) { + shutdown_lsp(); + exit(0); // Exit the program +} diff --git a/src/lsp.h b/src/lsp.h new file mode 100644 index 00000000..f6bf0dcb --- /dev/null +++ b/src/lsp.h @@ -0,0 +1,21 @@ +#ifndef LSP_H_ +#define LSP_H_ + +#include "editor.h" +#include + +extern pthread_t receive_thread; +extern const char *project_root; + +/* void start_ccls(const char* project_root); */ +void start_ccls(); +void initialize_lsp(); +void handle_signal(int sig); +void send_json_rpc(const char* method, const char* params); +void* receive_json_rpc(void* arg); +void shutdown_lsp(); + +void get_current_file_uri(Editor *e, char *file_uri, size_t uri_size); +void goto_definition(Editor *e); + +#endif // LPS_H_ diff --git a/src/main.c b/src/main.c index 330cfb4f..6daee4c7 100644 --- a/src/main.c +++ b/src/main.c @@ -6,6 +6,7 @@ #include #include #include "common.h" +#include "helix.h" #include @@ -38,14 +39,16 @@ #include "buffer.h" #include "theme.h" #include "unistd.h" +#include "M-x.h" +#include "lsp.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) #define FONT_DIR "~/.config/ded/fonts/" /* #define DEFAULT_FONT "jet-extra-bold.ttf" */ -/* #define DEFAULT_FONT "radon.otf" */ +#define DEFAULT_FONT "radon.otf" /* #define DEFAULT_FONT "minecraft.ttf" */ -#define DEFAULT_FONT "iosevka-regular.ttf" +/* #define DEFAULT_FONT "iosevka-regular.ttf" */ #define MAX_FONTS 20 #define MAX_PATH_SIZE 1024 @@ -172,14 +175,21 @@ void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas * // TODO: display errors reported via flash_error right in the text editor window somehow #define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) +#include int main(int argc, char **argv) { - + set_current_mode(); initialize_themes(); initialize_shader_paths(); load_snippets_from_directory(); + // lsp + signal(SIGINT, handle_signal); + start_ccls(/* project_root */); + initialize_lsp(); + + // Define hash seeds (these could be randomly generated for more robustness) uint64_t seed0 = 0x12345678; @@ -280,7 +290,7 @@ int main(int argc, char **argv) if (argc > 1) { const char *file_path = argv[1]; - err = editor_load_from_file(&editor, file_path); + err = find_file(&editor, file_path, 0, 0); if (err != 0) { fprintf(stderr, "ERROR: Could not read file %s: %s\n", file_path, strerror(err)); return 1; @@ -392,7 +402,7 @@ int main(int argc, char **argv) case FT_REGULAR: { // TODO: before opening a new file make sure you don't have unsaved changes // And if you do, annoy the user about it. (just like all the other editors do) - err = editor_load_from_file(&editor, file_path); + err = find_file(&editor, file_path, 0, 0); if (err != 0) { flash_error("Could not open file %s: %s", file_path, strerror(err)); } else { @@ -525,7 +535,7 @@ int main(int argc, char **argv) // TODO: before opening a new file make sure you don't // have unsaved changes And if you do, annoy the user // about it. (just like all the other editors do) - err = editor_load_from_file(&editor, file_path); + err = find_file(&editor, file_path, 0, 0); if (err != 0) { flash_error("Could not open file %s: %s", file_path, strerror(err)); @@ -647,6 +657,7 @@ int main(int argc, char **argv) if (zoom_factor < min_zoom_factor) { zoom_factor = min_zoom_factor; } + printf("zoom_factor: %.6f", zoom_factor); } } break; @@ -659,6 +670,7 @@ int main(int argc, char **argv) if (zoom_factor > max_zoom_factor) { zoom_factor = max_zoom_factor; } + printf("zoom_factor: %.6f", zoom_factor); } } break; @@ -843,7 +855,7 @@ int main(int argc, char **argv) case SDLK_z: { if (SDL_GetModState() & KMOD_CTRL) { - current_mode = EMACS; + helix_mode(); } } break; @@ -969,6 +981,7 @@ int main(int argc, char **argv) if (zoom_factor < min_zoom_factor) { zoom_factor = min_zoom_factor; } + printf("zoom_factor: %.6f", zoom_factor); } } break; @@ -981,6 +994,7 @@ int main(int argc, char **argv) if (zoom_factor > max_zoom_factor) { zoom_factor = max_zoom_factor; } + printf("zoom_factor: %.6f", zoom_factor); } } break; @@ -1148,8 +1162,10 @@ int main(int argc, char **argv) emacs_kill_line(&editor); } else if (event.key.keysym.mod & KMOD_ALT) { editor_move_paragraph_up(&editor); + } else if (event.key.keysym.mod & KMOD_SHIFT) { + goto_definition(&editor); } else { - editor_move_line_up(&editor); + editor_move_line_up(&editor); } editor.last_stroke = SDL_GetTicks(); break; @@ -1721,8 +1737,72 @@ int main(int argc, char **argv) } break; - case MINIBUFFER: + // TODO + case HELIX: switch (event.key.keysym.sym) { + SDL_Event tmpEvent; // Declare once at the beginning of the switch block + + case SDLK_RETURN: { + if (!toggle_bool(&editor)) { + editor_open_include(&editor); + } + } break; + + case SDLK_SEMICOLON: + if (event.key.keysym.mod & KMOD_SHIFT) { + current_mode = MINIBUFFER; + evil_command_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for ':' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ':') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + + // TODO ivy + /* if (!ivy) { */ + /* minibufferHeight += 189; */ + /* ivy = true; */ + /* } */ + } + break; + + + + case SDLK_d: + if (event.key.keysym.mod & KMOD_SHIFT) { + emacs_kill_line(&editor); + } else if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else { + emacs_kill_line(&editor); + } + break; + + case SDLK_c: + if (event.key.keysym.mod & KMOD_SHIFT) { + evil_change_line(&editor); + } + + // Eat up the next SDL_TEXTINPUT event for 'C' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'C')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + break; + + case SDLK_m: + if (event.key.keysym.mod & KMOD_ALT) { + emacs_back_to_indentation(&editor); + } + break; + + case SDLK_ESCAPE: { if (ivy) { @@ -1730,103 +1810,623 @@ int main(int argc, char **argv) ivy = false; } - if (editor.searching) { - editor_clear_mark(&editor); - editor_stop_search(&editor); - } else if (editor.minibuffer_active) { - editor.minibuffer_text.count = 0; + if (editor.minibuffer_active) { M_x_active = false; editor.minibuffer_active = false; } - current_mode = NORMAL; + + editor_clear_mark(&editor); + editor_stop_search(&editor); + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); } break; - - case SDLK_BACKSPACE: - if (editor.selection) { - // TODO once we have selection in the minibuffer - /* editor_clipboard_copy(&editor); */ - /* editor_delete_selection(&editor); */ - /* editor.selection = false; */ - } else if (event.key.keysym.mod & KMOD_CTRL) { - emacs_backward_kill_word(&editor); - editor.last_stroke = SDL_GetTicks(); - }else{ - editor_backspace(&editor); + + + case SDLK_SPACE: { + if (SDL_GetModState() & KMOD_CTRL) { + if (!editor.has_anchor){ + editor_set_anchor(&editor); + } else { + editor_goto_anchor_and_clear(&editor); + } + } else if (!ivy) { + // TODO time delay whichkey + minibufferHeight += 189; + ivy = true; + } + } + break; + + case SDLK_5: { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_jump_item(&editor); + } + } + break; + + case SDLK_8: { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_word_forward(&editor); + } + } + break; + + + case SDLK_1: { + if (SDL_GetModState() & KMOD_CTRL) { + hl_line = !hl_line; + } + } + break; + + + case SDLK_o: + if (superDrammtic) { + followCursor = true; + } + if (SDL_GetModState() & KMOD_SHIFT) { + evil_open_above(&editor); + } else { + evil_open_below(&editor); } + + current_mode = INSERT; editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'o' or 'O' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } break; - - // TODO use editor_enter() - case SDLK_RETURN: { - editor_enter(&editor); + + case SDLK_LEFTBRACKET: + if (SDL_GetModState() & KMOD_ALT) { + switch_to_font(library, &face, &atlas, -1); + printf("Switched to previous font: %s\n", fonts[current_font_index]); + /* redraw_screen(); */ } break; - } - break; - // More cases for other modes can follow here... - // ... - } - break; - } - break; + case SDLK_RIGHTBRACKET: + if (SDL_GetModState() & KMOD_ALT) { + switch_to_font(library, &face, &atlas, 1); + printf("Switched to next font: %s\n", fonts[current_font_index]); + /* redraw_screen(); */ + } + break; - case SDL_TEXTINPUT: - if (file_browser) { - // Once we have incremental search in the file browser this may become useful - // or to edit file names or create files/direcory - } else if (current_mode == INSERT || current_mode == EMACS || current_mode == MINIBUFFER) { // Process text input - const char *text = event.text.text; - size_t text_len = strlen(text); - for (size_t i = 0; i < text_len; ++i) { - editor_insert_char(&editor, text[i]); - } - editor.last_stroke = SDL_GetTicks(); - } - break; + case SDLK_TAB: { + indent(&editor); + } + break; - } - } + case SDLK_z: { + if (SDL_GetModState() & KMOD_CTRL) { + /* current_mode = EMACS; */ + /* current_mode = NORMAL; */ + helix_mode(); + } + } + break; - int w, h; - SDL_GetWindowSize(window, &w, &h); - glViewport(0, 0, w, h); - Vec4f bg = themes[currentThemeIndex].background; - bg.w = 0.0f; - glClearColor(bg.x, bg.y, bg.z, bg.w); - glClear(GL_COLOR_BUFFER_BIT); + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + followCursor = !followCursor; // Toggle the state + } + } + break; - if (file_browser) { - fb_render(&fb, window, &atlas, &sr); - } else { - editor_render(window, &atlas, &sr, &editor); - render_search_text(&atlas, &sr, &editor); - - - if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "md") == 0) { - render_markdown(&atlas, &sr, &editor, &fb); - } + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); + } + break; - - - if (M_x_active){ - render_minibuffer_content(&atlas, &sr, &editor, "M-x"); - } else if (evil_command_active) { - render_minibuffer_content(&atlas, &sr, &editor, ":"); - } - /* print_variable_doc("zoom_factor"); */ - } + case SDLK_y: + if (editor.selection) { + editor_clipboard_copy(&editor); + } else { + evil_yank_line(&editor); + } + break; - SDL_GL_SwapWindow(window); - const Uint32 duration = SDL_GetTicks() - start; - const Uint32 delta_time_ms = 1000 / FPS; - if (duration < delta_time_ms) { - SDL_Delay(delta_time_ms - duration); - } - } + + case SDLK_g: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_move_to_end(&editor); + } else { + editor_move_to_begin(&editor); + } + } break; + + case SDLK_SLASH: { + current_mode = MINIBUFFER; + editor.last_stroke = SDL_GetTicks(); + editor_start_search(&editor); + + // Consume the next SDL_TEXTINPUT event for '/' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '/') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } break; + + case SDLK_n: { + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_line_down(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_next_buffer(&editor); + } else if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_previous(&editor); + } else { + evil_search_next(&editor); + } + } break; + + case SDLK_p: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_previous_buffer(&editor); + } else if (copiedLine) { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_paste_before(&editor); + } else { + evil_paste_after(&editor); + } + } else { + editor_clipboard_paste(&editor); + } + break; + + case SDLK_b: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_left(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_kill_buffer(&editor); + } else { + editor_move_word_left(&editor); + } + break; + + case SDLK_f: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_right(&editor); + } + break; + + case SDLK_s: { + if (event.key.keysym.mod & KMOD_CTRL) { + // Ctrl+S is pressed + editor_start_search(&editor); + current_mode = MINIBUFFER; + } else { + // Either S or Shift+S is pressed + if (event.key.keysym.mod & KMOD_SHIFT) { + evil_change_whole_line(&editor); + } else { + evil_substitute(&editor); + } + editor.selection = false; + // Eat up the next SDL_TEXTINPUT event for 's' or 'S' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 's' && tmpEvent.text.text[0] != 'S')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + editor.last_stroke = SDL_GetTicks(); + } + break; + } + + case SDLK_EQUALS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_next(¤tThemeIndex); + printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor -= 1.0f; + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } + } + } break; + + case SDLK_MINUS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_previous(¤tThemeIndex); + printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor += 1.0f; + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } + } + } break; + + case SDLK_i: + if (SDL_GetModState() & KMOD_CTRL) { + showIndentationLines = !showIndentationLines; + } else if (SDL_GetModState() & KMOD_ALT) { + if (SDL_GetModState() & KMOD_SHIFT) { + remove_one_indentation(&editor); + } else { + add_one_indentation(&editor); + } + } else { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_insert_line(&editor); + } else { + current_mode = INSERT; + } + + if (superDrammtic){ + followCursor = true; + } + editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } + break; + + case SDLK_v: { + if (SDL_GetModState() & KMOD_SHIFT) { + current_mode = VISUAL_LINE; + evil_visual_line(&editor); + } else { + current_mode = VISUAL; + evil_visual_char(&editor); + } + } break; + + case SDLK_4: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_move_to_line_end(&editor); + } + } break; + + case SDLK_a: + editor.last_stroke = SDL_GetTicks(); + if (superDrammtic){ + followCursor = true; + } + if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held + editor_move_to_line_end(&editor); + } else { + // Move the cursor one position to the right + editor_move_char_right(&editor); + } + + current_mode = INSERT; + + // Eat up the next SDL_TEXTINPUT event for 'a' or 'A' + SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'a' or 'A' + if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != 'a' && tmpEvent.text.text[0] != 'A')) { + SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue + } + break; + + case SDLK_x: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_ALT) { + if (!M_x_active) { + current_mode = MINIBUFFER; + M_x_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for 'x' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'x') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + + // TODO ivy + /* if (!ivy) { */ + /* minibufferHeight += 189; */ + /* ivy = true; */ + /* } */ + } else if (event.key.keysym.mod & KMOD_SHIFT) { + evil_delete_backward_char(&editor); + } else { + editor_clipboard_copy(&editor); + evil_delete_char(&editor); + } + break; + + case SDLK_0: + editor_move_to_line_begin(&editor); + break; + + case SDLK_F3: + file_browser = true; + break; + + case SDLK_r: + if (event.key.keysym.mod & KMOD_CTRL) { + file_browser = true; + } + break; + + case SDLK_BACKSPACE: // yes you can delete in normal mode + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + } else { + editor_backspace(&editor); + } + break; + + case SDLK_h: + if (event.key.keysym.mod & KMOD_ALT) { + emacs_mark_paragraph(&editor, true); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_j: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { + move_camera(&sr, "down", 50.0f); + } else if (event.key.keysym.mod & KMOD_CTRL) { + evil_open_above(&editor); + } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { + evil_join(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_k: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { + move_camera(&sr, "up", 50.0f); + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_kill_line(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_move_paragraph_up(&editor); + } else if (event.key.keysym.mod & KMOD_SHIFT) { + goto_definition(&editor); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + showLineNumbers = !showLineNumbers; + } else if (event.key.keysym.mod & KMOD_ALT) { + select_region_from_inside_braces(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_DOWN: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_down(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + } + break; + + + case SDLK_UP: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_up(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_up(&editor); + + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } + } + break; + + + + case SDLK_RIGHT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_right(&editor); + break; + + case SDLK_LEFT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_left(&editor); + break; + + + case SDLK_w: + if (event.key.keysym.mod & KMOD_CTRL) { + showWhitespaces = !showWhitespaces; + }else{ + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_word_right(&editor); + } + break; + + case SDLK_e: + if (event.key.keysym.mod & KMOD_CTRL) { + isWave = !isWave; + /* current_mode = EMACS; */ + /* editor.last_stroke = SDL_GetTicks(); */ + } + break; + + // additional NORMAL mode keybinds here... + } break; + + + + + + + + + + + + + case MINIBUFFER: + switch (event.key.keysym.sym) { + + case SDLK_ESCAPE: { + if (ivy) { + minibufferHeight -= 189; + ivy = false; + } + + if (editor.searching) { + editor_clear_mark(&editor); + editor_stop_search(&editor); + } else if (editor.minibuffer_active) { + editor.minibuffer_text.count = 0; + M_x_active = false; + editor.minibuffer_active = false; + } + current_mode = NORMAL; + } + break; + + case SDLK_BACKSPACE: + if (editor.selection) { + // TODO once we have selection in the minibuffer + /* editor_clipboard_copy(&editor); */ + /* editor_delete_selection(&editor); */ + /* editor.selection = false; */ + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + // TODO use editor_enter() + case SDLK_RETURN: { + editor_enter(&editor); + } + break; + } + break; + + // More cases for other modes can follow here... + // ... + } + break; + } + break; + + + case SDL_TEXTINPUT: + if (file_browser) { + // Once we have incremental search in the file browser this may become useful + // or to edit file names or create files/direcory + } else if (current_mode == INSERT || current_mode == EMACS || current_mode == MINIBUFFER) { // Process text input + + if (editor.selection) { + editor_delete_selection(&editor); + } + + const char *text = event.text.text; + size_t text_len = strlen(text); + for (size_t i = 0; i < text_len; ++i) { + editor_insert_char(&editor, text[i]); + } + + editor.selection = false; + editor.last_stroke = SDL_GetTicks(); + } + break; + + } + } + + int w, h; + SDL_GetWindowSize(window, &w, &h); + glViewport(0, 0, w, h); + /* Vec4f bg = themes[currentThemeIndex].background; */ + Vec4f bg = currentTheme.background; + bg.w = 0.0f; + glClearColor(bg.x, bg.y, bg.z, bg.w); + glClear(GL_COLOR_BUFFER_BIT); + + if (file_browser) { + fb_render(&fb, window, &atlas, &sr); + } else { + if (theme_lerp){ + update_theme_interpolation(); + } + + update_modeline_animation(); + update_minibuffer_animation(DELTA_TIME); + + editor_render(window, &atlas, &sr, &editor); + render_search_text(&atlas, &sr, &editor); + + + + if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "md") == 0) { + render_markdown(&atlas, &sr, &editor, &fb); + } + + + + if (M_x_active){ + render_minibuffer_content(&atlas, &sr, &editor, "M-x"); + } else if (evil_command_active) { + render_minibuffer_content(&atlas, &sr, &editor, ":"); + } + /* print_variable_doc("zoom_factor"); */ + } + + SDL_GL_SwapWindow(window); + const Uint32 duration = SDL_GetTicks() - start; + const Uint32 delta_time_ms = 1000 / FPS; + if (duration < delta_time_ms) { + SDL_Delay(delta_time_ms - duration); + } + } + + shutdown_lsp(); free_snippet_array(&snippets); // TODO return 0; } diff --git a/src/render.c b/src/render.c index c4357733..55f579d1 100644 --- a/src/render.c +++ b/src/render.c @@ -6,8 +6,12 @@ #include "lexer.h" #include "simple_renderer.h" #include "theme.h" +#include float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; +bool render_whitespaces_on_select = true; +bool lerpTokens = true; + // TODO sub-pixel rendering void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { @@ -40,6 +44,58 @@ void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed } } +void render_selection(Editor *editor, Simple_Renderer *sr, Free_Glyph_Atlas *atlas) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + if (editor->selection) { + for (size_t row = 0; row < editor->lines.count; ++row) { + size_t select_begin_chr = editor->select_begin; + size_t select_end_chr = editor->cursor; + if (select_begin_chr > select_end_chr) { + SWAP(size_t, select_begin_chr, select_end_chr); + } + + Line line_chr = editor->lines.items[row]; + + if (select_begin_chr < line_chr.begin) { + select_begin_chr = line_chr.begin; + } + + if (select_end_chr > line_chr.end) { + select_end_chr = line_chr.end; + } + + if (select_begin_chr <= select_end_chr) { + Vec2f select_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + line_chr.begin, select_begin_chr - line_chr.begin, + &select_begin_scr); + + Vec2f select_end_scr = select_begin_scr; + // Adjust the range to include the end character + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + select_begin_chr, select_end_chr - select_begin_chr + 1, + &select_end_scr); + + // Adjust selection for line numbers if displayed + if (showLineNumbers) { + select_begin_scr.x += lineNumberWidth; + select_end_scr.x += lineNumberWidth; + } + + Vec4f selection_color = vec4f(.25, .25, .25, 1); + + simple_renderer_solid_rect(sr, select_begin_scr, vec2f(select_end_scr.x - select_begin_scr.x, FREE_GLYPH_FONT_SIZE), selection_color); + } + } + } + simple_renderer_flush(sr); +} + + #include // Include string.h for strcmp typedef struct { @@ -48,6 +104,8 @@ typedef struct { float startX; } MarkdownCodeBlockInfo; + +// TODO allign codeblock with cursor and make them expandable adding chars void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, File_Browser *fb) { const float LINE_HEIGHT = FREE_GLYPH_FONT_SIZE; MarkdownCodeBlockInfo codeBlockStack[500]; // Assuming a max of 500 code blocks @@ -84,7 +142,7 @@ void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *edito } Vec4f codeBlockColor = CURRENT_THEME.code_block; - Vec2f rectSize = {/* endPos.x - */ startPos.x + 6000.0f, endPos.y - startPos.y}; // TODO use w + Vec2f rectSize = {/* endPos.x - */ startPos.x + 2000.0f, endPos.y - startPos.y}; // TODO use w simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); simple_renderer_solid_rect(sr, startPos, rectSize, codeBlockColor); @@ -204,76 +262,102 @@ void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *e } - -// SQAURES +// TODO /* void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { */ -/* if (showWhitespaces) { */ -/* if (isWave) { */ -/* simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); */ -/* } else { */ -/* simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); */ +/* float circleRadius = FREE_GLYPH_FONT_SIZE * 0.1; */ +/* Vec4f whitespaceColor = CURRENT_THEME.whitespace; */ +/* int circleSegments = 20; */ + +/* for (size_t i = 0; i < editor->lines.count; ++i) { */ +/* Line line = editor->lines.items[i]; */ +/* Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; */ + +/* if (showLineNumbers) { */ +/* pos.x += lineNumberWidth; */ /* } */ - -/* float squareSize = FREE_GLYPH_FONT_SIZE * 0.2; */ -/* Vec4f whitespaceColor = CURRENT_THEME.whitespace; */ - -/* for (size_t i = 0; i < editor->lines.count; ++i) { */ -/* Line line = editor->lines.items[i]; */ -/* Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; */ - -/* if (showLineNumbers) { */ -/* pos.x += lineNumberWidth; */ -/* } */ - -/* for (size_t j = line.begin; j < line.end; ++j) { */ -/* if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { */ -/* // Measure the actual character width */ -/* Vec2f char_pos = pos; */ -/* char_pos.x += (j - line.begin) * squareSize; // Starting position for this character */ -/* free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); */ -/* float char_width = char_pos.x - pos.x - (j - line.begin) * squareSize; */ - -/* Vec2f rectPos = {pos.x + (j - line.begin) * char_width + (char_width - squareSize) / 2, pos.y + (FREE_GLYPH_FONT_SIZE - squareSize) / 2}; */ -/* simple_renderer_solid_rect(sr, rectPos, vec2f(squareSize, squareSize), whitespaceColor); */ -/* } */ + +/* // Manually calculate the selection start and end */ +/* size_t selectionStart = editor->select_begin; */ +/* size_t selectionEnd = editor->cursor; */ +/* if (selectionStart > selectionEnd) { */ +/* size_t temp = selectionStart; */ +/* selectionStart = selectionEnd; */ +/* selectionEnd = temp; */ +/* } */ + +/* for (size_t j = line.begin; j < line.end; ++j) { */ +/* bool isWhitespace = editor->data.items[j] == ' ' || editor->data.items[j] == '\t'; */ +/* bool isInSelection = editor->selection && j >= selectionStart && j < selectionEnd; */ +/* bool shouldRenderAll = showWhitespaces && isWhitespace; */ +/* bool shouldRenderInSelection = render_whitespaces_on_select && isInSelection && isWhitespace; */ + +/* if (shouldRenderAll || shouldRenderInSelection) { */ +/* Vec2f char_pos = pos; */ +/* char_pos.x += (j - line.begin) * circleRadius * 2; */ +/* free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); */ +/* float char_width = char_pos.x - pos.x - (j - line.begin) * circleRadius * 2; */ + +/* Vec2f circleCenter = {pos.x + (j - line.begin) * char_width + char_width / 2, pos.y + FREE_GLYPH_FONT_SIZE / 2}; */ + +/* simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); */ +/* simple_renderer_circle(sr, circleCenter, circleRadius, whitespaceColor, circleSegments); */ /* } */ /* } */ -/* simple_renderer_flush(sr); */ /* } */ -/* } */ +/* simple_renderer_flush(sr); */ +/* } */ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { - if (showWhitespaces) { - float circleRadius = FREE_GLYPH_FONT_SIZE * 0.1; // Adjust the radius as needed - Vec4f whitespaceColor = CURRENT_THEME.whitespace; - int circleSegments = 20; // Adjust the number of segments for smoother circles + float circleRadius = FREE_GLYPH_FONT_SIZE * 0.1; + int circleSegments = 20; - for (size_t i = 0; i < editor->lines.count; ++i) { - Line line = editor->lines.items[i]; - Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - if (showLineNumbers) { - pos.x += lineNumberWidth; + if (showLineNumbers) { + pos.x += lineNumberWidth; + } + + // Manually calculate the selection start and end + size_t selectionStart = editor->select_begin; + size_t selectionEnd = editor->cursor; + bool isSelectingLeftToRight = selectionStart <= editor->cursor; + if (selectionStart > selectionEnd) { + size_t temp = selectionStart; + selectionStart = selectionEnd; + selectionEnd = temp; + } + + for (size_t j = line.begin; j < line.end; ++j) { + bool isWhitespace = editor->data.items[j] == ' ' || editor->data.items[j] == '\t'; + bool isInSelection = editor->selection && j >= selectionStart && j < selectionEnd; + bool shouldRenderAll = showWhitespaces && isWhitespace; + bool shouldRenderInSelection = render_whitespaces_on_select && isInSelection && isWhitespace; + + // Skip rendering whitespace at cursor's original position when selecting left to right + if (isSelectingLeftToRight && j == editor->cursor) { + continue; } - for (size_t j = line.begin; j < line.end; ++j) { - if (editor->data.items[j] == ' ' || editor->data.items[j] == '\t') { - Vec2f char_pos = pos; - char_pos.x += (j - line.begin) * circleRadius * 2; - free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); - float char_width = char_pos.x - pos.x - (j - line.begin) * circleRadius * 2; + if (shouldRenderAll || shouldRenderInSelection) { + Vec2f char_pos = pos; + char_pos.x += (j - line.begin) * circleRadius * 2; + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); + float char_width = char_pos.x - pos.x - (j - line.begin) * circleRadius * 2; - Vec2f circleCenter = {pos.x + (j - line.begin) * char_width + char_width / 2, pos.y + FREE_GLYPH_FONT_SIZE / 2}; + Vec2f circleCenter = {pos.x + (j - line.begin) * char_width + char_width / 2, pos.y + FREE_GLYPH_FONT_SIZE / 2}; - // Draw the circle for whitespace - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - simple_renderer_circle(sr, circleCenter, circleRadius, whitespaceColor, circleSegments); - } + Vec4f whitespaceColor = shouldRenderInSelection ? CURRENT_THEME.selected_whitespaces : CURRENT_THEME.whitespace; + + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + simple_renderer_circle(sr, circleCenter, circleRadius, whitespaceColor, circleSegments); } } - simple_renderer_flush(sr); } + + simple_renderer_flush(sr); } @@ -429,61 +513,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // TODO shader switch render_indentation_lines(sr, atlas, editor); - - // Render selection - - { - if (isWave){ - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - }else{ - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - if (editor->selection) { - for (size_t row = 0; row < editor->lines.count; ++row) { - size_t select_begin_chr = editor->select_begin; - size_t select_end_chr = editor->cursor; - if (select_begin_chr > select_end_chr) { - SWAP(size_t, select_begin_chr, select_end_chr); - } - - Line line_chr = editor->lines.items[row]; - - if (select_begin_chr < line_chr.begin) { - select_begin_chr = line_chr.begin; - } - - if (select_end_chr > line_chr.end) { - select_end_chr = line_chr.end; - } - - if (select_begin_chr <= select_end_chr) { - Vec2f select_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + line_chr.begin, select_begin_chr - line_chr.begin, - &select_begin_scr); - - Vec2f select_end_scr = select_begin_scr; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + select_begin_chr, select_end_chr - select_begin_chr, - &select_end_scr); - - // Adjust selection for line numbers if displayed - if (showLineNumbers) { - select_begin_scr.x += lineNumberWidth; - select_end_scr.x += lineNumberWidth; - } - - Vec4f selection_color = vec4f(.25, .25, .25, 1); - - simple_renderer_solid_rect(sr, select_begin_scr, vec2f(select_end_scr.x - select_begin_scr.x, FREE_GLYPH_FONT_SIZE), selection_color); - } - } - } - simple_renderer_flush(sr); - } - - + render_selection(editor, sr, atlas); + render_whitespaces(atlas, sr, editor); + Vec2f cursor_pos = vec2fs(0.0f); { size_t cursor_row = editor_cursor_row(editor); @@ -609,7 +642,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } } - + + // Render text { @@ -847,13 +881,16 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } - render_whitespaces(atlas, sr, editor); + + + + // Render cursor if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_CURSOR); } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_CURSOR); } { @@ -899,6 +936,28 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer CURSOR_COLOR); } break; + case HELIX: { + float cursor_width; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + cursor_width = whitespace_width; + } + + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } break; + + + + case EMACS: { float cursor_width; CURSOR_COLOR = CURRENT_THEME.emacs_cursor; @@ -1050,7 +1109,24 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // Update camera { if (followCursor && !instantCamera) { - + if (automatic_zoom) { + float len = calculate_max_line_length(editor); + if (len > 0) { // Check if there is at least one line + if (len <= 62) { + zoom_factor = 4.0f; + } else if (len <= 78) { + zoom_factor = 5.0f; + } else if (len <= 94) { + zoom_factor = 6.0f; + } else { + zoom_factor = 7.0f; + if (showLineNumbers) { + zoom_factor += 1; + } + } + } + } + if (max_line_len > 1000.0f) { max_line_len = 1000.0f; } diff --git a/src/render.h b/src/render.h index 224ce89f..2ae277bd 100644 --- a/src/render.h +++ b/src/render.h @@ -6,6 +6,14 @@ #include "simple_renderer.h" #include "editor.h" + +extern float tokenInterpolationProgress; +extern float tokenLerpSpeed; +extern bool tokenLerp; + + +void update_tokens_interpolation(); + void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor); /* void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); */ @@ -17,4 +25,15 @@ void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *e void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, File_Browser *fb); + +typedef struct { + Vec4f originalColor; + Vec4f targetColor; + float interpolationProgress; +} TokenColorData; + + + + + #endif // RENDER_H diff --git a/src/theme.c b/src/theme.c index 43748983..0c329db9 100644 --- a/src/theme.c +++ b/src/theme.c @@ -1,11 +1,154 @@ #include "theme.h" #include "common.h" +#include "editor.h" int currentThemeIndex = 0; -Theme themes[7]; +int previousThemeIndex = 0; +float interpolationProgress; +Theme themes[8]; +Theme currentTheme; +Theme previousTheme; -void initialize_themes() { +bool theme_lerp = true; +float theme_lerp_speed = 0.005f; +float theme_lerp_treshold = 1.0f; // 0.5 mix themes + +Vec4f color_lerp(Vec4f start, Vec4f end, float t) { + Vec4f result; + result.x = start.x + (end.x - start.x) * t; + result.y = start.y + (end.y - start.y) * t; + result.z = start.z + (end.z - start.z) * t; + result.w = start.w + (end.w - start.w) * t; + return result; +} + + +void switch_to_theme(int *currentThemeIndex, int newIndex) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + + // Check if newIndex is valid + if (newIndex < 0 || newIndex >= themeCount) { + return; // Invalid index, do nothing + } + + // Update previous theme information + previousTheme = currentTheme; + previousThemeIndex = *currentThemeIndex; + + // Set the new theme index + *currentThemeIndex = newIndex; + + // Reset interpolation progress + interpolationProgress = 0.0f; + + if (!theme_lerp) { + // If theme lerp is disabled, set the current theme immediately + currentTheme = themes[*currentThemeIndex]; + } +} + + +void theme_next(int *currentThemeIndex) { + previousTheme = currentTheme; // Capture the current interpolated state + previousThemeIndex = *currentThemeIndex; + + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; + + if (!theme_lerp) { + currentTheme = themes[*currentThemeIndex]; + } + interpolationProgress = 0.0f; // Restart interpolation +} + +void theme_previous(int *currentThemeIndex) { + previousTheme = currentTheme; // Capture the current interpolated state + previousThemeIndex = *currentThemeIndex; + *currentThemeIndex -= 1; + if (*currentThemeIndex < 0) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = themeCount - 1; + } + + if (!theme_lerp) { + currentTheme = themes[*currentThemeIndex]; + } + + interpolationProgress = 0.0f; // Restart interpolation +} + +void update_theme_interpolation() { + if (theme_lerp && interpolationProgress < theme_lerp_treshold) { + interpolationProgress += theme_lerp_speed; + Theme startTheme = previousTheme; + Theme endTheme = themes[currentThemeIndex]; + + // Interpolate each color component + currentTheme.cursor = color_lerp(startTheme.cursor, endTheme.cursor, interpolationProgress); + currentTheme.insert_cursor = color_lerp(startTheme.insert_cursor, endTheme.insert_cursor, interpolationProgress); + currentTheme.emacs_cursor = color_lerp(startTheme.emacs_cursor, endTheme.emacs_cursor, interpolationProgress); + currentTheme.text = color_lerp(startTheme.text, endTheme.text, interpolationProgress); + currentTheme.background = color_lerp(startTheme.background, endTheme.background, interpolationProgress); + currentTheme.logic = color_lerp(startTheme.logic, endTheme.logic, interpolationProgress); + currentTheme.comment = color_lerp(startTheme.comment, endTheme.comment, interpolationProgress); + currentTheme.hashtag = color_lerp(startTheme.hashtag, endTheme.hashtag, interpolationProgress); + currentTheme.string = color_lerp(startTheme.string, endTheme.string, interpolationProgress); + currentTheme.selection = color_lerp(startTheme.selection, endTheme.selection, interpolationProgress); + currentTheme.search = color_lerp(startTheme.search, endTheme.search, interpolationProgress); + currentTheme.line_numbers = color_lerp(startTheme.line_numbers, endTheme.line_numbers, interpolationProgress); + currentTheme.todo = color_lerp(startTheme.todo, endTheme.todo, interpolationProgress); + currentTheme.fixme = color_lerp(startTheme.fixme, endTheme.fixme, interpolationProgress); + currentTheme.note = color_lerp(startTheme.note, endTheme.note, interpolationProgress); + currentTheme.bug = color_lerp(startTheme.bug, endTheme.bug, interpolationProgress); + currentTheme.equals = color_lerp(startTheme.equals, endTheme.equals, interpolationProgress); + currentTheme.not_equals = color_lerp(startTheme.not_equals, endTheme.not_equals, interpolationProgress); + currentTheme.exclamation = color_lerp(startTheme.exclamation, endTheme.exclamation, interpolationProgress); + currentTheme.equals_equals = color_lerp(startTheme.equals_equals, endTheme.equals_equals, interpolationProgress); + currentTheme.less_than = color_lerp(startTheme.less_than, endTheme.less_than, interpolationProgress); + currentTheme.greater_than = color_lerp(startTheme.greater_than, endTheme.greater_than, interpolationProgress); + currentTheme.arrow = color_lerp(startTheme.arrow, endTheme.arrow, interpolationProgress); + currentTheme.plus = color_lerp(startTheme.plus, endTheme.plus, interpolationProgress); + currentTheme.minus = color_lerp(startTheme.minus, endTheme.minus, interpolationProgress); + currentTheme.truee = color_lerp(startTheme.truee, endTheme.truee, interpolationProgress); + currentTheme.falsee = color_lerp(startTheme.falsee, endTheme.falsee, interpolationProgress); + currentTheme.open_square = color_lerp(startTheme.open_square, endTheme.open_square, interpolationProgress); + currentTheme.close_square = color_lerp(startTheme.close_square, endTheme.close_square, interpolationProgress); + currentTheme.array_content = color_lerp(startTheme.array_content, endTheme.array_content, interpolationProgress); + currentTheme.current_line_number = color_lerp(startTheme.current_line_number, endTheme.current_line_number, interpolationProgress); + currentTheme.marks = color_lerp(startTheme.marks, endTheme.marks, interpolationProgress); + currentTheme.fb_selection = color_lerp(startTheme.fb_selection, endTheme.fb_selection, interpolationProgress); + currentTheme.link = color_lerp(startTheme.link, endTheme.link, interpolationProgress); + currentTheme.logic_or = color_lerp(startTheme.logic_or, endTheme.logic_or, interpolationProgress); + currentTheme.pipe = color_lerp(startTheme.pipe, endTheme.pipe, interpolationProgress); + currentTheme.logic_and = color_lerp(startTheme.logic_and, endTheme.logic_and, interpolationProgress); + currentTheme.ampersand = color_lerp(startTheme.ampersand, endTheme.ampersand, interpolationProgress); + currentTheme.multiplication = color_lerp(startTheme.multiplication, endTheme.multiplication, interpolationProgress); + currentTheme.pointer = color_lerp(startTheme.pointer, endTheme.pointer, interpolationProgress); + currentTheme.modeline = color_lerp(startTheme.modeline, endTheme.modeline, interpolationProgress); + currentTheme.modeline_accent = color_lerp(startTheme.modeline_accent, endTheme.modeline_accent, interpolationProgress); + currentTheme.minibuffer = color_lerp(startTheme.minibuffer, endTheme.minibuffer, interpolationProgress); + currentTheme.matching_parenthesis = color_lerp(startTheme.matching_parenthesis, endTheme.matching_parenthesis, interpolationProgress); + currentTheme.hl_line = color_lerp(startTheme.hl_line, endTheme.hl_line, interpolationProgress); + currentTheme.type = color_lerp(startTheme.type, endTheme.type, interpolationProgress); + currentTheme.function_definition = color_lerp(startTheme.function_definition, endTheme.function_definition, interpolationProgress); + currentTheme.anchor = color_lerp(startTheme.anchor, endTheme.anchor, interpolationProgress); + currentTheme.whitespace = color_lerp(startTheme.whitespace, endTheme.whitespace, interpolationProgress); + currentTheme.indentation_line = color_lerp(startTheme.indentation_line, endTheme.indentation_line, interpolationProgress); + currentTheme.null = color_lerp(startTheme.null, endTheme.null, interpolationProgress); + currentTheme.code_block = color_lerp(startTheme.code_block, endTheme.code_block, interpolationProgress); + + + if (interpolationProgress >= 1.0f) { + interpolationProgress = 1.0f; + } + } else if (!theme_lerp) { + currentTheme = themes[currentThemeIndex]; + interpolationProgress = 1.0f; + } +} + +void initialize_themes() { // Nature themes[0] = (Theme) { .cursor = hex_to_vec4f(0x658B5FFF), @@ -57,6 +200,7 @@ void initialize_themes() { .modeline = hex_to_vec4f(0x060606FF), .modeline_accent = hex_to_vec4f(0x658B5FFF), .whitespace = hex_to_vec4f(0x171717FF), + .selected_whitespaces = hex_to_vec4f(0x9989A7FF), .indentation_line = hex_to_vec4f(0x171717FF), .null = hex_to_vec4f(0x564F96FF), .code_block = hex_to_vec4f(0x080808FF), @@ -113,29 +257,30 @@ void initialize_themes() { .modeline = hex_to_vec4f(0x1D2026FF), .modeline_accent = hex_to_vec4f(0x51AFEFFF), .whitespace = hex_to_vec4f(0x3F444AFF), + .selected_whitespaces = hex_to_vec4f(0x959BA5FF), .indentation_line = hex_to_vec4f(0x3F444AFF), .null = hex_to_vec4f(0xA9A1E1FF), .code_block = hex_to_vec4f(0x23272EFF), }; // Dracula - themes[2] = (Theme) { - .cursor = hex_to_vec4f(0xBD93F9FF), //#BD93F9 + themes[2] = (Theme){ + .cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 .insert_cursor = hex_to_vec4f(0xBD93F9FF), - .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), //#F1FA8C + .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), // #F1FA8C .text = hex_to_vec4f(0xF8F8F2FF), .background = hex_to_vec4f(0x282A36FF), .comment = hex_to_vec4f(0x6272A4FF), .hashtag = hex_to_vec4f(0xBD93F9FF), - .logic = hex_to_vec4f(0xFF79C6FF), //#FF79C6 + .logic = hex_to_vec4f(0xFF79C6FF), // #FF79C6 .string = hex_to_vec4f(0xF1FA8CFF), .selection = hex_to_vec4f(0x44475AFF), - .search = hex_to_vec4f(0x8466AEFF), //#8466AE + .search = hex_to_vec4f(0x8466AEFF), // #8466AE .todo = hex_to_vec4f(0xF1FA8CFF), .line_numbers = hex_to_vec4f(0x6272A4FF), .current_line_number = hex_to_vec4f(0xF8F8F2FF), - .fixme = hex_to_vec4f(0xFF5555FF), //#FF5555 - .note = hex_to_vec4f(0x50FA7BFF), //#50FA7B + .fixme = hex_to_vec4f(0xFF5555FF), // #FF5555 + .note = hex_to_vec4f(0x50FA7BFF), // #50FA7B .bug = hex_to_vec4f(0xFF5555FF), .not_equals = hex_to_vec4f(0xFF5555FF), .exclamation = hex_to_vec4f(0xBD93F9FF), @@ -149,7 +294,7 @@ void initialize_themes() { .minus = hex_to_vec4f(0xFF5555FF), .truee = hex_to_vec4f(0x50FA7BFF), .falsee = hex_to_vec4f(0xFF5555FF), - .arrow = hex_to_vec4f(0x8BE9FDFF), //#8BE9FD + .arrow = hex_to_vec4f(0x8BE9FDFF), // #8BE9FD .open_square = hex_to_vec4f(0xF8F8F2FF), .close_square = hex_to_vec4f(0xF8F8F2FF), .array_content = hex_to_vec4f(0xBD93F9FF), @@ -158,24 +303,83 @@ void initialize_themes() { .type = hex_to_vec4f(0xBD93F9FF), .function_definition = hex_to_vec4f(0x50FA7BFF), .anchor = hex_to_vec4f(0xFF79C6FF), - .hl_line = hex_to_vec4f(0x1E2029FF), //#1E2029 + .hl_line = hex_to_vec4f(0x1E2029FF), // #1E2029 .multiplication = hex_to_vec4f(0x50FA7BFF), - .pointer = hex_to_vec4f(0xFFC9E8FF), //#FFC9E8 + .pointer = hex_to_vec4f(0xFFC9E8FF), // #FFC9E8 .logic_and = hex_to_vec4f(0x50FA7BFF), .logic_or = hex_to_vec4f(0xFF5555FF), .ampersand = hex_to_vec4f(0x8BE9FDFF), .pipe = hex_to_vec4f(0x50FA7BFF), - .minibuffer = hex_to_vec4f(0x1E2029FF), //#1E2029 + .minibuffer = hex_to_vec4f(0x1E2029FF), // #1E2029 .modeline = hex_to_vec4f(0x22232DFF), .modeline_accent = hex_to_vec4f(0xBD93F9FF), .whitespace = hex_to_vec4f(0x565761FF), + .selected_whitespaces = hex_to_vec4f(0xC6C6C1FF), .indentation_line = hex_to_vec4f(0x565761FF), .null = hex_to_vec4f(0x8BE9FDFF), .code_block = hex_to_vec4f(0x23242FFF), }; - // DOOM city lights + + // Palenigh themes[3] = (Theme){ + .cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .insert_cursor = hex_to_vec4f(0xC792EAFF), + .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), // #FFCB6B + .text = hex_to_vec4f(0xEEFFFFFF), + .background = hex_to_vec4f(0x292D3EFF), + .comment = hex_to_vec4f(0x676E95FF), + .hashtag = hex_to_vec4f(0x89DDFFFF), // #89DDFF + .logic = hex_to_vec4f(0x89DDFFFF), + .string = hex_to_vec4f(0xC3E88DFF), // #C3E88D + .selection = hex_to_vec4f(0x3C435EFF), + .search = hex_to_vec4f(0x4E5579FF), + .todo = hex_to_vec4f(0xFFCB6BFF), + .line_numbers = hex_to_vec4f(0x676E95FF), + .current_line_number = hex_to_vec4f(0xEEFFFFFF), + .fixme = hex_to_vec4f(0xFF5370FF), // #FF5370 + .note = hex_to_vec4f(0xC3E88DFF), + .bug = hex_to_vec4f(0xFF5370FF), + .not_equals = hex_to_vec4f(0xFF5370FF), + .exclamation = hex_to_vec4f(0x89DDFFFF), + .equals = hex_to_vec4f(0xC3E88DFF), + .equals_equals = hex_to_vec4f(0xC3E88DFF), + .greater_than = hex_to_vec4f(0xC3E88DFF), + .less_than = hex_to_vec4f(0xFF5370FF), + .marks = hex_to_vec4f(0x4E5579FF), + .fb_selection = hex_to_vec4f(0x3C435EFF), + .plus = hex_to_vec4f(0xC3E88DFF), + .minus = hex_to_vec4f(0xFF5370FF), + .truee = hex_to_vec4f(0xC3E88DFF), + .falsee = hex_to_vec4f(0xFF5370FF), + .arrow = hex_to_vec4f(0xFFCB6BFF), + .open_square = hex_to_vec4f(0xEEFFFFFF), + .close_square = hex_to_vec4f(0xEEFFFFFF), + .array_content = hex_to_vec4f(0x82AAFFFF), // #82AAFF + .link = hex_to_vec4f(0x89DDFFFF), + .logic_or = hex_to_vec4f(0xFF5370FF), + .pipe = hex_to_vec4f(0xC3E88DFF), + .ampersand = hex_to_vec4f(0x89DDFFFF), + .logic_and = hex_to_vec4f(0xC3E88DFF), + .pointer = hex_to_vec4f(0xF78C6CFF), // #F78C6C + .multiplication = hex_to_vec4f(0xC3E88DFF), + .matching_parenthesis = hex_to_vec4f(0x3C435EFF), + .hl_line = hex_to_vec4f(0x242837FF), + .type = hex_to_vec4f(0xC792EAFF), + .function_definition = hex_to_vec4f(0x82AAFFFF), + .anchor = hex_to_vec4f(0xFF5370FF), + .minibuffer = hex_to_vec4f(0x292D3EFF), + .modeline = hex_to_vec4f(0x232635FF), + .modeline_accent = hex_to_vec4f(0xC792EAFF), + .whitespace = hex_to_vec4f(0x4E5579FF), + .selected_whitespaces = hex_to_vec4f(0xBECCCCFF), + .indentation_line = hex_to_vec4f(0x4E5579FF), + .null = hex_to_vec4f(0xF78C6CFF), + .code_block = hex_to_vec4f(0x232635FF), + }; + + // DOOM city lights + themes[4] = (Theme){ .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 @@ -225,6 +429,7 @@ void initialize_themes() { .modeline = hex_to_vec4f(0x181F25FF), .modeline_accent = hex_to_vec4f(0x5EC4FFFF), .whitespace = hex_to_vec4f(0x384551FF), + .selected_whitespaces = hex_to_vec4f(0x808F9DFF), .indentation_line = hex_to_vec4f(0x384551FF), .null = hex_to_vec4f(0xE27E8DFF), .code_block = hex_to_vec4f(0x20282FFF), @@ -232,7 +437,7 @@ void initialize_themes() { // DOOM molokai - themes[4] = (Theme) { + themes[5] = (Theme) { .cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 .insert_cursor = hex_to_vec4f(0xFB2874FF), .emacs_cursor = hex_to_vec4f(0xE2C770FF), //#E2C770 @@ -282,88 +487,31 @@ void initialize_themes() { .modeline = hex_to_vec4f(0x2D2E2EFF), .modeline_accent = hex_to_vec4f(0xB6E63EFF), .whitespace = hex_to_vec4f(0x4E4E4EFF), + .selected_whitespaces = hex_to_vec4f(0x808F9DFF), .indentation_line = hex_to_vec4f(0x4E4E4EFF), .null = hex_to_vec4f(0xFD971FFF), .code_block = hex_to_vec4f(0x2D2E2EFF), }; - - - // Palenight - themes[5] = (Theme){ - .cursor = hex_to_vec4f(0xC792EAFF), // #C792EA - .insert_cursor = hex_to_vec4f(0xC792EAFF), - .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), // #FFCB6B - .text = hex_to_vec4f(0xEEFFFFFF), - .background = hex_to_vec4f(0x292D3EFF), - .comment = hex_to_vec4f(0x676E95FF), - .hashtag = hex_to_vec4f(0x89DDFFFF), // #89DDFF - .logic = hex_to_vec4f(0x89DDFFFF), - .string = hex_to_vec4f(0xC3E88DFF), // #C3E88D - .selection = hex_to_vec4f(0x3C435EFF), - .search = hex_to_vec4f(0x4E5579FF), - .todo = hex_to_vec4f(0xFFCB6BFF), - .line_numbers = hex_to_vec4f(0x676E95FF), - .current_line_number = hex_to_vec4f(0xEEFFFFFF), - .fixme = hex_to_vec4f(0xFF5370FF), // #FF5370 - .note = hex_to_vec4f(0xC3E88DFF), - .bug = hex_to_vec4f(0xFF5370FF), - .not_equals = hex_to_vec4f(0xFF5370FF), - .exclamation = hex_to_vec4f(0x89DDFFFF), - .equals = hex_to_vec4f(0xC3E88DFF), - .equals_equals = hex_to_vec4f(0xC3E88DFF), - .greater_than = hex_to_vec4f(0xC3E88DFF), - .less_than = hex_to_vec4f(0xFF5370FF), - .marks = hex_to_vec4f(0x4E5579FF), - .fb_selection = hex_to_vec4f(0x3C435EFF), - .plus = hex_to_vec4f(0xC3E88DFF), - .minus = hex_to_vec4f(0xFF5370FF), - .truee = hex_to_vec4f(0xC3E88DFF), - .falsee = hex_to_vec4f(0xFF5370FF), - .arrow = hex_to_vec4f(0xFFCB6BFF), - .open_square = hex_to_vec4f(0xEEFFFFFF), - .close_square = hex_to_vec4f(0xEEFFFFFF), - .array_content = hex_to_vec4f(0x82AAFFFF), // #82AAFF - .link = hex_to_vec4f(0x89DDFFFF), - .logic_or = hex_to_vec4f(0xFF5370FF), - .pipe = hex_to_vec4f(0xC3E88DFF), - .ampersand = hex_to_vec4f(0x89DDFFFF), - .logic_and = hex_to_vec4f(0xC3E88DFF), - .pointer = hex_to_vec4f(0xF78C6CFF), // #F78C6C - .multiplication = hex_to_vec4f(0xC3E88DFF), - .matching_parenthesis = hex_to_vec4f(0x3C435EFF), - .hl_line = hex_to_vec4f(0x242837FF), - .type = hex_to_vec4f(0xC792EAFF), - .function_definition = hex_to_vec4f(0x82AAFFFF), - .anchor = hex_to_vec4f(0xFF5370FF), - .minibuffer = hex_to_vec4f(0x292D3EFF), - .modeline = hex_to_vec4f(0x232635FF), - .modeline_accent = hex_to_vec4f(0xC792EAFF), - .whitespace = hex_to_vec4f(0x4E5579FF), - .indentation_line = hex_to_vec4f(0x4E5579FF), - .null = hex_to_vec4f(0xF78C6CFF), - .code_block = hex_to_vec4f(0x232635FF), - }; - // SUNSET - themes[6] = (Theme) { - .cursor = hex_to_vec4f(0xD9A173FF), //#D9A173 - .insert_cursor = hex_to_vec4f(0xD46A7DFF), //#D46A7D - .emacs_cursor = hex_to_vec4f(0x9A8B6AFF), //#9A8B6A + themes[6] = (Theme){ + .cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .insert_cursor = hex_to_vec4f(0xD46A7DFF), // #D46A7D + .emacs_cursor = hex_to_vec4f(0x9A8B6AFF), // #9A8B6A .text = hex_to_vec4f(0xCCCCC5FF), .background = hex_to_vec4f(0x0C0D12FF), .comment = hex_to_vec4f(0x8E8E89FF), .hashtag = hex_to_vec4f(0xD9A173FF), .logic = hex_to_vec4f(0xD9A173FF), - .string = hex_to_vec4f(0x6A7E74FF), //#6A7E74 + .string = hex_to_vec4f(0x6A7E74FF), // #6A7E74 .selection = hex_to_vec4f(0x28292DFF), - .search = hex_to_vec4f(0x805F44FF), //#805F44 - .todo = hex_to_vec4f(0x9A8B6AFF), + .search = hex_to_vec4f(0x805F44FF), // #805F44 + .todo = hex_to_vec4f(0x9A8B6AFF), .line_numbers = hex_to_vec4f(0x1B1B21FF), .current_line_number = hex_to_vec4f(0xCCCCC5FF), - .fixme = hex_to_vec4f(0xC06873FF), //#C06873 - .note = hex_to_vec4f(0x6A7E74FF), + .fixme = hex_to_vec4f(0xC06873FF), // #C06873 + .note = hex_to_vec4f(0x6A7E74FF), .bug = hex_to_vec4f(0xC06873FF), .not_equals = hex_to_vec4f(0xD46A7DFF), .exclamation = hex_to_vec4f(0xD46A7DFF), @@ -391,33 +539,85 @@ void initialize_themes() { .matching_parenthesis = hex_to_vec4f(0x28292DFF), .hl_line = hex_to_vec4f(0x0A0B0FFF), .type = hex_to_vec4f(0x9A8B6AFF), - .function_definition = hex_to_vec4f(0xE07084FF), //#E07084 + .function_definition = hex_to_vec4f(0xE07084FF), // #E07084 .anchor = hex_to_vec4f(0xE07084FF), .minibuffer = hex_to_vec4f(0x0C0D12FF), .modeline = hex_to_vec4f(0x08090CFF), .modeline_accent = hex_to_vec4f(0xD9A173FF), .whitespace = hex_to_vec4f(0x1B1B21FF), + .selected_whitespaces = hex_to_vec4f(0xA3A39DFF), .indentation_line = hex_to_vec4f(0x28292DFF), .null = hex_to_vec4f(0xD46A7DFF), .code_block = hex_to_vec4f(0x0B0C11FF), }; + // Helix + themes[7] = (Theme){ + .cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 + .insert_cursor = hex_to_vec4f(0x5A5977FF), + .emacs_cursor = hex_to_vec4f(0x5A5977FF), + .text = hex_to_vec4f(0xFFFFFFFF), + .background = hex_to_vec4f(0x3B224CFF), //#3B224C + .comment = hex_to_vec4f(0x697C81FF), + .hashtag = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF + .logic = hex_to_vec4f(0xECCDBAFF), //#ECCDBA + .string = hex_to_vec4f(0xCCCCCCFF), + .selection = hex_to_vec4f(0x540099FF), //#540099 + .search = hex_to_vec4f(0x540099FF), + .todo = hex_to_vec4f(0x6F44F0FF), + .line_numbers = hex_to_vec4f(0x5A5977FF), + .current_line_number = hex_to_vec4f(0xDBBFEFFF), + .fixme = hex_to_vec4f(0xF47868FF), //#F47868 + .note = hex_to_vec4f(0x6F44F0FF), + .bug = hex_to_vec4f(0xF47868FF), + .not_equals = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF + .exclamation = hex_to_vec4f(0xDBBFEFFF), + .equals = hex_to_vec4f(0xDBBFEFFF), + .equals_equals = hex_to_vec4f(0xDBBFEFFF), + .greater_than = hex_to_vec4f(0xDBBFEFFF), + .less_than = hex_to_vec4f(0xDBBFEFFF), + .marks = hex_to_vec4f(0x540099FF), + .fb_selection = hex_to_vec4f(0x540099FF), + .plus = hex_to_vec4f(0xDBBFEFFF), + .minus = hex_to_vec4f(0xDBBFEFFF), + .truee = hex_to_vec4f(0xFFFFFFFF), + .falsee = hex_to_vec4f(0xFFFFFFFF), + .arrow = hex_to_vec4f(0xA4A0E8FF), //#A4A0E8 + .open_square = hex_to_vec4f(0xA4A0E8FF), + .close_square = hex_to_vec4f(0xA4A0E8FF), + .array_content = hex_to_vec4f(0xA4A0E8FF), + .link = hex_to_vec4f(0xA4A0E8FF), + .logic_or = hex_to_vec4f(0xDBBFEFFF), + .pipe = hex_to_vec4f(0xDBBFEFFF), + .ampersand = hex_to_vec4f(0xDBBFEFFF), + .logic_and = hex_to_vec4f(0xDBBFEFFF), + .pointer = hex_to_vec4f(0xFFFFFFFF), + .multiplication = hex_to_vec4f(0xFFFFFFFF), + .matching_parenthesis = hex_to_vec4f(0x6C6999FF), + .hl_line = hex_to_vec4f(0x281733FF), + .type = hex_to_vec4f(0xFFFFFFFF), + .function_definition = hex_to_vec4f(0xFFFFFFFF), + .anchor = hex_to_vec4f(0xFFFFFFFF), + .minibuffer = hex_to_vec4f(0x3B224CFF), + .modeline = hex_to_vec4f(0x281733FF), + .modeline_accent = hex_to_vec4f(0x281733FF), + .whitespace = hex_to_vec4f(0x281733FF), + .selected_whitespaces = hex_to_vec4f(0xFFFFFFFF), + .indentation_line = hex_to_vec4f(0x281733FF), + .null = hex_to_vec4f(0xFFFFFFFF), + .code_block = hex_to_vec4f(0x281733FF), + }; - } - -void theme_next(int *currentThemeIndex) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex += 1; - if (*currentThemeIndex >= themeCount) { - *currentThemeIndex = 0; // wrap around + + // Initialize currentTheme to the first theme + if (current_mode == HELIX) { + currentTheme = themes[7]; + } else { + currentTheme = themes[0]; } -} + previousThemeIndex = 0; + currentThemeIndex = 0; + interpolationProgress = 1.0f; // No interpolation needed at start -void theme_previous(int *currentThemeIndex) { - *currentThemeIndex -= 1; - if (*currentThemeIndex < 0) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex = themeCount - 1; // wrap around to the last theme - } -} + } diff --git a/src/theme.h b/src/theme.h index 895dd42c..83326525 100644 --- a/src/theme.h +++ b/src/theme.h @@ -2,6 +2,7 @@ #define THEME_H #include "la.h" +#include "stdbool.h" typedef struct { Vec4f cursor; @@ -53,18 +54,34 @@ typedef struct { Vec4f function_definition; Vec4f anchor; Vec4f whitespace; + Vec4f selected_whitespaces; Vec4f indentation_line; Vec4f null; Vec4f code_block; } Theme; +#define CURRENT_THEME (currentTheme) // interpolated theme extern Theme themes[]; +extern Theme currentTheme; // Interpolated theme +extern Theme previousTheme; extern int currentThemeIndex; -#define CURRENT_THEME (themes[currentThemeIndex]) +extern int previousThemeIndex; // Index of the previous theme + +extern float interpolationProgress; +extern bool theme_lerp; +extern float theme_lerp_speed; +extern float theme_lerp_treshold; + + void initialize_themes(); void theme_next(int *currentThemeIndex); void theme_previous(int *currentThemeIndex); +void update_theme_interpolation(); // Function to handle interpolation +Vec4f color_lerp(Vec4f start, Vec4f end, float t); // Function to interpolate colors +void switch_to_theme(int *currentThemeIndex, int newIndex); + + #endif // THEME_H diff --git a/todo.org b/todo.org index 4c7710f5..64564c24 100644 --- a/todo.org +++ b/todo.org @@ -21,15 +21,19 @@ make the text disappear [] ** Shaders use shaders from =~/.config/ded/shaders= instead [x] ** Lexer +support multi line tokens [] chech for strings in arrays [] multi line comments [] -different vertex and fragment shader per token [] +different vertex and fragment shader per token (need batch rendering) [] different font per token [] '' [x] NULL [x] syntax highlighting for : | || & && [x] highlight links [x] ** Renderer +batch rendering [] +optional vscode hl_line [] +cchange hl_line color based on mode [] render_trailing_whitespaces [] line under links [] render circles (we need to use a shader for better performance) [/] @@ -42,7 +46,7 @@ each theme should have a name not only and index ** Evil evil-find-char-backward [] -evil-visual-liene-mode [] +evil-visual-line-mode [] evil-search-backward [] splits(maybe) [] 5k should work [] @@ -60,8 +64,18 @@ activate_snippet on "if" take two times to activate also editor_backspace take 3 times to delete [] ** Editor -in M-x if the input is a number go to that line in the editor if it exist -dim a split the smaller it is [] +render line numbers only on buffers with more than ... +lerp syntax highlighting in [] + +save open buffers on quit and cursor position for each of them +while ded is running keep them into memory, save them on quit to +~/.config/ded/buffers [] + +render whitespaces with error color when there is an error on a line [] +moveto function up/down [] +drag function up/down [] + +dim unfocused splits the smaller they are [] option to render whitespaces on selection [] @@ -78,7 +92,6 @@ if the search found nothing until the end of the file wrap arround and check from the start of the fil until the cursor [] -switch true to false or false to true in editor_enter [] measure_whitespace_width only once on font switch rather than 4 times every frame [] @@ -118,6 +131,9 @@ use window hight and width dinamicly instead of fixed position when animations a +switch true to false or false to true in editor_enter [x] +in M-x if the input is a number +go to that line in the editor if it exist [x] a theme should be able to define how much lighter of the bg whitespaces indicators are in % (currently hardcoded to 70%)[x] keep a list of opened files to quickly From b49f0f6072c6631e4c62b176ccb32b8d710c4776 Mon Sep 17 00:00:00 2001 From: laluxx Date: Thu, 15 Feb 2024 01:27:18 +0100 Subject: [PATCH 62/74] stuff --- .../@usr@include@GL@gl.h | 2103 ++ .../@usr@include@GL@gl.h.blob | Bin 0 -> 12143 bytes .../@usr@include@GL@glew.h | 26427 ++++++++++++++++ .../@usr@include@GL@glew.h.blob | Bin 0 -> 2269133 bytes .../@usr@include@GL@glu.h | 349 + .../@usr@include@GL@glu.h.blob | Bin 0 -> 58386 bytes .../@usr@include@SDL2@SDL.h | 233 + .../@usr@include@SDL2@SDL.h.blob | Bin 0 -> 19520 bytes .../@usr@include@SDL2@SDL_assert.h | 322 + .../@usr@include@SDL2@SDL_assert.h.blob | Bin 0 -> 20150 bytes .../@usr@include@SDL2@SDL_atomic.h | 414 + .../@usr@include@SDL2@SDL_atomic.h.blob | Bin 0 -> 21421 bytes .../@usr@include@SDL2@SDL_audio.h | 1500 + .../@usr@include@SDL2@SDL_audio.h.blob | Bin 0 -> 74377 bytes .../@usr@include@SDL2@SDL_blendmode.h | 198 + .../@usr@include@SDL2@SDL_blendmode.h.blob | Bin 0 -> 20269 bytes .../@usr@include@SDL2@SDL_clipboard.h | 141 + .../@usr@include@SDL2@SDL_clipboard.h.blob | Bin 0 -> 15383 bytes .../@usr@include@SDL2@SDL_config.h | 570 + .../@usr@include@SDL2@SDL_config.h.blob | Bin 0 -> 29173 bytes .../@usr@include@SDL2@SDL_cpuinfo.h | 594 + .../@usr@include@SDL2@SDL_cpuinfo.h.blob | Bin 0 -> 25766 bytes .../@usr@include@SDL2@SDL_endian.h | 348 + .../@usr@include@SDL2@SDL_endian.h.blob | Bin 0 -> 15422 bytes .../@usr@include@SDL2@SDL_error.h | 163 + .../@usr@include@SDL2@SDL_error.h.blob | Bin 0 -> 16647 bytes .../@usr@include@SDL2@SDL_events.h | 1166 + .../@usr@include@SDL2@SDL_events.h.blob | Bin 0 -> 84151 bytes .../@usr@include@SDL2@SDL_filesystem.h | 149 + .../@usr@include@SDL2@SDL_filesystem.h.blob | Bin 0 -> 16370 bytes .../@usr@include@SDL2@SDL_gamecontroller.h | 1074 + ...usr@include@SDL2@SDL_gamecontroller.h.blob | Bin 0 -> 64711 bytes .../@usr@include@SDL2@SDL_gesture.h | 117 + .../@usr@include@SDL2@SDL_gesture.h.blob | Bin 0 -> 15105 bytes .../@usr@include@SDL2@SDL_guid.h | 100 + .../@usr@include@SDL2@SDL_guid.h.blob | Bin 0 -> 15215 bytes .../@usr@include@SDL2@SDL_haptic.h | 1341 + .../@usr@include@SDL2@SDL_haptic.h.blob | Bin 0 -> 66020 bytes .../@usr@include@SDL2@SDL_hidapi.h | 451 + .../@usr@include@SDL2@SDL_hidapi.h.blob | Bin 0 -> 31535 bytes .../@usr@include@SDL2@SDL_hints.h | 2624 ++ .../@usr@include@SDL2@SDL_hints.h.blob | Bin 0 -> 44245 bytes .../@usr@include@SDL2@SDL_joystick.h | 1069 + .../@usr@include@SDL2@SDL_joystick.h.blob | Bin 0 -> 60301 bytes .../@usr@include@SDL2@SDL_keyboard.h | 353 + .../@usr@include@SDL2@SDL_keyboard.h.blob | Bin 0 -> 24061 bytes .../@usr@include@SDL2@SDL_keycode.h | 358 + .../@usr@include@SDL2@SDL_keycode.h.blob | Bin 0 -> 49862 bytes .../@usr@include@SDL2@SDL_loadso.h | 115 + .../@usr@include@SDL2@SDL_loadso.h.blob | Bin 0 -> 14265 bytes .../@usr@include@SDL2@SDL_locale.h | 103 + .../@usr@include@SDL2@SDL_locale.h.blob | Bin 0 -> 14796 bytes .../@usr@include@SDL2@SDL_log.h | 404 + .../@usr@include@SDL2@SDL_log.h.blob | Bin 0 -> 26012 bytes .../@usr@include@SDL2@SDL_main.h | 282 + .../@usr@include@SDL2@SDL_main.h.blob | Bin 0 -> 13254 bytes .../@usr@include@SDL2@SDL_messagebox.h | 193 + .../@usr@include@SDL2@SDL_messagebox.h.blob | Bin 0 -> 20662 bytes .../@usr@include@SDL2@SDL_metal.h | 113 + .../@usr@include@SDL2@SDL_metal.h.blob | Bin 0 -> 14725 bytes .../@usr@include@SDL2@SDL_misc.h | 79 + .../@usr@include@SDL2@SDL_misc.h.blob | Bin 0 -> 13785 bytes .../@usr@include@SDL2@SDL_mouse.h | 464 + .../@usr@include@SDL2@SDL_mouse.h.blob | Bin 0 -> 31165 bytes .../@usr@include@SDL2@SDL_mutex.h | 545 + .../@usr@include@SDL2@SDL_mutex.h.blob | Bin 0 -> 29764 bytes .../@usr@include@SDL2@SDL_opengl.h | 2132 ++ .../@usr@include@SDL2@SDL_opengl.h.blob | Bin 0 -> 12231 bytes .../@usr@include@SDL2@SDL_pixels.h | 644 + .../@usr@include@SDL2@SDL_pixels.h.blob | Bin 0 -> 47940 bytes .../@usr@include@SDL2@SDL_platform.h | 261 + .../@usr@include@SDL2@SDL_platform.h.blob | Bin 0 -> 12926 bytes .../@usr@include@SDL2@SDL_power.h | 87 + .../@usr@include@SDL2@SDL_power.h.blob | Bin 0 -> 14615 bytes .../@usr@include@SDL2@SDL_quit.h | 58 + .../@usr@include@SDL2@SDL_quit.h.blob | Bin 0 -> 12421 bytes .../@usr@include@SDL2@SDL_rect.h | 376 + .../@usr@include@SDL2@SDL_rect.h.blob | Bin 0 -> 28601 bytes .../@usr@include@SDL2@SDL_render.h | 1924 ++ .../@usr@include@SDL2@SDL_render.h.blob | Bin 0 -> 101643 bytes .../@usr@include@SDL2@SDL_rwops.h | 841 + .../@usr@include@SDL2@SDL_rwops.h.blob | Bin 0 -> 42441 bytes .../@usr@include@SDL2@SDL_scancode.h | 438 + .../@usr@include@SDL2@SDL_scancode.h.blob | Bin 0 -> 38468 bytes .../@usr@include@SDL2@SDL_sensor.h | 322 + .../@usr@include@SDL2@SDL_sensor.h.blob | Bin 0 -> 22017 bytes .../@usr@include@SDL2@SDL_shape.h | 155 + .../@usr@include@SDL2@SDL_shape.h.blob | Bin 0 -> 19648 bytes .../@usr@include@SDL2@SDL_stdinc.h | 838 + .../@usr@include@SDL2@SDL_stdinc.h.blob | Bin 0 -> 59883 bytes .../@usr@include@SDL2@SDL_surface.h | 997 + .../@usr@include@SDL2@SDL_surface.h.blob | Bin 0 -> 55026 bytes .../@usr@include@SDL2@SDL_system.h | 623 + .../@usr@include@SDL2@SDL_system.h.blob | Bin 0 -> 15164 bytes .../@usr@include@SDL2@SDL_thread.h | 464 + .../@usr@include@SDL2@SDL_thread.h.blob | Bin 0 -> 25694 bytes .../@usr@include@SDL2@SDL_timer.h | 222 + .../@usr@include@SDL2@SDL_timer.h.blob | Bin 0 -> 18012 bytes .../@usr@include@SDL2@SDL_touch.h | 150 + .../@usr@include@SDL2@SDL_touch.h.blob | Bin 0 -> 16720 bytes .../@usr@include@SDL2@SDL_version.h | 204 + .../@usr@include@SDL2@SDL_version.h.blob | Bin 0 -> 17022 bytes .../@usr@include@SDL2@SDL_video.h | 2178 ++ .../@usr@include@SDL2@SDL_video.h.blob | Bin 0 -> 109320 bytes .../@usr@include@SDL2@begin_code.h | 187 + .../@usr@include@SDL2@begin_code.h.blob | Bin 0 -> 13291 bytes .../@usr@include@SDL2@close_code.h | 40 + .../@usr@include@SDL2@close_code.h.blob | Bin 0 -> 12163 bytes .../@usr@include@alloca.h | 40 + .../@usr@include@alloca.h.blob | Bin 0 -> 12771 bytes .../@usr@include@asm-generic@errno-base.h | 40 + ...@usr@include@asm-generic@errno-base.h.blob | Bin 0 -> 14090 bytes .../@usr@include@asm-generic@errno.h | 123 + .../@usr@include@asm-generic@errno.h.blob | Bin 0 -> 18204 bytes .../@usr@include@asm@errno.h | 1 + .../@usr@include@asm@errno.h.blob | Bin 0 -> 12167 bytes .../@usr@include@assert.h | 156 + .../@usr@include@assert.h.blob | Bin 0 -> 14071 bytes .../@usr@include@bits@atomic_wide_counter.h | 35 + ...sr@include@bits@atomic_wide_counter.h.blob | Bin 0 -> 13145 bytes .../@usr@include@bits@byteswap.h | 79 + .../@usr@include@bits@byteswap.h.blob | Bin 0 -> 13583 bytes .../@usr@include@bits@confname.h | 681 + .../@usr@include@bits@confname.h.blob | Bin 0 -> 69157 bytes .../@usr@include@bits@cpu-set.h | 124 + .../@usr@include@bits@cpu-set.h.blob | Bin 0 -> 14888 bytes .../@usr@include@bits@dirent.h | 59 + .../@usr@include@bits@dirent.h.blob | Bin 0 -> 13195 bytes .../@usr@include@bits@dirent_ext.h | 33 + .../@usr@include@bits@dirent_ext.h.blob | Bin 0 -> 12191 bytes .../@usr@include@bits@endian.h | 49 + .../@usr@include@bits@endian.h.blob | Bin 0 -> 12660 bytes .../@usr@include@bits@endianness.h | 11 + .../@usr@include@bits@endianness.h.blob | Bin 0 -> 12317 bytes .../@usr@include@bits@environments.h | 105 + .../@usr@include@bits@environments.h.blob | Bin 0 -> 13257 bytes .../@usr@include@bits@errno.h | 53 + .../@usr@include@bits@errno.h.blob | Bin 0 -> 12318 bytes .../@usr@include@bits@floatn-common.h | 329 + .../@usr@include@bits@floatn-common.h.blob | Bin 0 -> 16450 bytes .../@usr@include@bits@floatn.h | 121 + .../@usr@include@bits@floatn.h.blob | Bin 0 -> 12673 bytes .../@usr@include@bits@flt-eval-method.h | 33 + .../@usr@include@bits@flt-eval-method.h.blob | Bin 0 -> 12274 bytes .../@usr@include@bits@fp-fast.h | 39 + .../@usr@include@bits@fp-fast.h.blob | Bin 0 -> 12146 bytes .../@usr@include@bits@fp-logb.h | 24 + .../@usr@include@bits@fp-logb.h.blob | Bin 0 -> 12290 bytes .../@usr@include@bits@getopt_core.h | 96 + .../@usr@include@bits@getopt_core.h.blob | Bin 0 -> 14914 bytes .../@usr@include@bits@getopt_posix.h | 51 + .../@usr@include@bits@getopt_posix.h.blob | Bin 0 -> 12294 bytes .../@usr@include@bits@libc-header-start.h | 110 + ...@usr@include@bits@libc-header-start.h.blob | Bin 0 -> 12959 bytes .../@usr@include@bits@libm-simd-decl-stubs.h | 332 + ...r@include@bits@libm-simd-decl-stubs.h.blob | Bin 0 -> 33821 bytes .../@usr@include@bits@local_lim.h | 99 + .../@usr@include@bits@local_lim.h.blob | Bin 0 -> 13619 bytes .../@usr@include@bits@long-double.h | 21 + .../@usr@include@bits@long-double.h.blob | Bin 0 -> 12238 bytes .../@usr@include@bits@math-vector.h | 147 + .../@usr@include@bits@math-vector.h.blob | Bin 0 -> 12176 bytes ...@include@bits@mathcalls-helper-functions.h | 45 + ...ude@bits@mathcalls-helper-functions.h.blob | Bin 0 -> 13421 bytes .../@usr@include@bits@mathcalls.h | 436 + .../@usr@include@bits@mathcalls.h.blob | Bin 0 -> 32352 bytes .../@usr@include@bits@posix1_lim.h | 183 + .../@usr@include@bits@posix1_lim.h.blob | Bin 0 -> 14742 bytes .../@usr@include@bits@posix2_lim.h | 90 + .../@usr@include@bits@posix2_lim.h.blob | Bin 0 -> 13698 bytes .../@usr@include@bits@posix_opt.h | 194 + .../@usr@include@bits@posix_opt.h.blob | Bin 0 -> 17435 bytes ...r@include@bits@pthread_stack_min-dynamic.h | 31 + ...lude@bits@pthread_stack_min-dynamic.h.blob | Bin 0 -> 12155 bytes .../@usr@include@bits@pthread_stack_min.h | 20 + ...@usr@include@bits@pthread_stack_min.h.blob | Bin 0 -> 12200 bytes .../@usr@include@bits@pthreadtypes-arch.h | 55 + ...@usr@include@bits@pthreadtypes-arch.h.blob | Bin 0 -> 13279 bytes .../@usr@include@bits@pthreadtypes.h | 121 + .../@usr@include@bits@pthreadtypes.h.blob | Bin 0 -> 17259 bytes .../@usr@include@bits@sched.h | 104 + .../@usr@include@bits@sched.h.blob | Bin 0 -> 12505 bytes .../@usr@include@bits@select.h | 37 + .../@usr@include@bits@select.h.blob | Bin 0 -> 12560 bytes .../@usr@include@bits@setjmp.h | 40 + .../@usr@include@bits@setjmp.h.blob | Bin 0 -> 12330 bytes .../@usr@include@bits@sigaction.h | 83 + .../@usr@include@bits@sigaction.h.blob | Bin 0 -> 14564 bytes .../@usr@include@bits@sigcontext.h | 196 + .../@usr@include@bits@sigcontext.h.blob | Bin 0 -> 18704 bytes .../@usr@include@bits@sigevent-consts.h | 41 + .../@usr@include@bits@sigevent-consts.h.blob | Bin 0 -> 12952 bytes .../@usr@include@bits@siginfo-arch.h | 17 + .../@usr@include@bits@siginfo-arch.h.blob | Bin 0 -> 12239 bytes .../@usr@include@bits@siginfo-consts.h | 216 + .../@usr@include@bits@siginfo-consts.h.blob | Bin 0 -> 21380 bytes .../@usr@include@bits@signal_ext.h | 31 + .../@usr@include@bits@signal_ext.h.blob | Bin 0 -> 12135 bytes .../@usr@include@bits@signum-arch.h | 64 + .../@usr@include@bits@signum-arch.h.blob | Bin 0 -> 13618 bytes .../@usr@include@bits@signum-generic.h | 81 + .../@usr@include@bits@signum-generic.h.blob | Bin 0 -> 13410 bytes .../@usr@include@bits@sigstack.h | 32 + .../@usr@include@bits@sigstack.h.blob | Bin 0 -> 12335 bytes .../@usr@include@bits@sigstksz.h | 33 + .../@usr@include@bits@sigstksz.h.blob | Bin 0 -> 12137 bytes .../@usr@include@bits@sigthread.h | 44 + .../@usr@include@bits@sigthread.h.blob | Bin 0 -> 13257 bytes .../@usr@include@bits@ss_flags.h | 35 + .../@usr@include@bits@ss_flags.h.blob | Bin 0 -> 12532 bytes .../@usr@include@bits@stdint-intn.h | 29 + .../@usr@include@bits@stdint-intn.h.blob | Bin 0 -> 12737 bytes .../@usr@include@bits@stdint-uintn.h | 29 + .../@usr@include@bits@stdint-uintn.h.blob | Bin 0 -> 12779 bytes .../@usr@include@bits@stdio_lim.h | 28 + .../@usr@include@bits@stdio_lim.h.blob | Bin 0 -> 12277 bytes .../@usr@include@bits@stdlib-float.h | 29 + .../@usr@include@bits@stdlib-float.h.blob | Bin 0 -> 12133 bytes .../@usr@include@bits@struct_mutex.h | 63 + .../@usr@include@bits@struct_mutex.h.blob | Bin 0 -> 13527 bytes .../@usr@include@bits@struct_rwlock.h | 65 + .../@usr@include@bits@struct_rwlock.h.blob | Bin 0 -> 13939 bytes .../@usr@include@bits@thread-shared-types.h | 115 + ...sr@include@bits@thread-shared-types.h.blob | Bin 0 -> 14595 bytes .../@usr@include@bits@time.h | 93 + .../@usr@include@bits@time.h.blob | Bin 0 -> 13272 bytes .../@usr@include@bits@time64.h | 36 + .../@usr@include@bits@time64.h.blob | Bin 0 -> 12322 bytes .../@usr@include@bits@timesize.h | 27 + .../@usr@include@bits@timesize.h.blob | Bin 0 -> 12234 bytes .../@usr@include@bits@types.h | 228 + .../@usr@include@bits@types.h.blob | Bin 0 -> 19604 bytes .../@usr@include@bits@types@FILE.h | 9 + .../@usr@include@bits@types@FILE.h.blob | Bin 0 -> 12395 bytes .../@usr@include@bits@types@__FILE.h | 7 + .../@usr@include@bits@types@__FILE.h.blob | Bin 0 -> 12332 bytes .../@usr@include@bits@types@__fpos64_t.h | 16 + .../@usr@include@bits@types@__fpos64_t.h.blob | Bin 0 -> 13123 bytes .../@usr@include@bits@types@__fpos_t.h | 16 + .../@usr@include@bits@types@__fpos_t.h.blob | Bin 0 -> 13069 bytes .../@usr@include@bits@types@__locale_t.h | 43 + .../@usr@include@bits@types@__locale_t.h.blob | Bin 0 -> 13253 bytes .../@usr@include@bits@types@__mbstate_t.h | 23 + ...@usr@include@bits@types@__mbstate_t.h.blob | Bin 0 -> 12911 bytes .../@usr@include@bits@types@__sigset_t.h | 10 + .../@usr@include@bits@types@__sigset_t.h.blob | Bin 0 -> 12539 bytes .../@usr@include@bits@types@__sigval_t.h | 41 + .../@usr@include@bits@types@__sigval_t.h.blob | Bin 0 -> 12499 bytes .../@usr@include@bits@types@clock_t.h | 9 + .../@usr@include@bits@types@clock_t.h.blob | Bin 0 -> 12372 bytes .../@usr@include@bits@types@clockid_t.h | 9 + .../@usr@include@bits@types@clockid_t.h.blob | Bin 0 -> 12402 bytes ...include@bits@types@cookie_io_functions_t.h | 63 + ...de@bits@types@cookie_io_functions_t.h.blob | Bin 0 -> 14764 bytes .../@usr@include@bits@types@locale_t.h | 26 + .../@usr@include@bits@types@locale_t.h.blob | Bin 0 -> 12429 bytes .../@usr@include@bits@types@mbstate_t.h | 8 + .../@usr@include@bits@types@mbstate_t.h.blob | Bin 0 -> 12421 bytes .../@usr@include@bits@types@sig_atomic_t.h | 10 + ...usr@include@bits@types@sig_atomic_t.h.blob | Bin 0 -> 12497 bytes .../@usr@include@bits@types@sigevent_t.h | 48 + .../@usr@include@bits@types@sigevent_t.h.blob | Bin 0 -> 14365 bytes .../@usr@include@bits@types@siginfo_t.h | 151 + .../@usr@include@bits@types@siginfo_t.h.blob | Bin 0 -> 20823 bytes .../@usr@include@bits@types@sigset_t.h | 9 + .../@usr@include@bits@types@sigset_t.h.blob | Bin 0 -> 12472 bytes .../@usr@include@bits@types@sigval_t.h | 18 + .../@usr@include@bits@types@sigval_t.h.blob | Bin 0 -> 12412 bytes .../@usr@include@bits@types@stack_t.h | 33 + .../@usr@include@bits@types@stack_t.h.blob | Bin 0 -> 12838 bytes .../@usr@include@bits@types@struct_FILE.h | 120 + ...@usr@include@bits@types@struct_FILE.h.blob | Bin 0 -> 16640 bytes ...@include@bits@types@struct___jmp_buf_tag.h | 37 + ...ude@bits@types@struct___jmp_buf_tag.h.blob | Bin 0 -> 12902 bytes ...usr@include@bits@types@struct_itimerspec.h | 14 + ...nclude@bits@types@struct_itimerspec.h.blob | Bin 0 -> 12635 bytes ...sr@include@bits@types@struct_sched_param.h | 28 + ...clude@bits@types@struct_sched_param.h.blob | Bin 0 -> 12429 bytes .../@usr@include@bits@types@struct_sigstack.h | 29 + ...@include@bits@types@struct_sigstack.h.blob | Bin 0 -> 12513 bytes .../@usr@include@bits@types@struct_timespec.h | 33 + ...@include@bits@types@struct_timespec.h.blob | Bin 0 -> 12862 bytes .../@usr@include@bits@types@struct_timeval.h | 18 + ...r@include@bits@types@struct_timeval.h.blob | Bin 0 -> 12678 bytes .../@usr@include@bits@types@struct_tm.h | 28 + .../@usr@include@bits@types@struct_tm.h.blob | Bin 0 -> 13354 bytes .../@usr@include@bits@types@time_t.h | 13 + .../@usr@include@bits@types@time_t.h.blob | Bin 0 -> 12352 bytes .../@usr@include@bits@types@timer_t.h | 9 + .../@usr@include@bits@types@timer_t.h.blob | Bin 0 -> 12389 bytes .../@usr@include@bits@types@wint_t.h | 23 + .../@usr@include@bits@types@wint_t.h.blob | Bin 0 -> 12351 bytes .../@usr@include@bits@typesizes.h | 106 + .../@usr@include@bits@typesizes.h.blob | Bin 0 -> 16140 bytes .../@usr@include@bits@uintn-identity.h | 50 + .../@usr@include@bits@uintn-identity.h.blob | Bin 0 -> 13149 bytes .../@usr@include@bits@unistd_ext.h | 50 + .../@usr@include@bits@unistd_ext.h.blob | Bin 0 -> 12135 bytes .../@usr@include@bits@waitflags.h | 39 + .../@usr@include@bits@waitflags.h.blob | Bin 0 -> 12698 bytes .../@usr@include@bits@waitstatus.h | 59 + .../@usr@include@bits@waitstatus.h.blob | Bin 0 -> 13258 bytes .../@usr@include@bits@wchar.h | 49 + .../@usr@include@bits@wchar.h.blob | Bin 0 -> 12365 bytes .../@usr@include@bits@wordsize.h | 17 + .../@usr@include@bits@wordsize.h.blob | Bin 0 -> 12374 bytes .../@usr@include@ctype.h | 329 + .../@usr@include@ctype.h.blob | Bin 0 -> 24312 bytes .../@usr@include@dirent.h | 408 + .../@usr@include@dirent.h.blob | Bin 0 -> 18651 bytes .../@usr@include@endian.h | 72 + .../@usr@include@endian.h.blob | Bin 0 -> 13582 bytes .../@usr@include@errno.h | 55 + .../@usr@include@errno.h.blob | Bin 0 -> 12553 bytes .../@usr@include@features-time64.h | 37 + .../@usr@include@features-time64.h.blob | Bin 0 -> 12191 bytes .../@usr@include@features.h | 530 + .../@usr@include@features.h.blob | Bin 0 -> 15333 bytes .../@usr@include@gnu@stubs-64.h | 17 + .../@usr@include@gnu@stubs-64.h.blob | Bin 0 -> 12690 bytes .../@usr@include@gnu@stubs.h | 14 + .../@usr@include@gnu@stubs.h.blob | Bin 0 -> 12170 bytes .../@usr@include@inttypes.h | 417 + .../@usr@include@inttypes.h.blob | Bin 0 -> 26817 bytes .../@usr@include@libgen.h | 39 + .../@usr@include@libgen.h.blob | Bin 0 -> 12961 bytes .../@usr@include@limits.h | 204 + .../@usr@include@limits.h.blob | Bin 0 -> 12826 bytes .../@usr@include@linux@errno.h | 1 + .../@usr@include@linux@errno.h.blob | Bin 0 -> 12157 bytes .../@usr@include@linux@limits.h | 21 + .../@usr@include@linux@limits.h.blob | Bin 0 -> 13100 bytes .../@usr@include@math.h | 1475 + .../@usr@include@math.h.blob | Bin 0 -> 23189 bytes .../@usr@include@pthread.h | 1348 + .../@usr@include@pthread.h.blob | Bin 0 -> 61425 bytes .../@usr@include@sched.h | 140 + .../@usr@include@sched.h.blob | Bin 0 -> 15020 bytes .../@usr@include@signal.h | 395 + .../@usr@include@signal.h.blob | Bin 0 -> 23855 bytes .../@usr@include@stdc-predef.h | 64 + .../@usr@include@stdc-predef.h.blob | Bin 0 -> 12652 bytes .../@usr@include@stdint.h | 319 + .../@usr@include@stdint.h.blob | Bin 0 -> 20225 bytes .../@usr@include@stdio.h | 969 + .../@usr@include@stdio.h.blob | Bin 0 -> 49141 bytes .../@usr@include@stdlib.h | 1169 + .../@usr@include@stdlib.h.blob | Bin 0 -> 53214 bytes .../@usr@include@string.h | 554 + .../@usr@include@string.h.blob | Bin 0 -> 29636 bytes .../@usr@include@strings.h | 148 + .../@usr@include@strings.h.blob | Bin 0 -> 16184 bytes .../@usr@include@sys@cdefs.h | 723 + .../@usr@include@sys@cdefs.h.blob | Bin 0 -> 21652 bytes .../@usr@include@sys@select.h | 155 + .../@usr@include@sys@select.h.blob | Bin 0 -> 15822 bytes .../@usr@include@sys@types.h | 232 + .../@usr@include@sys@types.h.blob | Bin 0 -> 18237 bytes .../@usr@include@sys@ucontext.h | 262 + .../@usr@include@sys@ucontext.h.blob | Bin 0 -> 16457 bytes .../@usr@include@time.h | 455 + .../@usr@include@time.h.blob | Bin 0 -> 24637 bytes .../@usr@include@tree_sitter@api.h | 982 + .../@usr@include@tree_sitter@api.h.blob | Bin 0 -> 58835 bytes .../@usr@include@unistd.h | 1222 + .../@usr@include@unistd.h.blob | Bin 0 -> 52437 bytes .../@usr@include@wchar.h | 1075 + .../@usr@include@wchar.h.blob | Bin 0 -> 48556 bytes ...ib@clang@16@include@__stddef_max_align_t.h | 27 + ...ang@16@include@__stddef_max_align_t.h.blob | Bin 0 -> 12694 bytes ...usr@lib@clang@16@include@__wmmintrin_aes.h | 140 + ...ib@clang@16@include@__wmmintrin_aes.h.blob | Bin 0 -> 16754 bytes ...@lib@clang@16@include@__wmmintrin_pclmul.h | 48 + ...clang@16@include@__wmmintrin_pclmul.h.blob | Bin 0 -> 12424 bytes .../@usr@lib@clang@16@include@adxintrin.h | 72 + ...@usr@lib@clang@16@include@adxintrin.h.blob | Bin 0 -> 15267 bytes .../@usr@lib@clang@16@include@amxfp16intrin.h | 58 + ...@lib@clang@16@include@amxfp16intrin.h.blob | Bin 0 -> 12346 bytes .../@usr@lib@clang@16@include@amxintrin.h | 524 + ...@usr@lib@clang@16@include@amxintrin.h.blob | Bin 0 -> 34808 bytes .../@usr@lib@clang@16@include@avx2intrin.h | 1148 + ...usr@lib@clang@16@include@avx2intrin.h.blob | Bin 0 -> 73308 bytes ...sr@lib@clang@16@include@avx512bf16intrin.h | 282 + ...b@clang@16@include@avx512bf16intrin.h.blob | Bin 0 -> 24894 bytes ...@lib@clang@16@include@avx512bitalgintrin.h | 83 + ...clang@16@include@avx512bitalgintrin.h.blob | Bin 0 -> 15570 bytes ...@usr@lib@clang@16@include@avx512bwintrin.h | 2024 ++ ...lib@clang@16@include@avx512bwintrin.h.blob | Bin 0 -> 140628 bytes ...@usr@lib@clang@16@include@avx512cdintrin.h | 123 + ...lib@clang@16@include@avx512cdintrin.h.blob | Bin 0 -> 17407 bytes ...@usr@lib@clang@16@include@avx512dqintrin.h | 1377 + ...lib@clang@16@include@avx512dqintrin.h.blob | Bin 0 -> 90143 bytes ...@usr@lib@clang@16@include@avx512erintrin.h | 271 + ...lib@clang@16@include@avx512erintrin.h.blob | Bin 0 -> 26837 bytes .../@usr@lib@clang@16@include@avx512fintrin.h | 9765 ++++++ ...@lib@clang@16@include@avx512fintrin.h.blob | Bin 0 -> 584649 bytes ...sr@lib@clang@16@include@avx512fp16intrin.h | 3346 ++ ...b@clang@16@include@avx512fp16intrin.h.blob | Bin 0 -> 241400 bytes ...sr@lib@clang@16@include@avx512ifmaintrin.h | 68 + ...b@clang@16@include@avx512ifmaintrin.h.blob | Bin 0 -> 15666 bytes ...@lib@clang@16@include@avx512ifmavlintrin.h | 105 + ...clang@16@include@avx512ifmavlintrin.h.blob | Bin 0 -> 18786 bytes ...@usr@lib@clang@16@include@avx512pfintrin.h | 97 + ...lib@clang@16@include@avx512pfintrin.h.blob | Bin 0 -> 17219 bytes ...r@lib@clang@16@include@avx512vbmi2intrin.h | 357 + ...@clang@16@include@avx512vbmi2intrin.h.blob | Bin 0 -> 33314 bytes ...sr@lib@clang@16@include@avx512vbmiintrin.h | 105 + ...b@clang@16@include@avx512vbmiintrin.h.blob | Bin 0 -> 17322 bytes ...@lib@clang@16@include@avx512vbmivlintrin.h | 188 + ...clang@16@include@avx512vbmivlintrin.h.blob | Bin 0 -> 22448 bytes ...@lib@clang@16@include@avx512vlbf16intrin.h | 515 + ...clang@16@include@avx512vlbf16intrin.h.blob | Bin 0 -> 36258 bytes ...ib@clang@16@include@avx512vlbitalgintrin.h | 145 + ...ang@16@include@avx512vlbitalgintrin.h.blob | Bin 0 -> 18854 bytes ...sr@lib@clang@16@include@avx512vlbwintrin.h | 3161 ++ ...b@clang@16@include@avx512vlbwintrin.h.blob | Bin 0 -> 235651 bytes ...sr@lib@clang@16@include@avx512vlcdintrin.h | 225 + ...b@clang@16@include@avx512vlcdintrin.h.blob | Bin 0 -> 22432 bytes ...sr@lib@clang@16@include@avx512vldqintrin.h | 1167 + ...b@clang@16@include@avx512vldqintrin.h.blob | Bin 0 -> 83998 bytes ...@lib@clang@16@include@avx512vlfp16intrin.h | 2071 ++ ...clang@16@include@avx512vlfp16intrin.h.blob | Bin 0 -> 161564 bytes ...@usr@lib@clang@16@include@avx512vlintrin.h | 8431 +++++ ...lib@clang@16@include@avx512vlintrin.h.blob | Bin 0 -> 561510 bytes ...lib@clang@16@include@avx512vlvbmi2intrin.h | 689 + ...lang@16@include@avx512vlvbmi2intrin.h.blob | Bin 0 -> 55023 bytes ...@lib@clang@16@include@avx512vlvnniintrin.h | 304 + ...clang@16@include@avx512vlvnniintrin.h.blob | Bin 0 -> 24166 bytes ...ng@16@include@avx512vlvp2intersectintrin.h | 121 + ...@include@avx512vlvp2intersectintrin.h.blob | Bin 0 -> 16942 bytes ...sr@lib@clang@16@include@avx512vnniintrin.h | 115 + ...b@clang@16@include@avx512vnniintrin.h.blob | Bin 0 -> 18600 bytes ...lang@16@include@avx512vp2intersectintrin.h | 77 + ...16@include@avx512vp2intersectintrin.h.blob | Bin 0 -> 14651 bytes ...b@clang@16@include@avx512vpopcntdqintrin.h | 54 + ...ng@16@include@avx512vpopcntdqintrin.h.blob | Bin 0 -> 14901 bytes ...clang@16@include@avx512vpopcntdqvlintrin.h | 91 + ...@16@include@avx512vpopcntdqvlintrin.h.blob | Bin 0 -> 17361 bytes .../@usr@lib@clang@16@include@avxifmaintrin.h | 177 + ...@lib@clang@16@include@avxifmaintrin.h.blob | Bin 0 -> 18044 bytes .../@usr@lib@clang@16@include@avxintrin.h | 5095 +++ ...@usr@lib@clang@16@include@avxintrin.h.blob | Bin 0 -> 184697 bytes ...@lib@clang@16@include@avxneconvertintrin.h | 484 + ...clang@16@include@avxneconvertintrin.h.blob | Bin 0 -> 26503 bytes ...r@lib@clang@16@include@avxvnniint8intrin.h | 471 + ...@clang@16@include@avxvnniint8intrin.h.blob | Bin 0 -> 31235 bytes .../@usr@lib@clang@16@include@avxvnniintrin.h | 225 + ...@lib@clang@16@include@avxvnniintrin.h.blob | Bin 0 -> 22225 bytes .../@usr@lib@clang@16@include@bmi2intrin.h | 81 + ...usr@lib@clang@16@include@bmi2intrin.h.blob | Bin 0 -> 14586 bytes .../@usr@lib@clang@16@include@bmiintrin.h | 431 + ...@usr@lib@clang@16@include@bmiintrin.h.blob | Bin 0 -> 27157 bytes .../@usr@lib@clang@16@include@cetintrin.h | 115 + ...@usr@lib@clang@16@include@cetintrin.h.blob | Bin 0 -> 15061 bytes ...@usr@lib@clang@16@include@cldemoteintrin.h | 36 + ...lib@clang@16@include@cldemoteintrin.h.blob | Bin 0 -> 12846 bytes ...sr@lib@clang@16@include@clflushoptintrin.h | 27 + ...b@clang@16@include@clflushoptintrin.h.blob | Bin 0 -> 12509 bytes .../@usr@lib@clang@16@include@clwbintrin.h | 38 + ...usr@lib@clang@16@include@clwbintrin.h.blob | Bin 0 -> 12854 bytes ...usr@lib@clang@16@include@cmpccxaddintrin.h | 70 + ...ib@clang@16@include@cmpccxaddintrin.h.blob | Bin 0 -> 13977 bytes .../@usr@lib@clang@16@include@crc32intrin.h | 100 + ...sr@lib@clang@16@include@crc32intrin.h.blob | Bin 0 -> 15413 bytes .../@usr@lib@clang@16@include@emmintrin.h | 4775 +++ ...@usr@lib@clang@16@include@emmintrin.h.blob | Bin 0 -> 222078 bytes .../@usr@lib@clang@16@include@enqcmdintrin.h | 63 + ...r@lib@clang@16@include@enqcmdintrin.h.blob | Bin 0 -> 13835 bytes .../@usr@lib@clang@16@include@f16cintrin.h | 162 + ...usr@lib@clang@16@include@f16cintrin.h.blob | Bin 0 -> 15532 bytes .../@usr@lib@clang@16@include@float.h | 168 + .../@usr@lib@clang@16@include@float.h.blob | Bin 0 -> 15546 bytes .../@usr@lib@clang@16@include@fmaintrin.h | 216 + ...@usr@lib@clang@16@include@fmaintrin.h.blob | Bin 0 -> 25892 bytes .../@usr@lib@clang@16@include@fxsrintrin.h | 91 + ...usr@lib@clang@16@include@fxsrintrin.h.blob | Bin 0 -> 14538 bytes .../@usr@lib@clang@16@include@gfniintrin.h | 194 + ...usr@lib@clang@16@include@gfniintrin.h.blob | Bin 0 -> 23077 bytes .../@usr@lib@clang@16@include@hresetintrin.h | 49 + ...r@lib@clang@16@include@hresetintrin.h.blob | Bin 0 -> 12935 bytes .../@usr@lib@clang@16@include@immintrin.h | 650 + ...@usr@lib@clang@16@include@immintrin.h.blob | Bin 0 -> 21124 bytes .../@usr@lib@clang@16@include@inttypes.h | 97 + .../@usr@lib@clang@16@include@inttypes.h.blob | Bin 0 -> 12230 bytes .../@usr@lib@clang@16@include@invpcidintrin.h | 23 + ...@lib@clang@16@include@invpcidintrin.h.blob | Bin 0 -> 12460 bytes ...usr@lib@clang@16@include@keylockerintrin.h | 530 + ...ib@clang@16@include@keylockerintrin.h.blob | Bin 0 -> 29407 bytes .../@usr@lib@clang@16@include@limits.h | 123 + .../@usr@lib@clang@16@include@limits.h.blob | Bin 0 -> 13774 bytes .../@usr@lib@clang@16@include@lzcntintrin.h | 104 + ...sr@lib@clang@16@include@lzcntintrin.h.blob | Bin 0 -> 14123 bytes .../@usr@lib@clang@16@include@mm_malloc.h | 67 + ...@usr@lib@clang@16@include@mm_malloc.h.blob | Bin 0 -> 13353 bytes .../@usr@lib@clang@16@include@mmintrin.h | 1562 + .../@usr@lib@clang@16@include@mmintrin.h.blob | Bin 0 -> 79877 bytes .../@usr@lib@clang@16@include@movdirintrin.h | 49 + ...r@lib@clang@16@include@movdirintrin.h.blob | Bin 0 -> 13210 bytes .../@usr@lib@clang@16@include@pconfigintrin.h | 40 + ...@lib@clang@16@include@pconfigintrin.h.blob | Bin 0 -> 12900 bytes .../@usr@lib@clang@16@include@pkuintrin.h | 34 + ...@usr@lib@clang@16@include@pkuintrin.h.blob | Bin 0 -> 12606 bytes .../@usr@lib@clang@16@include@pmmintrin.h | 294 + ...@usr@lib@clang@16@include@pmmintrin.h.blob | Bin 0 -> 22974 bytes .../@usr@lib@clang@16@include@popcntintrin.h | 59 + ...r@lib@clang@16@include@popcntintrin.h.blob | Bin 0 -> 13468 bytes .../@usr@lib@clang@16@include@prfchiintrin.h | 61 + ...r@lib@clang@16@include@prfchiintrin.h.blob | Bin 0 -> 13458 bytes .../@usr@lib@clang@16@include@ptwriteintrin.h | 37 + ...@lib@clang@16@include@ptwriteintrin.h.blob | Bin 0 -> 12742 bytes .../@usr@lib@clang@16@include@raointintrin.h | 203 + ...r@lib@clang@16@include@raointintrin.h.blob | Bin 0 -> 18395 bytes .../@usr@lib@clang@16@include@rdseedintrin.h | 42 + ...r@lib@clang@16@include@rdseedintrin.h.blob | Bin 0 -> 12835 bytes .../@usr@lib@clang@16@include@rtmintrin.h | 45 + ...@usr@lib@clang@16@include@rtmintrin.h.blob | Bin 0 -> 13231 bytes ...usr@lib@clang@16@include@serializeintrin.h | 30 + ...ib@clang@16@include@serializeintrin.h.blob | Bin 0 -> 12402 bytes .../@usr@lib@clang@16@include@sgxintrin.h | 60 + ...@usr@lib@clang@16@include@sgxintrin.h.blob | Bin 0 -> 13565 bytes .../@usr@lib@clang@16@include@shaintrin.h | 61 + ...@usr@lib@clang@16@include@shaintrin.h.blob | Bin 0 -> 14630 bytes .../@usr@lib@clang@16@include@smmintrin.h | 2328 ++ ...@usr@lib@clang@16@include@smmintrin.h.blob | Bin 0 -> 55794 bytes .../@usr@lib@clang@16@include@stdarg.h | 51 + .../@usr@lib@clang@16@include@stdarg.h.blob | Bin 0 -> 12335 bytes .../@usr@lib@clang@16@include@stdbool.h | 34 + .../@usr@lib@clang@16@include@stdbool.h.blob | Bin 0 -> 12476 bytes .../@usr@lib@clang@16@include@stddef.h | 128 + .../@usr@lib@clang@16@include@stddef.h.blob | Bin 0 -> 12392 bytes .../@usr@lib@clang@16@include@stdint.h | 979 + .../@usr@lib@clang@16@include@stdint.h.blob | Bin 0 -> 12292 bytes .../@usr@lib@clang@16@include@tmmintrin.h | 775 + ...@usr@lib@clang@16@include@tmmintrin.h.blob | Bin 0 -> 44047 bytes ...@usr@lib@clang@16@include@tsxldtrkintrin.h | 56 + ...lib@clang@16@include@tsxldtrkintrin.h.blob | Bin 0 -> 13480 bytes .../@usr@lib@clang@16@include@uintrintrin.h | 157 + ...sr@lib@clang@16@include@uintrintrin.h.blob | Bin 0 -> 16493 bytes .../@usr@lib@clang@16@include@vaesintrin.h | 85 + ...usr@lib@clang@16@include@vaesintrin.h.blob | Bin 0 -> 15397 bytes ...sr@lib@clang@16@include@vpclmulqdqintrin.h | 30 + ...b@clang@16@include@vpclmulqdqintrin.h.blob | Bin 0 -> 12759 bytes .../@usr@lib@clang@16@include@waitpkgintrin.h | 42 + ...@lib@clang@16@include@waitpkgintrin.h.blob | Bin 0 -> 13144 bytes ...@usr@lib@clang@16@include@wbnoinvdintrin.h | 24 + ...lib@clang@16@include@wbnoinvdintrin.h.blob | Bin 0 -> 12264 bytes .../@usr@lib@clang@16@include@wmmintrin.h | 23 + ...@usr@lib@clang@16@include@wmmintrin.h.blob | Bin 0 -> 12322 bytes .../@usr@lib@clang@16@include@x86gprintrin.h | 65 + ...r@lib@clang@16@include@x86gprintrin.h.blob | Bin 0 -> 12824 bytes .../@usr@lib@clang@16@include@xmmintrin.h | 3017 ++ ...@usr@lib@clang@16@include@xmmintrin.h.blob | Bin 0 -> 134054 bytes .../@usr@lib@clang@16@include@xsavecintrin.h | 34 + ...r@lib@clang@16@include@xsavecintrin.h.blob | Bin 0 -> 12847 bytes .../@usr@lib@clang@16@include@xsaveintrin.h | 63 + ...sr@lib@clang@16@include@xsaveintrin.h.blob | Bin 0 -> 13554 bytes ...@usr@lib@clang@16@include@xsaveoptintrin.h | 34 + ...lib@clang@16@include@xsaveoptintrin.h.blob | Bin 0 -> 12855 bytes .../@usr@lib@clang@16@include@xsavesintrin.h | 44 + ...r@lib@clang@16@include@xsavesintrin.h.blob | Bin 0 -> 13331 bytes .../@usr@lib@clang@16@include@xtestintrin.h | 27 + ...sr@lib@clang@16@include@xtestintrin.h.blob | Bin 0 -> 12432 bytes .../@home@l@Desktop@test@ded/src@M-x.h | 21 + .../@home@l@Desktop@test@ded/src@M-x.h.blob | Bin 0 -> 14743 bytes .../@home@l@Desktop@test@ded/src@buffer.h | 16 + .../src@buffer.h.blob | Bin 0 -> 13584 bytes .../@home@l@Desktop@test@ded/src@clock.h | 16 + .../@home@l@Desktop@test@ded/src@clock.h.blob | Bin 0 -> 14097 bytes .../@home@l@Desktop@test@ded/src@common.h | 118 + .../src@common.h.blob | Bin 0 -> 17569 bytes .../@home@l@Desktop@test@ded/src@editor.c | 1986 ++ .../src@editor.c.blob | Bin 0 -> 107273 bytes .../@home@l@Desktop@test@ded/src@editor.h | 293 + .../src@editor.h.blob | Bin 0 -> 39953 bytes .../@home@l@Desktop@test@ded/src@emacs.h | 11 + .../@home@l@Desktop@test@ded/src@emacs.h.blob | Bin 0 -> 13015 bytes .../@home@l@Desktop@test@ded/src@evil.c | 554 + .../@home@l@Desktop@test@ded/src@evil.c.blob | Bin 0 -> 36810 bytes .../@home@l@Desktop@test@ded/src@evil.h | 29 + .../@home@l@Desktop@test@ded/src@evil.h.blob | Bin 0 -> 15639 bytes .../src@file_browser.h | 41 + .../src@file_browser.h.blob | Bin 0 -> 15829 bytes .../@home@l@Desktop@test@ded/src@free_glyph.h | 54 + .../src@free_glyph.h.blob | Bin 0 -> 16850 bytes .../@home@l@Desktop@test@ded/src@hashmap.h | 50 + .../src@hashmap.h.blob | Bin 0 -> 20017 bytes .../@home@l@Desktop@test@ded/src@helix.c | 105 + .../@home@l@Desktop@test@ded/src@helix.c.blob | Bin 0 -> 15904 bytes .../@home@l@Desktop@test@ded/src@helix.h | 10 + .../@home@l@Desktop@test@ded/src@helix.h.blob | Bin 0 -> 12864 bytes .ccls-cache/@home@l@Desktop@test@ded/src@la.h | 41 + .../@home@l@Desktop@test@ded/src@la.h.blob | Bin 0 -> 17730 bytes .../@home@l@Desktop@test@ded/src@lexer.h | 79 + .../@home@l@Desktop@test@ded/src@lexer.h.blob | Bin 0 -> 18004 bytes .../@home@l@Desktop@test@ded/src@lsp.h | 39 + .../@home@l@Desktop@test@ded/src@lsp.h.blob | Bin 0 -> 16245 bytes .../@home@l@Desktop@test@ded/src@main.c | 2434 ++ .../@home@l@Desktop@test@ded/src@main.c.blob | Bin 0 -> 85372 bytes .../@home@l@Desktop@test@ded/src@render.h | 42 + .../src@render.h.blob | Bin 0 -> 16200 bytes .../src@simple_renderer.h | 114 + .../src@simple_renderer.h.blob | Bin 0 -> 22602 bytes .ccls-cache/@home@l@Desktop@test@ded/src@sv.h | 319 + .../@home@l@Desktop@test@ded/src@sv.h.blob | Bin 0 -> 17919 bytes .../@home@l@Desktop@test@ded/src@theme.c | 669 + .../@home@l@Desktop@test@ded/src@theme.c.blob | Bin 0 -> 39046 bytes .../@home@l@Desktop@test@ded/src@theme.h | 93 + .../@home@l@Desktop@test@ded/src@theme.h.blob | Bin 0 -> 20214 bytes .../@home@l@Desktop@test@ded/src@treesitter.h | 20 + .../src@treesitter.h.blob | Bin 0 -> 13860 bytes .../@home@l@Desktop@test@ded/src@yasnippet.h | 30 + .../src@yasnippet.h.blob | Bin 0 -> 14191 bytes build.sh | 5 +- ccls_log.txt => clangd.log | 0 config/ded/fonts/JetBrainsMono-Bold.ttf | Bin 277828 -> 0 bytes .../ded/fonts/JetBrainsMonoNerdFont-Bold.ttf | Bin 0 -> 2081928 bytes config/ded/fonts/fontawesome-regular.ttf | Bin 0 -> 165548 bytes config/ded/scripts/ttf2png.py | 38 + config/ded/shaders/cursor.frag | 36 +- config/ded/snippets/#inc | 1 + libtree-sitter-json.a | Bin 0 -> 15898 bytes src/M-x.c | 11 +- src/M-x.h | 2 - src/buffer.c | 4 +- src/clock.c | 189 + src/clock.h | 16 + src/common.c | 1 + src/common.h | 1 + src/editor.c | 92 +- src/editor.h | 39 +- src/elix.h | 8 - src/emacs.c | 7 +- src/emacs.h | 2 +- src/evil.c | 3 +- src/file_browser.c | 34 +- src/file_browser.h | 14 +- src/free_glyph.h | 3 +- src/helix.c | 74 + src/helix.h | 2 + src/lexer.c | 2 + src/lexer.h | 5 +- src/lsp.c | 394 +- src/lsp.h | 40 +- src/main.c | 160 +- src/render.c | 613 +- src/render.h | 5 +- src/theme.c | 56 +- src/theme.h | 8 +- src/treesitter.c | 85 + src/treesitter.h | 20 + src/yasnippet.c | 3 +- src/yasnippet.h | 1 + test.json | 28 + todo.org | 149 +- 654 files changed, 149955 insertions(+), 656 deletions(-) create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h.blob create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h create mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@M-x.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@M-x.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@buffer.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@buffer.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@clock.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@clock.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@common.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@common.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@editor.c create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@editor.c.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@editor.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@editor.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@emacs.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@emacs.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@evil.c create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@evil.c.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@evil.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@evil.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@helix.c create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@helix.c.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@helix.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@helix.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@la.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@la.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@lexer.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@lexer.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@lsp.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@lsp.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@main.c create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@main.c.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@render.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@render.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@sv.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@sv.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@theme.c create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@theme.c.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@theme.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@theme.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h.blob create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h create mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h.blob rename ccls_log.txt => clangd.log (100%) delete mode 100644 config/ded/fonts/JetBrainsMono-Bold.ttf create mode 100644 config/ded/fonts/JetBrainsMonoNerdFont-Bold.ttf create mode 100644 config/ded/fonts/fontawesome-regular.ttf create mode 100755 config/ded/scripts/ttf2png.py create mode 100644 config/ded/snippets/#inc create mode 100644 libtree-sitter-json.a create mode 100644 src/clock.c create mode 100644 src/clock.h delete mode 100644 src/elix.h create mode 100644 src/treesitter.c create mode 100644 src/treesitter.h create mode 100644 test.json diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h new file mode 100644 index 00000000..2518dfbb --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h @@ -0,0 +1,2103 @@ +/* + * Mesa 3-D graphics library + * + * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. + * Copyright (C) 2009 VMware, Inc. All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef __gl_h_ +#define __gl_h_ + +/********************************************************************** + * Begin system-specific stuff. + */ + +#if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__) +#define __WIN32__ +#endif + +#if defined(__WIN32__) && !defined(__CYGWIN__) +# if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */ +# define GLAPI __declspec(dllexport) +# elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're building for DLL runtime support */ +# define GLAPI __declspec(dllimport) +# else /* for use with static link lib build of Win32 edition only */ +# define GLAPI extern +# endif +# if defined(__MINGW32__) && defined(GL_NO_STDCALL) || defined(UNDER_CE) /* The generated DLLs by MingW with STDCALL are not compatible with the ones done by Microsoft's compilers */ +# define GLAPIENTRY +# else +# define GLAPIENTRY __stdcall +# endif +#elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native windows opengl32 */ +# define GLAPI extern +# define GLAPIENTRY __stdcall +#elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) +# define GLAPI __attribute__((visibility("default"))) +# define GLAPIENTRY +#endif /* WIN32 && !CYGWIN */ + +/* + * WINDOWS: Include windows.h here to define APIENTRY. + * It is also useful when applications include this file by + * including only glut.h, since glut.h depends on windows.h. + * Applications needing to include windows.h with parms other + * than "WIN32_LEAN_AND_MEAN" may include windows.h before + * glut.h or gl.h. + */ +#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) +#ifndef WIN32_LEAN_AND_MEAN +#define WIN32_LEAN_AND_MEAN 1 +#endif +#include +#endif + +#ifndef GLAPI +#define GLAPI extern +#endif + +#ifndef GLAPIENTRY +#define GLAPIENTRY +#endif + +#ifndef APIENTRY +#define APIENTRY GLAPIENTRY +#endif + +/* "P" suffix to be used for a pointer to a function */ +#ifndef APIENTRYP +#define APIENTRYP APIENTRY * +#endif + +#ifndef GLAPIENTRYP +#define GLAPIENTRYP GLAPIENTRY * +#endif + +/* + * End system-specific stuff. + **********************************************************************/ + + + +#ifdef __cplusplus +extern "C" { +#endif + + + +#define GL_VERSION_1_1 1 +#define GL_VERSION_1_2 1 +#define GL_VERSION_1_3 1 +#define GL_ARB_imaging 1 + + +/* + * Datatypes + */ +typedef unsigned int GLenum; +typedef unsigned char GLboolean; +typedef unsigned int GLbitfield; +typedef void GLvoid; +typedef signed char GLbyte; /* 1-byte signed */ +typedef short GLshort; /* 2-byte signed */ +typedef int GLint; /* 4-byte signed */ +typedef unsigned char GLubyte; /* 1-byte unsigned */ +typedef unsigned short GLushort; /* 2-byte unsigned */ +typedef unsigned int GLuint; /* 4-byte unsigned */ +typedef int GLsizei; /* 4-byte signed */ +typedef float GLfloat; /* single precision float */ +typedef float GLclampf; /* single precision float in [0,1] */ +typedef double GLdouble; /* double precision float */ +typedef double GLclampd; /* double precision float in [0,1] */ + + + +/* + * Constants + */ + +/* Boolean values */ +#define GL_FALSE 0 +#define GL_TRUE 1 + +/* Data types */ +#define GL_BYTE 0x1400 +#define GL_UNSIGNED_BYTE 0x1401 +#define GL_SHORT 0x1402 +#define GL_UNSIGNED_SHORT 0x1403 +#define GL_INT 0x1404 +#define GL_UNSIGNED_INT 0x1405 +#define GL_FLOAT 0x1406 +#define GL_2_BYTES 0x1407 +#define GL_3_BYTES 0x1408 +#define GL_4_BYTES 0x1409 +#define GL_DOUBLE 0x140A + +/* Primitives */ +#define GL_POINTS 0x0000 +#define GL_LINES 0x0001 +#define GL_LINE_LOOP 0x0002 +#define GL_LINE_STRIP 0x0003 +#define GL_TRIANGLES 0x0004 +#define GL_TRIANGLE_STRIP 0x0005 +#define GL_TRIANGLE_FAN 0x0006 +#define GL_QUADS 0x0007 +#define GL_QUAD_STRIP 0x0008 +#define GL_POLYGON 0x0009 + +/* Vertex Arrays */ +#define GL_VERTEX_ARRAY 0x8074 +#define GL_NORMAL_ARRAY 0x8075 +#define GL_COLOR_ARRAY 0x8076 +#define GL_INDEX_ARRAY 0x8077 +#define GL_TEXTURE_COORD_ARRAY 0x8078 +#define GL_EDGE_FLAG_ARRAY 0x8079 +#define GL_VERTEX_ARRAY_SIZE 0x807A +#define GL_VERTEX_ARRAY_TYPE 0x807B +#define GL_VERTEX_ARRAY_STRIDE 0x807C +#define GL_NORMAL_ARRAY_TYPE 0x807E +#define GL_NORMAL_ARRAY_STRIDE 0x807F +#define GL_COLOR_ARRAY_SIZE 0x8081 +#define GL_COLOR_ARRAY_TYPE 0x8082 +#define GL_COLOR_ARRAY_STRIDE 0x8083 +#define GL_INDEX_ARRAY_TYPE 0x8085 +#define GL_INDEX_ARRAY_STRIDE 0x8086 +#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 +#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 +#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A +#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C +#define GL_VERTEX_ARRAY_POINTER 0x808E +#define GL_NORMAL_ARRAY_POINTER 0x808F +#define GL_COLOR_ARRAY_POINTER 0x8090 +#define GL_INDEX_ARRAY_POINTER 0x8091 +#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 +#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 +#define GL_V2F 0x2A20 +#define GL_V3F 0x2A21 +#define GL_C4UB_V2F 0x2A22 +#define GL_C4UB_V3F 0x2A23 +#define GL_C3F_V3F 0x2A24 +#define GL_N3F_V3F 0x2A25 +#define GL_C4F_N3F_V3F 0x2A26 +#define GL_T2F_V3F 0x2A27 +#define GL_T4F_V4F 0x2A28 +#define GL_T2F_C4UB_V3F 0x2A29 +#define GL_T2F_C3F_V3F 0x2A2A +#define GL_T2F_N3F_V3F 0x2A2B +#define GL_T2F_C4F_N3F_V3F 0x2A2C +#define GL_T4F_C4F_N3F_V4F 0x2A2D + +/* Matrix Mode */ +#define GL_MATRIX_MODE 0x0BA0 +#define GL_MODELVIEW 0x1700 +#define GL_PROJECTION 0x1701 +#define GL_TEXTURE 0x1702 + +/* Points */ +#define GL_POINT_SMOOTH 0x0B10 +#define GL_POINT_SIZE 0x0B11 +#define GL_POINT_SIZE_GRANULARITY 0x0B13 +#define GL_POINT_SIZE_RANGE 0x0B12 + +/* Lines */ +#define GL_LINE_SMOOTH 0x0B20 +#define GL_LINE_STIPPLE 0x0B24 +#define GL_LINE_STIPPLE_PATTERN 0x0B25 +#define GL_LINE_STIPPLE_REPEAT 0x0B26 +#define GL_LINE_WIDTH 0x0B21 +#define GL_LINE_WIDTH_GRANULARITY 0x0B23 +#define GL_LINE_WIDTH_RANGE 0x0B22 + +/* Polygons */ +#define GL_POINT 0x1B00 +#define GL_LINE 0x1B01 +#define GL_FILL 0x1B02 +#define GL_CW 0x0900 +#define GL_CCW 0x0901 +#define GL_FRONT 0x0404 +#define GL_BACK 0x0405 +#define GL_POLYGON_MODE 0x0B40 +#define GL_POLYGON_SMOOTH 0x0B41 +#define GL_POLYGON_STIPPLE 0x0B42 +#define GL_EDGE_FLAG 0x0B43 +#define GL_CULL_FACE 0x0B44 +#define GL_CULL_FACE_MODE 0x0B45 +#define GL_FRONT_FACE 0x0B46 +#define GL_POLYGON_OFFSET_FACTOR 0x8038 +#define GL_POLYGON_OFFSET_UNITS 0x2A00 +#define GL_POLYGON_OFFSET_POINT 0x2A01 +#define GL_POLYGON_OFFSET_LINE 0x2A02 +#define GL_POLYGON_OFFSET_FILL 0x8037 + +/* Display Lists */ +#define GL_COMPILE 0x1300 +#define GL_COMPILE_AND_EXECUTE 0x1301 +#define GL_LIST_BASE 0x0B32 +#define GL_LIST_INDEX 0x0B33 +#define GL_LIST_MODE 0x0B30 + +/* Depth buffer */ +#define GL_NEVER 0x0200 +#define GL_LESS 0x0201 +#define GL_EQUAL 0x0202 +#define GL_LEQUAL 0x0203 +#define GL_GREATER 0x0204 +#define GL_NOTEQUAL 0x0205 +#define GL_GEQUAL 0x0206 +#define GL_ALWAYS 0x0207 +#define GL_DEPTH_TEST 0x0B71 +#define GL_DEPTH_BITS 0x0D56 +#define GL_DEPTH_CLEAR_VALUE 0x0B73 +#define GL_DEPTH_FUNC 0x0B74 +#define GL_DEPTH_RANGE 0x0B70 +#define GL_DEPTH_WRITEMASK 0x0B72 +#define GL_DEPTH_COMPONENT 0x1902 + +/* Lighting */ +#define GL_LIGHTING 0x0B50 +#define GL_LIGHT0 0x4000 +#define GL_LIGHT1 0x4001 +#define GL_LIGHT2 0x4002 +#define GL_LIGHT3 0x4003 +#define GL_LIGHT4 0x4004 +#define GL_LIGHT5 0x4005 +#define GL_LIGHT6 0x4006 +#define GL_LIGHT7 0x4007 +#define GL_SPOT_EXPONENT 0x1205 +#define GL_SPOT_CUTOFF 0x1206 +#define GL_CONSTANT_ATTENUATION 0x1207 +#define GL_LINEAR_ATTENUATION 0x1208 +#define GL_QUADRATIC_ATTENUATION 0x1209 +#define GL_AMBIENT 0x1200 +#define GL_DIFFUSE 0x1201 +#define GL_SPECULAR 0x1202 +#define GL_SHININESS 0x1601 +#define GL_EMISSION 0x1600 +#define GL_POSITION 0x1203 +#define GL_SPOT_DIRECTION 0x1204 +#define GL_AMBIENT_AND_DIFFUSE 0x1602 +#define GL_COLOR_INDEXES 0x1603 +#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 +#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 +#define GL_LIGHT_MODEL_AMBIENT 0x0B53 +#define GL_FRONT_AND_BACK 0x0408 +#define GL_SHADE_MODEL 0x0B54 +#define GL_FLAT 0x1D00 +#define GL_SMOOTH 0x1D01 +#define GL_COLOR_MATERIAL 0x0B57 +#define GL_COLOR_MATERIAL_FACE 0x0B55 +#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 +#define GL_NORMALIZE 0x0BA1 + +/* User clipping planes */ +#define GL_CLIP_PLANE0 0x3000 +#define GL_CLIP_PLANE1 0x3001 +#define GL_CLIP_PLANE2 0x3002 +#define GL_CLIP_PLANE3 0x3003 +#define GL_CLIP_PLANE4 0x3004 +#define GL_CLIP_PLANE5 0x3005 + +/* Accumulation buffer */ +#define GL_ACCUM_RED_BITS 0x0D58 +#define GL_ACCUM_GREEN_BITS 0x0D59 +#define GL_ACCUM_BLUE_BITS 0x0D5A +#define GL_ACCUM_ALPHA_BITS 0x0D5B +#define GL_ACCUM_CLEAR_VALUE 0x0B80 +#define GL_ACCUM 0x0100 +#define GL_ADD 0x0104 +#define GL_LOAD 0x0101 +#define GL_MULT 0x0103 +#define GL_RETURN 0x0102 + +/* Alpha testing */ +#define GL_ALPHA_TEST 0x0BC0 +#define GL_ALPHA_TEST_REF 0x0BC2 +#define GL_ALPHA_TEST_FUNC 0x0BC1 + +/* Blending */ +#define GL_BLEND 0x0BE2 +#define GL_BLEND_SRC 0x0BE1 +#define GL_BLEND_DST 0x0BE0 +#define GL_ZERO 0 +#define GL_ONE 1 +#define GL_SRC_COLOR 0x0300 +#define GL_ONE_MINUS_SRC_COLOR 0x0301 +#define GL_SRC_ALPHA 0x0302 +#define GL_ONE_MINUS_SRC_ALPHA 0x0303 +#define GL_DST_ALPHA 0x0304 +#define GL_ONE_MINUS_DST_ALPHA 0x0305 +#define GL_DST_COLOR 0x0306 +#define GL_ONE_MINUS_DST_COLOR 0x0307 +#define GL_SRC_ALPHA_SATURATE 0x0308 + +/* Render Mode */ +#define GL_FEEDBACK 0x1C01 +#define GL_RENDER 0x1C00 +#define GL_SELECT 0x1C02 + +/* Feedback */ +#define GL_2D 0x0600 +#define GL_3D 0x0601 +#define GL_3D_COLOR 0x0602 +#define GL_3D_COLOR_TEXTURE 0x0603 +#define GL_4D_COLOR_TEXTURE 0x0604 +#define GL_POINT_TOKEN 0x0701 +#define GL_LINE_TOKEN 0x0702 +#define GL_LINE_RESET_TOKEN 0x0707 +#define GL_POLYGON_TOKEN 0x0703 +#define GL_BITMAP_TOKEN 0x0704 +#define GL_DRAW_PIXEL_TOKEN 0x0705 +#define GL_COPY_PIXEL_TOKEN 0x0706 +#define GL_PASS_THROUGH_TOKEN 0x0700 +#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 +#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 +#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 + +/* Selection */ +#define GL_SELECTION_BUFFER_POINTER 0x0DF3 +#define GL_SELECTION_BUFFER_SIZE 0x0DF4 + +/* Fog */ +#define GL_FOG 0x0B60 +#define GL_FOG_MODE 0x0B65 +#define GL_FOG_DENSITY 0x0B62 +#define GL_FOG_COLOR 0x0B66 +#define GL_FOG_INDEX 0x0B61 +#define GL_FOG_START 0x0B63 +#define GL_FOG_END 0x0B64 +#define GL_LINEAR 0x2601 +#define GL_EXP 0x0800 +#define GL_EXP2 0x0801 + +/* Logic Ops */ +#define GL_LOGIC_OP 0x0BF1 +#define GL_INDEX_LOGIC_OP 0x0BF1 +#define GL_COLOR_LOGIC_OP 0x0BF2 +#define GL_LOGIC_OP_MODE 0x0BF0 +#define GL_CLEAR 0x1500 +#define GL_SET 0x150F +#define GL_COPY 0x1503 +#define GL_COPY_INVERTED 0x150C +#define GL_NOOP 0x1505 +#define GL_INVERT 0x150A +#define GL_AND 0x1501 +#define GL_NAND 0x150E +#define GL_OR 0x1507 +#define GL_NOR 0x1508 +#define GL_XOR 0x1506 +#define GL_EQUIV 0x1509 +#define GL_AND_REVERSE 0x1502 +#define GL_AND_INVERTED 0x1504 +#define GL_OR_REVERSE 0x150B +#define GL_OR_INVERTED 0x150D + +/* Stencil */ +#define GL_STENCIL_BITS 0x0D57 +#define GL_STENCIL_TEST 0x0B90 +#define GL_STENCIL_CLEAR_VALUE 0x0B91 +#define GL_STENCIL_FUNC 0x0B92 +#define GL_STENCIL_VALUE_MASK 0x0B93 +#define GL_STENCIL_FAIL 0x0B94 +#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 +#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 +#define GL_STENCIL_REF 0x0B97 +#define GL_STENCIL_WRITEMASK 0x0B98 +#define GL_STENCIL_INDEX 0x1901 +#define GL_KEEP 0x1E00 +#define GL_REPLACE 0x1E01 +#define GL_INCR 0x1E02 +#define GL_DECR 0x1E03 + +/* Buffers, Pixel Drawing/Reading */ +#define GL_NONE 0 +#define GL_LEFT 0x0406 +#define GL_RIGHT 0x0407 +/*GL_FRONT 0x0404 */ +/*GL_BACK 0x0405 */ +/*GL_FRONT_AND_BACK 0x0408 */ +#define GL_FRONT_LEFT 0x0400 +#define GL_FRONT_RIGHT 0x0401 +#define GL_BACK_LEFT 0x0402 +#define GL_BACK_RIGHT 0x0403 +#define GL_AUX0 0x0409 +#define GL_AUX1 0x040A +#define GL_AUX2 0x040B +#define GL_AUX3 0x040C +#define GL_COLOR_INDEX 0x1900 +#define GL_RED 0x1903 +#define GL_GREEN 0x1904 +#define GL_BLUE 0x1905 +#define GL_ALPHA 0x1906 +#define GL_LUMINANCE 0x1909 +#define GL_LUMINANCE_ALPHA 0x190A +#define GL_ALPHA_BITS 0x0D55 +#define GL_RED_BITS 0x0D52 +#define GL_GREEN_BITS 0x0D53 +#define GL_BLUE_BITS 0x0D54 +#define GL_INDEX_BITS 0x0D51 +#define GL_SUBPIXEL_BITS 0x0D50 +#define GL_AUX_BUFFERS 0x0C00 +#define GL_READ_BUFFER 0x0C02 +#define GL_DRAW_BUFFER 0x0C01 +#define GL_DOUBLEBUFFER 0x0C32 +#define GL_STEREO 0x0C33 +#define GL_BITMAP 0x1A00 +#define GL_COLOR 0x1800 +#define GL_DEPTH 0x1801 +#define GL_STENCIL 0x1802 +#define GL_DITHER 0x0BD0 +#define GL_RGB 0x1907 +#define GL_RGBA 0x1908 + +/* Implementation limits */ +#define GL_MAX_LIST_NESTING 0x0B31 +#define GL_MAX_EVAL_ORDER 0x0D30 +#define GL_MAX_LIGHTS 0x0D31 +#define GL_MAX_CLIP_PLANES 0x0D32 +#define GL_MAX_TEXTURE_SIZE 0x0D33 +#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 +#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 +#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 +#define GL_MAX_NAME_STACK_DEPTH 0x0D37 +#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 +#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 +#define GL_MAX_VIEWPORT_DIMS 0x0D3A +#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B + +/* Gets */ +#define GL_ATTRIB_STACK_DEPTH 0x0BB0 +#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 +#define GL_COLOR_CLEAR_VALUE 0x0C22 +#define GL_COLOR_WRITEMASK 0x0C23 +#define GL_CURRENT_INDEX 0x0B01 +#define GL_CURRENT_COLOR 0x0B00 +#define GL_CURRENT_NORMAL 0x0B02 +#define GL_CURRENT_RASTER_COLOR 0x0B04 +#define GL_CURRENT_RASTER_DISTANCE 0x0B09 +#define GL_CURRENT_RASTER_INDEX 0x0B05 +#define GL_CURRENT_RASTER_POSITION 0x0B07 +#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 +#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 +#define GL_CURRENT_TEXTURE_COORDS 0x0B03 +#define GL_INDEX_CLEAR_VALUE 0x0C20 +#define GL_INDEX_MODE 0x0C30 +#define GL_INDEX_WRITEMASK 0x0C21 +#define GL_MODELVIEW_MATRIX 0x0BA6 +#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 +#define GL_NAME_STACK_DEPTH 0x0D70 +#define GL_PROJECTION_MATRIX 0x0BA7 +#define GL_PROJECTION_STACK_DEPTH 0x0BA4 +#define GL_RENDER_MODE 0x0C40 +#define GL_RGBA_MODE 0x0C31 +#define GL_TEXTURE_MATRIX 0x0BA8 +#define GL_TEXTURE_STACK_DEPTH 0x0BA5 +#define GL_VIEWPORT 0x0BA2 + +/* Evaluators */ +#define GL_AUTO_NORMAL 0x0D80 +#define GL_MAP1_COLOR_4 0x0D90 +#define GL_MAP1_INDEX 0x0D91 +#define GL_MAP1_NORMAL 0x0D92 +#define GL_MAP1_TEXTURE_COORD_1 0x0D93 +#define GL_MAP1_TEXTURE_COORD_2 0x0D94 +#define GL_MAP1_TEXTURE_COORD_3 0x0D95 +#define GL_MAP1_TEXTURE_COORD_4 0x0D96 +#define GL_MAP1_VERTEX_3 0x0D97 +#define GL_MAP1_VERTEX_4 0x0D98 +#define GL_MAP2_COLOR_4 0x0DB0 +#define GL_MAP2_INDEX 0x0DB1 +#define GL_MAP2_NORMAL 0x0DB2 +#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 +#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 +#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 +#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 +#define GL_MAP2_VERTEX_3 0x0DB7 +#define GL_MAP2_VERTEX_4 0x0DB8 +#define GL_MAP1_GRID_DOMAIN 0x0DD0 +#define GL_MAP1_GRID_SEGMENTS 0x0DD1 +#define GL_MAP2_GRID_DOMAIN 0x0DD2 +#define GL_MAP2_GRID_SEGMENTS 0x0DD3 +#define GL_COEFF 0x0A00 +#define GL_ORDER 0x0A01 +#define GL_DOMAIN 0x0A02 + +/* Hints */ +#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 +#define GL_POINT_SMOOTH_HINT 0x0C51 +#define GL_LINE_SMOOTH_HINT 0x0C52 +#define GL_POLYGON_SMOOTH_HINT 0x0C53 +#define GL_FOG_HINT 0x0C54 +#define GL_DONT_CARE 0x1100 +#define GL_FASTEST 0x1101 +#define GL_NICEST 0x1102 + +/* Scissor box */ +#define GL_SCISSOR_BOX 0x0C10 +#define GL_SCISSOR_TEST 0x0C11 + +/* Pixel Mode / Transfer */ +#define GL_MAP_COLOR 0x0D10 +#define GL_MAP_STENCIL 0x0D11 +#define GL_INDEX_SHIFT 0x0D12 +#define GL_INDEX_OFFSET 0x0D13 +#define GL_RED_SCALE 0x0D14 +#define GL_RED_BIAS 0x0D15 +#define GL_GREEN_SCALE 0x0D18 +#define GL_GREEN_BIAS 0x0D19 +#define GL_BLUE_SCALE 0x0D1A +#define GL_BLUE_BIAS 0x0D1B +#define GL_ALPHA_SCALE 0x0D1C +#define GL_ALPHA_BIAS 0x0D1D +#define GL_DEPTH_SCALE 0x0D1E +#define GL_DEPTH_BIAS 0x0D1F +#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 +#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 +#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 +#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 +#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 +#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 +#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 +#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 +#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 +#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 +#define GL_PIXEL_MAP_S_TO_S 0x0C71 +#define GL_PIXEL_MAP_I_TO_I 0x0C70 +#define GL_PIXEL_MAP_I_TO_R 0x0C72 +#define GL_PIXEL_MAP_I_TO_G 0x0C73 +#define GL_PIXEL_MAP_I_TO_B 0x0C74 +#define GL_PIXEL_MAP_I_TO_A 0x0C75 +#define GL_PIXEL_MAP_R_TO_R 0x0C76 +#define GL_PIXEL_MAP_G_TO_G 0x0C77 +#define GL_PIXEL_MAP_B_TO_B 0x0C78 +#define GL_PIXEL_MAP_A_TO_A 0x0C79 +#define GL_PACK_ALIGNMENT 0x0D05 +#define GL_PACK_LSB_FIRST 0x0D01 +#define GL_PACK_ROW_LENGTH 0x0D02 +#define GL_PACK_SKIP_PIXELS 0x0D04 +#define GL_PACK_SKIP_ROWS 0x0D03 +#define GL_PACK_SWAP_BYTES 0x0D00 +#define GL_UNPACK_ALIGNMENT 0x0CF5 +#define GL_UNPACK_LSB_FIRST 0x0CF1 +#define GL_UNPACK_ROW_LENGTH 0x0CF2 +#define GL_UNPACK_SKIP_PIXELS 0x0CF4 +#define GL_UNPACK_SKIP_ROWS 0x0CF3 +#define GL_UNPACK_SWAP_BYTES 0x0CF0 +#define GL_ZOOM_X 0x0D16 +#define GL_ZOOM_Y 0x0D17 + +/* Texture mapping */ +#define GL_TEXTURE_ENV 0x2300 +#define GL_TEXTURE_ENV_MODE 0x2200 +#define GL_TEXTURE_1D 0x0DE0 +#define GL_TEXTURE_2D 0x0DE1 +#define GL_TEXTURE_WRAP_S 0x2802 +#define GL_TEXTURE_WRAP_T 0x2803 +#define GL_TEXTURE_MAG_FILTER 0x2800 +#define GL_TEXTURE_MIN_FILTER 0x2801 +#define GL_TEXTURE_ENV_COLOR 0x2201 +#define GL_TEXTURE_GEN_S 0x0C60 +#define GL_TEXTURE_GEN_T 0x0C61 +#define GL_TEXTURE_GEN_R 0x0C62 +#define GL_TEXTURE_GEN_Q 0x0C63 +#define GL_TEXTURE_GEN_MODE 0x2500 +#define GL_TEXTURE_BORDER_COLOR 0x1004 +#define GL_TEXTURE_WIDTH 0x1000 +#define GL_TEXTURE_HEIGHT 0x1001 +#define GL_TEXTURE_BORDER 0x1005 +#define GL_TEXTURE_COMPONENTS 0x1003 +#define GL_TEXTURE_RED_SIZE 0x805C +#define GL_TEXTURE_GREEN_SIZE 0x805D +#define GL_TEXTURE_BLUE_SIZE 0x805E +#define GL_TEXTURE_ALPHA_SIZE 0x805F +#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 +#define GL_TEXTURE_INTENSITY_SIZE 0x8061 +#define GL_NEAREST_MIPMAP_NEAREST 0x2700 +#define GL_NEAREST_MIPMAP_LINEAR 0x2702 +#define GL_LINEAR_MIPMAP_NEAREST 0x2701 +#define GL_LINEAR_MIPMAP_LINEAR 0x2703 +#define GL_OBJECT_LINEAR 0x2401 +#define GL_OBJECT_PLANE 0x2501 +#define GL_EYE_LINEAR 0x2400 +#define GL_EYE_PLANE 0x2502 +#define GL_SPHERE_MAP 0x2402 +#define GL_DECAL 0x2101 +#define GL_MODULATE 0x2100 +#define GL_NEAREST 0x2600 +#define GL_REPEAT 0x2901 +#define GL_CLAMP 0x2900 +#define GL_S 0x2000 +#define GL_T 0x2001 +#define GL_R 0x2002 +#define GL_Q 0x2003 + +/* Utility */ +#define GL_VENDOR 0x1F00 +#define GL_RENDERER 0x1F01 +#define GL_VERSION 0x1F02 +#define GL_EXTENSIONS 0x1F03 + +/* Errors */ +#define GL_NO_ERROR 0 +#define GL_INVALID_ENUM 0x0500 +#define GL_INVALID_VALUE 0x0501 +#define GL_INVALID_OPERATION 0x0502 +#define GL_STACK_OVERFLOW 0x0503 +#define GL_STACK_UNDERFLOW 0x0504 +#define GL_OUT_OF_MEMORY 0x0505 + +/* glPush/PopAttrib bits */ +#define GL_CURRENT_BIT 0x00000001 +#define GL_POINT_BIT 0x00000002 +#define GL_LINE_BIT 0x00000004 +#define GL_POLYGON_BIT 0x00000008 +#define GL_POLYGON_STIPPLE_BIT 0x00000010 +#define GL_PIXEL_MODE_BIT 0x00000020 +#define GL_LIGHTING_BIT 0x00000040 +#define GL_FOG_BIT 0x00000080 +#define GL_DEPTH_BUFFER_BIT 0x00000100 +#define GL_ACCUM_BUFFER_BIT 0x00000200 +#define GL_STENCIL_BUFFER_BIT 0x00000400 +#define GL_VIEWPORT_BIT 0x00000800 +#define GL_TRANSFORM_BIT 0x00001000 +#define GL_ENABLE_BIT 0x00002000 +#define GL_COLOR_BUFFER_BIT 0x00004000 +#define GL_HINT_BIT 0x00008000 +#define GL_EVAL_BIT 0x00010000 +#define GL_LIST_BIT 0x00020000 +#define GL_TEXTURE_BIT 0x00040000 +#define GL_SCISSOR_BIT 0x00080000 +#define GL_ALL_ATTRIB_BITS 0xFFFFFFFF + + +/* OpenGL 1.1 */ +#define GL_PROXY_TEXTURE_1D 0x8063 +#define GL_PROXY_TEXTURE_2D 0x8064 +#define GL_TEXTURE_PRIORITY 0x8066 +#define GL_TEXTURE_RESIDENT 0x8067 +#define GL_TEXTURE_BINDING_1D 0x8068 +#define GL_TEXTURE_BINDING_2D 0x8069 +#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 +#define GL_ALPHA4 0x803B +#define GL_ALPHA8 0x803C +#define GL_ALPHA12 0x803D +#define GL_ALPHA16 0x803E +#define GL_LUMINANCE4 0x803F +#define GL_LUMINANCE8 0x8040 +#define GL_LUMINANCE12 0x8041 +#define GL_LUMINANCE16 0x8042 +#define GL_LUMINANCE4_ALPHA4 0x8043 +#define GL_LUMINANCE6_ALPHA2 0x8044 +#define GL_LUMINANCE8_ALPHA8 0x8045 +#define GL_LUMINANCE12_ALPHA4 0x8046 +#define GL_LUMINANCE12_ALPHA12 0x8047 +#define GL_LUMINANCE16_ALPHA16 0x8048 +#define GL_INTENSITY 0x8049 +#define GL_INTENSITY4 0x804A +#define GL_INTENSITY8 0x804B +#define GL_INTENSITY12 0x804C +#define GL_INTENSITY16 0x804D +#define GL_R3_G3_B2 0x2A10 +#define GL_RGB4 0x804F +#define GL_RGB5 0x8050 +#define GL_RGB8 0x8051 +#define GL_RGB10 0x8052 +#define GL_RGB12 0x8053 +#define GL_RGB16 0x8054 +#define GL_RGBA2 0x8055 +#define GL_RGBA4 0x8056 +#define GL_RGB5_A1 0x8057 +#define GL_RGBA8 0x8058 +#define GL_RGB10_A2 0x8059 +#define GL_RGBA12 0x805A +#define GL_RGBA16 0x805B +#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 +#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 +#define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF +#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF + + + +/* + * Miscellaneous + */ + +GLAPI void GLAPIENTRY glClearIndex( GLfloat c ); + +GLAPI void GLAPIENTRY glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); + +GLAPI void GLAPIENTRY glClear( GLbitfield mask ); + +GLAPI void GLAPIENTRY glIndexMask( GLuint mask ); + +GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ); + +GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref ); + +GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor ); + +GLAPI void GLAPIENTRY glLogicOp( GLenum opcode ); + +GLAPI void GLAPIENTRY glCullFace( GLenum mode ); + +GLAPI void GLAPIENTRY glFrontFace( GLenum mode ); + +GLAPI void GLAPIENTRY glPointSize( GLfloat size ); + +GLAPI void GLAPIENTRY glLineWidth( GLfloat width ); + +GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern ); + +GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode ); + +GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units ); + +GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask ); + +GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask ); + +GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag ); + +GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag ); + +GLAPI void GLAPIENTRY glScissor( GLint x, GLint y, GLsizei width, GLsizei height); + +GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble *equation ); + +GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble *equation ); + +GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode ); + +GLAPI void GLAPIENTRY glReadBuffer( GLenum mode ); + +GLAPI void GLAPIENTRY glEnable( GLenum cap ); + +GLAPI void GLAPIENTRY glDisable( GLenum cap ); + +GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap ); + + +GLAPI void GLAPIENTRY glEnableClientState( GLenum cap ); /* 1.1 */ + +GLAPI void GLAPIENTRY glDisableClientState( GLenum cap ); /* 1.1 */ + + +GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params ); + +GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params ); + +GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params ); + +GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params ); + + +GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask ); + +GLAPI void GLAPIENTRY glPopAttrib( void ); + + +GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */ + +GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */ + + +GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode ); + +GLAPI GLenum GLAPIENTRY glGetError( void ); + +GLAPI const GLubyte * GLAPIENTRY glGetString( GLenum name ); + +GLAPI void GLAPIENTRY glFinish( void ); + +GLAPI void GLAPIENTRY glFlush( void ); + +GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode ); + + +/* + * Depth Buffer + */ + +GLAPI void GLAPIENTRY glClearDepth( GLclampd depth ); + +GLAPI void GLAPIENTRY glDepthFunc( GLenum func ); + +GLAPI void GLAPIENTRY glDepthMask( GLboolean flag ); + +GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val ); + + +/* + * Accumulation Buffer + */ + +GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); + +GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value ); + + +/* + * Transformation + */ + +GLAPI void GLAPIENTRY glMatrixMode( GLenum mode ); + +GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right, + GLdouble bottom, GLdouble top, + GLdouble near_val, GLdouble far_val ); + +GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right, + GLdouble bottom, GLdouble top, + GLdouble near_val, GLdouble far_val ); + +GLAPI void GLAPIENTRY glViewport( GLint x, GLint y, + GLsizei width, GLsizei height ); + +GLAPI void GLAPIENTRY glPushMatrix( void ); + +GLAPI void GLAPIENTRY glPopMatrix( void ); + +GLAPI void GLAPIENTRY glLoadIdentity( void ); + +GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m ); +GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m ); + +GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m ); +GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m ); + +GLAPI void GLAPIENTRY glRotated( GLdouble angle, + GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glRotatef( GLfloat angle, + GLfloat x, GLfloat y, GLfloat z ); + +GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z ); + +GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z ); + + +/* + * Display Lists + */ + +GLAPI GLboolean GLAPIENTRY glIsList( GLuint list ); + +GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range ); + +GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range ); + +GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode ); + +GLAPI void GLAPIENTRY glEndList( void ); + +GLAPI void GLAPIENTRY glCallList( GLuint list ); + +GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type, + const GLvoid *lists ); + +GLAPI void GLAPIENTRY glListBase( GLuint base ); + + +/* + * Drawing Functions + */ + +GLAPI void GLAPIENTRY glBegin( GLenum mode ); + +GLAPI void GLAPIENTRY glEnd( void ); + + +GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y ); +GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y ); +GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y ); +GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y ); + +GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z ); +GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z ); +GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z ); + +GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); +GLAPI void GLAPIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); +GLAPI void GLAPIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w ); +GLAPI void GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w ); + +GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glVertex2iv( const GLint *v ); +GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glVertex3iv( const GLint *v ); +GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glVertex4iv( const GLint *v ); +GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v ); + + +GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ); +GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz ); +GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz ); +GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, GLint nz ); +GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz ); + +GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v ); +GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glNormal3iv( const GLint *v ); +GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v ); + + +GLAPI void GLAPIENTRY glIndexd( GLdouble c ); +GLAPI void GLAPIENTRY glIndexf( GLfloat c ); +GLAPI void GLAPIENTRY glIndexi( GLint c ); +GLAPI void GLAPIENTRY glIndexs( GLshort c ); +GLAPI void GLAPIENTRY glIndexub( GLubyte c ); /* 1.1 */ + +GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c ); +GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c ); +GLAPI void GLAPIENTRY glIndexiv( const GLint *c ); +GLAPI void GLAPIENTRY glIndexsv( const GLshort *c ); +GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */ + +GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue ); +GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue ); +GLAPI void GLAPIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue ); +GLAPI void GLAPIENTRY glColor3i( GLint red, GLint green, GLint blue ); +GLAPI void GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue ); +GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue ); +GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue ); +GLAPI void GLAPIENTRY glColor3us( GLushort red, GLushort green, GLushort blue ); + +GLAPI void GLAPIENTRY glColor4b( GLbyte red, GLbyte green, + GLbyte blue, GLbyte alpha ); +GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green, + GLdouble blue, GLdouble alpha ); +GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green, + GLfloat blue, GLfloat alpha ); +GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green, + GLint blue, GLint alpha ); +GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green, + GLshort blue, GLshort alpha ); +GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green, + GLubyte blue, GLubyte alpha ); +GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green, + GLuint blue, GLuint alpha ); +GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green, + GLushort blue, GLushort alpha ); + + +GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v ); +GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glColor3iv( const GLint *v ); +GLAPI void GLAPIENTRY glColor3sv( const GLshort *v ); +GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v ); +GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v ); +GLAPI void GLAPIENTRY glColor3usv( const GLushort *v ); + +GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v ); +GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glColor4iv( const GLint *v ); +GLAPI void GLAPIENTRY glColor4sv( const GLshort *v ); +GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v ); +GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v ); +GLAPI void GLAPIENTRY glColor4usv( const GLushort *v ); + + +GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s ); +GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s ); +GLAPI void GLAPIENTRY glTexCoord1i( GLint s ); +GLAPI void GLAPIENTRY glTexCoord1s( GLshort s ); + +GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t ); +GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t ); +GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t ); +GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t ); + +GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r ); +GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r ); +GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, GLint r ); +GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r ); + +GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); +GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); +GLAPI void GLAPIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q ); +GLAPI void GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q ); + +GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v ); +GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v ); +GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v ); +GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v ); +GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v ); + + +GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y ); +GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y ); +GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y ); +GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y ); + +GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z ); +GLAPI void GLAPIENTRY glRasterPos3i( GLint x, GLint y, GLint z ); +GLAPI void GLAPIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z ); + +GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); +GLAPI void GLAPIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); +GLAPI void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w ); +GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w ); + +GLAPI void GLAPIENTRY glRasterPos2dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v ); +GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v ); +GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v ); +GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v ); + + +GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); +GLAPI void GLAPIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); +GLAPI void GLAPIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ); +GLAPI void GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); + + +GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 ); +GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 ); +GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 ); +GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 ); + + +/* + * Vertex Arrays (1.1) + */ + +GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type, + GLsizei stride, const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride, + const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type, + GLsizei stride, const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride, + const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type, + GLsizei stride, const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, GLvoid **params ); + +GLAPI void GLAPIENTRY glArrayElement( GLint i ); + +GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count ); + +GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count, + GLenum type, const GLvoid *indices ); + +GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride, + const GLvoid *pointer ); + +/* + * Lighting + */ + +GLAPI void GLAPIENTRY glShadeModel( GLenum mode ); + +GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, GLint param ); +GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum pname, + const GLfloat *params ); +GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname, + const GLint *params ); + +GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname, + GLfloat *params ); +GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param ); +GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const GLint *params ); + +GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glMateriali( GLenum face, GLenum pname, GLint param ); +GLAPI void GLAPIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params ); + +GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params ); + +GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode ); + + +/* + * Raster functions + */ + +GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor ); + +GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLsizei mapsize, + const GLfloat *values ); +GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLsizei mapsize, + const GLuint *values ); +GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLsizei mapsize, + const GLushort *values ); + +GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values ); +GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values ); +GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values ); + +GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height, + GLfloat xorig, GLfloat yorig, + GLfloat xmove, GLfloat ymove, + const GLubyte *bitmap ); + +GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y, + GLsizei width, GLsizei height, + GLenum format, GLenum type, + GLvoid *pixels ); + +GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height, + GLenum format, GLenum type, + const GLvoid *pixels ); + +GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y, + GLsizei width, GLsizei height, + GLenum type ); + +/* + * Stenciling + */ + +GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask ); + +GLAPI void GLAPIENTRY glStencilMask( GLuint mask ); + +GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass ); + +GLAPI void GLAPIENTRY glClearStencil( GLint s ); + + + +/* + * Texture mapping + */ + +GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param ); +GLAPI void GLAPIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params ); +GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params ); + +GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params ); +GLAPI void GLAPIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params ); + + +GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params ); + +GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params ); + + +GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname, + const GLfloat *params ); +GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname, + const GLint *params ); + +GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target, + GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target, + GLenum pname, GLint *params ); + +GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint level, + GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY glGetTexLevelParameteriv( GLenum target, GLint level, + GLenum pname, GLint *params ); + + +GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level, + GLint internalFormat, + GLsizei width, GLint border, + GLenum format, GLenum type, + const GLvoid *pixels ); + +GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level, + GLint internalFormat, + GLsizei width, GLsizei height, + GLint border, GLenum format, GLenum type, + const GLvoid *pixels ); + +GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level, + GLenum format, GLenum type, + GLvoid *pixels ); + + +/* 1.1 functions */ + +GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures ); + +GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint *textures); + +GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture ); + +GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n, + const GLuint *textures, + const GLclampf *priorities ); + +GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n, + const GLuint *textures, + GLboolean *residences ); + +GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture ); + + +GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level, + GLint xoffset, + GLsizei width, GLenum format, + GLenum type, const GLvoid *pixels ); + + +GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLsizei width, GLsizei height, + GLenum format, GLenum type, + const GLvoid *pixels ); + + +GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level, + GLenum internalformat, + GLint x, GLint y, + GLsizei width, GLint border ); + + +GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level, + GLenum internalformat, + GLint x, GLint y, + GLsizei width, GLsizei height, + GLint border ); + + +GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint level, + GLint xoffset, GLint x, GLint y, + GLsizei width ); + + +GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLint x, GLint y, + GLsizei width, GLsizei height ); + + +/* + * Evaluators + */ + +GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2, + GLint stride, + GLint order, const GLdouble *points ); +GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2, + GLint stride, + GLint order, const GLfloat *points ); + +GLAPI void GLAPIENTRY glMap2d( GLenum target, + GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, + GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, + const GLdouble *points ); +GLAPI void GLAPIENTRY glMap2f( GLenum target, + GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, + GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, + const GLfloat *points ); + +GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v ); +GLAPI void GLAPIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v ); +GLAPI void GLAPIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v ); + +GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u ); +GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u ); + +GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u ); +GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u ); + +GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v ); +GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v ); + +GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u ); +GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u ); + +GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 ); +GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 ); + +GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, + GLint vn, GLdouble v1, GLdouble v2 ); +GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2, + GLint vn, GLfloat v1, GLfloat v2 ); + +GLAPI void GLAPIENTRY glEvalPoint1( GLint i ); + +GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j ); + +GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 ); + +GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); + + +/* + * Fog + */ + +GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param ); + +GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params ); + +GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params ); + + +/* + * Selection and Feedback + */ + +GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ); + +GLAPI void GLAPIENTRY glPassThrough( GLfloat token ); + +GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer ); + +GLAPI void GLAPIENTRY glInitNames( void ); + +GLAPI void GLAPIENTRY glLoadName( GLuint name ); + +GLAPI void GLAPIENTRY glPushName( GLuint name ); + +GLAPI void GLAPIENTRY glPopName( void ); + + + +/* + * OpenGL 1.2 + */ + +#define GL_RESCALE_NORMAL 0x803A +#define GL_CLAMP_TO_EDGE 0x812F +#define GL_MAX_ELEMENTS_VERTICES 0x80E8 +#define GL_MAX_ELEMENTS_INDICES 0x80E9 +#define GL_BGR 0x80E0 +#define GL_BGRA 0x80E1 +#define GL_UNSIGNED_BYTE_3_3_2 0x8032 +#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 +#define GL_UNSIGNED_SHORT_5_6_5 0x8363 +#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 +#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 +#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 +#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 +#define GL_UNSIGNED_INT_8_8_8_8 0x8035 +#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 +#define GL_UNSIGNED_INT_10_10_10_2 0x8036 +#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 +#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 +#define GL_SINGLE_COLOR 0x81F9 +#define GL_SEPARATE_SPECULAR_COLOR 0x81FA +#define GL_TEXTURE_MIN_LOD 0x813A +#define GL_TEXTURE_MAX_LOD 0x813B +#define GL_TEXTURE_BASE_LEVEL 0x813C +#define GL_TEXTURE_MAX_LEVEL 0x813D +#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 +#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 +#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 +#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 +#define GL_ALIASED_POINT_SIZE_RANGE 0x846D +#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E +#define GL_PACK_SKIP_IMAGES 0x806B +#define GL_PACK_IMAGE_HEIGHT 0x806C +#define GL_UNPACK_SKIP_IMAGES 0x806D +#define GL_UNPACK_IMAGE_HEIGHT 0x806E +#define GL_TEXTURE_3D 0x806F +#define GL_PROXY_TEXTURE_3D 0x8070 +#define GL_TEXTURE_DEPTH 0x8071 +#define GL_TEXTURE_WRAP_R 0x8072 +#define GL_MAX_3D_TEXTURE_SIZE 0x8073 +#define GL_TEXTURE_BINDING_3D 0x806A + +GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start, + GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); + +GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level, + GLint internalFormat, + GLsizei width, GLsizei height, + GLsizei depth, GLint border, + GLenum format, GLenum type, + const GLvoid *pixels ); + +GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLint zoffset, GLsizei width, + GLsizei height, GLsizei depth, + GLenum format, + GLenum type, const GLvoid *pixels); + +GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLint zoffset, GLint x, + GLint y, GLsizei width, + GLsizei height ); + +typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); +typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); + + +/* + * GL_ARB_imaging + */ + +#define GL_CONSTANT_COLOR 0x8001 +#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 +#define GL_CONSTANT_ALPHA 0x8003 +#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 +#define GL_COLOR_TABLE 0x80D0 +#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 +#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 +#define GL_PROXY_COLOR_TABLE 0x80D3 +#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 +#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 +#define GL_COLOR_TABLE_SCALE 0x80D6 +#define GL_COLOR_TABLE_BIAS 0x80D7 +#define GL_COLOR_TABLE_FORMAT 0x80D8 +#define GL_COLOR_TABLE_WIDTH 0x80D9 +#define GL_COLOR_TABLE_RED_SIZE 0x80DA +#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB +#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC +#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD +#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE +#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF +#define GL_CONVOLUTION_1D 0x8010 +#define GL_CONVOLUTION_2D 0x8011 +#define GL_SEPARABLE_2D 0x8012 +#define GL_CONVOLUTION_BORDER_MODE 0x8013 +#define GL_CONVOLUTION_FILTER_SCALE 0x8014 +#define GL_CONVOLUTION_FILTER_BIAS 0x8015 +#define GL_REDUCE 0x8016 +#define GL_CONVOLUTION_FORMAT 0x8017 +#define GL_CONVOLUTION_WIDTH 0x8018 +#define GL_CONVOLUTION_HEIGHT 0x8019 +#define GL_MAX_CONVOLUTION_WIDTH 0x801A +#define GL_MAX_CONVOLUTION_HEIGHT 0x801B +#define GL_POST_CONVOLUTION_RED_SCALE 0x801C +#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D +#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E +#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F +#define GL_POST_CONVOLUTION_RED_BIAS 0x8020 +#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 +#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 +#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 +#define GL_CONSTANT_BORDER 0x8151 +#define GL_REPLICATE_BORDER 0x8153 +#define GL_CONVOLUTION_BORDER_COLOR 0x8154 +#define GL_COLOR_MATRIX 0x80B1 +#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 +#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 +#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 +#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 +#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 +#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 +#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 +#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 +#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA +#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB +#define GL_HISTOGRAM 0x8024 +#define GL_PROXY_HISTOGRAM 0x8025 +#define GL_HISTOGRAM_WIDTH 0x8026 +#define GL_HISTOGRAM_FORMAT 0x8027 +#define GL_HISTOGRAM_RED_SIZE 0x8028 +#define GL_HISTOGRAM_GREEN_SIZE 0x8029 +#define GL_HISTOGRAM_BLUE_SIZE 0x802A +#define GL_HISTOGRAM_ALPHA_SIZE 0x802B +#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C +#define GL_HISTOGRAM_SINK 0x802D +#define GL_MINMAX 0x802E +#define GL_MINMAX_FORMAT 0x802F +#define GL_MINMAX_SINK 0x8030 +#define GL_TABLE_TOO_LARGE 0x8031 +#define GL_BLEND_EQUATION 0x8009 +#define GL_MIN 0x8007 +#define GL_MAX 0x8008 +#define GL_FUNC_ADD 0x8006 +#define GL_FUNC_SUBTRACT 0x800A +#define GL_FUNC_REVERSE_SUBTRACT 0x800B +#define GL_BLEND_COLOR 0x8005 + + +GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalformat, + GLsizei width, GLenum format, + GLenum type, const GLvoid *table ); + +GLAPI void GLAPIENTRY glColorSubTable( GLenum target, + GLsizei start, GLsizei count, + GLenum format, GLenum type, + const GLvoid *data ); + +GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum pname, + const GLint *params); + +GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum pname, + const GLfloat *params); + +GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei start, + GLint x, GLint y, GLsizei width ); + +GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum internalformat, + GLint x, GLint y, GLsizei width ); + +GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format, + GLenum type, GLvoid *table ); + +GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname, + GLfloat *params ); + +GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glBlendEquation( GLenum mode ); + +GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green, + GLclampf blue, GLclampf alpha ); + +GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width, + GLenum internalformat, GLboolean sink ); + +GLAPI void GLAPIENTRY glResetHistogram( GLenum target ); + +GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset, + GLenum format, GLenum type, + GLvoid *values ); + +GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname, + GLfloat *params ); + +GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat, + GLboolean sink ); + +GLAPI void GLAPIENTRY glResetMinmax( GLenum target ); + +GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset, + GLenum format, GLenum types, + GLvoid *values ); + +GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname, + GLfloat *params ); + +GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target, + GLenum internalformat, GLsizei width, GLenum format, GLenum type, + const GLvoid *image ); + +GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target, + GLenum internalformat, GLsizei width, GLsizei height, GLenum format, + GLenum type, const GLvoid *image ); + +GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum pname, + GLfloat params ); + +GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, GLenum pname, + const GLfloat *params ); + +GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum pname, + GLint params ); + +GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, GLenum pname, + const GLint *params ); + +GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target, + GLenum internalformat, GLint x, GLint y, GLsizei width ); + +GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target, + GLenum internalformat, GLint x, GLint y, GLsizei width, + GLsizei height); + +GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format, + GLenum type, GLvoid *image ); + +GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname, + GLfloat *params ); + +GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target, + GLenum internalformat, GLsizei width, GLsizei height, GLenum format, + GLenum type, const GLvoid *row, const GLvoid *column ); + +GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format, + GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); + + + + +/* + * OpenGL 1.3 + */ + +/* multitexture */ +#define GL_TEXTURE0 0x84C0 +#define GL_TEXTURE1 0x84C1 +#define GL_TEXTURE2 0x84C2 +#define GL_TEXTURE3 0x84C3 +#define GL_TEXTURE4 0x84C4 +#define GL_TEXTURE5 0x84C5 +#define GL_TEXTURE6 0x84C6 +#define GL_TEXTURE7 0x84C7 +#define GL_TEXTURE8 0x84C8 +#define GL_TEXTURE9 0x84C9 +#define GL_TEXTURE10 0x84CA +#define GL_TEXTURE11 0x84CB +#define GL_TEXTURE12 0x84CC +#define GL_TEXTURE13 0x84CD +#define GL_TEXTURE14 0x84CE +#define GL_TEXTURE15 0x84CF +#define GL_TEXTURE16 0x84D0 +#define GL_TEXTURE17 0x84D1 +#define GL_TEXTURE18 0x84D2 +#define GL_TEXTURE19 0x84D3 +#define GL_TEXTURE20 0x84D4 +#define GL_TEXTURE21 0x84D5 +#define GL_TEXTURE22 0x84D6 +#define GL_TEXTURE23 0x84D7 +#define GL_TEXTURE24 0x84D8 +#define GL_TEXTURE25 0x84D9 +#define GL_TEXTURE26 0x84DA +#define GL_TEXTURE27 0x84DB +#define GL_TEXTURE28 0x84DC +#define GL_TEXTURE29 0x84DD +#define GL_TEXTURE30 0x84DE +#define GL_TEXTURE31 0x84DF +#define GL_ACTIVE_TEXTURE 0x84E0 +#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 +#define GL_MAX_TEXTURE_UNITS 0x84E2 +/* texture_cube_map */ +#define GL_NORMAL_MAP 0x8511 +#define GL_REFLECTION_MAP 0x8512 +#define GL_TEXTURE_CUBE_MAP 0x8513 +#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A +#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C +/* texture_compression */ +#define GL_COMPRESSED_ALPHA 0x84E9 +#define GL_COMPRESSED_LUMINANCE 0x84EA +#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB +#define GL_COMPRESSED_INTENSITY 0x84EC +#define GL_COMPRESSED_RGB 0x84ED +#define GL_COMPRESSED_RGBA 0x84EE +#define GL_TEXTURE_COMPRESSION_HINT 0x84EF +#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 +#define GL_TEXTURE_COMPRESSED 0x86A1 +#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 +#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 +/* multisample */ +#define GL_MULTISAMPLE 0x809D +#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E +#define GL_SAMPLE_ALPHA_TO_ONE 0x809F +#define GL_SAMPLE_COVERAGE 0x80A0 +#define GL_SAMPLE_BUFFERS 0x80A8 +#define GL_SAMPLES 0x80A9 +#define GL_SAMPLE_COVERAGE_VALUE 0x80AA +#define GL_SAMPLE_COVERAGE_INVERT 0x80AB +#define GL_MULTISAMPLE_BIT 0x20000000 +/* transpose_matrix */ +#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 +#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 +#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 +#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 +/* texture_env_combine */ +#define GL_COMBINE 0x8570 +#define GL_COMBINE_RGB 0x8571 +#define GL_COMBINE_ALPHA 0x8572 +#define GL_SOURCE0_RGB 0x8580 +#define GL_SOURCE1_RGB 0x8581 +#define GL_SOURCE2_RGB 0x8582 +#define GL_SOURCE0_ALPHA 0x8588 +#define GL_SOURCE1_ALPHA 0x8589 +#define GL_SOURCE2_ALPHA 0x858A +#define GL_OPERAND0_RGB 0x8590 +#define GL_OPERAND1_RGB 0x8591 +#define GL_OPERAND2_RGB 0x8592 +#define GL_OPERAND0_ALPHA 0x8598 +#define GL_OPERAND1_ALPHA 0x8599 +#define GL_OPERAND2_ALPHA 0x859A +#define GL_RGB_SCALE 0x8573 +#define GL_ADD_SIGNED 0x8574 +#define GL_INTERPOLATE 0x8575 +#define GL_SUBTRACT 0x84E7 +#define GL_CONSTANT 0x8576 +#define GL_PRIMARY_COLOR 0x8577 +#define GL_PREVIOUS 0x8578 +/* texture_env_dot3 */ +#define GL_DOT3_RGB 0x86AE +#define GL_DOT3_RGBA 0x86AF +/* texture_border_clamp */ +#define GL_CLAMP_TO_BORDER 0x812D + +GLAPI void GLAPIENTRY glActiveTexture( GLenum texture ); + +GLAPI void GLAPIENTRY glClientActiveTexture( GLenum texture ); + +GLAPI void GLAPIENTRY glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glGetCompressedTexImage( GLenum target, GLint lod, GLvoid *img ); + +GLAPI void GLAPIENTRY glMultiTexCoord1d( GLenum target, GLdouble s ); + +GLAPI void GLAPIENTRY glMultiTexCoord1dv( GLenum target, const GLdouble *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord1f( GLenum target, GLfloat s ); + +GLAPI void GLAPIENTRY glMultiTexCoord1fv( GLenum target, const GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord1i( GLenum target, GLint s ); + +GLAPI void GLAPIENTRY glMultiTexCoord1iv( GLenum target, const GLint *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord1s( GLenum target, GLshort s ); + +GLAPI void GLAPIENTRY glMultiTexCoord1sv( GLenum target, const GLshort *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t ); + +GLAPI void GLAPIENTRY glMultiTexCoord2dv( GLenum target, const GLdouble *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t ); + +GLAPI void GLAPIENTRY glMultiTexCoord2fv( GLenum target, const GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord2i( GLenum target, GLint s, GLint t ); + +GLAPI void GLAPIENTRY glMultiTexCoord2iv( GLenum target, const GLint *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord2s( GLenum target, GLshort s, GLshort t ); + +GLAPI void GLAPIENTRY glMultiTexCoord2sv( GLenum target, const GLshort *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r ); + +GLAPI void GLAPIENTRY glMultiTexCoord3dv( GLenum target, const GLdouble *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r ); + +GLAPI void GLAPIENTRY glMultiTexCoord3fv( GLenum target, const GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r ); + +GLAPI void GLAPIENTRY glMultiTexCoord3iv( GLenum target, const GLint *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r ); + +GLAPI void GLAPIENTRY glMultiTexCoord3sv( GLenum target, const GLshort *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); + +GLAPI void GLAPIENTRY glMultiTexCoord4dv( GLenum target, const GLdouble *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); + +GLAPI void GLAPIENTRY glMultiTexCoord4fv( GLenum target, const GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q ); + +GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); + +GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v ); + + +GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] ); + +GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] ); + +GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] ); + +GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] ); + +GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert ); + + +typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture); +typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img); + + + +/* + * GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1) + */ +#ifndef GL_ARB_multitexture +#define GL_ARB_multitexture 1 + +#define GL_TEXTURE0_ARB 0x84C0 +#define GL_TEXTURE1_ARB 0x84C1 +#define GL_TEXTURE2_ARB 0x84C2 +#define GL_TEXTURE3_ARB 0x84C3 +#define GL_TEXTURE4_ARB 0x84C4 +#define GL_TEXTURE5_ARB 0x84C5 +#define GL_TEXTURE6_ARB 0x84C6 +#define GL_TEXTURE7_ARB 0x84C7 +#define GL_TEXTURE8_ARB 0x84C8 +#define GL_TEXTURE9_ARB 0x84C9 +#define GL_TEXTURE10_ARB 0x84CA +#define GL_TEXTURE11_ARB 0x84CB +#define GL_TEXTURE12_ARB 0x84CC +#define GL_TEXTURE13_ARB 0x84CD +#define GL_TEXTURE14_ARB 0x84CE +#define GL_TEXTURE15_ARB 0x84CF +#define GL_TEXTURE16_ARB 0x84D0 +#define GL_TEXTURE17_ARB 0x84D1 +#define GL_TEXTURE18_ARB 0x84D2 +#define GL_TEXTURE19_ARB 0x84D3 +#define GL_TEXTURE20_ARB 0x84D4 +#define GL_TEXTURE21_ARB 0x84D5 +#define GL_TEXTURE22_ARB 0x84D6 +#define GL_TEXTURE23_ARB 0x84D7 +#define GL_TEXTURE24_ARB 0x84D8 +#define GL_TEXTURE25_ARB 0x84D9 +#define GL_TEXTURE26_ARB 0x84DA +#define GL_TEXTURE27_ARB 0x84DB +#define GL_TEXTURE28_ARB 0x84DC +#define GL_TEXTURE29_ARB 0x84DD +#define GL_TEXTURE30_ARB 0x84DE +#define GL_TEXTURE31_ARB 0x84DF +#define GL_ACTIVE_TEXTURE_ARB 0x84E0 +#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 +#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 + +GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture); +GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture); +GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble s); +GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum target, GLfloat s); +GLAPI void GLAPIENTRY glMultiTexCoord1fvARB(GLenum target, const GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s); +GLAPI void GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort s); +GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const GLshort *v); +GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t); +GLAPI void GLAPIENTRY glMultiTexCoord2dvARB(GLenum target, const GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t); +GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum target, GLint s, GLint t); +GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t); +GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v); +GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r); +GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r); +GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r); +GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r); +GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v); +GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); +GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); +GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q); +GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); +GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v); + +typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture); +typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); + +#endif /* GL_ARB_multitexture */ + + + +/* + * Define this token if you want "old-style" header file behaviour (extensions + * defined in gl.h). Otherwise, extensions will be included from glext.h. + */ +#if defined(GL_GLEXT_LEGACY) + +/* All extensions that used to be here are now found in glext.h */ + +#else /* GL_GLEXT_LEGACY */ + +#include + +#endif /* GL_GLEXT_LEGACY */ + + + +/* + * ???. GL_MESA_packed_depth_stencil + * XXX obsolete + */ +#ifndef GL_MESA_packed_depth_stencil +#define GL_MESA_packed_depth_stencil 1 + +#define GL_DEPTH_STENCIL_MESA 0x8750 +#define GL_UNSIGNED_INT_24_8_MESA 0x8751 +#define GL_UNSIGNED_INT_8_24_REV_MESA 0x8752 +#define GL_UNSIGNED_SHORT_15_1_MESA 0x8753 +#define GL_UNSIGNED_SHORT_1_15_REV_MESA 0x8754 + +#endif /* GL_MESA_packed_depth_stencil */ + + +#ifndef GL_ATI_blend_equation_separate +#define GL_ATI_blend_equation_separate 1 + +#define GL_ALPHA_BLEND_EQUATION_ATI 0x883D + +GLAPI void GLAPIENTRY glBlendEquationSeparateATI( GLenum modeRGB, GLenum modeA ); +typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEATIPROC) (GLenum modeRGB, GLenum modeA); + +#endif /* GL_ATI_blend_equation_separate */ + + +/* GL_OES_EGL_image */ +#if !defined(GL_OES_EGL_image) && !defined(GL_EXT_EGL_image_storage) +typedef void* GLeglImageOES; +#endif + +#ifndef GL_OES_EGL_image +#define GL_OES_EGL_image 1 +#ifdef GL_GLEXT_PROTOTYPES +GLAPI void APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); +GLAPI void APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); +#endif +typedef void (APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); +typedef void (APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); +#endif + + +#ifdef __cplusplus +} +#endif + +#endif /* __gl_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b0a501afb0fef32babe42d4a9a03f3c463206541 GIT binary patch literal 12143 zcmb7KJ*@0F6`m&=iY=%pwpvl3)w0>}F3Z(x5Q6;^(p$DbAOsS@ahw^y>%_USGc)&z zf^rLLBpM1z3WO*qDUo=zR1~x{Xe+8G?ZUAgJLAcTlWnG%WBdGk=R3#8d1Lq4Ps(>* z>>lm%gKStX@^_iK)3VDoQ#!9$m8+iS4dLxuboT`+NW0%8nw?~S$J>2Y@t#pF`-g8W zp0NA$%}4p5`kc2^3>C|N@b1%_ykvXc7F1U3t;6oKufF#2i%5p*htB@<-%p;z|CC&- z-2AKZqG(E`iDrd1n*>q8%iP+MKfVp8lIF}?-Gikd`hx%X@6mZyC-^D$1FukxK6sk% z#bEyW(m($Aw}r*v)uG2Nsu?l=sYp}rl7{F*^apOj@%+ulH+A>;HereNj|oc~JH;Pm z|1Tc^04LI|pQ&_JN-2!s%xQM3PAY!BDFkn#&7$LomJO%HiB}9lKD3(kK{y4>nhREx zy*w$m;OoCH7s5unfw#3Zy9O*JdfBIRhr!oia zgUu!zQ0?}0%M)5zhdb;mzCRLi1^meAPEPZN^%r6({n?S*K)>>rk7D&hc4#?J3)JA` z=*YUugxr_wb`p!^W7(vvRSzns6|3=-x%7qZ2dazrzxVXL=xDE7P~Q^WB}BZ$#b#8> zJI)F&i+X6O=CV~6?z`l%i$z6ILmphop%Fec&02sVv`XKp=cp}1%ONGvzb^E_dC^-7 z2eiaSI#8zn%kH7*fvp~K0yDN4+{uo%I$?8&4p3I*^4y{;iPVNr3yXh#?ZX(V2JfhM z!ZC0PC$Pd8<}8_KhI>4RV?xdYHfX1Kv6S3L}kb9?QUQJ>lHKrpL3j?(*Vpub(Gn^>x}u%Yb}FKE&seb+ z51pmbH(oo$k##v}NPy70b%jS2L|L!*1%OUdCNm1Grej`BnFl;=VhsQ>>VyPHEa7!S zjsjWZLuiehQV}O2pHxCp0-ZqI(4eQoi2?9I&*)63Q8iKVR*?X-ww2<~aTYPjX1k1; z!U2>+AvQ%KN&1jY5(554>!bx1%>>ynit9N%z-lR=Ph-I$5wj4<}?kV6Yws%#o0#5H^L6NOh0Qjbe5h)Y<;Ni*U=IJ8+?!Y>DW=x4C21JN8pF9I1#S9 zJFFc<#T6O|R1|DPl!)MF`{x2GLX_!VgeYizr@vBI671}%=d1r=F`+=vvOQ~APu zRuX0LJ&RxfiR@Urw>`oPBp0dMG8MCk*V_QQaLCR{$Bk{j_{}TvP0kjs$+pF&c#;bl zjXL|R$dS=Ce|t_b4cqP8TQ~)Rcyt8+1lb%_g|h3Cn2Owis6*o}W4G1!6BGbg;LwRY zXNVr&^C5!3L-W#zYU?WqnlXM~m)ow>?oYtTacS~m;dpa*gZ@J^doRR61lrK-zzDQ` z8C1IqpwIej)*g8;+Xl)wjyS6yTmv&`ztB{&0%P-KlMa;vl^|8nzw8E`KJ=ilMNvk2 zcN+?XH1k3!pvE;zQx4Og4N!|UJ12C8qU{bvwek)(f8t(-^~7FeqV)+R)LY;M7rk&~ z3fw~3TJYyDr)pcTuWv=EEvJiuxWRg-P@raUfhh%yk0L+#klE-ua)8^qxlfu_e%69T z;))4qewVj1V;$&RM0_IZc_2B`TaN~ki;glisupA)ZxxAnW&^!fMgwLuGdLUK-B86y zwOYa=uN4JU|Dqh~LX&CYkqRfs)~<5>{G;#2mCJ&g3aQN8=xS7mYKxX;?+iiy~a>3)g*^{qaE7LT3!(lQm2qB!10?#(6le^;x6W`Mwy(YcUW} zMNefbd3%Hl&F1>F+{s|(jTT-=R*+*lx4ahw;Xl$|vz^Em~2Vo$*4 z>w3J{ZTMn1mi$e39<^W1k+E*TOaU%+1+ZOKJ+uU-q7f2(5N4$&NTm`<5F@rcDKMjY zBe4=s8z3|?sC#YOg#Zc_X6-#~Qt-R9d~((%^A&G8xFx#k;0WcHZ~ipVPEF8SN>xc< zc0gs*$W%*UCg6`3C*ZU0+ZZ#$@|1RFU>ij#0)?51%xBG!U@?U)W>Y>Q$2Q6C-$%~H&tb}`jDUyBN`l#{4_f5^tN_+ ziwfR3@M^q~+w)T4XBCIHT@(L*y~ufyxQP3Ge3G|AvwSff+YqD3 z>~iE^sI$c6JsbjWk4xkhR8_214n6_dk+K&Rg;(n}1qjRxudf90kfV9+4-X1X(=}W{ z_t-Ww6g|@61_m^9f65g5@8oo|yF3APsh2R|@$Ld&BIbqa3U3 zs4AV~NF;AiaYs`dAF|+`%}yEZg>F;Roc>xSxcNY!?Zlq|9k1H~b_OI3ldx==G@Y=$ z&0VMpldA}1KFX6cJWs?p^dj~PI(9P4fAp1q|J8m%m+)h0zA%AuYUD%0_`QO){YiHA zxDa?Rvi1#}L%DJP0&uNKLYl7}A~1F^ImYUy))t-4l;_8b~c~&aWIb@YlCw0#3vUgDAPHBZ5xJ}x;9ppUt_XH z-2*RUW{R=BSEEfw>6uiULpw47WGu=Cs8*gmj_L1eyjz1)V23Rn;DeX&=uX?IKxX*VB(c^`6VpC=Kyqtr}xNz@PM_LnO4NN3udq#4+c@Ip!~pv zc`Hd$aVoE5QxMk&=Eicr{$Lzf_=o|;fI1O}`@b%%Sp0@`#IxBW3w@ly^X}2ByH9Vw J`1)?Q`#+E4(KY}8 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h new file mode 100644 index 00000000..234591bb --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h @@ -0,0 +1,26427 @@ +/* +** The OpenGL Extension Wrangler Library +** Copyright (C) 2008-2019, Nigel Stewart +** Copyright (C) 2002-2008, Milan Ikits +** Copyright (C) 2002-2008, Marcelo E. Magallon +** Copyright (C) 2002, Lev Povalahev +** All rights reserved. +** +** Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are met: +** +** * Redistributions of source code must retain the above copyright notice, +** this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright notice, +** this list of conditions and the following disclaimer in the documentation +** and/or other materials provided with the distribution. +** * The name of the author may be used to endorse or promote products +** derived from this software without specific prior written permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +** THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/* + * Mesa 3-D graphics library + * Version: 7.0 + * + * Copyright (C) 1999-2007 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +/* +** Copyright (c) 2007 The Khronos Group Inc. +** +** Permission is hereby granted, free of charge, to any person obtaining a +** copy of this software and/or associated documentation files (the +** "Materials"), to deal in the Materials without restriction, including +** without limitation the rights to use, copy, modify, merge, publish, +** distribute, sublicense, and/or sell copies of the Materials, and to +** permit persons to whom the Materials are furnished to do so, subject to +** the following conditions: +** +** The above copyright notice and this permission notice shall be included +** in all copies or substantial portions of the Materials. +** +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +*/ + +#ifndef __glew_h__ +#define __glew_h__ +#define __GLEW_H__ + +#if defined(__gl_h_) || defined(__GL_H__) || defined(_GL_H) || defined(__X_GL_H) +#error gl.h included before glew.h +#endif +#if defined(__gl2_h_) +#error gl2.h included before glew.h +#endif +#if defined(__gltypes_h_) +#error gltypes.h included before glew.h +#endif +#if defined(__REGAL_H__) +#error Regal.h included before glew.h +#endif +#if defined(__glext_h_) || defined(__GLEXT_H_) || defined(__gl_glext_h_) +#error glext.h included before glew.h +#endif +#if defined(__gl_ATI_h_) +#error glATI.h included before glew.h +#endif + +#define __gl_h_ +#define __gl2_h_ +#define __GL_H__ +#define _GL_H +#define __gltypes_h_ +#define __REGAL_H__ +#define __X_GL_H +#define __glext_h_ +#define __GLEXT_H_ +#define __gl_glext_h_ +#define __gl_ATI_h_ + +#if defined(_WIN32) + +/* + * GLEW does not include to avoid name space pollution. + * GL needs GLAPI and GLAPIENTRY, GLU needs APIENTRY, CALLBACK, and wchar_t + * defined properly. + */ +/* and */ +#ifdef APIENTRY +# ifndef GLAPIENTRY +# define GLAPIENTRY APIENTRY +# endif +# ifndef GLEWAPIENTRY +# define GLEWAPIENTRY APIENTRY +# endif +#else +#define GLEW_APIENTRY_DEFINED +# if defined(__MINGW32__) || defined(__CYGWIN__) || (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__) +# define APIENTRY __stdcall +# ifndef GLAPIENTRY +# define GLAPIENTRY __stdcall +# endif +# ifndef GLEWAPIENTRY +# define GLEWAPIENTRY __stdcall +# endif +# else +# define APIENTRY +# endif +#endif +#ifndef GLAPI +# if defined(__MINGW32__) || defined(__CYGWIN__) +# define GLAPI extern +# endif +#endif +/* */ +#ifndef CALLBACK +#define GLEW_CALLBACK_DEFINED +# if defined(__MINGW32__) || defined(__CYGWIN__) +# define CALLBACK __attribute__ ((__stdcall__)) +# elif (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS) +# define CALLBACK __stdcall +# else +# define CALLBACK +# endif +#endif +/* and */ +#ifndef WINGDIAPI +#define GLEW_WINGDIAPI_DEFINED +#define WINGDIAPI __declspec(dllimport) +#endif +/* */ +#if (defined(_MSC_VER) || defined(__BORLANDC__)) && !defined(_WCHAR_T_DEFINED) +typedef unsigned short wchar_t; +# define _WCHAR_T_DEFINED +#endif +/* */ +#if !defined(_W64) +# if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && defined(_MSC_VER) && _MSC_VER >= 1300 +# define _W64 __w64 +# else +# define _W64 +# endif +#endif +#if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_) && !defined(__MINGW64__) +# ifdef _WIN64 +typedef __int64 ptrdiff_t; +# else +typedef _W64 int ptrdiff_t; +# endif +# define _PTRDIFF_T_DEFINED +# define _PTRDIFF_T_ +#endif + +#ifndef GLAPI +# if defined(__MINGW32__) || defined(__CYGWIN__) +# define GLAPI extern +# else +# define GLAPI WINGDIAPI +# endif +#endif + +/* + * GLEW_STATIC is defined for static library. + * GLEW_BUILD is defined for building the DLL library. + */ + +#ifdef GLEW_STATIC +# define GLEWAPI extern +#else +# ifdef GLEW_BUILD +# define GLEWAPI extern __declspec(dllexport) +# else +# define GLEWAPI extern __declspec(dllimport) +# endif +#endif + +#else /* _UNIX */ + +/* + * Needed for ptrdiff_t in turn needed by VBO. This is defined by ISO + * C. On my system, this amounts to _3 lines_ of included code, all of + * them pretty much harmless. If you know of a way of detecting 32 vs + * 64 _targets_ at compile time you are free to replace this with + * something that's portable. For now, _this_ is the portable solution. + * (mem, 2004-01-04) + */ + +#if defined(__APPLE__) || defined(__linux__) +# if defined(__cplusplus) +# include +# include +# else +# include +# include +# endif +#else + +# include + +/* SGI MIPSPro doesn't like stdint.h in C++ mode */ +/* ID: 3376260 Solaris 9 has inttypes.h, but not stdint.h */ + +# if (defined(__sgi) || defined(__sun)) && !defined(__GNUC__) +# include +# else +# include +# endif +#endif + +#define GLEW_APIENTRY_DEFINED +#define APIENTRY + +/* + * GLEW_STATIC is defined for static library. + */ + +#ifdef GLEW_STATIC +# define GLEWAPI extern +#else +# if defined(__GNUC__) && __GNUC__>=4 +# define GLEWAPI extern __attribute__ ((visibility("default"))) +# elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) +# define GLEWAPI extern __global +# else +# define GLEWAPI extern +# endif +#endif + +/* */ +#ifndef GLAPI +#define GLAPI extern +#endif + +#endif /* _WIN32 */ + +#ifndef GLAPIENTRY +#define GLAPIENTRY +#endif + +#ifndef GLEWAPIENTRY +#define GLEWAPIENTRY +#endif + +#define GLEW_VAR_EXPORT GLEWAPI +#define GLEW_FUN_EXPORT GLEWAPI + +#ifdef __cplusplus +extern "C" { +#endif + +/* ----------------------------- GL_VERSION_1_1 ---------------------------- */ + +#ifndef GL_VERSION_1_1 +#define GL_VERSION_1_1 1 + +typedef unsigned int GLenum; +typedef unsigned int GLbitfield; +typedef unsigned int GLuint; +typedef int GLint; +typedef int GLsizei; +typedef unsigned char GLboolean; +typedef signed char GLbyte; +typedef short GLshort; +typedef unsigned char GLubyte; +typedef unsigned short GLushort; +typedef unsigned long GLulong; +typedef float GLfloat; +typedef float GLclampf; +typedef double GLdouble; +typedef double GLclampd; +typedef void GLvoid; +#if defined(_MSC_VER) && _MSC_VER < 1400 +typedef __int64 GLint64EXT; +typedef unsigned __int64 GLuint64EXT; +#elif defined(_MSC_VER) || defined(__BORLANDC__) +typedef signed long long GLint64EXT; +typedef unsigned long long GLuint64EXT; +#else +# if defined(__MINGW32__) || defined(__CYGWIN__) +#include +# endif +typedef int64_t GLint64EXT; +typedef uint64_t GLuint64EXT; +#endif +typedef GLint64EXT GLint64; +typedef GLuint64EXT GLuint64; +typedef struct __GLsync *GLsync; + +typedef char GLchar; + +typedef void *GLeglImageOES; /* GL_EXT_EGL_image_storage */ + +#define GL_ZERO 0 +#define GL_FALSE 0 +#define GL_LOGIC_OP 0x0BF1 +#define GL_NONE 0 +#define GL_TEXTURE_COMPONENTS 0x1003 +#define GL_NO_ERROR 0 +#define GL_POINTS 0x0000 +#define GL_CURRENT_BIT 0x00000001 +#define GL_TRUE 1 +#define GL_ONE 1 +#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 +#define GL_LINES 0x0001 +#define GL_LINE_LOOP 0x0002 +#define GL_POINT_BIT 0x00000002 +#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 +#define GL_LINE_STRIP 0x0003 +#define GL_LINE_BIT 0x00000004 +#define GL_TRIANGLES 0x0004 +#define GL_TRIANGLE_STRIP 0x0005 +#define GL_TRIANGLE_FAN 0x0006 +#define GL_QUADS 0x0007 +#define GL_QUAD_STRIP 0x0008 +#define GL_POLYGON_BIT 0x00000008 +#define GL_POLYGON 0x0009 +#define GL_POLYGON_STIPPLE_BIT 0x00000010 +#define GL_PIXEL_MODE_BIT 0x00000020 +#define GL_LIGHTING_BIT 0x00000040 +#define GL_FOG_BIT 0x00000080 +#define GL_DEPTH_BUFFER_BIT 0x00000100 +#define GL_ACCUM 0x0100 +#define GL_LOAD 0x0101 +#define GL_RETURN 0x0102 +#define GL_MULT 0x0103 +#define GL_ADD 0x0104 +#define GL_NEVER 0x0200 +#define GL_ACCUM_BUFFER_BIT 0x00000200 +#define GL_LESS 0x0201 +#define GL_EQUAL 0x0202 +#define GL_LEQUAL 0x0203 +#define GL_GREATER 0x0204 +#define GL_NOTEQUAL 0x0205 +#define GL_GEQUAL 0x0206 +#define GL_ALWAYS 0x0207 +#define GL_SRC_COLOR 0x0300 +#define GL_ONE_MINUS_SRC_COLOR 0x0301 +#define GL_SRC_ALPHA 0x0302 +#define GL_ONE_MINUS_SRC_ALPHA 0x0303 +#define GL_DST_ALPHA 0x0304 +#define GL_ONE_MINUS_DST_ALPHA 0x0305 +#define GL_DST_COLOR 0x0306 +#define GL_ONE_MINUS_DST_COLOR 0x0307 +#define GL_SRC_ALPHA_SATURATE 0x0308 +#define GL_STENCIL_BUFFER_BIT 0x00000400 +#define GL_FRONT_LEFT 0x0400 +#define GL_FRONT_RIGHT 0x0401 +#define GL_BACK_LEFT 0x0402 +#define GL_BACK_RIGHT 0x0403 +#define GL_FRONT 0x0404 +#define GL_BACK 0x0405 +#define GL_LEFT 0x0406 +#define GL_RIGHT 0x0407 +#define GL_FRONT_AND_BACK 0x0408 +#define GL_AUX0 0x0409 +#define GL_AUX1 0x040A +#define GL_AUX2 0x040B +#define GL_AUX3 0x040C +#define GL_INVALID_ENUM 0x0500 +#define GL_INVALID_VALUE 0x0501 +#define GL_INVALID_OPERATION 0x0502 +#define GL_STACK_OVERFLOW 0x0503 +#define GL_STACK_UNDERFLOW 0x0504 +#define GL_OUT_OF_MEMORY 0x0505 +#define GL_2D 0x0600 +#define GL_3D 0x0601 +#define GL_3D_COLOR 0x0602 +#define GL_3D_COLOR_TEXTURE 0x0603 +#define GL_4D_COLOR_TEXTURE 0x0604 +#define GL_PASS_THROUGH_TOKEN 0x0700 +#define GL_POINT_TOKEN 0x0701 +#define GL_LINE_TOKEN 0x0702 +#define GL_POLYGON_TOKEN 0x0703 +#define GL_BITMAP_TOKEN 0x0704 +#define GL_DRAW_PIXEL_TOKEN 0x0705 +#define GL_COPY_PIXEL_TOKEN 0x0706 +#define GL_LINE_RESET_TOKEN 0x0707 +#define GL_EXP 0x0800 +#define GL_VIEWPORT_BIT 0x00000800 +#define GL_EXP2 0x0801 +#define GL_CW 0x0900 +#define GL_CCW 0x0901 +#define GL_COEFF 0x0A00 +#define GL_ORDER 0x0A01 +#define GL_DOMAIN 0x0A02 +#define GL_CURRENT_COLOR 0x0B00 +#define GL_CURRENT_INDEX 0x0B01 +#define GL_CURRENT_NORMAL 0x0B02 +#define GL_CURRENT_TEXTURE_COORDS 0x0B03 +#define GL_CURRENT_RASTER_COLOR 0x0B04 +#define GL_CURRENT_RASTER_INDEX 0x0B05 +#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 +#define GL_CURRENT_RASTER_POSITION 0x0B07 +#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 +#define GL_CURRENT_RASTER_DISTANCE 0x0B09 +#define GL_POINT_SMOOTH 0x0B10 +#define GL_POINT_SIZE 0x0B11 +#define GL_POINT_SIZE_RANGE 0x0B12 +#define GL_POINT_SIZE_GRANULARITY 0x0B13 +#define GL_LINE_SMOOTH 0x0B20 +#define GL_LINE_WIDTH 0x0B21 +#define GL_LINE_WIDTH_RANGE 0x0B22 +#define GL_LINE_WIDTH_GRANULARITY 0x0B23 +#define GL_LINE_STIPPLE 0x0B24 +#define GL_LINE_STIPPLE_PATTERN 0x0B25 +#define GL_LINE_STIPPLE_REPEAT 0x0B26 +#define GL_LIST_MODE 0x0B30 +#define GL_MAX_LIST_NESTING 0x0B31 +#define GL_LIST_BASE 0x0B32 +#define GL_LIST_INDEX 0x0B33 +#define GL_POLYGON_MODE 0x0B40 +#define GL_POLYGON_SMOOTH 0x0B41 +#define GL_POLYGON_STIPPLE 0x0B42 +#define GL_EDGE_FLAG 0x0B43 +#define GL_CULL_FACE 0x0B44 +#define GL_CULL_FACE_MODE 0x0B45 +#define GL_FRONT_FACE 0x0B46 +#define GL_LIGHTING 0x0B50 +#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 +#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 +#define GL_LIGHT_MODEL_AMBIENT 0x0B53 +#define GL_SHADE_MODEL 0x0B54 +#define GL_COLOR_MATERIAL_FACE 0x0B55 +#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 +#define GL_COLOR_MATERIAL 0x0B57 +#define GL_FOG 0x0B60 +#define GL_FOG_INDEX 0x0B61 +#define GL_FOG_DENSITY 0x0B62 +#define GL_FOG_START 0x0B63 +#define GL_FOG_END 0x0B64 +#define GL_FOG_MODE 0x0B65 +#define GL_FOG_COLOR 0x0B66 +#define GL_DEPTH_RANGE 0x0B70 +#define GL_DEPTH_TEST 0x0B71 +#define GL_DEPTH_WRITEMASK 0x0B72 +#define GL_DEPTH_CLEAR_VALUE 0x0B73 +#define GL_DEPTH_FUNC 0x0B74 +#define GL_ACCUM_CLEAR_VALUE 0x0B80 +#define GL_STENCIL_TEST 0x0B90 +#define GL_STENCIL_CLEAR_VALUE 0x0B91 +#define GL_STENCIL_FUNC 0x0B92 +#define GL_STENCIL_VALUE_MASK 0x0B93 +#define GL_STENCIL_FAIL 0x0B94 +#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 +#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 +#define GL_STENCIL_REF 0x0B97 +#define GL_STENCIL_WRITEMASK 0x0B98 +#define GL_MATRIX_MODE 0x0BA0 +#define GL_NORMALIZE 0x0BA1 +#define GL_VIEWPORT 0x0BA2 +#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 +#define GL_PROJECTION_STACK_DEPTH 0x0BA4 +#define GL_TEXTURE_STACK_DEPTH 0x0BA5 +#define GL_MODELVIEW_MATRIX 0x0BA6 +#define GL_PROJECTION_MATRIX 0x0BA7 +#define GL_TEXTURE_MATRIX 0x0BA8 +#define GL_ATTRIB_STACK_DEPTH 0x0BB0 +#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 +#define GL_ALPHA_TEST 0x0BC0 +#define GL_ALPHA_TEST_FUNC 0x0BC1 +#define GL_ALPHA_TEST_REF 0x0BC2 +#define GL_DITHER 0x0BD0 +#define GL_BLEND_DST 0x0BE0 +#define GL_BLEND_SRC 0x0BE1 +#define GL_BLEND 0x0BE2 +#define GL_LOGIC_OP_MODE 0x0BF0 +#define GL_INDEX_LOGIC_OP 0x0BF1 +#define GL_COLOR_LOGIC_OP 0x0BF2 +#define GL_AUX_BUFFERS 0x0C00 +#define GL_DRAW_BUFFER 0x0C01 +#define GL_READ_BUFFER 0x0C02 +#define GL_SCISSOR_BOX 0x0C10 +#define GL_SCISSOR_TEST 0x0C11 +#define GL_INDEX_CLEAR_VALUE 0x0C20 +#define GL_INDEX_WRITEMASK 0x0C21 +#define GL_COLOR_CLEAR_VALUE 0x0C22 +#define GL_COLOR_WRITEMASK 0x0C23 +#define GL_INDEX_MODE 0x0C30 +#define GL_RGBA_MODE 0x0C31 +#define GL_DOUBLEBUFFER 0x0C32 +#define GL_STEREO 0x0C33 +#define GL_RENDER_MODE 0x0C40 +#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 +#define GL_POINT_SMOOTH_HINT 0x0C51 +#define GL_LINE_SMOOTH_HINT 0x0C52 +#define GL_POLYGON_SMOOTH_HINT 0x0C53 +#define GL_FOG_HINT 0x0C54 +#define GL_TEXTURE_GEN_S 0x0C60 +#define GL_TEXTURE_GEN_T 0x0C61 +#define GL_TEXTURE_GEN_R 0x0C62 +#define GL_TEXTURE_GEN_Q 0x0C63 +#define GL_PIXEL_MAP_I_TO_I 0x0C70 +#define GL_PIXEL_MAP_S_TO_S 0x0C71 +#define GL_PIXEL_MAP_I_TO_R 0x0C72 +#define GL_PIXEL_MAP_I_TO_G 0x0C73 +#define GL_PIXEL_MAP_I_TO_B 0x0C74 +#define GL_PIXEL_MAP_I_TO_A 0x0C75 +#define GL_PIXEL_MAP_R_TO_R 0x0C76 +#define GL_PIXEL_MAP_G_TO_G 0x0C77 +#define GL_PIXEL_MAP_B_TO_B 0x0C78 +#define GL_PIXEL_MAP_A_TO_A 0x0C79 +#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 +#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 +#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 +#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 +#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 +#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 +#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 +#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 +#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 +#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 +#define GL_UNPACK_SWAP_BYTES 0x0CF0 +#define GL_UNPACK_LSB_FIRST 0x0CF1 +#define GL_UNPACK_ROW_LENGTH 0x0CF2 +#define GL_UNPACK_SKIP_ROWS 0x0CF3 +#define GL_UNPACK_SKIP_PIXELS 0x0CF4 +#define GL_UNPACK_ALIGNMENT 0x0CF5 +#define GL_PACK_SWAP_BYTES 0x0D00 +#define GL_PACK_LSB_FIRST 0x0D01 +#define GL_PACK_ROW_LENGTH 0x0D02 +#define GL_PACK_SKIP_ROWS 0x0D03 +#define GL_PACK_SKIP_PIXELS 0x0D04 +#define GL_PACK_ALIGNMENT 0x0D05 +#define GL_MAP_COLOR 0x0D10 +#define GL_MAP_STENCIL 0x0D11 +#define GL_INDEX_SHIFT 0x0D12 +#define GL_INDEX_OFFSET 0x0D13 +#define GL_RED_SCALE 0x0D14 +#define GL_RED_BIAS 0x0D15 +#define GL_ZOOM_X 0x0D16 +#define GL_ZOOM_Y 0x0D17 +#define GL_GREEN_SCALE 0x0D18 +#define GL_GREEN_BIAS 0x0D19 +#define GL_BLUE_SCALE 0x0D1A +#define GL_BLUE_BIAS 0x0D1B +#define GL_ALPHA_SCALE 0x0D1C +#define GL_ALPHA_BIAS 0x0D1D +#define GL_DEPTH_SCALE 0x0D1E +#define GL_DEPTH_BIAS 0x0D1F +#define GL_MAX_EVAL_ORDER 0x0D30 +#define GL_MAX_LIGHTS 0x0D31 +#define GL_MAX_CLIP_PLANES 0x0D32 +#define GL_MAX_TEXTURE_SIZE 0x0D33 +#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 +#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 +#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 +#define GL_MAX_NAME_STACK_DEPTH 0x0D37 +#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 +#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 +#define GL_MAX_VIEWPORT_DIMS 0x0D3A +#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B +#define GL_SUBPIXEL_BITS 0x0D50 +#define GL_INDEX_BITS 0x0D51 +#define GL_RED_BITS 0x0D52 +#define GL_GREEN_BITS 0x0D53 +#define GL_BLUE_BITS 0x0D54 +#define GL_ALPHA_BITS 0x0D55 +#define GL_DEPTH_BITS 0x0D56 +#define GL_STENCIL_BITS 0x0D57 +#define GL_ACCUM_RED_BITS 0x0D58 +#define GL_ACCUM_GREEN_BITS 0x0D59 +#define GL_ACCUM_BLUE_BITS 0x0D5A +#define GL_ACCUM_ALPHA_BITS 0x0D5B +#define GL_NAME_STACK_DEPTH 0x0D70 +#define GL_AUTO_NORMAL 0x0D80 +#define GL_MAP1_COLOR_4 0x0D90 +#define GL_MAP1_INDEX 0x0D91 +#define GL_MAP1_NORMAL 0x0D92 +#define GL_MAP1_TEXTURE_COORD_1 0x0D93 +#define GL_MAP1_TEXTURE_COORD_2 0x0D94 +#define GL_MAP1_TEXTURE_COORD_3 0x0D95 +#define GL_MAP1_TEXTURE_COORD_4 0x0D96 +#define GL_MAP1_VERTEX_3 0x0D97 +#define GL_MAP1_VERTEX_4 0x0D98 +#define GL_MAP2_COLOR_4 0x0DB0 +#define GL_MAP2_INDEX 0x0DB1 +#define GL_MAP2_NORMAL 0x0DB2 +#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 +#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 +#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 +#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 +#define GL_MAP2_VERTEX_3 0x0DB7 +#define GL_MAP2_VERTEX_4 0x0DB8 +#define GL_MAP1_GRID_DOMAIN 0x0DD0 +#define GL_MAP1_GRID_SEGMENTS 0x0DD1 +#define GL_MAP2_GRID_DOMAIN 0x0DD2 +#define GL_MAP2_GRID_SEGMENTS 0x0DD3 +#define GL_TEXTURE_1D 0x0DE0 +#define GL_TEXTURE_2D 0x0DE1 +#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 +#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 +#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 +#define GL_SELECTION_BUFFER_POINTER 0x0DF3 +#define GL_SELECTION_BUFFER_SIZE 0x0DF4 +#define GL_TEXTURE_WIDTH 0x1000 +#define GL_TRANSFORM_BIT 0x00001000 +#define GL_TEXTURE_HEIGHT 0x1001 +#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 +#define GL_TEXTURE_BORDER_COLOR 0x1004 +#define GL_TEXTURE_BORDER 0x1005 +#define GL_DONT_CARE 0x1100 +#define GL_FASTEST 0x1101 +#define GL_NICEST 0x1102 +#define GL_AMBIENT 0x1200 +#define GL_DIFFUSE 0x1201 +#define GL_SPECULAR 0x1202 +#define GL_POSITION 0x1203 +#define GL_SPOT_DIRECTION 0x1204 +#define GL_SPOT_EXPONENT 0x1205 +#define GL_SPOT_CUTOFF 0x1206 +#define GL_CONSTANT_ATTENUATION 0x1207 +#define GL_LINEAR_ATTENUATION 0x1208 +#define GL_QUADRATIC_ATTENUATION 0x1209 +#define GL_COMPILE 0x1300 +#define GL_COMPILE_AND_EXECUTE 0x1301 +#define GL_BYTE 0x1400 +#define GL_UNSIGNED_BYTE 0x1401 +#define GL_SHORT 0x1402 +#define GL_UNSIGNED_SHORT 0x1403 +#define GL_INT 0x1404 +#define GL_UNSIGNED_INT 0x1405 +#define GL_FLOAT 0x1406 +#define GL_2_BYTES 0x1407 +#define GL_3_BYTES 0x1408 +#define GL_4_BYTES 0x1409 +#define GL_DOUBLE 0x140A +#define GL_CLEAR 0x1500 +#define GL_AND 0x1501 +#define GL_AND_REVERSE 0x1502 +#define GL_COPY 0x1503 +#define GL_AND_INVERTED 0x1504 +#define GL_NOOP 0x1505 +#define GL_XOR 0x1506 +#define GL_OR 0x1507 +#define GL_NOR 0x1508 +#define GL_EQUIV 0x1509 +#define GL_INVERT 0x150A +#define GL_OR_REVERSE 0x150B +#define GL_COPY_INVERTED 0x150C +#define GL_OR_INVERTED 0x150D +#define GL_NAND 0x150E +#define GL_SET 0x150F +#define GL_EMISSION 0x1600 +#define GL_SHININESS 0x1601 +#define GL_AMBIENT_AND_DIFFUSE 0x1602 +#define GL_COLOR_INDEXES 0x1603 +#define GL_MODELVIEW 0x1700 +#define GL_PROJECTION 0x1701 +#define GL_TEXTURE 0x1702 +#define GL_COLOR 0x1800 +#define GL_DEPTH 0x1801 +#define GL_STENCIL 0x1802 +#define GL_COLOR_INDEX 0x1900 +#define GL_STENCIL_INDEX 0x1901 +#define GL_DEPTH_COMPONENT 0x1902 +#define GL_RED 0x1903 +#define GL_GREEN 0x1904 +#define GL_BLUE 0x1905 +#define GL_ALPHA 0x1906 +#define GL_RGB 0x1907 +#define GL_RGBA 0x1908 +#define GL_LUMINANCE 0x1909 +#define GL_LUMINANCE_ALPHA 0x190A +#define GL_BITMAP 0x1A00 +#define GL_POINT 0x1B00 +#define GL_LINE 0x1B01 +#define GL_FILL 0x1B02 +#define GL_RENDER 0x1C00 +#define GL_FEEDBACK 0x1C01 +#define GL_SELECT 0x1C02 +#define GL_FLAT 0x1D00 +#define GL_SMOOTH 0x1D01 +#define GL_KEEP 0x1E00 +#define GL_REPLACE 0x1E01 +#define GL_INCR 0x1E02 +#define GL_DECR 0x1E03 +#define GL_VENDOR 0x1F00 +#define GL_RENDERER 0x1F01 +#define GL_VERSION 0x1F02 +#define GL_EXTENSIONS 0x1F03 +#define GL_S 0x2000 +#define GL_ENABLE_BIT 0x00002000 +#define GL_T 0x2001 +#define GL_R 0x2002 +#define GL_Q 0x2003 +#define GL_MODULATE 0x2100 +#define GL_DECAL 0x2101 +#define GL_TEXTURE_ENV_MODE 0x2200 +#define GL_TEXTURE_ENV_COLOR 0x2201 +#define GL_TEXTURE_ENV 0x2300 +#define GL_EYE_LINEAR 0x2400 +#define GL_OBJECT_LINEAR 0x2401 +#define GL_SPHERE_MAP 0x2402 +#define GL_TEXTURE_GEN_MODE 0x2500 +#define GL_OBJECT_PLANE 0x2501 +#define GL_EYE_PLANE 0x2502 +#define GL_NEAREST 0x2600 +#define GL_LINEAR 0x2601 +#define GL_NEAREST_MIPMAP_NEAREST 0x2700 +#define GL_LINEAR_MIPMAP_NEAREST 0x2701 +#define GL_NEAREST_MIPMAP_LINEAR 0x2702 +#define GL_LINEAR_MIPMAP_LINEAR 0x2703 +#define GL_TEXTURE_MAG_FILTER 0x2800 +#define GL_TEXTURE_MIN_FILTER 0x2801 +#define GL_TEXTURE_WRAP_S 0x2802 +#define GL_TEXTURE_WRAP_T 0x2803 +#define GL_CLAMP 0x2900 +#define GL_REPEAT 0x2901 +#define GL_POLYGON_OFFSET_UNITS 0x2A00 +#define GL_POLYGON_OFFSET_POINT 0x2A01 +#define GL_POLYGON_OFFSET_LINE 0x2A02 +#define GL_R3_G3_B2 0x2A10 +#define GL_V2F 0x2A20 +#define GL_V3F 0x2A21 +#define GL_C4UB_V2F 0x2A22 +#define GL_C4UB_V3F 0x2A23 +#define GL_C3F_V3F 0x2A24 +#define GL_N3F_V3F 0x2A25 +#define GL_C4F_N3F_V3F 0x2A26 +#define GL_T2F_V3F 0x2A27 +#define GL_T4F_V4F 0x2A28 +#define GL_T2F_C4UB_V3F 0x2A29 +#define GL_T2F_C3F_V3F 0x2A2A +#define GL_T2F_N3F_V3F 0x2A2B +#define GL_T2F_C4F_N3F_V3F 0x2A2C +#define GL_T4F_C4F_N3F_V4F 0x2A2D +#define GL_CLIP_PLANE0 0x3000 +#define GL_CLIP_PLANE1 0x3001 +#define GL_CLIP_PLANE2 0x3002 +#define GL_CLIP_PLANE3 0x3003 +#define GL_CLIP_PLANE4 0x3004 +#define GL_CLIP_PLANE5 0x3005 +#define GL_LIGHT0 0x4000 +#define GL_COLOR_BUFFER_BIT 0x00004000 +#define GL_LIGHT1 0x4001 +#define GL_LIGHT2 0x4002 +#define GL_LIGHT3 0x4003 +#define GL_LIGHT4 0x4004 +#define GL_LIGHT5 0x4005 +#define GL_LIGHT6 0x4006 +#define GL_LIGHT7 0x4007 +#define GL_HINT_BIT 0x00008000 +#define GL_POLYGON_OFFSET_FILL 0x8037 +#define GL_POLYGON_OFFSET_FACTOR 0x8038 +#define GL_ALPHA4 0x803B +#define GL_ALPHA8 0x803C +#define GL_ALPHA12 0x803D +#define GL_ALPHA16 0x803E +#define GL_LUMINANCE4 0x803F +#define GL_LUMINANCE8 0x8040 +#define GL_LUMINANCE12 0x8041 +#define GL_LUMINANCE16 0x8042 +#define GL_LUMINANCE4_ALPHA4 0x8043 +#define GL_LUMINANCE6_ALPHA2 0x8044 +#define GL_LUMINANCE8_ALPHA8 0x8045 +#define GL_LUMINANCE12_ALPHA4 0x8046 +#define GL_LUMINANCE12_ALPHA12 0x8047 +#define GL_LUMINANCE16_ALPHA16 0x8048 +#define GL_INTENSITY 0x8049 +#define GL_INTENSITY4 0x804A +#define GL_INTENSITY8 0x804B +#define GL_INTENSITY12 0x804C +#define GL_INTENSITY16 0x804D +#define GL_RGB4 0x804F +#define GL_RGB5 0x8050 +#define GL_RGB8 0x8051 +#define GL_RGB10 0x8052 +#define GL_RGB12 0x8053 +#define GL_RGB16 0x8054 +#define GL_RGBA2 0x8055 +#define GL_RGBA4 0x8056 +#define GL_RGB5_A1 0x8057 +#define GL_RGBA8 0x8058 +#define GL_RGB10_A2 0x8059 +#define GL_RGBA12 0x805A +#define GL_RGBA16 0x805B +#define GL_TEXTURE_RED_SIZE 0x805C +#define GL_TEXTURE_GREEN_SIZE 0x805D +#define GL_TEXTURE_BLUE_SIZE 0x805E +#define GL_TEXTURE_ALPHA_SIZE 0x805F +#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 +#define GL_TEXTURE_INTENSITY_SIZE 0x8061 +#define GL_PROXY_TEXTURE_1D 0x8063 +#define GL_PROXY_TEXTURE_2D 0x8064 +#define GL_TEXTURE_PRIORITY 0x8066 +#define GL_TEXTURE_RESIDENT 0x8067 +#define GL_TEXTURE_BINDING_1D 0x8068 +#define GL_TEXTURE_BINDING_2D 0x8069 +#define GL_VERTEX_ARRAY 0x8074 +#define GL_NORMAL_ARRAY 0x8075 +#define GL_COLOR_ARRAY 0x8076 +#define GL_INDEX_ARRAY 0x8077 +#define GL_TEXTURE_COORD_ARRAY 0x8078 +#define GL_EDGE_FLAG_ARRAY 0x8079 +#define GL_VERTEX_ARRAY_SIZE 0x807A +#define GL_VERTEX_ARRAY_TYPE 0x807B +#define GL_VERTEX_ARRAY_STRIDE 0x807C +#define GL_NORMAL_ARRAY_TYPE 0x807E +#define GL_NORMAL_ARRAY_STRIDE 0x807F +#define GL_COLOR_ARRAY_SIZE 0x8081 +#define GL_COLOR_ARRAY_TYPE 0x8082 +#define GL_COLOR_ARRAY_STRIDE 0x8083 +#define GL_INDEX_ARRAY_TYPE 0x8085 +#define GL_INDEX_ARRAY_STRIDE 0x8086 +#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 +#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 +#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A +#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C +#define GL_VERTEX_ARRAY_POINTER 0x808E +#define GL_NORMAL_ARRAY_POINTER 0x808F +#define GL_COLOR_ARRAY_POINTER 0x8090 +#define GL_INDEX_ARRAY_POINTER 0x8091 +#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 +#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 +#define GL_COLOR_INDEX1_EXT 0x80E2 +#define GL_COLOR_INDEX2_EXT 0x80E3 +#define GL_COLOR_INDEX4_EXT 0x80E4 +#define GL_COLOR_INDEX8_EXT 0x80E5 +#define GL_COLOR_INDEX12_EXT 0x80E6 +#define GL_COLOR_INDEX16_EXT 0x80E7 +#define GL_EVAL_BIT 0x00010000 +#define GL_LIST_BIT 0x00020000 +#define GL_TEXTURE_BIT 0x00040000 +#define GL_SCISSOR_BIT 0x00080000 +#define GL_ALL_ATTRIB_BITS 0x000fffff +#define GL_CLIENT_ALL_ATTRIB_BITS 0xffffffff + +GLAPI void GLAPIENTRY glAccum (GLenum op, GLfloat value); +GLAPI void GLAPIENTRY glAlphaFunc (GLenum func, GLclampf ref); +GLAPI GLboolean GLAPIENTRY glAreTexturesResident (GLsizei n, const GLuint *textures, GLboolean *residences); +GLAPI void GLAPIENTRY glArrayElement (GLint i); +GLAPI void GLAPIENTRY glBegin (GLenum mode); +GLAPI void GLAPIENTRY glBindTexture (GLenum target, GLuint texture); +GLAPI void GLAPIENTRY glBitmap (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap); +GLAPI void GLAPIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor); +GLAPI void GLAPIENTRY glCallList (GLuint list); +GLAPI void GLAPIENTRY glCallLists (GLsizei n, GLenum type, const void *lists); +GLAPI void GLAPIENTRY glClear (GLbitfield mask); +GLAPI void GLAPIENTRY glClearAccum (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); +GLAPI void GLAPIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); +GLAPI void GLAPIENTRY glClearDepth (GLclampd depth); +GLAPI void GLAPIENTRY glClearIndex (GLfloat c); +GLAPI void GLAPIENTRY glClearStencil (GLint s); +GLAPI void GLAPIENTRY glClipPlane (GLenum plane, const GLdouble *equation); +GLAPI void GLAPIENTRY glColor3b (GLbyte red, GLbyte green, GLbyte blue); +GLAPI void GLAPIENTRY glColor3bv (const GLbyte *v); +GLAPI void GLAPIENTRY glColor3d (GLdouble red, GLdouble green, GLdouble blue); +GLAPI void GLAPIENTRY glColor3dv (const GLdouble *v); +GLAPI void GLAPIENTRY glColor3f (GLfloat red, GLfloat green, GLfloat blue); +GLAPI void GLAPIENTRY glColor3fv (const GLfloat *v); +GLAPI void GLAPIENTRY glColor3i (GLint red, GLint green, GLint blue); +GLAPI void GLAPIENTRY glColor3iv (const GLint *v); +GLAPI void GLAPIENTRY glColor3s (GLshort red, GLshort green, GLshort blue); +GLAPI void GLAPIENTRY glColor3sv (const GLshort *v); +GLAPI void GLAPIENTRY glColor3ub (GLubyte red, GLubyte green, GLubyte blue); +GLAPI void GLAPIENTRY glColor3ubv (const GLubyte *v); +GLAPI void GLAPIENTRY glColor3ui (GLuint red, GLuint green, GLuint blue); +GLAPI void GLAPIENTRY glColor3uiv (const GLuint *v); +GLAPI void GLAPIENTRY glColor3us (GLushort red, GLushort green, GLushort blue); +GLAPI void GLAPIENTRY glColor3usv (const GLushort *v); +GLAPI void GLAPIENTRY glColor4b (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); +GLAPI void GLAPIENTRY glColor4bv (const GLbyte *v); +GLAPI void GLAPIENTRY glColor4d (GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); +GLAPI void GLAPIENTRY glColor4dv (const GLdouble *v); +GLAPI void GLAPIENTRY glColor4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); +GLAPI void GLAPIENTRY glColor4fv (const GLfloat *v); +GLAPI void GLAPIENTRY glColor4i (GLint red, GLint green, GLint blue, GLint alpha); +GLAPI void GLAPIENTRY glColor4iv (const GLint *v); +GLAPI void GLAPIENTRY glColor4s (GLshort red, GLshort green, GLshort blue, GLshort alpha); +GLAPI void GLAPIENTRY glColor4sv (const GLshort *v); +GLAPI void GLAPIENTRY glColor4ub (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); +GLAPI void GLAPIENTRY glColor4ubv (const GLubyte *v); +GLAPI void GLAPIENTRY glColor4ui (GLuint red, GLuint green, GLuint blue, GLuint alpha); +GLAPI void GLAPIENTRY glColor4uiv (const GLuint *v); +GLAPI void GLAPIENTRY glColor4us (GLushort red, GLushort green, GLushort blue, GLushort alpha); +GLAPI void GLAPIENTRY glColor4usv (const GLushort *v); +GLAPI void GLAPIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); +GLAPI void GLAPIENTRY glColorMaterial (GLenum face, GLenum mode); +GLAPI void GLAPIENTRY glColorPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); +GLAPI void GLAPIENTRY glCopyPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); +GLAPI void GLAPIENTRY glCopyTexImage1D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border); +GLAPI void GLAPIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); +GLAPI void GLAPIENTRY glCopyTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); +GLAPI void GLAPIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); +GLAPI void GLAPIENTRY glCullFace (GLenum mode); +GLAPI void GLAPIENTRY glDeleteLists (GLuint list, GLsizei range); +GLAPI void GLAPIENTRY glDeleteTextures (GLsizei n, const GLuint *textures); +GLAPI void GLAPIENTRY glDepthFunc (GLenum func); +GLAPI void GLAPIENTRY glDepthMask (GLboolean flag); +GLAPI void GLAPIENTRY glDepthRange (GLclampd zNear, GLclampd zFar); +GLAPI void GLAPIENTRY glDisable (GLenum cap); +GLAPI void GLAPIENTRY glDisableClientState (GLenum array); +GLAPI void GLAPIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count); +GLAPI void GLAPIENTRY glDrawBuffer (GLenum mode); +GLAPI void GLAPIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const void *indices); +GLAPI void GLAPIENTRY glDrawPixels (GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); +GLAPI void GLAPIENTRY glEdgeFlag (GLboolean flag); +GLAPI void GLAPIENTRY glEdgeFlagPointer (GLsizei stride, const void *pointer); +GLAPI void GLAPIENTRY glEdgeFlagv (const GLboolean *flag); +GLAPI void GLAPIENTRY glEnable (GLenum cap); +GLAPI void GLAPIENTRY glEnableClientState (GLenum array); +GLAPI void GLAPIENTRY glEnd (void); +GLAPI void GLAPIENTRY glEndList (void); +GLAPI void GLAPIENTRY glEvalCoord1d (GLdouble u); +GLAPI void GLAPIENTRY glEvalCoord1dv (const GLdouble *u); +GLAPI void GLAPIENTRY glEvalCoord1f (GLfloat u); +GLAPI void GLAPIENTRY glEvalCoord1fv (const GLfloat *u); +GLAPI void GLAPIENTRY glEvalCoord2d (GLdouble u, GLdouble v); +GLAPI void GLAPIENTRY glEvalCoord2dv (const GLdouble *u); +GLAPI void GLAPIENTRY glEvalCoord2f (GLfloat u, GLfloat v); +GLAPI void GLAPIENTRY glEvalCoord2fv (const GLfloat *u); +GLAPI void GLAPIENTRY glEvalMesh1 (GLenum mode, GLint i1, GLint i2); +GLAPI void GLAPIENTRY glEvalMesh2 (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); +GLAPI void GLAPIENTRY glEvalPoint1 (GLint i); +GLAPI void GLAPIENTRY glEvalPoint2 (GLint i, GLint j); +GLAPI void GLAPIENTRY glFeedbackBuffer (GLsizei size, GLenum type, GLfloat *buffer); +GLAPI void GLAPIENTRY glFinish (void); +GLAPI void GLAPIENTRY glFlush (void); +GLAPI void GLAPIENTRY glFogf (GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glFogfv (GLenum pname, const GLfloat *params); +GLAPI void GLAPIENTRY glFogi (GLenum pname, GLint param); +GLAPI void GLAPIENTRY glFogiv (GLenum pname, const GLint *params); +GLAPI void GLAPIENTRY glFrontFace (GLenum mode); +GLAPI void GLAPIENTRY glFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); +GLAPI GLuint GLAPIENTRY glGenLists (GLsizei range); +GLAPI void GLAPIENTRY glGenTextures (GLsizei n, GLuint *textures); +GLAPI void GLAPIENTRY glGetBooleanv (GLenum pname, GLboolean *params); +GLAPI void GLAPIENTRY glGetClipPlane (GLenum plane, GLdouble *equation); +GLAPI void GLAPIENTRY glGetDoublev (GLenum pname, GLdouble *params); +GLAPI GLenum GLAPIENTRY glGetError (void); +GLAPI void GLAPIENTRY glGetFloatv (GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetIntegerv (GLenum pname, GLint *params); +GLAPI void GLAPIENTRY glGetLightfv (GLenum light, GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetLightiv (GLenum light, GLenum pname, GLint *params); +GLAPI void GLAPIENTRY glGetMapdv (GLenum target, GLenum query, GLdouble *v); +GLAPI void GLAPIENTRY glGetMapfv (GLenum target, GLenum query, GLfloat *v); +GLAPI void GLAPIENTRY glGetMapiv (GLenum target, GLenum query, GLint *v); +GLAPI void GLAPIENTRY glGetMaterialfv (GLenum face, GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetMaterialiv (GLenum face, GLenum pname, GLint *params); +GLAPI void GLAPIENTRY glGetPixelMapfv (GLenum map, GLfloat *values); +GLAPI void GLAPIENTRY glGetPixelMapuiv (GLenum map, GLuint *values); +GLAPI void GLAPIENTRY glGetPixelMapusv (GLenum map, GLushort *values); +GLAPI void GLAPIENTRY glGetPointerv (GLenum pname, void* *params); +GLAPI void GLAPIENTRY glGetPolygonStipple (GLubyte *mask); +GLAPI const GLubyte * GLAPIENTRY glGetString (GLenum name); +GLAPI void GLAPIENTRY glGetTexEnvfv (GLenum target, GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetTexEnviv (GLenum target, GLenum pname, GLint *params); +GLAPI void GLAPIENTRY glGetTexGendv (GLenum coord, GLenum pname, GLdouble *params); +GLAPI void GLAPIENTRY glGetTexGenfv (GLenum coord, GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetTexGeniv (GLenum coord, GLenum pname, GLint *params); +GLAPI void GLAPIENTRY glGetTexImage (GLenum target, GLint level, GLenum format, GLenum type, void *pixels); +GLAPI void GLAPIENTRY glGetTexLevelParameterfv (GLenum target, GLint level, GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetTexLevelParameteriv (GLenum target, GLint level, GLenum pname, GLint *params); +GLAPI void GLAPIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params); +GLAPI void GLAPIENTRY glHint (GLenum target, GLenum mode); +GLAPI void GLAPIENTRY glIndexMask (GLuint mask); +GLAPI void GLAPIENTRY glIndexPointer (GLenum type, GLsizei stride, const void *pointer); +GLAPI void GLAPIENTRY glIndexd (GLdouble c); +GLAPI void GLAPIENTRY glIndexdv (const GLdouble *c); +GLAPI void GLAPIENTRY glIndexf (GLfloat c); +GLAPI void GLAPIENTRY glIndexfv (const GLfloat *c); +GLAPI void GLAPIENTRY glIndexi (GLint c); +GLAPI void GLAPIENTRY glIndexiv (const GLint *c); +GLAPI void GLAPIENTRY glIndexs (GLshort c); +GLAPI void GLAPIENTRY glIndexsv (const GLshort *c); +GLAPI void GLAPIENTRY glIndexub (GLubyte c); +GLAPI void GLAPIENTRY glIndexubv (const GLubyte *c); +GLAPI void GLAPIENTRY glInitNames (void); +GLAPI void GLAPIENTRY glInterleavedArrays (GLenum format, GLsizei stride, const void *pointer); +GLAPI GLboolean GLAPIENTRY glIsEnabled (GLenum cap); +GLAPI GLboolean GLAPIENTRY glIsList (GLuint list); +GLAPI GLboolean GLAPIENTRY glIsTexture (GLuint texture); +GLAPI void GLAPIENTRY glLightModelf (GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glLightModelfv (GLenum pname, const GLfloat *params); +GLAPI void GLAPIENTRY glLightModeli (GLenum pname, GLint param); +GLAPI void GLAPIENTRY glLightModeliv (GLenum pname, const GLint *params); +GLAPI void GLAPIENTRY glLightf (GLenum light, GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glLightfv (GLenum light, GLenum pname, const GLfloat *params); +GLAPI void GLAPIENTRY glLighti (GLenum light, GLenum pname, GLint param); +GLAPI void GLAPIENTRY glLightiv (GLenum light, GLenum pname, const GLint *params); +GLAPI void GLAPIENTRY glLineStipple (GLint factor, GLushort pattern); +GLAPI void GLAPIENTRY glLineWidth (GLfloat width); +GLAPI void GLAPIENTRY glListBase (GLuint base); +GLAPI void GLAPIENTRY glLoadIdentity (void); +GLAPI void GLAPIENTRY glLoadMatrixd (const GLdouble *m); +GLAPI void GLAPIENTRY glLoadMatrixf (const GLfloat *m); +GLAPI void GLAPIENTRY glLoadName (GLuint name); +GLAPI void GLAPIENTRY glLogicOp (GLenum opcode); +GLAPI void GLAPIENTRY glMap1d (GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points); +GLAPI void GLAPIENTRY glMap1f (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points); +GLAPI void GLAPIENTRY glMap2d (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points); +GLAPI void GLAPIENTRY glMap2f (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points); +GLAPI void GLAPIENTRY glMapGrid1d (GLint un, GLdouble u1, GLdouble u2); +GLAPI void GLAPIENTRY glMapGrid1f (GLint un, GLfloat u1, GLfloat u2); +GLAPI void GLAPIENTRY glMapGrid2d (GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2); +GLAPI void GLAPIENTRY glMapGrid2f (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); +GLAPI void GLAPIENTRY glMaterialf (GLenum face, GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glMaterialfv (GLenum face, GLenum pname, const GLfloat *params); +GLAPI void GLAPIENTRY glMateriali (GLenum face, GLenum pname, GLint param); +GLAPI void GLAPIENTRY glMaterialiv (GLenum face, GLenum pname, const GLint *params); +GLAPI void GLAPIENTRY glMatrixMode (GLenum mode); +GLAPI void GLAPIENTRY glMultMatrixd (const GLdouble *m); +GLAPI void GLAPIENTRY glMultMatrixf (const GLfloat *m); +GLAPI void GLAPIENTRY glNewList (GLuint list, GLenum mode); +GLAPI void GLAPIENTRY glNormal3b (GLbyte nx, GLbyte ny, GLbyte nz); +GLAPI void GLAPIENTRY glNormal3bv (const GLbyte *v); +GLAPI void GLAPIENTRY glNormal3d (GLdouble nx, GLdouble ny, GLdouble nz); +GLAPI void GLAPIENTRY glNormal3dv (const GLdouble *v); +GLAPI void GLAPIENTRY glNormal3f (GLfloat nx, GLfloat ny, GLfloat nz); +GLAPI void GLAPIENTRY glNormal3fv (const GLfloat *v); +GLAPI void GLAPIENTRY glNormal3i (GLint nx, GLint ny, GLint nz); +GLAPI void GLAPIENTRY glNormal3iv (const GLint *v); +GLAPI void GLAPIENTRY glNormal3s (GLshort nx, GLshort ny, GLshort nz); +GLAPI void GLAPIENTRY glNormal3sv (const GLshort *v); +GLAPI void GLAPIENTRY glNormalPointer (GLenum type, GLsizei stride, const void *pointer); +GLAPI void GLAPIENTRY glOrtho (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); +GLAPI void GLAPIENTRY glPassThrough (GLfloat token); +GLAPI void GLAPIENTRY glPixelMapfv (GLenum map, GLsizei mapsize, const GLfloat *values); +GLAPI void GLAPIENTRY glPixelMapuiv (GLenum map, GLsizei mapsize, const GLuint *values); +GLAPI void GLAPIENTRY glPixelMapusv (GLenum map, GLsizei mapsize, const GLushort *values); +GLAPI void GLAPIENTRY glPixelStoref (GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glPixelStorei (GLenum pname, GLint param); +GLAPI void GLAPIENTRY glPixelTransferf (GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glPixelTransferi (GLenum pname, GLint param); +GLAPI void GLAPIENTRY glPixelZoom (GLfloat xfactor, GLfloat yfactor); +GLAPI void GLAPIENTRY glPointSize (GLfloat size); +GLAPI void GLAPIENTRY glPolygonMode (GLenum face, GLenum mode); +GLAPI void GLAPIENTRY glPolygonOffset (GLfloat factor, GLfloat units); +GLAPI void GLAPIENTRY glPolygonStipple (const GLubyte *mask); +GLAPI void GLAPIENTRY glPopAttrib (void); +GLAPI void GLAPIENTRY glPopClientAttrib (void); +GLAPI void GLAPIENTRY glPopMatrix (void); +GLAPI void GLAPIENTRY glPopName (void); +GLAPI void GLAPIENTRY glPrioritizeTextures (GLsizei n, const GLuint *textures, const GLclampf *priorities); +GLAPI void GLAPIENTRY glPushAttrib (GLbitfield mask); +GLAPI void GLAPIENTRY glPushClientAttrib (GLbitfield mask); +GLAPI void GLAPIENTRY glPushMatrix (void); +GLAPI void GLAPIENTRY glPushName (GLuint name); +GLAPI void GLAPIENTRY glRasterPos2d (GLdouble x, GLdouble y); +GLAPI void GLAPIENTRY glRasterPos2dv (const GLdouble *v); +GLAPI void GLAPIENTRY glRasterPos2f (GLfloat x, GLfloat y); +GLAPI void GLAPIENTRY glRasterPos2fv (const GLfloat *v); +GLAPI void GLAPIENTRY glRasterPos2i (GLint x, GLint y); +GLAPI void GLAPIENTRY glRasterPos2iv (const GLint *v); +GLAPI void GLAPIENTRY glRasterPos2s (GLshort x, GLshort y); +GLAPI void GLAPIENTRY glRasterPos2sv (const GLshort *v); +GLAPI void GLAPIENTRY glRasterPos3d (GLdouble x, GLdouble y, GLdouble z); +GLAPI void GLAPIENTRY glRasterPos3dv (const GLdouble *v); +GLAPI void GLAPIENTRY glRasterPos3f (GLfloat x, GLfloat y, GLfloat z); +GLAPI void GLAPIENTRY glRasterPos3fv (const GLfloat *v); +GLAPI void GLAPIENTRY glRasterPos3i (GLint x, GLint y, GLint z); +GLAPI void GLAPIENTRY glRasterPos3iv (const GLint *v); +GLAPI void GLAPIENTRY glRasterPos3s (GLshort x, GLshort y, GLshort z); +GLAPI void GLAPIENTRY glRasterPos3sv (const GLshort *v); +GLAPI void GLAPIENTRY glRasterPos4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w); +GLAPI void GLAPIENTRY glRasterPos4dv (const GLdouble *v); +GLAPI void GLAPIENTRY glRasterPos4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w); +GLAPI void GLAPIENTRY glRasterPos4fv (const GLfloat *v); +GLAPI void GLAPIENTRY glRasterPos4i (GLint x, GLint y, GLint z, GLint w); +GLAPI void GLAPIENTRY glRasterPos4iv (const GLint *v); +GLAPI void GLAPIENTRY glRasterPos4s (GLshort x, GLshort y, GLshort z, GLshort w); +GLAPI void GLAPIENTRY glRasterPos4sv (const GLshort *v); +GLAPI void GLAPIENTRY glReadBuffer (GLenum mode); +GLAPI void GLAPIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels); +GLAPI void GLAPIENTRY glRectd (GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2); +GLAPI void GLAPIENTRY glRectdv (const GLdouble *v1, const GLdouble *v2); +GLAPI void GLAPIENTRY glRectf (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); +GLAPI void GLAPIENTRY glRectfv (const GLfloat *v1, const GLfloat *v2); +GLAPI void GLAPIENTRY glRecti (GLint x1, GLint y1, GLint x2, GLint y2); +GLAPI void GLAPIENTRY glRectiv (const GLint *v1, const GLint *v2); +GLAPI void GLAPIENTRY glRects (GLshort x1, GLshort y1, GLshort x2, GLshort y2); +GLAPI void GLAPIENTRY glRectsv (const GLshort *v1, const GLshort *v2); +GLAPI GLint GLAPIENTRY glRenderMode (GLenum mode); +GLAPI void GLAPIENTRY glRotated (GLdouble angle, GLdouble x, GLdouble y, GLdouble z); +GLAPI void GLAPIENTRY glRotatef (GLfloat angle, GLfloat x, GLfloat y, GLfloat z); +GLAPI void GLAPIENTRY glScaled (GLdouble x, GLdouble y, GLdouble z); +GLAPI void GLAPIENTRY glScalef (GLfloat x, GLfloat y, GLfloat z); +GLAPI void GLAPIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height); +GLAPI void GLAPIENTRY glSelectBuffer (GLsizei size, GLuint *buffer); +GLAPI void GLAPIENTRY glShadeModel (GLenum mode); +GLAPI void GLAPIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask); +GLAPI void GLAPIENTRY glStencilMask (GLuint mask); +GLAPI void GLAPIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass); +GLAPI void GLAPIENTRY glTexCoord1d (GLdouble s); +GLAPI void GLAPIENTRY glTexCoord1dv (const GLdouble *v); +GLAPI void GLAPIENTRY glTexCoord1f (GLfloat s); +GLAPI void GLAPIENTRY glTexCoord1fv (const GLfloat *v); +GLAPI void GLAPIENTRY glTexCoord1i (GLint s); +GLAPI void GLAPIENTRY glTexCoord1iv (const GLint *v); +GLAPI void GLAPIENTRY glTexCoord1s (GLshort s); +GLAPI void GLAPIENTRY glTexCoord1sv (const GLshort *v); +GLAPI void GLAPIENTRY glTexCoord2d (GLdouble s, GLdouble t); +GLAPI void GLAPIENTRY glTexCoord2dv (const GLdouble *v); +GLAPI void GLAPIENTRY glTexCoord2f (GLfloat s, GLfloat t); +GLAPI void GLAPIENTRY glTexCoord2fv (const GLfloat *v); +GLAPI void GLAPIENTRY glTexCoord2i (GLint s, GLint t); +GLAPI void GLAPIENTRY glTexCoord2iv (const GLint *v); +GLAPI void GLAPIENTRY glTexCoord2s (GLshort s, GLshort t); +GLAPI void GLAPIENTRY glTexCoord2sv (const GLshort *v); +GLAPI void GLAPIENTRY glTexCoord3d (GLdouble s, GLdouble t, GLdouble r); +GLAPI void GLAPIENTRY glTexCoord3dv (const GLdouble *v); +GLAPI void GLAPIENTRY glTexCoord3f (GLfloat s, GLfloat t, GLfloat r); +GLAPI void GLAPIENTRY glTexCoord3fv (const GLfloat *v); +GLAPI void GLAPIENTRY glTexCoord3i (GLint s, GLint t, GLint r); +GLAPI void GLAPIENTRY glTexCoord3iv (const GLint *v); +GLAPI void GLAPIENTRY glTexCoord3s (GLshort s, GLshort t, GLshort r); +GLAPI void GLAPIENTRY glTexCoord3sv (const GLshort *v); +GLAPI void GLAPIENTRY glTexCoord4d (GLdouble s, GLdouble t, GLdouble r, GLdouble q); +GLAPI void GLAPIENTRY glTexCoord4dv (const GLdouble *v); +GLAPI void GLAPIENTRY glTexCoord4f (GLfloat s, GLfloat t, GLfloat r, GLfloat q); +GLAPI void GLAPIENTRY glTexCoord4fv (const GLfloat *v); +GLAPI void GLAPIENTRY glTexCoord4i (GLint s, GLint t, GLint r, GLint q); +GLAPI void GLAPIENTRY glTexCoord4iv (const GLint *v); +GLAPI void GLAPIENTRY glTexCoord4s (GLshort s, GLshort t, GLshort r, GLshort q); +GLAPI void GLAPIENTRY glTexCoord4sv (const GLshort *v); +GLAPI void GLAPIENTRY glTexCoordPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); +GLAPI void GLAPIENTRY glTexEnvf (GLenum target, GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glTexEnvfv (GLenum target, GLenum pname, const GLfloat *params); +GLAPI void GLAPIENTRY glTexEnvi (GLenum target, GLenum pname, GLint param); +GLAPI void GLAPIENTRY glTexEnviv (GLenum target, GLenum pname, const GLint *params); +GLAPI void GLAPIENTRY glTexGend (GLenum coord, GLenum pname, GLdouble param); +GLAPI void GLAPIENTRY glTexGendv (GLenum coord, GLenum pname, const GLdouble *params); +GLAPI void GLAPIENTRY glTexGenf (GLenum coord, GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glTexGenfv (GLenum coord, GLenum pname, const GLfloat *params); +GLAPI void GLAPIENTRY glTexGeni (GLenum coord, GLenum pname, GLint param); +GLAPI void GLAPIENTRY glTexGeniv (GLenum coord, GLenum pname, const GLint *params); +GLAPI void GLAPIENTRY glTexImage1D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels); +GLAPI void GLAPIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); +GLAPI void GLAPIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param); +GLAPI void GLAPIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params); +GLAPI void GLAPIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param); +GLAPI void GLAPIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params); +GLAPI void GLAPIENTRY glTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); +GLAPI void GLAPIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); +GLAPI void GLAPIENTRY glTranslated (GLdouble x, GLdouble y, GLdouble z); +GLAPI void GLAPIENTRY glTranslatef (GLfloat x, GLfloat y, GLfloat z); +GLAPI void GLAPIENTRY glVertex2d (GLdouble x, GLdouble y); +GLAPI void GLAPIENTRY glVertex2dv (const GLdouble *v); +GLAPI void GLAPIENTRY glVertex2f (GLfloat x, GLfloat y); +GLAPI void GLAPIENTRY glVertex2fv (const GLfloat *v); +GLAPI void GLAPIENTRY glVertex2i (GLint x, GLint y); +GLAPI void GLAPIENTRY glVertex2iv (const GLint *v); +GLAPI void GLAPIENTRY glVertex2s (GLshort x, GLshort y); +GLAPI void GLAPIENTRY glVertex2sv (const GLshort *v); +GLAPI void GLAPIENTRY glVertex3d (GLdouble x, GLdouble y, GLdouble z); +GLAPI void GLAPIENTRY glVertex3dv (const GLdouble *v); +GLAPI void GLAPIENTRY glVertex3f (GLfloat x, GLfloat y, GLfloat z); +GLAPI void GLAPIENTRY glVertex3fv (const GLfloat *v); +GLAPI void GLAPIENTRY glVertex3i (GLint x, GLint y, GLint z); +GLAPI void GLAPIENTRY glVertex3iv (const GLint *v); +GLAPI void GLAPIENTRY glVertex3s (GLshort x, GLshort y, GLshort z); +GLAPI void GLAPIENTRY glVertex3sv (const GLshort *v); +GLAPI void GLAPIENTRY glVertex4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w); +GLAPI void GLAPIENTRY glVertex4dv (const GLdouble *v); +GLAPI void GLAPIENTRY glVertex4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w); +GLAPI void GLAPIENTRY glVertex4fv (const GLfloat *v); +GLAPI void GLAPIENTRY glVertex4i (GLint x, GLint y, GLint z, GLint w); +GLAPI void GLAPIENTRY glVertex4iv (const GLint *v); +GLAPI void GLAPIENTRY glVertex4s (GLshort x, GLshort y, GLshort z, GLshort w); +GLAPI void GLAPIENTRY glVertex4sv (const GLshort *v); +GLAPI void GLAPIENTRY glVertexPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); +GLAPI void GLAPIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height); + +#define GLEW_VERSION_1_1 GLEW_GET_VAR(__GLEW_VERSION_1_1) + +#endif /* GL_VERSION_1_1 */ + +/* ---------------------------------- GLU ---------------------------------- */ + +#ifndef GLEW_NO_GLU +# ifdef __APPLE__ +# include +# if defined(__IPHONE_OS_VERSION_MIN_REQUIRED) +# define GLEW_NO_GLU +# endif +# endif +#endif + +#ifndef GLEW_NO_GLU +/* this is where we can safely include GLU */ +# if defined(__APPLE__) && defined(__MACH__) +# include +# else +# include +# endif +#endif + +/* ----------------------------- GL_VERSION_1_2 ---------------------------- */ + +#ifndef GL_VERSION_1_2 +#define GL_VERSION_1_2 1 + +#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 +#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 +#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 +#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 +#define GL_UNSIGNED_BYTE_3_3_2 0x8032 +#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 +#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 +#define GL_UNSIGNED_INT_8_8_8_8 0x8035 +#define GL_UNSIGNED_INT_10_10_10_2 0x8036 +#define GL_RESCALE_NORMAL 0x803A +#define GL_TEXTURE_BINDING_3D 0x806A +#define GL_PACK_SKIP_IMAGES 0x806B +#define GL_PACK_IMAGE_HEIGHT 0x806C +#define GL_UNPACK_SKIP_IMAGES 0x806D +#define GL_UNPACK_IMAGE_HEIGHT 0x806E +#define GL_TEXTURE_3D 0x806F +#define GL_PROXY_TEXTURE_3D 0x8070 +#define GL_TEXTURE_DEPTH 0x8071 +#define GL_TEXTURE_WRAP_R 0x8072 +#define GL_MAX_3D_TEXTURE_SIZE 0x8073 +#define GL_BGR 0x80E0 +#define GL_BGRA 0x80E1 +#define GL_MAX_ELEMENTS_VERTICES 0x80E8 +#define GL_MAX_ELEMENTS_INDICES 0x80E9 +#define GL_CLAMP_TO_EDGE 0x812F +#define GL_TEXTURE_MIN_LOD 0x813A +#define GL_TEXTURE_MAX_LOD 0x813B +#define GL_TEXTURE_BASE_LEVEL 0x813C +#define GL_TEXTURE_MAX_LEVEL 0x813D +#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 +#define GL_SINGLE_COLOR 0x81F9 +#define GL_SEPARATE_SPECULAR_COLOR 0x81FA +#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 +#define GL_UNSIGNED_SHORT_5_6_5 0x8363 +#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 +#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 +#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 +#define GL_ALIASED_POINT_SIZE_RANGE 0x846D +#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E + +typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices); +typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); + +#define glCopyTexSubImage3D GLEW_GET_FUN(__glewCopyTexSubImage3D) +#define glDrawRangeElements GLEW_GET_FUN(__glewDrawRangeElements) +#define glTexImage3D GLEW_GET_FUN(__glewTexImage3D) +#define glTexSubImage3D GLEW_GET_FUN(__glewTexSubImage3D) + +#define GLEW_VERSION_1_2 GLEW_GET_VAR(__GLEW_VERSION_1_2) + +#endif /* GL_VERSION_1_2 */ + +/* ---------------------------- GL_VERSION_1_2_1 --------------------------- */ + +#ifndef GL_VERSION_1_2_1 +#define GL_VERSION_1_2_1 1 + +#define GLEW_VERSION_1_2_1 GLEW_GET_VAR(__GLEW_VERSION_1_2_1) + +#endif /* GL_VERSION_1_2_1 */ + +/* ----------------------------- GL_VERSION_1_3 ---------------------------- */ + +#ifndef GL_VERSION_1_3 +#define GL_VERSION_1_3 1 + +#define GL_MULTISAMPLE 0x809D +#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E +#define GL_SAMPLE_ALPHA_TO_ONE 0x809F +#define GL_SAMPLE_COVERAGE 0x80A0 +#define GL_SAMPLE_BUFFERS 0x80A8 +#define GL_SAMPLES 0x80A9 +#define GL_SAMPLE_COVERAGE_VALUE 0x80AA +#define GL_SAMPLE_COVERAGE_INVERT 0x80AB +#define GL_CLAMP_TO_BORDER 0x812D +#define GL_TEXTURE0 0x84C0 +#define GL_TEXTURE1 0x84C1 +#define GL_TEXTURE2 0x84C2 +#define GL_TEXTURE3 0x84C3 +#define GL_TEXTURE4 0x84C4 +#define GL_TEXTURE5 0x84C5 +#define GL_TEXTURE6 0x84C6 +#define GL_TEXTURE7 0x84C7 +#define GL_TEXTURE8 0x84C8 +#define GL_TEXTURE9 0x84C9 +#define GL_TEXTURE10 0x84CA +#define GL_TEXTURE11 0x84CB +#define GL_TEXTURE12 0x84CC +#define GL_TEXTURE13 0x84CD +#define GL_TEXTURE14 0x84CE +#define GL_TEXTURE15 0x84CF +#define GL_TEXTURE16 0x84D0 +#define GL_TEXTURE17 0x84D1 +#define GL_TEXTURE18 0x84D2 +#define GL_TEXTURE19 0x84D3 +#define GL_TEXTURE20 0x84D4 +#define GL_TEXTURE21 0x84D5 +#define GL_TEXTURE22 0x84D6 +#define GL_TEXTURE23 0x84D7 +#define GL_TEXTURE24 0x84D8 +#define GL_TEXTURE25 0x84D9 +#define GL_TEXTURE26 0x84DA +#define GL_TEXTURE27 0x84DB +#define GL_TEXTURE28 0x84DC +#define GL_TEXTURE29 0x84DD +#define GL_TEXTURE30 0x84DE +#define GL_TEXTURE31 0x84DF +#define GL_ACTIVE_TEXTURE 0x84E0 +#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 +#define GL_MAX_TEXTURE_UNITS 0x84E2 +#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 +#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 +#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 +#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 +#define GL_SUBTRACT 0x84E7 +#define GL_COMPRESSED_ALPHA 0x84E9 +#define GL_COMPRESSED_LUMINANCE 0x84EA +#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB +#define GL_COMPRESSED_INTENSITY 0x84EC +#define GL_COMPRESSED_RGB 0x84ED +#define GL_COMPRESSED_RGBA 0x84EE +#define GL_TEXTURE_COMPRESSION_HINT 0x84EF +#define GL_NORMAL_MAP 0x8511 +#define GL_REFLECTION_MAP 0x8512 +#define GL_TEXTURE_CUBE_MAP 0x8513 +#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A +#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C +#define GL_COMBINE 0x8570 +#define GL_COMBINE_RGB 0x8571 +#define GL_COMBINE_ALPHA 0x8572 +#define GL_RGB_SCALE 0x8573 +#define GL_ADD_SIGNED 0x8574 +#define GL_INTERPOLATE 0x8575 +#define GL_CONSTANT 0x8576 +#define GL_PRIMARY_COLOR 0x8577 +#define GL_PREVIOUS 0x8578 +#define GL_SOURCE0_RGB 0x8580 +#define GL_SOURCE1_RGB 0x8581 +#define GL_SOURCE2_RGB 0x8582 +#define GL_SOURCE0_ALPHA 0x8588 +#define GL_SOURCE1_ALPHA 0x8589 +#define GL_SOURCE2_ALPHA 0x858A +#define GL_OPERAND0_RGB 0x8590 +#define GL_OPERAND1_RGB 0x8591 +#define GL_OPERAND2_RGB 0x8592 +#define GL_OPERAND0_ALPHA 0x8598 +#define GL_OPERAND1_ALPHA 0x8599 +#define GL_OPERAND2_ALPHA 0x859A +#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 +#define GL_TEXTURE_COMPRESSED 0x86A1 +#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 +#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 +#define GL_DOT3_RGB 0x86AE +#define GL_DOT3_RGBA 0x86AF +#define GL_MULTISAMPLE_BIT 0x20000000 + +typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREPROC) (GLenum texture); +typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint lod, void *img); +typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXDPROC) (const GLdouble m[16]); +typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXFPROC) (const GLfloat m[16]); +typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble m[16]); +typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXFPROC) (const GLfloat m[16]); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FPROC) (GLenum target, GLfloat s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IPROC) (GLenum target, GLint s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IVPROC) (GLenum target, const GLint *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SPROC) (GLenum target, GLshort s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IVPROC) (GLenum target, const GLint *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IVPROC) (GLenum target, const GLint *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IVPROC) (GLenum target, const GLint *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v); +typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert); + +#define glActiveTexture GLEW_GET_FUN(__glewActiveTexture) +#define glClientActiveTexture GLEW_GET_FUN(__glewClientActiveTexture) +#define glCompressedTexImage1D GLEW_GET_FUN(__glewCompressedTexImage1D) +#define glCompressedTexImage2D GLEW_GET_FUN(__glewCompressedTexImage2D) +#define glCompressedTexImage3D GLEW_GET_FUN(__glewCompressedTexImage3D) +#define glCompressedTexSubImage1D GLEW_GET_FUN(__glewCompressedTexSubImage1D) +#define glCompressedTexSubImage2D GLEW_GET_FUN(__glewCompressedTexSubImage2D) +#define glCompressedTexSubImage3D GLEW_GET_FUN(__glewCompressedTexSubImage3D) +#define glGetCompressedTexImage GLEW_GET_FUN(__glewGetCompressedTexImage) +#define glLoadTransposeMatrixd GLEW_GET_FUN(__glewLoadTransposeMatrixd) +#define glLoadTransposeMatrixf GLEW_GET_FUN(__glewLoadTransposeMatrixf) +#define glMultTransposeMatrixd GLEW_GET_FUN(__glewMultTransposeMatrixd) +#define glMultTransposeMatrixf GLEW_GET_FUN(__glewMultTransposeMatrixf) +#define glMultiTexCoord1d GLEW_GET_FUN(__glewMultiTexCoord1d) +#define glMultiTexCoord1dv GLEW_GET_FUN(__glewMultiTexCoord1dv) +#define glMultiTexCoord1f GLEW_GET_FUN(__glewMultiTexCoord1f) +#define glMultiTexCoord1fv GLEW_GET_FUN(__glewMultiTexCoord1fv) +#define glMultiTexCoord1i GLEW_GET_FUN(__glewMultiTexCoord1i) +#define glMultiTexCoord1iv GLEW_GET_FUN(__glewMultiTexCoord1iv) +#define glMultiTexCoord1s GLEW_GET_FUN(__glewMultiTexCoord1s) +#define glMultiTexCoord1sv GLEW_GET_FUN(__glewMultiTexCoord1sv) +#define glMultiTexCoord2d GLEW_GET_FUN(__glewMultiTexCoord2d) +#define glMultiTexCoord2dv GLEW_GET_FUN(__glewMultiTexCoord2dv) +#define glMultiTexCoord2f GLEW_GET_FUN(__glewMultiTexCoord2f) +#define glMultiTexCoord2fv GLEW_GET_FUN(__glewMultiTexCoord2fv) +#define glMultiTexCoord2i GLEW_GET_FUN(__glewMultiTexCoord2i) +#define glMultiTexCoord2iv GLEW_GET_FUN(__glewMultiTexCoord2iv) +#define glMultiTexCoord2s GLEW_GET_FUN(__glewMultiTexCoord2s) +#define glMultiTexCoord2sv GLEW_GET_FUN(__glewMultiTexCoord2sv) +#define glMultiTexCoord3d GLEW_GET_FUN(__glewMultiTexCoord3d) +#define glMultiTexCoord3dv GLEW_GET_FUN(__glewMultiTexCoord3dv) +#define glMultiTexCoord3f GLEW_GET_FUN(__glewMultiTexCoord3f) +#define glMultiTexCoord3fv GLEW_GET_FUN(__glewMultiTexCoord3fv) +#define glMultiTexCoord3i GLEW_GET_FUN(__glewMultiTexCoord3i) +#define glMultiTexCoord3iv GLEW_GET_FUN(__glewMultiTexCoord3iv) +#define glMultiTexCoord3s GLEW_GET_FUN(__glewMultiTexCoord3s) +#define glMultiTexCoord3sv GLEW_GET_FUN(__glewMultiTexCoord3sv) +#define glMultiTexCoord4d GLEW_GET_FUN(__glewMultiTexCoord4d) +#define glMultiTexCoord4dv GLEW_GET_FUN(__glewMultiTexCoord4dv) +#define glMultiTexCoord4f GLEW_GET_FUN(__glewMultiTexCoord4f) +#define glMultiTexCoord4fv GLEW_GET_FUN(__glewMultiTexCoord4fv) +#define glMultiTexCoord4i GLEW_GET_FUN(__glewMultiTexCoord4i) +#define glMultiTexCoord4iv GLEW_GET_FUN(__glewMultiTexCoord4iv) +#define glMultiTexCoord4s GLEW_GET_FUN(__glewMultiTexCoord4s) +#define glMultiTexCoord4sv GLEW_GET_FUN(__glewMultiTexCoord4sv) +#define glSampleCoverage GLEW_GET_FUN(__glewSampleCoverage) + +#define GLEW_VERSION_1_3 GLEW_GET_VAR(__GLEW_VERSION_1_3) + +#endif /* GL_VERSION_1_3 */ + +/* ----------------------------- GL_VERSION_1_4 ---------------------------- */ + +#ifndef GL_VERSION_1_4 +#define GL_VERSION_1_4 1 + +#define GL_BLEND_DST_RGB 0x80C8 +#define GL_BLEND_SRC_RGB 0x80C9 +#define GL_BLEND_DST_ALPHA 0x80CA +#define GL_BLEND_SRC_ALPHA 0x80CB +#define GL_POINT_SIZE_MIN 0x8126 +#define GL_POINT_SIZE_MAX 0x8127 +#define GL_POINT_FADE_THRESHOLD_SIZE 0x8128 +#define GL_POINT_DISTANCE_ATTENUATION 0x8129 +#define GL_GENERATE_MIPMAP 0x8191 +#define GL_GENERATE_MIPMAP_HINT 0x8192 +#define GL_DEPTH_COMPONENT16 0x81A5 +#define GL_DEPTH_COMPONENT24 0x81A6 +#define GL_DEPTH_COMPONENT32 0x81A7 +#define GL_MIRRORED_REPEAT 0x8370 +#define GL_FOG_COORDINATE_SOURCE 0x8450 +#define GL_FOG_COORDINATE 0x8451 +#define GL_FRAGMENT_DEPTH 0x8452 +#define GL_CURRENT_FOG_COORDINATE 0x8453 +#define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454 +#define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455 +#define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456 +#define GL_FOG_COORDINATE_ARRAY 0x8457 +#define GL_COLOR_SUM 0x8458 +#define GL_CURRENT_SECONDARY_COLOR 0x8459 +#define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A +#define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B +#define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C +#define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D +#define GL_SECONDARY_COLOR_ARRAY 0x845E +#define GL_MAX_TEXTURE_LOD_BIAS 0x84FD +#define GL_TEXTURE_FILTER_CONTROL 0x8500 +#define GL_TEXTURE_LOD_BIAS 0x8501 +#define GL_INCR_WRAP 0x8507 +#define GL_DECR_WRAP 0x8508 +#define GL_TEXTURE_DEPTH_SIZE 0x884A +#define GL_DEPTH_TEXTURE_MODE 0x884B +#define GL_TEXTURE_COMPARE_MODE 0x884C +#define GL_TEXTURE_COMPARE_FUNC 0x884D +#define GL_COMPARE_R_TO_TEXTURE 0x884E + +typedef void (GLAPIENTRY * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONPROC) (GLenum mode); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); +typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTERPROC) (GLenum type, GLsizei stride, const void *pointer); +typedef void (GLAPIENTRY * PFNGLFOGCOORDDPROC) (GLdouble coord); +typedef void (GLAPIENTRY * PFNGLFOGCOORDDVPROC) (const GLdouble *coord); +typedef void (GLAPIENTRY * PFNGLFOGCOORDFPROC) (GLfloat coord); +typedef void (GLAPIENTRY * PFNGLFOGCOORDFVPROC) (const GLfloat *coord); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const* indices, GLsizei drawcount); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint *params); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BPROC) (GLbyte red, GLbyte green, GLbyte blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BVPROC) (const GLbyte *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DPROC) (GLdouble red, GLdouble green, GLdouble blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DVPROC) (const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FPROC) (GLfloat red, GLfloat green, GLfloat blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FVPROC) (const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IPROC) (GLint red, GLint green, GLint blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IVPROC) (const GLint *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SPROC) (GLshort red, GLshort green, GLshort blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SVPROC) (const GLshort *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBPROC) (GLubyte red, GLubyte green, GLubyte blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBVPROC) (const GLubyte *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIPROC) (GLuint red, GLuint green, GLuint blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIVPROC) (const GLuint *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USPROC) (GLushort red, GLushort green, GLushort blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USVPROC) (const GLushort *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DPROC) (GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVPROC) (const GLdouble *p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FPROC) (GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVPROC) (const GLfloat *p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IPROC) (GLint x, GLint y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVPROC) (const GLint *p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SPROC) (GLshort x, GLshort y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVPROC) (const GLshort *p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DPROC) (GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVPROC) (const GLdouble *p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVPROC) (const GLfloat *p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IPROC) (GLint x, GLint y, GLint z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVPROC) (const GLint *p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SPROC) (GLshort x, GLshort y, GLshort z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVPROC) (const GLshort *p); + +#define glBlendColor GLEW_GET_FUN(__glewBlendColor) +#define glBlendEquation GLEW_GET_FUN(__glewBlendEquation) +#define glBlendFuncSeparate GLEW_GET_FUN(__glewBlendFuncSeparate) +#define glFogCoordPointer GLEW_GET_FUN(__glewFogCoordPointer) +#define glFogCoordd GLEW_GET_FUN(__glewFogCoordd) +#define glFogCoorddv GLEW_GET_FUN(__glewFogCoorddv) +#define glFogCoordf GLEW_GET_FUN(__glewFogCoordf) +#define glFogCoordfv GLEW_GET_FUN(__glewFogCoordfv) +#define glMultiDrawArrays GLEW_GET_FUN(__glewMultiDrawArrays) +#define glMultiDrawElements GLEW_GET_FUN(__glewMultiDrawElements) +#define glPointParameterf GLEW_GET_FUN(__glewPointParameterf) +#define glPointParameterfv GLEW_GET_FUN(__glewPointParameterfv) +#define glPointParameteri GLEW_GET_FUN(__glewPointParameteri) +#define glPointParameteriv GLEW_GET_FUN(__glewPointParameteriv) +#define glSecondaryColor3b GLEW_GET_FUN(__glewSecondaryColor3b) +#define glSecondaryColor3bv GLEW_GET_FUN(__glewSecondaryColor3bv) +#define glSecondaryColor3d GLEW_GET_FUN(__glewSecondaryColor3d) +#define glSecondaryColor3dv GLEW_GET_FUN(__glewSecondaryColor3dv) +#define glSecondaryColor3f GLEW_GET_FUN(__glewSecondaryColor3f) +#define glSecondaryColor3fv GLEW_GET_FUN(__glewSecondaryColor3fv) +#define glSecondaryColor3i GLEW_GET_FUN(__glewSecondaryColor3i) +#define glSecondaryColor3iv GLEW_GET_FUN(__glewSecondaryColor3iv) +#define glSecondaryColor3s GLEW_GET_FUN(__glewSecondaryColor3s) +#define glSecondaryColor3sv GLEW_GET_FUN(__glewSecondaryColor3sv) +#define glSecondaryColor3ub GLEW_GET_FUN(__glewSecondaryColor3ub) +#define glSecondaryColor3ubv GLEW_GET_FUN(__glewSecondaryColor3ubv) +#define glSecondaryColor3ui GLEW_GET_FUN(__glewSecondaryColor3ui) +#define glSecondaryColor3uiv GLEW_GET_FUN(__glewSecondaryColor3uiv) +#define glSecondaryColor3us GLEW_GET_FUN(__glewSecondaryColor3us) +#define glSecondaryColor3usv GLEW_GET_FUN(__glewSecondaryColor3usv) +#define glSecondaryColorPointer GLEW_GET_FUN(__glewSecondaryColorPointer) +#define glWindowPos2d GLEW_GET_FUN(__glewWindowPos2d) +#define glWindowPos2dv GLEW_GET_FUN(__glewWindowPos2dv) +#define glWindowPos2f GLEW_GET_FUN(__glewWindowPos2f) +#define glWindowPos2fv GLEW_GET_FUN(__glewWindowPos2fv) +#define glWindowPos2i GLEW_GET_FUN(__glewWindowPos2i) +#define glWindowPos2iv GLEW_GET_FUN(__glewWindowPos2iv) +#define glWindowPos2s GLEW_GET_FUN(__glewWindowPos2s) +#define glWindowPos2sv GLEW_GET_FUN(__glewWindowPos2sv) +#define glWindowPos3d GLEW_GET_FUN(__glewWindowPos3d) +#define glWindowPos3dv GLEW_GET_FUN(__glewWindowPos3dv) +#define glWindowPos3f GLEW_GET_FUN(__glewWindowPos3f) +#define glWindowPos3fv GLEW_GET_FUN(__glewWindowPos3fv) +#define glWindowPos3i GLEW_GET_FUN(__glewWindowPos3i) +#define glWindowPos3iv GLEW_GET_FUN(__glewWindowPos3iv) +#define glWindowPos3s GLEW_GET_FUN(__glewWindowPos3s) +#define glWindowPos3sv GLEW_GET_FUN(__glewWindowPos3sv) + +#define GLEW_VERSION_1_4 GLEW_GET_VAR(__GLEW_VERSION_1_4) + +#endif /* GL_VERSION_1_4 */ + +/* ----------------------------- GL_VERSION_1_5 ---------------------------- */ + +#ifndef GL_VERSION_1_5 +#define GL_VERSION_1_5 1 + +#define GL_CURRENT_FOG_COORD GL_CURRENT_FOG_COORDINATE +#define GL_FOG_COORD GL_FOG_COORDINATE +#define GL_FOG_COORD_ARRAY GL_FOG_COORDINATE_ARRAY +#define GL_FOG_COORD_ARRAY_BUFFER_BINDING GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING +#define GL_FOG_COORD_ARRAY_POINTER GL_FOG_COORDINATE_ARRAY_POINTER +#define GL_FOG_COORD_ARRAY_STRIDE GL_FOG_COORDINATE_ARRAY_STRIDE +#define GL_FOG_COORD_ARRAY_TYPE GL_FOG_COORDINATE_ARRAY_TYPE +#define GL_FOG_COORD_SRC GL_FOG_COORDINATE_SOURCE +#define GL_SRC0_ALPHA GL_SOURCE0_ALPHA +#define GL_SRC0_RGB GL_SOURCE0_RGB +#define GL_SRC1_ALPHA GL_SOURCE1_ALPHA +#define GL_SRC1_RGB GL_SOURCE1_RGB +#define GL_SRC2_ALPHA GL_SOURCE2_ALPHA +#define GL_SRC2_RGB GL_SOURCE2_RGB +#define GL_BUFFER_SIZE 0x8764 +#define GL_BUFFER_USAGE 0x8765 +#define GL_QUERY_COUNTER_BITS 0x8864 +#define GL_CURRENT_QUERY 0x8865 +#define GL_QUERY_RESULT 0x8866 +#define GL_QUERY_RESULT_AVAILABLE 0x8867 +#define GL_ARRAY_BUFFER 0x8892 +#define GL_ELEMENT_ARRAY_BUFFER 0x8893 +#define GL_ARRAY_BUFFER_BINDING 0x8894 +#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895 +#define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896 +#define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897 +#define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898 +#define GL_INDEX_ARRAY_BUFFER_BINDING 0x8899 +#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A +#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B +#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C +#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D +#define GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E +#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F +#define GL_READ_ONLY 0x88B8 +#define GL_WRITE_ONLY 0x88B9 +#define GL_READ_WRITE 0x88BA +#define GL_BUFFER_ACCESS 0x88BB +#define GL_BUFFER_MAPPED 0x88BC +#define GL_BUFFER_MAP_POINTER 0x88BD +#define GL_STREAM_DRAW 0x88E0 +#define GL_STREAM_READ 0x88E1 +#define GL_STREAM_COPY 0x88E2 +#define GL_STATIC_DRAW 0x88E4 +#define GL_STATIC_READ 0x88E5 +#define GL_STATIC_COPY 0x88E6 +#define GL_DYNAMIC_DRAW 0x88E8 +#define GL_DYNAMIC_READ 0x88E9 +#define GL_DYNAMIC_COPY 0x88EA +#define GL_SAMPLES_PASSED 0x8914 + +typedef ptrdiff_t GLintptr; +typedef ptrdiff_t GLsizeiptr; + +typedef void (GLAPIENTRY * PFNGLBEGINQUERYPROC) (GLenum target, GLuint id); +typedef void (GLAPIENTRY * PFNGLBINDBUFFERPROC) (GLenum target, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLBUFFERDATAPROC) (GLenum target, GLsizeiptr size, const void* data, GLenum usage); +typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const void* data); +typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSPROC) (GLsizei n, const GLuint* buffers); +typedef void (GLAPIENTRY * PFNGLDELETEQUERIESPROC) (GLsizei n, const GLuint* ids); +typedef void (GLAPIENTRY * PFNGLENDQUERYPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLGENBUFFERSPROC) (GLsizei n, GLuint* buffers); +typedef void (GLAPIENTRY * PFNGLGENQUERIESPROC) (GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVPROC) (GLenum target, GLenum pname, void** params); +typedef void (GLAPIENTRY * PFNGLGETBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, void* data); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVPROC) (GLuint id, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVPROC) (GLuint id, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYIVPROC) (GLenum target, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERPROC) (GLuint buffer); +typedef GLboolean (GLAPIENTRY * PFNGLISQUERYPROC) (GLuint id); +typedef void* (GLAPIENTRY * PFNGLMAPBUFFERPROC) (GLenum target, GLenum access); +typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFERPROC) (GLenum target); + +#define glBeginQuery GLEW_GET_FUN(__glewBeginQuery) +#define glBindBuffer GLEW_GET_FUN(__glewBindBuffer) +#define glBufferData GLEW_GET_FUN(__glewBufferData) +#define glBufferSubData GLEW_GET_FUN(__glewBufferSubData) +#define glDeleteBuffers GLEW_GET_FUN(__glewDeleteBuffers) +#define glDeleteQueries GLEW_GET_FUN(__glewDeleteQueries) +#define glEndQuery GLEW_GET_FUN(__glewEndQuery) +#define glGenBuffers GLEW_GET_FUN(__glewGenBuffers) +#define glGenQueries GLEW_GET_FUN(__glewGenQueries) +#define glGetBufferParameteriv GLEW_GET_FUN(__glewGetBufferParameteriv) +#define glGetBufferPointerv GLEW_GET_FUN(__glewGetBufferPointerv) +#define glGetBufferSubData GLEW_GET_FUN(__glewGetBufferSubData) +#define glGetQueryObjectiv GLEW_GET_FUN(__glewGetQueryObjectiv) +#define glGetQueryObjectuiv GLEW_GET_FUN(__glewGetQueryObjectuiv) +#define glGetQueryiv GLEW_GET_FUN(__glewGetQueryiv) +#define glIsBuffer GLEW_GET_FUN(__glewIsBuffer) +#define glIsQuery GLEW_GET_FUN(__glewIsQuery) +#define glMapBuffer GLEW_GET_FUN(__glewMapBuffer) +#define glUnmapBuffer GLEW_GET_FUN(__glewUnmapBuffer) + +#define GLEW_VERSION_1_5 GLEW_GET_VAR(__GLEW_VERSION_1_5) + +#endif /* GL_VERSION_1_5 */ + +/* ----------------------------- GL_VERSION_2_0 ---------------------------- */ + +#ifndef GL_VERSION_2_0 +#define GL_VERSION_2_0 1 + +#define GL_BLEND_EQUATION_RGB GL_BLEND_EQUATION +#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622 +#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623 +#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624 +#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625 +#define GL_CURRENT_VERTEX_ATTRIB 0x8626 +#define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642 +#define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643 +#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645 +#define GL_STENCIL_BACK_FUNC 0x8800 +#define GL_STENCIL_BACK_FAIL 0x8801 +#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802 +#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803 +#define GL_MAX_DRAW_BUFFERS 0x8824 +#define GL_DRAW_BUFFER0 0x8825 +#define GL_DRAW_BUFFER1 0x8826 +#define GL_DRAW_BUFFER2 0x8827 +#define GL_DRAW_BUFFER3 0x8828 +#define GL_DRAW_BUFFER4 0x8829 +#define GL_DRAW_BUFFER5 0x882A +#define GL_DRAW_BUFFER6 0x882B +#define GL_DRAW_BUFFER7 0x882C +#define GL_DRAW_BUFFER8 0x882D +#define GL_DRAW_BUFFER9 0x882E +#define GL_DRAW_BUFFER10 0x882F +#define GL_DRAW_BUFFER11 0x8830 +#define GL_DRAW_BUFFER12 0x8831 +#define GL_DRAW_BUFFER13 0x8832 +#define GL_DRAW_BUFFER14 0x8833 +#define GL_DRAW_BUFFER15 0x8834 +#define GL_BLEND_EQUATION_ALPHA 0x883D +#define GL_POINT_SPRITE 0x8861 +#define GL_COORD_REPLACE 0x8862 +#define GL_MAX_VERTEX_ATTRIBS 0x8869 +#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A +#define GL_MAX_TEXTURE_COORDS 0x8871 +#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872 +#define GL_FRAGMENT_SHADER 0x8B30 +#define GL_VERTEX_SHADER 0x8B31 +#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49 +#define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A +#define GL_MAX_VARYING_FLOATS 0x8B4B +#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C +#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D +#define GL_SHADER_TYPE 0x8B4F +#define GL_FLOAT_VEC2 0x8B50 +#define GL_FLOAT_VEC3 0x8B51 +#define GL_FLOAT_VEC4 0x8B52 +#define GL_INT_VEC2 0x8B53 +#define GL_INT_VEC3 0x8B54 +#define GL_INT_VEC4 0x8B55 +#define GL_BOOL 0x8B56 +#define GL_BOOL_VEC2 0x8B57 +#define GL_BOOL_VEC3 0x8B58 +#define GL_BOOL_VEC4 0x8B59 +#define GL_FLOAT_MAT2 0x8B5A +#define GL_FLOAT_MAT3 0x8B5B +#define GL_FLOAT_MAT4 0x8B5C +#define GL_SAMPLER_1D 0x8B5D +#define GL_SAMPLER_2D 0x8B5E +#define GL_SAMPLER_3D 0x8B5F +#define GL_SAMPLER_CUBE 0x8B60 +#define GL_SAMPLER_1D_SHADOW 0x8B61 +#define GL_SAMPLER_2D_SHADOW 0x8B62 +#define GL_DELETE_STATUS 0x8B80 +#define GL_COMPILE_STATUS 0x8B81 +#define GL_LINK_STATUS 0x8B82 +#define GL_VALIDATE_STATUS 0x8B83 +#define GL_INFO_LOG_LENGTH 0x8B84 +#define GL_ATTACHED_SHADERS 0x8B85 +#define GL_ACTIVE_UNIFORMS 0x8B86 +#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87 +#define GL_SHADER_SOURCE_LENGTH 0x8B88 +#define GL_ACTIVE_ATTRIBUTES 0x8B89 +#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A +#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B +#define GL_SHADING_LANGUAGE_VERSION 0x8B8C +#define GL_CURRENT_PROGRAM 0x8B8D +#define GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0 +#define GL_LOWER_LEFT 0x8CA1 +#define GL_UPPER_LEFT 0x8CA2 +#define GL_STENCIL_BACK_REF 0x8CA3 +#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4 +#define GL_STENCIL_BACK_WRITEMASK 0x8CA5 + +typedef void (GLAPIENTRY * PFNGLATTACHSHADERPROC) (GLuint program, GLuint shader); +typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar* name); +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEPROC) (GLenum modeRGB, GLenum modeAlpha); +typedef void (GLAPIENTRY * PFNGLCOMPILESHADERPROC) (GLuint shader); +typedef GLuint (GLAPIENTRY * PFNGLCREATEPROGRAMPROC) (void); +typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROC) (GLenum type); +typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMPROC) (GLuint program); +typedef void (GLAPIENTRY * PFNGLDELETESHADERPROC) (GLuint shader); +typedef void (GLAPIENTRY * PFNGLDETACHSHADERPROC) (GLuint program, GLuint shader); +typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint index); +typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSPROC) (GLsizei n, const GLenum* bufs); +typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint index); +typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name); +typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name); +typedef void (GLAPIENTRY * PFNGLGETATTACHEDSHADERSPROC) (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders); +typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONPROC) (GLuint program, const GLchar* name); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVPROC) (GLuint program, GLenum pname, GLint* param); +typedef void (GLAPIENTRY * PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog); +typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEPROC) (GLuint obj, GLsizei maxLength, GLsizei* length, GLchar* source); +typedef void (GLAPIENTRY * PFNGLGETSHADERIVPROC) (GLuint shader, GLenum pname, GLint* param); +typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const GLchar* name); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVPROC) (GLuint program, GLint location, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVPROC) (GLuint program, GLint location, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVPROC) (GLuint index, GLenum pname, void** pointer); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVPROC) (GLuint index, GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVPROC) (GLuint index, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVPROC) (GLuint index, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMPROC) (GLuint program); +typedef GLboolean (GLAPIENTRY * PFNGLISSHADERPROC) (GLuint shader); +typedef void (GLAPIENTRY * PFNGLLINKPROGRAMPROC) (GLuint program); +typedef void (GLAPIENTRY * PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar *const* string, const GLint* length); +typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEPROC) (GLenum face, GLenum func, GLint ref, GLuint mask); +typedef void (GLAPIENTRY * PFNGLSTENCILMASKSEPARATEPROC) (GLenum face, GLuint mask); +typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); +typedef void (GLAPIENTRY * PFNGLUNIFORM1FPROC) (GLint location, GLfloat v0); +typedef void (GLAPIENTRY * PFNGLUNIFORM1FVPROC) (GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM1IPROC) (GLint location, GLint v0); +typedef void (GLAPIENTRY * PFNGLUNIFORM1IVPROC) (GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2FPROC) (GLint location, GLfloat v0, GLfloat v1); +typedef void (GLAPIENTRY * PFNGLUNIFORM2FVPROC) (GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2IPROC) (GLint location, GLint v0, GLint v1); +typedef void (GLAPIENTRY * PFNGLUNIFORM2IVPROC) (GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); +typedef void (GLAPIENTRY * PFNGLUNIFORM3FVPROC) (GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3IPROC) (GLint location, GLint v0, GLint v1, GLint v2); +typedef void (GLAPIENTRY * PFNGLUNIFORM3IVPROC) (GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); +typedef void (GLAPIENTRY * PFNGLUNIFORM4FVPROC) (GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4IPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); +typedef void (GLAPIENTRY * PFNGLUNIFORM4IVPROC) (GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUSEPROGRAMPROC) (GLuint program); +typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMPROC) (GLuint program); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DPROC) (GLuint index, GLdouble x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FPROC) (GLuint index, GLfloat x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SPROC) (GLuint index, GLshort x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DPROC) (GLuint index, GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FPROC) (GLuint index, GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SPROC) (GLuint index, GLshort x, GLshort y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SPROC) (GLuint index, GLshort x, GLshort y, GLshort z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NBVPROC) (GLuint index, const GLbyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NIVPROC) (GLuint index, const GLint* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NSVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBVPROC) (GLuint index, const GLubyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUIVPROC) (GLuint index, const GLuint* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUSVPROC) (GLuint index, const GLushort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4BVPROC) (GLuint index, const GLbyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4IVPROC) (GLuint index, const GLint* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVPROC) (GLuint index, const GLubyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UIVPROC) (GLuint index, const GLuint* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4USVPROC) (GLuint index, const GLushort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* pointer); + +#define glAttachShader GLEW_GET_FUN(__glewAttachShader) +#define glBindAttribLocation GLEW_GET_FUN(__glewBindAttribLocation) +#define glBlendEquationSeparate GLEW_GET_FUN(__glewBlendEquationSeparate) +#define glCompileShader GLEW_GET_FUN(__glewCompileShader) +#define glCreateProgram GLEW_GET_FUN(__glewCreateProgram) +#define glCreateShader GLEW_GET_FUN(__glewCreateShader) +#define glDeleteProgram GLEW_GET_FUN(__glewDeleteProgram) +#define glDeleteShader GLEW_GET_FUN(__glewDeleteShader) +#define glDetachShader GLEW_GET_FUN(__glewDetachShader) +#define glDisableVertexAttribArray GLEW_GET_FUN(__glewDisableVertexAttribArray) +#define glDrawBuffers GLEW_GET_FUN(__glewDrawBuffers) +#define glEnableVertexAttribArray GLEW_GET_FUN(__glewEnableVertexAttribArray) +#define glGetActiveAttrib GLEW_GET_FUN(__glewGetActiveAttrib) +#define glGetActiveUniform GLEW_GET_FUN(__glewGetActiveUniform) +#define glGetAttachedShaders GLEW_GET_FUN(__glewGetAttachedShaders) +#define glGetAttribLocation GLEW_GET_FUN(__glewGetAttribLocation) +#define glGetProgramInfoLog GLEW_GET_FUN(__glewGetProgramInfoLog) +#define glGetProgramiv GLEW_GET_FUN(__glewGetProgramiv) +#define glGetShaderInfoLog GLEW_GET_FUN(__glewGetShaderInfoLog) +#define glGetShaderSource GLEW_GET_FUN(__glewGetShaderSource) +#define glGetShaderiv GLEW_GET_FUN(__glewGetShaderiv) +#define glGetUniformLocation GLEW_GET_FUN(__glewGetUniformLocation) +#define glGetUniformfv GLEW_GET_FUN(__glewGetUniformfv) +#define glGetUniformiv GLEW_GET_FUN(__glewGetUniformiv) +#define glGetVertexAttribPointerv GLEW_GET_FUN(__glewGetVertexAttribPointerv) +#define glGetVertexAttribdv GLEW_GET_FUN(__glewGetVertexAttribdv) +#define glGetVertexAttribfv GLEW_GET_FUN(__glewGetVertexAttribfv) +#define glGetVertexAttribiv GLEW_GET_FUN(__glewGetVertexAttribiv) +#define glIsProgram GLEW_GET_FUN(__glewIsProgram) +#define glIsShader GLEW_GET_FUN(__glewIsShader) +#define glLinkProgram GLEW_GET_FUN(__glewLinkProgram) +#define glShaderSource GLEW_GET_FUN(__glewShaderSource) +#define glStencilFuncSeparate GLEW_GET_FUN(__glewStencilFuncSeparate) +#define glStencilMaskSeparate GLEW_GET_FUN(__glewStencilMaskSeparate) +#define glStencilOpSeparate GLEW_GET_FUN(__glewStencilOpSeparate) +#define glUniform1f GLEW_GET_FUN(__glewUniform1f) +#define glUniform1fv GLEW_GET_FUN(__glewUniform1fv) +#define glUniform1i GLEW_GET_FUN(__glewUniform1i) +#define glUniform1iv GLEW_GET_FUN(__glewUniform1iv) +#define glUniform2f GLEW_GET_FUN(__glewUniform2f) +#define glUniform2fv GLEW_GET_FUN(__glewUniform2fv) +#define glUniform2i GLEW_GET_FUN(__glewUniform2i) +#define glUniform2iv GLEW_GET_FUN(__glewUniform2iv) +#define glUniform3f GLEW_GET_FUN(__glewUniform3f) +#define glUniform3fv GLEW_GET_FUN(__glewUniform3fv) +#define glUniform3i GLEW_GET_FUN(__glewUniform3i) +#define glUniform3iv GLEW_GET_FUN(__glewUniform3iv) +#define glUniform4f GLEW_GET_FUN(__glewUniform4f) +#define glUniform4fv GLEW_GET_FUN(__glewUniform4fv) +#define glUniform4i GLEW_GET_FUN(__glewUniform4i) +#define glUniform4iv GLEW_GET_FUN(__glewUniform4iv) +#define glUniformMatrix2fv GLEW_GET_FUN(__glewUniformMatrix2fv) +#define glUniformMatrix3fv GLEW_GET_FUN(__glewUniformMatrix3fv) +#define glUniformMatrix4fv GLEW_GET_FUN(__glewUniformMatrix4fv) +#define glUseProgram GLEW_GET_FUN(__glewUseProgram) +#define glValidateProgram GLEW_GET_FUN(__glewValidateProgram) +#define glVertexAttrib1d GLEW_GET_FUN(__glewVertexAttrib1d) +#define glVertexAttrib1dv GLEW_GET_FUN(__glewVertexAttrib1dv) +#define glVertexAttrib1f GLEW_GET_FUN(__glewVertexAttrib1f) +#define glVertexAttrib1fv GLEW_GET_FUN(__glewVertexAttrib1fv) +#define glVertexAttrib1s GLEW_GET_FUN(__glewVertexAttrib1s) +#define glVertexAttrib1sv GLEW_GET_FUN(__glewVertexAttrib1sv) +#define glVertexAttrib2d GLEW_GET_FUN(__glewVertexAttrib2d) +#define glVertexAttrib2dv GLEW_GET_FUN(__glewVertexAttrib2dv) +#define glVertexAttrib2f GLEW_GET_FUN(__glewVertexAttrib2f) +#define glVertexAttrib2fv GLEW_GET_FUN(__glewVertexAttrib2fv) +#define glVertexAttrib2s GLEW_GET_FUN(__glewVertexAttrib2s) +#define glVertexAttrib2sv GLEW_GET_FUN(__glewVertexAttrib2sv) +#define glVertexAttrib3d GLEW_GET_FUN(__glewVertexAttrib3d) +#define glVertexAttrib3dv GLEW_GET_FUN(__glewVertexAttrib3dv) +#define glVertexAttrib3f GLEW_GET_FUN(__glewVertexAttrib3f) +#define glVertexAttrib3fv GLEW_GET_FUN(__glewVertexAttrib3fv) +#define glVertexAttrib3s GLEW_GET_FUN(__glewVertexAttrib3s) +#define glVertexAttrib3sv GLEW_GET_FUN(__glewVertexAttrib3sv) +#define glVertexAttrib4Nbv GLEW_GET_FUN(__glewVertexAttrib4Nbv) +#define glVertexAttrib4Niv GLEW_GET_FUN(__glewVertexAttrib4Niv) +#define glVertexAttrib4Nsv GLEW_GET_FUN(__glewVertexAttrib4Nsv) +#define glVertexAttrib4Nub GLEW_GET_FUN(__glewVertexAttrib4Nub) +#define glVertexAttrib4Nubv GLEW_GET_FUN(__glewVertexAttrib4Nubv) +#define glVertexAttrib4Nuiv GLEW_GET_FUN(__glewVertexAttrib4Nuiv) +#define glVertexAttrib4Nusv GLEW_GET_FUN(__glewVertexAttrib4Nusv) +#define glVertexAttrib4bv GLEW_GET_FUN(__glewVertexAttrib4bv) +#define glVertexAttrib4d GLEW_GET_FUN(__glewVertexAttrib4d) +#define glVertexAttrib4dv GLEW_GET_FUN(__glewVertexAttrib4dv) +#define glVertexAttrib4f GLEW_GET_FUN(__glewVertexAttrib4f) +#define glVertexAttrib4fv GLEW_GET_FUN(__glewVertexAttrib4fv) +#define glVertexAttrib4iv GLEW_GET_FUN(__glewVertexAttrib4iv) +#define glVertexAttrib4s GLEW_GET_FUN(__glewVertexAttrib4s) +#define glVertexAttrib4sv GLEW_GET_FUN(__glewVertexAttrib4sv) +#define glVertexAttrib4ubv GLEW_GET_FUN(__glewVertexAttrib4ubv) +#define glVertexAttrib4uiv GLEW_GET_FUN(__glewVertexAttrib4uiv) +#define glVertexAttrib4usv GLEW_GET_FUN(__glewVertexAttrib4usv) +#define glVertexAttribPointer GLEW_GET_FUN(__glewVertexAttribPointer) + +#define GLEW_VERSION_2_0 GLEW_GET_VAR(__GLEW_VERSION_2_0) + +#endif /* GL_VERSION_2_0 */ + +/* ----------------------------- GL_VERSION_2_1 ---------------------------- */ + +#ifndef GL_VERSION_2_1 +#define GL_VERSION_2_1 1 + +#define GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F +#define GL_PIXEL_PACK_BUFFER 0x88EB +#define GL_PIXEL_UNPACK_BUFFER 0x88EC +#define GL_PIXEL_PACK_BUFFER_BINDING 0x88ED +#define GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF +#define GL_FLOAT_MAT2x3 0x8B65 +#define GL_FLOAT_MAT2x4 0x8B66 +#define GL_FLOAT_MAT3x2 0x8B67 +#define GL_FLOAT_MAT3x4 0x8B68 +#define GL_FLOAT_MAT4x2 0x8B69 +#define GL_FLOAT_MAT4x3 0x8B6A +#define GL_SRGB 0x8C40 +#define GL_SRGB8 0x8C41 +#define GL_SRGB_ALPHA 0x8C42 +#define GL_SRGB8_ALPHA8 0x8C43 +#define GL_SLUMINANCE_ALPHA 0x8C44 +#define GL_SLUMINANCE8_ALPHA8 0x8C45 +#define GL_SLUMINANCE 0x8C46 +#define GL_SLUMINANCE8 0x8C47 +#define GL_COMPRESSED_SRGB 0x8C48 +#define GL_COMPRESSED_SRGB_ALPHA 0x8C49 +#define GL_COMPRESSED_SLUMINANCE 0x8C4A +#define GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B + +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); + +#define glUniformMatrix2x3fv GLEW_GET_FUN(__glewUniformMatrix2x3fv) +#define glUniformMatrix2x4fv GLEW_GET_FUN(__glewUniformMatrix2x4fv) +#define glUniformMatrix3x2fv GLEW_GET_FUN(__glewUniformMatrix3x2fv) +#define glUniformMatrix3x4fv GLEW_GET_FUN(__glewUniformMatrix3x4fv) +#define glUniformMatrix4x2fv GLEW_GET_FUN(__glewUniformMatrix4x2fv) +#define glUniformMatrix4x3fv GLEW_GET_FUN(__glewUniformMatrix4x3fv) + +#define GLEW_VERSION_2_1 GLEW_GET_VAR(__GLEW_VERSION_2_1) + +#endif /* GL_VERSION_2_1 */ + +/* ----------------------------- GL_VERSION_3_0 ---------------------------- */ + +#ifndef GL_VERSION_3_0 +#define GL_VERSION_3_0 1 + +#define GL_CLIP_DISTANCE0 GL_CLIP_PLANE0 +#define GL_CLIP_DISTANCE1 GL_CLIP_PLANE1 +#define GL_CLIP_DISTANCE2 GL_CLIP_PLANE2 +#define GL_CLIP_DISTANCE3 GL_CLIP_PLANE3 +#define GL_CLIP_DISTANCE4 GL_CLIP_PLANE4 +#define GL_CLIP_DISTANCE5 GL_CLIP_PLANE5 +#define GL_COMPARE_REF_TO_TEXTURE GL_COMPARE_R_TO_TEXTURE_ARB +#define GL_MAX_CLIP_DISTANCES GL_MAX_CLIP_PLANES +#define GL_MAX_VARYING_COMPONENTS GL_MAX_VARYING_FLOATS +#define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x0001 +#define GL_MAJOR_VERSION 0x821B +#define GL_MINOR_VERSION 0x821C +#define GL_NUM_EXTENSIONS 0x821D +#define GL_CONTEXT_FLAGS 0x821E +#define GL_DEPTH_BUFFER 0x8223 +#define GL_STENCIL_BUFFER 0x8224 +#define GL_RGBA32F 0x8814 +#define GL_RGB32F 0x8815 +#define GL_RGBA16F 0x881A +#define GL_RGB16F 0x881B +#define GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD +#define GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF +#define GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904 +#define GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905 +#define GL_CLAMP_VERTEX_COLOR 0x891A +#define GL_CLAMP_FRAGMENT_COLOR 0x891B +#define GL_CLAMP_READ_COLOR 0x891C +#define GL_FIXED_ONLY 0x891D +#define GL_TEXTURE_RED_TYPE 0x8C10 +#define GL_TEXTURE_GREEN_TYPE 0x8C11 +#define GL_TEXTURE_BLUE_TYPE 0x8C12 +#define GL_TEXTURE_ALPHA_TYPE 0x8C13 +#define GL_TEXTURE_LUMINANCE_TYPE 0x8C14 +#define GL_TEXTURE_INTENSITY_TYPE 0x8C15 +#define GL_TEXTURE_DEPTH_TYPE 0x8C16 +#define GL_TEXTURE_1D_ARRAY 0x8C18 +#define GL_PROXY_TEXTURE_1D_ARRAY 0x8C19 +#define GL_TEXTURE_2D_ARRAY 0x8C1A +#define GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B +#define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C +#define GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D +#define GL_R11F_G11F_B10F 0x8C3A +#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B +#define GL_RGB9_E5 0x8C3D +#define GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E +#define GL_TEXTURE_SHARED_SIZE 0x8C3F +#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76 +#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F +#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80 +#define GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83 +#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84 +#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85 +#define GL_PRIMITIVES_GENERATED 0x8C87 +#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88 +#define GL_RASTERIZER_DISCARD 0x8C89 +#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A +#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B +#define GL_INTERLEAVED_ATTRIBS 0x8C8C +#define GL_SEPARATE_ATTRIBS 0x8C8D +#define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E +#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F +#define GL_RGBA32UI 0x8D70 +#define GL_RGB32UI 0x8D71 +#define GL_RGBA16UI 0x8D76 +#define GL_RGB16UI 0x8D77 +#define GL_RGBA8UI 0x8D7C +#define GL_RGB8UI 0x8D7D +#define GL_RGBA32I 0x8D82 +#define GL_RGB32I 0x8D83 +#define GL_RGBA16I 0x8D88 +#define GL_RGB16I 0x8D89 +#define GL_RGBA8I 0x8D8E +#define GL_RGB8I 0x8D8F +#define GL_RED_INTEGER 0x8D94 +#define GL_GREEN_INTEGER 0x8D95 +#define GL_BLUE_INTEGER 0x8D96 +#define GL_ALPHA_INTEGER 0x8D97 +#define GL_RGB_INTEGER 0x8D98 +#define GL_RGBA_INTEGER 0x8D99 +#define GL_BGR_INTEGER 0x8D9A +#define GL_BGRA_INTEGER 0x8D9B +#define GL_SAMPLER_1D_ARRAY 0x8DC0 +#define GL_SAMPLER_2D_ARRAY 0x8DC1 +#define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3 +#define GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4 +#define GL_SAMPLER_CUBE_SHADOW 0x8DC5 +#define GL_UNSIGNED_INT_VEC2 0x8DC6 +#define GL_UNSIGNED_INT_VEC3 0x8DC7 +#define GL_UNSIGNED_INT_VEC4 0x8DC8 +#define GL_INT_SAMPLER_1D 0x8DC9 +#define GL_INT_SAMPLER_2D 0x8DCA +#define GL_INT_SAMPLER_3D 0x8DCB +#define GL_INT_SAMPLER_CUBE 0x8DCC +#define GL_INT_SAMPLER_1D_ARRAY 0x8DCE +#define GL_INT_SAMPLER_2D_ARRAY 0x8DCF +#define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1 +#define GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2 +#define GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3 +#define GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4 +#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6 +#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7 +#define GL_QUERY_WAIT 0x8E13 +#define GL_QUERY_NO_WAIT 0x8E14 +#define GL_QUERY_BY_REGION_WAIT 0x8E15 +#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16 + +typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERPROC) (GLuint id, GLenum mode); +typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKPROC) (GLenum primitiveMode); +typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONPROC) (GLuint program, GLuint colorNumber, const GLchar* name); +typedef void (GLAPIENTRY * PFNGLCLAMPCOLORPROC) (GLenum target, GLenum clamp); +typedef void (GLAPIENTRY * PFNGLCLEARBUFFERFIPROC) (GLenum buffer, GLint drawBuffer, GLfloat depth, GLint stencil); +typedef void (GLAPIENTRY * PFNGLCLEARBUFFERFVPROC) (GLenum buffer, GLint drawBuffer, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLCLEARBUFFERIVPROC) (GLenum buffer, GLint drawBuffer, const GLint* value); +typedef void (GLAPIENTRY * PFNGLCLEARBUFFERUIVPROC) (GLenum buffer, GLint drawBuffer, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLCOLORMASKIPROC) (GLuint buf, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); +typedef void (GLAPIENTRY * PFNGLDISABLEIPROC) (GLenum cap, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEIPROC) (GLenum cap, GLuint index); +typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERPROC) (void); +typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKPROC) (void); +typedef void (GLAPIENTRY * PFNGLGETBOOLEANI_VPROC) (GLenum pname, GLuint index, GLboolean* data); +typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATALOCATIONPROC) (GLuint program, const GLchar* name); +typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGIPROC) (GLenum name, GLuint index); +typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMUIVPROC) (GLuint program, GLint location, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIIVPROC) (GLuint index, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIUIVPROC) (GLuint index, GLenum pname, GLuint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDIPROC) (GLenum cap, GLuint index); +typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, const GLuint* params); +typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSPROC) (GLuint program, GLsizei count, const GLchar *const* varyings, GLenum bufferMode); +typedef void (GLAPIENTRY * PFNGLUNIFORM1UIPROC) (GLint location, GLuint v0); +typedef void (GLAPIENTRY * PFNGLUNIFORM1UIVPROC) (GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2UIPROC) (GLint location, GLuint v0, GLuint v1); +typedef void (GLAPIENTRY * PFNGLUNIFORM2UIVPROC) (GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2); +typedef void (GLAPIENTRY * PFNGLUNIFORM3UIVPROC) (GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); +typedef void (GLAPIENTRY * PFNGLUNIFORM4UIVPROC) (GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IPROC) (GLuint index, GLint v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IVPROC) (GLuint index, const GLint* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIPROC) (GLuint index, GLuint v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIVPROC) (GLuint index, const GLuint* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IPROC) (GLuint index, GLint v0, GLint v1); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IVPROC) (GLuint index, const GLint* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIPROC) (GLuint index, GLuint v0, GLuint v1); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIVPROC) (GLuint index, const GLuint* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IPROC) (GLuint index, GLint v0, GLint v1, GLint v2); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IVPROC) (GLuint index, const GLint* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIPROC) (GLuint index, GLuint v0, GLuint v1, GLuint v2); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIVPROC) (GLuint index, const GLuint* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4BVPROC) (GLuint index, const GLbyte* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IPROC) (GLuint index, GLint v0, GLint v1, GLint v2, GLint v3); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IVPROC) (GLuint index, const GLint* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4SVPROC) (GLuint index, const GLshort* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UBVPROC) (GLuint index, const GLubyte* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIPROC) (GLuint index, GLuint v0, GLuint v1, GLuint v2, GLuint v3); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIVPROC) (GLuint index, const GLuint* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4USVPROC) (GLuint index, const GLushort* v0); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void*pointer); + +#define glBeginConditionalRender GLEW_GET_FUN(__glewBeginConditionalRender) +#define glBeginTransformFeedback GLEW_GET_FUN(__glewBeginTransformFeedback) +#define glBindFragDataLocation GLEW_GET_FUN(__glewBindFragDataLocation) +#define glClampColor GLEW_GET_FUN(__glewClampColor) +#define glClearBufferfi GLEW_GET_FUN(__glewClearBufferfi) +#define glClearBufferfv GLEW_GET_FUN(__glewClearBufferfv) +#define glClearBufferiv GLEW_GET_FUN(__glewClearBufferiv) +#define glClearBufferuiv GLEW_GET_FUN(__glewClearBufferuiv) +#define glColorMaski GLEW_GET_FUN(__glewColorMaski) +#define glDisablei GLEW_GET_FUN(__glewDisablei) +#define glEnablei GLEW_GET_FUN(__glewEnablei) +#define glEndConditionalRender GLEW_GET_FUN(__glewEndConditionalRender) +#define glEndTransformFeedback GLEW_GET_FUN(__glewEndTransformFeedback) +#define glGetBooleani_v GLEW_GET_FUN(__glewGetBooleani_v) +#define glGetFragDataLocation GLEW_GET_FUN(__glewGetFragDataLocation) +#define glGetStringi GLEW_GET_FUN(__glewGetStringi) +#define glGetTexParameterIiv GLEW_GET_FUN(__glewGetTexParameterIiv) +#define glGetTexParameterIuiv GLEW_GET_FUN(__glewGetTexParameterIuiv) +#define glGetTransformFeedbackVarying GLEW_GET_FUN(__glewGetTransformFeedbackVarying) +#define glGetUniformuiv GLEW_GET_FUN(__glewGetUniformuiv) +#define glGetVertexAttribIiv GLEW_GET_FUN(__glewGetVertexAttribIiv) +#define glGetVertexAttribIuiv GLEW_GET_FUN(__glewGetVertexAttribIuiv) +#define glIsEnabledi GLEW_GET_FUN(__glewIsEnabledi) +#define glTexParameterIiv GLEW_GET_FUN(__glewTexParameterIiv) +#define glTexParameterIuiv GLEW_GET_FUN(__glewTexParameterIuiv) +#define glTransformFeedbackVaryings GLEW_GET_FUN(__glewTransformFeedbackVaryings) +#define glUniform1ui GLEW_GET_FUN(__glewUniform1ui) +#define glUniform1uiv GLEW_GET_FUN(__glewUniform1uiv) +#define glUniform2ui GLEW_GET_FUN(__glewUniform2ui) +#define glUniform2uiv GLEW_GET_FUN(__glewUniform2uiv) +#define glUniform3ui GLEW_GET_FUN(__glewUniform3ui) +#define glUniform3uiv GLEW_GET_FUN(__glewUniform3uiv) +#define glUniform4ui GLEW_GET_FUN(__glewUniform4ui) +#define glUniform4uiv GLEW_GET_FUN(__glewUniform4uiv) +#define glVertexAttribI1i GLEW_GET_FUN(__glewVertexAttribI1i) +#define glVertexAttribI1iv GLEW_GET_FUN(__glewVertexAttribI1iv) +#define glVertexAttribI1ui GLEW_GET_FUN(__glewVertexAttribI1ui) +#define glVertexAttribI1uiv GLEW_GET_FUN(__glewVertexAttribI1uiv) +#define glVertexAttribI2i GLEW_GET_FUN(__glewVertexAttribI2i) +#define glVertexAttribI2iv GLEW_GET_FUN(__glewVertexAttribI2iv) +#define glVertexAttribI2ui GLEW_GET_FUN(__glewVertexAttribI2ui) +#define glVertexAttribI2uiv GLEW_GET_FUN(__glewVertexAttribI2uiv) +#define glVertexAttribI3i GLEW_GET_FUN(__glewVertexAttribI3i) +#define glVertexAttribI3iv GLEW_GET_FUN(__glewVertexAttribI3iv) +#define glVertexAttribI3ui GLEW_GET_FUN(__glewVertexAttribI3ui) +#define glVertexAttribI3uiv GLEW_GET_FUN(__glewVertexAttribI3uiv) +#define glVertexAttribI4bv GLEW_GET_FUN(__glewVertexAttribI4bv) +#define glVertexAttribI4i GLEW_GET_FUN(__glewVertexAttribI4i) +#define glVertexAttribI4iv GLEW_GET_FUN(__glewVertexAttribI4iv) +#define glVertexAttribI4sv GLEW_GET_FUN(__glewVertexAttribI4sv) +#define glVertexAttribI4ubv GLEW_GET_FUN(__glewVertexAttribI4ubv) +#define glVertexAttribI4ui GLEW_GET_FUN(__glewVertexAttribI4ui) +#define glVertexAttribI4uiv GLEW_GET_FUN(__glewVertexAttribI4uiv) +#define glVertexAttribI4usv GLEW_GET_FUN(__glewVertexAttribI4usv) +#define glVertexAttribIPointer GLEW_GET_FUN(__glewVertexAttribIPointer) + +#define GLEW_VERSION_3_0 GLEW_GET_VAR(__GLEW_VERSION_3_0) + +#endif /* GL_VERSION_3_0 */ + +/* ----------------------------- GL_VERSION_3_1 ---------------------------- */ + +#ifndef GL_VERSION_3_1 +#define GL_VERSION_3_1 1 + +#define GL_TEXTURE_RECTANGLE 0x84F5 +#define GL_TEXTURE_BINDING_RECTANGLE 0x84F6 +#define GL_PROXY_TEXTURE_RECTANGLE 0x84F7 +#define GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8 +#define GL_SAMPLER_2D_RECT 0x8B63 +#define GL_SAMPLER_2D_RECT_SHADOW 0x8B64 +#define GL_TEXTURE_BUFFER 0x8C2A +#define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B +#define GL_TEXTURE_BINDING_BUFFER 0x8C2C +#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D +#define GL_TEXTURE_BUFFER_FORMAT 0x8C2E +#define GL_SAMPLER_BUFFER 0x8DC2 +#define GL_INT_SAMPLER_2D_RECT 0x8DCD +#define GL_INT_SAMPLER_BUFFER 0x8DD0 +#define GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5 +#define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8 +#define GL_RED_SNORM 0x8F90 +#define GL_RG_SNORM 0x8F91 +#define GL_RGB_SNORM 0x8F92 +#define GL_RGBA_SNORM 0x8F93 +#define GL_R8_SNORM 0x8F94 +#define GL_RG8_SNORM 0x8F95 +#define GL_RGB8_SNORM 0x8F96 +#define GL_RGBA8_SNORM 0x8F97 +#define GL_R16_SNORM 0x8F98 +#define GL_RG16_SNORM 0x8F99 +#define GL_RGB16_SNORM 0x8F9A +#define GL_RGBA16_SNORM 0x8F9B +#define GL_SIGNED_NORMALIZED 0x8F9C +#define GL_PRIMITIVE_RESTART 0x8F9D +#define GL_PRIMITIVE_RESTART_INDEX 0x8F9E +#define GL_BUFFER_ACCESS_FLAGS 0x911F +#define GL_BUFFER_MAP_LENGTH 0x9120 +#define GL_BUFFER_MAP_OFFSET 0x9121 + +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTINDEXPROC) (GLuint buffer); +typedef void (GLAPIENTRY * PFNGLTEXBUFFERPROC) (GLenum target, GLenum internalFormat, GLuint buffer); + +#define glDrawArraysInstanced GLEW_GET_FUN(__glewDrawArraysInstanced) +#define glDrawElementsInstanced GLEW_GET_FUN(__glewDrawElementsInstanced) +#define glPrimitiveRestartIndex GLEW_GET_FUN(__glewPrimitiveRestartIndex) +#define glTexBuffer GLEW_GET_FUN(__glewTexBuffer) + +#define GLEW_VERSION_3_1 GLEW_GET_VAR(__GLEW_VERSION_3_1) + +#endif /* GL_VERSION_3_1 */ + +/* ----------------------------- GL_VERSION_3_2 ---------------------------- */ + +#ifndef GL_VERSION_3_2 +#define GL_VERSION_3_2 1 + +#define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001 +#define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002 +#define GL_LINES_ADJACENCY 0x000A +#define GL_LINE_STRIP_ADJACENCY 0x000B +#define GL_TRIANGLES_ADJACENCY 0x000C +#define GL_TRIANGLE_STRIP_ADJACENCY 0x000D +#define GL_PROGRAM_POINT_SIZE 0x8642 +#define GL_GEOMETRY_VERTICES_OUT 0x8916 +#define GL_GEOMETRY_INPUT_TYPE 0x8917 +#define GL_GEOMETRY_OUTPUT_TYPE 0x8918 +#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29 +#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8 +#define GL_GEOMETRY_SHADER 0x8DD9 +#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF +#define GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0 +#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1 +#define GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122 +#define GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123 +#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124 +#define GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125 +#define GL_CONTEXT_PROFILE_MASK 0x9126 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERI64VPROC) (GLenum target, GLenum value, GLint64 * data); +typedef void (GLAPIENTRY * PFNGLGETINTEGER64I_VPROC) (GLenum pname, GLuint index, GLint64 * data); + +#define glFramebufferTexture GLEW_GET_FUN(__glewFramebufferTexture) +#define glGetBufferParameteri64v GLEW_GET_FUN(__glewGetBufferParameteri64v) +#define glGetInteger64i_v GLEW_GET_FUN(__glewGetInteger64i_v) + +#define GLEW_VERSION_3_2 GLEW_GET_VAR(__GLEW_VERSION_3_2) + +#endif /* GL_VERSION_3_2 */ + +/* ----------------------------- GL_VERSION_3_3 ---------------------------- */ + +#ifndef GL_VERSION_3_3 +#define GL_VERSION_3_3 1 + +#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE +#define GL_RGB10_A2UI 0x906F + +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORPROC) (GLuint index, GLuint divisor); + +#define glVertexAttribDivisor GLEW_GET_FUN(__glewVertexAttribDivisor) + +#define GLEW_VERSION_3_3 GLEW_GET_VAR(__GLEW_VERSION_3_3) + +#endif /* GL_VERSION_3_3 */ + +/* ----------------------------- GL_VERSION_4_0 ---------------------------- */ + +#ifndef GL_VERSION_4_0 +#define GL_VERSION_4_0 1 + +#define GL_SAMPLE_SHADING 0x8C36 +#define GL_MIN_SAMPLE_SHADING_VALUE 0x8C37 +#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5E +#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5F +#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS 0x8F9F +#define GL_TEXTURE_CUBE_MAP_ARRAY 0x9009 +#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY 0x900A +#define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY 0x900B +#define GL_SAMPLER_CUBE_MAP_ARRAY 0x900C +#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW 0x900D +#define GL_INT_SAMPLER_CUBE_MAP_ARRAY 0x900E +#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY 0x900F + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIPROC) (GLuint buf, GLenum mode); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCIPROC) (GLuint buf, GLenum src, GLenum dst); +typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGPROC) (GLclampf value); + +#define glBlendEquationSeparatei GLEW_GET_FUN(__glewBlendEquationSeparatei) +#define glBlendEquationi GLEW_GET_FUN(__glewBlendEquationi) +#define glBlendFuncSeparatei GLEW_GET_FUN(__glewBlendFuncSeparatei) +#define glBlendFunci GLEW_GET_FUN(__glewBlendFunci) +#define glMinSampleShading GLEW_GET_FUN(__glewMinSampleShading) + +#define GLEW_VERSION_4_0 GLEW_GET_VAR(__GLEW_VERSION_4_0) + +#endif /* GL_VERSION_4_0 */ + +/* ----------------------------- GL_VERSION_4_1 ---------------------------- */ + +#ifndef GL_VERSION_4_1 +#define GL_VERSION_4_1 1 + +#define GLEW_VERSION_4_1 GLEW_GET_VAR(__GLEW_VERSION_4_1) + +#endif /* GL_VERSION_4_1 */ + +/* ----------------------------- GL_VERSION_4_2 ---------------------------- */ + +#ifndef GL_VERSION_4_2 +#define GL_VERSION_4_2 1 + +#define GL_TRANSFORM_FEEDBACK_PAUSED 0x8E23 +#define GL_TRANSFORM_FEEDBACK_ACTIVE 0x8E24 +#define GL_COMPRESSED_RGBA_BPTC_UNORM 0x8E8C +#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM 0x8E8D +#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT 0x8E8E +#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT 0x8E8F +#define GL_COPY_READ_BUFFER_BINDING 0x8F36 +#define GL_COPY_WRITE_BUFFER_BINDING 0x8F37 + +#define GLEW_VERSION_4_2 GLEW_GET_VAR(__GLEW_VERSION_4_2) + +#endif /* GL_VERSION_4_2 */ + +/* ----------------------------- GL_VERSION_4_3 ---------------------------- */ + +#ifndef GL_VERSION_4_3 +#define GL_VERSION_4_3 1 + +#define GL_NUM_SHADING_LANGUAGE_VERSIONS 0x82E9 +#define GL_VERTEX_ATTRIB_ARRAY_LONG 0x874E + +#define GLEW_VERSION_4_3 GLEW_GET_VAR(__GLEW_VERSION_4_3) + +#endif /* GL_VERSION_4_3 */ + +/* ----------------------------- GL_VERSION_4_4 ---------------------------- */ + +#ifndef GL_VERSION_4_4 +#define GL_VERSION_4_4 1 + +#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221 +#define GL_MAX_VERTEX_ATTRIB_STRIDE 0x82E5 +#define GL_TEXTURE_BUFFER_BINDING 0x8C2A + +#define GLEW_VERSION_4_4 GLEW_GET_VAR(__GLEW_VERSION_4_4) + +#endif /* GL_VERSION_4_4 */ + +/* ----------------------------- GL_VERSION_4_5 ---------------------------- */ + +#ifndef GL_VERSION_4_5 +#define GL_VERSION_4_5 1 + +#define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT 0x00000004 + +typedef GLenum (GLAPIENTRY * PFNGLGETGRAPHICSRESETSTATUSPROC) (void); +typedef void (GLAPIENTRY * PFNGLGETNCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint lod, GLsizei bufSize, GLvoid *pixels); +typedef void (GLAPIENTRY * PFNGLGETNTEXIMAGEPROC) (GLenum tex, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *pixels); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMDVPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble *params); + +#define glGetGraphicsResetStatus GLEW_GET_FUN(__glewGetGraphicsResetStatus) +#define glGetnCompressedTexImage GLEW_GET_FUN(__glewGetnCompressedTexImage) +#define glGetnTexImage GLEW_GET_FUN(__glewGetnTexImage) +#define glGetnUniformdv GLEW_GET_FUN(__glewGetnUniformdv) + +#define GLEW_VERSION_4_5 GLEW_GET_VAR(__GLEW_VERSION_4_5) + +#endif /* GL_VERSION_4_5 */ + +/* ----------------------------- GL_VERSION_4_6 ---------------------------- */ + +#ifndef GL_VERSION_4_6 +#define GL_VERSION_4_6 1 + +#define GL_CONTEXT_FLAG_NO_ERROR_BIT 0x00000008 +#define GL_PARAMETER_BUFFER 0x80EE +#define GL_PARAMETER_BUFFER_BINDING 0x80EF +#define GL_TRANSFORM_FEEDBACK_OVERFLOW 0x82EC +#define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW 0x82ED +#define GL_VERTICES_SUBMITTED 0x82EE +#define GL_PRIMITIVES_SUBMITTED 0x82EF +#define GL_VERTEX_SHADER_INVOCATIONS 0x82F0 +#define GL_TESS_CONTROL_SHADER_PATCHES 0x82F1 +#define GL_TESS_EVALUATION_SHADER_INVOCATIONS 0x82F2 +#define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED 0x82F3 +#define GL_FRAGMENT_SHADER_INVOCATIONS 0x82F4 +#define GL_COMPUTE_SHADER_INVOCATIONS 0x82F5 +#define GL_CLIPPING_INPUT_PRIMITIVES 0x82F6 +#define GL_CLIPPING_OUTPUT_PRIMITIVES 0x82F7 +#define GL_TEXTURE_MAX_ANISOTROPY 0x84FE +#define GL_MAX_TEXTURE_MAX_ANISOTROPY 0x84FF +#define GL_POLYGON_OFFSET_CLAMP 0x8E1B +#define GL_SHADER_BINARY_FORMAT_SPIR_V 0x9551 +#define GL_SPIR_V_BINARY 0x9552 +#define GL_SPIR_V_EXTENSIONS 0x9553 +#define GL_NUM_SPIR_V_EXTENSIONS 0x9554 + +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC) (GLenum mode, const GLvoid *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC) (GLenum mode, GLenum type, const GLvoid *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLSPECIALIZESHADERPROC) (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue); + +#define glMultiDrawArraysIndirectCount GLEW_GET_FUN(__glewMultiDrawArraysIndirectCount) +#define glMultiDrawElementsIndirectCount GLEW_GET_FUN(__glewMultiDrawElementsIndirectCount) +#define glSpecializeShader GLEW_GET_FUN(__glewSpecializeShader) + +#define GLEW_VERSION_4_6 GLEW_GET_VAR(__GLEW_VERSION_4_6) + +#endif /* GL_VERSION_4_6 */ + +/* -------------------------- GL_3DFX_multisample -------------------------- */ + +#ifndef GL_3DFX_multisample +#define GL_3DFX_multisample 1 + +#define GL_MULTISAMPLE_3DFX 0x86B2 +#define GL_SAMPLE_BUFFERS_3DFX 0x86B3 +#define GL_SAMPLES_3DFX 0x86B4 +#define GL_MULTISAMPLE_BIT_3DFX 0x20000000 + +#define GLEW_3DFX_multisample GLEW_GET_VAR(__GLEW_3DFX_multisample) + +#endif /* GL_3DFX_multisample */ + +/* ---------------------------- GL_3DFX_tbuffer ---------------------------- */ + +#ifndef GL_3DFX_tbuffer +#define GL_3DFX_tbuffer 1 + +typedef void (GLAPIENTRY * PFNGLTBUFFERMASK3DFXPROC) (GLuint mask); + +#define glTbufferMask3DFX GLEW_GET_FUN(__glewTbufferMask3DFX) + +#define GLEW_3DFX_tbuffer GLEW_GET_VAR(__GLEW_3DFX_tbuffer) + +#endif /* GL_3DFX_tbuffer */ + +/* -------------------- GL_3DFX_texture_compression_FXT1 ------------------- */ + +#ifndef GL_3DFX_texture_compression_FXT1 +#define GL_3DFX_texture_compression_FXT1 1 + +#define GL_COMPRESSED_RGB_FXT1_3DFX 0x86B0 +#define GL_COMPRESSED_RGBA_FXT1_3DFX 0x86B1 + +#define GLEW_3DFX_texture_compression_FXT1 GLEW_GET_VAR(__GLEW_3DFX_texture_compression_FXT1) + +#endif /* GL_3DFX_texture_compression_FXT1 */ + +/* ----------------------- GL_AMD_blend_minmax_factor ---------------------- */ + +#ifndef GL_AMD_blend_minmax_factor +#define GL_AMD_blend_minmax_factor 1 + +#define GL_FACTOR_MIN_AMD 0x901C +#define GL_FACTOR_MAX_AMD 0x901D + +#define GLEW_AMD_blend_minmax_factor GLEW_GET_VAR(__GLEW_AMD_blend_minmax_factor) + +#endif /* GL_AMD_blend_minmax_factor */ + +/* --------------------- GL_AMD_compressed_3DC_texture --------------------- */ + +#ifndef GL_AMD_compressed_3DC_texture +#define GL_AMD_compressed_3DC_texture 1 + +#define GL_3DC_X_AMD 0x87F9 +#define GL_3DC_XY_AMD 0x87FA + +#define GLEW_AMD_compressed_3DC_texture GLEW_GET_VAR(__GLEW_AMD_compressed_3DC_texture) + +#endif /* GL_AMD_compressed_3DC_texture */ + +/* --------------------- GL_AMD_compressed_ATC_texture --------------------- */ + +#ifndef GL_AMD_compressed_ATC_texture +#define GL_AMD_compressed_ATC_texture 1 + +#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE +#define GL_ATC_RGB_AMD 0x8C92 +#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 + +#define GLEW_AMD_compressed_ATC_texture GLEW_GET_VAR(__GLEW_AMD_compressed_ATC_texture) + +#endif /* GL_AMD_compressed_ATC_texture */ + +/* ----------------------- GL_AMD_conservative_depth ----------------------- */ + +#ifndef GL_AMD_conservative_depth +#define GL_AMD_conservative_depth 1 + +#define GLEW_AMD_conservative_depth GLEW_GET_VAR(__GLEW_AMD_conservative_depth) + +#endif /* GL_AMD_conservative_depth */ + +/* -------------------------- GL_AMD_debug_output -------------------------- */ + +#ifndef GL_AMD_debug_output +#define GL_AMD_debug_output 1 + +#define GL_MAX_DEBUG_MESSAGE_LENGTH_AMD 0x9143 +#define GL_MAX_DEBUG_LOGGED_MESSAGES_AMD 0x9144 +#define GL_DEBUG_LOGGED_MESSAGES_AMD 0x9145 +#define GL_DEBUG_SEVERITY_HIGH_AMD 0x9146 +#define GL_DEBUG_SEVERITY_MEDIUM_AMD 0x9147 +#define GL_DEBUG_SEVERITY_LOW_AMD 0x9148 +#define GL_DEBUG_CATEGORY_API_ERROR_AMD 0x9149 +#define GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD 0x914A +#define GL_DEBUG_CATEGORY_DEPRECATION_AMD 0x914B +#define GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD 0x914C +#define GL_DEBUG_CATEGORY_PERFORMANCE_AMD 0x914D +#define GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD 0x914E +#define GL_DEBUG_CATEGORY_APPLICATION_AMD 0x914F +#define GL_DEBUG_CATEGORY_OTHER_AMD 0x9150 + +typedef void (GLAPIENTRY *GLDEBUGPROCAMD)(GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar* message, void* userParam); + +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACKAMDPROC) (GLDEBUGPROCAMD callback, void *userParam); +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEENABLEAMDPROC) (GLenum category, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled); +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERTAMDPROC) (GLenum category, GLenum severity, GLuint id, GLsizei length, const GLchar* buf); +typedef GLuint (GLAPIENTRY * PFNGLGETDEBUGMESSAGELOGAMDPROC) (GLuint count, GLsizei bufsize, GLenum* categories, GLuint* severities, GLuint* ids, GLsizei* lengths, GLchar* message); + +#define glDebugMessageCallbackAMD GLEW_GET_FUN(__glewDebugMessageCallbackAMD) +#define glDebugMessageEnableAMD GLEW_GET_FUN(__glewDebugMessageEnableAMD) +#define glDebugMessageInsertAMD GLEW_GET_FUN(__glewDebugMessageInsertAMD) +#define glGetDebugMessageLogAMD GLEW_GET_FUN(__glewGetDebugMessageLogAMD) + +#define GLEW_AMD_debug_output GLEW_GET_VAR(__GLEW_AMD_debug_output) + +#endif /* GL_AMD_debug_output */ + +/* ---------------------- GL_AMD_depth_clamp_separate ---------------------- */ + +#ifndef GL_AMD_depth_clamp_separate +#define GL_AMD_depth_clamp_separate 1 + +#define GL_DEPTH_CLAMP_NEAR_AMD 0x901E +#define GL_DEPTH_CLAMP_FAR_AMD 0x901F + +#define GLEW_AMD_depth_clamp_separate GLEW_GET_VAR(__GLEW_AMD_depth_clamp_separate) + +#endif /* GL_AMD_depth_clamp_separate */ + +/* ----------------------- GL_AMD_draw_buffers_blend ----------------------- */ + +#ifndef GL_AMD_draw_buffers_blend +#define GL_AMD_draw_buffers_blend 1 + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONINDEXEDAMDPROC) (GLuint buf, GLenum mode); +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCINDEXEDAMDPROC) (GLuint buf, GLenum src, GLenum dst); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); + +#define glBlendEquationIndexedAMD GLEW_GET_FUN(__glewBlendEquationIndexedAMD) +#define glBlendEquationSeparateIndexedAMD GLEW_GET_FUN(__glewBlendEquationSeparateIndexedAMD) +#define glBlendFuncIndexedAMD GLEW_GET_FUN(__glewBlendFuncIndexedAMD) +#define glBlendFuncSeparateIndexedAMD GLEW_GET_FUN(__glewBlendFuncSeparateIndexedAMD) + +#define GLEW_AMD_draw_buffers_blend GLEW_GET_VAR(__GLEW_AMD_draw_buffers_blend) + +#endif /* GL_AMD_draw_buffers_blend */ + +/* ---------------- GL_AMD_framebuffer_multisample_advanced ---------------- */ + +#ifndef GL_AMD_framebuffer_multisample_advanced +#define GL_AMD_framebuffer_multisample_advanced 1 + +#define GL_RENDERBUFFER_STORAGE_SAMPLES_AMD 0x91B2 +#define GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD 0x91B3 +#define GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD 0x91B4 +#define GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD 0x91B5 +#define GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD 0x91B6 +#define GL_SUPPORTED_MULTISAMPLE_MODES_AMD 0x91B7 + +typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC) (GLuint renderbuffer, GLsizei samples, GLsizei storageSamples, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC) (GLenum target, GLsizei samples, GLsizei storageSamples, GLenum internalformat, GLsizei width, GLsizei height); + +#define glNamedRenderbufferStorageMultisampleAdvancedAMD GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleAdvancedAMD) +#define glRenderbufferStorageMultisampleAdvancedAMD GLEW_GET_FUN(__glewRenderbufferStorageMultisampleAdvancedAMD) + +#define GLEW_AMD_framebuffer_multisample_advanced GLEW_GET_VAR(__GLEW_AMD_framebuffer_multisample_advanced) + +#endif /* GL_AMD_framebuffer_multisample_advanced */ + +/* ------------------ GL_AMD_framebuffer_sample_positions ------------------ */ + +#ifndef GL_AMD_framebuffer_sample_positions +#define GL_AMD_framebuffer_sample_positions 1 + +#define GL_SUBSAMPLE_DISTANCE_AMD 0x883F +#define GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD 0x91AE +#define GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD 0x91AF +#define GL_ALL_PIXELS_AMD 0xFFFFFFFF + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC) (GLenum target, GLuint numsamples, GLuint pixelindex, const GLfloat* values); +typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERFVAMDPROC) (GLenum target, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values); +typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERPARAMETERFVAMDPROC) (GLuint framebuffer, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC) (GLuint framebuffer, GLuint numsamples, GLuint pixelindex, const GLfloat* values); + +#define glFramebufferSamplePositionsfvAMD GLEW_GET_FUN(__glewFramebufferSamplePositionsfvAMD) +#define glGetFramebufferParameterfvAMD GLEW_GET_FUN(__glewGetFramebufferParameterfvAMD) +#define glGetNamedFramebufferParameterfvAMD GLEW_GET_FUN(__glewGetNamedFramebufferParameterfvAMD) +#define glNamedFramebufferSamplePositionsfvAMD GLEW_GET_FUN(__glewNamedFramebufferSamplePositionsfvAMD) + +#define GLEW_AMD_framebuffer_sample_positions GLEW_GET_VAR(__GLEW_AMD_framebuffer_sample_positions) + +#endif /* GL_AMD_framebuffer_sample_positions */ + +/* --------------------------- GL_AMD_gcn_shader --------------------------- */ + +#ifndef GL_AMD_gcn_shader +#define GL_AMD_gcn_shader 1 + +#define GLEW_AMD_gcn_shader GLEW_GET_VAR(__GLEW_AMD_gcn_shader) + +#endif /* GL_AMD_gcn_shader */ + +/* ---------------------- GL_AMD_gpu_shader_half_float --------------------- */ + +#ifndef GL_AMD_gpu_shader_half_float +#define GL_AMD_gpu_shader_half_float 1 + +#define GL_FLOAT16_NV 0x8FF8 +#define GL_FLOAT16_VEC2_NV 0x8FF9 +#define GL_FLOAT16_VEC3_NV 0x8FFA +#define GL_FLOAT16_VEC4_NV 0x8FFB +#define GL_FLOAT16_MAT2_AMD 0x91C5 +#define GL_FLOAT16_MAT3_AMD 0x91C6 +#define GL_FLOAT16_MAT4_AMD 0x91C7 +#define GL_FLOAT16_MAT2x3_AMD 0x91C8 +#define GL_FLOAT16_MAT2x4_AMD 0x91C9 +#define GL_FLOAT16_MAT3x2_AMD 0x91CA +#define GL_FLOAT16_MAT3x4_AMD 0x91CB +#define GL_FLOAT16_MAT4x2_AMD 0x91CC +#define GL_FLOAT16_MAT4x3_AMD 0x91CD + +#define GLEW_AMD_gpu_shader_half_float GLEW_GET_VAR(__GLEW_AMD_gpu_shader_half_float) + +#endif /* GL_AMD_gpu_shader_half_float */ + +/* ------------------- GL_AMD_gpu_shader_half_float_fetch ------------------ */ + +#ifndef GL_AMD_gpu_shader_half_float_fetch +#define GL_AMD_gpu_shader_half_float_fetch 1 + +#define GL_FLOAT16_SAMPLER_1D_AMD 0x91CE +#define GL_FLOAT16_SAMPLER_2D_AMD 0x91CF +#define GL_FLOAT16_SAMPLER_3D_AMD 0x91D0 +#define GL_FLOAT16_SAMPLER_CUBE_AMD 0x91D1 +#define GL_FLOAT16_SAMPLER_2D_RECT_AMD 0x91D2 +#define GL_FLOAT16_SAMPLER_1D_ARRAY_AMD 0x91D3 +#define GL_FLOAT16_SAMPLER_2D_ARRAY_AMD 0x91D4 +#define GL_FLOAT16_SAMPLER_CUBE_MAP_ARRAY_AMD 0x91D5 +#define GL_FLOAT16_SAMPLER_BUFFER_AMD 0x91D6 +#define GL_FLOAT16_SAMPLER_2D_MULTISAMPLE_AMD 0x91D7 +#define GL_FLOAT16_SAMPLER_2D_MULTISAMPLE_ARRAY_AMD 0x91D8 +#define GL_FLOAT16_SAMPLER_1D_SHADOW_AMD 0x91D9 +#define GL_FLOAT16_SAMPLER_2D_SHADOW_AMD 0x91DA +#define GL_FLOAT16_SAMPLER_2D_RECT_SHADOW_AMD 0x91DB +#define GL_FLOAT16_SAMPLER_1D_ARRAY_SHADOW_AMD 0x91DC +#define GL_FLOAT16_SAMPLER_2D_ARRAY_SHADOW_AMD 0x91DD +#define GL_FLOAT16_SAMPLER_CUBE_SHADOW_AMD 0x91DE +#define GL_FLOAT16_SAMPLER_CUBE_MAP_ARRAY_SHADOW_AMD 0x91DF +#define GL_FLOAT16_IMAGE_1D_AMD 0x91E0 +#define GL_FLOAT16_IMAGE_2D_AMD 0x91E1 +#define GL_FLOAT16_IMAGE_3D_AMD 0x91E2 +#define GL_FLOAT16_IMAGE_2D_RECT_AMD 0x91E3 +#define GL_FLOAT16_IMAGE_CUBE_AMD 0x91E4 +#define GL_FLOAT16_IMAGE_1D_ARRAY_AMD 0x91E5 +#define GL_FLOAT16_IMAGE_2D_ARRAY_AMD 0x91E6 +#define GL_FLOAT16_IMAGE_CUBE_MAP_ARRAY_AMD 0x91E7 +#define GL_FLOAT16_IMAGE_BUFFER_AMD 0x91E8 +#define GL_FLOAT16_IMAGE_2D_MULTISAMPLE_AMD 0x91E9 +#define GL_FLOAT16_IMAGE_2D_MULTISAMPLE_ARRAY_AMD 0x91EA + +#define GLEW_AMD_gpu_shader_half_float_fetch GLEW_GET_VAR(__GLEW_AMD_gpu_shader_half_float_fetch) + +#endif /* GL_AMD_gpu_shader_half_float_fetch */ + +/* ------------------------ GL_AMD_gpu_shader_int16 ------------------------ */ + +#ifndef GL_AMD_gpu_shader_int16 +#define GL_AMD_gpu_shader_int16 1 + +#define GLEW_AMD_gpu_shader_int16 GLEW_GET_VAR(__GLEW_AMD_gpu_shader_int16) + +#endif /* GL_AMD_gpu_shader_int16 */ + +/* ------------------------ GL_AMD_gpu_shader_int64 ------------------------ */ + +#ifndef GL_AMD_gpu_shader_int64 +#define GL_AMD_gpu_shader_int64 1 + +#define GLEW_AMD_gpu_shader_int64 GLEW_GET_VAR(__GLEW_AMD_gpu_shader_int64) + +#endif /* GL_AMD_gpu_shader_int64 */ + +/* ---------------------- GL_AMD_interleaved_elements ---------------------- */ + +#ifndef GL_AMD_interleaved_elements +#define GL_AMD_interleaved_elements 1 + +#define GL_RED 0x1903 +#define GL_GREEN 0x1904 +#define GL_BLUE 0x1905 +#define GL_ALPHA 0x1906 +#define GL_RG8UI 0x8238 +#define GL_RG16UI 0x823A +#define GL_RGBA8UI 0x8D7C +#define GL_VERTEX_ELEMENT_SWIZZLE_AMD 0x91A4 +#define GL_VERTEX_ID_SWIZZLE_AMD 0x91A5 + +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPARAMETERIAMDPROC) (GLuint index, GLenum pname, GLint param); + +#define glVertexAttribParameteriAMD GLEW_GET_FUN(__glewVertexAttribParameteriAMD) + +#define GLEW_AMD_interleaved_elements GLEW_GET_VAR(__GLEW_AMD_interleaved_elements) + +#endif /* GL_AMD_interleaved_elements */ + +/* ----------------------- GL_AMD_multi_draw_indirect ---------------------- */ + +#ifndef GL_AMD_multi_draw_indirect +#define GL_AMD_multi_draw_indirect 1 + +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC) (GLenum mode, const void *indirect, GLsizei primcount, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei primcount, GLsizei stride); + +#define glMultiDrawArraysIndirectAMD GLEW_GET_FUN(__glewMultiDrawArraysIndirectAMD) +#define glMultiDrawElementsIndirectAMD GLEW_GET_FUN(__glewMultiDrawElementsIndirectAMD) + +#define GLEW_AMD_multi_draw_indirect GLEW_GET_VAR(__GLEW_AMD_multi_draw_indirect) + +#endif /* GL_AMD_multi_draw_indirect */ + +/* ------------------------- GL_AMD_name_gen_delete ------------------------ */ + +#ifndef GL_AMD_name_gen_delete +#define GL_AMD_name_gen_delete 1 + +#define GL_DATA_BUFFER_AMD 0x9151 +#define GL_PERFORMANCE_MONITOR_AMD 0x9152 +#define GL_QUERY_OBJECT_AMD 0x9153 +#define GL_VERTEX_ARRAY_OBJECT_AMD 0x9154 +#define GL_SAMPLER_OBJECT_AMD 0x9155 + +typedef void (GLAPIENTRY * PFNGLDELETENAMESAMDPROC) (GLenum identifier, GLuint num, const GLuint* names); +typedef void (GLAPIENTRY * PFNGLGENNAMESAMDPROC) (GLenum identifier, GLuint num, GLuint* names); +typedef GLboolean (GLAPIENTRY * PFNGLISNAMEAMDPROC) (GLenum identifier, GLuint name); + +#define glDeleteNamesAMD GLEW_GET_FUN(__glewDeleteNamesAMD) +#define glGenNamesAMD GLEW_GET_FUN(__glewGenNamesAMD) +#define glIsNameAMD GLEW_GET_FUN(__glewIsNameAMD) + +#define GLEW_AMD_name_gen_delete GLEW_GET_VAR(__GLEW_AMD_name_gen_delete) + +#endif /* GL_AMD_name_gen_delete */ + +/* ---------------------- GL_AMD_occlusion_query_event --------------------- */ + +#ifndef GL_AMD_occlusion_query_event +#define GL_AMD_occlusion_query_event 1 + +#define GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD 0x00000001 +#define GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD 0x00000002 +#define GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD 0x00000004 +#define GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD 0x00000008 +#define GL_OCCLUSION_QUERY_EVENT_MASK_AMD 0x874F +#define GL_QUERY_ALL_EVENT_BITS_AMD 0xFFFFFFFF + +typedef void (GLAPIENTRY * PFNGLQUERYOBJECTPARAMETERUIAMDPROC) (GLenum target, GLuint id, GLenum pname, GLuint param); + +#define glQueryObjectParameteruiAMD GLEW_GET_FUN(__glewQueryObjectParameteruiAMD) + +#define GLEW_AMD_occlusion_query_event GLEW_GET_VAR(__GLEW_AMD_occlusion_query_event) + +#endif /* GL_AMD_occlusion_query_event */ + +/* ----------------------- GL_AMD_performance_monitor ---------------------- */ + +#ifndef GL_AMD_performance_monitor +#define GL_AMD_performance_monitor 1 + +#define GL_COUNTER_TYPE_AMD 0x8BC0 +#define GL_COUNTER_RANGE_AMD 0x8BC1 +#define GL_UNSIGNED_INT64_AMD 0x8BC2 +#define GL_PERCENTAGE_AMD 0x8BC3 +#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4 +#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5 +#define GL_PERFMON_RESULT_AMD 0x8BC6 + +typedef void (GLAPIENTRY * PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor); +typedef void (GLAPIENTRY * PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint* monitors); +typedef void (GLAPIENTRY * PFNGLENDPERFMONITORAMDPROC) (GLuint monitor); +typedef void (GLAPIENTRY * PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint* monitors); +typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint *bytesWritten); +typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, void *data); +typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, GLchar *counterString); +typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint* numCounters, GLint *maxActiveCounters, GLsizei countersSize, GLuint *counters); +typedef void (GLAPIENTRY * PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei* length, GLchar *groupString); +typedef void (GLAPIENTRY * PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint* numGroups, GLsizei groupsSize, GLuint *groups); +typedef void (GLAPIENTRY * PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList); + +#define glBeginPerfMonitorAMD GLEW_GET_FUN(__glewBeginPerfMonitorAMD) +#define glDeletePerfMonitorsAMD GLEW_GET_FUN(__glewDeletePerfMonitorsAMD) +#define glEndPerfMonitorAMD GLEW_GET_FUN(__glewEndPerfMonitorAMD) +#define glGenPerfMonitorsAMD GLEW_GET_FUN(__glewGenPerfMonitorsAMD) +#define glGetPerfMonitorCounterDataAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterDataAMD) +#define glGetPerfMonitorCounterInfoAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterInfoAMD) +#define glGetPerfMonitorCounterStringAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterStringAMD) +#define glGetPerfMonitorCountersAMD GLEW_GET_FUN(__glewGetPerfMonitorCountersAMD) +#define glGetPerfMonitorGroupStringAMD GLEW_GET_FUN(__glewGetPerfMonitorGroupStringAMD) +#define glGetPerfMonitorGroupsAMD GLEW_GET_FUN(__glewGetPerfMonitorGroupsAMD) +#define glSelectPerfMonitorCountersAMD GLEW_GET_FUN(__glewSelectPerfMonitorCountersAMD) + +#define GLEW_AMD_performance_monitor GLEW_GET_VAR(__GLEW_AMD_performance_monitor) + +#endif /* GL_AMD_performance_monitor */ + +/* -------------------------- GL_AMD_pinned_memory ------------------------- */ + +#ifndef GL_AMD_pinned_memory +#define GL_AMD_pinned_memory 1 + +#define GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD 0x9160 + +#define GLEW_AMD_pinned_memory GLEW_GET_VAR(__GLEW_AMD_pinned_memory) + +#endif /* GL_AMD_pinned_memory */ + +/* ----------------------- GL_AMD_program_binary_Z400 ---------------------- */ + +#ifndef GL_AMD_program_binary_Z400 +#define GL_AMD_program_binary_Z400 1 + +#define GL_Z400_BINARY_AMD 0x8740 + +#define GLEW_AMD_program_binary_Z400 GLEW_GET_VAR(__GLEW_AMD_program_binary_Z400) + +#endif /* GL_AMD_program_binary_Z400 */ + +/* ----------------------- GL_AMD_query_buffer_object ---------------------- */ + +#ifndef GL_AMD_query_buffer_object +#define GL_AMD_query_buffer_object 1 + +#define GL_QUERY_BUFFER_AMD 0x9192 +#define GL_QUERY_BUFFER_BINDING_AMD 0x9193 +#define GL_QUERY_RESULT_NO_WAIT_AMD 0x9194 + +#define GLEW_AMD_query_buffer_object GLEW_GET_VAR(__GLEW_AMD_query_buffer_object) + +#endif /* GL_AMD_query_buffer_object */ + +/* ------------------------ GL_AMD_sample_positions ------------------------ */ + +#ifndef GL_AMD_sample_positions +#define GL_AMD_sample_positions 1 + +#define GL_SUBSAMPLE_DISTANCE_AMD 0x883F + +typedef void (GLAPIENTRY * PFNGLSETMULTISAMPLEFVAMDPROC) (GLenum pname, GLuint index, const GLfloat* val); + +#define glSetMultisamplefvAMD GLEW_GET_FUN(__glewSetMultisamplefvAMD) + +#define GLEW_AMD_sample_positions GLEW_GET_VAR(__GLEW_AMD_sample_positions) + +#endif /* GL_AMD_sample_positions */ + +/* ------------------ GL_AMD_seamless_cubemap_per_texture ------------------ */ + +#ifndef GL_AMD_seamless_cubemap_per_texture +#define GL_AMD_seamless_cubemap_per_texture 1 + +#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F + +#define GLEW_AMD_seamless_cubemap_per_texture GLEW_GET_VAR(__GLEW_AMD_seamless_cubemap_per_texture) + +#endif /* GL_AMD_seamless_cubemap_per_texture */ + +/* -------------------- GL_AMD_shader_atomic_counter_ops ------------------- */ + +#ifndef GL_AMD_shader_atomic_counter_ops +#define GL_AMD_shader_atomic_counter_ops 1 + +#define GLEW_AMD_shader_atomic_counter_ops GLEW_GET_VAR(__GLEW_AMD_shader_atomic_counter_ops) + +#endif /* GL_AMD_shader_atomic_counter_ops */ + +/* -------------------------- GL_AMD_shader_ballot ------------------------- */ + +#ifndef GL_AMD_shader_ballot +#define GL_AMD_shader_ballot 1 + +#define GLEW_AMD_shader_ballot GLEW_GET_VAR(__GLEW_AMD_shader_ballot) + +#endif /* GL_AMD_shader_ballot */ + +/* ---------------- GL_AMD_shader_explicit_vertex_parameter ---------------- */ + +#ifndef GL_AMD_shader_explicit_vertex_parameter +#define GL_AMD_shader_explicit_vertex_parameter 1 + +#define GLEW_AMD_shader_explicit_vertex_parameter GLEW_GET_VAR(__GLEW_AMD_shader_explicit_vertex_parameter) + +#endif /* GL_AMD_shader_explicit_vertex_parameter */ + +/* ------------------- GL_AMD_shader_image_load_store_lod ------------------ */ + +#ifndef GL_AMD_shader_image_load_store_lod +#define GL_AMD_shader_image_load_store_lod 1 + +#define GLEW_AMD_shader_image_load_store_lod GLEW_GET_VAR(__GLEW_AMD_shader_image_load_store_lod) + +#endif /* GL_AMD_shader_image_load_store_lod */ + +/* ---------------------- GL_AMD_shader_stencil_export --------------------- */ + +#ifndef GL_AMD_shader_stencil_export +#define GL_AMD_shader_stencil_export 1 + +#define GLEW_AMD_shader_stencil_export GLEW_GET_VAR(__GLEW_AMD_shader_stencil_export) + +#endif /* GL_AMD_shader_stencil_export */ + +/* ------------------- GL_AMD_shader_stencil_value_export ------------------ */ + +#ifndef GL_AMD_shader_stencil_value_export +#define GL_AMD_shader_stencil_value_export 1 + +#define GLEW_AMD_shader_stencil_value_export GLEW_GET_VAR(__GLEW_AMD_shader_stencil_value_export) + +#endif /* GL_AMD_shader_stencil_value_export */ + +/* ---------------------- GL_AMD_shader_trinary_minmax --------------------- */ + +#ifndef GL_AMD_shader_trinary_minmax +#define GL_AMD_shader_trinary_minmax 1 + +#define GLEW_AMD_shader_trinary_minmax GLEW_GET_VAR(__GLEW_AMD_shader_trinary_minmax) + +#endif /* GL_AMD_shader_trinary_minmax */ + +/* ------------------------- GL_AMD_sparse_texture ------------------------- */ + +#ifndef GL_AMD_sparse_texture +#define GL_AMD_sparse_texture 1 + +#define GL_TEXTURE_STORAGE_SPARSE_BIT_AMD 0x00000001 +#define GL_VIRTUAL_PAGE_SIZE_X_AMD 0x9195 +#define GL_VIRTUAL_PAGE_SIZE_Y_AMD 0x9196 +#define GL_VIRTUAL_PAGE_SIZE_Z_AMD 0x9197 +#define GL_MAX_SPARSE_TEXTURE_SIZE_AMD 0x9198 +#define GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD 0x9199 +#define GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS 0x919A +#define GL_MIN_SPARSE_LEVEL_AMD 0x919B +#define GL_MIN_LOD_WARNING_AMD 0x919C + +typedef void (GLAPIENTRY * PFNGLTEXSTORAGESPARSEAMDPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGESPARSEAMDPROC) (GLuint texture, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags); + +#define glTexStorageSparseAMD GLEW_GET_FUN(__glewTexStorageSparseAMD) +#define glTextureStorageSparseAMD GLEW_GET_FUN(__glewTextureStorageSparseAMD) + +#define GLEW_AMD_sparse_texture GLEW_GET_VAR(__GLEW_AMD_sparse_texture) + +#endif /* GL_AMD_sparse_texture */ + +/* ------------------- GL_AMD_stencil_operation_extended ------------------- */ + +#ifndef GL_AMD_stencil_operation_extended +#define GL_AMD_stencil_operation_extended 1 + +#define GL_SET_AMD 0x874A +#define GL_REPLACE_VALUE_AMD 0x874B +#define GL_STENCIL_OP_VALUE_AMD 0x874C +#define GL_STENCIL_BACK_OP_VALUE_AMD 0x874D + +typedef void (GLAPIENTRY * PFNGLSTENCILOPVALUEAMDPROC) (GLenum face, GLuint value); + +#define glStencilOpValueAMD GLEW_GET_FUN(__glewStencilOpValueAMD) + +#define GLEW_AMD_stencil_operation_extended GLEW_GET_VAR(__GLEW_AMD_stencil_operation_extended) + +#endif /* GL_AMD_stencil_operation_extended */ + +/* --------------------- GL_AMD_texture_gather_bias_lod -------------------- */ + +#ifndef GL_AMD_texture_gather_bias_lod +#define GL_AMD_texture_gather_bias_lod 1 + +#define GLEW_AMD_texture_gather_bias_lod GLEW_GET_VAR(__GLEW_AMD_texture_gather_bias_lod) + +#endif /* GL_AMD_texture_gather_bias_lod */ + +/* ------------------------ GL_AMD_texture_texture4 ------------------------ */ + +#ifndef GL_AMD_texture_texture4 +#define GL_AMD_texture_texture4 1 + +#define GLEW_AMD_texture_texture4 GLEW_GET_VAR(__GLEW_AMD_texture_texture4) + +#endif /* GL_AMD_texture_texture4 */ + +/* --------------- GL_AMD_transform_feedback3_lines_triangles -------------- */ + +#ifndef GL_AMD_transform_feedback3_lines_triangles +#define GL_AMD_transform_feedback3_lines_triangles 1 + +#define GLEW_AMD_transform_feedback3_lines_triangles GLEW_GET_VAR(__GLEW_AMD_transform_feedback3_lines_triangles) + +#endif /* GL_AMD_transform_feedback3_lines_triangles */ + +/* ----------------------- GL_AMD_transform_feedback4 ---------------------- */ + +#ifndef GL_AMD_transform_feedback4 +#define GL_AMD_transform_feedback4 1 + +#define GL_STREAM_RASTERIZATION_AMD 0x91A0 + +#define GLEW_AMD_transform_feedback4 GLEW_GET_VAR(__GLEW_AMD_transform_feedback4) + +#endif /* GL_AMD_transform_feedback4 */ + +/* ----------------------- GL_AMD_vertex_shader_layer ---------------------- */ + +#ifndef GL_AMD_vertex_shader_layer +#define GL_AMD_vertex_shader_layer 1 + +#define GLEW_AMD_vertex_shader_layer GLEW_GET_VAR(__GLEW_AMD_vertex_shader_layer) + +#endif /* GL_AMD_vertex_shader_layer */ + +/* -------------------- GL_AMD_vertex_shader_tessellator ------------------- */ + +#ifndef GL_AMD_vertex_shader_tessellator +#define GL_AMD_vertex_shader_tessellator 1 + +#define GL_SAMPLER_BUFFER_AMD 0x9001 +#define GL_INT_SAMPLER_BUFFER_AMD 0x9002 +#define GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD 0x9003 +#define GL_TESSELLATION_MODE_AMD 0x9004 +#define GL_TESSELLATION_FACTOR_AMD 0x9005 +#define GL_DISCRETE_AMD 0x9006 +#define GL_CONTINUOUS_AMD 0x9007 + +typedef void (GLAPIENTRY * PFNGLTESSELLATIONFACTORAMDPROC) (GLfloat factor); +typedef void (GLAPIENTRY * PFNGLTESSELLATIONMODEAMDPROC) (GLenum mode); + +#define glTessellationFactorAMD GLEW_GET_FUN(__glewTessellationFactorAMD) +#define glTessellationModeAMD GLEW_GET_FUN(__glewTessellationModeAMD) + +#define GLEW_AMD_vertex_shader_tessellator GLEW_GET_VAR(__GLEW_AMD_vertex_shader_tessellator) + +#endif /* GL_AMD_vertex_shader_tessellator */ + +/* ------------------ GL_AMD_vertex_shader_viewport_index ------------------ */ + +#ifndef GL_AMD_vertex_shader_viewport_index +#define GL_AMD_vertex_shader_viewport_index 1 + +#define GLEW_AMD_vertex_shader_viewport_index GLEW_GET_VAR(__GLEW_AMD_vertex_shader_viewport_index) + +#endif /* GL_AMD_vertex_shader_viewport_index */ + +/* -------------------- GL_ANDROID_extension_pack_es31a -------------------- */ + +#ifndef GL_ANDROID_extension_pack_es31a +#define GL_ANDROID_extension_pack_es31a 1 + +#define GLEW_ANDROID_extension_pack_es31a GLEW_GET_VAR(__GLEW_ANDROID_extension_pack_es31a) + +#endif /* GL_ANDROID_extension_pack_es31a */ + +/* ------------------------- GL_ANGLE_depth_texture ------------------------ */ + +#ifndef GL_ANGLE_depth_texture +#define GL_ANGLE_depth_texture 1 + +#define GLEW_ANGLE_depth_texture GLEW_GET_VAR(__GLEW_ANGLE_depth_texture) + +#endif /* GL_ANGLE_depth_texture */ + +/* ----------------------- GL_ANGLE_framebuffer_blit ----------------------- */ + +#ifndef GL_ANGLE_framebuffer_blit +#define GL_ANGLE_framebuffer_blit 1 + +#define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6 +#define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8 +#define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9 +#define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA + +typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); + +#define glBlitFramebufferANGLE GLEW_GET_FUN(__glewBlitFramebufferANGLE) + +#define GLEW_ANGLE_framebuffer_blit GLEW_GET_VAR(__GLEW_ANGLE_framebuffer_blit) + +#endif /* GL_ANGLE_framebuffer_blit */ + +/* -------------------- GL_ANGLE_framebuffer_multisample ------------------- */ + +#ifndef GL_ANGLE_framebuffer_multisample +#define GL_ANGLE_framebuffer_multisample 1 + +#define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56 +#define GL_MAX_SAMPLES_ANGLE 0x8D57 + +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); + +#define glRenderbufferStorageMultisampleANGLE GLEW_GET_FUN(__glewRenderbufferStorageMultisampleANGLE) + +#define GLEW_ANGLE_framebuffer_multisample GLEW_GET_VAR(__GLEW_ANGLE_framebuffer_multisample) + +#endif /* GL_ANGLE_framebuffer_multisample */ + +/* ----------------------- GL_ANGLE_instanced_arrays ----------------------- */ + +#ifndef GL_ANGLE_instanced_arrays +#define GL_ANGLE_instanced_arrays 1 + +#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE + +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORANGLEPROC) (GLuint index, GLuint divisor); + +#define glDrawArraysInstancedANGLE GLEW_GET_FUN(__glewDrawArraysInstancedANGLE) +#define glDrawElementsInstancedANGLE GLEW_GET_FUN(__glewDrawElementsInstancedANGLE) +#define glVertexAttribDivisorANGLE GLEW_GET_FUN(__glewVertexAttribDivisorANGLE) + +#define GLEW_ANGLE_instanced_arrays GLEW_GET_VAR(__GLEW_ANGLE_instanced_arrays) + +#endif /* GL_ANGLE_instanced_arrays */ + +/* -------------------- GL_ANGLE_pack_reverse_row_order -------------------- */ + +#ifndef GL_ANGLE_pack_reverse_row_order +#define GL_ANGLE_pack_reverse_row_order 1 + +#define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4 + +#define GLEW_ANGLE_pack_reverse_row_order GLEW_GET_VAR(__GLEW_ANGLE_pack_reverse_row_order) + +#endif /* GL_ANGLE_pack_reverse_row_order */ + +/* ------------------------ GL_ANGLE_program_binary ------------------------ */ + +#ifndef GL_ANGLE_program_binary +#define GL_ANGLE_program_binary 1 + +#define GL_PROGRAM_BINARY_ANGLE 0x93A6 + +#define GLEW_ANGLE_program_binary GLEW_GET_VAR(__GLEW_ANGLE_program_binary) + +#endif /* GL_ANGLE_program_binary */ + +/* ------------------- GL_ANGLE_texture_compression_dxt1 ------------------- */ + +#ifndef GL_ANGLE_texture_compression_dxt1 +#define GL_ANGLE_texture_compression_dxt1 1 + +#define GL_COMPRESSED_RGB_S3TC_DXT1_ANGLE 0x83F0 +#define GL_COMPRESSED_RGBA_S3TC_DXT1_ANGLE 0x83F1 +#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2 +#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3 + +#define GLEW_ANGLE_texture_compression_dxt1 GLEW_GET_VAR(__GLEW_ANGLE_texture_compression_dxt1) + +#endif /* GL_ANGLE_texture_compression_dxt1 */ + +/* ------------------- GL_ANGLE_texture_compression_dxt3 ------------------- */ + +#ifndef GL_ANGLE_texture_compression_dxt3 +#define GL_ANGLE_texture_compression_dxt3 1 + +#define GL_COMPRESSED_RGB_S3TC_DXT1_ANGLE 0x83F0 +#define GL_COMPRESSED_RGBA_S3TC_DXT1_ANGLE 0x83F1 +#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2 +#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3 + +#define GLEW_ANGLE_texture_compression_dxt3 GLEW_GET_VAR(__GLEW_ANGLE_texture_compression_dxt3) + +#endif /* GL_ANGLE_texture_compression_dxt3 */ + +/* ------------------- GL_ANGLE_texture_compression_dxt5 ------------------- */ + +#ifndef GL_ANGLE_texture_compression_dxt5 +#define GL_ANGLE_texture_compression_dxt5 1 + +#define GL_COMPRESSED_RGB_S3TC_DXT1_ANGLE 0x83F0 +#define GL_COMPRESSED_RGBA_S3TC_DXT1_ANGLE 0x83F1 +#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2 +#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3 + +#define GLEW_ANGLE_texture_compression_dxt5 GLEW_GET_VAR(__GLEW_ANGLE_texture_compression_dxt5) + +#endif /* GL_ANGLE_texture_compression_dxt5 */ + +/* ------------------------- GL_ANGLE_texture_usage ------------------------ */ + +#ifndef GL_ANGLE_texture_usage +#define GL_ANGLE_texture_usage 1 + +#define GL_TEXTURE_USAGE_ANGLE 0x93A2 +#define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3 + +#define GLEW_ANGLE_texture_usage GLEW_GET_VAR(__GLEW_ANGLE_texture_usage) + +#endif /* GL_ANGLE_texture_usage */ + +/* -------------------------- GL_ANGLE_timer_query ------------------------- */ + +#ifndef GL_ANGLE_timer_query +#define GL_ANGLE_timer_query 1 + +#define GL_QUERY_COUNTER_BITS_ANGLE 0x8864 +#define GL_CURRENT_QUERY_ANGLE 0x8865 +#define GL_QUERY_RESULT_ANGLE 0x8866 +#define GL_QUERY_RESULT_AVAILABLE_ANGLE 0x8867 +#define GL_TIME_ELAPSED_ANGLE 0x88BF +#define GL_TIMESTAMP_ANGLE 0x8E28 + +typedef void (GLAPIENTRY * PFNGLBEGINQUERYANGLEPROC) (GLenum target, GLuint id); +typedef void (GLAPIENTRY * PFNGLDELETEQUERIESANGLEPROC) (GLsizei n, const GLuint* ids); +typedef void (GLAPIENTRY * PFNGLENDQUERYANGLEPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLGENQUERIESANGLEPROC) (GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VANGLEPROC) (GLuint id, GLenum pname, GLint64* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVANGLEPROC) (GLuint id, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VANGLEPROC) (GLuint id, GLenum pname, GLuint64* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVANGLEPROC) (GLuint id, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYIVANGLEPROC) (GLenum target, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISQUERYANGLEPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLQUERYCOUNTERANGLEPROC) (GLuint id, GLenum target); + +#define glBeginQueryANGLE GLEW_GET_FUN(__glewBeginQueryANGLE) +#define glDeleteQueriesANGLE GLEW_GET_FUN(__glewDeleteQueriesANGLE) +#define glEndQueryANGLE GLEW_GET_FUN(__glewEndQueryANGLE) +#define glGenQueriesANGLE GLEW_GET_FUN(__glewGenQueriesANGLE) +#define glGetQueryObjecti64vANGLE GLEW_GET_FUN(__glewGetQueryObjecti64vANGLE) +#define glGetQueryObjectivANGLE GLEW_GET_FUN(__glewGetQueryObjectivANGLE) +#define glGetQueryObjectui64vANGLE GLEW_GET_FUN(__glewGetQueryObjectui64vANGLE) +#define glGetQueryObjectuivANGLE GLEW_GET_FUN(__glewGetQueryObjectuivANGLE) +#define glGetQueryivANGLE GLEW_GET_FUN(__glewGetQueryivANGLE) +#define glIsQueryANGLE GLEW_GET_FUN(__glewIsQueryANGLE) +#define glQueryCounterANGLE GLEW_GET_FUN(__glewQueryCounterANGLE) + +#define GLEW_ANGLE_timer_query GLEW_GET_VAR(__GLEW_ANGLE_timer_query) + +#endif /* GL_ANGLE_timer_query */ + +/* ------------------- GL_ANGLE_translated_shader_source ------------------- */ + +#ifndef GL_ANGLE_translated_shader_source +#define GL_ANGLE_translated_shader_source 1 + +#define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0 + +typedef void (GLAPIENTRY * PFNGLGETTRANSLATEDSHADERSOURCEANGLEPROC) (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source); + +#define glGetTranslatedShaderSourceANGLE GLEW_GET_FUN(__glewGetTranslatedShaderSourceANGLE) + +#define GLEW_ANGLE_translated_shader_source GLEW_GET_VAR(__GLEW_ANGLE_translated_shader_source) + +#endif /* GL_ANGLE_translated_shader_source */ + +/* ----------------------- GL_APPLE_aux_depth_stencil ---------------------- */ + +#ifndef GL_APPLE_aux_depth_stencil +#define GL_APPLE_aux_depth_stencil 1 + +#define GL_AUX_DEPTH_STENCIL_APPLE 0x8A14 + +#define GLEW_APPLE_aux_depth_stencil GLEW_GET_VAR(__GLEW_APPLE_aux_depth_stencil) + +#endif /* GL_APPLE_aux_depth_stencil */ + +/* ------------------------ GL_APPLE_client_storage ------------------------ */ + +#ifndef GL_APPLE_client_storage +#define GL_APPLE_client_storage 1 + +#define GL_UNPACK_CLIENT_STORAGE_APPLE 0x85B2 + +#define GLEW_APPLE_client_storage GLEW_GET_VAR(__GLEW_APPLE_client_storage) + +#endif /* GL_APPLE_client_storage */ + +/* ------------------------- GL_APPLE_clip_distance ------------------------ */ + +#ifndef GL_APPLE_clip_distance +#define GL_APPLE_clip_distance 1 + +#define GL_MAX_CLIP_DISTANCES_APPLE 0x0D32 +#define GL_CLIP_DISTANCE0_APPLE 0x3000 +#define GL_CLIP_DISTANCE1_APPLE 0x3001 +#define GL_CLIP_DISTANCE2_APPLE 0x3002 +#define GL_CLIP_DISTANCE3_APPLE 0x3003 +#define GL_CLIP_DISTANCE4_APPLE 0x3004 +#define GL_CLIP_DISTANCE5_APPLE 0x3005 +#define GL_CLIP_DISTANCE6_APPLE 0x3006 +#define GL_CLIP_DISTANCE7_APPLE 0x3007 + +#define GLEW_APPLE_clip_distance GLEW_GET_VAR(__GLEW_APPLE_clip_distance) + +#endif /* GL_APPLE_clip_distance */ + +/* ------------------- GL_APPLE_color_buffer_packed_float ------------------ */ + +#ifndef GL_APPLE_color_buffer_packed_float +#define GL_APPLE_color_buffer_packed_float 1 + +#define GLEW_APPLE_color_buffer_packed_float GLEW_GET_VAR(__GLEW_APPLE_color_buffer_packed_float) + +#endif /* GL_APPLE_color_buffer_packed_float */ + +/* ---------------------- GL_APPLE_copy_texture_levels --------------------- */ + +#ifndef GL_APPLE_copy_texture_levels +#define GL_APPLE_copy_texture_levels 1 + +typedef void (GLAPIENTRY * PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount); + +#define glCopyTextureLevelsAPPLE GLEW_GET_FUN(__glewCopyTextureLevelsAPPLE) + +#define GLEW_APPLE_copy_texture_levels GLEW_GET_VAR(__GLEW_APPLE_copy_texture_levels) + +#endif /* GL_APPLE_copy_texture_levels */ + +/* ------------------------- GL_APPLE_element_array ------------------------ */ + +#ifndef GL_APPLE_element_array +#define GL_APPLE_element_array 1 + +#define GL_ELEMENT_ARRAY_APPLE 0x8A0C +#define GL_ELEMENT_ARRAY_TYPE_APPLE 0x8A0D +#define GL_ELEMENT_ARRAY_POINTER_APPLE 0x8A0E + +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, GLint first, GLsizei count); +typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count); +typedef void (GLAPIENTRY * PFNGLELEMENTPOINTERAPPLEPROC) (GLenum type, const void *pointer); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, const GLint* first, const GLsizei *count, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, const GLint* first, const GLsizei *count, GLsizei primcount); + +#define glDrawElementArrayAPPLE GLEW_GET_FUN(__glewDrawElementArrayAPPLE) +#define glDrawRangeElementArrayAPPLE GLEW_GET_FUN(__glewDrawRangeElementArrayAPPLE) +#define glElementPointerAPPLE GLEW_GET_FUN(__glewElementPointerAPPLE) +#define glMultiDrawElementArrayAPPLE GLEW_GET_FUN(__glewMultiDrawElementArrayAPPLE) +#define glMultiDrawRangeElementArrayAPPLE GLEW_GET_FUN(__glewMultiDrawRangeElementArrayAPPLE) + +#define GLEW_APPLE_element_array GLEW_GET_VAR(__GLEW_APPLE_element_array) + +#endif /* GL_APPLE_element_array */ + +/* ----------------------------- GL_APPLE_fence ---------------------------- */ + +#ifndef GL_APPLE_fence +#define GL_APPLE_fence 1 + +#define GL_DRAW_PIXELS_APPLE 0x8A0A +#define GL_FENCE_APPLE 0x8A0B + +typedef void (GLAPIENTRY * PFNGLDELETEFENCESAPPLEPROC) (GLsizei n, const GLuint* fences); +typedef void (GLAPIENTRY * PFNGLFINISHFENCEAPPLEPROC) (GLuint fence); +typedef void (GLAPIENTRY * PFNGLFINISHOBJECTAPPLEPROC) (GLenum object, GLint name); +typedef void (GLAPIENTRY * PFNGLGENFENCESAPPLEPROC) (GLsizei n, GLuint* fences); +typedef GLboolean (GLAPIENTRY * PFNGLISFENCEAPPLEPROC) (GLuint fence); +typedef void (GLAPIENTRY * PFNGLSETFENCEAPPLEPROC) (GLuint fence); +typedef GLboolean (GLAPIENTRY * PFNGLTESTFENCEAPPLEPROC) (GLuint fence); +typedef GLboolean (GLAPIENTRY * PFNGLTESTOBJECTAPPLEPROC) (GLenum object, GLuint name); + +#define glDeleteFencesAPPLE GLEW_GET_FUN(__glewDeleteFencesAPPLE) +#define glFinishFenceAPPLE GLEW_GET_FUN(__glewFinishFenceAPPLE) +#define glFinishObjectAPPLE GLEW_GET_FUN(__glewFinishObjectAPPLE) +#define glGenFencesAPPLE GLEW_GET_FUN(__glewGenFencesAPPLE) +#define glIsFenceAPPLE GLEW_GET_FUN(__glewIsFenceAPPLE) +#define glSetFenceAPPLE GLEW_GET_FUN(__glewSetFenceAPPLE) +#define glTestFenceAPPLE GLEW_GET_FUN(__glewTestFenceAPPLE) +#define glTestObjectAPPLE GLEW_GET_FUN(__glewTestObjectAPPLE) + +#define GLEW_APPLE_fence GLEW_GET_VAR(__GLEW_APPLE_fence) + +#endif /* GL_APPLE_fence */ + +/* ------------------------- GL_APPLE_float_pixels ------------------------- */ + +#ifndef GL_APPLE_float_pixels +#define GL_APPLE_float_pixels 1 + +#define GL_HALF_APPLE 0x140B +#define GL_RGBA_FLOAT32_APPLE 0x8814 +#define GL_RGB_FLOAT32_APPLE 0x8815 +#define GL_ALPHA_FLOAT32_APPLE 0x8816 +#define GL_INTENSITY_FLOAT32_APPLE 0x8817 +#define GL_LUMINANCE_FLOAT32_APPLE 0x8818 +#define GL_LUMINANCE_ALPHA_FLOAT32_APPLE 0x8819 +#define GL_RGBA_FLOAT16_APPLE 0x881A +#define GL_RGB_FLOAT16_APPLE 0x881B +#define GL_ALPHA_FLOAT16_APPLE 0x881C +#define GL_INTENSITY_FLOAT16_APPLE 0x881D +#define GL_LUMINANCE_FLOAT16_APPLE 0x881E +#define GL_LUMINANCE_ALPHA_FLOAT16_APPLE 0x881F +#define GL_COLOR_FLOAT_APPLE 0x8A0F + +#define GLEW_APPLE_float_pixels GLEW_GET_VAR(__GLEW_APPLE_float_pixels) + +#endif /* GL_APPLE_float_pixels */ + +/* ---------------------- GL_APPLE_flush_buffer_range ---------------------- */ + +#ifndef GL_APPLE_flush_buffer_range +#define GL_APPLE_flush_buffer_range 1 + +#define GL_BUFFER_SERIALIZED_MODIFY_APPLE 0x8A12 +#define GL_BUFFER_FLUSHING_UNMAP_APPLE 0x8A13 + +typedef void (GLAPIENTRY * PFNGLBUFFERPARAMETERIAPPLEPROC) (GLenum target, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC) (GLenum target, GLintptr offset, GLsizeiptr size); + +#define glBufferParameteriAPPLE GLEW_GET_FUN(__glewBufferParameteriAPPLE) +#define glFlushMappedBufferRangeAPPLE GLEW_GET_FUN(__glewFlushMappedBufferRangeAPPLE) + +#define GLEW_APPLE_flush_buffer_range GLEW_GET_VAR(__GLEW_APPLE_flush_buffer_range) + +#endif /* GL_APPLE_flush_buffer_range */ + +/* -------------------- GL_APPLE_framebuffer_multisample ------------------- */ + +#ifndef GL_APPLE_framebuffer_multisample +#define GL_APPLE_framebuffer_multisample 1 + +#define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6 +#define GL_READ_FRAMEBUFFER_APPLE 0x8CA8 +#define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9 +#define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA +#define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56 +#define GL_MAX_SAMPLES_APPLE 0x8D57 + +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void); + +#define glRenderbufferStorageMultisampleAPPLE GLEW_GET_FUN(__glewRenderbufferStorageMultisampleAPPLE) +#define glResolveMultisampleFramebufferAPPLE GLEW_GET_FUN(__glewResolveMultisampleFramebufferAPPLE) + +#define GLEW_APPLE_framebuffer_multisample GLEW_GET_VAR(__GLEW_APPLE_framebuffer_multisample) + +#endif /* GL_APPLE_framebuffer_multisample */ + +/* ----------------------- GL_APPLE_object_purgeable ----------------------- */ + +#ifndef GL_APPLE_object_purgeable +#define GL_APPLE_object_purgeable 1 + +#define GL_BUFFER_OBJECT_APPLE 0x85B3 +#define GL_RELEASED_APPLE 0x8A19 +#define GL_VOLATILE_APPLE 0x8A1A +#define GL_RETAINED_APPLE 0x8A1B +#define GL_UNDEFINED_APPLE 0x8A1C +#define GL_PURGEABLE_APPLE 0x8A1D + +typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERIVAPPLEPROC) (GLenum objectType, GLuint name, GLenum pname, GLint* params); +typedef GLenum (GLAPIENTRY * PFNGLOBJECTPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option); +typedef GLenum (GLAPIENTRY * PFNGLOBJECTUNPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option); + +#define glGetObjectParameterivAPPLE GLEW_GET_FUN(__glewGetObjectParameterivAPPLE) +#define glObjectPurgeableAPPLE GLEW_GET_FUN(__glewObjectPurgeableAPPLE) +#define glObjectUnpurgeableAPPLE GLEW_GET_FUN(__glewObjectUnpurgeableAPPLE) + +#define GLEW_APPLE_object_purgeable GLEW_GET_VAR(__GLEW_APPLE_object_purgeable) + +#endif /* GL_APPLE_object_purgeable */ + +/* ------------------------- GL_APPLE_pixel_buffer ------------------------- */ + +#ifndef GL_APPLE_pixel_buffer +#define GL_APPLE_pixel_buffer 1 + +#define GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE 0x8A10 + +#define GLEW_APPLE_pixel_buffer GLEW_GET_VAR(__GLEW_APPLE_pixel_buffer) + +#endif /* GL_APPLE_pixel_buffer */ + +/* ---------------------------- GL_APPLE_rgb_422 --------------------------- */ + +#ifndef GL_APPLE_rgb_422 +#define GL_APPLE_rgb_422 1 + +#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA +#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB +#define GL_RGB_422_APPLE 0x8A1F +#define GL_RGB_RAW_422_APPLE 0x8A51 + +#define GLEW_APPLE_rgb_422 GLEW_GET_VAR(__GLEW_APPLE_rgb_422) + +#endif /* GL_APPLE_rgb_422 */ + +/* --------------------------- GL_APPLE_row_bytes -------------------------- */ + +#ifndef GL_APPLE_row_bytes +#define GL_APPLE_row_bytes 1 + +#define GL_PACK_ROW_BYTES_APPLE 0x8A15 +#define GL_UNPACK_ROW_BYTES_APPLE 0x8A16 + +#define GLEW_APPLE_row_bytes GLEW_GET_VAR(__GLEW_APPLE_row_bytes) + +#endif /* GL_APPLE_row_bytes */ + +/* ------------------------ GL_APPLE_specular_vector ----------------------- */ + +#ifndef GL_APPLE_specular_vector +#define GL_APPLE_specular_vector 1 + +#define GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE 0x85B0 + +#define GLEW_APPLE_specular_vector GLEW_GET_VAR(__GLEW_APPLE_specular_vector) + +#endif /* GL_APPLE_specular_vector */ + +/* ----------------------------- GL_APPLE_sync ----------------------------- */ + +#ifndef GL_APPLE_sync +#define GL_APPLE_sync 1 + +#define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001 +#define GL_SYNC_OBJECT_APPLE 0x8A53 +#define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111 +#define GL_OBJECT_TYPE_APPLE 0x9112 +#define GL_SYNC_CONDITION_APPLE 0x9113 +#define GL_SYNC_STATUS_APPLE 0x9114 +#define GL_SYNC_FLAGS_APPLE 0x9115 +#define GL_SYNC_FENCE_APPLE 0x9116 +#define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117 +#define GL_UNSIGNALED_APPLE 0x9118 +#define GL_SIGNALED_APPLE 0x9119 +#define GL_ALREADY_SIGNALED_APPLE 0x911A +#define GL_TIMEOUT_EXPIRED_APPLE 0x911B +#define GL_CONDITION_SATISFIED_APPLE 0x911C +#define GL_WAIT_FAILED_APPLE 0x911D +#define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull + +typedef GLenum (GLAPIENTRY * PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync GLsync, GLbitfield flags, GLuint64 timeout); +typedef void (GLAPIENTRY * PFNGLDELETESYNCAPPLEPROC) (GLsync GLsync); +typedef GLsync (GLAPIENTRY * PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags); +typedef void (GLAPIENTRY * PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64* params); +typedef void (GLAPIENTRY * PFNGLGETSYNCIVAPPLEPROC) (GLsync GLsync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint *values); +typedef GLboolean (GLAPIENTRY * PFNGLISSYNCAPPLEPROC) (GLsync GLsync); +typedef void (GLAPIENTRY * PFNGLWAITSYNCAPPLEPROC) (GLsync GLsync, GLbitfield flags, GLuint64 timeout); + +#define glClientWaitSyncAPPLE GLEW_GET_FUN(__glewClientWaitSyncAPPLE) +#define glDeleteSyncAPPLE GLEW_GET_FUN(__glewDeleteSyncAPPLE) +#define glFenceSyncAPPLE GLEW_GET_FUN(__glewFenceSyncAPPLE) +#define glGetInteger64vAPPLE GLEW_GET_FUN(__glewGetInteger64vAPPLE) +#define glGetSyncivAPPLE GLEW_GET_FUN(__glewGetSyncivAPPLE) +#define glIsSyncAPPLE GLEW_GET_FUN(__glewIsSyncAPPLE) +#define glWaitSyncAPPLE GLEW_GET_FUN(__glewWaitSyncAPPLE) + +#define GLEW_APPLE_sync GLEW_GET_VAR(__GLEW_APPLE_sync) + +#endif /* GL_APPLE_sync */ + +/* -------------------- GL_APPLE_texture_2D_limited_npot ------------------- */ + +#ifndef GL_APPLE_texture_2D_limited_npot +#define GL_APPLE_texture_2D_limited_npot 1 + +#define GLEW_APPLE_texture_2D_limited_npot GLEW_GET_VAR(__GLEW_APPLE_texture_2D_limited_npot) + +#endif /* GL_APPLE_texture_2D_limited_npot */ + +/* -------------------- GL_APPLE_texture_format_BGRA8888 ------------------- */ + +#ifndef GL_APPLE_texture_format_BGRA8888 +#define GL_APPLE_texture_format_BGRA8888 1 + +#define GL_BGRA_EXT 0x80E1 +#define GL_BGRA8_EXT 0x93A1 + +#define GLEW_APPLE_texture_format_BGRA8888 GLEW_GET_VAR(__GLEW_APPLE_texture_format_BGRA8888) + +#endif /* GL_APPLE_texture_format_BGRA8888 */ + +/* ----------------------- GL_APPLE_texture_max_level ---------------------- */ + +#ifndef GL_APPLE_texture_max_level +#define GL_APPLE_texture_max_level 1 + +#define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D + +#define GLEW_APPLE_texture_max_level GLEW_GET_VAR(__GLEW_APPLE_texture_max_level) + +#endif /* GL_APPLE_texture_max_level */ + +/* --------------------- GL_APPLE_texture_packed_float --------------------- */ + +#ifndef GL_APPLE_texture_packed_float +#define GL_APPLE_texture_packed_float 1 + +#define GL_R11F_G11F_B10F_APPLE 0x8C3A +#define GL_UNSIGNED_INT_10F_11F_11F_REV_APPLE 0x8C3B +#define GL_RGB9_E5_APPLE 0x8C3D +#define GL_UNSIGNED_INT_5_9_9_9_REV_APPLE 0x8C3E + +#define GLEW_APPLE_texture_packed_float GLEW_GET_VAR(__GLEW_APPLE_texture_packed_float) + +#endif /* GL_APPLE_texture_packed_float */ + +/* ------------------------- GL_APPLE_texture_range ------------------------ */ + +#ifndef GL_APPLE_texture_range +#define GL_APPLE_texture_range 1 + +#define GL_TEXTURE_RANGE_LENGTH_APPLE 0x85B7 +#define GL_TEXTURE_RANGE_POINTER_APPLE 0x85B8 +#define GL_TEXTURE_STORAGE_HINT_APPLE 0x85BC +#define GL_STORAGE_PRIVATE_APPLE 0x85BD +#define GL_STORAGE_CACHED_APPLE 0x85BE +#define GL_STORAGE_SHARED_APPLE 0x85BF + +typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC) (GLenum target, GLenum pname, void **params); +typedef void (GLAPIENTRY * PFNGLTEXTURERANGEAPPLEPROC) (GLenum target, GLsizei length, void *pointer); + +#define glGetTexParameterPointervAPPLE GLEW_GET_FUN(__glewGetTexParameterPointervAPPLE) +#define glTextureRangeAPPLE GLEW_GET_FUN(__glewTextureRangeAPPLE) + +#define GLEW_APPLE_texture_range GLEW_GET_VAR(__GLEW_APPLE_texture_range) + +#endif /* GL_APPLE_texture_range */ + +/* ------------------------ GL_APPLE_transform_hint ------------------------ */ + +#ifndef GL_APPLE_transform_hint +#define GL_APPLE_transform_hint 1 + +#define GL_TRANSFORM_HINT_APPLE 0x85B1 + +#define GLEW_APPLE_transform_hint GLEW_GET_VAR(__GLEW_APPLE_transform_hint) + +#endif /* GL_APPLE_transform_hint */ + +/* ---------------------- GL_APPLE_vertex_array_object --------------------- */ + +#ifndef GL_APPLE_vertex_array_object +#define GL_APPLE_vertex_array_object 1 + +#define GL_VERTEX_ARRAY_BINDING_APPLE 0x85B5 + +typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYAPPLEPROC) (GLuint array); +typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint* arrays); +typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint* arrays); +typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYAPPLEPROC) (GLuint array); + +#define glBindVertexArrayAPPLE GLEW_GET_FUN(__glewBindVertexArrayAPPLE) +#define glDeleteVertexArraysAPPLE GLEW_GET_FUN(__glewDeleteVertexArraysAPPLE) +#define glGenVertexArraysAPPLE GLEW_GET_FUN(__glewGenVertexArraysAPPLE) +#define glIsVertexArrayAPPLE GLEW_GET_FUN(__glewIsVertexArrayAPPLE) + +#define GLEW_APPLE_vertex_array_object GLEW_GET_VAR(__GLEW_APPLE_vertex_array_object) + +#endif /* GL_APPLE_vertex_array_object */ + +/* ---------------------- GL_APPLE_vertex_array_range ---------------------- */ + +#ifndef GL_APPLE_vertex_array_range +#define GL_APPLE_vertex_array_range 1 + +#define GL_VERTEX_ARRAY_RANGE_APPLE 0x851D +#define GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE 0x851E +#define GL_VERTEX_ARRAY_STORAGE_HINT_APPLE 0x851F +#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_APPLE 0x8520 +#define GL_VERTEX_ARRAY_RANGE_POINTER_APPLE 0x8521 +#define GL_STORAGE_CLIENT_APPLE 0x85B4 +#define GL_STORAGE_CACHED_APPLE 0x85BE +#define GL_STORAGE_SHARED_APPLE 0x85BF + +typedef void (GLAPIENTRY * PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void *pointer); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYPARAMETERIAPPLEPROC) (GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void *pointer); + +#define glFlushVertexArrayRangeAPPLE GLEW_GET_FUN(__glewFlushVertexArrayRangeAPPLE) +#define glVertexArrayParameteriAPPLE GLEW_GET_FUN(__glewVertexArrayParameteriAPPLE) +#define glVertexArrayRangeAPPLE GLEW_GET_FUN(__glewVertexArrayRangeAPPLE) + +#define GLEW_APPLE_vertex_array_range GLEW_GET_VAR(__GLEW_APPLE_vertex_array_range) + +#endif /* GL_APPLE_vertex_array_range */ + +/* ------------------- GL_APPLE_vertex_program_evaluators ------------------ */ + +#ifndef GL_APPLE_vertex_program_evaluators +#define GL_APPLE_vertex_program_evaluators 1 + +#define GL_VERTEX_ATTRIB_MAP1_APPLE 0x8A00 +#define GL_VERTEX_ATTRIB_MAP2_APPLE 0x8A01 +#define GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE 0x8A02 +#define GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE 0x8A03 +#define GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE 0x8A04 +#define GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE 0x8A05 +#define GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE 0x8A06 +#define GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE 0x8A07 +#define GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE 0x8A08 +#define GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE 0x8A09 + +typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname); +typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname); +typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXATTRIBENABLEDAPPLEPROC) (GLuint index, GLenum pname); +typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB1DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble* points); +typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB1FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points); +typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble* points); +typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat* points); + +#define glDisableVertexAttribAPPLE GLEW_GET_FUN(__glewDisableVertexAttribAPPLE) +#define glEnableVertexAttribAPPLE GLEW_GET_FUN(__glewEnableVertexAttribAPPLE) +#define glIsVertexAttribEnabledAPPLE GLEW_GET_FUN(__glewIsVertexAttribEnabledAPPLE) +#define glMapVertexAttrib1dAPPLE GLEW_GET_FUN(__glewMapVertexAttrib1dAPPLE) +#define glMapVertexAttrib1fAPPLE GLEW_GET_FUN(__glewMapVertexAttrib1fAPPLE) +#define glMapVertexAttrib2dAPPLE GLEW_GET_FUN(__glewMapVertexAttrib2dAPPLE) +#define glMapVertexAttrib2fAPPLE GLEW_GET_FUN(__glewMapVertexAttrib2fAPPLE) + +#define GLEW_APPLE_vertex_program_evaluators GLEW_GET_VAR(__GLEW_APPLE_vertex_program_evaluators) + +#endif /* GL_APPLE_vertex_program_evaluators */ + +/* --------------------------- GL_APPLE_ycbcr_422 -------------------------- */ + +#ifndef GL_APPLE_ycbcr_422 +#define GL_APPLE_ycbcr_422 1 + +#define GL_YCBCR_422_APPLE 0x85B9 + +#define GLEW_APPLE_ycbcr_422 GLEW_GET_VAR(__GLEW_APPLE_ycbcr_422) + +#endif /* GL_APPLE_ycbcr_422 */ + +/* ------------------------ GL_ARB_ES2_compatibility ----------------------- */ + +#ifndef GL_ARB_ES2_compatibility +#define GL_ARB_ES2_compatibility 1 + +#define GL_FIXED 0x140C +#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A +#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B +#define GL_RGB565 0x8D62 +#define GL_LOW_FLOAT 0x8DF0 +#define GL_MEDIUM_FLOAT 0x8DF1 +#define GL_HIGH_FLOAT 0x8DF2 +#define GL_LOW_INT 0x8DF3 +#define GL_MEDIUM_INT 0x8DF4 +#define GL_HIGH_INT 0x8DF5 +#define GL_SHADER_BINARY_FORMATS 0x8DF8 +#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9 +#define GL_SHADER_COMPILER 0x8DFA +#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB +#define GL_MAX_VARYING_VECTORS 0x8DFC +#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD + +typedef int GLfixed; + +typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFPROC) (GLclampf d); +typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFPROC) (GLclampf n, GLclampf f); +typedef void (GLAPIENTRY * PFNGLGETSHADERPRECISIONFORMATPROC) (GLenum shadertype, GLenum precisiontype, GLint* range, GLint *precision); +typedef void (GLAPIENTRY * PFNGLRELEASESHADERCOMPILERPROC) (void); +typedef void (GLAPIENTRY * PFNGLSHADERBINARYPROC) (GLsizei count, const GLuint* shaders, GLenum binaryformat, const void*binary, GLsizei length); + +#define glClearDepthf GLEW_GET_FUN(__glewClearDepthf) +#define glDepthRangef GLEW_GET_FUN(__glewDepthRangef) +#define glGetShaderPrecisionFormat GLEW_GET_FUN(__glewGetShaderPrecisionFormat) +#define glReleaseShaderCompiler GLEW_GET_FUN(__glewReleaseShaderCompiler) +#define glShaderBinary GLEW_GET_FUN(__glewShaderBinary) + +#define GLEW_ARB_ES2_compatibility GLEW_GET_VAR(__GLEW_ARB_ES2_compatibility) + +#endif /* GL_ARB_ES2_compatibility */ + +/* ----------------------- GL_ARB_ES3_1_compatibility ---------------------- */ + +#ifndef GL_ARB_ES3_1_compatibility +#define GL_ARB_ES3_1_compatibility 1 + +typedef void (GLAPIENTRY * PFNGLMEMORYBARRIERBYREGIONPROC) (GLbitfield barriers); + +#define glMemoryBarrierByRegion GLEW_GET_FUN(__glewMemoryBarrierByRegion) + +#define GLEW_ARB_ES3_1_compatibility GLEW_GET_VAR(__GLEW_ARB_ES3_1_compatibility) + +#endif /* GL_ARB_ES3_1_compatibility */ + +/* ----------------------- GL_ARB_ES3_2_compatibility ---------------------- */ + +#ifndef GL_ARB_ES3_2_compatibility +#define GL_ARB_ES3_2_compatibility 1 + +#define GL_PRIMITIVE_BOUNDING_BOX_ARB 0x92BE +#define GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB 0x9381 +#define GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB 0x9382 + +typedef void (GLAPIENTRY * PFNGLPRIMITIVEBOUNDINGBOXARBPROC) (GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW); + +#define glPrimitiveBoundingBoxARB GLEW_GET_FUN(__glewPrimitiveBoundingBoxARB) + +#define GLEW_ARB_ES3_2_compatibility GLEW_GET_VAR(__GLEW_ARB_ES3_2_compatibility) + +#endif /* GL_ARB_ES3_2_compatibility */ + +/* ------------------------ GL_ARB_ES3_compatibility ----------------------- */ + +#ifndef GL_ARB_ES3_compatibility +#define GL_ARB_ES3_compatibility 1 + +#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF +#define GL_PRIMITIVE_RESTART_FIXED_INDEX 0x8D69 +#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE 0x8D6A +#define GL_MAX_ELEMENT_INDEX 0x8D6B +#define GL_COMPRESSED_R11_EAC 0x9270 +#define GL_COMPRESSED_SIGNED_R11_EAC 0x9271 +#define GL_COMPRESSED_RG11_EAC 0x9272 +#define GL_COMPRESSED_SIGNED_RG11_EAC 0x9273 +#define GL_COMPRESSED_RGB8_ETC2 0x9274 +#define GL_COMPRESSED_SRGB8_ETC2 0x9275 +#define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9276 +#define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9277 +#define GL_COMPRESSED_RGBA8_ETC2_EAC 0x9278 +#define GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC 0x9279 + +#define GLEW_ARB_ES3_compatibility GLEW_GET_VAR(__GLEW_ARB_ES3_compatibility) + +#endif /* GL_ARB_ES3_compatibility */ + +/* ------------------------ GL_ARB_arrays_of_arrays ------------------------ */ + +#ifndef GL_ARB_arrays_of_arrays +#define GL_ARB_arrays_of_arrays 1 + +#define GLEW_ARB_arrays_of_arrays GLEW_GET_VAR(__GLEW_ARB_arrays_of_arrays) + +#endif /* GL_ARB_arrays_of_arrays */ + +/* -------------------------- GL_ARB_base_instance ------------------------- */ + +#ifndef GL_ARB_base_instance +#define GL_ARB_base_instance 1 + +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount, GLuint baseinstance); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount, GLuint baseinstance); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount, GLint basevertex, GLuint baseinstance); + +#define glDrawArraysInstancedBaseInstance GLEW_GET_FUN(__glewDrawArraysInstancedBaseInstance) +#define glDrawElementsInstancedBaseInstance GLEW_GET_FUN(__glewDrawElementsInstancedBaseInstance) +#define glDrawElementsInstancedBaseVertexBaseInstance GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertexBaseInstance) + +#define GLEW_ARB_base_instance GLEW_GET_VAR(__GLEW_ARB_base_instance) + +#endif /* GL_ARB_base_instance */ + +/* ------------------------ GL_ARB_bindless_texture ------------------------ */ + +#ifndef GL_ARB_bindless_texture +#define GL_ARB_bindless_texture 1 + +#define GL_UNSIGNED_INT64_ARB 0x140F + +typedef GLuint64 (GLAPIENTRY * PFNGLGETIMAGEHANDLEARBPROC) (GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format); +typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTUREHANDLEARBPROC) (GLuint texture); +typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTURESAMPLERHANDLEARBPROC) (GLuint texture, GLuint sampler); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLUI64VARBPROC) (GLuint index, GLenum pname, GLuint64EXT* params); +typedef GLboolean (GLAPIENTRY * PFNGLISIMAGEHANDLERESIDENTARBPROC) (GLuint64 handle); +typedef GLboolean (GLAPIENTRY * PFNGLISTEXTUREHANDLERESIDENTARBPROC) (GLuint64 handle); +typedef void (GLAPIENTRY * PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC) (GLuint64 handle); +typedef void (GLAPIENTRY * PFNGLMAKEIMAGEHANDLERESIDENTARBPROC) (GLuint64 handle, GLenum access); +typedef void (GLAPIENTRY * PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC) (GLuint64 handle); +typedef void (GLAPIENTRY * PFNGLMAKETEXTUREHANDLERESIDENTARBPROC) (GLuint64 handle); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC) (GLuint program, GLint location, GLuint64 value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* values); +typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64ARBPROC) (GLint location, GLuint64 value); +typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64ARBPROC) (GLuint index, GLuint64EXT x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64VARBPROC) (GLuint index, const GLuint64EXT* v); + +#define glGetImageHandleARB GLEW_GET_FUN(__glewGetImageHandleARB) +#define glGetTextureHandleARB GLEW_GET_FUN(__glewGetTextureHandleARB) +#define glGetTextureSamplerHandleARB GLEW_GET_FUN(__glewGetTextureSamplerHandleARB) +#define glGetVertexAttribLui64vARB GLEW_GET_FUN(__glewGetVertexAttribLui64vARB) +#define glIsImageHandleResidentARB GLEW_GET_FUN(__glewIsImageHandleResidentARB) +#define glIsTextureHandleResidentARB GLEW_GET_FUN(__glewIsTextureHandleResidentARB) +#define glMakeImageHandleNonResidentARB GLEW_GET_FUN(__glewMakeImageHandleNonResidentARB) +#define glMakeImageHandleResidentARB GLEW_GET_FUN(__glewMakeImageHandleResidentARB) +#define glMakeTextureHandleNonResidentARB GLEW_GET_FUN(__glewMakeTextureHandleNonResidentARB) +#define glMakeTextureHandleResidentARB GLEW_GET_FUN(__glewMakeTextureHandleResidentARB) +#define glProgramUniformHandleui64ARB GLEW_GET_FUN(__glewProgramUniformHandleui64ARB) +#define glProgramUniformHandleui64vARB GLEW_GET_FUN(__glewProgramUniformHandleui64vARB) +#define glUniformHandleui64ARB GLEW_GET_FUN(__glewUniformHandleui64ARB) +#define glUniformHandleui64vARB GLEW_GET_FUN(__glewUniformHandleui64vARB) +#define glVertexAttribL1ui64ARB GLEW_GET_FUN(__glewVertexAttribL1ui64ARB) +#define glVertexAttribL1ui64vARB GLEW_GET_FUN(__glewVertexAttribL1ui64vARB) + +#define GLEW_ARB_bindless_texture GLEW_GET_VAR(__GLEW_ARB_bindless_texture) + +#endif /* GL_ARB_bindless_texture */ + +/* ----------------------- GL_ARB_blend_func_extended ---------------------- */ + +#ifndef GL_ARB_blend_func_extended +#define GL_ARB_blend_func_extended 1 + +#define GL_SRC1_COLOR 0x88F9 +#define GL_ONE_MINUS_SRC1_COLOR 0x88FA +#define GL_ONE_MINUS_SRC1_ALPHA 0x88FB +#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC + +typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONINDEXEDPROC) (GLuint program, GLuint colorNumber, GLuint index, const GLchar * name); +typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATAINDEXPROC) (GLuint program, const GLchar * name); + +#define glBindFragDataLocationIndexed GLEW_GET_FUN(__glewBindFragDataLocationIndexed) +#define glGetFragDataIndex GLEW_GET_FUN(__glewGetFragDataIndex) + +#define GLEW_ARB_blend_func_extended GLEW_GET_VAR(__GLEW_ARB_blend_func_extended) + +#endif /* GL_ARB_blend_func_extended */ + +/* ------------------------- GL_ARB_buffer_storage ------------------------- */ + +#ifndef GL_ARB_buffer_storage +#define GL_ARB_buffer_storage 1 + +#define GL_MAP_READ_BIT 0x0001 +#define GL_MAP_WRITE_BIT 0x0002 +#define GL_MAP_PERSISTENT_BIT 0x00000040 +#define GL_MAP_COHERENT_BIT 0x00000080 +#define GL_DYNAMIC_STORAGE_BIT 0x0100 +#define GL_CLIENT_STORAGE_BIT 0x0200 +#define GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT 0x00004000 +#define GL_BUFFER_IMMUTABLE_STORAGE 0x821F +#define GL_BUFFER_STORAGE_FLAGS 0x8220 + +typedef void (GLAPIENTRY * PFNGLBUFFERSTORAGEPROC) (GLenum target, GLsizeiptr size, const void *data, GLbitfield flags); + +#define glBufferStorage GLEW_GET_FUN(__glewBufferStorage) + +#define GLEW_ARB_buffer_storage GLEW_GET_VAR(__GLEW_ARB_buffer_storage) + +#endif /* GL_ARB_buffer_storage */ + +/* ---------------------------- GL_ARB_cl_event ---------------------------- */ + +#ifndef GL_ARB_cl_event +#define GL_ARB_cl_event 1 + +#define GL_SYNC_CL_EVENT_ARB 0x8240 +#define GL_SYNC_CL_EVENT_COMPLETE_ARB 0x8241 + +typedef struct _cl_context *cl_context; +typedef struct _cl_event *cl_event; + +typedef GLsync (GLAPIENTRY * PFNGLCREATESYNCFROMCLEVENTARBPROC) (cl_context context, cl_event event, GLbitfield flags); + +#define glCreateSyncFromCLeventARB GLEW_GET_FUN(__glewCreateSyncFromCLeventARB) + +#define GLEW_ARB_cl_event GLEW_GET_VAR(__GLEW_ARB_cl_event) + +#endif /* GL_ARB_cl_event */ + +/* ----------------------- GL_ARB_clear_buffer_object ---------------------- */ + +#ifndef GL_ARB_clear_buffer_object +#define GL_ARB_clear_buffer_object 1 + +typedef void (GLAPIENTRY * PFNGLCLEARBUFFERDATAPROC) (GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCLEARBUFFERSUBDATAPROC) (GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCLEARNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCLEARNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data); + +#define glClearBufferData GLEW_GET_FUN(__glewClearBufferData) +#define glClearBufferSubData GLEW_GET_FUN(__glewClearBufferSubData) +#define glClearNamedBufferDataEXT GLEW_GET_FUN(__glewClearNamedBufferDataEXT) +#define glClearNamedBufferSubDataEXT GLEW_GET_FUN(__glewClearNamedBufferSubDataEXT) + +#define GLEW_ARB_clear_buffer_object GLEW_GET_VAR(__GLEW_ARB_clear_buffer_object) + +#endif /* GL_ARB_clear_buffer_object */ + +/* -------------------------- GL_ARB_clear_texture ------------------------- */ + +#ifndef GL_ARB_clear_texture +#define GL_ARB_clear_texture 1 + +#define GL_CLEAR_TEXTURE 0x9365 + +typedef void (GLAPIENTRY * PFNGLCLEARTEXIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCLEARTEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data); + +#define glClearTexImage GLEW_GET_FUN(__glewClearTexImage) +#define glClearTexSubImage GLEW_GET_FUN(__glewClearTexSubImage) + +#define GLEW_ARB_clear_texture GLEW_GET_VAR(__GLEW_ARB_clear_texture) + +#endif /* GL_ARB_clear_texture */ + +/* -------------------------- GL_ARB_clip_control -------------------------- */ + +#ifndef GL_ARB_clip_control +#define GL_ARB_clip_control 1 + +#define GL_LOWER_LEFT 0x8CA1 +#define GL_UPPER_LEFT 0x8CA2 +#define GL_CLIP_ORIGIN 0x935C +#define GL_CLIP_DEPTH_MODE 0x935D +#define GL_NEGATIVE_ONE_TO_ONE 0x935E +#define GL_ZERO_TO_ONE 0x935F + +typedef void (GLAPIENTRY * PFNGLCLIPCONTROLPROC) (GLenum origin, GLenum depth); + +#define glClipControl GLEW_GET_FUN(__glewClipControl) + +#define GLEW_ARB_clip_control GLEW_GET_VAR(__GLEW_ARB_clip_control) + +#endif /* GL_ARB_clip_control */ + +/* ----------------------- GL_ARB_color_buffer_float ----------------------- */ + +#ifndef GL_ARB_color_buffer_float +#define GL_ARB_color_buffer_float 1 + +#define GL_RGBA_FLOAT_MODE_ARB 0x8820 +#define GL_CLAMP_VERTEX_COLOR_ARB 0x891A +#define GL_CLAMP_FRAGMENT_COLOR_ARB 0x891B +#define GL_CLAMP_READ_COLOR_ARB 0x891C +#define GL_FIXED_ONLY_ARB 0x891D + +typedef void (GLAPIENTRY * PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp); + +#define glClampColorARB GLEW_GET_FUN(__glewClampColorARB) + +#define GLEW_ARB_color_buffer_float GLEW_GET_VAR(__GLEW_ARB_color_buffer_float) + +#endif /* GL_ARB_color_buffer_float */ + +/* -------------------------- GL_ARB_compatibility ------------------------- */ + +#ifndef GL_ARB_compatibility +#define GL_ARB_compatibility 1 + +#define GLEW_ARB_compatibility GLEW_GET_VAR(__GLEW_ARB_compatibility) + +#endif /* GL_ARB_compatibility */ + +/* ---------------- GL_ARB_compressed_texture_pixel_storage ---------------- */ + +#ifndef GL_ARB_compressed_texture_pixel_storage +#define GL_ARB_compressed_texture_pixel_storage 1 + +#define GL_UNPACK_COMPRESSED_BLOCK_WIDTH 0x9127 +#define GL_UNPACK_COMPRESSED_BLOCK_HEIGHT 0x9128 +#define GL_UNPACK_COMPRESSED_BLOCK_DEPTH 0x9129 +#define GL_UNPACK_COMPRESSED_BLOCK_SIZE 0x912A +#define GL_PACK_COMPRESSED_BLOCK_WIDTH 0x912B +#define GL_PACK_COMPRESSED_BLOCK_HEIGHT 0x912C +#define GL_PACK_COMPRESSED_BLOCK_DEPTH 0x912D +#define GL_PACK_COMPRESSED_BLOCK_SIZE 0x912E + +#define GLEW_ARB_compressed_texture_pixel_storage GLEW_GET_VAR(__GLEW_ARB_compressed_texture_pixel_storage) + +#endif /* GL_ARB_compressed_texture_pixel_storage */ + +/* ------------------------- GL_ARB_compute_shader ------------------------- */ + +#ifndef GL_ARB_compute_shader +#define GL_ARB_compute_shader 1 + +#define GL_COMPUTE_SHADER_BIT 0x00000020 +#define GL_MAX_COMPUTE_SHARED_MEMORY_SIZE 0x8262 +#define GL_MAX_COMPUTE_UNIFORM_COMPONENTS 0x8263 +#define GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS 0x8264 +#define GL_MAX_COMPUTE_ATOMIC_COUNTERS 0x8265 +#define GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS 0x8266 +#define GL_COMPUTE_WORK_GROUP_SIZE 0x8267 +#define GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS 0x90EB +#define GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER 0x90EC +#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER 0x90ED +#define GL_DISPATCH_INDIRECT_BUFFER 0x90EE +#define GL_DISPATCH_INDIRECT_BUFFER_BINDING 0x90EF +#define GL_COMPUTE_SHADER 0x91B9 +#define GL_MAX_COMPUTE_UNIFORM_BLOCKS 0x91BB +#define GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS 0x91BC +#define GL_MAX_COMPUTE_IMAGE_UNIFORMS 0x91BD +#define GL_MAX_COMPUTE_WORK_GROUP_COUNT 0x91BE +#define GL_MAX_COMPUTE_WORK_GROUP_SIZE 0x91BF + +typedef void (GLAPIENTRY * PFNGLDISPATCHCOMPUTEPROC) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z); +typedef void (GLAPIENTRY * PFNGLDISPATCHCOMPUTEINDIRECTPROC) (GLintptr indirect); + +#define glDispatchCompute GLEW_GET_FUN(__glewDispatchCompute) +#define glDispatchComputeIndirect GLEW_GET_FUN(__glewDispatchComputeIndirect) + +#define GLEW_ARB_compute_shader GLEW_GET_VAR(__GLEW_ARB_compute_shader) + +#endif /* GL_ARB_compute_shader */ + +/* ------------------- GL_ARB_compute_variable_group_size ------------------ */ + +#ifndef GL_ARB_compute_variable_group_size +#define GL_ARB_compute_variable_group_size 1 + +#define GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB 0x90EB +#define GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB 0x91BF +#define GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB 0x9344 +#define GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB 0x9345 + +typedef void (GLAPIENTRY * PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z, GLuint group_size_x, GLuint group_size_y, GLuint group_size_z); + +#define glDispatchComputeGroupSizeARB GLEW_GET_FUN(__glewDispatchComputeGroupSizeARB) + +#define GLEW_ARB_compute_variable_group_size GLEW_GET_VAR(__GLEW_ARB_compute_variable_group_size) + +#endif /* GL_ARB_compute_variable_group_size */ + +/* ------------------- GL_ARB_conditional_render_inverted ------------------ */ + +#ifndef GL_ARB_conditional_render_inverted +#define GL_ARB_conditional_render_inverted 1 + +#define GL_QUERY_WAIT_INVERTED 0x8E17 +#define GL_QUERY_NO_WAIT_INVERTED 0x8E18 +#define GL_QUERY_BY_REGION_WAIT_INVERTED 0x8E19 +#define GL_QUERY_BY_REGION_NO_WAIT_INVERTED 0x8E1A + +#define GLEW_ARB_conditional_render_inverted GLEW_GET_VAR(__GLEW_ARB_conditional_render_inverted) + +#endif /* GL_ARB_conditional_render_inverted */ + +/* ----------------------- GL_ARB_conservative_depth ----------------------- */ + +#ifndef GL_ARB_conservative_depth +#define GL_ARB_conservative_depth 1 + +#define GLEW_ARB_conservative_depth GLEW_GET_VAR(__GLEW_ARB_conservative_depth) + +#endif /* GL_ARB_conservative_depth */ + +/* --------------------------- GL_ARB_copy_buffer -------------------------- */ + +#ifndef GL_ARB_copy_buffer +#define GL_ARB_copy_buffer 1 + +#define GL_COPY_READ_BUFFER 0x8F36 +#define GL_COPY_WRITE_BUFFER 0x8F37 + +typedef void (GLAPIENTRY * PFNGLCOPYBUFFERSUBDATAPROC) (GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size); + +#define glCopyBufferSubData GLEW_GET_FUN(__glewCopyBufferSubData) + +#define GLEW_ARB_copy_buffer GLEW_GET_VAR(__GLEW_ARB_copy_buffer) + +#endif /* GL_ARB_copy_buffer */ + +/* --------------------------- GL_ARB_copy_image --------------------------- */ + +#ifndef GL_ARB_copy_image +#define GL_ARB_copy_image 1 + +typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATAPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); + +#define glCopyImageSubData GLEW_GET_FUN(__glewCopyImageSubData) + +#define GLEW_ARB_copy_image GLEW_GET_VAR(__GLEW_ARB_copy_image) + +#endif /* GL_ARB_copy_image */ + +/* -------------------------- GL_ARB_cull_distance ------------------------- */ + +#ifndef GL_ARB_cull_distance +#define GL_ARB_cull_distance 1 + +#define GL_MAX_CULL_DISTANCES 0x82F9 +#define GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES 0x82FA + +#define GLEW_ARB_cull_distance GLEW_GET_VAR(__GLEW_ARB_cull_distance) + +#endif /* GL_ARB_cull_distance */ + +/* -------------------------- GL_ARB_debug_output -------------------------- */ + +#ifndef GL_ARB_debug_output +#define GL_ARB_debug_output 1 + +#define GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB 0x8242 +#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB 0x8243 +#define GL_DEBUG_CALLBACK_FUNCTION_ARB 0x8244 +#define GL_DEBUG_CALLBACK_USER_PARAM_ARB 0x8245 +#define GL_DEBUG_SOURCE_API_ARB 0x8246 +#define GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB 0x8247 +#define GL_DEBUG_SOURCE_SHADER_COMPILER_ARB 0x8248 +#define GL_DEBUG_SOURCE_THIRD_PARTY_ARB 0x8249 +#define GL_DEBUG_SOURCE_APPLICATION_ARB 0x824A +#define GL_DEBUG_SOURCE_OTHER_ARB 0x824B +#define GL_DEBUG_TYPE_ERROR_ARB 0x824C +#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB 0x824D +#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB 0x824E +#define GL_DEBUG_TYPE_PORTABILITY_ARB 0x824F +#define GL_DEBUG_TYPE_PERFORMANCE_ARB 0x8250 +#define GL_DEBUG_TYPE_OTHER_ARB 0x8251 +#define GL_MAX_DEBUG_MESSAGE_LENGTH_ARB 0x9143 +#define GL_MAX_DEBUG_LOGGED_MESSAGES_ARB 0x9144 +#define GL_DEBUG_LOGGED_MESSAGES_ARB 0x9145 +#define GL_DEBUG_SEVERITY_HIGH_ARB 0x9146 +#define GL_DEBUG_SEVERITY_MEDIUM_ARB 0x9147 +#define GL_DEBUG_SEVERITY_LOW_ARB 0x9148 + +typedef void (GLAPIENTRY *GLDEBUGPROCARB)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* message, const void* userParam); + +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACKARBPROC) (GLDEBUGPROCARB callback, const void *userParam); +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECONTROLARBPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled); +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERTARBPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* buf); +typedef GLuint (GLAPIENTRY * PFNGLGETDEBUGMESSAGELOGARBPROC) (GLuint count, GLsizei bufSize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, GLchar* messageLog); + +#define glDebugMessageCallbackARB GLEW_GET_FUN(__glewDebugMessageCallbackARB) +#define glDebugMessageControlARB GLEW_GET_FUN(__glewDebugMessageControlARB) +#define glDebugMessageInsertARB GLEW_GET_FUN(__glewDebugMessageInsertARB) +#define glGetDebugMessageLogARB GLEW_GET_FUN(__glewGetDebugMessageLogARB) + +#define GLEW_ARB_debug_output GLEW_GET_VAR(__GLEW_ARB_debug_output) + +#endif /* GL_ARB_debug_output */ + +/* ----------------------- GL_ARB_depth_buffer_float ----------------------- */ + +#ifndef GL_ARB_depth_buffer_float +#define GL_ARB_depth_buffer_float 1 + +#define GL_DEPTH_COMPONENT32F 0x8CAC +#define GL_DEPTH32F_STENCIL8 0x8CAD +#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD + +#define GLEW_ARB_depth_buffer_float GLEW_GET_VAR(__GLEW_ARB_depth_buffer_float) + +#endif /* GL_ARB_depth_buffer_float */ + +/* --------------------------- GL_ARB_depth_clamp -------------------------- */ + +#ifndef GL_ARB_depth_clamp +#define GL_ARB_depth_clamp 1 + +#define GL_DEPTH_CLAMP 0x864F + +#define GLEW_ARB_depth_clamp GLEW_GET_VAR(__GLEW_ARB_depth_clamp) + +#endif /* GL_ARB_depth_clamp */ + +/* -------------------------- GL_ARB_depth_texture ------------------------- */ + +#ifndef GL_ARB_depth_texture +#define GL_ARB_depth_texture 1 + +#define GL_DEPTH_COMPONENT16_ARB 0x81A5 +#define GL_DEPTH_COMPONENT24_ARB 0x81A6 +#define GL_DEPTH_COMPONENT32_ARB 0x81A7 +#define GL_TEXTURE_DEPTH_SIZE_ARB 0x884A +#define GL_DEPTH_TEXTURE_MODE_ARB 0x884B + +#define GLEW_ARB_depth_texture GLEW_GET_VAR(__GLEW_ARB_depth_texture) + +#endif /* GL_ARB_depth_texture */ + +/* ----------------------- GL_ARB_derivative_control ----------------------- */ + +#ifndef GL_ARB_derivative_control +#define GL_ARB_derivative_control 1 + +#define GLEW_ARB_derivative_control GLEW_GET_VAR(__GLEW_ARB_derivative_control) + +#endif /* GL_ARB_derivative_control */ + +/* ----------------------- GL_ARB_direct_state_access ---------------------- */ + +#ifndef GL_ARB_direct_state_access +#define GL_ARB_direct_state_access 1 + +#define GL_TEXTURE_TARGET 0x1006 +#define GL_QUERY_TARGET 0x82EA + +typedef void (GLAPIENTRY * PFNGLBINDTEXTUREUNITPROC) (GLuint unit, GLuint texture); +typedef void (GLAPIENTRY * PFNGLBLITNAMEDFRAMEBUFFERPROC) (GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +typedef GLenum (GLAPIENTRY * PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC) (GLuint framebuffer, GLenum target); +typedef void (GLAPIENTRY * PFNGLCLEARNAMEDBUFFERDATAPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCLEARNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERFIPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil); +typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERFVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERIVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint* value); +typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOPYNAMEDBUFFERSUBDATAPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLCREATEBUFFERSPROC) (GLsizei n, GLuint* buffers); +typedef void (GLAPIENTRY * PFNGLCREATEFRAMEBUFFERSPROC) (GLsizei n, GLuint* framebuffers); +typedef void (GLAPIENTRY * PFNGLCREATEPROGRAMPIPELINESPROC) (GLsizei n, GLuint* pipelines); +typedef void (GLAPIENTRY * PFNGLCREATEQUERIESPROC) (GLenum target, GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLCREATERENDERBUFFERSPROC) (GLsizei n, GLuint* renderbuffers); +typedef void (GLAPIENTRY * PFNGLCREATESAMPLERSPROC) (GLsizei n, GLuint* samplers); +typedef void (GLAPIENTRY * PFNGLCREATETEXTURESPROC) (GLenum target, GLsizei n, GLuint* textures); +typedef void (GLAPIENTRY * PFNGLCREATETRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLCREATEVERTEXARRAYSPROC) (GLsizei n, GLuint* arrays); +typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index); +typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length); +typedef void (GLAPIENTRY * PFNGLGENERATETEXTUREMIPMAPPROC) (GLuint texture); +typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC) (GLuint texture, GLint level, GLsizei bufSize, void *pixels); +typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERI64VPROC) (GLuint buffer, GLenum pname, GLint64* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERIVPROC) (GLuint buffer, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPOINTERVPROC) (GLuint buffer, GLenum pname, void** params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, void *data); +typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC) (GLuint framebuffer, GLenum pname, GLint* param); +typedef void (GLAPIENTRY * PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC) (GLuint renderbuffer, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYBUFFEROBJECTI64VPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLGETQUERYBUFFEROBJECTIVPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLGETQUERYBUFFEROBJECTUI64VPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLGETQUERYBUFFEROBJECTUIVPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels); +typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERFVPROC) (GLuint texture, GLint level, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERIVPROC) (GLuint texture, GLint level, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERFVPROC) (GLuint texture, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIVPROC) (GLuint texture, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKI64_VPROC) (GLuint xfb, GLenum pname, GLuint index, GLint64* param); +typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKI_VPROC) (GLuint xfb, GLenum pname, GLuint index, GLint* param); +typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKIVPROC) (GLuint xfb, GLenum pname, GLint* param); +typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINDEXED64IVPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint64* param); +typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINDEXEDIVPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint* param); +typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYIVPROC) (GLuint vaobj, GLenum pname, GLint* param); +typedef void (GLAPIENTRY * PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC) (GLuint framebuffer, GLsizei numAttachments, const GLenum* attachments); +typedef void (GLAPIENTRY * PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC) (GLuint framebuffer, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void * (GLAPIENTRY * PFNGLMAPNAMEDBUFFERPROC) (GLuint buffer, GLenum access); +typedef void * (GLAPIENTRY * PFNGLMAPNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERDATAPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLenum usage); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSTORAGEPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC) (GLuint framebuffer, GLenum mode); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC) (GLuint framebuffer, GLsizei n, const GLenum* bufs); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC) (GLuint framebuffer, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC) (GLuint framebuffer, GLenum mode); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer); +typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFERPROC) (GLuint texture, GLenum internalformat, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFERRANGEPROC) (GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum pname, const GLuint* params); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFPROC) (GLuint texture, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFVPROC) (GLuint texture, GLenum pname, const GLfloat* param); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIPROC) (GLuint texture, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIVPROC) (GLuint texture, GLenum pname, const GLint* param); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE1DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); +typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC) (GLuint xfb, GLuint index, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC) (GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); +typedef GLboolean (GLAPIENTRY * PFNGLUNMAPNAMEDBUFFERPROC) (GLuint buffer); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYATTRIBBINDINGPROC) (GLuint vaobj, GLuint attribindex, GLuint bindingindex); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYATTRIBFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYATTRIBIFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYATTRIBLFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYBINDINGDIVISORPROC) (GLuint vaobj, GLuint bindingindex, GLuint divisor); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYELEMENTBUFFERPROC) (GLuint vaobj, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXBUFFERPROC) (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXBUFFERSPROC) (GLuint vaobj, GLuint first, GLsizei count, const GLuint* buffers, const GLintptr *offsets, const GLsizei *strides); + +#define glBindTextureUnit GLEW_GET_FUN(__glewBindTextureUnit) +#define glBlitNamedFramebuffer GLEW_GET_FUN(__glewBlitNamedFramebuffer) +#define glCheckNamedFramebufferStatus GLEW_GET_FUN(__glewCheckNamedFramebufferStatus) +#define glClearNamedBufferData GLEW_GET_FUN(__glewClearNamedBufferData) +#define glClearNamedBufferSubData GLEW_GET_FUN(__glewClearNamedBufferSubData) +#define glClearNamedFramebufferfi GLEW_GET_FUN(__glewClearNamedFramebufferfi) +#define glClearNamedFramebufferfv GLEW_GET_FUN(__glewClearNamedFramebufferfv) +#define glClearNamedFramebufferiv GLEW_GET_FUN(__glewClearNamedFramebufferiv) +#define glClearNamedFramebufferuiv GLEW_GET_FUN(__glewClearNamedFramebufferuiv) +#define glCompressedTextureSubImage1D GLEW_GET_FUN(__glewCompressedTextureSubImage1D) +#define glCompressedTextureSubImage2D GLEW_GET_FUN(__glewCompressedTextureSubImage2D) +#define glCompressedTextureSubImage3D GLEW_GET_FUN(__glewCompressedTextureSubImage3D) +#define glCopyNamedBufferSubData GLEW_GET_FUN(__glewCopyNamedBufferSubData) +#define glCopyTextureSubImage1D GLEW_GET_FUN(__glewCopyTextureSubImage1D) +#define glCopyTextureSubImage2D GLEW_GET_FUN(__glewCopyTextureSubImage2D) +#define glCopyTextureSubImage3D GLEW_GET_FUN(__glewCopyTextureSubImage3D) +#define glCreateBuffers GLEW_GET_FUN(__glewCreateBuffers) +#define glCreateFramebuffers GLEW_GET_FUN(__glewCreateFramebuffers) +#define glCreateProgramPipelines GLEW_GET_FUN(__glewCreateProgramPipelines) +#define glCreateQueries GLEW_GET_FUN(__glewCreateQueries) +#define glCreateRenderbuffers GLEW_GET_FUN(__glewCreateRenderbuffers) +#define glCreateSamplers GLEW_GET_FUN(__glewCreateSamplers) +#define glCreateTextures GLEW_GET_FUN(__glewCreateTextures) +#define glCreateTransformFeedbacks GLEW_GET_FUN(__glewCreateTransformFeedbacks) +#define glCreateVertexArrays GLEW_GET_FUN(__glewCreateVertexArrays) +#define glDisableVertexArrayAttrib GLEW_GET_FUN(__glewDisableVertexArrayAttrib) +#define glEnableVertexArrayAttrib GLEW_GET_FUN(__glewEnableVertexArrayAttrib) +#define glFlushMappedNamedBufferRange GLEW_GET_FUN(__glewFlushMappedNamedBufferRange) +#define glGenerateTextureMipmap GLEW_GET_FUN(__glewGenerateTextureMipmap) +#define glGetCompressedTextureImage GLEW_GET_FUN(__glewGetCompressedTextureImage) +#define glGetNamedBufferParameteri64v GLEW_GET_FUN(__glewGetNamedBufferParameteri64v) +#define glGetNamedBufferParameteriv GLEW_GET_FUN(__glewGetNamedBufferParameteriv) +#define glGetNamedBufferPointerv GLEW_GET_FUN(__glewGetNamedBufferPointerv) +#define glGetNamedBufferSubData GLEW_GET_FUN(__glewGetNamedBufferSubData) +#define glGetNamedFramebufferAttachmentParameteriv GLEW_GET_FUN(__glewGetNamedFramebufferAttachmentParameteriv) +#define glGetNamedFramebufferParameteriv GLEW_GET_FUN(__glewGetNamedFramebufferParameteriv) +#define glGetNamedRenderbufferParameteriv GLEW_GET_FUN(__glewGetNamedRenderbufferParameteriv) +#define glGetQueryBufferObjecti64v GLEW_GET_FUN(__glewGetQueryBufferObjecti64v) +#define glGetQueryBufferObjectiv GLEW_GET_FUN(__glewGetQueryBufferObjectiv) +#define glGetQueryBufferObjectui64v GLEW_GET_FUN(__glewGetQueryBufferObjectui64v) +#define glGetQueryBufferObjectuiv GLEW_GET_FUN(__glewGetQueryBufferObjectuiv) +#define glGetTextureImage GLEW_GET_FUN(__glewGetTextureImage) +#define glGetTextureLevelParameterfv GLEW_GET_FUN(__glewGetTextureLevelParameterfv) +#define glGetTextureLevelParameteriv GLEW_GET_FUN(__glewGetTextureLevelParameteriv) +#define glGetTextureParameterIiv GLEW_GET_FUN(__glewGetTextureParameterIiv) +#define glGetTextureParameterIuiv GLEW_GET_FUN(__glewGetTextureParameterIuiv) +#define glGetTextureParameterfv GLEW_GET_FUN(__glewGetTextureParameterfv) +#define glGetTextureParameteriv GLEW_GET_FUN(__glewGetTextureParameteriv) +#define glGetTransformFeedbacki64_v GLEW_GET_FUN(__glewGetTransformFeedbacki64_v) +#define glGetTransformFeedbacki_v GLEW_GET_FUN(__glewGetTransformFeedbacki_v) +#define glGetTransformFeedbackiv GLEW_GET_FUN(__glewGetTransformFeedbackiv) +#define glGetVertexArrayIndexed64iv GLEW_GET_FUN(__glewGetVertexArrayIndexed64iv) +#define glGetVertexArrayIndexediv GLEW_GET_FUN(__glewGetVertexArrayIndexediv) +#define glGetVertexArrayiv GLEW_GET_FUN(__glewGetVertexArrayiv) +#define glInvalidateNamedFramebufferData GLEW_GET_FUN(__glewInvalidateNamedFramebufferData) +#define glInvalidateNamedFramebufferSubData GLEW_GET_FUN(__glewInvalidateNamedFramebufferSubData) +#define glMapNamedBuffer GLEW_GET_FUN(__glewMapNamedBuffer) +#define glMapNamedBufferRange GLEW_GET_FUN(__glewMapNamedBufferRange) +#define glNamedBufferData GLEW_GET_FUN(__glewNamedBufferData) +#define glNamedBufferStorage GLEW_GET_FUN(__glewNamedBufferStorage) +#define glNamedBufferSubData GLEW_GET_FUN(__glewNamedBufferSubData) +#define glNamedFramebufferDrawBuffer GLEW_GET_FUN(__glewNamedFramebufferDrawBuffer) +#define glNamedFramebufferDrawBuffers GLEW_GET_FUN(__glewNamedFramebufferDrawBuffers) +#define glNamedFramebufferParameteri GLEW_GET_FUN(__glewNamedFramebufferParameteri) +#define glNamedFramebufferReadBuffer GLEW_GET_FUN(__glewNamedFramebufferReadBuffer) +#define glNamedFramebufferRenderbuffer GLEW_GET_FUN(__glewNamedFramebufferRenderbuffer) +#define glNamedFramebufferTexture GLEW_GET_FUN(__glewNamedFramebufferTexture) +#define glNamedFramebufferTextureLayer GLEW_GET_FUN(__glewNamedFramebufferTextureLayer) +#define glNamedRenderbufferStorage GLEW_GET_FUN(__glewNamedRenderbufferStorage) +#define glNamedRenderbufferStorageMultisample GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisample) +#define glTextureBuffer GLEW_GET_FUN(__glewTextureBuffer) +#define glTextureBufferRange GLEW_GET_FUN(__glewTextureBufferRange) +#define glTextureParameterIiv GLEW_GET_FUN(__glewTextureParameterIiv) +#define glTextureParameterIuiv GLEW_GET_FUN(__glewTextureParameterIuiv) +#define glTextureParameterf GLEW_GET_FUN(__glewTextureParameterf) +#define glTextureParameterfv GLEW_GET_FUN(__glewTextureParameterfv) +#define glTextureParameteri GLEW_GET_FUN(__glewTextureParameteri) +#define glTextureParameteriv GLEW_GET_FUN(__glewTextureParameteriv) +#define glTextureStorage1D GLEW_GET_FUN(__glewTextureStorage1D) +#define glTextureStorage2D GLEW_GET_FUN(__glewTextureStorage2D) +#define glTextureStorage2DMultisample GLEW_GET_FUN(__glewTextureStorage2DMultisample) +#define glTextureStorage3D GLEW_GET_FUN(__glewTextureStorage3D) +#define glTextureStorage3DMultisample GLEW_GET_FUN(__glewTextureStorage3DMultisample) +#define glTextureSubImage1D GLEW_GET_FUN(__glewTextureSubImage1D) +#define glTextureSubImage2D GLEW_GET_FUN(__glewTextureSubImage2D) +#define glTextureSubImage3D GLEW_GET_FUN(__glewTextureSubImage3D) +#define glTransformFeedbackBufferBase GLEW_GET_FUN(__glewTransformFeedbackBufferBase) +#define glTransformFeedbackBufferRange GLEW_GET_FUN(__glewTransformFeedbackBufferRange) +#define glUnmapNamedBuffer GLEW_GET_FUN(__glewUnmapNamedBuffer) +#define glVertexArrayAttribBinding GLEW_GET_FUN(__glewVertexArrayAttribBinding) +#define glVertexArrayAttribFormat GLEW_GET_FUN(__glewVertexArrayAttribFormat) +#define glVertexArrayAttribIFormat GLEW_GET_FUN(__glewVertexArrayAttribIFormat) +#define glVertexArrayAttribLFormat GLEW_GET_FUN(__glewVertexArrayAttribLFormat) +#define glVertexArrayBindingDivisor GLEW_GET_FUN(__glewVertexArrayBindingDivisor) +#define glVertexArrayElementBuffer GLEW_GET_FUN(__glewVertexArrayElementBuffer) +#define glVertexArrayVertexBuffer GLEW_GET_FUN(__glewVertexArrayVertexBuffer) +#define glVertexArrayVertexBuffers GLEW_GET_FUN(__glewVertexArrayVertexBuffers) + +#define GLEW_ARB_direct_state_access GLEW_GET_VAR(__GLEW_ARB_direct_state_access) + +#endif /* GL_ARB_direct_state_access */ + +/* -------------------------- GL_ARB_draw_buffers -------------------------- */ + +#ifndef GL_ARB_draw_buffers +#define GL_ARB_draw_buffers 1 + +#define GL_MAX_DRAW_BUFFERS_ARB 0x8824 +#define GL_DRAW_BUFFER0_ARB 0x8825 +#define GL_DRAW_BUFFER1_ARB 0x8826 +#define GL_DRAW_BUFFER2_ARB 0x8827 +#define GL_DRAW_BUFFER3_ARB 0x8828 +#define GL_DRAW_BUFFER4_ARB 0x8829 +#define GL_DRAW_BUFFER5_ARB 0x882A +#define GL_DRAW_BUFFER6_ARB 0x882B +#define GL_DRAW_BUFFER7_ARB 0x882C +#define GL_DRAW_BUFFER8_ARB 0x882D +#define GL_DRAW_BUFFER9_ARB 0x882E +#define GL_DRAW_BUFFER10_ARB 0x882F +#define GL_DRAW_BUFFER11_ARB 0x8830 +#define GL_DRAW_BUFFER12_ARB 0x8831 +#define GL_DRAW_BUFFER13_ARB 0x8832 +#define GL_DRAW_BUFFER14_ARB 0x8833 +#define GL_DRAW_BUFFER15_ARB 0x8834 + +typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSARBPROC) (GLsizei n, const GLenum* bufs); + +#define glDrawBuffersARB GLEW_GET_FUN(__glewDrawBuffersARB) + +#define GLEW_ARB_draw_buffers GLEW_GET_VAR(__GLEW_ARB_draw_buffers) + +#endif /* GL_ARB_draw_buffers */ + +/* ----------------------- GL_ARB_draw_buffers_blend ----------------------- */ + +#ifndef GL_ARB_draw_buffers_blend +#define GL_ARB_draw_buffers_blend 1 + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIARBPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIARBPROC) (GLuint buf, GLenum mode); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIARBPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCIARBPROC) (GLuint buf, GLenum src, GLenum dst); + +#define glBlendEquationSeparateiARB GLEW_GET_FUN(__glewBlendEquationSeparateiARB) +#define glBlendEquationiARB GLEW_GET_FUN(__glewBlendEquationiARB) +#define glBlendFuncSeparateiARB GLEW_GET_FUN(__glewBlendFuncSeparateiARB) +#define glBlendFunciARB GLEW_GET_FUN(__glewBlendFunciARB) + +#define GLEW_ARB_draw_buffers_blend GLEW_GET_VAR(__GLEW_ARB_draw_buffers_blend) + +#endif /* GL_ARB_draw_buffers_blend */ + +/* -------------------- GL_ARB_draw_elements_base_vertex ------------------- */ + +#ifndef GL_ARB_draw_elements_base_vertex +#define GL_ARB_draw_elements_base_vertex 1 + +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex); +typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, const GLsizei* count, GLenum type, const void*const *indices, GLsizei drawcount, const GLint *basevertex); + +#define glDrawElementsBaseVertex GLEW_GET_FUN(__glewDrawElementsBaseVertex) +#define glDrawElementsInstancedBaseVertex GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertex) +#define glDrawRangeElementsBaseVertex GLEW_GET_FUN(__glewDrawRangeElementsBaseVertex) +#define glMultiDrawElementsBaseVertex GLEW_GET_FUN(__glewMultiDrawElementsBaseVertex) + +#define GLEW_ARB_draw_elements_base_vertex GLEW_GET_VAR(__GLEW_ARB_draw_elements_base_vertex) + +#endif /* GL_ARB_draw_elements_base_vertex */ + +/* -------------------------- GL_ARB_draw_indirect ------------------------- */ + +#ifndef GL_ARB_draw_indirect +#define GL_ARB_draw_indirect 1 + +#define GL_DRAW_INDIRECT_BUFFER 0x8F3F +#define GL_DRAW_INDIRECT_BUFFER_BINDING 0x8F43 + +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINDIRECTPROC) (GLenum mode, const void *indirect); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void *indirect); + +#define glDrawArraysIndirect GLEW_GET_FUN(__glewDrawArraysIndirect) +#define glDrawElementsIndirect GLEW_GET_FUN(__glewDrawElementsIndirect) + +#define GLEW_ARB_draw_indirect GLEW_GET_VAR(__GLEW_ARB_draw_indirect) + +#endif /* GL_ARB_draw_indirect */ + +/* ------------------------- GL_ARB_draw_instanced ------------------------- */ + +#ifndef GL_ARB_draw_instanced +#define GL_ARB_draw_instanced 1 + +#define GLEW_ARB_draw_instanced GLEW_GET_VAR(__GLEW_ARB_draw_instanced) + +#endif /* GL_ARB_draw_instanced */ + +/* ------------------------ GL_ARB_enhanced_layouts ------------------------ */ + +#ifndef GL_ARB_enhanced_layouts +#define GL_ARB_enhanced_layouts 1 + +#define GL_LOCATION_COMPONENT 0x934A +#define GL_TRANSFORM_FEEDBACK_BUFFER_INDEX 0x934B +#define GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE 0x934C + +#define GLEW_ARB_enhanced_layouts GLEW_GET_VAR(__GLEW_ARB_enhanced_layouts) + +#endif /* GL_ARB_enhanced_layouts */ + +/* -------------------- GL_ARB_explicit_attrib_location -------------------- */ + +#ifndef GL_ARB_explicit_attrib_location +#define GL_ARB_explicit_attrib_location 1 + +#define GLEW_ARB_explicit_attrib_location GLEW_GET_VAR(__GLEW_ARB_explicit_attrib_location) + +#endif /* GL_ARB_explicit_attrib_location */ + +/* -------------------- GL_ARB_explicit_uniform_location ------------------- */ + +#ifndef GL_ARB_explicit_uniform_location +#define GL_ARB_explicit_uniform_location 1 + +#define GL_MAX_UNIFORM_LOCATIONS 0x826E + +#define GLEW_ARB_explicit_uniform_location GLEW_GET_VAR(__GLEW_ARB_explicit_uniform_location) + +#endif /* GL_ARB_explicit_uniform_location */ + +/* ------------------- GL_ARB_fragment_coord_conventions ------------------- */ + +#ifndef GL_ARB_fragment_coord_conventions +#define GL_ARB_fragment_coord_conventions 1 + +#define GLEW_ARB_fragment_coord_conventions GLEW_GET_VAR(__GLEW_ARB_fragment_coord_conventions) + +#endif /* GL_ARB_fragment_coord_conventions */ + +/* --------------------- GL_ARB_fragment_layer_viewport -------------------- */ + +#ifndef GL_ARB_fragment_layer_viewport +#define GL_ARB_fragment_layer_viewport 1 + +#define GLEW_ARB_fragment_layer_viewport GLEW_GET_VAR(__GLEW_ARB_fragment_layer_viewport) + +#endif /* GL_ARB_fragment_layer_viewport */ + +/* ------------------------ GL_ARB_fragment_program ------------------------ */ + +#ifndef GL_ARB_fragment_program +#define GL_ARB_fragment_program 1 + +#define GL_FRAGMENT_PROGRAM_ARB 0x8804 +#define GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805 +#define GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806 +#define GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807 +#define GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808 +#define GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809 +#define GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A +#define GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B +#define GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C +#define GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D +#define GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E +#define GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F +#define GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810 +#define GL_MAX_TEXTURE_COORDS_ARB 0x8871 +#define GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872 + +#define GLEW_ARB_fragment_program GLEW_GET_VAR(__GLEW_ARB_fragment_program) + +#endif /* GL_ARB_fragment_program */ + +/* --------------------- GL_ARB_fragment_program_shadow -------------------- */ + +#ifndef GL_ARB_fragment_program_shadow +#define GL_ARB_fragment_program_shadow 1 + +#define GLEW_ARB_fragment_program_shadow GLEW_GET_VAR(__GLEW_ARB_fragment_program_shadow) + +#endif /* GL_ARB_fragment_program_shadow */ + +/* ------------------------- GL_ARB_fragment_shader ------------------------ */ + +#ifndef GL_ARB_fragment_shader +#define GL_ARB_fragment_shader 1 + +#define GL_FRAGMENT_SHADER_ARB 0x8B30 +#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB 0x8B49 +#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB 0x8B8B + +#define GLEW_ARB_fragment_shader GLEW_GET_VAR(__GLEW_ARB_fragment_shader) + +#endif /* GL_ARB_fragment_shader */ + +/* -------------------- GL_ARB_fragment_shader_interlock ------------------- */ + +#ifndef GL_ARB_fragment_shader_interlock +#define GL_ARB_fragment_shader_interlock 1 + +#define GLEW_ARB_fragment_shader_interlock GLEW_GET_VAR(__GLEW_ARB_fragment_shader_interlock) + +#endif /* GL_ARB_fragment_shader_interlock */ + +/* ------------------- GL_ARB_framebuffer_no_attachments ------------------- */ + +#ifndef GL_ARB_framebuffer_no_attachments +#define GL_ARB_framebuffer_no_attachments 1 + +#define GL_FRAMEBUFFER_DEFAULT_WIDTH 0x9310 +#define GL_FRAMEBUFFER_DEFAULT_HEIGHT 0x9311 +#define GL_FRAMEBUFFER_DEFAULT_LAYERS 0x9312 +#define GL_FRAMEBUFFER_DEFAULT_SAMPLES 0x9313 +#define GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS 0x9314 +#define GL_MAX_FRAMEBUFFER_WIDTH 0x9315 +#define GL_MAX_FRAMEBUFFER_HEIGHT 0x9316 +#define GL_MAX_FRAMEBUFFER_LAYERS 0x9317 +#define GL_MAX_FRAMEBUFFER_SAMPLES 0x9318 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERPARAMETERIPROC) (GLenum target, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERPARAMETERIEXTPROC) (GLuint framebuffer, GLenum pname, GLint param); + +#define glFramebufferParameteri GLEW_GET_FUN(__glewFramebufferParameteri) +#define glGetFramebufferParameteriv GLEW_GET_FUN(__glewGetFramebufferParameteriv) +#define glGetNamedFramebufferParameterivEXT GLEW_GET_FUN(__glewGetNamedFramebufferParameterivEXT) +#define glNamedFramebufferParameteriEXT GLEW_GET_FUN(__glewNamedFramebufferParameteriEXT) + +#define GLEW_ARB_framebuffer_no_attachments GLEW_GET_VAR(__GLEW_ARB_framebuffer_no_attachments) + +#endif /* GL_ARB_framebuffer_no_attachments */ + +/* ----------------------- GL_ARB_framebuffer_object ----------------------- */ + +#ifndef GL_ARB_framebuffer_object +#define GL_ARB_framebuffer_object 1 + +#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506 +#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210 +#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211 +#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212 +#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213 +#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214 +#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215 +#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216 +#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217 +#define GL_FRAMEBUFFER_DEFAULT 0x8218 +#define GL_FRAMEBUFFER_UNDEFINED 0x8219 +#define GL_DEPTH_STENCIL_ATTACHMENT 0x821A +#define GL_INDEX 0x8222 +#define GL_MAX_RENDERBUFFER_SIZE 0x84E8 +#define GL_DEPTH_STENCIL 0x84F9 +#define GL_UNSIGNED_INT_24_8 0x84FA +#define GL_DEPTH24_STENCIL8 0x88F0 +#define GL_TEXTURE_STENCIL_SIZE 0x88F1 +#define GL_UNSIGNED_NORMALIZED 0x8C17 +#define GL_SRGB 0x8C40 +#define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6 +#define GL_FRAMEBUFFER_BINDING 0x8CA6 +#define GL_RENDERBUFFER_BINDING 0x8CA7 +#define GL_READ_FRAMEBUFFER 0x8CA8 +#define GL_DRAW_FRAMEBUFFER 0x8CA9 +#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA +#define GL_RENDERBUFFER_SAMPLES 0x8CAB +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4 +#define GL_FRAMEBUFFER_COMPLETE 0x8CD5 +#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6 +#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7 +#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB +#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC +#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD +#define GL_MAX_COLOR_ATTACHMENTS 0x8CDF +#define GL_COLOR_ATTACHMENT0 0x8CE0 +#define GL_COLOR_ATTACHMENT1 0x8CE1 +#define GL_COLOR_ATTACHMENT2 0x8CE2 +#define GL_COLOR_ATTACHMENT3 0x8CE3 +#define GL_COLOR_ATTACHMENT4 0x8CE4 +#define GL_COLOR_ATTACHMENT5 0x8CE5 +#define GL_COLOR_ATTACHMENT6 0x8CE6 +#define GL_COLOR_ATTACHMENT7 0x8CE7 +#define GL_COLOR_ATTACHMENT8 0x8CE8 +#define GL_COLOR_ATTACHMENT9 0x8CE9 +#define GL_COLOR_ATTACHMENT10 0x8CEA +#define GL_COLOR_ATTACHMENT11 0x8CEB +#define GL_COLOR_ATTACHMENT12 0x8CEC +#define GL_COLOR_ATTACHMENT13 0x8CED +#define GL_COLOR_ATTACHMENT14 0x8CEE +#define GL_COLOR_ATTACHMENT15 0x8CEF +#define GL_DEPTH_ATTACHMENT 0x8D00 +#define GL_STENCIL_ATTACHMENT 0x8D20 +#define GL_FRAMEBUFFER 0x8D40 +#define GL_RENDERBUFFER 0x8D41 +#define GL_RENDERBUFFER_WIDTH 0x8D42 +#define GL_RENDERBUFFER_HEIGHT 0x8D43 +#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44 +#define GL_STENCIL_INDEX1 0x8D46 +#define GL_STENCIL_INDEX4 0x8D47 +#define GL_STENCIL_INDEX8 0x8D48 +#define GL_STENCIL_INDEX16 0x8D49 +#define GL_RENDERBUFFER_RED_SIZE 0x8D50 +#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51 +#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52 +#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53 +#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54 +#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56 +#define GL_MAX_SAMPLES 0x8D57 + +typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer); +typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint* framebuffers); +typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSPROC) (GLsizei n, const GLuint* renderbuffers); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint layer); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERPROC) (GLenum target,GLenum attachment, GLuint texture,GLint level,GLint layer); +typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSPROC) (GLsizei n, GLuint* framebuffers); +typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSPROC) (GLsizei n, GLuint* renderbuffers); +typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFERPROC) (GLuint framebuffer); +typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFERPROC) (GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); + +#define glBindFramebuffer GLEW_GET_FUN(__glewBindFramebuffer) +#define glBindRenderbuffer GLEW_GET_FUN(__glewBindRenderbuffer) +#define glBlitFramebuffer GLEW_GET_FUN(__glewBlitFramebuffer) +#define glCheckFramebufferStatus GLEW_GET_FUN(__glewCheckFramebufferStatus) +#define glDeleteFramebuffers GLEW_GET_FUN(__glewDeleteFramebuffers) +#define glDeleteRenderbuffers GLEW_GET_FUN(__glewDeleteRenderbuffers) +#define glFramebufferRenderbuffer GLEW_GET_FUN(__glewFramebufferRenderbuffer) +#define glFramebufferTexture1D GLEW_GET_FUN(__glewFramebufferTexture1D) +#define glFramebufferTexture2D GLEW_GET_FUN(__glewFramebufferTexture2D) +#define glFramebufferTexture3D GLEW_GET_FUN(__glewFramebufferTexture3D) +#define glFramebufferTextureLayer GLEW_GET_FUN(__glewFramebufferTextureLayer) +#define glGenFramebuffers GLEW_GET_FUN(__glewGenFramebuffers) +#define glGenRenderbuffers GLEW_GET_FUN(__glewGenRenderbuffers) +#define glGenerateMipmap GLEW_GET_FUN(__glewGenerateMipmap) +#define glGetFramebufferAttachmentParameteriv GLEW_GET_FUN(__glewGetFramebufferAttachmentParameteriv) +#define glGetRenderbufferParameteriv GLEW_GET_FUN(__glewGetRenderbufferParameteriv) +#define glIsFramebuffer GLEW_GET_FUN(__glewIsFramebuffer) +#define glIsRenderbuffer GLEW_GET_FUN(__glewIsRenderbuffer) +#define glRenderbufferStorage GLEW_GET_FUN(__glewRenderbufferStorage) +#define glRenderbufferStorageMultisample GLEW_GET_FUN(__glewRenderbufferStorageMultisample) + +#define GLEW_ARB_framebuffer_object GLEW_GET_VAR(__GLEW_ARB_framebuffer_object) + +#endif /* GL_ARB_framebuffer_object */ + +/* ------------------------ GL_ARB_framebuffer_sRGB ------------------------ */ + +#ifndef GL_ARB_framebuffer_sRGB +#define GL_ARB_framebuffer_sRGB 1 + +#define GL_FRAMEBUFFER_SRGB 0x8DB9 + +#define GLEW_ARB_framebuffer_sRGB GLEW_GET_VAR(__GLEW_ARB_framebuffer_sRGB) + +#endif /* GL_ARB_framebuffer_sRGB */ + +/* ------------------------ GL_ARB_geometry_shader4 ------------------------ */ + +#ifndef GL_ARB_geometry_shader4 +#define GL_ARB_geometry_shader4 1 + +#define GL_LINES_ADJACENCY_ARB 0xA +#define GL_LINE_STRIP_ADJACENCY_ARB 0xB +#define GL_TRIANGLES_ADJACENCY_ARB 0xC +#define GL_TRIANGLE_STRIP_ADJACENCY_ARB 0xD +#define GL_PROGRAM_POINT_SIZE_ARB 0x8642 +#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB 0x8C29 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4 +#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB 0x8DA7 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB 0x8DA8 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB 0x8DA9 +#define GL_GEOMETRY_SHADER_ARB 0x8DD9 +#define GL_GEOMETRY_VERTICES_OUT_ARB 0x8DDA +#define GL_GEOMETRY_INPUT_TYPE_ARB 0x8DDB +#define GL_GEOMETRY_OUTPUT_TYPE_ARB 0x8DDC +#define GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB 0x8DDD +#define GL_MAX_VERTEX_VARYING_COMPONENTS_ARB 0x8DDE +#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB 0x8DDF +#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB 0x8DE0 +#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB 0x8DE1 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREFACEARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIARBPROC) (GLuint program, GLenum pname, GLint value); + +#define glFramebufferTextureARB GLEW_GET_FUN(__glewFramebufferTextureARB) +#define glFramebufferTextureFaceARB GLEW_GET_FUN(__glewFramebufferTextureFaceARB) +#define glFramebufferTextureLayerARB GLEW_GET_FUN(__glewFramebufferTextureLayerARB) +#define glProgramParameteriARB GLEW_GET_FUN(__glewProgramParameteriARB) + +#define GLEW_ARB_geometry_shader4 GLEW_GET_VAR(__GLEW_ARB_geometry_shader4) + +#endif /* GL_ARB_geometry_shader4 */ + +/* ----------------------- GL_ARB_get_program_binary ----------------------- */ + +#ifndef GL_ARB_get_program_binary +#define GL_ARB_get_program_binary 1 + +#define GL_PROGRAM_BINARY_RETRIEVABLE_HINT 0x8257 +#define GL_PROGRAM_BINARY_LENGTH 0x8741 +#define GL_NUM_PROGRAM_BINARY_FORMATS 0x87FE +#define GL_PROGRAM_BINARY_FORMATS 0x87FF + +typedef void (GLAPIENTRY * PFNGLGETPROGRAMBINARYPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLenum *binaryFormat, void*binary); +typedef void (GLAPIENTRY * PFNGLPROGRAMBINARYPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLsizei length); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIPROC) (GLuint program, GLenum pname, GLint value); + +#define glGetProgramBinary GLEW_GET_FUN(__glewGetProgramBinary) +#define glProgramBinary GLEW_GET_FUN(__glewProgramBinary) +#define glProgramParameteri GLEW_GET_FUN(__glewProgramParameteri) + +#define GLEW_ARB_get_program_binary GLEW_GET_VAR(__GLEW_ARB_get_program_binary) + +#endif /* GL_ARB_get_program_binary */ + +/* ---------------------- GL_ARB_get_texture_sub_image --------------------- */ + +#ifndef GL_ARB_get_texture_sub_image +#define GL_ARB_get_texture_sub_image 1 + +typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels); +typedef void (GLAPIENTRY * PFNGLGETTEXTURESUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels); + +#define glGetCompressedTextureSubImage GLEW_GET_FUN(__glewGetCompressedTextureSubImage) +#define glGetTextureSubImage GLEW_GET_FUN(__glewGetTextureSubImage) + +#define GLEW_ARB_get_texture_sub_image GLEW_GET_VAR(__GLEW_ARB_get_texture_sub_image) + +#endif /* GL_ARB_get_texture_sub_image */ + +/* ---------------------------- GL_ARB_gl_spirv ---------------------------- */ + +#ifndef GL_ARB_gl_spirv +#define GL_ARB_gl_spirv 1 + +#define GL_SHADER_BINARY_FORMAT_SPIR_V_ARB 0x9551 +#define GL_SPIR_V_BINARY_ARB 0x9552 + +typedef void (GLAPIENTRY * PFNGLSPECIALIZESHADERARBPROC) (GLuint shader, const GLchar* pEntryPoint, GLuint numSpecializationConstants, const GLuint* pConstantIndex, const GLuint* pConstantValue); + +#define glSpecializeShaderARB GLEW_GET_FUN(__glewSpecializeShaderARB) + +#define GLEW_ARB_gl_spirv GLEW_GET_VAR(__GLEW_ARB_gl_spirv) + +#endif /* GL_ARB_gl_spirv */ + +/* --------------------------- GL_ARB_gpu_shader5 -------------------------- */ + +#ifndef GL_ARB_gpu_shader5 +#define GL_ARB_gpu_shader5 1 + +#define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F +#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A +#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B +#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C +#define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D +#define GL_MAX_VERTEX_STREAMS 0x8E71 + +#define GLEW_ARB_gpu_shader5 GLEW_GET_VAR(__GLEW_ARB_gpu_shader5) + +#endif /* GL_ARB_gpu_shader5 */ + +/* ------------------------- GL_ARB_gpu_shader_fp64 ------------------------ */ + +#ifndef GL_ARB_gpu_shader_fp64 +#define GL_ARB_gpu_shader_fp64 1 + +#define GL_DOUBLE_MAT2 0x8F46 +#define GL_DOUBLE_MAT3 0x8F47 +#define GL_DOUBLE_MAT4 0x8F48 +#define GL_DOUBLE_MAT2x3 0x8F49 +#define GL_DOUBLE_MAT2x4 0x8F4A +#define GL_DOUBLE_MAT3x2 0x8F4B +#define GL_DOUBLE_MAT3x4 0x8F4C +#define GL_DOUBLE_MAT4x2 0x8F4D +#define GL_DOUBLE_MAT4x3 0x8F4E +#define GL_DOUBLE_VEC2 0x8FFC +#define GL_DOUBLE_VEC3 0x8FFD +#define GL_DOUBLE_VEC4 0x8FFE + +typedef void (GLAPIENTRY * PFNGLGETUNIFORMDVPROC) (GLuint program, GLint location, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLUNIFORM1DPROC) (GLint location, GLdouble x); +typedef void (GLAPIENTRY * PFNGLUNIFORM1DVPROC) (GLint location, GLsizei count, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2DPROC) (GLint location, GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLUNIFORM2DVPROC) (GLint location, GLsizei count, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLUNIFORM3DVPROC) (GLint location, GLsizei count, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLUNIFORM4DVPROC) (GLint location, GLsizei count, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); + +#define glGetUniformdv GLEW_GET_FUN(__glewGetUniformdv) +#define glUniform1d GLEW_GET_FUN(__glewUniform1d) +#define glUniform1dv GLEW_GET_FUN(__glewUniform1dv) +#define glUniform2d GLEW_GET_FUN(__glewUniform2d) +#define glUniform2dv GLEW_GET_FUN(__glewUniform2dv) +#define glUniform3d GLEW_GET_FUN(__glewUniform3d) +#define glUniform3dv GLEW_GET_FUN(__glewUniform3dv) +#define glUniform4d GLEW_GET_FUN(__glewUniform4d) +#define glUniform4dv GLEW_GET_FUN(__glewUniform4dv) +#define glUniformMatrix2dv GLEW_GET_FUN(__glewUniformMatrix2dv) +#define glUniformMatrix2x3dv GLEW_GET_FUN(__glewUniformMatrix2x3dv) +#define glUniformMatrix2x4dv GLEW_GET_FUN(__glewUniformMatrix2x4dv) +#define glUniformMatrix3dv GLEW_GET_FUN(__glewUniformMatrix3dv) +#define glUniformMatrix3x2dv GLEW_GET_FUN(__glewUniformMatrix3x2dv) +#define glUniformMatrix3x4dv GLEW_GET_FUN(__glewUniformMatrix3x4dv) +#define glUniformMatrix4dv GLEW_GET_FUN(__glewUniformMatrix4dv) +#define glUniformMatrix4x2dv GLEW_GET_FUN(__glewUniformMatrix4x2dv) +#define glUniformMatrix4x3dv GLEW_GET_FUN(__glewUniformMatrix4x3dv) + +#define GLEW_ARB_gpu_shader_fp64 GLEW_GET_VAR(__GLEW_ARB_gpu_shader_fp64) + +#endif /* GL_ARB_gpu_shader_fp64 */ + +/* ------------------------ GL_ARB_gpu_shader_int64 ------------------------ */ + +#ifndef GL_ARB_gpu_shader_int64 +#define GL_ARB_gpu_shader_int64 1 + +#define GL_INT64_ARB 0x140E +#define GL_UNSIGNED_INT64_ARB 0x140F +#define GL_INT64_VEC2_ARB 0x8FE9 +#define GL_INT64_VEC3_ARB 0x8FEA +#define GL_INT64_VEC4_ARB 0x8FEB +#define GL_UNSIGNED_INT64_VEC2_ARB 0x8FF5 +#define GL_UNSIGNED_INT64_VEC3_ARB 0x8FF6 +#define GL_UNSIGNED_INT64_VEC4_ARB 0x8FF7 + +typedef void (GLAPIENTRY * PFNGLGETUNIFORMI64VARBPROC) (GLuint program, GLint location, GLint64* params); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMUI64VARBPROC) (GLuint program, GLint location, GLuint64* params); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMI64VARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLint64* params); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMUI64VARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint64* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64ARBPROC) (GLuint program, GLint location, GLint64 x); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLint64* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64ARBPROC) (GLuint program, GLint location, GLuint64 x); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64ARBPROC) (GLuint program, GLint location, GLint64 x, GLint64 y); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLint64* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64ARBPROC) (GLuint program, GLint location, GLuint64 x, GLuint64 y); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64ARBPROC) (GLuint program, GLint location, GLint64 x, GLint64 y, GLint64 z); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLint64* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64ARBPROC) (GLuint program, GLint location, GLuint64 x, GLuint64 y, GLuint64 z); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64ARBPROC) (GLuint program, GLint location, GLint64 x, GLint64 y, GLint64 z, GLint64 w); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLint64* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64ARBPROC) (GLuint program, GLint location, GLuint64 x, GLuint64 y, GLuint64 z, GLuint64 w); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM1I64ARBPROC) (GLint location, GLint64 x); +typedef void (GLAPIENTRY * PFNGLUNIFORM1I64VARBPROC) (GLint location, GLsizei count, const GLint64* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64ARBPROC) (GLint location, GLuint64 x); +typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2I64ARBPROC) (GLint location, GLint64 x, GLint64 y); +typedef void (GLAPIENTRY * PFNGLUNIFORM2I64VARBPROC) (GLint location, GLsizei count, const GLint64* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64ARBPROC) (GLint location, GLuint64 x, GLuint64 y); +typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3I64ARBPROC) (GLint location, GLint64 x, GLint64 y, GLint64 z); +typedef void (GLAPIENTRY * PFNGLUNIFORM3I64VARBPROC) (GLint location, GLsizei count, const GLint64* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64ARBPROC) (GLint location, GLuint64 x, GLuint64 y, GLuint64 z); +typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4I64ARBPROC) (GLint location, GLint64 x, GLint64 y, GLint64 z, GLint64 w); +typedef void (GLAPIENTRY * PFNGLUNIFORM4I64VARBPROC) (GLint location, GLsizei count, const GLint64* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64ARBPROC) (GLint location, GLuint64 x, GLuint64 y, GLuint64 z, GLuint64 w); +typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); + +#define glGetUniformi64vARB GLEW_GET_FUN(__glewGetUniformi64vARB) +#define glGetUniformui64vARB GLEW_GET_FUN(__glewGetUniformui64vARB) +#define glGetnUniformi64vARB GLEW_GET_FUN(__glewGetnUniformi64vARB) +#define glGetnUniformui64vARB GLEW_GET_FUN(__glewGetnUniformui64vARB) +#define glProgramUniform1i64ARB GLEW_GET_FUN(__glewProgramUniform1i64ARB) +#define glProgramUniform1i64vARB GLEW_GET_FUN(__glewProgramUniform1i64vARB) +#define glProgramUniform1ui64ARB GLEW_GET_FUN(__glewProgramUniform1ui64ARB) +#define glProgramUniform1ui64vARB GLEW_GET_FUN(__glewProgramUniform1ui64vARB) +#define glProgramUniform2i64ARB GLEW_GET_FUN(__glewProgramUniform2i64ARB) +#define glProgramUniform2i64vARB GLEW_GET_FUN(__glewProgramUniform2i64vARB) +#define glProgramUniform2ui64ARB GLEW_GET_FUN(__glewProgramUniform2ui64ARB) +#define glProgramUniform2ui64vARB GLEW_GET_FUN(__glewProgramUniform2ui64vARB) +#define glProgramUniform3i64ARB GLEW_GET_FUN(__glewProgramUniform3i64ARB) +#define glProgramUniform3i64vARB GLEW_GET_FUN(__glewProgramUniform3i64vARB) +#define glProgramUniform3ui64ARB GLEW_GET_FUN(__glewProgramUniform3ui64ARB) +#define glProgramUniform3ui64vARB GLEW_GET_FUN(__glewProgramUniform3ui64vARB) +#define glProgramUniform4i64ARB GLEW_GET_FUN(__glewProgramUniform4i64ARB) +#define glProgramUniform4i64vARB GLEW_GET_FUN(__glewProgramUniform4i64vARB) +#define glProgramUniform4ui64ARB GLEW_GET_FUN(__glewProgramUniform4ui64ARB) +#define glProgramUniform4ui64vARB GLEW_GET_FUN(__glewProgramUniform4ui64vARB) +#define glUniform1i64ARB GLEW_GET_FUN(__glewUniform1i64ARB) +#define glUniform1i64vARB GLEW_GET_FUN(__glewUniform1i64vARB) +#define glUniform1ui64ARB GLEW_GET_FUN(__glewUniform1ui64ARB) +#define glUniform1ui64vARB GLEW_GET_FUN(__glewUniform1ui64vARB) +#define glUniform2i64ARB GLEW_GET_FUN(__glewUniform2i64ARB) +#define glUniform2i64vARB GLEW_GET_FUN(__glewUniform2i64vARB) +#define glUniform2ui64ARB GLEW_GET_FUN(__glewUniform2ui64ARB) +#define glUniform2ui64vARB GLEW_GET_FUN(__glewUniform2ui64vARB) +#define glUniform3i64ARB GLEW_GET_FUN(__glewUniform3i64ARB) +#define glUniform3i64vARB GLEW_GET_FUN(__glewUniform3i64vARB) +#define glUniform3ui64ARB GLEW_GET_FUN(__glewUniform3ui64ARB) +#define glUniform3ui64vARB GLEW_GET_FUN(__glewUniform3ui64vARB) +#define glUniform4i64ARB GLEW_GET_FUN(__glewUniform4i64ARB) +#define glUniform4i64vARB GLEW_GET_FUN(__glewUniform4i64vARB) +#define glUniform4ui64ARB GLEW_GET_FUN(__glewUniform4ui64ARB) +#define glUniform4ui64vARB GLEW_GET_FUN(__glewUniform4ui64vARB) + +#define GLEW_ARB_gpu_shader_int64 GLEW_GET_VAR(__GLEW_ARB_gpu_shader_int64) + +#endif /* GL_ARB_gpu_shader_int64 */ + +/* ------------------------ GL_ARB_half_float_pixel ------------------------ */ + +#ifndef GL_ARB_half_float_pixel +#define GL_ARB_half_float_pixel 1 + +#define GL_HALF_FLOAT_ARB 0x140B + +#define GLEW_ARB_half_float_pixel GLEW_GET_VAR(__GLEW_ARB_half_float_pixel) + +#endif /* GL_ARB_half_float_pixel */ + +/* ------------------------ GL_ARB_half_float_vertex ----------------------- */ + +#ifndef GL_ARB_half_float_vertex +#define GL_ARB_half_float_vertex 1 + +#define GL_HALF_FLOAT 0x140B + +#define GLEW_ARB_half_float_vertex GLEW_GET_VAR(__GLEW_ARB_half_float_vertex) + +#endif /* GL_ARB_half_float_vertex */ + +/* ----------------------------- GL_ARB_imaging ---------------------------- */ + +#ifndef GL_ARB_imaging +#define GL_ARB_imaging 1 + +#define GL_CONSTANT_COLOR 0x8001 +#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 +#define GL_CONSTANT_ALPHA 0x8003 +#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 +#define GL_BLEND_COLOR 0x8005 +#define GL_FUNC_ADD 0x8006 +#define GL_MIN 0x8007 +#define GL_MAX 0x8008 +#define GL_BLEND_EQUATION 0x8009 +#define GL_FUNC_SUBTRACT 0x800A +#define GL_FUNC_REVERSE_SUBTRACT 0x800B +#define GL_CONVOLUTION_1D 0x8010 +#define GL_CONVOLUTION_2D 0x8011 +#define GL_SEPARABLE_2D 0x8012 +#define GL_CONVOLUTION_BORDER_MODE 0x8013 +#define GL_CONVOLUTION_FILTER_SCALE 0x8014 +#define GL_CONVOLUTION_FILTER_BIAS 0x8015 +#define GL_REDUCE 0x8016 +#define GL_CONVOLUTION_FORMAT 0x8017 +#define GL_CONVOLUTION_WIDTH 0x8018 +#define GL_CONVOLUTION_HEIGHT 0x8019 +#define GL_MAX_CONVOLUTION_WIDTH 0x801A +#define GL_MAX_CONVOLUTION_HEIGHT 0x801B +#define GL_POST_CONVOLUTION_RED_SCALE 0x801C +#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D +#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E +#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F +#define GL_POST_CONVOLUTION_RED_BIAS 0x8020 +#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 +#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 +#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 +#define GL_HISTOGRAM 0x8024 +#define GL_PROXY_HISTOGRAM 0x8025 +#define GL_HISTOGRAM_WIDTH 0x8026 +#define GL_HISTOGRAM_FORMAT 0x8027 +#define GL_HISTOGRAM_RED_SIZE 0x8028 +#define GL_HISTOGRAM_GREEN_SIZE 0x8029 +#define GL_HISTOGRAM_BLUE_SIZE 0x802A +#define GL_HISTOGRAM_ALPHA_SIZE 0x802B +#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C +#define GL_HISTOGRAM_SINK 0x802D +#define GL_MINMAX 0x802E +#define GL_MINMAX_FORMAT 0x802F +#define GL_MINMAX_SINK 0x8030 +#define GL_TABLE_TOO_LARGE 0x8031 +#define GL_COLOR_MATRIX 0x80B1 +#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 +#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 +#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 +#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 +#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 +#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 +#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 +#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 +#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA +#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB +#define GL_COLOR_TABLE 0x80D0 +#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 +#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 +#define GL_PROXY_COLOR_TABLE 0x80D3 +#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 +#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 +#define GL_COLOR_TABLE_SCALE 0x80D6 +#define GL_COLOR_TABLE_BIAS 0x80D7 +#define GL_COLOR_TABLE_FORMAT 0x80D8 +#define GL_COLOR_TABLE_WIDTH 0x80D9 +#define GL_COLOR_TABLE_RED_SIZE 0x80DA +#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB +#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC +#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD +#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE +#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF +#define GL_IGNORE_BORDER 0x8150 +#define GL_CONSTANT_BORDER 0x8151 +#define GL_WRAP_BORDER 0x8152 +#define GL_REPLICATE_BORDER 0x8153 +#define GL_CONVOLUTION_BORDER_COLOR 0x8154 + +typedef void (GLAPIENTRY * PFNGLCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *table); +typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params); +typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *image); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *image); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params); +typedef void (GLAPIENTRY * PFNGLCOPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLCOPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, void *table); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, void *image); +typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); +typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values); +typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); +typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (GLAPIENTRY * PFNGLGETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum types, void *values); +typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); +typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (GLAPIENTRY * PFNGLGETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, void *row, void *column, void *span); +typedef void (GLAPIENTRY * PFNGLHISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink); +typedef void (GLAPIENTRY * PFNGLMINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink); +typedef void (GLAPIENTRY * PFNGLRESETHISTOGRAMPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLRESETMINMAXPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLSEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *row, const void *column); + +#define glColorSubTable GLEW_GET_FUN(__glewColorSubTable) +#define glColorTable GLEW_GET_FUN(__glewColorTable) +#define glColorTableParameterfv GLEW_GET_FUN(__glewColorTableParameterfv) +#define glColorTableParameteriv GLEW_GET_FUN(__glewColorTableParameteriv) +#define glConvolutionFilter1D GLEW_GET_FUN(__glewConvolutionFilter1D) +#define glConvolutionFilter2D GLEW_GET_FUN(__glewConvolutionFilter2D) +#define glConvolutionParameterf GLEW_GET_FUN(__glewConvolutionParameterf) +#define glConvolutionParameterfv GLEW_GET_FUN(__glewConvolutionParameterfv) +#define glConvolutionParameteri GLEW_GET_FUN(__glewConvolutionParameteri) +#define glConvolutionParameteriv GLEW_GET_FUN(__glewConvolutionParameteriv) +#define glCopyColorSubTable GLEW_GET_FUN(__glewCopyColorSubTable) +#define glCopyColorTable GLEW_GET_FUN(__glewCopyColorTable) +#define glCopyConvolutionFilter1D GLEW_GET_FUN(__glewCopyConvolutionFilter1D) +#define glCopyConvolutionFilter2D GLEW_GET_FUN(__glewCopyConvolutionFilter2D) +#define glGetColorTable GLEW_GET_FUN(__glewGetColorTable) +#define glGetColorTableParameterfv GLEW_GET_FUN(__glewGetColorTableParameterfv) +#define glGetColorTableParameteriv GLEW_GET_FUN(__glewGetColorTableParameteriv) +#define glGetConvolutionFilter GLEW_GET_FUN(__glewGetConvolutionFilter) +#define glGetConvolutionParameterfv GLEW_GET_FUN(__glewGetConvolutionParameterfv) +#define glGetConvolutionParameteriv GLEW_GET_FUN(__glewGetConvolutionParameteriv) +#define glGetHistogram GLEW_GET_FUN(__glewGetHistogram) +#define glGetHistogramParameterfv GLEW_GET_FUN(__glewGetHistogramParameterfv) +#define glGetHistogramParameteriv GLEW_GET_FUN(__glewGetHistogramParameteriv) +#define glGetMinmax GLEW_GET_FUN(__glewGetMinmax) +#define glGetMinmaxParameterfv GLEW_GET_FUN(__glewGetMinmaxParameterfv) +#define glGetMinmaxParameteriv GLEW_GET_FUN(__glewGetMinmaxParameteriv) +#define glGetSeparableFilter GLEW_GET_FUN(__glewGetSeparableFilter) +#define glHistogram GLEW_GET_FUN(__glewHistogram) +#define glMinmax GLEW_GET_FUN(__glewMinmax) +#define glResetHistogram GLEW_GET_FUN(__glewResetHistogram) +#define glResetMinmax GLEW_GET_FUN(__glewResetMinmax) +#define glSeparableFilter2D GLEW_GET_FUN(__glewSeparableFilter2D) + +#define GLEW_ARB_imaging GLEW_GET_VAR(__GLEW_ARB_imaging) + +#endif /* GL_ARB_imaging */ + +/* ----------------------- GL_ARB_indirect_parameters ---------------------- */ + +#ifndef GL_ARB_indirect_parameters +#define GL_ARB_indirect_parameters 1 + +#define GL_PARAMETER_BUFFER_ARB 0x80EE +#define GL_PARAMETER_BUFFER_BINDING_ARB 0x80EF + +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC) (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); + +#define glMultiDrawArraysIndirectCountARB GLEW_GET_FUN(__glewMultiDrawArraysIndirectCountARB) +#define glMultiDrawElementsIndirectCountARB GLEW_GET_FUN(__glewMultiDrawElementsIndirectCountARB) + +#define GLEW_ARB_indirect_parameters GLEW_GET_VAR(__GLEW_ARB_indirect_parameters) + +#endif /* GL_ARB_indirect_parameters */ + +/* ------------------------ GL_ARB_instanced_arrays ------------------------ */ + +#ifndef GL_ARB_instanced_arrays +#define GL_ARB_instanced_arrays 1 + +#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB 0x88FE + +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDARBPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDARBPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORARBPROC) (GLuint index, GLuint divisor); + +#define glDrawArraysInstancedARB GLEW_GET_FUN(__glewDrawArraysInstancedARB) +#define glDrawElementsInstancedARB GLEW_GET_FUN(__glewDrawElementsInstancedARB) +#define glVertexAttribDivisorARB GLEW_GET_FUN(__glewVertexAttribDivisorARB) + +#define GLEW_ARB_instanced_arrays GLEW_GET_VAR(__GLEW_ARB_instanced_arrays) + +#endif /* GL_ARB_instanced_arrays */ + +/* ---------------------- GL_ARB_internalformat_query ---------------------- */ + +#ifndef GL_ARB_internalformat_query +#define GL_ARB_internalformat_query 1 + +#define GL_NUM_SAMPLE_COUNTS 0x9380 + +typedef void (GLAPIENTRY * PFNGLGETINTERNALFORMATIVPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params); + +#define glGetInternalformativ GLEW_GET_FUN(__glewGetInternalformativ) + +#define GLEW_ARB_internalformat_query GLEW_GET_VAR(__GLEW_ARB_internalformat_query) + +#endif /* GL_ARB_internalformat_query */ + +/* ---------------------- GL_ARB_internalformat_query2 --------------------- */ + +#ifndef GL_ARB_internalformat_query2 +#define GL_ARB_internalformat_query2 1 + +#define GL_INTERNALFORMAT_SUPPORTED 0x826F +#define GL_INTERNALFORMAT_PREFERRED 0x8270 +#define GL_INTERNALFORMAT_RED_SIZE 0x8271 +#define GL_INTERNALFORMAT_GREEN_SIZE 0x8272 +#define GL_INTERNALFORMAT_BLUE_SIZE 0x8273 +#define GL_INTERNALFORMAT_ALPHA_SIZE 0x8274 +#define GL_INTERNALFORMAT_DEPTH_SIZE 0x8275 +#define GL_INTERNALFORMAT_STENCIL_SIZE 0x8276 +#define GL_INTERNALFORMAT_SHARED_SIZE 0x8277 +#define GL_INTERNALFORMAT_RED_TYPE 0x8278 +#define GL_INTERNALFORMAT_GREEN_TYPE 0x8279 +#define GL_INTERNALFORMAT_BLUE_TYPE 0x827A +#define GL_INTERNALFORMAT_ALPHA_TYPE 0x827B +#define GL_INTERNALFORMAT_DEPTH_TYPE 0x827C +#define GL_INTERNALFORMAT_STENCIL_TYPE 0x827D +#define GL_MAX_WIDTH 0x827E +#define GL_MAX_HEIGHT 0x827F +#define GL_MAX_DEPTH 0x8280 +#define GL_MAX_LAYERS 0x8281 +#define GL_MAX_COMBINED_DIMENSIONS 0x8282 +#define GL_COLOR_COMPONENTS 0x8283 +#define GL_DEPTH_COMPONENTS 0x8284 +#define GL_STENCIL_COMPONENTS 0x8285 +#define GL_COLOR_RENDERABLE 0x8286 +#define GL_DEPTH_RENDERABLE 0x8287 +#define GL_STENCIL_RENDERABLE 0x8288 +#define GL_FRAMEBUFFER_RENDERABLE 0x8289 +#define GL_FRAMEBUFFER_RENDERABLE_LAYERED 0x828A +#define GL_FRAMEBUFFER_BLEND 0x828B +#define GL_READ_PIXELS 0x828C +#define GL_READ_PIXELS_FORMAT 0x828D +#define GL_READ_PIXELS_TYPE 0x828E +#define GL_TEXTURE_IMAGE_FORMAT 0x828F +#define GL_TEXTURE_IMAGE_TYPE 0x8290 +#define GL_GET_TEXTURE_IMAGE_FORMAT 0x8291 +#define GL_GET_TEXTURE_IMAGE_TYPE 0x8292 +#define GL_MIPMAP 0x8293 +#define GL_MANUAL_GENERATE_MIPMAP 0x8294 +#define GL_AUTO_GENERATE_MIPMAP 0x8295 +#define GL_COLOR_ENCODING 0x8296 +#define GL_SRGB_READ 0x8297 +#define GL_SRGB_WRITE 0x8298 +#define GL_SRGB_DECODE_ARB 0x8299 +#define GL_FILTER 0x829A +#define GL_VERTEX_TEXTURE 0x829B +#define GL_TESS_CONTROL_TEXTURE 0x829C +#define GL_TESS_EVALUATION_TEXTURE 0x829D +#define GL_GEOMETRY_TEXTURE 0x829E +#define GL_FRAGMENT_TEXTURE 0x829F +#define GL_COMPUTE_TEXTURE 0x82A0 +#define GL_TEXTURE_SHADOW 0x82A1 +#define GL_TEXTURE_GATHER 0x82A2 +#define GL_TEXTURE_GATHER_SHADOW 0x82A3 +#define GL_SHADER_IMAGE_LOAD 0x82A4 +#define GL_SHADER_IMAGE_STORE 0x82A5 +#define GL_SHADER_IMAGE_ATOMIC 0x82A6 +#define GL_IMAGE_TEXEL_SIZE 0x82A7 +#define GL_IMAGE_COMPATIBILITY_CLASS 0x82A8 +#define GL_IMAGE_PIXEL_FORMAT 0x82A9 +#define GL_IMAGE_PIXEL_TYPE 0x82AA +#define GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST 0x82AC +#define GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST 0x82AD +#define GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE 0x82AE +#define GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE 0x82AF +#define GL_TEXTURE_COMPRESSED_BLOCK_WIDTH 0x82B1 +#define GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT 0x82B2 +#define GL_TEXTURE_COMPRESSED_BLOCK_SIZE 0x82B3 +#define GL_CLEAR_BUFFER 0x82B4 +#define GL_TEXTURE_VIEW 0x82B5 +#define GL_VIEW_COMPATIBILITY_CLASS 0x82B6 +#define GL_FULL_SUPPORT 0x82B7 +#define GL_CAVEAT_SUPPORT 0x82B8 +#define GL_IMAGE_CLASS_4_X_32 0x82B9 +#define GL_IMAGE_CLASS_2_X_32 0x82BA +#define GL_IMAGE_CLASS_1_X_32 0x82BB +#define GL_IMAGE_CLASS_4_X_16 0x82BC +#define GL_IMAGE_CLASS_2_X_16 0x82BD +#define GL_IMAGE_CLASS_1_X_16 0x82BE +#define GL_IMAGE_CLASS_4_X_8 0x82BF +#define GL_IMAGE_CLASS_2_X_8 0x82C0 +#define GL_IMAGE_CLASS_1_X_8 0x82C1 +#define GL_IMAGE_CLASS_11_11_10 0x82C2 +#define GL_IMAGE_CLASS_10_10_10_2 0x82C3 +#define GL_VIEW_CLASS_128_BITS 0x82C4 +#define GL_VIEW_CLASS_96_BITS 0x82C5 +#define GL_VIEW_CLASS_64_BITS 0x82C6 +#define GL_VIEW_CLASS_48_BITS 0x82C7 +#define GL_VIEW_CLASS_32_BITS 0x82C8 +#define GL_VIEW_CLASS_24_BITS 0x82C9 +#define GL_VIEW_CLASS_16_BITS 0x82CA +#define GL_VIEW_CLASS_8_BITS 0x82CB +#define GL_VIEW_CLASS_S3TC_DXT1_RGB 0x82CC +#define GL_VIEW_CLASS_S3TC_DXT1_RGBA 0x82CD +#define GL_VIEW_CLASS_S3TC_DXT3_RGBA 0x82CE +#define GL_VIEW_CLASS_S3TC_DXT5_RGBA 0x82CF +#define GL_VIEW_CLASS_RGTC1_RED 0x82D0 +#define GL_VIEW_CLASS_RGTC2_RG 0x82D1 +#define GL_VIEW_CLASS_BPTC_UNORM 0x82D2 +#define GL_VIEW_CLASS_BPTC_FLOAT 0x82D3 + +typedef void (GLAPIENTRY * PFNGLGETINTERNALFORMATI64VPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64* params); + +#define glGetInternalformati64v GLEW_GET_FUN(__glewGetInternalformati64v) + +#define GLEW_ARB_internalformat_query2 GLEW_GET_VAR(__GLEW_ARB_internalformat_query2) + +#endif /* GL_ARB_internalformat_query2 */ + +/* ----------------------- GL_ARB_invalidate_subdata ----------------------- */ + +#ifndef GL_ARB_invalidate_subdata +#define GL_ARB_invalidate_subdata 1 + +typedef void (GLAPIENTRY * PFNGLINVALIDATEBUFFERDATAPROC) (GLuint buffer); +typedef void (GLAPIENTRY * PFNGLINVALIDATEBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length); +typedef void (GLAPIENTRY * PFNGLINVALIDATEFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum* attachments); +typedef void (GLAPIENTRY * PFNGLINVALIDATESUBFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLINVALIDATETEXIMAGEPROC) (GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLINVALIDATETEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth); + +#define glInvalidateBufferData GLEW_GET_FUN(__glewInvalidateBufferData) +#define glInvalidateBufferSubData GLEW_GET_FUN(__glewInvalidateBufferSubData) +#define glInvalidateFramebuffer GLEW_GET_FUN(__glewInvalidateFramebuffer) +#define glInvalidateSubFramebuffer GLEW_GET_FUN(__glewInvalidateSubFramebuffer) +#define glInvalidateTexImage GLEW_GET_FUN(__glewInvalidateTexImage) +#define glInvalidateTexSubImage GLEW_GET_FUN(__glewInvalidateTexSubImage) + +#define GLEW_ARB_invalidate_subdata GLEW_GET_VAR(__GLEW_ARB_invalidate_subdata) + +#endif /* GL_ARB_invalidate_subdata */ + +/* ---------------------- GL_ARB_map_buffer_alignment ---------------------- */ + +#ifndef GL_ARB_map_buffer_alignment +#define GL_ARB_map_buffer_alignment 1 + +#define GL_MIN_MAP_BUFFER_ALIGNMENT 0x90BC + +#define GLEW_ARB_map_buffer_alignment GLEW_GET_VAR(__GLEW_ARB_map_buffer_alignment) + +#endif /* GL_ARB_map_buffer_alignment */ + +/* ------------------------ GL_ARB_map_buffer_range ------------------------ */ + +#ifndef GL_ARB_map_buffer_range +#define GL_ARB_map_buffer_range 1 + +#define GL_MAP_READ_BIT 0x0001 +#define GL_MAP_WRITE_BIT 0x0002 +#define GL_MAP_INVALIDATE_RANGE_BIT 0x0004 +#define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008 +#define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010 +#define GL_MAP_UNSYNCHRONIZED_BIT 0x0020 + +typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length); +typedef void * (GLAPIENTRY * PFNGLMAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); + +#define glFlushMappedBufferRange GLEW_GET_FUN(__glewFlushMappedBufferRange) +#define glMapBufferRange GLEW_GET_FUN(__glewMapBufferRange) + +#define GLEW_ARB_map_buffer_range GLEW_GET_VAR(__GLEW_ARB_map_buffer_range) + +#endif /* GL_ARB_map_buffer_range */ + +/* ------------------------- GL_ARB_matrix_palette ------------------------- */ + +#ifndef GL_ARB_matrix_palette +#define GL_ARB_matrix_palette 1 + +#define GL_MATRIX_PALETTE_ARB 0x8840 +#define GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841 +#define GL_MAX_PALETTE_MATRICES_ARB 0x8842 +#define GL_CURRENT_PALETTE_MATRIX_ARB 0x8843 +#define GL_MATRIX_INDEX_ARRAY_ARB 0x8844 +#define GL_CURRENT_MATRIX_INDEX_ARB 0x8845 +#define GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846 +#define GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847 +#define GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848 +#define GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849 + +typedef void (GLAPIENTRY * PFNGLCURRENTPALETTEMATRIXARBPROC) (GLint index); +typedef void (GLAPIENTRY * PFNGLMATRIXINDEXPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); +typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUBVARBPROC) (GLint size, GLubyte *indices); +typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUIVARBPROC) (GLint size, GLuint *indices); +typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUSVARBPROC) (GLint size, GLushort *indices); + +#define glCurrentPaletteMatrixARB GLEW_GET_FUN(__glewCurrentPaletteMatrixARB) +#define glMatrixIndexPointerARB GLEW_GET_FUN(__glewMatrixIndexPointerARB) +#define glMatrixIndexubvARB GLEW_GET_FUN(__glewMatrixIndexubvARB) +#define glMatrixIndexuivARB GLEW_GET_FUN(__glewMatrixIndexuivARB) +#define glMatrixIndexusvARB GLEW_GET_FUN(__glewMatrixIndexusvARB) + +#define GLEW_ARB_matrix_palette GLEW_GET_VAR(__GLEW_ARB_matrix_palette) + +#endif /* GL_ARB_matrix_palette */ + +/* --------------------------- GL_ARB_multi_bind --------------------------- */ + +#ifndef GL_ARB_multi_bind +#define GL_ARB_multi_bind 1 + +typedef void (GLAPIENTRY * PFNGLBINDBUFFERSBASEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint* buffers); +typedef void (GLAPIENTRY * PFNGLBINDBUFFERSRANGEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint* buffers, const GLintptr *offsets, const GLsizeiptr *sizes); +typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTURESPROC) (GLuint first, GLsizei count, const GLuint* textures); +typedef void (GLAPIENTRY * PFNGLBINDSAMPLERSPROC) (GLuint first, GLsizei count, const GLuint* samplers); +typedef void (GLAPIENTRY * PFNGLBINDTEXTURESPROC) (GLuint first, GLsizei count, const GLuint* textures); +typedef void (GLAPIENTRY * PFNGLBINDVERTEXBUFFERSPROC) (GLuint first, GLsizei count, const GLuint* buffers, const GLintptr *offsets, const GLsizei *strides); + +#define glBindBuffersBase GLEW_GET_FUN(__glewBindBuffersBase) +#define glBindBuffersRange GLEW_GET_FUN(__glewBindBuffersRange) +#define glBindImageTextures GLEW_GET_FUN(__glewBindImageTextures) +#define glBindSamplers GLEW_GET_FUN(__glewBindSamplers) +#define glBindTextures GLEW_GET_FUN(__glewBindTextures) +#define glBindVertexBuffers GLEW_GET_FUN(__glewBindVertexBuffers) + +#define GLEW_ARB_multi_bind GLEW_GET_VAR(__GLEW_ARB_multi_bind) + +#endif /* GL_ARB_multi_bind */ + +/* ----------------------- GL_ARB_multi_draw_indirect ---------------------- */ + +#ifndef GL_ARB_multi_draw_indirect +#define GL_ARB_multi_draw_indirect 1 + +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTPROC) (GLenum mode, const void *indirect, GLsizei primcount, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei primcount, GLsizei stride); + +#define glMultiDrawArraysIndirect GLEW_GET_FUN(__glewMultiDrawArraysIndirect) +#define glMultiDrawElementsIndirect GLEW_GET_FUN(__glewMultiDrawElementsIndirect) + +#define GLEW_ARB_multi_draw_indirect GLEW_GET_VAR(__GLEW_ARB_multi_draw_indirect) + +#endif /* GL_ARB_multi_draw_indirect */ + +/* --------------------------- GL_ARB_multisample -------------------------- */ + +#ifndef GL_ARB_multisample +#define GL_ARB_multisample 1 + +#define GL_MULTISAMPLE_ARB 0x809D +#define GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809E +#define GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809F +#define GL_SAMPLE_COVERAGE_ARB 0x80A0 +#define GL_SAMPLE_BUFFERS_ARB 0x80A8 +#define GL_SAMPLES_ARB 0x80A9 +#define GL_SAMPLE_COVERAGE_VALUE_ARB 0x80AA +#define GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB +#define GL_MULTISAMPLE_BIT_ARB 0x20000000 + +typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEARBPROC) (GLclampf value, GLboolean invert); + +#define glSampleCoverageARB GLEW_GET_FUN(__glewSampleCoverageARB) + +#define GLEW_ARB_multisample GLEW_GET_VAR(__GLEW_ARB_multisample) + +#endif /* GL_ARB_multisample */ + +/* -------------------------- GL_ARB_multitexture -------------------------- */ + +#ifndef GL_ARB_multitexture +#define GL_ARB_multitexture 1 + +#define GL_TEXTURE0_ARB 0x84C0 +#define GL_TEXTURE1_ARB 0x84C1 +#define GL_TEXTURE2_ARB 0x84C2 +#define GL_TEXTURE3_ARB 0x84C3 +#define GL_TEXTURE4_ARB 0x84C4 +#define GL_TEXTURE5_ARB 0x84C5 +#define GL_TEXTURE6_ARB 0x84C6 +#define GL_TEXTURE7_ARB 0x84C7 +#define GL_TEXTURE8_ARB 0x84C8 +#define GL_TEXTURE9_ARB 0x84C9 +#define GL_TEXTURE10_ARB 0x84CA +#define GL_TEXTURE11_ARB 0x84CB +#define GL_TEXTURE12_ARB 0x84CC +#define GL_TEXTURE13_ARB 0x84CD +#define GL_TEXTURE14_ARB 0x84CE +#define GL_TEXTURE15_ARB 0x84CF +#define GL_TEXTURE16_ARB 0x84D0 +#define GL_TEXTURE17_ARB 0x84D1 +#define GL_TEXTURE18_ARB 0x84D2 +#define GL_TEXTURE19_ARB 0x84D3 +#define GL_TEXTURE20_ARB 0x84D4 +#define GL_TEXTURE21_ARB 0x84D5 +#define GL_TEXTURE22_ARB 0x84D6 +#define GL_TEXTURE23_ARB 0x84D7 +#define GL_TEXTURE24_ARB 0x84D8 +#define GL_TEXTURE25_ARB 0x84D9 +#define GL_TEXTURE26_ARB 0x84DA +#define GL_TEXTURE27_ARB 0x84DB +#define GL_TEXTURE28_ARB 0x84DC +#define GL_TEXTURE29_ARB 0x84DD +#define GL_TEXTURE30_ARB 0x84DE +#define GL_TEXTURE31_ARB 0x84DF +#define GL_ACTIVE_TEXTURE_ARB 0x84E0 +#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 +#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 + +typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum texture); +typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); + +#define glActiveTextureARB GLEW_GET_FUN(__glewActiveTextureARB) +#define glClientActiveTextureARB GLEW_GET_FUN(__glewClientActiveTextureARB) +#define glMultiTexCoord1dARB GLEW_GET_FUN(__glewMultiTexCoord1dARB) +#define glMultiTexCoord1dvARB GLEW_GET_FUN(__glewMultiTexCoord1dvARB) +#define glMultiTexCoord1fARB GLEW_GET_FUN(__glewMultiTexCoord1fARB) +#define glMultiTexCoord1fvARB GLEW_GET_FUN(__glewMultiTexCoord1fvARB) +#define glMultiTexCoord1iARB GLEW_GET_FUN(__glewMultiTexCoord1iARB) +#define glMultiTexCoord1ivARB GLEW_GET_FUN(__glewMultiTexCoord1ivARB) +#define glMultiTexCoord1sARB GLEW_GET_FUN(__glewMultiTexCoord1sARB) +#define glMultiTexCoord1svARB GLEW_GET_FUN(__glewMultiTexCoord1svARB) +#define glMultiTexCoord2dARB GLEW_GET_FUN(__glewMultiTexCoord2dARB) +#define glMultiTexCoord2dvARB GLEW_GET_FUN(__glewMultiTexCoord2dvARB) +#define glMultiTexCoord2fARB GLEW_GET_FUN(__glewMultiTexCoord2fARB) +#define glMultiTexCoord2fvARB GLEW_GET_FUN(__glewMultiTexCoord2fvARB) +#define glMultiTexCoord2iARB GLEW_GET_FUN(__glewMultiTexCoord2iARB) +#define glMultiTexCoord2ivARB GLEW_GET_FUN(__glewMultiTexCoord2ivARB) +#define glMultiTexCoord2sARB GLEW_GET_FUN(__glewMultiTexCoord2sARB) +#define glMultiTexCoord2svARB GLEW_GET_FUN(__glewMultiTexCoord2svARB) +#define glMultiTexCoord3dARB GLEW_GET_FUN(__glewMultiTexCoord3dARB) +#define glMultiTexCoord3dvARB GLEW_GET_FUN(__glewMultiTexCoord3dvARB) +#define glMultiTexCoord3fARB GLEW_GET_FUN(__glewMultiTexCoord3fARB) +#define glMultiTexCoord3fvARB GLEW_GET_FUN(__glewMultiTexCoord3fvARB) +#define glMultiTexCoord3iARB GLEW_GET_FUN(__glewMultiTexCoord3iARB) +#define glMultiTexCoord3ivARB GLEW_GET_FUN(__glewMultiTexCoord3ivARB) +#define glMultiTexCoord3sARB GLEW_GET_FUN(__glewMultiTexCoord3sARB) +#define glMultiTexCoord3svARB GLEW_GET_FUN(__glewMultiTexCoord3svARB) +#define glMultiTexCoord4dARB GLEW_GET_FUN(__glewMultiTexCoord4dARB) +#define glMultiTexCoord4dvARB GLEW_GET_FUN(__glewMultiTexCoord4dvARB) +#define glMultiTexCoord4fARB GLEW_GET_FUN(__glewMultiTexCoord4fARB) +#define glMultiTexCoord4fvARB GLEW_GET_FUN(__glewMultiTexCoord4fvARB) +#define glMultiTexCoord4iARB GLEW_GET_FUN(__glewMultiTexCoord4iARB) +#define glMultiTexCoord4ivARB GLEW_GET_FUN(__glewMultiTexCoord4ivARB) +#define glMultiTexCoord4sARB GLEW_GET_FUN(__glewMultiTexCoord4sARB) +#define glMultiTexCoord4svARB GLEW_GET_FUN(__glewMultiTexCoord4svARB) + +#define GLEW_ARB_multitexture GLEW_GET_VAR(__GLEW_ARB_multitexture) + +#endif /* GL_ARB_multitexture */ + +/* ------------------------- GL_ARB_occlusion_query ------------------------ */ + +#ifndef GL_ARB_occlusion_query +#define GL_ARB_occlusion_query 1 + +#define GL_QUERY_COUNTER_BITS_ARB 0x8864 +#define GL_CURRENT_QUERY_ARB 0x8865 +#define GL_QUERY_RESULT_ARB 0x8866 +#define GL_QUERY_RESULT_AVAILABLE_ARB 0x8867 +#define GL_SAMPLES_PASSED_ARB 0x8914 + +typedef void (GLAPIENTRY * PFNGLBEGINQUERYARBPROC) (GLenum target, GLuint id); +typedef void (GLAPIENTRY * PFNGLDELETEQUERIESARBPROC) (GLsizei n, const GLuint* ids); +typedef void (GLAPIENTRY * PFNGLENDQUERYARBPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLGENQUERIESARBPROC) (GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVARBPROC) (GLuint id, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVARBPROC) (GLuint id, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYIVARBPROC) (GLenum target, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISQUERYARBPROC) (GLuint id); + +#define glBeginQueryARB GLEW_GET_FUN(__glewBeginQueryARB) +#define glDeleteQueriesARB GLEW_GET_FUN(__glewDeleteQueriesARB) +#define glEndQueryARB GLEW_GET_FUN(__glewEndQueryARB) +#define glGenQueriesARB GLEW_GET_FUN(__glewGenQueriesARB) +#define glGetQueryObjectivARB GLEW_GET_FUN(__glewGetQueryObjectivARB) +#define glGetQueryObjectuivARB GLEW_GET_FUN(__glewGetQueryObjectuivARB) +#define glGetQueryivARB GLEW_GET_FUN(__glewGetQueryivARB) +#define glIsQueryARB GLEW_GET_FUN(__glewIsQueryARB) + +#define GLEW_ARB_occlusion_query GLEW_GET_VAR(__GLEW_ARB_occlusion_query) + +#endif /* GL_ARB_occlusion_query */ + +/* ------------------------ GL_ARB_occlusion_query2 ------------------------ */ + +#ifndef GL_ARB_occlusion_query2 +#define GL_ARB_occlusion_query2 1 + +#define GL_ANY_SAMPLES_PASSED 0x8C2F + +#define GLEW_ARB_occlusion_query2 GLEW_GET_VAR(__GLEW_ARB_occlusion_query2) + +#endif /* GL_ARB_occlusion_query2 */ + +/* --------------------- GL_ARB_parallel_shader_compile -------------------- */ + +#ifndef GL_ARB_parallel_shader_compile +#define GL_ARB_parallel_shader_compile 1 + +#define GL_MAX_SHADER_COMPILER_THREADS_ARB 0x91B0 +#define GL_COMPLETION_STATUS_ARB 0x91B1 + +typedef void (GLAPIENTRY * PFNGLMAXSHADERCOMPILERTHREADSARBPROC) (GLuint count); + +#define glMaxShaderCompilerThreadsARB GLEW_GET_FUN(__glewMaxShaderCompilerThreadsARB) + +#define GLEW_ARB_parallel_shader_compile GLEW_GET_VAR(__GLEW_ARB_parallel_shader_compile) + +#endif /* GL_ARB_parallel_shader_compile */ + +/* -------------------- GL_ARB_pipeline_statistics_query ------------------- */ + +#ifndef GL_ARB_pipeline_statistics_query +#define GL_ARB_pipeline_statistics_query 1 + +#define GL_VERTICES_SUBMITTED_ARB 0x82EE +#define GL_PRIMITIVES_SUBMITTED_ARB 0x82EF +#define GL_VERTEX_SHADER_INVOCATIONS_ARB 0x82F0 +#define GL_TESS_CONTROL_SHADER_PATCHES_ARB 0x82F1 +#define GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB 0x82F2 +#define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB 0x82F3 +#define GL_FRAGMENT_SHADER_INVOCATIONS_ARB 0x82F4 +#define GL_COMPUTE_SHADER_INVOCATIONS_ARB 0x82F5 +#define GL_CLIPPING_INPUT_PRIMITIVES_ARB 0x82F6 +#define GL_CLIPPING_OUTPUT_PRIMITIVES_ARB 0x82F7 +#define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F + +#define GLEW_ARB_pipeline_statistics_query GLEW_GET_VAR(__GLEW_ARB_pipeline_statistics_query) + +#endif /* GL_ARB_pipeline_statistics_query */ + +/* ----------------------- GL_ARB_pixel_buffer_object ---------------------- */ + +#ifndef GL_ARB_pixel_buffer_object +#define GL_ARB_pixel_buffer_object 1 + +#define GL_PIXEL_PACK_BUFFER_ARB 0x88EB +#define GL_PIXEL_UNPACK_BUFFER_ARB 0x88EC +#define GL_PIXEL_PACK_BUFFER_BINDING_ARB 0x88ED +#define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB 0x88EF + +#define GLEW_ARB_pixel_buffer_object GLEW_GET_VAR(__GLEW_ARB_pixel_buffer_object) + +#endif /* GL_ARB_pixel_buffer_object */ + +/* ------------------------ GL_ARB_point_parameters ------------------------ */ + +#ifndef GL_ARB_point_parameters +#define GL_ARB_point_parameters 1 + +#define GL_POINT_SIZE_MIN_ARB 0x8126 +#define GL_POINT_SIZE_MAX_ARB 0x8127 +#define GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128 +#define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129 + +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFARBPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVARBPROC) (GLenum pname, const GLfloat* params); + +#define glPointParameterfARB GLEW_GET_FUN(__glewPointParameterfARB) +#define glPointParameterfvARB GLEW_GET_FUN(__glewPointParameterfvARB) + +#define GLEW_ARB_point_parameters GLEW_GET_VAR(__GLEW_ARB_point_parameters) + +#endif /* GL_ARB_point_parameters */ + +/* -------------------------- GL_ARB_point_sprite -------------------------- */ + +#ifndef GL_ARB_point_sprite +#define GL_ARB_point_sprite 1 + +#define GL_POINT_SPRITE_ARB 0x8861 +#define GL_COORD_REPLACE_ARB 0x8862 + +#define GLEW_ARB_point_sprite GLEW_GET_VAR(__GLEW_ARB_point_sprite) + +#endif /* GL_ARB_point_sprite */ + +/* ---------------------- GL_ARB_polygon_offset_clamp ---------------------- */ + +#ifndef GL_ARB_polygon_offset_clamp +#define GL_ARB_polygon_offset_clamp 1 + +#define GL_POLYGON_OFFSET_CLAMP 0x8E1B + +typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETCLAMPPROC) (GLfloat factor, GLfloat units, GLfloat clamp); + +#define glPolygonOffsetClamp GLEW_GET_FUN(__glewPolygonOffsetClamp) + +#define GLEW_ARB_polygon_offset_clamp GLEW_GET_VAR(__GLEW_ARB_polygon_offset_clamp) + +#endif /* GL_ARB_polygon_offset_clamp */ + +/* ----------------------- GL_ARB_post_depth_coverage ---------------------- */ + +#ifndef GL_ARB_post_depth_coverage +#define GL_ARB_post_depth_coverage 1 + +#define GLEW_ARB_post_depth_coverage GLEW_GET_VAR(__GLEW_ARB_post_depth_coverage) + +#endif /* GL_ARB_post_depth_coverage */ + +/* --------------------- GL_ARB_program_interface_query -------------------- */ + +#ifndef GL_ARB_program_interface_query +#define GL_ARB_program_interface_query 1 + +#define GL_UNIFORM 0x92E1 +#define GL_UNIFORM_BLOCK 0x92E2 +#define GL_PROGRAM_INPUT 0x92E3 +#define GL_PROGRAM_OUTPUT 0x92E4 +#define GL_BUFFER_VARIABLE 0x92E5 +#define GL_SHADER_STORAGE_BLOCK 0x92E6 +#define GL_IS_PER_PATCH 0x92E7 +#define GL_VERTEX_SUBROUTINE 0x92E8 +#define GL_TESS_CONTROL_SUBROUTINE 0x92E9 +#define GL_TESS_EVALUATION_SUBROUTINE 0x92EA +#define GL_GEOMETRY_SUBROUTINE 0x92EB +#define GL_FRAGMENT_SUBROUTINE 0x92EC +#define GL_COMPUTE_SUBROUTINE 0x92ED +#define GL_VERTEX_SUBROUTINE_UNIFORM 0x92EE +#define GL_TESS_CONTROL_SUBROUTINE_UNIFORM 0x92EF +#define GL_TESS_EVALUATION_SUBROUTINE_UNIFORM 0x92F0 +#define GL_GEOMETRY_SUBROUTINE_UNIFORM 0x92F1 +#define GL_FRAGMENT_SUBROUTINE_UNIFORM 0x92F2 +#define GL_COMPUTE_SUBROUTINE_UNIFORM 0x92F3 +#define GL_TRANSFORM_FEEDBACK_VARYING 0x92F4 +#define GL_ACTIVE_RESOURCES 0x92F5 +#define GL_MAX_NAME_LENGTH 0x92F6 +#define GL_MAX_NUM_ACTIVE_VARIABLES 0x92F7 +#define GL_MAX_NUM_COMPATIBLE_SUBROUTINES 0x92F8 +#define GL_NAME_LENGTH 0x92F9 +#define GL_TYPE 0x92FA +#define GL_ARRAY_SIZE 0x92FB +#define GL_OFFSET 0x92FC +#define GL_BLOCK_INDEX 0x92FD +#define GL_ARRAY_STRIDE 0x92FE +#define GL_MATRIX_STRIDE 0x92FF +#define GL_IS_ROW_MAJOR 0x9300 +#define GL_ATOMIC_COUNTER_BUFFER_INDEX 0x9301 +#define GL_BUFFER_BINDING 0x9302 +#define GL_BUFFER_DATA_SIZE 0x9303 +#define GL_NUM_ACTIVE_VARIABLES 0x9304 +#define GL_ACTIVE_VARIABLES 0x9305 +#define GL_REFERENCED_BY_VERTEX_SHADER 0x9306 +#define GL_REFERENCED_BY_TESS_CONTROL_SHADER 0x9307 +#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER 0x9308 +#define GL_REFERENCED_BY_GEOMETRY_SHADER 0x9309 +#define GL_REFERENCED_BY_FRAGMENT_SHADER 0x930A +#define GL_REFERENCED_BY_COMPUTE_SHADER 0x930B +#define GL_TOP_LEVEL_ARRAY_SIZE 0x930C +#define GL_TOP_LEVEL_ARRAY_STRIDE 0x930D +#define GL_LOCATION 0x930E +#define GL_LOCATION_INDEX 0x930F + +typedef void (GLAPIENTRY * PFNGLGETPROGRAMINTERFACEIVPROC) (GLuint program, GLenum programInterface, GLenum pname, GLint* params); +typedef GLuint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCEINDEXPROC) (GLuint program, GLenum programInterface, const GLchar* name); +typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONPROC) (GLuint program, GLenum programInterface, const GLchar* name); +typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC) (GLuint program, GLenum programInterface, const GLchar* name); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMRESOURCENAMEPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei* length, GLchar *name); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMRESOURCEIVPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum* props, GLsizei bufSize, GLsizei *length, GLint *params); + +#define glGetProgramInterfaceiv GLEW_GET_FUN(__glewGetProgramInterfaceiv) +#define glGetProgramResourceIndex GLEW_GET_FUN(__glewGetProgramResourceIndex) +#define glGetProgramResourceLocation GLEW_GET_FUN(__glewGetProgramResourceLocation) +#define glGetProgramResourceLocationIndex GLEW_GET_FUN(__glewGetProgramResourceLocationIndex) +#define glGetProgramResourceName GLEW_GET_FUN(__glewGetProgramResourceName) +#define glGetProgramResourceiv GLEW_GET_FUN(__glewGetProgramResourceiv) + +#define GLEW_ARB_program_interface_query GLEW_GET_VAR(__GLEW_ARB_program_interface_query) + +#endif /* GL_ARB_program_interface_query */ + +/* ------------------------ GL_ARB_provoking_vertex ------------------------ */ + +#ifndef GL_ARB_provoking_vertex +#define GL_ARB_provoking_vertex 1 + +#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C +#define GL_FIRST_VERTEX_CONVENTION 0x8E4D +#define GL_LAST_VERTEX_CONVENTION 0x8E4E +#define GL_PROVOKING_VERTEX 0x8E4F + +typedef void (GLAPIENTRY * PFNGLPROVOKINGVERTEXPROC) (GLenum mode); + +#define glProvokingVertex GLEW_GET_FUN(__glewProvokingVertex) + +#define GLEW_ARB_provoking_vertex GLEW_GET_VAR(__GLEW_ARB_provoking_vertex) + +#endif /* GL_ARB_provoking_vertex */ + +/* ----------------------- GL_ARB_query_buffer_object ---------------------- */ + +#ifndef GL_ARB_query_buffer_object +#define GL_ARB_query_buffer_object 1 + +#define GL_QUERY_BUFFER_BARRIER_BIT 0x00008000 +#define GL_QUERY_BUFFER 0x9192 +#define GL_QUERY_BUFFER_BINDING 0x9193 +#define GL_QUERY_RESULT_NO_WAIT 0x9194 + +#define GLEW_ARB_query_buffer_object GLEW_GET_VAR(__GLEW_ARB_query_buffer_object) + +#endif /* GL_ARB_query_buffer_object */ + +/* ------------------ GL_ARB_robust_buffer_access_behavior ----------------- */ + +#ifndef GL_ARB_robust_buffer_access_behavior +#define GL_ARB_robust_buffer_access_behavior 1 + +#define GLEW_ARB_robust_buffer_access_behavior GLEW_GET_VAR(__GLEW_ARB_robust_buffer_access_behavior) + +#endif /* GL_ARB_robust_buffer_access_behavior */ + +/* --------------------------- GL_ARB_robustness --------------------------- */ + +#ifndef GL_ARB_robustness +#define GL_ARB_robustness 1 + +#define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB 0x00000004 +#define GL_LOSE_CONTEXT_ON_RESET_ARB 0x8252 +#define GL_GUILTY_CONTEXT_RESET_ARB 0x8253 +#define GL_INNOCENT_CONTEXT_RESET_ARB 0x8254 +#define GL_UNKNOWN_CONTEXT_RESET_ARB 0x8255 +#define GL_RESET_NOTIFICATION_STRATEGY_ARB 0x8256 +#define GL_NO_RESET_NOTIFICATION_ARB 0x8261 + +typedef GLenum (GLAPIENTRY * PFNGLGETGRAPHICSRESETSTATUSARBPROC) (void); +typedef void (GLAPIENTRY * PFNGLGETNCOLORTABLEARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table); +typedef void (GLAPIENTRY * PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, GLsizei bufSize, void* img); +typedef void (GLAPIENTRY * PFNGLGETNCONVOLUTIONFILTERARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* image); +typedef void (GLAPIENTRY * PFNGLGETNHISTOGRAMARBPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values); +typedef void (GLAPIENTRY * PFNGLGETNMAPDVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLdouble* v); +typedef void (GLAPIENTRY * PFNGLGETNMAPFVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLfloat* v); +typedef void (GLAPIENTRY * PFNGLGETNMAPIVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLint* v); +typedef void (GLAPIENTRY * PFNGLGETNMINMAXARBPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values); +typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPFVARBPROC) (GLenum map, GLsizei bufSize, GLfloat* values); +typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPUIVARBPROC) (GLenum map, GLsizei bufSize, GLuint* values); +typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPUSVARBPROC) (GLenum map, GLsizei bufSize, GLushort* values); +typedef void (GLAPIENTRY * PFNGLGETNPOLYGONSTIPPLEARBPROC) (GLsizei bufSize, GLubyte* pattern); +typedef void (GLAPIENTRY * PFNGLGETNSEPARABLEFILTERARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, void* row, GLsizei columnBufSize, void*column, void*span); +typedef void (GLAPIENTRY * PFNGLGETNTEXIMAGEARBPROC) (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void* img); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMDVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMFVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMUIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint* params); +typedef void (GLAPIENTRY * PFNGLREADNPIXELSARBPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void* data); + +#define glGetGraphicsResetStatusARB GLEW_GET_FUN(__glewGetGraphicsResetStatusARB) +#define glGetnColorTableARB GLEW_GET_FUN(__glewGetnColorTableARB) +#define glGetnCompressedTexImageARB GLEW_GET_FUN(__glewGetnCompressedTexImageARB) +#define glGetnConvolutionFilterARB GLEW_GET_FUN(__glewGetnConvolutionFilterARB) +#define glGetnHistogramARB GLEW_GET_FUN(__glewGetnHistogramARB) +#define glGetnMapdvARB GLEW_GET_FUN(__glewGetnMapdvARB) +#define glGetnMapfvARB GLEW_GET_FUN(__glewGetnMapfvARB) +#define glGetnMapivARB GLEW_GET_FUN(__glewGetnMapivARB) +#define glGetnMinmaxARB GLEW_GET_FUN(__glewGetnMinmaxARB) +#define glGetnPixelMapfvARB GLEW_GET_FUN(__glewGetnPixelMapfvARB) +#define glGetnPixelMapuivARB GLEW_GET_FUN(__glewGetnPixelMapuivARB) +#define glGetnPixelMapusvARB GLEW_GET_FUN(__glewGetnPixelMapusvARB) +#define glGetnPolygonStippleARB GLEW_GET_FUN(__glewGetnPolygonStippleARB) +#define glGetnSeparableFilterARB GLEW_GET_FUN(__glewGetnSeparableFilterARB) +#define glGetnTexImageARB GLEW_GET_FUN(__glewGetnTexImageARB) +#define glGetnUniformdvARB GLEW_GET_FUN(__glewGetnUniformdvARB) +#define glGetnUniformfvARB GLEW_GET_FUN(__glewGetnUniformfvARB) +#define glGetnUniformivARB GLEW_GET_FUN(__glewGetnUniformivARB) +#define glGetnUniformuivARB GLEW_GET_FUN(__glewGetnUniformuivARB) +#define glReadnPixelsARB GLEW_GET_FUN(__glewReadnPixelsARB) + +#define GLEW_ARB_robustness GLEW_GET_VAR(__GLEW_ARB_robustness) + +#endif /* GL_ARB_robustness */ + +/* ---------------- GL_ARB_robustness_application_isolation ---------------- */ + +#ifndef GL_ARB_robustness_application_isolation +#define GL_ARB_robustness_application_isolation 1 + +#define GLEW_ARB_robustness_application_isolation GLEW_GET_VAR(__GLEW_ARB_robustness_application_isolation) + +#endif /* GL_ARB_robustness_application_isolation */ + +/* ---------------- GL_ARB_robustness_share_group_isolation ---------------- */ + +#ifndef GL_ARB_robustness_share_group_isolation +#define GL_ARB_robustness_share_group_isolation 1 + +#define GLEW_ARB_robustness_share_group_isolation GLEW_GET_VAR(__GLEW_ARB_robustness_share_group_isolation) + +#endif /* GL_ARB_robustness_share_group_isolation */ + +/* ------------------------ GL_ARB_sample_locations ------------------------ */ + +#ifndef GL_ARB_sample_locations +#define GL_ARB_sample_locations 1 + +#define GL_SAMPLE_LOCATION_ARB 0x8E50 +#define GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB 0x933D +#define GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB 0x933E +#define GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB 0x933F +#define GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB 0x9340 +#define GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB 0x9341 +#define GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB 0x9342 +#define GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB 0x9343 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERSAMPLELOCATIONSFVARBPROC) (GLenum target, GLuint start, GLsizei count, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVARBPROC) (GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v); + +#define glFramebufferSampleLocationsfvARB GLEW_GET_FUN(__glewFramebufferSampleLocationsfvARB) +#define glNamedFramebufferSampleLocationsfvARB GLEW_GET_FUN(__glewNamedFramebufferSampleLocationsfvARB) + +#define GLEW_ARB_sample_locations GLEW_GET_VAR(__GLEW_ARB_sample_locations) + +#endif /* GL_ARB_sample_locations */ + +/* ------------------------- GL_ARB_sample_shading ------------------------- */ + +#ifndef GL_ARB_sample_shading +#define GL_ARB_sample_shading 1 + +#define GL_SAMPLE_SHADING_ARB 0x8C36 +#define GL_MIN_SAMPLE_SHADING_VALUE_ARB 0x8C37 + +typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGARBPROC) (GLclampf value); + +#define glMinSampleShadingARB GLEW_GET_FUN(__glewMinSampleShadingARB) + +#define GLEW_ARB_sample_shading GLEW_GET_VAR(__GLEW_ARB_sample_shading) + +#endif /* GL_ARB_sample_shading */ + +/* ------------------------- GL_ARB_sampler_objects ------------------------ */ + +#ifndef GL_ARB_sampler_objects +#define GL_ARB_sampler_objects 1 + +#define GL_SAMPLER_BINDING 0x8919 + +typedef void (GLAPIENTRY * PFNGLBINDSAMPLERPROC) (GLuint unit, GLuint sampler); +typedef void (GLAPIENTRY * PFNGLDELETESAMPLERSPROC) (GLsizei count, const GLuint * samplers); +typedef void (GLAPIENTRY * PFNGLGENSAMPLERSPROC) (GLsizei count, GLuint* samplers); +typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISSAMPLERPROC) (GLuint sampler); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, const GLuint* params); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERFPROC) (GLuint sampler, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIPROC) (GLuint sampler, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, const GLint* params); + +#define glBindSampler GLEW_GET_FUN(__glewBindSampler) +#define glDeleteSamplers GLEW_GET_FUN(__glewDeleteSamplers) +#define glGenSamplers GLEW_GET_FUN(__glewGenSamplers) +#define glGetSamplerParameterIiv GLEW_GET_FUN(__glewGetSamplerParameterIiv) +#define glGetSamplerParameterIuiv GLEW_GET_FUN(__glewGetSamplerParameterIuiv) +#define glGetSamplerParameterfv GLEW_GET_FUN(__glewGetSamplerParameterfv) +#define glGetSamplerParameteriv GLEW_GET_FUN(__glewGetSamplerParameteriv) +#define glIsSampler GLEW_GET_FUN(__glewIsSampler) +#define glSamplerParameterIiv GLEW_GET_FUN(__glewSamplerParameterIiv) +#define glSamplerParameterIuiv GLEW_GET_FUN(__glewSamplerParameterIuiv) +#define glSamplerParameterf GLEW_GET_FUN(__glewSamplerParameterf) +#define glSamplerParameterfv GLEW_GET_FUN(__glewSamplerParameterfv) +#define glSamplerParameteri GLEW_GET_FUN(__glewSamplerParameteri) +#define glSamplerParameteriv GLEW_GET_FUN(__glewSamplerParameteriv) + +#define GLEW_ARB_sampler_objects GLEW_GET_VAR(__GLEW_ARB_sampler_objects) + +#endif /* GL_ARB_sampler_objects */ + +/* ------------------------ GL_ARB_seamless_cube_map ----------------------- */ + +#ifndef GL_ARB_seamless_cube_map +#define GL_ARB_seamless_cube_map 1 + +#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F + +#define GLEW_ARB_seamless_cube_map GLEW_GET_VAR(__GLEW_ARB_seamless_cube_map) + +#endif /* GL_ARB_seamless_cube_map */ + +/* ------------------ GL_ARB_seamless_cubemap_per_texture ------------------ */ + +#ifndef GL_ARB_seamless_cubemap_per_texture +#define GL_ARB_seamless_cubemap_per_texture 1 + +#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F + +#define GLEW_ARB_seamless_cubemap_per_texture GLEW_GET_VAR(__GLEW_ARB_seamless_cubemap_per_texture) + +#endif /* GL_ARB_seamless_cubemap_per_texture */ + +/* --------------------- GL_ARB_separate_shader_objects -------------------- */ + +#ifndef GL_ARB_separate_shader_objects +#define GL_ARB_separate_shader_objects 1 + +#define GL_VERTEX_SHADER_BIT 0x00000001 +#define GL_FRAGMENT_SHADER_BIT 0x00000002 +#define GL_GEOMETRY_SHADER_BIT 0x00000004 +#define GL_TESS_CONTROL_SHADER_BIT 0x00000008 +#define GL_TESS_EVALUATION_SHADER_BIT 0x00000010 +#define GL_PROGRAM_SEPARABLE 0x8258 +#define GL_ACTIVE_PROGRAM 0x8259 +#define GL_PROGRAM_PIPELINE_BINDING 0x825A +#define GL_ALL_SHADER_BITS 0xFFFFFFFF + +typedef void (GLAPIENTRY * PFNGLACTIVESHADERPROGRAMPROC) (GLuint pipeline, GLuint program); +typedef void (GLAPIENTRY * PFNGLBINDPROGRAMPIPELINEPROC) (GLuint pipeline); +typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROGRAMVPROC) (GLenum type, GLsizei count, const GLchar * const * strings); +typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMPIPELINESPROC) (GLsizei n, const GLuint* pipelines); +typedef void (GLAPIENTRY * PFNGLGENPROGRAMPIPELINESPROC) (GLsizei n, GLuint* pipelines); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMPIPELINEINFOLOGPROC) (GLuint pipeline, GLsizei bufSize, GLsizei* length, GLchar *infoLog); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMPIPELINEIVPROC) (GLuint pipeline, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMPIPELINEPROC) (GLuint pipeline); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1DPROC) (GLuint program, GLint location, GLdouble x); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FPROC) (GLuint program, GLint location, GLfloat x); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IPROC) (GLuint program, GLint location, GLint x); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIPROC) (GLuint program, GLint location, GLuint x); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IPROC) (GLuint program, GLint location, GLint x, GLint y); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIPROC) (GLuint program, GLint location, GLuint x, GLuint y); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIPROC) (GLuint program, GLint location, GLuint x, GLuint y, GLuint z); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIPROC) (GLuint program, GLint location, GLuint x, GLuint y, GLuint z, GLuint w); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUSEPROGRAMSTAGESPROC) (GLuint pipeline, GLbitfield stages, GLuint program); +typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMPIPELINEPROC) (GLuint pipeline); + +#define glActiveShaderProgram GLEW_GET_FUN(__glewActiveShaderProgram) +#define glBindProgramPipeline GLEW_GET_FUN(__glewBindProgramPipeline) +#define glCreateShaderProgramv GLEW_GET_FUN(__glewCreateShaderProgramv) +#define glDeleteProgramPipelines GLEW_GET_FUN(__glewDeleteProgramPipelines) +#define glGenProgramPipelines GLEW_GET_FUN(__glewGenProgramPipelines) +#define glGetProgramPipelineInfoLog GLEW_GET_FUN(__glewGetProgramPipelineInfoLog) +#define glGetProgramPipelineiv GLEW_GET_FUN(__glewGetProgramPipelineiv) +#define glIsProgramPipeline GLEW_GET_FUN(__glewIsProgramPipeline) +#define glProgramUniform1d GLEW_GET_FUN(__glewProgramUniform1d) +#define glProgramUniform1dv GLEW_GET_FUN(__glewProgramUniform1dv) +#define glProgramUniform1f GLEW_GET_FUN(__glewProgramUniform1f) +#define glProgramUniform1fv GLEW_GET_FUN(__glewProgramUniform1fv) +#define glProgramUniform1i GLEW_GET_FUN(__glewProgramUniform1i) +#define glProgramUniform1iv GLEW_GET_FUN(__glewProgramUniform1iv) +#define glProgramUniform1ui GLEW_GET_FUN(__glewProgramUniform1ui) +#define glProgramUniform1uiv GLEW_GET_FUN(__glewProgramUniform1uiv) +#define glProgramUniform2d GLEW_GET_FUN(__glewProgramUniform2d) +#define glProgramUniform2dv GLEW_GET_FUN(__glewProgramUniform2dv) +#define glProgramUniform2f GLEW_GET_FUN(__glewProgramUniform2f) +#define glProgramUniform2fv GLEW_GET_FUN(__glewProgramUniform2fv) +#define glProgramUniform2i GLEW_GET_FUN(__glewProgramUniform2i) +#define glProgramUniform2iv GLEW_GET_FUN(__glewProgramUniform2iv) +#define glProgramUniform2ui GLEW_GET_FUN(__glewProgramUniform2ui) +#define glProgramUniform2uiv GLEW_GET_FUN(__glewProgramUniform2uiv) +#define glProgramUniform3d GLEW_GET_FUN(__glewProgramUniform3d) +#define glProgramUniform3dv GLEW_GET_FUN(__glewProgramUniform3dv) +#define glProgramUniform3f GLEW_GET_FUN(__glewProgramUniform3f) +#define glProgramUniform3fv GLEW_GET_FUN(__glewProgramUniform3fv) +#define glProgramUniform3i GLEW_GET_FUN(__glewProgramUniform3i) +#define glProgramUniform3iv GLEW_GET_FUN(__glewProgramUniform3iv) +#define glProgramUniform3ui GLEW_GET_FUN(__glewProgramUniform3ui) +#define glProgramUniform3uiv GLEW_GET_FUN(__glewProgramUniform3uiv) +#define glProgramUniform4d GLEW_GET_FUN(__glewProgramUniform4d) +#define glProgramUniform4dv GLEW_GET_FUN(__glewProgramUniform4dv) +#define glProgramUniform4f GLEW_GET_FUN(__glewProgramUniform4f) +#define glProgramUniform4fv GLEW_GET_FUN(__glewProgramUniform4fv) +#define glProgramUniform4i GLEW_GET_FUN(__glewProgramUniform4i) +#define glProgramUniform4iv GLEW_GET_FUN(__glewProgramUniform4iv) +#define glProgramUniform4ui GLEW_GET_FUN(__glewProgramUniform4ui) +#define glProgramUniform4uiv GLEW_GET_FUN(__glewProgramUniform4uiv) +#define glProgramUniformMatrix2dv GLEW_GET_FUN(__glewProgramUniformMatrix2dv) +#define glProgramUniformMatrix2fv GLEW_GET_FUN(__glewProgramUniformMatrix2fv) +#define glProgramUniformMatrix2x3dv GLEW_GET_FUN(__glewProgramUniformMatrix2x3dv) +#define glProgramUniformMatrix2x3fv GLEW_GET_FUN(__glewProgramUniformMatrix2x3fv) +#define glProgramUniformMatrix2x4dv GLEW_GET_FUN(__glewProgramUniformMatrix2x4dv) +#define glProgramUniformMatrix2x4fv GLEW_GET_FUN(__glewProgramUniformMatrix2x4fv) +#define glProgramUniformMatrix3dv GLEW_GET_FUN(__glewProgramUniformMatrix3dv) +#define glProgramUniformMatrix3fv GLEW_GET_FUN(__glewProgramUniformMatrix3fv) +#define glProgramUniformMatrix3x2dv GLEW_GET_FUN(__glewProgramUniformMatrix3x2dv) +#define glProgramUniformMatrix3x2fv GLEW_GET_FUN(__glewProgramUniformMatrix3x2fv) +#define glProgramUniformMatrix3x4dv GLEW_GET_FUN(__glewProgramUniformMatrix3x4dv) +#define glProgramUniformMatrix3x4fv GLEW_GET_FUN(__glewProgramUniformMatrix3x4fv) +#define glProgramUniformMatrix4dv GLEW_GET_FUN(__glewProgramUniformMatrix4dv) +#define glProgramUniformMatrix4fv GLEW_GET_FUN(__glewProgramUniformMatrix4fv) +#define glProgramUniformMatrix4x2dv GLEW_GET_FUN(__glewProgramUniformMatrix4x2dv) +#define glProgramUniformMatrix4x2fv GLEW_GET_FUN(__glewProgramUniformMatrix4x2fv) +#define glProgramUniformMatrix4x3dv GLEW_GET_FUN(__glewProgramUniformMatrix4x3dv) +#define glProgramUniformMatrix4x3fv GLEW_GET_FUN(__glewProgramUniformMatrix4x3fv) +#define glUseProgramStages GLEW_GET_FUN(__glewUseProgramStages) +#define glValidateProgramPipeline GLEW_GET_FUN(__glewValidateProgramPipeline) + +#define GLEW_ARB_separate_shader_objects GLEW_GET_VAR(__GLEW_ARB_separate_shader_objects) + +#endif /* GL_ARB_separate_shader_objects */ + +/* -------------------- GL_ARB_shader_atomic_counter_ops ------------------- */ + +#ifndef GL_ARB_shader_atomic_counter_ops +#define GL_ARB_shader_atomic_counter_ops 1 + +#define GLEW_ARB_shader_atomic_counter_ops GLEW_GET_VAR(__GLEW_ARB_shader_atomic_counter_ops) + +#endif /* GL_ARB_shader_atomic_counter_ops */ + +/* --------------------- GL_ARB_shader_atomic_counters --------------------- */ + +#ifndef GL_ARB_shader_atomic_counters +#define GL_ARB_shader_atomic_counters 1 + +#define GL_ATOMIC_COUNTER_BUFFER 0x92C0 +#define GL_ATOMIC_COUNTER_BUFFER_BINDING 0x92C1 +#define GL_ATOMIC_COUNTER_BUFFER_START 0x92C2 +#define GL_ATOMIC_COUNTER_BUFFER_SIZE 0x92C3 +#define GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE 0x92C4 +#define GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS 0x92C5 +#define GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES 0x92C6 +#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER 0x92C7 +#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER 0x92C8 +#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER 0x92C9 +#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER 0x92CA +#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER 0x92CB +#define GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS 0x92CC +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS 0x92CD +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS 0x92CE +#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS 0x92CF +#define GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS 0x92D0 +#define GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS 0x92D1 +#define GL_MAX_VERTEX_ATOMIC_COUNTERS 0x92D2 +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS 0x92D3 +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS 0x92D4 +#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS 0x92D5 +#define GL_MAX_FRAGMENT_ATOMIC_COUNTERS 0x92D6 +#define GL_MAX_COMBINED_ATOMIC_COUNTERS 0x92D7 +#define GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE 0x92D8 +#define GL_ACTIVE_ATOMIC_COUNTER_BUFFERS 0x92D9 +#define GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX 0x92DA +#define GL_UNSIGNED_INT_ATOMIC_COUNTER 0x92DB +#define GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS 0x92DC + +typedef void (GLAPIENTRY * PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC) (GLuint program, GLuint bufferIndex, GLenum pname, GLint* params); + +#define glGetActiveAtomicCounterBufferiv GLEW_GET_FUN(__glewGetActiveAtomicCounterBufferiv) + +#define GLEW_ARB_shader_atomic_counters GLEW_GET_VAR(__GLEW_ARB_shader_atomic_counters) + +#endif /* GL_ARB_shader_atomic_counters */ + +/* -------------------------- GL_ARB_shader_ballot ------------------------- */ + +#ifndef GL_ARB_shader_ballot +#define GL_ARB_shader_ballot 1 + +#define GLEW_ARB_shader_ballot GLEW_GET_VAR(__GLEW_ARB_shader_ballot) + +#endif /* GL_ARB_shader_ballot */ + +/* ----------------------- GL_ARB_shader_bit_encoding ---------------------- */ + +#ifndef GL_ARB_shader_bit_encoding +#define GL_ARB_shader_bit_encoding 1 + +#define GLEW_ARB_shader_bit_encoding GLEW_GET_VAR(__GLEW_ARB_shader_bit_encoding) + +#endif /* GL_ARB_shader_bit_encoding */ + +/* -------------------------- GL_ARB_shader_clock -------------------------- */ + +#ifndef GL_ARB_shader_clock +#define GL_ARB_shader_clock 1 + +#define GLEW_ARB_shader_clock GLEW_GET_VAR(__GLEW_ARB_shader_clock) + +#endif /* GL_ARB_shader_clock */ + +/* --------------------- GL_ARB_shader_draw_parameters --------------------- */ + +#ifndef GL_ARB_shader_draw_parameters +#define GL_ARB_shader_draw_parameters 1 + +#define GLEW_ARB_shader_draw_parameters GLEW_GET_VAR(__GLEW_ARB_shader_draw_parameters) + +#endif /* GL_ARB_shader_draw_parameters */ + +/* ------------------------ GL_ARB_shader_group_vote ----------------------- */ + +#ifndef GL_ARB_shader_group_vote +#define GL_ARB_shader_group_vote 1 + +#define GLEW_ARB_shader_group_vote GLEW_GET_VAR(__GLEW_ARB_shader_group_vote) + +#endif /* GL_ARB_shader_group_vote */ + +/* --------------------- GL_ARB_shader_image_load_store -------------------- */ + +#ifndef GL_ARB_shader_image_load_store +#define GL_ARB_shader_image_load_store 1 + +#define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT 0x00000001 +#define GL_ELEMENT_ARRAY_BARRIER_BIT 0x00000002 +#define GL_UNIFORM_BARRIER_BIT 0x00000004 +#define GL_TEXTURE_FETCH_BARRIER_BIT 0x00000008 +#define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT 0x00000020 +#define GL_COMMAND_BARRIER_BIT 0x00000040 +#define GL_PIXEL_BUFFER_BARRIER_BIT 0x00000080 +#define GL_TEXTURE_UPDATE_BARRIER_BIT 0x00000100 +#define GL_BUFFER_UPDATE_BARRIER_BIT 0x00000200 +#define GL_FRAMEBUFFER_BARRIER_BIT 0x00000400 +#define GL_TRANSFORM_FEEDBACK_BARRIER_BIT 0x00000800 +#define GL_ATOMIC_COUNTER_BARRIER_BIT 0x00001000 +#define GL_MAX_IMAGE_UNITS 0x8F38 +#define GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS 0x8F39 +#define GL_IMAGE_BINDING_NAME 0x8F3A +#define GL_IMAGE_BINDING_LEVEL 0x8F3B +#define GL_IMAGE_BINDING_LAYERED 0x8F3C +#define GL_IMAGE_BINDING_LAYER 0x8F3D +#define GL_IMAGE_BINDING_ACCESS 0x8F3E +#define GL_IMAGE_1D 0x904C +#define GL_IMAGE_2D 0x904D +#define GL_IMAGE_3D 0x904E +#define GL_IMAGE_2D_RECT 0x904F +#define GL_IMAGE_CUBE 0x9050 +#define GL_IMAGE_BUFFER 0x9051 +#define GL_IMAGE_1D_ARRAY 0x9052 +#define GL_IMAGE_2D_ARRAY 0x9053 +#define GL_IMAGE_CUBE_MAP_ARRAY 0x9054 +#define GL_IMAGE_2D_MULTISAMPLE 0x9055 +#define GL_IMAGE_2D_MULTISAMPLE_ARRAY 0x9056 +#define GL_INT_IMAGE_1D 0x9057 +#define GL_INT_IMAGE_2D 0x9058 +#define GL_INT_IMAGE_3D 0x9059 +#define GL_INT_IMAGE_2D_RECT 0x905A +#define GL_INT_IMAGE_CUBE 0x905B +#define GL_INT_IMAGE_BUFFER 0x905C +#define GL_INT_IMAGE_1D_ARRAY 0x905D +#define GL_INT_IMAGE_2D_ARRAY 0x905E +#define GL_INT_IMAGE_CUBE_MAP_ARRAY 0x905F +#define GL_INT_IMAGE_2D_MULTISAMPLE 0x9060 +#define GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY 0x9061 +#define GL_UNSIGNED_INT_IMAGE_1D 0x9062 +#define GL_UNSIGNED_INT_IMAGE_2D 0x9063 +#define GL_UNSIGNED_INT_IMAGE_3D 0x9064 +#define GL_UNSIGNED_INT_IMAGE_2D_RECT 0x9065 +#define GL_UNSIGNED_INT_IMAGE_CUBE 0x9066 +#define GL_UNSIGNED_INT_IMAGE_BUFFER 0x9067 +#define GL_UNSIGNED_INT_IMAGE_1D_ARRAY 0x9068 +#define GL_UNSIGNED_INT_IMAGE_2D_ARRAY 0x9069 +#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY 0x906A +#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE 0x906B +#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY 0x906C +#define GL_MAX_IMAGE_SAMPLES 0x906D +#define GL_IMAGE_BINDING_FORMAT 0x906E +#define GL_IMAGE_FORMAT_COMPATIBILITY_TYPE 0x90C7 +#define GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE 0x90C8 +#define GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS 0x90C9 +#define GL_MAX_VERTEX_IMAGE_UNIFORMS 0x90CA +#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS 0x90CB +#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS 0x90CC +#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS 0x90CD +#define GL_MAX_FRAGMENT_IMAGE_UNIFORMS 0x90CE +#define GL_MAX_COMBINED_IMAGE_UNIFORMS 0x90CF +#define GL_ALL_BARRIER_BITS 0xFFFFFFFF + +typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTUREPROC) (GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format); +typedef void (GLAPIENTRY * PFNGLMEMORYBARRIERPROC) (GLbitfield barriers); + +#define glBindImageTexture GLEW_GET_FUN(__glewBindImageTexture) +#define glMemoryBarrier GLEW_GET_FUN(__glewMemoryBarrier) + +#define GLEW_ARB_shader_image_load_store GLEW_GET_VAR(__GLEW_ARB_shader_image_load_store) + +#endif /* GL_ARB_shader_image_load_store */ + +/* ------------------------ GL_ARB_shader_image_size ----------------------- */ + +#ifndef GL_ARB_shader_image_size +#define GL_ARB_shader_image_size 1 + +#define GLEW_ARB_shader_image_size GLEW_GET_VAR(__GLEW_ARB_shader_image_size) + +#endif /* GL_ARB_shader_image_size */ + +/* ------------------------- GL_ARB_shader_objects ------------------------- */ + +#ifndef GL_ARB_shader_objects +#define GL_ARB_shader_objects 1 + +#define GL_PROGRAM_OBJECT_ARB 0x8B40 +#define GL_SHADER_OBJECT_ARB 0x8B48 +#define GL_OBJECT_TYPE_ARB 0x8B4E +#define GL_OBJECT_SUBTYPE_ARB 0x8B4F +#define GL_FLOAT_VEC2_ARB 0x8B50 +#define GL_FLOAT_VEC3_ARB 0x8B51 +#define GL_FLOAT_VEC4_ARB 0x8B52 +#define GL_INT_VEC2_ARB 0x8B53 +#define GL_INT_VEC3_ARB 0x8B54 +#define GL_INT_VEC4_ARB 0x8B55 +#define GL_BOOL_ARB 0x8B56 +#define GL_BOOL_VEC2_ARB 0x8B57 +#define GL_BOOL_VEC3_ARB 0x8B58 +#define GL_BOOL_VEC4_ARB 0x8B59 +#define GL_FLOAT_MAT2_ARB 0x8B5A +#define GL_FLOAT_MAT3_ARB 0x8B5B +#define GL_FLOAT_MAT4_ARB 0x8B5C +#define GL_SAMPLER_1D_ARB 0x8B5D +#define GL_SAMPLER_2D_ARB 0x8B5E +#define GL_SAMPLER_3D_ARB 0x8B5F +#define GL_SAMPLER_CUBE_ARB 0x8B60 +#define GL_SAMPLER_1D_SHADOW_ARB 0x8B61 +#define GL_SAMPLER_2D_SHADOW_ARB 0x8B62 +#define GL_SAMPLER_2D_RECT_ARB 0x8B63 +#define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64 +#define GL_OBJECT_DELETE_STATUS_ARB 0x8B80 +#define GL_OBJECT_COMPILE_STATUS_ARB 0x8B81 +#define GL_OBJECT_LINK_STATUS_ARB 0x8B82 +#define GL_OBJECT_VALIDATE_STATUS_ARB 0x8B83 +#define GL_OBJECT_INFO_LOG_LENGTH_ARB 0x8B84 +#define GL_OBJECT_ATTACHED_OBJECTS_ARB 0x8B85 +#define GL_OBJECT_ACTIVE_UNIFORMS_ARB 0x8B86 +#define GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB 0x8B87 +#define GL_OBJECT_SHADER_SOURCE_LENGTH_ARB 0x8B88 + +typedef char GLcharARB; +typedef unsigned int GLhandleARB; + +typedef void (GLAPIENTRY * PFNGLATTACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB obj); +typedef void (GLAPIENTRY * PFNGLCOMPILESHADERARBPROC) (GLhandleARB shaderObj); +typedef GLhandleARB (GLAPIENTRY * PFNGLCREATEPROGRAMOBJECTARBPROC) (void); +typedef GLhandleARB (GLAPIENTRY * PFNGLCREATESHADEROBJECTARBPROC) (GLenum shaderType); +typedef void (GLAPIENTRY * PFNGLDELETEOBJECTARBPROC) (GLhandleARB obj); +typedef void (GLAPIENTRY * PFNGLDETACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB attachedObj); +typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name); +typedef void (GLAPIENTRY * PFNGLGETATTACHEDOBJECTSARBPROC) (GLhandleARB containerObj, GLsizei maxCount, GLsizei* count, GLhandleARB *obj); +typedef GLhandleARB (GLAPIENTRY * PFNGLGETHANDLEARBPROC) (GLenum pname); +typedef void (GLAPIENTRY * PFNGLGETINFOLOGARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *infoLog); +typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERFVARBPROC) (GLhandleARB obj, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERIVARBPROC) (GLhandleARB obj, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *source); +typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB* name); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVARBPROC) (GLhandleARB programObj, GLint location, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVARBPROC) (GLhandleARB programObj, GLint location, GLint* params); +typedef void (GLAPIENTRY * PFNGLLINKPROGRAMARBPROC) (GLhandleARB programObj); +typedef void (GLAPIENTRY * PFNGLSHADERSOURCEARBPROC) (GLhandleARB shaderObj, GLsizei count, const GLcharARB ** string, const GLint *length); +typedef void (GLAPIENTRY * PFNGLUNIFORM1FARBPROC) (GLint location, GLfloat v0); +typedef void (GLAPIENTRY * PFNGLUNIFORM1FVARBPROC) (GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM1IARBPROC) (GLint location, GLint v0); +typedef void (GLAPIENTRY * PFNGLUNIFORM1IVARBPROC) (GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2FARBPROC) (GLint location, GLfloat v0, GLfloat v1); +typedef void (GLAPIENTRY * PFNGLUNIFORM2FVARBPROC) (GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2IARBPROC) (GLint location, GLint v0, GLint v1); +typedef void (GLAPIENTRY * PFNGLUNIFORM2IVARBPROC) (GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); +typedef void (GLAPIENTRY * PFNGLUNIFORM3FVARBPROC) (GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2); +typedef void (GLAPIENTRY * PFNGLUNIFORM3IVARBPROC) (GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); +typedef void (GLAPIENTRY * PFNGLUNIFORM4FVARBPROC) (GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); +typedef void (GLAPIENTRY * PFNGLUNIFORM4IVARBPROC) (GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUSEPROGRAMOBJECTARBPROC) (GLhandleARB programObj); +typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMARBPROC) (GLhandleARB programObj); + +#define glAttachObjectARB GLEW_GET_FUN(__glewAttachObjectARB) +#define glCompileShaderARB GLEW_GET_FUN(__glewCompileShaderARB) +#define glCreateProgramObjectARB GLEW_GET_FUN(__glewCreateProgramObjectARB) +#define glCreateShaderObjectARB GLEW_GET_FUN(__glewCreateShaderObjectARB) +#define glDeleteObjectARB GLEW_GET_FUN(__glewDeleteObjectARB) +#define glDetachObjectARB GLEW_GET_FUN(__glewDetachObjectARB) +#define glGetActiveUniformARB GLEW_GET_FUN(__glewGetActiveUniformARB) +#define glGetAttachedObjectsARB GLEW_GET_FUN(__glewGetAttachedObjectsARB) +#define glGetHandleARB GLEW_GET_FUN(__glewGetHandleARB) +#define glGetInfoLogARB GLEW_GET_FUN(__glewGetInfoLogARB) +#define glGetObjectParameterfvARB GLEW_GET_FUN(__glewGetObjectParameterfvARB) +#define glGetObjectParameterivARB GLEW_GET_FUN(__glewGetObjectParameterivARB) +#define glGetShaderSourceARB GLEW_GET_FUN(__glewGetShaderSourceARB) +#define glGetUniformLocationARB GLEW_GET_FUN(__glewGetUniformLocationARB) +#define glGetUniformfvARB GLEW_GET_FUN(__glewGetUniformfvARB) +#define glGetUniformivARB GLEW_GET_FUN(__glewGetUniformivARB) +#define glLinkProgramARB GLEW_GET_FUN(__glewLinkProgramARB) +#define glShaderSourceARB GLEW_GET_FUN(__glewShaderSourceARB) +#define glUniform1fARB GLEW_GET_FUN(__glewUniform1fARB) +#define glUniform1fvARB GLEW_GET_FUN(__glewUniform1fvARB) +#define glUniform1iARB GLEW_GET_FUN(__glewUniform1iARB) +#define glUniform1ivARB GLEW_GET_FUN(__glewUniform1ivARB) +#define glUniform2fARB GLEW_GET_FUN(__glewUniform2fARB) +#define glUniform2fvARB GLEW_GET_FUN(__glewUniform2fvARB) +#define glUniform2iARB GLEW_GET_FUN(__glewUniform2iARB) +#define glUniform2ivARB GLEW_GET_FUN(__glewUniform2ivARB) +#define glUniform3fARB GLEW_GET_FUN(__glewUniform3fARB) +#define glUniform3fvARB GLEW_GET_FUN(__glewUniform3fvARB) +#define glUniform3iARB GLEW_GET_FUN(__glewUniform3iARB) +#define glUniform3ivARB GLEW_GET_FUN(__glewUniform3ivARB) +#define glUniform4fARB GLEW_GET_FUN(__glewUniform4fARB) +#define glUniform4fvARB GLEW_GET_FUN(__glewUniform4fvARB) +#define glUniform4iARB GLEW_GET_FUN(__glewUniform4iARB) +#define glUniform4ivARB GLEW_GET_FUN(__glewUniform4ivARB) +#define glUniformMatrix2fvARB GLEW_GET_FUN(__glewUniformMatrix2fvARB) +#define glUniformMatrix3fvARB GLEW_GET_FUN(__glewUniformMatrix3fvARB) +#define glUniformMatrix4fvARB GLEW_GET_FUN(__glewUniformMatrix4fvARB) +#define glUseProgramObjectARB GLEW_GET_FUN(__glewUseProgramObjectARB) +#define glValidateProgramARB GLEW_GET_FUN(__glewValidateProgramARB) + +#define GLEW_ARB_shader_objects GLEW_GET_VAR(__GLEW_ARB_shader_objects) + +#endif /* GL_ARB_shader_objects */ + +/* ------------------------ GL_ARB_shader_precision ------------------------ */ + +#ifndef GL_ARB_shader_precision +#define GL_ARB_shader_precision 1 + +#define GLEW_ARB_shader_precision GLEW_GET_VAR(__GLEW_ARB_shader_precision) + +#endif /* GL_ARB_shader_precision */ + +/* ---------------------- GL_ARB_shader_stencil_export --------------------- */ + +#ifndef GL_ARB_shader_stencil_export +#define GL_ARB_shader_stencil_export 1 + +#define GLEW_ARB_shader_stencil_export GLEW_GET_VAR(__GLEW_ARB_shader_stencil_export) + +#endif /* GL_ARB_shader_stencil_export */ + +/* ------------------ GL_ARB_shader_storage_buffer_object ------------------ */ + +#ifndef GL_ARB_shader_storage_buffer_object +#define GL_ARB_shader_storage_buffer_object 1 + +#define GL_SHADER_STORAGE_BARRIER_BIT 0x2000 +#define GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES 0x8F39 +#define GL_SHADER_STORAGE_BUFFER 0x90D2 +#define GL_SHADER_STORAGE_BUFFER_BINDING 0x90D3 +#define GL_SHADER_STORAGE_BUFFER_START 0x90D4 +#define GL_SHADER_STORAGE_BUFFER_SIZE 0x90D5 +#define GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS 0x90D6 +#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS 0x90D7 +#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS 0x90D8 +#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS 0x90D9 +#define GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS 0x90DA +#define GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS 0x90DB +#define GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS 0x90DC +#define GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS 0x90DD +#define GL_MAX_SHADER_STORAGE_BLOCK_SIZE 0x90DE +#define GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT 0x90DF + +typedef void (GLAPIENTRY * PFNGLSHADERSTORAGEBLOCKBINDINGPROC) (GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding); + +#define glShaderStorageBlockBinding GLEW_GET_FUN(__glewShaderStorageBlockBinding) + +#define GLEW_ARB_shader_storage_buffer_object GLEW_GET_VAR(__GLEW_ARB_shader_storage_buffer_object) + +#endif /* GL_ARB_shader_storage_buffer_object */ + +/* ------------------------ GL_ARB_shader_subroutine ----------------------- */ + +#ifndef GL_ARB_shader_subroutine +#define GL_ARB_shader_subroutine 1 + +#define GL_ACTIVE_SUBROUTINES 0x8DE5 +#define GL_ACTIVE_SUBROUTINE_UNIFORMS 0x8DE6 +#define GL_MAX_SUBROUTINES 0x8DE7 +#define GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS 0x8DE8 +#define GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS 0x8E47 +#define GL_ACTIVE_SUBROUTINE_MAX_LENGTH 0x8E48 +#define GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH 0x8E49 +#define GL_NUM_COMPATIBLE_SUBROUTINES 0x8E4A +#define GL_COMPATIBLE_SUBROUTINES 0x8E4B + +typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINENAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, GLchar *name); +typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, GLchar *name); +typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC) (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint* values); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTAGEIVPROC) (GLuint program, GLenum shadertype, GLenum pname, GLint* values); +typedef GLuint (GLAPIENTRY * PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, GLenum shadertype, const GLchar* name); +typedef GLint (GLAPIENTRY * PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint program, GLenum shadertype, const GLchar* name); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMSUBROUTINEUIVPROC) (GLenum shadertype, GLint location, GLuint* params); +typedef void (GLAPIENTRY * PFNGLUNIFORMSUBROUTINESUIVPROC) (GLenum shadertype, GLsizei count, const GLuint* indices); + +#define glGetActiveSubroutineName GLEW_GET_FUN(__glewGetActiveSubroutineName) +#define glGetActiveSubroutineUniformName GLEW_GET_FUN(__glewGetActiveSubroutineUniformName) +#define glGetActiveSubroutineUniformiv GLEW_GET_FUN(__glewGetActiveSubroutineUniformiv) +#define glGetProgramStageiv GLEW_GET_FUN(__glewGetProgramStageiv) +#define glGetSubroutineIndex GLEW_GET_FUN(__glewGetSubroutineIndex) +#define glGetSubroutineUniformLocation GLEW_GET_FUN(__glewGetSubroutineUniformLocation) +#define glGetUniformSubroutineuiv GLEW_GET_FUN(__glewGetUniformSubroutineuiv) +#define glUniformSubroutinesuiv GLEW_GET_FUN(__glewUniformSubroutinesuiv) + +#define GLEW_ARB_shader_subroutine GLEW_GET_VAR(__GLEW_ARB_shader_subroutine) + +#endif /* GL_ARB_shader_subroutine */ + +/* ------------------ GL_ARB_shader_texture_image_samples ------------------ */ + +#ifndef GL_ARB_shader_texture_image_samples +#define GL_ARB_shader_texture_image_samples 1 + +#define GLEW_ARB_shader_texture_image_samples GLEW_GET_VAR(__GLEW_ARB_shader_texture_image_samples) + +#endif /* GL_ARB_shader_texture_image_samples */ + +/* ----------------------- GL_ARB_shader_texture_lod ----------------------- */ + +#ifndef GL_ARB_shader_texture_lod +#define GL_ARB_shader_texture_lod 1 + +#define GLEW_ARB_shader_texture_lod GLEW_GET_VAR(__GLEW_ARB_shader_texture_lod) + +#endif /* GL_ARB_shader_texture_lod */ + +/* ------------------- GL_ARB_shader_viewport_layer_array ------------------ */ + +#ifndef GL_ARB_shader_viewport_layer_array +#define GL_ARB_shader_viewport_layer_array 1 + +#define GLEW_ARB_shader_viewport_layer_array GLEW_GET_VAR(__GLEW_ARB_shader_viewport_layer_array) + +#endif /* GL_ARB_shader_viewport_layer_array */ + +/* ---------------------- GL_ARB_shading_language_100 ---------------------- */ + +#ifndef GL_ARB_shading_language_100 +#define GL_ARB_shading_language_100 1 + +#define GL_SHADING_LANGUAGE_VERSION_ARB 0x8B8C + +#define GLEW_ARB_shading_language_100 GLEW_GET_VAR(__GLEW_ARB_shading_language_100) + +#endif /* GL_ARB_shading_language_100 */ + +/* -------------------- GL_ARB_shading_language_420pack -------------------- */ + +#ifndef GL_ARB_shading_language_420pack +#define GL_ARB_shading_language_420pack 1 + +#define GLEW_ARB_shading_language_420pack GLEW_GET_VAR(__GLEW_ARB_shading_language_420pack) + +#endif /* GL_ARB_shading_language_420pack */ + +/* -------------------- GL_ARB_shading_language_include -------------------- */ + +#ifndef GL_ARB_shading_language_include +#define GL_ARB_shading_language_include 1 + +#define GL_SHADER_INCLUDE_ARB 0x8DAE +#define GL_NAMED_STRING_LENGTH_ARB 0x8DE9 +#define GL_NAMED_STRING_TYPE_ARB 0x8DEA + +typedef void (GLAPIENTRY * PFNGLCOMPILESHADERINCLUDEARBPROC) (GLuint shader, GLsizei count, const GLchar* const *path, const GLint *length); +typedef void (GLAPIENTRY * PFNGLDELETENAMEDSTRINGARBPROC) (GLint namelen, const GLchar* name); +typedef void (GLAPIENTRY * PFNGLGETNAMEDSTRINGARBPROC) (GLint namelen, const GLchar* name, GLsizei bufSize, GLint *stringlen, GLchar *string); +typedef void (GLAPIENTRY * PFNGLGETNAMEDSTRINGIVARBPROC) (GLint namelen, const GLchar* name, GLenum pname, GLint *params); +typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, const GLchar* name); +typedef void (GLAPIENTRY * PFNGLNAMEDSTRINGARBPROC) (GLenum type, GLint namelen, const GLchar* name, GLint stringlen, const GLchar *string); + +#define glCompileShaderIncludeARB GLEW_GET_FUN(__glewCompileShaderIncludeARB) +#define glDeleteNamedStringARB GLEW_GET_FUN(__glewDeleteNamedStringARB) +#define glGetNamedStringARB GLEW_GET_FUN(__glewGetNamedStringARB) +#define glGetNamedStringivARB GLEW_GET_FUN(__glewGetNamedStringivARB) +#define glIsNamedStringARB GLEW_GET_FUN(__glewIsNamedStringARB) +#define glNamedStringARB GLEW_GET_FUN(__glewNamedStringARB) + +#define GLEW_ARB_shading_language_include GLEW_GET_VAR(__GLEW_ARB_shading_language_include) + +#endif /* GL_ARB_shading_language_include */ + +/* -------------------- GL_ARB_shading_language_packing -------------------- */ + +#ifndef GL_ARB_shading_language_packing +#define GL_ARB_shading_language_packing 1 + +#define GLEW_ARB_shading_language_packing GLEW_GET_VAR(__GLEW_ARB_shading_language_packing) + +#endif /* GL_ARB_shading_language_packing */ + +/* ----------------------------- GL_ARB_shadow ----------------------------- */ + +#ifndef GL_ARB_shadow +#define GL_ARB_shadow 1 + +#define GL_TEXTURE_COMPARE_MODE_ARB 0x884C +#define GL_TEXTURE_COMPARE_FUNC_ARB 0x884D +#define GL_COMPARE_R_TO_TEXTURE_ARB 0x884E + +#define GLEW_ARB_shadow GLEW_GET_VAR(__GLEW_ARB_shadow) + +#endif /* GL_ARB_shadow */ + +/* ------------------------- GL_ARB_shadow_ambient ------------------------- */ + +#ifndef GL_ARB_shadow_ambient +#define GL_ARB_shadow_ambient 1 + +#define GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF + +#define GLEW_ARB_shadow_ambient GLEW_GET_VAR(__GLEW_ARB_shadow_ambient) + +#endif /* GL_ARB_shadow_ambient */ + +/* -------------------------- GL_ARB_sparse_buffer ------------------------- */ + +#ifndef GL_ARB_sparse_buffer +#define GL_ARB_sparse_buffer 1 + +#define GL_SPARSE_STORAGE_BIT_ARB 0x0400 +#define GL_SPARSE_BUFFER_PAGE_SIZE_ARB 0x82F8 + +typedef void (GLAPIENTRY * PFNGLBUFFERPAGECOMMITMENTARBPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLboolean commit); + +#define glBufferPageCommitmentARB GLEW_GET_FUN(__glewBufferPageCommitmentARB) + +#define GLEW_ARB_sparse_buffer GLEW_GET_VAR(__GLEW_ARB_sparse_buffer) + +#endif /* GL_ARB_sparse_buffer */ + +/* ------------------------- GL_ARB_sparse_texture ------------------------- */ + +#ifndef GL_ARB_sparse_texture +#define GL_ARB_sparse_texture 1 + +#define GL_VIRTUAL_PAGE_SIZE_X_ARB 0x9195 +#define GL_VIRTUAL_PAGE_SIZE_Y_ARB 0x9196 +#define GL_VIRTUAL_PAGE_SIZE_Z_ARB 0x9197 +#define GL_MAX_SPARSE_TEXTURE_SIZE_ARB 0x9198 +#define GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB 0x9199 +#define GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB 0x919A +#define GL_TEXTURE_SPARSE_ARB 0x91A6 +#define GL_VIRTUAL_PAGE_SIZE_INDEX_ARB 0x91A7 +#define GL_NUM_VIRTUAL_PAGE_SIZES_ARB 0x91A8 +#define GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB 0x91A9 +#define GL_NUM_SPARSE_LEVELS_ARB 0x91AA + +typedef void (GLAPIENTRY * PFNGLTEXPAGECOMMITMENTARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit); + +#define glTexPageCommitmentARB GLEW_GET_FUN(__glewTexPageCommitmentARB) + +#define GLEW_ARB_sparse_texture GLEW_GET_VAR(__GLEW_ARB_sparse_texture) + +#endif /* GL_ARB_sparse_texture */ + +/* ------------------------- GL_ARB_sparse_texture2 ------------------------ */ + +#ifndef GL_ARB_sparse_texture2 +#define GL_ARB_sparse_texture2 1 + +#define GLEW_ARB_sparse_texture2 GLEW_GET_VAR(__GLEW_ARB_sparse_texture2) + +#endif /* GL_ARB_sparse_texture2 */ + +/* ---------------------- GL_ARB_sparse_texture_clamp ---------------------- */ + +#ifndef GL_ARB_sparse_texture_clamp +#define GL_ARB_sparse_texture_clamp 1 + +#define GLEW_ARB_sparse_texture_clamp GLEW_GET_VAR(__GLEW_ARB_sparse_texture_clamp) + +#endif /* GL_ARB_sparse_texture_clamp */ + +/* ------------------------ GL_ARB_spirv_extensions ------------------------ */ + +#ifndef GL_ARB_spirv_extensions +#define GL_ARB_spirv_extensions 1 + +#define GL_SPIR_V_EXTENSIONS 0x9553 +#define GL_NUM_SPIR_V_EXTENSIONS 0x9554 + +#define GLEW_ARB_spirv_extensions GLEW_GET_VAR(__GLEW_ARB_spirv_extensions) + +#endif /* GL_ARB_spirv_extensions */ + +/* ------------------------ GL_ARB_stencil_texturing ----------------------- */ + +#ifndef GL_ARB_stencil_texturing +#define GL_ARB_stencil_texturing 1 + +#define GL_DEPTH_STENCIL_TEXTURE_MODE 0x90EA + +#define GLEW_ARB_stencil_texturing GLEW_GET_VAR(__GLEW_ARB_stencil_texturing) + +#endif /* GL_ARB_stencil_texturing */ + +/* ------------------------------ GL_ARB_sync ------------------------------ */ + +#ifndef GL_ARB_sync +#define GL_ARB_sync 1 + +#define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001 +#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111 +#define GL_OBJECT_TYPE 0x9112 +#define GL_SYNC_CONDITION 0x9113 +#define GL_SYNC_STATUS 0x9114 +#define GL_SYNC_FLAGS 0x9115 +#define GL_SYNC_FENCE 0x9116 +#define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117 +#define GL_UNSIGNALED 0x9118 +#define GL_SIGNALED 0x9119 +#define GL_ALREADY_SIGNALED 0x911A +#define GL_TIMEOUT_EXPIRED 0x911B +#define GL_CONDITION_SATISFIED 0x911C +#define GL_WAIT_FAILED 0x911D +#define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFFull + +typedef GLenum (GLAPIENTRY * PFNGLCLIENTWAITSYNCPROC) (GLsync GLsync,GLbitfield flags,GLuint64 timeout); +typedef void (GLAPIENTRY * PFNGLDELETESYNCPROC) (GLsync GLsync); +typedef GLsync (GLAPIENTRY * PFNGLFENCESYNCPROC) (GLenum condition,GLbitfield flags); +typedef void (GLAPIENTRY * PFNGLGETINTEGER64VPROC) (GLenum pname, GLint64* params); +typedef void (GLAPIENTRY * PFNGLGETSYNCIVPROC) (GLsync GLsync,GLenum pname,GLsizei bufSize,GLsizei* length, GLint *values); +typedef GLboolean (GLAPIENTRY * PFNGLISSYNCPROC) (GLsync GLsync); +typedef void (GLAPIENTRY * PFNGLWAITSYNCPROC) (GLsync GLsync,GLbitfield flags,GLuint64 timeout); + +#define glClientWaitSync GLEW_GET_FUN(__glewClientWaitSync) +#define glDeleteSync GLEW_GET_FUN(__glewDeleteSync) +#define glFenceSync GLEW_GET_FUN(__glewFenceSync) +#define glGetInteger64v GLEW_GET_FUN(__glewGetInteger64v) +#define glGetSynciv GLEW_GET_FUN(__glewGetSynciv) +#define glIsSync GLEW_GET_FUN(__glewIsSync) +#define glWaitSync GLEW_GET_FUN(__glewWaitSync) + +#define GLEW_ARB_sync GLEW_GET_VAR(__GLEW_ARB_sync) + +#endif /* GL_ARB_sync */ + +/* ----------------------- GL_ARB_tessellation_shader ---------------------- */ + +#ifndef GL_ARB_tessellation_shader +#define GL_ARB_tessellation_shader 1 + +#define GL_PATCHES 0xE +#define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER 0x84F0 +#define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER 0x84F1 +#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS 0x886C +#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS 0x886D +#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E1E +#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E1F +#define GL_PATCH_VERTICES 0x8E72 +#define GL_PATCH_DEFAULT_INNER_LEVEL 0x8E73 +#define GL_PATCH_DEFAULT_OUTER_LEVEL 0x8E74 +#define GL_TESS_CONTROL_OUTPUT_VERTICES 0x8E75 +#define GL_TESS_GEN_MODE 0x8E76 +#define GL_TESS_GEN_SPACING 0x8E77 +#define GL_TESS_GEN_VERTEX_ORDER 0x8E78 +#define GL_TESS_GEN_POINT_MODE 0x8E79 +#define GL_ISOLINES 0x8E7A +#define GL_FRACTIONAL_ODD 0x8E7B +#define GL_FRACTIONAL_EVEN 0x8E7C +#define GL_MAX_PATCH_VERTICES 0x8E7D +#define GL_MAX_TESS_GEN_LEVEL 0x8E7E +#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E7F +#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E80 +#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS 0x8E81 +#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS 0x8E82 +#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS 0x8E83 +#define GL_MAX_TESS_PATCH_COMPONENTS 0x8E84 +#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS 0x8E85 +#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS 0x8E86 +#define GL_TESS_EVALUATION_SHADER 0x8E87 +#define GL_TESS_CONTROL_SHADER 0x8E88 +#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS 0x8E89 +#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS 0x8E8A + +typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERFVPROC) (GLenum pname, const GLfloat* values); +typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERIPROC) (GLenum pname, GLint value); + +#define glPatchParameterfv GLEW_GET_FUN(__glewPatchParameterfv) +#define glPatchParameteri GLEW_GET_FUN(__glewPatchParameteri) + +#define GLEW_ARB_tessellation_shader GLEW_GET_VAR(__GLEW_ARB_tessellation_shader) + +#endif /* GL_ARB_tessellation_shader */ + +/* ------------------------- GL_ARB_texture_barrier ------------------------ */ + +#ifndef GL_ARB_texture_barrier +#define GL_ARB_texture_barrier 1 + +typedef void (GLAPIENTRY * PFNGLTEXTUREBARRIERPROC) (void); + +#define glTextureBarrier GLEW_GET_FUN(__glewTextureBarrier) + +#define GLEW_ARB_texture_barrier GLEW_GET_VAR(__GLEW_ARB_texture_barrier) + +#endif /* GL_ARB_texture_barrier */ + +/* ---------------------- GL_ARB_texture_border_clamp ---------------------- */ + +#ifndef GL_ARB_texture_border_clamp +#define GL_ARB_texture_border_clamp 1 + +#define GL_CLAMP_TO_BORDER_ARB 0x812D + +#define GLEW_ARB_texture_border_clamp GLEW_GET_VAR(__GLEW_ARB_texture_border_clamp) + +#endif /* GL_ARB_texture_border_clamp */ + +/* ---------------------- GL_ARB_texture_buffer_object --------------------- */ + +#ifndef GL_ARB_texture_buffer_object +#define GL_ARB_texture_buffer_object 1 + +#define GL_TEXTURE_BUFFER_ARB 0x8C2A +#define GL_MAX_TEXTURE_BUFFER_SIZE_ARB 0x8C2B +#define GL_TEXTURE_BINDING_BUFFER_ARB 0x8C2C +#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB 0x8C2D +#define GL_TEXTURE_BUFFER_FORMAT_ARB 0x8C2E + +typedef void (GLAPIENTRY * PFNGLTEXBUFFERARBPROC) (GLenum target, GLenum internalformat, GLuint buffer); + +#define glTexBufferARB GLEW_GET_FUN(__glewTexBufferARB) + +#define GLEW_ARB_texture_buffer_object GLEW_GET_VAR(__GLEW_ARB_texture_buffer_object) + +#endif /* GL_ARB_texture_buffer_object */ + +/* ------------------- GL_ARB_texture_buffer_object_rgb32 ------------------ */ + +#ifndef GL_ARB_texture_buffer_object_rgb32 +#define GL_ARB_texture_buffer_object_rgb32 1 + +#define GLEW_ARB_texture_buffer_object_rgb32 GLEW_GET_VAR(__GLEW_ARB_texture_buffer_object_rgb32) + +#endif /* GL_ARB_texture_buffer_object_rgb32 */ + +/* ---------------------- GL_ARB_texture_buffer_range ---------------------- */ + +#ifndef GL_ARB_texture_buffer_range +#define GL_ARB_texture_buffer_range 1 + +#define GL_TEXTURE_BUFFER_OFFSET 0x919D +#define GL_TEXTURE_BUFFER_SIZE 0x919E +#define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT 0x919F + +typedef void (GLAPIENTRY * PFNGLTEXBUFFERRANGEPROC) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); +typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFERRANGEEXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); + +#define glTexBufferRange GLEW_GET_FUN(__glewTexBufferRange) +#define glTextureBufferRangeEXT GLEW_GET_FUN(__glewTextureBufferRangeEXT) + +#define GLEW_ARB_texture_buffer_range GLEW_GET_VAR(__GLEW_ARB_texture_buffer_range) + +#endif /* GL_ARB_texture_buffer_range */ + +/* ----------------------- GL_ARB_texture_compression ---------------------- */ + +#ifndef GL_ARB_texture_compression +#define GL_ARB_texture_compression 1 + +#define GL_COMPRESSED_ALPHA_ARB 0x84E9 +#define GL_COMPRESSED_LUMINANCE_ARB 0x84EA +#define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB +#define GL_COMPRESSED_INTENSITY_ARB 0x84EC +#define GL_COMPRESSED_RGB_ARB 0x84ED +#define GL_COMPRESSED_RGBA_ARB 0x84EE +#define GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF +#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0 +#define GL_TEXTURE_COMPRESSED_ARB 0x86A1 +#define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2 +#define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3 + +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, void *img); + +#define glCompressedTexImage1DARB GLEW_GET_FUN(__glewCompressedTexImage1DARB) +#define glCompressedTexImage2DARB GLEW_GET_FUN(__glewCompressedTexImage2DARB) +#define glCompressedTexImage3DARB GLEW_GET_FUN(__glewCompressedTexImage3DARB) +#define glCompressedTexSubImage1DARB GLEW_GET_FUN(__glewCompressedTexSubImage1DARB) +#define glCompressedTexSubImage2DARB GLEW_GET_FUN(__glewCompressedTexSubImage2DARB) +#define glCompressedTexSubImage3DARB GLEW_GET_FUN(__glewCompressedTexSubImage3DARB) +#define glGetCompressedTexImageARB GLEW_GET_FUN(__glewGetCompressedTexImageARB) + +#define GLEW_ARB_texture_compression GLEW_GET_VAR(__GLEW_ARB_texture_compression) + +#endif /* GL_ARB_texture_compression */ + +/* -------------------- GL_ARB_texture_compression_bptc -------------------- */ + +#ifndef GL_ARB_texture_compression_bptc +#define GL_ARB_texture_compression_bptc 1 + +#define GL_COMPRESSED_RGBA_BPTC_UNORM_ARB 0x8E8C +#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB 0x8E8D +#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB 0x8E8E +#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB 0x8E8F + +#define GLEW_ARB_texture_compression_bptc GLEW_GET_VAR(__GLEW_ARB_texture_compression_bptc) + +#endif /* GL_ARB_texture_compression_bptc */ + +/* -------------------- GL_ARB_texture_compression_rgtc -------------------- */ + +#ifndef GL_ARB_texture_compression_rgtc +#define GL_ARB_texture_compression_rgtc 1 + +#define GL_COMPRESSED_RED_RGTC1 0x8DBB +#define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC +#define GL_COMPRESSED_RG_RGTC2 0x8DBD +#define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE + +#define GLEW_ARB_texture_compression_rgtc GLEW_GET_VAR(__GLEW_ARB_texture_compression_rgtc) + +#endif /* GL_ARB_texture_compression_rgtc */ + +/* ------------------------ GL_ARB_texture_cube_map ------------------------ */ + +#ifndef GL_ARB_texture_cube_map +#define GL_ARB_texture_cube_map 1 + +#define GL_NORMAL_MAP_ARB 0x8511 +#define GL_REFLECTION_MAP_ARB 0x8512 +#define GL_TEXTURE_CUBE_MAP_ARB 0x8513 +#define GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A +#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851C + +#define GLEW_ARB_texture_cube_map GLEW_GET_VAR(__GLEW_ARB_texture_cube_map) + +#endif /* GL_ARB_texture_cube_map */ + +/* --------------------- GL_ARB_texture_cube_map_array --------------------- */ + +#ifndef GL_ARB_texture_cube_map_array +#define GL_ARB_texture_cube_map_array 1 + +#define GL_TEXTURE_CUBE_MAP_ARRAY_ARB 0x9009 +#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB 0x900A +#define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB 0x900B +#define GL_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900C +#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB 0x900D +#define GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900E +#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900F + +#define GLEW_ARB_texture_cube_map_array GLEW_GET_VAR(__GLEW_ARB_texture_cube_map_array) + +#endif /* GL_ARB_texture_cube_map_array */ + +/* ------------------------- GL_ARB_texture_env_add ------------------------ */ + +#ifndef GL_ARB_texture_env_add +#define GL_ARB_texture_env_add 1 + +#define GLEW_ARB_texture_env_add GLEW_GET_VAR(__GLEW_ARB_texture_env_add) + +#endif /* GL_ARB_texture_env_add */ + +/* ----------------------- GL_ARB_texture_env_combine ---------------------- */ + +#ifndef GL_ARB_texture_env_combine +#define GL_ARB_texture_env_combine 1 + +#define GL_SUBTRACT_ARB 0x84E7 +#define GL_COMBINE_ARB 0x8570 +#define GL_COMBINE_RGB_ARB 0x8571 +#define GL_COMBINE_ALPHA_ARB 0x8572 +#define GL_RGB_SCALE_ARB 0x8573 +#define GL_ADD_SIGNED_ARB 0x8574 +#define GL_INTERPOLATE_ARB 0x8575 +#define GL_CONSTANT_ARB 0x8576 +#define GL_PRIMARY_COLOR_ARB 0x8577 +#define GL_PREVIOUS_ARB 0x8578 +#define GL_SOURCE0_RGB_ARB 0x8580 +#define GL_SOURCE1_RGB_ARB 0x8581 +#define GL_SOURCE2_RGB_ARB 0x8582 +#define GL_SOURCE0_ALPHA_ARB 0x8588 +#define GL_SOURCE1_ALPHA_ARB 0x8589 +#define GL_SOURCE2_ALPHA_ARB 0x858A +#define GL_OPERAND0_RGB_ARB 0x8590 +#define GL_OPERAND1_RGB_ARB 0x8591 +#define GL_OPERAND2_RGB_ARB 0x8592 +#define GL_OPERAND0_ALPHA_ARB 0x8598 +#define GL_OPERAND1_ALPHA_ARB 0x8599 +#define GL_OPERAND2_ALPHA_ARB 0x859A + +#define GLEW_ARB_texture_env_combine GLEW_GET_VAR(__GLEW_ARB_texture_env_combine) + +#endif /* GL_ARB_texture_env_combine */ + +/* ---------------------- GL_ARB_texture_env_crossbar ---------------------- */ + +#ifndef GL_ARB_texture_env_crossbar +#define GL_ARB_texture_env_crossbar 1 + +#define GLEW_ARB_texture_env_crossbar GLEW_GET_VAR(__GLEW_ARB_texture_env_crossbar) + +#endif /* GL_ARB_texture_env_crossbar */ + +/* ------------------------ GL_ARB_texture_env_dot3 ------------------------ */ + +#ifndef GL_ARB_texture_env_dot3 +#define GL_ARB_texture_env_dot3 1 + +#define GL_DOT3_RGB_ARB 0x86AE +#define GL_DOT3_RGBA_ARB 0x86AF + +#define GLEW_ARB_texture_env_dot3 GLEW_GET_VAR(__GLEW_ARB_texture_env_dot3) + +#endif /* GL_ARB_texture_env_dot3 */ + +/* ------------------- GL_ARB_texture_filter_anisotropic ------------------- */ + +#ifndef GL_ARB_texture_filter_anisotropic +#define GL_ARB_texture_filter_anisotropic 1 + +#define GL_TEXTURE_MAX_ANISOTROPY 0x84FE +#define GL_MAX_TEXTURE_MAX_ANISOTROPY 0x84FF + +#define GLEW_ARB_texture_filter_anisotropic GLEW_GET_VAR(__GLEW_ARB_texture_filter_anisotropic) + +#endif /* GL_ARB_texture_filter_anisotropic */ + +/* ---------------------- GL_ARB_texture_filter_minmax --------------------- */ + +#ifndef GL_ARB_texture_filter_minmax +#define GL_ARB_texture_filter_minmax 1 + +#define GL_TEXTURE_REDUCTION_MODE_ARB 0x9366 +#define GL_WEIGHTED_AVERAGE_ARB 0x9367 + +#define GLEW_ARB_texture_filter_minmax GLEW_GET_VAR(__GLEW_ARB_texture_filter_minmax) + +#endif /* GL_ARB_texture_filter_minmax */ + +/* -------------------------- GL_ARB_texture_float ------------------------- */ + +#ifndef GL_ARB_texture_float +#define GL_ARB_texture_float 1 + +#define GL_RGBA32F_ARB 0x8814 +#define GL_RGB32F_ARB 0x8815 +#define GL_ALPHA32F_ARB 0x8816 +#define GL_INTENSITY32F_ARB 0x8817 +#define GL_LUMINANCE32F_ARB 0x8818 +#define GL_LUMINANCE_ALPHA32F_ARB 0x8819 +#define GL_RGBA16F_ARB 0x881A +#define GL_RGB16F_ARB 0x881B +#define GL_ALPHA16F_ARB 0x881C +#define GL_INTENSITY16F_ARB 0x881D +#define GL_LUMINANCE16F_ARB 0x881E +#define GL_LUMINANCE_ALPHA16F_ARB 0x881F +#define GL_TEXTURE_RED_TYPE_ARB 0x8C10 +#define GL_TEXTURE_GREEN_TYPE_ARB 0x8C11 +#define GL_TEXTURE_BLUE_TYPE_ARB 0x8C12 +#define GL_TEXTURE_ALPHA_TYPE_ARB 0x8C13 +#define GL_TEXTURE_LUMINANCE_TYPE_ARB 0x8C14 +#define GL_TEXTURE_INTENSITY_TYPE_ARB 0x8C15 +#define GL_TEXTURE_DEPTH_TYPE_ARB 0x8C16 +#define GL_UNSIGNED_NORMALIZED_ARB 0x8C17 + +#define GLEW_ARB_texture_float GLEW_GET_VAR(__GLEW_ARB_texture_float) + +#endif /* GL_ARB_texture_float */ + +/* ------------------------- GL_ARB_texture_gather ------------------------- */ + +#ifndef GL_ARB_texture_gather +#define GL_ARB_texture_gather 1 + +#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5E +#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5F +#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F + +#define GLEW_ARB_texture_gather GLEW_GET_VAR(__GLEW_ARB_texture_gather) + +#endif /* GL_ARB_texture_gather */ + +/* ------------------ GL_ARB_texture_mirror_clamp_to_edge ------------------ */ + +#ifndef GL_ARB_texture_mirror_clamp_to_edge +#define GL_ARB_texture_mirror_clamp_to_edge 1 + +#define GL_MIRROR_CLAMP_TO_EDGE 0x8743 + +#define GLEW_ARB_texture_mirror_clamp_to_edge GLEW_GET_VAR(__GLEW_ARB_texture_mirror_clamp_to_edge) + +#endif /* GL_ARB_texture_mirror_clamp_to_edge */ + +/* --------------------- GL_ARB_texture_mirrored_repeat -------------------- */ + +#ifndef GL_ARB_texture_mirrored_repeat +#define GL_ARB_texture_mirrored_repeat 1 + +#define GL_MIRRORED_REPEAT_ARB 0x8370 + +#define GLEW_ARB_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_ARB_texture_mirrored_repeat) + +#endif /* GL_ARB_texture_mirrored_repeat */ + +/* ----------------------- GL_ARB_texture_multisample ---------------------- */ + +#ifndef GL_ARB_texture_multisample +#define GL_ARB_texture_multisample 1 + +#define GL_SAMPLE_POSITION 0x8E50 +#define GL_SAMPLE_MASK 0x8E51 +#define GL_SAMPLE_MASK_VALUE 0x8E52 +#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59 +#define GL_TEXTURE_2D_MULTISAMPLE 0x9100 +#define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101 +#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102 +#define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103 +#define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104 +#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105 +#define GL_TEXTURE_SAMPLES 0x9106 +#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107 +#define GL_SAMPLER_2D_MULTISAMPLE 0x9108 +#define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109 +#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A +#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B +#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C +#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D +#define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E +#define GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F +#define GL_MAX_INTEGER_SAMPLES 0x9110 + +typedef void (GLAPIENTRY * PFNGLGETMULTISAMPLEFVPROC) (GLenum pname, GLuint index, GLfloat* val); +typedef void (GLAPIENTRY * PFNGLSAMPLEMASKIPROC) (GLuint index, GLbitfield mask); +typedef void (GLAPIENTRY * PFNGLTEXIMAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); +typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); + +#define glGetMultisamplefv GLEW_GET_FUN(__glewGetMultisamplefv) +#define glSampleMaski GLEW_GET_FUN(__glewSampleMaski) +#define glTexImage2DMultisample GLEW_GET_FUN(__glewTexImage2DMultisample) +#define glTexImage3DMultisample GLEW_GET_FUN(__glewTexImage3DMultisample) + +#define GLEW_ARB_texture_multisample GLEW_GET_VAR(__GLEW_ARB_texture_multisample) + +#endif /* GL_ARB_texture_multisample */ + +/* -------------------- GL_ARB_texture_non_power_of_two -------------------- */ + +#ifndef GL_ARB_texture_non_power_of_two +#define GL_ARB_texture_non_power_of_two 1 + +#define GLEW_ARB_texture_non_power_of_two GLEW_GET_VAR(__GLEW_ARB_texture_non_power_of_two) + +#endif /* GL_ARB_texture_non_power_of_two */ + +/* ---------------------- GL_ARB_texture_query_levels ---------------------- */ + +#ifndef GL_ARB_texture_query_levels +#define GL_ARB_texture_query_levels 1 + +#define GLEW_ARB_texture_query_levels GLEW_GET_VAR(__GLEW_ARB_texture_query_levels) + +#endif /* GL_ARB_texture_query_levels */ + +/* ------------------------ GL_ARB_texture_query_lod ----------------------- */ + +#ifndef GL_ARB_texture_query_lod +#define GL_ARB_texture_query_lod 1 + +#define GLEW_ARB_texture_query_lod GLEW_GET_VAR(__GLEW_ARB_texture_query_lod) + +#endif /* GL_ARB_texture_query_lod */ + +/* ------------------------ GL_ARB_texture_rectangle ----------------------- */ + +#ifndef GL_ARB_texture_rectangle +#define GL_ARB_texture_rectangle 1 + +#define GL_TEXTURE_RECTANGLE_ARB 0x84F5 +#define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6 +#define GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84F7 +#define GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84F8 +#define GL_SAMPLER_2D_RECT_ARB 0x8B63 +#define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64 + +#define GLEW_ARB_texture_rectangle GLEW_GET_VAR(__GLEW_ARB_texture_rectangle) + +#endif /* GL_ARB_texture_rectangle */ + +/* --------------------------- GL_ARB_texture_rg --------------------------- */ + +#ifndef GL_ARB_texture_rg +#define GL_ARB_texture_rg 1 + +#define GL_COMPRESSED_RED 0x8225 +#define GL_COMPRESSED_RG 0x8226 +#define GL_RG 0x8227 +#define GL_RG_INTEGER 0x8228 +#define GL_R8 0x8229 +#define GL_R16 0x822A +#define GL_RG8 0x822B +#define GL_RG16 0x822C +#define GL_R16F 0x822D +#define GL_R32F 0x822E +#define GL_RG16F 0x822F +#define GL_RG32F 0x8230 +#define GL_R8I 0x8231 +#define GL_R8UI 0x8232 +#define GL_R16I 0x8233 +#define GL_R16UI 0x8234 +#define GL_R32I 0x8235 +#define GL_R32UI 0x8236 +#define GL_RG8I 0x8237 +#define GL_RG8UI 0x8238 +#define GL_RG16I 0x8239 +#define GL_RG16UI 0x823A +#define GL_RG32I 0x823B +#define GL_RG32UI 0x823C + +#define GLEW_ARB_texture_rg GLEW_GET_VAR(__GLEW_ARB_texture_rg) + +#endif /* GL_ARB_texture_rg */ + +/* ----------------------- GL_ARB_texture_rgb10_a2ui ----------------------- */ + +#ifndef GL_ARB_texture_rgb10_a2ui +#define GL_ARB_texture_rgb10_a2ui 1 + +#define GL_RGB10_A2UI 0x906F + +#define GLEW_ARB_texture_rgb10_a2ui GLEW_GET_VAR(__GLEW_ARB_texture_rgb10_a2ui) + +#endif /* GL_ARB_texture_rgb10_a2ui */ + +/* ------------------------ GL_ARB_texture_stencil8 ------------------------ */ + +#ifndef GL_ARB_texture_stencil8 +#define GL_ARB_texture_stencil8 1 + +#define GL_STENCIL_INDEX 0x1901 +#define GL_STENCIL_INDEX8 0x8D48 + +#define GLEW_ARB_texture_stencil8 GLEW_GET_VAR(__GLEW_ARB_texture_stencil8) + +#endif /* GL_ARB_texture_stencil8 */ + +/* ------------------------- GL_ARB_texture_storage ------------------------ */ + +#ifndef GL_ARB_texture_storage +#define GL_ARB_texture_storage 1 + +#define GL_TEXTURE_IMMUTABLE_FORMAT 0x912F + +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE1DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE2DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); + +#define glTexStorage1D GLEW_GET_FUN(__glewTexStorage1D) +#define glTexStorage2D GLEW_GET_FUN(__glewTexStorage2D) +#define glTexStorage3D GLEW_GET_FUN(__glewTexStorage3D) + +#define GLEW_ARB_texture_storage GLEW_GET_VAR(__GLEW_ARB_texture_storage) + +#endif /* GL_ARB_texture_storage */ + +/* ------------------- GL_ARB_texture_storage_multisample ------------------ */ + +#ifndef GL_ARB_texture_storage_multisample +#define GL_ARB_texture_storage_multisample 1 + +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DMULTISAMPLEEXTPROC) (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DMULTISAMPLEEXTPROC) (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); + +#define glTexStorage2DMultisample GLEW_GET_FUN(__glewTexStorage2DMultisample) +#define glTexStorage3DMultisample GLEW_GET_FUN(__glewTexStorage3DMultisample) +#define glTextureStorage2DMultisampleEXT GLEW_GET_FUN(__glewTextureStorage2DMultisampleEXT) +#define glTextureStorage3DMultisampleEXT GLEW_GET_FUN(__glewTextureStorage3DMultisampleEXT) + +#define GLEW_ARB_texture_storage_multisample GLEW_GET_VAR(__GLEW_ARB_texture_storage_multisample) + +#endif /* GL_ARB_texture_storage_multisample */ + +/* ------------------------- GL_ARB_texture_swizzle ------------------------ */ + +#ifndef GL_ARB_texture_swizzle +#define GL_ARB_texture_swizzle 1 + +#define GL_TEXTURE_SWIZZLE_R 0x8E42 +#define GL_TEXTURE_SWIZZLE_G 0x8E43 +#define GL_TEXTURE_SWIZZLE_B 0x8E44 +#define GL_TEXTURE_SWIZZLE_A 0x8E45 +#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46 + +#define GLEW_ARB_texture_swizzle GLEW_GET_VAR(__GLEW_ARB_texture_swizzle) + +#endif /* GL_ARB_texture_swizzle */ + +/* -------------------------- GL_ARB_texture_view -------------------------- */ + +#ifndef GL_ARB_texture_view +#define GL_ARB_texture_view 1 + +#define GL_TEXTURE_VIEW_MIN_LEVEL 0x82DB +#define GL_TEXTURE_VIEW_NUM_LEVELS 0x82DC +#define GL_TEXTURE_VIEW_MIN_LAYER 0x82DD +#define GL_TEXTURE_VIEW_NUM_LAYERS 0x82DE +#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF + +typedef void (GLAPIENTRY * PFNGLTEXTUREVIEWPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers); + +#define glTextureView GLEW_GET_FUN(__glewTextureView) + +#define GLEW_ARB_texture_view GLEW_GET_VAR(__GLEW_ARB_texture_view) + +#endif /* GL_ARB_texture_view */ + +/* --------------------------- GL_ARB_timer_query -------------------------- */ + +#ifndef GL_ARB_timer_query +#define GL_ARB_timer_query 1 + +#define GL_TIME_ELAPSED 0x88BF +#define GL_TIMESTAMP 0x8E28 + +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VPROC) (GLuint id, GLenum pname, GLint64* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VPROC) (GLuint id, GLenum pname, GLuint64* params); +typedef void (GLAPIENTRY * PFNGLQUERYCOUNTERPROC) (GLuint id, GLenum target); + +#define glGetQueryObjecti64v GLEW_GET_FUN(__glewGetQueryObjecti64v) +#define glGetQueryObjectui64v GLEW_GET_FUN(__glewGetQueryObjectui64v) +#define glQueryCounter GLEW_GET_FUN(__glewQueryCounter) + +#define GLEW_ARB_timer_query GLEW_GET_VAR(__GLEW_ARB_timer_query) + +#endif /* GL_ARB_timer_query */ + +/* ----------------------- GL_ARB_transform_feedback2 ---------------------- */ + +#ifndef GL_ARB_transform_feedback2 +#define GL_ARB_transform_feedback2 1 + +#define GL_TRANSFORM_FEEDBACK 0x8E22 +#define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED 0x8E23 +#define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE 0x8E24 +#define GL_TRANSFORM_FEEDBACK_BINDING 0x8E25 + +typedef void (GLAPIENTRY * PFNGLBINDTRANSFORMFEEDBACKPROC) (GLenum target, GLuint id); +typedef void (GLAPIENTRY * PFNGLDELETETRANSFORMFEEDBACKSPROC) (GLsizei n, const GLuint* ids); +typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKPROC) (GLenum mode, GLuint id); +typedef void (GLAPIENTRY * PFNGLGENTRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint* ids); +typedef GLboolean (GLAPIENTRY * PFNGLISTRANSFORMFEEDBACKPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLPAUSETRANSFORMFEEDBACKPROC) (void); +typedef void (GLAPIENTRY * PFNGLRESUMETRANSFORMFEEDBACKPROC) (void); + +#define glBindTransformFeedback GLEW_GET_FUN(__glewBindTransformFeedback) +#define glDeleteTransformFeedbacks GLEW_GET_FUN(__glewDeleteTransformFeedbacks) +#define glDrawTransformFeedback GLEW_GET_FUN(__glewDrawTransformFeedback) +#define glGenTransformFeedbacks GLEW_GET_FUN(__glewGenTransformFeedbacks) +#define glIsTransformFeedback GLEW_GET_FUN(__glewIsTransformFeedback) +#define glPauseTransformFeedback GLEW_GET_FUN(__glewPauseTransformFeedback) +#define glResumeTransformFeedback GLEW_GET_FUN(__glewResumeTransformFeedback) + +#define GLEW_ARB_transform_feedback2 GLEW_GET_VAR(__GLEW_ARB_transform_feedback2) + +#endif /* GL_ARB_transform_feedback2 */ + +/* ----------------------- GL_ARB_transform_feedback3 ---------------------- */ + +#ifndef GL_ARB_transform_feedback3 +#define GL_ARB_transform_feedback3 1 + +#define GL_MAX_TRANSFORM_FEEDBACK_BUFFERS 0x8E70 +#define GL_MAX_VERTEX_STREAMS 0x8E71 + +typedef void (GLAPIENTRY * PFNGLBEGINQUERYINDEXEDPROC) (GLenum target, GLuint index, GLuint id); +typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC) (GLenum mode, GLuint id, GLuint stream); +typedef void (GLAPIENTRY * PFNGLENDQUERYINDEXEDPROC) (GLenum target, GLuint index); +typedef void (GLAPIENTRY * PFNGLGETQUERYINDEXEDIVPROC) (GLenum target, GLuint index, GLenum pname, GLint* params); + +#define glBeginQueryIndexed GLEW_GET_FUN(__glewBeginQueryIndexed) +#define glDrawTransformFeedbackStream GLEW_GET_FUN(__glewDrawTransformFeedbackStream) +#define glEndQueryIndexed GLEW_GET_FUN(__glewEndQueryIndexed) +#define glGetQueryIndexediv GLEW_GET_FUN(__glewGetQueryIndexediv) + +#define GLEW_ARB_transform_feedback3 GLEW_GET_VAR(__GLEW_ARB_transform_feedback3) + +#endif /* GL_ARB_transform_feedback3 */ + +/* ------------------ GL_ARB_transform_feedback_instanced ------------------ */ + +#ifndef GL_ARB_transform_feedback_instanced +#define GL_ARB_transform_feedback_instanced 1 + +typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC) (GLenum mode, GLuint id, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC) (GLenum mode, GLuint id, GLuint stream, GLsizei primcount); + +#define glDrawTransformFeedbackInstanced GLEW_GET_FUN(__glewDrawTransformFeedbackInstanced) +#define glDrawTransformFeedbackStreamInstanced GLEW_GET_FUN(__glewDrawTransformFeedbackStreamInstanced) + +#define GLEW_ARB_transform_feedback_instanced GLEW_GET_VAR(__GLEW_ARB_transform_feedback_instanced) + +#endif /* GL_ARB_transform_feedback_instanced */ + +/* ---------------- GL_ARB_transform_feedback_overflow_query --------------- */ + +#ifndef GL_ARB_transform_feedback_overflow_query +#define GL_ARB_transform_feedback_overflow_query 1 + +#define GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB 0x82EC +#define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB 0x82ED + +#define GLEW_ARB_transform_feedback_overflow_query GLEW_GET_VAR(__GLEW_ARB_transform_feedback_overflow_query) + +#endif /* GL_ARB_transform_feedback_overflow_query */ + +/* ------------------------ GL_ARB_transpose_matrix ------------------------ */ + +#ifndef GL_ARB_transpose_matrix +#define GL_ARB_transpose_matrix 1 + +#define GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3 +#define GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4 +#define GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5 +#define GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6 + +typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXDARBPROC) (GLdouble m[16]); +typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXFARBPROC) (GLfloat m[16]); +typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXDARBPROC) (GLdouble m[16]); +typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXFARBPROC) (GLfloat m[16]); + +#define glLoadTransposeMatrixdARB GLEW_GET_FUN(__glewLoadTransposeMatrixdARB) +#define glLoadTransposeMatrixfARB GLEW_GET_FUN(__glewLoadTransposeMatrixfARB) +#define glMultTransposeMatrixdARB GLEW_GET_FUN(__glewMultTransposeMatrixdARB) +#define glMultTransposeMatrixfARB GLEW_GET_FUN(__glewMultTransposeMatrixfARB) + +#define GLEW_ARB_transpose_matrix GLEW_GET_VAR(__GLEW_ARB_transpose_matrix) + +#endif /* GL_ARB_transpose_matrix */ + +/* ---------------------- GL_ARB_uniform_buffer_object --------------------- */ + +#ifndef GL_ARB_uniform_buffer_object +#define GL_ARB_uniform_buffer_object 1 + +#define GL_UNIFORM_BUFFER 0x8A11 +#define GL_UNIFORM_BUFFER_BINDING 0x8A28 +#define GL_UNIFORM_BUFFER_START 0x8A29 +#define GL_UNIFORM_BUFFER_SIZE 0x8A2A +#define GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B +#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C +#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D +#define GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E +#define GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F +#define GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30 +#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31 +#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32 +#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33 +#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34 +#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35 +#define GL_ACTIVE_UNIFORM_BLOCKS 0x8A36 +#define GL_UNIFORM_TYPE 0x8A37 +#define GL_UNIFORM_SIZE 0x8A38 +#define GL_UNIFORM_NAME_LENGTH 0x8A39 +#define GL_UNIFORM_BLOCK_INDEX 0x8A3A +#define GL_UNIFORM_OFFSET 0x8A3B +#define GL_UNIFORM_ARRAY_STRIDE 0x8A3C +#define GL_UNIFORM_MATRIX_STRIDE 0x8A3D +#define GL_UNIFORM_IS_ROW_MAJOR 0x8A3E +#define GL_UNIFORM_BLOCK_BINDING 0x8A3F +#define GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40 +#define GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41 +#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42 +#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43 +#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44 +#define GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45 +#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46 +#define GL_INVALID_INDEX 0xFFFFFFFFu + +typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); +typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC) (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName); +typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMBLOCKIVPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMNAMEPROC) (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformName); +typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMSIVPROC) (GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETINTEGERI_VPROC) (GLenum target, GLuint index, GLint* data); +typedef GLuint (GLAPIENTRY * PFNGLGETUNIFORMBLOCKINDEXPROC) (GLuint program, const GLchar* uniformBlockName); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMINDICESPROC) (GLuint program, GLsizei uniformCount, const GLchar* const * uniformNames, GLuint* uniformIndices); +typedef void (GLAPIENTRY * PFNGLUNIFORMBLOCKBINDINGPROC) (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding); + +#define glBindBufferBase GLEW_GET_FUN(__glewBindBufferBase) +#define glBindBufferRange GLEW_GET_FUN(__glewBindBufferRange) +#define glGetActiveUniformBlockName GLEW_GET_FUN(__glewGetActiveUniformBlockName) +#define glGetActiveUniformBlockiv GLEW_GET_FUN(__glewGetActiveUniformBlockiv) +#define glGetActiveUniformName GLEW_GET_FUN(__glewGetActiveUniformName) +#define glGetActiveUniformsiv GLEW_GET_FUN(__glewGetActiveUniformsiv) +#define glGetIntegeri_v GLEW_GET_FUN(__glewGetIntegeri_v) +#define glGetUniformBlockIndex GLEW_GET_FUN(__glewGetUniformBlockIndex) +#define glGetUniformIndices GLEW_GET_FUN(__glewGetUniformIndices) +#define glUniformBlockBinding GLEW_GET_FUN(__glewUniformBlockBinding) + +#define GLEW_ARB_uniform_buffer_object GLEW_GET_VAR(__GLEW_ARB_uniform_buffer_object) + +#endif /* GL_ARB_uniform_buffer_object */ + +/* ------------------------ GL_ARB_vertex_array_bgra ----------------------- */ + +#ifndef GL_ARB_vertex_array_bgra +#define GL_ARB_vertex_array_bgra 1 + +#define GL_BGRA 0x80E1 + +#define GLEW_ARB_vertex_array_bgra GLEW_GET_VAR(__GLEW_ARB_vertex_array_bgra) + +#endif /* GL_ARB_vertex_array_bgra */ + +/* ----------------------- GL_ARB_vertex_array_object ---------------------- */ + +#ifndef GL_ARB_vertex_array_object +#define GL_ARB_vertex_array_object 1 + +#define GL_VERTEX_ARRAY_BINDING 0x85B5 + +typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYPROC) (GLuint array); +typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint* arrays); +typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSPROC) (GLsizei n, GLuint* arrays); +typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYPROC) (GLuint array); + +#define glBindVertexArray GLEW_GET_FUN(__glewBindVertexArray) +#define glDeleteVertexArrays GLEW_GET_FUN(__glewDeleteVertexArrays) +#define glGenVertexArrays GLEW_GET_FUN(__glewGenVertexArrays) +#define glIsVertexArray GLEW_GET_FUN(__glewIsVertexArray) + +#define GLEW_ARB_vertex_array_object GLEW_GET_VAR(__GLEW_ARB_vertex_array_object) + +#endif /* GL_ARB_vertex_array_object */ + +/* ----------------------- GL_ARB_vertex_attrib_64bit ---------------------- */ + +#ifndef GL_ARB_vertex_attrib_64bit +#define GL_ARB_vertex_attrib_64bit 1 + +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLDVPROC) (GLuint index, GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DPROC) (GLuint index, GLdouble x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DPROC) (GLuint index, GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer); + +#define glGetVertexAttribLdv GLEW_GET_FUN(__glewGetVertexAttribLdv) +#define glVertexAttribL1d GLEW_GET_FUN(__glewVertexAttribL1d) +#define glVertexAttribL1dv GLEW_GET_FUN(__glewVertexAttribL1dv) +#define glVertexAttribL2d GLEW_GET_FUN(__glewVertexAttribL2d) +#define glVertexAttribL2dv GLEW_GET_FUN(__glewVertexAttribL2dv) +#define glVertexAttribL3d GLEW_GET_FUN(__glewVertexAttribL3d) +#define glVertexAttribL3dv GLEW_GET_FUN(__glewVertexAttribL3dv) +#define glVertexAttribL4d GLEW_GET_FUN(__glewVertexAttribL4d) +#define glVertexAttribL4dv GLEW_GET_FUN(__glewVertexAttribL4dv) +#define glVertexAttribLPointer GLEW_GET_FUN(__glewVertexAttribLPointer) + +#define GLEW_ARB_vertex_attrib_64bit GLEW_GET_VAR(__GLEW_ARB_vertex_attrib_64bit) + +#endif /* GL_ARB_vertex_attrib_64bit */ + +/* ---------------------- GL_ARB_vertex_attrib_binding --------------------- */ + +#ifndef GL_ARB_vertex_attrib_binding +#define GL_ARB_vertex_attrib_binding 1 + +#define GL_VERTEX_ATTRIB_BINDING 0x82D4 +#define GL_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D5 +#define GL_VERTEX_BINDING_DIVISOR 0x82D6 +#define GL_VERTEX_BINDING_OFFSET 0x82D7 +#define GL_VERTEX_BINDING_STRIDE 0x82D8 +#define GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D9 +#define GL_MAX_VERTEX_ATTRIB_BINDINGS 0x82DA +#define GL_VERTEX_BINDING_BUFFER 0x8F4F + +typedef void (GLAPIENTRY * PFNGLBINDVERTEXBUFFERPROC) (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYBINDVERTEXBUFFEREXTPROC) (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBBINDINGEXTPROC) (GLuint vaobj, GLuint attribindex, GLuint bindingindex); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBIFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBLFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXBINDINGDIVISOREXTPROC) (GLuint vaobj, GLuint bindingindex, GLuint divisor); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBBINDINGPROC) (GLuint attribindex, GLuint bindingindex); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); +typedef void (GLAPIENTRY * PFNGLVERTEXBINDINGDIVISORPROC) (GLuint bindingindex, GLuint divisor); + +#define glBindVertexBuffer GLEW_GET_FUN(__glewBindVertexBuffer) +#define glVertexArrayBindVertexBufferEXT GLEW_GET_FUN(__glewVertexArrayBindVertexBufferEXT) +#define glVertexArrayVertexAttribBindingEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribBindingEXT) +#define glVertexArrayVertexAttribFormatEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribFormatEXT) +#define glVertexArrayVertexAttribIFormatEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribIFormatEXT) +#define glVertexArrayVertexAttribLFormatEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribLFormatEXT) +#define glVertexArrayVertexBindingDivisorEXT GLEW_GET_FUN(__glewVertexArrayVertexBindingDivisorEXT) +#define glVertexAttribBinding GLEW_GET_FUN(__glewVertexAttribBinding) +#define glVertexAttribFormat GLEW_GET_FUN(__glewVertexAttribFormat) +#define glVertexAttribIFormat GLEW_GET_FUN(__glewVertexAttribIFormat) +#define glVertexAttribLFormat GLEW_GET_FUN(__glewVertexAttribLFormat) +#define glVertexBindingDivisor GLEW_GET_FUN(__glewVertexBindingDivisor) + +#define GLEW_ARB_vertex_attrib_binding GLEW_GET_VAR(__GLEW_ARB_vertex_attrib_binding) + +#endif /* GL_ARB_vertex_attrib_binding */ + +/* -------------------------- GL_ARB_vertex_blend -------------------------- */ + +#ifndef GL_ARB_vertex_blend +#define GL_ARB_vertex_blend 1 + +#define GL_MODELVIEW0_ARB 0x1700 +#define GL_MODELVIEW1_ARB 0x850A +#define GL_MAX_VERTEX_UNITS_ARB 0x86A4 +#define GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5 +#define GL_WEIGHT_SUM_UNITY_ARB 0x86A6 +#define GL_VERTEX_BLEND_ARB 0x86A7 +#define GL_CURRENT_WEIGHT_ARB 0x86A8 +#define GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9 +#define GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA +#define GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB +#define GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC +#define GL_WEIGHT_ARRAY_ARB 0x86AD +#define GL_MODELVIEW2_ARB 0x8722 +#define GL_MODELVIEW3_ARB 0x8723 +#define GL_MODELVIEW4_ARB 0x8724 +#define GL_MODELVIEW5_ARB 0x8725 +#define GL_MODELVIEW6_ARB 0x8726 +#define GL_MODELVIEW7_ARB 0x8727 +#define GL_MODELVIEW8_ARB 0x8728 +#define GL_MODELVIEW9_ARB 0x8729 +#define GL_MODELVIEW10_ARB 0x872A +#define GL_MODELVIEW11_ARB 0x872B +#define GL_MODELVIEW12_ARB 0x872C +#define GL_MODELVIEW13_ARB 0x872D +#define GL_MODELVIEW14_ARB 0x872E +#define GL_MODELVIEW15_ARB 0x872F +#define GL_MODELVIEW16_ARB 0x8730 +#define GL_MODELVIEW17_ARB 0x8731 +#define GL_MODELVIEW18_ARB 0x8732 +#define GL_MODELVIEW19_ARB 0x8733 +#define GL_MODELVIEW20_ARB 0x8734 +#define GL_MODELVIEW21_ARB 0x8735 +#define GL_MODELVIEW22_ARB 0x8736 +#define GL_MODELVIEW23_ARB 0x8737 +#define GL_MODELVIEW24_ARB 0x8738 +#define GL_MODELVIEW25_ARB 0x8739 +#define GL_MODELVIEW26_ARB 0x873A +#define GL_MODELVIEW27_ARB 0x873B +#define GL_MODELVIEW28_ARB 0x873C +#define GL_MODELVIEW29_ARB 0x873D +#define GL_MODELVIEW30_ARB 0x873E +#define GL_MODELVIEW31_ARB 0x873F + +typedef void (GLAPIENTRY * PFNGLVERTEXBLENDARBPROC) (GLint count); +typedef void (GLAPIENTRY * PFNGLWEIGHTPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); +typedef void (GLAPIENTRY * PFNGLWEIGHTBVARBPROC) (GLint size, GLbyte *weights); +typedef void (GLAPIENTRY * PFNGLWEIGHTDVARBPROC) (GLint size, GLdouble *weights); +typedef void (GLAPIENTRY * PFNGLWEIGHTFVARBPROC) (GLint size, GLfloat *weights); +typedef void (GLAPIENTRY * PFNGLWEIGHTIVARBPROC) (GLint size, GLint *weights); +typedef void (GLAPIENTRY * PFNGLWEIGHTSVARBPROC) (GLint size, GLshort *weights); +typedef void (GLAPIENTRY * PFNGLWEIGHTUBVARBPROC) (GLint size, GLubyte *weights); +typedef void (GLAPIENTRY * PFNGLWEIGHTUIVARBPROC) (GLint size, GLuint *weights); +typedef void (GLAPIENTRY * PFNGLWEIGHTUSVARBPROC) (GLint size, GLushort *weights); + +#define glVertexBlendARB GLEW_GET_FUN(__glewVertexBlendARB) +#define glWeightPointerARB GLEW_GET_FUN(__glewWeightPointerARB) +#define glWeightbvARB GLEW_GET_FUN(__glewWeightbvARB) +#define glWeightdvARB GLEW_GET_FUN(__glewWeightdvARB) +#define glWeightfvARB GLEW_GET_FUN(__glewWeightfvARB) +#define glWeightivARB GLEW_GET_FUN(__glewWeightivARB) +#define glWeightsvARB GLEW_GET_FUN(__glewWeightsvARB) +#define glWeightubvARB GLEW_GET_FUN(__glewWeightubvARB) +#define glWeightuivARB GLEW_GET_FUN(__glewWeightuivARB) +#define glWeightusvARB GLEW_GET_FUN(__glewWeightusvARB) + +#define GLEW_ARB_vertex_blend GLEW_GET_VAR(__GLEW_ARB_vertex_blend) + +#endif /* GL_ARB_vertex_blend */ + +/* ---------------------- GL_ARB_vertex_buffer_object ---------------------- */ + +#ifndef GL_ARB_vertex_buffer_object +#define GL_ARB_vertex_buffer_object 1 + +#define GL_BUFFER_SIZE_ARB 0x8764 +#define GL_BUFFER_USAGE_ARB 0x8765 +#define GL_ARRAY_BUFFER_ARB 0x8892 +#define GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893 +#define GL_ARRAY_BUFFER_BINDING_ARB 0x8894 +#define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895 +#define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896 +#define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897 +#define GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898 +#define GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899 +#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A +#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B +#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C +#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D +#define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E +#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F +#define GL_READ_ONLY_ARB 0x88B8 +#define GL_WRITE_ONLY_ARB 0x88B9 +#define GL_READ_WRITE_ARB 0x88BA +#define GL_BUFFER_ACCESS_ARB 0x88BB +#define GL_BUFFER_MAPPED_ARB 0x88BC +#define GL_BUFFER_MAP_POINTER_ARB 0x88BD +#define GL_STREAM_DRAW_ARB 0x88E0 +#define GL_STREAM_READ_ARB 0x88E1 +#define GL_STREAM_COPY_ARB 0x88E2 +#define GL_STATIC_DRAW_ARB 0x88E4 +#define GL_STATIC_READ_ARB 0x88E5 +#define GL_STATIC_COPY_ARB 0x88E6 +#define GL_DYNAMIC_DRAW_ARB 0x88E8 +#define GL_DYNAMIC_READ_ARB 0x88E9 +#define GL_DYNAMIC_COPY_ARB 0x88EA + +typedef ptrdiff_t GLintptrARB; +typedef ptrdiff_t GLsizeiptrARB; + +typedef void (GLAPIENTRY * PFNGLBINDBUFFERARBPROC) (GLenum target, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLBUFFERDATAARBPROC) (GLenum target, GLsizeiptrARB size, const void *data, GLenum usage); +typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const void *data); +typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSARBPROC) (GLsizei n, const GLuint* buffers); +typedef void (GLAPIENTRY * PFNGLGENBUFFERSARBPROC) (GLsizei n, GLuint* buffers); +typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVARBPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVARBPROC) (GLenum target, GLenum pname, void** params); +typedef void (GLAPIENTRY * PFNGLGETBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, void *data); +typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERARBPROC) (GLuint buffer); +typedef void * (GLAPIENTRY * PFNGLMAPBUFFERARBPROC) (GLenum target, GLenum access); +typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFERARBPROC) (GLenum target); + +#define glBindBufferARB GLEW_GET_FUN(__glewBindBufferARB) +#define glBufferDataARB GLEW_GET_FUN(__glewBufferDataARB) +#define glBufferSubDataARB GLEW_GET_FUN(__glewBufferSubDataARB) +#define glDeleteBuffersARB GLEW_GET_FUN(__glewDeleteBuffersARB) +#define glGenBuffersARB GLEW_GET_FUN(__glewGenBuffersARB) +#define glGetBufferParameterivARB GLEW_GET_FUN(__glewGetBufferParameterivARB) +#define glGetBufferPointervARB GLEW_GET_FUN(__glewGetBufferPointervARB) +#define glGetBufferSubDataARB GLEW_GET_FUN(__glewGetBufferSubDataARB) +#define glIsBufferARB GLEW_GET_FUN(__glewIsBufferARB) +#define glMapBufferARB GLEW_GET_FUN(__glewMapBufferARB) +#define glUnmapBufferARB GLEW_GET_FUN(__glewUnmapBufferARB) + +#define GLEW_ARB_vertex_buffer_object GLEW_GET_VAR(__GLEW_ARB_vertex_buffer_object) + +#endif /* GL_ARB_vertex_buffer_object */ + +/* ------------------------- GL_ARB_vertex_program ------------------------- */ + +#ifndef GL_ARB_vertex_program +#define GL_ARB_vertex_program 1 + +#define GL_COLOR_SUM_ARB 0x8458 +#define GL_VERTEX_PROGRAM_ARB 0x8620 +#define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622 +#define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623 +#define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624 +#define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625 +#define GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626 +#define GL_PROGRAM_LENGTH_ARB 0x8627 +#define GL_PROGRAM_STRING_ARB 0x8628 +#define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E +#define GL_MAX_PROGRAM_MATRICES_ARB 0x862F +#define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640 +#define GL_CURRENT_MATRIX_ARB 0x8641 +#define GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642 +#define GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643 +#define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645 +#define GL_PROGRAM_ERROR_POSITION_ARB 0x864B +#define GL_PROGRAM_BINDING_ARB 0x8677 +#define GL_MAX_VERTEX_ATTRIBS_ARB 0x8869 +#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A +#define GL_PROGRAM_ERROR_STRING_ARB 0x8874 +#define GL_PROGRAM_FORMAT_ASCII_ARB 0x8875 +#define GL_PROGRAM_FORMAT_ARB 0x8876 +#define GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0 +#define GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1 +#define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2 +#define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3 +#define GL_PROGRAM_TEMPORARIES_ARB 0x88A4 +#define GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5 +#define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6 +#define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7 +#define GL_PROGRAM_PARAMETERS_ARB 0x88A8 +#define GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9 +#define GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA +#define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB +#define GL_PROGRAM_ATTRIBS_ARB 0x88AC +#define GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD +#define GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE +#define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF +#define GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0 +#define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1 +#define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2 +#define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3 +#define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4 +#define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5 +#define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6 +#define GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7 +#define GL_MATRIX0_ARB 0x88C0 +#define GL_MATRIX1_ARB 0x88C1 +#define GL_MATRIX2_ARB 0x88C2 +#define GL_MATRIX3_ARB 0x88C3 +#define GL_MATRIX4_ARB 0x88C4 +#define GL_MATRIX5_ARB 0x88C5 +#define GL_MATRIX6_ARB 0x88C6 +#define GL_MATRIX7_ARB 0x88C7 +#define GL_MATRIX8_ARB 0x88C8 +#define GL_MATRIX9_ARB 0x88C9 +#define GL_MATRIX10_ARB 0x88CA +#define GL_MATRIX11_ARB 0x88CB +#define GL_MATRIX12_ARB 0x88CC +#define GL_MATRIX13_ARB 0x88CD +#define GL_MATRIX14_ARB 0x88CE +#define GL_MATRIX15_ARB 0x88CF +#define GL_MATRIX16_ARB 0x88D0 +#define GL_MATRIX17_ARB 0x88D1 +#define GL_MATRIX18_ARB 0x88D2 +#define GL_MATRIX19_ARB 0x88D3 +#define GL_MATRIX20_ARB 0x88D4 +#define GL_MATRIX21_ARB 0x88D5 +#define GL_MATRIX22_ARB 0x88D6 +#define GL_MATRIX23_ARB 0x88D7 +#define GL_MATRIX24_ARB 0x88D8 +#define GL_MATRIX25_ARB 0x88D9 +#define GL_MATRIX26_ARB 0x88DA +#define GL_MATRIX27_ARB 0x88DB +#define GL_MATRIX28_ARB 0x88DC +#define GL_MATRIX29_ARB 0x88DD +#define GL_MATRIX30_ARB 0x88DE +#define GL_MATRIX31_ARB 0x88DF + +typedef void (GLAPIENTRY * PFNGLBINDPROGRAMARBPROC) (GLenum target, GLuint program); +typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMSARBPROC) (GLsizei n, const GLuint* programs); +typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYARBPROC) (GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYARBPROC) (GLuint index); +typedef void (GLAPIENTRY * PFNGLGENPROGRAMSARBPROC) (GLsizei n, GLuint* programs); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMENVPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMENVPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTRINGARBPROC) (GLenum target, GLenum pname, void *string); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVARBPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVARBPROC) (GLuint index, GLenum pname, void** pointer); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVARBPROC) (GLuint index, GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVARBPROC) (GLuint index, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVARBPROC) (GLuint index, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMARBPROC) (GLuint program); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMSTRINGARBPROC) (GLenum target, GLenum format, GLsizei len, const void *string); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DARBPROC) (GLuint index, GLdouble x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVARBPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FARBPROC) (GLuint index, GLfloat x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVARBPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SARBPROC) (GLuint index, GLshort x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVARBPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DARBPROC) (GLuint index, GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVARBPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FARBPROC) (GLuint index, GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVARBPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SARBPROC) (GLuint index, GLshort x, GLshort y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVARBPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVARBPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVARBPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVARBPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NBVARBPROC) (GLuint index, const GLbyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NIVARBPROC) (GLuint index, const GLint* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NSVARBPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBVARBPROC) (GLuint index, const GLubyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUIVARBPROC) (GLuint index, const GLuint* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUSVARBPROC) (GLuint index, const GLushort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4BVARBPROC) (GLuint index, const GLbyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVARBPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVARBPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4IVARBPROC) (GLuint index, const GLint* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVARBPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVARBPROC) (GLuint index, const GLubyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UIVARBPROC) (GLuint index, const GLuint* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4USVARBPROC) (GLuint index, const GLushort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer); + +#define glBindProgramARB GLEW_GET_FUN(__glewBindProgramARB) +#define glDeleteProgramsARB GLEW_GET_FUN(__glewDeleteProgramsARB) +#define glDisableVertexAttribArrayARB GLEW_GET_FUN(__glewDisableVertexAttribArrayARB) +#define glEnableVertexAttribArrayARB GLEW_GET_FUN(__glewEnableVertexAttribArrayARB) +#define glGenProgramsARB GLEW_GET_FUN(__glewGenProgramsARB) +#define glGetProgramEnvParameterdvARB GLEW_GET_FUN(__glewGetProgramEnvParameterdvARB) +#define glGetProgramEnvParameterfvARB GLEW_GET_FUN(__glewGetProgramEnvParameterfvARB) +#define glGetProgramLocalParameterdvARB GLEW_GET_FUN(__glewGetProgramLocalParameterdvARB) +#define glGetProgramLocalParameterfvARB GLEW_GET_FUN(__glewGetProgramLocalParameterfvARB) +#define glGetProgramStringARB GLEW_GET_FUN(__glewGetProgramStringARB) +#define glGetProgramivARB GLEW_GET_FUN(__glewGetProgramivARB) +#define glGetVertexAttribPointervARB GLEW_GET_FUN(__glewGetVertexAttribPointervARB) +#define glGetVertexAttribdvARB GLEW_GET_FUN(__glewGetVertexAttribdvARB) +#define glGetVertexAttribfvARB GLEW_GET_FUN(__glewGetVertexAttribfvARB) +#define glGetVertexAttribivARB GLEW_GET_FUN(__glewGetVertexAttribivARB) +#define glIsProgramARB GLEW_GET_FUN(__glewIsProgramARB) +#define glProgramEnvParameter4dARB GLEW_GET_FUN(__glewProgramEnvParameter4dARB) +#define glProgramEnvParameter4dvARB GLEW_GET_FUN(__glewProgramEnvParameter4dvARB) +#define glProgramEnvParameter4fARB GLEW_GET_FUN(__glewProgramEnvParameter4fARB) +#define glProgramEnvParameter4fvARB GLEW_GET_FUN(__glewProgramEnvParameter4fvARB) +#define glProgramLocalParameter4dARB GLEW_GET_FUN(__glewProgramLocalParameter4dARB) +#define glProgramLocalParameter4dvARB GLEW_GET_FUN(__glewProgramLocalParameter4dvARB) +#define glProgramLocalParameter4fARB GLEW_GET_FUN(__glewProgramLocalParameter4fARB) +#define glProgramLocalParameter4fvARB GLEW_GET_FUN(__glewProgramLocalParameter4fvARB) +#define glProgramStringARB GLEW_GET_FUN(__glewProgramStringARB) +#define glVertexAttrib1dARB GLEW_GET_FUN(__glewVertexAttrib1dARB) +#define glVertexAttrib1dvARB GLEW_GET_FUN(__glewVertexAttrib1dvARB) +#define glVertexAttrib1fARB GLEW_GET_FUN(__glewVertexAttrib1fARB) +#define glVertexAttrib1fvARB GLEW_GET_FUN(__glewVertexAttrib1fvARB) +#define glVertexAttrib1sARB GLEW_GET_FUN(__glewVertexAttrib1sARB) +#define glVertexAttrib1svARB GLEW_GET_FUN(__glewVertexAttrib1svARB) +#define glVertexAttrib2dARB GLEW_GET_FUN(__glewVertexAttrib2dARB) +#define glVertexAttrib2dvARB GLEW_GET_FUN(__glewVertexAttrib2dvARB) +#define glVertexAttrib2fARB GLEW_GET_FUN(__glewVertexAttrib2fARB) +#define glVertexAttrib2fvARB GLEW_GET_FUN(__glewVertexAttrib2fvARB) +#define glVertexAttrib2sARB GLEW_GET_FUN(__glewVertexAttrib2sARB) +#define glVertexAttrib2svARB GLEW_GET_FUN(__glewVertexAttrib2svARB) +#define glVertexAttrib3dARB GLEW_GET_FUN(__glewVertexAttrib3dARB) +#define glVertexAttrib3dvARB GLEW_GET_FUN(__glewVertexAttrib3dvARB) +#define glVertexAttrib3fARB GLEW_GET_FUN(__glewVertexAttrib3fARB) +#define glVertexAttrib3fvARB GLEW_GET_FUN(__glewVertexAttrib3fvARB) +#define glVertexAttrib3sARB GLEW_GET_FUN(__glewVertexAttrib3sARB) +#define glVertexAttrib3svARB GLEW_GET_FUN(__glewVertexAttrib3svARB) +#define glVertexAttrib4NbvARB GLEW_GET_FUN(__glewVertexAttrib4NbvARB) +#define glVertexAttrib4NivARB GLEW_GET_FUN(__glewVertexAttrib4NivARB) +#define glVertexAttrib4NsvARB GLEW_GET_FUN(__glewVertexAttrib4NsvARB) +#define glVertexAttrib4NubARB GLEW_GET_FUN(__glewVertexAttrib4NubARB) +#define glVertexAttrib4NubvARB GLEW_GET_FUN(__glewVertexAttrib4NubvARB) +#define glVertexAttrib4NuivARB GLEW_GET_FUN(__glewVertexAttrib4NuivARB) +#define glVertexAttrib4NusvARB GLEW_GET_FUN(__glewVertexAttrib4NusvARB) +#define glVertexAttrib4bvARB GLEW_GET_FUN(__glewVertexAttrib4bvARB) +#define glVertexAttrib4dARB GLEW_GET_FUN(__glewVertexAttrib4dARB) +#define glVertexAttrib4dvARB GLEW_GET_FUN(__glewVertexAttrib4dvARB) +#define glVertexAttrib4fARB GLEW_GET_FUN(__glewVertexAttrib4fARB) +#define glVertexAttrib4fvARB GLEW_GET_FUN(__glewVertexAttrib4fvARB) +#define glVertexAttrib4ivARB GLEW_GET_FUN(__glewVertexAttrib4ivARB) +#define glVertexAttrib4sARB GLEW_GET_FUN(__glewVertexAttrib4sARB) +#define glVertexAttrib4svARB GLEW_GET_FUN(__glewVertexAttrib4svARB) +#define glVertexAttrib4ubvARB GLEW_GET_FUN(__glewVertexAttrib4ubvARB) +#define glVertexAttrib4uivARB GLEW_GET_FUN(__glewVertexAttrib4uivARB) +#define glVertexAttrib4usvARB GLEW_GET_FUN(__glewVertexAttrib4usvARB) +#define glVertexAttribPointerARB GLEW_GET_FUN(__glewVertexAttribPointerARB) + +#define GLEW_ARB_vertex_program GLEW_GET_VAR(__GLEW_ARB_vertex_program) + +#endif /* GL_ARB_vertex_program */ + +/* -------------------------- GL_ARB_vertex_shader ------------------------- */ + +#ifndef GL_ARB_vertex_shader +#define GL_ARB_vertex_shader 1 + +#define GL_VERTEX_SHADER_ARB 0x8B31 +#define GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB 0x8B4A +#define GL_MAX_VARYING_FLOATS_ARB 0x8B4B +#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C +#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB 0x8B4D +#define GL_OBJECT_ACTIVE_ATTRIBUTES_ARB 0x8B89 +#define GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB 0x8B8A + +typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONARBPROC) (GLhandleARB programObj, GLuint index, const GLcharARB* name); +typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name); +typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB* name); + +#define glBindAttribLocationARB GLEW_GET_FUN(__glewBindAttribLocationARB) +#define glGetActiveAttribARB GLEW_GET_FUN(__glewGetActiveAttribARB) +#define glGetAttribLocationARB GLEW_GET_FUN(__glewGetAttribLocationARB) + +#define GLEW_ARB_vertex_shader GLEW_GET_VAR(__GLEW_ARB_vertex_shader) + +#endif /* GL_ARB_vertex_shader */ + +/* ------------------- GL_ARB_vertex_type_10f_11f_11f_rev ------------------ */ + +#ifndef GL_ARB_vertex_type_10f_11f_11f_rev +#define GL_ARB_vertex_type_10f_11f_11f_rev 1 + +#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B + +#define GLEW_ARB_vertex_type_10f_11f_11f_rev GLEW_GET_VAR(__GLEW_ARB_vertex_type_10f_11f_11f_rev) + +#endif /* GL_ARB_vertex_type_10f_11f_11f_rev */ + +/* ------------------- GL_ARB_vertex_type_2_10_10_10_rev ------------------- */ + +#ifndef GL_ARB_vertex_type_2_10_10_10_rev +#define GL_ARB_vertex_type_2_10_10_10_rev 1 + +#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 +#define GL_INT_2_10_10_10_REV 0x8D9F + +typedef void (GLAPIENTRY * PFNGLCOLORP3UIPROC) (GLenum type, GLuint color); +typedef void (GLAPIENTRY * PFNGLCOLORP3UIVPROC) (GLenum type, const GLuint* color); +typedef void (GLAPIENTRY * PFNGLCOLORP4UIPROC) (GLenum type, GLuint color); +typedef void (GLAPIENTRY * PFNGLCOLORP4UIVPROC) (GLenum type, const GLuint* color); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP1UIPROC) (GLenum texture, GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP1UIVPROC) (GLenum texture, GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP2UIPROC) (GLenum texture, GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP2UIVPROC) (GLenum texture, GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP3UIPROC) (GLenum texture, GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP3UIVPROC) (GLenum texture, GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP4UIPROC) (GLenum texture, GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP4UIVPROC) (GLenum texture, GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLNORMALP3UIPROC) (GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLNORMALP3UIVPROC) (GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORP3UIPROC) (GLenum type, GLuint color); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORP3UIVPROC) (GLenum type, const GLuint* color); +typedef void (GLAPIENTRY * PFNGLTEXCOORDP1UIPROC) (GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLTEXCOORDP1UIVPROC) (GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLTEXCOORDP2UIPROC) (GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLTEXCOORDP2UIVPROC) (GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLTEXCOORDP3UIPROC) (GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLTEXCOORDP3UIVPROC) (GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLTEXCOORDP4UIPROC) (GLenum type, GLuint coords); +typedef void (GLAPIENTRY * PFNGLTEXCOORDP4UIVPROC) (GLenum type, const GLuint* coords); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP1UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP1UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP2UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP2UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP3UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP3UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP4UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP4UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLVERTEXP2UIPROC) (GLenum type, GLuint value); +typedef void (GLAPIENTRY * PFNGLVERTEXP2UIVPROC) (GLenum type, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLVERTEXP3UIPROC) (GLenum type, GLuint value); +typedef void (GLAPIENTRY * PFNGLVERTEXP3UIVPROC) (GLenum type, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLVERTEXP4UIPROC) (GLenum type, GLuint value); +typedef void (GLAPIENTRY * PFNGLVERTEXP4UIVPROC) (GLenum type, const GLuint* value); + +#define glColorP3ui GLEW_GET_FUN(__glewColorP3ui) +#define glColorP3uiv GLEW_GET_FUN(__glewColorP3uiv) +#define glColorP4ui GLEW_GET_FUN(__glewColorP4ui) +#define glColorP4uiv GLEW_GET_FUN(__glewColorP4uiv) +#define glMultiTexCoordP1ui GLEW_GET_FUN(__glewMultiTexCoordP1ui) +#define glMultiTexCoordP1uiv GLEW_GET_FUN(__glewMultiTexCoordP1uiv) +#define glMultiTexCoordP2ui GLEW_GET_FUN(__glewMultiTexCoordP2ui) +#define glMultiTexCoordP2uiv GLEW_GET_FUN(__glewMultiTexCoordP2uiv) +#define glMultiTexCoordP3ui GLEW_GET_FUN(__glewMultiTexCoordP3ui) +#define glMultiTexCoordP3uiv GLEW_GET_FUN(__glewMultiTexCoordP3uiv) +#define glMultiTexCoordP4ui GLEW_GET_FUN(__glewMultiTexCoordP4ui) +#define glMultiTexCoordP4uiv GLEW_GET_FUN(__glewMultiTexCoordP4uiv) +#define glNormalP3ui GLEW_GET_FUN(__glewNormalP3ui) +#define glNormalP3uiv GLEW_GET_FUN(__glewNormalP3uiv) +#define glSecondaryColorP3ui GLEW_GET_FUN(__glewSecondaryColorP3ui) +#define glSecondaryColorP3uiv GLEW_GET_FUN(__glewSecondaryColorP3uiv) +#define glTexCoordP1ui GLEW_GET_FUN(__glewTexCoordP1ui) +#define glTexCoordP1uiv GLEW_GET_FUN(__glewTexCoordP1uiv) +#define glTexCoordP2ui GLEW_GET_FUN(__glewTexCoordP2ui) +#define glTexCoordP2uiv GLEW_GET_FUN(__glewTexCoordP2uiv) +#define glTexCoordP3ui GLEW_GET_FUN(__glewTexCoordP3ui) +#define glTexCoordP3uiv GLEW_GET_FUN(__glewTexCoordP3uiv) +#define glTexCoordP4ui GLEW_GET_FUN(__glewTexCoordP4ui) +#define glTexCoordP4uiv GLEW_GET_FUN(__glewTexCoordP4uiv) +#define glVertexAttribP1ui GLEW_GET_FUN(__glewVertexAttribP1ui) +#define glVertexAttribP1uiv GLEW_GET_FUN(__glewVertexAttribP1uiv) +#define glVertexAttribP2ui GLEW_GET_FUN(__glewVertexAttribP2ui) +#define glVertexAttribP2uiv GLEW_GET_FUN(__glewVertexAttribP2uiv) +#define glVertexAttribP3ui GLEW_GET_FUN(__glewVertexAttribP3ui) +#define glVertexAttribP3uiv GLEW_GET_FUN(__glewVertexAttribP3uiv) +#define glVertexAttribP4ui GLEW_GET_FUN(__glewVertexAttribP4ui) +#define glVertexAttribP4uiv GLEW_GET_FUN(__glewVertexAttribP4uiv) +#define glVertexP2ui GLEW_GET_FUN(__glewVertexP2ui) +#define glVertexP2uiv GLEW_GET_FUN(__glewVertexP2uiv) +#define glVertexP3ui GLEW_GET_FUN(__glewVertexP3ui) +#define glVertexP3uiv GLEW_GET_FUN(__glewVertexP3uiv) +#define glVertexP4ui GLEW_GET_FUN(__glewVertexP4ui) +#define glVertexP4uiv GLEW_GET_FUN(__glewVertexP4uiv) + +#define GLEW_ARB_vertex_type_2_10_10_10_rev GLEW_GET_VAR(__GLEW_ARB_vertex_type_2_10_10_10_rev) + +#endif /* GL_ARB_vertex_type_2_10_10_10_rev */ + +/* ------------------------- GL_ARB_viewport_array ------------------------- */ + +#ifndef GL_ARB_viewport_array +#define GL_ARB_viewport_array 1 + +#define GL_DEPTH_RANGE 0x0B70 +#define GL_VIEWPORT 0x0BA2 +#define GL_SCISSOR_BOX 0x0C10 +#define GL_SCISSOR_TEST 0x0C11 +#define GL_MAX_VIEWPORTS 0x825B +#define GL_VIEWPORT_SUBPIXEL_BITS 0x825C +#define GL_VIEWPORT_BOUNDS_RANGE 0x825D +#define GL_LAYER_PROVOKING_VERTEX 0x825E +#define GL_VIEWPORT_INDEX_PROVOKING_VERTEX 0x825F +#define GL_UNDEFINED_VERTEX 0x8260 +#define GL_FIRST_VERTEX_CONVENTION 0x8E4D +#define GL_LAST_VERTEX_CONVENTION 0x8E4E +#define GL_PROVOKING_VERTEX 0x8E4F + +typedef void (GLAPIENTRY * PFNGLDEPTHRANGEARRAYVPROC) (GLuint first, GLsizei count, const GLclampd * v); +typedef void (GLAPIENTRY * PFNGLDEPTHRANGEINDEXEDPROC) (GLuint index, GLclampd n, GLclampd f); +typedef void (GLAPIENTRY * PFNGLGETDOUBLEI_VPROC) (GLenum target, GLuint index, GLdouble* data); +typedef void (GLAPIENTRY * PFNGLGETFLOATI_VPROC) (GLenum target, GLuint index, GLfloat* data); +typedef void (GLAPIENTRY * PFNGLSCISSORARRAYVPROC) (GLuint first, GLsizei count, const GLint * v); +typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDPROC) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDVPROC) (GLuint index, const GLint * v); +typedef void (GLAPIENTRY * PFNGLVIEWPORTARRAYVPROC) (GLuint first, GLsizei count, const GLfloat * v); +typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h); +typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFVPROC) (GLuint index, const GLfloat * v); + +#define glDepthRangeArrayv GLEW_GET_FUN(__glewDepthRangeArrayv) +#define glDepthRangeIndexed GLEW_GET_FUN(__glewDepthRangeIndexed) +#define glGetDoublei_v GLEW_GET_FUN(__glewGetDoublei_v) +#define glGetFloati_v GLEW_GET_FUN(__glewGetFloati_v) +#define glScissorArrayv GLEW_GET_FUN(__glewScissorArrayv) +#define glScissorIndexed GLEW_GET_FUN(__glewScissorIndexed) +#define glScissorIndexedv GLEW_GET_FUN(__glewScissorIndexedv) +#define glViewportArrayv GLEW_GET_FUN(__glewViewportArrayv) +#define glViewportIndexedf GLEW_GET_FUN(__glewViewportIndexedf) +#define glViewportIndexedfv GLEW_GET_FUN(__glewViewportIndexedfv) + +#define GLEW_ARB_viewport_array GLEW_GET_VAR(__GLEW_ARB_viewport_array) + +#endif /* GL_ARB_viewport_array */ + +/* --------------------------- GL_ARB_window_pos --------------------------- */ + +#ifndef GL_ARB_window_pos +#define GL_ARB_window_pos 1 + +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DARBPROC) (GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVARBPROC) (const GLdouble* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FARBPROC) (GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVARBPROC) (const GLfloat* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IARBPROC) (GLint x, GLint y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVARBPROC) (const GLint* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SARBPROC) (GLshort x, GLshort y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVARBPROC) (const GLshort* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DARBPROC) (GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVARBPROC) (const GLdouble* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FARBPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVARBPROC) (const GLfloat* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IARBPROC) (GLint x, GLint y, GLint z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVARBPROC) (const GLint* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SARBPROC) (GLshort x, GLshort y, GLshort z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVARBPROC) (const GLshort* p); + +#define glWindowPos2dARB GLEW_GET_FUN(__glewWindowPos2dARB) +#define glWindowPos2dvARB GLEW_GET_FUN(__glewWindowPos2dvARB) +#define glWindowPos2fARB GLEW_GET_FUN(__glewWindowPos2fARB) +#define glWindowPos2fvARB GLEW_GET_FUN(__glewWindowPos2fvARB) +#define glWindowPos2iARB GLEW_GET_FUN(__glewWindowPos2iARB) +#define glWindowPos2ivARB GLEW_GET_FUN(__glewWindowPos2ivARB) +#define glWindowPos2sARB GLEW_GET_FUN(__glewWindowPos2sARB) +#define glWindowPos2svARB GLEW_GET_FUN(__glewWindowPos2svARB) +#define glWindowPos3dARB GLEW_GET_FUN(__glewWindowPos3dARB) +#define glWindowPos3dvARB GLEW_GET_FUN(__glewWindowPos3dvARB) +#define glWindowPos3fARB GLEW_GET_FUN(__glewWindowPos3fARB) +#define glWindowPos3fvARB GLEW_GET_FUN(__glewWindowPos3fvARB) +#define glWindowPos3iARB GLEW_GET_FUN(__glewWindowPos3iARB) +#define glWindowPos3ivARB GLEW_GET_FUN(__glewWindowPos3ivARB) +#define glWindowPos3sARB GLEW_GET_FUN(__glewWindowPos3sARB) +#define glWindowPos3svARB GLEW_GET_FUN(__glewWindowPos3svARB) + +#define GLEW_ARB_window_pos GLEW_GET_VAR(__GLEW_ARB_window_pos) + +#endif /* GL_ARB_window_pos */ + +/* ----------------------- GL_ARM_mali_program_binary ---------------------- */ + +#ifndef GL_ARM_mali_program_binary +#define GL_ARM_mali_program_binary 1 + +#define GL_MALI_PROGRAM_BINARY_ARM 0x8F61 + +#define GLEW_ARM_mali_program_binary GLEW_GET_VAR(__GLEW_ARM_mali_program_binary) + +#endif /* GL_ARM_mali_program_binary */ + +/* ----------------------- GL_ARM_mali_shader_binary ----------------------- */ + +#ifndef GL_ARM_mali_shader_binary +#define GL_ARM_mali_shader_binary 1 + +#define GL_MALI_SHADER_BINARY_ARM 0x8F60 + +#define GLEW_ARM_mali_shader_binary GLEW_GET_VAR(__GLEW_ARM_mali_shader_binary) + +#endif /* GL_ARM_mali_shader_binary */ + +/* ------------------------------ GL_ARM_rgba8 ----------------------------- */ + +#ifndef GL_ARM_rgba8 +#define GL_ARM_rgba8 1 + +#define GL_RGBA8_OES 0x8058 + +#define GLEW_ARM_rgba8 GLEW_GET_VAR(__GLEW_ARM_rgba8) + +#endif /* GL_ARM_rgba8 */ + +/* -------------------- GL_ARM_shader_framebuffer_fetch -------------------- */ + +#ifndef GL_ARM_shader_framebuffer_fetch +#define GL_ARM_shader_framebuffer_fetch 1 + +#define GL_FETCH_PER_SAMPLE_ARM 0x8F65 +#define GL_FRAGMENT_SHADER_FRAMEBUFFER_FETCH_MRT_ARM 0x8F66 + +#define GLEW_ARM_shader_framebuffer_fetch GLEW_GET_VAR(__GLEW_ARM_shader_framebuffer_fetch) + +#endif /* GL_ARM_shader_framebuffer_fetch */ + +/* ------------- GL_ARM_shader_framebuffer_fetch_depth_stencil ------------- */ + +#ifndef GL_ARM_shader_framebuffer_fetch_depth_stencil +#define GL_ARM_shader_framebuffer_fetch_depth_stencil 1 + +#define GLEW_ARM_shader_framebuffer_fetch_depth_stencil GLEW_GET_VAR(__GLEW_ARM_shader_framebuffer_fetch_depth_stencil) + +#endif /* GL_ARM_shader_framebuffer_fetch_depth_stencil */ + +/* ---------------- GL_ARM_texture_unnormalized_coordinates ---------------- */ + +#ifndef GL_ARM_texture_unnormalized_coordinates +#define GL_ARM_texture_unnormalized_coordinates 1 + +#define GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM 0x8F6A + +#define GLEW_ARM_texture_unnormalized_coordinates GLEW_GET_VAR(__GLEW_ARM_texture_unnormalized_coordinates) + +#endif /* GL_ARM_texture_unnormalized_coordinates */ + +/* ------------------------- GL_ATIX_point_sprites ------------------------- */ + +#ifndef GL_ATIX_point_sprites +#define GL_ATIX_point_sprites 1 + +#define GL_TEXTURE_POINT_MODE_ATIX 0x60B0 +#define GL_TEXTURE_POINT_ONE_COORD_ATIX 0x60B1 +#define GL_TEXTURE_POINT_SPRITE_ATIX 0x60B2 +#define GL_POINT_SPRITE_CULL_MODE_ATIX 0x60B3 +#define GL_POINT_SPRITE_CULL_CENTER_ATIX 0x60B4 +#define GL_POINT_SPRITE_CULL_CLIP_ATIX 0x60B5 + +#define GLEW_ATIX_point_sprites GLEW_GET_VAR(__GLEW_ATIX_point_sprites) + +#endif /* GL_ATIX_point_sprites */ + +/* ---------------------- GL_ATIX_texture_env_combine3 --------------------- */ + +#ifndef GL_ATIX_texture_env_combine3 +#define GL_ATIX_texture_env_combine3 1 + +#define GL_MODULATE_ADD_ATIX 0x8744 +#define GL_MODULATE_SIGNED_ADD_ATIX 0x8745 +#define GL_MODULATE_SUBTRACT_ATIX 0x8746 + +#define GLEW_ATIX_texture_env_combine3 GLEW_GET_VAR(__GLEW_ATIX_texture_env_combine3) + +#endif /* GL_ATIX_texture_env_combine3 */ + +/* ----------------------- GL_ATIX_texture_env_route ----------------------- */ + +#ifndef GL_ATIX_texture_env_route +#define GL_ATIX_texture_env_route 1 + +#define GL_SECONDARY_COLOR_ATIX 0x8747 +#define GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748 +#define GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749 + +#define GLEW_ATIX_texture_env_route GLEW_GET_VAR(__GLEW_ATIX_texture_env_route) + +#endif /* GL_ATIX_texture_env_route */ + +/* ---------------- GL_ATIX_vertex_shader_output_point_size ---------------- */ + +#ifndef GL_ATIX_vertex_shader_output_point_size +#define GL_ATIX_vertex_shader_output_point_size 1 + +#define GL_OUTPUT_POINT_SIZE_ATIX 0x610E + +#define GLEW_ATIX_vertex_shader_output_point_size GLEW_GET_VAR(__GLEW_ATIX_vertex_shader_output_point_size) + +#endif /* GL_ATIX_vertex_shader_output_point_size */ + +/* -------------------------- GL_ATI_draw_buffers -------------------------- */ + +#ifndef GL_ATI_draw_buffers +#define GL_ATI_draw_buffers 1 + +#define GL_MAX_DRAW_BUFFERS_ATI 0x8824 +#define GL_DRAW_BUFFER0_ATI 0x8825 +#define GL_DRAW_BUFFER1_ATI 0x8826 +#define GL_DRAW_BUFFER2_ATI 0x8827 +#define GL_DRAW_BUFFER3_ATI 0x8828 +#define GL_DRAW_BUFFER4_ATI 0x8829 +#define GL_DRAW_BUFFER5_ATI 0x882A +#define GL_DRAW_BUFFER6_ATI 0x882B +#define GL_DRAW_BUFFER7_ATI 0x882C +#define GL_DRAW_BUFFER8_ATI 0x882D +#define GL_DRAW_BUFFER9_ATI 0x882E +#define GL_DRAW_BUFFER10_ATI 0x882F +#define GL_DRAW_BUFFER11_ATI 0x8830 +#define GL_DRAW_BUFFER12_ATI 0x8831 +#define GL_DRAW_BUFFER13_ATI 0x8832 +#define GL_DRAW_BUFFER14_ATI 0x8833 +#define GL_DRAW_BUFFER15_ATI 0x8834 + +typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSATIPROC) (GLsizei n, const GLenum* bufs); + +#define glDrawBuffersATI GLEW_GET_FUN(__glewDrawBuffersATI) + +#define GLEW_ATI_draw_buffers GLEW_GET_VAR(__GLEW_ATI_draw_buffers) + +#endif /* GL_ATI_draw_buffers */ + +/* -------------------------- GL_ATI_element_array ------------------------- */ + +#ifndef GL_ATI_element_array +#define GL_ATI_element_array 1 + +#define GL_ELEMENT_ARRAY_ATI 0x8768 +#define GL_ELEMENT_ARRAY_TYPE_ATI 0x8769 +#define GL_ELEMENT_ARRAY_POINTER_ATI 0x876A + +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTARRAYATIPROC) (GLenum mode, GLsizei count); +typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTARRAYATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count); +typedef void (GLAPIENTRY * PFNGLELEMENTPOINTERATIPROC) (GLenum type, const void *pointer); + +#define glDrawElementArrayATI GLEW_GET_FUN(__glewDrawElementArrayATI) +#define glDrawRangeElementArrayATI GLEW_GET_FUN(__glewDrawRangeElementArrayATI) +#define glElementPointerATI GLEW_GET_FUN(__glewElementPointerATI) + +#define GLEW_ATI_element_array GLEW_GET_VAR(__GLEW_ATI_element_array) + +#endif /* GL_ATI_element_array */ + +/* ------------------------- GL_ATI_envmap_bumpmap ------------------------- */ + +#ifndef GL_ATI_envmap_bumpmap +#define GL_ATI_envmap_bumpmap 1 + +#define GL_BUMP_ROT_MATRIX_ATI 0x8775 +#define GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776 +#define GL_BUMP_NUM_TEX_UNITS_ATI 0x8777 +#define GL_BUMP_TEX_UNITS_ATI 0x8778 +#define GL_DUDV_ATI 0x8779 +#define GL_DU8DV8_ATI 0x877A +#define GL_BUMP_ENVMAP_ATI 0x877B +#define GL_BUMP_TARGET_ATI 0x877C + +typedef void (GLAPIENTRY * PFNGLGETTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param); +typedef void (GLAPIENTRY * PFNGLGETTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param); +typedef void (GLAPIENTRY * PFNGLTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param); +typedef void (GLAPIENTRY * PFNGLTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param); + +#define glGetTexBumpParameterfvATI GLEW_GET_FUN(__glewGetTexBumpParameterfvATI) +#define glGetTexBumpParameterivATI GLEW_GET_FUN(__glewGetTexBumpParameterivATI) +#define glTexBumpParameterfvATI GLEW_GET_FUN(__glewTexBumpParameterfvATI) +#define glTexBumpParameterivATI GLEW_GET_FUN(__glewTexBumpParameterivATI) + +#define GLEW_ATI_envmap_bumpmap GLEW_GET_VAR(__GLEW_ATI_envmap_bumpmap) + +#endif /* GL_ATI_envmap_bumpmap */ + +/* ------------------------- GL_ATI_fragment_shader ------------------------ */ + +#ifndef GL_ATI_fragment_shader +#define GL_ATI_fragment_shader 1 + +#define GL_2X_BIT_ATI 0x00000001 +#define GL_RED_BIT_ATI 0x00000001 +#define GL_4X_BIT_ATI 0x00000002 +#define GL_COMP_BIT_ATI 0x00000002 +#define GL_GREEN_BIT_ATI 0x00000002 +#define GL_8X_BIT_ATI 0x00000004 +#define GL_BLUE_BIT_ATI 0x00000004 +#define GL_NEGATE_BIT_ATI 0x00000004 +#define GL_BIAS_BIT_ATI 0x00000008 +#define GL_HALF_BIT_ATI 0x00000008 +#define GL_QUARTER_BIT_ATI 0x00000010 +#define GL_EIGHTH_BIT_ATI 0x00000020 +#define GL_SATURATE_BIT_ATI 0x00000040 +#define GL_FRAGMENT_SHADER_ATI 0x8920 +#define GL_REG_0_ATI 0x8921 +#define GL_REG_1_ATI 0x8922 +#define GL_REG_2_ATI 0x8923 +#define GL_REG_3_ATI 0x8924 +#define GL_REG_4_ATI 0x8925 +#define GL_REG_5_ATI 0x8926 +#define GL_CON_0_ATI 0x8941 +#define GL_CON_1_ATI 0x8942 +#define GL_CON_2_ATI 0x8943 +#define GL_CON_3_ATI 0x8944 +#define GL_CON_4_ATI 0x8945 +#define GL_CON_5_ATI 0x8946 +#define GL_CON_6_ATI 0x8947 +#define GL_CON_7_ATI 0x8948 +#define GL_MOV_ATI 0x8961 +#define GL_ADD_ATI 0x8963 +#define GL_MUL_ATI 0x8964 +#define GL_SUB_ATI 0x8965 +#define GL_DOT3_ATI 0x8966 +#define GL_DOT4_ATI 0x8967 +#define GL_MAD_ATI 0x8968 +#define GL_LERP_ATI 0x8969 +#define GL_CND_ATI 0x896A +#define GL_CND0_ATI 0x896B +#define GL_DOT2_ADD_ATI 0x896C +#define GL_SECONDARY_INTERPOLATOR_ATI 0x896D +#define GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E +#define GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F +#define GL_NUM_PASSES_ATI 0x8970 +#define GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971 +#define GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972 +#define GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973 +#define GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974 +#define GL_COLOR_ALPHA_PAIRING_ATI 0x8975 +#define GL_SWIZZLE_STR_ATI 0x8976 +#define GL_SWIZZLE_STQ_ATI 0x8977 +#define GL_SWIZZLE_STR_DR_ATI 0x8978 +#define GL_SWIZZLE_STQ_DQ_ATI 0x8979 +#define GL_SWIZZLE_STRQ_ATI 0x897A +#define GL_SWIZZLE_STRQ_DQ_ATI 0x897B + +typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); +typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); +typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); +typedef void (GLAPIENTRY * PFNGLBEGINFRAGMENTSHADERATIPROC) (void); +typedef void (GLAPIENTRY * PFNGLBINDFRAGMENTSHADERATIPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); +typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); +typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); +typedef void (GLAPIENTRY * PFNGLDELETEFRAGMENTSHADERATIPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLENDFRAGMENTSHADERATIPROC) (void); +typedef GLuint (GLAPIENTRY * PFNGLGENFRAGMENTSHADERSATIPROC) (GLuint range); +typedef void (GLAPIENTRY * PFNGLPASSTEXCOORDATIPROC) (GLuint dst, GLuint coord, GLenum swizzle); +typedef void (GLAPIENTRY * PFNGLSAMPLEMAPATIPROC) (GLuint dst, GLuint interp, GLenum swizzle); +typedef void (GLAPIENTRY * PFNGLSETFRAGMENTSHADERCONSTANTATIPROC) (GLuint dst, const GLfloat* value); + +#define glAlphaFragmentOp1ATI GLEW_GET_FUN(__glewAlphaFragmentOp1ATI) +#define glAlphaFragmentOp2ATI GLEW_GET_FUN(__glewAlphaFragmentOp2ATI) +#define glAlphaFragmentOp3ATI GLEW_GET_FUN(__glewAlphaFragmentOp3ATI) +#define glBeginFragmentShaderATI GLEW_GET_FUN(__glewBeginFragmentShaderATI) +#define glBindFragmentShaderATI GLEW_GET_FUN(__glewBindFragmentShaderATI) +#define glColorFragmentOp1ATI GLEW_GET_FUN(__glewColorFragmentOp1ATI) +#define glColorFragmentOp2ATI GLEW_GET_FUN(__glewColorFragmentOp2ATI) +#define glColorFragmentOp3ATI GLEW_GET_FUN(__glewColorFragmentOp3ATI) +#define glDeleteFragmentShaderATI GLEW_GET_FUN(__glewDeleteFragmentShaderATI) +#define glEndFragmentShaderATI GLEW_GET_FUN(__glewEndFragmentShaderATI) +#define glGenFragmentShadersATI GLEW_GET_FUN(__glewGenFragmentShadersATI) +#define glPassTexCoordATI GLEW_GET_FUN(__glewPassTexCoordATI) +#define glSampleMapATI GLEW_GET_FUN(__glewSampleMapATI) +#define glSetFragmentShaderConstantATI GLEW_GET_FUN(__glewSetFragmentShaderConstantATI) + +#define GLEW_ATI_fragment_shader GLEW_GET_VAR(__GLEW_ATI_fragment_shader) + +#endif /* GL_ATI_fragment_shader */ + +/* ------------------------ GL_ATI_map_object_buffer ----------------------- */ + +#ifndef GL_ATI_map_object_buffer +#define GL_ATI_map_object_buffer 1 + +typedef void * (GLAPIENTRY * PFNGLMAPOBJECTBUFFERATIPROC) (GLuint buffer); +typedef void (GLAPIENTRY * PFNGLUNMAPOBJECTBUFFERATIPROC) (GLuint buffer); + +#define glMapObjectBufferATI GLEW_GET_FUN(__glewMapObjectBufferATI) +#define glUnmapObjectBufferATI GLEW_GET_FUN(__glewUnmapObjectBufferATI) + +#define GLEW_ATI_map_object_buffer GLEW_GET_VAR(__GLEW_ATI_map_object_buffer) + +#endif /* GL_ATI_map_object_buffer */ + +/* ----------------------------- GL_ATI_meminfo ---------------------------- */ + +#ifndef GL_ATI_meminfo +#define GL_ATI_meminfo 1 + +#define GL_VBO_FREE_MEMORY_ATI 0x87FB +#define GL_TEXTURE_FREE_MEMORY_ATI 0x87FC +#define GL_RENDERBUFFER_FREE_MEMORY_ATI 0x87FD + +#define GLEW_ATI_meminfo GLEW_GET_VAR(__GLEW_ATI_meminfo) + +#endif /* GL_ATI_meminfo */ + +/* -------------------------- GL_ATI_pn_triangles -------------------------- */ + +#ifndef GL_ATI_pn_triangles +#define GL_ATI_pn_triangles 1 + +#define GL_PN_TRIANGLES_ATI 0x87F0 +#define GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1 +#define GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2 +#define GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3 +#define GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4 +#define GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5 +#define GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6 +#define GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7 +#define GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8 + +typedef void (GLAPIENTRY * PFNGLPNTRIANGLESFATIPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLPNTRIANGLESIATIPROC) (GLenum pname, GLint param); + +#define glPNTrianglesfATI GLEW_GET_FUN(__glewPNTrianglesfATI) +#define glPNTrianglesiATI GLEW_GET_FUN(__glewPNTrianglesiATI) + +#define GLEW_ATI_pn_triangles GLEW_GET_VAR(__GLEW_ATI_pn_triangles) + +#endif /* GL_ATI_pn_triangles */ + +/* ------------------------ GL_ATI_separate_stencil ------------------------ */ + +#ifndef GL_ATI_separate_stencil +#define GL_ATI_separate_stencil 1 + +#define GL_STENCIL_BACK_FUNC_ATI 0x8800 +#define GL_STENCIL_BACK_FAIL_ATI 0x8801 +#define GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802 +#define GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803 + +typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); + +#define glStencilFuncSeparateATI GLEW_GET_FUN(__glewStencilFuncSeparateATI) +#define glStencilOpSeparateATI GLEW_GET_FUN(__glewStencilOpSeparateATI) + +#define GLEW_ATI_separate_stencil GLEW_GET_VAR(__GLEW_ATI_separate_stencil) + +#endif /* GL_ATI_separate_stencil */ + +/* ----------------------- GL_ATI_shader_texture_lod ----------------------- */ + +#ifndef GL_ATI_shader_texture_lod +#define GL_ATI_shader_texture_lod 1 + +#define GLEW_ATI_shader_texture_lod GLEW_GET_VAR(__GLEW_ATI_shader_texture_lod) + +#endif /* GL_ATI_shader_texture_lod */ + +/* ---------------------- GL_ATI_text_fragment_shader ---------------------- */ + +#ifndef GL_ATI_text_fragment_shader +#define GL_ATI_text_fragment_shader 1 + +#define GL_TEXT_FRAGMENT_SHADER_ATI 0x8200 + +#define GLEW_ATI_text_fragment_shader GLEW_GET_VAR(__GLEW_ATI_text_fragment_shader) + +#endif /* GL_ATI_text_fragment_shader */ + +/* --------------------- GL_ATI_texture_compression_3dc -------------------- */ + +#ifndef GL_ATI_texture_compression_3dc +#define GL_ATI_texture_compression_3dc 1 + +#define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837 + +#define GLEW_ATI_texture_compression_3dc GLEW_GET_VAR(__GLEW_ATI_texture_compression_3dc) + +#endif /* GL_ATI_texture_compression_3dc */ + +/* ---------------------- GL_ATI_texture_env_combine3 ---------------------- */ + +#ifndef GL_ATI_texture_env_combine3 +#define GL_ATI_texture_env_combine3 1 + +#define GL_MODULATE_ADD_ATI 0x8744 +#define GL_MODULATE_SIGNED_ADD_ATI 0x8745 +#define GL_MODULATE_SUBTRACT_ATI 0x8746 + +#define GLEW_ATI_texture_env_combine3 GLEW_GET_VAR(__GLEW_ATI_texture_env_combine3) + +#endif /* GL_ATI_texture_env_combine3 */ + +/* -------------------------- GL_ATI_texture_float ------------------------- */ + +#ifndef GL_ATI_texture_float +#define GL_ATI_texture_float 1 + +#define GL_RGBA_FLOAT32_ATI 0x8814 +#define GL_RGB_FLOAT32_ATI 0x8815 +#define GL_ALPHA_FLOAT32_ATI 0x8816 +#define GL_INTENSITY_FLOAT32_ATI 0x8817 +#define GL_LUMINANCE_FLOAT32_ATI 0x8818 +#define GL_LUMINANCE_ALPHA_FLOAT32_ATI 0x8819 +#define GL_RGBA_FLOAT16_ATI 0x881A +#define GL_RGB_FLOAT16_ATI 0x881B +#define GL_ALPHA_FLOAT16_ATI 0x881C +#define GL_INTENSITY_FLOAT16_ATI 0x881D +#define GL_LUMINANCE_FLOAT16_ATI 0x881E +#define GL_LUMINANCE_ALPHA_FLOAT16_ATI 0x881F + +#define GLEW_ATI_texture_float GLEW_GET_VAR(__GLEW_ATI_texture_float) + +#endif /* GL_ATI_texture_float */ + +/* ----------------------- GL_ATI_texture_mirror_once ---------------------- */ + +#ifndef GL_ATI_texture_mirror_once +#define GL_ATI_texture_mirror_once 1 + +#define GL_MIRROR_CLAMP_ATI 0x8742 +#define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743 + +#define GLEW_ATI_texture_mirror_once GLEW_GET_VAR(__GLEW_ATI_texture_mirror_once) + +#endif /* GL_ATI_texture_mirror_once */ + +/* ----------------------- GL_ATI_vertex_array_object ---------------------- */ + +#ifndef GL_ATI_vertex_array_object +#define GL_ATI_vertex_array_object 1 + +#define GL_STATIC_ATI 0x8760 +#define GL_DYNAMIC_ATI 0x8761 +#define GL_PRESERVE_ATI 0x8762 +#define GL_DISCARD_ATI 0x8763 +#define GL_OBJECT_BUFFER_SIZE_ATI 0x8764 +#define GL_OBJECT_BUFFER_USAGE_ATI 0x8765 +#define GL_ARRAY_OBJECT_BUFFER_ATI 0x8766 +#define GL_ARRAY_OBJECT_OFFSET_ATI 0x8767 + +typedef void (GLAPIENTRY * PFNGLARRAYOBJECTATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); +typedef void (GLAPIENTRY * PFNGLFREEOBJECTBUFFERATIPROC) (GLuint buffer); +typedef void (GLAPIENTRY * PFNGLGETARRAYOBJECTFVATIPROC) (GLenum array, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETARRAYOBJECTIVATIPROC) (GLenum array, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETOBJECTBUFFERFVATIPROC) (GLuint buffer, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETOBJECTBUFFERIVATIPROC) (GLuint buffer, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETVARIANTARRAYOBJECTFVATIPROC) (GLuint id, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETVARIANTARRAYOBJECTIVATIPROC) (GLuint id, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISOBJECTBUFFERATIPROC) (GLuint buffer); +typedef GLuint (GLAPIENTRY * PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, const void *pointer, GLenum usage); +typedef void (GLAPIENTRY * PFNGLUPDATEOBJECTBUFFERATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const void *pointer, GLenum preserve); +typedef void (GLAPIENTRY * PFNGLVARIANTARRAYOBJECTATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); + +#define glArrayObjectATI GLEW_GET_FUN(__glewArrayObjectATI) +#define glFreeObjectBufferATI GLEW_GET_FUN(__glewFreeObjectBufferATI) +#define glGetArrayObjectfvATI GLEW_GET_FUN(__glewGetArrayObjectfvATI) +#define glGetArrayObjectivATI GLEW_GET_FUN(__glewGetArrayObjectivATI) +#define glGetObjectBufferfvATI GLEW_GET_FUN(__glewGetObjectBufferfvATI) +#define glGetObjectBufferivATI GLEW_GET_FUN(__glewGetObjectBufferivATI) +#define glGetVariantArrayObjectfvATI GLEW_GET_FUN(__glewGetVariantArrayObjectfvATI) +#define glGetVariantArrayObjectivATI GLEW_GET_FUN(__glewGetVariantArrayObjectivATI) +#define glIsObjectBufferATI GLEW_GET_FUN(__glewIsObjectBufferATI) +#define glNewObjectBufferATI GLEW_GET_FUN(__glewNewObjectBufferATI) +#define glUpdateObjectBufferATI GLEW_GET_FUN(__glewUpdateObjectBufferATI) +#define glVariantArrayObjectATI GLEW_GET_FUN(__glewVariantArrayObjectATI) + +#define GLEW_ATI_vertex_array_object GLEW_GET_VAR(__GLEW_ATI_vertex_array_object) + +#endif /* GL_ATI_vertex_array_object */ + +/* ------------------- GL_ATI_vertex_attrib_array_object ------------------- */ + +#ifndef GL_ATI_vertex_attrib_array_object +#define GL_ATI_vertex_attrib_array_object 1 + +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC) (GLuint index, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC) (GLuint index, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBARRAYOBJECTATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset); + +#define glGetVertexAttribArrayObjectfvATI GLEW_GET_FUN(__glewGetVertexAttribArrayObjectfvATI) +#define glGetVertexAttribArrayObjectivATI GLEW_GET_FUN(__glewGetVertexAttribArrayObjectivATI) +#define glVertexAttribArrayObjectATI GLEW_GET_FUN(__glewVertexAttribArrayObjectATI) + +#define GLEW_ATI_vertex_attrib_array_object GLEW_GET_VAR(__GLEW_ATI_vertex_attrib_array_object) + +#endif /* GL_ATI_vertex_attrib_array_object */ + +/* ------------------------- GL_ATI_vertex_streams ------------------------- */ + +#ifndef GL_ATI_vertex_streams +#define GL_ATI_vertex_streams 1 + +#define GL_MAX_VERTEX_STREAMS_ATI 0x876B +#define GL_VERTEX_SOURCE_ATI 0x876C +#define GL_VERTEX_STREAM0_ATI 0x876D +#define GL_VERTEX_STREAM1_ATI 0x876E +#define GL_VERTEX_STREAM2_ATI 0x876F +#define GL_VERTEX_STREAM3_ATI 0x8770 +#define GL_VERTEX_STREAM4_ATI 0x8771 +#define GL_VERTEX_STREAM5_ATI 0x8772 +#define GL_VERTEX_STREAM6_ATI 0x8773 +#define GL_VERTEX_STREAM7_ATI 0x8774 + +typedef void (GLAPIENTRY * PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC) (GLenum stream); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3BATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3BVATIPROC) (GLenum stream, const GLbyte *coords); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3IVATIPROC) (GLenum stream, const GLint *coords); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); +typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXBLENDENVFATIPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLVERTEXBLENDENVIATIPROC) (GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1DATIPROC) (GLenum stream, GLdouble x); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1DVATIPROC) (GLenum stream, const GLdouble *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1FATIPROC) (GLenum stream, GLfloat x); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1FVATIPROC) (GLenum stream, const GLfloat *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1IATIPROC) (GLenum stream, GLint x); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1IVATIPROC) (GLenum stream, const GLint *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1SATIPROC) (GLenum stream, GLshort x); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1SVATIPROC) (GLenum stream, const GLshort *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2DATIPROC) (GLenum stream, GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2DVATIPROC) (GLenum stream, const GLdouble *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2FATIPROC) (GLenum stream, GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2FVATIPROC) (GLenum stream, const GLfloat *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2IATIPROC) (GLenum stream, GLint x, GLint y); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2IVATIPROC) (GLenum stream, const GLint *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2SATIPROC) (GLenum stream, GLshort x, GLshort y); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2SVATIPROC) (GLenum stream, const GLshort *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3IVATIPROC) (GLenum stream, const GLint *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4DVATIPROC) (GLenum stream, const GLdouble *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4FVATIPROC) (GLenum stream, const GLfloat *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4IATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4IVATIPROC) (GLenum stream, const GLint *coords); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4SVATIPROC) (GLenum stream, const GLshort *coords); + +#define glClientActiveVertexStreamATI GLEW_GET_FUN(__glewClientActiveVertexStreamATI) +#define glNormalStream3bATI GLEW_GET_FUN(__glewNormalStream3bATI) +#define glNormalStream3bvATI GLEW_GET_FUN(__glewNormalStream3bvATI) +#define glNormalStream3dATI GLEW_GET_FUN(__glewNormalStream3dATI) +#define glNormalStream3dvATI GLEW_GET_FUN(__glewNormalStream3dvATI) +#define glNormalStream3fATI GLEW_GET_FUN(__glewNormalStream3fATI) +#define glNormalStream3fvATI GLEW_GET_FUN(__glewNormalStream3fvATI) +#define glNormalStream3iATI GLEW_GET_FUN(__glewNormalStream3iATI) +#define glNormalStream3ivATI GLEW_GET_FUN(__glewNormalStream3ivATI) +#define glNormalStream3sATI GLEW_GET_FUN(__glewNormalStream3sATI) +#define glNormalStream3svATI GLEW_GET_FUN(__glewNormalStream3svATI) +#define glVertexBlendEnvfATI GLEW_GET_FUN(__glewVertexBlendEnvfATI) +#define glVertexBlendEnviATI GLEW_GET_FUN(__glewVertexBlendEnviATI) +#define glVertexStream1dATI GLEW_GET_FUN(__glewVertexStream1dATI) +#define glVertexStream1dvATI GLEW_GET_FUN(__glewVertexStream1dvATI) +#define glVertexStream1fATI GLEW_GET_FUN(__glewVertexStream1fATI) +#define glVertexStream1fvATI GLEW_GET_FUN(__glewVertexStream1fvATI) +#define glVertexStream1iATI GLEW_GET_FUN(__glewVertexStream1iATI) +#define glVertexStream1ivATI GLEW_GET_FUN(__glewVertexStream1ivATI) +#define glVertexStream1sATI GLEW_GET_FUN(__glewVertexStream1sATI) +#define glVertexStream1svATI GLEW_GET_FUN(__glewVertexStream1svATI) +#define glVertexStream2dATI GLEW_GET_FUN(__glewVertexStream2dATI) +#define glVertexStream2dvATI GLEW_GET_FUN(__glewVertexStream2dvATI) +#define glVertexStream2fATI GLEW_GET_FUN(__glewVertexStream2fATI) +#define glVertexStream2fvATI GLEW_GET_FUN(__glewVertexStream2fvATI) +#define glVertexStream2iATI GLEW_GET_FUN(__glewVertexStream2iATI) +#define glVertexStream2ivATI GLEW_GET_FUN(__glewVertexStream2ivATI) +#define glVertexStream2sATI GLEW_GET_FUN(__glewVertexStream2sATI) +#define glVertexStream2svATI GLEW_GET_FUN(__glewVertexStream2svATI) +#define glVertexStream3dATI GLEW_GET_FUN(__glewVertexStream3dATI) +#define glVertexStream3dvATI GLEW_GET_FUN(__glewVertexStream3dvATI) +#define glVertexStream3fATI GLEW_GET_FUN(__glewVertexStream3fATI) +#define glVertexStream3fvATI GLEW_GET_FUN(__glewVertexStream3fvATI) +#define glVertexStream3iATI GLEW_GET_FUN(__glewVertexStream3iATI) +#define glVertexStream3ivATI GLEW_GET_FUN(__glewVertexStream3ivATI) +#define glVertexStream3sATI GLEW_GET_FUN(__glewVertexStream3sATI) +#define glVertexStream3svATI GLEW_GET_FUN(__glewVertexStream3svATI) +#define glVertexStream4dATI GLEW_GET_FUN(__glewVertexStream4dATI) +#define glVertexStream4dvATI GLEW_GET_FUN(__glewVertexStream4dvATI) +#define glVertexStream4fATI GLEW_GET_FUN(__glewVertexStream4fATI) +#define glVertexStream4fvATI GLEW_GET_FUN(__glewVertexStream4fvATI) +#define glVertexStream4iATI GLEW_GET_FUN(__glewVertexStream4iATI) +#define glVertexStream4ivATI GLEW_GET_FUN(__glewVertexStream4ivATI) +#define glVertexStream4sATI GLEW_GET_FUN(__glewVertexStream4sATI) +#define glVertexStream4svATI GLEW_GET_FUN(__glewVertexStream4svATI) + +#define GLEW_ATI_vertex_streams GLEW_GET_VAR(__GLEW_ATI_vertex_streams) + +#endif /* GL_ATI_vertex_streams */ + +/* ------------------------- GL_DMP_program_binary ------------------------- */ + +#ifndef GL_DMP_program_binary +#define GL_DMP_program_binary 1 + +#define GL_SMAPHS30_PROGRAM_BINARY_DMP 0x9251 +#define GL_SMAPHS_PROGRAM_BINARY_DMP 0x9252 +#define GL_DMP_PROGRAM_BINARY_DMP 0x9253 + +#define GLEW_DMP_program_binary GLEW_GET_VAR(__GLEW_DMP_program_binary) + +#endif /* GL_DMP_program_binary */ + +/* -------------------------- GL_DMP_shader_binary ------------------------- */ + +#ifndef GL_DMP_shader_binary +#define GL_DMP_shader_binary 1 + +#define GL_SHADER_BINARY_DMP 0x9250 + +#define GLEW_DMP_shader_binary GLEW_GET_VAR(__GLEW_DMP_shader_binary) + +#endif /* GL_DMP_shader_binary */ + +/* --------------------------- GL_EXT_422_pixels --------------------------- */ + +#ifndef GL_EXT_422_pixels +#define GL_EXT_422_pixels 1 + +#define GL_422_EXT 0x80CC +#define GL_422_REV_EXT 0x80CD +#define GL_422_AVERAGE_EXT 0x80CE +#define GL_422_REV_AVERAGE_EXT 0x80CF + +#define GLEW_EXT_422_pixels GLEW_GET_VAR(__GLEW_EXT_422_pixels) + +#endif /* GL_EXT_422_pixels */ + +/* ---------------------------- GL_EXT_Cg_shader --------------------------- */ + +#ifndef GL_EXT_Cg_shader +#define GL_EXT_Cg_shader 1 + +#define GL_CG_VERTEX_SHADER_EXT 0x890E +#define GL_CG_FRAGMENT_SHADER_EXT 0x890F + +#define GLEW_EXT_Cg_shader GLEW_GET_VAR(__GLEW_EXT_Cg_shader) + +#endif /* GL_EXT_Cg_shader */ + +/* ------------------------- GL_EXT_EGL_image_array ------------------------ */ + +#ifndef GL_EXT_EGL_image_array +#define GL_EXT_EGL_image_array 1 + +#define GLEW_EXT_EGL_image_array GLEW_GET_VAR(__GLEW_EXT_EGL_image_array) + +#endif /* GL_EXT_EGL_image_array */ + +/* ------------------ GL_EXT_EGL_image_external_wrap_modes ----------------- */ + +#ifndef GL_EXT_EGL_image_external_wrap_modes +#define GL_EXT_EGL_image_external_wrap_modes 1 + +#define GLEW_EXT_EGL_image_external_wrap_modes GLEW_GET_VAR(__GLEW_EXT_EGL_image_external_wrap_modes) + +#endif /* GL_EXT_EGL_image_external_wrap_modes */ + +/* ------------------------ GL_EXT_EGL_image_storage ----------------------- */ + +#ifndef GL_EXT_EGL_image_storage +#define GL_EXT_EGL_image_storage 1 + +typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETTEXSTORAGEEXTPROC) (GLenum target, GLeglImageOES image, const GLint* attrib_list); +typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETTEXTURESTORAGEEXTPROC) (GLuint texture, GLeglImageOES image, const GLint* attrib_list); + +#define glEGLImageTargetTexStorageEXT GLEW_GET_FUN(__glewEGLImageTargetTexStorageEXT) +#define glEGLImageTargetTextureStorageEXT GLEW_GET_FUN(__glewEGLImageTargetTextureStorageEXT) + +#define GLEW_EXT_EGL_image_storage GLEW_GET_VAR(__GLEW_EXT_EGL_image_storage) + +#endif /* GL_EXT_EGL_image_storage */ + +/* ---------------------------- GL_EXT_EGL_sync ---------------------------- */ + +#ifndef GL_EXT_EGL_sync +#define GL_EXT_EGL_sync 1 + +#define GLEW_EXT_EGL_sync GLEW_GET_VAR(__GLEW_EXT_EGL_sync) + +#endif /* GL_EXT_EGL_sync */ + +/* --------------------------- GL_EXT_YUV_target --------------------------- */ + +#ifndef GL_EXT_YUV_target +#define GL_EXT_YUV_target 1 + +#define GL_SAMPLER_EXTERNAL_2D_Y2Y_EXT 0x8BE7 + +#define GLEW_EXT_YUV_target GLEW_GET_VAR(__GLEW_EXT_YUV_target) + +#endif /* GL_EXT_YUV_target */ + +/* ------------------------------ GL_EXT_abgr ------------------------------ */ + +#ifndef GL_EXT_abgr +#define GL_EXT_abgr 1 + +#define GL_ABGR_EXT 0x8000 + +#define GLEW_EXT_abgr GLEW_GET_VAR(__GLEW_EXT_abgr) + +#endif /* GL_EXT_abgr */ + +/* -------------------------- GL_EXT_base_instance ------------------------- */ + +#ifndef GL_EXT_base_instance +#define GL_EXT_base_instance 1 + +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEEXTPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance); + +#define glDrawArraysInstancedBaseInstanceEXT GLEW_GET_FUN(__glewDrawArraysInstancedBaseInstanceEXT) +#define glDrawElementsInstancedBaseInstanceEXT GLEW_GET_FUN(__glewDrawElementsInstancedBaseInstanceEXT) +#define glDrawElementsInstancedBaseVertexBaseInstanceEXT GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertexBaseInstanceEXT) + +#define GLEW_EXT_base_instance GLEW_GET_VAR(__GLEW_EXT_base_instance) + +#endif /* GL_EXT_base_instance */ + +/* ------------------------------ GL_EXT_bgra ------------------------------ */ + +#ifndef GL_EXT_bgra +#define GL_EXT_bgra 1 + +#define GL_BGR_EXT 0x80E0 +#define GL_BGRA_EXT 0x80E1 + +#define GLEW_EXT_bgra GLEW_GET_VAR(__GLEW_EXT_bgra) + +#endif /* GL_EXT_bgra */ + +/* ------------------------ GL_EXT_bindable_uniform ------------------------ */ + +#ifndef GL_EXT_bindable_uniform +#define GL_EXT_bindable_uniform 1 + +#define GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT 0x8DE2 +#define GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT 0x8DE3 +#define GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT 0x8DE4 +#define GL_MAX_BINDABLE_UNIFORM_SIZE_EXT 0x8DED +#define GL_UNIFORM_BUFFER_EXT 0x8DEE +#define GL_UNIFORM_BUFFER_BINDING_EXT 0x8DEF + +typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMBUFFERSIZEEXTPROC) (GLuint program, GLint location); +typedef GLintptr (GLAPIENTRY * PFNGLGETUNIFORMOFFSETEXTPROC) (GLuint program, GLint location); +typedef void (GLAPIENTRY * PFNGLUNIFORMBUFFEREXTPROC) (GLuint program, GLint location, GLuint buffer); + +#define glGetUniformBufferSizeEXT GLEW_GET_FUN(__glewGetUniformBufferSizeEXT) +#define glGetUniformOffsetEXT GLEW_GET_FUN(__glewGetUniformOffsetEXT) +#define glUniformBufferEXT GLEW_GET_FUN(__glewUniformBufferEXT) + +#define GLEW_EXT_bindable_uniform GLEW_GET_VAR(__GLEW_EXT_bindable_uniform) + +#endif /* GL_EXT_bindable_uniform */ + +/* --------------------------- GL_EXT_blend_color -------------------------- */ + +#ifndef GL_EXT_blend_color +#define GL_EXT_blend_color 1 + +#define GL_CONSTANT_COLOR_EXT 0x8001 +#define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002 +#define GL_CONSTANT_ALPHA_EXT 0x8003 +#define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004 +#define GL_BLEND_COLOR_EXT 0x8005 + +typedef void (GLAPIENTRY * PFNGLBLENDCOLOREXTPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); + +#define glBlendColorEXT GLEW_GET_FUN(__glewBlendColorEXT) + +#define GLEW_EXT_blend_color GLEW_GET_VAR(__GLEW_EXT_blend_color) + +#endif /* GL_EXT_blend_color */ + +/* --------------------- GL_EXT_blend_equation_separate -------------------- */ + +#ifndef GL_EXT_blend_equation_separate +#define GL_EXT_blend_equation_separate 1 + +#define GL_BLEND_EQUATION_RGB_EXT 0x8009 +#define GL_BLEND_EQUATION_ALPHA_EXT 0x883D + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEEXTPROC) (GLenum modeRGB, GLenum modeAlpha); + +#define glBlendEquationSeparateEXT GLEW_GET_FUN(__glewBlendEquationSeparateEXT) + +#define GLEW_EXT_blend_equation_separate GLEW_GET_VAR(__GLEW_EXT_blend_equation_separate) + +#endif /* GL_EXT_blend_equation_separate */ + +/* ----------------------- GL_EXT_blend_func_extended ---------------------- */ + +#ifndef GL_EXT_blend_func_extended +#define GL_EXT_blend_func_extended 1 + +#define GL_SRC_ALPHA_SATURATE_EXT 0x0308 +#define GL_SRC1_ALPHA_EXT 0x8589 +#define GL_SRC1_COLOR_EXT 0x88F9 +#define GL_ONE_MINUS_SRC1_COLOR_EXT 0x88FA +#define GL_ONE_MINUS_SRC1_ALPHA_EXT 0x88FB +#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT 0x88FC +#define GL_LOCATION_INDEX_EXT 0x930F + +typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONINDEXEDEXTPROC) (GLuint program, GLuint colorNumber, GLuint index, const GLchar * name); +typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATAINDEXEXTPROC) (GLuint program, const GLchar * name); +typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONINDEXEXTPROC) (GLuint program, GLenum programInterface, const GLchar* name); + +#define glBindFragDataLocationIndexedEXT GLEW_GET_FUN(__glewBindFragDataLocationIndexedEXT) +#define glGetFragDataIndexEXT GLEW_GET_FUN(__glewGetFragDataIndexEXT) +#define glGetProgramResourceLocationIndexEXT GLEW_GET_FUN(__glewGetProgramResourceLocationIndexEXT) + +#define GLEW_EXT_blend_func_extended GLEW_GET_VAR(__GLEW_EXT_blend_func_extended) + +#endif /* GL_EXT_blend_func_extended */ + +/* ----------------------- GL_EXT_blend_func_separate ---------------------- */ + +#ifndef GL_EXT_blend_func_separate +#define GL_EXT_blend_func_separate 1 + +#define GL_BLEND_DST_RGB_EXT 0x80C8 +#define GL_BLEND_SRC_RGB_EXT 0x80C9 +#define GL_BLEND_DST_ALPHA_EXT 0x80CA +#define GL_BLEND_SRC_ALPHA_EXT 0x80CB + +typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); + +#define glBlendFuncSeparateEXT GLEW_GET_FUN(__glewBlendFuncSeparateEXT) + +#define GLEW_EXT_blend_func_separate GLEW_GET_VAR(__GLEW_EXT_blend_func_separate) + +#endif /* GL_EXT_blend_func_separate */ + +/* ------------------------- GL_EXT_blend_logic_op ------------------------- */ + +#ifndef GL_EXT_blend_logic_op +#define GL_EXT_blend_logic_op 1 + +#define GLEW_EXT_blend_logic_op GLEW_GET_VAR(__GLEW_EXT_blend_logic_op) + +#endif /* GL_EXT_blend_logic_op */ + +/* -------------------------- GL_EXT_blend_minmax -------------------------- */ + +#ifndef GL_EXT_blend_minmax +#define GL_EXT_blend_minmax 1 + +#define GL_FUNC_ADD_EXT 0x8006 +#define GL_MIN_EXT 0x8007 +#define GL_MAX_EXT 0x8008 +#define GL_BLEND_EQUATION_EXT 0x8009 + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONEXTPROC) (GLenum mode); + +#define glBlendEquationEXT GLEW_GET_FUN(__glewBlendEquationEXT) + +#define GLEW_EXT_blend_minmax GLEW_GET_VAR(__GLEW_EXT_blend_minmax) + +#endif /* GL_EXT_blend_minmax */ + +/* ------------------------- GL_EXT_blend_subtract ------------------------- */ + +#ifndef GL_EXT_blend_subtract +#define GL_EXT_blend_subtract 1 + +#define GL_FUNC_SUBTRACT_EXT 0x800A +#define GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B + +#define GLEW_EXT_blend_subtract GLEW_GET_VAR(__GLEW_EXT_blend_subtract) + +#endif /* GL_EXT_blend_subtract */ + +/* ------------------------- GL_EXT_buffer_storage ------------------------- */ + +#ifndef GL_EXT_buffer_storage +#define GL_EXT_buffer_storage 1 + +#define GL_MAP_READ_BIT 0x0001 +#define GL_MAP_WRITE_BIT 0x0002 +#define GL_MAP_PERSISTENT_BIT_EXT 0x0040 +#define GL_MAP_COHERENT_BIT_EXT 0x0080 +#define GL_DYNAMIC_STORAGE_BIT_EXT 0x0100 +#define GL_CLIENT_STORAGE_BIT_EXT 0x0200 +#define GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT 0x00004000 +#define GL_BUFFER_IMMUTABLE_STORAGE_EXT 0x821F +#define GL_BUFFER_STORAGE_FLAGS_EXT 0x8220 + +typedef void (GLAPIENTRY * PFNGLBUFFERSTORAGEEXTPROC) (GLenum target, GLsizeiptr size, const void *data, GLbitfield flags); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSTORAGEEXTPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags); + +#define glBufferStorageEXT GLEW_GET_FUN(__glewBufferStorageEXT) +#define glNamedBufferStorageEXT GLEW_GET_FUN(__glewNamedBufferStorageEXT) + +#define GLEW_EXT_buffer_storage GLEW_GET_VAR(__GLEW_EXT_buffer_storage) + +#endif /* GL_EXT_buffer_storage */ + +/* -------------------------- GL_EXT_clear_texture ------------------------- */ + +#ifndef GL_EXT_clear_texture +#define GL_EXT_clear_texture 1 + +typedef void (GLAPIENTRY * PFNGLCLEARTEXIMAGEEXTPROC) (GLuint texture, GLint level, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCLEARTEXSUBIMAGEEXTPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data); + +#define glClearTexImageEXT GLEW_GET_FUN(__glewClearTexImageEXT) +#define glClearTexSubImageEXT GLEW_GET_FUN(__glewClearTexSubImageEXT) + +#define GLEW_EXT_clear_texture GLEW_GET_VAR(__GLEW_EXT_clear_texture) + +#endif /* GL_EXT_clear_texture */ + +/* -------------------------- GL_EXT_clip_control -------------------------- */ + +#ifndef GL_EXT_clip_control +#define GL_EXT_clip_control 1 + +#define GL_LOWER_LEFT_EXT 0x8CA1 +#define GL_UPPER_LEFT_EXT 0x8CA2 +#define GL_CLIP_ORIGIN_EXT 0x935C +#define GL_CLIP_DEPTH_MODE_EXT 0x935D +#define GL_NEGATIVE_ONE_TO_ONE_EXT 0x935E +#define GL_ZERO_TO_ONE_EXT 0x935F + +typedef void (GLAPIENTRY * PFNGLCLIPCONTROLEXTPROC) (GLenum origin, GLenum depth); + +#define glClipControlEXT GLEW_GET_FUN(__glewClipControlEXT) + +#define GLEW_EXT_clip_control GLEW_GET_VAR(__GLEW_EXT_clip_control) + +#endif /* GL_EXT_clip_control */ + +/* ----------------------- GL_EXT_clip_cull_distance ----------------------- */ + +#ifndef GL_EXT_clip_cull_distance +#define GL_EXT_clip_cull_distance 1 + +#define GL_MAX_CLIP_DISTANCES_EXT 0x0D32 +#define GL_CLIP_DISTANCE0_EXT 0x3000 +#define GL_CLIP_DISTANCE1_EXT 0x3001 +#define GL_CLIP_DISTANCE2_EXT 0x3002 +#define GL_CLIP_DISTANCE3_EXT 0x3003 +#define GL_CLIP_DISTANCE4_EXT 0x3004 +#define GL_CLIP_DISTANCE5_EXT 0x3005 +#define GL_CLIP_DISTANCE6_EXT 0x3006 +#define GL_CLIP_DISTANCE7_EXT 0x3007 +#define GL_MAX_CULL_DISTANCES_EXT 0x82F9 +#define GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES_EXT 0x82FA + +#define GLEW_EXT_clip_cull_distance GLEW_GET_VAR(__GLEW_EXT_clip_cull_distance) + +#endif /* GL_EXT_clip_cull_distance */ + +/* ------------------------ GL_EXT_clip_volume_hint ------------------------ */ + +#ifndef GL_EXT_clip_volume_hint +#define GL_EXT_clip_volume_hint 1 + +#define GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0 + +#define GLEW_EXT_clip_volume_hint GLEW_GET_VAR(__GLEW_EXT_clip_volume_hint) + +#endif /* GL_EXT_clip_volume_hint */ + +/* ------------------------------ GL_EXT_cmyka ----------------------------- */ + +#ifndef GL_EXT_cmyka +#define GL_EXT_cmyka 1 + +#define GL_CMYK_EXT 0x800C +#define GL_CMYKA_EXT 0x800D +#define GL_PACK_CMYK_HINT_EXT 0x800E +#define GL_UNPACK_CMYK_HINT_EXT 0x800F + +#define GLEW_EXT_cmyka GLEW_GET_VAR(__GLEW_EXT_cmyka) + +#endif /* GL_EXT_cmyka */ + +/* ----------------------- GL_EXT_color_buffer_float ----------------------- */ + +#ifndef GL_EXT_color_buffer_float +#define GL_EXT_color_buffer_float 1 + +#define GLEW_EXT_color_buffer_float GLEW_GET_VAR(__GLEW_EXT_color_buffer_float) + +#endif /* GL_EXT_color_buffer_float */ + +/* --------------------- GL_EXT_color_buffer_half_float -------------------- */ + +#ifndef GL_EXT_color_buffer_half_float +#define GL_EXT_color_buffer_half_float 1 + +#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211 +#define GL_R16F_EXT 0x822D +#define GL_RG16F_EXT 0x822F +#define GL_RGBA16F_EXT 0x881A +#define GL_RGB16F_EXT 0x881B +#define GL_UNSIGNED_NORMALIZED_EXT 0x8C17 + +#define GLEW_EXT_color_buffer_half_float GLEW_GET_VAR(__GLEW_EXT_color_buffer_half_float) + +#endif /* GL_EXT_color_buffer_half_float */ + +/* ------------------------- GL_EXT_color_subtable ------------------------- */ + +#ifndef GL_EXT_color_subtable +#define GL_EXT_color_subtable 1 + +typedef void (GLAPIENTRY * PFNGLCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLCOPYCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width); + +#define glColorSubTableEXT GLEW_GET_FUN(__glewColorSubTableEXT) +#define glCopyColorSubTableEXT GLEW_GET_FUN(__glewCopyColorSubTableEXT) + +#define GLEW_EXT_color_subtable GLEW_GET_VAR(__GLEW_EXT_color_subtable) + +#endif /* GL_EXT_color_subtable */ + +/* ---------------------- GL_EXT_compiled_vertex_array --------------------- */ + +#ifndef GL_EXT_compiled_vertex_array +#define GL_EXT_compiled_vertex_array 1 + +#define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8 +#define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9 + +typedef void (GLAPIENTRY * PFNGLLOCKARRAYSEXTPROC) (GLint first, GLsizei count); +typedef void (GLAPIENTRY * PFNGLUNLOCKARRAYSEXTPROC) (void); + +#define glLockArraysEXT GLEW_GET_FUN(__glewLockArraysEXT) +#define glUnlockArraysEXT GLEW_GET_FUN(__glewUnlockArraysEXT) + +#define GLEW_EXT_compiled_vertex_array GLEW_GET_VAR(__GLEW_EXT_compiled_vertex_array) + +#endif /* GL_EXT_compiled_vertex_array */ + +/* ---------------- GL_EXT_compressed_ETC1_RGB8_sub_texture ---------------- */ + +#ifndef GL_EXT_compressed_ETC1_RGB8_sub_texture +#define GL_EXT_compressed_ETC1_RGB8_sub_texture 1 + +#define GLEW_EXT_compressed_ETC1_RGB8_sub_texture GLEW_GET_VAR(__GLEW_EXT_compressed_ETC1_RGB8_sub_texture) + +#endif /* GL_EXT_compressed_ETC1_RGB8_sub_texture */ + +/* ----------------------- GL_EXT_conservative_depth ----------------------- */ + +#ifndef GL_EXT_conservative_depth +#define GL_EXT_conservative_depth 1 + +#define GLEW_EXT_conservative_depth GLEW_GET_VAR(__GLEW_EXT_conservative_depth) + +#endif /* GL_EXT_conservative_depth */ + +/* --------------------------- GL_EXT_convolution -------------------------- */ + +#ifndef GL_EXT_convolution +#define GL_EXT_convolution 1 + +#define GL_CONVOLUTION_1D_EXT 0x8010 +#define GL_CONVOLUTION_2D_EXT 0x8011 +#define GL_SEPARABLE_2D_EXT 0x8012 +#define GL_CONVOLUTION_BORDER_MODE_EXT 0x8013 +#define GL_CONVOLUTION_FILTER_SCALE_EXT 0x8014 +#define GL_CONVOLUTION_FILTER_BIAS_EXT 0x8015 +#define GL_REDUCE_EXT 0x8016 +#define GL_CONVOLUTION_FORMAT_EXT 0x8017 +#define GL_CONVOLUTION_WIDTH_EXT 0x8018 +#define GL_CONVOLUTION_HEIGHT_EXT 0x8019 +#define GL_MAX_CONVOLUTION_WIDTH_EXT 0x801A +#define GL_MAX_CONVOLUTION_HEIGHT_EXT 0x801B +#define GL_POST_CONVOLUTION_RED_SCALE_EXT 0x801C +#define GL_POST_CONVOLUTION_GREEN_SCALE_EXT 0x801D +#define GL_POST_CONVOLUTION_BLUE_SCALE_EXT 0x801E +#define GL_POST_CONVOLUTION_ALPHA_SCALE_EXT 0x801F +#define GL_POST_CONVOLUTION_RED_BIAS_EXT 0x8020 +#define GL_POST_CONVOLUTION_GREEN_BIAS_EXT 0x8021 +#define GL_POST_CONVOLUTION_BLUE_BIAS_EXT 0x8022 +#define GL_POST_CONVOLUTION_ALPHA_BIAS_EXT 0x8023 + +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *image); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *image); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, void *image); +typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETSEPARABLEFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, void *row, void *column, void *span); +typedef void (GLAPIENTRY * PFNGLSEPARABLEFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *row, const void *column); + +#define glConvolutionFilter1DEXT GLEW_GET_FUN(__glewConvolutionFilter1DEXT) +#define glConvolutionFilter2DEXT GLEW_GET_FUN(__glewConvolutionFilter2DEXT) +#define glConvolutionParameterfEXT GLEW_GET_FUN(__glewConvolutionParameterfEXT) +#define glConvolutionParameterfvEXT GLEW_GET_FUN(__glewConvolutionParameterfvEXT) +#define glConvolutionParameteriEXT GLEW_GET_FUN(__glewConvolutionParameteriEXT) +#define glConvolutionParameterivEXT GLEW_GET_FUN(__glewConvolutionParameterivEXT) +#define glCopyConvolutionFilter1DEXT GLEW_GET_FUN(__glewCopyConvolutionFilter1DEXT) +#define glCopyConvolutionFilter2DEXT GLEW_GET_FUN(__glewCopyConvolutionFilter2DEXT) +#define glGetConvolutionFilterEXT GLEW_GET_FUN(__glewGetConvolutionFilterEXT) +#define glGetConvolutionParameterfvEXT GLEW_GET_FUN(__glewGetConvolutionParameterfvEXT) +#define glGetConvolutionParameterivEXT GLEW_GET_FUN(__glewGetConvolutionParameterivEXT) +#define glGetSeparableFilterEXT GLEW_GET_FUN(__glewGetSeparableFilterEXT) +#define glSeparableFilter2DEXT GLEW_GET_FUN(__glewSeparableFilter2DEXT) + +#define GLEW_EXT_convolution GLEW_GET_VAR(__GLEW_EXT_convolution) + +#endif /* GL_EXT_convolution */ + +/* ------------------------ GL_EXT_coordinate_frame ------------------------ */ + +#ifndef GL_EXT_coordinate_frame +#define GL_EXT_coordinate_frame 1 + +#define GL_TANGENT_ARRAY_EXT 0x8439 +#define GL_BINORMAL_ARRAY_EXT 0x843A +#define GL_CURRENT_TANGENT_EXT 0x843B +#define GL_CURRENT_BINORMAL_EXT 0x843C +#define GL_TANGENT_ARRAY_TYPE_EXT 0x843E +#define GL_TANGENT_ARRAY_STRIDE_EXT 0x843F +#define GL_BINORMAL_ARRAY_TYPE_EXT 0x8440 +#define GL_BINORMAL_ARRAY_STRIDE_EXT 0x8441 +#define GL_TANGENT_ARRAY_POINTER_EXT 0x8442 +#define GL_BINORMAL_ARRAY_POINTER_EXT 0x8443 +#define GL_MAP1_TANGENT_EXT 0x8444 +#define GL_MAP2_TANGENT_EXT 0x8445 +#define GL_MAP1_BINORMAL_EXT 0x8446 +#define GL_MAP2_BINORMAL_EXT 0x8447 + +typedef void (GLAPIENTRY * PFNGLBINORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, void *pointer); +typedef void (GLAPIENTRY * PFNGLTANGENTPOINTEREXTPROC) (GLenum type, GLsizei stride, void *pointer); + +#define glBinormalPointerEXT GLEW_GET_FUN(__glewBinormalPointerEXT) +#define glTangentPointerEXT GLEW_GET_FUN(__glewTangentPointerEXT) + +#define GLEW_EXT_coordinate_frame GLEW_GET_VAR(__GLEW_EXT_coordinate_frame) + +#endif /* GL_EXT_coordinate_frame */ + +/* --------------------------- GL_EXT_copy_image --------------------------- */ + +#ifndef GL_EXT_copy_image +#define GL_EXT_copy_image 1 + +typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATAEXTPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); + +#define glCopyImageSubDataEXT GLEW_GET_FUN(__glewCopyImageSubDataEXT) + +#define GLEW_EXT_copy_image GLEW_GET_VAR(__GLEW_EXT_copy_image) + +#endif /* GL_EXT_copy_image */ + +/* -------------------------- GL_EXT_copy_texture -------------------------- */ + +#ifndef GL_EXT_copy_texture +#define GL_EXT_copy_texture 1 + +typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE1DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); +typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE2DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); +typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); + +#define glCopyTexImage1DEXT GLEW_GET_FUN(__glewCopyTexImage1DEXT) +#define glCopyTexImage2DEXT GLEW_GET_FUN(__glewCopyTexImage2DEXT) +#define glCopyTexSubImage1DEXT GLEW_GET_FUN(__glewCopyTexSubImage1DEXT) +#define glCopyTexSubImage2DEXT GLEW_GET_FUN(__glewCopyTexSubImage2DEXT) +#define glCopyTexSubImage3DEXT GLEW_GET_FUN(__glewCopyTexSubImage3DEXT) + +#define GLEW_EXT_copy_texture GLEW_GET_VAR(__GLEW_EXT_copy_texture) + +#endif /* GL_EXT_copy_texture */ + +/* --------------------------- GL_EXT_cull_vertex -------------------------- */ + +#ifndef GL_EXT_cull_vertex +#define GL_EXT_cull_vertex 1 + +#define GL_CULL_VERTEX_EXT 0x81AA +#define GL_CULL_VERTEX_EYE_POSITION_EXT 0x81AB +#define GL_CULL_VERTEX_OBJECT_POSITION_EXT 0x81AC + +typedef void (GLAPIENTRY * PFNGLCULLPARAMETERDVEXTPROC) (GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLCULLPARAMETERFVEXTPROC) (GLenum pname, GLfloat* params); + +#define glCullParameterdvEXT GLEW_GET_FUN(__glewCullParameterdvEXT) +#define glCullParameterfvEXT GLEW_GET_FUN(__glewCullParameterfvEXT) + +#define GLEW_EXT_cull_vertex GLEW_GET_VAR(__GLEW_EXT_cull_vertex) + +#endif /* GL_EXT_cull_vertex */ + +/* --------------------------- GL_EXT_debug_label -------------------------- */ + +#ifndef GL_EXT_debug_label +#define GL_EXT_debug_label 1 + +#define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F +#define GL_PROGRAM_OBJECT_EXT 0x8B40 +#define GL_SHADER_OBJECT_EXT 0x8B48 +#define GL_BUFFER_OBJECT_EXT 0x9151 +#define GL_QUERY_OBJECT_EXT 0x9153 +#define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154 + +typedef void (GLAPIENTRY * PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei* length, GLchar *label); +typedef void (GLAPIENTRY * PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar* label); + +#define glGetObjectLabelEXT GLEW_GET_FUN(__glewGetObjectLabelEXT) +#define glLabelObjectEXT GLEW_GET_FUN(__glewLabelObjectEXT) + +#define GLEW_EXT_debug_label GLEW_GET_VAR(__GLEW_EXT_debug_label) + +#endif /* GL_EXT_debug_label */ + +/* -------------------------- GL_EXT_debug_marker -------------------------- */ + +#ifndef GL_EXT_debug_marker +#define GL_EXT_debug_marker 1 + +typedef void (GLAPIENTRY * PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar* marker); +typedef void (GLAPIENTRY * PFNGLPOPGROUPMARKEREXTPROC) (void); +typedef void (GLAPIENTRY * PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar* marker); + +#define glInsertEventMarkerEXT GLEW_GET_FUN(__glewInsertEventMarkerEXT) +#define glPopGroupMarkerEXT GLEW_GET_FUN(__glewPopGroupMarkerEXT) +#define glPushGroupMarkerEXT GLEW_GET_FUN(__glewPushGroupMarkerEXT) + +#define GLEW_EXT_debug_marker GLEW_GET_VAR(__GLEW_EXT_debug_marker) + +#endif /* GL_EXT_debug_marker */ + +/* ------------------------ GL_EXT_depth_bounds_test ----------------------- */ + +#ifndef GL_EXT_depth_bounds_test +#define GL_EXT_depth_bounds_test 1 + +#define GL_DEPTH_BOUNDS_TEST_EXT 0x8890 +#define GL_DEPTH_BOUNDS_EXT 0x8891 + +typedef void (GLAPIENTRY * PFNGLDEPTHBOUNDSEXTPROC) (GLclampd zmin, GLclampd zmax); + +#define glDepthBoundsEXT GLEW_GET_FUN(__glewDepthBoundsEXT) + +#define GLEW_EXT_depth_bounds_test GLEW_GET_VAR(__GLEW_EXT_depth_bounds_test) + +#endif /* GL_EXT_depth_bounds_test */ + +/* --------------------------- GL_EXT_depth_clamp -------------------------- */ + +#ifndef GL_EXT_depth_clamp +#define GL_EXT_depth_clamp 1 + +#define GL_DEPTH_CLAMP_EXT 0x864F + +#define GLEW_EXT_depth_clamp GLEW_GET_VAR(__GLEW_EXT_depth_clamp) + +#endif /* GL_EXT_depth_clamp */ + +/* ----------------------- GL_EXT_direct_state_access ---------------------- */ + +#ifndef GL_EXT_direct_state_access +#define GL_EXT_direct_state_access 1 + +#define GL_PROGRAM_MATRIX_EXT 0x8E2D +#define GL_TRANSPOSE_PROGRAM_MATRIX_EXT 0x8E2E +#define GL_PROGRAM_MATRIX_STACK_DEPTH_EXT 0x8E2F + +typedef void (GLAPIENTRY * PFNGLBINDMULTITEXTUREEXTPROC) (GLenum texunit, GLenum target, GLuint texture); +typedef GLenum (GLAPIENTRY * PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC) (GLuint framebuffer, GLenum target); +typedef void (GLAPIENTRY * PFNGLCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); +typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); +typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLCOPYTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); +typedef void (GLAPIENTRY * PFNGLCOPYTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); +typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index); +typedef void (GLAPIENTRY * PFNGLDISABLECLIENTSTATEIEXTPROC) (GLenum array, GLuint index); +typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC) (GLuint vaobj, GLuint index); +typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYEXTPROC) (GLuint vaobj, GLenum array); +typedef void (GLAPIENTRY * PFNGLENABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLECLIENTSTATEIEXTPROC) (GLenum array, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYATTRIBEXTPROC) (GLuint vaobj, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYEXTPROC) (GLuint vaobj, GLenum array); +typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC) (GLuint framebuffer, GLenum mode); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC) (GLuint framebuffer, GLsizei n, const GLenum* bufs); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERREADBUFFEREXTPROC) (GLuint framebuffer, GLenum mode); +typedef void (GLAPIENTRY * PFNGLGENERATEMULTITEXMIPMAPEXTPROC) (GLenum texunit, GLenum target); +typedef void (GLAPIENTRY * PFNGLGENERATETEXTUREMIPMAPEXTPROC) (GLuint texture, GLenum target); +typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, void *img); +typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, void *img); +typedef void (GLAPIENTRY * PFNGLGETDOUBLEINDEXEDVEXTPROC) (GLenum target, GLuint index, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETDOUBLEI_VEXTPROC) (GLenum pname, GLuint index, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETFLOATINDEXEDVEXTPROC) (GLenum target, GLuint index, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETFLOATI_VEXTPROC) (GLenum pname, GLuint index, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint* param); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, void *pixels); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC) (GLuint buffer, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPOINTERVEXTPROC) (GLuint buffer, GLenum pname, void** params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, void *data); +typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum pname, void *string); +typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMIVEXTPROC) (GLuint program, GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC) (GLuint renderbuffer, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETPOINTERINDEXEDVEXTPROC) (GLenum target, GLuint index, void** params); +typedef void (GLAPIENTRY * PFNGLGETPOINTERI_VEXTPROC) (GLenum pname, GLuint index, void** params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, void *pixels); +typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint* param); +typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINTEGERVEXTPROC) (GLuint vaobj, GLenum pname, GLint* param); +typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC) (GLuint vaobj, GLuint index, GLenum pname, void** param); +typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYPOINTERVEXTPROC) (GLuint vaobj, GLenum pname, void** param); +typedef void * (GLAPIENTRY * PFNGLMAPNAMEDBUFFEREXTPROC) (GLuint buffer, GLenum access); +typedef void * (GLAPIENTRY * PFNGLMAPNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access); +typedef void (GLAPIENTRY * PFNGLMATRIXFRUSTUMEXTPROC) (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f); +typedef void (GLAPIENTRY * PFNGLMATRIXLOADIDENTITYEXTPROC) (GLenum matrixMode); +typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSEDEXTPROC) (GLenum matrixMode, const GLdouble* m); +typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSEFEXTPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXLOADDEXTPROC) (GLenum matrixMode, const GLdouble* m); +typedef void (GLAPIENTRY * PFNGLMATRIXLOADFEXTPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSEDEXTPROC) (GLenum matrixMode, const GLdouble* m); +typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSEFEXTPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXMULTDEXTPROC) (GLenum matrixMode, const GLdouble* m); +typedef void (GLAPIENTRY * PFNGLMATRIXMULTFEXTPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXORTHOEXTPROC) (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f); +typedef void (GLAPIENTRY * PFNGLMATRIXPOPEXTPROC) (GLenum matrixMode); +typedef void (GLAPIENTRY * PFNGLMATRIXPUSHEXTPROC) (GLenum matrixMode); +typedef void (GLAPIENTRY * PFNGLMATRIXROTATEDEXTPROC) (GLenum matrixMode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLMATRIXROTATEFEXTPROC) (GLenum matrixMode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLMATRIXSCALEDEXTPROC) (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLMATRIXSCALEFEXTPROC) (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLMATRIXTRANSLATEDEXTPROC) (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLMATRIXTRANSLATEFEXTPROC) (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLMULTITEXBUFFEREXTPROC) (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDPOINTEREXTPROC) (GLenum texunit, GLint size, GLenum type, GLsizei stride, const void *pointer); +typedef void (GLAPIENTRY * PFNGLMULTITEXENVFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLMULTITEXENVIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLMULTITEXGENDEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble param); +typedef void (GLAPIENTRY * PFNGLMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLdouble* params); +typedef void (GLAPIENTRY * PFNGLMULTITEXGENFEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLMULTITEXGENIEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLuint* params); +typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat* param); +typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* param); +typedef void (GLAPIENTRY * PFNGLMULTITEXRENDERBUFFEREXTPROC) (GLenum texunit, GLenum target, GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLenum usage); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); +typedef void (GLAPIENTRY * PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLdouble* params); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC) (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLint* params); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLuint* params); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint* params); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint* params); +typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum format, GLsizei len, const void *string); +typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC) (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat v0); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint v0); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIEXTPROC) (GLuint program, GLint location, GLuint v0); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask); +typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFEREXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLuint* params); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLfloat* param); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint* param); +typedef void (GLAPIENTRY * PFNGLTEXTURERENDERBUFFEREXTPROC) (GLuint texture, GLenum target, GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); +typedef GLboolean (GLAPIENTRY * PFNGLUNMAPNAMEDBUFFEREXTPROC) (GLuint buffer); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYCOLOROFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYINDEXOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum texunit, GLint size, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYNORMALOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBDIVISOREXTPROC) (GLuint vaobj, GLuint index, GLuint divisor); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset); + +#define glBindMultiTextureEXT GLEW_GET_FUN(__glewBindMultiTextureEXT) +#define glCheckNamedFramebufferStatusEXT GLEW_GET_FUN(__glewCheckNamedFramebufferStatusEXT) +#define glClientAttribDefaultEXT GLEW_GET_FUN(__glewClientAttribDefaultEXT) +#define glCompressedMultiTexImage1DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage1DEXT) +#define glCompressedMultiTexImage2DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage2DEXT) +#define glCompressedMultiTexImage3DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage3DEXT) +#define glCompressedMultiTexSubImage1DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage1DEXT) +#define glCompressedMultiTexSubImage2DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage2DEXT) +#define glCompressedMultiTexSubImage3DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage3DEXT) +#define glCompressedTextureImage1DEXT GLEW_GET_FUN(__glewCompressedTextureImage1DEXT) +#define glCompressedTextureImage2DEXT GLEW_GET_FUN(__glewCompressedTextureImage2DEXT) +#define glCompressedTextureImage3DEXT GLEW_GET_FUN(__glewCompressedTextureImage3DEXT) +#define glCompressedTextureSubImage1DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage1DEXT) +#define glCompressedTextureSubImage2DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage2DEXT) +#define glCompressedTextureSubImage3DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage3DEXT) +#define glCopyMultiTexImage1DEXT GLEW_GET_FUN(__glewCopyMultiTexImage1DEXT) +#define glCopyMultiTexImage2DEXT GLEW_GET_FUN(__glewCopyMultiTexImage2DEXT) +#define glCopyMultiTexSubImage1DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage1DEXT) +#define glCopyMultiTexSubImage2DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage2DEXT) +#define glCopyMultiTexSubImage3DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage3DEXT) +#define glCopyTextureImage1DEXT GLEW_GET_FUN(__glewCopyTextureImage1DEXT) +#define glCopyTextureImage2DEXT GLEW_GET_FUN(__glewCopyTextureImage2DEXT) +#define glCopyTextureSubImage1DEXT GLEW_GET_FUN(__glewCopyTextureSubImage1DEXT) +#define glCopyTextureSubImage2DEXT GLEW_GET_FUN(__glewCopyTextureSubImage2DEXT) +#define glCopyTextureSubImage3DEXT GLEW_GET_FUN(__glewCopyTextureSubImage3DEXT) +#define glDisableClientStateIndexedEXT GLEW_GET_FUN(__glewDisableClientStateIndexedEXT) +#define glDisableClientStateiEXT GLEW_GET_FUN(__glewDisableClientStateiEXT) +#define glDisableVertexArrayAttribEXT GLEW_GET_FUN(__glewDisableVertexArrayAttribEXT) +#define glDisableVertexArrayEXT GLEW_GET_FUN(__glewDisableVertexArrayEXT) +#define glEnableClientStateIndexedEXT GLEW_GET_FUN(__glewEnableClientStateIndexedEXT) +#define glEnableClientStateiEXT GLEW_GET_FUN(__glewEnableClientStateiEXT) +#define glEnableVertexArrayAttribEXT GLEW_GET_FUN(__glewEnableVertexArrayAttribEXT) +#define glEnableVertexArrayEXT GLEW_GET_FUN(__glewEnableVertexArrayEXT) +#define glFlushMappedNamedBufferRangeEXT GLEW_GET_FUN(__glewFlushMappedNamedBufferRangeEXT) +#define glFramebufferDrawBufferEXT GLEW_GET_FUN(__glewFramebufferDrawBufferEXT) +#define glFramebufferDrawBuffersEXT GLEW_GET_FUN(__glewFramebufferDrawBuffersEXT) +#define glFramebufferReadBufferEXT GLEW_GET_FUN(__glewFramebufferReadBufferEXT) +#define glGenerateMultiTexMipmapEXT GLEW_GET_FUN(__glewGenerateMultiTexMipmapEXT) +#define glGenerateTextureMipmapEXT GLEW_GET_FUN(__glewGenerateTextureMipmapEXT) +#define glGetCompressedMultiTexImageEXT GLEW_GET_FUN(__glewGetCompressedMultiTexImageEXT) +#define glGetCompressedTextureImageEXT GLEW_GET_FUN(__glewGetCompressedTextureImageEXT) +#define glGetDoubleIndexedvEXT GLEW_GET_FUN(__glewGetDoubleIndexedvEXT) +#define glGetDoublei_vEXT GLEW_GET_FUN(__glewGetDoublei_vEXT) +#define glGetFloatIndexedvEXT GLEW_GET_FUN(__glewGetFloatIndexedvEXT) +#define glGetFloati_vEXT GLEW_GET_FUN(__glewGetFloati_vEXT) +#define glGetFramebufferParameterivEXT GLEW_GET_FUN(__glewGetFramebufferParameterivEXT) +#define glGetMultiTexEnvfvEXT GLEW_GET_FUN(__glewGetMultiTexEnvfvEXT) +#define glGetMultiTexEnvivEXT GLEW_GET_FUN(__glewGetMultiTexEnvivEXT) +#define glGetMultiTexGendvEXT GLEW_GET_FUN(__glewGetMultiTexGendvEXT) +#define glGetMultiTexGenfvEXT GLEW_GET_FUN(__glewGetMultiTexGenfvEXT) +#define glGetMultiTexGenivEXT GLEW_GET_FUN(__glewGetMultiTexGenivEXT) +#define glGetMultiTexImageEXT GLEW_GET_FUN(__glewGetMultiTexImageEXT) +#define glGetMultiTexLevelParameterfvEXT GLEW_GET_FUN(__glewGetMultiTexLevelParameterfvEXT) +#define glGetMultiTexLevelParameterivEXT GLEW_GET_FUN(__glewGetMultiTexLevelParameterivEXT) +#define glGetMultiTexParameterIivEXT GLEW_GET_FUN(__glewGetMultiTexParameterIivEXT) +#define glGetMultiTexParameterIuivEXT GLEW_GET_FUN(__glewGetMultiTexParameterIuivEXT) +#define glGetMultiTexParameterfvEXT GLEW_GET_FUN(__glewGetMultiTexParameterfvEXT) +#define glGetMultiTexParameterivEXT GLEW_GET_FUN(__glewGetMultiTexParameterivEXT) +#define glGetNamedBufferParameterivEXT GLEW_GET_FUN(__glewGetNamedBufferParameterivEXT) +#define glGetNamedBufferPointervEXT GLEW_GET_FUN(__glewGetNamedBufferPointervEXT) +#define glGetNamedBufferSubDataEXT GLEW_GET_FUN(__glewGetNamedBufferSubDataEXT) +#define glGetNamedFramebufferAttachmentParameterivEXT GLEW_GET_FUN(__glewGetNamedFramebufferAttachmentParameterivEXT) +#define glGetNamedProgramLocalParameterIivEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterIivEXT) +#define glGetNamedProgramLocalParameterIuivEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterIuivEXT) +#define glGetNamedProgramLocalParameterdvEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterdvEXT) +#define glGetNamedProgramLocalParameterfvEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterfvEXT) +#define glGetNamedProgramStringEXT GLEW_GET_FUN(__glewGetNamedProgramStringEXT) +#define glGetNamedProgramivEXT GLEW_GET_FUN(__glewGetNamedProgramivEXT) +#define glGetNamedRenderbufferParameterivEXT GLEW_GET_FUN(__glewGetNamedRenderbufferParameterivEXT) +#define glGetPointerIndexedvEXT GLEW_GET_FUN(__glewGetPointerIndexedvEXT) +#define glGetPointeri_vEXT GLEW_GET_FUN(__glewGetPointeri_vEXT) +#define glGetTextureImageEXT GLEW_GET_FUN(__glewGetTextureImageEXT) +#define glGetTextureLevelParameterfvEXT GLEW_GET_FUN(__glewGetTextureLevelParameterfvEXT) +#define glGetTextureLevelParameterivEXT GLEW_GET_FUN(__glewGetTextureLevelParameterivEXT) +#define glGetTextureParameterIivEXT GLEW_GET_FUN(__glewGetTextureParameterIivEXT) +#define glGetTextureParameterIuivEXT GLEW_GET_FUN(__glewGetTextureParameterIuivEXT) +#define glGetTextureParameterfvEXT GLEW_GET_FUN(__glewGetTextureParameterfvEXT) +#define glGetTextureParameterivEXT GLEW_GET_FUN(__glewGetTextureParameterivEXT) +#define glGetVertexArrayIntegeri_vEXT GLEW_GET_FUN(__glewGetVertexArrayIntegeri_vEXT) +#define glGetVertexArrayIntegervEXT GLEW_GET_FUN(__glewGetVertexArrayIntegervEXT) +#define glGetVertexArrayPointeri_vEXT GLEW_GET_FUN(__glewGetVertexArrayPointeri_vEXT) +#define glGetVertexArrayPointervEXT GLEW_GET_FUN(__glewGetVertexArrayPointervEXT) +#define glMapNamedBufferEXT GLEW_GET_FUN(__glewMapNamedBufferEXT) +#define glMapNamedBufferRangeEXT GLEW_GET_FUN(__glewMapNamedBufferRangeEXT) +#define glMatrixFrustumEXT GLEW_GET_FUN(__glewMatrixFrustumEXT) +#define glMatrixLoadIdentityEXT GLEW_GET_FUN(__glewMatrixLoadIdentityEXT) +#define glMatrixLoadTransposedEXT GLEW_GET_FUN(__glewMatrixLoadTransposedEXT) +#define glMatrixLoadTransposefEXT GLEW_GET_FUN(__glewMatrixLoadTransposefEXT) +#define glMatrixLoaddEXT GLEW_GET_FUN(__glewMatrixLoaddEXT) +#define glMatrixLoadfEXT GLEW_GET_FUN(__glewMatrixLoadfEXT) +#define glMatrixMultTransposedEXT GLEW_GET_FUN(__glewMatrixMultTransposedEXT) +#define glMatrixMultTransposefEXT GLEW_GET_FUN(__glewMatrixMultTransposefEXT) +#define glMatrixMultdEXT GLEW_GET_FUN(__glewMatrixMultdEXT) +#define glMatrixMultfEXT GLEW_GET_FUN(__glewMatrixMultfEXT) +#define glMatrixOrthoEXT GLEW_GET_FUN(__glewMatrixOrthoEXT) +#define glMatrixPopEXT GLEW_GET_FUN(__glewMatrixPopEXT) +#define glMatrixPushEXT GLEW_GET_FUN(__glewMatrixPushEXT) +#define glMatrixRotatedEXT GLEW_GET_FUN(__glewMatrixRotatedEXT) +#define glMatrixRotatefEXT GLEW_GET_FUN(__glewMatrixRotatefEXT) +#define glMatrixScaledEXT GLEW_GET_FUN(__glewMatrixScaledEXT) +#define glMatrixScalefEXT GLEW_GET_FUN(__glewMatrixScalefEXT) +#define glMatrixTranslatedEXT GLEW_GET_FUN(__glewMatrixTranslatedEXT) +#define glMatrixTranslatefEXT GLEW_GET_FUN(__glewMatrixTranslatefEXT) +#define glMultiTexBufferEXT GLEW_GET_FUN(__glewMultiTexBufferEXT) +#define glMultiTexCoordPointerEXT GLEW_GET_FUN(__glewMultiTexCoordPointerEXT) +#define glMultiTexEnvfEXT GLEW_GET_FUN(__glewMultiTexEnvfEXT) +#define glMultiTexEnvfvEXT GLEW_GET_FUN(__glewMultiTexEnvfvEXT) +#define glMultiTexEnviEXT GLEW_GET_FUN(__glewMultiTexEnviEXT) +#define glMultiTexEnvivEXT GLEW_GET_FUN(__glewMultiTexEnvivEXT) +#define glMultiTexGendEXT GLEW_GET_FUN(__glewMultiTexGendEXT) +#define glMultiTexGendvEXT GLEW_GET_FUN(__glewMultiTexGendvEXT) +#define glMultiTexGenfEXT GLEW_GET_FUN(__glewMultiTexGenfEXT) +#define glMultiTexGenfvEXT GLEW_GET_FUN(__glewMultiTexGenfvEXT) +#define glMultiTexGeniEXT GLEW_GET_FUN(__glewMultiTexGeniEXT) +#define glMultiTexGenivEXT GLEW_GET_FUN(__glewMultiTexGenivEXT) +#define glMultiTexImage1DEXT GLEW_GET_FUN(__glewMultiTexImage1DEXT) +#define glMultiTexImage2DEXT GLEW_GET_FUN(__glewMultiTexImage2DEXT) +#define glMultiTexImage3DEXT GLEW_GET_FUN(__glewMultiTexImage3DEXT) +#define glMultiTexParameterIivEXT GLEW_GET_FUN(__glewMultiTexParameterIivEXT) +#define glMultiTexParameterIuivEXT GLEW_GET_FUN(__glewMultiTexParameterIuivEXT) +#define glMultiTexParameterfEXT GLEW_GET_FUN(__glewMultiTexParameterfEXT) +#define glMultiTexParameterfvEXT GLEW_GET_FUN(__glewMultiTexParameterfvEXT) +#define glMultiTexParameteriEXT GLEW_GET_FUN(__glewMultiTexParameteriEXT) +#define glMultiTexParameterivEXT GLEW_GET_FUN(__glewMultiTexParameterivEXT) +#define glMultiTexRenderbufferEXT GLEW_GET_FUN(__glewMultiTexRenderbufferEXT) +#define glMultiTexSubImage1DEXT GLEW_GET_FUN(__glewMultiTexSubImage1DEXT) +#define glMultiTexSubImage2DEXT GLEW_GET_FUN(__glewMultiTexSubImage2DEXT) +#define glMultiTexSubImage3DEXT GLEW_GET_FUN(__glewMultiTexSubImage3DEXT) +#define glNamedBufferDataEXT GLEW_GET_FUN(__glewNamedBufferDataEXT) +#define glNamedBufferSubDataEXT GLEW_GET_FUN(__glewNamedBufferSubDataEXT) +#define glNamedCopyBufferSubDataEXT GLEW_GET_FUN(__glewNamedCopyBufferSubDataEXT) +#define glNamedFramebufferRenderbufferEXT GLEW_GET_FUN(__glewNamedFramebufferRenderbufferEXT) +#define glNamedFramebufferTexture1DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture1DEXT) +#define glNamedFramebufferTexture2DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture2DEXT) +#define glNamedFramebufferTexture3DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture3DEXT) +#define glNamedFramebufferTextureEXT GLEW_GET_FUN(__glewNamedFramebufferTextureEXT) +#define glNamedFramebufferTextureFaceEXT GLEW_GET_FUN(__glewNamedFramebufferTextureFaceEXT) +#define glNamedFramebufferTextureLayerEXT GLEW_GET_FUN(__glewNamedFramebufferTextureLayerEXT) +#define glNamedProgramLocalParameter4dEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4dEXT) +#define glNamedProgramLocalParameter4dvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4dvEXT) +#define glNamedProgramLocalParameter4fEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4fEXT) +#define glNamedProgramLocalParameter4fvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4fvEXT) +#define glNamedProgramLocalParameterI4iEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4iEXT) +#define glNamedProgramLocalParameterI4ivEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4ivEXT) +#define glNamedProgramLocalParameterI4uiEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4uiEXT) +#define glNamedProgramLocalParameterI4uivEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4uivEXT) +#define glNamedProgramLocalParameters4fvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameters4fvEXT) +#define glNamedProgramLocalParametersI4ivEXT GLEW_GET_FUN(__glewNamedProgramLocalParametersI4ivEXT) +#define glNamedProgramLocalParametersI4uivEXT GLEW_GET_FUN(__glewNamedProgramLocalParametersI4uivEXT) +#define glNamedProgramStringEXT GLEW_GET_FUN(__glewNamedProgramStringEXT) +#define glNamedRenderbufferStorageEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageEXT) +#define glNamedRenderbufferStorageMultisampleCoverageEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleCoverageEXT) +#define glNamedRenderbufferStorageMultisampleEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleEXT) +#define glProgramUniform1fEXT GLEW_GET_FUN(__glewProgramUniform1fEXT) +#define glProgramUniform1fvEXT GLEW_GET_FUN(__glewProgramUniform1fvEXT) +#define glProgramUniform1iEXT GLEW_GET_FUN(__glewProgramUniform1iEXT) +#define glProgramUniform1ivEXT GLEW_GET_FUN(__glewProgramUniform1ivEXT) +#define glProgramUniform1uiEXT GLEW_GET_FUN(__glewProgramUniform1uiEXT) +#define glProgramUniform1uivEXT GLEW_GET_FUN(__glewProgramUniform1uivEXT) +#define glProgramUniform2fEXT GLEW_GET_FUN(__glewProgramUniform2fEXT) +#define glProgramUniform2fvEXT GLEW_GET_FUN(__glewProgramUniform2fvEXT) +#define glProgramUniform2iEXT GLEW_GET_FUN(__glewProgramUniform2iEXT) +#define glProgramUniform2ivEXT GLEW_GET_FUN(__glewProgramUniform2ivEXT) +#define glProgramUniform2uiEXT GLEW_GET_FUN(__glewProgramUniform2uiEXT) +#define glProgramUniform2uivEXT GLEW_GET_FUN(__glewProgramUniform2uivEXT) +#define glProgramUniform3fEXT GLEW_GET_FUN(__glewProgramUniform3fEXT) +#define glProgramUniform3fvEXT GLEW_GET_FUN(__glewProgramUniform3fvEXT) +#define glProgramUniform3iEXT GLEW_GET_FUN(__glewProgramUniform3iEXT) +#define glProgramUniform3ivEXT GLEW_GET_FUN(__glewProgramUniform3ivEXT) +#define glProgramUniform3uiEXT GLEW_GET_FUN(__glewProgramUniform3uiEXT) +#define glProgramUniform3uivEXT GLEW_GET_FUN(__glewProgramUniform3uivEXT) +#define glProgramUniform4fEXT GLEW_GET_FUN(__glewProgramUniform4fEXT) +#define glProgramUniform4fvEXT GLEW_GET_FUN(__glewProgramUniform4fvEXT) +#define glProgramUniform4iEXT GLEW_GET_FUN(__glewProgramUniform4iEXT) +#define glProgramUniform4ivEXT GLEW_GET_FUN(__glewProgramUniform4ivEXT) +#define glProgramUniform4uiEXT GLEW_GET_FUN(__glewProgramUniform4uiEXT) +#define glProgramUniform4uivEXT GLEW_GET_FUN(__glewProgramUniform4uivEXT) +#define glProgramUniformMatrix2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2fvEXT) +#define glProgramUniformMatrix2x3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x3fvEXT) +#define glProgramUniformMatrix2x4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x4fvEXT) +#define glProgramUniformMatrix3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3fvEXT) +#define glProgramUniformMatrix3x2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x2fvEXT) +#define glProgramUniformMatrix3x4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x4fvEXT) +#define glProgramUniformMatrix4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4fvEXT) +#define glProgramUniformMatrix4x2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x2fvEXT) +#define glProgramUniformMatrix4x3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x3fvEXT) +#define glPushClientAttribDefaultEXT GLEW_GET_FUN(__glewPushClientAttribDefaultEXT) +#define glTextureBufferEXT GLEW_GET_FUN(__glewTextureBufferEXT) +#define glTextureImage1DEXT GLEW_GET_FUN(__glewTextureImage1DEXT) +#define glTextureImage2DEXT GLEW_GET_FUN(__glewTextureImage2DEXT) +#define glTextureImage3DEXT GLEW_GET_FUN(__glewTextureImage3DEXT) +#define glTextureParameterIivEXT GLEW_GET_FUN(__glewTextureParameterIivEXT) +#define glTextureParameterIuivEXT GLEW_GET_FUN(__glewTextureParameterIuivEXT) +#define glTextureParameterfEXT GLEW_GET_FUN(__glewTextureParameterfEXT) +#define glTextureParameterfvEXT GLEW_GET_FUN(__glewTextureParameterfvEXT) +#define glTextureParameteriEXT GLEW_GET_FUN(__glewTextureParameteriEXT) +#define glTextureParameterivEXT GLEW_GET_FUN(__glewTextureParameterivEXT) +#define glTextureRenderbufferEXT GLEW_GET_FUN(__glewTextureRenderbufferEXT) +#define glTextureSubImage1DEXT GLEW_GET_FUN(__glewTextureSubImage1DEXT) +#define glTextureSubImage2DEXT GLEW_GET_FUN(__glewTextureSubImage2DEXT) +#define glTextureSubImage3DEXT GLEW_GET_FUN(__glewTextureSubImage3DEXT) +#define glUnmapNamedBufferEXT GLEW_GET_FUN(__glewUnmapNamedBufferEXT) +#define glVertexArrayColorOffsetEXT GLEW_GET_FUN(__glewVertexArrayColorOffsetEXT) +#define glVertexArrayEdgeFlagOffsetEXT GLEW_GET_FUN(__glewVertexArrayEdgeFlagOffsetEXT) +#define glVertexArrayFogCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayFogCoordOffsetEXT) +#define glVertexArrayIndexOffsetEXT GLEW_GET_FUN(__glewVertexArrayIndexOffsetEXT) +#define glVertexArrayMultiTexCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayMultiTexCoordOffsetEXT) +#define glVertexArrayNormalOffsetEXT GLEW_GET_FUN(__glewVertexArrayNormalOffsetEXT) +#define glVertexArraySecondaryColorOffsetEXT GLEW_GET_FUN(__glewVertexArraySecondaryColorOffsetEXT) +#define glVertexArrayTexCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayTexCoordOffsetEXT) +#define glVertexArrayVertexAttribDivisorEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribDivisorEXT) +#define glVertexArrayVertexAttribIOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribIOffsetEXT) +#define glVertexArrayVertexAttribOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribOffsetEXT) +#define glVertexArrayVertexOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexOffsetEXT) + +#define GLEW_EXT_direct_state_access GLEW_GET_VAR(__GLEW_EXT_direct_state_access) + +#endif /* GL_EXT_direct_state_access */ + +/* ----------------------- GL_EXT_discard_framebuffer ---------------------- */ + +#ifndef GL_EXT_discard_framebuffer +#define GL_EXT_discard_framebuffer 1 + +#define GL_COLOR_EXT 0x1800 +#define GL_DEPTH_EXT 0x1801 +#define GL_STENCIL_EXT 0x1802 + +typedef void (GLAPIENTRY * PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum* attachments); + +#define glDiscardFramebufferEXT GLEW_GET_FUN(__glewDiscardFramebufferEXT) + +#define GLEW_EXT_discard_framebuffer GLEW_GET_VAR(__GLEW_EXT_discard_framebuffer) + +#endif /* GL_EXT_discard_framebuffer */ + +/* ---------------------- GL_EXT_disjoint_timer_query ---------------------- */ + +#ifndef GL_EXT_disjoint_timer_query +#define GL_EXT_disjoint_timer_query 1 + +#define GL_QUERY_COUNTER_BITS_EXT 0x8864 +#define GL_CURRENT_QUERY_EXT 0x8865 +#define GL_QUERY_RESULT_EXT 0x8866 +#define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867 +#define GL_TIME_ELAPSED_EXT 0x88BF +#define GL_TIMESTAMP_EXT 0x8E28 +#define GL_GPU_DISJOINT_EXT 0x8FBB + +typedef void (GLAPIENTRY * PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id); +typedef void (GLAPIENTRY * PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint* ids); +typedef void (GLAPIENTRY * PFNGLENDQUERYEXTPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLGETINTEGER64VEXTPROC) (GLenum pname, GLint64* data); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVEXTPROC) (GLuint id, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISQUERYEXTPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLQUERYCOUNTEREXTPROC) (GLuint id, GLenum target); + +#define glBeginQueryEXT GLEW_GET_FUN(__glewBeginQueryEXT) +#define glDeleteQueriesEXT GLEW_GET_FUN(__glewDeleteQueriesEXT) +#define glEndQueryEXT GLEW_GET_FUN(__glewEndQueryEXT) +#define glGenQueriesEXT GLEW_GET_FUN(__glewGenQueriesEXT) +#define glGetInteger64vEXT GLEW_GET_FUN(__glewGetInteger64vEXT) +#define glGetQueryObjectivEXT GLEW_GET_FUN(__glewGetQueryObjectivEXT) +#define glGetQueryObjectuivEXT GLEW_GET_FUN(__glewGetQueryObjectuivEXT) +#define glGetQueryivEXT GLEW_GET_FUN(__glewGetQueryivEXT) +#define glIsQueryEXT GLEW_GET_FUN(__glewIsQueryEXT) +#define glQueryCounterEXT GLEW_GET_FUN(__glewQueryCounterEXT) + +#define GLEW_EXT_disjoint_timer_query GLEW_GET_VAR(__GLEW_EXT_disjoint_timer_query) + +#endif /* GL_EXT_disjoint_timer_query */ + +/* -------------------------- GL_EXT_draw_buffers -------------------------- */ + +#ifndef GL_EXT_draw_buffers +#define GL_EXT_draw_buffers 1 + +#define GL_MAX_DRAW_BUFFERS_EXT 0x8824 +#define GL_DRAW_BUFFER0_EXT 0x8825 +#define GL_DRAW_BUFFER1_EXT 0x8826 +#define GL_DRAW_BUFFER2_EXT 0x8827 +#define GL_DRAW_BUFFER3_EXT 0x8828 +#define GL_DRAW_BUFFER4_EXT 0x8829 +#define GL_DRAW_BUFFER5_EXT 0x882A +#define GL_DRAW_BUFFER6_EXT 0x882B +#define GL_DRAW_BUFFER7_EXT 0x882C +#define GL_DRAW_BUFFER8_EXT 0x882D +#define GL_DRAW_BUFFER9_EXT 0x882E +#define GL_DRAW_BUFFER10_EXT 0x882F +#define GL_DRAW_BUFFER11_EXT 0x8830 +#define GL_DRAW_BUFFER12_EXT 0x8831 +#define GL_DRAW_BUFFER13_EXT 0x8832 +#define GL_DRAW_BUFFER14_EXT 0x8833 +#define GL_DRAW_BUFFER15_EXT 0x8834 +#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF +#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0 +#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1 +#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2 +#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3 +#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4 +#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5 +#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6 +#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7 +#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8 +#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9 +#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA +#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB +#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC +#define GL_COLOR_ATTACHMENT13_EXT 0x8CED +#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE +#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF + +typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSEXTPROC) (GLsizei n, const GLenum* bufs); + +#define glDrawBuffersEXT GLEW_GET_FUN(__glewDrawBuffersEXT) + +#define GLEW_EXT_draw_buffers GLEW_GET_VAR(__GLEW_EXT_draw_buffers) + +#endif /* GL_EXT_draw_buffers */ + +/* -------------------------- GL_EXT_draw_buffers2 ------------------------- */ + +#ifndef GL_EXT_draw_buffers2 +#define GL_EXT_draw_buffers2 1 + +typedef void (GLAPIENTRY * PFNGLCOLORMASKINDEXEDEXTPROC) (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); +typedef void (GLAPIENTRY * PFNGLDISABLEINDEXEDEXTPROC) (GLenum target, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEINDEXEDEXTPROC) (GLenum target, GLuint index); +typedef void (GLAPIENTRY * PFNGLGETBOOLEANINDEXEDVEXTPROC) (GLenum value, GLuint index, GLboolean* data); +typedef void (GLAPIENTRY * PFNGLGETINTEGERINDEXEDVEXTPROC) (GLenum value, GLuint index, GLint* data); +typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDINDEXEDEXTPROC) (GLenum target, GLuint index); + +#define glColorMaskIndexedEXT GLEW_GET_FUN(__glewColorMaskIndexedEXT) +#define glDisableIndexedEXT GLEW_GET_FUN(__glewDisableIndexedEXT) +#define glEnableIndexedEXT GLEW_GET_FUN(__glewEnableIndexedEXT) +#define glGetBooleanIndexedvEXT GLEW_GET_FUN(__glewGetBooleanIndexedvEXT) +#define glGetIntegerIndexedvEXT GLEW_GET_FUN(__glewGetIntegerIndexedvEXT) +#define glIsEnabledIndexedEXT GLEW_GET_FUN(__glewIsEnabledIndexedEXT) + +#define GLEW_EXT_draw_buffers2 GLEW_GET_VAR(__GLEW_EXT_draw_buffers2) + +#endif /* GL_EXT_draw_buffers2 */ + +/* ---------------------- GL_EXT_draw_buffers_indexed ---------------------- */ + +#ifndef GL_EXT_draw_buffers_indexed +#define GL_EXT_draw_buffers_indexed 1 + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIEXTPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIEXTPROC) (GLuint buf, GLenum mode); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIEXTPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCIEXTPROC) (GLuint buf, GLenum src, GLenum dst); +typedef void (GLAPIENTRY * PFNGLCOLORMASKIEXTPROC) (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); +typedef void (GLAPIENTRY * PFNGLDISABLEIEXTPROC) (GLenum target, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEIEXTPROC) (GLenum target, GLuint index); +typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDIEXTPROC) (GLenum target, GLuint index); + +#define glBlendEquationSeparateiEXT GLEW_GET_FUN(__glewBlendEquationSeparateiEXT) +#define glBlendEquationiEXT GLEW_GET_FUN(__glewBlendEquationiEXT) +#define glBlendFuncSeparateiEXT GLEW_GET_FUN(__glewBlendFuncSeparateiEXT) +#define glBlendFunciEXT GLEW_GET_FUN(__glewBlendFunciEXT) +#define glColorMaskiEXT GLEW_GET_FUN(__glewColorMaskiEXT) +#define glDisableiEXT GLEW_GET_FUN(__glewDisableiEXT) +#define glEnableiEXT GLEW_GET_FUN(__glewEnableiEXT) +#define glIsEnablediEXT GLEW_GET_FUN(__glewIsEnablediEXT) + +#define GLEW_EXT_draw_buffers_indexed GLEW_GET_VAR(__GLEW_EXT_draw_buffers_indexed) + +#endif /* GL_EXT_draw_buffers_indexed */ + +/* -------------------- GL_EXT_draw_elements_base_vertex ------------------- */ + +#ifndef GL_EXT_draw_elements_base_vertex +#define GL_EXT_draw_elements_base_vertex 1 + +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSBASEVERTEXEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex); +typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSBASEVERTEXEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSBASEVERTEXEXTPROC) (GLenum mode, const GLsizei* count, GLenum type, const void *const *indices, GLsizei primcount, const GLint *basevertex); + +#define glDrawElementsBaseVertexEXT GLEW_GET_FUN(__glewDrawElementsBaseVertexEXT) +#define glDrawElementsInstancedBaseVertexEXT GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertexEXT) +#define glDrawRangeElementsBaseVertexEXT GLEW_GET_FUN(__glewDrawRangeElementsBaseVertexEXT) +#define glMultiDrawElementsBaseVertexEXT GLEW_GET_FUN(__glewMultiDrawElementsBaseVertexEXT) + +#define GLEW_EXT_draw_elements_base_vertex GLEW_GET_VAR(__GLEW_EXT_draw_elements_base_vertex) + +#endif /* GL_EXT_draw_elements_base_vertex */ + +/* ------------------------- GL_EXT_draw_instanced ------------------------- */ + +#ifndef GL_EXT_draw_instanced +#define GL_EXT_draw_instanced 1 + +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDEXTPROC) (GLenum mode, GLint start, GLsizei count, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); + +#define glDrawArraysInstancedEXT GLEW_GET_FUN(__glewDrawArraysInstancedEXT) +#define glDrawElementsInstancedEXT GLEW_GET_FUN(__glewDrawElementsInstancedEXT) + +#define GLEW_EXT_draw_instanced GLEW_GET_VAR(__GLEW_EXT_draw_instanced) + +#endif /* GL_EXT_draw_instanced */ + +/* ----------------------- GL_EXT_draw_range_elements ---------------------- */ + +#ifndef GL_EXT_draw_range_elements +#define GL_EXT_draw_range_elements 1 + +#define GL_MAX_ELEMENTS_VERTICES_EXT 0x80E8 +#define GL_MAX_ELEMENTS_INDICES_EXT 0x80E9 + +typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices); + +#define glDrawRangeElementsEXT GLEW_GET_FUN(__glewDrawRangeElementsEXT) + +#define GLEW_EXT_draw_range_elements GLEW_GET_VAR(__GLEW_EXT_draw_range_elements) + +#endif /* GL_EXT_draw_range_elements */ + +/* --------------------- GL_EXT_draw_transform_feedback -------------------- */ + +#ifndef GL_EXT_draw_transform_feedback +#define GL_EXT_draw_transform_feedback 1 + +typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKEXTPROC) (GLenum mode, GLuint id); +typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDEXTPROC) (GLenum mode, GLuint id, GLsizei instancecount); + +#define glDrawTransformFeedbackEXT GLEW_GET_FUN(__glewDrawTransformFeedbackEXT) +#define glDrawTransformFeedbackInstancedEXT GLEW_GET_FUN(__glewDrawTransformFeedbackInstancedEXT) + +#define GLEW_EXT_draw_transform_feedback GLEW_GET_VAR(__GLEW_EXT_draw_transform_feedback) + +#endif /* GL_EXT_draw_transform_feedback */ + +/* ------------------------- GL_EXT_external_buffer ------------------------ */ + +#ifndef GL_EXT_external_buffer +#define GL_EXT_external_buffer 1 + +typedef void* GLeglClientBufferEXT; + +typedef void (GLAPIENTRY * PFNGLBUFFERSTORAGEEXTERNALEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSTORAGEEXTERNALEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags); + +#define glBufferStorageExternalEXT GLEW_GET_FUN(__glewBufferStorageExternalEXT) +#define glNamedBufferStorageExternalEXT GLEW_GET_FUN(__glewNamedBufferStorageExternalEXT) + +#define GLEW_EXT_external_buffer GLEW_GET_VAR(__GLEW_EXT_external_buffer) + +#endif /* GL_EXT_external_buffer */ + +/* --------------------------- GL_EXT_float_blend -------------------------- */ + +#ifndef GL_EXT_float_blend +#define GL_EXT_float_blend 1 + +#define GLEW_EXT_float_blend GLEW_GET_VAR(__GLEW_EXT_float_blend) + +#endif /* GL_EXT_float_blend */ + +/* ---------------------------- GL_EXT_fog_coord --------------------------- */ + +#ifndef GL_EXT_fog_coord +#define GL_EXT_fog_coord 1 + +#define GL_FOG_COORDINATE_SOURCE_EXT 0x8450 +#define GL_FOG_COORDINATE_EXT 0x8451 +#define GL_FRAGMENT_DEPTH_EXT 0x8452 +#define GL_CURRENT_FOG_COORDINATE_EXT 0x8453 +#define GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454 +#define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455 +#define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456 +#define GL_FOG_COORDINATE_ARRAY_EXT 0x8457 + +typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTEREXTPROC) (GLenum type, GLsizei stride, const void *pointer); +typedef void (GLAPIENTRY * PFNGLFOGCOORDDEXTPROC) (GLdouble coord); +typedef void (GLAPIENTRY * PFNGLFOGCOORDDVEXTPROC) (const GLdouble *coord); +typedef void (GLAPIENTRY * PFNGLFOGCOORDFEXTPROC) (GLfloat coord); +typedef void (GLAPIENTRY * PFNGLFOGCOORDFVEXTPROC) (const GLfloat *coord); + +#define glFogCoordPointerEXT GLEW_GET_FUN(__glewFogCoordPointerEXT) +#define glFogCoorddEXT GLEW_GET_FUN(__glewFogCoorddEXT) +#define glFogCoorddvEXT GLEW_GET_FUN(__glewFogCoorddvEXT) +#define glFogCoordfEXT GLEW_GET_FUN(__glewFogCoordfEXT) +#define glFogCoordfvEXT GLEW_GET_FUN(__glewFogCoordfvEXT) + +#define GLEW_EXT_fog_coord GLEW_GET_VAR(__GLEW_EXT_fog_coord) + +#endif /* GL_EXT_fog_coord */ + +/* --------------------------- GL_EXT_frag_depth --------------------------- */ + +#ifndef GL_EXT_frag_depth +#define GL_EXT_frag_depth 1 + +#define GLEW_EXT_frag_depth GLEW_GET_VAR(__GLEW_EXT_frag_depth) + +#endif /* GL_EXT_frag_depth */ + +/* ------------------------ GL_EXT_fragment_lighting ----------------------- */ + +#ifndef GL_EXT_fragment_lighting +#define GL_EXT_fragment_lighting 1 + +#define GL_FRAGMENT_LIGHTING_EXT 0x8400 +#define GL_FRAGMENT_COLOR_MATERIAL_EXT 0x8401 +#define GL_FRAGMENT_COLOR_MATERIAL_FACE_EXT 0x8402 +#define GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_EXT 0x8403 +#define GL_MAX_FRAGMENT_LIGHTS_EXT 0x8404 +#define GL_MAX_ACTIVE_LIGHTS_EXT 0x8405 +#define GL_CURRENT_RASTER_NORMAL_EXT 0x8406 +#define GL_LIGHT_ENV_MODE_EXT 0x8407 +#define GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_EXT 0x8408 +#define GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_EXT 0x8409 +#define GL_FRAGMENT_LIGHT_MODEL_AMBIENT_EXT 0x840A +#define GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_EXT 0x840B +#define GL_FRAGMENT_LIGHT0_EXT 0x840C +#define GL_FRAGMENT_LIGHT7_EXT 0x8413 + +typedef void (GLAPIENTRY * PFNGLFRAGMENTCOLORMATERIALEXTPROC) (GLenum face, GLenum mode); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFEXTPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFVEXTPROC) (GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIEXTPROC) (GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIVEXTPROC) (GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFEXTPROC) (GLenum light, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFVEXTPROC) (GLenum light, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIEXTPROC) (GLenum light, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIVEXTPROC) (GLenum light, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFEXTPROC) (GLenum face, GLenum pname, const GLfloat param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFVEXTPROC) (GLenum face, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIEXTPROC) (GLenum face, GLenum pname, const GLint param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIVEXTPROC) (GLenum face, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTFVEXTPROC) (GLenum light, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTIVEXTPROC) (GLenum light, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALFVEXTPROC) (GLenum face, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALIVEXTPROC) (GLenum face, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLLIGHTENVIEXTPROC) (GLenum pname, GLint param); + +#define glFragmentColorMaterialEXT GLEW_GET_FUN(__glewFragmentColorMaterialEXT) +#define glFragmentLightModelfEXT GLEW_GET_FUN(__glewFragmentLightModelfEXT) +#define glFragmentLightModelfvEXT GLEW_GET_FUN(__glewFragmentLightModelfvEXT) +#define glFragmentLightModeliEXT GLEW_GET_FUN(__glewFragmentLightModeliEXT) +#define glFragmentLightModelivEXT GLEW_GET_FUN(__glewFragmentLightModelivEXT) +#define glFragmentLightfEXT GLEW_GET_FUN(__glewFragmentLightfEXT) +#define glFragmentLightfvEXT GLEW_GET_FUN(__glewFragmentLightfvEXT) +#define glFragmentLightiEXT GLEW_GET_FUN(__glewFragmentLightiEXT) +#define glFragmentLightivEXT GLEW_GET_FUN(__glewFragmentLightivEXT) +#define glFragmentMaterialfEXT GLEW_GET_FUN(__glewFragmentMaterialfEXT) +#define glFragmentMaterialfvEXT GLEW_GET_FUN(__glewFragmentMaterialfvEXT) +#define glFragmentMaterialiEXT GLEW_GET_FUN(__glewFragmentMaterialiEXT) +#define glFragmentMaterialivEXT GLEW_GET_FUN(__glewFragmentMaterialivEXT) +#define glGetFragmentLightfvEXT GLEW_GET_FUN(__glewGetFragmentLightfvEXT) +#define glGetFragmentLightivEXT GLEW_GET_FUN(__glewGetFragmentLightivEXT) +#define glGetFragmentMaterialfvEXT GLEW_GET_FUN(__glewGetFragmentMaterialfvEXT) +#define glGetFragmentMaterialivEXT GLEW_GET_FUN(__glewGetFragmentMaterialivEXT) +#define glLightEnviEXT GLEW_GET_FUN(__glewLightEnviEXT) + +#define GLEW_EXT_fragment_lighting GLEW_GET_VAR(__GLEW_EXT_fragment_lighting) + +#endif /* GL_EXT_fragment_lighting */ + +/* ------------------------ GL_EXT_framebuffer_blit ------------------------ */ + +#ifndef GL_EXT_framebuffer_blit +#define GL_EXT_framebuffer_blit 1 + +#define GL_DRAW_FRAMEBUFFER_BINDING_EXT 0x8CA6 +#define GL_READ_FRAMEBUFFER_EXT 0x8CA8 +#define GL_DRAW_FRAMEBUFFER_EXT 0x8CA9 +#define GL_READ_FRAMEBUFFER_BINDING_EXT 0x8CAA + +typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFEREXTPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); + +#define glBlitFramebufferEXT GLEW_GET_FUN(__glewBlitFramebufferEXT) + +#define GLEW_EXT_framebuffer_blit GLEW_GET_VAR(__GLEW_EXT_framebuffer_blit) + +#endif /* GL_EXT_framebuffer_blit */ + +/* --------------------- GL_EXT_framebuffer_multisample -------------------- */ + +#ifndef GL_EXT_framebuffer_multisample +#define GL_EXT_framebuffer_multisample 1 + +#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56 +#define GL_MAX_SAMPLES_EXT 0x8D57 + +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); + +#define glRenderbufferStorageMultisampleEXT GLEW_GET_FUN(__glewRenderbufferStorageMultisampleEXT) + +#define GLEW_EXT_framebuffer_multisample GLEW_GET_VAR(__GLEW_EXT_framebuffer_multisample) + +#endif /* GL_EXT_framebuffer_multisample */ + +/* --------------- GL_EXT_framebuffer_multisample_blit_scaled -------------- */ + +#ifndef GL_EXT_framebuffer_multisample_blit_scaled +#define GL_EXT_framebuffer_multisample_blit_scaled 1 + +#define GL_SCALED_RESOLVE_FASTEST_EXT 0x90BA +#define GL_SCALED_RESOLVE_NICEST_EXT 0x90BB + +#define GLEW_EXT_framebuffer_multisample_blit_scaled GLEW_GET_VAR(__GLEW_EXT_framebuffer_multisample_blit_scaled) + +#endif /* GL_EXT_framebuffer_multisample_blit_scaled */ + +/* ----------------------- GL_EXT_framebuffer_object ----------------------- */ + +#ifndef GL_EXT_framebuffer_object +#define GL_EXT_framebuffer_object 1 + +#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506 +#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8 +#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6 +#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4 +#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5 +#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6 +#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7 +#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9 +#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA +#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB +#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC +#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD +#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF +#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0 +#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1 +#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2 +#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3 +#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4 +#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5 +#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6 +#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7 +#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8 +#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9 +#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA +#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB +#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC +#define GL_COLOR_ATTACHMENT13_EXT 0x8CED +#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE +#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF +#define GL_DEPTH_ATTACHMENT_EXT 0x8D00 +#define GL_STENCIL_ATTACHMENT_EXT 0x8D20 +#define GL_FRAMEBUFFER_EXT 0x8D40 +#define GL_RENDERBUFFER_EXT 0x8D41 +#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42 +#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43 +#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44 +#define GL_STENCIL_INDEX1_EXT 0x8D46 +#define GL_STENCIL_INDEX4_EXT 0x8D47 +#define GL_STENCIL_INDEX8_EXT 0x8D48 +#define GL_STENCIL_INDEX16_EXT 0x8D49 +#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50 +#define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51 +#define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52 +#define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53 +#define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54 +#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55 + +typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFEREXTPROC) (GLenum target, GLuint framebuffer); +typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFEREXTPROC) (GLenum target, GLuint renderbuffer); +typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSEXTPROC) (GLsizei n, const GLuint* framebuffers); +typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSEXTPROC) (GLsizei n, const GLuint* renderbuffers); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE1DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); +typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSEXTPROC) (GLsizei n, GLuint* framebuffers); +typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSEXTPROC) (GLsizei n, GLuint* renderbuffers); +typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPEXTPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFEREXTPROC) (GLuint framebuffer); +typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFEREXTPROC) (GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); + +#define glBindFramebufferEXT GLEW_GET_FUN(__glewBindFramebufferEXT) +#define glBindRenderbufferEXT GLEW_GET_FUN(__glewBindRenderbufferEXT) +#define glCheckFramebufferStatusEXT GLEW_GET_FUN(__glewCheckFramebufferStatusEXT) +#define glDeleteFramebuffersEXT GLEW_GET_FUN(__glewDeleteFramebuffersEXT) +#define glDeleteRenderbuffersEXT GLEW_GET_FUN(__glewDeleteRenderbuffersEXT) +#define glFramebufferRenderbufferEXT GLEW_GET_FUN(__glewFramebufferRenderbufferEXT) +#define glFramebufferTexture1DEXT GLEW_GET_FUN(__glewFramebufferTexture1DEXT) +#define glFramebufferTexture2DEXT GLEW_GET_FUN(__glewFramebufferTexture2DEXT) +#define glFramebufferTexture3DEXT GLEW_GET_FUN(__glewFramebufferTexture3DEXT) +#define glGenFramebuffersEXT GLEW_GET_FUN(__glewGenFramebuffersEXT) +#define glGenRenderbuffersEXT GLEW_GET_FUN(__glewGenRenderbuffersEXT) +#define glGenerateMipmapEXT GLEW_GET_FUN(__glewGenerateMipmapEXT) +#define glGetFramebufferAttachmentParameterivEXT GLEW_GET_FUN(__glewGetFramebufferAttachmentParameterivEXT) +#define glGetRenderbufferParameterivEXT GLEW_GET_FUN(__glewGetRenderbufferParameterivEXT) +#define glIsFramebufferEXT GLEW_GET_FUN(__glewIsFramebufferEXT) +#define glIsRenderbufferEXT GLEW_GET_FUN(__glewIsRenderbufferEXT) +#define glRenderbufferStorageEXT GLEW_GET_FUN(__glewRenderbufferStorageEXT) + +#define GLEW_EXT_framebuffer_object GLEW_GET_VAR(__GLEW_EXT_framebuffer_object) + +#endif /* GL_EXT_framebuffer_object */ + +/* ------------------------ GL_EXT_framebuffer_sRGB ------------------------ */ + +#ifndef GL_EXT_framebuffer_sRGB +#define GL_EXT_framebuffer_sRGB 1 + +#define GL_FRAMEBUFFER_SRGB_EXT 0x8DB9 +#define GL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x8DBA + +#define GLEW_EXT_framebuffer_sRGB GLEW_GET_VAR(__GLEW_EXT_framebuffer_sRGB) + +#endif /* GL_EXT_framebuffer_sRGB */ + +/* ----------------------- GL_EXT_geometry_point_size ---------------------- */ + +#ifndef GL_EXT_geometry_point_size +#define GL_EXT_geometry_point_size 1 + +#define GL_GEOMETRY_SHADER_BIT_EXT 0x00000004 +#define GL_LINES_ADJACENCY_EXT 0xA +#define GL_LINE_STRIP_ADJACENCY_EXT 0xB +#define GL_TRIANGLES_ADJACENCY_EXT 0xC +#define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD +#define GL_LAYER_PROVOKING_VERTEX_EXT 0x825E +#define GL_UNDEFINED_VERTEX_EXT 0x8260 +#define GL_GEOMETRY_SHADER_INVOCATIONS_EXT 0x887F +#define GL_GEOMETRY_LINKED_VERTICES_OUT_EXT 0x8916 +#define GL_GEOMETRY_LINKED_INPUT_TYPE_EXT 0x8917 +#define GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT 0x8918 +#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT 0x8A2C +#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8A32 +#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29 +#define GL_PRIMITIVES_GENERATED_EXT 0x8C87 +#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8 +#define GL_GEOMETRY_SHADER_EXT 0x8DD9 +#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF +#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0 +#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1 +#define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D +#define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E +#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT 0x8E5A +#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT 0x90CD +#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT 0x90D7 +#define GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT 0x9123 +#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT 0x9124 +#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT 0x92CF +#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT 0x92D5 +#define GL_REFERENCED_BY_GEOMETRY_SHADER_EXT 0x9309 +#define GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT 0x9312 +#define GL_MAX_FRAMEBUFFER_LAYERS_EXT 0x9317 + +#define GLEW_EXT_geometry_point_size GLEW_GET_VAR(__GLEW_EXT_geometry_point_size) + +#endif /* GL_EXT_geometry_point_size */ + +/* ------------------------- GL_EXT_geometry_shader ------------------------ */ + +#ifndef GL_EXT_geometry_shader +#define GL_EXT_geometry_shader 1 + +#define GL_GEOMETRY_SHADER_BIT_EXT 0x00000004 +#define GL_LINES_ADJACENCY_EXT 0xA +#define GL_LINE_STRIP_ADJACENCY_EXT 0xB +#define GL_TRIANGLES_ADJACENCY_EXT 0xC +#define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD +#define GL_LAYER_PROVOKING_VERTEX_EXT 0x825E +#define GL_UNDEFINED_VERTEX_EXT 0x8260 +#define GL_GEOMETRY_SHADER_INVOCATIONS_EXT 0x887F +#define GL_GEOMETRY_LINKED_VERTICES_OUT_EXT 0x8916 +#define GL_GEOMETRY_LINKED_INPUT_TYPE_EXT 0x8917 +#define GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT 0x8918 +#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT 0x8A2C +#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8A32 +#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29 +#define GL_PRIMITIVES_GENERATED_EXT 0x8C87 +#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8 +#define GL_GEOMETRY_SHADER_EXT 0x8DD9 +#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF +#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0 +#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1 +#define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D +#define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E +#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT 0x8E5A +#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT 0x90CD +#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT 0x90D7 +#define GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT 0x9123 +#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT 0x9124 +#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT 0x92CF +#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT 0x92D5 +#define GL_REFERENCED_BY_GEOMETRY_SHADER_EXT 0x9309 +#define GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT 0x9312 +#define GL_MAX_FRAMEBUFFER_LAYERS_EXT 0x9317 + +#define GLEW_EXT_geometry_shader GLEW_GET_VAR(__GLEW_EXT_geometry_shader) + +#endif /* GL_EXT_geometry_shader */ + +/* ------------------------ GL_EXT_geometry_shader4 ------------------------ */ + +#ifndef GL_EXT_geometry_shader4 +#define GL_EXT_geometry_shader4 1 + +#define GL_LINES_ADJACENCY_EXT 0xA +#define GL_LINE_STRIP_ADJACENCY_EXT 0xB +#define GL_TRIANGLES_ADJACENCY_EXT 0xC +#define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD +#define GL_PROGRAM_POINT_SIZE_EXT 0x8642 +#define GL_MAX_VARYING_COMPONENTS_EXT 0x8B4B +#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT 0x8CD4 +#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT 0x8DA9 +#define GL_GEOMETRY_SHADER_EXT 0x8DD9 +#define GL_GEOMETRY_VERTICES_OUT_EXT 0x8DDA +#define GL_GEOMETRY_INPUT_TYPE_EXT 0x8DDB +#define GL_GEOMETRY_OUTPUT_TYPE_EXT 0x8DDC +#define GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT 0x8DDD +#define GL_MAX_VERTEX_VARYING_COMPONENTS_EXT 0x8DDE +#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF +#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0 +#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value); + +#define glFramebufferTextureEXT GLEW_GET_FUN(__glewFramebufferTextureEXT) +#define glFramebufferTextureFaceEXT GLEW_GET_FUN(__glewFramebufferTextureFaceEXT) +#define glProgramParameteriEXT GLEW_GET_FUN(__glewProgramParameteriEXT) + +#define GLEW_EXT_geometry_shader4 GLEW_GET_VAR(__GLEW_EXT_geometry_shader4) + +#endif /* GL_EXT_geometry_shader4 */ + +/* --------------------- GL_EXT_gpu_program_parameters --------------------- */ + +#ifndef GL_EXT_gpu_program_parameters +#define GL_EXT_gpu_program_parameters 1 + +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat* params); + +#define glProgramEnvParameters4fvEXT GLEW_GET_FUN(__glewProgramEnvParameters4fvEXT) +#define glProgramLocalParameters4fvEXT GLEW_GET_FUN(__glewProgramLocalParameters4fvEXT) + +#define GLEW_EXT_gpu_program_parameters GLEW_GET_VAR(__GLEW_EXT_gpu_program_parameters) + +#endif /* GL_EXT_gpu_program_parameters */ + +/* --------------------------- GL_EXT_gpu_shader4 -------------------------- */ + +#ifndef GL_EXT_gpu_shader4 +#define GL_EXT_gpu_shader4 1 + +#define GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT 0x88FD +#define GL_SAMPLER_1D_ARRAY_EXT 0x8DC0 +#define GL_SAMPLER_2D_ARRAY_EXT 0x8DC1 +#define GL_SAMPLER_BUFFER_EXT 0x8DC2 +#define GL_SAMPLER_1D_ARRAY_SHADOW_EXT 0x8DC3 +#define GL_SAMPLER_2D_ARRAY_SHADOW_EXT 0x8DC4 +#define GL_SAMPLER_CUBE_SHADOW_EXT 0x8DC5 +#define GL_UNSIGNED_INT_VEC2_EXT 0x8DC6 +#define GL_UNSIGNED_INT_VEC3_EXT 0x8DC7 +#define GL_UNSIGNED_INT_VEC4_EXT 0x8DC8 +#define GL_INT_SAMPLER_1D_EXT 0x8DC9 +#define GL_INT_SAMPLER_2D_EXT 0x8DCA +#define GL_INT_SAMPLER_3D_EXT 0x8DCB +#define GL_INT_SAMPLER_CUBE_EXT 0x8DCC +#define GL_INT_SAMPLER_2D_RECT_EXT 0x8DCD +#define GL_INT_SAMPLER_1D_ARRAY_EXT 0x8DCE +#define GL_INT_SAMPLER_2D_ARRAY_EXT 0x8DCF +#define GL_INT_SAMPLER_BUFFER_EXT 0x8DD0 +#define GL_UNSIGNED_INT_SAMPLER_1D_EXT 0x8DD1 +#define GL_UNSIGNED_INT_SAMPLER_2D_EXT 0x8DD2 +#define GL_UNSIGNED_INT_SAMPLER_3D_EXT 0x8DD3 +#define GL_UNSIGNED_INT_SAMPLER_CUBE_EXT 0x8DD4 +#define GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT 0x8DD5 +#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT 0x8DD6 +#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT 0x8DD7 +#define GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8 + +typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONEXTPROC) (GLuint program, GLuint color, const GLchar *name); +typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATALOCATIONEXTPROC) (GLuint program, const GLchar *name); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMUIVEXTPROC) (GLuint program, GLint location, GLuint *params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIIVEXTPROC) (GLuint index, GLenum pname, GLint *params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIUIVEXTPROC) (GLuint index, GLenum pname, GLuint *params); +typedef void (GLAPIENTRY * PFNGLUNIFORM1UIEXTPROC) (GLint location, GLuint v0); +typedef void (GLAPIENTRY * PFNGLUNIFORM1UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2UIEXTPROC) (GLint location, GLuint v0, GLuint v1); +typedef void (GLAPIENTRY * PFNGLUNIFORM2UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2); +typedef void (GLAPIENTRY * PFNGLUNIFORM3UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); +typedef void (GLAPIENTRY * PFNGLUNIFORM4UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IEXTPROC) (GLuint index, GLint x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IVEXTPROC) (GLuint index, const GLint *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIEXTPROC) (GLuint index, GLuint x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIVEXTPROC) (GLuint index, const GLuint *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IEXTPROC) (GLuint index, GLint x, GLint y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IVEXTPROC) (GLuint index, const GLint *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIEXTPROC) (GLuint index, GLuint x, GLuint y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIVEXTPROC) (GLuint index, const GLuint *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IEXTPROC) (GLuint index, GLint x, GLint y, GLint z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IVEXTPROC) (GLuint index, const GLint *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIVEXTPROC) (GLuint index, const GLuint *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4BVEXTPROC) (GLuint index, const GLbyte *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IEXTPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IVEXTPROC) (GLuint index, const GLint *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4SVEXTPROC) (GLuint index, const GLshort *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UBVEXTPROC) (GLuint index, const GLubyte *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIVEXTPROC) (GLuint index, const GLuint *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4USVEXTPROC) (GLuint index, const GLushort *v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer); + +#define glBindFragDataLocationEXT GLEW_GET_FUN(__glewBindFragDataLocationEXT) +#define glGetFragDataLocationEXT GLEW_GET_FUN(__glewGetFragDataLocationEXT) +#define glGetUniformuivEXT GLEW_GET_FUN(__glewGetUniformuivEXT) +#define glGetVertexAttribIivEXT GLEW_GET_FUN(__glewGetVertexAttribIivEXT) +#define glGetVertexAttribIuivEXT GLEW_GET_FUN(__glewGetVertexAttribIuivEXT) +#define glUniform1uiEXT GLEW_GET_FUN(__glewUniform1uiEXT) +#define glUniform1uivEXT GLEW_GET_FUN(__glewUniform1uivEXT) +#define glUniform2uiEXT GLEW_GET_FUN(__glewUniform2uiEXT) +#define glUniform2uivEXT GLEW_GET_FUN(__glewUniform2uivEXT) +#define glUniform3uiEXT GLEW_GET_FUN(__glewUniform3uiEXT) +#define glUniform3uivEXT GLEW_GET_FUN(__glewUniform3uivEXT) +#define glUniform4uiEXT GLEW_GET_FUN(__glewUniform4uiEXT) +#define glUniform4uivEXT GLEW_GET_FUN(__glewUniform4uivEXT) +#define glVertexAttribI1iEXT GLEW_GET_FUN(__glewVertexAttribI1iEXT) +#define glVertexAttribI1ivEXT GLEW_GET_FUN(__glewVertexAttribI1ivEXT) +#define glVertexAttribI1uiEXT GLEW_GET_FUN(__glewVertexAttribI1uiEXT) +#define glVertexAttribI1uivEXT GLEW_GET_FUN(__glewVertexAttribI1uivEXT) +#define glVertexAttribI2iEXT GLEW_GET_FUN(__glewVertexAttribI2iEXT) +#define glVertexAttribI2ivEXT GLEW_GET_FUN(__glewVertexAttribI2ivEXT) +#define glVertexAttribI2uiEXT GLEW_GET_FUN(__glewVertexAttribI2uiEXT) +#define glVertexAttribI2uivEXT GLEW_GET_FUN(__glewVertexAttribI2uivEXT) +#define glVertexAttribI3iEXT GLEW_GET_FUN(__glewVertexAttribI3iEXT) +#define glVertexAttribI3ivEXT GLEW_GET_FUN(__glewVertexAttribI3ivEXT) +#define glVertexAttribI3uiEXT GLEW_GET_FUN(__glewVertexAttribI3uiEXT) +#define glVertexAttribI3uivEXT GLEW_GET_FUN(__glewVertexAttribI3uivEXT) +#define glVertexAttribI4bvEXT GLEW_GET_FUN(__glewVertexAttribI4bvEXT) +#define glVertexAttribI4iEXT GLEW_GET_FUN(__glewVertexAttribI4iEXT) +#define glVertexAttribI4ivEXT GLEW_GET_FUN(__glewVertexAttribI4ivEXT) +#define glVertexAttribI4svEXT GLEW_GET_FUN(__glewVertexAttribI4svEXT) +#define glVertexAttribI4ubvEXT GLEW_GET_FUN(__glewVertexAttribI4ubvEXT) +#define glVertexAttribI4uiEXT GLEW_GET_FUN(__glewVertexAttribI4uiEXT) +#define glVertexAttribI4uivEXT GLEW_GET_FUN(__glewVertexAttribI4uivEXT) +#define glVertexAttribI4usvEXT GLEW_GET_FUN(__glewVertexAttribI4usvEXT) +#define glVertexAttribIPointerEXT GLEW_GET_FUN(__glewVertexAttribIPointerEXT) + +#define GLEW_EXT_gpu_shader4 GLEW_GET_VAR(__GLEW_EXT_gpu_shader4) + +#endif /* GL_EXT_gpu_shader4 */ + +/* --------------------------- GL_EXT_gpu_shader5 -------------------------- */ + +#ifndef GL_EXT_gpu_shader5 +#define GL_EXT_gpu_shader5 1 + +#define GLEW_EXT_gpu_shader5 GLEW_GET_VAR(__GLEW_EXT_gpu_shader5) + +#endif /* GL_EXT_gpu_shader5 */ + +/* ---------------------------- GL_EXT_histogram --------------------------- */ + +#ifndef GL_EXT_histogram +#define GL_EXT_histogram 1 + +#define GL_HISTOGRAM_EXT 0x8024 +#define GL_PROXY_HISTOGRAM_EXT 0x8025 +#define GL_HISTOGRAM_WIDTH_EXT 0x8026 +#define GL_HISTOGRAM_FORMAT_EXT 0x8027 +#define GL_HISTOGRAM_RED_SIZE_EXT 0x8028 +#define GL_HISTOGRAM_GREEN_SIZE_EXT 0x8029 +#define GL_HISTOGRAM_BLUE_SIZE_EXT 0x802A +#define GL_HISTOGRAM_ALPHA_SIZE_EXT 0x802B +#define GL_HISTOGRAM_LUMINANCE_SIZE_EXT 0x802C +#define GL_HISTOGRAM_SINK_EXT 0x802D +#define GL_MINMAX_EXT 0x802E +#define GL_MINMAX_FORMAT_EXT 0x802F +#define GL_MINMAX_SINK_EXT 0x8030 + +typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values); +typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETMINMAXEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values); +typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLHISTOGRAMEXTPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink); +typedef void (GLAPIENTRY * PFNGLMINMAXEXTPROC) (GLenum target, GLenum internalformat, GLboolean sink); +typedef void (GLAPIENTRY * PFNGLRESETHISTOGRAMEXTPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLRESETMINMAXEXTPROC) (GLenum target); + +#define glGetHistogramEXT GLEW_GET_FUN(__glewGetHistogramEXT) +#define glGetHistogramParameterfvEXT GLEW_GET_FUN(__glewGetHistogramParameterfvEXT) +#define glGetHistogramParameterivEXT GLEW_GET_FUN(__glewGetHistogramParameterivEXT) +#define glGetMinmaxEXT GLEW_GET_FUN(__glewGetMinmaxEXT) +#define glGetMinmaxParameterfvEXT GLEW_GET_FUN(__glewGetMinmaxParameterfvEXT) +#define glGetMinmaxParameterivEXT GLEW_GET_FUN(__glewGetMinmaxParameterivEXT) +#define glHistogramEXT GLEW_GET_FUN(__glewHistogramEXT) +#define glMinmaxEXT GLEW_GET_FUN(__glewMinmaxEXT) +#define glResetHistogramEXT GLEW_GET_FUN(__glewResetHistogramEXT) +#define glResetMinmaxEXT GLEW_GET_FUN(__glewResetMinmaxEXT) + +#define GLEW_EXT_histogram GLEW_GET_VAR(__GLEW_EXT_histogram) + +#endif /* GL_EXT_histogram */ + +/* ----------------------- GL_EXT_index_array_formats ---------------------- */ + +#ifndef GL_EXT_index_array_formats +#define GL_EXT_index_array_formats 1 + +#define GLEW_EXT_index_array_formats GLEW_GET_VAR(__GLEW_EXT_index_array_formats) + +#endif /* GL_EXT_index_array_formats */ + +/* --------------------------- GL_EXT_index_func --------------------------- */ + +#ifndef GL_EXT_index_func +#define GL_EXT_index_func 1 + +typedef void (GLAPIENTRY * PFNGLINDEXFUNCEXTPROC) (GLenum func, GLfloat ref); + +#define glIndexFuncEXT GLEW_GET_FUN(__glewIndexFuncEXT) + +#define GLEW_EXT_index_func GLEW_GET_VAR(__GLEW_EXT_index_func) + +#endif /* GL_EXT_index_func */ + +/* ------------------------- GL_EXT_index_material ------------------------- */ + +#ifndef GL_EXT_index_material +#define GL_EXT_index_material 1 + +typedef void (GLAPIENTRY * PFNGLINDEXMATERIALEXTPROC) (GLenum face, GLenum mode); + +#define glIndexMaterialEXT GLEW_GET_FUN(__glewIndexMaterialEXT) + +#define GLEW_EXT_index_material GLEW_GET_VAR(__GLEW_EXT_index_material) + +#endif /* GL_EXT_index_material */ + +/* -------------------------- GL_EXT_index_texture ------------------------- */ + +#ifndef GL_EXT_index_texture +#define GL_EXT_index_texture 1 + +#define GLEW_EXT_index_texture GLEW_GET_VAR(__GLEW_EXT_index_texture) + +#endif /* GL_EXT_index_texture */ + +/* ------------------------ GL_EXT_instanced_arrays ------------------------ */ + +#ifndef GL_EXT_instanced_arrays +#define GL_EXT_instanced_arrays 1 + +#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_EXT 0x88FE + +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISOREXTPROC) (GLuint index, GLuint divisor); + +#define glVertexAttribDivisorEXT GLEW_GET_FUN(__glewVertexAttribDivisorEXT) + +#define GLEW_EXT_instanced_arrays GLEW_GET_VAR(__GLEW_EXT_instanced_arrays) + +#endif /* GL_EXT_instanced_arrays */ + +/* -------------------------- GL_EXT_light_texture ------------------------- */ + +#ifndef GL_EXT_light_texture +#define GL_EXT_light_texture 1 + +#define GL_FRAGMENT_MATERIAL_EXT 0x8349 +#define GL_FRAGMENT_NORMAL_EXT 0x834A +#define GL_FRAGMENT_COLOR_EXT 0x834C +#define GL_ATTENUATION_EXT 0x834D +#define GL_SHADOW_ATTENUATION_EXT 0x834E +#define GL_TEXTURE_APPLICATION_MODE_EXT 0x834F +#define GL_TEXTURE_LIGHT_EXT 0x8350 +#define GL_TEXTURE_MATERIAL_FACE_EXT 0x8351 +#define GL_TEXTURE_MATERIAL_PARAMETER_EXT 0x8352 + +typedef void (GLAPIENTRY * PFNGLAPPLYTEXTUREEXTPROC) (GLenum mode); +typedef void (GLAPIENTRY * PFNGLTEXTURELIGHTEXTPROC) (GLenum pname); +typedef void (GLAPIENTRY * PFNGLTEXTUREMATERIALEXTPROC) (GLenum face, GLenum mode); + +#define glApplyTextureEXT GLEW_GET_FUN(__glewApplyTextureEXT) +#define glTextureLightEXT GLEW_GET_FUN(__glewTextureLightEXT) +#define glTextureMaterialEXT GLEW_GET_FUN(__glewTextureMaterialEXT) + +#define GLEW_EXT_light_texture GLEW_GET_VAR(__GLEW_EXT_light_texture) + +#endif /* GL_EXT_light_texture */ + +/* ------------------------ GL_EXT_map_buffer_range ------------------------ */ + +#ifndef GL_EXT_map_buffer_range +#define GL_EXT_map_buffer_range 1 + +#define GL_MAP_READ_BIT_EXT 0x0001 +#define GL_MAP_WRITE_BIT_EXT 0x0002 +#define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004 +#define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008 +#define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010 +#define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020 + +typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length); +typedef void * (GLAPIENTRY * PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); + +#define glFlushMappedBufferRangeEXT GLEW_GET_FUN(__glewFlushMappedBufferRangeEXT) +#define glMapBufferRangeEXT GLEW_GET_FUN(__glewMapBufferRangeEXT) + +#define GLEW_EXT_map_buffer_range GLEW_GET_VAR(__GLEW_EXT_map_buffer_range) + +#endif /* GL_EXT_map_buffer_range */ + +/* -------------------------- GL_EXT_memory_object ------------------------- */ + +#ifndef GL_EXT_memory_object +#define GL_EXT_memory_object 1 + +#define GL_UUID_SIZE_EXT 16 +#define GL_TEXTURE_TILING_EXT 0x9580 +#define GL_DEDICATED_MEMORY_OBJECT_EXT 0x9581 +#define GL_NUM_TILING_TYPES_EXT 0x9582 +#define GL_TILING_TYPES_EXT 0x9583 +#define GL_OPTIMAL_TILING_EXT 0x9584 +#define GL_LINEAR_TILING_EXT 0x9585 +#define GL_NUM_DEVICE_UUIDS_EXT 0x9596 +#define GL_DEVICE_UUID_EXT 0x9597 +#define GL_DRIVER_UUID_EXT 0x9598 +#define GL_PROTECTED_MEMORY_OBJECT_EXT 0x959B + +typedef void (GLAPIENTRY * PFNGLBUFFERSTORAGEMEMEXTPROC) (GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLCREATEMEMORYOBJECTSEXTPROC) (GLsizei n, GLuint* memoryObjects); +typedef void (GLAPIENTRY * PFNGLDELETEMEMORYOBJECTSEXTPROC) (GLsizei n, const GLuint* memoryObjects); +typedef void (GLAPIENTRY * PFNGLGETMEMORYOBJECTPARAMETERIVEXTPROC) (GLuint memoryObject, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETUNSIGNEDBYTEI_VEXTPROC) (GLenum target, GLuint index, GLubyte* data); +typedef void (GLAPIENTRY * PFNGLGETUNSIGNEDBYTEVEXTPROC) (GLenum pname, GLubyte* data); +typedef GLboolean (GLAPIENTRY * PFNGLISMEMORYOBJECTEXTPROC) (GLuint memoryObject); +typedef void (GLAPIENTRY * PFNGLMEMORYOBJECTPARAMETERIVEXTPROC) (GLuint memoryObject, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSTORAGEMEMEXTPROC) (GLuint buffer, GLsizeiptr size, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM2DMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM3DMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM1DEXTPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM2DEXTPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM2DMULTISAMPLEEXTPROC) (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM3DEXTPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM3DMULTISAMPLEEXTPROC) (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); + +#define glBufferStorageMemEXT GLEW_GET_FUN(__glewBufferStorageMemEXT) +#define glCreateMemoryObjectsEXT GLEW_GET_FUN(__glewCreateMemoryObjectsEXT) +#define glDeleteMemoryObjectsEXT GLEW_GET_FUN(__glewDeleteMemoryObjectsEXT) +#define glGetMemoryObjectParameterivEXT GLEW_GET_FUN(__glewGetMemoryObjectParameterivEXT) +#define glGetUnsignedBytei_vEXT GLEW_GET_FUN(__glewGetUnsignedBytei_vEXT) +#define glGetUnsignedBytevEXT GLEW_GET_FUN(__glewGetUnsignedBytevEXT) +#define glIsMemoryObjectEXT GLEW_GET_FUN(__glewIsMemoryObjectEXT) +#define glMemoryObjectParameterivEXT GLEW_GET_FUN(__glewMemoryObjectParameterivEXT) +#define glNamedBufferStorageMemEXT GLEW_GET_FUN(__glewNamedBufferStorageMemEXT) +#define glTexStorageMem1DEXT GLEW_GET_FUN(__glewTexStorageMem1DEXT) +#define glTexStorageMem2DEXT GLEW_GET_FUN(__glewTexStorageMem2DEXT) +#define glTexStorageMem2DMultisampleEXT GLEW_GET_FUN(__glewTexStorageMem2DMultisampleEXT) +#define glTexStorageMem3DEXT GLEW_GET_FUN(__glewTexStorageMem3DEXT) +#define glTexStorageMem3DMultisampleEXT GLEW_GET_FUN(__glewTexStorageMem3DMultisampleEXT) +#define glTextureStorageMem1DEXT GLEW_GET_FUN(__glewTextureStorageMem1DEXT) +#define glTextureStorageMem2DEXT GLEW_GET_FUN(__glewTextureStorageMem2DEXT) +#define glTextureStorageMem2DMultisampleEXT GLEW_GET_FUN(__glewTextureStorageMem2DMultisampleEXT) +#define glTextureStorageMem3DEXT GLEW_GET_FUN(__glewTextureStorageMem3DEXT) +#define glTextureStorageMem3DMultisampleEXT GLEW_GET_FUN(__glewTextureStorageMem3DMultisampleEXT) + +#define GLEW_EXT_memory_object GLEW_GET_VAR(__GLEW_EXT_memory_object) + +#endif /* GL_EXT_memory_object */ + +/* ------------------------ GL_EXT_memory_object_fd ------------------------ */ + +#ifndef GL_EXT_memory_object_fd +#define GL_EXT_memory_object_fd 1 + +#define GL_HANDLE_TYPE_OPAQUE_FD_EXT 0x9586 + +typedef void (GLAPIENTRY * PFNGLIMPORTMEMORYFDEXTPROC) (GLuint memory, GLuint64 size, GLenum handleType, GLint fd); + +#define glImportMemoryFdEXT GLEW_GET_FUN(__glewImportMemoryFdEXT) + +#define GLEW_EXT_memory_object_fd GLEW_GET_VAR(__GLEW_EXT_memory_object_fd) + +#endif /* GL_EXT_memory_object_fd */ + +/* ----------------------- GL_EXT_memory_object_win32 ---------------------- */ + +#ifndef GL_EXT_memory_object_win32 +#define GL_EXT_memory_object_win32 1 + +#define GL_LUID_SIZE_EXT 8 +#define GL_HANDLE_TYPE_OPAQUE_WIN32_EXT 0x9587 +#define GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT 0x9588 +#define GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT 0x9589 +#define GL_HANDLE_TYPE_D3D12_RESOURCE_EXT 0x958A +#define GL_HANDLE_TYPE_D3D11_IMAGE_EXT 0x958B +#define GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT 0x958C +#define GL_HANDLE_TYPE_D3D12_FENCE_EXT 0x9594 +#define GL_D3D12_FENCE_VALUE_EXT 0x9595 +#define GL_DEVICE_LUID_EXT 0x9599 +#define GL_DEVICE_NODE_MASK_EXT 0x959A + +typedef void (GLAPIENTRY * PFNGLIMPORTMEMORYWIN32HANDLEEXTPROC) (GLuint memory, GLuint64 size, GLenum handleType, void *handle); +typedef void (GLAPIENTRY * PFNGLIMPORTMEMORYWIN32NAMEEXTPROC) (GLuint memory, GLuint64 size, GLenum handleType, const void *name); + +#define glImportMemoryWin32HandleEXT GLEW_GET_FUN(__glewImportMemoryWin32HandleEXT) +#define glImportMemoryWin32NameEXT GLEW_GET_FUN(__glewImportMemoryWin32NameEXT) + +#define GLEW_EXT_memory_object_win32 GLEW_GET_VAR(__GLEW_EXT_memory_object_win32) + +#endif /* GL_EXT_memory_object_win32 */ + +/* ------------------------- GL_EXT_misc_attribute ------------------------- */ + +#ifndef GL_EXT_misc_attribute +#define GL_EXT_misc_attribute 1 + +#define GLEW_EXT_misc_attribute GLEW_GET_VAR(__GLEW_EXT_misc_attribute) + +#endif /* GL_EXT_misc_attribute */ + +/* ------------------------ GL_EXT_multi_draw_arrays ----------------------- */ + +#ifndef GL_EXT_multi_draw_arrays +#define GL_EXT_multi_draw_arrays 1 + +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint* first, const GLsizei *count, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, GLsizei* count, GLenum type, const void *const *indices, GLsizei primcount); + +#define glMultiDrawArraysEXT GLEW_GET_FUN(__glewMultiDrawArraysEXT) +#define glMultiDrawElementsEXT GLEW_GET_FUN(__glewMultiDrawElementsEXT) + +#define GLEW_EXT_multi_draw_arrays GLEW_GET_VAR(__GLEW_EXT_multi_draw_arrays) + +#endif /* GL_EXT_multi_draw_arrays */ + +/* ----------------------- GL_EXT_multi_draw_indirect ---------------------- */ + +#ifndef GL_EXT_multi_draw_indirect +#define GL_EXT_multi_draw_indirect 1 + +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTEXTPROC) (GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTEXTPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride); + +#define glMultiDrawArraysIndirectEXT GLEW_GET_FUN(__glewMultiDrawArraysIndirectEXT) +#define glMultiDrawElementsIndirectEXT GLEW_GET_FUN(__glewMultiDrawElementsIndirectEXT) + +#define GLEW_EXT_multi_draw_indirect GLEW_GET_VAR(__GLEW_EXT_multi_draw_indirect) + +#endif /* GL_EXT_multi_draw_indirect */ + +/* ------------------------ GL_EXT_multiple_textures ----------------------- */ + +#ifndef GL_EXT_multiple_textures +#define GL_EXT_multiple_textures 1 + +#define GLEW_EXT_multiple_textures GLEW_GET_VAR(__GLEW_EXT_multiple_textures) + +#endif /* GL_EXT_multiple_textures */ + +/* --------------------------- GL_EXT_multisample -------------------------- */ + +#ifndef GL_EXT_multisample +#define GL_EXT_multisample 1 + +#define GL_MULTISAMPLE_EXT 0x809D +#define GL_SAMPLE_ALPHA_TO_MASK_EXT 0x809E +#define GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F +#define GL_SAMPLE_MASK_EXT 0x80A0 +#define GL_1PASS_EXT 0x80A1 +#define GL_2PASS_0_EXT 0x80A2 +#define GL_2PASS_1_EXT 0x80A3 +#define GL_4PASS_0_EXT 0x80A4 +#define GL_4PASS_1_EXT 0x80A5 +#define GL_4PASS_2_EXT 0x80A6 +#define GL_4PASS_3_EXT 0x80A7 +#define GL_SAMPLE_BUFFERS_EXT 0x80A8 +#define GL_SAMPLES_EXT 0x80A9 +#define GL_SAMPLE_MASK_VALUE_EXT 0x80AA +#define GL_SAMPLE_MASK_INVERT_EXT 0x80AB +#define GL_SAMPLE_PATTERN_EXT 0x80AC +#define GL_MULTISAMPLE_BIT_EXT 0x20000000 + +typedef void (GLAPIENTRY * PFNGLSAMPLEMASKEXTPROC) (GLclampf value, GLboolean invert); +typedef void (GLAPIENTRY * PFNGLSAMPLEPATTERNEXTPROC) (GLenum pattern); + +#define glSampleMaskEXT GLEW_GET_FUN(__glewSampleMaskEXT) +#define glSamplePatternEXT GLEW_GET_FUN(__glewSamplePatternEXT) + +#define GLEW_EXT_multisample GLEW_GET_VAR(__GLEW_EXT_multisample) + +#endif /* GL_EXT_multisample */ + +/* -------------------- GL_EXT_multisample_compatibility ------------------- */ + +#ifndef GL_EXT_multisample_compatibility +#define GL_EXT_multisample_compatibility 1 + +#define GL_MULTISAMPLE_EXT 0x809D +#define GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F + +#define GLEW_EXT_multisample_compatibility GLEW_GET_VAR(__GLEW_EXT_multisample_compatibility) + +#endif /* GL_EXT_multisample_compatibility */ + +/* ----------------- GL_EXT_multisampled_render_to_texture ----------------- */ + +#ifndef GL_EXT_multisampled_render_to_texture +#define GL_EXT_multisampled_render_to_texture 1 + +#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56 +#define GL_MAX_SAMPLES_EXT 0x8D57 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); + +#define glFramebufferTexture2DMultisampleEXT GLEW_GET_FUN(__glewFramebufferTexture2DMultisampleEXT) + +#define GLEW_EXT_multisampled_render_to_texture GLEW_GET_VAR(__GLEW_EXT_multisampled_render_to_texture) + +#endif /* GL_EXT_multisampled_render_to_texture */ + +/* ----------------- GL_EXT_multisampled_render_to_texture2 ---------------- */ + +#ifndef GL_EXT_multisampled_render_to_texture2 +#define GL_EXT_multisampled_render_to_texture2 1 + +#define GLEW_EXT_multisampled_render_to_texture2 GLEW_GET_VAR(__GLEW_EXT_multisampled_render_to_texture2) + +#endif /* GL_EXT_multisampled_render_to_texture2 */ + +/* --------------------- GL_EXT_multiview_draw_buffers --------------------- */ + +#ifndef GL_EXT_multiview_draw_buffers +#define GL_EXT_multiview_draw_buffers 1 + +#define GL_DRAW_BUFFER_EXT 0x0C01 +#define GL_READ_BUFFER_EXT 0x0C02 +#define GL_COLOR_ATTACHMENT_EXT 0x90F0 +#define GL_MULTIVIEW_EXT 0x90F1 +#define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2 + +typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const GLenum* location, const GLint *indices); +typedef void (GLAPIENTRY * PFNGLGETINTEGERI_VEXTPROC) (GLenum target, GLuint index, GLint* data); +typedef void (GLAPIENTRY * PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src, GLint index); + +#define glDrawBuffersIndexedEXT GLEW_GET_FUN(__glewDrawBuffersIndexedEXT) +#define glGetIntegeri_vEXT GLEW_GET_FUN(__glewGetIntegeri_vEXT) +#define glReadBufferIndexedEXT GLEW_GET_FUN(__glewReadBufferIndexedEXT) + +#define GLEW_EXT_multiview_draw_buffers GLEW_GET_VAR(__GLEW_EXT_multiview_draw_buffers) + +#endif /* GL_EXT_multiview_draw_buffers */ + +/* ------------- GL_EXT_multiview_tessellation_geometry_shader ------------- */ + +#ifndef GL_EXT_multiview_tessellation_geometry_shader +#define GL_EXT_multiview_tessellation_geometry_shader 1 + +#define GLEW_EXT_multiview_tessellation_geometry_shader GLEW_GET_VAR(__GLEW_EXT_multiview_tessellation_geometry_shader) + +#endif /* GL_EXT_multiview_tessellation_geometry_shader */ + +/* ------------------ GL_EXT_multiview_texture_multisample ----------------- */ + +#ifndef GL_EXT_multiview_texture_multisample +#define GL_EXT_multiview_texture_multisample 1 + +#define GLEW_EXT_multiview_texture_multisample GLEW_GET_VAR(__GLEW_EXT_multiview_texture_multisample) + +#endif /* GL_EXT_multiview_texture_multisample */ + +/* ---------------------- GL_EXT_multiview_timer_query --------------------- */ + +#ifndef GL_EXT_multiview_timer_query +#define GL_EXT_multiview_timer_query 1 + +#define GLEW_EXT_multiview_timer_query GLEW_GET_VAR(__GLEW_EXT_multiview_timer_query) + +#endif /* GL_EXT_multiview_timer_query */ + +/* --------------------- GL_EXT_occlusion_query_boolean -------------------- */ + +#ifndef GL_EXT_occlusion_query_boolean +#define GL_EXT_occlusion_query_boolean 1 + +#define GL_CURRENT_QUERY_EXT 0x8865 +#define GL_QUERY_RESULT_EXT 0x8866 +#define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867 +#define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F +#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A + +#define GLEW_EXT_occlusion_query_boolean GLEW_GET_VAR(__GLEW_EXT_occlusion_query_boolean) + +#endif /* GL_EXT_occlusion_query_boolean */ + +/* ---------------------- GL_EXT_packed_depth_stencil ---------------------- */ + +#ifndef GL_EXT_packed_depth_stencil +#define GL_EXT_packed_depth_stencil 1 + +#define GL_DEPTH_STENCIL_EXT 0x84F9 +#define GL_UNSIGNED_INT_24_8_EXT 0x84FA +#define GL_DEPTH24_STENCIL8_EXT 0x88F0 +#define GL_TEXTURE_STENCIL_SIZE_EXT 0x88F1 + +#define GLEW_EXT_packed_depth_stencil GLEW_GET_VAR(__GLEW_EXT_packed_depth_stencil) + +#endif /* GL_EXT_packed_depth_stencil */ + +/* -------------------------- GL_EXT_packed_float -------------------------- */ + +#ifndef GL_EXT_packed_float +#define GL_EXT_packed_float 1 + +#define GL_R11F_G11F_B10F_EXT 0x8C3A +#define GL_UNSIGNED_INT_10F_11F_11F_REV_EXT 0x8C3B +#define GL_RGBA_SIGNED_COMPONENTS_EXT 0x8C3C + +#define GLEW_EXT_packed_float GLEW_GET_VAR(__GLEW_EXT_packed_float) + +#endif /* GL_EXT_packed_float */ + +/* -------------------------- GL_EXT_packed_pixels ------------------------- */ + +#ifndef GL_EXT_packed_pixels +#define GL_EXT_packed_pixels 1 + +#define GL_UNSIGNED_BYTE_3_3_2_EXT 0x8032 +#define GL_UNSIGNED_SHORT_4_4_4_4_EXT 0x8033 +#define GL_UNSIGNED_SHORT_5_5_5_1_EXT 0x8034 +#define GL_UNSIGNED_INT_8_8_8_8_EXT 0x8035 +#define GL_UNSIGNED_INT_10_10_10_2_EXT 0x8036 + +#define GLEW_EXT_packed_pixels GLEW_GET_VAR(__GLEW_EXT_packed_pixels) + +#endif /* GL_EXT_packed_pixels */ + +/* ------------------------ GL_EXT_paletted_texture ------------------------ */ + +#ifndef GL_EXT_paletted_texture +#define GL_EXT_paletted_texture 1 + +#define GL_TEXTURE_1D 0x0DE0 +#define GL_TEXTURE_2D 0x0DE1 +#define GL_PROXY_TEXTURE_1D 0x8063 +#define GL_PROXY_TEXTURE_2D 0x8064 +#define GL_COLOR_TABLE_FORMAT_EXT 0x80D8 +#define GL_COLOR_TABLE_WIDTH_EXT 0x80D9 +#define GL_COLOR_TABLE_RED_SIZE_EXT 0x80DA +#define GL_COLOR_TABLE_GREEN_SIZE_EXT 0x80DB +#define GL_COLOR_TABLE_BLUE_SIZE_EXT 0x80DC +#define GL_COLOR_TABLE_ALPHA_SIZE_EXT 0x80DD +#define GL_COLOR_TABLE_LUMINANCE_SIZE_EXT 0x80DE +#define GL_COLOR_TABLE_INTENSITY_SIZE_EXT 0x80DF +#define GL_COLOR_INDEX1_EXT 0x80E2 +#define GL_COLOR_INDEX2_EXT 0x80E3 +#define GL_COLOR_INDEX4_EXT 0x80E4 +#define GL_COLOR_INDEX8_EXT 0x80E5 +#define GL_COLOR_INDEX12_EXT 0x80E6 +#define GL_COLOR_INDEX16_EXT 0x80E7 +#define GL_TEXTURE_INDEX_SIZE_EXT 0x80ED +#define GL_TEXTURE_CUBE_MAP_ARB 0x8513 +#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B + +typedef void (GLAPIENTRY * PFNGLCOLORTABLEEXTPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const void *data); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEEXTPROC) (GLenum target, GLenum format, GLenum type, void *data); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); + +#define glColorTableEXT GLEW_GET_FUN(__glewColorTableEXT) +#define glGetColorTableEXT GLEW_GET_FUN(__glewGetColorTableEXT) +#define glGetColorTableParameterfvEXT GLEW_GET_FUN(__glewGetColorTableParameterfvEXT) +#define glGetColorTableParameterivEXT GLEW_GET_FUN(__glewGetColorTableParameterivEXT) + +#define GLEW_EXT_paletted_texture GLEW_GET_VAR(__GLEW_EXT_paletted_texture) + +#endif /* GL_EXT_paletted_texture */ + +/* ----------------------- GL_EXT_pixel_buffer_object ---------------------- */ + +#ifndef GL_EXT_pixel_buffer_object +#define GL_EXT_pixel_buffer_object 1 + +#define GL_PIXEL_PACK_BUFFER_EXT 0x88EB +#define GL_PIXEL_UNPACK_BUFFER_EXT 0x88EC +#define GL_PIXEL_PACK_BUFFER_BINDING_EXT 0x88ED +#define GL_PIXEL_UNPACK_BUFFER_BINDING_EXT 0x88EF + +#define GLEW_EXT_pixel_buffer_object GLEW_GET_VAR(__GLEW_EXT_pixel_buffer_object) + +#endif /* GL_EXT_pixel_buffer_object */ + +/* ------------------------- GL_EXT_pixel_transform ------------------------ */ + +#ifndef GL_EXT_pixel_transform +#define GL_EXT_pixel_transform 1 + +#define GL_PIXEL_TRANSFORM_2D_EXT 0x8330 +#define GL_PIXEL_MAG_FILTER_EXT 0x8331 +#define GL_PIXEL_MIN_FILTER_EXT 0x8332 +#define GL_PIXEL_CUBIC_WEIGHT_EXT 0x8333 +#define GL_CUBIC_EXT 0x8334 +#define GL_AVERAGE_EXT 0x8335 +#define GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8336 +#define GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8337 +#define GL_PIXEL_TRANSFORM_2D_MATRIX_EXT 0x8338 + +typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFEXTPROC) (GLenum target, GLenum pname, const GLfloat param); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIEXTPROC) (GLenum target, GLenum pname, const GLint param); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params); + +#define glGetPixelTransformParameterfvEXT GLEW_GET_FUN(__glewGetPixelTransformParameterfvEXT) +#define glGetPixelTransformParameterivEXT GLEW_GET_FUN(__glewGetPixelTransformParameterivEXT) +#define glPixelTransformParameterfEXT GLEW_GET_FUN(__glewPixelTransformParameterfEXT) +#define glPixelTransformParameterfvEXT GLEW_GET_FUN(__glewPixelTransformParameterfvEXT) +#define glPixelTransformParameteriEXT GLEW_GET_FUN(__glewPixelTransformParameteriEXT) +#define glPixelTransformParameterivEXT GLEW_GET_FUN(__glewPixelTransformParameterivEXT) + +#define GLEW_EXT_pixel_transform GLEW_GET_VAR(__GLEW_EXT_pixel_transform) + +#endif /* GL_EXT_pixel_transform */ + +/* ------------------- GL_EXT_pixel_transform_color_table ------------------ */ + +#ifndef GL_EXT_pixel_transform_color_table +#define GL_EXT_pixel_transform_color_table 1 + +#define GLEW_EXT_pixel_transform_color_table GLEW_GET_VAR(__GLEW_EXT_pixel_transform_color_table) + +#endif /* GL_EXT_pixel_transform_color_table */ + +/* ------------------------ GL_EXT_point_parameters ------------------------ */ + +#ifndef GL_EXT_point_parameters +#define GL_EXT_point_parameters 1 + +#define GL_POINT_SIZE_MIN_EXT 0x8126 +#define GL_POINT_SIZE_MAX_EXT 0x8127 +#define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128 +#define GL_DISTANCE_ATTENUATION_EXT 0x8129 + +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFEXTPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVEXTPROC) (GLenum pname, const GLfloat* params); + +#define glPointParameterfEXT GLEW_GET_FUN(__glewPointParameterfEXT) +#define glPointParameterfvEXT GLEW_GET_FUN(__glewPointParameterfvEXT) + +#define GLEW_EXT_point_parameters GLEW_GET_VAR(__GLEW_EXT_point_parameters) + +#endif /* GL_EXT_point_parameters */ + +/* ------------------------- GL_EXT_polygon_offset ------------------------- */ + +#ifndef GL_EXT_polygon_offset +#define GL_EXT_polygon_offset 1 + +#define GL_POLYGON_OFFSET_EXT 0x8037 +#define GL_POLYGON_OFFSET_FACTOR_EXT 0x8038 +#define GL_POLYGON_OFFSET_BIAS_EXT 0x8039 + +typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETEXTPROC) (GLfloat factor, GLfloat bias); + +#define glPolygonOffsetEXT GLEW_GET_FUN(__glewPolygonOffsetEXT) + +#define GLEW_EXT_polygon_offset GLEW_GET_VAR(__GLEW_EXT_polygon_offset) + +#endif /* GL_EXT_polygon_offset */ + +/* ---------------------- GL_EXT_polygon_offset_clamp ---------------------- */ + +#ifndef GL_EXT_polygon_offset_clamp +#define GL_EXT_polygon_offset_clamp 1 + +#define GL_POLYGON_OFFSET_CLAMP_EXT 0x8E1B + +typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETCLAMPEXTPROC) (GLfloat factor, GLfloat units, GLfloat clamp); + +#define glPolygonOffsetClampEXT GLEW_GET_FUN(__glewPolygonOffsetClampEXT) + +#define GLEW_EXT_polygon_offset_clamp GLEW_GET_VAR(__GLEW_EXT_polygon_offset_clamp) + +#endif /* GL_EXT_polygon_offset_clamp */ + +/* ----------------------- GL_EXT_post_depth_coverage ---------------------- */ + +#ifndef GL_EXT_post_depth_coverage +#define GL_EXT_post_depth_coverage 1 + +#define GLEW_EXT_post_depth_coverage GLEW_GET_VAR(__GLEW_EXT_post_depth_coverage) + +#endif /* GL_EXT_post_depth_coverage */ + +/* --------------------- GL_EXT_primitive_bounding_box --------------------- */ + +#ifndef GL_EXT_primitive_bounding_box +#define GL_EXT_primitive_bounding_box 1 + +#define GL_PRIMITIVE_BOUNDING_BOX_EXT 0x92BE + +typedef void (GLAPIENTRY * PFNGLPRIMITIVEBOUNDINGBOXEXTPROC) (GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW); + +#define glPrimitiveBoundingBoxEXT GLEW_GET_FUN(__glewPrimitiveBoundingBoxEXT) + +#define GLEW_EXT_primitive_bounding_box GLEW_GET_VAR(__GLEW_EXT_primitive_bounding_box) + +#endif /* GL_EXT_primitive_bounding_box */ + +/* ----------------------- GL_EXT_protected_textures ----------------------- */ + +#ifndef GL_EXT_protected_textures +#define GL_EXT_protected_textures 1 + +#define GL_CONTEXT_FLAG_PROTECTED_CONTENT_BIT_EXT 0x00000010 +#define GL_TEXTURE_PROTECTED_EXT 0x8BFA + +#define GLEW_EXT_protected_textures GLEW_GET_VAR(__GLEW_EXT_protected_textures) + +#endif /* GL_EXT_protected_textures */ + +/* ------------------------ GL_EXT_provoking_vertex ------------------------ */ + +#ifndef GL_EXT_provoking_vertex +#define GL_EXT_provoking_vertex 1 + +#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT 0x8E4C +#define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D +#define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E +#define GL_PROVOKING_VERTEX_EXT 0x8E4F + +typedef void (GLAPIENTRY * PFNGLPROVOKINGVERTEXEXTPROC) (GLenum mode); + +#define glProvokingVertexEXT GLEW_GET_FUN(__glewProvokingVertexEXT) + +#define GLEW_EXT_provoking_vertex GLEW_GET_VAR(__GLEW_EXT_provoking_vertex) + +#endif /* GL_EXT_provoking_vertex */ + +/* --------------------------- GL_EXT_pvrtc_sRGB --------------------------- */ + +#ifndef GL_EXT_pvrtc_sRGB +#define GL_EXT_pvrtc_sRGB 1 + +#define GL_COMPRESSED_SRGB_PVRTC_2BPPV1_EXT 0x8A54 +#define GL_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT 0x8A55 +#define GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT 0x8A56 +#define GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT 0x8A57 + +#define GLEW_EXT_pvrtc_sRGB GLEW_GET_VAR(__GLEW_EXT_pvrtc_sRGB) + +#endif /* GL_EXT_pvrtc_sRGB */ + +/* ----------------------- GL_EXT_raster_multisample ----------------------- */ + +#ifndef GL_EXT_raster_multisample +#define GL_EXT_raster_multisample 1 + +#define GL_COLOR_SAMPLES_NV 0x8E20 +#define GL_RASTER_MULTISAMPLE_EXT 0x9327 +#define GL_RASTER_SAMPLES_EXT 0x9328 +#define GL_MAX_RASTER_SAMPLES_EXT 0x9329 +#define GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT 0x932A +#define GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT 0x932B +#define GL_EFFECTIVE_RASTER_SAMPLES_EXT 0x932C +#define GL_DEPTH_SAMPLES_NV 0x932D +#define GL_STENCIL_SAMPLES_NV 0x932E +#define GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV 0x932F +#define GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV 0x9330 +#define GL_COVERAGE_MODULATION_TABLE_NV 0x9331 +#define GL_COVERAGE_MODULATION_NV 0x9332 +#define GL_COVERAGE_MODULATION_TABLE_SIZE_NV 0x9333 + +typedef void (GLAPIENTRY * PFNGLCOVERAGEMODULATIONNVPROC) (GLenum components); +typedef void (GLAPIENTRY * PFNGLCOVERAGEMODULATIONTABLENVPROC) (GLsizei n, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLGETCOVERAGEMODULATIONTABLENVPROC) (GLsizei bufsize, GLfloat* v); +typedef void (GLAPIENTRY * PFNGLRASTERSAMPLESEXTPROC) (GLuint samples, GLboolean fixedsamplelocations); + +#define glCoverageModulationNV GLEW_GET_FUN(__glewCoverageModulationNV) +#define glCoverageModulationTableNV GLEW_GET_FUN(__glewCoverageModulationTableNV) +#define glGetCoverageModulationTableNV GLEW_GET_FUN(__glewGetCoverageModulationTableNV) +#define glRasterSamplesEXT GLEW_GET_FUN(__glewRasterSamplesEXT) + +#define GLEW_EXT_raster_multisample GLEW_GET_VAR(__GLEW_EXT_raster_multisample) + +#endif /* GL_EXT_raster_multisample */ + +/* ------------------------ GL_EXT_read_format_bgra ------------------------ */ + +#ifndef GL_EXT_read_format_bgra +#define GL_EXT_read_format_bgra 1 + +#define GL_BGRA_EXT 0x80E1 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 +#define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 + +#define GLEW_EXT_read_format_bgra GLEW_GET_VAR(__GLEW_EXT_read_format_bgra) + +#endif /* GL_EXT_read_format_bgra */ + +/* -------------------------- GL_EXT_render_snorm -------------------------- */ + +#ifndef GL_EXT_render_snorm +#define GL_EXT_render_snorm 1 + +#define GL_BYTE 0x1400 +#define GL_SHORT 0x1402 +#define GL_R8_SNORM 0x8F94 +#define GL_RG8_SNORM 0x8F95 +#define GL_RGBA8_SNORM 0x8F97 +#define GL_R16_SNORM_EXT 0x8F98 +#define GL_RG16_SNORM_EXT 0x8F99 +#define GL_RGBA16_SNORM_EXT 0x8F9B + +#define GLEW_EXT_render_snorm GLEW_GET_VAR(__GLEW_EXT_render_snorm) + +#endif /* GL_EXT_render_snorm */ + +/* ------------------------- GL_EXT_rescale_normal ------------------------- */ + +#ifndef GL_EXT_rescale_normal +#define GL_EXT_rescale_normal 1 + +#define GL_RESCALE_NORMAL_EXT 0x803A + +#define GLEW_EXT_rescale_normal GLEW_GET_VAR(__GLEW_EXT_rescale_normal) + +#endif /* GL_EXT_rescale_normal */ + +/* --------------------------- GL_EXT_robustness --------------------------- */ + +#ifndef GL_EXT_robustness +#define GL_EXT_robustness 1 + +#define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252 +#define GL_GUILTY_CONTEXT_RESET_EXT 0x8253 +#define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254 +#define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255 +#define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256 +#define GL_NO_RESET_NOTIFICATION_EXT 0x8261 +#define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3 + +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint* params); +typedef void (GLAPIENTRY * PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); + +#define glGetnUniformfvEXT GLEW_GET_FUN(__glewGetnUniformfvEXT) +#define glGetnUniformivEXT GLEW_GET_FUN(__glewGetnUniformivEXT) +#define glReadnPixelsEXT GLEW_GET_FUN(__glewReadnPixelsEXT) + +#define GLEW_EXT_robustness GLEW_GET_VAR(__GLEW_EXT_robustness) + +#endif /* GL_EXT_robustness */ + +/* ------------------------------ GL_EXT_sRGB ------------------------------ */ + +#ifndef GL_EXT_sRGB +#define GL_EXT_sRGB 1 + +#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210 +#define GL_SRGB_EXT 0x8C40 +#define GL_SRGB_ALPHA_EXT 0x8C42 +#define GL_SRGB8_ALPHA8_EXT 0x8C43 + +#define GLEW_EXT_sRGB GLEW_GET_VAR(__GLEW_EXT_sRGB) + +#endif /* GL_EXT_sRGB */ + +/* ----------------------- GL_EXT_sRGB_write_control ----------------------- */ + +#ifndef GL_EXT_sRGB_write_control +#define GL_EXT_sRGB_write_control 1 + +#define GL_FRAMEBUFFER_SRGB_EXT 0x8DB9 + +#define GLEW_EXT_sRGB_write_control GLEW_GET_VAR(__GLEW_EXT_sRGB_write_control) + +#endif /* GL_EXT_sRGB_write_control */ + +/* -------------------------- GL_EXT_scene_marker -------------------------- */ + +#ifndef GL_EXT_scene_marker +#define GL_EXT_scene_marker 1 + +typedef void (GLAPIENTRY * PFNGLBEGINSCENEEXTPROC) (void); +typedef void (GLAPIENTRY * PFNGLENDSCENEEXTPROC) (void); + +#define glBeginSceneEXT GLEW_GET_FUN(__glewBeginSceneEXT) +#define glEndSceneEXT GLEW_GET_FUN(__glewEndSceneEXT) + +#define GLEW_EXT_scene_marker GLEW_GET_VAR(__GLEW_EXT_scene_marker) + +#endif /* GL_EXT_scene_marker */ + +/* ------------------------- GL_EXT_secondary_color ------------------------ */ + +#ifndef GL_EXT_secondary_color +#define GL_EXT_secondary_color 1 + +#define GL_COLOR_SUM_EXT 0x8458 +#define GL_CURRENT_SECONDARY_COLOR_EXT 0x8459 +#define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A +#define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B +#define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C +#define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D +#define GL_SECONDARY_COLOR_ARRAY_EXT 0x845E + +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BEXTPROC) (GLbyte red, GLbyte green, GLbyte blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BVEXTPROC) (const GLbyte *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DEXTPROC) (GLdouble red, GLdouble green, GLdouble blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DVEXTPROC) (const GLdouble *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FEXTPROC) (GLfloat red, GLfloat green, GLfloat blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FVEXTPROC) (const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IEXTPROC) (GLint red, GLint green, GLint blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IVEXTPROC) (const GLint *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SEXTPROC) (GLshort red, GLshort green, GLshort blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SVEXTPROC) (const GLshort *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBEXTPROC) (GLubyte red, GLubyte green, GLubyte blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBVEXTPROC) (const GLubyte *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIEXTPROC) (GLuint red, GLuint green, GLuint blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIVEXTPROC) (const GLuint *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USEXTPROC) (GLushort red, GLushort green, GLushort blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USVEXTPROC) (const GLushort *v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer); + +#define glSecondaryColor3bEXT GLEW_GET_FUN(__glewSecondaryColor3bEXT) +#define glSecondaryColor3bvEXT GLEW_GET_FUN(__glewSecondaryColor3bvEXT) +#define glSecondaryColor3dEXT GLEW_GET_FUN(__glewSecondaryColor3dEXT) +#define glSecondaryColor3dvEXT GLEW_GET_FUN(__glewSecondaryColor3dvEXT) +#define glSecondaryColor3fEXT GLEW_GET_FUN(__glewSecondaryColor3fEXT) +#define glSecondaryColor3fvEXT GLEW_GET_FUN(__glewSecondaryColor3fvEXT) +#define glSecondaryColor3iEXT GLEW_GET_FUN(__glewSecondaryColor3iEXT) +#define glSecondaryColor3ivEXT GLEW_GET_FUN(__glewSecondaryColor3ivEXT) +#define glSecondaryColor3sEXT GLEW_GET_FUN(__glewSecondaryColor3sEXT) +#define glSecondaryColor3svEXT GLEW_GET_FUN(__glewSecondaryColor3svEXT) +#define glSecondaryColor3ubEXT GLEW_GET_FUN(__glewSecondaryColor3ubEXT) +#define glSecondaryColor3ubvEXT GLEW_GET_FUN(__glewSecondaryColor3ubvEXT) +#define glSecondaryColor3uiEXT GLEW_GET_FUN(__glewSecondaryColor3uiEXT) +#define glSecondaryColor3uivEXT GLEW_GET_FUN(__glewSecondaryColor3uivEXT) +#define glSecondaryColor3usEXT GLEW_GET_FUN(__glewSecondaryColor3usEXT) +#define glSecondaryColor3usvEXT GLEW_GET_FUN(__glewSecondaryColor3usvEXT) +#define glSecondaryColorPointerEXT GLEW_GET_FUN(__glewSecondaryColorPointerEXT) + +#define GLEW_EXT_secondary_color GLEW_GET_VAR(__GLEW_EXT_secondary_color) + +#endif /* GL_EXT_secondary_color */ + +/* ---------------------------- GL_EXT_semaphore --------------------------- */ + +#ifndef GL_EXT_semaphore +#define GL_EXT_semaphore 1 + +#define GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT 0x9530 +#define GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT 0x9531 +#define GL_LAYOUT_GENERAL_EXT 0x958D +#define GL_LAYOUT_COLOR_ATTACHMENT_EXT 0x958E +#define GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT 0x958F +#define GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT 0x9590 +#define GL_LAYOUT_SHADER_READ_ONLY_EXT 0x9591 +#define GL_LAYOUT_TRANSFER_SRC_EXT 0x9592 +#define GL_LAYOUT_TRANSFER_DST_EXT 0x9593 + +typedef void (GLAPIENTRY * PFNGLDELETESEMAPHORESEXTPROC) (GLsizei n, const GLuint* semaphores); +typedef void (GLAPIENTRY * PFNGLGENSEMAPHORESEXTPROC) (GLsizei n, GLuint* semaphores); +typedef void (GLAPIENTRY * PFNGLGETSEMAPHOREPARAMETERUI64VEXTPROC) (GLuint semaphore, GLenum pname, GLuint64* params); +typedef GLboolean (GLAPIENTRY * PFNGLISSEMAPHOREEXTPROC) (GLuint semaphore); +typedef void (GLAPIENTRY * PFNGLSEMAPHOREPARAMETERUI64VEXTPROC) (GLuint semaphore, GLenum pname, const GLuint64* params); +typedef void (GLAPIENTRY * PFNGLSIGNALSEMAPHOREEXTPROC) (GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *dstLayouts); +typedef void (GLAPIENTRY * PFNGLWAITSEMAPHOREEXTPROC) (GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *srcLayouts); + +#define glDeleteSemaphoresEXT GLEW_GET_FUN(__glewDeleteSemaphoresEXT) +#define glGenSemaphoresEXT GLEW_GET_FUN(__glewGenSemaphoresEXT) +#define glGetSemaphoreParameterui64vEXT GLEW_GET_FUN(__glewGetSemaphoreParameterui64vEXT) +#define glIsSemaphoreEXT GLEW_GET_FUN(__glewIsSemaphoreEXT) +#define glSemaphoreParameterui64vEXT GLEW_GET_FUN(__glewSemaphoreParameterui64vEXT) +#define glSignalSemaphoreEXT GLEW_GET_FUN(__glewSignalSemaphoreEXT) +#define glWaitSemaphoreEXT GLEW_GET_FUN(__glewWaitSemaphoreEXT) + +#define GLEW_EXT_semaphore GLEW_GET_VAR(__GLEW_EXT_semaphore) + +#endif /* GL_EXT_semaphore */ + +/* -------------------------- GL_EXT_semaphore_fd -------------------------- */ + +#ifndef GL_EXT_semaphore_fd +#define GL_EXT_semaphore_fd 1 + +typedef void (GLAPIENTRY * PFNGLIMPORTSEMAPHOREFDEXTPROC) (GLuint semaphore, GLenum handleType, GLint fd); + +#define glImportSemaphoreFdEXT GLEW_GET_FUN(__glewImportSemaphoreFdEXT) + +#define GLEW_EXT_semaphore_fd GLEW_GET_VAR(__GLEW_EXT_semaphore_fd) + +#endif /* GL_EXT_semaphore_fd */ + +/* ------------------------- GL_EXT_semaphore_win32 ------------------------ */ + +#ifndef GL_EXT_semaphore_win32 +#define GL_EXT_semaphore_win32 1 + +typedef void (GLAPIENTRY * PFNGLIMPORTSEMAPHOREWIN32HANDLEEXTPROC) (GLuint semaphore, GLenum handleType, void *handle); +typedef void (GLAPIENTRY * PFNGLIMPORTSEMAPHOREWIN32NAMEEXTPROC) (GLuint semaphore, GLenum handleType, const void *name); + +#define glImportSemaphoreWin32HandleEXT GLEW_GET_FUN(__glewImportSemaphoreWin32HandleEXT) +#define glImportSemaphoreWin32NameEXT GLEW_GET_FUN(__glewImportSemaphoreWin32NameEXT) + +#define GLEW_EXT_semaphore_win32 GLEW_GET_VAR(__GLEW_EXT_semaphore_win32) + +#endif /* GL_EXT_semaphore_win32 */ + +/* --------------------- GL_EXT_separate_shader_objects -------------------- */ + +#ifndef GL_EXT_separate_shader_objects +#define GL_EXT_separate_shader_objects 1 + +#define GL_ACTIVE_PROGRAM_EXT 0x8B8D + +typedef void (GLAPIENTRY * PFNGLACTIVEPROGRAMEXTPROC) (GLuint program); +typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROGRAMEXTPROC) (GLenum type, const GLchar* string); +typedef void (GLAPIENTRY * PFNGLUSESHADERPROGRAMEXTPROC) (GLenum type, GLuint program); + +#define glActiveProgramEXT GLEW_GET_FUN(__glewActiveProgramEXT) +#define glCreateShaderProgramEXT GLEW_GET_FUN(__glewCreateShaderProgramEXT) +#define glUseShaderProgramEXT GLEW_GET_FUN(__glewUseShaderProgramEXT) + +#define GLEW_EXT_separate_shader_objects GLEW_GET_VAR(__GLEW_EXT_separate_shader_objects) + +#endif /* GL_EXT_separate_shader_objects */ + +/* --------------------- GL_EXT_separate_specular_color -------------------- */ + +#ifndef GL_EXT_separate_specular_color +#define GL_EXT_separate_specular_color 1 + +#define GL_LIGHT_MODEL_COLOR_CONTROL_EXT 0x81F8 +#define GL_SINGLE_COLOR_EXT 0x81F9 +#define GL_SEPARATE_SPECULAR_COLOR_EXT 0x81FA + +#define GLEW_EXT_separate_specular_color GLEW_GET_VAR(__GLEW_EXT_separate_specular_color) + +#endif /* GL_EXT_separate_specular_color */ + +/* -------------------- GL_EXT_shader_framebuffer_fetch -------------------- */ + +#ifndef GL_EXT_shader_framebuffer_fetch +#define GL_EXT_shader_framebuffer_fetch 1 + +#define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERFETCHBARRIEREXTPROC) (void); + +#define glFramebufferFetchBarrierEXT GLEW_GET_FUN(__glewFramebufferFetchBarrierEXT) + +#define GLEW_EXT_shader_framebuffer_fetch GLEW_GET_VAR(__GLEW_EXT_shader_framebuffer_fetch) + +#endif /* GL_EXT_shader_framebuffer_fetch */ + +/* -------------- GL_EXT_shader_framebuffer_fetch_non_coherent ------------- */ + +#ifndef GL_EXT_shader_framebuffer_fetch_non_coherent +#define GL_EXT_shader_framebuffer_fetch_non_coherent 1 + +#define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52 + +#define GLEW_EXT_shader_framebuffer_fetch_non_coherent GLEW_GET_VAR(__GLEW_EXT_shader_framebuffer_fetch_non_coherent) + +#endif /* GL_EXT_shader_framebuffer_fetch_non_coherent */ + +/* ------------------------ GL_EXT_shader_group_vote ----------------------- */ + +#ifndef GL_EXT_shader_group_vote +#define GL_EXT_shader_group_vote 1 + +#define GLEW_EXT_shader_group_vote GLEW_GET_VAR(__GLEW_EXT_shader_group_vote) + +#endif /* GL_EXT_shader_group_vote */ + +/* ------------------- GL_EXT_shader_image_load_formatted ------------------ */ + +#ifndef GL_EXT_shader_image_load_formatted +#define GL_EXT_shader_image_load_formatted 1 + +#define GLEW_EXT_shader_image_load_formatted GLEW_GET_VAR(__GLEW_EXT_shader_image_load_formatted) + +#endif /* GL_EXT_shader_image_load_formatted */ + +/* --------------------- GL_EXT_shader_image_load_store -------------------- */ + +#ifndef GL_EXT_shader_image_load_store +#define GL_EXT_shader_image_load_store 1 + +#define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT 0x00000001 +#define GL_ELEMENT_ARRAY_BARRIER_BIT_EXT 0x00000002 +#define GL_UNIFORM_BARRIER_BIT_EXT 0x00000004 +#define GL_TEXTURE_FETCH_BARRIER_BIT_EXT 0x00000008 +#define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT 0x00000020 +#define GL_COMMAND_BARRIER_BIT_EXT 0x00000040 +#define GL_PIXEL_BUFFER_BARRIER_BIT_EXT 0x00000080 +#define GL_TEXTURE_UPDATE_BARRIER_BIT_EXT 0x00000100 +#define GL_BUFFER_UPDATE_BARRIER_BIT_EXT 0x00000200 +#define GL_FRAMEBUFFER_BARRIER_BIT_EXT 0x00000400 +#define GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT 0x00000800 +#define GL_ATOMIC_COUNTER_BARRIER_BIT_EXT 0x00001000 +#define GL_MAX_IMAGE_UNITS_EXT 0x8F38 +#define GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT 0x8F39 +#define GL_IMAGE_BINDING_NAME_EXT 0x8F3A +#define GL_IMAGE_BINDING_LEVEL_EXT 0x8F3B +#define GL_IMAGE_BINDING_LAYERED_EXT 0x8F3C +#define GL_IMAGE_BINDING_LAYER_EXT 0x8F3D +#define GL_IMAGE_BINDING_ACCESS_EXT 0x8F3E +#define GL_IMAGE_1D_EXT 0x904C +#define GL_IMAGE_2D_EXT 0x904D +#define GL_IMAGE_3D_EXT 0x904E +#define GL_IMAGE_2D_RECT_EXT 0x904F +#define GL_IMAGE_CUBE_EXT 0x9050 +#define GL_IMAGE_BUFFER_EXT 0x9051 +#define GL_IMAGE_1D_ARRAY_EXT 0x9052 +#define GL_IMAGE_2D_ARRAY_EXT 0x9053 +#define GL_IMAGE_CUBE_MAP_ARRAY_EXT 0x9054 +#define GL_IMAGE_2D_MULTISAMPLE_EXT 0x9055 +#define GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9056 +#define GL_INT_IMAGE_1D_EXT 0x9057 +#define GL_INT_IMAGE_2D_EXT 0x9058 +#define GL_INT_IMAGE_3D_EXT 0x9059 +#define GL_INT_IMAGE_2D_RECT_EXT 0x905A +#define GL_INT_IMAGE_CUBE_EXT 0x905B +#define GL_INT_IMAGE_BUFFER_EXT 0x905C +#define GL_INT_IMAGE_1D_ARRAY_EXT 0x905D +#define GL_INT_IMAGE_2D_ARRAY_EXT 0x905E +#define GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x905F +#define GL_INT_IMAGE_2D_MULTISAMPLE_EXT 0x9060 +#define GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9061 +#define GL_UNSIGNED_INT_IMAGE_1D_EXT 0x9062 +#define GL_UNSIGNED_INT_IMAGE_2D_EXT 0x9063 +#define GL_UNSIGNED_INT_IMAGE_3D_EXT 0x9064 +#define GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT 0x9065 +#define GL_UNSIGNED_INT_IMAGE_CUBE_EXT 0x9066 +#define GL_UNSIGNED_INT_IMAGE_BUFFER_EXT 0x9067 +#define GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT 0x9068 +#define GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT 0x9069 +#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x906A +#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT 0x906B +#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x906C +#define GL_MAX_IMAGE_SAMPLES_EXT 0x906D +#define GL_IMAGE_BINDING_FORMAT_EXT 0x906E +#define GL_ALL_BARRIER_BITS_EXT 0xFFFFFFFF + +typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTUREEXTPROC) (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format); +typedef void (GLAPIENTRY * PFNGLMEMORYBARRIEREXTPROC) (GLbitfield barriers); + +#define glBindImageTextureEXT GLEW_GET_FUN(__glewBindImageTextureEXT) +#define glMemoryBarrierEXT GLEW_GET_FUN(__glewMemoryBarrierEXT) + +#define GLEW_EXT_shader_image_load_store GLEW_GET_VAR(__GLEW_EXT_shader_image_load_store) + +#endif /* GL_EXT_shader_image_load_store */ + +/* ------------------- GL_EXT_shader_implicit_conversions ------------------ */ + +#ifndef GL_EXT_shader_implicit_conversions +#define GL_EXT_shader_implicit_conversions 1 + +#define GLEW_EXT_shader_implicit_conversions GLEW_GET_VAR(__GLEW_EXT_shader_implicit_conversions) + +#endif /* GL_EXT_shader_implicit_conversions */ + +/* ----------------------- GL_EXT_shader_integer_mix ----------------------- */ + +#ifndef GL_EXT_shader_integer_mix +#define GL_EXT_shader_integer_mix 1 + +#define GLEW_EXT_shader_integer_mix GLEW_GET_VAR(__GLEW_EXT_shader_integer_mix) + +#endif /* GL_EXT_shader_integer_mix */ + +/* ------------------------ GL_EXT_shader_io_blocks ------------------------ */ + +#ifndef GL_EXT_shader_io_blocks +#define GL_EXT_shader_io_blocks 1 + +#define GLEW_EXT_shader_io_blocks GLEW_GET_VAR(__GLEW_EXT_shader_io_blocks) + +#endif /* GL_EXT_shader_io_blocks */ + +/* ------------- GL_EXT_shader_non_constant_global_initializers ------------ */ + +#ifndef GL_EXT_shader_non_constant_global_initializers +#define GL_EXT_shader_non_constant_global_initializers 1 + +#define GLEW_EXT_shader_non_constant_global_initializers GLEW_GET_VAR(__GLEW_EXT_shader_non_constant_global_initializers) + +#endif /* GL_EXT_shader_non_constant_global_initializers */ + +/* ------------------- GL_EXT_shader_pixel_local_storage ------------------- */ + +#ifndef GL_EXT_shader_pixel_local_storage +#define GL_EXT_shader_pixel_local_storage 1 + +#define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT 0x8F63 +#define GL_SHADER_PIXEL_LOCAL_STORAGE_EXT 0x8F64 +#define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_SIZE_EXT 0x8F67 + +#define GLEW_EXT_shader_pixel_local_storage GLEW_GET_VAR(__GLEW_EXT_shader_pixel_local_storage) + +#endif /* GL_EXT_shader_pixel_local_storage */ + +/* ------------------- GL_EXT_shader_pixel_local_storage2 ------------------ */ + +#ifndef GL_EXT_shader_pixel_local_storage2 +#define GL_EXT_shader_pixel_local_storage2 1 + +#define GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_FAST_SIZE_EXT 0x9650 +#define GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_SIZE_EXT 0x9651 +#define GL_FRAMEBUFFER_INCOMPLETE_INSUFFICIENT_SHADER_COMBINED_LOCAL_STORAGE_EXT 0x9652 + +typedef void (GLAPIENTRY * PFNGLCLEARPIXELLOCALSTORAGEUIEXTPROC) (GLsizei offset, GLsizei n, const GLuint* values); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERPIXELLOCALSTORAGESIZEEXTPROC) (GLuint target, GLsizei size); +typedef GLsizei (GLAPIENTRY * PFNGLGETFRAMEBUFFERPIXELLOCALSTORAGESIZEEXTPROC) (GLuint target); + +#define glClearPixelLocalStorageuiEXT GLEW_GET_FUN(__glewClearPixelLocalStorageuiEXT) +#define glFramebufferPixelLocalStorageSizeEXT GLEW_GET_FUN(__glewFramebufferPixelLocalStorageSizeEXT) +#define glGetFramebufferPixelLocalStorageSizeEXT GLEW_GET_FUN(__glewGetFramebufferPixelLocalStorageSizeEXT) + +#define GLEW_EXT_shader_pixel_local_storage2 GLEW_GET_VAR(__GLEW_EXT_shader_pixel_local_storage2) + +#endif /* GL_EXT_shader_pixel_local_storage2 */ + +/* ----------------------- GL_EXT_shader_texture_lod ----------------------- */ + +#ifndef GL_EXT_shader_texture_lod +#define GL_EXT_shader_texture_lod 1 + +#define GLEW_EXT_shader_texture_lod GLEW_GET_VAR(__GLEW_EXT_shader_texture_lod) + +#endif /* GL_EXT_shader_texture_lod */ + +/* -------------------------- GL_EXT_shadow_funcs -------------------------- */ + +#ifndef GL_EXT_shadow_funcs +#define GL_EXT_shadow_funcs 1 + +#define GLEW_EXT_shadow_funcs GLEW_GET_VAR(__GLEW_EXT_shadow_funcs) + +#endif /* GL_EXT_shadow_funcs */ + +/* ------------------------- GL_EXT_shadow_samplers ------------------------ */ + +#ifndef GL_EXT_shadow_samplers +#define GL_EXT_shadow_samplers 1 + +#define GL_TEXTURE_COMPARE_MODE_EXT 0x884C +#define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D +#define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E +#define GL_SAMPLER_2D_SHADOW_EXT 0x8B62 + +#define GLEW_EXT_shadow_samplers GLEW_GET_VAR(__GLEW_EXT_shadow_samplers) + +#endif /* GL_EXT_shadow_samplers */ + +/* --------------------- GL_EXT_shared_texture_palette --------------------- */ + +#ifndef GL_EXT_shared_texture_palette +#define GL_EXT_shared_texture_palette 1 + +#define GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB + +#define GLEW_EXT_shared_texture_palette GLEW_GET_VAR(__GLEW_EXT_shared_texture_palette) + +#endif /* GL_EXT_shared_texture_palette */ + +/* ------------------------- GL_EXT_sparse_texture ------------------------- */ + +#ifndef GL_EXT_sparse_texture +#define GL_EXT_sparse_texture 1 + +#define GL_TEXTURE_2D 0x0DE1 +#define GL_TEXTURE_3D 0x806F +#define GL_TEXTURE_CUBE_MAP 0x8513 +#define GL_TEXTURE_2D_ARRAY 0x8C1A +#define GL_TEXTURE_CUBE_MAP_ARRAY_OES 0x9009 +#define GL_VIRTUAL_PAGE_SIZE_X_EXT 0x9195 +#define GL_VIRTUAL_PAGE_SIZE_Y_EXT 0x9196 +#define GL_VIRTUAL_PAGE_SIZE_Z_EXT 0x9197 +#define GL_MAX_SPARSE_TEXTURE_SIZE_EXT 0x9198 +#define GL_MAX_SPARSE_3D_TEXTURE_SIZE_EXT 0x9199 +#define GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_EXT 0x919A +#define GL_TEXTURE_SPARSE_EXT 0x91A6 +#define GL_VIRTUAL_PAGE_SIZE_INDEX_EXT 0x91A7 +#define GL_NUM_VIRTUAL_PAGE_SIZES_EXT 0x91A8 +#define GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_EXT 0x91A9 +#define GL_NUM_SPARSE_LEVELS_EXT 0x91AA + +typedef void (GLAPIENTRY * PFNGLTEXPAGECOMMITMENTEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit); +typedef void (GLAPIENTRY * PFNGLTEXTUREPAGECOMMITMENTEXTPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit); + +#define glTexPageCommitmentEXT GLEW_GET_FUN(__glewTexPageCommitmentEXT) +#define glTexturePageCommitmentEXT GLEW_GET_FUN(__glewTexturePageCommitmentEXT) + +#define GLEW_EXT_sparse_texture GLEW_GET_VAR(__GLEW_EXT_sparse_texture) + +#endif /* GL_EXT_sparse_texture */ + +/* ------------------------- GL_EXT_sparse_texture2 ------------------------ */ + +#ifndef GL_EXT_sparse_texture2 +#define GL_EXT_sparse_texture2 1 + +#define GLEW_EXT_sparse_texture2 GLEW_GET_VAR(__GLEW_EXT_sparse_texture2) + +#endif /* GL_EXT_sparse_texture2 */ + +/* ----------------------- GL_EXT_static_vertex_array ---------------------- */ + +#ifndef GL_EXT_static_vertex_array +#define GL_EXT_static_vertex_array 1 + +#define GLEW_EXT_static_vertex_array GLEW_GET_VAR(__GLEW_EXT_static_vertex_array) + +#endif /* GL_EXT_static_vertex_array */ + +/* ------------------------ GL_EXT_stencil_clear_tag ----------------------- */ + +#ifndef GL_EXT_stencil_clear_tag +#define GL_EXT_stencil_clear_tag 1 + +#define GL_STENCIL_TAG_BITS_EXT 0x88F2 +#define GL_STENCIL_CLEAR_TAG_VALUE_EXT 0x88F3 + +#define GLEW_EXT_stencil_clear_tag GLEW_GET_VAR(__GLEW_EXT_stencil_clear_tag) + +#endif /* GL_EXT_stencil_clear_tag */ + +/* ------------------------ GL_EXT_stencil_two_side ------------------------ */ + +#ifndef GL_EXT_stencil_two_side +#define GL_EXT_stencil_two_side 1 + +#define GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910 +#define GL_ACTIVE_STENCIL_FACE_EXT 0x8911 + +typedef void (GLAPIENTRY * PFNGLACTIVESTENCILFACEEXTPROC) (GLenum face); + +#define glActiveStencilFaceEXT GLEW_GET_FUN(__glewActiveStencilFaceEXT) + +#define GLEW_EXT_stencil_two_side GLEW_GET_VAR(__GLEW_EXT_stencil_two_side) + +#endif /* GL_EXT_stencil_two_side */ + +/* -------------------------- GL_EXT_stencil_wrap -------------------------- */ + +#ifndef GL_EXT_stencil_wrap +#define GL_EXT_stencil_wrap 1 + +#define GL_INCR_WRAP_EXT 0x8507 +#define GL_DECR_WRAP_EXT 0x8508 + +#define GLEW_EXT_stencil_wrap GLEW_GET_VAR(__GLEW_EXT_stencil_wrap) + +#endif /* GL_EXT_stencil_wrap */ + +/* --------------------------- GL_EXT_subtexture --------------------------- */ + +#ifndef GL_EXT_subtexture +#define GL_EXT_subtexture 1 + +typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); + +#define glTexSubImage1DEXT GLEW_GET_FUN(__glewTexSubImage1DEXT) +#define glTexSubImage2DEXT GLEW_GET_FUN(__glewTexSubImage2DEXT) +#define glTexSubImage3DEXT GLEW_GET_FUN(__glewTexSubImage3DEXT) + +#define GLEW_EXT_subtexture GLEW_GET_VAR(__GLEW_EXT_subtexture) + +#endif /* GL_EXT_subtexture */ + +/* --------------------- GL_EXT_tessellation_point_size -------------------- */ + +#ifndef GL_EXT_tessellation_point_size +#define GL_EXT_tessellation_point_size 1 + +#define GL_QUADS_EXT 0x0007 +#define GL_TESS_CONTROL_SHADER_BIT_EXT 0x00000008 +#define GL_PATCHES_EXT 0xE +#define GL_TESS_EVALUATION_SHADER_BIT_EXT 0x00000010 +#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221 +#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT 0x886C +#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT 0x886D +#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E1E +#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E1F +#define GL_PATCH_VERTICES_EXT 0x8E72 +#define GL_TESS_CONTROL_OUTPUT_VERTICES_EXT 0x8E75 +#define GL_TESS_GEN_MODE_EXT 0x8E76 +#define GL_TESS_GEN_SPACING_EXT 0x8E77 +#define GL_TESS_GEN_VERTEX_ORDER_EXT 0x8E78 +#define GL_TESS_GEN_POINT_MODE_EXT 0x8E79 +#define GL_ISOLINES_EXT 0x8E7A +#define GL_FRACTIONAL_ODD_EXT 0x8E7B +#define GL_FRACTIONAL_EVEN_EXT 0x8E7C +#define GL_MAX_PATCH_VERTICES_EXT 0x8E7D +#define GL_MAX_TESS_GEN_LEVEL_EXT 0x8E7E +#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E7F +#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E80 +#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT 0x8E81 +#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT 0x8E82 +#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT 0x8E83 +#define GL_MAX_TESS_PATCH_COMPONENTS_EXT 0x8E84 +#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT 0x8E85 +#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT 0x8E86 +#define GL_TESS_EVALUATION_SHADER_EXT 0x8E87 +#define GL_TESS_CONTROL_SHADER_EXT 0x8E88 +#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT 0x8E89 +#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT 0x8E8A +#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT 0x90CB +#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT 0x90CC +#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT 0x90D8 +#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT 0x90D9 +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT 0x92CD +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT 0x92CE +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT 0x92D3 +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT 0x92D4 +#define GL_IS_PER_PATCH_EXT 0x92E7 +#define GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT 0x9307 +#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT 0x9308 + +typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERIEXTPROC) (GLenum pname, GLint value); + +#define glPatchParameteriEXT GLEW_GET_FUN(__glewPatchParameteriEXT) + +#define GLEW_EXT_tessellation_point_size GLEW_GET_VAR(__GLEW_EXT_tessellation_point_size) + +#endif /* GL_EXT_tessellation_point_size */ + +/* ----------------------- GL_EXT_tessellation_shader ---------------------- */ + +#ifndef GL_EXT_tessellation_shader +#define GL_EXT_tessellation_shader 1 + +#define GL_QUADS_EXT 0x0007 +#define GL_TESS_CONTROL_SHADER_BIT_EXT 0x00000008 +#define GL_PATCHES_EXT 0xE +#define GL_TESS_EVALUATION_SHADER_BIT_EXT 0x00000010 +#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221 +#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT 0x886C +#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT 0x886D +#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E1E +#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E1F +#define GL_PATCH_VERTICES_EXT 0x8E72 +#define GL_TESS_CONTROL_OUTPUT_VERTICES_EXT 0x8E75 +#define GL_TESS_GEN_MODE_EXT 0x8E76 +#define GL_TESS_GEN_SPACING_EXT 0x8E77 +#define GL_TESS_GEN_VERTEX_ORDER_EXT 0x8E78 +#define GL_TESS_GEN_POINT_MODE_EXT 0x8E79 +#define GL_ISOLINES_EXT 0x8E7A +#define GL_FRACTIONAL_ODD_EXT 0x8E7B +#define GL_FRACTIONAL_EVEN_EXT 0x8E7C +#define GL_MAX_PATCH_VERTICES_EXT 0x8E7D +#define GL_MAX_TESS_GEN_LEVEL_EXT 0x8E7E +#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E7F +#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E80 +#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT 0x8E81 +#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT 0x8E82 +#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT 0x8E83 +#define GL_MAX_TESS_PATCH_COMPONENTS_EXT 0x8E84 +#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT 0x8E85 +#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT 0x8E86 +#define GL_TESS_EVALUATION_SHADER_EXT 0x8E87 +#define GL_TESS_CONTROL_SHADER_EXT 0x8E88 +#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT 0x8E89 +#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT 0x8E8A +#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT 0x90CB +#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT 0x90CC +#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT 0x90D8 +#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT 0x90D9 +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT 0x92CD +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT 0x92CE +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT 0x92D3 +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT 0x92D4 +#define GL_IS_PER_PATCH_EXT 0x92E7 +#define GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT 0x9307 +#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT 0x9308 + +#define GLEW_EXT_tessellation_shader GLEW_GET_VAR(__GLEW_EXT_tessellation_shader) + +#endif /* GL_EXT_tessellation_shader */ + +/* ----------------------------- GL_EXT_texture ---------------------------- */ + +#ifndef GL_EXT_texture +#define GL_EXT_texture 1 + +#define GL_ALPHA4_EXT 0x803B +#define GL_ALPHA8_EXT 0x803C +#define GL_ALPHA12_EXT 0x803D +#define GL_ALPHA16_EXT 0x803E +#define GL_LUMINANCE4_EXT 0x803F +#define GL_LUMINANCE8_EXT 0x8040 +#define GL_LUMINANCE12_EXT 0x8041 +#define GL_LUMINANCE16_EXT 0x8042 +#define GL_LUMINANCE4_ALPHA4_EXT 0x8043 +#define GL_LUMINANCE6_ALPHA2_EXT 0x8044 +#define GL_LUMINANCE8_ALPHA8_EXT 0x8045 +#define GL_LUMINANCE12_ALPHA4_EXT 0x8046 +#define GL_LUMINANCE12_ALPHA12_EXT 0x8047 +#define GL_LUMINANCE16_ALPHA16_EXT 0x8048 +#define GL_INTENSITY_EXT 0x8049 +#define GL_INTENSITY4_EXT 0x804A +#define GL_INTENSITY8_EXT 0x804B +#define GL_INTENSITY12_EXT 0x804C +#define GL_INTENSITY16_EXT 0x804D +#define GL_RGB2_EXT 0x804E +#define GL_RGB4_EXT 0x804F +#define GL_RGB5_EXT 0x8050 +#define GL_RGB8_EXT 0x8051 +#define GL_RGB10_EXT 0x8052 +#define GL_RGB12_EXT 0x8053 +#define GL_RGB16_EXT 0x8054 +#define GL_RGBA2_EXT 0x8055 +#define GL_RGBA4_EXT 0x8056 +#define GL_RGB5_A1_EXT 0x8057 +#define GL_RGBA8_EXT 0x8058 +#define GL_RGB10_A2_EXT 0x8059 +#define GL_RGBA12_EXT 0x805A +#define GL_RGBA16_EXT 0x805B +#define GL_TEXTURE_RED_SIZE_EXT 0x805C +#define GL_TEXTURE_GREEN_SIZE_EXT 0x805D +#define GL_TEXTURE_BLUE_SIZE_EXT 0x805E +#define GL_TEXTURE_ALPHA_SIZE_EXT 0x805F +#define GL_TEXTURE_LUMINANCE_SIZE_EXT 0x8060 +#define GL_TEXTURE_INTENSITY_SIZE_EXT 0x8061 +#define GL_REPLACE_EXT 0x8062 +#define GL_PROXY_TEXTURE_1D_EXT 0x8063 +#define GL_PROXY_TEXTURE_2D_EXT 0x8064 + +#define GLEW_EXT_texture GLEW_GET_VAR(__GLEW_EXT_texture) + +#endif /* GL_EXT_texture */ + +/* ---------------------------- GL_EXT_texture3D --------------------------- */ + +#ifndef GL_EXT_texture3D +#define GL_EXT_texture3D 1 + +#define GL_PACK_SKIP_IMAGES_EXT 0x806B +#define GL_PACK_IMAGE_HEIGHT_EXT 0x806C +#define GL_UNPACK_SKIP_IMAGES_EXT 0x806D +#define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E +#define GL_TEXTURE_3D_EXT 0x806F +#define GL_PROXY_TEXTURE_3D_EXT 0x8070 +#define GL_TEXTURE_DEPTH_EXT 0x8071 +#define GL_TEXTURE_WRAP_R_EXT 0x8072 +#define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073 + +typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); + +#define glTexImage3DEXT GLEW_GET_FUN(__glewTexImage3DEXT) + +#define GLEW_EXT_texture3D GLEW_GET_VAR(__GLEW_EXT_texture3D) + +#endif /* GL_EXT_texture3D */ + +/* -------------------------- GL_EXT_texture_array ------------------------- */ + +#ifndef GL_EXT_texture_array +#define GL_EXT_texture_array 1 + +#define GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT 0x884E +#define GL_MAX_ARRAY_TEXTURE_LAYERS_EXT 0x88FF +#define GL_TEXTURE_1D_ARRAY_EXT 0x8C18 +#define GL_PROXY_TEXTURE_1D_ARRAY_EXT 0x8C19 +#define GL_TEXTURE_2D_ARRAY_EXT 0x8C1A +#define GL_PROXY_TEXTURE_2D_ARRAY_EXT 0x8C1B +#define GL_TEXTURE_BINDING_1D_ARRAY_EXT 0x8C1C +#define GL_TEXTURE_BINDING_2D_ARRAY_EXT 0x8C1D + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); + +#define glFramebufferTextureLayerEXT GLEW_GET_FUN(__glewFramebufferTextureLayerEXT) + +#define GLEW_EXT_texture_array GLEW_GET_VAR(__GLEW_EXT_texture_array) + +#endif /* GL_EXT_texture_array */ + +/* ---------------------- GL_EXT_texture_border_clamp ---------------------- */ + +#ifndef GL_EXT_texture_border_clamp +#define GL_EXT_texture_border_clamp 1 + +#define GL_TEXTURE_BORDER_COLOR_EXT 0x1004 +#define GL_CLAMP_TO_BORDER_EXT 0x812D + +typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIIVEXTPROC) (GLuint sampler, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIUIVEXTPROC) (GLuint sampler, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIIVEXTPROC) (GLuint sampler, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIUIVEXTPROC) (GLuint sampler, GLenum pname, const GLuint* params); + +#define glGetSamplerParameterIivEXT GLEW_GET_FUN(__glewGetSamplerParameterIivEXT) +#define glGetSamplerParameterIuivEXT GLEW_GET_FUN(__glewGetSamplerParameterIuivEXT) +#define glSamplerParameterIivEXT GLEW_GET_FUN(__glewSamplerParameterIivEXT) +#define glSamplerParameterIuivEXT GLEW_GET_FUN(__glewSamplerParameterIuivEXT) + +#define GLEW_EXT_texture_border_clamp GLEW_GET_VAR(__GLEW_EXT_texture_border_clamp) + +#endif /* GL_EXT_texture_border_clamp */ + +/* ------------------------- GL_EXT_texture_buffer ------------------------- */ + +#ifndef GL_EXT_texture_buffer +#define GL_EXT_texture_buffer 1 + +#define GL_TEXTURE_BUFFER_BINDING_EXT 0x8C2A +#define GL_TEXTURE_BUFFER_EXT 0x8C2A +#define GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B +#define GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C +#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D +#define GL_SAMPLER_BUFFER_EXT 0x8DC2 +#define GL_INT_SAMPLER_BUFFER_EXT 0x8DD0 +#define GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8 +#define GL_IMAGE_BUFFER_EXT 0x9051 +#define GL_INT_IMAGE_BUFFER_EXT 0x905C +#define GL_UNSIGNED_INT_IMAGE_BUFFER_EXT 0x9067 +#define GL_TEXTURE_BUFFER_OFFSET_EXT 0x919D +#define GL_TEXTURE_BUFFER_SIZE_EXT 0x919E +#define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT 0x919F + +#define GLEW_EXT_texture_buffer GLEW_GET_VAR(__GLEW_EXT_texture_buffer) + +#endif /* GL_EXT_texture_buffer */ + +/* ---------------------- GL_EXT_texture_buffer_object --------------------- */ + +#ifndef GL_EXT_texture_buffer_object +#define GL_EXT_texture_buffer_object 1 + +#define GL_TEXTURE_BUFFER_EXT 0x8C2A +#define GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B +#define GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C +#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D +#define GL_TEXTURE_BUFFER_FORMAT_EXT 0x8C2E + +typedef void (GLAPIENTRY * PFNGLTEXBUFFEREXTPROC) (GLenum target, GLenum internalformat, GLuint buffer); + +#define glTexBufferEXT GLEW_GET_FUN(__glewTexBufferEXT) + +#define GLEW_EXT_texture_buffer_object GLEW_GET_VAR(__GLEW_EXT_texture_buffer_object) + +#endif /* GL_EXT_texture_buffer_object */ + +/* -------------- GL_EXT_texture_compression_astc_decode_mode -------------- */ + +#ifndef GL_EXT_texture_compression_astc_decode_mode +#define GL_EXT_texture_compression_astc_decode_mode 1 + +#define GL_TEXTURE_ASTC_DECODE_PRECISION_EXT 0x8F69 + +#define GLEW_EXT_texture_compression_astc_decode_mode GLEW_GET_VAR(__GLEW_EXT_texture_compression_astc_decode_mode) + +#endif /* GL_EXT_texture_compression_astc_decode_mode */ + +/* ----------- GL_EXT_texture_compression_astc_decode_mode_rgb9e5 ---------- */ + +#ifndef GL_EXT_texture_compression_astc_decode_mode_rgb9e5 +#define GL_EXT_texture_compression_astc_decode_mode_rgb9e5 1 + +#define GL_TEXTURE_ASTC_DECODE_PRECISION_EXT 0x8F69 + +#define GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5 GLEW_GET_VAR(__GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5) + +#endif /* GL_EXT_texture_compression_astc_decode_mode_rgb9e5 */ + +/* -------------------- GL_EXT_texture_compression_bptc -------------------- */ + +#ifndef GL_EXT_texture_compression_bptc +#define GL_EXT_texture_compression_bptc 1 + +#define GL_COMPRESSED_RGBA_BPTC_UNORM_EXT 0x8E8C +#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT 0x8E8D +#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT 0x8E8E +#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT 0x8E8F + +#define GLEW_EXT_texture_compression_bptc GLEW_GET_VAR(__GLEW_EXT_texture_compression_bptc) + +#endif /* GL_EXT_texture_compression_bptc */ + +/* -------------------- GL_EXT_texture_compression_dxt1 -------------------- */ + +#ifndef GL_EXT_texture_compression_dxt1 +#define GL_EXT_texture_compression_dxt1 1 + +#define GLEW_EXT_texture_compression_dxt1 GLEW_GET_VAR(__GLEW_EXT_texture_compression_dxt1) + +#endif /* GL_EXT_texture_compression_dxt1 */ + +/* -------------------- GL_EXT_texture_compression_latc -------------------- */ + +#ifndef GL_EXT_texture_compression_latc +#define GL_EXT_texture_compression_latc 1 + +#define GL_COMPRESSED_LUMINANCE_LATC1_EXT 0x8C70 +#define GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT 0x8C71 +#define GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT 0x8C72 +#define GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT 0x8C73 + +#define GLEW_EXT_texture_compression_latc GLEW_GET_VAR(__GLEW_EXT_texture_compression_latc) + +#endif /* GL_EXT_texture_compression_latc */ + +/* -------------------- GL_EXT_texture_compression_rgtc -------------------- */ + +#ifndef GL_EXT_texture_compression_rgtc +#define GL_EXT_texture_compression_rgtc 1 + +#define GL_COMPRESSED_RED_RGTC1_EXT 0x8DBB +#define GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC +#define GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD +#define GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE + +#define GLEW_EXT_texture_compression_rgtc GLEW_GET_VAR(__GLEW_EXT_texture_compression_rgtc) + +#endif /* GL_EXT_texture_compression_rgtc */ + +/* -------------------- GL_EXT_texture_compression_s3tc -------------------- */ + +#ifndef GL_EXT_texture_compression_s3tc +#define GL_EXT_texture_compression_s3tc 1 + +#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0 +#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1 +#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2 +#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3 + +#define GLEW_EXT_texture_compression_s3tc GLEW_GET_VAR(__GLEW_EXT_texture_compression_s3tc) + +#endif /* GL_EXT_texture_compression_s3tc */ + +/* ------------------ GL_EXT_texture_compression_s3tc_srgb ----------------- */ + +#ifndef GL_EXT_texture_compression_s3tc_srgb +#define GL_EXT_texture_compression_s3tc_srgb 1 + +#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F + +#define GLEW_EXT_texture_compression_s3tc_srgb GLEW_GET_VAR(__GLEW_EXT_texture_compression_s3tc_srgb) + +#endif /* GL_EXT_texture_compression_s3tc_srgb */ + +/* ------------------------ GL_EXT_texture_cube_map ------------------------ */ + +#ifndef GL_EXT_texture_cube_map +#define GL_EXT_texture_cube_map 1 + +#define GL_NORMAL_MAP_EXT 0x8511 +#define GL_REFLECTION_MAP_EXT 0x8512 +#define GL_TEXTURE_CUBE_MAP_EXT 0x8513 +#define GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A +#define GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C + +#define GLEW_EXT_texture_cube_map GLEW_GET_VAR(__GLEW_EXT_texture_cube_map) + +#endif /* GL_EXT_texture_cube_map */ + +/* --------------------- GL_EXT_texture_cube_map_array --------------------- */ + +#ifndef GL_EXT_texture_cube_map_array +#define GL_EXT_texture_cube_map_array 1 + +#define GL_TEXTURE_CUBE_MAP_ARRAY_EXT 0x9009 +#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT 0x900A +#define GL_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900C +#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT 0x900D +#define GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900E +#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900F +#define GL_IMAGE_CUBE_MAP_ARRAY_EXT 0x9054 +#define GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x905F +#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x906A + +#define GLEW_EXT_texture_cube_map_array GLEW_GET_VAR(__GLEW_EXT_texture_cube_map_array) + +#endif /* GL_EXT_texture_cube_map_array */ + +/* ----------------------- GL_EXT_texture_edge_clamp ----------------------- */ + +#ifndef GL_EXT_texture_edge_clamp +#define GL_EXT_texture_edge_clamp 1 + +#define GL_CLAMP_TO_EDGE_EXT 0x812F + +#define GLEW_EXT_texture_edge_clamp GLEW_GET_VAR(__GLEW_EXT_texture_edge_clamp) + +#endif /* GL_EXT_texture_edge_clamp */ + +/* --------------------------- GL_EXT_texture_env -------------------------- */ + +#ifndef GL_EXT_texture_env +#define GL_EXT_texture_env 1 + +#define GLEW_EXT_texture_env GLEW_GET_VAR(__GLEW_EXT_texture_env) + +#endif /* GL_EXT_texture_env */ + +/* ------------------------- GL_EXT_texture_env_add ------------------------ */ + +#ifndef GL_EXT_texture_env_add +#define GL_EXT_texture_env_add 1 + +#define GLEW_EXT_texture_env_add GLEW_GET_VAR(__GLEW_EXT_texture_env_add) + +#endif /* GL_EXT_texture_env_add */ + +/* ----------------------- GL_EXT_texture_env_combine ---------------------- */ + +#ifndef GL_EXT_texture_env_combine +#define GL_EXT_texture_env_combine 1 + +#define GL_COMBINE_EXT 0x8570 +#define GL_COMBINE_RGB_EXT 0x8571 +#define GL_COMBINE_ALPHA_EXT 0x8572 +#define GL_RGB_SCALE_EXT 0x8573 +#define GL_ADD_SIGNED_EXT 0x8574 +#define GL_INTERPOLATE_EXT 0x8575 +#define GL_CONSTANT_EXT 0x8576 +#define GL_PRIMARY_COLOR_EXT 0x8577 +#define GL_PREVIOUS_EXT 0x8578 +#define GL_SOURCE0_RGB_EXT 0x8580 +#define GL_SOURCE1_RGB_EXT 0x8581 +#define GL_SOURCE2_RGB_EXT 0x8582 +#define GL_SOURCE0_ALPHA_EXT 0x8588 +#define GL_SOURCE1_ALPHA_EXT 0x8589 +#define GL_SOURCE2_ALPHA_EXT 0x858A +#define GL_OPERAND0_RGB_EXT 0x8590 +#define GL_OPERAND1_RGB_EXT 0x8591 +#define GL_OPERAND2_RGB_EXT 0x8592 +#define GL_OPERAND0_ALPHA_EXT 0x8598 +#define GL_OPERAND1_ALPHA_EXT 0x8599 +#define GL_OPERAND2_ALPHA_EXT 0x859A + +#define GLEW_EXT_texture_env_combine GLEW_GET_VAR(__GLEW_EXT_texture_env_combine) + +#endif /* GL_EXT_texture_env_combine */ + +/* ------------------------ GL_EXT_texture_env_dot3 ------------------------ */ + +#ifndef GL_EXT_texture_env_dot3 +#define GL_EXT_texture_env_dot3 1 + +#define GL_DOT3_RGB_EXT 0x8740 +#define GL_DOT3_RGBA_EXT 0x8741 + +#define GLEW_EXT_texture_env_dot3 GLEW_GET_VAR(__GLEW_EXT_texture_env_dot3) + +#endif /* GL_EXT_texture_env_dot3 */ + +/* ------------------- GL_EXT_texture_filter_anisotropic ------------------- */ + +#ifndef GL_EXT_texture_filter_anisotropic +#define GL_EXT_texture_filter_anisotropic 1 + +#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE +#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF + +#define GLEW_EXT_texture_filter_anisotropic GLEW_GET_VAR(__GLEW_EXT_texture_filter_anisotropic) + +#endif /* GL_EXT_texture_filter_anisotropic */ + +/* ---------------------- GL_EXT_texture_filter_minmax --------------------- */ + +#ifndef GL_EXT_texture_filter_minmax +#define GL_EXT_texture_filter_minmax 1 + +#define GL_TEXTURE_REDUCTION_MODE_EXT 0x9366 +#define GL_WEIGHTED_AVERAGE_EXT 0x9367 + +#define GLEW_EXT_texture_filter_minmax GLEW_GET_VAR(__GLEW_EXT_texture_filter_minmax) + +#endif /* GL_EXT_texture_filter_minmax */ + +/* --------------------- GL_EXT_texture_format_BGRA8888 -------------------- */ + +#ifndef GL_EXT_texture_format_BGRA8888 +#define GL_EXT_texture_format_BGRA8888 1 + +#define GL_BGRA_EXT 0x80E1 + +#define GLEW_EXT_texture_format_BGRA8888 GLEW_GET_VAR(__GLEW_EXT_texture_format_BGRA8888) + +#endif /* GL_EXT_texture_format_BGRA8888 */ + +/* ------------------ GL_EXT_texture_format_sRGB_override ------------------ */ + +#ifndef GL_EXT_texture_format_sRGB_override +#define GL_EXT_texture_format_sRGB_override 1 + +#define GL_TEXTURE_FORMAT_SRGB_OVERRIDE_EXT 0x8FBF + +#define GLEW_EXT_texture_format_sRGB_override GLEW_GET_VAR(__GLEW_EXT_texture_format_sRGB_override) + +#endif /* GL_EXT_texture_format_sRGB_override */ + +/* ------------------------- GL_EXT_texture_integer ------------------------ */ + +#ifndef GL_EXT_texture_integer +#define GL_EXT_texture_integer 1 + +#define GL_RGBA32UI_EXT 0x8D70 +#define GL_RGB32UI_EXT 0x8D71 +#define GL_ALPHA32UI_EXT 0x8D72 +#define GL_INTENSITY32UI_EXT 0x8D73 +#define GL_LUMINANCE32UI_EXT 0x8D74 +#define GL_LUMINANCE_ALPHA32UI_EXT 0x8D75 +#define GL_RGBA16UI_EXT 0x8D76 +#define GL_RGB16UI_EXT 0x8D77 +#define GL_ALPHA16UI_EXT 0x8D78 +#define GL_INTENSITY16UI_EXT 0x8D79 +#define GL_LUMINANCE16UI_EXT 0x8D7A +#define GL_LUMINANCE_ALPHA16UI_EXT 0x8D7B +#define GL_RGBA8UI_EXT 0x8D7C +#define GL_RGB8UI_EXT 0x8D7D +#define GL_ALPHA8UI_EXT 0x8D7E +#define GL_INTENSITY8UI_EXT 0x8D7F +#define GL_LUMINANCE8UI_EXT 0x8D80 +#define GL_LUMINANCE_ALPHA8UI_EXT 0x8D81 +#define GL_RGBA32I_EXT 0x8D82 +#define GL_RGB32I_EXT 0x8D83 +#define GL_ALPHA32I_EXT 0x8D84 +#define GL_INTENSITY32I_EXT 0x8D85 +#define GL_LUMINANCE32I_EXT 0x8D86 +#define GL_LUMINANCE_ALPHA32I_EXT 0x8D87 +#define GL_RGBA16I_EXT 0x8D88 +#define GL_RGB16I_EXT 0x8D89 +#define GL_ALPHA16I_EXT 0x8D8A +#define GL_INTENSITY16I_EXT 0x8D8B +#define GL_LUMINANCE16I_EXT 0x8D8C +#define GL_LUMINANCE_ALPHA16I_EXT 0x8D8D +#define GL_RGBA8I_EXT 0x8D8E +#define GL_RGB8I_EXT 0x8D8F +#define GL_ALPHA8I_EXT 0x8D90 +#define GL_INTENSITY8I_EXT 0x8D91 +#define GL_LUMINANCE8I_EXT 0x8D92 +#define GL_LUMINANCE_ALPHA8I_EXT 0x8D93 +#define GL_RED_INTEGER_EXT 0x8D94 +#define GL_GREEN_INTEGER_EXT 0x8D95 +#define GL_BLUE_INTEGER_EXT 0x8D96 +#define GL_ALPHA_INTEGER_EXT 0x8D97 +#define GL_RGB_INTEGER_EXT 0x8D98 +#define GL_RGBA_INTEGER_EXT 0x8D99 +#define GL_BGR_INTEGER_EXT 0x8D9A +#define GL_BGRA_INTEGER_EXT 0x8D9B +#define GL_LUMINANCE_INTEGER_EXT 0x8D9C +#define GL_LUMINANCE_ALPHA_INTEGER_EXT 0x8D9D +#define GL_RGBA_INTEGER_MODE_EXT 0x8D9E + +typedef void (GLAPIENTRY * PFNGLCLEARCOLORIIEXTPROC) (GLint red, GLint green, GLint blue, GLint alpha); +typedef void (GLAPIENTRY * PFNGLCLEARCOLORIUIEXTPROC) (GLuint red, GLuint green, GLuint blue, GLuint alpha); +typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, GLuint *params); +typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, const GLint *params); +typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, const GLuint *params); + +#define glClearColorIiEXT GLEW_GET_FUN(__glewClearColorIiEXT) +#define glClearColorIuiEXT GLEW_GET_FUN(__glewClearColorIuiEXT) +#define glGetTexParameterIivEXT GLEW_GET_FUN(__glewGetTexParameterIivEXT) +#define glGetTexParameterIuivEXT GLEW_GET_FUN(__glewGetTexParameterIuivEXT) +#define glTexParameterIivEXT GLEW_GET_FUN(__glewTexParameterIivEXT) +#define glTexParameterIuivEXT GLEW_GET_FUN(__glewTexParameterIuivEXT) + +#define GLEW_EXT_texture_integer GLEW_GET_VAR(__GLEW_EXT_texture_integer) + +#endif /* GL_EXT_texture_integer */ + +/* ------------------------ GL_EXT_texture_lod_bias ------------------------ */ + +#ifndef GL_EXT_texture_lod_bias +#define GL_EXT_texture_lod_bias 1 + +#define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD +#define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500 +#define GL_TEXTURE_LOD_BIAS_EXT 0x8501 + +#define GLEW_EXT_texture_lod_bias GLEW_GET_VAR(__GLEW_EXT_texture_lod_bias) + +#endif /* GL_EXT_texture_lod_bias */ + +/* ---------------------- GL_EXT_texture_mirror_clamp ---------------------- */ + +#ifndef GL_EXT_texture_mirror_clamp +#define GL_EXT_texture_mirror_clamp 1 + +#define GL_MIRROR_CLAMP_EXT 0x8742 +#define GL_MIRROR_CLAMP_TO_EDGE_EXT 0x8743 +#define GL_MIRROR_CLAMP_TO_BORDER_EXT 0x8912 + +#define GLEW_EXT_texture_mirror_clamp GLEW_GET_VAR(__GLEW_EXT_texture_mirror_clamp) + +#endif /* GL_EXT_texture_mirror_clamp */ + +/* ------------------ GL_EXT_texture_mirror_clamp_to_edge ------------------ */ + +#ifndef GL_EXT_texture_mirror_clamp_to_edge +#define GL_EXT_texture_mirror_clamp_to_edge 1 + +#define GL_MIRROR_CLAMP_TO_EDGE_EXT 0x8743 + +#define GLEW_EXT_texture_mirror_clamp_to_edge GLEW_GET_VAR(__GLEW_EXT_texture_mirror_clamp_to_edge) + +#endif /* GL_EXT_texture_mirror_clamp_to_edge */ + +/* ------------------------- GL_EXT_texture_norm16 ------------------------- */ + +#ifndef GL_EXT_texture_norm16 +#define GL_EXT_texture_norm16 1 + +#define GL_RGB16_EXT 0x8054 +#define GL_RGBA16_EXT 0x805B +#define GL_R16_EXT 0x822A +#define GL_RG16_EXT 0x822C +#define GL_R16_SNORM_EXT 0x8F98 +#define GL_RG16_SNORM_EXT 0x8F99 +#define GL_RGB16_SNORM_EXT 0x8F9A +#define GL_RGBA16_SNORM_EXT 0x8F9B + +#define GLEW_EXT_texture_norm16 GLEW_GET_VAR(__GLEW_EXT_texture_norm16) + +#endif /* GL_EXT_texture_norm16 */ + +/* ------------------------- GL_EXT_texture_object ------------------------- */ + +#ifndef GL_EXT_texture_object +#define GL_EXT_texture_object 1 + +#define GL_TEXTURE_PRIORITY_EXT 0x8066 +#define GL_TEXTURE_RESIDENT_EXT 0x8067 +#define GL_TEXTURE_1D_BINDING_EXT 0x8068 +#define GL_TEXTURE_2D_BINDING_EXT 0x8069 +#define GL_TEXTURE_3D_BINDING_EXT 0x806A + +typedef GLboolean (GLAPIENTRY * PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n, const GLuint* textures, GLboolean* residences); +typedef void (GLAPIENTRY * PFNGLBINDTEXTUREEXTPROC) (GLenum target, GLuint texture); +typedef void (GLAPIENTRY * PFNGLDELETETEXTURESEXTPROC) (GLsizei n, const GLuint* textures); +typedef void (GLAPIENTRY * PFNGLGENTEXTURESEXTPROC) (GLsizei n, GLuint* textures); +typedef GLboolean (GLAPIENTRY * PFNGLISTEXTUREEXTPROC) (GLuint texture); +typedef void (GLAPIENTRY * PFNGLPRIORITIZETEXTURESEXTPROC) (GLsizei n, const GLuint* textures, const GLclampf* priorities); + +#define glAreTexturesResidentEXT GLEW_GET_FUN(__glewAreTexturesResidentEXT) +#define glBindTextureEXT GLEW_GET_FUN(__glewBindTextureEXT) +#define glDeleteTexturesEXT GLEW_GET_FUN(__glewDeleteTexturesEXT) +#define glGenTexturesEXT GLEW_GET_FUN(__glewGenTexturesEXT) +#define glIsTextureEXT GLEW_GET_FUN(__glewIsTextureEXT) +#define glPrioritizeTexturesEXT GLEW_GET_FUN(__glewPrioritizeTexturesEXT) + +#define GLEW_EXT_texture_object GLEW_GET_VAR(__GLEW_EXT_texture_object) + +#endif /* GL_EXT_texture_object */ + +/* --------------------- GL_EXT_texture_perturb_normal --------------------- */ + +#ifndef GL_EXT_texture_perturb_normal +#define GL_EXT_texture_perturb_normal 1 + +#define GL_PERTURB_EXT 0x85AE +#define GL_TEXTURE_NORMAL_EXT 0x85AF + +typedef void (GLAPIENTRY * PFNGLTEXTURENORMALEXTPROC) (GLenum mode); + +#define glTextureNormalEXT GLEW_GET_FUN(__glewTextureNormalEXT) + +#define GLEW_EXT_texture_perturb_normal GLEW_GET_VAR(__GLEW_EXT_texture_perturb_normal) + +#endif /* GL_EXT_texture_perturb_normal */ + +/* ------------------------ GL_EXT_texture_query_lod ----------------------- */ + +#ifndef GL_EXT_texture_query_lod +#define GL_EXT_texture_query_lod 1 + +#define GLEW_EXT_texture_query_lod GLEW_GET_VAR(__GLEW_EXT_texture_query_lod) + +#endif /* GL_EXT_texture_query_lod */ + +/* ------------------------ GL_EXT_texture_rectangle ----------------------- */ + +#ifndef GL_EXT_texture_rectangle +#define GL_EXT_texture_rectangle 1 + +#define GL_TEXTURE_RECTANGLE_EXT 0x84F5 +#define GL_TEXTURE_BINDING_RECTANGLE_EXT 0x84F6 +#define GL_PROXY_TEXTURE_RECTANGLE_EXT 0x84F7 +#define GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x84F8 + +#define GLEW_EXT_texture_rectangle GLEW_GET_VAR(__GLEW_EXT_texture_rectangle) + +#endif /* GL_EXT_texture_rectangle */ + +/* --------------------------- GL_EXT_texture_rg --------------------------- */ + +#ifndef GL_EXT_texture_rg +#define GL_EXT_texture_rg 1 + +#define GL_RED_EXT 0x1903 +#define GL_RG_EXT 0x8227 +#define GL_R8_EXT 0x8229 +#define GL_RG8_EXT 0x822B + +#define GLEW_EXT_texture_rg GLEW_GET_VAR(__GLEW_EXT_texture_rg) + +#endif /* GL_EXT_texture_rg */ + +/* -------------------------- GL_EXT_texture_sRGB -------------------------- */ + +#ifndef GL_EXT_texture_sRGB +#define GL_EXT_texture_sRGB 1 + +#define GL_SRGB_EXT 0x8C40 +#define GL_SRGB8_EXT 0x8C41 +#define GL_SRGB_ALPHA_EXT 0x8C42 +#define GL_SRGB8_ALPHA8_EXT 0x8C43 +#define GL_SLUMINANCE_ALPHA_EXT 0x8C44 +#define GL_SLUMINANCE8_ALPHA8_EXT 0x8C45 +#define GL_SLUMINANCE_EXT 0x8C46 +#define GL_SLUMINANCE8_EXT 0x8C47 +#define GL_COMPRESSED_SRGB_EXT 0x8C48 +#define GL_COMPRESSED_SRGB_ALPHA_EXT 0x8C49 +#define GL_COMPRESSED_SLUMINANCE_EXT 0x8C4A +#define GL_COMPRESSED_SLUMINANCE_ALPHA_EXT 0x8C4B +#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F + +#define GLEW_EXT_texture_sRGB GLEW_GET_VAR(__GLEW_EXT_texture_sRGB) + +#endif /* GL_EXT_texture_sRGB */ + +/* ------------------------- GL_EXT_texture_sRGB_R8 ------------------------ */ + +#ifndef GL_EXT_texture_sRGB_R8 +#define GL_EXT_texture_sRGB_R8 1 + +#define GL_SR8_EXT 0x8FBD + +#define GLEW_EXT_texture_sRGB_R8 GLEW_GET_VAR(__GLEW_EXT_texture_sRGB_R8) + +#endif /* GL_EXT_texture_sRGB_R8 */ + +/* ------------------------ GL_EXT_texture_sRGB_RG8 ------------------------ */ + +#ifndef GL_EXT_texture_sRGB_RG8 +#define GL_EXT_texture_sRGB_RG8 1 + +#define GL_SRG8_EXT 0x8FBE + +#define GLEW_EXT_texture_sRGB_RG8 GLEW_GET_VAR(__GLEW_EXT_texture_sRGB_RG8) + +#endif /* GL_EXT_texture_sRGB_RG8 */ + +/* ----------------------- GL_EXT_texture_sRGB_decode ---------------------- */ + +#ifndef GL_EXT_texture_sRGB_decode +#define GL_EXT_texture_sRGB_decode 1 + +#define GL_TEXTURE_SRGB_DECODE_EXT 0x8A48 +#define GL_DECODE_EXT 0x8A49 +#define GL_SKIP_DECODE_EXT 0x8A4A + +#define GLEW_EXT_texture_sRGB_decode GLEW_GET_VAR(__GLEW_EXT_texture_sRGB_decode) + +#endif /* GL_EXT_texture_sRGB_decode */ + +/* ----------------------- GL_EXT_texture_shadow_lod ----------------------- */ + +#ifndef GL_EXT_texture_shadow_lod +#define GL_EXT_texture_shadow_lod 1 + +#define GLEW_EXT_texture_shadow_lod GLEW_GET_VAR(__GLEW_EXT_texture_shadow_lod) + +#endif /* GL_EXT_texture_shadow_lod */ + +/* --------------------- GL_EXT_texture_shared_exponent -------------------- */ + +#ifndef GL_EXT_texture_shared_exponent +#define GL_EXT_texture_shared_exponent 1 + +#define GL_RGB9_E5_EXT 0x8C3D +#define GL_UNSIGNED_INT_5_9_9_9_REV_EXT 0x8C3E +#define GL_TEXTURE_SHARED_SIZE_EXT 0x8C3F + +#define GLEW_EXT_texture_shared_exponent GLEW_GET_VAR(__GLEW_EXT_texture_shared_exponent) + +#endif /* GL_EXT_texture_shared_exponent */ + +/* -------------------------- GL_EXT_texture_snorm ------------------------- */ + +#ifndef GL_EXT_texture_snorm +#define GL_EXT_texture_snorm 1 + +#define GL_RED_SNORM 0x8F90 +#define GL_RG_SNORM 0x8F91 +#define GL_RGB_SNORM 0x8F92 +#define GL_RGBA_SNORM 0x8F93 +#define GL_R8_SNORM 0x8F94 +#define GL_RG8_SNORM 0x8F95 +#define GL_RGB8_SNORM 0x8F96 +#define GL_RGBA8_SNORM 0x8F97 +#define GL_R16_SNORM 0x8F98 +#define GL_RG16_SNORM 0x8F99 +#define GL_RGB16_SNORM 0x8F9A +#define GL_RGBA16_SNORM 0x8F9B +#define GL_SIGNED_NORMALIZED 0x8F9C +#define GL_ALPHA_SNORM 0x9010 +#define GL_LUMINANCE_SNORM 0x9011 +#define GL_LUMINANCE_ALPHA_SNORM 0x9012 +#define GL_INTENSITY_SNORM 0x9013 +#define GL_ALPHA8_SNORM 0x9014 +#define GL_LUMINANCE8_SNORM 0x9015 +#define GL_LUMINANCE8_ALPHA8_SNORM 0x9016 +#define GL_INTENSITY8_SNORM 0x9017 +#define GL_ALPHA16_SNORM 0x9018 +#define GL_LUMINANCE16_SNORM 0x9019 +#define GL_LUMINANCE16_ALPHA16_SNORM 0x901A +#define GL_INTENSITY16_SNORM 0x901B + +#define GLEW_EXT_texture_snorm GLEW_GET_VAR(__GLEW_EXT_texture_snorm) + +#endif /* GL_EXT_texture_snorm */ + +/* ------------------------- GL_EXT_texture_storage ------------------------ */ + +#ifndef GL_EXT_texture_storage +#define GL_EXT_texture_storage 1 + +#define GL_ALPHA8_EXT 0x803C +#define GL_LUMINANCE8_EXT 0x8040 +#define GL_LUMINANCE8_ALPHA8_EXT 0x8045 +#define GL_RGB10_EXT 0x8052 +#define GL_RGB10_A2_EXT 0x8059 +#define GL_R8_EXT 0x8229 +#define GL_RG8_EXT 0x822B +#define GL_R16F_EXT 0x822D +#define GL_R32F_EXT 0x822E +#define GL_RG16F_EXT 0x822F +#define GL_RG32F_EXT 0x8230 +#define GL_RGBA32F_EXT 0x8814 +#define GL_RGB32F_EXT 0x8815 +#define GL_ALPHA32F_EXT 0x8816 +#define GL_LUMINANCE32F_EXT 0x8818 +#define GL_LUMINANCE_ALPHA32F_EXT 0x8819 +#define GL_RGBA16F_EXT 0x881A +#define GL_RGB16F_EXT 0x881B +#define GL_ALPHA16F_EXT 0x881C +#define GL_LUMINANCE16F_EXT 0x881E +#define GL_LUMINANCE_ALPHA16F_EXT 0x881F +#define GL_RGB_RAW_422_APPLE 0x8A51 +#define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F +#define GL_BGRA8_EXT 0x93A1 + +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); + +#define glTexStorage1DEXT GLEW_GET_FUN(__glewTexStorage1DEXT) +#define glTexStorage2DEXT GLEW_GET_FUN(__glewTexStorage2DEXT) +#define glTexStorage3DEXT GLEW_GET_FUN(__glewTexStorage3DEXT) +#define glTextureStorage1DEXT GLEW_GET_FUN(__glewTextureStorage1DEXT) +#define glTextureStorage2DEXT GLEW_GET_FUN(__glewTextureStorage2DEXT) +#define glTextureStorage3DEXT GLEW_GET_FUN(__glewTextureStorage3DEXT) + +#define GLEW_EXT_texture_storage GLEW_GET_VAR(__GLEW_EXT_texture_storage) + +#endif /* GL_EXT_texture_storage */ + +/* ------------------------- GL_EXT_texture_swizzle ------------------------ */ + +#ifndef GL_EXT_texture_swizzle +#define GL_EXT_texture_swizzle 1 + +#define GL_TEXTURE_SWIZZLE_R_EXT 0x8E42 +#define GL_TEXTURE_SWIZZLE_G_EXT 0x8E43 +#define GL_TEXTURE_SWIZZLE_B_EXT 0x8E44 +#define GL_TEXTURE_SWIZZLE_A_EXT 0x8E45 +#define GL_TEXTURE_SWIZZLE_RGBA_EXT 0x8E46 + +#define GLEW_EXT_texture_swizzle GLEW_GET_VAR(__GLEW_EXT_texture_swizzle) + +#endif /* GL_EXT_texture_swizzle */ + +/* ------------------- GL_EXT_texture_type_2_10_10_10_REV ------------------ */ + +#ifndef GL_EXT_texture_type_2_10_10_10_REV +#define GL_EXT_texture_type_2_10_10_10_REV 1 + +#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368 + +#define GLEW_EXT_texture_type_2_10_10_10_REV GLEW_GET_VAR(__GLEW_EXT_texture_type_2_10_10_10_REV) + +#endif /* GL_EXT_texture_type_2_10_10_10_REV */ + +/* -------------------------- GL_EXT_texture_view -------------------------- */ + +#ifndef GL_EXT_texture_view +#define GL_EXT_texture_view 1 + +#define GL_TEXTURE_VIEW_MIN_LEVEL_EXT 0x82DB +#define GL_TEXTURE_VIEW_NUM_LEVELS_EXT 0x82DC +#define GL_TEXTURE_VIEW_MIN_LAYER_EXT 0x82DD +#define GL_TEXTURE_VIEW_NUM_LAYERS_EXT 0x82DE +#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF + +typedef void (GLAPIENTRY * PFNGLTEXTUREVIEWEXTPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers); + +#define glTextureViewEXT GLEW_GET_FUN(__glewTextureViewEXT) + +#define GLEW_EXT_texture_view GLEW_GET_VAR(__GLEW_EXT_texture_view) + +#endif /* GL_EXT_texture_view */ + +/* --------------------------- GL_EXT_timer_query -------------------------- */ + +#ifndef GL_EXT_timer_query +#define GL_EXT_timer_query 1 + +#define GL_TIME_ELAPSED_EXT 0x88BF + +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64EXT *params); +typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VEXTPROC) (GLuint id, GLenum pname, GLuint64EXT *params); + +#define glGetQueryObjecti64vEXT GLEW_GET_FUN(__glewGetQueryObjecti64vEXT) +#define glGetQueryObjectui64vEXT GLEW_GET_FUN(__glewGetQueryObjectui64vEXT) + +#define GLEW_EXT_timer_query GLEW_GET_VAR(__GLEW_EXT_timer_query) + +#endif /* GL_EXT_timer_query */ + +/* ----------------------- GL_EXT_transform_feedback ----------------------- */ + +#ifndef GL_EXT_transform_feedback +#define GL_EXT_transform_feedback 1 + +#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT 0x8C76 +#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT 0x8C7F +#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT 0x8C80 +#define GL_TRANSFORM_FEEDBACK_VARYINGS_EXT 0x8C83 +#define GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT 0x8C84 +#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT 0x8C85 +#define GL_PRIMITIVES_GENERATED_EXT 0x8C87 +#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT 0x8C88 +#define GL_RASTERIZER_DISCARD_EXT 0x8C89 +#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT 0x8C8A +#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT 0x8C8B +#define GL_INTERLEAVED_ATTRIBS_EXT 0x8C8C +#define GL_SEPARATE_ATTRIBS_EXT 0x8C8D +#define GL_TRANSFORM_FEEDBACK_BUFFER_EXT 0x8C8E +#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT 0x8C8F + +typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKEXTPROC) (GLenum primitiveMode); +typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASEEXTPROC) (GLenum target, GLuint index, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSETEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGEEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); +typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKEXTPROC) (void); +typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei *size, GLenum *type, GLchar *name); +typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC) (GLuint program, GLsizei count, const GLchar * const* varyings, GLenum bufferMode); + +#define glBeginTransformFeedbackEXT GLEW_GET_FUN(__glewBeginTransformFeedbackEXT) +#define glBindBufferBaseEXT GLEW_GET_FUN(__glewBindBufferBaseEXT) +#define glBindBufferOffsetEXT GLEW_GET_FUN(__glewBindBufferOffsetEXT) +#define glBindBufferRangeEXT GLEW_GET_FUN(__glewBindBufferRangeEXT) +#define glEndTransformFeedbackEXT GLEW_GET_FUN(__glewEndTransformFeedbackEXT) +#define glGetTransformFeedbackVaryingEXT GLEW_GET_FUN(__glewGetTransformFeedbackVaryingEXT) +#define glTransformFeedbackVaryingsEXT GLEW_GET_FUN(__glewTransformFeedbackVaryingsEXT) + +#define GLEW_EXT_transform_feedback GLEW_GET_VAR(__GLEW_EXT_transform_feedback) + +#endif /* GL_EXT_transform_feedback */ + +/* ------------------------- GL_EXT_unpack_subimage ------------------------ */ + +#ifndef GL_EXT_unpack_subimage +#define GL_EXT_unpack_subimage 1 + +#define GL_UNPACK_ROW_LENGTH_EXT 0x0CF2 +#define GL_UNPACK_SKIP_ROWS_EXT 0x0CF3 +#define GL_UNPACK_SKIP_PIXELS_EXT 0x0CF4 + +#define GLEW_EXT_unpack_subimage GLEW_GET_VAR(__GLEW_EXT_unpack_subimage) + +#endif /* GL_EXT_unpack_subimage */ + +/* -------------------------- GL_EXT_vertex_array -------------------------- */ + +#ifndef GL_EXT_vertex_array +#define GL_EXT_vertex_array 1 + +#define GL_DOUBLE_EXT 0x140A +#define GL_VERTEX_ARRAY_EXT 0x8074 +#define GL_NORMAL_ARRAY_EXT 0x8075 +#define GL_COLOR_ARRAY_EXT 0x8076 +#define GL_INDEX_ARRAY_EXT 0x8077 +#define GL_TEXTURE_COORD_ARRAY_EXT 0x8078 +#define GL_EDGE_FLAG_ARRAY_EXT 0x8079 +#define GL_VERTEX_ARRAY_SIZE_EXT 0x807A +#define GL_VERTEX_ARRAY_TYPE_EXT 0x807B +#define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C +#define GL_VERTEX_ARRAY_COUNT_EXT 0x807D +#define GL_NORMAL_ARRAY_TYPE_EXT 0x807E +#define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F +#define GL_NORMAL_ARRAY_COUNT_EXT 0x8080 +#define GL_COLOR_ARRAY_SIZE_EXT 0x8081 +#define GL_COLOR_ARRAY_TYPE_EXT 0x8082 +#define GL_COLOR_ARRAY_STRIDE_EXT 0x8083 +#define GL_COLOR_ARRAY_COUNT_EXT 0x8084 +#define GL_INDEX_ARRAY_TYPE_EXT 0x8085 +#define GL_INDEX_ARRAY_STRIDE_EXT 0x8086 +#define GL_INDEX_ARRAY_COUNT_EXT 0x8087 +#define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088 +#define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089 +#define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A +#define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B +#define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C +#define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D +#define GL_VERTEX_ARRAY_POINTER_EXT 0x808E +#define GL_NORMAL_ARRAY_POINTER_EXT 0x808F +#define GL_COLOR_ARRAY_POINTER_EXT 0x8090 +#define GL_INDEX_ARRAY_POINTER_EXT 0x8091 +#define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092 +#define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093 + +typedef void (GLAPIENTRY * PFNGLARRAYELEMENTEXTPROC) (GLint i); +typedef void (GLAPIENTRY * PFNGLCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer); +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSEXTPROC) (GLenum mode, GLint first, GLsizei count); +typedef void (GLAPIENTRY * PFNGLEDGEFLAGPOINTEREXTPROC) (GLsizei stride, GLsizei count, const GLboolean* pointer); +typedef void (GLAPIENTRY * PFNGLINDEXPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const void *pointer); +typedef void (GLAPIENTRY * PFNGLNORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const void *pointer); +typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer); +typedef void (GLAPIENTRY * PFNGLVERTEXPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer); + +#define glArrayElementEXT GLEW_GET_FUN(__glewArrayElementEXT) +#define glColorPointerEXT GLEW_GET_FUN(__glewColorPointerEXT) +#define glDrawArraysEXT GLEW_GET_FUN(__glewDrawArraysEXT) +#define glEdgeFlagPointerEXT GLEW_GET_FUN(__glewEdgeFlagPointerEXT) +#define glIndexPointerEXT GLEW_GET_FUN(__glewIndexPointerEXT) +#define glNormalPointerEXT GLEW_GET_FUN(__glewNormalPointerEXT) +#define glTexCoordPointerEXT GLEW_GET_FUN(__glewTexCoordPointerEXT) +#define glVertexPointerEXT GLEW_GET_FUN(__glewVertexPointerEXT) + +#define GLEW_EXT_vertex_array GLEW_GET_VAR(__GLEW_EXT_vertex_array) + +#endif /* GL_EXT_vertex_array */ + +/* ------------------------ GL_EXT_vertex_array_bgra ----------------------- */ + +#ifndef GL_EXT_vertex_array_bgra +#define GL_EXT_vertex_array_bgra 1 + +#define GL_BGRA 0x80E1 + +#define GLEW_EXT_vertex_array_bgra GLEW_GET_VAR(__GLEW_EXT_vertex_array_bgra) + +#endif /* GL_EXT_vertex_array_bgra */ + +/* ----------------------- GL_EXT_vertex_array_setXXX ---------------------- */ + +#ifndef GL_EXT_vertex_array_setXXX +#define GL_EXT_vertex_array_setXXX 1 + +typedef void (GLAPIENTRY * PFNGLBINDARRAYSETEXTPROC) (const void *arrayset); +typedef const void * (GLAPIENTRY * PFNGLCREATEARRAYSETEXTPROC) (void); +typedef void (GLAPIENTRY * PFNGLDELETEARRAYSETSEXTPROC) (GLsizei n, const void *arrayset[]); + +#define glBindArraySetEXT GLEW_GET_FUN(__glewBindArraySetEXT) +#define glCreateArraySetExt GLEW_GET_FUN(__glewCreateArraySetExt) +#define glDeleteArraySetsEXT GLEW_GET_FUN(__glewDeleteArraySetsEXT) + +#define GLEW_EXT_vertex_array_setXXX GLEW_GET_VAR(__GLEW_EXT_vertex_array_setXXX) + +#endif /* GL_EXT_vertex_array_setXXX */ + +/* ----------------------- GL_EXT_vertex_attrib_64bit ---------------------- */ + +#ifndef GL_EXT_vertex_attrib_64bit +#define GL_EXT_vertex_attrib_64bit 1 + +#define GL_DOUBLE_MAT2_EXT 0x8F46 +#define GL_DOUBLE_MAT3_EXT 0x8F47 +#define GL_DOUBLE_MAT4_EXT 0x8F48 +#define GL_DOUBLE_MAT2x3_EXT 0x8F49 +#define GL_DOUBLE_MAT2x4_EXT 0x8F4A +#define GL_DOUBLE_MAT3x2_EXT 0x8F4B +#define GL_DOUBLE_MAT3x4_EXT 0x8F4C +#define GL_DOUBLE_MAT4x2_EXT 0x8F4D +#define GL_DOUBLE_MAT4x3_EXT 0x8F4E +#define GL_DOUBLE_VEC2_EXT 0x8FFC +#define GL_DOUBLE_VEC3_EXT 0x8FFD +#define GL_DOUBLE_VEC4_EXT 0x8FFE + +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLDVEXTPROC) (GLuint index, GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DEXTPROC) (GLuint index, GLdouble x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DVEXTPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DEXTPROC) (GLuint index, GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DVEXTPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DVEXTPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DVEXTPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer); + +#define glGetVertexAttribLdvEXT GLEW_GET_FUN(__glewGetVertexAttribLdvEXT) +#define glVertexArrayVertexAttribLOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribLOffsetEXT) +#define glVertexAttribL1dEXT GLEW_GET_FUN(__glewVertexAttribL1dEXT) +#define glVertexAttribL1dvEXT GLEW_GET_FUN(__glewVertexAttribL1dvEXT) +#define glVertexAttribL2dEXT GLEW_GET_FUN(__glewVertexAttribL2dEXT) +#define glVertexAttribL2dvEXT GLEW_GET_FUN(__glewVertexAttribL2dvEXT) +#define glVertexAttribL3dEXT GLEW_GET_FUN(__glewVertexAttribL3dEXT) +#define glVertexAttribL3dvEXT GLEW_GET_FUN(__glewVertexAttribL3dvEXT) +#define glVertexAttribL4dEXT GLEW_GET_FUN(__glewVertexAttribL4dEXT) +#define glVertexAttribL4dvEXT GLEW_GET_FUN(__glewVertexAttribL4dvEXT) +#define glVertexAttribLPointerEXT GLEW_GET_FUN(__glewVertexAttribLPointerEXT) + +#define GLEW_EXT_vertex_attrib_64bit GLEW_GET_VAR(__GLEW_EXT_vertex_attrib_64bit) + +#endif /* GL_EXT_vertex_attrib_64bit */ + +/* -------------------------- GL_EXT_vertex_shader ------------------------- */ + +#ifndef GL_EXT_vertex_shader +#define GL_EXT_vertex_shader 1 + +#define GL_VERTEX_SHADER_EXT 0x8780 +#define GL_VERTEX_SHADER_BINDING_EXT 0x8781 +#define GL_OP_INDEX_EXT 0x8782 +#define GL_OP_NEGATE_EXT 0x8783 +#define GL_OP_DOT3_EXT 0x8784 +#define GL_OP_DOT4_EXT 0x8785 +#define GL_OP_MUL_EXT 0x8786 +#define GL_OP_ADD_EXT 0x8787 +#define GL_OP_MADD_EXT 0x8788 +#define GL_OP_FRAC_EXT 0x8789 +#define GL_OP_MAX_EXT 0x878A +#define GL_OP_MIN_EXT 0x878B +#define GL_OP_SET_GE_EXT 0x878C +#define GL_OP_SET_LT_EXT 0x878D +#define GL_OP_CLAMP_EXT 0x878E +#define GL_OP_FLOOR_EXT 0x878F +#define GL_OP_ROUND_EXT 0x8790 +#define GL_OP_EXP_BASE_2_EXT 0x8791 +#define GL_OP_LOG_BASE_2_EXT 0x8792 +#define GL_OP_POWER_EXT 0x8793 +#define GL_OP_RECIP_EXT 0x8794 +#define GL_OP_RECIP_SQRT_EXT 0x8795 +#define GL_OP_SUB_EXT 0x8796 +#define GL_OP_CROSS_PRODUCT_EXT 0x8797 +#define GL_OP_MULTIPLY_MATRIX_EXT 0x8798 +#define GL_OP_MOV_EXT 0x8799 +#define GL_OUTPUT_VERTEX_EXT 0x879A +#define GL_OUTPUT_COLOR0_EXT 0x879B +#define GL_OUTPUT_COLOR1_EXT 0x879C +#define GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D +#define GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E +#define GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F +#define GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0 +#define GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1 +#define GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2 +#define GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3 +#define GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4 +#define GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5 +#define GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6 +#define GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7 +#define GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8 +#define GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9 +#define GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA +#define GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB +#define GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC +#define GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD +#define GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE +#define GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF +#define GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0 +#define GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1 +#define GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2 +#define GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3 +#define GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4 +#define GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5 +#define GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6 +#define GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7 +#define GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8 +#define GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9 +#define GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA +#define GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB +#define GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC +#define GL_OUTPUT_FOG_EXT 0x87BD +#define GL_SCALAR_EXT 0x87BE +#define GL_VECTOR_EXT 0x87BF +#define GL_MATRIX_EXT 0x87C0 +#define GL_VARIANT_EXT 0x87C1 +#define GL_INVARIANT_EXT 0x87C2 +#define GL_LOCAL_CONSTANT_EXT 0x87C3 +#define GL_LOCAL_EXT 0x87C4 +#define GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5 +#define GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6 +#define GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7 +#define GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8 +#define GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9 +#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA +#define GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB +#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC +#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD +#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE +#define GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF +#define GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0 +#define GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1 +#define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2 +#define GL_VERTEX_SHADER_LOCALS_EXT 0x87D3 +#define GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4 +#define GL_X_EXT 0x87D5 +#define GL_Y_EXT 0x87D6 +#define GL_Z_EXT 0x87D7 +#define GL_W_EXT 0x87D8 +#define GL_NEGATIVE_X_EXT 0x87D9 +#define GL_NEGATIVE_Y_EXT 0x87DA +#define GL_NEGATIVE_Z_EXT 0x87DB +#define GL_NEGATIVE_W_EXT 0x87DC +#define GL_ZERO_EXT 0x87DD +#define GL_ONE_EXT 0x87DE +#define GL_NEGATIVE_ONE_EXT 0x87DF +#define GL_NORMALIZED_RANGE_EXT 0x87E0 +#define GL_FULL_RANGE_EXT 0x87E1 +#define GL_CURRENT_VERTEX_EXT 0x87E2 +#define GL_MVP_MATRIX_EXT 0x87E3 +#define GL_VARIANT_VALUE_EXT 0x87E4 +#define GL_VARIANT_DATATYPE_EXT 0x87E5 +#define GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6 +#define GL_VARIANT_ARRAY_TYPE_EXT 0x87E7 +#define GL_VARIANT_ARRAY_EXT 0x87E8 +#define GL_VARIANT_ARRAY_POINTER_EXT 0x87E9 +#define GL_INVARIANT_VALUE_EXT 0x87EA +#define GL_INVARIANT_DATATYPE_EXT 0x87EB +#define GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC +#define GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED + +typedef void (GLAPIENTRY * PFNGLBEGINVERTEXSHADEREXTPROC) (void); +typedef GLuint (GLAPIENTRY * PFNGLBINDLIGHTPARAMETEREXTPROC) (GLenum light, GLenum value); +typedef GLuint (GLAPIENTRY * PFNGLBINDMATERIALPARAMETEREXTPROC) (GLenum face, GLenum value); +typedef GLuint (GLAPIENTRY * PFNGLBINDPARAMETEREXTPROC) (GLenum value); +typedef GLuint (GLAPIENTRY * PFNGLBINDTEXGENPARAMETEREXTPROC) (GLenum unit, GLenum coord, GLenum value); +typedef GLuint (GLAPIENTRY * PFNGLBINDTEXTUREUNITPARAMETEREXTPROC) (GLenum unit, GLenum value); +typedef void (GLAPIENTRY * PFNGLBINDVERTEXSHADEREXTPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLDELETEVERTEXSHADEREXTPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLENABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLENDVERTEXSHADEREXTPROC) (void); +typedef void (GLAPIENTRY * PFNGLEXTRACTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num); +typedef GLuint (GLAPIENTRY * PFNGLGENSYMBOLSEXTPROC) (GLenum dataType, GLenum storageType, GLenum range, GLuint components); +typedef GLuint (GLAPIENTRY * PFNGLGENVERTEXSHADERSEXTPROC) (GLuint range); +typedef void (GLAPIENTRY * PFNGLGETINVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data); +typedef void (GLAPIENTRY * PFNGLGETINVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data); +typedef void (GLAPIENTRY * PFNGLGETINVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data); +typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data); +typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data); +typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data); +typedef void (GLAPIENTRY * PFNGLGETVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data); +typedef void (GLAPIENTRY * PFNGLGETVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data); +typedef void (GLAPIENTRY * PFNGLGETVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data); +typedef void (GLAPIENTRY * PFNGLGETVARIANTPOINTERVEXTPROC) (GLuint id, GLenum value, void **data); +typedef void (GLAPIENTRY * PFNGLINSERTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num); +typedef GLboolean (GLAPIENTRY * PFNGLISVARIANTENABLEDEXTPROC) (GLuint id, GLenum cap); +typedef void (GLAPIENTRY * PFNGLSETINVARIANTEXTPROC) (GLuint id, GLenum type, void *addr); +typedef void (GLAPIENTRY * PFNGLSETLOCALCONSTANTEXTPROC) (GLuint id, GLenum type, void *addr); +typedef void (GLAPIENTRY * PFNGLSHADEROP1EXTPROC) (GLenum op, GLuint res, GLuint arg1); +typedef void (GLAPIENTRY * PFNGLSHADEROP2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2); +typedef void (GLAPIENTRY * PFNGLSHADEROP3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3); +typedef void (GLAPIENTRY * PFNGLSWIZZLEEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); +typedef void (GLAPIENTRY * PFNGLVARIANTPOINTEREXTPROC) (GLuint id, GLenum type, GLuint stride, void *addr); +typedef void (GLAPIENTRY * PFNGLVARIANTBVEXTPROC) (GLuint id, GLbyte *addr); +typedef void (GLAPIENTRY * PFNGLVARIANTDVEXTPROC) (GLuint id, GLdouble *addr); +typedef void (GLAPIENTRY * PFNGLVARIANTFVEXTPROC) (GLuint id, GLfloat *addr); +typedef void (GLAPIENTRY * PFNGLVARIANTIVEXTPROC) (GLuint id, GLint *addr); +typedef void (GLAPIENTRY * PFNGLVARIANTSVEXTPROC) (GLuint id, GLshort *addr); +typedef void (GLAPIENTRY * PFNGLVARIANTUBVEXTPROC) (GLuint id, GLubyte *addr); +typedef void (GLAPIENTRY * PFNGLVARIANTUIVEXTPROC) (GLuint id, GLuint *addr); +typedef void (GLAPIENTRY * PFNGLVARIANTUSVEXTPROC) (GLuint id, GLushort *addr); +typedef void (GLAPIENTRY * PFNGLWRITEMASKEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); + +#define glBeginVertexShaderEXT GLEW_GET_FUN(__glewBeginVertexShaderEXT) +#define glBindLightParameterEXT GLEW_GET_FUN(__glewBindLightParameterEXT) +#define glBindMaterialParameterEXT GLEW_GET_FUN(__glewBindMaterialParameterEXT) +#define glBindParameterEXT GLEW_GET_FUN(__glewBindParameterEXT) +#define glBindTexGenParameterEXT GLEW_GET_FUN(__glewBindTexGenParameterEXT) +#define glBindTextureUnitParameterEXT GLEW_GET_FUN(__glewBindTextureUnitParameterEXT) +#define glBindVertexShaderEXT GLEW_GET_FUN(__glewBindVertexShaderEXT) +#define glDeleteVertexShaderEXT GLEW_GET_FUN(__glewDeleteVertexShaderEXT) +#define glDisableVariantClientStateEXT GLEW_GET_FUN(__glewDisableVariantClientStateEXT) +#define glEnableVariantClientStateEXT GLEW_GET_FUN(__glewEnableVariantClientStateEXT) +#define glEndVertexShaderEXT GLEW_GET_FUN(__glewEndVertexShaderEXT) +#define glExtractComponentEXT GLEW_GET_FUN(__glewExtractComponentEXT) +#define glGenSymbolsEXT GLEW_GET_FUN(__glewGenSymbolsEXT) +#define glGenVertexShadersEXT GLEW_GET_FUN(__glewGenVertexShadersEXT) +#define glGetInvariantBooleanvEXT GLEW_GET_FUN(__glewGetInvariantBooleanvEXT) +#define glGetInvariantFloatvEXT GLEW_GET_FUN(__glewGetInvariantFloatvEXT) +#define glGetInvariantIntegervEXT GLEW_GET_FUN(__glewGetInvariantIntegervEXT) +#define glGetLocalConstantBooleanvEXT GLEW_GET_FUN(__glewGetLocalConstantBooleanvEXT) +#define glGetLocalConstantFloatvEXT GLEW_GET_FUN(__glewGetLocalConstantFloatvEXT) +#define glGetLocalConstantIntegervEXT GLEW_GET_FUN(__glewGetLocalConstantIntegervEXT) +#define glGetVariantBooleanvEXT GLEW_GET_FUN(__glewGetVariantBooleanvEXT) +#define glGetVariantFloatvEXT GLEW_GET_FUN(__glewGetVariantFloatvEXT) +#define glGetVariantIntegervEXT GLEW_GET_FUN(__glewGetVariantIntegervEXT) +#define glGetVariantPointervEXT GLEW_GET_FUN(__glewGetVariantPointervEXT) +#define glInsertComponentEXT GLEW_GET_FUN(__glewInsertComponentEXT) +#define glIsVariantEnabledEXT GLEW_GET_FUN(__glewIsVariantEnabledEXT) +#define glSetInvariantEXT GLEW_GET_FUN(__glewSetInvariantEXT) +#define glSetLocalConstantEXT GLEW_GET_FUN(__glewSetLocalConstantEXT) +#define glShaderOp1EXT GLEW_GET_FUN(__glewShaderOp1EXT) +#define glShaderOp2EXT GLEW_GET_FUN(__glewShaderOp2EXT) +#define glShaderOp3EXT GLEW_GET_FUN(__glewShaderOp3EXT) +#define glSwizzleEXT GLEW_GET_FUN(__glewSwizzleEXT) +#define glVariantPointerEXT GLEW_GET_FUN(__glewVariantPointerEXT) +#define glVariantbvEXT GLEW_GET_FUN(__glewVariantbvEXT) +#define glVariantdvEXT GLEW_GET_FUN(__glewVariantdvEXT) +#define glVariantfvEXT GLEW_GET_FUN(__glewVariantfvEXT) +#define glVariantivEXT GLEW_GET_FUN(__glewVariantivEXT) +#define glVariantsvEXT GLEW_GET_FUN(__glewVariantsvEXT) +#define glVariantubvEXT GLEW_GET_FUN(__glewVariantubvEXT) +#define glVariantuivEXT GLEW_GET_FUN(__glewVariantuivEXT) +#define glVariantusvEXT GLEW_GET_FUN(__glewVariantusvEXT) +#define glWriteMaskEXT GLEW_GET_FUN(__glewWriteMaskEXT) + +#define GLEW_EXT_vertex_shader GLEW_GET_VAR(__GLEW_EXT_vertex_shader) + +#endif /* GL_EXT_vertex_shader */ + +/* ------------------------ GL_EXT_vertex_weighting ------------------------ */ + +#ifndef GL_EXT_vertex_weighting +#define GL_EXT_vertex_weighting 1 + +#define GL_MODELVIEW0_STACK_DEPTH_EXT 0x0BA3 +#define GL_MODELVIEW0_MATRIX_EXT 0x0BA6 +#define GL_MODELVIEW0_EXT 0x1700 +#define GL_MODELVIEW1_STACK_DEPTH_EXT 0x8502 +#define GL_MODELVIEW1_MATRIX_EXT 0x8506 +#define GL_VERTEX_WEIGHTING_EXT 0x8509 +#define GL_MODELVIEW1_EXT 0x850A +#define GL_CURRENT_VERTEX_WEIGHT_EXT 0x850B +#define GL_VERTEX_WEIGHT_ARRAY_EXT 0x850C +#define GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT 0x850D +#define GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT 0x850E +#define GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F +#define GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510 + +typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); +typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTFEXTPROC) (GLfloat weight); +typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTFVEXTPROC) (GLfloat* weight); + +#define glVertexWeightPointerEXT GLEW_GET_FUN(__glewVertexWeightPointerEXT) +#define glVertexWeightfEXT GLEW_GET_FUN(__glewVertexWeightfEXT) +#define glVertexWeightfvEXT GLEW_GET_FUN(__glewVertexWeightfvEXT) + +#define GLEW_EXT_vertex_weighting GLEW_GET_VAR(__GLEW_EXT_vertex_weighting) + +#endif /* GL_EXT_vertex_weighting */ + +/* ------------------------ GL_EXT_win32_keyed_mutex ----------------------- */ + +#ifndef GL_EXT_win32_keyed_mutex +#define GL_EXT_win32_keyed_mutex 1 + +typedef GLboolean (GLAPIENTRY * PFNGLACQUIREKEYEDMUTEXWIN32EXTPROC) (GLuint memory, GLuint64 key, GLuint timeout); +typedef GLboolean (GLAPIENTRY * PFNGLRELEASEKEYEDMUTEXWIN32EXTPROC) (GLuint memory, GLuint64 key); + +#define glAcquireKeyedMutexWin32EXT GLEW_GET_FUN(__glewAcquireKeyedMutexWin32EXT) +#define glReleaseKeyedMutexWin32EXT GLEW_GET_FUN(__glewReleaseKeyedMutexWin32EXT) + +#define GLEW_EXT_win32_keyed_mutex GLEW_GET_VAR(__GLEW_EXT_win32_keyed_mutex) + +#endif /* GL_EXT_win32_keyed_mutex */ + +/* ------------------------ GL_EXT_window_rectangles ----------------------- */ + +#ifndef GL_EXT_window_rectangles +#define GL_EXT_window_rectangles 1 + +#define GL_INCLUSIVE_EXT 0x8F10 +#define GL_EXCLUSIVE_EXT 0x8F11 +#define GL_WINDOW_RECTANGLE_EXT 0x8F12 +#define GL_WINDOW_RECTANGLE_MODE_EXT 0x8F13 +#define GL_MAX_WINDOW_RECTANGLES_EXT 0x8F14 +#define GL_NUM_WINDOW_RECTANGLES_EXT 0x8F15 + +typedef void (GLAPIENTRY * PFNGLWINDOWRECTANGLESEXTPROC) (GLenum mode, GLsizei count, const GLint box[]); + +#define glWindowRectanglesEXT GLEW_GET_FUN(__glewWindowRectanglesEXT) + +#define GLEW_EXT_window_rectangles GLEW_GET_VAR(__GLEW_EXT_window_rectangles) + +#endif /* GL_EXT_window_rectangles */ + +/* ------------------------- GL_EXT_x11_sync_object ------------------------ */ + +#ifndef GL_EXT_x11_sync_object +#define GL_EXT_x11_sync_object 1 + +#define GL_SYNC_X11_FENCE_EXT 0x90E1 + +typedef GLsync (GLAPIENTRY * PFNGLIMPORTSYNCEXTPROC) (GLenum external_sync_type, GLintptr external_sync, GLbitfield flags); + +#define glImportSyncEXT GLEW_GET_FUN(__glewImportSyncEXT) + +#define GLEW_EXT_x11_sync_object GLEW_GET_VAR(__GLEW_EXT_x11_sync_object) + +#endif /* GL_EXT_x11_sync_object */ + +/* ----------------------- GL_FJ_shader_binary_GCCSO ----------------------- */ + +#ifndef GL_FJ_shader_binary_GCCSO +#define GL_FJ_shader_binary_GCCSO 1 + +#define GL_GCCSO_SHADER_BINARY_FJ 0x9260 + +#define GLEW_FJ_shader_binary_GCCSO GLEW_GET_VAR(__GLEW_FJ_shader_binary_GCCSO) + +#endif /* GL_FJ_shader_binary_GCCSO */ + +/* ---------------------- GL_GREMEDY_frame_terminator ---------------------- */ + +#ifndef GL_GREMEDY_frame_terminator +#define GL_GREMEDY_frame_terminator 1 + +typedef void (GLAPIENTRY * PFNGLFRAMETERMINATORGREMEDYPROC) (void); + +#define glFrameTerminatorGREMEDY GLEW_GET_FUN(__glewFrameTerminatorGREMEDY) + +#define GLEW_GREMEDY_frame_terminator GLEW_GET_VAR(__GLEW_GREMEDY_frame_terminator) + +#endif /* GL_GREMEDY_frame_terminator */ + +/* ------------------------ GL_GREMEDY_string_marker ----------------------- */ + +#ifndef GL_GREMEDY_string_marker +#define GL_GREMEDY_string_marker 1 + +typedef void (GLAPIENTRY * PFNGLSTRINGMARKERGREMEDYPROC) (GLsizei len, const void *string); + +#define glStringMarkerGREMEDY GLEW_GET_FUN(__glewStringMarkerGREMEDY) + +#define GLEW_GREMEDY_string_marker GLEW_GET_VAR(__GLEW_GREMEDY_string_marker) + +#endif /* GL_GREMEDY_string_marker */ + +/* --------------------- GL_HP_convolution_border_modes -------------------- */ + +#ifndef GL_HP_convolution_border_modes +#define GL_HP_convolution_border_modes 1 + +#define GLEW_HP_convolution_border_modes GLEW_GET_VAR(__GLEW_HP_convolution_border_modes) + +#endif /* GL_HP_convolution_border_modes */ + +/* ------------------------- GL_HP_image_transform ------------------------- */ + +#ifndef GL_HP_image_transform +#define GL_HP_image_transform 1 + +typedef void (GLAPIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERFHPPROC) (GLenum target, GLenum pname, const GLfloat param); +typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERIHPPROC) (GLenum target, GLenum pname, const GLint param); +typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint* params); + +#define glGetImageTransformParameterfvHP GLEW_GET_FUN(__glewGetImageTransformParameterfvHP) +#define glGetImageTransformParameterivHP GLEW_GET_FUN(__glewGetImageTransformParameterivHP) +#define glImageTransformParameterfHP GLEW_GET_FUN(__glewImageTransformParameterfHP) +#define glImageTransformParameterfvHP GLEW_GET_FUN(__glewImageTransformParameterfvHP) +#define glImageTransformParameteriHP GLEW_GET_FUN(__glewImageTransformParameteriHP) +#define glImageTransformParameterivHP GLEW_GET_FUN(__glewImageTransformParameterivHP) + +#define GLEW_HP_image_transform GLEW_GET_VAR(__GLEW_HP_image_transform) + +#endif /* GL_HP_image_transform */ + +/* -------------------------- GL_HP_occlusion_test ------------------------- */ + +#ifndef GL_HP_occlusion_test +#define GL_HP_occlusion_test 1 + +#define GLEW_HP_occlusion_test GLEW_GET_VAR(__GLEW_HP_occlusion_test) + +#endif /* GL_HP_occlusion_test */ + +/* ------------------------- GL_HP_texture_lighting ------------------------ */ + +#ifndef GL_HP_texture_lighting +#define GL_HP_texture_lighting 1 + +#define GLEW_HP_texture_lighting GLEW_GET_VAR(__GLEW_HP_texture_lighting) + +#endif /* GL_HP_texture_lighting */ + +/* --------------------------- GL_IBM_cull_vertex -------------------------- */ + +#ifndef GL_IBM_cull_vertex +#define GL_IBM_cull_vertex 1 + +#define GL_CULL_VERTEX_IBM 103050 + +#define GLEW_IBM_cull_vertex GLEW_GET_VAR(__GLEW_IBM_cull_vertex) + +#endif /* GL_IBM_cull_vertex */ + +/* ---------------------- GL_IBM_multimode_draw_arrays --------------------- */ + +#ifndef GL_IBM_multimode_draw_arrays +#define GL_IBM_multimode_draw_arrays 1 + +typedef void (GLAPIENTRY * PFNGLMULTIMODEDRAWARRAYSIBMPROC) (const GLenum* mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); +typedef void (GLAPIENTRY * PFNGLMULTIMODEDRAWELEMENTSIBMPROC) (const GLenum* mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei primcount, GLint modestride); + +#define glMultiModeDrawArraysIBM GLEW_GET_FUN(__glewMultiModeDrawArraysIBM) +#define glMultiModeDrawElementsIBM GLEW_GET_FUN(__glewMultiModeDrawElementsIBM) + +#define GLEW_IBM_multimode_draw_arrays GLEW_GET_VAR(__GLEW_IBM_multimode_draw_arrays) + +#endif /* GL_IBM_multimode_draw_arrays */ + +/* ------------------------- GL_IBM_rasterpos_clip ------------------------- */ + +#ifndef GL_IBM_rasterpos_clip +#define GL_IBM_rasterpos_clip 1 + +#define GL_RASTER_POSITION_UNCLIPPED_IBM 103010 + +#define GLEW_IBM_rasterpos_clip GLEW_GET_VAR(__GLEW_IBM_rasterpos_clip) + +#endif /* GL_IBM_rasterpos_clip */ + +/* --------------------------- GL_IBM_static_data -------------------------- */ + +#ifndef GL_IBM_static_data +#define GL_IBM_static_data 1 + +#define GL_ALL_STATIC_DATA_IBM 103060 +#define GL_STATIC_VERTEX_ARRAY_IBM 103061 + +#define GLEW_IBM_static_data GLEW_GET_VAR(__GLEW_IBM_static_data) + +#endif /* GL_IBM_static_data */ + +/* --------------------- GL_IBM_texture_mirrored_repeat -------------------- */ + +#ifndef GL_IBM_texture_mirrored_repeat +#define GL_IBM_texture_mirrored_repeat 1 + +#define GL_MIRRORED_REPEAT_IBM 0x8370 + +#define GLEW_IBM_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_IBM_texture_mirrored_repeat) + +#endif /* GL_IBM_texture_mirrored_repeat */ + +/* ----------------------- GL_IBM_vertex_array_lists ----------------------- */ + +#ifndef GL_IBM_vertex_array_lists +#define GL_IBM_vertex_array_lists 1 + +#define GL_VERTEX_ARRAY_LIST_IBM 103070 +#define GL_NORMAL_ARRAY_LIST_IBM 103071 +#define GL_COLOR_ARRAY_LIST_IBM 103072 +#define GL_INDEX_ARRAY_LIST_IBM 103073 +#define GL_TEXTURE_COORD_ARRAY_LIST_IBM 103074 +#define GL_EDGE_FLAG_ARRAY_LIST_IBM 103075 +#define GL_FOG_COORDINATE_ARRAY_LIST_IBM 103076 +#define GL_SECONDARY_COLOR_ARRAY_LIST_IBM 103077 +#define GL_VERTEX_ARRAY_LIST_STRIDE_IBM 103080 +#define GL_NORMAL_ARRAY_LIST_STRIDE_IBM 103081 +#define GL_COLOR_ARRAY_LIST_STRIDE_IBM 103082 +#define GL_INDEX_ARRAY_LIST_STRIDE_IBM 103083 +#define GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM 103084 +#define GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM 103085 +#define GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM 103086 +#define GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM 103087 + +typedef void (GLAPIENTRY * PFNGLCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void** pointer, GLint ptrstride); +typedef void (GLAPIENTRY * PFNGLEDGEFLAGPOINTERLISTIBMPROC) (GLint stride, const GLboolean ** pointer, GLint ptrstride); +typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void** pointer, GLint ptrstride); +typedef void (GLAPIENTRY * PFNGLINDEXPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void** pointer, GLint ptrstride); +typedef void (GLAPIENTRY * PFNGLNORMALPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void** pointer, GLint ptrstride); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void** pointer, GLint ptrstride); +typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void** pointer, GLint ptrstride); +typedef void (GLAPIENTRY * PFNGLVERTEXPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void** pointer, GLint ptrstride); + +#define glColorPointerListIBM GLEW_GET_FUN(__glewColorPointerListIBM) +#define glEdgeFlagPointerListIBM GLEW_GET_FUN(__glewEdgeFlagPointerListIBM) +#define glFogCoordPointerListIBM GLEW_GET_FUN(__glewFogCoordPointerListIBM) +#define glIndexPointerListIBM GLEW_GET_FUN(__glewIndexPointerListIBM) +#define glNormalPointerListIBM GLEW_GET_FUN(__glewNormalPointerListIBM) +#define glSecondaryColorPointerListIBM GLEW_GET_FUN(__glewSecondaryColorPointerListIBM) +#define glTexCoordPointerListIBM GLEW_GET_FUN(__glewTexCoordPointerListIBM) +#define glVertexPointerListIBM GLEW_GET_FUN(__glewVertexPointerListIBM) + +#define GLEW_IBM_vertex_array_lists GLEW_GET_VAR(__GLEW_IBM_vertex_array_lists) + +#endif /* GL_IBM_vertex_array_lists */ + +/* ------------------------ GL_IMG_bindless_texture ------------------------ */ + +#ifndef GL_IMG_bindless_texture +#define GL_IMG_bindless_texture 1 + +typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTUREHANDLEIMGPROC) (GLuint texture); +typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTURESAMPLERHANDLEIMGPROC) (GLuint texture, GLuint sampler); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64IMGPROC) (GLuint program, GLint location, GLuint64 value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64VIMGPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* values); +typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64IMGPROC) (GLint location, GLuint64 value); +typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64VIMGPROC) (GLint location, GLsizei count, const GLuint64* value); + +#define glGetTextureHandleIMG GLEW_GET_FUN(__glewGetTextureHandleIMG) +#define glGetTextureSamplerHandleIMG GLEW_GET_FUN(__glewGetTextureSamplerHandleIMG) +#define glProgramUniformHandleui64IMG GLEW_GET_FUN(__glewProgramUniformHandleui64IMG) +#define glProgramUniformHandleui64vIMG GLEW_GET_FUN(__glewProgramUniformHandleui64vIMG) +#define glUniformHandleui64IMG GLEW_GET_FUN(__glewUniformHandleui64IMG) +#define glUniformHandleui64vIMG GLEW_GET_FUN(__glewUniformHandleui64vIMG) + +#define GLEW_IMG_bindless_texture GLEW_GET_VAR(__GLEW_IMG_bindless_texture) + +#endif /* GL_IMG_bindless_texture */ + +/* --------------------- GL_IMG_framebuffer_downsample --------------------- */ + +#ifndef GL_IMG_framebuffer_downsample +#define GL_IMG_framebuffer_downsample 1 + +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_AND_DOWNSAMPLE_IMG 0x913C +#define GL_NUM_DOWNSAMPLE_SCALES_IMG 0x913D +#define GL_DOWNSAMPLE_SCALES_IMG 0x913E +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SCALE_IMG 0x913F + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DDOWNSAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint xscale, GLint yscale); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERDOWNSAMPLEIMGPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer, GLint xscale, GLint yscale); + +#define glFramebufferTexture2DDownsampleIMG GLEW_GET_FUN(__glewFramebufferTexture2DDownsampleIMG) +#define glFramebufferTextureLayerDownsampleIMG GLEW_GET_FUN(__glewFramebufferTextureLayerDownsampleIMG) + +#define GLEW_IMG_framebuffer_downsample GLEW_GET_VAR(__GLEW_IMG_framebuffer_downsample) + +#endif /* GL_IMG_framebuffer_downsample */ + +/* ----------------- GL_IMG_multisampled_render_to_texture ----------------- */ + +#ifndef GL_IMG_multisampled_render_to_texture +#define GL_IMG_multisampled_render_to_texture 1 + +#define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 +#define GL_MAX_SAMPLES_IMG 0x9135 +#define GL_TEXTURE_SAMPLES_IMG 0x9136 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); + +#define glFramebufferTexture2DMultisampleIMG GLEW_GET_FUN(__glewFramebufferTexture2DMultisampleIMG) +#define glRenderbufferStorageMultisampleIMG GLEW_GET_FUN(__glewRenderbufferStorageMultisampleIMG) + +#define GLEW_IMG_multisampled_render_to_texture GLEW_GET_VAR(__GLEW_IMG_multisampled_render_to_texture) + +#endif /* GL_IMG_multisampled_render_to_texture */ + +/* ------------------------- GL_IMG_program_binary ------------------------- */ + +#ifndef GL_IMG_program_binary +#define GL_IMG_program_binary 1 + +#define GL_SGX_PROGRAM_BINARY_IMG 0x9130 + +#define GLEW_IMG_program_binary GLEW_GET_VAR(__GLEW_IMG_program_binary) + +#endif /* GL_IMG_program_binary */ + +/* --------------------------- GL_IMG_read_format -------------------------- */ + +#ifndef GL_IMG_read_format +#define GL_IMG_read_format 1 + +#define GL_BGRA_IMG 0x80E1 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 + +#define GLEW_IMG_read_format GLEW_GET_VAR(__GLEW_IMG_read_format) + +#endif /* GL_IMG_read_format */ + +/* -------------------------- GL_IMG_shader_binary ------------------------- */ + +#ifndef GL_IMG_shader_binary +#define GL_IMG_shader_binary 1 + +#define GL_SGX_BINARY_IMG 0x8C0A + +#define GLEW_IMG_shader_binary GLEW_GET_VAR(__GLEW_IMG_shader_binary) + +#endif /* GL_IMG_shader_binary */ + +/* -------------------- GL_IMG_texture_compression_pvrtc ------------------- */ + +#ifndef GL_IMG_texture_compression_pvrtc +#define GL_IMG_texture_compression_pvrtc 1 + +#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 +#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 +#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 +#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 + +#define GLEW_IMG_texture_compression_pvrtc GLEW_GET_VAR(__GLEW_IMG_texture_compression_pvrtc) + +#endif /* GL_IMG_texture_compression_pvrtc */ + +/* ------------------- GL_IMG_texture_compression_pvrtc2 ------------------- */ + +#ifndef GL_IMG_texture_compression_pvrtc2 +#define GL_IMG_texture_compression_pvrtc2 1 + +#define GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG 0x9137 +#define GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG 0x9138 + +#define GLEW_IMG_texture_compression_pvrtc2 GLEW_GET_VAR(__GLEW_IMG_texture_compression_pvrtc2) + +#endif /* GL_IMG_texture_compression_pvrtc2 */ + +/* --------------- GL_IMG_texture_env_enhanced_fixed_function -------------- */ + +#ifndef GL_IMG_texture_env_enhanced_fixed_function +#define GL_IMG_texture_env_enhanced_fixed_function 1 + +#define GL_DOT3_RGBA_IMG 0x86AF +#define GL_MODULATE_COLOR_IMG 0x8C04 +#define GL_RECIP_ADD_SIGNED_ALPHA_IMG 0x8C05 +#define GL_TEXTURE_ALPHA_MODULATE_IMG 0x8C06 +#define GL_FACTOR_ALPHA_MODULATE_IMG 0x8C07 +#define GL_FRAGMENT_ALPHA_MODULATE_IMG 0x8C08 +#define GL_ADD_BLEND_IMG 0x8C09 + +#define GLEW_IMG_texture_env_enhanced_fixed_function GLEW_GET_VAR(__GLEW_IMG_texture_env_enhanced_fixed_function) + +#endif /* GL_IMG_texture_env_enhanced_fixed_function */ + +/* ---------------------- GL_IMG_texture_filter_cubic ---------------------- */ + +#ifndef GL_IMG_texture_filter_cubic +#define GL_IMG_texture_filter_cubic 1 + +#define GL_CUBIC_IMG 0x9139 +#define GL_CUBIC_MIPMAP_NEAREST_IMG 0x913A +#define GL_CUBIC_MIPMAP_LINEAR_IMG 0x913B + +#define GLEW_IMG_texture_filter_cubic GLEW_GET_VAR(__GLEW_IMG_texture_filter_cubic) + +#endif /* GL_IMG_texture_filter_cubic */ + +/* -------------------------- GL_INGR_color_clamp -------------------------- */ + +#ifndef GL_INGR_color_clamp +#define GL_INGR_color_clamp 1 + +#define GL_RED_MIN_CLAMP_INGR 0x8560 +#define GL_GREEN_MIN_CLAMP_INGR 0x8561 +#define GL_BLUE_MIN_CLAMP_INGR 0x8562 +#define GL_ALPHA_MIN_CLAMP_INGR 0x8563 +#define GL_RED_MAX_CLAMP_INGR 0x8564 +#define GL_GREEN_MAX_CLAMP_INGR 0x8565 +#define GL_BLUE_MAX_CLAMP_INGR 0x8566 +#define GL_ALPHA_MAX_CLAMP_INGR 0x8567 + +#define GLEW_INGR_color_clamp GLEW_GET_VAR(__GLEW_INGR_color_clamp) + +#endif /* GL_INGR_color_clamp */ + +/* ------------------------- GL_INGR_interlace_read ------------------------ */ + +#ifndef GL_INGR_interlace_read +#define GL_INGR_interlace_read 1 + +#define GL_INTERLACE_READ_INGR 0x8568 + +#define GLEW_INGR_interlace_read GLEW_GET_VAR(__GLEW_INGR_interlace_read) + +#endif /* GL_INGR_interlace_read */ + +/* ----------------------- GL_INTEL_blackhole_render ----------------------- */ + +#ifndef GL_INTEL_blackhole_render +#define GL_INTEL_blackhole_render 1 + +#define GL_BLACKHOLE_RENDER_INTEL 0x83FC + +#define GLEW_INTEL_blackhole_render GLEW_GET_VAR(__GLEW_INTEL_blackhole_render) + +#endif /* GL_INTEL_blackhole_render */ + +/* ------------------ GL_INTEL_conservative_rasterization ------------------ */ + +#ifndef GL_INTEL_conservative_rasterization +#define GL_INTEL_conservative_rasterization 1 + +#define GL_CONSERVATIVE_RASTERIZATION_INTEL 0x83FE + +#define GLEW_INTEL_conservative_rasterization GLEW_GET_VAR(__GLEW_INTEL_conservative_rasterization) + +#endif /* GL_INTEL_conservative_rasterization */ + +/* ------------------- GL_INTEL_fragment_shader_ordering ------------------- */ + +#ifndef GL_INTEL_fragment_shader_ordering +#define GL_INTEL_fragment_shader_ordering 1 + +#define GLEW_INTEL_fragment_shader_ordering GLEW_GET_VAR(__GLEW_INTEL_fragment_shader_ordering) + +#endif /* GL_INTEL_fragment_shader_ordering */ + +/* ----------------------- GL_INTEL_framebuffer_CMAA ----------------------- */ + +#ifndef GL_INTEL_framebuffer_CMAA +#define GL_INTEL_framebuffer_CMAA 1 + +#define GLEW_INTEL_framebuffer_CMAA GLEW_GET_VAR(__GLEW_INTEL_framebuffer_CMAA) + +#endif /* GL_INTEL_framebuffer_CMAA */ + +/* -------------------------- GL_INTEL_map_texture ------------------------- */ + +#ifndef GL_INTEL_map_texture +#define GL_INTEL_map_texture 1 + +#define GL_LAYOUT_DEFAULT_INTEL 0 +#define GL_LAYOUT_LINEAR_INTEL 1 +#define GL_LAYOUT_LINEAR_CPU_CACHED_INTEL 2 +#define GL_TEXTURE_MEMORY_LAYOUT_INTEL 0x83FF + +typedef void * (GLAPIENTRY * PFNGLMAPTEXTURE2DINTELPROC) (GLuint texture, GLint level, GLbitfield access, GLint* stride, GLenum *layout); +typedef void (GLAPIENTRY * PFNGLSYNCTEXTUREINTELPROC) (GLuint texture); +typedef void (GLAPIENTRY * PFNGLUNMAPTEXTURE2DINTELPROC) (GLuint texture, GLint level); + +#define glMapTexture2DINTEL GLEW_GET_FUN(__glewMapTexture2DINTEL) +#define glSyncTextureINTEL GLEW_GET_FUN(__glewSyncTextureINTEL) +#define glUnmapTexture2DINTEL GLEW_GET_FUN(__glewUnmapTexture2DINTEL) + +#define GLEW_INTEL_map_texture GLEW_GET_VAR(__GLEW_INTEL_map_texture) + +#endif /* GL_INTEL_map_texture */ + +/* ------------------------ GL_INTEL_parallel_arrays ----------------------- */ + +#ifndef GL_INTEL_parallel_arrays +#define GL_INTEL_parallel_arrays 1 + +#define GL_PARALLEL_ARRAYS_INTEL 0x83F4 +#define GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL 0x83F5 +#define GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL 0x83F6 +#define GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL 0x83F7 +#define GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL 0x83F8 + +typedef void (GLAPIENTRY * PFNGLCOLORPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer); +typedef void (GLAPIENTRY * PFNGLNORMALPOINTERVINTELPROC) (GLenum type, const void** pointer); +typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer); +typedef void (GLAPIENTRY * PFNGLVERTEXPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer); + +#define glColorPointervINTEL GLEW_GET_FUN(__glewColorPointervINTEL) +#define glNormalPointervINTEL GLEW_GET_FUN(__glewNormalPointervINTEL) +#define glTexCoordPointervINTEL GLEW_GET_FUN(__glewTexCoordPointervINTEL) +#define glVertexPointervINTEL GLEW_GET_FUN(__glewVertexPointervINTEL) + +#define GLEW_INTEL_parallel_arrays GLEW_GET_VAR(__GLEW_INTEL_parallel_arrays) + +#endif /* GL_INTEL_parallel_arrays */ + +/* ----------------------- GL_INTEL_performance_query ---------------------- */ + +#ifndef GL_INTEL_performance_query +#define GL_INTEL_performance_query 1 + +#define GL_PERFQUERY_SINGLE_CONTEXT_INTEL 0x0000 +#define GL_PERFQUERY_GLOBAL_CONTEXT_INTEL 0x0001 +#define GL_PERFQUERY_DONOT_FLUSH_INTEL 0x83F9 +#define GL_PERFQUERY_FLUSH_INTEL 0x83FA +#define GL_PERFQUERY_WAIT_INTEL 0x83FB +#define GL_PERFQUERY_COUNTER_EVENT_INTEL 0x94F0 +#define GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL 0x94F1 +#define GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL 0x94F2 +#define GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL 0x94F3 +#define GL_PERFQUERY_COUNTER_RAW_INTEL 0x94F4 +#define GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL 0x94F5 +#define GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL 0x94F8 +#define GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL 0x94F9 +#define GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL 0x94FA +#define GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL 0x94FB +#define GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL 0x94FC +#define GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL 0x94FD +#define GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL 0x94FE +#define GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL 0x94FF +#define GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL 0x9500 + +typedef void (GLAPIENTRY * PFNGLBEGINPERFQUERYINTELPROC) (GLuint queryHandle); +typedef void (GLAPIENTRY * PFNGLCREATEPERFQUERYINTELPROC) (GLuint queryId, GLuint* queryHandle); +typedef void (GLAPIENTRY * PFNGLDELETEPERFQUERYINTELPROC) (GLuint queryHandle); +typedef void (GLAPIENTRY * PFNGLENDPERFQUERYINTELPROC) (GLuint queryHandle); +typedef void (GLAPIENTRY * PFNGLGETFIRSTPERFQUERYIDINTELPROC) (GLuint* queryId); +typedef void (GLAPIENTRY * PFNGLGETNEXTPERFQUERYIDINTELPROC) (GLuint queryId, GLuint* nextQueryId); +typedef void (GLAPIENTRY * PFNGLGETPERFCOUNTERINFOINTELPROC) (GLuint queryId, GLuint counterId, GLuint counterNameLength, GLchar* counterName, GLuint counterDescLength, GLchar *counterDesc, GLuint *counterOffset, GLuint *counterDataSize, GLuint *counterTypeEnum, GLuint *counterDataTypeEnum, GLuint64 *rawCounterMaxValue); +typedef void (GLAPIENTRY * PFNGLGETPERFQUERYDATAINTELPROC) (GLuint queryHandle, GLuint flags, GLsizei dataSize, void *data, GLuint *bytesWritten); +typedef void (GLAPIENTRY * PFNGLGETPERFQUERYIDBYNAMEINTELPROC) (GLchar* queryName, GLuint *queryId); +typedef void (GLAPIENTRY * PFNGLGETPERFQUERYINFOINTELPROC) (GLuint queryId, GLuint queryNameLength, GLchar* queryName, GLuint *dataSize, GLuint *noCounters, GLuint *noInstances, GLuint *capsMask); + +#define glBeginPerfQueryINTEL GLEW_GET_FUN(__glewBeginPerfQueryINTEL) +#define glCreatePerfQueryINTEL GLEW_GET_FUN(__glewCreatePerfQueryINTEL) +#define glDeletePerfQueryINTEL GLEW_GET_FUN(__glewDeletePerfQueryINTEL) +#define glEndPerfQueryINTEL GLEW_GET_FUN(__glewEndPerfQueryINTEL) +#define glGetFirstPerfQueryIdINTEL GLEW_GET_FUN(__glewGetFirstPerfQueryIdINTEL) +#define glGetNextPerfQueryIdINTEL GLEW_GET_FUN(__glewGetNextPerfQueryIdINTEL) +#define glGetPerfCounterInfoINTEL GLEW_GET_FUN(__glewGetPerfCounterInfoINTEL) +#define glGetPerfQueryDataINTEL GLEW_GET_FUN(__glewGetPerfQueryDataINTEL) +#define glGetPerfQueryIdByNameINTEL GLEW_GET_FUN(__glewGetPerfQueryIdByNameINTEL) +#define glGetPerfQueryInfoINTEL GLEW_GET_FUN(__glewGetPerfQueryInfoINTEL) + +#define GLEW_INTEL_performance_query GLEW_GET_VAR(__GLEW_INTEL_performance_query) + +#endif /* GL_INTEL_performance_query */ + +/* ------------------- GL_INTEL_shader_integer_functions2 ------------------ */ + +#ifndef GL_INTEL_shader_integer_functions2 +#define GL_INTEL_shader_integer_functions2 1 + +#define GLEW_INTEL_shader_integer_functions2 GLEW_GET_VAR(__GLEW_INTEL_shader_integer_functions2) + +#endif /* GL_INTEL_shader_integer_functions2 */ + +/* ------------------------ GL_INTEL_texture_scissor ----------------------- */ + +#ifndef GL_INTEL_texture_scissor +#define GL_INTEL_texture_scissor 1 + +typedef void (GLAPIENTRY * PFNGLTEXSCISSORFUNCINTELPROC) (GLenum target, GLenum lfunc, GLenum hfunc); +typedef void (GLAPIENTRY * PFNGLTEXSCISSORINTELPROC) (GLenum target, GLclampf tlow, GLclampf thigh); + +#define glTexScissorFuncINTEL GLEW_GET_FUN(__glewTexScissorFuncINTEL) +#define glTexScissorINTEL GLEW_GET_FUN(__glewTexScissorINTEL) + +#define GLEW_INTEL_texture_scissor GLEW_GET_VAR(__GLEW_INTEL_texture_scissor) + +#endif /* GL_INTEL_texture_scissor */ + +/* --------------------- GL_KHR_blend_equation_advanced -------------------- */ + +#ifndef GL_KHR_blend_equation_advanced +#define GL_KHR_blend_equation_advanced 1 + +#define GL_BLEND_ADVANCED_COHERENT_KHR 0x9285 +#define GL_MULTIPLY_KHR 0x9294 +#define GL_SCREEN_KHR 0x9295 +#define GL_OVERLAY_KHR 0x9296 +#define GL_DARKEN_KHR 0x9297 +#define GL_LIGHTEN_KHR 0x9298 +#define GL_COLORDODGE_KHR 0x9299 +#define GL_COLORBURN_KHR 0x929A +#define GL_HARDLIGHT_KHR 0x929B +#define GL_SOFTLIGHT_KHR 0x929C +#define GL_DIFFERENCE_KHR 0x929E +#define GL_EXCLUSION_KHR 0x92A0 +#define GL_HSL_HUE_KHR 0x92AD +#define GL_HSL_SATURATION_KHR 0x92AE +#define GL_HSL_COLOR_KHR 0x92AF +#define GL_HSL_LUMINOSITY_KHR 0x92B0 + +typedef void (GLAPIENTRY * PFNGLBLENDBARRIERKHRPROC) (void); + +#define glBlendBarrierKHR GLEW_GET_FUN(__glewBlendBarrierKHR) + +#define GLEW_KHR_blend_equation_advanced GLEW_GET_VAR(__GLEW_KHR_blend_equation_advanced) + +#endif /* GL_KHR_blend_equation_advanced */ + +/* ---------------- GL_KHR_blend_equation_advanced_coherent ---------------- */ + +#ifndef GL_KHR_blend_equation_advanced_coherent +#define GL_KHR_blend_equation_advanced_coherent 1 + +#define GLEW_KHR_blend_equation_advanced_coherent GLEW_GET_VAR(__GLEW_KHR_blend_equation_advanced_coherent) + +#endif /* GL_KHR_blend_equation_advanced_coherent */ + +/* ---------------------- GL_KHR_context_flush_control --------------------- */ + +#ifndef GL_KHR_context_flush_control +#define GL_KHR_context_flush_control 1 + +#define GL_CONTEXT_RELEASE_BEHAVIOR 0x82FB +#define GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH 0x82FC + +#define GLEW_KHR_context_flush_control GLEW_GET_VAR(__GLEW_KHR_context_flush_control) + +#endif /* GL_KHR_context_flush_control */ + +/* ------------------------------ GL_KHR_debug ----------------------------- */ + +#ifndef GL_KHR_debug +#define GL_KHR_debug 1 + +#define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002 +#define GL_STACK_OVERFLOW 0x0503 +#define GL_STACK_UNDERFLOW 0x0504 +#define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242 +#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243 +#define GL_DEBUG_CALLBACK_FUNCTION 0x8244 +#define GL_DEBUG_CALLBACK_USER_PARAM 0x8245 +#define GL_DEBUG_SOURCE_API 0x8246 +#define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247 +#define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248 +#define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249 +#define GL_DEBUG_SOURCE_APPLICATION 0x824A +#define GL_DEBUG_SOURCE_OTHER 0x824B +#define GL_DEBUG_TYPE_ERROR 0x824C +#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D +#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E +#define GL_DEBUG_TYPE_PORTABILITY 0x824F +#define GL_DEBUG_TYPE_PERFORMANCE 0x8250 +#define GL_DEBUG_TYPE_OTHER 0x8251 +#define GL_DEBUG_TYPE_MARKER 0x8268 +#define GL_DEBUG_TYPE_PUSH_GROUP 0x8269 +#define GL_DEBUG_TYPE_POP_GROUP 0x826A +#define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B +#define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C +#define GL_DEBUG_GROUP_STACK_DEPTH 0x826D +#define GL_BUFFER 0x82E0 +#define GL_SHADER 0x82E1 +#define GL_PROGRAM 0x82E2 +#define GL_QUERY 0x82E3 +#define GL_PROGRAM_PIPELINE 0x82E4 +#define GL_SAMPLER 0x82E6 +#define GL_DISPLAY_LIST 0x82E7 +#define GL_MAX_LABEL_LENGTH 0x82E8 +#define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143 +#define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144 +#define GL_DEBUG_LOGGED_MESSAGES 0x9145 +#define GL_DEBUG_SEVERITY_HIGH 0x9146 +#define GL_DEBUG_SEVERITY_MEDIUM 0x9147 +#define GL_DEBUG_SEVERITY_LOW 0x9148 +#define GL_DEBUG_OUTPUT 0x92E0 + +typedef void (GLAPIENTRY *GLDEBUGPROC)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* message, const void* userParam); + +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void *userParam); +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled); +typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* buf); +typedef GLuint (GLAPIENTRY * PFNGLGETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufSize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, GLchar* messageLog); +typedef void (GLAPIENTRY * PFNGLGETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei* length, GLchar *label); +typedef void (GLAPIENTRY * PFNGLGETOBJECTPTRLABELPROC) (void* ptr, GLsizei bufSize, GLsizei* length, GLchar *label); +typedef void (GLAPIENTRY * PFNGLOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar* label); +typedef void (GLAPIENTRY * PFNGLOBJECTPTRLABELPROC) (void* ptr, GLsizei length, const GLchar* label); +typedef void (GLAPIENTRY * PFNGLPOPDEBUGGROUPPROC) (void); +typedef void (GLAPIENTRY * PFNGLPUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar * message); + +#define glDebugMessageCallback GLEW_GET_FUN(__glewDebugMessageCallback) +#define glDebugMessageControl GLEW_GET_FUN(__glewDebugMessageControl) +#define glDebugMessageInsert GLEW_GET_FUN(__glewDebugMessageInsert) +#define glGetDebugMessageLog GLEW_GET_FUN(__glewGetDebugMessageLog) +#define glGetObjectLabel GLEW_GET_FUN(__glewGetObjectLabel) +#define glGetObjectPtrLabel GLEW_GET_FUN(__glewGetObjectPtrLabel) +#define glObjectLabel GLEW_GET_FUN(__glewObjectLabel) +#define glObjectPtrLabel GLEW_GET_FUN(__glewObjectPtrLabel) +#define glPopDebugGroup GLEW_GET_FUN(__glewPopDebugGroup) +#define glPushDebugGroup GLEW_GET_FUN(__glewPushDebugGroup) + +#define GLEW_KHR_debug GLEW_GET_VAR(__GLEW_KHR_debug) + +#endif /* GL_KHR_debug */ + +/* ---------------------------- GL_KHR_no_error ---------------------------- */ + +#ifndef GL_KHR_no_error +#define GL_KHR_no_error 1 + +#define GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR 0x00000008 + +#define GLEW_KHR_no_error GLEW_GET_VAR(__GLEW_KHR_no_error) + +#endif /* GL_KHR_no_error */ + +/* --------------------- GL_KHR_parallel_shader_compile -------------------- */ + +#ifndef GL_KHR_parallel_shader_compile +#define GL_KHR_parallel_shader_compile 1 + +#define GL_MAX_SHADER_COMPILER_THREADS_KHR 0x91B0 +#define GL_COMPLETION_STATUS_KHR 0x91B1 + +typedef void (GLAPIENTRY * PFNGLMAXSHADERCOMPILERTHREADSKHRPROC) (GLuint count); + +#define glMaxShaderCompilerThreadsKHR GLEW_GET_FUN(__glewMaxShaderCompilerThreadsKHR) + +#define GLEW_KHR_parallel_shader_compile GLEW_GET_VAR(__GLEW_KHR_parallel_shader_compile) + +#endif /* GL_KHR_parallel_shader_compile */ + +/* ------------------ GL_KHR_robust_buffer_access_behavior ----------------- */ + +#ifndef GL_KHR_robust_buffer_access_behavior +#define GL_KHR_robust_buffer_access_behavior 1 + +#define GLEW_KHR_robust_buffer_access_behavior GLEW_GET_VAR(__GLEW_KHR_robust_buffer_access_behavior) + +#endif /* GL_KHR_robust_buffer_access_behavior */ + +/* --------------------------- GL_KHR_robustness --------------------------- */ + +#ifndef GL_KHR_robustness +#define GL_KHR_robustness 1 + +#define GL_CONTEXT_LOST 0x0507 +#define GL_LOSE_CONTEXT_ON_RESET 0x8252 +#define GL_GUILTY_CONTEXT_RESET 0x8253 +#define GL_INNOCENT_CONTEXT_RESET 0x8254 +#define GL_UNKNOWN_CONTEXT_RESET 0x8255 +#define GL_RESET_NOTIFICATION_STRATEGY 0x8256 +#define GL_NO_RESET_NOTIFICATION 0x8261 +#define GL_CONTEXT_ROBUST_ACCESS 0x90F3 + +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMFVPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMIVPROC) (GLuint program, GLint location, GLsizei bufSize, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETNUNIFORMUIVPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint* params); +typedef void (GLAPIENTRY * PFNGLREADNPIXELSPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); + +#define glGetnUniformfv GLEW_GET_FUN(__glewGetnUniformfv) +#define glGetnUniformiv GLEW_GET_FUN(__glewGetnUniformiv) +#define glGetnUniformuiv GLEW_GET_FUN(__glewGetnUniformuiv) +#define glReadnPixels GLEW_GET_FUN(__glewReadnPixels) + +#define GLEW_KHR_robustness GLEW_GET_VAR(__GLEW_KHR_robustness) + +#endif /* GL_KHR_robustness */ + +/* ------------------------- GL_KHR_shader_subgroup ------------------------ */ + +#ifndef GL_KHR_shader_subgroup +#define GL_KHR_shader_subgroup 1 + +#define GL_SUBGROUP_FEATURE_BASIC_BIT_KHR 0x00000001 +#define GL_SUBGROUP_FEATURE_VOTE_BIT_KHR 0x00000002 +#define GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR 0x00000004 +#define GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR 0x00000008 +#define GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR 0x00000010 +#define GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR 0x00000020 +#define GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR 0x00000040 +#define GL_SUBGROUP_FEATURE_QUAD_BIT_KHR 0x00000080 +#define GL_SUBGROUP_SIZE_KHR 0x9532 +#define GL_SUBGROUP_SUPPORTED_STAGES_KHR 0x9533 +#define GL_SUBGROUP_SUPPORTED_FEATURES_KHR 0x9534 +#define GL_SUBGROUP_QUAD_ALL_STAGES_KHR 0x9535 + +#define GLEW_KHR_shader_subgroup GLEW_GET_VAR(__GLEW_KHR_shader_subgroup) + +#endif /* GL_KHR_shader_subgroup */ + +/* ------------------ GL_KHR_texture_compression_astc_hdr ------------------ */ + +#ifndef GL_KHR_texture_compression_astc_hdr +#define GL_KHR_texture_compression_astc_hdr 1 + +#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0 +#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1 +#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2 +#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3 +#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4 +#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5 +#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6 +#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7 +#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8 +#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9 +#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA +#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB +#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC +#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD +#define GL_COMPRESSED_RGBA_ASTC_3x3x3_OES 0x93C0 +#define GL_COMPRESSED_RGBA_ASTC_4x3x3_OES 0x93C1 +#define GL_COMPRESSED_RGBA_ASTC_4x4x3_OES 0x93C2 +#define GL_COMPRESSED_RGBA_ASTC_4x4x4_OES 0x93C3 +#define GL_COMPRESSED_RGBA_ASTC_5x4x4_OES 0x93C4 +#define GL_COMPRESSED_RGBA_ASTC_5x5x4_OES 0x93C5 +#define GL_COMPRESSED_RGBA_ASTC_5x5x5_OES 0x93C6 +#define GL_COMPRESSED_RGBA_ASTC_6x5x5_OES 0x93C7 +#define GL_COMPRESSED_RGBA_ASTC_6x6x5_OES 0x93C8 +#define GL_COMPRESSED_RGBA_ASTC_6x6x6_OES 0x93C9 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES 0x93E0 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES 0x93E1 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES 0x93E2 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES 0x93E3 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES 0x93E4 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES 0x93E5 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES 0x93E6 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES 0x93E7 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES 0x93E8 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES 0x93E9 + +#define GLEW_KHR_texture_compression_astc_hdr GLEW_GET_VAR(__GLEW_KHR_texture_compression_astc_hdr) + +#endif /* GL_KHR_texture_compression_astc_hdr */ + +/* ------------------ GL_KHR_texture_compression_astc_ldr ------------------ */ + +#ifndef GL_KHR_texture_compression_astc_ldr +#define GL_KHR_texture_compression_astc_ldr 1 + +#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0 +#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1 +#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2 +#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3 +#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4 +#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5 +#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6 +#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7 +#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8 +#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9 +#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA +#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB +#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC +#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD +#define GL_COMPRESSED_RGBA_ASTC_3x3x3_OES 0x93C0 +#define GL_COMPRESSED_RGBA_ASTC_4x3x3_OES 0x93C1 +#define GL_COMPRESSED_RGBA_ASTC_4x4x3_OES 0x93C2 +#define GL_COMPRESSED_RGBA_ASTC_4x4x4_OES 0x93C3 +#define GL_COMPRESSED_RGBA_ASTC_5x4x4_OES 0x93C4 +#define GL_COMPRESSED_RGBA_ASTC_5x5x4_OES 0x93C5 +#define GL_COMPRESSED_RGBA_ASTC_5x5x5_OES 0x93C6 +#define GL_COMPRESSED_RGBA_ASTC_6x5x5_OES 0x93C7 +#define GL_COMPRESSED_RGBA_ASTC_6x6x5_OES 0x93C8 +#define GL_COMPRESSED_RGBA_ASTC_6x6x6_OES 0x93C9 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES 0x93E0 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES 0x93E1 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES 0x93E2 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES 0x93E3 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES 0x93E4 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES 0x93E5 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES 0x93E6 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES 0x93E7 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES 0x93E8 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES 0x93E9 + +#define GLEW_KHR_texture_compression_astc_ldr GLEW_GET_VAR(__GLEW_KHR_texture_compression_astc_ldr) + +#endif /* GL_KHR_texture_compression_astc_ldr */ + +/* --------------- GL_KHR_texture_compression_astc_sliced_3d --------------- */ + +#ifndef GL_KHR_texture_compression_astc_sliced_3d +#define GL_KHR_texture_compression_astc_sliced_3d 1 + +#define GLEW_KHR_texture_compression_astc_sliced_3d GLEW_GET_VAR(__GLEW_KHR_texture_compression_astc_sliced_3d) + +#endif /* GL_KHR_texture_compression_astc_sliced_3d */ + +/* -------------------------- GL_KTX_buffer_region ------------------------- */ + +#ifndef GL_KTX_buffer_region +#define GL_KTX_buffer_region 1 + +#define GL_KTX_FRONT_REGION 0x0 +#define GL_KTX_BACK_REGION 0x1 +#define GL_KTX_Z_REGION 0x2 +#define GL_KTX_STENCIL_REGION 0x3 + +typedef GLuint (GLAPIENTRY * PFNGLBUFFERREGIONENABLEDPROC) (void); +typedef void (GLAPIENTRY * PFNGLDELETEBUFFERREGIONPROC) (GLenum region); +typedef void (GLAPIENTRY * PFNGLDRAWBUFFERREGIONPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest); +typedef GLuint (GLAPIENTRY * PFNGLNEWBUFFERREGIONPROC) (GLenum region); +typedef void (GLAPIENTRY * PFNGLREADBUFFERREGIONPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height); + +#define glBufferRegionEnabled GLEW_GET_FUN(__glewBufferRegionEnabled) +#define glDeleteBufferRegion GLEW_GET_FUN(__glewDeleteBufferRegion) +#define glDrawBufferRegion GLEW_GET_FUN(__glewDrawBufferRegion) +#define glNewBufferRegion GLEW_GET_FUN(__glewNewBufferRegion) +#define glReadBufferRegion GLEW_GET_FUN(__glewReadBufferRegion) + +#define GLEW_KTX_buffer_region GLEW_GET_VAR(__GLEW_KTX_buffer_region) + +#endif /* GL_KTX_buffer_region */ + +/* ------------------------- GL_MESAX_texture_stack ------------------------ */ + +#ifndef GL_MESAX_texture_stack +#define GL_MESAX_texture_stack 1 + +#define GL_TEXTURE_1D_STACK_MESAX 0x8759 +#define GL_TEXTURE_2D_STACK_MESAX 0x875A +#define GL_PROXY_TEXTURE_1D_STACK_MESAX 0x875B +#define GL_PROXY_TEXTURE_2D_STACK_MESAX 0x875C +#define GL_TEXTURE_1D_STACK_BINDING_MESAX 0x875D +#define GL_TEXTURE_2D_STACK_BINDING_MESAX 0x875E + +#define GLEW_MESAX_texture_stack GLEW_GET_VAR(__GLEW_MESAX_texture_stack) + +#endif /* GL_MESAX_texture_stack */ + +/* ----------------------- GL_MESA_framebuffer_flip_y ---------------------- */ + +#ifndef GL_MESA_framebuffer_flip_y +#define GL_MESA_framebuffer_flip_y 1 + +#define GL_FRAMEBUFFER_FLIP_Y_MESA 0x8BBB + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERPARAMETERIMESAPROC) (GLenum target, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERIVMESAPROC) (GLenum target, GLenum pname, GLint* params); + +#define glFramebufferParameteriMESA GLEW_GET_FUN(__glewFramebufferParameteriMESA) +#define glGetFramebufferParameterivMESA GLEW_GET_FUN(__glewGetFramebufferParameterivMESA) + +#define GLEW_MESA_framebuffer_flip_y GLEW_GET_VAR(__GLEW_MESA_framebuffer_flip_y) + +#endif /* GL_MESA_framebuffer_flip_y */ + +/* -------------------------- GL_MESA_pack_invert -------------------------- */ + +#ifndef GL_MESA_pack_invert +#define GL_MESA_pack_invert 1 + +#define GL_PACK_INVERT_MESA 0x8758 + +#define GLEW_MESA_pack_invert GLEW_GET_VAR(__GLEW_MESA_pack_invert) + +#endif /* GL_MESA_pack_invert */ + +/* --------------------- GL_MESA_program_binary_formats -------------------- */ + +#ifndef GL_MESA_program_binary_formats +#define GL_MESA_program_binary_formats 1 + +#define GL_PROGRAM_BINARY_FORMAT_MESA 0x875F + +#define GLEW_MESA_program_binary_formats GLEW_GET_VAR(__GLEW_MESA_program_binary_formats) + +#endif /* GL_MESA_program_binary_formats */ + +/* ------------------------- GL_MESA_resize_buffers ------------------------ */ + +#ifndef GL_MESA_resize_buffers +#define GL_MESA_resize_buffers 1 + +typedef void (GLAPIENTRY * PFNGLRESIZEBUFFERSMESAPROC) (void); + +#define glResizeBuffersMESA GLEW_GET_FUN(__glewResizeBuffersMESA) + +#define GLEW_MESA_resize_buffers GLEW_GET_VAR(__GLEW_MESA_resize_buffers) + +#endif /* GL_MESA_resize_buffers */ + +/* -------------------- GL_MESA_shader_integer_functions ------------------- */ + +#ifndef GL_MESA_shader_integer_functions +#define GL_MESA_shader_integer_functions 1 + +#define GLEW_MESA_shader_integer_functions GLEW_GET_VAR(__GLEW_MESA_shader_integer_functions) + +#endif /* GL_MESA_shader_integer_functions */ + +/* ----------------------- GL_MESA_tile_raster_order ----------------------- */ + +#ifndef GL_MESA_tile_raster_order +#define GL_MESA_tile_raster_order 1 + +#define GLEW_MESA_tile_raster_order GLEW_GET_VAR(__GLEW_MESA_tile_raster_order) + +#endif /* GL_MESA_tile_raster_order */ + +/* --------------------------- GL_MESA_window_pos -------------------------- */ + +#ifndef GL_MESA_window_pos +#define GL_MESA_window_pos 1 + +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DMESAPROC) (GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVMESAPROC) (const GLdouble* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FMESAPROC) (GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVMESAPROC) (const GLfloat* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IMESAPROC) (GLint x, GLint y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVMESAPROC) (const GLint* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SMESAPROC) (GLshort x, GLshort y); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVMESAPROC) (const GLshort* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DMESAPROC) (GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVMESAPROC) (const GLdouble* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FMESAPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVMESAPROC) (const GLfloat* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IMESAPROC) (GLint x, GLint y, GLint z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVMESAPROC) (const GLint* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SMESAPROC) (GLshort x, GLshort y, GLshort z); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVMESAPROC) (const GLshort* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS4DMESAPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS4DVMESAPROC) (const GLdouble* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS4FMESAPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS4FVMESAPROC) (const GLfloat* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS4IMESAPROC) (GLint x, GLint y, GLint z, GLint w); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS4IVMESAPROC) (const GLint* p); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS4SMESAPROC) (GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (GLAPIENTRY * PFNGLWINDOWPOS4SVMESAPROC) (const GLshort* p); + +#define glWindowPos2dMESA GLEW_GET_FUN(__glewWindowPos2dMESA) +#define glWindowPos2dvMESA GLEW_GET_FUN(__glewWindowPos2dvMESA) +#define glWindowPos2fMESA GLEW_GET_FUN(__glewWindowPos2fMESA) +#define glWindowPos2fvMESA GLEW_GET_FUN(__glewWindowPos2fvMESA) +#define glWindowPos2iMESA GLEW_GET_FUN(__glewWindowPos2iMESA) +#define glWindowPos2ivMESA GLEW_GET_FUN(__glewWindowPos2ivMESA) +#define glWindowPos2sMESA GLEW_GET_FUN(__glewWindowPos2sMESA) +#define glWindowPos2svMESA GLEW_GET_FUN(__glewWindowPos2svMESA) +#define glWindowPos3dMESA GLEW_GET_FUN(__glewWindowPos3dMESA) +#define glWindowPos3dvMESA GLEW_GET_FUN(__glewWindowPos3dvMESA) +#define glWindowPos3fMESA GLEW_GET_FUN(__glewWindowPos3fMESA) +#define glWindowPos3fvMESA GLEW_GET_FUN(__glewWindowPos3fvMESA) +#define glWindowPos3iMESA GLEW_GET_FUN(__glewWindowPos3iMESA) +#define glWindowPos3ivMESA GLEW_GET_FUN(__glewWindowPos3ivMESA) +#define glWindowPos3sMESA GLEW_GET_FUN(__glewWindowPos3sMESA) +#define glWindowPos3svMESA GLEW_GET_FUN(__glewWindowPos3svMESA) +#define glWindowPos4dMESA GLEW_GET_FUN(__glewWindowPos4dMESA) +#define glWindowPos4dvMESA GLEW_GET_FUN(__glewWindowPos4dvMESA) +#define glWindowPos4fMESA GLEW_GET_FUN(__glewWindowPos4fMESA) +#define glWindowPos4fvMESA GLEW_GET_FUN(__glewWindowPos4fvMESA) +#define glWindowPos4iMESA GLEW_GET_FUN(__glewWindowPos4iMESA) +#define glWindowPos4ivMESA GLEW_GET_FUN(__glewWindowPos4ivMESA) +#define glWindowPos4sMESA GLEW_GET_FUN(__glewWindowPos4sMESA) +#define glWindowPos4svMESA GLEW_GET_FUN(__glewWindowPos4svMESA) + +#define GLEW_MESA_window_pos GLEW_GET_VAR(__GLEW_MESA_window_pos) + +#endif /* GL_MESA_window_pos */ + +/* ------------------------- GL_MESA_ycbcr_texture ------------------------- */ + +#ifndef GL_MESA_ycbcr_texture +#define GL_MESA_ycbcr_texture 1 + +#define GL_UNSIGNED_SHORT_8_8_MESA 0x85BA +#define GL_UNSIGNED_SHORT_8_8_REV_MESA 0x85BB +#define GL_YCBCR_MESA 0x8757 + +#define GLEW_MESA_ycbcr_texture GLEW_GET_VAR(__GLEW_MESA_ycbcr_texture) + +#endif /* GL_MESA_ycbcr_texture */ + +/* ----------- GL_NVX_blend_equation_advanced_multi_draw_buffers ----------- */ + +#ifndef GL_NVX_blend_equation_advanced_multi_draw_buffers +#define GL_NVX_blend_equation_advanced_multi_draw_buffers 1 + +#define GLEW_NVX_blend_equation_advanced_multi_draw_buffers GLEW_GET_VAR(__GLEW_NVX_blend_equation_advanced_multi_draw_buffers) + +#endif /* GL_NVX_blend_equation_advanced_multi_draw_buffers */ + +/* ----------------------- GL_NVX_conditional_render ----------------------- */ + +#ifndef GL_NVX_conditional_render +#define GL_NVX_conditional_render 1 + +typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERNVXPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERNVXPROC) (void); + +#define glBeginConditionalRenderNVX GLEW_GET_FUN(__glewBeginConditionalRenderNVX) +#define glEndConditionalRenderNVX GLEW_GET_FUN(__glewEndConditionalRenderNVX) + +#define GLEW_NVX_conditional_render GLEW_GET_VAR(__GLEW_NVX_conditional_render) + +#endif /* GL_NVX_conditional_render */ + +/* ------------------------- GL_NVX_gpu_memory_info ------------------------ */ + +#ifndef GL_NVX_gpu_memory_info +#define GL_NVX_gpu_memory_info 1 + +#define GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX 0x9047 +#define GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX 0x9048 +#define GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX 0x9049 +#define GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX 0x904A +#define GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX 0x904B + +#define GLEW_NVX_gpu_memory_info GLEW_GET_VAR(__GLEW_NVX_gpu_memory_info) + +#endif /* GL_NVX_gpu_memory_info */ + +/* ------------------------- GL_NVX_gpu_multicast2 ------------------------- */ + +#ifndef GL_NVX_gpu_multicast2 +#define GL_NVX_gpu_multicast2 1 + +#define GL_UPLOAD_GPU_MASK_NVX 0x954A + +typedef GLsync (GLAPIENTRY * PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint* waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +typedef GLuint (GLAPIENTRY * PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint* waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +typedef void (GLAPIENTRY * PFNGLMULTICASTSCISSORARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLint* v); +typedef void (GLAPIENTRY * PFNGLMULTICASTVIEWPORTARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC) (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff); +typedef void (GLAPIENTRY * PFNGLUPLOADGPUMASKNVXPROC) (GLbitfield mask); + +#define glAsyncCopyBufferSubDataNVX GLEW_GET_FUN(__glewAsyncCopyBufferSubDataNVX) +#define glAsyncCopyImageSubDataNVX GLEW_GET_FUN(__glewAsyncCopyImageSubDataNVX) +#define glMulticastScissorArrayvNVX GLEW_GET_FUN(__glewMulticastScissorArrayvNVX) +#define glMulticastViewportArrayvNVX GLEW_GET_FUN(__glewMulticastViewportArrayvNVX) +#define glMulticastViewportPositionWScaleNVX GLEW_GET_FUN(__glewMulticastViewportPositionWScaleNVX) +#define glUploadGpuMaskNVX GLEW_GET_FUN(__glewUploadGpuMaskNVX) + +#define GLEW_NVX_gpu_multicast2 GLEW_GET_VAR(__GLEW_NVX_gpu_multicast2) + +#endif /* GL_NVX_gpu_multicast2 */ + +/* ---------------------- GL_NVX_linked_gpu_multicast ---------------------- */ + +#ifndef GL_NVX_linked_gpu_multicast +#define GL_NVX_linked_gpu_multicast 1 + +#define GL_LGPU_SEPARATE_STORAGE_BIT_NVX 0x0800 +#define GL_MAX_LGPU_GPUS_NVX 0x92BA + +typedef void (GLAPIENTRY * PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); +typedef void (GLAPIENTRY * PFNGLLGPUINTERLOCKNVXPROC) (void); +typedef void (GLAPIENTRY * PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); + +#define glLGPUCopyImageSubDataNVX GLEW_GET_FUN(__glewLGPUCopyImageSubDataNVX) +#define glLGPUInterlockNVX GLEW_GET_FUN(__glewLGPUInterlockNVX) +#define glLGPUNamedBufferSubDataNVX GLEW_GET_FUN(__glewLGPUNamedBufferSubDataNVX) + +#define GLEW_NVX_linked_gpu_multicast GLEW_GET_VAR(__GLEW_NVX_linked_gpu_multicast) + +#endif /* GL_NVX_linked_gpu_multicast */ + +/* ------------------------- GL_NVX_progress_fence ------------------------- */ + +#ifndef GL_NVX_progress_fence +#define GL_NVX_progress_fence 1 + +typedef void (GLAPIENTRY * PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC) (GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64 *fenceValueArray); +typedef void (GLAPIENTRY * PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64 *fenceValueArray); +typedef void (GLAPIENTRY * PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64 *fenceValueArray); + +#define glClientWaitSemaphoreui64NVX GLEW_GET_FUN(__glewClientWaitSemaphoreui64NVX) +#define glSignalSemaphoreui64NVX GLEW_GET_FUN(__glewSignalSemaphoreui64NVX) +#define glWaitSemaphoreui64NVX GLEW_GET_FUN(__glewWaitSemaphoreui64NVX) + +#define GLEW_NVX_progress_fence GLEW_GET_VAR(__GLEW_NVX_progress_fence) + +#endif /* GL_NVX_progress_fence */ + +/* ------------------------ GL_NV_3dvision_settings ------------------------ */ + +#ifndef GL_NV_3dvision_settings +#define GL_NV_3dvision_settings 1 + +#define GL_3DVISION_STEREO_NV 0x90F4 +#define GL_STEREO_SEPARATION_NV 0x90F5 +#define GL_STEREO_CONVERGENCE_NV 0x90F6 +#define GL_STEREO_CUTOFF_NV 0x90F7 +#define GL_STEREO_PROJECTION_NV 0x90F8 +#define GL_STEREO_PROJECTION_PERSPECTIVE_NV 0x90F9 +#define GL_STEREO_PROJECTION_ORTHO_NV 0x90FA + +typedef void (GLAPIENTRY * PFNGLSTEREOPARAMETERFNVPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLSTEREOPARAMETERINVPROC) (GLenum pname, GLint param); + +#define glStereoParameterfNV GLEW_GET_FUN(__glewStereoParameterfNV) +#define glStereoParameteriNV GLEW_GET_FUN(__glewStereoParameteriNV) + +#define GLEW_NV_3dvision_settings GLEW_GET_VAR(__GLEW_NV_3dvision_settings) + +#endif /* GL_NV_3dvision_settings */ + +/* ------------------- GL_NV_EGL_stream_consumer_external ------------------ */ + +#ifndef GL_NV_EGL_stream_consumer_external +#define GL_NV_EGL_stream_consumer_external 1 + +#define GL_TEXTURE_EXTERNAL_OES 0x8D65 +#define GL_SAMPLER_EXTERNAL_OES 0x8D66 +#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 +#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 + +#define GLEW_NV_EGL_stream_consumer_external GLEW_GET_VAR(__GLEW_NV_EGL_stream_consumer_external) + +#endif /* GL_NV_EGL_stream_consumer_external */ + +/* ----------------- GL_NV_alpha_to_coverage_dither_control ---------------- */ + +#ifndef GL_NV_alpha_to_coverage_dither_control +#define GL_NV_alpha_to_coverage_dither_control 1 + +#define GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV 0x92BF +#define GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV 0x934D +#define GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV 0x934E +#define GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV 0x934F + +typedef void (GLAPIENTRY * PFNGLALPHATOCOVERAGEDITHERCONTROLNVPROC) (GLenum mode); + +#define glAlphaToCoverageDitherControlNV GLEW_GET_FUN(__glewAlphaToCoverageDitherControlNV) + +#define GLEW_NV_alpha_to_coverage_dither_control GLEW_GET_VAR(__GLEW_NV_alpha_to_coverage_dither_control) + +#endif /* GL_NV_alpha_to_coverage_dither_control */ + +/* ------------------------------- GL_NV_bgr ------------------------------- */ + +#ifndef GL_NV_bgr +#define GL_NV_bgr 1 + +#define GL_BGR_NV 0x80E0 + +#define GLEW_NV_bgr GLEW_GET_VAR(__GLEW_NV_bgr) + +#endif /* GL_NV_bgr */ + +/* ------------------- GL_NV_bindless_multi_draw_indirect ------------------ */ + +#ifndef GL_NV_bindless_multi_draw_indirect +#define GL_NV_bindless_multi_draw_indirect 1 + +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSNVPROC) (GLenum mode, const void *indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSNVPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount); + +#define glMultiDrawArraysIndirectBindlessNV GLEW_GET_FUN(__glewMultiDrawArraysIndirectBindlessNV) +#define glMultiDrawElementsIndirectBindlessNV GLEW_GET_FUN(__glewMultiDrawElementsIndirectBindlessNV) + +#define GLEW_NV_bindless_multi_draw_indirect GLEW_GET_VAR(__GLEW_NV_bindless_multi_draw_indirect) + +#endif /* GL_NV_bindless_multi_draw_indirect */ + +/* ---------------- GL_NV_bindless_multi_draw_indirect_count --------------- */ + +#ifndef GL_NV_bindless_multi_draw_indirect_count +#define GL_NV_bindless_multi_draw_indirect_count 1 + +typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSCOUNTNVPROC) (GLenum mode, const void *indirect, GLintptr drawCount, GLsizei maxDrawCount, GLsizei stride, GLint vertexBufferCount); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSCOUNTNVPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawCount, GLsizei maxDrawCount, GLsizei stride, GLint vertexBufferCount); + +#define glMultiDrawArraysIndirectBindlessCountNV GLEW_GET_FUN(__glewMultiDrawArraysIndirectBindlessCountNV) +#define glMultiDrawElementsIndirectBindlessCountNV GLEW_GET_FUN(__glewMultiDrawElementsIndirectBindlessCountNV) + +#define GLEW_NV_bindless_multi_draw_indirect_count GLEW_GET_VAR(__GLEW_NV_bindless_multi_draw_indirect_count) + +#endif /* GL_NV_bindless_multi_draw_indirect_count */ + +/* ------------------------- GL_NV_bindless_texture ------------------------ */ + +#ifndef GL_NV_bindless_texture +#define GL_NV_bindless_texture 1 + +typedef GLuint64 (GLAPIENTRY * PFNGLGETIMAGEHANDLENVPROC) (GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format); +typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTUREHANDLENVPROC) (GLuint texture); +typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTURESAMPLERHANDLENVPROC) (GLuint texture, GLuint sampler); +typedef GLboolean (GLAPIENTRY * PFNGLISIMAGEHANDLERESIDENTNVPROC) (GLuint64 handle); +typedef GLboolean (GLAPIENTRY * PFNGLISTEXTUREHANDLERESIDENTNVPROC) (GLuint64 handle); +typedef void (GLAPIENTRY * PFNGLMAKEIMAGEHANDLENONRESIDENTNVPROC) (GLuint64 handle); +typedef void (GLAPIENTRY * PFNGLMAKEIMAGEHANDLERESIDENTNVPROC) (GLuint64 handle, GLenum access); +typedef void (GLAPIENTRY * PFNGLMAKETEXTUREHANDLENONRESIDENTNVPROC) (GLuint64 handle); +typedef void (GLAPIENTRY * PFNGLMAKETEXTUREHANDLERESIDENTNVPROC) (GLuint64 handle); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64NVPROC) (GLuint program, GLint location, GLuint64 value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* values); +typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64NVPROC) (GLint location, GLuint64 value); +typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64VNVPROC) (GLint location, GLsizei count, const GLuint64* value); + +#define glGetImageHandleNV GLEW_GET_FUN(__glewGetImageHandleNV) +#define glGetTextureHandleNV GLEW_GET_FUN(__glewGetTextureHandleNV) +#define glGetTextureSamplerHandleNV GLEW_GET_FUN(__glewGetTextureSamplerHandleNV) +#define glIsImageHandleResidentNV GLEW_GET_FUN(__glewIsImageHandleResidentNV) +#define glIsTextureHandleResidentNV GLEW_GET_FUN(__glewIsTextureHandleResidentNV) +#define glMakeImageHandleNonResidentNV GLEW_GET_FUN(__glewMakeImageHandleNonResidentNV) +#define glMakeImageHandleResidentNV GLEW_GET_FUN(__glewMakeImageHandleResidentNV) +#define glMakeTextureHandleNonResidentNV GLEW_GET_FUN(__glewMakeTextureHandleNonResidentNV) +#define glMakeTextureHandleResidentNV GLEW_GET_FUN(__glewMakeTextureHandleResidentNV) +#define glProgramUniformHandleui64NV GLEW_GET_FUN(__glewProgramUniformHandleui64NV) +#define glProgramUniformHandleui64vNV GLEW_GET_FUN(__glewProgramUniformHandleui64vNV) +#define glUniformHandleui64NV GLEW_GET_FUN(__glewUniformHandleui64NV) +#define glUniformHandleui64vNV GLEW_GET_FUN(__glewUniformHandleui64vNV) + +#define GLEW_NV_bindless_texture GLEW_GET_VAR(__GLEW_NV_bindless_texture) + +#endif /* GL_NV_bindless_texture */ + +/* --------------------- GL_NV_blend_equation_advanced --------------------- */ + +#ifndef GL_NV_blend_equation_advanced +#define GL_NV_blend_equation_advanced 1 + +#define GL_XOR_NV 0x1506 +#define GL_RED_NV 0x1903 +#define GL_GREEN_NV 0x1904 +#define GL_BLUE_NV 0x1905 +#define GL_BLEND_PREMULTIPLIED_SRC_NV 0x9280 +#define GL_BLEND_OVERLAP_NV 0x9281 +#define GL_UNCORRELATED_NV 0x9282 +#define GL_DISJOINT_NV 0x9283 +#define GL_CONJOINT_NV 0x9284 +#define GL_BLEND_ADVANCED_COHERENT_NV 0x9285 +#define GL_SRC_NV 0x9286 +#define GL_DST_NV 0x9287 +#define GL_SRC_OVER_NV 0x9288 +#define GL_DST_OVER_NV 0x9289 +#define GL_SRC_IN_NV 0x928A +#define GL_DST_IN_NV 0x928B +#define GL_SRC_OUT_NV 0x928C +#define GL_DST_OUT_NV 0x928D +#define GL_SRC_ATOP_NV 0x928E +#define GL_DST_ATOP_NV 0x928F +#define GL_PLUS_NV 0x9291 +#define GL_PLUS_DARKER_NV 0x9292 +#define GL_MULTIPLY_NV 0x9294 +#define GL_SCREEN_NV 0x9295 +#define GL_OVERLAY_NV 0x9296 +#define GL_DARKEN_NV 0x9297 +#define GL_LIGHTEN_NV 0x9298 +#define GL_COLORDODGE_NV 0x9299 +#define GL_COLORBURN_NV 0x929A +#define GL_HARDLIGHT_NV 0x929B +#define GL_SOFTLIGHT_NV 0x929C +#define GL_DIFFERENCE_NV 0x929E +#define GL_MINUS_NV 0x929F +#define GL_EXCLUSION_NV 0x92A0 +#define GL_CONTRAST_NV 0x92A1 +#define GL_INVERT_RGB_NV 0x92A3 +#define GL_LINEARDODGE_NV 0x92A4 +#define GL_LINEARBURN_NV 0x92A5 +#define GL_VIVIDLIGHT_NV 0x92A6 +#define GL_LINEARLIGHT_NV 0x92A7 +#define GL_PINLIGHT_NV 0x92A8 +#define GL_HARDMIX_NV 0x92A9 +#define GL_HSL_HUE_NV 0x92AD +#define GL_HSL_SATURATION_NV 0x92AE +#define GL_HSL_COLOR_NV 0x92AF +#define GL_HSL_LUMINOSITY_NV 0x92B0 +#define GL_PLUS_CLAMPED_NV 0x92B1 +#define GL_PLUS_CLAMPED_ALPHA_NV 0x92B2 +#define GL_MINUS_CLAMPED_NV 0x92B3 +#define GL_INVERT_OVG_NV 0x92B4 + +typedef void (GLAPIENTRY * PFNGLBLENDBARRIERNVPROC) (void); +typedef void (GLAPIENTRY * PFNGLBLENDPARAMETERINVPROC) (GLenum pname, GLint value); + +#define glBlendBarrierNV GLEW_GET_FUN(__glewBlendBarrierNV) +#define glBlendParameteriNV GLEW_GET_FUN(__glewBlendParameteriNV) + +#define GLEW_NV_blend_equation_advanced GLEW_GET_VAR(__GLEW_NV_blend_equation_advanced) + +#endif /* GL_NV_blend_equation_advanced */ + +/* ----------------- GL_NV_blend_equation_advanced_coherent ---------------- */ + +#ifndef GL_NV_blend_equation_advanced_coherent +#define GL_NV_blend_equation_advanced_coherent 1 + +#define GLEW_NV_blend_equation_advanced_coherent GLEW_GET_VAR(__GLEW_NV_blend_equation_advanced_coherent) + +#endif /* GL_NV_blend_equation_advanced_coherent */ + +/* ----------------------- GL_NV_blend_minmax_factor ----------------------- */ + +#ifndef GL_NV_blend_minmax_factor +#define GL_NV_blend_minmax_factor 1 + +#define GL_FACTOR_MIN_AMD 0x901C +#define GL_FACTOR_MAX_AMD 0x901D + +#define GLEW_NV_blend_minmax_factor GLEW_GET_VAR(__GLEW_NV_blend_minmax_factor) + +#endif /* GL_NV_blend_minmax_factor */ + +/* --------------------------- GL_NV_blend_square -------------------------- */ + +#ifndef GL_NV_blend_square +#define GL_NV_blend_square 1 + +#define GLEW_NV_blend_square GLEW_GET_VAR(__GLEW_NV_blend_square) + +#endif /* GL_NV_blend_square */ + +/* ----------------------- GL_NV_clip_space_w_scaling ---------------------- */ + +#ifndef GL_NV_clip_space_w_scaling +#define GL_NV_clip_space_w_scaling 1 + +#define GL_VIEWPORT_POSITION_W_SCALE_NV 0x937C +#define GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV 0x937D +#define GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV 0x937E + +typedef void (GLAPIENTRY * PFNGLVIEWPORTPOSITIONWSCALENVPROC) (GLuint index, GLfloat xcoeff, GLfloat ycoeff); + +#define glViewportPositionWScaleNV GLEW_GET_FUN(__glewViewportPositionWScaleNV) + +#define GLEW_NV_clip_space_w_scaling GLEW_GET_VAR(__GLEW_NV_clip_space_w_scaling) + +#endif /* GL_NV_clip_space_w_scaling */ + +/* --------------------------- GL_NV_command_list -------------------------- */ + +#ifndef GL_NV_command_list +#define GL_NV_command_list 1 + +#define GL_TERMINATE_SEQUENCE_COMMAND_NV 0x0000 +#define GL_NOP_COMMAND_NV 0x0001 +#define GL_DRAW_ELEMENTS_COMMAND_NV 0x0002 +#define GL_DRAW_ARRAYS_COMMAND_NV 0x0003 +#define GL_DRAW_ELEMENTS_STRIP_COMMAND_NV 0x0004 +#define GL_DRAW_ARRAYS_STRIP_COMMAND_NV 0x0005 +#define GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV 0x0006 +#define GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV 0x0007 +#define GL_ELEMENT_ADDRESS_COMMAND_NV 0x0008 +#define GL_ATTRIBUTE_ADDRESS_COMMAND_NV 0x0009 +#define GL_UNIFORM_ADDRESS_COMMAND_NV 0x000a +#define GL_BLEND_COLOR_COMMAND_NV 0x000b +#define GL_STENCIL_REF_COMMAND_NV 0x000c +#define GL_LINE_WIDTH_COMMAND_NV 0x000d +#define GL_POLYGON_OFFSET_COMMAND_NV 0x000e +#define GL_ALPHA_REF_COMMAND_NV 0x000f +#define GL_VIEWPORT_COMMAND_NV 0x0010 +#define GL_SCISSOR_COMMAND_NV 0x0011 +#define GL_FRONT_FACE_COMMAND_NV 0x0012 + +typedef void (GLAPIENTRY * PFNGLCALLCOMMANDLISTNVPROC) (GLuint list); +typedef void (GLAPIENTRY * PFNGLCOMMANDLISTSEGMENTSNVPROC) (GLuint list, GLuint segments); +typedef void (GLAPIENTRY * PFNGLCOMPILECOMMANDLISTNVPROC) (GLuint list); +typedef void (GLAPIENTRY * PFNGLCREATECOMMANDLISTSNVPROC) (GLsizei n, GLuint* lists); +typedef void (GLAPIENTRY * PFNGLCREATESTATESNVPROC) (GLsizei n, GLuint* states); +typedef void (GLAPIENTRY * PFNGLDELETECOMMANDLISTSNVPROC) (GLsizei n, const GLuint* lists); +typedef void (GLAPIENTRY * PFNGLDELETESTATESNVPROC) (GLsizei n, const GLuint* states); +typedef void (GLAPIENTRY * PFNGLDRAWCOMMANDSADDRESSNVPROC) (GLenum primitiveMode, const GLuint64* indirects, const GLsizei* sizes, GLuint count); +typedef void (GLAPIENTRY * PFNGLDRAWCOMMANDSNVPROC) (GLenum primitiveMode, GLuint buffer, const GLintptr* indirects, const GLsizei* sizes, GLuint count); +typedef void (GLAPIENTRY * PFNGLDRAWCOMMANDSSTATESADDRESSNVPROC) (const GLuint64* indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count); +typedef void (GLAPIENTRY * PFNGLDRAWCOMMANDSSTATESNVPROC) (GLuint buffer, const GLintptr* indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count); +typedef GLuint (GLAPIENTRY * PFNGLGETCOMMANDHEADERNVPROC) (GLenum tokenID, GLuint size); +typedef GLushort (GLAPIENTRY * PFNGLGETSTAGEINDEXNVPROC) (GLenum shadertype); +typedef GLboolean (GLAPIENTRY * PFNGLISCOMMANDLISTNVPROC) (GLuint list); +typedef GLboolean (GLAPIENTRY * PFNGLISSTATENVPROC) (GLuint state); +typedef void (GLAPIENTRY * PFNGLLISTDRAWCOMMANDSSTATESCLIENTNVPROC) (GLuint list, GLuint segment, const void** indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count); +typedef void (GLAPIENTRY * PFNGLSTATECAPTURENVPROC) (GLuint state, GLenum mode); + +#define glCallCommandListNV GLEW_GET_FUN(__glewCallCommandListNV) +#define glCommandListSegmentsNV GLEW_GET_FUN(__glewCommandListSegmentsNV) +#define glCompileCommandListNV GLEW_GET_FUN(__glewCompileCommandListNV) +#define glCreateCommandListsNV GLEW_GET_FUN(__glewCreateCommandListsNV) +#define glCreateStatesNV GLEW_GET_FUN(__glewCreateStatesNV) +#define glDeleteCommandListsNV GLEW_GET_FUN(__glewDeleteCommandListsNV) +#define glDeleteStatesNV GLEW_GET_FUN(__glewDeleteStatesNV) +#define glDrawCommandsAddressNV GLEW_GET_FUN(__glewDrawCommandsAddressNV) +#define glDrawCommandsNV GLEW_GET_FUN(__glewDrawCommandsNV) +#define glDrawCommandsStatesAddressNV GLEW_GET_FUN(__glewDrawCommandsStatesAddressNV) +#define glDrawCommandsStatesNV GLEW_GET_FUN(__glewDrawCommandsStatesNV) +#define glGetCommandHeaderNV GLEW_GET_FUN(__glewGetCommandHeaderNV) +#define glGetStageIndexNV GLEW_GET_FUN(__glewGetStageIndexNV) +#define glIsCommandListNV GLEW_GET_FUN(__glewIsCommandListNV) +#define glIsStateNV GLEW_GET_FUN(__glewIsStateNV) +#define glListDrawCommandsStatesClientNV GLEW_GET_FUN(__glewListDrawCommandsStatesClientNV) +#define glStateCaptureNV GLEW_GET_FUN(__glewStateCaptureNV) + +#define GLEW_NV_command_list GLEW_GET_VAR(__GLEW_NV_command_list) + +#endif /* GL_NV_command_list */ + +/* ------------------------- GL_NV_compute_program5 ------------------------ */ + +#ifndef GL_NV_compute_program5 +#define GL_NV_compute_program5 1 + +#define GL_COMPUTE_PROGRAM_NV 0x90FB +#define GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV 0x90FC + +#define GLEW_NV_compute_program5 GLEW_GET_VAR(__GLEW_NV_compute_program5) + +#endif /* GL_NV_compute_program5 */ + +/* -------------------- GL_NV_compute_shader_derivatives ------------------- */ + +#ifndef GL_NV_compute_shader_derivatives +#define GL_NV_compute_shader_derivatives 1 + +#define GLEW_NV_compute_shader_derivatives GLEW_GET_VAR(__GLEW_NV_compute_shader_derivatives) + +#endif /* GL_NV_compute_shader_derivatives */ + +/* ------------------------ GL_NV_conditional_render ----------------------- */ + +#ifndef GL_NV_conditional_render +#define GL_NV_conditional_render 1 + +#define GL_QUERY_WAIT_NV 0x8E13 +#define GL_QUERY_NO_WAIT_NV 0x8E14 +#define GL_QUERY_BY_REGION_WAIT_NV 0x8E15 +#define GL_QUERY_BY_REGION_NO_WAIT_NV 0x8E16 + +typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERNVPROC) (GLuint id, GLenum mode); +typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERNVPROC) (void); + +#define glBeginConditionalRenderNV GLEW_GET_FUN(__glewBeginConditionalRenderNV) +#define glEndConditionalRenderNV GLEW_GET_FUN(__glewEndConditionalRenderNV) + +#define GLEW_NV_conditional_render GLEW_GET_VAR(__GLEW_NV_conditional_render) + +#endif /* GL_NV_conditional_render */ + +/* ----------------------- GL_NV_conservative_raster ----------------------- */ + +#ifndef GL_NV_conservative_raster +#define GL_NV_conservative_raster 1 + +#define GL_CONSERVATIVE_RASTERIZATION_NV 0x9346 +#define GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV 0x9347 +#define GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV 0x9348 +#define GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV 0x9349 + +typedef void (GLAPIENTRY * PFNGLSUBPIXELPRECISIONBIASNVPROC) (GLuint xbits, GLuint ybits); + +#define glSubpixelPrecisionBiasNV GLEW_GET_FUN(__glewSubpixelPrecisionBiasNV) + +#define GLEW_NV_conservative_raster GLEW_GET_VAR(__GLEW_NV_conservative_raster) + +#endif /* GL_NV_conservative_raster */ + +/* -------------------- GL_NV_conservative_raster_dilate ------------------- */ + +#ifndef GL_NV_conservative_raster_dilate +#define GL_NV_conservative_raster_dilate 1 + +#define GL_CONSERVATIVE_RASTER_DILATE_NV 0x9379 +#define GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV 0x937A +#define GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV 0x937B + +typedef void (GLAPIENTRY * PFNGLCONSERVATIVERASTERPARAMETERFNVPROC) (GLenum pname, GLfloat value); + +#define glConservativeRasterParameterfNV GLEW_GET_FUN(__glewConservativeRasterParameterfNV) + +#define GLEW_NV_conservative_raster_dilate GLEW_GET_VAR(__GLEW_NV_conservative_raster_dilate) + +#endif /* GL_NV_conservative_raster_dilate */ + +/* ------------------- GL_NV_conservative_raster_pre_snap ------------------ */ + +#ifndef GL_NV_conservative_raster_pre_snap +#define GL_NV_conservative_raster_pre_snap 1 + +#define GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV 0x9550 + +#define GLEW_NV_conservative_raster_pre_snap GLEW_GET_VAR(__GLEW_NV_conservative_raster_pre_snap) + +#endif /* GL_NV_conservative_raster_pre_snap */ + +/* -------------- GL_NV_conservative_raster_pre_snap_triangles ------------- */ + +#ifndef GL_NV_conservative_raster_pre_snap_triangles +#define GL_NV_conservative_raster_pre_snap_triangles 1 + +#define GL_CONSERVATIVE_RASTER_MODE_NV 0x954D +#define GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV 0x954E +#define GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV 0x954F + +typedef void (GLAPIENTRY * PFNGLCONSERVATIVERASTERPARAMETERINVPROC) (GLenum pname, GLint param); + +#define glConservativeRasterParameteriNV GLEW_GET_FUN(__glewConservativeRasterParameteriNV) + +#define GLEW_NV_conservative_raster_pre_snap_triangles GLEW_GET_VAR(__GLEW_NV_conservative_raster_pre_snap_triangles) + +#endif /* GL_NV_conservative_raster_pre_snap_triangles */ + +/* --------------- GL_NV_conservative_raster_underestimation --------------- */ + +#ifndef GL_NV_conservative_raster_underestimation +#define GL_NV_conservative_raster_underestimation 1 + +#define GLEW_NV_conservative_raster_underestimation GLEW_GET_VAR(__GLEW_NV_conservative_raster_underestimation) + +#endif /* GL_NV_conservative_raster_underestimation */ + +/* --------------------------- GL_NV_copy_buffer --------------------------- */ + +#ifndef GL_NV_copy_buffer +#define GL_NV_copy_buffer 1 + +#define GL_COPY_READ_BUFFER_NV 0x8F36 +#define GL_COPY_WRITE_BUFFER_NV 0x8F37 + +typedef void (GLAPIENTRY * PFNGLCOPYBUFFERSUBDATANVPROC) (GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size); + +#define glCopyBufferSubDataNV GLEW_GET_FUN(__glewCopyBufferSubDataNV) + +#define GLEW_NV_copy_buffer GLEW_GET_VAR(__GLEW_NV_copy_buffer) + +#endif /* GL_NV_copy_buffer */ + +/* ----------------------- GL_NV_copy_depth_to_color ----------------------- */ + +#ifndef GL_NV_copy_depth_to_color +#define GL_NV_copy_depth_to_color 1 + +#define GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E +#define GL_DEPTH_STENCIL_TO_BGRA_NV 0x886F + +#define GLEW_NV_copy_depth_to_color GLEW_GET_VAR(__GLEW_NV_copy_depth_to_color) + +#endif /* GL_NV_copy_depth_to_color */ + +/* ---------------------------- GL_NV_copy_image --------------------------- */ + +#ifndef GL_NV_copy_image +#define GL_NV_copy_image 1 + +typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATANVPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); + +#define glCopyImageSubDataNV GLEW_GET_FUN(__glewCopyImageSubDataNV) + +#define GLEW_NV_copy_image GLEW_GET_VAR(__GLEW_NV_copy_image) + +#endif /* GL_NV_copy_image */ + +/* -------------------------- GL_NV_deep_texture3D ------------------------- */ + +#ifndef GL_NV_deep_texture3D +#define GL_NV_deep_texture3D 1 + +#define GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV 0x90D0 +#define GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV 0x90D1 + +#define GLEW_NV_deep_texture3D GLEW_GET_VAR(__GLEW_NV_deep_texture3D) + +#endif /* GL_NV_deep_texture3D */ + +/* ------------------------ GL_NV_depth_buffer_float ----------------------- */ + +#ifndef GL_NV_depth_buffer_float +#define GL_NV_depth_buffer_float 1 + +#define GL_DEPTH_COMPONENT32F_NV 0x8DAB +#define GL_DEPTH32F_STENCIL8_NV 0x8DAC +#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV 0x8DAD +#define GL_DEPTH_BUFFER_FLOAT_MODE_NV 0x8DAF + +typedef void (GLAPIENTRY * PFNGLCLEARDEPTHDNVPROC) (GLdouble depth); +typedef void (GLAPIENTRY * PFNGLDEPTHBOUNDSDNVPROC) (GLdouble zmin, GLdouble zmax); +typedef void (GLAPIENTRY * PFNGLDEPTHRANGEDNVPROC) (GLdouble zNear, GLdouble zFar); + +#define glClearDepthdNV GLEW_GET_FUN(__glewClearDepthdNV) +#define glDepthBoundsdNV GLEW_GET_FUN(__glewDepthBoundsdNV) +#define glDepthRangedNV GLEW_GET_FUN(__glewDepthRangedNV) + +#define GLEW_NV_depth_buffer_float GLEW_GET_VAR(__GLEW_NV_depth_buffer_float) + +#endif /* GL_NV_depth_buffer_float */ + +/* --------------------------- GL_NV_depth_clamp --------------------------- */ + +#ifndef GL_NV_depth_clamp +#define GL_NV_depth_clamp 1 + +#define GL_DEPTH_CLAMP_NV 0x864F + +#define GLEW_NV_depth_clamp GLEW_GET_VAR(__GLEW_NV_depth_clamp) + +#endif /* GL_NV_depth_clamp */ + +/* ------------------------- GL_NV_depth_nonlinear ------------------------- */ + +#ifndef GL_NV_depth_nonlinear +#define GL_NV_depth_nonlinear 1 + +#define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C + +#define GLEW_NV_depth_nonlinear GLEW_GET_VAR(__GLEW_NV_depth_nonlinear) + +#endif /* GL_NV_depth_nonlinear */ + +/* ---------------------- GL_NV_depth_range_unclamped ---------------------- */ + +#ifndef GL_NV_depth_range_unclamped +#define GL_NV_depth_range_unclamped 1 + +#define GL_SAMPLE_COUNT_BITS_NV 0x8864 +#define GL_CURRENT_SAMPLE_COUNT_QUERY_NV 0x8865 +#define GL_QUERY_RESULT_NV 0x8866 +#define GL_QUERY_RESULT_AVAILABLE_NV 0x8867 +#define GL_SAMPLE_COUNT_NV 0x8914 + +#define GLEW_NV_depth_range_unclamped GLEW_GET_VAR(__GLEW_NV_depth_range_unclamped) + +#endif /* GL_NV_depth_range_unclamped */ + +/* --------------------------- GL_NV_draw_buffers -------------------------- */ + +#ifndef GL_NV_draw_buffers +#define GL_NV_draw_buffers 1 + +#define GL_MAX_DRAW_BUFFERS_NV 0x8824 +#define GL_DRAW_BUFFER0_NV 0x8825 +#define GL_DRAW_BUFFER1_NV 0x8826 +#define GL_DRAW_BUFFER2_NV 0x8827 +#define GL_DRAW_BUFFER3_NV 0x8828 +#define GL_DRAW_BUFFER4_NV 0x8829 +#define GL_DRAW_BUFFER5_NV 0x882A +#define GL_DRAW_BUFFER6_NV 0x882B +#define GL_DRAW_BUFFER7_NV 0x882C +#define GL_DRAW_BUFFER8_NV 0x882D +#define GL_DRAW_BUFFER9_NV 0x882E +#define GL_DRAW_BUFFER10_NV 0x882F +#define GL_DRAW_BUFFER11_NV 0x8830 +#define GL_DRAW_BUFFER12_NV 0x8831 +#define GL_DRAW_BUFFER13_NV 0x8832 +#define GL_DRAW_BUFFER14_NV 0x8833 +#define GL_DRAW_BUFFER15_NV 0x8834 +#define GL_COLOR_ATTACHMENT0_NV 0x8CE0 +#define GL_COLOR_ATTACHMENT1_NV 0x8CE1 +#define GL_COLOR_ATTACHMENT2_NV 0x8CE2 +#define GL_COLOR_ATTACHMENT3_NV 0x8CE3 +#define GL_COLOR_ATTACHMENT4_NV 0x8CE4 +#define GL_COLOR_ATTACHMENT5_NV 0x8CE5 +#define GL_COLOR_ATTACHMENT6_NV 0x8CE6 +#define GL_COLOR_ATTACHMENT7_NV 0x8CE7 +#define GL_COLOR_ATTACHMENT8_NV 0x8CE8 +#define GL_COLOR_ATTACHMENT9_NV 0x8CE9 +#define GL_COLOR_ATTACHMENT10_NV 0x8CEA +#define GL_COLOR_ATTACHMENT11_NV 0x8CEB +#define GL_COLOR_ATTACHMENT12_NV 0x8CEC +#define GL_COLOR_ATTACHMENT13_NV 0x8CED +#define GL_COLOR_ATTACHMENT14_NV 0x8CEE +#define GL_COLOR_ATTACHMENT15_NV 0x8CEF + +typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum* bufs); + +#define glDrawBuffersNV GLEW_GET_FUN(__glewDrawBuffersNV) + +#define GLEW_NV_draw_buffers GLEW_GET_VAR(__GLEW_NV_draw_buffers) + +#endif /* GL_NV_draw_buffers */ + +/* -------------------------- GL_NV_draw_instanced ------------------------- */ + +#ifndef GL_NV_draw_instanced +#define GL_NV_draw_instanced 1 + +typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDNVPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); +typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDNVPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); + +#define glDrawArraysInstancedNV GLEW_GET_FUN(__glewDrawArraysInstancedNV) +#define glDrawElementsInstancedNV GLEW_GET_FUN(__glewDrawElementsInstancedNV) + +#define GLEW_NV_draw_instanced GLEW_GET_VAR(__GLEW_NV_draw_instanced) + +#endif /* GL_NV_draw_instanced */ + +/* --------------------------- GL_NV_draw_texture -------------------------- */ + +#ifndef GL_NV_draw_texture +#define GL_NV_draw_texture 1 + +typedef void (GLAPIENTRY * PFNGLDRAWTEXTURENVPROC) (GLuint texture, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1); + +#define glDrawTextureNV GLEW_GET_FUN(__glewDrawTextureNV) + +#define GLEW_NV_draw_texture GLEW_GET_VAR(__GLEW_NV_draw_texture) + +#endif /* GL_NV_draw_texture */ + +/* ------------------------ GL_NV_draw_vulkan_image ------------------------ */ + +#ifndef GL_NV_draw_vulkan_image +#define GL_NV_draw_vulkan_image 1 + +typedef void (APIENTRY *GLVULKANPROCNV)(void); + +typedef void (GLAPIENTRY * PFNGLDRAWVKIMAGENVPROC) (GLuint64 vkImage, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1); +typedef GLVULKANPROCNV (GLAPIENTRY * PFNGLGETVKPROCADDRNVPROC) (const GLchar* name); +typedef void (GLAPIENTRY * PFNGLSIGNALVKFENCENVPROC) (GLuint64 vkFence); +typedef void (GLAPIENTRY * PFNGLSIGNALVKSEMAPHORENVPROC) (GLuint64 vkSemaphore); +typedef void (GLAPIENTRY * PFNGLWAITVKSEMAPHORENVPROC) (GLuint64 vkSemaphore); + +#define glDrawVkImageNV GLEW_GET_FUN(__glewDrawVkImageNV) +#define glGetVkProcAddrNV GLEW_GET_FUN(__glewGetVkProcAddrNV) +#define glSignalVkFenceNV GLEW_GET_FUN(__glewSignalVkFenceNV) +#define glSignalVkSemaphoreNV GLEW_GET_FUN(__glewSignalVkSemaphoreNV) +#define glWaitVkSemaphoreNV GLEW_GET_FUN(__glewWaitVkSemaphoreNV) + +#define GLEW_NV_draw_vulkan_image GLEW_GET_VAR(__GLEW_NV_draw_vulkan_image) + +#endif /* GL_NV_draw_vulkan_image */ + +/* ---------------------------- GL_NV_evaluators --------------------------- */ + +#ifndef GL_NV_evaluators +#define GL_NV_evaluators 1 + +#define GL_EVAL_2D_NV 0x86C0 +#define GL_EVAL_TRIANGULAR_2D_NV 0x86C1 +#define GL_MAP_TESSELLATION_NV 0x86C2 +#define GL_MAP_ATTRIB_U_ORDER_NV 0x86C3 +#define GL_MAP_ATTRIB_V_ORDER_NV 0x86C4 +#define GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5 +#define GL_EVAL_VERTEX_ATTRIB0_NV 0x86C6 +#define GL_EVAL_VERTEX_ATTRIB1_NV 0x86C7 +#define GL_EVAL_VERTEX_ATTRIB2_NV 0x86C8 +#define GL_EVAL_VERTEX_ATTRIB3_NV 0x86C9 +#define GL_EVAL_VERTEX_ATTRIB4_NV 0x86CA +#define GL_EVAL_VERTEX_ATTRIB5_NV 0x86CB +#define GL_EVAL_VERTEX_ATTRIB6_NV 0x86CC +#define GL_EVAL_VERTEX_ATTRIB7_NV 0x86CD +#define GL_EVAL_VERTEX_ATTRIB8_NV 0x86CE +#define GL_EVAL_VERTEX_ATTRIB9_NV 0x86CF +#define GL_EVAL_VERTEX_ATTRIB10_NV 0x86D0 +#define GL_EVAL_VERTEX_ATTRIB11_NV 0x86D1 +#define GL_EVAL_VERTEX_ATTRIB12_NV 0x86D2 +#define GL_EVAL_VERTEX_ATTRIB13_NV 0x86D3 +#define GL_EVAL_VERTEX_ATTRIB14_NV 0x86D4 +#define GL_EVAL_VERTEX_ATTRIB15_NV 0x86D5 +#define GL_MAX_MAP_TESSELLATION_NV 0x86D6 +#define GL_MAX_RATIONAL_EVAL_ORDER_NV 0x86D7 + +typedef void (GLAPIENTRY * PFNGLEVALMAPSNVPROC) (GLenum target, GLenum mode); +typedef void (GLAPIENTRY * PFNGLGETMAPATTRIBPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETMAPATTRIBPARAMETERIVNVPROC) (GLenum target, GLuint index, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, void *points); +typedef void (GLAPIENTRY * PFNGLGETMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const void *points); +typedef void (GLAPIENTRY * PFNGLMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, const GLint* params); + +#define glEvalMapsNV GLEW_GET_FUN(__glewEvalMapsNV) +#define glGetMapAttribParameterfvNV GLEW_GET_FUN(__glewGetMapAttribParameterfvNV) +#define glGetMapAttribParameterivNV GLEW_GET_FUN(__glewGetMapAttribParameterivNV) +#define glGetMapControlPointsNV GLEW_GET_FUN(__glewGetMapControlPointsNV) +#define glGetMapParameterfvNV GLEW_GET_FUN(__glewGetMapParameterfvNV) +#define glGetMapParameterivNV GLEW_GET_FUN(__glewGetMapParameterivNV) +#define glMapControlPointsNV GLEW_GET_FUN(__glewMapControlPointsNV) +#define glMapParameterfvNV GLEW_GET_FUN(__glewMapParameterfvNV) +#define glMapParameterivNV GLEW_GET_FUN(__glewMapParameterivNV) + +#define GLEW_NV_evaluators GLEW_GET_VAR(__GLEW_NV_evaluators) + +#endif /* GL_NV_evaluators */ + +/* --------------------- GL_NV_explicit_attrib_location -------------------- */ + +#ifndef GL_NV_explicit_attrib_location +#define GL_NV_explicit_attrib_location 1 + +#define GLEW_NV_explicit_attrib_location GLEW_GET_VAR(__GLEW_NV_explicit_attrib_location) + +#endif /* GL_NV_explicit_attrib_location */ + +/* ----------------------- GL_NV_explicit_multisample ---------------------- */ + +#ifndef GL_NV_explicit_multisample +#define GL_NV_explicit_multisample 1 + +#define GL_SAMPLE_POSITION_NV 0x8E50 +#define GL_SAMPLE_MASK_NV 0x8E51 +#define GL_SAMPLE_MASK_VALUE_NV 0x8E52 +#define GL_TEXTURE_BINDING_RENDERBUFFER_NV 0x8E53 +#define GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV 0x8E54 +#define GL_TEXTURE_RENDERBUFFER_NV 0x8E55 +#define GL_SAMPLER_RENDERBUFFER_NV 0x8E56 +#define GL_INT_SAMPLER_RENDERBUFFER_NV 0x8E57 +#define GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV 0x8E58 +#define GL_MAX_SAMPLE_MASK_WORDS_NV 0x8E59 + +typedef void (GLAPIENTRY * PFNGLGETMULTISAMPLEFVNVPROC) (GLenum pname, GLuint index, GLfloat* val); +typedef void (GLAPIENTRY * PFNGLSAMPLEMASKINDEXEDNVPROC) (GLuint index, GLbitfield mask); +typedef void (GLAPIENTRY * PFNGLTEXRENDERBUFFERNVPROC) (GLenum target, GLuint renderbuffer); + +#define glGetMultisamplefvNV GLEW_GET_FUN(__glewGetMultisamplefvNV) +#define glSampleMaskIndexedNV GLEW_GET_FUN(__glewSampleMaskIndexedNV) +#define glTexRenderbufferNV GLEW_GET_FUN(__glewTexRenderbufferNV) + +#define GLEW_NV_explicit_multisample GLEW_GET_VAR(__GLEW_NV_explicit_multisample) + +#endif /* GL_NV_explicit_multisample */ + +/* ---------------------- GL_NV_fbo_color_attachments ---------------------- */ + +#ifndef GL_NV_fbo_color_attachments +#define GL_NV_fbo_color_attachments 1 + +#define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF +#define GL_COLOR_ATTACHMENT0_NV 0x8CE0 +#define GL_COLOR_ATTACHMENT1_NV 0x8CE1 +#define GL_COLOR_ATTACHMENT2_NV 0x8CE2 +#define GL_COLOR_ATTACHMENT3_NV 0x8CE3 +#define GL_COLOR_ATTACHMENT4_NV 0x8CE4 +#define GL_COLOR_ATTACHMENT5_NV 0x8CE5 +#define GL_COLOR_ATTACHMENT6_NV 0x8CE6 +#define GL_COLOR_ATTACHMENT7_NV 0x8CE7 +#define GL_COLOR_ATTACHMENT8_NV 0x8CE8 +#define GL_COLOR_ATTACHMENT9_NV 0x8CE9 +#define GL_COLOR_ATTACHMENT10_NV 0x8CEA +#define GL_COLOR_ATTACHMENT11_NV 0x8CEB +#define GL_COLOR_ATTACHMENT12_NV 0x8CEC +#define GL_COLOR_ATTACHMENT13_NV 0x8CED +#define GL_COLOR_ATTACHMENT14_NV 0x8CEE +#define GL_COLOR_ATTACHMENT15_NV 0x8CEF + +#define GLEW_NV_fbo_color_attachments GLEW_GET_VAR(__GLEW_NV_fbo_color_attachments) + +#endif /* GL_NV_fbo_color_attachments */ + +/* ------------------------------ GL_NV_fence ------------------------------ */ + +#ifndef GL_NV_fence +#define GL_NV_fence 1 + +#define GL_ALL_COMPLETED_NV 0x84F2 +#define GL_FENCE_STATUS_NV 0x84F3 +#define GL_FENCE_CONDITION_NV 0x84F4 + +typedef void (GLAPIENTRY * PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint* fences); +typedef void (GLAPIENTRY * PFNGLFINISHFENCENVPROC) (GLuint fence); +typedef void (GLAPIENTRY * PFNGLGENFENCESNVPROC) (GLsizei n, GLuint* fences); +typedef void (GLAPIENTRY * PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISFENCENVPROC) (GLuint fence); +typedef void (GLAPIENTRY * PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); +typedef GLboolean (GLAPIENTRY * PFNGLTESTFENCENVPROC) (GLuint fence); + +#define glDeleteFencesNV GLEW_GET_FUN(__glewDeleteFencesNV) +#define glFinishFenceNV GLEW_GET_FUN(__glewFinishFenceNV) +#define glGenFencesNV GLEW_GET_FUN(__glewGenFencesNV) +#define glGetFenceivNV GLEW_GET_FUN(__glewGetFenceivNV) +#define glIsFenceNV GLEW_GET_FUN(__glewIsFenceNV) +#define glSetFenceNV GLEW_GET_FUN(__glewSetFenceNV) +#define glTestFenceNV GLEW_GET_FUN(__glewTestFenceNV) + +#define GLEW_NV_fence GLEW_GET_VAR(__GLEW_NV_fence) + +#endif /* GL_NV_fence */ + +/* -------------------------- GL_NV_fill_rectangle ------------------------- */ + +#ifndef GL_NV_fill_rectangle +#define GL_NV_fill_rectangle 1 + +#define GL_FILL_RECTANGLE_NV 0x933C + +#define GLEW_NV_fill_rectangle GLEW_GET_VAR(__GLEW_NV_fill_rectangle) + +#endif /* GL_NV_fill_rectangle */ + +/* --------------------------- GL_NV_float_buffer -------------------------- */ + +#ifndef GL_NV_float_buffer +#define GL_NV_float_buffer 1 + +#define GL_FLOAT_R_NV 0x8880 +#define GL_FLOAT_RG_NV 0x8881 +#define GL_FLOAT_RGB_NV 0x8882 +#define GL_FLOAT_RGBA_NV 0x8883 +#define GL_FLOAT_R16_NV 0x8884 +#define GL_FLOAT_R32_NV 0x8885 +#define GL_FLOAT_RG16_NV 0x8886 +#define GL_FLOAT_RG32_NV 0x8887 +#define GL_FLOAT_RGB16_NV 0x8888 +#define GL_FLOAT_RGB32_NV 0x8889 +#define GL_FLOAT_RGBA16_NV 0x888A +#define GL_FLOAT_RGBA32_NV 0x888B +#define GL_TEXTURE_FLOAT_COMPONENTS_NV 0x888C +#define GL_FLOAT_CLEAR_COLOR_VALUE_NV 0x888D +#define GL_FLOAT_RGBA_MODE_NV 0x888E + +#define GLEW_NV_float_buffer GLEW_GET_VAR(__GLEW_NV_float_buffer) + +#endif /* GL_NV_float_buffer */ + +/* --------------------------- GL_NV_fog_distance -------------------------- */ + +#ifndef GL_NV_fog_distance +#define GL_NV_fog_distance 1 + +#define GL_FOG_DISTANCE_MODE_NV 0x855A +#define GL_EYE_RADIAL_NV 0x855B +#define GL_EYE_PLANE_ABSOLUTE_NV 0x855C + +#define GLEW_NV_fog_distance GLEW_GET_VAR(__GLEW_NV_fog_distance) + +#endif /* GL_NV_fog_distance */ + +/* -------------------- GL_NV_fragment_coverage_to_color ------------------- */ + +#ifndef GL_NV_fragment_coverage_to_color +#define GL_NV_fragment_coverage_to_color 1 + +#define GL_FRAGMENT_COVERAGE_TO_COLOR_NV 0x92DD +#define GL_FRAGMENT_COVERAGE_COLOR_NV 0x92DE + +typedef void (GLAPIENTRY * PFNGLFRAGMENTCOVERAGECOLORNVPROC) (GLuint color); + +#define glFragmentCoverageColorNV GLEW_GET_FUN(__glewFragmentCoverageColorNV) + +#define GLEW_NV_fragment_coverage_to_color GLEW_GET_VAR(__GLEW_NV_fragment_coverage_to_color) + +#endif /* GL_NV_fragment_coverage_to_color */ + +/* ------------------------- GL_NV_fragment_program ------------------------ */ + +#ifndef GL_NV_fragment_program +#define GL_NV_fragment_program 1 + +#define GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868 +#define GL_FRAGMENT_PROGRAM_NV 0x8870 +#define GL_MAX_TEXTURE_COORDS_NV 0x8871 +#define GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872 +#define GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873 +#define GL_PROGRAM_ERROR_STRING_NV 0x8874 + +typedef void (GLAPIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLdouble *params); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLfloat *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, const GLdouble v[]); +typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, const GLfloat v[]); + +#define glGetProgramNamedParameterdvNV GLEW_GET_FUN(__glewGetProgramNamedParameterdvNV) +#define glGetProgramNamedParameterfvNV GLEW_GET_FUN(__glewGetProgramNamedParameterfvNV) +#define glProgramNamedParameter4dNV GLEW_GET_FUN(__glewProgramNamedParameter4dNV) +#define glProgramNamedParameter4dvNV GLEW_GET_FUN(__glewProgramNamedParameter4dvNV) +#define glProgramNamedParameter4fNV GLEW_GET_FUN(__glewProgramNamedParameter4fNV) +#define glProgramNamedParameter4fvNV GLEW_GET_FUN(__glewProgramNamedParameter4fvNV) + +#define GLEW_NV_fragment_program GLEW_GET_VAR(__GLEW_NV_fragment_program) + +#endif /* GL_NV_fragment_program */ + +/* ------------------------ GL_NV_fragment_program2 ------------------------ */ + +#ifndef GL_NV_fragment_program2 +#define GL_NV_fragment_program2 1 + +#define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4 +#define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5 +#define GL_MAX_PROGRAM_IF_DEPTH_NV 0x88F6 +#define GL_MAX_PROGRAM_LOOP_DEPTH_NV 0x88F7 +#define GL_MAX_PROGRAM_LOOP_COUNT_NV 0x88F8 + +#define GLEW_NV_fragment_program2 GLEW_GET_VAR(__GLEW_NV_fragment_program2) + +#endif /* GL_NV_fragment_program2 */ + +/* ------------------------ GL_NV_fragment_program4 ------------------------ */ + +#ifndef GL_NV_fragment_program4 +#define GL_NV_fragment_program4 1 + +#define GLEW_NV_fragment_program4 GLEW_GET_VAR(__GLEW_NV_fragment_program4) + +#endif /* GL_NV_fragment_program4 */ + +/* --------------------- GL_NV_fragment_program_option --------------------- */ + +#ifndef GL_NV_fragment_program_option +#define GL_NV_fragment_program_option 1 + +#define GLEW_NV_fragment_program_option GLEW_GET_VAR(__GLEW_NV_fragment_program_option) + +#endif /* GL_NV_fragment_program_option */ + +/* ------------------- GL_NV_fragment_shader_barycentric ------------------- */ + +#ifndef GL_NV_fragment_shader_barycentric +#define GL_NV_fragment_shader_barycentric 1 + +#define GLEW_NV_fragment_shader_barycentric GLEW_GET_VAR(__GLEW_NV_fragment_shader_barycentric) + +#endif /* GL_NV_fragment_shader_barycentric */ + +/* -------------------- GL_NV_fragment_shader_interlock -------------------- */ + +#ifndef GL_NV_fragment_shader_interlock +#define GL_NV_fragment_shader_interlock 1 + +#define GLEW_NV_fragment_shader_interlock GLEW_GET_VAR(__GLEW_NV_fragment_shader_interlock) + +#endif /* GL_NV_fragment_shader_interlock */ + +/* ------------------------- GL_NV_framebuffer_blit ------------------------ */ + +#ifndef GL_NV_framebuffer_blit +#define GL_NV_framebuffer_blit 1 + +#define GL_DRAW_FRAMEBUFFER_BINDING_NV 0x8CA6 +#define GL_READ_FRAMEBUFFER_NV 0x8CA8 +#define GL_DRAW_FRAMEBUFFER_NV 0x8CA9 +#define GL_READ_FRAMEBUFFER_BINDING_NV 0x8CAA + +typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFERNVPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); + +#define glBlitFramebufferNV GLEW_GET_FUN(__glewBlitFramebufferNV) + +#define GLEW_NV_framebuffer_blit GLEW_GET_VAR(__GLEW_NV_framebuffer_blit) + +#endif /* GL_NV_framebuffer_blit */ + +/* -------------------- GL_NV_framebuffer_mixed_samples -------------------- */ + +#ifndef GL_NV_framebuffer_mixed_samples +#define GL_NV_framebuffer_mixed_samples 1 + +#define GL_COLOR_SAMPLES_NV 0x8E20 +#define GL_RASTER_MULTISAMPLE_EXT 0x9327 +#define GL_RASTER_SAMPLES_EXT 0x9328 +#define GL_MAX_RASTER_SAMPLES_EXT 0x9329 +#define GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT 0x932A +#define GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT 0x932B +#define GL_EFFECTIVE_RASTER_SAMPLES_EXT 0x932C +#define GL_DEPTH_SAMPLES_NV 0x932D +#define GL_STENCIL_SAMPLES_NV 0x932E +#define GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV 0x932F +#define GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV 0x9330 +#define GL_COVERAGE_MODULATION_TABLE_NV 0x9331 +#define GL_COVERAGE_MODULATION_NV 0x9332 +#define GL_COVERAGE_MODULATION_TABLE_SIZE_NV 0x9333 + +#define GLEW_NV_framebuffer_mixed_samples GLEW_GET_VAR(__GLEW_NV_framebuffer_mixed_samples) + +#endif /* GL_NV_framebuffer_mixed_samples */ + +/* --------------------- GL_NV_framebuffer_multisample --------------------- */ + +#ifndef GL_NV_framebuffer_multisample +#define GL_NV_framebuffer_multisample 1 + +#define GL_RENDERBUFFER_SAMPLES_NV 0x8CAB +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV 0x8D56 +#define GL_MAX_SAMPLES_NV 0x8D57 + +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLENVPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); + +#define glRenderbufferStorageMultisampleNV GLEW_GET_FUN(__glewRenderbufferStorageMultisampleNV) + +#define GLEW_NV_framebuffer_multisample GLEW_GET_VAR(__GLEW_NV_framebuffer_multisample) + +#endif /* GL_NV_framebuffer_multisample */ + +/* ----------------- GL_NV_framebuffer_multisample_coverage ---------------- */ + +#ifndef GL_NV_framebuffer_multisample_coverage +#define GL_NV_framebuffer_multisample_coverage 1 + +#define GL_RENDERBUFFER_COVERAGE_SAMPLES_NV 0x8CAB +#define GL_RENDERBUFFER_COLOR_SAMPLES_NV 0x8E10 +#define GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV 0x8E11 +#define GL_MULTISAMPLE_COVERAGE_MODES_NV 0x8E12 + +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height); + +#define glRenderbufferStorageMultisampleCoverageNV GLEW_GET_FUN(__glewRenderbufferStorageMultisampleCoverageNV) + +#define GLEW_NV_framebuffer_multisample_coverage GLEW_GET_VAR(__GLEW_NV_framebuffer_multisample_coverage) + +#endif /* GL_NV_framebuffer_multisample_coverage */ + +/* ----------------------- GL_NV_generate_mipmap_sRGB ---------------------- */ + +#ifndef GL_NV_generate_mipmap_sRGB +#define GL_NV_generate_mipmap_sRGB 1 + +#define GLEW_NV_generate_mipmap_sRGB GLEW_GET_VAR(__GLEW_NV_generate_mipmap_sRGB) + +#endif /* GL_NV_generate_mipmap_sRGB */ + +/* ------------------------ GL_NV_geometry_program4 ------------------------ */ + +#ifndef GL_NV_geometry_program4 +#define GL_NV_geometry_program4 1 + +#define GL_GEOMETRY_PROGRAM_NV 0x8C26 +#define GL_MAX_PROGRAM_OUTPUT_VERTICES_NV 0x8C27 +#define GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV 0x8C28 + +typedef void (GLAPIENTRY * PFNGLPROGRAMVERTEXLIMITNVPROC) (GLenum target, GLint limit); + +#define glProgramVertexLimitNV GLEW_GET_FUN(__glewProgramVertexLimitNV) + +#define GLEW_NV_geometry_program4 GLEW_GET_VAR(__GLEW_NV_geometry_program4) + +#endif /* GL_NV_geometry_program4 */ + +/* ------------------------- GL_NV_geometry_shader4 ------------------------ */ + +#ifndef GL_NV_geometry_shader4 +#define GL_NV_geometry_shader4 1 + +#define GLEW_NV_geometry_shader4 GLEW_GET_VAR(__GLEW_NV_geometry_shader4) + +#endif /* GL_NV_geometry_shader4 */ + +/* ------------------- GL_NV_geometry_shader_passthrough ------------------- */ + +#ifndef GL_NV_geometry_shader_passthrough +#define GL_NV_geometry_shader_passthrough 1 + +#define GLEW_NV_geometry_shader_passthrough GLEW_GET_VAR(__GLEW_NV_geometry_shader_passthrough) + +#endif /* GL_NV_geometry_shader_passthrough */ + +/* -------------------------- GL_NV_gpu_multicast -------------------------- */ + +#ifndef GL_NV_gpu_multicast +#define GL_NV_gpu_multicast 1 + +#define GL_PER_GPU_STORAGE_BIT_NV 0x0800 +#define GL_MULTICAST_GPUS_NV 0x92BA +#define GL_PER_GPU_STORAGE_NV 0x9548 +#define GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9549 +#define GL_RENDER_GPU_MASK_NV 0x9558 + +typedef void (GLAPIENTRY * PFNGLMULTICASTBARRIERNVPROC) (void); +typedef void (GLAPIENTRY * PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +typedef void (GLAPIENTRY * PFNGLMULTICASTBUFFERSUBDATANVPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); +typedef void (GLAPIENTRY * PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +typedef void (GLAPIENTRY * PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); +typedef void (GLAPIENTRY * PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint64* params); +typedef void (GLAPIENTRY * PFNGLMULTICASTGETQUERYOBJECTIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint64* params); +typedef void (GLAPIENTRY * PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGpu, GLbitfield waitGpuMask); +typedef void (GLAPIENTRY * PFNGLRENDERGPUMASKNVPROC) (GLbitfield mask); + +#define glMulticastBarrierNV GLEW_GET_FUN(__glewMulticastBarrierNV) +#define glMulticastBlitFramebufferNV GLEW_GET_FUN(__glewMulticastBlitFramebufferNV) +#define glMulticastBufferSubDataNV GLEW_GET_FUN(__glewMulticastBufferSubDataNV) +#define glMulticastCopyBufferSubDataNV GLEW_GET_FUN(__glewMulticastCopyBufferSubDataNV) +#define glMulticastCopyImageSubDataNV GLEW_GET_FUN(__glewMulticastCopyImageSubDataNV) +#define glMulticastFramebufferSampleLocationsfvNV GLEW_GET_FUN(__glewMulticastFramebufferSampleLocationsfvNV) +#define glMulticastGetQueryObjecti64vNV GLEW_GET_FUN(__glewMulticastGetQueryObjecti64vNV) +#define glMulticastGetQueryObjectivNV GLEW_GET_FUN(__glewMulticastGetQueryObjectivNV) +#define glMulticastGetQueryObjectui64vNV GLEW_GET_FUN(__glewMulticastGetQueryObjectui64vNV) +#define glMulticastGetQueryObjectuivNV GLEW_GET_FUN(__glewMulticastGetQueryObjectuivNV) +#define glMulticastWaitSyncNV GLEW_GET_FUN(__glewMulticastWaitSyncNV) +#define glRenderGpuMaskNV GLEW_GET_FUN(__glewRenderGpuMaskNV) + +#define GLEW_NV_gpu_multicast GLEW_GET_VAR(__GLEW_NV_gpu_multicast) + +#endif /* GL_NV_gpu_multicast */ + +/* --------------------------- GL_NV_gpu_program4 -------------------------- */ + +#ifndef GL_NV_gpu_program4 +#define GL_NV_gpu_program4 1 + +#define GL_MIN_PROGRAM_TEXEL_OFFSET_NV 0x8904 +#define GL_MAX_PROGRAM_TEXEL_OFFSET_NV 0x8905 +#define GL_PROGRAM_ATTRIB_COMPONENTS_NV 0x8906 +#define GL_PROGRAM_RESULT_COMPONENTS_NV 0x8907 +#define GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV 0x8908 +#define GL_MAX_PROGRAM_RESULT_COMPONENTS_NV 0x8909 +#define GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV 0x8DA5 +#define GL_MAX_PROGRAM_GENERIC_RESULTS_NV 0x8DA6 + +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params); + +#define glProgramEnvParameterI4iNV GLEW_GET_FUN(__glewProgramEnvParameterI4iNV) +#define glProgramEnvParameterI4ivNV GLEW_GET_FUN(__glewProgramEnvParameterI4ivNV) +#define glProgramEnvParameterI4uiNV GLEW_GET_FUN(__glewProgramEnvParameterI4uiNV) +#define glProgramEnvParameterI4uivNV GLEW_GET_FUN(__glewProgramEnvParameterI4uivNV) +#define glProgramEnvParametersI4ivNV GLEW_GET_FUN(__glewProgramEnvParametersI4ivNV) +#define glProgramEnvParametersI4uivNV GLEW_GET_FUN(__glewProgramEnvParametersI4uivNV) +#define glProgramLocalParameterI4iNV GLEW_GET_FUN(__glewProgramLocalParameterI4iNV) +#define glProgramLocalParameterI4ivNV GLEW_GET_FUN(__glewProgramLocalParameterI4ivNV) +#define glProgramLocalParameterI4uiNV GLEW_GET_FUN(__glewProgramLocalParameterI4uiNV) +#define glProgramLocalParameterI4uivNV GLEW_GET_FUN(__glewProgramLocalParameterI4uivNV) +#define glProgramLocalParametersI4ivNV GLEW_GET_FUN(__glewProgramLocalParametersI4ivNV) +#define glProgramLocalParametersI4uivNV GLEW_GET_FUN(__glewProgramLocalParametersI4uivNV) + +#define GLEW_NV_gpu_program4 GLEW_GET_VAR(__GLEW_NV_gpu_program4) + +#endif /* GL_NV_gpu_program4 */ + +/* --------------------------- GL_NV_gpu_program5 -------------------------- */ + +#ifndef GL_NV_gpu_program5 +#define GL_NV_gpu_program5 1 + +#define GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV 0x8E5A +#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5B +#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5C +#define GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV 0x8E5D +#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV 0x8E5E +#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV 0x8E5F + +#define GLEW_NV_gpu_program5 GLEW_GET_VAR(__GLEW_NV_gpu_program5) + +#endif /* GL_NV_gpu_program5 */ + +/* -------------------- GL_NV_gpu_program5_mem_extended -------------------- */ + +#ifndef GL_NV_gpu_program5_mem_extended +#define GL_NV_gpu_program5_mem_extended 1 + +#define GLEW_NV_gpu_program5_mem_extended GLEW_GET_VAR(__GLEW_NV_gpu_program5_mem_extended) + +#endif /* GL_NV_gpu_program5_mem_extended */ + +/* ------------------------- GL_NV_gpu_program_fp64 ------------------------ */ + +#ifndef GL_NV_gpu_program_fp64 +#define GL_NV_gpu_program_fp64 1 + +#define GLEW_NV_gpu_program_fp64 GLEW_GET_VAR(__GLEW_NV_gpu_program_fp64) + +#endif /* GL_NV_gpu_program_fp64 */ + +/* --------------------------- GL_NV_gpu_shader5 --------------------------- */ + +#ifndef GL_NV_gpu_shader5 +#define GL_NV_gpu_shader5 1 + +#define GL_INT64_NV 0x140E +#define GL_UNSIGNED_INT64_NV 0x140F +#define GL_INT8_NV 0x8FE0 +#define GL_INT8_VEC2_NV 0x8FE1 +#define GL_INT8_VEC3_NV 0x8FE2 +#define GL_INT8_VEC4_NV 0x8FE3 +#define GL_INT16_NV 0x8FE4 +#define GL_INT16_VEC2_NV 0x8FE5 +#define GL_INT16_VEC3_NV 0x8FE6 +#define GL_INT16_VEC4_NV 0x8FE7 +#define GL_INT64_VEC2_NV 0x8FE9 +#define GL_INT64_VEC3_NV 0x8FEA +#define GL_INT64_VEC4_NV 0x8FEB +#define GL_UNSIGNED_INT8_NV 0x8FEC +#define GL_UNSIGNED_INT8_VEC2_NV 0x8FED +#define GL_UNSIGNED_INT8_VEC3_NV 0x8FEE +#define GL_UNSIGNED_INT8_VEC4_NV 0x8FEF +#define GL_UNSIGNED_INT16_NV 0x8FF0 +#define GL_UNSIGNED_INT16_VEC2_NV 0x8FF1 +#define GL_UNSIGNED_INT16_VEC3_NV 0x8FF2 +#define GL_UNSIGNED_INT16_VEC4_NV 0x8FF3 +#define GL_UNSIGNED_INT64_VEC2_NV 0x8FF5 +#define GL_UNSIGNED_INT64_VEC3_NV 0x8FF6 +#define GL_UNSIGNED_INT64_VEC4_NV 0x8FF7 +#define GL_FLOAT16_NV 0x8FF8 +#define GL_FLOAT16_VEC2_NV 0x8FF9 +#define GL_FLOAT16_VEC3_NV 0x8FFA +#define GL_FLOAT16_VEC4_NV 0x8FFB + +typedef void (GLAPIENTRY * PFNGLGETUNIFORMI64VNVPROC) (GLuint program, GLint location, GLint64EXT* params); +typedef void (GLAPIENTRY * PFNGLGETUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLuint64EXT* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64NVPROC) (GLuint program, GLint location, GLint64EXT x); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM1I64NVPROC) (GLint location, GLint64EXT x); +typedef void (GLAPIENTRY * PFNGLUNIFORM1I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64NVPROC) (GLint location, GLuint64EXT x); +typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y); +typedef void (GLAPIENTRY * PFNGLUNIFORM2I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y); +typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z); +typedef void (GLAPIENTRY * PFNGLUNIFORM3I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z); +typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w); +typedef void (GLAPIENTRY * PFNGLUNIFORM4I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w); +typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); + +#define glGetUniformi64vNV GLEW_GET_FUN(__glewGetUniformi64vNV) +#define glGetUniformui64vNV GLEW_GET_FUN(__glewGetUniformui64vNV) +#define glProgramUniform1i64NV GLEW_GET_FUN(__glewProgramUniform1i64NV) +#define glProgramUniform1i64vNV GLEW_GET_FUN(__glewProgramUniform1i64vNV) +#define glProgramUniform1ui64NV GLEW_GET_FUN(__glewProgramUniform1ui64NV) +#define glProgramUniform1ui64vNV GLEW_GET_FUN(__glewProgramUniform1ui64vNV) +#define glProgramUniform2i64NV GLEW_GET_FUN(__glewProgramUniform2i64NV) +#define glProgramUniform2i64vNV GLEW_GET_FUN(__glewProgramUniform2i64vNV) +#define glProgramUniform2ui64NV GLEW_GET_FUN(__glewProgramUniform2ui64NV) +#define glProgramUniform2ui64vNV GLEW_GET_FUN(__glewProgramUniform2ui64vNV) +#define glProgramUniform3i64NV GLEW_GET_FUN(__glewProgramUniform3i64NV) +#define glProgramUniform3i64vNV GLEW_GET_FUN(__glewProgramUniform3i64vNV) +#define glProgramUniform3ui64NV GLEW_GET_FUN(__glewProgramUniform3ui64NV) +#define glProgramUniform3ui64vNV GLEW_GET_FUN(__glewProgramUniform3ui64vNV) +#define glProgramUniform4i64NV GLEW_GET_FUN(__glewProgramUniform4i64NV) +#define glProgramUniform4i64vNV GLEW_GET_FUN(__glewProgramUniform4i64vNV) +#define glProgramUniform4ui64NV GLEW_GET_FUN(__glewProgramUniform4ui64NV) +#define glProgramUniform4ui64vNV GLEW_GET_FUN(__glewProgramUniform4ui64vNV) +#define glUniform1i64NV GLEW_GET_FUN(__glewUniform1i64NV) +#define glUniform1i64vNV GLEW_GET_FUN(__glewUniform1i64vNV) +#define glUniform1ui64NV GLEW_GET_FUN(__glewUniform1ui64NV) +#define glUniform1ui64vNV GLEW_GET_FUN(__glewUniform1ui64vNV) +#define glUniform2i64NV GLEW_GET_FUN(__glewUniform2i64NV) +#define glUniform2i64vNV GLEW_GET_FUN(__glewUniform2i64vNV) +#define glUniform2ui64NV GLEW_GET_FUN(__glewUniform2ui64NV) +#define glUniform2ui64vNV GLEW_GET_FUN(__glewUniform2ui64vNV) +#define glUniform3i64NV GLEW_GET_FUN(__glewUniform3i64NV) +#define glUniform3i64vNV GLEW_GET_FUN(__glewUniform3i64vNV) +#define glUniform3ui64NV GLEW_GET_FUN(__glewUniform3ui64NV) +#define glUniform3ui64vNV GLEW_GET_FUN(__glewUniform3ui64vNV) +#define glUniform4i64NV GLEW_GET_FUN(__glewUniform4i64NV) +#define glUniform4i64vNV GLEW_GET_FUN(__glewUniform4i64vNV) +#define glUniform4ui64NV GLEW_GET_FUN(__glewUniform4ui64NV) +#define glUniform4ui64vNV GLEW_GET_FUN(__glewUniform4ui64vNV) + +#define GLEW_NV_gpu_shader5 GLEW_GET_VAR(__GLEW_NV_gpu_shader5) + +#endif /* GL_NV_gpu_shader5 */ + +/* ---------------------------- GL_NV_half_float --------------------------- */ + +#ifndef GL_NV_half_float +#define GL_NV_half_float 1 + +#define GL_HALF_FLOAT_NV 0x140B + +typedef unsigned short GLhalf; + +typedef void (GLAPIENTRY * PFNGLCOLOR3HNVPROC) (GLhalf red, GLhalf green, GLhalf blue); +typedef void (GLAPIENTRY * PFNGLCOLOR3HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLCOLOR4HNVPROC) (GLhalf red, GLhalf green, GLhalf blue, GLhalf alpha); +typedef void (GLAPIENTRY * PFNGLCOLOR4HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLFOGCOORDHNVPROC) (GLhalf fog); +typedef void (GLAPIENTRY * PFNGLFOGCOORDHVNVPROC) (const GLhalf* fog); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1HNVPROC) (GLenum target, GLhalf s); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1HVNVPROC) (GLenum target, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2HNVPROC) (GLenum target, GLhalf s, GLhalf t); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2HVNVPROC) (GLenum target, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3HNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3HVNVPROC) (GLenum target, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4HNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r, GLhalf q); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4HVNVPROC) (GLenum target, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLNORMAL3HNVPROC) (GLhalf nx, GLhalf ny, GLhalf nz); +typedef void (GLAPIENTRY * PFNGLNORMAL3HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3HNVPROC) (GLhalf red, GLhalf green, GLhalf blue); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD1HNVPROC) (GLhalf s); +typedef void (GLAPIENTRY * PFNGLTEXCOORD1HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2HNVPROC) (GLhalf s, GLhalf t); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD3HNVPROC) (GLhalf s, GLhalf t, GLhalf r); +typedef void (GLAPIENTRY * PFNGLTEXCOORD3HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD4HNVPROC) (GLhalf s, GLhalf t, GLhalf r, GLhalf q); +typedef void (GLAPIENTRY * PFNGLTEXCOORD4HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEX2HNVPROC) (GLhalf x, GLhalf y); +typedef void (GLAPIENTRY * PFNGLVERTEX2HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEX3HNVPROC) (GLhalf x, GLhalf y, GLhalf z); +typedef void (GLAPIENTRY * PFNGLVERTEX3HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEX4HNVPROC) (GLhalf x, GLhalf y, GLhalf z, GLhalf w); +typedef void (GLAPIENTRY * PFNGLVERTEX4HVNVPROC) (const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1HNVPROC) (GLuint index, GLhalf x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1HVNVPROC) (GLuint index, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2HNVPROC) (GLuint index, GLhalf x, GLhalf y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2HVNVPROC) (GLuint index, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3HNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3HVNVPROC) (GLuint index, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4HNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z, GLhalf w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4HVNVPROC) (GLuint index, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v); +typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTHNVPROC) (GLhalf weight); +typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTHVNVPROC) (const GLhalf* weight); + +#define glColor3hNV GLEW_GET_FUN(__glewColor3hNV) +#define glColor3hvNV GLEW_GET_FUN(__glewColor3hvNV) +#define glColor4hNV GLEW_GET_FUN(__glewColor4hNV) +#define glColor4hvNV GLEW_GET_FUN(__glewColor4hvNV) +#define glFogCoordhNV GLEW_GET_FUN(__glewFogCoordhNV) +#define glFogCoordhvNV GLEW_GET_FUN(__glewFogCoordhvNV) +#define glMultiTexCoord1hNV GLEW_GET_FUN(__glewMultiTexCoord1hNV) +#define glMultiTexCoord1hvNV GLEW_GET_FUN(__glewMultiTexCoord1hvNV) +#define glMultiTexCoord2hNV GLEW_GET_FUN(__glewMultiTexCoord2hNV) +#define glMultiTexCoord2hvNV GLEW_GET_FUN(__glewMultiTexCoord2hvNV) +#define glMultiTexCoord3hNV GLEW_GET_FUN(__glewMultiTexCoord3hNV) +#define glMultiTexCoord3hvNV GLEW_GET_FUN(__glewMultiTexCoord3hvNV) +#define glMultiTexCoord4hNV GLEW_GET_FUN(__glewMultiTexCoord4hNV) +#define glMultiTexCoord4hvNV GLEW_GET_FUN(__glewMultiTexCoord4hvNV) +#define glNormal3hNV GLEW_GET_FUN(__glewNormal3hNV) +#define glNormal3hvNV GLEW_GET_FUN(__glewNormal3hvNV) +#define glSecondaryColor3hNV GLEW_GET_FUN(__glewSecondaryColor3hNV) +#define glSecondaryColor3hvNV GLEW_GET_FUN(__glewSecondaryColor3hvNV) +#define glTexCoord1hNV GLEW_GET_FUN(__glewTexCoord1hNV) +#define glTexCoord1hvNV GLEW_GET_FUN(__glewTexCoord1hvNV) +#define glTexCoord2hNV GLEW_GET_FUN(__glewTexCoord2hNV) +#define glTexCoord2hvNV GLEW_GET_FUN(__glewTexCoord2hvNV) +#define glTexCoord3hNV GLEW_GET_FUN(__glewTexCoord3hNV) +#define glTexCoord3hvNV GLEW_GET_FUN(__glewTexCoord3hvNV) +#define glTexCoord4hNV GLEW_GET_FUN(__glewTexCoord4hNV) +#define glTexCoord4hvNV GLEW_GET_FUN(__glewTexCoord4hvNV) +#define glVertex2hNV GLEW_GET_FUN(__glewVertex2hNV) +#define glVertex2hvNV GLEW_GET_FUN(__glewVertex2hvNV) +#define glVertex3hNV GLEW_GET_FUN(__glewVertex3hNV) +#define glVertex3hvNV GLEW_GET_FUN(__glewVertex3hvNV) +#define glVertex4hNV GLEW_GET_FUN(__glewVertex4hNV) +#define glVertex4hvNV GLEW_GET_FUN(__glewVertex4hvNV) +#define glVertexAttrib1hNV GLEW_GET_FUN(__glewVertexAttrib1hNV) +#define glVertexAttrib1hvNV GLEW_GET_FUN(__glewVertexAttrib1hvNV) +#define glVertexAttrib2hNV GLEW_GET_FUN(__glewVertexAttrib2hNV) +#define glVertexAttrib2hvNV GLEW_GET_FUN(__glewVertexAttrib2hvNV) +#define glVertexAttrib3hNV GLEW_GET_FUN(__glewVertexAttrib3hNV) +#define glVertexAttrib3hvNV GLEW_GET_FUN(__glewVertexAttrib3hvNV) +#define glVertexAttrib4hNV GLEW_GET_FUN(__glewVertexAttrib4hNV) +#define glVertexAttrib4hvNV GLEW_GET_FUN(__glewVertexAttrib4hvNV) +#define glVertexAttribs1hvNV GLEW_GET_FUN(__glewVertexAttribs1hvNV) +#define glVertexAttribs2hvNV GLEW_GET_FUN(__glewVertexAttribs2hvNV) +#define glVertexAttribs3hvNV GLEW_GET_FUN(__glewVertexAttribs3hvNV) +#define glVertexAttribs4hvNV GLEW_GET_FUN(__glewVertexAttribs4hvNV) +#define glVertexWeighthNV GLEW_GET_FUN(__glewVertexWeighthNV) +#define glVertexWeighthvNV GLEW_GET_FUN(__glewVertexWeighthvNV) + +#define GLEW_NV_half_float GLEW_GET_VAR(__GLEW_NV_half_float) + +#endif /* GL_NV_half_float */ + +/* -------------------------- GL_NV_image_formats -------------------------- */ + +#ifndef GL_NV_image_formats +#define GL_NV_image_formats 1 + +#define GLEW_NV_image_formats GLEW_GET_VAR(__GLEW_NV_image_formats) + +#endif /* GL_NV_image_formats */ + +/* ------------------------- GL_NV_instanced_arrays ------------------------ */ + +#ifndef GL_NV_instanced_arrays +#define GL_NV_instanced_arrays 1 + +#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_NV 0x88FE + +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORNVPROC) (GLuint index, GLuint divisor); + +#define glVertexAttribDivisorNV GLEW_GET_FUN(__glewVertexAttribDivisorNV) + +#define GLEW_NV_instanced_arrays GLEW_GET_VAR(__GLEW_NV_instanced_arrays) + +#endif /* GL_NV_instanced_arrays */ + +/* ------------------- GL_NV_internalformat_sample_query ------------------- */ + +#ifndef GL_NV_internalformat_sample_query +#define GL_NV_internalformat_sample_query 1 + +#define GL_MULTISAMPLES_NV 0x9371 +#define GL_SUPERSAMPLE_SCALE_X_NV 0x9372 +#define GL_SUPERSAMPLE_SCALE_Y_NV 0x9373 +#define GL_CONFORMANT_NV 0x9374 + +typedef void (GLAPIENTRY * PFNGLGETINTERNALFORMATSAMPLEIVNVPROC) (GLenum target, GLenum internalformat, GLsizei samples, GLenum pname, GLsizei bufSize, GLint* params); + +#define glGetInternalformatSampleivNV GLEW_GET_FUN(__glewGetInternalformatSampleivNV) + +#define GLEW_NV_internalformat_sample_query GLEW_GET_VAR(__GLEW_NV_internalformat_sample_query) + +#endif /* GL_NV_internalformat_sample_query */ + +/* ------------------------ GL_NV_light_max_exponent ----------------------- */ + +#ifndef GL_NV_light_max_exponent +#define GL_NV_light_max_exponent 1 + +#define GL_MAX_SHININESS_NV 0x8504 +#define GL_MAX_SPOT_EXPONENT_NV 0x8505 + +#define GLEW_NV_light_max_exponent GLEW_GET_VAR(__GLEW_NV_light_max_exponent) + +#endif /* GL_NV_light_max_exponent */ + +/* ------------------------ GL_NV_memory_attachment ------------------------ */ + +#ifndef GL_NV_memory_attachment +#define GL_NV_memory_attachment 1 + +#define GL_ATTACHED_MEMORY_OBJECT_NV 0x95A4 +#define GL_ATTACHED_MEMORY_OFFSET_NV 0x95A5 +#define GL_MEMORY_ATTACHABLE_ALIGNMENT_NV 0x95A6 +#define GL_MEMORY_ATTACHABLE_SIZE_NV 0x95A7 +#define GL_MEMORY_ATTACHABLE_NV 0x95A8 +#define GL_DETACHED_MEMORY_INCARNATION_NV 0x95A9 +#define GL_DETACHED_TEXTURES_NV 0x95AA +#define GL_DETACHED_BUFFERS_NV 0x95AB +#define GL_MAX_DETACHED_TEXTURES_NV 0x95AC +#define GL_MAX_DETACHED_BUFFERS_NV 0x95AD + +typedef void (GLAPIENTRY * PFNGLBUFFERATTACHMEMORYNVPROC) (GLenum target, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLGETMEMORYOBJECTDETACHEDRESOURCESUIVNVPROC) (GLuint memory, GLenum pname, GLint first, GLsizei count, GLuint* params); +typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERATTACHMEMORYNVPROC) (GLuint buffer, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLRESETMEMORYOBJECTPARAMETERNVPROC) (GLuint memory, GLenum pname); +typedef void (GLAPIENTRY * PFNGLTEXATTACHMEMORYNVPROC) (GLenum target, GLuint memory, GLuint64 offset); +typedef void (GLAPIENTRY * PFNGLTEXTUREATTACHMEMORYNVPROC) (GLuint texture, GLuint memory, GLuint64 offset); + +#define glBufferAttachMemoryNV GLEW_GET_FUN(__glewBufferAttachMemoryNV) +#define glGetMemoryObjectDetachedResourcesuivNV GLEW_GET_FUN(__glewGetMemoryObjectDetachedResourcesuivNV) +#define glNamedBufferAttachMemoryNV GLEW_GET_FUN(__glewNamedBufferAttachMemoryNV) +#define glResetMemoryObjectParameterNV GLEW_GET_FUN(__glewResetMemoryObjectParameterNV) +#define glTexAttachMemoryNV GLEW_GET_FUN(__glewTexAttachMemoryNV) +#define glTextureAttachMemoryNV GLEW_GET_FUN(__glewTextureAttachMemoryNV) + +#define GLEW_NV_memory_attachment GLEW_GET_VAR(__GLEW_NV_memory_attachment) + +#endif /* GL_NV_memory_attachment */ + +/* --------------------------- GL_NV_mesh_shader --------------------------- */ + +#ifndef GL_NV_mesh_shader +#define GL_NV_mesh_shader 1 + +#define GL_MESH_SHADER_BIT_NV 0x00000040 +#define GL_TASK_SHADER_BIT_NV 0x00000080 +#define GL_MAX_MESH_UNIFORM_BLOCKS_NV 0x8E60 +#define GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV 0x8E61 +#define GL_MAX_MESH_IMAGE_UNIFORMS_NV 0x8E62 +#define GL_MAX_MESH_UNIFORM_COMPONENTS_NV 0x8E63 +#define GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV 0x8E64 +#define GL_MAX_MESH_ATOMIC_COUNTERS_NV 0x8E65 +#define GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV 0x8E66 +#define GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV 0x8E67 +#define GL_MAX_TASK_UNIFORM_BLOCKS_NV 0x8E68 +#define GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV 0x8E69 +#define GL_MAX_TASK_IMAGE_UNIFORMS_NV 0x8E6A +#define GL_MAX_TASK_UNIFORM_COMPONENTS_NV 0x8E6B +#define GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV 0x8E6C +#define GL_MAX_TASK_ATOMIC_COUNTERS_NV 0x8E6D +#define GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV 0x8E6E +#define GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV 0x8E6F +#define GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV 0x92DF +#define GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV 0x9536 +#define GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV 0x9537 +#define GL_MAX_MESH_OUTPUT_VERTICES_NV 0x9538 +#define GL_MAX_MESH_OUTPUT_PRIMITIVES_NV 0x9539 +#define GL_MAX_TASK_OUTPUT_COUNT_NV 0x953A +#define GL_MAX_MESH_WORK_GROUP_SIZE_NV 0x953B +#define GL_MAX_TASK_WORK_GROUP_SIZE_NV 0x953C +#define GL_MAX_DRAW_MESH_TASKS_COUNT_NV 0x953D +#define GL_MESH_WORK_GROUP_SIZE_NV 0x953E +#define GL_TASK_WORK_GROUP_SIZE_NV 0x953F +#define GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV 0x9543 +#define GL_MAX_MESH_VIEWS_NV 0x9557 +#define GL_MESH_SHADER_NV 0x9559 +#define GL_TASK_SHADER_NV 0x955A +#define GL_MESH_VERTICES_OUT_NV 0x9579 +#define GL_MESH_PRIMITIVES_OUT_NV 0x957A +#define GL_MESH_OUTPUT_TYPE_NV 0x957B +#define GL_MESH_SUBROUTINE_NV 0x957C +#define GL_TASK_SUBROUTINE_NV 0x957D +#define GL_MESH_SUBROUTINE_UNIFORM_NV 0x957E +#define GL_TASK_SUBROUTINE_UNIFORM_NV 0x957F +#define GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV 0x959C +#define GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV 0x959D +#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV 0x959E +#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV 0x959F +#define GL_REFERENCED_BY_MESH_SHADER_NV 0x95A0 +#define GL_REFERENCED_BY_TASK_SHADER_NV 0x95A1 +#define GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV 0x95A2 +#define GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV 0x95A3 + +typedef void (GLAPIENTRY * PFNGLDRAWMESHTASKSINDIRECTNVPROC) (GLintptr indirect); +typedef void (GLAPIENTRY * PFNGLDRAWMESHTASKSNVPROC) (GLuint first, GLuint count); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWMESHTASKSINDIRECTCOUNTNVPROC) (GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLMULTIDRAWMESHTASKSINDIRECTNVPROC) (GLintptr indirect, GLsizei drawcount, GLsizei stride); + +#define glDrawMeshTasksIndirectNV GLEW_GET_FUN(__glewDrawMeshTasksIndirectNV) +#define glDrawMeshTasksNV GLEW_GET_FUN(__glewDrawMeshTasksNV) +#define glMultiDrawMeshTasksIndirectCountNV GLEW_GET_FUN(__glewMultiDrawMeshTasksIndirectCountNV) +#define glMultiDrawMeshTasksIndirectNV GLEW_GET_FUN(__glewMultiDrawMeshTasksIndirectNV) + +#define GLEW_NV_mesh_shader GLEW_GET_VAR(__GLEW_NV_mesh_shader) + +#endif /* GL_NV_mesh_shader */ + +/* ----------------------- GL_NV_multisample_coverage ---------------------- */ + +#ifndef GL_NV_multisample_coverage +#define GL_NV_multisample_coverage 1 + +#define GL_COLOR_SAMPLES_NV 0x8E20 + +#define GLEW_NV_multisample_coverage GLEW_GET_VAR(__GLEW_NV_multisample_coverage) + +#endif /* GL_NV_multisample_coverage */ + +/* --------------------- GL_NV_multisample_filter_hint --------------------- */ + +#ifndef GL_NV_multisample_filter_hint +#define GL_NV_multisample_filter_hint 1 + +#define GL_MULTISAMPLE_FILTER_HINT_NV 0x8534 + +#define GLEW_NV_multisample_filter_hint GLEW_GET_VAR(__GLEW_NV_multisample_filter_hint) + +#endif /* GL_NV_multisample_filter_hint */ + +/* ----------------------- GL_NV_non_square_matrices ----------------------- */ + +#ifndef GL_NV_non_square_matrices +#define GL_NV_non_square_matrices 1 + +#define GL_FLOAT_MAT2x3_NV 0x8B65 +#define GL_FLOAT_MAT2x4_NV 0x8B66 +#define GL_FLOAT_MAT3x2_NV 0x8B67 +#define GL_FLOAT_MAT3x4_NV 0x8B68 +#define GL_FLOAT_MAT4x2_NV 0x8B69 +#define GL_FLOAT_MAT4x3_NV 0x8B6A + +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); + +#define glUniformMatrix2x3fvNV GLEW_GET_FUN(__glewUniformMatrix2x3fvNV) +#define glUniformMatrix2x4fvNV GLEW_GET_FUN(__glewUniformMatrix2x4fvNV) +#define glUniformMatrix3x2fvNV GLEW_GET_FUN(__glewUniformMatrix3x2fvNV) +#define glUniformMatrix3x4fvNV GLEW_GET_FUN(__glewUniformMatrix3x4fvNV) +#define glUniformMatrix4x2fvNV GLEW_GET_FUN(__glewUniformMatrix4x2fvNV) +#define glUniformMatrix4x3fvNV GLEW_GET_FUN(__glewUniformMatrix4x3fvNV) + +#define GLEW_NV_non_square_matrices GLEW_GET_VAR(__GLEW_NV_non_square_matrices) + +#endif /* GL_NV_non_square_matrices */ + +/* ------------------------- GL_NV_occlusion_query ------------------------- */ + +#ifndef GL_NV_occlusion_query +#define GL_NV_occlusion_query 1 + +#define GL_PIXEL_COUNTER_BITS_NV 0x8864 +#define GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865 +#define GL_PIXEL_COUNT_NV 0x8866 +#define GL_PIXEL_COUNT_AVAILABLE_NV 0x8867 + +typedef void (GLAPIENTRY * PFNGLBEGINOCCLUSIONQUERYNVPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLDELETEOCCLUSIONQUERIESNVPROC) (GLsizei n, const GLuint* ids); +typedef void (GLAPIENTRY * PFNGLENDOCCLUSIONQUERYNVPROC) (void); +typedef void (GLAPIENTRY * PFNGLGENOCCLUSIONQUERIESNVPROC) (GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLGETOCCLUSIONQUERYIVNVPROC) (GLuint id, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pname, GLuint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISOCCLUSIONQUERYNVPROC) (GLuint id); + +#define glBeginOcclusionQueryNV GLEW_GET_FUN(__glewBeginOcclusionQueryNV) +#define glDeleteOcclusionQueriesNV GLEW_GET_FUN(__glewDeleteOcclusionQueriesNV) +#define glEndOcclusionQueryNV GLEW_GET_FUN(__glewEndOcclusionQueryNV) +#define glGenOcclusionQueriesNV GLEW_GET_FUN(__glewGenOcclusionQueriesNV) +#define glGetOcclusionQueryivNV GLEW_GET_FUN(__glewGetOcclusionQueryivNV) +#define glGetOcclusionQueryuivNV GLEW_GET_FUN(__glewGetOcclusionQueryuivNV) +#define glIsOcclusionQueryNV GLEW_GET_FUN(__glewIsOcclusionQueryNV) + +#define GLEW_NV_occlusion_query GLEW_GET_VAR(__GLEW_NV_occlusion_query) + +#endif /* GL_NV_occlusion_query */ + +/* -------------------------- GL_NV_pack_subimage -------------------------- */ + +#ifndef GL_NV_pack_subimage +#define GL_NV_pack_subimage 1 + +#define GL_PACK_ROW_LENGTH_NV 0x0D02 +#define GL_PACK_SKIP_ROWS_NV 0x0D03 +#define GL_PACK_SKIP_PIXELS_NV 0x0D04 + +#define GLEW_NV_pack_subimage GLEW_GET_VAR(__GLEW_NV_pack_subimage) + +#endif /* GL_NV_pack_subimage */ + +/* ----------------------- GL_NV_packed_depth_stencil ---------------------- */ + +#ifndef GL_NV_packed_depth_stencil +#define GL_NV_packed_depth_stencil 1 + +#define GL_DEPTH_STENCIL_NV 0x84F9 +#define GL_UNSIGNED_INT_24_8_NV 0x84FA + +#define GLEW_NV_packed_depth_stencil GLEW_GET_VAR(__GLEW_NV_packed_depth_stencil) + +#endif /* GL_NV_packed_depth_stencil */ + +/* --------------------------- GL_NV_packed_float -------------------------- */ + +#ifndef GL_NV_packed_float +#define GL_NV_packed_float 1 + +#define GL_R11F_G11F_B10F_NV 0x8C3A +#define GL_UNSIGNED_INT_10F_11F_11F_REV_NV 0x8C3B + +#define GLEW_NV_packed_float GLEW_GET_VAR(__GLEW_NV_packed_float) + +#endif /* GL_NV_packed_float */ + +/* ----------------------- GL_NV_packed_float_linear ----------------------- */ + +#ifndef GL_NV_packed_float_linear +#define GL_NV_packed_float_linear 1 + +#define GL_R11F_G11F_B10F_NV 0x8C3A +#define GL_UNSIGNED_INT_10F_11F_11F_REV_NV 0x8C3B + +#define GLEW_NV_packed_float_linear GLEW_GET_VAR(__GLEW_NV_packed_float_linear) + +#endif /* GL_NV_packed_float_linear */ + +/* --------------------- GL_NV_parameter_buffer_object --------------------- */ + +#ifndef GL_NV_parameter_buffer_object +#define GL_NV_parameter_buffer_object 1 + +#define GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV 0x8DA0 +#define GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV 0x8DA1 +#define GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV 0x8DA2 +#define GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV 0x8DA3 +#define GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV 0x8DA4 + +typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params); +typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params); + +#define glProgramBufferParametersIivNV GLEW_GET_FUN(__glewProgramBufferParametersIivNV) +#define glProgramBufferParametersIuivNV GLEW_GET_FUN(__glewProgramBufferParametersIuivNV) +#define glProgramBufferParametersfvNV GLEW_GET_FUN(__glewProgramBufferParametersfvNV) + +#define GLEW_NV_parameter_buffer_object GLEW_GET_VAR(__GLEW_NV_parameter_buffer_object) + +#endif /* GL_NV_parameter_buffer_object */ + +/* --------------------- GL_NV_parameter_buffer_object2 -------------------- */ + +#ifndef GL_NV_parameter_buffer_object2 +#define GL_NV_parameter_buffer_object2 1 + +#define GLEW_NV_parameter_buffer_object2 GLEW_GET_VAR(__GLEW_NV_parameter_buffer_object2) + +#endif /* GL_NV_parameter_buffer_object2 */ + +/* -------------------------- GL_NV_path_rendering ------------------------- */ + +#ifndef GL_NV_path_rendering +#define GL_NV_path_rendering 1 + +#define GL_CLOSE_PATH_NV 0x00 +#define GL_BOLD_BIT_NV 0x01 +#define GL_GLYPH_WIDTH_BIT_NV 0x01 +#define GL_GLYPH_HEIGHT_BIT_NV 0x02 +#define GL_ITALIC_BIT_NV 0x02 +#define GL_MOVE_TO_NV 0x02 +#define GL_RELATIVE_MOVE_TO_NV 0x03 +#define GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV 0x04 +#define GL_LINE_TO_NV 0x04 +#define GL_RELATIVE_LINE_TO_NV 0x05 +#define GL_HORIZONTAL_LINE_TO_NV 0x06 +#define GL_RELATIVE_HORIZONTAL_LINE_TO_NV 0x07 +#define GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV 0x08 +#define GL_VERTICAL_LINE_TO_NV 0x08 +#define GL_RELATIVE_VERTICAL_LINE_TO_NV 0x09 +#define GL_QUADRATIC_CURVE_TO_NV 0x0A +#define GL_RELATIVE_QUADRATIC_CURVE_TO_NV 0x0B +#define GL_CUBIC_CURVE_TO_NV 0x0C +#define GL_RELATIVE_CUBIC_CURVE_TO_NV 0x0D +#define GL_SMOOTH_QUADRATIC_CURVE_TO_NV 0x0E +#define GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV 0x0F +#define GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV 0x10 +#define GL_SMOOTH_CUBIC_CURVE_TO_NV 0x10 +#define GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV 0x11 +#define GL_SMALL_CCW_ARC_TO_NV 0x12 +#define GL_RELATIVE_SMALL_CCW_ARC_TO_NV 0x13 +#define GL_SMALL_CW_ARC_TO_NV 0x14 +#define GL_RELATIVE_SMALL_CW_ARC_TO_NV 0x15 +#define GL_LARGE_CCW_ARC_TO_NV 0x16 +#define GL_RELATIVE_LARGE_CCW_ARC_TO_NV 0x17 +#define GL_LARGE_CW_ARC_TO_NV 0x18 +#define GL_RELATIVE_LARGE_CW_ARC_TO_NV 0x19 +#define GL_CONIC_CURVE_TO_NV 0x1A +#define GL_RELATIVE_CONIC_CURVE_TO_NV 0x1B +#define GL_GLYPH_VERTICAL_BEARING_X_BIT_NV 0x20 +#define GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV 0x40 +#define GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV 0x80 +#define GL_ROUNDED_RECT_NV 0xE8 +#define GL_RELATIVE_ROUNDED_RECT_NV 0xE9 +#define GL_ROUNDED_RECT2_NV 0xEA +#define GL_RELATIVE_ROUNDED_RECT2_NV 0xEB +#define GL_ROUNDED_RECT4_NV 0xEC +#define GL_RELATIVE_ROUNDED_RECT4_NV 0xED +#define GL_ROUNDED_RECT8_NV 0xEE +#define GL_RELATIVE_ROUNDED_RECT8_NV 0xEF +#define GL_RESTART_PATH_NV 0xF0 +#define GL_DUP_FIRST_CUBIC_CURVE_TO_NV 0xF2 +#define GL_DUP_LAST_CUBIC_CURVE_TO_NV 0xF4 +#define GL_RECT_NV 0xF6 +#define GL_RELATIVE_RECT_NV 0xF7 +#define GL_CIRCULAR_CCW_ARC_TO_NV 0xF8 +#define GL_CIRCULAR_CW_ARC_TO_NV 0xFA +#define GL_CIRCULAR_TANGENT_ARC_TO_NV 0xFC +#define GL_ARC_TO_NV 0xFE +#define GL_RELATIVE_ARC_TO_NV 0xFF +#define GL_GLYPH_HAS_KERNING_BIT_NV 0x100 +#define GL_PRIMARY_COLOR_NV 0x852C +#define GL_SECONDARY_COLOR_NV 0x852D +#define GL_PRIMARY_COLOR 0x8577 +#define GL_PATH_FORMAT_SVG_NV 0x9070 +#define GL_PATH_FORMAT_PS_NV 0x9071 +#define GL_STANDARD_FONT_NAME_NV 0x9072 +#define GL_SYSTEM_FONT_NAME_NV 0x9073 +#define GL_FILE_NAME_NV 0x9074 +#define GL_PATH_STROKE_WIDTH_NV 0x9075 +#define GL_PATH_END_CAPS_NV 0x9076 +#define GL_PATH_INITIAL_END_CAP_NV 0x9077 +#define GL_PATH_TERMINAL_END_CAP_NV 0x9078 +#define GL_PATH_JOIN_STYLE_NV 0x9079 +#define GL_PATH_MITER_LIMIT_NV 0x907A +#define GL_PATH_DASH_CAPS_NV 0x907B +#define GL_PATH_INITIAL_DASH_CAP_NV 0x907C +#define GL_PATH_TERMINAL_DASH_CAP_NV 0x907D +#define GL_PATH_DASH_OFFSET_NV 0x907E +#define GL_PATH_CLIENT_LENGTH_NV 0x907F +#define GL_PATH_FILL_MODE_NV 0x9080 +#define GL_PATH_FILL_MASK_NV 0x9081 +#define GL_PATH_FILL_COVER_MODE_NV 0x9082 +#define GL_PATH_STROKE_COVER_MODE_NV 0x9083 +#define GL_PATH_STROKE_MASK_NV 0x9084 +#define GL_PATH_STROKE_BOUND_NV 0x9086 +#define GL_COUNT_UP_NV 0x9088 +#define GL_COUNT_DOWN_NV 0x9089 +#define GL_PATH_OBJECT_BOUNDING_BOX_NV 0x908A +#define GL_CONVEX_HULL_NV 0x908B +#define GL_BOUNDING_BOX_NV 0x908D +#define GL_TRANSLATE_X_NV 0x908E +#define GL_TRANSLATE_Y_NV 0x908F +#define GL_TRANSLATE_2D_NV 0x9090 +#define GL_TRANSLATE_3D_NV 0x9091 +#define GL_AFFINE_2D_NV 0x9092 +#define GL_AFFINE_3D_NV 0x9094 +#define GL_TRANSPOSE_AFFINE_2D_NV 0x9096 +#define GL_TRANSPOSE_AFFINE_3D_NV 0x9098 +#define GL_UTF8_NV 0x909A +#define GL_UTF16_NV 0x909B +#define GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV 0x909C +#define GL_PATH_COMMAND_COUNT_NV 0x909D +#define GL_PATH_COORD_COUNT_NV 0x909E +#define GL_PATH_DASH_ARRAY_COUNT_NV 0x909F +#define GL_PATH_COMPUTED_LENGTH_NV 0x90A0 +#define GL_PATH_FILL_BOUNDING_BOX_NV 0x90A1 +#define GL_PATH_STROKE_BOUNDING_BOX_NV 0x90A2 +#define GL_SQUARE_NV 0x90A3 +#define GL_ROUND_NV 0x90A4 +#define GL_TRIANGULAR_NV 0x90A5 +#define GL_BEVEL_NV 0x90A6 +#define GL_MITER_REVERT_NV 0x90A7 +#define GL_MITER_TRUNCATE_NV 0x90A8 +#define GL_SKIP_MISSING_GLYPH_NV 0x90A9 +#define GL_USE_MISSING_GLYPH_NV 0x90AA +#define GL_PATH_ERROR_POSITION_NV 0x90AB +#define GL_PATH_FOG_GEN_MODE_NV 0x90AC +#define GL_ACCUM_ADJACENT_PAIRS_NV 0x90AD +#define GL_ADJACENT_PAIRS_NV 0x90AE +#define GL_FIRST_TO_REST_NV 0x90AF +#define GL_PATH_GEN_MODE_NV 0x90B0 +#define GL_PATH_GEN_COEFF_NV 0x90B1 +#define GL_PATH_GEN_COLOR_FORMAT_NV 0x90B2 +#define GL_PATH_GEN_COMPONENTS_NV 0x90B3 +#define GL_PATH_DASH_OFFSET_RESET_NV 0x90B4 +#define GL_MOVE_TO_RESETS_NV 0x90B5 +#define GL_MOVE_TO_CONTINUES_NV 0x90B6 +#define GL_PATH_STENCIL_FUNC_NV 0x90B7 +#define GL_PATH_STENCIL_REF_NV 0x90B8 +#define GL_PATH_STENCIL_VALUE_MASK_NV 0x90B9 +#define GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV 0x90BD +#define GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV 0x90BE +#define GL_PATH_COVER_DEPTH_FUNC_NV 0x90BF +#define GL_FONT_GLYPHS_AVAILABLE_NV 0x9368 +#define GL_FONT_TARGET_UNAVAILABLE_NV 0x9369 +#define GL_FONT_UNAVAILABLE_NV 0x936A +#define GL_FONT_UNINTELLIGIBLE_NV 0x936B +#define GL_STANDARD_FONT_FORMAT_NV 0x936C +#define GL_FRAGMENT_INPUT_NV 0x936D +#define GL_FONT_X_MIN_BOUNDS_BIT_NV 0x00010000 +#define GL_FONT_Y_MIN_BOUNDS_BIT_NV 0x00020000 +#define GL_FONT_X_MAX_BOUNDS_BIT_NV 0x00040000 +#define GL_FONT_Y_MAX_BOUNDS_BIT_NV 0x00080000 +#define GL_FONT_UNITS_PER_EM_BIT_NV 0x00100000 +#define GL_FONT_ASCENDER_BIT_NV 0x00200000 +#define GL_FONT_DESCENDER_BIT_NV 0x00400000 +#define GL_FONT_HEIGHT_BIT_NV 0x00800000 +#define GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV 0x01000000 +#define GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV 0x02000000 +#define GL_FONT_UNDERLINE_POSITION_BIT_NV 0x04000000 +#define GL_FONT_UNDERLINE_THICKNESS_BIT_NV 0x08000000 +#define GL_FONT_HAS_KERNING_BIT_NV 0x10000000 +#define GL_FONT_NUM_GLYPH_INDICES_BIT_NV 0x20000000 + +typedef void (GLAPIENTRY * PFNGLCOPYPATHNVPROC) (GLuint resultPath, GLuint srcPath); +typedef void (GLAPIENTRY * PFNGLCOVERFILLPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues); +typedef void (GLAPIENTRY * PFNGLCOVERFILLPATHNVPROC) (GLuint path, GLenum coverMode); +typedef void (GLAPIENTRY * PFNGLCOVERSTROKEPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues); +typedef void (GLAPIENTRY * PFNGLCOVERSTROKEPATHNVPROC) (GLuint path, GLenum coverMode); +typedef void (GLAPIENTRY * PFNGLDELETEPATHSNVPROC) (GLuint path, GLsizei range); +typedef GLuint (GLAPIENTRY * PFNGLGENPATHSNVPROC) (GLsizei range); +typedef void (GLAPIENTRY * PFNGLGETPATHCOLORGENFVNVPROC) (GLenum color, GLenum pname, GLfloat* value); +typedef void (GLAPIENTRY * PFNGLGETPATHCOLORGENIVNVPROC) (GLenum color, GLenum pname, GLint* value); +typedef void (GLAPIENTRY * PFNGLGETPATHCOMMANDSNVPROC) (GLuint path, GLubyte* commands); +typedef void (GLAPIENTRY * PFNGLGETPATHCOORDSNVPROC) (GLuint path, GLfloat* coords); +typedef void (GLAPIENTRY * PFNGLGETPATHDASHARRAYNVPROC) (GLuint path, GLfloat* dashArray); +typedef GLfloat (GLAPIENTRY * PFNGLGETPATHLENGTHNVPROC) (GLuint path, GLsizei startSegment, GLsizei numSegments); +typedef void (GLAPIENTRY * PFNGLGETPATHMETRICRANGENVPROC) (GLbitfield metricQueryMask, GLuint firstPathName, GLsizei numPaths, GLsizei stride, GLfloat* metrics); +typedef void (GLAPIENTRY * PFNGLGETPATHMETRICSNVPROC) (GLbitfield metricQueryMask, GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLsizei stride, GLfloat *metrics); +typedef void (GLAPIENTRY * PFNGLGETPATHPARAMETERFVNVPROC) (GLuint path, GLenum pname, GLfloat* value); +typedef void (GLAPIENTRY * PFNGLGETPATHPARAMETERIVNVPROC) (GLuint path, GLenum pname, GLint* value); +typedef void (GLAPIENTRY * PFNGLGETPATHSPACINGNVPROC) (GLenum pathListMode, GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLfloat advanceScale, GLfloat kerningScale, GLenum transformType, GLfloat *returnedSpacing); +typedef void (GLAPIENTRY * PFNGLGETPATHTEXGENFVNVPROC) (GLenum texCoordSet, GLenum pname, GLfloat* value); +typedef void (GLAPIENTRY * PFNGLGETPATHTEXGENIVNVPROC) (GLenum texCoordSet, GLenum pname, GLint* value); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMRESOURCEFVNVPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum* props, GLsizei bufSize, GLsizei *length, GLfloat *params); +typedef void (GLAPIENTRY * PFNGLINTERPOLATEPATHSNVPROC) (GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight); +typedef GLboolean (GLAPIENTRY * PFNGLISPATHNVPROC) (GLuint path); +typedef GLboolean (GLAPIENTRY * PFNGLISPOINTINFILLPATHNVPROC) (GLuint path, GLuint mask, GLfloat x, GLfloat y); +typedef GLboolean (GLAPIENTRY * PFNGLISPOINTINSTROKEPATHNVPROC) (GLuint path, GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLMATRIXLOAD3X2FNVPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXLOAD3X3FNVPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSE3X3FNVPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXMULT3X2FNVPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXMULT3X3FNVPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSE3X3FNVPROC) (GLenum matrixMode, const GLfloat* m); +typedef void (GLAPIENTRY * PFNGLPATHCOLORGENNVPROC) (GLenum color, GLenum genMode, GLenum colorFormat, const GLfloat* coeffs); +typedef void (GLAPIENTRY * PFNGLPATHCOMMANDSNVPROC) (GLuint path, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const void*coords); +typedef void (GLAPIENTRY * PFNGLPATHCOORDSNVPROC) (GLuint path, GLsizei numCoords, GLenum coordType, const void *coords); +typedef void (GLAPIENTRY * PFNGLPATHCOVERDEPTHFUNCNVPROC) (GLenum zfunc); +typedef void (GLAPIENTRY * PFNGLPATHDASHARRAYNVPROC) (GLuint path, GLsizei dashCount, const GLfloat* dashArray); +typedef void (GLAPIENTRY * PFNGLPATHFOGGENNVPROC) (GLenum genMode); +typedef GLenum (GLAPIENTRY * PFNGLPATHGLYPHINDEXARRAYNVPROC) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint firstGlyphIndex, GLsizei numGlyphs, GLuint pathParameterTemplate, GLfloat emScale); +typedef GLenum (GLAPIENTRY * PFNGLPATHGLYPHINDEXRANGENVPROC) (GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint pathParameterTemplate, GLfloat emScale, GLuint baseAndCount[2]); +typedef void (GLAPIENTRY * PFNGLPATHGLYPHRANGENVPROC) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint firstGlyph, GLsizei numGlyphs, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale); +typedef void (GLAPIENTRY * PFNGLPATHGLYPHSNVPROC) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLsizei numGlyphs, GLenum type, const void*charcodes, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale); +typedef GLenum (GLAPIENTRY * PFNGLPATHMEMORYGLYPHINDEXARRAYNVPROC) (GLuint firstPathName, GLenum fontTarget, GLsizeiptr fontSize, const void *fontData, GLsizei faceIndex, GLuint firstGlyphIndex, GLsizei numGlyphs, GLuint pathParameterTemplate, GLfloat emScale); +typedef void (GLAPIENTRY * PFNGLPATHPARAMETERFNVPROC) (GLuint path, GLenum pname, GLfloat value); +typedef void (GLAPIENTRY * PFNGLPATHPARAMETERFVNVPROC) (GLuint path, GLenum pname, const GLfloat* value); +typedef void (GLAPIENTRY * PFNGLPATHPARAMETERINVPROC) (GLuint path, GLenum pname, GLint value); +typedef void (GLAPIENTRY * PFNGLPATHPARAMETERIVNVPROC) (GLuint path, GLenum pname, const GLint* value); +typedef void (GLAPIENTRY * PFNGLPATHSTENCILDEPTHOFFSETNVPROC) (GLfloat factor, GLfloat units); +typedef void (GLAPIENTRY * PFNGLPATHSTENCILFUNCNVPROC) (GLenum func, GLint ref, GLuint mask); +typedef void (GLAPIENTRY * PFNGLPATHSTRINGNVPROC) (GLuint path, GLenum format, GLsizei length, const void *pathString); +typedef void (GLAPIENTRY * PFNGLPATHSUBCOMMANDSNVPROC) (GLuint path, GLsizei commandStart, GLsizei commandsToDelete, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const void*coords); +typedef void (GLAPIENTRY * PFNGLPATHSUBCOORDSNVPROC) (GLuint path, GLsizei coordStart, GLsizei numCoords, GLenum coordType, const void *coords); +typedef void (GLAPIENTRY * PFNGLPATHTEXGENNVPROC) (GLenum texCoordSet, GLenum genMode, GLint components, const GLfloat* coeffs); +typedef GLboolean (GLAPIENTRY * PFNGLPOINTALONGPATHNVPROC) (GLuint path, GLsizei startSegment, GLsizei numSegments, GLfloat distance, GLfloat* x, GLfloat *y, GLfloat *tangentX, GLfloat *tangentY); +typedef void (GLAPIENTRY * PFNGLPROGRAMPATHFRAGMENTINPUTGENNVPROC) (GLuint program, GLint location, GLenum genMode, GLint components, const GLfloat* coeffs); +typedef void (GLAPIENTRY * PFNGLSTENCILFILLPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum transformType, const GLfloat *transformValues); +typedef void (GLAPIENTRY * PFNGLSTENCILFILLPATHNVPROC) (GLuint path, GLenum fillMode, GLuint mask); +typedef void (GLAPIENTRY * PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLint reference, GLuint mask, GLenum transformType, const GLfloat *transformValues); +typedef void (GLAPIENTRY * PFNGLSTENCILSTROKEPATHNVPROC) (GLuint path, GLint reference, GLuint mask); +typedef void (GLAPIENTRY * PFNGLSTENCILTHENCOVERFILLPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum coverMode, GLenum transformType, const GLfloat *transformValues); +typedef void (GLAPIENTRY * PFNGLSTENCILTHENCOVERFILLPATHNVPROC) (GLuint path, GLenum fillMode, GLuint mask, GLenum coverMode); +typedef void (GLAPIENTRY * PFNGLSTENCILTHENCOVERSTROKEPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLint reference, GLuint mask, GLenum coverMode, GLenum transformType, const GLfloat *transformValues); +typedef void (GLAPIENTRY * PFNGLSTENCILTHENCOVERSTROKEPATHNVPROC) (GLuint path, GLint reference, GLuint mask, GLenum coverMode); +typedef void (GLAPIENTRY * PFNGLTRANSFORMPATHNVPROC) (GLuint resultPath, GLuint srcPath, GLenum transformType, const GLfloat* transformValues); +typedef void (GLAPIENTRY * PFNGLWEIGHTPATHSNVPROC) (GLuint resultPath, GLsizei numPaths, const GLuint paths[], const GLfloat weights[]); + +#define glCopyPathNV GLEW_GET_FUN(__glewCopyPathNV) +#define glCoverFillPathInstancedNV GLEW_GET_FUN(__glewCoverFillPathInstancedNV) +#define glCoverFillPathNV GLEW_GET_FUN(__glewCoverFillPathNV) +#define glCoverStrokePathInstancedNV GLEW_GET_FUN(__glewCoverStrokePathInstancedNV) +#define glCoverStrokePathNV GLEW_GET_FUN(__glewCoverStrokePathNV) +#define glDeletePathsNV GLEW_GET_FUN(__glewDeletePathsNV) +#define glGenPathsNV GLEW_GET_FUN(__glewGenPathsNV) +#define glGetPathColorGenfvNV GLEW_GET_FUN(__glewGetPathColorGenfvNV) +#define glGetPathColorGenivNV GLEW_GET_FUN(__glewGetPathColorGenivNV) +#define glGetPathCommandsNV GLEW_GET_FUN(__glewGetPathCommandsNV) +#define glGetPathCoordsNV GLEW_GET_FUN(__glewGetPathCoordsNV) +#define glGetPathDashArrayNV GLEW_GET_FUN(__glewGetPathDashArrayNV) +#define glGetPathLengthNV GLEW_GET_FUN(__glewGetPathLengthNV) +#define glGetPathMetricRangeNV GLEW_GET_FUN(__glewGetPathMetricRangeNV) +#define glGetPathMetricsNV GLEW_GET_FUN(__glewGetPathMetricsNV) +#define glGetPathParameterfvNV GLEW_GET_FUN(__glewGetPathParameterfvNV) +#define glGetPathParameterivNV GLEW_GET_FUN(__glewGetPathParameterivNV) +#define glGetPathSpacingNV GLEW_GET_FUN(__glewGetPathSpacingNV) +#define glGetPathTexGenfvNV GLEW_GET_FUN(__glewGetPathTexGenfvNV) +#define glGetPathTexGenivNV GLEW_GET_FUN(__glewGetPathTexGenivNV) +#define glGetProgramResourcefvNV GLEW_GET_FUN(__glewGetProgramResourcefvNV) +#define glInterpolatePathsNV GLEW_GET_FUN(__glewInterpolatePathsNV) +#define glIsPathNV GLEW_GET_FUN(__glewIsPathNV) +#define glIsPointInFillPathNV GLEW_GET_FUN(__glewIsPointInFillPathNV) +#define glIsPointInStrokePathNV GLEW_GET_FUN(__glewIsPointInStrokePathNV) +#define glMatrixLoad3x2fNV GLEW_GET_FUN(__glewMatrixLoad3x2fNV) +#define glMatrixLoad3x3fNV GLEW_GET_FUN(__glewMatrixLoad3x3fNV) +#define glMatrixLoadTranspose3x3fNV GLEW_GET_FUN(__glewMatrixLoadTranspose3x3fNV) +#define glMatrixMult3x2fNV GLEW_GET_FUN(__glewMatrixMult3x2fNV) +#define glMatrixMult3x3fNV GLEW_GET_FUN(__glewMatrixMult3x3fNV) +#define glMatrixMultTranspose3x3fNV GLEW_GET_FUN(__glewMatrixMultTranspose3x3fNV) +#define glPathColorGenNV GLEW_GET_FUN(__glewPathColorGenNV) +#define glPathCommandsNV GLEW_GET_FUN(__glewPathCommandsNV) +#define glPathCoordsNV GLEW_GET_FUN(__glewPathCoordsNV) +#define glPathCoverDepthFuncNV GLEW_GET_FUN(__glewPathCoverDepthFuncNV) +#define glPathDashArrayNV GLEW_GET_FUN(__glewPathDashArrayNV) +#define glPathFogGenNV GLEW_GET_FUN(__glewPathFogGenNV) +#define glPathGlyphIndexArrayNV GLEW_GET_FUN(__glewPathGlyphIndexArrayNV) +#define glPathGlyphIndexRangeNV GLEW_GET_FUN(__glewPathGlyphIndexRangeNV) +#define glPathGlyphRangeNV GLEW_GET_FUN(__glewPathGlyphRangeNV) +#define glPathGlyphsNV GLEW_GET_FUN(__glewPathGlyphsNV) +#define glPathMemoryGlyphIndexArrayNV GLEW_GET_FUN(__glewPathMemoryGlyphIndexArrayNV) +#define glPathParameterfNV GLEW_GET_FUN(__glewPathParameterfNV) +#define glPathParameterfvNV GLEW_GET_FUN(__glewPathParameterfvNV) +#define glPathParameteriNV GLEW_GET_FUN(__glewPathParameteriNV) +#define glPathParameterivNV GLEW_GET_FUN(__glewPathParameterivNV) +#define glPathStencilDepthOffsetNV GLEW_GET_FUN(__glewPathStencilDepthOffsetNV) +#define glPathStencilFuncNV GLEW_GET_FUN(__glewPathStencilFuncNV) +#define glPathStringNV GLEW_GET_FUN(__glewPathStringNV) +#define glPathSubCommandsNV GLEW_GET_FUN(__glewPathSubCommandsNV) +#define glPathSubCoordsNV GLEW_GET_FUN(__glewPathSubCoordsNV) +#define glPathTexGenNV GLEW_GET_FUN(__glewPathTexGenNV) +#define glPointAlongPathNV GLEW_GET_FUN(__glewPointAlongPathNV) +#define glProgramPathFragmentInputGenNV GLEW_GET_FUN(__glewProgramPathFragmentInputGenNV) +#define glStencilFillPathInstancedNV GLEW_GET_FUN(__glewStencilFillPathInstancedNV) +#define glStencilFillPathNV GLEW_GET_FUN(__glewStencilFillPathNV) +#define glStencilStrokePathInstancedNV GLEW_GET_FUN(__glewStencilStrokePathInstancedNV) +#define glStencilStrokePathNV GLEW_GET_FUN(__glewStencilStrokePathNV) +#define glStencilThenCoverFillPathInstancedNV GLEW_GET_FUN(__glewStencilThenCoverFillPathInstancedNV) +#define glStencilThenCoverFillPathNV GLEW_GET_FUN(__glewStencilThenCoverFillPathNV) +#define glStencilThenCoverStrokePathInstancedNV GLEW_GET_FUN(__glewStencilThenCoverStrokePathInstancedNV) +#define glStencilThenCoverStrokePathNV GLEW_GET_FUN(__glewStencilThenCoverStrokePathNV) +#define glTransformPathNV GLEW_GET_FUN(__glewTransformPathNV) +#define glWeightPathsNV GLEW_GET_FUN(__glewWeightPathsNV) + +#define GLEW_NV_path_rendering GLEW_GET_VAR(__GLEW_NV_path_rendering) + +#endif /* GL_NV_path_rendering */ + +/* -------------------- GL_NV_path_rendering_shared_edge ------------------- */ + +#ifndef GL_NV_path_rendering_shared_edge +#define GL_NV_path_rendering_shared_edge 1 + +#define GL_SHARED_EDGE_NV 0xC0 + +#define GLEW_NV_path_rendering_shared_edge GLEW_GET_VAR(__GLEW_NV_path_rendering_shared_edge) + +#endif /* GL_NV_path_rendering_shared_edge */ + +/* ----------------------- GL_NV_pixel_buffer_object ----------------------- */ + +#ifndef GL_NV_pixel_buffer_object +#define GL_NV_pixel_buffer_object 1 + +#define GL_PIXEL_PACK_BUFFER_NV 0x88EB +#define GL_PIXEL_UNPACK_BUFFER_NV 0x88EC +#define GL_PIXEL_PACK_BUFFER_BINDING_NV 0x88ED +#define GL_PIXEL_UNPACK_BUFFER_BINDING_NV 0x88EF + +#define GLEW_NV_pixel_buffer_object GLEW_GET_VAR(__GLEW_NV_pixel_buffer_object) + +#endif /* GL_NV_pixel_buffer_object */ + +/* ------------------------- GL_NV_pixel_data_range ------------------------ */ + +#ifndef GL_NV_pixel_data_range +#define GL_NV_pixel_data_range 1 + +#define GL_WRITE_PIXEL_DATA_RANGE_NV 0x8878 +#define GL_READ_PIXEL_DATA_RANGE_NV 0x8879 +#define GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV 0x887A +#define GL_READ_PIXEL_DATA_RANGE_LENGTH_NV 0x887B +#define GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV 0x887C +#define GL_READ_PIXEL_DATA_RANGE_POINTER_NV 0x887D + +typedef void (GLAPIENTRY * PFNGLFLUSHPIXELDATARANGENVPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLPIXELDATARANGENVPROC) (GLenum target, GLsizei length, void *pointer); + +#define glFlushPixelDataRangeNV GLEW_GET_FUN(__glewFlushPixelDataRangeNV) +#define glPixelDataRangeNV GLEW_GET_FUN(__glewPixelDataRangeNV) + +#define GLEW_NV_pixel_data_range GLEW_GET_VAR(__GLEW_NV_pixel_data_range) + +#endif /* GL_NV_pixel_data_range */ + +/* ------------------------- GL_NV_platform_binary ------------------------- */ + +#ifndef GL_NV_platform_binary +#define GL_NV_platform_binary 1 + +#define GL_NVIDIA_PLATFORM_BINARY_NV 0x890B + +#define GLEW_NV_platform_binary GLEW_GET_VAR(__GLEW_NV_platform_binary) + +#endif /* GL_NV_platform_binary */ + +/* --------------------------- GL_NV_point_sprite -------------------------- */ + +#ifndef GL_NV_point_sprite +#define GL_NV_point_sprite 1 + +#define GL_POINT_SPRITE_NV 0x8861 +#define GL_COORD_REPLACE_NV 0x8862 +#define GL_POINT_SPRITE_R_MODE_NV 0x8863 + +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERINVPROC) (GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIVNVPROC) (GLenum pname, const GLint* params); + +#define glPointParameteriNV GLEW_GET_FUN(__glewPointParameteriNV) +#define glPointParameterivNV GLEW_GET_FUN(__glewPointParameterivNV) + +#define GLEW_NV_point_sprite GLEW_GET_VAR(__GLEW_NV_point_sprite) + +#endif /* GL_NV_point_sprite */ + +/* --------------------------- GL_NV_polygon_mode -------------------------- */ + +#ifndef GL_NV_polygon_mode +#define GL_NV_polygon_mode 1 + +#define GL_POLYGON_MODE_NV 0x0B40 +#define GL_POINT_NV 0x1B00 +#define GL_LINE_NV 0x1B01 +#define GL_FILL_NV 0x1B02 +#define GL_POLYGON_OFFSET_POINT_NV 0x2A01 +#define GL_POLYGON_OFFSET_LINE_NV 0x2A02 + +typedef void (GLAPIENTRY * PFNGLPOLYGONMODENVPROC) (GLenum face, GLenum mode); + +#define glPolygonModeNV GLEW_GET_FUN(__glewPolygonModeNV) + +#define GLEW_NV_polygon_mode GLEW_GET_VAR(__GLEW_NV_polygon_mode) + +#endif /* GL_NV_polygon_mode */ + +/* -------------------------- GL_NV_present_video -------------------------- */ + +#ifndef GL_NV_present_video +#define GL_NV_present_video 1 + +#define GL_FRAME_NV 0x8E26 +#define GL_FIELDS_NV 0x8E27 +#define GL_CURRENT_TIME_NV 0x8E28 +#define GL_NUM_FILL_STREAMS_NV 0x8E29 +#define GL_PRESENT_TIME_NV 0x8E2A +#define GL_PRESENT_DURATION_NV 0x8E2B + +typedef void (GLAPIENTRY * PFNGLGETVIDEOI64VNVPROC) (GLuint video_slot, GLenum pname, GLint64EXT* params); +typedef void (GLAPIENTRY * PFNGLGETVIDEOIVNVPROC) (GLuint video_slot, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETVIDEOUI64VNVPROC) (GLuint video_slot, GLenum pname, GLuint64EXT* params); +typedef void (GLAPIENTRY * PFNGLGETVIDEOUIVNVPROC) (GLuint video_slot, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLPRESENTFRAMEDUALFILLNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3); +typedef void (GLAPIENTRY * PFNGLPRESENTFRAMEKEYEDNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1); + +#define glGetVideoi64vNV GLEW_GET_FUN(__glewGetVideoi64vNV) +#define glGetVideoivNV GLEW_GET_FUN(__glewGetVideoivNV) +#define glGetVideoui64vNV GLEW_GET_FUN(__glewGetVideoui64vNV) +#define glGetVideouivNV GLEW_GET_FUN(__glewGetVideouivNV) +#define glPresentFrameDualFillNV GLEW_GET_FUN(__glewPresentFrameDualFillNV) +#define glPresentFrameKeyedNV GLEW_GET_FUN(__glewPresentFrameKeyedNV) + +#define GLEW_NV_present_video GLEW_GET_VAR(__GLEW_NV_present_video) + +#endif /* GL_NV_present_video */ + +/* ------------------------ GL_NV_primitive_restart ------------------------ */ + +#ifndef GL_NV_primitive_restart +#define GL_NV_primitive_restart 1 + +#define GL_PRIMITIVE_RESTART_NV 0x8558 +#define GL_PRIMITIVE_RESTART_INDEX_NV 0x8559 + +typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTINDEXNVPROC) (GLuint index); +typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTNVPROC) (void); + +#define glPrimitiveRestartIndexNV GLEW_GET_FUN(__glewPrimitiveRestartIndexNV) +#define glPrimitiveRestartNV GLEW_GET_FUN(__glewPrimitiveRestartNV) + +#define GLEW_NV_primitive_restart GLEW_GET_VAR(__GLEW_NV_primitive_restart) + +#endif /* GL_NV_primitive_restart */ + +/* ------------------------ GL_NV_query_resource_tag ----------------------- */ + +#ifndef GL_NV_query_resource_tag +#define GL_NV_query_resource_tag 1 + +#define GLEW_NV_query_resource_tag GLEW_GET_VAR(__GLEW_NV_query_resource_tag) + +#endif /* GL_NV_query_resource_tag */ + +/* --------------------------- GL_NV_read_buffer --------------------------- */ + +#ifndef GL_NV_read_buffer +#define GL_NV_read_buffer 1 + +#define GL_READ_BUFFER_NV 0x0C02 + +typedef void (GLAPIENTRY * PFNGLREADBUFFERNVPROC) (GLenum mode); + +#define glReadBufferNV GLEW_GET_FUN(__glewReadBufferNV) + +#define GLEW_NV_read_buffer GLEW_GET_VAR(__GLEW_NV_read_buffer) + +#endif /* GL_NV_read_buffer */ + +/* ------------------------ GL_NV_read_buffer_front ------------------------ */ + +#ifndef GL_NV_read_buffer_front +#define GL_NV_read_buffer_front 1 + +#define GL_READ_BUFFER_NV 0x0C02 + +#define GLEW_NV_read_buffer_front GLEW_GET_VAR(__GLEW_NV_read_buffer_front) + +#endif /* GL_NV_read_buffer_front */ + +/* ---------------------------- GL_NV_read_depth --------------------------- */ + +#ifndef GL_NV_read_depth +#define GL_NV_read_depth 1 + +#define GLEW_NV_read_depth GLEW_GET_VAR(__GLEW_NV_read_depth) + +#endif /* GL_NV_read_depth */ + +/* ------------------------ GL_NV_read_depth_stencil ----------------------- */ + +#ifndef GL_NV_read_depth_stencil +#define GL_NV_read_depth_stencil 1 + +#define GLEW_NV_read_depth_stencil GLEW_GET_VAR(__GLEW_NV_read_depth_stencil) + +#endif /* GL_NV_read_depth_stencil */ + +/* --------------------------- GL_NV_read_stencil -------------------------- */ + +#ifndef GL_NV_read_stencil +#define GL_NV_read_stencil 1 + +#define GLEW_NV_read_stencil GLEW_GET_VAR(__GLEW_NV_read_stencil) + +#endif /* GL_NV_read_stencil */ + +/* ------------------------ GL_NV_register_combiners ----------------------- */ + +#ifndef GL_NV_register_combiners +#define GL_NV_register_combiners 1 + +#define GL_REGISTER_COMBINERS_NV 0x8522 +#define GL_VARIABLE_A_NV 0x8523 +#define GL_VARIABLE_B_NV 0x8524 +#define GL_VARIABLE_C_NV 0x8525 +#define GL_VARIABLE_D_NV 0x8526 +#define GL_VARIABLE_E_NV 0x8527 +#define GL_VARIABLE_F_NV 0x8528 +#define GL_VARIABLE_G_NV 0x8529 +#define GL_CONSTANT_COLOR0_NV 0x852A +#define GL_CONSTANT_COLOR1_NV 0x852B +#define GL_PRIMARY_COLOR_NV 0x852C +#define GL_SECONDARY_COLOR_NV 0x852D +#define GL_SPARE0_NV 0x852E +#define GL_SPARE1_NV 0x852F +#define GL_DISCARD_NV 0x8530 +#define GL_E_TIMES_F_NV 0x8531 +#define GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532 +#define GL_UNSIGNED_IDENTITY_NV 0x8536 +#define GL_UNSIGNED_INVERT_NV 0x8537 +#define GL_EXPAND_NORMAL_NV 0x8538 +#define GL_EXPAND_NEGATE_NV 0x8539 +#define GL_HALF_BIAS_NORMAL_NV 0x853A +#define GL_HALF_BIAS_NEGATE_NV 0x853B +#define GL_SIGNED_IDENTITY_NV 0x853C +#define GL_SIGNED_NEGATE_NV 0x853D +#define GL_SCALE_BY_TWO_NV 0x853E +#define GL_SCALE_BY_FOUR_NV 0x853F +#define GL_SCALE_BY_ONE_HALF_NV 0x8540 +#define GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541 +#define GL_COMBINER_INPUT_NV 0x8542 +#define GL_COMBINER_MAPPING_NV 0x8543 +#define GL_COMBINER_COMPONENT_USAGE_NV 0x8544 +#define GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545 +#define GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546 +#define GL_COMBINER_MUX_SUM_NV 0x8547 +#define GL_COMBINER_SCALE_NV 0x8548 +#define GL_COMBINER_BIAS_NV 0x8549 +#define GL_COMBINER_AB_OUTPUT_NV 0x854A +#define GL_COMBINER_CD_OUTPUT_NV 0x854B +#define GL_COMBINER_SUM_OUTPUT_NV 0x854C +#define GL_MAX_GENERAL_COMBINERS_NV 0x854D +#define GL_NUM_GENERAL_COMBINERS_NV 0x854E +#define GL_COLOR_SUM_CLAMP_NV 0x854F +#define GL_COMBINER0_NV 0x8550 +#define GL_COMBINER1_NV 0x8551 +#define GL_COMBINER2_NV 0x8552 +#define GL_COMBINER3_NV 0x8553 +#define GL_COMBINER4_NV 0x8554 +#define GL_COMBINER5_NV 0x8555 +#define GL_COMBINER6_NV 0x8556 +#define GL_COMBINER7_NV 0x8557 + +typedef void (GLAPIENTRY * PFNGLCOMBINERINPUTNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); +typedef void (GLAPIENTRY * PFNGLCOMBINEROUTPUTNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); +typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERFNVPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERFVNVPROC) (GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERINVPROC) (GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERIVNVPROC) (GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLFINALCOMBINERINPUTNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); +typedef void (GLAPIENTRY * PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC) (GLenum variable, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC) (GLenum variable, GLenum pname, GLint* params); + +#define glCombinerInputNV GLEW_GET_FUN(__glewCombinerInputNV) +#define glCombinerOutputNV GLEW_GET_FUN(__glewCombinerOutputNV) +#define glCombinerParameterfNV GLEW_GET_FUN(__glewCombinerParameterfNV) +#define glCombinerParameterfvNV GLEW_GET_FUN(__glewCombinerParameterfvNV) +#define glCombinerParameteriNV GLEW_GET_FUN(__glewCombinerParameteriNV) +#define glCombinerParameterivNV GLEW_GET_FUN(__glewCombinerParameterivNV) +#define glFinalCombinerInputNV GLEW_GET_FUN(__glewFinalCombinerInputNV) +#define glGetCombinerInputParameterfvNV GLEW_GET_FUN(__glewGetCombinerInputParameterfvNV) +#define glGetCombinerInputParameterivNV GLEW_GET_FUN(__glewGetCombinerInputParameterivNV) +#define glGetCombinerOutputParameterfvNV GLEW_GET_FUN(__glewGetCombinerOutputParameterfvNV) +#define glGetCombinerOutputParameterivNV GLEW_GET_FUN(__glewGetCombinerOutputParameterivNV) +#define glGetFinalCombinerInputParameterfvNV GLEW_GET_FUN(__glewGetFinalCombinerInputParameterfvNV) +#define glGetFinalCombinerInputParameterivNV GLEW_GET_FUN(__glewGetFinalCombinerInputParameterivNV) + +#define GLEW_NV_register_combiners GLEW_GET_VAR(__GLEW_NV_register_combiners) + +#endif /* GL_NV_register_combiners */ + +/* ----------------------- GL_NV_register_combiners2 ----------------------- */ + +#ifndef GL_NV_register_combiners2 +#define GL_NV_register_combiners2 1 + +#define GL_PER_STAGE_CONSTANTS_NV 0x8535 + +typedef void (GLAPIENTRY * PFNGLCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, GLfloat* params); + +#define glCombinerStageParameterfvNV GLEW_GET_FUN(__glewCombinerStageParameterfvNV) +#define glGetCombinerStageParameterfvNV GLEW_GET_FUN(__glewGetCombinerStageParameterfvNV) + +#define GLEW_NV_register_combiners2 GLEW_GET_VAR(__GLEW_NV_register_combiners2) + +#endif /* GL_NV_register_combiners2 */ + +/* ------------------- GL_NV_representative_fragment_test ------------------ */ + +#ifndef GL_NV_representative_fragment_test +#define GL_NV_representative_fragment_test 1 + +#define GL_REPRESENTATIVE_FRAGMENT_TEST_NV 0x937F + +#define GLEW_NV_representative_fragment_test GLEW_GET_VAR(__GLEW_NV_representative_fragment_test) + +#endif /* GL_NV_representative_fragment_test */ + +/* ------------------ GL_NV_robustness_video_memory_purge ------------------ */ + +#ifndef GL_NV_robustness_video_memory_purge +#define GL_NV_robustness_video_memory_purge 1 + +#define GL_PURGED_CONTEXT_RESET_NV 0x92BB + +#define GLEW_NV_robustness_video_memory_purge GLEW_GET_VAR(__GLEW_NV_robustness_video_memory_purge) + +#endif /* GL_NV_robustness_video_memory_purge */ + +/* --------------------------- GL_NV_sRGB_formats -------------------------- */ + +#ifndef GL_NV_sRGB_formats +#define GL_NV_sRGB_formats 1 + +#define GL_ETC1_SRGB8_NV 0x88EE +#define GL_SRGB8_NV 0x8C41 +#define GL_SLUMINANCE_ALPHA_NV 0x8C44 +#define GL_SLUMINANCE8_ALPHA8_NV 0x8C45 +#define GL_SLUMINANCE_NV 0x8C46 +#define GL_SLUMINANCE8_NV 0x8C47 +#define GL_COMPRESSED_SRGB_S3TC_DXT1_NV 0x8C4C +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV 0x8C4D +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV 0x8C4E +#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV 0x8C4F + +#define GLEW_NV_sRGB_formats GLEW_GET_VAR(__GLEW_NV_sRGB_formats) + +#endif /* GL_NV_sRGB_formats */ + +/* ------------------------- GL_NV_sample_locations ------------------------ */ + +#ifndef GL_NV_sample_locations +#define GL_NV_sample_locations 1 + +#define GL_SAMPLE_LOCATION_NV 0x8E50 +#define GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV 0x933D +#define GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV 0x933E +#define GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV 0x933F +#define GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV 0x9340 +#define GL_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9341 +#define GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV 0x9342 +#define GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV 0x9343 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLenum target, GLuint start, GLsizei count, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLRESOLVEDEPTHVALUESNVPROC) (void); + +#define glFramebufferSampleLocationsfvNV GLEW_GET_FUN(__glewFramebufferSampleLocationsfvNV) +#define glNamedFramebufferSampleLocationsfvNV GLEW_GET_FUN(__glewNamedFramebufferSampleLocationsfvNV) +#define glResolveDepthValuesNV GLEW_GET_FUN(__glewResolveDepthValuesNV) + +#define GLEW_NV_sample_locations GLEW_GET_VAR(__GLEW_NV_sample_locations) + +#endif /* GL_NV_sample_locations */ + +/* ------------------ GL_NV_sample_mask_override_coverage ------------------ */ + +#ifndef GL_NV_sample_mask_override_coverage +#define GL_NV_sample_mask_override_coverage 1 + +#define GLEW_NV_sample_mask_override_coverage GLEW_GET_VAR(__GLEW_NV_sample_mask_override_coverage) + +#endif /* GL_NV_sample_mask_override_coverage */ + +/* ------------------------ GL_NV_scissor_exclusive ------------------------ */ + +#ifndef GL_NV_scissor_exclusive +#define GL_NV_scissor_exclusive 1 + +#define GL_SCISSOR_TEST_EXCLUSIVE_NV 0x9555 +#define GL_SCISSOR_BOX_EXCLUSIVE_NV 0x9556 + +typedef void (GLAPIENTRY * PFNGLSCISSOREXCLUSIVEARRAYVNVPROC) (GLuint first, GLsizei count, const GLint* v); +typedef void (GLAPIENTRY * PFNGLSCISSOREXCLUSIVENVPROC) (GLint x, GLint y, GLsizei width, GLsizei height); + +#define glScissorExclusiveArrayvNV GLEW_GET_FUN(__glewScissorExclusiveArrayvNV) +#define glScissorExclusiveNV GLEW_GET_FUN(__glewScissorExclusiveNV) + +#define GLEW_NV_scissor_exclusive GLEW_GET_VAR(__GLEW_NV_scissor_exclusive) + +#endif /* GL_NV_scissor_exclusive */ + +/* ---------------------- GL_NV_shader_atomic_counters --------------------- */ + +#ifndef GL_NV_shader_atomic_counters +#define GL_NV_shader_atomic_counters 1 + +#define GLEW_NV_shader_atomic_counters GLEW_GET_VAR(__GLEW_NV_shader_atomic_counters) + +#endif /* GL_NV_shader_atomic_counters */ + +/* ----------------------- GL_NV_shader_atomic_float ----------------------- */ + +#ifndef GL_NV_shader_atomic_float +#define GL_NV_shader_atomic_float 1 + +#define GLEW_NV_shader_atomic_float GLEW_GET_VAR(__GLEW_NV_shader_atomic_float) + +#endif /* GL_NV_shader_atomic_float */ + +/* ---------------------- GL_NV_shader_atomic_float64 ---------------------- */ + +#ifndef GL_NV_shader_atomic_float64 +#define GL_NV_shader_atomic_float64 1 + +#define GLEW_NV_shader_atomic_float64 GLEW_GET_VAR(__GLEW_NV_shader_atomic_float64) + +#endif /* GL_NV_shader_atomic_float64 */ + +/* -------------------- GL_NV_shader_atomic_fp16_vector -------------------- */ + +#ifndef GL_NV_shader_atomic_fp16_vector +#define GL_NV_shader_atomic_fp16_vector 1 + +#define GLEW_NV_shader_atomic_fp16_vector GLEW_GET_VAR(__GLEW_NV_shader_atomic_fp16_vector) + +#endif /* GL_NV_shader_atomic_fp16_vector */ + +/* ----------------------- GL_NV_shader_atomic_int64 ----------------------- */ + +#ifndef GL_NV_shader_atomic_int64 +#define GL_NV_shader_atomic_int64 1 + +#define GLEW_NV_shader_atomic_int64 GLEW_GET_VAR(__GLEW_NV_shader_atomic_int64) + +#endif /* GL_NV_shader_atomic_int64 */ + +/* ------------------------ GL_NV_shader_buffer_load ----------------------- */ + +#ifndef GL_NV_shader_buffer_load +#define GL_NV_shader_buffer_load 1 + +#define GL_BUFFER_GPU_ADDRESS_NV 0x8F1D +#define GL_GPU_ADDRESS_NV 0x8F34 +#define GL_MAX_SHADER_BUFFER_ADDRESS_NV 0x8F35 + +typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERUI64VNVPROC) (GLenum target, GLenum pname, GLuint64EXT* params); +typedef void (GLAPIENTRY * PFNGLGETINTEGERUI64VNVPROC) (GLenum value, GLuint64EXT* result); +typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC) (GLuint buffer, GLenum pname, GLuint64EXT* params); +typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERRESIDENTNVPROC) (GLenum target); +typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDBUFFERRESIDENTNVPROC) (GLuint buffer); +typedef void (GLAPIENTRY * PFNGLMAKEBUFFERNONRESIDENTNVPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLMAKEBUFFERRESIDENTNVPROC) (GLenum target, GLenum access); +typedef void (GLAPIENTRY * PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC) (GLuint buffer); +typedef void (GLAPIENTRY * PFNGLMAKENAMEDBUFFERRESIDENTNVPROC) (GLuint buffer, GLenum access); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMUI64NVPROC) (GLuint program, GLint location, GLuint64EXT value); +typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); +typedef void (GLAPIENTRY * PFNGLUNIFORMUI64NVPROC) (GLint location, GLuint64EXT value); +typedef void (GLAPIENTRY * PFNGLUNIFORMUI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); + +#define glGetBufferParameterui64vNV GLEW_GET_FUN(__glewGetBufferParameterui64vNV) +#define glGetIntegerui64vNV GLEW_GET_FUN(__glewGetIntegerui64vNV) +#define glGetNamedBufferParameterui64vNV GLEW_GET_FUN(__glewGetNamedBufferParameterui64vNV) +#define glIsBufferResidentNV GLEW_GET_FUN(__glewIsBufferResidentNV) +#define glIsNamedBufferResidentNV GLEW_GET_FUN(__glewIsNamedBufferResidentNV) +#define glMakeBufferNonResidentNV GLEW_GET_FUN(__glewMakeBufferNonResidentNV) +#define glMakeBufferResidentNV GLEW_GET_FUN(__glewMakeBufferResidentNV) +#define glMakeNamedBufferNonResidentNV GLEW_GET_FUN(__glewMakeNamedBufferNonResidentNV) +#define glMakeNamedBufferResidentNV GLEW_GET_FUN(__glewMakeNamedBufferResidentNV) +#define glProgramUniformui64NV GLEW_GET_FUN(__glewProgramUniformui64NV) +#define glProgramUniformui64vNV GLEW_GET_FUN(__glewProgramUniformui64vNV) +#define glUniformui64NV GLEW_GET_FUN(__glewUniformui64NV) +#define glUniformui64vNV GLEW_GET_FUN(__glewUniformui64vNV) + +#define GLEW_NV_shader_buffer_load GLEW_GET_VAR(__GLEW_NV_shader_buffer_load) + +#endif /* GL_NV_shader_buffer_load */ + +/* ---------------- GL_NV_shader_noperspective_interpolation --------------- */ + +#ifndef GL_NV_shader_noperspective_interpolation +#define GL_NV_shader_noperspective_interpolation 1 + +#define GLEW_NV_shader_noperspective_interpolation GLEW_GET_VAR(__GLEW_NV_shader_noperspective_interpolation) + +#endif /* GL_NV_shader_noperspective_interpolation */ + +/* ------------------- GL_NV_shader_storage_buffer_object ------------------ */ + +#ifndef GL_NV_shader_storage_buffer_object +#define GL_NV_shader_storage_buffer_object 1 + +#define GLEW_NV_shader_storage_buffer_object GLEW_GET_VAR(__GLEW_NV_shader_storage_buffer_object) + +#endif /* GL_NV_shader_storage_buffer_object */ + +/* ------------------- GL_NV_shader_subgroup_partitioned ------------------- */ + +#ifndef GL_NV_shader_subgroup_partitioned +#define GL_NV_shader_subgroup_partitioned 1 + +#define GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV 0x00000100 + +#define GLEW_NV_shader_subgroup_partitioned GLEW_GET_VAR(__GLEW_NV_shader_subgroup_partitioned) + +#endif /* GL_NV_shader_subgroup_partitioned */ + +/* --------------------- GL_NV_shader_texture_footprint -------------------- */ + +#ifndef GL_NV_shader_texture_footprint +#define GL_NV_shader_texture_footprint 1 + +#define GLEW_NV_shader_texture_footprint GLEW_GET_VAR(__GLEW_NV_shader_texture_footprint) + +#endif /* GL_NV_shader_texture_footprint */ + +/* ----------------------- GL_NV_shader_thread_group ----------------------- */ + +#ifndef GL_NV_shader_thread_group +#define GL_NV_shader_thread_group 1 + +#define GL_WARP_SIZE_NV 0x9339 +#define GL_WARPS_PER_SM_NV 0x933A +#define GL_SM_COUNT_NV 0x933B + +#define GLEW_NV_shader_thread_group GLEW_GET_VAR(__GLEW_NV_shader_thread_group) + +#endif /* GL_NV_shader_thread_group */ + +/* ---------------------- GL_NV_shader_thread_shuffle ---------------------- */ + +#ifndef GL_NV_shader_thread_shuffle +#define GL_NV_shader_thread_shuffle 1 + +#define GLEW_NV_shader_thread_shuffle GLEW_GET_VAR(__GLEW_NV_shader_thread_shuffle) + +#endif /* GL_NV_shader_thread_shuffle */ + +/* ------------------------ GL_NV_shading_rate_image ----------------------- */ + +#ifndef GL_NV_shading_rate_image +#define GL_NV_shading_rate_image 1 + +#define GL_SHADING_RATE_IMAGE_BINDING_NV 0x955B +#define GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV 0x955C +#define GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV 0x955D +#define GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV 0x955E +#define GL_MAX_COARSE_FRAGMENT_SAMPLES_NV 0x955F +#define GL_SHADING_RATE_IMAGE_NV 0x9563 +#define GL_SHADING_RATE_NO_INVOCATIONS_NV 0x9564 +#define GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV 0x9565 +#define GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV 0x9566 +#define GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV 0x9567 +#define GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV 0x9568 +#define GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV 0x9569 +#define GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV 0x956A +#define GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV 0x956B +#define GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV 0x956C +#define GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV 0x956D +#define GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV 0x956E +#define GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV 0x956F +#define GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV 0x95AE +#define GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV 0x95AF +#define GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV 0x95B0 + +typedef void (GLAPIENTRY * PFNGLBINDSHADINGRATEIMAGENVPROC) (GLuint texture); +typedef void (GLAPIENTRY * PFNGLGETSHADINGRATEIMAGEPALETTENVPROC) (GLuint viewport, GLuint entry, GLenum* rate); +typedef void (GLAPIENTRY * PFNGLGETSHADINGRATESAMPLELOCATIONIVNVPROC) (GLenum rate, GLuint samples, GLuint index, GLint* location); +typedef void (GLAPIENTRY * PFNGLSHADINGRATEIMAGEBARRIERNVPROC) (GLenum order); +typedef void (GLAPIENTRY * PFNGLSHADINGRATEIMAGEPALETTENVPROC) (GLuint viewport, GLuint first, GLsizei count, const GLenum* rates); +typedef void (GLAPIENTRY * PFNGLSHADINGRATESAMPLEORDERCUSTOMNVPROC) (GLenum rate, GLuint samples, const GLint* locations); + +#define glBindShadingRateImageNV GLEW_GET_FUN(__glewBindShadingRateImageNV) +#define glGetShadingRateImagePaletteNV GLEW_GET_FUN(__glewGetShadingRateImagePaletteNV) +#define glGetShadingRateSampleLocationivNV GLEW_GET_FUN(__glewGetShadingRateSampleLocationivNV) +#define glShadingRateImageBarrierNV GLEW_GET_FUN(__glewShadingRateImageBarrierNV) +#define glShadingRateImagePaletteNV GLEW_GET_FUN(__glewShadingRateImagePaletteNV) +#define glShadingRateSampleOrderCustomNV GLEW_GET_FUN(__glewShadingRateSampleOrderCustomNV) + +#define GLEW_NV_shading_rate_image GLEW_GET_VAR(__GLEW_NV_shading_rate_image) + +#endif /* GL_NV_shading_rate_image */ + +/* ---------------------- GL_NV_shadow_samplers_array ---------------------- */ + +#ifndef GL_NV_shadow_samplers_array +#define GL_NV_shadow_samplers_array 1 + +#define GL_SAMPLER_2D_ARRAY_SHADOW_NV 0x8DC4 + +#define GLEW_NV_shadow_samplers_array GLEW_GET_VAR(__GLEW_NV_shadow_samplers_array) + +#endif /* GL_NV_shadow_samplers_array */ + +/* ----------------------- GL_NV_shadow_samplers_cube ---------------------- */ + +#ifndef GL_NV_shadow_samplers_cube +#define GL_NV_shadow_samplers_cube 1 + +#define GL_SAMPLER_CUBE_SHADOW_NV 0x8DC5 + +#define GLEW_NV_shadow_samplers_cube GLEW_GET_VAR(__GLEW_NV_shadow_samplers_cube) + +#endif /* GL_NV_shadow_samplers_cube */ + +/* ---------------------- GL_NV_stereo_view_rendering ---------------------- */ + +#ifndef GL_NV_stereo_view_rendering +#define GL_NV_stereo_view_rendering 1 + +#define GLEW_NV_stereo_view_rendering GLEW_GET_VAR(__GLEW_NV_stereo_view_rendering) + +#endif /* GL_NV_stereo_view_rendering */ + +/* ---------------------- GL_NV_tessellation_program5 ---------------------- */ + +#ifndef GL_NV_tessellation_program5 +#define GL_NV_tessellation_program5 1 + +#define GL_MAX_PROGRAM_PATCH_ATTRIBS_NV 0x86D8 +#define GL_TESS_CONTROL_PROGRAM_NV 0x891E +#define GL_TESS_EVALUATION_PROGRAM_NV 0x891F +#define GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV 0x8C74 +#define GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV 0x8C75 + +#define GLEW_NV_tessellation_program5 GLEW_GET_VAR(__GLEW_NV_tessellation_program5) + +#endif /* GL_NV_tessellation_program5 */ + +/* -------------------------- GL_NV_texgen_emboss -------------------------- */ + +#ifndef GL_NV_texgen_emboss +#define GL_NV_texgen_emboss 1 + +#define GL_EMBOSS_LIGHT_NV 0x855D +#define GL_EMBOSS_CONSTANT_NV 0x855E +#define GL_EMBOSS_MAP_NV 0x855F + +#define GLEW_NV_texgen_emboss GLEW_GET_VAR(__GLEW_NV_texgen_emboss) + +#endif /* GL_NV_texgen_emboss */ + +/* ------------------------ GL_NV_texgen_reflection ------------------------ */ + +#ifndef GL_NV_texgen_reflection +#define GL_NV_texgen_reflection 1 + +#define GL_NORMAL_MAP_NV 0x8511 +#define GL_REFLECTION_MAP_NV 0x8512 + +#define GLEW_NV_texgen_reflection GLEW_GET_VAR(__GLEW_NV_texgen_reflection) + +#endif /* GL_NV_texgen_reflection */ + +/* -------------------------- GL_NV_texture_array -------------------------- */ + +#ifndef GL_NV_texture_array +#define GL_NV_texture_array 1 + +#define GL_UNPACK_SKIP_IMAGES_NV 0x806D +#define GL_UNPACK_IMAGE_HEIGHT_NV 0x806E +#define GL_MAX_ARRAY_TEXTURE_LAYERS_NV 0x88FF +#define GL_TEXTURE_2D_ARRAY_NV 0x8C1A +#define GL_TEXTURE_BINDING_2D_ARRAY_NV 0x8C1D +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_NV 0x8CD4 +#define GL_SAMPLER_2D_ARRAY_NV 0x8DC1 + +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DNVPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DNVPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DNVPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERNVPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); +typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DNVPROC) (GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DNVPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); + +#define glCompressedTexImage3DNV GLEW_GET_FUN(__glewCompressedTexImage3DNV) +#define glCompressedTexSubImage3DNV GLEW_GET_FUN(__glewCompressedTexSubImage3DNV) +#define glCopyTexSubImage3DNV GLEW_GET_FUN(__glewCopyTexSubImage3DNV) +#define glFramebufferTextureLayerNV GLEW_GET_FUN(__glewFramebufferTextureLayerNV) +#define glTexImage3DNV GLEW_GET_FUN(__glewTexImage3DNV) +#define glTexSubImage3DNV GLEW_GET_FUN(__glewTexSubImage3DNV) + +#define GLEW_NV_texture_array GLEW_GET_VAR(__GLEW_NV_texture_array) + +#endif /* GL_NV_texture_array */ + +/* ------------------------- GL_NV_texture_barrier ------------------------- */ + +#ifndef GL_NV_texture_barrier +#define GL_NV_texture_barrier 1 + +typedef void (GLAPIENTRY * PFNGLTEXTUREBARRIERNVPROC) (void); + +#define glTextureBarrierNV GLEW_GET_FUN(__glewTextureBarrierNV) + +#define GLEW_NV_texture_barrier GLEW_GET_VAR(__GLEW_NV_texture_barrier) + +#endif /* GL_NV_texture_barrier */ + +/* ----------------------- GL_NV_texture_border_clamp ---------------------- */ + +#ifndef GL_NV_texture_border_clamp +#define GL_NV_texture_border_clamp 1 + +#define GL_TEXTURE_BORDER_COLOR_NV 0x1004 +#define GL_CLAMP_TO_BORDER_NV 0x812D + +#define GLEW_NV_texture_border_clamp GLEW_GET_VAR(__GLEW_NV_texture_border_clamp) + +#endif /* GL_NV_texture_border_clamp */ + +/* --------------------- GL_NV_texture_compression_latc -------------------- */ + +#ifndef GL_NV_texture_compression_latc +#define GL_NV_texture_compression_latc 1 + +#define GL_COMPRESSED_LUMINANCE_LATC1_NV 0x8C70 +#define GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_NV 0x8C71 +#define GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_NV 0x8C72 +#define GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_NV 0x8C73 + +#define GLEW_NV_texture_compression_latc GLEW_GET_VAR(__GLEW_NV_texture_compression_latc) + +#endif /* GL_NV_texture_compression_latc */ + +/* --------------------- GL_NV_texture_compression_s3tc -------------------- */ + +#ifndef GL_NV_texture_compression_s3tc +#define GL_NV_texture_compression_s3tc 1 + +#define GL_COMPRESSED_RGB_S3TC_DXT1_NV 0x83F0 +#define GL_COMPRESSED_RGBA_S3TC_DXT1_NV 0x83F1 +#define GL_COMPRESSED_RGBA_S3TC_DXT3_NV 0x83F2 +#define GL_COMPRESSED_RGBA_S3TC_DXT5_NV 0x83F3 + +#define GLEW_NV_texture_compression_s3tc GLEW_GET_VAR(__GLEW_NV_texture_compression_s3tc) + +#endif /* GL_NV_texture_compression_s3tc */ + +/* ----------------- GL_NV_texture_compression_s3tc_update ----------------- */ + +#ifndef GL_NV_texture_compression_s3tc_update +#define GL_NV_texture_compression_s3tc_update 1 + +#define GLEW_NV_texture_compression_s3tc_update GLEW_GET_VAR(__GLEW_NV_texture_compression_s3tc_update) + +#endif /* GL_NV_texture_compression_s3tc_update */ + +/* --------------------- GL_NV_texture_compression_vtc --------------------- */ + +#ifndef GL_NV_texture_compression_vtc +#define GL_NV_texture_compression_vtc 1 + +#define GLEW_NV_texture_compression_vtc GLEW_GET_VAR(__GLEW_NV_texture_compression_vtc) + +#endif /* GL_NV_texture_compression_vtc */ + +/* ----------------------- GL_NV_texture_env_combine4 ---------------------- */ + +#ifndef GL_NV_texture_env_combine4 +#define GL_NV_texture_env_combine4 1 + +#define GL_COMBINE4_NV 0x8503 +#define GL_SOURCE3_RGB_NV 0x8583 +#define GL_SOURCE3_ALPHA_NV 0x858B +#define GL_OPERAND3_RGB_NV 0x8593 +#define GL_OPERAND3_ALPHA_NV 0x859B + +#define GLEW_NV_texture_env_combine4 GLEW_GET_VAR(__GLEW_NV_texture_env_combine4) + +#endif /* GL_NV_texture_env_combine4 */ + +/* ---------------------- GL_NV_texture_expand_normal ---------------------- */ + +#ifndef GL_NV_texture_expand_normal +#define GL_NV_texture_expand_normal 1 + +#define GL_TEXTURE_UNSIGNED_REMAP_MODE_NV 0x888F + +#define GLEW_NV_texture_expand_normal GLEW_GET_VAR(__GLEW_NV_texture_expand_normal) + +#endif /* GL_NV_texture_expand_normal */ + +/* ----------------------- GL_NV_texture_multisample ----------------------- */ + +#ifndef GL_NV_texture_multisample +#define GL_NV_texture_multisample 1 + +#define GL_TEXTURE_COVERAGE_SAMPLES_NV 0x9045 +#define GL_TEXTURE_COLOR_SAMPLES_NV 0x9046 + +typedef void (GLAPIENTRY * PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations); +typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations); +typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC) (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations); +typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC) (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations); +typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC) (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations); +typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC) (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations); + +#define glTexImage2DMultisampleCoverageNV GLEW_GET_FUN(__glewTexImage2DMultisampleCoverageNV) +#define glTexImage3DMultisampleCoverageNV GLEW_GET_FUN(__glewTexImage3DMultisampleCoverageNV) +#define glTextureImage2DMultisampleCoverageNV GLEW_GET_FUN(__glewTextureImage2DMultisampleCoverageNV) +#define glTextureImage2DMultisampleNV GLEW_GET_FUN(__glewTextureImage2DMultisampleNV) +#define glTextureImage3DMultisampleCoverageNV GLEW_GET_FUN(__glewTextureImage3DMultisampleCoverageNV) +#define glTextureImage3DMultisampleNV GLEW_GET_FUN(__glewTextureImage3DMultisampleNV) + +#define GLEW_NV_texture_multisample GLEW_GET_VAR(__GLEW_NV_texture_multisample) + +#endif /* GL_NV_texture_multisample */ + +/* ---------------------- GL_NV_texture_npot_2D_mipmap --------------------- */ + +#ifndef GL_NV_texture_npot_2D_mipmap +#define GL_NV_texture_npot_2D_mipmap 1 + +#define GLEW_NV_texture_npot_2D_mipmap GLEW_GET_VAR(__GLEW_NV_texture_npot_2D_mipmap) + +#endif /* GL_NV_texture_npot_2D_mipmap */ + +/* ------------------------ GL_NV_texture_rectangle ------------------------ */ + +#ifndef GL_NV_texture_rectangle +#define GL_NV_texture_rectangle 1 + +#define GL_TEXTURE_RECTANGLE_NV 0x84F5 +#define GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6 +#define GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7 +#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8 + +#define GLEW_NV_texture_rectangle GLEW_GET_VAR(__GLEW_NV_texture_rectangle) + +#endif /* GL_NV_texture_rectangle */ + +/* ------------------- GL_NV_texture_rectangle_compressed ------------------ */ + +#ifndef GL_NV_texture_rectangle_compressed +#define GL_NV_texture_rectangle_compressed 1 + +#define GLEW_NV_texture_rectangle_compressed GLEW_GET_VAR(__GLEW_NV_texture_rectangle_compressed) + +#endif /* GL_NV_texture_rectangle_compressed */ + +/* -------------------------- GL_NV_texture_shader ------------------------- */ + +#ifndef GL_NV_texture_shader +#define GL_NV_texture_shader 1 + +#define GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864C +#define GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864D +#define GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864E +#define GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86D9 +#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA +#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB +#define GL_DSDT_MAG_INTENSITY_NV 0x86DC +#define GL_SHADER_CONSISTENT_NV 0x86DD +#define GL_TEXTURE_SHADER_NV 0x86DE +#define GL_SHADER_OPERATION_NV 0x86DF +#define GL_CULL_MODES_NV 0x86E0 +#define GL_OFFSET_TEXTURE_2D_MATRIX_NV 0x86E1 +#define GL_OFFSET_TEXTURE_MATRIX_NV 0x86E1 +#define GL_OFFSET_TEXTURE_2D_SCALE_NV 0x86E2 +#define GL_OFFSET_TEXTURE_SCALE_NV 0x86E2 +#define GL_OFFSET_TEXTURE_2D_BIAS_NV 0x86E3 +#define GL_OFFSET_TEXTURE_BIAS_NV 0x86E3 +#define GL_PREVIOUS_TEXTURE_INPUT_NV 0x86E4 +#define GL_CONST_EYE_NV 0x86E5 +#define GL_PASS_THROUGH_NV 0x86E6 +#define GL_CULL_FRAGMENT_NV 0x86E7 +#define GL_OFFSET_TEXTURE_2D_NV 0x86E8 +#define GL_DEPENDENT_AR_TEXTURE_2D_NV 0x86E9 +#define GL_DEPENDENT_GB_TEXTURE_2D_NV 0x86EA +#define GL_DOT_PRODUCT_NV 0x86EC +#define GL_DOT_PRODUCT_DEPTH_REPLACE_NV 0x86ED +#define GL_DOT_PRODUCT_TEXTURE_2D_NV 0x86EE +#define GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86F0 +#define GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86F1 +#define GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86F2 +#define GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86F3 +#define GL_HILO_NV 0x86F4 +#define GL_DSDT_NV 0x86F5 +#define GL_DSDT_MAG_NV 0x86F6 +#define GL_DSDT_MAG_VIB_NV 0x86F7 +#define GL_HILO16_NV 0x86F8 +#define GL_SIGNED_HILO_NV 0x86F9 +#define GL_SIGNED_HILO16_NV 0x86FA +#define GL_SIGNED_RGBA_NV 0x86FB +#define GL_SIGNED_RGBA8_NV 0x86FC +#define GL_SIGNED_RGB_NV 0x86FE +#define GL_SIGNED_RGB8_NV 0x86FF +#define GL_SIGNED_LUMINANCE_NV 0x8701 +#define GL_SIGNED_LUMINANCE8_NV 0x8702 +#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703 +#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704 +#define GL_SIGNED_ALPHA_NV 0x8705 +#define GL_SIGNED_ALPHA8_NV 0x8706 +#define GL_SIGNED_INTENSITY_NV 0x8707 +#define GL_SIGNED_INTENSITY8_NV 0x8708 +#define GL_DSDT8_NV 0x8709 +#define GL_DSDT8_MAG8_NV 0x870A +#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B +#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C +#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D +#define GL_HI_SCALE_NV 0x870E +#define GL_LO_SCALE_NV 0x870F +#define GL_DS_SCALE_NV 0x8710 +#define GL_DT_SCALE_NV 0x8711 +#define GL_MAGNITUDE_SCALE_NV 0x8712 +#define GL_VIBRANCE_SCALE_NV 0x8713 +#define GL_HI_BIAS_NV 0x8714 +#define GL_LO_BIAS_NV 0x8715 +#define GL_DS_BIAS_NV 0x8716 +#define GL_DT_BIAS_NV 0x8717 +#define GL_MAGNITUDE_BIAS_NV 0x8718 +#define GL_VIBRANCE_BIAS_NV 0x8719 +#define GL_TEXTURE_BORDER_VALUES_NV 0x871A +#define GL_TEXTURE_HI_SIZE_NV 0x871B +#define GL_TEXTURE_LO_SIZE_NV 0x871C +#define GL_TEXTURE_DS_SIZE_NV 0x871D +#define GL_TEXTURE_DT_SIZE_NV 0x871E +#define GL_TEXTURE_MAG_SIZE_NV 0x871F + +#define GLEW_NV_texture_shader GLEW_GET_VAR(__GLEW_NV_texture_shader) + +#endif /* GL_NV_texture_shader */ + +/* ------------------------- GL_NV_texture_shader2 ------------------------- */ + +#ifndef GL_NV_texture_shader2 +#define GL_NV_texture_shader2 1 + +#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA +#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB +#define GL_DSDT_MAG_INTENSITY_NV 0x86DC +#define GL_DOT_PRODUCT_TEXTURE_3D_NV 0x86EF +#define GL_HILO_NV 0x86F4 +#define GL_DSDT_NV 0x86F5 +#define GL_DSDT_MAG_NV 0x86F6 +#define GL_DSDT_MAG_VIB_NV 0x86F7 +#define GL_HILO16_NV 0x86F8 +#define GL_SIGNED_HILO_NV 0x86F9 +#define GL_SIGNED_HILO16_NV 0x86FA +#define GL_SIGNED_RGBA_NV 0x86FB +#define GL_SIGNED_RGBA8_NV 0x86FC +#define GL_SIGNED_RGB_NV 0x86FE +#define GL_SIGNED_RGB8_NV 0x86FF +#define GL_SIGNED_LUMINANCE_NV 0x8701 +#define GL_SIGNED_LUMINANCE8_NV 0x8702 +#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703 +#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704 +#define GL_SIGNED_ALPHA_NV 0x8705 +#define GL_SIGNED_ALPHA8_NV 0x8706 +#define GL_SIGNED_INTENSITY_NV 0x8707 +#define GL_SIGNED_INTENSITY8_NV 0x8708 +#define GL_DSDT8_NV 0x8709 +#define GL_DSDT8_MAG8_NV 0x870A +#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B +#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C +#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D + +#define GLEW_NV_texture_shader2 GLEW_GET_VAR(__GLEW_NV_texture_shader2) + +#endif /* GL_NV_texture_shader2 */ + +/* ------------------------- GL_NV_texture_shader3 ------------------------- */ + +#ifndef GL_NV_texture_shader3 +#define GL_NV_texture_shader3 1 + +#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV 0x8850 +#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV 0x8851 +#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8852 +#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV 0x8853 +#define GL_OFFSET_HILO_TEXTURE_2D_NV 0x8854 +#define GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV 0x8855 +#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV 0x8856 +#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8857 +#define GL_DEPENDENT_HILO_TEXTURE_2D_NV 0x8858 +#define GL_DEPENDENT_RGB_TEXTURE_3D_NV 0x8859 +#define GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV 0x885A +#define GL_DOT_PRODUCT_PASS_THROUGH_NV 0x885B +#define GL_DOT_PRODUCT_TEXTURE_1D_NV 0x885C +#define GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV 0x885D +#define GL_HILO8_NV 0x885E +#define GL_SIGNED_HILO8_NV 0x885F +#define GL_FORCE_BLUE_TO_ONE_NV 0x8860 + +#define GLEW_NV_texture_shader3 GLEW_GET_VAR(__GLEW_NV_texture_shader3) + +#endif /* GL_NV_texture_shader3 */ + +/* ------------------------ GL_NV_transform_feedback ----------------------- */ + +#ifndef GL_NV_transform_feedback +#define GL_NV_transform_feedback 1 + +#define GL_BACK_PRIMARY_COLOR_NV 0x8C77 +#define GL_BACK_SECONDARY_COLOR_NV 0x8C78 +#define GL_TEXTURE_COORD_NV 0x8C79 +#define GL_CLIP_DISTANCE_NV 0x8C7A +#define GL_VERTEX_ID_NV 0x8C7B +#define GL_PRIMITIVE_ID_NV 0x8C7C +#define GL_GENERIC_ATTRIB_NV 0x8C7D +#define GL_TRANSFORM_FEEDBACK_ATTRIBS_NV 0x8C7E +#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV 0x8C7F +#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV 0x8C80 +#define GL_ACTIVE_VARYINGS_NV 0x8C81 +#define GL_ACTIVE_VARYING_MAX_LENGTH_NV 0x8C82 +#define GL_TRANSFORM_FEEDBACK_VARYINGS_NV 0x8C83 +#define GL_TRANSFORM_FEEDBACK_BUFFER_START_NV 0x8C84 +#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV 0x8C85 +#define GL_TRANSFORM_FEEDBACK_RECORD_NV 0x8C86 +#define GL_PRIMITIVES_GENERATED_NV 0x8C87 +#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV 0x8C88 +#define GL_RASTERIZER_DISCARD_NV 0x8C89 +#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A +#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV 0x8C8B +#define GL_INTERLEAVED_ATTRIBS_NV 0x8C8C +#define GL_SEPARATE_ATTRIBS_NV 0x8C8D +#define GL_TRANSFORM_FEEDBACK_BUFFER_NV 0x8C8E +#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV 0x8C8F + +typedef void (GLAPIENTRY * PFNGLACTIVEVARYINGNVPROC) (GLuint program, const GLchar *name); +typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKNVPROC) (GLenum primitiveMode); +typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASENVPROC) (GLenum target, GLuint index, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSETNVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset); +typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGENVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); +typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKNVPROC) (void); +typedef void (GLAPIENTRY * PFNGLGETACTIVEVARYINGNVPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name); +typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC) (GLuint program, GLuint index, GLint *location); +typedef GLint (GLAPIENTRY * PFNGLGETVARYINGLOCATIONNVPROC) (GLuint program, const GLchar *name); +typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC) (GLuint count, const GLint *attribs, GLenum bufferMode); +typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC) (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode); + +#define glActiveVaryingNV GLEW_GET_FUN(__glewActiveVaryingNV) +#define glBeginTransformFeedbackNV GLEW_GET_FUN(__glewBeginTransformFeedbackNV) +#define glBindBufferBaseNV GLEW_GET_FUN(__glewBindBufferBaseNV) +#define glBindBufferOffsetNV GLEW_GET_FUN(__glewBindBufferOffsetNV) +#define glBindBufferRangeNV GLEW_GET_FUN(__glewBindBufferRangeNV) +#define glEndTransformFeedbackNV GLEW_GET_FUN(__glewEndTransformFeedbackNV) +#define glGetActiveVaryingNV GLEW_GET_FUN(__glewGetActiveVaryingNV) +#define glGetTransformFeedbackVaryingNV GLEW_GET_FUN(__glewGetTransformFeedbackVaryingNV) +#define glGetVaryingLocationNV GLEW_GET_FUN(__glewGetVaryingLocationNV) +#define glTransformFeedbackAttribsNV GLEW_GET_FUN(__glewTransformFeedbackAttribsNV) +#define glTransformFeedbackVaryingsNV GLEW_GET_FUN(__glewTransformFeedbackVaryingsNV) + +#define GLEW_NV_transform_feedback GLEW_GET_VAR(__GLEW_NV_transform_feedback) + +#endif /* GL_NV_transform_feedback */ + +/* ----------------------- GL_NV_transform_feedback2 ----------------------- */ + +#ifndef GL_NV_transform_feedback2 +#define GL_NV_transform_feedback2 1 + +#define GL_TRANSFORM_FEEDBACK_NV 0x8E22 +#define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV 0x8E23 +#define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV 0x8E24 +#define GL_TRANSFORM_FEEDBACK_BINDING_NV 0x8E25 + +typedef void (GLAPIENTRY * PFNGLBINDTRANSFORMFEEDBACKNVPROC) (GLenum target, GLuint id); +typedef void (GLAPIENTRY * PFNGLDELETETRANSFORMFEEDBACKSNVPROC) (GLsizei n, const GLuint* ids); +typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKNVPROC) (GLenum mode, GLuint id); +typedef void (GLAPIENTRY * PFNGLGENTRANSFORMFEEDBACKSNVPROC) (GLsizei n, GLuint* ids); +typedef GLboolean (GLAPIENTRY * PFNGLISTRANSFORMFEEDBACKNVPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLPAUSETRANSFORMFEEDBACKNVPROC) (void); +typedef void (GLAPIENTRY * PFNGLRESUMETRANSFORMFEEDBACKNVPROC) (void); + +#define glBindTransformFeedbackNV GLEW_GET_FUN(__glewBindTransformFeedbackNV) +#define glDeleteTransformFeedbacksNV GLEW_GET_FUN(__glewDeleteTransformFeedbacksNV) +#define glDrawTransformFeedbackNV GLEW_GET_FUN(__glewDrawTransformFeedbackNV) +#define glGenTransformFeedbacksNV GLEW_GET_FUN(__glewGenTransformFeedbacksNV) +#define glIsTransformFeedbackNV GLEW_GET_FUN(__glewIsTransformFeedbackNV) +#define glPauseTransformFeedbackNV GLEW_GET_FUN(__glewPauseTransformFeedbackNV) +#define glResumeTransformFeedbackNV GLEW_GET_FUN(__glewResumeTransformFeedbackNV) + +#define GLEW_NV_transform_feedback2 GLEW_GET_VAR(__GLEW_NV_transform_feedback2) + +#endif /* GL_NV_transform_feedback2 */ + +/* ------------------ GL_NV_uniform_buffer_unified_memory ------------------ */ + +#ifndef GL_NV_uniform_buffer_unified_memory +#define GL_NV_uniform_buffer_unified_memory 1 + +#define GL_UNIFORM_BUFFER_UNIFIED_NV 0x936E +#define GL_UNIFORM_BUFFER_ADDRESS_NV 0x936F +#define GL_UNIFORM_BUFFER_LENGTH_NV 0x9370 + +#define GLEW_NV_uniform_buffer_unified_memory GLEW_GET_VAR(__GLEW_NV_uniform_buffer_unified_memory) + +#endif /* GL_NV_uniform_buffer_unified_memory */ + +/* -------------------------- GL_NV_vdpau_interop -------------------------- */ + +#ifndef GL_NV_vdpau_interop +#define GL_NV_vdpau_interop 1 + +#define GL_SURFACE_STATE_NV 0x86EB +#define GL_SURFACE_REGISTERED_NV 0x86FD +#define GL_SURFACE_MAPPED_NV 0x8700 +#define GL_WRITE_DISCARD_NV 0x88BE + +typedef GLintptr GLvdpauSurfaceNV; + +typedef void (GLAPIENTRY * PFNGLVDPAUFININVPROC) (void); +typedef void (GLAPIENTRY * PFNGLVDPAUGETSURFACEIVNVPROC) (GLvdpauSurfaceNV surface, GLenum pname, GLsizei bufSize, GLsizei* length, GLint *values); +typedef void (GLAPIENTRY * PFNGLVDPAUINITNVPROC) (const void* vdpDevice, const void*getProcAddress); +typedef void (GLAPIENTRY * PFNGLVDPAUISSURFACENVPROC) (GLvdpauSurfaceNV surface); +typedef void (GLAPIENTRY * PFNGLVDPAUMAPSURFACESNVPROC) (GLsizei numSurfaces, const GLvdpauSurfaceNV* surfaces); +typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC) (const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames); +typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTERVIDEOSURFACENVPROC) (const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames); +typedef void (GLAPIENTRY * PFNGLVDPAUSURFACEACCESSNVPROC) (GLvdpauSurfaceNV surface, GLenum access); +typedef void (GLAPIENTRY * PFNGLVDPAUUNMAPSURFACESNVPROC) (GLsizei numSurface, const GLvdpauSurfaceNV* surfaces); +typedef void (GLAPIENTRY * PFNGLVDPAUUNREGISTERSURFACENVPROC) (GLvdpauSurfaceNV surface); + +#define glVDPAUFiniNV GLEW_GET_FUN(__glewVDPAUFiniNV) +#define glVDPAUGetSurfaceivNV GLEW_GET_FUN(__glewVDPAUGetSurfaceivNV) +#define glVDPAUInitNV GLEW_GET_FUN(__glewVDPAUInitNV) +#define glVDPAUIsSurfaceNV GLEW_GET_FUN(__glewVDPAUIsSurfaceNV) +#define glVDPAUMapSurfacesNV GLEW_GET_FUN(__glewVDPAUMapSurfacesNV) +#define glVDPAURegisterOutputSurfaceNV GLEW_GET_FUN(__glewVDPAURegisterOutputSurfaceNV) +#define glVDPAURegisterVideoSurfaceNV GLEW_GET_FUN(__glewVDPAURegisterVideoSurfaceNV) +#define glVDPAUSurfaceAccessNV GLEW_GET_FUN(__glewVDPAUSurfaceAccessNV) +#define glVDPAUUnmapSurfacesNV GLEW_GET_FUN(__glewVDPAUUnmapSurfacesNV) +#define glVDPAUUnregisterSurfaceNV GLEW_GET_FUN(__glewVDPAUUnregisterSurfaceNV) + +#define GLEW_NV_vdpau_interop GLEW_GET_VAR(__GLEW_NV_vdpau_interop) + +#endif /* GL_NV_vdpau_interop */ + +/* -------------------------- GL_NV_vdpau_interop2 ------------------------- */ + +#ifndef GL_NV_vdpau_interop2 +#define GL_NV_vdpau_interop2 1 + +typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTERVIDEOSURFACEWITHPICTURESTRUCTURENVPROC) (const void *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames, GLboolean isFrameStructure); + +#define glVDPAURegisterVideoSurfaceWithPictureStructureNV GLEW_GET_FUN(__glewVDPAURegisterVideoSurfaceWithPictureStructureNV) + +#define GLEW_NV_vdpau_interop2 GLEW_GET_VAR(__GLEW_NV_vdpau_interop2) + +#endif /* GL_NV_vdpau_interop2 */ + +/* ------------------------ GL_NV_vertex_array_range ----------------------- */ + +#ifndef GL_NV_vertex_array_range +#define GL_NV_vertex_array_range 1 + +#define GL_VERTEX_ARRAY_RANGE_NV 0x851D +#define GL_VERTEX_ARRAY_RANGE_LENGTH_NV 0x851E +#define GL_VERTEX_ARRAY_RANGE_VALID_NV 0x851F +#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520 +#define GL_VERTEX_ARRAY_RANGE_POINTER_NV 0x8521 + +typedef void (GLAPIENTRY * PFNGLFLUSHVERTEXARRAYRANGENVPROC) (void); +typedef void (GLAPIENTRY * PFNGLVERTEXARRAYRANGENVPROC) (GLsizei length, void *pointer); + +#define glFlushVertexArrayRangeNV GLEW_GET_FUN(__glewFlushVertexArrayRangeNV) +#define glVertexArrayRangeNV GLEW_GET_FUN(__glewVertexArrayRangeNV) + +#define GLEW_NV_vertex_array_range GLEW_GET_VAR(__GLEW_NV_vertex_array_range) + +#endif /* GL_NV_vertex_array_range */ + +/* ----------------------- GL_NV_vertex_array_range2 ----------------------- */ + +#ifndef GL_NV_vertex_array_range2 +#define GL_NV_vertex_array_range2 1 + +#define GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533 + +#define GLEW_NV_vertex_array_range2 GLEW_GET_VAR(__GLEW_NV_vertex_array_range2) + +#endif /* GL_NV_vertex_array_range2 */ + +/* ------------------- GL_NV_vertex_attrib_integer_64bit ------------------- */ + +#ifndef GL_NV_vertex_attrib_integer_64bit +#define GL_NV_vertex_attrib_integer_64bit 1 + +#define GL_INT64_NV 0x140E +#define GL_UNSIGNED_INT64_NV 0x140F + +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLI64VNVPROC) (GLuint index, GLenum pname, GLint64EXT* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLUI64VNVPROC) (GLuint index, GLenum pname, GLuint64EXT* params); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1I64NVPROC) (GLuint index, GLint64EXT x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1I64VNVPROC) (GLuint index, const GLint64EXT* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64NVPROC) (GLuint index, GLuint64EXT x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64VNVPROC) (GLuint index, const GLuint64EXT* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2I64VNVPROC) (GLuint index, const GLint64EXT* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2UI64VNVPROC) (GLuint index, const GLuint64EXT* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3I64VNVPROC) (GLuint index, const GLint64EXT* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3UI64VNVPROC) (GLuint index, const GLuint64EXT* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4I64VNVPROC) (GLuint index, const GLint64EXT* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4UI64VNVPROC) (GLuint index, const GLuint64EXT* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride); + +#define glGetVertexAttribLi64vNV GLEW_GET_FUN(__glewGetVertexAttribLi64vNV) +#define glGetVertexAttribLui64vNV GLEW_GET_FUN(__glewGetVertexAttribLui64vNV) +#define glVertexAttribL1i64NV GLEW_GET_FUN(__glewVertexAttribL1i64NV) +#define glVertexAttribL1i64vNV GLEW_GET_FUN(__glewVertexAttribL1i64vNV) +#define glVertexAttribL1ui64NV GLEW_GET_FUN(__glewVertexAttribL1ui64NV) +#define glVertexAttribL1ui64vNV GLEW_GET_FUN(__glewVertexAttribL1ui64vNV) +#define glVertexAttribL2i64NV GLEW_GET_FUN(__glewVertexAttribL2i64NV) +#define glVertexAttribL2i64vNV GLEW_GET_FUN(__glewVertexAttribL2i64vNV) +#define glVertexAttribL2ui64NV GLEW_GET_FUN(__glewVertexAttribL2ui64NV) +#define glVertexAttribL2ui64vNV GLEW_GET_FUN(__glewVertexAttribL2ui64vNV) +#define glVertexAttribL3i64NV GLEW_GET_FUN(__glewVertexAttribL3i64NV) +#define glVertexAttribL3i64vNV GLEW_GET_FUN(__glewVertexAttribL3i64vNV) +#define glVertexAttribL3ui64NV GLEW_GET_FUN(__glewVertexAttribL3ui64NV) +#define glVertexAttribL3ui64vNV GLEW_GET_FUN(__glewVertexAttribL3ui64vNV) +#define glVertexAttribL4i64NV GLEW_GET_FUN(__glewVertexAttribL4i64NV) +#define glVertexAttribL4i64vNV GLEW_GET_FUN(__glewVertexAttribL4i64vNV) +#define glVertexAttribL4ui64NV GLEW_GET_FUN(__glewVertexAttribL4ui64NV) +#define glVertexAttribL4ui64vNV GLEW_GET_FUN(__glewVertexAttribL4ui64vNV) +#define glVertexAttribLFormatNV GLEW_GET_FUN(__glewVertexAttribLFormatNV) + +#define GLEW_NV_vertex_attrib_integer_64bit GLEW_GET_VAR(__GLEW_NV_vertex_attrib_integer_64bit) + +#endif /* GL_NV_vertex_attrib_integer_64bit */ + +/* ------------------- GL_NV_vertex_buffer_unified_memory ------------------ */ + +#ifndef GL_NV_vertex_buffer_unified_memory +#define GL_NV_vertex_buffer_unified_memory 1 + +#define GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV 0x8F1E +#define GL_ELEMENT_ARRAY_UNIFIED_NV 0x8F1F +#define GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV 0x8F20 +#define GL_VERTEX_ARRAY_ADDRESS_NV 0x8F21 +#define GL_NORMAL_ARRAY_ADDRESS_NV 0x8F22 +#define GL_COLOR_ARRAY_ADDRESS_NV 0x8F23 +#define GL_INDEX_ARRAY_ADDRESS_NV 0x8F24 +#define GL_TEXTURE_COORD_ARRAY_ADDRESS_NV 0x8F25 +#define GL_EDGE_FLAG_ARRAY_ADDRESS_NV 0x8F26 +#define GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV 0x8F27 +#define GL_FOG_COORD_ARRAY_ADDRESS_NV 0x8F28 +#define GL_ELEMENT_ARRAY_ADDRESS_NV 0x8F29 +#define GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV 0x8F2A +#define GL_VERTEX_ARRAY_LENGTH_NV 0x8F2B +#define GL_NORMAL_ARRAY_LENGTH_NV 0x8F2C +#define GL_COLOR_ARRAY_LENGTH_NV 0x8F2D +#define GL_INDEX_ARRAY_LENGTH_NV 0x8F2E +#define GL_TEXTURE_COORD_ARRAY_LENGTH_NV 0x8F2F +#define GL_EDGE_FLAG_ARRAY_LENGTH_NV 0x8F30 +#define GL_SECONDARY_COLOR_ARRAY_LENGTH_NV 0x8F31 +#define GL_FOG_COORD_ARRAY_LENGTH_NV 0x8F32 +#define GL_ELEMENT_ARRAY_LENGTH_NV 0x8F33 +#define GL_DRAW_INDIRECT_UNIFIED_NV 0x8F40 +#define GL_DRAW_INDIRECT_ADDRESS_NV 0x8F41 +#define GL_DRAW_INDIRECT_LENGTH_NV 0x8F42 + +typedef void (GLAPIENTRY * PFNGLBUFFERADDRESSRANGENVPROC) (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length); +typedef void (GLAPIENTRY * PFNGLCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLEDGEFLAGFORMATNVPROC) (GLsizei stride); +typedef void (GLAPIENTRY * PFNGLFOGCOORDFORMATNVPROC) (GLenum type, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLGETINTEGERUI64I_VNVPROC) (GLenum value, GLuint index, GLuint64EXT result[]); +typedef void (GLAPIENTRY * PFNGLINDEXFORMATNVPROC) (GLenum type, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLNORMALFORMATNVPROC) (GLenum type, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLTEXCOORDFORMATNVPROC) (GLint size, GLenum type, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride); +typedef void (GLAPIENTRY * PFNGLVERTEXFORMATNVPROC) (GLint size, GLenum type, GLsizei stride); + +#define glBufferAddressRangeNV GLEW_GET_FUN(__glewBufferAddressRangeNV) +#define glColorFormatNV GLEW_GET_FUN(__glewColorFormatNV) +#define glEdgeFlagFormatNV GLEW_GET_FUN(__glewEdgeFlagFormatNV) +#define glFogCoordFormatNV GLEW_GET_FUN(__glewFogCoordFormatNV) +#define glGetIntegerui64i_vNV GLEW_GET_FUN(__glewGetIntegerui64i_vNV) +#define glIndexFormatNV GLEW_GET_FUN(__glewIndexFormatNV) +#define glNormalFormatNV GLEW_GET_FUN(__glewNormalFormatNV) +#define glSecondaryColorFormatNV GLEW_GET_FUN(__glewSecondaryColorFormatNV) +#define glTexCoordFormatNV GLEW_GET_FUN(__glewTexCoordFormatNV) +#define glVertexAttribFormatNV GLEW_GET_FUN(__glewVertexAttribFormatNV) +#define glVertexAttribIFormatNV GLEW_GET_FUN(__glewVertexAttribIFormatNV) +#define glVertexFormatNV GLEW_GET_FUN(__glewVertexFormatNV) + +#define GLEW_NV_vertex_buffer_unified_memory GLEW_GET_VAR(__GLEW_NV_vertex_buffer_unified_memory) + +#endif /* GL_NV_vertex_buffer_unified_memory */ + +/* -------------------------- GL_NV_vertex_program ------------------------- */ + +#ifndef GL_NV_vertex_program +#define GL_NV_vertex_program 1 + +#define GL_VERTEX_PROGRAM_NV 0x8620 +#define GL_VERTEX_STATE_PROGRAM_NV 0x8621 +#define GL_ATTRIB_ARRAY_SIZE_NV 0x8623 +#define GL_ATTRIB_ARRAY_STRIDE_NV 0x8624 +#define GL_ATTRIB_ARRAY_TYPE_NV 0x8625 +#define GL_CURRENT_ATTRIB_NV 0x8626 +#define GL_PROGRAM_LENGTH_NV 0x8627 +#define GL_PROGRAM_STRING_NV 0x8628 +#define GL_MODELVIEW_PROJECTION_NV 0x8629 +#define GL_IDENTITY_NV 0x862A +#define GL_INVERSE_NV 0x862B +#define GL_TRANSPOSE_NV 0x862C +#define GL_INVERSE_TRANSPOSE_NV 0x862D +#define GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E +#define GL_MAX_TRACK_MATRICES_NV 0x862F +#define GL_MATRIX0_NV 0x8630 +#define GL_MATRIX1_NV 0x8631 +#define GL_MATRIX2_NV 0x8632 +#define GL_MATRIX3_NV 0x8633 +#define GL_MATRIX4_NV 0x8634 +#define GL_MATRIX5_NV 0x8635 +#define GL_MATRIX6_NV 0x8636 +#define GL_MATRIX7_NV 0x8637 +#define GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640 +#define GL_CURRENT_MATRIX_NV 0x8641 +#define GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642 +#define GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643 +#define GL_PROGRAM_PARAMETER_NV 0x8644 +#define GL_ATTRIB_ARRAY_POINTER_NV 0x8645 +#define GL_PROGRAM_TARGET_NV 0x8646 +#define GL_PROGRAM_RESIDENT_NV 0x8647 +#define GL_TRACK_MATRIX_NV 0x8648 +#define GL_TRACK_MATRIX_TRANSFORM_NV 0x8649 +#define GL_VERTEX_PROGRAM_BINDING_NV 0x864A +#define GL_PROGRAM_ERROR_POSITION_NV 0x864B +#define GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650 +#define GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651 +#define GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652 +#define GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653 +#define GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654 +#define GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655 +#define GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656 +#define GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657 +#define GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658 +#define GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659 +#define GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A +#define GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B +#define GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C +#define GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D +#define GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E +#define GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F +#define GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660 +#define GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661 +#define GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662 +#define GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663 +#define GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664 +#define GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665 +#define GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666 +#define GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667 +#define GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668 +#define GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669 +#define GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A +#define GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B +#define GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C +#define GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D +#define GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E +#define GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F +#define GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670 +#define GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671 +#define GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672 +#define GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673 +#define GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674 +#define GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675 +#define GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676 +#define GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677 +#define GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678 +#define GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679 +#define GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A +#define GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B +#define GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C +#define GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D +#define GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E +#define GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F + +typedef GLboolean (GLAPIENTRY * PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n, const GLuint* ids, GLboolean *residences); +typedef void (GLAPIENTRY * PFNGLBINDPROGRAMNVPROC) (GLenum target, GLuint id); +typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMSNVPROC) (GLsizei n, const GLuint* ids); +typedef void (GLAPIENTRY * PFNGLEXECUTEPROGRAMNVPROC) (GLenum target, GLuint id, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGENPROGRAMSNVPROC) (GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMPARAMETERDVNVPROC) (GLenum target, GLuint index, GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTRINGNVPROC) (GLuint id, GLenum pname, GLubyte* program); +typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVNVPROC) (GLuint id, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTRACKMATRIXIVNVPROC) (GLenum target, GLuint address, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVNVPROC) (GLuint index, GLenum pname, void** pointer); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVNVPROC) (GLuint index, GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVNVPROC) (GLuint index, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVNVPROC) (GLuint index, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMNVPROC) (GLuint id); +typedef void (GLAPIENTRY * PFNGLLOADPROGRAMNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte* program); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4DNVPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4DVNVPROC) (GLenum target, GLuint index, const GLdouble* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4FNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4FVNVPROC) (GLenum target, GLuint index, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERS4DVNVPROC) (GLenum target, GLuint index, GLsizei num, const GLdouble* params); +typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERS4FVNVPROC) (GLenum target, GLuint index, GLsizei num, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLREQUESTRESIDENTPROGRAMSNVPROC) (GLsizei n, GLuint* ids); +typedef void (GLAPIENTRY * PFNGLTRACKMATRIXNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DNVPROC) (GLuint index, GLdouble x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVNVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FNVPROC) (GLuint index, GLfloat x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVNVPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SNVPROC) (GLuint index, GLshort x); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVNVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DNVPROC) (GLuint index, GLdouble x, GLdouble y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVNVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FNVPROC) (GLuint index, GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVNVPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SNVPROC) (GLuint index, GLshort x, GLshort y); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVNVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVNVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVNVPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVNVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVNVPROC) (GLuint index, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVNVPROC) (GLuint index, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVNVPROC) (GLuint index, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVNVPROC) (GLuint index, const GLubyte* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1SVNVPROC) (GLuint index, GLsizei n, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2SVNVPROC) (GLuint index, GLsizei n, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3SVNVPROC) (GLuint index, GLsizei n, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4SVNVPROC) (GLuint index, GLsizei n, const GLshort* v); +typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4UBVNVPROC) (GLuint index, GLsizei n, const GLubyte* v); + +#define glAreProgramsResidentNV GLEW_GET_FUN(__glewAreProgramsResidentNV) +#define glBindProgramNV GLEW_GET_FUN(__glewBindProgramNV) +#define glDeleteProgramsNV GLEW_GET_FUN(__glewDeleteProgramsNV) +#define glExecuteProgramNV GLEW_GET_FUN(__glewExecuteProgramNV) +#define glGenProgramsNV GLEW_GET_FUN(__glewGenProgramsNV) +#define glGetProgramParameterdvNV GLEW_GET_FUN(__glewGetProgramParameterdvNV) +#define glGetProgramParameterfvNV GLEW_GET_FUN(__glewGetProgramParameterfvNV) +#define glGetProgramStringNV GLEW_GET_FUN(__glewGetProgramStringNV) +#define glGetProgramivNV GLEW_GET_FUN(__glewGetProgramivNV) +#define glGetTrackMatrixivNV GLEW_GET_FUN(__glewGetTrackMatrixivNV) +#define glGetVertexAttribPointervNV GLEW_GET_FUN(__glewGetVertexAttribPointervNV) +#define glGetVertexAttribdvNV GLEW_GET_FUN(__glewGetVertexAttribdvNV) +#define glGetVertexAttribfvNV GLEW_GET_FUN(__glewGetVertexAttribfvNV) +#define glGetVertexAttribivNV GLEW_GET_FUN(__glewGetVertexAttribivNV) +#define glIsProgramNV GLEW_GET_FUN(__glewIsProgramNV) +#define glLoadProgramNV GLEW_GET_FUN(__glewLoadProgramNV) +#define glProgramParameter4dNV GLEW_GET_FUN(__glewProgramParameter4dNV) +#define glProgramParameter4dvNV GLEW_GET_FUN(__glewProgramParameter4dvNV) +#define glProgramParameter4fNV GLEW_GET_FUN(__glewProgramParameter4fNV) +#define glProgramParameter4fvNV GLEW_GET_FUN(__glewProgramParameter4fvNV) +#define glProgramParameters4dvNV GLEW_GET_FUN(__glewProgramParameters4dvNV) +#define glProgramParameters4fvNV GLEW_GET_FUN(__glewProgramParameters4fvNV) +#define glRequestResidentProgramsNV GLEW_GET_FUN(__glewRequestResidentProgramsNV) +#define glTrackMatrixNV GLEW_GET_FUN(__glewTrackMatrixNV) +#define glVertexAttrib1dNV GLEW_GET_FUN(__glewVertexAttrib1dNV) +#define glVertexAttrib1dvNV GLEW_GET_FUN(__glewVertexAttrib1dvNV) +#define glVertexAttrib1fNV GLEW_GET_FUN(__glewVertexAttrib1fNV) +#define glVertexAttrib1fvNV GLEW_GET_FUN(__glewVertexAttrib1fvNV) +#define glVertexAttrib1sNV GLEW_GET_FUN(__glewVertexAttrib1sNV) +#define glVertexAttrib1svNV GLEW_GET_FUN(__glewVertexAttrib1svNV) +#define glVertexAttrib2dNV GLEW_GET_FUN(__glewVertexAttrib2dNV) +#define glVertexAttrib2dvNV GLEW_GET_FUN(__glewVertexAttrib2dvNV) +#define glVertexAttrib2fNV GLEW_GET_FUN(__glewVertexAttrib2fNV) +#define glVertexAttrib2fvNV GLEW_GET_FUN(__glewVertexAttrib2fvNV) +#define glVertexAttrib2sNV GLEW_GET_FUN(__glewVertexAttrib2sNV) +#define glVertexAttrib2svNV GLEW_GET_FUN(__glewVertexAttrib2svNV) +#define glVertexAttrib3dNV GLEW_GET_FUN(__glewVertexAttrib3dNV) +#define glVertexAttrib3dvNV GLEW_GET_FUN(__glewVertexAttrib3dvNV) +#define glVertexAttrib3fNV GLEW_GET_FUN(__glewVertexAttrib3fNV) +#define glVertexAttrib3fvNV GLEW_GET_FUN(__glewVertexAttrib3fvNV) +#define glVertexAttrib3sNV GLEW_GET_FUN(__glewVertexAttrib3sNV) +#define glVertexAttrib3svNV GLEW_GET_FUN(__glewVertexAttrib3svNV) +#define glVertexAttrib4dNV GLEW_GET_FUN(__glewVertexAttrib4dNV) +#define glVertexAttrib4dvNV GLEW_GET_FUN(__glewVertexAttrib4dvNV) +#define glVertexAttrib4fNV GLEW_GET_FUN(__glewVertexAttrib4fNV) +#define glVertexAttrib4fvNV GLEW_GET_FUN(__glewVertexAttrib4fvNV) +#define glVertexAttrib4sNV GLEW_GET_FUN(__glewVertexAttrib4sNV) +#define glVertexAttrib4svNV GLEW_GET_FUN(__glewVertexAttrib4svNV) +#define glVertexAttrib4ubNV GLEW_GET_FUN(__glewVertexAttrib4ubNV) +#define glVertexAttrib4ubvNV GLEW_GET_FUN(__glewVertexAttrib4ubvNV) +#define glVertexAttribPointerNV GLEW_GET_FUN(__glewVertexAttribPointerNV) +#define glVertexAttribs1dvNV GLEW_GET_FUN(__glewVertexAttribs1dvNV) +#define glVertexAttribs1fvNV GLEW_GET_FUN(__glewVertexAttribs1fvNV) +#define glVertexAttribs1svNV GLEW_GET_FUN(__glewVertexAttribs1svNV) +#define glVertexAttribs2dvNV GLEW_GET_FUN(__glewVertexAttribs2dvNV) +#define glVertexAttribs2fvNV GLEW_GET_FUN(__glewVertexAttribs2fvNV) +#define glVertexAttribs2svNV GLEW_GET_FUN(__glewVertexAttribs2svNV) +#define glVertexAttribs3dvNV GLEW_GET_FUN(__glewVertexAttribs3dvNV) +#define glVertexAttribs3fvNV GLEW_GET_FUN(__glewVertexAttribs3fvNV) +#define glVertexAttribs3svNV GLEW_GET_FUN(__glewVertexAttribs3svNV) +#define glVertexAttribs4dvNV GLEW_GET_FUN(__glewVertexAttribs4dvNV) +#define glVertexAttribs4fvNV GLEW_GET_FUN(__glewVertexAttribs4fvNV) +#define glVertexAttribs4svNV GLEW_GET_FUN(__glewVertexAttribs4svNV) +#define glVertexAttribs4ubvNV GLEW_GET_FUN(__glewVertexAttribs4ubvNV) + +#define GLEW_NV_vertex_program GLEW_GET_VAR(__GLEW_NV_vertex_program) + +#endif /* GL_NV_vertex_program */ + +/* ------------------------ GL_NV_vertex_program1_1 ------------------------ */ + +#ifndef GL_NV_vertex_program1_1 +#define GL_NV_vertex_program1_1 1 + +#define GLEW_NV_vertex_program1_1 GLEW_GET_VAR(__GLEW_NV_vertex_program1_1) + +#endif /* GL_NV_vertex_program1_1 */ + +/* ------------------------- GL_NV_vertex_program2 ------------------------- */ + +#ifndef GL_NV_vertex_program2 +#define GL_NV_vertex_program2 1 + +#define GLEW_NV_vertex_program2 GLEW_GET_VAR(__GLEW_NV_vertex_program2) + +#endif /* GL_NV_vertex_program2 */ + +/* ---------------------- GL_NV_vertex_program2_option --------------------- */ + +#ifndef GL_NV_vertex_program2_option +#define GL_NV_vertex_program2_option 1 + +#define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4 +#define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5 + +#define GLEW_NV_vertex_program2_option GLEW_GET_VAR(__GLEW_NV_vertex_program2_option) + +#endif /* GL_NV_vertex_program2_option */ + +/* ------------------------- GL_NV_vertex_program3 ------------------------- */ + +#ifndef GL_NV_vertex_program3 +#define GL_NV_vertex_program3 1 + +#define MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C + +#define GLEW_NV_vertex_program3 GLEW_GET_VAR(__GLEW_NV_vertex_program3) + +#endif /* GL_NV_vertex_program3 */ + +/* ------------------------- GL_NV_vertex_program4 ------------------------- */ + +#ifndef GL_NV_vertex_program4 +#define GL_NV_vertex_program4 1 + +#define GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV 0x88FD + +#define GLEW_NV_vertex_program4 GLEW_GET_VAR(__GLEW_NV_vertex_program4) + +#endif /* GL_NV_vertex_program4 */ + +/* -------------------------- GL_NV_video_capture -------------------------- */ + +#ifndef GL_NV_video_capture +#define GL_NV_video_capture 1 + +#define GL_VIDEO_BUFFER_NV 0x9020 +#define GL_VIDEO_BUFFER_BINDING_NV 0x9021 +#define GL_FIELD_UPPER_NV 0x9022 +#define GL_FIELD_LOWER_NV 0x9023 +#define GL_NUM_VIDEO_CAPTURE_STREAMS_NV 0x9024 +#define GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV 0x9025 +#define GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV 0x9026 +#define GL_LAST_VIDEO_CAPTURE_STATUS_NV 0x9027 +#define GL_VIDEO_BUFFER_PITCH_NV 0x9028 +#define GL_VIDEO_COLOR_CONVERSION_MATRIX_NV 0x9029 +#define GL_VIDEO_COLOR_CONVERSION_MAX_NV 0x902A +#define GL_VIDEO_COLOR_CONVERSION_MIN_NV 0x902B +#define GL_VIDEO_COLOR_CONVERSION_OFFSET_NV 0x902C +#define GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV 0x902D +#define GL_PARTIAL_SUCCESS_NV 0x902E +#define GL_SUCCESS_NV 0x902F +#define GL_FAILURE_NV 0x9030 +#define GL_YCBYCR8_422_NV 0x9031 +#define GL_YCBAYCR8A_4224_NV 0x9032 +#define GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV 0x9033 +#define GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV 0x9034 +#define GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV 0x9035 +#define GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV 0x9036 +#define GL_Z4Y12Z4CB12Z4CR12_444_NV 0x9037 +#define GL_VIDEO_CAPTURE_FRAME_WIDTH_NV 0x9038 +#define GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV 0x9039 +#define GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV 0x903A +#define GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV 0x903B +#define GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV 0x903C + +typedef void (GLAPIENTRY * PFNGLBEGINVIDEOCAPTURENVPROC) (GLuint video_capture_slot); +typedef void (GLAPIENTRY * PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLintptrARB offset); +typedef void (GLAPIENTRY * PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture); +typedef void (GLAPIENTRY * PFNGLENDVIDEOCAPTURENVPROC) (GLuint video_capture_slot); +typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble* params); +typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTUREIVNVPROC) (GLuint video_capture_slot, GLenum pname, GLint* params); +typedef GLenum (GLAPIENTRY * PFNGLVIDEOCAPTURENVPROC) (GLuint video_capture_slot, GLuint* sequence_num, GLuint64EXT *capture_time); +typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble* params); +typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint* params); + +#define glBeginVideoCaptureNV GLEW_GET_FUN(__glewBeginVideoCaptureNV) +#define glBindVideoCaptureStreamBufferNV GLEW_GET_FUN(__glewBindVideoCaptureStreamBufferNV) +#define glBindVideoCaptureStreamTextureNV GLEW_GET_FUN(__glewBindVideoCaptureStreamTextureNV) +#define glEndVideoCaptureNV GLEW_GET_FUN(__glewEndVideoCaptureNV) +#define glGetVideoCaptureStreamdvNV GLEW_GET_FUN(__glewGetVideoCaptureStreamdvNV) +#define glGetVideoCaptureStreamfvNV GLEW_GET_FUN(__glewGetVideoCaptureStreamfvNV) +#define glGetVideoCaptureStreamivNV GLEW_GET_FUN(__glewGetVideoCaptureStreamivNV) +#define glGetVideoCaptureivNV GLEW_GET_FUN(__glewGetVideoCaptureivNV) +#define glVideoCaptureNV GLEW_GET_FUN(__glewVideoCaptureNV) +#define glVideoCaptureStreamParameterdvNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterdvNV) +#define glVideoCaptureStreamParameterfvNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterfvNV) +#define glVideoCaptureStreamParameterivNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterivNV) + +#define GLEW_NV_video_capture GLEW_GET_VAR(__GLEW_NV_video_capture) + +#endif /* GL_NV_video_capture */ + +/* -------------------------- GL_NV_viewport_array ------------------------- */ + +#ifndef GL_NV_viewport_array +#define GL_NV_viewport_array 1 + +#define GL_DEPTH_RANGE 0x0B70 +#define GL_VIEWPORT 0x0BA2 +#define GL_SCISSOR_BOX 0x0C10 +#define GL_SCISSOR_TEST 0x0C11 +#define GL_MAX_VIEWPORTS_NV 0x825B +#define GL_VIEWPORT_SUBPIXEL_BITS_NV 0x825C +#define GL_VIEWPORT_BOUNDS_RANGE_NV 0x825D +#define GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV 0x825F + +typedef void (GLAPIENTRY * PFNGLDEPTHRANGEARRAYFVNVPROC) (GLuint first, GLsizei count, const GLfloat * v); +typedef void (GLAPIENTRY * PFNGLDEPTHRANGEINDEXEDFNVPROC) (GLuint index, GLfloat n, GLfloat f); +typedef void (GLAPIENTRY * PFNGLDISABLEINVPROC) (GLenum target, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEINVPROC) (GLenum target, GLuint index); +typedef void (GLAPIENTRY * PFNGLGETFLOATI_VNVPROC) (GLenum target, GLuint index, GLfloat* data); +typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDINVPROC) (GLenum target, GLuint index); +typedef void (GLAPIENTRY * PFNGLSCISSORARRAYVNVPROC) (GLuint first, GLsizei count, const GLint * v); +typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDNVPROC) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDVNVPROC) (GLuint index, const GLint * v); +typedef void (GLAPIENTRY * PFNGLVIEWPORTARRAYVNVPROC) (GLuint first, GLsizei count, const GLfloat * v); +typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h); +typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFVNVPROC) (GLuint index, const GLfloat * v); + +#define glDepthRangeArrayfvNV GLEW_GET_FUN(__glewDepthRangeArrayfvNV) +#define glDepthRangeIndexedfNV GLEW_GET_FUN(__glewDepthRangeIndexedfNV) +#define glDisableiNV GLEW_GET_FUN(__glewDisableiNV) +#define glEnableiNV GLEW_GET_FUN(__glewEnableiNV) +#define glGetFloati_vNV GLEW_GET_FUN(__glewGetFloati_vNV) +#define glIsEnablediNV GLEW_GET_FUN(__glewIsEnablediNV) +#define glScissorArrayvNV GLEW_GET_FUN(__glewScissorArrayvNV) +#define glScissorIndexedNV GLEW_GET_FUN(__glewScissorIndexedNV) +#define glScissorIndexedvNV GLEW_GET_FUN(__glewScissorIndexedvNV) +#define glViewportArrayvNV GLEW_GET_FUN(__glewViewportArrayvNV) +#define glViewportIndexedfNV GLEW_GET_FUN(__glewViewportIndexedfNV) +#define glViewportIndexedfvNV GLEW_GET_FUN(__glewViewportIndexedfvNV) + +#define GLEW_NV_viewport_array GLEW_GET_VAR(__GLEW_NV_viewport_array) + +#endif /* GL_NV_viewport_array */ + +/* ------------------------- GL_NV_viewport_array2 ------------------------- */ + +#ifndef GL_NV_viewport_array2 +#define GL_NV_viewport_array2 1 + +#define GLEW_NV_viewport_array2 GLEW_GET_VAR(__GLEW_NV_viewport_array2) + +#endif /* GL_NV_viewport_array2 */ + +/* ------------------------- GL_NV_viewport_swizzle ------------------------ */ + +#ifndef GL_NV_viewport_swizzle +#define GL_NV_viewport_swizzle 1 + +#define GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV 0x9350 +#define GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV 0x9351 +#define GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV 0x9352 +#define GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV 0x9353 +#define GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV 0x9354 +#define GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV 0x9355 +#define GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV 0x9356 +#define GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV 0x9357 +#define GL_VIEWPORT_SWIZZLE_X_NV 0x9358 +#define GL_VIEWPORT_SWIZZLE_Y_NV 0x9359 +#define GL_VIEWPORT_SWIZZLE_Z_NV 0x935A +#define GL_VIEWPORT_SWIZZLE_W_NV 0x935B + +typedef void (GLAPIENTRY * PFNGLVIEWPORTSWIZZLENVPROC) (GLuint index, GLenum swizzlex, GLenum swizzley, GLenum swizzlez, GLenum swizzlew); + +#define glViewportSwizzleNV GLEW_GET_FUN(__glewViewportSwizzleNV) + +#define GLEW_NV_viewport_swizzle GLEW_GET_VAR(__GLEW_NV_viewport_swizzle) + +#endif /* GL_NV_viewport_swizzle */ + +/* ---------------------------- GL_OES_EGL_image --------------------------- */ + +#ifndef GL_OES_EGL_image +#define GL_OES_EGL_image 1 + +typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); +typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); + +#define glEGLImageTargetRenderbufferStorageOES GLEW_GET_FUN(__glewEGLImageTargetRenderbufferStorageOES) +#define glEGLImageTargetTexture2DOES GLEW_GET_FUN(__glewEGLImageTargetTexture2DOES) + +#define GLEW_OES_EGL_image GLEW_GET_VAR(__GLEW_OES_EGL_image) + +#endif /* GL_OES_EGL_image */ + +/* ----------------------- GL_OES_EGL_image_external ----------------------- */ + +#ifndef GL_OES_EGL_image_external +#define GL_OES_EGL_image_external 1 + +#define GL_TEXTURE_EXTERNAL_OES 0x8D65 +#define GL_SAMPLER_EXTERNAL_OES 0x8D66 +#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 +#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 + +#define GLEW_OES_EGL_image_external GLEW_GET_VAR(__GLEW_OES_EGL_image_external) + +#endif /* GL_OES_EGL_image_external */ + +/* -------------------- GL_OES_EGL_image_external_essl3 -------------------- */ + +#ifndef GL_OES_EGL_image_external_essl3 +#define GL_OES_EGL_image_external_essl3 1 + +#define GLEW_OES_EGL_image_external_essl3 GLEW_GET_VAR(__GLEW_OES_EGL_image_external_essl3) + +#endif /* GL_OES_EGL_image_external_essl3 */ + +/* --------------------- GL_OES_blend_equation_separate -------------------- */ + +#ifndef GL_OES_blend_equation_separate +#define GL_OES_blend_equation_separate 1 + +#define GL_BLEND_EQUATION_RGB_OES 0x8009 +#define GL_BLEND_EQUATION_ALPHA_OES 0x883D + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha); + +#define glBlendEquationSeparateOES GLEW_GET_FUN(__glewBlendEquationSeparateOES) + +#define GLEW_OES_blend_equation_separate GLEW_GET_VAR(__GLEW_OES_blend_equation_separate) + +#endif /* GL_OES_blend_equation_separate */ + +/* ----------------------- GL_OES_blend_func_separate ---------------------- */ + +#ifndef GL_OES_blend_func_separate +#define GL_OES_blend_func_separate 1 + +#define GL_BLEND_DST_RGB_OES 0x80C8 +#define GL_BLEND_SRC_RGB_OES 0x80C9 +#define GL_BLEND_DST_ALPHA_OES 0x80CA +#define GL_BLEND_SRC_ALPHA_OES 0x80CB + +typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); + +#define glBlendFuncSeparateOES GLEW_GET_FUN(__glewBlendFuncSeparateOES) + +#define GLEW_OES_blend_func_separate GLEW_GET_VAR(__GLEW_OES_blend_func_separate) + +#endif /* GL_OES_blend_func_separate */ + +/* ------------------------- GL_OES_blend_subtract ------------------------- */ + +#ifndef GL_OES_blend_subtract +#define GL_OES_blend_subtract 1 + +#define GL_FUNC_ADD_OES 0x8006 +#define GL_BLEND_EQUATION_OES 0x8009 +#define GL_FUNC_SUBTRACT_OES 0x800A +#define GL_FUNC_REVERSE_SUBTRACT_OES 0x800B + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONOESPROC) (GLenum mode); + +#define glBlendEquationOES GLEW_GET_FUN(__glewBlendEquationOES) + +#define GLEW_OES_blend_subtract GLEW_GET_VAR(__GLEW_OES_blend_subtract) + +#endif /* GL_OES_blend_subtract */ + +/* ------------------------ GL_OES_byte_coordinates ------------------------ */ + +#ifndef GL_OES_byte_coordinates +#define GL_OES_byte_coordinates 1 + +#define GLEW_OES_byte_coordinates GLEW_GET_VAR(__GLEW_OES_byte_coordinates) + +#endif /* GL_OES_byte_coordinates */ + +/* ------------------ GL_OES_compressed_ETC1_RGB8_texture ------------------ */ + +#ifndef GL_OES_compressed_ETC1_RGB8_texture +#define GL_OES_compressed_ETC1_RGB8_texture 1 + +#define GL_ETC1_RGB8_OES 0x8D64 + +#define GLEW_OES_compressed_ETC1_RGB8_texture GLEW_GET_VAR(__GLEW_OES_compressed_ETC1_RGB8_texture) + +#endif /* GL_OES_compressed_ETC1_RGB8_texture */ + +/* ------------------- GL_OES_compressed_paletted_texture ------------------ */ + +#ifndef GL_OES_compressed_paletted_texture +#define GL_OES_compressed_paletted_texture 1 + +#define GL_PALETTE4_RGB8_OES 0x8B90 +#define GL_PALETTE4_RGBA8_OES 0x8B91 +#define GL_PALETTE4_R5_G6_B5_OES 0x8B92 +#define GL_PALETTE4_RGBA4_OES 0x8B93 +#define GL_PALETTE4_RGB5_A1_OES 0x8B94 +#define GL_PALETTE8_RGB8_OES 0x8B95 +#define GL_PALETTE8_RGBA8_OES 0x8B96 +#define GL_PALETTE8_R5_G6_B5_OES 0x8B97 +#define GL_PALETTE8_RGBA4_OES 0x8B98 +#define GL_PALETTE8_RGB5_A1_OES 0x8B99 + +#define GLEW_OES_compressed_paletted_texture GLEW_GET_VAR(__GLEW_OES_compressed_paletted_texture) + +#endif /* GL_OES_compressed_paletted_texture */ + +/* --------------------------- GL_OES_copy_image --------------------------- */ + +#ifndef GL_OES_copy_image +#define GL_OES_copy_image 1 + +typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATAOESPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); + +#define glCopyImageSubDataOES GLEW_GET_FUN(__glewCopyImageSubDataOES) + +#define GLEW_OES_copy_image GLEW_GET_VAR(__GLEW_OES_copy_image) + +#endif /* GL_OES_copy_image */ + +/* ----------------------------- GL_OES_depth24 ---------------------------- */ + +#ifndef GL_OES_depth24 +#define GL_OES_depth24 1 + +#define GL_DEPTH_COMPONENT24_OES 0x81A6 + +#define GLEW_OES_depth24 GLEW_GET_VAR(__GLEW_OES_depth24) + +#endif /* GL_OES_depth24 */ + +/* ----------------------------- GL_OES_depth32 ---------------------------- */ + +#ifndef GL_OES_depth32 +#define GL_OES_depth32 1 + +#define GL_DEPTH_COMPONENT32_OES 0x81A7 + +#define GLEW_OES_depth32 GLEW_GET_VAR(__GLEW_OES_depth32) + +#endif /* GL_OES_depth32 */ + +/* -------------------------- GL_OES_depth_texture ------------------------- */ + +#ifndef GL_OES_depth_texture +#define GL_OES_depth_texture 1 + +#define GL_UNSIGNED_SHORT 0x1403 +#define GL_UNSIGNED_INT 0x1405 +#define GL_DEPTH_COMPONENT 0x1902 + +#define GLEW_OES_depth_texture GLEW_GET_VAR(__GLEW_OES_depth_texture) + +#endif /* GL_OES_depth_texture */ + +/* --------------------- GL_OES_depth_texture_cube_map --------------------- */ + +#ifndef GL_OES_depth_texture_cube_map +#define GL_OES_depth_texture_cube_map 1 + +#define GL_UNSIGNED_SHORT 0x1403 +#define GL_UNSIGNED_INT 0x1405 +#define GL_DEPTH_COMPONENT 0x1902 +#define GL_DEPTH_STENCIL_OES 0x84F9 +#define GL_DEPTH24_STENCIL8_OES 0x88F0 + +#define GLEW_OES_depth_texture_cube_map GLEW_GET_VAR(__GLEW_OES_depth_texture_cube_map) + +#endif /* GL_OES_depth_texture_cube_map */ + +/* ---------------------- GL_OES_draw_buffers_indexed ---------------------- */ + +#ifndef GL_OES_draw_buffers_indexed +#define GL_OES_draw_buffers_indexed 1 + +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIOESPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIOESPROC) (GLuint buf, GLenum mode); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIOESPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); +typedef void (GLAPIENTRY * PFNGLBLENDFUNCIOESPROC) (GLuint buf, GLenum src, GLenum dst); +typedef void (GLAPIENTRY * PFNGLCOLORMASKIOESPROC) (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); +typedef void (GLAPIENTRY * PFNGLDISABLEIOESPROC) (GLenum target, GLuint index); +typedef void (GLAPIENTRY * PFNGLENABLEIOESPROC) (GLenum target, GLuint index); +typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDIOESPROC) (GLenum target, GLuint index); + +#define glBlendEquationSeparateiOES GLEW_GET_FUN(__glewBlendEquationSeparateiOES) +#define glBlendEquationiOES GLEW_GET_FUN(__glewBlendEquationiOES) +#define glBlendFuncSeparateiOES GLEW_GET_FUN(__glewBlendFuncSeparateiOES) +#define glBlendFunciOES GLEW_GET_FUN(__glewBlendFunciOES) +#define glColorMaskiOES GLEW_GET_FUN(__glewColorMaskiOES) +#define glDisableiOES GLEW_GET_FUN(__glewDisableiOES) +#define glEnableiOES GLEW_GET_FUN(__glewEnableiOES) +#define glIsEnablediOES GLEW_GET_FUN(__glewIsEnablediOES) + +#define GLEW_OES_draw_buffers_indexed GLEW_GET_VAR(__GLEW_OES_draw_buffers_indexed) + +#endif /* GL_OES_draw_buffers_indexed */ + +/* -------------------------- GL_OES_draw_texture -------------------------- */ + +#ifndef GL_OES_draw_texture +#define GL_OES_draw_texture 1 + +#define GL_TEXTURE_CROP_RECT_OES 0x8B9D + +#define GLEW_OES_draw_texture GLEW_GET_VAR(__GLEW_OES_draw_texture) + +#endif /* GL_OES_draw_texture */ + +/* ----------------------- GL_OES_element_index_uint ----------------------- */ + +#ifndef GL_OES_element_index_uint +#define GL_OES_element_index_uint 1 + +#define GL_UNSIGNED_INT 0x1405 + +#define GLEW_OES_element_index_uint GLEW_GET_VAR(__GLEW_OES_element_index_uint) + +#endif /* GL_OES_element_index_uint */ + +/* --------------------- GL_OES_extended_matrix_palette -------------------- */ + +#ifndef GL_OES_extended_matrix_palette +#define GL_OES_extended_matrix_palette 1 + +#define GLEW_OES_extended_matrix_palette GLEW_GET_VAR(__GLEW_OES_extended_matrix_palette) + +#endif /* GL_OES_extended_matrix_palette */ + +/* ------------------------ GL_OES_fbo_render_mipmap ----------------------- */ + +#ifndef GL_OES_fbo_render_mipmap +#define GL_OES_fbo_render_mipmap 1 + +#define GLEW_OES_fbo_render_mipmap GLEW_GET_VAR(__GLEW_OES_fbo_render_mipmap) + +#endif /* GL_OES_fbo_render_mipmap */ + +/* --------------------- GL_OES_fragment_precision_high -------------------- */ + +#ifndef GL_OES_fragment_precision_high +#define GL_OES_fragment_precision_high 1 + +#define GLEW_OES_fragment_precision_high GLEW_GET_VAR(__GLEW_OES_fragment_precision_high) + +#endif /* GL_OES_fragment_precision_high */ + +/* ----------------------- GL_OES_framebuffer_object ----------------------- */ + +#ifndef GL_OES_framebuffer_object +#define GL_OES_framebuffer_object 1 + +#define GL_NONE_OES 0 +#define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506 +#define GL_RGBA4_OES 0x8056 +#define GL_RGB5_A1_OES 0x8057 +#define GL_DEPTH_COMPONENT16_OES 0x81A5 +#define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8 +#define GL_FRAMEBUFFER_BINDING_OES 0x8CA6 +#define GL_RENDERBUFFER_BINDING_OES 0x8CA7 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4 +#define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5 +#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6 +#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7 +#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9 +#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA +#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES 0x8CDB +#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES 0x8CDC +#define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD +#define GL_COLOR_ATTACHMENT0_OES 0x8CE0 +#define GL_DEPTH_ATTACHMENT_OES 0x8D00 +#define GL_STENCIL_ATTACHMENT_OES 0x8D20 +#define GL_FRAMEBUFFER_OES 0x8D40 +#define GL_RENDERBUFFER_OES 0x8D41 +#define GL_RENDERBUFFER_WIDTH_OES 0x8D42 +#define GL_RENDERBUFFER_HEIGHT_OES 0x8D43 +#define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44 +#define GL_STENCIL_INDEX1_OES 0x8D46 +#define GL_STENCIL_INDEX4_OES 0x8D47 +#define GL_STENCIL_INDEX8_OES 0x8D48 +#define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50 +#define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51 +#define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52 +#define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53 +#define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54 +#define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55 +#define GL_RGB565_OES 0x8D62 + +typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer); +typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer); +typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers); +typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers); +typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers); +typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPOESPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params); +typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer); +typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer); +typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); + +#define glBindFramebufferOES GLEW_GET_FUN(__glewBindFramebufferOES) +#define glBindRenderbufferOES GLEW_GET_FUN(__glewBindRenderbufferOES) +#define glCheckFramebufferStatusOES GLEW_GET_FUN(__glewCheckFramebufferStatusOES) +#define glDeleteFramebuffersOES GLEW_GET_FUN(__glewDeleteFramebuffersOES) +#define glDeleteRenderbuffersOES GLEW_GET_FUN(__glewDeleteRenderbuffersOES) +#define glFramebufferRenderbufferOES GLEW_GET_FUN(__glewFramebufferRenderbufferOES) +#define glFramebufferTexture2DOES GLEW_GET_FUN(__glewFramebufferTexture2DOES) +#define glGenFramebuffersOES GLEW_GET_FUN(__glewGenFramebuffersOES) +#define glGenRenderbuffersOES GLEW_GET_FUN(__glewGenRenderbuffersOES) +#define glGenerateMipmapOES GLEW_GET_FUN(__glewGenerateMipmapOES) +#define glGetFramebufferAttachmentParameterivOES GLEW_GET_FUN(__glewGetFramebufferAttachmentParameterivOES) +#define glGetRenderbufferParameterivOES GLEW_GET_FUN(__glewGetRenderbufferParameterivOES) +#define glIsFramebufferOES GLEW_GET_FUN(__glewIsFramebufferOES) +#define glIsRenderbufferOES GLEW_GET_FUN(__glewIsRenderbufferOES) +#define glRenderbufferStorageOES GLEW_GET_FUN(__glewRenderbufferStorageOES) + +#define GLEW_OES_framebuffer_object GLEW_GET_VAR(__GLEW_OES_framebuffer_object) + +#endif /* GL_OES_framebuffer_object */ + +/* ----------------------- GL_OES_geometry_point_size ---------------------- */ + +#ifndef GL_OES_geometry_point_size +#define GL_OES_geometry_point_size 1 + +#define GL_GEOMETRY_SHADER_BIT_OES 0x00000004 +#define GL_LINES_ADJACENCY_OES 0xA +#define GL_LINE_STRIP_ADJACENCY_OES 0xB +#define GL_TRIANGLES_ADJACENCY_OES 0xC +#define GL_TRIANGLE_STRIP_ADJACENCY_OES 0xD +#define GL_LAYER_PROVOKING_VERTEX_OES 0x825E +#define GL_UNDEFINED_VERTEX_OES 0x8260 +#define GL_GEOMETRY_SHADER_INVOCATIONS_OES 0x887F +#define GL_GEOMETRY_LINKED_VERTICES_OUT_OES 0x8916 +#define GL_GEOMETRY_LINKED_INPUT_TYPE_OES 0x8917 +#define GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES 0x8918 +#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES 0x8A2C +#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES 0x8A32 +#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES 0x8C29 +#define GL_PRIMITIVES_GENERATED_OES 0x8C87 +#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES 0x8DA7 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES 0x8DA8 +#define GL_GEOMETRY_SHADER_OES 0x8DD9 +#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES 0x8DDF +#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES 0x8DE0 +#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES 0x8DE1 +#define GL_FIRST_VERTEX_CONVENTION_OES 0x8E4D +#define GL_LAST_VERTEX_CONVENTION_OES 0x8E4E +#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES 0x8E5A +#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES 0x90CD +#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES 0x90D7 +#define GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES 0x9123 +#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES 0x9124 +#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES 0x92CF +#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES 0x92D5 +#define GL_REFERENCED_BY_GEOMETRY_SHADER_OES 0x9309 +#define GL_FRAMEBUFFER_DEFAULT_LAYERS_OES 0x9312 +#define GL_MAX_FRAMEBUFFER_LAYERS_OES 0x9317 + +#define GLEW_OES_geometry_point_size GLEW_GET_VAR(__GLEW_OES_geometry_point_size) + +#endif /* GL_OES_geometry_point_size */ + +/* ------------------------- GL_OES_geometry_shader ------------------------ */ + +#ifndef GL_OES_geometry_shader +#define GL_OES_geometry_shader 1 + +#define GL_GEOMETRY_SHADER_BIT_OES 0x00000004 +#define GL_LINES_ADJACENCY_OES 0xA +#define GL_LINE_STRIP_ADJACENCY_OES 0xB +#define GL_TRIANGLES_ADJACENCY_OES 0xC +#define GL_TRIANGLE_STRIP_ADJACENCY_OES 0xD +#define GL_LAYER_PROVOKING_VERTEX_OES 0x825E +#define GL_UNDEFINED_VERTEX_OES 0x8260 +#define GL_GEOMETRY_SHADER_INVOCATIONS_OES 0x887F +#define GL_GEOMETRY_LINKED_VERTICES_OUT_OES 0x8916 +#define GL_GEOMETRY_LINKED_INPUT_TYPE_OES 0x8917 +#define GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES 0x8918 +#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES 0x8A2C +#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES 0x8A32 +#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES 0x8C29 +#define GL_PRIMITIVES_GENERATED_OES 0x8C87 +#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES 0x8DA7 +#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES 0x8DA8 +#define GL_GEOMETRY_SHADER_OES 0x8DD9 +#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES 0x8DDF +#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES 0x8DE0 +#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES 0x8DE1 +#define GL_FIRST_VERTEX_CONVENTION_OES 0x8E4D +#define GL_LAST_VERTEX_CONVENTION_OES 0x8E4E +#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES 0x8E5A +#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES 0x90CD +#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES 0x90D7 +#define GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES 0x9123 +#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES 0x9124 +#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES 0x92CF +#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES 0x92D5 +#define GL_REFERENCED_BY_GEOMETRY_SHADER_OES 0x9309 +#define GL_FRAMEBUFFER_DEFAULT_LAYERS_OES 0x9312 +#define GL_MAX_FRAMEBUFFER_LAYERS_OES 0x9317 + +#define GLEW_OES_geometry_shader GLEW_GET_VAR(__GLEW_OES_geometry_shader) + +#endif /* GL_OES_geometry_shader */ + +/* ----------------------- GL_OES_get_program_binary ----------------------- */ + +#ifndef GL_OES_get_program_binary +#define GL_OES_get_program_binary 1 + +#define GL_PROGRAM_BINARY_LENGTH_OES 0x8741 +#define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE +#define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF + +typedef void (GLAPIENTRY * PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLenum *binaryFormat, void*binary); +typedef void (GLAPIENTRY * PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLint length); + +#define glGetProgramBinaryOES GLEW_GET_FUN(__glewGetProgramBinaryOES) +#define glProgramBinaryOES GLEW_GET_FUN(__glewProgramBinaryOES) + +#define GLEW_OES_get_program_binary GLEW_GET_VAR(__GLEW_OES_get_program_binary) + +#endif /* GL_OES_get_program_binary */ + +/* --------------------------- GL_OES_gpu_shader5 -------------------------- */ + +#ifndef GL_OES_gpu_shader5 +#define GL_OES_gpu_shader5 1 + +#define GLEW_OES_gpu_shader5 GLEW_GET_VAR(__GLEW_OES_gpu_shader5) + +#endif /* GL_OES_gpu_shader5 */ + +/* ---------------------------- GL_OES_mapbuffer --------------------------- */ + +#ifndef GL_OES_mapbuffer +#define GL_OES_mapbuffer 1 + +#define GL_WRITE_ONLY_OES 0x88B9 +#define GL_BUFFER_ACCESS_OES 0x88BB +#define GL_BUFFER_MAPPED_OES 0x88BC +#define GL_BUFFER_MAP_POINTER_OES 0x88BD + +typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, void** params); +typedef void * (GLAPIENTRY * PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); +typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFEROESPROC) (GLenum target); + +#define glGetBufferPointervOES GLEW_GET_FUN(__glewGetBufferPointervOES) +#define glMapBufferOES GLEW_GET_FUN(__glewMapBufferOES) +#define glUnmapBufferOES GLEW_GET_FUN(__glewUnmapBufferOES) + +#define GLEW_OES_mapbuffer GLEW_GET_VAR(__GLEW_OES_mapbuffer) + +#endif /* GL_OES_mapbuffer */ + +/* --------------------------- GL_OES_matrix_get --------------------------- */ + +#ifndef GL_OES_matrix_get +#define GL_OES_matrix_get 1 + +#define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898d +#define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898e +#define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898f + +#define GLEW_OES_matrix_get GLEW_GET_VAR(__GLEW_OES_matrix_get) + +#endif /* GL_OES_matrix_get */ + +/* ------------------------- GL_OES_matrix_palette ------------------------- */ + +#ifndef GL_OES_matrix_palette +#define GL_OES_matrix_palette 1 + +#define GL_MAX_VERTEX_UNITS_OES 0x86A4 +#define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9 +#define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA +#define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB +#define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC +#define GL_WEIGHT_ARRAY_OES 0x86AD +#define GL_MATRIX_PALETTE_OES 0x8840 +#define GL_MAX_PALETTE_MATRICES_OES 0x8842 +#define GL_CURRENT_PALETTE_MATRIX_OES 0x8843 +#define GL_MATRIX_INDEX_ARRAY_OES 0x8844 +#define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846 +#define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847 +#define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848 +#define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849 +#define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E +#define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E + +typedef void (GLAPIENTRY * PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint index); +typedef void (GLAPIENTRY * PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); +typedef void (GLAPIENTRY * PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); + +#define glCurrentPaletteMatrixOES GLEW_GET_FUN(__glewCurrentPaletteMatrixOES) +#define glMatrixIndexPointerOES GLEW_GET_FUN(__glewMatrixIndexPointerOES) +#define glWeightPointerOES GLEW_GET_FUN(__glewWeightPointerOES) + +#define GLEW_OES_matrix_palette GLEW_GET_VAR(__GLEW_OES_matrix_palette) + +#endif /* GL_OES_matrix_palette */ + +/* ---------------------- GL_OES_packed_depth_stencil ---------------------- */ + +#ifndef GL_OES_packed_depth_stencil +#define GL_OES_packed_depth_stencil 1 + +#define GL_DEPTH_STENCIL_OES 0x84F9 +#define GL_UNSIGNED_INT_24_8_OES 0x84FA +#define GL_DEPTH24_STENCIL8_OES 0x88F0 + +#define GLEW_OES_packed_depth_stencil GLEW_GET_VAR(__GLEW_OES_packed_depth_stencil) + +#endif /* GL_OES_packed_depth_stencil */ + +/* ------------------------ GL_OES_point_size_array ------------------------ */ + +#ifndef GL_OES_point_size_array +#define GL_OES_point_size_array 1 + +#define GL_POINT_SIZE_ARRAY_TYPE_OES 0x898A +#define GL_POINT_SIZE_ARRAY_STRIDE_OES 0x898B +#define GL_POINT_SIZE_ARRAY_POINTER_OES 0x898C +#define GL_POINT_SIZE_ARRAY_OES 0x8B9C +#define GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES 0x8B9F + +#define GLEW_OES_point_size_array GLEW_GET_VAR(__GLEW_OES_point_size_array) + +#endif /* GL_OES_point_size_array */ + +/* -------------------------- GL_OES_point_sprite -------------------------- */ + +#ifndef GL_OES_point_sprite +#define GL_OES_point_sprite 1 + +#define GL_POINT_SPRITE_OES 0x8861 +#define GL_COORD_REPLACE_OES 0x8862 + +#define GLEW_OES_point_sprite GLEW_GET_VAR(__GLEW_OES_point_sprite) + +#endif /* GL_OES_point_sprite */ + +/* --------------------------- GL_OES_read_format -------------------------- */ + +#ifndef GL_OES_read_format +#define GL_OES_read_format 1 + +#define GL_IMPLEMENTATION_COLOR_READ_TYPE_OES 0x8B9A +#define GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES 0x8B9B + +#define GLEW_OES_read_format GLEW_GET_VAR(__GLEW_OES_read_format) + +#endif /* GL_OES_read_format */ + +/* --------------------- GL_OES_required_internalformat -------------------- */ + +#ifndef GL_OES_required_internalformat +#define GL_OES_required_internalformat 1 + +#define GL_ALPHA8_OES 0x803C +#define GL_LUMINANCE8_OES 0x8040 +#define GL_LUMINANCE4_ALPHA4_OES 0x8043 +#define GL_LUMINANCE8_ALPHA8_OES 0x8045 +#define GL_RGB8_OES 0x8051 +#define GL_RGB10_EXT 0x8052 +#define GL_RGBA4_OES 0x8056 +#define GL_RGB5_A1_OES 0x8057 +#define GL_RGBA8_OES 0x8058 +#define GL_RGB10_A2_EXT 0x8059 +#define GL_DEPTH_COMPONENT16_OES 0x81A5 +#define GL_DEPTH_COMPONENT24_OES 0x81A6 +#define GL_DEPTH_COMPONENT32_OES 0x81A7 +#define GL_DEPTH24_STENCIL8_OES 0x88F0 +#define GL_RGB565_OES 0x8D62 + +#define GLEW_OES_required_internalformat GLEW_GET_VAR(__GLEW_OES_required_internalformat) + +#endif /* GL_OES_required_internalformat */ + +/* --------------------------- GL_OES_rgb8_rgba8 --------------------------- */ + +#ifndef GL_OES_rgb8_rgba8 +#define GL_OES_rgb8_rgba8 1 + +#define GL_RGB8_OES 0x8051 +#define GL_RGBA8_OES 0x8058 + +#define GLEW_OES_rgb8_rgba8 GLEW_GET_VAR(__GLEW_OES_rgb8_rgba8) + +#endif /* GL_OES_rgb8_rgba8 */ + +/* ------------------------- GL_OES_sample_shading ------------------------- */ + +#ifndef GL_OES_sample_shading +#define GL_OES_sample_shading 1 + +#define GL_SAMPLE_SHADING_OES 0x8C36 +#define GL_MIN_SAMPLE_SHADING_VALUE_OES 0x8C37 + +typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGOESPROC) (GLfloat value); + +#define glMinSampleShadingOES GLEW_GET_FUN(__glewMinSampleShadingOES) + +#define GLEW_OES_sample_shading GLEW_GET_VAR(__GLEW_OES_sample_shading) + +#endif /* GL_OES_sample_shading */ + +/* ------------------------ GL_OES_sample_variables ------------------------ */ + +#ifndef GL_OES_sample_variables +#define GL_OES_sample_variables 1 + +#define GLEW_OES_sample_variables GLEW_GET_VAR(__GLEW_OES_sample_variables) + +#endif /* GL_OES_sample_variables */ + +/* ----------------------- GL_OES_shader_image_atomic ---------------------- */ + +#ifndef GL_OES_shader_image_atomic +#define GL_OES_shader_image_atomic 1 + +#define GLEW_OES_shader_image_atomic GLEW_GET_VAR(__GLEW_OES_shader_image_atomic) + +#endif /* GL_OES_shader_image_atomic */ + +/* ------------------------ GL_OES_shader_io_blocks ------------------------ */ + +#ifndef GL_OES_shader_io_blocks +#define GL_OES_shader_io_blocks 1 + +#define GLEW_OES_shader_io_blocks GLEW_GET_VAR(__GLEW_OES_shader_io_blocks) + +#endif /* GL_OES_shader_io_blocks */ + +/* ---------------- GL_OES_shader_multisample_interpolation ---------------- */ + +#ifndef GL_OES_shader_multisample_interpolation +#define GL_OES_shader_multisample_interpolation 1 + +#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES 0x8E5B +#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES 0x8E5C +#define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES 0x8E5D + +#define GLEW_OES_shader_multisample_interpolation GLEW_GET_VAR(__GLEW_OES_shader_multisample_interpolation) + +#endif /* GL_OES_shader_multisample_interpolation */ + +/* ------------------------ GL_OES_single_precision ------------------------ */ + +#ifndef GL_OES_single_precision +#define GL_OES_single_precision 1 + +typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFOESPROC) (GLclampf depth); +typedef void (GLAPIENTRY * PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat* equation); +typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFOESPROC) (GLclampf n, GLclampf f); +typedef void (GLAPIENTRY * PFNGLFRUSTUMFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f); +typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEFOESPROC) (GLenum plane, GLfloat* equation); +typedef void (GLAPIENTRY * PFNGLORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f); + +#define glClearDepthfOES GLEW_GET_FUN(__glewClearDepthfOES) +#define glClipPlanefOES GLEW_GET_FUN(__glewClipPlanefOES) +#define glDepthRangefOES GLEW_GET_FUN(__glewDepthRangefOES) +#define glFrustumfOES GLEW_GET_FUN(__glewFrustumfOES) +#define glGetClipPlanefOES GLEW_GET_FUN(__glewGetClipPlanefOES) +#define glOrthofOES GLEW_GET_FUN(__glewOrthofOES) + +#define GLEW_OES_single_precision GLEW_GET_VAR(__GLEW_OES_single_precision) + +#endif /* GL_OES_single_precision */ + +/* ---------------------- GL_OES_standard_derivatives ---------------------- */ + +#ifndef GL_OES_standard_derivatives +#define GL_OES_standard_derivatives 1 + +#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B + +#define GLEW_OES_standard_derivatives GLEW_GET_VAR(__GLEW_OES_standard_derivatives) + +#endif /* GL_OES_standard_derivatives */ + +/* ---------------------------- GL_OES_stencil1 ---------------------------- */ + +#ifndef GL_OES_stencil1 +#define GL_OES_stencil1 1 + +#define GL_STENCIL_INDEX1_OES 0x8D46 + +#define GLEW_OES_stencil1 GLEW_GET_VAR(__GLEW_OES_stencil1) + +#endif /* GL_OES_stencil1 */ + +/* ---------------------------- GL_OES_stencil4 ---------------------------- */ + +#ifndef GL_OES_stencil4 +#define GL_OES_stencil4 1 + +#define GL_STENCIL_INDEX4_OES 0x8D47 + +#define GLEW_OES_stencil4 GLEW_GET_VAR(__GLEW_OES_stencil4) + +#endif /* GL_OES_stencil4 */ + +/* ---------------------------- GL_OES_stencil8 ---------------------------- */ + +#ifndef GL_OES_stencil8 +#define GL_OES_stencil8 1 + +#define GL_STENCIL_INDEX8_OES 0x8D48 + +#define GLEW_OES_stencil8 GLEW_GET_VAR(__GLEW_OES_stencil8) + +#endif /* GL_OES_stencil8 */ + +/* ----------------------- GL_OES_surfaceless_context ---------------------- */ + +#ifndef GL_OES_surfaceless_context +#define GL_OES_surfaceless_context 1 + +#define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219 + +#define GLEW_OES_surfaceless_context GLEW_GET_VAR(__GLEW_OES_surfaceless_context) + +#endif /* GL_OES_surfaceless_context */ + +/* --------------------- GL_OES_tessellation_point_size -------------------- */ + +#ifndef GL_OES_tessellation_point_size +#define GL_OES_tessellation_point_size 1 + +#define GL_QUADS_OES 0x0007 +#define GL_TESS_CONTROL_SHADER_BIT_OES 0x00000008 +#define GL_PATCHES_OES 0xE +#define GL_TESS_EVALUATION_SHADER_BIT_OES 0x00000010 +#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES 0x8221 +#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES 0x886C +#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES 0x886D +#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES 0x8E1E +#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES 0x8E1F +#define GL_PATCH_VERTICES_OES 0x8E72 +#define GL_TESS_CONTROL_OUTPUT_VERTICES_OES 0x8E75 +#define GL_TESS_GEN_MODE_OES 0x8E76 +#define GL_TESS_GEN_SPACING_OES 0x8E77 +#define GL_TESS_GEN_VERTEX_ORDER_OES 0x8E78 +#define GL_TESS_GEN_POINT_MODE_OES 0x8E79 +#define GL_ISOLINES_OES 0x8E7A +#define GL_FRACTIONAL_ODD_OES 0x8E7B +#define GL_FRACTIONAL_EVEN_OES 0x8E7C +#define GL_MAX_PATCH_VERTICES_OES 0x8E7D +#define GL_MAX_TESS_GEN_LEVEL_OES 0x8E7E +#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES 0x8E7F +#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES 0x8E80 +#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES 0x8E81 +#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES 0x8E82 +#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES 0x8E83 +#define GL_MAX_TESS_PATCH_COMPONENTS_OES 0x8E84 +#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES 0x8E85 +#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES 0x8E86 +#define GL_TESS_EVALUATION_SHADER_OES 0x8E87 +#define GL_TESS_CONTROL_SHADER_OES 0x8E88 +#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES 0x8E89 +#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES 0x8E8A +#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES 0x90CB +#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES 0x90CC +#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES 0x90D8 +#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES 0x90D9 +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES 0x92CD +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES 0x92CE +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES 0x92D3 +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES 0x92D4 +#define GL_IS_PER_PATCH_OES 0x92E7 +#define GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES 0x9307 +#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES 0x9308 + +#define GLEW_OES_tessellation_point_size GLEW_GET_VAR(__GLEW_OES_tessellation_point_size) + +#endif /* GL_OES_tessellation_point_size */ + +/* ----------------------- GL_OES_tessellation_shader ---------------------- */ + +#ifndef GL_OES_tessellation_shader +#define GL_OES_tessellation_shader 1 + +#define GL_QUADS_OES 0x0007 +#define GL_TESS_CONTROL_SHADER_BIT_OES 0x00000008 +#define GL_PATCHES_OES 0xE +#define GL_TESS_EVALUATION_SHADER_BIT_OES 0x00000010 +#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES 0x8221 +#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES 0x886C +#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES 0x886D +#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES 0x8E1E +#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES 0x8E1F +#define GL_PATCH_VERTICES_OES 0x8E72 +#define GL_TESS_CONTROL_OUTPUT_VERTICES_OES 0x8E75 +#define GL_TESS_GEN_MODE_OES 0x8E76 +#define GL_TESS_GEN_SPACING_OES 0x8E77 +#define GL_TESS_GEN_VERTEX_ORDER_OES 0x8E78 +#define GL_TESS_GEN_POINT_MODE_OES 0x8E79 +#define GL_ISOLINES_OES 0x8E7A +#define GL_FRACTIONAL_ODD_OES 0x8E7B +#define GL_FRACTIONAL_EVEN_OES 0x8E7C +#define GL_MAX_PATCH_VERTICES_OES 0x8E7D +#define GL_MAX_TESS_GEN_LEVEL_OES 0x8E7E +#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES 0x8E7F +#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES 0x8E80 +#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES 0x8E81 +#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES 0x8E82 +#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES 0x8E83 +#define GL_MAX_TESS_PATCH_COMPONENTS_OES 0x8E84 +#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES 0x8E85 +#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES 0x8E86 +#define GL_TESS_EVALUATION_SHADER_OES 0x8E87 +#define GL_TESS_CONTROL_SHADER_OES 0x8E88 +#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES 0x8E89 +#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES 0x8E8A +#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES 0x90CB +#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES 0x90CC +#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES 0x90D8 +#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES 0x90D9 +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES 0x92CD +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES 0x92CE +#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES 0x92D3 +#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES 0x92D4 +#define GL_IS_PER_PATCH_OES 0x92E7 +#define GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES 0x9307 +#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES 0x9308 + +#define GLEW_OES_tessellation_shader GLEW_GET_VAR(__GLEW_OES_tessellation_shader) + +#endif /* GL_OES_tessellation_shader */ + +/* --------------------------- GL_OES_texture_3D --------------------------- */ + +#ifndef GL_OES_texture_3D +#define GL_OES_texture_3D 1 + +#define GL_TEXTURE_BINDING_3D_OES 0x806A +#define GL_TEXTURE_3D_OES 0x806F +#define GL_TEXTURE_WRAP_R_OES 0x8072 +#define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073 + +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); +typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); +typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); + +#define glCompressedTexImage3DOES GLEW_GET_FUN(__glewCompressedTexImage3DOES) +#define glCompressedTexSubImage3DOES GLEW_GET_FUN(__glewCompressedTexSubImage3DOES) +#define glCopyTexSubImage3DOES GLEW_GET_FUN(__glewCopyTexSubImage3DOES) +#define glFramebufferTexture3DOES GLEW_GET_FUN(__glewFramebufferTexture3DOES) +#define glTexImage3DOES GLEW_GET_FUN(__glewTexImage3DOES) +#define glTexSubImage3DOES GLEW_GET_FUN(__glewTexSubImage3DOES) + +#define GLEW_OES_texture_3D GLEW_GET_VAR(__GLEW_OES_texture_3D) + +#endif /* GL_OES_texture_3D */ + +/* ---------------------- GL_OES_texture_border_clamp ---------------------- */ + +#ifndef GL_OES_texture_border_clamp +#define GL_OES_texture_border_clamp 1 + +#define GL_TEXTURE_BORDER_COLOR_OES 0x1004 +#define GL_CLAMP_TO_BORDER_OES 0x812D + +typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIIVOESPROC) (GLuint sampler, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIUIVOESPROC) (GLuint sampler, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVOESPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVOESPROC) (GLenum target, GLenum pname, GLuint* params); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIIVOESPROC) (GLuint sampler, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIUIVOESPROC) (GLuint sampler, GLenum pname, const GLuint* params); +typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVOESPROC) (GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVOESPROC) (GLenum target, GLenum pname, const GLuint* params); + +#define glGetSamplerParameterIivOES GLEW_GET_FUN(__glewGetSamplerParameterIivOES) +#define glGetSamplerParameterIuivOES GLEW_GET_FUN(__glewGetSamplerParameterIuivOES) +#define glGetTexParameterIivOES GLEW_GET_FUN(__glewGetTexParameterIivOES) +#define glGetTexParameterIuivOES GLEW_GET_FUN(__glewGetTexParameterIuivOES) +#define glSamplerParameterIivOES GLEW_GET_FUN(__glewSamplerParameterIivOES) +#define glSamplerParameterIuivOES GLEW_GET_FUN(__glewSamplerParameterIuivOES) +#define glTexParameterIivOES GLEW_GET_FUN(__glewTexParameterIivOES) +#define glTexParameterIuivOES GLEW_GET_FUN(__glewTexParameterIuivOES) + +#define GLEW_OES_texture_border_clamp GLEW_GET_VAR(__GLEW_OES_texture_border_clamp) + +#endif /* GL_OES_texture_border_clamp */ + +/* ------------------------- GL_OES_texture_buffer ------------------------- */ + +#ifndef GL_OES_texture_buffer +#define GL_OES_texture_buffer 1 + +#define GL_TEXTURE_BUFFER_BINDING_OES 0x8C2A +#define GL_TEXTURE_BUFFER_OES 0x8C2A +#define GL_MAX_TEXTURE_BUFFER_SIZE_OES 0x8C2B +#define GL_TEXTURE_BINDING_BUFFER_OES 0x8C2C +#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_OES 0x8C2D +#define GL_SAMPLER_BUFFER_OES 0x8DC2 +#define GL_INT_SAMPLER_BUFFER_OES 0x8DD0 +#define GL_UNSIGNED_INT_SAMPLER_BUFFER_OES 0x8DD8 +#define GL_IMAGE_BUFFER_OES 0x9051 +#define GL_INT_IMAGE_BUFFER_OES 0x905C +#define GL_UNSIGNED_INT_IMAGE_BUFFER_OES 0x9067 +#define GL_TEXTURE_BUFFER_OFFSET_OES 0x919D +#define GL_TEXTURE_BUFFER_SIZE_OES 0x919E +#define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_OES 0x919F + +typedef void (GLAPIENTRY * PFNGLTEXBUFFEROESPROC) (GLenum target, GLenum internalformat, GLuint buffer); +typedef void (GLAPIENTRY * PFNGLTEXBUFFERRANGEOESPROC) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); + +#define glTexBufferOES GLEW_GET_FUN(__glewTexBufferOES) +#define glTexBufferRangeOES GLEW_GET_FUN(__glewTexBufferRangeOES) + +#define GLEW_OES_texture_buffer GLEW_GET_VAR(__GLEW_OES_texture_buffer) + +#endif /* GL_OES_texture_buffer */ + +/* -------------------- GL_OES_texture_compression_astc -------------------- */ + +#ifndef GL_OES_texture_compression_astc +#define GL_OES_texture_compression_astc 1 + +#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0 +#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1 +#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2 +#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3 +#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4 +#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5 +#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6 +#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7 +#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8 +#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9 +#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA +#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB +#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC +#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD +#define GL_COMPRESSED_RGBA_ASTC_3x3x3_OES 0x93C0 +#define GL_COMPRESSED_RGBA_ASTC_4x3x3_OES 0x93C1 +#define GL_COMPRESSED_RGBA_ASTC_4x4x3_OES 0x93C2 +#define GL_COMPRESSED_RGBA_ASTC_4x4x4_OES 0x93C3 +#define GL_COMPRESSED_RGBA_ASTC_5x4x4_OES 0x93C4 +#define GL_COMPRESSED_RGBA_ASTC_5x5x4_OES 0x93C5 +#define GL_COMPRESSED_RGBA_ASTC_5x5x5_OES 0x93C6 +#define GL_COMPRESSED_RGBA_ASTC_6x5x5_OES 0x93C7 +#define GL_COMPRESSED_RGBA_ASTC_6x6x5_OES 0x93C8 +#define GL_COMPRESSED_RGBA_ASTC_6x6x6_OES 0x93C9 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES 0x93E0 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES 0x93E1 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES 0x93E2 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES 0x93E3 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES 0x93E4 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES 0x93E5 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES 0x93E6 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES 0x93E7 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES 0x93E8 +#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES 0x93E9 + +#define GLEW_OES_texture_compression_astc GLEW_GET_VAR(__GLEW_OES_texture_compression_astc) + +#endif /* GL_OES_texture_compression_astc */ + +/* ------------------------ GL_OES_texture_cube_map ------------------------ */ + +#ifndef GL_OES_texture_cube_map +#define GL_OES_texture_cube_map 1 + +#define GL_TEXTURE_GEN_MODE_OES 0x2500 +#define GL_NORMAL_MAP_OES 0x8511 +#define GL_REFLECTION_MAP_OES 0x8512 +#define GL_TEXTURE_CUBE_MAP_OES 0x8513 +#define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C +#define GL_TEXTURE_GEN_STR_OES 0x8D60 + +typedef void (GLAPIENTRY * PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed* params); +typedef void (GLAPIENTRY * PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param); +typedef void (GLAPIENTRY * PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed* params); + +#define glGetTexGenfvOES GLEW_GET_FUN(__glewGetTexGenfvOES) +#define glGetTexGenivOES GLEW_GET_FUN(__glewGetTexGenivOES) +#define glGetTexGenxvOES GLEW_GET_FUN(__glewGetTexGenxvOES) +#define glTexGenfOES GLEW_GET_FUN(__glewTexGenfOES) +#define glTexGenfvOES GLEW_GET_FUN(__glewTexGenfvOES) +#define glTexGeniOES GLEW_GET_FUN(__glewTexGeniOES) +#define glTexGenivOES GLEW_GET_FUN(__glewTexGenivOES) +#define glTexGenxOES GLEW_GET_FUN(__glewTexGenxOES) +#define glTexGenxvOES GLEW_GET_FUN(__glewTexGenxvOES) + +#define GLEW_OES_texture_cube_map GLEW_GET_VAR(__GLEW_OES_texture_cube_map) + +#endif /* GL_OES_texture_cube_map */ + +/* --------------------- GL_OES_texture_cube_map_array --------------------- */ + +#ifndef GL_OES_texture_cube_map_array +#define GL_OES_texture_cube_map_array 1 + +#define GL_TEXTURE_CUBE_MAP_ARRAY_OES 0x9009 +#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_OES 0x900A +#define GL_SAMPLER_CUBE_MAP_ARRAY_OES 0x900C +#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_OES 0x900D +#define GL_INT_SAMPLER_CUBE_MAP_ARRAY_OES 0x900E +#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_OES 0x900F +#define GL_IMAGE_CUBE_MAP_ARRAY_OES 0x9054 +#define GL_INT_IMAGE_CUBE_MAP_ARRAY_OES 0x905F +#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_OES 0x906A + +#define GLEW_OES_texture_cube_map_array GLEW_GET_VAR(__GLEW_OES_texture_cube_map_array) + +#endif /* GL_OES_texture_cube_map_array */ + +/* ---------------------- GL_OES_texture_env_crossbar ---------------------- */ + +#ifndef GL_OES_texture_env_crossbar +#define GL_OES_texture_env_crossbar 1 + +#define GLEW_OES_texture_env_crossbar GLEW_GET_VAR(__GLEW_OES_texture_env_crossbar) + +#endif /* GL_OES_texture_env_crossbar */ + +/* --------------------- GL_OES_texture_mirrored_repeat -------------------- */ + +#ifndef GL_OES_texture_mirrored_repeat +#define GL_OES_texture_mirrored_repeat 1 + +#define GL_MIRRORED_REPEAT 0x8370 + +#define GLEW_OES_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_OES_texture_mirrored_repeat) + +#endif /* GL_OES_texture_mirrored_repeat */ + +/* -------------------------- GL_OES_texture_npot -------------------------- */ + +#ifndef GL_OES_texture_npot +#define GL_OES_texture_npot 1 + +#define GLEW_OES_texture_npot GLEW_GET_VAR(__GLEW_OES_texture_npot) + +#endif /* GL_OES_texture_npot */ + +/* ------------------------ GL_OES_texture_stencil8 ------------------------ */ + +#ifndef GL_OES_texture_stencil8 +#define GL_OES_texture_stencil8 1 + +#define GL_STENCIL_INDEX 0x1901 +#define GL_STENCIL_INDEX8 0x8D48 + +#define GLEW_OES_texture_stencil8 GLEW_GET_VAR(__GLEW_OES_texture_stencil8) + +#endif /* GL_OES_texture_stencil8 */ + +/* -------------- GL_OES_texture_storage_multisample_2d_array -------------- */ + +#ifndef GL_OES_texture_storage_multisample_2d_array +#define GL_OES_texture_storage_multisample_2d_array 1 + +#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES 0x9102 +#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES 0x9105 +#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910B +#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910C +#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910D + +typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DMULTISAMPLEOESPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); + +#define glTexStorage3DMultisampleOES GLEW_GET_FUN(__glewTexStorage3DMultisampleOES) + +#define GLEW_OES_texture_storage_multisample_2d_array GLEW_GET_VAR(__GLEW_OES_texture_storage_multisample_2d_array) + +#endif /* GL_OES_texture_storage_multisample_2d_array */ + +/* -------------------------- GL_OES_texture_view -------------------------- */ + +#ifndef GL_OES_texture_view +#define GL_OES_texture_view 1 + +#define GL_TEXTURE_VIEW_MIN_LEVEL_OES 0x82DB +#define GL_TEXTURE_VIEW_NUM_LEVELS_OES 0x82DC +#define GL_TEXTURE_VIEW_MIN_LAYER_OES 0x82DD +#define GL_TEXTURE_VIEW_NUM_LAYERS_OES 0x82DE +#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF + +typedef void (GLAPIENTRY * PFNGLTEXTUREVIEWOESPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers); + +#define glTextureViewOES GLEW_GET_FUN(__glewTextureViewOES) + +#define GLEW_OES_texture_view GLEW_GET_VAR(__GLEW_OES_texture_view) + +#endif /* GL_OES_texture_view */ + +/* ----------------------- GL_OES_vertex_array_object ---------------------- */ + +#ifndef GL_OES_vertex_array_object +#define GL_OES_vertex_array_object 1 + +#define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 + +typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); +typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint* arrays); +typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint* arrays); +typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYOESPROC) (GLuint array); + +#define glBindVertexArrayOES GLEW_GET_FUN(__glewBindVertexArrayOES) +#define glDeleteVertexArraysOES GLEW_GET_FUN(__glewDeleteVertexArraysOES) +#define glGenVertexArraysOES GLEW_GET_FUN(__glewGenVertexArraysOES) +#define glIsVertexArrayOES GLEW_GET_FUN(__glewIsVertexArrayOES) + +#define GLEW_OES_vertex_array_object GLEW_GET_VAR(__GLEW_OES_vertex_array_object) + +#endif /* GL_OES_vertex_array_object */ + +/* ------------------------ GL_OES_vertex_half_float ----------------------- */ + +#ifndef GL_OES_vertex_half_float +#define GL_OES_vertex_half_float 1 + +#define GL_HALF_FLOAT_OES 0x8D61 + +#define GLEW_OES_vertex_half_float GLEW_GET_VAR(__GLEW_OES_vertex_half_float) + +#endif /* GL_OES_vertex_half_float */ + +/* --------------------- GL_OES_vertex_type_10_10_10_2 --------------------- */ + +#ifndef GL_OES_vertex_type_10_10_10_2 +#define GL_OES_vertex_type_10_10_10_2 1 + +#define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6 +#define GL_INT_10_10_10_2_OES 0x8DF7 + +#define GLEW_OES_vertex_type_10_10_10_2 GLEW_GET_VAR(__GLEW_OES_vertex_type_10_10_10_2) + +#endif /* GL_OES_vertex_type_10_10_10_2 */ + +/* ---------------------------- GL_OML_interlace --------------------------- */ + +#ifndef GL_OML_interlace +#define GL_OML_interlace 1 + +#define GL_INTERLACE_OML 0x8980 +#define GL_INTERLACE_READ_OML 0x8981 + +#define GLEW_OML_interlace GLEW_GET_VAR(__GLEW_OML_interlace) + +#endif /* GL_OML_interlace */ + +/* ---------------------------- GL_OML_resample ---------------------------- */ + +#ifndef GL_OML_resample +#define GL_OML_resample 1 + +#define GL_PACK_RESAMPLE_OML 0x8984 +#define GL_UNPACK_RESAMPLE_OML 0x8985 +#define GL_RESAMPLE_REPLICATE_OML 0x8986 +#define GL_RESAMPLE_ZERO_FILL_OML 0x8987 +#define GL_RESAMPLE_AVERAGE_OML 0x8988 +#define GL_RESAMPLE_DECIMATE_OML 0x8989 + +#define GLEW_OML_resample GLEW_GET_VAR(__GLEW_OML_resample) + +#endif /* GL_OML_resample */ + +/* ---------------------------- GL_OML_subsample --------------------------- */ + +#ifndef GL_OML_subsample +#define GL_OML_subsample 1 + +#define GL_FORMAT_SUBSAMPLE_24_24_OML 0x8982 +#define GL_FORMAT_SUBSAMPLE_244_244_OML 0x8983 + +#define GLEW_OML_subsample GLEW_GET_VAR(__GLEW_OML_subsample) + +#endif /* GL_OML_subsample */ + +/* ---------------------------- GL_OVR_multiview --------------------------- */ + +#ifndef GL_OVR_multiview +#define GL_OVR_multiview 1 + +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR 0x9630 +#define GL_MAX_VIEWS_OVR 0x9631 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR 0x9632 +#define GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR 0x9633 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint baseViewIndex, GLsizei numViews); +typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint baseViewIndex, GLsizei numViews); + +#define glFramebufferTextureMultiviewOVR GLEW_GET_FUN(__glewFramebufferTextureMultiviewOVR) +#define glNamedFramebufferTextureMultiviewOVR GLEW_GET_FUN(__glewNamedFramebufferTextureMultiviewOVR) + +#define GLEW_OVR_multiview GLEW_GET_VAR(__GLEW_OVR_multiview) + +#endif /* GL_OVR_multiview */ + +/* --------------------------- GL_OVR_multiview2 --------------------------- */ + +#ifndef GL_OVR_multiview2 +#define GL_OVR_multiview2 1 + +#define GLEW_OVR_multiview2 GLEW_GET_VAR(__GLEW_OVR_multiview2) + +#endif /* GL_OVR_multiview2 */ + +/* ------------ GL_OVR_multiview_multisampled_render_to_texture ------------ */ + +#ifndef GL_OVR_multiview_multisampled_render_to_texture +#define GL_OVR_multiview_multisampled_render_to_texture 1 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREMULTISAMPLEMULTIVIEWOVRPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLsizei samples, GLint baseViewIndex, GLsizei numViews); + +#define glFramebufferTextureMultisampleMultiviewOVR GLEW_GET_FUN(__glewFramebufferTextureMultisampleMultiviewOVR) + +#define GLEW_OVR_multiview_multisampled_render_to_texture GLEW_GET_VAR(__GLEW_OVR_multiview_multisampled_render_to_texture) + +#endif /* GL_OVR_multiview_multisampled_render_to_texture */ + +/* --------------------------- GL_PGI_misc_hints --------------------------- */ + +#ifndef GL_PGI_misc_hints +#define GL_PGI_misc_hints 1 + +#define GL_PREFER_DOUBLEBUFFER_HINT_PGI 107000 +#define GL_CONSERVE_MEMORY_HINT_PGI 107005 +#define GL_RECLAIM_MEMORY_HINT_PGI 107006 +#define GL_NATIVE_GRAPHICS_HANDLE_PGI 107010 +#define GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI 107011 +#define GL_NATIVE_GRAPHICS_END_HINT_PGI 107012 +#define GL_ALWAYS_FAST_HINT_PGI 107020 +#define GL_ALWAYS_SOFT_HINT_PGI 107021 +#define GL_ALLOW_DRAW_OBJ_HINT_PGI 107022 +#define GL_ALLOW_DRAW_WIN_HINT_PGI 107023 +#define GL_ALLOW_DRAW_FRG_HINT_PGI 107024 +#define GL_ALLOW_DRAW_MEM_HINT_PGI 107025 +#define GL_STRICT_DEPTHFUNC_HINT_PGI 107030 +#define GL_STRICT_LIGHTING_HINT_PGI 107031 +#define GL_STRICT_SCISSOR_HINT_PGI 107032 +#define GL_FULL_STIPPLE_HINT_PGI 107033 +#define GL_CLIP_NEAR_HINT_PGI 107040 +#define GL_CLIP_FAR_HINT_PGI 107041 +#define GL_WIDE_LINE_HINT_PGI 107042 +#define GL_BACK_NORMALS_HINT_PGI 107043 + +#define GLEW_PGI_misc_hints GLEW_GET_VAR(__GLEW_PGI_misc_hints) + +#endif /* GL_PGI_misc_hints */ + +/* -------------------------- GL_PGI_vertex_hints -------------------------- */ + +#ifndef GL_PGI_vertex_hints +#define GL_PGI_vertex_hints 1 + +#define GL_VERTEX23_BIT_PGI 0x00000004 +#define GL_VERTEX4_BIT_PGI 0x00000008 +#define GL_COLOR3_BIT_PGI 0x00010000 +#define GL_COLOR4_BIT_PGI 0x00020000 +#define GL_EDGEFLAG_BIT_PGI 0x00040000 +#define GL_INDEX_BIT_PGI 0x00080000 +#define GL_MAT_AMBIENT_BIT_PGI 0x00100000 +#define GL_VERTEX_DATA_HINT_PGI 107050 +#define GL_VERTEX_CONSISTENT_HINT_PGI 107051 +#define GL_MATERIAL_SIDE_HINT_PGI 107052 +#define GL_MAX_VERTEX_HINT_PGI 107053 +#define GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI 0x00200000 +#define GL_MAT_DIFFUSE_BIT_PGI 0x00400000 +#define GL_MAT_EMISSION_BIT_PGI 0x00800000 +#define GL_MAT_COLOR_INDEXES_BIT_PGI 0x01000000 +#define GL_MAT_SHININESS_BIT_PGI 0x02000000 +#define GL_MAT_SPECULAR_BIT_PGI 0x04000000 +#define GL_NORMAL_BIT_PGI 0x08000000 +#define GL_TEXCOORD1_BIT_PGI 0x10000000 +#define GL_TEXCOORD2_BIT_PGI 0x20000000 +#define GL_TEXCOORD3_BIT_PGI 0x40000000 +#define GL_TEXCOORD4_BIT_PGI 0x80000000 + +#define GLEW_PGI_vertex_hints GLEW_GET_VAR(__GLEW_PGI_vertex_hints) + +#endif /* GL_PGI_vertex_hints */ + +/* ----------------------- GL_QCOM_YUV_texture_gather ---------------------- */ + +#ifndef GL_QCOM_YUV_texture_gather +#define GL_QCOM_YUV_texture_gather 1 + +#define GLEW_QCOM_YUV_texture_gather GLEW_GET_VAR(__GLEW_QCOM_YUV_texture_gather) + +#endif /* GL_QCOM_YUV_texture_gather */ + +/* --------------------------- GL_QCOM_alpha_test -------------------------- */ + +#ifndef GL_QCOM_alpha_test +#define GL_QCOM_alpha_test 1 + +#define GL_ALPHA_TEST_QCOM 0x0BC0 +#define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1 +#define GL_ALPHA_TEST_REF_QCOM 0x0BC2 + +typedef void (GLAPIENTRY * PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref); + +#define glAlphaFuncQCOM GLEW_GET_FUN(__glewAlphaFuncQCOM) + +#define GLEW_QCOM_alpha_test GLEW_GET_VAR(__GLEW_QCOM_alpha_test) + +#endif /* GL_QCOM_alpha_test */ + +/* ------------------------ GL_QCOM_binning_control ------------------------ */ + +#ifndef GL_QCOM_binning_control +#define GL_QCOM_binning_control 1 + +#define GL_DONT_CARE 0x1100 +#define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0 +#define GL_CPU_OPTIMIZED_QCOM 0x8FB1 +#define GL_GPU_OPTIMIZED_QCOM 0x8FB2 +#define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3 + +#define GLEW_QCOM_binning_control GLEW_GET_VAR(__GLEW_QCOM_binning_control) + +#endif /* GL_QCOM_binning_control */ + +/* ------------------------- GL_QCOM_driver_control ------------------------ */ + +#ifndef GL_QCOM_driver_control +#define GL_QCOM_driver_control 1 + +typedef void (GLAPIENTRY * PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); +typedef void (GLAPIENTRY * PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); +typedef void (GLAPIENTRY * PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei* length, GLchar *driverControlString); +typedef void (GLAPIENTRY * PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint* num, GLsizei size, GLuint *driverControls); + +#define glDisableDriverControlQCOM GLEW_GET_FUN(__glewDisableDriverControlQCOM) +#define glEnableDriverControlQCOM GLEW_GET_FUN(__glewEnableDriverControlQCOM) +#define glGetDriverControlStringQCOM GLEW_GET_FUN(__glewGetDriverControlStringQCOM) +#define glGetDriverControlsQCOM GLEW_GET_FUN(__glewGetDriverControlsQCOM) + +#define GLEW_QCOM_driver_control GLEW_GET_VAR(__GLEW_QCOM_driver_control) + +#endif /* GL_QCOM_driver_control */ + +/* -------------------------- GL_QCOM_extended_get ------------------------- */ + +#ifndef GL_QCOM_extended_get +#define GL_QCOM_extended_get 1 + +#define GL_TEXTURE_WIDTH_QCOM 0x8BD2 +#define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 +#define GL_TEXTURE_DEPTH_QCOM 0x8BD4 +#define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 +#define GL_TEXTURE_FORMAT_QCOM 0x8BD6 +#define GL_TEXTURE_TYPE_QCOM 0x8BD7 +#define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 +#define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 +#define GL_TEXTURE_TARGET_QCOM 0x8BDA +#define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB +#define GL_STATE_RESTORE 0x8BDC + +typedef void (GLAPIENTRY * PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, void** params); +typedef void (GLAPIENTRY * PFNGLEXTGETBUFFERSQCOMPROC) (GLuint* buffers, GLint maxBuffers, GLint* numBuffers); +typedef void (GLAPIENTRY * PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint* framebuffers, GLint maxFramebuffers, GLint* numFramebuffers); +typedef void (GLAPIENTRY * PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint* renderbuffers, GLint maxRenderbuffers, GLint* numRenderbuffers); +typedef void (GLAPIENTRY * PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, void *texels); +typedef void (GLAPIENTRY * PFNGLEXTGETTEXTURESQCOMPROC) (GLuint* textures, GLint maxTextures, GLint* numTextures); +typedef void (GLAPIENTRY * PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); + +#define glExtGetBufferPointervQCOM GLEW_GET_FUN(__glewExtGetBufferPointervQCOM) +#define glExtGetBuffersQCOM GLEW_GET_FUN(__glewExtGetBuffersQCOM) +#define glExtGetFramebuffersQCOM GLEW_GET_FUN(__glewExtGetFramebuffersQCOM) +#define glExtGetRenderbuffersQCOM GLEW_GET_FUN(__glewExtGetRenderbuffersQCOM) +#define glExtGetTexLevelParameterivQCOM GLEW_GET_FUN(__glewExtGetTexLevelParameterivQCOM) +#define glExtGetTexSubImageQCOM GLEW_GET_FUN(__glewExtGetTexSubImageQCOM) +#define glExtGetTexturesQCOM GLEW_GET_FUN(__glewExtGetTexturesQCOM) +#define glExtTexObjectStateOverrideiQCOM GLEW_GET_FUN(__glewExtTexObjectStateOverrideiQCOM) + +#define GLEW_QCOM_extended_get GLEW_GET_VAR(__GLEW_QCOM_extended_get) + +#endif /* GL_QCOM_extended_get */ + +/* ------------------------- GL_QCOM_extended_get2 ------------------------- */ + +#ifndef GL_QCOM_extended_get2 +#define GL_QCOM_extended_get2 1 + +typedef void (GLAPIENTRY * PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar* source, GLint* length); +typedef void (GLAPIENTRY * PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint* programs, GLint maxPrograms, GLint* numPrograms); +typedef void (GLAPIENTRY * PFNGLEXTGETSHADERSQCOMPROC) (GLuint* shaders, GLint maxShaders, GLint* numShaders); +typedef GLboolean (GLAPIENTRY * PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); + +#define glExtGetProgramBinarySourceQCOM GLEW_GET_FUN(__glewExtGetProgramBinarySourceQCOM) +#define glExtGetProgramsQCOM GLEW_GET_FUN(__glewExtGetProgramsQCOM) +#define glExtGetShadersQCOM GLEW_GET_FUN(__glewExtGetShadersQCOM) +#define glExtIsProgramBinaryQCOM GLEW_GET_FUN(__glewExtIsProgramBinaryQCOM) + +#define GLEW_QCOM_extended_get2 GLEW_GET_VAR(__GLEW_QCOM_extended_get2) + +#endif /* GL_QCOM_extended_get2 */ + +/* ---------------------- GL_QCOM_framebuffer_foveated --------------------- */ + +#ifndef GL_QCOM_framebuffer_foveated +#define GL_QCOM_framebuffer_foveated 1 + +#define GL_FOVEATION_ENABLE_BIT_QCOM 0x1 +#define GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM 0x2 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERFOVEATIONCONFIGQCOMPROC) (GLuint fbo, GLuint numLayers, GLuint focalPointsPerLayer, GLuint requestedFeatures, GLuint* providedFeatures); +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERFOVEATIONPARAMETERSQCOMPROC) (GLuint fbo, GLuint layer, GLuint focalPoint, GLfloat focalX, GLfloat focalY, GLfloat gainX, GLfloat gainY, GLfloat foveaArea); + +#define glFramebufferFoveationConfigQCOM GLEW_GET_FUN(__glewFramebufferFoveationConfigQCOM) +#define glFramebufferFoveationParametersQCOM GLEW_GET_FUN(__glewFramebufferFoveationParametersQCOM) + +#define GLEW_QCOM_framebuffer_foveated GLEW_GET_VAR(__GLEW_QCOM_framebuffer_foveated) + +#endif /* GL_QCOM_framebuffer_foveated */ + +/* ---------------------- GL_QCOM_perfmon_global_mode ---------------------- */ + +#ifndef GL_QCOM_perfmon_global_mode +#define GL_QCOM_perfmon_global_mode 1 + +#define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 + +#define GLEW_QCOM_perfmon_global_mode GLEW_GET_VAR(__GLEW_QCOM_perfmon_global_mode) + +#endif /* GL_QCOM_perfmon_global_mode */ + +/* -------------- GL_QCOM_shader_framebuffer_fetch_noncoherent ------------- */ + +#ifndef GL_QCOM_shader_framebuffer_fetch_noncoherent +#define GL_QCOM_shader_framebuffer_fetch_noncoherent 1 + +#define GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM 0x96A2 + +typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERFETCHBARRIERQCOMPROC) (void); + +#define glFramebufferFetchBarrierQCOM GLEW_GET_FUN(__glewFramebufferFetchBarrierQCOM) + +#define GLEW_QCOM_shader_framebuffer_fetch_noncoherent GLEW_GET_VAR(__GLEW_QCOM_shader_framebuffer_fetch_noncoherent) + +#endif /* GL_QCOM_shader_framebuffer_fetch_noncoherent */ + +/* ----------------- GL_QCOM_shader_framebuffer_fetch_rate ----------------- */ + +#ifndef GL_QCOM_shader_framebuffer_fetch_rate +#define GL_QCOM_shader_framebuffer_fetch_rate 1 + +#define GLEW_QCOM_shader_framebuffer_fetch_rate GLEW_GET_VAR(__GLEW_QCOM_shader_framebuffer_fetch_rate) + +#endif /* GL_QCOM_shader_framebuffer_fetch_rate */ + +/* ------------------------ GL_QCOM_texture_foveated ----------------------- */ + +#ifndef GL_QCOM_texture_foveated +#define GL_QCOM_texture_foveated 1 + +#define GL_FOVEATION_ENABLE_BIT_QCOM 0x1 +#define GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM 0x2 +#define GL_TEXTURE_FOVEATED_FEATURE_BITS_QCOM 0x8BFB +#define GL_TEXTURE_FOVEATED_MIN_PIXEL_DENSITY_QCOM 0x8BFC +#define GL_TEXTURE_FOVEATED_FEATURE_QUERY_QCOM 0x8BFD +#define GL_TEXTURE_FOVEATED_NUM_FOCAL_POINTS_QUERY_QCOM 0x8BFE +#define GL_FRAMEBUFFER_INCOMPLETE_FOVEATION_QCOM 0x8BFF + +typedef void (GLAPIENTRY * PFNGLTEXTUREFOVEATIONPARAMETERSQCOMPROC) (GLuint texture, GLuint layer, GLuint focalPoint, GLfloat focalX, GLfloat focalY, GLfloat gainX, GLfloat gainY, GLfloat foveaArea); + +#define glTextureFoveationParametersQCOM GLEW_GET_FUN(__glewTextureFoveationParametersQCOM) + +#define GLEW_QCOM_texture_foveated GLEW_GET_VAR(__GLEW_QCOM_texture_foveated) + +#endif /* GL_QCOM_texture_foveated */ + +/* --------------- GL_QCOM_texture_foveated_subsampled_layout -------------- */ + +#ifndef GL_QCOM_texture_foveated_subsampled_layout +#define GL_QCOM_texture_foveated_subsampled_layout 1 + +#define GL_FOVEATION_SUBSAMPLED_LAYOUT_METHOD_BIT_QCOM 0x4 +#define GL_MAX_SHADER_SUBSAMPLED_IMAGE_UNITS_QCOM 0x8FA1 + +#define GLEW_QCOM_texture_foveated_subsampled_layout GLEW_GET_VAR(__GLEW_QCOM_texture_foveated_subsampled_layout) + +#endif /* GL_QCOM_texture_foveated_subsampled_layout */ + +/* ------------------------ GL_QCOM_tiled_rendering ------------------------ */ + +#ifndef GL_QCOM_tiled_rendering +#define GL_QCOM_tiled_rendering 1 + +#define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 +#define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 +#define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 +#define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 +#define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 +#define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 +#define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 +#define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 +#define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 +#define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 +#define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 +#define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 +#define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 +#define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 +#define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 +#define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 +#define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 +#define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 +#define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 +#define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 +#define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 +#define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 +#define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 +#define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 +#define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 +#define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 +#define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 +#define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 +#define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 +#define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 +#define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 +#define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 + +typedef void (GLAPIENTRY * PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); +typedef void (GLAPIENTRY * PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); + +#define glEndTilingQCOM GLEW_GET_FUN(__glewEndTilingQCOM) +#define glStartTilingQCOM GLEW_GET_FUN(__glewStartTilingQCOM) + +#define GLEW_QCOM_tiled_rendering GLEW_GET_VAR(__GLEW_QCOM_tiled_rendering) + +#endif /* GL_QCOM_tiled_rendering */ + +/* ---------------------- GL_QCOM_writeonly_rendering ---------------------- */ + +#ifndef GL_QCOM_writeonly_rendering +#define GL_QCOM_writeonly_rendering 1 + +#define GL_WRITEONLY_RENDERING_QCOM 0x8823 + +#define GLEW_QCOM_writeonly_rendering GLEW_GET_VAR(__GLEW_QCOM_writeonly_rendering) + +#endif /* GL_QCOM_writeonly_rendering */ + +/* ---------------------- GL_REGAL_ES1_0_compatibility --------------------- */ + +#ifndef GL_REGAL_ES1_0_compatibility +#define GL_REGAL_ES1_0_compatibility 1 + +typedef int GLclampx; + +typedef void (GLAPIENTRY * PFNGLALPHAFUNCXPROC) (GLenum func, GLclampx ref); +typedef void (GLAPIENTRY * PFNGLCLEARCOLORXPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); +typedef void (GLAPIENTRY * PFNGLCLEARDEPTHXPROC) (GLclampx depth); +typedef void (GLAPIENTRY * PFNGLCOLOR4XPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); +typedef void (GLAPIENTRY * PFNGLDEPTHRANGEXPROC) (GLclampx zNear, GLclampx zFar); +typedef void (GLAPIENTRY * PFNGLFOGXPROC) (GLenum pname, GLfixed param); +typedef void (GLAPIENTRY * PFNGLFOGXVPROC) (GLenum pname, const GLfixed* params); +typedef void (GLAPIENTRY * PFNGLFRUSTUMFPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +typedef void (GLAPIENTRY * PFNGLFRUSTUMXPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +typedef void (GLAPIENTRY * PFNGLLIGHTMODELXPROC) (GLenum pname, GLfixed param); +typedef void (GLAPIENTRY * PFNGLLIGHTMODELXVPROC) (GLenum pname, const GLfixed* params); +typedef void (GLAPIENTRY * PFNGLLIGHTXPROC) (GLenum light, GLenum pname, GLfixed param); +typedef void (GLAPIENTRY * PFNGLLIGHTXVPROC) (GLenum light, GLenum pname, const GLfixed* params); +typedef void (GLAPIENTRY * PFNGLLINEWIDTHXPROC) (GLfixed width); +typedef void (GLAPIENTRY * PFNGLLOADMATRIXXPROC) (const GLfixed* m); +typedef void (GLAPIENTRY * PFNGLMATERIALXPROC) (GLenum face, GLenum pname, GLfixed param); +typedef void (GLAPIENTRY * PFNGLMATERIALXVPROC) (GLenum face, GLenum pname, const GLfixed* params); +typedef void (GLAPIENTRY * PFNGLMULTMATRIXXPROC) (const GLfixed* m); +typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4XPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); +typedef void (GLAPIENTRY * PFNGLNORMAL3XPROC) (GLfixed nx, GLfixed ny, GLfixed nz); +typedef void (GLAPIENTRY * PFNGLORTHOFPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +typedef void (GLAPIENTRY * PFNGLORTHOXPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +typedef void (GLAPIENTRY * PFNGLPOINTSIZEXPROC) (GLfixed size); +typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETXPROC) (GLfixed factor, GLfixed units); +typedef void (GLAPIENTRY * PFNGLROTATEXPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); +typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEXPROC) (GLclampx value, GLboolean invert); +typedef void (GLAPIENTRY * PFNGLSCALEXPROC) (GLfixed x, GLfixed y, GLfixed z); +typedef void (GLAPIENTRY * PFNGLTEXENVXPROC) (GLenum target, GLenum pname, GLfixed param); +typedef void (GLAPIENTRY * PFNGLTEXENVXVPROC) (GLenum target, GLenum pname, const GLfixed* params); +typedef void (GLAPIENTRY * PFNGLTEXPARAMETERXPROC) (GLenum target, GLenum pname, GLfixed param); +typedef void (GLAPIENTRY * PFNGLTRANSLATEXPROC) (GLfixed x, GLfixed y, GLfixed z); + +#define glAlphaFuncx GLEW_GET_FUN(__glewAlphaFuncx) +#define glClearColorx GLEW_GET_FUN(__glewClearColorx) +#define glClearDepthx GLEW_GET_FUN(__glewClearDepthx) +#define glColor4x GLEW_GET_FUN(__glewColor4x) +#define glDepthRangex GLEW_GET_FUN(__glewDepthRangex) +#define glFogx GLEW_GET_FUN(__glewFogx) +#define glFogxv GLEW_GET_FUN(__glewFogxv) +#define glFrustumf GLEW_GET_FUN(__glewFrustumf) +#define glFrustumx GLEW_GET_FUN(__glewFrustumx) +#define glLightModelx GLEW_GET_FUN(__glewLightModelx) +#define glLightModelxv GLEW_GET_FUN(__glewLightModelxv) +#define glLightx GLEW_GET_FUN(__glewLightx) +#define glLightxv GLEW_GET_FUN(__glewLightxv) +#define glLineWidthx GLEW_GET_FUN(__glewLineWidthx) +#define glLoadMatrixx GLEW_GET_FUN(__glewLoadMatrixx) +#define glMaterialx GLEW_GET_FUN(__glewMaterialx) +#define glMaterialxv GLEW_GET_FUN(__glewMaterialxv) +#define glMultMatrixx GLEW_GET_FUN(__glewMultMatrixx) +#define glMultiTexCoord4x GLEW_GET_FUN(__glewMultiTexCoord4x) +#define glNormal3x GLEW_GET_FUN(__glewNormal3x) +#define glOrthof GLEW_GET_FUN(__glewOrthof) +#define glOrthox GLEW_GET_FUN(__glewOrthox) +#define glPointSizex GLEW_GET_FUN(__glewPointSizex) +#define glPolygonOffsetx GLEW_GET_FUN(__glewPolygonOffsetx) +#define glRotatex GLEW_GET_FUN(__glewRotatex) +#define glSampleCoveragex GLEW_GET_FUN(__glewSampleCoveragex) +#define glScalex GLEW_GET_FUN(__glewScalex) +#define glTexEnvx GLEW_GET_FUN(__glewTexEnvx) +#define glTexEnvxv GLEW_GET_FUN(__glewTexEnvxv) +#define glTexParameterx GLEW_GET_FUN(__glewTexParameterx) +#define glTranslatex GLEW_GET_FUN(__glewTranslatex) + +#define GLEW_REGAL_ES1_0_compatibility GLEW_GET_VAR(__GLEW_REGAL_ES1_0_compatibility) + +#endif /* GL_REGAL_ES1_0_compatibility */ + +/* ---------------------- GL_REGAL_ES1_1_compatibility --------------------- */ + +#ifndef GL_REGAL_ES1_1_compatibility +#define GL_REGAL_ES1_1_compatibility 1 + +typedef void (GLAPIENTRY * PFNGLCLIPPLANEFPROC) (GLenum plane, const GLfloat* equation); +typedef void (GLAPIENTRY * PFNGLCLIPPLANEXPROC) (GLenum plane, const GLfixed* equation); +typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEFPROC) (GLenum pname, GLfloat eqn[4]); +typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEXPROC) (GLenum pname, GLfixed eqn[4]); +typedef void (GLAPIENTRY * PFNGLGETFIXEDVPROC) (GLenum pname, GLfixed* params); +typedef void (GLAPIENTRY * PFNGLGETLIGHTXVPROC) (GLenum light, GLenum pname, GLfixed* params); +typedef void (GLAPIENTRY * PFNGLGETMATERIALXVPROC) (GLenum face, GLenum pname, GLfixed* params); +typedef void (GLAPIENTRY * PFNGLGETTEXENVXVPROC) (GLenum env, GLenum pname, GLfixed* params); +typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERXVPROC) (GLenum target, GLenum pname, GLfixed* params); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERXPROC) (GLenum pname, GLfixed param); +typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERXVPROC) (GLenum pname, const GLfixed* params); +typedef void (GLAPIENTRY * PFNGLPOINTSIZEPOINTEROESPROC) (GLenum type, GLsizei stride, const void *pointer); +typedef void (GLAPIENTRY * PFNGLTEXPARAMETERXVPROC) (GLenum target, GLenum pname, const GLfixed* params); + +#define glClipPlanef GLEW_GET_FUN(__glewClipPlanef) +#define glClipPlanex GLEW_GET_FUN(__glewClipPlanex) +#define glGetClipPlanef GLEW_GET_FUN(__glewGetClipPlanef) +#define glGetClipPlanex GLEW_GET_FUN(__glewGetClipPlanex) +#define glGetFixedv GLEW_GET_FUN(__glewGetFixedv) +#define glGetLightxv GLEW_GET_FUN(__glewGetLightxv) +#define glGetMaterialxv GLEW_GET_FUN(__glewGetMaterialxv) +#define glGetTexEnvxv GLEW_GET_FUN(__glewGetTexEnvxv) +#define glGetTexParameterxv GLEW_GET_FUN(__glewGetTexParameterxv) +#define glPointParameterx GLEW_GET_FUN(__glewPointParameterx) +#define glPointParameterxv GLEW_GET_FUN(__glewPointParameterxv) +#define glPointSizePointerOES GLEW_GET_FUN(__glewPointSizePointerOES) +#define glTexParameterxv GLEW_GET_FUN(__glewTexParameterxv) + +#define GLEW_REGAL_ES1_1_compatibility GLEW_GET_VAR(__GLEW_REGAL_ES1_1_compatibility) + +#endif /* GL_REGAL_ES1_1_compatibility */ + +/* ---------------------------- GL_REGAL_enable ---------------------------- */ + +#ifndef GL_REGAL_enable +#define GL_REGAL_enable 1 + +#define GL_ERROR_REGAL 0x9322 +#define GL_DEBUG_REGAL 0x9323 +#define GL_LOG_REGAL 0x9324 +#define GL_EMULATION_REGAL 0x9325 +#define GL_DRIVER_REGAL 0x9326 +#define GL_MISSING_REGAL 0x9360 +#define GL_TRACE_REGAL 0x9361 +#define GL_CACHE_REGAL 0x9362 +#define GL_CODE_REGAL 0x9363 +#define GL_STATISTICS_REGAL 0x9364 + +#define GLEW_REGAL_enable GLEW_GET_VAR(__GLEW_REGAL_enable) + +#endif /* GL_REGAL_enable */ + +/* ------------------------- GL_REGAL_error_string ------------------------- */ + +#ifndef GL_REGAL_error_string +#define GL_REGAL_error_string 1 + +typedef const GLchar* (GLAPIENTRY * PFNGLERRORSTRINGREGALPROC) (GLenum error); + +#define glErrorStringREGAL GLEW_GET_FUN(__glewErrorStringREGAL) + +#define GLEW_REGAL_error_string GLEW_GET_VAR(__GLEW_REGAL_error_string) + +#endif /* GL_REGAL_error_string */ + +/* ------------------------ GL_REGAL_extension_query ----------------------- */ + +#ifndef GL_REGAL_extension_query +#define GL_REGAL_extension_query 1 + +typedef GLboolean (GLAPIENTRY * PFNGLGETEXTENSIONREGALPROC) (const GLchar* ext); +typedef GLboolean (GLAPIENTRY * PFNGLISSUPPORTEDREGALPROC) (const GLchar* ext); + +#define glGetExtensionREGAL GLEW_GET_FUN(__glewGetExtensionREGAL) +#define glIsSupportedREGAL GLEW_GET_FUN(__glewIsSupportedREGAL) + +#define GLEW_REGAL_extension_query GLEW_GET_VAR(__GLEW_REGAL_extension_query) + +#endif /* GL_REGAL_extension_query */ + +/* ------------------------------ GL_REGAL_log ----------------------------- */ + +#ifndef GL_REGAL_log +#define GL_REGAL_log 1 + +#define GL_LOG_ERROR_REGAL 0x9319 +#define GL_LOG_WARNING_REGAL 0x931A +#define GL_LOG_INFO_REGAL 0x931B +#define GL_LOG_APP_REGAL 0x931C +#define GL_LOG_DRIVER_REGAL 0x931D +#define GL_LOG_INTERNAL_REGAL 0x931E +#define GL_LOG_DEBUG_REGAL 0x931F +#define GL_LOG_STATUS_REGAL 0x9320 +#define GL_LOG_HTTP_REGAL 0x9321 + +typedef void (APIENTRY *GLLOGPROCREGAL)(GLenum stream, GLsizei length, const GLchar *message, void *context); + +typedef void (GLAPIENTRY * PFNGLLOGMESSAGECALLBACKREGALPROC) (GLLOGPROCREGAL callback); + +#define glLogMessageCallbackREGAL GLEW_GET_FUN(__glewLogMessageCallbackREGAL) + +#define GLEW_REGAL_log GLEW_GET_VAR(__GLEW_REGAL_log) + +#endif /* GL_REGAL_log */ + +/* ------------------------- GL_REGAL_proc_address ------------------------- */ + +#ifndef GL_REGAL_proc_address +#define GL_REGAL_proc_address 1 + +typedef void * (GLAPIENTRY * PFNGLGETPROCADDRESSREGALPROC) (const GLchar *name); + +#define glGetProcAddressREGAL GLEW_GET_FUN(__glewGetProcAddressREGAL) + +#define GLEW_REGAL_proc_address GLEW_GET_VAR(__GLEW_REGAL_proc_address) + +#endif /* GL_REGAL_proc_address */ + +/* ----------------------- GL_REND_screen_coordinates ---------------------- */ + +#ifndef GL_REND_screen_coordinates +#define GL_REND_screen_coordinates 1 + +#define GL_SCREEN_COORDINATES_REND 0x8490 +#define GL_INVERTED_SCREEN_W_REND 0x8491 + +#define GLEW_REND_screen_coordinates GLEW_GET_VAR(__GLEW_REND_screen_coordinates) + +#endif /* GL_REND_screen_coordinates */ + +/* ------------------------------- GL_S3_s3tc ------------------------------ */ + +#ifndef GL_S3_s3tc +#define GL_S3_s3tc 1 + +#define GL_RGB_S3TC 0x83A0 +#define GL_RGB4_S3TC 0x83A1 +#define GL_RGBA_S3TC 0x83A2 +#define GL_RGBA4_S3TC 0x83A3 +#define GL_RGBA_DXT5_S3TC 0x83A4 +#define GL_RGBA4_DXT5_S3TC 0x83A5 + +#define GLEW_S3_s3tc GLEW_GET_VAR(__GLEW_S3_s3tc) + +#endif /* GL_S3_s3tc */ + +/* ------------------------- GL_SGIS_clip_band_hint ------------------------ */ + +#ifndef GL_SGIS_clip_band_hint +#define GL_SGIS_clip_band_hint 1 + +#define GLEW_SGIS_clip_band_hint GLEW_GET_VAR(__GLEW_SGIS_clip_band_hint) + +#endif /* GL_SGIS_clip_band_hint */ + +/* -------------------------- GL_SGIS_color_range -------------------------- */ + +#ifndef GL_SGIS_color_range +#define GL_SGIS_color_range 1 + +#define GL_EXTENDED_RANGE_SGIS 0x85A5 +#define GL_MIN_RED_SGIS 0x85A6 +#define GL_MAX_RED_SGIS 0x85A7 +#define GL_MIN_GREEN_SGIS 0x85A8 +#define GL_MAX_GREEN_SGIS 0x85A9 +#define GL_MIN_BLUE_SGIS 0x85AA +#define GL_MAX_BLUE_SGIS 0x85AB +#define GL_MIN_ALPHA_SGIS 0x85AC +#define GL_MAX_ALPHA_SGIS 0x85AD + +#define GLEW_SGIS_color_range GLEW_GET_VAR(__GLEW_SGIS_color_range) + +#endif /* GL_SGIS_color_range */ + +/* ------------------------- GL_SGIS_detail_texture ------------------------ */ + +#ifndef GL_SGIS_detail_texture +#define GL_SGIS_detail_texture 1 + +typedef void (GLAPIENTRY * PFNGLDETAILTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat* points); +typedef void (GLAPIENTRY * PFNGLGETDETAILTEXFUNCSGISPROC) (GLenum target, GLfloat* points); + +#define glDetailTexFuncSGIS GLEW_GET_FUN(__glewDetailTexFuncSGIS) +#define glGetDetailTexFuncSGIS GLEW_GET_FUN(__glewGetDetailTexFuncSGIS) + +#define GLEW_SGIS_detail_texture GLEW_GET_VAR(__GLEW_SGIS_detail_texture) + +#endif /* GL_SGIS_detail_texture */ + +/* -------------------------- GL_SGIS_fog_function ------------------------- */ + +#ifndef GL_SGIS_fog_function +#define GL_SGIS_fog_function 1 + +typedef void (GLAPIENTRY * PFNGLFOGFUNCSGISPROC) (GLsizei n, const GLfloat* points); +typedef void (GLAPIENTRY * PFNGLGETFOGFUNCSGISPROC) (GLfloat* points); + +#define glFogFuncSGIS GLEW_GET_FUN(__glewFogFuncSGIS) +#define glGetFogFuncSGIS GLEW_GET_FUN(__glewGetFogFuncSGIS) + +#define GLEW_SGIS_fog_function GLEW_GET_VAR(__GLEW_SGIS_fog_function) + +#endif /* GL_SGIS_fog_function */ + +/* ------------------------ GL_SGIS_generate_mipmap ------------------------ */ + +#ifndef GL_SGIS_generate_mipmap +#define GL_SGIS_generate_mipmap 1 + +#define GL_GENERATE_MIPMAP_SGIS 0x8191 +#define GL_GENERATE_MIPMAP_HINT_SGIS 0x8192 + +#define GLEW_SGIS_generate_mipmap GLEW_GET_VAR(__GLEW_SGIS_generate_mipmap) + +#endif /* GL_SGIS_generate_mipmap */ + +/* -------------------------- GL_SGIS_line_texgen -------------------------- */ + +#ifndef GL_SGIS_line_texgen +#define GL_SGIS_line_texgen 1 + +#define GLEW_SGIS_line_texgen GLEW_GET_VAR(__GLEW_SGIS_line_texgen) + +#endif /* GL_SGIS_line_texgen */ + +/* -------------------------- GL_SGIS_multisample -------------------------- */ + +#ifndef GL_SGIS_multisample +#define GL_SGIS_multisample 1 + +#define GL_MULTISAMPLE_SGIS 0x809D +#define GL_SAMPLE_ALPHA_TO_MASK_SGIS 0x809E +#define GL_SAMPLE_ALPHA_TO_ONE_SGIS 0x809F +#define GL_SAMPLE_MASK_SGIS 0x80A0 +#define GL_1PASS_SGIS 0x80A1 +#define GL_2PASS_0_SGIS 0x80A2 +#define GL_2PASS_1_SGIS 0x80A3 +#define GL_4PASS_0_SGIS 0x80A4 +#define GL_4PASS_1_SGIS 0x80A5 +#define GL_4PASS_2_SGIS 0x80A6 +#define GL_4PASS_3_SGIS 0x80A7 +#define GL_SAMPLE_BUFFERS_SGIS 0x80A8 +#define GL_SAMPLES_SGIS 0x80A9 +#define GL_SAMPLE_MASK_VALUE_SGIS 0x80AA +#define GL_SAMPLE_MASK_INVERT_SGIS 0x80AB +#define GL_SAMPLE_PATTERN_SGIS 0x80AC + +typedef void (GLAPIENTRY * PFNGLSAMPLEMASKSGISPROC) (GLclampf value, GLboolean invert); +typedef void (GLAPIENTRY * PFNGLSAMPLEPATTERNSGISPROC) (GLenum pattern); + +#define glSampleMaskSGIS GLEW_GET_FUN(__glewSampleMaskSGIS) +#define glSamplePatternSGIS GLEW_GET_FUN(__glewSamplePatternSGIS) + +#define GLEW_SGIS_multisample GLEW_GET_VAR(__GLEW_SGIS_multisample) + +#endif /* GL_SGIS_multisample */ + +/* -------------------------- GL_SGIS_multitexture ------------------------- */ + +#ifndef GL_SGIS_multitexture +#define GL_SGIS_multitexture 1 + +#define GL_SELECTED_TEXTURE_SGIS 0x83C0 +#define GL_SELECTED_TEXTURE_COORD_SET_SGIS 0x83C1 +#define GL_SELECTED_TEXTURE_TRANSFORM_SGIS 0x83C2 +#define GL_MAX_TEXTURES_SGIS 0x83C3 +#define GL_MAX_TEXTURE_COORD_SETS_SGIS 0x83C4 +#define GL_TEXTURE_COORD_SET_INTERLEAVE_FACTOR_SGIS 0x83C5 +#define GL_TEXTURE_ENV_COORD_SET_SGIS 0x83C6 +#define GL_TEXTURE0_SGIS 0x83C7 +#define GL_TEXTURE1_SGIS 0x83C8 +#define GL_TEXTURE2_SGIS 0x83C9 +#define GL_TEXTURE3_SGIS 0x83CA + +typedef void (GLAPIENTRY * PFNGLINTERLEAVEDTEXTURECOORDSETSSGISPROC) (GLint factor); +typedef void (GLAPIENTRY * PFNGLSELECTTEXTURECOORDSETSGISPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLSELECTTEXTURESGISPROC) (GLenum target); +typedef void (GLAPIENTRY * PFNGLSELECTTEXTURETRANSFORMSGISPROC) (GLenum target); + +#define glInterleavedTextureCoordSetsSGIS GLEW_GET_FUN(__glewInterleavedTextureCoordSetsSGIS) +#define glSelectTextureCoordSetSGIS GLEW_GET_FUN(__glewSelectTextureCoordSetSGIS) +#define glSelectTextureSGIS GLEW_GET_FUN(__glewSelectTextureSGIS) +#define glSelectTextureTransformSGIS GLEW_GET_FUN(__glewSelectTextureTransformSGIS) + +#define GLEW_SGIS_multitexture GLEW_GET_VAR(__GLEW_SGIS_multitexture) + +#endif /* GL_SGIS_multitexture */ + +/* ------------------------- GL_SGIS_pixel_texture ------------------------- */ + +#ifndef GL_SGIS_pixel_texture +#define GL_SGIS_pixel_texture 1 + +#define GLEW_SGIS_pixel_texture GLEW_GET_VAR(__GLEW_SGIS_pixel_texture) + +#endif /* GL_SGIS_pixel_texture */ + +/* ----------------------- GL_SGIS_point_line_texgen ----------------------- */ + +#ifndef GL_SGIS_point_line_texgen +#define GL_SGIS_point_line_texgen 1 + +#define GL_EYE_DISTANCE_TO_POINT_SGIS 0x81F0 +#define GL_OBJECT_DISTANCE_TO_POINT_SGIS 0x81F1 +#define GL_EYE_DISTANCE_TO_LINE_SGIS 0x81F2 +#define GL_OBJECT_DISTANCE_TO_LINE_SGIS 0x81F3 +#define GL_EYE_POINT_SGIS 0x81F4 +#define GL_OBJECT_POINT_SGIS 0x81F5 +#define GL_EYE_LINE_SGIS 0x81F6 +#define GL_OBJECT_LINE_SGIS 0x81F7 + +#define GLEW_SGIS_point_line_texgen GLEW_GET_VAR(__GLEW_SGIS_point_line_texgen) + +#endif /* GL_SGIS_point_line_texgen */ + +/* ----------------------- GL_SGIS_shared_multisample ---------------------- */ + +#ifndef GL_SGIS_shared_multisample +#define GL_SGIS_shared_multisample 1 + +typedef void (GLAPIENTRY * PFNGLMULTISAMPLESUBRECTPOSSGISPROC) (GLint x, GLint y); + +#define glMultisampleSubRectPosSGIS GLEW_GET_FUN(__glewMultisampleSubRectPosSGIS) + +#define GLEW_SGIS_shared_multisample GLEW_GET_VAR(__GLEW_SGIS_shared_multisample) + +#endif /* GL_SGIS_shared_multisample */ + +/* ------------------------ GL_SGIS_sharpen_texture ------------------------ */ + +#ifndef GL_SGIS_sharpen_texture +#define GL_SGIS_sharpen_texture 1 + +typedef void (GLAPIENTRY * PFNGLGETSHARPENTEXFUNCSGISPROC) (GLenum target, GLfloat* points); +typedef void (GLAPIENTRY * PFNGLSHARPENTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat* points); + +#define glGetSharpenTexFuncSGIS GLEW_GET_FUN(__glewGetSharpenTexFuncSGIS) +#define glSharpenTexFuncSGIS GLEW_GET_FUN(__glewSharpenTexFuncSGIS) + +#define GLEW_SGIS_sharpen_texture GLEW_GET_VAR(__GLEW_SGIS_sharpen_texture) + +#endif /* GL_SGIS_sharpen_texture */ + +/* --------------------------- GL_SGIS_texture4D --------------------------- */ + +#ifndef GL_SGIS_texture4D +#define GL_SGIS_texture4D 1 + +typedef void (GLAPIENTRY * PFNGLTEXIMAGE4DSGISPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLint border, GLenum format, GLenum type, const void *pixels); +typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE4DSGISPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLenum format, GLenum type, const void *pixels); + +#define glTexImage4DSGIS GLEW_GET_FUN(__glewTexImage4DSGIS) +#define glTexSubImage4DSGIS GLEW_GET_FUN(__glewTexSubImage4DSGIS) + +#define GLEW_SGIS_texture4D GLEW_GET_VAR(__GLEW_SGIS_texture4D) + +#endif /* GL_SGIS_texture4D */ + +/* ---------------------- GL_SGIS_texture_border_clamp --------------------- */ + +#ifndef GL_SGIS_texture_border_clamp +#define GL_SGIS_texture_border_clamp 1 + +#define GL_CLAMP_TO_BORDER_SGIS 0x812D + +#define GLEW_SGIS_texture_border_clamp GLEW_GET_VAR(__GLEW_SGIS_texture_border_clamp) + +#endif /* GL_SGIS_texture_border_clamp */ + +/* ----------------------- GL_SGIS_texture_edge_clamp ---------------------- */ + +#ifndef GL_SGIS_texture_edge_clamp +#define GL_SGIS_texture_edge_clamp 1 + +#define GL_CLAMP_TO_EDGE_SGIS 0x812F + +#define GLEW_SGIS_texture_edge_clamp GLEW_GET_VAR(__GLEW_SGIS_texture_edge_clamp) + +#endif /* GL_SGIS_texture_edge_clamp */ + +/* ------------------------ GL_SGIS_texture_filter4 ------------------------ */ + +#ifndef GL_SGIS_texture_filter4 +#define GL_SGIS_texture_filter4 1 + +typedef void (GLAPIENTRY * PFNGLGETTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLfloat* weights); +typedef void (GLAPIENTRY * PFNGLTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLsizei n, const GLfloat* weights); + +#define glGetTexFilterFuncSGIS GLEW_GET_FUN(__glewGetTexFilterFuncSGIS) +#define glTexFilterFuncSGIS GLEW_GET_FUN(__glewTexFilterFuncSGIS) + +#define GLEW_SGIS_texture_filter4 GLEW_GET_VAR(__GLEW_SGIS_texture_filter4) + +#endif /* GL_SGIS_texture_filter4 */ + +/* -------------------------- GL_SGIS_texture_lod -------------------------- */ + +#ifndef GL_SGIS_texture_lod +#define GL_SGIS_texture_lod 1 + +#define GL_TEXTURE_MIN_LOD_SGIS 0x813A +#define GL_TEXTURE_MAX_LOD_SGIS 0x813B +#define GL_TEXTURE_BASE_LEVEL_SGIS 0x813C +#define GL_TEXTURE_MAX_LEVEL_SGIS 0x813D + +#define GLEW_SGIS_texture_lod GLEW_GET_VAR(__GLEW_SGIS_texture_lod) + +#endif /* GL_SGIS_texture_lod */ + +/* ------------------------- GL_SGIS_texture_select ------------------------ */ + +#ifndef GL_SGIS_texture_select +#define GL_SGIS_texture_select 1 + +#define GLEW_SGIS_texture_select GLEW_GET_VAR(__GLEW_SGIS_texture_select) + +#endif /* GL_SGIS_texture_select */ + +/* ----------------------------- GL_SGIX_async ----------------------------- */ + +#ifndef GL_SGIX_async +#define GL_SGIX_async 1 + +#define GL_ASYNC_MARKER_SGIX 0x8329 + +typedef void (GLAPIENTRY * PFNGLASYNCMARKERSGIXPROC) (GLuint marker); +typedef void (GLAPIENTRY * PFNGLDELETEASYNCMARKERSSGIXPROC) (GLuint marker, GLsizei range); +typedef GLint (GLAPIENTRY * PFNGLFINISHASYNCSGIXPROC) (GLuint* markerp); +typedef GLuint (GLAPIENTRY * PFNGLGENASYNCMARKERSSGIXPROC) (GLsizei range); +typedef GLboolean (GLAPIENTRY * PFNGLISASYNCMARKERSGIXPROC) (GLuint marker); +typedef GLint (GLAPIENTRY * PFNGLPOLLASYNCSGIXPROC) (GLuint* markerp); + +#define glAsyncMarkerSGIX GLEW_GET_FUN(__glewAsyncMarkerSGIX) +#define glDeleteAsyncMarkersSGIX GLEW_GET_FUN(__glewDeleteAsyncMarkersSGIX) +#define glFinishAsyncSGIX GLEW_GET_FUN(__glewFinishAsyncSGIX) +#define glGenAsyncMarkersSGIX GLEW_GET_FUN(__glewGenAsyncMarkersSGIX) +#define glIsAsyncMarkerSGIX GLEW_GET_FUN(__glewIsAsyncMarkerSGIX) +#define glPollAsyncSGIX GLEW_GET_FUN(__glewPollAsyncSGIX) + +#define GLEW_SGIX_async GLEW_GET_VAR(__GLEW_SGIX_async) + +#endif /* GL_SGIX_async */ + +/* ------------------------ GL_SGIX_async_histogram ------------------------ */ + +#ifndef GL_SGIX_async_histogram +#define GL_SGIX_async_histogram 1 + +#define GL_ASYNC_HISTOGRAM_SGIX 0x832C +#define GL_MAX_ASYNC_HISTOGRAM_SGIX 0x832D + +#define GLEW_SGIX_async_histogram GLEW_GET_VAR(__GLEW_SGIX_async_histogram) + +#endif /* GL_SGIX_async_histogram */ + +/* -------------------------- GL_SGIX_async_pixel -------------------------- */ + +#ifndef GL_SGIX_async_pixel +#define GL_SGIX_async_pixel 1 + +#define GL_ASYNC_TEX_IMAGE_SGIX 0x835C +#define GL_ASYNC_DRAW_PIXELS_SGIX 0x835D +#define GL_ASYNC_READ_PIXELS_SGIX 0x835E +#define GL_MAX_ASYNC_TEX_IMAGE_SGIX 0x835F +#define GL_MAX_ASYNC_DRAW_PIXELS_SGIX 0x8360 +#define GL_MAX_ASYNC_READ_PIXELS_SGIX 0x8361 + +#define GLEW_SGIX_async_pixel GLEW_GET_VAR(__GLEW_SGIX_async_pixel) + +#endif /* GL_SGIX_async_pixel */ + +/* ----------------------- GL_SGIX_bali_g_instruments ---------------------- */ + +#ifndef GL_SGIX_bali_g_instruments +#define GL_SGIX_bali_g_instruments 1 + +#define GL_BALI_NUM_TRIS_CULLED_INSTRUMENT 0x6080 +#define GL_BALI_NUM_PRIMS_CLIPPED_INSTRUMENT 0x6081 +#define GL_BALI_NUM_PRIMS_REJECT_INSTRUMENT 0x6082 +#define GL_BALI_NUM_PRIMS_CLIP_RESULT_INSTRUMENT 0x6083 + +#define GLEW_SGIX_bali_g_instruments GLEW_GET_VAR(__GLEW_SGIX_bali_g_instruments) + +#endif /* GL_SGIX_bali_g_instruments */ + +/* ----------------------- GL_SGIX_bali_r_instruments ---------------------- */ + +#ifndef GL_SGIX_bali_r_instruments +#define GL_SGIX_bali_r_instruments 1 + +#define GL_BALI_FRAGMENTS_GENERATED_INSTRUMENT 0x6090 +#define GL_BALI_DEPTH_PASS_INSTRUMENT 0x6091 +#define GL_BALI_R_CHIP_COUNT 0x6092 + +#define GLEW_SGIX_bali_r_instruments GLEW_GET_VAR(__GLEW_SGIX_bali_r_instruments) + +#endif /* GL_SGIX_bali_r_instruments */ + +/* --------------------- GL_SGIX_bali_timer_instruments -------------------- */ + +#ifndef GL_SGIX_bali_timer_instruments +#define GL_SGIX_bali_timer_instruments 1 + +#define GLEW_SGIX_bali_timer_instruments GLEW_GET_VAR(__GLEW_SGIX_bali_timer_instruments) + +#endif /* GL_SGIX_bali_timer_instruments */ + +/* ----------------------- GL_SGIX_blend_alpha_minmax ---------------------- */ + +#ifndef GL_SGIX_blend_alpha_minmax +#define GL_SGIX_blend_alpha_minmax 1 + +#define GL_ALPHA_MIN_SGIX 0x8320 +#define GL_ALPHA_MAX_SGIX 0x8321 + +#define GLEW_SGIX_blend_alpha_minmax GLEW_GET_VAR(__GLEW_SGIX_blend_alpha_minmax) + +#endif /* GL_SGIX_blend_alpha_minmax */ + +/* --------------------------- GL_SGIX_blend_cadd -------------------------- */ + +#ifndef GL_SGIX_blend_cadd +#define GL_SGIX_blend_cadd 1 + +#define GL_FUNC_COMPLEX_ADD_EXT 0x601C + +#define GLEW_SGIX_blend_cadd GLEW_GET_VAR(__GLEW_SGIX_blend_cadd) + +#endif /* GL_SGIX_blend_cadd */ + +/* ------------------------ GL_SGIX_blend_cmultiply ------------------------ */ + +#ifndef GL_SGIX_blend_cmultiply +#define GL_SGIX_blend_cmultiply 1 + +#define GL_FUNC_COMPLEX_MULTIPLY_EXT 0x601B + +#define GLEW_SGIX_blend_cmultiply GLEW_GET_VAR(__GLEW_SGIX_blend_cmultiply) + +#endif /* GL_SGIX_blend_cmultiply */ + +/* --------------------- GL_SGIX_calligraphic_fragment --------------------- */ + +#ifndef GL_SGIX_calligraphic_fragment +#define GL_SGIX_calligraphic_fragment 1 + +#define GLEW_SGIX_calligraphic_fragment GLEW_GET_VAR(__GLEW_SGIX_calligraphic_fragment) + +#endif /* GL_SGIX_calligraphic_fragment */ + +/* ---------------------------- GL_SGIX_clipmap ---------------------------- */ + +#ifndef GL_SGIX_clipmap +#define GL_SGIX_clipmap 1 + +#define GLEW_SGIX_clipmap GLEW_GET_VAR(__GLEW_SGIX_clipmap) + +#endif /* GL_SGIX_clipmap */ + +/* --------------------- GL_SGIX_color_matrix_accuracy --------------------- */ + +#ifndef GL_SGIX_color_matrix_accuracy +#define GL_SGIX_color_matrix_accuracy 1 + +#define GL_COLOR_MATRIX_HINT 0x8317 + +#define GLEW_SGIX_color_matrix_accuracy GLEW_GET_VAR(__GLEW_SGIX_color_matrix_accuracy) + +#endif /* GL_SGIX_color_matrix_accuracy */ + +/* --------------------- GL_SGIX_color_table_index_mode -------------------- */ + +#ifndef GL_SGIX_color_table_index_mode +#define GL_SGIX_color_table_index_mode 1 + +#define GLEW_SGIX_color_table_index_mode GLEW_GET_VAR(__GLEW_SGIX_color_table_index_mode) + +#endif /* GL_SGIX_color_table_index_mode */ + +/* ------------------------- GL_SGIX_complex_polar ------------------------- */ + +#ifndef GL_SGIX_complex_polar +#define GL_SGIX_complex_polar 1 + +#define GLEW_SGIX_complex_polar GLEW_GET_VAR(__GLEW_SGIX_complex_polar) + +#endif /* GL_SGIX_complex_polar */ + +/* ---------------------- GL_SGIX_convolution_accuracy --------------------- */ + +#ifndef GL_SGIX_convolution_accuracy +#define GL_SGIX_convolution_accuracy 1 + +#define GL_CONVOLUTION_HINT_SGIX 0x8316 + +#define GLEW_SGIX_convolution_accuracy GLEW_GET_VAR(__GLEW_SGIX_convolution_accuracy) + +#endif /* GL_SGIX_convolution_accuracy */ + +/* ---------------------------- GL_SGIX_cube_map --------------------------- */ + +#ifndef GL_SGIX_cube_map +#define GL_SGIX_cube_map 1 + +#define GL_ENV_MAP_SGIX 0x8340 +#define GL_CUBE_MAP_SGIX 0x8341 +#define GL_CUBE_MAP_ZP_SGIX 0x8342 +#define GL_CUBE_MAP_ZN_SGIX 0x8343 +#define GL_CUBE_MAP_XN_SGIX 0x8344 +#define GL_CUBE_MAP_XP_SGIX 0x8345 +#define GL_CUBE_MAP_YN_SGIX 0x8346 +#define GL_CUBE_MAP_YP_SGIX 0x8347 +#define GL_CUBE_MAP_BINDING_SGIX 0x8348 + +#define GLEW_SGIX_cube_map GLEW_GET_VAR(__GLEW_SGIX_cube_map) + +#endif /* GL_SGIX_cube_map */ + +/* ------------------------ GL_SGIX_cylinder_texgen ------------------------ */ + +#ifndef GL_SGIX_cylinder_texgen +#define GL_SGIX_cylinder_texgen 1 + +#define GLEW_SGIX_cylinder_texgen GLEW_GET_VAR(__GLEW_SGIX_cylinder_texgen) + +#endif /* GL_SGIX_cylinder_texgen */ + +/* ---------------------------- GL_SGIX_datapipe --------------------------- */ + +#ifndef GL_SGIX_datapipe +#define GL_SGIX_datapipe 1 + +#define GL_GEOMETRY_BIT 0x1 +#define GL_IMAGE_BIT 0x2 + +typedef void (GLAPIENTRY * PFNGLADDRESSSPACEPROC) (GLenum space, GLbitfield mask); +typedef GLint (GLAPIENTRY * PFNGLDATAPIPEPROC) (GLenum space); + +#define glAddressSpace GLEW_GET_FUN(__glewAddressSpace) +#define glDataPipe GLEW_GET_FUN(__glewDataPipe) + +#define GLEW_SGIX_datapipe GLEW_GET_VAR(__GLEW_SGIX_datapipe) + +#endif /* GL_SGIX_datapipe */ + +/* --------------------------- GL_SGIX_decimation -------------------------- */ + +#ifndef GL_SGIX_decimation +#define GL_SGIX_decimation 1 + +#define GLEW_SGIX_decimation GLEW_GET_VAR(__GLEW_SGIX_decimation) + +#endif /* GL_SGIX_decimation */ + +/* --------------------- GL_SGIX_depth_pass_instrument --------------------- */ + +#ifndef GL_SGIX_depth_pass_instrument +#define GL_SGIX_depth_pass_instrument 1 + +#define GL_DEPTH_PASS_INSTRUMENT_SGIX 0x8310 +#define GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX 0x8311 +#define GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX 0x8312 + +#define GLEW_SGIX_depth_pass_instrument GLEW_GET_VAR(__GLEW_SGIX_depth_pass_instrument) + +#endif /* GL_SGIX_depth_pass_instrument */ + +/* ------------------------- GL_SGIX_depth_texture ------------------------- */ + +#ifndef GL_SGIX_depth_texture +#define GL_SGIX_depth_texture 1 + +#define GL_DEPTH_COMPONENT16_SGIX 0x81A5 +#define GL_DEPTH_COMPONENT24_SGIX 0x81A6 +#define GL_DEPTH_COMPONENT32_SGIX 0x81A7 + +#define GLEW_SGIX_depth_texture GLEW_GET_VAR(__GLEW_SGIX_depth_texture) + +#endif /* GL_SGIX_depth_texture */ + +/* ------------------------------ GL_SGIX_dvc ------------------------------ */ + +#ifndef GL_SGIX_dvc +#define GL_SGIX_dvc 1 + +#define GLEW_SGIX_dvc GLEW_GET_VAR(__GLEW_SGIX_dvc) + +#endif /* GL_SGIX_dvc */ + +/* -------------------------- GL_SGIX_flush_raster ------------------------- */ + +#ifndef GL_SGIX_flush_raster +#define GL_SGIX_flush_raster 1 + +typedef void (GLAPIENTRY * PFNGLFLUSHRASTERSGIXPROC) (void); + +#define glFlushRasterSGIX GLEW_GET_FUN(__glewFlushRasterSGIX) + +#define GLEW_SGIX_flush_raster GLEW_GET_VAR(__GLEW_SGIX_flush_raster) + +#endif /* GL_SGIX_flush_raster */ + +/* --------------------------- GL_SGIX_fog_blend --------------------------- */ + +#ifndef GL_SGIX_fog_blend +#define GL_SGIX_fog_blend 1 + +#define GL_FOG_BLEND_ALPHA_SGIX 0x81FE +#define GL_FOG_BLEND_COLOR_SGIX 0x81FF + +#define GLEW_SGIX_fog_blend GLEW_GET_VAR(__GLEW_SGIX_fog_blend) + +#endif /* GL_SGIX_fog_blend */ + +/* ---------------------- GL_SGIX_fog_factor_to_alpha ---------------------- */ + +#ifndef GL_SGIX_fog_factor_to_alpha +#define GL_SGIX_fog_factor_to_alpha 1 + +#define GLEW_SGIX_fog_factor_to_alpha GLEW_GET_VAR(__GLEW_SGIX_fog_factor_to_alpha) + +#endif /* GL_SGIX_fog_factor_to_alpha */ + +/* --------------------------- GL_SGIX_fog_layers -------------------------- */ + +#ifndef GL_SGIX_fog_layers +#define GL_SGIX_fog_layers 1 + +#define GL_FOG_TYPE_SGIX 0x8323 +#define GL_UNIFORM_SGIX 0x8324 +#define GL_LAYERED_SGIX 0x8325 +#define GL_FOG_GROUND_PLANE_SGIX 0x8326 +#define GL_FOG_LAYERS_POINTS_SGIX 0x8327 +#define GL_MAX_FOG_LAYERS_POINTS_SGIX 0x8328 + +typedef void (GLAPIENTRY * PFNGLFOGLAYERSSGIXPROC) (GLsizei n, const GLfloat* points); +typedef void (GLAPIENTRY * PFNGLGETFOGLAYERSSGIXPROC) (GLfloat* points); + +#define glFogLayersSGIX GLEW_GET_FUN(__glewFogLayersSGIX) +#define glGetFogLayersSGIX GLEW_GET_FUN(__glewGetFogLayersSGIX) + +#define GLEW_SGIX_fog_layers GLEW_GET_VAR(__GLEW_SGIX_fog_layers) + +#endif /* GL_SGIX_fog_layers */ + +/* --------------------------- GL_SGIX_fog_offset -------------------------- */ + +#ifndef GL_SGIX_fog_offset +#define GL_SGIX_fog_offset 1 + +#define GL_FOG_OFFSET_SGIX 0x8198 +#define GL_FOG_OFFSET_VALUE_SGIX 0x8199 + +#define GLEW_SGIX_fog_offset GLEW_GET_VAR(__GLEW_SGIX_fog_offset) + +#endif /* GL_SGIX_fog_offset */ + +/* --------------------------- GL_SGIX_fog_patchy -------------------------- */ + +#ifndef GL_SGIX_fog_patchy +#define GL_SGIX_fog_patchy 1 + +#define GLEW_SGIX_fog_patchy GLEW_GET_VAR(__GLEW_SGIX_fog_patchy) + +#endif /* GL_SGIX_fog_patchy */ + +/* --------------------------- GL_SGIX_fog_scale --------------------------- */ + +#ifndef GL_SGIX_fog_scale +#define GL_SGIX_fog_scale 1 + +#define GL_FOG_SCALE_SGIX 0x81FC +#define GL_FOG_SCALE_VALUE_SGIX 0x81FD + +#define GLEW_SGIX_fog_scale GLEW_GET_VAR(__GLEW_SGIX_fog_scale) + +#endif /* GL_SGIX_fog_scale */ + +/* -------------------------- GL_SGIX_fog_texture -------------------------- */ + +#ifndef GL_SGIX_fog_texture +#define GL_SGIX_fog_texture 1 + +typedef void (GLAPIENTRY * PFNGLTEXTUREFOGSGIXPROC) (GLenum pname); + +#define glTextureFogSGIX GLEW_GET_FUN(__glewTextureFogSGIX) + +#define GLEW_SGIX_fog_texture GLEW_GET_VAR(__GLEW_SGIX_fog_texture) + +#endif /* GL_SGIX_fog_texture */ + +/* -------------------- GL_SGIX_fragment_lighting_space -------------------- */ + +#ifndef GL_SGIX_fragment_lighting_space +#define GL_SGIX_fragment_lighting_space 1 + +#define GL_EYE_SPACE_SGIX 0x8436 +#define GL_TANGENT_SPACE_SGIX 0x8437 +#define GL_OBJECT_SPACE_SGIX 0x8438 +#define GL_FRAGMENT_LIGHT_SPACE_SGIX 0x843D + +#define GLEW_SGIX_fragment_lighting_space GLEW_GET_VAR(__GLEW_SGIX_fragment_lighting_space) + +#endif /* GL_SGIX_fragment_lighting_space */ + +/* ------------------- GL_SGIX_fragment_specular_lighting ------------------ */ + +#ifndef GL_SGIX_fragment_specular_lighting +#define GL_SGIX_fragment_specular_lighting 1 + +typedef void (GLAPIENTRY * PFNGLFRAGMENTCOLORMATERIALSGIXPROC) (GLenum face, GLenum mode); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFSGIXPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFVSGIXPROC) (GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELISGIXPROC) (GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIVSGIXPROC) (GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFSGIXPROC) (GLenum light, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTISGIXPROC) (GLenum light, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFSGIXPROC) (GLenum face, GLenum pname, const GLfloat param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALISGIXPROC) (GLenum face, GLenum pname, const GLint param); +typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum value, GLfloat* data); +typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum value, GLint* data); +typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, GLfloat* data); +typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, GLint* data); + +#define glFragmentColorMaterialSGIX GLEW_GET_FUN(__glewFragmentColorMaterialSGIX) +#define glFragmentLightModelfSGIX GLEW_GET_FUN(__glewFragmentLightModelfSGIX) +#define glFragmentLightModelfvSGIX GLEW_GET_FUN(__glewFragmentLightModelfvSGIX) +#define glFragmentLightModeliSGIX GLEW_GET_FUN(__glewFragmentLightModeliSGIX) +#define glFragmentLightModelivSGIX GLEW_GET_FUN(__glewFragmentLightModelivSGIX) +#define glFragmentLightfSGIX GLEW_GET_FUN(__glewFragmentLightfSGIX) +#define glFragmentLightfvSGIX GLEW_GET_FUN(__glewFragmentLightfvSGIX) +#define glFragmentLightiSGIX GLEW_GET_FUN(__glewFragmentLightiSGIX) +#define glFragmentLightivSGIX GLEW_GET_FUN(__glewFragmentLightivSGIX) +#define glFragmentMaterialfSGIX GLEW_GET_FUN(__glewFragmentMaterialfSGIX) +#define glFragmentMaterialfvSGIX GLEW_GET_FUN(__glewFragmentMaterialfvSGIX) +#define glFragmentMaterialiSGIX GLEW_GET_FUN(__glewFragmentMaterialiSGIX) +#define glFragmentMaterialivSGIX GLEW_GET_FUN(__glewFragmentMaterialivSGIX) +#define glGetFragmentLightfvSGIX GLEW_GET_FUN(__glewGetFragmentLightfvSGIX) +#define glGetFragmentLightivSGIX GLEW_GET_FUN(__glewGetFragmentLightivSGIX) +#define glGetFragmentMaterialfvSGIX GLEW_GET_FUN(__glewGetFragmentMaterialfvSGIX) +#define glGetFragmentMaterialivSGIX GLEW_GET_FUN(__glewGetFragmentMaterialivSGIX) + +#define GLEW_SGIX_fragment_specular_lighting GLEW_GET_VAR(__GLEW_SGIX_fragment_specular_lighting) + +#endif /* GL_SGIX_fragment_specular_lighting */ + +/* ---------------------- GL_SGIX_fragments_instrument --------------------- */ + +#ifndef GL_SGIX_fragments_instrument +#define GL_SGIX_fragments_instrument 1 + +#define GL_FRAGMENTS_INSTRUMENT_SGIX 0x8313 +#define GL_FRAGMENTS_INSTRUMENT_COUNTERS_SGIX 0x8314 +#define GL_FRAGMENTS_INSTRUMENT_MAX_SGIX 0x8315 + +#define GLEW_SGIX_fragments_instrument GLEW_GET_VAR(__GLEW_SGIX_fragments_instrument) + +#endif /* GL_SGIX_fragments_instrument */ + +/* --------------------------- GL_SGIX_framezoom --------------------------- */ + +#ifndef GL_SGIX_framezoom +#define GL_SGIX_framezoom 1 + +typedef void (GLAPIENTRY * PFNGLFRAMEZOOMSGIXPROC) (GLint factor); + +#define glFrameZoomSGIX GLEW_GET_FUN(__glewFrameZoomSGIX) + +#define GLEW_SGIX_framezoom GLEW_GET_VAR(__GLEW_SGIX_framezoom) + +#endif /* GL_SGIX_framezoom */ + +/* -------------------------- GL_SGIX_icc_texture -------------------------- */ + +#ifndef GL_SGIX_icc_texture +#define GL_SGIX_icc_texture 1 + +#define GL_RGB_ICC_SGIX 0x8460 +#define GL_RGBA_ICC_SGIX 0x8461 +#define GL_ALPHA_ICC_SGIX 0x8462 +#define GL_LUMINANCE_ICC_SGIX 0x8463 +#define GL_INTENSITY_ICC_SGIX 0x8464 +#define GL_LUMINANCE_ALPHA_ICC_SGIX 0x8465 +#define GL_R5_G6_B5_ICC_SGIX 0x8466 +#define GL_R5_G6_B5_A8_ICC_SGIX 0x8467 +#define GL_ALPHA16_ICC_SGIX 0x8468 +#define GL_LUMINANCE16_ICC_SGIX 0x8469 +#define GL_INTENSITY16_ICC_SGIX 0x846A +#define GL_LUMINANCE16_ALPHA8_ICC_SGIX 0x846B + +#define GLEW_SGIX_icc_texture GLEW_GET_VAR(__GLEW_SGIX_icc_texture) + +#endif /* GL_SGIX_icc_texture */ + +/* ------------------------ GL_SGIX_igloo_interface ------------------------ */ + +#ifndef GL_SGIX_igloo_interface +#define GL_SGIX_igloo_interface 1 + +#define GL_IGLOO_FULLSCREEN_SGIX 0x819E +#define GL_IGLOO_VIEWPORT_OFFSET_SGIX 0x819F +#define GL_IGLOO_SWAPTMESH_SGIX 0x81A0 +#define GL_IGLOO_COLORNORMAL_SGIX 0x81A1 +#define GL_IGLOO_IRISGL_MODE_SGIX 0x81A2 +#define GL_IGLOO_LMC_COLOR_SGIX 0x81A3 +#define GL_IGLOO_TMESHMODE_SGIX 0x81A4 +#define GL_LIGHT31 0xBEAD + +typedef void (GLAPIENTRY * PFNGLIGLOOINTERFACESGIXPROC) (GLenum pname, void *param); + +#define glIglooInterfaceSGIX GLEW_GET_FUN(__glewIglooInterfaceSGIX) + +#define GLEW_SGIX_igloo_interface GLEW_GET_VAR(__GLEW_SGIX_igloo_interface) + +#endif /* GL_SGIX_igloo_interface */ + +/* ----------------------- GL_SGIX_image_compression ----------------------- */ + +#ifndef GL_SGIX_image_compression +#define GL_SGIX_image_compression 1 + +#define GLEW_SGIX_image_compression GLEW_GET_VAR(__GLEW_SGIX_image_compression) + +#endif /* GL_SGIX_image_compression */ + +/* ---------------------- GL_SGIX_impact_pixel_texture --------------------- */ + +#ifndef GL_SGIX_impact_pixel_texture +#define GL_SGIX_impact_pixel_texture 1 + +#define GLEW_SGIX_impact_pixel_texture GLEW_GET_VAR(__GLEW_SGIX_impact_pixel_texture) + +#endif /* GL_SGIX_impact_pixel_texture */ + +/* ------------------------ GL_SGIX_instrument_error ----------------------- */ + +#ifndef GL_SGIX_instrument_error +#define GL_SGIX_instrument_error 1 + +#define GLEW_SGIX_instrument_error GLEW_GET_VAR(__GLEW_SGIX_instrument_error) + +#endif /* GL_SGIX_instrument_error */ + +/* --------------------------- GL_SGIX_interlace --------------------------- */ + +#ifndef GL_SGIX_interlace +#define GL_SGIX_interlace 1 + +#define GL_INTERLACE_SGIX 0x8094 + +#define GLEW_SGIX_interlace GLEW_GET_VAR(__GLEW_SGIX_interlace) + +#endif /* GL_SGIX_interlace */ + +/* ------------------------- GL_SGIX_ir_instrument1 ------------------------ */ + +#ifndef GL_SGIX_ir_instrument1 +#define GL_SGIX_ir_instrument1 1 + +#define GLEW_SGIX_ir_instrument1 GLEW_GET_VAR(__GLEW_SGIX_ir_instrument1) + +#endif /* GL_SGIX_ir_instrument1 */ + +/* ----------------------- GL_SGIX_line_quality_hint ----------------------- */ + +#ifndef GL_SGIX_line_quality_hint +#define GL_SGIX_line_quality_hint 1 + +#define GL_LINE_QUALITY_HINT_SGIX 0x835B + +#define GLEW_SGIX_line_quality_hint GLEW_GET_VAR(__GLEW_SGIX_line_quality_hint) + +#endif /* GL_SGIX_line_quality_hint */ + +/* ------------------------- GL_SGIX_list_priority ------------------------- */ + +#ifndef GL_SGIX_list_priority +#define GL_SGIX_list_priority 1 + +#define GLEW_SGIX_list_priority GLEW_GET_VAR(__GLEW_SGIX_list_priority) + +#endif /* GL_SGIX_list_priority */ + +/* ----------------------------- GL_SGIX_mpeg1 ----------------------------- */ + +#ifndef GL_SGIX_mpeg1 +#define GL_SGIX_mpeg1 1 + +typedef void (GLAPIENTRY * PFNGLALLOCMPEGPREDICTORSSGIXPROC) (GLsizei width, GLsizei height, GLsizei n, GLuint* predictors); +typedef void (GLAPIENTRY * PFNGLDELETEMPEGPREDICTORSSGIXPROC) (GLsizei n, GLuint* predictors); +typedef void (GLAPIENTRY * PFNGLGENMPEGPREDICTORSSGIXPROC) (GLsizei n, GLuint* predictors); +typedef void (GLAPIENTRY * PFNGLGETMPEGPARAMETERFVSGIXPROC) (GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETMPEGPARAMETERIVSGIXPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETMPEGPREDICTORSGIXPROC) (GLenum target, GLenum format, GLenum type, void *pixels); +typedef void (GLAPIENTRY * PFNGLGETMPEGQUANTTABLEUBVPROC) (GLenum target, GLubyte* values); +typedef GLboolean (GLAPIENTRY * PFNGLISMPEGPREDICTORSGIXPROC) (GLuint predictor); +typedef void (GLAPIENTRY * PFNGLMPEGPREDICTORSGIXPROC) (GLenum target, GLenum format, GLenum type, void *pixels); +typedef void (GLAPIENTRY * PFNGLMPEGQUANTTABLEUBVPROC) (GLenum target, GLubyte* values); +typedef void (GLAPIENTRY * PFNGLSWAPMPEGPREDICTORSSGIXPROC) (GLenum target0, GLenum target1); + +#define glAllocMPEGPredictorsSGIX GLEW_GET_FUN(__glewAllocMPEGPredictorsSGIX) +#define glDeleteMPEGPredictorsSGIX GLEW_GET_FUN(__glewDeleteMPEGPredictorsSGIX) +#define glGenMPEGPredictorsSGIX GLEW_GET_FUN(__glewGenMPEGPredictorsSGIX) +#define glGetMPEGParameterfvSGIX GLEW_GET_FUN(__glewGetMPEGParameterfvSGIX) +#define glGetMPEGParameterivSGIX GLEW_GET_FUN(__glewGetMPEGParameterivSGIX) +#define glGetMPEGPredictorSGIX GLEW_GET_FUN(__glewGetMPEGPredictorSGIX) +#define glGetMPEGQuantTableubv GLEW_GET_FUN(__glewGetMPEGQuantTableubv) +#define glIsMPEGPredictorSGIX GLEW_GET_FUN(__glewIsMPEGPredictorSGIX) +#define glMPEGPredictorSGIX GLEW_GET_FUN(__glewMPEGPredictorSGIX) +#define glMPEGQuantTableubv GLEW_GET_FUN(__glewMPEGQuantTableubv) +#define glSwapMPEGPredictorsSGIX GLEW_GET_FUN(__glewSwapMPEGPredictorsSGIX) + +#define GLEW_SGIX_mpeg1 GLEW_GET_VAR(__GLEW_SGIX_mpeg1) + +#endif /* GL_SGIX_mpeg1 */ + +/* ----------------------------- GL_SGIX_mpeg2 ----------------------------- */ + +#ifndef GL_SGIX_mpeg2 +#define GL_SGIX_mpeg2 1 + +#define GLEW_SGIX_mpeg2 GLEW_GET_VAR(__GLEW_SGIX_mpeg2) + +#endif /* GL_SGIX_mpeg2 */ + +/* ------------------ GL_SGIX_nonlinear_lighting_pervertex ----------------- */ + +#ifndef GL_SGIX_nonlinear_lighting_pervertex +#define GL_SGIX_nonlinear_lighting_pervertex 1 + +typedef void (GLAPIENTRY * PFNGLGETNONLINLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLint* terms, GLfloat *data); +typedef void (GLAPIENTRY * PFNGLGETNONLINMATERIALFVSGIXPROC) (GLenum face, GLenum pname, GLint* terms, const GLfloat *data); +typedef void (GLAPIENTRY * PFNGLNONLINLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLint terms, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLNONLINMATERIALFVSGIXPROC) (GLenum face, GLenum pname, GLint terms, const GLfloat* params); + +#define glGetNonlinLightfvSGIX GLEW_GET_FUN(__glewGetNonlinLightfvSGIX) +#define glGetNonlinMaterialfvSGIX GLEW_GET_FUN(__glewGetNonlinMaterialfvSGIX) +#define glNonlinLightfvSGIX GLEW_GET_FUN(__glewNonlinLightfvSGIX) +#define glNonlinMaterialfvSGIX GLEW_GET_FUN(__glewNonlinMaterialfvSGIX) + +#define GLEW_SGIX_nonlinear_lighting_pervertex GLEW_GET_VAR(__GLEW_SGIX_nonlinear_lighting_pervertex) + +#endif /* GL_SGIX_nonlinear_lighting_pervertex */ + +/* --------------------------- GL_SGIX_nurbs_eval -------------------------- */ + +#ifndef GL_SGIX_nurbs_eval +#define GL_SGIX_nurbs_eval 1 + +#define GL_MAP1_VERTEX_3_NURBS_SGIX 0x81CB +#define GL_MAP1_VERTEX_4_NURBS_SGIX 0x81CC +#define GL_MAP1_INDEX_NURBS_SGIX 0x81CD +#define GL_MAP1_COLOR_4_NURBS_SGIX 0x81CE +#define GL_MAP1_NORMAL_NURBS_SGIX 0x81CF +#define GL_MAP1_TEXTURE_COORD_1_NURBS_SGIX 0x81E0 +#define GL_MAP1_TEXTURE_COORD_2_NURBS_SGIX 0x81E1 +#define GL_MAP1_TEXTURE_COORD_3_NURBS_SGIX 0x81E2 +#define GL_MAP1_TEXTURE_COORD_4_NURBS_SGIX 0x81E3 +#define GL_MAP2_VERTEX_3_NURBS_SGIX 0x81E4 +#define GL_MAP2_VERTEX_4_NURBS_SGIX 0x81E5 +#define GL_MAP2_INDEX_NURBS_SGIX 0x81E6 +#define GL_MAP2_COLOR_4_NURBS_SGIX 0x81E7 +#define GL_MAP2_NORMAL_NURBS_SGIX 0x81E8 +#define GL_MAP2_TEXTURE_COORD_1_NURBS_SGIX 0x81E9 +#define GL_MAP2_TEXTURE_COORD_2_NURBS_SGIX 0x81EA +#define GL_MAP2_TEXTURE_COORD_3_NURBS_SGIX 0x81EB +#define GL_MAP2_TEXTURE_COORD_4_NURBS_SGIX 0x81EC +#define GL_NURBS_KNOT_COUNT_SGIX 0x81ED +#define GL_NURBS_KNOT_VECTOR_SGIX 0x81EE + +#define GLEW_SGIX_nurbs_eval GLEW_GET_VAR(__GLEW_SGIX_nurbs_eval) + +#endif /* GL_SGIX_nurbs_eval */ + +/* ---------------------- GL_SGIX_occlusion_instrument --------------------- */ + +#ifndef GL_SGIX_occlusion_instrument +#define GL_SGIX_occlusion_instrument 1 + +#define GL_OCCLUSION_INSTRUMENT_SGIX 0x6060 + +#define GLEW_SGIX_occlusion_instrument GLEW_GET_VAR(__GLEW_SGIX_occlusion_instrument) + +#endif /* GL_SGIX_occlusion_instrument */ + +/* ------------------------- GL_SGIX_packed_6bytes ------------------------- */ + +#ifndef GL_SGIX_packed_6bytes +#define GL_SGIX_packed_6bytes 1 + +#define GLEW_SGIX_packed_6bytes GLEW_GET_VAR(__GLEW_SGIX_packed_6bytes) + +#endif /* GL_SGIX_packed_6bytes */ + +/* ------------------------- GL_SGIX_pixel_texture ------------------------- */ + +#ifndef GL_SGIX_pixel_texture +#define GL_SGIX_pixel_texture 1 + +typedef void (GLAPIENTRY * PFNGLPIXELTEXGENSGIXPROC) (GLenum mode); + +#define glPixelTexGenSGIX GLEW_GET_FUN(__glewPixelTexGenSGIX) + +#define GLEW_SGIX_pixel_texture GLEW_GET_VAR(__GLEW_SGIX_pixel_texture) + +#endif /* GL_SGIX_pixel_texture */ + +/* ----------------------- GL_SGIX_pixel_texture_bits ---------------------- */ + +#ifndef GL_SGIX_pixel_texture_bits +#define GL_SGIX_pixel_texture_bits 1 + +#define GLEW_SGIX_pixel_texture_bits GLEW_GET_VAR(__GLEW_SGIX_pixel_texture_bits) + +#endif /* GL_SGIX_pixel_texture_bits */ + +/* ----------------------- GL_SGIX_pixel_texture_lod ----------------------- */ + +#ifndef GL_SGIX_pixel_texture_lod +#define GL_SGIX_pixel_texture_lod 1 + +#define GLEW_SGIX_pixel_texture_lod GLEW_GET_VAR(__GLEW_SGIX_pixel_texture_lod) + +#endif /* GL_SGIX_pixel_texture_lod */ + +/* -------------------------- GL_SGIX_pixel_tiles -------------------------- */ + +#ifndef GL_SGIX_pixel_tiles +#define GL_SGIX_pixel_tiles 1 + +#define GLEW_SGIX_pixel_tiles GLEW_GET_VAR(__GLEW_SGIX_pixel_tiles) + +#endif /* GL_SGIX_pixel_tiles */ + +/* ------------------------- GL_SGIX_polynomial_ffd ------------------------ */ + +#ifndef GL_SGIX_polynomial_ffd +#define GL_SGIX_polynomial_ffd 1 + +#define GL_TEXTURE_DEFORMATION_BIT_SGIX 0x1 +#define GL_GEOMETRY_DEFORMATION_BIT_SGIX 0x2 + +typedef void (GLAPIENTRY * PFNGLDEFORMSGIXPROC) (GLbitfield mask); +typedef void (GLAPIENTRY * PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC) (GLbitfield mask); + +#define glDeformSGIX GLEW_GET_FUN(__glewDeformSGIX) +#define glLoadIdentityDeformationMapSGIX GLEW_GET_FUN(__glewLoadIdentityDeformationMapSGIX) + +#define GLEW_SGIX_polynomial_ffd GLEW_GET_VAR(__GLEW_SGIX_polynomial_ffd) + +#endif /* GL_SGIX_polynomial_ffd */ + +/* --------------------------- GL_SGIX_quad_mesh --------------------------- */ + +#ifndef GL_SGIX_quad_mesh +#define GL_SGIX_quad_mesh 1 + +typedef void (GLAPIENTRY * PFNGLMESHBREADTHSGIXPROC) (GLint breadth); +typedef void (GLAPIENTRY * PFNGLMESHSTRIDESGIXPROC) (GLint stride); + +#define glMeshBreadthSGIX GLEW_GET_FUN(__glewMeshBreadthSGIX) +#define glMeshStrideSGIX GLEW_GET_FUN(__glewMeshStrideSGIX) + +#define GLEW_SGIX_quad_mesh GLEW_GET_VAR(__GLEW_SGIX_quad_mesh) + +#endif /* GL_SGIX_quad_mesh */ + +/* ------------------------ GL_SGIX_reference_plane ------------------------ */ + +#ifndef GL_SGIX_reference_plane +#define GL_SGIX_reference_plane 1 + +typedef void (GLAPIENTRY * PFNGLREFERENCEPLANESGIXPROC) (const GLdouble* equation); + +#define glReferencePlaneSGIX GLEW_GET_FUN(__glewReferencePlaneSGIX) + +#define GLEW_SGIX_reference_plane GLEW_GET_VAR(__GLEW_SGIX_reference_plane) + +#endif /* GL_SGIX_reference_plane */ + +/* ---------------------------- GL_SGIX_resample --------------------------- */ + +#ifndef GL_SGIX_resample +#define GL_SGIX_resample 1 + +#define GL_PACK_RESAMPLE_SGIX 0x842E +#define GL_UNPACK_RESAMPLE_SGIX 0x842F +#define GL_RESAMPLE_DECIMATE_SGIX 0x8430 +#define GL_RESAMPLE_REPLICATE_SGIX 0x8433 +#define GL_RESAMPLE_ZERO_FILL_SGIX 0x8434 + +#define GLEW_SGIX_resample GLEW_GET_VAR(__GLEW_SGIX_resample) + +#endif /* GL_SGIX_resample */ + +/* ------------------------- GL_SGIX_scalebias_hint ------------------------ */ + +#ifndef GL_SGIX_scalebias_hint +#define GL_SGIX_scalebias_hint 1 + +#define GL_SCALEBIAS_HINT_SGIX 0x8322 + +#define GLEW_SGIX_scalebias_hint GLEW_GET_VAR(__GLEW_SGIX_scalebias_hint) + +#endif /* GL_SGIX_scalebias_hint */ + +/* ----------------------------- GL_SGIX_shadow ---------------------------- */ + +#ifndef GL_SGIX_shadow +#define GL_SGIX_shadow 1 + +#define GL_TEXTURE_COMPARE_SGIX 0x819A +#define GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B +#define GL_TEXTURE_LEQUAL_R_SGIX 0x819C +#define GL_TEXTURE_GEQUAL_R_SGIX 0x819D + +#define GLEW_SGIX_shadow GLEW_GET_VAR(__GLEW_SGIX_shadow) + +#endif /* GL_SGIX_shadow */ + +/* ------------------------- GL_SGIX_shadow_ambient ------------------------ */ + +#ifndef GL_SGIX_shadow_ambient +#define GL_SGIX_shadow_ambient 1 + +#define GL_SHADOW_AMBIENT_SGIX 0x80BF + +#define GLEW_SGIX_shadow_ambient GLEW_GET_VAR(__GLEW_SGIX_shadow_ambient) + +#endif /* GL_SGIX_shadow_ambient */ + +/* ------------------------------ GL_SGIX_slim ----------------------------- */ + +#ifndef GL_SGIX_slim +#define GL_SGIX_slim 1 + +#define GL_PACK_MAX_COMPRESSED_SIZE_SGIX 0x831B +#define GL_SLIM8U_SGIX 0x831D +#define GL_SLIM10U_SGIX 0x831E +#define GL_SLIM12S_SGIX 0x831F + +#define GLEW_SGIX_slim GLEW_GET_VAR(__GLEW_SGIX_slim) + +#endif /* GL_SGIX_slim */ + +/* ------------------------ GL_SGIX_spotlight_cutoff ----------------------- */ + +#ifndef GL_SGIX_spotlight_cutoff +#define GL_SGIX_spotlight_cutoff 1 + +#define GL_SPOT_CUTOFF_DELTA_SGIX 0x8193 + +#define GLEW_SGIX_spotlight_cutoff GLEW_GET_VAR(__GLEW_SGIX_spotlight_cutoff) + +#endif /* GL_SGIX_spotlight_cutoff */ + +/* ----------------------------- GL_SGIX_sprite ---------------------------- */ + +#ifndef GL_SGIX_sprite +#define GL_SGIX_sprite 1 + +typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERFSGIXPROC) (GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERFVSGIXPROC) (GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERISGIXPROC) (GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERIVSGIXPROC) (GLenum pname, GLint* params); + +#define glSpriteParameterfSGIX GLEW_GET_FUN(__glewSpriteParameterfSGIX) +#define glSpriteParameterfvSGIX GLEW_GET_FUN(__glewSpriteParameterfvSGIX) +#define glSpriteParameteriSGIX GLEW_GET_FUN(__glewSpriteParameteriSGIX) +#define glSpriteParameterivSGIX GLEW_GET_FUN(__glewSpriteParameterivSGIX) + +#define GLEW_SGIX_sprite GLEW_GET_VAR(__GLEW_SGIX_sprite) + +#endif /* GL_SGIX_sprite */ + +/* -------------------------- GL_SGIX_subdiv_patch ------------------------- */ + +#ifndef GL_SGIX_subdiv_patch +#define GL_SGIX_subdiv_patch 1 + +#define GLEW_SGIX_subdiv_patch GLEW_GET_VAR(__GLEW_SGIX_subdiv_patch) + +#endif /* GL_SGIX_subdiv_patch */ + +/* --------------------------- GL_SGIX_subsample --------------------------- */ + +#ifndef GL_SGIX_subsample +#define GL_SGIX_subsample 1 + +#define GL_PACK_SUBSAMPLE_RATE_SGIX 0x85A0 +#define GL_UNPACK_SUBSAMPLE_RATE_SGIX 0x85A1 +#define GL_PIXEL_SUBSAMPLE_4444_SGIX 0x85A2 +#define GL_PIXEL_SUBSAMPLE_2424_SGIX 0x85A3 +#define GL_PIXEL_SUBSAMPLE_4242_SGIX 0x85A4 + +#define GLEW_SGIX_subsample GLEW_GET_VAR(__GLEW_SGIX_subsample) + +#endif /* GL_SGIX_subsample */ + +/* ----------------------- GL_SGIX_tag_sample_buffer ----------------------- */ + +#ifndef GL_SGIX_tag_sample_buffer +#define GL_SGIX_tag_sample_buffer 1 + +typedef void (GLAPIENTRY * PFNGLTAGSAMPLEBUFFERSGIXPROC) (void); + +#define glTagSampleBufferSGIX GLEW_GET_FUN(__glewTagSampleBufferSGIX) + +#define GLEW_SGIX_tag_sample_buffer GLEW_GET_VAR(__GLEW_SGIX_tag_sample_buffer) + +#endif /* GL_SGIX_tag_sample_buffer */ + +/* ------------------------ GL_SGIX_texture_add_env ------------------------ */ + +#ifndef GL_SGIX_texture_add_env +#define GL_SGIX_texture_add_env 1 + +#define GLEW_SGIX_texture_add_env GLEW_GET_VAR(__GLEW_SGIX_texture_add_env) + +#endif /* GL_SGIX_texture_add_env */ + +/* -------------------- GL_SGIX_texture_coordinate_clamp ------------------- */ + +#ifndef GL_SGIX_texture_coordinate_clamp +#define GL_SGIX_texture_coordinate_clamp 1 + +#define GL_TEXTURE_MAX_CLAMP_S_SGIX 0x8369 +#define GL_TEXTURE_MAX_CLAMP_T_SGIX 0x836A +#define GL_TEXTURE_MAX_CLAMP_R_SGIX 0x836B + +#define GLEW_SGIX_texture_coordinate_clamp GLEW_GET_VAR(__GLEW_SGIX_texture_coordinate_clamp) + +#endif /* GL_SGIX_texture_coordinate_clamp */ + +/* ------------------------ GL_SGIX_texture_lod_bias ----------------------- */ + +#ifndef GL_SGIX_texture_lod_bias +#define GL_SGIX_texture_lod_bias 1 + +#define GLEW_SGIX_texture_lod_bias GLEW_GET_VAR(__GLEW_SGIX_texture_lod_bias) + +#endif /* GL_SGIX_texture_lod_bias */ + +/* ------------------- GL_SGIX_texture_mipmap_anisotropic ------------------ */ + +#ifndef GL_SGIX_texture_mipmap_anisotropic +#define GL_SGIX_texture_mipmap_anisotropic 1 + +#define GL_TEXTURE_MIPMAP_ANISOTROPY_SGIX 0x832E +#define GL_MAX_MIPMAP_ANISOTROPY_SGIX 0x832F + +#define GLEW_SGIX_texture_mipmap_anisotropic GLEW_GET_VAR(__GLEW_SGIX_texture_mipmap_anisotropic) + +#endif /* GL_SGIX_texture_mipmap_anisotropic */ + +/* ---------------------- GL_SGIX_texture_multi_buffer --------------------- */ + +#ifndef GL_SGIX_texture_multi_buffer +#define GL_SGIX_texture_multi_buffer 1 + +#define GL_TEXTURE_MULTI_BUFFER_HINT_SGIX 0x812E + +#define GLEW_SGIX_texture_multi_buffer GLEW_GET_VAR(__GLEW_SGIX_texture_multi_buffer) + +#endif /* GL_SGIX_texture_multi_buffer */ + +/* ------------------------- GL_SGIX_texture_phase ------------------------- */ + +#ifndef GL_SGIX_texture_phase +#define GL_SGIX_texture_phase 1 + +#define GL_PHASE_SGIX 0x832A + +#define GLEW_SGIX_texture_phase GLEW_GET_VAR(__GLEW_SGIX_texture_phase) + +#endif /* GL_SGIX_texture_phase */ + +/* ------------------------- GL_SGIX_texture_range ------------------------- */ + +#ifndef GL_SGIX_texture_range +#define GL_SGIX_texture_range 1 + +#define GL_RGB_SIGNED_SGIX 0x85E0 +#define GL_RGBA_SIGNED_SGIX 0x85E1 +#define GL_ALPHA_SIGNED_SGIX 0x85E2 +#define GL_LUMINANCE_SIGNED_SGIX 0x85E3 +#define GL_INTENSITY_SIGNED_SGIX 0x85E4 +#define GL_LUMINANCE_ALPHA_SIGNED_SGIX 0x85E5 +#define GL_RGB16_SIGNED_SGIX 0x85E6 +#define GL_RGBA16_SIGNED_SGIX 0x85E7 +#define GL_ALPHA16_SIGNED_SGIX 0x85E8 +#define GL_LUMINANCE16_SIGNED_SGIX 0x85E9 +#define GL_INTENSITY16_SIGNED_SGIX 0x85EA +#define GL_LUMINANCE16_ALPHA16_SIGNED_SGIX 0x85EB +#define GL_RGB_EXTENDED_RANGE_SGIX 0x85EC +#define GL_RGBA_EXTENDED_RANGE_SGIX 0x85ED +#define GL_ALPHA_EXTENDED_RANGE_SGIX 0x85EE +#define GL_LUMINANCE_EXTENDED_RANGE_SGIX 0x85EF +#define GL_INTENSITY_EXTENDED_RANGE_SGIX 0x85F0 +#define GL_LUMINANCE_ALPHA_EXTENDED_RANGE_SGIX 0x85F1 +#define GL_RGB16_EXTENDED_RANGE_SGIX 0x85F2 +#define GL_RGBA16_EXTENDED_RANGE_SGIX 0x85F3 +#define GL_ALPHA16_EXTENDED_RANGE_SGIX 0x85F4 +#define GL_LUMINANCE16_EXTENDED_RANGE_SGIX 0x85F5 +#define GL_INTENSITY16_EXTENDED_RANGE_SGIX 0x85F6 +#define GL_LUMINANCE16_ALPHA16_EXTENDED_RANGE_SGIX 0x85F7 +#define GL_MIN_LUMINANCE_SGIS 0x85F8 +#define GL_MAX_LUMINANCE_SGIS 0x85F9 +#define GL_MIN_INTENSITY_SGIS 0x85FA +#define GL_MAX_INTENSITY_SGIS 0x85FB + +#define GLEW_SGIX_texture_range GLEW_GET_VAR(__GLEW_SGIX_texture_range) + +#endif /* GL_SGIX_texture_range */ + +/* ----------------------- GL_SGIX_texture_scale_bias ---------------------- */ + +#ifndef GL_SGIX_texture_scale_bias +#define GL_SGIX_texture_scale_bias 1 + +#define GL_POST_TEXTURE_FILTER_BIAS_SGIX 0x8179 +#define GL_POST_TEXTURE_FILTER_SCALE_SGIX 0x817A +#define GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX 0x817B +#define GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX 0x817C + +#define GLEW_SGIX_texture_scale_bias GLEW_GET_VAR(__GLEW_SGIX_texture_scale_bias) + +#endif /* GL_SGIX_texture_scale_bias */ + +/* ---------------------- GL_SGIX_texture_supersample ---------------------- */ + +#ifndef GL_SGIX_texture_supersample +#define GL_SGIX_texture_supersample 1 + +#define GLEW_SGIX_texture_supersample GLEW_GET_VAR(__GLEW_SGIX_texture_supersample) + +#endif /* GL_SGIX_texture_supersample */ + +/* --------------------------- GL_SGIX_vector_ops -------------------------- */ + +#ifndef GL_SGIX_vector_ops +#define GL_SGIX_vector_ops 1 + +typedef void (GLAPIENTRY * PFNGLGETVECTOROPERATIONSGIXPROC) (GLenum operation); +typedef void (GLAPIENTRY * PFNGLVECTOROPERATIONSGIXPROC) (GLenum operation); + +#define glGetVectorOperationSGIX GLEW_GET_FUN(__glewGetVectorOperationSGIX) +#define glVectorOperationSGIX GLEW_GET_FUN(__glewVectorOperationSGIX) + +#define GLEW_SGIX_vector_ops GLEW_GET_VAR(__GLEW_SGIX_vector_ops) + +#endif /* GL_SGIX_vector_ops */ + +/* ---------------------- GL_SGIX_vertex_array_object ---------------------- */ + +#ifndef GL_SGIX_vertex_array_object +#define GL_SGIX_vertex_array_object 1 + +typedef GLboolean (GLAPIENTRY * PFNGLAREVERTEXARRAYSRESIDENTSGIXPROC) (GLsizei n, const GLuint* arrays, GLboolean* residences); +typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYSGIXPROC) (GLuint array); +typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSSGIXPROC) (GLsizei n, const GLuint* arrays); +typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSSGIXPROC) (GLsizei n, GLuint* arrays); +typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYSGIXPROC) (GLuint array); +typedef void (GLAPIENTRY * PFNGLPRIORITIZEVERTEXARRAYSSGIXPROC) (GLsizei n, const GLuint* arrays, const GLclampf* priorities); + +#define glAreVertexArraysResidentSGIX GLEW_GET_FUN(__glewAreVertexArraysResidentSGIX) +#define glBindVertexArraySGIX GLEW_GET_FUN(__glewBindVertexArraySGIX) +#define glDeleteVertexArraysSGIX GLEW_GET_FUN(__glewDeleteVertexArraysSGIX) +#define glGenVertexArraysSGIX GLEW_GET_FUN(__glewGenVertexArraysSGIX) +#define glIsVertexArraySGIX GLEW_GET_FUN(__glewIsVertexArraySGIX) +#define glPrioritizeVertexArraysSGIX GLEW_GET_FUN(__glewPrioritizeVertexArraysSGIX) + +#define GLEW_SGIX_vertex_array_object GLEW_GET_VAR(__GLEW_SGIX_vertex_array_object) + +#endif /* GL_SGIX_vertex_array_object */ + +/* ------------------------- GL_SGIX_vertex_preclip ------------------------ */ + +#ifndef GL_SGIX_vertex_preclip +#define GL_SGIX_vertex_preclip 1 + +#define GL_VERTEX_PRECLIP_SGIX 0x83EE +#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF + +#define GLEW_SGIX_vertex_preclip GLEW_GET_VAR(__GLEW_SGIX_vertex_preclip) + +#endif /* GL_SGIX_vertex_preclip */ + +/* ---------------------- GL_SGIX_vertex_preclip_hint ---------------------- */ + +#ifndef GL_SGIX_vertex_preclip_hint +#define GL_SGIX_vertex_preclip_hint 1 + +#define GL_VERTEX_PRECLIP_SGIX 0x83EE +#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF + +#define GLEW_SGIX_vertex_preclip_hint GLEW_GET_VAR(__GLEW_SGIX_vertex_preclip_hint) + +#endif /* GL_SGIX_vertex_preclip_hint */ + +/* ----------------------------- GL_SGIX_ycrcb ----------------------------- */ + +#ifndef GL_SGIX_ycrcb +#define GL_SGIX_ycrcb 1 + +#define GLEW_SGIX_ycrcb GLEW_GET_VAR(__GLEW_SGIX_ycrcb) + +#endif /* GL_SGIX_ycrcb */ + +/* ------------------------ GL_SGIX_ycrcb_subsample ------------------------ */ + +#ifndef GL_SGIX_ycrcb_subsample +#define GL_SGIX_ycrcb_subsample 1 + +#define GLEW_SGIX_ycrcb_subsample GLEW_GET_VAR(__GLEW_SGIX_ycrcb_subsample) + +#endif /* GL_SGIX_ycrcb_subsample */ + +/* ----------------------------- GL_SGIX_ycrcba ---------------------------- */ + +#ifndef GL_SGIX_ycrcba +#define GL_SGIX_ycrcba 1 + +#define GL_YCRCB_SGIX 0x8318 +#define GL_YCRCBA_SGIX 0x8319 + +#define GLEW_SGIX_ycrcba GLEW_GET_VAR(__GLEW_SGIX_ycrcba) + +#endif /* GL_SGIX_ycrcba */ + +/* -------------------------- GL_SGI_color_matrix -------------------------- */ + +#ifndef GL_SGI_color_matrix +#define GL_SGI_color_matrix 1 + +#define GL_COLOR_MATRIX_SGI 0x80B1 +#define GL_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B2 +#define GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B3 +#define GL_POST_COLOR_MATRIX_RED_SCALE_SGI 0x80B4 +#define GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI 0x80B5 +#define GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI 0x80B6 +#define GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI 0x80B7 +#define GL_POST_COLOR_MATRIX_RED_BIAS_SGI 0x80B8 +#define GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI 0x80B9 +#define GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI 0x80BA +#define GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI 0x80BB + +#define GLEW_SGI_color_matrix GLEW_GET_VAR(__GLEW_SGI_color_matrix) + +#endif /* GL_SGI_color_matrix */ + +/* --------------------------- GL_SGI_color_table -------------------------- */ + +#ifndef GL_SGI_color_table +#define GL_SGI_color_table 1 + +#define GL_COLOR_TABLE_SGI 0x80D0 +#define GL_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D1 +#define GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D2 +#define GL_PROXY_COLOR_TABLE_SGI 0x80D3 +#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D4 +#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D5 +#define GL_COLOR_TABLE_SCALE_SGI 0x80D6 +#define GL_COLOR_TABLE_BIAS_SGI 0x80D7 +#define GL_COLOR_TABLE_FORMAT_SGI 0x80D8 +#define GL_COLOR_TABLE_WIDTH_SGI 0x80D9 +#define GL_COLOR_TABLE_RED_SIZE_SGI 0x80DA +#define GL_COLOR_TABLE_GREEN_SIZE_SGI 0x80DB +#define GL_COLOR_TABLE_BLUE_SIZE_SGI 0x80DC +#define GL_COLOR_TABLE_ALPHA_SIZE_SGI 0x80DD +#define GL_COLOR_TABLE_LUMINANCE_SIZE_SGI 0x80DE +#define GL_COLOR_TABLE_INTENSITY_SIZE_SGI 0x80DF + +typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *table); +typedef void (GLAPIENTRY * PFNGLCOPYCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLGETCOLORTABLESGIPROC) (GLenum target, GLenum format, GLenum type, void *table); + +#define glColorTableParameterfvSGI GLEW_GET_FUN(__glewColorTableParameterfvSGI) +#define glColorTableParameterivSGI GLEW_GET_FUN(__glewColorTableParameterivSGI) +#define glColorTableSGI GLEW_GET_FUN(__glewColorTableSGI) +#define glCopyColorTableSGI GLEW_GET_FUN(__glewCopyColorTableSGI) +#define glGetColorTableParameterfvSGI GLEW_GET_FUN(__glewGetColorTableParameterfvSGI) +#define glGetColorTableParameterivSGI GLEW_GET_FUN(__glewGetColorTableParameterivSGI) +#define glGetColorTableSGI GLEW_GET_FUN(__glewGetColorTableSGI) + +#define GLEW_SGI_color_table GLEW_GET_VAR(__GLEW_SGI_color_table) + +#endif /* GL_SGI_color_table */ + +/* ----------------------------- GL_SGI_complex ---------------------------- */ + +#ifndef GL_SGI_complex +#define GL_SGI_complex 1 + +#define GLEW_SGI_complex GLEW_GET_VAR(__GLEW_SGI_complex) + +#endif /* GL_SGI_complex */ + +/* -------------------------- GL_SGI_complex_type -------------------------- */ + +#ifndef GL_SGI_complex_type +#define GL_SGI_complex_type 1 + +#define GL_COMPLEX_UNSIGNED_BYTE_SGI 0x81BD +#define GL_COMPLEX_BYTE_SGI 0x81BE +#define GL_COMPLEX_UNSIGNED_SHORT_SGI 0x81BF +#define GL_COMPLEX_SHORT_SGI 0x81C0 +#define GL_COMPLEX_UNSIGNED_INT_SGI 0x81C1 +#define GL_COMPLEX_INT_SGI 0x81C2 +#define GL_COMPLEX_FLOAT_SGI 0x81C3 + +#define GLEW_SGI_complex_type GLEW_GET_VAR(__GLEW_SGI_complex_type) + +#endif /* GL_SGI_complex_type */ + +/* ------------------------------- GL_SGI_fft ------------------------------ */ + +#ifndef GL_SGI_fft +#define GL_SGI_fft 1 + +#define GL_PIXEL_TRANSFORM_OPERATOR_SGI 0x81C4 +#define GL_CONVOLUTION_SGI 0x81C5 +#define GL_FFT_1D_SGI 0x81C6 +#define GL_PIXEL_TRANSFORM_SGI 0x81C7 +#define GL_MAX_FFT_WIDTH_SGI 0x81C8 + +typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat* params); +typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint* params); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFSGIPROC) (GLenum target, GLenum pname, GLfloat param); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat* params); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERISGIPROC) (GLenum target, GLenum pname, GLint param); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint* params); +typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMSGIPROC) (GLenum target); + +#define glGetPixelTransformParameterfvSGI GLEW_GET_FUN(__glewGetPixelTransformParameterfvSGI) +#define glGetPixelTransformParameterivSGI GLEW_GET_FUN(__glewGetPixelTransformParameterivSGI) +#define glPixelTransformParameterfSGI GLEW_GET_FUN(__glewPixelTransformParameterfSGI) +#define glPixelTransformParameterfvSGI GLEW_GET_FUN(__glewPixelTransformParameterfvSGI) +#define glPixelTransformParameteriSGI GLEW_GET_FUN(__glewPixelTransformParameteriSGI) +#define glPixelTransformParameterivSGI GLEW_GET_FUN(__glewPixelTransformParameterivSGI) +#define glPixelTransformSGI GLEW_GET_FUN(__glewPixelTransformSGI) + +#define GLEW_SGI_fft GLEW_GET_VAR(__GLEW_SGI_fft) + +#endif /* GL_SGI_fft */ + +/* ----------------------- GL_SGI_texture_color_table ---------------------- */ + +#ifndef GL_SGI_texture_color_table +#define GL_SGI_texture_color_table 1 + +#define GL_TEXTURE_COLOR_TABLE_SGI 0x80BC +#define GL_PROXY_TEXTURE_COLOR_TABLE_SGI 0x80BD + +#define GLEW_SGI_texture_color_table GLEW_GET_VAR(__GLEW_SGI_texture_color_table) + +#endif /* GL_SGI_texture_color_table */ + +/* ------------------------- GL_SUNX_constant_data ------------------------- */ + +#ifndef GL_SUNX_constant_data +#define GL_SUNX_constant_data 1 + +#define GL_UNPACK_CONSTANT_DATA_SUNX 0x81D5 +#define GL_TEXTURE_CONSTANT_DATA_SUNX 0x81D6 + +typedef void (GLAPIENTRY * PFNGLFINISHTEXTURESUNXPROC) (void); + +#define glFinishTextureSUNX GLEW_GET_FUN(__glewFinishTextureSUNX) + +#define GLEW_SUNX_constant_data GLEW_GET_VAR(__GLEW_SUNX_constant_data) + +#endif /* GL_SUNX_constant_data */ + +/* -------------------- GL_SUN_convolution_border_modes -------------------- */ + +#ifndef GL_SUN_convolution_border_modes +#define GL_SUN_convolution_border_modes 1 + +#define GL_WRAP_BORDER_SUN 0x81D4 + +#define GLEW_SUN_convolution_border_modes GLEW_GET_VAR(__GLEW_SUN_convolution_border_modes) + +#endif /* GL_SUN_convolution_border_modes */ + +/* -------------------------- GL_SUN_global_alpha -------------------------- */ + +#ifndef GL_SUN_global_alpha +#define GL_SUN_global_alpha 1 + +#define GL_GLOBAL_ALPHA_SUN 0x81D9 +#define GL_GLOBAL_ALPHA_FACTOR_SUN 0x81DA + +typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORBSUNPROC) (GLbyte factor); +typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORDSUNPROC) (GLdouble factor); +typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORFSUNPROC) (GLfloat factor); +typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORISUNPROC) (GLint factor); +typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORSSUNPROC) (GLshort factor); +typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUBSUNPROC) (GLubyte factor); +typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUISUNPROC) (GLuint factor); +typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUSSUNPROC) (GLushort factor); + +#define glGlobalAlphaFactorbSUN GLEW_GET_FUN(__glewGlobalAlphaFactorbSUN) +#define glGlobalAlphaFactordSUN GLEW_GET_FUN(__glewGlobalAlphaFactordSUN) +#define glGlobalAlphaFactorfSUN GLEW_GET_FUN(__glewGlobalAlphaFactorfSUN) +#define glGlobalAlphaFactoriSUN GLEW_GET_FUN(__glewGlobalAlphaFactoriSUN) +#define glGlobalAlphaFactorsSUN GLEW_GET_FUN(__glewGlobalAlphaFactorsSUN) +#define glGlobalAlphaFactorubSUN GLEW_GET_FUN(__glewGlobalAlphaFactorubSUN) +#define glGlobalAlphaFactoruiSUN GLEW_GET_FUN(__glewGlobalAlphaFactoruiSUN) +#define glGlobalAlphaFactorusSUN GLEW_GET_FUN(__glewGlobalAlphaFactorusSUN) + +#define GLEW_SUN_global_alpha GLEW_GET_VAR(__GLEW_SUN_global_alpha) + +#endif /* GL_SUN_global_alpha */ + +/* --------------------------- GL_SUN_mesh_array --------------------------- */ + +#ifndef GL_SUN_mesh_array +#define GL_SUN_mesh_array 1 + +#define GL_QUAD_MESH_SUN 0x8614 +#define GL_TRIANGLE_MESH_SUN 0x8615 + +#define GLEW_SUN_mesh_array GLEW_GET_VAR(__GLEW_SUN_mesh_array) + +#endif /* GL_SUN_mesh_array */ + +/* ------------------------ GL_SUN_read_video_pixels ----------------------- */ + +#ifndef GL_SUN_read_video_pixels +#define GL_SUN_read_video_pixels 1 + +typedef void (GLAPIENTRY * PFNGLREADVIDEOPIXELSSUNPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels); + +#define glReadVideoPixelsSUN GLEW_GET_FUN(__glewReadVideoPixelsSUN) + +#define GLEW_SUN_read_video_pixels GLEW_GET_VAR(__GLEW_SUN_read_video_pixels) + +#endif /* GL_SUN_read_video_pixels */ + +/* --------------------------- GL_SUN_slice_accum -------------------------- */ + +#ifndef GL_SUN_slice_accum +#define GL_SUN_slice_accum 1 + +#define GL_SLICE_ACCUM_SUN 0x85CC + +#define GLEW_SUN_slice_accum GLEW_GET_VAR(__GLEW_SUN_slice_accum) + +#endif /* GL_SUN_slice_accum */ + +/* -------------------------- GL_SUN_triangle_list ------------------------- */ + +#ifndef GL_SUN_triangle_list +#define GL_SUN_triangle_list 1 + +#define GL_RESTART_SUN 0x01 +#define GL_REPLACE_MIDDLE_SUN 0x02 +#define GL_REPLACE_OLDEST_SUN 0x03 +#define GL_TRIANGLE_LIST_SUN 0x81D7 +#define GL_REPLACEMENT_CODE_SUN 0x81D8 +#define GL_REPLACEMENT_CODE_ARRAY_SUN 0x85C0 +#define GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN 0x85C1 +#define GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN 0x85C2 +#define GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN 0x85C3 +#define GL_R1UI_V3F_SUN 0x85C4 +#define GL_R1UI_C4UB_V3F_SUN 0x85C5 +#define GL_R1UI_C3F_V3F_SUN 0x85C6 +#define GL_R1UI_N3F_V3F_SUN 0x85C7 +#define GL_R1UI_C4F_N3F_V3F_SUN 0x85C8 +#define GL_R1UI_T2F_V3F_SUN 0x85C9 +#define GL_R1UI_T2F_N3F_V3F_SUN 0x85CA +#define GL_R1UI_T2F_C4F_N3F_V3F_SUN 0x85CB + +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEPOINTERSUNPROC) (GLenum type, GLsizei stride, const void *pointer); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUBSUNPROC) (GLubyte code); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUBVSUNPROC) (const GLubyte* code); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUISUNPROC) (GLuint code); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVSUNPROC) (const GLuint* code); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUSSUNPROC) (GLushort code); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUSVSUNPROC) (const GLushort* code); + +#define glReplacementCodePointerSUN GLEW_GET_FUN(__glewReplacementCodePointerSUN) +#define glReplacementCodeubSUN GLEW_GET_FUN(__glewReplacementCodeubSUN) +#define glReplacementCodeubvSUN GLEW_GET_FUN(__glewReplacementCodeubvSUN) +#define glReplacementCodeuiSUN GLEW_GET_FUN(__glewReplacementCodeuiSUN) +#define glReplacementCodeuivSUN GLEW_GET_FUN(__glewReplacementCodeuivSUN) +#define glReplacementCodeusSUN GLEW_GET_FUN(__glewReplacementCodeusSUN) +#define glReplacementCodeusvSUN GLEW_GET_FUN(__glewReplacementCodeusvSUN) + +#define GLEW_SUN_triangle_list GLEW_GET_VAR(__GLEW_SUN_triangle_list) + +#endif /* GL_SUN_triangle_list */ + +/* ----------------------------- GL_SUN_vertex ----------------------------- */ + +#ifndef GL_SUN_vertex +#define GL_SUN_vertex 1 + +typedef void (GLAPIENTRY * PFNGLCOLOR3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLCOLOR3FVERTEX3FVSUNPROC) (const GLfloat* c, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* c, const GLfloat *n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX2FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y); +typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX2FVSUNPROC) (const GLubyte* c, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX3FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX3FVSUNPROC) (const GLubyte* c, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLNORMAL3FVERTEX3FSUNPROC) (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *c, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *c, const GLfloat *n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC) (GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC) (const GLuint* rc, const GLubyte *c, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC) (GLuint rc, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC) (const GLfloat* tc, const GLubyte *c, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z); +typedef void (GLAPIENTRY * PFNGLTEXCOORD2FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v); +typedef void (GLAPIENTRY * PFNGLTEXCOORD4FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (GLAPIENTRY * PFNGLTEXCOORD4FVERTEX4FVSUNPROC) (const GLfloat* tc, const GLfloat *v); + +#define glColor3fVertex3fSUN GLEW_GET_FUN(__glewColor3fVertex3fSUN) +#define glColor3fVertex3fvSUN GLEW_GET_FUN(__glewColor3fVertex3fvSUN) +#define glColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewColor4fNormal3fVertex3fSUN) +#define glColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewColor4fNormal3fVertex3fvSUN) +#define glColor4ubVertex2fSUN GLEW_GET_FUN(__glewColor4ubVertex2fSUN) +#define glColor4ubVertex2fvSUN GLEW_GET_FUN(__glewColor4ubVertex2fvSUN) +#define glColor4ubVertex3fSUN GLEW_GET_FUN(__glewColor4ubVertex3fSUN) +#define glColor4ubVertex3fvSUN GLEW_GET_FUN(__glewColor4ubVertex3fvSUN) +#define glNormal3fVertex3fSUN GLEW_GET_FUN(__glewNormal3fVertex3fSUN) +#define glNormal3fVertex3fvSUN GLEW_GET_FUN(__glewNormal3fVertex3fvSUN) +#define glReplacementCodeuiColor3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor3fVertex3fSUN) +#define glReplacementCodeuiColor3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor3fVertex3fvSUN) +#define glReplacementCodeuiColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4fNormal3fVertex3fSUN) +#define glReplacementCodeuiColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4fNormal3fVertex3fvSUN) +#define glReplacementCodeuiColor4ubVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4ubVertex3fSUN) +#define glReplacementCodeuiColor4ubVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4ubVertex3fvSUN) +#define glReplacementCodeuiNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiNormal3fVertex3fSUN) +#define glReplacementCodeuiNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiNormal3fVertex3fvSUN) +#define glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN) +#define glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN) +#define glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN) +#define glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN) +#define glReplacementCodeuiTexCoord2fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fVertex3fSUN) +#define glReplacementCodeuiTexCoord2fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fVertex3fvSUN) +#define glReplacementCodeuiVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiVertex3fSUN) +#define glReplacementCodeuiVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiVertex3fvSUN) +#define glTexCoord2fColor3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor3fVertex3fSUN) +#define glTexCoord2fColor3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor3fVertex3fvSUN) +#define glTexCoord2fColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor4fNormal3fVertex3fSUN) +#define glTexCoord2fColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor4fNormal3fVertex3fvSUN) +#define glTexCoord2fColor4ubVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor4ubVertex3fSUN) +#define glTexCoord2fColor4ubVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor4ubVertex3fvSUN) +#define glTexCoord2fNormal3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fNormal3fVertex3fSUN) +#define glTexCoord2fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fNormal3fVertex3fvSUN) +#define glTexCoord2fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fVertex3fSUN) +#define glTexCoord2fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fVertex3fvSUN) +#define glTexCoord4fColor4fNormal3fVertex4fSUN GLEW_GET_FUN(__glewTexCoord4fColor4fNormal3fVertex4fSUN) +#define glTexCoord4fColor4fNormal3fVertex4fvSUN GLEW_GET_FUN(__glewTexCoord4fColor4fNormal3fVertex4fvSUN) +#define glTexCoord4fVertex4fSUN GLEW_GET_FUN(__glewTexCoord4fVertex4fSUN) +#define glTexCoord4fVertex4fvSUN GLEW_GET_FUN(__glewTexCoord4fVertex4fvSUN) + +#define GLEW_SUN_vertex GLEW_GET_VAR(__GLEW_SUN_vertex) + +#endif /* GL_SUN_vertex */ + +/* -------------------------- GL_VIV_shader_binary ------------------------- */ + +#ifndef GL_VIV_shader_binary +#define GL_VIV_shader_binary 1 + +#define GL_SHADER_BINARY_VIV 0x8FC4 + +#define GLEW_VIV_shader_binary GLEW_GET_VAR(__GLEW_VIV_shader_binary) + +#endif /* GL_VIV_shader_binary */ + +/* -------------------------- GL_WIN_phong_shading ------------------------- */ + +#ifndef GL_WIN_phong_shading +#define GL_WIN_phong_shading 1 + +#define GL_PHONG_WIN 0x80EA +#define GL_PHONG_HINT_WIN 0x80EB + +#define GLEW_WIN_phong_shading GLEW_GET_VAR(__GLEW_WIN_phong_shading) + +#endif /* GL_WIN_phong_shading */ + +/* ------------------------- GL_WIN_scene_markerXXX ------------------------ */ + +#ifndef GL_WIN_scene_markerXXX +#define GL_WIN_scene_markerXXX 1 + +#define GLEW_WIN_scene_markerXXX GLEW_GET_VAR(__GLEW_WIN_scene_markerXXX) + +#endif /* GL_WIN_scene_markerXXX */ + +/* -------------------------- GL_WIN_specular_fog -------------------------- */ + +#ifndef GL_WIN_specular_fog +#define GL_WIN_specular_fog 1 + +#define GL_FOG_SPECULAR_TEXTURE_WIN 0x80EC + +#define GLEW_WIN_specular_fog GLEW_GET_VAR(__GLEW_WIN_specular_fog) + +#endif /* GL_WIN_specular_fog */ + +/* ---------------------------- GL_WIN_swap_hint --------------------------- */ + +#ifndef GL_WIN_swap_hint +#define GL_WIN_swap_hint 1 + +typedef void (GLAPIENTRY * PFNGLADDSWAPHINTRECTWINPROC) (GLint x, GLint y, GLsizei width, GLsizei height); + +#define glAddSwapHintRectWIN GLEW_GET_FUN(__glewAddSwapHintRectWIN) + +#define GLEW_WIN_swap_hint GLEW_GET_VAR(__GLEW_WIN_swap_hint) + +#endif /* GL_WIN_swap_hint */ + +/* ------------------------------------------------------------------------- */ + + + +GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DPROC __glewCopyTexSubImage3D; +GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSPROC __glewDrawRangeElements; +GLEW_FUN_EXPORT PFNGLTEXIMAGE3DPROC __glewTexImage3D; +GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DPROC __glewTexSubImage3D; + +GLEW_FUN_EXPORT PFNGLACTIVETEXTUREPROC __glewActiveTexture; +GLEW_FUN_EXPORT PFNGLCLIENTACTIVETEXTUREPROC __glewClientActiveTexture; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE1DPROC __glewCompressedTexImage1D; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE2DPROC __glewCompressedTexImage2D; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DPROC __glewCompressedTexImage3D; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC __glewCompressedTexSubImage1D; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC __glewCompressedTexSubImage2D; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC __glewCompressedTexSubImage3D; +GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXIMAGEPROC __glewGetCompressedTexImage; +GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXDPROC __glewLoadTransposeMatrixd; +GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXFPROC __glewLoadTransposeMatrixf; +GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXDPROC __glewMultTransposeMatrixd; +GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXFPROC __glewMultTransposeMatrixf; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DPROC __glewMultiTexCoord1d; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DVPROC __glewMultiTexCoord1dv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FPROC __glewMultiTexCoord1f; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FVPROC __glewMultiTexCoord1fv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IPROC __glewMultiTexCoord1i; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IVPROC __glewMultiTexCoord1iv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SPROC __glewMultiTexCoord1s; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SVPROC __glewMultiTexCoord1sv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DPROC __glewMultiTexCoord2d; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DVPROC __glewMultiTexCoord2dv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FPROC __glewMultiTexCoord2f; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FVPROC __glewMultiTexCoord2fv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IPROC __glewMultiTexCoord2i; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IVPROC __glewMultiTexCoord2iv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SPROC __glewMultiTexCoord2s; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SVPROC __glewMultiTexCoord2sv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DPROC __glewMultiTexCoord3d; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DVPROC __glewMultiTexCoord3dv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FPROC __glewMultiTexCoord3f; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FVPROC __glewMultiTexCoord3fv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IPROC __glewMultiTexCoord3i; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IVPROC __glewMultiTexCoord3iv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SPROC __glewMultiTexCoord3s; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SVPROC __glewMultiTexCoord3sv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DPROC __glewMultiTexCoord4d; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DVPROC __glewMultiTexCoord4dv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FPROC __glewMultiTexCoord4f; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FVPROC __glewMultiTexCoord4fv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IPROC __glewMultiTexCoord4i; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IVPROC __glewMultiTexCoord4iv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SPROC __glewMultiTexCoord4s; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SVPROC __glewMultiTexCoord4sv; +GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEPROC __glewSampleCoverage; + +GLEW_FUN_EXPORT PFNGLBLENDCOLORPROC __glewBlendColor; +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONPROC __glewBlendEquation; +GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEPROC __glewBlendFuncSeparate; +GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTERPROC __glewFogCoordPointer; +GLEW_FUN_EXPORT PFNGLFOGCOORDDPROC __glewFogCoordd; +GLEW_FUN_EXPORT PFNGLFOGCOORDDVPROC __glewFogCoorddv; +GLEW_FUN_EXPORT PFNGLFOGCOORDFPROC __glewFogCoordf; +GLEW_FUN_EXPORT PFNGLFOGCOORDFVPROC __glewFogCoordfv; +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSPROC __glewMultiDrawArrays; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSPROC __glewMultiDrawElements; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFPROC __glewPointParameterf; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVPROC __glewPointParameterfv; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIPROC __glewPointParameteri; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIVPROC __glewPointParameteriv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BPROC __glewSecondaryColor3b; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BVPROC __glewSecondaryColor3bv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DPROC __glewSecondaryColor3d; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DVPROC __glewSecondaryColor3dv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FPROC __glewSecondaryColor3f; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FVPROC __glewSecondaryColor3fv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IPROC __glewSecondaryColor3i; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IVPROC __glewSecondaryColor3iv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SPROC __glewSecondaryColor3s; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SVPROC __glewSecondaryColor3sv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBPROC __glewSecondaryColor3ub; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBVPROC __glewSecondaryColor3ubv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIPROC __glewSecondaryColor3ui; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIVPROC __glewSecondaryColor3uiv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USPROC __glewSecondaryColor3us; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USVPROC __glewSecondaryColor3usv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTERPROC __glewSecondaryColorPointer; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2DPROC __glewWindowPos2d; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVPROC __glewWindowPos2dv; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2FPROC __glewWindowPos2f; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVPROC __glewWindowPos2fv; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2IPROC __glewWindowPos2i; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVPROC __glewWindowPos2iv; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2SPROC __glewWindowPos2s; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVPROC __glewWindowPos2sv; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3DPROC __glewWindowPos3d; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVPROC __glewWindowPos3dv; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3FPROC __glewWindowPos3f; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVPROC __glewWindowPos3fv; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3IPROC __glewWindowPos3i; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVPROC __glewWindowPos3iv; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3SPROC __glewWindowPos3s; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVPROC __glewWindowPos3sv; + +GLEW_FUN_EXPORT PFNGLBEGINQUERYPROC __glewBeginQuery; +GLEW_FUN_EXPORT PFNGLBINDBUFFERPROC __glewBindBuffer; +GLEW_FUN_EXPORT PFNGLBUFFERDATAPROC __glewBufferData; +GLEW_FUN_EXPORT PFNGLBUFFERSUBDATAPROC __glewBufferSubData; +GLEW_FUN_EXPORT PFNGLDELETEBUFFERSPROC __glewDeleteBuffers; +GLEW_FUN_EXPORT PFNGLDELETEQUERIESPROC __glewDeleteQueries; +GLEW_FUN_EXPORT PFNGLENDQUERYPROC __glewEndQuery; +GLEW_FUN_EXPORT PFNGLGENBUFFERSPROC __glewGenBuffers; +GLEW_FUN_EXPORT PFNGLGENQUERIESPROC __glewGenQueries; +GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERIVPROC __glewGetBufferParameteriv; +GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVPROC __glewGetBufferPointerv; +GLEW_FUN_EXPORT PFNGLGETBUFFERSUBDATAPROC __glewGetBufferSubData; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVPROC __glewGetQueryObjectiv; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVPROC __glewGetQueryObjectuiv; +GLEW_FUN_EXPORT PFNGLGETQUERYIVPROC __glewGetQueryiv; +GLEW_FUN_EXPORT PFNGLISBUFFERPROC __glewIsBuffer; +GLEW_FUN_EXPORT PFNGLISQUERYPROC __glewIsQuery; +GLEW_FUN_EXPORT PFNGLMAPBUFFERPROC __glewMapBuffer; +GLEW_FUN_EXPORT PFNGLUNMAPBUFFERPROC __glewUnmapBuffer; + +GLEW_FUN_EXPORT PFNGLATTACHSHADERPROC __glewAttachShader; +GLEW_FUN_EXPORT PFNGLBINDATTRIBLOCATIONPROC __glewBindAttribLocation; +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEPROC __glewBlendEquationSeparate; +GLEW_FUN_EXPORT PFNGLCOMPILESHADERPROC __glewCompileShader; +GLEW_FUN_EXPORT PFNGLCREATEPROGRAMPROC __glewCreateProgram; +GLEW_FUN_EXPORT PFNGLCREATESHADERPROC __glewCreateShader; +GLEW_FUN_EXPORT PFNGLDELETEPROGRAMPROC __glewDeleteProgram; +GLEW_FUN_EXPORT PFNGLDELETESHADERPROC __glewDeleteShader; +GLEW_FUN_EXPORT PFNGLDETACHSHADERPROC __glewDetachShader; +GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBARRAYPROC __glewDisableVertexAttribArray; +GLEW_FUN_EXPORT PFNGLDRAWBUFFERSPROC __glewDrawBuffers; +GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBARRAYPROC __glewEnableVertexAttribArray; +GLEW_FUN_EXPORT PFNGLGETACTIVEATTRIBPROC __glewGetActiveAttrib; +GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMPROC __glewGetActiveUniform; +GLEW_FUN_EXPORT PFNGLGETATTACHEDSHADERSPROC __glewGetAttachedShaders; +GLEW_FUN_EXPORT PFNGLGETATTRIBLOCATIONPROC __glewGetAttribLocation; +GLEW_FUN_EXPORT PFNGLGETPROGRAMINFOLOGPROC __glewGetProgramInfoLog; +GLEW_FUN_EXPORT PFNGLGETPROGRAMIVPROC __glewGetProgramiv; +GLEW_FUN_EXPORT PFNGLGETSHADERINFOLOGPROC __glewGetShaderInfoLog; +GLEW_FUN_EXPORT PFNGLGETSHADERSOURCEPROC __glewGetShaderSource; +GLEW_FUN_EXPORT PFNGLGETSHADERIVPROC __glewGetShaderiv; +GLEW_FUN_EXPORT PFNGLGETUNIFORMLOCATIONPROC __glewGetUniformLocation; +GLEW_FUN_EXPORT PFNGLGETUNIFORMFVPROC __glewGetUniformfv; +GLEW_FUN_EXPORT PFNGLGETUNIFORMIVPROC __glewGetUniformiv; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVPROC __glewGetVertexAttribPointerv; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVPROC __glewGetVertexAttribdv; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVPROC __glewGetVertexAttribfv; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVPROC __glewGetVertexAttribiv; +GLEW_FUN_EXPORT PFNGLISPROGRAMPROC __glewIsProgram; +GLEW_FUN_EXPORT PFNGLISSHADERPROC __glewIsShader; +GLEW_FUN_EXPORT PFNGLLINKPROGRAMPROC __glewLinkProgram; +GLEW_FUN_EXPORT PFNGLSHADERSOURCEPROC __glewShaderSource; +GLEW_FUN_EXPORT PFNGLSTENCILFUNCSEPARATEPROC __glewStencilFuncSeparate; +GLEW_FUN_EXPORT PFNGLSTENCILMASKSEPARATEPROC __glewStencilMaskSeparate; +GLEW_FUN_EXPORT PFNGLSTENCILOPSEPARATEPROC __glewStencilOpSeparate; +GLEW_FUN_EXPORT PFNGLUNIFORM1FPROC __glewUniform1f; +GLEW_FUN_EXPORT PFNGLUNIFORM1FVPROC __glewUniform1fv; +GLEW_FUN_EXPORT PFNGLUNIFORM1IPROC __glewUniform1i; +GLEW_FUN_EXPORT PFNGLUNIFORM1IVPROC __glewUniform1iv; +GLEW_FUN_EXPORT PFNGLUNIFORM2FPROC __glewUniform2f; +GLEW_FUN_EXPORT PFNGLUNIFORM2FVPROC __glewUniform2fv; +GLEW_FUN_EXPORT PFNGLUNIFORM2IPROC __glewUniform2i; +GLEW_FUN_EXPORT PFNGLUNIFORM2IVPROC __glewUniform2iv; +GLEW_FUN_EXPORT PFNGLUNIFORM3FPROC __glewUniform3f; +GLEW_FUN_EXPORT PFNGLUNIFORM3FVPROC __glewUniform3fv; +GLEW_FUN_EXPORT PFNGLUNIFORM3IPROC __glewUniform3i; +GLEW_FUN_EXPORT PFNGLUNIFORM3IVPROC __glewUniform3iv; +GLEW_FUN_EXPORT PFNGLUNIFORM4FPROC __glewUniform4f; +GLEW_FUN_EXPORT PFNGLUNIFORM4FVPROC __glewUniform4fv; +GLEW_FUN_EXPORT PFNGLUNIFORM4IPROC __glewUniform4i; +GLEW_FUN_EXPORT PFNGLUNIFORM4IVPROC __glewUniform4iv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2FVPROC __glewUniformMatrix2fv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3FVPROC __glewUniformMatrix3fv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4FVPROC __glewUniformMatrix4fv; +GLEW_FUN_EXPORT PFNGLUSEPROGRAMPROC __glewUseProgram; +GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMPROC __glewValidateProgram; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DPROC __glewVertexAttrib1d; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVPROC __glewVertexAttrib1dv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FPROC __glewVertexAttrib1f; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVPROC __glewVertexAttrib1fv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SPROC __glewVertexAttrib1s; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVPROC __glewVertexAttrib1sv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DPROC __glewVertexAttrib2d; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVPROC __glewVertexAttrib2dv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FPROC __glewVertexAttrib2f; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVPROC __glewVertexAttrib2fv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SPROC __glewVertexAttrib2s; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVPROC __glewVertexAttrib2sv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DPROC __glewVertexAttrib3d; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVPROC __glewVertexAttrib3dv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FPROC __glewVertexAttrib3f; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVPROC __glewVertexAttrib3fv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SPROC __glewVertexAttrib3s; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVPROC __glewVertexAttrib3sv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NBVPROC __glewVertexAttrib4Nbv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NIVPROC __glewVertexAttrib4Niv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NSVPROC __glewVertexAttrib4Nsv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBPROC __glewVertexAttrib4Nub; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBVPROC __glewVertexAttrib4Nubv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUIVPROC __glewVertexAttrib4Nuiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUSVPROC __glewVertexAttrib4Nusv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4BVPROC __glewVertexAttrib4bv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DPROC __glewVertexAttrib4d; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVPROC __glewVertexAttrib4dv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FPROC __glewVertexAttrib4f; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVPROC __glewVertexAttrib4fv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4IVPROC __glewVertexAttrib4iv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SPROC __glewVertexAttrib4s; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVPROC __glewVertexAttrib4sv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVPROC __glewVertexAttrib4ubv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UIVPROC __glewVertexAttrib4uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4USVPROC __glewVertexAttrib4usv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERPROC __glewVertexAttribPointer; + +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3FVPROC __glewUniformMatrix2x3fv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4FVPROC __glewUniformMatrix2x4fv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2FVPROC __glewUniformMatrix3x2fv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4FVPROC __glewUniformMatrix3x4fv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2FVPROC __glewUniformMatrix4x2fv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3FVPROC __glewUniformMatrix4x3fv; + +GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERPROC __glewBeginConditionalRender; +GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKPROC __glewBeginTransformFeedback; +GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONPROC __glewBindFragDataLocation; +GLEW_FUN_EXPORT PFNGLCLAMPCOLORPROC __glewClampColor; +GLEW_FUN_EXPORT PFNGLCLEARBUFFERFIPROC __glewClearBufferfi; +GLEW_FUN_EXPORT PFNGLCLEARBUFFERFVPROC __glewClearBufferfv; +GLEW_FUN_EXPORT PFNGLCLEARBUFFERIVPROC __glewClearBufferiv; +GLEW_FUN_EXPORT PFNGLCLEARBUFFERUIVPROC __glewClearBufferuiv; +GLEW_FUN_EXPORT PFNGLCOLORMASKIPROC __glewColorMaski; +GLEW_FUN_EXPORT PFNGLDISABLEIPROC __glewDisablei; +GLEW_FUN_EXPORT PFNGLENABLEIPROC __glewEnablei; +GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERPROC __glewEndConditionalRender; +GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKPROC __glewEndTransformFeedback; +GLEW_FUN_EXPORT PFNGLGETBOOLEANI_VPROC __glewGetBooleani_v; +GLEW_FUN_EXPORT PFNGLGETFRAGDATALOCATIONPROC __glewGetFragDataLocation; +GLEW_FUN_EXPORT PFNGLGETSTRINGIPROC __glewGetStringi; +GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVPROC __glewGetTexParameterIiv; +GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVPROC __glewGetTexParameterIuiv; +GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGPROC __glewGetTransformFeedbackVarying; +GLEW_FUN_EXPORT PFNGLGETUNIFORMUIVPROC __glewGetUniformuiv; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIIVPROC __glewGetVertexAttribIiv; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIUIVPROC __glewGetVertexAttribIuiv; +GLEW_FUN_EXPORT PFNGLISENABLEDIPROC __glewIsEnabledi; +GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVPROC __glewTexParameterIiv; +GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVPROC __glewTexParameterIuiv; +GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSPROC __glewTransformFeedbackVaryings; +GLEW_FUN_EXPORT PFNGLUNIFORM1UIPROC __glewUniform1ui; +GLEW_FUN_EXPORT PFNGLUNIFORM1UIVPROC __glewUniform1uiv; +GLEW_FUN_EXPORT PFNGLUNIFORM2UIPROC __glewUniform2ui; +GLEW_FUN_EXPORT PFNGLUNIFORM2UIVPROC __glewUniform2uiv; +GLEW_FUN_EXPORT PFNGLUNIFORM3UIPROC __glewUniform3ui; +GLEW_FUN_EXPORT PFNGLUNIFORM3UIVPROC __glewUniform3uiv; +GLEW_FUN_EXPORT PFNGLUNIFORM4UIPROC __glewUniform4ui; +GLEW_FUN_EXPORT PFNGLUNIFORM4UIVPROC __glewUniform4uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IPROC __glewVertexAttribI1i; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IVPROC __glewVertexAttribI1iv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIPROC __glewVertexAttribI1ui; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIVPROC __glewVertexAttribI1uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IPROC __glewVertexAttribI2i; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IVPROC __glewVertexAttribI2iv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIPROC __glewVertexAttribI2ui; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIVPROC __glewVertexAttribI2uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IPROC __glewVertexAttribI3i; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IVPROC __glewVertexAttribI3iv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIPROC __glewVertexAttribI3ui; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIVPROC __glewVertexAttribI3uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4BVPROC __glewVertexAttribI4bv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IPROC __glewVertexAttribI4i; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IVPROC __glewVertexAttribI4iv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4SVPROC __glewVertexAttribI4sv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UBVPROC __glewVertexAttribI4ubv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIPROC __glewVertexAttribI4ui; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIVPROC __glewVertexAttribI4uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4USVPROC __glewVertexAttribI4usv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIPOINTERPROC __glewVertexAttribIPointer; + +GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDPROC __glewDrawArraysInstanced; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDPROC __glewDrawElementsInstanced; +GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTINDEXPROC __glewPrimitiveRestartIndex; +GLEW_FUN_EXPORT PFNGLTEXBUFFERPROC __glewTexBuffer; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREPROC __glewFramebufferTexture; +GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERI64VPROC __glewGetBufferParameteri64v; +GLEW_FUN_EXPORT PFNGLGETINTEGER64I_VPROC __glewGetInteger64i_v; + +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORPROC __glewVertexAttribDivisor; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIPROC __glewBlendEquationSeparatei; +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIPROC __glewBlendEquationi; +GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIPROC __glewBlendFuncSeparatei; +GLEW_FUN_EXPORT PFNGLBLENDFUNCIPROC __glewBlendFunci; +GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGPROC __glewMinSampleShading; + +GLEW_FUN_EXPORT PFNGLGETGRAPHICSRESETSTATUSPROC __glewGetGraphicsResetStatus; +GLEW_FUN_EXPORT PFNGLGETNCOMPRESSEDTEXIMAGEPROC __glewGetnCompressedTexImage; +GLEW_FUN_EXPORT PFNGLGETNTEXIMAGEPROC __glewGetnTexImage; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMDVPROC __glewGetnUniformdv; + +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC __glewMultiDrawArraysIndirectCount; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC __glewMultiDrawElementsIndirectCount; +GLEW_FUN_EXPORT PFNGLSPECIALIZESHADERPROC __glewSpecializeShader; + +GLEW_FUN_EXPORT PFNGLTBUFFERMASK3DFXPROC __glewTbufferMask3DFX; + +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECALLBACKAMDPROC __glewDebugMessageCallbackAMD; +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEENABLEAMDPROC __glewDebugMessageEnableAMD; +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEINSERTAMDPROC __glewDebugMessageInsertAMD; +GLEW_FUN_EXPORT PFNGLGETDEBUGMESSAGELOGAMDPROC __glewGetDebugMessageLogAMD; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONINDEXEDAMDPROC __glewBlendEquationIndexedAMD; +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC __glewBlendEquationSeparateIndexedAMD; +GLEW_FUN_EXPORT PFNGLBLENDFUNCINDEXEDAMDPROC __glewBlendFuncIndexedAMD; +GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC __glewBlendFuncSeparateIndexedAMD; + +GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC __glewNamedRenderbufferStorageMultisampleAdvancedAMD; +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC __glewRenderbufferStorageMultisampleAdvancedAMD; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC __glewFramebufferSamplePositionsfvAMD; +GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERFVAMDPROC __glewGetFramebufferParameterfvAMD; +GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERPARAMETERFVAMDPROC __glewGetNamedFramebufferParameterfvAMD; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC __glewNamedFramebufferSamplePositionsfvAMD; + +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPARAMETERIAMDPROC __glewVertexAttribParameteriAMD; + +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC __glewMultiDrawArraysIndirectAMD; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC __glewMultiDrawElementsIndirectAMD; + +GLEW_FUN_EXPORT PFNGLDELETENAMESAMDPROC __glewDeleteNamesAMD; +GLEW_FUN_EXPORT PFNGLGENNAMESAMDPROC __glewGenNamesAMD; +GLEW_FUN_EXPORT PFNGLISNAMEAMDPROC __glewIsNameAMD; + +GLEW_FUN_EXPORT PFNGLQUERYOBJECTPARAMETERUIAMDPROC __glewQueryObjectParameteruiAMD; + +GLEW_FUN_EXPORT PFNGLBEGINPERFMONITORAMDPROC __glewBeginPerfMonitorAMD; +GLEW_FUN_EXPORT PFNGLDELETEPERFMONITORSAMDPROC __glewDeletePerfMonitorsAMD; +GLEW_FUN_EXPORT PFNGLENDPERFMONITORAMDPROC __glewEndPerfMonitorAMD; +GLEW_FUN_EXPORT PFNGLGENPERFMONITORSAMDPROC __glewGenPerfMonitorsAMD; +GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERDATAAMDPROC __glewGetPerfMonitorCounterDataAMD; +GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERINFOAMDPROC __glewGetPerfMonitorCounterInfoAMD; +GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC __glewGetPerfMonitorCounterStringAMD; +GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERSAMDPROC __glewGetPerfMonitorCountersAMD; +GLEW_FUN_EXPORT PFNGLGETPERFMONITORGROUPSTRINGAMDPROC __glewGetPerfMonitorGroupStringAMD; +GLEW_FUN_EXPORT PFNGLGETPERFMONITORGROUPSAMDPROC __glewGetPerfMonitorGroupsAMD; +GLEW_FUN_EXPORT PFNGLSELECTPERFMONITORCOUNTERSAMDPROC __glewSelectPerfMonitorCountersAMD; + +GLEW_FUN_EXPORT PFNGLSETMULTISAMPLEFVAMDPROC __glewSetMultisamplefvAMD; + +GLEW_FUN_EXPORT PFNGLTEXSTORAGESPARSEAMDPROC __glewTexStorageSparseAMD; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGESPARSEAMDPROC __glewTextureStorageSparseAMD; + +GLEW_FUN_EXPORT PFNGLSTENCILOPVALUEAMDPROC __glewStencilOpValueAMD; + +GLEW_FUN_EXPORT PFNGLTESSELLATIONFACTORAMDPROC __glewTessellationFactorAMD; +GLEW_FUN_EXPORT PFNGLTESSELLATIONMODEAMDPROC __glewTessellationModeAMD; + +GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFERANGLEPROC __glewBlitFramebufferANGLE; + +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC __glewRenderbufferStorageMultisampleANGLE; + +GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDANGLEPROC __glewDrawArraysInstancedANGLE; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDANGLEPROC __glewDrawElementsInstancedANGLE; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORANGLEPROC __glewVertexAttribDivisorANGLE; + +GLEW_FUN_EXPORT PFNGLBEGINQUERYANGLEPROC __glewBeginQueryANGLE; +GLEW_FUN_EXPORT PFNGLDELETEQUERIESANGLEPROC __glewDeleteQueriesANGLE; +GLEW_FUN_EXPORT PFNGLENDQUERYANGLEPROC __glewEndQueryANGLE; +GLEW_FUN_EXPORT PFNGLGENQUERIESANGLEPROC __glewGenQueriesANGLE; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VANGLEPROC __glewGetQueryObjecti64vANGLE; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVANGLEPROC __glewGetQueryObjectivANGLE; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VANGLEPROC __glewGetQueryObjectui64vANGLE; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVANGLEPROC __glewGetQueryObjectuivANGLE; +GLEW_FUN_EXPORT PFNGLGETQUERYIVANGLEPROC __glewGetQueryivANGLE; +GLEW_FUN_EXPORT PFNGLISQUERYANGLEPROC __glewIsQueryANGLE; +GLEW_FUN_EXPORT PFNGLQUERYCOUNTERANGLEPROC __glewQueryCounterANGLE; + +GLEW_FUN_EXPORT PFNGLGETTRANSLATEDSHADERSOURCEANGLEPROC __glewGetTranslatedShaderSourceANGLE; + +GLEW_FUN_EXPORT PFNGLCOPYTEXTURELEVELSAPPLEPROC __glewCopyTextureLevelsAPPLE; + +GLEW_FUN_EXPORT PFNGLDRAWELEMENTARRAYAPPLEPROC __glewDrawElementArrayAPPLE; +GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC __glewDrawRangeElementArrayAPPLE; +GLEW_FUN_EXPORT PFNGLELEMENTPOINTERAPPLEPROC __glewElementPointerAPPLE; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC __glewMultiDrawElementArrayAPPLE; +GLEW_FUN_EXPORT PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC __glewMultiDrawRangeElementArrayAPPLE; + +GLEW_FUN_EXPORT PFNGLDELETEFENCESAPPLEPROC __glewDeleteFencesAPPLE; +GLEW_FUN_EXPORT PFNGLFINISHFENCEAPPLEPROC __glewFinishFenceAPPLE; +GLEW_FUN_EXPORT PFNGLFINISHOBJECTAPPLEPROC __glewFinishObjectAPPLE; +GLEW_FUN_EXPORT PFNGLGENFENCESAPPLEPROC __glewGenFencesAPPLE; +GLEW_FUN_EXPORT PFNGLISFENCEAPPLEPROC __glewIsFenceAPPLE; +GLEW_FUN_EXPORT PFNGLSETFENCEAPPLEPROC __glewSetFenceAPPLE; +GLEW_FUN_EXPORT PFNGLTESTFENCEAPPLEPROC __glewTestFenceAPPLE; +GLEW_FUN_EXPORT PFNGLTESTOBJECTAPPLEPROC __glewTestObjectAPPLE; + +GLEW_FUN_EXPORT PFNGLBUFFERPARAMETERIAPPLEPROC __glewBufferParameteriAPPLE; +GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC __glewFlushMappedBufferRangeAPPLE; + +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC __glewRenderbufferStorageMultisampleAPPLE; +GLEW_FUN_EXPORT PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC __glewResolveMultisampleFramebufferAPPLE; + +GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERIVAPPLEPROC __glewGetObjectParameterivAPPLE; +GLEW_FUN_EXPORT PFNGLOBJECTPURGEABLEAPPLEPROC __glewObjectPurgeableAPPLE; +GLEW_FUN_EXPORT PFNGLOBJECTUNPURGEABLEAPPLEPROC __glewObjectUnpurgeableAPPLE; + +GLEW_FUN_EXPORT PFNGLCLIENTWAITSYNCAPPLEPROC __glewClientWaitSyncAPPLE; +GLEW_FUN_EXPORT PFNGLDELETESYNCAPPLEPROC __glewDeleteSyncAPPLE; +GLEW_FUN_EXPORT PFNGLFENCESYNCAPPLEPROC __glewFenceSyncAPPLE; +GLEW_FUN_EXPORT PFNGLGETINTEGER64VAPPLEPROC __glewGetInteger64vAPPLE; +GLEW_FUN_EXPORT PFNGLGETSYNCIVAPPLEPROC __glewGetSyncivAPPLE; +GLEW_FUN_EXPORT PFNGLISSYNCAPPLEPROC __glewIsSyncAPPLE; +GLEW_FUN_EXPORT PFNGLWAITSYNCAPPLEPROC __glewWaitSyncAPPLE; + +GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC __glewGetTexParameterPointervAPPLE; +GLEW_FUN_EXPORT PFNGLTEXTURERANGEAPPLEPROC __glewTextureRangeAPPLE; + +GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYAPPLEPROC __glewBindVertexArrayAPPLE; +GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSAPPLEPROC __glewDeleteVertexArraysAPPLE; +GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSAPPLEPROC __glewGenVertexArraysAPPLE; +GLEW_FUN_EXPORT PFNGLISVERTEXARRAYAPPLEPROC __glewIsVertexArrayAPPLE; + +GLEW_FUN_EXPORT PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC __glewFlushVertexArrayRangeAPPLE; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYPARAMETERIAPPLEPROC __glewVertexArrayParameteriAPPLE; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYRANGEAPPLEPROC __glewVertexArrayRangeAPPLE; + +GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBAPPLEPROC __glewDisableVertexAttribAPPLE; +GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBAPPLEPROC __glewEnableVertexAttribAPPLE; +GLEW_FUN_EXPORT PFNGLISVERTEXATTRIBENABLEDAPPLEPROC __glewIsVertexAttribEnabledAPPLE; +GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB1DAPPLEPROC __glewMapVertexAttrib1dAPPLE; +GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB1FAPPLEPROC __glewMapVertexAttrib1fAPPLE; +GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB2DAPPLEPROC __glewMapVertexAttrib2dAPPLE; +GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB2FAPPLEPROC __glewMapVertexAttrib2fAPPLE; + +GLEW_FUN_EXPORT PFNGLCLEARDEPTHFPROC __glewClearDepthf; +GLEW_FUN_EXPORT PFNGLDEPTHRANGEFPROC __glewDepthRangef; +GLEW_FUN_EXPORT PFNGLGETSHADERPRECISIONFORMATPROC __glewGetShaderPrecisionFormat; +GLEW_FUN_EXPORT PFNGLRELEASESHADERCOMPILERPROC __glewReleaseShaderCompiler; +GLEW_FUN_EXPORT PFNGLSHADERBINARYPROC __glewShaderBinary; + +GLEW_FUN_EXPORT PFNGLMEMORYBARRIERBYREGIONPROC __glewMemoryBarrierByRegion; + +GLEW_FUN_EXPORT PFNGLPRIMITIVEBOUNDINGBOXARBPROC __glewPrimitiveBoundingBoxARB; + +GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC __glewDrawArraysInstancedBaseInstance; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC __glewDrawElementsInstancedBaseInstance; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC __glewDrawElementsInstancedBaseVertexBaseInstance; + +GLEW_FUN_EXPORT PFNGLGETIMAGEHANDLEARBPROC __glewGetImageHandleARB; +GLEW_FUN_EXPORT PFNGLGETTEXTUREHANDLEARBPROC __glewGetTextureHandleARB; +GLEW_FUN_EXPORT PFNGLGETTEXTURESAMPLERHANDLEARBPROC __glewGetTextureSamplerHandleARB; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLUI64VARBPROC __glewGetVertexAttribLui64vARB; +GLEW_FUN_EXPORT PFNGLISIMAGEHANDLERESIDENTARBPROC __glewIsImageHandleResidentARB; +GLEW_FUN_EXPORT PFNGLISTEXTUREHANDLERESIDENTARBPROC __glewIsTextureHandleResidentARB; +GLEW_FUN_EXPORT PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC __glewMakeImageHandleNonResidentARB; +GLEW_FUN_EXPORT PFNGLMAKEIMAGEHANDLERESIDENTARBPROC __glewMakeImageHandleResidentARB; +GLEW_FUN_EXPORT PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC __glewMakeTextureHandleNonResidentARB; +GLEW_FUN_EXPORT PFNGLMAKETEXTUREHANDLERESIDENTARBPROC __glewMakeTextureHandleResidentARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC __glewProgramUniformHandleui64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC __glewProgramUniformHandleui64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64ARBPROC __glewUniformHandleui64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64VARBPROC __glewUniformHandleui64vARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64ARBPROC __glewVertexAttribL1ui64ARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64VARBPROC __glewVertexAttribL1ui64vARB; + +GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONINDEXEDPROC __glewBindFragDataLocationIndexed; +GLEW_FUN_EXPORT PFNGLGETFRAGDATAINDEXPROC __glewGetFragDataIndex; + +GLEW_FUN_EXPORT PFNGLBUFFERSTORAGEPROC __glewBufferStorage; + +GLEW_FUN_EXPORT PFNGLCREATESYNCFROMCLEVENTARBPROC __glewCreateSyncFromCLeventARB; + +GLEW_FUN_EXPORT PFNGLCLEARBUFFERDATAPROC __glewClearBufferData; +GLEW_FUN_EXPORT PFNGLCLEARBUFFERSUBDATAPROC __glewClearBufferSubData; +GLEW_FUN_EXPORT PFNGLCLEARNAMEDBUFFERDATAEXTPROC __glewClearNamedBufferDataEXT; +GLEW_FUN_EXPORT PFNGLCLEARNAMEDBUFFERSUBDATAEXTPROC __glewClearNamedBufferSubDataEXT; + +GLEW_FUN_EXPORT PFNGLCLEARTEXIMAGEPROC __glewClearTexImage; +GLEW_FUN_EXPORT PFNGLCLEARTEXSUBIMAGEPROC __glewClearTexSubImage; + +GLEW_FUN_EXPORT PFNGLCLIPCONTROLPROC __glewClipControl; + +GLEW_FUN_EXPORT PFNGLCLAMPCOLORARBPROC __glewClampColorARB; + +GLEW_FUN_EXPORT PFNGLDISPATCHCOMPUTEPROC __glewDispatchCompute; +GLEW_FUN_EXPORT PFNGLDISPATCHCOMPUTEINDIRECTPROC __glewDispatchComputeIndirect; + +GLEW_FUN_EXPORT PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC __glewDispatchComputeGroupSizeARB; + +GLEW_FUN_EXPORT PFNGLCOPYBUFFERSUBDATAPROC __glewCopyBufferSubData; + +GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATAPROC __glewCopyImageSubData; + +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECALLBACKARBPROC __glewDebugMessageCallbackARB; +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECONTROLARBPROC __glewDebugMessageControlARB; +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEINSERTARBPROC __glewDebugMessageInsertARB; +GLEW_FUN_EXPORT PFNGLGETDEBUGMESSAGELOGARBPROC __glewGetDebugMessageLogARB; + +GLEW_FUN_EXPORT PFNGLBINDTEXTUREUNITPROC __glewBindTextureUnit; +GLEW_FUN_EXPORT PFNGLBLITNAMEDFRAMEBUFFERPROC __glewBlitNamedFramebuffer; +GLEW_FUN_EXPORT PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC __glewCheckNamedFramebufferStatus; +GLEW_FUN_EXPORT PFNGLCLEARNAMEDBUFFERDATAPROC __glewClearNamedBufferData; +GLEW_FUN_EXPORT PFNGLCLEARNAMEDBUFFERSUBDATAPROC __glewClearNamedBufferSubData; +GLEW_FUN_EXPORT PFNGLCLEARNAMEDFRAMEBUFFERFIPROC __glewClearNamedFramebufferfi; +GLEW_FUN_EXPORT PFNGLCLEARNAMEDFRAMEBUFFERFVPROC __glewClearNamedFramebufferfv; +GLEW_FUN_EXPORT PFNGLCLEARNAMEDFRAMEBUFFERIVPROC __glewClearNamedFramebufferiv; +GLEW_FUN_EXPORT PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC __glewClearNamedFramebufferuiv; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC __glewCompressedTextureSubImage1D; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC __glewCompressedTextureSubImage2D; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC __glewCompressedTextureSubImage3D; +GLEW_FUN_EXPORT PFNGLCOPYNAMEDBUFFERSUBDATAPROC __glewCopyNamedBufferSubData; +GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE1DPROC __glewCopyTextureSubImage1D; +GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE2DPROC __glewCopyTextureSubImage2D; +GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE3DPROC __glewCopyTextureSubImage3D; +GLEW_FUN_EXPORT PFNGLCREATEBUFFERSPROC __glewCreateBuffers; +GLEW_FUN_EXPORT PFNGLCREATEFRAMEBUFFERSPROC __glewCreateFramebuffers; +GLEW_FUN_EXPORT PFNGLCREATEPROGRAMPIPELINESPROC __glewCreateProgramPipelines; +GLEW_FUN_EXPORT PFNGLCREATEQUERIESPROC __glewCreateQueries; +GLEW_FUN_EXPORT PFNGLCREATERENDERBUFFERSPROC __glewCreateRenderbuffers; +GLEW_FUN_EXPORT PFNGLCREATESAMPLERSPROC __glewCreateSamplers; +GLEW_FUN_EXPORT PFNGLCREATETEXTURESPROC __glewCreateTextures; +GLEW_FUN_EXPORT PFNGLCREATETRANSFORMFEEDBACKSPROC __glewCreateTransformFeedbacks; +GLEW_FUN_EXPORT PFNGLCREATEVERTEXARRAYSPROC __glewCreateVertexArrays; +GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYATTRIBPROC __glewDisableVertexArrayAttrib; +GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYATTRIBPROC __glewEnableVertexArrayAttrib; +GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC __glewFlushMappedNamedBufferRange; +GLEW_FUN_EXPORT PFNGLGENERATETEXTUREMIPMAPPROC __glewGenerateTextureMipmap; +GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC __glewGetCompressedTextureImage; +GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERI64VPROC __glewGetNamedBufferParameteri64v; +GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERIVPROC __glewGetNamedBufferParameteriv; +GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPOINTERVPROC __glewGetNamedBufferPointerv; +GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERSUBDATAPROC __glewGetNamedBufferSubData; +GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetNamedFramebufferAttachmentParameteriv; +GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC __glewGetNamedFramebufferParameteriv; +GLEW_FUN_EXPORT PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC __glewGetNamedRenderbufferParameteriv; +GLEW_FUN_EXPORT PFNGLGETQUERYBUFFEROBJECTI64VPROC __glewGetQueryBufferObjecti64v; +GLEW_FUN_EXPORT PFNGLGETQUERYBUFFEROBJECTIVPROC __glewGetQueryBufferObjectiv; +GLEW_FUN_EXPORT PFNGLGETQUERYBUFFEROBJECTUI64VPROC __glewGetQueryBufferObjectui64v; +GLEW_FUN_EXPORT PFNGLGETQUERYBUFFEROBJECTUIVPROC __glewGetQueryBufferObjectuiv; +GLEW_FUN_EXPORT PFNGLGETTEXTUREIMAGEPROC __glewGetTextureImage; +GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERFVPROC __glewGetTextureLevelParameterfv; +GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERIVPROC __glewGetTextureLevelParameteriv; +GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIIVPROC __glewGetTextureParameterIiv; +GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIUIVPROC __glewGetTextureParameterIuiv; +GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERFVPROC __glewGetTextureParameterfv; +GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIVPROC __glewGetTextureParameteriv; +GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKI64_VPROC __glewGetTransformFeedbacki64_v; +GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKI_VPROC __glewGetTransformFeedbacki_v; +GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKIVPROC __glewGetTransformFeedbackiv; +GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINDEXED64IVPROC __glewGetVertexArrayIndexed64iv; +GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINDEXEDIVPROC __glewGetVertexArrayIndexediv; +GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYIVPROC __glewGetVertexArrayiv; +GLEW_FUN_EXPORT PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC __glewInvalidateNamedFramebufferData; +GLEW_FUN_EXPORT PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC __glewInvalidateNamedFramebufferSubData; +GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFERPROC __glewMapNamedBuffer; +GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFERRANGEPROC __glewMapNamedBufferRange; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERDATAPROC __glewNamedBufferData; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSTORAGEPROC __glewNamedBufferStorage; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSUBDATAPROC __glewNamedBufferSubData; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC __glewNamedFramebufferDrawBuffer; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC __glewNamedFramebufferDrawBuffers; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC __glewNamedFramebufferParameteri; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC __glewNamedFramebufferReadBuffer; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC __glewNamedFramebufferRenderbuffer; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREPROC __glewNamedFramebufferTexture; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC __glewNamedFramebufferTextureLayer; +GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEPROC __glewNamedRenderbufferStorage; +GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewNamedRenderbufferStorageMultisample; +GLEW_FUN_EXPORT PFNGLTEXTUREBUFFERPROC __glewTextureBuffer; +GLEW_FUN_EXPORT PFNGLTEXTUREBUFFERRANGEPROC __glewTextureBufferRange; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIIVPROC __glewTextureParameterIiv; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIUIVPROC __glewTextureParameterIuiv; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFPROC __glewTextureParameterf; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFVPROC __glewTextureParameterfv; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIPROC __glewTextureParameteri; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIVPROC __glewTextureParameteriv; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE1DPROC __glewTextureStorage1D; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DPROC __glewTextureStorage2D; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC __glewTextureStorage2DMultisample; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DPROC __glewTextureStorage3D; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC __glewTextureStorage3DMultisample; +GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE1DPROC __glewTextureSubImage1D; +GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE2DPROC __glewTextureSubImage2D; +GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE3DPROC __glewTextureSubImage3D; +GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC __glewTransformFeedbackBufferBase; +GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC __glewTransformFeedbackBufferRange; +GLEW_FUN_EXPORT PFNGLUNMAPNAMEDBUFFERPROC __glewUnmapNamedBuffer; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYATTRIBBINDINGPROC __glewVertexArrayAttribBinding; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYATTRIBFORMATPROC __glewVertexArrayAttribFormat; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYATTRIBIFORMATPROC __glewVertexArrayAttribIFormat; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYATTRIBLFORMATPROC __glewVertexArrayAttribLFormat; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYBINDINGDIVISORPROC __glewVertexArrayBindingDivisor; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYELEMENTBUFFERPROC __glewVertexArrayElementBuffer; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXBUFFERPROC __glewVertexArrayVertexBuffer; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXBUFFERSPROC __glewVertexArrayVertexBuffers; + +GLEW_FUN_EXPORT PFNGLDRAWBUFFERSARBPROC __glewDrawBuffersARB; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIARBPROC __glewBlendEquationSeparateiARB; +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIARBPROC __glewBlendEquationiARB; +GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIARBPROC __glewBlendFuncSeparateiARB; +GLEW_FUN_EXPORT PFNGLBLENDFUNCIARBPROC __glewBlendFunciARB; + +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSBASEVERTEXPROC __glewDrawElementsBaseVertex; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC __glewDrawElementsInstancedBaseVertex; +GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC __glewDrawRangeElementsBaseVertex; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC __glewMultiDrawElementsBaseVertex; + +GLEW_FUN_EXPORT PFNGLDRAWARRAYSINDIRECTPROC __glewDrawArraysIndirect; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINDIRECTPROC __glewDrawElementsIndirect; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERPARAMETERIPROC __glewFramebufferParameteri; +GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERIVPROC __glewGetFramebufferParameteriv; +GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVEXTPROC __glewGetNamedFramebufferParameterivEXT; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERPARAMETERIEXTPROC __glewNamedFramebufferParameteriEXT; + +GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFERPROC __glewBindFramebuffer; +GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFERPROC __glewBindRenderbuffer; +GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFERPROC __glewBlitFramebuffer; +GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSPROC __glewCheckFramebufferStatus; +GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSPROC __glewDeleteFramebuffers; +GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSPROC __glewDeleteRenderbuffers; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFERPROC __glewFramebufferRenderbuffer; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE1DPROC __glewFramebufferTexture1D; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DPROC __glewFramebufferTexture2D; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DPROC __glewFramebufferTexture3D; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERPROC __glewFramebufferTextureLayer; +GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSPROC __glewGenFramebuffers; +GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSPROC __glewGenRenderbuffers; +GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPPROC __glewGenerateMipmap; +GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetFramebufferAttachmentParameteriv; +GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVPROC __glewGetRenderbufferParameteriv; +GLEW_FUN_EXPORT PFNGLISFRAMEBUFFERPROC __glewIsFramebuffer; +GLEW_FUN_EXPORT PFNGLISRENDERBUFFERPROC __glewIsRenderbuffer; +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEPROC __glewRenderbufferStorage; +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewRenderbufferStorageMultisample; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREARBPROC __glewFramebufferTextureARB; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREFACEARBPROC __glewFramebufferTextureFaceARB; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERARBPROC __glewFramebufferTextureLayerARB; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIARBPROC __glewProgramParameteriARB; + +GLEW_FUN_EXPORT PFNGLGETPROGRAMBINARYPROC __glewGetProgramBinary; +GLEW_FUN_EXPORT PFNGLPROGRAMBINARYPROC __glewProgramBinary; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIPROC __glewProgramParameteri; + +GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC __glewGetCompressedTextureSubImage; +GLEW_FUN_EXPORT PFNGLGETTEXTURESUBIMAGEPROC __glewGetTextureSubImage; + +GLEW_FUN_EXPORT PFNGLSPECIALIZESHADERARBPROC __glewSpecializeShaderARB; + +GLEW_FUN_EXPORT PFNGLGETUNIFORMDVPROC __glewGetUniformdv; +GLEW_FUN_EXPORT PFNGLUNIFORM1DPROC __glewUniform1d; +GLEW_FUN_EXPORT PFNGLUNIFORM1DVPROC __glewUniform1dv; +GLEW_FUN_EXPORT PFNGLUNIFORM2DPROC __glewUniform2d; +GLEW_FUN_EXPORT PFNGLUNIFORM2DVPROC __glewUniform2dv; +GLEW_FUN_EXPORT PFNGLUNIFORM3DPROC __glewUniform3d; +GLEW_FUN_EXPORT PFNGLUNIFORM3DVPROC __glewUniform3dv; +GLEW_FUN_EXPORT PFNGLUNIFORM4DPROC __glewUniform4d; +GLEW_FUN_EXPORT PFNGLUNIFORM4DVPROC __glewUniform4dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2DVPROC __glewUniformMatrix2dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3DVPROC __glewUniformMatrix2x3dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4DVPROC __glewUniformMatrix2x4dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3DVPROC __glewUniformMatrix3dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2DVPROC __glewUniformMatrix3x2dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4DVPROC __glewUniformMatrix3x4dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4DVPROC __glewUniformMatrix4dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2DVPROC __glewUniformMatrix4x2dv; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3DVPROC __glewUniformMatrix4x3dv; + +GLEW_FUN_EXPORT PFNGLGETUNIFORMI64VARBPROC __glewGetUniformi64vARB; +GLEW_FUN_EXPORT PFNGLGETUNIFORMUI64VARBPROC __glewGetUniformui64vARB; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMI64VARBPROC __glewGetnUniformi64vARB; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMUI64VARBPROC __glewGetnUniformui64vARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64ARBPROC __glewProgramUniform1i64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64VARBPROC __glewProgramUniform1i64vARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64ARBPROC __glewProgramUniform1ui64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64VARBPROC __glewProgramUniform1ui64vARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64ARBPROC __glewProgramUniform2i64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64VARBPROC __glewProgramUniform2i64vARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64ARBPROC __glewProgramUniform2ui64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64VARBPROC __glewProgramUniform2ui64vARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64ARBPROC __glewProgramUniform3i64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64VARBPROC __glewProgramUniform3i64vARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64ARBPROC __glewProgramUniform3ui64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64VARBPROC __glewProgramUniform3ui64vARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64ARBPROC __glewProgramUniform4i64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64VARBPROC __glewProgramUniform4i64vARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64ARBPROC __glewProgramUniform4ui64ARB; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64VARBPROC __glewProgramUniform4ui64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORM1I64ARBPROC __glewUniform1i64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORM1I64VARBPROC __glewUniform1i64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORM1UI64ARBPROC __glewUniform1ui64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORM1UI64VARBPROC __glewUniform1ui64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORM2I64ARBPROC __glewUniform2i64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORM2I64VARBPROC __glewUniform2i64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORM2UI64ARBPROC __glewUniform2ui64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORM2UI64VARBPROC __glewUniform2ui64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORM3I64ARBPROC __glewUniform3i64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORM3I64VARBPROC __glewUniform3i64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORM3UI64ARBPROC __glewUniform3ui64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORM3UI64VARBPROC __glewUniform3ui64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORM4I64ARBPROC __glewUniform4i64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORM4I64VARBPROC __glewUniform4i64vARB; +GLEW_FUN_EXPORT PFNGLUNIFORM4UI64ARBPROC __glewUniform4ui64ARB; +GLEW_FUN_EXPORT PFNGLUNIFORM4UI64VARBPROC __glewUniform4ui64vARB; + +GLEW_FUN_EXPORT PFNGLCOLORSUBTABLEPROC __glewColorSubTable; +GLEW_FUN_EXPORT PFNGLCOLORTABLEPROC __glewColorTable; +GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERFVPROC __glewColorTableParameterfv; +GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERIVPROC __glewColorTableParameteriv; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER1DPROC __glewConvolutionFilter1D; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER2DPROC __glewConvolutionFilter2D; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFPROC __glewConvolutionParameterf; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFVPROC __glewConvolutionParameterfv; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIPROC __glewConvolutionParameteri; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIVPROC __glewConvolutionParameteriv; +GLEW_FUN_EXPORT PFNGLCOPYCOLORSUBTABLEPROC __glewCopyColorSubTable; +GLEW_FUN_EXPORT PFNGLCOPYCOLORTABLEPROC __glewCopyColorTable; +GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER1DPROC __glewCopyConvolutionFilter1D; +GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER2DPROC __glewCopyConvolutionFilter2D; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPROC __glewGetColorTable; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVPROC __glewGetColorTableParameterfv; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVPROC __glewGetColorTableParameteriv; +GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONFILTERPROC __glewGetConvolutionFilter; +GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERFVPROC __glewGetConvolutionParameterfv; +GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERIVPROC __glewGetConvolutionParameteriv; +GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPROC __glewGetHistogram; +GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERFVPROC __glewGetHistogramParameterfv; +GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERIVPROC __glewGetHistogramParameteriv; +GLEW_FUN_EXPORT PFNGLGETMINMAXPROC __glewGetMinmax; +GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERFVPROC __glewGetMinmaxParameterfv; +GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERIVPROC __glewGetMinmaxParameteriv; +GLEW_FUN_EXPORT PFNGLGETSEPARABLEFILTERPROC __glewGetSeparableFilter; +GLEW_FUN_EXPORT PFNGLHISTOGRAMPROC __glewHistogram; +GLEW_FUN_EXPORT PFNGLMINMAXPROC __glewMinmax; +GLEW_FUN_EXPORT PFNGLRESETHISTOGRAMPROC __glewResetHistogram; +GLEW_FUN_EXPORT PFNGLRESETMINMAXPROC __glewResetMinmax; +GLEW_FUN_EXPORT PFNGLSEPARABLEFILTER2DPROC __glewSeparableFilter2D; + +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC __glewMultiDrawArraysIndirectCountARB; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC __glewMultiDrawElementsIndirectCountARB; + +GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDARBPROC __glewDrawArraysInstancedARB; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDARBPROC __glewDrawElementsInstancedARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORARBPROC __glewVertexAttribDivisorARB; + +GLEW_FUN_EXPORT PFNGLGETINTERNALFORMATIVPROC __glewGetInternalformativ; + +GLEW_FUN_EXPORT PFNGLGETINTERNALFORMATI64VPROC __glewGetInternalformati64v; + +GLEW_FUN_EXPORT PFNGLINVALIDATEBUFFERDATAPROC __glewInvalidateBufferData; +GLEW_FUN_EXPORT PFNGLINVALIDATEBUFFERSUBDATAPROC __glewInvalidateBufferSubData; +GLEW_FUN_EXPORT PFNGLINVALIDATEFRAMEBUFFERPROC __glewInvalidateFramebuffer; +GLEW_FUN_EXPORT PFNGLINVALIDATESUBFRAMEBUFFERPROC __glewInvalidateSubFramebuffer; +GLEW_FUN_EXPORT PFNGLINVALIDATETEXIMAGEPROC __glewInvalidateTexImage; +GLEW_FUN_EXPORT PFNGLINVALIDATETEXSUBIMAGEPROC __glewInvalidateTexSubImage; + +GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEPROC __glewFlushMappedBufferRange; +GLEW_FUN_EXPORT PFNGLMAPBUFFERRANGEPROC __glewMapBufferRange; + +GLEW_FUN_EXPORT PFNGLCURRENTPALETTEMATRIXARBPROC __glewCurrentPaletteMatrixARB; +GLEW_FUN_EXPORT PFNGLMATRIXINDEXPOINTERARBPROC __glewMatrixIndexPointerARB; +GLEW_FUN_EXPORT PFNGLMATRIXINDEXUBVARBPROC __glewMatrixIndexubvARB; +GLEW_FUN_EXPORT PFNGLMATRIXINDEXUIVARBPROC __glewMatrixIndexuivARB; +GLEW_FUN_EXPORT PFNGLMATRIXINDEXUSVARBPROC __glewMatrixIndexusvARB; + +GLEW_FUN_EXPORT PFNGLBINDBUFFERSBASEPROC __glewBindBuffersBase; +GLEW_FUN_EXPORT PFNGLBINDBUFFERSRANGEPROC __glewBindBuffersRange; +GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTURESPROC __glewBindImageTextures; +GLEW_FUN_EXPORT PFNGLBINDSAMPLERSPROC __glewBindSamplers; +GLEW_FUN_EXPORT PFNGLBINDTEXTURESPROC __glewBindTextures; +GLEW_FUN_EXPORT PFNGLBINDVERTEXBUFFERSPROC __glewBindVertexBuffers; + +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTPROC __glewMultiDrawArraysIndirect; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTPROC __glewMultiDrawElementsIndirect; + +GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEARBPROC __glewSampleCoverageARB; + +GLEW_FUN_EXPORT PFNGLACTIVETEXTUREARBPROC __glewActiveTextureARB; +GLEW_FUN_EXPORT PFNGLCLIENTACTIVETEXTUREARBPROC __glewClientActiveTextureARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DARBPROC __glewMultiTexCoord1dARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DVARBPROC __glewMultiTexCoord1dvARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FARBPROC __glewMultiTexCoord1fARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FVARBPROC __glewMultiTexCoord1fvARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IARBPROC __glewMultiTexCoord1iARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IVARBPROC __glewMultiTexCoord1ivARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SARBPROC __glewMultiTexCoord1sARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SVARBPROC __glewMultiTexCoord1svARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DARBPROC __glewMultiTexCoord2dARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DVARBPROC __glewMultiTexCoord2dvARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FARBPROC __glewMultiTexCoord2fARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FVARBPROC __glewMultiTexCoord2fvARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IARBPROC __glewMultiTexCoord2iARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IVARBPROC __glewMultiTexCoord2ivARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SARBPROC __glewMultiTexCoord2sARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SVARBPROC __glewMultiTexCoord2svARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DARBPROC __glewMultiTexCoord3dARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DVARBPROC __glewMultiTexCoord3dvARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FARBPROC __glewMultiTexCoord3fARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FVARBPROC __glewMultiTexCoord3fvARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IARBPROC __glewMultiTexCoord3iARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IVARBPROC __glewMultiTexCoord3ivARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SARBPROC __glewMultiTexCoord3sARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SVARBPROC __glewMultiTexCoord3svARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DARBPROC __glewMultiTexCoord4dARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DVARBPROC __glewMultiTexCoord4dvARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FARBPROC __glewMultiTexCoord4fARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FVARBPROC __glewMultiTexCoord4fvARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IARBPROC __glewMultiTexCoord4iARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IVARBPROC __glewMultiTexCoord4ivARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SARBPROC __glewMultiTexCoord4sARB; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SVARBPROC __glewMultiTexCoord4svARB; + +GLEW_FUN_EXPORT PFNGLBEGINQUERYARBPROC __glewBeginQueryARB; +GLEW_FUN_EXPORT PFNGLDELETEQUERIESARBPROC __glewDeleteQueriesARB; +GLEW_FUN_EXPORT PFNGLENDQUERYARBPROC __glewEndQueryARB; +GLEW_FUN_EXPORT PFNGLGENQUERIESARBPROC __glewGenQueriesARB; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVARBPROC __glewGetQueryObjectivARB; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVARBPROC __glewGetQueryObjectuivARB; +GLEW_FUN_EXPORT PFNGLGETQUERYIVARBPROC __glewGetQueryivARB; +GLEW_FUN_EXPORT PFNGLISQUERYARBPROC __glewIsQueryARB; + +GLEW_FUN_EXPORT PFNGLMAXSHADERCOMPILERTHREADSARBPROC __glewMaxShaderCompilerThreadsARB; + +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFARBPROC __glewPointParameterfARB; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVARBPROC __glewPointParameterfvARB; + +GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETCLAMPPROC __glewPolygonOffsetClamp; + +GLEW_FUN_EXPORT PFNGLGETPROGRAMINTERFACEIVPROC __glewGetProgramInterfaceiv; +GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCEINDEXPROC __glewGetProgramResourceIndex; +GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCELOCATIONPROC __glewGetProgramResourceLocation; +GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC __glewGetProgramResourceLocationIndex; +GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCENAMEPROC __glewGetProgramResourceName; +GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCEIVPROC __glewGetProgramResourceiv; + +GLEW_FUN_EXPORT PFNGLPROVOKINGVERTEXPROC __glewProvokingVertex; + +GLEW_FUN_EXPORT PFNGLGETGRAPHICSRESETSTATUSARBPROC __glewGetGraphicsResetStatusARB; +GLEW_FUN_EXPORT PFNGLGETNCOLORTABLEARBPROC __glewGetnColorTableARB; +GLEW_FUN_EXPORT PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC __glewGetnCompressedTexImageARB; +GLEW_FUN_EXPORT PFNGLGETNCONVOLUTIONFILTERARBPROC __glewGetnConvolutionFilterARB; +GLEW_FUN_EXPORT PFNGLGETNHISTOGRAMARBPROC __glewGetnHistogramARB; +GLEW_FUN_EXPORT PFNGLGETNMAPDVARBPROC __glewGetnMapdvARB; +GLEW_FUN_EXPORT PFNGLGETNMAPFVARBPROC __glewGetnMapfvARB; +GLEW_FUN_EXPORT PFNGLGETNMAPIVARBPROC __glewGetnMapivARB; +GLEW_FUN_EXPORT PFNGLGETNMINMAXARBPROC __glewGetnMinmaxARB; +GLEW_FUN_EXPORT PFNGLGETNPIXELMAPFVARBPROC __glewGetnPixelMapfvARB; +GLEW_FUN_EXPORT PFNGLGETNPIXELMAPUIVARBPROC __glewGetnPixelMapuivARB; +GLEW_FUN_EXPORT PFNGLGETNPIXELMAPUSVARBPROC __glewGetnPixelMapusvARB; +GLEW_FUN_EXPORT PFNGLGETNPOLYGONSTIPPLEARBPROC __glewGetnPolygonStippleARB; +GLEW_FUN_EXPORT PFNGLGETNSEPARABLEFILTERARBPROC __glewGetnSeparableFilterARB; +GLEW_FUN_EXPORT PFNGLGETNTEXIMAGEARBPROC __glewGetnTexImageARB; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMDVARBPROC __glewGetnUniformdvARB; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMFVARBPROC __glewGetnUniformfvARB; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMIVARBPROC __glewGetnUniformivARB; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMUIVARBPROC __glewGetnUniformuivARB; +GLEW_FUN_EXPORT PFNGLREADNPIXELSARBPROC __glewReadnPixelsARB; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERSAMPLELOCATIONSFVARBPROC __glewFramebufferSampleLocationsfvARB; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVARBPROC __glewNamedFramebufferSampleLocationsfvARB; + +GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGARBPROC __glewMinSampleShadingARB; + +GLEW_FUN_EXPORT PFNGLBINDSAMPLERPROC __glewBindSampler; +GLEW_FUN_EXPORT PFNGLDELETESAMPLERSPROC __glewDeleteSamplers; +GLEW_FUN_EXPORT PFNGLGENSAMPLERSPROC __glewGenSamplers; +GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIIVPROC __glewGetSamplerParameterIiv; +GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIUIVPROC __glewGetSamplerParameterIuiv; +GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERFVPROC __glewGetSamplerParameterfv; +GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIVPROC __glewGetSamplerParameteriv; +GLEW_FUN_EXPORT PFNGLISSAMPLERPROC __glewIsSampler; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIIVPROC __glewSamplerParameterIiv; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIUIVPROC __glewSamplerParameterIuiv; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERFPROC __glewSamplerParameterf; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERFVPROC __glewSamplerParameterfv; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIPROC __glewSamplerParameteri; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIVPROC __glewSamplerParameteriv; + +GLEW_FUN_EXPORT PFNGLACTIVESHADERPROGRAMPROC __glewActiveShaderProgram; +GLEW_FUN_EXPORT PFNGLBINDPROGRAMPIPELINEPROC __glewBindProgramPipeline; +GLEW_FUN_EXPORT PFNGLCREATESHADERPROGRAMVPROC __glewCreateShaderProgramv; +GLEW_FUN_EXPORT PFNGLDELETEPROGRAMPIPELINESPROC __glewDeleteProgramPipelines; +GLEW_FUN_EXPORT PFNGLGENPROGRAMPIPELINESPROC __glewGenProgramPipelines; +GLEW_FUN_EXPORT PFNGLGETPROGRAMPIPELINEINFOLOGPROC __glewGetProgramPipelineInfoLog; +GLEW_FUN_EXPORT PFNGLGETPROGRAMPIPELINEIVPROC __glewGetProgramPipelineiv; +GLEW_FUN_EXPORT PFNGLISPROGRAMPIPELINEPROC __glewIsProgramPipeline; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1DPROC __glewProgramUniform1d; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1DVPROC __glewProgramUniform1dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FPROC __glewProgramUniform1f; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FVPROC __glewProgramUniform1fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IPROC __glewProgramUniform1i; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IVPROC __glewProgramUniform1iv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIPROC __glewProgramUniform1ui; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIVPROC __glewProgramUniform1uiv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2DPROC __glewProgramUniform2d; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2DVPROC __glewProgramUniform2dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FPROC __glewProgramUniform2f; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FVPROC __glewProgramUniform2fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IPROC __glewProgramUniform2i; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IVPROC __glewProgramUniform2iv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIPROC __glewProgramUniform2ui; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIVPROC __glewProgramUniform2uiv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3DPROC __glewProgramUniform3d; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3DVPROC __glewProgramUniform3dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FPROC __glewProgramUniform3f; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FVPROC __glewProgramUniform3fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IPROC __glewProgramUniform3i; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IVPROC __glewProgramUniform3iv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIPROC __glewProgramUniform3ui; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIVPROC __glewProgramUniform3uiv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4DPROC __glewProgramUniform4d; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4DVPROC __glewProgramUniform4dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FPROC __glewProgramUniform4f; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FVPROC __glewProgramUniform4fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IPROC __glewProgramUniform4i; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IVPROC __glewProgramUniform4iv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIPROC __glewProgramUniform4ui; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIVPROC __glewProgramUniform4uiv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2DVPROC __glewProgramUniformMatrix2dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2FVPROC __glewProgramUniformMatrix2fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC __glewProgramUniformMatrix2x3dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC __glewProgramUniformMatrix2x3fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC __glewProgramUniformMatrix2x4dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC __glewProgramUniformMatrix2x4fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3DVPROC __glewProgramUniformMatrix3dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3FVPROC __glewProgramUniformMatrix3fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC __glewProgramUniformMatrix3x2dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC __glewProgramUniformMatrix3x2fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC __glewProgramUniformMatrix3x4dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC __glewProgramUniformMatrix3x4fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4DVPROC __glewProgramUniformMatrix4dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4FVPROC __glewProgramUniformMatrix4fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC __glewProgramUniformMatrix4x2dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC __glewProgramUniformMatrix4x2fv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC __glewProgramUniformMatrix4x3dv; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC __glewProgramUniformMatrix4x3fv; +GLEW_FUN_EXPORT PFNGLUSEPROGRAMSTAGESPROC __glewUseProgramStages; +GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMPIPELINEPROC __glewValidateProgramPipeline; + +GLEW_FUN_EXPORT PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC __glewGetActiveAtomicCounterBufferiv; + +GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTUREPROC __glewBindImageTexture; +GLEW_FUN_EXPORT PFNGLMEMORYBARRIERPROC __glewMemoryBarrier; + +GLEW_FUN_EXPORT PFNGLATTACHOBJECTARBPROC __glewAttachObjectARB; +GLEW_FUN_EXPORT PFNGLCOMPILESHADERARBPROC __glewCompileShaderARB; +GLEW_FUN_EXPORT PFNGLCREATEPROGRAMOBJECTARBPROC __glewCreateProgramObjectARB; +GLEW_FUN_EXPORT PFNGLCREATESHADEROBJECTARBPROC __glewCreateShaderObjectARB; +GLEW_FUN_EXPORT PFNGLDELETEOBJECTARBPROC __glewDeleteObjectARB; +GLEW_FUN_EXPORT PFNGLDETACHOBJECTARBPROC __glewDetachObjectARB; +GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMARBPROC __glewGetActiveUniformARB; +GLEW_FUN_EXPORT PFNGLGETATTACHEDOBJECTSARBPROC __glewGetAttachedObjectsARB; +GLEW_FUN_EXPORT PFNGLGETHANDLEARBPROC __glewGetHandleARB; +GLEW_FUN_EXPORT PFNGLGETINFOLOGARBPROC __glewGetInfoLogARB; +GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERFVARBPROC __glewGetObjectParameterfvARB; +GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERIVARBPROC __glewGetObjectParameterivARB; +GLEW_FUN_EXPORT PFNGLGETSHADERSOURCEARBPROC __glewGetShaderSourceARB; +GLEW_FUN_EXPORT PFNGLGETUNIFORMLOCATIONARBPROC __glewGetUniformLocationARB; +GLEW_FUN_EXPORT PFNGLGETUNIFORMFVARBPROC __glewGetUniformfvARB; +GLEW_FUN_EXPORT PFNGLGETUNIFORMIVARBPROC __glewGetUniformivARB; +GLEW_FUN_EXPORT PFNGLLINKPROGRAMARBPROC __glewLinkProgramARB; +GLEW_FUN_EXPORT PFNGLSHADERSOURCEARBPROC __glewShaderSourceARB; +GLEW_FUN_EXPORT PFNGLUNIFORM1FARBPROC __glewUniform1fARB; +GLEW_FUN_EXPORT PFNGLUNIFORM1FVARBPROC __glewUniform1fvARB; +GLEW_FUN_EXPORT PFNGLUNIFORM1IARBPROC __glewUniform1iARB; +GLEW_FUN_EXPORT PFNGLUNIFORM1IVARBPROC __glewUniform1ivARB; +GLEW_FUN_EXPORT PFNGLUNIFORM2FARBPROC __glewUniform2fARB; +GLEW_FUN_EXPORT PFNGLUNIFORM2FVARBPROC __glewUniform2fvARB; +GLEW_FUN_EXPORT PFNGLUNIFORM2IARBPROC __glewUniform2iARB; +GLEW_FUN_EXPORT PFNGLUNIFORM2IVARBPROC __glewUniform2ivARB; +GLEW_FUN_EXPORT PFNGLUNIFORM3FARBPROC __glewUniform3fARB; +GLEW_FUN_EXPORT PFNGLUNIFORM3FVARBPROC __glewUniform3fvARB; +GLEW_FUN_EXPORT PFNGLUNIFORM3IARBPROC __glewUniform3iARB; +GLEW_FUN_EXPORT PFNGLUNIFORM3IVARBPROC __glewUniform3ivARB; +GLEW_FUN_EXPORT PFNGLUNIFORM4FARBPROC __glewUniform4fARB; +GLEW_FUN_EXPORT PFNGLUNIFORM4FVARBPROC __glewUniform4fvARB; +GLEW_FUN_EXPORT PFNGLUNIFORM4IARBPROC __glewUniform4iARB; +GLEW_FUN_EXPORT PFNGLUNIFORM4IVARBPROC __glewUniform4ivARB; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2FVARBPROC __glewUniformMatrix2fvARB; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3FVARBPROC __glewUniformMatrix3fvARB; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4FVARBPROC __glewUniformMatrix4fvARB; +GLEW_FUN_EXPORT PFNGLUSEPROGRAMOBJECTARBPROC __glewUseProgramObjectARB; +GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMARBPROC __glewValidateProgramARB; + +GLEW_FUN_EXPORT PFNGLSHADERSTORAGEBLOCKBINDINGPROC __glewShaderStorageBlockBinding; + +GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINENAMEPROC __glewGetActiveSubroutineName; +GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC __glewGetActiveSubroutineUniformName; +GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC __glewGetActiveSubroutineUniformiv; +GLEW_FUN_EXPORT PFNGLGETPROGRAMSTAGEIVPROC __glewGetProgramStageiv; +GLEW_FUN_EXPORT PFNGLGETSUBROUTINEINDEXPROC __glewGetSubroutineIndex; +GLEW_FUN_EXPORT PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC __glewGetSubroutineUniformLocation; +GLEW_FUN_EXPORT PFNGLGETUNIFORMSUBROUTINEUIVPROC __glewGetUniformSubroutineuiv; +GLEW_FUN_EXPORT PFNGLUNIFORMSUBROUTINESUIVPROC __glewUniformSubroutinesuiv; + +GLEW_FUN_EXPORT PFNGLCOMPILESHADERINCLUDEARBPROC __glewCompileShaderIncludeARB; +GLEW_FUN_EXPORT PFNGLDELETENAMEDSTRINGARBPROC __glewDeleteNamedStringARB; +GLEW_FUN_EXPORT PFNGLGETNAMEDSTRINGARBPROC __glewGetNamedStringARB; +GLEW_FUN_EXPORT PFNGLGETNAMEDSTRINGIVARBPROC __glewGetNamedStringivARB; +GLEW_FUN_EXPORT PFNGLISNAMEDSTRINGARBPROC __glewIsNamedStringARB; +GLEW_FUN_EXPORT PFNGLNAMEDSTRINGARBPROC __glewNamedStringARB; + +GLEW_FUN_EXPORT PFNGLBUFFERPAGECOMMITMENTARBPROC __glewBufferPageCommitmentARB; + +GLEW_FUN_EXPORT PFNGLTEXPAGECOMMITMENTARBPROC __glewTexPageCommitmentARB; + +GLEW_FUN_EXPORT PFNGLCLIENTWAITSYNCPROC __glewClientWaitSync; +GLEW_FUN_EXPORT PFNGLDELETESYNCPROC __glewDeleteSync; +GLEW_FUN_EXPORT PFNGLFENCESYNCPROC __glewFenceSync; +GLEW_FUN_EXPORT PFNGLGETINTEGER64VPROC __glewGetInteger64v; +GLEW_FUN_EXPORT PFNGLGETSYNCIVPROC __glewGetSynciv; +GLEW_FUN_EXPORT PFNGLISSYNCPROC __glewIsSync; +GLEW_FUN_EXPORT PFNGLWAITSYNCPROC __glewWaitSync; + +GLEW_FUN_EXPORT PFNGLPATCHPARAMETERFVPROC __glewPatchParameterfv; +GLEW_FUN_EXPORT PFNGLPATCHPARAMETERIPROC __glewPatchParameteri; + +GLEW_FUN_EXPORT PFNGLTEXTUREBARRIERPROC __glewTextureBarrier; + +GLEW_FUN_EXPORT PFNGLTEXBUFFERARBPROC __glewTexBufferARB; + +GLEW_FUN_EXPORT PFNGLTEXBUFFERRANGEPROC __glewTexBufferRange; +GLEW_FUN_EXPORT PFNGLTEXTUREBUFFERRANGEEXTPROC __glewTextureBufferRangeEXT; + +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE1DARBPROC __glewCompressedTexImage1DARB; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE2DARBPROC __glewCompressedTexImage2DARB; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DARBPROC __glewCompressedTexImage3DARB; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC __glewCompressedTexSubImage1DARB; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC __glewCompressedTexSubImage2DARB; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC __glewCompressedTexSubImage3DARB; +GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXIMAGEARBPROC __glewGetCompressedTexImageARB; + +GLEW_FUN_EXPORT PFNGLGETMULTISAMPLEFVPROC __glewGetMultisamplefv; +GLEW_FUN_EXPORT PFNGLSAMPLEMASKIPROC __glewSampleMaski; +GLEW_FUN_EXPORT PFNGLTEXIMAGE2DMULTISAMPLEPROC __glewTexImage2DMultisample; +GLEW_FUN_EXPORT PFNGLTEXIMAGE3DMULTISAMPLEPROC __glewTexImage3DMultisample; + +GLEW_FUN_EXPORT PFNGLTEXSTORAGE1DPROC __glewTexStorage1D; +GLEW_FUN_EXPORT PFNGLTEXSTORAGE2DPROC __glewTexStorage2D; +GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DPROC __glewTexStorage3D; + +GLEW_FUN_EXPORT PFNGLTEXSTORAGE2DMULTISAMPLEPROC __glewTexStorage2DMultisample; +GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DMULTISAMPLEPROC __glewTexStorage3DMultisample; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DMULTISAMPLEEXTPROC __glewTextureStorage2DMultisampleEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DMULTISAMPLEEXTPROC __glewTextureStorage3DMultisampleEXT; + +GLEW_FUN_EXPORT PFNGLTEXTUREVIEWPROC __glewTextureView; + +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VPROC __glewGetQueryObjecti64v; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VPROC __glewGetQueryObjectui64v; +GLEW_FUN_EXPORT PFNGLQUERYCOUNTERPROC __glewQueryCounter; + +GLEW_FUN_EXPORT PFNGLBINDTRANSFORMFEEDBACKPROC __glewBindTransformFeedback; +GLEW_FUN_EXPORT PFNGLDELETETRANSFORMFEEDBACKSPROC __glewDeleteTransformFeedbacks; +GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKPROC __glewDrawTransformFeedback; +GLEW_FUN_EXPORT PFNGLGENTRANSFORMFEEDBACKSPROC __glewGenTransformFeedbacks; +GLEW_FUN_EXPORT PFNGLISTRANSFORMFEEDBACKPROC __glewIsTransformFeedback; +GLEW_FUN_EXPORT PFNGLPAUSETRANSFORMFEEDBACKPROC __glewPauseTransformFeedback; +GLEW_FUN_EXPORT PFNGLRESUMETRANSFORMFEEDBACKPROC __glewResumeTransformFeedback; + +GLEW_FUN_EXPORT PFNGLBEGINQUERYINDEXEDPROC __glewBeginQueryIndexed; +GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC __glewDrawTransformFeedbackStream; +GLEW_FUN_EXPORT PFNGLENDQUERYINDEXEDPROC __glewEndQueryIndexed; +GLEW_FUN_EXPORT PFNGLGETQUERYINDEXEDIVPROC __glewGetQueryIndexediv; + +GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC __glewDrawTransformFeedbackInstanced; +GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC __glewDrawTransformFeedbackStreamInstanced; + +GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXDARBPROC __glewLoadTransposeMatrixdARB; +GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXFARBPROC __glewLoadTransposeMatrixfARB; +GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXDARBPROC __glewMultTransposeMatrixdARB; +GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXFARBPROC __glewMultTransposeMatrixfARB; + +GLEW_FUN_EXPORT PFNGLBINDBUFFERBASEPROC __glewBindBufferBase; +GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGEPROC __glewBindBufferRange; +GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC __glewGetActiveUniformBlockName; +GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMBLOCKIVPROC __glewGetActiveUniformBlockiv; +GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMNAMEPROC __glewGetActiveUniformName; +GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMSIVPROC __glewGetActiveUniformsiv; +GLEW_FUN_EXPORT PFNGLGETINTEGERI_VPROC __glewGetIntegeri_v; +GLEW_FUN_EXPORT PFNGLGETUNIFORMBLOCKINDEXPROC __glewGetUniformBlockIndex; +GLEW_FUN_EXPORT PFNGLGETUNIFORMINDICESPROC __glewGetUniformIndices; +GLEW_FUN_EXPORT PFNGLUNIFORMBLOCKBINDINGPROC __glewUniformBlockBinding; + +GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYPROC __glewBindVertexArray; +GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSPROC __glewDeleteVertexArrays; +GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSPROC __glewGenVertexArrays; +GLEW_FUN_EXPORT PFNGLISVERTEXARRAYPROC __glewIsVertexArray; + +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLDVPROC __glewGetVertexAttribLdv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DPROC __glewVertexAttribL1d; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DVPROC __glewVertexAttribL1dv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DPROC __glewVertexAttribL2d; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DVPROC __glewVertexAttribL2dv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DPROC __glewVertexAttribL3d; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DVPROC __glewVertexAttribL3dv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DPROC __glewVertexAttribL4d; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DVPROC __glewVertexAttribL4dv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLPOINTERPROC __glewVertexAttribLPointer; + +GLEW_FUN_EXPORT PFNGLBINDVERTEXBUFFERPROC __glewBindVertexBuffer; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYBINDVERTEXBUFFEREXTPROC __glewVertexArrayBindVertexBufferEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBBINDINGEXTPROC __glewVertexArrayVertexAttribBindingEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBFORMATEXTPROC __glewVertexArrayVertexAttribFormatEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBIFORMATEXTPROC __glewVertexArrayVertexAttribIFormatEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBLFORMATEXTPROC __glewVertexArrayVertexAttribLFormatEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXBINDINGDIVISOREXTPROC __glewVertexArrayVertexBindingDivisorEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBBINDINGPROC __glewVertexAttribBinding; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBFORMATPROC __glewVertexAttribFormat; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIFORMATPROC __glewVertexAttribIFormat; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLFORMATPROC __glewVertexAttribLFormat; +GLEW_FUN_EXPORT PFNGLVERTEXBINDINGDIVISORPROC __glewVertexBindingDivisor; + +GLEW_FUN_EXPORT PFNGLVERTEXBLENDARBPROC __glewVertexBlendARB; +GLEW_FUN_EXPORT PFNGLWEIGHTPOINTERARBPROC __glewWeightPointerARB; +GLEW_FUN_EXPORT PFNGLWEIGHTBVARBPROC __glewWeightbvARB; +GLEW_FUN_EXPORT PFNGLWEIGHTDVARBPROC __glewWeightdvARB; +GLEW_FUN_EXPORT PFNGLWEIGHTFVARBPROC __glewWeightfvARB; +GLEW_FUN_EXPORT PFNGLWEIGHTIVARBPROC __glewWeightivARB; +GLEW_FUN_EXPORT PFNGLWEIGHTSVARBPROC __glewWeightsvARB; +GLEW_FUN_EXPORT PFNGLWEIGHTUBVARBPROC __glewWeightubvARB; +GLEW_FUN_EXPORT PFNGLWEIGHTUIVARBPROC __glewWeightuivARB; +GLEW_FUN_EXPORT PFNGLWEIGHTUSVARBPROC __glewWeightusvARB; + +GLEW_FUN_EXPORT PFNGLBINDBUFFERARBPROC __glewBindBufferARB; +GLEW_FUN_EXPORT PFNGLBUFFERDATAARBPROC __glewBufferDataARB; +GLEW_FUN_EXPORT PFNGLBUFFERSUBDATAARBPROC __glewBufferSubDataARB; +GLEW_FUN_EXPORT PFNGLDELETEBUFFERSARBPROC __glewDeleteBuffersARB; +GLEW_FUN_EXPORT PFNGLGENBUFFERSARBPROC __glewGenBuffersARB; +GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERIVARBPROC __glewGetBufferParameterivARB; +GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVARBPROC __glewGetBufferPointervARB; +GLEW_FUN_EXPORT PFNGLGETBUFFERSUBDATAARBPROC __glewGetBufferSubDataARB; +GLEW_FUN_EXPORT PFNGLISBUFFERARBPROC __glewIsBufferARB; +GLEW_FUN_EXPORT PFNGLMAPBUFFERARBPROC __glewMapBufferARB; +GLEW_FUN_EXPORT PFNGLUNMAPBUFFERARBPROC __glewUnmapBufferARB; + +GLEW_FUN_EXPORT PFNGLBINDPROGRAMARBPROC __glewBindProgramARB; +GLEW_FUN_EXPORT PFNGLDELETEPROGRAMSARBPROC __glewDeleteProgramsARB; +GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBARRAYARBPROC __glewDisableVertexAttribArrayARB; +GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBARRAYARBPROC __glewEnableVertexAttribArrayARB; +GLEW_FUN_EXPORT PFNGLGENPROGRAMSARBPROC __glewGenProgramsARB; +GLEW_FUN_EXPORT PFNGLGETPROGRAMENVPARAMETERDVARBPROC __glewGetProgramEnvParameterdvARB; +GLEW_FUN_EXPORT PFNGLGETPROGRAMENVPARAMETERFVARBPROC __glewGetProgramEnvParameterfvARB; +GLEW_FUN_EXPORT PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC __glewGetProgramLocalParameterdvARB; +GLEW_FUN_EXPORT PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC __glewGetProgramLocalParameterfvARB; +GLEW_FUN_EXPORT PFNGLGETPROGRAMSTRINGARBPROC __glewGetProgramStringARB; +GLEW_FUN_EXPORT PFNGLGETPROGRAMIVARBPROC __glewGetProgramivARB; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVARBPROC __glewGetVertexAttribPointervARB; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVARBPROC __glewGetVertexAttribdvARB; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVARBPROC __glewGetVertexAttribfvARB; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVARBPROC __glewGetVertexAttribivARB; +GLEW_FUN_EXPORT PFNGLISPROGRAMARBPROC __glewIsProgramARB; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4DARBPROC __glewProgramEnvParameter4dARB; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4DVARBPROC __glewProgramEnvParameter4dvARB; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4FARBPROC __glewProgramEnvParameter4fARB; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4FVARBPROC __glewProgramEnvParameter4fvARB; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4DARBPROC __glewProgramLocalParameter4dARB; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4DVARBPROC __glewProgramLocalParameter4dvARB; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4FARBPROC __glewProgramLocalParameter4fARB; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4FVARBPROC __glewProgramLocalParameter4fvARB; +GLEW_FUN_EXPORT PFNGLPROGRAMSTRINGARBPROC __glewProgramStringARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DARBPROC __glewVertexAttrib1dARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVARBPROC __glewVertexAttrib1dvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FARBPROC __glewVertexAttrib1fARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVARBPROC __glewVertexAttrib1fvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SARBPROC __glewVertexAttrib1sARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVARBPROC __glewVertexAttrib1svARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DARBPROC __glewVertexAttrib2dARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVARBPROC __glewVertexAttrib2dvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FARBPROC __glewVertexAttrib2fARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVARBPROC __glewVertexAttrib2fvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SARBPROC __glewVertexAttrib2sARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVARBPROC __glewVertexAttrib2svARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DARBPROC __glewVertexAttrib3dARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVARBPROC __glewVertexAttrib3dvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FARBPROC __glewVertexAttrib3fARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVARBPROC __glewVertexAttrib3fvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SARBPROC __glewVertexAttrib3sARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVARBPROC __glewVertexAttrib3svARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NBVARBPROC __glewVertexAttrib4NbvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NIVARBPROC __glewVertexAttrib4NivARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NSVARBPROC __glewVertexAttrib4NsvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBARBPROC __glewVertexAttrib4NubARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBVARBPROC __glewVertexAttrib4NubvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUIVARBPROC __glewVertexAttrib4NuivARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUSVARBPROC __glewVertexAttrib4NusvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4BVARBPROC __glewVertexAttrib4bvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DARBPROC __glewVertexAttrib4dARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVARBPROC __glewVertexAttrib4dvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FARBPROC __glewVertexAttrib4fARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVARBPROC __glewVertexAttrib4fvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4IVARBPROC __glewVertexAttrib4ivARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SARBPROC __glewVertexAttrib4sARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVARBPROC __glewVertexAttrib4svARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVARBPROC __glewVertexAttrib4ubvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UIVARBPROC __glewVertexAttrib4uivARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4USVARBPROC __glewVertexAttrib4usvARB; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERARBPROC __glewVertexAttribPointerARB; + +GLEW_FUN_EXPORT PFNGLBINDATTRIBLOCATIONARBPROC __glewBindAttribLocationARB; +GLEW_FUN_EXPORT PFNGLGETACTIVEATTRIBARBPROC __glewGetActiveAttribARB; +GLEW_FUN_EXPORT PFNGLGETATTRIBLOCATIONARBPROC __glewGetAttribLocationARB; + +GLEW_FUN_EXPORT PFNGLCOLORP3UIPROC __glewColorP3ui; +GLEW_FUN_EXPORT PFNGLCOLORP3UIVPROC __glewColorP3uiv; +GLEW_FUN_EXPORT PFNGLCOLORP4UIPROC __glewColorP4ui; +GLEW_FUN_EXPORT PFNGLCOLORP4UIVPROC __glewColorP4uiv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP1UIPROC __glewMultiTexCoordP1ui; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP1UIVPROC __glewMultiTexCoordP1uiv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP2UIPROC __glewMultiTexCoordP2ui; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP2UIVPROC __glewMultiTexCoordP2uiv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP3UIPROC __glewMultiTexCoordP3ui; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP3UIVPROC __glewMultiTexCoordP3uiv; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP4UIPROC __glewMultiTexCoordP4ui; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP4UIVPROC __glewMultiTexCoordP4uiv; +GLEW_FUN_EXPORT PFNGLNORMALP3UIPROC __glewNormalP3ui; +GLEW_FUN_EXPORT PFNGLNORMALP3UIVPROC __glewNormalP3uiv; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLORP3UIPROC __glewSecondaryColorP3ui; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLORP3UIVPROC __glewSecondaryColorP3uiv; +GLEW_FUN_EXPORT PFNGLTEXCOORDP1UIPROC __glewTexCoordP1ui; +GLEW_FUN_EXPORT PFNGLTEXCOORDP1UIVPROC __glewTexCoordP1uiv; +GLEW_FUN_EXPORT PFNGLTEXCOORDP2UIPROC __glewTexCoordP2ui; +GLEW_FUN_EXPORT PFNGLTEXCOORDP2UIVPROC __glewTexCoordP2uiv; +GLEW_FUN_EXPORT PFNGLTEXCOORDP3UIPROC __glewTexCoordP3ui; +GLEW_FUN_EXPORT PFNGLTEXCOORDP3UIVPROC __glewTexCoordP3uiv; +GLEW_FUN_EXPORT PFNGLTEXCOORDP4UIPROC __glewTexCoordP4ui; +GLEW_FUN_EXPORT PFNGLTEXCOORDP4UIVPROC __glewTexCoordP4uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP1UIPROC __glewVertexAttribP1ui; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP1UIVPROC __glewVertexAttribP1uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP2UIPROC __glewVertexAttribP2ui; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP2UIVPROC __glewVertexAttribP2uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP3UIPROC __glewVertexAttribP3ui; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP3UIVPROC __glewVertexAttribP3uiv; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP4UIPROC __glewVertexAttribP4ui; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP4UIVPROC __glewVertexAttribP4uiv; +GLEW_FUN_EXPORT PFNGLVERTEXP2UIPROC __glewVertexP2ui; +GLEW_FUN_EXPORT PFNGLVERTEXP2UIVPROC __glewVertexP2uiv; +GLEW_FUN_EXPORT PFNGLVERTEXP3UIPROC __glewVertexP3ui; +GLEW_FUN_EXPORT PFNGLVERTEXP3UIVPROC __glewVertexP3uiv; +GLEW_FUN_EXPORT PFNGLVERTEXP4UIPROC __glewVertexP4ui; +GLEW_FUN_EXPORT PFNGLVERTEXP4UIVPROC __glewVertexP4uiv; + +GLEW_FUN_EXPORT PFNGLDEPTHRANGEARRAYVPROC __glewDepthRangeArrayv; +GLEW_FUN_EXPORT PFNGLDEPTHRANGEINDEXEDPROC __glewDepthRangeIndexed; +GLEW_FUN_EXPORT PFNGLGETDOUBLEI_VPROC __glewGetDoublei_v; +GLEW_FUN_EXPORT PFNGLGETFLOATI_VPROC __glewGetFloati_v; +GLEW_FUN_EXPORT PFNGLSCISSORARRAYVPROC __glewScissorArrayv; +GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDPROC __glewScissorIndexed; +GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDVPROC __glewScissorIndexedv; +GLEW_FUN_EXPORT PFNGLVIEWPORTARRAYVPROC __glewViewportArrayv; +GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFPROC __glewViewportIndexedf; +GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFVPROC __glewViewportIndexedfv; + +GLEW_FUN_EXPORT PFNGLWINDOWPOS2DARBPROC __glewWindowPos2dARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVARBPROC __glewWindowPos2dvARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2FARBPROC __glewWindowPos2fARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVARBPROC __glewWindowPos2fvARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2IARBPROC __glewWindowPos2iARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVARBPROC __glewWindowPos2ivARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2SARBPROC __glewWindowPos2sARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVARBPROC __glewWindowPos2svARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3DARBPROC __glewWindowPos3dARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVARBPROC __glewWindowPos3dvARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3FARBPROC __glewWindowPos3fARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVARBPROC __glewWindowPos3fvARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3IARBPROC __glewWindowPos3iARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVARBPROC __glewWindowPos3ivARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3SARBPROC __glewWindowPos3sARB; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVARBPROC __glewWindowPos3svARB; + +GLEW_FUN_EXPORT PFNGLDRAWBUFFERSATIPROC __glewDrawBuffersATI; + +GLEW_FUN_EXPORT PFNGLDRAWELEMENTARRAYATIPROC __glewDrawElementArrayATI; +GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTARRAYATIPROC __glewDrawRangeElementArrayATI; +GLEW_FUN_EXPORT PFNGLELEMENTPOINTERATIPROC __glewElementPointerATI; + +GLEW_FUN_EXPORT PFNGLGETTEXBUMPPARAMETERFVATIPROC __glewGetTexBumpParameterfvATI; +GLEW_FUN_EXPORT PFNGLGETTEXBUMPPARAMETERIVATIPROC __glewGetTexBumpParameterivATI; +GLEW_FUN_EXPORT PFNGLTEXBUMPPARAMETERFVATIPROC __glewTexBumpParameterfvATI; +GLEW_FUN_EXPORT PFNGLTEXBUMPPARAMETERIVATIPROC __glewTexBumpParameterivATI; + +GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP1ATIPROC __glewAlphaFragmentOp1ATI; +GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP2ATIPROC __glewAlphaFragmentOp2ATI; +GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP3ATIPROC __glewAlphaFragmentOp3ATI; +GLEW_FUN_EXPORT PFNGLBEGINFRAGMENTSHADERATIPROC __glewBeginFragmentShaderATI; +GLEW_FUN_EXPORT PFNGLBINDFRAGMENTSHADERATIPROC __glewBindFragmentShaderATI; +GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP1ATIPROC __glewColorFragmentOp1ATI; +GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP2ATIPROC __glewColorFragmentOp2ATI; +GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP3ATIPROC __glewColorFragmentOp3ATI; +GLEW_FUN_EXPORT PFNGLDELETEFRAGMENTSHADERATIPROC __glewDeleteFragmentShaderATI; +GLEW_FUN_EXPORT PFNGLENDFRAGMENTSHADERATIPROC __glewEndFragmentShaderATI; +GLEW_FUN_EXPORT PFNGLGENFRAGMENTSHADERSATIPROC __glewGenFragmentShadersATI; +GLEW_FUN_EXPORT PFNGLPASSTEXCOORDATIPROC __glewPassTexCoordATI; +GLEW_FUN_EXPORT PFNGLSAMPLEMAPATIPROC __glewSampleMapATI; +GLEW_FUN_EXPORT PFNGLSETFRAGMENTSHADERCONSTANTATIPROC __glewSetFragmentShaderConstantATI; + +GLEW_FUN_EXPORT PFNGLMAPOBJECTBUFFERATIPROC __glewMapObjectBufferATI; +GLEW_FUN_EXPORT PFNGLUNMAPOBJECTBUFFERATIPROC __glewUnmapObjectBufferATI; + +GLEW_FUN_EXPORT PFNGLPNTRIANGLESFATIPROC __glewPNTrianglesfATI; +GLEW_FUN_EXPORT PFNGLPNTRIANGLESIATIPROC __glewPNTrianglesiATI; + +GLEW_FUN_EXPORT PFNGLSTENCILFUNCSEPARATEATIPROC __glewStencilFuncSeparateATI; +GLEW_FUN_EXPORT PFNGLSTENCILOPSEPARATEATIPROC __glewStencilOpSeparateATI; + +GLEW_FUN_EXPORT PFNGLARRAYOBJECTATIPROC __glewArrayObjectATI; +GLEW_FUN_EXPORT PFNGLFREEOBJECTBUFFERATIPROC __glewFreeObjectBufferATI; +GLEW_FUN_EXPORT PFNGLGETARRAYOBJECTFVATIPROC __glewGetArrayObjectfvATI; +GLEW_FUN_EXPORT PFNGLGETARRAYOBJECTIVATIPROC __glewGetArrayObjectivATI; +GLEW_FUN_EXPORT PFNGLGETOBJECTBUFFERFVATIPROC __glewGetObjectBufferfvATI; +GLEW_FUN_EXPORT PFNGLGETOBJECTBUFFERIVATIPROC __glewGetObjectBufferivATI; +GLEW_FUN_EXPORT PFNGLGETVARIANTARRAYOBJECTFVATIPROC __glewGetVariantArrayObjectfvATI; +GLEW_FUN_EXPORT PFNGLGETVARIANTARRAYOBJECTIVATIPROC __glewGetVariantArrayObjectivATI; +GLEW_FUN_EXPORT PFNGLISOBJECTBUFFERATIPROC __glewIsObjectBufferATI; +GLEW_FUN_EXPORT PFNGLNEWOBJECTBUFFERATIPROC __glewNewObjectBufferATI; +GLEW_FUN_EXPORT PFNGLUPDATEOBJECTBUFFERATIPROC __glewUpdateObjectBufferATI; +GLEW_FUN_EXPORT PFNGLVARIANTARRAYOBJECTATIPROC __glewVariantArrayObjectATI; + +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC __glewGetVertexAttribArrayObjectfvATI; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC __glewGetVertexAttribArrayObjectivATI; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBARRAYOBJECTATIPROC __glewVertexAttribArrayObjectATI; + +GLEW_FUN_EXPORT PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC __glewClientActiveVertexStreamATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3BATIPROC __glewNormalStream3bATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3BVATIPROC __glewNormalStream3bvATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3DATIPROC __glewNormalStream3dATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3DVATIPROC __glewNormalStream3dvATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3FATIPROC __glewNormalStream3fATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3FVATIPROC __glewNormalStream3fvATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3IATIPROC __glewNormalStream3iATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3IVATIPROC __glewNormalStream3ivATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3SATIPROC __glewNormalStream3sATI; +GLEW_FUN_EXPORT PFNGLNORMALSTREAM3SVATIPROC __glewNormalStream3svATI; +GLEW_FUN_EXPORT PFNGLVERTEXBLENDENVFATIPROC __glewVertexBlendEnvfATI; +GLEW_FUN_EXPORT PFNGLVERTEXBLENDENVIATIPROC __glewVertexBlendEnviATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1DATIPROC __glewVertexStream1dATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1DVATIPROC __glewVertexStream1dvATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1FATIPROC __glewVertexStream1fATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1FVATIPROC __glewVertexStream1fvATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1IATIPROC __glewVertexStream1iATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1IVATIPROC __glewVertexStream1ivATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1SATIPROC __glewVertexStream1sATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1SVATIPROC __glewVertexStream1svATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2DATIPROC __glewVertexStream2dATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2DVATIPROC __glewVertexStream2dvATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2FATIPROC __glewVertexStream2fATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2FVATIPROC __glewVertexStream2fvATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2IATIPROC __glewVertexStream2iATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2IVATIPROC __glewVertexStream2ivATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2SATIPROC __glewVertexStream2sATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2SVATIPROC __glewVertexStream2svATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3DATIPROC __glewVertexStream3dATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3DVATIPROC __glewVertexStream3dvATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3FATIPROC __glewVertexStream3fATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3FVATIPROC __glewVertexStream3fvATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3IATIPROC __glewVertexStream3iATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3IVATIPROC __glewVertexStream3ivATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3SATIPROC __glewVertexStream3sATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3SVATIPROC __glewVertexStream3svATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4DATIPROC __glewVertexStream4dATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4DVATIPROC __glewVertexStream4dvATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4FATIPROC __glewVertexStream4fATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4FVATIPROC __glewVertexStream4fvATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4IATIPROC __glewVertexStream4iATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4IVATIPROC __glewVertexStream4ivATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4SATIPROC __glewVertexStream4sATI; +GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4SVATIPROC __glewVertexStream4svATI; + +GLEW_FUN_EXPORT PFNGLEGLIMAGETARGETTEXSTORAGEEXTPROC __glewEGLImageTargetTexStorageEXT; +GLEW_FUN_EXPORT PFNGLEGLIMAGETARGETTEXTURESTORAGEEXTPROC __glewEGLImageTargetTextureStorageEXT; + +GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEEXTPROC __glewDrawArraysInstancedBaseInstanceEXT; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEEXTPROC __glewDrawElementsInstancedBaseInstanceEXT; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEEXTPROC __glewDrawElementsInstancedBaseVertexBaseInstanceEXT; + +GLEW_FUN_EXPORT PFNGLGETUNIFORMBUFFERSIZEEXTPROC __glewGetUniformBufferSizeEXT; +GLEW_FUN_EXPORT PFNGLGETUNIFORMOFFSETEXTPROC __glewGetUniformOffsetEXT; +GLEW_FUN_EXPORT PFNGLUNIFORMBUFFEREXTPROC __glewUniformBufferEXT; + +GLEW_FUN_EXPORT PFNGLBLENDCOLOREXTPROC __glewBlendColorEXT; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEEXTPROC __glewBlendEquationSeparateEXT; + +GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONINDEXEDEXTPROC __glewBindFragDataLocationIndexedEXT; +GLEW_FUN_EXPORT PFNGLGETFRAGDATAINDEXEXTPROC __glewGetFragDataIndexEXT; +GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCELOCATIONINDEXEXTPROC __glewGetProgramResourceLocationIndexEXT; + +GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEEXTPROC __glewBlendFuncSeparateEXT; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONEXTPROC __glewBlendEquationEXT; + +GLEW_FUN_EXPORT PFNGLBUFFERSTORAGEEXTPROC __glewBufferStorageEXT; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSTORAGEEXTPROC __glewNamedBufferStorageEXT; + +GLEW_FUN_EXPORT PFNGLCLEARTEXIMAGEEXTPROC __glewClearTexImageEXT; +GLEW_FUN_EXPORT PFNGLCLEARTEXSUBIMAGEEXTPROC __glewClearTexSubImageEXT; + +GLEW_FUN_EXPORT PFNGLCLIPCONTROLEXTPROC __glewClipControlEXT; + +GLEW_FUN_EXPORT PFNGLCOLORSUBTABLEEXTPROC __glewColorSubTableEXT; +GLEW_FUN_EXPORT PFNGLCOPYCOLORSUBTABLEEXTPROC __glewCopyColorSubTableEXT; + +GLEW_FUN_EXPORT PFNGLLOCKARRAYSEXTPROC __glewLockArraysEXT; +GLEW_FUN_EXPORT PFNGLUNLOCKARRAYSEXTPROC __glewUnlockArraysEXT; + +GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER1DEXTPROC __glewConvolutionFilter1DEXT; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER2DEXTPROC __glewConvolutionFilter2DEXT; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFEXTPROC __glewConvolutionParameterfEXT; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFVEXTPROC __glewConvolutionParameterfvEXT; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIEXTPROC __glewConvolutionParameteriEXT; +GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIVEXTPROC __glewConvolutionParameterivEXT; +GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC __glewCopyConvolutionFilter1DEXT; +GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC __glewCopyConvolutionFilter2DEXT; +GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONFILTEREXTPROC __glewGetConvolutionFilterEXT; +GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC __glewGetConvolutionParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC __glewGetConvolutionParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETSEPARABLEFILTEREXTPROC __glewGetSeparableFilterEXT; +GLEW_FUN_EXPORT PFNGLSEPARABLEFILTER2DEXTPROC __glewSeparableFilter2DEXT; + +GLEW_FUN_EXPORT PFNGLBINORMALPOINTEREXTPROC __glewBinormalPointerEXT; +GLEW_FUN_EXPORT PFNGLTANGENTPOINTEREXTPROC __glewTangentPointerEXT; + +GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATAEXTPROC __glewCopyImageSubDataEXT; + +GLEW_FUN_EXPORT PFNGLCOPYTEXIMAGE1DEXTPROC __glewCopyTexImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXIMAGE2DEXTPROC __glewCopyTexImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE1DEXTPROC __glewCopyTexSubImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE2DEXTPROC __glewCopyTexSubImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DEXTPROC __glewCopyTexSubImage3DEXT; + +GLEW_FUN_EXPORT PFNGLCULLPARAMETERDVEXTPROC __glewCullParameterdvEXT; +GLEW_FUN_EXPORT PFNGLCULLPARAMETERFVEXTPROC __glewCullParameterfvEXT; + +GLEW_FUN_EXPORT PFNGLGETOBJECTLABELEXTPROC __glewGetObjectLabelEXT; +GLEW_FUN_EXPORT PFNGLLABELOBJECTEXTPROC __glewLabelObjectEXT; + +GLEW_FUN_EXPORT PFNGLINSERTEVENTMARKEREXTPROC __glewInsertEventMarkerEXT; +GLEW_FUN_EXPORT PFNGLPOPGROUPMARKEREXTPROC __glewPopGroupMarkerEXT; +GLEW_FUN_EXPORT PFNGLPUSHGROUPMARKEREXTPROC __glewPushGroupMarkerEXT; + +GLEW_FUN_EXPORT PFNGLDEPTHBOUNDSEXTPROC __glewDepthBoundsEXT; + +GLEW_FUN_EXPORT PFNGLBINDMULTITEXTUREEXTPROC __glewBindMultiTextureEXT; +GLEW_FUN_EXPORT PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC __glewCheckNamedFramebufferStatusEXT; +GLEW_FUN_EXPORT PFNGLCLIENTATTRIBDEFAULTEXTPROC __glewClientAttribDefaultEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC __glewCompressedMultiTexImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC __glewCompressedMultiTexImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC __glewCompressedMultiTexImage3DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC __glewCompressedMultiTexSubImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC __glewCompressedMultiTexSubImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC __glewCompressedMultiTexSubImage3DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC __glewCompressedTextureImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC __glewCompressedTextureImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC __glewCompressedTextureImage3DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC __glewCompressedTextureSubImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC __glewCompressedTextureSubImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC __glewCompressedTextureSubImage3DEXT; +GLEW_FUN_EXPORT PFNGLCOPYMULTITEXIMAGE1DEXTPROC __glewCopyMultiTexImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOPYMULTITEXIMAGE2DEXTPROC __glewCopyMultiTexImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC __glewCopyMultiTexSubImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC __glewCopyMultiTexSubImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC __glewCopyMultiTexSubImage3DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXTUREIMAGE1DEXTPROC __glewCopyTextureImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXTUREIMAGE2DEXTPROC __glewCopyTextureImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC __glewCopyTextureSubImage1DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC __glewCopyTextureSubImage2DEXT; +GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC __glewCopyTextureSubImage3DEXT; +GLEW_FUN_EXPORT PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC __glewDisableClientStateIndexedEXT; +GLEW_FUN_EXPORT PFNGLDISABLECLIENTSTATEIEXTPROC __glewDisableClientStateiEXT; +GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC __glewDisableVertexArrayAttribEXT; +GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYEXTPROC __glewDisableVertexArrayEXT; +GLEW_FUN_EXPORT PFNGLENABLECLIENTSTATEINDEXEDEXTPROC __glewEnableClientStateIndexedEXT; +GLEW_FUN_EXPORT PFNGLENABLECLIENTSTATEIEXTPROC __glewEnableClientStateiEXT; +GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYATTRIBEXTPROC __glewEnableVertexArrayAttribEXT; +GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYEXTPROC __glewEnableVertexArrayEXT; +GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC __glewFlushMappedNamedBufferRangeEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC __glewFramebufferDrawBufferEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC __glewFramebufferDrawBuffersEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERREADBUFFEREXTPROC __glewFramebufferReadBufferEXT; +GLEW_FUN_EXPORT PFNGLGENERATEMULTITEXMIPMAPEXTPROC __glewGenerateMultiTexMipmapEXT; +GLEW_FUN_EXPORT PFNGLGENERATETEXTUREMIPMAPEXTPROC __glewGenerateTextureMipmapEXT; +GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC __glewGetCompressedMultiTexImageEXT; +GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC __glewGetCompressedTextureImageEXT; +GLEW_FUN_EXPORT PFNGLGETDOUBLEINDEXEDVEXTPROC __glewGetDoubleIndexedvEXT; +GLEW_FUN_EXPORT PFNGLGETDOUBLEI_VEXTPROC __glewGetDoublei_vEXT; +GLEW_FUN_EXPORT PFNGLGETFLOATINDEXEDVEXTPROC __glewGetFloatIndexedvEXT; +GLEW_FUN_EXPORT PFNGLGETFLOATI_VEXTPROC __glewGetFloati_vEXT; +GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC __glewGetFramebufferParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXENVFVEXTPROC __glewGetMultiTexEnvfvEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXENVIVEXTPROC __glewGetMultiTexEnvivEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXGENDVEXTPROC __glewGetMultiTexGendvEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXGENFVEXTPROC __glewGetMultiTexGenfvEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXGENIVEXTPROC __glewGetMultiTexGenivEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXIMAGEEXTPROC __glewGetMultiTexImageEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC __glewGetMultiTexLevelParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC __glewGetMultiTexLevelParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIIVEXTPROC __glewGetMultiTexParameterIivEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIUIVEXTPROC __glewGetMultiTexParameterIuivEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERFVEXTPROC __glewGetMultiTexParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIVEXTPROC __glewGetMultiTexParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC __glewGetNamedBufferParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPOINTERVEXTPROC __glewGetNamedBufferPointervEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERSUBDATAEXTPROC __glewGetNamedBufferSubDataEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetNamedFramebufferAttachmentParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC __glewGetNamedProgramLocalParameterIivEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC __glewGetNamedProgramLocalParameterIuivEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC __glewGetNamedProgramLocalParameterdvEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC __glewGetNamedProgramLocalParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMSTRINGEXTPROC __glewGetNamedProgramStringEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMIVEXTPROC __glewGetNamedProgramivEXT; +GLEW_FUN_EXPORT PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC __glewGetNamedRenderbufferParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETPOINTERINDEXEDVEXTPROC __glewGetPointerIndexedvEXT; +GLEW_FUN_EXPORT PFNGLGETPOINTERI_VEXTPROC __glewGetPointeri_vEXT; +GLEW_FUN_EXPORT PFNGLGETTEXTUREIMAGEEXTPROC __glewGetTextureImageEXT; +GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC __glewGetTextureLevelParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC __glewGetTextureLevelParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIIVEXTPROC __glewGetTextureParameterIivEXT; +GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIUIVEXTPROC __glewGetTextureParameterIuivEXT; +GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERFVEXTPROC __glewGetTextureParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIVEXTPROC __glewGetTextureParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC __glewGetVertexArrayIntegeri_vEXT; +GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINTEGERVEXTPROC __glewGetVertexArrayIntegervEXT; +GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC __glewGetVertexArrayPointeri_vEXT; +GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYPOINTERVEXTPROC __glewGetVertexArrayPointervEXT; +GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFEREXTPROC __glewMapNamedBufferEXT; +GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFERRANGEEXTPROC __glewMapNamedBufferRangeEXT; +GLEW_FUN_EXPORT PFNGLMATRIXFRUSTUMEXTPROC __glewMatrixFrustumEXT; +GLEW_FUN_EXPORT PFNGLMATRIXLOADIDENTITYEXTPROC __glewMatrixLoadIdentityEXT; +GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSEDEXTPROC __glewMatrixLoadTransposedEXT; +GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSEFEXTPROC __glewMatrixLoadTransposefEXT; +GLEW_FUN_EXPORT PFNGLMATRIXLOADDEXTPROC __glewMatrixLoaddEXT; +GLEW_FUN_EXPORT PFNGLMATRIXLOADFEXTPROC __glewMatrixLoadfEXT; +GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSEDEXTPROC __glewMatrixMultTransposedEXT; +GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSEFEXTPROC __glewMatrixMultTransposefEXT; +GLEW_FUN_EXPORT PFNGLMATRIXMULTDEXTPROC __glewMatrixMultdEXT; +GLEW_FUN_EXPORT PFNGLMATRIXMULTFEXTPROC __glewMatrixMultfEXT; +GLEW_FUN_EXPORT PFNGLMATRIXORTHOEXTPROC __glewMatrixOrthoEXT; +GLEW_FUN_EXPORT PFNGLMATRIXPOPEXTPROC __glewMatrixPopEXT; +GLEW_FUN_EXPORT PFNGLMATRIXPUSHEXTPROC __glewMatrixPushEXT; +GLEW_FUN_EXPORT PFNGLMATRIXROTATEDEXTPROC __glewMatrixRotatedEXT; +GLEW_FUN_EXPORT PFNGLMATRIXROTATEFEXTPROC __glewMatrixRotatefEXT; +GLEW_FUN_EXPORT PFNGLMATRIXSCALEDEXTPROC __glewMatrixScaledEXT; +GLEW_FUN_EXPORT PFNGLMATRIXSCALEFEXTPROC __glewMatrixScalefEXT; +GLEW_FUN_EXPORT PFNGLMATRIXTRANSLATEDEXTPROC __glewMatrixTranslatedEXT; +GLEW_FUN_EXPORT PFNGLMATRIXTRANSLATEFEXTPROC __glewMatrixTranslatefEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXBUFFEREXTPROC __glewMultiTexBufferEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORDPOINTEREXTPROC __glewMultiTexCoordPointerEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXENVFEXTPROC __glewMultiTexEnvfEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXENVFVEXTPROC __glewMultiTexEnvfvEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXENVIEXTPROC __glewMultiTexEnviEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXENVIVEXTPROC __glewMultiTexEnvivEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXGENDEXTPROC __glewMultiTexGendEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXGENDVEXTPROC __glewMultiTexGendvEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXGENFEXTPROC __glewMultiTexGenfEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXGENFVEXTPROC __glewMultiTexGenfvEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXGENIEXTPROC __glewMultiTexGeniEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXGENIVEXTPROC __glewMultiTexGenivEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE1DEXTPROC __glewMultiTexImage1DEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE2DEXTPROC __glewMultiTexImage2DEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE3DEXTPROC __glewMultiTexImage3DEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIIVEXTPROC __glewMultiTexParameterIivEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIUIVEXTPROC __glewMultiTexParameterIuivEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERFEXTPROC __glewMultiTexParameterfEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERFVEXTPROC __glewMultiTexParameterfvEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIEXTPROC __glewMultiTexParameteriEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIVEXTPROC __glewMultiTexParameterivEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXRENDERBUFFEREXTPROC __glewMultiTexRenderbufferEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE1DEXTPROC __glewMultiTexSubImage1DEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE2DEXTPROC __glewMultiTexSubImage2DEXT; +GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE3DEXTPROC __glewMultiTexSubImage3DEXT; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERDATAEXTPROC __glewNamedBufferDataEXT; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSUBDATAEXTPROC __glewNamedBufferSubDataEXT; +GLEW_FUN_EXPORT PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC __glewNamedCopyBufferSubDataEXT; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC __glewNamedFramebufferRenderbufferEXT; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC __glewNamedFramebufferTexture1DEXT; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC __glewNamedFramebufferTexture2DEXT; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC __glewNamedFramebufferTexture3DEXT; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC __glewNamedFramebufferTextureEXT; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC __glewNamedFramebufferTextureFaceEXT; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC __glewNamedFramebufferTextureLayerEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC __glewNamedProgramLocalParameter4dEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC __glewNamedProgramLocalParameter4dvEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC __glewNamedProgramLocalParameter4fEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC __glewNamedProgramLocalParameter4fvEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC __glewNamedProgramLocalParameterI4iEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC __glewNamedProgramLocalParameterI4ivEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC __glewNamedProgramLocalParameterI4uiEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC __glewNamedProgramLocalParameterI4uivEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC __glewNamedProgramLocalParameters4fvEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC __glewNamedProgramLocalParametersI4ivEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC __glewNamedProgramLocalParametersI4uivEXT; +GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMSTRINGEXTPROC __glewNamedProgramStringEXT; +GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC __glewNamedRenderbufferStorageEXT; +GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC __glewNamedRenderbufferStorageMultisampleCoverageEXT; +GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewNamedRenderbufferStorageMultisampleEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FEXTPROC __glewProgramUniform1fEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FVEXTPROC __glewProgramUniform1fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IEXTPROC __glewProgramUniform1iEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IVEXTPROC __glewProgramUniform1ivEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIEXTPROC __glewProgramUniform1uiEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIVEXTPROC __glewProgramUniform1uivEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FEXTPROC __glewProgramUniform2fEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FVEXTPROC __glewProgramUniform2fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IEXTPROC __glewProgramUniform2iEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IVEXTPROC __glewProgramUniform2ivEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIEXTPROC __glewProgramUniform2uiEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIVEXTPROC __glewProgramUniform2uivEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FEXTPROC __glewProgramUniform3fEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FVEXTPROC __glewProgramUniform3fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IEXTPROC __glewProgramUniform3iEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IVEXTPROC __glewProgramUniform3ivEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIEXTPROC __glewProgramUniform3uiEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIVEXTPROC __glewProgramUniform3uivEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FEXTPROC __glewProgramUniform4fEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FVEXTPROC __glewProgramUniform4fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IEXTPROC __glewProgramUniform4iEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IVEXTPROC __glewProgramUniform4ivEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIEXTPROC __glewProgramUniform4uiEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIVEXTPROC __glewProgramUniform4uivEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC __glewProgramUniformMatrix2fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC __glewProgramUniformMatrix2x3fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC __glewProgramUniformMatrix2x4fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC __glewProgramUniformMatrix3fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC __glewProgramUniformMatrix3x2fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC __glewProgramUniformMatrix3x4fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC __glewProgramUniformMatrix4fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC __glewProgramUniformMatrix4x2fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC __glewProgramUniformMatrix4x3fvEXT; +GLEW_FUN_EXPORT PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC __glewPushClientAttribDefaultEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREBUFFEREXTPROC __glewTextureBufferEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE1DEXTPROC __glewTextureImage1DEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DEXTPROC __glewTextureImage2DEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DEXTPROC __glewTextureImage3DEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIIVEXTPROC __glewTextureParameterIivEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIUIVEXTPROC __glewTextureParameterIuivEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFEXTPROC __glewTextureParameterfEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFVEXTPROC __glewTextureParameterfvEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIEXTPROC __glewTextureParameteriEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIVEXTPROC __glewTextureParameterivEXT; +GLEW_FUN_EXPORT PFNGLTEXTURERENDERBUFFEREXTPROC __glewTextureRenderbufferEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE1DEXTPROC __glewTextureSubImage1DEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE2DEXTPROC __glewTextureSubImage2DEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE3DEXTPROC __glewTextureSubImage3DEXT; +GLEW_FUN_EXPORT PFNGLUNMAPNAMEDBUFFEREXTPROC __glewUnmapNamedBufferEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYCOLOROFFSETEXTPROC __glewVertexArrayColorOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC __glewVertexArrayEdgeFlagOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC __glewVertexArrayFogCoordOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYINDEXOFFSETEXTPROC __glewVertexArrayIndexOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC __glewVertexArrayMultiTexCoordOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYNORMALOFFSETEXTPROC __glewVertexArrayNormalOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC __glewVertexArraySecondaryColorOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC __glewVertexArrayTexCoordOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBDIVISOREXTPROC __glewVertexArrayVertexAttribDivisorEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC __glewVertexArrayVertexAttribIOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC __glewVertexArrayVertexAttribOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC __glewVertexArrayVertexOffsetEXT; + +GLEW_FUN_EXPORT PFNGLDISCARDFRAMEBUFFEREXTPROC __glewDiscardFramebufferEXT; + +GLEW_FUN_EXPORT PFNGLBEGINQUERYEXTPROC __glewBeginQueryEXT; +GLEW_FUN_EXPORT PFNGLDELETEQUERIESEXTPROC __glewDeleteQueriesEXT; +GLEW_FUN_EXPORT PFNGLENDQUERYEXTPROC __glewEndQueryEXT; +GLEW_FUN_EXPORT PFNGLGENQUERIESEXTPROC __glewGenQueriesEXT; +GLEW_FUN_EXPORT PFNGLGETINTEGER64VEXTPROC __glewGetInteger64vEXT; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVEXTPROC __glewGetQueryObjectivEXT; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVEXTPROC __glewGetQueryObjectuivEXT; +GLEW_FUN_EXPORT PFNGLGETQUERYIVEXTPROC __glewGetQueryivEXT; +GLEW_FUN_EXPORT PFNGLISQUERYEXTPROC __glewIsQueryEXT; +GLEW_FUN_EXPORT PFNGLQUERYCOUNTEREXTPROC __glewQueryCounterEXT; + +GLEW_FUN_EXPORT PFNGLDRAWBUFFERSEXTPROC __glewDrawBuffersEXT; + +GLEW_FUN_EXPORT PFNGLCOLORMASKINDEXEDEXTPROC __glewColorMaskIndexedEXT; +GLEW_FUN_EXPORT PFNGLDISABLEINDEXEDEXTPROC __glewDisableIndexedEXT; +GLEW_FUN_EXPORT PFNGLENABLEINDEXEDEXTPROC __glewEnableIndexedEXT; +GLEW_FUN_EXPORT PFNGLGETBOOLEANINDEXEDVEXTPROC __glewGetBooleanIndexedvEXT; +GLEW_FUN_EXPORT PFNGLGETINTEGERINDEXEDVEXTPROC __glewGetIntegerIndexedvEXT; +GLEW_FUN_EXPORT PFNGLISENABLEDINDEXEDEXTPROC __glewIsEnabledIndexedEXT; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIEXTPROC __glewBlendEquationSeparateiEXT; +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIEXTPROC __glewBlendEquationiEXT; +GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIEXTPROC __glewBlendFuncSeparateiEXT; +GLEW_FUN_EXPORT PFNGLBLENDFUNCIEXTPROC __glewBlendFunciEXT; +GLEW_FUN_EXPORT PFNGLCOLORMASKIEXTPROC __glewColorMaskiEXT; +GLEW_FUN_EXPORT PFNGLDISABLEIEXTPROC __glewDisableiEXT; +GLEW_FUN_EXPORT PFNGLENABLEIEXTPROC __glewEnableiEXT; +GLEW_FUN_EXPORT PFNGLISENABLEDIEXTPROC __glewIsEnablediEXT; + +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSBASEVERTEXEXTPROC __glewDrawElementsBaseVertexEXT; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXEXTPROC __glewDrawElementsInstancedBaseVertexEXT; +GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSBASEVERTEXEXTPROC __glewDrawRangeElementsBaseVertexEXT; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSBASEVERTEXEXTPROC __glewMultiDrawElementsBaseVertexEXT; + +GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDEXTPROC __glewDrawArraysInstancedEXT; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDEXTPROC __glewDrawElementsInstancedEXT; + +GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSEXTPROC __glewDrawRangeElementsEXT; + +GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKEXTPROC __glewDrawTransformFeedbackEXT; +GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDEXTPROC __glewDrawTransformFeedbackInstancedEXT; + +GLEW_FUN_EXPORT PFNGLBUFFERSTORAGEEXTERNALEXTPROC __glewBufferStorageExternalEXT; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSTORAGEEXTERNALEXTPROC __glewNamedBufferStorageExternalEXT; + +GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTEREXTPROC __glewFogCoordPointerEXT; +GLEW_FUN_EXPORT PFNGLFOGCOORDDEXTPROC __glewFogCoorddEXT; +GLEW_FUN_EXPORT PFNGLFOGCOORDDVEXTPROC __glewFogCoorddvEXT; +GLEW_FUN_EXPORT PFNGLFOGCOORDFEXTPROC __glewFogCoordfEXT; +GLEW_FUN_EXPORT PFNGLFOGCOORDFVEXTPROC __glewFogCoordfvEXT; + +GLEW_FUN_EXPORT PFNGLFRAGMENTCOLORMATERIALEXTPROC __glewFragmentColorMaterialEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFEXTPROC __glewFragmentLightModelfEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFVEXTPROC __glewFragmentLightModelfvEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIEXTPROC __glewFragmentLightModeliEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIVEXTPROC __glewFragmentLightModelivEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFEXTPROC __glewFragmentLightfEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFVEXTPROC __glewFragmentLightfvEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIEXTPROC __glewFragmentLightiEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIVEXTPROC __glewFragmentLightivEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFEXTPROC __glewFragmentMaterialfEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFVEXTPROC __glewFragmentMaterialfvEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIEXTPROC __glewFragmentMaterialiEXT; +GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIVEXTPROC __glewFragmentMaterialivEXT; +GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTFVEXTPROC __glewGetFragmentLightfvEXT; +GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTIVEXTPROC __glewGetFragmentLightivEXT; +GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALFVEXTPROC __glewGetFragmentMaterialfvEXT; +GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALIVEXTPROC __glewGetFragmentMaterialivEXT; +GLEW_FUN_EXPORT PFNGLLIGHTENVIEXTPROC __glewLightEnviEXT; + +GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFEREXTPROC __glewBlitFramebufferEXT; + +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewRenderbufferStorageMultisampleEXT; + +GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFEREXTPROC __glewBindFramebufferEXT; +GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFEREXTPROC __glewBindRenderbufferEXT; +GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC __glewCheckFramebufferStatusEXT; +GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSEXTPROC __glewDeleteFramebuffersEXT; +GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSEXTPROC __glewDeleteRenderbuffersEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC __glewFramebufferRenderbufferEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE1DEXTPROC __glewFramebufferTexture1DEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DEXTPROC __glewFramebufferTexture2DEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DEXTPROC __glewFramebufferTexture3DEXT; +GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSEXTPROC __glewGenFramebuffersEXT; +GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSEXTPROC __glewGenRenderbuffersEXT; +GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPEXTPROC __glewGenerateMipmapEXT; +GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetFramebufferAttachmentParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC __glewGetRenderbufferParameterivEXT; +GLEW_FUN_EXPORT PFNGLISFRAMEBUFFEREXTPROC __glewIsFramebufferEXT; +GLEW_FUN_EXPORT PFNGLISRENDERBUFFEREXTPROC __glewIsRenderbufferEXT; +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEEXTPROC __glewRenderbufferStorageEXT; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREEXTPROC __glewFramebufferTextureEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC __glewFramebufferTextureFaceEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIEXTPROC __glewProgramParameteriEXT; + +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERS4FVEXTPROC __glewProgramEnvParameters4fvEXT; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC __glewProgramLocalParameters4fvEXT; + +GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONEXTPROC __glewBindFragDataLocationEXT; +GLEW_FUN_EXPORT PFNGLGETFRAGDATALOCATIONEXTPROC __glewGetFragDataLocationEXT; +GLEW_FUN_EXPORT PFNGLGETUNIFORMUIVEXTPROC __glewGetUniformuivEXT; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIIVEXTPROC __glewGetVertexAttribIivEXT; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIUIVEXTPROC __glewGetVertexAttribIuivEXT; +GLEW_FUN_EXPORT PFNGLUNIFORM1UIEXTPROC __glewUniform1uiEXT; +GLEW_FUN_EXPORT PFNGLUNIFORM1UIVEXTPROC __glewUniform1uivEXT; +GLEW_FUN_EXPORT PFNGLUNIFORM2UIEXTPROC __glewUniform2uiEXT; +GLEW_FUN_EXPORT PFNGLUNIFORM2UIVEXTPROC __glewUniform2uivEXT; +GLEW_FUN_EXPORT PFNGLUNIFORM3UIEXTPROC __glewUniform3uiEXT; +GLEW_FUN_EXPORT PFNGLUNIFORM3UIVEXTPROC __glewUniform3uivEXT; +GLEW_FUN_EXPORT PFNGLUNIFORM4UIEXTPROC __glewUniform4uiEXT; +GLEW_FUN_EXPORT PFNGLUNIFORM4UIVEXTPROC __glewUniform4uivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IEXTPROC __glewVertexAttribI1iEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IVEXTPROC __glewVertexAttribI1ivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIEXTPROC __glewVertexAttribI1uiEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIVEXTPROC __glewVertexAttribI1uivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IEXTPROC __glewVertexAttribI2iEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IVEXTPROC __glewVertexAttribI2ivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIEXTPROC __glewVertexAttribI2uiEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIVEXTPROC __glewVertexAttribI2uivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IEXTPROC __glewVertexAttribI3iEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IVEXTPROC __glewVertexAttribI3ivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIEXTPROC __glewVertexAttribI3uiEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIVEXTPROC __glewVertexAttribI3uivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4BVEXTPROC __glewVertexAttribI4bvEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IEXTPROC __glewVertexAttribI4iEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IVEXTPROC __glewVertexAttribI4ivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4SVEXTPROC __glewVertexAttribI4svEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UBVEXTPROC __glewVertexAttribI4ubvEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIEXTPROC __glewVertexAttribI4uiEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIVEXTPROC __glewVertexAttribI4uivEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4USVEXTPROC __glewVertexAttribI4usvEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIPOINTEREXTPROC __glewVertexAttribIPointerEXT; + +GLEW_FUN_EXPORT PFNGLGETHISTOGRAMEXTPROC __glewGetHistogramEXT; +GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERFVEXTPROC __glewGetHistogramParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERIVEXTPROC __glewGetHistogramParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETMINMAXEXTPROC __glewGetMinmaxEXT; +GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERFVEXTPROC __glewGetMinmaxParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERIVEXTPROC __glewGetMinmaxParameterivEXT; +GLEW_FUN_EXPORT PFNGLHISTOGRAMEXTPROC __glewHistogramEXT; +GLEW_FUN_EXPORT PFNGLMINMAXEXTPROC __glewMinmaxEXT; +GLEW_FUN_EXPORT PFNGLRESETHISTOGRAMEXTPROC __glewResetHistogramEXT; +GLEW_FUN_EXPORT PFNGLRESETMINMAXEXTPROC __glewResetMinmaxEXT; + +GLEW_FUN_EXPORT PFNGLINDEXFUNCEXTPROC __glewIndexFuncEXT; + +GLEW_FUN_EXPORT PFNGLINDEXMATERIALEXTPROC __glewIndexMaterialEXT; + +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISOREXTPROC __glewVertexAttribDivisorEXT; + +GLEW_FUN_EXPORT PFNGLAPPLYTEXTUREEXTPROC __glewApplyTextureEXT; +GLEW_FUN_EXPORT PFNGLTEXTURELIGHTEXTPROC __glewTextureLightEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREMATERIALEXTPROC __glewTextureMaterialEXT; + +GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC __glewFlushMappedBufferRangeEXT; +GLEW_FUN_EXPORT PFNGLMAPBUFFERRANGEEXTPROC __glewMapBufferRangeEXT; + +GLEW_FUN_EXPORT PFNGLBUFFERSTORAGEMEMEXTPROC __glewBufferStorageMemEXT; +GLEW_FUN_EXPORT PFNGLCREATEMEMORYOBJECTSEXTPROC __glewCreateMemoryObjectsEXT; +GLEW_FUN_EXPORT PFNGLDELETEMEMORYOBJECTSEXTPROC __glewDeleteMemoryObjectsEXT; +GLEW_FUN_EXPORT PFNGLGETMEMORYOBJECTPARAMETERIVEXTPROC __glewGetMemoryObjectParameterivEXT; +GLEW_FUN_EXPORT PFNGLGETUNSIGNEDBYTEI_VEXTPROC __glewGetUnsignedBytei_vEXT; +GLEW_FUN_EXPORT PFNGLGETUNSIGNEDBYTEVEXTPROC __glewGetUnsignedBytevEXT; +GLEW_FUN_EXPORT PFNGLISMEMORYOBJECTEXTPROC __glewIsMemoryObjectEXT; +GLEW_FUN_EXPORT PFNGLMEMORYOBJECTPARAMETERIVEXTPROC __glewMemoryObjectParameterivEXT; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSTORAGEMEMEXTPROC __glewNamedBufferStorageMemEXT; +GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM1DEXTPROC __glewTexStorageMem1DEXT; +GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM2DEXTPROC __glewTexStorageMem2DEXT; +GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM2DMULTISAMPLEEXTPROC __glewTexStorageMem2DMultisampleEXT; +GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM3DEXTPROC __glewTexStorageMem3DEXT; +GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM3DMULTISAMPLEEXTPROC __glewTexStorageMem3DMultisampleEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM1DEXTPROC __glewTextureStorageMem1DEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM2DEXTPROC __glewTextureStorageMem2DEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM2DMULTISAMPLEEXTPROC __glewTextureStorageMem2DMultisampleEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM3DEXTPROC __glewTextureStorageMem3DEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM3DMULTISAMPLEEXTPROC __glewTextureStorageMem3DMultisampleEXT; + +GLEW_FUN_EXPORT PFNGLIMPORTMEMORYFDEXTPROC __glewImportMemoryFdEXT; + +GLEW_FUN_EXPORT PFNGLIMPORTMEMORYWIN32HANDLEEXTPROC __glewImportMemoryWin32HandleEXT; +GLEW_FUN_EXPORT PFNGLIMPORTMEMORYWIN32NAMEEXTPROC __glewImportMemoryWin32NameEXT; + +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSEXTPROC __glewMultiDrawArraysEXT; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSEXTPROC __glewMultiDrawElementsEXT; + +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTEXTPROC __glewMultiDrawArraysIndirectEXT; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTEXTPROC __glewMultiDrawElementsIndirectEXT; + +GLEW_FUN_EXPORT PFNGLSAMPLEMASKEXTPROC __glewSampleMaskEXT; +GLEW_FUN_EXPORT PFNGLSAMPLEPATTERNEXTPROC __glewSamplePatternEXT; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC __glewFramebufferTexture2DMultisampleEXT; + +GLEW_FUN_EXPORT PFNGLDRAWBUFFERSINDEXEDEXTPROC __glewDrawBuffersIndexedEXT; +GLEW_FUN_EXPORT PFNGLGETINTEGERI_VEXTPROC __glewGetIntegeri_vEXT; +GLEW_FUN_EXPORT PFNGLREADBUFFERINDEXEDEXTPROC __glewReadBufferIndexedEXT; + +GLEW_FUN_EXPORT PFNGLCOLORTABLEEXTPROC __glewColorTableEXT; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLEEXTPROC __glewGetColorTableEXT; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVEXTPROC __glewGetColorTableParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVEXTPROC __glewGetColorTableParameterivEXT; + +GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC __glewGetPixelTransformParameterfvEXT; +GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC __glewGetPixelTransformParameterivEXT; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFEXTPROC __glewPixelTransformParameterfEXT; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC __glewPixelTransformParameterfvEXT; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIEXTPROC __glewPixelTransformParameteriEXT; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC __glewPixelTransformParameterivEXT; + +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFEXTPROC __glewPointParameterfEXT; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVEXTPROC __glewPointParameterfvEXT; + +GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETEXTPROC __glewPolygonOffsetEXT; + +GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETCLAMPEXTPROC __glewPolygonOffsetClampEXT; + +GLEW_FUN_EXPORT PFNGLPRIMITIVEBOUNDINGBOXEXTPROC __glewPrimitiveBoundingBoxEXT; + +GLEW_FUN_EXPORT PFNGLPROVOKINGVERTEXEXTPROC __glewProvokingVertexEXT; + +GLEW_FUN_EXPORT PFNGLCOVERAGEMODULATIONNVPROC __glewCoverageModulationNV; +GLEW_FUN_EXPORT PFNGLCOVERAGEMODULATIONTABLENVPROC __glewCoverageModulationTableNV; +GLEW_FUN_EXPORT PFNGLGETCOVERAGEMODULATIONTABLENVPROC __glewGetCoverageModulationTableNV; +GLEW_FUN_EXPORT PFNGLRASTERSAMPLESEXTPROC __glewRasterSamplesEXT; + +GLEW_FUN_EXPORT PFNGLGETNUNIFORMFVEXTPROC __glewGetnUniformfvEXT; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMIVEXTPROC __glewGetnUniformivEXT; +GLEW_FUN_EXPORT PFNGLREADNPIXELSEXTPROC __glewReadnPixelsEXT; + +GLEW_FUN_EXPORT PFNGLBEGINSCENEEXTPROC __glewBeginSceneEXT; +GLEW_FUN_EXPORT PFNGLENDSCENEEXTPROC __glewEndSceneEXT; + +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BEXTPROC __glewSecondaryColor3bEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BVEXTPROC __glewSecondaryColor3bvEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DEXTPROC __glewSecondaryColor3dEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DVEXTPROC __glewSecondaryColor3dvEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FEXTPROC __glewSecondaryColor3fEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FVEXTPROC __glewSecondaryColor3fvEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IEXTPROC __glewSecondaryColor3iEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IVEXTPROC __glewSecondaryColor3ivEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SEXTPROC __glewSecondaryColor3sEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SVEXTPROC __glewSecondaryColor3svEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBEXTPROC __glewSecondaryColor3ubEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBVEXTPROC __glewSecondaryColor3ubvEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIEXTPROC __glewSecondaryColor3uiEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIVEXTPROC __glewSecondaryColor3uivEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USEXTPROC __glewSecondaryColor3usEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USVEXTPROC __glewSecondaryColor3usvEXT; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTEREXTPROC __glewSecondaryColorPointerEXT; + +GLEW_FUN_EXPORT PFNGLDELETESEMAPHORESEXTPROC __glewDeleteSemaphoresEXT; +GLEW_FUN_EXPORT PFNGLGENSEMAPHORESEXTPROC __glewGenSemaphoresEXT; +GLEW_FUN_EXPORT PFNGLGETSEMAPHOREPARAMETERUI64VEXTPROC __glewGetSemaphoreParameterui64vEXT; +GLEW_FUN_EXPORT PFNGLISSEMAPHOREEXTPROC __glewIsSemaphoreEXT; +GLEW_FUN_EXPORT PFNGLSEMAPHOREPARAMETERUI64VEXTPROC __glewSemaphoreParameterui64vEXT; +GLEW_FUN_EXPORT PFNGLSIGNALSEMAPHOREEXTPROC __glewSignalSemaphoreEXT; +GLEW_FUN_EXPORT PFNGLWAITSEMAPHOREEXTPROC __glewWaitSemaphoreEXT; + +GLEW_FUN_EXPORT PFNGLIMPORTSEMAPHOREFDEXTPROC __glewImportSemaphoreFdEXT; + +GLEW_FUN_EXPORT PFNGLIMPORTSEMAPHOREWIN32HANDLEEXTPROC __glewImportSemaphoreWin32HandleEXT; +GLEW_FUN_EXPORT PFNGLIMPORTSEMAPHOREWIN32NAMEEXTPROC __glewImportSemaphoreWin32NameEXT; + +GLEW_FUN_EXPORT PFNGLACTIVEPROGRAMEXTPROC __glewActiveProgramEXT; +GLEW_FUN_EXPORT PFNGLCREATESHADERPROGRAMEXTPROC __glewCreateShaderProgramEXT; +GLEW_FUN_EXPORT PFNGLUSESHADERPROGRAMEXTPROC __glewUseShaderProgramEXT; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERFETCHBARRIEREXTPROC __glewFramebufferFetchBarrierEXT; + +GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTUREEXTPROC __glewBindImageTextureEXT; +GLEW_FUN_EXPORT PFNGLMEMORYBARRIEREXTPROC __glewMemoryBarrierEXT; + +GLEW_FUN_EXPORT PFNGLCLEARPIXELLOCALSTORAGEUIEXTPROC __glewClearPixelLocalStorageuiEXT; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERPIXELLOCALSTORAGESIZEEXTPROC __glewFramebufferPixelLocalStorageSizeEXT; +GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPIXELLOCALSTORAGESIZEEXTPROC __glewGetFramebufferPixelLocalStorageSizeEXT; + +GLEW_FUN_EXPORT PFNGLTEXPAGECOMMITMENTEXTPROC __glewTexPageCommitmentEXT; +GLEW_FUN_EXPORT PFNGLTEXTUREPAGECOMMITMENTEXTPROC __glewTexturePageCommitmentEXT; + +GLEW_FUN_EXPORT PFNGLACTIVESTENCILFACEEXTPROC __glewActiveStencilFaceEXT; + +GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE1DEXTPROC __glewTexSubImage1DEXT; +GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE2DEXTPROC __glewTexSubImage2DEXT; +GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DEXTPROC __glewTexSubImage3DEXT; + +GLEW_FUN_EXPORT PFNGLPATCHPARAMETERIEXTPROC __glewPatchParameteriEXT; + +GLEW_FUN_EXPORT PFNGLTEXIMAGE3DEXTPROC __glewTexImage3DEXT; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC __glewFramebufferTextureLayerEXT; + +GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIIVEXTPROC __glewGetSamplerParameterIivEXT; +GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIUIVEXTPROC __glewGetSamplerParameterIuivEXT; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIIVEXTPROC __glewSamplerParameterIivEXT; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIUIVEXTPROC __glewSamplerParameterIuivEXT; + +GLEW_FUN_EXPORT PFNGLTEXBUFFEREXTPROC __glewTexBufferEXT; + +GLEW_FUN_EXPORT PFNGLCLEARCOLORIIEXTPROC __glewClearColorIiEXT; +GLEW_FUN_EXPORT PFNGLCLEARCOLORIUIEXTPROC __glewClearColorIuiEXT; +GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVEXTPROC __glewGetTexParameterIivEXT; +GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVEXTPROC __glewGetTexParameterIuivEXT; +GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVEXTPROC __glewTexParameterIivEXT; +GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVEXTPROC __glewTexParameterIuivEXT; + +GLEW_FUN_EXPORT PFNGLARETEXTURESRESIDENTEXTPROC __glewAreTexturesResidentEXT; +GLEW_FUN_EXPORT PFNGLBINDTEXTUREEXTPROC __glewBindTextureEXT; +GLEW_FUN_EXPORT PFNGLDELETETEXTURESEXTPROC __glewDeleteTexturesEXT; +GLEW_FUN_EXPORT PFNGLGENTEXTURESEXTPROC __glewGenTexturesEXT; +GLEW_FUN_EXPORT PFNGLISTEXTUREEXTPROC __glewIsTextureEXT; +GLEW_FUN_EXPORT PFNGLPRIORITIZETEXTURESEXTPROC __glewPrioritizeTexturesEXT; + +GLEW_FUN_EXPORT PFNGLTEXTURENORMALEXTPROC __glewTextureNormalEXT; + +GLEW_FUN_EXPORT PFNGLTEXSTORAGE1DEXTPROC __glewTexStorage1DEXT; +GLEW_FUN_EXPORT PFNGLTEXSTORAGE2DEXTPROC __glewTexStorage2DEXT; +GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DEXTPROC __glewTexStorage3DEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE1DEXTPROC __glewTextureStorage1DEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DEXTPROC __glewTextureStorage2DEXT; +GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DEXTPROC __glewTextureStorage3DEXT; + +GLEW_FUN_EXPORT PFNGLTEXTUREVIEWEXTPROC __glewTextureViewEXT; + +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VEXTPROC __glewGetQueryObjecti64vEXT; +GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VEXTPROC __glewGetQueryObjectui64vEXT; + +GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKEXTPROC __glewBeginTransformFeedbackEXT; +GLEW_FUN_EXPORT PFNGLBINDBUFFERBASEEXTPROC __glewBindBufferBaseEXT; +GLEW_FUN_EXPORT PFNGLBINDBUFFEROFFSETEXTPROC __glewBindBufferOffsetEXT; +GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGEEXTPROC __glewBindBufferRangeEXT; +GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKEXTPROC __glewEndTransformFeedbackEXT; +GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC __glewGetTransformFeedbackVaryingEXT; +GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC __glewTransformFeedbackVaryingsEXT; + +GLEW_FUN_EXPORT PFNGLARRAYELEMENTEXTPROC __glewArrayElementEXT; +GLEW_FUN_EXPORT PFNGLCOLORPOINTEREXTPROC __glewColorPointerEXT; +GLEW_FUN_EXPORT PFNGLDRAWARRAYSEXTPROC __glewDrawArraysEXT; +GLEW_FUN_EXPORT PFNGLEDGEFLAGPOINTEREXTPROC __glewEdgeFlagPointerEXT; +GLEW_FUN_EXPORT PFNGLINDEXPOINTEREXTPROC __glewIndexPointerEXT; +GLEW_FUN_EXPORT PFNGLNORMALPOINTEREXTPROC __glewNormalPointerEXT; +GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTEREXTPROC __glewTexCoordPointerEXT; +GLEW_FUN_EXPORT PFNGLVERTEXPOINTEREXTPROC __glewVertexPointerEXT; + +GLEW_FUN_EXPORT PFNGLBINDARRAYSETEXTPROC __glewBindArraySetEXT; +GLEW_FUN_EXPORT PFNGLCREATEARRAYSETEXTPROC __glewCreateArraySetExt; +GLEW_FUN_EXPORT PFNGLDELETEARRAYSETSEXTPROC __glewDeleteArraySetsEXT; + +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLDVEXTPROC __glewGetVertexAttribLdvEXT; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC __glewVertexArrayVertexAttribLOffsetEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DEXTPROC __glewVertexAttribL1dEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DVEXTPROC __glewVertexAttribL1dvEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DEXTPROC __glewVertexAttribL2dEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DVEXTPROC __glewVertexAttribL2dvEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DEXTPROC __glewVertexAttribL3dEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DVEXTPROC __glewVertexAttribL3dvEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DEXTPROC __glewVertexAttribL4dEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DVEXTPROC __glewVertexAttribL4dvEXT; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLPOINTEREXTPROC __glewVertexAttribLPointerEXT; + +GLEW_FUN_EXPORT PFNGLBEGINVERTEXSHADEREXTPROC __glewBeginVertexShaderEXT; +GLEW_FUN_EXPORT PFNGLBINDLIGHTPARAMETEREXTPROC __glewBindLightParameterEXT; +GLEW_FUN_EXPORT PFNGLBINDMATERIALPARAMETEREXTPROC __glewBindMaterialParameterEXT; +GLEW_FUN_EXPORT PFNGLBINDPARAMETEREXTPROC __glewBindParameterEXT; +GLEW_FUN_EXPORT PFNGLBINDTEXGENPARAMETEREXTPROC __glewBindTexGenParameterEXT; +GLEW_FUN_EXPORT PFNGLBINDTEXTUREUNITPARAMETEREXTPROC __glewBindTextureUnitParameterEXT; +GLEW_FUN_EXPORT PFNGLBINDVERTEXSHADEREXTPROC __glewBindVertexShaderEXT; +GLEW_FUN_EXPORT PFNGLDELETEVERTEXSHADEREXTPROC __glewDeleteVertexShaderEXT; +GLEW_FUN_EXPORT PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC __glewDisableVariantClientStateEXT; +GLEW_FUN_EXPORT PFNGLENABLEVARIANTCLIENTSTATEEXTPROC __glewEnableVariantClientStateEXT; +GLEW_FUN_EXPORT PFNGLENDVERTEXSHADEREXTPROC __glewEndVertexShaderEXT; +GLEW_FUN_EXPORT PFNGLEXTRACTCOMPONENTEXTPROC __glewExtractComponentEXT; +GLEW_FUN_EXPORT PFNGLGENSYMBOLSEXTPROC __glewGenSymbolsEXT; +GLEW_FUN_EXPORT PFNGLGENVERTEXSHADERSEXTPROC __glewGenVertexShadersEXT; +GLEW_FUN_EXPORT PFNGLGETINVARIANTBOOLEANVEXTPROC __glewGetInvariantBooleanvEXT; +GLEW_FUN_EXPORT PFNGLGETINVARIANTFLOATVEXTPROC __glewGetInvariantFloatvEXT; +GLEW_FUN_EXPORT PFNGLGETINVARIANTINTEGERVEXTPROC __glewGetInvariantIntegervEXT; +GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC __glewGetLocalConstantBooleanvEXT; +GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTFLOATVEXTPROC __glewGetLocalConstantFloatvEXT; +GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTINTEGERVEXTPROC __glewGetLocalConstantIntegervEXT; +GLEW_FUN_EXPORT PFNGLGETVARIANTBOOLEANVEXTPROC __glewGetVariantBooleanvEXT; +GLEW_FUN_EXPORT PFNGLGETVARIANTFLOATVEXTPROC __glewGetVariantFloatvEXT; +GLEW_FUN_EXPORT PFNGLGETVARIANTINTEGERVEXTPROC __glewGetVariantIntegervEXT; +GLEW_FUN_EXPORT PFNGLGETVARIANTPOINTERVEXTPROC __glewGetVariantPointervEXT; +GLEW_FUN_EXPORT PFNGLINSERTCOMPONENTEXTPROC __glewInsertComponentEXT; +GLEW_FUN_EXPORT PFNGLISVARIANTENABLEDEXTPROC __glewIsVariantEnabledEXT; +GLEW_FUN_EXPORT PFNGLSETINVARIANTEXTPROC __glewSetInvariantEXT; +GLEW_FUN_EXPORT PFNGLSETLOCALCONSTANTEXTPROC __glewSetLocalConstantEXT; +GLEW_FUN_EXPORT PFNGLSHADEROP1EXTPROC __glewShaderOp1EXT; +GLEW_FUN_EXPORT PFNGLSHADEROP2EXTPROC __glewShaderOp2EXT; +GLEW_FUN_EXPORT PFNGLSHADEROP3EXTPROC __glewShaderOp3EXT; +GLEW_FUN_EXPORT PFNGLSWIZZLEEXTPROC __glewSwizzleEXT; +GLEW_FUN_EXPORT PFNGLVARIANTPOINTEREXTPROC __glewVariantPointerEXT; +GLEW_FUN_EXPORT PFNGLVARIANTBVEXTPROC __glewVariantbvEXT; +GLEW_FUN_EXPORT PFNGLVARIANTDVEXTPROC __glewVariantdvEXT; +GLEW_FUN_EXPORT PFNGLVARIANTFVEXTPROC __glewVariantfvEXT; +GLEW_FUN_EXPORT PFNGLVARIANTIVEXTPROC __glewVariantivEXT; +GLEW_FUN_EXPORT PFNGLVARIANTSVEXTPROC __glewVariantsvEXT; +GLEW_FUN_EXPORT PFNGLVARIANTUBVEXTPROC __glewVariantubvEXT; +GLEW_FUN_EXPORT PFNGLVARIANTUIVEXTPROC __glewVariantuivEXT; +GLEW_FUN_EXPORT PFNGLVARIANTUSVEXTPROC __glewVariantusvEXT; +GLEW_FUN_EXPORT PFNGLWRITEMASKEXTPROC __glewWriteMaskEXT; + +GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTPOINTEREXTPROC __glewVertexWeightPointerEXT; +GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTFEXTPROC __glewVertexWeightfEXT; +GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTFVEXTPROC __glewVertexWeightfvEXT; + +GLEW_FUN_EXPORT PFNGLACQUIREKEYEDMUTEXWIN32EXTPROC __glewAcquireKeyedMutexWin32EXT; +GLEW_FUN_EXPORT PFNGLRELEASEKEYEDMUTEXWIN32EXTPROC __glewReleaseKeyedMutexWin32EXT; + +GLEW_FUN_EXPORT PFNGLWINDOWRECTANGLESEXTPROC __glewWindowRectanglesEXT; + +GLEW_FUN_EXPORT PFNGLIMPORTSYNCEXTPROC __glewImportSyncEXT; + +GLEW_FUN_EXPORT PFNGLFRAMETERMINATORGREMEDYPROC __glewFrameTerminatorGREMEDY; + +GLEW_FUN_EXPORT PFNGLSTRINGMARKERGREMEDYPROC __glewStringMarkerGREMEDY; + +GLEW_FUN_EXPORT PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC __glewGetImageTransformParameterfvHP; +GLEW_FUN_EXPORT PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC __glewGetImageTransformParameterivHP; +GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERFHPPROC __glewImageTransformParameterfHP; +GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERFVHPPROC __glewImageTransformParameterfvHP; +GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERIHPPROC __glewImageTransformParameteriHP; +GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERIVHPPROC __glewImageTransformParameterivHP; + +GLEW_FUN_EXPORT PFNGLMULTIMODEDRAWARRAYSIBMPROC __glewMultiModeDrawArraysIBM; +GLEW_FUN_EXPORT PFNGLMULTIMODEDRAWELEMENTSIBMPROC __glewMultiModeDrawElementsIBM; + +GLEW_FUN_EXPORT PFNGLCOLORPOINTERLISTIBMPROC __glewColorPointerListIBM; +GLEW_FUN_EXPORT PFNGLEDGEFLAGPOINTERLISTIBMPROC __glewEdgeFlagPointerListIBM; +GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTERLISTIBMPROC __glewFogCoordPointerListIBM; +GLEW_FUN_EXPORT PFNGLINDEXPOINTERLISTIBMPROC __glewIndexPointerListIBM; +GLEW_FUN_EXPORT PFNGLNORMALPOINTERLISTIBMPROC __glewNormalPointerListIBM; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTERLISTIBMPROC __glewSecondaryColorPointerListIBM; +GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTERLISTIBMPROC __glewTexCoordPointerListIBM; +GLEW_FUN_EXPORT PFNGLVERTEXPOINTERLISTIBMPROC __glewVertexPointerListIBM; + +GLEW_FUN_EXPORT PFNGLGETTEXTUREHANDLEIMGPROC __glewGetTextureHandleIMG; +GLEW_FUN_EXPORT PFNGLGETTEXTURESAMPLERHANDLEIMGPROC __glewGetTextureSamplerHandleIMG; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64IMGPROC __glewProgramUniformHandleui64IMG; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64VIMGPROC __glewProgramUniformHandleui64vIMG; +GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64IMGPROC __glewUniformHandleui64IMG; +GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64VIMGPROC __glewUniformHandleui64vIMG; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DDOWNSAMPLEIMGPROC __glewFramebufferTexture2DDownsampleIMG; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERDOWNSAMPLEIMGPROC __glewFramebufferTextureLayerDownsampleIMG; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC __glewFramebufferTexture2DMultisampleIMG; +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC __glewRenderbufferStorageMultisampleIMG; + +GLEW_FUN_EXPORT PFNGLMAPTEXTURE2DINTELPROC __glewMapTexture2DINTEL; +GLEW_FUN_EXPORT PFNGLSYNCTEXTUREINTELPROC __glewSyncTextureINTEL; +GLEW_FUN_EXPORT PFNGLUNMAPTEXTURE2DINTELPROC __glewUnmapTexture2DINTEL; + +GLEW_FUN_EXPORT PFNGLCOLORPOINTERVINTELPROC __glewColorPointervINTEL; +GLEW_FUN_EXPORT PFNGLNORMALPOINTERVINTELPROC __glewNormalPointervINTEL; +GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTERVINTELPROC __glewTexCoordPointervINTEL; +GLEW_FUN_EXPORT PFNGLVERTEXPOINTERVINTELPROC __glewVertexPointervINTEL; + +GLEW_FUN_EXPORT PFNGLBEGINPERFQUERYINTELPROC __glewBeginPerfQueryINTEL; +GLEW_FUN_EXPORT PFNGLCREATEPERFQUERYINTELPROC __glewCreatePerfQueryINTEL; +GLEW_FUN_EXPORT PFNGLDELETEPERFQUERYINTELPROC __glewDeletePerfQueryINTEL; +GLEW_FUN_EXPORT PFNGLENDPERFQUERYINTELPROC __glewEndPerfQueryINTEL; +GLEW_FUN_EXPORT PFNGLGETFIRSTPERFQUERYIDINTELPROC __glewGetFirstPerfQueryIdINTEL; +GLEW_FUN_EXPORT PFNGLGETNEXTPERFQUERYIDINTELPROC __glewGetNextPerfQueryIdINTEL; +GLEW_FUN_EXPORT PFNGLGETPERFCOUNTERINFOINTELPROC __glewGetPerfCounterInfoINTEL; +GLEW_FUN_EXPORT PFNGLGETPERFQUERYDATAINTELPROC __glewGetPerfQueryDataINTEL; +GLEW_FUN_EXPORT PFNGLGETPERFQUERYIDBYNAMEINTELPROC __glewGetPerfQueryIdByNameINTEL; +GLEW_FUN_EXPORT PFNGLGETPERFQUERYINFOINTELPROC __glewGetPerfQueryInfoINTEL; + +GLEW_FUN_EXPORT PFNGLTEXSCISSORFUNCINTELPROC __glewTexScissorFuncINTEL; +GLEW_FUN_EXPORT PFNGLTEXSCISSORINTELPROC __glewTexScissorINTEL; + +GLEW_FUN_EXPORT PFNGLBLENDBARRIERKHRPROC __glewBlendBarrierKHR; + +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECALLBACKPROC __glewDebugMessageCallback; +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECONTROLPROC __glewDebugMessageControl; +GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEINSERTPROC __glewDebugMessageInsert; +GLEW_FUN_EXPORT PFNGLGETDEBUGMESSAGELOGPROC __glewGetDebugMessageLog; +GLEW_FUN_EXPORT PFNGLGETOBJECTLABELPROC __glewGetObjectLabel; +GLEW_FUN_EXPORT PFNGLGETOBJECTPTRLABELPROC __glewGetObjectPtrLabel; +GLEW_FUN_EXPORT PFNGLOBJECTLABELPROC __glewObjectLabel; +GLEW_FUN_EXPORT PFNGLOBJECTPTRLABELPROC __glewObjectPtrLabel; +GLEW_FUN_EXPORT PFNGLPOPDEBUGGROUPPROC __glewPopDebugGroup; +GLEW_FUN_EXPORT PFNGLPUSHDEBUGGROUPPROC __glewPushDebugGroup; + +GLEW_FUN_EXPORT PFNGLMAXSHADERCOMPILERTHREADSKHRPROC __glewMaxShaderCompilerThreadsKHR; + +GLEW_FUN_EXPORT PFNGLGETNUNIFORMFVPROC __glewGetnUniformfv; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMIVPROC __glewGetnUniformiv; +GLEW_FUN_EXPORT PFNGLGETNUNIFORMUIVPROC __glewGetnUniformuiv; +GLEW_FUN_EXPORT PFNGLREADNPIXELSPROC __glewReadnPixels; + +GLEW_FUN_EXPORT PFNGLBUFFERREGIONENABLEDPROC __glewBufferRegionEnabled; +GLEW_FUN_EXPORT PFNGLDELETEBUFFERREGIONPROC __glewDeleteBufferRegion; +GLEW_FUN_EXPORT PFNGLDRAWBUFFERREGIONPROC __glewDrawBufferRegion; +GLEW_FUN_EXPORT PFNGLNEWBUFFERREGIONPROC __glewNewBufferRegion; +GLEW_FUN_EXPORT PFNGLREADBUFFERREGIONPROC __glewReadBufferRegion; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERPARAMETERIMESAPROC __glewFramebufferParameteriMESA; +GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERIVMESAPROC __glewGetFramebufferParameterivMESA; + +GLEW_FUN_EXPORT PFNGLRESIZEBUFFERSMESAPROC __glewResizeBuffersMESA; + +GLEW_FUN_EXPORT PFNGLWINDOWPOS2DMESAPROC __glewWindowPos2dMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVMESAPROC __glewWindowPos2dvMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2FMESAPROC __glewWindowPos2fMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVMESAPROC __glewWindowPos2fvMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2IMESAPROC __glewWindowPos2iMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVMESAPROC __glewWindowPos2ivMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2SMESAPROC __glewWindowPos2sMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVMESAPROC __glewWindowPos2svMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3DMESAPROC __glewWindowPos3dMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVMESAPROC __glewWindowPos3dvMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3FMESAPROC __glewWindowPos3fMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVMESAPROC __glewWindowPos3fvMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3IMESAPROC __glewWindowPos3iMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVMESAPROC __glewWindowPos3ivMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3SMESAPROC __glewWindowPos3sMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVMESAPROC __glewWindowPos3svMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS4DMESAPROC __glewWindowPos4dMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS4DVMESAPROC __glewWindowPos4dvMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS4FMESAPROC __glewWindowPos4fMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS4FVMESAPROC __glewWindowPos4fvMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS4IMESAPROC __glewWindowPos4iMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS4IVMESAPROC __glewWindowPos4ivMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS4SMESAPROC __glewWindowPos4sMESA; +GLEW_FUN_EXPORT PFNGLWINDOWPOS4SVMESAPROC __glewWindowPos4svMESA; + +GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERNVXPROC __glewBeginConditionalRenderNVX; +GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERNVXPROC __glewEndConditionalRenderNVX; + +GLEW_FUN_EXPORT PFNGLASYNCCOPYBUFFERSUBDATANVXPROC __glewAsyncCopyBufferSubDataNVX; +GLEW_FUN_EXPORT PFNGLASYNCCOPYIMAGESUBDATANVXPROC __glewAsyncCopyImageSubDataNVX; +GLEW_FUN_EXPORT PFNGLMULTICASTSCISSORARRAYVNVXPROC __glewMulticastScissorArrayvNVX; +GLEW_FUN_EXPORT PFNGLMULTICASTVIEWPORTARRAYVNVXPROC __glewMulticastViewportArrayvNVX; +GLEW_FUN_EXPORT PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC __glewMulticastViewportPositionWScaleNVX; +GLEW_FUN_EXPORT PFNGLUPLOADGPUMASKNVXPROC __glewUploadGpuMaskNVX; + +GLEW_FUN_EXPORT PFNGLLGPUCOPYIMAGESUBDATANVXPROC __glewLGPUCopyImageSubDataNVX; +GLEW_FUN_EXPORT PFNGLLGPUINTERLOCKNVXPROC __glewLGPUInterlockNVX; +GLEW_FUN_EXPORT PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC __glewLGPUNamedBufferSubDataNVX; + +GLEW_FUN_EXPORT PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC __glewClientWaitSemaphoreui64NVX; +GLEW_FUN_EXPORT PFNGLSIGNALSEMAPHOREUI64NVXPROC __glewSignalSemaphoreui64NVX; +GLEW_FUN_EXPORT PFNGLWAITSEMAPHOREUI64NVXPROC __glewWaitSemaphoreui64NVX; + +GLEW_FUN_EXPORT PFNGLSTEREOPARAMETERFNVPROC __glewStereoParameterfNV; +GLEW_FUN_EXPORT PFNGLSTEREOPARAMETERINVPROC __glewStereoParameteriNV; + +GLEW_FUN_EXPORT PFNGLALPHATOCOVERAGEDITHERCONTROLNVPROC __glewAlphaToCoverageDitherControlNV; + +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSNVPROC __glewMultiDrawArraysIndirectBindlessNV; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSNVPROC __glewMultiDrawElementsIndirectBindlessNV; + +GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSCOUNTNVPROC __glewMultiDrawArraysIndirectBindlessCountNV; +GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSCOUNTNVPROC __glewMultiDrawElementsIndirectBindlessCountNV; + +GLEW_FUN_EXPORT PFNGLGETIMAGEHANDLENVPROC __glewGetImageHandleNV; +GLEW_FUN_EXPORT PFNGLGETTEXTUREHANDLENVPROC __glewGetTextureHandleNV; +GLEW_FUN_EXPORT PFNGLGETTEXTURESAMPLERHANDLENVPROC __glewGetTextureSamplerHandleNV; +GLEW_FUN_EXPORT PFNGLISIMAGEHANDLERESIDENTNVPROC __glewIsImageHandleResidentNV; +GLEW_FUN_EXPORT PFNGLISTEXTUREHANDLERESIDENTNVPROC __glewIsTextureHandleResidentNV; +GLEW_FUN_EXPORT PFNGLMAKEIMAGEHANDLENONRESIDENTNVPROC __glewMakeImageHandleNonResidentNV; +GLEW_FUN_EXPORT PFNGLMAKEIMAGEHANDLERESIDENTNVPROC __glewMakeImageHandleResidentNV; +GLEW_FUN_EXPORT PFNGLMAKETEXTUREHANDLENONRESIDENTNVPROC __glewMakeTextureHandleNonResidentNV; +GLEW_FUN_EXPORT PFNGLMAKETEXTUREHANDLERESIDENTNVPROC __glewMakeTextureHandleResidentNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64NVPROC __glewProgramUniformHandleui64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64VNVPROC __glewProgramUniformHandleui64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64NVPROC __glewUniformHandleui64NV; +GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64VNVPROC __glewUniformHandleui64vNV; + +GLEW_FUN_EXPORT PFNGLBLENDBARRIERNVPROC __glewBlendBarrierNV; +GLEW_FUN_EXPORT PFNGLBLENDPARAMETERINVPROC __glewBlendParameteriNV; + +GLEW_FUN_EXPORT PFNGLVIEWPORTPOSITIONWSCALENVPROC __glewViewportPositionWScaleNV; + +GLEW_FUN_EXPORT PFNGLCALLCOMMANDLISTNVPROC __glewCallCommandListNV; +GLEW_FUN_EXPORT PFNGLCOMMANDLISTSEGMENTSNVPROC __glewCommandListSegmentsNV; +GLEW_FUN_EXPORT PFNGLCOMPILECOMMANDLISTNVPROC __glewCompileCommandListNV; +GLEW_FUN_EXPORT PFNGLCREATECOMMANDLISTSNVPROC __glewCreateCommandListsNV; +GLEW_FUN_EXPORT PFNGLCREATESTATESNVPROC __glewCreateStatesNV; +GLEW_FUN_EXPORT PFNGLDELETECOMMANDLISTSNVPROC __glewDeleteCommandListsNV; +GLEW_FUN_EXPORT PFNGLDELETESTATESNVPROC __glewDeleteStatesNV; +GLEW_FUN_EXPORT PFNGLDRAWCOMMANDSADDRESSNVPROC __glewDrawCommandsAddressNV; +GLEW_FUN_EXPORT PFNGLDRAWCOMMANDSNVPROC __glewDrawCommandsNV; +GLEW_FUN_EXPORT PFNGLDRAWCOMMANDSSTATESADDRESSNVPROC __glewDrawCommandsStatesAddressNV; +GLEW_FUN_EXPORT PFNGLDRAWCOMMANDSSTATESNVPROC __glewDrawCommandsStatesNV; +GLEW_FUN_EXPORT PFNGLGETCOMMANDHEADERNVPROC __glewGetCommandHeaderNV; +GLEW_FUN_EXPORT PFNGLGETSTAGEINDEXNVPROC __glewGetStageIndexNV; +GLEW_FUN_EXPORT PFNGLISCOMMANDLISTNVPROC __glewIsCommandListNV; +GLEW_FUN_EXPORT PFNGLISSTATENVPROC __glewIsStateNV; +GLEW_FUN_EXPORT PFNGLLISTDRAWCOMMANDSSTATESCLIENTNVPROC __glewListDrawCommandsStatesClientNV; +GLEW_FUN_EXPORT PFNGLSTATECAPTURENVPROC __glewStateCaptureNV; + +GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERNVPROC __glewBeginConditionalRenderNV; +GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERNVPROC __glewEndConditionalRenderNV; + +GLEW_FUN_EXPORT PFNGLSUBPIXELPRECISIONBIASNVPROC __glewSubpixelPrecisionBiasNV; + +GLEW_FUN_EXPORT PFNGLCONSERVATIVERASTERPARAMETERFNVPROC __glewConservativeRasterParameterfNV; + +GLEW_FUN_EXPORT PFNGLCONSERVATIVERASTERPARAMETERINVPROC __glewConservativeRasterParameteriNV; + +GLEW_FUN_EXPORT PFNGLCOPYBUFFERSUBDATANVPROC __glewCopyBufferSubDataNV; + +GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATANVPROC __glewCopyImageSubDataNV; + +GLEW_FUN_EXPORT PFNGLCLEARDEPTHDNVPROC __glewClearDepthdNV; +GLEW_FUN_EXPORT PFNGLDEPTHBOUNDSDNVPROC __glewDepthBoundsdNV; +GLEW_FUN_EXPORT PFNGLDEPTHRANGEDNVPROC __glewDepthRangedNV; + +GLEW_FUN_EXPORT PFNGLDRAWBUFFERSNVPROC __glewDrawBuffersNV; + +GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDNVPROC __glewDrawArraysInstancedNV; +GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDNVPROC __glewDrawElementsInstancedNV; + +GLEW_FUN_EXPORT PFNGLDRAWTEXTURENVPROC __glewDrawTextureNV; + +GLEW_FUN_EXPORT PFNGLDRAWVKIMAGENVPROC __glewDrawVkImageNV; +GLEW_FUN_EXPORT PFNGLGETVKPROCADDRNVPROC __glewGetVkProcAddrNV; +GLEW_FUN_EXPORT PFNGLSIGNALVKFENCENVPROC __glewSignalVkFenceNV; +GLEW_FUN_EXPORT PFNGLSIGNALVKSEMAPHORENVPROC __glewSignalVkSemaphoreNV; +GLEW_FUN_EXPORT PFNGLWAITVKSEMAPHORENVPROC __glewWaitVkSemaphoreNV; + +GLEW_FUN_EXPORT PFNGLEVALMAPSNVPROC __glewEvalMapsNV; +GLEW_FUN_EXPORT PFNGLGETMAPATTRIBPARAMETERFVNVPROC __glewGetMapAttribParameterfvNV; +GLEW_FUN_EXPORT PFNGLGETMAPATTRIBPARAMETERIVNVPROC __glewGetMapAttribParameterivNV; +GLEW_FUN_EXPORT PFNGLGETMAPCONTROLPOINTSNVPROC __glewGetMapControlPointsNV; +GLEW_FUN_EXPORT PFNGLGETMAPPARAMETERFVNVPROC __glewGetMapParameterfvNV; +GLEW_FUN_EXPORT PFNGLGETMAPPARAMETERIVNVPROC __glewGetMapParameterivNV; +GLEW_FUN_EXPORT PFNGLMAPCONTROLPOINTSNVPROC __glewMapControlPointsNV; +GLEW_FUN_EXPORT PFNGLMAPPARAMETERFVNVPROC __glewMapParameterfvNV; +GLEW_FUN_EXPORT PFNGLMAPPARAMETERIVNVPROC __glewMapParameterivNV; + +GLEW_FUN_EXPORT PFNGLGETMULTISAMPLEFVNVPROC __glewGetMultisamplefvNV; +GLEW_FUN_EXPORT PFNGLSAMPLEMASKINDEXEDNVPROC __glewSampleMaskIndexedNV; +GLEW_FUN_EXPORT PFNGLTEXRENDERBUFFERNVPROC __glewTexRenderbufferNV; + +GLEW_FUN_EXPORT PFNGLDELETEFENCESNVPROC __glewDeleteFencesNV; +GLEW_FUN_EXPORT PFNGLFINISHFENCENVPROC __glewFinishFenceNV; +GLEW_FUN_EXPORT PFNGLGENFENCESNVPROC __glewGenFencesNV; +GLEW_FUN_EXPORT PFNGLGETFENCEIVNVPROC __glewGetFenceivNV; +GLEW_FUN_EXPORT PFNGLISFENCENVPROC __glewIsFenceNV; +GLEW_FUN_EXPORT PFNGLSETFENCENVPROC __glewSetFenceNV; +GLEW_FUN_EXPORT PFNGLTESTFENCENVPROC __glewTestFenceNV; + +GLEW_FUN_EXPORT PFNGLFRAGMENTCOVERAGECOLORNVPROC __glewFragmentCoverageColorNV; + +GLEW_FUN_EXPORT PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC __glewGetProgramNamedParameterdvNV; +GLEW_FUN_EXPORT PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC __glewGetProgramNamedParameterfvNV; +GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4DNVPROC __glewProgramNamedParameter4dNV; +GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC __glewProgramNamedParameter4dvNV; +GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4FNVPROC __glewProgramNamedParameter4fNV; +GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC __glewProgramNamedParameter4fvNV; + +GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFERNVPROC __glewBlitFramebufferNV; + +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLENVPROC __glewRenderbufferStorageMultisampleNV; + +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC __glewRenderbufferStorageMultisampleCoverageNV; + +GLEW_FUN_EXPORT PFNGLPROGRAMVERTEXLIMITNVPROC __glewProgramVertexLimitNV; + +GLEW_FUN_EXPORT PFNGLMULTICASTBARRIERNVPROC __glewMulticastBarrierNV; +GLEW_FUN_EXPORT PFNGLMULTICASTBLITFRAMEBUFFERNVPROC __glewMulticastBlitFramebufferNV; +GLEW_FUN_EXPORT PFNGLMULTICASTBUFFERSUBDATANVPROC __glewMulticastBufferSubDataNV; +GLEW_FUN_EXPORT PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC __glewMulticastCopyBufferSubDataNV; +GLEW_FUN_EXPORT PFNGLMULTICASTCOPYIMAGESUBDATANVPROC __glewMulticastCopyImageSubDataNV; +GLEW_FUN_EXPORT PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC __glewMulticastFramebufferSampleLocationsfvNV; +GLEW_FUN_EXPORT PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC __glewMulticastGetQueryObjecti64vNV; +GLEW_FUN_EXPORT PFNGLMULTICASTGETQUERYOBJECTIVNVPROC __glewMulticastGetQueryObjectivNV; +GLEW_FUN_EXPORT PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC __glewMulticastGetQueryObjectui64vNV; +GLEW_FUN_EXPORT PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC __glewMulticastGetQueryObjectuivNV; +GLEW_FUN_EXPORT PFNGLMULTICASTWAITSYNCNVPROC __glewMulticastWaitSyncNV; +GLEW_FUN_EXPORT PFNGLRENDERGPUMASKNVPROC __glewRenderGpuMaskNV; + +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4INVPROC __glewProgramEnvParameterI4iNV; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4IVNVPROC __glewProgramEnvParameterI4ivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4UINVPROC __glewProgramEnvParameterI4uiNV; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4UIVNVPROC __glewProgramEnvParameterI4uivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERSI4IVNVPROC __glewProgramEnvParametersI4ivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC __glewProgramEnvParametersI4uivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4INVPROC __glewProgramLocalParameterI4iNV; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC __glewProgramLocalParameterI4ivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4UINVPROC __glewProgramLocalParameterI4uiNV; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC __glewProgramLocalParameterI4uivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC __glewProgramLocalParametersI4ivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC __glewProgramLocalParametersI4uivNV; + +GLEW_FUN_EXPORT PFNGLGETUNIFORMI64VNVPROC __glewGetUniformi64vNV; +GLEW_FUN_EXPORT PFNGLGETUNIFORMUI64VNVPROC __glewGetUniformui64vNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64NVPROC __glewProgramUniform1i64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64VNVPROC __glewProgramUniform1i64vNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64NVPROC __glewProgramUniform1ui64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64VNVPROC __glewProgramUniform1ui64vNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64NVPROC __glewProgramUniform2i64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64VNVPROC __glewProgramUniform2i64vNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64NVPROC __glewProgramUniform2ui64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64VNVPROC __glewProgramUniform2ui64vNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64NVPROC __glewProgramUniform3i64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64VNVPROC __glewProgramUniform3i64vNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64NVPROC __glewProgramUniform3ui64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64VNVPROC __glewProgramUniform3ui64vNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64NVPROC __glewProgramUniform4i64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64VNVPROC __glewProgramUniform4i64vNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64NVPROC __glewProgramUniform4ui64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64VNVPROC __glewProgramUniform4ui64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORM1I64NVPROC __glewUniform1i64NV; +GLEW_FUN_EXPORT PFNGLUNIFORM1I64VNVPROC __glewUniform1i64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORM1UI64NVPROC __glewUniform1ui64NV; +GLEW_FUN_EXPORT PFNGLUNIFORM1UI64VNVPROC __glewUniform1ui64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORM2I64NVPROC __glewUniform2i64NV; +GLEW_FUN_EXPORT PFNGLUNIFORM2I64VNVPROC __glewUniform2i64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORM2UI64NVPROC __glewUniform2ui64NV; +GLEW_FUN_EXPORT PFNGLUNIFORM2UI64VNVPROC __glewUniform2ui64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORM3I64NVPROC __glewUniform3i64NV; +GLEW_FUN_EXPORT PFNGLUNIFORM3I64VNVPROC __glewUniform3i64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORM3UI64NVPROC __glewUniform3ui64NV; +GLEW_FUN_EXPORT PFNGLUNIFORM3UI64VNVPROC __glewUniform3ui64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORM4I64NVPROC __glewUniform4i64NV; +GLEW_FUN_EXPORT PFNGLUNIFORM4I64VNVPROC __glewUniform4i64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORM4UI64NVPROC __glewUniform4ui64NV; +GLEW_FUN_EXPORT PFNGLUNIFORM4UI64VNVPROC __glewUniform4ui64vNV; + +GLEW_FUN_EXPORT PFNGLCOLOR3HNVPROC __glewColor3hNV; +GLEW_FUN_EXPORT PFNGLCOLOR3HVNVPROC __glewColor3hvNV; +GLEW_FUN_EXPORT PFNGLCOLOR4HNVPROC __glewColor4hNV; +GLEW_FUN_EXPORT PFNGLCOLOR4HVNVPROC __glewColor4hvNV; +GLEW_FUN_EXPORT PFNGLFOGCOORDHNVPROC __glewFogCoordhNV; +GLEW_FUN_EXPORT PFNGLFOGCOORDHVNVPROC __glewFogCoordhvNV; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1HNVPROC __glewMultiTexCoord1hNV; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1HVNVPROC __glewMultiTexCoord1hvNV; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2HNVPROC __glewMultiTexCoord2hNV; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2HVNVPROC __glewMultiTexCoord2hvNV; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3HNVPROC __glewMultiTexCoord3hNV; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3HVNVPROC __glewMultiTexCoord3hvNV; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4HNVPROC __glewMultiTexCoord4hNV; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4HVNVPROC __glewMultiTexCoord4hvNV; +GLEW_FUN_EXPORT PFNGLNORMAL3HNVPROC __glewNormal3hNV; +GLEW_FUN_EXPORT PFNGLNORMAL3HVNVPROC __glewNormal3hvNV; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3HNVPROC __glewSecondaryColor3hNV; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3HVNVPROC __glewSecondaryColor3hvNV; +GLEW_FUN_EXPORT PFNGLTEXCOORD1HNVPROC __glewTexCoord1hNV; +GLEW_FUN_EXPORT PFNGLTEXCOORD1HVNVPROC __glewTexCoord1hvNV; +GLEW_FUN_EXPORT PFNGLTEXCOORD2HNVPROC __glewTexCoord2hNV; +GLEW_FUN_EXPORT PFNGLTEXCOORD2HVNVPROC __glewTexCoord2hvNV; +GLEW_FUN_EXPORT PFNGLTEXCOORD3HNVPROC __glewTexCoord3hNV; +GLEW_FUN_EXPORT PFNGLTEXCOORD3HVNVPROC __glewTexCoord3hvNV; +GLEW_FUN_EXPORT PFNGLTEXCOORD4HNVPROC __glewTexCoord4hNV; +GLEW_FUN_EXPORT PFNGLTEXCOORD4HVNVPROC __glewTexCoord4hvNV; +GLEW_FUN_EXPORT PFNGLVERTEX2HNVPROC __glewVertex2hNV; +GLEW_FUN_EXPORT PFNGLVERTEX2HVNVPROC __glewVertex2hvNV; +GLEW_FUN_EXPORT PFNGLVERTEX3HNVPROC __glewVertex3hNV; +GLEW_FUN_EXPORT PFNGLVERTEX3HVNVPROC __glewVertex3hvNV; +GLEW_FUN_EXPORT PFNGLVERTEX4HNVPROC __glewVertex4hNV; +GLEW_FUN_EXPORT PFNGLVERTEX4HVNVPROC __glewVertex4hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1HNVPROC __glewVertexAttrib1hNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1HVNVPROC __glewVertexAttrib1hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2HNVPROC __glewVertexAttrib2hNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2HVNVPROC __glewVertexAttrib2hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3HNVPROC __glewVertexAttrib3hNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3HVNVPROC __glewVertexAttrib3hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4HNVPROC __glewVertexAttrib4hNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4HVNVPROC __glewVertexAttrib4hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1HVNVPROC __glewVertexAttribs1hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2HVNVPROC __glewVertexAttribs2hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3HVNVPROC __glewVertexAttribs3hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4HVNVPROC __glewVertexAttribs4hvNV; +GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTHNVPROC __glewVertexWeighthNV; +GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTHVNVPROC __glewVertexWeighthvNV; + +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORNVPROC __glewVertexAttribDivisorNV; + +GLEW_FUN_EXPORT PFNGLGETINTERNALFORMATSAMPLEIVNVPROC __glewGetInternalformatSampleivNV; + +GLEW_FUN_EXPORT PFNGLBUFFERATTACHMEMORYNVPROC __glewBufferAttachMemoryNV; +GLEW_FUN_EXPORT PFNGLGETMEMORYOBJECTDETACHEDRESOURCESUIVNVPROC __glewGetMemoryObjectDetachedResourcesuivNV; +GLEW_FUN_EXPORT PFNGLNAMEDBUFFERATTACHMEMORYNVPROC __glewNamedBufferAttachMemoryNV; +GLEW_FUN_EXPORT PFNGLRESETMEMORYOBJECTPARAMETERNVPROC __glewResetMemoryObjectParameterNV; +GLEW_FUN_EXPORT PFNGLTEXATTACHMEMORYNVPROC __glewTexAttachMemoryNV; +GLEW_FUN_EXPORT PFNGLTEXTUREATTACHMEMORYNVPROC __glewTextureAttachMemoryNV; + +GLEW_FUN_EXPORT PFNGLDRAWMESHTASKSINDIRECTNVPROC __glewDrawMeshTasksIndirectNV; +GLEW_FUN_EXPORT PFNGLDRAWMESHTASKSNVPROC __glewDrawMeshTasksNV; +GLEW_FUN_EXPORT PFNGLMULTIDRAWMESHTASKSINDIRECTCOUNTNVPROC __glewMultiDrawMeshTasksIndirectCountNV; +GLEW_FUN_EXPORT PFNGLMULTIDRAWMESHTASKSINDIRECTNVPROC __glewMultiDrawMeshTasksIndirectNV; + +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3FVNVPROC __glewUniformMatrix2x3fvNV; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4FVNVPROC __glewUniformMatrix2x4fvNV; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2FVNVPROC __glewUniformMatrix3x2fvNV; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4FVNVPROC __glewUniformMatrix3x4fvNV; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2FVNVPROC __glewUniformMatrix4x2fvNV; +GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3FVNVPROC __glewUniformMatrix4x3fvNV; + +GLEW_FUN_EXPORT PFNGLBEGINOCCLUSIONQUERYNVPROC __glewBeginOcclusionQueryNV; +GLEW_FUN_EXPORT PFNGLDELETEOCCLUSIONQUERIESNVPROC __glewDeleteOcclusionQueriesNV; +GLEW_FUN_EXPORT PFNGLENDOCCLUSIONQUERYNVPROC __glewEndOcclusionQueryNV; +GLEW_FUN_EXPORT PFNGLGENOCCLUSIONQUERIESNVPROC __glewGenOcclusionQueriesNV; +GLEW_FUN_EXPORT PFNGLGETOCCLUSIONQUERYIVNVPROC __glewGetOcclusionQueryivNV; +GLEW_FUN_EXPORT PFNGLGETOCCLUSIONQUERYUIVNVPROC __glewGetOcclusionQueryuivNV; +GLEW_FUN_EXPORT PFNGLISOCCLUSIONQUERYNVPROC __glewIsOcclusionQueryNV; + +GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC __glewProgramBufferParametersIivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC __glewProgramBufferParametersIuivNV; +GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC __glewProgramBufferParametersfvNV; + +GLEW_FUN_EXPORT PFNGLCOPYPATHNVPROC __glewCopyPathNV; +GLEW_FUN_EXPORT PFNGLCOVERFILLPATHINSTANCEDNVPROC __glewCoverFillPathInstancedNV; +GLEW_FUN_EXPORT PFNGLCOVERFILLPATHNVPROC __glewCoverFillPathNV; +GLEW_FUN_EXPORT PFNGLCOVERSTROKEPATHINSTANCEDNVPROC __glewCoverStrokePathInstancedNV; +GLEW_FUN_EXPORT PFNGLCOVERSTROKEPATHNVPROC __glewCoverStrokePathNV; +GLEW_FUN_EXPORT PFNGLDELETEPATHSNVPROC __glewDeletePathsNV; +GLEW_FUN_EXPORT PFNGLGENPATHSNVPROC __glewGenPathsNV; +GLEW_FUN_EXPORT PFNGLGETPATHCOLORGENFVNVPROC __glewGetPathColorGenfvNV; +GLEW_FUN_EXPORT PFNGLGETPATHCOLORGENIVNVPROC __glewGetPathColorGenivNV; +GLEW_FUN_EXPORT PFNGLGETPATHCOMMANDSNVPROC __glewGetPathCommandsNV; +GLEW_FUN_EXPORT PFNGLGETPATHCOORDSNVPROC __glewGetPathCoordsNV; +GLEW_FUN_EXPORT PFNGLGETPATHDASHARRAYNVPROC __glewGetPathDashArrayNV; +GLEW_FUN_EXPORT PFNGLGETPATHLENGTHNVPROC __glewGetPathLengthNV; +GLEW_FUN_EXPORT PFNGLGETPATHMETRICRANGENVPROC __glewGetPathMetricRangeNV; +GLEW_FUN_EXPORT PFNGLGETPATHMETRICSNVPROC __glewGetPathMetricsNV; +GLEW_FUN_EXPORT PFNGLGETPATHPARAMETERFVNVPROC __glewGetPathParameterfvNV; +GLEW_FUN_EXPORT PFNGLGETPATHPARAMETERIVNVPROC __glewGetPathParameterivNV; +GLEW_FUN_EXPORT PFNGLGETPATHSPACINGNVPROC __glewGetPathSpacingNV; +GLEW_FUN_EXPORT PFNGLGETPATHTEXGENFVNVPROC __glewGetPathTexGenfvNV; +GLEW_FUN_EXPORT PFNGLGETPATHTEXGENIVNVPROC __glewGetPathTexGenivNV; +GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCEFVNVPROC __glewGetProgramResourcefvNV; +GLEW_FUN_EXPORT PFNGLINTERPOLATEPATHSNVPROC __glewInterpolatePathsNV; +GLEW_FUN_EXPORT PFNGLISPATHNVPROC __glewIsPathNV; +GLEW_FUN_EXPORT PFNGLISPOINTINFILLPATHNVPROC __glewIsPointInFillPathNV; +GLEW_FUN_EXPORT PFNGLISPOINTINSTROKEPATHNVPROC __glewIsPointInStrokePathNV; +GLEW_FUN_EXPORT PFNGLMATRIXLOAD3X2FNVPROC __glewMatrixLoad3x2fNV; +GLEW_FUN_EXPORT PFNGLMATRIXLOAD3X3FNVPROC __glewMatrixLoad3x3fNV; +GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSE3X3FNVPROC __glewMatrixLoadTranspose3x3fNV; +GLEW_FUN_EXPORT PFNGLMATRIXMULT3X2FNVPROC __glewMatrixMult3x2fNV; +GLEW_FUN_EXPORT PFNGLMATRIXMULT3X3FNVPROC __glewMatrixMult3x3fNV; +GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSE3X3FNVPROC __glewMatrixMultTranspose3x3fNV; +GLEW_FUN_EXPORT PFNGLPATHCOLORGENNVPROC __glewPathColorGenNV; +GLEW_FUN_EXPORT PFNGLPATHCOMMANDSNVPROC __glewPathCommandsNV; +GLEW_FUN_EXPORT PFNGLPATHCOORDSNVPROC __glewPathCoordsNV; +GLEW_FUN_EXPORT PFNGLPATHCOVERDEPTHFUNCNVPROC __glewPathCoverDepthFuncNV; +GLEW_FUN_EXPORT PFNGLPATHDASHARRAYNVPROC __glewPathDashArrayNV; +GLEW_FUN_EXPORT PFNGLPATHFOGGENNVPROC __glewPathFogGenNV; +GLEW_FUN_EXPORT PFNGLPATHGLYPHINDEXARRAYNVPROC __glewPathGlyphIndexArrayNV; +GLEW_FUN_EXPORT PFNGLPATHGLYPHINDEXRANGENVPROC __glewPathGlyphIndexRangeNV; +GLEW_FUN_EXPORT PFNGLPATHGLYPHRANGENVPROC __glewPathGlyphRangeNV; +GLEW_FUN_EXPORT PFNGLPATHGLYPHSNVPROC __glewPathGlyphsNV; +GLEW_FUN_EXPORT PFNGLPATHMEMORYGLYPHINDEXARRAYNVPROC __glewPathMemoryGlyphIndexArrayNV; +GLEW_FUN_EXPORT PFNGLPATHPARAMETERFNVPROC __glewPathParameterfNV; +GLEW_FUN_EXPORT PFNGLPATHPARAMETERFVNVPROC __glewPathParameterfvNV; +GLEW_FUN_EXPORT PFNGLPATHPARAMETERINVPROC __glewPathParameteriNV; +GLEW_FUN_EXPORT PFNGLPATHPARAMETERIVNVPROC __glewPathParameterivNV; +GLEW_FUN_EXPORT PFNGLPATHSTENCILDEPTHOFFSETNVPROC __glewPathStencilDepthOffsetNV; +GLEW_FUN_EXPORT PFNGLPATHSTENCILFUNCNVPROC __glewPathStencilFuncNV; +GLEW_FUN_EXPORT PFNGLPATHSTRINGNVPROC __glewPathStringNV; +GLEW_FUN_EXPORT PFNGLPATHSUBCOMMANDSNVPROC __glewPathSubCommandsNV; +GLEW_FUN_EXPORT PFNGLPATHSUBCOORDSNVPROC __glewPathSubCoordsNV; +GLEW_FUN_EXPORT PFNGLPATHTEXGENNVPROC __glewPathTexGenNV; +GLEW_FUN_EXPORT PFNGLPOINTALONGPATHNVPROC __glewPointAlongPathNV; +GLEW_FUN_EXPORT PFNGLPROGRAMPATHFRAGMENTINPUTGENNVPROC __glewProgramPathFragmentInputGenNV; +GLEW_FUN_EXPORT PFNGLSTENCILFILLPATHINSTANCEDNVPROC __glewStencilFillPathInstancedNV; +GLEW_FUN_EXPORT PFNGLSTENCILFILLPATHNVPROC __glewStencilFillPathNV; +GLEW_FUN_EXPORT PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC __glewStencilStrokePathInstancedNV; +GLEW_FUN_EXPORT PFNGLSTENCILSTROKEPATHNVPROC __glewStencilStrokePathNV; +GLEW_FUN_EXPORT PFNGLSTENCILTHENCOVERFILLPATHINSTANCEDNVPROC __glewStencilThenCoverFillPathInstancedNV; +GLEW_FUN_EXPORT PFNGLSTENCILTHENCOVERFILLPATHNVPROC __glewStencilThenCoverFillPathNV; +GLEW_FUN_EXPORT PFNGLSTENCILTHENCOVERSTROKEPATHINSTANCEDNVPROC __glewStencilThenCoverStrokePathInstancedNV; +GLEW_FUN_EXPORT PFNGLSTENCILTHENCOVERSTROKEPATHNVPROC __glewStencilThenCoverStrokePathNV; +GLEW_FUN_EXPORT PFNGLTRANSFORMPATHNVPROC __glewTransformPathNV; +GLEW_FUN_EXPORT PFNGLWEIGHTPATHSNVPROC __glewWeightPathsNV; + +GLEW_FUN_EXPORT PFNGLFLUSHPIXELDATARANGENVPROC __glewFlushPixelDataRangeNV; +GLEW_FUN_EXPORT PFNGLPIXELDATARANGENVPROC __glewPixelDataRangeNV; + +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERINVPROC __glewPointParameteriNV; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIVNVPROC __glewPointParameterivNV; + +GLEW_FUN_EXPORT PFNGLPOLYGONMODENVPROC __glewPolygonModeNV; + +GLEW_FUN_EXPORT PFNGLGETVIDEOI64VNVPROC __glewGetVideoi64vNV; +GLEW_FUN_EXPORT PFNGLGETVIDEOIVNVPROC __glewGetVideoivNV; +GLEW_FUN_EXPORT PFNGLGETVIDEOUI64VNVPROC __glewGetVideoui64vNV; +GLEW_FUN_EXPORT PFNGLGETVIDEOUIVNVPROC __glewGetVideouivNV; +GLEW_FUN_EXPORT PFNGLPRESENTFRAMEDUALFILLNVPROC __glewPresentFrameDualFillNV; +GLEW_FUN_EXPORT PFNGLPRESENTFRAMEKEYEDNVPROC __glewPresentFrameKeyedNV; + +GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTINDEXNVPROC __glewPrimitiveRestartIndexNV; +GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTNVPROC __glewPrimitiveRestartNV; + +GLEW_FUN_EXPORT PFNGLREADBUFFERNVPROC __glewReadBufferNV; + +GLEW_FUN_EXPORT PFNGLCOMBINERINPUTNVPROC __glewCombinerInputNV; +GLEW_FUN_EXPORT PFNGLCOMBINEROUTPUTNVPROC __glewCombinerOutputNV; +GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERFNVPROC __glewCombinerParameterfNV; +GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERFVNVPROC __glewCombinerParameterfvNV; +GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERINVPROC __glewCombinerParameteriNV; +GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERIVNVPROC __glewCombinerParameterivNV; +GLEW_FUN_EXPORT PFNGLFINALCOMBINERINPUTNVPROC __glewFinalCombinerInputNV; +GLEW_FUN_EXPORT PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC __glewGetCombinerInputParameterfvNV; +GLEW_FUN_EXPORT PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC __glewGetCombinerInputParameterivNV; +GLEW_FUN_EXPORT PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC __glewGetCombinerOutputParameterfvNV; +GLEW_FUN_EXPORT PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC __glewGetCombinerOutputParameterivNV; +GLEW_FUN_EXPORT PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC __glewGetFinalCombinerInputParameterfvNV; +GLEW_FUN_EXPORT PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC __glewGetFinalCombinerInputParameterivNV; + +GLEW_FUN_EXPORT PFNGLCOMBINERSTAGEPARAMETERFVNVPROC __glewCombinerStageParameterfvNV; +GLEW_FUN_EXPORT PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC __glewGetCombinerStageParameterfvNV; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERSAMPLELOCATIONSFVNVPROC __glewFramebufferSampleLocationsfvNV; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVNVPROC __glewNamedFramebufferSampleLocationsfvNV; +GLEW_FUN_EXPORT PFNGLRESOLVEDEPTHVALUESNVPROC __glewResolveDepthValuesNV; + +GLEW_FUN_EXPORT PFNGLSCISSOREXCLUSIVEARRAYVNVPROC __glewScissorExclusiveArrayvNV; +GLEW_FUN_EXPORT PFNGLSCISSOREXCLUSIVENVPROC __glewScissorExclusiveNV; + +GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERUI64VNVPROC __glewGetBufferParameterui64vNV; +GLEW_FUN_EXPORT PFNGLGETINTEGERUI64VNVPROC __glewGetIntegerui64vNV; +GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC __glewGetNamedBufferParameterui64vNV; +GLEW_FUN_EXPORT PFNGLISBUFFERRESIDENTNVPROC __glewIsBufferResidentNV; +GLEW_FUN_EXPORT PFNGLISNAMEDBUFFERRESIDENTNVPROC __glewIsNamedBufferResidentNV; +GLEW_FUN_EXPORT PFNGLMAKEBUFFERNONRESIDENTNVPROC __glewMakeBufferNonResidentNV; +GLEW_FUN_EXPORT PFNGLMAKEBUFFERRESIDENTNVPROC __glewMakeBufferResidentNV; +GLEW_FUN_EXPORT PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC __glewMakeNamedBufferNonResidentNV; +GLEW_FUN_EXPORT PFNGLMAKENAMEDBUFFERRESIDENTNVPROC __glewMakeNamedBufferResidentNV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMUI64NVPROC __glewProgramUniformui64NV; +GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMUI64VNVPROC __glewProgramUniformui64vNV; +GLEW_FUN_EXPORT PFNGLUNIFORMUI64NVPROC __glewUniformui64NV; +GLEW_FUN_EXPORT PFNGLUNIFORMUI64VNVPROC __glewUniformui64vNV; + +GLEW_FUN_EXPORT PFNGLBINDSHADINGRATEIMAGENVPROC __glewBindShadingRateImageNV; +GLEW_FUN_EXPORT PFNGLGETSHADINGRATEIMAGEPALETTENVPROC __glewGetShadingRateImagePaletteNV; +GLEW_FUN_EXPORT PFNGLGETSHADINGRATESAMPLELOCATIONIVNVPROC __glewGetShadingRateSampleLocationivNV; +GLEW_FUN_EXPORT PFNGLSHADINGRATEIMAGEBARRIERNVPROC __glewShadingRateImageBarrierNV; +GLEW_FUN_EXPORT PFNGLSHADINGRATEIMAGEPALETTENVPROC __glewShadingRateImagePaletteNV; +GLEW_FUN_EXPORT PFNGLSHADINGRATESAMPLEORDERCUSTOMNVPROC __glewShadingRateSampleOrderCustomNV; + +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DNVPROC __glewCompressedTexImage3DNV; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DNVPROC __glewCompressedTexSubImage3DNV; +GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DNVPROC __glewCopyTexSubImage3DNV; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERNVPROC __glewFramebufferTextureLayerNV; +GLEW_FUN_EXPORT PFNGLTEXIMAGE3DNVPROC __glewTexImage3DNV; +GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DNVPROC __glewTexSubImage3DNV; + +GLEW_FUN_EXPORT PFNGLTEXTUREBARRIERNVPROC __glewTextureBarrierNV; + +GLEW_FUN_EXPORT PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC __glewTexImage2DMultisampleCoverageNV; +GLEW_FUN_EXPORT PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC __glewTexImage3DMultisampleCoverageNV; +GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC __glewTextureImage2DMultisampleCoverageNV; +GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC __glewTextureImage2DMultisampleNV; +GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC __glewTextureImage3DMultisampleCoverageNV; +GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC __glewTextureImage3DMultisampleNV; + +GLEW_FUN_EXPORT PFNGLACTIVEVARYINGNVPROC __glewActiveVaryingNV; +GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKNVPROC __glewBeginTransformFeedbackNV; +GLEW_FUN_EXPORT PFNGLBINDBUFFERBASENVPROC __glewBindBufferBaseNV; +GLEW_FUN_EXPORT PFNGLBINDBUFFEROFFSETNVPROC __glewBindBufferOffsetNV; +GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGENVPROC __glewBindBufferRangeNV; +GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKNVPROC __glewEndTransformFeedbackNV; +GLEW_FUN_EXPORT PFNGLGETACTIVEVARYINGNVPROC __glewGetActiveVaryingNV; +GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC __glewGetTransformFeedbackVaryingNV; +GLEW_FUN_EXPORT PFNGLGETVARYINGLOCATIONNVPROC __glewGetVaryingLocationNV; +GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC __glewTransformFeedbackAttribsNV; +GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC __glewTransformFeedbackVaryingsNV; + +GLEW_FUN_EXPORT PFNGLBINDTRANSFORMFEEDBACKNVPROC __glewBindTransformFeedbackNV; +GLEW_FUN_EXPORT PFNGLDELETETRANSFORMFEEDBACKSNVPROC __glewDeleteTransformFeedbacksNV; +GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKNVPROC __glewDrawTransformFeedbackNV; +GLEW_FUN_EXPORT PFNGLGENTRANSFORMFEEDBACKSNVPROC __glewGenTransformFeedbacksNV; +GLEW_FUN_EXPORT PFNGLISTRANSFORMFEEDBACKNVPROC __glewIsTransformFeedbackNV; +GLEW_FUN_EXPORT PFNGLPAUSETRANSFORMFEEDBACKNVPROC __glewPauseTransformFeedbackNV; +GLEW_FUN_EXPORT PFNGLRESUMETRANSFORMFEEDBACKNVPROC __glewResumeTransformFeedbackNV; + +GLEW_FUN_EXPORT PFNGLVDPAUFININVPROC __glewVDPAUFiniNV; +GLEW_FUN_EXPORT PFNGLVDPAUGETSURFACEIVNVPROC __glewVDPAUGetSurfaceivNV; +GLEW_FUN_EXPORT PFNGLVDPAUINITNVPROC __glewVDPAUInitNV; +GLEW_FUN_EXPORT PFNGLVDPAUISSURFACENVPROC __glewVDPAUIsSurfaceNV; +GLEW_FUN_EXPORT PFNGLVDPAUMAPSURFACESNVPROC __glewVDPAUMapSurfacesNV; +GLEW_FUN_EXPORT PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC __glewVDPAURegisterOutputSurfaceNV; +GLEW_FUN_EXPORT PFNGLVDPAUREGISTERVIDEOSURFACENVPROC __glewVDPAURegisterVideoSurfaceNV; +GLEW_FUN_EXPORT PFNGLVDPAUSURFACEACCESSNVPROC __glewVDPAUSurfaceAccessNV; +GLEW_FUN_EXPORT PFNGLVDPAUUNMAPSURFACESNVPROC __glewVDPAUUnmapSurfacesNV; +GLEW_FUN_EXPORT PFNGLVDPAUUNREGISTERSURFACENVPROC __glewVDPAUUnregisterSurfaceNV; + +GLEW_FUN_EXPORT PFNGLVDPAUREGISTERVIDEOSURFACEWITHPICTURESTRUCTURENVPROC __glewVDPAURegisterVideoSurfaceWithPictureStructureNV; + +GLEW_FUN_EXPORT PFNGLFLUSHVERTEXARRAYRANGENVPROC __glewFlushVertexArrayRangeNV; +GLEW_FUN_EXPORT PFNGLVERTEXARRAYRANGENVPROC __glewVertexArrayRangeNV; + +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLI64VNVPROC __glewGetVertexAttribLi64vNV; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLUI64VNVPROC __glewGetVertexAttribLui64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1I64NVPROC __glewVertexAttribL1i64NV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1I64VNVPROC __glewVertexAttribL1i64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64NVPROC __glewVertexAttribL1ui64NV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64VNVPROC __glewVertexAttribL1ui64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2I64NVPROC __glewVertexAttribL2i64NV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2I64VNVPROC __glewVertexAttribL2i64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2UI64NVPROC __glewVertexAttribL2ui64NV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2UI64VNVPROC __glewVertexAttribL2ui64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3I64NVPROC __glewVertexAttribL3i64NV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3I64VNVPROC __glewVertexAttribL3i64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3UI64NVPROC __glewVertexAttribL3ui64NV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3UI64VNVPROC __glewVertexAttribL3ui64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4I64NVPROC __glewVertexAttribL4i64NV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4I64VNVPROC __glewVertexAttribL4i64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4UI64NVPROC __glewVertexAttribL4ui64NV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4UI64VNVPROC __glewVertexAttribL4ui64vNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLFORMATNVPROC __glewVertexAttribLFormatNV; + +GLEW_FUN_EXPORT PFNGLBUFFERADDRESSRANGENVPROC __glewBufferAddressRangeNV; +GLEW_FUN_EXPORT PFNGLCOLORFORMATNVPROC __glewColorFormatNV; +GLEW_FUN_EXPORT PFNGLEDGEFLAGFORMATNVPROC __glewEdgeFlagFormatNV; +GLEW_FUN_EXPORT PFNGLFOGCOORDFORMATNVPROC __glewFogCoordFormatNV; +GLEW_FUN_EXPORT PFNGLGETINTEGERUI64I_VNVPROC __glewGetIntegerui64i_vNV; +GLEW_FUN_EXPORT PFNGLINDEXFORMATNVPROC __glewIndexFormatNV; +GLEW_FUN_EXPORT PFNGLNORMALFORMATNVPROC __glewNormalFormatNV; +GLEW_FUN_EXPORT PFNGLSECONDARYCOLORFORMATNVPROC __glewSecondaryColorFormatNV; +GLEW_FUN_EXPORT PFNGLTEXCOORDFORMATNVPROC __glewTexCoordFormatNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBFORMATNVPROC __glewVertexAttribFormatNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIFORMATNVPROC __glewVertexAttribIFormatNV; +GLEW_FUN_EXPORT PFNGLVERTEXFORMATNVPROC __glewVertexFormatNV; + +GLEW_FUN_EXPORT PFNGLAREPROGRAMSRESIDENTNVPROC __glewAreProgramsResidentNV; +GLEW_FUN_EXPORT PFNGLBINDPROGRAMNVPROC __glewBindProgramNV; +GLEW_FUN_EXPORT PFNGLDELETEPROGRAMSNVPROC __glewDeleteProgramsNV; +GLEW_FUN_EXPORT PFNGLEXECUTEPROGRAMNVPROC __glewExecuteProgramNV; +GLEW_FUN_EXPORT PFNGLGENPROGRAMSNVPROC __glewGenProgramsNV; +GLEW_FUN_EXPORT PFNGLGETPROGRAMPARAMETERDVNVPROC __glewGetProgramParameterdvNV; +GLEW_FUN_EXPORT PFNGLGETPROGRAMPARAMETERFVNVPROC __glewGetProgramParameterfvNV; +GLEW_FUN_EXPORT PFNGLGETPROGRAMSTRINGNVPROC __glewGetProgramStringNV; +GLEW_FUN_EXPORT PFNGLGETPROGRAMIVNVPROC __glewGetProgramivNV; +GLEW_FUN_EXPORT PFNGLGETTRACKMATRIXIVNVPROC __glewGetTrackMatrixivNV; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVNVPROC __glewGetVertexAttribPointervNV; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVNVPROC __glewGetVertexAttribdvNV; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVNVPROC __glewGetVertexAttribfvNV; +GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVNVPROC __glewGetVertexAttribivNV; +GLEW_FUN_EXPORT PFNGLISPROGRAMNVPROC __glewIsProgramNV; +GLEW_FUN_EXPORT PFNGLLOADPROGRAMNVPROC __glewLoadProgramNV; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4DNVPROC __glewProgramParameter4dNV; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4DVNVPROC __glewProgramParameter4dvNV; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4FNVPROC __glewProgramParameter4fNV; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4FVNVPROC __glewProgramParameter4fvNV; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERS4DVNVPROC __glewProgramParameters4dvNV; +GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERS4FVNVPROC __glewProgramParameters4fvNV; +GLEW_FUN_EXPORT PFNGLREQUESTRESIDENTPROGRAMSNVPROC __glewRequestResidentProgramsNV; +GLEW_FUN_EXPORT PFNGLTRACKMATRIXNVPROC __glewTrackMatrixNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DNVPROC __glewVertexAttrib1dNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVNVPROC __glewVertexAttrib1dvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FNVPROC __glewVertexAttrib1fNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVNVPROC __glewVertexAttrib1fvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SNVPROC __glewVertexAttrib1sNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVNVPROC __glewVertexAttrib1svNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DNVPROC __glewVertexAttrib2dNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVNVPROC __glewVertexAttrib2dvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FNVPROC __glewVertexAttrib2fNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVNVPROC __glewVertexAttrib2fvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SNVPROC __glewVertexAttrib2sNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVNVPROC __glewVertexAttrib2svNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DNVPROC __glewVertexAttrib3dNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVNVPROC __glewVertexAttrib3dvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FNVPROC __glewVertexAttrib3fNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVNVPROC __glewVertexAttrib3fvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SNVPROC __glewVertexAttrib3sNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVNVPROC __glewVertexAttrib3svNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DNVPROC __glewVertexAttrib4dNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVNVPROC __glewVertexAttrib4dvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FNVPROC __glewVertexAttrib4fNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVNVPROC __glewVertexAttrib4fvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SNVPROC __glewVertexAttrib4sNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVNVPROC __glewVertexAttrib4svNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBNVPROC __glewVertexAttrib4ubNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVNVPROC __glewVertexAttrib4ubvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERNVPROC __glewVertexAttribPointerNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1DVNVPROC __glewVertexAttribs1dvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1FVNVPROC __glewVertexAttribs1fvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1SVNVPROC __glewVertexAttribs1svNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2DVNVPROC __glewVertexAttribs2dvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2FVNVPROC __glewVertexAttribs2fvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2SVNVPROC __glewVertexAttribs2svNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3DVNVPROC __glewVertexAttribs3dvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3FVNVPROC __glewVertexAttribs3fvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3SVNVPROC __glewVertexAttribs3svNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4DVNVPROC __glewVertexAttribs4dvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4FVNVPROC __glewVertexAttribs4fvNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4SVNVPROC __glewVertexAttribs4svNV; +GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4UBVNVPROC __glewVertexAttribs4ubvNV; + +GLEW_FUN_EXPORT PFNGLBEGINVIDEOCAPTURENVPROC __glewBeginVideoCaptureNV; +GLEW_FUN_EXPORT PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC __glewBindVideoCaptureStreamBufferNV; +GLEW_FUN_EXPORT PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC __glewBindVideoCaptureStreamTextureNV; +GLEW_FUN_EXPORT PFNGLENDVIDEOCAPTURENVPROC __glewEndVideoCaptureNV; +GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMDVNVPROC __glewGetVideoCaptureStreamdvNV; +GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMFVNVPROC __glewGetVideoCaptureStreamfvNV; +GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMIVNVPROC __glewGetVideoCaptureStreamivNV; +GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTUREIVNVPROC __glewGetVideoCaptureivNV; +GLEW_FUN_EXPORT PFNGLVIDEOCAPTURENVPROC __glewVideoCaptureNV; +GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC __glewVideoCaptureStreamParameterdvNV; +GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC __glewVideoCaptureStreamParameterfvNV; +GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC __glewVideoCaptureStreamParameterivNV; + +GLEW_FUN_EXPORT PFNGLDEPTHRANGEARRAYFVNVPROC __glewDepthRangeArrayfvNV; +GLEW_FUN_EXPORT PFNGLDEPTHRANGEINDEXEDFNVPROC __glewDepthRangeIndexedfNV; +GLEW_FUN_EXPORT PFNGLDISABLEINVPROC __glewDisableiNV; +GLEW_FUN_EXPORT PFNGLENABLEINVPROC __glewEnableiNV; +GLEW_FUN_EXPORT PFNGLGETFLOATI_VNVPROC __glewGetFloati_vNV; +GLEW_FUN_EXPORT PFNGLISENABLEDINVPROC __glewIsEnablediNV; +GLEW_FUN_EXPORT PFNGLSCISSORARRAYVNVPROC __glewScissorArrayvNV; +GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDNVPROC __glewScissorIndexedNV; +GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDVNVPROC __glewScissorIndexedvNV; +GLEW_FUN_EXPORT PFNGLVIEWPORTARRAYVNVPROC __glewViewportArrayvNV; +GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFNVPROC __glewViewportIndexedfNV; +GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFVNVPROC __glewViewportIndexedfvNV; + +GLEW_FUN_EXPORT PFNGLVIEWPORTSWIZZLENVPROC __glewViewportSwizzleNV; + +GLEW_FUN_EXPORT PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC __glewEGLImageTargetRenderbufferStorageOES; +GLEW_FUN_EXPORT PFNGLEGLIMAGETARGETTEXTURE2DOESPROC __glewEGLImageTargetTexture2DOES; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEOESPROC __glewBlendEquationSeparateOES; + +GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEOESPROC __glewBlendFuncSeparateOES; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONOESPROC __glewBlendEquationOES; + +GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATAOESPROC __glewCopyImageSubDataOES; + +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIOESPROC __glewBlendEquationSeparateiOES; +GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIOESPROC __glewBlendEquationiOES; +GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIOESPROC __glewBlendFuncSeparateiOES; +GLEW_FUN_EXPORT PFNGLBLENDFUNCIOESPROC __glewBlendFunciOES; +GLEW_FUN_EXPORT PFNGLCOLORMASKIOESPROC __glewColorMaskiOES; +GLEW_FUN_EXPORT PFNGLDISABLEIOESPROC __glewDisableiOES; +GLEW_FUN_EXPORT PFNGLENABLEIOESPROC __glewEnableiOES; +GLEW_FUN_EXPORT PFNGLISENABLEDIOESPROC __glewIsEnablediOES; + +GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFEROESPROC __glewBindFramebufferOES; +GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFEROESPROC __glewBindRenderbufferOES; +GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSOESPROC __glewCheckFramebufferStatusOES; +GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSOESPROC __glewDeleteFramebuffersOES; +GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSOESPROC __glewDeleteRenderbuffersOES; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFEROESPROC __glewFramebufferRenderbufferOES; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DOESPROC __glewFramebufferTexture2DOES; +GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSOESPROC __glewGenFramebuffersOES; +GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSOESPROC __glewGenRenderbuffersOES; +GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPOESPROC __glewGenerateMipmapOES; +GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC __glewGetFramebufferAttachmentParameterivOES; +GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVOESPROC __glewGetRenderbufferParameterivOES; +GLEW_FUN_EXPORT PFNGLISFRAMEBUFFEROESPROC __glewIsFramebufferOES; +GLEW_FUN_EXPORT PFNGLISRENDERBUFFEROESPROC __glewIsRenderbufferOES; +GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEOESPROC __glewRenderbufferStorageOES; + +GLEW_FUN_EXPORT PFNGLGETPROGRAMBINARYOESPROC __glewGetProgramBinaryOES; +GLEW_FUN_EXPORT PFNGLPROGRAMBINARYOESPROC __glewProgramBinaryOES; + +GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVOESPROC __glewGetBufferPointervOES; +GLEW_FUN_EXPORT PFNGLMAPBUFFEROESPROC __glewMapBufferOES; +GLEW_FUN_EXPORT PFNGLUNMAPBUFFEROESPROC __glewUnmapBufferOES; + +GLEW_FUN_EXPORT PFNGLCURRENTPALETTEMATRIXOESPROC __glewCurrentPaletteMatrixOES; +GLEW_FUN_EXPORT PFNGLMATRIXINDEXPOINTEROESPROC __glewMatrixIndexPointerOES; +GLEW_FUN_EXPORT PFNGLWEIGHTPOINTEROESPROC __glewWeightPointerOES; + +GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGOESPROC __glewMinSampleShadingOES; + +GLEW_FUN_EXPORT PFNGLCLEARDEPTHFOESPROC __glewClearDepthfOES; +GLEW_FUN_EXPORT PFNGLCLIPPLANEFOESPROC __glewClipPlanefOES; +GLEW_FUN_EXPORT PFNGLDEPTHRANGEFOESPROC __glewDepthRangefOES; +GLEW_FUN_EXPORT PFNGLFRUSTUMFOESPROC __glewFrustumfOES; +GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFOESPROC __glewGetClipPlanefOES; +GLEW_FUN_EXPORT PFNGLORTHOFOESPROC __glewOrthofOES; + +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DOESPROC __glewCompressedTexImage3DOES; +GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC __glewCompressedTexSubImage3DOES; +GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DOESPROC __glewCopyTexSubImage3DOES; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DOESPROC __glewFramebufferTexture3DOES; +GLEW_FUN_EXPORT PFNGLTEXIMAGE3DOESPROC __glewTexImage3DOES; +GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DOESPROC __glewTexSubImage3DOES; + +GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIIVOESPROC __glewGetSamplerParameterIivOES; +GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIUIVOESPROC __glewGetSamplerParameterIuivOES; +GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVOESPROC __glewGetTexParameterIivOES; +GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVOESPROC __glewGetTexParameterIuivOES; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIIVOESPROC __glewSamplerParameterIivOES; +GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIUIVOESPROC __glewSamplerParameterIuivOES; +GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVOESPROC __glewTexParameterIivOES; +GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVOESPROC __glewTexParameterIuivOES; + +GLEW_FUN_EXPORT PFNGLTEXBUFFEROESPROC __glewTexBufferOES; +GLEW_FUN_EXPORT PFNGLTEXBUFFERRANGEOESPROC __glewTexBufferRangeOES; + +GLEW_FUN_EXPORT PFNGLGETTEXGENFVOESPROC __glewGetTexGenfvOES; +GLEW_FUN_EXPORT PFNGLGETTEXGENIVOESPROC __glewGetTexGenivOES; +GLEW_FUN_EXPORT PFNGLGETTEXGENXVOESPROC __glewGetTexGenxvOES; +GLEW_FUN_EXPORT PFNGLTEXGENFOESPROC __glewTexGenfOES; +GLEW_FUN_EXPORT PFNGLTEXGENFVOESPROC __glewTexGenfvOES; +GLEW_FUN_EXPORT PFNGLTEXGENIOESPROC __glewTexGeniOES; +GLEW_FUN_EXPORT PFNGLTEXGENIVOESPROC __glewTexGenivOES; +GLEW_FUN_EXPORT PFNGLTEXGENXOESPROC __glewTexGenxOES; +GLEW_FUN_EXPORT PFNGLTEXGENXVOESPROC __glewTexGenxvOES; + +GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DMULTISAMPLEOESPROC __glewTexStorage3DMultisampleOES; + +GLEW_FUN_EXPORT PFNGLTEXTUREVIEWOESPROC __glewTextureViewOES; + +GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYOESPROC __glewBindVertexArrayOES; +GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSOESPROC __glewDeleteVertexArraysOES; +GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSOESPROC __glewGenVertexArraysOES; +GLEW_FUN_EXPORT PFNGLISVERTEXARRAYOESPROC __glewIsVertexArrayOES; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC __glewFramebufferTextureMultiviewOVR; +GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC __glewNamedFramebufferTextureMultiviewOVR; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREMULTISAMPLEMULTIVIEWOVRPROC __glewFramebufferTextureMultisampleMultiviewOVR; + +GLEW_FUN_EXPORT PFNGLALPHAFUNCQCOMPROC __glewAlphaFuncQCOM; + +GLEW_FUN_EXPORT PFNGLDISABLEDRIVERCONTROLQCOMPROC __glewDisableDriverControlQCOM; +GLEW_FUN_EXPORT PFNGLENABLEDRIVERCONTROLQCOMPROC __glewEnableDriverControlQCOM; +GLEW_FUN_EXPORT PFNGLGETDRIVERCONTROLSTRINGQCOMPROC __glewGetDriverControlStringQCOM; +GLEW_FUN_EXPORT PFNGLGETDRIVERCONTROLSQCOMPROC __glewGetDriverControlsQCOM; + +GLEW_FUN_EXPORT PFNGLEXTGETBUFFERPOINTERVQCOMPROC __glewExtGetBufferPointervQCOM; +GLEW_FUN_EXPORT PFNGLEXTGETBUFFERSQCOMPROC __glewExtGetBuffersQCOM; +GLEW_FUN_EXPORT PFNGLEXTGETFRAMEBUFFERSQCOMPROC __glewExtGetFramebuffersQCOM; +GLEW_FUN_EXPORT PFNGLEXTGETRENDERBUFFERSQCOMPROC __glewExtGetRenderbuffersQCOM; +GLEW_FUN_EXPORT PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC __glewExtGetTexLevelParameterivQCOM; +GLEW_FUN_EXPORT PFNGLEXTGETTEXSUBIMAGEQCOMPROC __glewExtGetTexSubImageQCOM; +GLEW_FUN_EXPORT PFNGLEXTGETTEXTURESQCOMPROC __glewExtGetTexturesQCOM; +GLEW_FUN_EXPORT PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC __glewExtTexObjectStateOverrideiQCOM; + +GLEW_FUN_EXPORT PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC __glewExtGetProgramBinarySourceQCOM; +GLEW_FUN_EXPORT PFNGLEXTGETPROGRAMSQCOMPROC __glewExtGetProgramsQCOM; +GLEW_FUN_EXPORT PFNGLEXTGETSHADERSQCOMPROC __glewExtGetShadersQCOM; +GLEW_FUN_EXPORT PFNGLEXTISPROGRAMBINARYQCOMPROC __glewExtIsProgramBinaryQCOM; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERFOVEATIONCONFIGQCOMPROC __glewFramebufferFoveationConfigQCOM; +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERFOVEATIONPARAMETERSQCOMPROC __glewFramebufferFoveationParametersQCOM; + +GLEW_FUN_EXPORT PFNGLFRAMEBUFFERFETCHBARRIERQCOMPROC __glewFramebufferFetchBarrierQCOM; + +GLEW_FUN_EXPORT PFNGLTEXTUREFOVEATIONPARAMETERSQCOMPROC __glewTextureFoveationParametersQCOM; + +GLEW_FUN_EXPORT PFNGLENDTILINGQCOMPROC __glewEndTilingQCOM; +GLEW_FUN_EXPORT PFNGLSTARTTILINGQCOMPROC __glewStartTilingQCOM; + +GLEW_FUN_EXPORT PFNGLALPHAFUNCXPROC __glewAlphaFuncx; +GLEW_FUN_EXPORT PFNGLCLEARCOLORXPROC __glewClearColorx; +GLEW_FUN_EXPORT PFNGLCLEARDEPTHXPROC __glewClearDepthx; +GLEW_FUN_EXPORT PFNGLCOLOR4XPROC __glewColor4x; +GLEW_FUN_EXPORT PFNGLDEPTHRANGEXPROC __glewDepthRangex; +GLEW_FUN_EXPORT PFNGLFOGXPROC __glewFogx; +GLEW_FUN_EXPORT PFNGLFOGXVPROC __glewFogxv; +GLEW_FUN_EXPORT PFNGLFRUSTUMFPROC __glewFrustumf; +GLEW_FUN_EXPORT PFNGLFRUSTUMXPROC __glewFrustumx; +GLEW_FUN_EXPORT PFNGLLIGHTMODELXPROC __glewLightModelx; +GLEW_FUN_EXPORT PFNGLLIGHTMODELXVPROC __glewLightModelxv; +GLEW_FUN_EXPORT PFNGLLIGHTXPROC __glewLightx; +GLEW_FUN_EXPORT PFNGLLIGHTXVPROC __glewLightxv; +GLEW_FUN_EXPORT PFNGLLINEWIDTHXPROC __glewLineWidthx; +GLEW_FUN_EXPORT PFNGLLOADMATRIXXPROC __glewLoadMatrixx; +GLEW_FUN_EXPORT PFNGLMATERIALXPROC __glewMaterialx; +GLEW_FUN_EXPORT PFNGLMATERIALXVPROC __glewMaterialxv; +GLEW_FUN_EXPORT PFNGLMULTMATRIXXPROC __glewMultMatrixx; +GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4XPROC __glewMultiTexCoord4x; +GLEW_FUN_EXPORT PFNGLNORMAL3XPROC __glewNormal3x; +GLEW_FUN_EXPORT PFNGLORTHOFPROC __glewOrthof; +GLEW_FUN_EXPORT PFNGLORTHOXPROC __glewOrthox; +GLEW_FUN_EXPORT PFNGLPOINTSIZEXPROC __glewPointSizex; +GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETXPROC __glewPolygonOffsetx; +GLEW_FUN_EXPORT PFNGLROTATEXPROC __glewRotatex; +GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEXPROC __glewSampleCoveragex; +GLEW_FUN_EXPORT PFNGLSCALEXPROC __glewScalex; +GLEW_FUN_EXPORT PFNGLTEXENVXPROC __glewTexEnvx; +GLEW_FUN_EXPORT PFNGLTEXENVXVPROC __glewTexEnvxv; +GLEW_FUN_EXPORT PFNGLTEXPARAMETERXPROC __glewTexParameterx; +GLEW_FUN_EXPORT PFNGLTRANSLATEXPROC __glewTranslatex; + +GLEW_FUN_EXPORT PFNGLCLIPPLANEFPROC __glewClipPlanef; +GLEW_FUN_EXPORT PFNGLCLIPPLANEXPROC __glewClipPlanex; +GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFPROC __glewGetClipPlanef; +GLEW_FUN_EXPORT PFNGLGETCLIPPLANEXPROC __glewGetClipPlanex; +GLEW_FUN_EXPORT PFNGLGETFIXEDVPROC __glewGetFixedv; +GLEW_FUN_EXPORT PFNGLGETLIGHTXVPROC __glewGetLightxv; +GLEW_FUN_EXPORT PFNGLGETMATERIALXVPROC __glewGetMaterialxv; +GLEW_FUN_EXPORT PFNGLGETTEXENVXVPROC __glewGetTexEnvxv; +GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERXVPROC __glewGetTexParameterxv; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERXPROC __glewPointParameterx; +GLEW_FUN_EXPORT PFNGLPOINTPARAMETERXVPROC __glewPointParameterxv; +GLEW_FUN_EXPORT PFNGLPOINTSIZEPOINTEROESPROC __glewPointSizePointerOES; +GLEW_FUN_EXPORT PFNGLTEXPARAMETERXVPROC __glewTexParameterxv; + +GLEW_FUN_EXPORT PFNGLERRORSTRINGREGALPROC __glewErrorStringREGAL; + +GLEW_FUN_EXPORT PFNGLGETEXTENSIONREGALPROC __glewGetExtensionREGAL; +GLEW_FUN_EXPORT PFNGLISSUPPORTEDREGALPROC __glewIsSupportedREGAL; + +GLEW_FUN_EXPORT PFNGLLOGMESSAGECALLBACKREGALPROC __glewLogMessageCallbackREGAL; + +GLEW_FUN_EXPORT PFNGLGETPROCADDRESSREGALPROC __glewGetProcAddressREGAL; + +GLEW_FUN_EXPORT PFNGLDETAILTEXFUNCSGISPROC __glewDetailTexFuncSGIS; +GLEW_FUN_EXPORT PFNGLGETDETAILTEXFUNCSGISPROC __glewGetDetailTexFuncSGIS; + +GLEW_FUN_EXPORT PFNGLFOGFUNCSGISPROC __glewFogFuncSGIS; +GLEW_FUN_EXPORT PFNGLGETFOGFUNCSGISPROC __glewGetFogFuncSGIS; + +GLEW_FUN_EXPORT PFNGLSAMPLEMASKSGISPROC __glewSampleMaskSGIS; +GLEW_FUN_EXPORT PFNGLSAMPLEPATTERNSGISPROC __glewSamplePatternSGIS; + +GLEW_FUN_EXPORT PFNGLINTERLEAVEDTEXTURECOORDSETSSGISPROC __glewInterleavedTextureCoordSetsSGIS; +GLEW_FUN_EXPORT PFNGLSELECTTEXTURECOORDSETSGISPROC __glewSelectTextureCoordSetSGIS; +GLEW_FUN_EXPORT PFNGLSELECTTEXTURESGISPROC __glewSelectTextureSGIS; +GLEW_FUN_EXPORT PFNGLSELECTTEXTURETRANSFORMSGISPROC __glewSelectTextureTransformSGIS; + +GLEW_FUN_EXPORT PFNGLMULTISAMPLESUBRECTPOSSGISPROC __glewMultisampleSubRectPosSGIS; + +GLEW_FUN_EXPORT PFNGLGETSHARPENTEXFUNCSGISPROC __glewGetSharpenTexFuncSGIS; +GLEW_FUN_EXPORT PFNGLSHARPENTEXFUNCSGISPROC __glewSharpenTexFuncSGIS; + +GLEW_FUN_EXPORT PFNGLTEXIMAGE4DSGISPROC __glewTexImage4DSGIS; +GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE4DSGISPROC __glewTexSubImage4DSGIS; + +GLEW_FUN_EXPORT PFNGLGETTEXFILTERFUNCSGISPROC __glewGetTexFilterFuncSGIS; +GLEW_FUN_EXPORT PFNGLTEXFILTERFUNCSGISPROC __glewTexFilterFuncSGIS; + +GLEW_FUN_EXPORT PFNGLASYNCMARKERSGIXPROC __glewAsyncMarkerSGIX; +GLEW_FUN_EXPORT PFNGLDELETEASYNCMARKERSSGIXPROC __glewDeleteAsyncMarkersSGIX; +GLEW_FUN_EXPORT PFNGLFINISHASYNCSGIXPROC __glewFinishAsyncSGIX; +GLEW_FUN_EXPORT PFNGLGENASYNCMARKERSSGIXPROC __glewGenAsyncMarkersSGIX; +GLEW_FUN_EXPORT PFNGLISASYNCMARKERSGIXPROC __glewIsAsyncMarkerSGIX; +GLEW_FUN_EXPORT PFNGLPOLLASYNCSGIXPROC __glewPollAsyncSGIX; + +GLEW_FUN_EXPORT PFNGLADDRESSSPACEPROC __glewAddressSpace; +GLEW_FUN_EXPORT PFNGLDATAPIPEPROC __glewDataPipe; + +GLEW_FUN_EXPORT PFNGLFLUSHRASTERSGIXPROC __glewFlushRasterSGIX; + +GLEW_FUN_EXPORT PFNGLFOGLAYERSSGIXPROC __glewFogLayersSGIX; +GLEW_FUN_EXPORT PFNGLGETFOGLAYERSSGIXPROC __glewGetFogLayersSGIX; + +GLEW_FUN_EXPORT PFNGLTEXTUREFOGSGIXPROC __glewTextureFogSGIX; + +GLEW_FUN_EXPORT PFNGLFRAGMENTCOLORMATERIALSGIXPROC __glewFragmentColorMaterialSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFSGIXPROC __glewFragmentLightModelfSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFVSGIXPROC __glewFragmentLightModelfvSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELISGIXPROC __glewFragmentLightModeliSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIVSGIXPROC __glewFragmentLightModelivSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFSGIXPROC __glewFragmentLightfSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFVSGIXPROC __glewFragmentLightfvSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTISGIXPROC __glewFragmentLightiSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIVSGIXPROC __glewFragmentLightivSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFSGIXPROC __glewFragmentMaterialfSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFVSGIXPROC __glewFragmentMaterialfvSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALISGIXPROC __glewFragmentMaterialiSGIX; +GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIVSGIXPROC __glewFragmentMaterialivSGIX; +GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTFVSGIXPROC __glewGetFragmentLightfvSGIX; +GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTIVSGIXPROC __glewGetFragmentLightivSGIX; +GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALFVSGIXPROC __glewGetFragmentMaterialfvSGIX; +GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALIVSGIXPROC __glewGetFragmentMaterialivSGIX; + +GLEW_FUN_EXPORT PFNGLFRAMEZOOMSGIXPROC __glewFrameZoomSGIX; + +GLEW_FUN_EXPORT PFNGLIGLOOINTERFACESGIXPROC __glewIglooInterfaceSGIX; + +GLEW_FUN_EXPORT PFNGLALLOCMPEGPREDICTORSSGIXPROC __glewAllocMPEGPredictorsSGIX; +GLEW_FUN_EXPORT PFNGLDELETEMPEGPREDICTORSSGIXPROC __glewDeleteMPEGPredictorsSGIX; +GLEW_FUN_EXPORT PFNGLGENMPEGPREDICTORSSGIXPROC __glewGenMPEGPredictorsSGIX; +GLEW_FUN_EXPORT PFNGLGETMPEGPARAMETERFVSGIXPROC __glewGetMPEGParameterfvSGIX; +GLEW_FUN_EXPORT PFNGLGETMPEGPARAMETERIVSGIXPROC __glewGetMPEGParameterivSGIX; +GLEW_FUN_EXPORT PFNGLGETMPEGPREDICTORSGIXPROC __glewGetMPEGPredictorSGIX; +GLEW_FUN_EXPORT PFNGLGETMPEGQUANTTABLEUBVPROC __glewGetMPEGQuantTableubv; +GLEW_FUN_EXPORT PFNGLISMPEGPREDICTORSGIXPROC __glewIsMPEGPredictorSGIX; +GLEW_FUN_EXPORT PFNGLMPEGPREDICTORSGIXPROC __glewMPEGPredictorSGIX; +GLEW_FUN_EXPORT PFNGLMPEGQUANTTABLEUBVPROC __glewMPEGQuantTableubv; +GLEW_FUN_EXPORT PFNGLSWAPMPEGPREDICTORSSGIXPROC __glewSwapMPEGPredictorsSGIX; + +GLEW_FUN_EXPORT PFNGLGETNONLINLIGHTFVSGIXPROC __glewGetNonlinLightfvSGIX; +GLEW_FUN_EXPORT PFNGLGETNONLINMATERIALFVSGIXPROC __glewGetNonlinMaterialfvSGIX; +GLEW_FUN_EXPORT PFNGLNONLINLIGHTFVSGIXPROC __glewNonlinLightfvSGIX; +GLEW_FUN_EXPORT PFNGLNONLINMATERIALFVSGIXPROC __glewNonlinMaterialfvSGIX; + +GLEW_FUN_EXPORT PFNGLPIXELTEXGENSGIXPROC __glewPixelTexGenSGIX; + +GLEW_FUN_EXPORT PFNGLDEFORMSGIXPROC __glewDeformSGIX; +GLEW_FUN_EXPORT PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC __glewLoadIdentityDeformationMapSGIX; + +GLEW_FUN_EXPORT PFNGLMESHBREADTHSGIXPROC __glewMeshBreadthSGIX; +GLEW_FUN_EXPORT PFNGLMESHSTRIDESGIXPROC __glewMeshStrideSGIX; + +GLEW_FUN_EXPORT PFNGLREFERENCEPLANESGIXPROC __glewReferencePlaneSGIX; + +GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERFSGIXPROC __glewSpriteParameterfSGIX; +GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERFVSGIXPROC __glewSpriteParameterfvSGIX; +GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERISGIXPROC __glewSpriteParameteriSGIX; +GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERIVSGIXPROC __glewSpriteParameterivSGIX; + +GLEW_FUN_EXPORT PFNGLTAGSAMPLEBUFFERSGIXPROC __glewTagSampleBufferSGIX; + +GLEW_FUN_EXPORT PFNGLGETVECTOROPERATIONSGIXPROC __glewGetVectorOperationSGIX; +GLEW_FUN_EXPORT PFNGLVECTOROPERATIONSGIXPROC __glewVectorOperationSGIX; + +GLEW_FUN_EXPORT PFNGLAREVERTEXARRAYSRESIDENTSGIXPROC __glewAreVertexArraysResidentSGIX; +GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYSGIXPROC __glewBindVertexArraySGIX; +GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSSGIXPROC __glewDeleteVertexArraysSGIX; +GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSSGIXPROC __glewGenVertexArraysSGIX; +GLEW_FUN_EXPORT PFNGLISVERTEXARRAYSGIXPROC __glewIsVertexArraySGIX; +GLEW_FUN_EXPORT PFNGLPRIORITIZEVERTEXARRAYSSGIXPROC __glewPrioritizeVertexArraysSGIX; + +GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERFVSGIPROC __glewColorTableParameterfvSGI; +GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERIVSGIPROC __glewColorTableParameterivSGI; +GLEW_FUN_EXPORT PFNGLCOLORTABLESGIPROC __glewColorTableSGI; +GLEW_FUN_EXPORT PFNGLCOPYCOLORTABLESGIPROC __glewCopyColorTableSGI; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVSGIPROC __glewGetColorTableParameterfvSGI; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVSGIPROC __glewGetColorTableParameterivSGI; +GLEW_FUN_EXPORT PFNGLGETCOLORTABLESGIPROC __glewGetColorTableSGI; + +GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERFVSGIPROC __glewGetPixelTransformParameterfvSGI; +GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERIVSGIPROC __glewGetPixelTransformParameterivSGI; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFSGIPROC __glewPixelTransformParameterfSGI; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFVSGIPROC __glewPixelTransformParameterfvSGI; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERISGIPROC __glewPixelTransformParameteriSGI; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIVSGIPROC __glewPixelTransformParameterivSGI; +GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMSGIPROC __glewPixelTransformSGI; + +GLEW_FUN_EXPORT PFNGLFINISHTEXTURESUNXPROC __glewFinishTextureSUNX; + +GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORBSUNPROC __glewGlobalAlphaFactorbSUN; +GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORDSUNPROC __glewGlobalAlphaFactordSUN; +GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORFSUNPROC __glewGlobalAlphaFactorfSUN; +GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORISUNPROC __glewGlobalAlphaFactoriSUN; +GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORSSUNPROC __glewGlobalAlphaFactorsSUN; +GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUBSUNPROC __glewGlobalAlphaFactorubSUN; +GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUISUNPROC __glewGlobalAlphaFactoruiSUN; +GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUSSUNPROC __glewGlobalAlphaFactorusSUN; + +GLEW_FUN_EXPORT PFNGLREADVIDEOPIXELSSUNPROC __glewReadVideoPixelsSUN; + +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEPOINTERSUNPROC __glewReplacementCodePointerSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUBSUNPROC __glewReplacementCodeubSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUBVSUNPROC __glewReplacementCodeubvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUISUNPROC __glewReplacementCodeuiSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVSUNPROC __glewReplacementCodeuivSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUSSUNPROC __glewReplacementCodeusSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUSVSUNPROC __glewReplacementCodeusvSUN; + +GLEW_FUN_EXPORT PFNGLCOLOR3FVERTEX3FSUNPROC __glewColor3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLCOLOR3FVERTEX3FVSUNPROC __glewColor3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewColor4fNormal3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewColor4fNormal3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX2FSUNPROC __glewColor4ubVertex2fSUN; +GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX2FVSUNPROC __glewColor4ubVertex2fvSUN; +GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX3FSUNPROC __glewColor4ubVertex3fSUN; +GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX3FVSUNPROC __glewColor4ubVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLNORMAL3FVERTEX3FSUNPROC __glewNormal3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLNORMAL3FVERTEX3FVSUNPROC __glewNormal3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC __glewReplacementCodeuiColor3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC __glewReplacementCodeuiColor4ubVertex3fSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC __glewReplacementCodeuiColor4ubVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiNormal3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiNormal3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC __glewReplacementCodeuiVertex3fSUN; +GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC __glewReplacementCodeuiVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC __glewTexCoord2fColor3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC __glewTexCoord2fColor3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC __glewTexCoord2fColor4ubVertex3fSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC __glewTexCoord2fColor4ubVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fNormal3fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fNormal3fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FVERTEX3FSUNPROC __glewTexCoord2fVertex3fSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD2FVERTEX3FVSUNPROC __glewTexCoord2fVertex3fvSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fvSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD4FVERTEX4FSUNPROC __glewTexCoord4fVertex4fSUN; +GLEW_FUN_EXPORT PFNGLTEXCOORD4FVERTEX4FVSUNPROC __glewTexCoord4fVertex4fvSUN; + +GLEW_FUN_EXPORT PFNGLADDSWAPHINTRECTWINPROC __glewAddSwapHintRectWIN; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_1; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2_1; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_3; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_4; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_5; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_2_0; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_2_1; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_0; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_1; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_2; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_3; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_0; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_1; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_2; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_3; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_4; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_5; +GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_6; +GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_tbuffer; +GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_texture_compression_FXT1; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_blend_minmax_factor; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_compressed_3DC_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_compressed_ATC_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_conservative_depth; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_debug_output; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_depth_clamp_separate; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_draw_buffers_blend; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_framebuffer_multisample_advanced; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_framebuffer_sample_positions; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gcn_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gpu_shader_half_float; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gpu_shader_half_float_fetch; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gpu_shader_int16; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gpu_shader_int64; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_interleaved_elements; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_multi_draw_indirect; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_name_gen_delete; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_occlusion_query_event; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_performance_monitor; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_pinned_memory; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_program_binary_Z400; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_query_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_sample_positions; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_seamless_cubemap_per_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_atomic_counter_ops; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_ballot; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_explicit_vertex_parameter; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_image_load_store_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_stencil_export; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_stencil_value_export; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_trinary_minmax; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_sparse_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_stencil_operation_extended; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_texture_gather_bias_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_texture_texture4; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_transform_feedback3_lines_triangles; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_transform_feedback4; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_vertex_shader_layer; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_vertex_shader_tessellator; +GLEW_VAR_EXPORT GLboolean __GLEW_AMD_vertex_shader_viewport_index; +GLEW_VAR_EXPORT GLboolean __GLEW_ANDROID_extension_pack_es31a; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_depth_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_framebuffer_blit; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_framebuffer_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_instanced_arrays; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_pack_reverse_row_order; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_program_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_texture_compression_dxt1; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_texture_compression_dxt3; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_texture_compression_dxt5; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_texture_usage; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_timer_query; +GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_translated_shader_source; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_aux_depth_stencil; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_client_storage; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_clip_distance; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_color_buffer_packed_float; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_copy_texture_levels; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_element_array; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_fence; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_float_pixels; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_flush_buffer_range; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_framebuffer_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_object_purgeable; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_pixel_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_rgb_422; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_row_bytes; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_specular_vector; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_sync; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_2D_limited_npot; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_format_BGRA8888; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_max_level; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_packed_float; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_range; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_transform_hint; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_array_object; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_array_range; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_program_evaluators; +GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_ycbcr_422; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES2_compatibility; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES3_1_compatibility; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES3_2_compatibility; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES3_compatibility; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_arrays_of_arrays; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_base_instance; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_bindless_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_blend_func_extended; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_buffer_storage; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_cl_event; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_clear_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_clear_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_clip_control; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_color_buffer_float; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compatibility; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compressed_texture_pixel_storage; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compute_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compute_variable_group_size; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_conditional_render_inverted; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_conservative_depth; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_copy_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_copy_image; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_cull_distance; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_debug_output; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_buffer_float; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_derivative_control; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_direct_state_access; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_buffers; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_buffers_blend; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_elements_base_vertex; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_indirect; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_instanced; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_enhanced_layouts; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_explicit_attrib_location; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_explicit_uniform_location; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_coord_conventions; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_layer_viewport; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_program; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_program_shadow; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_shader_interlock; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_no_attachments; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_sRGB; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_geometry_shader4; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_get_program_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_get_texture_sub_image; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gl_spirv; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader5; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader_fp64; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader_int64; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_half_float_pixel; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_half_float_vertex; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_imaging; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_indirect_parameters; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_instanced_arrays; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_internalformat_query; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_internalformat_query2; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_invalidate_subdata; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_map_buffer_alignment; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_map_buffer_range; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_matrix_palette; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multi_bind; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multi_draw_indirect; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multitexture; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_occlusion_query; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_occlusion_query2; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_parallel_shader_compile; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_pipeline_statistics_query; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_pixel_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_point_parameters; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_point_sprite; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_polygon_offset_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_post_depth_coverage; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_program_interface_query; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_provoking_vertex; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_query_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robust_buffer_access_behavior; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robustness; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robustness_application_isolation; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robustness_share_group_isolation; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sample_locations; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sample_shading; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sampler_objects; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_seamless_cube_map; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_seamless_cubemap_per_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_separate_shader_objects; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_atomic_counter_ops; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_atomic_counters; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_ballot; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_bit_encoding; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_clock; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_draw_parameters; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_group_vote; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_image_load_store; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_image_size; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_objects; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_precision; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_stencil_export; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_storage_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_subroutine; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_texture_image_samples; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_texture_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_viewport_layer_array; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_100; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_420pack; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_include; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_packing; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shadow; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shadow_ambient; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sparse_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sparse_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sparse_texture2; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sparse_texture_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_spirv_extensions; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_stencil_texturing; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sync; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_tessellation_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_barrier; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_border_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_object_rgb32; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_range; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression_bptc; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression_rgtc; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_cube_map; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_cube_map_array; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_add; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_combine; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_crossbar; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_dot3; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_filter_anisotropic; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_filter_minmax; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_float; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_gather; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_mirror_clamp_to_edge; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_mirrored_repeat; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_non_power_of_two; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_query_levels; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_query_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rectangle; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rg; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rgb10_a2ui; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_stencil8; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_storage; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_storage_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_swizzle; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_view; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_timer_query; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback2; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback3; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback_instanced; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback_overflow_query; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transpose_matrix; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_uniform_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_array_bgra; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_array_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_attrib_64bit; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_attrib_binding; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_blend; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_program; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_type_10f_11f_11f_rev; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_type_2_10_10_10_rev; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_viewport_array; +GLEW_VAR_EXPORT GLboolean __GLEW_ARB_window_pos; +GLEW_VAR_EXPORT GLboolean __GLEW_ARM_mali_program_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_ARM_mali_shader_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_ARM_rgba8; +GLEW_VAR_EXPORT GLboolean __GLEW_ARM_shader_framebuffer_fetch; +GLEW_VAR_EXPORT GLboolean __GLEW_ARM_shader_framebuffer_fetch_depth_stencil; +GLEW_VAR_EXPORT GLboolean __GLEW_ARM_texture_unnormalized_coordinates; +GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_point_sprites; +GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_texture_env_combine3; +GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_texture_env_route; +GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_vertex_shader_output_point_size; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_draw_buffers; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_element_array; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_envmap_bumpmap; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_fragment_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_map_object_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_meminfo; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_pn_triangles; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_separate_stencil; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_shader_texture_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_text_fragment_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_compression_3dc; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_env_combine3; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_float; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_mirror_once; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_array_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_attrib_array_object; +GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_streams; +GLEW_VAR_EXPORT GLboolean __GLEW_DMP_program_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_DMP_shader_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_422_pixels; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_Cg_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_EGL_image_array; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_EGL_image_external_wrap_modes; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_EGL_image_storage; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_EGL_sync; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_YUV_target; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_abgr; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_base_instance; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_bgra; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_bindable_uniform; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_color; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_equation_separate; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_func_extended; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_func_separate; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_logic_op; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_minmax; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_subtract; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_buffer_storage; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clear_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clip_control; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clip_cull_distance; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clip_volume_hint; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_cmyka; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_color_buffer_float; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_color_buffer_half_float; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_color_subtable; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_compiled_vertex_array; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_compressed_ETC1_RGB8_sub_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_conservative_depth; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_convolution; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_coordinate_frame; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_copy_image; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_copy_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_cull_vertex; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_debug_label; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_debug_marker; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_depth_bounds_test; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_depth_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_direct_state_access; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_discard_framebuffer; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_disjoint_timer_query; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_buffers; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_buffers2; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_buffers_indexed; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_elements_base_vertex; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_instanced; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_range_elements; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_transform_feedback; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_external_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_float_blend; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_fog_coord; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_frag_depth; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_fragment_lighting; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_blit; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_multisample_blit_scaled; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_sRGB; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_geometry_point_size; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_geometry_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_geometry_shader4; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_program_parameters; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_shader4; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_shader5; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_histogram; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_array_formats; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_func; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_material; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_instanced_arrays; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_light_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_map_buffer_range; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_memory_object; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_memory_object_fd; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_memory_object_win32; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_misc_attribute; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multi_draw_arrays; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multi_draw_indirect; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiple_textures; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisample_compatibility; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisampled_render_to_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisampled_render_to_texture2; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiview_draw_buffers; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiview_tessellation_geometry_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiview_texture_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiview_timer_query; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_occlusion_query_boolean; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_depth_stencil; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_float; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_pixels; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_paletted_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_transform; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_transform_color_table; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_point_parameters; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_polygon_offset; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_polygon_offset_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_post_depth_coverage; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_primitive_bounding_box; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_protected_textures; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_provoking_vertex; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pvrtc_sRGB; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_raster_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_read_format_bgra; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_render_snorm; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_rescale_normal; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_robustness; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_sRGB; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_sRGB_write_control; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_scene_marker; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_secondary_color; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_semaphore; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_semaphore_fd; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_semaphore_win32; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_separate_shader_objects; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_separate_specular_color; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_framebuffer_fetch; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_framebuffer_fetch_non_coherent; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_group_vote; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_image_load_formatted; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_image_load_store; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_implicit_conversions; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_integer_mix; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_io_blocks; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_non_constant_global_initializers; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_pixel_local_storage; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_pixel_local_storage2; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_texture_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shadow_funcs; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shadow_samplers; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shared_texture_palette; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_sparse_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_sparse_texture2; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_static_vertex_array; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_clear_tag; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_two_side; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_wrap; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_subtexture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_tessellation_point_size; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_tessellation_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture3D; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_array; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_border_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_astc_decode_mode; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_bptc; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_dxt1; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_latc; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_rgtc; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_s3tc; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_s3tc_srgb; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_cube_map; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_cube_map_array; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_edge_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_add; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_combine; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_dot3; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_filter_anisotropic; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_filter_minmax; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_format_BGRA8888; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_format_sRGB_override; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_integer; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_lod_bias; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_mirror_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_mirror_clamp_to_edge; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_norm16; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_object; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_perturb_normal; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_query_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_rectangle; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_rg; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB_R8; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB_RG8; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB_decode; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_shadow_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_shared_exponent; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_snorm; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_storage; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_swizzle; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_type_2_10_10_10_REV; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_view; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_timer_query; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_transform_feedback; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_unpack_subimage; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array_bgra; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array_setXXX; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_attrib_64bit; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_weighting; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_win32_keyed_mutex; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_window_rectangles; +GLEW_VAR_EXPORT GLboolean __GLEW_EXT_x11_sync_object; +GLEW_VAR_EXPORT GLboolean __GLEW_FJ_shader_binary_GCCSO; +GLEW_VAR_EXPORT GLboolean __GLEW_GREMEDY_frame_terminator; +GLEW_VAR_EXPORT GLboolean __GLEW_GREMEDY_string_marker; +GLEW_VAR_EXPORT GLboolean __GLEW_HP_convolution_border_modes; +GLEW_VAR_EXPORT GLboolean __GLEW_HP_image_transform; +GLEW_VAR_EXPORT GLboolean __GLEW_HP_occlusion_test; +GLEW_VAR_EXPORT GLboolean __GLEW_HP_texture_lighting; +GLEW_VAR_EXPORT GLboolean __GLEW_IBM_cull_vertex; +GLEW_VAR_EXPORT GLboolean __GLEW_IBM_multimode_draw_arrays; +GLEW_VAR_EXPORT GLboolean __GLEW_IBM_rasterpos_clip; +GLEW_VAR_EXPORT GLboolean __GLEW_IBM_static_data; +GLEW_VAR_EXPORT GLboolean __GLEW_IBM_texture_mirrored_repeat; +GLEW_VAR_EXPORT GLboolean __GLEW_IBM_vertex_array_lists; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_bindless_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_framebuffer_downsample; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_multisampled_render_to_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_program_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_read_format; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_shader_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_texture_compression_pvrtc; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_texture_compression_pvrtc2; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_texture_env_enhanced_fixed_function; +GLEW_VAR_EXPORT GLboolean __GLEW_IMG_texture_filter_cubic; +GLEW_VAR_EXPORT GLboolean __GLEW_INGR_color_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_INGR_interlace_read; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_blackhole_render; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_conservative_rasterization; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_fragment_shader_ordering; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_framebuffer_CMAA; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_map_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_parallel_arrays; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_performance_query; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_shader_integer_functions2; +GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_texture_scissor; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_blend_equation_advanced; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_blend_equation_advanced_coherent; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_context_flush_control; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_debug; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_no_error; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_parallel_shader_compile; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_robust_buffer_access_behavior; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_robustness; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_shader_subgroup; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_texture_compression_astc_hdr; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_texture_compression_astc_ldr; +GLEW_VAR_EXPORT GLboolean __GLEW_KHR_texture_compression_astc_sliced_3d; +GLEW_VAR_EXPORT GLboolean __GLEW_KTX_buffer_region; +GLEW_VAR_EXPORT GLboolean __GLEW_MESAX_texture_stack; +GLEW_VAR_EXPORT GLboolean __GLEW_MESA_framebuffer_flip_y; +GLEW_VAR_EXPORT GLboolean __GLEW_MESA_pack_invert; +GLEW_VAR_EXPORT GLboolean __GLEW_MESA_program_binary_formats; +GLEW_VAR_EXPORT GLboolean __GLEW_MESA_resize_buffers; +GLEW_VAR_EXPORT GLboolean __GLEW_MESA_shader_integer_functions; +GLEW_VAR_EXPORT GLboolean __GLEW_MESA_tile_raster_order; +GLEW_VAR_EXPORT GLboolean __GLEW_MESA_window_pos; +GLEW_VAR_EXPORT GLboolean __GLEW_MESA_ycbcr_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_NVX_blend_equation_advanced_multi_draw_buffers; +GLEW_VAR_EXPORT GLboolean __GLEW_NVX_conditional_render; +GLEW_VAR_EXPORT GLboolean __GLEW_NVX_gpu_memory_info; +GLEW_VAR_EXPORT GLboolean __GLEW_NVX_gpu_multicast2; +GLEW_VAR_EXPORT GLboolean __GLEW_NVX_linked_gpu_multicast; +GLEW_VAR_EXPORT GLboolean __GLEW_NVX_progress_fence; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_3dvision_settings; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_EGL_stream_consumer_external; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_alpha_to_coverage_dither_control; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_bgr; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_bindless_multi_draw_indirect; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_bindless_multi_draw_indirect_count; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_bindless_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_equation_advanced; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_equation_advanced_coherent; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_minmax_factor; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_square; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_clip_space_w_scaling; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_command_list; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_compute_program5; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_compute_shader_derivatives; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_conditional_render; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster_dilate; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster_pre_snap; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster_pre_snap_triangles; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster_underestimation; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_depth_to_color; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_image; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_deep_texture3D; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_buffer_float; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_nonlinear; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_range_unclamped; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_draw_buffers; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_draw_instanced; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_draw_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_draw_vulkan_image; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_evaluators; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_explicit_attrib_location; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_explicit_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fbo_color_attachments; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fence; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fill_rectangle; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_float_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fog_distance; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_coverage_to_color; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program4; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program_option; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_shader_barycentric; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_shader_interlock; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_blit; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_mixed_samples; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_multisample_coverage; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_generate_mipmap_sRGB; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_program4; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_shader4; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_shader_passthrough; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_multicast; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program4; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program5; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program5_mem_extended; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program_fp64; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_shader5; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_half_float; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_image_formats; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_instanced_arrays; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_internalformat_sample_query; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_light_max_exponent; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_memory_attachment; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_mesh_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_coverage; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_filter_hint; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_non_square_matrices; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_occlusion_query; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_pack_subimage; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_packed_depth_stencil; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_packed_float; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_packed_float_linear; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_parameter_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_parameter_buffer_object2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_path_rendering; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_path_rendering_shared_edge; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_pixel_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_pixel_data_range; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_platform_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_point_sprite; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_polygon_mode; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_present_video; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_primitive_restart; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_query_resource_tag; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_buffer_front; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_depth; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_depth_stencil; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_stencil; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_register_combiners; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_register_combiners2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_representative_fragment_test; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_robustness_video_memory_purge; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_sRGB_formats; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_sample_locations; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_sample_mask_override_coverage; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_scissor_exclusive; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_counters; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_float; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_float64; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_fp16_vector; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_int64; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_buffer_load; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_noperspective_interpolation; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_storage_buffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_subgroup_partitioned; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_texture_footprint; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_thread_group; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_thread_shuffle; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shading_rate_image; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shadow_samplers_array; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_shadow_samplers_cube; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_stereo_view_rendering; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_tessellation_program5; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texgen_emboss; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texgen_reflection; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_array; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_barrier; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_border_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_latc; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_s3tc; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_s3tc_update; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_vtc; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_env_combine4; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_expand_normal; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_npot_2D_mipmap; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_rectangle; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_rectangle_compressed; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader3; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_uniform_buffer_unified_memory; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vdpau_interop; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vdpau_interop2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_array_range; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_array_range2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_attrib_integer_64bit; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_buffer_unified_memory; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program1_1; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program2_option; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program3; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program4; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_video_capture; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_viewport_array; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_viewport_array2; +GLEW_VAR_EXPORT GLboolean __GLEW_NV_viewport_swizzle; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_EGL_image; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_EGL_image_external; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_EGL_image_external_essl3; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_blend_equation_separate; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_blend_func_separate; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_blend_subtract; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_byte_coordinates; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_compressed_ETC1_RGB8_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_compressed_paletted_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_copy_image; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_depth24; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_depth32; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_depth_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_depth_texture_cube_map; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_draw_buffers_indexed; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_draw_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_element_index_uint; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_extended_matrix_palette; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_fbo_render_mipmap; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_fragment_precision_high; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_framebuffer_object; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_geometry_point_size; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_geometry_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_get_program_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_gpu_shader5; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_mapbuffer; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_matrix_get; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_matrix_palette; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_packed_depth_stencil; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_point_size_array; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_point_sprite; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_read_format; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_required_internalformat; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_rgb8_rgba8; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_sample_shading; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_sample_variables; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_shader_image_atomic; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_shader_io_blocks; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_shader_multisample_interpolation; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_single_precision; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_standard_derivatives; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_stencil1; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_stencil4; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_stencil8; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_surfaceless_context; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_tessellation_point_size; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_tessellation_shader; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_3D; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_border_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_compression_astc; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_cube_map; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_cube_map_array; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_env_crossbar; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_mirrored_repeat; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_npot; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_stencil8; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_storage_multisample_2d_array; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_view; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_vertex_array_object; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_vertex_half_float; +GLEW_VAR_EXPORT GLboolean __GLEW_OES_vertex_type_10_10_10_2; +GLEW_VAR_EXPORT GLboolean __GLEW_OML_interlace; +GLEW_VAR_EXPORT GLboolean __GLEW_OML_resample; +GLEW_VAR_EXPORT GLboolean __GLEW_OML_subsample; +GLEW_VAR_EXPORT GLboolean __GLEW_OVR_multiview; +GLEW_VAR_EXPORT GLboolean __GLEW_OVR_multiview2; +GLEW_VAR_EXPORT GLboolean __GLEW_OVR_multiview_multisampled_render_to_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_PGI_misc_hints; +GLEW_VAR_EXPORT GLboolean __GLEW_PGI_vertex_hints; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_YUV_texture_gather; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_alpha_test; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_binning_control; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_driver_control; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_extended_get; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_extended_get2; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_framebuffer_foveated; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_perfmon_global_mode; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_shader_framebuffer_fetch_noncoherent; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_shader_framebuffer_fetch_rate; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_texture_foveated; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_texture_foveated_subsampled_layout; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_tiled_rendering; +GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_writeonly_rendering; +GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_ES1_0_compatibility; +GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_ES1_1_compatibility; +GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_enable; +GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_error_string; +GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_extension_query; +GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_log; +GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_proc_address; +GLEW_VAR_EXPORT GLboolean __GLEW_REND_screen_coordinates; +GLEW_VAR_EXPORT GLboolean __GLEW_S3_s3tc; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_clip_band_hint; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_color_range; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_detail_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_fog_function; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_generate_mipmap; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_line_texgen; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_multitexture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_pixel_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_point_line_texgen; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_shared_multisample; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_sharpen_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture4D; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_border_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_edge_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_filter4; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_select; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async_histogram; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async_pixel; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_bali_g_instruments; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_bali_r_instruments; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_bali_timer_instruments; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_blend_alpha_minmax; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_blend_cadd; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_blend_cmultiply; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_calligraphic_fragment; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_clipmap; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_color_matrix_accuracy; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_color_table_index_mode; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_complex_polar; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_convolution_accuracy; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_cube_map; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_cylinder_texgen; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_datapipe; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_decimation; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_depth_pass_instrument; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_depth_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_dvc; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_flush_raster; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_blend; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_factor_to_alpha; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_layers; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_offset; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_patchy; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_scale; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fragment_lighting_space; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fragment_specular_lighting; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fragments_instrument; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_framezoom; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_icc_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_igloo_interface; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_image_compression; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_impact_pixel_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_instrument_error; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_interlace; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ir_instrument1; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_line_quality_hint; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_list_priority; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_mpeg1; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_mpeg2; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_nonlinear_lighting_pervertex; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_nurbs_eval; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_occlusion_instrument; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_packed_6bytes; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture_bits; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture_lod; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_tiles; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_polynomial_ffd; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_quad_mesh; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_reference_plane; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_resample; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_scalebias_hint; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_shadow; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_shadow_ambient; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_slim; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_spotlight_cutoff; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_sprite; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_subdiv_patch; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_subsample; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_tag_sample_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_add_env; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_coordinate_clamp; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_lod_bias; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_mipmap_anisotropic; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_multi_buffer; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_phase; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_range; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_scale_bias; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_supersample; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vector_ops; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_array_object; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_preclip; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_preclip_hint; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ycrcb; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ycrcb_subsample; +GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ycrcba; +GLEW_VAR_EXPORT GLboolean __GLEW_SGI_color_matrix; +GLEW_VAR_EXPORT GLboolean __GLEW_SGI_color_table; +GLEW_VAR_EXPORT GLboolean __GLEW_SGI_complex; +GLEW_VAR_EXPORT GLboolean __GLEW_SGI_complex_type; +GLEW_VAR_EXPORT GLboolean __GLEW_SGI_fft; +GLEW_VAR_EXPORT GLboolean __GLEW_SGI_texture_color_table; +GLEW_VAR_EXPORT GLboolean __GLEW_SUNX_constant_data; +GLEW_VAR_EXPORT GLboolean __GLEW_SUN_convolution_border_modes; +GLEW_VAR_EXPORT GLboolean __GLEW_SUN_global_alpha; +GLEW_VAR_EXPORT GLboolean __GLEW_SUN_mesh_array; +GLEW_VAR_EXPORT GLboolean __GLEW_SUN_read_video_pixels; +GLEW_VAR_EXPORT GLboolean __GLEW_SUN_slice_accum; +GLEW_VAR_EXPORT GLboolean __GLEW_SUN_triangle_list; +GLEW_VAR_EXPORT GLboolean __GLEW_SUN_vertex; +GLEW_VAR_EXPORT GLboolean __GLEW_VIV_shader_binary; +GLEW_VAR_EXPORT GLboolean __GLEW_WIN_phong_shading; +GLEW_VAR_EXPORT GLboolean __GLEW_WIN_scene_markerXXX; +GLEW_VAR_EXPORT GLboolean __GLEW_WIN_specular_fog; +GLEW_VAR_EXPORT GLboolean __GLEW_WIN_swap_hint; +/* ------------------------------------------------------------------------- */ + +/* error codes */ +#define GLEW_OK 0 +#define GLEW_NO_ERROR 0 +#define GLEW_ERROR_NO_GL_VERSION 1 /* missing GL version */ +#define GLEW_ERROR_GL_VERSION_10_ONLY 2 /* Need at least OpenGL 1.1 */ +#define GLEW_ERROR_GLX_VERSION_11_ONLY 3 /* Need at least GLX 1.2 */ +#define GLEW_ERROR_NO_GLX_DISPLAY 4 /* Need GLX display for GLX support */ + +/* string codes */ +#define GLEW_VERSION 1 +#define GLEW_VERSION_MAJOR 2 +#define GLEW_VERSION_MINOR 3 +#define GLEW_VERSION_MICRO 4 + +/* ------------------------------------------------------------------------- */ + +/* GLEW version info */ + +/* +VERSION 2.2.0 +VERSION_MAJOR 2 +VERSION_MINOR 2 +VERSION_MICRO 0 +*/ + +/* API */ +GLEWAPI GLenum GLEWAPIENTRY glewInit (void); +GLEWAPI GLboolean GLEWAPIENTRY glewIsSupported (const char *name); +#define glewIsExtensionSupported(x) glewIsSupported(x) + +#ifndef GLEW_GET_VAR +#define GLEW_GET_VAR(x) (*(const GLboolean*)&x) +#endif + +#ifndef GLEW_GET_FUN +#define GLEW_GET_FUN(x) x +#endif + +GLEWAPI GLboolean glewExperimental; +GLEWAPI GLboolean GLEWAPIENTRY glewGetExtension (const char *name); +GLEWAPI const GLubyte * GLEWAPIENTRY glewGetErrorString (GLenum error); +GLEWAPI const GLubyte * GLEWAPIENTRY glewGetString (GLenum name); + +#ifdef __cplusplus +} +#endif + +#ifdef GLEW_APIENTRY_DEFINED +#undef GLEW_APIENTRY_DEFINED +#undef APIENTRY +#endif + +#ifdef GLEW_CALLBACK_DEFINED +#undef GLEW_CALLBACK_DEFINED +#undef CALLBACK +#endif + +#ifdef GLEW_WINGDIAPI_DEFINED +#undef GLEW_WINGDIAPI_DEFINED +#undef WINGDIAPI +#endif + +#undef GLAPI +/* #undef GLEWAPI */ + +#endif /* __glew_h__ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e345ba005901d446068d93e780008e8df3e08d75 GIT binary patch literal 2269133 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 xq@|=p=4UrFLaBp4N=+f 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%0AS( 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�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

mSECeOXn?A1S=`Q@x}@A%-{AbS<{zc%iUEo@JT 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%0DytQ8&yG8 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

Gnl{$_;>xV-ygW?CT`geK#x)mXn{C?hM7|3| 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

  • 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�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%0D?Eye34kk?Bj)=T6~ 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 X}{O|73 zS11v1oDlF$okKkGcVZ$unsY78g12N=JJLA zslX(XD(&gx$XW3Cwd9o*2o?a^^;`uhT@^x~1sdTVf-gh(i$Fj;oq6ql2c3BD3iGIv zj^}Gr)!l@=c#3jEjw+n_aty-|ZyY4S5`tbR3ob&P3CEF}I}l>3EiC^kdgA5LQG9G! zH@4KhZtPl!cimVAL5|u9{r~>-*!BZoVW+}7b*hlx?Wvqp?Ly3ZDWA+N`#>FNp26-} zVglC5qyEphAorh~{YaoSYSdR;y6m0_XCMBQgv|hQ z)c*3Huo)*>HKXJiBqiJp!RdpRF$qk!jsTR<3XkZqway6UxWFHQwb;-EKAv>PWryy3 z*+C$7^uffAJ?Kde*boSxSBKp0oYMCq%Fyc7fpNK+>6B%Uo(h5`Q4FN|%w*nFy1-vi zE+D+yFZqYw9Z@VPsG76_mBP5Y*}L*M6UyNwfuL~|N@KhY+u^AquxGzURkXNBt(iJ#$p9UfpKZr&w0 zFFuiv2<2^g4p_|zDFk_eFhocKJ@L6Ge-;RzAD^7Qy;scQU(q0pWl0Z7uU`7R%xXji z2F8=E?s~+tujhDnfzs66Kicu{>1VqyyLnuBj;n@mdnF*u5ow8QL@itHa$5vD9b{7v zYo7{iaw|Arg+OKM^(%tl?_Jcu+WImD83Joi~Hxf zQDhSqXow;)dvfEN!}*ur0TSkE*f6dq;!*Al%4njek>%vO(BBZJ339S~0zR83*kLD7 zg=$9Y4O1RZ-TD-AiYc!GV&N?BVrpa=&lk(~9vI86Lj%>wy}B6}@;38@Jb_lK22~B) z`TEAH*|<9;>HCthvyr+F3o70*MsgQ!j}@g75Q!#FXdIitCu8xN%;_El((dE7um9R? z{P5`yq7I2SMCx{0yD3Mg*(2(Xy7%0rx9;k|C&4GjvjHvwH`XIEXzmKcbC(XGd*(FC zs&J9%Te*46T*ESly!ezL86PAf6cx$GmJ(=#k`Qu}3#9p+e|AE%Q~MXyfRIjWDZY4- zrDX!KE9dGZo8Z6{JaL&qry_xpRe$|F@o<}n-aBIPb5iZtKiemZF?DWWL?Rd;$^GU6 zKduncxdLgOoBH>dMgP5jH#uua#p#8$c*UO zuYG*~(M4M>(hTv7%Ypea#|86M7e29^G>UGA-IbT6@x;?VC2;rOhkYl|2wX8@R244H}zuprd|v}`2jg<^KPx0^IYK% zr0QV<4U2N-5E*q;Fc)y2QW`kPv3xAphRX=s!f62)NKfMQr#FOmiP-@I7!LcSCdO4x z(fQ~3nF>TExT>n5EDXnDov0oG8zzFlHM4{lL&A&MwX|9EV}6ZN*iiiEN$ zCQ-s?MP{!Xy2D@6Jqn@}C{Z=``k`SL|2T3A)xvX<-aCZASVSsH?uh z*5#0%?F{pNAkNaL0Z^#vi3z-&TLvP_SX~OFx5F(@E^pQ2q0Wz3Rxmc3q`{kpwxadM zcG&b?Dg@8q@*K%+(0EWig=6SbkrZAkklqeYzv;s~qL>aeBj$mss``i(xuE3P;sSkAuI{xmQa z_=^pb?4EOQ*qxI`qfa0``gVlg^i)bg%Eg9!tcL{2K7l9Er7um3lO9nvm?BaRMOhBn zEoVcLKx}aW_k}TYw=H|1A6cw*MSNq{i=4?_04yN|ze+v#!yxrAhqnl%x%*;a<6%$# z@$>Dz0~C+hic{Y@(%561e~3y=JVt-Qdj3-~9eM=POX-%bf4_9_wG%DCZyt^|oOB5{ z;ox{r&{6)@t%E=~!Yg~(9|5nAgiu(CKpASr&&tSud(`#QsV9BOM5sQjiwxrk8NOz^ z0%TS&8G$sJo9>ypWy9G4Db^z6o$?&R+fXcOaq&j+2-Rm%@kV2r9>wF7N3W-inm}5n zix%&>{!$N6f&uqDl4*t$y!?5ztqFLz0#u^nDf7I^!O`<6uUq==JWcqDYv}d zZbJufo{O_GjCknWEF9vX-IeRX>}FdWa2y*Z&-9IjV_|G78chP}ZvHE~<0F?n_}Utq z(G+^ohO&8V#x+m6;@AJ<^LuD6KK2R~Q`wl!FtCIaM_D}vQjf8+5lAbWcR&5T^(FJZ zr0a`jB|gipWvs3PO^C6vW-W-VlQ1A*}Q z_RO~@rB7@9BS?EGQ9UprIRE9a4oqnT?=Uui+6G<@1=7o5r}t+L-gUDBM{i2vH{H>) zWqn%G3XxH}5YMR8Z%A-1!RmSC2Ak5SbxgXMj3~C0BQCg&f+=leyUi15;}hIQfpi-3amjFcgFPS9F~jeArKB%WNCi}EqaFIv;@NE zmi1~QwmrDK+PaiFF0rVlhz#L$-(O~iH8TSu*{y-<`l@ezycB+fhJ3{HRG{T*U@RMV z_}%LN{L`4DO4Lq!iq5iVticE+@hY{W?~B8P4}$PPK3oZ;*Wf=woRPm~1rJ1@h=auw z{}m}mLt_tQi$c=p=Q0rwkIhB&0NUaR#D^=~)5CG`&i?dSAbegoZDONevp#!6qG()I zumY<5NSbMjYygx1oSR#iRIZEJ{{-xR!pA;=?p1Q%|L>+1b9c{0{wfO6G23BD-`au% z!nu%^NNwDdPtlZ5dH*2LGS!r#LrZTeNc&$8^0yREswgR{nl9nDQ_3(MEF*wTv0VfF z>R{SK8p9#pm}~?B%~iCUl((IA`iHjTt!U9Oi+v;0oEmwm%#Nxz29rDlb`OP68ZUvS zDw1z@|7q&Znnr^yk`YssP4G%R^L>iyASl0OdY^;d=OL8DR-h_H??CskjEzHno?}+3 z&i4K+qCP6Cn<8N_$uB_i3uaLu&0?E_6J~5__};siTluN++5ARtd}^G^e`xinO)<@> z=rG<5zKR?{RB^>Z-Nt>*g_kxW7*qO>3j*{ZXsj|I}ClL8`T#zdv&B@rz61y$?aDVM^kb55}(CPV8QqhHGKjABF6X zhLDd&p!te?!M3WXna=Sb&nY?$X8=9LDCwUeIcw8e7oJ^n0@upTI@UVKeXKQYZUxeY z=BMWey`FyGsz)L2G$e1-H%0v(Ha1;Hff1=2k|Oz}aLW)_@`sS?NFa6{)pKXza~6LV z2%nc<+G*cwQ>G;O3BGQ#9eOU%{PyV@Ym$G3zWItzWddol-DkaC8RF=D{b}zOgqMg> z#+u|d#dbYmQs+9j1Af5)`j-^a0Rm~Y9T~ZI!SOfqaM9HKU26Dwh9#GukGj;t$ z-}0~&NDs@8W<@<16@J@x^gm~O!c5DK8?LWKYu}P&gESLx*Nsf$ASRY|-*~w9$6u8V zz6Bbi=7ZzYRZT9vt6P{K-{#uhN$~>{Pn(ug4kM!+ zWBT1)dh3;r<|GM950GKrE9QVQ??;v;y&-KM@w|F9)a&^1*_hU~t1mBVI5)rVqa~V56Dq_#VWfpV<|f* za!?`4&sQ?>z0^L%V#XZ*3U@SRzxy1Fx#y<5%#w1AagU{J>5@_!%wuna80(dK|{~KKWYXs|u(4wtxpZq+mG>Y!S}i0zDG_}UencwfY+0R#yQGM#vY{ew#0+VtvQ9(oZ@qoK>8fjV#!7Go@qWAFQp_^ zP+~F_!=F%IhFkYJHOMg_dn9W~suR(!Rdv+MEgOYsr%`=q?GoroHEY(NtciW7VD+__ ze0ce0cnV@+RMJG`Y(*~vmp2P&FHg0`21q) zT|GXywdr=gF|u*jbrz75`yEBdXvdmAZ^QSnbH62ciz2fm#N-UaYrIMH)l9P1idnl zrB1BGTXH$mD~f4o_3z&u+|~Y)a_G{?B@5+6pU%z6qbL144RaZ}{N=B|hvNfim0%P9VAb2{)V|lkh zKL&J!Bt37e69?XX<5k9z3ul98Q*=;M?jV5%st)Q9mp}jIH-DMzRjrwG($dTJ7(#-r zSj|DAc`tH82{c5J`0SC^gR(*wUV;h|(s0K*5f6mZ*(%KP8kjT54h2LaLM2bnB-}BY zbP-J%fp{jN1J{lEab2(G8+PI(UR?uu%Y%U-Qyo`c$u`Yd4ad7@HJrdU%~=hH5M2B7 zofjRNd?w?7q=>lnn-Q}*&AXTmBOW0tTeHa7Y^EKG$bwC3Eg*{)y{MT2>1OWkd*b0= zUph!m2h362z|K{hF!hd{niJ;I9}thoMJMsbt1FaP*FLoL3#6C+>(4a(VOW=z6xi%( zF!^hYM1YpE4~QguvAwP(_-fgU%-I6zptp9P{Ly4Yn@C*YHV9cc{7rI3{70RrLX@MW zgFrN>7u_uv$jX1=T<#wJ>=Pr*S#PE?%t5LhL?Rp41-y22X37!uhPrWU0Nc5-V`*yF z{xv*rU})B7RlJ>RKc>dre#}njhW2oo19H?3T=;E=#nVqs1@Gyp8RYBp8a38o)2>{& zWDm$C;PR4QbeI$){tSdR{%UaMFc}y0BqJr zUD2$ry?AIbqz{vqwzy(*`HZ!Dt%VBrB5LH_RnHsN#u>LRJWsQH7A~7Qxlwa)qh!vt z)F^@0C|Mn704qkz*P59l!o1iXkq83j<8J2m2C*Y__DN30ZrV|M^%EbpKk>+^Fz)qL zBMaTDMlL|Fufnx?8iyJerUy=Df1lm;Zc!ny|FY<02GfPJqwMBzw@q(r5K6y0FgJ4k`hQ8 zS(C00-n_ZhMPGxpq(Vw^MuEVR-pqR&V3dKq*zh<$hn&R^n9AGKsfJgxvW>+7#raNYDch=kj=^glwsnfsyxMOfXHD&zL&|*sP-Vv`h zIm>aGW(txxJ0rtGD~pP6!o3=(E)^%&4Oi54qz6fE=}r;!5th?Tg3Sj4QV^ zjC6rDN4!hycrt&bSqsG@tt~-Y$8$u;Z3rpbTS^YjLwpeN;k5lHWWg2Mh?)^W>M^Kng#J6y!j-eWnpKHJH_Dr5olgaCT>>JAzLja348 zD0*%6)$hI&30_ijoY@GUN{<_oNfrsyL~9n&+``6+M6?1YlocJwL@SUs(GKam=bps> zltdW!Y$M9*xP&W(c1&28a0P`~IfzTR2l*1NKo~RZcRk+rrk7T9dnF4{_Wsr11HB=!jSe*B6L(~*)wg50}9Ji14}C&e8l%6Yo?L90oIr{K4YAPCidY_grW8E*g}08yaMTiV)nenWfLmydK~%WNb0yBX*`u`^|*hj zhY8P$=UW4Fkq$1>xz7dCTs&5jka)c6jxi}|u8JuWJ6Bd9As_TcbD9*}8Vtc-F6)hL z4f+$T^v0jrO@E*KUgv&%9;EPo3CfmfZ8R6BJg-u_=KA7rbB`g=`WOdV3#6MnXT!Ch z{yk;n5TE|65jv2+ab8n%N4isCcpBg{L%guK35AeYA)n_2(kIb--`d>npR2Qf(-tI; zsR!f@-eqs)DfN){bd@g-6E4C2s3el6r$Czb<6*5j3_0{fHcoeCGhAhzD|FsJXM-BI zv%ysECuf5af>ppuQrQh%J}dtKFUZ3=j)3&CiDflqQ<00#g{yN_HE6K4r3!!|vu|}g zUNw!Ut&%|TYWDqhcE+I_Z`nT|KPFwk?;GkXGN|0#`}>tk%@vSx1#kNW(u()?o#W5_ zQ$Bzqk*q6|>Pcl8WkyHaVPMY1L`1UHWHLxh=8hCdFG_8{JFvUF`%`o!PRIJngr5^$QQn^|IwUj54Az{*LNDxP|PO-r&;OzV3R z);|0~@IgK{BAm&$!A-_C18H9^P$`WnJQsj7;ht;hvq1P9T@X3p$8Uyx3<7jnmF$5C zi9zD)j6{i*G3SsC1`Af4E5%4eQQVJ=TLS4hRK4rgxf9ynGl}=ivXWy#lRMGi=-Klb7!Jy&F#F&Uk*_iceYQ+N?j5U_<3C z({kM0ERUnLSs=YO|7X(t`CA$WA4O&SG8ImQgP|6((oz$UF4B`S(lXN5iD(G*Zj9Eu zdy(y3Aod&M>|K_XK5OlDHCNVkCQ<8|RveSYPC$+a97qO1+H!Fx0tb?a5;EgP;6MTh zSvcN(_Qku)bJ1Jo!9THVY8mXg_@QCOwL!4!9~(687$;2o&SqrB6-Y0h^WPsC_FBcK zS$<(b^2(gCe%oW%wZSKLh->0T)La+juDOl|tw7oj_Gh>6SKTwD*w zDSJx{wg@z0`o!?5VGTNPO)uh7Aic%CX+pEMzy6YVM0H?RG7ebE)k*gMoFrOaa+8dF z9XU0wisCZl+Ni!M$5mNG*`*yS!QieZ|2#LL{>;N{iFveOg!|C~N-+2+vaJGg)K0&$ zZT}a$x1^A`jJ$N*$jV1fL1$iGs&ymFYmK)-VUA+ih`j+EZQvzEAg$XzxbB&8XZ~7B zuQM71l)S7>kAJCD%{JjDQ1uhM0~JWGR%w^TKAU>~*e^_B!m?@{+dV7+k<5Rjwx^8?qf+xAgR z!<4k*@}h~ArFg!()X}C*W7_hLZcv54X}pyh-CzvCDur@EtChD;Jhz%805fNvii$E- zivCPIhsUx}vp&>j{eGlU1kx%cclYqer?*UAi$G0I;H&Mgu8FeVStHOE!EO@R)WdV& zbx8en9-;#2iFnWSn~R$EJsN6C-HHg{z=#|)#TcPh0D!zhNbOXn!oNNm5wfaw-9Iev zexnQB{YI0iupi!p1mvha`udr@%kDYnLiSF6|2^F`aZ=TE={*0pKkRYrShmMxu6Kd! zUA@RrCeSjqE;RaV=qpdQS=&uNLsEBBF8 z%@S)0{@@OA-8kOux^V+K#Dxci0O1-~=9>94f6c!RLpeJs4KpVn=}PkADW6JSHeh5V z;Puj6&;lc3xJx>>wpc&g#?f*nP_7bs_W|#}^x!_nA(K;zJCTWv7X%ZNuubx2(i12~ z?`XQFxk`vXHNmgg_-D zU!eJF1U|aFZZd-{>sM$3k>~RBlJ~qlvk&C=F?oSB`AZLOk9j5gGzA`#d(0+T z0pHm{_P~4`7yQz;jn`(<|DWG;=fv>Ap%Lr~jUuO^a|F`OyXpRhQAul8Z1Izh;SQAX zYB?{@gL(ln^RAnFZ$HGhpZ%Nyy`XyUKbNL_`*MTpVt6`d71fOAICDJ0Q6@o)#$t(i z>Wg6478^8f!B@~=U&YaWP9Qy<|0@1IadVR>cv!p!UPPid7nsq3B;<=~*Qz?}=Jve@ z3BAV>5=cv^{E==6;l~zUixsxqRaC|DN!9Vy*6z%|)UFl2H89~hFvrbdbDTihBo$dc zddL^I%|$d78qd$m`ps?QK7u`tT_fx&aQ{umL%07e>Fd z(|z%&Z!rJpt=Sk^9nGzu{!FtirVj@N*TqMq;sKF;C_lj^VPf zDYol(zdE?fzebmQ&2~0{<|^7-=TxkV3j5{}wHNbqcalfO?je<~UHfA=h+!cH89`!7 z>BWy2WCQ`^sC5inGh|QK?|MKMX*hVA0WW4xdzE$OPW}ZA{e=Uw1k%&wy5j?`y=%?? zenr6Jv>NDZIp0*P>{yny(Wcl=NPcy&kj7;MxyNOYXGb6{q^M7K|NPA3lZPrHu_{sb z+*P^>*om`K3&RT|lg$`u?@$Asn?AC1s!qE3>0@u+d17GK8LVj5jwp4n9YIMq*N$)y zQe z49{R#2Vt$urF{6AS#iVil8{3+BO=^6G~Mozg7cwcKEPVSUHvP%`qy6hATCge8k2LT zwf{Y4e79e`#2uGAI6WynGkbVS+VHHwd`93?saFUSt@Sc{Qp%@Sj^~pCA5U?7DJ(=< zFGp?8;Qzfduus|DEb@=XOmKfZ=4puhV?-|ja@0Q9`_=mQ6t9f);XE-SF)SQUry)*H z89B@>946B~n9Of1+?n;OGkc5RxV|-;przkIcqTamrB(fS9b#6(4~*(np3Q8H6PP@zEDopEc2l=Wi@T3zW8KnAipqH=`hh>Xm|Pf5@V zMFhoL>pvl=KY0ZdNSn>#C%w?4+q1vLv%6BIkcW?_x*XQ468&bbMCw3x$sS(dyQ~}C zBTmDSS@%y^z8MH0&EO>U0==f>`=3i{E)E+1#&OHB>b)DdxvU}r9u|)wzb-u6w)t-# zxK3_VEyP#L=T(8$s7C!6AMwyTzb(dvA6G2ba$wkFcpBnyx!TpljcAAE zx?OLw77L`U#UVTL4!2&NsuKWCq!*5zCAi2&p$}zMWOny|X3Pdl_DWZR%9Xt-DncM_ zGM-&Btn%&L-`+8mAg6fH-p|aeaBmxETzTdABHXPTNAk$5q*84%&g{~UW**`!M|<8>vBuGEXuEETvaB<^{>wsF~&64U*{Ao7AH~ z&!|rStAEGKF0VT6G$oM%XKbR8CDU@xrlOsOk<#~OpvU4u{EQk!;aasVS{4R9|IO1^ zuyiI4uW(Nsz8TV)INU*yqqfzkr`vb@<}14QΖ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%0AbHY>QnaEClL70bi0o-0QK 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�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 z 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h new file mode 100644 index 00000000..421f25da --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h @@ -0,0 +1,349 @@ +/* + * SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008) + * Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice including the dates of first publication and + * either this permission notice or a reference to + * http://oss.sgi.com/projects/FreeB/ + * shall be included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF + * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * Except as contained in this notice, the name of Silicon Graphics, Inc. + * shall not be used in advertising or otherwise to promote the sale, use or + * other dealings in this Software without prior written authorization from + * Silicon Graphics, Inc. + */ + +#ifndef __glu_h__ +#define __glu_h__ + +#include + +#ifndef GLAPIENTRY +#if defined(_MSC_VER) || defined(__MINGW32__) +#define GLAPIENTRY __stdcall +#else +#define GLAPIENTRY +#endif +#endif + +#ifndef GLAPIENTRYP +#define GLAPIENTRYP GLAPIENTRY * +#endif + +#if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GLU32) +# undef GLAPI +# define GLAPI __declspec(dllexport) +#elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) +/* tag specifying we're building for DLL runtime support */ +# undef GLAPI +# define GLAPI __declspec(dllimport) +#elif !defined(GLAPI) +/* for use with static link lib build of Win32 edition only */ +# define GLAPI extern +#endif /* _STATIC_MESA support */ + +#ifdef __cplusplus +extern "C" { +#endif + +/*************************************************************/ + +/* Extensions */ +#define GLU_EXT_object_space_tess 1 +#define GLU_EXT_nurbs_tessellator 1 + +/* Boolean */ +#define GLU_FALSE 0 +#define GLU_TRUE 1 + +/* Version */ +#define GLU_VERSION_1_1 1 +#define GLU_VERSION_1_2 1 +#define GLU_VERSION_1_3 1 + +/* StringName */ +#define GLU_VERSION 100800 +#define GLU_EXTENSIONS 100801 + +/* ErrorCode */ +#define GLU_INVALID_ENUM 100900 +#define GLU_INVALID_VALUE 100901 +#define GLU_OUT_OF_MEMORY 100902 +#define GLU_INCOMPATIBLE_GL_VERSION 100903 +#define GLU_INVALID_OPERATION 100904 + +/* NurbsDisplay */ +/* GLU_FILL */ +#define GLU_OUTLINE_POLYGON 100240 +#define GLU_OUTLINE_PATCH 100241 + +/* NurbsCallback */ +#define GLU_NURBS_ERROR 100103 +#define GLU_ERROR 100103 +#define GLU_NURBS_BEGIN 100164 +#define GLU_NURBS_BEGIN_EXT 100164 +#define GLU_NURBS_VERTEX 100165 +#define GLU_NURBS_VERTEX_EXT 100165 +#define GLU_NURBS_NORMAL 100166 +#define GLU_NURBS_NORMAL_EXT 100166 +#define GLU_NURBS_COLOR 100167 +#define GLU_NURBS_COLOR_EXT 100167 +#define GLU_NURBS_TEXTURE_COORD 100168 +#define GLU_NURBS_TEX_COORD_EXT 100168 +#define GLU_NURBS_END 100169 +#define GLU_NURBS_END_EXT 100169 +#define GLU_NURBS_BEGIN_DATA 100170 +#define GLU_NURBS_BEGIN_DATA_EXT 100170 +#define GLU_NURBS_VERTEX_DATA 100171 +#define GLU_NURBS_VERTEX_DATA_EXT 100171 +#define GLU_NURBS_NORMAL_DATA 100172 +#define GLU_NURBS_NORMAL_DATA_EXT 100172 +#define GLU_NURBS_COLOR_DATA 100173 +#define GLU_NURBS_COLOR_DATA_EXT 100173 +#define GLU_NURBS_TEXTURE_COORD_DATA 100174 +#define GLU_NURBS_TEX_COORD_DATA_EXT 100174 +#define GLU_NURBS_END_DATA 100175 +#define GLU_NURBS_END_DATA_EXT 100175 + +/* NurbsError */ +#define GLU_NURBS_ERROR1 100251 +#define GLU_NURBS_ERROR2 100252 +#define GLU_NURBS_ERROR3 100253 +#define GLU_NURBS_ERROR4 100254 +#define GLU_NURBS_ERROR5 100255 +#define GLU_NURBS_ERROR6 100256 +#define GLU_NURBS_ERROR7 100257 +#define GLU_NURBS_ERROR8 100258 +#define GLU_NURBS_ERROR9 100259 +#define GLU_NURBS_ERROR10 100260 +#define GLU_NURBS_ERROR11 100261 +#define GLU_NURBS_ERROR12 100262 +#define GLU_NURBS_ERROR13 100263 +#define GLU_NURBS_ERROR14 100264 +#define GLU_NURBS_ERROR15 100265 +#define GLU_NURBS_ERROR16 100266 +#define GLU_NURBS_ERROR17 100267 +#define GLU_NURBS_ERROR18 100268 +#define GLU_NURBS_ERROR19 100269 +#define GLU_NURBS_ERROR20 100270 +#define GLU_NURBS_ERROR21 100271 +#define GLU_NURBS_ERROR22 100272 +#define GLU_NURBS_ERROR23 100273 +#define GLU_NURBS_ERROR24 100274 +#define GLU_NURBS_ERROR25 100275 +#define GLU_NURBS_ERROR26 100276 +#define GLU_NURBS_ERROR27 100277 +#define GLU_NURBS_ERROR28 100278 +#define GLU_NURBS_ERROR29 100279 +#define GLU_NURBS_ERROR30 100280 +#define GLU_NURBS_ERROR31 100281 +#define GLU_NURBS_ERROR32 100282 +#define GLU_NURBS_ERROR33 100283 +#define GLU_NURBS_ERROR34 100284 +#define GLU_NURBS_ERROR35 100285 +#define GLU_NURBS_ERROR36 100286 +#define GLU_NURBS_ERROR37 100287 + +/* NurbsProperty */ +#define GLU_AUTO_LOAD_MATRIX 100200 +#define GLU_CULLING 100201 +#define GLU_SAMPLING_TOLERANCE 100203 +#define GLU_DISPLAY_MODE 100204 +#define GLU_PARAMETRIC_TOLERANCE 100202 +#define GLU_SAMPLING_METHOD 100205 +#define GLU_U_STEP 100206 +#define GLU_V_STEP 100207 +#define GLU_NURBS_MODE 100160 +#define GLU_NURBS_MODE_EXT 100160 +#define GLU_NURBS_TESSELLATOR 100161 +#define GLU_NURBS_TESSELLATOR_EXT 100161 +#define GLU_NURBS_RENDERER 100162 +#define GLU_NURBS_RENDERER_EXT 100162 + +/* NurbsSampling */ +#define GLU_OBJECT_PARAMETRIC_ERROR 100208 +#define GLU_OBJECT_PARAMETRIC_ERROR_EXT 100208 +#define GLU_OBJECT_PATH_LENGTH 100209 +#define GLU_OBJECT_PATH_LENGTH_EXT 100209 +#define GLU_PATH_LENGTH 100215 +#define GLU_PARAMETRIC_ERROR 100216 +#define GLU_DOMAIN_DISTANCE 100217 + +/* NurbsTrim */ +#define GLU_MAP1_TRIM_2 100210 +#define GLU_MAP1_TRIM_3 100211 + +/* QuadricDrawStyle */ +#define GLU_POINT 100010 +#define GLU_LINE 100011 +#define GLU_FILL 100012 +#define GLU_SILHOUETTE 100013 + +/* QuadricCallback */ +/* GLU_ERROR */ + +/* QuadricNormal */ +#define GLU_SMOOTH 100000 +#define GLU_FLAT 100001 +#define GLU_NONE 100002 + +/* QuadricOrientation */ +#define GLU_OUTSIDE 100020 +#define GLU_INSIDE 100021 + +/* TessCallback */ +#define GLU_TESS_BEGIN 100100 +#define GLU_BEGIN 100100 +#define GLU_TESS_VERTEX 100101 +#define GLU_VERTEX 100101 +#define GLU_TESS_END 100102 +#define GLU_END 100102 +#define GLU_TESS_ERROR 100103 +#define GLU_TESS_EDGE_FLAG 100104 +#define GLU_EDGE_FLAG 100104 +#define GLU_TESS_COMBINE 100105 +#define GLU_TESS_BEGIN_DATA 100106 +#define GLU_TESS_VERTEX_DATA 100107 +#define GLU_TESS_END_DATA 100108 +#define GLU_TESS_ERROR_DATA 100109 +#define GLU_TESS_EDGE_FLAG_DATA 100110 +#define GLU_TESS_COMBINE_DATA 100111 + +/* TessContour */ +#define GLU_CW 100120 +#define GLU_CCW 100121 +#define GLU_INTERIOR 100122 +#define GLU_EXTERIOR 100123 +#define GLU_UNKNOWN 100124 + +/* TessProperty */ +#define GLU_TESS_WINDING_RULE 100140 +#define GLU_TESS_BOUNDARY_ONLY 100141 +#define GLU_TESS_TOLERANCE 100142 + +/* TessError */ +#define GLU_TESS_ERROR1 100151 +#define GLU_TESS_ERROR2 100152 +#define GLU_TESS_ERROR3 100153 +#define GLU_TESS_ERROR4 100154 +#define GLU_TESS_ERROR5 100155 +#define GLU_TESS_ERROR6 100156 +#define GLU_TESS_ERROR7 100157 +#define GLU_TESS_ERROR8 100158 +#define GLU_TESS_MISSING_BEGIN_POLYGON 100151 +#define GLU_TESS_MISSING_BEGIN_CONTOUR 100152 +#define GLU_TESS_MISSING_END_POLYGON 100153 +#define GLU_TESS_MISSING_END_CONTOUR 100154 +#define GLU_TESS_COORD_TOO_LARGE 100155 +#define GLU_TESS_NEED_COMBINE_CALLBACK 100156 + +/* TessWinding */ +#define GLU_TESS_WINDING_ODD 100130 +#define GLU_TESS_WINDING_NONZERO 100131 +#define GLU_TESS_WINDING_POSITIVE 100132 +#define GLU_TESS_WINDING_NEGATIVE 100133 +#define GLU_TESS_WINDING_ABS_GEQ_TWO 100134 + +/*************************************************************/ + + +#ifdef __cplusplus +class GLUnurbs; +class GLUquadric; +class GLUtesselator; +#else +typedef struct GLUnurbs GLUnurbs; +typedef struct GLUquadric GLUquadric; +typedef struct GLUtesselator GLUtesselator; +#endif + +typedef GLUnurbs GLUnurbsObj; +typedef GLUquadric GLUquadricObj; +typedef GLUtesselator GLUtesselatorObj; +typedef GLUtesselator GLUtriangulatorObj; + +#define GLU_TESS_MAX_COORD 1.0e150 + +/* Internal convenience typedefs */ +typedef void (GLAPIENTRYP _GLUfuncptr)(void); + +GLAPI void GLAPIENTRY gluBeginCurve (GLUnurbs* nurb); +GLAPI void GLAPIENTRY gluBeginPolygon (GLUtesselator* tess); +GLAPI void GLAPIENTRY gluBeginSurface (GLUnurbs* nurb); +GLAPI void GLAPIENTRY gluBeginTrim (GLUnurbs* nurb); +GLAPI GLint GLAPIENTRY gluBuild1DMipmapLevels (GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data); +GLAPI GLint GLAPIENTRY gluBuild1DMipmaps (GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void *data); +GLAPI GLint GLAPIENTRY gluBuild2DMipmapLevels (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data); +GLAPI GLint GLAPIENTRY gluBuild2DMipmaps (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *data); +GLAPI GLint GLAPIENTRY gluBuild3DMipmapLevels (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data); +GLAPI GLint GLAPIENTRY gluBuild3DMipmaps (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data); +GLAPI GLboolean GLAPIENTRY gluCheckExtension (const GLubyte *extName, const GLubyte *extString); +GLAPI void GLAPIENTRY gluCylinder (GLUquadric* quad, GLdouble base, GLdouble top, GLdouble height, GLint slices, GLint stacks); +GLAPI void GLAPIENTRY gluDeleteNurbsRenderer (GLUnurbs* nurb); +GLAPI void GLAPIENTRY gluDeleteQuadric (GLUquadric* quad); +GLAPI void GLAPIENTRY gluDeleteTess (GLUtesselator* tess); +GLAPI void GLAPIENTRY gluDisk (GLUquadric* quad, GLdouble inner, GLdouble outer, GLint slices, GLint loops); +GLAPI void GLAPIENTRY gluEndCurve (GLUnurbs* nurb); +GLAPI void GLAPIENTRY gluEndPolygon (GLUtesselator* tess); +GLAPI void GLAPIENTRY gluEndSurface (GLUnurbs* nurb); +GLAPI void GLAPIENTRY gluEndTrim (GLUnurbs* nurb); +GLAPI const GLubyte * GLAPIENTRY gluErrorString (GLenum error); +GLAPI void GLAPIENTRY gluGetNurbsProperty (GLUnurbs* nurb, GLenum property, GLfloat* data); +GLAPI const GLubyte * GLAPIENTRY gluGetString (GLenum name); +GLAPI void GLAPIENTRY gluGetTessProperty (GLUtesselator* tess, GLenum which, GLdouble* data); +GLAPI void GLAPIENTRY gluLoadSamplingMatrices (GLUnurbs* nurb, const GLfloat *model, const GLfloat *perspective, const GLint *view); +GLAPI void GLAPIENTRY gluLookAt (GLdouble eyeX, GLdouble eyeY, GLdouble eyeZ, GLdouble centerX, GLdouble centerY, GLdouble centerZ, GLdouble upX, GLdouble upY, GLdouble upZ); +GLAPI GLUnurbs* GLAPIENTRY gluNewNurbsRenderer (void); +GLAPI GLUquadric* GLAPIENTRY gluNewQuadric (void); +GLAPI GLUtesselator* GLAPIENTRY gluNewTess (void); +GLAPI void GLAPIENTRY gluNextContour (GLUtesselator* tess, GLenum type); +GLAPI void GLAPIENTRY gluNurbsCallback (GLUnurbs* nurb, GLenum which, _GLUfuncptr CallBackFunc); +GLAPI void GLAPIENTRY gluNurbsCallbackData (GLUnurbs* nurb, GLvoid* userData); +GLAPI void GLAPIENTRY gluNurbsCallbackDataEXT (GLUnurbs* nurb, GLvoid* userData); +GLAPI void GLAPIENTRY gluNurbsCurve (GLUnurbs* nurb, GLint knotCount, GLfloat *knots, GLint stride, GLfloat *control, GLint order, GLenum type); +GLAPI void GLAPIENTRY gluNurbsProperty (GLUnurbs* nurb, GLenum property, GLfloat value); +GLAPI void GLAPIENTRY gluNurbsSurface (GLUnurbs* nurb, GLint sKnotCount, GLfloat* sKnots, GLint tKnotCount, GLfloat* tKnots, GLint sStride, GLint tStride, GLfloat* control, GLint sOrder, GLint tOrder, GLenum type); +GLAPI void GLAPIENTRY gluOrtho2D (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top); +GLAPI void GLAPIENTRY gluPartialDisk (GLUquadric* quad, GLdouble inner, GLdouble outer, GLint slices, GLint loops, GLdouble start, GLdouble sweep); +GLAPI void GLAPIENTRY gluPerspective (GLdouble fovy, GLdouble aspect, GLdouble zNear, GLdouble zFar); +GLAPI void GLAPIENTRY gluPickMatrix (GLdouble x, GLdouble y, GLdouble delX, GLdouble delY, GLint *viewport); +GLAPI GLint GLAPIENTRY gluProject (GLdouble objX, GLdouble objY, GLdouble objZ, const GLdouble *model, const GLdouble *proj, const GLint *view, GLdouble* winX, GLdouble* winY, GLdouble* winZ); +GLAPI void GLAPIENTRY gluPwlCurve (GLUnurbs* nurb, GLint count, GLfloat* data, GLint stride, GLenum type); +GLAPI void GLAPIENTRY gluQuadricCallback (GLUquadric* quad, GLenum which, _GLUfuncptr CallBackFunc); +GLAPI void GLAPIENTRY gluQuadricDrawStyle (GLUquadric* quad, GLenum draw); +GLAPI void GLAPIENTRY gluQuadricNormals (GLUquadric* quad, GLenum normal); +GLAPI void GLAPIENTRY gluQuadricOrientation (GLUquadric* quad, GLenum orientation); +GLAPI void GLAPIENTRY gluQuadricTexture (GLUquadric* quad, GLboolean texture); +GLAPI GLint GLAPIENTRY gluScaleImage (GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void *dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid* dataOut); +GLAPI void GLAPIENTRY gluSphere (GLUquadric* quad, GLdouble radius, GLint slices, GLint stacks); +GLAPI void GLAPIENTRY gluTessBeginContour (GLUtesselator* tess); +GLAPI void GLAPIENTRY gluTessBeginPolygon (GLUtesselator* tess, GLvoid* data); +GLAPI void GLAPIENTRY gluTessCallback (GLUtesselator* tess, GLenum which, _GLUfuncptr CallBackFunc); +GLAPI void GLAPIENTRY gluTessEndContour (GLUtesselator* tess); +GLAPI void GLAPIENTRY gluTessEndPolygon (GLUtesselator* tess); +GLAPI void GLAPIENTRY gluTessNormal (GLUtesselator* tess, GLdouble valueX, GLdouble valueY, GLdouble valueZ); +GLAPI void GLAPIENTRY gluTessProperty (GLUtesselator* tess, GLenum which, GLdouble data); +GLAPI void GLAPIENTRY gluTessVertex (GLUtesselator* tess, GLdouble *location, GLvoid* data); +GLAPI GLint GLAPIENTRY gluUnProject (GLdouble winX, GLdouble winY, GLdouble winZ, const GLdouble *model, const GLdouble *proj, const GLint *view, GLdouble* objX, GLdouble* objY, GLdouble* objZ); +GLAPI GLint GLAPIENTRY gluUnProject4 (GLdouble winX, GLdouble winY, GLdouble winZ, GLdouble clipW, const GLdouble *model, const GLdouble *proj, const GLint *view, GLdouble nearVal, GLdouble farVal, GLdouble* objX, GLdouble* objY, GLdouble* objZ, GLdouble* objW); + +#ifdef __cplusplus +} +#endif + +#endif /* __glu_h__ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..dbaff761f0663906e1f086463097cd80342785a4 GIT binary patch literal 58386 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 zμ&PmR`a0m^a#AGaeQh4kx-@3`i(+|s6|DH2stT~g#LudYHAHXFbB7z5 z#~R0s#K~#x6Aym=_3*_476ok~Pr(rRDqdhSRcmiIK%E&1!|7UKT5r791yC1; z!U2Ud)D=)yh9Uq(Fcb+WlA&%|7)Czv__jOp>(2T00Mvt_o`8BX6a^@Xpcdc9Kz$kN2dE!I(KsL=T1y0u7~G5Dd$G6|%lG1NFOKiU1Bz!T0Z;-%{Xt)U zrf+~20pHU=%=(1~X+lLOpks(az!kH0Q3}(cYIH z&2QHBZKd5U8xCW?kZ!zdNMA83z%}CjkoHwhgpW?ojlQGJQy#M&D#ehKotJS=O{iXS zXhQ1o8Z@*{jWwZwl=e_(3%c{H6E@`OB)5hXC;d6MhP?f|McX6W-LSf`Zaxh9Ck(L% zG?WrY&uo^%sM6>1j$GC1Iz)DO%jbE@!)$XlVVJWClXEuW3`jL+qYmMeJhpEU5QZUE zn2eGZXKH*dd(ge7F5R`De{Fxn$Z0X37?(ntAWlc#dJ z{d8r>h|Hv%jI^x$+=)3*X_nb5^LCj3m9QwVzqj5SlT}C)St-(4C>`*Nh0q>Md34fu z55%RKL}B%ixl?fhMotNG zn%@W3z1RD}ZQqhm3v*J;l!13HlQrU*UxZDFdUc*9E742fw?nFAxNbn_;?>RHfOo+~ zin^c#UF1}%I6w3mDSQjMKmU39#Gg=C!Va^v)GlzrbdjqS#d#|~Ni{x6g|s+!`)#4cb9vgbVpMGEGxPC_@z4agL)T5mW=3YV={9P^}FuR74pER^kp4){Dau@6LU zP>kzk^4ej2oLCc{vEzS6ogyuHZSN7gVsGlMa^0{v2kJMe z&GNh5yXn3ShvD}LP=Poiss&B!(gFpNXL)RtuG-zk3n$hs0;y_jwQc{_@Y_c__X(Z`ZmkE}dNYNx#o-!rG)Uty8wodTh@no>R>iZ4 zdjynqgjCkz94w`*4?lYM@)O5j^3TPaab!WfVJ5+9Ub27)L!3}yc6#BMv@zMacBUNSc-SyL;svWQWF3Mz`=K%5Oa*$$jLKX?VG+)ai{oeY| zl%~z1;9PL@S$Jt4zq-);R2;;(Q1w|;U%26uZV%p>;9AF#P$Q92lZsQ=l_pgu+q-Hq zjFq62kfNaz!SX!1wn{1O4w?Gb&cX*DH~UE#)8;`O2{^_s0UZE+D2|GqBJC`7M7>+Z zWuxM2=5Yr|#MjE~Gg6@`$X;D`)+6 zWvkGG*sF@F(i?F80R}tR(@`>ZIK~frB|rYY@09RPGdHG)kE?4-J+&&PX{dIZCdNZW zjfjIXaV0-g2g`#=F8%RPuxO}ckvP%aIVR5yDavW{+2lIavC2?+93Y(@0(MNDZoj4YgDXAnb(S3PSvM5#j+1D*%R!SkDD+QRf>R-9Pkg)a z)K6w5RUx27%=PgsJ6a54b&+D-9f=m8ba^f7>(d|lZoT2DN65S8!h;?N@9rV{p&k%V zzz&;4ot+&_(0U?Byr&Ej7bjrXI0P-d)5*8`tsnJ_Sq9tIE=f2#Cke&~Q7=v{UM4BO z^Iu)EXZ)OzXnt2+hwXgSh`ARwZR{muzI!1L!1BBIl14o?bK&d<+$6LY8f!0{0ogtxAsVzcP^`7MFZ4v4)u1gN|th%P_ zRU6%_xi3V$uN3vZI0hN8qnhJ}B_Ce#^~y0O9XLhE^aP|pqEoadnFMjp^OKU-Jr`BK z`OaVMrn#f-heM0{$wQ0!;pA$-4z!;>o4O>W@Ah?4`FUzm&jH!e+H6kY@NOiHULu9U+xNPJ7j#s ztC;YU%Er3abPVbtM%F_NeCmK5TIRQc&)?Da-+@RrE?E@?-Sv&-UQ^`um72L8@dS>iD8jpZC%)CTTOhRYtc{3K)A0g7goP3RxVOyG+Q*{{zd4;AsE= literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h new file mode 100644 index 00000000..9ba8f68c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h @@ -0,0 +1,233 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL.h + * + * Main include header for the SDL library + */ + + +#ifndef SDL_h_ +#define SDL_h_ + +#include "SDL_main.h" +#include "SDL_stdinc.h" +#include "SDL_assert.h" +#include "SDL_atomic.h" +#include "SDL_audio.h" +#include "SDL_clipboard.h" +#include "SDL_cpuinfo.h" +#include "SDL_endian.h" +#include "SDL_error.h" +#include "SDL_events.h" +#include "SDL_filesystem.h" +#include "SDL_gamecontroller.h" +#include "SDL_guid.h" +#include "SDL_haptic.h" +#include "SDL_hidapi.h" +#include "SDL_hints.h" +#include "SDL_joystick.h" +#include "SDL_loadso.h" +#include "SDL_log.h" +#include "SDL_messagebox.h" +#include "SDL_metal.h" +#include "SDL_mutex.h" +#include "SDL_power.h" +#include "SDL_render.h" +#include "SDL_rwops.h" +#include "SDL_sensor.h" +#include "SDL_shape.h" +#include "SDL_system.h" +#include "SDL_thread.h" +#include "SDL_timer.h" +#include "SDL_version.h" +#include "SDL_video.h" +#include "SDL_locale.h" +#include "SDL_misc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/* As of version 0.5, SDL is loaded dynamically into the application */ + +/** + * \name SDL_INIT_* + * + * These are the flags which may be passed to SDL_Init(). You should + * specify the subsystems which you will be using in your application. + */ +/* @{ */ +#define SDL_INIT_TIMER 0x00000001u +#define SDL_INIT_AUDIO 0x00000010u +#define SDL_INIT_VIDEO 0x00000020u /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */ +#define SDL_INIT_JOYSTICK 0x00000200u /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */ +#define SDL_INIT_HAPTIC 0x00001000u +#define SDL_INIT_GAMECONTROLLER 0x00002000u /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */ +#define SDL_INIT_EVENTS 0x00004000u +#define SDL_INIT_SENSOR 0x00008000u +#define SDL_INIT_NOPARACHUTE 0x00100000u /**< compatibility; this flag is ignored. */ +#define SDL_INIT_EVERYTHING ( \ + SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_EVENTS | \ + SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER | SDL_INIT_SENSOR \ + ) +/* @} */ + +/** + * Initialize the SDL library. + * + * SDL_Init() simply forwards to calling SDL_InitSubSystem(). Therefore, the + * two may be used interchangeably. Though for readability of your code + * SDL_InitSubSystem() might be preferred. + * + * The file I/O (for example: SDL_RWFromFile) and threading (SDL_CreateThread) + * subsystems are initialized by default. Message boxes + * (SDL_ShowSimpleMessageBox) also attempt to work without initializing the + * video subsystem, in hopes of being useful in showing an error dialog when + * SDL_Init fails. You must specifically initialize other subsystems if you + * use them in your application. + * + * Logging (such as SDL_Log) works without initialization, too. + * + * `flags` may be any of the following OR'd together: + * + * - `SDL_INIT_TIMER`: timer subsystem + * - `SDL_INIT_AUDIO`: audio subsystem + * - `SDL_INIT_VIDEO`: video subsystem; automatically initializes the events + * subsystem + * - `SDL_INIT_JOYSTICK`: joystick subsystem; automatically initializes the + * events subsystem + * - `SDL_INIT_HAPTIC`: haptic (force feedback) subsystem + * - `SDL_INIT_GAMECONTROLLER`: controller subsystem; automatically + * initializes the joystick subsystem + * - `SDL_INIT_EVENTS`: events subsystem + * - `SDL_INIT_EVERYTHING`: all of the above subsystems + * - `SDL_INIT_NOPARACHUTE`: compatibility; this flag is ignored + * + * Subsystem initialization is ref-counted, you must call SDL_QuitSubSystem() + * for each SDL_InitSubSystem() to correctly shutdown a subsystem manually (or + * call SDL_Quit() to force shutdown). If a subsystem is already loaded then + * this call will increase the ref-count and return. + * + * \param flags subsystem initialization flags + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_InitSubSystem + * \sa SDL_Quit + * \sa SDL_SetMainReady + * \sa SDL_WasInit + */ +extern DECLSPEC int SDLCALL SDL_Init(Uint32 flags); + +/** + * Compatibility function to initialize the SDL library. + * + * In SDL2, this function and SDL_Init() are interchangeable. + * + * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Init + * \sa SDL_Quit + * \sa SDL_QuitSubSystem + */ +extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags); + +/** + * Shut down specific SDL subsystems. + * + * If you start a subsystem using a call to that subsystem's init function + * (for example SDL_VideoInit()) instead of SDL_Init() or SDL_InitSubSystem(), + * SDL_QuitSubSystem() and SDL_WasInit() will not work. You will need to use + * that subsystem's quit function (SDL_VideoQuit()) directly instead. But + * generally, you should not be using those functions directly anyhow; use + * SDL_Init() instead. + * + * You still need to call SDL_Quit() even if you close all open subsystems + * with SDL_QuitSubSystem(). + * + * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_InitSubSystem + * \sa SDL_Quit + */ +extern DECLSPEC void SDLCALL SDL_QuitSubSystem(Uint32 flags); + +/** + * Get a mask of the specified subsystems which are currently initialized. + * + * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. + * \returns a mask of all initialized subsystems if `flags` is 0, otherwise it + * returns the initialization status of the specified subsystems. + * + * The return value does not include SDL_INIT_NOPARACHUTE. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Init + * \sa SDL_InitSubSystem + */ +extern DECLSPEC Uint32 SDLCALL SDL_WasInit(Uint32 flags); + +/** + * Clean up all initialized subsystems. + * + * You should call this function even if you have already shutdown each + * initialized subsystem with SDL_QuitSubSystem(). It is safe to call this + * function even in the case of errors in initialization. + * + * If you start a subsystem using a call to that subsystem's init function + * (for example SDL_VideoInit()) instead of SDL_Init() or SDL_InitSubSystem(), + * then you must use that subsystem's quit function (SDL_VideoQuit()) to shut + * it down before calling SDL_Quit(). But generally, you should not be using + * those functions directly anyhow; use SDL_Init() instead. + * + * You can use this function with atexit() to ensure that it is run when your + * application is shutdown, but it is not wise to do this from a library or + * other dynamically loaded code. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Init + * \sa SDL_QuitSubSystem + */ +extern DECLSPEC void SDLCALL SDL_Quit(void); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e101eee5f897f53f02432c4ec8a1e66b31aa237f GIT binary patch literal 19520 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h new file mode 100644 index 00000000..7ce823ec --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h @@ -0,0 +1,322 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_assert_h_ +#define SDL_assert_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef SDL_ASSERT_LEVEL +#ifdef SDL_DEFAULT_ASSERT_LEVEL +#define SDL_ASSERT_LEVEL SDL_DEFAULT_ASSERT_LEVEL +#elif defined(_DEBUG) || defined(DEBUG) || \ + (defined(__GNUC__) && !defined(__OPTIMIZE__)) +#define SDL_ASSERT_LEVEL 2 +#else +#define SDL_ASSERT_LEVEL 1 +#endif +#endif /* SDL_ASSERT_LEVEL */ + +/* +These are macros and not first class functions so that the debugger breaks +on the assertion line and not in some random guts of SDL, and so each +assert can have unique static variables associated with it. +*/ + +#if defined(_MSC_VER) +/* Don't include intrin.h here because it contains C++ code */ + extern void __cdecl __debugbreak(void); + #define SDL_TriggerBreakpoint() __debugbreak() +#elif _SDL_HAS_BUILTIN(__builtin_debugtrap) + #define SDL_TriggerBreakpoint() __builtin_debugtrap() +#elif ( (!defined(__NACL__)) && ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))) ) + #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "int $3\n\t" ) +#elif (defined(__GNUC__) || defined(__clang__)) && defined(__riscv) + #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "ebreak\n\t" ) +#elif ( defined(__APPLE__) && (defined(__arm64__) || defined(__aarch64__)) ) /* this might work on other ARM targets, but this is a known quantity... */ + #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "brk #22\n\t" ) +#elif defined(__APPLE__) && defined(__arm__) + #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "bkpt #22\n\t" ) +#elif defined(__386__) && defined(__WATCOMC__) + #define SDL_TriggerBreakpoint() { _asm { int 0x03 } } +#elif defined(HAVE_SIGNAL_H) && !defined(__WATCOMC__) + #include + #define SDL_TriggerBreakpoint() raise(SIGTRAP) +#else + /* How do we trigger breakpoints on this platform? */ + #define SDL_TriggerBreakpoint() +#endif + +#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) /* C99 supports __func__ as a standard. */ +# define SDL_FUNCTION __func__ +#elif ((defined(__GNUC__) && (__GNUC__ >= 2)) || defined(_MSC_VER) || defined (__WATCOMC__)) +# define SDL_FUNCTION __FUNCTION__ +#else +# define SDL_FUNCTION "???" +#endif +#define SDL_FILE __FILE__ +#define SDL_LINE __LINE__ + +/* +sizeof (x) makes the compiler still parse the expression even without +assertions enabled, so the code is always checked at compile time, but +doesn't actually generate code for it, so there are no side effects or +expensive checks at run time, just the constant size of what x WOULD be, +which presumably gets optimized out as unused. +This also solves the problem of... + + int somevalue = blah(); + SDL_assert(somevalue == 1); + +...which would cause compiles to complain that somevalue is unused if we +disable assertions. +*/ + +/* "while (0,0)" fools Microsoft's compiler's /W4 warning level into thinking + this condition isn't constant. And looks like an owl's face! */ +#ifdef _MSC_VER /* stupid /W4 warnings. */ +#define SDL_NULL_WHILE_LOOP_CONDITION (0,0) +#else +#define SDL_NULL_WHILE_LOOP_CONDITION (0) +#endif + +#define SDL_disabled_assert(condition) \ + do { (void) sizeof ((condition)); } while (SDL_NULL_WHILE_LOOP_CONDITION) + +typedef enum +{ + SDL_ASSERTION_RETRY, /**< Retry the assert immediately. */ + SDL_ASSERTION_BREAK, /**< Make the debugger trigger a breakpoint. */ + SDL_ASSERTION_ABORT, /**< Terminate the program. */ + SDL_ASSERTION_IGNORE, /**< Ignore the assert. */ + SDL_ASSERTION_ALWAYS_IGNORE /**< Ignore the assert from now on. */ +} SDL_AssertState; + +typedef struct SDL_AssertData +{ + int always_ignore; + unsigned int trigger_count; + const char *condition; + const char *filename; + int linenum; + const char *function; + const struct SDL_AssertData *next; +} SDL_AssertData; + +/* Never call this directly. Use the SDL_assert* macros. */ +extern DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData *, + const char *, + const char *, int) +#if defined(__clang__) +#if __has_feature(attribute_analyzer_noreturn) +/* this tells Clang's static analysis that we're a custom assert function, + and that the analyzer should assume the condition was always true past this + SDL_assert test. */ + __attribute__((analyzer_noreturn)) +#endif +#endif +; + +/* the do {} while(0) avoids dangling else problems: + if (x) SDL_assert(y); else blah(); + ... without the do/while, the "else" could attach to this macro's "if". + We try to handle just the minimum we need here in a macro...the loop, + the static vars, and break points. The heavy lifting is handled in + SDL_ReportAssertion(), in SDL_assert.c. +*/ +#define SDL_enabled_assert(condition) \ + do { \ + while ( !(condition) ) { \ + static struct SDL_AssertData sdl_assert_data = { 0, 0, #condition, 0, 0, 0, 0 }; \ + const SDL_AssertState sdl_assert_state = SDL_ReportAssertion(&sdl_assert_data, SDL_FUNCTION, SDL_FILE, SDL_LINE); \ + if (sdl_assert_state == SDL_ASSERTION_RETRY) { \ + continue; /* go again. */ \ + } else if (sdl_assert_state == SDL_ASSERTION_BREAK) { \ + SDL_TriggerBreakpoint(); \ + } \ + break; /* not retrying. */ \ + } \ + } while (SDL_NULL_WHILE_LOOP_CONDITION) + +/* Enable various levels of assertions. */ +#if SDL_ASSERT_LEVEL == 0 /* assertions disabled */ +# define SDL_assert(condition) SDL_disabled_assert(condition) +# define SDL_assert_release(condition) SDL_disabled_assert(condition) +# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) +#elif SDL_ASSERT_LEVEL == 1 /* release settings. */ +# define SDL_assert(condition) SDL_disabled_assert(condition) +# define SDL_assert_release(condition) SDL_enabled_assert(condition) +# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) +#elif SDL_ASSERT_LEVEL == 2 /* normal settings. */ +# define SDL_assert(condition) SDL_enabled_assert(condition) +# define SDL_assert_release(condition) SDL_enabled_assert(condition) +# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) +#elif SDL_ASSERT_LEVEL == 3 /* paranoid settings. */ +# define SDL_assert(condition) SDL_enabled_assert(condition) +# define SDL_assert_release(condition) SDL_enabled_assert(condition) +# define SDL_assert_paranoid(condition) SDL_enabled_assert(condition) +#else +# error Unknown assertion level. +#endif + +/* this assertion is never disabled at any level. */ +#define SDL_assert_always(condition) SDL_enabled_assert(condition) + + +/** + * A callback that fires when an SDL assertion fails. + * + * \param data a pointer to the SDL_AssertData structure corresponding to the + * current assertion + * \param userdata what was passed as `userdata` to SDL_SetAssertionHandler() + * \returns an SDL_AssertState value indicating how to handle the failure. + */ +typedef SDL_AssertState (SDLCALL *SDL_AssertionHandler)( + const SDL_AssertData* data, void* userdata); + +/** + * Set an application-defined assertion handler. + * + * This function allows an application to show its own assertion UI and/or + * force the response to an assertion failure. If the application doesn't + * provide this, SDL will try to do the right thing, popping up a + * system-specific GUI dialog, and probably minimizing any fullscreen windows. + * + * This callback may fire from any thread, but it runs wrapped in a mutex, so + * it will only fire from one thread at a time. + * + * This callback is NOT reset to SDL's internal handler upon SDL_Quit()! + * + * \param handler the SDL_AssertionHandler function to call when an assertion + * fails or NULL for the default handler + * \param userdata a pointer that is passed to `handler` + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetAssertionHandler + */ +extern DECLSPEC void SDLCALL SDL_SetAssertionHandler( + SDL_AssertionHandler handler, + void *userdata); + +/** + * Get the default assertion handler. + * + * This returns the function pointer that is called by default when an + * assertion is triggered. This is an internal function provided by SDL, that + * is used for assertions when SDL_SetAssertionHandler() hasn't been used to + * provide a different function. + * + * \returns the default SDL_AssertionHandler that is called when an assert + * triggers. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_GetAssertionHandler + */ +extern DECLSPEC SDL_AssertionHandler SDLCALL SDL_GetDefaultAssertionHandler(void); + +/** + * Get the current assertion handler. + * + * This returns the function pointer that is called when an assertion is + * triggered. This is either the value last passed to + * SDL_SetAssertionHandler(), or if no application-specified function is set, + * is equivalent to calling SDL_GetDefaultAssertionHandler(). + * + * The parameter `puserdata` is a pointer to a void*, which will store the + * "userdata" pointer that was passed to SDL_SetAssertionHandler(). This value + * will always be NULL for the default handler. If you don't care about this + * data, it is safe to pass a NULL pointer to this function to ignore it. + * + * \param puserdata pointer which is filled with the "userdata" pointer that + * was passed to SDL_SetAssertionHandler() + * \returns the SDL_AssertionHandler that is called when an assert triggers. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_SetAssertionHandler + */ +extern DECLSPEC SDL_AssertionHandler SDLCALL SDL_GetAssertionHandler(void **puserdata); + +/** + * Get a list of all assertion failures. + * + * This function gets all assertions triggered since the last call to + * SDL_ResetAssertionReport(), or the start of the program. + * + * The proper way to examine this data looks something like this: + * + * ```c + * const SDL_AssertData *item = SDL_GetAssertionReport(); + * while (item) { + * printf("'%s', %s (%s:%d), triggered %u times, always ignore: %s.\\n", + * item->condition, item->function, item->filename, + * item->linenum, item->trigger_count, + * item->always_ignore ? "yes" : "no"); + * item = item->next; + * } + * ``` + * + * \returns a list of all failed assertions or NULL if the list is empty. This + * memory should not be modified or freed by the application. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ResetAssertionReport + */ +extern DECLSPEC const SDL_AssertData * SDLCALL SDL_GetAssertionReport(void); + +/** + * Clear the list of all assertion failures. + * + * This function will clear the list of all assertions triggered up to that + * point. Immediately following this call, SDL_GetAssertionReport will return + * no items. In addition, any previously-triggered assertions will be reset to + * a trigger_count of zero, and their always_ignore state will be false. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetAssertionReport + */ +extern DECLSPEC void SDLCALL SDL_ResetAssertionReport(void); + + +/* these had wrong naming conventions until 2.0.4. Please update your app! */ +#define SDL_assert_state SDL_AssertState +#define SDL_assert_data SDL_AssertData + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_assert_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b2d83ac61756ec3169292b1241a71737ec166ab8 GIT binary patch literal 20150 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h new file mode 100644 index 00000000..1dd816a3 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h @@ -0,0 +1,414 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_atomic.h + * + * Atomic operations. + * + * IMPORTANT: + * If you are not an expert in concurrent lockless programming, you should + * only be using the atomic lock and reference counting functions in this + * file. In all other cases you should be protecting your data structures + * with full mutexes. + * + * The list of "safe" functions to use are: + * SDL_AtomicLock() + * SDL_AtomicUnlock() + * SDL_AtomicIncRef() + * SDL_AtomicDecRef() + * + * Seriously, here be dragons! + * ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + * + * You can find out a little more about lockless programming and the + * subtle issues that can arise here: + * http://msdn.microsoft.com/en-us/library/ee418650%28v=vs.85%29.aspx + * + * There's also lots of good information here: + * http://www.1024cores.net/home/lock-free-algorithms + * http://preshing.com/ + * + * These operations may or may not actually be implemented using + * processor specific atomic operations. When possible they are + * implemented as true processor specific atomic operations. When that + * is not possible the are implemented using locks that *do* use the + * available atomic operations. + * + * All of the atomic operations that modify memory are full memory barriers. + */ + +#ifndef SDL_atomic_h_ +#define SDL_atomic_h_ + +#include "SDL_stdinc.h" +#include "SDL_platform.h" + +#include "begin_code.h" + +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \name SDL AtomicLock + * + * The atomic locks are efficient spinlocks using CPU instructions, + * but are vulnerable to starvation and can spin forever if a thread + * holding a lock has been terminated. For this reason you should + * minimize the code executed inside an atomic lock and never do + * expensive things like API or system calls while holding them. + * + * The atomic locks are not safe to lock recursively. + * + * Porting Note: + * The spin lock functions and type are required and can not be + * emulated because they are used in the atomic emulation code. + */ +/* @{ */ + +typedef int SDL_SpinLock; + +/** + * Try to lock a spin lock by setting it to a non-zero value. + * + * ***Please note that spinlocks are dangerous if you don't know what you're + * doing. Please be careful using any sort of spinlock!*** + * + * \param lock a pointer to a lock variable + * \returns SDL_TRUE if the lock succeeded, SDL_FALSE if the lock is already + * held. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AtomicLock + * \sa SDL_AtomicUnlock + */ +extern DECLSPEC SDL_bool SDLCALL SDL_AtomicTryLock(SDL_SpinLock *lock); + +/** + * Lock a spin lock by setting it to a non-zero value. + * + * ***Please note that spinlocks are dangerous if you don't know what you're + * doing. Please be careful using any sort of spinlock!*** + * + * \param lock a pointer to a lock variable + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AtomicTryLock + * \sa SDL_AtomicUnlock + */ +extern DECLSPEC void SDLCALL SDL_AtomicLock(SDL_SpinLock *lock); + +/** + * Unlock a spin lock by setting it to 0. + * + * Always returns immediately. + * + * ***Please note that spinlocks are dangerous if you don't know what you're + * doing. Please be careful using any sort of spinlock!*** + * + * \param lock a pointer to a lock variable + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AtomicLock + * \sa SDL_AtomicTryLock + */ +extern DECLSPEC void SDLCALL SDL_AtomicUnlock(SDL_SpinLock *lock); + +/* @} *//* SDL AtomicLock */ + + +/** + * The compiler barrier prevents the compiler from reordering + * reads and writes to globally visible variables across the call. + */ +#if defined(_MSC_VER) && (_MSC_VER > 1200) && !defined(__clang__) +void _ReadWriteBarrier(void); +#pragma intrinsic(_ReadWriteBarrier) +#define SDL_CompilerBarrier() _ReadWriteBarrier() +#elif (defined(__GNUC__) && !defined(__EMSCRIPTEN__)) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120)) +/* This is correct for all CPUs when using GCC or Solaris Studio 12.1+. */ +#define SDL_CompilerBarrier() __asm__ __volatile__ ("" : : : "memory") +#elif defined(__WATCOMC__) +extern __inline void SDL_CompilerBarrier(void); +#pragma aux SDL_CompilerBarrier = "" parm [] modify exact []; +#else +#define SDL_CompilerBarrier() \ +{ SDL_SpinLock _tmp = 0; SDL_AtomicLock(&_tmp); SDL_AtomicUnlock(&_tmp); } +#endif + +/** + * Memory barriers are designed to prevent reads and writes from being + * reordered by the compiler and being seen out of order on multi-core CPUs. + * + * A typical pattern would be for thread A to write some data and a flag, and + * for thread B to read the flag and get the data. In this case you would + * insert a release barrier between writing the data and the flag, + * guaranteeing that the data write completes no later than the flag is + * written, and you would insert an acquire barrier between reading the flag + * and reading the data, to ensure that all the reads associated with the flag + * have completed. + * + * In this pattern you should always see a release barrier paired with an + * acquire barrier and you should gate the data reads/writes with a single + * flag variable. + * + * For more information on these semantics, take a look at the blog post: + * http://preshing.com/20120913/acquire-and-release-semantics + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC void SDLCALL SDL_MemoryBarrierReleaseFunction(void); +extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void); + +#if defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__)) +#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("lwsync" : : : "memory") +#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("lwsync" : : : "memory") +#elif defined(__GNUC__) && defined(__aarch64__) +#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") +#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") +#elif defined(__GNUC__) && defined(__arm__) +#if 0 /* defined(__LINUX__) || defined(__ANDROID__) */ +/* Information from: + https://chromium.googlesource.com/chromium/chromium/+/trunk/base/atomicops_internals_arm_gcc.h#19 + + The Linux kernel provides a helper function which provides the right code for a memory barrier, + hard-coded at address 0xffff0fa0 +*/ +typedef void (*SDL_KernelMemoryBarrierFunc)(); +#define SDL_MemoryBarrierRelease() ((SDL_KernelMemoryBarrierFunc)0xffff0fa0)() +#define SDL_MemoryBarrierAcquire() ((SDL_KernelMemoryBarrierFunc)0xffff0fa0)() +#elif 0 /* defined(__QNXNTO__) */ +#include + +#define SDL_MemoryBarrierRelease() __cpu_membarrier() +#define SDL_MemoryBarrierAcquire() __cpu_membarrier() +#else +#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) || defined(__ARM_ARCH_8A__) +#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") +#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") +#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__) +#ifdef __thumb__ +/* The mcr instruction isn't available in thumb mode, use real functions */ +#define SDL_MEMORY_BARRIER_USES_FUNCTION +#define SDL_MemoryBarrierRelease() SDL_MemoryBarrierReleaseFunction() +#define SDL_MemoryBarrierAcquire() SDL_MemoryBarrierAcquireFunction() +#else +#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory") +#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory") +#endif /* __thumb__ */ +#else +#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("" : : : "memory") +#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("" : : : "memory") +#endif /* __LINUX__ || __ANDROID__ */ +#endif /* __GNUC__ && __arm__ */ +#else +#if (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120)) +/* This is correct for all CPUs on Solaris when using Solaris Studio 12.1+. */ +#include +#define SDL_MemoryBarrierRelease() __machine_rel_barrier() +#define SDL_MemoryBarrierAcquire() __machine_acq_barrier() +#else +/* This is correct for the x86 and x64 CPUs, and we'll expand this over time. */ +#define SDL_MemoryBarrierRelease() SDL_CompilerBarrier() +#define SDL_MemoryBarrierAcquire() SDL_CompilerBarrier() +#endif +#endif + +/* "REP NOP" is PAUSE, coded for tools that don't know it by that name. */ +#if (defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__)) + #define SDL_CPUPauseInstruction() __asm__ __volatile__("pause\n") /* Some assemblers can't do REP NOP, so go with PAUSE. */ +#elif (defined(__arm__) && defined(__ARM_ARCH) && __ARM_ARCH >= 7) || defined(__aarch64__) + #define SDL_CPUPauseInstruction() __asm__ __volatile__("yield" ::: "memory") +#elif (defined(__powerpc__) || defined(__powerpc64__)) + #define SDL_CPUPauseInstruction() __asm__ __volatile__("or 27,27,27"); +#elif defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_X64)) + #define SDL_CPUPauseInstruction() _mm_pause() /* this is actually "rep nop" and not a SIMD instruction. No inline asm in MSVC x86-64! */ +#elif defined(_MSC_VER) && (defined(_M_ARM) || defined(_M_ARM64)) + #define SDL_CPUPauseInstruction() __yield() +#elif defined(__WATCOMC__) && defined(__386__) + extern __inline void SDL_CPUPauseInstruction(void); + #pragma aux SDL_CPUPauseInstruction = ".686p" ".xmm2" "pause" +#else + #define SDL_CPUPauseInstruction() +#endif + + +/** + * \brief A type representing an atomic integer value. It is a struct + * so people don't accidentally use numeric operations on it. + */ +typedef struct { int value; } SDL_atomic_t; + +/** + * Set an atomic variable to a new value if it is currently an old value. + * + * ***Note: If you don't know what this function is for, you shouldn't use + * it!*** + * + * \param a a pointer to an SDL_atomic_t variable to be modified + * \param oldval the old value + * \param newval the new value + * \returns SDL_TRUE if the atomic variable was set, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AtomicCASPtr + * \sa SDL_AtomicGet + * \sa SDL_AtomicSet + */ +extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCAS(SDL_atomic_t *a, int oldval, int newval); + +/** + * Set an atomic variable to a value. + * + * This function also acts as a full memory barrier. + * + * ***Note: If you don't know what this function is for, you shouldn't use + * it!*** + * + * \param a a pointer to an SDL_atomic_t variable to be modified + * \param v the desired value + * \returns the previous value of the atomic variable. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_AtomicGet + */ +extern DECLSPEC int SDLCALL SDL_AtomicSet(SDL_atomic_t *a, int v); + +/** + * Get the value of an atomic variable. + * + * ***Note: If you don't know what this function is for, you shouldn't use + * it!*** + * + * \param a a pointer to an SDL_atomic_t variable + * \returns the current value of an atomic variable. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_AtomicSet + */ +extern DECLSPEC int SDLCALL SDL_AtomicGet(SDL_atomic_t *a); + +/** + * Add to an atomic variable. + * + * This function also acts as a full memory barrier. + * + * ***Note: If you don't know what this function is for, you shouldn't use + * it!*** + * + * \param a a pointer to an SDL_atomic_t variable to be modified + * \param v the desired value to add + * \returns the previous value of the atomic variable. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_AtomicDecRef + * \sa SDL_AtomicIncRef + */ +extern DECLSPEC int SDLCALL SDL_AtomicAdd(SDL_atomic_t *a, int v); + +/** + * \brief Increment an atomic variable used as a reference count. + */ +#ifndef SDL_AtomicIncRef +#define SDL_AtomicIncRef(a) SDL_AtomicAdd(a, 1) +#endif + +/** + * \brief Decrement an atomic variable used as a reference count. + * + * \return SDL_TRUE if the variable reached zero after decrementing, + * SDL_FALSE otherwise + */ +#ifndef SDL_AtomicDecRef +#define SDL_AtomicDecRef(a) (SDL_AtomicAdd(a, -1) == 1) +#endif + +/** + * Set a pointer to a new value if it is currently an old value. + * + * ***Note: If you don't know what this function is for, you shouldn't use + * it!*** + * + * \param a a pointer to a pointer + * \param oldval the old pointer value + * \param newval the new pointer value + * \returns SDL_TRUE if the pointer was set, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AtomicCAS + * \sa SDL_AtomicGetPtr + * \sa SDL_AtomicSetPtr + */ +extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCASPtr(void **a, void *oldval, void *newval); + +/** + * Set a pointer to a value atomically. + * + * ***Note: If you don't know what this function is for, you shouldn't use + * it!*** + * + * \param a a pointer to a pointer + * \param v the desired pointer value + * \returns the previous value of the pointer. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_AtomicCASPtr + * \sa SDL_AtomicGetPtr + */ +extern DECLSPEC void* SDLCALL SDL_AtomicSetPtr(void **a, void* v); + +/** + * Get the value of a pointer atomically. + * + * ***Note: If you don't know what this function is for, you shouldn't use + * it!*** + * + * \param a a pointer to a pointer + * \returns the current value of a pointer. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_AtomicCASPtr + * \sa SDL_AtomicSetPtr + */ +extern DECLSPEC void* SDLCALL SDL_AtomicGetPtr(void **a); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif + +#include "close_code.h" + +#endif /* SDL_atomic_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..6b07c78f19ad3eedd687b56f2f20ce16b54e682b GIT binary patch literal 21421 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h new file mode 100644 index 00000000..ccd35982 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h @@ -0,0 +1,1500 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/* !!! FIXME: several functions in here need Doxygen comments. */ + +/** + * \file SDL_audio.h + * + * Access to the raw audio mixing buffer for the SDL library. + */ + +#ifndef SDL_audio_h_ +#define SDL_audio_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_endian.h" +#include "SDL_mutex.h" +#include "SDL_thread.h" +#include "SDL_rwops.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \brief Audio format flags. + * + * These are what the 16 bits in SDL_AudioFormat currently mean... + * (Unspecified bits are always zero). + * + * \verbatim + ++-----------------------sample is signed if set + || + || ++-----------sample is bigendian if set + || || + || || ++---sample is float if set + || || || + || || || +---sample bit size---+ + || || || | | + 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 + \endverbatim + * + * There are macros in SDL 2.0 and later to query these bits. + */ +typedef Uint16 SDL_AudioFormat; + +/** + * \name Audio flags + */ +/* @{ */ + +#define SDL_AUDIO_MASK_BITSIZE (0xFF) +#define SDL_AUDIO_MASK_DATATYPE (1<<8) +#define SDL_AUDIO_MASK_ENDIAN (1<<12) +#define SDL_AUDIO_MASK_SIGNED (1<<15) +#define SDL_AUDIO_BITSIZE(x) (x & SDL_AUDIO_MASK_BITSIZE) +#define SDL_AUDIO_ISFLOAT(x) (x & SDL_AUDIO_MASK_DATATYPE) +#define SDL_AUDIO_ISBIGENDIAN(x) (x & SDL_AUDIO_MASK_ENDIAN) +#define SDL_AUDIO_ISSIGNED(x) (x & SDL_AUDIO_MASK_SIGNED) +#define SDL_AUDIO_ISINT(x) (!SDL_AUDIO_ISFLOAT(x)) +#define SDL_AUDIO_ISLITTLEENDIAN(x) (!SDL_AUDIO_ISBIGENDIAN(x)) +#define SDL_AUDIO_ISUNSIGNED(x) (!SDL_AUDIO_ISSIGNED(x)) + +/** + * \name Audio format flags + * + * Defaults to LSB byte order. + */ +/* @{ */ +#define AUDIO_U8 0x0008 /**< Unsigned 8-bit samples */ +#define AUDIO_S8 0x8008 /**< Signed 8-bit samples */ +#define AUDIO_U16LSB 0x0010 /**< Unsigned 16-bit samples */ +#define AUDIO_S16LSB 0x8010 /**< Signed 16-bit samples */ +#define AUDIO_U16MSB 0x1010 /**< As above, but big-endian byte order */ +#define AUDIO_S16MSB 0x9010 /**< As above, but big-endian byte order */ +#define AUDIO_U16 AUDIO_U16LSB +#define AUDIO_S16 AUDIO_S16LSB +/* @} */ + +/** + * \name int32 support + */ +/* @{ */ +#define AUDIO_S32LSB 0x8020 /**< 32-bit integer samples */ +#define AUDIO_S32MSB 0x9020 /**< As above, but big-endian byte order */ +#define AUDIO_S32 AUDIO_S32LSB +/* @} */ + +/** + * \name float32 support + */ +/* @{ */ +#define AUDIO_F32LSB 0x8120 /**< 32-bit floating point samples */ +#define AUDIO_F32MSB 0x9120 /**< As above, but big-endian byte order */ +#define AUDIO_F32 AUDIO_F32LSB +/* @} */ + +/** + * \name Native audio byte ordering + */ +/* @{ */ +#if SDL_BYTEORDER == SDL_LIL_ENDIAN +#define AUDIO_U16SYS AUDIO_U16LSB +#define AUDIO_S16SYS AUDIO_S16LSB +#define AUDIO_S32SYS AUDIO_S32LSB +#define AUDIO_F32SYS AUDIO_F32LSB +#else +#define AUDIO_U16SYS AUDIO_U16MSB +#define AUDIO_S16SYS AUDIO_S16MSB +#define AUDIO_S32SYS AUDIO_S32MSB +#define AUDIO_F32SYS AUDIO_F32MSB +#endif +/* @} */ + +/** + * \name Allow change flags + * + * Which audio format changes are allowed when opening a device. + */ +/* @{ */ +#define SDL_AUDIO_ALLOW_FREQUENCY_CHANGE 0x00000001 +#define SDL_AUDIO_ALLOW_FORMAT_CHANGE 0x00000002 +#define SDL_AUDIO_ALLOW_CHANNELS_CHANGE 0x00000004 +#define SDL_AUDIO_ALLOW_SAMPLES_CHANGE 0x00000008 +#define SDL_AUDIO_ALLOW_ANY_CHANGE (SDL_AUDIO_ALLOW_FREQUENCY_CHANGE|SDL_AUDIO_ALLOW_FORMAT_CHANGE|SDL_AUDIO_ALLOW_CHANNELS_CHANGE|SDL_AUDIO_ALLOW_SAMPLES_CHANGE) +/* @} */ + +/* @} *//* Audio flags */ + +/** + * This function is called when the audio device needs more data. + * + * \param userdata An application-specific parameter saved in + * the SDL_AudioSpec structure + * \param stream A pointer to the audio data buffer. + * \param len The length of that buffer in bytes. + * + * Once the callback returns, the buffer will no longer be valid. + * Stereo samples are stored in a LRLRLR ordering. + * + * You can choose to avoid callbacks and use SDL_QueueAudio() instead, if + * you like. Just open your audio device with a NULL callback. + */ +typedef void (SDLCALL * SDL_AudioCallback) (void *userdata, Uint8 * stream, + int len); + +/** + * The calculated values in this structure are calculated by SDL_OpenAudio(). + * + * For multi-channel audio, the default SDL channel mapping is: + * 2: FL FR (stereo) + * 3: FL FR LFE (2.1 surround) + * 4: FL FR BL BR (quad) + * 5: FL FR LFE BL BR (4.1 surround) + * 6: FL FR FC LFE SL SR (5.1 surround - last two can also be BL BR) + * 7: FL FR FC LFE BC SL SR (6.1 surround) + * 8: FL FR FC LFE BL BR SL SR (7.1 surround) + */ +typedef struct SDL_AudioSpec +{ + int freq; /**< DSP frequency -- samples per second */ + SDL_AudioFormat format; /**< Audio data format */ + Uint8 channels; /**< Number of channels: 1 mono, 2 stereo */ + Uint8 silence; /**< Audio buffer silence value (calculated) */ + Uint16 samples; /**< Audio buffer size in sample FRAMES (total samples divided by channel count) */ + Uint16 padding; /**< Necessary for some compile environments */ + Uint32 size; /**< Audio buffer size in bytes (calculated) */ + SDL_AudioCallback callback; /**< Callback that feeds the audio device (NULL to use SDL_QueueAudio()). */ + void *userdata; /**< Userdata passed to callback (ignored for NULL callbacks). */ +} SDL_AudioSpec; + + +struct SDL_AudioCVT; +typedef void (SDLCALL * SDL_AudioFilter) (struct SDL_AudioCVT * cvt, + SDL_AudioFormat format); + +/** + * \brief Upper limit of filters in SDL_AudioCVT + * + * The maximum number of SDL_AudioFilter functions in SDL_AudioCVT is + * currently limited to 9. The SDL_AudioCVT.filters array has 10 pointers, + * one of which is the terminating NULL pointer. + */ +#define SDL_AUDIOCVT_MAX_FILTERS 9 + +/** + * \struct SDL_AudioCVT + * \brief A structure to hold a set of audio conversion filters and buffers. + * + * Note that various parts of the conversion pipeline can take advantage + * of SIMD operations (like SSE2, for example). SDL_AudioCVT doesn't require + * you to pass it aligned data, but can possibly run much faster if you + * set both its (buf) field to a pointer that is aligned to 16 bytes, and its + * (len) field to something that's a multiple of 16, if possible. + */ +#if defined(__GNUC__) && !defined(__CHERI_PURE_CAPABILITY__) +/* This structure is 84 bytes on 32-bit architectures, make sure GCC doesn't + pad it out to 88 bytes to guarantee ABI compatibility between compilers. + This is not a concern on CHERI architectures, where pointers must be stored + at aligned locations otherwise they will become invalid, and thus structs + containing pointers cannot be packed without giving a warning or error. + vvv + The next time we rev the ABI, make sure to size the ints and add padding. +*/ +#define SDL_AUDIOCVT_PACKED __attribute__((packed)) +#else +#define SDL_AUDIOCVT_PACKED +#endif +/* */ +typedef struct SDL_AudioCVT +{ + int needed; /**< Set to 1 if conversion possible */ + SDL_AudioFormat src_format; /**< Source audio format */ + SDL_AudioFormat dst_format; /**< Target audio format */ + double rate_incr; /**< Rate conversion increment */ + Uint8 *buf; /**< Buffer to hold entire audio data */ + int len; /**< Length of original audio buffer */ + int len_cvt; /**< Length of converted audio buffer */ + int len_mult; /**< buffer must be len*len_mult big */ + double len_ratio; /**< Given len, final size is len*len_ratio */ + SDL_AudioFilter filters[SDL_AUDIOCVT_MAX_FILTERS + 1]; /**< NULL-terminated list of filter functions */ + int filter_index; /**< Current audio conversion function */ +} SDL_AUDIOCVT_PACKED SDL_AudioCVT; + + +/* Function prototypes */ + +/** + * \name Driver discovery functions + * + * These functions return the list of built in audio drivers, in the + * order that they are normally initialized by default. + */ +/* @{ */ + +/** + * Use this function to get the number of built-in audio drivers. + * + * This function returns a hardcoded number. This never returns a negative + * value; if there are no drivers compiled into this build of SDL, this + * function returns zero. The presence of a driver in this list does not mean + * it will function, it just means SDL is capable of interacting with that + * interface. For example, a build of SDL might have esound support, but if + * there's no esound server available, SDL's esound driver would fail if used. + * + * By default, SDL tries all drivers, in its preferred order, until one is + * found to be usable. + * + * \returns the number of built-in audio drivers. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetAudioDriver + */ +extern DECLSPEC int SDLCALL SDL_GetNumAudioDrivers(void); + +/** + * Use this function to get the name of a built in audio driver. + * + * The list of audio drivers is given in the order that they are normally + * initialized by default; the drivers that seem more reasonable to choose + * first (as far as the SDL developers believe) are earlier in the list. + * + * The names of drivers are all simple, low-ASCII identifiers, like "alsa", + * "coreaudio" or "xaudio2". These never have Unicode characters, and are not + * meant to be proper names. + * + * \param index the index of the audio driver; the value ranges from 0 to + * SDL_GetNumAudioDrivers() - 1 + * \returns the name of the audio driver at the requested index, or NULL if an + * invalid index was specified. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumAudioDrivers + */ +extern DECLSPEC const char *SDLCALL SDL_GetAudioDriver(int index); +/* @} */ + +/** + * \name Initialization and cleanup + * + * \internal These functions are used internally, and should not be used unless + * you have a specific need to specify the audio driver you want to + * use. You should normally use SDL_Init() or SDL_InitSubSystem(). + */ +/* @{ */ + +/** + * Use this function to initialize a particular audio driver. + * + * This function is used internally, and should not be used unless you have a + * specific need to designate the audio driver you want to use. You should + * normally use SDL_Init() or SDL_InitSubSystem(). + * + * \param driver_name the name of the desired audio driver + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AudioQuit + */ +extern DECLSPEC int SDLCALL SDL_AudioInit(const char *driver_name); + +/** + * Use this function to shut down audio if you initialized it with + * SDL_AudioInit(). + * + * This function is used internally, and should not be used unless you have a + * specific need to specify the audio driver you want to use. You should + * normally use SDL_Quit() or SDL_QuitSubSystem(). + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AudioInit + */ +extern DECLSPEC void SDLCALL SDL_AudioQuit(void); +/* @} */ + +/** + * Get the name of the current audio driver. + * + * The returned string points to internal static memory and thus never becomes + * invalid, even if you quit the audio subsystem and initialize a new driver + * (although such a case would return a different static string from another + * call to this function, of course). As such, you should not modify or free + * the returned string. + * + * \returns the name of the current audio driver or NULL if no driver has been + * initialized. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AudioInit + */ +extern DECLSPEC const char *SDLCALL SDL_GetCurrentAudioDriver(void); + +/** + * This function is a legacy means of opening the audio device. + * + * This function remains for compatibility with SDL 1.2, but also because it's + * slightly easier to use than the new functions in SDL 2.0. The new, more + * powerful, and preferred way to do this is SDL_OpenAudioDevice(). + * + * This function is roughly equivalent to: + * + * ```c + * SDL_OpenAudioDevice(NULL, 0, desired, obtained, SDL_AUDIO_ALLOW_ANY_CHANGE); + * ``` + * + * With two notable exceptions: + * + * - If `obtained` is NULL, we use `desired` (and allow no changes), which + * means desired will be modified to have the correct values for silence, + * etc, and SDL will convert any differences between your app's specific + * request and the hardware behind the scenes. + * - The return value is always success or failure, and not a device ID, which + * means you can only have one device open at a time with this function. + * + * \param desired an SDL_AudioSpec structure representing the desired output + * format. Please refer to the SDL_OpenAudioDevice + * documentation for details on how to prepare this structure. + * \param obtained an SDL_AudioSpec structure filled in with the actual + * parameters, or NULL. + * \returns 0 if successful, placing the actual hardware parameters in the + * structure pointed to by `obtained`. + * + * If `obtained` is NULL, the audio data passed to the callback + * function will be guaranteed to be in the requested format, and + * will be automatically converted to the actual hardware audio + * format if necessary. If `obtained` is NULL, `desired` will have + * fields modified. + * + * This function returns a negative error code on failure to open the + * audio device or failure to set up the audio thread; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CloseAudio + * \sa SDL_LockAudio + * \sa SDL_PauseAudio + * \sa SDL_UnlockAudio + */ +extern DECLSPEC int SDLCALL SDL_OpenAudio(SDL_AudioSpec * desired, + SDL_AudioSpec * obtained); + +/** + * SDL Audio Device IDs. + * + * A successful call to SDL_OpenAudio() is always device id 1, and legacy + * SDL audio APIs assume you want this device ID. SDL_OpenAudioDevice() calls + * always returns devices >= 2 on success. The legacy calls are good both + * for backwards compatibility and when you don't care about multiple, + * specific, or capture devices. + */ +typedef Uint32 SDL_AudioDeviceID; + +/** + * Get the number of built-in audio devices. + * + * This function is only valid after successfully initializing the audio + * subsystem. + * + * Note that audio capture support is not implemented as of SDL 2.0.4, so the + * `iscapture` parameter is for future expansion and should always be zero for + * now. + * + * This function will return -1 if an explicit list of devices can't be + * determined. Returning -1 is not an error. For example, if SDL is set up to + * talk to a remote audio server, it can't list every one available on the + * Internet, but it will still allow a specific host to be specified in + * SDL_OpenAudioDevice(). + * + * In many common cases, when this function returns a value <= 0, it can still + * successfully open the default device (NULL for first argument of + * SDL_OpenAudioDevice()). + * + * This function may trigger a complete redetect of available hardware. It + * should not be called for each iteration of a loop, but rather once at the + * start of a loop: + * + * ```c + * // Don't do this: + * for (int i = 0; i < SDL_GetNumAudioDevices(0); i++) + * + * // do this instead: + * const int count = SDL_GetNumAudioDevices(0); + * for (int i = 0; i < count; ++i) { do_something_here(); } + * ``` + * + * \param iscapture zero to request playback devices, non-zero to request + * recording devices + * \returns the number of available devices exposed by the current driver or + * -1 if an explicit list of devices can't be determined. A return + * value of -1 does not necessarily mean an error condition. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetAudioDeviceName + * \sa SDL_OpenAudioDevice + */ +extern DECLSPEC int SDLCALL SDL_GetNumAudioDevices(int iscapture); + +/** + * Get the human-readable name of a specific audio device. + * + * This function is only valid after successfully initializing the audio + * subsystem. The values returned by this function reflect the latest call to + * SDL_GetNumAudioDevices(); re-call that function to redetect available + * hardware. + * + * The string returned by this function is UTF-8 encoded, read-only, and + * managed internally. You are not to free it. If you need to keep the string + * for any length of time, you should make your own copy of it, as it will be + * invalid next time any of several other SDL functions are called. + * + * \param index the index of the audio device; valid values range from 0 to + * SDL_GetNumAudioDevices() - 1 + * \param iscapture non-zero to query the list of recording devices, zero to + * query the list of output devices. + * \returns the name of the audio device at the requested index, or NULL on + * error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumAudioDevices + * \sa SDL_GetDefaultAudioInfo + */ +extern DECLSPEC const char *SDLCALL SDL_GetAudioDeviceName(int index, + int iscapture); + +/** + * Get the preferred audio format of a specific audio device. + * + * This function is only valid after a successfully initializing the audio + * subsystem. The values returned by this function reflect the latest call to + * SDL_GetNumAudioDevices(); re-call that function to redetect available + * hardware. + * + * `spec` will be filled with the sample rate, sample format, and channel + * count. + * + * \param index the index of the audio device; valid values range from 0 to + * SDL_GetNumAudioDevices() - 1 + * \param iscapture non-zero to query the list of recording devices, zero to + * query the list of output devices. + * \param spec The SDL_AudioSpec to be initialized by this function. + * \returns 0 on success, nonzero on error + * + * \since This function is available since SDL 2.0.16. + * + * \sa SDL_GetNumAudioDevices + * \sa SDL_GetDefaultAudioInfo + */ +extern DECLSPEC int SDLCALL SDL_GetAudioDeviceSpec(int index, + int iscapture, + SDL_AudioSpec *spec); + + +/** + * Get the name and preferred format of the default audio device. + * + * Some (but not all!) platforms have an isolated mechanism to get information + * about the "default" device. This can actually be a completely different + * device that's not in the list you get from SDL_GetAudioDeviceSpec(). It can + * even be a network address! (This is discussed in SDL_OpenAudioDevice().) + * + * As a result, this call is not guaranteed to be performant, as it can query + * the sound server directly every time, unlike the other query functions. You + * should call this function sparingly! + * + * `spec` will be filled with the sample rate, sample format, and channel + * count, if a default device exists on the system. If `name` is provided, + * will be filled with either a dynamically-allocated UTF-8 string or NULL. + * + * \param name A pointer to be filled with the name of the default device (can + * be NULL). Please call SDL_free() when you are done with this + * pointer! + * \param spec The SDL_AudioSpec to be initialized by this function. + * \param iscapture non-zero to query the default recording device, zero to + * query the default output device. + * \returns 0 on success, nonzero on error + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GetAudioDeviceName + * \sa SDL_GetAudioDeviceSpec + * \sa SDL_OpenAudioDevice + */ +extern DECLSPEC int SDLCALL SDL_GetDefaultAudioInfo(char **name, + SDL_AudioSpec *spec, + int iscapture); + + +/** + * Open a specific audio device. + * + * SDL_OpenAudio(), unlike this function, always acts on device ID 1. As such, + * this function will never return a 1 so as not to conflict with the legacy + * function. + * + * Please note that SDL 2.0 before 2.0.5 did not support recording; as such, + * this function would fail if `iscapture` was not zero. Starting with SDL + * 2.0.5, recording is implemented and this value can be non-zero. + * + * Passing in a `device` name of NULL requests the most reasonable default + * (and is equivalent to what SDL_OpenAudio() does to choose a device). The + * `device` name is a UTF-8 string reported by SDL_GetAudioDeviceName(), but + * some drivers allow arbitrary and driver-specific strings, such as a + * hostname/IP address for a remote audio server, or a filename in the + * diskaudio driver. + * + * An opened audio device starts out paused, and should be enabled for playing + * by calling SDL_PauseAudioDevice(devid, 0) when you are ready for your audio + * callback function to be called. Since the audio driver may modify the + * requested size of the audio buffer, you should allocate any local mixing + * buffers after you open the audio device. + * + * The audio callback runs in a separate thread in most cases; you can prevent + * race conditions between your callback and other threads without fully + * pausing playback with SDL_LockAudioDevice(). For more information about the + * callback, see SDL_AudioSpec. + * + * Managing the audio spec via 'desired' and 'obtained': + * + * When filling in the desired audio spec structure: + * + * - `desired->freq` should be the frequency in sample-frames-per-second (Hz). + * - `desired->format` should be the audio format (`AUDIO_S16SYS`, etc). + * - `desired->samples` is the desired size of the audio buffer, in _sample + * frames_ (with stereo output, two samples--left and right--would make a + * single sample frame). This number should be a power of two, and may be + * adjusted by the audio driver to a value more suitable for the hardware. + * Good values seem to range between 512 and 8096 inclusive, depending on + * the application and CPU speed. Smaller values reduce latency, but can + * lead to underflow if the application is doing heavy processing and cannot + * fill the audio buffer in time. Note that the number of sample frames is + * directly related to time by the following formula: `ms = + * (sampleframes*1000)/freq` + * - `desired->size` is the size in _bytes_ of the audio buffer, and is + * calculated by SDL_OpenAudioDevice(). You don't initialize this. + * - `desired->silence` is the value used to set the buffer to silence, and is + * calculated by SDL_OpenAudioDevice(). You don't initialize this. + * - `desired->callback` should be set to a function that will be called when + * the audio device is ready for more data. It is passed a pointer to the + * audio buffer, and the length in bytes of the audio buffer. This function + * usually runs in a separate thread, and so you should protect data + * structures that it accesses by calling SDL_LockAudioDevice() and + * SDL_UnlockAudioDevice() in your code. Alternately, you may pass a NULL + * pointer here, and call SDL_QueueAudio() with some frequency, to queue + * more audio samples to be played (or for capture devices, call + * SDL_DequeueAudio() with some frequency, to obtain audio samples). + * - `desired->userdata` is passed as the first parameter to your callback + * function. If you passed a NULL callback, this value is ignored. + * + * `allowed_changes` can have the following flags OR'd together: + * + * - `SDL_AUDIO_ALLOW_FREQUENCY_CHANGE` + * - `SDL_AUDIO_ALLOW_FORMAT_CHANGE` + * - `SDL_AUDIO_ALLOW_CHANNELS_CHANGE` + * - `SDL_AUDIO_ALLOW_SAMPLES_CHANGE` + * - `SDL_AUDIO_ALLOW_ANY_CHANGE` + * + * These flags specify how SDL should behave when a device cannot offer a + * specific feature. If the application requests a feature that the hardware + * doesn't offer, SDL will always try to get the closest equivalent. + * + * For example, if you ask for float32 audio format, but the sound card only + * supports int16, SDL will set the hardware to int16. If you had set + * SDL_AUDIO_ALLOW_FORMAT_CHANGE, SDL will change the format in the `obtained` + * structure. If that flag was *not* set, SDL will prepare to convert your + * callback's float32 audio to int16 before feeding it to the hardware and + * will keep the originally requested format in the `obtained` structure. + * + * The resulting audio specs, varying depending on hardware and on what + * changes were allowed, will then be written back to `obtained`. + * + * If your application can only handle one specific data format, pass a zero + * for `allowed_changes` and let SDL transparently handle any differences. + * + * \param device a UTF-8 string reported by SDL_GetAudioDeviceName() or a + * driver-specific name as appropriate. NULL requests the most + * reasonable default device. + * \param iscapture non-zero to specify a device should be opened for + * recording, not playback + * \param desired an SDL_AudioSpec structure representing the desired output + * format; see SDL_OpenAudio() for more information + * \param obtained an SDL_AudioSpec structure filled in with the actual output + * format; see SDL_OpenAudio() for more information + * \param allowed_changes 0, or one or more flags OR'd together + * \returns a valid device ID that is > 0 on success or 0 on failure; call + * SDL_GetError() for more information. + * + * For compatibility with SDL 1.2, this will never return 1, since + * SDL reserves that ID for the legacy SDL_OpenAudio() function. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CloseAudioDevice + * \sa SDL_GetAudioDeviceName + * \sa SDL_LockAudioDevice + * \sa SDL_OpenAudio + * \sa SDL_PauseAudioDevice + * \sa SDL_UnlockAudioDevice + */ +extern DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice( + const char *device, + int iscapture, + const SDL_AudioSpec *desired, + SDL_AudioSpec *obtained, + int allowed_changes); + + + +/** + * \name Audio state + * + * Get the current audio state. + */ +/* @{ */ +typedef enum +{ + SDL_AUDIO_STOPPED = 0, + SDL_AUDIO_PLAYING, + SDL_AUDIO_PAUSED +} SDL_AudioStatus; + +/** + * This function is a legacy means of querying the audio device. + * + * New programs might want to use SDL_GetAudioDeviceStatus() instead. This + * function is equivalent to calling... + * + * ```c + * SDL_GetAudioDeviceStatus(1); + * ``` + * + * ...and is only useful if you used the legacy SDL_OpenAudio() function. + * + * \returns the SDL_AudioStatus of the audio device opened by SDL_OpenAudio(). + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetAudioDeviceStatus + */ +extern DECLSPEC SDL_AudioStatus SDLCALL SDL_GetAudioStatus(void); + +/** + * Use this function to get the current audio state of an audio device. + * + * \param dev the ID of an audio device previously opened with + * SDL_OpenAudioDevice() + * \returns the SDL_AudioStatus of the specified audio device. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PauseAudioDevice + */ +extern DECLSPEC SDL_AudioStatus SDLCALL SDL_GetAudioDeviceStatus(SDL_AudioDeviceID dev); +/* @} *//* Audio State */ + +/** + * \name Pause audio functions + * + * These functions pause and unpause the audio callback processing. + * They should be called with a parameter of 0 after opening the audio + * device to start playing sound. This is so you can safely initialize + * data for your callback function after opening the audio device. + * Silence will be written to the audio device during the pause. + */ +/* @{ */ + +/** + * This function is a legacy means of pausing the audio device. + * + * New programs might want to use SDL_PauseAudioDevice() instead. This + * function is equivalent to calling... + * + * ```c + * SDL_PauseAudioDevice(1, pause_on); + * ``` + * + * ...and is only useful if you used the legacy SDL_OpenAudio() function. + * + * \param pause_on non-zero to pause, 0 to unpause + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetAudioStatus + * \sa SDL_PauseAudioDevice + */ +extern DECLSPEC void SDLCALL SDL_PauseAudio(int pause_on); + +/** + * Use this function to pause and unpause audio playback on a specified + * device. + * + * This function pauses and unpauses the audio callback processing for a given + * device. Newly-opened audio devices start in the paused state, so you must + * call this function with **pause_on**=0 after opening the specified audio + * device to start playing sound. This allows you to safely initialize data + * for your callback function after opening the audio device. Silence will be + * written to the audio device while paused, and the audio callback is + * guaranteed to not be called. Pausing one device does not prevent other + * unpaused devices from running their callbacks. + * + * Pausing state does not stack; even if you pause a device several times, a + * single unpause will start the device playing again, and vice versa. This is + * different from how SDL_LockAudioDevice() works. + * + * If you just need to protect a few variables from race conditions vs your + * callback, you shouldn't pause the audio device, as it will lead to dropouts + * in the audio playback. Instead, you should use SDL_LockAudioDevice(). + * + * \param dev a device opened by SDL_OpenAudioDevice() + * \param pause_on non-zero to pause, 0 to unpause + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LockAudioDevice + */ +extern DECLSPEC void SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev, + int pause_on); +/* @} *//* Pause audio functions */ + +/** + * Load the audio data of a WAVE file into memory. + * + * Loading a WAVE file requires `src`, `spec`, `audio_buf` and `audio_len` to + * be valid pointers. The entire data portion of the file is then loaded into + * memory and decoded if necessary. + * + * If `freesrc` is non-zero, the data source gets automatically closed and + * freed before the function returns. + * + * Supported formats are RIFF WAVE files with the formats PCM (8, 16, 24, and + * 32 bits), IEEE Float (32 bits), Microsoft ADPCM and IMA ADPCM (4 bits), and + * A-law and mu-law (8 bits). Other formats are currently unsupported and + * cause an error. + * + * If this function succeeds, the pointer returned by it is equal to `spec` + * and the pointer to the audio data allocated by the function is written to + * `audio_buf` and its length in bytes to `audio_len`. The SDL_AudioSpec + * members `freq`, `channels`, and `format` are set to the values of the audio + * data in the buffer. The `samples` member is set to a sane default and all + * others are set to zero. + * + * It's necessary to use SDL_FreeWAV() to free the audio data returned in + * `audio_buf` when it is no longer used. + * + * Because of the underspecification of the .WAV format, there are many + * problematic files in the wild that cause issues with strict decoders. To + * provide compatibility with these files, this decoder is lenient in regards + * to the truncation of the file, the fact chunk, and the size of the RIFF + * chunk. The hints `SDL_HINT_WAVE_RIFF_CHUNK_SIZE`, + * `SDL_HINT_WAVE_TRUNCATION`, and `SDL_HINT_WAVE_FACT_CHUNK` can be used to + * tune the behavior of the loading process. + * + * Any file that is invalid (due to truncation, corruption, or wrong values in + * the headers), too big, or unsupported causes an error. Additionally, any + * critical I/O error from the data source will terminate the loading process + * with an error. The function returns NULL on error and in all cases (with + * the exception of `src` being NULL), an appropriate error message will be + * set. + * + * It is required that the data source supports seeking. + * + * Example: + * + * ```c + * SDL_LoadWAV_RW(SDL_RWFromFile("sample.wav", "rb"), 1, &spec, &buf, &len); + * ``` + * + * Note that the SDL_LoadWAV macro does this same thing for you, but in a less + * messy way: + * + * ```c + * SDL_LoadWAV("sample.wav", &spec, &buf, &len); + * ``` + * + * \param src The data source for the WAVE data + * \param freesrc If non-zero, SDL will _always_ free the data source + * \param spec An SDL_AudioSpec that will be filled in with the wave file's + * format details + * \param audio_buf A pointer filled with the audio data, allocated by the + * function. + * \param audio_len A pointer filled with the length of the audio data buffer + * in bytes + * \returns This function, if successfully called, returns `spec`, which will + * be filled with the audio data format of the wave source data. + * `audio_buf` will be filled with a pointer to an allocated buffer + * containing the audio data, and `audio_len` is filled with the + * length of that audio buffer in bytes. + * + * This function returns NULL if the .WAV file cannot be opened, uses + * an unknown data format, or is corrupt; call SDL_GetError() for + * more information. + * + * When the application is done with the data returned in + * `audio_buf`, it should call SDL_FreeWAV() to dispose of it. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FreeWAV + * \sa SDL_LoadWAV + */ +extern DECLSPEC SDL_AudioSpec *SDLCALL SDL_LoadWAV_RW(SDL_RWops * src, + int freesrc, + SDL_AudioSpec * spec, + Uint8 ** audio_buf, + Uint32 * audio_len); + +/** + * Loads a WAV from a file. + * Compatibility convenience function. + */ +#define SDL_LoadWAV(file, spec, audio_buf, audio_len) \ + SDL_LoadWAV_RW(SDL_RWFromFile(file, "rb"),1, spec,audio_buf,audio_len) + +/** + * Free data previously allocated with SDL_LoadWAV() or SDL_LoadWAV_RW(). + * + * After a WAVE file has been opened with SDL_LoadWAV() or SDL_LoadWAV_RW() + * its data can eventually be freed with SDL_FreeWAV(). It is safe to call + * this function with a NULL pointer. + * + * \param audio_buf a pointer to the buffer created by SDL_LoadWAV() or + * SDL_LoadWAV_RW() + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LoadWAV + * \sa SDL_LoadWAV_RW + */ +extern DECLSPEC void SDLCALL SDL_FreeWAV(Uint8 * audio_buf); + +/** + * Initialize an SDL_AudioCVT structure for conversion. + * + * Before an SDL_AudioCVT structure can be used to convert audio data it must + * be initialized with source and destination information. + * + * This function will zero out every field of the SDL_AudioCVT, so it must be + * called before the application fills in the final buffer information. + * + * Once this function has returned successfully, and reported that a + * conversion is necessary, the application fills in the rest of the fields in + * SDL_AudioCVT, now that it knows how large a buffer it needs to allocate, + * and then can call SDL_ConvertAudio() to complete the conversion. + * + * \param cvt an SDL_AudioCVT structure filled in with audio conversion + * information + * \param src_format the source format of the audio data; for more info see + * SDL_AudioFormat + * \param src_channels the number of channels in the source + * \param src_rate the frequency (sample-frames-per-second) of the source + * \param dst_format the destination format of the audio data; for more info + * see SDL_AudioFormat + * \param dst_channels the number of channels in the destination + * \param dst_rate the frequency (sample-frames-per-second) of the destination + * \returns 1 if the audio filter is prepared, 0 if no conversion is needed, + * or a negative error code on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ConvertAudio + */ +extern DECLSPEC int SDLCALL SDL_BuildAudioCVT(SDL_AudioCVT * cvt, + SDL_AudioFormat src_format, + Uint8 src_channels, + int src_rate, + SDL_AudioFormat dst_format, + Uint8 dst_channels, + int dst_rate); + +/** + * Convert audio data to a desired audio format. + * + * This function does the actual audio data conversion, after the application + * has called SDL_BuildAudioCVT() to prepare the conversion information and + * then filled in the buffer details. + * + * Once the application has initialized the `cvt` structure using + * SDL_BuildAudioCVT(), allocated an audio buffer and filled it with audio + * data in the source format, this function will convert the buffer, in-place, + * to the desired format. + * + * The data conversion may go through several passes; any given pass may + * possibly temporarily increase the size of the data. For example, SDL might + * expand 16-bit data to 32 bits before resampling to a lower frequency, + * shrinking the data size after having grown it briefly. Since the supplied + * buffer will be both the source and destination, converting as necessary + * in-place, the application must allocate a buffer that will fully contain + * the data during its largest conversion pass. After SDL_BuildAudioCVT() + * returns, the application should set the `cvt->len` field to the size, in + * bytes, of the source data, and allocate a buffer that is `cvt->len * + * cvt->len_mult` bytes long for the `buf` field. + * + * The source data should be copied into this buffer before the call to + * SDL_ConvertAudio(). Upon successful return, this buffer will contain the + * converted audio, and `cvt->len_cvt` will be the size of the converted data, + * in bytes. Any bytes in the buffer past `cvt->len_cvt` are undefined once + * this function returns. + * + * \param cvt an SDL_AudioCVT structure that was previously set up by + * SDL_BuildAudioCVT(). + * \returns 0 if the conversion was completed successfully or a negative error + * code on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BuildAudioCVT + */ +extern DECLSPEC int SDLCALL SDL_ConvertAudio(SDL_AudioCVT * cvt); + +/* SDL_AudioStream is a new audio conversion interface. + The benefits vs SDL_AudioCVT: + - it can handle resampling data in chunks without generating + artifacts, when it doesn't have the complete buffer available. + - it can handle incoming data in any variable size. + - You push data as you have it, and pull it when you need it + */ +/* this is opaque to the outside world. */ +struct _SDL_AudioStream; +typedef struct _SDL_AudioStream SDL_AudioStream; + +/** + * Create a new audio stream. + * + * \param src_format The format of the source audio + * \param src_channels The number of channels of the source audio + * \param src_rate The sampling rate of the source audio + * \param dst_format The format of the desired audio output + * \param dst_channels The number of channels of the desired audio output + * \param dst_rate The sampling rate of the desired audio output + * \returns 0 on success, or -1 on error. + * + * \since This function is available since SDL 2.0.7. + * + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC SDL_AudioStream * SDLCALL SDL_NewAudioStream(const SDL_AudioFormat src_format, + const Uint8 src_channels, + const int src_rate, + const SDL_AudioFormat dst_format, + const Uint8 dst_channels, + const int dst_rate); + +/** + * Add data to be converted/resampled to the stream. + * + * \param stream The stream the audio data is being added to + * \param buf A pointer to the audio data to add + * \param len The number of bytes to write to the stream + * \returns 0 on success, or -1 on error. + * + * \since This function is available since SDL 2.0.7. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC int SDLCALL SDL_AudioStreamPut(SDL_AudioStream *stream, const void *buf, int len); + +/** + * Get converted/resampled data from the stream + * + * \param stream The stream the audio is being requested from + * \param buf A buffer to fill with audio data + * \param len The maximum number of bytes to fill + * \returns the number of bytes read from the stream, or -1 on error + * + * \since This function is available since SDL 2.0.7. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC int SDLCALL SDL_AudioStreamGet(SDL_AudioStream *stream, void *buf, int len); + +/** + * Get the number of converted/resampled bytes available. + * + * The stream may be buffering data behind the scenes until it has enough to + * resample correctly, so this number might be lower than what you expect, or + * even be zero. Add more data or flush the stream if you need the data now. + * + * \since This function is available since SDL 2.0.7. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC int SDLCALL SDL_AudioStreamAvailable(SDL_AudioStream *stream); + +/** + * Tell the stream that you're done sending data, and anything being buffered + * should be converted/resampled and made available immediately. + * + * It is legal to add more data to a stream after flushing, but there will be + * audio gaps in the output. Generally this is intended to signal the end of + * input, so the complete output becomes available. + * + * \since This function is available since SDL 2.0.7. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC int SDLCALL SDL_AudioStreamFlush(SDL_AudioStream *stream); + +/** + * Clear any pending data in the stream without converting it + * + * \since This function is available since SDL 2.0.7. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC void SDLCALL SDL_AudioStreamClear(SDL_AudioStream *stream); + +/** + * Free an audio stream + * + * \since This function is available since SDL 2.0.7. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + */ +extern DECLSPEC void SDLCALL SDL_FreeAudioStream(SDL_AudioStream *stream); + +#define SDL_MIX_MAXVOLUME 128 + +/** + * This function is a legacy means of mixing audio. + * + * This function is equivalent to calling... + * + * ```c + * SDL_MixAudioFormat(dst, src, format, len, volume); + * ``` + * + * ...where `format` is the obtained format of the audio device from the + * legacy SDL_OpenAudio() function. + * + * \param dst the destination for the mixed audio + * \param src the source audio buffer to be mixed + * \param len the length of the audio buffer in bytes + * \param volume ranges from 0 - 128, and should be set to SDL_MIX_MAXVOLUME + * for full audio volume + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_MixAudioFormat + */ +extern DECLSPEC void SDLCALL SDL_MixAudio(Uint8 * dst, const Uint8 * src, + Uint32 len, int volume); + +/** + * Mix audio data in a specified format. + * + * This takes an audio buffer `src` of `len` bytes of `format` data and mixes + * it into `dst`, performing addition, volume adjustment, and overflow + * clipping. The buffer pointed to by `dst` must also be `len` bytes of + * `format` data. + * + * This is provided for convenience -- you can mix your own audio data. + * + * Do not use this function for mixing together more than two streams of + * sample data. The output from repeated application of this function may be + * distorted by clipping, because there is no accumulator with greater range + * than the input (not to mention this being an inefficient way of doing it). + * + * It is a common misconception that this function is required to write audio + * data to an output stream in an audio callback. While you can do that, + * SDL_MixAudioFormat() is really only needed when you're mixing a single + * audio stream with a volume adjustment. + * + * \param dst the destination for the mixed audio + * \param src the source audio buffer to be mixed + * \param format the SDL_AudioFormat structure representing the desired audio + * format + * \param len the length of the audio buffer in bytes + * \param volume ranges from 0 - 128, and should be set to SDL_MIX_MAXVOLUME + * for full audio volume + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC void SDLCALL SDL_MixAudioFormat(Uint8 * dst, + const Uint8 * src, + SDL_AudioFormat format, + Uint32 len, int volume); + +/** + * Queue more audio on non-callback devices. + * + * If you are looking to retrieve queued audio from a non-callback capture + * device, you want SDL_DequeueAudio() instead. SDL_QueueAudio() will return + * -1 to signify an error if you use it with capture devices. + * + * SDL offers two ways to feed audio to the device: you can either supply a + * callback that SDL triggers with some frequency to obtain more audio (pull + * method), or you can supply no callback, and then SDL will expect you to + * supply data at regular intervals (push method) with this function. + * + * There are no limits on the amount of data you can queue, short of + * exhaustion of address space. Queued data will drain to the device as + * necessary without further intervention from you. If the device needs audio + * but there is not enough queued, it will play silence to make up the + * difference. This means you will have skips in your audio playback if you + * aren't routinely queueing sufficient data. + * + * This function copies the supplied data, so you are safe to free it when the + * function returns. This function is thread-safe, but queueing to the same + * device from two threads at once does not promise which buffer will be + * queued first. + * + * You may not queue audio on a device that is using an application-supplied + * callback; doing so returns an error. You have to use the audio callback or + * queue audio with this function, but not both. + * + * You should not call SDL_LockAudio() on the device before queueing; SDL + * handles locking internally for this function. + * + * Note that SDL2 does not support planar audio. You will need to resample + * from planar audio formats into a non-planar one (see SDL_AudioFormat) + * before queuing audio. + * + * \param dev the device ID to which we will queue audio + * \param data the data to queue to the device for later playback + * \param len the number of bytes (not samples!) to which `data` points + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_ClearQueuedAudio + * \sa SDL_GetQueuedAudioSize + */ +extern DECLSPEC int SDLCALL SDL_QueueAudio(SDL_AudioDeviceID dev, const void *data, Uint32 len); + +/** + * Dequeue more audio on non-callback devices. + * + * If you are looking to queue audio for output on a non-callback playback + * device, you want SDL_QueueAudio() instead. SDL_DequeueAudio() will always + * return 0 if you use it with playback devices. + * + * SDL offers two ways to retrieve audio from a capture device: you can either + * supply a callback that SDL triggers with some frequency as the device + * records more audio data, (push method), or you can supply no callback, and + * then SDL will expect you to retrieve data at regular intervals (pull + * method) with this function. + * + * There are no limits on the amount of data you can queue, short of + * exhaustion of address space. Data from the device will keep queuing as + * necessary without further intervention from you. This means you will + * eventually run out of memory if you aren't routinely dequeueing data. + * + * Capture devices will not queue data when paused; if you are expecting to + * not need captured audio for some length of time, use SDL_PauseAudioDevice() + * to stop the capture device from queueing more data. This can be useful + * during, say, level loading times. When unpaused, capture devices will start + * queueing data from that point, having flushed any capturable data available + * while paused. + * + * This function is thread-safe, but dequeueing from the same device from two + * threads at once does not promise which thread will dequeue data first. + * + * You may not dequeue audio from a device that is using an + * application-supplied callback; doing so returns an error. You have to use + * the audio callback, or dequeue audio with this function, but not both. + * + * You should not call SDL_LockAudio() on the device before dequeueing; SDL + * handles locking internally for this function. + * + * \param dev the device ID from which we will dequeue audio + * \param data a pointer into where audio data should be copied + * \param len the number of bytes (not samples!) to which (data) points + * \returns the number of bytes dequeued, which could be less than requested; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_ClearQueuedAudio + * \sa SDL_GetQueuedAudioSize + */ +extern DECLSPEC Uint32 SDLCALL SDL_DequeueAudio(SDL_AudioDeviceID dev, void *data, Uint32 len); + +/** + * Get the number of bytes of still-queued audio. + * + * For playback devices: this is the number of bytes that have been queued for + * playback with SDL_QueueAudio(), but have not yet been sent to the hardware. + * + * Once we've sent it to the hardware, this function can not decide the exact + * byte boundary of what has been played. It's possible that we just gave the + * hardware several kilobytes right before you called this function, but it + * hasn't played any of it yet, or maybe half of it, etc. + * + * For capture devices, this is the number of bytes that have been captured by + * the device and are waiting for you to dequeue. This number may grow at any + * time, so this only informs of the lower-bound of available data. + * + * You may not queue or dequeue audio on a device that is using an + * application-supplied callback; calling this function on such a device + * always returns 0. You have to use the audio callback or queue audio, but + * not both. + * + * You should not call SDL_LockAudio() on the device before querying; SDL + * handles locking internally for this function. + * + * \param dev the device ID of which we will query queued audio size + * \returns the number of bytes (not samples!) of queued audio. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_ClearQueuedAudio + * \sa SDL_QueueAudio + * \sa SDL_DequeueAudio + */ +extern DECLSPEC Uint32 SDLCALL SDL_GetQueuedAudioSize(SDL_AudioDeviceID dev); + +/** + * Drop any queued audio data waiting to be sent to the hardware. + * + * Immediately after this call, SDL_GetQueuedAudioSize() will return 0. For + * output devices, the hardware will start playing silence if more audio isn't + * queued. For capture devices, the hardware will start filling the empty + * queue with new data if the capture device isn't paused. + * + * This will not prevent playback of queued audio that's already been sent to + * the hardware, as we can not undo that, so expect there to be some fraction + * of a second of audio that might still be heard. This can be useful if you + * want to, say, drop any pending music or any unprocessed microphone input + * during a level change in your game. + * + * You may not queue or dequeue audio on a device that is using an + * application-supplied callback; calling this function on such a device + * always returns 0. You have to use the audio callback or queue audio, but + * not both. + * + * You should not call SDL_LockAudio() on the device before clearing the + * queue; SDL handles locking internally for this function. + * + * This function always succeeds and thus returns void. + * + * \param dev the device ID of which to clear the audio queue + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_GetQueuedAudioSize + * \sa SDL_QueueAudio + * \sa SDL_DequeueAudio + */ +extern DECLSPEC void SDLCALL SDL_ClearQueuedAudio(SDL_AudioDeviceID dev); + + +/** + * \name Audio lock functions + * + * The lock manipulated by these functions protects the callback function. + * During a SDL_LockAudio()/SDL_UnlockAudio() pair, you can be guaranteed that + * the callback function is not running. Do not call these from the callback + * function or you will cause deadlock. + */ +/* @{ */ + +/** + * This function is a legacy means of locking the audio device. + * + * New programs might want to use SDL_LockAudioDevice() instead. This function + * is equivalent to calling... + * + * ```c + * SDL_LockAudioDevice(1); + * ``` + * + * ...and is only useful if you used the legacy SDL_OpenAudio() function. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LockAudioDevice + * \sa SDL_UnlockAudio + * \sa SDL_UnlockAudioDevice + */ +extern DECLSPEC void SDLCALL SDL_LockAudio(void); + +/** + * Use this function to lock out the audio callback function for a specified + * device. + * + * The lock manipulated by these functions protects the audio callback + * function specified in SDL_OpenAudioDevice(). During a + * SDL_LockAudioDevice()/SDL_UnlockAudioDevice() pair, you can be guaranteed + * that the callback function for that device is not running, even if the + * device is not paused. While a device is locked, any other unpaused, + * unlocked devices may still run their callbacks. + * + * Calling this function from inside your audio callback is unnecessary. SDL + * obtains this lock before calling your function, and releases it when the + * function returns. + * + * You should not hold the lock longer than absolutely necessary. If you hold + * it too long, you'll experience dropouts in your audio playback. Ideally, + * your application locks the device, sets a few variables and unlocks again. + * Do not do heavy work while holding the lock for a device. + * + * It is safe to lock the audio device multiple times, as long as you unlock + * it an equivalent number of times. The callback will not run until the + * device has been unlocked completely in this way. If your application fails + * to unlock the device appropriately, your callback will never run, you might + * hear repeating bursts of audio, and SDL_CloseAudioDevice() will probably + * deadlock. + * + * Internally, the audio device lock is a mutex; if you lock from two threads + * at once, not only will you block the audio callback, you'll block the other + * thread. + * + * \param dev the ID of the device to be locked + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_UnlockAudioDevice + */ +extern DECLSPEC void SDLCALL SDL_LockAudioDevice(SDL_AudioDeviceID dev); + +/** + * This function is a legacy means of unlocking the audio device. + * + * New programs might want to use SDL_UnlockAudioDevice() instead. This + * function is equivalent to calling... + * + * ```c + * SDL_UnlockAudioDevice(1); + * ``` + * + * ...and is only useful if you used the legacy SDL_OpenAudio() function. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LockAudio + * \sa SDL_UnlockAudioDevice + */ +extern DECLSPEC void SDLCALL SDL_UnlockAudio(void); + +/** + * Use this function to unlock the audio callback function for a specified + * device. + * + * This function should be paired with a previous SDL_LockAudioDevice() call. + * + * \param dev the ID of the device to be unlocked + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LockAudioDevice + */ +extern DECLSPEC void SDLCALL SDL_UnlockAudioDevice(SDL_AudioDeviceID dev); +/* @} *//* Audio lock functions */ + +/** + * This function is a legacy means of closing the audio device. + * + * This function is equivalent to calling... + * + * ```c + * SDL_CloseAudioDevice(1); + * ``` + * + * ...and is only useful if you used the legacy SDL_OpenAudio() function. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_OpenAudio + */ +extern DECLSPEC void SDLCALL SDL_CloseAudio(void); + +/** + * Use this function to shut down audio processing and close the audio device. + * + * The application should close open audio devices once they are no longer + * needed. Calling this function will wait until the device's audio callback + * is not running, release the audio hardware and then clean up internal + * state. No further audio will play from this device once this function + * returns. + * + * This function may block briefly while pending audio data is played by the + * hardware, so that applications don't drop the last buffer of data they + * supplied. + * + * The device ID is invalid as soon as the device is closed, and is eligible + * for reuse in a new SDL_OpenAudioDevice() call immediately. + * + * \param dev an audio device previously opened with SDL_OpenAudioDevice() + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_OpenAudioDevice + */ +extern DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID dev); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_audio_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..897cdc0bc161bf8dc2564eda25caf2fbaae9ddcb GIT binary patch literal 74377 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 ZU{r!LRK$9{3G2VftY0^WU!{Wa{{jq1QZWDk literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h new file mode 100644 index 00000000..4ecbe507 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h @@ -0,0 +1,198 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_blendmode.h + * + * Header file declaring the SDL_BlendMode enumeration + */ + +#ifndef SDL_blendmode_h_ +#define SDL_blendmode_h_ + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \brief The blend mode used in SDL_RenderCopy() and drawing operations. + */ +typedef enum +{ + SDL_BLENDMODE_NONE = 0x00000000, /**< no blending + dstRGBA = srcRGBA */ + SDL_BLENDMODE_BLEND = 0x00000001, /**< alpha blending + dstRGB = (srcRGB * srcA) + (dstRGB * (1-srcA)) + dstA = srcA + (dstA * (1-srcA)) */ + SDL_BLENDMODE_ADD = 0x00000002, /**< additive blending + dstRGB = (srcRGB * srcA) + dstRGB + dstA = dstA */ + SDL_BLENDMODE_MOD = 0x00000004, /**< color modulate + dstRGB = srcRGB * dstRGB + dstA = dstA */ + SDL_BLENDMODE_MUL = 0x00000008, /**< color multiply + dstRGB = (srcRGB * dstRGB) + (dstRGB * (1-srcA)) + dstA = dstA */ + SDL_BLENDMODE_INVALID = 0x7FFFFFFF + + /* Additional custom blend modes can be returned by SDL_ComposeCustomBlendMode() */ + +} SDL_BlendMode; + +/** + * \brief The blend operation used when combining source and destination pixel components + */ +typedef enum +{ + SDL_BLENDOPERATION_ADD = 0x1, /**< dst + src: supported by all renderers */ + SDL_BLENDOPERATION_SUBTRACT = 0x2, /**< dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES */ + SDL_BLENDOPERATION_REV_SUBTRACT = 0x3, /**< src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES */ + SDL_BLENDOPERATION_MINIMUM = 0x4, /**< min(dst, src) : supported by D3D9, D3D11 */ + SDL_BLENDOPERATION_MAXIMUM = 0x5 /**< max(dst, src) : supported by D3D9, D3D11 */ +} SDL_BlendOperation; + +/** + * \brief The normalized factor used to multiply pixel components + */ +typedef enum +{ + SDL_BLENDFACTOR_ZERO = 0x1, /**< 0, 0, 0, 0 */ + SDL_BLENDFACTOR_ONE = 0x2, /**< 1, 1, 1, 1 */ + SDL_BLENDFACTOR_SRC_COLOR = 0x3, /**< srcR, srcG, srcB, srcA */ + SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR = 0x4, /**< 1-srcR, 1-srcG, 1-srcB, 1-srcA */ + SDL_BLENDFACTOR_SRC_ALPHA = 0x5, /**< srcA, srcA, srcA, srcA */ + SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA = 0x6, /**< 1-srcA, 1-srcA, 1-srcA, 1-srcA */ + SDL_BLENDFACTOR_DST_COLOR = 0x7, /**< dstR, dstG, dstB, dstA */ + SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR = 0x8, /**< 1-dstR, 1-dstG, 1-dstB, 1-dstA */ + SDL_BLENDFACTOR_DST_ALPHA = 0x9, /**< dstA, dstA, dstA, dstA */ + SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA = 0xA /**< 1-dstA, 1-dstA, 1-dstA, 1-dstA */ +} SDL_BlendFactor; + +/** + * Compose a custom blend mode for renderers. + * + * The functions SDL_SetRenderDrawBlendMode and SDL_SetTextureBlendMode accept + * the SDL_BlendMode returned by this function if the renderer supports it. + * + * A blend mode controls how the pixels from a drawing operation (source) get + * combined with the pixels from the render target (destination). First, the + * components of the source and destination pixels get multiplied with their + * blend factors. Then, the blend operation takes the two products and + * calculates the result that will get stored in the render target. + * + * Expressed in pseudocode, it would look like this: + * + * ```c + * dstRGB = colorOperation(srcRGB * srcColorFactor, dstRGB * dstColorFactor); + * dstA = alphaOperation(srcA * srcAlphaFactor, dstA * dstAlphaFactor); + * ``` + * + * Where the functions `colorOperation(src, dst)` and `alphaOperation(src, + * dst)` can return one of the following: + * + * - `src + dst` + * - `src - dst` + * - `dst - src` + * - `min(src, dst)` + * - `max(src, dst)` + * + * The red, green, and blue components are always multiplied with the first, + * second, and third components of the SDL_BlendFactor, respectively. The + * fourth component is not used. + * + * The alpha component is always multiplied with the fourth component of the + * SDL_BlendFactor. The other components are not used in the alpha + * calculation. + * + * Support for these blend modes varies for each renderer. To check if a + * specific SDL_BlendMode is supported, create a renderer and pass it to + * either SDL_SetRenderDrawBlendMode or SDL_SetTextureBlendMode. They will + * return with an error if the blend mode is not supported. + * + * This list describes the support of custom blend modes for each renderer in + * SDL 2.0.6. All renderers support the four blend modes listed in the + * SDL_BlendMode enumeration. + * + * - **direct3d**: Supports all operations with all factors. However, some + * factors produce unexpected results with `SDL_BLENDOPERATION_MINIMUM` and + * `SDL_BLENDOPERATION_MAXIMUM`. + * - **direct3d11**: Same as Direct3D 9. + * - **opengl**: Supports the `SDL_BLENDOPERATION_ADD` operation with all + * factors. OpenGL versions 1.1, 1.2, and 1.3 do not work correctly with SDL + * 2.0.6. + * - **opengles**: Supports the `SDL_BLENDOPERATION_ADD` operation with all + * factors. Color and alpha factors need to be the same. OpenGL ES 1 + * implementation specific: May also support `SDL_BLENDOPERATION_SUBTRACT` + * and `SDL_BLENDOPERATION_REV_SUBTRACT`. May support color and alpha + * operations being different from each other. May support color and alpha + * factors being different from each other. + * - **opengles2**: Supports the `SDL_BLENDOPERATION_ADD`, + * `SDL_BLENDOPERATION_SUBTRACT`, `SDL_BLENDOPERATION_REV_SUBTRACT` + * operations with all factors. + * - **psp**: No custom blend mode support. + * - **software**: No custom blend mode support. + * + * Some renderers do not provide an alpha component for the default render + * target. The `SDL_BLENDFACTOR_DST_ALPHA` and + * `SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA` factors do not have an effect in this + * case. + * + * \param srcColorFactor the SDL_BlendFactor applied to the red, green, and + * blue components of the source pixels + * \param dstColorFactor the SDL_BlendFactor applied to the red, green, and + * blue components of the destination pixels + * \param colorOperation the SDL_BlendOperation used to combine the red, + * green, and blue components of the source and + * destination pixels + * \param srcAlphaFactor the SDL_BlendFactor applied to the alpha component of + * the source pixels + * \param dstAlphaFactor the SDL_BlendFactor applied to the alpha component of + * the destination pixels + * \param alphaOperation the SDL_BlendOperation used to combine the alpha + * component of the source and destination pixels + * \returns an SDL_BlendMode that represents the chosen factors and + * operations. + * + * \since This function is available since SDL 2.0.6. + * + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_GetRenderDrawBlendMode + * \sa SDL_SetTextureBlendMode + * \sa SDL_GetTextureBlendMode + */ +extern DECLSPEC SDL_BlendMode SDLCALL SDL_ComposeCustomBlendMode(SDL_BlendFactor srcColorFactor, + SDL_BlendFactor dstColorFactor, + SDL_BlendOperation colorOperation, + SDL_BlendFactor srcAlphaFactor, + SDL_BlendFactor dstAlphaFactor, + SDL_BlendOperation alphaOperation); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_blendmode_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3ea69febd42aa2a2134638017e88cd046689f4e0 GIT binary patch literal 20269 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 L4 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_clipboard.h + * + * Include file for SDL clipboard handling + */ + +#ifndef SDL_clipboard_h_ +#define SDL_clipboard_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/* Function prototypes */ + +/** + * Put UTF-8 text into the clipboard. + * + * \param text the text to store in the clipboard + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetClipboardText + * \sa SDL_HasClipboardText + */ +extern DECLSPEC int SDLCALL SDL_SetClipboardText(const char *text); + +/** + * Get UTF-8 text from the clipboard, which must be freed with SDL_free(). + * + * This functions returns empty string if there was not enough memory left for + * a copy of the clipboard's content. + * + * \returns the clipboard text on success or an empty string on failure; call + * SDL_GetError() for more information. Caller must call SDL_free() + * on the returned pointer when done with it (even if there was an + * error). + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HasClipboardText + * \sa SDL_SetClipboardText + */ +extern DECLSPEC char * SDLCALL SDL_GetClipboardText(void); + +/** + * Query whether the clipboard exists and contains a non-empty text string. + * + * \returns SDL_TRUE if the clipboard has text, or SDL_FALSE if it does not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetClipboardText + * \sa SDL_SetClipboardText + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void); + +/** + * Put UTF-8 text into the primary selection. + * + * \param text the text to store in the primary selection + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.26.0. + * + * \sa SDL_GetPrimarySelectionText + * \sa SDL_HasPrimarySelectionText + */ +extern DECLSPEC int SDLCALL SDL_SetPrimarySelectionText(const char *text); + +/** + * Get UTF-8 text from the primary selection, which must be freed with + * SDL_free(). + * + * This functions returns empty string if there was not enough memory left for + * a copy of the primary selection's content. + * + * \returns the primary selection text on success or an empty string on + * failure; call SDL_GetError() for more information. Caller must + * call SDL_free() on the returned pointer when done with it (even if + * there was an error). + * + * \since This function is available since SDL 2.26.0. + * + * \sa SDL_HasPrimarySelectionText + * \sa SDL_SetPrimarySelectionText + */ +extern DECLSPEC char * SDLCALL SDL_GetPrimarySelectionText(void); + +/** + * Query whether the primary selection exists and contains a non-empty text + * string. + * + * \returns SDL_TRUE if the primary selection has text, or SDL_FALSE if it + * does not. + * + * \since This function is available since SDL 2.26.0. + * + * \sa SDL_GetPrimarySelectionText + * \sa SDL_SetPrimarySelectionText + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasPrimarySelectionText(void); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_clipboard_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..be5a11722469002f390f22f6506950098b5a3d3a GIT binary patch literal 15383 zcmd5@Z-^vE6`#4pD95o}6hb(Hv==pd=k?Cs-ex&8#!D{Q7`T{Z?;_%#^wxA&&(v-I zyRPn;*;6zd5{wWqQBk81&<`T{5F{VWH$SL|xqS2wA}ELfQ8b?v!r{5Ts_L$untt6g zNkH5WbGy^8s$RYKd%ySURp0T>e?DkEb*0no^oDUrdqM9W%6GCj>1C8>J&$@lp1Qq| zuxQ2YT;~QP8Z0DgkK=TQMFZPoDRr|r-Ti3e3Y}{wy1ksIJr=n^?$O@)d(N%(`gFh| z$BjL@GE`a`GH$k;$S41N{qz;%NuOoBC!X@27CrrtCDcS zqAZ1-g6I|YsaK6zrB3kS407h78r^rUHwbd^=JzteX`8x38nB5_;l-C8HTC3Tp@H7Bhz3-g(vp;@p)$)kZd!^bA zM}0hGrfrd>xtlqg_n*7hSi00rt1pRe8X~2{)MRcP?=b4H*zxno%~%}qDf3P9m}CU8 z;HUd%TR6&x2$`7y_5C;u=eZu7&a)kU8QoE#w_gs3q(X>K$B_tNY26C zA)UL#7`Cyg{f8bfK`bHxwT@l}R$)Zu2Mur3 zQ;q|M24FfNnK&c>o2l*M1X<=P;XFEP7{j^)3aL2*hEyp;x}a^Zd?fbs`q{h8jq3e? zmN37N(fcXa6R{-~Gc1Dc)}L@7uNqULvPE1cYcPPO97=;XIWkxzy9rNjtQ(q_`;sVy zRFFkBBpX0iwrj|tS|_RR4lyP|rHegAHKuNJm7h}T41(Q6vgdJYXu3=VmxylS?#x%X zP$B61^GgAMoyd%~3q+QgRNA&Zpl0Dj@Vrn*BfDh?^FuNUkTHgDsu;r=ri_*#b_pbZ zvxY%ehZQxFwVuYBkd}PH&8Z9lsAfIRF5~ndqDU4NHHCGc?a*DLl5Imm21wv6D@vfN z`>sL)y0xS=CFtct#_=fE5~=_bo~$v!Aj*4Cwf4E)5K@GPJ({MGw88S#r_I_|A(v(s z!v%`Tk{%@Sdza>;MLSm89<|dbaf2`qE_s&__@N`lgk{MNRso{o9CZXL3VTG9FyJOj zW(TO=i1bo~aHw{xM{QUN=tQN(BY&qRp@7ru0gY(NT;)8wPq@T)&4U^waYCbkO#U^H zNH43{VQnk0nI=GV45seyq!pVrb^Xy%6im1dk z))(OvaNio6geWHZ|01FICjLQ_!qqMyCAn;H>CaHOV zMYSz62pTcvyehU;ah;BVkprP(dHb36gA>g2EC-Hc8b1NE1@c3jF{A zC2VSJh{7v}T%6HKi_Va=)uO0YrNPBR+{!SX$g_(vz6A;XBJhH~|&M6WD2XG0Yu-rN*sSj}-D z`#b&IcQR5nIojL_vcAe(+YjDtW-bYCH;B1t70q-9QEk!GTv`ci?Al36;k0J>44nz8 zX)KqZvW}zA>yD~E#QeA;{UEa`_{R=uHjMG}GZfDGWL}+BSe*@=qN8R45mj{Dk75>$ z;3QZp=1U`$eBxA`qiF@56MCr)=QLbgb$ir#zcu41D^wv{D^}_a2z14iz@BIGabvYn zCc`4-FLdVNgSjzMiO;l@Qx&wDLNzAPJ8`d0x|bz)`Q z8j5d#i~+wU)tCy(+Zgo3UdpKkxS4y(XH#j|S)hqKg2obbWet0w8=Qzst{H2z#nJ<| zY~Ek_*v#FK)DKEFAA%Qe5l9Jj=i;>1b@O|WBWPPy*BEW;?h+ocBvGaB^WT5OOrugI zC=2Ka%IDeUPusN8+rqe4(L&2e{7md8T(8aj)MId+EByb*O}~Xml{=HRbHlt=ALmZJyhR-`U2G9`g{lb)9WXh) zF-R8nT$%sfxmijVV9lL;ZFI$l22Isqn*=2D;}kzH>zOX)%uM3tJY|qadDwg~Ey@s~ zNbPV`UP{~ZTI#?ga52hDl~I^CKc~R5qIo?dh`St(>vD0eVAWm2 z6;!uqwT+@nD%?PWrcO|({0OkSs4PRbgH9`n2b;LId6C3eb%vkj3JE2H+-0flBqSx~ z%|5CFA7Zp#Dxh#GZlf|=Ud|X`L?=|XZH-8nO)6|mRxYXA+UQfMkUpwIKPpI|AEhsR zjWMWtZs5@{&KBy*1u^k>mD8uKu3?$52~|CV8Z5QU0Ll;1IZERon5h?09l?Za2;52w z>3N}d(iXA{u4*`Z8v4Q5(1tUQXM5BQpnnS2HpXty z$r~(b%xpw{W(GVaSQM5s#9T^hXoYdEZXGnLQ4L}Hk$^Uo_6wCya311hK>M*Q*xToZ z-bdmxEVHAkB#I-ExIx7gO)Yql1@~;S%P0?Y3l+`nFUV*!4+)f=_!Xeyb=knSfux}m zW;c_j5|*dADOI6!Wq_>oawQGd6DAHz5&4P?9gE?gJo=Yk%zZ6OygCBuRLJXqDd*C= zO~-K}m(z|fMdrQsrcf@--vC^>r63kBHpV$L@{N6?0Dy~Q3N>?GZB&{rp4F3VoH8`Q zpfd-T7krl{%;D-m?5k!yZD4t3#4W64xJ#m1f4204xa64EC>K|JabpLiS_iN#-B43k z`bzSvN!F-&;ATv8F&3}Y+%R$73Go(oZNUT(u_zm$T9xcEYJXv-G^;iW^pRCeN~5$L z=c-25#ixpQCtEcEqqe^oDLY28>8KN5sh)I5!5bQ7TB>E)hSyk{M!cCGf}6Uh7A_<3 z-h{cm;%%DRHDHsnvY6>(yoQcQc8VTeI|a7fvNqp@Y4{9*uJG_K_zy0y8Y5GRl;whG zY@3ZibXSmm;J~~nNxH$fKO@@)@oY#{Tkf0p6%C8hV?Z&Wj=|yOqp4jqzBXFmS<$plac+96b2hl){_rAR<(` zu=U8j7V{e>hSwbA;1gDyO7YFR&YhR?EIVkGKVD2Ztd@zn;T-Ey>%x$6t2~Zb@H-h1 z77)nDmJ)!at+kc4jg?h7h{(zBqZwumm{dJKk3a9g&!JAIyLb2Aq}$!=>^;%x?7#7k zN1x%}{*_%=UG&(j<6^@Nixeh5as*5cBGw}pHto}L@0Op&A#R@&;1}i&tuW`A)u$i{ zwS+Zh+3=uPO8mKe3^r((gIlHjm2;F|3Lm7@8iUQjm==xVd;oL9ITf58P(QPv)pU@6 zi<4a|ZgAOcTtYzn?|~^#qTKCHg%noUufU-#QDDfLdXnY92jY*+*y~^ix&=`z7M;4@LpzBg=~; zFbP=HVwtrpDjTp=HJ1nqWip|;&_&q$ZK1FsCKp8^zmsR(F7NQi0EK`3-nCb@R-ZUg zpb+*Y?bZO~We8pXlESKR&auu-Hvt|W$_+fiEHREpv31$-QNR^el|BY}4#!>L9DHEK z39GY!up&ADZ;q%kFQCh#LdHNt<&Yx8T4C`v9n=uP+CdEt1cunZ{VPjfy5q{Xj!3@P zKD`}vyW5@ZuYspd`4N5o^`8$4Pl;_zv-H`3CGyp*3m~BBc^RW;w-jB7mccP_U>ZyZ zt5|!Qma7Td=olj9Ewb?HED0N%)n*0I8V^d^-MV}0Vz;~1*&2ZvZ+r2LmwtNx4}Mmd z(V$&pwB}o|VH4l#jW_eG45$AA&uUeg`BjUkn48C|Zzq7Jd9`9=Wrivg-#o7ha?o^I zP4pId)x;Gegr9`7igitA8$VHASSxq$q;|!kQRV`)pC> z)C2y%8Pha9#Ft?uZTeZC2#S328-Lr~e|i73q{#Kt>)YM#dS@L$}^@_A{MpQ2KSW)(s=pFRwo?My&VOA1_8c{DJRg zzxm-;j~4pKe{NV`Uf(#=-CWtc<4kvJZR^aL?)LIFe8X2be6zQ<2jA>J{im&$Up=+* z9&_Z<`g>vI(k6UvEp5T)_R= + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_h_ +#define SDL_config_h_ + +/** + * \file SDL_config.h.in + * + * This is a set of defines to configure the SDL features + */ + +/* General platform specific identifiers */ +#include "SDL_platform.h" + +/* C language features */ +/* #undef const */ +/* #undef inline */ +/* #undef volatile */ + +/* C datatypes */ +/* Define SIZEOF_VOIDP for 64/32 architectures */ +#if defined(__LP64__) || defined(_LP64) || defined(_WIN64) +#define SIZEOF_VOIDP 8 +#else +#define SIZEOF_VOIDP 4 +#endif + +#define HAVE_GCC_ATOMICS 1 +/* #undef HAVE_GCC_SYNC_LOCK_TEST_AND_SET */ + +/* Comment this if you want to build without any C library requirements */ +#define HAVE_LIBC 1 +#if HAVE_LIBC + +/* Useful headers */ +#define STDC_HEADERS 1 +#define HAVE_ALLOCA_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_FLOAT_H 1 +#define HAVE_ICONV_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_LIMITS_H 1 +#define HAVE_MALLOC_H 1 +#define HAVE_MATH_H 1 +#define HAVE_MEMORY_H 1 +#define HAVE_SIGNAL_H 1 +#define HAVE_STDARG_H 1 +#define HAVE_STDDEF_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_WCHAR_H 1 +#define HAVE_LINUX_INPUT_H 1 +/* #undef HAVE_PTHREAD_NP_H */ +#define HAVE_LIBUNWIND_H 1 + +/* C library functions */ +#define HAVE_DLOPEN 1 +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */ +#define HAVE_GETENV 1 +#define HAVE_SETENV 1 +#define HAVE_PUTENV 1 +#define HAVE_UNSETENV 1 +#endif +#define HAVE_QSORT 1 +#define HAVE_BSEARCH 1 +#define HAVE_ABS 1 +#define HAVE_BCOPY 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMCMP 1 +#define HAVE_WCSLEN 1 +#define HAVE_WCSLCPY 1 +#define HAVE_WCSLCAT 1 +/* #undef HAVE__WCSDUP */ +#define HAVE_WCSDUP 1 +#define HAVE_WCSSTR 1 +#define HAVE_WCSCMP 1 +#define HAVE_WCSNCMP 1 +#define HAVE_WCSCASECMP 1 +/* #undef HAVE__WCSICMP */ +#define HAVE_WCSNCASECMP 1 +/* #undef HAVE__WCSNICMP */ +#define HAVE_STRLEN 1 +#define HAVE_STRLCPY 1 +#define HAVE_STRLCAT 1 +/* #undef HAVE__STRREV */ +/* #undef HAVE__STRUPR */ +/* #undef HAVE__STRLWR */ +#define HAVE_INDEX 1 +#define HAVE_RINDEX 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOK_R 1 +/* #undef HAVE_ITOA */ +/* #undef HAVE__LTOA */ +/* #undef HAVE__UITOA */ +/* #undef HAVE__ULTOA */ +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +/* #undef HAVE__I64TOA */ +/* #undef HAVE__UI64TOA */ +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_STRTOD 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +/* #undef HAVE__STRICMP */ +#define HAVE_STRCASECMP 1 +/* #undef HAVE__STRNICMP */ +#define HAVE_STRNCASECMP 1 +#define HAVE_STRCASESTR 1 +#define HAVE_SSCANF 1 +#define HAVE_VSSCANF 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_M_PI 1 +#define HAVE_ACOS 1 +#define HAVE_ACOSF 1 +#define HAVE_ASIN 1 +#define HAVE_ASINF 1 +#define HAVE_ATAN 1 +#define HAVE_ATANF 1 +#define HAVE_ATAN2 1 +#define HAVE_ATAN2F 1 +#define HAVE_CEIL 1 +#define HAVE_CEILF 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COPYSIGNF 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_EXP 1 +#define HAVE_EXPF 1 +#define HAVE_FABS 1 +#define HAVE_FABSF 1 +#define HAVE_FLOOR 1 +#define HAVE_FLOORF 1 +#define HAVE_FMOD 1 +#define HAVE_FMODF 1 +#define HAVE_LOG 1 +#define HAVE_LOGF 1 +#define HAVE_LOG10 1 +#define HAVE_LOG10F 1 +#define HAVE_LROUND 1 +#define HAVE_LROUNDF 1 +#define HAVE_POW 1 +#define HAVE_POWF 1 +#define HAVE_ROUND 1 +#define HAVE_ROUNDF 1 +#define HAVE_SCALBN 1 +#define HAVE_SCALBNF 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE_TRUNC 1 +#define HAVE_TRUNCF 1 +#define HAVE_FOPEN64 1 +#define HAVE_FSEEKO 1 +#define HAVE_FSEEKO64 1 +#define HAVE_SIGACTION 1 +#define HAVE_SA_SIGACTION 1 +#define HAVE_SETJMP 1 +#define HAVE_NANOSLEEP 1 +#define HAVE_SYSCONF 1 +/* #undef HAVE_SYSCTLBYNAME */ +#define HAVE_CLOCK_GETTIME 1 +/* #undef HAVE_GETPAGESIZE */ +#define HAVE_MPROTECT 1 +#define HAVE_ICONV 1 +#define HAVE_PTHREAD_SETNAME_NP 1 +/* #undef HAVE_PTHREAD_SET_NAME_NP */ +#define HAVE_SEM_TIMEDWAIT 1 +#define HAVE_GETAUXVAL 1 +/* #undef HAVE_ELF_AUX_INFO */ +#define HAVE_POLL 1 +#define HAVE__EXIT 1 + +#else +#define HAVE_STDARG_H 1 +#define HAVE_STDDEF_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_FLOAT_H 1 +#endif /* HAVE_LIBC */ + +/* #undef HAVE_ALTIVEC_H */ +#define HAVE_DBUS_DBUS_H 1 +#define HAVE_FCITX 1 +#define HAVE_IBUS_IBUS_H 1 +#define HAVE_SYS_INOTIFY_H 1 +#define HAVE_INOTIFY_INIT 1 +#define HAVE_INOTIFY_INIT1 1 +#define HAVE_INOTIFY 1 +#define HAVE_LIBUSB 1 +#define HAVE_O_CLOEXEC 1 + +/* Apple platforms might be building universal binaries, where Intel builds + can use immintrin.h but other architectures can't. */ +#ifdef __APPLE__ +# if defined(__has_include) && (defined(__i386__) || defined(__x86_64)) +# if __has_include() +# define HAVE_IMMINTRIN_H 1 +# endif +# endif +#else /* non-Apple platforms can use the normal CMake check for this. */ +#define HAVE_IMMINTRIN_H 1 +#endif + +#define HAVE_LIBUDEV_H 1 +#define HAVE_LIBSAMPLERATE_H 1 +#define HAVE_LIBDECOR_H 1 + +/* #undef HAVE_D3D_H */ +/* #undef HAVE_D3D11_H */ +/* #undef HAVE_D3D12_H */ +/* #undef HAVE_DDRAW_H */ +/* #undef HAVE_DSOUND_H */ +/* #undef HAVE_DINPUT_H */ +/* #undef HAVE_XINPUT_H */ +/* #undef HAVE_WINDOWS_GAMING_INPUT_H */ +/* #undef HAVE_DXGI_H */ + +/* #undef HAVE_MMDEVICEAPI_H */ +/* #undef HAVE_AUDIOCLIENT_H */ +/* #undef HAVE_TPCSHRD_H */ +/* #undef HAVE_SENSORSAPI_H */ +/* #undef HAVE_ROAPI_H */ +/* #undef HAVE_SHELLSCALINGAPI_H */ + +/* #undef HAVE_XINPUT_GAMEPAD_EX */ +/* #undef HAVE_XINPUT_STATE_EX */ + +/* #undef USE_POSIX_SPAWN */ + +/* SDL internal assertion support */ +#if 0 +/* #undef SDL_DEFAULT_ASSERT_LEVEL */ +#endif + +/* Allow disabling of core subsystems */ +/* #undef SDL_ATOMIC_DISABLED */ +/* #undef SDL_AUDIO_DISABLED */ +/* #undef SDL_CPUINFO_DISABLED */ +/* #undef SDL_EVENTS_DISABLED */ +/* #undef SDL_FILE_DISABLED */ +/* #undef SDL_JOYSTICK_DISABLED */ +/* #undef SDL_HAPTIC_DISABLED */ +/* #undef SDL_HIDAPI_DISABLED */ +/* #undef SDL_SENSOR_DISABLED */ +/* #undef SDL_LOADSO_DISABLED */ +/* #undef SDL_RENDER_DISABLED */ +/* #undef SDL_THREADS_DISABLED */ +/* #undef SDL_TIMERS_DISABLED */ +/* #undef SDL_VIDEO_DISABLED */ +/* #undef SDL_POWER_DISABLED */ +/* #undef SDL_FILESYSTEM_DISABLED */ +/* #undef SDL_LOCALE_DISABLED */ +/* #undef SDL_MISC_DISABLED */ + +/* Enable various audio drivers */ +#define SDL_AUDIO_DRIVER_ALSA 1 +#define SDL_AUDIO_DRIVER_ALSA_DYNAMIC "libasound.so.2" +/* #undef SDL_AUDIO_DRIVER_ANDROID */ +/* #undef SDL_AUDIO_DRIVER_OPENSLES */ +/* #undef SDL_AUDIO_DRIVER_AAUDIO */ +/* #undef SDL_AUDIO_DRIVER_ARTS */ +/* #undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC */ +/* #undef SDL_AUDIO_DRIVER_COREAUDIO */ +#define SDL_AUDIO_DRIVER_DISK 1 +/* #undef SDL_AUDIO_DRIVER_DSOUND */ +#define SDL_AUDIO_DRIVER_DUMMY 1 +/* #undef SDL_AUDIO_DRIVER_EMSCRIPTEN */ +/* #undef SDL_AUDIO_DRIVER_ESD */ +/* #undef SDL_AUDIO_DRIVER_ESD_DYNAMIC */ +/* #undef SDL_AUDIO_DRIVER_FUSIONSOUND */ +/* #undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC */ +/* #undef SDL_AUDIO_DRIVER_HAIKU */ +#define SDL_AUDIO_DRIVER_JACK 1 +#define SDL_AUDIO_DRIVER_JACK_DYNAMIC "libjack.so.0" +/* #undef SDL_AUDIO_DRIVER_NAS */ +/* #undef SDL_AUDIO_DRIVER_NAS_DYNAMIC */ +/* #undef SDL_AUDIO_DRIVER_NETBSD */ +#define SDL_AUDIO_DRIVER_OSS 1 +/* #undef SDL_AUDIO_DRIVER_PAUDIO */ +#define SDL_AUDIO_DRIVER_PIPEWIRE 1 +#define SDL_AUDIO_DRIVER_PIPEWIRE_DYNAMIC "libpipewire-0.3.so.0" +#define SDL_AUDIO_DRIVER_PULSEAUDIO 1 +#define SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC "libpulse-simple.so.0" +/* #undef SDL_AUDIO_DRIVER_QSA */ +/* #undef SDL_AUDIO_DRIVER_SNDIO */ +/* #undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC */ +/* #undef SDL_AUDIO_DRIVER_SUNAUDIO */ +/* #undef SDL_AUDIO_DRIVER_WASAPI */ +/* #undef SDL_AUDIO_DRIVER_WINMM */ +/* #undef SDL_AUDIO_DRIVER_OS2 */ +/* #undef SDL_AUDIO_DRIVER_VITA */ +/* #undef SDL_AUDIO_DRIVER_PSP */ +/* #undef SDL_AUDIO_DRIVER_PS2 */ +/* #undef SDL_AUDIO_DRIVER_N3DS */ + +/* Enable various input drivers */ +#define SDL_INPUT_LINUXEV 1 +#define SDL_INPUT_LINUXKD 1 +/* #undef SDL_INPUT_FBSDKBIO */ +/* #undef SDL_INPUT_WSCONS */ +/* #undef SDL_JOYSTICK_ANDROID */ +/* #undef SDL_JOYSTICK_HAIKU */ +/* #undef SDL_JOYSTICK_WGI */ +/* #undef SDL_JOYSTICK_DINPUT */ +/* #undef SDL_JOYSTICK_XINPUT */ +/* #undef SDL_JOYSTICK_DUMMY */ +/* #undef SDL_JOYSTICK_IOKIT */ +/* #undef SDL_JOYSTICK_MFI */ +#define SDL_JOYSTICK_LINUX 1 +/* #undef SDL_JOYSTICK_OS2 */ +/* #undef SDL_JOYSTICK_USBHID */ +/* #undef SDL_HAVE_MACHINE_JOYSTICK_H */ +#define SDL_JOYSTICK_HIDAPI 1 +/* #undef SDL_JOYSTICK_RAWINPUT */ +/* #undef SDL_JOYSTICK_EMSCRIPTEN */ +#define SDL_JOYSTICK_VIRTUAL 1 +/* #undef SDL_JOYSTICK_VITA */ +/* #undef SDL_JOYSTICK_PSP */ +/* #undef SDL_JOYSTICK_PS2 */ +/* #undef SDL_JOYSTICK_N3DS */ +/* #undef SDL_HAPTIC_DUMMY */ +#define SDL_HAPTIC_LINUX 1 +/* #undef SDL_HAPTIC_IOKIT */ +/* #undef SDL_HAPTIC_DINPUT */ +/* #undef SDL_HAPTIC_XINPUT */ +/* #undef SDL_HAPTIC_ANDROID */ +#define SDL_LIBUSB_DYNAMIC "libusb-1.0.so.0" +#define SDL_UDEV_DYNAMIC "libudev.so.1" + +/* Enable various sensor drivers */ +/* #undef SDL_SENSOR_ANDROID */ +/* #undef SDL_SENSOR_COREMOTION */ +/* #undef SDL_SENSOR_WINDOWS */ +#define SDL_SENSOR_DUMMY 1 +/* #undef SDL_SENSOR_VITA */ +/* #undef SDL_SENSOR_N3DS */ + +/* Enable various shared object loading systems */ +#define SDL_LOADSO_DLOPEN 1 +/* #undef SDL_LOADSO_DUMMY */ +/* #undef SDL_LOADSO_LDG */ +/* #undef SDL_LOADSO_WINDOWS */ +/* #undef SDL_LOADSO_OS2 */ + +/* Enable various threading systems */ +/* #undef SDL_THREAD_GENERIC_COND_SUFFIX */ +#define SDL_THREAD_PTHREAD 1 +#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1 +/* #undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP */ +/* #undef SDL_THREAD_WINDOWS */ +/* #undef SDL_THREAD_OS2 */ +/* #undef SDL_THREAD_VITA */ +/* #undef SDL_THREAD_PSP */ +/* #undef SDL_THREAD_PS2 */ +/* #undef SDL_THREAD_N3DS */ + +/* Enable various timer systems */ +/* #undef SDL_TIMER_HAIKU */ +/* #undef SDL_TIMER_DUMMY */ +#define SDL_TIMER_UNIX 1 +/* #undef SDL_TIMER_WINDOWS */ +/* #undef SDL_TIMER_OS2 */ +/* #undef SDL_TIMER_VITA */ +/* #undef SDL_TIMER_PSP */ +/* #undef SDL_TIMER_PS2 */ +/* #undef SDL_TIMER_N3DS */ + +/* Enable various video drivers */ +/* #undef SDL_VIDEO_DRIVER_ANDROID */ +/* #undef SDL_VIDEO_DRIVER_EMSCRIPTEN */ +/* #undef SDL_VIDEO_DRIVER_HAIKU */ +/* #undef SDL_VIDEO_DRIVER_COCOA */ +/* #undef SDL_VIDEO_DRIVER_UIKIT */ +/* #undef SDL_VIDEO_DRIVER_DIRECTFB */ +/* #undef SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC */ +#define SDL_VIDEO_DRIVER_DUMMY 1 +#define SDL_VIDEO_DRIVER_OFFSCREEN 1 +/* #undef SDL_VIDEO_DRIVER_WINDOWS */ +/* #undef SDL_VIDEO_DRIVER_WINRT */ +#define SDL_VIDEO_DRIVER_WAYLAND 1 +/* #undef SDL_VIDEO_DRIVER_RPI */ +/* #undef SDL_VIDEO_DRIVER_VIVANTE */ +/* #undef SDL_VIDEO_DRIVER_VIVANTE_VDK */ +/* #undef SDL_VIDEO_DRIVER_OS2 */ +/* #undef SDL_VIDEO_DRIVER_QNX */ +/* #undef SDL_VIDEO_DRIVER_RISCOS */ +/* #undef SDL_VIDEO_DRIVER_PSP */ +/* #undef SDL_VIDEO_DRIVER_PS2 */ + +#define SDL_VIDEO_DRIVER_KMSDRM 1 +#define SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC "libdrm.so.2" +#define SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM "libgbm.so.1" + +#define SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH 1 +#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC "libwayland-client.so.0" +#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL "libwayland-egl.so.1" +#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR "libwayland-cursor.so.0" +#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON "libxkbcommon.so.0" +#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR "libdecor-0.so.0" + +#define SDL_VIDEO_DRIVER_X11 1 +#define SDL_VIDEO_DRIVER_X11_DYNAMIC "libX11.so.6" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "libXext.so.6" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR "libXcursor.so.1" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "libXi.so.6" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XFIXES "libXfixes.so.3" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "libXrandr.so.2" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "libXss.so.1" +#define SDL_VIDEO_DRIVER_X11_XCURSOR 1 +#define SDL_VIDEO_DRIVER_X11_XDBE 1 +#define SDL_VIDEO_DRIVER_X11_XINPUT2 1 +#define SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH 1 +#define SDL_VIDEO_DRIVER_X11_XFIXES 1 +#define SDL_VIDEO_DRIVER_X11_XRANDR 1 +#define SDL_VIDEO_DRIVER_X11_XSCRNSAVER 1 +#define SDL_VIDEO_DRIVER_X11_XSHAPE 1 +#define SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1 +#define SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM 1 +/* #undef SDL_VIDEO_DRIVER_VITA */ +/* #undef SDL_VIDEO_DRIVER_N3DS */ + +/* #undef SDL_VIDEO_RENDER_D3D */ +/* #undef SDL_VIDEO_RENDER_D3D11 */ +/* #undef SDL_VIDEO_RENDER_D3D12 */ +#define SDL_VIDEO_RENDER_OGL 1 +/* #undef SDL_VIDEO_RENDER_OGL_ES */ +#define SDL_VIDEO_RENDER_OGL_ES2 1 +/* #undef SDL_VIDEO_RENDER_DIRECTFB */ +/* #undef SDL_VIDEO_RENDER_METAL */ +/* #undef SDL_VIDEO_RENDER_VITA_GXM */ +/* #undef SDL_VIDEO_RENDER_PS2 */ +/* #undef SDL_VIDEO_RENDER_PSP */ + +/* Enable OpenGL support */ +#define SDL_VIDEO_OPENGL 1 +/* #undef SDL_VIDEO_OPENGL_ES */ +#define SDL_VIDEO_OPENGL_ES2 1 +/* #undef SDL_VIDEO_OPENGL_BGL */ +/* #undef SDL_VIDEO_OPENGL_CGL */ +#define SDL_VIDEO_OPENGL_GLX 1 +/* #undef SDL_VIDEO_OPENGL_WGL */ +#define SDL_VIDEO_OPENGL_EGL 1 +/* #undef SDL_VIDEO_OPENGL_OSMESA */ +/* #undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC */ + +/* Enable Vulkan support */ +#define SDL_VIDEO_VULKAN 1 + +/* Enable Metal support */ +/* #undef SDL_VIDEO_METAL */ + +/* Enable system power support */ +/* #undef SDL_POWER_ANDROID */ +#define SDL_POWER_LINUX 1 +/* #undef SDL_POWER_WINDOWS */ +/* #undef SDL_POWER_WINRT */ +/* #undef SDL_POWER_MACOSX */ +/* #undef SDL_POWER_UIKIT */ +/* #undef SDL_POWER_HAIKU */ +/* #undef SDL_POWER_EMSCRIPTEN */ +/* #undef SDL_POWER_HARDWIRED */ +/* #undef SDL_POWER_VITA */ +/* #undef SDL_POWER_PSP */ +/* #undef SDL_POWER_N3DS */ + +/* Enable system filesystem support */ +/* #undef SDL_FILESYSTEM_ANDROID */ +/* #undef SDL_FILESYSTEM_HAIKU */ +/* #undef SDL_FILESYSTEM_COCOA */ +/* #undef SDL_FILESYSTEM_DUMMY */ +/* #undef SDL_FILESYSTEM_RISCOS */ +#define SDL_FILESYSTEM_UNIX 1 +/* #undef SDL_FILESYSTEM_WINDOWS */ +/* #undef SDL_FILESYSTEM_EMSCRIPTEN */ +/* #undef SDL_FILESYSTEM_OS2 */ +/* #undef SDL_FILESYSTEM_VITA */ +/* #undef SDL_FILESYSTEM_PSP */ +/* #undef SDL_FILESYSTEM_PS2 */ +/* #undef SDL_FILESYSTEM_N3DS */ + +/* Enable misc subsystem */ +/* #undef SDL_MISC_DUMMY */ + +/* Enable locale subsystem */ +/* #undef SDL_LOCALE_DUMMY */ + +/* Enable assembly routines */ +/* #undef SDL_ALTIVEC_BLITTERS */ +/* #undef SDL_ARM_SIMD_BLITTERS */ +/* #undef SDL_ARM_NEON_BLITTERS */ + +/* Whether SDL_DYNAMIC_API needs dlopen */ +#define DYNAPI_NEEDS_DLOPEN 1 + +/* Enable dynamic libsamplerate support */ +#define SDL_LIBSAMPLERATE_DYNAMIC "libsamplerate.so.0" + +/* Enable ime support */ +#define SDL_USE_IME 1 + +/* Platform specific definitions */ +/* #undef SDL_IPHONE_KEYBOARD */ +/* #undef SDL_IPHONE_LAUNCHSCREEN */ + +/* #undef SDL_VIDEO_VITA_PIB */ +/* #undef SDL_VIDEO_VITA_PVR */ +/* #undef SDL_VIDEO_VITA_PVR_OGL */ + +#define SDL_HAVE_LIBDECOR_GET_MIN_MAX 1 + +#if !defined(HAVE_STDINT_H) && !defined(_STDINT_H_) +/* Most everything except Visual Studio 2008 and earlier has stdint.h now */ +#if defined(_MSC_VER) && (_MSC_VER < 1600) +typedef signed __int8 int8_t; +typedef unsigned __int8 uint8_t; +typedef signed __int16 int16_t; +typedef unsigned __int16 uint16_t; +typedef signed __int32 int32_t; +typedef unsigned __int32 uint32_t; +typedef signed __int64 int64_t; +typedef unsigned __int64 uint64_t; +#ifndef _UINTPTR_T_DEFINED +#ifdef _WIN64 +typedef unsigned __int64 uintptr_t; +#else +typedef unsigned int uintptr_t; +#endif +#define _UINTPTR_T_DEFINED +#endif +#endif /* Visual Studio 2008 */ +#endif /* !_STDINT_H_ && !HAVE_STDINT_H */ + +#endif /* SDL_config_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e918fb9c2677e3f9ce54f9d322519771799e8c12 GIT binary patch literal 29173 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 Gp8pRqr>&|0 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h new file mode 100644 index 00000000..ed5e9791 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h @@ -0,0 +1,594 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_cpuinfo.h + * + * CPU feature detection for SDL. + */ + +#ifndef SDL_cpuinfo_h_ +#define SDL_cpuinfo_h_ + +#include "SDL_stdinc.h" + +/* Need to do this here because intrin.h has C++ code in it */ +/* Visual Studio 2005 has a bug where intrin.h conflicts with winnt.h */ +#if defined(_MSC_VER) && (_MSC_VER >= 1500) && (defined(_M_IX86) || defined(_M_X64)) +#ifdef __clang__ +/* As of Clang 11, '_m_prefetchw' is conflicting with the winnt.h's version, + so we define the needed '_m_prefetch' here as a pseudo-header, until the issue is fixed. */ + +#ifndef __PRFCHWINTRIN_H +#define __PRFCHWINTRIN_H + +static __inline__ void __attribute__((__always_inline__, __nodebug__)) +_m_prefetch(void *__P) +{ + __builtin_prefetch (__P, 0, 3 /* _MM_HINT_T0 */); +} + +#endif /* __PRFCHWINTRIN_H */ +#endif /* __clang__ */ +#include +#ifndef _WIN64 +#ifndef __MMX__ +#define __MMX__ +#endif +#ifndef __3dNOW__ +#define __3dNOW__ +#endif +#endif +#ifndef __SSE__ +#define __SSE__ +#endif +#ifndef __SSE2__ +#define __SSE2__ +#endif +#ifndef __SSE3__ +#define __SSE3__ +#endif +#elif defined(__MINGW64_VERSION_MAJOR) +#include +#if !defined(SDL_DISABLE_ARM_NEON_H) && defined(__ARM_NEON) +# include +#endif +#else +/* altivec.h redefining bool causes a number of problems, see bugs 3993 and 4392, so you need to explicitly define SDL_ENABLE_ALTIVEC_H to have it included. */ +#if defined(HAVE_ALTIVEC_H) && defined(__ALTIVEC__) && !defined(__APPLE_ALTIVEC__) && defined(SDL_ENABLE_ALTIVEC_H) +#include +#endif +#if !defined(SDL_DISABLE_ARM_NEON_H) +# if defined(__ARM_NEON) +# include +# elif defined(__WINDOWS__) || defined(__WINRT__) || defined(__GDK__) +/* Visual Studio doesn't define __ARM_ARCH, but _M_ARM (if set, always 7), and _M_ARM64 (if set, always 1). */ +# if defined(_M_ARM) +# include +# include +# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */ +# endif +# if defined (_M_ARM64) +# include +# include +# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */ +# define __ARM_ARCH 8 +# endif +# endif +#endif +#endif /* compiler version */ + +#if defined(__3dNOW__) && !defined(SDL_DISABLE_MM3DNOW_H) +#include +#endif +#if defined(__loongarch_sx) && !defined(SDL_DISABLE_LSX_H) +#include +#define __LSX__ +#endif +#if defined(__loongarch_asx) && !defined(SDL_DISABLE_LASX_H) +#include +#define __LASX__ +#endif +#if defined(HAVE_IMMINTRIN_H) && !defined(SDL_DISABLE_IMMINTRIN_H) +#include +#else +#if defined(__MMX__) && !defined(SDL_DISABLE_MMINTRIN_H) +#include +#endif +#if defined(__SSE__) && !defined(SDL_DISABLE_XMMINTRIN_H) +#include +#endif +#if defined(__SSE2__) && !defined(SDL_DISABLE_EMMINTRIN_H) +#include +#endif +#if defined(__SSE3__) && !defined(SDL_DISABLE_PMMINTRIN_H) +#include +#endif +#endif /* HAVE_IMMINTRIN_H */ + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/* This is a guess for the cacheline size used for padding. + * Most x86 processors have a 64 byte cache line. + * The 64-bit PowerPC processors have a 128 byte cache line. + * We'll use the larger value to be generally safe. + */ +#define SDL_CACHELINE_SIZE 128 + +/** + * Get the number of CPU cores available. + * + * \returns the total number of logical CPU cores. On CPUs that include + * technologies such as hyperthreading, the number of logical cores + * may be more than the number of physical cores. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_GetCPUCount(void); + +/** + * Determine the L1 cache line size of the CPU. + * + * This is useful for determining multi-threaded structure padding or SIMD + * prefetch sizes. + * + * \returns the L1 cache line size of the CPU, in bytes. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_GetCPUCacheLineSize(void); + +/** + * Determine whether the CPU has the RDTSC instruction. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has the RDTSC instruction or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasRDTSC(void); + +/** + * Determine whether the CPU has AltiVec features. + * + * This always returns false on CPUs that aren't using PowerPC instruction + * sets. + * + * \returns SDL_TRUE if the CPU has AltiVec features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasAltiVec(void); + +/** + * Determine whether the CPU has MMX features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has MMX features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasMMX(void); + +/** + * Determine whether the CPU has 3DNow! features. + * + * This always returns false on CPUs that aren't using AMD instruction sets. + * + * \returns SDL_TRUE if the CPU has 3DNow! features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_Has3DNow(void); + +/** + * Determine whether the CPU has SSE features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has SSE features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE(void); + +/** + * Determine whether the CPU has SSE2 features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has SSE2 features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE2(void); + +/** + * Determine whether the CPU has SSE3 features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has SSE3 features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE3(void); + +/** + * Determine whether the CPU has SSE4.1 features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has SSE4.1 features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE41(void); + +/** + * Determine whether the CPU has SSE4.2 features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has SSE4.2 features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE42(void); + +/** + * Determine whether the CPU has AVX features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has AVX features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX2 + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX(void); + +/** + * Determine whether the CPU has AVX2 features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has AVX2 features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_Has3DNow + * \sa SDL_HasAltiVec + * \sa SDL_HasAVX + * \sa SDL_HasMMX + * \sa SDL_HasRDTSC + * \sa SDL_HasSSE + * \sa SDL_HasSSE2 + * \sa SDL_HasSSE3 + * \sa SDL_HasSSE41 + * \sa SDL_HasSSE42 + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX2(void); + +/** + * Determine whether the CPU has AVX-512F (foundation) features. + * + * This always returns false on CPUs that aren't using Intel instruction sets. + * + * \returns SDL_TRUE if the CPU has AVX-512F features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.9. + * + * \sa SDL_HasAVX + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX512F(void); + +/** + * Determine whether the CPU has ARM SIMD (ARMv6) features. + * + * This is different from ARM NEON, which is a different instruction set. + * + * This always returns false on CPUs that aren't using ARM instruction sets. + * + * \returns SDL_TRUE if the CPU has ARM SIMD features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.12. + * + * \sa SDL_HasNEON + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasARMSIMD(void); + +/** + * Determine whether the CPU has NEON (ARM SIMD) features. + * + * This always returns false on CPUs that aren't using ARM instruction sets. + * + * \returns SDL_TRUE if the CPU has ARM NEON features or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void); + +/** + * Determine whether the CPU has LSX (LOONGARCH SIMD) features. + * + * This always returns false on CPUs that aren't using LOONGARCH instruction + * sets. + * + * \returns SDL_TRUE if the CPU has LOONGARCH LSX features or SDL_FALSE if + * not. + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasLSX(void); + +/** + * Determine whether the CPU has LASX (LOONGARCH SIMD) features. + * + * This always returns false on CPUs that aren't using LOONGARCH instruction + * sets. + * + * \returns SDL_TRUE if the CPU has LOONGARCH LASX features or SDL_FALSE if + * not. + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasLASX(void); + +/** + * Get the amount of RAM configured in the system. + * + * \returns the amount of RAM configured in the system in MiB. + * + * \since This function is available since SDL 2.0.1. + */ +extern DECLSPEC int SDLCALL SDL_GetSystemRAM(void); + +/** + * Report the alignment this system needs for SIMD allocations. + * + * This will return the minimum number of bytes to which a pointer must be + * aligned to be compatible with SIMD instructions on the current machine. For + * example, if the machine supports SSE only, it will return 16, but if it + * supports AVX-512F, it'll return 64 (etc). This only reports values for + * instruction sets SDL knows about, so if your SDL build doesn't have + * SDL_HasAVX512F(), then it might return 16 for the SSE support it sees and + * not 64 for the AVX-512 instructions that exist but SDL doesn't know about. + * Plan accordingly. + * + * \returns the alignment in bytes needed for available, known SIMD + * instructions. + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC size_t SDLCALL SDL_SIMDGetAlignment(void); + +/** + * Allocate memory in a SIMD-friendly way. + * + * This will allocate a block of memory that is suitable for use with SIMD + * instructions. Specifically, it will be properly aligned and padded for the + * system's supported vector instructions. + * + * The memory returned will be padded such that it is safe to read or write an + * incomplete vector at the end of the memory block. This can be useful so you + * don't have to drop back to a scalar fallback at the end of your SIMD + * processing loop to deal with the final elements without overflowing the + * allocated buffer. + * + * You must free this memory with SDL_FreeSIMD(), not free() or SDL_free() or + * delete[], etc. + * + * Note that SDL will only deal with SIMD instruction sets it is aware of; for + * example, SDL 2.0.8 knows that SSE wants 16-byte vectors (SDL_HasSSE()), and + * AVX2 wants 32 bytes (SDL_HasAVX2()), but doesn't know that AVX-512 wants + * 64. To be clear: if you can't decide to use an instruction set with an + * SDL_Has*() function, don't use that instruction set with memory allocated + * through here. + * + * SDL_AllocSIMD(0) will return a non-NULL pointer, assuming the system isn't + * out of memory, but you are not allowed to dereference it (because you only + * own zero bytes of that buffer). + * + * \param len The length, in bytes, of the block to allocate. The actual + * allocated block might be larger due to padding, etc. + * \returns a pointer to the newly-allocated block, NULL if out of memory. + * + * \since This function is available since SDL 2.0.10. + * + * \sa SDL_SIMDGetAlignment + * \sa SDL_SIMDRealloc + * \sa SDL_SIMDFree + */ +extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len); + +/** + * Reallocate memory obtained from SDL_SIMDAlloc + * + * It is not valid to use this function on a pointer from anything but + * SDL_SIMDAlloc(). It can't be used on pointers from malloc, realloc, + * SDL_malloc, memalign, new[], etc. + * + * \param mem The pointer obtained from SDL_SIMDAlloc. This function also + * accepts NULL, at which point this function is the same as + * calling SDL_SIMDAlloc with a NULL pointer. + * \param len The length, in bytes, of the block to allocated. The actual + * allocated block might be larger due to padding, etc. Passing 0 + * will return a non-NULL pointer, assuming the system isn't out of + * memory. + * \returns a pointer to the newly-reallocated block, NULL if out of memory. + * + * \since This function is available since SDL 2.0.14. + * + * \sa SDL_SIMDGetAlignment + * \sa SDL_SIMDAlloc + * \sa SDL_SIMDFree + */ +extern DECLSPEC void * SDLCALL SDL_SIMDRealloc(void *mem, const size_t len); + +/** + * Deallocate memory obtained from SDL_SIMDAlloc + * + * It is not valid to use this function on a pointer from anything but + * SDL_SIMDAlloc() or SDL_SIMDRealloc(). It can't be used on pointers from + * malloc, realloc, SDL_malloc, memalign, new[], etc. + * + * However, SDL_SIMDFree(NULL) is a legal no-op. + * + * The memory pointed to by `ptr` is no longer valid for access upon return, + * and may be returned to the system or reused by a future allocation. The + * pointer passed to this function is no longer safe to dereference once this + * function returns, and should be discarded. + * + * \param ptr The pointer, returned from SDL_SIMDAlloc or SDL_SIMDRealloc, to + * deallocate. NULL is a legal no-op. + * + * \since This function is available since SDL 2.0.10. + * + * \sa SDL_SIMDAlloc + * \sa SDL_SIMDRealloc + */ +extern DECLSPEC void SDLCALL SDL_SIMDFree(void *ptr); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_cpuinfo_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..69090063ee09f7ade2428f1c2c37aa34ad99657b GIT binary patch literal 25766 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_endian.h + * + * Functions for reading and writing endian-specific values + */ + +#ifndef SDL_endian_h_ +#define SDL_endian_h_ + +#include "SDL_stdinc.h" + +#if defined(_MSC_VER) && (_MSC_VER >= 1400) +/* As of Clang 11, '_m_prefetchw' is conflicting with the winnt.h's version, + so we define the needed '_m_prefetch' here as a pseudo-header, until the issue is fixed. */ +#ifdef __clang__ +#ifndef __PRFCHWINTRIN_H +#define __PRFCHWINTRIN_H +static __inline__ void __attribute__((__always_inline__, __nodebug__)) +_m_prefetch(void *__P) +{ + __builtin_prefetch(__P, 0, 3 /* _MM_HINT_T0 */); +} +#endif /* __PRFCHWINTRIN_H */ +#endif /* __clang__ */ + +#include +#endif + +/** + * \name The two types of endianness + */ +/* @{ */ +#define SDL_LIL_ENDIAN 1234 +#define SDL_BIG_ENDIAN 4321 +/* @} */ + +#ifndef SDL_BYTEORDER /* Not defined in SDL_config.h? */ +#ifdef __linux__ +#include +#define SDL_BYTEORDER __BYTE_ORDER +#elif defined(__OpenBSD__) || defined(__DragonFly__) +#include +#define SDL_BYTEORDER BYTE_ORDER +#elif defined(__FreeBSD__) || defined(__NetBSD__) +#include +#define SDL_BYTEORDER BYTE_ORDER +/* predefs from newer gcc and clang versions: */ +#elif defined(__ORDER_LITTLE_ENDIAN__) && defined(__ORDER_BIG_ENDIAN__) && defined(__BYTE_ORDER__) +#if (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) +#define SDL_BYTEORDER SDL_LIL_ENDIAN +#elif (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__) +#define SDL_BYTEORDER SDL_BIG_ENDIAN +#else +#error Unsupported endianness +#endif /**/ +#else +#if defined(__hppa__) || \ + defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \ + (defined(__MIPS__) && defined(__MIPSEB__)) || \ + defined(__ppc__) || defined(__POWERPC__) || defined(__powerpc__) || defined(__PPC__) || \ + defined(__sparc__) +#define SDL_BYTEORDER SDL_BIG_ENDIAN +#else +#define SDL_BYTEORDER SDL_LIL_ENDIAN +#endif +#endif /* __linux__ */ +#endif /* !SDL_BYTEORDER */ + +#ifndef SDL_FLOATWORDORDER /* Not defined in SDL_config.h? */ +/* predefs from newer gcc versions: */ +#if defined(__ORDER_LITTLE_ENDIAN__) && defined(__ORDER_BIG_ENDIAN__) && defined(__FLOAT_WORD_ORDER__) +#if (__FLOAT_WORD_ORDER__ == __ORDER_LITTLE_ENDIAN__) +#define SDL_FLOATWORDORDER SDL_LIL_ENDIAN +#elif (__FLOAT_WORD_ORDER__ == __ORDER_BIG_ENDIAN__) +#define SDL_FLOATWORDORDER SDL_BIG_ENDIAN +#else +#error Unsupported endianness +#endif /**/ +#elif defined(__MAVERICK__) +/* For Maverick, float words are always little-endian. */ +#define SDL_FLOATWORDORDER SDL_LIL_ENDIAN +#elif (defined(__arm__) || defined(__thumb__)) && !defined(__VFP_FP__) && !defined(__ARM_EABI__) +/* For FPA, float words are always big-endian. */ +#define SDL_FLOATWORDORDER SDL_BIG_ENDIAN +#else +/* By default, assume that floats words follow the memory system mode. */ +#define SDL_FLOATWORDORDER SDL_BYTEORDER +#endif /* __FLOAT_WORD_ORDER__ */ +#endif /* !SDL_FLOATWORDORDER */ + + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \file SDL_endian.h + */ + +/* various modern compilers may have builtin swap */ +#if defined(__GNUC__) || defined(__clang__) +# define HAS_BUILTIN_BSWAP16 (_SDL_HAS_BUILTIN(__builtin_bswap16)) || \ + (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8)) +# define HAS_BUILTIN_BSWAP32 (_SDL_HAS_BUILTIN(__builtin_bswap32)) || \ + (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) +# define HAS_BUILTIN_BSWAP64 (_SDL_HAS_BUILTIN(__builtin_bswap64)) || \ + (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) + + /* this one is broken */ +# define HAS_BROKEN_BSWAP (__GNUC__ == 2 && __GNUC_MINOR__ <= 95) +#else +# define HAS_BUILTIN_BSWAP16 0 +# define HAS_BUILTIN_BSWAP32 0 +# define HAS_BUILTIN_BSWAP64 0 +# define HAS_BROKEN_BSWAP 0 +#endif + +#if HAS_BUILTIN_BSWAP16 +#define SDL_Swap16(x) __builtin_bswap16(x) +#elif (defined(_MSC_VER) && (_MSC_VER >= 1400)) && !defined(__ICL) +#pragma intrinsic(_byteswap_ushort) +#define SDL_Swap16(x) _byteswap_ushort(x) +#elif defined(__i386__) && !HAS_BROKEN_BSWAP +SDL_FORCE_INLINE Uint16 +SDL_Swap16(Uint16 x) +{ + __asm__("xchgb %b0,%h0": "=q"(x):"0"(x)); + return x; +} +#elif defined(__x86_64__) +SDL_FORCE_INLINE Uint16 +SDL_Swap16(Uint16 x) +{ + __asm__("xchgb %b0,%h0": "=Q"(x):"0"(x)); + return x; +} +#elif (defined(__powerpc__) || defined(__ppc__)) +SDL_FORCE_INLINE Uint16 +SDL_Swap16(Uint16 x) +{ + int result; + + __asm__("rlwimi %0,%2,8,16,23": "=&r"(result):"0"(x >> 8), "r"(x)); + return (Uint16)result; +} +#elif (defined(__m68k__) && !defined(__mcoldfire__)) +SDL_FORCE_INLINE Uint16 +SDL_Swap16(Uint16 x) +{ + __asm__("rorw #8,%0": "=d"(x): "0"(x):"cc"); + return x; +} +#elif defined(__WATCOMC__) && defined(__386__) +extern __inline Uint16 SDL_Swap16(Uint16); +#pragma aux SDL_Swap16 = \ + "xchg al, ah" \ + parm [ax] \ + modify [ax]; +#else +SDL_FORCE_INLINE Uint16 +SDL_Swap16(Uint16 x) +{ + return SDL_static_cast(Uint16, ((x << 8) | (x >> 8))); +} +#endif + +#if HAS_BUILTIN_BSWAP32 +#define SDL_Swap32(x) __builtin_bswap32(x) +#elif (defined(_MSC_VER) && (_MSC_VER >= 1400)) && !defined(__ICL) +#pragma intrinsic(_byteswap_ulong) +#define SDL_Swap32(x) _byteswap_ulong(x) +#elif defined(__i386__) && !HAS_BROKEN_BSWAP +SDL_FORCE_INLINE Uint32 +SDL_Swap32(Uint32 x) +{ + __asm__("bswap %0": "=r"(x):"0"(x)); + return x; +} +#elif defined(__x86_64__) +SDL_FORCE_INLINE Uint32 +SDL_Swap32(Uint32 x) +{ + __asm__("bswapl %0": "=r"(x):"0"(x)); + return x; +} +#elif (defined(__powerpc__) || defined(__ppc__)) +SDL_FORCE_INLINE Uint32 +SDL_Swap32(Uint32 x) +{ + Uint32 result; + + __asm__("rlwimi %0,%2,24,16,23": "=&r"(result): "0" (x>>24), "r"(x)); + __asm__("rlwimi %0,%2,8,8,15" : "=&r"(result): "0" (result), "r"(x)); + __asm__("rlwimi %0,%2,24,0,7" : "=&r"(result): "0" (result), "r"(x)); + return result; +} +#elif (defined(__m68k__) && !defined(__mcoldfire__)) +SDL_FORCE_INLINE Uint32 +SDL_Swap32(Uint32 x) +{ + __asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0": "=d"(x): "0"(x):"cc"); + return x; +} +#elif defined(__WATCOMC__) && defined(__386__) +extern __inline Uint32 SDL_Swap32(Uint32); +#pragma aux SDL_Swap32 = \ + "bswap eax" \ + parm [eax] \ + modify [eax]; +#else +SDL_FORCE_INLINE Uint32 +SDL_Swap32(Uint32 x) +{ + return SDL_static_cast(Uint32, ((x << 24) | ((x << 8) & 0x00FF0000) | + ((x >> 8) & 0x0000FF00) | (x >> 24))); +} +#endif + +#if HAS_BUILTIN_BSWAP64 +#define SDL_Swap64(x) __builtin_bswap64(x) +#elif (defined(_MSC_VER) && (_MSC_VER >= 1400)) && !defined(__ICL) +#pragma intrinsic(_byteswap_uint64) +#define SDL_Swap64(x) _byteswap_uint64(x) +#elif defined(__i386__) && !HAS_BROKEN_BSWAP +SDL_FORCE_INLINE Uint64 +SDL_Swap64(Uint64 x) +{ + union { + struct { + Uint32 a, b; + } s; + Uint64 u; + } v; + v.u = x; + __asm__("bswapl %0 ; bswapl %1 ; xchgl %0,%1" + : "=r"(v.s.a), "=r"(v.s.b) + : "0" (v.s.a), "1"(v.s.b)); + return v.u; +} +#elif defined(__x86_64__) +SDL_FORCE_INLINE Uint64 +SDL_Swap64(Uint64 x) +{ + __asm__("bswapq %0": "=r"(x):"0"(x)); + return x; +} +#elif defined(__WATCOMC__) && defined(__386__) +extern __inline Uint64 SDL_Swap64(Uint64); +#pragma aux SDL_Swap64 = \ + "bswap eax" \ + "bswap edx" \ + "xchg eax,edx" \ + parm [eax edx] \ + modify [eax edx]; +#else +SDL_FORCE_INLINE Uint64 +SDL_Swap64(Uint64 x) +{ + Uint32 hi, lo; + + /* Separate into high and low 32-bit values and swap them */ + lo = SDL_static_cast(Uint32, x & 0xFFFFFFFF); + x >>= 32; + hi = SDL_static_cast(Uint32, x & 0xFFFFFFFF); + x = SDL_Swap32(lo); + x <<= 32; + x |= SDL_Swap32(hi); + return (x); +} +#endif + + +SDL_FORCE_INLINE float +SDL_SwapFloat(float x) +{ + union { + float f; + Uint32 ui32; + } swapper; + swapper.f = x; + swapper.ui32 = SDL_Swap32(swapper.ui32); + return swapper.f; +} + +/* remove extra macros */ +#undef HAS_BROKEN_BSWAP +#undef HAS_BUILTIN_BSWAP16 +#undef HAS_BUILTIN_BSWAP32 +#undef HAS_BUILTIN_BSWAP64 + +/** + * \name Swap to native + * Byteswap item from the specified endianness to the native endianness. + */ +/* @{ */ +#if SDL_BYTEORDER == SDL_LIL_ENDIAN +#define SDL_SwapLE16(X) (X) +#define SDL_SwapLE32(X) (X) +#define SDL_SwapLE64(X) (X) +#define SDL_SwapFloatLE(X) (X) +#define SDL_SwapBE16(X) SDL_Swap16(X) +#define SDL_SwapBE32(X) SDL_Swap32(X) +#define SDL_SwapBE64(X) SDL_Swap64(X) +#define SDL_SwapFloatBE(X) SDL_SwapFloat(X) +#else +#define SDL_SwapLE16(X) SDL_Swap16(X) +#define SDL_SwapLE32(X) SDL_Swap32(X) +#define SDL_SwapLE64(X) SDL_Swap64(X) +#define SDL_SwapFloatLE(X) SDL_SwapFloat(X) +#define SDL_SwapBE16(X) (X) +#define SDL_SwapBE32(X) (X) +#define SDL_SwapBE64(X) (X) +#define SDL_SwapFloatBE(X) (X) +#endif +/* @} *//* Swap to native */ + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_endian_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..145d0d540f12f5fd6df0e196d8aa2d23c15975e3 GIT binary patch literal 15422 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h new file mode 100644 index 00000000..31c22616 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h @@ -0,0 +1,163 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_error.h + * + * Simple error message routines for SDL. + */ + +#ifndef SDL_error_h_ +#define SDL_error_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/* Public functions */ + + +/** + * Set the SDL error message for the current thread. + * + * Calling this function will replace any previous error message that was set. + * + * This function always returns -1, since SDL frequently uses -1 to signify an + * failing result, leading to this idiom: + * + * ```c + * if (error_code) { + * return SDL_SetError("This operation has failed: %d", error_code); + * } + * ``` + * + * \param fmt a printf()-style message format string + * \param ... additional parameters matching % tokens in the `fmt` string, if + * any + * \returns always -1. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ClearError + * \sa SDL_GetError + */ +extern DECLSPEC int SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); + +/** + * Retrieve a message about the last error that occurred on the current + * thread. + * + * It is possible for multiple errors to occur before calling SDL_GetError(). + * Only the last error is returned. + * + * The message is only applicable when an SDL function has signaled an error. + * You must check the return values of SDL function calls to determine when to + * appropriately call SDL_GetError(). You should *not* use the results of + * SDL_GetError() to decide if an error has occurred! Sometimes SDL will set + * an error string even when reporting success. + * + * SDL will *not* clear the error string for successful API calls. You *must* + * check return values for failure cases before you can assume the error + * string applies. + * + * Error strings are set per-thread, so an error set in a different thread + * will not interfere with the current thread's operation. + * + * The returned string is internally allocated and must not be freed by the + * application. + * + * \returns a message with information about the specific error that occurred, + * or an empty string if there hasn't been an error message set since + * the last call to SDL_ClearError(). The message is only applicable + * when an SDL function has signaled an error. You must check the + * return values of SDL function calls to determine when to + * appropriately call SDL_GetError(). + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ClearError + * \sa SDL_SetError + */ +extern DECLSPEC const char *SDLCALL SDL_GetError(void); + +/** + * Get the last error message that was set for the current thread. + * + * This allows the caller to copy the error string into a provided buffer, but + * otherwise operates exactly the same as SDL_GetError(). + * + * \param errstr A buffer to fill with the last error message that was set for + * the current thread + * \param maxlen The size of the buffer pointed to by the errstr parameter + * \returns the pointer passed in as the `errstr` parameter. + * + * \since This function is available since SDL 2.0.14. + * + * \sa SDL_GetError + */ +extern DECLSPEC char * SDLCALL SDL_GetErrorMsg(char *errstr, int maxlen); + +/** + * Clear any previous error message for this thread. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetError + * \sa SDL_SetError + */ +extern DECLSPEC void SDLCALL SDL_ClearError(void); + +/** + * \name Internal error functions + * + * \internal + * Private error reporting function - used internally. + */ +/* @{ */ +#define SDL_OutOfMemory() SDL_Error(SDL_ENOMEM) +#define SDL_Unsupported() SDL_Error(SDL_UNSUPPORTED) +#define SDL_InvalidParamError(param) SDL_SetError("Parameter '%s' is invalid", (param)) +typedef enum +{ + SDL_ENOMEM, + SDL_EFREAD, + SDL_EFWRITE, + SDL_EFSEEK, + SDL_UNSUPPORTED, + SDL_LASTERROR +} SDL_errorcode; +/* SDL_Error() unconditionally returns -1. */ +extern DECLSPEC int SDLCALL SDL_Error(SDL_errorcode code); +/* @} *//* Internal error functions */ + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_error_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3aceebb97d44ffa5344275173d9334139ebcc26e GIT binary patch literal 16647 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 cNf| + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_events.h + * + * Include file for SDL event handling. + */ + +#ifndef SDL_events_h_ +#define SDL_events_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_video.h" +#include "SDL_keyboard.h" +#include "SDL_mouse.h" +#include "SDL_joystick.h" +#include "SDL_gamecontroller.h" +#include "SDL_quit.h" +#include "SDL_gesture.h" +#include "SDL_touch.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/* General keyboard/mouse state definitions */ +#define SDL_RELEASED 0 +#define SDL_PRESSED 1 + +/** + * The types of events that can be delivered. + */ +typedef enum +{ + SDL_FIRSTEVENT = 0, /**< Unused (do not remove) */ + + /* Application events */ + SDL_QUIT = 0x100, /**< User-requested quit */ + + /* These application events have special meaning on iOS, see README-ios.md for details */ + SDL_APP_TERMINATING, /**< The application is being terminated by the OS + Called on iOS in applicationWillTerminate() + Called on Android in onDestroy() + */ + SDL_APP_LOWMEMORY, /**< The application is low on memory, free memory if possible. + Called on iOS in applicationDidReceiveMemoryWarning() + Called on Android in onLowMemory() + */ + SDL_APP_WILLENTERBACKGROUND, /**< The application is about to enter the background + Called on iOS in applicationWillResignActive() + Called on Android in onPause() + */ + SDL_APP_DIDENTERBACKGROUND, /**< The application did enter the background and may not get CPU for some time + Called on iOS in applicationDidEnterBackground() + Called on Android in onPause() + */ + SDL_APP_WILLENTERFOREGROUND, /**< The application is about to enter the foreground + Called on iOS in applicationWillEnterForeground() + Called on Android in onResume() + */ + SDL_APP_DIDENTERFOREGROUND, /**< The application is now interactive + Called on iOS in applicationDidBecomeActive() + Called on Android in onResume() + */ + + SDL_LOCALECHANGED, /**< The user's locale preferences have changed. */ + + /* Display events */ + SDL_DISPLAYEVENT = 0x150, /**< Display state change */ + + /* Window events */ + SDL_WINDOWEVENT = 0x200, /**< Window state change */ + SDL_SYSWMEVENT, /**< System specific event */ + + /* Keyboard events */ + SDL_KEYDOWN = 0x300, /**< Key pressed */ + SDL_KEYUP, /**< Key released */ + SDL_TEXTEDITING, /**< Keyboard text editing (composition) */ + SDL_TEXTINPUT, /**< Keyboard text input */ + SDL_KEYMAPCHANGED, /**< Keymap changed due to a system event such as an + input language or keyboard layout change. + */ + SDL_TEXTEDITING_EXT, /**< Extended keyboard text editing (composition) */ + + /* Mouse events */ + SDL_MOUSEMOTION = 0x400, /**< Mouse moved */ + SDL_MOUSEBUTTONDOWN, /**< Mouse button pressed */ + SDL_MOUSEBUTTONUP, /**< Mouse button released */ + SDL_MOUSEWHEEL, /**< Mouse wheel motion */ + + /* Joystick events */ + SDL_JOYAXISMOTION = 0x600, /**< Joystick axis motion */ + SDL_JOYBALLMOTION, /**< Joystick trackball motion */ + SDL_JOYHATMOTION, /**< Joystick hat position change */ + SDL_JOYBUTTONDOWN, /**< Joystick button pressed */ + SDL_JOYBUTTONUP, /**< Joystick button released */ + SDL_JOYDEVICEADDED, /**< A new joystick has been inserted into the system */ + SDL_JOYDEVICEREMOVED, /**< An opened joystick has been removed */ + SDL_JOYBATTERYUPDATED, /**< Joystick battery level change */ + + /* Game controller events */ + SDL_CONTROLLERAXISMOTION = 0x650, /**< Game controller axis motion */ + SDL_CONTROLLERBUTTONDOWN, /**< Game controller button pressed */ + SDL_CONTROLLERBUTTONUP, /**< Game controller button released */ + SDL_CONTROLLERDEVICEADDED, /**< A new Game controller has been inserted into the system */ + SDL_CONTROLLERDEVICEREMOVED, /**< An opened Game controller has been removed */ + SDL_CONTROLLERDEVICEREMAPPED, /**< The controller mapping was updated */ + SDL_CONTROLLERTOUCHPADDOWN, /**< Game controller touchpad was touched */ + SDL_CONTROLLERTOUCHPADMOTION, /**< Game controller touchpad finger was moved */ + SDL_CONTROLLERTOUCHPADUP, /**< Game controller touchpad finger was lifted */ + SDL_CONTROLLERSENSORUPDATE, /**< Game controller sensor was updated */ + + /* Touch events */ + SDL_FINGERDOWN = 0x700, + SDL_FINGERUP, + SDL_FINGERMOTION, + + /* Gesture events */ + SDL_DOLLARGESTURE = 0x800, + SDL_DOLLARRECORD, + SDL_MULTIGESTURE, + + /* Clipboard events */ + SDL_CLIPBOARDUPDATE = 0x900, /**< The clipboard or primary selection changed */ + + /* Drag and drop events */ + SDL_DROPFILE = 0x1000, /**< The system requests a file open */ + SDL_DROPTEXT, /**< text/plain drag-and-drop event */ + SDL_DROPBEGIN, /**< A new set of drops is beginning (NULL filename) */ + SDL_DROPCOMPLETE, /**< Current set of drops is now complete (NULL filename) */ + + /* Audio hotplug events */ + SDL_AUDIODEVICEADDED = 0x1100, /**< A new audio device is available */ + SDL_AUDIODEVICEREMOVED, /**< An audio device has been removed. */ + + /* Sensor events */ + SDL_SENSORUPDATE = 0x1200, /**< A sensor was updated */ + + /* Render events */ + SDL_RENDER_TARGETS_RESET = 0x2000, /**< The render targets have been reset and their contents need to be updated */ + SDL_RENDER_DEVICE_RESET, /**< The device has been reset and all textures need to be recreated */ + + /* Internal events */ + SDL_POLLSENTINEL = 0x7F00, /**< Signals the end of an event poll cycle */ + + /** Events ::SDL_USEREVENT through ::SDL_LASTEVENT are for your use, + * and should be allocated with SDL_RegisterEvents() + */ + SDL_USEREVENT = 0x8000, + + /** + * This last event is only for bounding internal arrays + */ + SDL_LASTEVENT = 0xFFFF +} SDL_EventType; + +/** + * \brief Fields shared by every event + */ +typedef struct SDL_CommonEvent +{ + Uint32 type; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ +} SDL_CommonEvent; + +/** + * \brief Display state change event data (event.display.*) + */ +typedef struct SDL_DisplayEvent +{ + Uint32 type; /**< ::SDL_DISPLAYEVENT */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 display; /**< The associated display index */ + Uint8 event; /**< ::SDL_DisplayEventID */ + Uint8 padding1; + Uint8 padding2; + Uint8 padding3; + Sint32 data1; /**< event dependent data */ +} SDL_DisplayEvent; + +/** + * \brief Window state change event data (event.window.*) + */ +typedef struct SDL_WindowEvent +{ + Uint32 type; /**< ::SDL_WINDOWEVENT */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The associated window */ + Uint8 event; /**< ::SDL_WindowEventID */ + Uint8 padding1; + Uint8 padding2; + Uint8 padding3; + Sint32 data1; /**< event dependent data */ + Sint32 data2; /**< event dependent data */ +} SDL_WindowEvent; + +/** + * \brief Keyboard button event structure (event.key.*) + */ +typedef struct SDL_KeyboardEvent +{ + Uint32 type; /**< ::SDL_KEYDOWN or ::SDL_KEYUP */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The window with keyboard focus, if any */ + Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ + Uint8 repeat; /**< Non-zero if this is a key repeat */ + Uint8 padding2; + Uint8 padding3; + SDL_Keysym keysym; /**< The key that was pressed or released */ +} SDL_KeyboardEvent; + +#define SDL_TEXTEDITINGEVENT_TEXT_SIZE (32) +/** + * \brief Keyboard text editing event structure (event.edit.*) + */ +typedef struct SDL_TextEditingEvent +{ + Uint32 type; /**< ::SDL_TEXTEDITING */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The window with keyboard focus, if any */ + char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE]; /**< The editing text */ + Sint32 start; /**< The start cursor of selected editing text */ + Sint32 length; /**< The length of selected editing text */ +} SDL_TextEditingEvent; + +/** + * \brief Extended keyboard text editing event structure (event.editExt.*) when text would be + * truncated if stored in the text buffer SDL_TextEditingEvent + */ +typedef struct SDL_TextEditingExtEvent +{ + Uint32 type; /**< ::SDL_TEXTEDITING_EXT */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The window with keyboard focus, if any */ + char* text; /**< The editing text, which should be freed with SDL_free(), and will not be NULL */ + Sint32 start; /**< The start cursor of selected editing text */ + Sint32 length; /**< The length of selected editing text */ +} SDL_TextEditingExtEvent; + +#define SDL_TEXTINPUTEVENT_TEXT_SIZE (32) +/** + * \brief Keyboard text input event structure (event.text.*) + */ +typedef struct SDL_TextInputEvent +{ + Uint32 type; /**< ::SDL_TEXTINPUT */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The window with keyboard focus, if any */ + char text[SDL_TEXTINPUTEVENT_TEXT_SIZE]; /**< The input text */ +} SDL_TextInputEvent; + +/** + * \brief Mouse motion event structure (event.motion.*) + */ +typedef struct SDL_MouseMotionEvent +{ + Uint32 type; /**< ::SDL_MOUSEMOTION */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The window with mouse focus, if any */ + Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ + Uint32 state; /**< The current button state */ + Sint32 x; /**< X coordinate, relative to window */ + Sint32 y; /**< Y coordinate, relative to window */ + Sint32 xrel; /**< The relative motion in the X direction */ + Sint32 yrel; /**< The relative motion in the Y direction */ +} SDL_MouseMotionEvent; + +/** + * \brief Mouse button event structure (event.button.*) + */ +typedef struct SDL_MouseButtonEvent +{ + Uint32 type; /**< ::SDL_MOUSEBUTTONDOWN or ::SDL_MOUSEBUTTONUP */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The window with mouse focus, if any */ + Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ + Uint8 button; /**< The mouse button index */ + Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ + Uint8 clicks; /**< 1 for single-click, 2 for double-click, etc. */ + Uint8 padding1; + Sint32 x; /**< X coordinate, relative to window */ + Sint32 y; /**< Y coordinate, relative to window */ +} SDL_MouseButtonEvent; + +/** + * \brief Mouse wheel event structure (event.wheel.*) + */ +typedef struct SDL_MouseWheelEvent +{ + Uint32 type; /**< ::SDL_MOUSEWHEEL */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The window with mouse focus, if any */ + Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ + Sint32 x; /**< The amount scrolled horizontally, positive to the right and negative to the left */ + Sint32 y; /**< The amount scrolled vertically, positive away from the user and negative toward the user */ + Uint32 direction; /**< Set to one of the SDL_MOUSEWHEEL_* defines. When FLIPPED the values in X and Y will be opposite. Multiply by -1 to change them back */ + float preciseX; /**< The amount scrolled horizontally, positive to the right and negative to the left, with float precision (added in 2.0.18) */ + float preciseY; /**< The amount scrolled vertically, positive away from the user and negative toward the user, with float precision (added in 2.0.18) */ + Sint32 mouseX; /**< X coordinate, relative to window (added in 2.26.0) */ + Sint32 mouseY; /**< Y coordinate, relative to window (added in 2.26.0) */ +} SDL_MouseWheelEvent; + +/** + * \brief Joystick axis motion event structure (event.jaxis.*) + */ +typedef struct SDL_JoyAxisEvent +{ + Uint32 type; /**< ::SDL_JOYAXISMOTION */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Uint8 axis; /**< The joystick axis index */ + Uint8 padding1; + Uint8 padding2; + Uint8 padding3; + Sint16 value; /**< The axis value (range: -32768 to 32767) */ + Uint16 padding4; +} SDL_JoyAxisEvent; + +/** + * \brief Joystick trackball motion event structure (event.jball.*) + */ +typedef struct SDL_JoyBallEvent +{ + Uint32 type; /**< ::SDL_JOYBALLMOTION */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Uint8 ball; /**< The joystick trackball index */ + Uint8 padding1; + Uint8 padding2; + Uint8 padding3; + Sint16 xrel; /**< The relative motion in the X direction */ + Sint16 yrel; /**< The relative motion in the Y direction */ +} SDL_JoyBallEvent; + +/** + * \brief Joystick hat position change event structure (event.jhat.*) + */ +typedef struct SDL_JoyHatEvent +{ + Uint32 type; /**< ::SDL_JOYHATMOTION */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Uint8 hat; /**< The joystick hat index */ + Uint8 value; /**< The hat position value. + * \sa ::SDL_HAT_LEFTUP ::SDL_HAT_UP ::SDL_HAT_RIGHTUP + * \sa ::SDL_HAT_LEFT ::SDL_HAT_CENTERED ::SDL_HAT_RIGHT + * \sa ::SDL_HAT_LEFTDOWN ::SDL_HAT_DOWN ::SDL_HAT_RIGHTDOWN + * + * Note that zero means the POV is centered. + */ + Uint8 padding1; + Uint8 padding2; +} SDL_JoyHatEvent; + +/** + * \brief Joystick button event structure (event.jbutton.*) + */ +typedef struct SDL_JoyButtonEvent +{ + Uint32 type; /**< ::SDL_JOYBUTTONDOWN or ::SDL_JOYBUTTONUP */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Uint8 button; /**< The joystick button index */ + Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ + Uint8 padding1; + Uint8 padding2; +} SDL_JoyButtonEvent; + +/** + * \brief Joystick device event structure (event.jdevice.*) + */ +typedef struct SDL_JoyDeviceEvent +{ + Uint32 type; /**< ::SDL_JOYDEVICEADDED or ::SDL_JOYDEVICEREMOVED */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED event */ +} SDL_JoyDeviceEvent; + +/** + * \brief Joysick battery level change event structure (event.jbattery.*) + */ +typedef struct SDL_JoyBatteryEvent +{ + Uint32 type; /**< ::SDL_JOYBATTERYUPDATED */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + SDL_JoystickPowerLevel level; /**< The joystick battery level */ +} SDL_JoyBatteryEvent; + +/** + * \brief Game controller axis motion event structure (event.caxis.*) + */ +typedef struct SDL_ControllerAxisEvent +{ + Uint32 type; /**< ::SDL_CONTROLLERAXISMOTION */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Uint8 axis; /**< The controller axis (SDL_GameControllerAxis) */ + Uint8 padding1; + Uint8 padding2; + Uint8 padding3; + Sint16 value; /**< The axis value (range: -32768 to 32767) */ + Uint16 padding4; +} SDL_ControllerAxisEvent; + + +/** + * \brief Game controller button event structure (event.cbutton.*) + */ +typedef struct SDL_ControllerButtonEvent +{ + Uint32 type; /**< ::SDL_CONTROLLERBUTTONDOWN or ::SDL_CONTROLLERBUTTONUP */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Uint8 button; /**< The controller button (SDL_GameControllerButton) */ + Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ + Uint8 padding1; + Uint8 padding2; +} SDL_ControllerButtonEvent; + + +/** + * \brief Controller device event structure (event.cdevice.*) + */ +typedef struct SDL_ControllerDeviceEvent +{ + Uint32 type; /**< ::SDL_CONTROLLERDEVICEADDED, ::SDL_CONTROLLERDEVICEREMOVED, or ::SDL_CONTROLLERDEVICEREMAPPED */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED or REMAPPED event */ +} SDL_ControllerDeviceEvent; + +/** + * \brief Game controller touchpad event structure (event.ctouchpad.*) + */ +typedef struct SDL_ControllerTouchpadEvent +{ + Uint32 type; /**< ::SDL_CONTROLLERTOUCHPADDOWN or ::SDL_CONTROLLERTOUCHPADMOTION or ::SDL_CONTROLLERTOUCHPADUP */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Sint32 touchpad; /**< The index of the touchpad */ + Sint32 finger; /**< The index of the finger on the touchpad */ + float x; /**< Normalized in the range 0...1 with 0 being on the left */ + float y; /**< Normalized in the range 0...1 with 0 being at the top */ + float pressure; /**< Normalized in the range 0...1 */ +} SDL_ControllerTouchpadEvent; + +/** + * \brief Game controller sensor event structure (event.csensor.*) + */ +typedef struct SDL_ControllerSensorEvent +{ + Uint32 type; /**< ::SDL_CONTROLLERSENSORUPDATE */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Sint32 sensor; /**< The type of the sensor, one of the values of ::SDL_SensorType */ + float data[3]; /**< Up to 3 values from the sensor, as defined in SDL_sensor.h */ + Uint64 timestamp_us; /**< The timestamp of the sensor reading in microseconds, if the hardware provides this information. */ +} SDL_ControllerSensorEvent; + +/** + * \brief Audio device event structure (event.adevice.*) + */ +typedef struct SDL_AudioDeviceEvent +{ + Uint32 type; /**< ::SDL_AUDIODEVICEADDED, or ::SDL_AUDIODEVICEREMOVED */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 which; /**< The audio device index for the ADDED event (valid until next SDL_GetNumAudioDevices() call), SDL_AudioDeviceID for the REMOVED event */ + Uint8 iscapture; /**< zero if an output device, non-zero if a capture device. */ + Uint8 padding1; + Uint8 padding2; + Uint8 padding3; +} SDL_AudioDeviceEvent; + + +/** + * \brief Touch finger event structure (event.tfinger.*) + */ +typedef struct SDL_TouchFingerEvent +{ + Uint32 type; /**< ::SDL_FINGERMOTION or ::SDL_FINGERDOWN or ::SDL_FINGERUP */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_TouchID touchId; /**< The touch device id */ + SDL_FingerID fingerId; + float x; /**< Normalized in the range 0...1 */ + float y; /**< Normalized in the range 0...1 */ + float dx; /**< Normalized in the range -1...1 */ + float dy; /**< Normalized in the range -1...1 */ + float pressure; /**< Normalized in the range 0...1 */ + Uint32 windowID; /**< The window underneath the finger, if any */ +} SDL_TouchFingerEvent; + + +/** + * \brief Multiple Finger Gesture Event (event.mgesture.*) + */ +typedef struct SDL_MultiGestureEvent +{ + Uint32 type; /**< ::SDL_MULTIGESTURE */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_TouchID touchId; /**< The touch device id */ + float dTheta; + float dDist; + float x; + float y; + Uint16 numFingers; + Uint16 padding; +} SDL_MultiGestureEvent; + + +/** + * \brief Dollar Gesture Event (event.dgesture.*) + */ +typedef struct SDL_DollarGestureEvent +{ + Uint32 type; /**< ::SDL_DOLLARGESTURE or ::SDL_DOLLARRECORD */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_TouchID touchId; /**< The touch device id */ + SDL_GestureID gestureId; + Uint32 numFingers; + float error; + float x; /**< Normalized center of gesture */ + float y; /**< Normalized center of gesture */ +} SDL_DollarGestureEvent; + + +/** + * \brief An event used to request a file open by the system (event.drop.*) + * This event is enabled by default, you can disable it with SDL_EventState(). + * \note If this event is enabled, you must free the filename in the event. + */ +typedef struct SDL_DropEvent +{ + Uint32 type; /**< ::SDL_DROPBEGIN or ::SDL_DROPFILE or ::SDL_DROPTEXT or ::SDL_DROPCOMPLETE */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + char *file; /**< The file name, which should be freed with SDL_free(), is NULL on begin/complete */ + Uint32 windowID; /**< The window that was dropped on, if any */ +} SDL_DropEvent; + + +/** + * \brief Sensor event structure (event.sensor.*) + */ +typedef struct SDL_SensorEvent +{ + Uint32 type; /**< ::SDL_SENSORUPDATE */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Sint32 which; /**< The instance ID of the sensor */ + float data[6]; /**< Up to 6 values from the sensor - additional values can be queried using SDL_SensorGetData() */ + Uint64 timestamp_us; /**< The timestamp of the sensor reading in microseconds, if the hardware provides this information. */ +} SDL_SensorEvent; + +/** + * \brief The "quit requested" event + */ +typedef struct SDL_QuitEvent +{ + Uint32 type; /**< ::SDL_QUIT */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ +} SDL_QuitEvent; + +/** + * \brief OS Specific event + */ +typedef struct SDL_OSEvent +{ + Uint32 type; /**< ::SDL_QUIT */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ +} SDL_OSEvent; + +/** + * \brief A user-defined event type (event.user.*) + */ +typedef struct SDL_UserEvent +{ + Uint32 type; /**< ::SDL_USEREVENT through ::SDL_LASTEVENT-1 */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + Uint32 windowID; /**< The associated window if any */ + Sint32 code; /**< User defined event code */ + void *data1; /**< User defined data pointer */ + void *data2; /**< User defined data pointer */ +} SDL_UserEvent; + + +struct SDL_SysWMmsg; +typedef struct SDL_SysWMmsg SDL_SysWMmsg; + +/** + * \brief A video driver dependent system event (event.syswm.*) + * This event is disabled by default, you can enable it with SDL_EventState() + * + * \note If you want to use this event, you should include SDL_syswm.h. + */ +typedef struct SDL_SysWMEvent +{ + Uint32 type; /**< ::SDL_SYSWMEVENT */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_SysWMmsg *msg; /**< driver dependent data, defined in SDL_syswm.h */ +} SDL_SysWMEvent; + +/** + * \brief General event structure + */ +typedef union SDL_Event +{ + Uint32 type; /**< Event type, shared with all events */ + SDL_CommonEvent common; /**< Common event data */ + SDL_DisplayEvent display; /**< Display event data */ + SDL_WindowEvent window; /**< Window event data */ + SDL_KeyboardEvent key; /**< Keyboard event data */ + SDL_TextEditingEvent edit; /**< Text editing event data */ + SDL_TextEditingExtEvent editExt; /**< Extended text editing event data */ + SDL_TextInputEvent text; /**< Text input event data */ + SDL_MouseMotionEvent motion; /**< Mouse motion event data */ + SDL_MouseButtonEvent button; /**< Mouse button event data */ + SDL_MouseWheelEvent wheel; /**< Mouse wheel event data */ + SDL_JoyAxisEvent jaxis; /**< Joystick axis event data */ + SDL_JoyBallEvent jball; /**< Joystick ball event data */ + SDL_JoyHatEvent jhat; /**< Joystick hat event data */ + SDL_JoyButtonEvent jbutton; /**< Joystick button event data */ + SDL_JoyDeviceEvent jdevice; /**< Joystick device change event data */ + SDL_JoyBatteryEvent jbattery; /**< Joystick battery event data */ + SDL_ControllerAxisEvent caxis; /**< Game Controller axis event data */ + SDL_ControllerButtonEvent cbutton; /**< Game Controller button event data */ + SDL_ControllerDeviceEvent cdevice; /**< Game Controller device event data */ + SDL_ControllerTouchpadEvent ctouchpad; /**< Game Controller touchpad event data */ + SDL_ControllerSensorEvent csensor; /**< Game Controller sensor event data */ + SDL_AudioDeviceEvent adevice; /**< Audio device event data */ + SDL_SensorEvent sensor; /**< Sensor event data */ + SDL_QuitEvent quit; /**< Quit request event data */ + SDL_UserEvent user; /**< Custom event data */ + SDL_SysWMEvent syswm; /**< System dependent window event data */ + SDL_TouchFingerEvent tfinger; /**< Touch finger event data */ + SDL_MultiGestureEvent mgesture; /**< Gesture event data */ + SDL_DollarGestureEvent dgesture; /**< Gesture event data */ + SDL_DropEvent drop; /**< Drag and drop event data */ + + /* This is necessary for ABI compatibility between Visual C++ and GCC. + Visual C++ will respect the push pack pragma and use 52 bytes (size of + SDL_TextEditingEvent, the largest structure for 32-bit and 64-bit + architectures) for this union, and GCC will use the alignment of the + largest datatype within the union, which is 8 bytes on 64-bit + architectures. + + So... we'll add padding to force the size to be 56 bytes for both. + + On architectures where pointers are 16 bytes, this needs rounding up to + the next multiple of 16, 64, and on architectures where pointers are + even larger the size of SDL_UserEvent will dominate as being 3 pointers. + */ + Uint8 padding[sizeof(void *) <= 8 ? 56 : sizeof(void *) == 16 ? 64 : 3 * sizeof(void *)]; +} SDL_Event; + +/* Make sure we haven't broken binary compatibility */ +SDL_COMPILE_TIME_ASSERT(SDL_Event, sizeof(SDL_Event) == sizeof(((SDL_Event *)NULL)->padding)); + + +/* Function prototypes */ + +/** + * Pump the event loop, gathering events from the input devices. + * + * This function updates the event queue and internal input device state. + * + * **WARNING**: This should only be run in the thread that initialized the + * video subsystem, and for extra safety, you should consider only doing those + * things on the main thread in any case. + * + * SDL_PumpEvents() gathers all the pending input information from devices and + * places it in the event queue. Without calls to SDL_PumpEvents() no events + * would ever be placed on the queue. Often the need for calls to + * SDL_PumpEvents() is hidden from the user since SDL_PollEvent() and + * SDL_WaitEvent() implicitly call SDL_PumpEvents(). However, if you are not + * polling or waiting for events (e.g. you are filtering them), then you must + * call SDL_PumpEvents() to force an event queue update. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PollEvent + * \sa SDL_WaitEvent + */ +extern DECLSPEC void SDLCALL SDL_PumpEvents(void); + +/* @{ */ +typedef enum +{ + SDL_ADDEVENT, + SDL_PEEKEVENT, + SDL_GETEVENT +} SDL_eventaction; + +/** + * Check the event queue for messages and optionally return them. + * + * `action` may be any of the following: + * + * - `SDL_ADDEVENT`: up to `numevents` events will be added to the back of the + * event queue. + * - `SDL_PEEKEVENT`: `numevents` events at the front of the event queue, + * within the specified minimum and maximum type, will be returned to the + * caller and will _not_ be removed from the queue. + * - `SDL_GETEVENT`: up to `numevents` events at the front of the event queue, + * within the specified minimum and maximum type, will be returned to the + * caller and will be removed from the queue. + * + * You may have to call SDL_PumpEvents() before calling this function. + * Otherwise, the events may not be ready to be filtered when you call + * SDL_PeepEvents(). + * + * This function is thread-safe. + * + * \param events destination buffer for the retrieved events + * \param numevents if action is SDL_ADDEVENT, the number of events to add + * back to the event queue; if action is SDL_PEEKEVENT or + * SDL_GETEVENT, the maximum number of events to retrieve + * \param action action to take; see [[#action|Remarks]] for details + * \param minType minimum value of the event type to be considered; + * SDL_FIRSTEVENT is a safe choice + * \param maxType maximum value of the event type to be considered; + * SDL_LASTEVENT is a safe choice + * \returns the number of events actually stored or a negative error code on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PollEvent + * \sa SDL_PumpEvents + * \sa SDL_PushEvent + */ +extern DECLSPEC int SDLCALL SDL_PeepEvents(SDL_Event * events, int numevents, + SDL_eventaction action, + Uint32 minType, Uint32 maxType); +/* @} */ + +/** + * Check for the existence of a certain event type in the event queue. + * + * If you need to check for a range of event types, use SDL_HasEvents() + * instead. + * + * \param type the type of event to be queried; see SDL_EventType for details + * \returns SDL_TRUE if events matching `type` are present, or SDL_FALSE if + * events matching `type` are not present. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HasEvents + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasEvent(Uint32 type); + + +/** + * Check for the existence of certain event types in the event queue. + * + * If you need to check for a single event type, use SDL_HasEvent() instead. + * + * \param minType the low end of event type to be queried, inclusive; see + * SDL_EventType for details + * \param maxType the high end of event type to be queried, inclusive; see + * SDL_EventType for details + * \returns SDL_TRUE if events with type >= `minType` and <= `maxType` are + * present, or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HasEvents + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasEvents(Uint32 minType, Uint32 maxType); + +/** + * Clear events of a specific type from the event queue. + * + * This will unconditionally remove any events from the queue that match + * `type`. If you need to remove a range of event types, use SDL_FlushEvents() + * instead. + * + * It's also normal to just ignore events you don't care about in your event + * loop without calling this function. + * + * This function only affects currently queued events. If you want to make + * sure that all pending OS events are flushed, you can call SDL_PumpEvents() + * on the main thread immediately before the flush call. + * + * \param type the type of event to be cleared; see SDL_EventType for details + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FlushEvents + */ +extern DECLSPEC void SDLCALL SDL_FlushEvent(Uint32 type); + +/** + * Clear events of a range of types from the event queue. + * + * This will unconditionally remove any events from the queue that are in the + * range of `minType` to `maxType`, inclusive. If you need to remove a single + * event type, use SDL_FlushEvent() instead. + * + * It's also normal to just ignore events you don't care about in your event + * loop without calling this function. + * + * This function only affects currently queued events. If you want to make + * sure that all pending OS events are flushed, you can call SDL_PumpEvents() + * on the main thread immediately before the flush call. + * + * \param minType the low end of event type to be cleared, inclusive; see + * SDL_EventType for details + * \param maxType the high end of event type to be cleared, inclusive; see + * SDL_EventType for details + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FlushEvent + */ +extern DECLSPEC void SDLCALL SDL_FlushEvents(Uint32 minType, Uint32 maxType); + +/** + * Poll for currently pending events. + * + * If `event` is not NULL, the next event is removed from the queue and stored + * in the SDL_Event structure pointed to by `event`. The 1 returned refers to + * this event, immediately stored in the SDL Event structure -- not an event + * to follow. + * + * If `event` is NULL, it simply returns 1 if there is an event in the queue, + * but will not remove it from the queue. + * + * As this function may implicitly call SDL_PumpEvents(), you can only call + * this function in the thread that set the video mode. + * + * SDL_PollEvent() is the favored way of receiving system events since it can + * be done from the main loop and does not suspend the main loop while waiting + * on an event to be posted. + * + * The common practice is to fully process the event queue once every frame, + * usually as a first step before updating the game's state: + * + * ```c + * while (game_is_still_running) { + * SDL_Event event; + * while (SDL_PollEvent(&event)) { // poll until all events are handled! + * // decide what to do with this event. + * } + * + * // update game state, draw the current frame + * } + * ``` + * + * \param event the SDL_Event structure to be filled with the next event from + * the queue, or NULL + * \returns 1 if there is a pending event or 0 if there are none available. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetEventFilter + * \sa SDL_PeepEvents + * \sa SDL_PushEvent + * \sa SDL_SetEventFilter + * \sa SDL_WaitEvent + * \sa SDL_WaitEventTimeout + */ +extern DECLSPEC int SDLCALL SDL_PollEvent(SDL_Event * event); + +/** + * Wait indefinitely for the next available event. + * + * If `event` is not NULL, the next event is removed from the queue and stored + * in the SDL_Event structure pointed to by `event`. + * + * As this function may implicitly call SDL_PumpEvents(), you can only call + * this function in the thread that initialized the video subsystem. + * + * \param event the SDL_Event structure to be filled in with the next event + * from the queue, or NULL + * \returns 1 on success or 0 if there was an error while waiting for events; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PollEvent + * \sa SDL_PumpEvents + * \sa SDL_WaitEventTimeout + */ +extern DECLSPEC int SDLCALL SDL_WaitEvent(SDL_Event * event); + +/** + * Wait until the specified timeout (in milliseconds) for the next available + * event. + * + * If `event` is not NULL, the next event is removed from the queue and stored + * in the SDL_Event structure pointed to by `event`. + * + * As this function may implicitly call SDL_PumpEvents(), you can only call + * this function in the thread that initialized the video subsystem. + * + * \param event the SDL_Event structure to be filled in with the next event + * from the queue, or NULL + * \param timeout the maximum number of milliseconds to wait for the next + * available event + * \returns 1 on success or 0 if there was an error while waiting for events; + * call SDL_GetError() for more information. This also returns 0 if + * the timeout elapsed without an event arriving. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PollEvent + * \sa SDL_PumpEvents + * \sa SDL_WaitEvent + */ +extern DECLSPEC int SDLCALL SDL_WaitEventTimeout(SDL_Event * event, + int timeout); + +/** + * Add an event to the event queue. + * + * The event queue can actually be used as a two way communication channel. + * Not only can events be read from the queue, but the user can also push + * their own events onto it. `event` is a pointer to the event structure you + * wish to push onto the queue. The event is copied into the queue, and the + * caller may dispose of the memory pointed to after SDL_PushEvent() returns. + * + * Note: Pushing device input events onto the queue doesn't modify the state + * of the device within SDL. + * + * This function is thread-safe, and can be called from other threads safely. + * + * Note: Events pushed onto the queue with SDL_PushEvent() get passed through + * the event filter but events added with SDL_PeepEvents() do not. + * + * For pushing application-specific events, please use SDL_RegisterEvents() to + * get an event type that does not conflict with other code that also wants + * its own custom event types. + * + * \param event the SDL_Event to be added to the queue + * \returns 1 on success, 0 if the event was filtered, or a negative error + * code on failure; call SDL_GetError() for more information. A + * common reason for error is the event queue being full. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PeepEvents + * \sa SDL_PollEvent + * \sa SDL_RegisterEvents + */ +extern DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event * event); + +/** + * A function pointer used for callbacks that watch the event queue. + * + * \param userdata what was passed as `userdata` to SDL_SetEventFilter() + * or SDL_AddEventWatch, etc + * \param event the event that triggered the callback + * \returns 1 to permit event to be added to the queue, and 0 to disallow + * it. When used with SDL_AddEventWatch, the return value is ignored. + * + * \sa SDL_SetEventFilter + * \sa SDL_AddEventWatch + */ +typedef int (SDLCALL * SDL_EventFilter) (void *userdata, SDL_Event * event); + +/** + * Set up a filter to process all events before they change internal state and + * are posted to the internal event queue. + * + * If the filter function returns 1 when called, then the event will be added + * to the internal queue. If it returns 0, then the event will be dropped from + * the queue, but the internal state will still be updated. This allows + * selective filtering of dynamically arriving events. + * + * **WARNING**: Be very careful of what you do in the event filter function, + * as it may run in a different thread! + * + * On platforms that support it, if the quit event is generated by an + * interrupt signal (e.g. pressing Ctrl-C), it will be delivered to the + * application at the next event poll. + * + * There is one caveat when dealing with the ::SDL_QuitEvent event type. The + * event filter is only called when the window manager desires to close the + * application window. If the event filter returns 1, then the window will be + * closed, otherwise the window will remain open if possible. + * + * Note: Disabled events never make it to the event filter function; see + * SDL_EventState(). + * + * Note: If you just want to inspect events without filtering, you should use + * SDL_AddEventWatch() instead. + * + * Note: Events pushed onto the queue with SDL_PushEvent() get passed through + * the event filter, but events pushed onto the queue with SDL_PeepEvents() do + * not. + * + * \param filter An SDL_EventFilter function to call when an event happens + * \param userdata a pointer that is passed to `filter` + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AddEventWatch + * \sa SDL_EventState + * \sa SDL_GetEventFilter + * \sa SDL_PeepEvents + * \sa SDL_PushEvent + */ +extern DECLSPEC void SDLCALL SDL_SetEventFilter(SDL_EventFilter filter, + void *userdata); + +/** + * Query the current event filter. + * + * This function can be used to "chain" filters, by saving the existing filter + * before replacing it with a function that will call that saved filter. + * + * \param filter the current callback function will be stored here + * \param userdata the pointer that is passed to the current event filter will + * be stored here + * \returns SDL_TRUE on success or SDL_FALSE if there is no event filter set. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetEventFilter + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter * filter, + void **userdata); + +/** + * Add a callback to be triggered when an event is added to the event queue. + * + * `filter` will be called when an event happens, and its return value is + * ignored. + * + * **WARNING**: Be very careful of what you do in the event filter function, + * as it may run in a different thread! + * + * If the quit event is generated by a signal (e.g. SIGINT), it will bypass + * the internal queue and be delivered to the watch callback immediately, and + * arrive at the next event poll. + * + * Note: the callback is called for events posted by the user through + * SDL_PushEvent(), but not for disabled events, nor for events by a filter + * callback set with SDL_SetEventFilter(), nor for events posted by the user + * through SDL_PeepEvents(). + * + * \param filter an SDL_EventFilter function to call when an event happens. + * \param userdata a pointer that is passed to `filter` + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_DelEventWatch + * \sa SDL_SetEventFilter + */ +extern DECLSPEC void SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, + void *userdata); + +/** + * Remove an event watch callback added with SDL_AddEventWatch(). + * + * This function takes the same input as SDL_AddEventWatch() to identify and + * delete the corresponding callback. + * + * \param filter the function originally passed to SDL_AddEventWatch() + * \param userdata the pointer originally passed to SDL_AddEventWatch() + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AddEventWatch + */ +extern DECLSPEC void SDLCALL SDL_DelEventWatch(SDL_EventFilter filter, + void *userdata); + +/** + * Run a specific filter function on the current event queue, removing any + * events for which the filter returns 0. + * + * See SDL_SetEventFilter() for more information. Unlike SDL_SetEventFilter(), + * this function does not change the filter permanently, it only uses the + * supplied filter until this function returns. + * + * \param filter the SDL_EventFilter function to call when an event happens + * \param userdata a pointer that is passed to `filter` + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetEventFilter + * \sa SDL_SetEventFilter + */ +extern DECLSPEC void SDLCALL SDL_FilterEvents(SDL_EventFilter filter, + void *userdata); + +/* @{ */ +#define SDL_QUERY -1 +#define SDL_IGNORE 0 +#define SDL_DISABLE 0 +#define SDL_ENABLE 1 + +/** + * Set the state of processing events by type. + * + * `state` may be any of the following: + * + * - `SDL_QUERY`: returns the current processing state of the specified event + * - `SDL_IGNORE` (aka `SDL_DISABLE`): the event will automatically be dropped + * from the event queue and will not be filtered + * - `SDL_ENABLE`: the event will be processed normally + * + * \param type the type of event; see SDL_EventType for details + * \param state how to process the event + * \returns `SDL_DISABLE` or `SDL_ENABLE`, representing the processing state + * of the event before this function makes any changes to it. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetEventState + */ +extern DECLSPEC Uint8 SDLCALL SDL_EventState(Uint32 type, int state); +/* @} */ +#define SDL_GetEventState(type) SDL_EventState(type, SDL_QUERY) + +/** + * Allocate a set of user-defined events, and return the beginning event + * number for that set of events. + * + * Calling this function with `numevents` <= 0 is an error and will return + * (Uint32)-1. + * + * Note, (Uint32)-1 means the maximum unsigned 32-bit integer value (or + * 0xFFFFFFFF), but is clearer to write. + * + * \param numevents the number of events to be allocated + * \returns the beginning event number, or (Uint32)-1 if there are not enough + * user-defined events left. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PushEvent + */ +extern DECLSPEC Uint32 SDLCALL SDL_RegisterEvents(int numevents); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_events_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..bc2e977a718b7a3fbb62604302cb525bbffd2beb GIT binary patch literal 84151 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_filesystem.h + * + * \brief Include file for filesystem SDL API functions + */ + +#ifndef SDL_filesystem_h_ +#define SDL_filesystem_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" + +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Get the directory where the application was run from. + * + * This is not necessarily a fast call, so you should call this once near + * startup and save the string if you need it. + * + * **Mac OS X and iOS Specific Functionality**: If the application is in a + * ".app" bundle, this function returns the Resource directory (e.g. + * MyApp.app/Contents/Resources/). This behaviour can be overridden by adding + * a property to the Info.plist file. Adding a string key with the name + * SDL_FILESYSTEM_BASE_DIR_TYPE with a supported value will change the + * behaviour. + * + * Supported values for the SDL_FILESYSTEM_BASE_DIR_TYPE property (Given an + * application in /Applications/SDLApp/MyApp.app): + * + * - `resource`: bundle resource directory (the default). For example: + * `/Applications/SDLApp/MyApp.app/Contents/Resources` + * - `bundle`: the Bundle directory. For example: + * `/Applications/SDLApp/MyApp.app/` + * - `parent`: the containing directory of the bundle. For example: + * `/Applications/SDLApp/` + * + * **Nintendo 3DS Specific Functionality**: This function returns "romfs" + * directory of the application as it is uncommon to store resources outside + * the executable. As such it is not a writable directory. + * + * The returned path is guaranteed to end with a path separator ('\' on + * Windows, '/' on most other platforms). + * + * The pointer returned is owned by the caller. Please call SDL_free() on the + * pointer when done with it. + * + * \returns an absolute path in UTF-8 encoding to the application data + * directory. NULL will be returned on error or when the platform + * doesn't implement this functionality, call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.1. + * + * \sa SDL_GetPrefPath + */ +extern DECLSPEC char *SDLCALL SDL_GetBasePath(void); + +/** + * Get the user-and-app-specific path where files can be written. + * + * Get the "pref dir". This is meant to be where users can write personal + * files (preferences and save games, etc) that are specific to your + * application. This directory is unique per user, per application. + * + * This function will decide the appropriate location in the native + * filesystem, create the directory if necessary, and return a string of the + * absolute path to the directory in UTF-8 encoding. + * + * On Windows, the string might look like: + * + * `C:\\Users\\bob\\AppData\\Roaming\\My Company\\My Program Name\\` + * + * On Linux, the string might look like: + * + * `/home/bob/.local/share/My Program Name/` + * + * On Mac OS X, the string might look like: + * + * `/Users/bob/Library/Application Support/My Program Name/` + * + * You should assume the path returned by this function is the only safe place + * to write files (and that SDL_GetBasePath(), while it might be writable, or + * even the parent of the returned path, isn't where you should be writing + * things). + * + * Both the org and app strings may become part of a directory name, so please + * follow these rules: + * + * - Try to use the same org string (_including case-sensitivity_) for all + * your applications that use this function. + * - Always use a unique app string for each one, and make sure it never + * changes for an app once you've decided on it. + * - Unicode characters are legal, as long as it's UTF-8 encoded, but... + * - ...only use letters, numbers, and spaces. Avoid punctuation like "Game + * Name 2: Bad Guy's Revenge!" ... "Game Name 2" is sufficient. + * + * The returned path is guaranteed to end with a path separator ('\' on + * Windows, '/' on most other platforms). + * + * The pointer returned is owned by the caller. Please call SDL_free() on the + * pointer when done with it. + * + * \param org the name of your organization + * \param app the name of your application + * \returns a UTF-8 string of the user directory in platform-dependent + * notation. NULL if there's a problem (creating directory failed, + * etc.). + * + * \since This function is available since SDL 2.0.1. + * + * \sa SDL_GetBasePath + */ +extern DECLSPEC char *SDLCALL SDL_GetPrefPath(const char *org, const char *app); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_filesystem_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1c6d9d45c5eeda2849d540bcc319bf0b154944cd GIT binary patch literal 16370 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h new file mode 100644 index 00000000..140054d3 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h @@ -0,0 +1,1074 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_gamecontroller.h + * + * Include file for SDL game controller event handling + */ + +#ifndef SDL_gamecontroller_h_ +#define SDL_gamecontroller_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_rwops.h" +#include "SDL_sensor.h" +#include "SDL_joystick.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \file SDL_gamecontroller.h + * + * In order to use these functions, SDL_Init() must have been called + * with the ::SDL_INIT_GAMECONTROLLER flag. This causes SDL to scan the system + * for game controllers, and load appropriate drivers. + * + * If you would like to receive controller updates while the application + * is in the background, you should set the following hint before calling + * SDL_Init(): SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS + */ + +/** + * The gamecontroller structure used to identify an SDL game controller + */ +struct _SDL_GameController; +typedef struct _SDL_GameController SDL_GameController; + +typedef enum +{ + SDL_CONTROLLER_TYPE_UNKNOWN = 0, + SDL_CONTROLLER_TYPE_XBOX360, + SDL_CONTROLLER_TYPE_XBOXONE, + SDL_CONTROLLER_TYPE_PS3, + SDL_CONTROLLER_TYPE_PS4, + SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_PRO, + SDL_CONTROLLER_TYPE_VIRTUAL, + SDL_CONTROLLER_TYPE_PS5, + SDL_CONTROLLER_TYPE_AMAZON_LUNA, + SDL_CONTROLLER_TYPE_GOOGLE_STADIA, + SDL_CONTROLLER_TYPE_NVIDIA_SHIELD, + SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_LEFT, + SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_RIGHT, + SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_PAIR +} SDL_GameControllerType; + +typedef enum +{ + SDL_CONTROLLER_BINDTYPE_NONE = 0, + SDL_CONTROLLER_BINDTYPE_BUTTON, + SDL_CONTROLLER_BINDTYPE_AXIS, + SDL_CONTROLLER_BINDTYPE_HAT +} SDL_GameControllerBindType; + +/** + * Get the SDL joystick layer binding for this controller button/axis mapping + */ +typedef struct SDL_GameControllerButtonBind +{ + SDL_GameControllerBindType bindType; + union + { + int button; + int axis; + struct { + int hat; + int hat_mask; + } hat; + } value; + +} SDL_GameControllerButtonBind; + + +/** + * To count the number of game controllers in the system for the following: + * + * ```c + * int nJoysticks = SDL_NumJoysticks(); + * int nGameControllers = 0; + * for (int i = 0; i < nJoysticks; i++) { + * if (SDL_IsGameController(i)) { + * nGameControllers++; + * } + * } + * ``` + * + * Using the SDL_HINT_GAMECONTROLLERCONFIG hint or the SDL_GameControllerAddMapping() you can add support for controllers SDL is unaware of or cause an existing controller to have a different binding. The format is: + * guid,name,mappings + * + * Where GUID is the string value from SDL_JoystickGetGUIDString(), name is the human readable string for the device and mappings are controller mappings to joystick ones. + * Under Windows there is a reserved GUID of "xinput" that covers any XInput devices. + * The mapping format for joystick is: + * bX - a joystick button, index X + * hX.Y - hat X with value Y + * aX - axis X of the joystick + * Buttons can be used as a controller axis and vice versa. + * + * This string shows an example of a valid mapping for a controller + * + * ```c + * "03000000341a00003608000000000000,PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7", + * ``` + */ + +/** + * Load a set of Game Controller mappings from a seekable SDL data stream. + * + * You can call this function several times, if needed, to load different + * database files. + * + * If a new mapping is loaded for an already known controller GUID, the later + * version will overwrite the one currently loaded. + * + * Mappings not belonging to the current platform or with no platform field + * specified will be ignored (i.e. mappings for Linux will be ignored in + * Windows, etc). + * + * This function will load the text database entirely in memory before + * processing it, so take this into consideration if you are in a memory + * constrained environment. + * + * \param rw the data stream for the mappings to be added + * \param freerw non-zero to close the stream after being read + * \returns the number of mappings added or -1 on error; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_GameControllerAddMapping + * \sa SDL_GameControllerAddMappingsFromFile + * \sa SDL_GameControllerMappingForGUID + */ +extern DECLSPEC int SDLCALL SDL_GameControllerAddMappingsFromRW(SDL_RWops * rw, int freerw); + +/** + * Load a set of mappings from a file, filtered by the current SDL_GetPlatform() + * + * Convenience macro. + */ +#define SDL_GameControllerAddMappingsFromFile(file) SDL_GameControllerAddMappingsFromRW(SDL_RWFromFile(file, "rb"), 1) + +/** + * Add support for controllers that SDL is unaware of or to cause an existing + * controller to have a different binding. + * + * The mapping string has the format "GUID,name,mapping", where GUID is the + * string value from SDL_JoystickGetGUIDString(), name is the human readable + * string for the device and mappings are controller mappings to joystick + * ones. Under Windows there is a reserved GUID of "xinput" that covers all + * XInput devices. The mapping format for joystick is: {| |bX |a joystick + * button, index X |- |hX.Y |hat X with value Y |- |aX |axis X of the joystick + * |} Buttons can be used as a controller axes and vice versa. + * + * This string shows an example of a valid mapping for a controller: + * + * ```c + * "341a3608000000000000504944564944,Afterglow PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7" + * ``` + * + * \param mappingString the mapping string + * \returns 1 if a new mapping is added, 0 if an existing mapping is updated, + * -1 on error; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerMapping + * \sa SDL_GameControllerMappingForGUID + */ +extern DECLSPEC int SDLCALL SDL_GameControllerAddMapping(const char* mappingString); + +/** + * Get the number of mappings installed. + * + * \returns the number of mappings. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerNumMappings(void); + +/** + * Get the mapping at a particular index. + * + * \returns the mapping string. Must be freed with SDL_free(). Returns NULL if + * the index is out of range. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForIndex(int mapping_index); + +/** + * Get the game controller mapping string for a given GUID. + * + * The returned string must be freed with SDL_free(). + * + * \param guid a structure containing the GUID for which a mapping is desired + * \returns a mapping string or NULL on error; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetDeviceGUID + * \sa SDL_JoystickGetGUID + */ +extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForGUID(SDL_JoystickGUID guid); + +/** + * Get the current mapping of a Game Controller. + * + * The returned string must be freed with SDL_free(). + * + * Details about mappings are discussed with SDL_GameControllerAddMapping(). + * + * \param gamecontroller the game controller you want to get the current + * mapping for + * \returns a string that has the controller's mapping or NULL if no mapping + * is available; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerAddMapping + * \sa SDL_GameControllerMappingForGUID + */ +extern DECLSPEC char * SDLCALL SDL_GameControllerMapping(SDL_GameController *gamecontroller); + +/** + * Check if the given joystick is supported by the game controller interface. + * + * `joystick_index` is the same as the `device_index` passed to + * SDL_JoystickOpen(). + * + * \param joystick_index the device_index of a device, up to + * SDL_NumJoysticks() + * \returns SDL_TRUE if the given joystick is supported by the game controller + * interface, SDL_FALSE if it isn't or it's an invalid index. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerNameForIndex + * \sa SDL_GameControllerOpen + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsGameController(int joystick_index); + +/** + * Get the implementation dependent name for the game controller. + * + * This function can be called before any controllers are opened. + * + * `joystick_index` is the same as the `device_index` passed to + * SDL_JoystickOpen(). + * + * \param joystick_index the device_index of a device, from zero to + * SDL_NumJoysticks()-1 + * \returns the implementation-dependent name for the game controller, or NULL + * if there is no name or the index is invalid. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerName + * \sa SDL_GameControllerOpen + * \sa SDL_IsGameController + */ +extern DECLSPEC const char *SDLCALL SDL_GameControllerNameForIndex(int joystick_index); + +/** + * Get the implementation dependent path for the game controller. + * + * This function can be called before any controllers are opened. + * + * `joystick_index` is the same as the `device_index` passed to + * SDL_JoystickOpen(). + * + * \param joystick_index the device_index of a device, from zero to + * SDL_NumJoysticks()-1 + * \returns the implementation-dependent path for the game controller, or NULL + * if there is no path or the index is invalid. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GameControllerPath + */ +extern DECLSPEC const char *SDLCALL SDL_GameControllerPathForIndex(int joystick_index); + +/** + * Get the type of a game controller. + * + * This can be called before any controllers are opened. + * + * \param joystick_index the device_index of a device, from zero to + * SDL_NumJoysticks()-1 + * \returns the controller type. + * + * \since This function is available since SDL 2.0.12. + */ +extern DECLSPEC SDL_GameControllerType SDLCALL SDL_GameControllerTypeForIndex(int joystick_index); + +/** + * Get the mapping of a game controller. + * + * This can be called before any controllers are opened. + * + * \param joystick_index the device_index of a device, from zero to + * SDL_NumJoysticks()-1 + * \returns the mapping string. Must be freed with SDL_free(). Returns NULL if + * no mapping is available. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC char *SDLCALL SDL_GameControllerMappingForDeviceIndex(int joystick_index); + +/** + * Open a game controller for use. + * + * `joystick_index` is the same as the `device_index` passed to + * SDL_JoystickOpen(). + * + * The index passed as an argument refers to the N'th game controller on the + * system. This index is not the value which will identify this controller in + * future controller events. The joystick's instance id (SDL_JoystickID) will + * be used there instead. + * + * \param joystick_index the device_index of a device, up to + * SDL_NumJoysticks() + * \returns a gamecontroller identifier or NULL if an error occurred; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerClose + * \sa SDL_GameControllerNameForIndex + * \sa SDL_IsGameController + */ +extern DECLSPEC SDL_GameController *SDLCALL SDL_GameControllerOpen(int joystick_index); + +/** + * Get the SDL_GameController associated with an instance id. + * + * \param joyid the instance id to get the SDL_GameController for + * \returns an SDL_GameController on success or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.4. + */ +extern DECLSPEC SDL_GameController *SDLCALL SDL_GameControllerFromInstanceID(SDL_JoystickID joyid); + +/** + * Get the SDL_GameController associated with a player index. + * + * Please note that the player index is _not_ the device index, nor is it the + * instance id! + * + * \param player_index the player index, which is not the device index or the + * instance id! + * \returns the SDL_GameController associated with a player index. + * + * \since This function is available since SDL 2.0.12. + * + * \sa SDL_GameControllerGetPlayerIndex + * \sa SDL_GameControllerSetPlayerIndex + */ +extern DECLSPEC SDL_GameController *SDLCALL SDL_GameControllerFromPlayerIndex(int player_index); + +/** + * Get the implementation-dependent name for an opened game controller. + * + * This is the same name as returned by SDL_GameControllerNameForIndex(), but + * it takes a controller identifier instead of the (unstable) device index. + * + * \param gamecontroller a game controller identifier previously returned by + * SDL_GameControllerOpen() + * \returns the implementation dependent name for the game controller, or NULL + * if there is no name or the identifier passed is invalid. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerNameForIndex + * \sa SDL_GameControllerOpen + */ +extern DECLSPEC const char *SDLCALL SDL_GameControllerName(SDL_GameController *gamecontroller); + +/** + * Get the implementation-dependent path for an opened game controller. + * + * This is the same path as returned by SDL_GameControllerNameForIndex(), but + * it takes a controller identifier instead of the (unstable) device index. + * + * \param gamecontroller a game controller identifier previously returned by + * SDL_GameControllerOpen() + * \returns the implementation dependent path for the game controller, or NULL + * if there is no path or the identifier passed is invalid. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GameControllerPathForIndex + */ +extern DECLSPEC const char *SDLCALL SDL_GameControllerPath(SDL_GameController *gamecontroller); + +/** + * Get the type of this currently opened controller + * + * This is the same name as returned by SDL_GameControllerTypeForIndex(), but + * it takes a controller identifier instead of the (unstable) device index. + * + * \param gamecontroller the game controller object to query. + * \returns the controller type. + * + * \since This function is available since SDL 2.0.12. + */ +extern DECLSPEC SDL_GameControllerType SDLCALL SDL_GameControllerGetType(SDL_GameController *gamecontroller); + +/** + * Get the player index of an opened game controller. + * + * For XInput controllers this returns the XInput user index. + * + * \param gamecontroller the game controller object to query. + * \returns the player index for controller, or -1 if it's not available. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetPlayerIndex(SDL_GameController *gamecontroller); + +/** + * Set the player index of an opened game controller. + * + * \param gamecontroller the game controller object to adjust. + * \param player_index Player index to assign to this controller, or -1 to + * clear the player index and turn off player LEDs. + * + * \since This function is available since SDL 2.0.12. + */ +extern DECLSPEC void SDLCALL SDL_GameControllerSetPlayerIndex(SDL_GameController *gamecontroller, int player_index); + +/** + * Get the USB vendor ID of an opened controller, if available. + * + * If the vendor ID isn't available this function returns 0. + * + * \param gamecontroller the game controller object to query. + * \return the USB vendor ID, or zero if unavailable. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetVendor(SDL_GameController *gamecontroller); + +/** + * Get the USB product ID of an opened controller, if available. + * + * If the product ID isn't available this function returns 0. + * + * \param gamecontroller the game controller object to query. + * \return the USB product ID, or zero if unavailable. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProduct(SDL_GameController *gamecontroller); + +/** + * Get the product version of an opened controller, if available. + * + * If the product version isn't available this function returns 0. + * + * \param gamecontroller the game controller object to query. + * \return the USB product version, or zero if unavailable. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProductVersion(SDL_GameController *gamecontroller); + +/** + * Get the firmware version of an opened controller, if available. + * + * If the firmware version isn't available this function returns 0. + * + * \param gamecontroller the game controller object to query. + * \return the controller firmware version, or zero if unavailable. + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetFirmwareVersion(SDL_GameController *gamecontroller); + +/** + * Get the serial number of an opened controller, if available. + * + * Returns the serial number of the controller, or NULL if it is not + * available. + * + * \param gamecontroller the game controller object to query. + * \return the serial number, or NULL if unavailable. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC const char * SDLCALL SDL_GameControllerGetSerial(SDL_GameController *gamecontroller); + +/** + * Check if a controller has been opened and is currently connected. + * + * \param gamecontroller a game controller identifier previously returned by + * SDL_GameControllerOpen() + * \returns SDL_TRUE if the controller has been opened and is currently + * connected, or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerClose + * \sa SDL_GameControllerOpen + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerGetAttached(SDL_GameController *gamecontroller); + +/** + * Get the Joystick ID from a Game Controller. + * + * This function will give you a SDL_Joystick object, which allows you to use + * the SDL_Joystick functions with a SDL_GameController object. This would be + * useful for getting a joystick's position at any given time, even if it + * hasn't moved (moving it would produce an event, which would have the axis' + * value). + * + * The pointer returned is owned by the SDL_GameController. You should not + * call SDL_JoystickClose() on it, for example, since doing so will likely + * cause SDL to crash. + * + * \param gamecontroller the game controller object that you want to get a + * joystick from + * \returns a SDL_Joystick object; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_Joystick *SDLCALL SDL_GameControllerGetJoystick(SDL_GameController *gamecontroller); + +/** + * Query or change current state of Game Controller events. + * + * If controller events are disabled, you must call SDL_GameControllerUpdate() + * yourself and check the state of the controller when you want controller + * information. + * + * Any number can be passed to SDL_GameControllerEventState(), but only -1, 0, + * and 1 will have any effect. Other numbers will just be returned. + * + * \param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE` + * \returns the same value passed to the function, with exception to -1 + * (SDL_QUERY), which will return the current state. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickEventState + */ +extern DECLSPEC int SDLCALL SDL_GameControllerEventState(int state); + +/** + * Manually pump game controller updates if not using the loop. + * + * This function is called automatically by the event loop if events are + * enabled. Under such circumstances, it will not be necessary to call this + * function. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC void SDLCALL SDL_GameControllerUpdate(void); + + +/** + * The list of axes available from a controller + * + * Thumbstick axis values range from SDL_JOYSTICK_AXIS_MIN to SDL_JOYSTICK_AXIS_MAX, + * and are centered within ~8000 of zero, though advanced UI will allow users to set + * or autodetect the dead zone, which varies between controllers. + * + * Trigger axis values range from 0 to SDL_JOYSTICK_AXIS_MAX. + */ +typedef enum +{ + SDL_CONTROLLER_AXIS_INVALID = -1, + SDL_CONTROLLER_AXIS_LEFTX, + SDL_CONTROLLER_AXIS_LEFTY, + SDL_CONTROLLER_AXIS_RIGHTX, + SDL_CONTROLLER_AXIS_RIGHTY, + SDL_CONTROLLER_AXIS_TRIGGERLEFT, + SDL_CONTROLLER_AXIS_TRIGGERRIGHT, + SDL_CONTROLLER_AXIS_MAX +} SDL_GameControllerAxis; + +/** + * Convert a string into SDL_GameControllerAxis enum. + * + * This function is called internally to translate SDL_GameController mapping + * strings for the underlying joystick device into the consistent + * SDL_GameController mapping. You do not normally need to call this function + * unless you are parsing SDL_GameController mappings in your own code. + * + * Note specially that "righttrigger" and "lefttrigger" map to + * `SDL_CONTROLLER_AXIS_TRIGGERRIGHT` and `SDL_CONTROLLER_AXIS_TRIGGERLEFT`, + * respectively. + * + * \param str string representing a SDL_GameController axis + * \returns the SDL_GameControllerAxis enum corresponding to the input string, + * or `SDL_CONTROLLER_AXIS_INVALID` if no match was found. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerGetStringForAxis + */ +extern DECLSPEC SDL_GameControllerAxis SDLCALL SDL_GameControllerGetAxisFromString(const char *str); + +/** + * Convert from an SDL_GameControllerAxis enum to a string. + * + * The caller should not SDL_free() the returned string. + * + * \param axis an enum value for a given SDL_GameControllerAxis + * \returns a string for the given axis, or NULL if an invalid axis is + * specified. The string returned is of the format used by + * SDL_GameController mapping strings. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerGetAxisFromString + */ +extern DECLSPEC const char* SDLCALL SDL_GameControllerGetStringForAxis(SDL_GameControllerAxis axis); + +/** + * Get the SDL joystick layer binding for a controller axis mapping. + * + * \param gamecontroller a game controller + * \param axis an axis enum value (one of the SDL_GameControllerAxis values) + * \returns a SDL_GameControllerButtonBind describing the bind. On failure + * (like the given Controller axis doesn't exist on the device), its + * `.bindType` will be `SDL_CONTROLLER_BINDTYPE_NONE`. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerGetBindForButton + */ +extern DECLSPEC SDL_GameControllerButtonBind SDLCALL +SDL_GameControllerGetBindForAxis(SDL_GameController *gamecontroller, + SDL_GameControllerAxis axis); + +/** + * Query whether a game controller has a given axis. + * + * This merely reports whether the controller's mapping defined this axis, as + * that is all the information SDL has about the physical device. + * + * \param gamecontroller a game controller + * \param axis an axis enum value (an SDL_GameControllerAxis value) + * \returns SDL_TRUE if the controller has this axis, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_bool SDLCALL +SDL_GameControllerHasAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); + +/** + * Get the current state of an axis control on a game controller. + * + * The axis indices start at index 0. + * + * The state is a value ranging from -32768 to 32767. Triggers, however, range + * from 0 to 32767 (they never return a negative value). + * + * \param gamecontroller a game controller + * \param axis an axis index (one of the SDL_GameControllerAxis values) + * \returns axis state (including 0) on success or 0 (also) on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerGetButton + */ +extern DECLSPEC Sint16 SDLCALL +SDL_GameControllerGetAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); + +/** + * The list of buttons available from a controller + */ +typedef enum +{ + SDL_CONTROLLER_BUTTON_INVALID = -1, + SDL_CONTROLLER_BUTTON_A, + SDL_CONTROLLER_BUTTON_B, + SDL_CONTROLLER_BUTTON_X, + SDL_CONTROLLER_BUTTON_Y, + SDL_CONTROLLER_BUTTON_BACK, + SDL_CONTROLLER_BUTTON_GUIDE, + SDL_CONTROLLER_BUTTON_START, + SDL_CONTROLLER_BUTTON_LEFTSTICK, + SDL_CONTROLLER_BUTTON_RIGHTSTICK, + SDL_CONTROLLER_BUTTON_LEFTSHOULDER, + SDL_CONTROLLER_BUTTON_RIGHTSHOULDER, + SDL_CONTROLLER_BUTTON_DPAD_UP, + SDL_CONTROLLER_BUTTON_DPAD_DOWN, + SDL_CONTROLLER_BUTTON_DPAD_LEFT, + SDL_CONTROLLER_BUTTON_DPAD_RIGHT, + SDL_CONTROLLER_BUTTON_MISC1, /* Xbox Series X share button, PS5 microphone button, Nintendo Switch Pro capture button, Amazon Luna microphone button */ + SDL_CONTROLLER_BUTTON_PADDLE1, /* Xbox Elite paddle P1 (upper left, facing the back) */ + SDL_CONTROLLER_BUTTON_PADDLE2, /* Xbox Elite paddle P3 (upper right, facing the back) */ + SDL_CONTROLLER_BUTTON_PADDLE3, /* Xbox Elite paddle P2 (lower left, facing the back) */ + SDL_CONTROLLER_BUTTON_PADDLE4, /* Xbox Elite paddle P4 (lower right, facing the back) */ + SDL_CONTROLLER_BUTTON_TOUCHPAD, /* PS4/PS5 touchpad button */ + SDL_CONTROLLER_BUTTON_MAX +} SDL_GameControllerButton; + +/** + * Convert a string into an SDL_GameControllerButton enum. + * + * This function is called internally to translate SDL_GameController mapping + * strings for the underlying joystick device into the consistent + * SDL_GameController mapping. You do not normally need to call this function + * unless you are parsing SDL_GameController mappings in your own code. + * + * \param str string representing a SDL_GameController axis + * \returns the SDL_GameControllerButton enum corresponding to the input + * string, or `SDL_CONTROLLER_AXIS_INVALID` if no match was found. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_GameControllerButton SDLCALL SDL_GameControllerGetButtonFromString(const char *str); + +/** + * Convert from an SDL_GameControllerButton enum to a string. + * + * The caller should not SDL_free() the returned string. + * + * \param button an enum value for a given SDL_GameControllerButton + * \returns a string for the given button, or NULL if an invalid button is + * specified. The string returned is of the format used by + * SDL_GameController mapping strings. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerGetButtonFromString + */ +extern DECLSPEC const char* SDLCALL SDL_GameControllerGetStringForButton(SDL_GameControllerButton button); + +/** + * Get the SDL joystick layer binding for a controller button mapping. + * + * \param gamecontroller a game controller + * \param button an button enum value (an SDL_GameControllerButton value) + * \returns a SDL_GameControllerButtonBind describing the bind. On failure + * (like the given Controller button doesn't exist on the device), + * its `.bindType` will be `SDL_CONTROLLER_BINDTYPE_NONE`. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerGetBindForAxis + */ +extern DECLSPEC SDL_GameControllerButtonBind SDLCALL +SDL_GameControllerGetBindForButton(SDL_GameController *gamecontroller, + SDL_GameControllerButton button); + +/** + * Query whether a game controller has a given button. + * + * This merely reports whether the controller's mapping defined this button, + * as that is all the information SDL has about the physical device. + * + * \param gamecontroller a game controller + * \param button a button enum value (an SDL_GameControllerButton value) + * \returns SDL_TRUE if the controller has this button, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasButton(SDL_GameController *gamecontroller, + SDL_GameControllerButton button); + +/** + * Get the current state of a button on a game controller. + * + * \param gamecontroller a game controller + * \param button a button index (one of the SDL_GameControllerButton values) + * \returns 1 for pressed state or 0 for not pressed state or error; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerGetAxis + */ +extern DECLSPEC Uint8 SDLCALL SDL_GameControllerGetButton(SDL_GameController *gamecontroller, + SDL_GameControllerButton button); + +/** + * Get the number of touchpads on a game controller. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetNumTouchpads(SDL_GameController *gamecontroller); + +/** + * Get the number of supported simultaneous fingers on a touchpad on a game + * controller. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetNumTouchpadFingers(SDL_GameController *gamecontroller, int touchpad); + +/** + * Get the current state of a finger on a touchpad on a game controller. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetTouchpadFinger(SDL_GameController *gamecontroller, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); + +/** + * Return whether a game controller has a particular sensor. + * + * \param gamecontroller The controller to query + * \param type The type of sensor to query + * \returns SDL_TRUE if the sensor exists, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasSensor(SDL_GameController *gamecontroller, SDL_SensorType type); + +/** + * Set whether data reporting for a game controller sensor is enabled. + * + * \param gamecontroller The controller to update + * \param type The type of sensor to enable/disable + * \param enabled Whether data reporting should be enabled + * \returns 0 or -1 if an error occurred. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerSetSensorEnabled(SDL_GameController *gamecontroller, SDL_SensorType type, SDL_bool enabled); + +/** + * Query whether sensor data reporting is enabled for a game controller. + * + * \param gamecontroller The controller to query + * \param type The type of sensor to query + * \returns SDL_TRUE if the sensor is enabled, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerIsSensorEnabled(SDL_GameController *gamecontroller, SDL_SensorType type); + +/** + * Get the data rate (number of events per second) of a game controller + * sensor. + * + * \param gamecontroller The controller to query + * \param type The type of sensor to query + * \return the data rate, or 0.0f if the data rate is not available. + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC float SDLCALL SDL_GameControllerGetSensorDataRate(SDL_GameController *gamecontroller, SDL_SensorType type); + +/** + * Get the current state of a game controller sensor. + * + * The number of values and interpretation of the data is sensor dependent. + * See SDL_sensor.h for the details for each type of sensor. + * + * \param gamecontroller The controller to query + * \param type The type of sensor to query + * \param data A pointer filled with the current sensor state + * \param num_values The number of values to write to data + * \return 0 or -1 if an error occurred. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetSensorData(SDL_GameController *gamecontroller, SDL_SensorType type, float *data, int num_values); + +/** + * Get the current state of a game controller sensor with the timestamp of the + * last update. + * + * The number of values and interpretation of the data is sensor dependent. + * See SDL_sensor.h for the details for each type of sensor. + * + * \param gamecontroller The controller to query + * \param type The type of sensor to query + * \param timestamp A pointer filled with the timestamp in microseconds of the + * current sensor reading if available, or 0 if not + * \param data A pointer filled with the current sensor state + * \param num_values The number of values to write to data + * \return 0 or -1 if an error occurred. + * + * \since This function is available since SDL 2.26.0. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetSensorDataWithTimestamp(SDL_GameController *gamecontroller, SDL_SensorType type, Uint64 *timestamp, float *data, int num_values); + +/** + * Start a rumble effect on a game controller. + * + * Each call to this function cancels any previous rumble effect, and calling + * it with 0 intensity stops any rumbling. + * + * \param gamecontroller The controller to vibrate + * \param low_frequency_rumble The intensity of the low frequency (left) + * rumble motor, from 0 to 0xFFFF + * \param high_frequency_rumble The intensity of the high frequency (right) + * rumble motor, from 0 to 0xFFFF + * \param duration_ms The duration of the rumble effect, in milliseconds + * \returns 0, or -1 if rumble isn't supported on this controller + * + * \since This function is available since SDL 2.0.9. + * + * \sa SDL_GameControllerHasRumble + */ +extern DECLSPEC int SDLCALL SDL_GameControllerRumble(SDL_GameController *gamecontroller, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); + +/** + * Start a rumble effect in the game controller's triggers. + * + * Each call to this function cancels any previous trigger rumble effect, and + * calling it with 0 intensity stops any rumbling. + * + * Note that this is rumbling of the _triggers_ and not the game controller as + * a whole. This is currently only supported on Xbox One controllers. If you + * want the (more common) whole-controller rumble, use + * SDL_GameControllerRumble() instead. + * + * \param gamecontroller The controller to vibrate + * \param left_rumble The intensity of the left trigger rumble motor, from 0 + * to 0xFFFF + * \param right_rumble The intensity of the right trigger rumble motor, from 0 + * to 0xFFFF + * \param duration_ms The duration of the rumble effect, in milliseconds + * \returns 0, or -1 if trigger rumble isn't supported on this controller + * + * \since This function is available since SDL 2.0.14. + * + * \sa SDL_GameControllerHasRumbleTriggers + */ +extern DECLSPEC int SDLCALL SDL_GameControllerRumbleTriggers(SDL_GameController *gamecontroller, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); + +/** + * Query whether a game controller has an LED. + * + * \param gamecontroller The controller to query + * \returns SDL_TRUE, or SDL_FALSE if this controller does not have a + * modifiable LED + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasLED(SDL_GameController *gamecontroller); + +/** + * Query whether a game controller has rumble support. + * + * \param gamecontroller The controller to query + * \returns SDL_TRUE, or SDL_FALSE if this controller does not have rumble + * support + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_GameControllerRumble + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasRumble(SDL_GameController *gamecontroller); + +/** + * Query whether a game controller has rumble support on triggers. + * + * \param gamecontroller The controller to query + * \returns SDL_TRUE, or SDL_FALSE if this controller does not have trigger + * rumble support + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_GameControllerRumbleTriggers + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasRumbleTriggers(SDL_GameController *gamecontroller); + +/** + * Update a game controller's LED color. + * + * \param gamecontroller The controller to update + * \param red The intensity of the red LED + * \param green The intensity of the green LED + * \param blue The intensity of the blue LED + * \returns 0, or -1 if this controller does not have a modifiable LED + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerSetLED(SDL_GameController *gamecontroller, Uint8 red, Uint8 green, Uint8 blue); + +/** + * Send a controller specific effect packet + * + * \param gamecontroller The controller to affect + * \param data The data to send to the controller + * \param size The size of the data to send to the controller + * \returns 0, or -1 if this controller or driver doesn't support effect + * packets + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerSendEffect(SDL_GameController *gamecontroller, const void *data, int size); + +/** + * Close a game controller previously opened with SDL_GameControllerOpen(). + * + * \param gamecontroller a game controller identifier previously returned by + * SDL_GameControllerOpen() + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerOpen + */ +extern DECLSPEC void SDLCALL SDL_GameControllerClose(SDL_GameController *gamecontroller); + +/** + * Return the sfSymbolsName for a given button on a game controller on Apple + * platforms. + * + * \param gamecontroller the controller to query + * \param button a button on the game controller + * \returns the sfSymbolsName or NULL if the name can't be found + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_GameControllerGetAppleSFSymbolsNameForAxis + */ +extern DECLSPEC const char* SDLCALL SDL_GameControllerGetAppleSFSymbolsNameForButton(SDL_GameController *gamecontroller, SDL_GameControllerButton button); + +/** + * Return the sfSymbolsName for a given axis on a game controller on Apple + * platforms. + * + * \param gamecontroller the controller to query + * \param axis an axis on the game controller + * \returns the sfSymbolsName or NULL if the name can't be found + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_GameControllerGetAppleSFSymbolsNameForButton + */ +extern DECLSPEC const char* SDLCALL SDL_GameControllerGetAppleSFSymbolsNameForAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_gamecontroller_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..499b355af2f3ca6b7f852128806c34a2c55a3ac8 GIT binary patch literal 64711 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h new file mode 100644 index 00000000..db70b4dd --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h @@ -0,0 +1,117 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_gesture.h + * + * Include file for SDL gesture event handling. + */ + +#ifndef SDL_gesture_h_ +#define SDL_gesture_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_video.h" + +#include "SDL_touch.h" + + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +typedef Sint64 SDL_GestureID; + +/* Function prototypes */ + +/** + * Begin recording a gesture on a specified touch device or all touch devices. + * + * If the parameter `touchId` is -1 (i.e., all devices), this function will + * always return 1, regardless of whether there actually are any devices. + * + * \param touchId the touch device id, or -1 for all touch devices + * \returns 1 on success or 0 if the specified device could not be found. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetTouchDevice + */ +extern DECLSPEC int SDLCALL SDL_RecordGesture(SDL_TouchID touchId); + + +/** + * Save all currently loaded Dollar Gesture templates. + * + * \param dst a SDL_RWops to save to + * \returns the number of saved templates on success or 0 on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LoadDollarTemplates + * \sa SDL_SaveDollarTemplate + */ +extern DECLSPEC int SDLCALL SDL_SaveAllDollarTemplates(SDL_RWops *dst); + +/** + * Save a currently loaded Dollar Gesture template. + * + * \param gestureId a gesture id + * \param dst a SDL_RWops to save to + * \returns 1 on success or 0 on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LoadDollarTemplates + * \sa SDL_SaveAllDollarTemplates + */ +extern DECLSPEC int SDLCALL SDL_SaveDollarTemplate(SDL_GestureID gestureId,SDL_RWops *dst); + + +/** + * Load Dollar Gesture templates from a file. + * + * \param touchId a touch id + * \param src a SDL_RWops to load from + * \returns the number of loaded templates on success or a negative error code + * (or 0) on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SaveAllDollarTemplates + * \sa SDL_SaveDollarTemplate + */ +extern DECLSPEC int SDLCALL SDL_LoadDollarTemplates(SDL_TouchID touchId, SDL_RWops *src); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_gesture_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..f32f2bd3ecdb8b81a904131127dafc159ecdbb90 GIT binary patch literal 15105 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 phc12UM2)SIqodWa;N4wUKx%j) + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_guid.h + * + * Include file for handling ::SDL_GUID values. + */ + +#ifndef SDL_guid_h_ +#define SDL_guid_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * An SDL_GUID is a 128-bit identifier for an input device that + * identifies that device across runs of SDL programs on the same + * platform. If the device is detached and then re-attached to a + * different port, or if the base system is rebooted, the device + * should still report the same GUID. + * + * GUIDs are as precise as possible but are not guaranteed to + * distinguish physically distinct but equivalent devices. For + * example, two game controllers from the same vendor with the same + * product ID and revision may have the same GUID. + * + * GUIDs may be platform-dependent (i.e., the same device may report + * different GUIDs on different operating systems). + */ +typedef struct { + Uint8 data[16]; +} SDL_GUID; + +/* Function prototypes */ + +/** + * Get an ASCII string representation for a given ::SDL_GUID. + * + * You should supply at least 33 bytes for pszGUID. + * + * \param guid the ::SDL_GUID you wish to convert to string + * \param pszGUID buffer in which to write the ASCII string + * \param cbGUID the size of pszGUID + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GUIDFromString + */ +extern DECLSPEC void SDLCALL SDL_GUIDToString(SDL_GUID guid, char *pszGUID, int cbGUID); + +/** + * Convert a GUID string into a ::SDL_GUID structure. + * + * Performs no error checking. If this function is given a string containing + * an invalid GUID, the function will silently succeed, but the GUID generated + * will not be useful. + * + * \param pchGUID string containing an ASCII representation of a GUID + * \returns a ::SDL_GUID structure. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GUIDToString + */ +extern DECLSPEC SDL_GUID SDLCALL SDL_GUIDFromString(const char *pchGUID); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_guid_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8cad47fc3149963a140ac751dce6d925924e0c78 GIT binary patch literal 15215 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_haptic.h + * + * \brief The SDL haptic subsystem allows you to control haptic (force feedback) + * devices. + * + * The basic usage is as follows: + * - Initialize the subsystem (::SDL_INIT_HAPTIC). + * - Open a haptic device. + * - SDL_HapticOpen() to open from index. + * - SDL_HapticOpenFromJoystick() to open from an existing joystick. + * - Create an effect (::SDL_HapticEffect). + * - Upload the effect with SDL_HapticNewEffect(). + * - Run the effect with SDL_HapticRunEffect(). + * - (optional) Free the effect with SDL_HapticDestroyEffect(). + * - Close the haptic device with SDL_HapticClose(). + * + * \par Simple rumble example: + * \code + * SDL_Haptic *haptic; + * + * // Open the device + * haptic = SDL_HapticOpen( 0 ); + * if (haptic == NULL) + * return -1; + * + * // Initialize simple rumble + * if (SDL_HapticRumbleInit( haptic ) != 0) + * return -1; + * + * // Play effect at 50% strength for 2 seconds + * if (SDL_HapticRumblePlay( haptic, 0.5, 2000 ) != 0) + * return -1; + * SDL_Delay( 2000 ); + * + * // Clean up + * SDL_HapticClose( haptic ); + * \endcode + * + * \par Complete example: + * \code + * int test_haptic( SDL_Joystick * joystick ) { + * SDL_Haptic *haptic; + * SDL_HapticEffect effect; + * int effect_id; + * + * // Open the device + * haptic = SDL_HapticOpenFromJoystick( joystick ); + * if (haptic == NULL) return -1; // Most likely joystick isn't haptic + * + * // See if it can do sine waves + * if ((SDL_HapticQuery(haptic) & SDL_HAPTIC_SINE)==0) { + * SDL_HapticClose(haptic); // No sine effect + * return -1; + * } + * + * // Create the effect + * SDL_memset( &effect, 0, sizeof(SDL_HapticEffect) ); // 0 is safe default + * effect.type = SDL_HAPTIC_SINE; + * effect.periodic.direction.type = SDL_HAPTIC_POLAR; // Polar coordinates + * effect.periodic.direction.dir[0] = 18000; // Force comes from south + * effect.periodic.period = 1000; // 1000 ms + * effect.periodic.magnitude = 20000; // 20000/32767 strength + * effect.periodic.length = 5000; // 5 seconds long + * effect.periodic.attack_length = 1000; // Takes 1 second to get max strength + * effect.periodic.fade_length = 1000; // Takes 1 second to fade away + * + * // Upload the effect + * effect_id = SDL_HapticNewEffect( haptic, &effect ); + * + * // Test the effect + * SDL_HapticRunEffect( haptic, effect_id, 1 ); + * SDL_Delay( 5000); // Wait for the effect to finish + * + * // We destroy the effect, although closing the device also does this + * SDL_HapticDestroyEffect( haptic, effect_id ); + * + * // Close the device + * SDL_HapticClose(haptic); + * + * return 0; // Success + * } + * \endcode + */ + +#ifndef SDL_haptic_h_ +#define SDL_haptic_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_joystick.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +/* FIXME: For SDL 2.1, adjust all the magnitude variables to be Uint16 (0xFFFF). + * + * At the moment the magnitude variables are mixed between signed/unsigned, and + * it is also not made clear that ALL of those variables expect a max of 0x7FFF. + * + * Some platforms may have higher precision than that (Linux FF, Windows XInput) + * so we should fix the inconsistency in favor of higher possible precision, + * adjusting for platforms that use different scales. + * -flibit + */ + +/** + * \typedef SDL_Haptic + * + * \brief The haptic structure used to identify an SDL haptic. + * + * \sa SDL_HapticOpen + * \sa SDL_HapticOpenFromJoystick + * \sa SDL_HapticClose + */ +struct _SDL_Haptic; +typedef struct _SDL_Haptic SDL_Haptic; + + +/** + * \name Haptic features + * + * Different haptic features a device can have. + */ +/* @{ */ + +/** + * \name Haptic effects + */ +/* @{ */ + +/** + * \brief Constant effect supported. + * + * Constant haptic effect. + * + * \sa SDL_HapticCondition + */ +#define SDL_HAPTIC_CONSTANT (1u<<0) + +/** + * \brief Sine wave effect supported. + * + * Periodic haptic effect that simulates sine waves. + * + * \sa SDL_HapticPeriodic + */ +#define SDL_HAPTIC_SINE (1u<<1) + +/** + * \brief Left/Right effect supported. + * + * Haptic effect for direct control over high/low frequency motors. + * + * \sa SDL_HapticLeftRight + * \warning this value was SDL_HAPTIC_SQUARE right before 2.0.0 shipped. Sorry, + * we ran out of bits, and this is important for XInput devices. + */ +#define SDL_HAPTIC_LEFTRIGHT (1u<<2) + +/* !!! FIXME: put this back when we have more bits in 2.1 */ +/* #define SDL_HAPTIC_SQUARE (1<<2) */ + +/** + * \brief Triangle wave effect supported. + * + * Periodic haptic effect that simulates triangular waves. + * + * \sa SDL_HapticPeriodic + */ +#define SDL_HAPTIC_TRIANGLE (1u<<3) + +/** + * \brief Sawtoothup wave effect supported. + * + * Periodic haptic effect that simulates saw tooth up waves. + * + * \sa SDL_HapticPeriodic + */ +#define SDL_HAPTIC_SAWTOOTHUP (1u<<4) + +/** + * \brief Sawtoothdown wave effect supported. + * + * Periodic haptic effect that simulates saw tooth down waves. + * + * \sa SDL_HapticPeriodic + */ +#define SDL_HAPTIC_SAWTOOTHDOWN (1u<<5) + +/** + * \brief Ramp effect supported. + * + * Ramp haptic effect. + * + * \sa SDL_HapticRamp + */ +#define SDL_HAPTIC_RAMP (1u<<6) + +/** + * \brief Spring effect supported - uses axes position. + * + * Condition haptic effect that simulates a spring. Effect is based on the + * axes position. + * + * \sa SDL_HapticCondition + */ +#define SDL_HAPTIC_SPRING (1u<<7) + +/** + * \brief Damper effect supported - uses axes velocity. + * + * Condition haptic effect that simulates dampening. Effect is based on the + * axes velocity. + * + * \sa SDL_HapticCondition + */ +#define SDL_HAPTIC_DAMPER (1u<<8) + +/** + * \brief Inertia effect supported - uses axes acceleration. + * + * Condition haptic effect that simulates inertia. Effect is based on the axes + * acceleration. + * + * \sa SDL_HapticCondition + */ +#define SDL_HAPTIC_INERTIA (1u<<9) + +/** + * \brief Friction effect supported - uses axes movement. + * + * Condition haptic effect that simulates friction. Effect is based on the + * axes movement. + * + * \sa SDL_HapticCondition + */ +#define SDL_HAPTIC_FRICTION (1u<<10) + +/** + * \brief Custom effect is supported. + * + * User defined custom haptic effect. + */ +#define SDL_HAPTIC_CUSTOM (1u<<11) + +/* @} *//* Haptic effects */ + +/* These last few are features the device has, not effects */ + +/** + * \brief Device can set global gain. + * + * Device supports setting the global gain. + * + * \sa SDL_HapticSetGain + */ +#define SDL_HAPTIC_GAIN (1u<<12) + +/** + * \brief Device can set autocenter. + * + * Device supports setting autocenter. + * + * \sa SDL_HapticSetAutocenter + */ +#define SDL_HAPTIC_AUTOCENTER (1u<<13) + +/** + * \brief Device can be queried for effect status. + * + * Device supports querying effect status. + * + * \sa SDL_HapticGetEffectStatus + */ +#define SDL_HAPTIC_STATUS (1u<<14) + +/** + * \brief Device can be paused. + * + * Devices supports being paused. + * + * \sa SDL_HapticPause + * \sa SDL_HapticUnpause + */ +#define SDL_HAPTIC_PAUSE (1u<<15) + + +/** + * \name Direction encodings + */ +/* @{ */ + +/** + * \brief Uses polar coordinates for the direction. + * + * \sa SDL_HapticDirection + */ +#define SDL_HAPTIC_POLAR 0 + +/** + * \brief Uses cartesian coordinates for the direction. + * + * \sa SDL_HapticDirection + */ +#define SDL_HAPTIC_CARTESIAN 1 + +/** + * \brief Uses spherical coordinates for the direction. + * + * \sa SDL_HapticDirection + */ +#define SDL_HAPTIC_SPHERICAL 2 + +/** + * \brief Use this value to play an effect on the steering wheel axis. This + * provides better compatibility across platforms and devices as SDL will guess + * the correct axis. + * \sa SDL_HapticDirection + */ +#define SDL_HAPTIC_STEERING_AXIS 3 + +/* @} *//* Direction encodings */ + +/* @} *//* Haptic features */ + +/* + * Misc defines. + */ + +/** + * \brief Used to play a device an infinite number of times. + * + * \sa SDL_HapticRunEffect + */ +#define SDL_HAPTIC_INFINITY 4294967295U + + +/** + * \brief Structure that represents a haptic direction. + * + * This is the direction where the force comes from, + * instead of the direction in which the force is exerted. + * + * Directions can be specified by: + * - ::SDL_HAPTIC_POLAR : Specified by polar coordinates. + * - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates. + * - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates. + * + * Cardinal directions of the haptic device are relative to the positioning + * of the device. North is considered to be away from the user. + * + * The following diagram represents the cardinal directions: + * \verbatim + .--. + |__| .-------. + |=.| |.-----.| + |--| || || + | | |'-----'| + |__|~')_____(' + [ COMPUTER ] + + + North (0,-1) + ^ + | + | + (-1,0) West <----[ HAPTIC ]----> East (1,0) + | + | + v + South (0,1) + + + [ USER ] + \|||/ + (o o) + ---ooO-(_)-Ooo--- + \endverbatim + * + * If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a + * degree starting north and turning clockwise. ::SDL_HAPTIC_POLAR only uses + * the first \c dir parameter. The cardinal directions would be: + * - North: 0 (0 degrees) + * - East: 9000 (90 degrees) + * - South: 18000 (180 degrees) + * - West: 27000 (270 degrees) + * + * If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions + * (X axis, Y axis and Z axis (with 3 axes)). ::SDL_HAPTIC_CARTESIAN uses + * the first three \c dir parameters. The cardinal directions would be: + * - North: 0,-1, 0 + * - East: 1, 0, 0 + * - South: 0, 1, 0 + * - West: -1, 0, 0 + * + * The Z axis represents the height of the effect if supported, otherwise + * it's unused. In cartesian encoding (1, 2) would be the same as (2, 4), you + * can use any multiple you want, only the direction matters. + * + * If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations. + * The first two \c dir parameters are used. The \c dir parameters are as + * follows (all values are in hundredths of degrees): + * - Degrees from (1, 0) rotated towards (0, 1). + * - Degrees towards (0, 0, 1) (device needs at least 3 axes). + * + * + * Example of force coming from the south with all encodings (force coming + * from the south means the user will have to pull the stick to counteract): + * \code + * SDL_HapticDirection direction; + * + * // Cartesian directions + * direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding. + * direction.dir[0] = 0; // X position + * direction.dir[1] = 1; // Y position + * // Assuming the device has 2 axes, we don't need to specify third parameter. + * + * // Polar directions + * direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding. + * direction.dir[0] = 18000; // Polar only uses first parameter + * + * // Spherical coordinates + * direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding + * direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters. + * \endcode + * + * \sa SDL_HAPTIC_POLAR + * \sa SDL_HAPTIC_CARTESIAN + * \sa SDL_HAPTIC_SPHERICAL + * \sa SDL_HAPTIC_STEERING_AXIS + * \sa SDL_HapticEffect + * \sa SDL_HapticNumAxes + */ +typedef struct SDL_HapticDirection +{ + Uint8 type; /**< The type of encoding. */ + Sint32 dir[3]; /**< The encoded direction. */ +} SDL_HapticDirection; + + +/** + * \brief A structure containing a template for a Constant effect. + * + * This struct is exclusively for the ::SDL_HAPTIC_CONSTANT effect. + * + * A constant effect applies a constant force in the specified direction + * to the joystick. + * + * \sa SDL_HAPTIC_CONSTANT + * \sa SDL_HapticEffect + */ +typedef struct SDL_HapticConstant +{ + /* Header */ + Uint16 type; /**< ::SDL_HAPTIC_CONSTANT */ + SDL_HapticDirection direction; /**< Direction of the effect. */ + + /* Replay */ + Uint32 length; /**< Duration of the effect. */ + Uint16 delay; /**< Delay before starting the effect. */ + + /* Trigger */ + Uint16 button; /**< Button that triggers the effect. */ + Uint16 interval; /**< How soon it can be triggered again after button. */ + + /* Constant */ + Sint16 level; /**< Strength of the constant effect. */ + + /* Envelope */ + Uint16 attack_length; /**< Duration of the attack. */ + Uint16 attack_level; /**< Level at the start of the attack. */ + Uint16 fade_length; /**< Duration of the fade. */ + Uint16 fade_level; /**< Level at the end of the fade. */ +} SDL_HapticConstant; + +/** + * \brief A structure containing a template for a Periodic effect. + * + * The struct handles the following effects: + * - ::SDL_HAPTIC_SINE + * - ::SDL_HAPTIC_LEFTRIGHT + * - ::SDL_HAPTIC_TRIANGLE + * - ::SDL_HAPTIC_SAWTOOTHUP + * - ::SDL_HAPTIC_SAWTOOTHDOWN + * + * A periodic effect consists in a wave-shaped effect that repeats itself + * over time. The type determines the shape of the wave and the parameters + * determine the dimensions of the wave. + * + * Phase is given by hundredth of a degree meaning that giving the phase a value + * of 9000 will displace it 25% of its period. Here are sample values: + * - 0: No phase displacement. + * - 9000: Displaced 25% of its period. + * - 18000: Displaced 50% of its period. + * - 27000: Displaced 75% of its period. + * - 36000: Displaced 100% of its period, same as 0, but 0 is preferred. + * + * Examples: + * \verbatim + SDL_HAPTIC_SINE + __ __ __ __ + / \ / \ / \ / + / \__/ \__/ \__/ + + SDL_HAPTIC_SQUARE + __ __ __ __ __ + | | | | | | | | | | + | |__| |__| |__| |__| | + + SDL_HAPTIC_TRIANGLE + /\ /\ /\ /\ /\ + / \ / \ / \ / \ / + / \/ \/ \/ \/ + + SDL_HAPTIC_SAWTOOTHUP + /| /| /| /| /| /| /| + / | / | / | / | / | / | / | + / |/ |/ |/ |/ |/ |/ | + + SDL_HAPTIC_SAWTOOTHDOWN + \ |\ |\ |\ |\ |\ |\ | + \ | \ | \ | \ | \ | \ | \ | + \| \| \| \| \| \| \| + \endverbatim + * + * \sa SDL_HAPTIC_SINE + * \sa SDL_HAPTIC_LEFTRIGHT + * \sa SDL_HAPTIC_TRIANGLE + * \sa SDL_HAPTIC_SAWTOOTHUP + * \sa SDL_HAPTIC_SAWTOOTHDOWN + * \sa SDL_HapticEffect + */ +typedef struct SDL_HapticPeriodic +{ + /* Header */ + Uint16 type; /**< ::SDL_HAPTIC_SINE, ::SDL_HAPTIC_LEFTRIGHT, + ::SDL_HAPTIC_TRIANGLE, ::SDL_HAPTIC_SAWTOOTHUP or + ::SDL_HAPTIC_SAWTOOTHDOWN */ + SDL_HapticDirection direction; /**< Direction of the effect. */ + + /* Replay */ + Uint32 length; /**< Duration of the effect. */ + Uint16 delay; /**< Delay before starting the effect. */ + + /* Trigger */ + Uint16 button; /**< Button that triggers the effect. */ + Uint16 interval; /**< How soon it can be triggered again after button. */ + + /* Periodic */ + Uint16 period; /**< Period of the wave. */ + Sint16 magnitude; /**< Peak value; if negative, equivalent to 180 degrees extra phase shift. */ + Sint16 offset; /**< Mean value of the wave. */ + Uint16 phase; /**< Positive phase shift given by hundredth of a degree. */ + + /* Envelope */ + Uint16 attack_length; /**< Duration of the attack. */ + Uint16 attack_level; /**< Level at the start of the attack. */ + Uint16 fade_length; /**< Duration of the fade. */ + Uint16 fade_level; /**< Level at the end of the fade. */ +} SDL_HapticPeriodic; + +/** + * \brief A structure containing a template for a Condition effect. + * + * The struct handles the following effects: + * - ::SDL_HAPTIC_SPRING: Effect based on axes position. + * - ::SDL_HAPTIC_DAMPER: Effect based on axes velocity. + * - ::SDL_HAPTIC_INERTIA: Effect based on axes acceleration. + * - ::SDL_HAPTIC_FRICTION: Effect based on axes movement. + * + * Direction is handled by condition internals instead of a direction member. + * The condition effect specific members have three parameters. The first + * refers to the X axis, the second refers to the Y axis and the third + * refers to the Z axis. The right terms refer to the positive side of the + * axis and the left terms refer to the negative side of the axis. Please + * refer to the ::SDL_HapticDirection diagram for which side is positive and + * which is negative. + * + * \sa SDL_HapticDirection + * \sa SDL_HAPTIC_SPRING + * \sa SDL_HAPTIC_DAMPER + * \sa SDL_HAPTIC_INERTIA + * \sa SDL_HAPTIC_FRICTION + * \sa SDL_HapticEffect + */ +typedef struct SDL_HapticCondition +{ + /* Header */ + Uint16 type; /**< ::SDL_HAPTIC_SPRING, ::SDL_HAPTIC_DAMPER, + ::SDL_HAPTIC_INERTIA or ::SDL_HAPTIC_FRICTION */ + SDL_HapticDirection direction; /**< Direction of the effect - Not used ATM. */ + + /* Replay */ + Uint32 length; /**< Duration of the effect. */ + Uint16 delay; /**< Delay before starting the effect. */ + + /* Trigger */ + Uint16 button; /**< Button that triggers the effect. */ + Uint16 interval; /**< How soon it can be triggered again after button. */ + + /* Condition */ + Uint16 right_sat[3]; /**< Level when joystick is to the positive side; max 0xFFFF. */ + Uint16 left_sat[3]; /**< Level when joystick is to the negative side; max 0xFFFF. */ + Sint16 right_coeff[3]; /**< How fast to increase the force towards the positive side. */ + Sint16 left_coeff[3]; /**< How fast to increase the force towards the negative side. */ + Uint16 deadband[3]; /**< Size of the dead zone; max 0xFFFF: whole axis-range when 0-centered. */ + Sint16 center[3]; /**< Position of the dead zone. */ +} SDL_HapticCondition; + +/** + * \brief A structure containing a template for a Ramp effect. + * + * This struct is exclusively for the ::SDL_HAPTIC_RAMP effect. + * + * The ramp effect starts at start strength and ends at end strength. + * It augments in linear fashion. If you use attack and fade with a ramp + * the effects get added to the ramp effect making the effect become + * quadratic instead of linear. + * + * \sa SDL_HAPTIC_RAMP + * \sa SDL_HapticEffect + */ +typedef struct SDL_HapticRamp +{ + /* Header */ + Uint16 type; /**< ::SDL_HAPTIC_RAMP */ + SDL_HapticDirection direction; /**< Direction of the effect. */ + + /* Replay */ + Uint32 length; /**< Duration of the effect. */ + Uint16 delay; /**< Delay before starting the effect. */ + + /* Trigger */ + Uint16 button; /**< Button that triggers the effect. */ + Uint16 interval; /**< How soon it can be triggered again after button. */ + + /* Ramp */ + Sint16 start; /**< Beginning strength level. */ + Sint16 end; /**< Ending strength level. */ + + /* Envelope */ + Uint16 attack_length; /**< Duration of the attack. */ + Uint16 attack_level; /**< Level at the start of the attack. */ + Uint16 fade_length; /**< Duration of the fade. */ + Uint16 fade_level; /**< Level at the end of the fade. */ +} SDL_HapticRamp; + +/** + * \brief A structure containing a template for a Left/Right effect. + * + * This struct is exclusively for the ::SDL_HAPTIC_LEFTRIGHT effect. + * + * The Left/Right effect is used to explicitly control the large and small + * motors, commonly found in modern game controllers. The small (right) motor + * is high frequency, and the large (left) motor is low frequency. + * + * \sa SDL_HAPTIC_LEFTRIGHT + * \sa SDL_HapticEffect + */ +typedef struct SDL_HapticLeftRight +{ + /* Header */ + Uint16 type; /**< ::SDL_HAPTIC_LEFTRIGHT */ + + /* Replay */ + Uint32 length; /**< Duration of the effect in milliseconds. */ + + /* Rumble */ + Uint16 large_magnitude; /**< Control of the large controller motor. */ + Uint16 small_magnitude; /**< Control of the small controller motor. */ +} SDL_HapticLeftRight; + +/** + * \brief A structure containing a template for the ::SDL_HAPTIC_CUSTOM effect. + * + * This struct is exclusively for the ::SDL_HAPTIC_CUSTOM effect. + * + * A custom force feedback effect is much like a periodic effect, where the + * application can define its exact shape. You will have to allocate the + * data yourself. Data should consist of channels * samples Uint16 samples. + * + * If channels is one, the effect is rotated using the defined direction. + * Otherwise it uses the samples in data for the different axes. + * + * \sa SDL_HAPTIC_CUSTOM + * \sa SDL_HapticEffect + */ +typedef struct SDL_HapticCustom +{ + /* Header */ + Uint16 type; /**< ::SDL_HAPTIC_CUSTOM */ + SDL_HapticDirection direction; /**< Direction of the effect. */ + + /* Replay */ + Uint32 length; /**< Duration of the effect. */ + Uint16 delay; /**< Delay before starting the effect. */ + + /* Trigger */ + Uint16 button; /**< Button that triggers the effect. */ + Uint16 interval; /**< How soon it can be triggered again after button. */ + + /* Custom */ + Uint8 channels; /**< Axes to use, minimum of one. */ + Uint16 period; /**< Sample periods. */ + Uint16 samples; /**< Amount of samples. */ + Uint16 *data; /**< Should contain channels*samples items. */ + + /* Envelope */ + Uint16 attack_length; /**< Duration of the attack. */ + Uint16 attack_level; /**< Level at the start of the attack. */ + Uint16 fade_length; /**< Duration of the fade. */ + Uint16 fade_level; /**< Level at the end of the fade. */ +} SDL_HapticCustom; + +/** + * \brief The generic template for any haptic effect. + * + * All values max at 32767 (0x7FFF). Signed values also can be negative. + * Time values unless specified otherwise are in milliseconds. + * + * You can also pass ::SDL_HAPTIC_INFINITY to length instead of a 0-32767 + * value. Neither delay, interval, attack_length nor fade_length support + * ::SDL_HAPTIC_INFINITY. Fade will also not be used since effect never ends. + * + * Additionally, the ::SDL_HAPTIC_RAMP effect does not support a duration of + * ::SDL_HAPTIC_INFINITY. + * + * Button triggers may not be supported on all devices, it is advised to not + * use them if possible. Buttons start at index 1 instead of index 0 like + * the joystick. + * + * If both attack_length and fade_level are 0, the envelope is not used, + * otherwise both values are used. + * + * Common parts: + * \code + * // Replay - All effects have this + * Uint32 length; // Duration of effect (ms). + * Uint16 delay; // Delay before starting effect. + * + * // Trigger - All effects have this + * Uint16 button; // Button that triggers effect. + * Uint16 interval; // How soon before effect can be triggered again. + * + * // Envelope - All effects except condition effects have this + * Uint16 attack_length; // Duration of the attack (ms). + * Uint16 attack_level; // Level at the start of the attack. + * Uint16 fade_length; // Duration of the fade out (ms). + * Uint16 fade_level; // Level at the end of the fade. + * \endcode + * + * + * Here we have an example of a constant effect evolution in time: + * \verbatim + Strength + ^ + | + | effect level --> _________________ + | / \ + | / \ + | / \ + | / \ + | attack_level --> | \ + | | | <--- fade_level + | + +--------------------------------------------------> Time + [--] [---] + attack_length fade_length + + [------------------][-----------------------] + delay length + \endverbatim + * + * Note either the attack_level or the fade_level may be above the actual + * effect level. + * + * \sa SDL_HapticConstant + * \sa SDL_HapticPeriodic + * \sa SDL_HapticCondition + * \sa SDL_HapticRamp + * \sa SDL_HapticLeftRight + * \sa SDL_HapticCustom + */ +typedef union SDL_HapticEffect +{ + /* Common for all force feedback effects */ + Uint16 type; /**< Effect type. */ + SDL_HapticConstant constant; /**< Constant effect. */ + SDL_HapticPeriodic periodic; /**< Periodic effect. */ + SDL_HapticCondition condition; /**< Condition effect. */ + SDL_HapticRamp ramp; /**< Ramp effect. */ + SDL_HapticLeftRight leftright; /**< Left/Right effect. */ + SDL_HapticCustom custom; /**< Custom effect. */ +} SDL_HapticEffect; + + +/* Function prototypes */ + +/** + * Count the number of haptic devices attached to the system. + * + * \returns the number of haptic devices detected on the system or a negative + * error code on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticName + */ +extern DECLSPEC int SDLCALL SDL_NumHaptics(void); + +/** + * Get the implementation dependent name of a haptic device. + * + * This can be called before any joysticks are opened. If no name can be + * found, this function returns NULL. + * + * \param device_index index of the device to query. + * \returns the name of the device or NULL on failure; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_NumHaptics + */ +extern DECLSPEC const char *SDLCALL SDL_HapticName(int device_index); + +/** + * Open a haptic device for use. + * + * The index passed as an argument refers to the N'th haptic device on this + * system. + * + * When opening a haptic device, its gain will be set to maximum and + * autocenter will be disabled. To modify these values use SDL_HapticSetGain() + * and SDL_HapticSetAutocenter(). + * + * \param device_index index of the device to open + * \returns the device identifier or NULL on failure; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticClose + * \sa SDL_HapticIndex + * \sa SDL_HapticOpenFromJoystick + * \sa SDL_HapticOpenFromMouse + * \sa SDL_HapticPause + * \sa SDL_HapticSetAutocenter + * \sa SDL_HapticSetGain + * \sa SDL_HapticStopAll + */ +extern DECLSPEC SDL_Haptic *SDLCALL SDL_HapticOpen(int device_index); + +/** + * Check if the haptic device at the designated index has been opened. + * + * \param device_index the index of the device to query + * \returns 1 if it has been opened, 0 if it hasn't or on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticIndex + * \sa SDL_HapticOpen + */ +extern DECLSPEC int SDLCALL SDL_HapticOpened(int device_index); + +/** + * Get the index of a haptic device. + * + * \param haptic the SDL_Haptic device to query + * \returns the index of the specified haptic device or a negative error code + * on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticOpen + * \sa SDL_HapticOpened + */ +extern DECLSPEC int SDLCALL SDL_HapticIndex(SDL_Haptic * haptic); + +/** + * Query whether or not the current mouse has haptic capabilities. + * + * \returns SDL_TRUE if the mouse is haptic or SDL_FALSE if it isn't. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticOpenFromMouse + */ +extern DECLSPEC int SDLCALL SDL_MouseIsHaptic(void); + +/** + * Try to open a haptic device from the current mouse. + * + * \returns the haptic device identifier or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticOpen + * \sa SDL_MouseIsHaptic + */ +extern DECLSPEC SDL_Haptic *SDLCALL SDL_HapticOpenFromMouse(void); + +/** + * Query if a joystick has haptic features. + * + * \param joystick the SDL_Joystick to test for haptic capabilities + * \returns SDL_TRUE if the joystick is haptic, SDL_FALSE if it isn't, or a + * negative error code on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticOpenFromJoystick + */ +extern DECLSPEC int SDLCALL SDL_JoystickIsHaptic(SDL_Joystick * joystick); + +/** + * Open a haptic device for use from a joystick device. + * + * You must still close the haptic device separately. It will not be closed + * with the joystick. + * + * When opened from a joystick you should first close the haptic device before + * closing the joystick device. If not, on some implementations the haptic + * device will also get unallocated and you'll be unable to use force feedback + * on that device. + * + * \param joystick the SDL_Joystick to create a haptic device from + * \returns a valid haptic device identifier on success or NULL on failure; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticClose + * \sa SDL_HapticOpen + * \sa SDL_JoystickIsHaptic + */ +extern DECLSPEC SDL_Haptic *SDLCALL SDL_HapticOpenFromJoystick(SDL_Joystick * + joystick); + +/** + * Close a haptic device previously opened with SDL_HapticOpen(). + * + * \param haptic the SDL_Haptic device to close + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticOpen + */ +extern DECLSPEC void SDLCALL SDL_HapticClose(SDL_Haptic * haptic); + +/** + * Get the number of effects a haptic device can store. + * + * On some platforms this isn't fully supported, and therefore is an + * approximation. Always check to see if your created effect was actually + * created and do not rely solely on SDL_HapticNumEffects(). + * + * \param haptic the SDL_Haptic device to query + * \returns the number of effects the haptic device can store or a negative + * error code on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticNumEffectsPlaying + * \sa SDL_HapticQuery + */ +extern DECLSPEC int SDLCALL SDL_HapticNumEffects(SDL_Haptic * haptic); + +/** + * Get the number of effects a haptic device can play at the same time. + * + * This is not supported on all platforms, but will always return a value. + * + * \param haptic the SDL_Haptic device to query maximum playing effects + * \returns the number of effects the haptic device can play at the same time + * or a negative error code on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticNumEffects + * \sa SDL_HapticQuery + */ +extern DECLSPEC int SDLCALL SDL_HapticNumEffectsPlaying(SDL_Haptic * haptic); + +/** + * Get the haptic device's supported features in bitwise manner. + * + * \param haptic the SDL_Haptic device to query + * \returns a list of supported haptic features in bitwise manner (OR'd), or 0 + * on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticEffectSupported + * \sa SDL_HapticNumEffects + */ +extern DECLSPEC unsigned int SDLCALL SDL_HapticQuery(SDL_Haptic * haptic); + + +/** + * Get the number of haptic axes the device has. + * + * The number of haptic axes might be useful if working with the + * SDL_HapticDirection effect. + * + * \param haptic the SDL_Haptic device to query + * \returns the number of axes on success or a negative error code on failure; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_HapticNumAxes(SDL_Haptic * haptic); + +/** + * Check to see if an effect is supported by a haptic device. + * + * \param haptic the SDL_Haptic device to query + * \param effect the desired effect to query + * \returns SDL_TRUE if effect is supported, SDL_FALSE if it isn't, or a + * negative error code on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticNewEffect + * \sa SDL_HapticQuery + */ +extern DECLSPEC int SDLCALL SDL_HapticEffectSupported(SDL_Haptic * haptic, + SDL_HapticEffect * + effect); + +/** + * Create a new haptic effect on a specified device. + * + * \param haptic an SDL_Haptic device to create the effect on + * \param effect an SDL_HapticEffect structure containing the properties of + * the effect to create + * \returns the ID of the effect on success or a negative error code on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticDestroyEffect + * \sa SDL_HapticRunEffect + * \sa SDL_HapticUpdateEffect + */ +extern DECLSPEC int SDLCALL SDL_HapticNewEffect(SDL_Haptic * haptic, + SDL_HapticEffect * effect); + +/** + * Update the properties of an effect. + * + * Can be used dynamically, although behavior when dynamically changing + * direction may be strange. Specifically the effect may re-upload itself and + * start playing from the start. You also cannot change the type either when + * running SDL_HapticUpdateEffect(). + * + * \param haptic the SDL_Haptic device that has the effect + * \param effect the identifier of the effect to update + * \param data an SDL_HapticEffect structure containing the new effect + * properties to use + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticDestroyEffect + * \sa SDL_HapticNewEffect + * \sa SDL_HapticRunEffect + */ +extern DECLSPEC int SDLCALL SDL_HapticUpdateEffect(SDL_Haptic * haptic, + int effect, + SDL_HapticEffect * data); + +/** + * Run the haptic effect on its associated haptic device. + * + * To repeat the effect over and over indefinitely, set `iterations` to + * `SDL_HAPTIC_INFINITY`. (Repeats the envelope - attack and fade.) To make + * one instance of the effect last indefinitely (so the effect does not fade), + * set the effect's `length` in its structure/union to `SDL_HAPTIC_INFINITY` + * instead. + * + * \param haptic the SDL_Haptic device to run the effect on + * \param effect the ID of the haptic effect to run + * \param iterations the number of iterations to run the effect; use + * `SDL_HAPTIC_INFINITY` to repeat forever + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticDestroyEffect + * \sa SDL_HapticGetEffectStatus + * \sa SDL_HapticStopEffect + */ +extern DECLSPEC int SDLCALL SDL_HapticRunEffect(SDL_Haptic * haptic, + int effect, + Uint32 iterations); + +/** + * Stop the haptic effect on its associated haptic device. + * + * * + * + * \param haptic the SDL_Haptic device to stop the effect on + * \param effect the ID of the haptic effect to stop + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticDestroyEffect + * \sa SDL_HapticRunEffect + */ +extern DECLSPEC int SDLCALL SDL_HapticStopEffect(SDL_Haptic * haptic, + int effect); + +/** + * Destroy a haptic effect on the device. + * + * This will stop the effect if it's running. Effects are automatically + * destroyed when the device is closed. + * + * \param haptic the SDL_Haptic device to destroy the effect on + * \param effect the ID of the haptic effect to destroy + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticNewEffect + */ +extern DECLSPEC void SDLCALL SDL_HapticDestroyEffect(SDL_Haptic * haptic, + int effect); + +/** + * Get the status of the current effect on the specified haptic device. + * + * Device must support the SDL_HAPTIC_STATUS feature. + * + * \param haptic the SDL_Haptic device to query for the effect status on + * \param effect the ID of the haptic effect to query its status + * \returns 0 if it isn't playing, 1 if it is playing, or a negative error + * code on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticRunEffect + * \sa SDL_HapticStopEffect + */ +extern DECLSPEC int SDLCALL SDL_HapticGetEffectStatus(SDL_Haptic * haptic, + int effect); + +/** + * Set the global gain of the specified haptic device. + * + * Device must support the SDL_HAPTIC_GAIN feature. + * + * The user may specify the maximum gain by setting the environment variable + * `SDL_HAPTIC_GAIN_MAX` which should be between 0 and 100. All calls to + * SDL_HapticSetGain() will scale linearly using `SDL_HAPTIC_GAIN_MAX` as the + * maximum. + * + * \param haptic the SDL_Haptic device to set the gain on + * \param gain value to set the gain to, should be between 0 and 100 (0 - 100) + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticQuery + */ +extern DECLSPEC int SDLCALL SDL_HapticSetGain(SDL_Haptic * haptic, int gain); + +/** + * Set the global autocenter of the device. + * + * Autocenter should be between 0 and 100. Setting it to 0 will disable + * autocentering. + * + * Device must support the SDL_HAPTIC_AUTOCENTER feature. + * + * \param haptic the SDL_Haptic device to set autocentering on + * \param autocenter value to set autocenter to (0-100) + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticQuery + */ +extern DECLSPEC int SDLCALL SDL_HapticSetAutocenter(SDL_Haptic * haptic, + int autocenter); + +/** + * Pause a haptic device. + * + * Device must support the `SDL_HAPTIC_PAUSE` feature. Call + * SDL_HapticUnpause() to resume playback. + * + * Do not modify the effects nor add new ones while the device is paused. That + * can cause all sorts of weird errors. + * + * \param haptic the SDL_Haptic device to pause + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticUnpause + */ +extern DECLSPEC int SDLCALL SDL_HapticPause(SDL_Haptic * haptic); + +/** + * Unpause a haptic device. + * + * Call to unpause after SDL_HapticPause(). + * + * \param haptic the SDL_Haptic device to unpause + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticPause + */ +extern DECLSPEC int SDLCALL SDL_HapticUnpause(SDL_Haptic * haptic); + +/** + * Stop all the currently playing effects on a haptic device. + * + * \param haptic the SDL_Haptic device to stop + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_HapticStopAll(SDL_Haptic * haptic); + +/** + * Check whether rumble is supported on a haptic device. + * + * \param haptic haptic device to check for rumble support + * \returns SDL_TRUE if effect is supported, SDL_FALSE if it isn't, or a + * negative error code on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticRumbleInit + * \sa SDL_HapticRumblePlay + * \sa SDL_HapticRumbleStop + */ +extern DECLSPEC int SDLCALL SDL_HapticRumbleSupported(SDL_Haptic * haptic); + +/** + * Initialize a haptic device for simple rumble playback. + * + * \param haptic the haptic device to initialize for simple rumble playback + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticOpen + * \sa SDL_HapticRumblePlay + * \sa SDL_HapticRumbleStop + * \sa SDL_HapticRumbleSupported + */ +extern DECLSPEC int SDLCALL SDL_HapticRumbleInit(SDL_Haptic * haptic); + +/** + * Run a simple rumble effect on a haptic device. + * + * \param haptic the haptic device to play the rumble effect on + * \param strength strength of the rumble to play as a 0-1 float value + * \param length length of the rumble to play in milliseconds + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticRumbleInit + * \sa SDL_HapticRumbleStop + * \sa SDL_HapticRumbleSupported + */ +extern DECLSPEC int SDLCALL SDL_HapticRumblePlay(SDL_Haptic * haptic, float strength, Uint32 length ); + +/** + * Stop the simple rumble on a haptic device. + * + * \param haptic the haptic device to stop the rumble effect on + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HapticRumbleInit + * \sa SDL_HapticRumblePlay + * \sa SDL_HapticRumbleSupported + */ +extern DECLSPEC int SDLCALL SDL_HapticRumbleStop(SDL_Haptic * haptic); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_haptic_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3373e601d90a2eebffc21768a8301f22ddb1cad8 GIT binary patch literal 66020 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_hidapi.h + * + * Header file for SDL HIDAPI functions. + * + * This is an adaptation of the original HIDAPI interface by Alan Ott, + * and includes source code licensed under the following BSD license: + * + Copyright (c) 2010, Alan Ott, Signal 11 Software + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of Signal 11 Software nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + * + * If you would like a version of SDL without this code, you can build SDL + * with SDL_HIDAPI_DISABLED defined to 1. You might want to do this for example + * on iOS or tvOS to avoid a dependency on the CoreBluetooth framework. + */ + +#ifndef SDL_hidapi_h_ +#define SDL_hidapi_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \brief A handle representing an open HID device + */ +struct SDL_hid_device_; +typedef struct SDL_hid_device_ SDL_hid_device; /**< opaque hidapi structure */ + +/** hidapi info structure */ +/** + * \brief Information about a connected HID device + */ +typedef struct SDL_hid_device_info +{ + /** Platform-specific device path */ + char *path; + /** Device Vendor ID */ + unsigned short vendor_id; + /** Device Product ID */ + unsigned short product_id; + /** Serial Number */ + wchar_t *serial_number; + /** Device Release Number in binary-coded decimal, + also known as Device Version Number */ + unsigned short release_number; + /** Manufacturer String */ + wchar_t *manufacturer_string; + /** Product string */ + wchar_t *product_string; + /** Usage Page for this Device/Interface + (Windows/Mac only). */ + unsigned short usage_page; + /** Usage for this Device/Interface + (Windows/Mac only).*/ + unsigned short usage; + /** The USB interface which this logical device + represents. + + * Valid on both Linux implementations in all cases. + * Valid on the Windows implementation only if the device + contains more than one interface. */ + int interface_number; + + /** Additional information about the USB interface. + Valid on libusb and Android implementations. */ + int interface_class; + int interface_subclass; + int interface_protocol; + + /** Pointer to the next device */ + struct SDL_hid_device_info *next; +} SDL_hid_device_info; + + +/** + * Initialize the HIDAPI library. + * + * This function initializes the HIDAPI library. Calling it is not strictly + * necessary, as it will be called automatically by SDL_hid_enumerate() and + * any of the SDL_hid_open_*() functions if it is needed. This function should + * be called at the beginning of execution however, if there is a chance of + * HIDAPI handles being opened by different threads simultaneously. + * + * Each call to this function should have a matching call to SDL_hid_exit() + * + * \returns 0 on success and -1 on error. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_hid_exit + */ +extern DECLSPEC int SDLCALL SDL_hid_init(void); + +/** + * Finalize the HIDAPI library. + * + * This function frees all of the static data associated with HIDAPI. It + * should be called at the end of execution to avoid memory leaks. + * + * \returns 0 on success and -1 on error. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_hid_init + */ +extern DECLSPEC int SDLCALL SDL_hid_exit(void); + +/** + * Check to see if devices may have been added or removed. + * + * Enumerating the HID devices is an expensive operation, so you can call this + * to see if there have been any system device changes since the last call to + * this function. A change in the counter returned doesn't necessarily mean + * that anything has changed, but you can call SDL_hid_enumerate() to get an + * updated device list. + * + * Calling this function for the first time may cause a thread or other system + * resource to be allocated to track device change notifications. + * + * \returns a change counter that is incremented with each potential device + * change, or 0 if device change detection isn't available. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_hid_enumerate + */ +extern DECLSPEC Uint32 SDLCALL SDL_hid_device_change_count(void); + +/** + * Enumerate the HID Devices. + * + * This function returns a linked list of all the HID devices attached to the + * system which match vendor_id and product_id. If `vendor_id` is set to 0 + * then any vendor matches. If `product_id` is set to 0 then any product + * matches. If `vendor_id` and `product_id` are both set to 0, then all HID + * devices will be returned. + * + * \param vendor_id The Vendor ID (VID) of the types of device to open. + * \param product_id The Product ID (PID) of the types of device to open. + * \returns a pointer to a linked list of type SDL_hid_device_info, containing + * information about the HID devices attached to the system, or NULL + * in the case of failure. Free this linked list by calling + * SDL_hid_free_enumeration(). + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_hid_device_change_count + */ +extern DECLSPEC SDL_hid_device_info * SDLCALL SDL_hid_enumerate(unsigned short vendor_id, unsigned short product_id); + +/** + * Free an enumeration Linked List + * + * This function frees a linked list created by SDL_hid_enumerate(). + * + * \param devs Pointer to a list of struct_device returned from + * SDL_hid_enumerate(). + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC void SDLCALL SDL_hid_free_enumeration(SDL_hid_device_info *devs); + +/** + * Open a HID device using a Vendor ID (VID), Product ID (PID) and optionally + * a serial number. + * + * If `serial_number` is NULL, the first device with the specified VID and PID + * is opened. + * + * \param vendor_id The Vendor ID (VID) of the device to open. + * \param product_id The Product ID (PID) of the device to open. + * \param serial_number The Serial Number of the device to open (Optionally + * NULL). + * \returns a pointer to a SDL_hid_device object on success or NULL on + * failure. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC SDL_hid_device * SDLCALL SDL_hid_open(unsigned short vendor_id, unsigned short product_id, const wchar_t *serial_number); + +/** + * Open a HID device by its path name. + * + * The path name be determined by calling SDL_hid_enumerate(), or a + * platform-specific path name can be used (eg: /dev/hidraw0 on Linux). + * + * \param path The path name of the device to open + * \returns a pointer to a SDL_hid_device object on success or NULL on + * failure. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC SDL_hid_device * SDLCALL SDL_hid_open_path(const char *path, int bExclusive /* = false */); + +/** + * Write an Output report to a HID device. + * + * The first byte of `data` must contain the Report ID. For devices which only + * support a single report, this must be set to 0x0. The remaining bytes + * contain the report data. Since the Report ID is mandatory, calls to + * SDL_hid_write() will always contain one more byte than the report contains. + * For example, if a hid report is 16 bytes long, 17 bytes must be passed to + * SDL_hid_write(), the Report ID (or 0x0, for devices with a single report), + * followed by the report data (16 bytes). In this example, the length passed + * in would be 17. + * + * SDL_hid_write() will send the data on the first OUT endpoint, if one + * exists. If it does not, it will send the data through the Control Endpoint + * (Endpoint 0). + * + * \param dev A device handle returned from SDL_hid_open(). + * \param data The data to send, including the report number as the first + * byte. + * \param length The length in bytes of the data to send. + * \returns the actual number of bytes written and -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_write(SDL_hid_device *dev, const unsigned char *data, size_t length); + +/** + * Read an Input report from a HID device with timeout. + * + * Input reports are returned to the host through the INTERRUPT IN endpoint. + * The first byte will contain the Report number if the device uses numbered + * reports. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param data A buffer to put the read data into. + * \param length The number of bytes to read. For devices with multiple + * reports, make sure to read an extra byte for the report + * number. + * \param milliseconds timeout in milliseconds or -1 for blocking wait. + * \returns the actual number of bytes read and -1 on error. If no packet was + * available to be read within the timeout period, this function + * returns 0. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_read_timeout(SDL_hid_device *dev, unsigned char *data, size_t length, int milliseconds); + +/** + * Read an Input report from a HID device. + * + * Input reports are returned to the host through the INTERRUPT IN endpoint. + * The first byte will contain the Report number if the device uses numbered + * reports. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param data A buffer to put the read data into. + * \param length The number of bytes to read. For devices with multiple + * reports, make sure to read an extra byte for the report + * number. + * \returns the actual number of bytes read and -1 on error. If no packet was + * available to be read and the handle is in non-blocking mode, this + * function returns 0. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_read(SDL_hid_device *dev, unsigned char *data, size_t length); + +/** + * Set the device handle to be non-blocking. + * + * In non-blocking mode calls to SDL_hid_read() will return immediately with a + * value of 0 if there is no data to be read. In blocking mode, SDL_hid_read() + * will wait (block) until there is data to read before returning. + * + * Nonblocking can be turned on and off at any time. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param nonblock enable or not the nonblocking reads - 1 to enable + * nonblocking - 0 to disable nonblocking. + * \returns 0 on success and -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_set_nonblocking(SDL_hid_device *dev, int nonblock); + +/** + * Send a Feature report to the device. + * + * Feature reports are sent over the Control endpoint as a Set_Report + * transfer. The first byte of `data` must contain the Report ID. For devices + * which only support a single report, this must be set to 0x0. The remaining + * bytes contain the report data. Since the Report ID is mandatory, calls to + * SDL_hid_send_feature_report() will always contain one more byte than the + * report contains. For example, if a hid report is 16 bytes long, 17 bytes + * must be passed to SDL_hid_send_feature_report(): the Report ID (or 0x0, for + * devices which do not use numbered reports), followed by the report data (16 + * bytes). In this example, the length passed in would be 17. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param data The data to send, including the report number as the first + * byte. + * \param length The length in bytes of the data to send, including the report + * number. + * \returns the actual number of bytes written and -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_send_feature_report(SDL_hid_device *dev, const unsigned char *data, size_t length); + +/** + * Get a feature report from a HID device. + * + * Set the first byte of `data` to the Report ID of the report to be read. + * Make sure to allow space for this extra byte in `data`. Upon return, the + * first byte will still contain the Report ID, and the report data will start + * in data[1]. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param data A buffer to put the read data into, including the Report ID. + * Set the first byte of `data` to the Report ID of the report to + * be read, or set it to zero if your device does not use numbered + * reports. + * \param length The number of bytes to read, including an extra byte for the + * report ID. The buffer can be longer than the actual report. + * \returns the number of bytes read plus one for the report ID (which is + * still in the first byte), or -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_get_feature_report(SDL_hid_device *dev, unsigned char *data, size_t length); + +/** + * Close a HID device. + * + * \param dev A device handle returned from SDL_hid_open(). + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC void SDLCALL SDL_hid_close(SDL_hid_device *dev); + +/** + * Get The Manufacturer String from a HID device. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param string A wide string buffer to put the data into. + * \param maxlen The length of the buffer in multiples of wchar_t. + * \returns 0 on success and -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_get_manufacturer_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen); + +/** + * Get The Product String from a HID device. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param string A wide string buffer to put the data into. + * \param maxlen The length of the buffer in multiples of wchar_t. + * \returns 0 on success and -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_get_product_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen); + +/** + * Get The Serial Number String from a HID device. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param string A wide string buffer to put the data into. + * \param maxlen The length of the buffer in multiples of wchar_t. + * \returns 0 on success and -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_get_serial_number_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen); + +/** + * Get a string from a HID device, based on its string index. + * + * \param dev A device handle returned from SDL_hid_open(). + * \param string_index The index of the string to get. + * \param string A wide string buffer to put the data into. + * \param maxlen The length of the buffer in multiples of wchar_t. + * \returns 0 on success and -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_hid_get_indexed_string(SDL_hid_device *dev, int string_index, wchar_t *string, size_t maxlen); + +/** + * Start or stop a BLE scan on iOS and tvOS to pair Steam Controllers + * + * \param active SDL_TRUE to start the scan, SDL_FALSE to stop the scan + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC void SDLCALL SDL_hid_ble_scan(SDL_bool active); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_hidapi_h_ */ + +/* vi: set sts=4 ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..35884d7dd58fb32917fae3830a709e2e2c44a0d3 GIT binary patch literal 31535 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 F{XcrJ)sg@J literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h new file mode 100644 index 00000000..00beef51 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h @@ -0,0 +1,2624 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_hints.h + * + * Official documentation for SDL configuration variables + * + * This file contains functions to set and get configuration hints, + * as well as listing each of them alphabetically. + * + * The convention for naming hints is SDL_HINT_X, where "SDL_X" is + * the environment variable that can be used to override the default. + * + * In general these hints are just that - they may or may not be + * supported or applicable on any given platform, but they provide + * a way for an application or user to give the library a hint as + * to how they would like the library to work. + */ + +#ifndef SDL_hints_h_ +#define SDL_hints_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \brief A variable controlling whether the Android / iOS built-in + * accelerometer should be listed as a joystick device. + * + * This variable can be set to the following values: + * "0" - The accelerometer is not listed as a joystick + * "1" - The accelerometer is available as a 3 axis joystick (the default). + */ +#define SDL_HINT_ACCELEROMETER_AS_JOYSTICK "SDL_ACCELEROMETER_AS_JOYSTICK" + +/** + * \brief Specify the behavior of Alt+Tab while the keyboard is grabbed. + * + * By default, SDL emulates Alt+Tab functionality while the keyboard is grabbed + * and your window is full-screen. This prevents the user from getting stuck in + * your application if you've enabled keyboard grab. + * + * The variable can be set to the following values: + * "0" - SDL will not handle Alt+Tab. Your application is responsible + for handling Alt+Tab while the keyboard is grabbed. + * "1" - SDL will minimize your window when Alt+Tab is pressed (default) +*/ +#define SDL_HINT_ALLOW_ALT_TAB_WHILE_GRABBED "SDL_ALLOW_ALT_TAB_WHILE_GRABBED" + +/** + * \brief If set to "0" then never set the top most bit on a SDL Window, even if the video mode expects it. + * This is a debugging aid for developers and not expected to be used by end users. The default is "1" + * + * This variable can be set to the following values: + * "0" - don't allow topmost + * "1" - allow topmost + */ +#define SDL_HINT_ALLOW_TOPMOST "SDL_ALLOW_TOPMOST" + +/** + * \brief Android APK expansion main file version. Should be a string number like "1", "2" etc. + * + * Must be set together with SDL_HINT_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION. + * + * If both hints were set then SDL_RWFromFile() will look into expansion files + * after a given relative path was not found in the internal storage and assets. + * + * By default this hint is not set and the APK expansion files are not searched. + */ +#define SDL_HINT_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION "SDL_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION" + +/** + * \brief Android APK expansion patch file version. Should be a string number like "1", "2" etc. + * + * Must be set together with SDL_HINT_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION. + * + * If both hints were set then SDL_RWFromFile() will look into expansion files + * after a given relative path was not found in the internal storage and assets. + * + * By default this hint is not set and the APK expansion files are not searched. + */ +#define SDL_HINT_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION "SDL_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION" + +/** + * \brief A variable to control whether the event loop will block itself when the app is paused. + * + * The variable can be set to the following values: + * "0" - Non blocking. + * "1" - Blocking. (default) + * + * The value should be set before SDL is initialized. + */ +#define SDL_HINT_ANDROID_BLOCK_ON_PAUSE "SDL_ANDROID_BLOCK_ON_PAUSE" + +/** + * \brief A variable to control whether SDL will pause audio in background + * (Requires SDL_ANDROID_BLOCK_ON_PAUSE as "Non blocking") + * + * The variable can be set to the following values: + * "0" - Non paused. + * "1" - Paused. (default) + * + * The value should be set before SDL is initialized. + */ +#define SDL_HINT_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO "SDL_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO" + +/** + * \brief A variable to control whether we trap the Android back button to handle it manually. + * This is necessary for the right mouse button to work on some Android devices, or + * to be able to trap the back button for use in your code reliably. If set to true, + * the back button will show up as an SDL_KEYDOWN / SDL_KEYUP pair with a keycode of + * SDL_SCANCODE_AC_BACK. + * + * The variable can be set to the following values: + * "0" - Back button will be handled as usual for system. (default) + * "1" - Back button will be trapped, allowing you to handle the key press + * manually. (This will also let right mouse click work on systems + * where the right mouse button functions as back.) + * + * The value of this hint is used at runtime, so it can be changed at any time. + */ +#define SDL_HINT_ANDROID_TRAP_BACK_BUTTON "SDL_ANDROID_TRAP_BACK_BUTTON" + +/** + * \brief Specify an application name. + * + * This hint lets you specify the application name sent to the OS when + * required. For example, this will often appear in volume control applets for + * audio streams, and in lists of applications which are inhibiting the + * screensaver. You should use a string that describes your program ("My Game + * 2: The Revenge") + * + * Setting this to "" or leaving it unset will have SDL use a reasonable + * default: probably the application's name or "SDL Application" if SDL + * doesn't have any better information. + * + * Note that, for audio streams, this can be overridden with + * SDL_HINT_AUDIO_DEVICE_APP_NAME. + * + * On targets where this is not supported, this hint does nothing. + */ +#define SDL_HINT_APP_NAME "SDL_APP_NAME" + +/** + * \brief A variable controlling whether controllers used with the Apple TV + * generate UI events. + * + * When UI events are generated by controller input, the app will be + * backgrounded when the Apple TV remote's menu button is pressed, and when the + * pause or B buttons on gamepads are pressed. + * + * More information about properly making use of controllers for the Apple TV + * can be found here: + * https://developer.apple.com/tvos/human-interface-guidelines/remote-and-controllers/ + * + * This variable can be set to the following values: + * "0" - Controller input does not generate UI events (the default). + * "1" - Controller input generates UI events. + */ +#define SDL_HINT_APPLE_TV_CONTROLLER_UI_EVENTS "SDL_APPLE_TV_CONTROLLER_UI_EVENTS" + +/** + * \brief A variable controlling whether the Apple TV remote's joystick axes + * will automatically match the rotation of the remote. + * + * This variable can be set to the following values: + * "0" - Remote orientation does not affect joystick axes (the default). + * "1" - Joystick axes are based on the orientation of the remote. + */ +#define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION" + +/** + * \brief A variable controlling the audio category on iOS and Mac OS X + * + * This variable can be set to the following values: + * + * "ambient" - Use the AVAudioSessionCategoryAmbient audio category, will be muted by the phone mute switch (default) + * "playback" - Use the AVAudioSessionCategoryPlayback category + * + * For more information, see Apple's documentation: + * https://developer.apple.com/library/content/documentation/Audio/Conceptual/AudioSessionProgrammingGuide/AudioSessionCategoriesandModes/AudioSessionCategoriesandModes.html + */ +#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" + +/** + * \brief Specify an application name for an audio device. + * + * Some audio backends (such as PulseAudio) allow you to describe your audio + * stream. Among other things, this description might show up in a system + * control panel that lets the user adjust the volume on specific audio + * streams instead of using one giant master volume slider. + * + * This hints lets you transmit that information to the OS. The contents of + * this hint are used while opening an audio device. You should use a string + * that describes your program ("My Game 2: The Revenge") + * + * Setting this to "" or leaving it unset will have SDL use a reasonable + * default: this will be the name set with SDL_HINT_APP_NAME, if that hint is + * set. Otherwise, it'll probably the application's name or "SDL Application" + * if SDL doesn't have any better information. + * + * On targets where this is not supported, this hint does nothing. + */ +#define SDL_HINT_AUDIO_DEVICE_APP_NAME "SDL_AUDIO_DEVICE_APP_NAME" + +/** + * \brief Specify an application name for an audio device. + * + * Some audio backends (such as PulseAudio) allow you to describe your audio + * stream. Among other things, this description might show up in a system + * control panel that lets the user adjust the volume on specific audio + * streams instead of using one giant master volume slider. + * + * This hints lets you transmit that information to the OS. The contents of + * this hint are used while opening an audio device. You should use a string + * that describes your what your program is playing ("audio stream" is + * probably sufficient in many cases, but this could be useful for something + * like "team chat" if you have a headset playing VoIP audio separately). + * + * Setting this to "" or leaving it unset will have SDL use a reasonable + * default: "audio stream" or something similar. + * + * On targets where this is not supported, this hint does nothing. + */ +#define SDL_HINT_AUDIO_DEVICE_STREAM_NAME "SDL_AUDIO_DEVICE_STREAM_NAME" + +/** + * \brief Specify an application role for an audio device. + * + * Some audio backends (such as Pipewire) allow you to describe the role of + * your audio stream. Among other things, this description might show up in + * a system control panel or software for displaying and manipulating media + * playback/capture graphs. + * + * This hints lets you transmit that information to the OS. The contents of + * this hint are used while opening an audio device. You should use a string + * that describes your what your program is playing (Game, Music, Movie, + * etc...). + * + * Setting this to "" or leaving it unset will have SDL use a reasonable + * default: "Game" or something similar. + * + * On targets where this is not supported, this hint does nothing. + */ +#define SDL_HINT_AUDIO_DEVICE_STREAM_ROLE "SDL_AUDIO_DEVICE_STREAM_ROLE" + +/** + * \brief A variable controlling speed/quality tradeoff of audio resampling. + * + * If available, SDL can use libsamplerate ( http://www.mega-nerd.com/SRC/ ) + * to handle audio resampling. There are different resampling modes available + * that produce different levels of quality, using more CPU. + * + * If this hint isn't specified to a valid setting, or libsamplerate isn't + * available, SDL will use the default, internal resampling algorithm. + * + * As of SDL 2.26, SDL_ConvertAudio() respects this hint when libsamplerate is available. + * + * This hint is currently only checked at audio subsystem initialization. + * + * This variable can be set to the following values: + * + * "0" or "default" - Use SDL's internal resampling (Default when not set - low quality, fast) + * "1" or "fast" - Use fast, slightly higher quality resampling, if available + * "2" or "medium" - Use medium quality resampling, if available + * "3" or "best" - Use high quality resampling, if available + */ +#define SDL_HINT_AUDIO_RESAMPLING_MODE "SDL_AUDIO_RESAMPLING_MODE" + +/** + * \brief A variable controlling whether SDL updates joystick state when getting input events + * + * This variable can be set to the following values: + * + * "0" - You'll call SDL_JoystickUpdate() manually + * "1" - SDL will automatically call SDL_JoystickUpdate() (default) + * + * This hint can be toggled on and off at runtime. + */ +#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" + +/** + * \brief A variable controlling whether SDL updates sensor state when getting input events + * + * This variable can be set to the following values: + * + * "0" - You'll call SDL_SensorUpdate() manually + * "1" - SDL will automatically call SDL_SensorUpdate() (default) + * + * This hint can be toggled on and off at runtime. + */ +#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" + +/** + * \brief Prevent SDL from using version 4 of the bitmap header when saving BMPs. + * + * The bitmap header version 4 is required for proper alpha channel support and + * SDL will use it when required. Should this not be desired, this hint can + * force the use of the 40 byte header version which is supported everywhere. + * + * The variable can be set to the following values: + * "0" - Surfaces with a colorkey or an alpha channel are saved to a + * 32-bit BMP file with an alpha mask. SDL will use the bitmap + * header version 4 and set the alpha mask accordingly. + * "1" - Surfaces with a colorkey or an alpha channel are saved to a + * 32-bit BMP file without an alpha mask. The alpha channel data + * will be in the file, but applications are going to ignore it. + * + * The default value is "0". + */ +#define SDL_HINT_BMP_SAVE_LEGACY_FORMAT "SDL_BMP_SAVE_LEGACY_FORMAT" + +/** + * \brief Override for SDL_GetDisplayUsableBounds() + * + * If set, this hint will override the expected results for + * SDL_GetDisplayUsableBounds() for display index 0. Generally you don't want + * to do this, but this allows an embedded system to request that some of the + * screen be reserved for other uses when paired with a well-behaved + * application. + * + * The contents of this hint must be 4 comma-separated integers, the first + * is the bounds x, then y, width and height, in that order. + */ +#define SDL_HINT_DISPLAY_USABLE_BOUNDS "SDL_DISPLAY_USABLE_BOUNDS" + +/** + * \brief Disable giving back control to the browser automatically + * when running with asyncify + * + * With -s ASYNCIFY, SDL2 calls emscripten_sleep during operations + * such as refreshing the screen or polling events. + * + * This hint only applies to the emscripten platform + * + * The variable can be set to the following values: + * "0" - Disable emscripten_sleep calls (if you give back browser control manually or use asyncify for other purposes) + * "1" - Enable emscripten_sleep calls (the default) + */ +#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" + +/** + * \brief override the binding element for keyboard inputs for Emscripten builds + * + * This hint only applies to the emscripten platform + * + * The variable can be one of + * "#window" - The javascript window object (this is the default) + * "#document" - The javascript document object + * "#screen" - the javascript window.screen object + * "#canvas" - the WebGL canvas element + * any other string without a leading # sign applies to the element on the page with that ID. + */ +#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" + +/** + * \brief A variable that controls whether the on-screen keyboard should be shown when text input is active + * + * The variable can be set to the following values: + * "0" - Do not show the on-screen keyboard + * "1" - Show the on-screen keyboard + * + * The default value is "1". This hint must be set before text input is activated. + */ +#define SDL_HINT_ENABLE_SCREEN_KEYBOARD "SDL_ENABLE_SCREEN_KEYBOARD" + +/** + * \brief A variable that controls whether Steam Controllers should be exposed using the SDL joystick and game controller APIs + * + * The variable can be set to the following values: + * "0" - Do not scan for Steam Controllers + * "1" - Scan for Steam Controllers (the default) + * + * The default value is "1". This hint must be set before initializing the joystick subsystem. + */ +#define SDL_HINT_ENABLE_STEAM_CONTROLLERS "SDL_ENABLE_STEAM_CONTROLLERS" + +/** + * \brief A variable controlling verbosity of the logging of SDL events pushed onto the internal queue. + * + * This variable can be set to the following values, from least to most verbose: + * + * "0" - Don't log any events (default) + * "1" - Log most events (other than the really spammy ones). + * "2" - Include mouse and finger motion events. + * "3" - Include SDL_SysWMEvent events. + * + * This is generally meant to be used to debug SDL itself, but can be useful + * for application developers that need better visibility into what is going + * on in the event queue. Logged events are sent through SDL_Log(), which + * means by default they appear on stdout on most platforms or maybe + * OutputDebugString() on Windows, and can be funneled by the app with + * SDL_LogSetOutputFunction(), etc. + * + * This hint can be toggled on and off at runtime, if you only need to log + * events for a small subset of program execution. + */ +#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" + +/** + * \brief A variable controlling whether raising the window should be done more forcefully + * + * This variable can be set to the following values: + * "0" - No forcing (the default) + * "1" - Extra level of forcing + * + * At present, this is only an issue under MS Windows, which makes it nearly impossible to + * programmatically move a window to the foreground, for "security" reasons. See + * http://stackoverflow.com/a/34414846 for a discussion. + */ +#define SDL_HINT_FORCE_RAISEWINDOW "SDL_HINT_FORCE_RAISEWINDOW" + +/** + * \brief A variable controlling how 3D acceleration is used to accelerate the SDL screen surface. + * + * SDL can try to accelerate the SDL screen surface by using streaming + * textures with a 3D rendering engine. This variable controls whether and + * how this is done. + * + * This variable can be set to the following values: + * "0" - Disable 3D acceleration + * "1" - Enable 3D acceleration, using the default renderer. + * "X" - Enable 3D acceleration, using X where X is one of the valid rendering drivers. (e.g. "direct3d", "opengl", etc.) + * + * By default SDL tries to make a best guess for each platform whether + * to use acceleration or not. + */ +#define SDL_HINT_FRAMEBUFFER_ACCELERATION "SDL_FRAMEBUFFER_ACCELERATION" + +/** + * \brief A variable that lets you manually hint extra gamecontroller db entries. + * + * The variable should be newline delimited rows of gamecontroller config data, see SDL_gamecontroller.h + * + * This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) + * You can update mappings after the system is initialized with SDL_GameControllerMappingForGUID() and SDL_GameControllerAddMapping() + */ +#define SDL_HINT_GAMECONTROLLERCONFIG "SDL_GAMECONTROLLERCONFIG" + +/** + * \brief A variable that lets you provide a file with extra gamecontroller db entries. + * + * The file should contain lines of gamecontroller config data, see SDL_gamecontroller.h + * + * This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) + * You can update mappings after the system is initialized with SDL_GameControllerMappingForGUID() and SDL_GameControllerAddMapping() + */ +#define SDL_HINT_GAMECONTROLLERCONFIG_FILE "SDL_GAMECONTROLLERCONFIG_FILE" + +/** + * \brief A variable that overrides the automatic controller type detection + * + * The variable should be comma separated entries, in the form: VID/PID=type + * + * The VID and PID should be hexadecimal with exactly 4 digits, e.g. 0x00fd + * + * The type should be one of: + * Xbox360 + * XboxOne + * PS3 + * PS4 + * PS5 + * SwitchPro + * + * This hint affects what driver is used, and must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) + */ +#define SDL_HINT_GAMECONTROLLERTYPE "SDL_GAMECONTROLLERTYPE" + +/** + * \brief A variable containing a list of devices to skip when scanning for game controllers. + * + * The format of the string is a comma separated list of USB VID/PID pairs + * in hexadecimal form, e.g. + * + * 0xAAAA/0xBBBB,0xCCCC/0xDDDD + * + * The variable can also take the form of @file, in which case the named + * file will be loaded and interpreted as the value of the variable. + */ +#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES "SDL_GAMECONTROLLER_IGNORE_DEVICES" + +/** + * \brief If set, all devices will be skipped when scanning for game controllers except for the ones listed in this variable. + * + * The format of the string is a comma separated list of USB VID/PID pairs + * in hexadecimal form, e.g. + * + * 0xAAAA/0xBBBB,0xCCCC/0xDDDD + * + * The variable can also take the form of @file, in which case the named + * file will be loaded and interpreted as the value of the variable. + */ +#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT" + +/** + * \brief If set, game controller face buttons report their values according to their labels instead of their positional layout. + * + * For example, on Nintendo Switch controllers, normally you'd get: + * + * (Y) + * (X) (B) + * (A) + * + * but if this hint is set, you'll get: + * + * (X) + * (Y) (A) + * (B) + * + * The variable can be set to the following values: + * "0" - Report the face buttons by position, as though they were on an Xbox controller. + * "1" - Report the face buttons by label instead of position + * + * The default value is "1". This hint may be set at any time. + */ +#define SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS "SDL_GAMECONTROLLER_USE_BUTTON_LABELS" + +/** + * \brief A variable controlling whether grabbing input grabs the keyboard + * + * This variable can be set to the following values: + * "0" - Grab will affect only the mouse + * "1" - Grab will affect mouse and keyboard + * + * By default SDL will not grab the keyboard so system shortcuts still work. + */ +#define SDL_HINT_GRAB_KEYBOARD "SDL_GRAB_KEYBOARD" + +/** + * \brief A variable containing a list of devices to ignore in SDL_hid_enumerate() + * + * For example, to ignore the Shanwan DS3 controller and any Valve controller, you might + * have the string "0x2563/0x0523,0x28de/0x0000" + */ +#define SDL_HINT_HIDAPI_IGNORE_DEVICES "SDL_HIDAPI_IGNORE_DEVICES" + +/** + * \brief A variable controlling whether the idle timer is disabled on iOS. + * + * When an iOS app does not receive touches for some time, the screen is + * dimmed automatically. For games where the accelerometer is the only input + * this is problematic. This functionality can be disabled by setting this + * hint. + * + * As of SDL 2.0.4, SDL_EnableScreenSaver() and SDL_DisableScreenSaver() + * accomplish the same thing on iOS. They should be preferred over this hint. + * + * This variable can be set to the following values: + * "0" - Enable idle timer + * "1" - Disable idle timer + */ +#define SDL_HINT_IDLE_TIMER_DISABLED "SDL_IOS_IDLE_TIMER_DISABLED" + +/** + * \brief A variable to control whether certain IMEs should handle text editing internally instead of sending SDL_TEXTEDITING events. + * + * The variable can be set to the following values: + * "0" - SDL_TEXTEDITING events are sent, and it is the application's + * responsibility to render the text from these events and + * differentiate it somehow from committed text. (default) + * "1" - If supported by the IME then SDL_TEXTEDITING events are not sent, + * and text that is being composed will be rendered in its own UI. + */ +#define SDL_HINT_IME_INTERNAL_EDITING "SDL_IME_INTERNAL_EDITING" + +/** + * \brief A variable to control whether certain IMEs should show native UI components (such as the Candidate List) instead of suppressing them. + * + * The variable can be set to the following values: + * "0" - Native UI components are not display. (default) + * "1" - Native UI components are displayed. + */ +#define SDL_HINT_IME_SHOW_UI "SDL_IME_SHOW_UI" + +/** + * \brief A variable to control if extended IME text support is enabled. + * If enabled then SDL_TextEditingExtEvent will be issued if the text would be truncated otherwise. + * Additionally SDL_TextInputEvent will be dispatched multiple times so that it is not truncated. + * + * The variable can be set to the following values: + * "0" - Legacy behavior. Text can be truncated, no heap allocations. (default) + * "1" - Modern behavior. + */ +#define SDL_HINT_IME_SUPPORT_EXTENDED_TEXT "SDL_IME_SUPPORT_EXTENDED_TEXT" + +/** + * \brief A variable controlling whether the home indicator bar on iPhone X + * should be hidden. + * + * This variable can be set to the following values: + * "0" - The indicator bar is not hidden (default for windowed applications) + * "1" - The indicator bar is hidden and is shown when the screen is touched (useful for movie playback applications) + * "2" - The indicator bar is dim and the first swipe makes it visible and the second swipe performs the "home" action (default for fullscreen applications) + */ +#define SDL_HINT_IOS_HIDE_HOME_INDICATOR "SDL_IOS_HIDE_HOME_INDICATOR" + +/** + * \brief A variable that lets you enable joystick (and gamecontroller) events even when your app is in the background. + * + * The variable can be set to the following values: + * "0" - Disable joystick & gamecontroller input events when the + * application is in the background. + * "1" - Enable joystick & gamecontroller input events when the + * application is in the background. + * + * The default value is "0". This hint may be set at any time. + */ +#define SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS "SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS" + +/** + * \brief A variable controlling whether the HIDAPI joystick drivers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI drivers are not used + * "1" - HIDAPI drivers are used (the default) + * + * This variable is the default for all drivers, but can be overridden by the hints for specific drivers below. + */ +#define SDL_HINT_JOYSTICK_HIDAPI "SDL_JOYSTICK_HIDAPI" + +/** + * \brief A variable controlling whether the HIDAPI driver for Nintendo GameCube controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_GAMECUBE "SDL_JOYSTICK_HIDAPI_GAMECUBE" + +/** + * \brief A variable controlling whether "low_frequency_rumble" and "high_frequency_rumble" is used to implement + * the GameCube controller's 3 rumble modes, Stop(0), Rumble(1), and StopHard(2) + * this is useful for applications that need full compatibility for things like ADSR envelopes. + * Stop is implemented by setting "low_frequency_rumble" to "0" and "high_frequency_rumble" ">0" + * Rumble is both at any arbitrary value, + * StopHard is implemented by setting both "low_frequency_rumble" and "high_frequency_rumble" to "0" + * + * This variable can be set to the following values: + * "0" - Normal rumble behavior is behavior is used (default) + * "1" - Proper GameCube controller rumble behavior is used + * + */ +#define SDL_HINT_JOYSTICK_GAMECUBE_RUMBLE_BRAKE "SDL_JOYSTICK_GAMECUBE_RUMBLE_BRAKE" + +/** + * \brief A variable controlling whether the HIDAPI driver for Nintendo Switch Joy-Cons should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_JOY_CONS "SDL_JOYSTICK_HIDAPI_JOY_CONS" + +/** + * \brief A variable controlling whether Nintendo Switch Joy-Con controllers will be combined into a single Pro-like controller when using the HIDAPI driver + * + * This variable can be set to the following values: + * "0" - Left and right Joy-Con controllers will not be combined and each will be a mini-gamepad + * "1" - Left and right Joy-Con controllers will be combined into a single controller (the default) + */ +#define SDL_HINT_JOYSTICK_HIDAPI_COMBINE_JOY_CONS "SDL_JOYSTICK_HIDAPI_COMBINE_JOY_CONS" + +/** + * \brief A variable controlling whether Nintendo Switch Joy-Con controllers will be in vertical mode when using the HIDAPI driver + * + * This variable can be set to the following values: + * "0" - Left and right Joy-Con controllers will not be in vertical mode (the default) + * "1" - Left and right Joy-Con controllers will be in vertical mode + * + * This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) + */ +#define SDL_HINT_JOYSTICK_HIDAPI_VERTICAL_JOY_CONS "SDL_JOYSTICK_HIDAPI_VERTICAL_JOY_CONS" + +/** + * \brief A variable controlling whether the HIDAPI driver for Amazon Luna controllers connected via Bluetooth should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_LUNA "SDL_JOYSTICK_HIDAPI_LUNA" + +/** + * \brief A variable controlling whether the HIDAPI driver for Nintendo Online classic controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_NINTENDO_CLASSIC "SDL_JOYSTICK_HIDAPI_NINTENDO_CLASSIC" + +/** + * \brief A variable controlling whether the HIDAPI driver for NVIDIA SHIELD controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_SHIELD "SDL_JOYSTICK_HIDAPI_SHIELD" + +/** + * \brief A variable controlling whether the HIDAPI driver for PS3 controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI on macOS, and "0" on other platforms. + * + * It is not possible to use this driver on Windows, due to limitations in the default drivers + * installed. See https://github.com/ViGEm/DsHidMini for an alternative driver on Windows. + */ +#define SDL_HINT_JOYSTICK_HIDAPI_PS3 "SDL_JOYSTICK_HIDAPI_PS3" + +/** + * \brief A variable controlling whether the HIDAPI driver for PS4 controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_PS4 "SDL_JOYSTICK_HIDAPI_PS4" + +/** + * \brief A variable controlling whether extended input reports should be used for PS4 controllers when using the HIDAPI driver. + * + * This variable can be set to the following values: + * "0" - extended reports are not enabled (the default) + * "1" - extended reports + * + * Extended input reports allow rumble on Bluetooth PS4 controllers, but + * break DirectInput handling for applications that don't use SDL. + * + * Once extended reports are enabled, they can not be disabled without + * power cycling the controller. + * + * For compatibility with applications written for versions of SDL prior + * to the introduction of PS5 controller support, this value will also + * control the state of extended reports on PS5 controllers when the + * SDL_HINT_JOYSTICK_HIDAPI_PS5_RUMBLE hint is not explicitly set. + */ +#define SDL_HINT_JOYSTICK_HIDAPI_PS4_RUMBLE "SDL_JOYSTICK_HIDAPI_PS4_RUMBLE" + +/** + * \brief A variable controlling whether the HIDAPI driver for PS5 controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_PS5 "SDL_JOYSTICK_HIDAPI_PS5" + +/** + * \brief A variable controlling whether the player LEDs should be lit to indicate which player is associated with a PS5 controller. + * + * This variable can be set to the following values: + * "0" - player LEDs are not enabled + * "1" - player LEDs are enabled (the default) + */ +#define SDL_HINT_JOYSTICK_HIDAPI_PS5_PLAYER_LED "SDL_JOYSTICK_HIDAPI_PS5_PLAYER_LED" + +/** + * \brief A variable controlling whether extended input reports should be used for PS5 controllers when using the HIDAPI driver. + * + * This variable can be set to the following values: + * "0" - extended reports are not enabled (the default) + * "1" - extended reports + * + * Extended input reports allow rumble on Bluetooth PS5 controllers, but + * break DirectInput handling for applications that don't use SDL. + * + * Once extended reports are enabled, they can not be disabled without + * power cycling the controller. + * + * For compatibility with applications written for versions of SDL prior + * to the introduction of PS5 controller support, this value defaults to + * the value of SDL_HINT_JOYSTICK_HIDAPI_PS4_RUMBLE. + */ +#define SDL_HINT_JOYSTICK_HIDAPI_PS5_RUMBLE "SDL_JOYSTICK_HIDAPI_PS5_RUMBLE" + +/** + * \brief A variable controlling whether the HIDAPI driver for Google Stadia controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_STADIA "SDL_JOYSTICK_HIDAPI_STADIA" + +/** + * \brief A variable controlling whether the HIDAPI driver for Bluetooth Steam Controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used for Steam Controllers, which requires Bluetooth access + * and may prompt the user for permission on iOS and Android. + * + * The default is "0" + */ +#define SDL_HINT_JOYSTICK_HIDAPI_STEAM "SDL_JOYSTICK_HIDAPI_STEAM" + +/** + * \brief A variable controlling whether the HIDAPI driver for Nintendo Switch controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_SWITCH "SDL_JOYSTICK_HIDAPI_SWITCH" + +/** + * \brief A variable controlling whether the Home button LED should be turned on when a Nintendo Switch Pro controller is opened + * + * This variable can be set to the following values: + * "0" - home button LED is turned off + * "1" - home button LED is turned on + * + * By default the Home button LED state is not changed. This hint can also be set to a floating point value between 0.0 and 1.0 which controls the brightness of the Home button LED. + */ +#define SDL_HINT_JOYSTICK_HIDAPI_SWITCH_HOME_LED "SDL_JOYSTICK_HIDAPI_SWITCH_HOME_LED" + +/** + * \brief A variable controlling whether the Home button LED should be turned on when a Nintendo Switch Joy-Con controller is opened + * + * This variable can be set to the following values: + * "0" - home button LED is turned off + * "1" - home button LED is turned on + * + * By default the Home button LED state is not changed. This hint can also be set to a floating point value between 0.0 and 1.0 which controls the brightness of the Home button LED. + */ +#define SDL_HINT_JOYSTICK_HIDAPI_JOYCON_HOME_LED "SDL_JOYSTICK_HIDAPI_JOYCON_HOME_LED" + +/** + * \brief A variable controlling whether the player LEDs should be lit to indicate which player is associated with a Nintendo Switch controller. + * + * This variable can be set to the following values: + * "0" - player LEDs are not enabled + * "1" - player LEDs are enabled (the default) + */ +#define SDL_HINT_JOYSTICK_HIDAPI_SWITCH_PLAYER_LED "SDL_JOYSTICK_HIDAPI_SWITCH_PLAYER_LED" + +/** + * \brief A variable controlling whether the HIDAPI driver for Nintendo Wii and Wii U controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * This driver doesn't work with the dolphinbar, so the default is SDL_FALSE for now. + */ +#define SDL_HINT_JOYSTICK_HIDAPI_WII "SDL_JOYSTICK_HIDAPI_WII" + +/** + * \brief A variable controlling whether the player LEDs should be lit to indicate which player is associated with a Wii controller. + * + * This variable can be set to the following values: + * "0" - player LEDs are not enabled + * "1" - player LEDs are enabled (the default) + */ +#define SDL_HINT_JOYSTICK_HIDAPI_WII_PLAYER_LED "SDL_JOYSTICK_HIDAPI_WII_PLAYER_LED" + +/** + * \brief A variable controlling whether the HIDAPI driver for XBox controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is "0" on Windows, otherwise the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" + +/** + * \brief A variable controlling whether the HIDAPI driver for XBox 360 controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI_XBOX + */ +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 "SDL_JOYSTICK_HIDAPI_XBOX_360" + +/** + * \brief A variable controlling whether the player LEDs should be lit to indicate which player is associated with an Xbox 360 controller. + * + * This variable can be set to the following values: + * "0" - player LEDs are not enabled + * "1" - player LEDs are enabled (the default) + */ +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_PLAYER_LED "SDL_JOYSTICK_HIDAPI_XBOX_360_PLAYER_LED" + +/** + * \brief A variable controlling whether the HIDAPI driver for XBox 360 wireless controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 + */ +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS "SDL_JOYSTICK_HIDAPI_XBOX_360_WIRELESS" + +/** + * \brief A variable controlling whether the HIDAPI driver for XBox One controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI_XBOX + */ +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE "SDL_JOYSTICK_HIDAPI_XBOX_ONE" + +/** + * \brief A variable controlling whether the Home button LED should be turned on when an Xbox One controller is opened + * + * This variable can be set to the following values: + * "0" - home button LED is turned off + * "1" - home button LED is turned on + * + * By default the Home button LED state is not changed. This hint can also be set to a floating point value between 0.0 and 1.0 which controls the brightness of the Home button LED. The default brightness is 0.4. + */ +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED "SDL_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED" + +/** + * \brief A variable controlling whether the RAWINPUT joystick drivers should be used for better handling XInput-capable devices. + * + * This variable can be set to the following values: + * "0" - RAWINPUT drivers are not used + * "1" - RAWINPUT drivers are used (the default) + */ +#define SDL_HINT_JOYSTICK_RAWINPUT "SDL_JOYSTICK_RAWINPUT" + +/** + * \brief A variable controlling whether the RAWINPUT driver should pull correlated data from XInput. + * + * This variable can be set to the following values: + * "0" - RAWINPUT driver will only use data from raw input APIs + * "1" - RAWINPUT driver will also pull data from XInput, providing + * better trigger axes, guide button presses, and rumble support + * for Xbox controllers + * + * The default is "1". This hint applies to any joysticks opened after setting the hint. + */ +#define SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT" + +/** + * \brief A variable controlling whether the ROG Chakram mice should show up as joysticks + * + * This variable can be set to the following values: + * "0" - ROG Chakram mice do not show up as joysticks (the default) + * "1" - ROG Chakram mice show up as joysticks + */ +#define SDL_HINT_JOYSTICK_ROG_CHAKRAM "SDL_JOYSTICK_ROG_CHAKRAM" + +/** + * \brief A variable controlling whether a separate thread should be used + * for handling joystick detection and raw input messages on Windows + * + * This variable can be set to the following values: + * "0" - A separate thread is not used (the default) + * "1" - A separate thread is used for handling raw input messages + * + */ +#define SDL_HINT_JOYSTICK_THREAD "SDL_JOYSTICK_THREAD" + +/** + * \brief A variable controlling whether Windows.Gaming.Input should be used for controller handling. + * + * This variable can be set to the following values: + * "0" - WGI is not used + * "1" - WGI is used (the default) + */ +#define SDL_HINT_JOYSTICK_WGI "SDL_JOYSTICK_WGI" + +/** + * \brief Determines whether SDL enforces that DRM master is required in order + * to initialize the KMSDRM video backend. + * + * The DRM subsystem has a concept of a "DRM master" which is a DRM client that + * has the ability to set planes, set cursor, etc. When SDL is DRM master, it + * can draw to the screen using the SDL rendering APIs. Without DRM master, SDL + * is still able to process input and query attributes of attached displays, + * but it cannot change display state or draw to the screen directly. + * + * In some cases, it can be useful to have the KMSDRM backend even if it cannot + * be used for rendering. An app may want to use SDL for input processing while + * using another rendering API (such as an MMAL overlay on Raspberry Pi) or + * using its own code to render to DRM overlays that SDL doesn't support. + * + * This hint must be set before initializing the video subsystem. + * + * This variable can be set to the following values: + * "0" - SDL will allow usage of the KMSDRM backend without DRM master + * "1" - SDL Will require DRM master to use the KMSDRM backend (default) + */ +#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER "SDL_KMSDRM_REQUIRE_DRM_MASTER" + +/** + * \brief A comma separated list of devices to open as joysticks + * + * This variable is currently only used by the Linux joystick driver. + */ +#define SDL_HINT_JOYSTICK_DEVICE "SDL_JOYSTICK_DEVICE" + +/** + * \brief A variable controlling whether joysticks on Linux will always treat 'hat' axis inputs (ABS_HAT0X - ABS_HAT3Y) as 8-way digital hats without checking whether they may be analog. + * + * This variable can be set to the following values: + * "0" - Only map hat axis inputs to digital hat outputs if the input axes appear to actually be digital (the default) + * "1" - Always handle the input axes numbered ABS_HAT0X to ABS_HAT3Y as digital hats + */ +#define SDL_HINT_LINUX_DIGITAL_HATS "SDL_LINUX_DIGITAL_HATS" + +/** + * \brief A variable controlling whether digital hats on Linux will apply deadzones to their underlying input axes or use unfiltered values. + * + * This variable can be set to the following values: + * "0" - Return digital hat values based on unfiltered input axis values + * "1" - Return digital hat values with deadzones on the input axes taken into account (the default) + */ +#define SDL_HINT_LINUX_HAT_DEADZONES "SDL_LINUX_HAT_DEADZONES" + +/** + * \brief A variable controlling whether to use the classic /dev/input/js* joystick interface or the newer /dev/input/event* joystick interface on Linux + * + * This variable can be set to the following values: + * "0" - Use /dev/input/event* + * "1" - Use /dev/input/js* + * + * By default the /dev/input/event* interfaces are used + */ +#define SDL_HINT_LINUX_JOYSTICK_CLASSIC "SDL_LINUX_JOYSTICK_CLASSIC" + +/** + * \brief A variable controlling whether joysticks on Linux adhere to their HID-defined deadzones or return unfiltered values. + * + * This variable can be set to the following values: + * "0" - Return unfiltered joystick axis values (the default) + * "1" - Return axis values with deadzones taken into account + */ +#define SDL_HINT_LINUX_JOYSTICK_DEADZONES "SDL_LINUX_JOYSTICK_DEADZONES" + +/** +* \brief When set don't force the SDL app to become a foreground process +* +* This hint only applies to Mac OS X. +* +*/ +#define SDL_HINT_MAC_BACKGROUND_APP "SDL_MAC_BACKGROUND_APP" + +/** + * \brief A variable that determines whether ctrl+click should generate a right-click event on Mac + * + * If present, holding ctrl while left clicking will generate a right click + * event when on Mac. + */ +#define SDL_HINT_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK "SDL_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK" + +/** + * \brief A variable controlling whether dispatching OpenGL context updates should block the dispatching thread until the main thread finishes processing + * + * This variable can be set to the following values: + * "0" - Dispatching OpenGL context updates will block the dispatching thread until the main thread finishes processing (default). + * "1" - Dispatching OpenGL context updates will allow the dispatching thread to continue execution. + * + * Generally you want the default, but if you have OpenGL code in a background thread on a Mac, and the main thread + * hangs because it's waiting for that background thread, but that background thread is also hanging because it's + * waiting for the main thread to do an update, this might fix your issue. + * + * This hint only applies to macOS. + * + * This hint is available since SDL 2.24.0. + * + */ +#define SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH "SDL_MAC_OPENGL_ASYNC_DISPATCH" + +/** + * \brief A variable setting the double click radius, in pixels. + */ +#define SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS "SDL_MOUSE_DOUBLE_CLICK_RADIUS" + +/** + * \brief A variable setting the double click time, in milliseconds. + */ +#define SDL_HINT_MOUSE_DOUBLE_CLICK_TIME "SDL_MOUSE_DOUBLE_CLICK_TIME" + +/** + * \brief Allow mouse click events when clicking to focus an SDL window + * + * This variable can be set to the following values: + * "0" - Ignore mouse clicks that activate a window + * "1" - Generate events for mouse clicks that activate a window + * + * By default SDL will ignore mouse clicks that activate a window + */ +#define SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH "SDL_MOUSE_FOCUS_CLICKTHROUGH" + +/** + * \brief A variable setting the speed scale for mouse motion, in floating point, when the mouse is not in relative mode + */ +#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" + +/** + * \brief A variable controlling whether relative mouse mode constrains the mouse to the center of the window + * + * This variable can be set to the following values: + * "0" - Relative mouse mode constrains the mouse to the window + * "1" - Relative mouse mode constrains the mouse to the center of the window + * + * Constraining to the center of the window works better for FPS games and when the + * application is running over RDP. Constraining to the whole window works better + * for 2D games and increases the chance that the mouse will be in the correct + * position when using high DPI mice. + * + * By default SDL will constrain the mouse to the center of the window + */ +#define SDL_HINT_MOUSE_RELATIVE_MODE_CENTER "SDL_MOUSE_RELATIVE_MODE_CENTER" + +/** + * \brief A variable controlling whether relative mouse mode is implemented using mouse warping + * + * This variable can be set to the following values: + * "0" - Relative mouse mode uses raw input + * "1" - Relative mouse mode uses mouse warping + * + * By default SDL will use raw input for relative mouse mode + */ +#define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" + +/** + * \brief A variable controlling whether relative mouse motion is affected by renderer scaling + * + * This variable can be set to the following values: + * "0" - Relative motion is unaffected by DPI or renderer's logical size + * "1" - Relative motion is scaled according to DPI scaling and logical size + * + * By default relative mouse deltas are affected by DPI and renderer scaling + */ +#define SDL_HINT_MOUSE_RELATIVE_SCALING "SDL_MOUSE_RELATIVE_SCALING" + +/** + * \brief A variable setting the scale for mouse motion, in floating point, when the mouse is in relative mode + */ +#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" + +/** + * \brief A variable controlling whether the system mouse acceleration curve is used for relative mouse motion. + * + * This variable can be set to the following values: + * "0" - Relative mouse motion will be unscaled (the default) + * "1" - Relative mouse motion will be scaled using the system mouse acceleration curve. + * + * If SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE is set, that will override the system speed scale. + */ +#define SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE "SDL_MOUSE_RELATIVE_SYSTEM_SCALE" + +/** + * \brief A variable controlling whether a motion event should be generated for mouse warping in relative mode. + * + * This variable can be set to the following values: + * "0" - Warping the mouse will not generate a motion event in relative mode + * "1" - Warping the mouse will generate a motion event in relative mode + * + * By default warping the mouse will not generate motion events in relative mode. This avoids the application having to filter out large relative motion due to warping. + */ +#define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION "SDL_MOUSE_RELATIVE_WARP_MOTION" + +/** + * \brief A variable controlling whether mouse events should generate synthetic touch events + * + * This variable can be set to the following values: + * "0" - Mouse events will not generate touch events (default for desktop platforms) + * "1" - Mouse events will generate touch events (default for mobile platforms, such as Android and iOS) + */ +#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" + +/** + * \brief A variable controlling whether the mouse is captured while mouse buttons are pressed + * + * This variable can be set to the following values: + * "0" - The mouse is not captured while mouse buttons are pressed + * "1" - The mouse is captured while mouse buttons are pressed + * + * By default the mouse is captured while mouse buttons are pressed so if the mouse is dragged + * outside the window, the application continues to receive mouse events until the button is + * released. + */ +#define SDL_HINT_MOUSE_AUTO_CAPTURE "SDL_MOUSE_AUTO_CAPTURE" + +/** + * \brief Tell SDL not to catch the SIGINT or SIGTERM signals. + * + * This hint only applies to Unix-like platforms, and should set before + * any calls to SDL_Init() + * + * The variable can be set to the following values: + * "0" - SDL will install a SIGINT and SIGTERM handler, and when it + * catches a signal, convert it into an SDL_QUIT event. + * "1" - SDL will not install a signal handler at all. + */ +#define SDL_HINT_NO_SIGNAL_HANDLERS "SDL_NO_SIGNAL_HANDLERS" + +/** + * \brief A variable controlling what driver to use for OpenGL ES contexts. + * + * On some platforms, currently Windows and X11, OpenGL drivers may support + * creating contexts with an OpenGL ES profile. By default SDL uses these + * profiles, when available, otherwise it attempts to load an OpenGL ES + * library, e.g. that provided by the ANGLE project. This variable controls + * whether SDL follows this default behaviour or will always load an + * OpenGL ES library. + * + * Circumstances where this is useful include + * - Testing an app with a particular OpenGL ES implementation, e.g ANGLE, + * or emulator, e.g. those from ARM, Imagination or Qualcomm. + * - Resolving OpenGL ES function addresses at link time by linking with + * the OpenGL ES library instead of querying them at run time with + * SDL_GL_GetProcAddress(). + * + * Caution: for an application to work with the default behaviour across + * different OpenGL drivers it must query the OpenGL ES function + * addresses at run time using SDL_GL_GetProcAddress(). + * + * This variable is ignored on most platforms because OpenGL ES is native + * or not supported. + * + * This variable can be set to the following values: + * "0" - Use ES profile of OpenGL, if available. (Default when not set.) + * "1" - Load OpenGL ES library using the default library names. + * + */ +#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" + +/** + * \brief A variable controlling which orientations are allowed on iOS/Android. + * + * In some circumstances it is necessary to be able to explicitly control + * which UI orientations are allowed. + * + * This variable is a space delimited list of the following values: + * "LandscapeLeft", "LandscapeRight", "Portrait" "PortraitUpsideDown" + */ +#define SDL_HINT_ORIENTATIONS "SDL_IOS_ORIENTATIONS" + +/** + * \brief A variable controlling the use of a sentinel event when polling the event queue + * + * This variable can be set to the following values: + * "0" - Disable poll sentinels + * "1" - Enable poll sentinels + * + * When polling for events, SDL_PumpEvents is used to gather new events from devices. + * If a device keeps producing new events between calls to SDL_PumpEvents, a poll loop will + * become stuck until the new events stop. + * This is most noticeable when moving a high frequency mouse. + * + * By default, poll sentinels are enabled. + */ +#define SDL_HINT_POLL_SENTINEL "SDL_POLL_SENTINEL" + +/** + * \brief Override for SDL_GetPreferredLocales() + * + * If set, this will be favored over anything the OS might report for the + * user's preferred locales. Changing this hint at runtime will not generate + * a SDL_LOCALECHANGED event (but if you can change the hint, you can push + * your own event, if you want). + * + * The format of this hint is a comma-separated list of language and locale, + * combined with an underscore, as is a common format: "en_GB". Locale is + * optional: "en". So you might have a list like this: "en_GB,jp,es_PT" + */ +#define SDL_HINT_PREFERRED_LOCALES "SDL_PREFERRED_LOCALES" + +/** + * \brief A variable describing the content orientation on QtWayland-based platforms. + * + * On QtWayland platforms, windows are rotated client-side to allow for custom + * transitions. In order to correctly position overlays (e.g. volume bar) and + * gestures (e.g. events view, close/minimize gestures), the system needs to + * know in which orientation the application is currently drawing its contents. + * + * This does not cause the window to be rotated or resized, the application + * needs to take care of drawing the content in the right orientation (the + * framebuffer is always in portrait mode). + * + * This variable can be one of the following values: + * "primary" (default), "portrait", "landscape", "inverted-portrait", "inverted-landscape" + * + * Since SDL 2.0.22 this variable accepts a comma-separated list of values above. + */ +#define SDL_HINT_QTWAYLAND_CONTENT_ORIENTATION "SDL_QTWAYLAND_CONTENT_ORIENTATION" + +/** + * \brief Flags to set on QtWayland windows to integrate with the native window manager. + * + * On QtWayland platforms, this hint controls the flags to set on the windows. + * For example, on Sailfish OS "OverridesSystemGestures" disables swipe gestures. + * + * This variable is a space-separated list of the following values (empty = no flags): + * "OverridesSystemGestures", "StaysOnTop", "BypassWindowManager" + */ +#define SDL_HINT_QTWAYLAND_WINDOW_FLAGS "SDL_QTWAYLAND_WINDOW_FLAGS" + +/** + * \brief A variable controlling whether the 2D render API is compatible or efficient. + * + * This variable can be set to the following values: + * + * "0" - Don't use batching to make rendering more efficient. + * "1" - Use batching, but might cause problems if app makes its own direct OpenGL calls. + * + * Up to SDL 2.0.9, the render API would draw immediately when requested. Now + * it batches up draw requests and sends them all to the GPU only when forced + * to (during SDL_RenderPresent, when changing render targets, by updating a + * texture that the batch needs, etc). This is significantly more efficient, + * but it can cause problems for apps that expect to render on top of the + * render API's output. As such, SDL will disable batching if a specific + * render backend is requested (since this might indicate that the app is + * planning to use the underlying graphics API directly). This hint can + * be used to explicitly request batching in this instance. It is a contract + * that you will either never use the underlying graphics API directly, or + * if you do, you will call SDL_RenderFlush() before you do so any current + * batch goes to the GPU before your work begins. Not following this contract + * will result in undefined behavior. + */ +#define SDL_HINT_RENDER_BATCHING "SDL_RENDER_BATCHING" + +/** + * \brief A variable controlling how the 2D render API renders lines + * + * This variable can be set to the following values: + * "0" - Use the default line drawing method (Bresenham's line algorithm as of SDL 2.0.20) + * "1" - Use the driver point API using Bresenham's line algorithm (correct, draws many points) + * "2" - Use the driver line API (occasionally misses line endpoints based on hardware driver quirks, was the default before 2.0.20) + * "3" - Use the driver geometry API (correct, draws thicker diagonal lines) + * + * This variable should be set when the renderer is created. + */ +#define SDL_HINT_RENDER_LINE_METHOD "SDL_RENDER_LINE_METHOD" + +/** + * \brief A variable controlling whether to enable Direct3D 11+'s Debug Layer. + * + * This variable does not have any effect on the Direct3D 9 based renderer. + * + * This variable can be set to the following values: + * "0" - Disable Debug Layer use + * "1" - Enable Debug Layer use + * + * By default, SDL does not use Direct3D Debug Layer. + */ +#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" + +/** + * \brief A variable controlling whether the Direct3D device is initialized for thread-safe operations. + * + * This variable can be set to the following values: + * "0" - Thread-safety is not enabled (faster) + * "1" - Thread-safety is enabled + * + * By default the Direct3D device is created with thread-safety disabled. + */ +#define SDL_HINT_RENDER_DIRECT3D_THREADSAFE "SDL_RENDER_DIRECT3D_THREADSAFE" + +/** + * \brief A variable specifying which render driver to use. + * + * If the application doesn't pick a specific renderer to use, this variable + * specifies the name of the preferred renderer. If the preferred renderer + * can't be initialized, the normal default renderer is used. + * + * This variable is case insensitive and can be set to the following values: + * "direct3d" + * "direct3d11" + * "direct3d12" + * "opengl" + * "opengles2" + * "opengles" + * "metal" + * "software" + * + * The default varies by platform, but it's the first one in the list that + * is available on the current platform. + */ +#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER" + +/** + * \brief A variable controlling the scaling policy for SDL_RenderSetLogicalSize. + * + * This variable can be set to the following values: + * "0" or "letterbox" - Uses letterbox/sidebars to fit the entire rendering on screen + * "1" or "overscan" - Will zoom the rendering so it fills the entire screen, allowing edges to be drawn offscreen + * + * By default letterbox is used + */ +#define SDL_HINT_RENDER_LOGICAL_SIZE_MODE "SDL_RENDER_LOGICAL_SIZE_MODE" + +/** + * \brief A variable controlling whether the OpenGL render driver uses shaders if they are available. + * + * This variable can be set to the following values: + * "0" - Disable shaders + * "1" - Enable shaders + * + * By default shaders are used if OpenGL supports them. + */ +#define SDL_HINT_RENDER_OPENGL_SHADERS "SDL_RENDER_OPENGL_SHADERS" + +/** + * \brief A variable controlling the scaling quality + * + * This variable can be set to the following values: + * "0" or "nearest" - Nearest pixel sampling + * "1" or "linear" - Linear filtering (supported by OpenGL and Direct3D) + * "2" or "best" - Currently this is the same as "linear" + * + * By default nearest pixel sampling is used + */ +#define SDL_HINT_RENDER_SCALE_QUALITY "SDL_RENDER_SCALE_QUALITY" + +/** + * \brief A variable controlling whether updates to the SDL screen surface should be synchronized with the vertical refresh, to avoid tearing. + * + * This variable can be set to the following values: + * "0" - Disable vsync + * "1" - Enable vsync + * + * By default SDL does not sync screen surface updates with vertical refresh. + */ +#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC" + +/** + * \brief A variable controlling whether the Metal render driver select low power device over default one + * + * This variable can be set to the following values: + * "0" - Use the prefered OS device + * "1" - Select a low power one + * + * By default the prefered OS device is used. + */ +#define SDL_HINT_RENDER_METAL_PREFER_LOW_POWER_DEVICE "SDL_RENDER_METAL_PREFER_LOW_POWER_DEVICE" + +/** + * \brief A variable controlling if VSYNC is automatically disable if doesn't reach the enough FPS + * + * This variable can be set to the following values: + * "0" - It will be using VSYNC as defined in the main flag. Default + * "1" - If VSYNC was previously enabled, then it will disable VSYNC if doesn't reach enough speed + * + * By default SDL does not enable the automatic VSYNC + */ +#define SDL_HINT_PS2_DYNAMIC_VSYNC "SDL_PS2_DYNAMIC_VSYNC" + +/** + * \brief A variable to control whether the return key on the soft keyboard + * should hide the soft keyboard on Android and iOS. + * + * The variable can be set to the following values: + * "0" - The return key will be handled as a key event. This is the behaviour of SDL <= 2.0.3. (default) + * "1" - The return key will hide the keyboard. + * + * The value of this hint is used at runtime, so it can be changed at any time. + */ +#define SDL_HINT_RETURN_KEY_HIDES_IME "SDL_RETURN_KEY_HIDES_IME" + +/** + * \brief Tell SDL which Dispmanx layer to use on a Raspberry PI + * + * Also known as Z-order. The variable can take a negative or positive value. + * The default is 10000. + */ +#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" + +/** + * \brief Specify an "activity name" for screensaver inhibition. + * + * Some platforms, notably Linux desktops, list the applications which are + * inhibiting the screensaver or other power-saving features. + * + * This hint lets you specify the "activity name" sent to the OS when + * SDL_DisableScreenSaver() is used (or the screensaver is automatically + * disabled). The contents of this hint are used when the screensaver is + * disabled. You should use a string that describes what your program is doing + * (and, therefore, why the screensaver is disabled). For example, "Playing a + * game" or "Watching a video". + * + * Setting this to "" or leaving it unset will have SDL use a reasonable + * default: "Playing a game" or something similar. + * + * On targets where this is not supported, this hint does nothing. + */ +#define SDL_HINT_SCREENSAVER_INHIBIT_ACTIVITY_NAME "SDL_SCREENSAVER_INHIBIT_ACTIVITY_NAME" + +/** + * \brief Specifies whether SDL_THREAD_PRIORITY_TIME_CRITICAL should be treated as realtime. + * + * On some platforms, like Linux, a realtime priority thread may be subject to restrictions + * that require special handling by the application. This hint exists to let SDL know that + * the app is prepared to handle said restrictions. + * + * On Linux, SDL will apply the following configuration to any thread that becomes realtime: + * * The SCHED_RESET_ON_FORK bit will be set on the scheduling policy, + * * An RLIMIT_RTTIME budget will be configured to the rtkit specified limit. + * * Exceeding this limit will result in the kernel sending SIGKILL to the app, + * * Refer to the man pages for more information. + * + * This variable can be set to the following values: + * "0" - default platform specific behaviour + * "1" - Force SDL_THREAD_PRIORITY_TIME_CRITICAL to a realtime scheduling policy + */ +#define SDL_HINT_THREAD_FORCE_REALTIME_TIME_CRITICAL "SDL_THREAD_FORCE_REALTIME_TIME_CRITICAL" + +/** +* \brief A string specifying additional information to use with SDL_SetThreadPriority. +* +* By default SDL_SetThreadPriority will make appropriate system changes in order to +* apply a thread priority. For example on systems using pthreads the scheduler policy +* is changed automatically to a policy that works well with a given priority. +* Code which has specific requirements can override SDL's default behavior with this hint. +* +* pthread hint values are "current", "other", "fifo" and "rr". +* Currently no other platform hint values are defined but may be in the future. +* +* \note On Linux, the kernel may send SIGKILL to realtime tasks which exceed the distro +* configured execution budget for rtkit. This budget can be queried through RLIMIT_RTTIME +* after calling SDL_SetThreadPriority(). +*/ +#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" + +/** +* \brief A string specifying SDL's threads stack size in bytes or "0" for the backend's default size +* +* Use this hint in case you need to set SDL's threads stack size to other than the default. +* This is specially useful if you build SDL against a non glibc libc library (such as musl) which +* provides a relatively small default thread stack size (a few kilobytes versus the default 8MB glibc uses). +* Support for this hint is currently available only in the pthread, Windows, and PSP backend. +* +* Instead of this hint, in 2.0.9 and later, you can use +* SDL_CreateThreadWithStackSize(). This hint only works with the classic +* SDL_CreateThread(). +*/ +#define SDL_HINT_THREAD_STACK_SIZE "SDL_THREAD_STACK_SIZE" + +/** + * \brief A variable that controls the timer resolution, in milliseconds. + * + * The higher resolution the timer, the more frequently the CPU services + * timer interrupts, and the more precise delays are, but this takes up + * power and CPU time. This hint is only used on Windows. + * + * See this blog post for more information: + * http://randomascii.wordpress.com/2013/07/08/windows-timer-resolution-megawatts-wasted/ + * + * If this variable is set to "0", the system timer resolution is not set. + * + * The default value is "1". This hint may be set at any time. + */ +#define SDL_HINT_TIMER_RESOLUTION "SDL_TIMER_RESOLUTION" + +/** + * \brief A variable controlling whether touch events should generate synthetic mouse events + * + * This variable can be set to the following values: + * "0" - Touch events will not generate mouse events + * "1" - Touch events will generate mouse events + * + * By default SDL will generate mouse events for touch events + */ +#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" + +/** + * \brief A variable controlling which touchpad should generate synthetic mouse events + * + * This variable can be set to the following values: + * "0" - Only front touchpad should generate mouse events. Default + * "1" - Only back touchpad should generate mouse events. + * "2" - Both touchpads should generate mouse events. + * + * By default SDL will generate mouse events for all touch devices + */ +#define SDL_HINT_VITA_TOUCH_MOUSE_DEVICE "SDL_HINT_VITA_TOUCH_MOUSE_DEVICE" + +/** + * \brief A variable controlling whether the Android / tvOS remotes + * should be listed as joystick devices, instead of sending keyboard events. + * + * This variable can be set to the following values: + * "0" - Remotes send enter/escape/arrow key events + * "1" - Remotes are available as 2 axis, 2 button joysticks (the default). + */ +#define SDL_HINT_TV_REMOTE_AS_JOYSTICK "SDL_TV_REMOTE_AS_JOYSTICK" + +/** + * \brief A variable controlling whether the screensaver is enabled. + * + * This variable can be set to the following values: + * "0" - Disable screensaver + * "1" - Enable screensaver + * + * By default SDL will disable the screensaver. + */ +#define SDL_HINT_VIDEO_ALLOW_SCREENSAVER "SDL_VIDEO_ALLOW_SCREENSAVER" + +/** + * \brief Tell the video driver that we only want a double buffer. + * + * By default, most lowlevel 2D APIs will use a triple buffer scheme that + * wastes no CPU time on waiting for vsync after issuing a flip, but + * introduces a frame of latency. On the other hand, using a double buffer + * scheme instead is recommended for cases where low latency is an important + * factor because we save a whole frame of latency. + * We do so by waiting for vsync immediately after issuing a flip, usually just + * after eglSwapBuffers call in the backend's *_SwapWindow function. + * + * Since it's driver-specific, it's only supported where possible and + * implemented. Currently supported the following drivers: + * + * - KMSDRM (kmsdrm) + * - Raspberry Pi (raspberrypi) + */ +#define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" + +/** + * \brief A variable controlling whether the EGL window is allowed to be + * composited as transparent, rather than opaque. + * + * Most window systems will always render windows opaque, even if the surface + * format has an alpha channel. This is not always true, however, so by default + * SDL will try to enforce opaque composition. To override this behavior, you + * can set this hint to "1". + */ +#define SDL_HINT_VIDEO_EGL_ALLOW_TRANSPARENCY "SDL_VIDEO_EGL_ALLOW_TRANSPARENCY" + +/** + * \brief A variable controlling whether the graphics context is externally managed. + * + * This variable can be set to the following values: + * "0" - SDL will manage graphics contexts that are attached to windows. + * "1" - Disable graphics context management on windows. + * + * By default SDL will manage OpenGL contexts in certain situations. For example, on Android the + * context will be automatically saved and restored when pausing the application. Additionally, some + * platforms will assume usage of OpenGL if Vulkan isn't used. Setting this to "1" will prevent this + * behavior, which is desireable when the application manages the graphics context, such as + * an externally managed OpenGL context or attaching a Vulkan surface to the window. + */ +#define SDL_HINT_VIDEO_EXTERNAL_CONTEXT "SDL_VIDEO_EXTERNAL_CONTEXT" + +/** + * \brief If set to 1, then do not allow high-DPI windows. ("Retina" on Mac and iOS) + */ +#define SDL_HINT_VIDEO_HIGHDPI_DISABLED "SDL_VIDEO_HIGHDPI_DISABLED" + +/** + * \brief A variable that dictates policy for fullscreen Spaces on Mac OS X. + * + * This hint only applies to Mac OS X. + * + * The variable can be set to the following values: + * "0" - Disable Spaces support (FULLSCREEN_DESKTOP won't use them and + * SDL_WINDOW_RESIZABLE windows won't offer the "fullscreen" + * button on their titlebars). + * "1" - Enable Spaces support (FULLSCREEN_DESKTOP will use them and + * SDL_WINDOW_RESIZABLE windows will offer the "fullscreen" + * button on their titlebars). + * + * The default value is "1". This hint must be set before any windows are created. + */ +#define SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES "SDL_VIDEO_MAC_FULLSCREEN_SPACES" + +/** + * \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to false. + * \warning Before SDL 2.0.14, this defaulted to true! In 2.0.14, we're + * seeing if "true" causes more problems than it solves in modern times. + * + */ +#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" + +/** + * \brief A variable controlling whether the libdecor Wayland backend is allowed to be used. + * + * This variable can be set to the following values: + * "0" - libdecor use is disabled. + * "1" - libdecor use is enabled (default). + * + * libdecor is used over xdg-shell when xdg-decoration protocol is unavailable. + */ +#define SDL_HINT_VIDEO_WAYLAND_ALLOW_LIBDECOR "SDL_VIDEO_WAYLAND_ALLOW_LIBDECOR" + +/** + * \brief A variable controlling whether the libdecor Wayland backend is preferred over native decrations. + * + * When this hint is set, libdecor will be used to provide window decorations, even if xdg-decoration is + * available. (Note that, by default, libdecor will use xdg-decoration itself if available). + * + * This variable can be set to the following values: + * "0" - libdecor is enabled only if server-side decorations are unavailable. + * "1" - libdecor is always enabled if available. + * + * libdecor is used over xdg-shell when xdg-decoration protocol is unavailable. + */ +#define SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR "SDL_VIDEO_WAYLAND_PREFER_LIBDECOR" + +/** + * \brief A variable controlling whether video mode emulation is enabled under Wayland. + * + * When this hint is set, a standard set of emulated CVT video modes will be exposed for use by the application. + * If it is disabled, the only modes exposed will be the logical desktop size and, in the case of a scaled + * desktop, the native display resolution. + * + * This variable can be set to the following values: + * "0" - Video mode emulation is disabled. + * "1" - Video mode emulation is enabled. + * + * By default video mode emulation is enabled. + */ +#define SDL_HINT_VIDEO_WAYLAND_MODE_EMULATION "SDL_VIDEO_WAYLAND_MODE_EMULATION" + +/** + * \brief Enable or disable mouse pointer warp emulation, needed by some older games. + * + * When this hint is set, any SDL will emulate mouse warps using relative mouse mode. + * This is required for some older games (such as Source engine games), which warp the + * mouse to the centre of the screen rather than using relative mouse motion. Note that + * relative mouse mode may have different mouse acceleration behaviour than pointer warps. + * + * This variable can be set to the following values: + * "0" - All mouse warps fail, as mouse warping is not available under wayland. + * "1" - Some mouse warps will be emulated by forcing relative mouse mode. + * + * If not set, this is automatically enabled unless an application uses relative mouse + * mode directly. + */ +#define SDL_HINT_VIDEO_WAYLAND_EMULATE_MOUSE_WARP "SDL_VIDEO_WAYLAND_EMULATE_MOUSE_WARP" + +/** +* \brief A variable that is the address of another SDL_Window* (as a hex string formatted with "%p"). +* +* If this hint is set before SDL_CreateWindowFrom() and the SDL_Window* it is set to has +* SDL_WINDOW_OPENGL set (and running on WGL only, currently), then two things will occur on the newly +* created SDL_Window: +* +* 1. Its pixel format will be set to the same pixel format as this SDL_Window. This is +* needed for example when sharing an OpenGL context across multiple windows. +* +* 2. The flag SDL_WINDOW_OPENGL will be set on the new window so it can be used for +* OpenGL rendering. +* +* This variable can be set to the following values: +* The address (as a string "%p") of the SDL_Window* that new windows created with SDL_CreateWindowFrom() should +* share a pixel format with. +*/ +#define SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT "SDL_VIDEO_WINDOW_SHARE_PIXEL_FORMAT" + +/** + * \brief When calling SDL_CreateWindowFrom(), make the window compatible with OpenGL. + * + * This variable can be set to the following values: + * "0" - Don't add any graphics flags to the SDL_WindowFlags + * "1" - Add SDL_WINDOW_OPENGL to the SDL_WindowFlags + * + * By default SDL will not make the foreign window compatible with OpenGL. + */ +#define SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL "SDL_VIDEO_FOREIGN_WINDOW_OPENGL" + +/** + * \brief When calling SDL_CreateWindowFrom(), make the window compatible with Vulkan. + * + * This variable can be set to the following values: + * "0" - Don't add any graphics flags to the SDL_WindowFlags + * "1" - Add SDL_WINDOW_VULKAN to the SDL_WindowFlags + * + * By default SDL will not make the foreign window compatible with Vulkan. + */ +#define SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN "SDL_VIDEO_FOREIGN_WINDOW_VULKAN" + +/** +* \brief A variable specifying which shader compiler to preload when using the Chrome ANGLE binaries +* +* SDL has EGL and OpenGL ES2 support on Windows via the ANGLE project. It +* can use two different sets of binaries, those compiled by the user from source +* or those provided by the Chrome browser. In the later case, these binaries require +* that SDL loads a DLL providing the shader compiler. +* +* This variable can be set to the following values: +* "d3dcompiler_46.dll" - default, best for Vista or later. +* "d3dcompiler_43.dll" - for XP support. +* "none" - do not load any library, useful if you compiled ANGLE from source and included the compiler in your binaries. +* +*/ +#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER" + +/** + * \brief A variable controlling whether X11 should use GLX or EGL by default + * + * This variable can be set to the following values: + * "0" - Use GLX + * "1" - Use EGL + * + * By default SDL will use GLX when both are present. + */ +#define SDL_HINT_VIDEO_X11_FORCE_EGL "SDL_VIDEO_X11_FORCE_EGL" + +/** + * \brief A variable controlling whether the X11 _NET_WM_BYPASS_COMPOSITOR hint should be used. + * + * This variable can be set to the following values: + * "0" - Disable _NET_WM_BYPASS_COMPOSITOR + * "1" - Enable _NET_WM_BYPASS_COMPOSITOR + * + * By default SDL will use _NET_WM_BYPASS_COMPOSITOR + * + */ +#define SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR "SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR" + +/** + * \brief A variable controlling whether the X11 _NET_WM_PING protocol should be supported. + * + * This variable can be set to the following values: + * "0" - Disable _NET_WM_PING + * "1" - Enable _NET_WM_PING + * + * By default SDL will use _NET_WM_PING, but for applications that know they + * will not always be able to respond to ping requests in a timely manner they can + * turn it off to avoid the window manager thinking the app is hung. + * The hint is checked in CreateWindow. + */ +#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" + +/** + * \brief A variable forcing the visual ID chosen for new X11 windows + * + */ +#define SDL_HINT_VIDEO_X11_WINDOW_VISUALID "SDL_VIDEO_X11_WINDOW_VISUALID" + +/** + * \brief A no-longer-used variable controlling whether the X11 Xinerama extension should be used. + * + * Before SDL 2.0.24, this would let apps and users disable Xinerama support on X11. + * Now SDL never uses Xinerama, and does not check for this hint at all. + * The preprocessor define is left here for source compatibility. + */ +#define SDL_HINT_VIDEO_X11_XINERAMA "SDL_VIDEO_X11_XINERAMA" + +/** + * \brief A variable controlling whether the X11 XRandR extension should be used. + * + * This variable can be set to the following values: + * "0" - Disable XRandR + * "1" - Enable XRandR + * + * By default SDL will use XRandR. + */ +#define SDL_HINT_VIDEO_X11_XRANDR "SDL_VIDEO_X11_XRANDR" + +/** + * \brief A no-longer-used variable controlling whether the X11 VidMode extension should be used. + * + * Before SDL 2.0.24, this would let apps and users disable XVidMode support on X11. + * Now SDL never uses XVidMode, and does not check for this hint at all. + * The preprocessor define is left here for source compatibility. + */ +#define SDL_HINT_VIDEO_X11_XVIDMODE "SDL_VIDEO_X11_XVIDMODE" + +/** + * \brief Controls how the fact chunk affects the loading of a WAVE file. + * + * The fact chunk stores information about the number of samples of a WAVE + * file. The Standards Update from Microsoft notes that this value can be used + * to 'determine the length of the data in seconds'. This is especially useful + * for compressed formats (for which this is a mandatory chunk) if they produce + * multiple sample frames per block and truncating the block is not allowed. + * The fact chunk can exactly specify how many sample frames there should be + * in this case. + * + * Unfortunately, most application seem to ignore the fact chunk and so SDL + * ignores it by default as well. + * + * This variable can be set to the following values: + * + * "truncate" - Use the number of samples to truncate the wave data if + * the fact chunk is present and valid + * "strict" - Like "truncate", but raise an error if the fact chunk + * is invalid, not present for non-PCM formats, or if the + * data chunk doesn't have that many samples + * "ignorezero" - Like "truncate", but ignore fact chunk if the number of + * samples is zero + * "ignore" - Ignore fact chunk entirely (default) + */ +#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" + +/** + * \brief Controls how the size of the RIFF chunk affects the loading of a WAVE file. + * + * The size of the RIFF chunk (which includes all the sub-chunks of the WAVE + * file) is not always reliable. In case the size is wrong, it's possible to + * just ignore it and step through the chunks until a fixed limit is reached. + * + * Note that files that have trailing data unrelated to the WAVE file or + * corrupt files may slow down the loading process without a reliable boundary. + * By default, SDL stops after 10000 chunks to prevent wasting time. Use the + * environment variable SDL_WAVE_CHUNK_LIMIT to adjust this value. + * + * This variable can be set to the following values: + * + * "force" - Always use the RIFF chunk size as a boundary for the chunk search + * "ignorezero" - Like "force", but a zero size searches up to 4 GiB (default) + * "ignore" - Ignore the RIFF chunk size and always search up to 4 GiB + * "maximum" - Search for chunks until the end of file (not recommended) + */ +#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" + +/** + * \brief Controls how a truncated WAVE file is handled. + * + * A WAVE file is considered truncated if any of the chunks are incomplete or + * the data chunk size is not a multiple of the block size. By default, SDL + * decodes until the first incomplete block, as most applications seem to do. + * + * This variable can be set to the following values: + * + * "verystrict" - Raise an error if the file is truncated + * "strict" - Like "verystrict", but the size of the RIFF chunk is ignored + * "dropframe" - Decode until the first incomplete sample frame + * "dropblock" - Decode until the first incomplete block (default) + */ +#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" + +/** + * \brief Tell SDL not to name threads on Windows with the 0x406D1388 Exception. + * The 0x406D1388 Exception is a trick used to inform Visual Studio of a + * thread's name, but it tends to cause problems with other debuggers, + * and the .NET runtime. Note that SDL 2.0.6 and later will still use + * the (safer) SetThreadDescription API, introduced in the Windows 10 + * Creators Update, if available. + * + * The variable can be set to the following values: + * "0" - SDL will raise the 0x406D1388 Exception to name threads. + * This is the default behavior of SDL <= 2.0.4. + * "1" - SDL will not raise this exception, and threads will be unnamed. (default) + * This is necessary with .NET languages or debuggers that aren't Visual Studio. + */ +#define SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING "SDL_WINDOWS_DISABLE_THREAD_NAMING" + +/** + * \brief Controls whether menus can be opened with their keyboard shortcut (Alt+mnemonic). + * + * If the mnemonics are enabled, then menus can be opened by pressing the Alt + * key and the corresponding mnemonic (for example, Alt+F opens the File menu). + * However, in case an invalid mnemonic is pressed, Windows makes an audible + * beep to convey that nothing happened. This is true even if the window has + * no menu at all! + * + * Because most SDL applications don't have menus, and some want to use the Alt + * key for other purposes, SDL disables mnemonics (and the beeping) by default. + * + * Note: This also affects keyboard events: with mnemonics enabled, when a + * menu is opened from the keyboard, you will not receive a KEYUP event for + * the mnemonic key, and *might* not receive one for Alt. + * + * This variable can be set to the following values: + * "0" - Alt+mnemonic does nothing, no beeping. (default) + * "1" - Alt+mnemonic opens menus, invalid mnemonics produce a beep. + */ +#define SDL_HINT_WINDOWS_ENABLE_MENU_MNEMONICS "SDL_WINDOWS_ENABLE_MENU_MNEMONICS" + +/** + * \brief A variable controlling whether the windows message loop is processed by SDL + * + * This variable can be set to the following values: + * "0" - The window message loop is not run + * "1" - The window message loop is processed in SDL_PumpEvents() + * + * By default SDL will process the windows message loop + */ +#define SDL_HINT_WINDOWS_ENABLE_MESSAGELOOP "SDL_WINDOWS_ENABLE_MESSAGELOOP" + +/** + * \brief Force SDL to use Critical Sections for mutexes on Windows. + * On Windows 7 and newer, Slim Reader/Writer Locks are available. + * They offer better performance, allocate no kernel ressources and + * use less memory. SDL will fall back to Critical Sections on older + * OS versions or if forced to by this hint. + * + * This variable can be set to the following values: + * "0" - Use SRW Locks when available. If not, fall back to Critical Sections. (default) + * "1" - Force the use of Critical Sections in all cases. + * + */ +#define SDL_HINT_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS "SDL_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS" + +/** + * \brief Force SDL to use Kernel Semaphores on Windows. + * Kernel Semaphores are inter-process and require a context + * switch on every interaction. On Windows 8 and newer, the + * WaitOnAddress API is available. Using that and atomics to + * implement semaphores increases performance. + * SDL will fall back to Kernel Objects on older OS versions + * or if forced to by this hint. + * + * This variable can be set to the following values: + * "0" - Use Atomics and WaitOnAddress API when available. If not, fall back to Kernel Objects. (default) + * "1" - Force the use of Kernel Objects in all cases. + * + */ +#define SDL_HINT_WINDOWS_FORCE_SEMAPHORE_KERNEL "SDL_WINDOWS_FORCE_SEMAPHORE_KERNEL" + +/** + * \brief A variable to specify custom icon resource id from RC file on Windows platform + */ +#define SDL_HINT_WINDOWS_INTRESOURCE_ICON "SDL_WINDOWS_INTRESOURCE_ICON" +#define SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL "SDL_WINDOWS_INTRESOURCE_ICON_SMALL" + +/** + * \brief Tell SDL not to generate window-close events for Alt+F4 on Windows. + * + * The variable can be set to the following values: + * "0" - SDL will generate a window-close event when it sees Alt+F4. + * "1" - SDL will only do normal key handling for Alt+F4. + */ +#define SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 "SDL_WINDOWS_NO_CLOSE_ON_ALT_F4" + +/** + * \brief Use the D3D9Ex API introduced in Windows Vista, instead of normal D3D9. + * Direct3D 9Ex contains changes to state management that can eliminate device + * loss errors during scenarios like Alt+Tab or UAC prompts. D3D9Ex may require + * some changes to your application to cope with the new behavior, so this + * is disabled by default. + * + * This hint must be set before initializing the video subsystem. + * + * For more information on Direct3D 9Ex, see: + * - https://docs.microsoft.com/en-us/windows/win32/direct3darticles/graphics-apis-in-windows-vista#direct3d-9ex + * - https://docs.microsoft.com/en-us/windows/win32/direct3darticles/direct3d-9ex-improvements + * + * This variable can be set to the following values: + * "0" - Use the original Direct3D 9 API (default) + * "1" - Use the Direct3D 9Ex API on Vista and later (and fall back if D3D9Ex is unavailable) + * + */ +#define SDL_HINT_WINDOWS_USE_D3D9EX "SDL_WINDOWS_USE_D3D9EX" + +/** + * \brief Controls whether SDL will declare the process to be DPI aware. + * + * This hint must be set before initializing the video subsystem. + * + * The main purpose of declaring DPI awareness is to disable OS bitmap scaling of SDL windows on monitors with + * a DPI scale factor. + * + * This hint is equivalent to requesting DPI awareness via external means (e.g. calling SetProcessDpiAwarenessContext) + * and does not cause SDL to use a virtualized coordinate system, so it will generally give you 1 SDL coordinate = 1 pixel + * even on high-DPI displays. + * + * For more information, see: + * https://docs.microsoft.com/en-us/windows/win32/hidpi/high-dpi-desktop-application-development-on-windows + * + * This variable can be set to the following values: + * "" - Do not change the DPI awareness (default). + * "unaware" - Declare the process as DPI unaware. (Windows 8.1 and later). + * "system" - Request system DPI awareness. (Vista and later). + * "permonitor" - Request per-monitor DPI awareness. (Windows 8.1 and later). + * "permonitorv2" - Request per-monitor V2 DPI awareness. (Windows 10, version 1607 and later). + * The most visible difference from "permonitor" is that window title bar will be scaled + * to the visually correct size when dragging between monitors with different scale factors. + * This is the preferred DPI awareness level. + * + * If the requested DPI awareness is not available on the currently running OS, SDL will try to request the best + * available match. + */ +#define SDL_HINT_WINDOWS_DPI_AWARENESS "SDL_WINDOWS_DPI_AWARENESS" + +/** + * \brief Uses DPI-scaled points as the SDL coordinate system on Windows. + * + * This changes the SDL coordinate system units to be DPI-scaled points, rather than pixels everywhere. + * This means windows will be appropriately sized, even when created on high-DPI displays with scaling. + * + * e.g. requesting a 640x480 window from SDL, on a display with 125% scaling in Windows display settings, + * will create a window with an 800x600 client area (in pixels). + * + * Setting this to "1" implicitly requests process DPI awareness (setting SDL_WINDOWS_DPI_AWARENESS is unnecessary), + * and forces SDL_WINDOW_ALLOW_HIGHDPI on all windows. + * + * This variable can be set to the following values: + * "0" - SDL coordinates equal Windows coordinates. No automatic window resizing when dragging + * between monitors with different scale factors (unless this is performed by + * Windows itself, which is the case when the process is DPI unaware). + * "1" - SDL coordinates are in DPI-scaled points. Automatically resize windows as needed on + * displays with non-100% scale factors. + */ +#define SDL_HINT_WINDOWS_DPI_SCALING "SDL_WINDOWS_DPI_SCALING" + +/** + * \brief A variable controlling whether the window frame and title bar are interactive when the cursor is hidden + * + * This variable can be set to the following values: + * "0" - The window frame is not interactive when the cursor is hidden (no move, resize, etc) + * "1" - The window frame is interactive when the cursor is hidden + * + * By default SDL will allow interaction with the window frame when the cursor is hidden + */ +#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" + +/** +* \brief A variable controlling whether the window is activated when the SDL_ShowWindow function is called +* +* This variable can be set to the following values: +* "0" - The window is activated when the SDL_ShowWindow function is called +* "1" - The window is not activated when the SDL_ShowWindow function is called +* +* By default SDL will activate the window when the SDL_ShowWindow function is called +*/ +#define SDL_HINT_WINDOW_NO_ACTIVATION_WHEN_SHOWN "SDL_WINDOW_NO_ACTIVATION_WHEN_SHOWN" + +/** \brief Allows back-button-press events on Windows Phone to be marked as handled + * + * Windows Phone devices typically feature a Back button. When pressed, + * the OS will emit back-button-press events, which apps are expected to + * handle in an appropriate manner. If apps do not explicitly mark these + * events as 'Handled', then the OS will invoke its default behavior for + * unhandled back-button-press events, which on Windows Phone 8 and 8.1 is to + * terminate the app (and attempt to switch to the previous app, or to the + * device's home screen). + * + * Setting the SDL_HINT_WINRT_HANDLE_BACK_BUTTON hint to "1" will cause SDL + * to mark back-button-press events as Handled, if and when one is sent to + * the app. + * + * Internally, Windows Phone sends back button events as parameters to + * special back-button-press callback functions. Apps that need to respond + * to back-button-press events are expected to register one or more + * callback functions for such, shortly after being launched (during the + * app's initialization phase). After the back button is pressed, the OS + * will invoke these callbacks. If the app's callback(s) do not explicitly + * mark the event as handled by the time they return, or if the app never + * registers one of these callback, the OS will consider the event + * un-handled, and it will apply its default back button behavior (terminate + * the app). + * + * SDL registers its own back-button-press callback with the Windows Phone + * OS. This callback will emit a pair of SDL key-press events (SDL_KEYDOWN + * and SDL_KEYUP), each with a scancode of SDL_SCANCODE_AC_BACK, after which + * it will check the contents of the hint, SDL_HINT_WINRT_HANDLE_BACK_BUTTON. + * If the hint's value is set to "1", the back button event's Handled + * property will get set to 'true'. If the hint's value is set to something + * else, or if it is unset, SDL will leave the event's Handled property + * alone. (By default, the OS sets this property to 'false', to note.) + * + * SDL apps can either set SDL_HINT_WINRT_HANDLE_BACK_BUTTON well before a + * back button is pressed, or can set it in direct-response to a back button + * being pressed. + * + * In order to get notified when a back button is pressed, SDL apps should + * register a callback function with SDL_AddEventWatch(), and have it listen + * for SDL_KEYDOWN events that have a scancode of SDL_SCANCODE_AC_BACK. + * (Alternatively, SDL_KEYUP events can be listened-for. Listening for + * either event type is suitable.) Any value of SDL_HINT_WINRT_HANDLE_BACK_BUTTON + * set by such a callback, will be applied to the OS' current + * back-button-press event. + * + * More details on back button behavior in Windows Phone apps can be found + * at the following page, on Microsoft's developer site: + * http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj247550(v=vs.105).aspx + */ +#define SDL_HINT_WINRT_HANDLE_BACK_BUTTON "SDL_WINRT_HANDLE_BACK_BUTTON" + +/** \brief Label text for a WinRT app's privacy policy link + * + * Network-enabled WinRT apps must include a privacy policy. On Windows 8, 8.1, and RT, + * Microsoft mandates that this policy be available via the Windows Settings charm. + * SDL provides code to add a link there, with its label text being set via the + * optional hint, SDL_HINT_WINRT_PRIVACY_POLICY_LABEL. + * + * Please note that a privacy policy's contents are not set via this hint. A separate + * hint, SDL_HINT_WINRT_PRIVACY_POLICY_URL, is used to link to the actual text of the + * policy. + * + * The contents of this hint should be encoded as a UTF8 string. + * + * The default value is "Privacy Policy". This hint should only be set during app + * initialization, preferably before any calls to SDL_Init(). + * + * For additional information on linking to a privacy policy, see the documentation for + * SDL_HINT_WINRT_PRIVACY_POLICY_URL. + */ +#define SDL_HINT_WINRT_PRIVACY_POLICY_LABEL "SDL_WINRT_PRIVACY_POLICY_LABEL" + +/** + * \brief A URL to a WinRT app's privacy policy + * + * All network-enabled WinRT apps must make a privacy policy available to its + * users. On Windows 8, 8.1, and RT, Microsoft mandates that this policy be + * be available in the Windows Settings charm, as accessed from within the app. + * SDL provides code to add a URL-based link there, which can point to the app's + * privacy policy. + * + * To setup a URL to an app's privacy policy, set SDL_HINT_WINRT_PRIVACY_POLICY_URL + * before calling any SDL_Init() functions. The contents of the hint should + * be a valid URL. For example, "http://www.example.com". + * + * The default value is "", which will prevent SDL from adding a privacy policy + * link to the Settings charm. This hint should only be set during app init. + * + * The label text of an app's "Privacy Policy" link may be customized via another + * hint, SDL_HINT_WINRT_PRIVACY_POLICY_LABEL. + * + * Please note that on Windows Phone, Microsoft does not provide standard UI + * for displaying a privacy policy link, and as such, SDL_HINT_WINRT_PRIVACY_POLICY_URL + * will not get used on that platform. Network-enabled phone apps should display + * their privacy policy through some other, in-app means. + */ +#define SDL_HINT_WINRT_PRIVACY_POLICY_URL "SDL_WINRT_PRIVACY_POLICY_URL" + +/** + * \brief Mark X11 windows as override-redirect. + * + * If set, this _might_ increase framerate at the expense of the desktop + * not working as expected. Override-redirect windows aren't noticed by the + * window manager at all. + * + * You should probably only use this for fullscreen windows, and you probably + * shouldn't even use it for that. But it's here if you want to try! + */ +#define SDL_HINT_X11_FORCE_OVERRIDE_REDIRECT "SDL_X11_FORCE_OVERRIDE_REDIRECT" + +/** + * \brief A variable that lets you disable the detection and use of Xinput gamepad devices + * + * The variable can be set to the following values: + * "0" - Disable XInput detection (only uses direct input) + * "1" - Enable XInput detection (the default) + */ +#define SDL_HINT_XINPUT_ENABLED "SDL_XINPUT_ENABLED" + + /** + * \brief A variable that lets you disable the detection and use of DirectInput gamepad devices + * + * The variable can be set to the following values: + * "0" - Disable DirectInput detection (only uses XInput) + * "1" - Enable DirectInput detection (the default) + */ +#define SDL_HINT_DIRECTINPUT_ENABLED "SDL_DIRECTINPUT_ENABLED" + +/** + * \brief A variable that causes SDL to use the old axis and button mapping for XInput devices. + * + * This hint is for backwards compatibility only and will be removed in SDL 2.1 + * + * The default value is "0". This hint must be set before SDL_Init() + */ +#define SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING "SDL_XINPUT_USE_OLD_JOYSTICK_MAPPING" + +/** + * \brief A variable that causes SDL to not ignore audio "monitors" + * + * This is currently only used for PulseAudio and ignored elsewhere. + * + * By default, SDL ignores audio devices that aren't associated with physical + * hardware. Changing this hint to "1" will expose anything SDL sees that + * appears to be an audio source or sink. This will add "devices" to the list + * that the user probably doesn't want or need, but it can be useful in + * scenarios where you want to hook up SDL to some sort of virtual device, + * etc. + * + * The default value is "0". This hint must be set before SDL_Init(). + * + * This hint is available since SDL 2.0.16. Before then, virtual devices are + * always ignored. + */ +#define SDL_HINT_AUDIO_INCLUDE_MONITORS "SDL_AUDIO_INCLUDE_MONITORS" + +/** + * \brief A variable that forces X11 windows to create as a custom type. + * + * This is currently only used for X11 and ignored elsewhere. + * + * During SDL_CreateWindow, SDL uses the _NET_WM_WINDOW_TYPE X11 property + * to report to the window manager the type of window it wants to create. + * This might be set to various things if SDL_WINDOW_TOOLTIP or + * SDL_WINDOW_POPUP_MENU, etc, were specified. For "normal" windows that + * haven't set a specific type, this hint can be used to specify a custom + * type. For example, a dock window might set this to + * "_NET_WM_WINDOW_TYPE_DOCK". + * + * If not set or set to "", this hint is ignored. This hint must be set + * before the SDL_CreateWindow() call that it is intended to affect. + * + * This hint is available since SDL 2.0.22. + */ +#define SDL_HINT_X11_WINDOW_TYPE "SDL_X11_WINDOW_TYPE" + +/** + * \brief A variable that decides whether to send SDL_QUIT when closing the final window. + * + * By default, SDL sends an SDL_QUIT event when there is only one window + * and it receives an SDL_WINDOWEVENT_CLOSE event, under the assumption most + * apps would also take the loss of this window as a signal to terminate the + * program. + * + * However, it's not unreasonable in some cases to have the program continue + * to live on, perhaps to create new windows later. + * + * Changing this hint to "0" will cause SDL to not send an SDL_QUIT event + * when the final window is requesting to close. Note that in this case, + * there are still other legitimate reasons one might get an SDL_QUIT + * event: choosing "Quit" from the macOS menu bar, sending a SIGINT (ctrl-c) + * on Unix, etc. + * + * The default value is "1". This hint can be changed at any time. + * + * This hint is available since SDL 2.0.22. Before then, you always get + * an SDL_QUIT event when closing the final window. + */ +#define SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE "SDL_QUIT_ON_LAST_WINDOW_CLOSE" + + +/** + * \brief A variable that decides what video backend to use. + * + * By default, SDL will try all available video backends in a reasonable + * order until it finds one that can work, but this hint allows the app + * or user to force a specific target, such as "x11" if, say, you are + * on Wayland but want to try talking to the X server instead. + * + * This functionality has existed since SDL 2.0.0 (indeed, before that) + * but before 2.0.22 this was an environment variable only. In 2.0.22, + * it was upgraded to a full SDL hint, so you can set the environment + * variable as usual or programatically set the hint with SDL_SetHint, + * which won't propagate to child processes. + * + * The default value is unset, in which case SDL will try to figure out + * the best video backend on your behalf. This hint needs to be set + * before SDL_Init() is called to be useful. + * + * This hint is available since SDL 2.0.22. Before then, you could set + * the environment variable to get the same effect. + */ +#define SDL_HINT_VIDEODRIVER "SDL_VIDEODRIVER" + +/** + * \brief A variable that decides what audio backend to use. + * + * By default, SDL will try all available audio backends in a reasonable + * order until it finds one that can work, but this hint allows the app + * or user to force a specific target, such as "alsa" if, say, you are + * on PulseAudio but want to try talking to the lower level instead. + * + * This functionality has existed since SDL 2.0.0 (indeed, before that) + * but before 2.0.22 this was an environment variable only. In 2.0.22, + * it was upgraded to a full SDL hint, so you can set the environment + * variable as usual or programatically set the hint with SDL_SetHint, + * which won't propagate to child processes. + * + * The default value is unset, in which case SDL will try to figure out + * the best audio backend on your behalf. This hint needs to be set + * before SDL_Init() is called to be useful. + * + * This hint is available since SDL 2.0.22. Before then, you could set + * the environment variable to get the same effect. + */ +#define SDL_HINT_AUDIODRIVER "SDL_AUDIODRIVER" + +/** + * \brief A variable that decides what KMSDRM device to use. + * + * Internally, SDL might open something like "/dev/dri/cardNN" to + * access KMSDRM functionality, where "NN" is a device index number. + * + * SDL makes a guess at the best index to use (usually zero), but the + * app or user can set this hint to a number between 0 and 99 to + * force selection. + * + * This hint is available since SDL 2.24.0. + */ +#define SDL_HINT_KMSDRM_DEVICE_INDEX "SDL_KMSDRM_DEVICE_INDEX" + + +/** + * \brief A variable that treats trackpads as touch devices. + * + * On macOS (and possibly other platforms in the future), SDL will report + * touches on a trackpad as mouse input, which is generally what users + * expect from this device; however, these are often actually full + * multitouch-capable touch devices, so it might be preferable to some apps + * to treat them as such. + * + * Setting this hint to true will make the trackpad input report as a + * multitouch device instead of a mouse. The default is false. + * + * Note that most platforms don't support this hint. As of 2.24.0, it + * only supports MacBooks' trackpads on macOS. Others may follow later. + * + * This hint is checked during SDL_Init and can not be changed after. + * + * This hint is available since SDL 2.24.0. + */ +#define SDL_HINT_TRACKPAD_IS_TOUCH_ONLY "SDL_TRACKPAD_IS_TOUCH_ONLY" + + +/** + * \brief An enumeration of hint priorities + */ +typedef enum +{ + SDL_HINT_DEFAULT, + SDL_HINT_NORMAL, + SDL_HINT_OVERRIDE +} SDL_HintPriority; + + +/** + * Set a hint with a specific priority. + * + * The priority controls the behavior when setting a hint that already has a + * value. Hints will replace existing hints of their priority and lower. + * Environment variables are considered to have override priority. + * + * \param name the hint to set + * \param value the value of the hint variable + * \param priority the SDL_HintPriority level for the hint + * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetHint + * \sa SDL_SetHint + */ +extern DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, + const char *value, + SDL_HintPriority priority); + +/** + * Set a hint with normal priority. + * + * Hints will not be set if there is an existing override hint or environment + * variable that takes precedence. You can use SDL_SetHintWithPriority() to + * set the hint with override priority instead. + * + * \param name the hint to set + * \param value the value of the hint variable + * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetHint + * \sa SDL_SetHintWithPriority + */ +extern DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, + const char *value); + +/** + * Reset a hint to the default value. + * + * This will reset a hint to the value of the environment variable, or NULL if + * the environment isn't set. Callbacks will be called normally with this + * change. + * + * \param name the hint to set + * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GetHint + * \sa SDL_SetHint + */ +extern DECLSPEC SDL_bool SDLCALL SDL_ResetHint(const char *name); + +/** + * Reset all hints to the default values. + * + * This will reset all hints to the value of the associated environment + * variable, or NULL if the environment isn't set. Callbacks will be called + * normally with this change. + * + * \since This function is available since SDL 2.26.0. + * + * \sa SDL_GetHint + * \sa SDL_SetHint + * \sa SDL_ResetHint + */ +extern DECLSPEC void SDLCALL SDL_ResetHints(void); + +/** + * Get the value of a hint. + * + * \param name the hint to query + * \returns the string value of a hint or NULL if the hint isn't set. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetHint + * \sa SDL_SetHintWithPriority + */ +extern DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); + +/** + * Get the boolean value of a hint variable. + * + * \param name the name of the hint to get the boolean value from + * \param default_value the value to return if the hint does not exist + * \returns the boolean value of a hint or the provided default value if the + * hint does not exist. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_GetHint + * \sa SDL_SetHint + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GetHintBoolean(const char *name, SDL_bool default_value); + +/** + * Type definition of the hint callback function. + * + * \param userdata what was passed as `userdata` to SDL_AddHintCallback() + * \param name what was passed as `name` to SDL_AddHintCallback() + * \param oldValue the previous hint value + * \param newValue the new value hint is to be set to + */ +typedef void (SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); + +/** + * Add a function to watch a particular hint. + * + * \param name the hint to watch + * \param callback An SDL_HintCallback function that will be called when the + * hint value changes + * \param userdata a pointer to pass to the callback function + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_DelHintCallback + */ +extern DECLSPEC void SDLCALL SDL_AddHintCallback(const char *name, + SDL_HintCallback callback, + void *userdata); + +/** + * Remove a function watching a particular hint. + * + * \param name the hint being watched + * \param callback An SDL_HintCallback function that will be called when the + * hint value changes + * \param userdata a pointer being passed to the callback function + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AddHintCallback + */ +extern DECLSPEC void SDLCALL SDL_DelHintCallback(const char *name, + SDL_HintCallback callback, + void *userdata); + +/** + * Clear all hints. + * + * This function is automatically called during SDL_Quit(), and deletes all + * callbacks without calling them and frees all memory associated with hints. + * If you're calling this from application code you probably want to call + * SDL_ResetHints() instead. + * + * This function will be removed from the API the next time we rev the ABI. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ResetHints + */ +extern DECLSPEC void SDLCALL SDL_ClearHints(void); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_hints_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1ff23eed451a796edb20efc4ea8220ae0584ff11 GIT binary patch literal 44245 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h new file mode 100644 index 00000000..b9b4f622 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h @@ -0,0 +1,1069 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_joystick.h + * + * Include file for SDL joystick event handling + * + * The term "device_index" identifies currently plugged in joystick devices between 0 and SDL_NumJoysticks(), with the exact joystick + * behind a device_index changing as joysticks are plugged and unplugged. + * + * The term "instance_id" is the current instantiation of a joystick device in the system, if the joystick is removed and then re-inserted + * then it will get a new instance_id, instance_id's are monotonically increasing identifiers of a joystick plugged in. + * + * The term "player_index" is the number assigned to a player on a specific + * controller. For XInput controllers this returns the XInput user index. + * Many joysticks will not be able to supply this information. + * + * The term JoystickGUID is a stable 128-bit identifier for a joystick device that does not change over time, it identifies class of + * the device (a X360 wired controller for example). This identifier is platform dependent. + */ + +#ifndef SDL_joystick_h_ +#define SDL_joystick_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_guid.h" +#include "SDL_mutex.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \file SDL_joystick.h + * + * In order to use these functions, SDL_Init() must have been called + * with the ::SDL_INIT_JOYSTICK flag. This causes SDL to scan the system + * for joysticks, and load appropriate drivers. + * + * If you would like to receive joystick updates while the application + * is in the background, you should set the following hint before calling + * SDL_Init(): SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS + */ + +/** + * The joystick structure used to identify an SDL joystick + */ +#ifdef SDL_THREAD_SAFETY_ANALYSIS +extern SDL_mutex *SDL_joystick_lock; +#endif +struct _SDL_Joystick; +typedef struct _SDL_Joystick SDL_Joystick; + +/* A structure that encodes the stable unique id for a joystick device */ +typedef SDL_GUID SDL_JoystickGUID; + +/** + * This is a unique ID for a joystick for the time it is connected to the system, + * and is never reused for the lifetime of the application. If the joystick is + * disconnected and reconnected, it will get a new ID. + * + * The ID value starts at 0 and increments from there. The value -1 is an invalid ID. + */ +typedef Sint32 SDL_JoystickID; + +typedef enum +{ + SDL_JOYSTICK_TYPE_UNKNOWN, + SDL_JOYSTICK_TYPE_GAMECONTROLLER, + SDL_JOYSTICK_TYPE_WHEEL, + SDL_JOYSTICK_TYPE_ARCADE_STICK, + SDL_JOYSTICK_TYPE_FLIGHT_STICK, + SDL_JOYSTICK_TYPE_DANCE_PAD, + SDL_JOYSTICK_TYPE_GUITAR, + SDL_JOYSTICK_TYPE_DRUM_KIT, + SDL_JOYSTICK_TYPE_ARCADE_PAD, + SDL_JOYSTICK_TYPE_THROTTLE +} SDL_JoystickType; + +typedef enum +{ + SDL_JOYSTICK_POWER_UNKNOWN = -1, + SDL_JOYSTICK_POWER_EMPTY, /* <= 5% */ + SDL_JOYSTICK_POWER_LOW, /* <= 20% */ + SDL_JOYSTICK_POWER_MEDIUM, /* <= 70% */ + SDL_JOYSTICK_POWER_FULL, /* <= 100% */ + SDL_JOYSTICK_POWER_WIRED, + SDL_JOYSTICK_POWER_MAX +} SDL_JoystickPowerLevel; + +/* Set max recognized G-force from accelerometer + See src/joystick/uikit/SDL_sysjoystick.m for notes on why this is needed + */ +#define SDL_IPHONE_MAX_GFORCE 5.0 + + +/* Function prototypes */ + +/** + * Locking for multi-threaded access to the joystick API + * + * If you are using the joystick API or handling events from multiple threads + * you should use these locking functions to protect access to the joysticks. + * + * In particular, you are guaranteed that the joystick list won't change, so + * the API functions that take a joystick index will be valid, and joystick + * and game controller events will not be delivered. + * + * As of SDL 2.26.0, you can take the joystick lock around reinitializing the + * joystick subsystem, to prevent other threads from seeing joysticks in an + * uninitialized state. However, all open joysticks will be closed and SDL + * functions called with them will fail. + * + * \since This function is available since SDL 2.0.7. + */ +extern DECLSPEC void SDLCALL SDL_LockJoysticks(void) SDL_ACQUIRE(SDL_joystick_lock); + + +/** + * Unlocking for multi-threaded access to the joystick API + * + * If you are using the joystick API or handling events from multiple threads + * you should use these locking functions to protect access to the joysticks. + * + * In particular, you are guaranteed that the joystick list won't change, so + * the API functions that take a joystick index will be valid, and joystick + * and game controller events will not be delivered. + * + * \since This function is available since SDL 2.0.7. + */ +extern DECLSPEC void SDLCALL SDL_UnlockJoysticks(void) SDL_RELEASE(SDL_joystick_lock); + +/** + * Count the number of joysticks attached to the system. + * + * \returns the number of attached joysticks on success or a negative error + * code on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickName + * \sa SDL_JoystickPath + * \sa SDL_JoystickOpen + */ +extern DECLSPEC int SDLCALL SDL_NumJoysticks(void); + +/** + * Get the implementation dependent name of a joystick. + * + * This can be called before any joysticks are opened. + * + * \param device_index the index of the joystick to query (the N'th joystick + * on the system) + * \returns the name of the selected joystick. If no name can be found, this + * function returns NULL; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickName + * \sa SDL_JoystickOpen + */ +extern DECLSPEC const char *SDLCALL SDL_JoystickNameForIndex(int device_index); + +/** + * Get the implementation dependent path of a joystick. + * + * This can be called before any joysticks are opened. + * + * \param device_index the index of the joystick to query (the N'th joystick + * on the system) + * \returns the path of the selected joystick. If no path can be found, this + * function returns NULL; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_JoystickPath + * \sa SDL_JoystickOpen + */ +extern DECLSPEC const char *SDLCALL SDL_JoystickPathForIndex(int device_index); + +/** + * Get the player index of a joystick, or -1 if it's not available This can be + * called before any joysticks are opened. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC int SDLCALL SDL_JoystickGetDevicePlayerIndex(int device_index); + +/** + * Get the implementation-dependent GUID for the joystick at a given device + * index. + * + * This function can be called before any joysticks are opened. + * + * \param device_index the index of the joystick to query (the N'th joystick + * on the system + * \returns the GUID of the selected joystick. If called on an invalid index, + * this function returns a zero GUID + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetGUID + * \sa SDL_JoystickGetGUIDString + */ +extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetDeviceGUID(int device_index); + +/** + * Get the USB vendor ID of a joystick, if available. + * + * This can be called before any joysticks are opened. If the vendor ID isn't + * available this function returns 0. + * + * \param device_index the index of the joystick to query (the N'th joystick + * on the system + * \returns the USB vendor ID of the selected joystick. If called on an + * invalid index, this function returns zero + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceVendor(int device_index); + +/** + * Get the USB product ID of a joystick, if available. + * + * This can be called before any joysticks are opened. If the product ID isn't + * available this function returns 0. + * + * \param device_index the index of the joystick to query (the N'th joystick + * on the system + * \returns the USB product ID of the selected joystick. If called on an + * invalid index, this function returns zero + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceProduct(int device_index); + +/** + * Get the product version of a joystick, if available. + * + * This can be called before any joysticks are opened. If the product version + * isn't available this function returns 0. + * + * \param device_index the index of the joystick to query (the N'th joystick + * on the system + * \returns the product version of the selected joystick. If called on an + * invalid index, this function returns zero + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceProductVersion(int device_index); + +/** + * Get the type of a joystick, if available. + * + * This can be called before any joysticks are opened. + * + * \param device_index the index of the joystick to query (the N'th joystick + * on the system + * \returns the SDL_JoystickType of the selected joystick. If called on an + * invalid index, this function returns `SDL_JOYSTICK_TYPE_UNKNOWN` + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetDeviceType(int device_index); + +/** + * Get the instance ID of a joystick. + * + * This can be called before any joysticks are opened. + * + * \param device_index the index of the joystick to query (the N'th joystick + * on the system + * \returns the instance id of the selected joystick. If called on an invalid + * index, this function returns -1. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickGetDeviceInstanceID(int device_index); + +/** + * Open a joystick for use. + * + * The `device_index` argument refers to the N'th joystick presently + * recognized by SDL on the system. It is **NOT** the same as the instance ID + * used to identify the joystick in future events. See + * SDL_JoystickInstanceID() for more details about instance IDs. + * + * The joystick subsystem must be initialized before a joystick can be opened + * for use. + * + * \param device_index the index of the joystick to query + * \returns a joystick identifier or NULL if an error occurred; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickClose + * \sa SDL_JoystickInstanceID + */ +extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickOpen(int device_index); + +/** + * Get the SDL_Joystick associated with an instance id. + * + * \param instance_id the instance id to get the SDL_Joystick for + * \returns an SDL_Joystick on success or NULL on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.4. + */ +extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickFromInstanceID(SDL_JoystickID instance_id); + +/** + * Get the SDL_Joystick associated with a player index. + * + * \param player_index the player index to get the SDL_Joystick for + * \returns an SDL_Joystick on success or NULL on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.12. + */ +extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickFromPlayerIndex(int player_index); + +/** + * Attach a new virtual joystick. + * + * \returns the joystick's device index, or -1 if an error occurred. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_JoystickAttachVirtual(SDL_JoystickType type, + int naxes, + int nbuttons, + int nhats); + +/** + * The structure that defines an extended virtual joystick description + * + * The caller must zero the structure and then initialize the version with `SDL_VIRTUAL_JOYSTICK_DESC_VERSION` before passing it to SDL_JoystickAttachVirtualEx() + * All other elements of this structure are optional and can be left 0. + * + * \sa SDL_JoystickAttachVirtualEx + */ +typedef struct SDL_VirtualJoystickDesc +{ + Uint16 version; /**< `SDL_VIRTUAL_JOYSTICK_DESC_VERSION` */ + Uint16 type; /**< `SDL_JoystickType` */ + Uint16 naxes; /**< the number of axes on this joystick */ + Uint16 nbuttons; /**< the number of buttons on this joystick */ + Uint16 nhats; /**< the number of hats on this joystick */ + Uint16 vendor_id; /**< the USB vendor ID of this joystick */ + Uint16 product_id; /**< the USB product ID of this joystick */ + Uint16 padding; /**< unused */ + Uint32 button_mask; /**< A mask of which buttons are valid for this controller + e.g. (1 << SDL_CONTROLLER_BUTTON_A) */ + Uint32 axis_mask; /**< A mask of which axes are valid for this controller + e.g. (1 << SDL_CONTROLLER_AXIS_LEFTX) */ + const char *name; /**< the name of the joystick */ + + void *userdata; /**< User data pointer passed to callbacks */ + void (SDLCALL *Update)(void *userdata); /**< Called when the joystick state should be updated */ + void (SDLCALL *SetPlayerIndex)(void *userdata, int player_index); /**< Called when the player index is set */ + int (SDLCALL *Rumble)(void *userdata, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble); /**< Implements SDL_JoystickRumble() */ + int (SDLCALL *RumbleTriggers)(void *userdata, Uint16 left_rumble, Uint16 right_rumble); /**< Implements SDL_JoystickRumbleTriggers() */ + int (SDLCALL *SetLED)(void *userdata, Uint8 red, Uint8 green, Uint8 blue); /**< Implements SDL_JoystickSetLED() */ + int (SDLCALL *SendEffect)(void *userdata, const void *data, int size); /**< Implements SDL_JoystickSendEffect() */ + +} SDL_VirtualJoystickDesc; + +/** + * \brief The current version of the SDL_VirtualJoystickDesc structure + */ +#define SDL_VIRTUAL_JOYSTICK_DESC_VERSION 1 + +/** + * Attach a new virtual joystick with extended properties. + * + * \returns the joystick's device index, or -1 if an error occurred. + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC int SDLCALL SDL_JoystickAttachVirtualEx(const SDL_VirtualJoystickDesc *desc); + +/** + * Detach a virtual joystick. + * + * \param device_index a value previously returned from + * SDL_JoystickAttachVirtual() + * \returns 0 on success, or -1 if an error occurred. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_JoystickDetachVirtual(int device_index); + +/** + * Query whether or not the joystick at a given device index is virtual. + * + * \param device_index a joystick device index. + * \returns SDL_TRUE if the joystick is virtual, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickIsVirtual(int device_index); + +/** + * Set values on an opened, virtual-joystick's axis. + * + * Please note that values set here will not be applied until the next call to + * SDL_JoystickUpdate, which can either be called directly, or can be called + * indirectly through various other SDL APIs, including, but not limited to + * the following: SDL_PollEvent, SDL_PumpEvents, SDL_WaitEventTimeout, + * SDL_WaitEvent. + * + * Note that when sending trigger axes, you should scale the value to the full + * range of Sint16. For example, a trigger at rest would have the value of + * `SDL_JOYSTICK_AXIS_MIN`. + * + * \param joystick the virtual joystick on which to set state. + * \param axis the specific axis on the virtual joystick to set. + * \param value the new value for the specified axis. + * \returns 0 on success, -1 on error. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value); + +/** + * Set values on an opened, virtual-joystick's button. + * + * Please note that values set here will not be applied until the next call to + * SDL_JoystickUpdate, which can either be called directly, or can be called + * indirectly through various other SDL APIs, including, but not limited to + * the following: SDL_PollEvent, SDL_PumpEvents, SDL_WaitEventTimeout, + * SDL_WaitEvent. + * + * \param joystick the virtual joystick on which to set state. + * \param button the specific button on the virtual joystick to set. + * \param value the new value for the specified button. + * \returns 0 on success, -1 on error. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualButton(SDL_Joystick *joystick, int button, Uint8 value); + +/** + * Set values on an opened, virtual-joystick's hat. + * + * Please note that values set here will not be applied until the next call to + * SDL_JoystickUpdate, which can either be called directly, or can be called + * indirectly through various other SDL APIs, including, but not limited to + * the following: SDL_PollEvent, SDL_PumpEvents, SDL_WaitEventTimeout, + * SDL_WaitEvent. + * + * \param joystick the virtual joystick on which to set state. + * \param hat the specific hat on the virtual joystick to set. + * \param value the new value for the specified hat. + * \returns 0 on success, -1 on error. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value); + +/** + * Get the implementation dependent name of a joystick. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the name of the selected joystick. If no name can be found, this + * function returns NULL; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickNameForIndex + * \sa SDL_JoystickOpen + */ +extern DECLSPEC const char *SDLCALL SDL_JoystickName(SDL_Joystick *joystick); + +/** + * Get the implementation dependent path of a joystick. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the path of the selected joystick. If no path can be found, this + * function returns NULL; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_JoystickPathForIndex + */ +extern DECLSPEC const char *SDLCALL SDL_JoystickPath(SDL_Joystick *joystick); + +/** + * Get the player index of an opened joystick. + * + * For XInput controllers this returns the XInput user index. Many joysticks + * will not be able to supply this information. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the player index, or -1 if it's not available. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC int SDLCALL SDL_JoystickGetPlayerIndex(SDL_Joystick *joystick); + +/** + * Set the player index of an opened joystick. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \param player_index Player index to assign to this joystick, or -1 to clear + * the player index and turn off player LEDs. + * + * \since This function is available since SDL 2.0.12. + */ +extern DECLSPEC void SDLCALL SDL_JoystickSetPlayerIndex(SDL_Joystick *joystick, int player_index); + +/** + * Get the implementation-dependent GUID for the joystick. + * + * This function requires an open joystick. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the GUID of the given joystick. If called on an invalid index, + * this function returns a zero GUID; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetDeviceGUID + * \sa SDL_JoystickGetGUIDString + */ +extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUID(SDL_Joystick *joystick); + +/** + * Get the USB vendor ID of an opened joystick, if available. + * + * If the vendor ID isn't available this function returns 0. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the USB vendor ID of the selected joystick, or 0 if unavailable. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetVendor(SDL_Joystick *joystick); + +/** + * Get the USB product ID of an opened joystick, if available. + * + * If the product ID isn't available this function returns 0. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the USB product ID of the selected joystick, or 0 if unavailable. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProduct(SDL_Joystick *joystick); + +/** + * Get the product version of an opened joystick, if available. + * + * If the product version isn't available this function returns 0. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the product version of the selected joystick, or 0 if unavailable. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProductVersion(SDL_Joystick *joystick); + +/** + * Get the firmware version of an opened joystick, if available. + * + * If the firmware version isn't available this function returns 0. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the firmware version of the selected joystick, or 0 if + * unavailable. + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetFirmwareVersion(SDL_Joystick *joystick); + +/** + * Get the serial number of an opened joystick, if available. + * + * Returns the serial number of the joystick, or NULL if it is not available. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the serial number of the selected joystick, or NULL if + * unavailable. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC const char * SDLCALL SDL_JoystickGetSerial(SDL_Joystick *joystick); + +/** + * Get the type of an opened joystick. + * + * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() + * \returns the SDL_JoystickType of the selected joystick. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetType(SDL_Joystick *joystick); + +/** + * Get an ASCII string representation for a given SDL_JoystickGUID. + * + * You should supply at least 33 bytes for pszGUID. + * + * \param guid the SDL_JoystickGUID you wish to convert to string + * \param pszGUID buffer in which to write the ASCII string + * \param cbGUID the size of pszGUID + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetDeviceGUID + * \sa SDL_JoystickGetGUID + * \sa SDL_JoystickGetGUIDFromString + */ +extern DECLSPEC void SDLCALL SDL_JoystickGetGUIDString(SDL_JoystickGUID guid, char *pszGUID, int cbGUID); + +/** + * Convert a GUID string into a SDL_JoystickGUID structure. + * + * Performs no error checking. If this function is given a string containing + * an invalid GUID, the function will silently succeed, but the GUID generated + * will not be useful. + * + * \param pchGUID string containing an ASCII representation of a GUID + * \returns a SDL_JoystickGUID structure. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetGUIDString + */ +extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUIDFromString(const char *pchGUID); + +/** + * Get the device information encoded in a SDL_JoystickGUID structure + * + * \param guid the SDL_JoystickGUID you wish to get info about + * \param vendor A pointer filled in with the device VID, or 0 if not + * available + * \param product A pointer filled in with the device PID, or 0 if not + * available + * \param version A pointer filled in with the device version, or 0 if not + * available + * \param crc16 A pointer filled in with a CRC used to distinguish different + * products with the same VID/PID, or 0 if not available + * + * \since This function is available since SDL 2.26.0. + * + * \sa SDL_JoystickGetDeviceGUID + */ +extern DECLSPEC void SDLCALL SDL_GetJoystickGUIDInfo(SDL_JoystickGUID guid, Uint16 *vendor, Uint16 *product, Uint16 *version, Uint16 *crc16); + +/** + * Get the status of a specified joystick. + * + * \param joystick the joystick to query + * \returns SDL_TRUE if the joystick has been opened, SDL_FALSE if it has not; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickClose + * \sa SDL_JoystickOpen + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAttached(SDL_Joystick *joystick); + +/** + * Get the instance ID of an opened joystick. + * + * \param joystick an SDL_Joystick structure containing joystick information + * \returns the instance ID of the specified joystick on success or a negative + * error code on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickOpen + */ +extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickInstanceID(SDL_Joystick *joystick); + +/** + * Get the number of general axis controls on a joystick. + * + * Often, the directional pad on a game controller will either look like 4 + * separate buttons or a POV hat, and not axes, but all of this is up to the + * device and platform. + * + * \param joystick an SDL_Joystick structure containing joystick information + * \returns the number of axis controls/number of axes on success or a + * negative error code on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetAxis + * \sa SDL_JoystickOpen + */ +extern DECLSPEC int SDLCALL SDL_JoystickNumAxes(SDL_Joystick *joystick); + +/** + * Get the number of trackballs on a joystick. + * + * Joystick trackballs have only relative motion events associated with them + * and their state cannot be polled. + * + * Most joysticks do not have trackballs. + * + * \param joystick an SDL_Joystick structure containing joystick information + * \returns the number of trackballs on success or a negative error code on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetBall + */ +extern DECLSPEC int SDLCALL SDL_JoystickNumBalls(SDL_Joystick *joystick); + +/** + * Get the number of POV hats on a joystick. + * + * \param joystick an SDL_Joystick structure containing joystick information + * \returns the number of POV hats on success or a negative error code on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetHat + * \sa SDL_JoystickOpen + */ +extern DECLSPEC int SDLCALL SDL_JoystickNumHats(SDL_Joystick *joystick); + +/** + * Get the number of buttons on a joystick. + * + * \param joystick an SDL_Joystick structure containing joystick information + * \returns the number of buttons on success or a negative error code on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickGetButton + * \sa SDL_JoystickOpen + */ +extern DECLSPEC int SDLCALL SDL_JoystickNumButtons(SDL_Joystick *joystick); + +/** + * Update the current state of the open joysticks. + * + * This is called automatically by the event loop if any joystick events are + * enabled. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickEventState + */ +extern DECLSPEC void SDLCALL SDL_JoystickUpdate(void); + +/** + * Enable/disable joystick event polling. + * + * If joystick events are disabled, you must call SDL_JoystickUpdate() + * yourself and manually check the state of the joystick when you want + * joystick information. + * + * It is recommended that you leave joystick event handling enabled. + * + * **WARNING**: Calling this function may delete all events currently in SDL's + * event queue. + * + * \param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE` + * \returns 1 if enabled, 0 if disabled, or a negative error code on failure; + * call SDL_GetError() for more information. + * + * If `state` is `SDL_QUERY` then the current state is returned, + * otherwise the new processing state is returned. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GameControllerEventState + */ +extern DECLSPEC int SDLCALL SDL_JoystickEventState(int state); + +#define SDL_JOYSTICK_AXIS_MAX 32767 +#define SDL_JOYSTICK_AXIS_MIN -32768 + +/** + * Get the current state of an axis control on a joystick. + * + * SDL makes no promises about what part of the joystick any given axis refers + * to. Your game should have some sort of configuration UI to let users + * specify what each axis should be bound to. Alternately, SDL's higher-level + * Game Controller API makes a great effort to apply order to this lower-level + * interface, so you know that a specific axis is the "left thumb stick," etc. + * + * The value returned by SDL_JoystickGetAxis() is a signed integer (-32768 to + * 32767) representing the current position of the axis. It may be necessary + * to impose certain tolerances on these values to account for jitter. + * + * \param joystick an SDL_Joystick structure containing joystick information + * \param axis the axis to query; the axis indices start at index 0 + * \returns a 16-bit signed integer representing the current position of the + * axis or 0 on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickNumAxes + */ +extern DECLSPEC Sint16 SDLCALL SDL_JoystickGetAxis(SDL_Joystick *joystick, + int axis); + +/** + * Get the initial state of an axis control on a joystick. + * + * The state is a value ranging from -32768 to 32767. + * + * The axis indices start at index 0. + * + * \param joystick an SDL_Joystick structure containing joystick information + * \param axis the axis to query; the axis indices start at index 0 + * \param state Upon return, the initial value is supplied here. + * \return SDL_TRUE if this axis has any initial value, or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAxisInitialState(SDL_Joystick *joystick, + int axis, Sint16 *state); + +/** + * \name Hat positions + */ +/* @{ */ +#define SDL_HAT_CENTERED 0x00 +#define SDL_HAT_UP 0x01 +#define SDL_HAT_RIGHT 0x02 +#define SDL_HAT_DOWN 0x04 +#define SDL_HAT_LEFT 0x08 +#define SDL_HAT_RIGHTUP (SDL_HAT_RIGHT|SDL_HAT_UP) +#define SDL_HAT_RIGHTDOWN (SDL_HAT_RIGHT|SDL_HAT_DOWN) +#define SDL_HAT_LEFTUP (SDL_HAT_LEFT|SDL_HAT_UP) +#define SDL_HAT_LEFTDOWN (SDL_HAT_LEFT|SDL_HAT_DOWN) +/* @} */ + +/** + * Get the current state of a POV hat on a joystick. + * + * The returned value will be one of the following positions: + * + * - `SDL_HAT_CENTERED` + * - `SDL_HAT_UP` + * - `SDL_HAT_RIGHT` + * - `SDL_HAT_DOWN` + * - `SDL_HAT_LEFT` + * - `SDL_HAT_RIGHTUP` + * - `SDL_HAT_RIGHTDOWN` + * - `SDL_HAT_LEFTUP` + * - `SDL_HAT_LEFTDOWN` + * + * \param joystick an SDL_Joystick structure containing joystick information + * \param hat the hat index to get the state from; indices start at index 0 + * \returns the current hat position. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickNumHats + */ +extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetHat(SDL_Joystick *joystick, + int hat); + +/** + * Get the ball axis change since the last poll. + * + * Trackballs can only return relative motion since the last call to + * SDL_JoystickGetBall(), these motion deltas are placed into `dx` and `dy`. + * + * Most joysticks do not have trackballs. + * + * \param joystick the SDL_Joystick to query + * \param ball the ball index to query; ball indices start at index 0 + * \param dx stores the difference in the x axis position since the last poll + * \param dy stores the difference in the y axis position since the last poll + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickNumBalls + */ +extern DECLSPEC int SDLCALL SDL_JoystickGetBall(SDL_Joystick *joystick, + int ball, int *dx, int *dy); + +/** + * Get the current state of a button on a joystick. + * + * \param joystick an SDL_Joystick structure containing joystick information + * \param button the button index to get the state from; indices start at + * index 0 + * \returns 1 if the specified button is pressed, 0 otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickNumButtons + */ +extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetButton(SDL_Joystick *joystick, + int button); + +/** + * Start a rumble effect. + * + * Each call to this function cancels any previous rumble effect, and calling + * it with 0 intensity stops any rumbling. + * + * \param joystick The joystick to vibrate + * \param low_frequency_rumble The intensity of the low frequency (left) + * rumble motor, from 0 to 0xFFFF + * \param high_frequency_rumble The intensity of the high frequency (right) + * rumble motor, from 0 to 0xFFFF + * \param duration_ms The duration of the rumble effect, in milliseconds + * \returns 0, or -1 if rumble isn't supported on this joystick + * + * \since This function is available since SDL 2.0.9. + * + * \sa SDL_JoystickHasRumble + */ +extern DECLSPEC int SDLCALL SDL_JoystickRumble(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); + +/** + * Start a rumble effect in the joystick's triggers + * + * Each call to this function cancels any previous trigger rumble effect, and + * calling it with 0 intensity stops any rumbling. + * + * Note that this is rumbling of the _triggers_ and not the game controller as + * a whole. This is currently only supported on Xbox One controllers. If you + * want the (more common) whole-controller rumble, use SDL_JoystickRumble() + * instead. + * + * \param joystick The joystick to vibrate + * \param left_rumble The intensity of the left trigger rumble motor, from 0 + * to 0xFFFF + * \param right_rumble The intensity of the right trigger rumble motor, from 0 + * to 0xFFFF + * \param duration_ms The duration of the rumble effect, in milliseconds + * \returns 0, or -1 if trigger rumble isn't supported on this joystick + * + * \since This function is available since SDL 2.0.14. + * + * \sa SDL_JoystickHasRumbleTriggers + */ +extern DECLSPEC int SDLCALL SDL_JoystickRumbleTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); + +/** + * Query whether a joystick has an LED. + * + * An example of a joystick LED is the light on the back of a PlayStation 4's + * DualShock 4 controller. + * + * \param joystick The joystick to query + * \return SDL_TRUE if the joystick has a modifiable LED, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickHasLED(SDL_Joystick *joystick); + +/** + * Query whether a joystick has rumble support. + * + * \param joystick The joystick to query + * \return SDL_TRUE if the joystick has rumble, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_JoystickRumble + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickHasRumble(SDL_Joystick *joystick); + +/** + * Query whether a joystick has rumble support on triggers. + * + * \param joystick The joystick to query + * \return SDL_TRUE if the joystick has trigger rumble, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_JoystickRumbleTriggers + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickHasRumbleTriggers(SDL_Joystick *joystick); + +/** + * Update a joystick's LED color. + * + * An example of a joystick LED is the light on the back of a PlayStation 4's + * DualShock 4 controller. + * + * \param joystick The joystick to update + * \param red The intensity of the red LED + * \param green The intensity of the green LED + * \param blue The intensity of the blue LED + * \returns 0 on success, -1 if this joystick does not have a modifiable LED + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_JoystickSetLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); + +/** + * Send a joystick specific effect packet + * + * \param joystick The joystick to affect + * \param data The data to send to the joystick + * \param size The size of the data to send to the joystick + * \returns 0, or -1 if this joystick or driver doesn't support effect packets + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC int SDLCALL SDL_JoystickSendEffect(SDL_Joystick *joystick, const void *data, int size); + +/** + * Close a joystick previously opened with SDL_JoystickOpen(). + * + * \param joystick The joystick device to close + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_JoystickOpen + */ +extern DECLSPEC void SDLCALL SDL_JoystickClose(SDL_Joystick *joystick); + +/** + * Get the battery level of a joystick as SDL_JoystickPowerLevel. + * + * \param joystick the SDL_Joystick to query + * \returns the current battery level as SDL_JoystickPowerLevel on success or + * `SDL_JOYSTICK_POWER_UNKNOWN` if it is unknown + * + * \since This function is available since SDL 2.0.4. + */ +extern DECLSPEC SDL_JoystickPowerLevel SDLCALL SDL_JoystickCurrentPowerLevel(SDL_Joystick *joystick); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_joystick_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..f4eaebfbcceda658675f1d7fe3ef092804e1004b GIT binary patch literal 60301 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 Zlv#hQf{F!mii)OaGch#!+N#9bJe^nx zf_{vWCdo~iYk`qYz{F9OE;@l;PHKo zoe>j56cZpCip53gD=}l-B}59LW20+5SH`3d`Bx#47N(*?LVL!8B)y-)l$Zm{Z>F$^ zu$#YJ7YCBAul=F4eb%pPZxGUT5$gXga#LjIB1qRo?$wa4ynk=J#IF<3+4=hHaAA$*u zz2e?P(1S#v8e&TVMlzCVO4clcMR_&q^uts&Ey{t%Xt8hs-GZ6wK?({{K}zEunBAro zR2Vv{!jY2`!s=G&;`*I*YhFsDISBz-r6?iS^OV8zZ6@)=E+tAJiHVRja`)EJ(}ogH z6mQS)fpulwRbaJH2!2Bc#c(75+flG~2$MqWnX?ro1bwh=nI2Z-hnGO6QvuFD5tU&G zk|HWk>Tj$z7nTYJjTw_yfyxWhV+tp{Hw(;!@nJ>WolqGO%}?MK(f%36r5Kh9p%(Nz0Q2{EtNI$M$#AUB{GCYr>7ooAnmZ#xlvW1V1~)19Ts)19}0bxwzGb-I%RJEOKA+#)Z%SVx^!+rL!_w z>7)YON>HTI`5jQ?$6vVal^-3s=WBfs=0&iHvE9N>h$k5os9QJ#az%Hlipjr;2pe6n z@D}tVgYowl-VB@&J7pv~{*j`4`)4mXv9|QId}fs6rN@!YI_@~W4Gi)*-0sZc9 zwnLlXb%nU@2eW+h-o}G3Ymw!WSu9G?qTe~Ko2f~PiZq9VzB60$q!HnNz_zJ{*fg5O z7aQ@SEeU#)08DHYhQJpPK9MDa$<>v(C)im)&V5UWE#;<8Hsmd#Oo$-I0E&thRMlcI zET%9WM za+9LUF`9iYel-)y)3FI7s;Qa)td63*EbL{U-uI8&&1YZvY*2z+`5g}o{^K{ldZ9~j zc^THsGA9+?l!433oV3~CN5iiQPrU|c5od2?E7Dj1#+eI)DbD{wCdhIU`N4xi?c65`I`N&W2-u|=i9=Jeq5@}wuA)+&nh|pAUd?`~s z4;eDuP|ud&3&oLieo^roh*KbrV@oWhZ>U++6*Zqd0*j#!oYK!2^_A>=cMdE_9k}A( zA7XrTP40s3>2h?D?gdgQ$<_&}@-p`)x3HnF=0;ZLzQW3twQ_ko4fA5GXs zPDvm`VHv0aHs~xKZ#am`8DINk#lHDXuC7@#PsXQcUOz3|-yFGq%4|d}X?q z5MqBTf5Uew;W3|rFh-pjLL8$jBdSbgmf{_%>1PP_U*foaF)vm2_^hid*>Yp|^ zO-NB=s7wTv92znNKGIBjDK{g`D9lk@1Lr~Rj8xu`JbVztSFA^zJHRt)JewZaqt^0q7su>>&R&l2G|0z}R{AUhtVr6(}?jfwH zha87!O}%v4_6LUE|Gi(Bl%SH+TAapgZ*b5zHVV;VtoB>BXq&vngsQ8LLeSwFgD58{$f(HF8g?FsXJ)b-7-b)PKD_iEXL_!@lMn zANtc4u^0|_)+C2>LSs18_Ha&UeD;b3M`!-w{`xevt$0CfQCDkW1}ccyB8M5Gs!9pU zf>HSwa@%}#9y}V+8jMdWbdZanZY$8@q)=gANMVHuKSq$+WUpq#Wj^WpmX~_C;YXe) zR@6*Rjm;0g@NVL?{M1iQc|LXj+k<|R`r@?UFA7I*m?m)8=$xEvbS{VI*9aVXoogXW ze^}{lIP<+t4HAd;`9zs~Fr(1e#Wcz>Y?x`gOGdaIGbMK!R-NMT455;l!L+o3v5O@O z)3FQl>GQ{C!exx!R?jjWxoqcTlw?o+YINWS-@pDhf=DGO$u8jytR+bLmbfSl@H5AG zfuFAVlCn>%bTI!#nY(n)O1MudLtj*6N*9?Q%}m&-+_tpfl)YzekBuOUe+K2%VwVnt zt8a+NKViy_Gx5%p+xyzm*B|`pC_#&Q#2@RO>mV@o5SV({ERNLHNiROS%w7*r&@hRI8NfI$&;qbovB~`@iW7} zvgkWA1V(oNqdQn(?*K-3I5&a+Ui$qtcihyt^}#F{t>NR4a|RUX2-)zehUTarW=6={ znSPdRE6$S5@@?j!vWPt(yqI~YEcmj&N5`g}@=0Yj6yQVIRRMN3azPYyt{yJ1Ju)`E zoT%0uU4(8*KS|XF4;npVbR#V$U<}M7F{TyL39F-Q8At!RWj|YC!gBl+I|Fd zt9b}~_-gJksKZZt8H74+73TzV*XnOFg=zguBMh=@y&u0SpAp49mcw<~fK;YH|Bb^d z*-*0j5qhmTpSC*tiW{~2@;0XKOLjeR`TI9~kh%F{M|X}yrH zy(kpj>!#Do_aYF!*PSe)qawaoxc}6n4^G%5<;$!W*n&2HfM_OtmPOj=j0n^5s$_4n zbCF>W(Tq;68DkzKk2-^yFPVatt>4A?0DnmF_A;kO0LNHoFypQaZ7gtRh zSKFFxp+w|U>irpgJ*`N^J^2tmS~XGEK*fgqx7bXka63jV7R8FwV2TUd9@ws?LlY2# z(a)EbEyU0mo#!WNE-5O8#I8pk^oN*FAjt9%0&j>S`FPlpRTgQZF*pmFjz=H|T<%RX zHV=tyZNW}9AuVYPN_Fs_H)M=Z1RPF4+}k}-TEWDzMC8{}@h!V5-XPwI8EO%`*Jz~t z5?-uu7!t{>ew64Gc89BRC?4m6L~N}((H7x9>7Yp1CiQrcIsaXYm;E63J%*>Hf0~6s z)7N9#wIZetJx90{^{|S$1^O9-`Y{IbGg$|a(V%Dt$14i)U@}P(zzO4HR8<8kc3|HUt9OZnLNq;g-TH%@76HN&OK8H1WT3 zP}%Sgkptk~Dg^YwNtFPm?%$IASKagAmE#UNuS?zjvtN9+W&gBcsUsJ>`t9V=iE{<} zcZ2=A*>LR!`*%AJg8kPF3ym!Blz&SttT3@)iJDg`ET^ND6{osVXJcWtQbQL8}1@Z7$ zZ3%WoiLJ@J<8EFP#wqM~#3RTjjy#SrrOw1i+HSk}le#OpYDCu0HalhKTgGQ3$s%oU0CsGr(z zhROs7qADIM8(x19^`T@4f3jf)J6CUujNoW94qvCOAG~XX_7&njw4$Hm=oMoHMrhd? zAznSu3NHlOAFsk0GeYyny+Ary)k0(I&X_0yGfs_@kGTQwGY~tmK^hQLy`318^g#upIqj}*@;}jI& z0o#kHNSW;kObOpf>wqxk^>Xfq7MeClb+Z84t6Gw**&|Zn>9(wcfEB}1v zuTrz74m|Dtoi`K+jZ^9_O_uVmuTmKESGzl)ao&C6;A^jc|D{H$arC;Mx)AN7Qh^wi z+8a6)Iz@a%3`HdV-<@ClB8Y$Z&aeI^evNHU+oo*8S;gBN+i;X|>Vj`Q{?;i`dZ8of zPoV0W!XvB6C~m0<*yH0os@XfqpA;r z|G&rt&X(nxRA6*^^H&c3=WpLRDug@foSRHK=}^Zc%!wrE=}67I{<{-Sx&OTzdbOs@ z`eIUGEfw|%>w5An06ST{9lXulUURXbT6FuiPKSZyr9eX_lVq_X*Voh zrOMl6l{vwd3mo1AUYA0zB;X*6pypT&Jf+@LhV7X8tBPR2;Gjy{-%5umir2+JjD&p> zZZ2qKxm4-Qvc(k(8|GImpcl^A32}zo3U0~a2a8pmq*k0KE-k2&>H!FL{9C#Jue`T? zd%^n;oJfuR?C+;sU2y2qRO$9>b_bq)_s>FR55NUDz;!kUAhQRYbim&1d4VD2&rdtt zivp%H-%qK4Rn_y~QUR+zaw=fH>7S_-!~Xq_gmR^SvsPp*x_#xwz%`yhg1|jc$~~-< zdqChGR?3h2?=B35KhDphl(BA_vy+y^uShvsQu(Si){Po}G3J)I1xBr#uH5sF~f z20ShK1~&3Y*ioa+y23q?_mI~mGV)`!`Q}3GnB@dqK2HPch2Ql-K{>Q$JyO9=8(3!5 zzq1w1b2ZfpWY)HlBI;)`oG4U%;@UeauI~KpDnY^moU~NHhnf~3Y+K->;+kczp7O*! z^RFI~g@mxgXNUvMvq~r*T&l=t)VYbUoCwpJX_t<}PvJh9%_G~6|EC`DlY%F^=Wdqbki+$;eUN?=d%M>OYeW8BjVgiBOvb2qe*^|qpa!Mdpg}nblIxtcxRzlA>zvDR#TmK{ z&?Z1#&S!A_08qDcH?Hph>cE&g+(m%41KQ4zBX1MR@3-MIN8ZD@b~AJU&>_s|8;RNr zp8WHVelCY#`nB5xGnkip(Ld<}|F?fsntJyA`j7tWozbuBIceinpsDrO)o;4(sb~Hy z0*4$Ukf~A?v*O~R8*Xw895~idOP+*&IxPohK{y=f%u1G|nM;N;oD?cOiUuO|x<(P5 z<=s>i^nzo=3XZv5Z<&uhq4S}Povtik>J(Nk&|t@DQAJH{T^U{nq8zAMf|Pz2p!6TKpTRTu(8ZyYN@|L4Hb$U%IG8=j0fIa5bv+2W0N>O4~xv0I~}_e z<_Y1i(pRp}yVQ1W)C3v@dpb>5QGRv!P$sP}M0cyRcC z-V>PnZ7ucMt|b>;I(T+qdg{B{jqTc-KYpk&wP@+0-&fuB#Qe3XH(x0K`H$bcd&NVk zcidMLKl1X0Uwtms{_n-N&5s;>{pUItVB@yV2+8Sq)z%p={(A9+U-Bo{I#VY)w?2F8 ze|&p5?Yx7d;=Jfpj;?Q@_OFB+*oQ(np2->r;L+=fHw(HksX<{K4 zI^Qv3gf8T-z4+mPH}5|0S0qn)eR&JVdB?TmB=HWXhKr!n0iDiJ*qNUUJI}&r5kL`! zRsvedP!v#?d#$q(?X7ig!gW8OTbw>z5r*yrL{eMg z(s0pON&%HJG!M``hUx*;GqlsS4Q~v2829aTeFqn5hMlh0aJ|FO$AFUgPQZKJn{ZKo zd)@R$$yGq@Dn@N5piYKR7sJy`4x))4arfZ*7-O5CH}vOcerxzR)r;K}EmG~6GG!=D zZAwLr%UR*5sG;HN82T8jIU=P874-bNo@rFhryd$iDPP7oK1mrlDOFONQmd(c?y-LI zcuJikpHihPDfRL#{Vi!Jbug{|617prdrm!+))tx+kU1=)45G;x%007Mv-g;UcIWP(4Ej zoFOd6Sa`9}MR9Ee)a?x7x(!ed7R4UtIzUN4NrnnsA$WrH#9&th*LpxBU8`|@8BmF9 zIWBsl)D^@^Z46(*NqURyYZRN)sBl6*$}=B@waO5^M;<*fAg>u0^>#KsJDWcn zk#|2%Kivz?uX}oF+rk>hGR65M)R|5dtZzt~<|s2QP`o&cw`PfW1PWwub|((@4xkj1 zPCRNxAj61R$;|@}XXS{>87^m~qjCld&3*GH9{tIY(Z@(=T*j+Q)Z3Cy>DIcZWAG!P z*+#kuS_7i4VRCH7XPf!6ogn2-B1h`7SN-o_@vnm(RTJ{VceaRbEtRgBbr*erSI23P zXK$YOVwbbt;YB4VV{zqpS$5p#m!TOZBdWw!_YTa5`b9`qTcXNw`IAR zQ?Zv&!!;fg+k=ViaS>DnBeKd(&{04~89D~&7(+dPdI)-4v}pVspxYd}$)Q^uy1}8_ z8@jonTN}EuVN(T}@fLbVN+HA;fPzwQKk~u!FI>6hJ%tvj=ZPEajM6NhJI+7r?z;{7$`k=RN0LUHHKO#VJDWEP4Yv@%;0L!DXRHDiwK1&4(i<(lj6aN&ZJ11&Q*- zHi+z^a)Vw2EK@%6U;j@9%^T9x~pWBe-JY3D`<%3>03`BkC@d6xC zk8^m9e#nQQLyKg;h*eM>I$V(!B!Iu4grL4KDqR*n z>6N?~91=>;hzDpB0sCqy3WYWu&bssKrnsDSj=Cv=uu{1ZVI6LqmagHN2E9`0T!(81 zp#9J~`(5}fb;%ZYCb*ziNA2g*7ThLFT zNT~zVQtFVblsXMDrFIdf)YiUwO3o-f>^h-wtZLvTBoV@R?U(V-Fq*;(%A8$WyouCS70$ zVXz$34fP~Bbtz>*=5FWgywxy!HgY?{1lpL^j(VFG)>hOQt@b%17(cplDLxPNQ0-8%nl!oM;YM0fyoi_LMl zX9zy*5JJTf_cw4o&(8`!`1!{rzsa|A%4duCb)}9$gBXKwrw5RWogCuiM|Zl|#U6sF zhzwDPM%JBr@35(}&)r9ODDrhW3JUV5*Uj#`aNW(1Zg$^6u;dsOFkvpsfjLpIuP`^t zF>v|-$4q$uvpNc0UmdubU7g8|GD2~li4Oz0**Owd2@m9Epzda8twf!Q%JhkXwW8!9 zrpBWvsD2YAhvlZEYJw?x3n+Svb2<;}77Xha=aX_+D!3%1Fe_tGo|N7dh<*n->L_W- zZw^$i;H3zjSdA%k*o0RR#(<2QoM+*>n0vhmy#kiKDp%LcfSEe%sQWe;%7UuGVY@p` zEUvlaf%s2$Z60A>DyDBJ+Aw*#b6e3i{Cu?V(Mi*t`zG(3J>7X|@*(`}D(u21-7~tY zr#p|2Jw9zZMX1K&BItBLr!zDhhl31v;vOunrMM~ql{u&3ng^&7P$fh4fa)1)bQZ#! zLE9kuS-3_3S_5beLu;L9K#nwgb_<|e7+MEt9YePQx|N|VXk`nxvIEc#hIWCWb~&fx z*#r3O0Dsm6sEeU)K-~=WpwObni8;c7pNxy30#_j}8r5J|5iZ~ap5P2zG`AAhSX?yo zQb45)%>y)#p?W~|4Eb>Ww9hpc_l59mh@V}9_SSHFoAKFZ{%j{c+sU8pah1UFp)v1A z;$pvx@YjX0bn#fa0d+If1E`0g6M#-IRNyYcX=F6gi`<2{X!NCSjL%IYt#X&(qLw?{ zV{lCYv`{L97@%Ve^#JN&$dOkF)lIz(05pK1 zv-66u{?S-Q=ruvkA<%dnReImYgyJ*9G=f*m|a;hXKrl+zd{BQG%fcX+Ep4k1J~zYKZ|;y z-%kx88&rQ$s^z`6SQ`hDYF^{og-a~vYg`W!ELF3LmdgbpD;h%*Pr%_I2U+R134Kn` zDh-W(qd-U$+L#O=5l|laxIl;s!SQs}>s0lk6JOV8$Nj&HRW5GX^YY{Kt6(54c`9 zBj3Va;*CY~%NB!y#@K%YhPxab)Rx~iky@qSlHrsoPlGUT_{LZ$unfh$3D=`Mmf_Aj z2$o|}5!Kw-?}07W<9>{v7g52-(y*^i+Az0693JoJPISZ;7J&KGR+FVRFaE zna|eGEibP`vtzS-g*FjEa9*2#?IdcGe#>bNsEw8)6c#9_xnlR{={1!$8e$SSJRtKLj!(zXR z&ahrEtXDFu7Yqwn_NiRPY@Kk@P1qmF+D`i`yuJjsCQu#Zp2HyA$0J~NYOu!>qq>|8rL%f zORU72NB+wjRWJUYMqN=ow`xIo0|dWe&g`n1nS_v{i$t25*SCxtw9ChiNBglsF+@S| zbA}_utB$Hv5cLQmf&wpumC*s`bFhdzNYI8FF<4P7mPS zO@!J@+=Fmo`VyKaQJ_i(dNV|*23VOPXJnWmq{aC~MW4h5;o(-6&#qleR!Aq-jZTRS zkvJ@rR)|WM_qJTI{v0?x-_giulgl%y)<(1+LHiLT<_Xy%b9}yBmwxcT?JwLrEHu}G zY@sJ+15+RCc0uSxLL%Z~>L>ByFiHF*E zcHecZ_2?*@0nIO;RZ%w|qb|c!h_6slnXWb2! z*_#h2%Rr6!OQ43-(31Qmj1>AUk+SXjmYt4@Gbk4{ess%$)*bbi zUue^A`TXkIC1}}Btob`;2DE)Snr_W+W!a|RvS}53&SpS3oNEzq*v2SzI6DYd=FS)E z7f<>8@>MjboW)ZZ-3&8xF?0aX0fxE&burWpsGFf4Ks^j40VNqKa1BHxg~m4+&|ro} z0vgFs37`^&N&%HJG!M``hUx*;Gvov0V<-eD#LyZ*YZ%%LXfs1Q0qtaH51>5^?FY1< zp)NpO40QwQW~c{H4?`yaonWZIjWN4v%ohQ=h@nzIr3_U8s$!@EPzOVs0BvGuJD}|h z?FF=#p(B8fFmx2qQHG8II>t~BpdN-Cd7xz;^*aF20EW&6bT&gH0F59hRr|c>#Y_Lv z7S`DYfOEt04Quh;Yxy%SjNiE75sQ2Z->7WC%<_inGFo{j<@j0?4&<`@Wu+u)^jiw3 zN*rYo(5`h|9E|T;-F3ed%+$Jz{x$K@hes_V-4@z*8%C>D2wL_~9sn*nM z-gxj?m$bpIJHclUvYHSjI1i>RY3h)$EIotk~2LgKf+ILb~h3%XQ0x7 zS?0cP-9EWld?y(+$zB?k5F`{57JsA`KrFV|E^%?8xz?@lDGqY@#V$I3i zk0s(}d=K873|{x-dpIgjzt!R)-vO0nUdL}fzLl_Xy#4rAi3xR7Aw3~B4v8}!RXC&` z98m9km~mK-pcG*Fq&mGnOJCiax;co_eMh(Qa8=SX%M;M9?YKk?V3#vQu zA*%Csq>0BhQ{zjQjDGQVx!alN+KL57#Jxl<-lJ*ls3OYT?Q}cWV<8mwiKr3Wme!8S zYZET)SZ*+)zJp!Q@r(w$9wJy`M5V^*Ntm2KAx9j#!JpkgBcY(%`5?ja0d<}X*|n3U zn=kXO-6-4dcK$#M7-6=V85FZtS=lYYBs-6_=0+_Kt+ zS$MxXmVlvV(@T90D~tb)?-)-$Uvde&_9gB@SX%;`t_*d#c{2CddJtIZk-&dVJNy@Q^`q1>TxVLZn z(iuyB__V?kMFi~dM4y}RL@F@36nI+7coLApld9^?J+=bZMwn$n(nZB;x}?|rVdDKO z@}B&Pbd314L?dg>0pla?SD^FXXGS{Wrkd^dW!C!g(ciq}v^Rb{mzO^PXF(!;1Oi;LbJ3 zA+13&m=x0*#P`-X*UR|c8`u5zz8Pyaoya|*dgzyWXhV8lR7LMflVeqEp1Ykru1#EpR;_$5Qmd+xNanA^!%sMomeg3lsU zr>H63mbOr@9lHCfn&6@7=16PA+e$5=(1$}Kn?dN!t|u8cn=wDYGB>DRjba`{re1R7 zt%jSik)Ibe+v&wg7x^OJ8&Px19n=o#>AGqN>{;pByRKU4Bn_vsj%Q!F9$Km1je=(U zBuHtcyT89+)c0Qh)&(lsBZ69RmN^K%6PVp8XCyX}Jed~kQ9E)-kaN_dfP3+h8iQ+j z^%LbEljX0R8Bg-fisR@ z@Z`nkZZvQbjbSsH5dr%Rkn$HMlh{S`mo%i@vGJ{`D{9X^l?S45zmbVDg80fv;wUfC;Y?0ZSwk-T`=bw)sY`83}5H_=XL2bE6H)!eTR^JiAK|~5vCl>*;i`*#M zm5?Ih?$N`VU-;moYSk`LMVhr4?W*snU3)UplT65E=x!NzC!mldq&f|i6`0k0?{Xf5 zyVJ!u5IbEf9a9gcs^Y-_)GF1#Bxk zgEna;3q=e1Hp4>IM)Klk~9=tK+=`=-Pp4lX0~Jks`nnWomm}Zj|lCZuGr~ z_t5iVn^?L5vF$H!tb1Zo + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_keyboard.h + * + * Include file for SDL keyboard event handling + */ + +#ifndef SDL_keyboard_h_ +#define SDL_keyboard_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_keycode.h" +#include "SDL_video.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \brief The SDL keysym structure, used in key events. + * + * \note If you are looking for translated character input, see the ::SDL_TEXTINPUT event. + */ +typedef struct SDL_Keysym +{ + SDL_Scancode scancode; /**< SDL physical key code - see ::SDL_Scancode for details */ + SDL_Keycode sym; /**< SDL virtual key code - see ::SDL_Keycode for details */ + Uint16 mod; /**< current key modifiers */ + Uint32 unused; +} SDL_Keysym; + +/* Function prototypes */ + +/** + * Query the window which currently has keyboard focus. + * + * \returns the window with keyboard focus. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_Window * SDLCALL SDL_GetKeyboardFocus(void); + +/** + * Get a snapshot of the current state of the keyboard. + * + * The pointer returned is a pointer to an internal SDL array. It will be + * valid for the whole lifetime of the application and should not be freed by + * the caller. + * + * A array element with a value of 1 means that the key is pressed and a value + * of 0 means that it is not. Indexes into this array are obtained by using + * SDL_Scancode values. + * + * Use SDL_PumpEvents() to update the state array. + * + * This function gives you the current state after all events have been + * processed, so if a key or button has been pressed and released before you + * process events, then the pressed state will never show up in the + * SDL_GetKeyboardState() calls. + * + * Note: This function doesn't take into account whether shift has been + * pressed or not. + * + * \param numkeys if non-NULL, receives the length of the returned array + * \returns a pointer to an array of key states. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PumpEvents + * \sa SDL_ResetKeyboard + */ +extern DECLSPEC const Uint8 *SDLCALL SDL_GetKeyboardState(int *numkeys); + +/** + * Clear the state of the keyboard + * + * This function will generate key up events for all pressed keys. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GetKeyboardState + */ +extern DECLSPEC void SDLCALL SDL_ResetKeyboard(void); + +/** + * Get the current key modifier state for the keyboard. + * + * \returns an OR'd combination of the modifier keys for the keyboard. See + * SDL_Keymod for details. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetKeyboardState + * \sa SDL_SetModState + */ +extern DECLSPEC SDL_Keymod SDLCALL SDL_GetModState(void); + +/** + * Set the current key modifier state for the keyboard. + * + * The inverse of SDL_GetModState(), SDL_SetModState() allows you to impose + * modifier key states on your application. Simply pass your desired modifier + * states into `modstate`. This value may be a bitwise, OR'd combination of + * SDL_Keymod values. + * + * This does not change the keyboard state, only the key modifier flags that + * SDL reports. + * + * \param modstate the desired SDL_Keymod for the keyboard + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetModState + */ +extern DECLSPEC void SDLCALL SDL_SetModState(SDL_Keymod modstate); + +/** + * Get the key code corresponding to the given scancode according to the + * current keyboard layout. + * + * See SDL_Keycode for details. + * + * \param scancode the desired SDL_Scancode to query + * \returns the SDL_Keycode that corresponds to the given SDL_Scancode. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetKeyName + * \sa SDL_GetScancodeFromKey + */ +extern DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromScancode(SDL_Scancode scancode); + +/** + * Get the scancode corresponding to the given key code according to the + * current keyboard layout. + * + * See SDL_Scancode for details. + * + * \param key the desired SDL_Keycode to query + * \returns the SDL_Scancode that corresponds to the given SDL_Keycode. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetKeyFromScancode + * \sa SDL_GetScancodeName + */ +extern DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromKey(SDL_Keycode key); + +/** + * Get a human-readable name for a scancode. + * + * See SDL_Scancode for details. + * + * **Warning**: The returned name is by design not stable across platforms, + * e.g. the name for `SDL_SCANCODE_LGUI` is "Left GUI" under Linux but "Left + * Windows" under Microsoft Windows, and some scancodes like + * `SDL_SCANCODE_NONUSBACKSLASH` don't have any name at all. There are even + * scancodes that share names, e.g. `SDL_SCANCODE_RETURN` and + * `SDL_SCANCODE_RETURN2` (both called "Return"). This function is therefore + * unsuitable for creating a stable cross-platform two-way mapping between + * strings and scancodes. + * + * \param scancode the desired SDL_Scancode to query + * \returns a pointer to the name for the scancode. If the scancode doesn't + * have a name this function returns an empty string (""). + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetScancodeFromKey + * \sa SDL_GetScancodeFromName + */ +extern DECLSPEC const char *SDLCALL SDL_GetScancodeName(SDL_Scancode scancode); + +/** + * Get a scancode from a human-readable name. + * + * \param name the human-readable scancode name + * \returns the SDL_Scancode, or `SDL_SCANCODE_UNKNOWN` if the name wasn't + * recognized; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetKeyFromName + * \sa SDL_GetScancodeFromKey + * \sa SDL_GetScancodeName + */ +extern DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromName(const char *name); + +/** + * Get a human-readable name for a key. + * + * See SDL_Scancode and SDL_Keycode for details. + * + * \param key the desired SDL_Keycode to query + * \returns a pointer to a UTF-8 string that stays valid at least until the + * next call to this function. If you need it around any longer, you + * must copy it. If the key doesn't have a name, this function + * returns an empty string (""). + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetKeyFromName + * \sa SDL_GetKeyFromScancode + * \sa SDL_GetScancodeFromKey + */ +extern DECLSPEC const char *SDLCALL SDL_GetKeyName(SDL_Keycode key); + +/** + * Get a key code from a human-readable name. + * + * \param name the human-readable key name + * \returns key code, or `SDLK_UNKNOWN` if the name wasn't recognized; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetKeyFromScancode + * \sa SDL_GetKeyName + * \sa SDL_GetScancodeFromName + */ +extern DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromName(const char *name); + +/** + * Start accepting Unicode text input events. + * + * This function will start accepting Unicode text input events in the focused + * SDL window, and start emitting SDL_TextInputEvent (SDL_TEXTINPUT) and + * SDL_TextEditingEvent (SDL_TEXTEDITING) events. Please use this function in + * pair with SDL_StopTextInput(). + * + * On some platforms using this function activates the screen keyboard. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetTextInputRect + * \sa SDL_StopTextInput + */ +extern DECLSPEC void SDLCALL SDL_StartTextInput(void); + +/** + * Check whether or not Unicode text input events are enabled. + * + * \returns SDL_TRUE if text input events are enabled else SDL_FALSE. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_StartTextInput + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsTextInputActive(void); + +/** + * Stop receiving any text input events. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_StartTextInput + */ +extern DECLSPEC void SDLCALL SDL_StopTextInput(void); + +/** + * Dismiss the composition window/IME without disabling the subsystem. + * + * \since This function is available since SDL 2.0.22. + * + * \sa SDL_StartTextInput + * \sa SDL_StopTextInput + */ +extern DECLSPEC void SDLCALL SDL_ClearComposition(void); + +/** + * Returns if an IME Composite or Candidate window is currently shown. + * + * \since This function is available since SDL 2.0.22. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsTextInputShown(void); + +/** + * Set the rectangle used to type Unicode text inputs. + * + * To start text input in a given location, this function is intended to be + * called before SDL_StartTextInput, although some platforms support moving + * the rectangle even while text input (and a composition) is active. + * + * Note: If you want to use the system native IME window, try setting hint + * **SDL_HINT_IME_SHOW_UI** to **1**, otherwise this function won't give you + * any feedback. + * + * \param rect the SDL_Rect structure representing the rectangle to receive + * text (ignored if NULL) + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_StartTextInput + */ +extern DECLSPEC void SDLCALL SDL_SetTextInputRect(const SDL_Rect *rect); + +/** + * Check whether the platform has screen keyboard support. + * + * \returns SDL_TRUE if the platform has some screen keyboard support or + * SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_StartTextInput + * \sa SDL_IsScreenKeyboardShown + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasScreenKeyboardSupport(void); + +/** + * Check whether the screen keyboard is shown for given window. + * + * \param window the window for which screen keyboard should be queried + * \returns SDL_TRUE if screen keyboard is shown or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HasScreenKeyboardSupport + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsScreenKeyboardShown(SDL_Window *window); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_keyboard_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..60287e94f368e3e04760423f4291e0f766ce719a GIT binary patch literal 24061 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_keycode.h + * + * Defines constants which identify keyboard keys and modifiers. + */ + +#ifndef SDL_keycode_h_ +#define SDL_keycode_h_ + +#include "SDL_stdinc.h" +#include "SDL_scancode.h" + +/** + * \brief The SDL virtual key representation. + * + * Values of this type are used to represent keyboard keys using the current + * layout of the keyboard. These values include Unicode values representing + * the unmodified character that would be generated by pressing the key, or + * an SDLK_* constant for those keys that do not generate characters. + * + * A special exception is the number keys at the top of the keyboard which + * map to SDLK_0...SDLK_9 on AZERTY layouts. + */ +typedef Sint32 SDL_Keycode; + +#define SDLK_SCANCODE_MASK (1<<30) +#define SDL_SCANCODE_TO_KEYCODE(X) (X | SDLK_SCANCODE_MASK) + +typedef enum +{ + SDLK_UNKNOWN = 0, + + SDLK_RETURN = '\r', + SDLK_ESCAPE = '\x1B', + SDLK_BACKSPACE = '\b', + SDLK_TAB = '\t', + SDLK_SPACE = ' ', + SDLK_EXCLAIM = '!', + SDLK_QUOTEDBL = '"', + SDLK_HASH = '#', + SDLK_PERCENT = '%', + SDLK_DOLLAR = '$', + SDLK_AMPERSAND = '&', + SDLK_QUOTE = '\'', + SDLK_LEFTPAREN = '(', + SDLK_RIGHTPAREN = ')', + SDLK_ASTERISK = '*', + SDLK_PLUS = '+', + SDLK_COMMA = ',', + SDLK_MINUS = '-', + SDLK_PERIOD = '.', + SDLK_SLASH = '/', + SDLK_0 = '0', + SDLK_1 = '1', + SDLK_2 = '2', + SDLK_3 = '3', + SDLK_4 = '4', + SDLK_5 = '5', + SDLK_6 = '6', + SDLK_7 = '7', + SDLK_8 = '8', + SDLK_9 = '9', + SDLK_COLON = ':', + SDLK_SEMICOLON = ';', + SDLK_LESS = '<', + SDLK_EQUALS = '=', + SDLK_GREATER = '>', + SDLK_QUESTION = '?', + SDLK_AT = '@', + + /* + Skip uppercase letters + */ + + SDLK_LEFTBRACKET = '[', + SDLK_BACKSLASH = '\\', + SDLK_RIGHTBRACKET = ']', + SDLK_CARET = '^', + SDLK_UNDERSCORE = '_', + SDLK_BACKQUOTE = '`', + SDLK_a = 'a', + SDLK_b = 'b', + SDLK_c = 'c', + SDLK_d = 'd', + SDLK_e = 'e', + SDLK_f = 'f', + SDLK_g = 'g', + SDLK_h = 'h', + SDLK_i = 'i', + SDLK_j = 'j', + SDLK_k = 'k', + SDLK_l = 'l', + SDLK_m = 'm', + SDLK_n = 'n', + SDLK_o = 'o', + SDLK_p = 'p', + SDLK_q = 'q', + SDLK_r = 'r', + SDLK_s = 's', + SDLK_t = 't', + SDLK_u = 'u', + SDLK_v = 'v', + SDLK_w = 'w', + SDLK_x = 'x', + SDLK_y = 'y', + SDLK_z = 'z', + + SDLK_CAPSLOCK = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CAPSLOCK), + + SDLK_F1 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F1), + SDLK_F2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F2), + SDLK_F3 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F3), + SDLK_F4 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F4), + SDLK_F5 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F5), + SDLK_F6 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F6), + SDLK_F7 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F7), + SDLK_F8 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F8), + SDLK_F9 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F9), + SDLK_F10 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F10), + SDLK_F11 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F11), + SDLK_F12 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F12), + + SDLK_PRINTSCREEN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PRINTSCREEN), + SDLK_SCROLLLOCK = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SCROLLLOCK), + SDLK_PAUSE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAUSE), + SDLK_INSERT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_INSERT), + SDLK_HOME = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_HOME), + SDLK_PAGEUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAGEUP), + SDLK_DELETE = '\x7F', + SDLK_END = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_END), + SDLK_PAGEDOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAGEDOWN), + SDLK_RIGHT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RIGHT), + SDLK_LEFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LEFT), + SDLK_DOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DOWN), + SDLK_UP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_UP), + + SDLK_NUMLOCKCLEAR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_NUMLOCKCLEAR), + SDLK_KP_DIVIDE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DIVIDE), + SDLK_KP_MULTIPLY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MULTIPLY), + SDLK_KP_MINUS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MINUS), + SDLK_KP_PLUS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PLUS), + SDLK_KP_ENTER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_ENTER), + SDLK_KP_1 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_1), + SDLK_KP_2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_2), + SDLK_KP_3 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_3), + SDLK_KP_4 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_4), + SDLK_KP_5 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_5), + SDLK_KP_6 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_6), + SDLK_KP_7 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_7), + SDLK_KP_8 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_8), + SDLK_KP_9 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_9), + SDLK_KP_0 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_0), + SDLK_KP_PERIOD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PERIOD), + + SDLK_APPLICATION = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APPLICATION), + SDLK_POWER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_POWER), + SDLK_KP_EQUALS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EQUALS), + SDLK_F13 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F13), + SDLK_F14 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F14), + SDLK_F15 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F15), + SDLK_F16 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F16), + SDLK_F17 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F17), + SDLK_F18 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F18), + SDLK_F19 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F19), + SDLK_F20 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F20), + SDLK_F21 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F21), + SDLK_F22 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F22), + SDLK_F23 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F23), + SDLK_F24 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F24), + SDLK_EXECUTE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EXECUTE), + SDLK_HELP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_HELP), + SDLK_MENU = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MENU), + SDLK_SELECT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SELECT), + SDLK_STOP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_STOP), + SDLK_AGAIN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AGAIN), + SDLK_UNDO = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_UNDO), + SDLK_CUT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CUT), + SDLK_COPY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_COPY), + SDLK_PASTE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PASTE), + SDLK_FIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_FIND), + SDLK_MUTE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MUTE), + SDLK_VOLUMEUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_VOLUMEUP), + SDLK_VOLUMEDOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_VOLUMEDOWN), + SDLK_KP_COMMA = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_COMMA), + SDLK_KP_EQUALSAS400 = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EQUALSAS400), + + SDLK_ALTERASE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_ALTERASE), + SDLK_SYSREQ = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SYSREQ), + SDLK_CANCEL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CANCEL), + SDLK_CLEAR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CLEAR), + SDLK_PRIOR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PRIOR), + SDLK_RETURN2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RETURN2), + SDLK_SEPARATOR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SEPARATOR), + SDLK_OUT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_OUT), + SDLK_OPER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_OPER), + SDLK_CLEARAGAIN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CLEARAGAIN), + SDLK_CRSEL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CRSEL), + SDLK_EXSEL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EXSEL), + + SDLK_KP_00 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_00), + SDLK_KP_000 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_000), + SDLK_THOUSANDSSEPARATOR = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_THOUSANDSSEPARATOR), + SDLK_DECIMALSEPARATOR = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DECIMALSEPARATOR), + SDLK_CURRENCYUNIT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CURRENCYUNIT), + SDLK_CURRENCYSUBUNIT = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CURRENCYSUBUNIT), + SDLK_KP_LEFTPAREN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LEFTPAREN), + SDLK_KP_RIGHTPAREN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_RIGHTPAREN), + SDLK_KP_LEFTBRACE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LEFTBRACE), + SDLK_KP_RIGHTBRACE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_RIGHTBRACE), + SDLK_KP_TAB = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_TAB), + SDLK_KP_BACKSPACE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_BACKSPACE), + SDLK_KP_A = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_A), + SDLK_KP_B = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_B), + SDLK_KP_C = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_C), + SDLK_KP_D = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_D), + SDLK_KP_E = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_E), + SDLK_KP_F = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_F), + SDLK_KP_XOR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_XOR), + SDLK_KP_POWER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_POWER), + SDLK_KP_PERCENT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PERCENT), + SDLK_KP_LESS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LESS), + SDLK_KP_GREATER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_GREATER), + SDLK_KP_AMPERSAND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_AMPERSAND), + SDLK_KP_DBLAMPERSAND = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DBLAMPERSAND), + SDLK_KP_VERTICALBAR = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_VERTICALBAR), + SDLK_KP_DBLVERTICALBAR = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DBLVERTICALBAR), + SDLK_KP_COLON = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_COLON), + SDLK_KP_HASH = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_HASH), + SDLK_KP_SPACE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_SPACE), + SDLK_KP_AT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_AT), + SDLK_KP_EXCLAM = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EXCLAM), + SDLK_KP_MEMSTORE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMSTORE), + SDLK_KP_MEMRECALL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMRECALL), + SDLK_KP_MEMCLEAR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMCLEAR), + SDLK_KP_MEMADD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMADD), + SDLK_KP_MEMSUBTRACT = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMSUBTRACT), + SDLK_KP_MEMMULTIPLY = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMMULTIPLY), + SDLK_KP_MEMDIVIDE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMDIVIDE), + SDLK_KP_PLUSMINUS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PLUSMINUS), + SDLK_KP_CLEAR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_CLEAR), + SDLK_KP_CLEARENTRY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_CLEARENTRY), + SDLK_KP_BINARY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_BINARY), + SDLK_KP_OCTAL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_OCTAL), + SDLK_KP_DECIMAL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DECIMAL), + SDLK_KP_HEXADECIMAL = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_HEXADECIMAL), + + SDLK_LCTRL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LCTRL), + SDLK_LSHIFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LSHIFT), + SDLK_LALT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LALT), + SDLK_LGUI = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LGUI), + SDLK_RCTRL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RCTRL), + SDLK_RSHIFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RSHIFT), + SDLK_RALT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RALT), + SDLK_RGUI = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RGUI), + + SDLK_MODE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MODE), + + SDLK_AUDIONEXT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIONEXT), + SDLK_AUDIOPREV = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOPREV), + SDLK_AUDIOSTOP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOSTOP), + SDLK_AUDIOPLAY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOPLAY), + SDLK_AUDIOMUTE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOMUTE), + SDLK_MEDIASELECT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIASELECT), + SDLK_WWW = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_WWW), + SDLK_MAIL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MAIL), + SDLK_CALCULATOR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CALCULATOR), + SDLK_COMPUTER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_COMPUTER), + SDLK_AC_SEARCH = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_SEARCH), + SDLK_AC_HOME = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_HOME), + SDLK_AC_BACK = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_BACK), + SDLK_AC_FORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_FORWARD), + SDLK_AC_STOP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_STOP), + SDLK_AC_REFRESH = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_REFRESH), + SDLK_AC_BOOKMARKS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_BOOKMARKS), + + SDLK_BRIGHTNESSDOWN = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_BRIGHTNESSDOWN), + SDLK_BRIGHTNESSUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_BRIGHTNESSUP), + SDLK_DISPLAYSWITCH = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DISPLAYSWITCH), + SDLK_KBDILLUMTOGGLE = + SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMTOGGLE), + SDLK_KBDILLUMDOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMDOWN), + SDLK_KBDILLUMUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMUP), + SDLK_EJECT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EJECT), + SDLK_SLEEP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SLEEP), + SDLK_APP1 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP1), + SDLK_APP2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP2), + + SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND), + SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD), + + SDLK_SOFTLEFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SOFTLEFT), + SDLK_SOFTRIGHT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SOFTRIGHT), + SDLK_CALL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CALL), + SDLK_ENDCALL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_ENDCALL) +} SDL_KeyCode; + +/** + * \brief Enumeration of valid key mods (possibly OR'd together). + */ +typedef enum +{ + KMOD_NONE = 0x0000, + KMOD_LSHIFT = 0x0001, + KMOD_RSHIFT = 0x0002, + KMOD_LCTRL = 0x0040, + KMOD_RCTRL = 0x0080, + KMOD_LALT = 0x0100, + KMOD_RALT = 0x0200, + KMOD_LGUI = 0x0400, + KMOD_RGUI = 0x0800, + KMOD_NUM = 0x1000, + KMOD_CAPS = 0x2000, + KMOD_MODE = 0x4000, + KMOD_SCROLL = 0x8000, + + KMOD_CTRL = KMOD_LCTRL | KMOD_RCTRL, + KMOD_SHIFT = KMOD_LSHIFT | KMOD_RSHIFT, + KMOD_ALT = KMOD_LALT | KMOD_RALT, + KMOD_GUI = KMOD_LGUI | KMOD_RGUI, + + KMOD_RESERVED = KMOD_SCROLL /* This is for source-level compatibility with SDL 2.0.0. */ +} SDL_Keymod; + +#endif /* SDL_keycode_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..76b143d9a7f09dd3b2982ad1e351cadae98cb988 GIT binary patch literal 49862 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 M5A*BVsEiN!e{Q2EbpQYW literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h new file mode 100644 index 00000000..ca59b681 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h @@ -0,0 +1,115 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_loadso.h + * + * System dependent library loading routines + * + * Some things to keep in mind: + * \li These functions only work on C function names. Other languages may + * have name mangling and intrinsic language support that varies from + * compiler to compiler. + * \li Make sure you declare your function pointers with the same calling + * convention as the actual library function. Your code will crash + * mysteriously if you do not do this. + * \li Avoid namespace collisions. If you load a symbol from the library, + * it is not defined whether or not it goes into the global symbol + * namespace for the application. If it does and it conflicts with + * symbols in your code or other shared libraries, you will not get + * the results you expect. :) + */ + +#ifndef SDL_loadso_h_ +#define SDL_loadso_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Dynamically load a shared object. + * + * \param sofile a system-dependent name of the object file + * \returns an opaque pointer to the object handle or NULL if there was an + * error; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LoadFunction + * \sa SDL_UnloadObject + */ +extern DECLSPEC void *SDLCALL SDL_LoadObject(const char *sofile); + +/** + * Look up the address of the named function in a shared object. + * + * This function pointer is no longer valid after calling SDL_UnloadObject(). + * + * This function can only look up C function names. Other languages may have + * name mangling and intrinsic language support that varies from compiler to + * compiler. + * + * Make sure you declare your function pointers with the same calling + * convention as the actual library function. Your code will crash + * mysteriously if you do not do this. + * + * If the requested function doesn't exist, NULL is returned. + * + * \param handle a valid shared object handle returned by SDL_LoadObject() + * \param name the name of the function to look up + * \returns a pointer to the function or NULL if there was an error; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LoadObject + * \sa SDL_UnloadObject + */ +extern DECLSPEC void *SDLCALL SDL_LoadFunction(void *handle, + const char *name); + +/** + * Unload a shared object from memory. + * + * \param handle a valid shared object handle returned by SDL_LoadObject() + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LoadFunction + * \sa SDL_LoadObject + */ +extern DECLSPEC void SDLCALL SDL_UnloadObject(void *handle); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_loadso_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..f5d6ba8c6c3bfbe33dd5ad37cae8520737fc012f GIT binary patch literal 14265 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 Ij&^|XKT`{vb^rhX literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h new file mode 100644 index 00000000..482dbefe --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h @@ -0,0 +1,103 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_locale.h + * + * Include file for SDL locale services + */ + +#ifndef _SDL_locale_h +#define _SDL_locale_h + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +/* *INDENT-OFF* */ +extern "C" { +/* *INDENT-ON* */ +#endif + + +typedef struct SDL_Locale +{ + const char *language; /**< A language name, like "en" for English. */ + const char *country; /**< A country, like "US" for America. Can be NULL. */ +} SDL_Locale; + +/** + * Report the user's preferred locale. + * + * This returns an array of SDL_Locale structs, the final item zeroed out. + * When the caller is done with this array, it should call SDL_free() on the + * returned value; all the memory involved is allocated in a single block, so + * a single SDL_free() will suffice. + * + * Returned language strings are in the format xx, where 'xx' is an ISO-639 + * language specifier (such as "en" for English, "de" for German, etc). + * Country strings are in the format YY, where "YY" is an ISO-3166 country + * code (such as "US" for the United States, "CA" for Canada, etc). Country + * might be NULL if there's no specific guidance on them (so you might get { + * "en", "US" } for American English, but { "en", NULL } means "English + * language, generically"). Language strings are never NULL, except to + * terminate the array. + * + * Please note that not all of these strings are 2 characters; some are three + * or more. + * + * The returned list of locales are in the order of the user's preference. For + * example, a German citizen that is fluent in US English and knows enough + * Japanese to navigate around Tokyo might have a list like: { "de", "en_US", + * "jp", NULL }. Someone from England might prefer British English (where + * "color" is spelled "colour", etc), but will settle for anything like it: { + * "en_GB", "en", NULL }. + * + * This function returns NULL on error, including when the platform does not + * supply this information at all. + * + * This might be a "slow" call that has to query the operating system. It's + * best to ask for this once and save the results. However, this list can + * change, usually because the user has changed a system preference outside of + * your program; SDL will send an SDL_LOCALECHANGED event in this case, if + * possible, and you can call this function again to get an updated copy of + * preferred locales. + * + * \return array of locales, terminated with a locale with a NULL language + * field. Will return NULL on error. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_Locale * SDLCALL SDL_GetPreferredLocales(void); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +/* *INDENT-OFF* */ +} +/* *INDENT-ON* */ +#endif +#include "close_code.h" + +#endif /* _SDL_locale_h */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..47a43149a9c5d57d61b0dd8ef1dd5a693310f988 GIT binary patch literal 14796 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_log.h + * + * Simple log messages with categories and priorities. + * + * By default logs are quiet, but if you're debugging SDL you might want: + * + * SDL_LogSetAllPriority(SDL_LOG_PRIORITY_WARN); + * + * Here's where the messages go on different platforms: + * Windows: debug output stream + * Android: log output + * Others: standard error output (stderr) + */ + +#ifndef SDL_log_h_ +#define SDL_log_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + + +/** + * \brief The maximum size of a log message prior to SDL 2.0.24 + * + * As of 2.0.24 there is no limit to the length of SDL log messages. + */ +#define SDL_MAX_LOG_MESSAGE 4096 + +/** + * \brief The predefined log categories + * + * By default the application category is enabled at the INFO level, + * the assert category is enabled at the WARN level, test is enabled + * at the VERBOSE level and all other categories are enabled at the + * CRITICAL level. + */ +typedef enum +{ + SDL_LOG_CATEGORY_APPLICATION, + SDL_LOG_CATEGORY_ERROR, + SDL_LOG_CATEGORY_ASSERT, + SDL_LOG_CATEGORY_SYSTEM, + SDL_LOG_CATEGORY_AUDIO, + SDL_LOG_CATEGORY_VIDEO, + SDL_LOG_CATEGORY_RENDER, + SDL_LOG_CATEGORY_INPUT, + SDL_LOG_CATEGORY_TEST, + + /* Reserved for future SDL library use */ + SDL_LOG_CATEGORY_RESERVED1, + SDL_LOG_CATEGORY_RESERVED2, + SDL_LOG_CATEGORY_RESERVED3, + SDL_LOG_CATEGORY_RESERVED4, + SDL_LOG_CATEGORY_RESERVED5, + SDL_LOG_CATEGORY_RESERVED6, + SDL_LOG_CATEGORY_RESERVED7, + SDL_LOG_CATEGORY_RESERVED8, + SDL_LOG_CATEGORY_RESERVED9, + SDL_LOG_CATEGORY_RESERVED10, + + /* Beyond this point is reserved for application use, e.g. + enum { + MYAPP_CATEGORY_AWESOME1 = SDL_LOG_CATEGORY_CUSTOM, + MYAPP_CATEGORY_AWESOME2, + MYAPP_CATEGORY_AWESOME3, + ... + }; + */ + SDL_LOG_CATEGORY_CUSTOM +} SDL_LogCategory; + +/** + * \brief The predefined log priorities + */ +typedef enum +{ + SDL_LOG_PRIORITY_VERBOSE = 1, + SDL_LOG_PRIORITY_DEBUG, + SDL_LOG_PRIORITY_INFO, + SDL_LOG_PRIORITY_WARN, + SDL_LOG_PRIORITY_ERROR, + SDL_LOG_PRIORITY_CRITICAL, + SDL_NUM_LOG_PRIORITIES +} SDL_LogPriority; + + +/** + * Set the priority of all log categories. + * + * \param priority the SDL_LogPriority to assign + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LogSetPriority + */ +extern DECLSPEC void SDLCALL SDL_LogSetAllPriority(SDL_LogPriority priority); + +/** + * Set the priority of a particular log category. + * + * \param category the category to assign a priority to + * \param priority the SDL_LogPriority to assign + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LogGetPriority + * \sa SDL_LogSetAllPriority + */ +extern DECLSPEC void SDLCALL SDL_LogSetPriority(int category, + SDL_LogPriority priority); + +/** + * Get the priority of a particular log category. + * + * \param category the category to query + * \returns the SDL_LogPriority for the requested category + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LogSetPriority + */ +extern DECLSPEC SDL_LogPriority SDLCALL SDL_LogGetPriority(int category); + +/** + * Reset all priorities to default. + * + * This is called by SDL_Quit(). + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LogSetAllPriority + * \sa SDL_LogSetPriority + */ +extern DECLSPEC void SDLCALL SDL_LogResetPriorities(void); + +/** + * Log a message with SDL_LOG_CATEGORY_APPLICATION and SDL_LOG_PRIORITY_INFO. + * + * = * \param fmt a printf() style message format string + * + * \param ... additional parameters matching % tokens in the `fmt` string, if + * any + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LogCritical + * \sa SDL_LogDebug + * \sa SDL_LogError + * \sa SDL_LogInfo + * \sa SDL_LogMessage + * \sa SDL_LogMessageV + * \sa SDL_LogVerbose + * \sa SDL_LogWarn + */ +extern DECLSPEC void SDLCALL SDL_Log(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); + +/** + * Log a message with SDL_LOG_PRIORITY_VERBOSE. + * + * \param category the category of the message + * \param fmt a printf() style message format string + * \param ... additional parameters matching % tokens in the **fmt** string, + * if any + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Log + * \sa SDL_LogCritical + * \sa SDL_LogDebug + * \sa SDL_LogError + * \sa SDL_LogInfo + * \sa SDL_LogMessage + * \sa SDL_LogMessageV + * \sa SDL_LogWarn + */ +extern DECLSPEC void SDLCALL SDL_LogVerbose(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); + +/** + * Log a message with SDL_LOG_PRIORITY_DEBUG. + * + * \param category the category of the message + * \param fmt a printf() style message format string + * \param ... additional parameters matching % tokens in the **fmt** string, + * if any + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Log + * \sa SDL_LogCritical + * \sa SDL_LogError + * \sa SDL_LogInfo + * \sa SDL_LogMessage + * \sa SDL_LogMessageV + * \sa SDL_LogVerbose + * \sa SDL_LogWarn + */ +extern DECLSPEC void SDLCALL SDL_LogDebug(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); + +/** + * Log a message with SDL_LOG_PRIORITY_INFO. + * + * \param category the category of the message + * \param fmt a printf() style message format string + * \param ... additional parameters matching % tokens in the **fmt** string, + * if any + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Log + * \sa SDL_LogCritical + * \sa SDL_LogDebug + * \sa SDL_LogError + * \sa SDL_LogMessage + * \sa SDL_LogMessageV + * \sa SDL_LogVerbose + * \sa SDL_LogWarn + */ +extern DECLSPEC void SDLCALL SDL_LogInfo(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); + +/** + * Log a message with SDL_LOG_PRIORITY_WARN. + * + * \param category the category of the message + * \param fmt a printf() style message format string + * \param ... additional parameters matching % tokens in the **fmt** string, + * if any + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Log + * \sa SDL_LogCritical + * \sa SDL_LogDebug + * \sa SDL_LogError + * \sa SDL_LogInfo + * \sa SDL_LogMessage + * \sa SDL_LogMessageV + * \sa SDL_LogVerbose + */ +extern DECLSPEC void SDLCALL SDL_LogWarn(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); + +/** + * Log a message with SDL_LOG_PRIORITY_ERROR. + * + * \param category the category of the message + * \param fmt a printf() style message format string + * \param ... additional parameters matching % tokens in the **fmt** string, + * if any + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Log + * \sa SDL_LogCritical + * \sa SDL_LogDebug + * \sa SDL_LogInfo + * \sa SDL_LogMessage + * \sa SDL_LogMessageV + * \sa SDL_LogVerbose + * \sa SDL_LogWarn + */ +extern DECLSPEC void SDLCALL SDL_LogError(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); + +/** + * Log a message with SDL_LOG_PRIORITY_CRITICAL. + * + * \param category the category of the message + * \param fmt a printf() style message format string + * \param ... additional parameters matching % tokens in the **fmt** string, + * if any + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Log + * \sa SDL_LogDebug + * \sa SDL_LogError + * \sa SDL_LogInfo + * \sa SDL_LogMessage + * \sa SDL_LogMessageV + * \sa SDL_LogVerbose + * \sa SDL_LogWarn + */ +extern DECLSPEC void SDLCALL SDL_LogCritical(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); + +/** + * Log a message with the specified category and priority. + * + * \param category the category of the message + * \param priority the priority of the message + * \param fmt a printf() style message format string + * \param ... additional parameters matching % tokens in the **fmt** string, + * if any + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Log + * \sa SDL_LogCritical + * \sa SDL_LogDebug + * \sa SDL_LogError + * \sa SDL_LogInfo + * \sa SDL_LogMessageV + * \sa SDL_LogVerbose + * \sa SDL_LogWarn + */ +extern DECLSPEC void SDLCALL SDL_LogMessage(int category, + SDL_LogPriority priority, + SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(3); + +/** + * Log a message with the specified category and priority. + * + * \param category the category of the message + * \param priority the priority of the message + * \param fmt a printf() style message format string + * \param ap a variable argument list + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Log + * \sa SDL_LogCritical + * \sa SDL_LogDebug + * \sa SDL_LogError + * \sa SDL_LogInfo + * \sa SDL_LogMessage + * \sa SDL_LogVerbose + * \sa SDL_LogWarn + */ +extern DECLSPEC void SDLCALL SDL_LogMessageV(int category, + SDL_LogPriority priority, + const char *fmt, va_list ap); + +/** + * The prototype for the log output callback function. + * + * This function is called by SDL when there is new text to be logged. + * + * \param userdata what was passed as `userdata` to SDL_LogSetOutputFunction() + * \param category the category of the message + * \param priority the priority of the message + * \param message the message being output + */ +typedef void (SDLCALL *SDL_LogOutputFunction)(void *userdata, int category, SDL_LogPriority priority, const char *message); + +/** + * Get the current log output function. + * + * \param callback an SDL_LogOutputFunction filled in with the current log + * callback + * \param userdata a pointer filled in with the pointer that is passed to + * `callback` + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LogSetOutputFunction + */ +extern DECLSPEC void SDLCALL SDL_LogGetOutputFunction(SDL_LogOutputFunction *callback, void **userdata); + +/** + * Replace the default log output function with one of your own. + * + * \param callback an SDL_LogOutputFunction to call instead of the default + * \param userdata a pointer that is passed to `callback` + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LogGetOutputFunction + */ +extern DECLSPEC void SDLCALL SDL_LogSetOutputFunction(SDL_LogOutputFunction callback, void *userdata); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_log_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..f61bc3f3e3d2153a1ff78738dbc75cce3ecc0bed GIT binary patch literal 26012 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 DwU!lg literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h new file mode 100644 index 00000000..5cc8e591 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h @@ -0,0 +1,282 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_main_h_ +#define SDL_main_h_ + +#include "SDL_stdinc.h" + +/** + * \file SDL_main.h + * + * Redefine main() on some platforms so that it is called by SDL. + */ + +#ifndef SDL_MAIN_HANDLED +#if defined(__WIN32__) +/* On Windows SDL provides WinMain(), which parses the command line and passes + the arguments to your main function. + + If you provide your own WinMain(), you may define SDL_MAIN_HANDLED + */ +#define SDL_MAIN_AVAILABLE + +#elif defined(__WINRT__) +/* On WinRT, SDL provides a main function that initializes CoreApplication, + creating an instance of IFrameworkView in the process. + + Please note that #include'ing SDL_main.h is not enough to get a main() + function working. In non-XAML apps, the file, + src/main/winrt/SDL_WinRT_main_NonXAML.cpp, or a copy of it, must be compiled + into the app itself. In XAML apps, the function, SDL_WinRTRunApp must be + called, with a pointer to the Direct3D-hosted XAML control passed in. +*/ +#define SDL_MAIN_NEEDED + +#elif defined(__GDK__) +/* On GDK, SDL provides a main function that initializes the game runtime. + + Please note that #include'ing SDL_main.h is not enough to get a main() + function working. You must either link against SDL2main or, if not possible, + call the SDL_GDKRunApp function from your entry point. +*/ +#define SDL_MAIN_NEEDED + +#elif defined(__IPHONEOS__) +/* On iOS SDL provides a main function that creates an application delegate + and starts the iOS application run loop. + + If you link with SDL dynamically on iOS, the main function can't be in a + shared library, so you need to link with libSDLmain.a, which includes a + stub main function that calls into the shared library to start execution. + + See src/video/uikit/SDL_uikitappdelegate.m for more details. + */ +#define SDL_MAIN_NEEDED + +#elif defined(__ANDROID__) +/* On Android SDL provides a Java class in SDLActivity.java that is the + main activity entry point. + + See docs/README-android.md for more details on extending that class. + */ +#define SDL_MAIN_NEEDED + +/* We need to export SDL_main so it can be launched from Java */ +#define SDLMAIN_DECLSPEC DECLSPEC + +#elif defined(__NACL__) +/* On NACL we use ppapi_simple to set up the application helper code, + then wait for the first PSE_INSTANCE_DIDCHANGEVIEW event before + starting the user main function. + All user code is run in a separate thread by ppapi_simple, thus + allowing for blocking io to take place via nacl_io +*/ +#define SDL_MAIN_NEEDED + +#elif defined(__PSP__) +/* On PSP SDL provides a main function that sets the module info, + activates the GPU and starts the thread required to be able to exit + the software. + + If you provide this yourself, you may define SDL_MAIN_HANDLED + */ +#define SDL_MAIN_AVAILABLE + +#elif defined(__PS2__) +#define SDL_MAIN_AVAILABLE + +#define SDL_PS2_SKIP_IOP_RESET() \ + void reset_IOP(); \ + void reset_IOP() {} + +#elif defined(__3DS__) +/* + On N3DS, SDL provides a main function that sets up the screens + and storage. + + If you provide this yourself, you may define SDL_MAIN_HANDLED +*/ +#define SDL_MAIN_AVAILABLE + +#endif +#endif /* SDL_MAIN_HANDLED */ + +#ifndef SDLMAIN_DECLSPEC +#define SDLMAIN_DECLSPEC +#endif + +/** + * \file SDL_main.h + * + * The application's main() function must be called with C linkage, + * and should be declared like this: + * \code + * #ifdef __cplusplus + * extern "C" + * #endif + * int main(int argc, char *argv[]) + * { + * } + * \endcode + */ + +#if defined(SDL_MAIN_NEEDED) || defined(SDL_MAIN_AVAILABLE) +#define main SDL_main +#endif + +#include "begin_code.h" +#ifdef __cplusplus +extern "C" { +#endif + +/** + * The prototype for the application's main() function + */ +typedef int (*SDL_main_func)(int argc, char *argv[]); +extern SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[]); + + +/** + * Circumvent failure of SDL_Init() when not using SDL_main() as an entry + * point. + * + * This function is defined in SDL_main.h, along with the preprocessor rule to + * redefine main() as SDL_main(). Thus to ensure that your main() function + * will not be changed it is necessary to define SDL_MAIN_HANDLED before + * including SDL.h. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_Init + */ +extern DECLSPEC void SDLCALL SDL_SetMainReady(void); + +#if defined(__WIN32__) || defined(__GDK__) + +/** + * Register a win32 window class for SDL's use. + * + * This can be called to set the application window class at startup. It is + * safe to call this multiple times, as long as every call is eventually + * paired with a call to SDL_UnregisterApp, but a second registration attempt + * while a previous registration is still active will be ignored, other than + * to increment a counter. + * + * Most applications do not need to, and should not, call this directly; SDL + * will call it when initializing the video subsystem. + * + * \param name the window class name, in UTF-8 encoding. If NULL, SDL + * currently uses "SDL_app" but this isn't guaranteed. + * \param style the value to use in WNDCLASSEX::style. If `name` is NULL, SDL + * currently uses `(CS_BYTEALIGNCLIENT | CS_OWNDC)` regardless of + * what is specified here. + * \param hInst the HINSTANCE to use in WNDCLASSEX::hInstance. If zero, SDL + * will use `GetModuleHandle(NULL)` instead. + * \returns 0 on success, -1 on error. SDL_GetError() may have details. + * + * \since This function is available since SDL 2.0.2. + */ +extern DECLSPEC int SDLCALL SDL_RegisterApp(const char *name, Uint32 style, void *hInst); + +/** + * Deregister the win32 window class from an SDL_RegisterApp call. + * + * This can be called to undo the effects of SDL_RegisterApp. + * + * Most applications do not need to, and should not, call this directly; SDL + * will call it when deinitializing the video subsystem. + * + * It is safe to call this multiple times, as long as every call is eventually + * paired with a prior call to SDL_RegisterApp. The window class will only be + * deregistered when the registration counter in SDL_RegisterApp decrements to + * zero through calls to this function. + * + * \since This function is available since SDL 2.0.2. + */ +extern DECLSPEC void SDLCALL SDL_UnregisterApp(void); + +#endif /* defined(__WIN32__) || defined(__GDK__) */ + + +#ifdef __WINRT__ + +/** + * Initialize and launch an SDL/WinRT application. + * + * \param mainFunction the SDL app's C-style main(), an SDL_main_func + * \param reserved reserved for future use; should be NULL + * \returns 0 on success or -1 on failure; call SDL_GetError() to retrieve + * more information on the failure. + * + * \since This function is available since SDL 2.0.3. + */ +extern DECLSPEC int SDLCALL SDL_WinRTRunApp(SDL_main_func mainFunction, void * reserved); + +#endif /* __WINRT__ */ + +#if defined(__IPHONEOS__) + +/** + * Initializes and launches an SDL application. + * + * \param argc The argc parameter from the application's main() function + * \param argv The argv parameter from the application's main() function + * \param mainFunction The SDL app's C-style main(), an SDL_main_func + * \return the return value from mainFunction + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_UIKitRunApp(int argc, char *argv[], SDL_main_func mainFunction); + +#endif /* __IPHONEOS__ */ + +#ifdef __GDK__ + +/** + * Initialize and launch an SDL GDK application. + * + * \param mainFunction the SDL app's C-style main(), an SDL_main_func + * \param reserved reserved for future use; should be NULL + * \returns 0 on success or -1 on failure; call SDL_GetError() to retrieve + * more information on the failure. + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC int SDLCALL SDL_GDKRunApp(SDL_main_func mainFunction, void *reserved); + +/** + * Callback from the application to let the suspend continue. + * + * \since This function is available since SDL 2.28.0. + */ +extern DECLSPEC void SDLCALL SDL_GDKSuspendComplete(void); + +#endif /* __GDK__ */ + +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_main_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..0dba4adfbaac5845c6f43a1b0a1ac0fa9a4b1914 GIT binary patch literal 13254 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_messagebox_h_ +#define SDL_messagebox_h_ + +#include "SDL_stdinc.h" +#include "SDL_video.h" /* For SDL_Window */ + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * SDL_MessageBox flags. If supported will display warning icon, etc. + */ +typedef enum +{ + SDL_MESSAGEBOX_ERROR = 0x00000010, /**< error dialog */ + SDL_MESSAGEBOX_WARNING = 0x00000020, /**< warning dialog */ + SDL_MESSAGEBOX_INFORMATION = 0x00000040, /**< informational dialog */ + SDL_MESSAGEBOX_BUTTONS_LEFT_TO_RIGHT = 0x00000080, /**< buttons placed left to right */ + SDL_MESSAGEBOX_BUTTONS_RIGHT_TO_LEFT = 0x00000100 /**< buttons placed right to left */ +} SDL_MessageBoxFlags; + +/** + * Flags for SDL_MessageBoxButtonData. + */ +typedef enum +{ + SDL_MESSAGEBOX_BUTTON_RETURNKEY_DEFAULT = 0x00000001, /**< Marks the default button when return is hit */ + SDL_MESSAGEBOX_BUTTON_ESCAPEKEY_DEFAULT = 0x00000002 /**< Marks the default button when escape is hit */ +} SDL_MessageBoxButtonFlags; + +/** + * Individual button data. + */ +typedef struct +{ + Uint32 flags; /**< ::SDL_MessageBoxButtonFlags */ + int buttonid; /**< User defined button id (value returned via SDL_ShowMessageBox) */ + const char * text; /**< The UTF-8 button text */ +} SDL_MessageBoxButtonData; + +/** + * RGB value used in a message box color scheme + */ +typedef struct +{ + Uint8 r, g, b; +} SDL_MessageBoxColor; + +typedef enum +{ + SDL_MESSAGEBOX_COLOR_BACKGROUND, + SDL_MESSAGEBOX_COLOR_TEXT, + SDL_MESSAGEBOX_COLOR_BUTTON_BORDER, + SDL_MESSAGEBOX_COLOR_BUTTON_BACKGROUND, + SDL_MESSAGEBOX_COLOR_BUTTON_SELECTED, + SDL_MESSAGEBOX_COLOR_MAX +} SDL_MessageBoxColorType; + +/** + * A set of colors to use for message box dialogs + */ +typedef struct +{ + SDL_MessageBoxColor colors[SDL_MESSAGEBOX_COLOR_MAX]; +} SDL_MessageBoxColorScheme; + +/** + * MessageBox structure containing title, text, window, etc. + */ +typedef struct +{ + Uint32 flags; /**< ::SDL_MessageBoxFlags */ + SDL_Window *window; /**< Parent window, can be NULL */ + const char *title; /**< UTF-8 title */ + const char *message; /**< UTF-8 message text */ + + int numbuttons; + const SDL_MessageBoxButtonData *buttons; + + const SDL_MessageBoxColorScheme *colorScheme; /**< ::SDL_MessageBoxColorScheme, can be NULL to use system settings */ +} SDL_MessageBoxData; + +/** + * Create a modal message box. + * + * If your needs aren't complex, it might be easier to use + * SDL_ShowSimpleMessageBox. + * + * This function should be called on the thread that created the parent + * window, or on the main thread if the messagebox has no parent. It will + * block execution of that thread until the user clicks a button or closes the + * messagebox. + * + * This function may be called at any time, even before SDL_Init(). This makes + * it useful for reporting errors like a failure to create a renderer or + * OpenGL context. + * + * On X11, SDL rolls its own dialog box with X11 primitives instead of a + * formal toolkit like GTK+ or Qt. + * + * Note that if SDL_Init() would fail because there isn't any available video + * target, this function is likely to fail for the same reasons. If this is a + * concern, check the return value from this function and fall back to writing + * to stderr if you can. + * + * \param messageboxdata the SDL_MessageBoxData structure with title, text and + * other options + * \param buttonid the pointer to which user id of hit button should be copied + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ShowSimpleMessageBox + */ +extern DECLSPEC int SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid); + +/** + * Display a simple modal message box. + * + * If your needs aren't complex, this function is preferred over + * SDL_ShowMessageBox. + * + * `flags` may be any of the following: + * + * - `SDL_MESSAGEBOX_ERROR`: error dialog + * - `SDL_MESSAGEBOX_WARNING`: warning dialog + * - `SDL_MESSAGEBOX_INFORMATION`: informational dialog + * + * This function should be called on the thread that created the parent + * window, or on the main thread if the messagebox has no parent. It will + * block execution of that thread until the user clicks a button or closes the + * messagebox. + * + * This function may be called at any time, even before SDL_Init(). This makes + * it useful for reporting errors like a failure to create a renderer or + * OpenGL context. + * + * On X11, SDL rolls its own dialog box with X11 primitives instead of a + * formal toolkit like GTK+ or Qt. + * + * Note that if SDL_Init() would fail because there isn't any available video + * target, this function is likely to fail for the same reasons. If this is a + * concern, check the return value from this function and fall back to writing + * to stderr if you can. + * + * \param flags an SDL_MessageBoxFlags value + * \param title UTF-8 title text + * \param message UTF-8 message text + * \param window the parent window, or NULL for no parent + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ShowMessageBox + */ +extern DECLSPEC int SDLCALL SDL_ShowSimpleMessageBox(Uint32 flags, const char *title, const char *message, SDL_Window *window); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_messagebox_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..81756ddec207d6c5ac27077099a1520fc7d9f0a7 GIT binary patch literal 20662 zcmeHPdvIJ=dA}>9rjJmPiM#!M z=iGC4@9x>FP5W0nD2!It{mwbx^Y=Z@6}{SjZP7pclorzl@@~Nza0U)p-n{RY27Jr& z2QpS>z$=>r1;Z}(o7x)FF^ajiNRx|hdEPGOk{P>fnZ8>-ySL>D+Qq)uK*cK$*hSN+ zWUPUiLlZ*-X)9+JQ>L4-`tzL25RK`dEwLy6@zRc`LQm4R?+wsXZy=Q_q&?s8t&~rj zNK(g64=`B9cTvMWeL( znVz3XyRJioO-f^1m0ZtW8cI2KA+%ZOIKy`fwwYSAGZsu(Z{|@yt9CIt1s20|#8)AG}IAYnU~YMzNc>9D9jaIRB+v!+d&l zP)^EB(V*lmmo3^6Trq`n-}mg?g5fkcen{z@&bJFzxsEJ~e`~>JhF<&CsWAI8I()Zc zGDnq44jq{-B^@`HUR_RudGbQK5GAd5)*CQ0R#qJ{^}6uO71K|RADtKr9W8j1>@%RN zcM(BRx0&g>^R|_;-Bh+xG=1AGdUfin$1#Qobl{EYgAo{&MT9i$ptSvBp|G0iVRX-* z_ij^4St;5GR^_8Q@zjVZ^ne432J-<4rs5IX!!z^Nsz)qBjCKSrxh1pcN60Mg1~AKT z1Ymv_>B9xXWDfKE)yKk4Op&0}jywjZ*apiF(!G_IN~NG^IA*F~ETs$wI^*K10aD~D zGM?3_n2>gJ7E-ehgyboNnIKA5Z-L}_>EMB|pi&-iiT#O2$|KIB*kX)@G@_I?yW|19 znvhaS8^m>K2n(#ThtlA6u5{YTZe+=k;SlFSE-Aa|*rl{pgNfUVIhY>eQJRmsP8V*A2$N-2~VrL7+f}>a?Ovr?+g`ygWL{K@dX`n_3mpaPR zaiVm1$!F+HWUs8@g|`Y3py8l8-2rLvbiW5F_4 z)3?ABD%eJb+rbnVae)K;4#nn5R!plgB}Q2;Z+Q6vZ_`FHlMxUAU$9Y$+-52G5So`3 z1P(Q)MkTi*gD4|L?8{@D*Wl$vAaXc02{L&+b#4Pp}Imok(XK~Q|Lpi@$TC4`Fd5!;~T=gVN2c~R0R^FB!e zQj-?a4su+f)%=6%vkG#tZ!JaejHJyERdOX1P7l>u#(IObIHC0so{(+Fz0d;6Bcq(# z@mMZ+usbTZmHo!9C~C`Equ>mwYA2bXn(Tu41qMqYJqVLA>vC{FA5WbomGVs`Scu%S z92CE;x1)g%DiO_W8}hHg-8Ulf$vp@2DBNC)GFcKl#Cgf zRa00ql@XHYZn*LFg6wQLP-KoQZ>wxu%g@(Bi9z~oSK{uh4@$?GUIS9)IzqYSZSV9 zC{HXKkhw7*x2!fqG7M6FTRo4LTQx?4yn&elnz|IwE}1!7G%zm>d7>~vQ>u|vQGw(b zMAmvzKtp_@SjC>qKuXIf)yv8*g+nQct>PK85aoXLlGl{gmiV4sD4|Q_*?|Mf9ep=N zlv6d=Y89%kf!TrS77A`uNkFslZ7pZxP1QFE)8xywu%l6K$Vwrnps7excdAr14L;z# zO@Xc?E)+24a!}RL$!cwIya5=)f5T7{W{_RlC_8pR$LHkX+#{aVrQuW?v)%>FpD?@) z=}Rf#65WM0Xd^0?jwRWQ|EYI1Tp=<3P_ktayy_7Fqu^IFsmQu+^-<*l##Xi4jwp7| z8eY*Zm3ZlU&%GzYX_T>qvcOtE`P?}CiQ1M~o0R*ivd{`8ew*YednGFjX-aEwkfk9} zgGpM#vhOW98K15rn;crWjtrsGF8U6eHz?6q=PT<4CCddDX|wHkVxWkoz8!XrN-$H3 z=GAnvPQ}YdZ@OsajoPhSeHSIQleaTLN6yZRGQX9vaqCO=e_=cu0i@iVrKrAPwNanv zrJBoIr6KBzErZ{*O2ASsSlTg?E46Jok^jwAvy?2rS`YlC(m5W6V5-S&OOD}Z-Lkr0 zmOGuP*x@8D_7Oo|tQ1-|ra>7(j5IYz;_f;bF?pAV;8wB~xJgz$tLSm}k)9o5wl1UC znbmU&0E~v$4TNfwE8|)mE*Y#%*VGL1%eE##l}B>F!GNY2pp^6r@ZEN4ZKXKMZ5i;W zHf|E0l9*lV;p?%2Svdsmtkh1GjIt4a0YJ%vmsi2MV1T<2U0V4`b~zJrM&*WFw~-Nv z-5A56&BT#%tgU>?7?Q0z=21=w^C)>Q99pAf&vY_Y!S&mk$~mr)@oG7}UhC2=OZJk* zX9i7fDQR*jKWK7Pb{(goUR3f36%HxfO=w8&i`hw3$hMJRO73C7_C zTL{G;plAOa&n-^5LKV#EF)~K~r3`f5o zBh{BTP)@3^_BdX%!E_SfiwRefj8Lmo3g*K+CYe&A+O*n$>hy<$S0^Jmfl{O2i)51^HcXTWO|Zud65xjP zGD#J2Y>U@ZTCI3JvjMYgZg0ChP|qB~;stNXG+pntVwM#tX%((1SCr<1*<3UPM%!#lt~Tuil$OhzKg02)|_2YyPakbckzw+oV{vzTt6jdF26Z}D;4pBxSb z5yE1C7_bw4ik5GU2L4QYBxQX@{@gjJe*2psjlFI+q<$`Db|cM?LvO=hTvEI* zAG+%5xI%mT+DEiU*LGANz2x(6PrU!He~y;hDi?JqPKTjWGkJG$hE2VX;YAE1XN|f` zJty#V`;gA2DSbLB9naTkDx~+~1vtkF{|duoTGz+6J82g)?xNlcN5L+A5#9k-S5 zrzSy8BZxA}eoURAhG751Y)C{*=_*c!*rwZG60^uS=T~a@(SUaF8i9{TBoX>*3}zEt z?|r&k77J)T3JQATK)1Q{f#RWe9q*0kMK@U8uOIdGMcZ)_X-a}R-Uc!ff7P7L5A_YHT?<~t{#yjYNx>@VIc#<1QKF@G7*(seLB?^kRFP% zm}4C++J4X0ew}SlFy<{UVf#9c&sH3mv#gh`l1tToj+@QX9eW-&*RzK0;Lj;^-wpJI z---JjaGIFHTS|u~$jR9&6p6%CQ9re98*^u!T4PVgO}FkY76VI>zd}oXp2*;b^ge*S z0AX!}327NVW+a$}p(FfB#5@>f%p9J*?rKub^*%H)iEbbIfzYrDIUtu%Uu1SCt|7i@ zKtj?Y1h74d2-1+TfTsq^PMsk|0M|`bHIc7)X#AlA!$V-h=HwKJ zDE!YzKn*6~0TG_J-~mKkw(#dDMIF_B1%Xp`3!GdAqfyLYdk5?S<>@S{M`4Eqegx7X zh)6=jHaxiq!Ea_GAPz1Nhsjeb^)G(0+VjBmLoa{mrKRepUV7r@nNROZSEn~V_hQdacR!`A)wI~k zj+J~YwxX@PrfF4U!@qrQ%?IA|fFd{4cJJYNfMKOf6^9Jp(0c=|BQP@fcOOeGy&Mee z3?+fhns$(Z6?FLe!5{Hcuyc8z&=6j019IS7hztq)jTsCo3M0*L;q!NhX5?D~p5m*9=Gd1KA2*y5L%0D_?8X{i^*cH*uVU^yF;ZeDmx6M4oCQzTH z!aSlks0-?X&@I_k=KmVfHlmECp{)MnflKc{I`MbaSH5|}dk@|B^_LmCF7H^rITl;i zmcOHEmsNj!=kML~hoc?6Mv?Lfo9#7ZJ%Uk9)AndJxD5!&R#cmyilf@5&SHHsjak0g zuf=ZZy5;f?e9w1ar#Dr9_ShTm{qFFK|DaX>_OrkL!aFB_wdRiM?uU;)@J}Dli+wG@$4;EC8jRk5vwkY|IV8(er=%tA_O{p`1Xf>@$1v)FW%8nealy8rXSytf8nCG zM!PJAZMEu!(h#xb z)5{<4j8!K;Yu)p`$8$v4@Krr?$=&aJc&IYh+8zg8$1TsG1}a!se64msM_)>Xok}jV)NHtO)T#>@)vE2IHI21W{`_HfZ%K5dM1+Nya zK2-e7!XsM!UfZ~_ABs5Md3>lNc0@Zq#Lj)>l^@=B!_@6>p>x5;*GGFF*|}%`7w8}1 zuj;_)v&q+PJhP8kOu+!F8nI@V76v_DWwILAtCXlgK)Xa84r+PclZw{OMv$TFV3D-B zYx9PV*ygUQ$$FZW;Oq%*Tk*h*LQ24rQ3!ja>j-u^(sewv%l(zvw}1K9-}wn`9R8}# zyt41|``&r_M?%p`q+qA0)C@=1qD>zj4GMK2F#5eB)mwEAYLffvbQ255j*WMY_jbe% zYU91cN%hs@OS$(ve97J14TR6ePR396!wquZo?rUNV;4T!O8imQ`w2sgYrK%B&Ma&a zPDg+T%o^+(gpLNghU<0oU|27NvJXFV#YdjG@ymN8QfbvE|Lo3h-1L0+6GB@w58ILQ zb(&r5&~!Z!>>}L?g)Xcz79YD5(!BM8{orrj{GaSk8(YFyjn$SiK6T!`4;5?J6?%SH`SJuCL@#Ry6Ps^MpyPTTS zu7c&*Z{O>Tj)PqXf#CqF=RG**w<)wfAq3lkrdicqo-FM9^-(KvhKJmi6&+U5X zk`L$t*RT228!n{x-TH056Byi=g4oVLu2!sA+Nr{?33 z@=HavVe z&RzcG@_E{6`PSw0vUuY=UjL5I`ad{#*Cwe`{Lr!7vpljtw$ihL@73h@zkBJ-CAo2S zT5Uc$dSZ5VYH}tuef02=+0^V*YGQ1BR^O`+E)CMxwn5B%;Y%C~F{*X&|BI2)%dCY* z<>XjdUyJp|dyf-i_&oh!H>KF>{ZBsjz59Og<`1?wj!vP|*s-fnYGP_S#m$f!J#g^4!_!kI zCJ%v+iS{U=z3p(0WAS6NBnN#4HV~N>p{h41gEMPqwD^`T?F4mr$eeZ&rVYeE!`H*d zgnWXACkwV}P_Ktxxkm|`v?U+%<7@B65V9cmEvhiHZWBOs?DjF3kCTnO(wb=If_8W)+e3k;) z^Ra!myrXpHi)sd@$7WAVPqtuSTN?}ngH*x5P<)6nfKS1I$SkaeX;gnsTiXlpjg4&_ zyPOzDC3E>Xt~t@+5#vFv(A!`XCNn z;HfB{Vw3Sn7QXZuSWBd!06rV!&C(oMTi2J+cI{&4$dTn}U7;G=-MyQ+Au^7Bp35ov z9~IEnHC}q7hFNVL^o*l(-A(7#t;Kk~rgYIv^1E7UG--N{CNg(zZjNk`i|6L5qGRMd ze*Vx8F8#+J{n2X;8mzl!s>8=&!pC8)Zt5&=owQg_yk`#`f=_{qkALRY_x*r*_b;^vOIRc5>gzB1&2@yigz(I#mu$9xw|9b1c)9*-V>c;+f3>>fHFmU&elH ze!Q2CuMN>s`4o8C^amW_SfSSNFxK7Gjb@gYe`WbwM85o`t6fTg*96)UeO5Q+|ILOr)HtlA*Jy25Ml#IW7oy6+eQ1* zXCQX>%Nsg>_g#nnrC}+%sI7CzZRC(WTK&DP7TXfvGDzFuQ@G>Z&))0()TpK#whIB( z=+yL~v1#mgXmu*EfD9Cyh)+z=N%R>oF1l#8hlC&o1&#R5@WZ?5np?DPsscR@n7qbpKv@x8`){SP*g9gdjAq5H n8)S#gITq8#i1J95*dyzLYAg6nP#&fAbU$e~9Z&c3qU*l_<=OfI literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h new file mode 100644 index 00000000..f36e3487 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h @@ -0,0 +1,113 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_metal.h + * + * Header file for functions to creating Metal layers and views on SDL windows. + */ + +#ifndef SDL_metal_h_ +#define SDL_metal_h_ + +#include "SDL_video.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \brief A handle to a CAMetalLayer-backed NSView (macOS) or UIView (iOS/tvOS). + * + * \note This can be cast directly to an NSView or UIView. + */ +typedef void *SDL_MetalView; + +/** + * \name Metal support functions + */ +/* @{ */ + +/** + * Create a CAMetalLayer-backed NSView/UIView and attach it to the specified + * window. + * + * On macOS, this does *not* associate a MTLDevice with the CAMetalLayer on + * its own. It is up to user code to do that. + * + * The returned handle can be casted directly to a NSView or UIView. To access + * the backing CAMetalLayer, call SDL_Metal_GetLayer(). + * + * \since This function is available since SDL 2.0.12. + * + * \sa SDL_Metal_DestroyView + * \sa SDL_Metal_GetLayer + */ +extern DECLSPEC SDL_MetalView SDLCALL SDL_Metal_CreateView(SDL_Window * window); + +/** + * Destroy an existing SDL_MetalView object. + * + * This should be called before SDL_DestroyWindow, if SDL_Metal_CreateView was + * called after SDL_CreateWindow. + * + * \since This function is available since SDL 2.0.12. + * + * \sa SDL_Metal_CreateView + */ +extern DECLSPEC void SDLCALL SDL_Metal_DestroyView(SDL_MetalView view); + +/** + * Get a pointer to the backing CAMetalLayer for the given view. + * + * \since This function is available since SDL 2.0.14. + * + * \sa SDL_Metal_CreateView + */ +extern DECLSPEC void *SDLCALL SDL_Metal_GetLayer(SDL_MetalView view); + +/** + * Get the size of a window's underlying drawable in pixels (for use with + * setting viewport, scissor & etc). + * + * \param window SDL_Window from which the drawable size should be queried + * \param w Pointer to variable for storing the width in pixels, may be NULL + * \param h Pointer to variable for storing the height in pixels, may be NULL + * + * \since This function is available since SDL 2.0.14. + * + * \sa SDL_GetWindowSize + * \sa SDL_CreateWindow + */ +extern DECLSPEC void SDLCALL SDL_Metal_GetDrawableSize(SDL_Window* window, int *w, + int *h); + +/* @} *//* Metal support functions */ + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_metal_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..376b2d3978126fb9bd005b671d48b3f1f22fc52e GIT binary patch literal 14725 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 PwR`q%6F-eDhydfiVUaar literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h new file mode 100644 index 00000000..13ed9c77 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h @@ -0,0 +1,79 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_misc.h + * + * \brief Include file for SDL API functions that don't fit elsewhere. + */ + +#ifndef SDL_misc_h_ +#define SDL_misc_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" + +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Open a URL/URI in the browser or other appropriate external application. + * + * Open a URL in a separate, system-provided application. How this works will + * vary wildly depending on the platform. This will likely launch what makes + * sense to handle a specific URL's protocol (a web browser for `http://`, + * etc), but it might also be able to launch file managers for directories and + * other things. + * + * What happens when you open a URL varies wildly as well: your game window + * may lose focus (and may or may not lose focus if your game was fullscreen + * or grabbing input at the time). On mobile devices, your app will likely + * move to the background or your process might be paused. Any given platform + * may or may not handle a given URL. + * + * If this is unimplemented (or simply unavailable) for a platform, this will + * fail with an error. A successful result does not mean the URL loaded, just + * that we launched _something_ to handle it (or at least believe we did). + * + * All this to say: this function can be useful, but you should definitely + * test it on every platform you target. + * + * \param url A valid URL/URI to open. Use `file:///full/path/to/file` for + * local files, if supported. + * \returns 0 on success, or -1 on error; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC int SDLCALL SDL_OpenURL(const char *url); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_misc_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..60af0e8985e95fe2f0490b76ea3f0b4ee8e69331 GIT binary patch literal 13785 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 L^XK610m%Ljvo-vx literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h new file mode 100644 index 00000000..aa075757 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h @@ -0,0 +1,464 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_mouse.h + * + * Include file for SDL mouse event handling. + */ + +#ifndef SDL_mouse_h_ +#define SDL_mouse_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_video.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct SDL_Cursor SDL_Cursor; /**< Implementation dependent */ + +/** + * \brief Cursor types for SDL_CreateSystemCursor(). + */ +typedef enum +{ + SDL_SYSTEM_CURSOR_ARROW, /**< Arrow */ + SDL_SYSTEM_CURSOR_IBEAM, /**< I-beam */ + SDL_SYSTEM_CURSOR_WAIT, /**< Wait */ + SDL_SYSTEM_CURSOR_CROSSHAIR, /**< Crosshair */ + SDL_SYSTEM_CURSOR_WAITARROW, /**< Small wait cursor (or Wait if not available) */ + SDL_SYSTEM_CURSOR_SIZENWSE, /**< Double arrow pointing northwest and southeast */ + SDL_SYSTEM_CURSOR_SIZENESW, /**< Double arrow pointing northeast and southwest */ + SDL_SYSTEM_CURSOR_SIZEWE, /**< Double arrow pointing west and east */ + SDL_SYSTEM_CURSOR_SIZENS, /**< Double arrow pointing north and south */ + SDL_SYSTEM_CURSOR_SIZEALL, /**< Four pointed arrow pointing north, south, east, and west */ + SDL_SYSTEM_CURSOR_NO, /**< Slashed circle or crossbones */ + SDL_SYSTEM_CURSOR_HAND, /**< Hand */ + SDL_NUM_SYSTEM_CURSORS +} SDL_SystemCursor; + +/** + * \brief Scroll direction types for the Scroll event + */ +typedef enum +{ + SDL_MOUSEWHEEL_NORMAL, /**< The scroll direction is normal */ + SDL_MOUSEWHEEL_FLIPPED /**< The scroll direction is flipped / natural */ +} SDL_MouseWheelDirection; + +/* Function prototypes */ + +/** + * Get the window which currently has mouse focus. + * + * \returns the window with mouse focus. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_Window * SDLCALL SDL_GetMouseFocus(void); + +/** + * Retrieve the current state of the mouse. + * + * The current button state is returned as a button bitmask, which can be + * tested using the `SDL_BUTTON(X)` macros (where `X` is generally 1 for the + * left, 2 for middle, 3 for the right button), and `x` and `y` are set to the + * mouse cursor position relative to the focus window. You can pass NULL for + * either `x` or `y`. + * + * \param x the x coordinate of the mouse cursor position relative to the + * focus window + * \param y the y coordinate of the mouse cursor position relative to the + * focus window + * \returns a 32-bit button bitmask of the current button state. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetGlobalMouseState + * \sa SDL_GetRelativeMouseState + * \sa SDL_PumpEvents + */ +extern DECLSPEC Uint32 SDLCALL SDL_GetMouseState(int *x, int *y); + +/** + * Get the current state of the mouse in relation to the desktop. + * + * This works similarly to SDL_GetMouseState(), but the coordinates will be + * reported relative to the top-left of the desktop. This can be useful if you + * need to track the mouse outside of a specific window and SDL_CaptureMouse() + * doesn't fit your needs. For example, it could be useful if you need to + * track the mouse while dragging a window, where coordinates relative to a + * window might not be in sync at all times. + * + * Note: SDL_GetMouseState() returns the mouse position as SDL understands it + * from the last pump of the event queue. This function, however, queries the + * OS for the current mouse position, and as such, might be a slightly less + * efficient function. Unless you know what you're doing and have a good + * reason to use this function, you probably want SDL_GetMouseState() instead. + * + * \param x filled in with the current X coord relative to the desktop; can be + * NULL + * \param y filled in with the current Y coord relative to the desktop; can be + * NULL + * \returns the current button state as a bitmask which can be tested using + * the SDL_BUTTON(X) macros. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_CaptureMouse + */ +extern DECLSPEC Uint32 SDLCALL SDL_GetGlobalMouseState(int *x, int *y); + +/** + * Retrieve the relative state of the mouse. + * + * The current button state is returned as a button bitmask, which can be + * tested using the `SDL_BUTTON(X)` macros (where `X` is generally 1 for the + * left, 2 for middle, 3 for the right button), and `x` and `y` are set to the + * mouse deltas since the last call to SDL_GetRelativeMouseState() or since + * event initialization. You can pass NULL for either `x` or `y`. + * + * \param x a pointer filled with the last recorded x coordinate of the mouse + * \param y a pointer filled with the last recorded y coordinate of the mouse + * \returns a 32-bit button bitmask of the relative button state. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetMouseState + */ +extern DECLSPEC Uint32 SDLCALL SDL_GetRelativeMouseState(int *x, int *y); + +/** + * Move the mouse cursor to the given position within the window. + * + * This function generates a mouse motion event if relative mode is not + * enabled. If relative mode is enabled, you can force mouse events for the + * warp by setting the SDL_HINT_MOUSE_RELATIVE_WARP_MOTION hint. + * + * Note that this function will appear to succeed, but not actually move the + * mouse when used over Microsoft Remote Desktop. + * + * \param window the window to move the mouse into, or NULL for the current + * mouse focus + * \param x the x coordinate within the window + * \param y the y coordinate within the window + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WarpMouseGlobal + */ +extern DECLSPEC void SDLCALL SDL_WarpMouseInWindow(SDL_Window * window, + int x, int y); + +/** + * Move the mouse to the given position in global screen space. + * + * This function generates a mouse motion event. + * + * A failure of this function usually means that it is unsupported by a + * platform. + * + * Note that this function will appear to succeed, but not actually move the + * mouse when used over Microsoft Remote Desktop. + * + * \param x the x coordinate + * \param y the y coordinate + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_WarpMouseInWindow + */ +extern DECLSPEC int SDLCALL SDL_WarpMouseGlobal(int x, int y); + +/** + * Set relative mouse mode. + * + * While the mouse is in relative mode, the cursor is hidden, the mouse + * position is constrained to the window, and SDL will report continuous + * relative mouse motion even if the mouse is at the edge of the window. + * + * This function will flush any pending mouse motion. + * + * \param enabled SDL_TRUE to enable relative mode, SDL_FALSE to disable. + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * If relative mode is not supported, this returns -1. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRelativeMouseMode + */ +extern DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); + +/** + * Capture the mouse and to track input outside an SDL window. + * + * Capturing enables your app to obtain mouse events globally, instead of just + * within your window. Not all video targets support this function. When + * capturing is enabled, the current window will get all mouse events, but + * unlike relative mode, no change is made to the cursor and it is not + * restrained to your window. + * + * This function may also deny mouse input to other windows--both those in + * your application and others on the system--so you should use this function + * sparingly, and in small bursts. For example, you might want to track the + * mouse while the user is dragging something, until the user releases a mouse + * button. It is not recommended that you capture the mouse for long periods + * of time, such as the entire time your app is running. For that, you should + * probably use SDL_SetRelativeMouseMode() or SDL_SetWindowGrab(), depending + * on your goals. + * + * While captured, mouse events still report coordinates relative to the + * current (foreground) window, but those coordinates may be outside the + * bounds of the window (including negative values). Capturing is only allowed + * for the foreground window. If the window loses focus while capturing, the + * capture will be disabled automatically. + * + * While capturing is enabled, the current window will have the + * `SDL_WINDOW_MOUSE_CAPTURE` flag set. + * + * Please note that as of SDL 2.0.22, SDL will attempt to "auto capture" the + * mouse while the user is pressing a button; this is to try and make mouse + * behavior more consistent between platforms, and deal with the common case + * of a user dragging the mouse outside of the window. This means that if you + * are calling SDL_CaptureMouse() only to deal with this situation, you no + * longer have to (although it is safe to do so). If this causes problems for + * your app, you can disable auto capture by setting the + * `SDL_HINT_MOUSE_AUTO_CAPTURE` hint to zero. + * + * \param enabled SDL_TRUE to enable capturing, SDL_FALSE to disable. + * \returns 0 on success or -1 if not supported; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_GetGlobalMouseState + */ +extern DECLSPEC int SDLCALL SDL_CaptureMouse(SDL_bool enabled); + +/** + * Query whether relative mouse mode is enabled. + * + * \returns SDL_TRUE if relative mode is enabled or SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetRelativeMouseMode + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GetRelativeMouseMode(void); + +/** + * Create a cursor using the specified bitmap data and mask (in MSB format). + * + * `mask` has to be in MSB (Most Significant Bit) format. + * + * The cursor width (`w`) must be a multiple of 8 bits. + * + * The cursor is created in black and white according to the following: + * + * - data=0, mask=1: white + * - data=1, mask=1: black + * - data=0, mask=0: transparent + * - data=1, mask=0: inverted color if possible, black if not. + * + * Cursors created with this function must be freed with SDL_FreeCursor(). + * + * If you want to have a color cursor, or create your cursor from an + * SDL_Surface, you should use SDL_CreateColorCursor(). Alternately, you can + * hide the cursor and draw your own as part of your game's rendering, but it + * will be bound to the framerate. + * + * Also, since SDL 2.0.0, SDL_CreateSystemCursor() is available, which + * provides twelve readily available system cursors to pick from. + * + * \param data the color value for each pixel of the cursor + * \param mask the mask value for each pixel of the cursor + * \param w the width of the cursor + * \param h the height of the cursor + * \param hot_x the X-axis location of the upper left corner of the cursor + * relative to the actual mouse position + * \param hot_y the Y-axis location of the upper left corner of the cursor + * relative to the actual mouse position + * \returns a new cursor with the specified parameters on success or NULL on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FreeCursor + * \sa SDL_SetCursor + * \sa SDL_ShowCursor + */ +extern DECLSPEC SDL_Cursor *SDLCALL SDL_CreateCursor(const Uint8 * data, + const Uint8 * mask, + int w, int h, int hot_x, + int hot_y); + +/** + * Create a color cursor. + * + * \param surface an SDL_Surface structure representing the cursor image + * \param hot_x the x position of the cursor hot spot + * \param hot_y the y position of the cursor hot spot + * \returns the new cursor on success or NULL on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateCursor + * \sa SDL_FreeCursor + */ +extern DECLSPEC SDL_Cursor *SDLCALL SDL_CreateColorCursor(SDL_Surface *surface, + int hot_x, + int hot_y); + +/** + * Create a system cursor. + * + * \param id an SDL_SystemCursor enum value + * \returns a cursor on success or NULL on failure; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FreeCursor + */ +extern DECLSPEC SDL_Cursor *SDLCALL SDL_CreateSystemCursor(SDL_SystemCursor id); + +/** + * Set the active cursor. + * + * This function sets the currently active cursor to the specified one. If the + * cursor is currently visible, the change will be immediately represented on + * the display. SDL_SetCursor(NULL) can be used to force cursor redraw, if + * this is desired for any reason. + * + * \param cursor a cursor to make active + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateCursor + * \sa SDL_GetCursor + * \sa SDL_ShowCursor + */ +extern DECLSPEC void SDLCALL SDL_SetCursor(SDL_Cursor * cursor); + +/** + * Get the active cursor. + * + * This function returns a pointer to the current cursor which is owned by the + * library. It is not necessary to free the cursor with SDL_FreeCursor(). + * + * \returns the active cursor or NULL if there is no mouse. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetCursor + */ +extern DECLSPEC SDL_Cursor *SDLCALL SDL_GetCursor(void); + +/** + * Get the default cursor. + * + * You do not have to call SDL_FreeCursor() on the return value, but it is + * safe to do so. + * + * \returns the default cursor on success or NULL on failure. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateSystemCursor + */ +extern DECLSPEC SDL_Cursor *SDLCALL SDL_GetDefaultCursor(void); + +/** + * Free a previously-created cursor. + * + * Use this function to free cursor resources created with SDL_CreateCursor(), + * SDL_CreateColorCursor() or SDL_CreateSystemCursor(). + * + * \param cursor the cursor to free + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateColorCursor + * \sa SDL_CreateCursor + * \sa SDL_CreateSystemCursor + */ +extern DECLSPEC void SDLCALL SDL_FreeCursor(SDL_Cursor * cursor); + +/** + * Toggle whether or not the cursor is shown. + * + * The cursor starts off displayed but can be turned off. Passing `SDL_ENABLE` + * displays the cursor and passing `SDL_DISABLE` hides it. + * + * The current state of the mouse cursor can be queried by passing + * `SDL_QUERY`; either `SDL_DISABLE` or `SDL_ENABLE` will be returned. + * + * \param toggle `SDL_ENABLE` to show the cursor, `SDL_DISABLE` to hide it, + * `SDL_QUERY` to query the current state without changing it. + * \returns `SDL_ENABLE` if the cursor is shown, or `SDL_DISABLE` if the + * cursor is hidden, or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateCursor + * \sa SDL_SetCursor + */ +extern DECLSPEC int SDLCALL SDL_ShowCursor(int toggle); + +/** + * Used as a mask when testing buttons in buttonstate. + * + * - Button 1: Left mouse button + * - Button 2: Middle mouse button + * - Button 3: Right mouse button + */ +#define SDL_BUTTON(X) (1 << ((X)-1)) +#define SDL_BUTTON_LEFT 1 +#define SDL_BUTTON_MIDDLE 2 +#define SDL_BUTTON_RIGHT 3 +#define SDL_BUTTON_X1 4 +#define SDL_BUTTON_X2 5 +#define SDL_BUTTON_LMASK SDL_BUTTON(SDL_BUTTON_LEFT) +#define SDL_BUTTON_MMASK SDL_BUTTON(SDL_BUTTON_MIDDLE) +#define SDL_BUTTON_RMASK SDL_BUTTON(SDL_BUTTON_RIGHT) +#define SDL_BUTTON_X1MASK SDL_BUTTON(SDL_BUTTON_X1) +#define SDL_BUTTON_X2MASK SDL_BUTTON(SDL_BUTTON_X2) + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_mouse_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7dc2755b61a6336843f5d6f1199bc0ceb821577e GIT binary patch literal 31165 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 NGDA-KCy$D5{|^$*J + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_mutex_h_ +#define SDL_mutex_h_ + +/** + * \file SDL_mutex.h + * + * Functions to provide thread synchronization primitives. + */ + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +/******************************************************************************/ +/* Enable thread safety attributes only with clang. + * The attributes can be safely erased when compiling with other compilers. + */ +#if defined(SDL_THREAD_SAFETY_ANALYSIS) && \ + defined(__clang__) && (!defined(SWIG)) +#define SDL_THREAD_ANNOTATION_ATTRIBUTE__(x) __attribute__((x)) +#else +#define SDL_THREAD_ANNOTATION_ATTRIBUTE__(x) /* no-op */ +#endif + +#define SDL_CAPABILITY(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(capability(x)) + +#define SDL_SCOPED_CAPABILITY \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(scoped_lockable) + +#define SDL_GUARDED_BY(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x)) + +#define SDL_PT_GUARDED_BY(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(pt_guarded_by(x)) + +#define SDL_ACQUIRED_BEFORE(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(acquired_before(x)) + +#define SDL_ACQUIRED_AFTER(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(acquired_after(x)) + +#define SDL_REQUIRES(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(requires_capability(x)) + +#define SDL_REQUIRES_SHARED(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(requires_shared_capability(x)) + +#define SDL_ACQUIRE(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(acquire_capability(x)) + +#define SDL_ACQUIRE_SHARED(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(acquire_shared_capability(x)) + +#define SDL_RELEASE(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(release_capability(x)) + +#define SDL_RELEASE_SHARED(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(release_shared_capability(x)) + +#define SDL_RELEASE_GENERIC(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(release_generic_capability(x)) + +#define SDL_TRY_ACQUIRE(x, y) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_capability(x, y)) + +#define SDL_TRY_ACQUIRE_SHARED(x, y) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_shared_capability(x, y)) + +#define SDL_EXCLUDES(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(locks_excluded(x)) + +#define SDL_ASSERT_CAPABILITY(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(assert_capability(x)) + +#define SDL_ASSERT_SHARED_CAPABILITY(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(assert_shared_capability(x)) + +#define SDL_RETURN_CAPABILITY(x) \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(lock_returned(x)) + +#define SDL_NO_THREAD_SAFETY_ANALYSIS \ + SDL_THREAD_ANNOTATION_ATTRIBUTE__(no_thread_safety_analysis) + +/******************************************************************************/ + + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Synchronization functions which can time out return this value + * if they time out. + */ +#define SDL_MUTEX_TIMEDOUT 1 + +/** + * This is the timeout value which corresponds to never time out. + */ +#define SDL_MUTEX_MAXWAIT (~(Uint32)0) + + +/** + * \name Mutex functions + */ +/* @{ */ + +/* The SDL mutex structure, defined in SDL_sysmutex.c */ +struct SDL_mutex; +typedef struct SDL_mutex SDL_mutex; + +/** + * Create a new mutex. + * + * All newly-created mutexes begin in the _unlocked_ state. + * + * Calls to SDL_LockMutex() will not return while the mutex is locked by + * another thread. See SDL_TryLockMutex() to attempt to lock without blocking. + * + * SDL mutexes are reentrant. + * + * \returns the initialized and unlocked mutex or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_DestroyMutex + * \sa SDL_LockMutex + * \sa SDL_TryLockMutex + * \sa SDL_UnlockMutex + */ +extern DECLSPEC SDL_mutex *SDLCALL SDL_CreateMutex(void); + +/** + * Lock the mutex. + * + * This will block until the mutex is available, which is to say it is in the + * unlocked state and the OS has chosen the caller as the next thread to lock + * it. Of all threads waiting to lock the mutex, only one may do so at a time. + * + * It is legal for the owning thread to lock an already-locked mutex. It must + * unlock it the same number of times before it is actually made available for + * other threads in the system (this is known as a "recursive mutex"). + * + * \param mutex the mutex to lock + * \return 0, or -1 on error. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_LockMutex(SDL_mutex * mutex) SDL_ACQUIRE(mutex); +#define SDL_mutexP(m) SDL_LockMutex(m) + +/** + * Try to lock a mutex without blocking. + * + * This works just like SDL_LockMutex(), but if the mutex is not available, + * this function returns `SDL_MUTEX_TIMEOUT` immediately. + * + * This technique is useful if you need exclusive access to a resource but + * don't want to wait for it, and will return to it to try again later. + * + * \param mutex the mutex to try to lock + * \returns 0, `SDL_MUTEX_TIMEDOUT`, or -1 on error; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateMutex + * \sa SDL_DestroyMutex + * \sa SDL_LockMutex + * \sa SDL_UnlockMutex + */ +extern DECLSPEC int SDLCALL SDL_TryLockMutex(SDL_mutex * mutex) SDL_TRY_ACQUIRE(0, mutex); + +/** + * Unlock the mutex. + * + * It is legal for the owning thread to lock an already-locked mutex. It must + * unlock it the same number of times before it is actually made available for + * other threads in the system (this is known as a "recursive mutex"). + * + * It is an error to unlock a mutex that has not been locked by the current + * thread, and doing so results in undefined behavior. + * + * It is also an error to unlock a mutex that isn't locked at all. + * + * \param mutex the mutex to unlock. + * \returns 0, or -1 on error. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_UnlockMutex(SDL_mutex * mutex) SDL_RELEASE(mutex); +#define SDL_mutexV(m) SDL_UnlockMutex(m) + +/** + * Destroy a mutex created with SDL_CreateMutex(). + * + * This function must be called on any mutex that is no longer needed. Failure + * to destroy a mutex will result in a system memory or resource leak. While + * it is safe to destroy a mutex that is _unlocked_, it is not safe to attempt + * to destroy a locked mutex, and may result in undefined behavior depending + * on the platform. + * + * \param mutex the mutex to destroy + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateMutex + * \sa SDL_LockMutex + * \sa SDL_TryLockMutex + * \sa SDL_UnlockMutex + */ +extern DECLSPEC void SDLCALL SDL_DestroyMutex(SDL_mutex * mutex); + +/* @} *//* Mutex functions */ + + +/** + * \name Semaphore functions + */ +/* @{ */ + +/* The SDL semaphore structure, defined in SDL_syssem.c */ +struct SDL_semaphore; +typedef struct SDL_semaphore SDL_sem; + +/** + * Create a semaphore. + * + * This function creates a new semaphore and initializes it with the value + * `initial_value`. Each wait operation on the semaphore will atomically + * decrement the semaphore value and potentially block if the semaphore value + * is 0. Each post operation will atomically increment the semaphore value and + * wake waiting threads and allow them to retry the wait operation. + * + * \param initial_value the starting value of the semaphore + * \returns a new semaphore or NULL on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_DestroySemaphore + * \sa SDL_SemPost + * \sa SDL_SemTryWait + * \sa SDL_SemValue + * \sa SDL_SemWait + * \sa SDL_SemWaitTimeout + */ +extern DECLSPEC SDL_sem *SDLCALL SDL_CreateSemaphore(Uint32 initial_value); + +/** + * Destroy a semaphore. + * + * It is not safe to destroy a semaphore if there are threads currently + * waiting on it. + * + * \param sem the semaphore to destroy + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateSemaphore + * \sa SDL_SemPost + * \sa SDL_SemTryWait + * \sa SDL_SemValue + * \sa SDL_SemWait + * \sa SDL_SemWaitTimeout + */ +extern DECLSPEC void SDLCALL SDL_DestroySemaphore(SDL_sem * sem); + +/** + * Wait until a semaphore has a positive value and then decrements it. + * + * This function suspends the calling thread until either the semaphore + * pointed to by `sem` has a positive value or the call is interrupted by a + * signal or error. If the call is successful it will atomically decrement the + * semaphore value. + * + * This function is the equivalent of calling SDL_SemWaitTimeout() with a time + * length of `SDL_MUTEX_MAXWAIT`. + * + * \param sem the semaphore wait on + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateSemaphore + * \sa SDL_DestroySemaphore + * \sa SDL_SemPost + * \sa SDL_SemTryWait + * \sa SDL_SemValue + * \sa SDL_SemWait + * \sa SDL_SemWaitTimeout + */ +extern DECLSPEC int SDLCALL SDL_SemWait(SDL_sem * sem); + +/** + * See if a semaphore has a positive value and decrement it if it does. + * + * This function checks to see if the semaphore pointed to by `sem` has a + * positive value and atomically decrements the semaphore value if it does. If + * the semaphore doesn't have a positive value, the function immediately + * returns SDL_MUTEX_TIMEDOUT. + * + * \param sem the semaphore to wait on + * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait would + * block, or a negative error code on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateSemaphore + * \sa SDL_DestroySemaphore + * \sa SDL_SemPost + * \sa SDL_SemValue + * \sa SDL_SemWait + * \sa SDL_SemWaitTimeout + */ +extern DECLSPEC int SDLCALL SDL_SemTryWait(SDL_sem * sem); + +/** + * Wait until a semaphore has a positive value and then decrements it. + * + * This function suspends the calling thread until either the semaphore + * pointed to by `sem` has a positive value, the call is interrupted by a + * signal or error, or the specified time has elapsed. If the call is + * successful it will atomically decrement the semaphore value. + * + * \param sem the semaphore to wait on + * \param timeout the length of the timeout, in milliseconds + * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait does not + * succeed in the allotted time, or a negative error code on failure; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateSemaphore + * \sa SDL_DestroySemaphore + * \sa SDL_SemPost + * \sa SDL_SemTryWait + * \sa SDL_SemValue + * \sa SDL_SemWait + */ +extern DECLSPEC int SDLCALL SDL_SemWaitTimeout(SDL_sem *sem, Uint32 timeout); + +/** + * Atomically increment a semaphore's value and wake waiting threads. + * + * \param sem the semaphore to increment + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateSemaphore + * \sa SDL_DestroySemaphore + * \sa SDL_SemTryWait + * \sa SDL_SemValue + * \sa SDL_SemWait + * \sa SDL_SemWaitTimeout + */ +extern DECLSPEC int SDLCALL SDL_SemPost(SDL_sem * sem); + +/** + * Get the current value of a semaphore. + * + * \param sem the semaphore to query + * \returns the current value of the semaphore. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateSemaphore + */ +extern DECLSPEC Uint32 SDLCALL SDL_SemValue(SDL_sem * sem); + +/* @} *//* Semaphore functions */ + + +/** + * \name Condition variable functions + */ +/* @{ */ + +/* The SDL condition variable structure, defined in SDL_syscond.c */ +struct SDL_cond; +typedef struct SDL_cond SDL_cond; + +/** + * Create a condition variable. + * + * \returns a new condition variable or NULL on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CondBroadcast + * \sa SDL_CondSignal + * \sa SDL_CondWait + * \sa SDL_CondWaitTimeout + * \sa SDL_DestroyCond + */ +extern DECLSPEC SDL_cond *SDLCALL SDL_CreateCond(void); + +/** + * Destroy a condition variable. + * + * \param cond the condition variable to destroy + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CondBroadcast + * \sa SDL_CondSignal + * \sa SDL_CondWait + * \sa SDL_CondWaitTimeout + * \sa SDL_CreateCond + */ +extern DECLSPEC void SDLCALL SDL_DestroyCond(SDL_cond * cond); + +/** + * Restart one of the threads that are waiting on the condition variable. + * + * \param cond the condition variable to signal + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CondBroadcast + * \sa SDL_CondWait + * \sa SDL_CondWaitTimeout + * \sa SDL_CreateCond + * \sa SDL_DestroyCond + */ +extern DECLSPEC int SDLCALL SDL_CondSignal(SDL_cond * cond); + +/** + * Restart all threads that are waiting on the condition variable. + * + * \param cond the condition variable to signal + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CondSignal + * \sa SDL_CondWait + * \sa SDL_CondWaitTimeout + * \sa SDL_CreateCond + * \sa SDL_DestroyCond + */ +extern DECLSPEC int SDLCALL SDL_CondBroadcast(SDL_cond * cond); + +/** + * Wait until a condition variable is signaled. + * + * This function unlocks the specified `mutex` and waits for another thread to + * call SDL_CondSignal() or SDL_CondBroadcast() on the condition variable + * `cond`. Once the condition variable is signaled, the mutex is re-locked and + * the function returns. + * + * The mutex must be locked before calling this function. + * + * This function is the equivalent of calling SDL_CondWaitTimeout() with a + * time length of `SDL_MUTEX_MAXWAIT`. + * + * \param cond the condition variable to wait on + * \param mutex the mutex used to coordinate thread access + * \returns 0 when it is signaled or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CondBroadcast + * \sa SDL_CondSignal + * \sa SDL_CondWaitTimeout + * \sa SDL_CreateCond + * \sa SDL_DestroyCond + */ +extern DECLSPEC int SDLCALL SDL_CondWait(SDL_cond * cond, SDL_mutex * mutex); + +/** + * Wait until a condition variable is signaled or a certain time has passed. + * + * This function unlocks the specified `mutex` and waits for another thread to + * call SDL_CondSignal() or SDL_CondBroadcast() on the condition variable + * `cond`, or for the specified time to elapse. Once the condition variable is + * signaled or the time elapsed, the mutex is re-locked and the function + * returns. + * + * The mutex must be locked before calling this function. + * + * \param cond the condition variable to wait on + * \param mutex the mutex used to coordinate thread access + * \param ms the maximum time to wait, in milliseconds, or `SDL_MUTEX_MAXWAIT` + * to wait indefinitely + * \returns 0 if the condition variable is signaled, `SDL_MUTEX_TIMEDOUT` if + * the condition is not signaled in the allotted time, or a negative + * error code on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CondBroadcast + * \sa SDL_CondSignal + * \sa SDL_CondWait + * \sa SDL_CreateCond + * \sa SDL_DestroyCond + */ +extern DECLSPEC int SDLCALL SDL_CondWaitTimeout(SDL_cond * cond, + SDL_mutex * mutex, Uint32 ms); + +/* @} *//* Condition variable functions */ + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_mutex_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b94f10295f5af6fb8c5abf6d46cbc3c87a3f49e8 GIT binary patch literal 29764 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_opengl.h + * + * This is a simple file to encapsulate the OpenGL API headers. + */ + +/** + * \def NO_SDL_GLEXT + * + * Define this if you have your own version of glext.h and want to disable the + * version included in SDL_opengl.h. + */ + +#ifndef SDL_opengl_h_ +#define SDL_opengl_h_ + +#include "SDL_config.h" + +#ifndef __IPHONEOS__ /* No OpenGL on iOS. */ + +/* + * Mesa 3-D graphics library + * + * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. + * Copyright (C) 2009 VMware, Inc. All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef __gl_h_ +#define __gl_h_ + +#if defined(USE_MGL_NAMESPACE) +#include "gl_mangle.h" +#endif + + +/********************************************************************** + * Begin system-specific stuff. + */ + +#if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__) +#define __WIN32__ +#endif + +#if defined(__WIN32__) && !defined(__CYGWIN__) +# if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */ +# define GLAPI __declspec(dllexport) +# elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're building for DLL runtime support */ +# define GLAPI __declspec(dllimport) +# else /* for use with static link lib build of Win32 edition only */ +# define GLAPI extern +# endif /* _STATIC_MESA support */ +# if defined(__MINGW32__) && defined(GL_NO_STDCALL) || defined(UNDER_CE) /* The generated DLLs by MingW with STDCALL are not compatible with the ones done by Microsoft's compilers */ +# define GLAPIENTRY +# else +# define GLAPIENTRY __stdcall +# endif +#elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native windows opengl32 */ +# define GLAPI extern +# define GLAPIENTRY __stdcall +#elif defined(__OS2__) || defined(__EMX__) /* native os/2 opengl */ +# define GLAPI extern +# define GLAPIENTRY _System +# define APIENTRY _System +# if defined(__GNUC__) && !defined(_System) +# define _System +# endif +#elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) +# define GLAPI __attribute__((visibility("default"))) +# define GLAPIENTRY +#endif /* WIN32 && !CYGWIN */ + +/* + * WINDOWS: Include windows.h here to define APIENTRY. + * It is also useful when applications include this file by + * including only glut.h, since glut.h depends on windows.h. + * Applications needing to include windows.h with parms other + * than "WIN32_LEAN_AND_MEAN" may include windows.h before + * glut.h or gl.h. + */ +#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) +#ifndef WIN32_LEAN_AND_MEAN +#define WIN32_LEAN_AND_MEAN 1 +#endif +#ifndef NOMINMAX /* don't define min() and max(). */ +#define NOMINMAX +#endif +#include +#endif + +#ifndef GLAPI +#define GLAPI extern +#endif + +#ifndef GLAPIENTRY +#define GLAPIENTRY +#endif + +#ifndef APIENTRY +#define APIENTRY GLAPIENTRY +#endif + +/* "P" suffix to be used for a pointer to a function */ +#ifndef APIENTRYP +#define APIENTRYP APIENTRY * +#endif + +#ifndef GLAPIENTRYP +#define GLAPIENTRYP GLAPIENTRY * +#endif + +#if defined(PRAGMA_EXPORT_SUPPORTED) +#pragma export on +#endif + +/* + * End system-specific stuff. + **********************************************************************/ + + + +#ifdef __cplusplus +extern "C" { +#endif + + + +#define GL_VERSION_1_1 1 +#define GL_VERSION_1_2 1 +#define GL_VERSION_1_3 1 +#define GL_ARB_imaging 1 + + +/* + * Datatypes + */ +typedef unsigned int GLenum; +typedef unsigned char GLboolean; +typedef unsigned int GLbitfield; +typedef void GLvoid; +typedef signed char GLbyte; /* 1-byte signed */ +typedef short GLshort; /* 2-byte signed */ +typedef int GLint; /* 4-byte signed */ +typedef unsigned char GLubyte; /* 1-byte unsigned */ +typedef unsigned short GLushort; /* 2-byte unsigned */ +typedef unsigned int GLuint; /* 4-byte unsigned */ +typedef int GLsizei; /* 4-byte signed */ +typedef float GLfloat; /* single precision float */ +typedef float GLclampf; /* single precision float in [0,1] */ +typedef double GLdouble; /* double precision float */ +typedef double GLclampd; /* double precision float in [0,1] */ + + + +/* + * Constants + */ + +/* Boolean values */ +#define GL_FALSE 0 +#define GL_TRUE 1 + +/* Data types */ +#define GL_BYTE 0x1400 +#define GL_UNSIGNED_BYTE 0x1401 +#define GL_SHORT 0x1402 +#define GL_UNSIGNED_SHORT 0x1403 +#define GL_INT 0x1404 +#define GL_UNSIGNED_INT 0x1405 +#define GL_FLOAT 0x1406 +#define GL_2_BYTES 0x1407 +#define GL_3_BYTES 0x1408 +#define GL_4_BYTES 0x1409 +#define GL_DOUBLE 0x140A + +/* Primitives */ +#define GL_POINTS 0x0000 +#define GL_LINES 0x0001 +#define GL_LINE_LOOP 0x0002 +#define GL_LINE_STRIP 0x0003 +#define GL_TRIANGLES 0x0004 +#define GL_TRIANGLE_STRIP 0x0005 +#define GL_TRIANGLE_FAN 0x0006 +#define GL_QUADS 0x0007 +#define GL_QUAD_STRIP 0x0008 +#define GL_POLYGON 0x0009 + +/* Vertex Arrays */ +#define GL_VERTEX_ARRAY 0x8074 +#define GL_NORMAL_ARRAY 0x8075 +#define GL_COLOR_ARRAY 0x8076 +#define GL_INDEX_ARRAY 0x8077 +#define GL_TEXTURE_COORD_ARRAY 0x8078 +#define GL_EDGE_FLAG_ARRAY 0x8079 +#define GL_VERTEX_ARRAY_SIZE 0x807A +#define GL_VERTEX_ARRAY_TYPE 0x807B +#define GL_VERTEX_ARRAY_STRIDE 0x807C +#define GL_NORMAL_ARRAY_TYPE 0x807E +#define GL_NORMAL_ARRAY_STRIDE 0x807F +#define GL_COLOR_ARRAY_SIZE 0x8081 +#define GL_COLOR_ARRAY_TYPE 0x8082 +#define GL_COLOR_ARRAY_STRIDE 0x8083 +#define GL_INDEX_ARRAY_TYPE 0x8085 +#define GL_INDEX_ARRAY_STRIDE 0x8086 +#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 +#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 +#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A +#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C +#define GL_VERTEX_ARRAY_POINTER 0x808E +#define GL_NORMAL_ARRAY_POINTER 0x808F +#define GL_COLOR_ARRAY_POINTER 0x8090 +#define GL_INDEX_ARRAY_POINTER 0x8091 +#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 +#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 +#define GL_V2F 0x2A20 +#define GL_V3F 0x2A21 +#define GL_C4UB_V2F 0x2A22 +#define GL_C4UB_V3F 0x2A23 +#define GL_C3F_V3F 0x2A24 +#define GL_N3F_V3F 0x2A25 +#define GL_C4F_N3F_V3F 0x2A26 +#define GL_T2F_V3F 0x2A27 +#define GL_T4F_V4F 0x2A28 +#define GL_T2F_C4UB_V3F 0x2A29 +#define GL_T2F_C3F_V3F 0x2A2A +#define GL_T2F_N3F_V3F 0x2A2B +#define GL_T2F_C4F_N3F_V3F 0x2A2C +#define GL_T4F_C4F_N3F_V4F 0x2A2D + +/* Matrix Mode */ +#define GL_MATRIX_MODE 0x0BA0 +#define GL_MODELVIEW 0x1700 +#define GL_PROJECTION 0x1701 +#define GL_TEXTURE 0x1702 + +/* Points */ +#define GL_POINT_SMOOTH 0x0B10 +#define GL_POINT_SIZE 0x0B11 +#define GL_POINT_SIZE_GRANULARITY 0x0B13 +#define GL_POINT_SIZE_RANGE 0x0B12 + +/* Lines */ +#define GL_LINE_SMOOTH 0x0B20 +#define GL_LINE_STIPPLE 0x0B24 +#define GL_LINE_STIPPLE_PATTERN 0x0B25 +#define GL_LINE_STIPPLE_REPEAT 0x0B26 +#define GL_LINE_WIDTH 0x0B21 +#define GL_LINE_WIDTH_GRANULARITY 0x0B23 +#define GL_LINE_WIDTH_RANGE 0x0B22 + +/* Polygons */ +#define GL_POINT 0x1B00 +#define GL_LINE 0x1B01 +#define GL_FILL 0x1B02 +#define GL_CW 0x0900 +#define GL_CCW 0x0901 +#define GL_FRONT 0x0404 +#define GL_BACK 0x0405 +#define GL_POLYGON_MODE 0x0B40 +#define GL_POLYGON_SMOOTH 0x0B41 +#define GL_POLYGON_STIPPLE 0x0B42 +#define GL_EDGE_FLAG 0x0B43 +#define GL_CULL_FACE 0x0B44 +#define GL_CULL_FACE_MODE 0x0B45 +#define GL_FRONT_FACE 0x0B46 +#define GL_POLYGON_OFFSET_FACTOR 0x8038 +#define GL_POLYGON_OFFSET_UNITS 0x2A00 +#define GL_POLYGON_OFFSET_POINT 0x2A01 +#define GL_POLYGON_OFFSET_LINE 0x2A02 +#define GL_POLYGON_OFFSET_FILL 0x8037 + +/* Display Lists */ +#define GL_COMPILE 0x1300 +#define GL_COMPILE_AND_EXECUTE 0x1301 +#define GL_LIST_BASE 0x0B32 +#define GL_LIST_INDEX 0x0B33 +#define GL_LIST_MODE 0x0B30 + +/* Depth buffer */ +#define GL_NEVER 0x0200 +#define GL_LESS 0x0201 +#define GL_EQUAL 0x0202 +#define GL_LEQUAL 0x0203 +#define GL_GREATER 0x0204 +#define GL_NOTEQUAL 0x0205 +#define GL_GEQUAL 0x0206 +#define GL_ALWAYS 0x0207 +#define GL_DEPTH_TEST 0x0B71 +#define GL_DEPTH_BITS 0x0D56 +#define GL_DEPTH_CLEAR_VALUE 0x0B73 +#define GL_DEPTH_FUNC 0x0B74 +#define GL_DEPTH_RANGE 0x0B70 +#define GL_DEPTH_WRITEMASK 0x0B72 +#define GL_DEPTH_COMPONENT 0x1902 + +/* Lighting */ +#define GL_LIGHTING 0x0B50 +#define GL_LIGHT0 0x4000 +#define GL_LIGHT1 0x4001 +#define GL_LIGHT2 0x4002 +#define GL_LIGHT3 0x4003 +#define GL_LIGHT4 0x4004 +#define GL_LIGHT5 0x4005 +#define GL_LIGHT6 0x4006 +#define GL_LIGHT7 0x4007 +#define GL_SPOT_EXPONENT 0x1205 +#define GL_SPOT_CUTOFF 0x1206 +#define GL_CONSTANT_ATTENUATION 0x1207 +#define GL_LINEAR_ATTENUATION 0x1208 +#define GL_QUADRATIC_ATTENUATION 0x1209 +#define GL_AMBIENT 0x1200 +#define GL_DIFFUSE 0x1201 +#define GL_SPECULAR 0x1202 +#define GL_SHININESS 0x1601 +#define GL_EMISSION 0x1600 +#define GL_POSITION 0x1203 +#define GL_SPOT_DIRECTION 0x1204 +#define GL_AMBIENT_AND_DIFFUSE 0x1602 +#define GL_COLOR_INDEXES 0x1603 +#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 +#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 +#define GL_LIGHT_MODEL_AMBIENT 0x0B53 +#define GL_FRONT_AND_BACK 0x0408 +#define GL_SHADE_MODEL 0x0B54 +#define GL_FLAT 0x1D00 +#define GL_SMOOTH 0x1D01 +#define GL_COLOR_MATERIAL 0x0B57 +#define GL_COLOR_MATERIAL_FACE 0x0B55 +#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 +#define GL_NORMALIZE 0x0BA1 + +/* User clipping planes */ +#define GL_CLIP_PLANE0 0x3000 +#define GL_CLIP_PLANE1 0x3001 +#define GL_CLIP_PLANE2 0x3002 +#define GL_CLIP_PLANE3 0x3003 +#define GL_CLIP_PLANE4 0x3004 +#define GL_CLIP_PLANE5 0x3005 + +/* Accumulation buffer */ +#define GL_ACCUM_RED_BITS 0x0D58 +#define GL_ACCUM_GREEN_BITS 0x0D59 +#define GL_ACCUM_BLUE_BITS 0x0D5A +#define GL_ACCUM_ALPHA_BITS 0x0D5B +#define GL_ACCUM_CLEAR_VALUE 0x0B80 +#define GL_ACCUM 0x0100 +#define GL_ADD 0x0104 +#define GL_LOAD 0x0101 +#define GL_MULT 0x0103 +#define GL_RETURN 0x0102 + +/* Alpha testing */ +#define GL_ALPHA_TEST 0x0BC0 +#define GL_ALPHA_TEST_REF 0x0BC2 +#define GL_ALPHA_TEST_FUNC 0x0BC1 + +/* Blending */ +#define GL_BLEND 0x0BE2 +#define GL_BLEND_SRC 0x0BE1 +#define GL_BLEND_DST 0x0BE0 +#define GL_ZERO 0 +#define GL_ONE 1 +#define GL_SRC_COLOR 0x0300 +#define GL_ONE_MINUS_SRC_COLOR 0x0301 +#define GL_SRC_ALPHA 0x0302 +#define GL_ONE_MINUS_SRC_ALPHA 0x0303 +#define GL_DST_ALPHA 0x0304 +#define GL_ONE_MINUS_DST_ALPHA 0x0305 +#define GL_DST_COLOR 0x0306 +#define GL_ONE_MINUS_DST_COLOR 0x0307 +#define GL_SRC_ALPHA_SATURATE 0x0308 + +/* Render Mode */ +#define GL_FEEDBACK 0x1C01 +#define GL_RENDER 0x1C00 +#define GL_SELECT 0x1C02 + +/* Feedback */ +#define GL_2D 0x0600 +#define GL_3D 0x0601 +#define GL_3D_COLOR 0x0602 +#define GL_3D_COLOR_TEXTURE 0x0603 +#define GL_4D_COLOR_TEXTURE 0x0604 +#define GL_POINT_TOKEN 0x0701 +#define GL_LINE_TOKEN 0x0702 +#define GL_LINE_RESET_TOKEN 0x0707 +#define GL_POLYGON_TOKEN 0x0703 +#define GL_BITMAP_TOKEN 0x0704 +#define GL_DRAW_PIXEL_TOKEN 0x0705 +#define GL_COPY_PIXEL_TOKEN 0x0706 +#define GL_PASS_THROUGH_TOKEN 0x0700 +#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 +#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 +#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 + +/* Selection */ +#define GL_SELECTION_BUFFER_POINTER 0x0DF3 +#define GL_SELECTION_BUFFER_SIZE 0x0DF4 + +/* Fog */ +#define GL_FOG 0x0B60 +#define GL_FOG_MODE 0x0B65 +#define GL_FOG_DENSITY 0x0B62 +#define GL_FOG_COLOR 0x0B66 +#define GL_FOG_INDEX 0x0B61 +#define GL_FOG_START 0x0B63 +#define GL_FOG_END 0x0B64 +#define GL_LINEAR 0x2601 +#define GL_EXP 0x0800 +#define GL_EXP2 0x0801 + +/* Logic Ops */ +#define GL_LOGIC_OP 0x0BF1 +#define GL_INDEX_LOGIC_OP 0x0BF1 +#define GL_COLOR_LOGIC_OP 0x0BF2 +#define GL_LOGIC_OP_MODE 0x0BF0 +#define GL_CLEAR 0x1500 +#define GL_SET 0x150F +#define GL_COPY 0x1503 +#define GL_COPY_INVERTED 0x150C +#define GL_NOOP 0x1505 +#define GL_INVERT 0x150A +#define GL_AND 0x1501 +#define GL_NAND 0x150E +#define GL_OR 0x1507 +#define GL_NOR 0x1508 +#define GL_XOR 0x1506 +#define GL_EQUIV 0x1509 +#define GL_AND_REVERSE 0x1502 +#define GL_AND_INVERTED 0x1504 +#define GL_OR_REVERSE 0x150B +#define GL_OR_INVERTED 0x150D + +/* Stencil */ +#define GL_STENCIL_BITS 0x0D57 +#define GL_STENCIL_TEST 0x0B90 +#define GL_STENCIL_CLEAR_VALUE 0x0B91 +#define GL_STENCIL_FUNC 0x0B92 +#define GL_STENCIL_VALUE_MASK 0x0B93 +#define GL_STENCIL_FAIL 0x0B94 +#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 +#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 +#define GL_STENCIL_REF 0x0B97 +#define GL_STENCIL_WRITEMASK 0x0B98 +#define GL_STENCIL_INDEX 0x1901 +#define GL_KEEP 0x1E00 +#define GL_REPLACE 0x1E01 +#define GL_INCR 0x1E02 +#define GL_DECR 0x1E03 + +/* Buffers, Pixel Drawing/Reading */ +#define GL_NONE 0 +#define GL_LEFT 0x0406 +#define GL_RIGHT 0x0407 +/*GL_FRONT 0x0404 */ +/*GL_BACK 0x0405 */ +/*GL_FRONT_AND_BACK 0x0408 */ +#define GL_FRONT_LEFT 0x0400 +#define GL_FRONT_RIGHT 0x0401 +#define GL_BACK_LEFT 0x0402 +#define GL_BACK_RIGHT 0x0403 +#define GL_AUX0 0x0409 +#define GL_AUX1 0x040A +#define GL_AUX2 0x040B +#define GL_AUX3 0x040C +#define GL_COLOR_INDEX 0x1900 +#define GL_RED 0x1903 +#define GL_GREEN 0x1904 +#define GL_BLUE 0x1905 +#define GL_ALPHA 0x1906 +#define GL_LUMINANCE 0x1909 +#define GL_LUMINANCE_ALPHA 0x190A +#define GL_ALPHA_BITS 0x0D55 +#define GL_RED_BITS 0x0D52 +#define GL_GREEN_BITS 0x0D53 +#define GL_BLUE_BITS 0x0D54 +#define GL_INDEX_BITS 0x0D51 +#define GL_SUBPIXEL_BITS 0x0D50 +#define GL_AUX_BUFFERS 0x0C00 +#define GL_READ_BUFFER 0x0C02 +#define GL_DRAW_BUFFER 0x0C01 +#define GL_DOUBLEBUFFER 0x0C32 +#define GL_STEREO 0x0C33 +#define GL_BITMAP 0x1A00 +#define GL_COLOR 0x1800 +#define GL_DEPTH 0x1801 +#define GL_STENCIL 0x1802 +#define GL_DITHER 0x0BD0 +#define GL_RGB 0x1907 +#define GL_RGBA 0x1908 + +/* Implementation limits */ +#define GL_MAX_LIST_NESTING 0x0B31 +#define GL_MAX_EVAL_ORDER 0x0D30 +#define GL_MAX_LIGHTS 0x0D31 +#define GL_MAX_CLIP_PLANES 0x0D32 +#define GL_MAX_TEXTURE_SIZE 0x0D33 +#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 +#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 +#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 +#define GL_MAX_NAME_STACK_DEPTH 0x0D37 +#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 +#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 +#define GL_MAX_VIEWPORT_DIMS 0x0D3A +#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B + +/* Gets */ +#define GL_ATTRIB_STACK_DEPTH 0x0BB0 +#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 +#define GL_COLOR_CLEAR_VALUE 0x0C22 +#define GL_COLOR_WRITEMASK 0x0C23 +#define GL_CURRENT_INDEX 0x0B01 +#define GL_CURRENT_COLOR 0x0B00 +#define GL_CURRENT_NORMAL 0x0B02 +#define GL_CURRENT_RASTER_COLOR 0x0B04 +#define GL_CURRENT_RASTER_DISTANCE 0x0B09 +#define GL_CURRENT_RASTER_INDEX 0x0B05 +#define GL_CURRENT_RASTER_POSITION 0x0B07 +#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 +#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 +#define GL_CURRENT_TEXTURE_COORDS 0x0B03 +#define GL_INDEX_CLEAR_VALUE 0x0C20 +#define GL_INDEX_MODE 0x0C30 +#define GL_INDEX_WRITEMASK 0x0C21 +#define GL_MODELVIEW_MATRIX 0x0BA6 +#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 +#define GL_NAME_STACK_DEPTH 0x0D70 +#define GL_PROJECTION_MATRIX 0x0BA7 +#define GL_PROJECTION_STACK_DEPTH 0x0BA4 +#define GL_RENDER_MODE 0x0C40 +#define GL_RGBA_MODE 0x0C31 +#define GL_TEXTURE_MATRIX 0x0BA8 +#define GL_TEXTURE_STACK_DEPTH 0x0BA5 +#define GL_VIEWPORT 0x0BA2 + +/* Evaluators */ +#define GL_AUTO_NORMAL 0x0D80 +#define GL_MAP1_COLOR_4 0x0D90 +#define GL_MAP1_INDEX 0x0D91 +#define GL_MAP1_NORMAL 0x0D92 +#define GL_MAP1_TEXTURE_COORD_1 0x0D93 +#define GL_MAP1_TEXTURE_COORD_2 0x0D94 +#define GL_MAP1_TEXTURE_COORD_3 0x0D95 +#define GL_MAP1_TEXTURE_COORD_4 0x0D96 +#define GL_MAP1_VERTEX_3 0x0D97 +#define GL_MAP1_VERTEX_4 0x0D98 +#define GL_MAP2_COLOR_4 0x0DB0 +#define GL_MAP2_INDEX 0x0DB1 +#define GL_MAP2_NORMAL 0x0DB2 +#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 +#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 +#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 +#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 +#define GL_MAP2_VERTEX_3 0x0DB7 +#define GL_MAP2_VERTEX_4 0x0DB8 +#define GL_MAP1_GRID_DOMAIN 0x0DD0 +#define GL_MAP1_GRID_SEGMENTS 0x0DD1 +#define GL_MAP2_GRID_DOMAIN 0x0DD2 +#define GL_MAP2_GRID_SEGMENTS 0x0DD3 +#define GL_COEFF 0x0A00 +#define GL_ORDER 0x0A01 +#define GL_DOMAIN 0x0A02 + +/* Hints */ +#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 +#define GL_POINT_SMOOTH_HINT 0x0C51 +#define GL_LINE_SMOOTH_HINT 0x0C52 +#define GL_POLYGON_SMOOTH_HINT 0x0C53 +#define GL_FOG_HINT 0x0C54 +#define GL_DONT_CARE 0x1100 +#define GL_FASTEST 0x1101 +#define GL_NICEST 0x1102 + +/* Scissor box */ +#define GL_SCISSOR_BOX 0x0C10 +#define GL_SCISSOR_TEST 0x0C11 + +/* Pixel Mode / Transfer */ +#define GL_MAP_COLOR 0x0D10 +#define GL_MAP_STENCIL 0x0D11 +#define GL_INDEX_SHIFT 0x0D12 +#define GL_INDEX_OFFSET 0x0D13 +#define GL_RED_SCALE 0x0D14 +#define GL_RED_BIAS 0x0D15 +#define GL_GREEN_SCALE 0x0D18 +#define GL_GREEN_BIAS 0x0D19 +#define GL_BLUE_SCALE 0x0D1A +#define GL_BLUE_BIAS 0x0D1B +#define GL_ALPHA_SCALE 0x0D1C +#define GL_ALPHA_BIAS 0x0D1D +#define GL_DEPTH_SCALE 0x0D1E +#define GL_DEPTH_BIAS 0x0D1F +#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 +#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 +#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 +#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 +#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 +#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 +#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 +#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 +#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 +#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 +#define GL_PIXEL_MAP_S_TO_S 0x0C71 +#define GL_PIXEL_MAP_I_TO_I 0x0C70 +#define GL_PIXEL_MAP_I_TO_R 0x0C72 +#define GL_PIXEL_MAP_I_TO_G 0x0C73 +#define GL_PIXEL_MAP_I_TO_B 0x0C74 +#define GL_PIXEL_MAP_I_TO_A 0x0C75 +#define GL_PIXEL_MAP_R_TO_R 0x0C76 +#define GL_PIXEL_MAP_G_TO_G 0x0C77 +#define GL_PIXEL_MAP_B_TO_B 0x0C78 +#define GL_PIXEL_MAP_A_TO_A 0x0C79 +#define GL_PACK_ALIGNMENT 0x0D05 +#define GL_PACK_LSB_FIRST 0x0D01 +#define GL_PACK_ROW_LENGTH 0x0D02 +#define GL_PACK_SKIP_PIXELS 0x0D04 +#define GL_PACK_SKIP_ROWS 0x0D03 +#define GL_PACK_SWAP_BYTES 0x0D00 +#define GL_UNPACK_ALIGNMENT 0x0CF5 +#define GL_UNPACK_LSB_FIRST 0x0CF1 +#define GL_UNPACK_ROW_LENGTH 0x0CF2 +#define GL_UNPACK_SKIP_PIXELS 0x0CF4 +#define GL_UNPACK_SKIP_ROWS 0x0CF3 +#define GL_UNPACK_SWAP_BYTES 0x0CF0 +#define GL_ZOOM_X 0x0D16 +#define GL_ZOOM_Y 0x0D17 + +/* Texture mapping */ +#define GL_TEXTURE_ENV 0x2300 +#define GL_TEXTURE_ENV_MODE 0x2200 +#define GL_TEXTURE_1D 0x0DE0 +#define GL_TEXTURE_2D 0x0DE1 +#define GL_TEXTURE_WRAP_S 0x2802 +#define GL_TEXTURE_WRAP_T 0x2803 +#define GL_TEXTURE_MAG_FILTER 0x2800 +#define GL_TEXTURE_MIN_FILTER 0x2801 +#define GL_TEXTURE_ENV_COLOR 0x2201 +#define GL_TEXTURE_GEN_S 0x0C60 +#define GL_TEXTURE_GEN_T 0x0C61 +#define GL_TEXTURE_GEN_R 0x0C62 +#define GL_TEXTURE_GEN_Q 0x0C63 +#define GL_TEXTURE_GEN_MODE 0x2500 +#define GL_TEXTURE_BORDER_COLOR 0x1004 +#define GL_TEXTURE_WIDTH 0x1000 +#define GL_TEXTURE_HEIGHT 0x1001 +#define GL_TEXTURE_BORDER 0x1005 +#define GL_TEXTURE_COMPONENTS 0x1003 +#define GL_TEXTURE_RED_SIZE 0x805C +#define GL_TEXTURE_GREEN_SIZE 0x805D +#define GL_TEXTURE_BLUE_SIZE 0x805E +#define GL_TEXTURE_ALPHA_SIZE 0x805F +#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 +#define GL_TEXTURE_INTENSITY_SIZE 0x8061 +#define GL_NEAREST_MIPMAP_NEAREST 0x2700 +#define GL_NEAREST_MIPMAP_LINEAR 0x2702 +#define GL_LINEAR_MIPMAP_NEAREST 0x2701 +#define GL_LINEAR_MIPMAP_LINEAR 0x2703 +#define GL_OBJECT_LINEAR 0x2401 +#define GL_OBJECT_PLANE 0x2501 +#define GL_EYE_LINEAR 0x2400 +#define GL_EYE_PLANE 0x2502 +#define GL_SPHERE_MAP 0x2402 +#define GL_DECAL 0x2101 +#define GL_MODULATE 0x2100 +#define GL_NEAREST 0x2600 +#define GL_REPEAT 0x2901 +#define GL_CLAMP 0x2900 +#define GL_S 0x2000 +#define GL_T 0x2001 +#define GL_R 0x2002 +#define GL_Q 0x2003 + +/* Utility */ +#define GL_VENDOR 0x1F00 +#define GL_RENDERER 0x1F01 +#define GL_VERSION 0x1F02 +#define GL_EXTENSIONS 0x1F03 + +/* Errors */ +#define GL_NO_ERROR 0 +#define GL_INVALID_ENUM 0x0500 +#define GL_INVALID_VALUE 0x0501 +#define GL_INVALID_OPERATION 0x0502 +#define GL_STACK_OVERFLOW 0x0503 +#define GL_STACK_UNDERFLOW 0x0504 +#define GL_OUT_OF_MEMORY 0x0505 + +/* glPush/PopAttrib bits */ +#define GL_CURRENT_BIT 0x00000001 +#define GL_POINT_BIT 0x00000002 +#define GL_LINE_BIT 0x00000004 +#define GL_POLYGON_BIT 0x00000008 +#define GL_POLYGON_STIPPLE_BIT 0x00000010 +#define GL_PIXEL_MODE_BIT 0x00000020 +#define GL_LIGHTING_BIT 0x00000040 +#define GL_FOG_BIT 0x00000080 +#define GL_DEPTH_BUFFER_BIT 0x00000100 +#define GL_ACCUM_BUFFER_BIT 0x00000200 +#define GL_STENCIL_BUFFER_BIT 0x00000400 +#define GL_VIEWPORT_BIT 0x00000800 +#define GL_TRANSFORM_BIT 0x00001000 +#define GL_ENABLE_BIT 0x00002000 +#define GL_COLOR_BUFFER_BIT 0x00004000 +#define GL_HINT_BIT 0x00008000 +#define GL_EVAL_BIT 0x00010000 +#define GL_LIST_BIT 0x00020000 +#define GL_TEXTURE_BIT 0x00040000 +#define GL_SCISSOR_BIT 0x00080000 +#define GL_ALL_ATTRIB_BITS 0x000FFFFF + + +/* OpenGL 1.1 */ +#define GL_PROXY_TEXTURE_1D 0x8063 +#define GL_PROXY_TEXTURE_2D 0x8064 +#define GL_TEXTURE_PRIORITY 0x8066 +#define GL_TEXTURE_RESIDENT 0x8067 +#define GL_TEXTURE_BINDING_1D 0x8068 +#define GL_TEXTURE_BINDING_2D 0x8069 +#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 +#define GL_ALPHA4 0x803B +#define GL_ALPHA8 0x803C +#define GL_ALPHA12 0x803D +#define GL_ALPHA16 0x803E +#define GL_LUMINANCE4 0x803F +#define GL_LUMINANCE8 0x8040 +#define GL_LUMINANCE12 0x8041 +#define GL_LUMINANCE16 0x8042 +#define GL_LUMINANCE4_ALPHA4 0x8043 +#define GL_LUMINANCE6_ALPHA2 0x8044 +#define GL_LUMINANCE8_ALPHA8 0x8045 +#define GL_LUMINANCE12_ALPHA4 0x8046 +#define GL_LUMINANCE12_ALPHA12 0x8047 +#define GL_LUMINANCE16_ALPHA16 0x8048 +#define GL_INTENSITY 0x8049 +#define GL_INTENSITY4 0x804A +#define GL_INTENSITY8 0x804B +#define GL_INTENSITY12 0x804C +#define GL_INTENSITY16 0x804D +#define GL_R3_G3_B2 0x2A10 +#define GL_RGB4 0x804F +#define GL_RGB5 0x8050 +#define GL_RGB8 0x8051 +#define GL_RGB10 0x8052 +#define GL_RGB12 0x8053 +#define GL_RGB16 0x8054 +#define GL_RGBA2 0x8055 +#define GL_RGBA4 0x8056 +#define GL_RGB5_A1 0x8057 +#define GL_RGBA8 0x8058 +#define GL_RGB10_A2 0x8059 +#define GL_RGBA12 0x805A +#define GL_RGBA16 0x805B +#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 +#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 +#define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF +#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF + + + +/* + * Miscellaneous + */ + +GLAPI void GLAPIENTRY glClearIndex( GLfloat c ); + +GLAPI void GLAPIENTRY glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); + +GLAPI void GLAPIENTRY glClear( GLbitfield mask ); + +GLAPI void GLAPIENTRY glIndexMask( GLuint mask ); + +GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ); + +GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref ); + +GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor ); + +GLAPI void GLAPIENTRY glLogicOp( GLenum opcode ); + +GLAPI void GLAPIENTRY glCullFace( GLenum mode ); + +GLAPI void GLAPIENTRY glFrontFace( GLenum mode ); + +GLAPI void GLAPIENTRY glPointSize( GLfloat size ); + +GLAPI void GLAPIENTRY glLineWidth( GLfloat width ); + +GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern ); + +GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode ); + +GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units ); + +GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask ); + +GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask ); + +GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag ); + +GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag ); + +GLAPI void GLAPIENTRY glScissor( GLint x, GLint y, GLsizei width, GLsizei height); + +GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble *equation ); + +GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble *equation ); + +GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode ); + +GLAPI void GLAPIENTRY glReadBuffer( GLenum mode ); + +GLAPI void GLAPIENTRY glEnable( GLenum cap ); + +GLAPI void GLAPIENTRY glDisable( GLenum cap ); + +GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap ); + + +GLAPI void GLAPIENTRY glEnableClientState( GLenum cap ); /* 1.1 */ + +GLAPI void GLAPIENTRY glDisableClientState( GLenum cap ); /* 1.1 */ + + +GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params ); + +GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params ); + +GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params ); + +GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params ); + + +GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask ); + +GLAPI void GLAPIENTRY glPopAttrib( void ); + + +GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */ + +GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */ + + +GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode ); + +GLAPI GLenum GLAPIENTRY glGetError( void ); + +GLAPI const GLubyte * GLAPIENTRY glGetString( GLenum name ); + +GLAPI void GLAPIENTRY glFinish( void ); + +GLAPI void GLAPIENTRY glFlush( void ); + +GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode ); + + +/* + * Depth Buffer + */ + +GLAPI void GLAPIENTRY glClearDepth( GLclampd depth ); + +GLAPI void GLAPIENTRY glDepthFunc( GLenum func ); + +GLAPI void GLAPIENTRY glDepthMask( GLboolean flag ); + +GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val ); + + +/* + * Accumulation Buffer + */ + +GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); + +GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value ); + + +/* + * Transformation + */ + +GLAPI void GLAPIENTRY glMatrixMode( GLenum mode ); + +GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right, + GLdouble bottom, GLdouble top, + GLdouble near_val, GLdouble far_val ); + +GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right, + GLdouble bottom, GLdouble top, + GLdouble near_val, GLdouble far_val ); + +GLAPI void GLAPIENTRY glViewport( GLint x, GLint y, + GLsizei width, GLsizei height ); + +GLAPI void GLAPIENTRY glPushMatrix( void ); + +GLAPI void GLAPIENTRY glPopMatrix( void ); + +GLAPI void GLAPIENTRY glLoadIdentity( void ); + +GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m ); +GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m ); + +GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m ); +GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m ); + +GLAPI void GLAPIENTRY glRotated( GLdouble angle, + GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glRotatef( GLfloat angle, + GLfloat x, GLfloat y, GLfloat z ); + +GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z ); + +GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z ); + + +/* + * Display Lists + */ + +GLAPI GLboolean GLAPIENTRY glIsList( GLuint list ); + +GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range ); + +GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range ); + +GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode ); + +GLAPI void GLAPIENTRY glEndList( void ); + +GLAPI void GLAPIENTRY glCallList( GLuint list ); + +GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type, + const GLvoid *lists ); + +GLAPI void GLAPIENTRY glListBase( GLuint base ); + + +/* + * Drawing Functions + */ + +GLAPI void GLAPIENTRY glBegin( GLenum mode ); + +GLAPI void GLAPIENTRY glEnd( void ); + + +GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y ); +GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y ); +GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y ); +GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y ); + +GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z ); +GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z ); +GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z ); + +GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); +GLAPI void GLAPIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); +GLAPI void GLAPIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w ); +GLAPI void GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w ); + +GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glVertex2iv( const GLint *v ); +GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glVertex3iv( const GLint *v ); +GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glVertex4iv( const GLint *v ); +GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v ); + + +GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ); +GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz ); +GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz ); +GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, GLint nz ); +GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz ); + +GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v ); +GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glNormal3iv( const GLint *v ); +GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v ); + + +GLAPI void GLAPIENTRY glIndexd( GLdouble c ); +GLAPI void GLAPIENTRY glIndexf( GLfloat c ); +GLAPI void GLAPIENTRY glIndexi( GLint c ); +GLAPI void GLAPIENTRY glIndexs( GLshort c ); +GLAPI void GLAPIENTRY glIndexub( GLubyte c ); /* 1.1 */ + +GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c ); +GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c ); +GLAPI void GLAPIENTRY glIndexiv( const GLint *c ); +GLAPI void GLAPIENTRY glIndexsv( const GLshort *c ); +GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */ + +GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue ); +GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue ); +GLAPI void GLAPIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue ); +GLAPI void GLAPIENTRY glColor3i( GLint red, GLint green, GLint blue ); +GLAPI void GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue ); +GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue ); +GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue ); +GLAPI void GLAPIENTRY glColor3us( GLushort red, GLushort green, GLushort blue ); + +GLAPI void GLAPIENTRY glColor4b( GLbyte red, GLbyte green, + GLbyte blue, GLbyte alpha ); +GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green, + GLdouble blue, GLdouble alpha ); +GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green, + GLfloat blue, GLfloat alpha ); +GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green, + GLint blue, GLint alpha ); +GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green, + GLshort blue, GLshort alpha ); +GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green, + GLubyte blue, GLubyte alpha ); +GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green, + GLuint blue, GLuint alpha ); +GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green, + GLushort blue, GLushort alpha ); + + +GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v ); +GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glColor3iv( const GLint *v ); +GLAPI void GLAPIENTRY glColor3sv( const GLshort *v ); +GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v ); +GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v ); +GLAPI void GLAPIENTRY glColor3usv( const GLushort *v ); + +GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v ); +GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glColor4iv( const GLint *v ); +GLAPI void GLAPIENTRY glColor4sv( const GLshort *v ); +GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v ); +GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v ); +GLAPI void GLAPIENTRY glColor4usv( const GLushort *v ); + + +GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s ); +GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s ); +GLAPI void GLAPIENTRY glTexCoord1i( GLint s ); +GLAPI void GLAPIENTRY glTexCoord1s( GLshort s ); + +GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t ); +GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t ); +GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t ); +GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t ); + +GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r ); +GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r ); +GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, GLint r ); +GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r ); + +GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); +GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); +GLAPI void GLAPIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q ); +GLAPI void GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q ); + +GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v ); +GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v ); +GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v ); +GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v ); +GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v ); + + +GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y ); +GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y ); +GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y ); +GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y ); + +GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z ); +GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z ); +GLAPI void GLAPIENTRY glRasterPos3i( GLint x, GLint y, GLint z ); +GLAPI void GLAPIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z ); + +GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); +GLAPI void GLAPIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); +GLAPI void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w ); +GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w ); + +GLAPI void GLAPIENTRY glRasterPos2dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v ); +GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v ); +GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v ); + +GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v ); +GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v ); +GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v ); +GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v ); + + +GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); +GLAPI void GLAPIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); +GLAPI void GLAPIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ); +GLAPI void GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); + + +GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 ); +GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 ); +GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 ); +GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 ); + + +/* + * Vertex Arrays (1.1) + */ + +GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type, + GLsizei stride, const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride, + const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type, + GLsizei stride, const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride, + const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type, + GLsizei stride, const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr ); + +GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, GLvoid **params ); + +GLAPI void GLAPIENTRY glArrayElement( GLint i ); + +GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count ); + +GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count, + GLenum type, const GLvoid *indices ); + +GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride, + const GLvoid *pointer ); + +/* + * Lighting + */ + +GLAPI void GLAPIENTRY glShadeModel( GLenum mode ); + +GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, GLint param ); +GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum pname, + const GLfloat *params ); +GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname, + const GLint *params ); + +GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname, + GLfloat *params ); +GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param ); +GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const GLint *params ); + +GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glMateriali( GLenum face, GLenum pname, GLint param ); +GLAPI void GLAPIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params ); + +GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params ); + +GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode ); + + +/* + * Raster functions + */ + +GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor ); + +GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLsizei mapsize, + const GLfloat *values ); +GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLsizei mapsize, + const GLuint *values ); +GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLsizei mapsize, + const GLushort *values ); + +GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values ); +GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values ); +GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values ); + +GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height, + GLfloat xorig, GLfloat yorig, + GLfloat xmove, GLfloat ymove, + const GLubyte *bitmap ); + +GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y, + GLsizei width, GLsizei height, + GLenum format, GLenum type, + GLvoid *pixels ); + +GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height, + GLenum format, GLenum type, + const GLvoid *pixels ); + +GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y, + GLsizei width, GLsizei height, + GLenum type ); + +/* + * Stenciling + */ + +GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask ); + +GLAPI void GLAPIENTRY glStencilMask( GLuint mask ); + +GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass ); + +GLAPI void GLAPIENTRY glClearStencil( GLint s ); + + + +/* + * Texture mapping + */ + +GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param ); +GLAPI void GLAPIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params ); +GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params ); + +GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params ); +GLAPI void GLAPIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params ); + + +GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params ); + +GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params ); + + +GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname, + const GLfloat *params ); +GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname, + const GLint *params ); + +GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target, + GLenum pname, GLfloat *params); +GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target, + GLenum pname, GLint *params ); + +GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint level, + GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY glGetTexLevelParameteriv( GLenum target, GLint level, + GLenum pname, GLint *params ); + + +GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level, + GLint internalFormat, + GLsizei width, GLint border, + GLenum format, GLenum type, + const GLvoid *pixels ); + +GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level, + GLint internalFormat, + GLsizei width, GLsizei height, + GLint border, GLenum format, GLenum type, + const GLvoid *pixels ); + +GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level, + GLenum format, GLenum type, + GLvoid *pixels ); + + +/* 1.1 functions */ + +GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures ); + +GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint *textures); + +GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture ); + +GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n, + const GLuint *textures, + const GLclampf *priorities ); + +GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n, + const GLuint *textures, + GLboolean *residences ); + +GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture ); + + +GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level, + GLint xoffset, + GLsizei width, GLenum format, + GLenum type, const GLvoid *pixels ); + + +GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLsizei width, GLsizei height, + GLenum format, GLenum type, + const GLvoid *pixels ); + + +GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level, + GLenum internalformat, + GLint x, GLint y, + GLsizei width, GLint border ); + + +GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level, + GLenum internalformat, + GLint x, GLint y, + GLsizei width, GLsizei height, + GLint border ); + + +GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint level, + GLint xoffset, GLint x, GLint y, + GLsizei width ); + + +GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLint x, GLint y, + GLsizei width, GLsizei height ); + + +/* + * Evaluators + */ + +GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2, + GLint stride, + GLint order, const GLdouble *points ); +GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2, + GLint stride, + GLint order, const GLfloat *points ); + +GLAPI void GLAPIENTRY glMap2d( GLenum target, + GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, + GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, + const GLdouble *points ); +GLAPI void GLAPIENTRY glMap2f( GLenum target, + GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, + GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, + const GLfloat *points ); + +GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v ); +GLAPI void GLAPIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v ); +GLAPI void GLAPIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v ); + +GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u ); +GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u ); + +GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u ); +GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u ); + +GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v ); +GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v ); + +GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u ); +GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u ); + +GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 ); +GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 ); + +GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, + GLint vn, GLdouble v1, GLdouble v2 ); +GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2, + GLint vn, GLfloat v1, GLfloat v2 ); + +GLAPI void GLAPIENTRY glEvalPoint1( GLint i ); + +GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j ); + +GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 ); + +GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); + + +/* + * Fog + */ + +GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param ); + +GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param ); + +GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params ); + +GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params ); + + +/* + * Selection and Feedback + */ + +GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ); + +GLAPI void GLAPIENTRY glPassThrough( GLfloat token ); + +GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer ); + +GLAPI void GLAPIENTRY glInitNames( void ); + +GLAPI void GLAPIENTRY glLoadName( GLuint name ); + +GLAPI void GLAPIENTRY glPushName( GLuint name ); + +GLAPI void GLAPIENTRY glPopName( void ); + + + +/* + * OpenGL 1.2 + */ + +#define GL_RESCALE_NORMAL 0x803A +#define GL_CLAMP_TO_EDGE 0x812F +#define GL_MAX_ELEMENTS_VERTICES 0x80E8 +#define GL_MAX_ELEMENTS_INDICES 0x80E9 +#define GL_BGR 0x80E0 +#define GL_BGRA 0x80E1 +#define GL_UNSIGNED_BYTE_3_3_2 0x8032 +#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 +#define GL_UNSIGNED_SHORT_5_6_5 0x8363 +#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 +#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 +#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 +#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 +#define GL_UNSIGNED_INT_8_8_8_8 0x8035 +#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 +#define GL_UNSIGNED_INT_10_10_10_2 0x8036 +#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 +#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 +#define GL_SINGLE_COLOR 0x81F9 +#define GL_SEPARATE_SPECULAR_COLOR 0x81FA +#define GL_TEXTURE_MIN_LOD 0x813A +#define GL_TEXTURE_MAX_LOD 0x813B +#define GL_TEXTURE_BASE_LEVEL 0x813C +#define GL_TEXTURE_MAX_LEVEL 0x813D +#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 +#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 +#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 +#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 +#define GL_ALIASED_POINT_SIZE_RANGE 0x846D +#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E +#define GL_PACK_SKIP_IMAGES 0x806B +#define GL_PACK_IMAGE_HEIGHT 0x806C +#define GL_UNPACK_SKIP_IMAGES 0x806D +#define GL_UNPACK_IMAGE_HEIGHT 0x806E +#define GL_TEXTURE_3D 0x806F +#define GL_PROXY_TEXTURE_3D 0x8070 +#define GL_TEXTURE_DEPTH 0x8071 +#define GL_TEXTURE_WRAP_R 0x8072 +#define GL_MAX_3D_TEXTURE_SIZE 0x8073 +#define GL_TEXTURE_BINDING_3D 0x806A + +GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start, + GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); + +GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level, + GLint internalFormat, + GLsizei width, GLsizei height, + GLsizei depth, GLint border, + GLenum format, GLenum type, + const GLvoid *pixels ); + +GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLint zoffset, GLsizei width, + GLsizei height, GLsizei depth, + GLenum format, + GLenum type, const GLvoid *pixels); + +GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level, + GLint xoffset, GLint yoffset, + GLint zoffset, GLint x, + GLint y, GLsizei width, + GLsizei height ); + +typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); +typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); + + +/* + * GL_ARB_imaging + */ + +#define GL_CONSTANT_COLOR 0x8001 +#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 +#define GL_CONSTANT_ALPHA 0x8003 +#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 +#define GL_COLOR_TABLE 0x80D0 +#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 +#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 +#define GL_PROXY_COLOR_TABLE 0x80D3 +#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 +#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 +#define GL_COLOR_TABLE_SCALE 0x80D6 +#define GL_COLOR_TABLE_BIAS 0x80D7 +#define GL_COLOR_TABLE_FORMAT 0x80D8 +#define GL_COLOR_TABLE_WIDTH 0x80D9 +#define GL_COLOR_TABLE_RED_SIZE 0x80DA +#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB +#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC +#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD +#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE +#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF +#define GL_CONVOLUTION_1D 0x8010 +#define GL_CONVOLUTION_2D 0x8011 +#define GL_SEPARABLE_2D 0x8012 +#define GL_CONVOLUTION_BORDER_MODE 0x8013 +#define GL_CONVOLUTION_FILTER_SCALE 0x8014 +#define GL_CONVOLUTION_FILTER_BIAS 0x8015 +#define GL_REDUCE 0x8016 +#define GL_CONVOLUTION_FORMAT 0x8017 +#define GL_CONVOLUTION_WIDTH 0x8018 +#define GL_CONVOLUTION_HEIGHT 0x8019 +#define GL_MAX_CONVOLUTION_WIDTH 0x801A +#define GL_MAX_CONVOLUTION_HEIGHT 0x801B +#define GL_POST_CONVOLUTION_RED_SCALE 0x801C +#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D +#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E +#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F +#define GL_POST_CONVOLUTION_RED_BIAS 0x8020 +#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 +#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 +#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 +#define GL_CONSTANT_BORDER 0x8151 +#define GL_REPLICATE_BORDER 0x8153 +#define GL_CONVOLUTION_BORDER_COLOR 0x8154 +#define GL_COLOR_MATRIX 0x80B1 +#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 +#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 +#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 +#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 +#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 +#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 +#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 +#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 +#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA +#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB +#define GL_HISTOGRAM 0x8024 +#define GL_PROXY_HISTOGRAM 0x8025 +#define GL_HISTOGRAM_WIDTH 0x8026 +#define GL_HISTOGRAM_FORMAT 0x8027 +#define GL_HISTOGRAM_RED_SIZE 0x8028 +#define GL_HISTOGRAM_GREEN_SIZE 0x8029 +#define GL_HISTOGRAM_BLUE_SIZE 0x802A +#define GL_HISTOGRAM_ALPHA_SIZE 0x802B +#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C +#define GL_HISTOGRAM_SINK 0x802D +#define GL_MINMAX 0x802E +#define GL_MINMAX_FORMAT 0x802F +#define GL_MINMAX_SINK 0x8030 +#define GL_TABLE_TOO_LARGE 0x8031 +#define GL_BLEND_EQUATION 0x8009 +#define GL_MIN 0x8007 +#define GL_MAX 0x8008 +#define GL_FUNC_ADD 0x8006 +#define GL_FUNC_SUBTRACT 0x800A +#define GL_FUNC_REVERSE_SUBTRACT 0x800B +#define GL_BLEND_COLOR 0x8005 + + +GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalformat, + GLsizei width, GLenum format, + GLenum type, const GLvoid *table ); + +GLAPI void GLAPIENTRY glColorSubTable( GLenum target, + GLsizei start, GLsizei count, + GLenum format, GLenum type, + const GLvoid *data ); + +GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum pname, + const GLint *params); + +GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum pname, + const GLfloat *params); + +GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei start, + GLint x, GLint y, GLsizei width ); + +GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum internalformat, + GLint x, GLint y, GLsizei width ); + +GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format, + GLenum type, GLvoid *table ); + +GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname, + GLfloat *params ); + +GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glBlendEquation( GLenum mode ); + +GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green, + GLclampf blue, GLclampf alpha ); + +GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width, + GLenum internalformat, GLboolean sink ); + +GLAPI void GLAPIENTRY glResetHistogram( GLenum target ); + +GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset, + GLenum format, GLenum type, + GLvoid *values ); + +GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname, + GLfloat *params ); + +GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat, + GLboolean sink ); + +GLAPI void GLAPIENTRY glResetMinmax( GLenum target ); + +GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset, + GLenum format, GLenum types, + GLvoid *values ); + +GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname, + GLfloat *params ); + +GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target, + GLenum internalformat, GLsizei width, GLenum format, GLenum type, + const GLvoid *image ); + +GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target, + GLenum internalformat, GLsizei width, GLsizei height, GLenum format, + GLenum type, const GLvoid *image ); + +GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum pname, + GLfloat params ); + +GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, GLenum pname, + const GLfloat *params ); + +GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum pname, + GLint params ); + +GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, GLenum pname, + const GLint *params ); + +GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target, + GLenum internalformat, GLint x, GLint y, GLsizei width ); + +GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target, + GLenum internalformat, GLint x, GLint y, GLsizei width, + GLsizei height); + +GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format, + GLenum type, GLvoid *image ); + +GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname, + GLfloat *params ); + +GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname, + GLint *params ); + +GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target, + GLenum internalformat, GLsizei width, GLsizei height, GLenum format, + GLenum type, const GLvoid *row, const GLvoid *column ); + +GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format, + GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); + + + + +/* + * OpenGL 1.3 + */ + +/* multitexture */ +#define GL_TEXTURE0 0x84C0 +#define GL_TEXTURE1 0x84C1 +#define GL_TEXTURE2 0x84C2 +#define GL_TEXTURE3 0x84C3 +#define GL_TEXTURE4 0x84C4 +#define GL_TEXTURE5 0x84C5 +#define GL_TEXTURE6 0x84C6 +#define GL_TEXTURE7 0x84C7 +#define GL_TEXTURE8 0x84C8 +#define GL_TEXTURE9 0x84C9 +#define GL_TEXTURE10 0x84CA +#define GL_TEXTURE11 0x84CB +#define GL_TEXTURE12 0x84CC +#define GL_TEXTURE13 0x84CD +#define GL_TEXTURE14 0x84CE +#define GL_TEXTURE15 0x84CF +#define GL_TEXTURE16 0x84D0 +#define GL_TEXTURE17 0x84D1 +#define GL_TEXTURE18 0x84D2 +#define GL_TEXTURE19 0x84D3 +#define GL_TEXTURE20 0x84D4 +#define GL_TEXTURE21 0x84D5 +#define GL_TEXTURE22 0x84D6 +#define GL_TEXTURE23 0x84D7 +#define GL_TEXTURE24 0x84D8 +#define GL_TEXTURE25 0x84D9 +#define GL_TEXTURE26 0x84DA +#define GL_TEXTURE27 0x84DB +#define GL_TEXTURE28 0x84DC +#define GL_TEXTURE29 0x84DD +#define GL_TEXTURE30 0x84DE +#define GL_TEXTURE31 0x84DF +#define GL_ACTIVE_TEXTURE 0x84E0 +#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 +#define GL_MAX_TEXTURE_UNITS 0x84E2 +/* texture_cube_map */ +#define GL_NORMAL_MAP 0x8511 +#define GL_REFLECTION_MAP 0x8512 +#define GL_TEXTURE_CUBE_MAP 0x8513 +#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A +#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C +/* texture_compression */ +#define GL_COMPRESSED_ALPHA 0x84E9 +#define GL_COMPRESSED_LUMINANCE 0x84EA +#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB +#define GL_COMPRESSED_INTENSITY 0x84EC +#define GL_COMPRESSED_RGB 0x84ED +#define GL_COMPRESSED_RGBA 0x84EE +#define GL_TEXTURE_COMPRESSION_HINT 0x84EF +#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 +#define GL_TEXTURE_COMPRESSED 0x86A1 +#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 +#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 +/* multisample */ +#define GL_MULTISAMPLE 0x809D +#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E +#define GL_SAMPLE_ALPHA_TO_ONE 0x809F +#define GL_SAMPLE_COVERAGE 0x80A0 +#define GL_SAMPLE_BUFFERS 0x80A8 +#define GL_SAMPLES 0x80A9 +#define GL_SAMPLE_COVERAGE_VALUE 0x80AA +#define GL_SAMPLE_COVERAGE_INVERT 0x80AB +#define GL_MULTISAMPLE_BIT 0x20000000 +/* transpose_matrix */ +#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 +#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 +#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 +#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 +/* texture_env_combine */ +#define GL_COMBINE 0x8570 +#define GL_COMBINE_RGB 0x8571 +#define GL_COMBINE_ALPHA 0x8572 +#define GL_SOURCE0_RGB 0x8580 +#define GL_SOURCE1_RGB 0x8581 +#define GL_SOURCE2_RGB 0x8582 +#define GL_SOURCE0_ALPHA 0x8588 +#define GL_SOURCE1_ALPHA 0x8589 +#define GL_SOURCE2_ALPHA 0x858A +#define GL_OPERAND0_RGB 0x8590 +#define GL_OPERAND1_RGB 0x8591 +#define GL_OPERAND2_RGB 0x8592 +#define GL_OPERAND0_ALPHA 0x8598 +#define GL_OPERAND1_ALPHA 0x8599 +#define GL_OPERAND2_ALPHA 0x859A +#define GL_RGB_SCALE 0x8573 +#define GL_ADD_SIGNED 0x8574 +#define GL_INTERPOLATE 0x8575 +#define GL_SUBTRACT 0x84E7 +#define GL_CONSTANT 0x8576 +#define GL_PRIMARY_COLOR 0x8577 +#define GL_PREVIOUS 0x8578 +/* texture_env_dot3 */ +#define GL_DOT3_RGB 0x86AE +#define GL_DOT3_RGBA 0x86AF +/* texture_border_clamp */ +#define GL_CLAMP_TO_BORDER 0x812D + +GLAPI void GLAPIENTRY glActiveTexture( GLenum texture ); + +GLAPI void GLAPIENTRY glClientActiveTexture( GLenum texture ); + +GLAPI void GLAPIENTRY glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY glGetCompressedTexImage( GLenum target, GLint lod, GLvoid *img ); + +GLAPI void GLAPIENTRY glMultiTexCoord1d( GLenum target, GLdouble s ); + +GLAPI void GLAPIENTRY glMultiTexCoord1dv( GLenum target, const GLdouble *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord1f( GLenum target, GLfloat s ); + +GLAPI void GLAPIENTRY glMultiTexCoord1fv( GLenum target, const GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord1i( GLenum target, GLint s ); + +GLAPI void GLAPIENTRY glMultiTexCoord1iv( GLenum target, const GLint *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord1s( GLenum target, GLshort s ); + +GLAPI void GLAPIENTRY glMultiTexCoord1sv( GLenum target, const GLshort *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t ); + +GLAPI void GLAPIENTRY glMultiTexCoord2dv( GLenum target, const GLdouble *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t ); + +GLAPI void GLAPIENTRY glMultiTexCoord2fv( GLenum target, const GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord2i( GLenum target, GLint s, GLint t ); + +GLAPI void GLAPIENTRY glMultiTexCoord2iv( GLenum target, const GLint *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord2s( GLenum target, GLshort s, GLshort t ); + +GLAPI void GLAPIENTRY glMultiTexCoord2sv( GLenum target, const GLshort *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r ); + +GLAPI void GLAPIENTRY glMultiTexCoord3dv( GLenum target, const GLdouble *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r ); + +GLAPI void GLAPIENTRY glMultiTexCoord3fv( GLenum target, const GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r ); + +GLAPI void GLAPIENTRY glMultiTexCoord3iv( GLenum target, const GLint *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r ); + +GLAPI void GLAPIENTRY glMultiTexCoord3sv( GLenum target, const GLshort *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); + +GLAPI void GLAPIENTRY glMultiTexCoord4dv( GLenum target, const GLdouble *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); + +GLAPI void GLAPIENTRY glMultiTexCoord4fv( GLenum target, const GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q ); + +GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); + +GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v ); + + +GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] ); + +GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] ); + +GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] ); + +GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] ); + +GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert ); + + +typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture); +typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data); +typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img); + + + +/* + * GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1) + */ +#ifndef GL_ARB_multitexture +#define GL_ARB_multitexture 1 + +#define GL_TEXTURE0_ARB 0x84C0 +#define GL_TEXTURE1_ARB 0x84C1 +#define GL_TEXTURE2_ARB 0x84C2 +#define GL_TEXTURE3_ARB 0x84C3 +#define GL_TEXTURE4_ARB 0x84C4 +#define GL_TEXTURE5_ARB 0x84C5 +#define GL_TEXTURE6_ARB 0x84C6 +#define GL_TEXTURE7_ARB 0x84C7 +#define GL_TEXTURE8_ARB 0x84C8 +#define GL_TEXTURE9_ARB 0x84C9 +#define GL_TEXTURE10_ARB 0x84CA +#define GL_TEXTURE11_ARB 0x84CB +#define GL_TEXTURE12_ARB 0x84CC +#define GL_TEXTURE13_ARB 0x84CD +#define GL_TEXTURE14_ARB 0x84CE +#define GL_TEXTURE15_ARB 0x84CF +#define GL_TEXTURE16_ARB 0x84D0 +#define GL_TEXTURE17_ARB 0x84D1 +#define GL_TEXTURE18_ARB 0x84D2 +#define GL_TEXTURE19_ARB 0x84D3 +#define GL_TEXTURE20_ARB 0x84D4 +#define GL_TEXTURE21_ARB 0x84D5 +#define GL_TEXTURE22_ARB 0x84D6 +#define GL_TEXTURE23_ARB 0x84D7 +#define GL_TEXTURE24_ARB 0x84D8 +#define GL_TEXTURE25_ARB 0x84D9 +#define GL_TEXTURE26_ARB 0x84DA +#define GL_TEXTURE27_ARB 0x84DB +#define GL_TEXTURE28_ARB 0x84DC +#define GL_TEXTURE29_ARB 0x84DD +#define GL_TEXTURE30_ARB 0x84DE +#define GL_TEXTURE31_ARB 0x84DF +#define GL_ACTIVE_TEXTURE_ARB 0x84E0 +#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 +#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 + +GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture); +GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture); +GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble s); +GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum target, GLfloat s); +GLAPI void GLAPIENTRY glMultiTexCoord1fvARB(GLenum target, const GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s); +GLAPI void GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort s); +GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const GLshort *v); +GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t); +GLAPI void GLAPIENTRY glMultiTexCoord2dvARB(GLenum target, const GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t); +GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum target, GLint s, GLint t); +GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t); +GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v); +GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r); +GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r); +GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r); +GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r); +GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v); +GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); +GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); +GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q); +GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); +GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v); + +typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture); +typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); +typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); +typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); + +#endif /* GL_ARB_multitexture */ + + + +/* + * Define this token if you want "old-style" header file behaviour (extensions + * defined in gl.h). Otherwise, extensions will be included from glext.h. + */ +#if !defined(NO_SDL_GLEXT) && !defined(GL_GLEXT_LEGACY) +#include "SDL_opengl_glext.h" +#endif /* GL_GLEXT_LEGACY */ + + + +/********************************************************************** + * Begin system-specific stuff + */ +#if defined(PRAGMA_EXPORT_SUPPORTED) +#pragma export off +#endif + +/* + * End system-specific stuff + **********************************************************************/ + + +#ifdef __cplusplus +} +#endif + +#endif /* __gl_h_ */ + +#endif /* !__IPHONEOS__ */ + +#endif /* SDL_opengl_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3b090834fa5a17ab76c4e52ee7a27cfe67ebf9f4 GIT binary patch literal 12231 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h new file mode 100644 index 00000000..9abd57b4 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h @@ -0,0 +1,644 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_pixels.h + * + * Header for the enumerated pixel format definitions. + */ + +#ifndef SDL_pixels_h_ +#define SDL_pixels_h_ + +#include "SDL_stdinc.h" +#include "SDL_endian.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \name Transparency definitions + * + * These define alpha as the opacity of a surface. + */ +/* @{ */ +#define SDL_ALPHA_OPAQUE 255 +#define SDL_ALPHA_TRANSPARENT 0 +/* @} */ + +/** Pixel type. */ +typedef enum +{ + SDL_PIXELTYPE_UNKNOWN, + SDL_PIXELTYPE_INDEX1, + SDL_PIXELTYPE_INDEX4, + SDL_PIXELTYPE_INDEX8, + SDL_PIXELTYPE_PACKED8, + SDL_PIXELTYPE_PACKED16, + SDL_PIXELTYPE_PACKED32, + SDL_PIXELTYPE_ARRAYU8, + SDL_PIXELTYPE_ARRAYU16, + SDL_PIXELTYPE_ARRAYU32, + SDL_PIXELTYPE_ARRAYF16, + SDL_PIXELTYPE_ARRAYF32 +} SDL_PixelType; + +/** Bitmap pixel order, high bit -> low bit. */ +typedef enum +{ + SDL_BITMAPORDER_NONE, + SDL_BITMAPORDER_4321, + SDL_BITMAPORDER_1234 +} SDL_BitmapOrder; + +/** Packed component order, high bit -> low bit. */ +typedef enum +{ + SDL_PACKEDORDER_NONE, + SDL_PACKEDORDER_XRGB, + SDL_PACKEDORDER_RGBX, + SDL_PACKEDORDER_ARGB, + SDL_PACKEDORDER_RGBA, + SDL_PACKEDORDER_XBGR, + SDL_PACKEDORDER_BGRX, + SDL_PACKEDORDER_ABGR, + SDL_PACKEDORDER_BGRA +} SDL_PackedOrder; + +/** Array component order, low byte -> high byte. */ +/* !!! FIXME: in 2.1, make these not overlap differently with + !!! FIXME: SDL_PACKEDORDER_*, so we can simplify SDL_ISPIXELFORMAT_ALPHA */ +typedef enum +{ + SDL_ARRAYORDER_NONE, + SDL_ARRAYORDER_RGB, + SDL_ARRAYORDER_RGBA, + SDL_ARRAYORDER_ARGB, + SDL_ARRAYORDER_BGR, + SDL_ARRAYORDER_BGRA, + SDL_ARRAYORDER_ABGR +} SDL_ArrayOrder; + +/** Packed component layout. */ +typedef enum +{ + SDL_PACKEDLAYOUT_NONE, + SDL_PACKEDLAYOUT_332, + SDL_PACKEDLAYOUT_4444, + SDL_PACKEDLAYOUT_1555, + SDL_PACKEDLAYOUT_5551, + SDL_PACKEDLAYOUT_565, + SDL_PACKEDLAYOUT_8888, + SDL_PACKEDLAYOUT_2101010, + SDL_PACKEDLAYOUT_1010102 +} SDL_PackedLayout; + +#define SDL_DEFINE_PIXELFOURCC(A, B, C, D) SDL_FOURCC(A, B, C, D) + +#define SDL_DEFINE_PIXELFORMAT(type, order, layout, bits, bytes) \ + ((1 << 28) | ((type) << 24) | ((order) << 20) | ((layout) << 16) | \ + ((bits) << 8) | ((bytes) << 0)) + +#define SDL_PIXELFLAG(X) (((X) >> 28) & 0x0F) +#define SDL_PIXELTYPE(X) (((X) >> 24) & 0x0F) +#define SDL_PIXELORDER(X) (((X) >> 20) & 0x0F) +#define SDL_PIXELLAYOUT(X) (((X) >> 16) & 0x0F) +#define SDL_BITSPERPIXEL(X) (((X) >> 8) & 0xFF) +#define SDL_BYTESPERPIXEL(X) \ + (SDL_ISPIXELFORMAT_FOURCC(X) ? \ + ((((X) == SDL_PIXELFORMAT_YUY2) || \ + ((X) == SDL_PIXELFORMAT_UYVY) || \ + ((X) == SDL_PIXELFORMAT_YVYU)) ? 2 : 1) : (((X) >> 0) & 0xFF)) + +#define SDL_ISPIXELFORMAT_INDEXED(format) \ + (!SDL_ISPIXELFORMAT_FOURCC(format) && \ + ((SDL_PIXELTYPE(format) == SDL_PIXELTYPE_INDEX1) || \ + (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_INDEX4) || \ + (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_INDEX8))) + +#define SDL_ISPIXELFORMAT_PACKED(format) \ + (!SDL_ISPIXELFORMAT_FOURCC(format) && \ + ((SDL_PIXELTYPE(format) == SDL_PIXELTYPE_PACKED8) || \ + (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_PACKED16) || \ + (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_PACKED32))) + +#define SDL_ISPIXELFORMAT_ARRAY(format) \ + (!SDL_ISPIXELFORMAT_FOURCC(format) && \ + ((SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYU8) || \ + (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYU16) || \ + (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYU32) || \ + (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYF16) || \ + (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYF32))) + +#define SDL_ISPIXELFORMAT_ALPHA(format) \ + ((SDL_ISPIXELFORMAT_PACKED(format) && \ + ((SDL_PIXELORDER(format) == SDL_PACKEDORDER_ARGB) || \ + (SDL_PIXELORDER(format) == SDL_PACKEDORDER_RGBA) || \ + (SDL_PIXELORDER(format) == SDL_PACKEDORDER_ABGR) || \ + (SDL_PIXELORDER(format) == SDL_PACKEDORDER_BGRA))) || \ + (SDL_ISPIXELFORMAT_ARRAY(format) && \ + ((SDL_PIXELORDER(format) == SDL_ARRAYORDER_ARGB) || \ + (SDL_PIXELORDER(format) == SDL_ARRAYORDER_RGBA) || \ + (SDL_PIXELORDER(format) == SDL_ARRAYORDER_ABGR) || \ + (SDL_PIXELORDER(format) == SDL_ARRAYORDER_BGRA)))) + +/* The flag is set to 1 because 0x1? is not in the printable ASCII range */ +#define SDL_ISPIXELFORMAT_FOURCC(format) \ + ((format) && (SDL_PIXELFLAG(format) != 1)) + +/* Note: If you modify this list, update SDL_GetPixelFormatName() */ +typedef enum +{ + SDL_PIXELFORMAT_UNKNOWN, + SDL_PIXELFORMAT_INDEX1LSB = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX1, SDL_BITMAPORDER_4321, 0, + 1, 0), + SDL_PIXELFORMAT_INDEX1MSB = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX1, SDL_BITMAPORDER_1234, 0, + 1, 0), + SDL_PIXELFORMAT_INDEX4LSB = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX4, SDL_BITMAPORDER_4321, 0, + 4, 0), + SDL_PIXELFORMAT_INDEX4MSB = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX4, SDL_BITMAPORDER_1234, 0, + 4, 0), + SDL_PIXELFORMAT_INDEX8 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX8, 0, 0, 8, 1), + SDL_PIXELFORMAT_RGB332 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED8, SDL_PACKEDORDER_XRGB, + SDL_PACKEDLAYOUT_332, 8, 1), + SDL_PIXELFORMAT_XRGB4444 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB, + SDL_PACKEDLAYOUT_4444, 12, 2), + SDL_PIXELFORMAT_RGB444 = SDL_PIXELFORMAT_XRGB4444, + SDL_PIXELFORMAT_XBGR4444 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR, + SDL_PACKEDLAYOUT_4444, 12, 2), + SDL_PIXELFORMAT_BGR444 = SDL_PIXELFORMAT_XBGR4444, + SDL_PIXELFORMAT_XRGB1555 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB, + SDL_PACKEDLAYOUT_1555, 15, 2), + SDL_PIXELFORMAT_RGB555 = SDL_PIXELFORMAT_XRGB1555, + SDL_PIXELFORMAT_XBGR1555 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR, + SDL_PACKEDLAYOUT_1555, 15, 2), + SDL_PIXELFORMAT_BGR555 = SDL_PIXELFORMAT_XBGR1555, + SDL_PIXELFORMAT_ARGB4444 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ARGB, + SDL_PACKEDLAYOUT_4444, 16, 2), + SDL_PIXELFORMAT_RGBA4444 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_RGBA, + SDL_PACKEDLAYOUT_4444, 16, 2), + SDL_PIXELFORMAT_ABGR4444 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ABGR, + SDL_PACKEDLAYOUT_4444, 16, 2), + SDL_PIXELFORMAT_BGRA4444 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_BGRA, + SDL_PACKEDLAYOUT_4444, 16, 2), + SDL_PIXELFORMAT_ARGB1555 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ARGB, + SDL_PACKEDLAYOUT_1555, 16, 2), + SDL_PIXELFORMAT_RGBA5551 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_RGBA, + SDL_PACKEDLAYOUT_5551, 16, 2), + SDL_PIXELFORMAT_ABGR1555 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ABGR, + SDL_PACKEDLAYOUT_1555, 16, 2), + SDL_PIXELFORMAT_BGRA5551 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_BGRA, + SDL_PACKEDLAYOUT_5551, 16, 2), + SDL_PIXELFORMAT_RGB565 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB, + SDL_PACKEDLAYOUT_565, 16, 2), + SDL_PIXELFORMAT_BGR565 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR, + SDL_PACKEDLAYOUT_565, 16, 2), + SDL_PIXELFORMAT_RGB24 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_ARRAYU8, SDL_ARRAYORDER_RGB, 0, + 24, 3), + SDL_PIXELFORMAT_BGR24 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_ARRAYU8, SDL_ARRAYORDER_BGR, 0, + 24, 3), + SDL_PIXELFORMAT_XRGB8888 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XRGB, + SDL_PACKEDLAYOUT_8888, 24, 4), + SDL_PIXELFORMAT_RGB888 = SDL_PIXELFORMAT_XRGB8888, + SDL_PIXELFORMAT_RGBX8888 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_RGBX, + SDL_PACKEDLAYOUT_8888, 24, 4), + SDL_PIXELFORMAT_XBGR8888 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XBGR, + SDL_PACKEDLAYOUT_8888, 24, 4), + SDL_PIXELFORMAT_BGR888 = SDL_PIXELFORMAT_XBGR8888, + SDL_PIXELFORMAT_BGRX8888 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_BGRX, + SDL_PACKEDLAYOUT_8888, 24, 4), + SDL_PIXELFORMAT_ARGB8888 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_ARGB, + SDL_PACKEDLAYOUT_8888, 32, 4), + SDL_PIXELFORMAT_RGBA8888 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_RGBA, + SDL_PACKEDLAYOUT_8888, 32, 4), + SDL_PIXELFORMAT_ABGR8888 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_ABGR, + SDL_PACKEDLAYOUT_8888, 32, 4), + SDL_PIXELFORMAT_BGRA8888 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_BGRA, + SDL_PACKEDLAYOUT_8888, 32, 4), + SDL_PIXELFORMAT_ARGB2101010 = + SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_ARGB, + SDL_PACKEDLAYOUT_2101010, 32, 4), + + /* Aliases for RGBA byte arrays of color data, for the current platform */ +#if SDL_BYTEORDER == SDL_BIG_ENDIAN + SDL_PIXELFORMAT_RGBA32 = SDL_PIXELFORMAT_RGBA8888, + SDL_PIXELFORMAT_ARGB32 = SDL_PIXELFORMAT_ARGB8888, + SDL_PIXELFORMAT_BGRA32 = SDL_PIXELFORMAT_BGRA8888, + SDL_PIXELFORMAT_ABGR32 = SDL_PIXELFORMAT_ABGR8888, +#else + SDL_PIXELFORMAT_RGBA32 = SDL_PIXELFORMAT_ABGR8888, + SDL_PIXELFORMAT_ARGB32 = SDL_PIXELFORMAT_BGRA8888, + SDL_PIXELFORMAT_BGRA32 = SDL_PIXELFORMAT_ARGB8888, + SDL_PIXELFORMAT_ABGR32 = SDL_PIXELFORMAT_RGBA8888, +#endif + + SDL_PIXELFORMAT_YV12 = /**< Planar mode: Y + V + U (3 planes) */ + SDL_DEFINE_PIXELFOURCC('Y', 'V', '1', '2'), + SDL_PIXELFORMAT_IYUV = /**< Planar mode: Y + U + V (3 planes) */ + SDL_DEFINE_PIXELFOURCC('I', 'Y', 'U', 'V'), + SDL_PIXELFORMAT_YUY2 = /**< Packed mode: Y0+U0+Y1+V0 (1 plane) */ + SDL_DEFINE_PIXELFOURCC('Y', 'U', 'Y', '2'), + SDL_PIXELFORMAT_UYVY = /**< Packed mode: U0+Y0+V0+Y1 (1 plane) */ + SDL_DEFINE_PIXELFOURCC('U', 'Y', 'V', 'Y'), + SDL_PIXELFORMAT_YVYU = /**< Packed mode: Y0+V0+Y1+U0 (1 plane) */ + SDL_DEFINE_PIXELFOURCC('Y', 'V', 'Y', 'U'), + SDL_PIXELFORMAT_NV12 = /**< Planar mode: Y + U/V interleaved (2 planes) */ + SDL_DEFINE_PIXELFOURCC('N', 'V', '1', '2'), + SDL_PIXELFORMAT_NV21 = /**< Planar mode: Y + V/U interleaved (2 planes) */ + SDL_DEFINE_PIXELFOURCC('N', 'V', '2', '1'), + SDL_PIXELFORMAT_EXTERNAL_OES = /**< Android video texture format */ + SDL_DEFINE_PIXELFOURCC('O', 'E', 'S', ' ') +} SDL_PixelFormatEnum; + +/** + * The bits of this structure can be directly reinterpreted as an integer-packed + * color which uses the SDL_PIXELFORMAT_RGBA32 format (SDL_PIXELFORMAT_ABGR8888 + * on little-endian systems and SDL_PIXELFORMAT_RGBA8888 on big-endian systems). + */ +typedef struct SDL_Color +{ + Uint8 r; + Uint8 g; + Uint8 b; + Uint8 a; +} SDL_Color; +#define SDL_Colour SDL_Color + +typedef struct SDL_Palette +{ + int ncolors; + SDL_Color *colors; + Uint32 version; + int refcount; +} SDL_Palette; + +/** + * \note Everything in the pixel format structure is read-only. + */ +typedef struct SDL_PixelFormat +{ + Uint32 format; + SDL_Palette *palette; + Uint8 BitsPerPixel; + Uint8 BytesPerPixel; + Uint8 padding[2]; + Uint32 Rmask; + Uint32 Gmask; + Uint32 Bmask; + Uint32 Amask; + Uint8 Rloss; + Uint8 Gloss; + Uint8 Bloss; + Uint8 Aloss; + Uint8 Rshift; + Uint8 Gshift; + Uint8 Bshift; + Uint8 Ashift; + int refcount; + struct SDL_PixelFormat *next; +} SDL_PixelFormat; + +/** + * Get the human readable name of a pixel format. + * + * \param format the pixel format to query + * \returns the human readable name of the specified pixel format or + * `SDL_PIXELFORMAT_UNKNOWN` if the format isn't recognized. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC const char* SDLCALL SDL_GetPixelFormatName(Uint32 format); + +/** + * Convert one of the enumerated pixel formats to a bpp value and RGBA masks. + * + * \param format one of the SDL_PixelFormatEnum values + * \param bpp a bits per pixel value; usually 15, 16, or 32 + * \param Rmask a pointer filled in with the red mask for the format + * \param Gmask a pointer filled in with the green mask for the format + * \param Bmask a pointer filled in with the blue mask for the format + * \param Amask a pointer filled in with the alpha mask for the format + * \returns SDL_TRUE on success or SDL_FALSE if the conversion wasn't + * possible; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_MasksToPixelFormatEnum + */ +extern DECLSPEC SDL_bool SDLCALL SDL_PixelFormatEnumToMasks(Uint32 format, + int *bpp, + Uint32 * Rmask, + Uint32 * Gmask, + Uint32 * Bmask, + Uint32 * Amask); + +/** + * Convert a bpp value and RGBA masks to an enumerated pixel format. + * + * This will return `SDL_PIXELFORMAT_UNKNOWN` if the conversion wasn't + * possible. + * + * \param bpp a bits per pixel value; usually 15, 16, or 32 + * \param Rmask the red mask for the format + * \param Gmask the green mask for the format + * \param Bmask the blue mask for the format + * \param Amask the alpha mask for the format + * \returns one of the SDL_PixelFormatEnum values + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_PixelFormatEnumToMasks + */ +extern DECLSPEC Uint32 SDLCALL SDL_MasksToPixelFormatEnum(int bpp, + Uint32 Rmask, + Uint32 Gmask, + Uint32 Bmask, + Uint32 Amask); + +/** + * Create an SDL_PixelFormat structure corresponding to a pixel format. + * + * Returned structure may come from a shared global cache (i.e. not newly + * allocated), and hence should not be modified, especially the palette. Weird + * errors such as `Blit combination not supported` may occur. + * + * \param pixel_format one of the SDL_PixelFormatEnum values + * \returns the new SDL_PixelFormat structure or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FreeFormat + */ +extern DECLSPEC SDL_PixelFormat * SDLCALL SDL_AllocFormat(Uint32 pixel_format); + +/** + * Free an SDL_PixelFormat structure allocated by SDL_AllocFormat(). + * + * \param format the SDL_PixelFormat structure to free + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AllocFormat + */ +extern DECLSPEC void SDLCALL SDL_FreeFormat(SDL_PixelFormat *format); + +/** + * Create a palette structure with the specified number of color entries. + * + * The palette entries are initialized to white. + * + * \param ncolors represents the number of color entries in the color palette + * \returns a new SDL_Palette structure on success or NULL on failure (e.g. if + * there wasn't enough memory); call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FreePalette + */ +extern DECLSPEC SDL_Palette *SDLCALL SDL_AllocPalette(int ncolors); + +/** + * Set the palette for a pixel format structure. + * + * \param format the SDL_PixelFormat structure that will use the palette + * \param palette the SDL_Palette structure that will be used + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AllocPalette + * \sa SDL_FreePalette + */ +extern DECLSPEC int SDLCALL SDL_SetPixelFormatPalette(SDL_PixelFormat * format, + SDL_Palette *palette); + +/** + * Set a range of colors in a palette. + * + * \param palette the SDL_Palette structure to modify + * \param colors an array of SDL_Color structures to copy into the palette + * \param firstcolor the index of the first palette entry to modify + * \param ncolors the number of entries to modify + * \returns 0 on success or a negative error code if not all of the colors + * could be set; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AllocPalette + * \sa SDL_CreateRGBSurface + */ +extern DECLSPEC int SDLCALL SDL_SetPaletteColors(SDL_Palette * palette, + const SDL_Color * colors, + int firstcolor, int ncolors); + +/** + * Free a palette created with SDL_AllocPalette(). + * + * \param palette the SDL_Palette structure to be freed + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AllocPalette + */ +extern DECLSPEC void SDLCALL SDL_FreePalette(SDL_Palette * palette); + +/** + * Map an RGB triple to an opaque pixel value for a given pixel format. + * + * This function maps the RGB color value to the specified pixel format and + * returns the pixel value best approximating the given RGB color value for + * the given pixel format. + * + * If the format has a palette (8-bit) the index of the closest matching color + * in the palette will be returned. + * + * If the specified pixel format has an alpha component it will be returned as + * all 1 bits (fully opaque). + * + * If the pixel format bpp (color depth) is less than 32-bpp then the unused + * upper bits of the return value can safely be ignored (e.g., with a 16-bpp + * format the return value can be assigned to a Uint16, and similarly a Uint8 + * for an 8-bpp format). + * + * \param format an SDL_PixelFormat structure describing the pixel format + * \param r the red component of the pixel in the range 0-255 + * \param g the green component of the pixel in the range 0-255 + * \param b the blue component of the pixel in the range 0-255 + * \returns a pixel value + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRGB + * \sa SDL_GetRGBA + * \sa SDL_MapRGBA + */ +extern DECLSPEC Uint32 SDLCALL SDL_MapRGB(const SDL_PixelFormat * format, + Uint8 r, Uint8 g, Uint8 b); + +/** + * Map an RGBA quadruple to a pixel value for a given pixel format. + * + * This function maps the RGBA color value to the specified pixel format and + * returns the pixel value best approximating the given RGBA color value for + * the given pixel format. + * + * If the specified pixel format has no alpha component the alpha value will + * be ignored (as it will be in formats with a palette). + * + * If the format has a palette (8-bit) the index of the closest matching color + * in the palette will be returned. + * + * If the pixel format bpp (color depth) is less than 32-bpp then the unused + * upper bits of the return value can safely be ignored (e.g., with a 16-bpp + * format the return value can be assigned to a Uint16, and similarly a Uint8 + * for an 8-bpp format). + * + * \param format an SDL_PixelFormat structure describing the format of the + * pixel + * \param r the red component of the pixel in the range 0-255 + * \param g the green component of the pixel in the range 0-255 + * \param b the blue component of the pixel in the range 0-255 + * \param a the alpha component of the pixel in the range 0-255 + * \returns a pixel value + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRGB + * \sa SDL_GetRGBA + * \sa SDL_MapRGB + */ +extern DECLSPEC Uint32 SDLCALL SDL_MapRGBA(const SDL_PixelFormat * format, + Uint8 r, Uint8 g, Uint8 b, + Uint8 a); + +/** + * Get RGB values from a pixel in the specified format. + * + * This function uses the entire 8-bit [0..255] range when converting color + * components from pixel formats with less than 8-bits per RGB component + * (e.g., a completely white pixel in 16-bit RGB565 format would return [0xff, + * 0xff, 0xff] not [0xf8, 0xfc, 0xf8]). + * + * \param pixel a pixel value + * \param format an SDL_PixelFormat structure describing the format of the + * pixel + * \param r a pointer filled in with the red component + * \param g a pointer filled in with the green component + * \param b a pointer filled in with the blue component + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRGBA + * \sa SDL_MapRGB + * \sa SDL_MapRGBA + */ +extern DECLSPEC void SDLCALL SDL_GetRGB(Uint32 pixel, + const SDL_PixelFormat * format, + Uint8 * r, Uint8 * g, Uint8 * b); + +/** + * Get RGBA values from a pixel in the specified format. + * + * This function uses the entire 8-bit [0..255] range when converting color + * components from pixel formats with less than 8-bits per RGB component + * (e.g., a completely white pixel in 16-bit RGB565 format would return [0xff, + * 0xff, 0xff] not [0xf8, 0xfc, 0xf8]). + * + * If the surface has no alpha component, the alpha will be returned as 0xff + * (100% opaque). + * + * \param pixel a pixel value + * \param format an SDL_PixelFormat structure describing the format of the + * pixel + * \param r a pointer filled in with the red component + * \param g a pointer filled in with the green component + * \param b a pointer filled in with the blue component + * \param a a pointer filled in with the alpha component + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRGB + * \sa SDL_MapRGB + * \sa SDL_MapRGBA + */ +extern DECLSPEC void SDLCALL SDL_GetRGBA(Uint32 pixel, + const SDL_PixelFormat * format, + Uint8 * r, Uint8 * g, Uint8 * b, + Uint8 * a); + +/** + * Calculate a 256 entry gamma ramp for a gamma value. + * + * \param gamma a gamma value where 0.0 is black and 1.0 is identity + * \param ramp an array of 256 values filled in with the gamma ramp + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetWindowGammaRamp + */ +extern DECLSPEC void SDLCALL SDL_CalculateGammaRamp(float gamma, Uint16 * ramp); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_pixels_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..af765e7334755250d5c16c56d0060ab5eff5fa55 GIT binary patch literal 47940 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_platform.h + * + * Try to get a standard set of platform defines. + */ + +#ifndef SDL_platform_h_ +#define SDL_platform_h_ + +#if defined(_AIX) +#undef __AIX__ +#define __AIX__ 1 +#endif +#if defined(__HAIKU__) +#undef __HAIKU__ +#define __HAIKU__ 1 +#endif +#if defined(bsdi) || defined(__bsdi) || defined(__bsdi__) +#undef __BSDI__ +#define __BSDI__ 1 +#endif +#if defined(_arch_dreamcast) +#undef __DREAMCAST__ +#define __DREAMCAST__ 1 +#endif +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) +#undef __FREEBSD__ +#define __FREEBSD__ 1 +#endif +#if defined(hpux) || defined(__hpux) || defined(__hpux__) +#undef __HPUX__ +#define __HPUX__ 1 +#endif +#if defined(sgi) || defined(__sgi) || defined(__sgi__) || defined(_SGI_SOURCE) +#undef __IRIX__ +#define __IRIX__ 1 +#endif +#if (defined(linux) || defined(__linux) || defined(__linux__)) +#undef __LINUX__ +#define __LINUX__ 1 +#endif +#if defined(ANDROID) || defined(__ANDROID__) +#undef __ANDROID__ +#undef __LINUX__ /* do we need to do this? */ +#define __ANDROID__ 1 +#endif +#if defined(__NGAGE__) +#undef __NGAGE__ +#define __NGAGE__ 1 +#endif + +#if defined(__APPLE__) +/* lets us know what version of Mac OS X we're compiling on */ +#include +#include + +/* Fix building with older SDKs that don't define these + See this for more information: + https://stackoverflow.com/questions/12132933/preprocessor-macro-for-os-x-targets +*/ +#ifndef TARGET_OS_MACCATALYST +#define TARGET_OS_MACCATALYST 0 +#endif +#ifndef TARGET_OS_IOS +#define TARGET_OS_IOS 0 +#endif +#ifndef TARGET_OS_IPHONE +#define TARGET_OS_IPHONE 0 +#endif +#ifndef TARGET_OS_TV +#define TARGET_OS_TV 0 +#endif +#ifndef TARGET_OS_SIMULATOR +#define TARGET_OS_SIMULATOR 0 +#endif + +#if TARGET_OS_TV +#undef __TVOS__ +#define __TVOS__ 1 +#endif +#if TARGET_OS_IPHONE +/* if compiling for iOS */ +#undef __IPHONEOS__ +#define __IPHONEOS__ 1 +#undef __MACOSX__ +#else +/* if not compiling for iOS */ +#undef __MACOSX__ +#define __MACOSX__ 1 +#if MAC_OS_X_VERSION_MIN_REQUIRED < 1070 +# error SDL for Mac OS X only supports deploying on 10.7 and above. +#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1070 */ +#endif /* TARGET_OS_IPHONE */ +#endif /* defined(__APPLE__) */ + +#if defined(__NetBSD__) +#undef __NETBSD__ +#define __NETBSD__ 1 +#endif +#if defined(__OpenBSD__) +#undef __OPENBSD__ +#define __OPENBSD__ 1 +#endif +#if defined(__OS2__) || defined(__EMX__) +#undef __OS2__ +#define __OS2__ 1 +#endif +#if defined(osf) || defined(__osf) || defined(__osf__) || defined(_OSF_SOURCE) +#undef __OSF__ +#define __OSF__ 1 +#endif +#if defined(__QNXNTO__) +#undef __QNXNTO__ +#define __QNXNTO__ 1 +#endif +#if defined(riscos) || defined(__riscos) || defined(__riscos__) +#undef __RISCOS__ +#define __RISCOS__ 1 +#endif +#if defined(__sun) && defined(__SVR4) +#undef __SOLARIS__ +#define __SOLARIS__ 1 +#endif + +#if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__) +/* Try to find out if we're compiling for WinRT, GDK or non-WinRT/GDK */ +#if defined(_MSC_VER) && defined(__has_include) +#if __has_include() +#define HAVE_WINAPIFAMILY_H 1 +#else +#define HAVE_WINAPIFAMILY_H 0 +#endif + +/* If _USING_V110_SDK71_ is defined it means we are using the Windows XP toolset. */ +#elif defined(_MSC_VER) && (_MSC_VER >= 1700 && !_USING_V110_SDK71_) /* _MSC_VER == 1700 for Visual Studio 2012 */ +#define HAVE_WINAPIFAMILY_H 1 +#else +#define HAVE_WINAPIFAMILY_H 0 +#endif + +#if HAVE_WINAPIFAMILY_H +#include +#define WINAPI_FAMILY_WINRT (!WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)) +#else +#define WINAPI_FAMILY_WINRT 0 +#endif /* HAVE_WINAPIFAMILY_H */ + +#if WINAPI_FAMILY_WINRT +#undef __WINRT__ +#define __WINRT__ 1 +#elif defined(_GAMING_DESKTOP) /* GDK project configuration always defines _GAMING_XXX */ +#undef __WINGDK__ +#define __WINGDK__ 1 +#elif defined(_GAMING_XBOX_XBOXONE) +#undef __XBOXONE__ +#define __XBOXONE__ 1 +#elif defined(_GAMING_XBOX_SCARLETT) +#undef __XBOXSERIES__ +#define __XBOXSERIES__ 1 +#else +#undef __WINDOWS__ +#define __WINDOWS__ 1 +#endif +#endif /* defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) */ + +#if defined(__WINDOWS__) +#undef __WIN32__ +#define __WIN32__ 1 +#endif +/* This is to support generic "any GDK" separate from a platform-specific GDK */ +#if defined(__WINGDK__) || defined(__XBOXONE__) || defined(__XBOXSERIES__) +#undef __GDK__ +#define __GDK__ 1 +#endif +#if defined(__PSP__) +#undef __PSP__ +#define __PSP__ 1 +#endif +#if defined(PS2) +#define __PS2__ 1 +#endif + +/* The NACL compiler defines __native_client__ and __pnacl__ + * Ref: http://www.chromium.org/nativeclient/pnacl/stability-of-the-pnacl-bitcode-abi + */ +#if defined(__native_client__) +#undef __LINUX__ +#undef __NACL__ +#define __NACL__ 1 +#endif +#if defined(__pnacl__) +#undef __LINUX__ +#undef __PNACL__ +#define __PNACL__ 1 +/* PNACL with newlib supports static linking only */ +#define __SDL_NOGETPROCADDR__ +#endif + +#if defined(__vita__) +#define __VITA__ 1 +#endif + +#if defined(__3DS__) +#undef __3DS__ +#define __3DS__ 1 +#endif + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Get the name of the platform. + * + * Here are the names returned for some (but not all) supported platforms: + * + * - "Windows" + * - "Mac OS X" + * - "Linux" + * - "iOS" + * - "Android" + * + * \returns the name of the platform. If the correct platform name is not + * available, returns a string beginning with the text "Unknown". + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC const char * SDLCALL SDL_GetPlatform (void); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_platform_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..911be20e4b54adfa108b883d50ea192adada9000 GIT binary patch literal 12926 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h new file mode 100644 index 00000000..1d75704c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h @@ -0,0 +1,87 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_power_h_ +#define SDL_power_h_ + +/** + * \file SDL_power.h + * + * Header for the SDL power management routines. + */ + +#include "SDL_stdinc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * The basic state for the system's power supply. + */ +typedef enum +{ + SDL_POWERSTATE_UNKNOWN, /**< cannot determine power status */ + SDL_POWERSTATE_ON_BATTERY, /**< Not plugged in, running on the battery */ + SDL_POWERSTATE_NO_BATTERY, /**< Plugged in, no battery available */ + SDL_POWERSTATE_CHARGING, /**< Plugged in, charging battery */ + SDL_POWERSTATE_CHARGED /**< Plugged in, battery charged */ +} SDL_PowerState; + +/** + * Get the current power supply details. + * + * You should never take a battery status as absolute truth. Batteries + * (especially failing batteries) are delicate hardware, and the values + * reported here are best estimates based on what that hardware reports. It's + * not uncommon for older batteries to lose stored power much faster than it + * reports, or completely drain when reporting it has 20 percent left, etc. + * + * Battery status can change at any time; if you are concerned with power + * state, you should call this function frequently, and perhaps ignore changes + * until they seem to be stable for a few seconds. + * + * It's possible a platform can only report battery percentage or time left + * but not both. + * + * \param seconds seconds of battery life left, you can pass a NULL here if + * you don't care, will return -1 if we can't determine a + * value, or we're not running on a battery + * \param percent percentage of battery life left, between 0 and 100, you can + * pass a NULL here if you don't care, will return -1 if we + * can't determine a value, or we're not running on a battery + * \returns an SDL_PowerState enum representing the current battery state. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_PowerState SDLCALL SDL_GetPowerInfo(int *seconds, int *percent); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_power_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..deef074b85d7a7d7f783d00477870329d2dfc853 GIT binary patch literal 14615 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h new file mode 100644 index 00000000..d8ceb894 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h @@ -0,0 +1,58 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_quit.h + * + * Include file for SDL quit event handling. + */ + +#ifndef SDL_quit_h_ +#define SDL_quit_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +/** + * \file SDL_quit.h + * + * An ::SDL_QUIT event is generated when the user tries to close the application + * window. If it is ignored or filtered out, the window will remain open. + * If it is not ignored or filtered, it is queued normally and the window + * is allowed to close. When the window is closed, screen updates will + * complete, but have no effect. + * + * SDL_Init() installs signal handlers for SIGINT (keyboard interrupt) + * and SIGTERM (system termination request), if handlers do not already + * exist, that generate ::SDL_QUIT events as well. There is no way + * to determine the cause of an ::SDL_QUIT event, but setting a signal + * handler in your application will override the default generation of + * quit events for that signal. + * + * \sa SDL_Quit() + */ + +/* There are no functions directly affecting the quit event */ + +#define SDL_QuitRequested() \ + (SDL_PumpEvents(), (SDL_PeepEvents(NULL,0,SDL_PEEKEVENT,SDL_QUIT,SDL_QUIT) > 0)) + +#endif /* SDL_quit_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4dc385699e6d84f86af33f2108a7340d8e219fa5 GIT binary patch literal 12421 zcmb7KJ&Ytr6`nmZzcNMm2diW)%*G0 z_g=l~=V$+W?)d#jv!mI3S(j`s=C3h%q3UL?m{jwe<#XB6c}aNnBAtDX3Q{d5i6-m1 zz2Ma%$$87Ds@totj_xq~^yFyX$#%{wD!QD_zw_GN(|N`gyh>@Evlo|E%Rq*ztHwO} za|LG%&--rs{&jZW|< zU35H0HG1Rjd?7mh==w(={B7iA@M_oM78Q)>XEM;#xuhg&89cyESZ%(1`?P3opG7P& z{?TEnLZ`T`%=7FD0I(*_;XS3wv$_^qaNsnvR8vd7IZXvGgT;dFh^k9Y(>2c-guJU1 zYrSv`m<1Os&Dwe`?F+YlpN)i#HXW~uTCb`RZ^9GtA!tqn0Prv#WY-piZbKSVcgY0b zXchkO#~+1yO1;s-+pMzz)oxK#Jff9xxW&HYixm-jzz>{mKmflg@}{bS&Y{81!pO*)1s@W;&ml=+_%ePh7t6J-_Kr+a8v;qvbO>n`*m3!3Oxi} zstfrLwX&-?BrE!8$2^=dogZL>iWm%dGIfv48j>#A!7bKc#uS5_x}lYd*zDs5WR_b7 zFu03ixFpm7=ASRT6@pl20_q*V4eY{+sSh6BXr$5<91XxsOR`Cc0H0ZNae{QUN(Yba zJ0|e%fv0tm=MHll`Cz}$FF`pG}PMzTEhBT#@ple)46373p|2aTWlnd*MKQe z**>qEQ+R>35?X`L_@EL6I8MKvJwSVW7Kv2-D>8bh+rA1}km+8op*K8UUiz@d*%lg%>4R3FI9YLSy7M6>%bRNhNAZphpN>9dvit(F5M=8SDww zs~|F5DiDCCH<$b&<S5O#d-Z*kkg7T?Gwq3<(O5Ai3&0rN>XGMFMJC6RjM6`;tqX z47`Nx({v;Ugt4f)IW)JKOhz(~$a2owwlY4r@%ZOqi)@k0)Pr(D&*@mi)Q9}?Fj{j4D)`Y9(0&5geaft>36$Kj+B?7pa&N_vP5M;U&ArhM6?V}i$ z1l!o^`Gxc=st!<<2@>b4gH0tb)Br8S_`P*@dZrILVn!+g%#FZuZJILawDwOS) z#8~8(L@rBvOgqc(MJNEUz@Za)$Phi8=Y0f$hlZsQ)z(!IG-KSlHn(jL-mZa>!_wr$ z{Py}(2mOa)=ER7D2(+Qek`ZY85~y}NK;P}ad%Uf9TURBNaU5|*3J!<~v|nf{8G*j} zGD(L@fl81n=p(a0qn0fwY*3Vt)}E6*Aq~8c38-=9*!)BHXC2gH#WoS0p=jGpQLUWA z^+Vjt@IEm|oZ$Tk5{fDCf+L{cG6rrTO)dD-)3Msts{K<@Y{~6GL7ZZ}lP^$%xWN1Z z21|h-T*ypxEjhqBUY|5|D?ez#0&&R%G{57^>46V)E+X6!^*oRqX^lrc$pu^K8dV6g z2$u>(9J7Jm2ZjcEF+Ec2!qrg4NPe({1zt;2sQziz6{#ZISx79LAY0hV_2aj{5mqh( zZYpZ2CrW!mL{wX}G&?VWk7?4h3=VZc%+Qsfo5pGhDx0SMSfASNL$8kqvJfg^5TB%E zYFXpQY-pUj&7nT4_c~vs{opMGBC6;*t7=}Y;J`R&=ADxqpQKyP@w9@j2_x5$;~Xw- zheCEN5Un`Y3)_?(G%Le71-fHPz~=pWJlbuzV%V4bNoO9pIG7`S-GG?_9O_bFyClD= z2+T_ZB)T9BN{yF_C6XXoYrkx(;22lz? zp{F8)(<$m|J@^3h4iX&|E=w453Fzwd&bT)$-vAi{enYAW6*QMN=!xCQ**SSwd)%{~ zGMrAB^{!z41jF0FU#Ni_eHXUpjaV+dm6#d-qp$5FIN1ex?-Hm5M@iav5KAO_yYQ>$ZD}^4?kUyg!kf{bJ!~Ifq+c9shs5UPOr0hO>#C z8xD>7q)dnHEgFd3W{cRHR!>;y3!6JYm9tCVlR#s~i1>6Q-zni{~i5kwVr z8#ymS3Rhh@e(da<486_Z=;LmtlgM1%@dVrsjZ&94NwP{>aCqE0lgv6h^@8VzD+bu6 zN7H+PctFvtb(?zyx3e=`L3@=pFcjU=q5{S*L;6AGSAfi^vK%!BUDnVFw(!7sU84B* zgucrJJJE3`U47w~Hl!ut^**YDTwTKH|w><)CR(VZvjAecQN4%udontE@YFr{GbIY6#|68rsmf zPil_fv?IxaWwmL?<7>lYqoEwD+o&py2EX}Ej{ap*+McQS0PUw`-6|NQmf zw^{o85h$lx-Y1M(%Uj#7>&9&71Mfr*efwrnuH8QZTw{``_1BGc2V?rcZWI7;EzF=J z9;%H>v*}g6QR|kY1qNMNJe>GJP1(W4g0^emJ?~(1BE&uHWh5olVEXFfpsz3vjluN= zUOhS=+3o|_Hend3Yhq>iH6&})J#g=(XB5+WHCi^5Zb&{kv^^6*#-eP1YUS8t75{3+ zxz#%bro=WUjZY0G_yx~#ir6Svoe55k= z#%Gxj(3XB_avOn99zyf_Z)FCTd}GR*W+uaU4Sl1z=qGe>3XI&Lj^A^6_$-00@bvEa z53Z+1Gt-E;c0rG=!?7P~6_g)14o@XXD%RPaYz*RR$?VYWmv8jr2p2J+7*HqRaQA4( ziqUUJdpzqk65q#ZJYRbm{{~!Bn)&GN75uqtv}d!~wI{#*^pos`e|-20h)ViS$JMvl zWe3wpmc!F$zX + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_rect.h + * + * Header file for SDL_rect definition and management functions. + */ + +#ifndef SDL_rect_h_ +#define SDL_rect_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_pixels.h" +#include "SDL_rwops.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * The structure that defines a point (integer) + * + * \sa SDL_EnclosePoints + * \sa SDL_PointInRect + */ +typedef struct SDL_Point +{ + int x; + int y; +} SDL_Point; + +/** + * The structure that defines a point (floating point) + * + * \sa SDL_EncloseFPoints + * \sa SDL_PointInFRect + */ +typedef struct SDL_FPoint +{ + float x; + float y; +} SDL_FPoint; + + +/** + * A rectangle, with the origin at the upper left (integer). + * + * \sa SDL_RectEmpty + * \sa SDL_RectEquals + * \sa SDL_HasIntersection + * \sa SDL_IntersectRect + * \sa SDL_IntersectRectAndLine + * \sa SDL_UnionRect + * \sa SDL_EnclosePoints + */ +typedef struct SDL_Rect +{ + int x, y; + int w, h; +} SDL_Rect; + + +/** + * A rectangle, with the origin at the upper left (floating point). + * + * \sa SDL_FRectEmpty + * \sa SDL_FRectEquals + * \sa SDL_FRectEqualsEpsilon + * \sa SDL_HasIntersectionF + * \sa SDL_IntersectFRect + * \sa SDL_IntersectFRectAndLine + * \sa SDL_UnionFRect + * \sa SDL_EncloseFPoints + * \sa SDL_PointInFRect + */ +typedef struct SDL_FRect +{ + float x; + float y; + float w; + float h; +} SDL_FRect; + + +/** + * Returns true if point resides inside a rectangle. + */ +SDL_FORCE_INLINE SDL_bool SDL_PointInRect(const SDL_Point *p, const SDL_Rect *r) +{ + return ( (p->x >= r->x) && (p->x < (r->x + r->w)) && + (p->y >= r->y) && (p->y < (r->y + r->h)) ) ? SDL_TRUE : SDL_FALSE; +} + +/** + * Returns true if the rectangle has no area. + */ +SDL_FORCE_INLINE SDL_bool SDL_RectEmpty(const SDL_Rect *r) +{ + return ((!r) || (r->w <= 0) || (r->h <= 0)) ? SDL_TRUE : SDL_FALSE; +} + +/** + * Returns true if the two rectangles are equal. + */ +SDL_FORCE_INLINE SDL_bool SDL_RectEquals(const SDL_Rect *a, const SDL_Rect *b) +{ + return (a && b && (a->x == b->x) && (a->y == b->y) && + (a->w == b->w) && (a->h == b->h)) ? SDL_TRUE : SDL_FALSE; +} + +/** + * Determine whether two rectangles intersect. + * + * If either pointer is NULL the function will return SDL_FALSE. + * + * \param A an SDL_Rect structure representing the first rectangle + * \param B an SDL_Rect structure representing the second rectangle + * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_IntersectRect + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasIntersection(const SDL_Rect * A, + const SDL_Rect * B); + +/** + * Calculate the intersection of two rectangles. + * + * If `result` is NULL then this function will return SDL_FALSE. + * + * \param A an SDL_Rect structure representing the first rectangle + * \param B an SDL_Rect structure representing the second rectangle + * \param result an SDL_Rect structure filled in with the intersection of + * rectangles `A` and `B` + * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HasIntersection + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IntersectRect(const SDL_Rect * A, + const SDL_Rect * B, + SDL_Rect * result); + +/** + * Calculate the union of two rectangles. + * + * \param A an SDL_Rect structure representing the first rectangle + * \param B an SDL_Rect structure representing the second rectangle + * \param result an SDL_Rect structure filled in with the union of rectangles + * `A` and `B` + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC void SDLCALL SDL_UnionRect(const SDL_Rect * A, + const SDL_Rect * B, + SDL_Rect * result); + +/** + * Calculate a minimal rectangle enclosing a set of points. + * + * If `clip` is not NULL then only points inside of the clipping rectangle are + * considered. + * + * \param points an array of SDL_Point structures representing points to be + * enclosed + * \param count the number of structures in the `points` array + * \param clip an SDL_Rect used for clipping or NULL to enclose all points + * \param result an SDL_Rect structure filled in with the minimal enclosing + * rectangle + * \returns SDL_TRUE if any points were enclosed or SDL_FALSE if all the + * points were outside of the clipping rectangle. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_EnclosePoints(const SDL_Point * points, + int count, + const SDL_Rect * clip, + SDL_Rect * result); + +/** + * Calculate the intersection of a rectangle and line segment. + * + * This function is used to clip a line segment to a rectangle. A line segment + * contained entirely within the rectangle or that does not intersect will + * remain unchanged. A line segment that crosses the rectangle at either or + * both ends will be clipped to the boundary of the rectangle and the new + * coordinates saved in `X1`, `Y1`, `X2`, and/or `Y2` as necessary. + * + * \param rect an SDL_Rect structure representing the rectangle to intersect + * \param X1 a pointer to the starting X-coordinate of the line + * \param Y1 a pointer to the starting Y-coordinate of the line + * \param X2 a pointer to the ending X-coordinate of the line + * \param Y2 a pointer to the ending Y-coordinate of the line + * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IntersectRectAndLine(const SDL_Rect * + rect, int *X1, + int *Y1, int *X2, + int *Y2); + + +/* SDL_FRect versions... */ + +/** + * Returns true if point resides inside a rectangle. + */ +SDL_FORCE_INLINE SDL_bool SDL_PointInFRect(const SDL_FPoint *p, const SDL_FRect *r) +{ + return ( (p->x >= r->x) && (p->x < (r->x + r->w)) && + (p->y >= r->y) && (p->y < (r->y + r->h)) ) ? SDL_TRUE : SDL_FALSE; +} + +/** + * Returns true if the rectangle has no area. + */ +SDL_FORCE_INLINE SDL_bool SDL_FRectEmpty(const SDL_FRect *r) +{ + return ((!r) || (r->w <= 0.0f) || (r->h <= 0.0f)) ? SDL_TRUE : SDL_FALSE; +} + +/** + * Returns true if the two rectangles are equal, within some given epsilon. + * + * \since This function is available since SDL 2.0.22. + */ +SDL_FORCE_INLINE SDL_bool SDL_FRectEqualsEpsilon(const SDL_FRect *a, const SDL_FRect *b, const float epsilon) +{ + return (a && b && ((a == b) || + ((SDL_fabsf(a->x - b->x) <= epsilon) && + (SDL_fabsf(a->y - b->y) <= epsilon) && + (SDL_fabsf(a->w - b->w) <= epsilon) && + (SDL_fabsf(a->h - b->h) <= epsilon)))) + ? SDL_TRUE : SDL_FALSE; +} + +/** + * Returns true if the two rectangles are equal, using a default epsilon. + * + * \since This function is available since SDL 2.0.22. + */ +SDL_FORCE_INLINE SDL_bool SDL_FRectEquals(const SDL_FRect *a, const SDL_FRect *b) +{ + return SDL_FRectEqualsEpsilon(a, b, SDL_FLT_EPSILON); +} + +/** + * Determine whether two rectangles intersect with float precision. + * + * If either pointer is NULL the function will return SDL_FALSE. + * + * \param A an SDL_FRect structure representing the first rectangle + * \param B an SDL_FRect structure representing the second rectangle + * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.22. + * + * \sa SDL_IntersectRect + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasIntersectionF(const SDL_FRect * A, + const SDL_FRect * B); + +/** + * Calculate the intersection of two rectangles with float precision. + * + * If `result` is NULL then this function will return SDL_FALSE. + * + * \param A an SDL_FRect structure representing the first rectangle + * \param B an SDL_FRect structure representing the second rectangle + * \param result an SDL_FRect structure filled in with the intersection of + * rectangles `A` and `B` + * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.22. + * + * \sa SDL_HasIntersectionF + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IntersectFRect(const SDL_FRect * A, + const SDL_FRect * B, + SDL_FRect * result); + +/** + * Calculate the union of two rectangles with float precision. + * + * \param A an SDL_FRect structure representing the first rectangle + * \param B an SDL_FRect structure representing the second rectangle + * \param result an SDL_FRect structure filled in with the union of rectangles + * `A` and `B` + * + * \since This function is available since SDL 2.0.22. + */ +extern DECLSPEC void SDLCALL SDL_UnionFRect(const SDL_FRect * A, + const SDL_FRect * B, + SDL_FRect * result); + +/** + * Calculate a minimal rectangle enclosing a set of points with float + * precision. + * + * If `clip` is not NULL then only points inside of the clipping rectangle are + * considered. + * + * \param points an array of SDL_FPoint structures representing points to be + * enclosed + * \param count the number of structures in the `points` array + * \param clip an SDL_FRect used for clipping or NULL to enclose all points + * \param result an SDL_FRect structure filled in with the minimal enclosing + * rectangle + * \returns SDL_TRUE if any points were enclosed or SDL_FALSE if all the + * points were outside of the clipping rectangle. + * + * \since This function is available since SDL 2.0.22. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_EncloseFPoints(const SDL_FPoint * points, + int count, + const SDL_FRect * clip, + SDL_FRect * result); + +/** + * Calculate the intersection of a rectangle and line segment with float + * precision. + * + * This function is used to clip a line segment to a rectangle. A line segment + * contained entirely within the rectangle or that does not intersect will + * remain unchanged. A line segment that crosses the rectangle at either or + * both ends will be clipped to the boundary of the rectangle and the new + * coordinates saved in `X1`, `Y1`, `X2`, and/or `Y2` as necessary. + * + * \param rect an SDL_FRect structure representing the rectangle to intersect + * \param X1 a pointer to the starting X-coordinate of the line + * \param Y1 a pointer to the starting Y-coordinate of the line + * \param X2 a pointer to the ending X-coordinate of the line + * \param Y2 a pointer to the ending Y-coordinate of the line + * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.22. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IntersectFRectAndLine(const SDL_FRect * + rect, float *X1, + float *Y1, float *X2, + float *Y2); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_rect_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..970897d54c045bbf43c844669db2429e292ab7ab GIT binary patch literal 28601 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_render.h + * + * Header file for SDL 2D rendering functions. + * + * This API supports the following features: + * * single pixel points + * * single pixel lines + * * filled rectangles + * * texture images + * + * The primitives may be drawn in opaque, blended, or additive modes. + * + * The texture images may be drawn in opaque, blended, or additive modes. + * They can have an additional color tint or alpha modulation applied to + * them, and may also be stretched with linear interpolation. + * + * This API is designed to accelerate simple 2D operations. You may + * want more functionality such as polygons and particle effects and + * in that case you should use SDL's OpenGL/Direct3D support or one + * of the many good 3D engines. + * + * These functions must be called from the main thread. + * See this bug for details: http://bugzilla.libsdl.org/show_bug.cgi?id=1995 + */ + +#ifndef SDL_render_h_ +#define SDL_render_h_ + +#include "SDL_stdinc.h" +#include "SDL_rect.h" +#include "SDL_video.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Flags used when creating a rendering context + */ +typedef enum +{ + SDL_RENDERER_SOFTWARE = 0x00000001, /**< The renderer is a software fallback */ + SDL_RENDERER_ACCELERATED = 0x00000002, /**< The renderer uses hardware + acceleration */ + SDL_RENDERER_PRESENTVSYNC = 0x00000004, /**< Present is synchronized + with the refresh rate */ + SDL_RENDERER_TARGETTEXTURE = 0x00000008 /**< The renderer supports + rendering to texture */ +} SDL_RendererFlags; + +/** + * Information on the capabilities of a render driver or context. + */ +typedef struct SDL_RendererInfo +{ + const char *name; /**< The name of the renderer */ + Uint32 flags; /**< Supported ::SDL_RendererFlags */ + Uint32 num_texture_formats; /**< The number of available texture formats */ + Uint32 texture_formats[16]; /**< The available texture formats */ + int max_texture_width; /**< The maximum texture width */ + int max_texture_height; /**< The maximum texture height */ +} SDL_RendererInfo; + +/** + * Vertex structure + */ +typedef struct SDL_Vertex +{ + SDL_FPoint position; /**< Vertex position, in SDL_Renderer coordinates */ + SDL_Color color; /**< Vertex color */ + SDL_FPoint tex_coord; /**< Normalized texture coordinates, if needed */ +} SDL_Vertex; + +/** + * The scaling mode for a texture. + */ +typedef enum +{ + SDL_ScaleModeNearest, /**< nearest pixel sampling */ + SDL_ScaleModeLinear, /**< linear filtering */ + SDL_ScaleModeBest /**< anisotropic filtering */ +} SDL_ScaleMode; + +/** + * The access pattern allowed for a texture. + */ +typedef enum +{ + SDL_TEXTUREACCESS_STATIC, /**< Changes rarely, not lockable */ + SDL_TEXTUREACCESS_STREAMING, /**< Changes frequently, lockable */ + SDL_TEXTUREACCESS_TARGET /**< Texture can be used as a render target */ +} SDL_TextureAccess; + +/** + * The texture channel modulation used in SDL_RenderCopy(). + */ +typedef enum +{ + SDL_TEXTUREMODULATE_NONE = 0x00000000, /**< No modulation */ + SDL_TEXTUREMODULATE_COLOR = 0x00000001, /**< srcC = srcC * color */ + SDL_TEXTUREMODULATE_ALPHA = 0x00000002 /**< srcA = srcA * alpha */ +} SDL_TextureModulate; + +/** + * Flip constants for SDL_RenderCopyEx + */ +typedef enum +{ + SDL_FLIP_NONE = 0x00000000, /**< Do not flip */ + SDL_FLIP_HORIZONTAL = 0x00000001, /**< flip horizontally */ + SDL_FLIP_VERTICAL = 0x00000002 /**< flip vertically */ +} SDL_RendererFlip; + +/** + * A structure representing rendering state + */ +struct SDL_Renderer; +typedef struct SDL_Renderer SDL_Renderer; + +/** + * An efficient driver-specific representation of pixel data + */ +struct SDL_Texture; +typedef struct SDL_Texture SDL_Texture; + +/* Function prototypes */ + +/** + * Get the number of 2D rendering drivers available for the current display. + * + * A render driver is a set of code that handles rendering and texture + * management on a particular display. Normally there is only one, but some + * drivers may have several available with different capabilities. + * + * There may be none if SDL was compiled without render support. + * + * \returns a number >= 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRenderer + * \sa SDL_GetRenderDriverInfo + */ +extern DECLSPEC int SDLCALL SDL_GetNumRenderDrivers(void); + +/** + * Get info about a specific 2D rendering driver for the current display. + * + * \param index the index of the driver to query information about + * \param info an SDL_RendererInfo structure to be filled with information on + * the rendering driver + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRenderer + * \sa SDL_GetNumRenderDrivers + */ +extern DECLSPEC int SDLCALL SDL_GetRenderDriverInfo(int index, + SDL_RendererInfo * info); + +/** + * Create a window and default renderer. + * + * \param width the width of the window + * \param height the height of the window + * \param window_flags the flags used to create the window (see + * SDL_CreateWindow()) + * \param window a pointer filled with the window, or NULL on error + * \param renderer a pointer filled with the renderer, or NULL on error + * \returns 0 on success, or -1 on error; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRenderer + * \sa SDL_CreateWindow + */ +extern DECLSPEC int SDLCALL SDL_CreateWindowAndRenderer( + int width, int height, Uint32 window_flags, + SDL_Window **window, SDL_Renderer **renderer); + + +/** + * Create a 2D rendering context for a window. + * + * \param window the window where rendering is displayed + * \param index the index of the rendering driver to initialize, or -1 to + * initialize the first one supporting the requested flags + * \param flags 0, or one or more SDL_RendererFlags OR'd together + * \returns a valid rendering context or NULL if there was an error; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateSoftwareRenderer + * \sa SDL_DestroyRenderer + * \sa SDL_GetNumRenderDrivers + * \sa SDL_GetRendererInfo + */ +extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRenderer(SDL_Window * window, + int index, Uint32 flags); + +/** + * Create a 2D software rendering context for a surface. + * + * Two other API which can be used to create SDL_Renderer: + * SDL_CreateRenderer() and SDL_CreateWindowAndRenderer(). These can _also_ + * create a software renderer, but they are intended to be used with an + * SDL_Window as the final destination and not an SDL_Surface. + * + * \param surface the SDL_Surface structure representing the surface where + * rendering is done + * \returns a valid rendering context or NULL if there was an error; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRenderer + * \sa SDL_CreateWindowRenderer + * \sa SDL_DestroyRenderer + */ +extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateSoftwareRenderer(SDL_Surface * surface); + +/** + * Get the renderer associated with a window. + * + * \param window the window to query + * \returns the rendering context on success or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRenderer + */ +extern DECLSPEC SDL_Renderer * SDLCALL SDL_GetRenderer(SDL_Window * window); + +/** + * Get the window associated with a renderer. + * + * \param renderer the renderer to query + * \returns the window on success or NULL on failure; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.22. + */ +extern DECLSPEC SDL_Window * SDLCALL SDL_RenderGetWindow(SDL_Renderer *renderer); + +/** + * Get information about a rendering context. + * + * \param renderer the rendering context + * \param info an SDL_RendererInfo structure filled with information about the + * current renderer + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRenderer + */ +extern DECLSPEC int SDLCALL SDL_GetRendererInfo(SDL_Renderer * renderer, + SDL_RendererInfo * info); + +/** + * Get the output size in pixels of a rendering context. + * + * Due to high-dpi displays, you might end up with a rendering context that + * has more pixels than the window that contains it, so use this instead of + * SDL_GetWindowSize() to decide how much drawing area you have. + * + * \param renderer the rendering context + * \param w an int filled with the width + * \param h an int filled with the height + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRenderer + */ +extern DECLSPEC int SDLCALL SDL_GetRendererOutputSize(SDL_Renderer * renderer, + int *w, int *h); + +/** + * Create a texture for a rendering context. + * + * You can set the texture scaling method by setting + * `SDL_HINT_RENDER_SCALE_QUALITY` before creating the texture. + * + * \param renderer the rendering context + * \param format one of the enumerated values in SDL_PixelFormatEnum + * \param access one of the enumerated values in SDL_TextureAccess + * \param w the width of the texture in pixels + * \param h the height of the texture in pixels + * \returns a pointer to the created texture or NULL if no rendering context + * was active, the format was unsupported, or the width or height + * were out of range; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateTextureFromSurface + * \sa SDL_DestroyTexture + * \sa SDL_QueryTexture + * \sa SDL_UpdateTexture + */ +extern DECLSPEC SDL_Texture * SDLCALL SDL_CreateTexture(SDL_Renderer * renderer, + Uint32 format, + int access, int w, + int h); + +/** + * Create a texture from an existing surface. + * + * The surface is not modified or freed by this function. + * + * The SDL_TextureAccess hint for the created texture is + * `SDL_TEXTUREACCESS_STATIC`. + * + * The pixel format of the created texture may be different from the pixel + * format of the surface. Use SDL_QueryTexture() to query the pixel format of + * the texture. + * + * \param renderer the rendering context + * \param surface the SDL_Surface structure containing pixel data used to fill + * the texture + * \returns the created texture or NULL on failure; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateTexture + * \sa SDL_DestroyTexture + * \sa SDL_QueryTexture + */ +extern DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureFromSurface(SDL_Renderer * renderer, SDL_Surface * surface); + +/** + * Query the attributes of a texture. + * + * \param texture the texture to query + * \param format a pointer filled in with the raw format of the texture; the + * actual format may differ, but pixel transfers will use this + * format (one of the SDL_PixelFormatEnum values). This argument + * can be NULL if you don't need this information. + * \param access a pointer filled in with the actual access to the texture + * (one of the SDL_TextureAccess values). This argument can be + * NULL if you don't need this information. + * \param w a pointer filled in with the width of the texture in pixels. This + * argument can be NULL if you don't need this information. + * \param h a pointer filled in with the height of the texture in pixels. This + * argument can be NULL if you don't need this information. + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateTexture + */ +extern DECLSPEC int SDLCALL SDL_QueryTexture(SDL_Texture * texture, + Uint32 * format, int *access, + int *w, int *h); + +/** + * Set an additional color value multiplied into render copy operations. + * + * When this texture is rendered, during the copy operation each source color + * channel is modulated by the appropriate color value according to the + * following formula: + * + * `srcC = srcC * (color / 255)` + * + * Color modulation is not always supported by the renderer; it will return -1 + * if color modulation is not supported. + * + * \param texture the texture to update + * \param r the red color value multiplied into copy operations + * \param g the green color value multiplied into copy operations + * \param b the blue color value multiplied into copy operations + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetTextureColorMod + * \sa SDL_SetTextureAlphaMod + */ +extern DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture * texture, + Uint8 r, Uint8 g, Uint8 b); + + +/** + * Get the additional color value multiplied into render copy operations. + * + * \param texture the texture to query + * \param r a pointer filled in with the current red color value + * \param g a pointer filled in with the current green color value + * \param b a pointer filled in with the current blue color value + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetTextureAlphaMod + * \sa SDL_SetTextureColorMod + */ +extern DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture * texture, + Uint8 * r, Uint8 * g, + Uint8 * b); + +/** + * Set an additional alpha value multiplied into render copy operations. + * + * When this texture is rendered, during the copy operation the source alpha + * value is modulated by this alpha value according to the following formula: + * + * `srcA = srcA * (alpha / 255)` + * + * Alpha modulation is not always supported by the renderer; it will return -1 + * if alpha modulation is not supported. + * + * \param texture the texture to update + * \param alpha the source alpha value multiplied into copy operations + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetTextureAlphaMod + * \sa SDL_SetTextureColorMod + */ +extern DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture * texture, + Uint8 alpha); + +/** + * Get the additional alpha value multiplied into render copy operations. + * + * \param texture the texture to query + * \param alpha a pointer filled in with the current alpha value + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetTextureColorMod + * \sa SDL_SetTextureAlphaMod + */ +extern DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture * texture, + Uint8 * alpha); + +/** + * Set the blend mode for a texture, used by SDL_RenderCopy(). + * + * If the blend mode is not supported, the closest supported mode is chosen + * and this function returns -1. + * + * \param texture the texture to update + * \param blendMode the SDL_BlendMode to use for texture blending + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetTextureBlendMode + * \sa SDL_RenderCopy + */ +extern DECLSPEC int SDLCALL SDL_SetTextureBlendMode(SDL_Texture * texture, + SDL_BlendMode blendMode); + +/** + * Get the blend mode used for texture copy operations. + * + * \param texture the texture to query + * \param blendMode a pointer filled in with the current SDL_BlendMode + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetTextureBlendMode + */ +extern DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture * texture, + SDL_BlendMode *blendMode); + +/** + * Set the scale mode used for texture scale operations. + * + * If the scale mode is not supported, the closest supported mode is chosen. + * + * \param texture The texture to update. + * \param scaleMode the SDL_ScaleMode to use for texture scaling. + * \returns 0 on success, or -1 if the texture is not valid. + * + * \since This function is available since SDL 2.0.12. + * + * \sa SDL_GetTextureScaleMode + */ +extern DECLSPEC int SDLCALL SDL_SetTextureScaleMode(SDL_Texture * texture, + SDL_ScaleMode scaleMode); + +/** + * Get the scale mode used for texture scale operations. + * + * \param texture the texture to query. + * \param scaleMode a pointer filled in with the current scale mode. + * \return 0 on success, or -1 if the texture is not valid. + * + * \since This function is available since SDL 2.0.12. + * + * \sa SDL_SetTextureScaleMode + */ +extern DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture * texture, + SDL_ScaleMode *scaleMode); + +/** + * Associate a user-specified pointer with a texture. + * + * \param texture the texture to update. + * \param userdata the pointer to associate with the texture. + * \returns 0 on success, or -1 if the texture is not valid. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_GetTextureUserData + */ +extern DECLSPEC int SDLCALL SDL_SetTextureUserData(SDL_Texture * texture, + void *userdata); + +/** + * Get the user-specified pointer associated with a texture + * + * \param texture the texture to query. + * \return the pointer associated with the texture, or NULL if the texture is + * not valid. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_SetTextureUserData + */ +extern DECLSPEC void * SDLCALL SDL_GetTextureUserData(SDL_Texture * texture); + +/** + * Update the given texture rectangle with new pixel data. + * + * The pixel data must be in the pixel format of the texture. Use + * SDL_QueryTexture() to query the pixel format of the texture. + * + * This is a fairly slow function, intended for use with static textures that + * do not change often. + * + * If the texture is intended to be updated often, it is preferred to create + * the texture as streaming and use the locking functions referenced below. + * While this function will work with streaming textures, for optimization + * reasons you may not get the pixels back if you lock the texture afterward. + * + * \param texture the texture to update + * \param rect an SDL_Rect structure representing the area to update, or NULL + * to update the entire texture + * \param pixels the raw pixel data in the format of the texture + * \param pitch the number of bytes in a row of pixel data, including padding + * between lines + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateTexture + * \sa SDL_LockTexture + * \sa SDL_UnlockTexture + */ +extern DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture * texture, + const SDL_Rect * rect, + const void *pixels, int pitch); + +/** + * Update a rectangle within a planar YV12 or IYUV texture with new pixel + * data. + * + * You can use SDL_UpdateTexture() as long as your pixel data is a contiguous + * block of Y and U/V planes in the proper order, but this function is + * available if your pixel data is not contiguous. + * + * \param texture the texture to update + * \param rect a pointer to the rectangle of pixels to update, or NULL to + * update the entire texture + * \param Yplane the raw pixel data for the Y plane + * \param Ypitch the number of bytes between rows of pixel data for the Y + * plane + * \param Uplane the raw pixel data for the U plane + * \param Upitch the number of bytes between rows of pixel data for the U + * plane + * \param Vplane the raw pixel data for the V plane + * \param Vpitch the number of bytes between rows of pixel data for the V + * plane + * \returns 0 on success or -1 if the texture is not valid; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.1. + * + * \sa SDL_UpdateTexture + */ +extern DECLSPEC int SDLCALL SDL_UpdateYUVTexture(SDL_Texture * texture, + const SDL_Rect * rect, + const Uint8 *Yplane, int Ypitch, + const Uint8 *Uplane, int Upitch, + const Uint8 *Vplane, int Vpitch); + +/** + * Update a rectangle within a planar NV12 or NV21 texture with new pixels. + * + * You can use SDL_UpdateTexture() as long as your pixel data is a contiguous + * block of NV12/21 planes in the proper order, but this function is available + * if your pixel data is not contiguous. + * + * \param texture the texture to update + * \param rect a pointer to the rectangle of pixels to update, or NULL to + * update the entire texture. + * \param Yplane the raw pixel data for the Y plane. + * \param Ypitch the number of bytes between rows of pixel data for the Y + * plane. + * \param UVplane the raw pixel data for the UV plane. + * \param UVpitch the number of bytes between rows of pixel data for the UV + * plane. + * \return 0 on success, or -1 if the texture is not valid. + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture * texture, + const SDL_Rect * rect, + const Uint8 *Yplane, int Ypitch, + const Uint8 *UVplane, int UVpitch); + +/** + * Lock a portion of the texture for **write-only** pixel access. + * + * As an optimization, the pixels made available for editing don't necessarily + * contain the old texture data. This is a write-only operation, and if you + * need to keep a copy of the texture data you should do that at the + * application level. + * + * You must use SDL_UnlockTexture() to unlock the pixels and apply any + * changes. + * + * \param texture the texture to lock for access, which was created with + * `SDL_TEXTUREACCESS_STREAMING` + * \param rect an SDL_Rect structure representing the area to lock for access; + * NULL to lock the entire texture + * \param pixels this is filled in with a pointer to the locked pixels, + * appropriately offset by the locked area + * \param pitch this is filled in with the pitch of the locked pixels; the + * pitch is the length of one row in bytes + * \returns 0 on success or a negative error code if the texture is not valid + * or was not created with `SDL_TEXTUREACCESS_STREAMING`; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_UnlockTexture + */ +extern DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture * texture, + const SDL_Rect * rect, + void **pixels, int *pitch); + +/** + * Lock a portion of the texture for **write-only** pixel access, and expose + * it as a SDL surface. + * + * Besides providing an SDL_Surface instead of raw pixel data, this function + * operates like SDL_LockTexture. + * + * As an optimization, the pixels made available for editing don't necessarily + * contain the old texture data. This is a write-only operation, and if you + * need to keep a copy of the texture data you should do that at the + * application level. + * + * You must use SDL_UnlockTexture() to unlock the pixels and apply any + * changes. + * + * The returned surface is freed internally after calling SDL_UnlockTexture() + * or SDL_DestroyTexture(). The caller should not free it. + * + * \param texture the texture to lock for access, which was created with + * `SDL_TEXTUREACCESS_STREAMING` + * \param rect a pointer to the rectangle to lock for access. If the rect is + * NULL, the entire texture will be locked + * \param surface this is filled in with an SDL surface representing the + * locked area + * \returns 0 on success, or -1 if the texture is not valid or was not created + * with `SDL_TEXTUREACCESS_STREAMING` + * + * \since This function is available since SDL 2.0.12. + * + * \sa SDL_LockTexture + * \sa SDL_UnlockTexture + */ +extern DECLSPEC int SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture, + const SDL_Rect *rect, + SDL_Surface **surface); + +/** + * Unlock a texture, uploading the changes to video memory, if needed. + * + * **Warning**: Please note that SDL_LockTexture() is intended to be + * write-only; it will not guarantee the previous contents of the texture will + * be provided. You must fully initialize any area of a texture that you lock + * before unlocking it, as the pixels might otherwise be uninitialized memory. + * + * Which is to say: locking and immediately unlocking a texture can result in + * corrupted textures, depending on the renderer in use. + * + * \param texture a texture locked by SDL_LockTexture() + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LockTexture + */ +extern DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture * texture); + +/** + * Determine whether a renderer supports the use of render targets. + * + * \param renderer the renderer that will be checked + * \returns SDL_TRUE if supported or SDL_FALSE if not. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetRenderTarget + */ +extern DECLSPEC SDL_bool SDLCALL SDL_RenderTargetSupported(SDL_Renderer *renderer); + +/** + * Set a texture as the current rendering target. + * + * Before using this function, you should check the + * `SDL_RENDERER_TARGETTEXTURE` bit in the flags of SDL_RendererInfo to see if + * render targets are supported. + * + * The default render target is the window for which the renderer was created. + * To stop rendering to a texture and render to the window again, call this + * function with a NULL `texture`. + * + * \param renderer the rendering context + * \param texture the targeted texture, which must be created with the + * `SDL_TEXTUREACCESS_TARGET` flag, or NULL to render to the + * window instead of a texture. + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRenderTarget + */ +extern DECLSPEC int SDLCALL SDL_SetRenderTarget(SDL_Renderer *renderer, + SDL_Texture *texture); + +/** + * Get the current render target. + * + * The default render target is the window for which the renderer was created, + * and is reported a NULL here. + * + * \param renderer the rendering context + * \returns the current render target or NULL for the default render target. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetRenderTarget + */ +extern DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *renderer); + +/** + * Set a device independent resolution for rendering. + * + * This function uses the viewport and scaling functionality to allow a fixed + * logical resolution for rendering, regardless of the actual output + * resolution. If the actual output resolution doesn't have the same aspect + * ratio the output rendering will be centered within the output display. + * + * If the output display is a window, mouse and touch events in the window + * will be filtered and scaled so they seem to arrive within the logical + * resolution. The SDL_HINT_MOUSE_RELATIVE_SCALING hint controls whether + * relative motion events are also scaled. + * + * If this function results in scaling or subpixel drawing by the rendering + * backend, it will be handled using the appropriate quality hints. + * + * \param renderer the renderer for which resolution should be set + * \param w the width of the logical resolution + * \param h the height of the logical resolution + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderGetLogicalSize + */ +extern DECLSPEC int SDLCALL SDL_RenderSetLogicalSize(SDL_Renderer * renderer, int w, int h); + +/** + * Get device independent resolution for rendering. + * + * When using the main rendering target (eg no target texture is set): this + * may return 0 for `w` and `h` if the SDL_Renderer has never had its logical + * size set by SDL_RenderSetLogicalSize(). Otherwise it returns the logical + * width and height. + * + * When using a target texture: Never return 0 for `w` and `h` at first. Then + * it returns the logical width and height that are set. + * + * \param renderer a rendering context + * \param w an int to be filled with the width + * \param h an int to be filled with the height + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderSetLogicalSize + */ +extern DECLSPEC void SDLCALL SDL_RenderGetLogicalSize(SDL_Renderer * renderer, int *w, int *h); + +/** + * Set whether to force integer scales for resolution-independent rendering. + * + * This function restricts the logical viewport to integer values - that is, + * when a resolution is between two multiples of a logical size, the viewport + * size is rounded down to the lower multiple. + * + * \param renderer the renderer for which integer scaling should be set + * \param enable enable or disable the integer scaling for rendering + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_RenderGetIntegerScale + * \sa SDL_RenderSetLogicalSize + */ +extern DECLSPEC int SDLCALL SDL_RenderSetIntegerScale(SDL_Renderer * renderer, + SDL_bool enable); + +/** + * Get whether integer scales are forced for resolution-independent rendering. + * + * \param renderer the renderer from which integer scaling should be queried + * \returns SDL_TRUE if integer scales are forced or SDL_FALSE if not and on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_RenderSetIntegerScale + */ +extern DECLSPEC SDL_bool SDLCALL SDL_RenderGetIntegerScale(SDL_Renderer * renderer); + +/** + * Set the drawing area for rendering on the current target. + * + * When the window is resized, the viewport is reset to fill the entire new + * window size. + * + * \param renderer the rendering context + * \param rect the SDL_Rect structure representing the drawing area, or NULL + * to set the viewport to the entire target + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderGetViewport + */ +extern DECLSPEC int SDLCALL SDL_RenderSetViewport(SDL_Renderer * renderer, + const SDL_Rect * rect); + +/** + * Get the drawing area for the current target. + * + * \param renderer the rendering context + * \param rect an SDL_Rect structure filled in with the current drawing area + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderSetViewport + */ +extern DECLSPEC void SDLCALL SDL_RenderGetViewport(SDL_Renderer * renderer, + SDL_Rect * rect); + +/** + * Set the clip rectangle for rendering on the specified target. + * + * \param renderer the rendering context for which clip rectangle should be + * set + * \param rect an SDL_Rect structure representing the clip area, relative to + * the viewport, or NULL to disable clipping + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderGetClipRect + * \sa SDL_RenderIsClipEnabled + */ +extern DECLSPEC int SDLCALL SDL_RenderSetClipRect(SDL_Renderer * renderer, + const SDL_Rect * rect); + +/** + * Get the clip rectangle for the current target. + * + * \param renderer the rendering context from which clip rectangle should be + * queried + * \param rect an SDL_Rect structure filled in with the current clipping area + * or an empty rectangle if clipping is disabled + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderIsClipEnabled + * \sa SDL_RenderSetClipRect + */ +extern DECLSPEC void SDLCALL SDL_RenderGetClipRect(SDL_Renderer * renderer, + SDL_Rect * rect); + +/** + * Get whether clipping is enabled on the given renderer. + * + * \param renderer the renderer from which clip state should be queried + * \returns SDL_TRUE if clipping is enabled or SDL_FALSE if not; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_RenderGetClipRect + * \sa SDL_RenderSetClipRect + */ +extern DECLSPEC SDL_bool SDLCALL SDL_RenderIsClipEnabled(SDL_Renderer * renderer); + + +/** + * Set the drawing scale for rendering on the current target. + * + * The drawing coordinates are scaled by the x/y scaling factors before they + * are used by the renderer. This allows resolution independent drawing with a + * single coordinate system. + * + * If this results in scaling or subpixel drawing by the rendering backend, it + * will be handled using the appropriate quality hints. For best results use + * integer scaling factors. + * + * \param renderer a rendering context + * \param scaleX the horizontal scaling factor + * \param scaleY the vertical scaling factor + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderGetScale + * \sa SDL_RenderSetLogicalSize + */ +extern DECLSPEC int SDLCALL SDL_RenderSetScale(SDL_Renderer * renderer, + float scaleX, float scaleY); + +/** + * Get the drawing scale for the current target. + * + * \param renderer the renderer from which drawing scale should be queried + * \param scaleX a pointer filled in with the horizontal scaling factor + * \param scaleY a pointer filled in with the vertical scaling factor + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderSetScale + */ +extern DECLSPEC void SDLCALL SDL_RenderGetScale(SDL_Renderer * renderer, + float *scaleX, float *scaleY); + +/** + * Get logical coordinates of point in renderer when given real coordinates of + * point in window. + * + * Logical coordinates will differ from real coordinates when render is scaled + * and logical renderer size set + * + * \param renderer the renderer from which the logical coordinates should be + * calculated + * \param windowX the real X coordinate in the window + * \param windowY the real Y coordinate in the window + * \param logicalX the pointer filled with the logical x coordinate + * \param logicalY the pointer filled with the logical y coordinate + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_RenderGetScale + * \sa SDL_RenderSetScale + * \sa SDL_RenderGetLogicalSize + * \sa SDL_RenderSetLogicalSize + */ +extern DECLSPEC void SDLCALL SDL_RenderWindowToLogical(SDL_Renderer * renderer, + int windowX, int windowY, + float *logicalX, float *logicalY); + + +/** + * Get real coordinates of point in window when given logical coordinates of + * point in renderer. + * + * Logical coordinates will differ from real coordinates when render is scaled + * and logical renderer size set + * + * \param renderer the renderer from which the window coordinates should be + * calculated + * \param logicalX the logical x coordinate + * \param logicalY the logical y coordinate + * \param windowX the pointer filled with the real X coordinate in the window + * \param windowY the pointer filled with the real Y coordinate in the window + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_RenderGetScale + * \sa SDL_RenderSetScale + * \sa SDL_RenderGetLogicalSize + * \sa SDL_RenderSetLogicalSize + */ +extern DECLSPEC void SDLCALL SDL_RenderLogicalToWindow(SDL_Renderer * renderer, + float logicalX, float logicalY, + int *windowX, int *windowY); + +/** + * Set the color used for drawing operations (Rect, Line and Clear). + * + * Set the color for drawing or filling rectangles, lines, and points, and for + * SDL_RenderClear(). + * + * \param renderer the rendering context + * \param r the red value used to draw on the rendering target + * \param g the green value used to draw on the rendering target + * \param b the blue value used to draw on the rendering target + * \param a the alpha value used to draw on the rendering target; usually + * `SDL_ALPHA_OPAQUE` (255). Use SDL_SetRenderDrawBlendMode to + * specify how the alpha channel is used + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRenderDrawColor + * \sa SDL_RenderClear + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + */ +extern DECLSPEC int SDLCALL SDL_SetRenderDrawColor(SDL_Renderer * renderer, + Uint8 r, Uint8 g, Uint8 b, + Uint8 a); + +/** + * Get the color used for drawing operations (Rect, Line and Clear). + * + * \param renderer the rendering context + * \param r a pointer filled in with the red value used to draw on the + * rendering target + * \param g a pointer filled in with the green value used to draw on the + * rendering target + * \param b a pointer filled in with the blue value used to draw on the + * rendering target + * \param a a pointer filled in with the alpha value used to draw on the + * rendering target; usually `SDL_ALPHA_OPAQUE` (255) + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_GetRenderDrawColor(SDL_Renderer * renderer, + Uint8 * r, Uint8 * g, Uint8 * b, + Uint8 * a); + +/** + * Set the blend mode used for drawing operations (Fill and Line). + * + * If the blend mode is not supported, the closest supported mode is chosen. + * + * \param renderer the rendering context + * \param blendMode the SDL_BlendMode to use for blending + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRenderDrawBlendMode + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + */ +extern DECLSPEC int SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer * renderer, + SDL_BlendMode blendMode); + +/** + * Get the blend mode used for drawing operations. + * + * \param renderer the rendering context + * \param blendMode a pointer filled in with the current SDL_BlendMode + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetRenderDrawBlendMode + */ +extern DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer * renderer, + SDL_BlendMode *blendMode); + +/** + * Clear the current rendering target with the drawing color. + * + * This function clears the entire rendering target, ignoring the viewport and + * the clip rectangle. + * + * \param renderer the rendering context + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer * renderer); + +/** + * Draw a point on the current rendering target. + * + * SDL_RenderDrawPoint() draws a single point. If you want to draw multiple, + * use SDL_RenderDrawPoints() instead. + * + * \param renderer the rendering context + * \param x the x coordinate of the point + * \param y the y coordinate of the point + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + * \sa SDL_RenderPresent + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawPoint(SDL_Renderer * renderer, + int x, int y); + +/** + * Draw multiple points on the current rendering target. + * + * \param renderer the rendering context + * \param points an array of SDL_Point structures that represent the points to + * draw + * \param count the number of points to draw + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + * \sa SDL_RenderPresent + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawPoints(SDL_Renderer * renderer, + const SDL_Point * points, + int count); + +/** + * Draw a line on the current rendering target. + * + * SDL_RenderDrawLine() draws the line to include both end points. If you want + * to draw multiple, connecting lines use SDL_RenderDrawLines() instead. + * + * \param renderer the rendering context + * \param x1 the x coordinate of the start point + * \param y1 the y coordinate of the start point + * \param x2 the x coordinate of the end point + * \param y2 the y coordinate of the end point + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + * \sa SDL_RenderPresent + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawLine(SDL_Renderer * renderer, + int x1, int y1, int x2, int y2); + +/** + * Draw a series of connected lines on the current rendering target. + * + * \param renderer the rendering context + * \param points an array of SDL_Point structures representing points along + * the lines + * \param count the number of points, drawing count-1 lines + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + * \sa SDL_RenderPresent + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawLines(SDL_Renderer * renderer, + const SDL_Point * points, + int count); + +/** + * Draw a rectangle on the current rendering target. + * + * \param renderer the rendering context + * \param rect an SDL_Rect structure representing the rectangle to draw, or + * NULL to outline the entire rendering target + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + * \sa SDL_RenderPresent + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawRect(SDL_Renderer * renderer, + const SDL_Rect * rect); + +/** + * Draw some number of rectangles on the current rendering target. + * + * \param renderer the rendering context + * \param rects an array of SDL_Rect structures representing the rectangles to + * be drawn + * \param count the number of rectangles + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + * \sa SDL_RenderPresent + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawRects(SDL_Renderer * renderer, + const SDL_Rect * rects, + int count); + +/** + * Fill a rectangle on the current rendering target with the drawing color. + * + * The current drawing color is set by SDL_SetRenderDrawColor(), and the + * color's alpha value is ignored unless blending is enabled with the + * appropriate call to SDL_SetRenderDrawBlendMode(). + * + * \param renderer the rendering context + * \param rect the SDL_Rect structure representing the rectangle to fill, or + * NULL for the entire rendering target + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRects + * \sa SDL_RenderPresent + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer * renderer, + const SDL_Rect * rect); + +/** + * Fill some number of rectangles on the current rendering target with the + * drawing color. + * + * \param renderer the rendering context + * \param rects an array of SDL_Rect structures representing the rectangles to + * be filled + * \param count the number of rectangles + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderPresent + */ +extern DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer * renderer, + const SDL_Rect * rects, + int count); + +/** + * Copy a portion of the texture to the current rendering target. + * + * The texture is blended with the destination based on its blend mode set + * with SDL_SetTextureBlendMode(). + * + * The texture color is affected based on its color modulation set by + * SDL_SetTextureColorMod(). + * + * The texture alpha is affected based on its alpha modulation set by + * SDL_SetTextureAlphaMod(). + * + * \param renderer the rendering context + * \param texture the source texture + * \param srcrect the source SDL_Rect structure or NULL for the entire texture + * \param dstrect the destination SDL_Rect structure or NULL for the entire + * rendering target; the texture will be stretched to fill the + * given rectangle + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderCopyEx + * \sa SDL_SetTextureAlphaMod + * \sa SDL_SetTextureBlendMode + * \sa SDL_SetTextureColorMod + */ +extern DECLSPEC int SDLCALL SDL_RenderCopy(SDL_Renderer * renderer, + SDL_Texture * texture, + const SDL_Rect * srcrect, + const SDL_Rect * dstrect); + +/** + * Copy a portion of the texture to the current rendering, with optional + * rotation and flipping. + * + * Copy a portion of the texture to the current rendering target, optionally + * rotating it by angle around the given center and also flipping it + * top-bottom and/or left-right. + * + * The texture is blended with the destination based on its blend mode set + * with SDL_SetTextureBlendMode(). + * + * The texture color is affected based on its color modulation set by + * SDL_SetTextureColorMod(). + * + * The texture alpha is affected based on its alpha modulation set by + * SDL_SetTextureAlphaMod(). + * + * \param renderer the rendering context + * \param texture the source texture + * \param srcrect the source SDL_Rect structure or NULL for the entire texture + * \param dstrect the destination SDL_Rect structure or NULL for the entire + * rendering target + * \param angle an angle in degrees that indicates the rotation that will be + * applied to dstrect, rotating it in a clockwise direction + * \param center a pointer to a point indicating the point around which + * dstrect will be rotated (if NULL, rotation will be done + * around `dstrect.w / 2`, `dstrect.h / 2`) + * \param flip a SDL_RendererFlip value stating which flipping actions should + * be performed on the texture + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderCopy + * \sa SDL_SetTextureAlphaMod + * \sa SDL_SetTextureBlendMode + * \sa SDL_SetTextureColorMod + */ +extern DECLSPEC int SDLCALL SDL_RenderCopyEx(SDL_Renderer * renderer, + SDL_Texture * texture, + const SDL_Rect * srcrect, + const SDL_Rect * dstrect, + const double angle, + const SDL_Point *center, + const SDL_RendererFlip flip); + + +/** + * Draw a point on the current rendering target at subpixel precision. + * + * \param renderer The renderer which should draw a point. + * \param x The x coordinate of the point. + * \param y The y coordinate of the point. + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawPointF(SDL_Renderer * renderer, + float x, float y); + +/** + * Draw multiple points on the current rendering target at subpixel precision. + * + * \param renderer The renderer which should draw multiple points. + * \param points The points to draw + * \param count The number of points to draw + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawPointsF(SDL_Renderer * renderer, + const SDL_FPoint * points, + int count); + +/** + * Draw a line on the current rendering target at subpixel precision. + * + * \param renderer The renderer which should draw a line. + * \param x1 The x coordinate of the start point. + * \param y1 The y coordinate of the start point. + * \param x2 The x coordinate of the end point. + * \param y2 The y coordinate of the end point. + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawLineF(SDL_Renderer * renderer, + float x1, float y1, float x2, float y2); + +/** + * Draw a series of connected lines on the current rendering target at + * subpixel precision. + * + * \param renderer The renderer which should draw multiple lines. + * \param points The points along the lines + * \param count The number of points, drawing count-1 lines + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawLinesF(SDL_Renderer * renderer, + const SDL_FPoint * points, + int count); + +/** + * Draw a rectangle on the current rendering target at subpixel precision. + * + * \param renderer The renderer which should draw a rectangle. + * \param rect A pointer to the destination rectangle, or NULL to outline the + * entire rendering target. + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawRectF(SDL_Renderer * renderer, + const SDL_FRect * rect); + +/** + * Draw some number of rectangles on the current rendering target at subpixel + * precision. + * + * \param renderer The renderer which should draw multiple rectangles. + * \param rects A pointer to an array of destination rectangles. + * \param count The number of rectangles. + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawRectsF(SDL_Renderer * renderer, + const SDL_FRect * rects, + int count); + +/** + * Fill a rectangle on the current rendering target with the drawing color at + * subpixel precision. + * + * \param renderer The renderer which should fill a rectangle. + * \param rect A pointer to the destination rectangle, or NULL for the entire + * rendering target. + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderFillRectF(SDL_Renderer * renderer, + const SDL_FRect * rect); + +/** + * Fill some number of rectangles on the current rendering target with the + * drawing color at subpixel precision. + * + * \param renderer The renderer which should fill multiple rectangles. + * \param rects A pointer to an array of destination rectangles. + * \param count The number of rectangles. + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderFillRectsF(SDL_Renderer * renderer, + const SDL_FRect * rects, + int count); + +/** + * Copy a portion of the texture to the current rendering target at subpixel + * precision. + * + * \param renderer The renderer which should copy parts of a texture. + * \param texture The source texture. + * \param srcrect A pointer to the source rectangle, or NULL for the entire + * texture. + * \param dstrect A pointer to the destination rectangle, or NULL for the + * entire rendering target. + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderCopyF(SDL_Renderer * renderer, + SDL_Texture * texture, + const SDL_Rect * srcrect, + const SDL_FRect * dstrect); + +/** + * Copy a portion of the source texture to the current rendering target, with + * rotation and flipping, at subpixel precision. + * + * \param renderer The renderer which should copy parts of a texture. + * \param texture The source texture. + * \param srcrect A pointer to the source rectangle, or NULL for the entire + * texture. + * \param dstrect A pointer to the destination rectangle, or NULL for the + * entire rendering target. + * \param angle An angle in degrees that indicates the rotation that will be + * applied to dstrect, rotating it in a clockwise direction + * \param center A pointer to a point indicating the point around which + * dstrect will be rotated (if NULL, rotation will be done + * around dstrect.w/2, dstrect.h/2). + * \param flip An SDL_RendererFlip value stating which flipping actions should + * be performed on the texture + * \return 0 on success, or -1 on error + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderCopyExF(SDL_Renderer * renderer, + SDL_Texture * texture, + const SDL_Rect * srcrect, + const SDL_FRect * dstrect, + const double angle, + const SDL_FPoint *center, + const SDL_RendererFlip flip); + +/** + * Render a list of triangles, optionally using a texture and indices into the + * vertex array Color and alpha modulation is done per vertex + * (SDL_SetTextureColorMod and SDL_SetTextureAlphaMod are ignored). + * + * \param renderer The rendering context. + * \param texture (optional) The SDL texture to use. + * \param vertices Vertices. + * \param num_vertices Number of vertices. + * \param indices (optional) An array of integer indices into the 'vertices' + * array, if NULL all vertices will be rendered in sequential + * order. + * \param num_indices Number of indices. + * \return 0 on success, or -1 if the operation is not supported + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_RenderGeometryRaw + * \sa SDL_Vertex + */ +extern DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, + SDL_Texture *texture, + const SDL_Vertex *vertices, int num_vertices, + const int *indices, int num_indices); + +/** + * Render a list of triangles, optionally using a texture and indices into the + * vertex arrays Color and alpha modulation is done per vertex + * (SDL_SetTextureColorMod and SDL_SetTextureAlphaMod are ignored). + * + * \param renderer The rendering context. + * \param texture (optional) The SDL texture to use. + * \param xy Vertex positions + * \param xy_stride Byte size to move from one element to the next element + * \param color Vertex colors (as SDL_Color) + * \param color_stride Byte size to move from one element to the next element + * \param uv Vertex normalized texture coordinates + * \param uv_stride Byte size to move from one element to the next element + * \param num_vertices Number of vertices. + * \param indices (optional) An array of indices into the 'vertices' arrays, + * if NULL all vertices will be rendered in sequential order. + * \param num_indices Number of indices. + * \param size_indices Index size: 1 (byte), 2 (short), 4 (int) + * \return 0 on success, or -1 if the operation is not supported + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_RenderGeometry + * \sa SDL_Vertex + */ +extern DECLSPEC int SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer, + SDL_Texture *texture, + const float *xy, int xy_stride, + const SDL_Color *color, int color_stride, + const float *uv, int uv_stride, + int num_vertices, + const void *indices, int num_indices, int size_indices); + +/** + * Read pixels from the current rendering target to an array of pixels. + * + * **WARNING**: This is a very slow operation, and should not be used + * frequently. If you're using this on the main rendering target, it should be + * called after rendering and before SDL_RenderPresent(). + * + * `pitch` specifies the number of bytes between rows in the destination + * `pixels` data. This allows you to write to a subrectangle or have padded + * rows in the destination. Generally, `pitch` should equal the number of + * pixels per row in the `pixels` data times the number of bytes per pixel, + * but it might contain additional padding (for example, 24bit RGB Windows + * Bitmap data pads all rows to multiples of 4 bytes). + * + * \param renderer the rendering context + * \param rect an SDL_Rect structure representing the area to read, or NULL + * for the entire render target + * \param format an SDL_PixelFormatEnum value of the desired format of the + * pixel data, or 0 to use the format of the rendering target + * \param pixels a pointer to the pixel data to copy into + * \param pitch the pitch of the `pixels` parameter + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_RenderReadPixels(SDL_Renderer * renderer, + const SDL_Rect * rect, + Uint32 format, + void *pixels, int pitch); + +/** + * Update the screen with any rendering performed since the previous call. + * + * SDL's rendering functions operate on a backbuffer; that is, calling a + * rendering function such as SDL_RenderDrawLine() does not directly put a + * line on the screen, but rather updates the backbuffer. As such, you compose + * your entire scene and *present* the composed backbuffer to the screen as a + * complete picture. + * + * Therefore, when using SDL's rendering API, one does all drawing intended + * for the frame, and then calls this function once per frame to present the + * final drawing to the user. + * + * The backbuffer should be considered invalidated after each present; do not + * assume that previous contents will exist between frames. You are strongly + * encouraged to call SDL_RenderClear() to initialize the backbuffer before + * starting each new frame's drawing, even if you plan to overwrite every + * pixel. + * + * \param renderer the rendering context + * + * \threadsafety You may only call this function on the main thread. If this + * happens to work on a background thread on any given platform + * or backend, it's purely by luck and you should not rely on it + * to work next time. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RenderClear + * \sa SDL_RenderDrawLine + * \sa SDL_RenderDrawLines + * \sa SDL_RenderDrawPoint + * \sa SDL_RenderDrawPoints + * \sa SDL_RenderDrawRect + * \sa SDL_RenderDrawRects + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects + * \sa SDL_SetRenderDrawBlendMode + * \sa SDL_SetRenderDrawColor + */ +extern DECLSPEC void SDLCALL SDL_RenderPresent(SDL_Renderer * renderer); + +/** + * Destroy the specified texture. + * + * Passing NULL or an otherwise invalid texture will set the SDL error message + * to "Invalid texture". + * + * \param texture the texture to destroy + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateTexture + * \sa SDL_CreateTextureFromSurface + */ +extern DECLSPEC void SDLCALL SDL_DestroyTexture(SDL_Texture * texture); + +/** + * Destroy the rendering context for a window and free associated textures. + * + * If `renderer` is NULL, this function will return immediately after setting + * the SDL error message to "Invalid renderer". See SDL_GetError(). + * + * \param renderer the rendering context + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRenderer + */ +extern DECLSPEC void SDLCALL SDL_DestroyRenderer(SDL_Renderer * renderer); + +/** + * Force the rendering context to flush any pending commands to the underlying + * rendering API. + * + * You do not need to (and in fact, shouldn't) call this function unless you + * are planning to call into OpenGL/Direct3D/Metal/whatever directly in + * addition to using an SDL_Renderer. + * + * This is for a very-specific case: if you are using SDL's render API, you + * asked for a specific renderer backend (OpenGL, Direct3D, etc), you set + * SDL_HINT_RENDER_BATCHING to "1", and you plan to make OpenGL/D3D/whatever + * calls in addition to SDL render API calls. If all of this applies, you + * should call SDL_RenderFlush() between calls to SDL's render API and the + * low-level API you're using in cooperation. + * + * In all other cases, you can ignore this function. This is only here to get + * maximum performance out of a specific situation. In all other cases, SDL + * will do the right thing, perhaps at a performance loss. + * + * This function is first available in SDL 2.0.10, and is not needed in 2.0.9 + * and earlier, as earlier versions did not queue rendering commands at all, + * instead flushing them to the OS immediately. + * + * \param renderer the rendering context + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC int SDLCALL SDL_RenderFlush(SDL_Renderer * renderer); + + +/** + * Bind an OpenGL/ES/ES2 texture to the current context. + * + * This is for use with OpenGL instructions when rendering OpenGL primitives + * directly. + * + * If not NULL, `texw` and `texh` will be filled with the width and height + * values suitable for the provided texture. In most cases, both will be 1.0, + * however, on systems that support the GL_ARB_texture_rectangle extension, + * these values will actually be the pixel width and height used to create the + * texture, so this factor needs to be taken into account when providing + * texture coordinates to OpenGL. + * + * You need a renderer to create an SDL_Texture, therefore you can only use + * this function with an implicit OpenGL context from SDL_CreateRenderer(), + * not with your own OpenGL context. If you need control over your OpenGL + * context, you need to write your own texture-loading methods. + * + * Also note that SDL may upload RGB textures as BGR (or vice-versa), and + * re-order the color channels in the shaders phase, so the uploaded texture + * may have swapped color channels. + * + * \param texture the texture to bind to the current OpenGL/ES/ES2 context + * \param texw a pointer to a float value which will be filled with the + * texture width or NULL if you don't need that value + * \param texh a pointer to a float value which will be filled with the + * texture height or NULL if you don't need that value + * \returns 0 on success, or -1 if the operation is not supported; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_MakeCurrent + * \sa SDL_GL_UnbindTexture + */ +extern DECLSPEC int SDLCALL SDL_GL_BindTexture(SDL_Texture *texture, float *texw, float *texh); + +/** + * Unbind an OpenGL/ES/ES2 texture from the current context. + * + * See SDL_GL_BindTexture() for examples on how to use these functions + * + * \param texture the texture to unbind from the current OpenGL/ES/ES2 context + * \returns 0 on success, or -1 if the operation is not supported + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_BindTexture + * \sa SDL_GL_MakeCurrent + */ +extern DECLSPEC int SDLCALL SDL_GL_UnbindTexture(SDL_Texture *texture); + +/** + * Get the CAMetalLayer associated with the given Metal renderer. + * + * This function returns `void *`, so SDL doesn't have to include Metal's + * headers, but it can be safely cast to a `CAMetalLayer *`. + * + * \param renderer The renderer to query + * \returns a `CAMetalLayer *` on success, or NULL if the renderer isn't a + * Metal renderer + * + * \since This function is available since SDL 2.0.8. + * + * \sa SDL_RenderGetMetalCommandEncoder + */ +extern DECLSPEC void *SDLCALL SDL_RenderGetMetalLayer(SDL_Renderer * renderer); + +/** + * Get the Metal command encoder for the current frame + * + * This function returns `void *`, so SDL doesn't have to include Metal's + * headers, but it can be safely cast to an `id`. + * + * Note that as of SDL 2.0.18, this will return NULL if Metal refuses to give + * SDL a drawable to render to, which might happen if the window is + * hidden/minimized/offscreen. This doesn't apply to command encoders for + * render targets, just the window's backbuffer. Check your return values! + * + * \param renderer The renderer to query + * \returns an `id` on success, or NULL if the + * renderer isn't a Metal renderer or there was an error. + * + * \since This function is available since SDL 2.0.8. + * + * \sa SDL_RenderGetMetalLayer + */ +extern DECLSPEC void *SDLCALL SDL_RenderGetMetalCommandEncoder(SDL_Renderer * renderer); + +/** + * Toggle VSync of the given renderer. + * + * \param renderer The renderer to toggle + * \param vsync 1 for on, 0 for off. All other values are reserved + * \returns a 0 int on success, or non-zero on failure + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_RenderSetVSync(SDL_Renderer* renderer, int vsync); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_render_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1c4ce4a2b2bb09f2d1a713000cd7ca7cfc79ab6d GIT binary patch literal 101643 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h new file mode 100644 index 00000000..8615cb54 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h @@ -0,0 +1,841 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_rwops.h + * + * This file provides a general interface for SDL to read and write + * data streams. It can easily be extended to files, memory, etc. + */ + +#ifndef SDL_rwops_h_ +#define SDL_rwops_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/* RWops Types */ +#define SDL_RWOPS_UNKNOWN 0U /**< Unknown stream type */ +#define SDL_RWOPS_WINFILE 1U /**< Win32 file */ +#define SDL_RWOPS_STDFILE 2U /**< Stdio file */ +#define SDL_RWOPS_JNIFILE 3U /**< Android asset */ +#define SDL_RWOPS_MEMORY 4U /**< Memory stream */ +#define SDL_RWOPS_MEMORY_RO 5U /**< Read-Only memory stream */ + +/** + * This is the read/write operation structure -- very basic. + */ +typedef struct SDL_RWops +{ + /** + * Return the size of the file in this rwops, or -1 if unknown + */ + Sint64 (SDLCALL * size) (struct SDL_RWops * context); + + /** + * Seek to \c offset relative to \c whence, one of stdio's whence values: + * RW_SEEK_SET, RW_SEEK_CUR, RW_SEEK_END + * + * \return the final offset in the data stream, or -1 on error. + */ + Sint64 (SDLCALL * seek) (struct SDL_RWops * context, Sint64 offset, + int whence); + + /** + * Read up to \c maxnum objects each of size \c size from the data + * stream to the area pointed at by \c ptr. + * + * \return the number of objects read, or 0 at error or end of file. + */ + size_t (SDLCALL * read) (struct SDL_RWops * context, void *ptr, + size_t size, size_t maxnum); + + /** + * Write exactly \c num objects each of size \c size from the area + * pointed at by \c ptr to data stream. + * + * \return the number of objects written, or 0 at error or end of file. + */ + size_t (SDLCALL * write) (struct SDL_RWops * context, const void *ptr, + size_t size, size_t num); + + /** + * Close and free an allocated SDL_RWops structure. + * + * \return 0 if successful or -1 on write error when flushing data. + */ + int (SDLCALL * close) (struct SDL_RWops * context); + + Uint32 type; + union + { +#if defined(__ANDROID__) + struct + { + void *asset; + } androidio; +#elif defined(__WIN32__) || defined(__GDK__) + struct + { + SDL_bool append; + void *h; + struct + { + void *data; + size_t size; + size_t left; + } buffer; + } windowsio; +#endif + +#ifdef HAVE_STDIO_H + struct + { + SDL_bool autoclose; + FILE *fp; + } stdio; +#endif + struct + { + Uint8 *base; + Uint8 *here; + Uint8 *stop; + } mem; + struct + { + void *data1; + void *data2; + } unknown; + } hidden; + +} SDL_RWops; + + +/** + * \name RWFrom functions + * + * Functions to create SDL_RWops structures from various data streams. + */ +/* @{ */ + +/** + * Use this function to create a new SDL_RWops structure for reading from + * and/or writing to a named file. + * + * The `mode` string is treated roughly the same as in a call to the C + * library's fopen(), even if SDL doesn't happen to use fopen() behind the + * scenes. + * + * Available `mode` strings: + * + * - "r": Open a file for reading. The file must exist. + * - "w": Create an empty file for writing. If a file with the same name + * already exists its content is erased and the file is treated as a new + * empty file. + * - "a": Append to a file. Writing operations append data at the end of the + * file. The file is created if it does not exist. + * - "r+": Open a file for update both reading and writing. The file must + * exist. + * - "w+": Create an empty file for both reading and writing. If a file with + * the same name already exists its content is erased and the file is + * treated as a new empty file. + * - "a+": Open a file for reading and appending. All writing operations are + * performed at the end of the file, protecting the previous content to be + * overwritten. You can reposition (fseek, rewind) the internal pointer to + * anywhere in the file for reading, but writing operations will move it + * back to the end of file. The file is created if it does not exist. + * + * **NOTE**: In order to open a file as a binary file, a "b" character has to + * be included in the `mode` string. This additional "b" character can either + * be appended at the end of the string (thus making the following compound + * modes: "rb", "wb", "ab", "r+b", "w+b", "a+b") or be inserted between the + * letter and the "+" sign for the mixed modes ("rb+", "wb+", "ab+"). + * Additional characters may follow the sequence, although they should have no + * effect. For example, "t" is sometimes appended to make explicit the file is + * a text file. + * + * This function supports Unicode filenames, but they must be encoded in UTF-8 + * format, regardless of the underlying operating system. + * + * As a fallback, SDL_RWFromFile() will transparently open a matching filename + * in an Android app's `assets`. + * + * Closing the SDL_RWops will close the file handle SDL is holding internally. + * + * \param file a UTF-8 string representing the filename to open + * \param mode an ASCII string representing the mode to be used for opening + * the file. + * \returns a pointer to the SDL_RWops structure that is created, or NULL on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RWclose + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFP + * \sa SDL_RWFromMem + * \sa SDL_RWread + * \sa SDL_RWseek + * \sa SDL_RWtell + * \sa SDL_RWwrite + */ +extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromFile(const char *file, + const char *mode); + +#ifdef HAVE_STDIO_H + +extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromFP(FILE * fp, SDL_bool autoclose); + +#else + +/** + * Use this function to create an SDL_RWops structure from a standard I/O file + * pointer (stdio.h's `FILE*`). + * + * This function is not available on Windows, since files opened in an + * application on that platform cannot be used by a dynamically linked + * library. + * + * On some platforms, the first parameter is a `void*`, on others, it's a + * `FILE*`, depending on what system headers are available to SDL. It is + * always intended to be the `FILE*` type from the C runtime's stdio.h. + * + * \param fp the `FILE*` that feeds the SDL_RWops stream + * \param autoclose SDL_TRUE to close the `FILE*` when closing the SDL_RWops, + * SDL_FALSE to leave the `FILE*` open when the RWops is + * closed + * \returns a pointer to the SDL_RWops structure that is created, or NULL on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RWclose + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFile + * \sa SDL_RWFromMem + * \sa SDL_RWread + * \sa SDL_RWseek + * \sa SDL_RWtell + * \sa SDL_RWwrite + */ +extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromFP(void * fp, + SDL_bool autoclose); +#endif + +/** + * Use this function to prepare a read-write memory buffer for use with + * SDL_RWops. + * + * This function sets up an SDL_RWops struct based on a memory area of a + * certain size, for both read and write access. + * + * This memory buffer is not copied by the RWops; the pointer you provide must + * remain valid until you close the stream. Closing the stream will not free + * the original buffer. + * + * If you need to make sure the RWops never writes to the memory buffer, you + * should use SDL_RWFromConstMem() with a read-only buffer of memory instead. + * + * \param mem a pointer to a buffer to feed an SDL_RWops stream + * \param size the buffer size, in bytes + * \returns a pointer to a new SDL_RWops structure, or NULL if it fails; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RWclose + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFile + * \sa SDL_RWFromFP + * \sa SDL_RWFromMem + * \sa SDL_RWread + * \sa SDL_RWseek + * \sa SDL_RWtell + * \sa SDL_RWwrite + */ +extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromMem(void *mem, int size); + +/** + * Use this function to prepare a read-only memory buffer for use with RWops. + * + * This function sets up an SDL_RWops struct based on a memory area of a + * certain size. It assumes the memory area is not writable. + * + * Attempting to write to this RWops stream will report an error without + * writing to the memory buffer. + * + * This memory buffer is not copied by the RWops; the pointer you provide must + * remain valid until you close the stream. Closing the stream will not free + * the original buffer. + * + * If you need to write to a memory buffer, you should use SDL_RWFromMem() + * with a writable buffer of memory instead. + * + * \param mem a pointer to a read-only buffer to feed an SDL_RWops stream + * \param size the buffer size, in bytes + * \returns a pointer to a new SDL_RWops structure, or NULL if it fails; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RWclose + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFile + * \sa SDL_RWFromFP + * \sa SDL_RWFromMem + * \sa SDL_RWread + * \sa SDL_RWseek + * \sa SDL_RWtell + */ +extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromConstMem(const void *mem, + int size); + +/* @} *//* RWFrom functions */ + + +/** + * Use this function to allocate an empty, unpopulated SDL_RWops structure. + * + * Applications do not need to use this function unless they are providing + * their own SDL_RWops implementation. If you just need a SDL_RWops to + * read/write a common data source, you should use the built-in + * implementations in SDL, like SDL_RWFromFile() or SDL_RWFromMem(), etc. + * + * You must free the returned pointer with SDL_FreeRW(). Depending on your + * operating system and compiler, there may be a difference between the + * malloc() and free() your program uses and the versions SDL calls + * internally. Trying to mix the two can cause crashing such as segmentation + * faults. Since all SDL_RWops must free themselves when their **close** + * method is called, all SDL_RWops must be allocated through this function, so + * they can all be freed correctly with SDL_FreeRW(). + * + * \returns a pointer to the allocated memory on success, or NULL on failure; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FreeRW + */ +extern DECLSPEC SDL_RWops *SDLCALL SDL_AllocRW(void); + +/** + * Use this function to free an SDL_RWops structure allocated by + * SDL_AllocRW(). + * + * Applications do not need to use this function unless they are providing + * their own SDL_RWops implementation. If you just need a SDL_RWops to + * read/write a common data source, you should use the built-in + * implementations in SDL, like SDL_RWFromFile() or SDL_RWFromMem(), etc, and + * call the **close** method on those SDL_RWops pointers when you are done + * with them. + * + * Only use SDL_FreeRW() on pointers returned by SDL_AllocRW(). The pointer is + * invalid as soon as this function returns. Any extra memory allocated during + * creation of the SDL_RWops is not freed by SDL_FreeRW(); the programmer must + * be responsible for managing that memory in their **close** method. + * + * \param area the SDL_RWops structure to be freed + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AllocRW + */ +extern DECLSPEC void SDLCALL SDL_FreeRW(SDL_RWops * area); + +#define RW_SEEK_SET 0 /**< Seek from the beginning of data */ +#define RW_SEEK_CUR 1 /**< Seek relative to current read point */ +#define RW_SEEK_END 2 /**< Seek relative to the end of data */ + +/** + * Use this function to get the size of the data stream in an SDL_RWops. + * + * Prior to SDL 2.0.10, this function was a macro. + * + * \param context the SDL_RWops to get the size of the data stream from + * \returns the size of the data stream in the SDL_RWops on success, -1 if + * unknown or a negative error code on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC Sint64 SDLCALL SDL_RWsize(SDL_RWops *context); + +/** + * Seek within an SDL_RWops data stream. + * + * This function seeks to byte `offset`, relative to `whence`. + * + * `whence` may be any of the following values: + * + * - `RW_SEEK_SET`: seek from the beginning of data + * - `RW_SEEK_CUR`: seek relative to current read point + * - `RW_SEEK_END`: seek relative to the end of data + * + * If this stream can not seek, it will return -1. + * + * SDL_RWseek() is actually a wrapper function that calls the SDL_RWops's + * `seek` method appropriately, to simplify application development. + * + * Prior to SDL 2.0.10, this function was a macro. + * + * \param context a pointer to an SDL_RWops structure + * \param offset an offset in bytes, relative to **whence** location; can be + * negative + * \param whence any of `RW_SEEK_SET`, `RW_SEEK_CUR`, `RW_SEEK_END` + * \returns the final offset in the data stream after the seek or -1 on error. + * + * \since This function is available since SDL 2.0.10. + * + * \sa SDL_RWclose + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFile + * \sa SDL_RWFromFP + * \sa SDL_RWFromMem + * \sa SDL_RWread + * \sa SDL_RWtell + * \sa SDL_RWwrite + */ +extern DECLSPEC Sint64 SDLCALL SDL_RWseek(SDL_RWops *context, + Sint64 offset, int whence); + +/** + * Determine the current read/write offset in an SDL_RWops data stream. + * + * SDL_RWtell is actually a wrapper function that calls the SDL_RWops's `seek` + * method, with an offset of 0 bytes from `RW_SEEK_CUR`, to simplify + * application development. + * + * Prior to SDL 2.0.10, this function was a macro. + * + * \param context a SDL_RWops data stream object from which to get the current + * offset + * \returns the current offset in the stream, or -1 if the information can not + * be determined. + * + * \since This function is available since SDL 2.0.10. + * + * \sa SDL_RWclose + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFile + * \sa SDL_RWFromFP + * \sa SDL_RWFromMem + * \sa SDL_RWread + * \sa SDL_RWseek + * \sa SDL_RWwrite + */ +extern DECLSPEC Sint64 SDLCALL SDL_RWtell(SDL_RWops *context); + +/** + * Read from a data source. + * + * This function reads up to `maxnum` objects each of size `size` from the + * data source to the area pointed at by `ptr`. This function may read less + * objects than requested. It will return zero when there has been an error or + * the data stream is completely read. + * + * SDL_RWread() is actually a function wrapper that calls the SDL_RWops's + * `read` method appropriately, to simplify application development. + * + * Prior to SDL 2.0.10, this function was a macro. + * + * \param context a pointer to an SDL_RWops structure + * \param ptr a pointer to a buffer to read data into + * \param size the size of each object to read, in bytes + * \param maxnum the maximum number of objects to be read + * \returns the number of objects read, or 0 at error or end of file; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.10. + * + * \sa SDL_RWclose + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFile + * \sa SDL_RWFromFP + * \sa SDL_RWFromMem + * \sa SDL_RWseek + * \sa SDL_RWwrite + */ +extern DECLSPEC size_t SDLCALL SDL_RWread(SDL_RWops *context, + void *ptr, size_t size, + size_t maxnum); + +/** + * Write to an SDL_RWops data stream. + * + * This function writes exactly `num` objects each of size `size` from the + * area pointed at by `ptr` to the stream. If this fails for any reason, it'll + * return less than `num` to demonstrate how far the write progressed. On + * success, it returns `num`. + * + * SDL_RWwrite is actually a function wrapper that calls the SDL_RWops's + * `write` method appropriately, to simplify application development. + * + * Prior to SDL 2.0.10, this function was a macro. + * + * \param context a pointer to an SDL_RWops structure + * \param ptr a pointer to a buffer containing data to write + * \param size the size of an object to write, in bytes + * \param num the number of objects to write + * \returns the number of objects written, which will be less than **num** on + * error; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.10. + * + * \sa SDL_RWclose + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFile + * \sa SDL_RWFromFP + * \sa SDL_RWFromMem + * \sa SDL_RWread + * \sa SDL_RWseek + */ +extern DECLSPEC size_t SDLCALL SDL_RWwrite(SDL_RWops *context, + const void *ptr, size_t size, + size_t num); + +/** + * Close and free an allocated SDL_RWops structure. + * + * SDL_RWclose() closes and cleans up the SDL_RWops stream. It releases any + * resources used by the stream and frees the SDL_RWops itself with + * SDL_FreeRW(). This returns 0 on success, or -1 if the stream failed to + * flush to its output (e.g. to disk). + * + * Note that if this fails to flush the stream to disk, this function reports + * an error, but the SDL_RWops is still invalid once this function returns. + * + * Prior to SDL 2.0.10, this function was a macro. + * + * \param context SDL_RWops structure to close + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.10. + * + * \sa SDL_RWFromConstMem + * \sa SDL_RWFromFile + * \sa SDL_RWFromFP + * \sa SDL_RWFromMem + * \sa SDL_RWread + * \sa SDL_RWseek + * \sa SDL_RWwrite + */ +extern DECLSPEC int SDLCALL SDL_RWclose(SDL_RWops *context); + +/** + * Load all the data from an SDL data stream. + * + * The data is allocated with a zero byte at the end (null terminated) for + * convenience. This extra byte is not included in the value reported via + * `datasize`. + * + * The data should be freed with SDL_free(). + * + * \param src the SDL_RWops to read all available data from + * \param datasize if not NULL, will store the number of bytes read + * \param freesrc if non-zero, calls SDL_RWclose() on `src` before returning + * \returns the data, or NULL if there was an error. + * + * \since This function is available since SDL 2.0.6. + */ +extern DECLSPEC void *SDLCALL SDL_LoadFile_RW(SDL_RWops *src, + size_t *datasize, + int freesrc); + +/** + * Load all the data from a file path. + * + * The data is allocated with a zero byte at the end (null terminated) for + * convenience. This extra byte is not included in the value reported via + * `datasize`. + * + * The data should be freed with SDL_free(). + * + * Prior to SDL 2.0.10, this function was a macro wrapping around + * SDL_LoadFile_RW. + * + * \param file the path to read all available data from + * \param datasize if not NULL, will store the number of bytes read + * \returns the data, or NULL if there was an error. + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC void *SDLCALL SDL_LoadFile(const char *file, size_t *datasize); + +/** + * \name Read endian functions + * + * Read an item of the specified endianness and return in native format. + */ +/* @{ */ + +/** + * Use this function to read a byte from an SDL_RWops. + * + * \param src the SDL_RWops to read from + * \returns the read byte on success or 0 on failure; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WriteU8 + */ +extern DECLSPEC Uint8 SDLCALL SDL_ReadU8(SDL_RWops * src); + +/** + * Use this function to read 16 bits of little-endian data from an SDL_RWops + * and return in native format. + * + * SDL byteswaps the data only if necessary, so the data returned will be in + * the native byte order. + * + * \param src the stream from which to read data + * \returns 16 bits of data in the native byte order of the platform. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ReadBE16 + */ +extern DECLSPEC Uint16 SDLCALL SDL_ReadLE16(SDL_RWops * src); + +/** + * Use this function to read 16 bits of big-endian data from an SDL_RWops and + * return in native format. + * + * SDL byteswaps the data only if necessary, so the data returned will be in + * the native byte order. + * + * \param src the stream from which to read data + * \returns 16 bits of data in the native byte order of the platform. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ReadLE16 + */ +extern DECLSPEC Uint16 SDLCALL SDL_ReadBE16(SDL_RWops * src); + +/** + * Use this function to read 32 bits of little-endian data from an SDL_RWops + * and return in native format. + * + * SDL byteswaps the data only if necessary, so the data returned will be in + * the native byte order. + * + * \param src the stream from which to read data + * \returns 32 bits of data in the native byte order of the platform. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ReadBE32 + */ +extern DECLSPEC Uint32 SDLCALL SDL_ReadLE32(SDL_RWops * src); + +/** + * Use this function to read 32 bits of big-endian data from an SDL_RWops and + * return in native format. + * + * SDL byteswaps the data only if necessary, so the data returned will be in + * the native byte order. + * + * \param src the stream from which to read data + * \returns 32 bits of data in the native byte order of the platform. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ReadLE32 + */ +extern DECLSPEC Uint32 SDLCALL SDL_ReadBE32(SDL_RWops * src); + +/** + * Use this function to read 64 bits of little-endian data from an SDL_RWops + * and return in native format. + * + * SDL byteswaps the data only if necessary, so the data returned will be in + * the native byte order. + * + * \param src the stream from which to read data + * \returns 64 bits of data in the native byte order of the platform. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ReadBE64 + */ +extern DECLSPEC Uint64 SDLCALL SDL_ReadLE64(SDL_RWops * src); + +/** + * Use this function to read 64 bits of big-endian data from an SDL_RWops and + * return in native format. + * + * SDL byteswaps the data only if necessary, so the data returned will be in + * the native byte order. + * + * \param src the stream from which to read data + * \returns 64 bits of data in the native byte order of the platform. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ReadLE64 + */ +extern DECLSPEC Uint64 SDLCALL SDL_ReadBE64(SDL_RWops * src); +/* @} *//* Read endian functions */ + +/** + * \name Write endian functions + * + * Write an item of native format to the specified endianness. + */ +/* @{ */ + +/** + * Use this function to write a byte to an SDL_RWops. + * + * \param dst the SDL_RWops to write to + * \param value the byte value to write + * \returns 1 on success or 0 on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ReadU8 + */ +extern DECLSPEC size_t SDLCALL SDL_WriteU8(SDL_RWops * dst, Uint8 value); + +/** + * Use this function to write 16 bits in native format to a SDL_RWops as + * little-endian data. + * + * SDL byteswaps the data only if necessary, so the application always + * specifies native format, and the data written will be in little-endian + * format. + * + * \param dst the stream to which data will be written + * \param value the data to be written, in native format + * \returns 1 on successful write, 0 on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WriteBE16 + */ +extern DECLSPEC size_t SDLCALL SDL_WriteLE16(SDL_RWops * dst, Uint16 value); + +/** + * Use this function to write 16 bits in native format to a SDL_RWops as + * big-endian data. + * + * SDL byteswaps the data only if necessary, so the application always + * specifies native format, and the data written will be in big-endian format. + * + * \param dst the stream to which data will be written + * \param value the data to be written, in native format + * \returns 1 on successful write, 0 on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WriteLE16 + */ +extern DECLSPEC size_t SDLCALL SDL_WriteBE16(SDL_RWops * dst, Uint16 value); + +/** + * Use this function to write 32 bits in native format to a SDL_RWops as + * little-endian data. + * + * SDL byteswaps the data only if necessary, so the application always + * specifies native format, and the data written will be in little-endian + * format. + * + * \param dst the stream to which data will be written + * \param value the data to be written, in native format + * \returns 1 on successful write, 0 on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WriteBE32 + */ +extern DECLSPEC size_t SDLCALL SDL_WriteLE32(SDL_RWops * dst, Uint32 value); + +/** + * Use this function to write 32 bits in native format to a SDL_RWops as + * big-endian data. + * + * SDL byteswaps the data only if necessary, so the application always + * specifies native format, and the data written will be in big-endian format. + * + * \param dst the stream to which data will be written + * \param value the data to be written, in native format + * \returns 1 on successful write, 0 on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WriteLE32 + */ +extern DECLSPEC size_t SDLCALL SDL_WriteBE32(SDL_RWops * dst, Uint32 value); + +/** + * Use this function to write 64 bits in native format to a SDL_RWops as + * little-endian data. + * + * SDL byteswaps the data only if necessary, so the application always + * specifies native format, and the data written will be in little-endian + * format. + * + * \param dst the stream to which data will be written + * \param value the data to be written, in native format + * \returns 1 on successful write, 0 on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WriteBE64 + */ +extern DECLSPEC size_t SDLCALL SDL_WriteLE64(SDL_RWops * dst, Uint64 value); + +/** + * Use this function to write 64 bits in native format to a SDL_RWops as + * big-endian data. + * + * SDL byteswaps the data only if necessary, so the application always + * specifies native format, and the data written will be in big-endian format. + * + * \param dst the stream to which data will be written + * \param value the data to be written, in native format + * \returns 1 on successful write, 0 on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WriteLE64 + */ +extern DECLSPEC size_t SDLCALL SDL_WriteBE64(SDL_RWops * dst, Uint64 value); +/* @} *//* Write endian functions */ + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_rwops_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b30d64c0d54ea750e1fff2715902fd8693005f82 GIT binary patch literal 42441 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h new file mode 100644 index 00000000..a960a799 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h @@ -0,0 +1,438 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_scancode.h + * + * Defines keyboard scancodes. + */ + +#ifndef SDL_scancode_h_ +#define SDL_scancode_h_ + +#include "SDL_stdinc.h" + +/** + * \brief The SDL keyboard scancode representation. + * + * Values of this type are used to represent keyboard keys, among other places + * in the \link SDL_Keysym::scancode key.keysym.scancode \endlink field of the + * SDL_Event structure. + * + * The values in this enumeration are based on the USB usage page standard: + * https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf + */ +typedef enum +{ + SDL_SCANCODE_UNKNOWN = 0, + + /** + * \name Usage page 0x07 + * + * These values are from usage page 0x07 (USB keyboard page). + */ + /* @{ */ + + SDL_SCANCODE_A = 4, + SDL_SCANCODE_B = 5, + SDL_SCANCODE_C = 6, + SDL_SCANCODE_D = 7, + SDL_SCANCODE_E = 8, + SDL_SCANCODE_F = 9, + SDL_SCANCODE_G = 10, + SDL_SCANCODE_H = 11, + SDL_SCANCODE_I = 12, + SDL_SCANCODE_J = 13, + SDL_SCANCODE_K = 14, + SDL_SCANCODE_L = 15, + SDL_SCANCODE_M = 16, + SDL_SCANCODE_N = 17, + SDL_SCANCODE_O = 18, + SDL_SCANCODE_P = 19, + SDL_SCANCODE_Q = 20, + SDL_SCANCODE_R = 21, + SDL_SCANCODE_S = 22, + SDL_SCANCODE_T = 23, + SDL_SCANCODE_U = 24, + SDL_SCANCODE_V = 25, + SDL_SCANCODE_W = 26, + SDL_SCANCODE_X = 27, + SDL_SCANCODE_Y = 28, + SDL_SCANCODE_Z = 29, + + SDL_SCANCODE_1 = 30, + SDL_SCANCODE_2 = 31, + SDL_SCANCODE_3 = 32, + SDL_SCANCODE_4 = 33, + SDL_SCANCODE_5 = 34, + SDL_SCANCODE_6 = 35, + SDL_SCANCODE_7 = 36, + SDL_SCANCODE_8 = 37, + SDL_SCANCODE_9 = 38, + SDL_SCANCODE_0 = 39, + + SDL_SCANCODE_RETURN = 40, + SDL_SCANCODE_ESCAPE = 41, + SDL_SCANCODE_BACKSPACE = 42, + SDL_SCANCODE_TAB = 43, + SDL_SCANCODE_SPACE = 44, + + SDL_SCANCODE_MINUS = 45, + SDL_SCANCODE_EQUALS = 46, + SDL_SCANCODE_LEFTBRACKET = 47, + SDL_SCANCODE_RIGHTBRACKET = 48, + SDL_SCANCODE_BACKSLASH = 49, /**< Located at the lower left of the return + * key on ISO keyboards and at the right end + * of the QWERTY row on ANSI keyboards. + * Produces REVERSE SOLIDUS (backslash) and + * VERTICAL LINE in a US layout, REVERSE + * SOLIDUS and VERTICAL LINE in a UK Mac + * layout, NUMBER SIGN and TILDE in a UK + * Windows layout, DOLLAR SIGN and POUND SIGN + * in a Swiss German layout, NUMBER SIGN and + * APOSTROPHE in a German layout, GRAVE + * ACCENT and POUND SIGN in a French Mac + * layout, and ASTERISK and MICRO SIGN in a + * French Windows layout. + */ + SDL_SCANCODE_NONUSHASH = 50, /**< ISO USB keyboards actually use this code + * instead of 49 for the same key, but all + * OSes I've seen treat the two codes + * identically. So, as an implementor, unless + * your keyboard generates both of those + * codes and your OS treats them differently, + * you should generate SDL_SCANCODE_BACKSLASH + * instead of this code. As a user, you + * should not rely on this code because SDL + * will never generate it with most (all?) + * keyboards. + */ + SDL_SCANCODE_SEMICOLON = 51, + SDL_SCANCODE_APOSTROPHE = 52, + SDL_SCANCODE_GRAVE = 53, /**< Located in the top left corner (on both ANSI + * and ISO keyboards). Produces GRAVE ACCENT and + * TILDE in a US Windows layout and in US and UK + * Mac layouts on ANSI keyboards, GRAVE ACCENT + * and NOT SIGN in a UK Windows layout, SECTION + * SIGN and PLUS-MINUS SIGN in US and UK Mac + * layouts on ISO keyboards, SECTION SIGN and + * DEGREE SIGN in a Swiss German layout (Mac: + * only on ISO keyboards), CIRCUMFLEX ACCENT and + * DEGREE SIGN in a German layout (Mac: only on + * ISO keyboards), SUPERSCRIPT TWO and TILDE in a + * French Windows layout, COMMERCIAL AT and + * NUMBER SIGN in a French Mac layout on ISO + * keyboards, and LESS-THAN SIGN and GREATER-THAN + * SIGN in a Swiss German, German, or French Mac + * layout on ANSI keyboards. + */ + SDL_SCANCODE_COMMA = 54, + SDL_SCANCODE_PERIOD = 55, + SDL_SCANCODE_SLASH = 56, + + SDL_SCANCODE_CAPSLOCK = 57, + + SDL_SCANCODE_F1 = 58, + SDL_SCANCODE_F2 = 59, + SDL_SCANCODE_F3 = 60, + SDL_SCANCODE_F4 = 61, + SDL_SCANCODE_F5 = 62, + SDL_SCANCODE_F6 = 63, + SDL_SCANCODE_F7 = 64, + SDL_SCANCODE_F8 = 65, + SDL_SCANCODE_F9 = 66, + SDL_SCANCODE_F10 = 67, + SDL_SCANCODE_F11 = 68, + SDL_SCANCODE_F12 = 69, + + SDL_SCANCODE_PRINTSCREEN = 70, + SDL_SCANCODE_SCROLLLOCK = 71, + SDL_SCANCODE_PAUSE = 72, + SDL_SCANCODE_INSERT = 73, /**< insert on PC, help on some Mac keyboards (but + does send code 73, not 117) */ + SDL_SCANCODE_HOME = 74, + SDL_SCANCODE_PAGEUP = 75, + SDL_SCANCODE_DELETE = 76, + SDL_SCANCODE_END = 77, + SDL_SCANCODE_PAGEDOWN = 78, + SDL_SCANCODE_RIGHT = 79, + SDL_SCANCODE_LEFT = 80, + SDL_SCANCODE_DOWN = 81, + SDL_SCANCODE_UP = 82, + + SDL_SCANCODE_NUMLOCKCLEAR = 83, /**< num lock on PC, clear on Mac keyboards + */ + SDL_SCANCODE_KP_DIVIDE = 84, + SDL_SCANCODE_KP_MULTIPLY = 85, + SDL_SCANCODE_KP_MINUS = 86, + SDL_SCANCODE_KP_PLUS = 87, + SDL_SCANCODE_KP_ENTER = 88, + SDL_SCANCODE_KP_1 = 89, + SDL_SCANCODE_KP_2 = 90, + SDL_SCANCODE_KP_3 = 91, + SDL_SCANCODE_KP_4 = 92, + SDL_SCANCODE_KP_5 = 93, + SDL_SCANCODE_KP_6 = 94, + SDL_SCANCODE_KP_7 = 95, + SDL_SCANCODE_KP_8 = 96, + SDL_SCANCODE_KP_9 = 97, + SDL_SCANCODE_KP_0 = 98, + SDL_SCANCODE_KP_PERIOD = 99, + + SDL_SCANCODE_NONUSBACKSLASH = 100, /**< This is the additional key that ISO + * keyboards have over ANSI ones, + * located between left shift and Y. + * Produces GRAVE ACCENT and TILDE in a + * US or UK Mac layout, REVERSE SOLIDUS + * (backslash) and VERTICAL LINE in a + * US or UK Windows layout, and + * LESS-THAN SIGN and GREATER-THAN SIGN + * in a Swiss German, German, or French + * layout. */ + SDL_SCANCODE_APPLICATION = 101, /**< windows contextual menu, compose */ + SDL_SCANCODE_POWER = 102, /**< The USB document says this is a status flag, + * not a physical key - but some Mac keyboards + * do have a power key. */ + SDL_SCANCODE_KP_EQUALS = 103, + SDL_SCANCODE_F13 = 104, + SDL_SCANCODE_F14 = 105, + SDL_SCANCODE_F15 = 106, + SDL_SCANCODE_F16 = 107, + SDL_SCANCODE_F17 = 108, + SDL_SCANCODE_F18 = 109, + SDL_SCANCODE_F19 = 110, + SDL_SCANCODE_F20 = 111, + SDL_SCANCODE_F21 = 112, + SDL_SCANCODE_F22 = 113, + SDL_SCANCODE_F23 = 114, + SDL_SCANCODE_F24 = 115, + SDL_SCANCODE_EXECUTE = 116, + SDL_SCANCODE_HELP = 117, /**< AL Integrated Help Center */ + SDL_SCANCODE_MENU = 118, /**< Menu (show menu) */ + SDL_SCANCODE_SELECT = 119, + SDL_SCANCODE_STOP = 120, /**< AC Stop */ + SDL_SCANCODE_AGAIN = 121, /**< AC Redo/Repeat */ + SDL_SCANCODE_UNDO = 122, /**< AC Undo */ + SDL_SCANCODE_CUT = 123, /**< AC Cut */ + SDL_SCANCODE_COPY = 124, /**< AC Copy */ + SDL_SCANCODE_PASTE = 125, /**< AC Paste */ + SDL_SCANCODE_FIND = 126, /**< AC Find */ + SDL_SCANCODE_MUTE = 127, + SDL_SCANCODE_VOLUMEUP = 128, + SDL_SCANCODE_VOLUMEDOWN = 129, +/* not sure whether there's a reason to enable these */ +/* SDL_SCANCODE_LOCKINGCAPSLOCK = 130, */ +/* SDL_SCANCODE_LOCKINGNUMLOCK = 131, */ +/* SDL_SCANCODE_LOCKINGSCROLLLOCK = 132, */ + SDL_SCANCODE_KP_COMMA = 133, + SDL_SCANCODE_KP_EQUALSAS400 = 134, + + SDL_SCANCODE_INTERNATIONAL1 = 135, /**< used on Asian keyboards, see + footnotes in USB doc */ + SDL_SCANCODE_INTERNATIONAL2 = 136, + SDL_SCANCODE_INTERNATIONAL3 = 137, /**< Yen */ + SDL_SCANCODE_INTERNATIONAL4 = 138, + SDL_SCANCODE_INTERNATIONAL5 = 139, + SDL_SCANCODE_INTERNATIONAL6 = 140, + SDL_SCANCODE_INTERNATIONAL7 = 141, + SDL_SCANCODE_INTERNATIONAL8 = 142, + SDL_SCANCODE_INTERNATIONAL9 = 143, + SDL_SCANCODE_LANG1 = 144, /**< Hangul/English toggle */ + SDL_SCANCODE_LANG2 = 145, /**< Hanja conversion */ + SDL_SCANCODE_LANG3 = 146, /**< Katakana */ + SDL_SCANCODE_LANG4 = 147, /**< Hiragana */ + SDL_SCANCODE_LANG5 = 148, /**< Zenkaku/Hankaku */ + SDL_SCANCODE_LANG6 = 149, /**< reserved */ + SDL_SCANCODE_LANG7 = 150, /**< reserved */ + SDL_SCANCODE_LANG8 = 151, /**< reserved */ + SDL_SCANCODE_LANG9 = 152, /**< reserved */ + + SDL_SCANCODE_ALTERASE = 153, /**< Erase-Eaze */ + SDL_SCANCODE_SYSREQ = 154, + SDL_SCANCODE_CANCEL = 155, /**< AC Cancel */ + SDL_SCANCODE_CLEAR = 156, + SDL_SCANCODE_PRIOR = 157, + SDL_SCANCODE_RETURN2 = 158, + SDL_SCANCODE_SEPARATOR = 159, + SDL_SCANCODE_OUT = 160, + SDL_SCANCODE_OPER = 161, + SDL_SCANCODE_CLEARAGAIN = 162, + SDL_SCANCODE_CRSEL = 163, + SDL_SCANCODE_EXSEL = 164, + + SDL_SCANCODE_KP_00 = 176, + SDL_SCANCODE_KP_000 = 177, + SDL_SCANCODE_THOUSANDSSEPARATOR = 178, + SDL_SCANCODE_DECIMALSEPARATOR = 179, + SDL_SCANCODE_CURRENCYUNIT = 180, + SDL_SCANCODE_CURRENCYSUBUNIT = 181, + SDL_SCANCODE_KP_LEFTPAREN = 182, + SDL_SCANCODE_KP_RIGHTPAREN = 183, + SDL_SCANCODE_KP_LEFTBRACE = 184, + SDL_SCANCODE_KP_RIGHTBRACE = 185, + SDL_SCANCODE_KP_TAB = 186, + SDL_SCANCODE_KP_BACKSPACE = 187, + SDL_SCANCODE_KP_A = 188, + SDL_SCANCODE_KP_B = 189, + SDL_SCANCODE_KP_C = 190, + SDL_SCANCODE_KP_D = 191, + SDL_SCANCODE_KP_E = 192, + SDL_SCANCODE_KP_F = 193, + SDL_SCANCODE_KP_XOR = 194, + SDL_SCANCODE_KP_POWER = 195, + SDL_SCANCODE_KP_PERCENT = 196, + SDL_SCANCODE_KP_LESS = 197, + SDL_SCANCODE_KP_GREATER = 198, + SDL_SCANCODE_KP_AMPERSAND = 199, + SDL_SCANCODE_KP_DBLAMPERSAND = 200, + SDL_SCANCODE_KP_VERTICALBAR = 201, + SDL_SCANCODE_KP_DBLVERTICALBAR = 202, + SDL_SCANCODE_KP_COLON = 203, + SDL_SCANCODE_KP_HASH = 204, + SDL_SCANCODE_KP_SPACE = 205, + SDL_SCANCODE_KP_AT = 206, + SDL_SCANCODE_KP_EXCLAM = 207, + SDL_SCANCODE_KP_MEMSTORE = 208, + SDL_SCANCODE_KP_MEMRECALL = 209, + SDL_SCANCODE_KP_MEMCLEAR = 210, + SDL_SCANCODE_KP_MEMADD = 211, + SDL_SCANCODE_KP_MEMSUBTRACT = 212, + SDL_SCANCODE_KP_MEMMULTIPLY = 213, + SDL_SCANCODE_KP_MEMDIVIDE = 214, + SDL_SCANCODE_KP_PLUSMINUS = 215, + SDL_SCANCODE_KP_CLEAR = 216, + SDL_SCANCODE_KP_CLEARENTRY = 217, + SDL_SCANCODE_KP_BINARY = 218, + SDL_SCANCODE_KP_OCTAL = 219, + SDL_SCANCODE_KP_DECIMAL = 220, + SDL_SCANCODE_KP_HEXADECIMAL = 221, + + SDL_SCANCODE_LCTRL = 224, + SDL_SCANCODE_LSHIFT = 225, + SDL_SCANCODE_LALT = 226, /**< alt, option */ + SDL_SCANCODE_LGUI = 227, /**< windows, command (apple), meta */ + SDL_SCANCODE_RCTRL = 228, + SDL_SCANCODE_RSHIFT = 229, + SDL_SCANCODE_RALT = 230, /**< alt gr, option */ + SDL_SCANCODE_RGUI = 231, /**< windows, command (apple), meta */ + + SDL_SCANCODE_MODE = 257, /**< I'm not sure if this is really not covered + * by any of the above, but since there's a + * special KMOD_MODE for it I'm adding it here + */ + + /* @} *//* Usage page 0x07 */ + + /** + * \name Usage page 0x0C + * + * These values are mapped from usage page 0x0C (USB consumer page). + * See https://usb.org/sites/default/files/hut1_2.pdf + * + * There are way more keys in the spec than we can represent in the + * current scancode range, so pick the ones that commonly come up in + * real world usage. + */ + /* @{ */ + + SDL_SCANCODE_AUDIONEXT = 258, + SDL_SCANCODE_AUDIOPREV = 259, + SDL_SCANCODE_AUDIOSTOP = 260, + SDL_SCANCODE_AUDIOPLAY = 261, + SDL_SCANCODE_AUDIOMUTE = 262, + SDL_SCANCODE_MEDIASELECT = 263, + SDL_SCANCODE_WWW = 264, /**< AL Internet Browser */ + SDL_SCANCODE_MAIL = 265, + SDL_SCANCODE_CALCULATOR = 266, /**< AL Calculator */ + SDL_SCANCODE_COMPUTER = 267, + SDL_SCANCODE_AC_SEARCH = 268, /**< AC Search */ + SDL_SCANCODE_AC_HOME = 269, /**< AC Home */ + SDL_SCANCODE_AC_BACK = 270, /**< AC Back */ + SDL_SCANCODE_AC_FORWARD = 271, /**< AC Forward */ + SDL_SCANCODE_AC_STOP = 272, /**< AC Stop */ + SDL_SCANCODE_AC_REFRESH = 273, /**< AC Refresh */ + SDL_SCANCODE_AC_BOOKMARKS = 274, /**< AC Bookmarks */ + + /* @} *//* Usage page 0x0C */ + + /** + * \name Walther keys + * + * These are values that Christian Walther added (for mac keyboard?). + */ + /* @{ */ + + SDL_SCANCODE_BRIGHTNESSDOWN = 275, + SDL_SCANCODE_BRIGHTNESSUP = 276, + SDL_SCANCODE_DISPLAYSWITCH = 277, /**< display mirroring/dual display + switch, video mode switch */ + SDL_SCANCODE_KBDILLUMTOGGLE = 278, + SDL_SCANCODE_KBDILLUMDOWN = 279, + SDL_SCANCODE_KBDILLUMUP = 280, + SDL_SCANCODE_EJECT = 281, + SDL_SCANCODE_SLEEP = 282, /**< SC System Sleep */ + + SDL_SCANCODE_APP1 = 283, + SDL_SCANCODE_APP2 = 284, + + /* @} *//* Walther keys */ + + /** + * \name Usage page 0x0C (additional media keys) + * + * These values are mapped from usage page 0x0C (USB consumer page). + */ + /* @{ */ + + SDL_SCANCODE_AUDIOREWIND = 285, + SDL_SCANCODE_AUDIOFASTFORWARD = 286, + + /* @} *//* Usage page 0x0C (additional media keys) */ + + /** + * \name Mobile keys + * + * These are values that are often used on mobile phones. + */ + /* @{ */ + + SDL_SCANCODE_SOFTLEFT = 287, /**< Usually situated below the display on phones and + used as a multi-function feature key for selecting + a software defined function shown on the bottom left + of the display. */ + SDL_SCANCODE_SOFTRIGHT = 288, /**< Usually situated below the display on phones and + used as a multi-function feature key for selecting + a software defined function shown on the bottom right + of the display. */ + SDL_SCANCODE_CALL = 289, /**< Used for accepting phone calls. */ + SDL_SCANCODE_ENDCALL = 290, /**< Used for rejecting phone calls. */ + + /* @} *//* Mobile keys */ + + /* Add any other keys here. */ + + SDL_NUM_SCANCODES = 512 /**< not a key, just marks the number of scancodes + for array bounds */ +} SDL_Scancode; + +#endif /* SDL_scancode_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..df547ecc5111a9f68afc8d34f92961a2d30348ca GIT binary patch literal 38468 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

    ?@G>L!v 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h new file mode 100644 index 00000000..9ecce44b --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h @@ -0,0 +1,322 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_sensor.h + * + * Include file for SDL sensor event handling + * + */ + +#ifndef SDL_sensor_h_ +#define SDL_sensor_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +/* *INDENT-OFF* */ +extern "C" { +/* *INDENT-ON* */ +#endif + +/** + * \brief SDL_sensor.h + * + * In order to use these functions, SDL_Init() must have been called + * with the ::SDL_INIT_SENSOR flag. This causes SDL to scan the system + * for sensors, and load appropriate drivers. + */ + +struct _SDL_Sensor; +typedef struct _SDL_Sensor SDL_Sensor; + +/** + * This is a unique ID for a sensor for the time it is connected to the system, + * and is never reused for the lifetime of the application. + * + * The ID value starts at 0 and increments from there. The value -1 is an invalid ID. + */ +typedef Sint32 SDL_SensorID; + +/* The different sensors defined by SDL + * + * Additional sensors may be available, using platform dependent semantics. + * + * Hare are the additional Android sensors: + * https://developer.android.com/reference/android/hardware/SensorEvent.html#values + */ +typedef enum +{ + SDL_SENSOR_INVALID = -1, /**< Returned for an invalid sensor */ + SDL_SENSOR_UNKNOWN, /**< Unknown sensor type */ + SDL_SENSOR_ACCEL, /**< Accelerometer */ + SDL_SENSOR_GYRO, /**< Gyroscope */ + SDL_SENSOR_ACCEL_L, /**< Accelerometer for left Joy-Con controller and Wii nunchuk */ + SDL_SENSOR_GYRO_L, /**< Gyroscope for left Joy-Con controller */ + SDL_SENSOR_ACCEL_R, /**< Accelerometer for right Joy-Con controller */ + SDL_SENSOR_GYRO_R /**< Gyroscope for right Joy-Con controller */ +} SDL_SensorType; + +/** + * Accelerometer sensor + * + * The accelerometer returns the current acceleration in SI meters per + * second squared. This measurement includes the force of gravity, so + * a device at rest will have an value of SDL_STANDARD_GRAVITY away + * from the center of the earth, which is a positive Y value. + * + * values[0]: Acceleration on the x axis + * values[1]: Acceleration on the y axis + * values[2]: Acceleration on the z axis + * + * For phones held in portrait mode and game controllers held in front of you, + * the axes are defined as follows: + * -X ... +X : left ... right + * -Y ... +Y : bottom ... top + * -Z ... +Z : farther ... closer + * + * The axis data is not changed when the phone is rotated. + * + * \sa SDL_GetDisplayOrientation() + */ +#define SDL_STANDARD_GRAVITY 9.80665f + +/** + * Gyroscope sensor + * + * The gyroscope returns the current rate of rotation in radians per second. + * The rotation is positive in the counter-clockwise direction. That is, + * an observer looking from a positive location on one of the axes would + * see positive rotation on that axis when it appeared to be rotating + * counter-clockwise. + * + * values[0]: Angular speed around the x axis (pitch) + * values[1]: Angular speed around the y axis (yaw) + * values[2]: Angular speed around the z axis (roll) + * + * For phones held in portrait mode and game controllers held in front of you, + * the axes are defined as follows: + * -X ... +X : left ... right + * -Y ... +Y : bottom ... top + * -Z ... +Z : farther ... closer + * + * The axis data is not changed when the phone or controller is rotated. + * + * \sa SDL_GetDisplayOrientation() + */ + +/* Function prototypes */ + +/** + * Locking for multi-threaded access to the sensor API + * + * If you are using the sensor API or handling events from multiple threads + * you should use these locking functions to protect access to the sensors. + * + * In particular, you are guaranteed that the sensor list won't change, so the + * API functions that take a sensor index will be valid, and sensor events + * will not be delivered. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC void SDLCALL SDL_LockSensors(void); +extern DECLSPEC void SDLCALL SDL_UnlockSensors(void); + +/** + * Count the number of sensors attached to the system right now. + * + * \returns the number of sensors detected. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC int SDLCALL SDL_NumSensors(void); + +/** + * Get the implementation dependent name of a sensor. + * + * \param device_index The sensor to obtain name from + * \returns the sensor name, or NULL if `device_index` is out of range. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC const char *SDLCALL SDL_SensorGetDeviceName(int device_index); + +/** + * Get the type of a sensor. + * + * \param device_index The sensor to get the type from + * \returns the SDL_SensorType, or `SDL_SENSOR_INVALID` if `device_index` is + * out of range. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_SensorType SDLCALL SDL_SensorGetDeviceType(int device_index); + +/** + * Get the platform dependent type of a sensor. + * + * \param device_index The sensor to check + * \returns the sensor platform dependent type, or -1 if `device_index` is out + * of range. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC int SDLCALL SDL_SensorGetDeviceNonPortableType(int device_index); + +/** + * Get the instance ID of a sensor. + * + * \param device_index The sensor to get instance id from + * \returns the sensor instance ID, or -1 if `device_index` is out of range. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_SensorID SDLCALL SDL_SensorGetDeviceInstanceID(int device_index); + +/** + * Open a sensor for use. + * + * \param device_index The sensor to open + * \returns an SDL_Sensor sensor object, or NULL if an error occurred. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_Sensor *SDLCALL SDL_SensorOpen(int device_index); + +/** + * Return the SDL_Sensor associated with an instance id. + * + * \param instance_id The sensor from instance id + * \returns an SDL_Sensor object. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_Sensor *SDLCALL SDL_SensorFromInstanceID(SDL_SensorID instance_id); + +/** + * Get the implementation dependent name of a sensor + * + * \param sensor The SDL_Sensor object + * \returns the sensor name, or NULL if `sensor` is NULL. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC const char *SDLCALL SDL_SensorGetName(SDL_Sensor *sensor); + +/** + * Get the type of a sensor. + * + * \param sensor The SDL_Sensor object to inspect + * \returns the SDL_SensorType type, or `SDL_SENSOR_INVALID` if `sensor` is + * NULL. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_SensorType SDLCALL SDL_SensorGetType(SDL_Sensor *sensor); + +/** + * Get the platform dependent type of a sensor. + * + * \param sensor The SDL_Sensor object to inspect + * \returns the sensor platform dependent type, or -1 if `sensor` is NULL. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC int SDLCALL SDL_SensorGetNonPortableType(SDL_Sensor *sensor); + +/** + * Get the instance ID of a sensor. + * + * \param sensor The SDL_Sensor object to inspect + * \returns the sensor instance ID, or -1 if `sensor` is NULL. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_SensorID SDLCALL SDL_SensorGetInstanceID(SDL_Sensor *sensor); + +/** + * Get the current state of an opened sensor. + * + * The number of values and interpretation of the data is sensor dependent. + * + * \param sensor The SDL_Sensor object to query + * \param data A pointer filled with the current sensor state + * \param num_values The number of values to write to data + * \returns 0 or -1 if an error occurred. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC int SDLCALL SDL_SensorGetData(SDL_Sensor *sensor, float *data, int num_values); + +/** + * Get the current state of an opened sensor with the timestamp of the last + * update. + * + * The number of values and interpretation of the data is sensor dependent. + * + * \param sensor The SDL_Sensor object to query + * \param timestamp A pointer filled with the timestamp in microseconds of the + * current sensor reading if available, or 0 if not + * \param data A pointer filled with the current sensor state + * \param num_values The number of values to write to data + * \returns 0 or -1 if an error occurred. + * + * \since This function is available since SDL 2.26.0. + */ +extern DECLSPEC int SDLCALL SDL_SensorGetDataWithTimestamp(SDL_Sensor *sensor, Uint64 *timestamp, float *data, int num_values); + +/** + * Close a sensor previously opened with SDL_SensorOpen(). + * + * \param sensor The SDL_Sensor object to close + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC void SDLCALL SDL_SensorClose(SDL_Sensor *sensor); + +/** + * Update the current state of the open sensors. + * + * This is called automatically by the event loop if sensor events are + * enabled. + * + * This needs to be called from the thread that initialized the sensor + * subsystem. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC void SDLCALL SDL_SensorUpdate(void); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +/* *INDENT-OFF* */ +} +/* *INDENT-ON* */ +#endif +#include "close_code.h" + +#endif /* SDL_sensor_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ad971060adb7967e2fe0f97bd1dd94791af37a73 GIT binary patch literal 22017 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_shape_h_ +#define SDL_shape_h_ + +#include "SDL_stdinc.h" +#include "SDL_pixels.h" +#include "SDL_rect.h" +#include "SDL_surface.h" +#include "SDL_video.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** \file SDL_shape.h + * + * Header file for the shaped window API. + */ + +#define SDL_NONSHAPEABLE_WINDOW -1 +#define SDL_INVALID_SHAPE_ARGUMENT -2 +#define SDL_WINDOW_LACKS_SHAPE -3 + +/** + * Create a window that can be shaped with the specified position, dimensions, + * and flags. + * + * \param title The title of the window, in UTF-8 encoding. + * \param x The x position of the window, ::SDL_WINDOWPOS_CENTERED, or + * ::SDL_WINDOWPOS_UNDEFINED. + * \param y The y position of the window, ::SDL_WINDOWPOS_CENTERED, or + * ::SDL_WINDOWPOS_UNDEFINED. + * \param w The width of the window. + * \param h The height of the window. + * \param flags The flags for the window, a mask of SDL_WINDOW_BORDERLESS with + * any of the following: ::SDL_WINDOW_OPENGL, + * ::SDL_WINDOW_INPUT_GRABBED, ::SDL_WINDOW_HIDDEN, + * ::SDL_WINDOW_RESIZABLE, ::SDL_WINDOW_MAXIMIZED, + * ::SDL_WINDOW_MINIMIZED, ::SDL_WINDOW_BORDERLESS is always set, + * and ::SDL_WINDOW_FULLSCREEN is always unset. + * \return the window created, or NULL if window creation failed. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_DestroyWindow + */ +extern DECLSPEC SDL_Window * SDLCALL SDL_CreateShapedWindow(const char *title,unsigned int x,unsigned int y,unsigned int w,unsigned int h,Uint32 flags); + +/** + * Return whether the given window is a shaped window. + * + * \param window The window to query for being shaped. + * \return SDL_TRUE if the window is a window that can be shaped, SDL_FALSE if + * the window is unshaped or NULL. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateShapedWindow + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsShapedWindow(const SDL_Window *window); + +/** \brief An enum denoting the specific type of contents present in an SDL_WindowShapeParams union. */ +typedef enum { + /** \brief The default mode, a binarized alpha cutoff of 1. */ + ShapeModeDefault, + /** \brief A binarized alpha cutoff with a given integer value. */ + ShapeModeBinarizeAlpha, + /** \brief A binarized alpha cutoff with a given integer value, but with the opposite comparison. */ + ShapeModeReverseBinarizeAlpha, + /** \brief A color key is applied. */ + ShapeModeColorKey +} WindowShapeMode; + +#define SDL_SHAPEMODEALPHA(mode) (mode == ShapeModeDefault || mode == ShapeModeBinarizeAlpha || mode == ShapeModeReverseBinarizeAlpha) + +/** \brief A union containing parameters for shaped windows. */ +typedef union { + /** \brief A cutoff alpha value for binarization of the window shape's alpha channel. */ + Uint8 binarizationCutoff; + SDL_Color colorKey; +} SDL_WindowShapeParams; + +/** \brief A struct that tags the SDL_WindowShapeParams union with an enum describing the type of its contents. */ +typedef struct SDL_WindowShapeMode { + /** \brief The mode of these window-shape parameters. */ + WindowShapeMode mode; + /** \brief Window-shape parameters. */ + SDL_WindowShapeParams parameters; +} SDL_WindowShapeMode; + +/** + * Set the shape and parameters of a shaped window. + * + * \param window The shaped window whose parameters should be set. + * \param shape A surface encoding the desired shape for the window. + * \param shape_mode The parameters to set for the shaped window. + * \return 0 on success, SDL_INVALID_SHAPE_ARGUMENT on an invalid shape + * argument, or SDL_NONSHAPEABLE_WINDOW if the SDL_Window given does + * not reference a valid shaped window. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WindowShapeMode + * \sa SDL_GetShapedWindowMode + */ +extern DECLSPEC int SDLCALL SDL_SetWindowShape(SDL_Window *window,SDL_Surface *shape,SDL_WindowShapeMode *shape_mode); + +/** + * Get the shape parameters of a shaped window. + * + * \param window The shaped window whose parameters should be retrieved. + * \param shape_mode An empty shape-mode structure to fill, or NULL to check + * whether the window has a shape. + * \return 0 if the window has a shape and, provided shape_mode was not NULL, + * shape_mode has been filled with the mode data, + * SDL_NONSHAPEABLE_WINDOW if the SDL_Window given is not a shaped + * window, or SDL_WINDOW_LACKS_SHAPE if the SDL_Window given is a + * shapeable window currently lacking a shape. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_WindowShapeMode + * \sa SDL_SetWindowShape + */ +extern DECLSPEC int SDLCALL SDL_GetShapedWindowMode(SDL_Window *window,SDL_WindowShapeMode *shape_mode); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_shape_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4470a1b628ebdac5271dad40c4cf555814e107a2 GIT binary patch literal 19648 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 O*h{rYMz7vjkN*QgPNW+E literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h new file mode 100644 index 00000000..182ed86e --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h @@ -0,0 +1,838 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_stdinc.h + * + * This is a general header that includes C language support. + */ + +#ifndef SDL_stdinc_h_ +#define SDL_stdinc_h_ + +#include "SDL_config.h" + +#ifdef HAVE_SYS_TYPES_H +#include +#endif +#ifdef HAVE_STDIO_H +#include +#endif +#if defined(STDC_HEADERS) +# include +# include +# include +#else +# if defined(HAVE_STDLIB_H) +# include +# elif defined(HAVE_MALLOC_H) +# include +# endif +# if defined(HAVE_STDDEF_H) +# include +# endif +# if defined(HAVE_STDARG_H) +# include +# endif +#endif +#ifdef HAVE_STRING_H +# if !defined(STDC_HEADERS) && defined(HAVE_MEMORY_H) +# include +# endif +# include +#endif +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_WCHAR_H +# include +#endif +#if defined(HAVE_INTTYPES_H) +# include +#elif defined(HAVE_STDINT_H) +# include +#endif +#ifdef HAVE_CTYPE_H +# include +#endif +#ifdef HAVE_MATH_H +# if defined(_MSC_VER) +/* Defining _USE_MATH_DEFINES is required to get M_PI to be defined on + Visual Studio. See http://msdn.microsoft.com/en-us/library/4hwaceh6.aspx + for more information. +*/ +# ifndef _USE_MATH_DEFINES +# define _USE_MATH_DEFINES +# endif +# endif +# include +#endif +#ifdef HAVE_FLOAT_H +# include +#endif +#if defined(HAVE_ALLOCA) && !defined(alloca) +# if defined(HAVE_ALLOCA_H) +# include +# elif defined(__GNUC__) +# define alloca __builtin_alloca +# elif defined(_MSC_VER) +# include +# define alloca _alloca +# elif defined(__WATCOMC__) +# include +# elif defined(__BORLANDC__) +# include +# elif defined(__DMC__) +# include +# elif defined(__AIX__) +#pragma alloca +# elif defined(__MRC__) +void *alloca(unsigned); +# else +char *alloca(); +# endif +#endif + +#ifdef SIZE_MAX +# define SDL_SIZE_MAX SIZE_MAX +#else +# define SDL_SIZE_MAX ((size_t) -1) +#endif + +/** + * Check if the compiler supports a given builtin. + * Supported by virtually all clang versions and recent gcc. Use this + * instead of checking the clang version if possible. + */ +#ifdef __has_builtin +#define _SDL_HAS_BUILTIN(x) __has_builtin(x) +#else +#define _SDL_HAS_BUILTIN(x) 0 +#endif + +/** + * The number of elements in an array. + */ +#define SDL_arraysize(array) (sizeof(array)/sizeof(array[0])) +#define SDL_TABLESIZE(table) SDL_arraysize(table) + +/** + * Macro useful for building other macros with strings in them + * + * e.g. #define LOG_ERROR(X) OutputDebugString(SDL_STRINGIFY_ARG(__FUNCTION__) ": " X "\n") + */ +#define SDL_STRINGIFY_ARG(arg) #arg + +/** + * \name Cast operators + * + * Use proper C++ casts when compiled as C++ to be compatible with the option + * -Wold-style-cast of GCC (and -Werror=old-style-cast in GCC 4.2 and above). + */ +/* @{ */ +#ifdef __cplusplus +#define SDL_reinterpret_cast(type, expression) reinterpret_cast(expression) +#define SDL_static_cast(type, expression) static_cast(expression) +#define SDL_const_cast(type, expression) const_cast(expression) +#else +#define SDL_reinterpret_cast(type, expression) ((type)(expression)) +#define SDL_static_cast(type, expression) ((type)(expression)) +#define SDL_const_cast(type, expression) ((type)(expression)) +#endif +/* @} *//* Cast operators */ + +/* Define a four character code as a Uint32 */ +#define SDL_FOURCC(A, B, C, D) \ + ((SDL_static_cast(Uint32, SDL_static_cast(Uint8, (A))) << 0) | \ + (SDL_static_cast(Uint32, SDL_static_cast(Uint8, (B))) << 8) | \ + (SDL_static_cast(Uint32, SDL_static_cast(Uint8, (C))) << 16) | \ + (SDL_static_cast(Uint32, SDL_static_cast(Uint8, (D))) << 24)) + +/** + * \name Basic data types + */ +/* @{ */ + +#ifdef __CC_ARM +/* ARM's compiler throws warnings if we use an enum: like "SDL_bool x = a < b;" */ +#define SDL_FALSE 0 +#define SDL_TRUE 1 +typedef int SDL_bool; +#else +typedef enum +{ + SDL_FALSE = 0, + SDL_TRUE = 1 +} SDL_bool; +#endif + +/** + * \brief A signed 8-bit integer type. + */ +#define SDL_MAX_SINT8 ((Sint8)0x7F) /* 127 */ +#define SDL_MIN_SINT8 ((Sint8)(~0x7F)) /* -128 */ +typedef int8_t Sint8; +/** + * \brief An unsigned 8-bit integer type. + */ +#define SDL_MAX_UINT8 ((Uint8)0xFF) /* 255 */ +#define SDL_MIN_UINT8 ((Uint8)0x00) /* 0 */ +typedef uint8_t Uint8; +/** + * \brief A signed 16-bit integer type. + */ +#define SDL_MAX_SINT16 ((Sint16)0x7FFF) /* 32767 */ +#define SDL_MIN_SINT16 ((Sint16)(~0x7FFF)) /* -32768 */ +typedef int16_t Sint16; +/** + * \brief An unsigned 16-bit integer type. + */ +#define SDL_MAX_UINT16 ((Uint16)0xFFFF) /* 65535 */ +#define SDL_MIN_UINT16 ((Uint16)0x0000) /* 0 */ +typedef uint16_t Uint16; +/** + * \brief A signed 32-bit integer type. + */ +#define SDL_MAX_SINT32 ((Sint32)0x7FFFFFFF) /* 2147483647 */ +#define SDL_MIN_SINT32 ((Sint32)(~0x7FFFFFFF)) /* -2147483648 */ +typedef int32_t Sint32; +/** + * \brief An unsigned 32-bit integer type. + */ +#define SDL_MAX_UINT32 ((Uint32)0xFFFFFFFFu) /* 4294967295 */ +#define SDL_MIN_UINT32 ((Uint32)0x00000000) /* 0 */ +typedef uint32_t Uint32; + +/** + * \brief A signed 64-bit integer type. + */ +#define SDL_MAX_SINT64 ((Sint64)0x7FFFFFFFFFFFFFFFll) /* 9223372036854775807 */ +#define SDL_MIN_SINT64 ((Sint64)(~0x7FFFFFFFFFFFFFFFll)) /* -9223372036854775808 */ +typedef int64_t Sint64; +/** + * \brief An unsigned 64-bit integer type. + */ +#define SDL_MAX_UINT64 ((Uint64)0xFFFFFFFFFFFFFFFFull) /* 18446744073709551615 */ +#define SDL_MIN_UINT64 ((Uint64)(0x0000000000000000ull)) /* 0 */ +typedef uint64_t Uint64; + +/* @} *//* Basic data types */ + +/** + * \name Floating-point constants + */ +/* @{ */ + +#ifdef FLT_EPSILON +#define SDL_FLT_EPSILON FLT_EPSILON +#else +#define SDL_FLT_EPSILON 1.1920928955078125e-07F /* 0x0.000002p0 */ +#endif + +/* @} *//* Floating-point constants */ + +/* Make sure we have macros for printing width-based integers. + * should define these but this is not true all platforms. + * (for example win32) */ +#ifndef SDL_PRIs64 +#ifdef PRIs64 +#define SDL_PRIs64 PRIs64 +#elif defined(__WIN32__) || defined(__GDK__) +#define SDL_PRIs64 "I64d" +#elif defined(__LINUX__) && defined(__LP64__) +#define SDL_PRIs64 "ld" +#else +#define SDL_PRIs64 "lld" +#endif +#endif +#ifndef SDL_PRIu64 +#ifdef PRIu64 +#define SDL_PRIu64 PRIu64 +#elif defined(__WIN32__) || defined(__GDK__) +#define SDL_PRIu64 "I64u" +#elif defined(__LINUX__) && defined(__LP64__) +#define SDL_PRIu64 "lu" +#else +#define SDL_PRIu64 "llu" +#endif +#endif +#ifndef SDL_PRIx64 +#ifdef PRIx64 +#define SDL_PRIx64 PRIx64 +#elif defined(__WIN32__) || defined(__GDK__) +#define SDL_PRIx64 "I64x" +#elif defined(__LINUX__) && defined(__LP64__) +#define SDL_PRIx64 "lx" +#else +#define SDL_PRIx64 "llx" +#endif +#endif +#ifndef SDL_PRIX64 +#ifdef PRIX64 +#define SDL_PRIX64 PRIX64 +#elif defined(__WIN32__) || defined(__GDK__) +#define SDL_PRIX64 "I64X" +#elif defined(__LINUX__) && defined(__LP64__) +#define SDL_PRIX64 "lX" +#else +#define SDL_PRIX64 "llX" +#endif +#endif +#ifndef SDL_PRIs32 +#ifdef PRId32 +#define SDL_PRIs32 PRId32 +#else +#define SDL_PRIs32 "d" +#endif +#endif +#ifndef SDL_PRIu32 +#ifdef PRIu32 +#define SDL_PRIu32 PRIu32 +#else +#define SDL_PRIu32 "u" +#endif +#endif +#ifndef SDL_PRIx32 +#ifdef PRIx32 +#define SDL_PRIx32 PRIx32 +#else +#define SDL_PRIx32 "x" +#endif +#endif +#ifndef SDL_PRIX32 +#ifdef PRIX32 +#define SDL_PRIX32 PRIX32 +#else +#define SDL_PRIX32 "X" +#endif +#endif + +/* Annotations to help code analysis tools */ +#ifdef SDL_DISABLE_ANALYZE_MACROS +#define SDL_IN_BYTECAP(x) +#define SDL_INOUT_Z_CAP(x) +#define SDL_OUT_Z_CAP(x) +#define SDL_OUT_CAP(x) +#define SDL_OUT_BYTECAP(x) +#define SDL_OUT_Z_BYTECAP(x) +#define SDL_PRINTF_FORMAT_STRING +#define SDL_SCANF_FORMAT_STRING +#define SDL_PRINTF_VARARG_FUNC( fmtargnumber ) +#define SDL_SCANF_VARARG_FUNC( fmtargnumber ) +#else +#if defined(_MSC_VER) && (_MSC_VER >= 1600) /* VS 2010 and above */ +#include + +#define SDL_IN_BYTECAP(x) _In_bytecount_(x) +#define SDL_INOUT_Z_CAP(x) _Inout_z_cap_(x) +#define SDL_OUT_Z_CAP(x) _Out_z_cap_(x) +#define SDL_OUT_CAP(x) _Out_cap_(x) +#define SDL_OUT_BYTECAP(x) _Out_bytecap_(x) +#define SDL_OUT_Z_BYTECAP(x) _Out_z_bytecap_(x) + +#define SDL_PRINTF_FORMAT_STRING _Printf_format_string_ +#define SDL_SCANF_FORMAT_STRING _Scanf_format_string_impl_ +#else +#define SDL_IN_BYTECAP(x) +#define SDL_INOUT_Z_CAP(x) +#define SDL_OUT_Z_CAP(x) +#define SDL_OUT_CAP(x) +#define SDL_OUT_BYTECAP(x) +#define SDL_OUT_Z_BYTECAP(x) +#define SDL_PRINTF_FORMAT_STRING +#define SDL_SCANF_FORMAT_STRING +#endif +#if defined(__GNUC__) +#define SDL_PRINTF_VARARG_FUNC( fmtargnumber ) __attribute__ (( format( __printf__, fmtargnumber, fmtargnumber+1 ))) +#define SDL_SCANF_VARARG_FUNC( fmtargnumber ) __attribute__ (( format( __scanf__, fmtargnumber, fmtargnumber+1 ))) +#else +#define SDL_PRINTF_VARARG_FUNC( fmtargnumber ) +#define SDL_SCANF_VARARG_FUNC( fmtargnumber ) +#endif +#endif /* SDL_DISABLE_ANALYZE_MACROS */ + +#ifndef SDL_COMPILE_TIME_ASSERT +#if defined(__cplusplus) +#if (__cplusplus >= 201103L) +#define SDL_COMPILE_TIME_ASSERT(name, x) static_assert(x, #x) +#endif +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L) +#define SDL_COMPILE_TIME_ASSERT(name, x) _Static_assert(x, #x) +#endif +#endif /* !SDL_COMPILE_TIME_ASSERT */ + +#ifndef SDL_COMPILE_TIME_ASSERT +/* universal, but may trigger -Wunused-local-typedefs */ +#define SDL_COMPILE_TIME_ASSERT(name, x) \ + typedef int SDL_compile_time_assert_ ## name[(x) * 2 - 1] +#endif + +/** \cond */ +#ifndef DOXYGEN_SHOULD_IGNORE_THIS +SDL_COMPILE_TIME_ASSERT(uint8, sizeof(Uint8) == 1); +SDL_COMPILE_TIME_ASSERT(sint8, sizeof(Sint8) == 1); +SDL_COMPILE_TIME_ASSERT(uint16, sizeof(Uint16) == 2); +SDL_COMPILE_TIME_ASSERT(sint16, sizeof(Sint16) == 2); +SDL_COMPILE_TIME_ASSERT(uint32, sizeof(Uint32) == 4); +SDL_COMPILE_TIME_ASSERT(sint32, sizeof(Sint32) == 4); +SDL_COMPILE_TIME_ASSERT(uint64, sizeof(Uint64) == 8); +SDL_COMPILE_TIME_ASSERT(sint64, sizeof(Sint64) == 8); +#endif /* DOXYGEN_SHOULD_IGNORE_THIS */ +/** \endcond */ + +/* Check to make sure enums are the size of ints, for structure packing. + For both Watcom C/C++ and Borland C/C++ the compiler option that makes + enums having the size of an int must be enabled. + This is "-b" for Borland C/C++ and "-ei" for Watcom C/C++ (v11). +*/ + +/** \cond */ +#ifndef DOXYGEN_SHOULD_IGNORE_THIS +#if !defined(__ANDROID__) && !defined(__VITA__) && !defined(__3DS__) + /* TODO: include/SDL_stdinc.h:174: error: size of array 'SDL_dummy_enum' is negative */ +typedef enum +{ + DUMMY_ENUM_VALUE +} SDL_DUMMY_ENUM; + +SDL_COMPILE_TIME_ASSERT(enum, sizeof(SDL_DUMMY_ENUM) == sizeof(int)); +#endif +#endif /* DOXYGEN_SHOULD_IGNORE_THIS */ +/** \endcond */ + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef HAVE_ALLOCA +#define SDL_stack_alloc(type, count) (type*)alloca(sizeof(type)*(count)) +#define SDL_stack_free(data) +#else +#define SDL_stack_alloc(type, count) (type*)SDL_malloc(sizeof(type)*(count)) +#define SDL_stack_free(data) SDL_free(data) +#endif + +extern DECLSPEC void *SDLCALL SDL_malloc(size_t size); +extern DECLSPEC void *SDLCALL SDL_calloc(size_t nmemb, size_t size); +extern DECLSPEC void *SDLCALL SDL_realloc(void *mem, size_t size); +extern DECLSPEC void SDLCALL SDL_free(void *mem); + +typedef void *(SDLCALL *SDL_malloc_func)(size_t size); +typedef void *(SDLCALL *SDL_calloc_func)(size_t nmemb, size_t size); +typedef void *(SDLCALL *SDL_realloc_func)(void *mem, size_t size); +typedef void (SDLCALL *SDL_free_func)(void *mem); + +/** + * Get the original set of SDL memory functions + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC void SDLCALL SDL_GetOriginalMemoryFunctions(SDL_malloc_func *malloc_func, + SDL_calloc_func *calloc_func, + SDL_realloc_func *realloc_func, + SDL_free_func *free_func); + +/** + * Get the current set of SDL memory functions + * + * \since This function is available since SDL 2.0.7. + */ +extern DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_func, + SDL_calloc_func *calloc_func, + SDL_realloc_func *realloc_func, + SDL_free_func *free_func); + +/** + * Replace SDL's memory allocation functions with a custom set + * + * \since This function is available since SDL 2.0.7. + */ +extern DECLSPEC int SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, + SDL_calloc_func calloc_func, + SDL_realloc_func realloc_func, + SDL_free_func free_func); + +/** + * Get the number of outstanding (unfreed) allocations + * + * \since This function is available since SDL 2.0.7. + */ +extern DECLSPEC int SDLCALL SDL_GetNumAllocations(void); + +extern DECLSPEC char *SDLCALL SDL_getenv(const char *name); +extern DECLSPEC int SDLCALL SDL_setenv(const char *name, const char *value, int overwrite); + +extern DECLSPEC void SDLCALL SDL_qsort(void *base, size_t nmemb, size_t size, int (SDLCALL *compare) (const void *, const void *)); +extern DECLSPEC void * SDLCALL SDL_bsearch(const void *key, const void *base, size_t nmemb, size_t size, int (SDLCALL *compare) (const void *, const void *)); + +extern DECLSPEC int SDLCALL SDL_abs(int x); + +/* NOTE: these double-evaluate their arguments, so you should never have side effects in the parameters */ +#define SDL_min(x, y) (((x) < (y)) ? (x) : (y)) +#define SDL_max(x, y) (((x) > (y)) ? (x) : (y)) +#define SDL_clamp(x, a, b) (((x) < (a)) ? (a) : (((x) > (b)) ? (b) : (x))) + +extern DECLSPEC int SDLCALL SDL_isalpha(int x); +extern DECLSPEC int SDLCALL SDL_isalnum(int x); +extern DECLSPEC int SDLCALL SDL_isblank(int x); +extern DECLSPEC int SDLCALL SDL_iscntrl(int x); +extern DECLSPEC int SDLCALL SDL_isdigit(int x); +extern DECLSPEC int SDLCALL SDL_isxdigit(int x); +extern DECLSPEC int SDLCALL SDL_ispunct(int x); +extern DECLSPEC int SDLCALL SDL_isspace(int x); +extern DECLSPEC int SDLCALL SDL_isupper(int x); +extern DECLSPEC int SDLCALL SDL_islower(int x); +extern DECLSPEC int SDLCALL SDL_isprint(int x); +extern DECLSPEC int SDLCALL SDL_isgraph(int x); +extern DECLSPEC int SDLCALL SDL_toupper(int x); +extern DECLSPEC int SDLCALL SDL_tolower(int x); + +extern DECLSPEC Uint16 SDLCALL SDL_crc16(Uint16 crc, const void *data, size_t len); +extern DECLSPEC Uint32 SDLCALL SDL_crc32(Uint32 crc, const void *data, size_t len); + +extern DECLSPEC void *SDLCALL SDL_memset(SDL_OUT_BYTECAP(len) void *dst, int c, size_t len); + +#define SDL_zero(x) SDL_memset(&(x), 0, sizeof((x))) +#define SDL_zerop(x) SDL_memset((x), 0, sizeof(*(x))) +#define SDL_zeroa(x) SDL_memset((x), 0, sizeof((x))) + +#define SDL_copyp(dst, src) \ + { SDL_COMPILE_TIME_ASSERT(SDL_copyp, sizeof (*(dst)) == sizeof (*(src))); } \ + SDL_memcpy((dst), (src), sizeof (*(src))) + + +/* Note that memset() is a byte assignment and this is a 32-bit assignment, so they're not directly equivalent. */ +SDL_FORCE_INLINE void SDL_memset4(void *dst, Uint32 val, size_t dwords) +{ +#if defined(__GNUC__) && defined(__i386__) + int u0, u1, u2; + __asm__ __volatile__ ( + "cld \n\t" + "rep ; stosl \n\t" + : "=&D" (u0), "=&a" (u1), "=&c" (u2) + : "0" (dst), "1" (val), "2" (SDL_static_cast(Uint32, dwords)) + : "memory" + ); +#else + size_t _n = (dwords + 3) / 4; + Uint32 *_p = SDL_static_cast(Uint32 *, dst); + Uint32 _val = (val); + if (dwords == 0) { + return; + } + switch (dwords % 4) { + case 0: do { *_p++ = _val; SDL_FALLTHROUGH; + case 3: *_p++ = _val; SDL_FALLTHROUGH; + case 2: *_p++ = _val; SDL_FALLTHROUGH; + case 1: *_p++ = _val; + } while ( --_n ); + } +#endif +} + +extern DECLSPEC void *SDLCALL SDL_memcpy(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len); + +extern DECLSPEC void *SDLCALL SDL_memmove(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len); +extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2, size_t len); + +extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr); +extern DECLSPEC size_t SDLCALL SDL_wcslcpy(SDL_OUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); +extern DECLSPEC size_t SDLCALL SDL_wcslcat(SDL_INOUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); +extern DECLSPEC wchar_t *SDLCALL SDL_wcsdup(const wchar_t *wstr); +extern DECLSPEC wchar_t *SDLCALL SDL_wcsstr(const wchar_t *haystack, const wchar_t *needle); + +extern DECLSPEC int SDLCALL SDL_wcscmp(const wchar_t *str1, const wchar_t *str2); +extern DECLSPEC int SDLCALL SDL_wcsncmp(const wchar_t *str1, const wchar_t *str2, size_t maxlen); +extern DECLSPEC int SDLCALL SDL_wcscasecmp(const wchar_t *str1, const wchar_t *str2); +extern DECLSPEC int SDLCALL SDL_wcsncasecmp(const wchar_t *str1, const wchar_t *str2, size_t len); + +extern DECLSPEC size_t SDLCALL SDL_strlen(const char *str); +extern DECLSPEC size_t SDLCALL SDL_strlcpy(SDL_OUT_Z_CAP(maxlen) char *dst, const char *src, size_t maxlen); +extern DECLSPEC size_t SDLCALL SDL_utf8strlcpy(SDL_OUT_Z_CAP(dst_bytes) char *dst, const char *src, size_t dst_bytes); +extern DECLSPEC size_t SDLCALL SDL_strlcat(SDL_INOUT_Z_CAP(maxlen) char *dst, const char *src, size_t maxlen); +extern DECLSPEC char *SDLCALL SDL_strdup(const char *str); +extern DECLSPEC char *SDLCALL SDL_strrev(char *str); +extern DECLSPEC char *SDLCALL SDL_strupr(char *str); +extern DECLSPEC char *SDLCALL SDL_strlwr(char *str); +extern DECLSPEC char *SDLCALL SDL_strchr(const char *str, int c); +extern DECLSPEC char *SDLCALL SDL_strrchr(const char *str, int c); +extern DECLSPEC char *SDLCALL SDL_strstr(const char *haystack, const char *needle); +extern DECLSPEC char *SDLCALL SDL_strcasestr(const char *haystack, const char *needle); +extern DECLSPEC char *SDLCALL SDL_strtokr(char *s1, const char *s2, char **saveptr); +extern DECLSPEC size_t SDLCALL SDL_utf8strlen(const char *str); +extern DECLSPEC size_t SDLCALL SDL_utf8strnlen(const char *str, size_t bytes); + +extern DECLSPEC char *SDLCALL SDL_itoa(int value, char *str, int radix); +extern DECLSPEC char *SDLCALL SDL_uitoa(unsigned int value, char *str, int radix); +extern DECLSPEC char *SDLCALL SDL_ltoa(long value, char *str, int radix); +extern DECLSPEC char *SDLCALL SDL_ultoa(unsigned long value, char *str, int radix); +extern DECLSPEC char *SDLCALL SDL_lltoa(Sint64 value, char *str, int radix); +extern DECLSPEC char *SDLCALL SDL_ulltoa(Uint64 value, char *str, int radix); + +extern DECLSPEC int SDLCALL SDL_atoi(const char *str); +extern DECLSPEC double SDLCALL SDL_atof(const char *str); +extern DECLSPEC long SDLCALL SDL_strtol(const char *str, char **endp, int base); +extern DECLSPEC unsigned long SDLCALL SDL_strtoul(const char *str, char **endp, int base); +extern DECLSPEC Sint64 SDLCALL SDL_strtoll(const char *str, char **endp, int base); +extern DECLSPEC Uint64 SDLCALL SDL_strtoull(const char *str, char **endp, int base); +extern DECLSPEC double SDLCALL SDL_strtod(const char *str, char **endp); + +extern DECLSPEC int SDLCALL SDL_strcmp(const char *str1, const char *str2); +extern DECLSPEC int SDLCALL SDL_strncmp(const char *str1, const char *str2, size_t maxlen); +extern DECLSPEC int SDLCALL SDL_strcasecmp(const char *str1, const char *str2); +extern DECLSPEC int SDLCALL SDL_strncasecmp(const char *str1, const char *str2, size_t len); + +extern DECLSPEC int SDLCALL SDL_sscanf(const char *text, SDL_SCANF_FORMAT_STRING const char *fmt, ...) SDL_SCANF_VARARG_FUNC(2); +extern DECLSPEC int SDLCALL SDL_vsscanf(const char *text, const char *fmt, va_list ap); +extern DECLSPEC int SDLCALL SDL_snprintf(SDL_OUT_Z_CAP(maxlen) char *text, size_t maxlen, SDL_PRINTF_FORMAT_STRING const char *fmt, ... ) SDL_PRINTF_VARARG_FUNC(3); +extern DECLSPEC int SDLCALL SDL_vsnprintf(SDL_OUT_Z_CAP(maxlen) char *text, size_t maxlen, const char *fmt, va_list ap); +extern DECLSPEC int SDLCALL SDL_asprintf(char **strp, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); +extern DECLSPEC int SDLCALL SDL_vasprintf(char **strp, const char *fmt, va_list ap); + +#ifndef HAVE_M_PI +#ifndef M_PI +#define M_PI 3.14159265358979323846264338327950288 /**< pi */ +#endif +#endif + +/** + * Use this function to compute arc cosine of `x`. + * + * The definition of `y = acos(x)` is `x = cos(y)`. + * + * Domain: `-1 <= x <= 1` + * + * Range: `0 <= y <= Pi` + * + * \param x floating point value, in radians. + * \returns arc cosine of `x`. + * + * \since This function is available since SDL 2.0.2. + */ +extern DECLSPEC double SDLCALL SDL_acos(double x); +extern DECLSPEC float SDLCALL SDL_acosf(float x); +extern DECLSPEC double SDLCALL SDL_asin(double x); +extern DECLSPEC float SDLCALL SDL_asinf(float x); +extern DECLSPEC double SDLCALL SDL_atan(double x); +extern DECLSPEC float SDLCALL SDL_atanf(float x); +extern DECLSPEC double SDLCALL SDL_atan2(double y, double x); +extern DECLSPEC float SDLCALL SDL_atan2f(float y, float x); +extern DECLSPEC double SDLCALL SDL_ceil(double x); +extern DECLSPEC float SDLCALL SDL_ceilf(float x); +extern DECLSPEC double SDLCALL SDL_copysign(double x, double y); +extern DECLSPEC float SDLCALL SDL_copysignf(float x, float y); +extern DECLSPEC double SDLCALL SDL_cos(double x); +extern DECLSPEC float SDLCALL SDL_cosf(float x); +extern DECLSPEC double SDLCALL SDL_exp(double x); +extern DECLSPEC float SDLCALL SDL_expf(float x); +extern DECLSPEC double SDLCALL SDL_fabs(double x); +extern DECLSPEC float SDLCALL SDL_fabsf(float x); +extern DECLSPEC double SDLCALL SDL_floor(double x); +extern DECLSPEC float SDLCALL SDL_floorf(float x); +extern DECLSPEC double SDLCALL SDL_trunc(double x); +extern DECLSPEC float SDLCALL SDL_truncf(float x); +extern DECLSPEC double SDLCALL SDL_fmod(double x, double y); +extern DECLSPEC float SDLCALL SDL_fmodf(float x, float y); +extern DECLSPEC double SDLCALL SDL_log(double x); +extern DECLSPEC float SDLCALL SDL_logf(float x); +extern DECLSPEC double SDLCALL SDL_log10(double x); +extern DECLSPEC float SDLCALL SDL_log10f(float x); +extern DECLSPEC double SDLCALL SDL_pow(double x, double y); +extern DECLSPEC float SDLCALL SDL_powf(float x, float y); +extern DECLSPEC double SDLCALL SDL_round(double x); +extern DECLSPEC float SDLCALL SDL_roundf(float x); +extern DECLSPEC long SDLCALL SDL_lround(double x); +extern DECLSPEC long SDLCALL SDL_lroundf(float x); +extern DECLSPEC double SDLCALL SDL_scalbn(double x, int n); +extern DECLSPEC float SDLCALL SDL_scalbnf(float x, int n); +extern DECLSPEC double SDLCALL SDL_sin(double x); +extern DECLSPEC float SDLCALL SDL_sinf(float x); +extern DECLSPEC double SDLCALL SDL_sqrt(double x); +extern DECLSPEC float SDLCALL SDL_sqrtf(float x); +extern DECLSPEC double SDLCALL SDL_tan(double x); +extern DECLSPEC float SDLCALL SDL_tanf(float x); + +/* The SDL implementation of iconv() returns these error codes */ +#define SDL_ICONV_ERROR (size_t)-1 +#define SDL_ICONV_E2BIG (size_t)-2 +#define SDL_ICONV_EILSEQ (size_t)-3 +#define SDL_ICONV_EINVAL (size_t)-4 + +/* SDL_iconv_* are now always real symbols/types, not macros or inlined. */ +typedef struct _SDL_iconv_t *SDL_iconv_t; +extern DECLSPEC SDL_iconv_t SDLCALL SDL_iconv_open(const char *tocode, + const char *fromcode); +extern DECLSPEC int SDLCALL SDL_iconv_close(SDL_iconv_t cd); +extern DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf, + size_t * inbytesleft, char **outbuf, + size_t * outbytesleft); + +/** + * This function converts a buffer or string between encodings in one pass, returning a + * string that must be freed with SDL_free() or NULL on error. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC char *SDLCALL SDL_iconv_string(const char *tocode, + const char *fromcode, + const char *inbuf, + size_t inbytesleft); +#define SDL_iconv_utf8_locale(S) SDL_iconv_string("", "UTF-8", S, SDL_strlen(S)+1) +#define SDL_iconv_utf8_ucs2(S) (Uint16 *)SDL_iconv_string("UCS-2-INTERNAL", "UTF-8", S, SDL_strlen(S)+1) +#define SDL_iconv_utf8_ucs4(S) (Uint32 *)SDL_iconv_string("UCS-4-INTERNAL", "UTF-8", S, SDL_strlen(S)+1) +#define SDL_iconv_wchar_utf8(S) SDL_iconv_string("UTF-8", "WCHAR_T", (char *)S, (SDL_wcslen(S)+1)*sizeof(wchar_t)) + +/* force builds using Clang's static analysis tools to use literal C runtime + here, since there are possibly tests that are ineffective otherwise. */ +#if defined(__clang_analyzer__) && !defined(SDL_DISABLE_ANALYZE_MACROS) + +/* The analyzer knows about strlcpy even when the system doesn't provide it */ +#ifndef HAVE_STRLCPY +size_t strlcpy(char* dst, const char* src, size_t size); +#endif + +/* The analyzer knows about strlcat even when the system doesn't provide it */ +#ifndef HAVE_STRLCAT +size_t strlcat(char* dst, const char* src, size_t size); +#endif + +#ifndef HAVE_WCSLCPY +size_t wcslcpy(wchar_t *dst, const wchar_t *src, size_t size); +#endif + +#ifndef HAVE_WCSLCAT +size_t wcslcat(wchar_t *dst, const wchar_t *src, size_t size); +#endif + +/* Starting LLVM 16, the analyser errors out if these functions do not have + their prototype defined (clang-diagnostic-implicit-function-declaration) */ +#include +#include +#include + +#define SDL_malloc malloc +#define SDL_calloc calloc +#define SDL_realloc realloc +#define SDL_free free +#define SDL_memset memset +#define SDL_memcpy memcpy +#define SDL_memmove memmove +#define SDL_memcmp memcmp +#define SDL_strlcpy strlcpy +#define SDL_strlcat strlcat +#define SDL_strlen strlen +#define SDL_wcslen wcslen +#define SDL_wcslcpy wcslcpy +#define SDL_wcslcat wcslcat +#define SDL_strdup strdup +#define SDL_wcsdup wcsdup +#define SDL_strchr strchr +#define SDL_strrchr strrchr +#define SDL_strstr strstr +#define SDL_wcsstr wcsstr +#define SDL_strtokr strtok_r +#define SDL_strcmp strcmp +#define SDL_wcscmp wcscmp +#define SDL_strncmp strncmp +#define SDL_wcsncmp wcsncmp +#define SDL_strcasecmp strcasecmp +#define SDL_strncasecmp strncasecmp +#define SDL_sscanf sscanf +#define SDL_vsscanf vsscanf +#define SDL_snprintf snprintf +#define SDL_vsnprintf vsnprintf +#endif + +SDL_FORCE_INLINE void *SDL_memcpy4(SDL_OUT_BYTECAP(dwords*4) void *dst, SDL_IN_BYTECAP(dwords*4) const void *src, size_t dwords) +{ + return SDL_memcpy(dst, src, dwords * 4); +} + +/** + * If a * b would overflow, return -1. Otherwise store a * b via ret + * and return 0. + * + * \since This function is available since SDL 2.24.0. + */ +SDL_FORCE_INLINE int SDL_size_mul_overflow (size_t a, + size_t b, + size_t *ret) +{ + if (a != 0 && b > SDL_SIZE_MAX / a) { + return -1; + } + *ret = a * b; + return 0; +} + +#if _SDL_HAS_BUILTIN(__builtin_mul_overflow) +/* This needs to be wrapped in an inline rather than being a direct #define, + * because __builtin_mul_overflow() is type-generic, but we want to be + * consistent about interpreting a and b as size_t. */ +SDL_FORCE_INLINE int _SDL_size_mul_overflow_builtin (size_t a, + size_t b, + size_t *ret) +{ + return __builtin_mul_overflow(a, b, ret) == 0 ? 0 : -1; +} +#define SDL_size_mul_overflow(a, b, ret) (_SDL_size_mul_overflow_builtin(a, b, ret)) +#endif + +/** + * If a + b would overflow, return -1. Otherwise store a + b via ret + * and return 0. + * + * \since This function is available since SDL 2.24.0. + */ +SDL_FORCE_INLINE int SDL_size_add_overflow (size_t a, + size_t b, + size_t *ret) +{ + if (b > SDL_SIZE_MAX - a) { + return -1; + } + *ret = a + b; + return 0; +} + +#if _SDL_HAS_BUILTIN(__builtin_add_overflow) +/* This needs to be wrapped in an inline rather than being a direct #define, + * the same as the call to __builtin_mul_overflow() above. */ +SDL_FORCE_INLINE int _SDL_size_add_overflow_builtin (size_t a, + size_t b, + size_t *ret) +{ + return __builtin_add_overflow(a, b, ret) == 0 ? 0 : -1; +} +#define SDL_size_add_overflow(a, b, ret) (_SDL_size_add_overflow_builtin(a, b, ret)) +#endif + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_stdinc_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ef182226b1ff9fc65cc22d56df01497a228084d4 GIT binary patch literal 59883 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 UM5B2GF`Wjv=N?2B0xT*116+>+CjbBd literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h new file mode 100644 index 00000000..d6ee615c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h @@ -0,0 +1,997 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_surface.h + * + * Header file for ::SDL_Surface definition and management functions. + */ + +#ifndef SDL_surface_h_ +#define SDL_surface_h_ + +#include "SDL_stdinc.h" +#include "SDL_pixels.h" +#include "SDL_rect.h" +#include "SDL_blendmode.h" +#include "SDL_rwops.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \name Surface flags + * + * These are the currently supported flags for the ::SDL_Surface. + * + * \internal + * Used internally (read-only). + */ +/* @{ */ +#define SDL_SWSURFACE 0 /**< Just here for compatibility */ +#define SDL_PREALLOC 0x00000001 /**< Surface uses preallocated memory */ +#define SDL_RLEACCEL 0x00000002 /**< Surface is RLE encoded */ +#define SDL_DONTFREE 0x00000004 /**< Surface is referenced internally */ +#define SDL_SIMD_ALIGNED 0x00000008 /**< Surface uses aligned memory */ +/* @} *//* Surface flags */ + +/** + * Evaluates to true if the surface needs to be locked before access. + */ +#define SDL_MUSTLOCK(S) (((S)->flags & SDL_RLEACCEL) != 0) + +typedef struct SDL_BlitMap SDL_BlitMap; /* this is an opaque type. */ + +/** + * \brief A collection of pixels used in software blitting. + * + * \note This structure should be treated as read-only, except for \c pixels, + * which, if not NULL, contains the raw pixel data for the surface. + */ +typedef struct SDL_Surface +{ + Uint32 flags; /**< Read-only */ + SDL_PixelFormat *format; /**< Read-only */ + int w, h; /**< Read-only */ + int pitch; /**< Read-only */ + void *pixels; /**< Read-write */ + + /** Application data associated with the surface */ + void *userdata; /**< Read-write */ + + /** information needed for surfaces requiring locks */ + int locked; /**< Read-only */ + + /** list of BlitMap that hold a reference to this surface */ + void *list_blitmap; /**< Private */ + + /** clipping information */ + SDL_Rect clip_rect; /**< Read-only */ + + /** info for fast blit mapping to other surfaces */ + SDL_BlitMap *map; /**< Private */ + + /** Reference count -- used when freeing surface */ + int refcount; /**< Read-mostly */ +} SDL_Surface; + +/** + * \brief The type of function used for surface blitting functions. + */ +typedef int (SDLCALL *SDL_blit) (struct SDL_Surface * src, SDL_Rect * srcrect, + struct SDL_Surface * dst, SDL_Rect * dstrect); + +/** + * \brief The formula used for converting between YUV and RGB + */ +typedef enum +{ + SDL_YUV_CONVERSION_JPEG, /**< Full range JPEG */ + SDL_YUV_CONVERSION_BT601, /**< BT.601 (the default) */ + SDL_YUV_CONVERSION_BT709, /**< BT.709 */ + SDL_YUV_CONVERSION_AUTOMATIC /**< BT.601 for SD content, BT.709 for HD content */ +} SDL_YUV_CONVERSION_MODE; + +/** + * Allocate a new RGB surface. + * + * If `depth` is 4 or 8 bits, an empty palette is allocated for the surface. + * If `depth` is greater than 8 bits, the pixel format is set using the + * [RGBA]mask parameters. + * + * The [RGBA]mask parameters are the bitmasks used to extract that color from + * a pixel. For instance, `Rmask` being 0xFF000000 means the red data is + * stored in the most significant byte. Using zeros for the RGB masks sets a + * default value, based on the depth. For example: + * + * ```c++ + * SDL_CreateRGBSurface(0,w,h,32,0,0,0,0); + * ``` + * + * However, using zero for the Amask results in an Amask of 0. + * + * By default surfaces with an alpha mask are set up for blending as with: + * + * ```c++ + * SDL_SetSurfaceBlendMode(surface, SDL_BLENDMODE_BLEND) + * ``` + * + * You can change this by calling SDL_SetSurfaceBlendMode() and selecting a + * different `blendMode`. + * + * \param flags the flags are unused and should be set to 0 + * \param width the width of the surface + * \param height the height of the surface + * \param depth the depth of the surface in bits + * \param Rmask the red mask for the pixels + * \param Gmask the green mask for the pixels + * \param Bmask the blue mask for the pixels + * \param Amask the alpha mask for the pixels + * \returns the new SDL_Surface structure that is created or NULL if it fails; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRGBSurfaceFrom + * \sa SDL_CreateRGBSurfaceWithFormat + * \sa SDL_FreeSurface + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurface + (Uint32 flags, int width, int height, int depth, + Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask); + + +/* !!! FIXME for 2.1: why does this ask for depth? Format provides that. */ + +/** + * Allocate a new RGB surface with a specific pixel format. + * + * This function operates mostly like SDL_CreateRGBSurface(), except instead + * of providing pixel color masks, you provide it with a predefined format + * from SDL_PixelFormatEnum. + * + * \param flags the flags are unused and should be set to 0 + * \param width the width of the surface + * \param height the height of the surface + * \param depth the depth of the surface in bits + * \param format the SDL_PixelFormatEnum for the new surface's pixel format. + * \returns the new SDL_Surface structure that is created or NULL if it fails; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_CreateRGBSurface + * \sa SDL_CreateRGBSurfaceFrom + * \sa SDL_FreeSurface + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceWithFormat + (Uint32 flags, int width, int height, int depth, Uint32 format); + +/** + * Allocate a new RGB surface with existing pixel data. + * + * This function operates mostly like SDL_CreateRGBSurface(), except it does + * not allocate memory for the pixel data, instead the caller provides an + * existing buffer of data for the surface to use. + * + * No copy is made of the pixel data. Pixel data is not managed automatically; + * you must free the surface before you free the pixel data. + * + * \param pixels a pointer to existing pixel data + * \param width the width of the surface + * \param height the height of the surface + * \param depth the depth of the surface in bits + * \param pitch the pitch of the surface in bytes + * \param Rmask the red mask for the pixels + * \param Gmask the green mask for the pixels + * \param Bmask the blue mask for the pixels + * \param Amask the alpha mask for the pixels + * \returns the new SDL_Surface structure that is created or NULL if it fails; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRGBSurface + * \sa SDL_CreateRGBSurfaceWithFormat + * \sa SDL_FreeSurface + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceFrom(void *pixels, + int width, + int height, + int depth, + int pitch, + Uint32 Rmask, + Uint32 Gmask, + Uint32 Bmask, + Uint32 Amask); + +/* !!! FIXME for 2.1: why does this ask for depth? Format provides that. */ + +/** + * Allocate a new RGB surface with with a specific pixel format and existing + * pixel data. + * + * This function operates mostly like SDL_CreateRGBSurfaceFrom(), except + * instead of providing pixel color masks, you provide it with a predefined + * format from SDL_PixelFormatEnum. + * + * No copy is made of the pixel data. Pixel data is not managed automatically; + * you must free the surface before you free the pixel data. + * + * \param pixels a pointer to existing pixel data + * \param width the width of the surface + * \param height the height of the surface + * \param depth the depth of the surface in bits + * \param pitch the pitch of the surface in bytes + * \param format the SDL_PixelFormatEnum for the new surface's pixel format. + * \returns the new SDL_Surface structure that is created or NULL if it fails; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_CreateRGBSurfaceFrom + * \sa SDL_CreateRGBSurfaceWithFormat + * \sa SDL_FreeSurface + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceWithFormatFrom + (void *pixels, int width, int height, int depth, int pitch, Uint32 format); + +/** + * Free an RGB surface. + * + * It is safe to pass NULL to this function. + * + * \param surface the SDL_Surface to free. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateRGBSurface + * \sa SDL_CreateRGBSurfaceFrom + * \sa SDL_LoadBMP + * \sa SDL_LoadBMP_RW + */ +extern DECLSPEC void SDLCALL SDL_FreeSurface(SDL_Surface * surface); + +/** + * Set the palette used by a surface. + * + * A single palette can be shared with many surfaces. + * + * \param surface the SDL_Surface structure to update + * \param palette the SDL_Palette structure to use + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_SetSurfacePalette(SDL_Surface * surface, + SDL_Palette * palette); + +/** + * Set up a surface for directly accessing the pixels. + * + * Between calls to SDL_LockSurface() / SDL_UnlockSurface(), you can write to + * and read from `surface->pixels`, using the pixel format stored in + * `surface->format`. Once you are done accessing the surface, you should use + * SDL_UnlockSurface() to release it. + * + * Not all surfaces require locking. If `SDL_MUSTLOCK(surface)` evaluates to + * 0, then you can read and write to the surface at any time, and the pixel + * format of the surface will not change. + * + * \param surface the SDL_Surface structure to be locked + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_MUSTLOCK + * \sa SDL_UnlockSurface + */ +extern DECLSPEC int SDLCALL SDL_LockSurface(SDL_Surface * surface); + +/** + * Release a surface after directly accessing the pixels. + * + * \param surface the SDL_Surface structure to be unlocked + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LockSurface + */ +extern DECLSPEC void SDLCALL SDL_UnlockSurface(SDL_Surface * surface); + +/** + * Load a BMP image from a seekable SDL data stream. + * + * The new surface should be freed with SDL_FreeSurface(). Not doing so will + * result in a memory leak. + * + * src is an open SDL_RWops buffer, typically loaded with SDL_RWFromFile. + * Alternitavely, you might also use the macro SDL_LoadBMP to load a bitmap + * from a file, convert it to an SDL_Surface and then close the file. + * + * \param src the data stream for the surface + * \param freesrc non-zero to close the stream after being read + * \returns a pointer to a new SDL_Surface structure or NULL if there was an + * error; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FreeSurface + * \sa SDL_RWFromFile + * \sa SDL_LoadBMP + * \sa SDL_SaveBMP_RW + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_LoadBMP_RW(SDL_RWops * src, + int freesrc); + +/** + * Load a surface from a file. + * + * Convenience macro. + */ +#define SDL_LoadBMP(file) SDL_LoadBMP_RW(SDL_RWFromFile(file, "rb"), 1) + +/** + * Save a surface to a seekable SDL data stream in BMP format. + * + * Surfaces with a 24-bit, 32-bit and paletted 8-bit format get saved in the + * BMP directly. Other RGB formats with 8-bit or higher get converted to a + * 24-bit surface or, if they have an alpha mask or a colorkey, to a 32-bit + * surface before they are saved. YUV and paletted 1-bit and 4-bit formats are + * not supported. + * + * \param surface the SDL_Surface structure containing the image to be saved + * \param dst a data stream to save to + * \param freedst non-zero to close the stream after being written + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_LoadBMP_RW + * \sa SDL_SaveBMP + */ +extern DECLSPEC int SDLCALL SDL_SaveBMP_RW + (SDL_Surface * surface, SDL_RWops * dst, int freedst); + +/** + * Save a surface to a file. + * + * Convenience macro. + */ +#define SDL_SaveBMP(surface, file) \ + SDL_SaveBMP_RW(surface, SDL_RWFromFile(file, "wb"), 1) + +/** + * Set the RLE acceleration hint for a surface. + * + * If RLE is enabled, color key and alpha blending blits are much faster, but + * the surface must be locked before directly accessing the pixels. + * + * \param surface the SDL_Surface structure to optimize + * \param flag 0 to disable, non-zero to enable RLE acceleration + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitSurface + * \sa SDL_LockSurface + * \sa SDL_UnlockSurface + */ +extern DECLSPEC int SDLCALL SDL_SetSurfaceRLE(SDL_Surface * surface, + int flag); + +/** + * Returns whether the surface is RLE enabled + * + * It is safe to pass a NULL `surface` here; it will return SDL_FALSE. + * + * \param surface the SDL_Surface structure to query + * \returns SDL_TRUE if the surface is RLE enabled, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.14. + * + * \sa SDL_SetSurfaceRLE + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasSurfaceRLE(SDL_Surface * surface); + +/** + * Set the color key (transparent pixel) in a surface. + * + * The color key defines a pixel value that will be treated as transparent in + * a blit. For example, one can use this to specify that cyan pixels should be + * considered transparent, and therefore not rendered. + * + * It is a pixel of the format used by the surface, as generated by + * SDL_MapRGB(). + * + * RLE acceleration can substantially speed up blitting of images with large + * horizontal runs of transparent pixels. See SDL_SetSurfaceRLE() for details. + * + * \param surface the SDL_Surface structure to update + * \param flag SDL_TRUE to enable color key, SDL_FALSE to disable color key + * \param key the transparent pixel + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitSurface + * \sa SDL_GetColorKey + */ +extern DECLSPEC int SDLCALL SDL_SetColorKey(SDL_Surface * surface, + int flag, Uint32 key); + +/** + * Returns whether the surface has a color key + * + * It is safe to pass a NULL `surface` here; it will return SDL_FALSE. + * + * \param surface the SDL_Surface structure to query + * \return SDL_TRUE if the surface has a color key, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.9. + * + * \sa SDL_SetColorKey + * \sa SDL_GetColorKey + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasColorKey(SDL_Surface * surface); + +/** + * Get the color key (transparent pixel) for a surface. + * + * The color key is a pixel of the format used by the surface, as generated by + * SDL_MapRGB(). + * + * If the surface doesn't have color key enabled this function returns -1. + * + * \param surface the SDL_Surface structure to query + * \param key a pointer filled in with the transparent pixel + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitSurface + * \sa SDL_SetColorKey + */ +extern DECLSPEC int SDLCALL SDL_GetColorKey(SDL_Surface * surface, + Uint32 * key); + +/** + * Set an additional color value multiplied into blit operations. + * + * When this surface is blitted, during the blit operation each source color + * channel is modulated by the appropriate color value according to the + * following formula: + * + * `srcC = srcC * (color / 255)` + * + * \param surface the SDL_Surface structure to update + * \param r the red color value multiplied into blit operations + * \param g the green color value multiplied into blit operations + * \param b the blue color value multiplied into blit operations + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetSurfaceColorMod + * \sa SDL_SetSurfaceAlphaMod + */ +extern DECLSPEC int SDLCALL SDL_SetSurfaceColorMod(SDL_Surface * surface, + Uint8 r, Uint8 g, Uint8 b); + + +/** + * Get the additional color value multiplied into blit operations. + * + * \param surface the SDL_Surface structure to query + * \param r a pointer filled in with the current red color value + * \param g a pointer filled in with the current green color value + * \param b a pointer filled in with the current blue color value + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetSurfaceAlphaMod + * \sa SDL_SetSurfaceColorMod + */ +extern DECLSPEC int SDLCALL SDL_GetSurfaceColorMod(SDL_Surface * surface, + Uint8 * r, Uint8 * g, + Uint8 * b); + +/** + * Set an additional alpha value used in blit operations. + * + * When this surface is blitted, during the blit operation the source alpha + * value is modulated by this alpha value according to the following formula: + * + * `srcA = srcA * (alpha / 255)` + * + * \param surface the SDL_Surface structure to update + * \param alpha the alpha value multiplied into blit operations + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetSurfaceAlphaMod + * \sa SDL_SetSurfaceColorMod + */ +extern DECLSPEC int SDLCALL SDL_SetSurfaceAlphaMod(SDL_Surface * surface, + Uint8 alpha); + +/** + * Get the additional alpha value used in blit operations. + * + * \param surface the SDL_Surface structure to query + * \param alpha a pointer filled in with the current alpha value + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetSurfaceColorMod + * \sa SDL_SetSurfaceAlphaMod + */ +extern DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface * surface, + Uint8 * alpha); + +/** + * Set the blend mode used for blit operations. + * + * To copy a surface to another surface (or texture) without blending with the + * existing data, the blendmode of the SOURCE surface should be set to + * `SDL_BLENDMODE_NONE`. + * + * \param surface the SDL_Surface structure to update + * \param blendMode the SDL_BlendMode to use for blit blending + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetSurfaceBlendMode + */ +extern DECLSPEC int SDLCALL SDL_SetSurfaceBlendMode(SDL_Surface * surface, + SDL_BlendMode blendMode); + +/** + * Get the blend mode used for blit operations. + * + * \param surface the SDL_Surface structure to query + * \param blendMode a pointer filled in with the current SDL_BlendMode + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetSurfaceBlendMode + */ +extern DECLSPEC int SDLCALL SDL_GetSurfaceBlendMode(SDL_Surface * surface, + SDL_BlendMode *blendMode); + +/** + * Set the clipping rectangle for a surface. + * + * When `surface` is the destination of a blit, only the area within the clip + * rectangle is drawn into. + * + * Note that blits are automatically clipped to the edges of the source and + * destination surfaces. + * + * \param surface the SDL_Surface structure to be clipped + * \param rect the SDL_Rect structure representing the clipping rectangle, or + * NULL to disable clipping + * \returns SDL_TRUE if the rectangle intersects the surface, otherwise + * SDL_FALSE and blits will be completely clipped. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitSurface + * \sa SDL_GetClipRect + */ +extern DECLSPEC SDL_bool SDLCALL SDL_SetClipRect(SDL_Surface * surface, + const SDL_Rect * rect); + +/** + * Get the clipping rectangle for a surface. + * + * When `surface` is the destination of a blit, only the area within the clip + * rectangle is drawn into. + * + * \param surface the SDL_Surface structure representing the surface to be + * clipped + * \param rect an SDL_Rect structure filled in with the clipping rectangle for + * the surface + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitSurface + * \sa SDL_SetClipRect + */ +extern DECLSPEC void SDLCALL SDL_GetClipRect(SDL_Surface * surface, + SDL_Rect * rect); + +/* + * Creates a new surface identical to the existing surface. + * + * The returned surface should be freed with SDL_FreeSurface(). + * + * \param surface the surface to duplicate. + * \returns a copy of the surface, or NULL on failure; call SDL_GetError() for + * more information. + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_DuplicateSurface(SDL_Surface * surface); + +/** + * Copy an existing surface to a new surface of the specified format. + * + * This function is used to optimize images for faster *repeat* blitting. This + * is accomplished by converting the original and storing the result as a new + * surface. The new, optimized surface can then be used as the source for + * future blits, making them faster. + * + * \param src the existing SDL_Surface structure to convert + * \param fmt the SDL_PixelFormat structure that the new surface is optimized + * for + * \param flags the flags are unused and should be set to 0; this is a + * leftover from SDL 1.2's API + * \returns the new SDL_Surface structure that is created or NULL if it fails; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AllocFormat + * \sa SDL_ConvertSurfaceFormat + * \sa SDL_CreateRGBSurface + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_ConvertSurface + (SDL_Surface * src, const SDL_PixelFormat * fmt, Uint32 flags); + +/** + * Copy an existing surface to a new surface of the specified format enum. + * + * This function operates just like SDL_ConvertSurface(), but accepts an + * SDL_PixelFormatEnum value instead of an SDL_PixelFormat structure. As such, + * it might be easier to call but it doesn't have access to palette + * information for the destination surface, in case that would be important. + * + * \param src the existing SDL_Surface structure to convert + * \param pixel_format the SDL_PixelFormatEnum that the new surface is + * optimized for + * \param flags the flags are unused and should be set to 0; this is a + * leftover from SDL 1.2's API + * \returns the new SDL_Surface structure that is created or NULL if it fails; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AllocFormat + * \sa SDL_ConvertSurface + * \sa SDL_CreateRGBSurface + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_ConvertSurfaceFormat + (SDL_Surface * src, Uint32 pixel_format, Uint32 flags); + +/** + * Copy a block of pixels of one format to another format. + * + * \param width the width of the block to copy, in pixels + * \param height the height of the block to copy, in pixels + * \param src_format an SDL_PixelFormatEnum value of the `src` pixels format + * \param src a pointer to the source pixels + * \param src_pitch the pitch of the source pixels, in bytes + * \param dst_format an SDL_PixelFormatEnum value of the `dst` pixels format + * \param dst a pointer to be filled in with new pixel data + * \param dst_pitch the pitch of the destination pixels, in bytes + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_ConvertPixels(int width, int height, + Uint32 src_format, + const void * src, int src_pitch, + Uint32 dst_format, + void * dst, int dst_pitch); + +/** + * Premultiply the alpha on a block of pixels. + * + * This is safe to use with src == dst, but not for other overlapping areas. + * + * This function is currently only implemented for SDL_PIXELFORMAT_ARGB8888. + * + * \param width the width of the block to convert, in pixels + * \param height the height of the block to convert, in pixels + * \param src_format an SDL_PixelFormatEnum value of the `src` pixels format + * \param src a pointer to the source pixels + * \param src_pitch the pitch of the source pixels, in bytes + * \param dst_format an SDL_PixelFormatEnum value of the `dst` pixels format + * \param dst a pointer to be filled in with premultiplied pixel data + * \param dst_pitch the pitch of the destination pixels, in bytes + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_PremultiplyAlpha(int width, int height, + Uint32 src_format, + const void * src, int src_pitch, + Uint32 dst_format, + void * dst, int dst_pitch); + +/** + * Perform a fast fill of a rectangle with a specific color. + * + * `color` should be a pixel of the format used by the surface, and can be + * generated by SDL_MapRGB() or SDL_MapRGBA(). If the color value contains an + * alpha component then the destination is simply filled with that alpha + * information, no blending takes place. + * + * If there is a clip rectangle set on the destination (set via + * SDL_SetClipRect()), then this function will fill based on the intersection + * of the clip rectangle and `rect`. + * + * \param dst the SDL_Surface structure that is the drawing target + * \param rect the SDL_Rect structure representing the rectangle to fill, or + * NULL to fill the entire surface + * \param color the color to fill with + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FillRects + */ +extern DECLSPEC int SDLCALL SDL_FillRect + (SDL_Surface * dst, const SDL_Rect * rect, Uint32 color); + +/** + * Perform a fast fill of a set of rectangles with a specific color. + * + * `color` should be a pixel of the format used by the surface, and can be + * generated by SDL_MapRGB() or SDL_MapRGBA(). If the color value contains an + * alpha component then the destination is simply filled with that alpha + * information, no blending takes place. + * + * If there is a clip rectangle set on the destination (set via + * SDL_SetClipRect()), then this function will fill based on the intersection + * of the clip rectangle and `rect`. + * + * \param dst the SDL_Surface structure that is the drawing target + * \param rects an array of SDL_Rects representing the rectangles to fill. + * \param count the number of rectangles in the array + * \param color the color to fill with + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_FillRect + */ +extern DECLSPEC int SDLCALL SDL_FillRects + (SDL_Surface * dst, const SDL_Rect * rects, int count, Uint32 color); + +/* !!! FIXME: merge this documentation with the wiki */ +/** + * Performs a fast blit from the source surface to the destination surface. + * + * This assumes that the source and destination rectangles are + * the same size. If either \c srcrect or \c dstrect are NULL, the entire + * surface (\c src or \c dst) is copied. The final blit rectangles are saved + * in \c srcrect and \c dstrect after all clipping is performed. + * + * \returns 0 if the blit is successful, otherwise it returns -1. + * + * The blit function should not be called on a locked surface. + * + * The blit semantics for surfaces with and without blending and colorkey + * are defined as follows: + * \verbatim + RGBA->RGB: + Source surface blend mode set to SDL_BLENDMODE_BLEND: + alpha-blend (using the source alpha-channel and per-surface alpha) + SDL_SRCCOLORKEY ignored. + Source surface blend mode set to SDL_BLENDMODE_NONE: + copy RGB. + if SDL_SRCCOLORKEY set, only copy the pixels matching the + RGB values of the source color key, ignoring alpha in the + comparison. + + RGB->RGBA: + Source surface blend mode set to SDL_BLENDMODE_BLEND: + alpha-blend (using the source per-surface alpha) + Source surface blend mode set to SDL_BLENDMODE_NONE: + copy RGB, set destination alpha to source per-surface alpha value. + both: + if SDL_SRCCOLORKEY set, only copy the pixels matching the + source color key. + + RGBA->RGBA: + Source surface blend mode set to SDL_BLENDMODE_BLEND: + alpha-blend (using the source alpha-channel and per-surface alpha) + SDL_SRCCOLORKEY ignored. + Source surface blend mode set to SDL_BLENDMODE_NONE: + copy all of RGBA to the destination. + if SDL_SRCCOLORKEY set, only copy the pixels matching the + RGB values of the source color key, ignoring alpha in the + comparison. + + RGB->RGB: + Source surface blend mode set to SDL_BLENDMODE_BLEND: + alpha-blend (using the source per-surface alpha) + Source surface blend mode set to SDL_BLENDMODE_NONE: + copy RGB. + both: + if SDL_SRCCOLORKEY set, only copy the pixels matching the + source color key. + \endverbatim + * + * You should call SDL_BlitSurface() unless you know exactly how SDL + * blitting works internally and how to use the other blit functions. + */ +#define SDL_BlitSurface SDL_UpperBlit + +/** + * Perform a fast blit from the source surface to the destination surface. + * + * SDL_UpperBlit() has been replaced by SDL_BlitSurface(), which is merely a + * macro for this function with a less confusing name. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitSurface + */ +extern DECLSPEC int SDLCALL SDL_UpperBlit + (SDL_Surface * src, const SDL_Rect * srcrect, + SDL_Surface * dst, SDL_Rect * dstrect); + +/** + * Perform low-level surface blitting only. + * + * This is a semi-private blit function and it performs low-level surface + * blitting, assuming the input rectangles have already been clipped. + * + * Unless you know what you're doing, you should be using SDL_BlitSurface() + * instead. + * + * \param src the SDL_Surface structure to be copied from + * \param srcrect the SDL_Rect structure representing the rectangle to be + * copied, or NULL to copy the entire surface + * \param dst the SDL_Surface structure that is the blit target + * \param dstrect the SDL_Rect structure representing the rectangle that is + * copied into + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitSurface + */ +extern DECLSPEC int SDLCALL SDL_LowerBlit + (SDL_Surface * src, SDL_Rect * srcrect, + SDL_Surface * dst, SDL_Rect * dstrect); + + +/** + * Perform a fast, low quality, stretch blit between two surfaces of the same + * format. + * + * Please use SDL_BlitScaled() instead. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_SoftStretch(SDL_Surface * src, + const SDL_Rect * srcrect, + SDL_Surface * dst, + const SDL_Rect * dstrect); + +/** + * Perform bilinear scaling between two surfaces of the same format, 32BPP. + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC int SDLCALL SDL_SoftStretchLinear(SDL_Surface * src, + const SDL_Rect * srcrect, + SDL_Surface * dst, + const SDL_Rect * dstrect); + + +#define SDL_BlitScaled SDL_UpperBlitScaled + +/** + * Perform a scaled surface copy to a destination surface. + * + * SDL_UpperBlitScaled() has been replaced by SDL_BlitScaled(), which is + * merely a macro for this function with a less confusing name. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitScaled + */ +extern DECLSPEC int SDLCALL SDL_UpperBlitScaled + (SDL_Surface * src, const SDL_Rect * srcrect, + SDL_Surface * dst, SDL_Rect * dstrect); + +/** + * Perform low-level surface scaled blitting only. + * + * This is a semi-private function and it performs low-level surface blitting, + * assuming the input rectangles have already been clipped. + * + * \param src the SDL_Surface structure to be copied from + * \param srcrect the SDL_Rect structure representing the rectangle to be + * copied + * \param dst the SDL_Surface structure that is the blit target + * \param dstrect the SDL_Rect structure representing the rectangle that is + * copied into + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_BlitScaled + */ +extern DECLSPEC int SDLCALL SDL_LowerBlitScaled + (SDL_Surface * src, SDL_Rect * srcrect, + SDL_Surface * dst, SDL_Rect * dstrect); + +/** + * Set the YUV conversion mode + * + * \since This function is available since SDL 2.0.8. + */ +extern DECLSPEC void SDLCALL SDL_SetYUVConversionMode(SDL_YUV_CONVERSION_MODE mode); + +/** + * Get the YUV conversion mode + * + * \since This function is available since SDL 2.0.8. + */ +extern DECLSPEC SDL_YUV_CONVERSION_MODE SDLCALL SDL_GetYUVConversionMode(void); + +/** + * Get the YUV conversion mode, returning the correct mode for the resolution + * when the current conversion mode is SDL_YUV_CONVERSION_AUTOMATIC + * + * \since This function is available since SDL 2.0.8. + */ +extern DECLSPEC SDL_YUV_CONVERSION_MODE SDLCALL SDL_GetYUVConversionModeForResolution(int width, int height); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_surface_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..c8bb55afd7c1699de2ebfde6c3d31b30556479a5 GIT binary patch literal 55026 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 HgzWzZ$wJqB literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h new file mode 100644 index 00000000..4b7eaddc --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h @@ -0,0 +1,623 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_system.h + * + * Include file for platform specific SDL API functions + */ + +#ifndef SDL_system_h_ +#define SDL_system_h_ + +#include "SDL_stdinc.h" +#include "SDL_keyboard.h" +#include "SDL_render.h" +#include "SDL_video.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + + +/* Platform specific functions for Windows */ +#if defined(__WIN32__) || defined(__GDK__) + +typedef void (SDLCALL * SDL_WindowsMessageHook)(void *userdata, void *hWnd, unsigned int message, Uint64 wParam, Sint64 lParam); + +/** + * Set a callback for every Windows message, run before TranslateMessage(). + * + * \param callback The SDL_WindowsMessageHook function to call. + * \param userdata a pointer to pass to every iteration of `callback` + * + * \since This function is available since SDL 2.0.4. + */ +extern DECLSPEC void SDLCALL SDL_SetWindowsMessageHook(SDL_WindowsMessageHook callback, void *userdata); + +#endif /* defined(__WIN32__) || defined(__GDK__) */ + +#if defined(__WIN32__) || defined(__WINGDK__) + +/** + * Get the D3D9 adapter index that matches the specified display index. + * + * The returned adapter index can be passed to `IDirect3D9::CreateDevice` and + * controls on which monitor a full screen application will appear. + * + * \param displayIndex the display index for which to get the D3D9 adapter + * index + * \returns the D3D9 adapter index on success or a negative error code on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.1. + */ +extern DECLSPEC int SDLCALL SDL_Direct3D9GetAdapterIndex( int displayIndex ); + +typedef struct IDirect3DDevice9 IDirect3DDevice9; + +/** + * Get the D3D9 device associated with a renderer. + * + * Once you are done using the device, you should release it to avoid a + * resource leak. + * + * \param renderer the renderer from which to get the associated D3D device + * \returns the D3D9 device associated with given renderer or NULL if it is + * not a D3D9 renderer; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.1. + */ +extern DECLSPEC IDirect3DDevice9* SDLCALL SDL_RenderGetD3D9Device(SDL_Renderer * renderer); + +typedef struct ID3D11Device ID3D11Device; + +/** + * Get the D3D11 device associated with a renderer. + * + * Once you are done using the device, you should release it to avoid a + * resource leak. + * + * \param renderer the renderer from which to get the associated D3D11 device + * \returns the D3D11 device associated with given renderer or NULL if it is + * not a D3D11 renderer; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC ID3D11Device* SDLCALL SDL_RenderGetD3D11Device(SDL_Renderer * renderer); + +#endif /* defined(__WIN32__) || defined(__WINGDK__) */ + +#if defined(__WIN32__) || defined(__GDK__) + +typedef struct ID3D12Device ID3D12Device; + +/** + * Get the D3D12 device associated with a renderer. + * + * Once you are done using the device, you should release it to avoid a + * resource leak. + * + * \param renderer the renderer from which to get the associated D3D12 device + * \returns the D3D12 device associated with given renderer or NULL if it is + * not a D3D12 renderer; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC ID3D12Device* SDLCALL SDL_RenderGetD3D12Device(SDL_Renderer* renderer); + +#endif /* defined(__WIN32__) || defined(__GDK__) */ + +#if defined(__WIN32__) || defined(__WINGDK__) + +/** + * Get the DXGI Adapter and Output indices for the specified display index. + * + * The DXGI Adapter and Output indices can be passed to `EnumAdapters` and + * `EnumOutputs` respectively to get the objects required to create a DX10 or + * DX11 device and swap chain. + * + * Before SDL 2.0.4 this function did not return a value. Since SDL 2.0.4 it + * returns an SDL_bool. + * + * \param displayIndex the display index for which to get both indices + * \param adapterIndex a pointer to be filled in with the adapter index + * \param outputIndex a pointer to be filled in with the output index + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.2. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_DXGIGetOutputInfo( int displayIndex, int *adapterIndex, int *outputIndex ); + +#endif /* defined(__WIN32__) || defined(__WINGDK__) */ + +/* Platform specific functions for Linux */ +#ifdef __LINUX__ + +/** + * Sets the UNIX nice value for a thread. + * + * This uses setpriority() if possible, and RealtimeKit if available. + * + * \param threadID the Unix thread ID to change priority of. + * \param priority The new, Unix-specific, priority value. + * \returns 0 on success, or -1 on error. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC int SDLCALL SDL_LinuxSetThreadPriority(Sint64 threadID, int priority); + +/** + * Sets the priority (not nice level) and scheduling policy for a thread. + * + * This uses setpriority() if possible, and RealtimeKit if available. + * + * \param threadID The Unix thread ID to change priority of. + * \param sdlPriority The new SDL_ThreadPriority value. + * \param schedPolicy The new scheduling policy (SCHED_FIFO, SCHED_RR, + * SCHED_OTHER, etc...) + * \returns 0 on success, or -1 on error. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC int SDLCALL SDL_LinuxSetThreadPriorityAndPolicy(Sint64 threadID, int sdlPriority, int schedPolicy); + +#endif /* __LINUX__ */ + +/* Platform specific functions for iOS */ +#ifdef __IPHONEOS__ + +#define SDL_iOSSetAnimationCallback(window, interval, callback, callbackParam) SDL_iPhoneSetAnimationCallback(window, interval, callback, callbackParam) + +/** + * Use this function to set the animation callback on Apple iOS. + * + * The function prototype for `callback` is: + * + * ```c + * void callback(void* callbackParam); + * ``` + * + * Where its parameter, `callbackParam`, is what was passed as `callbackParam` + * to SDL_iPhoneSetAnimationCallback(). + * + * This function is only available on Apple iOS. + * + * For more information see: + * https://github.com/libsdl-org/SDL/blob/main/docs/README-ios.md + * + * This functions is also accessible using the macro + * SDL_iOSSetAnimationCallback() since SDL 2.0.4. + * + * \param window the window for which the animation callback should be set + * \param interval the number of frames after which **callback** will be + * called + * \param callback the function to call for every frame. + * \param callbackParam a pointer that is passed to `callback`. + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_iPhoneSetEventPump + */ +extern DECLSPEC int SDLCALL SDL_iPhoneSetAnimationCallback(SDL_Window * window, int interval, void (SDLCALL *callback)(void*), void *callbackParam); + +#define SDL_iOSSetEventPump(enabled) SDL_iPhoneSetEventPump(enabled) + +/** + * Use this function to enable or disable the SDL event pump on Apple iOS. + * + * This function is only available on Apple iOS. + * + * This functions is also accessible using the macro SDL_iOSSetEventPump() + * since SDL 2.0.4. + * + * \param enabled SDL_TRUE to enable the event pump, SDL_FALSE to disable it + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_iPhoneSetAnimationCallback + */ +extern DECLSPEC void SDLCALL SDL_iPhoneSetEventPump(SDL_bool enabled); + +#endif /* __IPHONEOS__ */ + + +/* Platform specific functions for Android */ +#ifdef __ANDROID__ + +/** + * Get the Android Java Native Interface Environment of the current thread. + * + * This is the JNIEnv one needs to access the Java virtual machine from native + * code, and is needed for many Android APIs to be usable from C. + * + * The prototype of the function in SDL's code actually declare a void* return + * type, even if the implementation returns a pointer to a JNIEnv. The + * rationale being that the SDL headers can avoid including jni.h. + * + * \returns a pointer to Java native interface object (JNIEnv) to which the + * current thread is attached, or 0 on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AndroidGetActivity + */ +extern DECLSPEC void * SDLCALL SDL_AndroidGetJNIEnv(void); + +/** + * Retrieve the Java instance of the Android activity class. + * + * The prototype of the function in SDL's code actually declares a void* + * return type, even if the implementation returns a jobject. The rationale + * being that the SDL headers can avoid including jni.h. + * + * The jobject returned by the function is a local reference and must be + * released by the caller. See the PushLocalFrame() and PopLocalFrame() or + * DeleteLocalRef() functions of the Java native interface: + * + * https://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/functions.html + * + * \returns the jobject representing the instance of the Activity class of the + * Android application, or NULL on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AndroidGetJNIEnv + */ +extern DECLSPEC void * SDLCALL SDL_AndroidGetActivity(void); + +/** + * Query Android API level of the current device. + * + * - API level 31: Android 12 + * - API level 30: Android 11 + * - API level 29: Android 10 + * - API level 28: Android 9 + * - API level 27: Android 8.1 + * - API level 26: Android 8.0 + * - API level 25: Android 7.1 + * - API level 24: Android 7.0 + * - API level 23: Android 6.0 + * - API level 22: Android 5.1 + * - API level 21: Android 5.0 + * - API level 20: Android 4.4W + * - API level 19: Android 4.4 + * - API level 18: Android 4.3 + * - API level 17: Android 4.2 + * - API level 16: Android 4.1 + * - API level 15: Android 4.0.3 + * - API level 14: Android 4.0 + * - API level 13: Android 3.2 + * - API level 12: Android 3.1 + * - API level 11: Android 3.0 + * - API level 10: Android 2.3.3 + * + * \returns the Android API level. + * + * \since This function is available since SDL 2.0.12. + */ +extern DECLSPEC int SDLCALL SDL_GetAndroidSDKVersion(void); + +/** + * Query if the application is running on Android TV. + * + * \returns SDL_TRUE if this is Android TV, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.8. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsAndroidTV(void); + +/** + * Query if the application is running on a Chromebook. + * + * \returns SDL_TRUE if this is a Chromebook, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsChromebook(void); + +/** + * Query if the application is running on a Samsung DeX docking station. + * + * \returns SDL_TRUE if this is a DeX docking station, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsDeXMode(void); + +/** + * Trigger the Android system back button behavior. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC void SDLCALL SDL_AndroidBackButton(void); + +/** + See the official Android developer guide for more information: + http://developer.android.com/guide/topics/data/data-storage.html +*/ +#define SDL_ANDROID_EXTERNAL_STORAGE_READ 0x01 +#define SDL_ANDROID_EXTERNAL_STORAGE_WRITE 0x02 + +/** + * Get the path used for internal storage for this application. + * + * This path is unique to your application and cannot be written to by other + * applications. + * + * Your internal storage path is typically: + * `/data/data/your.app.package/files`. + * + * \returns the path used for internal storage or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AndroidGetExternalStorageState + */ +extern DECLSPEC const char * SDLCALL SDL_AndroidGetInternalStoragePath(void); + +/** + * Get the current state of external storage. + * + * The current state of external storage, a bitmask of these values: + * `SDL_ANDROID_EXTERNAL_STORAGE_READ`, `SDL_ANDROID_EXTERNAL_STORAGE_WRITE`. + * + * If external storage is currently unavailable, this will return 0. + * + * \returns the current state of external storage on success or 0 on failure; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AndroidGetExternalStoragePath + */ +extern DECLSPEC int SDLCALL SDL_AndroidGetExternalStorageState(void); + +/** + * Get the path used for external storage for this application. + * + * This path is unique to your application, but is public and can be written + * to by other applications. + * + * Your external storage path is typically: + * `/storage/sdcard0/Android/data/your.app.package/files`. + * + * \returns the path used for external storage for this application on success + * or NULL on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AndroidGetExternalStorageState + */ +extern DECLSPEC const char * SDLCALL SDL_AndroidGetExternalStoragePath(void); + +/** + * Request permissions at runtime. + * + * This blocks the calling thread until the permission is granted or denied. + * + * \param permission The permission to request. + * \returns SDL_TRUE if the permission was granted, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.14. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_AndroidRequestPermission(const char *permission); + +/** + * Shows an Android toast notification. + * + * Toasts are a sort of lightweight notification that are unique to Android. + * + * https://developer.android.com/guide/topics/ui/notifiers/toasts + * + * Shows toast in UI thread. + * + * For the `gravity` parameter, choose a value from here, or -1 if you don't + * have a preference: + * + * https://developer.android.com/reference/android/view/Gravity + * + * \param message text message to be shown + * \param duration 0=short, 1=long + * \param gravity where the notification should appear on the screen. + * \param xoffset set this parameter only when gravity >=0 + * \param yoffset set this parameter only when gravity >=0 + * \returns 0 if success, -1 if any error occurs. + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC int SDLCALL SDL_AndroidShowToast(const char* message, int duration, int gravity, int xoffset, int yoffset); + +/** + * Send a user command to SDLActivity. + * + * Override "boolean onUnhandledMessage(Message msg)" to handle the message. + * + * \param command user command that must be greater or equal to 0x8000 + * \param param user parameter + * + * \since This function is available since SDL 2.0.22. + */ +extern DECLSPEC int SDLCALL SDL_AndroidSendMessage(Uint32 command, int param); + +#endif /* __ANDROID__ */ + +/* Platform specific functions for WinRT */ +#ifdef __WINRT__ + +/** + * \brief WinRT / Windows Phone path types + */ +typedef enum +{ + /** \brief The installed app's root directory. + Files here are likely to be read-only. */ + SDL_WINRT_PATH_INSTALLED_LOCATION, + + /** \brief The app's local data store. Files may be written here */ + SDL_WINRT_PATH_LOCAL_FOLDER, + + /** \brief The app's roaming data store. Unsupported on Windows Phone. + Files written here may be copied to other machines via a network + connection. + */ + SDL_WINRT_PATH_ROAMING_FOLDER, + + /** \brief The app's temporary data store. Unsupported on Windows Phone. + Files written here may be deleted at any time. */ + SDL_WINRT_PATH_TEMP_FOLDER +} SDL_WinRT_Path; + + +/** + * \brief WinRT Device Family + */ +typedef enum +{ + /** \brief Unknown family */ + SDL_WINRT_DEVICEFAMILY_UNKNOWN, + + /** \brief Desktop family*/ + SDL_WINRT_DEVICEFAMILY_DESKTOP, + + /** \brief Mobile family (for example smartphone) */ + SDL_WINRT_DEVICEFAMILY_MOBILE, + + /** \brief XBox family */ + SDL_WINRT_DEVICEFAMILY_XBOX, +} SDL_WinRT_DeviceFamily; + + +/** + * Retrieve a WinRT defined path on the local file system. + * + * Not all paths are available on all versions of Windows. This is especially + * true on Windows Phone. Check the documentation for the given SDL_WinRT_Path + * for more information on which path types are supported where. + * + * Documentation on most app-specific path types on WinRT can be found on + * MSDN, at the URL: + * + * https://msdn.microsoft.com/en-us/library/windows/apps/hh464917.aspx + * + * \param pathType the type of path to retrieve, one of SDL_WinRT_Path + * \returns a UCS-2 string (16-bit, wide-char) containing the path, or NULL if + * the path is not available for any reason; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.3. + * + * \sa SDL_WinRTGetFSPathUTF8 + */ +extern DECLSPEC const wchar_t * SDLCALL SDL_WinRTGetFSPathUNICODE(SDL_WinRT_Path pathType); + +/** + * Retrieve a WinRT defined path on the local file system. + * + * Not all paths are available on all versions of Windows. This is especially + * true on Windows Phone. Check the documentation for the given SDL_WinRT_Path + * for more information on which path types are supported where. + * + * Documentation on most app-specific path types on WinRT can be found on + * MSDN, at the URL: + * + * https://msdn.microsoft.com/en-us/library/windows/apps/hh464917.aspx + * + * \param pathType the type of path to retrieve, one of SDL_WinRT_Path + * \returns a UTF-8 string (8-bit, multi-byte) containing the path, or NULL if + * the path is not available for any reason; call SDL_GetError() for + * more information. + * + * \since This function is available since SDL 2.0.3. + * + * \sa SDL_WinRTGetFSPathUNICODE + */ +extern DECLSPEC const char * SDLCALL SDL_WinRTGetFSPathUTF8(SDL_WinRT_Path pathType); + +/** + * Detects the device family of WinRT platform at runtime. + * + * \returns a value from the SDL_WinRT_DeviceFamily enum. + * + * \since This function is available since SDL 2.0.8. + */ +extern DECLSPEC SDL_WinRT_DeviceFamily SDLCALL SDL_WinRTGetDeviceFamily(); + +#endif /* __WINRT__ */ + +/** + * Query if the current device is a tablet. + * + * If SDL can't determine this, it will return SDL_FALSE. + * + * \returns SDL_TRUE if the device is a tablet, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.9. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsTablet(void); + +/* Functions used by iOS application delegates to notify SDL about state changes */ +extern DECLSPEC void SDLCALL SDL_OnApplicationWillTerminate(void); +extern DECLSPEC void SDLCALL SDL_OnApplicationDidReceiveMemoryWarning(void); +extern DECLSPEC void SDLCALL SDL_OnApplicationWillResignActive(void); +extern DECLSPEC void SDLCALL SDL_OnApplicationDidEnterBackground(void); +extern DECLSPEC void SDLCALL SDL_OnApplicationWillEnterForeground(void); +extern DECLSPEC void SDLCALL SDL_OnApplicationDidBecomeActive(void); +#ifdef __IPHONEOS__ +extern DECLSPEC void SDLCALL SDL_OnApplicationDidChangeStatusBarOrientation(void); +#endif + +/* Functions used only by GDK */ +#if defined(__GDK__) +typedef struct XTaskQueueObject * XTaskQueueHandle; + +/** + * Gets a reference to the global async task queue handle for GDK, + * initializing if needed. + * + * Once you are done with the task queue, you should call + * XTaskQueueCloseHandle to reduce the reference count to avoid a resource + * leak. + * + * \param outTaskQueue a pointer to be filled in with task queue handle. + * \returns 0 if success, -1 if any error occurs. + * + * \since This function is available since SDL 2.24.0. + */ +extern DECLSPEC int SDLCALL SDL_GDKGetTaskQueue(XTaskQueueHandle * outTaskQueue); + +#endif + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_system_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..c3bf4d0368bd9a4367ea0eb9840a68f51a8816b2 GIT binary patch literal 15164 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_thread_h_ +#define SDL_thread_h_ + +/** + * \file SDL_thread.h + * + * Header for the SDL thread management routines. + */ + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +/* Thread synchronization primitives */ +#include "SDL_atomic.h" +#include "SDL_mutex.h" + +#if (defined(__WIN32__) || defined(__GDK__)) && !defined(__WINRT__) +#include /* _beginthreadex() and _endthreadex() */ +#endif +#if defined(__OS2__) /* for _beginthread() and _endthread() */ +#ifndef __EMX__ +#include +#else +#include +#endif +#endif + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/* The SDL thread structure, defined in SDL_thread.c */ +struct SDL_Thread; +typedef struct SDL_Thread SDL_Thread; + +/* The SDL thread ID */ +typedef unsigned long SDL_threadID; + +/* Thread local storage ID, 0 is the invalid ID */ +typedef unsigned int SDL_TLSID; + +/** + * The SDL thread priority. + * + * SDL will make system changes as necessary in order to apply the thread priority. + * Code which attempts to control thread state related to priority should be aware + * that calling SDL_SetThreadPriority may alter such state. + * SDL_HINT_THREAD_PRIORITY_POLICY can be used to control aspects of this behavior. + * + * \note On many systems you require special privileges to set high or time critical priority. + */ +typedef enum { + SDL_THREAD_PRIORITY_LOW, + SDL_THREAD_PRIORITY_NORMAL, + SDL_THREAD_PRIORITY_HIGH, + SDL_THREAD_PRIORITY_TIME_CRITICAL +} SDL_ThreadPriority; + +/** + * The function passed to SDL_CreateThread(). + * + * \param data what was passed as `data` to SDL_CreateThread() + * \returns a value that can be reported through SDL_WaitThread(). + */ +typedef int (SDLCALL * SDL_ThreadFunction) (void *data); + + +#if (defined(__WIN32__) || defined(__GDK__)) && !defined(__WINRT__) +/** + * \file SDL_thread.h + * + * We compile SDL into a DLL. This means, that it's the DLL which + * creates a new thread for the calling process with the SDL_CreateThread() + * API. There is a problem with this, that only the RTL of the SDL2.DLL will + * be initialized for those threads, and not the RTL of the calling + * application! + * + * To solve this, we make a little hack here. + * + * We'll always use the caller's _beginthread() and _endthread() APIs to + * start a new thread. This way, if it's the SDL2.DLL which uses this API, + * then the RTL of SDL2.DLL will be used to create the new thread, and if it's + * the application, then the RTL of the application will be used. + * + * So, in short: + * Always use the _beginthread() and _endthread() of the calling runtime + * library! + */ +#define SDL_PASSED_BEGINTHREAD_ENDTHREAD + +typedef uintptr_t (__cdecl * pfnSDL_CurrentBeginThread) + (void *, unsigned, unsigned (__stdcall *func)(void *), + void * /*arg*/, unsigned, unsigned * /* threadID */); +typedef void (__cdecl * pfnSDL_CurrentEndThread) (unsigned code); + +#ifndef SDL_beginthread +#define SDL_beginthread _beginthreadex +#endif +#ifndef SDL_endthread +#define SDL_endthread _endthreadex +#endif + +extern DECLSPEC SDL_Thread *SDLCALL +SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data, + pfnSDL_CurrentBeginThread pfnBeginThread, + pfnSDL_CurrentEndThread pfnEndThread); + +extern DECLSPEC SDL_Thread *SDLCALL +SDL_CreateThreadWithStackSize(SDL_ThreadFunction fn, + const char *name, const size_t stacksize, void *data, + pfnSDL_CurrentBeginThread pfnBeginThread, + pfnSDL_CurrentEndThread pfnEndThread); + + +#if defined(SDL_CreateThread) && SDL_DYNAMIC_API +#undef SDL_CreateThread +#define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) +#undef SDL_CreateThreadWithStackSize +#define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize_REAL(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) +#else +#define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) +#define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) +#endif + +#elif defined(__OS2__) +/* + * just like the windows case above: We compile SDL2 + * into a dll with Watcom's runtime statically linked. + */ +#define SDL_PASSED_BEGINTHREAD_ENDTHREAD + +typedef int (*pfnSDL_CurrentBeginThread)(void (*func)(void *), void *, unsigned, void * /*arg*/); +typedef void (*pfnSDL_CurrentEndThread)(void); + +#ifndef SDL_beginthread +#define SDL_beginthread _beginthread +#endif +#ifndef SDL_endthread +#define SDL_endthread _endthread +#endif + +extern DECLSPEC SDL_Thread *SDLCALL +SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data, + pfnSDL_CurrentBeginThread pfnBeginThread, + pfnSDL_CurrentEndThread pfnEndThread); +extern DECLSPEC SDL_Thread *SDLCALL +SDL_CreateThreadWithStackSize(SDL_ThreadFunction fn, const char *name, const size_t stacksize, void *data, + pfnSDL_CurrentBeginThread pfnBeginThread, + pfnSDL_CurrentEndThread pfnEndThread); + +#if defined(SDL_CreateThread) && SDL_DYNAMIC_API +#undef SDL_CreateThread +#define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) +#undef SDL_CreateThreadWithStackSize +#define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize_REAL(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) +#else +#define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) +#define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) +#endif + +#else + +/** + * Create a new thread with a default stack size. + * + * This is equivalent to calling: + * + * ```c + * SDL_CreateThreadWithStackSize(fn, name, 0, data); + * ``` + * + * \param fn the SDL_ThreadFunction function to call in the new thread + * \param name the name of the thread + * \param data a pointer that is passed to `fn` + * \returns an opaque pointer to the new thread object on success, NULL if the + * new thread could not be created; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateThreadWithStackSize + * \sa SDL_WaitThread + */ +extern DECLSPEC SDL_Thread *SDLCALL +SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data); + +/** + * Create a new thread with a specific stack size. + * + * SDL makes an attempt to report `name` to the system, so that debuggers can + * display it. Not all platforms support this. + * + * Thread naming is a little complicated: Most systems have very small limits + * for the string length (Haiku has 32 bytes, Linux currently has 16, Visual + * C++ 6.0 has _nine_!), and possibly other arbitrary rules. You'll have to + * see what happens with your system's debugger. The name should be UTF-8 (but + * using the naming limits of C identifiers is a better bet). There are no + * requirements for thread naming conventions, so long as the string is + * null-terminated UTF-8, but these guidelines are helpful in choosing a name: + * + * https://stackoverflow.com/questions/149932/naming-conventions-for-threads + * + * If a system imposes requirements, SDL will try to munge the string for it + * (truncate, etc), but the original string contents will be available from + * SDL_GetThreadName(). + * + * The size (in bytes) of the new stack can be specified. Zero means "use the + * system default" which might be wildly different between platforms. x86 + * Linux generally defaults to eight megabytes, an embedded device might be a + * few kilobytes instead. You generally need to specify a stack that is a + * multiple of the system's page size (in many cases, this is 4 kilobytes, but + * check your system documentation). + * + * In SDL 2.1, stack size will be folded into the original SDL_CreateThread + * function, but for backwards compatibility, this is currently a separate + * function. + * + * \param fn the SDL_ThreadFunction function to call in the new thread + * \param name the name of the thread + * \param stacksize the size, in bytes, to allocate for the new thread stack. + * \param data a pointer that is passed to `fn` + * \returns an opaque pointer to the new thread object on success, NULL if the + * new thread could not be created; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.9. + * + * \sa SDL_WaitThread + */ +extern DECLSPEC SDL_Thread *SDLCALL +SDL_CreateThreadWithStackSize(SDL_ThreadFunction fn, const char *name, const size_t stacksize, void *data); + +#endif + +/** + * Get the thread name as it was specified in SDL_CreateThread(). + * + * This is internal memory, not to be freed by the caller, and remains valid + * until the specified thread is cleaned up by SDL_WaitThread(). + * + * \param thread the thread to query + * \returns a pointer to a UTF-8 string that names the specified thread, or + * NULL if it doesn't have a name. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateThread + */ +extern DECLSPEC const char *SDLCALL SDL_GetThreadName(SDL_Thread *thread); + +/** + * Get the thread identifier for the current thread. + * + * This thread identifier is as reported by the underlying operating system. + * If SDL is running on a platform that does not support threads the return + * value will always be zero. + * + * This function also returns a valid thread ID when called from the main + * thread. + * + * \returns the ID of the current thread. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetThreadID + */ +extern DECLSPEC SDL_threadID SDLCALL SDL_ThreadID(void); + +/** + * Get the thread identifier for the specified thread. + * + * This thread identifier is as reported by the underlying operating system. + * If SDL is running on a platform that does not support threads the return + * value will always be zero. + * + * \param thread the thread to query + * \returns the ID of the specified thread, or the ID of the current thread if + * `thread` is NULL. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ThreadID + */ +extern DECLSPEC SDL_threadID SDLCALL SDL_GetThreadID(SDL_Thread * thread); + +/** + * Set the priority for the current thread. + * + * Note that some platforms will not let you alter the priority (or at least, + * promote the thread to a higher priority) at all, and some require you to be + * an administrator account. Be prepared for this to fail. + * + * \param priority the SDL_ThreadPriority to set + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC int SDLCALL SDL_SetThreadPriority(SDL_ThreadPriority priority); + +/** + * Wait for a thread to finish. + * + * Threads that haven't been detached will remain (as a "zombie") until this + * function cleans them up. Not doing so is a resource leak. + * + * Once a thread has been cleaned up through this function, the SDL_Thread + * that references it becomes invalid and should not be referenced again. As + * such, only one thread may call SDL_WaitThread() on another. + * + * The return code for the thread function is placed in the area pointed to by + * `status`, if `status` is not NULL. + * + * You may not wait on a thread that has been used in a call to + * SDL_DetachThread(). Use either that function or this one, but not both, or + * behavior is undefined. + * + * It is safe to pass a NULL thread to this function; it is a no-op. + * + * Note that the thread pointer is freed by this function and is not valid + * afterward. + * + * \param thread the SDL_Thread pointer that was returned from the + * SDL_CreateThread() call that started this thread + * \param status pointer to an integer that will receive the value returned + * from the thread function by its 'return', or NULL to not + * receive such value back. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateThread + * \sa SDL_DetachThread + */ +extern DECLSPEC void SDLCALL SDL_WaitThread(SDL_Thread * thread, int *status); + +/** + * Let a thread clean up on exit without intervention. + * + * A thread may be "detached" to signify that it should not remain until + * another thread has called SDL_WaitThread() on it. Detaching a thread is + * useful for long-running threads that nothing needs to synchronize with or + * further manage. When a detached thread is done, it simply goes away. + * + * There is no way to recover the return code of a detached thread. If you + * need this, don't detach the thread and instead use SDL_WaitThread(). + * + * Once a thread is detached, you should usually assume the SDL_Thread isn't + * safe to reference again, as it will become invalid immediately upon the + * detached thread's exit, instead of remaining until someone has called + * SDL_WaitThread() to finally clean it up. As such, don't detach the same + * thread more than once. + * + * If a thread has already exited when passed to SDL_DetachThread(), it will + * stop waiting for a call to SDL_WaitThread() and clean up immediately. It is + * not safe to detach a thread that might be used with SDL_WaitThread(). + * + * You may not call SDL_WaitThread() on a thread that has been detached. Use + * either that function or this one, but not both, or behavior is undefined. + * + * It is safe to pass NULL to this function; it is a no-op. + * + * \param thread the SDL_Thread pointer that was returned from the + * SDL_CreateThread() call that started this thread + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_CreateThread + * \sa SDL_WaitThread + */ +extern DECLSPEC void SDLCALL SDL_DetachThread(SDL_Thread * thread); + +/** + * Create a piece of thread-local storage. + * + * This creates an identifier that is globally visible to all threads but + * refers to data that is thread-specific. + * + * \returns the newly created thread local storage identifier or 0 on error. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_TLSGet + * \sa SDL_TLSSet + */ +extern DECLSPEC SDL_TLSID SDLCALL SDL_TLSCreate(void); + +/** + * Get the current thread's value associated with a thread local storage ID. + * + * \param id the thread local storage ID + * \returns the value associated with the ID for the current thread or NULL if + * no value has been set; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_TLSCreate + * \sa SDL_TLSSet + */ +extern DECLSPEC void * SDLCALL SDL_TLSGet(SDL_TLSID id); + +/** + * Set the current thread's value associated with a thread local storage ID. + * + * The function prototype for `destructor` is: + * + * ```c + * void destructor(void *value) + * ``` + * + * where its parameter `value` is what was passed as `value` to SDL_TLSSet(). + * + * \param id the thread local storage ID + * \param value the value to associate with the ID for the current thread + * \param destructor a function called when the thread exits, to free the + * value + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_TLSCreate + * \sa SDL_TLSGet + */ +extern DECLSPEC int SDLCALL SDL_TLSSet(SDL_TLSID id, const void *value, void (SDLCALL *destructor)(void*)); + +/** + * Cleanup all TLS data for this thread. + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC void SDLCALL SDL_TLSCleanup(void); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_thread_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..fdbaf1dcb3c357a12c3abd7320cf6642aa9d558e GIT binary patch literal 25694 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_timer_h_ +#define SDL_timer_h_ + +/** + * \file SDL_timer.h + * + * Header for the SDL time management routines. + */ + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Get the number of milliseconds since SDL library initialization. + * + * This value wraps if the program runs for more than ~49 days. + * + * This function is not recommended as of SDL 2.0.18; use SDL_GetTicks64() + * instead, where the value doesn't wrap every ~49 days. There are places in + * SDL where we provide a 32-bit timestamp that can not change without + * breaking binary compatibility, though, so this function isn't officially + * deprecated. + * + * \returns an unsigned 32-bit value representing the number of milliseconds + * since the SDL library initialized. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_TICKS_PASSED + */ +extern DECLSPEC Uint32 SDLCALL SDL_GetTicks(void); + +/** + * Get the number of milliseconds since SDL library initialization. + * + * Note that you should not use the SDL_TICKS_PASSED macro with values + * returned by this function, as that macro does clever math to compensate for + * the 32-bit overflow every ~49 days that SDL_GetTicks() suffers from. 64-bit + * values from this function can be safely compared directly. + * + * For example, if you want to wait 100 ms, you could do this: + * + * ```c + * const Uint64 timeout = SDL_GetTicks64() + 100; + * while (SDL_GetTicks64() < timeout) { + * // ... do work until timeout has elapsed + * } + * ``` + * + * \returns an unsigned 64-bit value representing the number of milliseconds + * since the SDL library initialized. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC Uint64 SDLCALL SDL_GetTicks64(void); + +/** + * Compare 32-bit SDL ticks values, and return true if `A` has passed `B`. + * + * This should be used with results from SDL_GetTicks(), as this macro + * attempts to deal with the 32-bit counter wrapping back to zero every ~49 + * days, but should _not_ be used with SDL_GetTicks64(), which does not have + * that problem. + * + * For example, with SDL_GetTicks(), if you want to wait 100 ms, you could + * do this: + * + * ```c + * const Uint32 timeout = SDL_GetTicks() + 100; + * while (!SDL_TICKS_PASSED(SDL_GetTicks(), timeout)) { + * // ... do work until timeout has elapsed + * } + * ``` + * + * Note that this does not handle tick differences greater + * than 2^31 so take care when using the above kind of code + * with large timeout delays (tens of days). + */ +#define SDL_TICKS_PASSED(A, B) ((Sint32)((B) - (A)) <= 0) + +/** + * Get the current value of the high resolution counter. + * + * This function is typically used for profiling. + * + * The counter values are only meaningful relative to each other. Differences + * between values can be converted to times by using + * SDL_GetPerformanceFrequency(). + * + * \returns the current counter value. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetPerformanceFrequency + */ +extern DECLSPEC Uint64 SDLCALL SDL_GetPerformanceCounter(void); + +/** + * Get the count per second of the high resolution counter. + * + * \returns a platform-specific count per second. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetPerformanceCounter + */ +extern DECLSPEC Uint64 SDLCALL SDL_GetPerformanceFrequency(void); + +/** + * Wait a specified number of milliseconds before returning. + * + * This function waits a specified number of milliseconds before returning. It + * waits at least the specified time, but possibly longer due to OS + * scheduling. + * + * \param ms the number of milliseconds to delay + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC void SDLCALL SDL_Delay(Uint32 ms); + +/** + * Function prototype for the timer callback function. + * + * The callback function is passed the current timer interval and returns + * the next timer interval. If the returned value is the same as the one + * passed in, the periodic alarm continues, otherwise a new alarm is + * scheduled. If the callback returns 0, the periodic alarm is cancelled. + */ +typedef Uint32 (SDLCALL * SDL_TimerCallback) (Uint32 interval, void *param); + +/** + * Definition of the timer ID type. + */ +typedef int SDL_TimerID; + +/** + * Call a callback function at a future time. + * + * If you use this function, you must pass `SDL_INIT_TIMER` to SDL_Init(). + * + * The callback function is passed the current timer interval and the user + * supplied parameter from the SDL_AddTimer() call and should return the next + * timer interval. If the value returned from the callback is 0, the timer is + * canceled. + * + * The callback is run on a separate thread. + * + * Timers take into account the amount of time it took to execute the + * callback. For example, if the callback took 250 ms to execute and returned + * 1000 (ms), the timer would only wait another 750 ms before its next + * iteration. + * + * Timing may be inexact due to OS scheduling. Be sure to note the current + * time with SDL_GetTicks() or SDL_GetPerformanceCounter() in case your + * callback needs to adjust for variances. + * + * \param interval the timer delay, in milliseconds, passed to `callback` + * \param callback the SDL_TimerCallback function to call when the specified + * `interval` elapses + * \param param a pointer that is passed to `callback` + * \returns a timer ID or 0 if an error occurs; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RemoveTimer + */ +extern DECLSPEC SDL_TimerID SDLCALL SDL_AddTimer(Uint32 interval, + SDL_TimerCallback callback, + void *param); + +/** + * Remove a timer created with SDL_AddTimer(). + * + * \param id the ID of the timer to remove + * \returns SDL_TRUE if the timer is removed or SDL_FALSE if the timer wasn't + * found. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_AddTimer + */ +extern DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer(SDL_TimerID id); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_timer_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..6417e11c4de1b360d0efe1c0ca102fbb5cc9d3d5 GIT binary patch literal 18012 zcmc&*U2GiJb)J<~q}d9rox+CW2*ANFSO4wB1H2T7XRrBM(7bCvYEvJOqUc z7;)I|+&lN~%MdPx0hZ8bb~s;3yyV@~?xbP7@yW3(SntnQ>b)ecyMg2N zTD*S#)I&@4ChxdG!wFk_p(~{<&^YNvB%b{DPmWwKJZZXVQm3a$z0vTSNouFOkrES4 z>bcFj(4~HGS+8pQ>u!+7&=jQC-A{j~z*WeEk4C5Gwu}-z_)xv$_2|*f-~HOR$Gi-y z_F}U}ZEn-Eq#&s>iEpRf!UMAkYwPzOTxv%LmrFDe_93?fMWd*t#Pj9`0-$e4lh;hr zRx=DeA{;TAU=@XlyS~)$T))7qu$-NSzUwslZi~a^y&&bWCN2xiw(IdmGYm26sk0d)BgQ4~35 zP8eQtdBY7G?Ox!dZWtsv^W||&AObD;MDt_`MzxV4LmZ60@B98F*Td;adMVj7YS{~1 zB&+dJPCYYXDm!3-z!ou}!BjmGJQAnNCoa*48q+8og^?4aB|2-r0nAzw0Yu!D#;|WY zB4ECE&%?zarc5weM=yg_TwBx!9o|MyH5xE90<+=U>kZq3&7`_!fK;`LoX3X^Q?PD_ zqco>LNLfOJ3(9m&)<~b9oIFufROj}VX1SyTQSzbp= zc!9?WT7w&W)0?KcktdfA7bI7DY26*qjhdkyn~S*!W>kzcsG%ky2-A%MJEL+@+;+Mq zz%o*2rU*s=z09NSnDa)*+lU0n9$?*~XJrl&2-wc0$pU90c+K|Yjsek01+?Y>@6saT zmZ=8>Cto8#NF1F2C9k+`-(K?!?_EA^SA)pYGFVT0NCo-4M^}1 zD7h)H8#1!%cI1+7pZ(IlV*exx*Fd+i?ec(5XSC7S>xsR_ok{jqm_iNP^5JPP1x{R( z0Dr{5+$f5}hf89a=el;%_2o8gx%Eg11Rxe%bRwJFAcwNN_8@R*v@{x}RTadTF^aFu zZP|mzeIRnNG$}H@Jnibxf23UO7|lThX`EV@+i3f0sCKzP&v)Qiysf!$82BjT=7ei>6q5M<4lNID}GL_(?<9|;Cg+KnNwh@zSu%YBjtq!BALJ=8dV-28+3vmR=3 z%GXO|M$wjw8l_SOr-x=M<9%CfaSHF3L_&L-@WK{QFIg7cULtD2E4P)^wm2Q$6_v3Z zY!tjDQ}3h;)QDd&zrbLrUSDsz9QU4RTKy8W1xYsr8E7jDp#%i6yLHwMGNgztQZq8>u~* zg_OAyv~5|rRv&$!Sh+-SJ6@R3L}_S%narmd^^Rye9x7lc%d+U?>tjy|er;!cbih*bpwBHOuH(0}laip17 zMpAgv7+{Wu6(diKT*qwZ%;a(?B*y}!6-QcOkg_Aq%IKWJxMFNW=iz!hw%bs}Fe~{} z?Rk>U#2m@$24)J_)HQ&1wbn*pV_sT_MCF8$QlqKL63MfPZ2Y8vhWJD=!JooGM$Z_{ zE7~qYKpBa7aM|(8!Y{A+z*tkMpSXU6U81ZG5>T$pKUvaF4MJ;Ns)jaZ2TthwVOdK+ zv+;vtXX7K?Hz}iI*=Qx-$I!_`k42c2dog9J}3yXS|TdFa|Aa@PJB}`@~hwM5XbPcIkmM9O`!~p;LZw#Fe3Hi{EwUL?T z{lB1)=Pr%Xrfu>Zat$-7!BIw;xEpp7xKSkg+An|Q@nVe>BBAEv8iz7?xP&YQe!h< z6xk0^6HQ5Cq!x&W9s4xm+P!RGR4%LIwY^@_Eoa(yy7u5mEx$$5*6F&fY`ZPiD|0_@ zxj51#|9}5Xy96brJEO8q!K67}k~BtpSEFh3os=z)Q8oSt ztMSu(ZFGr;1(;HZr)eV3PTOH@-VAH1%RRSPp%ovMMQSwMM`HlnC; zNf|eozKjBtk$w%aJ1wniRL96x0FR0Bi1Jj#+`$Gtj}^kp1#lOAbR)83yLh^9lp*Pw zU|k6yLx@hK(waDVDFmaDp|ovjMuM9VxWG&;sb|*4r$QjT567^{i!f}`hrWe(jN&<7 zi~C_Z)yT~Y?N&0V>3OT`u#DVwE(Zc5VX0|4Xg_Ey6o;OdI}sgQKViZpL%1mmX}%bY zl%?zx^(6}XLjtKq6nL1%Sw_PuET;PbCh3hYVGEz_-gQ|R7Jwi!n|2qxTcndA3Zs=Y z_7pZXjFhu7sWH_kSsTt5*sTRKl0oY+JIjK6c-OCCL({6YxZ`0siZhvlHb&-SELq@O z$o#aJ@Fv2nu^a+sMX5u}4}0=RK}WSwLZ}~5Xrr~Cs(r#HC$T%c8H$FzoHqs=k>i>w zyHS)#Vx%E&jN~d@4fM(wqsS_DX;U@L<(Fi%nY%XHPV@PmTwP43YXE7CxoYD<(<~~+ zQiUKJRSahj#W++X;+hQa)9V-SeCPFvSF`B)2+AqZ>x5Cfw6<|SjKp%<@rq>9)i)XC zWd1RMD-7U;bh$C?VM<@n+ZX^i73S!fN5wW$^XaR4l=frSSYV8tz0E1_)A&7{E0A6z z*3$+Sdq%T`HBI8!!N~Ac`GHO_CQZTV{4N|j9vQ5I*cNUW5m)$1;A;`Ajpo6z7fmsy z@6{YXa-4O$HMMIqBtXU*&#aA7DfCz?zci!Fs*QpnvCK(fl(OyIU`qA$v)TR0Qb}Oc z^2?E803{}hy6`FSghR4Z5*=lls$|(QcT~o`aU(MXCw2}^-A0&a6Gip1t1=^JeB*@0 zrQJ2JX~H$*8_}g~Fjo$NB}b^^kGXXCbOBf9^v>`Pr&D7yQ;?{3fu`2Q!Jttqlpk!E zrv*vJ>o>q519w#_!e9z*NL(yp6m+IjJ{-%C;!VIR&`N!YWG zoW0PvaQ5NTkFBya6jGfH+;nyhj4pJ!VMTDH*Le%v@w^vfwx5c%W33*u1Nj(2#MPu1 zMV^Znghm_|VC^{c#rq_KHqx9}PP~k5|-MRIB6R)+Y#65 z1#cS-H*66?D3CE1X2F$avMa6uIjHw&HBk)UbnumTo`y8jLwu{&JfGS?AIl)CdbH&giDw(DY_h}NF#lr z9WKi=-`-$N(htHpDQm&Dkl@ktObjJ@I0Nh~um?E94Sn$h3kcOzGzd4bzMFPMKt0IQ z3m6V3vvUjzlgIJRr+7@GH*&&B`F9C;>;{Mc#4X}C)^>uJyd`X4x1Ofx#e48LZr$MB z1X4dG;%X3l6cN(RE$-PHFm1qm*YjN5iVcHSGOq(TWUI>FtBQ^KLU>f?^GTJZI`d!= zB4zz9mjOzHc(;u>ud<<^Rh9Ou3<5<7Pt;;ka+^hT8VVn!T_kia!-@h*zb6PxsUAQE zrdXuVu>&UXjfDdFP&Qo!R}1$Dg0!Z~XDCyBAl# zweiLF(I>5amQ~sQ&F$4nW!rjf)3SEY{P0hIe)_v79?dXRpdU$oioBe*1?k z>$gQrGi_~#*+LVhL)PV;i~xpe3KS?}3DBU7cA&U$K}oLsHZ>=9HmzoFr_AHHxhjHX zz=+&4&ze0TZI~o(6RAks8c3;gshZ0r9m16A2;MOoA>u?plhJR~QLy>$pWO9{w-4FB z_5;&(4UbFC+RFHCDIirLf&NTqn0JJSObiMs+Ynf8p;QyI)}Tm z)Dsve5; z2?MJtWhggJKl{zE{rfjAen{AJ=Ybud(~h-s1@`=_UtYN~d-3=0GvZ)oHD2Ru;K$}1Y%;ih1kRt~?3>{D#Fk7YY$F>zWjT35okcU-@>O)I4 zG~^5rAEO!XGos&M&m3N1Eqfzln5BuT^@+Gb2EawHx4@PU6N74&bXkX%hvO^{6T8g; z0we;B%NPxnoYdQZug?Gz^6e5?r*Bj93EinGpdCWDB>P;XANt1@av7k1U$wfry6RMs zp6D600_K0$37!MvR-Ek3k$Rw z{dF!w6X<%1hT$f0R`y%f-y=B?feJ8yJ-qe?!@6Z58JkmfKqcf4H81e z6}bv-U?Z_5`rI2$mV-wY6vUi6cJ7Hv<(ze{jg)v|_FsN_=&hwcFs6hNB~^Yb5As9c zBg4TDx@>C86nc!W83U^^b#hzFYOW)TLyq155gUq#ds0>&WsIxGuBMgBRqHC@!=?Y) z`{tLwdFAz-F|g4qM zl<9#^Q`n@~0wMnhSCC=2PK65th(ZJ_V4PxzI=q8NjtbPtt3xSJb&*Ke5zSNkOPc`1 zos^021W3(Dwjq>QKxawBRJh?l)M8*C71xYOA795IUBN*C$^eIw6xZ|oh%`w>u_lRe z=>qMPKs=;jwTU`Ke-zI!xgbat=#jcjbPp-|f86Qpb-ME`k!Ubz0bL<#*lxQH5ZK$O zwm8zxp_)hWW6IJ@E~#uxf=;ix`|W>z^Nrj)zlQ;@WK;e+5iMsQn@vP< z!2212o2ZT-v8Cn~S~(SI*^pw0IV6(P3K~~fm1~EuUEEW-W?g$hc!FAqC&k8c0<-ptw!uWv7X{>Pv8hlv4e|MQXWul)IoufL-lPJ>bU)10h&!l~#y z#gFFlGy3OE=h(UVy_HS2iO;L-Dn55_`ONdR_I>-mpm=ehpFl|6n9?uS9e3O;Ia)eO z1}D;5xudG-``j<;E-IIc^f z)xtic(5RwurPpBCmu`P)VNc~H>m^b4EHbRMXPa#=@2%`Kch(`okN)v`^5K7SKCIRu zs~lR&ta4~6Zxto2P~jI=*a|GM^~lx}dn?y&zP2BqPhIQot!y{9gT0jx>i$!wljzDJ z_g*-6XLIM7_xA`Po_Xbcvb)|*Q)$UYh1R}(RS>@xytYonuQgv=wmS*Lw+?I_IbONO zt}Ps|Y#-S^bG)*%v~&D;W%s$a9{a|34lVpjp34VTW>!85E;HxwxjD0m&#N<6@wqj# zh0pDoZG7&`?BH|v;PS+1c~LE_1W9 z_-BpHo|r?M_(`@n2aVmE-NilhnOeIPQoG0g?3L4R-|_Ch(Mkfh8r=rIzdgUo;QPvL NH{Uk9M|{fn{};6Mh3NnQ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h new file mode 100644 index 00000000..c12d4a1c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h @@ -0,0 +1,150 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_touch.h + * + * Include file for SDL touch event handling. + */ + +#ifndef SDL_touch_h_ +#define SDL_touch_h_ + +#include "SDL_stdinc.h" +#include "SDL_error.h" +#include "SDL_video.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +typedef Sint64 SDL_TouchID; +typedef Sint64 SDL_FingerID; + +typedef enum +{ + SDL_TOUCH_DEVICE_INVALID = -1, + SDL_TOUCH_DEVICE_DIRECT, /* touch screen with window-relative coordinates */ + SDL_TOUCH_DEVICE_INDIRECT_ABSOLUTE, /* trackpad with absolute device coordinates */ + SDL_TOUCH_DEVICE_INDIRECT_RELATIVE /* trackpad with screen cursor-relative coordinates */ +} SDL_TouchDeviceType; + +typedef struct SDL_Finger +{ + SDL_FingerID id; + float x; + float y; + float pressure; +} SDL_Finger; + +/* Used as the device ID for mouse events simulated with touch input */ +#define SDL_TOUCH_MOUSEID ((Uint32)-1) + +/* Used as the SDL_TouchID for touch events simulated with mouse input */ +#define SDL_MOUSE_TOUCHID ((Sint64)-1) + + +/** + * Get the number of registered touch devices. + * + * On some platforms SDL first sees the touch device if it was actually used. + * Therefore SDL_GetNumTouchDevices() may return 0 although devices are + * available. After using all devices at least once the number will be + * correct. + * + * This was fixed for Android in SDL 2.0.1. + * + * \returns the number of registered touch devices. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetTouchDevice + */ +extern DECLSPEC int SDLCALL SDL_GetNumTouchDevices(void); + +/** + * Get the touch ID with the given index. + * + * \param index the touch device index + * \returns the touch ID with the given index on success or 0 if the index is + * invalid; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumTouchDevices + */ +extern DECLSPEC SDL_TouchID SDLCALL SDL_GetTouchDevice(int index); + +/** + * Get the touch device name as reported from the driver or NULL if the index + * is invalid. + * + * \since This function is available since SDL 2.0.22. + */ +extern DECLSPEC const char* SDLCALL SDL_GetTouchName(int index); + +/** + * Get the type of the given touch device. + * + * \since This function is available since SDL 2.0.10. + */ +extern DECLSPEC SDL_TouchDeviceType SDLCALL SDL_GetTouchDeviceType(SDL_TouchID touchID); + +/** + * Get the number of active fingers for a given touch device. + * + * \param touchID the ID of a touch device + * \returns the number of active fingers for a given touch device on success + * or 0 on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetTouchFinger + */ +extern DECLSPEC int SDLCALL SDL_GetNumTouchFingers(SDL_TouchID touchID); + +/** + * Get the finger object for specified touch device ID and finger index. + * + * The returned resource is owned by SDL and should not be deallocated. + * + * \param touchID the ID of the requested touch device + * \param index the index of the requested finger + * \returns a pointer to the SDL_Finger object or NULL if no object at the + * given ID and index could be found. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_RecordGesture + */ +extern DECLSPEC SDL_Finger * SDLCALL SDL_GetTouchFinger(SDL_TouchID touchID, int index); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_touch_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7bda64a8a1eeaee5f6eda844f7661e1b5497384e GIT binary patch literal 16720 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h new file mode 100644 index 00000000..7585eece --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h @@ -0,0 +1,204 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_version.h + * + * This header defines the current SDL version. + */ + +#ifndef SDL_version_h_ +#define SDL_version_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Information about the version of SDL in use. + * + * Represents the library's version as three levels: major revision + * (increments with massive changes, additions, and enhancements), + * minor revision (increments with backwards-compatible changes to the + * major revision), and patchlevel (increments with fixes to the minor + * revision). + * + * \sa SDL_VERSION + * \sa SDL_GetVersion + */ +typedef struct SDL_version +{ + Uint8 major; /**< major version */ + Uint8 minor; /**< minor version */ + Uint8 patch; /**< update version */ +} SDL_version; + +/* Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL +*/ +#define SDL_MAJOR_VERSION 2 +#define SDL_MINOR_VERSION 28 +#define SDL_PATCHLEVEL 5 + +/** + * Macro to determine SDL version program was compiled against. + * + * This macro fills in a SDL_version structure with the version of the + * library you compiled against. This is determined by what header the + * compiler uses. Note that if you dynamically linked the library, you might + * have a slightly newer or older version at runtime. That version can be + * determined with SDL_GetVersion(), which, unlike SDL_VERSION(), + * is not a macro. + * + * \param x A pointer to a SDL_version struct to initialize. + * + * \sa SDL_version + * \sa SDL_GetVersion + */ +#define SDL_VERSION(x) \ +{ \ + (x)->major = SDL_MAJOR_VERSION; \ + (x)->minor = SDL_MINOR_VERSION; \ + (x)->patch = SDL_PATCHLEVEL; \ +} + +/* TODO: Remove this whole block in SDL 3 */ +#if SDL_MAJOR_VERSION < 3 +/** + * This macro turns the version numbers into a numeric value: + * \verbatim + (1,2,3) -> (1203) + \endverbatim + * + * This assumes that there will never be more than 100 patchlevels. + * + * In versions higher than 2.9.0, the minor version overflows into + * the thousands digit: for example, 2.23.0 is encoded as 4300, + * and 2.255.99 would be encoded as 25799. + * This macro will not be available in SDL 3.x. + */ +#define SDL_VERSIONNUM(X, Y, Z) \ + ((X)*1000 + (Y)*100 + (Z)) + +/** + * This is the version number macro for the current SDL version. + * + * In versions higher than 2.9.0, the minor version overflows into + * the thousands digit: for example, 2.23.0 is encoded as 4300. + * This macro will not be available in SDL 3.x. + * + * Deprecated, use SDL_VERSION_ATLEAST or SDL_VERSION instead. + */ +#define SDL_COMPILEDVERSION \ + SDL_VERSIONNUM(SDL_MAJOR_VERSION, SDL_MINOR_VERSION, SDL_PATCHLEVEL) +#endif /* SDL_MAJOR_VERSION < 3 */ + +/** + * This macro will evaluate to true if compiled with SDL at least X.Y.Z. + */ +#define SDL_VERSION_ATLEAST(X, Y, Z) \ + ((SDL_MAJOR_VERSION >= X) && \ + (SDL_MAJOR_VERSION > X || SDL_MINOR_VERSION >= Y) && \ + (SDL_MAJOR_VERSION > X || SDL_MINOR_VERSION > Y || SDL_PATCHLEVEL >= Z)) + +/** + * Get the version of SDL that is linked against your program. + * + * If you are linking to SDL dynamically, then it is possible that the current + * version will be different than the version you compiled against. This + * function returns the current version, while SDL_VERSION() is a macro that + * tells you what version you compiled with. + * + * This function may be called safely at any time, even before SDL_Init(). + * + * \param ver the SDL_version structure that contains the version information + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRevision + */ +extern DECLSPEC void SDLCALL SDL_GetVersion(SDL_version * ver); + +/** + * Get the code revision of SDL that is linked against your program. + * + * This value is the revision of the code you are linked with and may be + * different from the code you are compiling with, which is found in the + * constant SDL_REVISION. + * + * The revision is arbitrary string (a hash value) uniquely identifying the + * exact revision of the SDL library in use, and is only useful in comparing + * against other revisions. It is NOT an incrementing number. + * + * If SDL wasn't built from a git repository with the appropriate tools, this + * will return an empty string. + * + * Prior to SDL 2.0.16, before development moved to GitHub, this returned a + * hash for a Mercurial repository. + * + * You shouldn't use this function for anything but logging it for debugging + * purposes. The string is not intended to be reliable in any way. + * + * \returns an arbitrary string, uniquely identifying the exact revision of + * the SDL library in use. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetVersion + */ +extern DECLSPEC const char *SDLCALL SDL_GetRevision(void); + +/** + * Obsolete function, do not use. + * + * When SDL was hosted in a Mercurial repository, and was built carefully, + * this would return the revision number that the build was created from. This + * number was not reliable for several reasons, but more importantly, SDL is + * now hosted in a git repository, which does not offer numbers at all, only + * hashes. This function only ever returns zero now. Don't use it. + * + * Before SDL 2.0.16, this might have returned an unreliable, but non-zero + * number. + * + * \deprecated Use SDL_GetRevision() instead; if SDL was carefully built, it + * will return a git hash. + * + * \returns zero, always, in modern SDL releases. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetRevision + */ +extern SDL_DEPRECATED DECLSPEC int SDLCALL SDL_GetRevisionNumber(void); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_version_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5e0c36533b72d0e1f01b5862f1730d75591f3003 GIT binary patch literal 17022 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h new file mode 100644 index 00000000..c8b2d7a0 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h @@ -0,0 +1,2178 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2023 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_video.h + * + * Header file for SDL video functions. + */ + +#ifndef SDL_video_h_ +#define SDL_video_h_ + +#include "SDL_stdinc.h" +#include "SDL_pixels.h" +#include "SDL_rect.h" +#include "SDL_surface.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \brief The structure that defines a display mode + * + * \sa SDL_GetNumDisplayModes() + * \sa SDL_GetDisplayMode() + * \sa SDL_GetDesktopDisplayMode() + * \sa SDL_GetCurrentDisplayMode() + * \sa SDL_GetClosestDisplayMode() + * \sa SDL_SetWindowDisplayMode() + * \sa SDL_GetWindowDisplayMode() + */ +typedef struct +{ + Uint32 format; /**< pixel format */ + int w; /**< width, in screen coordinates */ + int h; /**< height, in screen coordinates */ + int refresh_rate; /**< refresh rate (or zero for unspecified) */ + void *driverdata; /**< driver-specific data, initialize to 0 */ +} SDL_DisplayMode; + +/** + * \brief The type used to identify a window + * + * \sa SDL_CreateWindow() + * \sa SDL_CreateWindowFrom() + * \sa SDL_DestroyWindow() + * \sa SDL_FlashWindow() + * \sa SDL_GetWindowData() + * \sa SDL_GetWindowFlags() + * \sa SDL_GetWindowGrab() + * \sa SDL_GetWindowKeyboardGrab() + * \sa SDL_GetWindowMouseGrab() + * \sa SDL_GetWindowPosition() + * \sa SDL_GetWindowSize() + * \sa SDL_GetWindowTitle() + * \sa SDL_HideWindow() + * \sa SDL_MaximizeWindow() + * \sa SDL_MinimizeWindow() + * \sa SDL_RaiseWindow() + * \sa SDL_RestoreWindow() + * \sa SDL_SetWindowData() + * \sa SDL_SetWindowFullscreen() + * \sa SDL_SetWindowGrab() + * \sa SDL_SetWindowKeyboardGrab() + * \sa SDL_SetWindowMouseGrab() + * \sa SDL_SetWindowIcon() + * \sa SDL_SetWindowPosition() + * \sa SDL_SetWindowSize() + * \sa SDL_SetWindowBordered() + * \sa SDL_SetWindowResizable() + * \sa SDL_SetWindowTitle() + * \sa SDL_ShowWindow() + */ +typedef struct SDL_Window SDL_Window; + +/** + * \brief The flags on a window + * + * \sa SDL_GetWindowFlags() + */ +typedef enum +{ + SDL_WINDOW_FULLSCREEN = 0x00000001, /**< fullscreen window */ + SDL_WINDOW_OPENGL = 0x00000002, /**< window usable with OpenGL context */ + SDL_WINDOW_SHOWN = 0x00000004, /**< window is visible */ + SDL_WINDOW_HIDDEN = 0x00000008, /**< window is not visible */ + SDL_WINDOW_BORDERLESS = 0x00000010, /**< no window decoration */ + SDL_WINDOW_RESIZABLE = 0x00000020, /**< window can be resized */ + SDL_WINDOW_MINIMIZED = 0x00000040, /**< window is minimized */ + SDL_WINDOW_MAXIMIZED = 0x00000080, /**< window is maximized */ + SDL_WINDOW_MOUSE_GRABBED = 0x00000100, /**< window has grabbed mouse input */ + SDL_WINDOW_INPUT_FOCUS = 0x00000200, /**< window has input focus */ + SDL_WINDOW_MOUSE_FOCUS = 0x00000400, /**< window has mouse focus */ + SDL_WINDOW_FULLSCREEN_DESKTOP = ( SDL_WINDOW_FULLSCREEN | 0x00001000 ), + SDL_WINDOW_FOREIGN = 0x00000800, /**< window not created by SDL */ + SDL_WINDOW_ALLOW_HIGHDPI = 0x00002000, /**< window should be created in high-DPI mode if supported. + On macOS NSHighResolutionCapable must be set true in the + application's Info.plist for this to have any effect. */ + SDL_WINDOW_MOUSE_CAPTURE = 0x00004000, /**< window has mouse captured (unrelated to MOUSE_GRABBED) */ + SDL_WINDOW_ALWAYS_ON_TOP = 0x00008000, /**< window should always be above others */ + SDL_WINDOW_SKIP_TASKBAR = 0x00010000, /**< window should not be added to the taskbar */ + SDL_WINDOW_UTILITY = 0x00020000, /**< window should be treated as a utility window */ + SDL_WINDOW_TOOLTIP = 0x00040000, /**< window should be treated as a tooltip */ + SDL_WINDOW_POPUP_MENU = 0x00080000, /**< window should be treated as a popup menu */ + SDL_WINDOW_KEYBOARD_GRABBED = 0x00100000, /**< window has grabbed keyboard input */ + SDL_WINDOW_VULKAN = 0x10000000, /**< window usable for Vulkan surface */ + SDL_WINDOW_METAL = 0x20000000, /**< window usable for Metal view */ + + SDL_WINDOW_INPUT_GRABBED = SDL_WINDOW_MOUSE_GRABBED /**< equivalent to SDL_WINDOW_MOUSE_GRABBED for compatibility */ +} SDL_WindowFlags; + +/** + * \brief Used to indicate that you don't care what the window position is. + */ +#define SDL_WINDOWPOS_UNDEFINED_MASK 0x1FFF0000u +#define SDL_WINDOWPOS_UNDEFINED_DISPLAY(X) (SDL_WINDOWPOS_UNDEFINED_MASK|(X)) +#define SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED_DISPLAY(0) +#define SDL_WINDOWPOS_ISUNDEFINED(X) \ + (((X)&0xFFFF0000) == SDL_WINDOWPOS_UNDEFINED_MASK) + +/** + * \brief Used to indicate that the window position should be centered. + */ +#define SDL_WINDOWPOS_CENTERED_MASK 0x2FFF0000u +#define SDL_WINDOWPOS_CENTERED_DISPLAY(X) (SDL_WINDOWPOS_CENTERED_MASK|(X)) +#define SDL_WINDOWPOS_CENTERED SDL_WINDOWPOS_CENTERED_DISPLAY(0) +#define SDL_WINDOWPOS_ISCENTERED(X) \ + (((X)&0xFFFF0000) == SDL_WINDOWPOS_CENTERED_MASK) + +/** + * \brief Event subtype for window events + */ +typedef enum +{ + SDL_WINDOWEVENT_NONE, /**< Never used */ + SDL_WINDOWEVENT_SHOWN, /**< Window has been shown */ + SDL_WINDOWEVENT_HIDDEN, /**< Window has been hidden */ + SDL_WINDOWEVENT_EXPOSED, /**< Window has been exposed and should be + redrawn */ + SDL_WINDOWEVENT_MOVED, /**< Window has been moved to data1, data2 + */ + SDL_WINDOWEVENT_RESIZED, /**< Window has been resized to data1xdata2 */ + SDL_WINDOWEVENT_SIZE_CHANGED, /**< The window size has changed, either as + a result of an API call or through the + system or user changing the window size. */ + SDL_WINDOWEVENT_MINIMIZED, /**< Window has been minimized */ + SDL_WINDOWEVENT_MAXIMIZED, /**< Window has been maximized */ + SDL_WINDOWEVENT_RESTORED, /**< Window has been restored to normal size + and position */ + SDL_WINDOWEVENT_ENTER, /**< Window has gained mouse focus */ + SDL_WINDOWEVENT_LEAVE, /**< Window has lost mouse focus */ + SDL_WINDOWEVENT_FOCUS_GAINED, /**< Window has gained keyboard focus */ + SDL_WINDOWEVENT_FOCUS_LOST, /**< Window has lost keyboard focus */ + SDL_WINDOWEVENT_CLOSE, /**< The window manager requests that the window be closed */ + SDL_WINDOWEVENT_TAKE_FOCUS, /**< Window is being offered a focus (should SetWindowInputFocus() on itself or a subwindow, or ignore) */ + SDL_WINDOWEVENT_HIT_TEST, /**< Window had a hit test that wasn't SDL_HITTEST_NORMAL. */ + SDL_WINDOWEVENT_ICCPROF_CHANGED,/**< The ICC profile of the window's display has changed. */ + SDL_WINDOWEVENT_DISPLAY_CHANGED /**< Window has been moved to display data1. */ +} SDL_WindowEventID; + +/** + * \brief Event subtype for display events + */ +typedef enum +{ + SDL_DISPLAYEVENT_NONE, /**< Never used */ + SDL_DISPLAYEVENT_ORIENTATION, /**< Display orientation has changed to data1 */ + SDL_DISPLAYEVENT_CONNECTED, /**< Display has been added to the system */ + SDL_DISPLAYEVENT_DISCONNECTED, /**< Display has been removed from the system */ + SDL_DISPLAYEVENT_MOVED /**< Display has changed position */ +} SDL_DisplayEventID; + +/** + * \brief Display orientation + */ +typedef enum +{ + SDL_ORIENTATION_UNKNOWN, /**< The display orientation can't be determined */ + SDL_ORIENTATION_LANDSCAPE, /**< The display is in landscape mode, with the right side up, relative to portrait mode */ + SDL_ORIENTATION_LANDSCAPE_FLIPPED, /**< The display is in landscape mode, with the left side up, relative to portrait mode */ + SDL_ORIENTATION_PORTRAIT, /**< The display is in portrait mode */ + SDL_ORIENTATION_PORTRAIT_FLIPPED /**< The display is in portrait mode, upside down */ +} SDL_DisplayOrientation; + +/** + * \brief Window flash operation + */ +typedef enum +{ + SDL_FLASH_CANCEL, /**< Cancel any window flash state */ + SDL_FLASH_BRIEFLY, /**< Flash the window briefly to get attention */ + SDL_FLASH_UNTIL_FOCUSED /**< Flash the window until it gets focus */ +} SDL_FlashOperation; + +/** + * \brief An opaque handle to an OpenGL context. + */ +typedef void *SDL_GLContext; + +/** + * \brief OpenGL configuration attributes + */ +typedef enum +{ + SDL_GL_RED_SIZE, + SDL_GL_GREEN_SIZE, + SDL_GL_BLUE_SIZE, + SDL_GL_ALPHA_SIZE, + SDL_GL_BUFFER_SIZE, + SDL_GL_DOUBLEBUFFER, + SDL_GL_DEPTH_SIZE, + SDL_GL_STENCIL_SIZE, + SDL_GL_ACCUM_RED_SIZE, + SDL_GL_ACCUM_GREEN_SIZE, + SDL_GL_ACCUM_BLUE_SIZE, + SDL_GL_ACCUM_ALPHA_SIZE, + SDL_GL_STEREO, + SDL_GL_MULTISAMPLEBUFFERS, + SDL_GL_MULTISAMPLESAMPLES, + SDL_GL_ACCELERATED_VISUAL, + SDL_GL_RETAINED_BACKING, + SDL_GL_CONTEXT_MAJOR_VERSION, + SDL_GL_CONTEXT_MINOR_VERSION, + SDL_GL_CONTEXT_EGL, + SDL_GL_CONTEXT_FLAGS, + SDL_GL_CONTEXT_PROFILE_MASK, + SDL_GL_SHARE_WITH_CURRENT_CONTEXT, + SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, + SDL_GL_CONTEXT_RELEASE_BEHAVIOR, + SDL_GL_CONTEXT_RESET_NOTIFICATION, + SDL_GL_CONTEXT_NO_ERROR, + SDL_GL_FLOATBUFFERS +} SDL_GLattr; + +typedef enum +{ + SDL_GL_CONTEXT_PROFILE_CORE = 0x0001, + SDL_GL_CONTEXT_PROFILE_COMPATIBILITY = 0x0002, + SDL_GL_CONTEXT_PROFILE_ES = 0x0004 /**< GLX_CONTEXT_ES2_PROFILE_BIT_EXT */ +} SDL_GLprofile; + +typedef enum +{ + SDL_GL_CONTEXT_DEBUG_FLAG = 0x0001, + SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG = 0x0002, + SDL_GL_CONTEXT_ROBUST_ACCESS_FLAG = 0x0004, + SDL_GL_CONTEXT_RESET_ISOLATION_FLAG = 0x0008 +} SDL_GLcontextFlag; + +typedef enum +{ + SDL_GL_CONTEXT_RELEASE_BEHAVIOR_NONE = 0x0000, + SDL_GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x0001 +} SDL_GLcontextReleaseFlag; + +typedef enum +{ + SDL_GL_CONTEXT_RESET_NO_NOTIFICATION = 0x0000, + SDL_GL_CONTEXT_RESET_LOSE_CONTEXT = 0x0001 +} SDL_GLContextResetNotification; + +/* Function prototypes */ + +/** + * Get the number of video drivers compiled into SDL. + * + * \returns a number >= 1 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetVideoDriver + */ +extern DECLSPEC int SDLCALL SDL_GetNumVideoDrivers(void); + +/** + * Get the name of a built in video driver. + * + * The video drivers are presented in the order in which they are normally + * checked during initialization. + * + * \param index the index of a video driver + * \returns the name of the video driver with the given **index**. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumVideoDrivers + */ +extern DECLSPEC const char *SDLCALL SDL_GetVideoDriver(int index); + +/** + * Initialize the video subsystem, optionally specifying a video driver. + * + * This function initializes the video subsystem, setting up a connection to + * the window manager, etc, and determines the available display modes and + * pixel formats, but does not initialize a window or graphics mode. + * + * If you use this function and you haven't used the SDL_INIT_VIDEO flag with + * either SDL_Init() or SDL_InitSubSystem(), you should call SDL_VideoQuit() + * before calling SDL_Quit(). + * + * It is safe to call this function multiple times. SDL_VideoInit() will call + * SDL_VideoQuit() itself if the video subsystem has already been initialized. + * + * You can use SDL_GetNumVideoDrivers() and SDL_GetVideoDriver() to find a + * specific `driver_name`. + * + * \param driver_name the name of a video driver to initialize, or NULL for + * the default driver + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumVideoDrivers + * \sa SDL_GetVideoDriver + * \sa SDL_InitSubSystem + * \sa SDL_VideoQuit + */ +extern DECLSPEC int SDLCALL SDL_VideoInit(const char *driver_name); + +/** + * Shut down the video subsystem, if initialized with SDL_VideoInit(). + * + * This function closes all windows, and restores the original video mode. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_VideoInit + */ +extern DECLSPEC void SDLCALL SDL_VideoQuit(void); + +/** + * Get the name of the currently initialized video driver. + * + * \returns the name of the current video driver or NULL if no driver has been + * initialized. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumVideoDrivers + * \sa SDL_GetVideoDriver + */ +extern DECLSPEC const char *SDLCALL SDL_GetCurrentVideoDriver(void); + +/** + * Get the number of available video displays. + * + * \returns a number >= 1 or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetDisplayBounds + */ +extern DECLSPEC int SDLCALL SDL_GetNumVideoDisplays(void); + +/** + * Get the name of a display in UTF-8 encoding. + * + * \param displayIndex the index of display from which the name should be + * queried + * \returns the name of a display or NULL for an invalid display index or + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC const char * SDLCALL SDL_GetDisplayName(int displayIndex); + +/** + * Get the desktop area represented by a display. + * + * The primary display (`displayIndex` zero) is always located at 0,0. + * + * \param displayIndex the index of the display to query + * \param rect the SDL_Rect structure filled in with the display bounds + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC int SDLCALL SDL_GetDisplayBounds(int displayIndex, SDL_Rect * rect); + +/** + * Get the usable desktop area represented by a display. + * + * The primary display (`displayIndex` zero) is always located at 0,0. + * + * This is the same area as SDL_GetDisplayBounds() reports, but with portions + * reserved by the system removed. For example, on Apple's macOS, this + * subtracts the area occupied by the menu bar and dock. + * + * Setting a window to be fullscreen generally bypasses these unusable areas, + * so these are good guidelines for the maximum space available to a + * non-fullscreen window. + * + * The parameter `rect` is ignored if it is NULL. + * + * This function also returns -1 if the parameter `displayIndex` is out of + * range. + * + * \param displayIndex the index of the display to query the usable bounds + * from + * \param rect the SDL_Rect structure filled in with the display bounds + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_GetDisplayBounds + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC int SDLCALL SDL_GetDisplayUsableBounds(int displayIndex, SDL_Rect * rect); + +/** + * Get the dots/pixels-per-inch for a display. + * + * Diagonal, horizontal and vertical DPI can all be optionally returned if the + * appropriate parameter is non-NULL. + * + * A failure of this function usually means that either no DPI information is + * available or the `displayIndex` is out of range. + * + * **WARNING**: This reports the DPI that the hardware reports, and it is not + * always reliable! It is almost always better to use SDL_GetWindowSize() to + * find the window size, which might be in logical points instead of pixels, + * and then SDL_GL_GetDrawableSize(), SDL_Vulkan_GetDrawableSize(), + * SDL_Metal_GetDrawableSize(), or SDL_GetRendererOutputSize(), and compare + * the two values to get an actual scaling value between the two. We will be + * rethinking how high-dpi details should be managed in SDL3 to make things + * more consistent, reliable, and clear. + * + * \param displayIndex the index of the display from which DPI information + * should be queried + * \param ddpi a pointer filled in with the diagonal DPI of the display; may + * be NULL + * \param hdpi a pointer filled in with the horizontal DPI of the display; may + * be NULL + * \param vdpi a pointer filled in with the vertical DPI of the display; may + * be NULL + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC int SDLCALL SDL_GetDisplayDPI(int displayIndex, float * ddpi, float * hdpi, float * vdpi); + +/** + * Get the orientation of a display. + * + * \param displayIndex the index of the display to query + * \returns The SDL_DisplayOrientation enum value of the display, or + * `SDL_ORIENTATION_UNKNOWN` if it isn't available. + * + * \since This function is available since SDL 2.0.9. + * + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC SDL_DisplayOrientation SDLCALL SDL_GetDisplayOrientation(int displayIndex); + +/** + * Get the number of available display modes. + * + * The `displayIndex` needs to be in the range from 0 to + * SDL_GetNumVideoDisplays() - 1. + * + * \param displayIndex the index of the display to query + * \returns a number >= 1 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetDisplayMode + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC int SDLCALL SDL_GetNumDisplayModes(int displayIndex); + +/** + * Get information about a specific display mode. + * + * The display modes are sorted in this priority: + * + * - width -> largest to smallest + * - height -> largest to smallest + * - bits per pixel -> more colors to fewer colors + * - packed pixel layout -> largest to smallest + * - refresh rate -> highest to lowest + * + * \param displayIndex the index of the display to query + * \param modeIndex the index of the display mode to query + * \param mode an SDL_DisplayMode structure filled in with the mode at + * `modeIndex` + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetNumDisplayModes + */ +extern DECLSPEC int SDLCALL SDL_GetDisplayMode(int displayIndex, int modeIndex, + SDL_DisplayMode * mode); + +/** + * Get information about the desktop's display mode. + * + * There's a difference between this function and SDL_GetCurrentDisplayMode() + * when SDL runs fullscreen and has changed the resolution. In that case this + * function will return the previous native display mode, and not the current + * display mode. + * + * \param displayIndex the index of the display to query + * \param mode an SDL_DisplayMode structure filled in with the current display + * mode + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetCurrentDisplayMode + * \sa SDL_GetDisplayMode + * \sa SDL_SetWindowDisplayMode + */ +extern DECLSPEC int SDLCALL SDL_GetDesktopDisplayMode(int displayIndex, SDL_DisplayMode * mode); + +/** + * Get information about the current display mode. + * + * There's a difference between this function and SDL_GetDesktopDisplayMode() + * when SDL runs fullscreen and has changed the resolution. In that case this + * function will return the current display mode, and not the previous native + * display mode. + * + * \param displayIndex the index of the display to query + * \param mode an SDL_DisplayMode structure filled in with the current display + * mode + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetDesktopDisplayMode + * \sa SDL_GetDisplayMode + * \sa SDL_GetNumVideoDisplays + * \sa SDL_SetWindowDisplayMode + */ +extern DECLSPEC int SDLCALL SDL_GetCurrentDisplayMode(int displayIndex, SDL_DisplayMode * mode); + + +/** + * Get the closest match to the requested display mode. + * + * The available display modes are scanned and `closest` is filled in with the + * closest mode matching the requested mode and returned. The mode format and + * refresh rate default to the desktop mode if they are set to 0. The modes + * are scanned with size being first priority, format being second priority, + * and finally checking the refresh rate. If all the available modes are too + * small, then NULL is returned. + * + * \param displayIndex the index of the display to query + * \param mode an SDL_DisplayMode structure containing the desired display + * mode + * \param closest an SDL_DisplayMode structure filled in with the closest + * match of the available display modes + * \returns the passed in value `closest` or NULL if no matching video mode + * was available; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetDisplayMode + * \sa SDL_GetNumDisplayModes + */ +extern DECLSPEC SDL_DisplayMode * SDLCALL SDL_GetClosestDisplayMode(int displayIndex, const SDL_DisplayMode * mode, SDL_DisplayMode * closest); + +/** + * Get the index of the display containing a point + * + * \param point the point to query + * \returns the index of the display containing the point or a negative error + * code on failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GetDisplayBounds + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC int SDLCALL SDL_GetPointDisplayIndex(const SDL_Point * point); + +/** + * Get the index of the display primarily containing a rect + * + * \param rect the rect to query + * \returns the index of the display entirely containing the rect or closest + * to the center of the rect on success or a negative error code on + * failure; call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.24.0. + * + * \sa SDL_GetDisplayBounds + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC int SDLCALL SDL_GetRectDisplayIndex(const SDL_Rect * rect); + +/** + * Get the index of the display associated with a window. + * + * \param window the window to query + * \returns the index of the display containing the center of the window on + * success or a negative error code on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetDisplayBounds + * \sa SDL_GetNumVideoDisplays + */ +extern DECLSPEC int SDLCALL SDL_GetWindowDisplayIndex(SDL_Window * window); + +/** + * Set the display mode to use when a window is visible at fullscreen. + * + * This only affects the display mode used when the window is fullscreen. To + * change the window size when the window is not fullscreen, use + * SDL_SetWindowSize(). + * + * \param window the window to affect + * \param mode the SDL_DisplayMode structure representing the mode to use, or + * NULL to use the window's dimensions and the desktop's format + * and refresh rate + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowDisplayMode + * \sa SDL_SetWindowFullscreen + */ +extern DECLSPEC int SDLCALL SDL_SetWindowDisplayMode(SDL_Window * window, + const SDL_DisplayMode * mode); + +/** + * Query the display mode to use when a window is visible at fullscreen. + * + * \param window the window to query + * \param mode an SDL_DisplayMode structure filled in with the fullscreen + * display mode + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetWindowDisplayMode + * \sa SDL_SetWindowFullscreen + */ +extern DECLSPEC int SDLCALL SDL_GetWindowDisplayMode(SDL_Window * window, + SDL_DisplayMode * mode); + +/** + * Get the raw ICC profile data for the screen the window is currently on. + * + * Data returned should be freed with SDL_free. + * + * \param window the window to query + * \param size the size of the ICC profile + * \returns the raw ICC profile data on success or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.18. + */ +extern DECLSPEC void* SDLCALL SDL_GetWindowICCProfile(SDL_Window * window, size_t* size); + +/** + * Get the pixel format associated with the window. + * + * \param window the window to query + * \returns the pixel format of the window on success or + * SDL_PIXELFORMAT_UNKNOWN on failure; call SDL_GetError() for more + * information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC Uint32 SDLCALL SDL_GetWindowPixelFormat(SDL_Window * window); + +/** + * Create a window with the specified position, dimensions, and flags. + * + * `flags` may be any of the following OR'd together: + * + * - `SDL_WINDOW_FULLSCREEN`: fullscreen window + * - `SDL_WINDOW_FULLSCREEN_DESKTOP`: fullscreen window at desktop resolution + * - `SDL_WINDOW_OPENGL`: window usable with an OpenGL context + * - `SDL_WINDOW_VULKAN`: window usable with a Vulkan instance + * - `SDL_WINDOW_METAL`: window usable with a Metal instance + * - `SDL_WINDOW_HIDDEN`: window is not visible + * - `SDL_WINDOW_BORDERLESS`: no window decoration + * - `SDL_WINDOW_RESIZABLE`: window can be resized + * - `SDL_WINDOW_MINIMIZED`: window is minimized + * - `SDL_WINDOW_MAXIMIZED`: window is maximized + * - `SDL_WINDOW_INPUT_GRABBED`: window has grabbed input focus + * - `SDL_WINDOW_ALLOW_HIGHDPI`: window should be created in high-DPI mode if + * supported (>= SDL 2.0.1) + * + * `SDL_WINDOW_SHOWN` is ignored by SDL_CreateWindow(). The SDL_Window is + * implicitly shown if SDL_WINDOW_HIDDEN is not set. `SDL_WINDOW_SHOWN` may be + * queried later using SDL_GetWindowFlags(). + * + * On Apple's macOS, you **must** set the NSHighResolutionCapable Info.plist + * property to YES, otherwise you will not receive a High-DPI OpenGL canvas. + * + * If the window is created with the `SDL_WINDOW_ALLOW_HIGHDPI` flag, its size + * in pixels may differ from its size in screen coordinates on platforms with + * high-DPI support (e.g. iOS and macOS). Use SDL_GetWindowSize() to query the + * client area's size in screen coordinates, and SDL_GL_GetDrawableSize() or + * SDL_GetRendererOutputSize() to query the drawable size in pixels. Note that + * when this flag is set, the drawable size can vary after the window is + * created and should be queried after major window events such as when the + * window is resized or moved between displays. + * + * If the window is set fullscreen, the width and height parameters `w` and + * `h` will not be used. However, invalid size parameters (e.g. too large) may + * still fail. Window size is actually limited to 16384 x 16384 for all + * platforms at window creation. + * + * If the window is created with any of the SDL_WINDOW_OPENGL or + * SDL_WINDOW_VULKAN flags, then the corresponding LoadLibrary function + * (SDL_GL_LoadLibrary or SDL_Vulkan_LoadLibrary) is called and the + * corresponding UnloadLibrary function is called by SDL_DestroyWindow(). + * + * If SDL_WINDOW_VULKAN is specified and there isn't a working Vulkan driver, + * SDL_CreateWindow() will fail because SDL_Vulkan_LoadLibrary() will fail. + * + * If SDL_WINDOW_METAL is specified on an OS that does not support Metal, + * SDL_CreateWindow() will fail. + * + * On non-Apple devices, SDL requires you to either not link to the Vulkan + * loader or link to a dynamic library version. This limitation may be removed + * in a future version of SDL. + * + * \param title the title of the window, in UTF-8 encoding + * \param x the x position of the window, `SDL_WINDOWPOS_CENTERED`, or + * `SDL_WINDOWPOS_UNDEFINED` + * \param y the y position of the window, `SDL_WINDOWPOS_CENTERED`, or + * `SDL_WINDOWPOS_UNDEFINED` + * \param w the width of the window, in screen coordinates + * \param h the height of the window, in screen coordinates + * \param flags 0, or one or more SDL_WindowFlags OR'd together + * \returns the window that was created or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateWindowFrom + * \sa SDL_DestroyWindow + */ +extern DECLSPEC SDL_Window * SDLCALL SDL_CreateWindow(const char *title, + int x, int y, int w, + int h, Uint32 flags); + +/** + * Create an SDL window from an existing native window. + * + * In some cases (e.g. OpenGL) and on some platforms (e.g. Microsoft Windows) + * the hint `SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT` needs to be configured + * before using SDL_CreateWindowFrom(). + * + * \param data a pointer to driver-dependent window creation data, typically + * your native window cast to a void* + * \returns the window that was created or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateWindow + * \sa SDL_DestroyWindow + */ +extern DECLSPEC SDL_Window * SDLCALL SDL_CreateWindowFrom(const void *data); + +/** + * Get the numeric ID of a window. + * + * The numeric ID is what SDL_WindowEvent references, and is necessary to map + * these events to specific SDL_Window objects. + * + * \param window the window to query + * \returns the ID of the window on success or 0 on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowFromID + */ +extern DECLSPEC Uint32 SDLCALL SDL_GetWindowID(SDL_Window * window); + +/** + * Get a window from a stored ID. + * + * The numeric ID is what SDL_WindowEvent references, and is necessary to map + * these events to specific SDL_Window objects. + * + * \param id the ID of the window + * \returns the window associated with `id` or NULL if it doesn't exist; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowID + */ +extern DECLSPEC SDL_Window * SDLCALL SDL_GetWindowFromID(Uint32 id); + +/** + * Get the window flags. + * + * \param window the window to query + * \returns a mask of the SDL_WindowFlags associated with `window` + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateWindow + * \sa SDL_HideWindow + * \sa SDL_MaximizeWindow + * \sa SDL_MinimizeWindow + * \sa SDL_SetWindowFullscreen + * \sa SDL_SetWindowGrab + * \sa SDL_ShowWindow + */ +extern DECLSPEC Uint32 SDLCALL SDL_GetWindowFlags(SDL_Window * window); + +/** + * Set the title of a window. + * + * This string is expected to be in UTF-8 encoding. + * + * \param window the window to change + * \param title the desired window title in UTF-8 format + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowTitle + */ +extern DECLSPEC void SDLCALL SDL_SetWindowTitle(SDL_Window * window, + const char *title); + +/** + * Get the title of a window. + * + * \param window the window to query + * \returns the title of the window in UTF-8 format or "" if there is no + * title. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetWindowTitle + */ +extern DECLSPEC const char *SDLCALL SDL_GetWindowTitle(SDL_Window * window); + +/** + * Set the icon for a window. + * + * \param window the window to change + * \param icon an SDL_Surface structure containing the icon for the window + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC void SDLCALL SDL_SetWindowIcon(SDL_Window * window, + SDL_Surface * icon); + +/** + * Associate an arbitrary named pointer with a window. + * + * `name` is case-sensitive. + * + * \param window the window to associate with the pointer + * \param name the name of the pointer + * \param userdata the associated pointer + * \returns the previous value associated with `name`. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowData + */ +extern DECLSPEC void* SDLCALL SDL_SetWindowData(SDL_Window * window, + const char *name, + void *userdata); + +/** + * Retrieve the data pointer associated with a window. + * + * \param window the window to query + * \param name the name of the pointer + * \returns the value associated with `name`. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetWindowData + */ +extern DECLSPEC void *SDLCALL SDL_GetWindowData(SDL_Window * window, + const char *name); + +/** + * Set the position of a window. + * + * The window coordinate origin is the upper left of the display. + * + * \param window the window to reposition + * \param x the x coordinate of the window in screen coordinates, or + * `SDL_WINDOWPOS_CENTERED` or `SDL_WINDOWPOS_UNDEFINED` + * \param y the y coordinate of the window in screen coordinates, or + * `SDL_WINDOWPOS_CENTERED` or `SDL_WINDOWPOS_UNDEFINED` + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowPosition + */ +extern DECLSPEC void SDLCALL SDL_SetWindowPosition(SDL_Window * window, + int x, int y); + +/** + * Get the position of a window. + * + * If you do not need the value for one of the positions a NULL may be passed + * in the `x` or `y` parameter. + * + * \param window the window to query + * \param x a pointer filled in with the x position of the window, in screen + * coordinates, may be NULL + * \param y a pointer filled in with the y position of the window, in screen + * coordinates, may be NULL + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetWindowPosition + */ +extern DECLSPEC void SDLCALL SDL_GetWindowPosition(SDL_Window * window, + int *x, int *y); + +/** + * Set the size of a window's client area. + * + * The window size in screen coordinates may differ from the size in pixels, + * if the window was created with `SDL_WINDOW_ALLOW_HIGHDPI` on a platform + * with high-dpi support (e.g. iOS or macOS). Use SDL_GL_GetDrawableSize() or + * SDL_GetRendererOutputSize() to get the real client area size in pixels. + * + * Fullscreen windows automatically match the size of the display mode, and + * you should use SDL_SetWindowDisplayMode() to change their size. + * + * \param window the window to change + * \param w the width of the window in pixels, in screen coordinates, must be + * > 0 + * \param h the height of the window in pixels, in screen coordinates, must be + * > 0 + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowSize + * \sa SDL_SetWindowDisplayMode + */ +extern DECLSPEC void SDLCALL SDL_SetWindowSize(SDL_Window * window, int w, + int h); + +/** + * Get the size of a window's client area. + * + * NULL can safely be passed as the `w` or `h` parameter if the width or + * height value is not desired. + * + * The window size in screen coordinates may differ from the size in pixels, + * if the window was created with `SDL_WINDOW_ALLOW_HIGHDPI` on a platform + * with high-dpi support (e.g. iOS or macOS). Use SDL_GL_GetDrawableSize(), + * SDL_Vulkan_GetDrawableSize(), or SDL_GetRendererOutputSize() to get the + * real client area size in pixels. + * + * \param window the window to query the width and height from + * \param w a pointer filled in with the width of the window, in screen + * coordinates, may be NULL + * \param h a pointer filled in with the height of the window, in screen + * coordinates, may be NULL + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_GetDrawableSize + * \sa SDL_Vulkan_GetDrawableSize + * \sa SDL_SetWindowSize + */ +extern DECLSPEC void SDLCALL SDL_GetWindowSize(SDL_Window * window, int *w, + int *h); + +/** + * Get the size of a window's borders (decorations) around the client area. + * + * Note: If this function fails (returns -1), the size values will be + * initialized to 0, 0, 0, 0 (if a non-NULL pointer is provided), as if the + * window in question was borderless. + * + * Note: This function may fail on systems where the window has not yet been + * decorated by the display server (for example, immediately after calling + * SDL_CreateWindow). It is recommended that you wait at least until the + * window has been presented and composited, so that the window system has a + * chance to decorate the window and provide the border dimensions to SDL. + * + * This function also returns -1 if getting the information is not supported. + * + * \param window the window to query the size values of the border + * (decorations) from + * \param top pointer to variable for storing the size of the top border; NULL + * is permitted + * \param left pointer to variable for storing the size of the left border; + * NULL is permitted + * \param bottom pointer to variable for storing the size of the bottom + * border; NULL is permitted + * \param right pointer to variable for storing the size of the right border; + * NULL is permitted + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_GetWindowSize + */ +extern DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window * window, + int *top, int *left, + int *bottom, int *right); + +/** + * Get the size of a window in pixels. + * + * This may differ from SDL_GetWindowSize() if we're rendering to a high-DPI + * drawable, i.e. the window was created with `SDL_WINDOW_ALLOW_HIGHDPI` on a + * platform with high-DPI support (Apple calls this "Retina"), and not + * disabled by the `SDL_HINT_VIDEO_HIGHDPI_DISABLED` hint. + * + * \param window the window from which the drawable size should be queried + * \param w a pointer to variable for storing the width in pixels, may be NULL + * \param h a pointer to variable for storing the height in pixels, may be + * NULL + * + * \since This function is available since SDL 2.26.0. + * + * \sa SDL_CreateWindow + * \sa SDL_GetWindowSize + */ +extern DECLSPEC void SDLCALL SDL_GetWindowSizeInPixels(SDL_Window * window, + int *w, int *h); + +/** + * Set the minimum size of a window's client area. + * + * \param window the window to change + * \param min_w the minimum width of the window in pixels + * \param min_h the minimum height of the window in pixels + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowMinimumSize + * \sa SDL_SetWindowMaximumSize + */ +extern DECLSPEC void SDLCALL SDL_SetWindowMinimumSize(SDL_Window * window, + int min_w, int min_h); + +/** + * Get the minimum size of a window's client area. + * + * \param window the window to query + * \param w a pointer filled in with the minimum width of the window, may be + * NULL + * \param h a pointer filled in with the minimum height of the window, may be + * NULL + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowMaximumSize + * \sa SDL_SetWindowMinimumSize + */ +extern DECLSPEC void SDLCALL SDL_GetWindowMinimumSize(SDL_Window * window, + int *w, int *h); + +/** + * Set the maximum size of a window's client area. + * + * \param window the window to change + * \param max_w the maximum width of the window in pixels + * \param max_h the maximum height of the window in pixels + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowMaximumSize + * \sa SDL_SetWindowMinimumSize + */ +extern DECLSPEC void SDLCALL SDL_SetWindowMaximumSize(SDL_Window * window, + int max_w, int max_h); + +/** + * Get the maximum size of a window's client area. + * + * \param window the window to query + * \param w a pointer filled in with the maximum width of the window, may be + * NULL + * \param h a pointer filled in with the maximum height of the window, may be + * NULL + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowMinimumSize + * \sa SDL_SetWindowMaximumSize + */ +extern DECLSPEC void SDLCALL SDL_GetWindowMaximumSize(SDL_Window * window, + int *w, int *h); + +/** + * Set the border state of a window. + * + * This will add or remove the window's `SDL_WINDOW_BORDERLESS` flag and add + * or remove the border from the actual window. This is a no-op if the + * window's border already matches the requested state. + * + * You can't change the border state of a fullscreen window. + * + * \param window the window of which to change the border state + * \param bordered SDL_FALSE to remove border, SDL_TRUE to add border + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowFlags + */ +extern DECLSPEC void SDLCALL SDL_SetWindowBordered(SDL_Window * window, + SDL_bool bordered); + +/** + * Set the user-resizable state of a window. + * + * This will add or remove the window's `SDL_WINDOW_RESIZABLE` flag and + * allow/disallow user resizing of the window. This is a no-op if the window's + * resizable state already matches the requested state. + * + * You can't change the resizable state of a fullscreen window. + * + * \param window the window of which to change the resizable state + * \param resizable SDL_TRUE to allow resizing, SDL_FALSE to disallow + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_GetWindowFlags + */ +extern DECLSPEC void SDLCALL SDL_SetWindowResizable(SDL_Window * window, + SDL_bool resizable); + +/** + * Set the window to always be above the others. + * + * This will add or remove the window's `SDL_WINDOW_ALWAYS_ON_TOP` flag. This + * will bring the window to the front and keep the window above the rest. + * + * \param window The window of which to change the always on top state + * \param on_top SDL_TRUE to set the window always on top, SDL_FALSE to + * disable + * + * \since This function is available since SDL 2.0.16. + * + * \sa SDL_GetWindowFlags + */ +extern DECLSPEC void SDLCALL SDL_SetWindowAlwaysOnTop(SDL_Window * window, + SDL_bool on_top); + +/** + * Show a window. + * + * \param window the window to show + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_HideWindow + * \sa SDL_RaiseWindow + */ +extern DECLSPEC void SDLCALL SDL_ShowWindow(SDL_Window * window); + +/** + * Hide a window. + * + * \param window the window to hide + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_ShowWindow + */ +extern DECLSPEC void SDLCALL SDL_HideWindow(SDL_Window * window); + +/** + * Raise a window above other windows and set the input focus. + * + * \param window the window to raise + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC void SDLCALL SDL_RaiseWindow(SDL_Window * window); + +/** + * Make a window as large as possible. + * + * \param window the window to maximize + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_MinimizeWindow + * \sa SDL_RestoreWindow + */ +extern DECLSPEC void SDLCALL SDL_MaximizeWindow(SDL_Window * window); + +/** + * Minimize a window to an iconic representation. + * + * \param window the window to minimize + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_MaximizeWindow + * \sa SDL_RestoreWindow + */ +extern DECLSPEC void SDLCALL SDL_MinimizeWindow(SDL_Window * window); + +/** + * Restore the size and position of a minimized or maximized window. + * + * \param window the window to restore + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_MaximizeWindow + * \sa SDL_MinimizeWindow + */ +extern DECLSPEC void SDLCALL SDL_RestoreWindow(SDL_Window * window); + +/** + * Set a window's fullscreen state. + * + * `flags` may be `SDL_WINDOW_FULLSCREEN`, for "real" fullscreen with a + * videomode change; `SDL_WINDOW_FULLSCREEN_DESKTOP` for "fake" fullscreen + * that takes the size of the desktop; and 0 for windowed mode. + * + * \param window the window to change + * \param flags `SDL_WINDOW_FULLSCREEN`, `SDL_WINDOW_FULLSCREEN_DESKTOP` or 0 + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowDisplayMode + * \sa SDL_SetWindowDisplayMode + */ +extern DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window * window, + Uint32 flags); + +/** + * Return whether the window has a surface associated with it. + * + * \returns SDL_TRUE if there is a surface associated with the window, or SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.28.0. + * + * \sa SDL_GetWindowSurface + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasWindowSurface(SDL_Window *window); + +/** + * Get the SDL surface associated with the window. + * + * A new surface will be created with the optimal format for the window, if + * necessary. This surface will be freed when the window is destroyed. Do not + * free this surface. + * + * This surface will be invalidated if the window is resized. After resizing a + * window this function must be called again to return a valid surface. + * + * You may not combine this with 3D or the rendering API on this window. + * + * This function is affected by `SDL_HINT_FRAMEBUFFER_ACCELERATION`. + * + * \param window the window to query + * \returns the surface associated with the window, or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_DestroyWindowSurface + * \sa SDL_HasWindowSurface + * \sa SDL_UpdateWindowSurface + * \sa SDL_UpdateWindowSurfaceRects + */ +extern DECLSPEC SDL_Surface * SDLCALL SDL_GetWindowSurface(SDL_Window * window); + +/** + * Copy the window surface to the screen. + * + * This is the function you use to reflect any changes to the surface on the + * screen. + * + * This function is equivalent to the SDL 1.2 API SDL_Flip(). + * + * \param window the window to update + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowSurface + * \sa SDL_UpdateWindowSurfaceRects + */ +extern DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window * window); + +/** + * Copy areas of the window surface to the screen. + * + * This is the function you use to reflect changes to portions of the surface + * on the screen. + * + * This function is equivalent to the SDL 1.2 API SDL_UpdateRects(). + * + * \param window the window to update + * \param rects an array of SDL_Rect structures representing areas of the + * surface to copy, in pixels + * \param numrects the number of rectangles + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowSurface + * \sa SDL_UpdateWindowSurface + */ +extern DECLSPEC int SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window * window, + const SDL_Rect * rects, + int numrects); + +/** + * Destroy the surface associated with the window. + * + * \param window the window to update + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.28.0. + * + * \sa SDL_GetWindowSurface + * \sa SDL_HasWindowSurface + */ +extern DECLSPEC int SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); + +/** + * Set a window's input grab mode. + * + * When input is grabbed, the mouse is confined to the window. This function + * will also grab the keyboard if `SDL_HINT_GRAB_KEYBOARD` is set. To grab the + * keyboard without also grabbing the mouse, use SDL_SetWindowKeyboardGrab(). + * + * If the caller enables a grab while another window is currently grabbed, the + * other window loses its grab in favor of the caller's window. + * + * \param window the window for which the input grab mode should be set + * \param grabbed SDL_TRUE to grab input or SDL_FALSE to release input + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetGrabbedWindow + * \sa SDL_GetWindowGrab + */ +extern DECLSPEC void SDLCALL SDL_SetWindowGrab(SDL_Window * window, + SDL_bool grabbed); + +/** + * Set a window's keyboard grab mode. + * + * Keyboard grab enables capture of system keyboard shortcuts like Alt+Tab or + * the Meta/Super key. Note that not all system keyboard shortcuts can be + * captured by applications (one example is Ctrl+Alt+Del on Windows). + * + * This is primarily intended for specialized applications such as VNC clients + * or VM frontends. Normal games should not use keyboard grab. + * + * When keyboard grab is enabled, SDL will continue to handle Alt+Tab when the + * window is full-screen to ensure the user is not trapped in your + * application. If you have a custom keyboard shortcut to exit fullscreen + * mode, you may suppress this behavior with + * `SDL_HINT_ALLOW_ALT_TAB_WHILE_GRABBED`. + * + * If the caller enables a grab while another window is currently grabbed, the + * other window loses its grab in favor of the caller's window. + * + * \param window The window for which the keyboard grab mode should be set. + * \param grabbed This is SDL_TRUE to grab keyboard, and SDL_FALSE to release. + * + * \since This function is available since SDL 2.0.16. + * + * \sa SDL_GetWindowKeyboardGrab + * \sa SDL_SetWindowMouseGrab + * \sa SDL_SetWindowGrab + */ +extern DECLSPEC void SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window * window, + SDL_bool grabbed); + +/** + * Set a window's mouse grab mode. + * + * Mouse grab confines the mouse cursor to the window. + * + * \param window The window for which the mouse grab mode should be set. + * \param grabbed This is SDL_TRUE to grab mouse, and SDL_FALSE to release. + * + * \since This function is available since SDL 2.0.16. + * + * \sa SDL_GetWindowMouseGrab + * \sa SDL_SetWindowKeyboardGrab + * \sa SDL_SetWindowGrab + */ +extern DECLSPEC void SDLCALL SDL_SetWindowMouseGrab(SDL_Window * window, + SDL_bool grabbed); + +/** + * Get a window's input grab mode. + * + * \param window the window to query + * \returns SDL_TRUE if input is grabbed, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetWindowGrab + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowGrab(SDL_Window * window); + +/** + * Get a window's keyboard grab mode. + * + * \param window the window to query + * \returns SDL_TRUE if keyboard is grabbed, and SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.16. + * + * \sa SDL_SetWindowKeyboardGrab + * \sa SDL_GetWindowGrab + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowKeyboardGrab(SDL_Window * window); + +/** + * Get a window's mouse grab mode. + * + * \param window the window to query + * \returns SDL_TRUE if mouse is grabbed, and SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.16. + * + * \sa SDL_SetWindowKeyboardGrab + * \sa SDL_GetWindowGrab + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowMouseGrab(SDL_Window * window); + +/** + * Get the window that currently has an input grab enabled. + * + * \returns the window if input is grabbed or NULL otherwise. + * + * \since This function is available since SDL 2.0.4. + * + * \sa SDL_GetWindowGrab + * \sa SDL_SetWindowGrab + */ +extern DECLSPEC SDL_Window * SDLCALL SDL_GetGrabbedWindow(void); + +/** + * Confines the cursor to the specified area of a window. + * + * Note that this does NOT grab the cursor, it only defines the area a cursor + * is restricted to when the window has mouse focus. + * + * \param window The window that will be associated with the barrier. + * \param rect A rectangle area in window-relative coordinates. If NULL the + * barrier for the specified window will be destroyed. + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_GetWindowMouseRect + * \sa SDL_SetWindowMouseGrab + */ +extern DECLSPEC int SDLCALL SDL_SetWindowMouseRect(SDL_Window * window, const SDL_Rect * rect); + +/** + * Get the mouse confinement rectangle of a window. + * + * \param window The window to query + * \returns A pointer to the mouse confinement rectangle of a window, or NULL + * if there isn't one. + * + * \since This function is available since SDL 2.0.18. + * + * \sa SDL_SetWindowMouseRect + */ +extern DECLSPEC const SDL_Rect * SDLCALL SDL_GetWindowMouseRect(SDL_Window * window); + +/** + * Set the brightness (gamma multiplier) for a given window's display. + * + * Despite the name and signature, this method sets the brightness of the + * entire display, not an individual window. A window is considered to be + * owned by the display that contains the window's center pixel. (The index of + * this display can be retrieved using SDL_GetWindowDisplayIndex().) The + * brightness set will not follow the window if it is moved to another + * display. + * + * Many platforms will refuse to set the display brightness in modern times. + * You are better off using a shader to adjust gamma during rendering, or + * something similar. + * + * \param window the window used to select the display whose brightness will + * be changed + * \param brightness the brightness (gamma multiplier) value to set where 0.0 + * is completely dark and 1.0 is normal brightness + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowBrightness + * \sa SDL_SetWindowGammaRamp + */ +extern DECLSPEC int SDLCALL SDL_SetWindowBrightness(SDL_Window * window, float brightness); + +/** + * Get the brightness (gamma multiplier) for a given window's display. + * + * Despite the name and signature, this method retrieves the brightness of the + * entire display, not an individual window. A window is considered to be + * owned by the display that contains the window's center pixel. (The index of + * this display can be retrieved using SDL_GetWindowDisplayIndex().) + * + * \param window the window used to select the display whose brightness will + * be queried + * \returns the brightness for the display where 0.0 is completely dark and + * 1.0 is normal brightness. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetWindowBrightness + */ +extern DECLSPEC float SDLCALL SDL_GetWindowBrightness(SDL_Window * window); + +/** + * Set the opacity for a window. + * + * The parameter `opacity` will be clamped internally between 0.0f + * (transparent) and 1.0f (opaque). + * + * This function also returns -1 if setting the opacity isn't supported. + * + * \param window the window which will be made transparent or opaque + * \param opacity the opacity value (0.0f - transparent, 1.0f - opaque) + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_GetWindowOpacity + */ +extern DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window * window, float opacity); + +/** + * Get the opacity of a window. + * + * If transparency isn't supported on this platform, opacity will be reported + * as 1.0f without error. + * + * The parameter `opacity` is ignored if it is NULL. + * + * This function also returns -1 if an invalid window was provided. + * + * \param window the window to get the current opacity value from + * \param out_opacity the float filled in (0.0f - transparent, 1.0f - opaque) + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_SetWindowOpacity + */ +extern DECLSPEC int SDLCALL SDL_GetWindowOpacity(SDL_Window * window, float * out_opacity); + +/** + * Set the window as a modal for another window. + * + * \param modal_window the window that should be set modal + * \param parent_window the parent window for the modal window + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + */ +extern DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window * modal_window, SDL_Window * parent_window); + +/** + * Explicitly set input focus to the window. + * + * You almost certainly want SDL_RaiseWindow() instead of this function. Use + * this with caution, as you might give focus to a window that is completely + * obscured by other windows. + * + * \param window the window that should get the input focus + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.5. + * + * \sa SDL_RaiseWindow + */ +extern DECLSPEC int SDLCALL SDL_SetWindowInputFocus(SDL_Window * window); + +/** + * Set the gamma ramp for the display that owns a given window. + * + * Set the gamma translation table for the red, green, and blue channels of + * the video hardware. Each table is an array of 256 16-bit quantities, + * representing a mapping between the input and output for that channel. The + * input is the index into the array, and the output is the 16-bit gamma value + * at that index, scaled to the output color precision. + * + * Despite the name and signature, this method sets the gamma ramp of the + * entire display, not an individual window. A window is considered to be + * owned by the display that contains the window's center pixel. (The index of + * this display can be retrieved using SDL_GetWindowDisplayIndex().) The gamma + * ramp set will not follow the window if it is moved to another display. + * + * \param window the window used to select the display whose gamma ramp will + * be changed + * \param red a 256 element array of 16-bit quantities representing the + * translation table for the red channel, or NULL + * \param green a 256 element array of 16-bit quantities representing the + * translation table for the green channel, or NULL + * \param blue a 256 element array of 16-bit quantities representing the + * translation table for the blue channel, or NULL + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GetWindowGammaRamp + */ +extern DECLSPEC int SDLCALL SDL_SetWindowGammaRamp(SDL_Window * window, + const Uint16 * red, + const Uint16 * green, + const Uint16 * blue); + +/** + * Get the gamma ramp for a given window's display. + * + * Despite the name and signature, this method retrieves the gamma ramp of the + * entire display, not an individual window. A window is considered to be + * owned by the display that contains the window's center pixel. (The index of + * this display can be retrieved using SDL_GetWindowDisplayIndex().) + * + * \param window the window used to select the display whose gamma ramp will + * be queried + * \param red a 256 element array of 16-bit quantities filled in with the + * translation table for the red channel, or NULL + * \param green a 256 element array of 16-bit quantities filled in with the + * translation table for the green channel, or NULL + * \param blue a 256 element array of 16-bit quantities filled in with the + * translation table for the blue channel, or NULL + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_SetWindowGammaRamp + */ +extern DECLSPEC int SDLCALL SDL_GetWindowGammaRamp(SDL_Window * window, + Uint16 * red, + Uint16 * green, + Uint16 * blue); + +/** + * Possible return values from the SDL_HitTest callback. + * + * \sa SDL_HitTest + */ +typedef enum +{ + SDL_HITTEST_NORMAL, /**< Region is normal. No special properties. */ + SDL_HITTEST_DRAGGABLE, /**< Region can drag entire window. */ + SDL_HITTEST_RESIZE_TOPLEFT, + SDL_HITTEST_RESIZE_TOP, + SDL_HITTEST_RESIZE_TOPRIGHT, + SDL_HITTEST_RESIZE_RIGHT, + SDL_HITTEST_RESIZE_BOTTOMRIGHT, + SDL_HITTEST_RESIZE_BOTTOM, + SDL_HITTEST_RESIZE_BOTTOMLEFT, + SDL_HITTEST_RESIZE_LEFT +} SDL_HitTestResult; + +/** + * Callback used for hit-testing. + * + * \param win the SDL_Window where hit-testing was set on + * \param area an SDL_Point which should be hit-tested + * \param data what was passed as `callback_data` to SDL_SetWindowHitTest() + * \return an SDL_HitTestResult value. + * + * \sa SDL_SetWindowHitTest + */ +typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win, + const SDL_Point *area, + void *data); + +/** + * Provide a callback that decides if a window region has special properties. + * + * Normally windows are dragged and resized by decorations provided by the + * system window manager (a title bar, borders, etc), but for some apps, it + * makes sense to drag them from somewhere else inside the window itself; for + * example, one might have a borderless window that wants to be draggable from + * any part, or simulate its own title bar, etc. + * + * This function lets the app provide a callback that designates pieces of a + * given window as special. This callback is run during event processing if we + * need to tell the OS to treat a region of the window specially; the use of + * this callback is known as "hit testing." + * + * Mouse input may not be delivered to your application if it is within a + * special area; the OS will often apply that input to moving the window or + * resizing the window and not deliver it to the application. + * + * Specifying NULL for a callback disables hit-testing. Hit-testing is + * disabled by default. + * + * Platforms that don't support this functionality will return -1 + * unconditionally, even if you're attempting to disable hit-testing. + * + * Your callback may fire at any time, and its firing does not indicate any + * specific behavior (for example, on Windows, this certainly might fire when + * the OS is deciding whether to drag your window, but it fires for lots of + * other reasons, too, some unrelated to anything you probably care about _and + * when the mouse isn't actually at the location it is testing_). Since this + * can fire at any time, you should try to keep your callback efficient, + * devoid of allocations, etc. + * + * \param window the window to set hit-testing on + * \param callback the function to call when doing a hit-test + * \param callback_data an app-defined void pointer passed to **callback** + * \returns 0 on success or -1 on error (including unsupported); call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.4. + */ +extern DECLSPEC int SDLCALL SDL_SetWindowHitTest(SDL_Window * window, + SDL_HitTest callback, + void *callback_data); + +/** + * Request a window to demand attention from the user. + * + * \param window the window to be flashed + * \param operation the flash operation + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.16. + */ +extern DECLSPEC int SDLCALL SDL_FlashWindow(SDL_Window * window, SDL_FlashOperation operation); + +/** + * Destroy a window. + * + * If `window` is NULL, this function will return immediately after setting + * the SDL error message to "Invalid window". See SDL_GetError(). + * + * \param window the window to destroy + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_CreateWindow + * \sa SDL_CreateWindowFrom + */ +extern DECLSPEC void SDLCALL SDL_DestroyWindow(SDL_Window * window); + + +/** + * Check whether the screensaver is currently enabled. + * + * The screensaver is disabled by default since SDL 2.0.2. Before SDL 2.0.2 + * the screensaver was enabled by default. + * + * The default can also be changed using `SDL_HINT_VIDEO_ALLOW_SCREENSAVER`. + * + * \returns SDL_TRUE if the screensaver is enabled, SDL_FALSE if it is + * disabled. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_DisableScreenSaver + * \sa SDL_EnableScreenSaver + */ +extern DECLSPEC SDL_bool SDLCALL SDL_IsScreenSaverEnabled(void); + +/** + * Allow the screen to be blanked by a screen saver. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_DisableScreenSaver + * \sa SDL_IsScreenSaverEnabled + */ +extern DECLSPEC void SDLCALL SDL_EnableScreenSaver(void); + +/** + * Prevent the screen from being blanked by a screen saver. + * + * If you disable the screensaver, it is automatically re-enabled when SDL + * quits. + * + * The screensaver is disabled by default since SDL 2.0.2. Before SDL 2.0.2 + * the screensaver was enabled by default. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_EnableScreenSaver + * \sa SDL_IsScreenSaverEnabled + */ +extern DECLSPEC void SDLCALL SDL_DisableScreenSaver(void); + + +/** + * \name OpenGL support functions + */ +/* @{ */ + +/** + * Dynamically load an OpenGL library. + * + * This should be done after initializing the video driver, but before + * creating any OpenGL windows. If no OpenGL library is loaded, the default + * library will be loaded upon creation of the first OpenGL window. + * + * If you do this, you need to retrieve all of the GL functions used in your + * program from the dynamic library using SDL_GL_GetProcAddress(). + * + * \param path the platform dependent OpenGL library name, or NULL to open the + * default OpenGL library + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_GetProcAddress + * \sa SDL_GL_UnloadLibrary + */ +extern DECLSPEC int SDLCALL SDL_GL_LoadLibrary(const char *path); + +/** + * Get an OpenGL function by name. + * + * If the GL library is loaded at runtime with SDL_GL_LoadLibrary(), then all + * GL functions must be retrieved this way. Usually this is used to retrieve + * function pointers to OpenGL extensions. + * + * There are some quirks to looking up OpenGL functions that require some + * extra care from the application. If you code carefully, you can handle + * these quirks without any platform-specific code, though: + * + * - On Windows, function pointers are specific to the current GL context; + * this means you need to have created a GL context and made it current + * before calling SDL_GL_GetProcAddress(). If you recreate your context or + * create a second context, you should assume that any existing function + * pointers aren't valid to use with it. This is (currently) a + * Windows-specific limitation, and in practice lots of drivers don't suffer + * this limitation, but it is still the way the wgl API is documented to + * work and you should expect crashes if you don't respect it. Store a copy + * of the function pointers that comes and goes with context lifespan. + * - On X11, function pointers returned by this function are valid for any + * context, and can even be looked up before a context is created at all. + * This means that, for at least some common OpenGL implementations, if you + * look up a function that doesn't exist, you'll get a non-NULL result that + * is _NOT_ safe to call. You must always make sure the function is actually + * available for a given GL context before calling it, by checking for the + * existence of the appropriate extension with SDL_GL_ExtensionSupported(), + * or verifying that the version of OpenGL you're using offers the function + * as core functionality. + * - Some OpenGL drivers, on all platforms, *will* return NULL if a function + * isn't supported, but you can't count on this behavior. Check for + * extensions you use, and if you get a NULL anyway, act as if that + * extension wasn't available. This is probably a bug in the driver, but you + * can code defensively for this scenario anyhow. + * - Just because you're on Linux/Unix, don't assume you'll be using X11. + * Next-gen display servers are waiting to replace it, and may or may not + * make the same promises about function pointers. + * - OpenGL function pointers must be declared `APIENTRY` as in the example + * code. This will ensure the proper calling convention is followed on + * platforms where this matters (Win32) thereby avoiding stack corruption. + * + * \param proc the name of an OpenGL function + * \returns a pointer to the named OpenGL function. The returned pointer + * should be cast to the appropriate function signature. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_ExtensionSupported + * \sa SDL_GL_LoadLibrary + * \sa SDL_GL_UnloadLibrary + */ +extern DECLSPEC void *SDLCALL SDL_GL_GetProcAddress(const char *proc); + +/** + * Unload the OpenGL library previously loaded by SDL_GL_LoadLibrary(). + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_LoadLibrary + */ +extern DECLSPEC void SDLCALL SDL_GL_UnloadLibrary(void); + +/** + * Check if an OpenGL extension is supported for the current context. + * + * This function operates on the current GL context; you must have created a + * context and it must be current before calling this function. Do not assume + * that all contexts you create will have the same set of extensions + * available, or that recreating an existing context will offer the same + * extensions again. + * + * While it's probably not a massive overhead, this function is not an O(1) + * operation. Check the extensions you care about after creating the GL + * context and save that information somewhere instead of calling the function + * every time you need to know. + * + * \param extension the name of the extension to check + * \returns SDL_TRUE if the extension is supported, SDL_FALSE otherwise. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GL_ExtensionSupported(const char + *extension); + +/** + * Reset all previously set OpenGL context attributes to their default values. + * + * \since This function is available since SDL 2.0.2. + * + * \sa SDL_GL_GetAttribute + * \sa SDL_GL_SetAttribute + */ +extern DECLSPEC void SDLCALL SDL_GL_ResetAttributes(void); + +/** + * Set an OpenGL window attribute before window creation. + * + * This function sets the OpenGL attribute `attr` to `value`. The requested + * attributes should be set before creating an OpenGL window. You should use + * SDL_GL_GetAttribute() to check the values after creating the OpenGL + * context, since the values obtained can differ from the requested ones. + * + * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to set + * \param value the desired value for the attribute + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_GetAttribute + * \sa SDL_GL_ResetAttributes + */ +extern DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); + +/** + * Get the actual value for an attribute from the current context. + * + * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to get + * \param value a pointer filled in with the current value of `attr` + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_ResetAttributes + * \sa SDL_GL_SetAttribute + */ +extern DECLSPEC int SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); + +/** + * Create an OpenGL context for an OpenGL window, and make it current. + * + * Windows users new to OpenGL should note that, for historical reasons, GL + * functions added after OpenGL version 1.1 are not available by default. + * Those functions must be loaded at run-time, either with an OpenGL + * extension-handling library or with SDL_GL_GetProcAddress() and its related + * functions. + * + * SDL_GLContext is an alias for `void *`. It's opaque to the application. + * + * \param window the window to associate with the context + * \returns the OpenGL context associated with `window` or NULL on error; call + * SDL_GetError() for more details. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_DeleteContext + * \sa SDL_GL_MakeCurrent + */ +extern DECLSPEC SDL_GLContext SDLCALL SDL_GL_CreateContext(SDL_Window * + window); + +/** + * Set up an OpenGL context for rendering into an OpenGL window. + * + * The context must have been created with a compatible window. + * + * \param window the window to associate with the context + * \param context the OpenGL context to associate with the window + * \returns 0 on success or a negative error code on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_CreateContext + */ +extern DECLSPEC int SDLCALL SDL_GL_MakeCurrent(SDL_Window * window, + SDL_GLContext context); + +/** + * Get the currently active OpenGL window. + * + * \returns the currently active OpenGL window on success or NULL on failure; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC SDL_Window* SDLCALL SDL_GL_GetCurrentWindow(void); + +/** + * Get the currently active OpenGL context. + * + * \returns the currently active OpenGL context or NULL on failure; call + * SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_MakeCurrent + */ +extern DECLSPEC SDL_GLContext SDLCALL SDL_GL_GetCurrentContext(void); + +/** + * Get the size of a window's underlying drawable in pixels. + * + * This returns info useful for calling glViewport(). + * + * This may differ from SDL_GetWindowSize() if we're rendering to a high-DPI + * drawable, i.e. the window was created with `SDL_WINDOW_ALLOW_HIGHDPI` on a + * platform with high-DPI support (Apple calls this "Retina"), and not + * disabled by the `SDL_HINT_VIDEO_HIGHDPI_DISABLED` hint. + * + * \param window the window from which the drawable size should be queried + * \param w a pointer to variable for storing the width in pixels, may be NULL + * \param h a pointer to variable for storing the height in pixels, may be + * NULL + * + * \since This function is available since SDL 2.0.1. + * + * \sa SDL_CreateWindow + * \sa SDL_GetWindowSize + */ +extern DECLSPEC void SDLCALL SDL_GL_GetDrawableSize(SDL_Window * window, int *w, + int *h); + +/** + * Set the swap interval for the current OpenGL context. + * + * Some systems allow specifying -1 for the interval, to enable adaptive + * vsync. Adaptive vsync works the same as vsync, but if you've already missed + * the vertical retrace for a given frame, it swaps buffers immediately, which + * might be less jarring for the user during occasional framerate drops. If an + * application requests adaptive vsync and the system does not support it, + * this function will fail and return -1. In such a case, you should probably + * retry the call with 1 for the interval. + * + * Adaptive vsync is implemented for some glX drivers with + * GLX_EXT_swap_control_tear, and for some Windows drivers with + * WGL_EXT_swap_control_tear. + * + * Read more on the Khronos wiki: + * https://www.khronos.org/opengl/wiki/Swap_Interval#Adaptive_Vsync + * + * \param interval 0 for immediate updates, 1 for updates synchronized with + * the vertical retrace, -1 for adaptive vsync + * \returns 0 on success or -1 if setting the swap interval is not supported; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_GetSwapInterval + */ +extern DECLSPEC int SDLCALL SDL_GL_SetSwapInterval(int interval); + +/** + * Get the swap interval for the current OpenGL context. + * + * If the system can't determine the swap interval, or there isn't a valid + * current context, this function will return 0 as a safe default. + * + * \returns 0 if there is no vertical retrace synchronization, 1 if the buffer + * swap is synchronized with the vertical retrace, and -1 if late + * swaps happen immediately instead of waiting for the next retrace; + * call SDL_GetError() for more information. + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_SetSwapInterval + */ +extern DECLSPEC int SDLCALL SDL_GL_GetSwapInterval(void); + +/** + * Update a window with OpenGL rendering. + * + * This is used with double-buffered OpenGL contexts, which are the default. + * + * On macOS, make sure you bind 0 to the draw framebuffer before swapping the + * window, otherwise nothing will happen. If you aren't using + * glBindFramebuffer(), this is the default and you won't have to do anything + * extra. + * + * \param window the window to change + * + * \since This function is available since SDL 2.0.0. + */ +extern DECLSPEC void SDLCALL SDL_GL_SwapWindow(SDL_Window * window); + +/** + * Delete an OpenGL context. + * + * \param context the OpenGL context to be deleted + * + * \since This function is available since SDL 2.0.0. + * + * \sa SDL_GL_CreateContext + */ +extern DECLSPEC void SDLCALL SDL_GL_DeleteContext(SDL_GLContext context); + +/* @} *//* OpenGL support functions */ + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_video_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b322422ce0c14ae94654a44695ac16d15e47b55d GIT binary patch literal 109320 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�a~a)!voGawhwsHSCl!lTzbbM=P*+Fp*} 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file begin_code.h + * + * This file sets things up for C dynamic library function definitions, + * static inlined functions, and structures aligned at 4-byte alignment. + * If you don't like ugly C preprocessor code, don't look at this file. :) + */ + +/* This shouldn't be nested -- included it around code only. */ +#ifdef SDL_begin_code_h +#error Nested inclusion of begin_code.h +#endif +#define SDL_begin_code_h + +#ifndef SDL_DEPRECATED +# if defined(__GNUC__) && (__GNUC__ >= 4) /* technically, this arrived in gcc 3.1, but oh well. */ +# define SDL_DEPRECATED __attribute__((deprecated)) +# else +# define SDL_DEPRECATED +# endif +#endif + +#ifndef SDL_UNUSED +# ifdef __GNUC__ +# define SDL_UNUSED __attribute__((unused)) +# else +# define SDL_UNUSED +# endif +#endif + +/* Some compilers use a special export keyword */ +#ifndef DECLSPEC +# if defined(__WIN32__) || defined(__WINRT__) || defined(__CYGWIN__) || defined(__GDK__) +# ifdef DLL_EXPORT +# define DECLSPEC __declspec(dllexport) +# else +# define DECLSPEC +# endif +# elif defined(__OS2__) +# ifdef BUILD_SDL +# define DECLSPEC __declspec(dllexport) +# else +# define DECLSPEC +# endif +# else +# if defined(__GNUC__) && __GNUC__ >= 4 +# define DECLSPEC __attribute__ ((visibility("default"))) +# else +# define DECLSPEC +# endif +# endif +#endif + +/* By default SDL uses the C calling convention */ +#ifndef SDLCALL +#if (defined(__WIN32__) || defined(__WINRT__) || defined(__GDK__)) && !defined(__GNUC__) +#define SDLCALL __cdecl +#elif defined(__OS2__) || defined(__EMX__) +#define SDLCALL _System +# if defined (__GNUC__) && !defined(_System) +# define _System /* for old EMX/GCC compat. */ +# endif +#else +#define SDLCALL +#endif +#endif /* SDLCALL */ + +/* Removed DECLSPEC on Symbian OS because SDL cannot be a DLL in EPOC */ +#ifdef __SYMBIAN32__ +#undef DECLSPEC +#define DECLSPEC +#endif /* __SYMBIAN32__ */ + +/* Force structure packing at 4 byte alignment. + This is necessary if the header is included in code which has structure + packing set to an alternate value, say for loading structures from disk. + The packing is reset to the previous value in close_code.h + */ +#if defined(_MSC_VER) || defined(__MWERKS__) || defined(__BORLANDC__) +#ifdef _MSC_VER +#pragma warning(disable: 4103) +#endif +#ifdef __clang__ +#pragma clang diagnostic ignored "-Wpragma-pack" +#endif +#ifdef __BORLANDC__ +#pragma nopackwarning +#endif +#ifdef _WIN64 +/* Use 8-byte alignment on 64-bit architectures, so pointers are aligned */ +#pragma pack(push,8) +#else +#pragma pack(push,4) +#endif +#endif /* Compiler needs structure packing set */ + +#ifndef SDL_INLINE +#if defined(__GNUC__) +#define SDL_INLINE __inline__ +#elif defined(_MSC_VER) || defined(__BORLANDC__) || \ + defined(__DMC__) || defined(__SC__) || \ + defined(__WATCOMC__) || defined(__LCC__) || \ + defined(__DECC) || defined(__CC_ARM) +#define SDL_INLINE __inline +#ifndef __inline__ +#define __inline__ __inline +#endif +#else +#define SDL_INLINE inline +#ifndef __inline__ +#define __inline__ inline +#endif +#endif +#endif /* SDL_INLINE not defined */ + +#ifndef SDL_FORCE_INLINE +#if defined(_MSC_VER) +#define SDL_FORCE_INLINE __forceinline +#elif ( (defined(__GNUC__) && (__GNUC__ >= 4)) || defined(__clang__) ) +#define SDL_FORCE_INLINE __attribute__((always_inline)) static __inline__ +#else +#define SDL_FORCE_INLINE static SDL_INLINE +#endif +#endif /* SDL_FORCE_INLINE not defined */ + +#ifndef SDL_NORETURN +#if defined(__GNUC__) +#define SDL_NORETURN __attribute__((noreturn)) +#elif defined(_MSC_VER) +#define SDL_NORETURN __declspec(noreturn) +#else +#define SDL_NORETURN +#endif +#endif /* SDL_NORETURN not defined */ + +/* Apparently this is needed by several Windows compilers */ +#if !defined(__MACH__) +#ifndef NULL +#ifdef __cplusplus +#define NULL 0 +#else +#define NULL ((void *)0) +#endif +#endif /* NULL */ +#endif /* ! Mac OS X - breaks precompiled headers */ + +#ifndef SDL_FALLTHROUGH +#if (defined(__cplusplus) && __cplusplus >= 201703L) || \ + (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L) +#define SDL_FALLTHROUGH [[fallthrough]] +#else +#if defined(__has_attribute) +#define SDL_HAS_FALLTHROUGH __has_attribute(__fallthrough__) +#else +#define SDL_HAS_FALLTHROUGH 0 +#endif /* __has_attribute */ +#if SDL_HAS_FALLTHROUGH && \ + ((defined(__GNUC__) && __GNUC__ >= 7) || \ + (defined(__clang_major__) && __clang_major__ >= 10)) +#define SDL_FALLTHROUGH __attribute__((__fallthrough__)) +#else +#define SDL_FALLTHROUGH do {} while (0) /* fallthrough */ +#endif /* SDL_HAS_FALLTHROUGH */ +#undef SDL_HAS_FALLTHROUGH +#endif /* C++17 or C2x */ +#endif /* SDL_FALLTHROUGH not defined */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5d64f6f4bc17d045ad3e54b5b7cbf7b3884e209e GIT binary patch literal 13291 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 + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file close_code.h + * + * This file reverses the effects of begin_code.h and should be included + * after you finish any function and structure declarations in your headers + */ + +#ifndef SDL_begin_code_h +#error close_code.h included without matching begin_code.h +#endif +#undef SDL_begin_code_h + +/* Reset structure packing at previous byte alignment */ +#if defined(_MSC_VER) || defined(__MWERKS__) || defined(__BORLANDC__) +#ifdef __BORLANDC__ +#pragma nopackwarning +#endif +#pragma pack(pop) +#endif /* Compiler needs structure packing set */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..171065a22429481533ef89c603b0b3bd09308cb0 GIT binary patch literal 12163 zcmb7KKg{Gt72ksj>4>N(5F$|uKp{SJAK}wA5rKr9kS<$yufP5C!pq>*p~o$%88OdPq^WmFL-a0sfSa&Ce)axU-QB-VSYrKS!qUc0@mtyF z$?BW&&Fk_9uo$P3<6E=sq0hv{f0W9v47;Xr)fce{( z-ibkMP6Fzkunp|OiOmlI-e{zX0vrv%EE;kwhyb5Cb8&+7xyl5OojWG-?v_Dn*1(W1 zh1d|JY*l+>&j)XQJvKDh16soRMkd(f_cLe9Di(PJwYEMgAg>uyqO#+;?ylek)+;Ct zKH{5VO?ESpynZdx+}jmwr-FB-Bt4$YEtnx==r)6#1R&J6(Q>G9U0>53Mp&ry=!$km z=&6X-J!8dI+;)~^UwLU4N7kJ|Ljr`}Tvm8gL6r67iUH7R5@<$&?{v(#Df58AO{@VR zMxAf~60h*OA$x(m<3nhTJRL=xi2R`vk`ky9;!+3Q9d-LiVbOikFH6py;g> ze~Pn+Ic&E6m?<1EdBbj_f;WW(4MPre zo48K4EtbnCxp1OUXCD>WGkVG2o>NT0cKzBKPJtlq9l<|97DrW~>^vo=BDW)I*SI$A zx_UQ30e}S#mB>?u=;1vdA_zP*PmQRyK7*hq#;@znwyVMW12A%&n!H%p-gI?Pe`sbq zMjS+-4b66pK-rf;wwnNbT7i#v+w)$w4Ww}#aaIZ%#0<(W^e9<@vG}rw4wV9x;HaRF z>;j$M^`NjtQAT>#Cj~;9d7%`L-UhpEp7$iaxR>F5Vq2W( z{R9%~HSmHKFl?Cuw@@}0{QlFa+}7*!t|+zSsZkJDSnU)N)GRJAzktC~MK;}}hmB~@HAlrDUNW?Q6=)G!a zFq&Bukgkhzs0&S23@=D^p3+jGf@N!$m45WzH{z^h9d67r!@VK43w05icD)C{e>CfQ z1`S&j4|FA{l(9U4$`(av*$Y=$nDy}>)k0?se4jN;?Z4*9kihiWm% zP(=@AD|x$zW^h)hdnb9WC{BD5C<9#+#;FUf8ZPbzKCb0YW)tUy({Y>?BJ&vpx?@kk z=JQ;;SV{OqH>UGd{fye4<9(K!#+(520%+I@V6v>bZ3)amBP9AD%+g4ZN*yFYjM(xN zzzpb(#D#d;0HKjV-D^uK1W>3jYoE|21;44~CuglPU-71c4$v{bBb1-K`h!HNbb{8> zQI!Pd0#r7QOr?7>_rAY4_nuYO#+VtFPsh%TX`?7bpfD4US?7tm+6*-Sy|aUk3O5am zumn_WW@p?Rj&G=`>dq?SSV4OsgLdOy&dtDMHuujaDYjTK$KAth2?n!~zfc2@=AP@! z8>zGOPG;x#&%SncJ!JKRa;%2Ki?{z)!d<%*$(rr*7;+CIsnbnHO5IzcTHbZ8to`M$ zzJsJuNcn6JrSbV-C$+4NwsG!rw1|pIA#UvHRmWmVL!;qH)(n8oLb6E9S{+5D%~j(J z&>lMB2tAh2Q*hUOq`6L`^#ZDLBOz_BK2MeupHQa!F7)Pe690>?EV`>T*s2+st74Ob`z_danKELBZ4H z3|G)yq|FRPw{*CH;me$$Q29MzcdaZ(%|Vy7#Dgt7Gu|XIe(KMsTw$Xek-IImi;nap zzT8K3P&fMv&z%*_L4unaO=C_l_psFy;V)r+W(;KC~eZr(#- zU6_lcj_iv3(#gY_LVgoZ9@sQ%Non}ZWiQO<0hspaOVH(y4Sq-q=L#5#9EaUebYnRO zQE*zK_BXJ}V4^&x$-t?oW;F!ga(7S+6@ySMG@p@v@NSbq&r@X;qXK55a3vF2gD$?{ z$!O*1prV}fI0c}C1$GC-@5gS$}(s75se^IHRLDD793PtXr3vSp>T1$%mJn0<7V zW0@UQrE?sKoEuc!(bURID!4eBs4=Z`}Dm(D%}D literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h new file mode 100644 index 00000000..efc71161 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h @@ -0,0 +1,40 @@ +/* Copyright (C) 1992-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _ALLOCA_H +#define _ALLOCA_H 1 + +#include + +#define __need_size_t +#include + +__BEGIN_DECLS + +/* Remove any previous definition. */ +#undef alloca + +/* Allocate a block that will be freed when the calling function exits. */ +extern void *alloca (size_t __size) __THROW; + +#ifdef __GNUC__ +# define alloca(size) __builtin_alloca (size) +#endif /* GCC. */ + +__END_DECLS + +#endif /* alloca.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..767e096c800abd4fd1a29d14fbf802a69a07753f GIT binary patch literal 12771 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h new file mode 100644 index 00000000..9653140b --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h @@ -0,0 +1,40 @@ +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ +#ifndef _ASM_GENERIC_ERRNO_BASE_H +#define _ASM_GENERIC_ERRNO_BASE_H + +#define EPERM 1 /* Operation not permitted */ +#define ENOENT 2 /* No such file or directory */ +#define ESRCH 3 /* No such process */ +#define EINTR 4 /* Interrupted system call */ +#define EIO 5 /* I/O error */ +#define ENXIO 6 /* No such device or address */ +#define E2BIG 7 /* Argument list too long */ +#define ENOEXEC 8 /* Exec format error */ +#define EBADF 9 /* Bad file number */ +#define ECHILD 10 /* No child processes */ +#define EAGAIN 11 /* Try again */ +#define ENOMEM 12 /* Out of memory */ +#define EACCES 13 /* Permission denied */ +#define EFAULT 14 /* Bad address */ +#define ENOTBLK 15 /* Block device required */ +#define EBUSY 16 /* Device or resource busy */ +#define EEXIST 17 /* File exists */ +#define EXDEV 18 /* Cross-device link */ +#define ENODEV 19 /* No such device */ +#define ENOTDIR 20 /* Not a directory */ +#define EISDIR 21 /* Is a directory */ +#define EINVAL 22 /* Invalid argument */ +#define ENFILE 23 /* File table overflow */ +#define EMFILE 24 /* Too many open files */ +#define ENOTTY 25 /* Not a typewriter */ +#define ETXTBSY 26 /* Text file busy */ +#define EFBIG 27 /* File too large */ +#define ENOSPC 28 /* No space left on device */ +#define ESPIPE 29 /* Illegal seek */ +#define EROFS 30 /* Read-only file system */ +#define EMLINK 31 /* Too many links */ +#define EPIPE 32 /* Broken pipe */ +#define EDOM 33 /* Math argument out of domain of func */ +#define ERANGE 34 /* Math result not representable */ + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9361f0f031efd3896615d60d78e764798ae897de GIT binary patch literal 14090 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h new file mode 100644 index 00000000..cf9c51ac --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h @@ -0,0 +1,123 @@ +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ +#ifndef _ASM_GENERIC_ERRNO_H +#define _ASM_GENERIC_ERRNO_H + +#include + +#define EDEADLK 35 /* Resource deadlock would occur */ +#define ENAMETOOLONG 36 /* File name too long */ +#define ENOLCK 37 /* No record locks available */ + +/* + * This error code is special: arch syscall entry code will return + * -ENOSYS if users try to call a syscall that doesn't exist. To keep + * failures of syscalls that really do exist distinguishable from + * failures due to attempts to use a nonexistent syscall, syscall + * implementations should refrain from returning -ENOSYS. + */ +#define ENOSYS 38 /* Invalid system call number */ + +#define ENOTEMPTY 39 /* Directory not empty */ +#define ELOOP 40 /* Too many symbolic links encountered */ +#define EWOULDBLOCK EAGAIN /* Operation would block */ +#define ENOMSG 42 /* No message of desired type */ +#define EIDRM 43 /* Identifier removed */ +#define ECHRNG 44 /* Channel number out of range */ +#define EL2NSYNC 45 /* Level 2 not synchronized */ +#define EL3HLT 46 /* Level 3 halted */ +#define EL3RST 47 /* Level 3 reset */ +#define ELNRNG 48 /* Link number out of range */ +#define EUNATCH 49 /* Protocol driver not attached */ +#define ENOCSI 50 /* No CSI structure available */ +#define EL2HLT 51 /* Level 2 halted */ +#define EBADE 52 /* Invalid exchange */ +#define EBADR 53 /* Invalid request descriptor */ +#define EXFULL 54 /* Exchange full */ +#define ENOANO 55 /* No anode */ +#define EBADRQC 56 /* Invalid request code */ +#define EBADSLT 57 /* Invalid slot */ + +#define EDEADLOCK EDEADLK + +#define EBFONT 59 /* Bad font file format */ +#define ENOSTR 60 /* Device not a stream */ +#define ENODATA 61 /* No data available */ +#define ETIME 62 /* Timer expired */ +#define ENOSR 63 /* Out of streams resources */ +#define ENONET 64 /* Machine is not on the network */ +#define ENOPKG 65 /* Package not installed */ +#define EREMOTE 66 /* Object is remote */ +#define ENOLINK 67 /* Link has been severed */ +#define EADV 68 /* Advertise error */ +#define ESRMNT 69 /* Srmount error */ +#define ECOMM 70 /* Communication error on send */ +#define EPROTO 71 /* Protocol error */ +#define EMULTIHOP 72 /* Multihop attempted */ +#define EDOTDOT 73 /* RFS specific error */ +#define EBADMSG 74 /* Not a data message */ +#define EOVERFLOW 75 /* Value too large for defined data type */ +#define ENOTUNIQ 76 /* Name not unique on network */ +#define EBADFD 77 /* File descriptor in bad state */ +#define EREMCHG 78 /* Remote address changed */ +#define ELIBACC 79 /* Can not access a needed shared library */ +#define ELIBBAD 80 /* Accessing a corrupted shared library */ +#define ELIBSCN 81 /* .lib section in a.out corrupted */ +#define ELIBMAX 82 /* Attempting to link in too many shared libraries */ +#define ELIBEXEC 83 /* Cannot exec a shared library directly */ +#define EILSEQ 84 /* Illegal byte sequence */ +#define ERESTART 85 /* Interrupted system call should be restarted */ +#define ESTRPIPE 86 /* Streams pipe error */ +#define EUSERS 87 /* Too many users */ +#define ENOTSOCK 88 /* Socket operation on non-socket */ +#define EDESTADDRREQ 89 /* Destination address required */ +#define EMSGSIZE 90 /* Message too long */ +#define EPROTOTYPE 91 /* Protocol wrong type for socket */ +#define ENOPROTOOPT 92 /* Protocol not available */ +#define EPROTONOSUPPORT 93 /* Protocol not supported */ +#define ESOCKTNOSUPPORT 94 /* Socket type not supported */ +#define EOPNOTSUPP 95 /* Operation not supported on transport endpoint */ +#define EPFNOSUPPORT 96 /* Protocol family not supported */ +#define EAFNOSUPPORT 97 /* Address family not supported by protocol */ +#define EADDRINUSE 98 /* Address already in use */ +#define EADDRNOTAVAIL 99 /* Cannot assign requested address */ +#define ENETDOWN 100 /* Network is down */ +#define ENETUNREACH 101 /* Network is unreachable */ +#define ENETRESET 102 /* Network dropped connection because of reset */ +#define ECONNABORTED 103 /* Software caused connection abort */ +#define ECONNRESET 104 /* Connection reset by peer */ +#define ENOBUFS 105 /* No buffer space available */ +#define EISCONN 106 /* Transport endpoint is already connected */ +#define ENOTCONN 107 /* Transport endpoint is not connected */ +#define ESHUTDOWN 108 /* Cannot send after transport endpoint shutdown */ +#define ETOOMANYREFS 109 /* Too many references: cannot splice */ +#define ETIMEDOUT 110 /* Connection timed out */ +#define ECONNREFUSED 111 /* Connection refused */ +#define EHOSTDOWN 112 /* Host is down */ +#define EHOSTUNREACH 113 /* No route to host */ +#define EALREADY 114 /* Operation already in progress */ +#define EINPROGRESS 115 /* Operation now in progress */ +#define ESTALE 116 /* Stale file handle */ +#define EUCLEAN 117 /* Structure needs cleaning */ +#define ENOTNAM 118 /* Not a XENIX named type file */ +#define ENAVAIL 119 /* No XENIX semaphores available */ +#define EISNAM 120 /* Is a named type file */ +#define EREMOTEIO 121 /* Remote I/O error */ +#define EDQUOT 122 /* Quota exceeded */ + +#define ENOMEDIUM 123 /* No medium found */ +#define EMEDIUMTYPE 124 /* Wrong medium type */ +#define ECANCELED 125 /* Operation Canceled */ +#define ENOKEY 126 /* Required key not available */ +#define EKEYEXPIRED 127 /* Key has expired */ +#define EKEYREVOKED 128 /* Key has been revoked */ +#define EKEYREJECTED 129 /* Key was rejected by service */ + +/* for robust mutexes */ +#define EOWNERDEAD 130 /* Owner died */ +#define ENOTRECOVERABLE 131 /* State not recoverable */ + +#define ERFKILL 132 /* Operation not possible due to RF-kill */ + +#define EHWPOISON 133 /* Memory page has hardware error */ + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7f562e61a1b9c28c0b8bb6d64463551ed133a0c2 GIT binary patch literal 18204 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h new file mode 100644 index 00000000..4c82b503 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h @@ -0,0 +1 @@ +#include diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..09da8a8fc5bf505fc14350fc04e50fbbaa80e7d4 GIT binary patch literal 12167 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 G@cTbakJ-5Z literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h new file mode 100644 index 00000000..62670e4b --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h @@ -0,0 +1,156 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99 Standard: 7.2 Diagnostics + */ + +#ifdef _ASSERT_H + +# undef _ASSERT_H +# undef assert +# undef __ASSERT_VOID_CAST + +# ifdef __USE_GNU +# undef assert_perror +# endif + +#endif /* assert.h */ + +#define _ASSERT_H 1 +#include + +#if defined __cplusplus && __GNUC_PREREQ (2,95) +# define __ASSERT_VOID_CAST static_cast +#else +# define __ASSERT_VOID_CAST (void) +#endif + +/* void assert (int expression); + + If NDEBUG is defined, do nothing. + If not, and EXPRESSION is zero, print an error message and abort. */ + +#ifdef NDEBUG + +# define assert(expr) (__ASSERT_VOID_CAST (0)) + +/* void assert_perror (int errnum); + + If NDEBUG is defined, do nothing. If not, and ERRNUM is not zero, print an + error message with the error text for ERRNUM and abort. + (This is a GNU extension.) */ + +# ifdef __USE_GNU +# define assert_perror(errnum) (__ASSERT_VOID_CAST (0)) +# endif + +#else /* Not NDEBUG. */ + +__BEGIN_DECLS + +/* This prints an "Assertion failed" message and aborts. */ +extern void __assert_fail (const char *__assertion, const char *__file, + unsigned int __line, const char *__function) + __THROW __attribute__ ((__noreturn__)); + +/* Likewise, but prints the error text for ERRNUM. */ +extern void __assert_perror_fail (int __errnum, const char *__file, + unsigned int __line, const char *__function) + __THROW __attribute__ ((__noreturn__)); + + +/* The following is not at all used here but needed for standard + compliance. */ +extern void __assert (const char *__assertion, const char *__file, int __line) + __THROW __attribute__ ((__noreturn__)); + + +__END_DECLS + +/* When possible, define assert so that it does not add extra + parentheses around EXPR. Otherwise, those added parentheses would + suppress warnings we'd expect to be detected by gcc's -Wparentheses. */ +# if defined __cplusplus +# if defined __has_builtin +# if __has_builtin (__builtin_FILE) +# define __ASSERT_FILE __builtin_FILE () +# define __ASSERT_LINE __builtin_LINE () +# endif +# endif +# if !defined __ASSERT_FILE +# define __ASSERT_FILE __FILE__ +# define __ASSERT_LINE __LINE__ +# endif +# define assert(expr) \ + (static_cast (expr) \ + ? void (0) \ + : __assert_fail (#expr, __ASSERT_FILE, __ASSERT_LINE, \ + __ASSERT_FUNCTION)) +# elif !defined __GNUC__ || defined __STRICT_ANSI__ +# define assert(expr) \ + ((expr) \ + ? __ASSERT_VOID_CAST (0) \ + : __assert_fail (#expr, __FILE__, __LINE__, __ASSERT_FUNCTION)) +# else +/* The first occurrence of EXPR is not evaluated due to the sizeof, + but will trigger any pedantic warnings masked by the __extension__ + for the second occurrence. The ternary operator is required to + support function pointers and bit fields in this context, and to + suppress the evaluation of variable length arrays. */ +# define assert(expr) \ + ((void) sizeof ((expr) ? 1 : 0), __extension__ ({ \ + if (expr) \ + ; /* empty */ \ + else \ + __assert_fail (#expr, __FILE__, __LINE__, __ASSERT_FUNCTION); \ + })) +# endif + +# ifdef __USE_GNU +# define assert_perror(errnum) \ + (!(errnum) \ + ? __ASSERT_VOID_CAST (0) \ + : __assert_perror_fail ((errnum), __FILE__, __LINE__, __ASSERT_FUNCTION)) +# endif + +/* Version 2.4 and later of GCC define a magical variable `__PRETTY_FUNCTION__' + which contains the name of the function currently being defined. + This is broken in G++ before version 2.6. + C9x has a similar variable called __func__, but prefer the GCC one since + it demangles C++ function names. */ +# if defined __cplusplus ? __GNUC_PREREQ (2, 6) : __GNUC_PREREQ (2, 4) +# define __ASSERT_FUNCTION __extension__ __PRETTY_FUNCTION__ +# else +# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L +# define __ASSERT_FUNCTION __func__ +# else +# define __ASSERT_FUNCTION ((const char *) 0) +# endif +# endif + +#endif /* NDEBUG. */ + + +#if (defined __USE_ISOC11 \ + && (!defined __STDC_VERSION__ \ + || __STDC_VERSION__ <= 201710L \ + || !__GNUC_PREREQ (13, 0)) \ + && !defined __cplusplus) +# undef static_assert +# define static_assert _Static_assert +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8541cd03823846723a52126abd6ec62ae57ee97f GIT binary patch literal 14071 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 ZPAx9d^9a`i?JV>bZfA6ETDYA{`hO#9I@. */ + +#ifndef _BITS_ATOMIC_WIDE_COUNTER_H +#define _BITS_ATOMIC_WIDE_COUNTER_H + +/* Counter that is monotonically increasing (by less than 2**31 per + increment), with a single writer, and an arbitrary number of + readers. */ +typedef union +{ + __extension__ unsigned long long int __value64; + struct + { + unsigned int __low; + unsigned int __high; + } __value32; +} __atomic_wide_counter; + +#endif /* _BITS_ATOMIC_WIDE_COUNTER_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..0946319553e6b57d2470aa891c225139ec693d2d GIT binary patch literal 13145 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 cD6#ihKoZNT?WXu04H}4YXATM literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h new file mode 100644 index 00000000..456dd177 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h @@ -0,0 +1,79 @@ +/* Macros and inline functions to swap the order of bytes in integer values. + Copyright (C) 1997-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#if !defined _BYTESWAP_H && !defined _NETINET_IN_H && !defined _ENDIAN_H +# error "Never use directly; include instead." +#endif + +#ifndef _BITS_BYTESWAP_H +#define _BITS_BYTESWAP_H 1 + +#include +#include + +/* Swap bytes in 16-bit value. */ +#define __bswap_constant_16(x) \ + ((__uint16_t) ((((x) >> 8) & 0xff) | (((x) & 0xff) << 8))) + +static __inline __uint16_t +__bswap_16 (__uint16_t __bsx) +{ +#if __GNUC_PREREQ (4, 8) + return __builtin_bswap16 (__bsx); +#else + return __bswap_constant_16 (__bsx); +#endif +} + +/* Swap bytes in 32-bit value. */ +#define __bswap_constant_32(x) \ + ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >> 8) \ + | (((x) & 0x0000ff00u) << 8) | (((x) & 0x000000ffu) << 24)) + +static __inline __uint32_t +__bswap_32 (__uint32_t __bsx) +{ +#if __GNUC_PREREQ (4, 3) + return __builtin_bswap32 (__bsx); +#else + return __bswap_constant_32 (__bsx); +#endif +} + +/* Swap bytes in 64-bit value. */ +#define __bswap_constant_64(x) \ + ((((x) & 0xff00000000000000ull) >> 56) \ + | (((x) & 0x00ff000000000000ull) >> 40) \ + | (((x) & 0x0000ff0000000000ull) >> 24) \ + | (((x) & 0x000000ff00000000ull) >> 8) \ + | (((x) & 0x00000000ff000000ull) << 8) \ + | (((x) & 0x0000000000ff0000ull) << 24) \ + | (((x) & 0x000000000000ff00ull) << 40) \ + | (((x) & 0x00000000000000ffull) << 56)) + +__extension__ static __inline __uint64_t +__bswap_64 (__uint64_t __bsx) +{ +#if __GNUC_PREREQ (4, 3) + return __builtin_bswap64 (__bsx); +#else + return __bswap_constant_64 (__bsx); +#endif +} + +#endif /* _BITS_BYTESWAP_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..bae5924cacb42b36b97bd532827549c389f5b618 GIT binary patch literal 13583 zcmb7KUx-{+8Nag)ZHy}}A-1(N?QDZfHp$)DoovRXrfr&JnbIv_y=FI)> zndv^A;THdPbuc z1*G9O&XRN|i{b_>WQ`8#G}6Rr1hyBhImUI4Z-?EvNX5WZx)I$~B1K~% zkjnM}UbDTO=80=NV~6R)?GfJ_QW0MK>Eo)LDP`1^I@35rrR%z(r;&;olOsFzx_#T9 zg0*6FPM3KBNhZj2@{_*D9KHC<2UYPU_OmE=7!0M66_##n`cbz%TTh$ewBHVN+NQf{ z!|4zg4~R)yWJ&I1)_vzMZY!*XY*Kud#wH;mC?+;@qG-n>mKRxW9y*y9h3SO(CNn6D zcgpbd?K7GTP!fC^$738-}>8{p#EEc;7% zqn@%XFf;(u3hbd}`(QJ!E}kGoC8EwF(}q#3+a*wVGsuv z0V!dBN+b0V{Ag@3!4!+2+PcFOl2<8HqO?U^$4z*FBq2vhhb1hOx-dmpO6WR|x(Ojx*WZm0A9J5{$*2%x3yq}~-gi_lDtKQNI(r6Yb%FjA9yLA3?v2b)2Js)38Ne44QO54saX+ub{aHD zl7!3#hp&BIZGbs)Np>lqXN_5nIPVU4edt`CjTY%xX?xU8{n+t?+`rtpjKB|lV_YDuQA$L1L%S6pxp5Sn|n`SI=ACCTch{#Li)#PG3fEY-%6557 zCnFj)_As^k#F=GpkyB{H*4msWr+^dtJi%`vo1>yQWV$5kJlC_+Ucip$@3%Ui)}#Qy zf(M<*6@thiEH6C>d8k|(QE5d5K_f=&%VV4O;K=|ovRax1nPg8-bv~ z*&{ZzeI``937}7Q;050LUJ``?lyMw!j0z5jCbVB@C^3Sf`C>tbQh`ViD(Dj1AkKOT z2+UAq+6g}=$%It0LfeNL7gS9*Xn&SNEzZbLBQq3j&J>kO7@RKRR)+U&cEnNM*C4^2 z2VQUllq_}N_ET01UcOOR+mdYhRHWN-d{FS4SnnhYRLL(ezkq?5Vh7E7PT|YAk_{R)L){F3CHZ;!pa8{pH zSl#Pd#o$c^A}Z*h9Y$W*hXZ4&nHNS9`NSIM9GOI*4CvyU(K~L<0j?c-}+9TE`%CI%ZthW#ICm7x; z_CggL(wnX+Yv^L>0h7)6uii6tLB!;Pmd%CW#YY5;f?vE?+P-e~sIm`ZtMP4zPTXBP z4ZS$#t?zfA`;1yfnMlwUkUq4})59O#w#?hqxYy7|ODX&w)h9_~qNX&|8$8Lje zD${b74*gC>FB?mM7SNF)bSZ*!hsO^n`dpWx{Q@d-5JB0TJDyllghTy2;@WvJQ_{=o z_^zL)J^iKwr)Q6E-6l^_(mFk_Q=G^dKb`wY$Addv>i;+Ib2W*SyEE3E8)l9A($p%q zx2Pi~n=PB)qsoMZzA)Tsb>q1`C+fd5vr5SZta{)tjn4C-lBPq;xnEH`AtO@-CUctz=bllcJ_1OgVfcvK3(`DvH;cT~i=| z(c$$JA?|WCt_5=`;CQ-*3&=0qN{XT^Ic{J;Q%+DQeIKwpFRh2FgKoOt$(^;@R%|D>`T+ncL)ydAx)6Xvh+bM{CcB(bz=&?hZL5t)*o_ISY$jOB zu{OHO1d>N}m`C|B%%kMJu<{Nnp5u2&5M^^s<^0I*q~n@CX>|$9*c%c)Gbq7Q(sZHy zpp&B{^8KlP5tR{4*hJtaEF|}Z*@-S>=cq4nG?)@dFcHZEn|M_T4IjGnefkLjCO!HR zobrnUzAOvV0?-s$48#@hs&pKpU^GqdPhn%i)VU~=GN+=Fx!`=3yQN?#8MvzA@TtfL z?*=BEc{*l?I6llz;o3&g2Hm{ElFH6X*kb6ISZn#^C-<7|+4Xn{d@_OHzO$xV>M)dSV5WIbtMc4ovaENN254omY{ zVQhNIF>6pxulS8nzXmu~fbBL1qX};vAp5jlgFUs(QuOG^K06Dq&eOgXT5#jd-V+;ptPL=9abk zCQQPo2k8nA?;`)f1y*HbG7`})(80Dk7(}&#@&gCvd6T5$586|-I*4aI!pCyoI#&!V zgvTJofH+DH7fTabRDNAr;F<1W%07}wjE z`_38X_gyy{edm>bwhrF#B)ymOoVpjn^#`e27KH%)P67VerXTTJthOdzcFf``PnnyJk&poF*x3wU~s%yFpz&O z7_1xXz@TA#k~6sY#w}lc{@b^{D;T`==F6}B=f{7!0b{VynqaWeDj3MW77Uh+WnfS@ z4s!;t?fuy8hyMPjR|*E#zeM$z{FzX4bkCD_U3=!gKmQR$BlQ3EJcM~cNIG>|!6)o! z96NSE?D0SPkA<@*&px!Lwte&Vu|2gH#gh148%Z@sfBWdWUwZZR4<9YD02dV;sL6~Y zN2WM5>W$4kwe_3Vfx`=8XYso>l6sD^#~%1pUSHfUae%pBB6v`%8Eb1Qk3IEz9e6C? zybL^6_OIN(r*_-k+ipE&?3D^|)Qp{K+<4`qq03OuVfZ-&+KOoH%*nzQr1S zo-#(y{{D&Yef;rXzb)VgEipJ4zWr@&f(9#xz}6h79G%K??ark;TMO_!{irbl6xJ^6 zzp!;`tT2~ojDkX<<+Wud5h%0u0+VRv?Q!5eRdbs)_ z`t!wo_4;A>8Lrk>>gz+-U1vY}YW?oJ>&?y8`crhdSY2P|>wI-)F*@4_zIYun5&0M)IRm|ZTMya0Bg zPq52J{mS$+K*{&SZ~_SJn&EYxNDV=S@pDtuN5$Cfm>WKdazh>i_@% literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h new file mode 100644 index 00000000..d6142640 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h @@ -0,0 +1,681 @@ +/* `sysconf', `pathconf', and `confstr' NAME values. Generic version. + Copyright (C) 1993-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _UNISTD_H +# error "Never use directly; include instead." +#endif + +/* Values for the NAME argument to `pathconf' and `fpathconf'. */ +enum + { + _PC_LINK_MAX, +#define _PC_LINK_MAX _PC_LINK_MAX + _PC_MAX_CANON, +#define _PC_MAX_CANON _PC_MAX_CANON + _PC_MAX_INPUT, +#define _PC_MAX_INPUT _PC_MAX_INPUT + _PC_NAME_MAX, +#define _PC_NAME_MAX _PC_NAME_MAX + _PC_PATH_MAX, +#define _PC_PATH_MAX _PC_PATH_MAX + _PC_PIPE_BUF, +#define _PC_PIPE_BUF _PC_PIPE_BUF + _PC_CHOWN_RESTRICTED, +#define _PC_CHOWN_RESTRICTED _PC_CHOWN_RESTRICTED + _PC_NO_TRUNC, +#define _PC_NO_TRUNC _PC_NO_TRUNC + _PC_VDISABLE, +#define _PC_VDISABLE _PC_VDISABLE + _PC_SYNC_IO, +#define _PC_SYNC_IO _PC_SYNC_IO + _PC_ASYNC_IO, +#define _PC_ASYNC_IO _PC_ASYNC_IO + _PC_PRIO_IO, +#define _PC_PRIO_IO _PC_PRIO_IO + _PC_SOCK_MAXBUF, +#define _PC_SOCK_MAXBUF _PC_SOCK_MAXBUF + _PC_FILESIZEBITS, +#define _PC_FILESIZEBITS _PC_FILESIZEBITS + _PC_REC_INCR_XFER_SIZE, +#define _PC_REC_INCR_XFER_SIZE _PC_REC_INCR_XFER_SIZE + _PC_REC_MAX_XFER_SIZE, +#define _PC_REC_MAX_XFER_SIZE _PC_REC_MAX_XFER_SIZE + _PC_REC_MIN_XFER_SIZE, +#define _PC_REC_MIN_XFER_SIZE _PC_REC_MIN_XFER_SIZE + _PC_REC_XFER_ALIGN, +#define _PC_REC_XFER_ALIGN _PC_REC_XFER_ALIGN + _PC_ALLOC_SIZE_MIN, +#define _PC_ALLOC_SIZE_MIN _PC_ALLOC_SIZE_MIN + _PC_SYMLINK_MAX, +#define _PC_SYMLINK_MAX _PC_SYMLINK_MAX + _PC_2_SYMLINKS +#define _PC_2_SYMLINKS _PC_2_SYMLINKS + }; + +/* Values for the argument to `sysconf'. */ +enum + { + _SC_ARG_MAX, +#define _SC_ARG_MAX _SC_ARG_MAX + _SC_CHILD_MAX, +#define _SC_CHILD_MAX _SC_CHILD_MAX + _SC_CLK_TCK, +#define _SC_CLK_TCK _SC_CLK_TCK + _SC_NGROUPS_MAX, +#define _SC_NGROUPS_MAX _SC_NGROUPS_MAX + _SC_OPEN_MAX, +#define _SC_OPEN_MAX _SC_OPEN_MAX + _SC_STREAM_MAX, +#define _SC_STREAM_MAX _SC_STREAM_MAX + _SC_TZNAME_MAX, +#define _SC_TZNAME_MAX _SC_TZNAME_MAX + _SC_JOB_CONTROL, +#define _SC_JOB_CONTROL _SC_JOB_CONTROL + _SC_SAVED_IDS, +#define _SC_SAVED_IDS _SC_SAVED_IDS + _SC_REALTIME_SIGNALS, +#define _SC_REALTIME_SIGNALS _SC_REALTIME_SIGNALS + _SC_PRIORITY_SCHEDULING, +#define _SC_PRIORITY_SCHEDULING _SC_PRIORITY_SCHEDULING + _SC_TIMERS, +#define _SC_TIMERS _SC_TIMERS + _SC_ASYNCHRONOUS_IO, +#define _SC_ASYNCHRONOUS_IO _SC_ASYNCHRONOUS_IO + _SC_PRIORITIZED_IO, +#define _SC_PRIORITIZED_IO _SC_PRIORITIZED_IO + _SC_SYNCHRONIZED_IO, +#define _SC_SYNCHRONIZED_IO _SC_SYNCHRONIZED_IO + _SC_FSYNC, +#define _SC_FSYNC _SC_FSYNC + _SC_MAPPED_FILES, +#define _SC_MAPPED_FILES _SC_MAPPED_FILES + _SC_MEMLOCK, +#define _SC_MEMLOCK _SC_MEMLOCK + _SC_MEMLOCK_RANGE, +#define _SC_MEMLOCK_RANGE _SC_MEMLOCK_RANGE + _SC_MEMORY_PROTECTION, +#define _SC_MEMORY_PROTECTION _SC_MEMORY_PROTECTION + _SC_MESSAGE_PASSING, +#define _SC_MESSAGE_PASSING _SC_MESSAGE_PASSING + _SC_SEMAPHORES, +#define _SC_SEMAPHORES _SC_SEMAPHORES + _SC_SHARED_MEMORY_OBJECTS, +#define _SC_SHARED_MEMORY_OBJECTS _SC_SHARED_MEMORY_OBJECTS + _SC_AIO_LISTIO_MAX, +#define _SC_AIO_LISTIO_MAX _SC_AIO_LISTIO_MAX + _SC_AIO_MAX, +#define _SC_AIO_MAX _SC_AIO_MAX + _SC_AIO_PRIO_DELTA_MAX, +#define _SC_AIO_PRIO_DELTA_MAX _SC_AIO_PRIO_DELTA_MAX + _SC_DELAYTIMER_MAX, +#define _SC_DELAYTIMER_MAX _SC_DELAYTIMER_MAX + _SC_MQ_OPEN_MAX, +#define _SC_MQ_OPEN_MAX _SC_MQ_OPEN_MAX + _SC_MQ_PRIO_MAX, +#define _SC_MQ_PRIO_MAX _SC_MQ_PRIO_MAX + _SC_VERSION, +#define _SC_VERSION _SC_VERSION + _SC_PAGESIZE, +#define _SC_PAGESIZE _SC_PAGESIZE +#define _SC_PAGE_SIZE _SC_PAGESIZE + _SC_RTSIG_MAX, +#define _SC_RTSIG_MAX _SC_RTSIG_MAX + _SC_SEM_NSEMS_MAX, +#define _SC_SEM_NSEMS_MAX _SC_SEM_NSEMS_MAX + _SC_SEM_VALUE_MAX, +#define _SC_SEM_VALUE_MAX _SC_SEM_VALUE_MAX + _SC_SIGQUEUE_MAX, +#define _SC_SIGQUEUE_MAX _SC_SIGQUEUE_MAX + _SC_TIMER_MAX, +#define _SC_TIMER_MAX _SC_TIMER_MAX + + /* Values for the argument to `sysconf' + corresponding to _POSIX2_* symbols. */ + _SC_BC_BASE_MAX, +#define _SC_BC_BASE_MAX _SC_BC_BASE_MAX + _SC_BC_DIM_MAX, +#define _SC_BC_DIM_MAX _SC_BC_DIM_MAX + _SC_BC_SCALE_MAX, +#define _SC_BC_SCALE_MAX _SC_BC_SCALE_MAX + _SC_BC_STRING_MAX, +#define _SC_BC_STRING_MAX _SC_BC_STRING_MAX + _SC_COLL_WEIGHTS_MAX, +#define _SC_COLL_WEIGHTS_MAX _SC_COLL_WEIGHTS_MAX + _SC_EQUIV_CLASS_MAX, +#define _SC_EQUIV_CLASS_MAX _SC_EQUIV_CLASS_MAX + _SC_EXPR_NEST_MAX, +#define _SC_EXPR_NEST_MAX _SC_EXPR_NEST_MAX + _SC_LINE_MAX, +#define _SC_LINE_MAX _SC_LINE_MAX + _SC_RE_DUP_MAX, +#define _SC_RE_DUP_MAX _SC_RE_DUP_MAX + _SC_CHARCLASS_NAME_MAX, +#define _SC_CHARCLASS_NAME_MAX _SC_CHARCLASS_NAME_MAX + + _SC_2_VERSION, +#define _SC_2_VERSION _SC_2_VERSION + _SC_2_C_BIND, +#define _SC_2_C_BIND _SC_2_C_BIND + _SC_2_C_DEV, +#define _SC_2_C_DEV _SC_2_C_DEV + _SC_2_FORT_DEV, +#define _SC_2_FORT_DEV _SC_2_FORT_DEV + _SC_2_FORT_RUN, +#define _SC_2_FORT_RUN _SC_2_FORT_RUN + _SC_2_SW_DEV, +#define _SC_2_SW_DEV _SC_2_SW_DEV + _SC_2_LOCALEDEF, +#define _SC_2_LOCALEDEF _SC_2_LOCALEDEF + + _SC_PII, +#define _SC_PII _SC_PII + _SC_PII_XTI, +#define _SC_PII_XTI _SC_PII_XTI + _SC_PII_SOCKET, +#define _SC_PII_SOCKET _SC_PII_SOCKET + _SC_PII_INTERNET, +#define _SC_PII_INTERNET _SC_PII_INTERNET + _SC_PII_OSI, +#define _SC_PII_OSI _SC_PII_OSI + _SC_POLL, +#define _SC_POLL _SC_POLL + _SC_SELECT, +#define _SC_SELECT _SC_SELECT + _SC_UIO_MAXIOV, +#define _SC_UIO_MAXIOV _SC_UIO_MAXIOV + _SC_IOV_MAX = _SC_UIO_MAXIOV, +#define _SC_IOV_MAX _SC_IOV_MAX + _SC_PII_INTERNET_STREAM, +#define _SC_PII_INTERNET_STREAM _SC_PII_INTERNET_STREAM + _SC_PII_INTERNET_DGRAM, +#define _SC_PII_INTERNET_DGRAM _SC_PII_INTERNET_DGRAM + _SC_PII_OSI_COTS, +#define _SC_PII_OSI_COTS _SC_PII_OSI_COTS + _SC_PII_OSI_CLTS, +#define _SC_PII_OSI_CLTS _SC_PII_OSI_CLTS + _SC_PII_OSI_M, +#define _SC_PII_OSI_M _SC_PII_OSI_M + _SC_T_IOV_MAX, +#define _SC_T_IOV_MAX _SC_T_IOV_MAX + + /* Values according to POSIX 1003.1c (POSIX threads). */ + _SC_THREADS, +#define _SC_THREADS _SC_THREADS + _SC_THREAD_SAFE_FUNCTIONS, +#define _SC_THREAD_SAFE_FUNCTIONS _SC_THREAD_SAFE_FUNCTIONS + _SC_GETGR_R_SIZE_MAX, +#define _SC_GETGR_R_SIZE_MAX _SC_GETGR_R_SIZE_MAX + _SC_GETPW_R_SIZE_MAX, +#define _SC_GETPW_R_SIZE_MAX _SC_GETPW_R_SIZE_MAX + _SC_LOGIN_NAME_MAX, +#define _SC_LOGIN_NAME_MAX _SC_LOGIN_NAME_MAX + _SC_TTY_NAME_MAX, +#define _SC_TTY_NAME_MAX _SC_TTY_NAME_MAX + _SC_THREAD_DESTRUCTOR_ITERATIONS, +#define _SC_THREAD_DESTRUCTOR_ITERATIONS _SC_THREAD_DESTRUCTOR_ITERATIONS + _SC_THREAD_KEYS_MAX, +#define _SC_THREAD_KEYS_MAX _SC_THREAD_KEYS_MAX + _SC_THREAD_STACK_MIN, +#define _SC_THREAD_STACK_MIN _SC_THREAD_STACK_MIN + _SC_THREAD_THREADS_MAX, +#define _SC_THREAD_THREADS_MAX _SC_THREAD_THREADS_MAX + _SC_THREAD_ATTR_STACKADDR, +#define _SC_THREAD_ATTR_STACKADDR _SC_THREAD_ATTR_STACKADDR + _SC_THREAD_ATTR_STACKSIZE, +#define _SC_THREAD_ATTR_STACKSIZE _SC_THREAD_ATTR_STACKSIZE + _SC_THREAD_PRIORITY_SCHEDULING, +#define _SC_THREAD_PRIORITY_SCHEDULING _SC_THREAD_PRIORITY_SCHEDULING + _SC_THREAD_PRIO_INHERIT, +#define _SC_THREAD_PRIO_INHERIT _SC_THREAD_PRIO_INHERIT + _SC_THREAD_PRIO_PROTECT, +#define _SC_THREAD_PRIO_PROTECT _SC_THREAD_PRIO_PROTECT + _SC_THREAD_PROCESS_SHARED, +#define _SC_THREAD_PROCESS_SHARED _SC_THREAD_PROCESS_SHARED + + _SC_NPROCESSORS_CONF, +#define _SC_NPROCESSORS_CONF _SC_NPROCESSORS_CONF + _SC_NPROCESSORS_ONLN, +#define _SC_NPROCESSORS_ONLN _SC_NPROCESSORS_ONLN + _SC_PHYS_PAGES, +#define _SC_PHYS_PAGES _SC_PHYS_PAGES + _SC_AVPHYS_PAGES, +#define _SC_AVPHYS_PAGES _SC_AVPHYS_PAGES + _SC_ATEXIT_MAX, +#define _SC_ATEXIT_MAX _SC_ATEXIT_MAX + _SC_PASS_MAX, +#define _SC_PASS_MAX _SC_PASS_MAX + + _SC_XOPEN_VERSION, +#define _SC_XOPEN_VERSION _SC_XOPEN_VERSION + _SC_XOPEN_XCU_VERSION, +#define _SC_XOPEN_XCU_VERSION _SC_XOPEN_XCU_VERSION + _SC_XOPEN_UNIX, +#define _SC_XOPEN_UNIX _SC_XOPEN_UNIX + _SC_XOPEN_CRYPT, +#define _SC_XOPEN_CRYPT _SC_XOPEN_CRYPT + _SC_XOPEN_ENH_I18N, +#define _SC_XOPEN_ENH_I18N _SC_XOPEN_ENH_I18N + _SC_XOPEN_SHM, +#define _SC_XOPEN_SHM _SC_XOPEN_SHM + + _SC_2_CHAR_TERM, +#define _SC_2_CHAR_TERM _SC_2_CHAR_TERM + _SC_2_C_VERSION, +#define _SC_2_C_VERSION _SC_2_C_VERSION + _SC_2_UPE, +#define _SC_2_UPE _SC_2_UPE + + _SC_XOPEN_XPG2, +#define _SC_XOPEN_XPG2 _SC_XOPEN_XPG2 + _SC_XOPEN_XPG3, +#define _SC_XOPEN_XPG3 _SC_XOPEN_XPG3 + _SC_XOPEN_XPG4, +#define _SC_XOPEN_XPG4 _SC_XOPEN_XPG4 + + _SC_CHAR_BIT, +#define _SC_CHAR_BIT _SC_CHAR_BIT + _SC_CHAR_MAX, +#define _SC_CHAR_MAX _SC_CHAR_MAX + _SC_CHAR_MIN, +#define _SC_CHAR_MIN _SC_CHAR_MIN + _SC_INT_MAX, +#define _SC_INT_MAX _SC_INT_MAX + _SC_INT_MIN, +#define _SC_INT_MIN _SC_INT_MIN + _SC_LONG_BIT, +#define _SC_LONG_BIT _SC_LONG_BIT + _SC_WORD_BIT, +#define _SC_WORD_BIT _SC_WORD_BIT + _SC_MB_LEN_MAX, +#define _SC_MB_LEN_MAX _SC_MB_LEN_MAX + _SC_NZERO, +#define _SC_NZERO _SC_NZERO + _SC_SSIZE_MAX, +#define _SC_SSIZE_MAX _SC_SSIZE_MAX + _SC_SCHAR_MAX, +#define _SC_SCHAR_MAX _SC_SCHAR_MAX + _SC_SCHAR_MIN, +#define _SC_SCHAR_MIN _SC_SCHAR_MIN + _SC_SHRT_MAX, +#define _SC_SHRT_MAX _SC_SHRT_MAX + _SC_SHRT_MIN, +#define _SC_SHRT_MIN _SC_SHRT_MIN + _SC_UCHAR_MAX, +#define _SC_UCHAR_MAX _SC_UCHAR_MAX + _SC_UINT_MAX, +#define _SC_UINT_MAX _SC_UINT_MAX + _SC_ULONG_MAX, +#define _SC_ULONG_MAX _SC_ULONG_MAX + _SC_USHRT_MAX, +#define _SC_USHRT_MAX _SC_USHRT_MAX + + _SC_NL_ARGMAX, +#define _SC_NL_ARGMAX _SC_NL_ARGMAX + _SC_NL_LANGMAX, +#define _SC_NL_LANGMAX _SC_NL_LANGMAX + _SC_NL_MSGMAX, +#define _SC_NL_MSGMAX _SC_NL_MSGMAX + _SC_NL_NMAX, +#define _SC_NL_NMAX _SC_NL_NMAX + _SC_NL_SETMAX, +#define _SC_NL_SETMAX _SC_NL_SETMAX + _SC_NL_TEXTMAX, +#define _SC_NL_TEXTMAX _SC_NL_TEXTMAX + + _SC_XBS5_ILP32_OFF32, +#define _SC_XBS5_ILP32_OFF32 _SC_XBS5_ILP32_OFF32 + _SC_XBS5_ILP32_OFFBIG, +#define _SC_XBS5_ILP32_OFFBIG _SC_XBS5_ILP32_OFFBIG + _SC_XBS5_LP64_OFF64, +#define _SC_XBS5_LP64_OFF64 _SC_XBS5_LP64_OFF64 + _SC_XBS5_LPBIG_OFFBIG, +#define _SC_XBS5_LPBIG_OFFBIG _SC_XBS5_LPBIG_OFFBIG + + _SC_XOPEN_LEGACY, +#define _SC_XOPEN_LEGACY _SC_XOPEN_LEGACY + _SC_XOPEN_REALTIME, +#define _SC_XOPEN_REALTIME _SC_XOPEN_REALTIME + _SC_XOPEN_REALTIME_THREADS, +#define _SC_XOPEN_REALTIME_THREADS _SC_XOPEN_REALTIME_THREADS + + _SC_ADVISORY_INFO, +#define _SC_ADVISORY_INFO _SC_ADVISORY_INFO + _SC_BARRIERS, +#define _SC_BARRIERS _SC_BARRIERS + _SC_BASE, +#define _SC_BASE _SC_BASE + _SC_C_LANG_SUPPORT, +#define _SC_C_LANG_SUPPORT _SC_C_LANG_SUPPORT + _SC_C_LANG_SUPPORT_R, +#define _SC_C_LANG_SUPPORT_R _SC_C_LANG_SUPPORT_R + _SC_CLOCK_SELECTION, +#define _SC_CLOCK_SELECTION _SC_CLOCK_SELECTION + _SC_CPUTIME, +#define _SC_CPUTIME _SC_CPUTIME + _SC_THREAD_CPUTIME, +#define _SC_THREAD_CPUTIME _SC_THREAD_CPUTIME + _SC_DEVICE_IO, +#define _SC_DEVICE_IO _SC_DEVICE_IO + _SC_DEVICE_SPECIFIC, +#define _SC_DEVICE_SPECIFIC _SC_DEVICE_SPECIFIC + _SC_DEVICE_SPECIFIC_R, +#define _SC_DEVICE_SPECIFIC_R _SC_DEVICE_SPECIFIC_R + _SC_FD_MGMT, +#define _SC_FD_MGMT _SC_FD_MGMT + _SC_FIFO, +#define _SC_FIFO _SC_FIFO + _SC_PIPE, +#define _SC_PIPE _SC_PIPE + _SC_FILE_ATTRIBUTES, +#define _SC_FILE_ATTRIBUTES _SC_FILE_ATTRIBUTES + _SC_FILE_LOCKING, +#define _SC_FILE_LOCKING _SC_FILE_LOCKING + _SC_FILE_SYSTEM, +#define _SC_FILE_SYSTEM _SC_FILE_SYSTEM + _SC_MONOTONIC_CLOCK, +#define _SC_MONOTONIC_CLOCK _SC_MONOTONIC_CLOCK + _SC_MULTI_PROCESS, +#define _SC_MULTI_PROCESS _SC_MULTI_PROCESS + _SC_SINGLE_PROCESS, +#define _SC_SINGLE_PROCESS _SC_SINGLE_PROCESS + _SC_NETWORKING, +#define _SC_NETWORKING _SC_NETWORKING + _SC_READER_WRITER_LOCKS, +#define _SC_READER_WRITER_LOCKS _SC_READER_WRITER_LOCKS + _SC_SPIN_LOCKS, +#define _SC_SPIN_LOCKS _SC_SPIN_LOCKS + _SC_REGEXP, +#define _SC_REGEXP _SC_REGEXP + _SC_REGEX_VERSION, +#define _SC_REGEX_VERSION _SC_REGEX_VERSION + _SC_SHELL, +#define _SC_SHELL _SC_SHELL + _SC_SIGNALS, +#define _SC_SIGNALS _SC_SIGNALS + _SC_SPAWN, +#define _SC_SPAWN _SC_SPAWN + _SC_SPORADIC_SERVER, +#define _SC_SPORADIC_SERVER _SC_SPORADIC_SERVER + _SC_THREAD_SPORADIC_SERVER, +#define _SC_THREAD_SPORADIC_SERVER _SC_THREAD_SPORADIC_SERVER + _SC_SYSTEM_DATABASE, +#define _SC_SYSTEM_DATABASE _SC_SYSTEM_DATABASE + _SC_SYSTEM_DATABASE_R, +#define _SC_SYSTEM_DATABASE_R _SC_SYSTEM_DATABASE_R + _SC_TIMEOUTS, +#define _SC_TIMEOUTS _SC_TIMEOUTS + _SC_TYPED_MEMORY_OBJECTS, +#define _SC_TYPED_MEMORY_OBJECTS _SC_TYPED_MEMORY_OBJECTS + _SC_USER_GROUPS, +#define _SC_USER_GROUPS _SC_USER_GROUPS + _SC_USER_GROUPS_R, +#define _SC_USER_GROUPS_R _SC_USER_GROUPS_R + _SC_2_PBS, +#define _SC_2_PBS _SC_2_PBS + _SC_2_PBS_ACCOUNTING, +#define _SC_2_PBS_ACCOUNTING _SC_2_PBS_ACCOUNTING + _SC_2_PBS_LOCATE, +#define _SC_2_PBS_LOCATE _SC_2_PBS_LOCATE + _SC_2_PBS_MESSAGE, +#define _SC_2_PBS_MESSAGE _SC_2_PBS_MESSAGE + _SC_2_PBS_TRACK, +#define _SC_2_PBS_TRACK _SC_2_PBS_TRACK + _SC_SYMLOOP_MAX, +#define _SC_SYMLOOP_MAX _SC_SYMLOOP_MAX + _SC_STREAMS, +#define _SC_STREAMS _SC_STREAMS + _SC_2_PBS_CHECKPOINT, +#define _SC_2_PBS_CHECKPOINT _SC_2_PBS_CHECKPOINT + + _SC_V6_ILP32_OFF32, +#define _SC_V6_ILP32_OFF32 _SC_V6_ILP32_OFF32 + _SC_V6_ILP32_OFFBIG, +#define _SC_V6_ILP32_OFFBIG _SC_V6_ILP32_OFFBIG + _SC_V6_LP64_OFF64, +#define _SC_V6_LP64_OFF64 _SC_V6_LP64_OFF64 + _SC_V6_LPBIG_OFFBIG, +#define _SC_V6_LPBIG_OFFBIG _SC_V6_LPBIG_OFFBIG + + _SC_HOST_NAME_MAX, +#define _SC_HOST_NAME_MAX _SC_HOST_NAME_MAX + _SC_TRACE, +#define _SC_TRACE _SC_TRACE + _SC_TRACE_EVENT_FILTER, +#define _SC_TRACE_EVENT_FILTER _SC_TRACE_EVENT_FILTER + _SC_TRACE_INHERIT, +#define _SC_TRACE_INHERIT _SC_TRACE_INHERIT + _SC_TRACE_LOG, +#define _SC_TRACE_LOG _SC_TRACE_LOG + + _SC_LEVEL1_ICACHE_SIZE, +#define _SC_LEVEL1_ICACHE_SIZE _SC_LEVEL1_ICACHE_SIZE + _SC_LEVEL1_ICACHE_ASSOC, +#define _SC_LEVEL1_ICACHE_ASSOC _SC_LEVEL1_ICACHE_ASSOC + _SC_LEVEL1_ICACHE_LINESIZE, +#define _SC_LEVEL1_ICACHE_LINESIZE _SC_LEVEL1_ICACHE_LINESIZE + _SC_LEVEL1_DCACHE_SIZE, +#define _SC_LEVEL1_DCACHE_SIZE _SC_LEVEL1_DCACHE_SIZE + _SC_LEVEL1_DCACHE_ASSOC, +#define _SC_LEVEL1_DCACHE_ASSOC _SC_LEVEL1_DCACHE_ASSOC + _SC_LEVEL1_DCACHE_LINESIZE, +#define _SC_LEVEL1_DCACHE_LINESIZE _SC_LEVEL1_DCACHE_LINESIZE + _SC_LEVEL2_CACHE_SIZE, +#define _SC_LEVEL2_CACHE_SIZE _SC_LEVEL2_CACHE_SIZE + _SC_LEVEL2_CACHE_ASSOC, +#define _SC_LEVEL2_CACHE_ASSOC _SC_LEVEL2_CACHE_ASSOC + _SC_LEVEL2_CACHE_LINESIZE, +#define _SC_LEVEL2_CACHE_LINESIZE _SC_LEVEL2_CACHE_LINESIZE + _SC_LEVEL3_CACHE_SIZE, +#define _SC_LEVEL3_CACHE_SIZE _SC_LEVEL3_CACHE_SIZE + _SC_LEVEL3_CACHE_ASSOC, +#define _SC_LEVEL3_CACHE_ASSOC _SC_LEVEL3_CACHE_ASSOC + _SC_LEVEL3_CACHE_LINESIZE, +#define _SC_LEVEL3_CACHE_LINESIZE _SC_LEVEL3_CACHE_LINESIZE + _SC_LEVEL4_CACHE_SIZE, +#define _SC_LEVEL4_CACHE_SIZE _SC_LEVEL4_CACHE_SIZE + _SC_LEVEL4_CACHE_ASSOC, +#define _SC_LEVEL4_CACHE_ASSOC _SC_LEVEL4_CACHE_ASSOC + _SC_LEVEL4_CACHE_LINESIZE, +#define _SC_LEVEL4_CACHE_LINESIZE _SC_LEVEL4_CACHE_LINESIZE + /* Leave room here, maybe we need a few more cache levels some day. */ + + _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50, +#define _SC_IPV6 _SC_IPV6 + _SC_RAW_SOCKETS, +#define _SC_RAW_SOCKETS _SC_RAW_SOCKETS + + _SC_V7_ILP32_OFF32, +#define _SC_V7_ILP32_OFF32 _SC_V7_ILP32_OFF32 + _SC_V7_ILP32_OFFBIG, +#define _SC_V7_ILP32_OFFBIG _SC_V7_ILP32_OFFBIG + _SC_V7_LP64_OFF64, +#define _SC_V7_LP64_OFF64 _SC_V7_LP64_OFF64 + _SC_V7_LPBIG_OFFBIG, +#define _SC_V7_LPBIG_OFFBIG _SC_V7_LPBIG_OFFBIG + + _SC_SS_REPL_MAX, +#define _SC_SS_REPL_MAX _SC_SS_REPL_MAX + + _SC_TRACE_EVENT_NAME_MAX, +#define _SC_TRACE_EVENT_NAME_MAX _SC_TRACE_EVENT_NAME_MAX + _SC_TRACE_NAME_MAX, +#define _SC_TRACE_NAME_MAX _SC_TRACE_NAME_MAX + _SC_TRACE_SYS_MAX, +#define _SC_TRACE_SYS_MAX _SC_TRACE_SYS_MAX + _SC_TRACE_USER_EVENT_MAX, +#define _SC_TRACE_USER_EVENT_MAX _SC_TRACE_USER_EVENT_MAX + + _SC_XOPEN_STREAMS, +#define _SC_XOPEN_STREAMS _SC_XOPEN_STREAMS + + _SC_THREAD_ROBUST_PRIO_INHERIT, +#define _SC_THREAD_ROBUST_PRIO_INHERIT _SC_THREAD_ROBUST_PRIO_INHERIT + _SC_THREAD_ROBUST_PRIO_PROTECT, +#define _SC_THREAD_ROBUST_PRIO_PROTECT _SC_THREAD_ROBUST_PRIO_PROTECT + + _SC_MINSIGSTKSZ, +#define _SC_MINSIGSTKSZ _SC_MINSIGSTKSZ + + _SC_SIGSTKSZ +#define _SC_SIGSTKSZ _SC_SIGSTKSZ + }; + +/* Values for the NAME argument to `confstr'. */ +enum + { + _CS_PATH, /* The default search path. */ +#define _CS_PATH _CS_PATH + + _CS_V6_WIDTH_RESTRICTED_ENVS, +#define _CS_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS +#define _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS + + _CS_GNU_LIBC_VERSION, +#define _CS_GNU_LIBC_VERSION _CS_GNU_LIBC_VERSION + _CS_GNU_LIBPTHREAD_VERSION, +#define _CS_GNU_LIBPTHREAD_VERSION _CS_GNU_LIBPTHREAD_VERSION + + _CS_V5_WIDTH_RESTRICTED_ENVS, +#define _CS_V5_WIDTH_RESTRICTED_ENVS _CS_V5_WIDTH_RESTRICTED_ENVS +#define _CS_POSIX_V5_WIDTH_RESTRICTED_ENVS _CS_V5_WIDTH_RESTRICTED_ENVS + + _CS_V7_WIDTH_RESTRICTED_ENVS, +#define _CS_V7_WIDTH_RESTRICTED_ENVS _CS_V7_WIDTH_RESTRICTED_ENVS +#define _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS _CS_V7_WIDTH_RESTRICTED_ENVS + + _CS_LFS_CFLAGS = 1000, +#define _CS_LFS_CFLAGS _CS_LFS_CFLAGS + _CS_LFS_LDFLAGS, +#define _CS_LFS_LDFLAGS _CS_LFS_LDFLAGS + _CS_LFS_LIBS, +#define _CS_LFS_LIBS _CS_LFS_LIBS + _CS_LFS_LINTFLAGS, +#define _CS_LFS_LINTFLAGS _CS_LFS_LINTFLAGS + _CS_LFS64_CFLAGS, +#define _CS_LFS64_CFLAGS _CS_LFS64_CFLAGS + _CS_LFS64_LDFLAGS, +#define _CS_LFS64_LDFLAGS _CS_LFS64_LDFLAGS + _CS_LFS64_LIBS, +#define _CS_LFS64_LIBS _CS_LFS64_LIBS + _CS_LFS64_LINTFLAGS, +#define _CS_LFS64_LINTFLAGS _CS_LFS64_LINTFLAGS + + _CS_XBS5_ILP32_OFF32_CFLAGS = 1100, +#define _CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS + _CS_XBS5_ILP32_OFF32_LDFLAGS, +#define _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS + _CS_XBS5_ILP32_OFF32_LIBS, +#define _CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LIBS + _CS_XBS5_ILP32_OFF32_LINTFLAGS, +#define _CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFF32_LINTFLAGS + _CS_XBS5_ILP32_OFFBIG_CFLAGS, +#define _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS + _CS_XBS5_ILP32_OFFBIG_LDFLAGS, +#define _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS + _CS_XBS5_ILP32_OFFBIG_LIBS, +#define _CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LIBS + _CS_XBS5_ILP32_OFFBIG_LINTFLAGS, +#define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS + _CS_XBS5_LP64_OFF64_CFLAGS, +#define _CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_CFLAGS + _CS_XBS5_LP64_OFF64_LDFLAGS, +#define _CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS + _CS_XBS5_LP64_OFF64_LIBS, +#define _CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LIBS + _CS_XBS5_LP64_OFF64_LINTFLAGS, +#define _CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LP64_OFF64_LINTFLAGS + _CS_XBS5_LPBIG_OFFBIG_CFLAGS, +#define _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS + _CS_XBS5_LPBIG_OFFBIG_LDFLAGS, +#define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS + _CS_XBS5_LPBIG_OFFBIG_LIBS, +#define _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LIBS + _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS, +#define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS + + _CS_POSIX_V6_ILP32_OFF32_CFLAGS, +#define _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS + _CS_POSIX_V6_ILP32_OFF32_LDFLAGS, +#define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS + _CS_POSIX_V6_ILP32_OFF32_LIBS, +#define _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LIBS + _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS, +#define _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS + _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS, +#define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS + _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS, +#define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS + _CS_POSIX_V6_ILP32_OFFBIG_LIBS, +#define _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LIBS + _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS, +#define _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS + _CS_POSIX_V6_LP64_OFF64_CFLAGS, +#define _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS + _CS_POSIX_V6_LP64_OFF64_LDFLAGS, +#define _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS + _CS_POSIX_V6_LP64_OFF64_LIBS, +#define _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LIBS + _CS_POSIX_V6_LP64_OFF64_LINTFLAGS, +#define _CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS + _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS, +#define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS + _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS, +#define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS + _CS_POSIX_V6_LPBIG_OFFBIG_LIBS, +#define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS + _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS, +#define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS + + _CS_POSIX_V7_ILP32_OFF32_CFLAGS, +#define _CS_POSIX_V7_ILP32_OFF32_CFLAGS _CS_POSIX_V7_ILP32_OFF32_CFLAGS + _CS_POSIX_V7_ILP32_OFF32_LDFLAGS, +#define _CS_POSIX_V7_ILP32_OFF32_LDFLAGS _CS_POSIX_V7_ILP32_OFF32_LDFLAGS + _CS_POSIX_V7_ILP32_OFF32_LIBS, +#define _CS_POSIX_V7_ILP32_OFF32_LIBS _CS_POSIX_V7_ILP32_OFF32_LIBS + _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS, +#define _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS + _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS, +#define _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS + _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS, +#define _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS + _CS_POSIX_V7_ILP32_OFFBIG_LIBS, +#define _CS_POSIX_V7_ILP32_OFFBIG_LIBS _CS_POSIX_V7_ILP32_OFFBIG_LIBS + _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS, +#define _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS + _CS_POSIX_V7_LP64_OFF64_CFLAGS, +#define _CS_POSIX_V7_LP64_OFF64_CFLAGS _CS_POSIX_V7_LP64_OFF64_CFLAGS + _CS_POSIX_V7_LP64_OFF64_LDFLAGS, +#define _CS_POSIX_V7_LP64_OFF64_LDFLAGS _CS_POSIX_V7_LP64_OFF64_LDFLAGS + _CS_POSIX_V7_LP64_OFF64_LIBS, +#define _CS_POSIX_V7_LP64_OFF64_LIBS _CS_POSIX_V7_LP64_OFF64_LIBS + _CS_POSIX_V7_LP64_OFF64_LINTFLAGS, +#define _CS_POSIX_V7_LP64_OFF64_LINTFLAGS _CS_POSIX_V7_LP64_OFF64_LINTFLAGS + _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS, +#define _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS + _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS, +#define _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS + _CS_POSIX_V7_LPBIG_OFFBIG_LIBS, +#define _CS_POSIX_V7_LPBIG_OFFBIG_LIBS _CS_POSIX_V7_LPBIG_OFFBIG_LIBS + _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS, +#define _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS + + _CS_V6_ENV, +#define _CS_V6_ENV _CS_V6_ENV + _CS_V7_ENV +#define _CS_V7_ENV _CS_V7_ENV + }; diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..89c424e5ee8a23b8e259a0749b99e43210d8e045 GIT binary patch literal 69157 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. */ + +#ifndef _BITS_CPU_SET_H +#define _BITS_CPU_SET_H 1 + +#ifndef _SCHED_H +# error "Never include directly; use instead." +#endif + +/* Size definition for CPU sets. */ +#define __CPU_SETSIZE 1024 +#define __NCPUBITS (8 * sizeof (__cpu_mask)) + +/* Type for array elements in 'cpu_set_t'. */ +typedef __CPU_MASK_TYPE __cpu_mask; + +/* Basic access functions. */ +#define __CPUELT(cpu) ((cpu) / __NCPUBITS) +#define __CPUMASK(cpu) ((__cpu_mask) 1 << ((cpu) % __NCPUBITS)) + +/* Data structure to describe CPU mask. */ +typedef struct +{ + __cpu_mask __bits[__CPU_SETSIZE / __NCPUBITS]; +} cpu_set_t; + +/* Access functions for CPU masks. */ +#if __GNUC_PREREQ (2, 91) +# define __CPU_ZERO_S(setsize, cpusetp) \ + do __builtin_memset (cpusetp, '\0', setsize); while (0) +#else +# define __CPU_ZERO_S(setsize, cpusetp) \ + do { \ + size_t __i; \ + size_t __imax = (setsize) / sizeof (__cpu_mask); \ + __cpu_mask *__bits = (cpusetp)->__bits; \ + for (__i = 0; __i < __imax; ++__i) \ + __bits[__i] = 0; \ + } while (0) +#endif +#define __CPU_SET_S(cpu, setsize, cpusetp) \ + (__extension__ \ + ({ size_t __cpu = (cpu); \ + __cpu / 8 < (setsize) \ + ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] \ + |= __CPUMASK (__cpu)) \ + : 0; })) +#define __CPU_CLR_S(cpu, setsize, cpusetp) \ + (__extension__ \ + ({ size_t __cpu = (cpu); \ + __cpu / 8 < (setsize) \ + ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] \ + &= ~__CPUMASK (__cpu)) \ + : 0; })) +#define __CPU_ISSET_S(cpu, setsize, cpusetp) \ + (__extension__ \ + ({ size_t __cpu = (cpu); \ + __cpu / 8 < (setsize) \ + ? ((((const __cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] \ + & __CPUMASK (__cpu))) != 0 \ + : 0; })) + +#define __CPU_COUNT_S(setsize, cpusetp) \ + __sched_cpucount (setsize, cpusetp) + +#if __GNUC_PREREQ (2, 91) +# define __CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \ + (__builtin_memcmp (cpusetp1, cpusetp2, setsize) == 0) +#else +# define __CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \ + (__extension__ \ + ({ const __cpu_mask *__arr1 = (cpusetp1)->__bits; \ + const __cpu_mask *__arr2 = (cpusetp2)->__bits; \ + size_t __imax = (setsize) / sizeof (__cpu_mask); \ + size_t __i; \ + for (__i = 0; __i < __imax; ++__i) \ + if (__arr1[__i] != __arr2[__i]) \ + break; \ + __i == __imax; })) +#endif + +#define __CPU_OP_S(setsize, destset, srcset1, srcset2, op) \ + (__extension__ \ + ({ cpu_set_t *__dest = (destset); \ + const __cpu_mask *__arr1 = (srcset1)->__bits; \ + const __cpu_mask *__arr2 = (srcset2)->__bits; \ + size_t __imax = (setsize) / sizeof (__cpu_mask); \ + size_t __i; \ + for (__i = 0; __i < __imax; ++__i) \ + ((__cpu_mask *) __dest->__bits)[__i] = __arr1[__i] op __arr2[__i]; \ + __dest; })) + +#define __CPU_ALLOC_SIZE(count) \ + ((((count) + __NCPUBITS - 1) / __NCPUBITS) * sizeof (__cpu_mask)) +#define __CPU_ALLOC(count) __sched_cpualloc (count) +#define __CPU_FREE(cpuset) __sched_cpufree (cpuset) + +__BEGIN_DECLS + +extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp) + __THROW; +extern cpu_set_t *__sched_cpualloc (size_t __count) __THROW __wur; +extern void __sched_cpufree (cpu_set_t *__set) __THROW; + +__END_DECLS + +#endif /* bits/cpu-set.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..c94b925998056439c79c22a708a0c2d0b0073a6c GIT binary patch literal 14888 zcmb7LdyE@L8Q;Bxs*OTrqV{^EAz3bIYG2QB?h;OEXvO87z_k~0mr|u^HtXH7y}f;9 zcWmF4LQy5E3L-#Ni^N;J1mX<>goFT9h)RTqKs+Q6M7#t@yj2iVp*g;p*%|M6$7|z1 ze2w>;Z+_qVn{T#L+O>cF^}rQP*R@(ZiED0Pdu<2R>Ml-dcGRvW2=8fWwN~h(npZoD zk`)|AHH;EmbC6R@V!P&BZm`GJHrSpOG)E$>cEfnZ4VqQQjggJRck_o3 zqYJaOI%>LsX@?F1bk}wpPh62`Y`hlHCqy{u2^EYyO=_m;*Ar}EWD*gn9w@2j)@xLj z+RU6#h~=-k0ggdZAid(={~d`d#ROkwv+X)cL?;$%O|MNJm45uWZx2`uT5ZQ_i5kcv z&k_kKx0Y|=mh?a^LTB|AGqa6oX0AXIsvlyOKvoLhiaxKefdh1{X!xE9cIsj15yG6( zD61$;+|^mrbA5@Kw4H@R-?h!I>mV?BJHRLw#6^zTa6M$!( zgsbqS0v!T!%L4}-?hi>jZdi8Dq(yLB$a7Z-gwK58f{ZgE8#RT@Bv6&;nvK9MKt&bK zd_QrU9n0%;d`any4!b^zGh{{hQOBi*-u(4N8NP@P9JX!hs6xromW`5FvdWl(z5s{xH*n(G$FqJgk(m9k>vz%10UT)ESfO0X7IM z>I3S$o7gQhbc-&CF^a%Z7})_XkXhIbl9|IY0QI{>wihgPgE=2YEKF>p|YngmXW*CcjI;i9-?j;w;FR`+>ea9knUzEUO|O%<5392X z2{zh)L26Rt~Yf?B8@0FgySZTZ8FcUS&>U*d*of4 z<^G8luAXcI+vOgeh-js|y%mIfXQAbNffhDPY77OYjF2%#~1V)L#;dEZ4G< zmd}o9bI!d5DFA%Ig-+yQq`<*7FDwXoC|??tXn6%uMhxf6Vw?5gaThYOT$(tU*q)r~ zp#Q*#o*30m1ZeDP3t7gue9oy9?MsQ}6Y^LM{&9bUgC}~YooZ3y+ToC?hLpD5IMPQ$*k8mqgpQ52J zZm$k&qf)KAO*5UV$&RQ5+N}qn8+712nCsQKl6aalduc`FW+hLUs17)-sma;Qhn@Nh z3kuUhFJyDQNPY~V+%dL5=KgX!u$kbsF0JSz9chy0&=^Te1B?vd%w|Hit2%3e1>;c3 z6S)y`)kIJg1(IhGvcZD@GNUIHL+nWnq_m7uy|k-RIFynY1($5U$o;aC_mnk~_=)RB za0q18fhCkTO+Qf3E%jV$P^g9$j0Wt`_rs#9Pe$J}14rMv=9&nT^W|RHkx8v&CCMqs z&?9&FRH~ZHHNbmwfvzO>eVAf-(6o`A)!JbB29h!OubgURfb>pAc_8O>Yz!{f9{!Bl zpI5TsqudURmtZz4=}Rf#D!Ji>Bc8b_iYZK)@uWYoW!tWA! z;v_f^cC0Q~9>NCl}w2YHg&%xxjG3U_Sbwmg~6vDB>W#^CLT!)qYf)cVHLfITS zo@i2pGy5oTt# #mJi4X>TFikWupmespd%N~-1c3Q5J9=Pd#MdnA23zxdY{#TDT z3KA(ZXH;}<7&ggE5;Nc4Dh-iswk&p$DiW4*!RmpzW;C+pc>TABRw>bd4W8!MrPA}gldy3M(BdA{aM`YhP)N5}xfj$Pe*ILpLw9oTOLN zvsxE!8M&*7%?xsGDQKF|evsi%9C}_~zo^6rDx6ig8`qHF3$v4=kR74EL}9lN5Z{C+ z57kg>5NLSQrQ?w|1XSpii{O->9`Hq3=m$VjWIFGbtSi$o7X_si^!~(csxVYe%cRJu zN@NW%KF!?%n34=kHQ?|m;e)k)70x_P)j_rg<59Skk)%;FAD~HzvlRJQ4tNz|+F14_ zW=<(w%MaV^QbBmN5+R5m5Z8v*ex&vZ&O?dSMD>t1?8Urc_7T~xsn7@;aSSS0PEmB&<3(X)GP)k|_K9RTiy5%kP?*h*?NdR32bH+Gc;M#;N6AGqhMzw|oO=4R?Za&NHK<+Vy4a&(4UN~@q(%T1oo0=g9m)eTvS20 zm`6>Lw%4uq(H6NlZXq_7d*_LCV8Ja0DF)z3Ih;SrNHK8YnEEr}Q5Ah0@n>zrxHhr5 zrXARPR=c=)!+Prt8}_Yt4?hd1V-yEQCv+VH-V`KnOq%d|GI_PD41Y~JG%%*%5yBO1 zVq&`nAAS8p%g>(O`O$yu(l*1tx)a?wUGHjLPt(?&#&1vl{k98BDPx%jXHO%tOa{az zhHdFv))j5nE`xEu?>|qKUa@rb)s%Z@SLdj%ceG9ixc_?MuI`tv-TJSTJE%O1n)2zf z1;}KJX#@JB1RF9GgrkZ!K2CQWTmRWdpZw+d@|T}pf71K8^Qo5}-a)s<;}`_PT6;p% zUi4XlE&Iu=5`fpIzWd3we|>-UH1Rg*?~Qf<^MC+32C2{nlUSRc2DP!zf61RQd=MYs zsCQ0wmN)9_-`eE8{X*%Motyae>IT9|bMeh5DTfNty<8};tN?gGH# zOROLa(*1gvfalbRNOqTYZv!Ny$`~xt*DpSI_2Lh=zT-Jfy9KZSw5hwylD_Ym87{u8 zL2wrEN+J|!@g{8<)NH^s%CO?tS~K9Ho4#3LxPfuIP}A)o|Bk&oj*jU&v>ivuCRFa; z-W$pr%M%;*^2ze~jrz9vZOil8R-u#u&ZA9E65q#f!k1qd+o z{@SgNy?fV>j(?N?PX2CaZ)#7>>z!7oGp~0qbUmQ^)c23R><3Ri@K4hO&oGalId%*P zZ`uid>IMh`iT_F>pTv7Mwn#=W_yd3%m7-l^Mb|_Wo7+0_mj=}M~}65 zD{Q>i``f?YaNG7nY>Pt+3yVk0rBmm~_J+KD?^&5;1>^iC!zjZi{pTG3>RteP_|)=} zQ8i{NMlJJ8#h9W&7B-A>Pw$lq0QO7%-ZA(N9!~*3`^EA9-29eXf6qWIo;H^NPMy2Vv`_mC1DNzN>TLGf&_AXhtAdJg$(13Bi}D$9b?A0>n^Y{g>YNennXK0OFJjW$oCsl3?Eqe>Z1!! zJiUSG{?roD4KdwTX)jYe&`*?3OpU?!J=;kbJL?VQ1B0D&TWK3O7<}KK@`h9d zyiZyg;ZoKhEpzhq)aY&+qlI47sr8{0i1$~MJR&0S4_#{3@6XijCE?r^%rT&sXo%+!> z;Ysix`i|0$Js|maU;esBpS$w$j|&q~6ZZvJYI*(6(wz`Mca~no4gBKYY(BK-W2g6J zIgd?WKRr3GpSk`Fe2Yp4J}31!&=PC{6y4KZiWX|$xxTc%@`u~5Td6$wMuzOzYtJ59 zP`O|FAgAjYXh)cJW|?^)Pu1J52d$>*BOlIiJj+HI(rF{rX2rPsZeuTri={0~(_`?x z9Ha*O7J^tsfR2i^y$IdKLToZCwu-|jA7#1gl=*ysiO$C~1. */ + +#ifndef _DIRENT_H +# error "Never use directly; include instead." +#endif + +struct dirent + { +#ifndef __USE_FILE_OFFSET64 + __ino_t d_ino; + __off_t d_off; +#else + __ino64_t d_ino; + __off64_t d_off; +#endif + unsigned short int d_reclen; + unsigned char d_type; + char d_name[256]; /* We must not include limits.h! */ + }; + +#ifdef __USE_LARGEFILE64 +struct dirent64 + { + __ino64_t d_ino; + __off64_t d_off; + unsigned short int d_reclen; + unsigned char d_type; + char d_name[256]; /* We must not include limits.h! */ + }; +#endif + +#define d_fileno d_ino /* Backwards compatibility. */ + +#undef _DIRENT_HAVE_D_NAMLEN +#define _DIRENT_HAVE_D_RECLEN +#define _DIRENT_HAVE_D_OFF +#define _DIRENT_HAVE_D_TYPE + +#if defined __OFF_T_MATCHES_OFF64_T && defined __INO_T_MATCHES_INO64_T +/* Inform libc code that these two types are effectively identical. */ +# define _DIRENT_MATCHES_DIRENT64 1 +#else +# define _DIRENT_MATCHES_DIRENT64 0 +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..34dae3dac6682bebfe779a6a46919687c10fd816 GIT binary patch literal 13195 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 k``0%Dmw({`*m0a?#X. Linux version. + Copyright (C) 2019-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _DIRENT_H +# error "Never include directly; use instead." +#endif + +__BEGIN_DECLS + +#ifdef __USE_GNU +/* Read from the directory descriptor FD into LENGTH bytes at BUFFER. + Return the number of bytes read on success (0 for end of + directory), and -1 for failure. */ +extern __ssize_t getdents64 (int __fd, void *__buffer, size_t __length) + __THROW __nonnull ((2)); +#endif + +__END_DECLS diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8209b2bb4a11d7d7c62b438acca99d8442e71d91 GIT binary patch literal 12191 zcmb7KKdj_98J~BwTOb50bOl;bAXqLpyvOmh4dP&rTOsXn1p=KwA~=pS<9$w?jh&f! zD+Wt*qHvtlwhlM$2}snbPZ$m21_}bxnBlI$eE?3es#AiDrA*-SB3UmAqqA z%kK88vpcN*_u9p}SKXR7RP-fVf9I{oSL=dpc#~6Eve&n(4?lPB{pXPk)wivEV)T!m z6kMydd8*cVUKdIe&2nuP38I1*YirB;@;dBF>H}|d2bO~9bN=36qE)R<@Rx6TUZNU3 zdc59<-aPvFUw`-KnU}$nm1<}}~)l0nG(Mzbymr+`^; z!SbS$d*xpE(r=2Hu+g^XO(o5$0ZR!Vg62d30MFw=^<72iF{CMVw@mPZQQ^10|6#1B zG8=7z&E_t3{oaQy_Mq(-b*^b*l-}&RavHIb3XxUQ> z)ZpZ3%c{+U+!W{SBo@iLqE1<>Zq=HWtiq4X*cZC%sm|a2*5hwRTYKGt`j+U%5b+YD z#i*1woaJ2RRo_s}Wur#!8}pcD1he7yi-!r0s^Em2tboRTU)SeC4?$P@Mm>Cb; z6@4@^4`)p82iTw?76XAy{Uf`EqFZ)$i#?dJ#Nbx8w9yHhL)?JOO2+^ecS#J_gj&G- z?ThckAT}of^-kCZcHzY4hX8LhQh5%J24LnjIpjou&z!k9LHb-}g2zrB6M1*TAT?`X zNS8uv2vWAHow4VGhhL8k4fcSRu)dKA_W1qG*|Lg79zm_G4hqO?!j!1&aIV`cc!6~a zN`sI1rdX2QOeC-0h&1

    33MZ6QgACvyvC$QZiGASVF`^=-5qYFyh@bc+!dDm}QO znGkv^qE*LOz7e;rCE5G;wsBg#EHlsDj_L>8X+!q(A{Cj0QjJ1v?pY*il}(0NC1l7 zQt@XviyL@T0h2fEHY#{iNYH=;#r04ry?99-5>V6HWabFl*IeOb5F}ikW+FKu zj7`(8p|~wnHgocbs@JUR8ta44zxY{PB0J&xZ&C4^2}es;$o;=!x;`y0h(S@NN%`9H%BP7PdEC9n>G1 z*^Uth5oklREhA9&WsvPgKp$7&1KxJLlT8h297mj$f(9{z@(VpmR$wT;?4d)YKqWXT z=p(y8tG68}Y*Cbv&h<%wkS1Oz1mw7SZvJ8FvmSD>W`~5%khI;Vs8-(L<{|E7c%Rr7 zCwf1DglY-Apal$Drob(f%>{qBo62pSKJAK9OCB2qafQ`RAwf;z0`m(PEJc3sA+ynS z9#KPkZ?am54_zw^tPfe%zJBHj`8JdhmetVaXMMO&F1RSB|*mx@F@vw_}c zh6ZLaGg9m0)lkJqc{YVbUdwaH{&~??xhBV1NGhBlTe-~jqj$d%XD$nFDx@+KrIR5d zsx6wDy_dkpG;2EsO!v0Q@6=6PuAb60(s_3=PfLT3!(lhsUbCEjL3;oKk2 z)mekr`6eF*Z!r*2MfXJ`d9#CtaZ=2CCwV@}kDL=|1zi(Ht~2c%F7AdxZY+?@IL-^l zBReTprgI8($Bux_r}=oc+VIJ6NcoF;9<@1pMuxlrGX-esa$vixyln`~OCu!uAWTwC zkV+jSL5$e^q`(aEjl`LF+5n-ELEUT1E(B1hFl(ODIt9P6del#Hyqyp83TS}s)-e}mo{j}?&aK^JkCA-*(eR?3ue7Lm_Nbr zHu4v0;KAI5op>X4mfp$ijQ{!9POgxweo(SiaCq?%fwN$43^}rIC^NVn-m8}3R1ko% zgBjNG>LaE5El~|`TUQ7F>et_mbE?$t?-gx?juewlAI|4NWpc8k` zQm$49QEGG5I037NMexEC2|WdO%}1KYG+GOwD%TQH;^MPn2@e|fCF+uXm=~pWrJ@qO z+NKxX(=9pPsEs?M;GHcmhi=>Mmx?AUIo#-)aQ^-6DnXJioNcNnI5);qDxa3FXduRg z6mhqxfsD`>4iBz3?c&J!+)mGCpio@R5A%c59oIz^G=Xg^h^}OZ_rhVNr#+7ov|q=c z*`}}Oo6e!cFp5kXAAc{MC8p|O6S#4lYe<8tiZ#l?Cm=ggc9bo6c|KnNADO}Qi69tWlpFWY0N0u%r1`c{_AsQ6>_!!bOJN2z^HgnA znk~=jt=@MWO)%)n;@QH_Y3d%X6^vaI?*#|j77+JvkWrL0li90}gSo&sHv~7=cXD<* za@+^7ZNo58*T%~7YfRRtd*If~OemJuYP4=CJ&M6N|C|s+DJtUHY3D@7CZH zm=U`(X`Pa4=Z-_FC+`oRPbM`1r>4J+w9_CvPz;IBt7ii;@J2vckVD6cMtX8kQtRCIJeE5aSU#>>Ki+ihkci+5t`H!D|>OVIx S|M}kN(dy#v>h7y=Ui=@zxz-&3 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h new file mode 100644 index 00000000..b659a003 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h @@ -0,0 +1,49 @@ +/* Endian macros for string.h functions + Copyright (C) 1992-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_ENDIAN_H +#define _BITS_ENDIAN_H 1 + +/* Definitions for byte order, according to significance of bytes, + from low addresses to high addresses. The value is what you get by + putting '4' in the most significant byte, '3' in the second most + significant byte, '2' in the second least significant byte, and '1' + in the least significant byte, and then writing down one digit for + each byte, starting with the byte at the lowest address at the left, + and proceeding to the byte with the highest address at the right. */ + +#define __LITTLE_ENDIAN 1234 +#define __BIG_ENDIAN 4321 +#define __PDP_ENDIAN 3412 + +/* This file defines `__BYTE_ORDER' for the particular machine. */ +#include + +/* Some machines may need to use a different endianness for floating point + values. */ +#ifndef __FLOAT_WORD_ORDER +# define __FLOAT_WORD_ORDER __BYTE_ORDER +#endif + +#if __BYTE_ORDER == __LITTLE_ENDIAN +# define __LONG_LONG_PAIR(HI, LO) LO, HI +#elif __BYTE_ORDER == __BIG_ENDIAN +# define __LONG_LONG_PAIR(HI, LO) HI, LO +#endif + +#endif /* bits/endian.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..6657f826fced547cdcffb0f2608121a6fffacfb1 GIT binary patch literal 12660 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 swN!ts{{4$T{p!I9@Hl+6X5!xl directly; include instead." +#endif + +/* i386/x86_64 are little-endian. */ +#define __BYTE_ORDER __LITTLE_ENDIAN + +#endif /* bits/endianness.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..0be0380b22b8d4e07e6b2cd24bb03d1191e67703 GIT binary patch literal 12317 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 G<@SFF5B!1v literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h new file mode 100644 index 00000000..d27243e1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h @@ -0,0 +1,105 @@ +/* Copyright (C) 1999-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _UNISTD_H +# error "Never include this file directly. Use instead" +#endif + +#include + +/* This header should define the following symbols under the described + situations. A value `1' means that the model is always supported, + `-1' means it is never supported. Undefined means it cannot be + statically decided. + + _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type + _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type + + _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type + _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type + + The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, + _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, + _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were + used in previous versions of the Unix standard and are available + only for compatibility. +*/ + +#if __WORDSIZE == 64 + +/* Environments with 32-bit wide pointers are optionally provided. + Therefore following macros aren't defined: + # undef _POSIX_V7_ILP32_OFF32 + # undef _POSIX_V7_ILP32_OFFBIG + # undef _POSIX_V6_ILP32_OFF32 + # undef _POSIX_V6_ILP32_OFFBIG + # undef _XBS5_ILP32_OFF32 + # undef _XBS5_ILP32_OFFBIG + and users need to check at runtime. */ + +/* We also have no use (for now) for an environment with bigger pointers + and offsets. */ +# define _POSIX_V7_LPBIG_OFFBIG -1 +# define _POSIX_V6_LPBIG_OFFBIG -1 +# define _XBS5_LPBIG_OFFBIG -1 + +/* By default we have 64-bit wide `long int', pointers and `off_t'. */ +# define _POSIX_V7_LP64_OFF64 1 +# define _POSIX_V6_LP64_OFF64 1 +# define _XBS5_LP64_OFF64 1 + +#else /* __WORDSIZE == 32 */ + +/* We have 32-bit wide `int', `long int' and pointers and all platforms + support LFS. -mx32 has 64-bit wide `off_t'. */ +# define _POSIX_V7_ILP32_OFFBIG 1 +# define _POSIX_V6_ILP32_OFFBIG 1 +# define _XBS5_ILP32_OFFBIG 1 + +# ifndef __x86_64__ +/* -m32 has 32-bit wide `off_t'. */ +# define _POSIX_V7_ILP32_OFF32 1 +# define _POSIX_V6_ILP32_OFF32 1 +# define _XBS5_ILP32_OFF32 1 +# endif + +/* We optionally provide an environment with the above size but an 64-bit + side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ + +/* Environments with 64-bit wide pointers can be provided, + so these macros aren't defined: + # undef _POSIX_V7_LP64_OFF64 + # undef _POSIX_V7_LPBIG_OFFBIG + # undef _POSIX_V6_LP64_OFF64 + # undef _POSIX_V6_LPBIG_OFFBIG + # undef _XBS5_LP64_OFF64 + # undef _XBS5_LPBIG_OFFBIG + and sysconf tests for it at runtime. */ + +#endif /* __WORDSIZE == 32 */ + +#define __ILP32_OFF32_CFLAGS "-m32" +#define __ILP32_OFF32_LDFLAGS "-m32" +#if defined __x86_64__ && defined __ILP32__ +# define __ILP32_OFFBIG_CFLAGS "-mx32" +# define __ILP32_OFFBIG_LDFLAGS "-mx32" +#else +# define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" +# define __ILP32_OFFBIG_LDFLAGS "-m32" +#endif +#define __LP64_OFF64_CFLAGS "-m64" +#define __LP64_OFF64_LDFLAGS "-m64" diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..061abb6c52b5353bddd1f9285db6b67a60ee8a00 GIT binary patch literal 13257 zcmb7KTc{*Q8J=_Upphu+5ky5~i5inNz2ly2PBw9OP4?=-i5qh^A!yuAO?UN7<@9a4 zx@YDrDvA&i$(uw8s7SyUFG0NKN%27;s}k|{5HQ3C2}+0%e2SX&ud1%GCZ_pP9@2lrDXw<0_hd@ zz;7(B5)=IRaa@T<`~LKUXM0`-tyTptQACM�~;B?&1f)&pFG>HOA1 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h new file mode 100644 index 00000000..d3d3a980 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h @@ -0,0 +1,53 @@ +/* Error constants. Linux specific version. + Copyright (C) 1996-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_ERRNO_H +#define _BITS_ERRNO_H 1 + +#if !defined _ERRNO_H +# error "Never include directly; use instead." +#endif + +# include + +/* Older Linux headers do not define these constants. */ +# ifndef ENOTSUP +# define ENOTSUP EOPNOTSUPP +# endif + +# ifndef ECANCELED +# define ECANCELED 125 +# endif + +# ifndef EOWNERDEAD +# define EOWNERDEAD 130 +# endif + +#ifndef ENOTRECOVERABLE +# define ENOTRECOVERABLE 131 +# endif + +# ifndef ERFKILL +# define ERFKILL 132 +# endif + +# ifndef EHWPOISON +# define EHWPOISON 133 +# endif + +#endif /* bits/errno.h. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a782fcdd30e1412545823afc5b50ad0f7a0343ca GIT binary patch literal 12318 zcmb7KO~@oi8J=B12`nFh_yZwY3-lAlcsY<5F75s6@1U0pp>`&IvJ zSM|(%i->s2!L#7SgLv{F;=zLlPajOx4X?F{$P`%jdGC^OErD8l8QH3Q{d5ktXZ9 zJ>%6P$$87Ds@wB#jh-<3-_;BAPPTJiQPJgWe)qLoC-aOgc$LyRXV;dqPo6ve;9)>R z)p=u{X!(OD8CPcH`ZgiPnKlP`Qa>Fatf~G+Fkbm!^fUA)S ze$qw9b5x=?Zp{~>(~q9~+wVRcc^RzQwYWwFBl?*PBy}b!iCP8^a1~aYuU$VWn(L<# zO^kiCTdL3~?kMv-JBI*RljiW5Qsr4)3r#pMnqk${l5b8@!OMVIa2!!}$!WUgIRlq> zm13eS6La;R-Vf_%~^q`%&sj|+fkLi{^qTl!O>1O zFTMe~-4JmUJIrWZpK+G*IxV`2DqdG|$9%guW)MLi_>5gQV{S-qOf!+DYL#{# z+c!*L-35cvtN01 zPKAgYQx6ba`x*j7i{ld@@(M3XvJ%KU&V@$FZ7SkGZvw0~|$kvYGy4Ah3_gGj<*{ys=175DAj2zEgVinA%7{RcoS^!yjLA ziGzWsuzi~L_Hi9$^q9JE>bS8KQ`jTL*S( zBYRF7u66s-FD`}slPO$V-A3ExEuGJ3)YuzIR*W99x5E_Ou${g%1yjI@D+};95ay^T zlRNRV;ow%#cspDj3NR)~LX0X$s{%&AK90WV`H$`3q`bj`efW17H3enWW}4t_O`$L)q7zXH6lSl_IaUbn>QagU?+a<2`X=TGg zNJG70K~`^p_FOUw%SvuUuJnE5AfR37_!PQV!(hSf1QN$Oh4u@m$Yl*>b8I? z4(;-!Oo#0)>WJNDi`c7F4_N36n;WN#X0qp8{ig@3lyAVsH~QY_77qiM8iZ{lh$`w9 zABa7t`yCI9xZ~rJyz0vF$+K@mv>=12)Ll*|k=43C1g;&&z|D&)StV`w_{a`~-Ki)% zKU`A)!1Q){j}Uh`n%C}dFW`24h6`wK(*}y7N7}f74a^XrQ2G_b?o?Wis)MpMz=JU! zD6fkc-wx@!STO{5(`u&;X-Rm)kIEpI7_2)1YzXOFDV3PpmmnBXhSs*xj0A2boC0R< zNWZs6pBjPus16G!(ZIsVU;GB|pyE-Hv$9r`)^4IEx!l(DU90=BZ1{%Roxvb1J{Ya#afMN~#G;RzCM&O)9qZ0}uTDdQi9#c`t3UI!`ZZ8;02Cf=sOg36Bx>jpZINJ4zo~W!>3p1s~O@grI(< zLmOKAN$nHNLy|05R-1-B&Kq_g4dqy6M@4BYMk0BGl3SRXcvA%zX=cl42D(X2bNoXY zZ{{U|wiCbOv$$?H)CqtzY{HUp(6q#6n%fZ-HdjHAIWKRi;r=0vLq}phm0@fB`gbq? z>o4Z(xriMz{Rs(_Q%&y^#_{snw(Ghv$9cy)l0%=r*(lfM9|>HelBo3uj&%o{`ao|~ zaJU&}&@&IkMyc8Ks@|w|%h3XZauyFJep6F+aJQiK8d%R8*vyQ$g*}a=q#EpJogefq z#-T;IzQe0WHz?b4AhwMg2I3lD8GH@F8Z{4Ged#U6^j?jY4W%2BPj+pO1dy>P8lX}+ z^jO6|oN;FLMu9!D%}HaF*f_UcWZnCq|AsOu2^cm0fuz|OnWdvId`>*$kRCUDlzFPi zu_NE9jJ@$`b_lekFHUYF@ZChHUjMnw;GS{DTXu(aba?u3gZJ?Qk)OY6ay72Ii?CNyR$bqm6~QS~9zq`}rIF!on#G z5Ch@_815eJXfgWvXdlm-N8. */ + +#ifndef _BITS_FLOATN_COMMON_H +#define _BITS_FLOATN_COMMON_H + +#include +#include + +/* This header should be included at the bottom of each bits/floatn.h. + It defines the following macros for each _FloatN and _FloatNx type, + where the same definitions, or definitions based only on the macros + in bits/floatn.h, are appropriate for all glibc configurations. */ + +/* Defined to 1 if the current compiler invocation provides a + floating-point type with the right format for this type, and this + glibc includes corresponding *fN or *fNx interfaces for it. */ +#define __HAVE_FLOAT16 0 +#define __HAVE_FLOAT32 1 +#define __HAVE_FLOAT64 1 +#define __HAVE_FLOAT32X 1 +#define __HAVE_FLOAT128X 0 + +/* Defined to 1 if the corresponding __HAVE_ macro is 1 and the + type is the first with its format in the sequence of (the default + choices for) float, double, long double, _Float16, _Float32, + _Float64, _Float128, _Float32x, _Float64x, _Float128x for this + glibc; that is, if functions present once per floating-point format + rather than once per type are present for this type. + + All configurations supported by glibc have _Float32 the same format + as float, _Float64 and _Float32x the same format as double, the + _Float64x the same format as either long double or _Float128. No + configurations support _Float128x or, as of GCC 7, have compiler + support for a type meeting the requirements for _Float128x. */ +#define __HAVE_DISTINCT_FLOAT16 __HAVE_FLOAT16 +#define __HAVE_DISTINCT_FLOAT32 0 +#define __HAVE_DISTINCT_FLOAT64 0 +#define __HAVE_DISTINCT_FLOAT32X 0 +#define __HAVE_DISTINCT_FLOAT64X 0 +#define __HAVE_DISTINCT_FLOAT128X __HAVE_FLOAT128X + +/* Defined to 1 if the corresponding _FloatN type is not binary compatible + with the corresponding ISO C type in the current compilation unit as + opposed to __HAVE_DISTINCT_FLOATN, which indicates the default types built + in glibc. */ +#define __HAVE_FLOAT128_UNLIKE_LDBL (__HAVE_DISTINCT_FLOAT128 \ + && __LDBL_MANT_DIG__ != 113) + +/* Defined to 1 if any _FloatN or _FloatNx types that are not + ABI-distinct are however distinct types at the C language level (so + for the purposes of __builtin_types_compatible_p and _Generic). */ +#if __GNUC_PREREQ (7, 0) && !defined __cplusplus +# define __HAVE_FLOATN_NOT_TYPEDEF 1 +#else +# define __HAVE_FLOATN_NOT_TYPEDEF 0 +#endif + +#ifndef __ASSEMBLER__ + +/* Defined to concatenate the literal suffix to be used with _FloatN + or _FloatNx types, if __HAVE_ is 1. The corresponding + literal suffixes exist since GCC 7, for C only. */ +# if __HAVE_FLOAT16 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +/* No corresponding suffix available for this type. */ +# define __f16(x) ((_Float16) x##f) +# else +# define __f16(x) x##f16 +# endif +# endif + +# if __HAVE_FLOAT32 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# define __f32(x) x##f +# else +# define __f32(x) x##f32 +# endif +# endif + +# if __HAVE_FLOAT64 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# ifdef __NO_LONG_DOUBLE_MATH +# define __f64(x) x##l +# else +# define __f64(x) x +# endif +# else +# define __f64(x) x##f64 +# endif +# endif + +# if __HAVE_FLOAT32X +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# define __f32x(x) x +# else +# define __f32x(x) x##f32x +# endif +# endif + +# if __HAVE_FLOAT64X +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# if __HAVE_FLOAT64X_LONG_DOUBLE +# define __f64x(x) x##l +# else +# define __f64x(x) __f128 (x) +# endif +# else +# define __f64x(x) x##f64x +# endif +# endif + +# if __HAVE_FLOAT128X +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# error "_Float128X supported but no constant suffix" +# else +# define __f128x(x) x##f128x +# endif +# endif + +/* Defined to a complex type if __HAVE_ is 1. */ +# if __HAVE_FLOAT16 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef _Complex float __cfloat16 __attribute__ ((__mode__ (__HC__))); +# define __CFLOAT16 __cfloat16 +# else +# define __CFLOAT16 _Complex _Float16 +# endif +# endif + +# if __HAVE_FLOAT32 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# define __CFLOAT32 _Complex float +# else +# define __CFLOAT32 _Complex _Float32 +# endif +# endif + +# if __HAVE_FLOAT64 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# ifdef __NO_LONG_DOUBLE_MATH +# define __CFLOAT64 _Complex long double +# else +# define __CFLOAT64 _Complex double +# endif +# else +# define __CFLOAT64 _Complex _Float64 +# endif +# endif + +# if __HAVE_FLOAT32X +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# define __CFLOAT32X _Complex double +# else +# define __CFLOAT32X _Complex _Float32x +# endif +# endif + +# if __HAVE_FLOAT64X +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# if __HAVE_FLOAT64X_LONG_DOUBLE +# define __CFLOAT64X _Complex long double +# else +# define __CFLOAT64X __CFLOAT128 +# endif +# else +# define __CFLOAT64X _Complex _Float64x +# endif +# endif + +# if __HAVE_FLOAT128X +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# error "_Float128X supported but no complex type" +# else +# define __CFLOAT128X _Complex _Float128x +# endif +# endif + +/* The remaining of this file provides support for older compilers. */ +# if __HAVE_FLOAT16 + +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef float _Float16 __attribute__ ((__mode__ (__HF__))); +# endif + +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf16() ((_Float16) __builtin_huge_val ()) +# define __builtin_inff16() ((_Float16) __builtin_inf ()) +# define __builtin_nanf16(x) ((_Float16) __builtin_nan (x)) +# define __builtin_nansf16(x) ((_Float16) __builtin_nans (x)) +# endif + +# endif + +# if __HAVE_FLOAT32 + +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef float _Float32; +# endif + +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf32() (__builtin_huge_valf ()) +# define __builtin_inff32() (__builtin_inff ()) +# define __builtin_nanf32(x) (__builtin_nanf (x)) +# define __builtin_nansf32(x) (__builtin_nansf (x)) +# endif + +# endif + +# if __HAVE_FLOAT64 + +/* If double, long double and _Float64 all have the same set of + values, TS 18661-3 requires the usual arithmetic conversions on + long double and _Float64 to produce _Float64. For this to be the + case when building with a compiler without a distinct _Float64 + type, _Float64 must be a typedef for long double, not for + double. */ + +# ifdef __NO_LONG_DOUBLE_MATH + +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef long double _Float64; +# endif + +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf64() (__builtin_huge_vall ()) +# define __builtin_inff64() (__builtin_infl ()) +# define __builtin_nanf64(x) (__builtin_nanl (x)) +# define __builtin_nansf64(x) (__builtin_nansl (x)) +# endif + +# else + +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef double _Float64; +# endif + +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf64() (__builtin_huge_val ()) +# define __builtin_inff64() (__builtin_inf ()) +# define __builtin_nanf64(x) (__builtin_nan (x)) +# define __builtin_nansf64(x) (__builtin_nans (x)) +# endif + +# endif + +# endif + +# if __HAVE_FLOAT32X + +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef double _Float32x; +# endif + +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf32x() (__builtin_huge_val ()) +# define __builtin_inff32x() (__builtin_inf ()) +# define __builtin_nanf32x(x) (__builtin_nan (x)) +# define __builtin_nansf32x(x) (__builtin_nans (x)) +# endif + +# endif + +# if __HAVE_FLOAT64X + +# if __HAVE_FLOAT64X_LONG_DOUBLE + +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef long double _Float64x; +# endif + +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf64x() (__builtin_huge_vall ()) +# define __builtin_inff64x() (__builtin_infl ()) +# define __builtin_nanf64x(x) (__builtin_nanl (x)) +# define __builtin_nansf64x(x) (__builtin_nansl (x)) +# endif + +# else + +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef _Float128 _Float64x; +# endif + +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf64x() (__builtin_huge_valf128 ()) +# define __builtin_inff64x() (__builtin_inff128 ()) +# define __builtin_nanf64x(x) (__builtin_nanf128 (x)) +# define __builtin_nansf64x(x) (__builtin_nansf128 (x)) +# endif + +# endif + +# endif + +# if __HAVE_FLOAT128X + +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +# error "_Float128x supported but no type" +# endif + +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf128x() ((_Float128x) __builtin_huge_val ()) +# define __builtin_inff128x() ((_Float128x) __builtin_inf ()) +# define __builtin_nanf128x(x) ((_Float128x) __builtin_nan (x)) +# define __builtin_nansf128x(x) ((_Float128x) __builtin_nans (x)) +# endif + +# endif + +#endif /* !__ASSEMBLER__. */ + +#endif /* _BITS_FLOATN_COMMON_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3f3c90771b9658d0c0334f897fa738f70936be51 GIT binary patch literal 16450 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 b^tRo4K6WPBi~JUP*V)0d==iXP4e$R0dF=Ao literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h new file mode 100644 index 00000000..f7f3d056 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h @@ -0,0 +1,121 @@ +/* Macros to control TS 18661-3 glibc features on x86. + Copyright (C) 2017-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_FLOATN_H +#define _BITS_FLOATN_H + +#include + +/* Defined to 1 if the current compiler invocation provides a + floating-point type with the IEEE 754 binary128 format, and this + glibc includes corresponding *f128 interfaces for it. The required + libgcc support was added some time after the basic compiler + support, for x86_64 and x86. */ +#if (defined __x86_64__ \ + ? __GNUC_PREREQ (4, 3) \ + : (defined __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) +# define __HAVE_FLOAT128 1 +#else +# define __HAVE_FLOAT128 0 +#endif + +/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct + from the default float, double and long double types in this glibc. */ +#if __HAVE_FLOAT128 +# define __HAVE_DISTINCT_FLOAT128 1 +#else +# define __HAVE_DISTINCT_FLOAT128 0 +#endif + +/* Defined to 1 if the current compiler invocation provides a + floating-point type with the right format for _Float64x, and this + glibc includes corresponding *f64x interfaces for it. */ +#define __HAVE_FLOAT64X 1 + +/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format + of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has + the format of _Float128, which must be different from that of long + double. */ +#define __HAVE_FLOAT64X_LONG_DOUBLE 1 + +#ifndef __ASSEMBLER__ + +/* Defined to concatenate the literal suffix to be used with _Float128 + types, if __HAVE_FLOAT128 is 1. */ +# if __HAVE_FLOAT128 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +/* The literal suffix f128 exists only since GCC 7.0. */ +# define __f128(x) x##q +# else +# define __f128(x) x##f128 +# endif +# endif + +/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ +# if __HAVE_FLOAT128 +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +/* Add a typedef for older GCC compilers which don't natively support + _Complex _Float128. */ +typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); +# define __CFLOAT128 __cfloat128 +# else +# define __CFLOAT128 _Complex _Float128 +# endif +# endif + +/* The remaining of this file provides support for older compilers. */ +# if __HAVE_FLOAT128 + +/* The type _Float128 exists only since GCC 7.0. */ +# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) +typedef __float128 _Float128; +# endif + +/* __builtin_huge_valf128 doesn't exist before GCC 7.0. */ +# if !__GNUC_PREREQ (7, 0) +# define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) +# endif + +/* Older GCC has only a subset of built-in functions for _Float128 on + x86, and __builtin_infq is not usable in static initializers. + Converting a narrower sNaN to _Float128 produces a quiet NaN, so + attempts to use _Float128 sNaNs will not work properly with older + compilers. */ +# if !__GNUC_PREREQ (7, 0) +# define __builtin_copysignf128 __builtin_copysignq +# define __builtin_fabsf128 __builtin_fabsq +# define __builtin_inff128() ((_Float128) __builtin_inf ()) +# define __builtin_nanf128(x) ((_Float128) __builtin_nan (x)) +# define __builtin_nansf128(x) ((_Float128) __builtin_nans (x)) +# endif + +/* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, + e.g.: __builtin_signbitf128, before GCC 6. However, there has never + been a __builtin_signbitf128 in GCC and the type-generic builtin is + only available since GCC 6. */ +# if !__GNUC_PREREQ (6, 0) +# define __builtin_signbitf128 __signbitf128 +# endif + +# endif + +#endif /* !__ASSEMBLER__. */ + +#include + +#endif /* _BITS_FLOATN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..cfba6d5784125a59026fcc36eb8581e904ecf528 GIT binary patch literal 12673 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h new file mode 100644 index 00000000..243cea51 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h @@ -0,0 +1,33 @@ +/* Define __GLIBC_FLT_EVAL_METHOD. x86 version. + Copyright (C) 2016-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _MATH_H +# error "Never use directly; include instead." +#endif + +#ifdef __FLT_EVAL_METHOD__ +# if __FLT_EVAL_METHOD__ == -1 +# define __GLIBC_FLT_EVAL_METHOD 2 +# else +# define __GLIBC_FLT_EVAL_METHOD __FLT_EVAL_METHOD__ +# endif +#elif defined __x86_64__ +# define __GLIBC_FLT_EVAL_METHOD 0 +#else +# define __GLIBC_FLT_EVAL_METHOD 2 +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..745c437bb277eb37cc700a6abd3840f1d51df410 GIT binary patch literal 12274 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. */ + +#ifndef _MATH_H +# error "Never use directly; include instead." +#endif + +#ifdef __USE_ISOC99 + +/* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} + builtins are supported. */ +# ifdef __FP_FAST_FMA +# define FP_FAST_FMA 1 +# endif + +# ifdef __FP_FAST_FMAF +# define FP_FAST_FMAF 1 +# endif + +# ifdef __FP_FAST_FMAL +# define FP_FAST_FMAL 1 +# endif + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..126bf7128fe47f154e3773bb8b9e5fafdfcc8551 GIT binary patch literal 12146 zcmb7KKg{Gt72k-IrxS`IiU^@ogb)gGmiq{wu89yyNQ87D1p*gl#2ynTaizCZs6%LLH0Mit+SH%jB456 zy)}En=D)AMupLyt5mr zS`6mZ7ytf;zs`INRvmg=qlyvpPDPS>lQcx{q8GRd`{TDCURB-0>x3rOKE^F=Y!rW# zeP7%`031lSe5TT6A*C>c6QfyHomBjIl?&cP%%bCnmJO%*ftL(iKD3(kfjAYI6&EZo zdU;UpgKz$>m~k8J2HsZEa1F7PupvlJ1O(u6JgA|s2tBzpCGL(1el#Nd{*OP8BLoPU=zCSe0lIy|gO5dobsFp*^Az9H^ zXX@dI>Fodqw8X|h08{_U@=$cg7LPc98fz5pWJg<_&^h=Gz^rr#VB; zLaYl?x~jd==hJt-8!H<00V#pMp$Yo<^Gt48!6J*G+Ezye;59)?ly=PP?g~C&y@J-@ zbABn-R5#o+6Gynpm$01KraP0>yO zJ>}7=XDqM9U1ve|wFkS{vn~e>2oQR+Ebu6TD5~X-0ix3s(2N4!=@@ZS>H&fqUqgTx zaY6zlKH*hE_5%6FyU;3mN<|!qd{PNX3G@hYtAm~nCx(Czaz8=>d_qt4N&NO-wTVCOEfx1{4nw~u~(FK&-)T{`JD+YO)S zLc*fPJ}ReLQ^^vHy_HQmlnO+GR6$=^2A$sZAh3<1 zjPz~{3V<}RLLs1pHFN6?(|!$5YBf71WQLmT4n?K%1~)HpE5rB1PB78;iAbo{gcnSB z;mA~Q3uSA;pT3l;ZN0u6dQvP;bAY(QTBA^)CVqkS1ni9>J9w8_?>caRG2IN3rcM|x|~0CLe$rbbnQ)G@1w#3LKXy|5E7%*@7Yh`FJH zk#ezwMOMpmsQ!5|RJkUnRY%I5KwG)W^@|VRjw_c9ZYrcQ3!{r2Au26en!T04#x(1C z1~XgaGn5lF%UCTzY4bcx?YZkd41e5_mCzXj|6~o*JBd%x&=(KKr9Nx4Iy9bIiOuu-n9hQp;07yCrnCBph_i@Ackyy5ny)o zhGM~=)%tnT zT>2ohEBt5Qxws*+@oUZ2{Xu`+T|ENwKxwHpYF9Hd;~P=SH7ibu5N7)Ef?D%?{|oC9|-s)lrn%+%`@E z+J{a^p(hgN4(J0^9WTd;+@6Kgz5^Svqoq|TjPYHnECI3!f0#k+5eKg_p}U1pv(KrY{I_m!o;@4-W#KwrjY6 z?k;VjD0-xe8(7dx0ScwxL+q}l<)}I+TMIlGCE1}M8SwMbhb@qByh6=N6h?@VXck6wE~4v9rjV8gMC!E_Km(l z#iOERjnu2Qazc_)oof2I)k9cz{K(wSU=o&rriS*zY>s*<#6`b|$_OUBLc+~kDDZ{d zNh)Pm)R#^kE(G$2c<{hBUUNdjpDuf0{t&>VM?Zooe;n{bS-2FyK;*a(kGvbxxex`T zC3=4oHW_T4$1)i(6_u<4=UeO!f}v#Ks+r+4k`KOZGMIVFtYlQc{uHilB5hFSGnR}v zN13nVgvSWS#_|G~J!J^3Mh@=QAw)GQA*kP)(1zB2Rr>_d7g=!6X19!Xpj*{6r+04_aB<9_XP%0UQnU3{z0-%DqXh=#ES|3X zqox_)>cQwWv0gB+of&Zp2O335JK4{AKbT97rA4{9;*+x*l+!s7+tv*eajmZ`zQ$mU zng?#i%obyPuST1W(jzHXyLLnZ$XFB&P^mn6?9;!^c(Vqhz#iG4=%7~Gt-jzcEK#R. */ + +#ifndef _MATH_H +# error "Never use directly; include instead." +#endif + +#define __FP_LOGB0_IS_MIN 1 +#define __FP_LOGBNAN_IS_MIN 1 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..01c848aa3d1d54c9b36d3bea6a14cea640068232 GIT binary patch literal 12290 zcmb7KJ*Xu~6~1qbgb4U-}S3=B8ecwrL}F)|P_Ff-Oooy-6p1y6XIV=R2oP z_3Mkz|NGh9=Zlj?x~@x>iu64uFI3&6ib<8`EKg-i(~|J&ExPy;6{K3t5>2*sd%>$! zlJk~PRkv5)o!nvZzc)|PPPQqpsOWN*e(>JIvvkQ;yvk^uv$xiZ&tJRs;qyR-s;kDl z(fS8(mR!kHzm;j0l}o9JVwuv5cu~QZsj($JJ@>nka>pyxf~6q(od5Xm!Ky|lcx0=N z=cq>aAEqnO=~p-Y@rS=nd<1d!bY2pS4FK?^;nAd5Hu$O0C*e^vTF-Mhmgk9T{FRVT7}>L z@n@l)Qg5{KHtTFawObVxk7#8aZm}={53kl#_*Y|And7sCyDo1ZM-jj&Y#xpLqMr;gDaVk*^ze1!ENjx@wc3Cg3WBNf>oBqd2@ra5T;W~?u`G@^1b|Lm9}@~>tU~gPnFnO7V+{b&>i7hR ze8P*8Yy|R+3!yP`NJX58TvCae5@-R!P6pi_cJzSvdIozIO;QjUE)@tsPn%2r3}+FY zY^J>!DeN(M!LEXSHiiTRNRV9hjnIpi)FJ^jt%=qizkSIiP6l4WwqZJwBf?l!T?)PH zQYI6bM`W3@wylg0zWL&#umiTpW$I};qos5#V(LSFc^oZ1u-^BmpEeB@WhXB4O9X!C z7hA$rbAk1NsJKJ}fr^5Sh!O$ZOyitEMF=w8i4X}r@9-*yCBb&KdVc*=77_{sEm^UO zwVc}EB}*a=zDE)CAgLQxtxS(F0?A(LR!oL0;`G+Q&MdN1(r|6tFFv^*Hbtgz4Yo~o zgoB*VXw=y|Nj8ig^S9#^-G!aMJ%>{uh#O1rcagLNJk`d^eFOzhr6sQELg1#~fG-};~ z!UjbNY3(t{6Vk{FO93^moEmTF{;Y#qtk^E1GZbyRDXNuoxPFOy8NMgx{1tp3K|(PH zUZOS!S+ivf+(MdK@TZ%x+SaPWb5(4~;h-SSu-?fRs8L*CJOOi~zz;5DCc2g!;Fzut zjk=Xrhb>qjE}4MlcX~NJ&wKU;Q1rpPerh=mhm3tPE<{^Xsoav5+_QA<5AI+zin+M=b| zc?o<>lcr^Gs0(6-t_0mQR!dOXEc1hb%yu7oeLRqbPzi(hBqdYp8b4-3^596>`VTvGml&y&5^!tz)S%cB?Gog@~eu#I5a?_3&N<>c&S(- z38KZOCk1*&uO*Je(*y{O4C-Ffb|HX5g;{k;%NYFjEgzgU%Y4bp22P2#I#@#a<(of^ zv{M7Lrc$*gFgu`iS=O1?@Ak@YHe+nNf%y|mmIHsG z2JZA#*MT=;x%4P8BmC#zJGdb-`a#Q9K=R@v0wZB>Ub1LkcYIX2fw9$anGsX>ipYvL zjct8@^_w4tWz?tyZ2{Xr`+PY3i7jiQt)2SLJlVNG54n z$(_iRzHJ-<+Cj&s(9;^u9o!yJ;#{ZDegRdvtf6eq&L=~PaHyZ7F6sK2Qe0Om3em}R ze9r5+`OuiRno%8BRf!bucGk$cufHU)5GfnK|JJW zUc1e`g2QwTSI}OzjSNM%w77u*&6uE2`3+!qt}I8*L6Bu{-_S~ zDAB+?%3oRs-=OMIk+ZT^v!-&QCb=AH`o7maEE~RKc4jbwrI%Sj`=KXCZ7sw>zliDx zE<8iv<~-!rh1p3gWoOivrrsVXo%#$ZMqXOoq zaBUM+um{}SWfye80g;#Yu{*UbPs z0g{GESTaqTR@j{8_Ed$*RRA&<_!!bi(>{o^H^9<*H}?|BECGb8R{FC!_bM)O%02YtzLY*4PR`0B|C%CHY$ z+k|1Hu8Ec5*O07H_rT4Vo?^`J)o9sJx+D4Q(DqCK8H=(3s+D7pP5i$a=T`3&m?PVq zG){>f=Y~Pn(+~SUD5IKyQ{%r!nu(DaI{L!r)H4C;dBda3OGUPw_>E=ii!U-mpe_B@ z>^1_QO@!w4f76Vv0jHET%?!$G=oigJKf{YtVC0r{`X#vrcN%#P(gzTXclT*QE4K%IcY-K#w-CVv#|@vPTK zd>^Oryg2#F;;Yvei)$~d^3GpA&9C2sx#bVChfnUm^Z4H5?7;`wqX&-{i^XfVp)2JT zyM?^|^66r6^2&`@&adg`cNQ;C;DeW^-?;s?U*G=ifBXk`hSgpjt>#{uwQk. */ + +#ifndef _GETOPT_CORE_H +#define _GETOPT_CORE_H 1 + +/* This header should not be used directly; include getopt.h or + unistd.h instead. Unlike most bits headers, it does not have + a protective #error, because the guard macro for getopt.h in + gnulib is not fixed. */ + +__BEGIN_DECLS + +/* For communication from 'getopt' to the caller. + When 'getopt' finds an option that takes an argument, + the argument value is returned here. + Also, when 'ordering' is RETURN_IN_ORDER, + each non-option ARGV-element is returned here. */ + +extern char *optarg; + +/* Index in ARGV of the next element to be scanned. + This is used for communication to and from the caller + and for communication between successive calls to 'getopt'. + + On entry to 'getopt', zero means this is the first call; initialize. + + When 'getopt' returns -1, this is the index of the first of the + non-option elements that the caller should itself scan. + + Otherwise, 'optind' communicates from one call to the next + how much of ARGV has been scanned so far. */ + +extern int optind; + +/* Callers store zero here to inhibit the error message 'getopt' prints + for unrecognized options. */ + +extern int opterr; + +/* Set to an option character which was unrecognized. */ + +extern int optopt; + +/* Get definitions and prototypes for functions to process the + arguments in ARGV (ARGC of them, minus the program name) for + options given in OPTS. + + Return the option character from OPTS just read. Return -1 when + there are no more options. For unrecognized options, or options + missing arguments, 'optopt' is set to the option letter, and '?' is + returned. + + The OPTS string is a list of characters which are recognized option + letters, optionally followed by colons, specifying that that letter + takes an argument, to be placed in 'optarg'. + + If a letter in OPTS is followed by two colons, its argument is + optional. This behavior is specific to the GNU 'getopt'. + + The argument '--' causes premature termination of argument + scanning, explicitly telling 'getopt' that there are no more + options. + + If OPTS begins with '-', then non-option arguments are treated as + arguments to the option '\1'. This behavior is specific to the GNU + 'getopt'. If OPTS begins with '+', or POSIXLY_CORRECT is set in + the environment, then do not permute arguments. + + For standards compliance, the 'argv' argument has the type + char *const *, but this is inaccurate; if argument permutation is + enabled, the argv array (not the strings it points to) must be + writable. */ + +extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) + __THROW __nonnull ((2, 3)); + +__END_DECLS + +#endif /* getopt_core.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..fa72015a8d853d9e776e52af7a9ed505cf8014e9 GIT binary patch literal 14914 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h new file mode 100644 index 00000000..a7ef2856 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h @@ -0,0 +1,51 @@ +/* Declarations for getopt (POSIX compatibility shim). + Copyright (C) 1989-2023 Free Software Foundation, Inc. + Unlike the bulk of the getopt implementation, this file is NOT part + of gnulib. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _GETOPT_POSIX_H +#define _GETOPT_POSIX_H 1 + +#if !defined _UNISTD_H && !defined _STDIO_H +#error "Never include getopt_posix.h directly; use unistd.h instead." +#endif + +#include + +__BEGIN_DECLS + +#if defined __USE_POSIX2 && !defined __USE_POSIX_IMPLICITLY \ + && !defined __USE_GNU && !defined _GETOPT_H +/* GNU getopt has more functionality than POSIX getopt. When we are + explicitly conforming to POSIX and not GNU, and getopt.h (which is + not part of POSIX) has not been included, the extra functionality + is disabled. */ +# ifdef __REDIRECT +extern int __REDIRECT_NTH (getopt, (int ___argc, char *const *___argv, + const char *__shortopts), + __posix_getopt); +# else +extern int __posix_getopt (int ___argc, char *const *___argv, + const char *__shortopts) + __THROW __nonnull ((2, 3)); +# define getopt __posix_getopt +# endif +#endif + +__END_DECLS + +#endif /* getopt_posix.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ecdd18e468999da669bc36a384063fff71ca1ed1 GIT binary patch literal 12294 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 at{*(Qe!5tky!7HrH(${IXN%`2K>UB{L-gJN literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h new file mode 100644 index 00000000..73af2af9 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h @@ -0,0 +1,110 @@ +/* Handle feature test macros at the start of a header. + Copyright (C) 2016-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* This header is internal to glibc and should not be included outside + of glibc headers. Headers including it must define + __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION first. This header + cannot have multiple include guards because ISO C feature test + macros depend on the definition of the macro when an affected + header is included, not when the first system header is + included. */ + +#ifndef __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION +# error "Never include directly." +#endif + +#undef __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION + +#include + +/* ISO/IEC TR 24731-2:2010 defines the __STDC_WANT_LIB_EXT2__ + macro. */ +#undef __GLIBC_USE_LIB_EXT2 +#if (defined __USE_GNU \ + || (defined __STDC_WANT_LIB_EXT2__ && __STDC_WANT_LIB_EXT2__ > 0)) +# define __GLIBC_USE_LIB_EXT2 1 +#else +# define __GLIBC_USE_LIB_EXT2 0 +#endif + +/* ISO/IEC TS 18661-1:2014 defines the __STDC_WANT_IEC_60559_BFP_EXT__ + macro. Most but not all symbols enabled by that macro in TS + 18661-1 are enabled unconditionally in C2X. In C2X, the symbols in + Annex F still require a new feature test macro + __STDC_WANT_IEC_60559_EXT__ instead (C2X does not define + __STDC_WANT_IEC_60559_BFP_EXT__), while a few features from TS + 18661-1 are not included in C2X (and thus should depend on + __STDC_WANT_IEC_60559_BFP_EXT__ even when C2X features are + enabled). + + __GLIBC_USE (IEC_60559_BFP_EXT) controls those features from TS + 18661-1 not included in C2X. + + __GLIBC_USE (IEC_60559_BFP_EXT_C2X) controls those features from TS + 18661-1 that are also included in C2X (with no feature test macro + required in C2X). + + __GLIBC_USE (IEC_60559_EXT) controls those features from TS 18661-1 + that are included in C2X but conditional on + __STDC_WANT_IEC_60559_EXT__. (There are currently no features + conditional on __STDC_WANT_IEC_60559_EXT__ that are not in TS + 18661-1.) */ +#undef __GLIBC_USE_IEC_60559_BFP_EXT +#if defined __USE_GNU || defined __STDC_WANT_IEC_60559_BFP_EXT__ +# define __GLIBC_USE_IEC_60559_BFP_EXT 1 +#else +# define __GLIBC_USE_IEC_60559_BFP_EXT 0 +#endif +#undef __GLIBC_USE_IEC_60559_BFP_EXT_C2X +#if __GLIBC_USE (IEC_60559_BFP_EXT) || __GLIBC_USE (ISOC2X) +# define __GLIBC_USE_IEC_60559_BFP_EXT_C2X 1 +#else +# define __GLIBC_USE_IEC_60559_BFP_EXT_C2X 0 +#endif +#undef __GLIBC_USE_IEC_60559_EXT +#if __GLIBC_USE (IEC_60559_BFP_EXT) || defined __STDC_WANT_IEC_60559_EXT__ +# define __GLIBC_USE_IEC_60559_EXT 1 +#else +# define __GLIBC_USE_IEC_60559_EXT 0 +#endif + +/* ISO/IEC TS 18661-4:2015 defines the + __STDC_WANT_IEC_60559_FUNCS_EXT__ macro. Other than the reduction + functions, the symbols from this TS are enabled unconditionally in + C2X. */ +#undef __GLIBC_USE_IEC_60559_FUNCS_EXT +#if defined __USE_GNU || defined __STDC_WANT_IEC_60559_FUNCS_EXT__ +# define __GLIBC_USE_IEC_60559_FUNCS_EXT 1 +#else +# define __GLIBC_USE_IEC_60559_FUNCS_EXT 0 +#endif +#undef __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X +#if __GLIBC_USE (IEC_60559_FUNCS_EXT) || __GLIBC_USE (ISOC2X) +# define __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X 1 +#else +# define __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X 0 +#endif + +/* ISO/IEC TS 18661-3:2015 defines the + __STDC_WANT_IEC_60559_TYPES_EXT__ macro. */ +#undef __GLIBC_USE_IEC_60559_TYPES_EXT +#if defined __USE_GNU || defined __STDC_WANT_IEC_60559_TYPES_EXT__ +# define __GLIBC_USE_IEC_60559_TYPES_EXT 1 +#else +# define __GLIBC_USE_IEC_60559_TYPES_EXT 0 +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..f054e414690ec1d49764ec42e44a4a7452c02273 GIT binary patch literal 12959 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 u0M^Ga*7~{R_|W=8ClB@E_o|mMX($I literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h new file mode 100644 index 00000000..2db2819c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h @@ -0,0 +1,332 @@ +/* Empty definitions required for __MATHCALL_VEC unfolding in mathcalls.h. + Copyright (C) 2014-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _MATH_H +# error "Never include directly;\ + include instead." +#endif + +/* Needed definitions could be generated with: + for func in $(grep __MATHCALL_VEC math/bits/mathcalls.h |\ + sed -r "s|__MATHCALL_VEC.?\(||; s|,.*||"); do + echo "#define __DECL_SIMD_${func}"; + echo "#define __DECL_SIMD_${func}f"; + echo "#define __DECL_SIMD_${func}l"; + done + */ + +#ifndef _BITS_LIBM_SIMD_DECL_STUBS_H +#define _BITS_LIBM_SIMD_DECL_STUBS_H 1 + +#define __DECL_SIMD_cos +#define __DECL_SIMD_cosf +#define __DECL_SIMD_cosl +#define __DECL_SIMD_cosf16 +#define __DECL_SIMD_cosf32 +#define __DECL_SIMD_cosf64 +#define __DECL_SIMD_cosf128 +#define __DECL_SIMD_cosf32x +#define __DECL_SIMD_cosf64x +#define __DECL_SIMD_cosf128x + +#define __DECL_SIMD_sin +#define __DECL_SIMD_sinf +#define __DECL_SIMD_sinl +#define __DECL_SIMD_sinf16 +#define __DECL_SIMD_sinf32 +#define __DECL_SIMD_sinf64 +#define __DECL_SIMD_sinf128 +#define __DECL_SIMD_sinf32x +#define __DECL_SIMD_sinf64x +#define __DECL_SIMD_sinf128x + +#define __DECL_SIMD_sincos +#define __DECL_SIMD_sincosf +#define __DECL_SIMD_sincosl +#define __DECL_SIMD_sincosf16 +#define __DECL_SIMD_sincosf32 +#define __DECL_SIMD_sincosf64 +#define __DECL_SIMD_sincosf128 +#define __DECL_SIMD_sincosf32x +#define __DECL_SIMD_sincosf64x +#define __DECL_SIMD_sincosf128x + +#define __DECL_SIMD_log +#define __DECL_SIMD_logf +#define __DECL_SIMD_logl +#define __DECL_SIMD_logf16 +#define __DECL_SIMD_logf32 +#define __DECL_SIMD_logf64 +#define __DECL_SIMD_logf128 +#define __DECL_SIMD_logf32x +#define __DECL_SIMD_logf64x +#define __DECL_SIMD_logf128x + +#define __DECL_SIMD_exp +#define __DECL_SIMD_expf +#define __DECL_SIMD_expl +#define __DECL_SIMD_expf16 +#define __DECL_SIMD_expf32 +#define __DECL_SIMD_expf64 +#define __DECL_SIMD_expf128 +#define __DECL_SIMD_expf32x +#define __DECL_SIMD_expf64x +#define __DECL_SIMD_expf128x + +#define __DECL_SIMD_pow +#define __DECL_SIMD_powf +#define __DECL_SIMD_powl +#define __DECL_SIMD_powf16 +#define __DECL_SIMD_powf32 +#define __DECL_SIMD_powf64 +#define __DECL_SIMD_powf128 +#define __DECL_SIMD_powf32x +#define __DECL_SIMD_powf64x +#define __DECL_SIMD_powf128x + +#define __DECL_SIMD_acos +#define __DECL_SIMD_acosf +#define __DECL_SIMD_acosl +#define __DECL_SIMD_acosf16 +#define __DECL_SIMD_acosf32 +#define __DECL_SIMD_acosf64 +#define __DECL_SIMD_acosf128 +#define __DECL_SIMD_acosf32x +#define __DECL_SIMD_acosf64x +#define __DECL_SIMD_acosf128x + +#define __DECL_SIMD_atan +#define __DECL_SIMD_atanf +#define __DECL_SIMD_atanl +#define __DECL_SIMD_atanf16 +#define __DECL_SIMD_atanf32 +#define __DECL_SIMD_atanf64 +#define __DECL_SIMD_atanf128 +#define __DECL_SIMD_atanf32x +#define __DECL_SIMD_atanf64x +#define __DECL_SIMD_atanf128x + +#define __DECL_SIMD_asin +#define __DECL_SIMD_asinf +#define __DECL_SIMD_asinl +#define __DECL_SIMD_asinf16 +#define __DECL_SIMD_asinf32 +#define __DECL_SIMD_asinf64 +#define __DECL_SIMD_asinf128 +#define __DECL_SIMD_asinf32x +#define __DECL_SIMD_asinf64x +#define __DECL_SIMD_asinf128x + +#define __DECL_SIMD_hypot +#define __DECL_SIMD_hypotf +#define __DECL_SIMD_hypotl +#define __DECL_SIMD_hypotf16 +#define __DECL_SIMD_hypotf32 +#define __DECL_SIMD_hypotf64 +#define __DECL_SIMD_hypotf128 +#define __DECL_SIMD_hypotf32x +#define __DECL_SIMD_hypotf64x +#define __DECL_SIMD_hypotf128x + +#define __DECL_SIMD_exp2 +#define __DECL_SIMD_exp2f +#define __DECL_SIMD_exp2l +#define __DECL_SIMD_exp2f16 +#define __DECL_SIMD_exp2f32 +#define __DECL_SIMD_exp2f64 +#define __DECL_SIMD_exp2f128 +#define __DECL_SIMD_exp2f32x +#define __DECL_SIMD_exp2f64x +#define __DECL_SIMD_exp2f128x + +#define __DECL_SIMD_exp10 +#define __DECL_SIMD_exp10f +#define __DECL_SIMD_exp10l +#define __DECL_SIMD_exp10f16 +#define __DECL_SIMD_exp10f32 +#define __DECL_SIMD_exp10f64 +#define __DECL_SIMD_exp10f128 +#define __DECL_SIMD_exp10f32x +#define __DECL_SIMD_exp10f64x +#define __DECL_SIMD_exp10f128x + +#define __DECL_SIMD_cosh +#define __DECL_SIMD_coshf +#define __DECL_SIMD_coshl +#define __DECL_SIMD_coshf16 +#define __DECL_SIMD_coshf32 +#define __DECL_SIMD_coshf64 +#define __DECL_SIMD_coshf128 +#define __DECL_SIMD_coshf32x +#define __DECL_SIMD_coshf64x +#define __DECL_SIMD_coshf128x + +#define __DECL_SIMD_expm1 +#define __DECL_SIMD_expm1f +#define __DECL_SIMD_expm1l +#define __DECL_SIMD_expm1f16 +#define __DECL_SIMD_expm1f32 +#define __DECL_SIMD_expm1f64 +#define __DECL_SIMD_expm1f128 +#define __DECL_SIMD_expm1f32x +#define __DECL_SIMD_expm1f64x +#define __DECL_SIMD_expm1f128x + +#define __DECL_SIMD_sinh +#define __DECL_SIMD_sinhf +#define __DECL_SIMD_sinhl +#define __DECL_SIMD_sinhf16 +#define __DECL_SIMD_sinhf32 +#define __DECL_SIMD_sinhf64 +#define __DECL_SIMD_sinhf128 +#define __DECL_SIMD_sinhf32x +#define __DECL_SIMD_sinhf64x +#define __DECL_SIMD_sinhf128x + +#define __DECL_SIMD_cbrt +#define __DECL_SIMD_cbrtf +#define __DECL_SIMD_cbrtl +#define __DECL_SIMD_cbrtf16 +#define __DECL_SIMD_cbrtf32 +#define __DECL_SIMD_cbrtf64 +#define __DECL_SIMD_cbrtf128 +#define __DECL_SIMD_cbrtf32x +#define __DECL_SIMD_cbrtf64x +#define __DECL_SIMD_cbrtf128x + +#define __DECL_SIMD_atan2 +#define __DECL_SIMD_atan2f +#define __DECL_SIMD_atan2l +#define __DECL_SIMD_atan2f16 +#define __DECL_SIMD_atan2f32 +#define __DECL_SIMD_atan2f64 +#define __DECL_SIMD_atan2f128 +#define __DECL_SIMD_atan2f32x +#define __DECL_SIMD_atan2f64x +#define __DECL_SIMD_atan2f128x + +#define __DECL_SIMD_log10 +#define __DECL_SIMD_log10f +#define __DECL_SIMD_log10l +#define __DECL_SIMD_log10f16 +#define __DECL_SIMD_log10f32 +#define __DECL_SIMD_log10f64 +#define __DECL_SIMD_log10f128 +#define __DECL_SIMD_log10f32x +#define __DECL_SIMD_log10f64x +#define __DECL_SIMD_log10f128x + +#define __DECL_SIMD_log2 +#define __DECL_SIMD_log2f +#define __DECL_SIMD_log2l +#define __DECL_SIMD_log2f16 +#define __DECL_SIMD_log2f32 +#define __DECL_SIMD_log2f64 +#define __DECL_SIMD_log2f128 +#define __DECL_SIMD_log2f32x +#define __DECL_SIMD_log2f64x +#define __DECL_SIMD_log2f128x + +#define __DECL_SIMD_log1p +#define __DECL_SIMD_log1pf +#define __DECL_SIMD_log1pl +#define __DECL_SIMD_log1pf16 +#define __DECL_SIMD_log1pf32 +#define __DECL_SIMD_log1pf64 +#define __DECL_SIMD_log1pf128 +#define __DECL_SIMD_log1pf32x +#define __DECL_SIMD_log1pf64x +#define __DECL_SIMD_log1pf128x + +#define __DECL_SIMD_atanh +#define __DECL_SIMD_atanhf +#define __DECL_SIMD_atanhl +#define __DECL_SIMD_atanhf16 +#define __DECL_SIMD_atanhf32 +#define __DECL_SIMD_atanhf64 +#define __DECL_SIMD_atanhf128 +#define __DECL_SIMD_atanhf32x +#define __DECL_SIMD_atanhf64x +#define __DECL_SIMD_atanhf128x + +#define __DECL_SIMD_acosh +#define __DECL_SIMD_acoshf +#define __DECL_SIMD_acoshl +#define __DECL_SIMD_acoshf16 +#define __DECL_SIMD_acoshf32 +#define __DECL_SIMD_acoshf64 +#define __DECL_SIMD_acoshf128 +#define __DECL_SIMD_acoshf32x +#define __DECL_SIMD_acoshf64x +#define __DECL_SIMD_acoshf128x + +#define __DECL_SIMD_erf +#define __DECL_SIMD_erff +#define __DECL_SIMD_erfl +#define __DECL_SIMD_erff16 +#define __DECL_SIMD_erff32 +#define __DECL_SIMD_erff64 +#define __DECL_SIMD_erff128 +#define __DECL_SIMD_erff32x +#define __DECL_SIMD_erff64x +#define __DECL_SIMD_erff128x + +#define __DECL_SIMD_tanh +#define __DECL_SIMD_tanhf +#define __DECL_SIMD_tanhl +#define __DECL_SIMD_tanhf16 +#define __DECL_SIMD_tanhf32 +#define __DECL_SIMD_tanhf64 +#define __DECL_SIMD_tanhf128 +#define __DECL_SIMD_tanhf32x +#define __DECL_SIMD_tanhf64x +#define __DECL_SIMD_tanhf128x + +#define __DECL_SIMD_asinh +#define __DECL_SIMD_asinhf +#define __DECL_SIMD_asinhl +#define __DECL_SIMD_asinhf16 +#define __DECL_SIMD_asinhf32 +#define __DECL_SIMD_asinhf64 +#define __DECL_SIMD_asinhf128 +#define __DECL_SIMD_asinhf32x +#define __DECL_SIMD_asinhf64x +#define __DECL_SIMD_asinhf128x + +#define __DECL_SIMD_erfc +#define __DECL_SIMD_erfcf +#define __DECL_SIMD_erfcl +#define __DECL_SIMD_erfcf16 +#define __DECL_SIMD_erfcf32 +#define __DECL_SIMD_erfcf64 +#define __DECL_SIMD_erfcf128 +#define __DECL_SIMD_erfcf32x +#define __DECL_SIMD_erfcf64x +#define __DECL_SIMD_erfcf128x + +#define __DECL_SIMD_tan +#define __DECL_SIMD_tanf +#define __DECL_SIMD_tanl +#define __DECL_SIMD_tanf16 +#define __DECL_SIMD_tanf32 +#define __DECL_SIMD_tanf64 +#define __DECL_SIMD_tanf128 +#define __DECL_SIMD_tanf32x +#define __DECL_SIMD_tanf64x +#define __DECL_SIMD_tanf128x +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1da2b397850235d60e30f5415770d3daf814c7b9 GIT binary patch literal 33821 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h new file mode 100644 index 00000000..978515dc --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h @@ -0,0 +1,99 @@ +/* Minimum guaranteed maximum values for system limits. Linux version. + Copyright (C) 1993-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; see the file COPYING.LIB. If + not, see . */ + +/* The kernel header pollutes the namespace with the NR_OPEN symbol + and defines LINK_MAX although filesystems have different maxima. A + similar thing is true for OPEN_MAX: the limit can be changed at + runtime and therefore the macro must not be defined. Remove this + after including the header if necessary. */ +#ifndef NR_OPEN +# define __undef_NR_OPEN +#endif +#ifndef LINK_MAX +# define __undef_LINK_MAX +#endif +#ifndef OPEN_MAX +# define __undef_OPEN_MAX +#endif +#ifndef ARG_MAX +# define __undef_ARG_MAX +#endif + +/* The kernel sources contain a file with all the needed information. */ +#include + +/* Have to remove NR_OPEN? */ +#ifdef __undef_NR_OPEN +# undef NR_OPEN +# undef __undef_NR_OPEN +#endif +/* Have to remove LINK_MAX? */ +#ifdef __undef_LINK_MAX +# undef LINK_MAX +# undef __undef_LINK_MAX +#endif +/* Have to remove OPEN_MAX? */ +#ifdef __undef_OPEN_MAX +# undef OPEN_MAX +# undef __undef_OPEN_MAX +#endif +/* Have to remove ARG_MAX? */ +#ifdef __undef_ARG_MAX +# undef ARG_MAX +# undef __undef_ARG_MAX +#endif + +/* The number of data keys per process. */ +#define _POSIX_THREAD_KEYS_MAX 128 +/* This is the value this implementation supports. */ +#define PTHREAD_KEYS_MAX 1024 + +/* Controlling the iterations of destructors for thread-specific data. */ +#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 +/* Number of iterations this implementation does. */ +#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS + +/* The number of threads per process. */ +#define _POSIX_THREAD_THREADS_MAX 64 +/* We have no predefined limit on the number of threads. */ +#undef PTHREAD_THREADS_MAX + +/* Maximum amount by which a process can decrease its asynchronous I/O + priority level. */ +#define AIO_PRIO_DELTA_MAX 20 + +/* Arrange for the definition of PTHREAD_STACK_MIN. */ +#include + +/* Maximum number of timer expiration overruns. */ +#define DELAYTIMER_MAX 2147483647 + +/* Maximum tty name length. */ +#define TTY_NAME_MAX 32 + +/* Maximum login name length. This is arbitrary. */ +#define LOGIN_NAME_MAX 256 + +/* Maximum host name length. */ +#define HOST_NAME_MAX 64 + +/* Maximum message queue priority level. */ +#define MQ_PRIO_MAX 32768 + +/* Maximum value the semaphore can have. */ +#define SEM_VALUE_MAX (2147483647) diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d488d680928c9ab55a8f15895e6562f62439dc7e GIT binary patch literal 13619 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 OtZU`9*-7@y5%zy. */ + +/* long double is distinct from double, so there is nothing to + define here. */ +#define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..0b535e339966f8ae5811577c9700a4ec29cab121 GIT binary patch literal 12238 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 dK6%A%FCf4DHt>J#)z?1$ivIuPQ4Xw literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h new file mode 100644 index 00000000..c28a3d21 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h @@ -0,0 +1,147 @@ +/* Platform-specific SIMD declarations of math functions. + Copyright (C) 2014-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _MATH_H +# error "Never include directly;\ + include instead." +#endif + +/* Get default empty definitions for simd declarations. */ +#include + +#if defined __x86_64__ && defined __FAST_MATH__ +# if defined _OPENMP && _OPENMP >= 201307 +/* OpenMP case. */ +# define __DECL_SIMD_x86_64 _Pragma ("omp declare simd notinbranch") +# elif __GNUC_PREREQ (6,0) +/* W/o OpenMP use GCC 6.* __attribute__ ((__simd__)). */ +# define __DECL_SIMD_x86_64 __attribute__ ((__simd__ ("notinbranch"))) +# endif + +# ifdef __DECL_SIMD_x86_64 +# undef __DECL_SIMD_cos +# define __DECL_SIMD_cos __DECL_SIMD_x86_64 +# undef __DECL_SIMD_cosf +# define __DECL_SIMD_cosf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_sin +# define __DECL_SIMD_sin __DECL_SIMD_x86_64 +# undef __DECL_SIMD_sinf +# define __DECL_SIMD_sinf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_sincos +# define __DECL_SIMD_sincos __DECL_SIMD_x86_64 +# undef __DECL_SIMD_sincosf +# define __DECL_SIMD_sincosf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_log +# define __DECL_SIMD_log __DECL_SIMD_x86_64 +# undef __DECL_SIMD_logf +# define __DECL_SIMD_logf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_exp +# define __DECL_SIMD_exp __DECL_SIMD_x86_64 +# undef __DECL_SIMD_expf +# define __DECL_SIMD_expf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_pow +# define __DECL_SIMD_pow __DECL_SIMD_x86_64 +# undef __DECL_SIMD_powf +# define __DECL_SIMD_powf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_acos +# define __DECL_SIMD_acos __DECL_SIMD_x86_64 +# undef __DECL_SIMD_acosf +# define __DECL_SIMD_acosf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_atan +# define __DECL_SIMD_atan __DECL_SIMD_x86_64 +# undef __DECL_SIMD_atanf +# define __DECL_SIMD_atanf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_asin +# define __DECL_SIMD_asin __DECL_SIMD_x86_64 +# undef __DECL_SIMD_asinf +# define __DECL_SIMD_asinf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_hypot +# define __DECL_SIMD_hypot __DECL_SIMD_x86_64 +# undef __DECL_SIMD_hypotf +# define __DECL_SIMD_hypotf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_exp2 +# define __DECL_SIMD_exp2 __DECL_SIMD_x86_64 +# undef __DECL_SIMD_exp2f +# define __DECL_SIMD_exp2f __DECL_SIMD_x86_64 +# undef __DECL_SIMD_exp10 +# define __DECL_SIMD_exp10 __DECL_SIMD_x86_64 +# undef __DECL_SIMD_exp10f +# define __DECL_SIMD_exp10f __DECL_SIMD_x86_64 +# undef __DECL_SIMD_cosh +# define __DECL_SIMD_cosh __DECL_SIMD_x86_64 +# undef __DECL_SIMD_coshf +# define __DECL_SIMD_coshf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_expm1 +# define __DECL_SIMD_expm1 __DECL_SIMD_x86_64 +# undef __DECL_SIMD_expm1f +# define __DECL_SIMD_expm1f __DECL_SIMD_x86_64 +# undef __DECL_SIMD_sinh +# define __DECL_SIMD_sinh __DECL_SIMD_x86_64 +# undef __DECL_SIMD_sinhf +# define __DECL_SIMD_sinhf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_cbrt +# define __DECL_SIMD_cbrt __DECL_SIMD_x86_64 +# undef __DECL_SIMD_cbrtf +# define __DECL_SIMD_cbrtf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_atan2 +# define __DECL_SIMD_atan2 __DECL_SIMD_x86_64 +# undef __DECL_SIMD_atan2f +# define __DECL_SIMD_atan2f __DECL_SIMD_x86_64 +# undef __DECL_SIMD_log10 +# define __DECL_SIMD_log10 __DECL_SIMD_x86_64 +# undef __DECL_SIMD_log10f +# define __DECL_SIMD_log10f __DECL_SIMD_x86_64 +# undef __DECL_SIMD_log2 +# define __DECL_SIMD_log2 __DECL_SIMD_x86_64 +# undef __DECL_SIMD_log2f +# define __DECL_SIMD_log2f __DECL_SIMD_x86_64 +# undef __DECL_SIMD_log1p +# define __DECL_SIMD_log1p __DECL_SIMD_x86_64 +# undef __DECL_SIMD_log1pf +# define __DECL_SIMD_log1pf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_atanh +# define __DECL_SIMD_atanh __DECL_SIMD_x86_64 +# undef __DECL_SIMD_atanhf +# define __DECL_SIMD_atanhf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_acosh +# define __DECL_SIMD_acosh __DECL_SIMD_x86_64 +# undef __DECL_SIMD_acoshf +# define __DECL_SIMD_acoshf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_erf +# define __DECL_SIMD_erf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_erff +# define __DECL_SIMD_erff __DECL_SIMD_x86_64 +# undef __DECL_SIMD_tanh +# define __DECL_SIMD_tanh __DECL_SIMD_x86_64 +# undef __DECL_SIMD_tanhf +# define __DECL_SIMD_tanhf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_asinh +# define __DECL_SIMD_asinh __DECL_SIMD_x86_64 +# undef __DECL_SIMD_asinhf +# define __DECL_SIMD_asinhf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_erfc +# define __DECL_SIMD_erfc __DECL_SIMD_x86_64 +# undef __DECL_SIMD_erfcf +# define __DECL_SIMD_erfcf __DECL_SIMD_x86_64 +# undef __DECL_SIMD_tan +# define __DECL_SIMD_tan __DECL_SIMD_x86_64 +# undef __DECL_SIMD_tanf +# define __DECL_SIMD_tanf __DECL_SIMD_x86_64 + +# endif +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..c6bde2f3447cd4c3ad00661dea934386fde6dfb9 GIT binary patch literal 12176 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 P`@+LlcE5bM+wJ}jk9*q# literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h new file mode 100644 index 00000000..20893958 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h @@ -0,0 +1,45 @@ +/* Prototype declarations for math classification macros helpers. + Copyright (C) 2017-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* Classify given number. */ +__MATHDECL_ALIAS (int, __fpclassify,, (_Mdouble_ __value), fpclassify) + __attribute__ ((__const__)); + +/* Test for negative number. */ +__MATHDECL_ALIAS (int, __signbit,, (_Mdouble_ __value), signbit) + __attribute__ ((__const__)); + +/* Return 0 if VALUE is finite or NaN, +1 if it + is +Infinity, -1 if it is -Infinity. */ +__MATHDECL_ALIAS (int, __isinf,, (_Mdouble_ __value), isinf) + __attribute__ ((__const__)); + +/* Return nonzero if VALUE is finite and not NaN. Used by isfinite macro. */ +__MATHDECL_ALIAS (int, __finite,, (_Mdouble_ __value), finite) + __attribute__ ((__const__)); + +/* Return nonzero if VALUE is not a number. */ +__MATHDECL_ALIAS (int, __isnan,, (_Mdouble_ __value), isnan) + __attribute__ ((__const__)); + +/* Test equality. */ +__MATHDECL_ALIAS (int, __iseqsig,, (_Mdouble_ __x, _Mdouble_ __y), iseqsig); + +/* Test for signaling NaN. */ +__MATHDECL_ALIAS (int, __issignaling,, (_Mdouble_ __value), issignaling) + __attribute__ ((__const__)); diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..40a8b0ea7c9c7e5a5a760d01522b2d115299d4b9 GIT binary patch literal 13421 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h new file mode 100644 index 00000000..a0388c90 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h @@ -0,0 +1,436 @@ +/* Prototype declarations for math functions; helper file for . + Copyright (C) 1996-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* NOTE: Because of the special way this file is used by , this + file must NOT be protected from multiple inclusion as header files + usually are. + + This file provides prototype declarations for the math functions. + Most functions are declared using the macro: + + __MATHCALL (NAME,[_r], (ARGS...)); + + This means there is a function `NAME' returning `double' and a function + `NAMEf' returning `float'. Each place `_Mdouble_' appears in the + prototype, that is actually `double' in the prototype for `NAME' and + `float' in the prototype for `NAMEf'. Reentrant variant functions are + called `NAME_r' and `NAMEf_r'. + + Functions returning other types like `int' are declared using the macro: + + __MATHDECL (TYPE, NAME,[_r], (ARGS...)); + + This is just like __MATHCALL but for a function returning `TYPE' + instead of `_Mdouble_'. In all of these cases, there is still + both a `NAME' and a `NAMEf' that takes `float' arguments. + + Note that there must be no whitespace before the argument passed for + NAME, to make token pasting work with -traditional. */ + +#ifndef _MATH_H +# error "Never include directly; include instead." +#endif + + +/* Trigonometric functions. */ + +/* Arc cosine of X. */ +__MATHCALL_VEC (acos,, (_Mdouble_ __x)); +/* Arc sine of X. */ +__MATHCALL_VEC (asin,, (_Mdouble_ __x)); +/* Arc tangent of X. */ +__MATHCALL_VEC (atan,, (_Mdouble_ __x)); +/* Arc tangent of Y/X. */ +__MATHCALL_VEC (atan2,, (_Mdouble_ __y, _Mdouble_ __x)); + +/* Cosine of X. */ +__MATHCALL_VEC (cos,, (_Mdouble_ __x)); +/* Sine of X. */ +__MATHCALL_VEC (sin,, (_Mdouble_ __x)); +/* Tangent of X. */ +__MATHCALL_VEC (tan,, (_Mdouble_ __x)); + +/* Hyperbolic functions. */ + +/* Hyperbolic cosine of X. */ +__MATHCALL_VEC (cosh,, (_Mdouble_ __x)); +/* Hyperbolic sine of X. */ +__MATHCALL_VEC (sinh,, (_Mdouble_ __x)); +/* Hyperbolic tangent of X. */ +__MATHCALL_VEC (tanh,, (_Mdouble_ __x)); + +#ifdef __USE_GNU +/* Cosine and sine of X. */ +__MATHDECL_VEC (void,sincos,, + (_Mdouble_ __x, _Mdouble_ *__sinx, _Mdouble_ *__cosx)); +#endif + +#if defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 +/* Hyperbolic arc cosine of X. */ +__MATHCALL_VEC (acosh,, (_Mdouble_ __x)); +/* Hyperbolic arc sine of X. */ +__MATHCALL_VEC (asinh,, (_Mdouble_ __x)); +/* Hyperbolic arc tangent of X. */ +__MATHCALL_VEC (atanh,, (_Mdouble_ __x)); +#endif + +/* Exponential and logarithmic functions. */ + +/* Exponential function of X. */ +__MATHCALL_VEC (exp,, (_Mdouble_ __x)); + +/* Break VALUE into a normalized fraction and an integral power of 2. */ +__MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent)); + +/* X times (two to the EXP power). */ +__MATHCALL (ldexp,, (_Mdouble_ __x, int __exponent)); + +/* Natural logarithm of X. */ +__MATHCALL_VEC (log,, (_Mdouble_ __x)); + +/* Base-ten logarithm of X. */ +__MATHCALL_VEC (log10,, (_Mdouble_ __x)); + +/* Break VALUE into integral and fractional parts. */ +__MATHCALL (modf,, (_Mdouble_ __x, _Mdouble_ *__iptr)) __nonnull ((2)); + +#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C2X) +/* Compute exponent to base ten. */ +__MATHCALL_VEC (exp10,, (_Mdouble_ __x)); +#endif + +#if defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 +/* Return exp(X) - 1. */ +__MATHCALL_VEC (expm1,, (_Mdouble_ __x)); + +/* Return log(1 + X). */ +__MATHCALL_VEC (log1p,, (_Mdouble_ __x)); + +/* Return the base 2 signed integral exponent of X. */ +__MATHCALL (logb,, (_Mdouble_ __x)); +#endif + +#ifdef __USE_ISOC99 +/* Compute base-2 exponential of X. */ +__MATHCALL_VEC (exp2,, (_Mdouble_ __x)); + +/* Compute base-2 logarithm of X. */ +__MATHCALL_VEC (log2,, (_Mdouble_ __x)); +#endif + + +/* Power functions. */ + +/* Return X to the Y power. */ +__MATHCALL_VEC (pow,, (_Mdouble_ __x, _Mdouble_ __y)); + +/* Return the square root of X. */ +__MATHCALL (sqrt,, (_Mdouble_ __x)); + +#if defined __USE_XOPEN || defined __USE_ISOC99 +/* Return `sqrt(X*X + Y*Y)'. */ +__MATHCALL_VEC (hypot,, (_Mdouble_ __x, _Mdouble_ __y)); +#endif + +#if defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 +/* Return the cube root of X. */ +__MATHCALL_VEC (cbrt,, (_Mdouble_ __x)); +#endif + + +/* Nearest integer, absolute value, and remainder functions. */ + +/* Smallest integral value not less than X. */ +__MATHCALLX (ceil,, (_Mdouble_ __x), (__const__)); + +/* Absolute value of X. */ +__MATHCALLX (fabs,, (_Mdouble_ __x), (__const__)); + +/* Largest integer not greater than X. */ +__MATHCALLX (floor,, (_Mdouble_ __x), (__const__)); + +/* Floating-point modulo remainder of X/Y. */ +__MATHCALL (fmod,, (_Mdouble_ __x, _Mdouble_ __y)); + +#ifdef __USE_MISC +# if ((!defined __cplusplus \ + || __cplusplus < 201103L /* isinf conflicts with C++11. */ \ + || __MATH_DECLARING_DOUBLE == 0)) /* isinff or isinfl don't. */ \ + && !__MATH_DECLARING_FLOATN +/* Return 0 if VALUE is finite or NaN, +1 if it + is +Infinity, -1 if it is -Infinity. */ +__MATHDECL_ALIAS (int,isinf,, (_Mdouble_ __value), isinf) + __attribute__ ((__const__)); +# endif + +# if !__MATH_DECLARING_FLOATN +/* Return nonzero if VALUE is finite and not NaN. */ +__MATHDECL_ALIAS (int,finite,, (_Mdouble_ __value), finite) + __attribute__ ((__const__)); + +/* Return the remainder of X/Y. */ +__MATHCALL (drem,, (_Mdouble_ __x, _Mdouble_ __y)); + + +/* Return the fractional part of X after dividing out `ilogb (X)'. */ +__MATHCALL (significand,, (_Mdouble_ __x)); +# endif + +#endif /* Use misc. */ + +#ifdef __USE_ISOC99 +/* Return X with its signed changed to Y's. */ +__MATHCALLX (copysign,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); +#endif + +#ifdef __USE_ISOC99 +/* Return representation of qNaN for double type. */ +__MATHCALL (nan,, (const char *__tagb)); +#endif + + +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) +# if ((!defined __cplusplus \ + || __cplusplus < 201103L /* isnan conflicts with C++11. */ \ + || __MATH_DECLARING_DOUBLE == 0)) /* isnanf or isnanl don't. */ \ + && !__MATH_DECLARING_FLOATN +/* Return nonzero if VALUE is not a number. */ +__MATHDECL_ALIAS (int,isnan,, (_Mdouble_ __value), isnan) + __attribute__ ((__const__)); +# endif +#endif + +#if defined __USE_MISC || (defined __USE_XOPEN && __MATH_DECLARING_DOUBLE) +/* Bessel functions. */ +__MATHCALL (j0,, (_Mdouble_)); +__MATHCALL (j1,, (_Mdouble_)); +__MATHCALL (jn,, (int, _Mdouble_)); +__MATHCALL (y0,, (_Mdouble_)); +__MATHCALL (y1,, (_Mdouble_)); +__MATHCALL (yn,, (int, _Mdouble_)); +#endif + + +#if defined __USE_XOPEN || defined __USE_ISOC99 +/* Error and gamma functions. */ +__MATHCALL_VEC (erf,, (_Mdouble_)); +__MATHCALL_VEC (erfc,, (_Mdouble_)); +__MATHCALL (lgamma,, (_Mdouble_)); +#endif + +#ifdef __USE_ISOC99 +/* True gamma function. */ +__MATHCALL (tgamma,, (_Mdouble_)); +#endif + +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) +# if !__MATH_DECLARING_FLOATN +/* Obsolete alias for `lgamma'. */ +__MATHCALL (gamma,, (_Mdouble_)); +# endif +#endif + +#ifdef __USE_MISC +/* Reentrant version of lgamma. This function uses the global variable + `signgam'. The reentrant version instead takes a pointer and stores + the value through it. */ +__MATHCALL (lgamma,_r, (_Mdouble_, int *__signgamp)); +#endif + + +#if defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 +/* Return the integer nearest X in the direction of the + prevailing rounding mode. */ +__MATHCALL (rint,, (_Mdouble_ __x)); + +/* Return X + epsilon if X < Y, X - epsilon if X > Y. */ +__MATHCALL (nextafter,, (_Mdouble_ __x, _Mdouble_ __y)); +# if defined __USE_ISOC99 && !defined __LDBL_COMPAT && !__MATH_DECLARING_FLOATN +__MATHCALL (nexttoward,, (_Mdouble_ __x, long double __y)); +# endif + +# if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN +/* Return X - epsilon. */ +__MATHCALL (nextdown,, (_Mdouble_ __x)); +/* Return X + epsilon. */ +__MATHCALL (nextup,, (_Mdouble_ __x)); +# endif + +/* Return the remainder of integer division X / Y with infinite precision. */ +__MATHCALL (remainder,, (_Mdouble_ __x, _Mdouble_ __y)); + +# ifdef __USE_ISOC99 +/* Return X times (2 to the Nth power). */ +__MATHCALL (scalbn,, (_Mdouble_ __x, int __n)); +# endif + +/* Return the binary exponent of X, which must be nonzero. */ +__MATHDECL (int,ilogb,, (_Mdouble_ __x)); +#endif + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN +/* Like ilogb, but returning long int. */ +__MATHDECL (long int, llogb,, (_Mdouble_ __x)); +#endif + +#ifdef __USE_ISOC99 +/* Return X times (2 to the Nth power). */ +__MATHCALL (scalbln,, (_Mdouble_ __x, long int __n)); + +/* Round X to integral value in floating-point format using current + rounding direction, but do not raise inexact exception. */ +__MATHCALL (nearbyint,, (_Mdouble_ __x)); + +/* Round X to nearest integral value, rounding halfway cases away from + zero. */ +__MATHCALLX (round,, (_Mdouble_ __x), (__const__)); + +/* Round X to the integral value in floating-point format nearest but + not larger in magnitude. */ +__MATHCALLX (trunc,, (_Mdouble_ __x), (__const__)); + +/* Compute remainder of X and Y and put in *QUO a value with sign of x/y + and magnitude congruent `mod 2^n' to the magnitude of the integral + quotient x/y, with n >= 3. */ +__MATHCALL (remquo,, (_Mdouble_ __x, _Mdouble_ __y, int *__quo)); + + +/* Conversion functions. */ + +/* Round X to nearest integral value according to current rounding + direction. */ +__MATHDECL (long int,lrint,, (_Mdouble_ __x)); +__extension__ +__MATHDECL (long long int,llrint,, (_Mdouble_ __x)); + +/* Round X to nearest integral value, rounding halfway cases away from + zero. */ +__MATHDECL (long int,lround,, (_Mdouble_ __x)); +__extension__ +__MATHDECL (long long int,llround,, (_Mdouble_ __x)); + + +/* Return positive difference between X and Y. */ +__MATHCALL (fdim,, (_Mdouble_ __x, _Mdouble_ __y)); + +# if !__MATH_DECLARING_FLOATN || defined __USE_GNU || !__GLIBC_USE (ISOC2X) +/* Return maximum numeric value from X and Y. */ +__MATHCALLX (fmax,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return minimum numeric value from X and Y. */ +__MATHCALLX (fmin,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); +# endif + +/* Multiply-add function computed as a ternary operation. */ +__MATHCALL (fma,, (_Mdouble_ __x, _Mdouble_ __y, _Mdouble_ __z)); +#endif /* Use ISO C99. */ + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN +/* Round X to nearest integer value, rounding halfway cases to even. */ +__MATHCALLX (roundeven,, (_Mdouble_ __x), (__const__)); + +/* Round X to nearest signed integer value, not raising inexact, with + control of rounding direction and width of result. */ +__MATHDECL (__intmax_t, fromfp,, (_Mdouble_ __x, int __round, + unsigned int __width)); + +/* Round X to nearest unsigned integer value, not raising inexact, + with control of rounding direction and width of result. */ +__MATHDECL (__uintmax_t, ufromfp,, (_Mdouble_ __x, int __round, + unsigned int __width)); + +/* Round X to nearest signed integer value, raising inexact for + non-integers, with control of rounding direction and width of + result. */ +__MATHDECL (__intmax_t, fromfpx,, (_Mdouble_ __x, int __round, + unsigned int __width)); + +/* Round X to nearest unsigned integer value, raising inexact for + non-integers, with control of rounding direction and width of + result. */ +__MATHDECL (__uintmax_t, ufromfpx,, (_Mdouble_ __x, int __round, + unsigned int __width)); + +/* Canonicalize floating-point representation. */ +__MATHDECL_1 (int, canonicalize,, (_Mdouble_ *__cx, const _Mdouble_ *__x)); +#endif + +#if (__GLIBC_USE (IEC_60559_BFP_EXT) \ + || (__MATH_DECLARING_FLOATN \ + && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))) +/* Return value with maximum magnitude. */ +__MATHCALLX (fmaxmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return value with minimum magnitude. */ +__MATHCALLX (fminmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); +#endif + +#if __GLIBC_USE (ISOC2X) +/* Return maximum value from X and Y. */ +__MATHCALLX (fmaximum,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return minimum value from X and Y. */ +__MATHCALLX (fminimum,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return maximum numeric value from X and Y. */ +__MATHCALLX (fmaximum_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return minimum numeric value from X and Y. */ +__MATHCALLX (fminimum_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return value with maximum magnitude. */ +__MATHCALLX (fmaximum_mag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return value with minimum magnitude. */ +__MATHCALLX (fminimum_mag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return numeric value with maximum magnitude. */ +__MATHCALLX (fmaximum_mag_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); + +/* Return numeric value with minimum magnitude. */ +__MATHCALLX (fminimum_mag_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); +#endif + +#if __GLIBC_USE (IEC_60559_EXT) || __MATH_DECLARING_FLOATN +/* Total order operation. */ +__MATHDECL_1 (int, totalorder,, (const _Mdouble_ *__x, + const _Mdouble_ *__y)) + __attribute_pure__; + +/* Total order operation on absolute values. */ +__MATHDECL_1 (int, totalordermag,, (const _Mdouble_ *__x, + const _Mdouble_ *__y)) + __attribute_pure__; + +/* Get NaN payload. */ +__MATHCALL (getpayload,, (const _Mdouble_ *__x)); + +/* Set quiet NaN payload. */ +__MATHDECL_1 (int, setpayload,, (_Mdouble_ *__x, _Mdouble_ __payload)); + +/* Set signaling NaN payload. */ +__MATHDECL_1 (int, setpayloadsig,, (_Mdouble_ *__x, _Mdouble_ __payload)); +#endif + +#if (defined __USE_MISC || (defined __USE_XOPEN_EXTENDED \ + && __MATH_DECLARING_DOUBLE \ + && !defined __USE_XOPEN2K8)) \ + && !__MATH_DECLARING_FLOATN +/* Return X times (2 to the Nth power). */ +__MATHCALL (scalb,, (_Mdouble_ __x, _Mdouble_ __n)); +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ac6195c19baf9923666ba421676295ad532a910f GIT binary patch literal 32352 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 Jzgmzh{~zK6bXoua literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h new file mode 100644 index 00000000..e83d6254 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h @@ -0,0 +1,183 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * POSIX Standard: 2.9.2 Minimum Values Added to + * + * Never include this file directly; use instead. + */ + +#ifndef _BITS_POSIX1_LIM_H +#define _BITS_POSIX1_LIM_H 1 + +#include + +/* These are the standard-mandated minimum values. */ + +/* Minimum number of operations in one list I/O call. */ +#define _POSIX_AIO_LISTIO_MAX 2 + +/* Minimal number of outstanding asynchronous I/O operations. */ +#define _POSIX_AIO_MAX 1 + +/* Maximum length of arguments to `execve', including environment. */ +#define _POSIX_ARG_MAX 4096 + +/* Maximum simultaneous processes per real user ID. */ +#ifdef __USE_XOPEN2K +# define _POSIX_CHILD_MAX 25 +#else +# define _POSIX_CHILD_MAX 6 +#endif + +/* Minimal number of timer expiration overruns. */ +#define _POSIX_DELAYTIMER_MAX 32 + +/* Maximum length of a host name (not including the terminating null) + as returned from the GETHOSTNAME function. */ +#define _POSIX_HOST_NAME_MAX 255 + +/* Maximum link count of a file. */ +#define _POSIX_LINK_MAX 8 + +/* Maximum length of login name. */ +#define _POSIX_LOGIN_NAME_MAX 9 + +/* Number of bytes in a terminal canonical input queue. */ +#define _POSIX_MAX_CANON 255 + +/* Number of bytes for which space will be + available in a terminal input queue. */ +#define _POSIX_MAX_INPUT 255 + +/* Maximum number of message queues open for a process. */ +#define _POSIX_MQ_OPEN_MAX 8 + +/* Maximum number of supported message priorities. */ +#define _POSIX_MQ_PRIO_MAX 32 + +/* Number of bytes in a filename. */ +#define _POSIX_NAME_MAX 14 + +/* Number of simultaneous supplementary group IDs per process. */ +#ifdef __USE_XOPEN2K +# define _POSIX_NGROUPS_MAX 8 +#else +# define _POSIX_NGROUPS_MAX 0 +#endif + +/* Number of files one process can have open at once. */ +#ifdef __USE_XOPEN2K +# define _POSIX_OPEN_MAX 20 +#else +# define _POSIX_OPEN_MAX 16 +#endif + +#if !defined __USE_XOPEN2K || defined __USE_GNU +/* Number of descriptors that a process may examine with `pselect' or + `select'. */ +# define _POSIX_FD_SETSIZE _POSIX_OPEN_MAX +#endif + +/* Number of bytes in a pathname. */ +#define _POSIX_PATH_MAX 256 + +/* Number of bytes than can be written atomically to a pipe. */ +#define _POSIX_PIPE_BUF 512 + +/* The number of repeated occurrences of a BRE permitted by the + REGEXEC and REGCOMP functions when using the interval notation. */ +#define _POSIX_RE_DUP_MAX 255 + +/* Minimal number of realtime signals reserved for the application. */ +#define _POSIX_RTSIG_MAX 8 + +/* Number of semaphores a process can have. */ +#define _POSIX_SEM_NSEMS_MAX 256 + +/* Maximal value of a semaphore. */ +#define _POSIX_SEM_VALUE_MAX 32767 + +/* Number of pending realtime signals. */ +#define _POSIX_SIGQUEUE_MAX 32 + +/* Largest value of a `ssize_t'. */ +#define _POSIX_SSIZE_MAX 32767 + +/* Number of streams a process can have open at once. */ +#define _POSIX_STREAM_MAX 8 + +/* The number of bytes in a symbolic link. */ +#define _POSIX_SYMLINK_MAX 255 + +/* The number of symbolic links that can be traversed in the + resolution of a pathname in the absence of a loop. */ +#define _POSIX_SYMLOOP_MAX 8 + +/* Number of timer for a process. */ +#define _POSIX_TIMER_MAX 32 + +/* Maximum number of characters in a tty name. */ +#define _POSIX_TTY_NAME_MAX 9 + +/* Maximum length of a time zone abbreviation (element of 'tzname'). */ +#ifdef __USE_XOPEN2K +# define _POSIX_TZNAME_MAX 6 +#else +# define _POSIX_TZNAME_MAX 3 +#endif + +#if !defined __USE_XOPEN2K || defined __USE_GNU +/* Maximum number of connections that can be queued on a socket. */ +# define _POSIX_QLIMIT 1 + +/* Maximum number of bytes that can be buffered on a socket for send + or receive. */ +# define _POSIX_HIWAT _POSIX_PIPE_BUF + +/* Maximum number of elements in an `iovec' array. */ +# define _POSIX_UIO_MAXIOV 16 +#endif + +/* Maximum clock resolution in nanoseconds. */ +#define _POSIX_CLOCKRES_MIN 20000000 + + +/* Get the implementation-specific values for the above. */ +#include + + +#ifndef SSIZE_MAX +/* ssize_t is not formally required to be the signed type + corresponding to size_t, but it is for all configurations supported + by glibc. */ +# if __WORDSIZE == 64 || __WORDSIZE32_SIZE_ULONG +# define SSIZE_MAX LONG_MAX +# else +# define SSIZE_MAX INT_MAX +# endif +#endif + + +/* This value is a guaranteed minimum maximum. + The current maximum can be got from `sysconf'. */ + +#ifndef NGROUPS_MAX +# define NGROUPS_MAX 8 +#endif + +#endif /* bits/posix1_lim.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e03138a19391b86bd639f75de073c78a0765b029 GIT binary patch literal 14742 zcmb7KdyHIF8J}H@IAnpbAR+-;3lu1wPP=WF7K(J)Zrg!E6HKiXF@}gjfC$JNjO1+%bO_vZq~Ed;tB6v}$J;CouZQVn~h zmN`K)RlC|1X};-rbB0~bmkm$X0>@jpBJqUGrz?62b>Ax(wr1ALdSPnwNPnTER}EXy zoU*>MmN~X;$$`TXjTS7pbce_VU)nntNWbt$YK5T~lv zykQ3(XbPl`761TE)$M$yACyauV-mtPqfu6_;~Vq+ zifLF9GwC=ra4bVpnnqa%m)Gq;_XKeoFe`?sD<#iq`r!{&JyuF^o95OHyW$Y80!t}2 z1j$ts0N5E1e%-66TFa$r;?{K2m?t9q^x1F7a{A<;s?eE411ep$VjC$^QG+4d=VXiQ`aa^g^{HrD{kI&s-@0)suanMl9i^d zzu*_NvR=VMCTfeot80O>r8qJy9nEDE;?qPIg$SpJFw-1o&d?RZQ7Uy?3k=8hBj$_d zF`5y`fxAjWDLJYF5fbBo`o3vdom>x2_k%hACREG1Z9uT1TM_l}jLGc)2iPjbfJml% zi}LWbn%?nDSn>Olr4z6O90aYO*5{KTkO zYQsc+!(B*~Y=t78h2RU|ypU5m6RKB5^<`EP0W`g3-?$0SA|%*o z|IsF}z~r31AT_*cNC*H4z7eoa>F9ASL;|Xsn_4-<@s{D^$v{wqeH!s(Tf(T?^#U}v zB|o1Kd8%&}bkDP?4K6x*tK1@o$kl^ctBanKXAxQ-%DX$GML1U29<@`$)l92y?k?{} z;D`RAsTzShhc${QxsN&mB?TQ3Atbob&RT(rAVoSSQGIBNTU%*ZGWGeedY<*ZE+-Ul zTE42=x@Tyi^YSItr}%F3pa6;E>UNd(2yGyVgs!doau(ro6JRSLvJ0wf5Z(6N*(di; zv~aa_OKg{0bRwcrW6%3)L)SXlo97hLunny3CZ~WC8)1T9k1$6?(e!vpO!Hh#^=npm zO&chWrKAABf&rb#O*$e6x4iHm_UlZoTWtq%H+ zK&LlG97G_Emapk5w0(J~b`hXQJ8*`#hT%E31!WvZ9HoK_VjkKrG?XX-YrbgEp;RCe zgbKPv8Mr~s1A!@u@~Ri!lSD#lvqH&)8fPWVKS+O8hguxy^C>bz(GCwqrQ!xBo4A$X z_bR>ONWV`(LZusc!4*&(nFemtr?ueF8ELi63*xt;G?uN4g4vJtPNG1y`32?|Fj$i8 zz+FbY8zu+1$CH~TY318mFp1pPO=y0T*^z+{bS|cRB5HX^a;iryDw3RZ6sb`aQ?1IZ zBodz4K<*Ah1Hz1q)ao)fR4}#Nv4lxhQxvHFN~vB^0<|>@NpmOAR>I14r_<)Yx$ zOvfh^rPvS=l@=|{+)7|$E$@0dT}HuY}zP;g37AVg`8~{FArz zpyuG$Y-pV8^PT!EW_6>gu)&)QL{!jb$#x980T;%$W}X{~=M$xsb3|G}dBVsw;W~$t zheM%oERb4pLMyaFwyjxdpHrYGdMfA~ug8hq1}}!JE*cq*v|UnBW@P>WAWn?;NZo@(3)qy?2v;LQhTg_GT{r`m>k8kC@KCy# z<2GQn1cO=0s;G+dMHTrE{lWbDfvVfJ=Xh<`I#wXjTqO_lh0()&D5WW$@dS-) zszJr^@Vl^}+Fdu~0?qmGAh+vQ@}-lt7(|e^iw}R7&ZkV(#Ub$Gn3UXvsJ?FdA$$a~ zC1FDY(i~%yJJ%FQU}P{IBg9>f#x*}&2-upO;R1#aX>E$4M~1k8;Y)jhLg^cT-EL_O zR2`HpO*|OmHswhXGg|laXs)1MmXbSdqZL>6RQYiqmBFuJX`KrYLWn#_1$p}LB7qTQ z7}_>9B7qwfSYpPH6eDYNmkK1V;V^45U6?hAH(%*DsCb%L)-5OKYT{-(YT0kq^r+PZ zEL~$>59a}GuoN^^Xg|nQ$a73H)>Wc1f(iQ(xN!>!zAzU_3)wE}i|aIF0`Wt5^1!B9 zNkYSCE)A1>9)L-Y{s?aH?D8(kLR`b zPjj~r3?&0sC0r~e`QW!!9_};cd|B5_n2o}djHC_9Ji(F@XDRXnIp8ru)>y_8Gp7{L zvYdMOq99O>N(k!P1lrKrchx?@CC68*ddZ;;dpd8JYq*+$Rd!SqH_VYp+@R!Pn(FeA z3f|D@1d-m-x@wx!zmXAUuBp&=;?H{&vf<1o4@nxPT>0dr84}aa>ms7UR7wIF_i~FG zo*rZzauWKLjNT+azjo<6zoQ?{rP#4Vz8-;cO6Wzva9%=Nuj#n-IN^9s(&@{$5aq=D z3BaW)nGX53(W%3bUeX&C93F*r=$YHaMyd7gtGXLBJp(N;C};DgEhP>U^lG!7 zFfhF{;uaP(zNXr3vsdm1@_^B42u_~woWw5&Tjv0_sTfQUu20V);G9*y*GX1G~}QD8m#E%n&qBThnzLfzKvn_1Kp(ZBKkj!qR32 z&1>i{+&MOwOHY9*FR00{Tmn8dNLP4xv-}5-Q;CsDNqDR z$)CK_eL4+bM*YI_%!$s_-w9>A5?1_dqXMw`Gp^!0(Q4eBS*^;gpy6vENPa8XFuPRz?SRz~<5z z)7EBo0C?T9=$5s;WL?jAz4putAKvlIp(^7wx?LHc7#?HH&W|yR>}J;kx1rn+aD$a| zd+hojJ#fVr26rgMv5A>!5Nt`D7vIbFuUiMaHsv<0>Ln}Z_2lLM`^Uk*zj$7R z*U;eDII$eYi|#RA8*>|h7p$DuJs+QZWV*CZXkvU0KB{(SA!`^sOw zjfpifzO^`}M4Y*tvqK588$hfLxeb@~lJ#p$tb12pcYER0Woy_^HV=;s?wl@;4o@;& z<2+@8?3#XHTF4cEDXd)A%U?PD+2@{m^M1y3dU|J6%s7yv+f>N?x&44(STAEjzIE`< zFMaONp>r5Nz}3WLaXcAyd^Z$tOKuCm4pz=iJ$%lpZ?4Q=$kH2TLWN$l^gKj&Tp@~{p3^s%y6ZrIAw8eF*pTQ?&*Jj|D*eMy<6MQc}_B%WzLSlW-#2zX4kITK%jg< z?t&G)WaS#~`p)}LzH`@~PGFoO8Q|O)E4~H!2^dW;nua)ob%6QxtG|5u505_aw|>TG za#-0s!~GD?Os!33v}&%}-`fK#ck4r$14rMz;k4f?R~4tHLYAw+Y@^CH$N{a~)V7;l z4YHk?I}_XrD_8Ql7xtch^o%c>Otwgv#g*h++3f1Iz^RxkuIwc%*K+$0AAIjG+oz5( zP7}q6VdbisEg)2!6W_{ap}zoDT22F2uyUc^d~oC0k1ySE5oa|xy^X=PjTPIe)}e#n?z<4IiXQGsT2vj8nv z*D_A8{P@=EmmT`>J;n+6Y@ZpP;fXh%f}-1D((rRWXb9^@#_+a14;?%Iz+IPchLJQL z7p;}e*YsaHa49I-$TdJbSUI. */ + +/* + * Never include this file directly; include instead. + */ + +#ifndef _BITS_POSIX2_LIM_H +#define _BITS_POSIX2_LIM_H 1 + + +/* The maximum `ibase' and `obase' values allowed by the `bc' utility. */ +#define _POSIX2_BC_BASE_MAX 99 + +/* The maximum number of elements allowed in an array by the `bc' utility. */ +#define _POSIX2_BC_DIM_MAX 2048 + +/* The maximum `scale' value allowed by the `bc' utility. */ +#define _POSIX2_BC_SCALE_MAX 99 + +/* The maximum length of a string constant accepted by the `bc' utility. */ +#define _POSIX2_BC_STRING_MAX 1000 + +/* The maximum number of weights that can be assigned to an entry of + the LC_COLLATE `order' keyword in the locale definition file. */ +#define _POSIX2_COLL_WEIGHTS_MAX 2 + +/* The maximum number of expressions that can be nested + within parentheses by the `expr' utility. */ +#define _POSIX2_EXPR_NEST_MAX 32 + +/* The maximum length, in bytes, of an input line. */ +#define _POSIX2_LINE_MAX 2048 + +/* The maximum number of repeated occurrences of a regular expression + permitted when using the interval notation `\{M,N\}'. */ +#define _POSIX2_RE_DUP_MAX 255 + +/* The maximum number of bytes in a character class name. We have no + fixed limit, 2048 is a high number. */ +#define _POSIX2_CHARCLASS_NAME_MAX 14 + + +/* These values are implementation-specific, + and may vary within the implementation. + Their precise values can be obtained from sysconf. */ + +#ifndef BC_BASE_MAX +#define BC_BASE_MAX _POSIX2_BC_BASE_MAX +#endif +#ifndef BC_DIM_MAX +#define BC_DIM_MAX _POSIX2_BC_DIM_MAX +#endif +#ifndef BC_SCALE_MAX +#define BC_SCALE_MAX _POSIX2_BC_SCALE_MAX +#endif +#ifndef BC_STRING_MAX +#define BC_STRING_MAX _POSIX2_BC_STRING_MAX +#endif +#ifndef COLL_WEIGHTS_MAX +#define COLL_WEIGHTS_MAX 255 +#endif +#ifndef EXPR_NEST_MAX +#define EXPR_NEST_MAX _POSIX2_EXPR_NEST_MAX +#endif +#ifndef LINE_MAX +#define LINE_MAX _POSIX2_LINE_MAX +#endif +#ifndef CHARCLASS_NAME_MAX +#define CHARCLASS_NAME_MAX 2048 +#endif + +/* This value is defined like this in regex.h. */ +#define RE_DUP_MAX (0x7fff) + +#endif /* bits/posix2_lim.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..661fe834e07b38b32fe7a0aaf6de51d9d3c154b1 GIT binary patch literal 13698 zcmb7KUx-{+8QCwP) z!Y(=7pSiw&{>dvEjg#(1e1+lHRys6I+H5sxTbAERQadG9%9topk9OKzmiFSZ+ST?) zG)QBR6iBbo3xCkKa!l~BdKvAah)!*`dtSztnt%SuOEoWpRBUUF4hlzM$;rULDNt`I7fg3We%1;dX0aUgJ&NbQANfx`dQ<%#H zw@*AeVi11()5mn23EQZrWM-a@qU*Tr1-oW<8oLaM=pi8Mw;u4t&KN(PN z#9MxIMu)FFKMga7JE2mtwxt`jys+1qET_%AbkOll(k8n}+vyS)4~McY(l~Qc>*U7f zy0*2%rr`4=R(26dQDWwV;SMDh4J|hdoRo$^Qc_{%CE75aUO}&Clj|Af*4~eLj{h)$O%$| z%*t+%sJbEpaKAJ9ux~ruVO~45r8_Z;1XMd}8`y=~JohX2MuA%vC>k8o^6imjd!RER zE}r~k9b(2KP^L8ViWDm~wb<2tvWJ$nwb|wSPA$T2k zayJ0p$qH!8fqa+h8P_BpWN>C{a1aJZ1%Tld>iYJ;L*9`l)^n(uj}ov@LZB! z^rz@2WftM}p?hhvwn^6JiBd2l*#tFXKvB^CtkP;*=pP6f=)#=s_ao>4~R2K-!iAL zhHd%CG&u!~I1mZ`7{VNd;*jx@XtG@2PWrw$f-QGX8&UxH0)!nGOsqNXR4*HLj_-Ll#>;R3^>JuBr2)};-KIyVZD)Ekk z4sh(10;xdOwJde4w?y~B_~V9jy|hKZJ}sZ5{SZH9L*tx{CiPjl)@jem2XDF~qCkh8Af&+n z4vdv%UMflE6RXHMDy^VAVVqiXoWse*P)Ljgj1@;{p$OSZvr?T?pgYDk$UI(;Yr73u z4D*sd)tM*hO^lJeZoo_d4s{k}yH4ins6I|*nMiPrZ!-+x#y zqZ|^n1!Ms2^Z4+`#Fkr|Dfb%MXlaF?GI`=8B6>v|m6W`yrIgspE+!ML5(?1J};-nUWc+S*N{ksIV01#VbZ8CNvvvniyETbY}w)#RV6I+ zh0(F)UNp7kWc_z0Rw>nh)eroY(nUVh(p1H5BhOCVFvicziqoZx>P1}gkwG40e*M8T zZ$lW6%Hc@fOScS@ceM%JO4cPe1vMc-BHTxLwg$FTQD}E^O@Rc)hSy_+xXIDDmYXYp z#dHk^C@$M7f}&drzkvZwH9?{D1MuBxX(=iW%9bY{jB!PHR>Wv=hA-y|Ze=aG^H$r6 z?AX?u927&+$I`k4AY6!DTBR+1Iioov%24Rm7?Hq@1J;1C}ew~XkBh?zmfEfq}<+7C84ibKyE>laaspu#1@ z-K2&TUznYkLUxM!5{1JtKynkAJg|vZ9ccK>W#F+-2r%^MOK{515BRDqj00dPG9QR* z*462Ri-OV&y+3oC7EGP?o8-lGt3GK8Vt$${L50bc=48^!1vOkx=zb_k_?I+f$X@^So&S1~e>i8*V~2fV0_Bv^ ztALTbl(g|MjQDoS@RDTGmv6$$nfhxSmy6_u?AyjLgF(I~HwqjsjtTV4RoEysnZBw= z=`f~ffk8QYm#6&X#?RpDfyq_To>DMBGvXRnG>KyemHDi+1H0syG$?0Rd|~YbrPv32 zo138mm)nZxS3Oyy>VcavHpQ5}S9AQxaYlA`YSZSK03sI61}G|-JqG6QYNT3~QeciO zVv;Mxbet;&Sr?zoKe03-0i~M1pX3uGK6F%tPr~B{$@7NtGDT(Bw&pXIx;Ng<48e(= zd#7$A@Y#eeUj8*r39Q+UM4-wTI7ITPqjf@7wNzMwA9*zW8_kz{2QbuIqku zW@h%0<|F&&*mHU2#w?KExOL|*`#<>H{K?e^SI(_&u552xr&qStb7uP_v+8PNY2nB* zV7T4fJ~GFi$8(0SKK6yL-njboOPd>~C7Y&XBmZkOtg~mfH!dt$@*m)Iwt04bjy>0M zPH(;bk)tbb#rIn$HqLJsFKk&40&oSby4qL-ZhM-002e%u<=me7I~nzUee;VaR;}&x z=Qd8C%4OUu!D$NxLhWy0e5!fs;2e8i$Qi$L{TJ8W5BzmmB7_&#Hnzq!SY2&M72eUj z1E9k5ft=&f55G9P>7TE>t#ML@E&kO&sy$~{nk!&qcy8wW_8kBD`nMjt`s(_Hv*)bS z>)YqYMb{PzuG-%q`c`ubM2Dvo{k`GKPd;(`r+!ru?!?NrH2Z$3S!B7(ouTK21hl08b$Xe=%)ECAoTns?nl z$DSvpu{QT_Jo@xk*5qreXEryjN7gq^JqSS{Vtiqo^*Bvq2{_-~y!(MU_LT9o{+@q4 zf9PjF`n=>kX5N_!VvV5DxR-G~)I0=u;dvs*`>gZC3%~#ETVIk~i-?|?AIB-zlS2C<7T3~!cLawK3EFJ+BEH{_e=GgNgf%pH2oP5gw literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h new file mode 100644 index 00000000..8e3c8fac --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h @@ -0,0 +1,194 @@ +/* Define POSIX options for Linux. + Copyright (C) 1996-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; see the file COPYING.LIB. If + not, see . */ + +#ifndef _BITS_POSIX_OPT_H +#define _BITS_POSIX_OPT_H 1 + +/* Job control is supported. */ +#define _POSIX_JOB_CONTROL 1 + +/* Processes have a saved set-user-ID and a saved set-group-ID. */ +#define _POSIX_SAVED_IDS 1 + +/* Priority scheduling is not supported with the correct semantics, + but GNU/Linux applications expect that the corresponding interfaces + are available, even though the semantics do not meet the POSIX + requirements. See glibc bug 14829. */ +#define _POSIX_PRIORITY_SCHEDULING 200809L + +/* Synchronizing file data is supported. */ +#define _POSIX_SYNCHRONIZED_IO 200809L + +/* The fsync function is present. */ +#define _POSIX_FSYNC 200809L + +/* Mapping of files to memory is supported. */ +#define _POSIX_MAPPED_FILES 200809L + +/* Locking of all memory is supported. */ +#define _POSIX_MEMLOCK 200809L + +/* Locking of ranges of memory is supported. */ +#define _POSIX_MEMLOCK_RANGE 200809L + +/* Setting of memory protections is supported. */ +#define _POSIX_MEMORY_PROTECTION 200809L + +/* Some filesystems allow all users to change file ownership. */ +#define _POSIX_CHOWN_RESTRICTED 0 + +/* `c_cc' member of 'struct termios' structure can be disabled by + using the value _POSIX_VDISABLE. */ +#define _POSIX_VDISABLE '\0' + +/* Filenames are not silently truncated. */ +#define _POSIX_NO_TRUNC 1 + +/* X/Open realtime support is available. */ +#define _XOPEN_REALTIME 1 + +/* X/Open thread realtime support is available. */ +#define _XOPEN_REALTIME_THREADS 1 + +/* XPG4.2 shared memory is supported. */ +#define _XOPEN_SHM 1 + +/* Tell we have POSIX threads. */ +#define _POSIX_THREADS 200809L + +/* We have the reentrant functions described in POSIX. */ +#define _POSIX_REENTRANT_FUNCTIONS 1 +#define _POSIX_THREAD_SAFE_FUNCTIONS 200809L + +/* We provide priority scheduling for threads. */ +#define _POSIX_THREAD_PRIORITY_SCHEDULING 200809L + +/* We support user-defined stack sizes. */ +#define _POSIX_THREAD_ATTR_STACKSIZE 200809L + +/* We support user-defined stacks. */ +#define _POSIX_THREAD_ATTR_STACKADDR 200809L + +/* We support priority inheritance. */ +#define _POSIX_THREAD_PRIO_INHERIT 200809L + +/* We support priority protection, though only for non-robust + mutexes. */ +#define _POSIX_THREAD_PRIO_PROTECT 200809L + +#ifdef __USE_XOPEN2K8 +/* We support priority inheritance for robust mutexes. */ +# define _POSIX_THREAD_ROBUST_PRIO_INHERIT 200809L + +/* We do not support priority protection for robust mutexes. */ +# define _POSIX_THREAD_ROBUST_PRIO_PROTECT -1 +#endif + +/* We support POSIX.1b semaphores. */ +#define _POSIX_SEMAPHORES 200809L + +/* Real-time signals are supported. */ +#define _POSIX_REALTIME_SIGNALS 200809L + +/* We support asynchronous I/O. */ +#define _POSIX_ASYNCHRONOUS_IO 200809L +#define _POSIX_ASYNC_IO 1 +/* Alternative name for Unix98. */ +#define _LFS_ASYNCHRONOUS_IO 1 +/* Support for prioritization is also available. */ +#define _POSIX_PRIORITIZED_IO 200809L + +/* The LFS support in asynchronous I/O is also available. */ +#define _LFS64_ASYNCHRONOUS_IO 1 + +/* The rest of the LFS is also available. */ +#define _LFS_LARGEFILE 1 +#define _LFS64_LARGEFILE 1 +#define _LFS64_STDIO 1 + +/* POSIX shared memory objects are implemented. */ +#define _POSIX_SHARED_MEMORY_OBJECTS 200809L + +/* CPU-time clocks support needs to be checked at runtime. */ +#define _POSIX_CPUTIME 0 + +/* Clock support in threads must be also checked at runtime. */ +#define _POSIX_THREAD_CPUTIME 0 + +/* GNU libc provides regular expression handling. */ +#define _POSIX_REGEXP 1 + +/* Reader/Writer locks are available. */ +#define _POSIX_READER_WRITER_LOCKS 200809L + +/* We have a POSIX shell. */ +#define _POSIX_SHELL 1 + +/* We support the Timeouts option. */ +#define _POSIX_TIMEOUTS 200809L + +/* We support spinlocks. */ +#define _POSIX_SPIN_LOCKS 200809L + +/* The `spawn' function family is supported. */ +#define _POSIX_SPAWN 200809L + +/* We have POSIX timers. */ +#define _POSIX_TIMERS 200809L + +/* The barrier functions are available. */ +#define _POSIX_BARRIERS 200809L + +/* POSIX message queues are available. */ +#define _POSIX_MESSAGE_PASSING 200809L + +/* Thread process-shared synchronization is supported. */ +#define _POSIX_THREAD_PROCESS_SHARED 200809L + +/* The monotonic clock might be available. */ +#define _POSIX_MONOTONIC_CLOCK 0 + +/* The clock selection interfaces are available. */ +#define _POSIX_CLOCK_SELECTION 200809L + +/* Advisory information interfaces are available. */ +#define _POSIX_ADVISORY_INFO 200809L + +/* IPv6 support is available. */ +#define _POSIX_IPV6 200809L + +/* Raw socket support is available. */ +#define _POSIX_RAW_SOCKETS 200809L + +/* We have at least one terminal. */ +#define _POSIX2_CHAR_TERM 200809L + +/* Neither process nor thread sporadic server interfaces is available. */ +#define _POSIX_SPORADIC_SERVER -1 +#define _POSIX_THREAD_SPORADIC_SERVER -1 + +/* trace.h is not available. */ +#define _POSIX_TRACE -1 +#define _POSIX_TRACE_EVENT_FILTER -1 +#define _POSIX_TRACE_INHERIT -1 +#define _POSIX_TRACE_LOG -1 + +/* Typed memory objects are not available. */ +#define _POSIX_TYPED_MEMORY_OBJECTS -1 + +#endif /* bits/posix_opt.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..c3ee0f2fadf38e43ae6822aaf98f9afac9238478 GIT binary patch literal 17435 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 Qs=B6qN_q;|!b%MB|3D1PJ^%m! literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h new file mode 100644 index 00000000..be0a66b1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h @@ -0,0 +1,31 @@ +/* Definition of PTHREAD_STACK_MIN, possibly dynamic. + Copyright (C) 2021-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef PTHREAD_STACK_MIN +# if defined __USE_DYNAMIC_STACK_SIZE && __USE_DYNAMIC_STACK_SIZE +# ifndef __ASSEMBLER__ +# define __SC_THREAD_STACK_MIN_VALUE 75 +__BEGIN_DECLS +extern long int __sysconf (int __name) __THROW; +__END_DECLS +# define PTHREAD_STACK_MIN __sysconf (__SC_THREAD_STACK_MIN_VALUE) +# endif +# else +# include +# endif +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a2b416d2d8cdaba85585f4412c98a3268ecd7080 GIT binary patch literal 12155 zcmb7KJ*?$86}}_dDUgsTpjlBMv}`uaV|kheA=p15&9VgoA&>};6%TV*-;L6ylb+G4~%L#JbZI? zhuweQc$AN7$azP_Sh4*3?>xK7OV;qNpt53b?suPj`L&N;Mlw`C^!AO>KYCMgt#b2L z#P z063EV`kqQxrIf-5E}UkU>ZRhRn?mq5S}fX*XxVaF9C^hcD~{nqafZ z22{JI?s!5g>u`sC#hU{W7r>94?&LIY*)S7J>CX<_2Kw=zKaAB6*`eh~El`7#qb=(` z6S66<+es{v4`rLORz0YkR;+hO;x38dmQV|re|+_W7{n$M zQ166oU>8noeF*SIBUKdOXaHu>l2bth_{^D$6Qr+ICV1@9F_Cv02Bld8L%I@TLy)pn z9gIC6zy0ml&|nW}3F{k~V2|I=O)1_oXBQUd%0+p+F5sPyEDZb9g&h}HvR zMI#=1OR}%OwvQw0a?p?fp?B96o>UNJeZ6AV6nWaS9kw_M?55F}imW+J&DjHVlNXl_fD ztz;fiZO(?Fvp)FBt6#<~vO_M@&)W?>r)LpcAFBK7XbFK0zDNCZ=&5K&abMjd@I${i z60Z9@tWiY86&eUs6l_G4h~Q>B>jEl5l<8iCC}@h$uToeN?BuHF7yiv+LV=)V4eQvz zsS93K5@qqdh+qJT>{-{?9$^8JS?YF7#Vq3WHoz_%vUAdNW82Sv{W$KQY~ecFw%RVA z3IHr{ z=tN#HL=W%z5JBLfWobmU^%Vro7{9K|ZP$YjM_}Z*Gc3Y*#&yNA3$M? zqKpjgoD>LY;e}E_jceEDAErMWp%!a)O6Uwl+ii+!%r9WD6#2o2%tqId1DxZ{Nz=6Q zixw;rS4=?jyS|(m_(10(;vG@X1IdxWdNhz+w3Vq*wIEHrR3ze=4fNhLG?>gR3Mkh_ zIo5?H8-^F8x-4m_P{Fdbt4crn@H=r;vcRQ6Dl;v*7!aZ^Ld$OC0plbyDjabyfsbj{ z4-5`UF-19?Jrsft zRG4-5v`t}YUNK>s0>{|`cz%=linl!+`5e_d2KmJsKS}gPXPm6%og^>_pt5b{S%qbs z%%J

    Y#hkN*iMqz&z)Wnaf5|@@eME4ZL0)HBncaDF#4sk+rCB+rrFBK#OK}#=YUl z1K1Zr67xo^puK@XkKbO-4ZU%~oz>K0!{GJ+!z7r*M*cz#JeiBF3vZ-y>4VG;>|cKC z;y%dg2mM#wk(H^Tm2megMY2h|K6gC84C;J!ky7`8sE+r&>tlcO+aJVr)2akDo*keU zzMSNwmbK9~&V7Y;O;PW|?Tv!!nZ;1(qtIwL#xxV3i;%2xtX3ycX>+%@0JMiyNTKHv z4iVg)HquGNx0=B&%x|Rce_zf%Fk325oejT6W-Po?5GN+!xC=xQ%FW@ht zv&0xZYyww|YvdMGRjgAEJ^|T&FT2jHqVVc^O#uQkljsXUJmhFz`^|%b=TRB1pu0I+ z7>aJ`a0AnpB|)L`2f*%DS&o{6E^CPgTXO+x}fuIG9zI%3#Vu?zh#(Fqi?N3;oJ?wCDFrhDO~bK-=OMI zQL$F)O(QlTNu|y;eeU%D%buT@8vra|8Dtu0Kg<|tkV0Jai>Qv^!W#r`-a}zs7=)x! zc0+yX%!qq9$S6v>#X#1_!Q5C}n|ho3I=MPQIqw75wqaPPYhz{kH70A+ zJ#fusrWo6MHQM%+o=CMhv=b9R#-eP1YUSDEkp4-=yEQlkhQcle+xyyb(|qq!Qb%{FAcw#iyAe(1Ct^a~pxrCSvoZUt<<` zdTYwsW(MUo^o#y(n&G7>FmYwNeytVYvj@7u(|h7SxQ$xPOe^Bs1v9IS2ZN|pP=4UR zyp<%WIF=W(DTwPmb7Q$*y*~{se8hlaK%I!g{i~T3tG|j)cs6Tfp^r0oe)Kf@<=e_l Sr|f8c{pfSMFFxMwcK-*9Xw(n@ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h new file mode 100644 index 00000000..97b52fba --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h @@ -0,0 +1,20 @@ +/* Definition of PTHREAD_STACK_MIN. Linux version. + Copyright (C) 2021-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* Minimum size for a thread. We are free to choose a reasonable value. */ +#define PTHREAD_STACK_MIN 16384 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..07ce8915870101515ba4129f27e413530fe79b72 GIT binary patch literal 12200 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 at&2DA+=lmGe(B}&FPQ&tpFO_;ulyg%UEK@- literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h new file mode 100644 index 00000000..20b3854d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h @@ -0,0 +1,55 @@ +/* Copyright (C) 2002-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_PTHREADTYPES_ARCH_H +#define _BITS_PTHREADTYPES_ARCH_H 1 + +#include + +#ifdef __x86_64__ +# if __WORDSIZE == 64 +# define __SIZEOF_PTHREAD_MUTEX_T 40 +# define __SIZEOF_PTHREAD_ATTR_T 56 +# define __SIZEOF_PTHREAD_RWLOCK_T 56 +# define __SIZEOF_PTHREAD_BARRIER_T 32 +# else +# define __SIZEOF_PTHREAD_MUTEX_T 32 +# define __SIZEOF_PTHREAD_ATTR_T 32 +# define __SIZEOF_PTHREAD_RWLOCK_T 44 +# define __SIZEOF_PTHREAD_BARRIER_T 20 +# endif +#else +# define __SIZEOF_PTHREAD_MUTEX_T 24 +# define __SIZEOF_PTHREAD_ATTR_T 36 +# define __SIZEOF_PTHREAD_RWLOCK_T 32 +# define __SIZEOF_PTHREAD_BARRIER_T 20 +#endif +#define __SIZEOF_PTHREAD_MUTEXATTR_T 4 +#define __SIZEOF_PTHREAD_COND_T 48 +#define __SIZEOF_PTHREAD_CONDATTR_T 4 +#define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 +#define __SIZEOF_PTHREAD_BARRIERATTR_T 4 + +#define __LOCK_ALIGNMENT +#define __ONCE_ALIGNMENT + +#ifndef __x86_64__ +/* Extra attributes for the cleanup functions. */ +# define __cleanup_fct_attribute __attribute__ ((__regparm__ (1))) +#endif + +#endif /* bits/pthreadtypes.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3123993c8da375445a1d0ce83a42bf9423bab504 GIT binary patch literal 13279 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h new file mode 100644 index 00000000..65464ee8 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h @@ -0,0 +1,121 @@ +/* Declaration of common pthread types for all architectures. + Copyright (C) 2017-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_PTHREADTYPES_COMMON_H +# define _BITS_PTHREADTYPES_COMMON_H 1 + +/* For internal mutex and condition variable definitions. */ +#include + +/* Thread identifiers. The structure of the attribute type is not + exposed on purpose. */ +typedef unsigned long int pthread_t; + + +/* Data structures for mutex handling. The structure of the attribute + type is not exposed on purpose. */ +typedef union +{ + char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; + int __align; +} pthread_mutexattr_t; + + +/* Data structure for condition variable handling. The structure of + the attribute type is not exposed on purpose. */ +typedef union +{ + char __size[__SIZEOF_PTHREAD_CONDATTR_T]; + int __align; +} pthread_condattr_t; + + +/* Keys for thread-specific data */ +typedef unsigned int pthread_key_t; + + +/* Once-only execution */ +typedef int __ONCE_ALIGNMENT pthread_once_t; + + +union pthread_attr_t +{ + char __size[__SIZEOF_PTHREAD_ATTR_T]; + long int __align; +}; +#ifndef __have_pthread_attr_t +typedef union pthread_attr_t pthread_attr_t; +# define __have_pthread_attr_t 1 +#endif + + +typedef union +{ + struct __pthread_mutex_s __data; + char __size[__SIZEOF_PTHREAD_MUTEX_T]; + long int __align; +} pthread_mutex_t; + + +typedef union +{ + struct __pthread_cond_s __data; + char __size[__SIZEOF_PTHREAD_COND_T]; + __extension__ long long int __align; +} pthread_cond_t; + + +#if defined __USE_UNIX98 || defined __USE_XOPEN2K +/* Data structure for reader-writer lock variable handling. The + structure of the attribute type is deliberately not exposed. */ +typedef union +{ + struct __pthread_rwlock_arch_t __data; + char __size[__SIZEOF_PTHREAD_RWLOCK_T]; + long int __align; +} pthread_rwlock_t; + +typedef union +{ + char __size[__SIZEOF_PTHREAD_RWLOCKATTR_T]; + long int __align; +} pthread_rwlockattr_t; +#endif + + +#ifdef __USE_XOPEN2K +/* POSIX spinlock data type. */ +typedef volatile int pthread_spinlock_t; + + +/* POSIX barriers data type. The structure of the type is + deliberately not exposed. */ +typedef union +{ + char __size[__SIZEOF_PTHREAD_BARRIER_T]; + long int __align; +} pthread_barrier_t; + +typedef union +{ + char __size[__SIZEOF_PTHREAD_BARRIERATTR_T]; + int __align; +} pthread_barrierattr_t; +#endif + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..cdca8617b0c07e171a3d412647ec5929c9f6d8f8 GIT binary patch literal 17259 zcmcgzeQX@Zb>E{-sx31FEgQ1Iu-1|i6#2x{Q4CELv}GwuqfJEfN=Tguqr~ z$BuPyb33lq<+Iq&yjO+ef;Ch)r z_k&Dc&u9FSma$dS*`!I!G)r{~Z7oeNxTQJMDWvmeN!J3mw6vq?4$^xAiA>oqWlTr2 z%6UC=a6CJd$>{~tQ8YKNZz@XH*UO){!mZJQB@aJA`g2cmX5eSgQ$M39cFqsfKvx1J zge|qqTn5{c**wB_RqaL72})ooEWKjRzQ{?%I>8@Gp={=b8tutu3RW3C>i*uBFE@D^ zyjm`aEi!Z!J@YwDsY`4%C~^c^SE4h-p;FA{y zKc8z7Hq9%Wj^QGy3`;RS1kF_o0N5H2ez|0*S}mk;>K1j&Ttq5->8mGsJ$`YbyFx2$2HGADCe z8eZCR3%S;Isu;MazvO4Myl#k7rrsApsjLOc8y`sgH@S9wKx_oiNRH z=S*EOUBxInT41`4U+2Dh9>a`)Hawo&9m7!uWJrSqVeA)dyH)5R=zcKgpB7qKc1%cC z;iEe9#EeP(02??e#sDKz`UuPLwW8i~iv=*F9fLjB)0`m2W)?Rfvpit{jJsG2+p2~E z^Y0s{co3sZ5PFAg1G|_it`7{}!bm9!I2wSd*y^I9THrHcu9zTctwO=m8y&-Wx1d95 z4uBy^3Be(Vv(>L4d#>*O2yZB}2ebtFXbrQ6?uT*<5Xsxm619?T5Qn)tEYi|f% z&`UnF2EXQ;Ry)-VMRH`A)12DHY}YK)%eiVvT+A_;p<)D18fp@NFj(Tm361kghE^02 zmT-0G3MWG7aS=62x~>$gB@dHqN-pw|B{_&lK-K12D;%m|<&4%H1E3QX(6k187x0W5 zXC5#(iZuWPslyT=<`vVh)ruu}hlUUvSxZGR5z(ZwTup@@fp2w$yTgtQ@Jvr`PpDpo z>hq$w1<>^7ee<-KMNqQg{v)C=!{nU4#5KHeNC*H4z8Qp_(mPd+AVFxF7h5^l_O|JZ z$$+gOeHw~ngfI$DIRnjY&QCYVJk_@|da2}KA8dH%0lq~h$kl^;?KXN&$|ATv4nb9w7pfy3}=apJx%O zHv+aokeyLI6WR7V4|nqY6E0je+nTn^wRJ3`h0b2|)rzjQ@;Bua)Ub^Vx5FtA#0nw! ztpedfRW!Y^B*sOqsQN{l9MeYf(=ikPSTLazIjsxypq^(D1Rjc(MxnN}f(SE)$|bo? zdhpT$Ffw17=rXoFI@Lk{5$O2DC>pSoeZxyrTIyRJXG2-wl zI3T8>{Su}UUJy24IO&9|KqW{O;Ug@-3yLLB7^5hymdH7Y5mLkpISXo>-E97W`m-|B z;y_=F(HV+1*;J?%bvSw`_ADIRP-X+YTMP}5Ff>vt^U{Qhsri;AjPshJK=oI0WkU(n z+AJh4oUqm)mFv{Z7+<+CxHZf5(L||Xh$z%nSemJqz{gtJE9r2k<6 z3Om*-r29bf#ep=eAgx1u(zYHHUGXs+8t3w2t3E6Ax>-=d!5a@mp`r^p$2FY_92g_b zJarP~6Q#yEj8=p)VdUE6I453ChC*a45LM&-$4$EpS`5RI z-`1JOFSN{&ux`Li0S#6RP<5z{g@5r5b3OC84XrR6uiW+l?#sXzIPW z>C`*YS0iI0D6J(F8q#u6qB%!u4?K>XJB6-BBMrc1B!z{GZ5swy7W8XqXR$X3lK{;E zGIQYa9nRkU9}uei{f?FEW;}M#dx6$T2Zatr`4a2n0Jb1 zK0IsV{o=x}=S{fJMe%=i(ug5aQVqSh6G5vXp6@Hs##I=I`Zh`>cc_f8gfA>^9VvKi zM~+r@t!0&BtyS|;K65(ZLyo2*u=Ol8Fx-;(B+MkumrcHiQ#mxrowD8h$Qd>mNRh~~ zhu%u3V`l1X6S!||Ms7@1Uw3>0ABJpB*}95i=3CbkATTtRZdfP|xiGKk=1jrb+)S(> zxkif^D%_Ib21YMYf)cK;0CwA5YYNQ~ip9hu5*#re6*04RIu21qg)DbySeX*Df3wg#w9hV>1$@VTCzibW1j{7Cyxau|qgank)|{P3*>( zdq=3AX61F;4ceNwS+1J*Yc;*z>kO8jxu}zAKm?X-O##{uG!rVhmetTN3Uve*4hi5! zJ;da~R3t8C+o&&|yU?Hz-Gq{dXqMGXY52&cVxf-%MA{2qg7bTLbZ2FuQ2|7e;i#L7 zF29aI6r2{*`y<$-VV)e8Nye!{%?t=W=5D5#a2bTE$+42t58k!YaOTOU^SWliWE3uB zIBSH$n|P9w%w>MSC%kB3*jP3YGhNA`WxHi^pTJNp)DX;f5VWDSZ>xQR^N_C=^qh+u z_ITMa)$lY^RM~~9c!VPbc_Um-XsXRCD!4(z^Fvf@+iRNRzmQ>WE~?OWiZAyFujA2l z8b}&uTglj1-|qg-1J7Y{rR=@R^njJ|+gKhpn`7w~6uF@DUUZ%3e< zqV+6cs4Qk}X~FgIb}aC8NvrSP2+EQBn*bM^WVz_eMz;(jdd_a4;&3IbL(d#lTew

    Kz2pE#~h5$jA9S7HNK`gk;yBK1G>IwH3CPMcW%=O zN^Kv&HV#8XT^uXSuRK``-2-=CXo}H(ucq0arY)-ZwnG~-0c5O@4TM@z_Nc^vF+<(T zoB|VKl9SjeamTsZAnV>wgdb1FY64D;|1uI!jPTHr6+WsS4oJuw3}tLp%(hKFP-*tY zuQNl?O4^6pZX?9A3EsT$JDJD@Uo&NKGb7|R;TzsuIKzvlz?l2f=675SK1HA_ae9aR z2Uk-~GZQbN?E)HE^MgU5RZxE5z}zlLYSu!oVQn15gQ8Bxa-ZB24lHQIfMP%$j>GAr zIxCufHyYv@$w;$44&ga5zo%yv6@)>lgGMq47N2X){oLVZG zdPxle_)J&)TdB7`S|WPo;|lh{Z#`0^~z?&`{JG1E3vyo zcTfV5-Y@N+IkIN_(_fi~Po8r~d)-=+ z9XF8mMYutSZ$zbpn{?NAB<3V{J=Smc>`l8a{ql3)4b}aJY=823Q-EsgusUZ zG6bG^!S_su%$}uGYF(%#{bik!Qo=|X(;W#zGN#dHQn*R^;a9WCH=q0p-Gui%`BtI9 z@%6t1&ujp{pGuw@=t!K9P7Po~{_yS0FI?s3HQ^qw8IQeu>Ak5Bi1&bI5~du?Ao5p` z+Y54Mk~4BgVxKf4W4UviFIq4B@y1_;a`nCw59}Bj`ljjtSVW3Ld>7hHuevU{}^&3JP-R(l$L!|Q$#dWTs8pT(=6CLT`-$gesXBah-|SzWedHICw4C6Snkld=^o}GA zfp_+G?*rNUx@U;&2Y&vqlRtX&&$mg{8-Ll89q&8(w^H?gju+RTUh#YPFxeebORqmQ z{ouRADp^rzlHqEk`0{=COI=<4$ld7YHuztn`m@j8@uSfxcWq*P)%b8SQKdi?C>Z7k z_WaiWkDQt7o&%%jx?N;+NA+v!cP1Wwir&%TG(y^78Zl`|5+&Mwz*{zWejP z`102A`@~s>!`qO^b-#mrTi=i;zKjwDuW3k$x?E~ZiIr$~V7+>x!-he_R;)Xkz~d+5$3W?{Yi3}vP2@gDm#=+JVT$-|1M+ORL|WguQ>DE zvZt%N9=zk?hd%qsA*s6Y`LF)f(Ods(Rb)p3T?O@gK<1c4a1BOc$;OoW5=U1Z-327_ zr2CKC@4xiSTjFpc3mQUN`xS(BT|+D|SkVf&Z-XRkLgpNDSE4G7_Tb69u0-?59Y_vr z=tyjk2B6{rioSN!)$L1(#Dx$=^sfRG)hRAXqwl}s8@e|Dpf+?55I}AD!v4!+JOA^7 z!~)C!MH?o85nK}n_U{66n(v+m!Smf^BG^mrHr77A?mejn7+TWay!J;IUt4V|wP1%_ zT;I#U0Tk*+D%B%>R9_OFv*a`rktLCU*4h*qTf{i*>I1V>w$` zojvo)ogcjG>wm*~0!H(-@>c!E2hYx&|5pD4)J|SIOj&jPRQPvDnL9w&J;^=&9f>h% zPd`$i`m^+<(}xm!J{4m4;(=T27Y=^!j97A*;R`P1f<`@paH-Nypb= zt7u;sT1AZ%fSNi-l7_)KW8Gr_=dtcRD3Hro*CSPxAHVik<;8R0Fd875F@4ns$Bl2? zbmPmonxWm%Pr~o@XLlu78XzQYsBM4e=%_;eQIvGUx-M8AbOt@|btDr(GU$2chUFlk zy7%$J*{AFk5VP7(Vxo5<3u3$E@%0zF-#%Y^0y2hgAKnVjXsZ?>Xkw}#(F2`hq@n3f z5HUV7K8Dm7PmYgOX`@Kgp`b?h=&W@jiGYkjpWb}zu917Bl_?}>Th}&h&$i^YtV9GD zXO1rK8{E(9+}GQ82y~`|goQWy35y;E$?K8iR96a1P9;-^Ldj1IUjMsKolX9f^TurN z>@-NG?NW2eTdCxeT_>^RlgX2_p=8=(;eN4EFZ_?%Kr0kKWwo*nIZjC`>z*a{(pudr z^!=Uvc-#JDKMg%S88lZKdm8&=wrdu@KAW7~A8Jkeh32m_Z}xTd;kWyeeMiE#X&2qn zW@oj7ZFZ6lwVCoA*I(B_5_&9!JT|&|6u&*19Hnp5)M~l&HNnVOoJR_=z^M%Ka*#dLHzX4#FKAq=;yy5;T;^k-J8 zqO&LKws8<*B5~^=isJP4>3s4C$ zb~w8W8JJCGcU5V(O$?=H>=;8Cw@h_SVMC{qQt}!C(oZ<_*}e9DKp#D9H@Er2Lo~Q{ OmyK<. */ + +#ifndef _BITS_SCHED_H +#define _BITS_SCHED_H 1 + +#ifndef _SCHED_H +# error "Never include directly; use instead." +#endif + +/* Scheduling algorithms. */ +#define SCHED_OTHER 0 +#define SCHED_FIFO 1 +#define SCHED_RR 2 +#ifdef __USE_GNU +# define SCHED_BATCH 3 +# define SCHED_ISO 4 +# define SCHED_IDLE 5 +# define SCHED_DEADLINE 6 + +# define SCHED_RESET_ON_FORK 0x40000000 +#endif + +#ifdef __USE_GNU +/* Cloning flags. */ +# define CSIGNAL 0x000000ff /* Signal mask to be sent at exit. */ +# define CLONE_VM 0x00000100 /* Set if VM shared between processes. */ +# define CLONE_FS 0x00000200 /* Set if fs info shared between processes. */ +# define CLONE_FILES 0x00000400 /* Set if open files shared between processes. */ +# define CLONE_SIGHAND 0x00000800 /* Set if signal handlers shared. */ +# define CLONE_PIDFD 0x00001000 /* Set if a pidfd should be placed + in parent. */ +# define CLONE_PTRACE 0x00002000 /* Set if tracing continues on the child. */ +# define CLONE_VFORK 0x00004000 /* Set if the parent wants the child to + wake it up on mm_release. */ +# define CLONE_PARENT 0x00008000 /* Set if we want to have the same + parent as the cloner. */ +# define CLONE_THREAD 0x00010000 /* Set to add to same thread group. */ +# define CLONE_NEWNS 0x00020000 /* Set to create new namespace. */ +# define CLONE_SYSVSEM 0x00040000 /* Set to shared SVID SEM_UNDO semantics. */ +# define CLONE_SETTLS 0x00080000 /* Set TLS info. */ +# define CLONE_PARENT_SETTID 0x00100000 /* Store TID in userlevel buffer + before MM copy. */ +# define CLONE_CHILD_CLEARTID 0x00200000 /* Register exit futex and memory + location to clear. */ +# define CLONE_DETACHED 0x00400000 /* Create clone detached. */ +# define CLONE_UNTRACED 0x00800000 /* Set if the tracing process can't + force CLONE_PTRACE on this clone. */ +# define CLONE_CHILD_SETTID 0x01000000 /* Store TID in userlevel buffer in + the child. */ +# define CLONE_NEWCGROUP 0x02000000 /* New cgroup namespace. */ +# define CLONE_NEWUTS 0x04000000 /* New utsname group. */ +# define CLONE_NEWIPC 0x08000000 /* New ipcs. */ +# define CLONE_NEWUSER 0x10000000 /* New user namespace. */ +# define CLONE_NEWPID 0x20000000 /* New pid namespace. */ +# define CLONE_NEWNET 0x40000000 /* New network namespace. */ +# define CLONE_IO 0x80000000 /* Clone I/O context. */ + +/* cloning flags intersect with CSIGNAL so can be used only with unshare and + clone3 syscalls. */ +#define CLONE_NEWTIME 0x00000080 /* New time namespace */ +#endif + +#include + +__BEGIN_DECLS + +#ifdef __USE_GNU +/* Clone current process. */ +extern int clone (int (*__fn) (void *__arg), void *__child_stack, + int __flags, void *__arg, ...) __THROW; + +/* Unshare the specified resources. */ +extern int unshare (int __flags) __THROW; + +/* Get index of currently used CPU. */ +extern int sched_getcpu (void) __THROW; + +/* Get currently used CPU and NUMA node. */ +extern int getcpu (unsigned int *, unsigned int *) __THROW; + +/* Switch process to namespace of type NSTYPE indicated by FD. */ +extern int setns (int __fd, int __nstype) __THROW; +#endif + +__END_DECLS + +#endif /* bits/sched.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..f6c44b3bfd42e2b2c0cf89cbabe2d8f586f5b86b GIT binary patch literal 12505 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. */ + +#ifndef _SYS_SELECT_H +# error "Never use directly; include instead." +#endif + + +/* We don't use `memset' because this would require a prototype and + the array isn't too big. */ +#define __FD_ZERO(s) \ + do { \ + unsigned int __i; \ + fd_set *__arr = (s); \ + for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i) \ + __FDS_BITS (__arr)[__i] = 0; \ + } while (0) +#define __FD_SET(d, s) \ + ((void) (__FDS_BITS (s)[__FD_ELT(d)] |= __FD_MASK(d))) +#define __FD_CLR(d, s) \ + ((void) (__FDS_BITS (s)[__FD_ELT(d)] &= ~__FD_MASK(d))) +#define __FD_ISSET(d, s) \ + ((__FDS_BITS (s)[__FD_ELT (d)] & __FD_MASK (d)) != 0) diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..53bf099164dec4a234ed97c0d94e2f041af1d1c4 GIT binary patch literal 12560 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 I1@q?r0bA}sSpWb4 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h new file mode 100644 index 00000000..353ba1dd --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h @@ -0,0 +1,40 @@ +/* Copyright (C) 2001-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* Define the machine-dependent type `jmp_buf'. x86-64 version. */ +#ifndef _BITS_SETJMP_H +#define _BITS_SETJMP_H 1 + +#if !defined _SETJMP_H && !defined _PTHREAD_H +# error "Never include directly; use instead." +#endif + +#include + +#ifndef _ASM + +# if __WORDSIZE == 64 +typedef long int __jmp_buf[8]; +# elif defined __x86_64__ +__extension__ typedef long long int __jmp_buf[8]; +# else +typedef int __jmp_buf[6]; +# endif + +#endif + +#endif /* bits/setjmp.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..09f4493d01ab7a29e7431e97d319f6a212dcd665 GIT binary patch literal 12330 zcmb7KO^75(6|No+f(){_s4%!~GYcx~)sN6mjH2Lzy`~BWe zvW#61+P+C=j{3A?D1z#-gywvP<7Fm zCtCjCNye3&>!)&_re!7-Q7l!Oi6<32n;Tu`*U$W^q}=dIwV)}GKHzWuDd1{kf}eEJ z@f?-t)m!t0==7tf{`T8Hj=T(3?OI%;f)V{p29i3Hlte9q2e=BW&6lp97R~juh$hB9 z+AURR6nB()o?SoytVwhDOsVp$u7xHX7|pP1YRNaJso-V6EI5v+y5uxn^PGXpyGpUv z6UPFx;DV)DTd$>k;S0aYM%+f5j#ovkx%ya&*bpQq0s`=GJjkvs2;I6gChn36zR@E5 z=662~<&^rMh1XeU11jC3sCYywV{jY$k}p<7>;-;cbW5jr$=V&VnEY(TjiWFB;q_2_ zpB<|1s0mbWBf~?|B|CV;8q}Dga8oz5QW2fK-vG>VivT9> zqA^?&Y69l{&)*J%SZ4xi9e)g*!ilL5KD<#+r70L10y8biCM5!FX4S<3($y;MJhpF` zz`6?trC9+&+7e=15Yttzv_21C{6?s#*9W8o{+hf@)iAB!JfdDN))! zubWeNfwdA^gAe$om{Q%eC(mvKk~_V;?o{w5t4WI&a}&%^F;ta6O@bg)7Xdp|xuz}X z5(6xhx;I5N0Q8tgiMsSxb`&!h!)2uK;#u(lw>84cbp52lG{|ofygD5s40OSA#8Qf)8RxP@LtZ~OsHN3 zks+&q0Gi%h^7}Z7=wvhf$3S2oljrOrXn13hpdb$Md%{kTxqT~`aG)f9OB0>b=WIE>*5I@LdM?xetz1v5zSP^VvtK*e_ zu@Er8DanFWtmV`?C&`F3@#{V0&htS~H>_Hi9$*jzJE>VQ8KQ*aqXRd!kvk_1*Sh`q z7nj5S$P}inZlmq+mdQ~JV;o;wb!?B_t^skw(&Nbd@p@{5 z{z5S`5#m7v($Hkd2()zxRI{Bx-|evbcw6zdu1YA=c*Geh7yuJ!uh3L71buU5k`AQ; zkswvjM}|S8mMsWuq9`G)or63e4Xls}sA1*Uena6c+RFUnjBj!$^Eo|lb(d#dSmCFP-6}8kG zqrD{|DlJ-?ot41GG-+A}LtEf8loNEzSS>+m)6|dcsqH>Af83FUPzeM7BqdYJ8Xu#f zG43`BnCn!s*=)@518S^~ZMzCOD99(3PYnL#XX(@w8y11|+Zp|>7` z=@T`zUTi@04iX(DE=yQr3Fzwd$+$Hv$^#ff{Dx2y3TQ56(23m9**$nzd)%`fXiF#T za#yflg5_*rFI2&ezU$hvMl6?ZCuWEL;A?wVL`FVn*$PNrd<9@A?A1#e?duM&B3H1M z+TLcw#JwQ0;!R^)-*{Ni-!SB4Z^k&L=|<5&&!_E zy^e=P-0^WqUUlX8VA{7KT9CnTAFe3? zV0t;dM~J%|&1-kK7jU~>!v(aLX#+*kBW>Kkf@TO%DE$gzcPcGM)j`=B;K3LVl-EU! zZ)f;jtT0{XkX+v5PUhtzb$R!5rP5>K1`cg_I=JF*7MwFqoZ8Rf+n-Mr*=8p7h zYxJoR$dBrN9t58f>k zn0fLfXH>xc6s~0gZBXVTmJB!tnXkfx#|Znzau1jtr4OyL?(D6Dk7`sxP`}cl4Xyp8 z_6g=8Nfs=tO~W4N4ZDwqa;&nWqBIsGk-S04Elf?k$bx$`vt={`-K3^D{+*0B^O8W@ ziC^(qTsI5s1V9=#VaYgXT4FQJ?T8ASt02gnm$%e#JrTyCBQamfu(f{udsqMYp80q# zV#iE>K?3De)BA*Ryu7yUx^B#I-tms)(ARG^%C-4N0@tV{YW;m<-N7P1&>IyTE`}NO z%tNtJYBs&9H)`E-w7{U8#r=t&)RY}uJ!riK*7F87Gb3(cPa`R*2K!m(2YtzLXi=`O z`0CLO%Jv+HZR3W4xW-ooUqi4)%>y@MdW$i=SEFS^>4xN!UE3o8WGspXs8kL;R`Ks< zoLRk5V2^Bb(ikN+&TSW2ci-thp^QobMvZ?TX*Nb?>F5ie6VEuL#|$(M|_=xuPqOSUAAbC^lee|OphZ2= zwdKU$m%VlK2eT_zJ~o>j9bY}Zap~xIcKqd;{`>Ed{=M|%{lBw+KYaVwxAlMS@93G2 zJahc@qbGm;?7Q!M_0LzYr7yhp#+~%e%Wr(^_IJ{60@bIUg_C&2PQoWAC)eSir=NQI N+9myaI(woI`9IYy0+av% literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h new file mode 100644 index 00000000..174b487f --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h @@ -0,0 +1,83 @@ +/* The proper definitions for Linux's sigaction. + Copyright (C) 1993-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_SIGACTION_H +#define _BITS_SIGACTION_H 1 + +#ifndef _SIGNAL_H +# error "Never include directly; use instead." +#endif + +/* Structure describing the action to be taken when a signal arrives. */ +struct sigaction + { + /* Signal handler. */ +#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED + union + { + /* Used if SA_SIGINFO is not set. */ + __sighandler_t sa_handler; + /* Used if SA_SIGINFO is set. */ + void (*sa_sigaction) (int, siginfo_t *, void *); + } + __sigaction_handler; +# define sa_handler __sigaction_handler.sa_handler +# define sa_sigaction __sigaction_handler.sa_sigaction +#else + __sighandler_t sa_handler; +#endif + + /* Additional set of signals to be blocked. */ + __sigset_t sa_mask; + + /* Special flags. */ + int sa_flags; + + /* Restore handler. */ + void (*sa_restorer) (void); + }; + +/* Bits in `sa_flags'. */ +#define SA_NOCLDSTOP 1 /* Don't send SIGCHLD when children stop. */ +#define SA_NOCLDWAIT 2 /* Don't create zombie on child death. */ +#define SA_SIGINFO 4 /* Invoke signal-catching function with + three arguments instead of one. */ +#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC +# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ +#endif +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ +# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when + its handler is being executed. */ +# define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ +#endif +#ifdef __USE_MISC +# define SA_INTERRUPT 0x20000000 /* Historical no-op. */ + +/* Some aliases for the SA_ constants. */ +# define SA_NOMASK SA_NODEFER +# define SA_ONESHOT SA_RESETHAND +# define SA_STACK SA_ONSTACK +#endif + +/* Values for the HOW argument to `sigprocmask'. */ +#define SIG_BLOCK 0 /* Block signals. */ +#define SIG_UNBLOCK 1 /* Unblock signals. */ +#define SIG_SETMASK 2 /* Set the set of blocked signals. */ + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..51a594a140702623a72e519563593372587fdc65 GIT binary patch literal 14564 zcmb7KYiu0V6`plNYpT?B4J43KcM?OejW_E!#)LE|aU3UcNbC?h4K1|8?9AQW!Sl+@ z?8D)q^d-@Uh}2S0TSO)LqoP$2P?3V#LZwQTn$nj*LISDn4^W{+`O(r;L=En__s+dL zcjxZx;vZvs=FGX@d7pdkj4JQFb8h=tC8rcBo`VW@VJ`}oBhN2HD2xgwG7Di~6dc`h zw;0L?3|n{0U6JPNUa)Mr<-BPH$cVgP<>t04C>O_ag=!cSEZ4BBCMqoMJv31$qO#>` zhG(KJ73ICn>iuU08Y5cq$rFrUcv7^Yuz;V21x<5`VWdY$i!c*TYFotuk)^P8im$3W z4aFN0RAfn1^z(($uUK+06& z=ut&@AQz$5xMAx=$=^DaAqmkBHj67Ng)K#%7gxXm>bl=~%`h^Ho@Zmil+p+*-wUnA zgl1cgz)V<9k37dRw7O*?FnQIDP{4_^9J6HENGk?jJ)|#;|ESo;Y=&R8+>(d6a$m~O zAt2XnaKO&~5LSbdZZu7r1-F81tAQar@$~0KoFQJQ%w@*WAVpU$xmE@$qHyZ_p;fNw zc8lW+N~d&@<)9!zmW3bHEMn-j&o7AZd2~cx)gX?_l`Je-^7FP=E_RkvC!Sm@I$6?& zD`CMfQAr*$NnJ!i)rhoxbBAVyr5QF3pCr1Zi!h1=GsE+iEu>kVR;s#2WO;6wP+u~S zk&J*B{A_V1BS)1WLRvUTZC`hsPNoN=htYC)QYvNDwIEofj}qd^GbYmmEa2+I2Y51N zj|h*@sGyEZ)Ip4H1ol1OaH9;Fx!oX{nKT0szsvMtM>mMWyn6j%(TQ;+NVUV4fmJM> z)Cca~QcGzXC>k77bM%I$+n_Tlt~^1qT7`{=S`{N`w~U}PN01?D2_YuPk~OShdCtvD zi-K}_044CpG+Z9G9*!*nOwfo_+EOEglQrbAK{Rwyh1tGKs@AFN&o9c!wIW;LD zXL51b4cqdIo*u}HIdNvF7?GQYngmW5tqAO-!udhTsK^qQlsZ<0n@Z?e7A*w`X=QuG zCrNfxt%#PTF^H3ZZY*~O97C{+rOq7#cqcBPc?0rYBxc+!@gRd^TZ4mOI6MF{Ua?A! zUb7|dFcT6Xo1rLAL@cOm&(NVq5L+GT>aZerc#cz86RKB94@Fi20W`g4Xq}X25gcr! z|40GmKDmrmgoZcE6C&`0(2C+t>B6c(JwYm(pIJHh@{SeClL4ooeHyl8Dq)n}Y5|(t zVwi6ed3xv+P!PC82g4V>A-2fWb5V4c(?!q8vIwaU=84YU!VSxHFV$1cH*BYBpD<5I z+)w&OUAH2CS=J~@$wR3jq@*CD1ccyjq_ftbA_$SrNc0ez;^w0)U$RkyR?iJ@BQc?X z(eh>FqQEk!@$yAIB>tVUAa@eaM{b$)2q`B?gszK1F^e$V*s(S0*#+IVux$5yXRX*j zk;2uKt!=y9q~j4SRdyrPYsl!NZ zO`9_3Gg1Kff(4z(NhHC+G|w#vc_>{PrD$0Nkwy&TOJke%;6WWSvRIlJ8DAdn>Y)FK z5ZN)xoe0nv`3lmZ?aM>8OE`M61CRZ!W(A(>KpB^N9HD{@VjkKrX($nbxcMSMC#3>N z5Gv9~gn=Jb0su_BD6a=}pTrYVN()6BYMj$<{(<|mD%9c#H8Lpe?b*6{VVo45kM}qdbENOW^`kvh}jaN+4lr3vhRs z2w-M-URD*kNrCBR$ND5_P1B&XYsG3wi}dE8Bg>pXTcTy@&V@ZpY>o_DpO3CkU0BrXatFn}GK2H7reuDCi3Lj_M{Mo85W zPL&l%wvNf#j{)$69#eF%CmG2}3%yjmq^FXYQA&*56NZ!Jeo4uj%IZq|&~kj(0@CV0 z6UwQv+cSElrfaneRZoY(fZ;igmsRia;CpM^!FQ^)#=@k0xfynNPAgbRa0)!~NNqi( zs>V|d@ZMCQONku^W>_|~YJxi2ft&2f! z4TeiFnHBUU6|jL1x>~f66-$TnWPpEmSIhYj!3X_V34&L?|0fjm+(pZ5+B(l6YcP{) z9%W>~UC~3=@_pLZKKj@(v5XQ(&=#N?^v11|oh-J*+E}?4q>YwP_$@3?5c)_=X;N#@ zB#S3NEhcH3mZPv?n-M;1OgS`j9Uek=d9bOl=RNplo&>Pb4YAj=dYW zdNm#xWn(q$l3fie*-Yz3MQBr73Imvi{Ok>hE%ti z5eeJ~V1XH1lFzKAPYEEtRfl1d?ZdE%ANmUKNZ}c_i5xHLYUE~nx*0ZWdQ$7$Eq$wj z=*%GHmYk*x?FSwU1)goU^ovrApu!1>yD<%MzA!t<3fV5|i|^H20I@|_@{oY|{ujNTu+O&&(dahc>fRf?-FQcMI8uo17F#GTgOIF#XP<)yrC2=Dqr)jFoQz|$_ zBU47Qq3fz?&i+V-tGS{>+bKWaqj{Z7r}L1cVG@>apEM~k+07-O!sJSDGG^r_HJm+& ze#l73XELacU;p%`zyF4OIhUcwBK~{?$|8>k^|x_c zB9iUlj~l%zOz8!=rNH4-7(vgRhApK=-B)!#st1;|z(_gUC%gQf#;L-&0+uVKJ+5G~ zXOwH0(}afZrslKE4)_G4)1Vxm-+65(D9v@iw}}~2aEYx*eif6oR6TI)g{K(Z_iBdY z8%9GnyEbi{2_Ryn*+7blWsh3+M>9;VTq!U|rZGvBlC_;{4zljLKmL9)6A36a`{PJ5 zF(N}pUicV1Vvsm*a4+Lj8Oyf$My1^w?`MW!1je?m+X(q=LKH9lR3>%C*A6UcW~6yd z`i8$8&+xKSV8#(@`;##4J{3q;^6-xH9~@w{jZ8wq+66q=76*e;si6G8hPm4$Y1s8* z3vHH*M-@cJau4l~2Nuj?kYWIiki*%dgcNN*9gY1N^T_i)4*RpxbA_^g?XWVsR_Q&X zwEW~&pI`GcZ#oL*l+~H@n?Cvb>!18q3km$YIxzH)2VQvmt!J?&p?6hj+^Fz*Vf?9J z;!kC8@bZ`iXZb(4ky{=5XmG>m$hj}(^1b=1*TDb9o{MK5+ka8A;MrF%eC6R6W~N&f z@ka~pd$4g#}xc0cl~lZ6}qsJou4!tUF1fgZ%o4fYNWTLW@=D)#6gKzOw6NN@#fuogG@E|oNi#)Z6)JR`Ou3E3aMaO!9?_yOw2&@{k zIZAFr-v+fOw?UcwAYPl{Uz0$=%yNqR!o^d)tKWR&-Zvim`hE9aR4!H4=df1R^Lw!h zIo=&RLLH7ZLfB-WU}P9S9#Q(PS*IMO_taR=0B75}ZDUwZ+j_U{RC+-lP5q>~4mZ_2 zLe}6b5_^p`y+9ouQ_1_Iu<-6Hm17|?RjZ^fPHT&E`{(BOEvQzg;?F9;FZzduF@&L> zp*xk{OE3gx5@Jzxxa#8JxjBOQQ&sQSLHvdOqs8JV>eOaX>b1SsZlR{Xb_-W96)n<6 zRw`&mFJRF299o#U1r{3^f(Wu)r1G08{uu{O^ZoOidhm6NvWiu{`mcLt|NM#Br#^zk zSehoU_w(1|d*p2(SeTDVat8+v0vovQj@i6&{8sZP+C#5{mAFK}{z}FwdH+(0pj(mz zfb+V6>qdL<)s7eV!p?(#o!?lv0_d1-AS@E>L>rH?*6 z_aaC*zc6!X@8Z(JktFuyeO28G=x*%4akvLxnHHIYC(;#H192-y50{m7V|~grbWr$1 zdWazK71e`GN8%||X{Z%RTV{e2teGuFC*gP})I;M@p zZ7>}MywJY@GQ*VtzH0tsJzx9x9bd*~r``(^b9FZFV$)9ogPZzqx~2zT8H2yQetPX^ z-nn@fUTbl7>G1R-_B;VXd>c4S0EZ*}M*sp`8Hb(9v8Udx?fWWI@A2umC7Igsead2c z|8`J2Tp0_N0mV$4jH%()_-1}Ec;xanA?$il9L5{fjgvU+ATv+$Bu~Tn7hl-;+)LL# zejdQ{s1WoQ-v!~v8{^x@$q#5@=fF;n1V%0RK=55+HO7YJi= z)}izc_A869_lGa`RC@ZMc@$+AL?$-YhMzPm6^Civz_$IKyi9Kctavc~r0R9hG#;5e= z8_$3H-1ioMYHogM_UO@LM_Rp?-v_%*G$G9n%!1wE%2+LpJ@e)d4*&3FV6`wmyLe!s XRoC%diivvzpqd+)1L@$pmzwSWurjIE literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h new file mode 100644 index 00000000..e1066870 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h @@ -0,0 +1,196 @@ +/* Copyright (C) 2002-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_SIGCONTEXT_H +#define _BITS_SIGCONTEXT_H 1 + +#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H +# error "Never use directly; include instead." +#endif + +#include + +#define FP_XSTATE_MAGIC1 0x46505853U +#define FP_XSTATE_MAGIC2 0x46505845U +#define FP_XSTATE_MAGIC2_SIZE sizeof (FP_XSTATE_MAGIC2) + +struct _fpx_sw_bytes +{ + __uint32_t magic1; + __uint32_t extended_size; + __uint64_t xstate_bv; + __uint32_t xstate_size; + __uint32_t __glibc_reserved1[7]; +}; + +struct _fpreg +{ + unsigned short significand[4]; + unsigned short exponent; +}; + +struct _fpxreg +{ + unsigned short significand[4]; + unsigned short exponent; + unsigned short __glibc_reserved1[3]; +}; + +struct _xmmreg +{ + __uint32_t element[4]; +}; + + + +#ifndef __x86_64__ + +struct _fpstate +{ + /* Regular FPU environment. */ + __uint32_t cw; + __uint32_t sw; + __uint32_t tag; + __uint32_t ipoff; + __uint32_t cssel; + __uint32_t dataoff; + __uint32_t datasel; + struct _fpreg _st[8]; + unsigned short status; + unsigned short magic; + + /* FXSR FPU environment. */ + __uint32_t _fxsr_env[6]; + __uint32_t mxcsr; + __uint32_t __glibc_reserved1; + struct _fpxreg _fxsr_st[8]; + struct _xmmreg _xmm[8]; + __uint32_t __glibc_reserved2[56]; +}; + +#ifndef sigcontext_struct +/* Kernel headers before 2.1.1 define a struct sigcontext_struct, but + we need sigcontext. Some packages have come to rely on + sigcontext_struct being defined on 32-bit x86, so define this for + their benefit. */ +# define sigcontext_struct sigcontext +#endif + +#define X86_FXSR_MAGIC 0x0000 + +struct sigcontext +{ + unsigned short gs, __gsh; + unsigned short fs, __fsh; + unsigned short es, __esh; + unsigned short ds, __dsh; + unsigned long edi; + unsigned long esi; + unsigned long ebp; + unsigned long esp; + unsigned long ebx; + unsigned long edx; + unsigned long ecx; + unsigned long eax; + unsigned long trapno; + unsigned long err; + unsigned long eip; + unsigned short cs, __csh; + unsigned long eflags; + unsigned long esp_at_signal; + unsigned short ss, __ssh; + struct _fpstate * fpstate; + unsigned long oldmask; + unsigned long cr2; +}; + +#else /* __x86_64__ */ + +struct _fpstate +{ + /* FPU environment matching the 64-bit FXSAVE layout. */ + __uint16_t cwd; + __uint16_t swd; + __uint16_t ftw; + __uint16_t fop; + __uint64_t rip; + __uint64_t rdp; + __uint32_t mxcsr; + __uint32_t mxcr_mask; + struct _fpxreg _st[8]; + struct _xmmreg _xmm[16]; + __uint32_t __glibc_reserved1[24]; +}; + +struct sigcontext +{ + __uint64_t r8; + __uint64_t r9; + __uint64_t r10; + __uint64_t r11; + __uint64_t r12; + __uint64_t r13; + __uint64_t r14; + __uint64_t r15; + __uint64_t rdi; + __uint64_t rsi; + __uint64_t rbp; + __uint64_t rbx; + __uint64_t rdx; + __uint64_t rax; + __uint64_t rcx; + __uint64_t rsp; + __uint64_t rip; + __uint64_t eflags; + unsigned short cs; + unsigned short gs; + unsigned short fs; + unsigned short __pad0; + __uint64_t err; + __uint64_t trapno; + __uint64_t oldmask; + __uint64_t cr2; + __extension__ union + { + struct _fpstate * fpstate; + __uint64_t __fpstate_word; + }; + __uint64_t __reserved1 [8]; +}; + +#endif /* __x86_64__ */ + +struct _xsave_hdr +{ + __uint64_t xstate_bv; + __uint64_t __glibc_reserved1[2]; + __uint64_t __glibc_reserved2[5]; +}; + +struct _ymmh_state +{ + __uint32_t ymmh_space[64]; +}; + +struct _xstate +{ + struct _fpstate fpstate; + struct _xsave_hdr xstate_hdr; + struct _ymmh_state ymmh; +}; + +#endif /* _BITS_SIGCONTEXT_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ba04b46f1bb2c50c7c3d4be638e56ed3b5022a85 GIT binary patch literal 18704 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. */ + +#ifndef _BITS_SIGEVENT_CONSTS_H +#define _BITS_SIGEVENT_CONSTS_H 1 + +#if !defined _SIGNAL_H && !defined _AIO_H +#error "Don't include directly; use instead." +#endif + +/* `sigev_notify' values. */ +enum +{ + SIGEV_SIGNAL = 0, /* Notify via signal. */ +# define SIGEV_SIGNAL SIGEV_SIGNAL + SIGEV_NONE, /* Other notification: meaningless. */ +# define SIGEV_NONE SIGEV_NONE + SIGEV_THREAD, /* Deliver via thread creation. */ +# define SIGEV_THREAD SIGEV_THREAD + + SIGEV_THREAD_ID = 4 /* Send signal to specific thread. + This is a Linux extension. */ +#define SIGEV_THREAD_ID SIGEV_THREAD_ID +}; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d5295bb5505973cfd22af322a5736e268fa7bc98 GIT binary patch literal 12952 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h new file mode 100644 index 00000000..49f77447 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h @@ -0,0 +1,216 @@ +/* siginfo constants. Linux version. + Copyright (C) 1997-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_SIGINFO_CONSTS_H +#define _BITS_SIGINFO_CONSTS_H 1 + +#ifndef _SIGNAL_H +#error "Don't include directly; use instead." +#endif + +/* Most of these constants are uniform across all architectures, but there + is one exception. */ +#include +#ifndef __SI_ASYNCIO_AFTER_SIGIO +# define __SI_ASYNCIO_AFTER_SIGIO 1 +#endif + +/* Values for `si_code'. Positive values are reserved for kernel-generated + signals. */ +enum +{ + SI_ASYNCNL = -60, /* Sent by asynch name lookup completion. */ + SI_DETHREAD = -7, /* Sent by execve killing subsidiary + threads. */ + SI_TKILL, /* Sent by tkill. */ + SI_SIGIO, /* Sent by queued SIGIO. */ +#if __SI_ASYNCIO_AFTER_SIGIO + SI_ASYNCIO, /* Sent by AIO completion. */ + SI_MESGQ, /* Sent by real time mesq state change. */ + SI_TIMER, /* Sent by timer expiration. */ +#else + SI_MESGQ, + SI_TIMER, + SI_ASYNCIO, +#endif + SI_QUEUE, /* Sent by sigqueue. */ + SI_USER, /* Sent by kill, sigsend. */ + SI_KERNEL = 0x80 /* Send by kernel. */ + +#define SI_ASYNCNL SI_ASYNCNL +#define SI_DETHREAD SI_DETHREAD +#define SI_TKILL SI_TKILL +#define SI_SIGIO SI_SIGIO +#define SI_ASYNCIO SI_ASYNCIO +#define SI_MESGQ SI_MESGQ +#define SI_TIMER SI_TIMER +#define SI_ASYNCIO SI_ASYNCIO +#define SI_QUEUE SI_QUEUE +#define SI_USER SI_USER +#define SI_KERNEL SI_KERNEL +}; + + +# if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +/* `si_code' values for SIGILL signal. */ +enum +{ + ILL_ILLOPC = 1, /* Illegal opcode. */ +# define ILL_ILLOPC ILL_ILLOPC + ILL_ILLOPN, /* Illegal operand. */ +# define ILL_ILLOPN ILL_ILLOPN + ILL_ILLADR, /* Illegal addressing mode. */ +# define ILL_ILLADR ILL_ILLADR + ILL_ILLTRP, /* Illegal trap. */ +# define ILL_ILLTRP ILL_ILLTRP + ILL_PRVOPC, /* Privileged opcode. */ +# define ILL_PRVOPC ILL_PRVOPC + ILL_PRVREG, /* Privileged register. */ +# define ILL_PRVREG ILL_PRVREG + ILL_COPROC, /* Coprocessor error. */ +# define ILL_COPROC ILL_COPROC + ILL_BADSTK, /* Internal stack error. */ +# define ILL_BADSTK ILL_BADSTK + ILL_BADIADDR /* Unimplemented instruction address. */ +# define ILL_BADIADDR ILL_BADIADDR +}; + +/* `si_code' values for SIGFPE signal. */ +enum +{ + FPE_INTDIV = 1, /* Integer divide by zero. */ +# define FPE_INTDIV FPE_INTDIV + FPE_INTOVF, /* Integer overflow. */ +# define FPE_INTOVF FPE_INTOVF + FPE_FLTDIV, /* Floating point divide by zero. */ +# define FPE_FLTDIV FPE_FLTDIV + FPE_FLTOVF, /* Floating point overflow. */ +# define FPE_FLTOVF FPE_FLTOVF + FPE_FLTUND, /* Floating point underflow. */ +# define FPE_FLTUND FPE_FLTUND + FPE_FLTRES, /* Floating point inexact result. */ +# define FPE_FLTRES FPE_FLTRES + FPE_FLTINV, /* Floating point invalid operation. */ +# define FPE_FLTINV FPE_FLTINV + FPE_FLTSUB, /* Subscript out of range. */ +# define FPE_FLTSUB FPE_FLTSUB + FPE_FLTUNK = 14, /* Undiagnosed floating-point exception. */ +# define FPE_FLTUNK FPE_FLTUNK + FPE_CONDTRAP /* Trap on condition. */ +# define FPE_CONDTRAP FPE_CONDTRAP +}; + +/* `si_code' values for SIGSEGV signal. */ +enum +{ + SEGV_MAPERR = 1, /* Address not mapped to object. */ +# define SEGV_MAPERR SEGV_MAPERR + SEGV_ACCERR, /* Invalid permissions for mapped object. */ +# define SEGV_ACCERR SEGV_ACCERR + SEGV_BNDERR, /* Bounds checking failure. */ +# define SEGV_BNDERR SEGV_BNDERR + SEGV_PKUERR, /* Protection key checking failure. */ +# define SEGV_PKUERR SEGV_PKUERR + SEGV_ACCADI, /* ADI not enabled for mapped object. */ +# define SEGV_ACCADI SEGV_ACCADI + SEGV_ADIDERR, /* Disrupting MCD error. */ +# define SEGV_ADIDERR SEGV_ADIDERR + SEGV_ADIPERR, /* Precise MCD exception. */ +# define SEGV_ADIPERR SEGV_ADIPERR + SEGV_MTEAERR, /* Asynchronous ARM MTE error. */ +# define SEGV_MTEAERR SEGV_MTEAERR + SEGV_MTESERR /* Synchronous ARM MTE exception. */ +# define SEGV_MTESERR SEGV_MTESERR +}; + +/* `si_code' values for SIGBUS signal. */ +enum +{ + BUS_ADRALN = 1, /* Invalid address alignment. */ +# define BUS_ADRALN BUS_ADRALN + BUS_ADRERR, /* Non-existent physical address. */ +# define BUS_ADRERR BUS_ADRERR + BUS_OBJERR, /* Object specific hardware error. */ +# define BUS_OBJERR BUS_OBJERR + BUS_MCEERR_AR, /* Hardware memory error: action required. */ +# define BUS_MCEERR_AR BUS_MCEERR_AR + BUS_MCEERR_AO /* Hardware memory error: action optional. */ +# define BUS_MCEERR_AO BUS_MCEERR_AO +}; +# endif + +# ifdef __USE_XOPEN_EXTENDED +/* `si_code' values for SIGTRAP signal. */ +enum +{ + TRAP_BRKPT = 1, /* Process breakpoint. */ +# define TRAP_BRKPT TRAP_BRKPT + TRAP_TRACE, /* Process trace trap. */ +# define TRAP_TRACE TRAP_TRACE + TRAP_BRANCH, /* Process taken branch trap. */ +# define TRAP_BRANCH TRAP_BRANCH + TRAP_HWBKPT, /* Hardware breakpoint/watchpoint. */ +# define TRAP_HWBKPT TRAP_HWBKPT + TRAP_UNK /* Undiagnosed trap. */ +# define TRAP_UNK TRAP_UNK +}; +# endif + +# if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +/* `si_code' values for SIGCHLD signal. */ +enum +{ + CLD_EXITED = 1, /* Child has exited. */ +# define CLD_EXITED CLD_EXITED + CLD_KILLED, /* Child was killed. */ +# define CLD_KILLED CLD_KILLED + CLD_DUMPED, /* Child terminated abnormally. */ +# define CLD_DUMPED CLD_DUMPED + CLD_TRAPPED, /* Traced child has trapped. */ +# define CLD_TRAPPED CLD_TRAPPED + CLD_STOPPED, /* Child has stopped. */ +# define CLD_STOPPED CLD_STOPPED + CLD_CONTINUED /* Stopped child has continued. */ +# define CLD_CONTINUED CLD_CONTINUED +}; + +/* `si_code' values for SIGPOLL signal. */ +enum +{ + POLL_IN = 1, /* Data input available. */ +# define POLL_IN POLL_IN + POLL_OUT, /* Output buffers available. */ +# define POLL_OUT POLL_OUT + POLL_MSG, /* Input message available. */ +# define POLL_MSG POLL_MSG + POLL_ERR, /* I/O error. */ +# define POLL_ERR POLL_ERR + POLL_PRI, /* High priority input available. */ +# define POLL_PRI POLL_PRI + POLL_HUP /* Device disconnected. */ +# define POLL_HUP POLL_HUP +}; +# endif + +/* Architectures might also add architecture-specific constants. + These are all considered GNU extensions. */ +#ifdef __USE_GNU +# include +#endif + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..fb37a029f27e76db41ff1bf0697db9d432c4f094 GIT binary patch literal 21380 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 RVEN5-C>zSM;ZyC<^&h0mXL|qu literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h new file mode 100644 index 00000000..ca511ade --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h @@ -0,0 +1,31 @@ +/* System-specific extensions of , Linux version. + Copyright (C) 2019-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SIGNAL_H +# error "Never include directly; use instead." +#endif + +#ifdef __USE_GNU + +/* Send SIGNAL to the thread TID in the thread group (process) + identified by TGID. This function behaves like kill, but also + fails with ESRCH if the specified TID does not belong to the + specified thread group. */ +extern int tgkill (__pid_t __tgid, __pid_t __tid, int __signal); + +#endif /* __USE_GNU */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5a676e72a9f5483a3d7d3d2fb682e9d432c01eda GIT binary patch literal 12135 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. */ + +#ifndef _BITS_SIGNUM_ARCH_H +#define _BITS_SIGNUM_ARCH_H 1 + +#ifndef _SIGNAL_H +#error "Never include directly; use instead." +#endif + +/* Adjustments and additions to the signal number constants for + most Linux systems. */ + +#define SIGSTKFLT 16 /* Stack fault (obsolete). */ +#define SIGPWR 30 /* Power failure imminent. */ + +/* Historical signals specified by POSIX. */ +#define SIGBUS 7 /* Bus error. */ +#define SIGSYS 31 /* Bad system call. */ + +/* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ +#define SIGURG 23 /* Urgent data is available at a socket. */ +#define SIGSTOP 19 /* Stop, unblockable. */ +#define SIGTSTP 20 /* Keyboard stop. */ +#define SIGCONT 18 /* Continue. */ +#define SIGCHLD 17 /* Child terminated or stopped. */ +#define SIGTTIN 21 /* Background read from control terminal. */ +#define SIGTTOU 22 /* Background write to control terminal. */ +#define SIGPOLL 29 /* Pollable event occurred (System V). */ +#define SIGXFSZ 25 /* File size limit exceeded. */ +#define SIGXCPU 24 /* CPU time limit exceeded. */ +#define SIGVTALRM 26 /* Virtual timer expired. */ +#define SIGPROF 27 /* Profiling timer expired. */ +#define SIGUSR1 10 /* User-defined signal 1. */ +#define SIGUSR2 12 /* User-defined signal 2. */ + +/* Nonstandard signals found in all modern POSIX systems + (including both BSD and Linux). */ +#define SIGWINCH 28 /* Window size change (4.3 BSD, Sun). */ + +/* Archaic names for compatibility. */ +#define SIGIO SIGPOLL /* I/O now possible (4.2 BSD). */ +#define SIGIOT SIGABRT /* IOT instruction, abort() on a PDP-11. */ +#define SIGCLD SIGCHLD /* Old System V name */ + +#define __SIGRTMIN 32 +#define __SIGRTMAX 64 + +#endif /* included. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b50293908c821afc908fc7fadf9f5b61f21d49ff GIT binary patch literal 13618 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. */ + +#ifndef _BITS_SIGNUM_GENERIC_H +#define _BITS_SIGNUM_GENERIC_H 1 + +#ifndef _SIGNAL_H +#error "Never include directly; use instead." +#endif + +/* Fake signal functions. */ + +#define SIG_ERR ((__sighandler_t) -1) /* Error return. */ +#define SIG_DFL ((__sighandler_t) 0) /* Default action. */ +#define SIG_IGN ((__sighandler_t) 1) /* Ignore signal. */ + +#ifdef __USE_XOPEN +# define SIG_HOLD ((__sighandler_t) 2) /* Add signal to hold mask. */ +#endif + +/* We define here all the signal names listed in POSIX (1003.1-2008); + as of 1003.1-2013, no additional signals have been added by POSIX. + We also define here signal names that historically exist in every + real-world POSIX variant (e.g. SIGWINCH). + + Signals in the 1-15 range are defined with their historical numbers. + For other signals, we use the BSD numbers. + There are two unallocated signal numbers in the 1-31 range: 7 and 29. + Signal number 0 is reserved for use as kill(pid, 0), to test whether + a process exists without sending it a signal. */ + +/* ISO C99 signals. */ +#define SIGINT 2 /* Interactive attention signal. */ +#define SIGILL 4 /* Illegal instruction. */ +#define SIGABRT 6 /* Abnormal termination. */ +#define SIGFPE 8 /* Erroneous arithmetic operation. */ +#define SIGSEGV 11 /* Invalid access to storage. */ +#define SIGTERM 15 /* Termination request. */ + +/* Historical signals specified by POSIX. */ +#define SIGHUP 1 /* Hangup. */ +#define SIGQUIT 3 /* Quit. */ +#define SIGTRAP 5 /* Trace/breakpoint trap. */ +#define SIGKILL 9 /* Killed. */ +#define SIGPIPE 13 /* Broken pipe. */ +#define SIGALRM 14 /* Alarm clock. */ + +/* Archaic names for compatibility. */ +#define SIGIO SIGPOLL /* I/O now possible (4.2 BSD). */ +#define SIGIOT SIGABRT /* IOT instruction, abort() on a PDP-11. */ +#define SIGCLD SIGCHLD /* Old System V name */ + +/* Not all systems support real-time signals. bits/signum.h indicates + that they are supported by overriding __SIGRTMAX to a value greater + than __SIGRTMIN. These constants give the kernel-level hard limits, + but some real-time signals may be used internally by glibc. Do not + use these constants in application code; use SIGRTMIN and SIGRTMAX + (defined in signal.h) instead. */ + +/* Include system specific bits. */ +#include + +/* Biggest signal number + 1 (including real-time signals). */ +#define _NSIG (__SIGRTMAX + 1) + +#endif /* bits/signum-generic.h. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..64dad3455da10eeaad837c7507688437f95dda92 GIT binary patch literal 13410 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. */ + +#ifndef _BITS_SIGSTACK_H +#define _BITS_SIGSTACK_H 1 + +#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H +# error "Never include this file directly. Use instead" +#endif + +/* Minimum stack size for a signal handler. */ +#define MINSIGSTKSZ 2048 + +/* System default stack size. */ +#define SIGSTKSZ 8192 + +#endif /* bits/sigstack.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3512ae2f494fc9b22036c56a2f985d6af532748e GIT binary patch literal 12335 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 QPS0L?_Ucpm_nPJOe+Tdc`Tzg` literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h new file mode 100644 index 00000000..2fef2b98 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h @@ -0,0 +1,33 @@ +/* Definition of MINSIGSTKSZ and SIGSTKSZ. Linux version. + Copyright (C) 2020-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SIGNAL_H +# error "Never include directly; use instead." +#endif + +#if defined __USE_DYNAMIC_STACK_SIZE && __USE_DYNAMIC_STACK_SIZE +# include + +/* Default stack size for a signal handler: sysconf (SC_SIGSTKSZ). */ +# undef SIGSTKSZ +# define SIGSTKSZ sysconf (_SC_SIGSTKSZ) + +/* Minimum stack size for a signal handler: SIGSTKSZ. */ +# undef MINSIGSTKSZ +# define MINSIGSTKSZ SIGSTKSZ +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..2fb954100e8a5b0d397346b61f3cfb0136a67f97 GIT binary patch literal 12137 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. */ + +#ifndef _BITS_SIGTHREAD_H +#define _BITS_SIGTHREAD_H 1 + +#if !defined _SIGNAL_H && !defined _PTHREAD_H +# error "Never include this file directly. Use instead" +#endif + +/* Functions for handling signals. */ +#include + +/* Modify the signal mask for the calling thread. The arguments have + the same meaning as for sigprocmask(2). */ +extern int pthread_sigmask (int __how, + const __sigset_t *__restrict __newmask, + __sigset_t *__restrict __oldmask)__THROW; + +/* Send signal SIGNO to the given thread. */ +extern int pthread_kill (pthread_t __threadid, int __signo) __THROW; + +#ifdef __USE_GNU +/* Queue signal and data to a thread. */ +extern int pthread_sigqueue (pthread_t __threadid, int __signo, + const union sigval __value) __THROW; +#endif + +#endif /* bits/sigthread.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..52359a3a8edfb5077095c2dc3e00cb5de5d09b76 GIT binary patch literal 13257 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 QZn|ZAP5iy%?010t|0=>qc>n+a literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h new file mode 100644 index 00000000..2027aad1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h @@ -0,0 +1,35 @@ +/* ss_flags values for stack_t. Linux version. + Copyright (C) 1998-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_SS_FLAGS_H +#define _BITS_SS_FLAGS_H 1 + +#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H +# error "Never include this file directly. Use instead" +#endif + +/* Possible values for `ss_flags'. */ +enum +{ + SS_ONSTACK = 1, +#define SS_ONSTACK SS_ONSTACK + SS_DISABLE +#define SS_DISABLE SS_DISABLE +}; + +#endif /* bits/ss_flags.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9eeea68b83c36e6b461ed35ee91ea8d72b6ebaec GIT binary patch literal 12532 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h new file mode 100644 index 00000000..3d943a8d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h @@ -0,0 +1,29 @@ +/* Define intN_t types. + Copyright (C) 2017-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_STDINT_INTN_H +#define _BITS_STDINT_INTN_H 1 + +#include + +typedef __int8_t int8_t; +typedef __int16_t int16_t; +typedef __int32_t int32_t; +typedef __int64_t int64_t; + +#endif /* bits/stdint-intn.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..c4c34c57908c44d87a19b82cf0ac9ebaac967940 GIT binary patch literal 12737 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. */ + +#ifndef _BITS_STDINT_UINTN_H +#define _BITS_STDINT_UINTN_H 1 + +#include + +typedef __uint8_t uint8_t; +typedef __uint16_t uint16_t; +typedef __uint32_t uint32_t; +typedef __uint64_t uint64_t; + +#endif /* bits/stdint-uintn.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..03b91461314acbf54af51dfa11addf1c3ec91d9e GIT binary patch literal 12779 zcmb7KU5F(|6~43jpt$N_#Q9Nhh|3T*+k2f!99B$-ZZ?SvyPJpIXi&7R+g*Kc?eyPv zRo{DO^+DhAAo!w!FFr&B{}2_C_#&tvxDr9|X~E!w;!6k!L2!v#PgQl*y>11r71c4z$3e_08i}GhdA#$4!T-)}3~OEuSstZzOo!JmT{#?%=$PeURK)cBWbo$x z-V1jenn;|K>WP%!c`{;x59L!n48v^11ran9l8Gfv*=VSA86F(jQ%N>wxu`%>Aicw$ z|C7U2$ppW`am`{>qGzrQ$7wAeZT|IVf9!Y}tXfyNMhPYI8FwT#Cdr7HI1g|Yrt^;- z946(#kw+6{AL*9dHHtY(Js+Jw0L)0a{!A|7QBkCluw^vGsw_C0ABHK*9A?gOL=+i| z!WoMxxV+8BdRUJW?rx>)7XPJSFK$;5$awbb@8HS|anw zPp3>d`t)y}b;Y;YA&NRufohHH9GR3sT8u~Q^&~2ir=!fLEkEJID5eRXGRw9QRUL`& z>C0E1a*j5#S@9LnEr*DqSYj3x#WABHE5fACBf*NCFPU!{#}p#S13x!<(t}Y6WXK8! z)c3P2TjzRkIv2GT7*X}XhBxY|Fa$$GV1^l)ha?4? zX?1acG_^`PkFFZVvF?~cX%>Kxx`Zef_;lq{sn2Uqe#%wU>H|^&e@SEYG3UwLQi3@a zLA6ch9KfrElqhYJ*X1F+Kr0Td!CQPY?Ni;PCyyR=BsY3l-J_J1qk>d;F;~G16+`3! z)FcQ(apJH;l`E?xnqYv1Qa7f^TY&EKXi`xcj?f ztnU~gI%NS3BEUQ0BCbz8Kyc}62oNcbO#sg;EXl|;Mcy$kR7x&V5eFiZRA~_r=n>pj z2R$85v;lABbk2n8l@RW-atNU5jXArGqlip4)qk`EwlR53Pn?F=7YPC)fiux`O84$Z zIucOTN^j+`$7hV=U|=b9pC&!o0*rB9523jo@t`B~2+xMJs&Zw6hwgpdZIN~4QgJiu z(Q_IUQS~9dwLV&`W3BB`J59?d&Fb`4d>(+c)a@(ZIqmjOs&FlI>ui@7bT*?=W6wF6(rBH%4W`J3?dZ`y zm;z3mYJk6hFh@m+=xRyyd2T}ZB-3NsQGCq<0T2reI+5EHk;7QtdJu4^T^dnoO$9+S z#_-j-t$Xll28isICPQYAms1_|AA+ih5f37eCJH8$K-(8UwOb1GJF&S?tGZ#O%+@PW=Hbx%Ys z4Wl;-q&QY>PB`F!ZtQ-=9Y#{fVrGaE7S8BD(4Hb;UYfG48wJ?P0ACBrI6lAdr z@wpRd6J5E!^z22qa;e~s(t^v4(#jGMl@=|{#!6u0C@3omL!IL@loNE*SS>+m!_bcP zq3%8;f83EtDgp}r2{I}s1wLj&<6O_z^;wP8**I(#Z*Cx>g3d;H!SX2#jICzg7|GyC zxWF6>D=1G`xps_mIJsU5>9v5j;%F-@QnuBswD%O~i4_5zSL<hT}VKo z#5BJZWxnuR)_h^CUg~p}l`tjh>YxGTtLHxNX{Q#U)s?CRf!#q=WLe>B3FL14pmR6g z>b|8ityo^9om}NQUUGs$Zbe$tDQarD_<-nbB|1u+Ww7Q-p{tW8q3ny zpt`g{Cw4=p_vCKvG0&FDaM)wlJB9rdEN>lqp$g9BUD%2>e7STrP&@uRPpn)aDfysf zOCWji6@jAAS2LlvuUo&WoWj~_aogb&_k{4Am8EWdzx(2IZW&b~L0dql&_1s&e|&6} zx219Kp^cVP_?gtF;w5z<4fTcwS-B)yaY-jE3qDU{A+IA_0c}FZrqIm-<_@L@6hGDp zv|m6)&I%}-z4J+dA`JC?#3gmJQ}W9irAb=ziJ$2#nvlh<+wv4;tutY9Gm)$FeD0?) zgIize|5u()JV2`5S^DONb*nzk!*+X%I%2umBKoG)0v7th{KC<=?Cm*I|D&~4$~Iu# z3x8{LjfW0QwZgVciAahHpO-DCTQzfwxZz`xJg>9v!L(^Zq#&)~$lP5Ap3S>G1a2j} zz|D%vY0h={*vNK-U8*Q7USCrHz~u6Jg%Ec+n%CxVE8t?gh6|`K+gggEN9wqN1x*{E zQ2HsvZeLo4s)Mpsz=JVvDKCo{Tg>pwSfRY^fV*n7!;)0Q{Qv-!flqqFy0)4(*T6_h z6f|b-!Ww<5^sqxXY?{&%Hcj@%*LerkBuZnN6{6R^EiFjQ7u9;%o;Ki0Hm7Ul*4H)v{qs7AG3?Xdp~ z8EfVVfrb*l+|!7yR?`8%FYLI2ZqRJQyA&06QcjQ=FE6O!;=zqWL!!Qsp)>jVXCD05 zAJk`a9y^ZYw)0&5BYTXB}@y)_wP;qg?9L5x7dFw2)sm7B#Hs9lcS( z;Yyf7H{2E*rKbJsbtz^QLkkSbIlbNUW16gnO9iP{%X-$pY8u2XY-xBz^48|n_(5J@ ztXqN0%e$g;H?lYfVq3YPC9d+7!dDlpQS-o^m)uYE@4}+2jG{S-d%Lzl0?1et4N$2J zdQAOa%owv;qriq(=cF=nZnTMK$s@3RoQ&s;b8vc10zs%#IowJJvTMirx(;bT<+12=Lgvz$G?`u8a4W)*B^URs|fZevv zY#pB3*cxmdN*4B5t;NRupWl7uo+c4zIG#g4t`w=KMnK`eFVaW a<#Z2w{>}s7|G?%07f#9Fj}7k2VEI3TuaE2i literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h new file mode 100644 index 00000000..4c3f36d7 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h @@ -0,0 +1,28 @@ +/* System specific stdio.h definitions. Linux version. + Copyright (C) 2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_STDIO_LIM_H +#define _BITS_STDIO_LIM_H 1 + +#ifndef _STDIO_H +# error "Never include directly; use instead." +#endif + +#define FILENAME_MAX 4096 + +#endif /* bits/stdio_lim.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1a834ce5539bb8dc9f8b25a989f23e92690af94f GIT binary patch literal 12277 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 XUv-=Y506iP*UcL@Pp|3UGt2A$tP=1< literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h new file mode 100644 index 00000000..b16d0bb7 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h @@ -0,0 +1,29 @@ +/* Floating-point inline functions for stdlib.h. + Copyright (C) 2012-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _STDLIB_H +# error "Never use directly; include instead." +#endif + +#ifdef __USE_EXTERN_INLINES +__extern_inline double +__NTH (atof (const char *__nptr)) +{ + return strtod (__nptr, (char **) NULL); +} +#endif /* Optimizing and Inlining. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d2053a35843c02aaa2ef243bee43b6bbbde3881f GIT binary patch literal 12133 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. */ + +#ifndef _THREAD_MUTEX_INTERNAL_H +#define _THREAD_MUTEX_INTERNAL_H 1 + +struct __pthread_mutex_s +{ + int __lock; + unsigned int __count; + int __owner; +#ifdef __x86_64__ + unsigned int __nusers; +#endif + /* KIND must stay at this position in the structure to maintain + binary compatibility with static initializers. */ + int __kind; +#ifdef __x86_64__ + short __spins; + short __elision; + __pthread_list_t __list; +# define __PTHREAD_MUTEX_HAVE_PREV 1 +#else + unsigned int __nusers; + __extension__ union + { + struct + { + short __espins; + short __eelision; +# define __spins __elision_data.__espins +# define __elision __elision_data.__eelision + } __elision_data; + __pthread_slist_t __list; + }; +# define __PTHREAD_MUTEX_HAVE_PREV 0 +#endif +}; + +#ifdef __x86_64__ +# define __PTHREAD_MUTEX_INITIALIZER(__kind) \ + 0, 0, 0, 0, __kind, 0, 0, { 0, 0 } +#else +# define __PTHREAD_MUTEX_INITIALIZER(__kind) \ + 0, 0, 0, __kind, 0, { { 0, 0 } } +#endif + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5c1cbf263de8518317e8eda4de91b4b10489c61d GIT binary patch literal 13527 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h new file mode 100644 index 00000000..44ff452e --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h @@ -0,0 +1,65 @@ +/* x86 internal rwlock struct definitions. + Copyright (C) 2019-2023 Free Software Foundation, Inc. + + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _RWLOCK_INTERNAL_H +#define _RWLOCK_INTERNAL_H + +struct __pthread_rwlock_arch_t +{ + unsigned int __readers; + unsigned int __writers; + unsigned int __wrphase_futex; + unsigned int __writers_futex; + unsigned int __pad3; + unsigned int __pad4; +#ifdef __x86_64__ + int __cur_writer; + int __shared; + signed char __rwelision; +# ifdef __ILP32__ + unsigned char __pad1[3]; +# define __PTHREAD_RWLOCK_ELISION_EXTRA 0, { 0, 0, 0 } +# else + unsigned char __pad1[7]; +# define __PTHREAD_RWLOCK_ELISION_EXTRA 0, { 0, 0, 0, 0, 0, 0, 0 } +# endif + unsigned long int __pad2; + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned int __flags; +#else /* __x86_64__ */ + /* FLAGS must stay at this position in the structure to maintain + binary compatibility. */ + unsigned char __flags; + unsigned char __shared; + signed char __rwelision; + unsigned char __pad2; + int __cur_writer; +#endif +}; + +#ifdef __x86_64__ +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags +#else +# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ + 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 +#endif + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5595bb478ae83b7054a3c1ae562922f16f3659b2 GIT binary patch literal 13939 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h new file mode 100644 index 00000000..2de6ff9c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h @@ -0,0 +1,115 @@ +/* Common threading primitives definitions for both POSIX and C11. + Copyright (C) 2017-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _THREAD_SHARED_TYPES_H +#define _THREAD_SHARED_TYPES_H 1 + +/* Arch-specific definitions. Each architecture must define the following + macros to define the expected sizes of pthread data types: + + __SIZEOF_PTHREAD_ATTR_T - size of pthread_attr_t. + __SIZEOF_PTHREAD_MUTEX_T - size of pthread_mutex_t. + __SIZEOF_PTHREAD_MUTEXATTR_T - size of pthread_mutexattr_t. + __SIZEOF_PTHREAD_COND_T - size of pthread_cond_t. + __SIZEOF_PTHREAD_CONDATTR_T - size of pthread_condattr_t. + __SIZEOF_PTHREAD_RWLOCK_T - size of pthread_rwlock_t. + __SIZEOF_PTHREAD_RWLOCKATTR_T - size of pthread_rwlockattr_t. + __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. + __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. + + The additional macro defines any constraint for the lock alignment + inside the thread structures: + + __LOCK_ALIGNMENT - for internal lock/futex usage. + + Same idea but for the once locking primitive: + + __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. */ + +#include + +#include + + +/* Common definition of pthread_mutex_t. */ + +typedef struct __pthread_internal_list +{ + struct __pthread_internal_list *__prev; + struct __pthread_internal_list *__next; +} __pthread_list_t; + +typedef struct __pthread_internal_slist +{ + struct __pthread_internal_slist *__next; +} __pthread_slist_t; + +/* Arch-specific mutex definitions. A generic implementation is provided + by sysdeps/nptl/bits/struct_mutex.h. If required, an architecture + can override it by defining: + + 1. struct __pthread_mutex_s (used on both pthread_mutex_t and mtx_t + definition). It should contains at least the internal members + defined in the generic version. + + 2. __LOCK_ALIGNMENT for any extra attribute for internal lock used with + atomic operations. + + 3. The macro __PTHREAD_MUTEX_INITIALIZER used for static initialization. + It should initialize the mutex internal flag. */ + +#include + +/* Arch-sepecific read-write lock definitions. A generic implementation is + provided by struct_rwlock.h. If required, an architecture can override it + by defining: + + 1. struct __pthread_rwlock_arch_t (used on pthread_rwlock_t definition). + It should contain at least the internal members defined in the + generic version. + + 2. The macro __PTHREAD_RWLOCK_INITIALIZER used for static initialization. + It should initialize the rwlock internal type. */ + +#include + + +/* Common definition of pthread_cond_t. */ + +struct __pthread_cond_s +{ + __atomic_wide_counter __wseq; + __atomic_wide_counter __g1_start; + unsigned int __g_refs[2] __LOCK_ALIGNMENT; + unsigned int __g_size[2]; + unsigned int __g1_orig_size; + unsigned int __wrefs; + unsigned int __g_signals[2]; +}; + +typedef unsigned int __tss_t; +typedef unsigned long int __thrd_t; + +typedef struct +{ + int __data __ONCE_ALIGNMENT; +} __once_flag; + +#define __ONCE_FLAG_INIT { 0 } + +#endif /* _THREAD_SHARED_TYPES_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..285b272713d73959e272ce16b7d6432aa4d6681d GIT binary patch literal 14595 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 F{{wpJ4v+u< literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h new file mode 100644 index 00000000..1e6662a1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h @@ -0,0 +1,93 @@ +/* System-dependent timing definitions. Linux version. + Copyright (C) 1996-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * Never include this file directly; use instead. + */ + +#ifndef _BITS_TIME_H +#define _BITS_TIME_H 1 + +#include + +/* ISO/IEC 9899:1999 7.23.1: Components of time + The macro `CLOCKS_PER_SEC' is an expression with type `clock_t' that is + the number per second of the value returned by the `clock' function. */ +/* CAE XSH, Issue 4, Version 2: + The value of CLOCKS_PER_SEC is required to be 1 million on all + XSI-conformant systems. */ +#define CLOCKS_PER_SEC ((__clock_t) 1000000) + +#if (!defined __STRICT_ANSI__ || defined __USE_POSIX) \ + && !defined __USE_XOPEN2K +/* Even though CLOCKS_PER_SEC has such a strange value CLK_TCK + presents the real value for clock ticks per second for the system. */ +extern long int __sysconf (int); +# define CLK_TCK ((__clock_t) __sysconf (2)) /* 2 is _SC_CLK_TCK */ +#endif + +#ifdef __USE_POSIX199309 +/* Identifier for system-wide realtime clock. */ +# define CLOCK_REALTIME 0 +/* Monotonic system-wide clock. */ +# define CLOCK_MONOTONIC 1 +/* High-resolution timer from the CPU. */ +# define CLOCK_PROCESS_CPUTIME_ID 2 +/* Thread-specific CPU-time clock. */ +# define CLOCK_THREAD_CPUTIME_ID 3 +/* Monotonic system-wide clock, not adjusted for frequency scaling. */ +# define CLOCK_MONOTONIC_RAW 4 +/* Identifier for system-wide realtime clock, updated only on ticks. */ +# define CLOCK_REALTIME_COARSE 5 +/* Monotonic system-wide clock, updated only on ticks. */ +# define CLOCK_MONOTONIC_COARSE 6 +/* Monotonic system-wide clock that includes time spent in suspension. */ +# define CLOCK_BOOTTIME 7 +/* Like CLOCK_REALTIME but also wakes suspended system. */ +# define CLOCK_REALTIME_ALARM 8 +/* Like CLOCK_BOOTTIME but also wakes suspended system. */ +# define CLOCK_BOOTTIME_ALARM 9 +/* Like CLOCK_REALTIME but in International Atomic Time. */ +# define CLOCK_TAI 11 + +/* Flag to indicate time is absolute. */ +# define TIMER_ABSTIME 1 +#endif + +#ifdef __USE_GNU +# include + +__BEGIN_DECLS + +/* Tune a POSIX clock. */ +extern int clock_adjtime (__clockid_t __clock_id, struct timex *__utx) __THROW __nonnull((2)); + +#ifdef __USE_TIME_BITS64 +# if defined(__REDIRECT_NTH) +extern int __REDIRECT_NTH (clock_adjtime, (__clockid_t __clock_id, + struct timex *__utx), + __clock_adjtime64) __nonnull((2)); +# else +# define clock_adjtime __clock_adjtime64 +# endif +#endif + +__END_DECLS +#endif /* use GNU */ + +#endif /* bits/time.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..921bc6a50aef60e982734cc9d4f18a9fd15cce32 GIT binary patch literal 13272 zcmb7KUx-{+8K2!g4VDlWZ6!+GS}AFpo5^mHZE8)^&2E}TH`%b8serx#!HBx!*lA z&BGA(e)l`ypWpZQ-1{3J|L6TvHyR6#RxgcdD{5_0zE`AKtDwASb!ex>^Pm+ImK+Tl zw*?VNx^t0w!!+MxN!RPJoCZaj@1L$cq4B>X3#~rSTPz8peuuVpH@8+>ZQ5mtAEX_6 zwAc9f-sR_RSTsSgpUEdee(On_6}%;$@|N$%ZC;Rq`h{R(NF&y6NnKhiYvxoEk62RV zpec~vVBdPf;woi=AHUmY9aN(8Tdi)?7mp6U`RZS4UIwf7b6lg467h^%l4_I0r07`> za1{ollPjxXwzB5XMA}EVC9#d7kCM;Z`v8C;$!4F)i%vUDBSBa(nq-xwoQ+ofh{YB& z>o`)RF$?@5>rilcKPhN#h+V)8Sw#JIo({Qs;n>UV8n*>mpCw@`xEd@uYzUH*2mm-6 z54@j;BpAEYC2o&KY$QZ@<(J>K<>ca^uF+XU11eoNOqfF|X>f&o&bk8a)}j`$sHc1%3=P2a zV>0qd1U6IZ;t5jMD&agjZ5YeCT?(bSfDEZhh;)HVS3VH>yuYz-D{AxsDS^MBG5YB9 zL~KdHEQ_Gph9eHitCA^E+A^-QRd|8s99n}<_+~UubrYUkJ7Gz#^)k8#5zE>s$?;+? z!3-6nNIa-X0K#J5Vuvc1)SI|e|fD4<>d`L3`tu1h`0;KJ7c5Fw5U0LLpVjL9HE-q9|UN{&MjPeeMX zqBJ1TBiOADdODnF0B_{9&V=d}5^l4y2%zchaCRNfA|lvi|4|XxU~-S{TMe%Z2?Zd5 zv!d*jZr%zM5>VALXXP-*$Bg62z)+|@O?a}BFuF;<1fqxt|9P4-xv~BWP4bnh>~;E5hy9> zhzMc9O?K8kR0J#1H3{L+6ptUduoTges-B15qjo|8r+HnP(3}Ozd0v}viSLRB4M@_A zCSBPhR6sHjx(VfW7SVDGVEYQ$Es`;z+cQ78-R_@c;Tr2!+b)mkOhlu`9&s|D!7O|0 zoFW>wwG;E?6ma4|CHPYab5xXoPM1WN=X!+qVl}3%buKwl0APVZCvu%4a%jsN4?-TQ zmPS-sT|v-@(R@{Gs~$WbLPoYrlO{9Ai>VI!kAljH5eE@S6L>vJpzZUZ+D!m`vI8&i zHeh+0#8Ad@#7Qa`5ItzW&`^>DW%DJ24y6K-AXLytl0jDVau8Ue$RoL$lT1RYSfL$3 zjf?B{AEH0&LoF`o$RRTnZFMLrl{UC|h+7%nCvwEG-gh7&oCjVo0-7UT;EuSg1;4(- zRon7ndMa|U91jZ7D%Lxh0#)$~>@Q%kWZ6NxOnO%(2bkl=RMTLy{x8w5UmP)={EHg%Ro6tSl0p*+A|YO9R17tkn88H&igvnOVXttNA`u zf4|)i{ep~lAue|UZKx{O)7xk5$|b=aL@5^=rKu$%DlJ-?wUxleftTeJhC0ho(hABGR<1SU98Rv5LTWAGtT@UF`W**+186#!gfSm#ibv|S}ud|;J*q2&J)J~|B8bjp@q=*Qz`b~jY;tPry{*(?v zJ%gH8wp|FIP-2=~3t|`iCN&=$YcBOUi!+!KRdrAa<$Fh-a;oq;Z_O zS^}{fU#Z=VSGsSZOa;s1uoJ6X%S#q0#8#v-ouZ}|iw{6=CD2jgIEFP>1YMmt8MlVY zH;{}0zjmsz1(cUI=)|t+)Sld~J^I;18TRMc^$uYF1j}2?UZ{d2aThja4Oc8(^yH5J z#+j)rBq<-XY#{_Mz9Ntm>T1S!_H|a-WO9YiGm0k!1CIf0vc?x6E)DhxPgs_zZuqA! zJz-Z?DJ66YbO0Uo^ghVNRsulS`=;)_PgjAgjS)tZ+4j z$%3g7#GTCwv?D-8j#DU%b4QF!doZ@oBQEKeTO+ruK@>)P-g7e@20b#qSDT!ZjCFdf zQ_kG-JeN0VhrzwBaOc~Pg^pCI+?ly1gIUWw&i!fwi#lSmog(Tk)ubf!h0&?CZZ@~) zbcGLQ)*;hk)vxr8(N)H?5>W-VSwxC3&GCuYaJtrKcA3_Ebj&9GxPJ638x0{yW&F{% z)1G6uZVrKa$GY@oMCCN$3O)wemar2wgLP(C4ai4gJv~K;yBv*ceYg>Dyg$PQRM%-0 zMbRS_ZeRsdO;9NP0I)kREko5o*~-L&F|H^t$`l(<>65uadf6&KvYGZXk`w!iAC-ak zu(YlPP!JN=QiUh4Uo0@943%x25eeL+z!o!oq*+{}Po+R+7>A8hl)=Wy-27VapyCBl zhsJ3!*WN8kNr#V1^rY1dEHgHuYAaBIrJ?CUgCTZ9c^XAi9U&?sm~a(=o3@bQ3)>M_ z$j(t;vUE5lkUm5w4{WDZCp3KQGKj=S0+{sZOEAZmBfKdK(*lSTS+2Y-@7i<gk_X1uiIgLh*Orkak|p+N*2Qn;A0v_YBISkmHb zMSfuiJVsddiBpMLQyOT+XZwNEhdaMGpiRJP=9-mu-s0)|y~ zRFq8RNF;7ha+Rj$ysCnmG`UBVBinRikFs}vDPzpsBhYr@mwYO(%N4Z;Ng8%tUVYM3 z#ByGn5EXV)7Ra=h$JB5EVdGGf$ZuunP`v()Fa6`s^7A=VQDw)r_=W_^sh~Fjqj?!^ z^I@9FyRy`?uQI9v@==$WfxqttZ%s-6|YoS_8< zfFzX-toDPr#+bDV7ngWx?T%!84q#ilp(3vI zmCUbpvPR7VcVA*pF@LWX#90uGNM~->mYDz|7R?5zR62VM++WUUvl^qordY+KG>U7S z8?UOaK39H3>68SF>i$Af?u6u8(G)%{o^(i=Hw?-QmE+i&4^`^k_#``oAP&2ya*_8_y&+Yi@XLrSa8jZ%Gd!Suq z30<}xG@H$pMq^=fY4gaU_&w3MwE)DoUVHJiAHMta`k(x>7q0C3;uZgK`1|KHlgYnJ z4tE~B^YG#V{2nPeET2eDpSjAvxUsdp@%3H*G6=JKZUcCHLG!SmEH58E?EB?r_rB$o zWAfj9Al%&t?*`%E_sNp=@K?`%>c@Y0??cJJ-#NFwRqAN7HcvpwW5CB-@{TTw-?frY z7@k}@d1_JoK2kFL?^B)6KJd}sPEIid zW_Q&vQ*Lc7wT>+=z^~T$#ozw^t!Ikg{7x~tytBP=ZgblitAhJI~PID!!}p@d9(QtuspML<|~Wh_tBE&>z{w~ zz<2Kb`x}bomGuk2XUXORe-sE75MEze|MH^vJzBp0-Ry;*-*NN&+v;_V5`SZReP>q$ z#Qip_DS~G6Brtt&>A|lqir=#(Q~#xxKls^SpLkg@9sAC3Jz{g6rf4?TfbBy|4?VId zel=naeRMqe;I4O0+13Lgrx2~}21-8&d>&qU7!VD=+P}}<*67Cnx_)^|=Nc~uG90KcUd{tp610owoo literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h new file mode 100644 index 00000000..723db1ed --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h @@ -0,0 +1,36 @@ +/* bits/time64.h -- underlying types for __time64_t. Generic version. + Copyright (C) 2018-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_TYPES_H +# error "Never include directly; use instead." +#endif + +#ifndef _BITS_TIME64_H +#define _BITS_TIME64_H 1 + +/* Define __TIME64_T_TYPE so that it is always a 64-bit type. */ + +#if __TIMESIZE == 64 +/* If we already have 64-bit time type then use it. */ +# define __TIME64_T_TYPE __TIME_T_TYPE +#else +/* Define a 64-bit time type alongsize the 32-bit one. */ +# define __TIME64_T_TYPE __SQUAD_TYPE +#endif + +#endif /* bits/time64.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..00c6a7b9534a491191ecfb609901d4e1f26c1c77 GIT binary patch literal 12322 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 Deh&U2 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h new file mode 100644 index 00000000..5cb04153 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h @@ -0,0 +1,27 @@ +/* Bit size of the time_t type at glibc build time, x86-64 and x32 case. + Copyright (C) 2018-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include + +#if defined __x86_64__ && defined __ILP32__ +/* For x32, time is 64-bit even though word size is 32-bit. */ +# define __TIMESIZE 64 +#else +/* For others, time size is word size. */ +# define __TIMESIZE __WORDSIZE +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..930b5adaa4fe86a328ea212f60b36be0ef561cb8 GIT binary patch literal 12234 zcmb7KKg=XI72gjkPzr=1P@p*hicrX8xg+^>1qeaz5}kC%NrZn25`)L%+4X&%@!Z(6 zyWfd|G6gk%8VX7ZgeWK}kvQ5^6o`%nrJ_2C9MAUHyWV-@nKWDMys_V(-}}Ai=XquI z;eS84{d9G)T5n~|)?$5!sVgnpwPs4MOIEH`N7pss&1-b^aVki&StOe6Wp~A!O;+-b zQ7yacZ%pp6`roS;>t1zh-cZq(Z2iui`?uBw+wdl*vShDqS0BE7ArA>3NB2 z^!EMrM)c;!@AB+lr_|s2f zJ(byL6KpowfNHm?8lKR~I^1Dj@y(8iGvG%~cXFE7tUD1)>CblD2Kt4+JdD*3*`Z}m zEl`7#qb;j86LM3`+es{vcSW7DR$Z$#Em?)9%&9MQ*HfLpb?^S&Xlt)qP~Q^WDMY-) z$zoK>E6#E*^Qv#C=CV;I?mOi%%Lrz}cZ)X@992PvoUMSyeqYyfp@*O=eWjkDR`v~t zWJMpHn1?f__XBLu5Q~98rv8y#L(wgp-C_@BEHSv1Ep2qd<`6d^v(hnu#a$A^HK7(T z|M<#-7{n$MQ166oU>8noeF*SIBbDdiXaHtjlS57f_{^D$6Qr+ICV1@JF_CvS3`(;G zhIA#wh9G6D+8KL3c=KDap}`)|64o~|!5+V#$t|l`Y#wUMofvy4td?)f)`k) zpf&i2Z;B<=%|!C@^+VT~dxuFycBqF^JULA02?i|72Mixg^q3paQrXsf`YFoQw z+GY8j1O)&VICLUU7@~*we25_M(6}_B+WHEDW{h9g<+kg=yFD;+T$;RC*xsD#p#RX! zo)~cufi^VTG6HR12G#Ba=%*d{fVUm*WK%;K#}Q|x;DDGx`-P^G6&RW?n{=oYs068k zKC%n6dfS1*7DXB9+&L)_(#Q*ifErg%%|A?k)nbJr5*DI_uFua?w_%Mpc4r;-w-H&upOg z%+SCrW=3j#yc(()DQ8PqYo>Vm1}aGg`~m>vX!e`KYjS^xN=!=Qz4a^D4h)v zQEk!E?7aj&rdiuDIMhWkLsx=s8mlF!Y@UZ>eeSvsvpyckO6ZJ1e6pJ9t;CPn&^Y&p zxjt*~I^X2O;4KCss_4FGByVr5`-btQM@+0R2T0z%@k?X{94i|SrAvYFCRvhPr zW6F-2mGPVc-LWHJ^Lag<>^6Kc97_J8GmqNL=EzVtV5R_vx*XUpE3X>@^U?^3J_w^y z6Qoj!B#054o)nlNzLA)TrwtGq8PvVD?Lq*B3bW=htyAzjwfyL;MdmABw{S{y)xi~^?) zxoHE7{?v;UM+6=W&Vl>-Z#Z`g;12qvoK?TH?VL9vN?n7(brSPr1TIIU;x4Naro- zNPNAI>Y%n5t$PI=gv^zc&g|7o1V(g0=i6jP!fICGXfeNK7+RxGtwP}-4$~&l!n7&e z`bO`d>QPa$TIxkJHz7%>jy3(%>j9Q6KQK2D7{M~gY@q!xbD>TOv7{RW7v4hP<~=NWf#J??<4V8u^egeyw0_x0kKmE(G3-%zgXj zP;T5m0bJ_|~nk>fsqZ5xJ>x;9ppUt_XH-2?YtW{R=A zSEF@H>4B7sLpv}5WGs4VjcVoDW0(GF#=A8*1*XId||{2b4)oz^Uo4 zBkg#}jub=T^Xl1v4A&$9WkD*j?ZihaQ*V5f83OI-*A}-C_-rCJZ}?VbbjdfREPS=Q z6DY5tZ?sp#U@lF8i96Kkd#(VVEzlL7-UI)^_0(i$S`ptan6Y&{7(}gt@&gCvr6ftk zzBrRjL0oT{8_WIj?O|ZyBL)-$>O>swADvh+`R(X{XR}5Y`Z$BmW zTz&SFtJTHxf9>AC{QR%_U+4Mv?mf8s&b@c#OG%@WTHA_@C-? literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h new file mode 100644 index 00000000..a1e18d5a --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h @@ -0,0 +1,228 @@ +/* bits/types.h -- definitions of __*_t types underlying *_t types. + Copyright (C) 2002-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * Never include this file directly; use instead. + */ + +#ifndef _BITS_TYPES_H +#define _BITS_TYPES_H 1 + +#include +#include +#include + +/* Convenience types. */ +typedef unsigned char __u_char; +typedef unsigned short int __u_short; +typedef unsigned int __u_int; +typedef unsigned long int __u_long; + +/* Fixed-size types, underlying types depend on word size and compiler. */ +typedef signed char __int8_t; +typedef unsigned char __uint8_t; +typedef signed short int __int16_t; +typedef unsigned short int __uint16_t; +typedef signed int __int32_t; +typedef unsigned int __uint32_t; +#if __WORDSIZE == 64 +typedef signed long int __int64_t; +typedef unsigned long int __uint64_t; +#else +__extension__ typedef signed long long int __int64_t; +__extension__ typedef unsigned long long int __uint64_t; +#endif + +/* Smallest types with at least a given width. */ +typedef __int8_t __int_least8_t; +typedef __uint8_t __uint_least8_t; +typedef __int16_t __int_least16_t; +typedef __uint16_t __uint_least16_t; +typedef __int32_t __int_least32_t; +typedef __uint32_t __uint_least32_t; +typedef __int64_t __int_least64_t; +typedef __uint64_t __uint_least64_t; + +/* quad_t is also 64 bits. */ +#if __WORDSIZE == 64 +typedef long int __quad_t; +typedef unsigned long int __u_quad_t; +#else +__extension__ typedef long long int __quad_t; +__extension__ typedef unsigned long long int __u_quad_t; +#endif + +/* Largest integral types. */ +#if __WORDSIZE == 64 +typedef long int __intmax_t; +typedef unsigned long int __uintmax_t; +#else +__extension__ typedef long long int __intmax_t; +__extension__ typedef unsigned long long int __uintmax_t; +#endif + + +/* The machine-dependent file defines __*_T_TYPE + macros for each of the OS types we define below. The definitions + of those macros must use the following macros for underlying types. + We define __S_TYPE and __U_TYPE for the signed and unsigned + variants of each of the following integer types on this machine. + + 16 -- "natural" 16-bit type (always short) + 32 -- "natural" 32-bit type (always int) + 64 -- "natural" 64-bit type (long or long long) + LONG32 -- 32-bit type, traditionally long + QUAD -- 64-bit type, traditionally long long + WORD -- natural type of __WORDSIZE bits (int or long) + LONGWORD -- type of __WORDSIZE bits, traditionally long + + We distinguish WORD/LONGWORD, 32/LONG32, and 64/QUAD so that the + conventional uses of `long' or `long long' type modifiers match the + types we define, even when a less-adorned type would be the same size. + This matters for (somewhat) portably writing printf/scanf formats for + these types, where using the appropriate l or ll format modifiers can + make the typedefs and the formats match up across all GNU platforms. If + we used `long' when it's 64 bits where `long long' is expected, then the + compiler would warn about the formats not matching the argument types, + and the programmer changing them to shut up the compiler would break the + program's portability. + + Here we assume what is presently the case in all the GCC configurations + we support: long long is always 64 bits, long is always word/address size, + and int is always 32 bits. */ + +#define __S16_TYPE short int +#define __U16_TYPE unsigned short int +#define __S32_TYPE int +#define __U32_TYPE unsigned int +#define __SLONGWORD_TYPE long int +#define __ULONGWORD_TYPE unsigned long int +#if __WORDSIZE == 32 +# define __SQUAD_TYPE __int64_t +# define __UQUAD_TYPE __uint64_t +# define __SWORD_TYPE int +# define __UWORD_TYPE unsigned int +# define __SLONG32_TYPE long int +# define __ULONG32_TYPE unsigned long int +# define __S64_TYPE __int64_t +# define __U64_TYPE __uint64_t +/* We want __extension__ before typedef's that use nonstandard base types + such as `long long' in C89 mode. */ +# define __STD_TYPE __extension__ typedef +#elif __WORDSIZE == 64 +# define __SQUAD_TYPE long int +# define __UQUAD_TYPE unsigned long int +# define __SWORD_TYPE long int +# define __UWORD_TYPE unsigned long int +# define __SLONG32_TYPE int +# define __ULONG32_TYPE unsigned int +# define __S64_TYPE long int +# define __U64_TYPE unsigned long int +/* No need to mark the typedef with __extension__. */ +# define __STD_TYPE typedef +#else +# error +#endif +#include /* Defines __*_T_TYPE macros. */ +#include /* Defines __TIME*_T_TYPE macros. */ + + +__STD_TYPE __DEV_T_TYPE __dev_t; /* Type of device numbers. */ +__STD_TYPE __UID_T_TYPE __uid_t; /* Type of user identifications. */ +__STD_TYPE __GID_T_TYPE __gid_t; /* Type of group identifications. */ +__STD_TYPE __INO_T_TYPE __ino_t; /* Type of file serial numbers. */ +__STD_TYPE __INO64_T_TYPE __ino64_t; /* Type of file serial numbers (LFS).*/ +__STD_TYPE __MODE_T_TYPE __mode_t; /* Type of file attribute bitmasks. */ +__STD_TYPE __NLINK_T_TYPE __nlink_t; /* Type of file link counts. */ +__STD_TYPE __OFF_T_TYPE __off_t; /* Type of file sizes and offsets. */ +__STD_TYPE __OFF64_T_TYPE __off64_t; /* Type of file sizes and offsets (LFS). */ +__STD_TYPE __PID_T_TYPE __pid_t; /* Type of process identifications. */ +__STD_TYPE __FSID_T_TYPE __fsid_t; /* Type of file system IDs. */ +__STD_TYPE __CLOCK_T_TYPE __clock_t; /* Type of CPU usage counts. */ +__STD_TYPE __RLIM_T_TYPE __rlim_t; /* Type for resource measurement. */ +__STD_TYPE __RLIM64_T_TYPE __rlim64_t; /* Type for resource measurement (LFS). */ +__STD_TYPE __ID_T_TYPE __id_t; /* General type for IDs. */ +__STD_TYPE __TIME_T_TYPE __time_t; /* Seconds since the Epoch. */ +__STD_TYPE __USECONDS_T_TYPE __useconds_t; /* Count of microseconds. */ +__STD_TYPE __SUSECONDS_T_TYPE __suseconds_t; /* Signed count of microseconds. */ +__STD_TYPE __SUSECONDS64_T_TYPE __suseconds64_t; + +__STD_TYPE __DADDR_T_TYPE __daddr_t; /* The type of a disk address. */ +__STD_TYPE __KEY_T_TYPE __key_t; /* Type of an IPC key. */ + +/* Clock ID used in clock and timer functions. */ +__STD_TYPE __CLOCKID_T_TYPE __clockid_t; + +/* Timer ID returned by `timer_create'. */ +__STD_TYPE __TIMER_T_TYPE __timer_t; + +/* Type to represent block size. */ +__STD_TYPE __BLKSIZE_T_TYPE __blksize_t; + +/* Types from the Large File Support interface. */ + +/* Type to count number of disk blocks. */ +__STD_TYPE __BLKCNT_T_TYPE __blkcnt_t; +__STD_TYPE __BLKCNT64_T_TYPE __blkcnt64_t; + +/* Type to count file system blocks. */ +__STD_TYPE __FSBLKCNT_T_TYPE __fsblkcnt_t; +__STD_TYPE __FSBLKCNT64_T_TYPE __fsblkcnt64_t; + +/* Type to count file system nodes. */ +__STD_TYPE __FSFILCNT_T_TYPE __fsfilcnt_t; +__STD_TYPE __FSFILCNT64_T_TYPE __fsfilcnt64_t; + +/* Type of miscellaneous file system fields. */ +__STD_TYPE __FSWORD_T_TYPE __fsword_t; + +__STD_TYPE __SSIZE_T_TYPE __ssize_t; /* Type of a byte count, or error. */ + +/* Signed long type used in system calls. */ +__STD_TYPE __SYSCALL_SLONG_TYPE __syscall_slong_t; +/* Unsigned long type used in system calls. */ +__STD_TYPE __SYSCALL_ULONG_TYPE __syscall_ulong_t; + +/* These few don't really vary by system, they always correspond + to one of the other defined types. */ +typedef __off64_t __loff_t; /* Type of file sizes and offsets (LFS). */ +typedef char *__caddr_t; + +/* Duplicates info from stdint.h but this is used in unistd.h. */ +__STD_TYPE __SWORD_TYPE __intptr_t; + +/* Duplicate info from sys/socket.h. */ +__STD_TYPE __U32_TYPE __socklen_t; + +/* C99: An integer type that can be accessed as an atomic entity, + even in the presence of asynchronous interrupts. + It is not currently necessary for this to be machine-specific. */ +typedef int __sig_atomic_t; + +/* Seconds since the Epoch, visible to user code when time_t is too + narrow only for consistency with the old way of widening too-narrow + types. User code should never use __time64_t. */ +#if __TIMESIZE == 64 && defined __LIBC +# define __time64_t __time_t +#elif __TIMESIZE != 64 +__STD_TYPE __TIME64_T_TYPE __time64_t; +#endif + +#undef __STD_TYPE + +#endif /* bits/types.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..270385145d0b4441e9d05cff94ecbacac8856f88 GIT binary patch literal 19604 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 C%ZSkc literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h new file mode 100644 index 00000000..f2682632 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h @@ -0,0 +1,9 @@ +#ifndef __FILE_defined +#define __FILE_defined 1 + +struct _IO_FILE; + +/* The opaque type of streams. This is the definition used elsewhere. */ +typedef struct _IO_FILE FILE; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..02e24403f0efaf8563b4cffbc270ac8d8a0ef219 GIT binary patch literal 12395 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 +#include + +/* The tag name of this struct is _G_fpos64_t to preserve historic + C++ mangled names for functions taking fpos_t and/or fpos64_t + arguments. That name should not be used in new code. */ +typedef struct _G_fpos64_t +{ + __off64_t __pos; + __mbstate_t __state; +} __fpos64_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a53a27a8d3386778dcad531a54632b6f64671a3e GIT binary patch literal 13123 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 X^$0<58Mu${8(-U#e}8s#EVcU|i}45& literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h new file mode 100644 index 00000000..bb045766 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h @@ -0,0 +1,16 @@ +#ifndef _____fpos_t_defined +#define _____fpos_t_defined 1 + +#include +#include + +/* The tag name of this struct is _G_fpos_t to preserve historic + C++ mangled names for functions taking fpos_t arguments. + That name should not be used in new code. */ +typedef struct _G_fpos_t +{ + __off_t __pos; + __mbstate_t __state; +} __fpos_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..435baf0a09f2d7770bbefc64fef69df9efa037ad GIT binary patch literal 13069 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h new file mode 100644 index 00000000..6b83d380 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h @@ -0,0 +1,43 @@ +/* Definition of struct __locale_struct and __locale_t. + Copyright (C) 1997-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_TYPES___LOCALE_T_H +#define _BITS_TYPES___LOCALE_T_H 1 + +/* POSIX.1-2008: the locale_t type, representing a locale context + (implementation-namespace version). This type should be treated + as opaque by applications; some details are exposed for the sake of + efficiency in e.g. ctype functions. */ + +struct __locale_struct +{ + /* Note: LC_ALL is not a valid index into this array. */ + struct __locale_data *__locales[13]; /* 13 = __LC_LAST. */ + + /* To increase the speed of this solution we add some special members. */ + const unsigned short int *__ctype_b; + const int *__ctype_tolower; + const int *__ctype_toupper; + + /* Note: LC_ALL is not a valid index into this array. */ + const char *__names[13]; +}; + +typedef struct __locale_struct *__locale_t; + +#endif /* bits/types/__locale_t.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4917ff83cff5a64ce983f63eecb7cbcc3994c05b GIT binary patch literal 13253 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 Ndr18Iv~wVk_kVRZL013( literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h new file mode 100644 index 00000000..1d8a4e28 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h @@ -0,0 +1,23 @@ +#ifndef ____mbstate_t_defined +#define ____mbstate_t_defined 1 + +/* Integral type unchanged by default argument promotions that can + hold any value corresponding to members of the extended character + set, as well as at least one value that does not correspond to any + member of the extended character set. */ +#ifndef __WINT_TYPE__ +# define __WINT_TYPE__ unsigned int +#endif + +/* Conversion state information. */ +typedef struct +{ + int __count; + union + { + __WINT_TYPE__ __wch; + char __wchb[4]; + } __value; /* Value so far. */ +} __mbstate_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9165af8741c2d7b25efc0ff19b0f835f95794cdd GIT binary patch literal 12911 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h new file mode 100644 index 00000000..e2f18acf --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h @@ -0,0 +1,10 @@ +#ifndef ____sigset_t_defined +#define ____sigset_t_defined + +#define _SIGSET_NWORDS (1024 / (8 * sizeof (unsigned long int))) +typedef struct +{ + unsigned long int __val[_SIGSET_NWORDS]; +} __sigset_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ccf1a2fdb415674cdc5bf370397914665d36998e GIT binary patch literal 12539 zcmb7KPpBkE8K3udc`Fih5iyG{aY#_!X16nW&-Jk^h??DG32w5I^&bXpYpSbfYG41` zuI`z6i-#O@5HErthzAdX9yE9mPkJ)wiWl*u;#Cw02;yNed45&ZRns;7bxr3T=J5LK zuf9LO?{D?fqj&!E*0qPDozY~Tr)-i;ZZdIP<;A38qMAf3nuwB4Qo^%m=;#bhNH!Zp z8Z7hjm}j#f;w7V1UY>la_k_{gS9T_~C?`ClNgc7t-J7=$CsQ`#SxEDUJu@G@^YQWP z4;>m>ofPVcl;3$W<&~Jor(zO@=~PstVqqnjSki<~CrX#e!I3?cq${3PC1?ty5BXPq z?{HNz!B04=d4x)I>-J=p)bi2!KfUq0o|nO@b%|>fGa{b}M^a;wlvH!)0j|Pg^~r<7 zxHvfSXrk;R-IBRRF-NKA(-Q!|k`&v|6je0M^F$JMjHXx>x!|kAFyX1g%sGx!dCF#kz4XAXpIO86vl)*Lj1)nWQvH^U@=$fwLDJxrKKKa># zD@Q-}t2?gvHae=jrV6Om$j*^*5hVF+x?NAAki3|tK5fN`n9zvDc*wMEQI$2V!WUk= z{k(Iuk0 z>o-Vdk7@l5CTbJaNK;?HE81!^F(E{Ge>6{5Q zDJH^YBPoQO;il8U*h)5@_EHh<;{YT$&8()oFR^3Ynbdn~EsH`8|-;NgR zSZjOKPK$yjX`S4U?j!I+-&hh}6~|cnhms4_5hy9>hzQ}pP4&wmR0Jo|4G9s@>aHL8 zu#~Wsu8AN17jqK|I4zj5jFp^f=LJ(D6uvtiv>?d~md#Y=r((soFdz>qpL%53OI406Z|!VIVuWe zn1r4g0ZR1h>`3|}4Fy0b2qkdfWe zWXSCCa#n->qhe|f#6bko&|uC8G;;w|yB5&feRYGk1uyd~g))vKPEoT5`+r+NHHj?c?kk56a}Qz(~nI^<}7Q4X#zDa?b~X|{;Y;tT(Ol$W+>YF zP*f^&lzfO=8Qv#qaB<%EAR!(CFBt6Xkv?!ILe+v_e8^YZ%4&1g@v&UD|H&cNJJ|x& z@e6DvU|r$_7axG$PN1X2X$s4$1iCtTGHwl>Zy*^1e%(~#3aGAP(23p9>Fu{$ zd(5*|84d?*a2K$Df|aaeFI2&myy4oghA)<03e@KQ;ioq)hLn8Jvc(X*_=-SL=nI$7 z+t+PhKrUcywZ6mfiF-ms#*0F?zCZZk7u_kjjDsM~UK0+HUr|@&B zPbmuKrZm(WI?2i<(S}QU({d$NNmR*8#txtjbZiLS%VF-|dO-2#x(e+VP?6Id%I4sB zQb`ep`XSG%E&s&eVUpwMy9r3?|N=jA)In^P!Wb zI87kyztO5$GYqcVs&me!2`8bb2YstVNQi~~lL zp|-6zB7vJiiNnksY1i85Qzeic)nOl%6tIu7x4q6gsCYDqSejRZwsJ{MBC)RNZL3>Y z7JS9@&Y%NJOEZJ^LvD`BJV`eCMN~#G;UNMyVoFTs@G4EVMzYziP#WU~-=yzA0wh=S2Py}yJ_09)s#Oxm1^N*06j zRqnQep=98yp5fDx58h1!n0cZgVl;vMDO}q)+MvvPEa`A=(yfmC$_;pouxTte60@PS z&`R@K-#S=SqY{GpnS?g9_Ji6dn1=+Jv1zUvc0X^}eH4^ql^qqO&^Z!`8iZbBl&^p3$-lp;KAH2_aVozXfpRM8ZNL~_R@-u!7wS0cctf)7n>USeY5pGI zDwUF4e$|-Qu*i4xMg@n9V+K8QS8SA;4X^4&wJbSWU{KD}Q z6^RDBw#ft#v1m3xr83!L;s372nAI8u_Q*OWl~H`-+M&m7Vf9^Osl(~tf3{l9tca#W5+kMF=gMyDTm>Yv~K z^^gDYOKDH&V7q+UET4GdgTUn6*>e|w<>=f6#leX2KgIBjJ)+J)l#E4VSIt96R_O9-I{xdtL?0vi6|IuIm_>mC)j3GmPS_CKW+mq4fJ3HrhuI;K{#dY+5 D_p3sa literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h new file mode 100644 index 00000000..520e3821 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h @@ -0,0 +1,41 @@ +/* Define __sigval_t. + Copyright (C) 1997-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef ____sigval_t_defined +#define ____sigval_t_defined + +/* Type for data associated with a signal. */ +#ifdef __USE_POSIX199309 +union sigval +{ + int sival_int; + void *sival_ptr; +}; + +typedef union sigval __sigval_t; +#else +union __sigval +{ + int __sival_int; + void *__sival_ptr; +}; + +typedef union __sigval __sigval_t; +#endif + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..dca11135fecab15e458a849be8806a5022d9cee9 GIT binary patch literal 12499 zcmb7KO^h5z6`ox?Qjk{2A_&J$)>;`9nI)ZxH(_N(B8dDrLUNJ=0wE&Nsp+nsDR1?U zyQ*hqO^~=C`M`yXB`zGefdoVxeBgkPP>?WJxNyid98gZ2BI4y$Raec_^y`|=9#;1D z>sRmhdq35OqeuV!_{PK0&S*R(Cg^tsvS(K844 z9(pv1JgxK-CBOG%!lW3hr(zt(`9w$}X)F~JN6Oh`taTY*KX#{*e8~z~gQh_GkbVE} z9#<_B{EDXyOHqm5xHX>gMm@UlkN5x9^D{0spXt&9=9b`!-}j_TwN>$YzUGQ4gt759z;`TBw4vM zB<_rIwp1eg?hiloo}$nK^^#m$*Td3${<5FIH0~? zBioGfF)!DdEX z93XA2QqH5BhViUBrBIqBAfzcF+65t9#a!w0@vGnR6?OW6l)zunIDPDSDz~&?o<&e? zv!wv=>L4Xb+vat31TWB9Kx^KbrcYCz>;T5JXvWaoPDIp`c|_!6TGxfP!L?6*=C{Zua;dzX59m29 zis<@~-q{{4&auw+sGa6j!t;jTN$()xhrY2OOjajYqll6V)Db8t=!gj6g`4iIW2gvT zrdtvspebHG3dItqOH(~B|A+d30#1vjw4gOhjPs%i5jws*9&|xcR4K__yTB63*EI}ZX5bxR{Et*szv##p{4 zw@nXTF94DK(qzfp@oK7r{zFndG2%f4(j?K05@`D(sCH|CzTSbi@iu35S>#a0@rct@ zFd#R4gIp~mHX`w!KhHBgHs zT?S-^qHPXErLqQB4{aWy%hjO3 zkFeg!6{wD1V1EINCC?7lW!k$29AJ)Dlcs9rJ1v+;E+~iQx1XI__(12v{S#5k1IUqD zThxJ^ca*A887EVpl}F+UAIDIH<4Kdnk_=c$kaTOIQWB^=T(c4(Dg;U!$8K1UO;4ftXSvSJQnV5dd5MzSaouaLxn1X%r zrv-s6s27RW37rDss6vUvi6ZNt|J7<d-i>#sr&h{zVtJKzYC-FH z$qNd#>*&m!sHxRD1ERN+=qPcX!}5wlucl7Mtzqy6z!>7!hZRdA_pxHha2%B43Wy}5t*&5es89iPyMWsto1;IApng-aal z*0wJo=dg@g-C=~pJtd-GRb?95U;gU5ei_vwL6bt~&=ha3bV6*kx0P`}LE9&#&$_L>3!rdHA$gt*Jmytaos0arUSTtIV$)=?Ba(!>p{UAh2;($67whte`s9h9vG z9*l8Ec~!*NYBFEP3hiYN+;yuRSEMHXwLU6?m|?JP1u!9`uA*e5uUx!fL>U^}1~U@4 zX@Nav_DHv^MxSbd+yD++CSJjo$=&vP@1Wu(Jf(Rl2kqK;Nm8+@>FZW^VOg;yHJgA= zSUQ?1v>$38RF|A@^oyvBV8SCL+^mHhU)YF*Qg%RnsmjHMK=u#|9@rkMPiXkSWzN-y z0hsjYOEBfP1HLN@n*u0^Y}eeLcYQh&qF}T@@2|opf?aZ3CLN}tl4an0jonT#lnh+e zGkkjT!Mk|`Gfx_&G~uunh07RE8EOqqCDGr<(1m*a zdsjdDtNvszV8@C2ZUoAyqIU^nc{y$CMOo?NoZ~IYwr}1{lq>W11g=(zm+Gs=vVrxy zr#C7%TnAI=nY&`6)O2`NujHa;Xn{dF^Sc8-q{$n&P*8extmh1@XGYw@jz%P;=3ha?hPHLls#<|rZ>-N3&!^xl|VASwek$PjKmyWLRS@E<(THJ6^ z=BNV4_I#Yu_r_=0AtZJ3!r(Rn-%a@Hwcp5eF8BI`)y)iwYv>!*NxQ=fLtxu`CW? zXoZq_0G|l9ALxz_55G7X?d%`!zr4G%KiYqJ1V3kgeC5$s?mz#+rT^`y|2|N^)_-=+ zUcdR&2k+m1=W{DkkN=N;Jlfma1HKpcE + +/* Returned by `clock'. */ +typedef __clock_t clock_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..19e3d18384b25f502d655d5cc68cc3540b5dd585 GIT binary patch literal 12372 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 + +/* Clock ID used in clock and timer functions. */ +typedef __clockid_t clockid_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4723600fbf5f52a0dee413dde5056c7ffbe1bfd8 GIT binary patch literal 12402 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 a{eNEp_jrB>WIwria(+Yq-kV)(jvoRzI3|<; literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h new file mode 100644 index 00000000..61324230 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h @@ -0,0 +1,63 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef __cookie_io_functions_t_defined +#define __cookie_io_functions_t_defined 1 + +#include + +/* Functions to do I/O and file management for a stream. */ + +/* Read NBYTES bytes from COOKIE into a buffer pointed to by BUF. + Return number of bytes read. */ +typedef __ssize_t cookie_read_function_t (void *__cookie, char *__buf, + size_t __nbytes); + +/* Write NBYTES bytes pointed to by BUF to COOKIE. Write all NBYTES bytes + unless there is an error. Return number of bytes written. If + there is an error, return 0 and do not write anything. If the file + has been opened for append (__mode.__append set), then set the file + pointer to the end of the file and then do the write; if not, just + write at the current file pointer. */ +typedef __ssize_t cookie_write_function_t (void *__cookie, const char *__buf, + size_t __nbytes); + +/* Move COOKIE's file position to *POS bytes from the + beginning of the file (if W is SEEK_SET), + the current position (if W is SEEK_CUR), + or the end of the file (if W is SEEK_END). + Set *POS to the new file position. + Returns zero if successful, nonzero if not. */ +typedef int cookie_seek_function_t (void *__cookie, __off64_t *__pos, int __w); + +/* Close COOKIE. */ +typedef int cookie_close_function_t (void *__cookie); + +/* The structure with the cookie function pointers. + The tag name of this struct is _IO_cookie_io_functions_t to + preserve historic C++ mangled names for functions taking + cookie_io_functions_t arguments. That name should not be used in + new code. */ +typedef struct _IO_cookie_io_functions_t +{ + cookie_read_function_t *read; /* Read bytes. */ + cookie_write_function_t *write; /* Write bytes. */ + cookie_seek_function_t *seek; /* Seek/tell file position. */ + cookie_close_function_t *close; /* Close file. */ +} cookie_io_functions_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b8502453e56993355aae48562c173300b5ea9645 GIT binary patch literal 14764 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. */ + +#ifndef _BITS_TYPES_LOCALE_T_H +#define _BITS_TYPES_LOCALE_T_H 1 + +#include + +typedef __locale_t locale_t; + +#endif /* bits/types/locale_t.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d48ae05af50182fd2d0ab0cdd19e5752262ed10b GIT binary patch literal 12429 zcmb7KPpBkE8K0MU%wZwoLQW5rMb_;d_a#0SG-Q*_W({nz!mbh{*w$26&(yx^KigG3 zGjH)=ZhP=12r8(EClL`5@#InPdG!zlJ$MO%zd9xJb16a{_6Yl z`~Fs6o_zG*53iq14kpt@Rj{d;zRu){s_Lm?QcW|KO=Ux;1>xmYI(e1~QqD(_CabDB z;pIHZc*Cfwn$wpDPni7g%E7di&6Jl^v>BV;d;QMQbjIeqOlg&|tBc7;mkuAF1vFHh z*5-+pKX@|ZN>24tIZe}ICKXXERho$>6?`@|x=gPf`%_7==A~*tQy@L#@BAg;YGi_6 z>Ad9`D$(sb)46E%qYHoi&7TKe2CKFWu2Ig2ekKD+okQ)0svN|-hZZ4*{rIBChQr_u&OJ`*GH+~MZhdLj;N~OG+ptGfy>)c zvBnd}fSGf_(pgijqf`E0+Q#2|S&D`MKpQ#qv>%khxewuNe1s?s;!ymKo!+R5g{ zH;HZ=B93B<8Lg@l&Qe~bd0SG&t5R;6Z#$2fjGzyEcXl(9qjHFl9S*4PS4FYU_26`= zPUIt0%eLeYtmvaH_3(`8>;MOp#9+WDQ}@X5kaWTJ9VtZvpZLjy3=f~->_z-CrmJVClzrJcui z4HH;*&Y(0a$dI;#7#GBJl}oM9hc{mh74`anl)zupczxV?I<|~pfkjYl^ROltAz6OA3aeM$oUg3E`mI8UlxzH%N2}L{+xu6miCD0>;tqyuRoah1XXj22vI+>G>CGg6gl7>QY^ML{3G6X>!cK#RH--cSNRV80ozjzYYLS4dR!1v`Kfd4+ zPX?aC_G#Lay@W9@+bJ}+GnouT9+AbAHBD)3@VO`73tME1T&5lrBYIAkMNECj9_~kr zcdWNPYNusQMbV0f*+T?==o>4-RegdriYU269f6X9j))Ke+)QVkLPZE7-H{LpP4VVY z3`>HoZS{QNKP*fr;Iw4UO4e{{otMmrH2Cg$(1WC^Svfa7LJuTcp<6N;W)Ua126k$Z zJtZ~Qx_#$|&xQSyDO?-f2HWKgosVeL*lS6ajPA3y%PG2HJAP?QP5~z_ZGyj!Fh@n9 zY_}xFJhvcnQP?rR58a=&P>U5?M`VVgZ4X7I zat7BAaVx|7#Edw>`w=AMW8eiNpg%GOZXr!A`2DA1wXIRRQ&EiNW>64ESnuQuRL?K4 zzktP3Ua5P^X}5R_frtvanw1qVmoPB)nt5j=mrv47&hcplACfZv5KdZoJohYh`*^-h`cAr zguN0hWdl2)g0J-**N&F47poZCl!({QPTSc{CzHxo1mgi+7hgF}B8w+PF{91}Z4%TY(F8<3R=U1h<1nJclW?4?smODkz7eE7z&8>`_(zBjtvOa^JH2isZ@l~)Zu2YXHr zTOJl?$HxVE*%reCXV+e6L3%@vyOT~L8+CsO+%^s+H!rGWrL^$z$PR?vsuVmMs1@cw zZ)v@h-XX+Yj>fe++zYtbn&AT4OSGP%=#dsTuz2YwD3pE)*d0sDQFTzZCh=g5d&=t~ z#y7M1cCOeqdN)ClB9aM&}68um>7zBhOW6_1LH6_pybZ4(vAbg3%&9y@pK!+vKiH`kabNmV@(6?)HMAWZ?l37imJ7@2_Ds`grI(@ zp$)D5sP+lw97*PER+)x9&Kq_bHRV`kM@6Y^jzr=HCAVp6X@CO2+;vg6|!Kh^&@xOm~>XFqXp{=tv_@!or9 z@7{JSH?JN#xh9t`UC=LFx_JD|!NtkNWBtCD<>`T8cmAvQzyFK(-+BD6^tCtd-%Ia* w + +typedef __mbstate_t mbstate_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..6686d8d6f4242bdb8b6710d09f66d647d73938bd GIT binary patch literal 12421 zcmb7KJ&Ytr6`r*@q6qym#-(;$*R0*Cktu zm1364x_4eH(43eR$j^_%~^q`%+MC9?Wjs$|N4Wk21h&D zy!Zy_h9Tl82Fz$(pL3S-IxV`2DqdG|V7?)a8AQ+rem8qHf>8xz$N>k`_uH~O=6Z0t zROj*$s%2MkNLKU_yjKz9T91)|=8~=%{^r0iTaa#!9!=fQN<~!h?f{I+ZDN~niiT!M zsELEWefG^THg$lbO8aBr6iy86`=~`7kfvZih_|#PyOap9nN=6ZJy(LXPuQVh0_(0A zR9pqXXDfqoK}=V<(fYji>X$=By*?l%@Ygh6A9tQk86#L=5meh^Cjpa20Ep7|>Drva z3#^q;@jv35VouT0o;-Ucklg9zb*F+iSxs8JMw@7bLZGSyN(}^|x(wK%$~A34*BB0= z)V(RH5l+WETC|L%D{- zLq*w%i~Ir!KlF_);i@^u`ahIhqK-gGK}ST0AlyvDoI*tiGTo673BB(AQ7o1O+u7>* z{J&WUDB!eY#VXcvYMqy4M4I>>dC&(*-LPt9dW2Ds3{tmZGDHz4w+`&oM)s04Tz`OG%k&(w621n8RPic+_tTCy9GoJOOqq>$LnDY z`VYm-AczMMNJEn~BhdCGFu4x`eb`v{@wVY@U6oMA@rW~2F!v?Uexa#k2>RyBBppfx zB0;L4j|_uGty>V-L{UOoJN|e;8d)I|P~*y}wTAA`I;h2p?IJQm(YA-8QaOX`hq#sD zePSk;;QdG>6m!B0COdy*EVzX%l)7rPO;v}7pRe6U@ZarqQDN$ zWyZS}9AG@x10>pl1>}+mXnv>J={*i~E+RY;wLE|vX^lla$OT8~8dV6g3Rwjt4%tBN zBf9|2OmE7%kQ*u($&Z$>z-nm<)j!R;B2{F+;)uBuXbW4pzW>%&!pdcWn~GZMMbW`- z5S11!&CW_-W12KAgP|_)8OjN|X{?r@v}x+6_0)DBnm_KyLa2m+f0B}^b&ZeN&^ULy zV|`X{b-qgbeOefZsG!@ds(H16fpOH#J0m$fN%xrJVFl$0o79PM4kx#}9=jHZRvc@E zeaeoSmGPbeJ+URA^I<)n>^596>`VTvnMbaU=15;RV5a~>T?%NIX)xiSF z4`2FTq@CJ_)>Nw21a=3sF3URB66lrp-N}{rsQcE+jAD78c6vh_cqs@9y%iZvr>Lp* z;sc_0l;|jNS;Cr2Kv$|_Ibp$hKw71x0^V!8BYVpjK0zI1RiWaNXEt$^gkR|JN_-ngXEzV7&{asz9t{Ut_B z+)E-W-ZZxLedp)j3d^Vw3EBd-f%f@u`4eMnyseG<6m7JE!q2rnt!!8bX{a|W$m%80 zflDS~S;?KqmA+*h1+)ttpF$67m^-)~P~upp(0&0GxvZgV&dw(TiZImA5tnrRPAM)c z6@}>JI?i-U*JOX0Hk_iob=ExZCvtOM%>69qaG9(9|Bu&;2#{KLHnF+k*s4#;bll#e zjuPU@b^Zyco@LcC~O-+R8hD1yzDt$bUZBL zj*m<7sw<}l)4mPSf{cbEcO{)fHt+rrxNMvPH!rGWm9*jGBRddwP*He(yruwv>E-nS zA?|WCuifEZ!2Na&7tr3JjTA+Xv~dFqnlV73^c#rXxwITr2W4x32V*=^UKcUGpW%mC zVZ0oGyJ@x4hO{KS*GFZLYYf(%05*j5rIkv|cl`B$xY|KD4?I%ZBfm-5HF+($lP<{m`4Ewie=` zUqodD6P_aB<}Bp-!tNxNvNP&SQ*RFha)&tZz&2h}Lc

    >WE~qr5O}OIABR{SREfLxm|lM%Kv)D zEX513_6>h-bcTllOtplqYiU8z@#N=a&goRu6q9(wC)(tds@?uz8kQkMke0(y(ZGqo zGyH5y=bbNtr;_c!jf?6V6`zFZc&~jF*82HC$WNhSpauhYOAj1Y2ph2 zQW^ZR4Avt7SO}4aRza3NoDqUi%8=PMbw`356&3(pf4HKdPf2Wx41_@#n(A zJyP*>t6@_=g4y`tEpa;$_NvVO2RF& z5a)~DN!pg}BEPs!y-A>GkqA6w9j|sm<5ifNMP4D0NiV$#r~L4M&(lJ)00bh#hPdEe zk&cBZjFwXSld#F6>l~&@j;T_~if}%~ZZ4RV46bT(_!Q*By>=F7o@Titb2=yx@v{Bl3RX*W7FgY5M+^;V`@B}5aTc+p>NU{b#nXB>wfnw`u<#s9rNT36Qol@ z&o@lOi)-uE9hWZ09UqZ&dOMCqIWd2mz@;i#4td4VsiKiD=q(i-4~`Ag%&lTesg3Tl zx*OCzQ<`9;oUPMczH(z%@#ul*)nYwvV0vbhTbR@Mx>jlF&qjVA4>>wD%E==>r)>u% zUI(#F-OwT~^%cce5v--=!ILr4#pu3P(`{GRSG7Xdt__g@J64JYQmG>JsHMMG6PcA8 z1$|_;C#g}=j&pG%>%@n`S1eN{fl<@npQIfl+H~ZJFA|SBB*YCKWt=Ky**34Sw7cWa z=^^NzenZz~guFK)su#XZ)AAUwov^f+k>Z;44)%7DFd$L+dITR zJiuzZGbu?_E|A8y*cg;*h4h01bGIO=TlIVsZCZ#2WrMZl9=bVfSVSHJ#6TPY!=tH$ z7H!`y4da>c$nrXl#Pj+_|2pAS@YZ8=jmD)gUnU`lKFh! z7c*b#`$pzleNSax?0Y5i+LetyCDVAD($^Tobr-ICahlN%ui*MsT+iY9edWr=v$#Ho>qT5IDQ{}5>&Y}W^z>yi zTQ7g}!$0`Ggx73E zv2Iq30dZ!?)=umgz+;ka1Mj`EcW5Y@RR{L&9T*wgHt;Tf!{M2^`2|%S*!P}+A#&Tc zm}H1B*p|sCjXx@z@Y&JBMz1LMW-cpO{qlj&eRSP_|9JC@5&w`GrnWQ-7EblvFiser z2gCEqPB3JnT_MAJ{SUwPfj|7xSJmakDRpLXescG2aC>{qE&jcCgmAh;>Bna~II+<% z;iNQr@N*CSnT>WTjbm8zm@))&ZtJ_VZ+P7&{~;1P;yJp4wf-_*iy1qf?H$I7ulK(` z)>fcWvL)cHsZ4d zqQ32lXP&&{(p%SoBmcYN)kCkI*sokTbOGNDMLC2I8EwR9BOQHLIoSBFQo#MCf8O?m zBb!IQkzDrR6yj%cVrlB2x;Qy82MIFc5^2?Dx&fko<7rs-Y2^?M&PH>g8Q%AnT^H9s z^oq+|H?c&p0Gyj#$9`w7`xrQVjQWU;c7~klVBiZ^HR+K@{ByGO;-e9t%q;vv4AWL`j%0llCU*YQksA=kbIS?*i_Mgr z5CmrMNA3~?rF^;pzeoEY1@JxEf95omQvqgg#OFFl^^r$^Ik5R_e;Q7p)r}CkDdZ`N z-N;f+ME%;b_fH*t7s5v;by-j@<6kMuvXw}*a*zIyZ4 z`^SHK_00J&Y$s(~lm%`y)jK*oJU+a8mO#i>sJm6cW(`OCDc23iw$u0kwi*YOTkt7j zG^6ap=e-ymR`%m_H%7N%bQ>KlW3)_1cVToF8C`z<4?mjSb&s(pvF)K_0+0D#XFi#R zG}Fouq+z2Sp^h(<&u@C{w=Z7L_)O0)EX_;g|V8V`B?<2&AY>SsI0 zjwg7If?ZQ2Qg)+^(;;v=L_>~^qF8z1GuL17o&L+8PjG?&Hx7@rmkyJR=K^>xQ0dqx zl5Xaudv6N#``!c={7*UahBKSttqXti!-wDc_|%hZy_NYRQ*)!YqDDxTHpIZuOfOsN zZY*^-Eg;w^!u$^$UwF{Hr+f_s3KhlD!o$i7(zK zapfk=Fzt>*yW>y%UI{j$}JF@jb=lk=kI;#H+z2m;0KfIOpdM)AX}Oz+cA;K#-` literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h new file mode 100644 index 00000000..b7457215 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h @@ -0,0 +1,17 @@ +/* This file is automatically generated. + It defines a symbol `__stub_FUNCTION' for each function + in the C library which is a stub, meaning it will fail + every time called, usually setting errno to ENOSYS. */ + +#ifdef _LIBC + #error Applications may not define the macro _LIBC +#endif + +#define __stub___compat_bdflush +#define __stub_chflags +#define __stub_fchflags +#define __stub_gtty +#define __stub_revoke +#define __stub_setlogin +#define __stub_sigreturn +#define __stub_stty diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..39509a558b3482c822640656f812cb57b3ebf0d6 GIT binary patch literal 12690 zcmb7KPpBkE8J~F~nq;$ir#*xqi^3x7_D=RCKK5cn6BCq8au78bNL$lgJyZLt|7=(F z%)CWGgg^+nDGMGH@e=T$CV~e89&!*|uPcIxSH%r`^0bnyUsZM0Om%-<)49xH`s=U0 zzrXKK^~K3Y|Gjth_GCJlEz6wF`0P0ii9^QoqhAUYe%y=U9cif%9LJSPCmMD{*Bun zO(IV#{Y1&{J()8pX6mV!#c@6tl1Lg$#l(?vHlJx-W>=2gsU+X9Le`)ukltpm{Key{ zWrCl0(XbSi=!I*u1#i@&!#ltI^T5ks)uzTZ$|zCKgeR#rNlxU_dw{F3+I;cKQC3|! z4rrq7quf&XMzKff=krqtfHkT1pDAQIFH5cndq&f&s#37cQOsHHG4qZivdmc$uUSgL zcjwOrFe-x#>2N@Ozs~c0 zt_PN9L^i2-nGom^{8k4&9Zqxs z@8tB(gzA+M;j{7xpy^EoyNRQSN;chp^aOS>c|uRUhBp)m5+Xq`*>+0zA0#FcP}Qnn z<#5O6OyFSPC`_NGJlO*b6M9r$&;6#+8iw7y#c(WJ^K>^t{_g zp-|y;V~XSBA5b4Jz$wv!7PMxGaZWTRLWi&OkUh`EKv~gZp<4hv225raRQMoa`KY*! zP2kQ*#guN}|LGaOJ<@e)tJ`2VyrpvqiyC_)$ciTW>}?@K^<&3RkAVzu;>zInRfIVz zNp<5Yl}LN^NvzA zD&u6~v+_tRvVq)tb^?l-+L$#yH&if^?k!=S)#4a>gLvL#u_W77N64K(o0-b>y_di0 zS1ujg2``0O7XnAtp^p`4&u#%c*l8^>;Hk4^WX_~VYuxQrFizsF6l2_U1@iH(+G|Gg}O3 z7p12Kfpw@CiPj0dQsbyXiNuK_8(svc9lfI1<4^4%)HA4gb=!pm6iQ5s8%Z7tzg^9@ z#u}x*V0i^Yps5Z9P=0vn)j&J74XvS6EeWg!k}}WBP)ndz-&Y1#-@WczDbtJPZQ7|# zt>+~#DAdxUH+-U|R(lPI-d>`k#CZ-|EDl|rIvKZyL3sdUh+iLSd;#^H3_6foIMuq?%fr&8TE_5#|5j!U8ICCnYn3@Bl&lW4zyikz2FHb>`^ z21OX^$B0Xsc4ZWnHQ^a=#4^luoh-@rQf+sNa@JY0w4KQHc_H`Hl)w{}i#lSr*&^m5)d3dz!shDnq8jZvTmO^2RjQ5t&_3T8-Qb}IQ@yaQ zIFVUd9o-3nkrNZm=vNZ-A9!H6<6whd+^ zaMJ>N%B}v7$rtezag=NJy z)a(p;Vd-cV(0-`RQC)K0=@(HM!GuRhxLFH1zOXw9rR<3MQkCnDK=u#|9@xffNND)d zWyRGO0+{sZOEBfP1HLN@T>%tCwhM93yFQ%>Q7~Gd_g7&P!PdDglMYi+$ue-h#%?DV zN(QbP7(PAu;N3ienJ0}>nsC^kcHahE0SS~-Meh=(7gY7Stn_it@s?!Y$8RRel}-bJs|~vReX&t$I=-q`a$PgDz@VJ@&5>W!Ey=4S*^qR!Yg;6Mj78A^mCB;W zD*V}uHLEiU?2%1QYNLe4x$PqB`Wx*RltD?rsNv5e^~Ojq9bMtG;%SGp5a*)IQ3Z}2 z_)2ByjgPZKNb2ON(QO32oAA|ZKbGlT0}ctRn;8_>&^M}+c83>+z`!l*@J*NtpC!N* zp586~!3EY}W@-}KE~v$}zZgWdg7O1bv|~Xs;p=&aHWcD=NzGdB)(h>z!g>rK2E_3& z+&Q#W@UbTk^zY=s6lfp(?Ul*@?%w^uHA@SF4g7ts%R>J>Jv=~$>`N^N z_~K4)hY&5ckEV|tJ_1^(-&=--yd(Zx5p m_}QJjlS%;eGD_ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h new file mode 100644 index 00000000..70a1ba01 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h @@ -0,0 +1,14 @@ +/* This file is automatically generated. + This file selects the right generated file of `__stub_FUNCTION' macros + based on the architecture being compiled for. */ + + +#if !defined __x86_64__ +# include +#endif +#if defined __x86_64__ && defined __LP64__ +# include +#endif +#if defined __x86_64__ && defined __ILP32__ +# include +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8066839416fedae162a2a6cacc90ce7beb2f6e9a GIT binary patch literal 12170 zcmb7KKg{Gf6`utm3Kj`bP*9yH5IQaw_T%`p%?ZIBcS73Z3IswR5gf;v@qSL6jh&hK zRuq(1P$SV$P*Na7K}m_k(o#{-(x9uTR^s5!|GxGhA5@?7mWrWb`S;&`a+8;A&)b5^ioJf=ee~s5K6nwyP<`Loe~kXoKPA^H zH~*@U<1>d@mB)r^?`RHUhQNkjA@`U5xNc>czto4R{+o3O66oNO=V$pU)%ZAh9#483NA6m`&Ae;hb%>^sU zUY?Zu;A_7t7s5unfw#3Zs|GA3d3)y1J%Vl-+l6(Xlt)qP~Q^WB}BZ$#bQ*- zJI)F&i+X6O=CV~6?z`kM%Lrz}AD3?>II4yWxmp2@{i$izLJvV#`c6GZtsGho$%_7U zVIIzy-Vd-rODqNgnfkx%8j2p+>J}$3V~fF^>}abKHix(YnN^MfEbfvRZV0u2`Nvn^ zi$QEM0rgJU26o}Z)`tLZG*U$Yjs{>B4LKJ?fX|${I6?YaWrD}99TRzX&!9AGU`SU& zYzR`es-v;z!?(T_8yf5ZEn$5l6YTN(ncT99MIJ$|tAv=g!(>O4mGapYkI&43zZ&S(as1x z716q9tk{eD&XVk_uN>mYx*RklKA_VB2Gj;sf45idW5*uL3f881K@+6(VkGfYNFz$A^~W6E5)DV zEMk()_8&8a119g-ebn%#ke~qxitDjcdig) zhvv3a*+S+K)#R-2TkC_by!>U{B0Jj45PK4|34r>%qafJo~6$Kj+B_g=l&bok#5M{a-Aqtw}>8}))1UtLx`Ne;;m{1^S z*`Bqm=hOu+D~YoBo<%T#M0Tv*+a6&Cl8e-BnTlD&>urEtIArIfhOIWoHDZ_g>FVY_`}3#UL3kB;CUBa5S|P#M_bgvTdM@I7DXB9-8m@`(##8`fEw2<%|A?kHb5=b?3~aUiniMn)yg~E{E2%Rz9;sG6MdgR zLcIlEa0Conrob(ftp$JjLaMg)`ubFqT5>ulh#RbT3I%Ew7nonbU@7v051EawBL_Ig zo0Fz#qiR9+@luh9XExA#WoTd) zGb6PjUJX@@RI4Q{@>)?q^)JeyE;N~DA*pbJZ0#!7&))xbT)8Z`sgTM{l&*$|sJ3Wn z_Fe)X)2!9RRrFN0lD9`VFwUBJ?bJz z1TkXElL9luHxeuHv;jgRgSywYT?n91Vb(sQO$vUOmQT*wWWM4}2d6|=9UP(j;PVg3Ze+sI$2 zfoF3UcIAy!F1?r88UKrKUR@zs{h(#5A$jo;ft7GqGexqmTOU;(VQe+scBIt3C#vOL z=UU(2{PqWN8MP`wTfmOcK3@-iQp?(C8|S`68?C7Db7N1hIu=tJ8VyIXW=M1ul0{n9 z>MSa4t|MoF_Rt9_^i;yRgS!Jtn(H*$FQ6(n63XW0e6pknhx#q*l3|=FrFEsE7K1vZ z7d_DfnQq-KPf@`;2VRXQa=TwD{H)?|>uciw&v)tsk-BhpsdK~Hs86Y4-rk~txNNqF zyJ-!Cg??~;e7o;9N6y!Ox>}_|1GYTy4^DS{7}3-Www)llmOXx64l6wycwEH&IzGwU zp;`2**io&b)ngRr7hSyhuc*xPb z_L~OryEyH0PCQhP*iBq`w zjlMw@prT@p)SKpRLXt{NRr}Jf0eBrhGdC5O0WZkxp}{b-p|4+}3eQV}fJrctyQlGC-@5gS%Gy36Ia*-QmBsUo zk7}9$E*FelGw%fl+fyO#;UJ?ZX=f8y9|v=du{H`fmw0kU#aVoE5QxMk&<_2%SdUqU2_=o|;fI1O}`@b%%SbRS^;@PZ`g+9*U`N8L-ci>lV TWIpk!-KQUZX7|~LyWQ^pMHknW literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h new file mode 100644 index 00000000..42ecf681 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h @@ -0,0 +1,417 @@ +/* Copyright (C) 1997-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99: 7.8 Format conversion of integer types + */ + +#ifndef _INTTYPES_H +#define _INTTYPES_H 1 + +#include +/* Get the type definitions. */ +#include + +/* Get a definition for wchar_t. But we must not define wchar_t itself. */ +#ifndef ____gwchar_t_defined +# ifdef __cplusplus +# define __gwchar_t wchar_t +# elif defined __WCHAR_TYPE__ +typedef __WCHAR_TYPE__ __gwchar_t; +# else +# define __need_wchar_t +# include +typedef wchar_t __gwchar_t; +# endif +# define ____gwchar_t_defined 1 +#endif + +# if __WORDSIZE == 64 +# define __PRI64_PREFIX "l" +# define __PRIPTR_PREFIX "l" +# else +# define __PRI64_PREFIX "ll" +# define __PRIPTR_PREFIX +# endif + +/* Macros for printing format specifiers. */ + +/* Decimal notation. */ +# define PRId8 "d" +# define PRId16 "d" +# define PRId32 "d" +# define PRId64 __PRI64_PREFIX "d" + +# define PRIdLEAST8 "d" +# define PRIdLEAST16 "d" +# define PRIdLEAST32 "d" +# define PRIdLEAST64 __PRI64_PREFIX "d" + +# define PRIdFAST8 "d" +# define PRIdFAST16 __PRIPTR_PREFIX "d" +# define PRIdFAST32 __PRIPTR_PREFIX "d" +# define PRIdFAST64 __PRI64_PREFIX "d" + + +# define PRIi8 "i" +# define PRIi16 "i" +# define PRIi32 "i" +# define PRIi64 __PRI64_PREFIX "i" + +# define PRIiLEAST8 "i" +# define PRIiLEAST16 "i" +# define PRIiLEAST32 "i" +# define PRIiLEAST64 __PRI64_PREFIX "i" + +# define PRIiFAST8 "i" +# define PRIiFAST16 __PRIPTR_PREFIX "i" +# define PRIiFAST32 __PRIPTR_PREFIX "i" +# define PRIiFAST64 __PRI64_PREFIX "i" + +/* Octal notation. */ +# define PRIo8 "o" +# define PRIo16 "o" +# define PRIo32 "o" +# define PRIo64 __PRI64_PREFIX "o" + +# define PRIoLEAST8 "o" +# define PRIoLEAST16 "o" +# define PRIoLEAST32 "o" +# define PRIoLEAST64 __PRI64_PREFIX "o" + +# define PRIoFAST8 "o" +# define PRIoFAST16 __PRIPTR_PREFIX "o" +# define PRIoFAST32 __PRIPTR_PREFIX "o" +# define PRIoFAST64 __PRI64_PREFIX "o" + +/* Unsigned integers. */ +# define PRIu8 "u" +# define PRIu16 "u" +# define PRIu32 "u" +# define PRIu64 __PRI64_PREFIX "u" + +# define PRIuLEAST8 "u" +# define PRIuLEAST16 "u" +# define PRIuLEAST32 "u" +# define PRIuLEAST64 __PRI64_PREFIX "u" + +# define PRIuFAST8 "u" +# define PRIuFAST16 __PRIPTR_PREFIX "u" +# define PRIuFAST32 __PRIPTR_PREFIX "u" +# define PRIuFAST64 __PRI64_PREFIX "u" + +/* lowercase hexadecimal notation. */ +# define PRIx8 "x" +# define PRIx16 "x" +# define PRIx32 "x" +# define PRIx64 __PRI64_PREFIX "x" + +# define PRIxLEAST8 "x" +# define PRIxLEAST16 "x" +# define PRIxLEAST32 "x" +# define PRIxLEAST64 __PRI64_PREFIX "x" + +# define PRIxFAST8 "x" +# define PRIxFAST16 __PRIPTR_PREFIX "x" +# define PRIxFAST32 __PRIPTR_PREFIX "x" +# define PRIxFAST64 __PRI64_PREFIX "x" + +/* UPPERCASE hexadecimal notation. */ +# define PRIX8 "X" +# define PRIX16 "X" +# define PRIX32 "X" +# define PRIX64 __PRI64_PREFIX "X" + +# define PRIXLEAST8 "X" +# define PRIXLEAST16 "X" +# define PRIXLEAST32 "X" +# define PRIXLEAST64 __PRI64_PREFIX "X" + +# define PRIXFAST8 "X" +# define PRIXFAST16 __PRIPTR_PREFIX "X" +# define PRIXFAST32 __PRIPTR_PREFIX "X" +# define PRIXFAST64 __PRI64_PREFIX "X" + + +/* Macros for printing `intmax_t' and `uintmax_t'. */ +# define PRIdMAX __PRI64_PREFIX "d" +# define PRIiMAX __PRI64_PREFIX "i" +# define PRIoMAX __PRI64_PREFIX "o" +# define PRIuMAX __PRI64_PREFIX "u" +# define PRIxMAX __PRI64_PREFIX "x" +# define PRIXMAX __PRI64_PREFIX "X" + + +/* Macros for printing `intptr_t' and `uintptr_t'. */ +# define PRIdPTR __PRIPTR_PREFIX "d" +# define PRIiPTR __PRIPTR_PREFIX "i" +# define PRIoPTR __PRIPTR_PREFIX "o" +# define PRIuPTR __PRIPTR_PREFIX "u" +# define PRIxPTR __PRIPTR_PREFIX "x" +# define PRIXPTR __PRIPTR_PREFIX "X" + +/* Binary notation. */ +# if __GLIBC_USE (ISOC2X) +# define PRIb8 "b" +# define PRIb16 "b" +# define PRIb32 "b" +# define PRIb64 __PRI64_PREFIX "b" + +# define PRIbLEAST8 "b" +# define PRIbLEAST16 "b" +# define PRIbLEAST32 "b" +# define PRIbLEAST64 __PRI64_PREFIX "b" + +# define PRIbFAST8 "b" +# define PRIbFAST16 __PRIPTR_PREFIX "b" +# define PRIbFAST32 __PRIPTR_PREFIX "b" +# define PRIbFAST64 __PRI64_PREFIX "b" + +# define PRIbMAX __PRI64_PREFIX "b" +# define PRIbPTR __PRIPTR_PREFIX "b" + +# define PRIB8 "B" +# define PRIB16 "B" +# define PRIB32 "B" +# define PRIB64 __PRI64_PREFIX "B" + +# define PRIBLEAST8 "B" +# define PRIBLEAST16 "B" +# define PRIBLEAST32 "B" +# define PRIBLEAST64 __PRI64_PREFIX "B" + +# define PRIBFAST8 "B" +# define PRIBFAST16 __PRIPTR_PREFIX "B" +# define PRIBFAST32 __PRIPTR_PREFIX "B" +# define PRIBFAST64 __PRI64_PREFIX "B" + +# define PRIBMAX __PRI64_PREFIX "B" +# define PRIBPTR __PRIPTR_PREFIX "B" +# endif + + +/* Macros for scanning format specifiers. */ + +/* Signed decimal notation. */ +# define SCNd8 "hhd" +# define SCNd16 "hd" +# define SCNd32 "d" +# define SCNd64 __PRI64_PREFIX "d" + +# define SCNdLEAST8 "hhd" +# define SCNdLEAST16 "hd" +# define SCNdLEAST32 "d" +# define SCNdLEAST64 __PRI64_PREFIX "d" + +# define SCNdFAST8 "hhd" +# define SCNdFAST16 __PRIPTR_PREFIX "d" +# define SCNdFAST32 __PRIPTR_PREFIX "d" +# define SCNdFAST64 __PRI64_PREFIX "d" + +/* Signed decimal notation. */ +# define SCNi8 "hhi" +# define SCNi16 "hi" +# define SCNi32 "i" +# define SCNi64 __PRI64_PREFIX "i" + +# define SCNiLEAST8 "hhi" +# define SCNiLEAST16 "hi" +# define SCNiLEAST32 "i" +# define SCNiLEAST64 __PRI64_PREFIX "i" + +# define SCNiFAST8 "hhi" +# define SCNiFAST16 __PRIPTR_PREFIX "i" +# define SCNiFAST32 __PRIPTR_PREFIX "i" +# define SCNiFAST64 __PRI64_PREFIX "i" + +/* Unsigned decimal notation. */ +# define SCNu8 "hhu" +# define SCNu16 "hu" +# define SCNu32 "u" +# define SCNu64 __PRI64_PREFIX "u" + +# define SCNuLEAST8 "hhu" +# define SCNuLEAST16 "hu" +# define SCNuLEAST32 "u" +# define SCNuLEAST64 __PRI64_PREFIX "u" + +# define SCNuFAST8 "hhu" +# define SCNuFAST16 __PRIPTR_PREFIX "u" +# define SCNuFAST32 __PRIPTR_PREFIX "u" +# define SCNuFAST64 __PRI64_PREFIX "u" + +/* Octal notation. */ +# define SCNo8 "hho" +# define SCNo16 "ho" +# define SCNo32 "o" +# define SCNo64 __PRI64_PREFIX "o" + +# define SCNoLEAST8 "hho" +# define SCNoLEAST16 "ho" +# define SCNoLEAST32 "o" +# define SCNoLEAST64 __PRI64_PREFIX "o" + +# define SCNoFAST8 "hho" +# define SCNoFAST16 __PRIPTR_PREFIX "o" +# define SCNoFAST32 __PRIPTR_PREFIX "o" +# define SCNoFAST64 __PRI64_PREFIX "o" + +/* Hexadecimal notation. */ +# define SCNx8 "hhx" +# define SCNx16 "hx" +# define SCNx32 "x" +# define SCNx64 __PRI64_PREFIX "x" + +# define SCNxLEAST8 "hhx" +# define SCNxLEAST16 "hx" +# define SCNxLEAST32 "x" +# define SCNxLEAST64 __PRI64_PREFIX "x" + +# define SCNxFAST8 "hhx" +# define SCNxFAST16 __PRIPTR_PREFIX "x" +# define SCNxFAST32 __PRIPTR_PREFIX "x" +# define SCNxFAST64 __PRI64_PREFIX "x" + + +/* Macros for scanning `intmax_t' and `uintmax_t'. */ +# define SCNdMAX __PRI64_PREFIX "d" +# define SCNiMAX __PRI64_PREFIX "i" +# define SCNoMAX __PRI64_PREFIX "o" +# define SCNuMAX __PRI64_PREFIX "u" +# define SCNxMAX __PRI64_PREFIX "x" + +/* Macros for scanning `intptr_t' and `uintptr_t'. */ +# define SCNdPTR __PRIPTR_PREFIX "d" +# define SCNiPTR __PRIPTR_PREFIX "i" +# define SCNoPTR __PRIPTR_PREFIX "o" +# define SCNuPTR __PRIPTR_PREFIX "u" +# define SCNxPTR __PRIPTR_PREFIX "x" + + +/* Binary notation. */ +# if __GLIBC_USE (ISOC2X) +# define SCNb8 "hhb" +# define SCNb16 "hb" +# define SCNb32 "b" +# define SCNb64 __PRI64_PREFIX "b" + +# define SCNbLEAST8 "hhb" +# define SCNbLEAST16 "hb" +# define SCNbLEAST32 "b" +# define SCNbLEAST64 __PRI64_PREFIX "b" + +# define SCNbFAST8 "hhb" +# define SCNbFAST16 __PRIPTR_PREFIX "b" +# define SCNbFAST32 __PRIPTR_PREFIX "b" +# define SCNbFAST64 __PRI64_PREFIX "b" + +# define SCNbMAX __PRI64_PREFIX "b" +# define SCNbPTR __PRIPTR_PREFIX "b" +# endif + + +__BEGIN_DECLS + +#if __WORDSIZE == 64 + +/* We have to define the `uintmax_t' type using `ldiv_t'. */ +typedef struct + { + long int quot; /* Quotient. */ + long int rem; /* Remainder. */ + } imaxdiv_t; + +#else + +/* We have to define the `uintmax_t' type using `lldiv_t'. */ +typedef struct + { + __extension__ long long int quot; /* Quotient. */ + __extension__ long long int rem; /* Remainder. */ + } imaxdiv_t; + +#endif + + +/* Compute absolute value of N. */ +extern intmax_t imaxabs (intmax_t __n) __THROW __attribute__ ((__const__)); + +/* Return the `imaxdiv_t' representation of the value of NUMER over DENOM. */ +extern imaxdiv_t imaxdiv (intmax_t __numer, intmax_t __denom) + __THROW __attribute__ ((__const__)); + +/* Like `strtol' but convert to `intmax_t'. */ +extern intmax_t strtoimax (const char *__restrict __nptr, + char **__restrict __endptr, int __base) __THROW; + +/* Like `strtoul' but convert to `uintmax_t'. */ +extern uintmax_t strtoumax (const char *__restrict __nptr, + char ** __restrict __endptr, int __base) __THROW; + +/* Like `wcstol' but convert to `intmax_t'. */ +extern intmax_t wcstoimax (const __gwchar_t *__restrict __nptr, + __gwchar_t **__restrict __endptr, int __base) + __THROW; + +/* Like `wcstoul' but convert to `uintmax_t'. */ +extern uintmax_t wcstoumax (const __gwchar_t *__restrict __nptr, + __gwchar_t ** __restrict __endptr, int __base) + __THROW; + +/* Versions of the above functions that handle '0b' and '0B' prefixes + in base 0 or 2. */ +#if __GLIBC_USE (C2X_STRTOL) +# ifdef __REDIRECT +extern intmax_t __REDIRECT_NTH (strtoimax, (const char *__restrict __nptr, + char **__restrict __endptr, + int __base), __isoc23_strtoimax); +extern uintmax_t __REDIRECT_NTH (strtoumax, (const char *__restrict __nptr, + char **__restrict __endptr, + int __base), __isoc23_strtoumax); +extern intmax_t __REDIRECT_NTH (wcstoimax, + (const __gwchar_t *__restrict __nptr, + __gwchar_t **__restrict __endptr, int __base), + __isoc23_wcstoimax); +extern uintmax_t __REDIRECT_NTH (wcstoumax, + (const __gwchar_t *__restrict __nptr, + __gwchar_t **__restrict __endptr, int __base), + __isoc23_wcstoumax); +# else +extern intmax_t __isoc23_strtoimax (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW; +extern uintmax_t __isoc23_strtoumax (const char *__restrict __nptr, + char ** __restrict __endptr, int __base) + __THROW; +extern intmax_t __isoc23_wcstoimax (const __gwchar_t *__restrict __nptr, + __gwchar_t **__restrict __endptr, + int __base) + __THROW; +extern uintmax_t __isoc23_wcstoumax (const __gwchar_t *__restrict __nptr, + __gwchar_t ** __restrict __endptr, + int __base) + __THROW; +# define strtoimax __isoc23_strtoimax +# define strtoumax __isoc23_strtoumax +# define wcstoimax __isoc23_wcstoimax +# define wcstoumax __isoc23_wcstoumax +# endif +#endif + +__END_DECLS + +#endif /* inttypes.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..c9ae8593b49bce91fec90f67d43180aceebd0f60 GIT binary patch literal 26817 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 xPhnIQT_GcPnw*BJ0Yy?@{g>. */ + +#ifndef _LIBGEN_H +#define _LIBGEN_H 1 + +#include + +__BEGIN_DECLS + +/* Return directory part of PATH or "." if none is available. */ +extern char *dirname (char *__path) __THROW; + +/* Return final component of PATH. + + This is the weird XPG version of this function. It sometimes will + modify its argument. Therefore we normally use the GNU version (in + ) and only if this header is included make the XPG + version available under the real name. */ +extern char *__xpg_basename (char *__path) __THROW; +#define basename __xpg_basename + +__END_DECLS + +#endif /* libgen.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5d8dda3eb41371de59d1e07c962ed926b2dbb653 GIT binary patch literal 12961 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h new file mode 100644 index 00000000..6f30cbe6 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h @@ -0,0 +1,204 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99 Standard: 7.10/5.2.4.2.1 Sizes of integer types + */ + +#ifndef _LIBC_LIMITS_H_ +#define _LIBC_LIMITS_H_ 1 + +#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION +#include + + +/* Maximum length of any multibyte character in any locale. + We define this value here since the gcc header does not define + the correct value. */ +#define MB_LEN_MAX 16 + + +/* If we are not using GNU CC we have to define all the symbols ourself. + Otherwise use gcc's definitions (see below). */ +#if !defined __GNUC__ || __GNUC__ < 2 + +/* We only protect from multiple inclusion here, because all the other + #include's protect themselves, and in GCC 2 we may #include_next through + multiple copies of this file before we get to GCC's. */ +# ifndef _LIMITS_H +# define _LIMITS_H 1 + +#include + +/* We don't have #include_next. + Define ANSI for standard 32-bit words. */ + +/* These assume 8-bit `char's, 16-bit `short int's, + and 32-bit `int's and `long int's. */ + +/* Number of bits in a `char'. */ +# define CHAR_BIT 8 + +/* Minimum and maximum values a `signed char' can hold. */ +# define SCHAR_MIN (-128) +# define SCHAR_MAX 127 + +/* Maximum value an `unsigned char' can hold. (Minimum is 0.) */ +# define UCHAR_MAX 255 + +/* Minimum and maximum values a `char' can hold. */ +# ifdef __CHAR_UNSIGNED__ +# define CHAR_MIN 0 +# define CHAR_MAX UCHAR_MAX +# else +# define CHAR_MIN SCHAR_MIN +# define CHAR_MAX SCHAR_MAX +# endif + +/* Minimum and maximum values a `signed short int' can hold. */ +# define SHRT_MIN (-32768) +# define SHRT_MAX 32767 + +/* Maximum value an `unsigned short int' can hold. (Minimum is 0.) */ +# define USHRT_MAX 65535 + +/* Minimum and maximum values a `signed int' can hold. */ +# define INT_MIN (-INT_MAX - 1) +# define INT_MAX 2147483647 + +/* Maximum value an `unsigned int' can hold. (Minimum is 0.) */ +# define UINT_MAX 4294967295U + +/* Minimum and maximum values a `signed long int' can hold. */ +# if __WORDSIZE == 64 +# define LONG_MAX 9223372036854775807L +# else +# define LONG_MAX 2147483647L +# endif +# define LONG_MIN (-LONG_MAX - 1L) + +/* Maximum value an `unsigned long int' can hold. (Minimum is 0.) */ +# if __WORDSIZE == 64 +# define ULONG_MAX 18446744073709551615UL +# else +# define ULONG_MAX 4294967295UL +# endif + +# ifdef __USE_ISOC99 + +/* Minimum and maximum values a `signed long long int' can hold. */ +# define LLONG_MAX 9223372036854775807LL +# define LLONG_MIN (-LLONG_MAX - 1LL) + +/* Maximum value an `unsigned long long int' can hold. (Minimum is 0.) */ +# define ULLONG_MAX 18446744073709551615ULL + +# endif /* ISO C99 */ + +# endif /* limits.h */ +#endif /* GCC 2. */ + +#endif /* !_LIBC_LIMITS_H_ */ + + /* Get the compiler's limits.h, which defines almost all the ISO constants. + + We put this #include_next outside the double inclusion check because + it should be possible to include this file more than once and still get + the definitions from gcc's header. */ +#if defined __GNUC__ && !defined _GCC_LIMITS_H_ +/* `_GCC_LIMITS_H_' is what GCC's file defines. */ +# include_next +#endif + +/* The files in some gcc versions don't define LLONG_MIN, + LLONG_MAX, and ULLONG_MAX. Instead only the values gcc defined for + ages are available. */ +#if defined __USE_ISOC99 && defined __GNUC__ +# ifndef LLONG_MIN +# define LLONG_MIN (-LLONG_MAX-1) +# endif +# ifndef LLONG_MAX +# define LLONG_MAX __LONG_LONG_MAX__ +# endif +# ifndef ULLONG_MAX +# define ULLONG_MAX (LLONG_MAX * 2ULL + 1) +# endif +#endif + +/* The integer width macros are not defined by GCC's before + GCC 7, or if _GNU_SOURCE rather than + __STDC_WANT_IEC_60559_BFP_EXT__ is used to enable this feature. */ +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) +# ifndef CHAR_WIDTH +# define CHAR_WIDTH 8 +# endif +# ifndef SCHAR_WIDTH +# define SCHAR_WIDTH 8 +# endif +# ifndef UCHAR_WIDTH +# define UCHAR_WIDTH 8 +# endif +# ifndef SHRT_WIDTH +# define SHRT_WIDTH 16 +# endif +# ifndef USHRT_WIDTH +# define USHRT_WIDTH 16 +# endif +# ifndef INT_WIDTH +# define INT_WIDTH 32 +# endif +# ifndef UINT_WIDTH +# define UINT_WIDTH 32 +# endif +# ifndef LONG_WIDTH +# define LONG_WIDTH __WORDSIZE +# endif +# ifndef ULONG_WIDTH +# define ULONG_WIDTH __WORDSIZE +# endif +# ifndef LLONG_WIDTH +# define LLONG_WIDTH 64 +# endif +# ifndef ULLONG_WIDTH +# define ULLONG_WIDTH 64 +# endif +#endif /* Use IEC_60559_BFP_EXT. */ + +/* The macros for _Bool are not defined by GCC's before GCC + 11, or if _GNU_SOURCE is defined rather than enabling C2x support + with -std. */ +#if __GLIBC_USE (ISOC2X) +# ifndef BOOL_MAX +# define BOOL_MAX 1 +# endif +# ifndef BOOL_WIDTH +# define BOOL_WIDTH 1 +# endif +#endif + +#ifdef __USE_POSIX +/* POSIX adds things to . */ +# include +#endif + +#ifdef __USE_POSIX2 +# include +#endif + +#ifdef __USE_XOPEN +# include +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..113460631f731aaa0451f7ae11417a533e93072a GIT binary patch literal 12826 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 Viv8%o3TSiW(2>*o#P6!&^M8;)l%oIu literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h new file mode 100644 index 00000000..70f2bd34 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h @@ -0,0 +1 @@ +#include diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e984661bb002d3b3ae65fe870a35a980e0338c71 GIT binary patch literal 12157 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h new file mode 100644 index 00000000..f1363994 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h @@ -0,0 +1,1475 @@ +/* Declarations for math functions. + Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99 Standard: 7.12 Mathematics + */ + +#ifndef _MATH_H +#define _MATH_H 1 + +#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION +#include + +#if defined log && defined __GNUC__ +# warning A macro called log was already defined when was included. +# warning This will cause compilation problems. +#endif + +__BEGIN_DECLS + +/* Get definitions of __intmax_t and __uintmax_t. */ +#include + +/* Get machine-dependent vector math functions declarations. */ +#include + +/* Gather machine dependent type support. */ +#include + +/* Value returned on overflow. With IEEE 754 floating point, this is + +Infinity, otherwise the largest representable positive value. */ +#if __GNUC_PREREQ (3, 3) +# define HUGE_VAL (__builtin_huge_val ()) +#else +/* This may provoke compiler warnings, and may not be rounded to + +Infinity in all IEEE 754 rounding modes, but is the best that can + be done in ISO C while remaining a constant expression. 10,000 is + greater than the maximum (decimal) exponent for all supported + floating-point formats and widths. */ +# define HUGE_VAL 1e10000 +#endif +#ifdef __USE_ISOC99 +# if __GNUC_PREREQ (3, 3) +# define HUGE_VALF (__builtin_huge_valf ()) +# define HUGE_VALL (__builtin_huge_vall ()) +# else +# define HUGE_VALF 1e10000f +# define HUGE_VALL 1e10000L +# endif +#endif +#if __HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT) +# define HUGE_VAL_F16 (__builtin_huge_valf16 ()) +#endif +#if __HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT) +# define HUGE_VAL_F32 (__builtin_huge_valf32 ()) +#endif +#if __HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT) +# define HUGE_VAL_F64 (__builtin_huge_valf64 ()) +#endif +#if __HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) +# define HUGE_VAL_F128 (__builtin_huge_valf128 ()) +#endif +#if __HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT) +# define HUGE_VAL_F32X (__builtin_huge_valf32x ()) +#endif +#if __HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT) +# define HUGE_VAL_F64X (__builtin_huge_valf64x ()) +#endif +#if __HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT) +# define HUGE_VAL_F128X (__builtin_huge_valf128x ()) +#endif + +#ifdef __USE_ISOC99 +/* IEEE positive infinity. */ +# if __GNUC_PREREQ (3, 3) +# define INFINITY (__builtin_inff ()) +# else +# define INFINITY HUGE_VALF +# endif + +/* IEEE Not A Number. */ +# if __GNUC_PREREQ (3, 3) +# define NAN (__builtin_nanf ("")) +# else +/* This will raise an "invalid" exception outside static initializers, + but is the best that can be done in ISO C while remaining a + constant expression. */ +# define NAN (0.0f / 0.0f) +# endif +#endif /* __USE_ISOC99 */ + +#if __GLIBC_USE (IEC_60559_BFP_EXT) +/* Signaling NaN macros, if supported. */ +# if __GNUC_PREREQ (3, 3) +# define SNANF (__builtin_nansf ("")) +# define SNAN (__builtin_nans ("")) +# define SNANL (__builtin_nansl ("")) +# endif +#endif +#if (__HAVE_FLOAT16 \ + && __GLIBC_USE (IEC_60559_TYPES_EXT) \ + && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) +# define SNANF16 (__builtin_nansf16 ("")) +#endif +#if (__HAVE_FLOAT32 \ + && __GLIBC_USE (IEC_60559_TYPES_EXT) \ + && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) +# define SNANF32 (__builtin_nansf32 ("")) +#endif +#if (__HAVE_FLOAT64 \ + && __GLIBC_USE (IEC_60559_TYPES_EXT) \ + && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) +# define SNANF64 (__builtin_nansf64 ("")) +#endif +#if (__HAVE_FLOAT128 \ + && __GLIBC_USE (IEC_60559_TYPES_EXT) \ + && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) +# define SNANF128 (__builtin_nansf128 ("")) +#endif +#if (__HAVE_FLOAT32X \ + && __GLIBC_USE (IEC_60559_TYPES_EXT) \ + && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) +# define SNANF32X (__builtin_nansf32x ("")) +#endif +#if (__HAVE_FLOAT64X \ + && __GLIBC_USE (IEC_60559_TYPES_EXT) \ + && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) +# define SNANF64X (__builtin_nansf64x ("")) +#endif +#if (__HAVE_FLOAT128X \ + && __GLIBC_USE (IEC_60559_TYPES_EXT) \ + && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) +# define SNANF128X (__builtin_nansf128x ("")) +#endif + +/* Get __GLIBC_FLT_EVAL_METHOD. */ +#include + +#ifdef __USE_ISOC99 +/* Define the following typedefs. + + float_t floating-point type at least as wide as `float' used + to evaluate `float' expressions + double_t floating-point type at least as wide as `double' used + to evaluate `double' expressions +*/ +# if __GLIBC_FLT_EVAL_METHOD == 0 || __GLIBC_FLT_EVAL_METHOD == 16 +typedef float float_t; +typedef double double_t; +# elif __GLIBC_FLT_EVAL_METHOD == 1 +typedef double float_t; +typedef double double_t; +# elif __GLIBC_FLT_EVAL_METHOD == 2 +typedef long double float_t; +typedef long double double_t; +# elif __GLIBC_FLT_EVAL_METHOD == 32 +typedef _Float32 float_t; +typedef double double_t; +# elif __GLIBC_FLT_EVAL_METHOD == 33 +typedef _Float32x float_t; +typedef _Float32x double_t; +# elif __GLIBC_FLT_EVAL_METHOD == 64 +typedef _Float64 float_t; +typedef _Float64 double_t; +# elif __GLIBC_FLT_EVAL_METHOD == 65 +typedef _Float64x float_t; +typedef _Float64x double_t; +# elif __GLIBC_FLT_EVAL_METHOD == 128 +typedef _Float128 float_t; +typedef _Float128 double_t; +# elif __GLIBC_FLT_EVAL_METHOD == 129 +typedef _Float128x float_t; +typedef _Float128x double_t; +# else +# error "Unknown __GLIBC_FLT_EVAL_METHOD" +# endif +#endif + +/* Define macros for the return values of ilogb and llogb, based on + __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. + + FP_ILOGB0 Expands to a value returned by `ilogb (0.0)'. + FP_ILOGBNAN Expands to a value returned by `ilogb (NAN)'. + FP_LLOGB0 Expands to a value returned by `llogb (0.0)'. + FP_LLOGBNAN Expands to a value returned by `llogb (NAN)'. + +*/ + +#include +#ifdef __USE_ISOC99 +# if __FP_LOGB0_IS_MIN +# define FP_ILOGB0 (-2147483647 - 1) +# else +# define FP_ILOGB0 (-2147483647) +# endif +# if __FP_LOGBNAN_IS_MIN +# define FP_ILOGBNAN (-2147483647 - 1) +# else +# define FP_ILOGBNAN 2147483647 +# endif +#endif +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) +# if __WORDSIZE == 32 +# define __FP_LONG_MAX 0x7fffffffL +# else +# define __FP_LONG_MAX 0x7fffffffffffffffL +# endif +# if __FP_LOGB0_IS_MIN +# define FP_LLOGB0 (-__FP_LONG_MAX - 1) +# else +# define FP_LLOGB0 (-__FP_LONG_MAX) +# endif +# if __FP_LOGBNAN_IS_MIN +# define FP_LLOGBNAN (-__FP_LONG_MAX - 1) +# else +# define FP_LLOGBNAN __FP_LONG_MAX +# endif +#endif + +/* Get the architecture specific values describing the floating-point + evaluation. The following symbols will get defined: + + FP_FAST_FMA + FP_FAST_FMAF + FP_FAST_FMAL + If defined it indicates that the `fma' function + generally executes about as fast as a multiply and an add. + This macro is defined only iff the `fma' function is + implemented directly with a hardware multiply-add instructions. +*/ + +#include + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) +/* Rounding direction macros for fromfp functions. */ +enum + { + FP_INT_UPWARD = +# define FP_INT_UPWARD 0 + FP_INT_UPWARD, + FP_INT_DOWNWARD = +# define FP_INT_DOWNWARD 1 + FP_INT_DOWNWARD, + FP_INT_TOWARDZERO = +# define FP_INT_TOWARDZERO 2 + FP_INT_TOWARDZERO, + FP_INT_TONEARESTFROMZERO = +# define FP_INT_TONEARESTFROMZERO 3 + FP_INT_TONEARESTFROMZERO, + FP_INT_TONEAREST = +# define FP_INT_TONEAREST 4 + FP_INT_TONEAREST, + }; +#endif + +/* The file contains the prototypes for all the + actual math functions. These macros are used for those prototypes, + so we can easily declare each function as both `name' and `__name', + and can declare the float versions `namef' and `__namef'. */ + +#define __SIMD_DECL(function) __CONCAT (__DECL_SIMD_, function) + +#define __MATHCALL_VEC(function, suffix, args) \ + __SIMD_DECL (__MATH_PRECNAME (function, suffix)) \ + __MATHCALL (function, suffix, args) + +#define __MATHDECL_VEC(type, function,suffix, args) \ + __SIMD_DECL (__MATH_PRECNAME (function, suffix)) \ + __MATHDECL(type, function,suffix, args) + +#define __MATHCALL(function,suffix, args) \ + __MATHDECL (_Mdouble_,function,suffix, args) +#define __MATHDECL(type, function,suffix, args) \ + __MATHDECL_1(type, function,suffix, args); \ + __MATHDECL_1(type, __CONCAT(__,function),suffix, args) +#define __MATHCALLX(function,suffix, args, attrib) \ + __MATHDECLX (_Mdouble_,function,suffix, args, attrib) +#define __MATHDECLX(type, function,suffix, args, attrib) \ + __MATHDECL_1(type, function,suffix, args) __attribute__ (attrib); \ + __MATHDECL_1(type, __CONCAT(__,function),suffix, args) __attribute__ (attrib) +#define __MATHDECL_1_IMPL(type, function, suffix, args) \ + extern type __MATH_PRECNAME(function,suffix) args __THROW +#define __MATHDECL_1(type, function, suffix, args) \ + __MATHDECL_1_IMPL(type, function, suffix, args) +/* Ignore the alias by default. The alias is only useful with + redirections. */ +#define __MATHDECL_ALIAS(type, function, suffix, args, alias) \ + __MATHDECL_1(type, function, suffix, args) + +#define __MATHREDIR(type, function, suffix, args, to) \ + extern type __REDIRECT_NTH (__MATH_PRECNAME (function, suffix), args, to) + +#define _Mdouble_ double +#define __MATH_PRECNAME(name,r) __CONCAT(name,r) +#define __MATH_DECLARING_DOUBLE 1 +#define __MATH_DECLARING_FLOATN 0 +#include +#include +#undef _Mdouble_ +#undef __MATH_PRECNAME +#undef __MATH_DECLARING_DOUBLE +#undef __MATH_DECLARING_FLOATN + +#ifdef __USE_ISOC99 + + +/* Include the file of declarations again, this time using `float' + instead of `double' and appending f to each function name. */ + +# define _Mdouble_ float +# define __MATH_PRECNAME(name,r) name##f##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 0 +# include +# include +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN + +# if !(defined __NO_LONG_DOUBLE_MATH && defined _LIBC) \ + || defined __LDBL_COMPAT \ + || defined _LIBC_TEST +# ifdef __LDBL_COMPAT + +# ifdef __USE_ISOC99 +extern float __nldbl_nexttowardf (float __x, long double __y) + __THROW __attribute__ ((__const__)); +# ifdef __REDIRECT_NTH +extern float __REDIRECT_NTH (nexttowardf, (float __x, long double __y), + __nldbl_nexttowardf) + __attribute__ ((__const__)); +extern double __REDIRECT_NTH (nexttoward, (double __x, long double __y), + nextafter) __attribute__ ((__const__)); +extern long double __REDIRECT_NTH (nexttowardl, + (long double __x, long double __y), + nextafter) __attribute__ ((__const__)); +# endif +# endif + +# undef __MATHDECL_1 +# define __MATHDECL_1(type, function,suffix, args) \ + __MATHREDIR(type, function, suffix, args, __CONCAT(function,suffix)) + +# elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# ifdef __REDIRECT_NTH +# ifdef __USE_ISOC99 +extern float __REDIRECT_NTH (nexttowardf, (float __x, long double __y), + __nexttowardf_to_ieee128) + __attribute__ ((__const__)); +extern double __REDIRECT_NTH (nexttoward, (double __x, long double __y), + __nexttoward_to_ieee128) + __attribute__ ((__const__)); + +#define __dremieee128 __remainderieee128 +#define __gammaieee128 __lgammaieee128 + +# endif +# endif + +# undef __MATHDECL_1 +# undef __MATHDECL_ALIAS + +# define __REDIRTO(function, suffix) \ + __ ## function ## ieee128 ## suffix +# define __REDIRTO_ALT(function, suffix) \ + __ ## function ## f128 ## suffix + +# define __MATHDECL_1(type, function, suffix, args) \ + __MATHREDIR (type, function, suffix, args, __REDIRTO (function, suffix)) +# define __MATHDECL_ALIAS(type, function, suffix, args, alias) \ + __MATHREDIR (type, function, suffix, args, __REDIRTO_ALT (alias, suffix)) +# endif + +/* Include the file of declarations again, this time using `long double' + instead of `double' and appending l to each function name. */ + +# define _Mdouble_ long double +# define __MATH_PRECNAME(name,r) name##l##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 0 +# define __MATH_DECLARE_LDOUBLE 1 +# include +# include + +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN + +# if defined __LDBL_COMPAT \ + || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# undef __REDIRTO +# undef __REDIRTO_ALT +# undef __MATHDECL_1 +# undef __MATHDECL_ALIAS +# define __MATHDECL_1(type, function, suffix, args) \ + __MATHDECL_1_IMPL(type, function, suffix, args) +# define __MATHDECL_ALIAS(type, function, suffix, args, alias) \ + __MATHDECL_1(type, function, suffix, args) +# endif +# endif /* !(__NO_LONG_DOUBLE_MATH && _LIBC) || __LDBL_COMPAT */ + +#endif /* Use ISO C99. */ + +/* Include the file of declarations for _FloatN and _FloatNx + types. */ + +#if __HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !defined _LIBC) +# define _Mdouble_ _Float16 +# define __MATH_PRECNAME(name,r) name##f16##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 1 +# if __HAVE_DISTINCT_FLOAT16 +# include +# endif +# if __GLIBC_USE (IEC_60559_TYPES_EXT) +# include +# endif +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN +#endif /* __HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !_LIBC). */ + +#if __HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !defined _LIBC) +# define _Mdouble_ _Float32 +# define __MATH_PRECNAME(name,r) name##f32##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 1 +# if __HAVE_DISTINCT_FLOAT32 +# include +# endif +# if __GLIBC_USE (IEC_60559_TYPES_EXT) +# include +# endif +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN +#endif /* __HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !_LIBC). */ + +#if __HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !defined _LIBC) +# define _Mdouble_ _Float64 +# define __MATH_PRECNAME(name,r) name##f64##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 1 +# if __HAVE_DISTINCT_FLOAT64 +# include +# endif +# if __GLIBC_USE (IEC_60559_TYPES_EXT) +# include +# endif +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN +#endif /* __HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !_LIBC). */ + +#if __HAVE_DISTINCT_FLOAT128 || (__HAVE_FLOAT128 && !defined _LIBC) +# define _Mdouble_ _Float128 +# define __MATH_PRECNAME(name,r) name##f128##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 1 +# if __HAVE_DISTINCT_FLOAT128 +# include +# endif +# if __GLIBC_USE (IEC_60559_TYPES_EXT) +# include +# endif +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN +#endif /* __HAVE_DISTINCT_FLOAT128 || (__HAVE_FLOAT128 && !_LIBC). */ + +#if __HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !defined _LIBC) +# define _Mdouble_ _Float32x +# define __MATH_PRECNAME(name,r) name##f32x##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 1 +# if __HAVE_DISTINCT_FLOAT32X +# include +# endif +# if __GLIBC_USE (IEC_60559_TYPES_EXT) +# include +# endif +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN +#endif /* __HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !_LIBC). */ + +#if __HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !defined _LIBC) +# define _Mdouble_ _Float64x +# define __MATH_PRECNAME(name,r) name##f64x##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 1 +# if __HAVE_DISTINCT_FLOAT64X +# include +# endif +# if __GLIBC_USE (IEC_60559_TYPES_EXT) +# include +# endif +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN +#endif /* __HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !_LIBC). */ + +#if __HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !defined _LIBC) +# define _Mdouble_ _Float128x +# define __MATH_PRECNAME(name,r) name##f128x##r +# define __MATH_DECLARING_DOUBLE 0 +# define __MATH_DECLARING_FLOATN 1 +# if __HAVE_DISTINCT_FLOAT128X +# include +# endif +# if __GLIBC_USE (IEC_60559_TYPES_EXT) +# include +# endif +# undef _Mdouble_ +# undef __MATH_PRECNAME +# undef __MATH_DECLARING_DOUBLE +# undef __MATH_DECLARING_FLOATN +#endif /* __HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !_LIBC). */ + +#undef __MATHDECL_1_IMPL +#undef __MATHDECL_1 +#undef __MATHDECL_ALIAS +#undef __MATHDECL +#undef __MATHCALL + +/* Declare functions returning a narrower type. */ +#define __MATHCALL_NARROW_ARGS_1 (_Marg_ __x) +#define __MATHCALL_NARROW_ARGS_2 (_Marg_ __x, _Marg_ __y) +#define __MATHCALL_NARROW_ARGS_3 (_Marg_ __x, _Marg_ __y, _Marg_ __z) +#define __MATHCALL_NARROW_NORMAL(func, nargs) \ + extern _Mret_ func __MATHCALL_NARROW_ARGS_ ## nargs __THROW +#define __MATHCALL_NARROW_REDIR(func, redir, nargs) \ + extern _Mret_ __REDIRECT_NTH (func, __MATHCALL_NARROW_ARGS_ ## nargs, \ + redir) +#define __MATHCALL_NARROW(func, redir, nargs) \ + __MATHCALL_NARROW_NORMAL (func, nargs) + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) + +# define _Mret_ float +# define _Marg_ double +# define __MATHCALL_NAME(name) f ## name +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME + +# define _Mret_ float +# define _Marg_ long double +# define __MATHCALL_NAME(name) f ## name ## l +# ifdef __LDBL_COMPAT +# define __MATHCALL_REDIR_NAME(name) f ## name +# define __MATHCALL_REDIR_NAME2(name) f ## name +# undef __MATHCALL_NARROW +# define __MATHCALL_NARROW(func, redir, nargs) \ + __MATHCALL_NARROW_REDIR (func, redir, nargs) +# elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# define __MATHCALL_REDIR_NAME(name) __ ## f32 ## name ## ieee128 +# define __MATHCALL_REDIR_NAME2(name) __ ## f32 ## name ## ieee128 +# undef __MATHCALL_NARROW +# define __MATHCALL_NARROW(func, redir, nargs) \ + __MATHCALL_NARROW_REDIR (func, redir, nargs) +# endif +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# if defined __LDBL_COMPAT \ + || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# undef __MATHCALL_REDIR_NAME +# undef __MATHCALL_REDIR_NAME2 +# undef __MATHCALL_NARROW +# define __MATHCALL_NARROW(func, redir, nargs) \ + __MATHCALL_NARROW_NORMAL (func, nargs) +# endif + +# define _Mret_ double +# define _Marg_ long double +# define __MATHCALL_NAME(name) d ## name ## l +# ifdef __LDBL_COMPAT +# define __MATHCALL_REDIR_NAME(name) __nldbl_d ## name ## l +# define __MATHCALL_REDIR_NAME2(name) name +# undef __MATHCALL_NARROW +# define __MATHCALL_NARROW(func, redir, nargs) \ + __MATHCALL_NARROW_REDIR (func, redir, nargs) +# elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# define __MATHCALL_REDIR_NAME(name) __ ## f64 ## name ## ieee128 +# define __MATHCALL_REDIR_NAME2(name) __ ## f64 ## name ## ieee128 +# undef __MATHCALL_NARROW +# define __MATHCALL_NARROW(func, redir, nargs) \ + __MATHCALL_NARROW_REDIR (func, redir, nargs) +# endif +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# if defined __LDBL_COMPAT \ + || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# undef __MATHCALL_REDIR_NAME +# undef __MATHCALL_REDIR_NAME2 +# undef __MATHCALL_NARROW +# define __MATHCALL_NARROW(func, redir, nargs) \ + __MATHCALL_NARROW_NORMAL (func, nargs) +# endif + +#endif + +#if __GLIBC_USE (IEC_60559_TYPES_EXT) + +# if __HAVE_FLOAT16 && __HAVE_FLOAT32 +# define _Mret_ _Float16 +# define _Marg_ _Float32 +# define __MATHCALL_NAME(name) f16 ## name ## f32 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT16 && __HAVE_FLOAT32X +# define _Mret_ _Float16 +# define _Marg_ _Float32x +# define __MATHCALL_NAME(name) f16 ## name ## f32x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT16 && __HAVE_FLOAT64 +# define _Mret_ _Float16 +# define _Marg_ _Float64 +# define __MATHCALL_NAME(name) f16 ## name ## f64 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT16 && __HAVE_FLOAT64X +# define _Mret_ _Float16 +# define _Marg_ _Float64x +# define __MATHCALL_NAME(name) f16 ## name ## f64x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT16 && __HAVE_FLOAT128 +# define _Mret_ _Float16 +# define _Marg_ _Float128 +# define __MATHCALL_NAME(name) f16 ## name ## f128 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT16 && __HAVE_FLOAT128X +# define _Mret_ _Float16 +# define _Marg_ _Float128x +# define __MATHCALL_NAME(name) f16 ## name ## f128x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32 && __HAVE_FLOAT32X +# define _Mret_ _Float32 +# define _Marg_ _Float32x +# define __MATHCALL_NAME(name) f32 ## name ## f32x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32 && __HAVE_FLOAT64 +# define _Mret_ _Float32 +# define _Marg_ _Float64 +# define __MATHCALL_NAME(name) f32 ## name ## f64 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32 && __HAVE_FLOAT64X +# define _Mret_ _Float32 +# define _Marg_ _Float64x +# define __MATHCALL_NAME(name) f32 ## name ## f64x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32 && __HAVE_FLOAT128 +# define _Mret_ _Float32 +# define _Marg_ _Float128 +# define __MATHCALL_NAME(name) f32 ## name ## f128 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32 && __HAVE_FLOAT128X +# define _Mret_ _Float32 +# define _Marg_ _Float128x +# define __MATHCALL_NAME(name) f32 ## name ## f128x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32X && __HAVE_FLOAT64 +# define _Mret_ _Float32x +# define _Marg_ _Float64 +# define __MATHCALL_NAME(name) f32x ## name ## f64 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32X && __HAVE_FLOAT64X +# define _Mret_ _Float32x +# define _Marg_ _Float64x +# define __MATHCALL_NAME(name) f32x ## name ## f64x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32X && __HAVE_FLOAT128 +# define _Mret_ _Float32x +# define _Marg_ _Float128 +# define __MATHCALL_NAME(name) f32x ## name ## f128 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT32X && __HAVE_FLOAT128X +# define _Mret_ _Float32x +# define _Marg_ _Float128x +# define __MATHCALL_NAME(name) f32x ## name ## f128x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT64 && __HAVE_FLOAT64X +# define _Mret_ _Float64 +# define _Marg_ _Float64x +# define __MATHCALL_NAME(name) f64 ## name ## f64x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT64 && __HAVE_FLOAT128 +# define _Mret_ _Float64 +# define _Marg_ _Float128 +# define __MATHCALL_NAME(name) f64 ## name ## f128 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT64 && __HAVE_FLOAT128X +# define _Mret_ _Float64 +# define _Marg_ _Float128x +# define __MATHCALL_NAME(name) f64 ## name ## f128x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT64X && __HAVE_FLOAT128 +# define _Mret_ _Float64x +# define _Marg_ _Float128 +# define __MATHCALL_NAME(name) f64x ## name ## f128 +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT64X && __HAVE_FLOAT128X +# define _Mret_ _Float64x +# define _Marg_ _Float128x +# define __MATHCALL_NAME(name) f64x ## name ## f128x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +# if __HAVE_FLOAT128 && __HAVE_FLOAT128X +# define _Mret_ _Float128 +# define _Marg_ _Float128x +# define __MATHCALL_NAME(name) f128 ## name ## f128x +# include +# undef _Mret_ +# undef _Marg_ +# undef __MATHCALL_NAME +# endif + +#endif + +#undef __MATHCALL_NARROW_ARGS_1 +#undef __MATHCALL_NARROW_ARGS_2 +#undef __MATHCALL_NARROW_ARGS_3 +#undef __MATHCALL_NARROW_NORMAL +#undef __MATHCALL_NARROW_REDIR +#undef __MATHCALL_NARROW + +#if defined __USE_MISC || defined __USE_XOPEN +/* This variable is used by `gamma' and `lgamma'. */ +extern int signgam; +#endif + +#if (__HAVE_DISTINCT_FLOAT16 \ + || __HAVE_DISTINCT_FLOAT32 \ + || __HAVE_DISTINCT_FLOAT64 \ + || __HAVE_DISTINCT_FLOAT32X \ + || __HAVE_DISTINCT_FLOAT64X \ + || __HAVE_DISTINCT_FLOAT128X) +# error "Unsupported _FloatN or _FloatNx types for ." +#endif + +/* Depending on the type of TG_ARG, call an appropriately suffixed + version of FUNC with arguments (including parentheses) ARGS. + Suffixed functions may not exist for long double if it has the same + format as double, or for other types with the same format as float, + double or long double. The behavior is undefined if the argument + does not have a real floating type. The definition may use a + conditional expression, so all suffixed versions of FUNC must + return the same type (FUNC may include a cast if necessary rather + than being a single identifier). */ +#ifdef __NO_LONG_DOUBLE_MATH +# if __HAVE_DISTINCT_FLOAT128 +# error "Distinct _Float128 without distinct long double not supported." +# endif +# define __MATH_TG(TG_ARG, FUNC, ARGS) \ + (sizeof (TG_ARG) == sizeof (float) ? FUNC ## f ARGS : FUNC ARGS) +#elif __HAVE_DISTINCT_FLOAT128 +# if __HAVE_GENERIC_SELECTION +# if __HAVE_FLOATN_NOT_TYPEDEF && __HAVE_FLOAT32 +# define __MATH_TG_F32(FUNC, ARGS) _Float32: FUNC ## f ARGS, +# else +# define __MATH_TG_F32(FUNC, ARGS) +# endif +# if __HAVE_FLOATN_NOT_TYPEDEF && __HAVE_FLOAT64X +# if __HAVE_FLOAT64X_LONG_DOUBLE +# define __MATH_TG_F64X(FUNC, ARGS) _Float64x: FUNC ## l ARGS, +# else +# define __MATH_TG_F64X(FUNC, ARGS) _Float64x: FUNC ## f128 ARGS, +# endif +# else +# define __MATH_TG_F64X(FUNC, ARGS) +# endif +# define __MATH_TG(TG_ARG, FUNC, ARGS) \ + _Generic ((TG_ARG), \ + float: FUNC ## f ARGS, \ + __MATH_TG_F32 (FUNC, ARGS) \ + default: FUNC ARGS, \ + long double: FUNC ## l ARGS, \ + __MATH_TG_F64X (FUNC, ARGS) \ + _Float128: FUNC ## f128 ARGS) +# else +# if __HAVE_FLOATN_NOT_TYPEDEF +# error "Non-typedef _FloatN but no _Generic." +# endif +# define __MATH_TG(TG_ARG, FUNC, ARGS) \ + __builtin_choose_expr \ + (__builtin_types_compatible_p (__typeof (TG_ARG), float), \ + FUNC ## f ARGS, \ + __builtin_choose_expr \ + (__builtin_types_compatible_p (__typeof (TG_ARG), double), \ + FUNC ARGS, \ + __builtin_choose_expr \ + (__builtin_types_compatible_p (__typeof (TG_ARG), long double), \ + FUNC ## l ARGS, \ + FUNC ## f128 ARGS))) +# endif +#else +# define __MATH_TG(TG_ARG, FUNC, ARGS) \ + (sizeof (TG_ARG) == sizeof (float) \ + ? FUNC ## f ARGS \ + : sizeof (TG_ARG) == sizeof (double) \ + ? FUNC ARGS \ + : FUNC ## l ARGS) +#endif + +/* ISO C99 defines some generic macros which work on any data type. */ +#ifdef __USE_ISOC99 + +/* All floating-point numbers can be put in one of these categories. */ +enum + { + FP_NAN = +# define FP_NAN 0 + FP_NAN, + FP_INFINITE = +# define FP_INFINITE 1 + FP_INFINITE, + FP_ZERO = +# define FP_ZERO 2 + FP_ZERO, + FP_SUBNORMAL = +# define FP_SUBNORMAL 3 + FP_SUBNORMAL, + FP_NORMAL = +# define FP_NORMAL 4 + FP_NORMAL + }; + +/* GCC bug 66462 means we cannot use the math builtins with -fsignaling-nan, + so disable builtins if this is enabled. When fixed in a newer GCC, + the __SUPPORT_SNAN__ check may be skipped for those versions. */ + +/* Return number of classification appropriate for X. */ +# if ((__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ + || __glibc_clang_prereq (2,8)) \ + && (!defined __OPTIMIZE_SIZE__ || defined __cplusplus) + /* The check for __cplusplus allows the use of the builtin, even + when optimization for size is on. This is provided for + libstdc++, only to let its configure test work when it is built + with -Os. No further use of this definition of fpclassify is + expected in C++ mode, since libstdc++ provides its own version + of fpclassify in cmath (which undefines fpclassify). */ +# define fpclassify(x) __builtin_fpclassify (FP_NAN, FP_INFINITE, \ + FP_NORMAL, FP_SUBNORMAL, FP_ZERO, x) +# else +# define fpclassify(x) __MATH_TG ((x), __fpclassify, (x)) +# endif + +/* Return nonzero value if sign of X is negative. */ +# if __GNUC_PREREQ (6,0) || __glibc_clang_prereq (3,3) +# define signbit(x) __builtin_signbit (x) +# elif defined __cplusplus + /* In C++ mode, __MATH_TG cannot be used, because it relies on + __builtin_types_compatible_p, which is a C-only builtin. + The check for __cplusplus allows the use of the builtin instead of + __MATH_TG. This is provided for libstdc++, only to let its configure + test work. No further use of this definition of signbit is expected + in C++ mode, since libstdc++ provides its own version of signbit + in cmath (which undefines signbit). */ +# define signbit(x) __builtin_signbitl (x) +# elif __GNUC_PREREQ (4,0) +# define signbit(x) __MATH_TG ((x), __builtin_signbit, (x)) +# else +# define signbit(x) __MATH_TG ((x), __signbit, (x)) +# endif + +/* Return nonzero value if X is not +-Inf or NaN. */ +# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ + || __glibc_clang_prereq (2,8) +# define isfinite(x) __builtin_isfinite (x) +# else +# define isfinite(x) __MATH_TG ((x), __finite, (x)) +# endif + +/* Return nonzero value if X is neither zero, subnormal, Inf, nor NaN. */ +# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ + || __glibc_clang_prereq (2,8) +# define isnormal(x) __builtin_isnormal (x) +# else +# define isnormal(x) (fpclassify (x) == FP_NORMAL) +# endif + +/* Return nonzero value if X is a NaN. We could use `fpclassify' but + we already have this functions `__isnan' and it is faster. */ +# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ + || __glibc_clang_prereq (2,8) +# define isnan(x) __builtin_isnan (x) +# else +# define isnan(x) __MATH_TG ((x), __isnan, (x)) +# endif + +/* Return nonzero value if X is positive or negative infinity. */ +# if __HAVE_DISTINCT_FLOAT128 && !__GNUC_PREREQ (7,0) \ + && !defined __SUPPORT_SNAN__ && !defined __cplusplus \ + && !defined __clang__ + /* Since __builtin_isinf_sign is broken for float128 before GCC 7.0, + use the helper function, __isinff128, with older compilers. This is + only provided for C mode, because in C++ mode, GCC has no support + for __builtin_types_compatible_p (and when in C++ mode, this macro is + not used anyway, because libstdc++ headers undefine it). */ +# define isinf(x) \ + (__builtin_types_compatible_p (__typeof (x), _Float128) \ + ? __isinff128 (x) : __builtin_isinf_sign (x)) +# elif (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ + || __glibc_clang_prereq (3,7) +# define isinf(x) __builtin_isinf_sign (x) +# else +# define isinf(x) __MATH_TG ((x), __isinf, (x)) +# endif + +/* Bitmasks for the math_errhandling macro. */ +# define MATH_ERRNO 1 /* errno set by math functions. */ +# define MATH_ERREXCEPT 2 /* Exceptions raised by math functions. */ + +/* By default all math functions support both errno and exception handling + (except for soft floating point implementations which may only support + errno handling). If errno handling is disabled, exceptions are still + supported by GLIBC. Set math_errhandling to 0 with -ffast-math (this is + nonconforming but it is more useful than leaving it undefined). */ +# ifdef __FAST_MATH__ +# define math_errhandling 0 +# elif defined __NO_MATH_ERRNO__ +# define math_errhandling (MATH_ERREXCEPT) +# else +# define math_errhandling (MATH_ERRNO | MATH_ERREXCEPT) +# endif + +#endif /* Use ISO C99. */ + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) +# include + +/* Return nonzero value if X is a signaling NaN. */ +# ifndef __cplusplus +# define issignaling(x) __MATH_TG ((x), __issignaling, (x)) +# else + /* In C++ mode, __MATH_TG cannot be used, because it relies on + __builtin_types_compatible_p, which is a C-only builtin. On the + other hand, overloading provides the means to distinguish between + the floating-point types. The overloading resolution will match + the correct parameter (regardless of type qualifiers (i.e.: const + and volatile)). */ +extern "C++" { +inline int issignaling (float __val) { return __issignalingf (__val); } +inline int issignaling (double __val) { return __issignaling (__val); } +inline int +issignaling (long double __val) +{ +# ifdef __NO_LONG_DOUBLE_MATH + return __issignaling (__val); +# else + return __issignalingl (__val); +# endif +} +# if __HAVE_FLOAT128_UNLIKE_LDBL +/* When using an IEEE 128-bit long double, _Float128 is defined as long double + in C++. */ +inline int issignaling (_Float128 __val) { return __issignalingf128 (__val); } +# endif +} /* extern C++ */ +# endif + +/* Return nonzero value if X is subnormal. */ +# define issubnormal(x) (fpclassify (x) == FP_SUBNORMAL) + +/* Return nonzero value if X is zero. */ +# ifndef __cplusplus +# ifdef __SUPPORT_SNAN__ +# define iszero(x) (fpclassify (x) == FP_ZERO) +# else +# define iszero(x) (((__typeof (x)) (x)) == 0) +# endif +# else /* __cplusplus */ +extern "C++" { +# ifdef __SUPPORT_SNAN__ +inline int +iszero (float __val) +{ + return __fpclassifyf (__val) == FP_ZERO; +} +inline int +iszero (double __val) +{ + return __fpclassify (__val) == FP_ZERO; +} +inline int +iszero (long double __val) +{ +# ifdef __NO_LONG_DOUBLE_MATH + return __fpclassify (__val) == FP_ZERO; +# else + return __fpclassifyl (__val) == FP_ZERO; +# endif +} +# if __HAVE_FLOAT128_UNLIKE_LDBL + /* When using an IEEE 128-bit long double, _Float128 is defined as long double + in C++. */ +inline int +iszero (_Float128 __val) +{ + return __fpclassifyf128 (__val) == FP_ZERO; +} +# endif +# else +template inline bool +iszero (__T __val) +{ + return __val == 0; +} +# endif +} /* extern C++ */ +# endif /* __cplusplus */ +#endif /* Use IEC_60559_BFP_EXT. */ + +#ifdef __USE_XOPEN +/* X/Open wants another strange constant. */ +# define MAXFLOAT 3.40282347e+38F +#endif + + +/* Some useful constants. */ +#if defined __USE_MISC || defined __USE_XOPEN +# define M_E 2.7182818284590452354 /* e */ +# define M_LOG2E 1.4426950408889634074 /* log_2 e */ +# define M_LOG10E 0.43429448190325182765 /* log_10 e */ +# define M_LN2 0.69314718055994530942 /* log_e 2 */ +# define M_LN10 2.30258509299404568402 /* log_e 10 */ +# define M_PI 3.14159265358979323846 /* pi */ +# define M_PI_2 1.57079632679489661923 /* pi/2 */ +# define M_PI_4 0.78539816339744830962 /* pi/4 */ +# define M_1_PI 0.31830988618379067154 /* 1/pi */ +# define M_2_PI 0.63661977236758134308 /* 2/pi */ +# define M_2_SQRTPI 1.12837916709551257390 /* 2/sqrt(pi) */ +# define M_SQRT2 1.41421356237309504880 /* sqrt(2) */ +# define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ +#endif + +/* GNU extension to provide float constants with similar names. */ +#ifdef __USE_GNU +# define M_Ef 2.7182818284590452354f /* e */ +# define M_LOG2Ef 1.4426950408889634074f /* log_2 e */ +# define M_LOG10Ef 0.43429448190325182765f /* log_10 e */ +# define M_LN2f 0.69314718055994530942f /* log_e 2 */ +# define M_LN10f 2.30258509299404568402f /* log_e 10 */ +# define M_PIf 3.14159265358979323846f /* pi */ +# define M_PI_2f 1.57079632679489661923f /* pi/2 */ +# define M_PI_4f 0.78539816339744830962f /* pi/4 */ +# define M_1_PIf 0.31830988618379067154f /* 1/pi */ +# define M_2_PIf 0.63661977236758134308f /* 2/pi */ +# define M_2_SQRTPIf 1.12837916709551257390f /* 2/sqrt(pi) */ +# define M_SQRT2f 1.41421356237309504880f /* sqrt(2) */ +# define M_SQRT1_2f 0.70710678118654752440f /* 1/sqrt(2) */ +#endif + +/* The above constants are not adequate for computation using `long double's. + Therefore we provide as an extension constants with similar names as a + GNU extension. Provide enough digits for the 128-bit IEEE quad. */ +#ifdef __USE_GNU +# define M_El 2.718281828459045235360287471352662498L /* e */ +# define M_LOG2El 1.442695040888963407359924681001892137L /* log_2 e */ +# define M_LOG10El 0.434294481903251827651128918916605082L /* log_10 e */ +# define M_LN2l 0.693147180559945309417232121458176568L /* log_e 2 */ +# define M_LN10l 2.302585092994045684017991454684364208L /* log_e 10 */ +# define M_PIl 3.141592653589793238462643383279502884L /* pi */ +# define M_PI_2l 1.570796326794896619231321691639751442L /* pi/2 */ +# define M_PI_4l 0.785398163397448309615660845819875721L /* pi/4 */ +# define M_1_PIl 0.318309886183790671537767526745028724L /* 1/pi */ +# define M_2_PIl 0.636619772367581343075535053490057448L /* 2/pi */ +# define M_2_SQRTPIl 1.128379167095512573896158903121545172L /* 2/sqrt(pi) */ +# define M_SQRT2l 1.414213562373095048801688724209698079L /* sqrt(2) */ +# define M_SQRT1_2l 0.707106781186547524400844362104849039L /* 1/sqrt(2) */ +#endif + +#if __HAVE_FLOAT16 && defined __USE_GNU +# define M_Ef16 __f16 (2.718281828459045235360287471352662498) /* e */ +# define M_LOG2Ef16 __f16 (1.442695040888963407359924681001892137) /* log_2 e */ +# define M_LOG10Ef16 __f16 (0.434294481903251827651128918916605082) /* log_10 e */ +# define M_LN2f16 __f16 (0.693147180559945309417232121458176568) /* log_e 2 */ +# define M_LN10f16 __f16 (2.302585092994045684017991454684364208) /* log_e 10 */ +# define M_PIf16 __f16 (3.141592653589793238462643383279502884) /* pi */ +# define M_PI_2f16 __f16 (1.570796326794896619231321691639751442) /* pi/2 */ +# define M_PI_4f16 __f16 (0.785398163397448309615660845819875721) /* pi/4 */ +# define M_1_PIf16 __f16 (0.318309886183790671537767526745028724) /* 1/pi */ +# define M_2_PIf16 __f16 (0.636619772367581343075535053490057448) /* 2/pi */ +# define M_2_SQRTPIf16 __f16 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ +# define M_SQRT2f16 __f16 (1.414213562373095048801688724209698079) /* sqrt(2) */ +# define M_SQRT1_2f16 __f16 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ +#endif + +#if __HAVE_FLOAT32 && defined __USE_GNU +# define M_Ef32 __f32 (2.718281828459045235360287471352662498) /* e */ +# define M_LOG2Ef32 __f32 (1.442695040888963407359924681001892137) /* log_2 e */ +# define M_LOG10Ef32 __f32 (0.434294481903251827651128918916605082) /* log_10 e */ +# define M_LN2f32 __f32 (0.693147180559945309417232121458176568) /* log_e 2 */ +# define M_LN10f32 __f32 (2.302585092994045684017991454684364208) /* log_e 10 */ +# define M_PIf32 __f32 (3.141592653589793238462643383279502884) /* pi */ +# define M_PI_2f32 __f32 (1.570796326794896619231321691639751442) /* pi/2 */ +# define M_PI_4f32 __f32 (0.785398163397448309615660845819875721) /* pi/4 */ +# define M_1_PIf32 __f32 (0.318309886183790671537767526745028724) /* 1/pi */ +# define M_2_PIf32 __f32 (0.636619772367581343075535053490057448) /* 2/pi */ +# define M_2_SQRTPIf32 __f32 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ +# define M_SQRT2f32 __f32 (1.414213562373095048801688724209698079) /* sqrt(2) */ +# define M_SQRT1_2f32 __f32 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ +#endif + +#if __HAVE_FLOAT64 && defined __USE_GNU +# define M_Ef64 __f64 (2.718281828459045235360287471352662498) /* e */ +# define M_LOG2Ef64 __f64 (1.442695040888963407359924681001892137) /* log_2 e */ +# define M_LOG10Ef64 __f64 (0.434294481903251827651128918916605082) /* log_10 e */ +# define M_LN2f64 __f64 (0.693147180559945309417232121458176568) /* log_e 2 */ +# define M_LN10f64 __f64 (2.302585092994045684017991454684364208) /* log_e 10 */ +# define M_PIf64 __f64 (3.141592653589793238462643383279502884) /* pi */ +# define M_PI_2f64 __f64 (1.570796326794896619231321691639751442) /* pi/2 */ +# define M_PI_4f64 __f64 (0.785398163397448309615660845819875721) /* pi/4 */ +# define M_1_PIf64 __f64 (0.318309886183790671537767526745028724) /* 1/pi */ +# define M_2_PIf64 __f64 (0.636619772367581343075535053490057448) /* 2/pi */ +# define M_2_SQRTPIf64 __f64 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ +# define M_SQRT2f64 __f64 (1.414213562373095048801688724209698079) /* sqrt(2) */ +# define M_SQRT1_2f64 __f64 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ +#endif + +#if __HAVE_FLOAT128 && defined __USE_GNU +# define M_Ef128 __f128 (2.718281828459045235360287471352662498) /* e */ +# define M_LOG2Ef128 __f128 (1.442695040888963407359924681001892137) /* log_2 e */ +# define M_LOG10Ef128 __f128 (0.434294481903251827651128918916605082) /* log_10 e */ +# define M_LN2f128 __f128 (0.693147180559945309417232121458176568) /* log_e 2 */ +# define M_LN10f128 __f128 (2.302585092994045684017991454684364208) /* log_e 10 */ +# define M_PIf128 __f128 (3.141592653589793238462643383279502884) /* pi */ +# define M_PI_2f128 __f128 (1.570796326794896619231321691639751442) /* pi/2 */ +# define M_PI_4f128 __f128 (0.785398163397448309615660845819875721) /* pi/4 */ +# define M_1_PIf128 __f128 (0.318309886183790671537767526745028724) /* 1/pi */ +# define M_2_PIf128 __f128 (0.636619772367581343075535053490057448) /* 2/pi */ +# define M_2_SQRTPIf128 __f128 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ +# define M_SQRT2f128 __f128 (1.414213562373095048801688724209698079) /* sqrt(2) */ +# define M_SQRT1_2f128 __f128 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ +#endif + +#if __HAVE_FLOAT32X && defined __USE_GNU +# define M_Ef32x __f32x (2.718281828459045235360287471352662498) /* e */ +# define M_LOG2Ef32x __f32x (1.442695040888963407359924681001892137) /* log_2 e */ +# define M_LOG10Ef32x __f32x (0.434294481903251827651128918916605082) /* log_10 e */ +# define M_LN2f32x __f32x (0.693147180559945309417232121458176568) /* log_e 2 */ +# define M_LN10f32x __f32x (2.302585092994045684017991454684364208) /* log_e 10 */ +# define M_PIf32x __f32x (3.141592653589793238462643383279502884) /* pi */ +# define M_PI_2f32x __f32x (1.570796326794896619231321691639751442) /* pi/2 */ +# define M_PI_4f32x __f32x (0.785398163397448309615660845819875721) /* pi/4 */ +# define M_1_PIf32x __f32x (0.318309886183790671537767526745028724) /* 1/pi */ +# define M_2_PIf32x __f32x (0.636619772367581343075535053490057448) /* 2/pi */ +# define M_2_SQRTPIf32x __f32x (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ +# define M_SQRT2f32x __f32x (1.414213562373095048801688724209698079) /* sqrt(2) */ +# define M_SQRT1_2f32x __f32x (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ +#endif + +#if __HAVE_FLOAT64X && defined __USE_GNU +# define M_Ef64x __f64x (2.718281828459045235360287471352662498) /* e */ +# define M_LOG2Ef64x __f64x (1.442695040888963407359924681001892137) /* log_2 e */ +# define M_LOG10Ef64x __f64x (0.434294481903251827651128918916605082) /* log_10 e */ +# define M_LN2f64x __f64x (0.693147180559945309417232121458176568) /* log_e 2 */ +# define M_LN10f64x __f64x (2.302585092994045684017991454684364208) /* log_e 10 */ +# define M_PIf64x __f64x (3.141592653589793238462643383279502884) /* pi */ +# define M_PI_2f64x __f64x (1.570796326794896619231321691639751442) /* pi/2 */ +# define M_PI_4f64x __f64x (0.785398163397448309615660845819875721) /* pi/4 */ +# define M_1_PIf64x __f64x (0.318309886183790671537767526745028724) /* 1/pi */ +# define M_2_PIf64x __f64x (0.636619772367581343075535053490057448) /* 2/pi */ +# define M_2_SQRTPIf64x __f64x (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ +# define M_SQRT2f64x __f64x (1.414213562373095048801688724209698079) /* sqrt(2) */ +# define M_SQRT1_2f64x __f64x (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ +#endif + +#if __HAVE_FLOAT128X && defined __USE_GNU +# error "M_* values needed for _Float128x" +#endif + +#ifdef __USE_ISOC99 +# if __GNUC_PREREQ (3, 1) +/* ISO C99 defines some macros to compare number while taking care for + unordered numbers. Many FPUs provide special instructions to support + these operations. Generic support in GCC for these as builtins went + in 2.97, but not all cpus added their patterns until 3.1. Therefore + we enable the builtins from 3.1 onwards and use a generic implementation + otherwise. */ +# define isgreater(x, y) __builtin_isgreater(x, y) +# define isgreaterequal(x, y) __builtin_isgreaterequal(x, y) +# define isless(x, y) __builtin_isless(x, y) +# define islessequal(x, y) __builtin_islessequal(x, y) +# define islessgreater(x, y) __builtin_islessgreater(x, y) +# define isunordered(x, y) __builtin_isunordered(x, y) +# else +# define isgreater(x, y) \ + (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ + !isunordered (__x, __y) && __x > __y; })) +# define isgreaterequal(x, y) \ + (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ + !isunordered (__x, __y) && __x >= __y; })) +# define isless(x, y) \ + (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ + !isunordered (__x, __y) && __x < __y; })) +# define islessequal(x, y) \ + (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ + !isunordered (__x, __y) && __x <= __y; })) +# define islessgreater(x, y) \ + (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ + !isunordered (__x, __y) && __x != __y; })) +/* isunordered must always check both operands first for signaling NaNs. */ +# define isunordered(x, y) \ + (__extension__ ({ __typeof__ (x) __u = (x); __typeof__ (y) __v = (y); \ + __u != __v && (__u != __u || __v != __v); })) +# endif +#endif + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) +/* An expression whose type has the widest of the evaluation formats + of X and Y (which are of floating-point types). */ +# if __FLT_EVAL_METHOD__ == 2 || __FLT_EVAL_METHOD__ > 64 +# define __MATH_EVAL_FMT2(x, y) ((x) + (y) + 0.0L) +# elif __FLT_EVAL_METHOD__ == 1 || __FLT_EVAL_METHOD__ > 32 +# define __MATH_EVAL_FMT2(x, y) ((x) + (y) + 0.0) +# elif __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == 32 +# define __MATH_EVAL_FMT2(x, y) ((x) + (y) + 0.0f) +# else +# define __MATH_EVAL_FMT2(x, y) ((x) + (y)) +# endif + +/* Return X == Y but raising "invalid" and setting errno if X or Y is + a NaN. */ +# if !defined __cplusplus || (__cplusplus < 201103L && !defined __GNUC__) +# define iseqsig(x, y) \ + __MATH_TG (__MATH_EVAL_FMT2 (x, y), __iseqsig, ((x), (y))) +# else +/* In C++ mode, __MATH_TG cannot be used, because it relies on + __builtin_types_compatible_p, which is a C-only builtin. Moreover, + the comparison macros from ISO C take two floating-point arguments, + which need not have the same type. Choosing what underlying function + to call requires evaluating the formats of the arguments, then + selecting which is wider. The macro __MATH_EVAL_FMT2 provides this + information, however, only the type of the macro expansion is + relevant (actually evaluating the expression would be incorrect). + Thus, the type is used as a template parameter for __iseqsig_type, + which calls the appropriate underlying function. */ +extern "C++" { +template struct __iseqsig_type; + +template<> struct __iseqsig_type +{ + static int __call (float __x, float __y) throw () + { + return __iseqsigf (__x, __y); + } +}; + +template<> struct __iseqsig_type +{ + static int __call (double __x, double __y) throw () + { + return __iseqsig (__x, __y); + } +}; + +template<> struct __iseqsig_type +{ + static int __call (long double __x, long double __y) throw () + { +# ifndef __NO_LONG_DOUBLE_MATH + return __iseqsigl (__x, __y); +# else + return __iseqsig (__x, __y); +# endif + } +}; + +# if __HAVE_FLOAT32 && __GNUC_PREREQ (13, 0) +template<> struct __iseqsig_type<_Float32> +{ + static int __call (_Float32 __x, _Float32 __y) throw () + { + return __iseqsigf (__x, __y); + } +}; +# endif + +# if __HAVE_FLOAT64 && __GNUC_PREREQ (13, 0) +template<> struct __iseqsig_type<_Float64> +{ + static int __call (_Float64 __x, _Float64 __y) throw () + { + return __iseqsig (__x, __y); + } +}; +# endif + +# if __HAVE_FLOAT128_UNLIKE_LDBL || (__HAVE_FLOAT128 && __GNUC_PREREQ (13, 0)) + /* When using an IEEE 128-bit long double, _Float128 is defined as long double + in C++. */ +template<> struct __iseqsig_type<_Float128> +{ + static int __call (_Float128 __x, _Float128 __y) throw () + { +# if __HAVE_FLOAT128_UNLIKE_LDBL + return __iseqsigf128 (__x, __y); +# else + return __iseqsigl (__x, __y); +# endif + } +}; +# endif + +# if __HAVE_FLOAT32X && __GNUC_PREREQ (13, 0) +template<> struct __iseqsig_type<_Float32x> +{ + static int __call (_Float32x __x, _Float32x __y) throw () + { + return __iseqsig (__x, __y); + } +}; +# endif + +# if __HAVE_FLOAT64X && __GNUC_PREREQ (13, 0) +template<> struct __iseqsig_type<_Float64x> +{ + static int __call (_Float64x __x, _Float64x __y) throw () + { +# if __HAVE_FLOAT64X_LONG_DOUBLE + return __iseqsigl (__x, __y); +# else + return __iseqsigf128 (__x, __y); +# endif + } +}; +# endif + +template +inline int +iseqsig (_T1 __x, _T2 __y) throw () +{ +# if __cplusplus >= 201103L + typedef decltype (__MATH_EVAL_FMT2 (__x, __y)) _T3; +# else + typedef __typeof (__MATH_EVAL_FMT2 (__x, __y)) _T3; +# endif + return __iseqsig_type<_T3>::__call (__x, __y); +} + +} /* extern "C++" */ +# endif /* __cplusplus */ + +#endif + +__END_DECLS + + +#endif /* math.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..46970ddabe6658d9caa22889a804385f79a1326b GIT binary patch literal 23189 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. */ + +#ifndef _PTHREAD_H +#define _PTHREAD_H 1 + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#ifdef __USE_MISC +# include +#endif + +/* Detach state. */ +enum +{ + PTHREAD_CREATE_JOINABLE, +#define PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_JOINABLE + PTHREAD_CREATE_DETACHED +#define PTHREAD_CREATE_DETACHED PTHREAD_CREATE_DETACHED +}; + + +/* Mutex types. */ +enum +{ + PTHREAD_MUTEX_TIMED_NP, + PTHREAD_MUTEX_RECURSIVE_NP, + PTHREAD_MUTEX_ERRORCHECK_NP, + PTHREAD_MUTEX_ADAPTIVE_NP +#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 + , + PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP, + PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP, + PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP, + PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL +#endif +#ifdef __USE_GNU + /* For compatibility. */ + , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_TIMED_NP +#endif +}; + + +#ifdef __USE_XOPEN2K +/* Robust mutex or not flags. */ +enum +{ + PTHREAD_MUTEX_STALLED, + PTHREAD_MUTEX_STALLED_NP = PTHREAD_MUTEX_STALLED, + PTHREAD_MUTEX_ROBUST, + PTHREAD_MUTEX_ROBUST_NP = PTHREAD_MUTEX_ROBUST +}; +#endif + + +#if defined __USE_POSIX199506 || defined __USE_UNIX98 +/* Mutex protocols. */ +enum +{ + PTHREAD_PRIO_NONE, + PTHREAD_PRIO_INHERIT, + PTHREAD_PRIO_PROTECT +}; +#endif + + +#define PTHREAD_MUTEX_INITIALIZER \ + { { __PTHREAD_MUTEX_INITIALIZER (PTHREAD_MUTEX_TIMED_NP) } } +#ifdef __USE_GNU +# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \ + { { __PTHREAD_MUTEX_INITIALIZER (PTHREAD_MUTEX_RECURSIVE_NP) } } +# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \ + { { __PTHREAD_MUTEX_INITIALIZER (PTHREAD_MUTEX_ERRORCHECK_NP) } } +# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \ + { { __PTHREAD_MUTEX_INITIALIZER (PTHREAD_MUTEX_ADAPTIVE_NP) } } +#endif + + +/* Read-write lock types. */ +#if defined __USE_UNIX98 || defined __USE_XOPEN2K +enum +{ + PTHREAD_RWLOCK_PREFER_READER_NP, + PTHREAD_RWLOCK_PREFER_WRITER_NP, + PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP, + PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP +}; + + +/* Read-write lock initializers. */ +# define PTHREAD_RWLOCK_INITIALIZER \ + { { __PTHREAD_RWLOCK_INITIALIZER (PTHREAD_RWLOCK_DEFAULT_NP) } } +# ifdef __USE_GNU +# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \ + { { __PTHREAD_RWLOCK_INITIALIZER (PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP) } } +# endif +#endif /* Unix98 or XOpen2K */ + + +/* Scheduler inheritance. */ +enum +{ + PTHREAD_INHERIT_SCHED, +#define PTHREAD_INHERIT_SCHED PTHREAD_INHERIT_SCHED + PTHREAD_EXPLICIT_SCHED +#define PTHREAD_EXPLICIT_SCHED PTHREAD_EXPLICIT_SCHED +}; + + +/* Scope handling. */ +enum +{ + PTHREAD_SCOPE_SYSTEM, +#define PTHREAD_SCOPE_SYSTEM PTHREAD_SCOPE_SYSTEM + PTHREAD_SCOPE_PROCESS +#define PTHREAD_SCOPE_PROCESS PTHREAD_SCOPE_PROCESS +}; + + +/* Process shared or private flag. */ +enum +{ + PTHREAD_PROCESS_PRIVATE, +#define PTHREAD_PROCESS_PRIVATE PTHREAD_PROCESS_PRIVATE + PTHREAD_PROCESS_SHARED +#define PTHREAD_PROCESS_SHARED PTHREAD_PROCESS_SHARED +}; + + + +/* Conditional variable handling. */ +#define PTHREAD_COND_INITIALIZER { { {0}, {0}, {0, 0}, {0, 0}, 0, 0, {0, 0} } } + + +/* Cleanup buffers */ +struct _pthread_cleanup_buffer +{ + void (*__routine) (void *); /* Function to call. */ + void *__arg; /* Its argument. */ + int __canceltype; /* Saved cancellation type. */ + struct _pthread_cleanup_buffer *__prev; /* Chaining of cleanup functions. */ +}; + +/* Cancellation */ +enum +{ + PTHREAD_CANCEL_ENABLE, +#define PTHREAD_CANCEL_ENABLE PTHREAD_CANCEL_ENABLE + PTHREAD_CANCEL_DISABLE +#define PTHREAD_CANCEL_DISABLE PTHREAD_CANCEL_DISABLE +}; +enum +{ + PTHREAD_CANCEL_DEFERRED, +#define PTHREAD_CANCEL_DEFERRED PTHREAD_CANCEL_DEFERRED + PTHREAD_CANCEL_ASYNCHRONOUS +#define PTHREAD_CANCEL_ASYNCHRONOUS PTHREAD_CANCEL_ASYNCHRONOUS +}; +#define PTHREAD_CANCELED ((void *) -1) + + +/* Single execution handling. */ +#define PTHREAD_ONCE_INIT 0 + + +#ifdef __USE_XOPEN2K +/* Value returned by 'pthread_barrier_wait' for one of the threads after + the required number of threads have called this function. + -1 is distinct from 0 and all errno constants */ +# define PTHREAD_BARRIER_SERIAL_THREAD -1 +#endif + + +__BEGIN_DECLS + +/* Create a new thread, starting with execution of START-ROUTINE + getting passed ARG. Creation attributed come from ATTR. The new + handle is stored in *NEWTHREAD. */ +extern int pthread_create (pthread_t *__restrict __newthread, + const pthread_attr_t *__restrict __attr, + void *(*__start_routine) (void *), + void *__restrict __arg) __THROWNL __nonnull ((1, 3)); + +/* Terminate calling thread. + + The registered cleanup handlers are called via exception handling + so we cannot mark this function with __THROW.*/ +extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__)); + +/* Make calling thread wait for termination of the thread TH. The + exit status of the thread is stored in *THREAD_RETURN, if THREAD_RETURN + is not NULL. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int pthread_join (pthread_t __th, void **__thread_return); + +#ifdef __USE_GNU +/* Check whether thread TH has terminated. If yes return the status of + the thread in *THREAD_RETURN, if THREAD_RETURN is not NULL. */ +extern int pthread_tryjoin_np (pthread_t __th, void **__thread_return) __THROW; + +# ifndef __USE_TIME_BITS64 +/* Make calling thread wait for termination of the thread TH, but only + until TIMEOUT. The exit status of the thread is stored in + *THREAD_RETURN, if THREAD_RETURN is not NULL. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return, + const struct timespec *__abstime); + +/* Make calling thread wait for termination of the thread TH, but only + until TIMEOUT measured against the clock specified by CLOCKID. The + exit status of the thread is stored in *THREAD_RETURN, if + THREAD_RETURN is not NULL. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int pthread_clockjoin_np (pthread_t __th, void **__thread_return, + clockid_t __clockid, + const struct timespec *__abstime); +# else +# ifdef __REDIRECT +extern int __REDIRECT (pthread_timedjoin_np, + (pthread_t __th, void **__thread_return, + const struct timespec *__abstime), + __pthread_timedjoin_np64); + +extern int __REDIRECT (pthread_clockjoin_np, + (pthread_t __th, void **__thread_return, + clockid_t __clockid, + const struct timespec *__abstime), + __pthread_clockjoin_np64); +# else +# define pthread_timedjoin_np __pthread_timedjoin_np64 +# define pthread_clockjoin_np __pthread_clockjoin_np64 +# endif +# endif +#endif + +/* Indicate that the thread TH is never to be joined with PTHREAD_JOIN. + The resources of TH will therefore be freed immediately when it + terminates, instead of waiting for another thread to perform PTHREAD_JOIN + on it. */ +extern int pthread_detach (pthread_t __th) __THROW; + + +/* Obtain the identifier of the current thread. */ +extern pthread_t pthread_self (void) __THROW __attribute__ ((__const__)); + +/* Compare two thread identifiers. */ +extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) + __THROW __attribute__ ((__const__)); + + +/* Thread attribute handling. */ + +/* Initialize thread attribute *ATTR with default attributes + (detachstate is PTHREAD_JOINABLE, scheduling policy is SCHED_OTHER, + no user-provided stack). */ +extern int pthread_attr_init (pthread_attr_t *__attr) __THROW __nonnull ((1)); + +/* Destroy thread attribute *ATTR. */ +extern int pthread_attr_destroy (pthread_attr_t *__attr) + __THROW __nonnull ((1)); + +/* Get detach state attribute. */ +extern int pthread_attr_getdetachstate (const pthread_attr_t *__attr, + int *__detachstate) + __THROW __nonnull ((1, 2)); + +/* Set detach state attribute. */ +extern int pthread_attr_setdetachstate (pthread_attr_t *__attr, + int __detachstate) + __THROW __nonnull ((1)); + + +/* Get the size of the guard area created for stack overflow protection. */ +extern int pthread_attr_getguardsize (const pthread_attr_t *__attr, + size_t *__guardsize) + __THROW __nonnull ((1, 2)); + +/* Set the size of the guard area created for stack overflow protection. */ +extern int pthread_attr_setguardsize (pthread_attr_t *__attr, + size_t __guardsize) + __THROW __nonnull ((1)); + + +/* Return in *PARAM the scheduling parameters of *ATTR. */ +extern int pthread_attr_getschedparam (const pthread_attr_t *__restrict __attr, + struct sched_param *__restrict __param) + __THROW __nonnull ((1, 2)); + +/* Set scheduling parameters (priority, etc) in *ATTR according to PARAM. */ +extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr, + const struct sched_param *__restrict + __param) __THROW __nonnull ((1, 2)); + +/* Return in *POLICY the scheduling policy of *ATTR. */ +extern int pthread_attr_getschedpolicy (const pthread_attr_t *__restrict + __attr, int *__restrict __policy) + __THROW __nonnull ((1, 2)); + +/* Set scheduling policy in *ATTR according to POLICY. */ +extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy) + __THROW __nonnull ((1)); + +/* Return in *INHERIT the scheduling inheritance mode of *ATTR. */ +extern int pthread_attr_getinheritsched (const pthread_attr_t *__restrict + __attr, int *__restrict __inherit) + __THROW __nonnull ((1, 2)); + +/* Set scheduling inheritance mode in *ATTR according to INHERIT. */ +extern int pthread_attr_setinheritsched (pthread_attr_t *__attr, + int __inherit) + __THROW __nonnull ((1)); + + +/* Return in *SCOPE the scheduling contention scope of *ATTR. */ +extern int pthread_attr_getscope (const pthread_attr_t *__restrict __attr, + int *__restrict __scope) + __THROW __nonnull ((1, 2)); + +/* Set scheduling contention scope in *ATTR according to SCOPE. */ +extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope) + __THROW __nonnull ((1)); + +/* Return the previously set address for the stack. */ +extern int pthread_attr_getstackaddr (const pthread_attr_t *__restrict + __attr, void **__restrict __stackaddr) + __THROW __nonnull ((1, 2)) __attribute_deprecated__; + +/* Set the starting address of the stack of the thread to be created. + Depending on whether the stack grows up or down the value must either + be higher or lower than all the address in the memory block. The + minimal size of the block must be PTHREAD_STACK_MIN. */ +extern int pthread_attr_setstackaddr (pthread_attr_t *__attr, + void *__stackaddr) + __THROW __nonnull ((1)) __attribute_deprecated__; + +/* Return the currently used minimal stack size. */ +extern int pthread_attr_getstacksize (const pthread_attr_t *__restrict + __attr, size_t *__restrict __stacksize) + __THROW __nonnull ((1, 2)); + +/* Add information about the minimum stack size needed for the thread + to be started. This size must never be less than PTHREAD_STACK_MIN + and must also not exceed the system limits. */ +extern int pthread_attr_setstacksize (pthread_attr_t *__attr, + size_t __stacksize) + __THROW __nonnull ((1)); + +#ifdef __USE_XOPEN2K +/* Return the previously set address for the stack. */ +extern int pthread_attr_getstack (const pthread_attr_t *__restrict __attr, + void **__restrict __stackaddr, + size_t *__restrict __stacksize) + __THROW __nonnull ((1, 2, 3)); + +/* The following two interfaces are intended to replace the last two. They + require setting the address as well as the size since only setting the + address will make the implementation on some architectures impossible. */ +extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr, + size_t __stacksize) __THROW __nonnull ((1)); +#endif + +#ifdef __USE_GNU +/* Thread created with attribute ATTR will be limited to run only on + the processors represented in CPUSET. */ +extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr, + size_t __cpusetsize, + const cpu_set_t *__cpuset) + __THROW __nonnull ((1, 3)); + +/* Get bit set in CPUSET representing the processors threads created with + ATTR can run on. */ +extern int pthread_attr_getaffinity_np (const pthread_attr_t *__attr, + size_t __cpusetsize, + cpu_set_t *__cpuset) + __THROW __nonnull ((1, 3)); + +/* Get the default attributes used by pthread_create in this process. */ +extern int pthread_getattr_default_np (pthread_attr_t *__attr) + __THROW __nonnull ((1)); + +/* Store *SIGMASK as the signal mask for the new thread in *ATTR. */ +extern int pthread_attr_setsigmask_np (pthread_attr_t *__attr, + const __sigset_t *sigmask); + +/* Store the signal mask of *ATTR in *SIGMASK. If there is no signal + mask stored, return PTHREAD_ATTR_NOSIGMASK_NP. Return zero on + success. */ +extern int pthread_attr_getsigmask_np (const pthread_attr_t *__attr, + __sigset_t *sigmask); + +/* Special return value from pthread_attr_getsigmask_np if the signal + mask has not been set. */ +#define PTHREAD_ATTR_NO_SIGMASK_NP (-1) + +/* Set the default attributes to be used by pthread_create in this + process. */ +extern int pthread_setattr_default_np (const pthread_attr_t *__attr) + __THROW __nonnull ((1)); + +/* Initialize thread attribute *ATTR with attributes corresponding to the + already running thread TH. It shall be called on uninitialized ATTR + and destroyed with pthread_attr_destroy when no longer needed. */ +extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr) + __THROW __nonnull ((2)); +#endif + + +/* Functions for scheduling control. */ + +/* Set the scheduling parameters for TARGET_THREAD according to POLICY + and *PARAM. */ +extern int pthread_setschedparam (pthread_t __target_thread, int __policy, + const struct sched_param *__param) + __THROW __nonnull ((3)); + +/* Return in *POLICY and *PARAM the scheduling parameters for TARGET_THREAD. */ +extern int pthread_getschedparam (pthread_t __target_thread, + int *__restrict __policy, + struct sched_param *__restrict __param) + __THROW __nonnull ((2, 3)); + +/* Set the scheduling priority for TARGET_THREAD. */ +extern int pthread_setschedprio (pthread_t __target_thread, int __prio) + __THROW; + + +#ifdef __USE_GNU +/* Get thread name visible in the kernel and its interfaces. */ +extern int pthread_getname_np (pthread_t __target_thread, char *__buf, + size_t __buflen) + __THROW __nonnull ((2)); + +/* Set thread name visible in the kernel and its interfaces. */ +extern int pthread_setname_np (pthread_t __target_thread, const char *__name) + __THROW __nonnull ((2)); +#endif + + +#ifdef __USE_UNIX98 +/* Determine level of concurrency. */ +extern int pthread_getconcurrency (void) __THROW; + +/* Set new concurrency level to LEVEL. */ +extern int pthread_setconcurrency (int __level) __THROW; +#endif + +#ifdef __USE_GNU +extern int pthread_yield (void) __THROW; +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (pthread_yield, (void), sched_yield) + __attribute_deprecated_msg__ ("\ +pthread_yield is deprecated, use sched_yield instead"); +# else +# define pthread_yield sched_yield +# endif + + +/* Limit specified thread TH to run only on the processors represented + in CPUSET. */ +extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize, + const cpu_set_t *__cpuset) + __THROW __nonnull ((3)); + +/* Get bit set in CPUSET representing the processors TH can run on. */ +extern int pthread_getaffinity_np (pthread_t __th, size_t __cpusetsize, + cpu_set_t *__cpuset) + __THROW __nonnull ((3)); +#endif + + +/* Functions for handling initialization. */ + +/* Guarantee that the initialization function INIT_ROUTINE will be called + only once, even if pthread_once is executed several times with the + same ONCE_CONTROL argument. ONCE_CONTROL must point to a static or + extern variable initialized to PTHREAD_ONCE_INIT. + + The initialization functions might throw exception which is why + this function is not marked with __THROW. */ +extern int pthread_once (pthread_once_t *__once_control, + void (*__init_routine) (void)) __nonnull ((1, 2)); + + +/* Functions for handling cancellation. + + Note that these functions are explicitly not marked to not throw an + exception in C++ code. If cancellation is implemented by unwinding + this is necessary to have the compiler generate the unwind information. */ + +/* Set cancellability state of current thread to STATE, returning old + state in *OLDSTATE if OLDSTATE is not NULL. */ +extern int pthread_setcancelstate (int __state, int *__oldstate); + +/* Set cancellation state of current thread to TYPE, returning the old + type in *OLDTYPE if OLDTYPE is not NULL. */ +extern int pthread_setcanceltype (int __type, int *__oldtype); + +/* Cancel THREAD immediately or at the next possibility. */ +extern int pthread_cancel (pthread_t __th); + +/* Test for pending cancellation for the current thread and terminate + the thread as per pthread_exit(PTHREAD_CANCELED) if it has been + cancelled. */ +extern void pthread_testcancel (void); + + +/* Cancellation handling with integration into exception handling. */ + +struct __cancel_jmp_buf_tag +{ + __jmp_buf __cancel_jmp_buf; + int __mask_was_saved; +}; + +typedef struct +{ + struct __cancel_jmp_buf_tag __cancel_jmp_buf[1]; + void *__pad[4]; +} __pthread_unwind_buf_t __attribute__ ((__aligned__)); + +/* No special attributes by default. */ +#ifndef __cleanup_fct_attribute +# define __cleanup_fct_attribute +#endif + + +/* Structure to hold the cleanup handler information. */ +struct __pthread_cleanup_frame +{ + void (*__cancel_routine) (void *); + void *__cancel_arg; + int __do_it; + int __cancel_type; +}; + +#if defined __GNUC__ && defined __EXCEPTIONS +# ifdef __cplusplus +/* Class to handle cancellation handler invocation. */ +class __pthread_cleanup_class +{ + void (*__cancel_routine) (void *); + void *__cancel_arg; + int __do_it; + int __cancel_type; + + public: + __pthread_cleanup_class (void (*__fct) (void *), void *__arg) + : __cancel_routine (__fct), __cancel_arg (__arg), __do_it (1) { } + ~__pthread_cleanup_class () { if (__do_it) __cancel_routine (__cancel_arg); } + void __setdoit (int __newval) { __do_it = __newval; } + void __defer () { pthread_setcanceltype (PTHREAD_CANCEL_DEFERRED, + &__cancel_type); } + void __restore () const { pthread_setcanceltype (__cancel_type, 0); } +}; + +/* Install a cleanup handler: ROUTINE will be called with arguments ARG + when the thread is canceled or calls pthread_exit. ROUTINE will also + be called with arguments ARG when the matching pthread_cleanup_pop + is executed with non-zero EXECUTE argument. + + pthread_cleanup_push and pthread_cleanup_pop are macros and must always + be used in matching pairs at the same nesting level of braces. */ +# define pthread_cleanup_push(routine, arg) \ + do { \ + __pthread_cleanup_class __clframe (routine, arg) + +/* Remove a cleanup handler installed by the matching pthread_cleanup_push. + If EXECUTE is non-zero, the handler function is called. */ +# define pthread_cleanup_pop(execute) \ + __clframe.__setdoit (execute); \ + } while (0) + +# ifdef __USE_GNU +/* Install a cleanup handler as pthread_cleanup_push does, but also + saves the current cancellation type and sets it to deferred + cancellation. */ +# define pthread_cleanup_push_defer_np(routine, arg) \ + do { \ + __pthread_cleanup_class __clframe (routine, arg); \ + __clframe.__defer () + +/* Remove a cleanup handler as pthread_cleanup_pop does, but also + restores the cancellation type that was in effect when the matching + pthread_cleanup_push_defer was called. */ +# define pthread_cleanup_pop_restore_np(execute) \ + __clframe.__restore (); \ + __clframe.__setdoit (execute); \ + } while (0) +# endif +# else +/* Function called to call the cleanup handler. As an extern inline + function the compiler is free to decide inlining the change when + needed or fall back on the copy which must exist somewhere + else. */ +__extern_inline void +__pthread_cleanup_routine (struct __pthread_cleanup_frame *__frame) +{ + if (__frame->__do_it) + __frame->__cancel_routine (__frame->__cancel_arg); +} + +/* Install a cleanup handler: ROUTINE will be called with arguments ARG + when the thread is canceled or calls pthread_exit. ROUTINE will also + be called with arguments ARG when the matching pthread_cleanup_pop + is executed with non-zero EXECUTE argument. + + pthread_cleanup_push and pthread_cleanup_pop are macros and must always + be used in matching pairs at the same nesting level of braces. */ +# define pthread_cleanup_push(routine, arg) \ + do { \ + struct __pthread_cleanup_frame __clframe \ + __attribute__ ((__cleanup__ (__pthread_cleanup_routine))) \ + = { .__cancel_routine = (routine), .__cancel_arg = (arg), \ + .__do_it = 1 }; + +/* Remove a cleanup handler installed by the matching pthread_cleanup_push. + If EXECUTE is non-zero, the handler function is called. */ +# define pthread_cleanup_pop(execute) \ + __clframe.__do_it = (execute); \ + } while (0) + +# ifdef __USE_GNU +/* Install a cleanup handler as pthread_cleanup_push does, but also + saves the current cancellation type and sets it to deferred + cancellation. */ +# define pthread_cleanup_push_defer_np(routine, arg) \ + do { \ + struct __pthread_cleanup_frame __clframe \ + __attribute__ ((__cleanup__ (__pthread_cleanup_routine))) \ + = { .__cancel_routine = (routine), .__cancel_arg = (arg), \ + .__do_it = 1 }; \ + (void) pthread_setcanceltype (PTHREAD_CANCEL_DEFERRED, \ + &__clframe.__cancel_type) + +/* Remove a cleanup handler as pthread_cleanup_pop does, but also + restores the cancellation type that was in effect when the matching + pthread_cleanup_push_defer was called. */ +# define pthread_cleanup_pop_restore_np(execute) \ + (void) pthread_setcanceltype (__clframe.__cancel_type, NULL); \ + __clframe.__do_it = (execute); \ + } while (0) +# endif +# endif +#else +/* Install a cleanup handler: ROUTINE will be called with arguments ARG + when the thread is canceled or calls pthread_exit. ROUTINE will also + be called with arguments ARG when the matching pthread_cleanup_pop + is executed with non-zero EXECUTE argument. + + pthread_cleanup_push and pthread_cleanup_pop are macros and must always + be used in matching pairs at the same nesting level of braces. */ +# define pthread_cleanup_push(routine, arg) \ + do { \ + __pthread_unwind_buf_t __cancel_buf; \ + void (*__cancel_routine) (void *) = (routine); \ + void *__cancel_arg = (arg); \ + int __not_first_call = __sigsetjmp_cancel (__cancel_buf.__cancel_jmp_buf, \ + 0); \ + if (__glibc_unlikely (__not_first_call)) \ + { \ + __cancel_routine (__cancel_arg); \ + __pthread_unwind_next (&__cancel_buf); \ + /* NOTREACHED */ \ + } \ + \ + __pthread_register_cancel (&__cancel_buf); \ + do { +extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf) + __cleanup_fct_attribute; + +/* Remove a cleanup handler installed by the matching pthread_cleanup_push. + If EXECUTE is non-zero, the handler function is called. */ +# define pthread_cleanup_pop(execute) \ + do { } while (0);/* Empty to allow label before pthread_cleanup_pop. */\ + } while (0); \ + __pthread_unregister_cancel (&__cancel_buf); \ + if (execute) \ + __cancel_routine (__cancel_arg); \ + } while (0) +extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf) + __cleanup_fct_attribute; + +# ifdef __USE_GNU +/* Install a cleanup handler as pthread_cleanup_push does, but also + saves the current cancellation type and sets it to deferred + cancellation. */ +# define pthread_cleanup_push_defer_np(routine, arg) \ + do { \ + __pthread_unwind_buf_t __cancel_buf; \ + void (*__cancel_routine) (void *) = (routine); \ + void *__cancel_arg = (arg); \ + int __not_first_call = __sigsetjmp_cancel (__cancel_buf.__cancel_jmp_buf, \ + 0); \ + if (__glibc_unlikely (__not_first_call)) \ + { \ + __cancel_routine (__cancel_arg); \ + __pthread_unwind_next (&__cancel_buf); \ + /* NOTREACHED */ \ + } \ + \ + __pthread_register_cancel_defer (&__cancel_buf); \ + do { +extern void __pthread_register_cancel_defer (__pthread_unwind_buf_t *__buf) + __cleanup_fct_attribute; + +/* Remove a cleanup handler as pthread_cleanup_pop does, but also + restores the cancellation type that was in effect when the matching + pthread_cleanup_push_defer was called. */ +# define pthread_cleanup_pop_restore_np(execute) \ + do { } while (0);/* Empty to allow label before pthread_cleanup_pop. */\ + } while (0); \ + __pthread_unregister_cancel_restore (&__cancel_buf); \ + if (execute) \ + __cancel_routine (__cancel_arg); \ + } while (0) +extern void __pthread_unregister_cancel_restore (__pthread_unwind_buf_t *__buf) + __cleanup_fct_attribute; +# endif + +/* Internal interface to initiate cleanup. */ +extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf) + __cleanup_fct_attribute __attribute__ ((__noreturn__)) +# ifndef SHARED + __attribute__ ((__weak__)) +# endif + ; +#endif + +/* Function used in the macros. Calling __sigsetjmp, with its first + argument declared as an array, results in a -Wstringop-overflow + warning from GCC 11 because struct pthread_unwind_buf is smaller + than jmp_buf. The calls from the macros have __SAVEMASK set to 0, + so nothing beyond the common prefix is used and this warning is a + false positive. Use an alias with its first argument declared to + use the type in the macros if possible to avoid this warning. */ +#if __GNUC_PREREQ (11, 0) +extern int __REDIRECT_NTHNL (__sigsetjmp_cancel, + (struct __cancel_jmp_buf_tag __env[1], + int __savemask), + __sigsetjmp) __attribute_returns_twice__; +#else +# define __sigsetjmp_cancel(env, savemask) \ + __sigsetjmp ((struct __jmp_buf_tag *) (void *) (env), (savemask)) +extern int __sigsetjmp (struct __jmp_buf_tag __env[1], + int __savemask) __THROWNL; +#endif + + +/* Mutex handling. */ + +/* Initialize a mutex. */ +extern int pthread_mutex_init (pthread_mutex_t *__mutex, + const pthread_mutexattr_t *__mutexattr) + __THROW __nonnull ((1)); + +/* Destroy a mutex. */ +extern int pthread_mutex_destroy (pthread_mutex_t *__mutex) + __THROW __nonnull ((1)); + +/* Try locking a mutex. */ +extern int pthread_mutex_trylock (pthread_mutex_t *__mutex) + __THROWNL __nonnull ((1)); + +/* Lock a mutex. */ +extern int pthread_mutex_lock (pthread_mutex_t *__mutex) + __THROWNL __nonnull ((1)); + +#ifdef __USE_XOPEN2K +/* Wait until lock becomes available, or specified time passes. */ +# ifndef __USE_TIME_BITS64 +extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex, + const struct timespec *__restrict + __abstime) __THROWNL __nonnull ((1, 2)); +# else +# ifdef __REDIRECT_NTHNL +extern int __REDIRECT_NTHNL (pthread_mutex_timedlock, + (pthread_mutex_t *__restrict __mutex, + const struct timespec *__restrict __abstime), + __pthread_mutex_timedlock64) __nonnull ((1, 2)); +# else +# define pthread_mutex_timedlock __pthread_mutex_timedlock64 +# endif +# endif +#endif + +#ifdef __USE_GNU +# ifndef __USE_TIME_BITS64 +extern int pthread_mutex_clocklock (pthread_mutex_t *__restrict __mutex, + clockid_t __clockid, + const struct timespec *__restrict + __abstime) __THROWNL __nonnull ((1, 3)); +# else +# ifdef __REDIRECT_NTHNL +extern int __REDIRECT_NTHNL (pthread_mutex_clocklock, + (pthread_mutex_t *__restrict __mutex, + clockid_t __clockid, + const struct timespec *__restrict __abstime), + __pthread_mutex_clocklock64) __nonnull ((1, 3)); +# else +# define pthread_mutex_clocklock __pthread_mutex_clocklock64 +# endif +# endif +#endif + +/* Unlock a mutex. */ +extern int pthread_mutex_unlock (pthread_mutex_t *__mutex) + __THROWNL __nonnull ((1)); + + +/* Get the priority ceiling of MUTEX. */ +extern int pthread_mutex_getprioceiling (const pthread_mutex_t * + __restrict __mutex, + int *__restrict __prioceiling) + __THROW __nonnull ((1, 2)); + +/* Set the priority ceiling of MUTEX to PRIOCEILING, return old + priority ceiling value in *OLD_CEILING. */ +extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex, + int __prioceiling, + int *__restrict __old_ceiling) + __THROW __nonnull ((1, 3)); + + +#ifdef __USE_XOPEN2K8 +/* Declare the state protected by MUTEX as consistent. */ +extern int pthread_mutex_consistent (pthread_mutex_t *__mutex) + __THROW __nonnull ((1)); +# ifdef __USE_GNU +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (pthread_mutex_consistent_np, (pthread_mutex_t *), + pthread_mutex_consistent) __nonnull ((1)) + __attribute_deprecated_msg__ ("\ +pthread_mutex_consistent_np is deprecated, use pthread_mutex_consistent"); +# else +# define pthread_mutex_consistent_np pthread_mutex_consistent +# endif +# endif +#endif + + +/* Functions for handling mutex attributes. */ + +/* Initialize mutex attribute object ATTR with default attributes + (kind is PTHREAD_MUTEX_TIMED_NP). */ +extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr) + __THROW __nonnull ((1)); + +/* Destroy mutex attribute object ATTR. */ +extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr) + __THROW __nonnull ((1)); + +/* Get the process-shared flag of the mutex attribute ATTR. */ +extern int pthread_mutexattr_getpshared (const pthread_mutexattr_t * + __restrict __attr, + int *__restrict __pshared) + __THROW __nonnull ((1, 2)); + +/* Set the process-shared flag of the mutex attribute ATTR. */ +extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr, + int __pshared) + __THROW __nonnull ((1)); + +#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 +/* Return in *KIND the mutex kind attribute in *ATTR. */ +extern int pthread_mutexattr_gettype (const pthread_mutexattr_t *__restrict + __attr, int *__restrict __kind) + __THROW __nonnull ((1, 2)); + +/* Set the mutex kind attribute in *ATTR to KIND (either PTHREAD_MUTEX_NORMAL, + PTHREAD_MUTEX_RECURSIVE, PTHREAD_MUTEX_ERRORCHECK, or + PTHREAD_MUTEX_DEFAULT). */ +extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind) + __THROW __nonnull ((1)); +#endif + +/* Return in *PROTOCOL the mutex protocol attribute in *ATTR. */ +extern int pthread_mutexattr_getprotocol (const pthread_mutexattr_t * + __restrict __attr, + int *__restrict __protocol) + __THROW __nonnull ((1, 2)); + +/* Set the mutex protocol attribute in *ATTR to PROTOCOL (either + PTHREAD_PRIO_NONE, PTHREAD_PRIO_INHERIT, or PTHREAD_PRIO_PROTECT). */ +extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr, + int __protocol) + __THROW __nonnull ((1)); + +/* Return in *PRIOCEILING the mutex prioceiling attribute in *ATTR. */ +extern int pthread_mutexattr_getprioceiling (const pthread_mutexattr_t * + __restrict __attr, + int *__restrict __prioceiling) + __THROW __nonnull ((1, 2)); + +/* Set the mutex prioceiling attribute in *ATTR to PRIOCEILING. */ +extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr, + int __prioceiling) + __THROW __nonnull ((1)); + +#ifdef __USE_XOPEN2K +/* Get the robustness flag of the mutex attribute ATTR. */ +extern int pthread_mutexattr_getrobust (const pthread_mutexattr_t *__attr, + int *__robustness) + __THROW __nonnull ((1, 2)); +# ifdef __USE_GNU +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (pthread_mutexattr_getrobust_np, + (pthread_mutexattr_t *, int *), + pthread_mutexattr_getrobust) __nonnull ((1)) + __attribute_deprecated_msg__ ("\ +pthread_mutexattr_getrobust_np is deprecated, use pthread_mutexattr_getrobust"); +# else +# define pthread_mutexattr_getrobust_np pthread_mutexattr_getrobust +# endif +# endif + +/* Set the robustness flag of the mutex attribute ATTR. */ +extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr, + int __robustness) + __THROW __nonnull ((1)); +# ifdef __USE_GNU +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (pthread_mutexattr_setrobust_np, + (pthread_mutexattr_t *, int), + pthread_mutexattr_setrobust) __nonnull ((1)) + __attribute_deprecated_msg__ ("\ +pthread_mutexattr_setrobust_np is deprecated, use pthread_mutexattr_setrobust"); +# else +# define pthread_mutexattr_setrobust_np pthread_mutexattr_setrobust +# endif +# endif +#endif + +#if defined __USE_UNIX98 || defined __USE_XOPEN2K +/* Functions for handling read-write locks. */ + +/* Initialize read-write lock RWLOCK using attributes ATTR, or use + the default values if later is NULL. */ +extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock, + const pthread_rwlockattr_t *__restrict + __attr) __THROW __nonnull ((1)); + +/* Destroy read-write lock RWLOCK. */ +extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock) + __THROW __nonnull ((1)); + +/* Acquire read lock for RWLOCK. */ +extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock) + __THROWNL __nonnull ((1)); + +/* Try to acquire read lock for RWLOCK. */ +extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock) + __THROWNL __nonnull ((1)); + +# ifdef __USE_XOPEN2K +/* Try to acquire read lock for RWLOCK or return after specified time. */ +# ifndef __USE_TIME_BITS64 +extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock, + const struct timespec *__restrict + __abstime) __THROWNL __nonnull ((1, 2)); +# else +# ifdef __REDIRECT_NTHNL +extern int __REDIRECT_NTHNL (pthread_rwlock_timedrdlock, + (pthread_rwlock_t *__restrict __rwlock, + const struct timespec *__restrict __abstime), + __pthread_rwlock_timedrdlock64) + __nonnull ((1, 2)); +# else +# define pthread_rwlock_timedrdlock __pthread_rwlock_timedrdlock64 +# endif +# endif +# endif + +# ifdef __USE_GNU +# ifndef __USE_TIME_BITS64 +extern int pthread_rwlock_clockrdlock (pthread_rwlock_t *__restrict __rwlock, + clockid_t __clockid, + const struct timespec *__restrict + __abstime) __THROWNL __nonnull ((1, 3)); +# else +# ifdef __REDIRECT_NTHNL +extern int __REDIRECT_NTHNL (pthread_rwlock_clockrdlock, + (pthread_rwlock_t *__restrict __rwlock, + clockid_t __clockid, + const struct timespec *__restrict __abstime), + __pthread_rwlock_clockrdlock64) + __nonnull ((1, 3)); +# else +# define pthread_rwlock_clockrdlock __pthread_rwlock_clockrdlock64 +# endif +# endif +# endif + +/* Acquire write lock for RWLOCK. */ +extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock) + __THROWNL __nonnull ((1)); + +/* Try to acquire write lock for RWLOCK. */ +extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock) + __THROWNL __nonnull ((1)); + +# ifdef __USE_XOPEN2K +/* Try to acquire write lock for RWLOCK or return after specified time. */ +# ifndef __USE_TIME_BITS64 +extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock, + const struct timespec *__restrict + __abstime) __THROWNL __nonnull ((1, 2)); +# else +# ifdef __REDIRECT_NTHNL +extern int __REDIRECT_NTHNL (pthread_rwlock_timedwrlock, + (pthread_rwlock_t *__restrict __rwlock, + const struct timespec *__restrict __abstime), + __pthread_rwlock_timedwrlock64) + __nonnull ((1, 2)); +# else +# define pthread_rwlock_timedwrlock __pthread_rwlock_timedwrlock64 +# endif +# endif +# endif + +# ifdef __USE_GNU +# ifndef __USE_TIME_BITS64 +extern int pthread_rwlock_clockwrlock (pthread_rwlock_t *__restrict __rwlock, + clockid_t __clockid, + const struct timespec *__restrict + __abstime) __THROWNL __nonnull ((1, 3)); + +# else +# ifdef __REDIRECT_NTHNL +extern int __REDIRECT_NTHNL (pthread_rwlock_clockwrlock, + (pthread_rwlock_t *__restrict __rwlock, + clockid_t __clockid, + const struct timespec *__restrict __abstime), + __pthread_rwlock_clockwrlock64) + __nonnull ((1, 3)); +# else +# define pthread_rwlock_clockwrlock __pthread_rwlock_clockwrlock64 +# endif +# endif +# endif + +/* Unlock RWLOCK. */ +extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock) + __THROWNL __nonnull ((1)); + + +/* Functions for handling read-write lock attributes. */ + +/* Initialize attribute object ATTR with default values. */ +extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr) + __THROW __nonnull ((1)); + +/* Destroy attribute object ATTR. */ +extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr) + __THROW __nonnull ((1)); + +/* Return current setting of process-shared attribute of ATTR in PSHARED. */ +extern int pthread_rwlockattr_getpshared (const pthread_rwlockattr_t * + __restrict __attr, + int *__restrict __pshared) + __THROW __nonnull ((1, 2)); + +/* Set process-shared attribute of ATTR to PSHARED. */ +extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr, + int __pshared) + __THROW __nonnull ((1)); + +/* Return current setting of reader/writer preference. */ +extern int pthread_rwlockattr_getkind_np (const pthread_rwlockattr_t * + __restrict __attr, + int *__restrict __pref) + __THROW __nonnull ((1, 2)); + +/* Set reader/write preference. */ +extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr, + int __pref) __THROW __nonnull ((1)); +#endif + + +/* Functions for handling conditional variables. */ + +/* Initialize condition variable COND using attributes ATTR, or use + the default values if later is NULL. */ +extern int pthread_cond_init (pthread_cond_t *__restrict __cond, + const pthread_condattr_t *__restrict __cond_attr) + __THROW __nonnull ((1)); + +/* Destroy condition variable COND. */ +extern int pthread_cond_destroy (pthread_cond_t *__cond) + __THROW __nonnull ((1)); + +/* Wake up one thread waiting for condition variable COND. */ +extern int pthread_cond_signal (pthread_cond_t *__cond) + __THROWNL __nonnull ((1)); + +/* Wake up all threads waiting for condition variables COND. */ +extern int pthread_cond_broadcast (pthread_cond_t *__cond) + __THROWNL __nonnull ((1)); + +/* Wait for condition variable COND to be signaled or broadcast. + MUTEX is assumed to be locked before. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int pthread_cond_wait (pthread_cond_t *__restrict __cond, + pthread_mutex_t *__restrict __mutex) + __nonnull ((1, 2)); + +/* Wait for condition variable COND to be signaled or broadcast until + ABSTIME. MUTEX is assumed to be locked before. ABSTIME is an + absolute time specification; zero is the beginning of the epoch + (00:00:00 GMT, January 1, 1970). + + This function is a cancellation point and therefore not marked with + __THROW. */ +# ifndef __USE_TIME_BITS64 +extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond, + pthread_mutex_t *__restrict __mutex, + const struct timespec *__restrict __abstime) + __nonnull ((1, 2, 3)); +# else +# ifdef __REDIRECT +extern int __REDIRECT (pthread_cond_timedwait, + (pthread_cond_t *__restrict __cond, + pthread_mutex_t *__restrict __mutex, + const struct timespec *__restrict __abstime), + __pthread_cond_timedwait64) + __nonnull ((1, 2, 3)); +# else +# define pthread_cond_timedwait __pthread_cond_timedwait64 +# endif +# endif + +# ifdef __USE_GNU +/* Wait for condition variable COND to be signaled or broadcast until + ABSTIME measured by the specified clock. MUTEX is assumed to be + locked before. CLOCK is the clock to use. ABSTIME is an absolute + time specification against CLOCK's epoch. + + This function is a cancellation point and therefore not marked with + __THROW. */ +# ifndef __USE_TIME_BITS64 +extern int pthread_cond_clockwait (pthread_cond_t *__restrict __cond, + pthread_mutex_t *__restrict __mutex, + __clockid_t __clock_id, + const struct timespec *__restrict __abstime) + __nonnull ((1, 2, 4)); +# else +# ifdef __REDIRECT +extern int __REDIRECT (pthread_cond_clockwait, + (pthread_cond_t *__restrict __cond, + pthread_mutex_t *__restrict __mutex, + __clockid_t __clock_id, + const struct timespec *__restrict __abstime), + __pthread_cond_clockwait64) + __nonnull ((1, 2, 4)); +# else +# define pthread_cond_clockwait __pthread_cond_clockwait64 +# endif +# endif +# endif + +/* Functions for handling condition variable attributes. */ + +/* Initialize condition variable attribute ATTR. */ +extern int pthread_condattr_init (pthread_condattr_t *__attr) + __THROW __nonnull ((1)); + +/* Destroy condition variable attribute ATTR. */ +extern int pthread_condattr_destroy (pthread_condattr_t *__attr) + __THROW __nonnull ((1)); + +/* Get the process-shared flag of the condition variable attribute ATTR. */ +extern int pthread_condattr_getpshared (const pthread_condattr_t * + __restrict __attr, + int *__restrict __pshared) + __THROW __nonnull ((1, 2)); + +/* Set the process-shared flag of the condition variable attribute ATTR. */ +extern int pthread_condattr_setpshared (pthread_condattr_t *__attr, + int __pshared) __THROW __nonnull ((1)); + +#ifdef __USE_XOPEN2K +/* Get the clock selected for the condition variable attribute ATTR. */ +extern int pthread_condattr_getclock (const pthread_condattr_t * + __restrict __attr, + __clockid_t *__restrict __clock_id) + __THROW __nonnull ((1, 2)); + +/* Set the clock selected for the condition variable attribute ATTR. */ +extern int pthread_condattr_setclock (pthread_condattr_t *__attr, + __clockid_t __clock_id) + __THROW __nonnull ((1)); +#endif + + +#ifdef __USE_XOPEN2K +/* Functions to handle spinlocks. */ + +/* Initialize the spinlock LOCK. If PSHARED is nonzero the spinlock can + be shared between different processes. */ +extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared) + __THROW __nonnull ((1)); + +/* Destroy the spinlock LOCK. */ +extern int pthread_spin_destroy (pthread_spinlock_t *__lock) + __THROW __nonnull ((1)); + +/* Wait until spinlock LOCK is retrieved. */ +extern int pthread_spin_lock (pthread_spinlock_t *__lock) + __THROWNL __nonnull ((1)); + +/* Try to lock spinlock LOCK. */ +extern int pthread_spin_trylock (pthread_spinlock_t *__lock) + __THROWNL __nonnull ((1)); + +/* Release spinlock LOCK. */ +extern int pthread_spin_unlock (pthread_spinlock_t *__lock) + __THROWNL __nonnull ((1)); + + +/* Functions to handle barriers. */ + +/* Initialize BARRIER with the attributes in ATTR. The barrier is + opened when COUNT waiters arrived. */ +extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier, + const pthread_barrierattr_t *__restrict + __attr, unsigned int __count) + __THROW __nonnull ((1)); + +/* Destroy a previously dynamically initialized barrier BARRIER. */ +extern int pthread_barrier_destroy (pthread_barrier_t *__barrier) + __THROW __nonnull ((1)); + +/* Wait on barrier BARRIER. */ +extern int pthread_barrier_wait (pthread_barrier_t *__barrier) + __THROWNL __nonnull ((1)); + + +/* Initialize barrier attribute ATTR. */ +extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr) + __THROW __nonnull ((1)); + +/* Destroy previously dynamically initialized barrier attribute ATTR. */ +extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr) + __THROW __nonnull ((1)); + +/* Get the process-shared flag of the barrier attribute ATTR. */ +extern int pthread_barrierattr_getpshared (const pthread_barrierattr_t * + __restrict __attr, + int *__restrict __pshared) + __THROW __nonnull ((1, 2)); + +/* Set the process-shared flag of the barrier attribute ATTR. */ +extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr, + int __pshared) + __THROW __nonnull ((1)); +#endif + + +/* Functions for handling thread-specific data. */ + +/* Create a key value identifying a location in the thread-specific + data area. Each thread maintains a distinct thread-specific data + area. DESTR_FUNCTION, if non-NULL, is called with the value + associated to that key when the key is destroyed. + DESTR_FUNCTION is not called if the value associated is NULL when + the key is destroyed. */ +extern int pthread_key_create (pthread_key_t *__key, + void (*__destr_function) (void *)) + __THROW __nonnull ((1)); + +/* Destroy KEY. */ +extern int pthread_key_delete (pthread_key_t __key) __THROW; + +/* Return current value of the thread-specific data slot identified by KEY. */ +extern void *pthread_getspecific (pthread_key_t __key) __THROW; + +/* Store POINTER in the thread-specific data slot identified by KEY. */ +extern int pthread_setspecific (pthread_key_t __key, + const void *__pointer) + __THROW __attr_access_none (2); + + +#ifdef __USE_XOPEN2K +/* Get ID of CPU-time clock for thread THREAD_ID. */ +extern int pthread_getcpuclockid (pthread_t __thread_id, + __clockid_t *__clock_id) + __THROW __nonnull ((2)); +#endif + + +/* Install handlers to be called when a new process is created with FORK. + The PREPARE handler is called in the parent process just before performing + FORK. The PARENT handler is called in the parent process just after FORK. + The CHILD handler is called in the child process. Each of the three + handlers can be NULL, meaning that no handler needs to be called at that + point. + PTHREAD_ATFORK can be called several times, in which case the PREPARE + handlers are called in LIFO order (last added with PTHREAD_ATFORK, + first called before FORK), and the PARENT and CHILD handlers are called + in FIFO (first added, first called). */ + +extern int pthread_atfork (void (*__prepare) (void), + void (*__parent) (void), + void (*__child) (void)) __THROW; + + +#ifdef __USE_EXTERN_INLINES +/* Optimizations. */ +__extern_inline int +__NTH (pthread_equal (pthread_t __thread1, pthread_t __thread2)) +{ + return __thread1 == __thread2; +} +#endif + +__END_DECLS + +#endif /* pthread.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a06eaf00141fec081a6b5d87bd319817871c3655 GIT binary patch literal 61425 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h new file mode 100644 index 00000000..9b254ae8 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h @@ -0,0 +1,140 @@ +/* Definitions for POSIX 1003.1b-1993 (aka POSIX.4) scheduling interface. + Copyright (C) 1996-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SCHED_H +#define _SCHED_H 1 + +#include + +/* Get type definitions. */ +#include + +#define __need_size_t +#define __need_NULL +#include + +#include +#include +#ifndef __USE_XOPEN2K +# include +#endif + +#ifndef __pid_t_defined +typedef __pid_t pid_t; +# define __pid_t_defined +#endif + +/* Get system specific constant and data structure definitions. */ +#include +#include + +/* Backward compatibility. */ +#define sched_priority sched_priority +#define __sched_priority sched_priority + + +__BEGIN_DECLS + +/* Set scheduling parameters for a process. */ +extern int sched_setparam (__pid_t __pid, const struct sched_param *__param) + __THROW; + +/* Retrieve scheduling parameters for a particular process. */ +extern int sched_getparam (__pid_t __pid, struct sched_param *__param) __THROW; + +/* Set scheduling algorithm and/or parameters for a process. */ +extern int sched_setscheduler (__pid_t __pid, int __policy, + const struct sched_param *__param) __THROW; + +/* Retrieve scheduling algorithm for a particular purpose. */ +extern int sched_getscheduler (__pid_t __pid) __THROW; + +/* Yield the processor. */ +extern int sched_yield (void) __THROW; + +/* Get maximum priority value for a scheduler. */ +extern int sched_get_priority_max (int __algorithm) __THROW; + +/* Get minimum priority value for a scheduler. */ +extern int sched_get_priority_min (int __algorithm) __THROW; + +/* Get the SCHED_RR interval for the named process. */ +#ifndef __USE_TIME_BITS64 +extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __THROW; +#else +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (sched_rr_get_interval, + (__pid_t __pid, struct timespec *__t), + __sched_rr_get_interval64); +# else +# define sched_rr_get_interval __sched_rr_get_interval64 +# endif +#endif + +#ifdef __USE_GNU +/* Access macros for `cpu_set'. */ +# define CPU_SETSIZE __CPU_SETSIZE +# define CPU_SET(cpu, cpusetp) __CPU_SET_S (cpu, sizeof (cpu_set_t), cpusetp) +# define CPU_CLR(cpu, cpusetp) __CPU_CLR_S (cpu, sizeof (cpu_set_t), cpusetp) +# define CPU_ISSET(cpu, cpusetp) __CPU_ISSET_S (cpu, sizeof (cpu_set_t), \ + cpusetp) +# define CPU_ZERO(cpusetp) __CPU_ZERO_S (sizeof (cpu_set_t), cpusetp) +# define CPU_COUNT(cpusetp) __CPU_COUNT_S (sizeof (cpu_set_t), cpusetp) + +# define CPU_SET_S(cpu, setsize, cpusetp) __CPU_SET_S (cpu, setsize, cpusetp) +# define CPU_CLR_S(cpu, setsize, cpusetp) __CPU_CLR_S (cpu, setsize, cpusetp) +# define CPU_ISSET_S(cpu, setsize, cpusetp) __CPU_ISSET_S (cpu, setsize, \ + cpusetp) +# define CPU_ZERO_S(setsize, cpusetp) __CPU_ZERO_S (setsize, cpusetp) +# define CPU_COUNT_S(setsize, cpusetp) __CPU_COUNT_S (setsize, cpusetp) + +# define CPU_EQUAL(cpusetp1, cpusetp2) \ + __CPU_EQUAL_S (sizeof (cpu_set_t), cpusetp1, cpusetp2) +# define CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \ + __CPU_EQUAL_S (setsize, cpusetp1, cpusetp2) + +# define CPU_AND(destset, srcset1, srcset2) \ + __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, &) +# define CPU_OR(destset, srcset1, srcset2) \ + __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, |) +# define CPU_XOR(destset, srcset1, srcset2) \ + __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, ^) +# define CPU_AND_S(setsize, destset, srcset1, srcset2) \ + __CPU_OP_S (setsize, destset, srcset1, srcset2, &) +# define CPU_OR_S(setsize, destset, srcset1, srcset2) \ + __CPU_OP_S (setsize, destset, srcset1, srcset2, |) +# define CPU_XOR_S(setsize, destset, srcset1, srcset2) \ + __CPU_OP_S (setsize, destset, srcset1, srcset2, ^) + +# define CPU_ALLOC_SIZE(count) __CPU_ALLOC_SIZE (count) +# define CPU_ALLOC(count) __CPU_ALLOC (count) +# define CPU_FREE(cpuset) __CPU_FREE (cpuset) + + +/* Set the CPU affinity for a task */ +extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize, + const cpu_set_t *__cpuset) __THROW; + +/* Get the CPU affinity for a task */ +extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize, + cpu_set_t *__cpuset) __THROW; +#endif + +__END_DECLS + +#endif /* sched.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8cb7a46d8683cd0e8331e763ccb8e0899523b8e1 GIT binary patch literal 15020 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. */ + +/* + * ISO C99 Standard: 7.14 Signal handling + */ + +#ifndef _SIGNAL_H +#define _SIGNAL_H + +#include + +__BEGIN_DECLS + +#include +#include + +#include + +#if defined __USE_POSIX +#include +#endif + +#if defined __USE_XOPEN || defined __USE_XOPEN2K +# ifndef __pid_t_defined +typedef __pid_t pid_t; +# define __pid_t_defined +#endif +#ifdef __USE_XOPEN +# endif +# ifndef __uid_t_defined +typedef __uid_t uid_t; +# define __uid_t_defined +# endif +#endif /* Unix98 */ + +#ifdef __USE_POSIX199309 +/* We need `struct timespec' later on. */ +# include +#endif + +#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED +# include +# include +#endif + +#ifdef __USE_MISC +# include +#endif + +#ifdef __USE_POSIX199309 +# include +# include +#endif + + +/* Type of a signal handler. */ +typedef void (*__sighandler_t) (int); + +/* The X/Open definition of `signal' specifies the SVID semantic. Use + the additional function `sysv_signal' when X/Open compatibility is + requested. */ +extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler) + __THROW; +#ifdef __USE_GNU +extern __sighandler_t sysv_signal (int __sig, __sighandler_t __handler) + __THROW; +#endif + +/* Set the handler for the signal SIG to HANDLER, returning the old + handler, or SIG_ERR on error. + By default `signal' has the BSD semantic. */ +#ifdef __USE_MISC +extern __sighandler_t signal (int __sig, __sighandler_t __handler) + __THROW; +#else +/* Make sure the used `signal' implementation is the SVID version. */ +# ifdef __REDIRECT_NTH +extern __sighandler_t __REDIRECT_NTH (signal, + (int __sig, __sighandler_t __handler), + __sysv_signal); +# else +# define signal __sysv_signal +# endif +#endif + +#if defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8 +/* The X/Open definition of `signal' conflicts with the BSD version. + So they defined another function `bsd_signal'. */ +extern __sighandler_t bsd_signal (int __sig, __sighandler_t __handler) + __THROW; +#endif + +/* Send signal SIG to process number PID. If PID is zero, + send SIG to all processes in the current process's process group. + If PID is < -1, send SIG to all processes in process group - PID. */ +#ifdef __USE_POSIX +extern int kill (__pid_t __pid, int __sig) __THROW; +#endif /* Use POSIX. */ + +#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED +/* Send SIG to all processes in process group PGRP. + If PGRP is zero, send SIG to all processes in + the current process's process group. */ +extern int killpg (__pid_t __pgrp, int __sig) __THROW; +#endif /* Use misc || X/Open Unix. */ + +/* Raise signal SIG, i.e., send SIG to yourself. */ +extern int raise (int __sig) __THROW; + +#ifdef __USE_MISC +/* SVID names for the same things. */ +extern __sighandler_t ssignal (int __sig, __sighandler_t __handler) + __THROW; +extern int gsignal (int __sig) __THROW; +#endif /* Use misc. */ + +#ifdef __USE_XOPEN2K8 +/* Print a message describing the meaning of the given signal number. */ +extern void psignal (int __sig, const char *__s); + +/* Print a message describing the meaning of the given signal information. */ +extern void psiginfo (const siginfo_t *__pinfo, const char *__s); +#endif /* POSIX 2008. */ + + + +/* The `sigpause' function in X/Open defines the argument as the + signal number. This requires redirecting to another function + because the default version in glibc uses an old BSD interface. + + This function is a cancellation point and therefore not marked with + __THROW. */ + +#ifdef __USE_XOPEN_EXTENDED +# ifdef __GNUC__ +extern int sigpause (int __sig) __asm__ ("__xpg_sigpause") + __attribute_deprecated_msg__ ("Use the sigsuspend function instead"); +# else +extern int __sigpause (int __sig_or_mask, int __is_sig); +/* Remove a signal from the signal mask and suspend the process. */ +# define sigpause(sig) __sigpause ((sig), 1) +# endif +#endif + + +#ifdef __USE_MISC +/* None of the following functions should be used anymore. They are here + only for compatibility. A single word (`int') is not guaranteed to be + enough to hold a complete signal mask and therefore these functions + simply do not work in many situations. Use `sigprocmask' instead. */ + +/* Compute mask for signal SIG. */ +# define sigmask(sig) \ + __glibc_macro_warning ("sigmask is deprecated") \ + ((int)(1u << ((sig) - 1))) + +/* Block signals in MASK, returning the old mask. */ +extern int sigblock (int __mask) __THROW __attribute_deprecated__; + +/* Set the mask of blocked signals to MASK, returning the old mask. */ +extern int sigsetmask (int __mask) __THROW __attribute_deprecated__; + +/* Return currently selected signal mask. */ +extern int siggetmask (void) __THROW __attribute_deprecated__; +#endif /* Use misc. */ + + +#ifdef __USE_MISC +# define NSIG _NSIG +#endif + +#ifdef __USE_GNU +typedef __sighandler_t sighandler_t; +#endif + +/* 4.4 BSD uses the name `sig_t' for this. */ +#ifdef __USE_MISC +typedef __sighandler_t sig_t; +#endif + +#ifdef __USE_POSIX + +/* Clear all signals from SET. */ +extern int sigemptyset (sigset_t *__set) __THROW __nonnull ((1)); + +/* Set all signals in SET. */ +extern int sigfillset (sigset_t *__set) __THROW __nonnull ((1)); + +/* Add SIGNO to SET. */ +extern int sigaddset (sigset_t *__set, int __signo) __THROW __nonnull ((1)); + +/* Remove SIGNO from SET. */ +extern int sigdelset (sigset_t *__set, int __signo) __THROW __nonnull ((1)); + +/* Return 1 if SIGNO is in SET, 0 if not. */ +extern int sigismember (const sigset_t *__set, int __signo) + __THROW __nonnull ((1)); + +# ifdef __USE_GNU +/* Return non-empty value is SET is not empty. */ +extern int sigisemptyset (const sigset_t *__set) __THROW __nonnull ((1)); + +/* Build new signal set by combining the two inputs set using logical AND. */ +extern int sigandset (sigset_t *__set, const sigset_t *__left, + const sigset_t *__right) __THROW __nonnull ((1, 2, 3)); + +/* Build new signal set by combining the two inputs set using logical OR. */ +extern int sigorset (sigset_t *__set, const sigset_t *__left, + const sigset_t *__right) __THROW __nonnull ((1, 2, 3)); +# endif /* GNU */ + +/* Get the system-specific definitions of `struct sigaction' + and the `SA_*' and `SIG_*'. constants. */ +# include + +/* Get and/or change the set of blocked signals. */ +extern int sigprocmask (int __how, const sigset_t *__restrict __set, + sigset_t *__restrict __oset) __THROW; + +/* Change the set of blocked signals to SET, + wait until a signal arrives, and restore the set of blocked signals. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int sigsuspend (const sigset_t *__set) __nonnull ((1)); + +/* Get and/or set the action for signal SIG. */ +extern int sigaction (int __sig, const struct sigaction *__restrict __act, + struct sigaction *__restrict __oact) __THROW; + +/* Put in SET all signals that are blocked and waiting to be delivered. */ +extern int sigpending (sigset_t *__set) __THROW __nonnull ((1)); + + +# ifdef __USE_POSIX199506 +/* Select any of pending signals from SET or wait for any to arrive. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int sigwait (const sigset_t *__restrict __set, int *__restrict __sig) + __nonnull ((1, 2)); +# endif /* Use POSIX 1995. */ + +# ifdef __USE_POSIX199309 +/* Select any of pending signals from SET and place information in INFO. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int sigwaitinfo (const sigset_t *__restrict __set, + siginfo_t *__restrict __info) __nonnull ((1)); + +/* Select any of pending signals from SET and place information in INFO. + Wait the time specified by TIMEOUT if no signal is pending. + + This function is a cancellation point and therefore not marked with + __THROW. */ +# ifndef __USE_TIME_BITS64 +extern int sigtimedwait (const sigset_t *__restrict __set, + siginfo_t *__restrict __info, + const struct timespec *__restrict __timeout) + __nonnull ((1)); +# else +# ifdef __REDIRECT +extern int __REDIRECT (sigtimedwait, + (const sigset_t *__restrict __set, + siginfo_t *__restrict __info, + const struct timespec *__restrict __timeout), + __sigtimedwait64) + __nonnull ((1)); +# else +# define sigtimedwait __sigtimedwait64 +# endif +# endif + +/* Send signal SIG to the process PID. Associate data in VAL with the + signal. */ +extern int sigqueue (__pid_t __pid, int __sig, const union sigval __val) + __THROW; +# endif /* Use POSIX 199306. */ + +#endif /* Use POSIX. */ + +#ifdef __USE_MISC + +/* Get machine-dependent `struct sigcontext' and signal subcodes. */ +# include + +/* Restore the state saved in SCP. */ +extern int sigreturn (struct sigcontext *__scp) __THROW; + +#endif /* Use misc. */ + + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +# define __need_size_t +# include + +# include +# if defined __USE_XOPEN || defined __USE_XOPEN2K8 +/* This will define `ucontext_t' and `mcontext_t'. */ +# include +# endif +#endif /* Use POSIX.1-2008 or X/Open Unix. */ + +#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC +/* If INTERRUPT is nonzero, make signal SIG interrupt system calls + (causing them to fail with EINTR); if INTERRUPT is zero, make system + calls be restarted after signal SIG. */ +extern int siginterrupt (int __sig, int __interrupt) __THROW + __attribute_deprecated_msg__ ("Use sigaction with SA_RESTART instead"); + +# include +# include +# include + +/* Alternate signal handler stack interface. + This interface should always be preferred over `sigstack'. */ +extern int sigaltstack (const stack_t *__restrict __ss, + stack_t *__restrict __oss) __THROW; +#endif /* __USE_XOPEN_EXTENDED || __USE_MISC */ + +#if ((defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ + || defined __USE_MISC) +# include +#endif + +#if ((defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K) \ + || defined __USE_MISC) +/* Run signals handlers on the stack specified by SS (if not NULL). + If OSS is not NULL, it is filled in with the old signal stack status. + This interface is obsolete and on many platform not implemented. */ +extern int sigstack (struct sigstack *__ss, struct sigstack *__oss) + __THROW __attribute_deprecated__; +#endif + +#ifdef __USE_XOPEN_EXTENDED +/* Simplified interface for signal management. */ + +/* Add SIG to the calling process' signal mask. */ +extern int sighold (int __sig) __THROW + __attribute_deprecated_msg__ ("Use the sigprocmask function instead"); + +/* Remove SIG from the calling process' signal mask. */ +extern int sigrelse (int __sig) __THROW + __attribute_deprecated_msg__ ("Use the sigprocmask function instead"); + +/* Set the disposition of SIG to SIG_IGN. */ +extern int sigignore (int __sig) __THROW + __attribute_deprecated_msg__ ("Use the signal function instead"); + +/* Set the disposition of SIG. */ +extern __sighandler_t sigset (int __sig, __sighandler_t __disp) __THROW + __attribute_deprecated_msg__ + ("Use the signal and sigprocmask functions instead"); +#endif + +#if defined __USE_POSIX199506 || defined __USE_UNIX98 +/* Some of the functions for handling signals in threaded programs must + be defined here. */ +# include +# include +#endif /* use Unix98 */ + +/* The following functions are used internally in the C library and in + other code which need deep insights. */ + +/* Return number of available real-time signal with highest priority. */ +extern int __libc_current_sigrtmin (void) __THROW; +/* Return number of available real-time signal with lowest priority. */ +extern int __libc_current_sigrtmax (void) __THROW; + +#define SIGRTMIN (__libc_current_sigrtmin ()) +#define SIGRTMAX (__libc_current_sigrtmax ()) + +/* System-specific extensions. */ +#include + +__END_DECLS + +#endif /* not signal.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4626e587f35f0dbe27c41aaf179376015fbf5530 GIT binary patch literal 23855 zcmcJ13wRXQeeaA=fU97vV5|^|ohkUU1?U0TCJMnsAdC!Ngd#AKF(1q9?yPoTc4yhy zT|Ml`3NfzY>vvMW9j9$vYKNMXHrN+C4yjwNA-dKzwwu_wCC<%;Mod5fI&ay=L__yyjol;b#F=oe&MyqkX;p|P@$;Pzdq#Gkf zq|r%*8{@i}Xb3CQ!j_)sp3>0z9y_(yOmx>r%#;yM+o`_mCWN4j*Qt#eC)H>s!d50? zG;UoVSkV|Vy3Ir|Y)6cSnDX(J+R!QAm~gr;$=(qDzBeH=?KIL`r!g3ehn%#YHiBtd z#2advp+-hat{?eUWjNs@*qt#WQjA&yjons;URA&O-IEhc z23IpFIYm)Jr+1DIQ^AtBo{srm$VtfdUb}onG`W0b8A=#`NGu6IQv@jXKGX*V=+Tpt z!*tS-kZoHuu!L!Bsif_gy(@y28TT#b1E;6$xET)im=Oaa&m_`D${SoxF{7qs1Vbsi z$Kex}JsX-pY~f_aOhj#3)zhUiJOt*t1qGa3ADm1os)zF;Er)K*u*_aU;khHb{CGM9 zsN18NtU-!hcQj#^!HO}Q>%L=lXLYMc@qJ9^P(Zfp?EoJoj#{A95JGDlPTmyI+Y2hgBvymuJ?f!xOwO^ zM^~sKVno4WVcXto8bQ+zMl*?U+O!i+0s9L581o1Oa7U=6jE{=KLW)+9%DyKapG@=+ zx|81P^h>GCBup5q^i=_Qa*yfbgAv|$^s7zpqM%f0-g>_#SsjGo6x>sT<;C)mf4-)N{&+@W-= zYrM%7m|&zF#Q*=`OlvA3j3l}88Xx9@E|2!GWhO(mo{~pwru7I5=|nvO50o(7=UYxn zTrw36$7EhfI@)DLqQq;LlV~($7{P9EvFc&zIGf(}XlM!76i`Ei~_OPSs4 z=vgB?8NY>3p{#7>HB<2^5Mq`)_$JBXQdGi5aY!sDxtQ+6;=C4H8EGry0-y^fGLe2m zf`{O|Cqek3($FZyRzwh~#fWveZSzDs)dP?04^3j22cAkd zt4AGQpy-8ZwySShGi4{@2;*{%W1~<7)+7Crni3n}CST0xq@#cmOhx*NEs#vdQb3q# zQN5nx#gONaO1KcR5aZ$#H906h%ODn~jovaiBWQD=Qmh2S>7|^@n6I-s#y7u=CPb&A zUa0dtkmZ!ya#$=lT2n5zrP9TvPq`)Yg@Uz0mOFU?szfemQlNX}gphKvHTFFoQIRsQ;egYlk5fx zGXB-1i0P3@Lzs_i!62f4FqDY~(|W$)QBIr~8|9H}_m*}3$iDXYTqUdBG&%Pl9=$+CP4&0#(*4Nwt`GgJdlI)v^DbeM;*-^jNCncX! zP*pmFvXIpgWH~puzkxG`{`y^wA3?S=BdyrQINl8R#~$&n zAPfhm(9q4I|AY>$k6%&(duhX~h#Tc>X>&bmF>^at5!Q_>G8(tzDA; znGMl0j+BctS*~uFtkvf@!P4|rDu}{lOXu6Ep2Lz(=xtirot(1dMEnm=8l}7hY~qH$ z$8_!weQv5mZIhOsj@l`Cz3i>DFJt~roc)ea{0lubH=BP(gith%UUE>V+i{e6Ck~|w)8DS$Sc*+kFt{JM|qpSzBy9#!dAqH z+vzEF5b_|`azwelx`Jxm@uyBP$-2{icbFG;(n2q6JPI1gFJYa*m^-X&|%IRP2=(n+ZD-2&eW3&jYKi*y^}KI!_$aTNvA z%H;l}HudN_yJ6DvsZz|M5I*zW9%9mA5Y+_5rw>2Ojn|{*iPT4ou!a69wrzaWNEe@g zlfIRGmY?<;ylkMGSQa^EG1615xSip<4xUy^F$DPuQf;L6Q%avu4>@|b5wcmrUVd%# zK9XTm7TKk!B)N~2*o|~JcT-c`$ihAw>oT%}Zc0gW`NJ|En`1iCPWcuf_v@^IT@NRX zPFVfKPLmI2)m#Cp=v?`fOh`FD8ru_oJrqOOaT%kBrf*+3dV-yxE5pYSoiIT-rSYD@ zh_yUwQ$2Q)f%60}hD>$@j%zuwe*(p2Bw02ca$vQ@?>F5PMfgTfx>o+_t^G1~cJHauQiDvvq zdI;fE`06RA5%S)IpFH<8P02RkM98vaM(Wq3Gm?AV9$tADSZ0@X;+-&0ePVD|a`Sfm zA2zTiv`jWcqzly8_BRHlR3ZGJV4kXz3|l>+qOs*vJRLK5TkfG&w_zb91{VW#d_G*f zDxhM*Bc!fA(;D?&9!L88>1Dp7;G&2IpeEmoJP^EERr(6mtv@YYQ#!`ww13NIeVK8h zGZC9`Oi2=woN#DC`JE~qXDv~d&aP7$ zXSXR|nsu`hniWyZS>I5eoOMijY1UiHy9>wXs>=9h)#~wG_}-_^`fP4fI1>L~k4(P} z-6kWI(BKQSApB7%91Let*y~~Y^z8gVZPqp;i*dR8|r z9a)@);~N%hacN|7x~27)>6jKXyJOfP(9kHfk!tl}4MmxyDC+otT7zr7N_PsbkfP*{ zR=(T%;)@#}DnN=fGM-HL!Q^Uj&n!<{fvQX@2ul$uVmmzbw=I|0# zJ**tQ6UfxPm)bja;l{asWEhMhRH_wa9f9@$n~BK*?^&7sLiL@GPh)@&)f~D~RSzkL z_5*PIzrFRyWp$x{bODpFwImmz3mE^X(_qdJBelU9_ZKVk=FL`=b`%n6P1oFFQHvN( zIAtQTaN6UB&iDXs5$C#1Y?KJ~;5r1ZROG(BAym}&nMo=)VIi)-)8W9Y-qZcc6bzsic?Hku?w4Viyv{Q@& z4*rE3@W)}4_rASjhIa1d>vCuQ?Q370KmU$njPilHfmNzHpxizWSY0>mjh0uo|MqD= z<)#xi$Odb&Di$Et=_I7}-gkwv3)8>@-8l8rgT$ zG{16P?twAulW%_F)Ex||(>14II;WL4>VVYuulv-Jd-pf(DnKfwn~ss!7=l^_anMsC za)1S94Msy9q>_jb8XByo&(7eqyA=g+H5Xd8{IqjZ^ZN{De@(xps{Km;4S@OnrUxFq z_3yv=<^jiqZ;i z1Kn$c;y|)YdE6yQmq@U1v0xyWHZ6B#)2sL2_2Uz*xmRwVckjF3U+_rowSDhA`ay2| zBSz3z%~-9fjw$D3An42kzkcksZ#`Q?(7ue3F=~UsB<&agS9}*JkuZNW?rmnkNHj1A zpM)(O(pC~@9x0M48GJHjhtWpT+BdFm(6qIVV~0)rtWb;SX`OU$``Q2x6Bt~@r!#tv zw%_uToezKFXzoYXKl9IXmL)#OJvi?-cYW!1uieAw8DE6hu}Fn?z^5{Pg-U{2_-6Qn z@AN$%C=k?M)3TD?g;aH?k_BWD^3Vi^ysL{8MqI36wm?yk(4Dd~Nv*xLqrIVOW0c*H z0reXx+po>VD^w99Tz4c^yUG!F8e5l{-OXn!?)l}7&FS3T$LdxbyY~8}jMi*TcA=_f zmFynS_^&Hlet7%6+Wkc|7E|(>n^shF1G%@pxbewfKg<>ytQovQRR@*902cb4 z(pCN3=bwAaU8uwmk+o&XIHAJ%mCGCKd_~y?K6W*3!2xQ78SIH-V;ste(6XB^b(Kb& z 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 jY|24wqEngIB`+gj2?68X4y2zuFa_#}?. */ + +#ifndef _STDC_PREDEF_H +#define _STDC_PREDEF_H 1 + +/* This header is separate from features.h so that the compiler can + include it implicitly at the start of every compilation. It must + not itself include or any other header that includes + because the implicit include comes before any feature + test macros that may be defined in a source file before it first + explicitly includes a system header. GCC knows the name of this + header in order to preinclude it. */ + +/* glibc's intent is to support the IEC 559 math functionality, real + and complex. If the GCC (4.9 and later) predefined macros + specifying compiler intent are available, use them to determine + whether the overall intent is to support these features; otherwise, + presume an older compiler has intent to support these features and + define these macros by default. */ + +#ifdef __GCC_IEC_559 +# if __GCC_IEC_559 > 0 +# define __STDC_IEC_559__ 1 +# define __STDC_IEC_60559_BFP__ 201404L +# endif +#else +# define __STDC_IEC_559__ 1 +# define __STDC_IEC_60559_BFP__ 201404L +#endif + +#ifdef __GCC_IEC_559_COMPLEX +# if __GCC_IEC_559_COMPLEX > 0 +# define __STDC_IEC_559_COMPLEX__ 1 +# define __STDC_IEC_60559_COMPLEX__ 201404L +# endif +#else +# define __STDC_IEC_559_COMPLEX__ 1 +# define __STDC_IEC_60559_COMPLEX__ 201404L +#endif + +/* wchar_t uses Unicode 10.0.0. Version 10.0 of the Unicode Standard is + synchronized with ISO/IEC 10646:2017, fifth edition, plus + the following additions from Amendment 1 to the fifth edition: + - 56 emoji characters + - 285 hentaigana + - 3 additional Zanabazar Square characters */ +#define __STDC_ISO_10646__ 201706L + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..da14abbb0564d0aeb8bb72d5cf6ccaf6fb60291a GIT binary patch literal 12652 zcmb7KPpBM88K3tSge-f=K2%Udf-ABc(>w3Iyo~V>#k}OL3&|#IbX^tgt?90wsl5J| zuIib2aSt9m?7@qIf)@{76b~XEya<99!H5T8VL?#Aix=6G2nO8vRaI9_*Ywvly_df9 z*I#{qf8U?#i=+4c{qEIAqn*)sUSxEfj&D$YDvEL}C>P_H#$#SZlZ$v-6saWa7)`M%3(i)DVahUxnR6TwMaH6V z$zlpFuX8~wOY95Ggrzi`R>hL*5B7gP?QvUF)+|p7$<@Y^$A%y|Ng)8Y#{;jcghXqX z`ox{nl&z!)zxdTRT{*ctXl8Ym*?>wnOLFFsN*P?oK4-H9NjC!DF}kJ`ETdJ6%qKrx zFy-iHetX9i-)4s>>PQ8uHL`PLQU+-;n{L;Ws7PK+GoQBnjE|$3CV0xUZ6T^U65+|q zw{AK|8`-S*3h3G)Vklb7qM|ruG-O4X)OjRWk@J@M+Bl{VK_2+E>9Gf+63CDZ4yf;! zS+>pf;B+od`9oC8I%klq=&P1`IAR(*zyUc?F<`;eyiz=PG^bmSSb`cu6fTQ0%7sT~ z>o)+iSR;UnJ8ukUBvJwMmrvhzgIHz)Y8`tFoWh8z4>r6}PlX{E8Ui!S$SNc$*i5U7 z1Ei@{(s^{#FphO+6iTxIgw!QOxxl9@Ur2r4J^q5LsMQCg1pbo7>SNB6xupbiEP`sA ztT=#I2Psk7Ca=pw_<&X%T7&obWjds~Nl#9W9LbGdR`)1n<+LCbUd&Z6L&Xqz05u7M zP@FmJQ02-hiRKt!q125j@(!T;JepLLhO_jnR3Llt!rb+&&Or$RBs$$La3exGO}2Lo z5S_As1`*($a1qz19w4~%H3Wzh$0mU16P9FTks{w17b+#!sfYuSNvgDn2=oYUtAm~n zC)$9wayn;1^-2hLSvdsI^v0Y$#8E^ho9aJ00^688rDsmV>x%>dk-(W~I;F=?A{_~+ zYNfYw*yA(CaWJqHx=)jy>;T3rugB2bPI=Iid4y+UT2;BS!Sj#5>$b=`a;dnV4d^)y zim3V!KiD2E*0I+1sGSyNlxB7MAbx;^ANs|TFj1ajjUr0UQAePppd%uL6K<-r4xu7A znQll3ho*S_$`?y1UFqui(SK1FP{3)yjOMgrk#=4%C0xaK$AdOVijw9t)gyF*q?Nik z`fAoyoKdHjC)~&Z)Ueno(MvcAVWI>~C_BNOz8@9>O5KI9l zE;PVjMVO`VT?X#E1tGND~EfN}%lvpxU(pz1@K~@wQ-9k!MiG@rYAY zFdzodexa$P2%6?gB^^oyB0;L4uM~q)%qtLBMNvR1JttW}>R4f#LXFG%_8+o8tDzPP zy7I^jMOz<=N@WZ#U*cAV?}-|5obNr6kPHbg7y<2(zTi%|ss+FPu&=gNVsk3;v0M)d z=^@rT*#gz^3+yjovE}+`R!*X7e3Irr0$8Rp-CanZr+>@@2pR198(YfQ1Qf%1fvYR|Zalk26A z9{ar&MO$H=lAUIxyN5tetO)45S#Nv02~+Hvl0Imr;j^td(9{Lk8NkpM0-6Q!Sx#Ud z+K&$HQevrmiINgY*1rjmOL|GM#h=PSsAo{~s$H=rTE|N!Gj#=m z*PZDTHMLx9K=gJJ9VN~(SYxHowaJrlYiPUyu!Z<_p~e+ZUCN*nxuMg0aJROYcdarT z4%p=`V7~;*S;thi!GO0v@vQHP#9&avpd~B7srEwpljg(W^nYv`)C3PVU z^@avnxdhs9NiQr5zDi>uuNyl7Z9>PU(ES4D3Z@4TKh}xi{XkYg*&Lit3KU^zA0jTP zo1Kwg)+kNVn$P`Am(iT8Z`ImUlC{p9#m&U6&hxpS#td$CrT_nSl6ZhryR-Do1>076 zoQK`^6^)&Cvqkhxss$|cgVoi^tQ_n)Q~#r_RmwJC{R@3-bd84&Om)JxOo>Q}3ZI89 zrw282i@4!ql02`o{=u{9DWo8s;m6!f2cFHkJp^tY`@qeL%4yDZ_}IvHgl$z67H_X9 z0AO-Cy+Me(9L;NUxD{}{J;MdmmuVeE(Ia)-zyhWVP$>NZVs|JlL)AgqD&WBwca)b! zjIC$%HdZJvJK(Nb?XV;jaWD8$8TcH7bt8ZdA$ch!0(JS~1S85&+t!NYG(wxW6`&5h3cIafC>gk_XZUpF zgKx6{W}Y~RX_Uf#6s~0)ZBXVtmUK8fnJ?Ug#|WFoas!wRr46mDsP(OajcQavP(PQU z4Xyp4_6g=8PG)pksD|Co8+IRM#IVYaic)HfMDhkD*Dy8kq6+TO)D}?|+hI+!|34XP z<~f136TjlqxULq|0f2Nx^J~w*)>0osD^l0>fCtv;e&yMfEdHwHUc<)O$j>DJl z-3br&Cr6Vo9F0bwd=45@meUK}x983s?jL++e{yRy+PQZA+R?6jo{XOCz-Ldsv-C_}hr~zz5w)00*3uFe5Vq>w zIVI-{doLXB?!fbE!|K^r{*!(0``2lUm6oDygCm6L231SkqrIb(-5q$o)|~P7J8%5- pTa&-Osy%o2)tfhNo`hcnVLxX1DxaD+O47aadzW^1;JL54{2yxeR?GkZ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h new file mode 100644 index 00000000..165a201a --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h @@ -0,0 +1,319 @@ +/* Copyright (C) 1997-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99: 7.18 Integer types + */ + +#ifndef _STDINT_H +#define _STDINT_H 1 + +#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION +#include +#include +#include +#include + +/* Exact integral types. */ + +/* Signed. */ +#include + +/* Unsigned. */ +#include + + +/* Small types. */ + +/* Signed. */ +typedef __int_least8_t int_least8_t; +typedef __int_least16_t int_least16_t; +typedef __int_least32_t int_least32_t; +typedef __int_least64_t int_least64_t; + +/* Unsigned. */ +typedef __uint_least8_t uint_least8_t; +typedef __uint_least16_t uint_least16_t; +typedef __uint_least32_t uint_least32_t; +typedef __uint_least64_t uint_least64_t; + + +/* Fast types. */ + +/* Signed. */ +typedef signed char int_fast8_t; +#if __WORDSIZE == 64 +typedef long int int_fast16_t; +typedef long int int_fast32_t; +typedef long int int_fast64_t; +#else +typedef int int_fast16_t; +typedef int int_fast32_t; +__extension__ +typedef long long int int_fast64_t; +#endif + +/* Unsigned. */ +typedef unsigned char uint_fast8_t; +#if __WORDSIZE == 64 +typedef unsigned long int uint_fast16_t; +typedef unsigned long int uint_fast32_t; +typedef unsigned long int uint_fast64_t; +#else +typedef unsigned int uint_fast16_t; +typedef unsigned int uint_fast32_t; +__extension__ +typedef unsigned long long int uint_fast64_t; +#endif + + +/* Types for `void *' pointers. */ +#if __WORDSIZE == 64 +# ifndef __intptr_t_defined +typedef long int intptr_t; +# define __intptr_t_defined +# endif +typedef unsigned long int uintptr_t; +#else +# ifndef __intptr_t_defined +typedef int intptr_t; +# define __intptr_t_defined +# endif +typedef unsigned int uintptr_t; +#endif + + +/* Largest integral types. */ +typedef __intmax_t intmax_t; +typedef __uintmax_t uintmax_t; + + +# if __WORDSIZE == 64 +# define __INT64_C(c) c ## L +# define __UINT64_C(c) c ## UL +# else +# define __INT64_C(c) c ## LL +# define __UINT64_C(c) c ## ULL +# endif + +/* Limits of integral types. */ + +/* Minimum of signed integral types. */ +# define INT8_MIN (-128) +# define INT16_MIN (-32767-1) +# define INT32_MIN (-2147483647-1) +# define INT64_MIN (-__INT64_C(9223372036854775807)-1) +/* Maximum of signed integral types. */ +# define INT8_MAX (127) +# define INT16_MAX (32767) +# define INT32_MAX (2147483647) +# define INT64_MAX (__INT64_C(9223372036854775807)) + +/* Maximum of unsigned integral types. */ +# define UINT8_MAX (255) +# define UINT16_MAX (65535) +# define UINT32_MAX (4294967295U) +# define UINT64_MAX (__UINT64_C(18446744073709551615)) + + +/* Minimum of signed integral types having a minimum size. */ +# define INT_LEAST8_MIN (-128) +# define INT_LEAST16_MIN (-32767-1) +# define INT_LEAST32_MIN (-2147483647-1) +# define INT_LEAST64_MIN (-__INT64_C(9223372036854775807)-1) +/* Maximum of signed integral types having a minimum size. */ +# define INT_LEAST8_MAX (127) +# define INT_LEAST16_MAX (32767) +# define INT_LEAST32_MAX (2147483647) +# define INT_LEAST64_MAX (__INT64_C(9223372036854775807)) + +/* Maximum of unsigned integral types having a minimum size. */ +# define UINT_LEAST8_MAX (255) +# define UINT_LEAST16_MAX (65535) +# define UINT_LEAST32_MAX (4294967295U) +# define UINT_LEAST64_MAX (__UINT64_C(18446744073709551615)) + + +/* Minimum of fast signed integral types having a minimum size. */ +# define INT_FAST8_MIN (-128) +# if __WORDSIZE == 64 +# define INT_FAST16_MIN (-9223372036854775807L-1) +# define INT_FAST32_MIN (-9223372036854775807L-1) +# else +# define INT_FAST16_MIN (-2147483647-1) +# define INT_FAST32_MIN (-2147483647-1) +# endif +# define INT_FAST64_MIN (-__INT64_C(9223372036854775807)-1) +/* Maximum of fast signed integral types having a minimum size. */ +# define INT_FAST8_MAX (127) +# if __WORDSIZE == 64 +# define INT_FAST16_MAX (9223372036854775807L) +# define INT_FAST32_MAX (9223372036854775807L) +# else +# define INT_FAST16_MAX (2147483647) +# define INT_FAST32_MAX (2147483647) +# endif +# define INT_FAST64_MAX (__INT64_C(9223372036854775807)) + +/* Maximum of fast unsigned integral types having a minimum size. */ +# define UINT_FAST8_MAX (255) +# if __WORDSIZE == 64 +# define UINT_FAST16_MAX (18446744073709551615UL) +# define UINT_FAST32_MAX (18446744073709551615UL) +# else +# define UINT_FAST16_MAX (4294967295U) +# define UINT_FAST32_MAX (4294967295U) +# endif +# define UINT_FAST64_MAX (__UINT64_C(18446744073709551615)) + + +/* Values to test for integral types holding `void *' pointer. */ +# if __WORDSIZE == 64 +# define INTPTR_MIN (-9223372036854775807L-1) +# define INTPTR_MAX (9223372036854775807L) +# define UINTPTR_MAX (18446744073709551615UL) +# else +# define INTPTR_MIN (-2147483647-1) +# define INTPTR_MAX (2147483647) +# define UINTPTR_MAX (4294967295U) +# endif + + +/* Minimum for largest signed integral type. */ +# define INTMAX_MIN (-__INT64_C(9223372036854775807)-1) +/* Maximum for largest signed integral type. */ +# define INTMAX_MAX (__INT64_C(9223372036854775807)) + +/* Maximum for largest unsigned integral type. */ +# define UINTMAX_MAX (__UINT64_C(18446744073709551615)) + + +/* Limits of other integer types. */ + +/* Limits of `ptrdiff_t' type. */ +# if __WORDSIZE == 64 +# define PTRDIFF_MIN (-9223372036854775807L-1) +# define PTRDIFF_MAX (9223372036854775807L) +# else +# if __WORDSIZE32_PTRDIFF_LONG +# define PTRDIFF_MIN (-2147483647L-1) +# define PTRDIFF_MAX (2147483647L) +# else +# define PTRDIFF_MIN (-2147483647-1) +# define PTRDIFF_MAX (2147483647) +# endif +# endif + +/* Limits of `sig_atomic_t'. */ +# define SIG_ATOMIC_MIN (-2147483647-1) +# define SIG_ATOMIC_MAX (2147483647) + +/* Limit of `size_t' type. */ +# if __WORDSIZE == 64 +# define SIZE_MAX (18446744073709551615UL) +# else +# if __WORDSIZE32_SIZE_ULONG +# define SIZE_MAX (4294967295UL) +# else +# define SIZE_MAX (4294967295U) +# endif +# endif + +/* Limits of `wchar_t'. */ +# ifndef WCHAR_MIN +/* These constants might also be defined in . */ +# define WCHAR_MIN __WCHAR_MIN +# define WCHAR_MAX __WCHAR_MAX +# endif + +/* Limits of `wint_t'. */ +# define WINT_MIN (0u) +# define WINT_MAX (4294967295u) + +/* Signed. */ +# define INT8_C(c) c +# define INT16_C(c) c +# define INT32_C(c) c +# if __WORDSIZE == 64 +# define INT64_C(c) c ## L +# else +# define INT64_C(c) c ## LL +# endif + +/* Unsigned. */ +# define UINT8_C(c) c +# define UINT16_C(c) c +# define UINT32_C(c) c ## U +# if __WORDSIZE == 64 +# define UINT64_C(c) c ## UL +# else +# define UINT64_C(c) c ## ULL +# endif + +/* Maximal type. */ +# if __WORDSIZE == 64 +# define INTMAX_C(c) c ## L +# define UINTMAX_C(c) c ## UL +# else +# define INTMAX_C(c) c ## LL +# define UINTMAX_C(c) c ## ULL +# endif + +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) + +# define INT8_WIDTH 8 +# define UINT8_WIDTH 8 +# define INT16_WIDTH 16 +# define UINT16_WIDTH 16 +# define INT32_WIDTH 32 +# define UINT32_WIDTH 32 +# define INT64_WIDTH 64 +# define UINT64_WIDTH 64 + +# define INT_LEAST8_WIDTH 8 +# define UINT_LEAST8_WIDTH 8 +# define INT_LEAST16_WIDTH 16 +# define UINT_LEAST16_WIDTH 16 +# define INT_LEAST32_WIDTH 32 +# define UINT_LEAST32_WIDTH 32 +# define INT_LEAST64_WIDTH 64 +# define UINT_LEAST64_WIDTH 64 + +# define INT_FAST8_WIDTH 8 +# define UINT_FAST8_WIDTH 8 +# define INT_FAST16_WIDTH __WORDSIZE +# define UINT_FAST16_WIDTH __WORDSIZE +# define INT_FAST32_WIDTH __WORDSIZE +# define UINT_FAST32_WIDTH __WORDSIZE +# define INT_FAST64_WIDTH 64 +# define UINT_FAST64_WIDTH 64 + +# define INTPTR_WIDTH __WORDSIZE +# define UINTPTR_WIDTH __WORDSIZE + +# define INTMAX_WIDTH 64 +# define UINTMAX_WIDTH 64 + +# define PTRDIFF_WIDTH __WORDSIZE +# define SIG_ATOMIC_WIDTH 32 +# define SIZE_WIDTH __WORDSIZE +# define WCHAR_WIDTH 32 +# define WINT_WIDTH 32 + +#endif + +#endif /* stdint.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9f970b91292a1ccbe71352217578c27d6af4e7cb GIT binary patch literal 20225 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. */ + +/* + * ISO C99 Standard: 7.19 Input/output + */ + +#ifndef _STDIO_H +#define _STDIO_H 1 + +#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION +#include + +__BEGIN_DECLS + +#define __need_size_t +#define __need_NULL +#include + +#define __need___va_list +#include + +#include +#include +#include +#include +#include +#include + +#ifdef __USE_MISC +# include +#endif + +#if defined __USE_XOPEN || defined __USE_XOPEN2K8 +# ifdef __GNUC__ +# ifndef _VA_LIST_DEFINED +typedef __gnuc_va_list va_list; +# define _VA_LIST_DEFINED +# endif +# else +# include +# endif +#endif + +#if defined __USE_UNIX98 || defined __USE_XOPEN2K +# ifndef __off_t_defined +# ifndef __USE_FILE_OFFSET64 +typedef __off_t off_t; +# else +typedef __off64_t off_t; +# endif +# define __off_t_defined +# endif +# if defined __USE_LARGEFILE64 && !defined __off64_t_defined +typedef __off64_t off64_t; +# define __off64_t_defined +# endif +#endif + +#ifdef __USE_XOPEN2K8 +# ifndef __ssize_t_defined +typedef __ssize_t ssize_t; +# define __ssize_t_defined +# endif +#endif + +/* The type of the second argument to `fgetpos' and `fsetpos'. */ +#ifndef __USE_FILE_OFFSET64 +typedef __fpos_t fpos_t; +#else +typedef __fpos64_t fpos_t; +#endif +#ifdef __USE_LARGEFILE64 +typedef __fpos64_t fpos64_t; +#endif + +/* The possibilities for the third argument to `setvbuf'. */ +#define _IOFBF 0 /* Fully buffered. */ +#define _IOLBF 1 /* Line buffered. */ +#define _IONBF 2 /* No buffering. */ + + +/* Default buffer size. */ +#define BUFSIZ 8192 + + +/* The value returned by fgetc and similar functions to indicate the + end of the file. */ +#define EOF (-1) + + +/* The possibilities for the third argument to `fseek'. + These values should not be changed. */ +#define SEEK_SET 0 /* Seek from beginning of file. */ +#define SEEK_CUR 1 /* Seek from current position. */ +#define SEEK_END 2 /* Seek from end of file. */ +#ifdef __USE_GNU +# define SEEK_DATA 3 /* Seek to next data. */ +# define SEEK_HOLE 4 /* Seek to next hole. */ +#endif + + +#if defined __USE_MISC || defined __USE_XOPEN +/* Default path prefix for `tempnam' and `tmpnam'. */ +# define P_tmpdir "/tmp" +#endif + +#define L_tmpnam 20 +#define TMP_MAX 238328 + +/* Get the values: + FILENAME_MAX Maximum length of a filename. */ +#include + +#ifdef __USE_POSIX +# define L_ctermid 9 +# if !defined __USE_XOPEN2K || defined __USE_GNU +# define L_cuserid 9 +# endif +#endif + +#undef FOPEN_MAX +#define FOPEN_MAX 16 + + +#if __GLIBC_USE (ISOC2X) +/* Maximum length of printf output for a NaN. */ +# define _PRINTF_NAN_LEN_MAX 4 +#endif + + +/* Standard streams. */ +extern FILE *stdin; /* Standard input stream. */ +extern FILE *stdout; /* Standard output stream. */ +extern FILE *stderr; /* Standard error output stream. */ +/* C89/C99 say they're macros. Make them happy. */ +#define stdin stdin +#define stdout stdout +#define stderr stderr + +/* Remove file FILENAME. */ +extern int remove (const char *__filename) __THROW; +/* Rename file OLD to NEW. */ +extern int rename (const char *__old, const char *__new) __THROW; + +#ifdef __USE_ATFILE +/* Rename file OLD relative to OLDFD to NEW relative to NEWFD. */ +extern int renameat (int __oldfd, const char *__old, int __newfd, + const char *__new) __THROW; +#endif + +#ifdef __USE_GNU +/* Flags for renameat2. */ +# define RENAME_NOREPLACE (1 << 0) +# define RENAME_EXCHANGE (1 << 1) +# define RENAME_WHITEOUT (1 << 2) + +/* Rename file OLD relative to OLDFD to NEW relative to NEWFD, with + additional flags. */ +extern int renameat2 (int __oldfd, const char *__old, int __newfd, + const char *__new, unsigned int __flags) __THROW; +#endif + +/* Close STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fclose (FILE *__stream) __nonnull ((1)); + +#undef __attr_dealloc_fclose +#define __attr_dealloc_fclose __attr_dealloc (fclose, 1) + +/* Create a temporary file and open it read/write. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +#ifndef __USE_FILE_OFFSET64 +extern FILE *tmpfile (void) + __attribute_malloc__ __attr_dealloc_fclose __wur; +#else +# ifdef __REDIRECT +extern FILE *__REDIRECT (tmpfile, (void), tmpfile64) + __attribute_malloc__ __attr_dealloc_fclose __wur; +# else +# define tmpfile tmpfile64 +# endif +#endif + +#ifdef __USE_LARGEFILE64 +extern FILE *tmpfile64 (void) + __attribute_malloc__ __attr_dealloc_fclose __wur; +#endif + +/* Generate a temporary filename. */ +extern char *tmpnam (char[L_tmpnam]) __THROW __wur; + +#ifdef __USE_MISC +/* This is the reentrant variant of `tmpnam'. The only difference is + that it does not allow S to be NULL. */ +extern char *tmpnam_r (char __s[L_tmpnam]) __THROW __wur; +#endif + + +#if defined __USE_MISC || defined __USE_XOPEN +/* Generate a unique temporary filename using up to five characters of PFX + if it is not NULL. The directory to put this file in is searched for + as follows: First the environment variable "TMPDIR" is checked. + If it contains the name of a writable directory, that directory is used. + If not and if DIR is not NULL, that value is checked. If that fails, + P_tmpdir is tried and finally "/tmp". The storage for the filename + is allocated by `malloc'. */ +extern char *tempnam (const char *__dir, const char *__pfx) + __THROW __attribute_malloc__ __wur __attr_dealloc_free; +#endif + +/* Flush STREAM, or all streams if STREAM is NULL. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fflush (FILE *__stream); + +#ifdef __USE_MISC +/* Faster versions when locking is not required. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern int fflush_unlocked (FILE *__stream); +#endif + +#ifdef __USE_GNU +/* Close all streams. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern int fcloseall (void); +#endif + + +#ifndef __USE_FILE_OFFSET64 +/* Open a file and create a new stream for it. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern FILE *fopen (const char *__restrict __filename, + const char *__restrict __modes) + __attribute_malloc__ __attr_dealloc_fclose __wur; +/* Open a file, replacing an existing stream with it. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern FILE *freopen (const char *__restrict __filename, + const char *__restrict __modes, + FILE *__restrict __stream) __wur __nonnull ((3)); +#else +# ifdef __REDIRECT +extern FILE *__REDIRECT (fopen, (const char *__restrict __filename, + const char *__restrict __modes), fopen64) + __attribute_malloc__ __attr_dealloc_fclose __wur; +extern FILE *__REDIRECT (freopen, (const char *__restrict __filename, + const char *__restrict __modes, + FILE *__restrict __stream), freopen64) + __wur; +# else +# define fopen fopen64 +# define freopen freopen64 +# endif +#endif +#ifdef __USE_LARGEFILE64 +extern FILE *fopen64 (const char *__restrict __filename, + const char *__restrict __modes) + __attribute_malloc__ __attr_dealloc_fclose __wur; +extern FILE *freopen64 (const char *__restrict __filename, + const char *__restrict __modes, + FILE *__restrict __stream) __wur __nonnull ((3)); +#endif + +#ifdef __USE_POSIX +/* Create a new stream that refers to an existing system file descriptor. */ +extern FILE *fdopen (int __fd, const char *__modes) __THROW + __attribute_malloc__ __attr_dealloc_fclose __wur; +#endif + +#ifdef __USE_MISC +/* Create a new stream that refers to the given magic cookie, + and uses the given functions for input and output. */ +extern FILE *fopencookie (void *__restrict __magic_cookie, + const char *__restrict __modes, + cookie_io_functions_t __io_funcs) __THROW + __attribute_malloc__ __attr_dealloc_fclose __wur; +#endif + +#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) +/* Create a new stream that refers to a memory buffer. */ +extern FILE *fmemopen (void *__s, size_t __len, const char *__modes) + __THROW __attribute_malloc__ __attr_dealloc_fclose __wur; + +/* Open a stream that writes into a malloc'd buffer that is expanded as + necessary. *BUFLOC and *SIZELOC are updated with the buffer's location + and the number of characters written on fflush or fclose. */ +extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __THROW + __attribute_malloc__ __attr_dealloc_fclose __wur; + +#ifdef _WCHAR_H +/* Like OPEN_MEMSTREAM, but the stream is wide oriented and produces + a wide character string. Declared here only to add attribute malloc + and only if has been previously #included. */ +extern __FILE *open_wmemstream (wchar_t **__bufloc, size_t *__sizeloc) __THROW + __attribute_malloc__ __attr_dealloc_fclose; +# endif +#endif + +/* If BUF is NULL, make STREAM unbuffered. + Else make it use buffer BUF, of size BUFSIZ. */ +extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __THROW; +/* Make STREAM use buffering mode MODE. + If BUF is not NULL, use N bytes of it for buffering; + else allocate an internal buffer N bytes long. */ +extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf, + int __modes, size_t __n) __THROW; + +#ifdef __USE_MISC +/* If BUF is NULL, make STREAM unbuffered. + Else make it use SIZE bytes of BUF for buffering. */ +extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf, + size_t __size) __THROW; + +/* Make STREAM line-buffered. */ +extern void setlinebuf (FILE *__stream) __THROW; +#endif + + +/* Write formatted output to STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fprintf (FILE *__restrict __stream, + const char *__restrict __format, ...); +/* Write formatted output to stdout. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int printf (const char *__restrict __format, ...); +/* Write formatted output to S. */ +extern int sprintf (char *__restrict __s, + const char *__restrict __format, ...) __THROWNL; + +/* Write formatted output to S from argument list ARG. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int vfprintf (FILE *__restrict __s, const char *__restrict __format, + __gnuc_va_list __arg); +/* Write formatted output to stdout from argument list ARG. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int vprintf (const char *__restrict __format, __gnuc_va_list __arg); +/* Write formatted output to S from argument list ARG. */ +extern int vsprintf (char *__restrict __s, const char *__restrict __format, + __gnuc_va_list __arg) __THROWNL; + +#if defined __USE_ISOC99 || defined __USE_UNIX98 +/* Maximum chars of output to write in MAXLEN. */ +extern int snprintf (char *__restrict __s, size_t __maxlen, + const char *__restrict __format, ...) + __THROWNL __attribute__ ((__format__ (__printf__, 3, 4))); + +extern int vsnprintf (char *__restrict __s, size_t __maxlen, + const char *__restrict __format, __gnuc_va_list __arg) + __THROWNL __attribute__ ((__format__ (__printf__, 3, 0))); +#endif + +#if defined (__USE_MISC) || __GLIBC_USE (LIB_EXT2) +/* Write formatted output to a string dynamically allocated with `malloc'. + Store the address of the string in *PTR. */ +extern int vasprintf (char **__restrict __ptr, const char *__restrict __f, + __gnuc_va_list __arg) + __THROWNL __attribute__ ((__format__ (__printf__, 2, 0))) __wur; +extern int __asprintf (char **__restrict __ptr, + const char *__restrict __fmt, ...) + __THROWNL __attribute__ ((__format__ (__printf__, 2, 3))) __wur; +extern int asprintf (char **__restrict __ptr, + const char *__restrict __fmt, ...) + __THROWNL __attribute__ ((__format__ (__printf__, 2, 3))) __wur; +#endif + +#ifdef __USE_XOPEN2K8 +/* Write formatted output to a file descriptor. */ +extern int vdprintf (int __fd, const char *__restrict __fmt, + __gnuc_va_list __arg) + __attribute__ ((__format__ (__printf__, 2, 0))); +extern int dprintf (int __fd, const char *__restrict __fmt, ...) + __attribute__ ((__format__ (__printf__, 2, 3))); +#endif + + +/* Read formatted input from STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fscanf (FILE *__restrict __stream, + const char *__restrict __format, ...) __wur; +/* Read formatted input from stdin. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int scanf (const char *__restrict __format, ...) __wur; +/* Read formatted input from S. */ +extern int sscanf (const char *__restrict __s, + const char *__restrict __format, ...) __THROW; + +/* For historical reasons, the C99-compliant versions of the scanf + functions are at alternative names. When __LDBL_COMPAT or + __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI are in effect, this is handled in + bits/stdio-ldbl.h. */ +#include +#if !__GLIBC_USE (DEPRECATED_SCANF) && !defined __LDBL_COMPAT \ + && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 +# if __GLIBC_USE (C2X_STRTOL) +# ifdef __REDIRECT +extern int __REDIRECT (fscanf, (FILE *__restrict __stream, + const char *__restrict __format, ...), + __isoc23_fscanf) __wur; +extern int __REDIRECT (scanf, (const char *__restrict __format, ...), + __isoc23_scanf) __wur; +extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s, + const char *__restrict __format, ...), + __isoc23_sscanf); +# else +extern int __isoc23_fscanf (FILE *__restrict __stream, + const char *__restrict __format, ...) __wur; +extern int __isoc23_scanf (const char *__restrict __format, ...) __wur; +extern int __isoc23_sscanf (const char *__restrict __s, + const char *__restrict __format, ...) __THROW; +# define fscanf __isoc23_fscanf +# define scanf __isoc23_scanf +# define sscanf __isoc23_sscanf +# endif +# else +# ifdef __REDIRECT +extern int __REDIRECT (fscanf, (FILE *__restrict __stream, + const char *__restrict __format, ...), + __isoc99_fscanf) __wur; +extern int __REDIRECT (scanf, (const char *__restrict __format, ...), + __isoc99_scanf) __wur; +extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s, + const char *__restrict __format, ...), + __isoc99_sscanf); +# else +extern int __isoc99_fscanf (FILE *__restrict __stream, + const char *__restrict __format, ...) __wur; +extern int __isoc99_scanf (const char *__restrict __format, ...) __wur; +extern int __isoc99_sscanf (const char *__restrict __s, + const char *__restrict __format, ...) __THROW; +# define fscanf __isoc99_fscanf +# define scanf __isoc99_scanf +# define sscanf __isoc99_sscanf +# endif +# endif +#endif + +#ifdef __USE_ISOC99 +/* Read formatted input from S into argument list ARG. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int vfscanf (FILE *__restrict __s, const char *__restrict __format, + __gnuc_va_list __arg) + __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; + +/* Read formatted input from stdin into argument list ARG. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int vscanf (const char *__restrict __format, __gnuc_va_list __arg) + __attribute__ ((__format__ (__scanf__, 1, 0))) __wur; + +/* Read formatted input from S into argument list ARG. */ +extern int vsscanf (const char *__restrict __s, + const char *__restrict __format, __gnuc_va_list __arg) + __THROW __attribute__ ((__format__ (__scanf__, 2, 0))); + +/* Same redirection as above for the v*scanf family. */ +# if !__GLIBC_USE (DEPRECATED_SCANF) +# if __GLIBC_USE (C2X_STRTOL) +# if defined __REDIRECT && !defined __LDBL_COMPAT \ + && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 +extern int __REDIRECT (vfscanf, + (FILE *__restrict __s, + const char *__restrict __format, __gnuc_va_list __arg), + __isoc23_vfscanf) + __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; +extern int __REDIRECT (vscanf, (const char *__restrict __format, + __gnuc_va_list __arg), __isoc23_vscanf) + __attribute__ ((__format__ (__scanf__, 1, 0))) __wur; +extern int __REDIRECT_NTH (vsscanf, + (const char *__restrict __s, + const char *__restrict __format, + __gnuc_va_list __arg), __isoc23_vsscanf) + __attribute__ ((__format__ (__scanf__, 2, 0))); +# elif !defined __REDIRECT +extern int __isoc23_vfscanf (FILE *__restrict __s, + const char *__restrict __format, + __gnuc_va_list __arg) __wur; +extern int __isoc23_vscanf (const char *__restrict __format, + __gnuc_va_list __arg) __wur; +extern int __isoc23_vsscanf (const char *__restrict __s, + const char *__restrict __format, + __gnuc_va_list __arg) __THROW; +# define vfscanf __isoc23_vfscanf +# define vscanf __isoc23_vscanf +# define vsscanf __isoc23_vsscanf +# endif +# else +# if defined __REDIRECT && !defined __LDBL_COMPAT \ + && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 +extern int __REDIRECT (vfscanf, + (FILE *__restrict __s, + const char *__restrict __format, __gnuc_va_list __arg), + __isoc99_vfscanf) + __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; +extern int __REDIRECT (vscanf, (const char *__restrict __format, + __gnuc_va_list __arg), __isoc99_vscanf) + __attribute__ ((__format__ (__scanf__, 1, 0))) __wur; +extern int __REDIRECT_NTH (vsscanf, + (const char *__restrict __s, + const char *__restrict __format, + __gnuc_va_list __arg), __isoc99_vsscanf) + __attribute__ ((__format__ (__scanf__, 2, 0))); +# elif !defined __REDIRECT +extern int __isoc99_vfscanf (FILE *__restrict __s, + const char *__restrict __format, + __gnuc_va_list __arg) __wur; +extern int __isoc99_vscanf (const char *__restrict __format, + __gnuc_va_list __arg) __wur; +extern int __isoc99_vsscanf (const char *__restrict __s, + const char *__restrict __format, + __gnuc_va_list __arg) __THROW; +# define vfscanf __isoc99_vfscanf +# define vscanf __isoc99_vscanf +# define vsscanf __isoc99_vsscanf +# endif +# endif +# endif +#endif /* Use ISO C9x. */ + + +/* Read a character from STREAM. + + These functions are possible cancellation points and therefore not + marked with __THROW. */ +extern int fgetc (FILE *__stream); +extern int getc (FILE *__stream); + +/* Read a character from stdin. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int getchar (void); + +#ifdef __USE_POSIX199506 +/* These are defined in POSIX.1:1996. + + These functions are possible cancellation points and therefore not + marked with __THROW. */ +extern int getc_unlocked (FILE *__stream); +extern int getchar_unlocked (void); +#endif /* Use POSIX. */ + +#ifdef __USE_MISC +/* Faster version when locking is not necessary. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern int fgetc_unlocked (FILE *__stream); +#endif /* Use MISC. */ + + +/* Write a character to STREAM. + + These functions are possible cancellation points and therefore not + marked with __THROW. + + These functions is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fputc (int __c, FILE *__stream); +extern int putc (int __c, FILE *__stream); + +/* Write a character to stdout. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int putchar (int __c); + +#ifdef __USE_MISC +/* Faster version when locking is not necessary. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern int fputc_unlocked (int __c, FILE *__stream); +#endif /* Use MISC. */ + +#ifdef __USE_POSIX199506 +/* These are defined in POSIX.1:1996. + + These functions are possible cancellation points and therefore not + marked with __THROW. */ +extern int putc_unlocked (int __c, FILE *__stream); +extern int putchar_unlocked (int __c); +#endif /* Use POSIX. */ + + +#if defined __USE_MISC \ + || (defined __USE_XOPEN && !defined __USE_XOPEN2K) +/* Get a word (int) from STREAM. */ +extern int getw (FILE *__stream); + +/* Write a word (int) to STREAM. */ +extern int putw (int __w, FILE *__stream); +#endif + + +/* Get a newline-terminated string of finite length from STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream) + __wur __fortified_attr_access (__write_only__, 1, 2); + +#if __GLIBC_USE (DEPRECATED_GETS) +/* Get a newline-terminated string from stdin, removing the newline. + + This function is impossible to use safely. It has been officially + removed from ISO C11 and ISO C++14, and we have also removed it + from the _GNU_SOURCE feature list. It remains available when + explicitly using an old ISO C, Unix, or POSIX standard. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern char *gets (char *__s) __wur __attribute_deprecated__; +#endif + +#ifdef __USE_GNU +/* This function does the same as `fgets' but does not lock the stream. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern char *fgets_unlocked (char *__restrict __s, int __n, + FILE *__restrict __stream) __wur + __fortified_attr_access (__write_only__, 1, 2); +#endif + + +#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) +/* Read up to (and including) a DELIMITER from STREAM into *LINEPTR + (and null-terminate it). *LINEPTR is a pointer returned from malloc (or + NULL), pointing to *N characters of space. It is realloc'd as + necessary. Returns the number of characters read (not including the + null terminator), or -1 on error or EOF. + + These functions are not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation they are cancellation points and + therefore not marked with __THROW. */ +extern __ssize_t __getdelim (char **__restrict __lineptr, + size_t *__restrict __n, int __delimiter, + FILE *__restrict __stream) __wur; +extern __ssize_t getdelim (char **__restrict __lineptr, + size_t *__restrict __n, int __delimiter, + FILE *__restrict __stream) __wur; + +/* Like `getdelim', but reads up to a newline. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern __ssize_t getline (char **__restrict __lineptr, + size_t *__restrict __n, + FILE *__restrict __stream) __wur; +#endif + + +/* Write a string to STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fputs (const char *__restrict __s, FILE *__restrict __stream); + +/* Write a string, followed by a newline, to stdout. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int puts (const char *__s); + + +/* Push a character back onto the input buffer of STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int ungetc (int __c, FILE *__stream); + + +/* Read chunks of generic data from STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern size_t fread (void *__restrict __ptr, size_t __size, + size_t __n, FILE *__restrict __stream) __wur; +/* Write chunks of generic data to STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern size_t fwrite (const void *__restrict __ptr, size_t __size, + size_t __n, FILE *__restrict __s); + +#ifdef __USE_GNU +/* This function does the same as `fputs' but does not lock the stream. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern int fputs_unlocked (const char *__restrict __s, + FILE *__restrict __stream); +#endif + +#ifdef __USE_MISC +/* Faster versions when locking is not necessary. + + These functions are not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation they are cancellation points and + therefore not marked with __THROW. */ +extern size_t fread_unlocked (void *__restrict __ptr, size_t __size, + size_t __n, FILE *__restrict __stream) __wur; +extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size, + size_t __n, FILE *__restrict __stream); +#endif + + +/* Seek to a certain position on STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fseek (FILE *__stream, long int __off, int __whence); +/* Return the current position of STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern long int ftell (FILE *__stream) __wur; +/* Rewind to the beginning of STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern void rewind (FILE *__stream); + +/* The Single Unix Specification, Version 2, specifies an alternative, + more adequate interface for the two functions above which deal with + file offset. `long int' is not the right type. These definitions + are originally defined in the Large File Support API. */ + +#if defined __USE_LARGEFILE || defined __USE_XOPEN2K +# ifndef __USE_FILE_OFFSET64 +/* Seek to a certain position on STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fseeko (FILE *__stream, __off_t __off, int __whence); +/* Return the current position of STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern __off_t ftello (FILE *__stream) __wur; +# else +# ifdef __REDIRECT +extern int __REDIRECT (fseeko, + (FILE *__stream, __off64_t __off, int __whence), + fseeko64); +extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64); +# else +# define fseeko fseeko64 +# define ftello ftello64 +# endif +# endif +#endif + +#ifndef __USE_FILE_OFFSET64 +/* Get STREAM's position. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos); +/* Set STREAM's position. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fsetpos (FILE *__stream, const fpos_t *__pos); +#else +# ifdef __REDIRECT +extern int __REDIRECT (fgetpos, (FILE *__restrict __stream, + fpos_t *__restrict __pos), fgetpos64); +extern int __REDIRECT (fsetpos, + (FILE *__stream, const fpos_t *__pos), fsetpos64); +# else +# define fgetpos fgetpos64 +# define fsetpos fsetpos64 +# endif +#endif + +#ifdef __USE_LARGEFILE64 +extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence); +extern __off64_t ftello64 (FILE *__stream) __wur; +extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos); +extern int fsetpos64 (FILE *__stream, const fpos64_t *__pos); +#endif + +/* Clear the error and EOF indicators for STREAM. */ +extern void clearerr (FILE *__stream) __THROW; +/* Return the EOF indicator for STREAM. */ +extern int feof (FILE *__stream) __THROW __wur; +/* Return the error indicator for STREAM. */ +extern int ferror (FILE *__stream) __THROW __wur; + +#ifdef __USE_MISC +/* Faster versions when locking is not required. */ +extern void clearerr_unlocked (FILE *__stream) __THROW; +extern int feof_unlocked (FILE *__stream) __THROW __wur; +extern int ferror_unlocked (FILE *__stream) __THROW __wur; +#endif + + +/* Print a message describing the meaning of the value of errno. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern void perror (const char *__s) __COLD; + + +#ifdef __USE_POSIX +/* Return the system file descriptor for STREAM. */ +extern int fileno (FILE *__stream) __THROW __wur; +#endif /* Use POSIX. */ + +#ifdef __USE_MISC +/* Faster version when locking is not required. */ +extern int fileno_unlocked (FILE *__stream) __THROW __wur; +#endif + + +#ifdef __USE_POSIX2 +/* Close a stream opened by popen and return the status of its child. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int pclose (FILE *__stream); + +/* Create a new stream connected to a pipe running the given command. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern FILE *popen (const char *__command, const char *__modes) + __attribute_malloc__ __attr_dealloc (pclose, 1) __wur; + +#endif + + +#ifdef __USE_POSIX +/* Return the name of the controlling terminal. */ +extern char *ctermid (char *__s) __THROW + __attr_access ((__write_only__, 1)); +#endif /* Use POSIX. */ + + +#if (defined __USE_XOPEN && !defined __USE_XOPEN2K) || defined __USE_GNU +/* Return the name of the current user. */ +extern char *cuserid (char *__s) + __attr_access ((__write_only__, 1)); +#endif /* Use X/Open, but not issue 6. */ + + +#ifdef __USE_GNU +struct obstack; /* See . */ + +/* Write formatted output to an obstack. */ +extern int obstack_printf (struct obstack *__restrict __obstack, + const char *__restrict __format, ...) + __THROWNL __attribute__ ((__format__ (__printf__, 2, 3))); +extern int obstack_vprintf (struct obstack *__restrict __obstack, + const char *__restrict __format, + __gnuc_va_list __args) + __THROWNL __attribute__ ((__format__ (__printf__, 2, 0))); +#endif /* Use GNU. */ + + +#ifdef __USE_POSIX199506 +/* These are defined in POSIX.1:1996. */ + +/* Acquire ownership of STREAM. */ +extern void flockfile (FILE *__stream) __THROW; + +/* Try to acquire ownership of STREAM but do not block if it is not + possible. */ +extern int ftrylockfile (FILE *__stream) __THROW __wur; + +/* Relinquish the ownership granted for STREAM. */ +extern void funlockfile (FILE *__stream) __THROW; +#endif /* POSIX */ + +#if defined __USE_XOPEN && !defined __USE_XOPEN2K && !defined __USE_GNU +/* X/Open Issues 1-5 required getopt to be declared in this + header. It was removed in Issue 6. GNU follows Issue 6. */ +# include +#endif + +/* Slow-path routines used by the optimized inline functions in + bits/stdio.h. */ +extern int __uflow (FILE *); +extern int __overflow (FILE *, int); + +#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function +/* Declare all functions from bits/stdio2-decl.h first. */ +# include +#endif + +/* The following headers provide asm redirections. These redirections must + appear before the first usage of these functions, e.g. in bits/stdio.h. */ +#if defined __LDBL_COMPAT || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# include +#endif + +/* If we are compiling with optimizing read this file. It contains + several optimizing inline functions and macros. */ +#ifdef __USE_EXTERN_INLINES +# include +#endif +#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function +/* Now include the function definitions and redirects too. */ +# include +#endif + +__END_DECLS + +#endif /* included. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..be7f7151928a1b393dd8645fef951a1d675acac2 GIT binary patch literal 49141 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%0AgMDu0m(O?P4xGB@q*VPATa;{Q>-Bmrduf77R->{ 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

    TY249)J2)s6+0Kg6srTVY6k=d z8Lk7%yeMGF-M-C!FNO0kP4*2nEuX0fuFKC3qQN zK$*kv82^pJNSj2HrLquaz(Q{2Ed&jt%&Uu^QHz*njXEtxwn;J1HYrB73Cg^-ILtNL z0O&8#A{a>7cOx9Oja>R~gmH~BZ$|vQVzg$^0?jp8C@li$jN%sp5R`cf;#B2G0ieq} zeFK?cZ^(=3l&}p=i*<_4q@E@p6PhI=(+`C~_q0HeBXV6C*NoYnFWBF(?H>DO! zJxH0iAx^|Lrm9w0r>!uf301NET;bV>Vs8=SzEHGo6l-cenpwHpZHO|4zO1Y zaEmz=u`O}ozJfRqK9<M^#)B3NHo<4Tu5}je&{*1XBt}Gb0J5kz6O6tL<(ZJR*!{Z>K$E6xN zjgL$HNtr|5m7kW|sb<~=BH!k6VK+i4=79&zqu?yFWi+-=FML;&*a6S=f??*;%P{d@M)nfn zB(|@8dYCOFHtokE=ibPD>W$Pf(u%N^#km4(Cioke39)6k1ESmwy4cOvDLKM)Qi^OP zrEj1~ad>u=iPGB}`w{xsk1z>=l?UE9weTlsP@LM^sRsAJUE3qwNE_r6${XZQ(4aWy zJ4%BpDeZ%0w~x1_2aZ2MTVktqBm#x&att!+7_=Q3BHLUWzEUGjFO33^9%IK4Ksv@X z&N0wB%ACH}DZ8fi{_DKYwDc{t-;8kQ&1Qrc)w3XC(az_P!k;6&L4alZ|A&TIa6_k7 z_Sm>F?QJYpl31XAVH$VHDkgm(-J5hTyc&Fpg=um8W|VQNc>e}Q=r>%MeFGyDWj;i4 Wctxxsd. */ + +/* + * ISO C99 Standard: 7.20 General utilities + */ + +#ifndef _STDLIB_H + +#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION +#include + +/* Get size_t, wchar_t and NULL from . */ +#define __need_size_t +#define __need_wchar_t +#define __need_NULL +#include + +__BEGIN_DECLS + +#define _STDLIB_H 1 + +#if (defined __USE_XOPEN || defined __USE_XOPEN2K8) && !defined _SYS_WAIT_H +/* XPG requires a few symbols from being defined. */ +# include +# include + +/* Define the macros also would define this way. */ +# define WEXITSTATUS(status) __WEXITSTATUS (status) +# define WTERMSIG(status) __WTERMSIG (status) +# define WSTOPSIG(status) __WSTOPSIG (status) +# define WIFEXITED(status) __WIFEXITED (status) +# define WIFSIGNALED(status) __WIFSIGNALED (status) +# define WIFSTOPPED(status) __WIFSTOPPED (status) +# ifdef __WIFCONTINUED +# define WIFCONTINUED(status) __WIFCONTINUED (status) +# endif +#endif /* X/Open or XPG7 and not included. */ + +/* _FloatN API tests for enablement. */ +#include + +/* Returned by `div'. */ +typedef struct + { + int quot; /* Quotient. */ + int rem; /* Remainder. */ + } div_t; + +/* Returned by `ldiv'. */ +#ifndef __ldiv_t_defined +typedef struct + { + long int quot; /* Quotient. */ + long int rem; /* Remainder. */ + } ldiv_t; +# define __ldiv_t_defined 1 +#endif + +#if defined __USE_ISOC99 && !defined __lldiv_t_defined +/* Returned by `lldiv'. */ +__extension__ typedef struct + { + long long int quot; /* Quotient. */ + long long int rem; /* Remainder. */ + } lldiv_t; +# define __lldiv_t_defined 1 +#endif + + +/* The largest number rand will return (same as INT_MAX). */ +#define RAND_MAX 2147483647 + + +/* We define these the same for all machines. + Changes from this to the outside world should be done in `_exit'. */ +#define EXIT_FAILURE 1 /* Failing exit status. */ +#define EXIT_SUCCESS 0 /* Successful exit status. */ + + +/* Maximum length of a multibyte character in the current locale. */ +#define MB_CUR_MAX (__ctype_get_mb_cur_max ()) +extern size_t __ctype_get_mb_cur_max (void) __THROW __wur; + + +/* Convert a string to a floating-point number. */ +extern double atof (const char *__nptr) + __THROW __attribute_pure__ __nonnull ((1)) __wur; +/* Convert a string to an integer. */ +extern int atoi (const char *__nptr) + __THROW __attribute_pure__ __nonnull ((1)) __wur; +/* Convert a string to a long integer. */ +extern long int atol (const char *__nptr) + __THROW __attribute_pure__ __nonnull ((1)) __wur; + +#ifdef __USE_ISOC99 +/* Convert a string to a long long integer. */ +__extension__ extern long long int atoll (const char *__nptr) + __THROW __attribute_pure__ __nonnull ((1)) __wur; +#endif + +/* Convert a string to a floating-point number. */ +extern double strtod (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); + +#ifdef __USE_ISOC99 +/* Likewise for `float' and `long double' sizes of floating-point numbers. */ +extern float strtof (const char *__restrict __nptr, + char **__restrict __endptr) __THROW __nonnull ((1)); + +extern long double strtold (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); +#endif + +/* Likewise for '_FloatN' and '_FloatNx'. */ + +#if __HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern _Float16 strtof16 (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); +#endif + +#if __HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern _Float32 strtof32 (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); +#endif + +#if __HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern _Float64 strtof64 (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); +#endif + +#if __HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern _Float128 strtof128 (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); +#endif + +#if __HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern _Float32x strtof32x (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); +#endif + +#if __HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern _Float64x strtof64x (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); +#endif + +#if __HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern _Float128x strtof128x (const char *__restrict __nptr, + char **__restrict __endptr) + __THROW __nonnull ((1)); +#endif + +/* Convert a string to a long integer. */ +extern long int strtol (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW __nonnull ((1)); +/* Convert a string to an unsigned long integer. */ +extern unsigned long int strtoul (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW __nonnull ((1)); + +#ifdef __USE_MISC +/* Convert a string to a quadword integer. */ +__extension__ +extern long long int strtoq (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW __nonnull ((1)); +/* Convert a string to an unsigned quadword integer. */ +__extension__ +extern unsigned long long int strtouq (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW __nonnull ((1)); +#endif /* Use misc. */ + +#ifdef __USE_ISOC99 +/* Convert a string to a quadword integer. */ +__extension__ +extern long long int strtoll (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW __nonnull ((1)); +/* Convert a string to an unsigned quadword integer. */ +__extension__ +extern unsigned long long int strtoull (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW __nonnull ((1)); +#endif /* ISO C99 or use MISC. */ + +/* Versions of the above functions that handle '0b' and '0B' prefixes + in base 0 or 2. */ +#if __GLIBC_USE (C2X_STRTOL) +# ifdef __REDIRECT +extern long int __REDIRECT_NTH (strtol, (const char *__restrict __nptr, + char **__restrict __endptr, + int __base), __isoc23_strtol) + __nonnull ((1)); +extern unsigned long int __REDIRECT_NTH (strtoul, + (const char *__restrict __nptr, + char **__restrict __endptr, + int __base), __isoc23_strtoul) + __nonnull ((1)); +# ifdef __USE_MISC +__extension__ +extern long long int __REDIRECT_NTH (strtoq, (const char *__restrict __nptr, + char **__restrict __endptr, + int __base), __isoc23_strtoll) + __nonnull ((1)); +__extension__ +extern unsigned long long int __REDIRECT_NTH (strtouq, + (const char *__restrict __nptr, + char **__restrict __endptr, + int __base), __isoc23_strtoull) + __nonnull ((1)); +# endif +__extension__ +extern long long int __REDIRECT_NTH (strtoll, (const char *__restrict __nptr, + char **__restrict __endptr, + int __base), __isoc23_strtoll) + __nonnull ((1)); +__extension__ +extern unsigned long long int __REDIRECT_NTH (strtoull, + (const char *__restrict __nptr, + char **__restrict __endptr, + int __base), __isoc23_strtoull) + __nonnull ((1)); +# else +extern long int __isoc23_strtol (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW __nonnull ((1)); +extern unsigned long int __isoc23_strtoul (const char *__restrict __nptr, + char **__restrict __endptr, + int __base) + __THROW __nonnull ((1)); +__extension__ +extern long long int __isoc23_strtoll (const char *__restrict __nptr, + char **__restrict __endptr, int __base) + __THROW __nonnull ((1)); +__extension__ +extern unsigned long long int __isoc23_strtoull (const char *__restrict __nptr, + char **__restrict __endptr, + int __base) + __THROW __nonnull ((1)); +# define strtol __isoc23_strtol +# define strtoul __isoc23_strtoul +# ifdef __USE_MISC +# define strtoq __isoc23_strtoll +# define strtouq __isoc23_strtoull +# endif +# define strtoll __isoc23_strtoll +# define strtoull __isoc23_strtoull +# endif +#endif + +/* Convert a floating-point number to a string. */ +#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) +extern int strfromd (char *__dest, size_t __size, const char *__format, + double __f) + __THROW __nonnull ((3)); + +extern int strfromf (char *__dest, size_t __size, const char *__format, + float __f) + __THROW __nonnull ((3)); + +extern int strfroml (char *__dest, size_t __size, const char *__format, + long double __f) + __THROW __nonnull ((3)); +#endif + +#if __HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern int strfromf16 (char *__dest, size_t __size, const char * __format, + _Float16 __f) + __THROW __nonnull ((3)); +#endif + +#if __HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern int strfromf32 (char *__dest, size_t __size, const char * __format, + _Float32 __f) + __THROW __nonnull ((3)); +#endif + +#if __HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern int strfromf64 (char *__dest, size_t __size, const char * __format, + _Float64 __f) + __THROW __nonnull ((3)); +#endif + +#if __HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern int strfromf128 (char *__dest, size_t __size, const char * __format, + _Float128 __f) + __THROW __nonnull ((3)); +#endif + +#if __HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern int strfromf32x (char *__dest, size_t __size, const char * __format, + _Float32x __f) + __THROW __nonnull ((3)); +#endif + +#if __HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern int strfromf64x (char *__dest, size_t __size, const char * __format, + _Float64x __f) + __THROW __nonnull ((3)); +#endif + +#if __HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT) +extern int strfromf128x (char *__dest, size_t __size, const char * __format, + _Float128x __f) + __THROW __nonnull ((3)); +#endif + + +#ifdef __USE_GNU +/* Parallel versions of the functions above which take the locale to + use as an additional parameter. These are GNU extensions inspired + by the POSIX.1-2008 extended locale API. */ +# include + +extern long int strtol_l (const char *__restrict __nptr, + char **__restrict __endptr, int __base, + locale_t __loc) __THROW __nonnull ((1, 4)); + +extern unsigned long int strtoul_l (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, locale_t __loc) + __THROW __nonnull ((1, 4)); + +__extension__ +extern long long int strtoll_l (const char *__restrict __nptr, + char **__restrict __endptr, int __base, + locale_t __loc) + __THROW __nonnull ((1, 4)); + +__extension__ +extern unsigned long long int strtoull_l (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, locale_t __loc) + __THROW __nonnull ((1, 4)); + +/* Versions of the above functions that handle '0b' and '0B' prefixes + in base 0 or 2. */ +# if __GLIBC_USE (C2X_STRTOL) +# ifdef __REDIRECT +extern long int __REDIRECT_NTH (strtol_l, (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, locale_t __loc), + __isoc23_strtol_l) + __nonnull ((1, 4)); +extern unsigned long int __REDIRECT_NTH (strtoul_l, + (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, locale_t __loc), + __isoc23_strtoul_l) + __nonnull ((1, 4)); +__extension__ +extern long long int __REDIRECT_NTH (strtoll_l, (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, + locale_t __loc), + __isoc23_strtoll_l) + __nonnull ((1, 4)); +__extension__ +extern unsigned long long int __REDIRECT_NTH (strtoull_l, + (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, locale_t __loc), + __isoc23_strtoull_l) + __nonnull ((1, 4)); +# else +extern long int __isoc23_strtol_l (const char *__restrict __nptr, + char **__restrict __endptr, int __base, + locale_t __loc) __THROW __nonnull ((1, 4)); +extern unsigned long int __isoc23_strtoul_l (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, locale_t __loc) + __THROW __nonnull ((1, 4)); +__extension__ +extern long long int __isoc23_strtoll_l (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, locale_t __loc) + __THROW __nonnull ((1, 4)); +__extension__ +extern unsigned long long int __isoc23_strtoull_l (const char *__restrict __nptr, + char **__restrict __endptr, + int __base, locale_t __loc) + __THROW __nonnull ((1, 4)); +# define strtol_l __isoc23_strtol_l +# define strtoul_l __isoc23_strtoul_l +# define strtoll_l __isoc23_strtoll_l +# define strtoull_l __isoc23_strtoull_l +# endif +# endif + +extern double strtod_l (const char *__restrict __nptr, + char **__restrict __endptr, locale_t __loc) + __THROW __nonnull ((1, 3)); + +extern float strtof_l (const char *__restrict __nptr, + char **__restrict __endptr, locale_t __loc) + __THROW __nonnull ((1, 3)); + +extern long double strtold_l (const char *__restrict __nptr, + char **__restrict __endptr, + locale_t __loc) + __THROW __nonnull ((1, 3)); + +# if __HAVE_FLOAT16 +extern _Float16 strtof16_l (const char *__restrict __nptr, + char **__restrict __endptr, + locale_t __loc) + __THROW __nonnull ((1, 3)); +# endif + +# if __HAVE_FLOAT32 +extern _Float32 strtof32_l (const char *__restrict __nptr, + char **__restrict __endptr, + locale_t __loc) + __THROW __nonnull ((1, 3)); +# endif + +# if __HAVE_FLOAT64 +extern _Float64 strtof64_l (const char *__restrict __nptr, + char **__restrict __endptr, + locale_t __loc) + __THROW __nonnull ((1, 3)); +# endif + +# if __HAVE_FLOAT128 +extern _Float128 strtof128_l (const char *__restrict __nptr, + char **__restrict __endptr, + locale_t __loc) + __THROW __nonnull ((1, 3)); +# endif + +# if __HAVE_FLOAT32X +extern _Float32x strtof32x_l (const char *__restrict __nptr, + char **__restrict __endptr, + locale_t __loc) + __THROW __nonnull ((1, 3)); +# endif + +# if __HAVE_FLOAT64X +extern _Float64x strtof64x_l (const char *__restrict __nptr, + char **__restrict __endptr, + locale_t __loc) + __THROW __nonnull ((1, 3)); +# endif + +# if __HAVE_FLOAT128X +extern _Float128x strtof128x_l (const char *__restrict __nptr, + char **__restrict __endptr, + locale_t __loc) + __THROW __nonnull ((1, 3)); +# endif +#endif /* GNU */ + + +#ifdef __USE_EXTERN_INLINES +__extern_inline int +__NTH (atoi (const char *__nptr)) +{ + return (int) strtol (__nptr, (char **) NULL, 10); +} +__extern_inline long int +__NTH (atol (const char *__nptr)) +{ + return strtol (__nptr, (char **) NULL, 10); +} + +# ifdef __USE_ISOC99 +__extension__ __extern_inline long long int +__NTH (atoll (const char *__nptr)) +{ + return strtoll (__nptr, (char **) NULL, 10); +} +# endif +#endif /* Optimizing and Inlining. */ + + +#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED +/* Convert N to base 64 using the digits "./0-9A-Za-z", least-significant + digit first. Returns a pointer to static storage overwritten by the + next call. */ +extern char *l64a (long int __n) __THROW __wur; + +/* Read a number from a string S in base 64 as above. */ +extern long int a64l (const char *__s) + __THROW __attribute_pure__ __nonnull ((1)) __wur; + +#endif /* Use misc || extended X/Open. */ + +#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED +# include /* we need int32_t... */ + +/* These are the functions that actually do things. The `random', `srandom', + `initstate' and `setstate' functions are those from BSD Unices. + The `rand' and `srand' functions are required by the ANSI standard. + We provide both interfaces to the same random number generator. */ +/* Return a random long integer between 0 and 2^31-1 inclusive. */ +extern long int random (void) __THROW; + +/* Seed the random number generator with the given number. */ +extern void srandom (unsigned int __seed) __THROW; + +/* Initialize the random number generator to use state buffer STATEBUF, + of length STATELEN, and seed it with SEED. Optimal lengths are 8, 16, + 32, 64, 128 and 256, the bigger the better; values less than 8 will + cause an error and values greater than 256 will be rounded down. */ +extern char *initstate (unsigned int __seed, char *__statebuf, + size_t __statelen) __THROW __nonnull ((2)); + +/* Switch the random number generator to state buffer STATEBUF, + which should have been previously initialized by `initstate'. */ +extern char *setstate (char *__statebuf) __THROW __nonnull ((1)); + + +# ifdef __USE_MISC +/* Reentrant versions of the `random' family of functions. + These functions all use the following data structure to contain + state, rather than global state variables. */ + +struct random_data + { + int32_t *fptr; /* Front pointer. */ + int32_t *rptr; /* Rear pointer. */ + int32_t *state; /* Array of state values. */ + int rand_type; /* Type of random number generator. */ + int rand_deg; /* Degree of random number generator. */ + int rand_sep; /* Distance between front and rear. */ + int32_t *end_ptr; /* Pointer behind state table. */ + }; + +extern int random_r (struct random_data *__restrict __buf, + int32_t *__restrict __result) __THROW __nonnull ((1, 2)); + +extern int srandom_r (unsigned int __seed, struct random_data *__buf) + __THROW __nonnull ((2)); + +extern int initstate_r (unsigned int __seed, char *__restrict __statebuf, + size_t __statelen, + struct random_data *__restrict __buf) + __THROW __nonnull ((2, 4)); + +extern int setstate_r (char *__restrict __statebuf, + struct random_data *__restrict __buf) + __THROW __nonnull ((1, 2)); +# endif /* Use misc. */ +#endif /* Use extended X/Open || misc. */ + + +/* Return a random integer between 0 and RAND_MAX inclusive. */ +extern int rand (void) __THROW; +/* Seed the random number generator with the given number. */ +extern void srand (unsigned int __seed) __THROW; + +#ifdef __USE_POSIX199506 +/* Reentrant interface according to POSIX.1. */ +extern int rand_r (unsigned int *__seed) __THROW; +#endif + + +#if defined __USE_MISC || defined __USE_XOPEN +/* System V style 48-bit random number generator functions. */ + +/* Return non-negative, double-precision floating-point value in [0.0,1.0). */ +extern double drand48 (void) __THROW; +extern double erand48 (unsigned short int __xsubi[3]) __THROW __nonnull ((1)); + +/* Return non-negative, long integer in [0,2^31). */ +extern long int lrand48 (void) __THROW; +extern long int nrand48 (unsigned short int __xsubi[3]) + __THROW __nonnull ((1)); + +/* Return signed, long integers in [-2^31,2^31). */ +extern long int mrand48 (void) __THROW; +extern long int jrand48 (unsigned short int __xsubi[3]) + __THROW __nonnull ((1)); + +/* Seed random number generator. */ +extern void srand48 (long int __seedval) __THROW; +extern unsigned short int *seed48 (unsigned short int __seed16v[3]) + __THROW __nonnull ((1)); +extern void lcong48 (unsigned short int __param[7]) __THROW __nonnull ((1)); + +# ifdef __USE_MISC +/* Data structure for communication with thread safe versions. This + type is to be regarded as opaque. It's only exported because users + have to allocate objects of this type. */ +struct drand48_data + { + unsigned short int __x[3]; /* Current state. */ + unsigned short int __old_x[3]; /* Old state. */ + unsigned short int __c; /* Additive const. in congruential formula. */ + unsigned short int __init; /* Flag for initializing. */ + __extension__ unsigned long long int __a; /* Factor in congruential + formula. */ + }; + +/* Return non-negative, double-precision floating-point value in [0.0,1.0). */ +extern int drand48_r (struct drand48_data *__restrict __buffer, + double *__restrict __result) __THROW __nonnull ((1, 2)); +extern int erand48_r (unsigned short int __xsubi[3], + struct drand48_data *__restrict __buffer, + double *__restrict __result) __THROW __nonnull ((1, 2)); + +/* Return non-negative, long integer in [0,2^31). */ +extern int lrand48_r (struct drand48_data *__restrict __buffer, + long int *__restrict __result) + __THROW __nonnull ((1, 2)); +extern int nrand48_r (unsigned short int __xsubi[3], + struct drand48_data *__restrict __buffer, + long int *__restrict __result) + __THROW __nonnull ((1, 2)); + +/* Return signed, long integers in [-2^31,2^31). */ +extern int mrand48_r (struct drand48_data *__restrict __buffer, + long int *__restrict __result) + __THROW __nonnull ((1, 2)); +extern int jrand48_r (unsigned short int __xsubi[3], + struct drand48_data *__restrict __buffer, + long int *__restrict __result) + __THROW __nonnull ((1, 2)); + +/* Seed random number generator. */ +extern int srand48_r (long int __seedval, struct drand48_data *__buffer) + __THROW __nonnull ((2)); + +extern int seed48_r (unsigned short int __seed16v[3], + struct drand48_data *__buffer) __THROW __nonnull ((1, 2)); + +extern int lcong48_r (unsigned short int __param[7], + struct drand48_data *__buffer) + __THROW __nonnull ((1, 2)); + +/* Return a random integer between zero and 2**32-1 (inclusive). */ +extern __uint32_t arc4random (void) + __THROW __wur; + +/* Fill the buffer with random data. */ +extern void arc4random_buf (void *__buf, size_t __size) + __THROW __nonnull ((1)); + +/* Return a random number between zero (inclusive) and the specified + limit (exclusive). */ +extern __uint32_t arc4random_uniform (__uint32_t __upper_bound) + __THROW __wur; +# endif /* Use misc. */ +#endif /* Use misc or X/Open. */ + +/* Allocate SIZE bytes of memory. */ +extern void *malloc (size_t __size) __THROW __attribute_malloc__ + __attribute_alloc_size__ ((1)) __wur; +/* Allocate NMEMB elements of SIZE bytes each, all initialized to 0. */ +extern void *calloc (size_t __nmemb, size_t __size) + __THROW __attribute_malloc__ __attribute_alloc_size__ ((1, 2)) __wur; + +/* Re-allocate the previously allocated block + in PTR, making the new block SIZE bytes long. */ +/* __attribute_malloc__ is not used, because if realloc returns + the same pointer that was passed to it, aliasing needs to be allowed + between objects pointed by the old and new pointers. */ +extern void *realloc (void *__ptr, size_t __size) + __THROW __attribute_warn_unused_result__ __attribute_alloc_size__ ((2)); + +/* Free a block allocated by `malloc', `realloc' or `calloc'. */ +extern void free (void *__ptr) __THROW; + +#ifdef __USE_MISC +/* Re-allocate the previously allocated block in PTR, making the new + block large enough for NMEMB elements of SIZE bytes each. */ +/* __attribute_malloc__ is not used, because if reallocarray returns + the same pointer that was passed to it, aliasing needs to be allowed + between objects pointed by the old and new pointers. */ +extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) + __THROW __attribute_warn_unused_result__ + __attribute_alloc_size__ ((2, 3)) + __attr_dealloc_free; + +/* Add reallocarray as its own deallocator. */ +extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) + __THROW __attr_dealloc (reallocarray, 1); +#endif + +#ifdef __USE_MISC +# include +#endif /* Use misc. */ + +#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K) \ + || defined __USE_MISC +/* Allocate SIZE bytes on a page boundary. The storage cannot be freed. */ +extern void *valloc (size_t __size) __THROW __attribute_malloc__ + __attribute_alloc_size__ ((1)) __wur; +#endif + +#ifdef __USE_XOPEN2K +/* Allocate memory of SIZE bytes with an alignment of ALIGNMENT. */ +extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size) + __THROW __nonnull ((1)) __wur; +#endif + +#ifdef __USE_ISOC11 +/* ISO C variant of aligned allocation. */ +extern void *aligned_alloc (size_t __alignment, size_t __size) + __THROW __attribute_malloc__ __attribute_alloc_align__ ((1)) + __attribute_alloc_size__ ((2)) __wur; +#endif + +/* Abort execution and generate a core-dump. */ +extern void abort (void) __THROW __attribute__ ((__noreturn__)); + + +/* Register a function to be called when `exit' is called. */ +extern int atexit (void (*__func) (void)) __THROW __nonnull ((1)); + +#if defined __USE_ISOC11 || defined __USE_ISOCXX11 +/* Register a function to be called when `quick_exit' is called. */ +# ifdef __cplusplus +extern "C++" int at_quick_exit (void (*__func) (void)) + __THROW __asm ("at_quick_exit") __nonnull ((1)); +# else +extern int at_quick_exit (void (*__func) (void)) __THROW __nonnull ((1)); +# endif +#endif + +#ifdef __USE_MISC +/* Register a function to be called with the status + given to `exit' and the given argument. */ +extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg) + __THROW __nonnull ((1)); +#endif + +/* Call all functions registered with `atexit' and `on_exit', + in the reverse of the order in which they were registered, + perform stdio cleanup, and terminate program execution with STATUS. */ +extern void exit (int __status) __THROW __attribute__ ((__noreturn__)); + +#if defined __USE_ISOC11 || defined __USE_ISOCXX11 +/* Call all functions registered with `at_quick_exit' in the reverse + of the order in which they were registered and terminate program + execution with STATUS. */ +extern void quick_exit (int __status) __THROW __attribute__ ((__noreturn__)); +#endif + +#ifdef __USE_ISOC99 +/* Terminate the program with STATUS without calling any of the + functions registered with `atexit' or `on_exit'. */ +extern void _Exit (int __status) __THROW __attribute__ ((__noreturn__)); +#endif + + +/* Return the value of envariable NAME, or NULL if it doesn't exist. */ +extern char *getenv (const char *__name) __THROW __nonnull ((1)) __wur; + +#ifdef __USE_GNU +/* This function is similar to the above but returns NULL if the + programs is running with SUID or SGID enabled. */ +extern char *secure_getenv (const char *__name) + __THROW __nonnull ((1)) __wur; +#endif + +#if defined __USE_MISC || defined __USE_XOPEN +/* The SVID says this is in , but this seems a better place. */ +/* Put STRING, which is of the form "NAME=VALUE", in the environment. + If there is no `=', remove NAME from the environment. */ +extern int putenv (char *__string) __THROW __nonnull ((1)); +#endif + +#ifdef __USE_XOPEN2K +/* Set NAME to VALUE in the environment. + If REPLACE is nonzero, overwrite an existing value. */ +extern int setenv (const char *__name, const char *__value, int __replace) + __THROW __nonnull ((2)); + +/* Remove the variable NAME from the environment. */ +extern int unsetenv (const char *__name) __THROW __nonnull ((1)); +#endif + +#ifdef __USE_MISC +/* The `clearenv' was planned to be added to POSIX.1 but probably + never made it. Nevertheless the POSIX.9 standard (POSIX bindings + for Fortran 77) requires this function. */ +extern int clearenv (void) __THROW; +#endif + + +#if defined __USE_MISC \ + || (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) +/* Generate a unique temporary file name from TEMPLATE. + The last six characters of TEMPLATE must be "XXXXXX"; + they are replaced with a string that makes the file name unique. + Always returns TEMPLATE, it's either a temporary file name or a null + string if it cannot get a unique file name. */ +extern char *mktemp (char *__template) __THROW __nonnull ((1)); +#endif + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +/* Generate a unique temporary file name from TEMPLATE. + The last six characters of TEMPLATE must be "XXXXXX"; + they are replaced with a string that makes the filename unique. + Returns a file descriptor open on the file for reading and writing, + or -1 if it cannot create a uniquely-named file. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +# ifndef __USE_FILE_OFFSET64 +extern int mkstemp (char *__template) __nonnull ((1)) __wur; +# else +# ifdef __REDIRECT +extern int __REDIRECT (mkstemp, (char *__template), mkstemp64) + __nonnull ((1)) __wur; +# else +# define mkstemp mkstemp64 +# endif +# endif +# ifdef __USE_LARGEFILE64 +extern int mkstemp64 (char *__template) __nonnull ((1)) __wur; +# endif +#endif + +#ifdef __USE_MISC +/* Similar to mkstemp, but the template can have a suffix after the + XXXXXX. The length of the suffix is specified in the second + parameter. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +# ifndef __USE_FILE_OFFSET64 +extern int mkstemps (char *__template, int __suffixlen) __nonnull ((1)) __wur; +# else +# ifdef __REDIRECT +extern int __REDIRECT (mkstemps, (char *__template, int __suffixlen), + mkstemps64) __nonnull ((1)) __wur; +# else +# define mkstemps mkstemps64 +# endif +# endif +# ifdef __USE_LARGEFILE64 +extern int mkstemps64 (char *__template, int __suffixlen) + __nonnull ((1)) __wur; +# endif +#endif + +#ifdef __USE_XOPEN2K8 +/* Create a unique temporary directory from TEMPLATE. + The last six characters of TEMPLATE must be "XXXXXX"; + they are replaced with a string that makes the directory name unique. + Returns TEMPLATE, or a null pointer if it cannot get a unique name. + The directory is created mode 700. */ +extern char *mkdtemp (char *__template) __THROW __nonnull ((1)) __wur; +#endif + +#ifdef __USE_GNU +/* Generate a unique temporary file name from TEMPLATE similar to + mkstemp. But allow the caller to pass additional flags which are + used in the open call to create the file.. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +# ifndef __USE_FILE_OFFSET64 +extern int mkostemp (char *__template, int __flags) __nonnull ((1)) __wur; +# else +# ifdef __REDIRECT +extern int __REDIRECT (mkostemp, (char *__template, int __flags), mkostemp64) + __nonnull ((1)) __wur; +# else +# define mkostemp mkostemp64 +# endif +# endif +# ifdef __USE_LARGEFILE64 +extern int mkostemp64 (char *__template, int __flags) __nonnull ((1)) __wur; +# endif + +/* Similar to mkostemp, but the template can have a suffix after the + XXXXXX. The length of the suffix is specified in the second + parameter. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +# ifndef __USE_FILE_OFFSET64 +extern int mkostemps (char *__template, int __suffixlen, int __flags) + __nonnull ((1)) __wur; +# else +# ifdef __REDIRECT +extern int __REDIRECT (mkostemps, (char *__template, int __suffixlen, + int __flags), mkostemps64) + __nonnull ((1)) __wur; +# else +# define mkostemps mkostemps64 +# endif +# endif +# ifdef __USE_LARGEFILE64 +extern int mkostemps64 (char *__template, int __suffixlen, int __flags) + __nonnull ((1)) __wur; +# endif +#endif + + +/* Execute the given line as a shell command. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int system (const char *__command) __wur; + + +#ifdef __USE_GNU +/* Return a malloc'd string containing the canonical absolute name of the + existing named file. */ +extern char *canonicalize_file_name (const char *__name) + __THROW __nonnull ((1)) __attribute_malloc__ + __attr_dealloc_free __wur; +#endif + +#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED +/* Return the canonical absolute name of file NAME. If RESOLVED is + null, the result is malloc'd; otherwise, if the canonical name is + PATH_MAX chars or more, returns null with `errno' set to + ENAMETOOLONG; if the name fits in fewer than PATH_MAX chars, + returns the name in RESOLVED. */ +extern char *realpath (const char *__restrict __name, + char *__restrict __resolved) __THROW __wur; +#endif + + +/* Shorthand for type of comparison functions. */ +#ifndef __COMPAR_FN_T +# define __COMPAR_FN_T +typedef int (*__compar_fn_t) (const void *, const void *); + +# ifdef __USE_GNU +typedef __compar_fn_t comparison_fn_t; +# endif +#endif +#ifdef __USE_GNU +typedef int (*__compar_d_fn_t) (const void *, const void *, void *); +#endif + +/* Do a binary search for KEY in BASE, which consists of NMEMB elements + of SIZE bytes each, using COMPAR to perform the comparisons. */ +extern void *bsearch (const void *__key, const void *__base, + size_t __nmemb, size_t __size, __compar_fn_t __compar) + __nonnull ((1, 2, 5)) __wur; + +#ifdef __USE_EXTERN_INLINES +# include +#endif + +/* Sort NMEMB elements of BASE, of SIZE bytes each, + using COMPAR to perform the comparisons. */ +extern void qsort (void *__base, size_t __nmemb, size_t __size, + __compar_fn_t __compar) __nonnull ((1, 4)); +#ifdef __USE_GNU +extern void qsort_r (void *__base, size_t __nmemb, size_t __size, + __compar_d_fn_t __compar, void *__arg) + __nonnull ((1, 4)); +#endif + + +/* Return the absolute value of X. */ +extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; +extern long int labs (long int __x) __THROW __attribute__ ((__const__)) __wur; + +#ifdef __USE_ISOC99 +__extension__ extern long long int llabs (long long int __x) + __THROW __attribute__ ((__const__)) __wur; +#endif + + +/* Return the `div_t', `ldiv_t' or `lldiv_t' representation + of the value of NUMER over DENOM. */ +/* GCC may have built-ins for these someday. */ +extern div_t div (int __numer, int __denom) + __THROW __attribute__ ((__const__)) __wur; +extern ldiv_t ldiv (long int __numer, long int __denom) + __THROW __attribute__ ((__const__)) __wur; + +#ifdef __USE_ISOC99 +__extension__ extern lldiv_t lldiv (long long int __numer, + long long int __denom) + __THROW __attribute__ ((__const__)) __wur; +#endif + + +#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ + || defined __USE_MISC +/* Convert floating point numbers to strings. The returned values are + valid only until another call to the same function. */ + +/* Convert VALUE to a string with NDIGIT digits and return a pointer to + this. Set *DECPT with the position of the decimal character and *SIGN + with the sign of the number. */ +extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt, + int *__restrict __sign) __THROW __nonnull ((3, 4)) __wur; + +/* Convert VALUE to a string rounded to NDIGIT decimal digits. Set *DECPT + with the position of the decimal character and *SIGN with the sign of + the number. */ +extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt, + int *__restrict __sign) __THROW __nonnull ((3, 4)) __wur; + +/* If possible convert VALUE to a string with NDIGIT significant digits. + Otherwise use exponential representation. The resulting string will + be written to BUF. */ +extern char *gcvt (double __value, int __ndigit, char *__buf) + __THROW __nonnull ((3)) __wur; +#endif + +#ifdef __USE_MISC +/* Long double versions of above functions. */ +extern char *qecvt (long double __value, int __ndigit, + int *__restrict __decpt, int *__restrict __sign) + __THROW __nonnull ((3, 4)) __wur; +extern char *qfcvt (long double __value, int __ndigit, + int *__restrict __decpt, int *__restrict __sign) + __THROW __nonnull ((3, 4)) __wur; +extern char *qgcvt (long double __value, int __ndigit, char *__buf) + __THROW __nonnull ((3)) __wur; + + +/* Reentrant version of the functions above which provide their own + buffers. */ +extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt, + int *__restrict __sign, char *__restrict __buf, + size_t __len) __THROW __nonnull ((3, 4, 5)); +extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt, + int *__restrict __sign, char *__restrict __buf, + size_t __len) __THROW __nonnull ((3, 4, 5)); + +extern int qecvt_r (long double __value, int __ndigit, + int *__restrict __decpt, int *__restrict __sign, + char *__restrict __buf, size_t __len) + __THROW __nonnull ((3, 4, 5)); +extern int qfcvt_r (long double __value, int __ndigit, + int *__restrict __decpt, int *__restrict __sign, + char *__restrict __buf, size_t __len) + __THROW __nonnull ((3, 4, 5)); +#endif /* misc */ + + +/* Return the length of the multibyte character + in S, which is no longer than N. */ +extern int mblen (const char *__s, size_t __n) __THROW; +/* Return the length of the given multibyte character, + putting its `wchar_t' representation in *PWC. */ +extern int mbtowc (wchar_t *__restrict __pwc, + const char *__restrict __s, size_t __n) __THROW; +/* Put the multibyte character represented + by WCHAR in S, returning its length. */ +extern int wctomb (char *__s, wchar_t __wchar) __THROW; + + +/* Convert a multibyte string to a wide char string. */ +extern size_t mbstowcs (wchar_t *__restrict __pwcs, + const char *__restrict __s, size_t __n) __THROW + __attr_access ((__read_only__, 2)); +/* Convert a wide char string to multibyte string. */ +extern size_t wcstombs (char *__restrict __s, + const wchar_t *__restrict __pwcs, size_t __n) + __THROW + __fortified_attr_access (__write_only__, 1, 3) + __attr_access ((__read_only__, 2)); + +#ifdef __USE_MISC +/* Determine whether the string value of RESPONSE matches the affirmation + or negative response expression as specified by the LC_MESSAGES category + in the program's current locale. Returns 1 if affirmative, 0 if + negative, and -1 if not matching. */ +extern int rpmatch (const char *__response) __THROW __nonnull ((1)) __wur; +#endif + + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +/* Parse comma separated suboption from *OPTIONP and match against + strings in TOKENS. If found return index and set *VALUEP to + optional value introduced by an equal sign. If the suboption is + not part of TOKENS return in *VALUEP beginning of unknown + suboption. On exit *OPTIONP is set to the beginning of the next + token or at the terminating NUL character. */ +extern int getsubopt (char **__restrict __optionp, + char *const *__restrict __tokens, + char **__restrict __valuep) + __THROW __nonnull ((1, 2, 3)) __wur; +#endif + + +/* X/Open pseudo terminal handling. */ + +#ifdef __USE_XOPEN2KXSI +/* Return a master pseudo-terminal handle. */ +extern int posix_openpt (int __oflag) __wur; +#endif + +#ifdef __USE_XOPEN_EXTENDED +/* The next four functions all take a master pseudo-tty fd and + perform an operation on the associated slave: */ + +/* Chown the slave to the calling user. */ +extern int grantpt (int __fd) __THROW; + +/* Release an internal lock so the slave can be opened. + Call after grantpt(). */ +extern int unlockpt (int __fd) __THROW; + +/* Return the pathname of the pseudo terminal slave associated with + the master FD is open on, or NULL on errors. + The returned storage is good until the next call to this function. */ +extern char *ptsname (int __fd) __THROW __wur; +#endif + +#ifdef __USE_GNU +/* Store at most BUFLEN characters of the pathname of the slave pseudo + terminal associated with the master FD is open on in BUF. + Return 0 on success, otherwise an error number. */ +extern int ptsname_r (int __fd, char *__buf, size_t __buflen) + __THROW __nonnull ((2)) __fortified_attr_access (__write_only__, 2, 3); + +/* Open a master pseudo terminal and return its file descriptor. */ +extern int getpt (void); +#endif + +#ifdef __USE_MISC +/* Put the 1 minute, 5 minute and 15 minute load averages into the first + NELEM elements of LOADAVG. Return the number written (never more than + three, but may be less than NELEM), or -1 if an error occurred. */ +extern int getloadavg (double __loadavg[], int __nelem) + __THROW __nonnull ((1)); +#endif + +#if defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K +/* Return the index into the active-logins file (utmp) for + the controlling terminal. */ +extern int ttyslot (void) __THROW; +#endif + +#include + +/* Define some macros helping to catch buffer overflows. */ +#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function +# include +#endif + +#include +#if defined __LDBL_COMPAT || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# include +#endif + +__END_DECLS + +#endif /* stdlib.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e55d6eef3026a7e5f4ce48e5ae16b1e7521b5500 GIT binary patch literal 53214 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h new file mode 100644 index 00000000..c0773d11 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h @@ -0,0 +1,554 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99 Standard: 7.21 String handling + */ + +#ifndef _STRING_H +#define _STRING_H 1 + +#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION +#include + +__BEGIN_DECLS + +/* Get size_t and NULL from . */ +#define __need_size_t +#define __need_NULL +#include + +/* Tell the caller that we provide correct C++ prototypes. */ +#if defined __cplusplus && (__GNUC_PREREQ (4, 4) \ + || __glibc_clang_prereq (3, 5)) +# define __CORRECT_ISO_CPP_STRING_H_PROTO +#endif + + +/* Copy N bytes of SRC to DEST. */ +extern void *memcpy (void *__restrict __dest, const void *__restrict __src, + size_t __n) __THROW __nonnull ((1, 2)); +/* Copy N bytes of SRC to DEST, guaranteeing + correct behavior for overlapping strings. */ +extern void *memmove (void *__dest, const void *__src, size_t __n) + __THROW __nonnull ((1, 2)); + +/* Copy no more than N bytes of SRC to DEST, stopping when C is found. + Return the position in DEST one byte past where C was copied, + or NULL if C was not found in the first N bytes of SRC. */ +#if defined __USE_MISC || defined __USE_XOPEN || __GLIBC_USE (ISOC2X) +extern void *memccpy (void *__restrict __dest, const void *__restrict __src, + int __c, size_t __n) + __THROW __nonnull ((1, 2)) __attr_access ((__write_only__, 1, 4)); +#endif /* Misc || X/Open. */ + + +/* Set N bytes of S to C. */ +extern void *memset (void *__s, int __c, size_t __n) __THROW __nonnull ((1)); + +/* Compare N bytes of S1 and S2. */ +extern int memcmp (const void *__s1, const void *__s2, size_t __n) + __THROW __attribute_pure__ __nonnull ((1, 2)); + +/* Compare N bytes of S1 and S2. Return zero if S1 and S2 are equal. + Return some non-zero value otherwise. + + Essentially __memcmpeq has the exact same semantics as memcmp + except the return value is less constrained. memcmp is always a + correct implementation of __memcmpeq. As well !!memcmp, -memcmp, + or bcmp are correct implementations. + + __memcmpeq is meant to be used by compilers when memcmp return is + only used for its boolean value. + + __memcmpeq is declared only for use by compilers. Programs should + continue to use memcmp. */ +extern int __memcmpeq (const void *__s1, const void *__s2, size_t __n) + __THROW __attribute_pure__ __nonnull ((1, 2)); + +/* Search N bytes of S for C. */ +#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" +{ +extern void *memchr (void *__s, int __c, size_t __n) + __THROW __asm ("memchr") __attribute_pure__ __nonnull ((1)); +extern const void *memchr (const void *__s, int __c, size_t __n) + __THROW __asm ("memchr") __attribute_pure__ __nonnull ((1)); + +# ifdef __OPTIMIZE__ +__extern_always_inline void * +memchr (void *__s, int __c, size_t __n) __THROW +{ + return __builtin_memchr (__s, __c, __n); +} + +__extern_always_inline const void * +memchr (const void *__s, int __c, size_t __n) __THROW +{ + return __builtin_memchr (__s, __c, __n); +} +# endif +} +#else +extern void *memchr (const void *__s, int __c, size_t __n) + __THROW __attribute_pure__ __nonnull ((1)); +#endif + +#ifdef __USE_GNU +/* Search in S for C. This is similar to `memchr' but there is no + length limit. */ +# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" void *rawmemchr (void *__s, int __c) + __THROW __asm ("rawmemchr") __attribute_pure__ __nonnull ((1)); +extern "C++" const void *rawmemchr (const void *__s, int __c) + __THROW __asm ("rawmemchr") __attribute_pure__ __nonnull ((1)); +# else +extern void *rawmemchr (const void *__s, int __c) + __THROW __attribute_pure__ __nonnull ((1)); +# endif + +/* Search N bytes of S for the final occurrence of C. */ +# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" void *memrchr (void *__s, int __c, size_t __n) + __THROW __asm ("memrchr") __attribute_pure__ __nonnull ((1)) + __attr_access ((__read_only__, 1, 3)); +extern "C++" const void *memrchr (const void *__s, int __c, size_t __n) + __THROW __asm ("memrchr") __attribute_pure__ __nonnull ((1)) + __attr_access ((__read_only__, 1, 3)); +# else +extern void *memrchr (const void *__s, int __c, size_t __n) + __THROW __attribute_pure__ __nonnull ((1)) + __attr_access ((__read_only__, 1, 3)); +# endif +#endif + + +/* Copy SRC to DEST. */ +extern char *strcpy (char *__restrict __dest, const char *__restrict __src) + __THROW __nonnull ((1, 2)); +/* Copy no more than N characters of SRC to DEST. */ +extern char *strncpy (char *__restrict __dest, + const char *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)); + +/* Append SRC onto DEST. */ +extern char *strcat (char *__restrict __dest, const char *__restrict __src) + __THROW __nonnull ((1, 2)); +/* Append no more than N characters from SRC onto DEST. */ +extern char *strncat (char *__restrict __dest, const char *__restrict __src, + size_t __n) __THROW __nonnull ((1, 2)); + +/* Compare S1 and S2. */ +extern int strcmp (const char *__s1, const char *__s2) + __THROW __attribute_pure__ __nonnull ((1, 2)); +/* Compare N characters of S1 and S2. */ +extern int strncmp (const char *__s1, const char *__s2, size_t __n) + __THROW __attribute_pure__ __nonnull ((1, 2)); + +/* Compare the collated forms of S1 and S2. */ +extern int strcoll (const char *__s1, const char *__s2) + __THROW __attribute_pure__ __nonnull ((1, 2)); +/* Put a transformation of SRC into no more than N bytes of DEST. */ +extern size_t strxfrm (char *__restrict __dest, + const char *__restrict __src, size_t __n) + __THROW __nonnull ((2)) __attr_access ((__write_only__, 1, 3)); + +#ifdef __USE_XOPEN2K8 +/* POSIX.1-2008 extended locale interface (see locale.h). */ +# include + +/* Compare the collated forms of S1 and S2, using sorting rules from L. */ +extern int strcoll_l (const char *__s1, const char *__s2, locale_t __l) + __THROW __attribute_pure__ __nonnull ((1, 2, 3)); +/* Put a transformation of SRC into no more than N bytes of DEST, + using sorting rules from L. */ +extern size_t strxfrm_l (char *__dest, const char *__src, size_t __n, + locale_t __l) __THROW __nonnull ((2, 4)) + __attr_access ((__write_only__, 1, 3)); +#endif + +#if (defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 \ + || __GLIBC_USE (LIB_EXT2) || __GLIBC_USE (ISOC2X)) +/* Duplicate S, returning an identical malloc'd string. */ +extern char *strdup (const char *__s) + __THROW __attribute_malloc__ __nonnull ((1)); +#endif + +/* Return a malloc'd copy of at most N bytes of STRING. The + resultant string is terminated even if no null terminator + appears before STRING[N]. */ +#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) || __GLIBC_USE (ISOC2X) +extern char *strndup (const char *__string, size_t __n) + __THROW __attribute_malloc__ __nonnull ((1)); +#endif + +#if defined __USE_GNU && defined __GNUC__ +/* Duplicate S, returning an identical alloca'd string. */ +# define strdupa(s) \ + (__extension__ \ + ({ \ + const char *__old = (s); \ + size_t __len = strlen (__old) + 1; \ + char *__new = (char *) __builtin_alloca (__len); \ + (char *) memcpy (__new, __old, __len); \ + })) + +/* Return an alloca'd copy of at most N bytes of string. */ +# define strndupa(s, n) \ + (__extension__ \ + ({ \ + const char *__old = (s); \ + size_t __len = strnlen (__old, (n)); \ + char *__new = (char *) __builtin_alloca (__len + 1); \ + __new[__len] = '\0'; \ + (char *) memcpy (__new, __old, __len); \ + })) +#endif + +/* Find the first occurrence of C in S. */ +#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" +{ +extern char *strchr (char *__s, int __c) + __THROW __asm ("strchr") __attribute_pure__ __nonnull ((1)); +extern const char *strchr (const char *__s, int __c) + __THROW __asm ("strchr") __attribute_pure__ __nonnull ((1)); + +# ifdef __OPTIMIZE__ +__extern_always_inline char * +strchr (char *__s, int __c) __THROW +{ + return __builtin_strchr (__s, __c); +} + +__extern_always_inline const char * +strchr (const char *__s, int __c) __THROW +{ + return __builtin_strchr (__s, __c); +} +# endif +} +#else +extern char *strchr (const char *__s, int __c) + __THROW __attribute_pure__ __nonnull ((1)); +#endif +/* Find the last occurrence of C in S. */ +#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" +{ +extern char *strrchr (char *__s, int __c) + __THROW __asm ("strrchr") __attribute_pure__ __nonnull ((1)); +extern const char *strrchr (const char *__s, int __c) + __THROW __asm ("strrchr") __attribute_pure__ __nonnull ((1)); + +# ifdef __OPTIMIZE__ +__extern_always_inline char * +strrchr (char *__s, int __c) __THROW +{ + return __builtin_strrchr (__s, __c); +} + +__extern_always_inline const char * +strrchr (const char *__s, int __c) __THROW +{ + return __builtin_strrchr (__s, __c); +} +# endif +} +#else +extern char *strrchr (const char *__s, int __c) + __THROW __attribute_pure__ __nonnull ((1)); +#endif + +#ifdef __USE_MISC +/* This function is similar to `strchr'. But it returns a pointer to + the closing NUL byte in case C is not found in S. */ +# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" char *strchrnul (char *__s, int __c) + __THROW __asm ("strchrnul") __attribute_pure__ __nonnull ((1)); +extern "C++" const char *strchrnul (const char *__s, int __c) + __THROW __asm ("strchrnul") __attribute_pure__ __nonnull ((1)); +# else +extern char *strchrnul (const char *__s, int __c) + __THROW __attribute_pure__ __nonnull ((1)); +# endif +#endif + +/* Return the length of the initial segment of S which + consists entirely of characters not in REJECT. */ +extern size_t strcspn (const char *__s, const char *__reject) + __THROW __attribute_pure__ __nonnull ((1, 2)); +/* Return the length of the initial segment of S which + consists entirely of characters in ACCEPT. */ +extern size_t strspn (const char *__s, const char *__accept) + __THROW __attribute_pure__ __nonnull ((1, 2)); +/* Find the first occurrence in S of any character in ACCEPT. */ +#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" +{ +extern char *strpbrk (char *__s, const char *__accept) + __THROW __asm ("strpbrk") __attribute_pure__ __nonnull ((1, 2)); +extern const char *strpbrk (const char *__s, const char *__accept) + __THROW __asm ("strpbrk") __attribute_pure__ __nonnull ((1, 2)); + +# ifdef __OPTIMIZE__ +__extern_always_inline char * +strpbrk (char *__s, const char *__accept) __THROW +{ + return __builtin_strpbrk (__s, __accept); +} + +__extern_always_inline const char * +strpbrk (const char *__s, const char *__accept) __THROW +{ + return __builtin_strpbrk (__s, __accept); +} +# endif +} +#else +extern char *strpbrk (const char *__s, const char *__accept) + __THROW __attribute_pure__ __nonnull ((1, 2)); +#endif +/* Find the first occurrence of NEEDLE in HAYSTACK. */ +#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" +{ +extern char *strstr (char *__haystack, const char *__needle) + __THROW __asm ("strstr") __attribute_pure__ __nonnull ((1, 2)); +extern const char *strstr (const char *__haystack, const char *__needle) + __THROW __asm ("strstr") __attribute_pure__ __nonnull ((1, 2)); + +# ifdef __OPTIMIZE__ +__extern_always_inline char * +strstr (char *__haystack, const char *__needle) __THROW +{ + return __builtin_strstr (__haystack, __needle); +} + +__extern_always_inline const char * +strstr (const char *__haystack, const char *__needle) __THROW +{ + return __builtin_strstr (__haystack, __needle); +} +# endif +} +#else +extern char *strstr (const char *__haystack, const char *__needle) + __THROW __attribute_pure__ __nonnull ((1, 2)); +#endif + + +/* Divide S into tokens separated by characters in DELIM. */ +extern char *strtok (char *__restrict __s, const char *__restrict __delim) + __THROW __nonnull ((2)); + +/* Divide S into tokens separated by characters in DELIM. Information + passed between calls are stored in SAVE_PTR. */ +extern char *__strtok_r (char *__restrict __s, + const char *__restrict __delim, + char **__restrict __save_ptr) + __THROW __nonnull ((2, 3)); +#ifdef __USE_POSIX +extern char *strtok_r (char *__restrict __s, const char *__restrict __delim, + char **__restrict __save_ptr) + __THROW __nonnull ((2, 3)); +#endif + +#ifdef __USE_MISC +/* Similar to `strstr' but this function ignores the case of both strings. */ +# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" char *strcasestr (char *__haystack, const char *__needle) + __THROW __asm ("strcasestr") __attribute_pure__ __nonnull ((1, 2)); +extern "C++" const char *strcasestr (const char *__haystack, + const char *__needle) + __THROW __asm ("strcasestr") __attribute_pure__ __nonnull ((1, 2)); +# else +extern char *strcasestr (const char *__haystack, const char *__needle) + __THROW __attribute_pure__ __nonnull ((1, 2)); +# endif +#endif + +#ifdef __USE_MISC +/* Find the first occurrence of NEEDLE in HAYSTACK. + NEEDLE is NEEDLELEN bytes long; + HAYSTACK is HAYSTACKLEN bytes long. */ +extern void *memmem (const void *__haystack, size_t __haystacklen, + const void *__needle, size_t __needlelen) + __THROW __attribute_pure__ __nonnull ((1, 3)) + __attr_access ((__read_only__, 1, 2)) + __attr_access ((__read_only__, 3, 4)); + +/* Copy N bytes of SRC to DEST, return pointer to bytes after the + last written byte. */ +extern void *__mempcpy (void *__restrict __dest, + const void *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)); +extern void *mempcpy (void *__restrict __dest, + const void *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)); +#endif + + +/* Return the length of S. */ +extern size_t strlen (const char *__s) + __THROW __attribute_pure__ __nonnull ((1)); + +#ifdef __USE_XOPEN2K8 +/* Find the length of STRING, but scan at most MAXLEN characters. + If no '\0' terminator is found in that many characters, return MAXLEN. */ +extern size_t strnlen (const char *__string, size_t __maxlen) + __THROW __attribute_pure__ __nonnull ((1)); +#endif + + +/* Return a string describing the meaning of the `errno' code in ERRNUM. */ +extern char *strerror (int __errnum) __THROW; +#ifdef __USE_XOPEN2K +/* Reentrant version of `strerror'. + There are 2 flavors of `strerror_r', GNU which returns the string + and may or may not use the supplied temporary buffer and POSIX one + which fills the string into the buffer. + To use the POSIX version, -D_XOPEN_SOURCE=600 or -D_POSIX_C_SOURCE=200112L + without -D_GNU_SOURCE is needed, otherwise the GNU version is + preferred. */ +# if defined __USE_XOPEN2K && !defined __USE_GNU +/* Fill BUF with a string describing the meaning of the `errno' code in + ERRNUM. */ +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (strerror_r, + (int __errnum, char *__buf, size_t __buflen), + __xpg_strerror_r) __nonnull ((2)) + __attr_access ((__write_only__, 2, 3)); +# else +extern int __xpg_strerror_r (int __errnum, char *__buf, size_t __buflen) + __THROW __nonnull ((2)) __attr_access ((__write_only__, 2, 3)); +# define strerror_r __xpg_strerror_r +# endif +# else +/* If a temporary buffer is required, at most BUFLEN bytes of BUF will be + used. */ +extern char *strerror_r (int __errnum, char *__buf, size_t __buflen) + __THROW __nonnull ((2)) __wur __attr_access ((__write_only__, 2, 3)); +# endif + +# ifdef __USE_GNU +/* Return a string describing the meaning of tthe error in ERR. */ +extern const char *strerrordesc_np (int __err) __THROW; +/* Return a string with the error name in ERR. */ +extern const char *strerrorname_np (int __err) __THROW; +# endif +#endif + +#ifdef __USE_XOPEN2K8 +/* Translate error number to string according to the locale L. */ +extern char *strerror_l (int __errnum, locale_t __l) __THROW; +#endif + +#ifdef __USE_MISC +# include + +/* Set N bytes of S to 0. The compiler will not delete a call to this + function, even if S is dead after the call. */ +extern void explicit_bzero (void *__s, size_t __n) __THROW __nonnull ((1)) + __fortified_attr_access (__write_only__, 1, 2); + +/* Return the next DELIM-delimited token from *STRINGP, + terminating it with a '\0', and update *STRINGP to point past it. */ +extern char *strsep (char **__restrict __stringp, + const char *__restrict __delim) + __THROW __nonnull ((1, 2)); +#endif + +#ifdef __USE_XOPEN2K8 +/* Return a string describing the meaning of the signal number in SIG. */ +extern char *strsignal (int __sig) __THROW; + +# ifdef __USE_GNU +/* Return an abbreviation string for the signal number SIG. */ +extern const char *sigabbrev_np (int __sig) __THROW; +/* Return a string describing the meaning of the signal number in SIG, + the result is not translated. */ +extern const char *sigdescr_np (int __sig) __THROW; +# endif + +/* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */ +extern char *__stpcpy (char *__restrict __dest, const char *__restrict __src) + __THROW __nonnull ((1, 2)); +extern char *stpcpy (char *__restrict __dest, const char *__restrict __src) + __THROW __nonnull ((1, 2)); + +/* Copy no more than N characters of SRC to DEST, returning the address of + the last character written into DEST. */ +extern char *__stpncpy (char *__restrict __dest, + const char *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)); +extern char *stpncpy (char *__restrict __dest, + const char *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)); +#endif + +#ifdef __USE_MISC +/* Copy at most N - 1 characters from SRC to DEST. */ +extern size_t strlcpy (char *__restrict __dest, + const char *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)) __attr_access ((__write_only__, 1, 3)); + +/* Append SRC to DEST, possibly with truncation to keep the total size + below N. */ +extern size_t strlcat (char *__restrict __dest, + const char *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)) __attr_access ((__read_write__, 1, 3)); +#endif + +#ifdef __USE_GNU +/* Compare S1 and S2 as strings holding name & indices/version numbers. */ +extern int strverscmp (const char *__s1, const char *__s2) + __THROW __attribute_pure__ __nonnull ((1, 2)); + +/* Sautee STRING briskly. */ +extern char *strfry (char *__string) __THROW __nonnull ((1)); + +/* Frobnicate N bytes of S. */ +extern void *memfrob (void *__s, size_t __n) __THROW __nonnull ((1)) + __attr_access ((__read_write__, 1, 2)); + +# ifndef basename +/* Return the file name within directory of FILENAME. We don't + declare the function if the `basename' macro is available (defined + in ) which makes the XPG version of this function + available. */ +# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO +extern "C++" char *basename (char *__filename) + __THROW __asm ("basename") __nonnull ((1)); +extern "C++" const char *basename (const char *__filename) + __THROW __asm ("basename") __nonnull ((1)); +# else +extern char *basename (const char *__filename) __THROW __nonnull ((1)); +# endif +# endif +#endif + +#if __GNUC_PREREQ (3,4) +# if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function +/* Functions with security checks. */ +# include +# endif +#endif + +__END_DECLS + +#endif /* string.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ba85b9b7fdb26da70bf7cfc61b533051ba9ba731 GIT binary patch literal 29636 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. */ + +#ifndef _STRINGS_H +#define _STRINGS_H 1 + +#include +#define __need_size_t +#include + +/* Tell the caller that we provide correct C++ prototypes. */ +#if defined __cplusplus && __GNUC_PREREQ (4, 4) +# define __CORRECT_ISO_CPP_STRINGS_H_PROTO +#endif + +__BEGIN_DECLS + +#if defined __USE_MISC || !defined __USE_XOPEN2K8 +/* Compare N bytes of S1 and S2 (same as memcmp). */ +extern int bcmp (const void *__s1, const void *__s2, size_t __n) + __THROW __attribute_pure__ __nonnull ((1, 2)); + +/* Copy N bytes of SRC to DEST (like memmove, but args reversed). */ +extern void bcopy (const void *__src, void *__dest, size_t __n) + __THROW __nonnull ((1, 2)); + +/* Set N bytes of S to 0. */ +extern void bzero (void *__s, size_t __n) __THROW __nonnull ((1)); + +/* Find the first occurrence of C in S (same as strchr). */ +# ifdef __CORRECT_ISO_CPP_STRINGS_H_PROTO +extern "C++" +{ +extern char *index (char *__s, int __c) + __THROW __asm ("index") __attribute_pure__ __nonnull ((1)); +extern const char *index (const char *__s, int __c) + __THROW __asm ("index") __attribute_pure__ __nonnull ((1)); + +# if defined __OPTIMIZE__ +__extern_always_inline char * +index (char *__s, int __c) __THROW +{ + return __builtin_index (__s, __c); +} + +__extern_always_inline const char * +index (const char *__s, int __c) __THROW +{ + return __builtin_index (__s, __c); +} +# endif +} +# else +extern char *index (const char *__s, int __c) + __THROW __attribute_pure__ __nonnull ((1)); +# endif + +/* Find the last occurrence of C in S (same as strrchr). */ +# ifdef __CORRECT_ISO_CPP_STRINGS_H_PROTO +extern "C++" +{ +extern char *rindex (char *__s, int __c) + __THROW __asm ("rindex") __attribute_pure__ __nonnull ((1)); +extern const char *rindex (const char *__s, int __c) + __THROW __asm ("rindex") __attribute_pure__ __nonnull ((1)); + +# if defined __OPTIMIZE__ +__extern_always_inline char * +rindex (char *__s, int __c) __THROW +{ + return __builtin_rindex (__s, __c); +} + +__extern_always_inline const char * +rindex (const char *__s, int __c) __THROW +{ + return __builtin_rindex (__s, __c); +} +# endif +} +# else +extern char *rindex (const char *__s, int __c) + __THROW __attribute_pure__ __nonnull ((1)); +# endif +#endif + +#if defined __USE_MISC || !defined __USE_XOPEN2K8 || defined __USE_XOPEN2K8XSI +/* Return the position of the first bit set in I, or 0 if none are set. + The least-significant bit is position 1, the most-significant 32. */ +extern int ffs (int __i) __THROW __attribute_const__; +#endif + +/* The following two functions are non-standard but necessary for non-32 bit + platforms. */ +# ifdef __USE_MISC +extern int ffsl (long int __l) __THROW __attribute_const__; +__extension__ extern int ffsll (long long int __ll) + __THROW __attribute_const__; +# endif + +/* Compare S1 and S2, ignoring case. */ +extern int strcasecmp (const char *__s1, const char *__s2) + __THROW __attribute_pure__ __nonnull ((1, 2)); + +/* Compare no more than N chars of S1 and S2, ignoring case. */ +extern int strncasecmp (const char *__s1, const char *__s2, size_t __n) + __THROW __attribute_pure__ __nonnull ((1, 2)); + +#ifdef __USE_XOPEN2K8 +/* POSIX.1-2008 extended locale interface (see locale.h). */ +# include + +/* Compare S1 and S2, ignoring case, using collation rules from LOC. */ +extern int strcasecmp_l (const char *__s1, const char *__s2, locale_t __loc) + __THROW __attribute_pure__ __nonnull ((1, 2, 3)); + +/* Compare no more than N chars of S1 and S2, ignoring case, using + collation rules from LOC. */ +extern int strncasecmp_l (const char *__s1, const char *__s2, + size_t __n, locale_t __loc) + __THROW __attribute_pure__ __nonnull ((1, 2, 4)); +#endif + +__END_DECLS + +#if __GNUC_PREREQ (3,4) && __USE_FORTIFY_LEVEL > 0 \ + && defined __fortify_function +/* Functions with security checks. */ +# if defined __USE_MISC || !defined __USE_XOPEN2K8 +# include +# endif +#endif + +#endif /* strings.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..82e29e693e67d72100cf6f1155d85ce274f06a2a GIT binary patch literal 16184 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h new file mode 100644 index 00000000..90c21e27 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h @@ -0,0 +1,723 @@ +/* Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright The GNU Toolchain Authors. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_CDEFS_H +#define _SYS_CDEFS_H 1 + +/* We are almost always included from features.h. */ +#ifndef _FEATURES_H +# include +#endif + +/* The GNU libc does not support any K&R compilers or the traditional mode + of ISO C compilers anymore. Check for some of the combinations not + supported anymore. */ +#if defined __GNUC__ && !defined __STDC__ && !defined __cplusplus +# error "You need a ISO C or C++ conforming compiler to use the glibc headers" +#endif + +/* Some user header file might have defined this before. */ +#undef __P +#undef __PMT + +/* Compilers that lack __has_attribute may object to + #if defined __has_attribute && __has_attribute (...) + even though they do not need to evaluate the right-hand side of the &&. + Similarly for __has_builtin, etc. */ +#if (defined __has_attribute \ + && (!defined __clang_minor__ \ + || 3 < __clang_major__ + (5 <= __clang_minor__))) +# define __glibc_has_attribute(attr) __has_attribute (attr) +#else +# define __glibc_has_attribute(attr) 0 +#endif +#ifdef __has_builtin +# define __glibc_has_builtin(name) __has_builtin (name) +#else +# define __glibc_has_builtin(name) 0 +#endif +#ifdef __has_extension +# define __glibc_has_extension(ext) __has_extension (ext) +#else +# define __glibc_has_extension(ext) 0 +#endif + +#if defined __GNUC__ || defined __clang__ + +/* All functions, except those with callbacks or those that + synchronize memory, are leaf functions. */ +# if __GNUC_PREREQ (4, 6) && !defined _LIBC +# define __LEAF , __leaf__ +# define __LEAF_ATTR __attribute__ ((__leaf__)) +# else +# define __LEAF +# define __LEAF_ATTR +# endif + +/* GCC can always grok prototypes. For C++ programs we add throw() + to help it optimize the function calls. But this only works with + gcc 2.8.x and egcs. For gcc 3.4 and up we even mark C functions + as non-throwing using a function attribute since programs can use + the -fexceptions options for C code as well. */ +# if !defined __cplusplus \ + && (__GNUC_PREREQ (3, 4) || __glibc_has_attribute (__nothrow__)) +# define __THROW __attribute__ ((__nothrow__ __LEAF)) +# define __THROWNL __attribute__ ((__nothrow__)) +# define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct +# define __NTHNL(fct) __attribute__ ((__nothrow__)) fct +# else +# if defined __cplusplus && (__GNUC_PREREQ (2,8) || __clang_major__ >= 4) +# if __cplusplus >= 201103L +# define __THROW noexcept (true) +# else +# define __THROW throw () +# endif +# define __THROWNL __THROW +# define __NTH(fct) __LEAF_ATTR fct __THROW +# define __NTHNL(fct) fct __THROW +# else +# define __THROW +# define __THROWNL +# define __NTH(fct) fct +# define __NTHNL(fct) fct +# endif +# endif + +# if __GNUC_PREREQ (4, 3) || __glibc_has_attribute (__cold__) +# define __COLD __attribute__ ((__cold__)) +# else +# define __COLD +# endif + +#else /* Not GCC or clang. */ + +# if (defined __cplusplus \ + || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) +# define __inline inline +# else +# define __inline /* No inline functions. */ +# endif + +# define __THROW +# define __THROWNL +# define __NTH(fct) fct +# define __COLD + +#endif /* GCC || clang. */ + +/* These two macros are not used in glibc anymore. They are kept here + only because some other projects expect the macros to be defined. */ +#define __P(args) args +#define __PMT(args) args + +/* For these things, GCC behaves the ANSI way normally, + and the non-ANSI way under -traditional. */ + +#define __CONCAT(x,y) x ## y +#define __STRING(x) #x + +/* This is not a typedef so `const __ptr_t' does the right thing. */ +#define __ptr_t void * + + +/* C++ needs to know that types and declarations are C, not C++. */ +#ifdef __cplusplus +# define __BEGIN_DECLS extern "C" { +# define __END_DECLS } +#else +# define __BEGIN_DECLS +# define __END_DECLS +#endif + + +/* Fortify support. */ +#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) +#define __bos0(ptr) __builtin_object_size (ptr, 0) + +/* Use __builtin_dynamic_object_size at _FORTIFY_SOURCE=3 when available. */ +#if __USE_FORTIFY_LEVEL == 3 && (__glibc_clang_prereq (9, 0) \ + || __GNUC_PREREQ (12, 0)) +# define __glibc_objsize0(__o) __builtin_dynamic_object_size (__o, 0) +# define __glibc_objsize(__o) __builtin_dynamic_object_size (__o, 1) +#else +# define __glibc_objsize0(__o) __bos0 (__o) +# define __glibc_objsize(__o) __bos (__o) +#endif + +#if __USE_FORTIFY_LEVEL > 0 +/* Compile time conditions to choose between the regular, _chk and _chk_warn + variants. These conditions should get evaluated to constant and optimized + away. */ + +#define __glibc_safe_len_cond(__l, __s, __osz) ((__l) <= (__osz) / (__s)) +#define __glibc_unsigned_or_positive(__l) \ + ((__typeof (__l)) 0 < (__typeof (__l)) -1 \ + || (__builtin_constant_p (__l) && (__l) > 0)) + +/* Length is known to be safe at compile time if the __L * __S <= __OBJSZ + condition can be folded to a constant and if it is true, or unknown (-1) */ +#define __glibc_safe_or_unknown_len(__l, __s, __osz) \ + ((__builtin_constant_p (__osz) && (__osz) == (__SIZE_TYPE__) -1) \ + || (__glibc_unsigned_or_positive (__l) \ + && __builtin_constant_p (__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), \ + (__s), (__osz))) \ + && __glibc_safe_len_cond ((__SIZE_TYPE__) (__l), (__s), (__osz)))) + +/* Conversely, we know at compile time that the length is unsafe if the + __L * __S <= __OBJSZ condition can be folded to a constant and if it is + false. */ +#define __glibc_unsafe_len(__l, __s, __osz) \ + (__glibc_unsigned_or_positive (__l) \ + && __builtin_constant_p (__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), \ + __s, __osz)) \ + && !__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), __s, __osz)) + +/* Fortify function f. __f_alias, __f_chk and __f_chk_warn must be + declared. */ + +#define __glibc_fortify(f, __l, __s, __osz, ...) \ + (__glibc_safe_or_unknown_len (__l, __s, __osz) \ + ? __ ## f ## _alias (__VA_ARGS__) \ + : (__glibc_unsafe_len (__l, __s, __osz) \ + ? __ ## f ## _chk_warn (__VA_ARGS__, __osz) \ + : __ ## f ## _chk (__VA_ARGS__, __osz))) + +/* Fortify function f, where object size argument passed to f is the number of + elements and not total size. */ + +#define __glibc_fortify_n(f, __l, __s, __osz, ...) \ + (__glibc_safe_or_unknown_len (__l, __s, __osz) \ + ? __ ## f ## _alias (__VA_ARGS__) \ + : (__glibc_unsafe_len (__l, __s, __osz) \ + ? __ ## f ## _chk_warn (__VA_ARGS__, (__osz) / (__s)) \ + : __ ## f ## _chk (__VA_ARGS__, (__osz) / (__s)))) +#endif + +#if __GNUC_PREREQ (4,3) +# define __warnattr(msg) __attribute__((__warning__ (msg))) +# define __errordecl(name, msg) \ + extern void name (void) __attribute__((__error__ (msg))) +#else +# define __warnattr(msg) +# define __errordecl(name, msg) extern void name (void) +#endif + +/* Support for flexible arrays. + Headers that should use flexible arrays only if they're "real" + (e.g. only if they won't affect sizeof()) should test + #if __glibc_c99_flexarr_available. */ +#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L && !defined __HP_cc +# define __flexarr [] +# define __glibc_c99_flexarr_available 1 +#elif __GNUC_PREREQ (2,97) || defined __clang__ +/* GCC 2.97 and clang support C99 flexible array members as an extension, + even when in C89 mode or compiling C++ (any version). */ +# define __flexarr [] +# define __glibc_c99_flexarr_available 1 +#elif defined __GNUC__ +/* Pre-2.97 GCC did not support C99 flexible arrays but did have + an equivalent extension with slightly different notation. */ +# define __flexarr [0] +# define __glibc_c99_flexarr_available 1 +#else +/* Some other non-C99 compiler. Approximate with [1]. */ +# define __flexarr [1] +# define __glibc_c99_flexarr_available 0 +#endif + + +/* __asm__ ("xyz") is used throughout the headers to rename functions + at the assembly language level. This is wrapped by the __REDIRECT + macro, in order to support compilers that can do this some other + way. When compilers don't support asm-names at all, we have to do + preprocessor tricks instead (which don't have exactly the right + semantics, but it's the best we can do). + + Example: + int __REDIRECT(setpgrp, (__pid_t pid, __pid_t pgrp), setpgid); */ + +#if (defined __GNUC__ && __GNUC__ >= 2) || (__clang_major__ >= 4) + +# define __REDIRECT(name, proto, alias) name proto __asm__ (__ASMNAME (#alias)) +# ifdef __cplusplus +# define __REDIRECT_NTH(name, proto, alias) \ + name proto __THROW __asm__ (__ASMNAME (#alias)) +# define __REDIRECT_NTHNL(name, proto, alias) \ + name proto __THROWNL __asm__ (__ASMNAME (#alias)) +# else +# define __REDIRECT_NTH(name, proto, alias) \ + name proto __asm__ (__ASMNAME (#alias)) __THROW +# define __REDIRECT_NTHNL(name, proto, alias) \ + name proto __asm__ (__ASMNAME (#alias)) __THROWNL +# endif +# define __ASMNAME(cname) __ASMNAME2 (__USER_LABEL_PREFIX__, cname) +# define __ASMNAME2(prefix, cname) __STRING (prefix) cname + +#ifndef __REDIRECT_FORTIFY +#define __REDIRECT_FORTIFY __REDIRECT +#endif + +#ifndef __REDIRECT_FORTIFY_NTH +#define __REDIRECT_FORTIFY_NTH __REDIRECT_NTH +#endif + +/* +#elif __SOME_OTHER_COMPILER__ + +# define __REDIRECT(name, proto, alias) name proto; \ + _Pragma("let " #name " = " #alias) +*/ +#endif + +/* GCC and clang have various useful declarations that can be made with + the '__attribute__' syntax. All of the ways we use this do fine if + they are omitted for compilers that don't understand it. */ +#if !(defined __GNUC__ || defined __clang__) +# define __attribute__(xyz) /* Ignore */ +#endif + +/* At some point during the gcc 2.96 development the `malloc' attribute + for functions was introduced. We don't want to use it unconditionally + (although this would be possible) since it generates warnings. */ +#if __GNUC_PREREQ (2,96) || __glibc_has_attribute (__malloc__) +# define __attribute_malloc__ __attribute__ ((__malloc__)) +#else +# define __attribute_malloc__ /* Ignore */ +#endif + +/* Tell the compiler which arguments to an allocation function + indicate the size of the allocation. */ +#if __GNUC_PREREQ (4, 3) +# define __attribute_alloc_size__(params) \ + __attribute__ ((__alloc_size__ params)) +#else +# define __attribute_alloc_size__(params) /* Ignore. */ +#endif + +/* Tell the compiler which argument to an allocation function + indicates the alignment of the allocation. */ +#if __GNUC_PREREQ (4, 9) || __glibc_has_attribute (__alloc_align__) +# define __attribute_alloc_align__(param) \ + __attribute__ ((__alloc_align__ param)) +#else +# define __attribute_alloc_align__(param) /* Ignore. */ +#endif + +/* At some point during the gcc 2.96 development the `pure' attribute + for functions was introduced. We don't want to use it unconditionally + (although this would be possible) since it generates warnings. */ +#if __GNUC_PREREQ (2,96) || __glibc_has_attribute (__pure__) +# define __attribute_pure__ __attribute__ ((__pure__)) +#else +# define __attribute_pure__ /* Ignore */ +#endif + +/* This declaration tells the compiler that the value is constant. */ +#if __GNUC_PREREQ (2,5) || __glibc_has_attribute (__const__) +# define __attribute_const__ __attribute__ ((__const__)) +#else +# define __attribute_const__ /* Ignore */ +#endif + +#if __GNUC_PREREQ (2,7) || __glibc_has_attribute (__unused__) +# define __attribute_maybe_unused__ __attribute__ ((__unused__)) +#else +# define __attribute_maybe_unused__ /* Ignore */ +#endif + +/* At some point during the gcc 3.1 development the `used' attribute + for functions was introduced. We don't want to use it unconditionally + (although this would be possible) since it generates warnings. */ +#if __GNUC_PREREQ (3,1) || __glibc_has_attribute (__used__) +# define __attribute_used__ __attribute__ ((__used__)) +# define __attribute_noinline__ __attribute__ ((__noinline__)) +#else +# define __attribute_used__ __attribute__ ((__unused__)) +# define __attribute_noinline__ /* Ignore */ +#endif + +/* Since version 3.2, gcc allows marking deprecated functions. */ +#if __GNUC_PREREQ (3,2) || __glibc_has_attribute (__deprecated__) +# define __attribute_deprecated__ __attribute__ ((__deprecated__)) +#else +# define __attribute_deprecated__ /* Ignore */ +#endif + +/* Since version 4.5, gcc also allows one to specify the message printed + when a deprecated function is used. clang claims to be gcc 4.2, but + may also support this feature. */ +#if __GNUC_PREREQ (4,5) \ + || __glibc_has_extension (__attribute_deprecated_with_message__) +# define __attribute_deprecated_msg__(msg) \ + __attribute__ ((__deprecated__ (msg))) +#else +# define __attribute_deprecated_msg__(msg) __attribute_deprecated__ +#endif + +/* At some point during the gcc 2.8 development the `format_arg' attribute + for functions was introduced. We don't want to use it unconditionally + (although this would be possible) since it generates warnings. + If several `format_arg' attributes are given for the same function, in + gcc-3.0 and older, all but the last one are ignored. In newer gccs, + all designated arguments are considered. */ +#if __GNUC_PREREQ (2,8) || __glibc_has_attribute (__format_arg__) +# define __attribute_format_arg__(x) __attribute__ ((__format_arg__ (x))) +#else +# define __attribute_format_arg__(x) /* Ignore */ +#endif + +/* At some point during the gcc 2.97 development the `strfmon' format + attribute for functions was introduced. We don't want to use it + unconditionally (although this would be possible) since it + generates warnings. */ +#if __GNUC_PREREQ (2,97) || __glibc_has_attribute (__format__) +# define __attribute_format_strfmon__(a,b) \ + __attribute__ ((__format__ (__strfmon__, a, b))) +#else +# define __attribute_format_strfmon__(a,b) /* Ignore */ +#endif + +/* The nonnull function attribute marks pointer parameters that + must not be NULL. This has the name __nonnull in glibc, + and __attribute_nonnull__ in files shared with Gnulib to avoid + collision with a different __nonnull in DragonFlyBSD 5.9. */ +#ifndef __attribute_nonnull__ +# if __GNUC_PREREQ (3,3) || __glibc_has_attribute (__nonnull__) +# define __attribute_nonnull__(params) __attribute__ ((__nonnull__ params)) +# else +# define __attribute_nonnull__(params) +# endif +#endif +#ifndef __nonnull +# define __nonnull(params) __attribute_nonnull__ (params) +#endif + +/* The returns_nonnull function attribute marks the return type of the function + as always being non-null. */ +#ifndef __returns_nonnull +# if __GNUC_PREREQ (4, 9) || __glibc_has_attribute (__returns_nonnull__) +# define __returns_nonnull __attribute__ ((__returns_nonnull__)) +# else +# define __returns_nonnull +# endif +#endif + +/* If fortification mode, we warn about unused results of certain + function calls which can lead to problems. */ +#if __GNUC_PREREQ (3,4) || __glibc_has_attribute (__warn_unused_result__) +# define __attribute_warn_unused_result__ \ + __attribute__ ((__warn_unused_result__)) +# if defined __USE_FORTIFY_LEVEL && __USE_FORTIFY_LEVEL > 0 +# define __wur __attribute_warn_unused_result__ +# endif +#else +# define __attribute_warn_unused_result__ /* empty */ +#endif +#ifndef __wur +# define __wur /* Ignore */ +#endif + +/* Forces a function to be always inlined. */ +#if __GNUC_PREREQ (3,2) || __glibc_has_attribute (__always_inline__) +/* The Linux kernel defines __always_inline in stddef.h (283d7573), and + it conflicts with this definition. Therefore undefine it first to + allow either header to be included first. */ +# undef __always_inline +# define __always_inline __inline __attribute__ ((__always_inline__)) +#else +# undef __always_inline +# define __always_inline __inline +#endif + +/* Associate error messages with the source location of the call site rather + than with the source location inside the function. */ +#if __GNUC_PREREQ (4,3) || __glibc_has_attribute (__artificial__) +# define __attribute_artificial__ __attribute__ ((__artificial__)) +#else +# define __attribute_artificial__ /* Ignore */ +#endif + +/* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 + inline semantics, unless -fgnu89-inline is used. Using __GNUC_STDC_INLINE__ + or __GNUC_GNU_INLINE is not a good enough check for gcc because gcc versions + older than 4.3 may define these macros and still not guarantee GNU inlining + semantics. + + clang++ identifies itself as gcc-4.2, but has support for GNU inlining + semantics, that can be checked for by using the __GNUC_STDC_INLINE_ and + __GNUC_GNU_INLINE__ macro definitions. */ +#if (!defined __cplusplus || __GNUC_PREREQ (4,3) \ + || (defined __clang__ && (defined __GNUC_STDC_INLINE__ \ + || defined __GNUC_GNU_INLINE__))) +# if defined __GNUC_STDC_INLINE__ || defined __cplusplus +# define __extern_inline extern __inline __attribute__ ((__gnu_inline__)) +# define __extern_always_inline \ + extern __always_inline __attribute__ ((__gnu_inline__)) +# else +# define __extern_inline extern __inline +# define __extern_always_inline extern __always_inline +# endif +#endif + +#ifdef __extern_always_inline +# define __fortify_function __extern_always_inline __attribute_artificial__ +#endif + +/* GCC 4.3 and above allow passing all anonymous arguments of an + __extern_always_inline function to some other vararg function. */ +#if __GNUC_PREREQ (4,3) +# define __va_arg_pack() __builtin_va_arg_pack () +# define __va_arg_pack_len() __builtin_va_arg_pack_len () +#endif + +/* It is possible to compile containing GCC extensions even if GCC is + run in pedantic mode if the uses are carefully marked using the + `__extension__' keyword. But this is not generally available before + version 2.8. */ +#if !(__GNUC_PREREQ (2,8) || defined __clang__) +# define __extension__ /* Ignore */ +#endif + +/* __restrict is known in EGCS 1.2 and above, and in clang. + It works also in C++ mode (outside of arrays), but only when spelled + as '__restrict', not 'restrict'. */ +#if !(__GNUC_PREREQ (2,92) || __clang_major__ >= 3) +# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L +# define __restrict restrict +# else +# define __restrict /* Ignore */ +# endif +#endif + +/* ISO C99 also allows to declare arrays as non-overlapping. The syntax is + array_name[restrict] + GCC 3.1 and clang support this. + This syntax is not usable in C++ mode. */ +#if (__GNUC_PREREQ (3,1) || __clang_major__ >= 3) && !defined __cplusplus +# define __restrict_arr __restrict +#else +# ifdef __GNUC__ +# define __restrict_arr /* Not supported in old GCC. */ +# else +# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L +# define __restrict_arr restrict +# else +/* Some other non-C99 compiler. */ +# define __restrict_arr /* Not supported. */ +# endif +# endif +#endif + +#if (__GNUC__ >= 3) || __glibc_has_builtin (__builtin_expect) +# define __glibc_unlikely(cond) __builtin_expect ((cond), 0) +# define __glibc_likely(cond) __builtin_expect ((cond), 1) +#else +# define __glibc_unlikely(cond) (cond) +# define __glibc_likely(cond) (cond) +#endif + +#if (!defined _Noreturn \ + && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \ + && !(__GNUC_PREREQ (4,7) \ + || (3 < __clang_major__ + (5 <= __clang_minor__)))) +# if __GNUC_PREREQ (2,8) +# define _Noreturn __attribute__ ((__noreturn__)) +# else +# define _Noreturn +# endif +#endif + +#if __GNUC_PREREQ (8, 0) +/* Describes a char array whose address can safely be passed as the first + argument to strncpy and strncat, as the char array is not necessarily + a NUL-terminated string. */ +# define __attribute_nonstring__ __attribute__ ((__nonstring__)) +#else +# define __attribute_nonstring__ +#endif + +/* Undefine (also defined in libc-symbols.h). */ +#undef __attribute_copy__ +#if __GNUC_PREREQ (9, 0) +/* Copies attributes from the declaration or type referenced by + the argument. */ +# define __attribute_copy__(arg) __attribute__ ((__copy__ (arg))) +#else +# define __attribute_copy__(arg) +#endif + +#if (!defined _Static_assert && !defined __cplusplus \ + && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \ + && (!(__GNUC_PREREQ (4, 6) || __clang_major__ >= 4) \ + || defined __STRICT_ANSI__)) +# define _Static_assert(expr, diagnostic) \ + extern int (*__Static_assert_function (void)) \ + [!!sizeof (struct { int __error_if_negative: (expr) ? 2 : -1; })] +#endif + +/* Gnulib avoids including these, as they don't work on non-glibc or + older glibc platforms. */ +#ifndef __GNULIB_CDEFS +# include +# include +#endif + +#if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# ifdef __REDIRECT + +/* Alias name defined automatically. */ +# define __LDBL_REDIR(name, proto) ... unused__ldbl_redir +# define __LDBL_REDIR_DECL(name) \ + extern __typeof (name) name __asm (__ASMNAME ("__" #name "ieee128")); +# define __REDIRECT_LDBL(name, proto, alias) \ + name proto __asm (__ASMNAME ("__" #alias "ieee128")) + +/* Alias name defined automatically, with leading underscores. */ +# define __LDBL_REDIR2_DECL(name) \ + extern __typeof (__##name) __##name \ + __asm (__ASMNAME ("__" #name "ieee128")); + +/* Alias name defined manually. */ +# define __LDBL_REDIR1(name, proto, alias) ... unused__ldbl_redir1 +# define __LDBL_REDIR1_DECL(name, alias) \ + extern __typeof (name) name __asm (__ASMNAME (#alias)); + +# define __LDBL_REDIR1_NTH(name, proto, alias) \ + __REDIRECT_NTH (name, proto, alias) +# define __REDIRECT_NTH_LDBL(name, proto, alias) \ + __LDBL_REDIR1_NTH (name, proto, __##alias##ieee128) + +/* Unused. */ +# define __LDBL_REDIR_NTH(name, proto) ... unused__ldbl_redir_nth + +# else +_Static_assert (0, "IEEE 128-bits long double requires redirection on this platform"); +# endif +#elif defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH +# define __LDBL_COMPAT 1 +# ifdef __REDIRECT +# define __LDBL_REDIR1(name, proto, alias) __REDIRECT (name, proto, alias) +# define __LDBL_REDIR(name, proto) \ + __LDBL_REDIR1 (name, proto, __nldbl_##name) +# define __LDBL_REDIR1_NTH(name, proto, alias) __REDIRECT_NTH (name, proto, alias) +# define __LDBL_REDIR_NTH(name, proto) \ + __LDBL_REDIR1_NTH (name, proto, __nldbl_##name) +# define __LDBL_REDIR2_DECL(name) \ + extern __typeof (__##name) __##name __asm (__ASMNAME ("__nldbl___" #name)); +# define __LDBL_REDIR1_DECL(name, alias) \ + extern __typeof (name) name __asm (__ASMNAME (#alias)); +# define __LDBL_REDIR_DECL(name) \ + extern __typeof (name) name __asm (__ASMNAME ("__nldbl_" #name)); +# define __REDIRECT_LDBL(name, proto, alias) \ + __LDBL_REDIR1 (name, proto, __nldbl_##alias) +# define __REDIRECT_NTH_LDBL(name, proto, alias) \ + __LDBL_REDIR1_NTH (name, proto, __nldbl_##alias) +# endif +#endif +#if (!defined __LDBL_COMPAT && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0) \ + || !defined __REDIRECT +# define __LDBL_REDIR1(name, proto, alias) name proto +# define __LDBL_REDIR(name, proto) name proto +# define __LDBL_REDIR1_NTH(name, proto, alias) name proto __THROW +# define __LDBL_REDIR_NTH(name, proto) name proto __THROW +# define __LDBL_REDIR2_DECL(name) +# define __LDBL_REDIR_DECL(name) +# ifdef __REDIRECT +# define __REDIRECT_LDBL(name, proto, alias) __REDIRECT (name, proto, alias) +# define __REDIRECT_NTH_LDBL(name, proto, alias) \ + __REDIRECT_NTH (name, proto, alias) +# endif +#endif + +/* __glibc_macro_warning (MESSAGE) issues warning MESSAGE. This is + intended for use in preprocessor macros. + + Note: MESSAGE must be a _single_ string; concatenation of string + literals is not supported. */ +#if __GNUC_PREREQ (4,8) || __glibc_clang_prereq (3,5) +# define __glibc_macro_warning1(message) _Pragma (#message) +# define __glibc_macro_warning(message) \ + __glibc_macro_warning1 (GCC warning message) +#else +# define __glibc_macro_warning(msg) +#endif + +/* Generic selection (ISO C11) is a C-only feature, available in GCC + since version 4.9. Previous versions do not provide generic + selection, even though they might set __STDC_VERSION__ to 201112L, + when in -std=c11 mode. Thus, we must check for !defined __GNUC__ + when testing __STDC_VERSION__ for generic selection support. + On the other hand, Clang also defines __GNUC__, so a clang-specific + check is required to enable the use of generic selection. */ +#if !defined __cplusplus \ + && (__GNUC_PREREQ (4, 9) \ + || __glibc_has_extension (c_generic_selections) \ + || (!defined __GNUC__ && defined __STDC_VERSION__ \ + && __STDC_VERSION__ >= 201112L)) +# define __HAVE_GENERIC_SELECTION 1 +#else +# define __HAVE_GENERIC_SELECTION 0 +#endif + +#if __GNUC_PREREQ (10, 0) +/* Designates a 1-based positional argument ref-index of pointer type + that can be used to access size-index elements of the pointed-to + array according to access mode, or at least one element when + size-index is not provided: + access (access-mode, [, ]) */ +# define __attr_access(x) __attribute__ ((__access__ x)) +/* For _FORTIFY_SOURCE == 3 we use __builtin_dynamic_object_size, which may + use the access attribute to get object sizes from function definition + arguments, so we can't use them on functions we fortify. Drop the object + size hints for such functions. */ +# if __USE_FORTIFY_LEVEL == 3 +# define __fortified_attr_access(a, o, s) __attribute__ ((__access__ (a, o))) +# else +# define __fortified_attr_access(a, o, s) __attr_access ((a, o, s)) +# endif +# if __GNUC_PREREQ (11, 0) +# define __attr_access_none(argno) __attribute__ ((__access__ (__none__, argno))) +# else +# define __attr_access_none(argno) +# endif +#else +# define __fortified_attr_access(a, o, s) +# define __attr_access(x) +# define __attr_access_none(argno) +#endif + +#if __GNUC_PREREQ (11, 0) +/* Designates dealloc as a function to call to deallocate objects + allocated by the declared function. */ +# define __attr_dealloc(dealloc, argno) \ + __attribute__ ((__malloc__ (dealloc, argno))) +# define __attr_dealloc_free __attr_dealloc (__builtin_free, 1) +#else +# define __attr_dealloc(dealloc, argno) +# define __attr_dealloc_free +#endif + +/* Specify that a function such as setjmp or vfork may return + twice. */ +#if __GNUC_PREREQ (4, 1) +# define __attribute_returns_twice__ __attribute__ ((__returns_twice__)) +#else +# define __attribute_returns_twice__ /* Ignore. */ +#endif + +#endif /* sys/cdefs.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..2f4196ac9c0bf83559bb1353e9978056671d06e9 GIT binary patch literal 21652 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 a?9Gx|v?uAM4}|>Vc=K@qbp{(^w*UVz5k>_7 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h new file mode 100644 index 00000000..a715c089 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h @@ -0,0 +1,155 @@ +/* `fd_set' type and related macros, and `select'/`pselect' declarations. + Copyright (C) 1996-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* POSIX 1003.1g: 6.2 Select from File Descriptor Sets */ + +#ifndef _SYS_SELECT_H +#define _SYS_SELECT_H 1 + +#include + +/* Get definition of needed basic types. */ +#include + +/* Get __FD_* definitions. */ +#include + +/* Get sigset_t. */ +#include + +/* Get definition of timer specification structures. */ +#include +#include +#ifdef __USE_XOPEN2K +# include +#endif + +#ifndef __suseconds_t_defined +typedef __suseconds_t suseconds_t; +# define __suseconds_t_defined +#endif + + +/* The fd_set member is required to be an array of longs. */ +typedef long int __fd_mask; + +/* Some versions of define this macros. */ +#undef __NFDBITS +/* It's easier to assume 8-bit bytes than to get CHAR_BIT. */ +#define __NFDBITS (8 * (int) sizeof (__fd_mask)) +#define __FD_ELT(d) ((d) / __NFDBITS) +#define __FD_MASK(d) ((__fd_mask) (1UL << ((d) % __NFDBITS))) + +/* fd_set for select and pselect. */ +typedef struct + { + /* XPG4.2 requires this member name. Otherwise avoid the name + from the global namespace. */ +#ifdef __USE_XOPEN + __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS]; +# define __FDS_BITS(set) ((set)->fds_bits) +#else + __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS]; +# define __FDS_BITS(set) ((set)->__fds_bits) +#endif + } fd_set; + +/* Maximum number of file descriptors in `fd_set'. */ +#define FD_SETSIZE __FD_SETSIZE + +#ifdef __USE_MISC +/* Sometimes the fd_set member is assumed to have this type. */ +typedef __fd_mask fd_mask; + +/* Number of bits per word of `fd_set' (some code assumes this is 32). */ +# define NFDBITS __NFDBITS +#endif + + +/* Access macros for `fd_set'. */ +#define FD_SET(fd, fdsetp) __FD_SET (fd, fdsetp) +#define FD_CLR(fd, fdsetp) __FD_CLR (fd, fdsetp) +#define FD_ISSET(fd, fdsetp) __FD_ISSET (fd, fdsetp) +#define FD_ZERO(fdsetp) __FD_ZERO (fdsetp) + + +__BEGIN_DECLS + +/* Check the first NFDS descriptors each in READFDS (if not NULL) for read + readiness, in WRITEFDS (if not NULL) for write readiness, and in EXCEPTFDS + (if not NULL) for exceptional conditions. If TIMEOUT is not NULL, time out + after waiting the interval specified therein. Returns the number of ready + descriptors, or -1 for errors. + + This function is a cancellation point and therefore not marked with + __THROW. */ +#ifndef __USE_TIME_BITS64 +extern int select (int __nfds, fd_set *__restrict __readfds, + fd_set *__restrict __writefds, + fd_set *__restrict __exceptfds, + struct timeval *__restrict __timeout); +#else +# ifdef __REDIRECT +extern int __REDIRECT (select, + (int __nfds, fd_set *__restrict __readfds, + fd_set *__restrict __writefds, + fd_set *__restrict __exceptfds, + struct timeval *__restrict __timeout), + __select64); +# else +# define select __select64 +# endif +#endif + +#ifdef __USE_XOPEN2K +/* Same as above only that the TIMEOUT value is given with higher + resolution and a sigmask which is been set temporarily. This version + should be used. + + This function is a cancellation point and therefore not marked with + __THROW. */ +# ifndef __USE_TIME_BITS64 +extern int pselect (int __nfds, fd_set *__restrict __readfds, + fd_set *__restrict __writefds, + fd_set *__restrict __exceptfds, + const struct timespec *__restrict __timeout, + const __sigset_t *__restrict __sigmask); +# else +# ifdef __REDIRECT +extern int __REDIRECT (pselect, + (int __nfds, fd_set *__restrict __readfds, + fd_set *__restrict __writefds, + fd_set *__restrict __exceptfds, + const struct timespec *__restrict __timeout, + const __sigset_t *__restrict __sigmask), + __pselect64); +# else +# define pselect __pselect64 +# endif +# endif +#endif + + +/* Define some inlines helping to catch common problems. */ +#if __USE_FORTIFY_LEVEL > 0 && defined __GNUC__ +# include +#endif + +__END_DECLS + +#endif /* sys/select.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..2198942fd0bfbecede4cb8af0aa80d9a315e80c0 GIT binary patch literal 15822 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. */ + +/* + * POSIX Standard: 2.6 Primitive System Data Types + */ + +#ifndef _SYS_TYPES_H +#define _SYS_TYPES_H 1 + +#include + +__BEGIN_DECLS + +#include + +#ifdef __USE_MISC +# ifndef __u_char_defined +typedef __u_char u_char; +typedef __u_short u_short; +typedef __u_int u_int; +typedef __u_long u_long; +typedef __quad_t quad_t; +typedef __u_quad_t u_quad_t; +typedef __fsid_t fsid_t; +# define __u_char_defined +# endif +typedef __loff_t loff_t; +#endif + +#ifndef __ino_t_defined +# ifndef __USE_FILE_OFFSET64 +typedef __ino_t ino_t; +# else +typedef __ino64_t ino_t; +# endif +# define __ino_t_defined +#endif +#if defined __USE_LARGEFILE64 && !defined __ino64_t_defined +typedef __ino64_t ino64_t; +# define __ino64_t_defined +#endif + +#ifndef __dev_t_defined +typedef __dev_t dev_t; +# define __dev_t_defined +#endif + +#ifndef __gid_t_defined +typedef __gid_t gid_t; +# define __gid_t_defined +#endif + +#ifndef __mode_t_defined +typedef __mode_t mode_t; +# define __mode_t_defined +#endif + +#ifndef __nlink_t_defined +typedef __nlink_t nlink_t; +# define __nlink_t_defined +#endif + +#ifndef __uid_t_defined +typedef __uid_t uid_t; +# define __uid_t_defined +#endif + +#ifndef __off_t_defined +# ifndef __USE_FILE_OFFSET64 +typedef __off_t off_t; +# else +typedef __off64_t off_t; +# endif +# define __off_t_defined +#endif +#if defined __USE_LARGEFILE64 && !defined __off64_t_defined +typedef __off64_t off64_t; +# define __off64_t_defined +#endif + +#ifndef __pid_t_defined +typedef __pid_t pid_t; +# define __pid_t_defined +#endif + +#if (defined __USE_XOPEN || defined __USE_XOPEN2K8) \ + && !defined __id_t_defined +typedef __id_t id_t; +# define __id_t_defined +#endif + +#ifndef __ssize_t_defined +typedef __ssize_t ssize_t; +# define __ssize_t_defined +#endif + +#ifdef __USE_MISC +# ifndef __daddr_t_defined +typedef __daddr_t daddr_t; +typedef __caddr_t caddr_t; +# define __daddr_t_defined +# endif +#endif + +#if (defined __USE_MISC || defined __USE_XOPEN) && !defined __key_t_defined +typedef __key_t key_t; +# define __key_t_defined +#endif + +#if defined __USE_XOPEN || defined __USE_XOPEN2K8 +# include +#endif +#include +#include +#include + +#ifdef __USE_XOPEN +# ifndef __useconds_t_defined +typedef __useconds_t useconds_t; +# define __useconds_t_defined +# endif +# ifndef __suseconds_t_defined +typedef __suseconds_t suseconds_t; +# define __suseconds_t_defined +# endif +#endif + +#define __need_size_t +#include + +#ifdef __USE_MISC +/* Old compatibility names for C types. */ +typedef unsigned long int ulong; +typedef unsigned short int ushort; +typedef unsigned int uint; +#endif + +/* These size-specific names are used by some of the inet code. */ + +#include + +/* These were defined by ISO C without the first `_'. */ +typedef __uint8_t u_int8_t; +typedef __uint16_t u_int16_t; +typedef __uint32_t u_int32_t; +typedef __uint64_t u_int64_t; + +#if __GNUC_PREREQ (2, 7) +typedef int register_t __attribute__ ((__mode__ (__word__))); +#else +typedef int register_t; +#endif + +/* Some code from BIND tests this macro to see if the types above are + defined. */ +#define __BIT_TYPES_DEFINED__ 1 + + +#ifdef __USE_MISC +/* In BSD is expected to define BYTE_ORDER. */ +# include + +/* It also defines `fd_set' and the FD_* macros for `select'. */ +# include +#endif /* Use misc. */ + + +#if (defined __USE_UNIX98 || defined __USE_XOPEN2K8) \ + && !defined __blksize_t_defined +typedef __blksize_t blksize_t; +# define __blksize_t_defined +#endif + +/* Types from the Large File Support interface. */ +#ifndef __USE_FILE_OFFSET64 +# ifndef __blkcnt_t_defined +typedef __blkcnt_t blkcnt_t; /* Type to count number of disk blocks. */ +# define __blkcnt_t_defined +# endif +# ifndef __fsblkcnt_t_defined +typedef __fsblkcnt_t fsblkcnt_t; /* Type to count file system blocks. */ +# define __fsblkcnt_t_defined +# endif +# ifndef __fsfilcnt_t_defined +typedef __fsfilcnt_t fsfilcnt_t; /* Type to count file system inodes. */ +# define __fsfilcnt_t_defined +# endif +#else +# ifndef __blkcnt_t_defined +typedef __blkcnt64_t blkcnt_t; /* Type to count number of disk blocks. */ +# define __blkcnt_t_defined +# endif +# ifndef __fsblkcnt_t_defined +typedef __fsblkcnt64_t fsblkcnt_t; /* Type to count file system blocks. */ +# define __fsblkcnt_t_defined +# endif +# ifndef __fsfilcnt_t_defined +typedef __fsfilcnt64_t fsfilcnt_t; /* Type to count file system inodes. */ +# define __fsfilcnt_t_defined +# endif +#endif + +#ifdef __USE_LARGEFILE64 +typedef __blkcnt64_t blkcnt64_t; /* Type to count number of disk blocks. */ +typedef __fsblkcnt64_t fsblkcnt64_t; /* Type to count file system blocks. */ +typedef __fsfilcnt64_t fsfilcnt64_t; /* Type to count file system inodes. */ +#endif + + +/* Now add the thread types. */ +#if defined __USE_POSIX199506 || defined __USE_UNIX98 +# include +#endif + +__END_DECLS + +#endif /* sys/types.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9176a13a2f441934a4a37e453fb0a474372cf31d GIT binary patch literal 18237 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 I=t)riA7!ywKL7v# literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h new file mode 100644 index 00000000..e4bf82db --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h @@ -0,0 +1,262 @@ +/* Copyright (C) 2001-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _SYS_UCONTEXT_H +#define _SYS_UCONTEXT_H 1 + +#include + +#include +#include +#include + + +#ifdef __USE_MISC +# define __ctx(fld) fld +#else +# define __ctx(fld) __ ## fld +#endif + +#ifdef __x86_64__ + +/* Type for general register. */ +__extension__ typedef long long int greg_t; + +/* Number of general registers. */ +#define __NGREG 23 +#ifdef __USE_MISC +# define NGREG __NGREG +#endif + +/* Container for all general registers. */ +typedef greg_t gregset_t[__NGREG]; + +#ifdef __USE_GNU +/* Number of each register in the `gregset_t' array. */ +enum +{ + REG_R8 = 0, +# define REG_R8 REG_R8 + REG_R9, +# define REG_R9 REG_R9 + REG_R10, +# define REG_R10 REG_R10 + REG_R11, +# define REG_R11 REG_R11 + REG_R12, +# define REG_R12 REG_R12 + REG_R13, +# define REG_R13 REG_R13 + REG_R14, +# define REG_R14 REG_R14 + REG_R15, +# define REG_R15 REG_R15 + REG_RDI, +# define REG_RDI REG_RDI + REG_RSI, +# define REG_RSI REG_RSI + REG_RBP, +# define REG_RBP REG_RBP + REG_RBX, +# define REG_RBX REG_RBX + REG_RDX, +# define REG_RDX REG_RDX + REG_RAX, +# define REG_RAX REG_RAX + REG_RCX, +# define REG_RCX REG_RCX + REG_RSP, +# define REG_RSP REG_RSP + REG_RIP, +# define REG_RIP REG_RIP + REG_EFL, +# define REG_EFL REG_EFL + REG_CSGSFS, /* Actually short cs, gs, fs, __pad0. */ +# define REG_CSGSFS REG_CSGSFS + REG_ERR, +# define REG_ERR REG_ERR + REG_TRAPNO, +# define REG_TRAPNO REG_TRAPNO + REG_OLDMASK, +# define REG_OLDMASK REG_OLDMASK + REG_CR2 +# define REG_CR2 REG_CR2 +}; +#endif + +struct _libc_fpxreg +{ + unsigned short int __ctx(significand)[4]; + unsigned short int __ctx(exponent); + unsigned short int __glibc_reserved1[3]; +}; + +struct _libc_xmmreg +{ + __uint32_t __ctx(element)[4]; +}; + +struct _libc_fpstate +{ + /* 64-bit FXSAVE format. */ + __uint16_t __ctx(cwd); + __uint16_t __ctx(swd); + __uint16_t __ctx(ftw); + __uint16_t __ctx(fop); + __uint64_t __ctx(rip); + __uint64_t __ctx(rdp); + __uint32_t __ctx(mxcsr); + __uint32_t __ctx(mxcr_mask); + struct _libc_fpxreg _st[8]; + struct _libc_xmmreg _xmm[16]; + __uint32_t __glibc_reserved1[24]; +}; + +/* Structure to describe FPU registers. */ +typedef struct _libc_fpstate *fpregset_t; + +/* Context to describe whole processor state. */ +typedef struct + { + gregset_t __ctx(gregs); + /* Note that fpregs is a pointer. */ + fpregset_t __ctx(fpregs); + __extension__ unsigned long long __reserved1 [8]; +} mcontext_t; + +/* Userlevel context. */ +typedef struct ucontext_t + { + unsigned long int __ctx(uc_flags); + struct ucontext_t *uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; + sigset_t uc_sigmask; + struct _libc_fpstate __fpregs_mem; + __extension__ unsigned long long int __ssp[4]; + } ucontext_t; + +#else /* !__x86_64__ */ + +/* Type for general register. */ +typedef int greg_t; + +/* Number of general registers. */ +#define __NGREG 19 +#ifdef __USE_MISC +# define NGREG __NGREG +#endif + +/* Container for all general registers. */ +typedef greg_t gregset_t[__NGREG]; + +#ifdef __USE_GNU +/* Number of each register is the `gregset_t' array. */ +enum +{ + REG_GS = 0, +# define REG_GS REG_GS + REG_FS, +# define REG_FS REG_FS + REG_ES, +# define REG_ES REG_ES + REG_DS, +# define REG_DS REG_DS + REG_EDI, +# define REG_EDI REG_EDI + REG_ESI, +# define REG_ESI REG_ESI + REG_EBP, +# define REG_EBP REG_EBP + REG_ESP, +# define REG_ESP REG_ESP + REG_EBX, +# define REG_EBX REG_EBX + REG_EDX, +# define REG_EDX REG_EDX + REG_ECX, +# define REG_ECX REG_ECX + REG_EAX, +# define REG_EAX REG_EAX + REG_TRAPNO, +# define REG_TRAPNO REG_TRAPNO + REG_ERR, +# define REG_ERR REG_ERR + REG_EIP, +# define REG_EIP REG_EIP + REG_CS, +# define REG_CS REG_CS + REG_EFL, +# define REG_EFL REG_EFL + REG_UESP, +# define REG_UESP REG_UESP + REG_SS +# define REG_SS REG_SS +}; +#endif + +/* Definitions taken from the kernel headers. */ +struct _libc_fpreg +{ + unsigned short int __ctx(significand)[4]; + unsigned short int __ctx(exponent); +}; + +struct _libc_fpstate +{ + unsigned long int __ctx(cw); + unsigned long int __ctx(sw); + unsigned long int __ctx(tag); + unsigned long int __ctx(ipoff); + unsigned long int __ctx(cssel); + unsigned long int __ctx(dataoff); + unsigned long int __ctx(datasel); + struct _libc_fpreg _st[8]; + unsigned long int __ctx(status); +}; + +/* Structure to describe FPU registers. */ +typedef struct _libc_fpstate *fpregset_t; + +/* Context to describe whole processor state. */ +typedef struct + { + gregset_t __ctx(gregs); + /* Due to Linux's history we have to use a pointer here. The SysV/i386 + ABI requires a struct with the values. */ + fpregset_t __ctx(fpregs); + unsigned long int __ctx(oldmask); + unsigned long int __ctx(cr2); + } mcontext_t; + +/* Userlevel context. */ +typedef struct ucontext_t + { + unsigned long int __ctx(uc_flags); + struct ucontext_t *uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; + sigset_t uc_sigmask; + struct _libc_fpstate __fpregs_mem; + unsigned long int __ssp[4]; + } ucontext_t; + +#endif /* !__x86_64__ */ + +#undef __ctx + +#endif /* sys/ucontext.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..cd3d087a9e2c5ff1bf8130a5afb3f8c71ba0b380 GIT binary patch literal 16457 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h new file mode 100644 index 00000000..859d9668 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h @@ -0,0 +1,455 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99 Standard: 7.23 Date and time + */ + +#ifndef _TIME_H +#define _TIME_H 1 + +#include + +#define __need_size_t +#define __need_NULL +#include + +/* This defines CLOCKS_PER_SEC, which is the number of processor clock + ticks per second, and possibly a number of other constants. */ +#include + +/* Many of the typedefs and structs whose official home is this header + may also need to be defined by other headers. */ +#include +#include +#include + +#if defined __USE_POSIX199309 || defined __USE_ISOC11 +# include +#endif + +#ifdef __USE_POSIX199309 +# include +# include +# include +struct sigevent; +#endif + +#ifdef __USE_XOPEN2K +# ifndef __pid_t_defined +typedef __pid_t pid_t; +# define __pid_t_defined +# endif +#endif + +#ifdef __USE_XOPEN2K8 +# include +#endif + +#ifdef __USE_ISOC11 +/* Time base values for timespec_get. */ +# define TIME_UTC 1 +#endif + +__BEGIN_DECLS + +/* Time used by the program so far (user time + system time). + The result / CLOCKS_PER_SEC is program time in seconds. */ +extern clock_t clock (void) __THROW; + +#ifndef __USE_TIME_BITS64 +/* Return the current time and put it in *TIMER if TIMER is not NULL. */ +extern time_t time (time_t *__timer) __THROW; + +/* Return the difference between TIME1 and TIME0. */ +extern double difftime (time_t __time1, time_t __time0) + __THROW __attribute__ ((__const__)); + +/* Return the `time_t' representation of TP and normalize TP. */ +extern time_t mktime (struct tm *__tp) __THROW; +#else +# ifdef __REDIRECT_NTH +extern time_t __REDIRECT_NTH (time, (time_t *__timer), __time64); +extern double __REDIRECT_NTH (difftime, (time_t __time1, time_t __time0), + __difftime64) __attribute__ ((__const__)); +extern time_t __REDIRECT_NTH (mktime, (struct tm *__tp), __mktime64); +# else +# define time __time64 +# define difftime __difftime64 +# define mktime __mktime64 +# endif +#endif + +/* Format TP into S according to FORMAT. + Write no more than MAXSIZE characters and return the number + of characters written, or 0 if it would exceed MAXSIZE. */ +extern size_t strftime (char *__restrict __s, size_t __maxsize, + const char *__restrict __format, + const struct tm *__restrict __tp) + __THROW __nonnull((1, 3, 4)); + +#ifdef __USE_XOPEN +/* Parse S according to FORMAT and store binary time information in TP. + The return value is a pointer to the first unparsed character in S. */ +extern char *strptime (const char *__restrict __s, + const char *__restrict __fmt, struct tm *__tp) + __THROW; +#endif + +#ifdef __USE_XOPEN2K8 +/* Similar to the two functions above but take the information from + the provided locale and not the global locale. */ + +extern size_t strftime_l (char *__restrict __s, size_t __maxsize, + const char *__restrict __format, + const struct tm *__restrict __tp, + locale_t __loc) __THROW; +#endif + +#ifdef __USE_GNU +extern char *strptime_l (const char *__restrict __s, + const char *__restrict __fmt, struct tm *__tp, + locale_t __loc) __THROW; +#endif + + +#ifndef __USE_TIME_BITS64 +/* Return the `struct tm' representation of *TIMER + in Universal Coordinated Time (aka Greenwich Mean Time). */ +extern struct tm *gmtime (const time_t *__timer) __THROW; + +/* Return the `struct tm' representation + of *TIMER in the local timezone. */ +extern struct tm *localtime (const time_t *__timer) __THROW; + +#else +# ifdef __REDIRECT_NTH +extern struct tm*__REDIRECT_NTH (gmtime, (const time_t *__timer), __gmtime64); +extern struct tm *__REDIRECT_NTH (localtime, (const time_t *__timer), + __localtime64); +# else +# define gmtime __gmtime64 +# define localtime __localtime64 +# endif +#endif + + +#if defined __USE_POSIX || __GLIBC_USE (ISOC2X) +# ifndef __USE_TIME_BITS64 +/* Return the `struct tm' representation of *TIMER in UTC, + using *TP to store the result. */ +extern struct tm *gmtime_r (const time_t *__restrict __timer, + struct tm *__restrict __tp) __THROW; + +/* Return the `struct tm' representation of *TIMER in local time, + using *TP to store the result. */ +extern struct tm *localtime_r (const time_t *__restrict __timer, + struct tm *__restrict __tp) __THROW; +# else +# ifdef __REDIRECT_NTH +extern struct tm*__REDIRECT_NTH (gmtime_r, (const time_t *__restrict __timer, + struct tm *__restrict __tp), + __gmtime64_r); + +extern struct tm*__REDIRECT_NTH (localtime_r, (const time_t *__restrict __t, + struct tm *__restrict __tp), + __localtime64_r); +# else +# define gmtime_r __gmtime64_r +# define localtime_r __localtime_r +# endif +# endif +#endif /* POSIX || C2X */ + +/* Return a string of the form "Day Mon dd hh:mm:ss yyyy\n" + that is the representation of TP in this format. */ +extern char *asctime (const struct tm *__tp) __THROW; + +/* Equivalent to `asctime (localtime (timer))'. */ +#ifndef __USE_TIME_BITS64 +extern char *ctime (const time_t *__timer) __THROW; +#else +# ifdef __REDIRECT_NTH +extern char *__REDIRECT_NTH (ctime, (const time_t *__timer), __ctime64); +# else +# define ctime __ctime64 +# endif +#endif + +#ifdef __USE_POSIX +/* Reentrant versions of the above functions. */ + +/* Return in BUF a string of the form "Day Mon dd hh:mm:ss yyyy\n" + that is the representation of TP in this format. */ +extern char *asctime_r (const struct tm *__restrict __tp, + char *__restrict __buf) __THROW; + +/* Equivalent to `asctime_r (localtime_r (timer, *TMP*), buf)'. */ +#ifndef __USE_TIME_BITS64 +extern char *ctime_r (const time_t *__restrict __timer, + char *__restrict __buf) __THROW; +#else +# ifdef __REDIRECT_NTH +extern char *__REDIRECT_NTH (ctime_r, (const time_t *__restrict __timer, + char *__restrict __buf), __ctime64_r); +# else +# define ctime_r __ctime64_r +# endif +#endif + +#endif /* POSIX */ + + +/* Defined in localtime.c. */ +extern char *__tzname[2]; /* Current time zone abbreviations. */ +extern int __daylight; /* If daylight-saving time is ever in use. */ +extern long int __timezone; /* Seconds west of UTC. */ + + +#ifdef __USE_POSIX +/* Same as above. */ +extern char *tzname[2]; + +/* Set time conversion information from the TZ environment variable. + If TZ is not defined, a locale-dependent default is used. */ +extern void tzset (void) __THROW; +#endif + +#if defined __USE_MISC || defined __USE_XOPEN +extern int daylight; +extern long int timezone; +#endif + + +/* Nonzero if YEAR is a leap year (every 4 years, + except every 100th isn't, and every 400th is). */ +#define __isleap(year) \ + ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0)) + + +#if defined __USE_MISC || __GLIBC_USE (ISOC2X) +# ifndef __USE_TIME_BITS64 +/* Like `mktime', but for TP represents Universal Time, not local time. */ +extern time_t timegm (struct tm *__tp) __THROW; +# else +# ifdef __REDIRECT_NTH +extern time_t __REDIRECT_NTH (timegm, (struct tm *__tp), __timegm64); +# else +# define timegm __timegm64 +# endif +# endif +#endif + + +#ifdef __USE_MISC +/* Miscellaneous functions many Unices inherited from the public domain + localtime package. These are included only for compatibility. */ + +#ifndef __USE_TIME_BITS64 +/* Another name for `mktime'. */ +extern time_t timelocal (struct tm *__tp) __THROW; +#else +# ifdef __REDIRECT_NTH +extern time_t __REDIRECT_NTH (timelocal, (struct tm *__tp), __mktime64); +# endif +#endif + +/* Return the number of days in YEAR. */ +extern int dysize (int __year) __THROW __attribute__ ((__const__)); +#endif + + +#ifdef __USE_POSIX199309 +# ifndef __USE_TIME_BITS64 +/* Pause execution for a number of nanoseconds. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int nanosleep (const struct timespec *__requested_time, + struct timespec *__remaining); + +/* Get resolution of clock CLOCK_ID. */ +extern int clock_getres (clockid_t __clock_id, struct timespec *__res) __THROW; + +/* Get current value of clock CLOCK_ID and store it in TP. */ +extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) + __THROW __nonnull((2)); + +/* Set clock CLOCK_ID to value TP. */ +extern int clock_settime (clockid_t __clock_id, const struct timespec *__tp) + __THROW __nonnull((2)); +# else +# ifdef __REDIRECT +extern int __REDIRECT (nanosleep, (const struct timespec *__requested_time, + struct timespec *__remaining), + __nanosleep64); +extern int __REDIRECT_NTH (clock_getres, (clockid_t __clock_id, + struct timespec *__res), + __clock_getres64); +extern int __REDIRECT_NTH (clock_gettime, (clockid_t __clock_id, struct + timespec *__tp), __clock_gettime64) + __nonnull((2)); +extern int __REDIRECT_NTH (clock_settime, (clockid_t __clock_id, const struct + timespec *__tp), __clock_settime64) + __nonnull((2)); +# else +# define nanosleep __nanosleep64 +# define clock_getres __clock_getres64 +# define clock_gettime __clock_gettime64 +# define clock_settime __clock_settime64 +# endif +# endif + + +# ifdef __USE_XOPEN2K +/* High-resolution sleep with the specified clock. + + This function is a cancellation point and therefore not marked with + __THROW. */ +# ifndef __USE_TIME_BITS64 +extern int clock_nanosleep (clockid_t __clock_id, int __flags, + const struct timespec *__req, + struct timespec *__rem); +# else +# ifdef __REDIRECT +extern int __REDIRECT (clock_nanosleep, (clockid_t __clock_id, int __flags, + const struct timespec *__req, + struct timespec *__rem), + __clock_nanosleep_time64); +# else +# define clock_nanosleep __clock_nanosleep_time64 +# endif +# endif + +/* Return clock ID for CPU-time clock. */ +extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __THROW; +# endif + + +/* Create new per-process timer using CLOCK_ID. */ +extern int timer_create (clockid_t __clock_id, + struct sigevent *__restrict __evp, + timer_t *__restrict __timerid) __THROW; + +/* Delete timer TIMERID. */ +extern int timer_delete (timer_t __timerid) __THROW; + +/* Set timer TIMERID to VALUE, returning old value in OVALUE. */ +# ifndef __USE_TIME_BITS64 +extern int timer_settime (timer_t __timerid, int __flags, + const struct itimerspec *__restrict __value, + struct itimerspec *__restrict __ovalue) __THROW; + +/* Get current value of timer TIMERID and store it in VALUE. */ +extern int timer_gettime (timer_t __timerid, struct itimerspec *__value) + __THROW; +# else +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (timer_settime, (timer_t __timerid, int __flags, + const struct itimerspec *__restrict __value, + struct itimerspec *__restrict __ovalue), + __timer_settime64); + +extern int __REDIRECT_NTH (timer_gettime, (timer_t __timerid, + struct itimerspec *__value), + __timer_gettime64); +# else +# define timer_settime __timer_settime64 +# define timer_gettime __timer_gettime64 +# endif +# endif + +/* Get expiration overrun for timer TIMERID. */ +extern int timer_getoverrun (timer_t __timerid) __THROW; +#endif + + +#ifdef __USE_ISOC11 +# ifndef __USE_TIME_BITS64 +/* Set TS to calendar time based in time base BASE. */ +extern int timespec_get (struct timespec *__ts, int __base) + __THROW __nonnull ((1)); +# else +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (timespec_get, (struct timespec *__ts, int __base), + __timespec_get64) __nonnull ((1)); +# else +# define timespec_get __timespec_get64 +# endif +# endif +#endif + + +#if __GLIBC_USE (ISOC2X) +# ifndef __USE_TIME_BITS64 +/* Set TS to resolution of time base BASE. */ +extern int timespec_getres (struct timespec *__ts, int __base) + __THROW; +# else +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (timespec_getres, (struct timespec *__ts, + int __base), + __timespec_getres64); +# else +# define timespec_getres __timespec_getres64 +# endif +# endif +#endif + + +#ifdef __USE_XOPEN_EXTENDED +/* Set to one of the following values to indicate an error. + 1 the DATEMSK environment variable is null or undefined, + 2 the template file cannot be opened for reading, + 3 failed to get file status information, + 4 the template file is not a regular file, + 5 an error is encountered while reading the template file, + 6 memory allication failed (not enough memory available), + 7 there is no line in the template that matches the input, + 8 invalid input specification Example: February 31 or a time is + specified that can not be represented in a time_t (representing + the time in seconds since 00:00:00 UTC, January 1, 1970) */ +extern int getdate_err; + +/* Parse the given string as a date specification and return a value + representing the value. The templates from the file identified by + the environment variable DATEMSK are used. In case of an error + `getdate_err' is set. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern struct tm *getdate (const char *__string); +#endif + +#ifdef __USE_GNU +/* Since `getdate' is not reentrant because of the use of `getdate_err' + and the static buffer to return the result in, we provide a thread-safe + variant. The functionality is the same. The result is returned in + the buffer pointed to by RESBUFP and in case of an error the return + value is != 0 with the same values as given above for `getdate_err'. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern int getdate_r (const char *__restrict __string, + struct tm *__restrict __resbufp); +#endif + +__END_DECLS + +#endif /* time.h. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..6d9c5f338e2b5ec6dc9c5283d442c8e27618c695 GIT binary patch literal 24637 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 NA|l3i&!4*K{|EH!_F@14 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h new file mode 100644 index 00000000..edc1c36a --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h @@ -0,0 +1,982 @@ +#ifndef TREE_SITTER_API_H_ +#define TREE_SITTER_API_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include +#include + +/****************************/ +/* Section - ABI Versioning */ +/****************************/ + +/** + * The latest ABI version that is supported by the current version of the + * library. When Languages are generated by the Tree-sitter CLI, they are + * assigned an ABI version number that corresponds to the current CLI version. + * The Tree-sitter library is generally backwards-compatible with languages + * generated using older CLI versions, but is not forwards-compatible. + */ +#define TREE_SITTER_LANGUAGE_VERSION 14 + +/** + * The earliest ABI version that is supported by the current version of the + * library. + */ +#define TREE_SITTER_MIN_COMPATIBLE_LANGUAGE_VERSION 13 + +/*******************/ +/* Section - Types */ +/*******************/ + +typedef uint16_t TSSymbol; +typedef uint16_t TSFieldId; +typedef struct TSLanguage TSLanguage; +typedef struct TSParser TSParser; +typedef struct TSTree TSTree; +typedef struct TSQuery TSQuery; +typedef struct TSQueryCursor TSQueryCursor; + +typedef enum { + TSInputEncodingUTF8, + TSInputEncodingUTF16, +} TSInputEncoding; + +typedef enum { + TSSymbolTypeRegular, + TSSymbolTypeAnonymous, + TSSymbolTypeAuxiliary, +} TSSymbolType; + +typedef struct { + uint32_t row; + uint32_t column; +} TSPoint; + +typedef struct { + TSPoint start_point; + TSPoint end_point; + uint32_t start_byte; + uint32_t end_byte; +} TSRange; + +typedef struct { + void *payload; + const char *(*read)(void *payload, uint32_t byte_index, TSPoint position, uint32_t *bytes_read); + TSInputEncoding encoding; +} TSInput; + +typedef enum { + TSLogTypeParse, + TSLogTypeLex, +} TSLogType; + +typedef struct { + void *payload; + void (*log)(void *payload, TSLogType, const char *); +} TSLogger; + +typedef struct { + uint32_t start_byte; + uint32_t old_end_byte; + uint32_t new_end_byte; + TSPoint start_point; + TSPoint old_end_point; + TSPoint new_end_point; +} TSInputEdit; + +typedef struct { + uint32_t context[4]; + const void *id; + const TSTree *tree; +} TSNode; + +typedef struct { + const void *tree; + const void *id; + uint32_t context[2]; +} TSTreeCursor; + +typedef struct { + TSNode node; + uint32_t index; +} TSQueryCapture; + +typedef enum { + TSQuantifierZero = 0, // must match the array initialization value + TSQuantifierZeroOrOne, + TSQuantifierZeroOrMore, + TSQuantifierOne, + TSQuantifierOneOrMore, +} TSQuantifier; + +typedef struct { + uint32_t id; + uint16_t pattern_index; + uint16_t capture_count; + const TSQueryCapture *captures; +} TSQueryMatch; + +typedef enum { + TSQueryPredicateStepTypeDone, + TSQueryPredicateStepTypeCapture, + TSQueryPredicateStepTypeString, +} TSQueryPredicateStepType; + +typedef struct { + TSQueryPredicateStepType type; + uint32_t value_id; +} TSQueryPredicateStep; + +typedef enum { + TSQueryErrorNone = 0, + TSQueryErrorSyntax, + TSQueryErrorNodeType, + TSQueryErrorField, + TSQueryErrorCapture, + TSQueryErrorStructure, + TSQueryErrorLanguage, +} TSQueryError; + +/********************/ +/* Section - Parser */ +/********************/ + +/** + * Create a new parser. + */ +TSParser *ts_parser_new(void); + +/** + * Delete the parser, freeing all of the memory that it used. + */ +void ts_parser_delete(TSParser *parser); + +/** + * Set the language that the parser should use for parsing. + * + * Returns a boolean indicating whether or not the language was successfully + * assigned. True means assignment succeeded. False means there was a version + * mismatch: the language was generated with an incompatible version of the + * Tree-sitter CLI. Check the language's version using `ts_language_version` + * and compare it to this library's `TREE_SITTER_LANGUAGE_VERSION` and + * `TREE_SITTER_MIN_COMPATIBLE_LANGUAGE_VERSION` constants. + */ +bool ts_parser_set_language(TSParser *self, const TSLanguage *language); + +/** + * Get the parser's current language. + */ +const TSLanguage *ts_parser_language(const TSParser *self); + +/** + * Set the ranges of text that the parser should include when parsing. + * + * By default, the parser will always include entire documents. This function + * allows you to parse only a *portion* of a document but still return a syntax + * tree whose ranges match up with the document as a whole. You can also pass + * multiple disjoint ranges. + * + * The second and third parameters specify the location and length of an array + * of ranges. The parser does *not* take ownership of these ranges; it copies + * the data, so it doesn't matter how these ranges are allocated. + * + * If `length` is zero, then the entire document will be parsed. Otherwise, + * the given ranges must be ordered from earliest to latest in the document, + * and they must not overlap. That is, the following must hold for all + * `i` < `length - 1`: ranges[i].end_byte <= ranges[i + 1].start_byte + * + * If this requirement is not satisfied, the operation will fail, the ranges + * will not be assigned, and this function will return `false`. On success, + * this function returns `true` + */ +bool ts_parser_set_included_ranges( + TSParser *self, + const TSRange *ranges, + uint32_t length +); + +/** + * Get the ranges of text that the parser will include when parsing. + * + * The returned pointer is owned by the parser. The caller should not free it + * or write to it. The length of the array will be written to the given + * `length` pointer. + */ +const TSRange *ts_parser_included_ranges( + const TSParser *self, + uint32_t *length +); + +/** + * Use the parser to parse some source code and create a syntax tree. + * + * If you are parsing this document for the first time, pass `NULL` for the + * `old_tree` parameter. Otherwise, if you have already parsed an earlier + * version of this document and the document has since been edited, pass the + * previous syntax tree so that the unchanged parts of it can be reused. + * This will save time and memory. For this to work correctly, you must have + * already edited the old syntax tree using the `ts_tree_edit` function in a + * way that exactly matches the source code changes. + * + * The `TSInput` parameter lets you specify how to read the text. It has the + * following three fields: + * 1. `read`: A function to retrieve a chunk of text at a given byte offset + * and (row, column) position. The function should return a pointer to the + * text and write its length to the `bytes_read` pointer. The parser does + * not take ownership of this buffer; it just borrows it until it has + * finished reading it. The function should write a zero value to the + * `bytes_read` pointer to indicate the end of the document. + * 2. `payload`: An arbitrary pointer that will be passed to each invocation + * of the `read` function. + * 3. `encoding`: An indication of how the text is encoded. Either + * `TSInputEncodingUTF8` or `TSInputEncodingUTF16`. + * + * This function returns a syntax tree on success, and `NULL` on failure. There + * are three possible reasons for failure: + * 1. The parser does not have a language assigned. Check for this using the + `ts_parser_language` function. + * 2. Parsing was cancelled due to a timeout that was set by an earlier call to + * the `ts_parser_set_timeout_micros` function. You can resume parsing from + * where the parser left out by calling `ts_parser_parse` again with the + * same arguments. Or you can start parsing from scratch by first calling + * `ts_parser_reset`. + * 3. Parsing was cancelled using a cancellation flag that was set by an + * earlier call to `ts_parser_set_cancellation_flag`. You can resume parsing + * from where the parser left out by calling `ts_parser_parse` again with + * the same arguments. + */ +TSTree *ts_parser_parse( + TSParser *self, + const TSTree *old_tree, + TSInput input +); + +/** + * Use the parser to parse some source code stored in one contiguous buffer. + * The first two parameters are the same as in the `ts_parser_parse` function + * above. The second two parameters indicate the location of the buffer and its + * length in bytes. + */ +TSTree *ts_parser_parse_string( + TSParser *self, + const TSTree *old_tree, + const char *string, + uint32_t length +); + +/** + * Use the parser to parse some source code stored in one contiguous buffer with + * a given encoding. The first four parameters work the same as in the + * `ts_parser_parse_string` method above. The final parameter indicates whether + * the text is encoded as UTF8 or UTF16. + */ +TSTree *ts_parser_parse_string_encoding( + TSParser *self, + const TSTree *old_tree, + const char *string, + uint32_t length, + TSInputEncoding encoding +); + +/** + * Instruct the parser to start the next parse from the beginning. + * + * If the parser previously failed because of a timeout or a cancellation, then + * by default, it will resume where it left off on the next call to + * `ts_parser_parse` or other parsing functions. If you don't want to resume, + * and instead intend to use this parser to parse some other document, you must + * call `ts_parser_reset` first. + */ +void ts_parser_reset(TSParser *self); + +/** + * Set the maximum duration in microseconds that parsing should be allowed to + * take before halting. + * + * If parsing takes longer than this, it will halt early, returning NULL. + * See `ts_parser_parse` for more information. + */ +void ts_parser_set_timeout_micros(TSParser *self, uint64_t timeout); + +/** + * Get the duration in microseconds that parsing is allowed to take. + */ +uint64_t ts_parser_timeout_micros(const TSParser *self); + +/** + * Set the parser's current cancellation flag pointer. + * + * If a non-null pointer is assigned, then the parser will periodically read + * from this pointer during parsing. If it reads a non-zero value, it will + * halt early, returning NULL. See `ts_parser_parse` for more information. + */ +void ts_parser_set_cancellation_flag(TSParser *self, const size_t *flag); + +/** + * Get the parser's current cancellation flag pointer. + */ +const size_t *ts_parser_cancellation_flag(const TSParser *self); + +/** + * Set the logger that a parser should use during parsing. + * + * The parser does not take ownership over the logger payload. If a logger was + * previously assigned, the caller is responsible for releasing any memory + * owned by the previous logger. + */ +void ts_parser_set_logger(TSParser *self, TSLogger logger); + +/** + * Get the parser's current logger. + */ +TSLogger ts_parser_logger(const TSParser *self); + +/** + * Set the file descriptor to which the parser should write debugging graphs + * during parsing. The graphs are formatted in the DOT language. You may want + * to pipe these graphs directly to a `dot(1)` process in order to generate + * SVG output. You can turn off this logging by passing a negative number. + */ +void ts_parser_print_dot_graphs(TSParser *self, int file); + +/******************/ +/* Section - Tree */ +/******************/ + +/** + * Create a shallow copy of the syntax tree. This is very fast. + * + * You need to copy a syntax tree in order to use it on more than one thread at + * a time, as syntax trees are not thread safe. + */ +TSTree *ts_tree_copy(const TSTree *self); + +/** + * Delete the syntax tree, freeing all of the memory that it used. + */ +void ts_tree_delete(TSTree *self); + +/** + * Get the root node of the syntax tree. + */ +TSNode ts_tree_root_node(const TSTree *self); + +/** + * Get the root node of the syntax tree, but with its position + * shifted forward by the given offset. + */ +TSNode ts_tree_root_node_with_offset( + const TSTree *self, + uint32_t offset_bytes, + TSPoint offset_point +); + +/** + * Get the language that was used to parse the syntax tree. + */ +const TSLanguage *ts_tree_language(const TSTree *); + +/** + * Get the array of included ranges that was used to parse the syntax tree. + * + * The returned pointer must be freed by the caller. + */ +TSRange *ts_tree_included_ranges(const TSTree *, uint32_t *length); + +/** + * Edit the syntax tree to keep it in sync with source code that has been + * edited. + * + * You must describe the edit both in terms of byte offsets and in terms of + * (row, column) coordinates. + */ +void ts_tree_edit(TSTree *self, const TSInputEdit *edit); + +/** + * Compare an old edited syntax tree to a new syntax tree representing the same + * document, returning an array of ranges whose syntactic structure has changed. + * + * For this to work correctly, the old syntax tree must have been edited such + * that its ranges match up to the new tree. Generally, you'll want to call + * this function right after calling one of the `ts_parser_parse` functions. + * You need to pass the old tree that was passed to parse, as well as the new + * tree that was returned from that function. + * + * The returned array is allocated using `malloc` and the caller is responsible + * for freeing it using `free`. The length of the array will be written to the + * given `length` pointer. + */ +TSRange *ts_tree_get_changed_ranges( + const TSTree *old_tree, + const TSTree *new_tree, + uint32_t *length +); + +/** + * Write a DOT graph describing the syntax tree to the given file. + */ +void ts_tree_print_dot_graph(const TSTree *, int file_descriptor); + +/******************/ +/* Section - Node */ +/******************/ + +/** + * Get the node's type as a null-terminated string. + */ +const char *ts_node_type(TSNode); + +/** + * Get the node's type as a numerical id. + */ +TSSymbol ts_node_symbol(TSNode); + +/** + * Get the node's start byte. + */ +uint32_t ts_node_start_byte(TSNode); + +/** + * Get the node's start position in terms of rows and columns. + */ +TSPoint ts_node_start_point(TSNode); + +/** + * Get the node's end byte. + */ +uint32_t ts_node_end_byte(TSNode); + +/** + * Get the node's end position in terms of rows and columns. + */ +TSPoint ts_node_end_point(TSNode); + +/** + * Get an S-expression representing the node as a string. + * + * This string is allocated with `malloc` and the caller is responsible for + * freeing it using `free`. + */ +char *ts_node_string(TSNode); + +/** + * Check if the node is null. Functions like `ts_node_child` and + * `ts_node_next_sibling` will return a null node to indicate that no such node + * was found. + */ +bool ts_node_is_null(TSNode); + +/** + * Check if the node is *named*. Named nodes correspond to named rules in the + * grammar, whereas *anonymous* nodes correspond to string literals in the + * grammar. + */ +bool ts_node_is_named(TSNode); + +/** + * Check if the node is *missing*. Missing nodes are inserted by the parser in + * order to recover from certain kinds of syntax errors. + */ +bool ts_node_is_missing(TSNode); + +/** + * Check if the node is *extra*. Extra nodes represent things like comments, + * which are not required the grammar, but can appear anywhere. + */ +bool ts_node_is_extra(TSNode); + +/** + * Check if a syntax node has been edited. + */ +bool ts_node_has_changes(TSNode); + +/** + * Check if the node is a syntax error or contains any syntax errors. + */ +bool ts_node_has_error(TSNode); + +/** + * Get the node's immediate parent. + */ +TSNode ts_node_parent(TSNode); + +/** + * Get the node's child at the given index, where zero represents the first + * child. + */ +TSNode ts_node_child(TSNode, uint32_t); + +/** + * Get the field name for node's child at the given index, where zero represents + * the first child. Returns NULL, if no field is found. + */ +const char *ts_node_field_name_for_child(TSNode, uint32_t); + +/** + * Get the node's number of children. + */ +uint32_t ts_node_child_count(TSNode); + +/** + * Get the node's *named* child at the given index. + * + * See also `ts_node_is_named`. + */ +TSNode ts_node_named_child(TSNode, uint32_t); + +/** + * Get the node's number of *named* children. + * + * See also `ts_node_is_named`. + */ +uint32_t ts_node_named_child_count(TSNode); + +/** + * Get the node's child with the given field name. + */ +TSNode ts_node_child_by_field_name( + TSNode self, + const char *field_name, + uint32_t field_name_length +); + +/** + * Get the node's child with the given numerical field id. + * + * You can convert a field name to an id using the + * `ts_language_field_id_for_name` function. + */ +TSNode ts_node_child_by_field_id(TSNode, TSFieldId); + +/** + * Get the node's next / previous sibling. + */ +TSNode ts_node_next_sibling(TSNode); +TSNode ts_node_prev_sibling(TSNode); + +/** + * Get the node's next / previous *named* sibling. + */ +TSNode ts_node_next_named_sibling(TSNode); +TSNode ts_node_prev_named_sibling(TSNode); + +/** + * Get the node's first child that extends beyond the given byte offset. + */ +TSNode ts_node_first_child_for_byte(TSNode, uint32_t); + +/** + * Get the node's first named child that extends beyond the given byte offset. + */ +TSNode ts_node_first_named_child_for_byte(TSNode, uint32_t); + +/** + * Get the smallest node within this node that spans the given range of bytes + * or (row, column) positions. + */ +TSNode ts_node_descendant_for_byte_range(TSNode, uint32_t, uint32_t); +TSNode ts_node_descendant_for_point_range(TSNode, TSPoint, TSPoint); + +/** + * Get the smallest named node within this node that spans the given range of + * bytes or (row, column) positions. + */ +TSNode ts_node_named_descendant_for_byte_range(TSNode, uint32_t, uint32_t); +TSNode ts_node_named_descendant_for_point_range(TSNode, TSPoint, TSPoint); + +/** + * Edit the node to keep it in-sync with source code that has been edited. + * + * This function is only rarely needed. When you edit a syntax tree with the + * `ts_tree_edit` function, all of the nodes that you retrieve from the tree + * afterward will already reflect the edit. You only need to use `ts_node_edit` + * when you have a `TSNode` instance that you want to keep and continue to use + * after an edit. + */ +void ts_node_edit(TSNode *, const TSInputEdit *); + +/** + * Check if two nodes are identical. + */ +bool ts_node_eq(TSNode, TSNode); + +/************************/ +/* Section - TreeCursor */ +/************************/ + +/** + * Create a new tree cursor starting from the given node. + * + * A tree cursor allows you to walk a syntax tree more efficiently than is + * possible using the `TSNode` functions. It is a mutable object that is always + * on a certain syntax node, and can be moved imperatively to different nodes. + */ +TSTreeCursor ts_tree_cursor_new(TSNode); + +/** + * Delete a tree cursor, freeing all of the memory that it used. + */ +void ts_tree_cursor_delete(TSTreeCursor *); + +/** + * Re-initialize a tree cursor to start at a different node. + */ +void ts_tree_cursor_reset(TSTreeCursor *, TSNode); + +/** + * Get the tree cursor's current node. + */ +TSNode ts_tree_cursor_current_node(const TSTreeCursor *); + +/** + * Get the field name of the tree cursor's current node. + * + * This returns `NULL` if the current node doesn't have a field. + * See also `ts_node_child_by_field_name`. + */ +const char *ts_tree_cursor_current_field_name(const TSTreeCursor *); + +/** + * Get the field id of the tree cursor's current node. + * + * This returns zero if the current node doesn't have a field. + * See also `ts_node_child_by_field_id`, `ts_language_field_id_for_name`. + */ +TSFieldId ts_tree_cursor_current_field_id(const TSTreeCursor *); + +/** + * Move the cursor to the parent of its current node. + * + * This returns `true` if the cursor successfully moved, and returns `false` + * if there was no parent node (the cursor was already on the root node). + */ +bool ts_tree_cursor_goto_parent(TSTreeCursor *); + +/** + * Move the cursor to the next sibling of its current node. + * + * This returns `true` if the cursor successfully moved, and returns `false` + * if there was no next sibling node. + */ +bool ts_tree_cursor_goto_next_sibling(TSTreeCursor *); + +/** + * Move the cursor to the first child of its current node. + * + * This returns `true` if the cursor successfully moved, and returns `false` + * if there were no children. + */ +bool ts_tree_cursor_goto_first_child(TSTreeCursor *); + +/** + * Move the cursor to the first child of its current node that extends beyond + * the given byte offset or point. + * + * This returns the index of the child node if one was found, and returns -1 + * if no such child was found. + */ +int64_t ts_tree_cursor_goto_first_child_for_byte(TSTreeCursor *, uint32_t); +int64_t ts_tree_cursor_goto_first_child_for_point(TSTreeCursor *, TSPoint); + +TSTreeCursor ts_tree_cursor_copy(const TSTreeCursor *); + +/*******************/ +/* Section - Query */ +/*******************/ + +/** + * Create a new query from a string containing one or more S-expression + * patterns. The query is associated with a particular language, and can + * only be run on syntax nodes parsed with that language. + * + * If all of the given patterns are valid, this returns a `TSQuery`. + * If a pattern is invalid, this returns `NULL`, and provides two pieces + * of information about the problem: + * 1. The byte offset of the error is written to the `error_offset` parameter. + * 2. The type of error is written to the `error_type` parameter. + */ +TSQuery *ts_query_new( + const TSLanguage *language, + const char *source, + uint32_t source_len, + uint32_t *error_offset, + TSQueryError *error_type +); + +/** + * Delete a query, freeing all of the memory that it used. + */ +void ts_query_delete(TSQuery *); + +/** + * Get the number of patterns, captures, or string literals in the query. + */ +uint32_t ts_query_pattern_count(const TSQuery *); +uint32_t ts_query_capture_count(const TSQuery *); +uint32_t ts_query_string_count(const TSQuery *); + +/** + * Get the byte offset where the given pattern starts in the query's source. + * + * This can be useful when combining queries by concatenating their source + * code strings. + */ +uint32_t ts_query_start_byte_for_pattern(const TSQuery *, uint32_t); + +/** + * Get all of the predicates for the given pattern in the query. + * + * The predicates are represented as a single array of steps. There are three + * types of steps in this array, which correspond to the three legal values for + * the `type` field: + * - `TSQueryPredicateStepTypeCapture` - Steps with this type represent names + * of captures. Their `value_id` can be used with the + * `ts_query_capture_name_for_id` function to obtain the name of the capture. + * - `TSQueryPredicateStepTypeString` - Steps with this type represent literal + * strings. Their `value_id` can be used with the + * `ts_query_string_value_for_id` function to obtain their string value. + * - `TSQueryPredicateStepTypeDone` - Steps with this type are *sentinels* + * that represent the end of an individual predicate. If a pattern has two + * predicates, then there will be two steps with this `type` in the array. + */ +const TSQueryPredicateStep *ts_query_predicates_for_pattern( + const TSQuery *self, + uint32_t pattern_index, + uint32_t *length +); + +/* + * Check if the given pattern in the query has a single root node. + */ +bool ts_query_is_pattern_rooted(const TSQuery *self, uint32_t pattern_index); + +/* + * Check if the given pattern in the query is 'non local'. + * + * A non-local pattern has multiple root nodes and can match within a + * repeating sequence of nodes, as specified by the grammar. Non-local + * patterns disable certain optimizations that would otherwise be possible + * when executing a query on a specific range of a syntax tree. + */ +bool ts_query_is_pattern_non_local(const TSQuery *self, uint32_t pattern_index); + +/* + * Check if a given pattern is guaranteed to match once a given step is reached. + * The step is specified by its byte offset in the query's source code. + */ +bool ts_query_is_pattern_guaranteed_at_step(const TSQuery *self, uint32_t byte_offset); + +/** + * Get the name and length of one of the query's captures, or one of the + * query's string literals. Each capture and string is associated with a + * numeric id based on the order that it appeared in the query's source. + */ +const char *ts_query_capture_name_for_id( + const TSQuery *, + uint32_t id, + uint32_t *length +); + +/** + * Get the quantifier of the query's captures. Each capture is * associated + * with a numeric id based on the order that it appeared in the query's source. + */ +TSQuantifier ts_query_capture_quantifier_for_id( + const TSQuery *, + uint32_t pattern_id, + uint32_t capture_id +); + +const char *ts_query_string_value_for_id( + const TSQuery *, + uint32_t id, + uint32_t *length +); + +/** + * Disable a certain capture within a query. + * + * This prevents the capture from being returned in matches, and also avoids + * any resource usage associated with recording the capture. Currently, there + * is no way to undo this. + */ +void ts_query_disable_capture(TSQuery *, const char *, uint32_t); + +/** + * Disable a certain pattern within a query. + * + * This prevents the pattern from matching and removes most of the overhead + * associated with the pattern. Currently, there is no way to undo this. + */ +void ts_query_disable_pattern(TSQuery *, uint32_t); + +/** + * Create a new cursor for executing a given query. + * + * The cursor stores the state that is needed to iteratively search + * for matches. To use the query cursor, first call `ts_query_cursor_exec` + * to start running a given query on a given syntax node. Then, there are + * two options for consuming the results of the query: + * 1. Repeatedly call `ts_query_cursor_next_match` to iterate over all of the + * *matches* in the order that they were found. Each match contains the + * index of the pattern that matched, and an array of captures. Because + * multiple patterns can match the same set of nodes, one match may contain + * captures that appear *before* some of the captures from a previous match. + * 2. Repeatedly call `ts_query_cursor_next_capture` to iterate over all of the + * individual *captures* in the order that they appear. This is useful if + * don't care about which pattern matched, and just want a single ordered + * sequence of captures. + * + * If you don't care about consuming all of the results, you can stop calling + * `ts_query_cursor_next_match` or `ts_query_cursor_next_capture` at any point. + * You can then start executing another query on another node by calling + * `ts_query_cursor_exec` again. + */ +TSQueryCursor *ts_query_cursor_new(void); + +/** + * Delete a query cursor, freeing all of the memory that it used. + */ +void ts_query_cursor_delete(TSQueryCursor *); + +/** + * Start running a given query on a given node. + */ +void ts_query_cursor_exec(TSQueryCursor *, const TSQuery *, TSNode); + +/** + * Manage the maximum number of in-progress matches allowed by this query + * cursor. + * + * Query cursors have an optional maximum capacity for storing lists of + * in-progress captures. If this capacity is exceeded, then the + * earliest-starting match will silently be dropped to make room for further + * matches. This maximum capacity is optional — by default, query cursors allow + * any number of pending matches, dynamically allocating new space for them as + * needed as the query is executed. + */ +bool ts_query_cursor_did_exceed_match_limit(const TSQueryCursor *); +uint32_t ts_query_cursor_match_limit(const TSQueryCursor *); +void ts_query_cursor_set_match_limit(TSQueryCursor *, uint32_t); + +/** + * Set the range of bytes or (row, column) positions in which the query + * will be executed. + */ +void ts_query_cursor_set_byte_range(TSQueryCursor *, uint32_t, uint32_t); +void ts_query_cursor_set_point_range(TSQueryCursor *, TSPoint, TSPoint); + +/** + * Advance to the next match of the currently running query. + * + * If there is a match, write it to `*match` and return `true`. + * Otherwise, return `false`. + */ +bool ts_query_cursor_next_match(TSQueryCursor *, TSQueryMatch *match); +void ts_query_cursor_remove_match(TSQueryCursor *, uint32_t id); + +/** + * Advance to the next capture of the currently running query. + * + * If there is a capture, write its match to `*match` and its index within + * the matche's capture list to `*capture_index`. Otherwise, return `false`. + */ +bool ts_query_cursor_next_capture( + TSQueryCursor *, + TSQueryMatch *match, + uint32_t *capture_index +); + +/**********************/ +/* Section - Language */ +/**********************/ + +/** + * Get the number of distinct node types in the language. + */ +uint32_t ts_language_symbol_count(const TSLanguage *); + +/** + * Get a node type string for the given numerical id. + */ +const char *ts_language_symbol_name(const TSLanguage *, TSSymbol); + +/** + * Get the numerical id for the given node type string. + */ +TSSymbol ts_language_symbol_for_name( + const TSLanguage *self, + const char *string, + uint32_t length, + bool is_named +); + +/** + * Get the number of distinct field names in the language. + */ +uint32_t ts_language_field_count(const TSLanguage *); + +/** + * Get the field name string for the given numerical id. + */ +const char *ts_language_field_name_for_id(const TSLanguage *, TSFieldId); + +/** + * Get the numerical id for the given field name string. + */ +TSFieldId ts_language_field_id_for_name(const TSLanguage *, const char *, uint32_t); + +/** + * Check whether the given node type id belongs to named nodes, anonymous nodes, + * or a hidden nodes. + * + * See also `ts_node_is_named`. Hidden nodes are never returned from the API. + */ +TSSymbolType ts_language_symbol_type(const TSLanguage *, TSSymbol); + +/** + * Get the ABI version number for this language. This version number is used + * to ensure that languages were generated by a compatible version of + * Tree-sitter. + * + * See also `ts_parser_set_language`. + */ +uint32_t ts_language_version(const TSLanguage *); + +/**********************************/ +/* Section - Global Configuration */ +/**********************************/ + +/** + * Set the allocation functions used by the library. + * + * By default, Tree-sitter uses the standard libc allocation functions, + * but aborts the process when an allocation fails. This function lets + * you supply alternative allocation functions at runtime. + * + * If you pass `NULL` for any parameter, Tree-sitter will switch back to + * its default implementation of that function. + * + * If you call this function after the library has already been used, then + * you must ensure that either: + * 1. All the existing objects have been freed. + * 2. The new allocator shares its state with the old one, so it is capable + * of freeing memory that was allocated by the old allocator. + */ +void ts_set_allocator( + void *(*new_malloc)(size_t), + void *(*new_calloc)(size_t, size_t), + void *(*new_realloc)(void *, size_t), + void (*new_free)(void *) +); + +#ifdef __cplusplus +} +#endif + +#endif // TREE_SITTER_API_H_ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..721c0686eac0d7ed97aa401209c5cd865d6bfc91 GIT binary patch literal 58835 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 RUmk>)2g#R36{CFl{{y1IC=>ty literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h new file mode 100644 index 00000000..0477527a --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h @@ -0,0 +1,1222 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * POSIX Standard: 2.10 Symbolic Constants + */ + +#ifndef _UNISTD_H +#define _UNISTD_H 1 + +#include + +__BEGIN_DECLS + +/* These may be used to determine what facilities are present at compile time. + Their values can be obtained at run time from `sysconf'. */ + +#ifdef __USE_XOPEN2K8 +/* POSIX Standard approved as ISO/IEC 9945-1 as of September 2008. */ +# define _POSIX_VERSION 200809L +#elif defined __USE_XOPEN2K +/* POSIX Standard approved as ISO/IEC 9945-1 as of December 2001. */ +# define _POSIX_VERSION 200112L +#elif defined __USE_POSIX199506 +/* POSIX Standard approved as ISO/IEC 9945-1 as of June 1995. */ +# define _POSIX_VERSION 199506L +#elif defined __USE_POSIX199309 +/* POSIX Standard approved as ISO/IEC 9945-1 as of September 1993. */ +# define _POSIX_VERSION 199309L +#else +/* POSIX Standard approved as ISO/IEC 9945-1 as of September 1990. */ +# define _POSIX_VERSION 199009L +#endif + +/* These are not #ifdef __USE_POSIX2 because they are + in the theoretically application-owned namespace. */ + +#ifdef __USE_XOPEN2K8 +# define __POSIX2_THIS_VERSION 200809L +/* The utilities on GNU systems also correspond to this version. */ +#elif defined __USE_XOPEN2K +/* The utilities on GNU systems also correspond to this version. */ +# define __POSIX2_THIS_VERSION 200112L +#elif defined __USE_POSIX199506 +/* The utilities on GNU systems also correspond to this version. */ +# define __POSIX2_THIS_VERSION 199506L +#else +/* The utilities on GNU systems also correspond to this version. */ +# define __POSIX2_THIS_VERSION 199209L +#endif + +/* The utilities on GNU systems also correspond to this version. */ +#define _POSIX2_VERSION __POSIX2_THIS_VERSION + +/* This symbol was required until the 2001 edition of POSIX. */ +#define _POSIX2_C_VERSION __POSIX2_THIS_VERSION + +/* If defined, the implementation supports the + C Language Bindings Option. */ +#define _POSIX2_C_BIND __POSIX2_THIS_VERSION + +/* If defined, the implementation supports the + C Language Development Utilities Option. */ +#define _POSIX2_C_DEV __POSIX2_THIS_VERSION + +/* If defined, the implementation supports the + Software Development Utilities Option. */ +#define _POSIX2_SW_DEV __POSIX2_THIS_VERSION + +/* If defined, the implementation supports the + creation of locales with the localedef utility. */ +#define _POSIX2_LOCALEDEF __POSIX2_THIS_VERSION + +/* X/Open version number to which the library conforms. It is selectable. */ +#ifdef __USE_XOPEN2K8 +# define _XOPEN_VERSION 700 +#elif defined __USE_XOPEN2K +# define _XOPEN_VERSION 600 +#elif defined __USE_UNIX98 +# define _XOPEN_VERSION 500 +#else +# define _XOPEN_VERSION 4 +#endif + +/* Commands and utilities from XPG4 are available. */ +#define _XOPEN_XCU_VERSION 4 + +/* We are compatible with the old published standards as well. */ +#define _XOPEN_XPG2 1 +#define _XOPEN_XPG3 1 +#define _XOPEN_XPG4 1 + +/* The X/Open Unix extensions are available. */ +#define _XOPEN_UNIX 1 + +/* The enhanced internationalization capabilities according to XPG4.2 + are present. */ +#define _XOPEN_ENH_I18N 1 + +/* The legacy interfaces are also available. */ +#define _XOPEN_LEGACY 1 + + +/* Get values of POSIX options: + + If these symbols are defined, the corresponding features are + always available. If not, they may be available sometimes. + The current values can be obtained with `sysconf'. + + _POSIX_JOB_CONTROL Job control is supported. + _POSIX_SAVED_IDS Processes have a saved set-user-ID + and a saved set-group-ID. + _POSIX_REALTIME_SIGNALS Real-time, queued signals are supported. + _POSIX_PRIORITY_SCHEDULING Priority scheduling is supported. + _POSIX_TIMERS POSIX.4 clocks and timers are supported. + _POSIX_ASYNCHRONOUS_IO Asynchronous I/O is supported. + _POSIX_PRIORITIZED_IO Prioritized asynchronous I/O is supported. + _POSIX_SYNCHRONIZED_IO Synchronizing file data is supported. + _POSIX_FSYNC The fsync function is present. + _POSIX_MAPPED_FILES Mapping of files to memory is supported. + _POSIX_MEMLOCK Locking of all memory is supported. + _POSIX_MEMLOCK_RANGE Locking of ranges of memory is supported. + _POSIX_MEMORY_PROTECTION Setting of memory protections is supported. + _POSIX_MESSAGE_PASSING POSIX.4 message queues are supported. + _POSIX_SEMAPHORES POSIX.4 counting semaphores are supported. + _POSIX_SHARED_MEMORY_OBJECTS POSIX.4 shared memory objects are supported. + _POSIX_THREADS POSIX.1c pthreads are supported. + _POSIX_THREAD_ATTR_STACKADDR Thread stack address attribute option supported. + _POSIX_THREAD_ATTR_STACKSIZE Thread stack size attribute option supported. + _POSIX_THREAD_SAFE_FUNCTIONS Thread-safe functions are supported. + _POSIX_THREAD_PRIORITY_SCHEDULING + POSIX.1c thread execution scheduling supported. + _POSIX_THREAD_PRIO_INHERIT Thread priority inheritance option supported. + _POSIX_THREAD_PRIO_PROTECT Thread priority protection option supported. + _POSIX_THREAD_PROCESS_SHARED Process-shared synchronization supported. + _POSIX_PII Protocol-independent interfaces are supported. + _POSIX_PII_XTI XTI protocol-indep. interfaces are supported. + _POSIX_PII_SOCKET Socket protocol-indep. interfaces are supported. + _POSIX_PII_INTERNET Internet family of protocols supported. + _POSIX_PII_INTERNET_STREAM Connection-mode Internet protocol supported. + _POSIX_PII_INTERNET_DGRAM Connectionless Internet protocol supported. + _POSIX_PII_OSI ISO/OSI family of protocols supported. + _POSIX_PII_OSI_COTS Connection-mode ISO/OSI service supported. + _POSIX_PII_OSI_CLTS Connectionless ISO/OSI service supported. + _POSIX_POLL Implementation supports `poll' function. + _POSIX_SELECT Implementation supports `select' and `pselect'. + + _XOPEN_REALTIME X/Open realtime support is available. + _XOPEN_REALTIME_THREADS X/Open realtime thread support is available. + _XOPEN_SHM Shared memory interface according to XPG4.2. + + _XBS5_ILP32_OFF32 Implementation provides environment with 32-bit + int, long, pointer, and off_t types. + _XBS5_ILP32_OFFBIG Implementation provides environment with 32-bit + int, long, and pointer and off_t with at least + 64 bits. + _XBS5_LP64_OFF64 Implementation provides environment with 32-bit + int, and 64-bit long, pointer, and off_t types. + _XBS5_LPBIG_OFFBIG Implementation provides environment with at + least 32 bits int and long, pointer, and off_t + with at least 64 bits. + + If any of these symbols is defined as -1, the corresponding option is not + true for any file. If any is defined as other than -1, the corresponding + option is true for all files. If a symbol is not defined at all, the value + for a specific file can be obtained from `pathconf' and `fpathconf'. + + _POSIX_CHOWN_RESTRICTED Only the super user can use `chown' to change + the owner of a file. `chown' can only be used + to change the group ID of a file to a group of + which the calling process is a member. + _POSIX_NO_TRUNC Pathname components longer than + NAME_MAX generate an error. + _POSIX_VDISABLE If defined, if the value of an element of the + `c_cc' member of `struct termios' is + _POSIX_VDISABLE, no character will have the + effect associated with that element. + _POSIX_SYNC_IO Synchronous I/O may be performed. + _POSIX_ASYNC_IO Asynchronous I/O may be performed. + _POSIX_PRIO_IO Prioritized Asynchronous I/O may be performed. + + Support for the Large File Support interface is not generally available. + If it is available the following constants are defined to one. + _LFS64_LARGEFILE Low-level I/O supports large files. + _LFS64_STDIO Standard I/O supports large files. + */ + +#include + +/* Get the environment definitions from Unix98. */ +#if defined __USE_UNIX98 || defined __USE_XOPEN2K +# include +#endif + +/* Standard file descriptors. */ +#define STDIN_FILENO 0 /* Standard input. */ +#define STDOUT_FILENO 1 /* Standard output. */ +#define STDERR_FILENO 2 /* Standard error output. */ + + +/* All functions that are not declared anywhere else. */ + +#include + +#ifndef __ssize_t_defined +typedef __ssize_t ssize_t; +# define __ssize_t_defined +#endif + +#define __need_size_t +#define __need_NULL +#include + +#if defined __USE_XOPEN || defined __USE_XOPEN2K +/* The Single Unix specification says that some more types are + available here. */ +# ifndef __gid_t_defined +typedef __gid_t gid_t; +# define __gid_t_defined +# endif + +# ifndef __uid_t_defined +typedef __uid_t uid_t; +# define __uid_t_defined +# endif + +# ifndef __off_t_defined +# ifndef __USE_FILE_OFFSET64 +typedef __off_t off_t; +# else +typedef __off64_t off_t; +# endif +# define __off_t_defined +# endif +# if defined __USE_LARGEFILE64 && !defined __off64_t_defined +typedef __off64_t off64_t; +# define __off64_t_defined +# endif + +# ifndef __useconds_t_defined +typedef __useconds_t useconds_t; +# define __useconds_t_defined +# endif + +# ifndef __pid_t_defined +typedef __pid_t pid_t; +# define __pid_t_defined +# endif +#endif /* X/Open */ + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K +# ifndef __intptr_t_defined +typedef __intptr_t intptr_t; +# define __intptr_t_defined +# endif +#endif + +#if defined __USE_MISC || defined __USE_XOPEN +# ifndef __socklen_t_defined +typedef __socklen_t socklen_t; +# define __socklen_t_defined +# endif +#endif + +/* Values for the second argument to access. + These may be OR'd together. */ +#define R_OK 4 /* Test for read permission. */ +#define W_OK 2 /* Test for write permission. */ +#define X_OK 1 /* Test for execute permission. */ +#define F_OK 0 /* Test for existence. */ + +/* Test for access to NAME using the real UID and real GID. */ +extern int access (const char *__name, int __type) __THROW __nonnull ((1)); + +#ifdef __USE_GNU +/* Test for access to NAME using the effective UID and GID + (as normal file operations use). */ +extern int euidaccess (const char *__name, int __type) + __THROW __nonnull ((1)); + +/* An alias for `euidaccess', used by some other systems. */ +extern int eaccess (const char *__name, int __type) + __THROW __nonnull ((1)); + +/* Execute program relative to a directory file descriptor. */ +extern int execveat (int __fd, const char *__path, char *const __argv[], + char *const __envp[], int __flags) + __THROW __nonnull ((2, 3)); +#endif + +#ifdef __USE_ATFILE +/* Test for access to FILE relative to the directory FD is open on. + If AT_EACCESS is set in FLAG, then use effective IDs like `eaccess', + otherwise use real IDs like `access'. */ +extern int faccessat (int __fd, const char *__file, int __type, int __flag) + __THROW __nonnull ((2)) __wur; +#endif /* Use GNU. */ + + +/* Values for the WHENCE argument to lseek. */ +#ifndef _STDIO_H /* has the same definitions. */ +# define SEEK_SET 0 /* Seek from beginning of file. */ +# define SEEK_CUR 1 /* Seek from current position. */ +# define SEEK_END 2 /* Seek from end of file. */ +# ifdef __USE_GNU +# define SEEK_DATA 3 /* Seek to next data. */ +# define SEEK_HOLE 4 /* Seek to next hole. */ +# endif +#endif + +#if defined __USE_MISC && !defined L_SET +/* Old BSD names for the same constants; just for compatibility. */ +# define L_SET SEEK_SET +# define L_INCR SEEK_CUR +# define L_XTND SEEK_END +#endif + + +/* Move FD's file position to OFFSET bytes from the + beginning of the file (if WHENCE is SEEK_SET), + the current position (if WHENCE is SEEK_CUR), + or the end of the file (if WHENCE is SEEK_END). + Return the new file position. */ +#ifndef __USE_FILE_OFFSET64 +extern __off_t lseek (int __fd, __off_t __offset, int __whence) __THROW; +#else +# ifdef __REDIRECT_NTH +extern __off64_t __REDIRECT_NTH (lseek, + (int __fd, __off64_t __offset, int __whence), + lseek64); +# else +# define lseek lseek64 +# endif +#endif +#ifdef __USE_LARGEFILE64 +extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence) + __THROW; +#endif + +/* Close the file descriptor FD. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int close (int __fd); + +#ifdef __USE_MISC +/* Close all open file descriptors greater than or equal to LOWFD. + Negative LOWFD is clamped to 0. */ +extern void closefrom (int __lowfd) __THROW; +#endif + +/* Read NBYTES into BUF from FD. Return the + number read, -1 for errors or 0 for EOF. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern ssize_t read (int __fd, void *__buf, size_t __nbytes) __wur + __fortified_attr_access (__write_only__, 2, 3); + +/* Write N bytes of BUF to FD. Return the number written, or -1. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern ssize_t write (int __fd, const void *__buf, size_t __n) __wur + __attr_access ((__read_only__, 2, 3)); + +#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 +# ifndef __USE_FILE_OFFSET64 +/* Read NBYTES into BUF from FD at the given position OFFSET without + changing the file pointer. Return the number read, -1 for errors + or 0 for EOF. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, + __off_t __offset) __wur + __fortified_attr_access (__write_only__, 2, 3); + +/* Write N bytes of BUF to FD at the given position OFFSET without + changing the file pointer. Return the number written, or -1. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern ssize_t pwrite (int __fd, const void *__buf, size_t __n, + __off_t __offset) __wur + __attr_access ((__read_only__, 2, 3)); + +# else +# ifdef __REDIRECT +extern ssize_t __REDIRECT (pread, (int __fd, void *__buf, size_t __nbytes, + __off64_t __offset), + pread64) __wur + __fortified_attr_access (__write_only__, 2, 3); +extern ssize_t __REDIRECT (pwrite, (int __fd, const void *__buf, + size_t __nbytes, __off64_t __offset), + pwrite64) __wur + __attr_access ((__read_only__, 2, 3)); +# else +# define pread pread64 +# define pwrite pwrite64 +# endif +# endif + +# ifdef __USE_LARGEFILE64 +/* Read NBYTES into BUF from FD at the given position OFFSET without + changing the file pointer. Return the number read, -1 for errors + or 0 for EOF. */ +extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes, + __off64_t __offset) __wur + __fortified_attr_access (__write_only__, 2, 3); +/* Write N bytes of BUF to FD at the given position OFFSET without + changing the file pointer. Return the number written, or -1. */ +extern ssize_t pwrite64 (int __fd, const void *__buf, size_t __n, + __off64_t __offset) __wur + __attr_access ((__read_only__, 2, 3)); +# endif +#endif + +/* Create a one-way communication channel (pipe). + If successful, two file descriptors are stored in PIPEDES; + bytes written on PIPEDES[1] can be read from PIPEDES[0]. + Returns 0 if successful, -1 if not. */ +extern int pipe (int __pipedes[2]) __THROW __wur; + +#ifdef __USE_GNU +/* Same as pipe but apply flags passed in FLAGS to the new file + descriptors. */ +extern int pipe2 (int __pipedes[2], int __flags) __THROW __wur; +#endif + +/* Schedule an alarm. In SECONDS seconds, the process will get a SIGALRM. + If SECONDS is zero, any currently scheduled alarm will be cancelled. + The function returns the number of seconds remaining until the last + alarm scheduled would have signaled, or zero if there wasn't one. + There is no return value to indicate an error, but you can set `errno' + to 0 and check its value after calling `alarm', and this might tell you. + The signal may come late due to processor scheduling. */ +extern unsigned int alarm (unsigned int __seconds) __THROW; + +/* Make the process sleep for SECONDS seconds, or until a signal arrives + and is not ignored. The function returns the number of seconds less + than SECONDS which it actually slept (thus zero if it slept the full time). + If a signal handler does a `longjmp' or modifies the handling of the + SIGALRM signal while inside `sleep' call, the handling of the SIGALRM + signal afterwards is undefined. There is no return value to indicate + error, but if `sleep' returns SECONDS, it probably didn't work. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern unsigned int sleep (unsigned int __seconds); + +#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ + || defined __USE_MISC +/* Set an alarm to go off (generating a SIGALRM signal) in VALUE + microseconds. If INTERVAL is nonzero, when the alarm goes off, the + timer is reset to go off every INTERVAL microseconds thereafter. + Returns the number of microseconds remaining before the alarm. */ +extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval) + __THROW; + +/* Sleep USECONDS microseconds, or until a signal arrives that is not blocked + or ignored. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int usleep (__useconds_t __useconds); +#endif + + +/* Suspend the process until a signal arrives. + This always returns -1 and sets `errno' to EINTR. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int pause (void); + + +/* Change the owner and group of FILE. */ +extern int chown (const char *__file, __uid_t __owner, __gid_t __group) + __THROW __nonnull ((1)) __wur; + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +/* Change the owner and group of the file that FD is open on. */ +extern int fchown (int __fd, __uid_t __owner, __gid_t __group) __THROW __wur; + + +/* Change owner and group of FILE, if it is a symbolic + link the ownership of the symbolic link is changed. */ +extern int lchown (const char *__file, __uid_t __owner, __gid_t __group) + __THROW __nonnull ((1)) __wur; + +#endif /* Use X/Open Unix. */ + +#ifdef __USE_ATFILE +/* Change the owner and group of FILE relative to the directory FD is open + on. */ +extern int fchownat (int __fd, const char *__file, __uid_t __owner, + __gid_t __group, int __flag) + __THROW __nonnull ((2)) __wur; +#endif /* Use GNU. */ + +/* Change the process's working directory to PATH. */ +extern int chdir (const char *__path) __THROW __nonnull ((1)) __wur; + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +/* Change the process's working directory to the one FD is open on. */ +extern int fchdir (int __fd) __THROW __wur; +#endif + +/* Get the pathname of the current working directory, + and put it in SIZE bytes of BUF. Returns NULL if the + directory couldn't be determined or SIZE was too small. + If successful, returns BUF. In GNU, if BUF is NULL, + an array is allocated with `malloc'; the array is SIZE + bytes long, unless SIZE == 0, in which case it is as + big as necessary. */ +extern char *getcwd (char *__buf, size_t __size) __THROW __wur; + +#ifdef __USE_GNU +/* Return a malloc'd string containing the current directory name. + If the environment variable `PWD' is set, and its value is correct, + that value is used. */ +extern char *get_current_dir_name (void) __THROW; +#endif + +#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ + || defined __USE_MISC +/* Put the absolute pathname of the current working directory in BUF. + If successful, return BUF. If not, put an error message in + BUF and return NULL. BUF should be at least PATH_MAX bytes long. */ +extern char *getwd (char *__buf) + __THROW __nonnull ((1)) __attribute_deprecated__ __wur + __attr_access ((__write_only__, 1)); +#endif + + +/* Duplicate FD, returning a new file descriptor on the same file. */ +extern int dup (int __fd) __THROW __wur; + +/* Duplicate FD to FD2, closing FD2 and making it open on the same file. */ +extern int dup2 (int __fd, int __fd2) __THROW; + +#ifdef __USE_GNU +/* Duplicate FD to FD2, closing FD2 and making it open on the same + file while setting flags according to FLAGS. */ +extern int dup3 (int __fd, int __fd2, int __flags) __THROW; +#endif + +/* NULL-terminated array of "NAME=VALUE" environment variables. */ +extern char **__environ; +#ifdef __USE_GNU +extern char **environ; +#endif + + +/* Replace the current process, executing PATH with arguments ARGV and + environment ENVP. ARGV and ENVP are terminated by NULL pointers. */ +extern int execve (const char *__path, char *const __argv[], + char *const __envp[]) __THROW __nonnull ((1, 2)); + +#ifdef __USE_XOPEN2K8 +/* Execute the file FD refers to, overlaying the running program image. + ARGV and ENVP are passed to the new program, as for `execve'. */ +extern int fexecve (int __fd, char *const __argv[], char *const __envp[]) + __THROW __nonnull ((2)); +#endif + + +/* Execute PATH with arguments ARGV and environment from `environ'. */ +extern int execv (const char *__path, char *const __argv[]) + __THROW __nonnull ((1, 2)); + +/* Execute PATH with all arguments after PATH until a NULL pointer, + and the argument after that for environment. */ +extern int execle (const char *__path, const char *__arg, ...) + __THROW __nonnull ((1, 2)); + +/* Execute PATH with all arguments after PATH until + a NULL pointer and environment from `environ'. */ +extern int execl (const char *__path, const char *__arg, ...) + __THROW __nonnull ((1, 2)); + +/* Execute FILE, searching in the `PATH' environment variable if it contains + no slashes, with arguments ARGV and environment from `environ'. */ +extern int execvp (const char *__file, char *const __argv[]) + __THROW __nonnull ((1, 2)); + +/* Execute FILE, searching in the `PATH' environment variable if + it contains no slashes, with all arguments after FILE until a + NULL pointer and environment from `environ'. */ +extern int execlp (const char *__file, const char *__arg, ...) + __THROW __nonnull ((1, 2)); + +#ifdef __USE_GNU +/* Execute FILE, searching in the `PATH' environment variable if it contains + no slashes, with arguments ARGV and environment from `environ'. */ +extern int execvpe (const char *__file, char *const __argv[], + char *const __envp[]) + __THROW __nonnull ((1, 2)); +#endif + + +#if defined __USE_MISC || defined __USE_XOPEN +/* Add INC to priority of the current process. */ +extern int nice (int __inc) __THROW __wur; +#endif + + +/* Terminate program execution with the low-order 8 bits of STATUS. */ +extern void _exit (int __status) __attribute__ ((__noreturn__)); + + +/* Get the `_PC_*' symbols for the NAME argument to `pathconf' and `fpathconf'; + the `_SC_*' symbols for the NAME argument to `sysconf'; + and the `_CS_*' symbols for the NAME argument to `confstr'. */ +#include + +/* Get file-specific configuration information about PATH. */ +extern long int pathconf (const char *__path, int __name) + __THROW __nonnull ((1)); + +/* Get file-specific configuration about descriptor FD. */ +extern long int fpathconf (int __fd, int __name) __THROW; + +/* Get the value of the system variable NAME. */ +extern long int sysconf (int __name) __THROW; + +#ifdef __USE_POSIX2 +/* Get the value of the string-valued system variable NAME. */ +extern size_t confstr (int __name, char *__buf, size_t __len) __THROW + __fortified_attr_access (__write_only__, 2, 3); +#endif + + +/* Get the process ID of the calling process. */ +extern __pid_t getpid (void) __THROW; + +/* Get the process ID of the calling process's parent. */ +extern __pid_t getppid (void) __THROW; + +/* Get the process group ID of the calling process. */ +extern __pid_t getpgrp (void) __THROW; + +/* Get the process group ID of process PID. */ +extern __pid_t __getpgid (__pid_t __pid) __THROW; +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +extern __pid_t getpgid (__pid_t __pid) __THROW; +#endif + + +/* Set the process group ID of the process matching PID to PGID. + If PID is zero, the current process's process group ID is set. + If PGID is zero, the process ID of the process is used. */ +extern int setpgid (__pid_t __pid, __pid_t __pgid) __THROW; + +#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED +/* Both System V and BSD have `setpgrp' functions, but with different + calling conventions. The BSD function is the same as POSIX.1 `setpgid' + (above). The System V function takes no arguments and puts the calling + process in its on group like `setpgid (0, 0)'. + + New programs should always use `setpgid' instead. + + GNU provides the POSIX.1 function. */ + +/* Set the process group ID of the calling process to its own PID. + This is exactly the same as `setpgid (0, 0)'. */ +extern int setpgrp (void) __THROW; + +#endif /* Use misc or X/Open. */ + +/* Create a new session with the calling process as its leader. + The process group IDs of the session and the calling process + are set to the process ID of the calling process, which is returned. */ +extern __pid_t setsid (void) __THROW; + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +/* Return the session ID of the given process. */ +extern __pid_t getsid (__pid_t __pid) __THROW; +#endif + +/* Get the real user ID of the calling process. */ +extern __uid_t getuid (void) __THROW; + +/* Get the effective user ID of the calling process. */ +extern __uid_t geteuid (void) __THROW; + +/* Get the real group ID of the calling process. */ +extern __gid_t getgid (void) __THROW; + +/* Get the effective group ID of the calling process. */ +extern __gid_t getegid (void) __THROW; + +/* If SIZE is zero, return the number of supplementary groups + the calling process is in. Otherwise, fill in the group IDs + of its supplementary groups in LIST and return the number written. */ +extern int getgroups (int __size, __gid_t __list[]) __THROW __wur + __fortified_attr_access (__write_only__, 2, 1); +#ifdef __USE_GNU +/* Return nonzero iff the calling process is in group GID. */ +extern int group_member (__gid_t __gid) __THROW; +#endif + +/* Set the user ID of the calling process to UID. + If the calling process is the super-user, set the real + and effective user IDs, and the saved set-user-ID to UID; + if not, the effective user ID is set to UID. */ +extern int setuid (__uid_t __uid) __THROW __wur; + +#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED +/* Set the real user ID of the calling process to RUID, + and the effective user ID of the calling process to EUID. */ +extern int setreuid (__uid_t __ruid, __uid_t __euid) __THROW __wur; +#endif + +#ifdef __USE_XOPEN2K +/* Set the effective user ID of the calling process to UID. */ +extern int seteuid (__uid_t __uid) __THROW __wur; +#endif /* Use POSIX.1-2001. */ + +/* Set the group ID of the calling process to GID. + If the calling process is the super-user, set the real + and effective group IDs, and the saved set-group-ID to GID; + if not, the effective group ID is set to GID. */ +extern int setgid (__gid_t __gid) __THROW __wur; + +#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED +/* Set the real group ID of the calling process to RGID, + and the effective group ID of the calling process to EGID. */ +extern int setregid (__gid_t __rgid, __gid_t __egid) __THROW __wur; +#endif + +#ifdef __USE_XOPEN2K +/* Set the effective group ID of the calling process to GID. */ +extern int setegid (__gid_t __gid) __THROW __wur; +#endif /* Use POSIX.1-2001. */ + +#ifdef __USE_GNU +/* Fetch the real user ID, effective user ID, and saved-set user ID, + of the calling process. */ +extern int getresuid (__uid_t *__ruid, __uid_t *__euid, __uid_t *__suid) + __THROW; + +/* Fetch the real group ID, effective group ID, and saved-set group ID, + of the calling process. */ +extern int getresgid (__gid_t *__rgid, __gid_t *__egid, __gid_t *__sgid) + __THROW; + +/* Set the real user ID, effective user ID, and saved-set user ID, + of the calling process to RUID, EUID, and SUID, respectively. */ +extern int setresuid (__uid_t __ruid, __uid_t __euid, __uid_t __suid) + __THROW __wur; + +/* Set the real group ID, effective group ID, and saved-set group ID, + of the calling process to RGID, EGID, and SGID, respectively. */ +extern int setresgid (__gid_t __rgid, __gid_t __egid, __gid_t __sgid) + __THROW __wur; +#endif + + +/* Clone the calling process, creating an exact copy. + Return -1 for errors, 0 to the new process, + and the process ID of the new process to the old process. */ +extern __pid_t fork (void) __THROWNL; + +#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ + || defined __USE_MISC +/* Clone the calling process, but without copying the whole address space. + The calling process is suspended until the new process exits or is + replaced by a call to `execve'. Return -1 for errors, 0 to the new process, + and the process ID of the new process to the old process. */ +extern __pid_t vfork (void) __THROW; +#endif /* Use misc or XPG < 7. */ + +#ifdef __USE_GNU +/* This is similar to fork, however it does not run the atfork handlers + neither reinitialize any internal locks in multithread case. + Different than fork, _Fork is async-signal-safe. */ +extern __pid_t _Fork (void) __THROW; +#endif + + +/* Return the pathname of the terminal FD is open on, or NULL on errors. + The returned storage is good only until the next call to this function. */ +extern char *ttyname (int __fd) __THROW; + +/* Store at most BUFLEN characters of the pathname of the terminal FD is + open on in BUF. Return 0 on success, otherwise an error number. */ +extern int ttyname_r (int __fd, char *__buf, size_t __buflen) + __THROW __nonnull ((2)) __wur + __fortified_attr_access (__write_only__, 2, 3); + +/* Return 1 if FD is a valid descriptor associated + with a terminal, zero if not. */ +extern int isatty (int __fd) __THROW; + +#ifdef __USE_MISC +/* Return the index into the active-logins file (utmp) for + the controlling terminal. */ +extern int ttyslot (void) __THROW; +#endif + + +/* Make a link to FROM named TO. */ +extern int link (const char *__from, const char *__to) + __THROW __nonnull ((1, 2)) __wur; + +#ifdef __USE_ATFILE +/* Like link but relative paths in TO and FROM are interpreted relative + to FROMFD and TOFD respectively. */ +extern int linkat (int __fromfd, const char *__from, int __tofd, + const char *__to, int __flags) + __THROW __nonnull ((2, 4)) __wur; +#endif + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K +/* Make a symbolic link to FROM named TO. */ +extern int symlink (const char *__from, const char *__to) + __THROW __nonnull ((1, 2)) __wur; + +/* Read the contents of the symbolic link PATH into no more than + LEN bytes of BUF. The contents are not null-terminated. + Returns the number of characters read, or -1 for errors. */ +extern ssize_t readlink (const char *__restrict __path, + char *__restrict __buf, size_t __len) + __THROW __nonnull ((1, 2)) __wur + __fortified_attr_access (__write_only__, 2, 3); + +#endif /* Use POSIX.1-2001. */ + +#ifdef __USE_ATFILE +/* Like symlink but a relative path in TO is interpreted relative to TOFD. */ +extern int symlinkat (const char *__from, int __tofd, + const char *__to) __THROW __nonnull ((1, 3)) __wur; + +/* Like readlink but a relative PATH is interpreted relative to FD. */ +extern ssize_t readlinkat (int __fd, const char *__restrict __path, + char *__restrict __buf, size_t __len) + __THROW __nonnull ((2, 3)) __wur + __fortified_attr_access (__write_only__, 3, 4); +#endif + +/* Remove the link NAME. */ +extern int unlink (const char *__name) __THROW __nonnull ((1)); + +#ifdef __USE_ATFILE +/* Remove the link NAME relative to FD. */ +extern int unlinkat (int __fd, const char *__name, int __flag) + __THROW __nonnull ((2)); +#endif + +/* Remove the directory PATH. */ +extern int rmdir (const char *__path) __THROW __nonnull ((1)); + + +/* Return the foreground process group ID of FD. */ +extern __pid_t tcgetpgrp (int __fd) __THROW; + +/* Set the foreground process group ID of FD set PGRP_ID. */ +extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) __THROW; + + +/* Return the login name of the user. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern char *getlogin (void); +#ifdef __USE_POSIX199506 +/* Return at most NAME_LEN characters of the login name of the user in NAME. + If it cannot be determined or some other error occurred, return the error + code. Otherwise return 0. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int getlogin_r (char *__name, size_t __name_len) __nonnull ((1)) + __fortified_attr_access (__write_only__, 1, 2); +#endif + +#ifdef __USE_MISC +/* Set the login name returned by `getlogin'. */ +extern int setlogin (const char *__name) __THROW __nonnull ((1)); +#endif + + +#ifdef __USE_POSIX2 +/* Get definitions and prototypes for functions to process the + arguments in ARGV (ARGC of them, minus the program name) for + options given in OPTS. */ +# include +#endif + + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K +/* Put the name of the current host in no more than LEN bytes of NAME. + The result is null-terminated if LEN is large enough for the full + name and the terminator. */ +extern int gethostname (char *__name, size_t __len) __THROW __nonnull ((1)) + __fortified_attr_access (__write_only__, 1, 2); +#endif + + +#if defined __USE_MISC +/* Set the name of the current host to NAME, which is LEN bytes long. + This call is restricted to the super-user. */ +extern int sethostname (const char *__name, size_t __len) + __THROW __nonnull ((1)) __wur __attr_access ((__read_only__, 1, 2)); + +/* Set the current machine's Internet number to ID. + This call is restricted to the super-user. */ +extern int sethostid (long int __id) __THROW __wur; + + +/* Get and set the NIS (aka YP) domain name, if any. + Called just like `gethostname' and `sethostname'. + The NIS domain name is usually the empty string when not using NIS. */ +extern int getdomainname (char *__name, size_t __len) + __THROW __nonnull ((1)) __wur + __fortified_attr_access (__write_only__, 1, 2); +extern int setdomainname (const char *__name, size_t __len) + __THROW __nonnull ((1)) __wur __attr_access ((__read_only__, 1, 2)); + +/* Revoke access permissions to all processes currently communicating + with the control terminal, and then send a SIGHUP signal to the process + group of the control terminal. */ +extern int vhangup (void) __THROW; + +/* Revoke the access of all descriptors currently open on FILE. */ +extern int revoke (const char *__file) __THROW __nonnull ((1)) __wur; + + +/* Enable statistical profiling, writing samples of the PC into at most + SIZE bytes of SAMPLE_BUFFER; every processor clock tick while profiling + is enabled, the system examines the user PC and increments + SAMPLE_BUFFER[((PC - OFFSET) / 2) * SCALE / 65536]. If SCALE is zero, + disable profiling. Returns zero on success, -1 on error. */ +extern int profil (unsigned short int *__sample_buffer, size_t __size, + size_t __offset, unsigned int __scale) + __THROW __nonnull ((1)); + + +/* Turn accounting on if NAME is an existing file. The system will then write + a record for each process as it terminates, to this file. If NAME is NULL, + turn accounting off. This call is restricted to the super-user. */ +extern int acct (const char *__name) __THROW; + + +/* Successive calls return the shells listed in `/etc/shells'. */ +extern char *getusershell (void) __THROW; +extern void endusershell (void) __THROW; /* Discard cached info. */ +extern void setusershell (void) __THROW; /* Rewind and re-read the file. */ + + +/* Put the program in the background, and dissociate from the controlling + terminal. If NOCHDIR is zero, do `chdir ("/")'. If NOCLOSE is zero, + redirects stdin, stdout, and stderr to /dev/null. */ +extern int daemon (int __nochdir, int __noclose) __THROW __wur; +#endif /* Use misc. */ + + +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) +/* Make PATH be the root directory (the starting point for absolute paths). + This call is restricted to the super-user. */ +extern int chroot (const char *__path) __THROW __nonnull ((1)) __wur; + +/* Prompt with PROMPT and read a string from the terminal without echoing. + Uses /dev/tty if possible; otherwise stderr and stdin. */ +extern char *getpass (const char *__prompt) __nonnull ((1)); +#endif /* Use misc || X/Open. */ + + +/* Make all changes done to FD actually appear on disk. + + This function is a cancellation point and therefore not marked with + __THROW. */ +extern int fsync (int __fd); + + +#ifdef __USE_GNU +/* Make all changes done to all files on the file system associated + with FD actually appear on disk. */ +extern int syncfs (int __fd) __THROW; +#endif + + +#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED + +/* Return identifier for the current host. */ +extern long int gethostid (void); + +/* Make all changes done to all files actually appear on disk. */ +extern void sync (void) __THROW; + + +# if defined __USE_MISC || !defined __USE_XOPEN2K +/* Return the number of bytes in a page. This is the system's page size, + which is not necessarily the same as the hardware page size. */ +extern int getpagesize (void) __THROW __attribute__ ((__const__)); + + +/* Return the maximum number of file descriptors + the current process could possibly have. */ +extern int getdtablesize (void) __THROW; +# endif + +#endif /* Use misc || X/Open Unix. */ + + +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 + +/* Truncate FILE to LENGTH bytes. */ +# ifndef __USE_FILE_OFFSET64 +extern int truncate (const char *__file, __off_t __length) + __THROW __nonnull ((1)) __wur; +# else +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (truncate, + (const char *__file, __off64_t __length), + truncate64) __nonnull ((1)) __wur; +# else +# define truncate truncate64 +# endif +# endif +# ifdef __USE_LARGEFILE64 +extern int truncate64 (const char *__file, __off64_t __length) + __THROW __nonnull ((1)) __wur; +# endif + +#endif /* Use X/Open Unix || POSIX 2008. */ + +#if defined __USE_POSIX199309 \ + || defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K + +/* Truncate the file FD is open on to LENGTH bytes. */ +# ifndef __USE_FILE_OFFSET64 +extern int ftruncate (int __fd, __off_t __length) __THROW __wur; +# else +# ifdef __REDIRECT_NTH +extern int __REDIRECT_NTH (ftruncate, (int __fd, __off64_t __length), + ftruncate64) __wur; +# else +# define ftruncate ftruncate64 +# endif +# endif +# ifdef __USE_LARGEFILE64 +extern int ftruncate64 (int __fd, __off64_t __length) __THROW __wur; +# endif + +#endif /* Use POSIX.1b || X/Open Unix || XPG6. */ + + +#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K) \ + || defined __USE_MISC + +/* Set the end of accessible data space (aka "the break") to ADDR. + Returns zero on success and -1 for errors (with errno set). */ +extern int brk (void *__addr) __THROW __wur; + +/* Increase or decrease the end of accessible data space by DELTA bytes. + If successful, returns the address the previous end of data space + (i.e. the beginning of the new space, if DELTA > 0); + returns (void *) -1 for errors (with errno set). */ +extern void *sbrk (intptr_t __delta) __THROW; +#endif + + +#ifdef __USE_MISC +/* Invoke `system call' number SYSNO, passing it the remaining arguments. + This is completely system-dependent, and not often useful. + + In Unix, `syscall' sets `errno' for all errors and most calls return -1 + for errors; in many systems you cannot pass arguments or get return + values for all system calls (`pipe', `fork', and `getppid' typically + among them). + + In Mach, all system calls take normal arguments and always return an + error code (zero for success). */ +extern long int syscall (long int __sysno, ...) __THROW; + +#endif /* Use misc. */ + + +#if (defined __USE_MISC || defined __USE_XOPEN_EXTENDED) && !defined F_LOCK +/* NOTE: These declarations also appear in ; be sure to keep both + files consistent. Some systems have them there and some here, and some + software depends on the macros being defined without including both. */ + +/* `lockf' is a simpler interface to the locking facilities of `fcntl'. + LEN is always relative to the current file position. + The CMD argument is one of the following. + + This function is a cancellation point and therefore not marked with + __THROW. */ + +# define F_ULOCK 0 /* Unlock a previously locked region. */ +# define F_LOCK 1 /* Lock a region for exclusive use. */ +# define F_TLOCK 2 /* Test and lock a region for exclusive use. */ +# define F_TEST 3 /* Test a region for other processes locks. */ + +# ifndef __USE_FILE_OFFSET64 +extern int lockf (int __fd, int __cmd, __off_t __len) __wur; +# else +# ifdef __REDIRECT +extern int __REDIRECT (lockf, (int __fd, int __cmd, __off64_t __len), + lockf64) __wur; +# else +# define lockf lockf64 +# endif +# endif +# ifdef __USE_LARGEFILE64 +extern int lockf64 (int __fd, int __cmd, __off64_t __len) __wur; +# endif +#endif /* Use misc and F_LOCK not already defined. */ + + +#ifdef __USE_GNU + +/* Evaluate EXPRESSION, and repeat as long as it returns -1 with `errno' + set to EINTR. */ + +# define TEMP_FAILURE_RETRY(expression) \ + (__extension__ \ + ({ long int __result; \ + do __result = (long int) (expression); \ + while (__result == -1L && errno == EINTR); \ + __result; })) + +/* Copy LENGTH bytes from INFD to OUTFD. */ +ssize_t copy_file_range (int __infd, __off64_t *__pinoff, + int __outfd, __off64_t *__poutoff, + size_t __length, unsigned int __flags); +#endif /* __USE_GNU */ + +#if defined __USE_POSIX199309 || defined __USE_UNIX98 +/* Synchronize at least the data part of a file with the underlying + media. */ +extern int fdatasync (int __fildes); +#endif /* Use POSIX199309 */ + +#ifdef __USE_MISC +/* One-way hash PHRASE, returning a string suitable for storage in the + user database. SALT selects the one-way function to use, and + ensures that no two users' hashes are the same, even if they use + the same passphrase. The return value points to static storage + which will be overwritten by the next call to crypt. */ +extern char *crypt (const char *__key, const char *__salt) + __THROW __nonnull ((1, 2)); +#endif + +#ifdef __USE_XOPEN +/* Swab pairs bytes in the first N bytes of the area pointed to by + FROM and copy the result to TO. The value of TO must not be in the + range [FROM - N + 1, FROM - 1]. If N is odd the first byte in FROM + is without partner. */ +extern void swab (const void *__restrict __from, void *__restrict __to, + ssize_t __n) __THROW __nonnull ((1, 2)) + __attr_access ((__read_only__, 1, 3)) + __attr_access ((__write_only__, 2, 3)); +#endif + + +/* Prior to Issue 6, the Single Unix Specification required these + prototypes to appear in this header. They are also found in + . */ +#if defined __USE_XOPEN && !defined __USE_XOPEN2K +/* Return the name of the controlling terminal. */ +extern char *ctermid (char *__s) __THROW; + +/* Return the name of the current user. */ +extern char *cuserid (char *__s); +#endif + + +/* Unix98 requires this function to be declared here. In other + standards it is in . */ +#if defined __USE_UNIX98 && !defined __USE_XOPEN2K +extern int pthread_atfork (void (*__prepare) (void), + void (*__parent) (void), + void (*__child) (void)) __THROW; +#endif + +#ifdef __USE_MISC +/* Write LENGTH bytes of randomness starting at BUFFER. Return 0 on + success or -1 on error. */ +int getentropy (void *__buffer, size_t __length) __wur + __attr_access ((__write_only__, 1, 2)); +#endif + +#ifdef __USE_GNU +/* Close all file descriptors in the range FD up to MAX_FD. The flag FLAGS + are define by the CLOSE_RANGE prefix. This function behaves like close + on the range and gaps where the file descriptor is invalid or errors + encountered while closing file descriptors are ignored. Returns 0 on + successor or -1 for failure (and sets errno accordingly). */ +extern int close_range (unsigned int __fd, unsigned int __max_fd, + int __flags) __THROW; +#endif + +/* Define some macros helping to catch buffer overflows. */ +#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function +# include +#endif + +/* System-specific extensions. */ +#include + +__END_DECLS + +#endif /* unistd.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5f4f3f34d0563258215071dfcec6377016b118d5 GIT binary patch literal 52437 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

    8=CrrKiuaQTtJ#Uqyp|X5oeH)E$sQOZa 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. */ + +/* + * ISO C99 Standard: 7.24 + * Extended multibyte and wide character utilities + */ + +#ifndef _WCHAR_H +#define _WCHAR_H 1 + +#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION +#include + +/* Gather machine dependent type support. */ +#include + +#define __need_size_t +#define __need_wchar_t +#define __need_NULL +#include + +#define __need___va_list +#include + +#if defined __USE_XOPEN2K || defined __USE_XOPEN2K8 +# ifdef __GNUC__ +# ifndef _VA_LIST_DEFINED +typedef __gnuc_va_list va_list; +# define _VA_LIST_DEFINED +# endif +# else +# include +# endif +#endif + +#include +#include +#include +#include + +#if defined __USE_UNIX98 || defined __USE_XOPEN2K +# include +#endif +#ifdef __USE_XOPEN2K8 +# include +#endif + +/* Tell the caller that we provide correct C++ prototypes. */ +#if defined __cplusplus && __GNUC_PREREQ (4, 4) +# define __CORRECT_ISO_CPP_WCHAR_H_PROTO +#endif + +#ifndef WCHAR_MIN +/* These constants might also be defined in . */ +# define WCHAR_MIN __WCHAR_MIN +# define WCHAR_MAX __WCHAR_MAX +#endif + +#ifndef WEOF +# define WEOF (0xffffffffu) +#endif + +/* All versions of XPG prior to the publication of ISO C99 required + the bulk of 's declarations to appear in this header + (because did not exist prior to C99). In POSIX.1-2001 + those declarations were marked as XSI extensions; in -2008 they + were additionally marked as obsolescent. _GNU_SOURCE mode + anticipates the removal of these declarations in the next revision + of POSIX. */ +#if (defined __USE_XOPEN && !defined __USE_GNU \ + && !(defined __USE_XOPEN2K && !defined __USE_XOPEN2KXSI)) +# include +#endif + +__BEGIN_DECLS + +/* This incomplete type is defined in but needed here because + of `wcsftime'. */ +struct tm; + + +/* Copy SRC to DEST. */ +extern wchar_t *wcscpy (wchar_t *__restrict __dest, + const wchar_t *__restrict __src) + __THROW __nonnull ((1, 2)); + +/* Copy no more than N wide-characters of SRC to DEST. */ +extern wchar_t *wcsncpy (wchar_t *__restrict __dest, + const wchar_t *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)); + +#ifdef __USE_MISC +/* Copy at most N - 1 characters from SRC to DEST. */ +extern size_t wcslcpy (wchar_t *__restrict __dest, + const wchar_t *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)) __attr_access ((__write_only__, 1, 3)); + +/* Append SRC to DEST, possibly with truncation to keep the total size + below N. */ +extern size_t wcslcat (wchar_t *__restrict __dest, + const wchar_t *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)) __attr_access ((__read_write__, 1, 3)); +#endif + +/* Append SRC onto DEST. */ +extern wchar_t *wcscat (wchar_t *__restrict __dest, + const wchar_t *__restrict __src) + __THROW __nonnull ((1, 2)); +/* Append no more than N wide-characters of SRC onto DEST. */ +extern wchar_t *wcsncat (wchar_t *__restrict __dest, + const wchar_t *__restrict __src, size_t __n) + __THROW __nonnull ((1, 2)); + +/* Compare S1 and S2. */ +extern int wcscmp (const wchar_t *__s1, const wchar_t *__s2) + __THROW __attribute_pure__ __nonnull ((1, 2)); +/* Compare N wide-characters of S1 and S2. */ +extern int wcsncmp (const wchar_t *__s1, const wchar_t *__s2, size_t __n) + __THROW __attribute_pure__ __nonnull ((1, 2)); + +#ifdef __USE_XOPEN2K8 +/* Compare S1 and S2, ignoring case. */ +extern int wcscasecmp (const wchar_t *__s1, const wchar_t *__s2) __THROW; + +/* Compare no more than N chars of S1 and S2, ignoring case. */ +extern int wcsncasecmp (const wchar_t *__s1, const wchar_t *__s2, + size_t __n) __THROW; + +/* Similar to the two functions above but take the information from + the provided locale and not the global locale. */ +extern int wcscasecmp_l (const wchar_t *__s1, const wchar_t *__s2, + locale_t __loc) __THROW; + +extern int wcsncasecmp_l (const wchar_t *__s1, const wchar_t *__s2, + size_t __n, locale_t __loc) __THROW; +#endif + +/* Compare S1 and S2, both interpreted as appropriate to the + LC_COLLATE category of the current locale. */ +extern int wcscoll (const wchar_t *__s1, const wchar_t *__s2) __THROW; +/* Transform S2 into array pointed to by S1 such that if wcscmp is + applied to two transformed strings the result is the as applying + `wcscoll' to the original strings. */ +extern size_t wcsxfrm (wchar_t *__restrict __s1, + const wchar_t *__restrict __s2, size_t __n) __THROW; + +#ifdef __USE_XOPEN2K8 +/* Similar to the two functions above but take the information from + the provided locale and not the global locale. */ + +/* Compare S1 and S2, both interpreted as appropriate to the + LC_COLLATE category of the given locale. */ +extern int wcscoll_l (const wchar_t *__s1, const wchar_t *__s2, + locale_t __loc) __THROW; + +/* Transform S2 into array pointed to by S1 such that if wcscmp is + applied to two transformed strings the result is the as applying + `wcscoll' to the original strings. */ +extern size_t wcsxfrm_l (wchar_t *__s1, const wchar_t *__s2, + size_t __n, locale_t __loc) __THROW; + +/* Duplicate S, returning an identical malloc'd string. */ +extern wchar_t *wcsdup (const wchar_t *__s) __THROW + __attribute_malloc__ __attr_dealloc_free; +#endif + +/* Find the first occurrence of WC in WCS. */ +#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO +extern "C++" wchar_t *wcschr (wchar_t *__wcs, wchar_t __wc) + __THROW __asm ("wcschr") __attribute_pure__; +extern "C++" const wchar_t *wcschr (const wchar_t *__wcs, wchar_t __wc) + __THROW __asm ("wcschr") __attribute_pure__; +#else +extern wchar_t *wcschr (const wchar_t *__wcs, wchar_t __wc) + __THROW __attribute_pure__; +#endif +/* Find the last occurrence of WC in WCS. */ +#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO +extern "C++" wchar_t *wcsrchr (wchar_t *__wcs, wchar_t __wc) + __THROW __asm ("wcsrchr") __attribute_pure__; +extern "C++" const wchar_t *wcsrchr (const wchar_t *__wcs, wchar_t __wc) + __THROW __asm ("wcsrchr") __attribute_pure__; +#else +extern wchar_t *wcsrchr (const wchar_t *__wcs, wchar_t __wc) + __THROW __attribute_pure__; +#endif + +#ifdef __USE_GNU +/* This function is similar to `wcschr'. But it returns a pointer to + the closing NUL wide character in case C is not found in S. */ +extern wchar_t *wcschrnul (const wchar_t *__s, wchar_t __wc) + __THROW __attribute_pure__; +#endif + +/* Return the length of the initial segmet of WCS which + consists entirely of wide characters not in REJECT. */ +extern size_t wcscspn (const wchar_t *__wcs, const wchar_t *__reject) + __THROW __attribute_pure__; +/* Return the length of the initial segmet of WCS which + consists entirely of wide characters in ACCEPT. */ +extern size_t wcsspn (const wchar_t *__wcs, const wchar_t *__accept) + __THROW __attribute_pure__; +/* Find the first occurrence in WCS of any character in ACCEPT. */ +#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO +extern "C++" wchar_t *wcspbrk (wchar_t *__wcs, const wchar_t *__accept) + __THROW __asm ("wcspbrk") __attribute_pure__; +extern "C++" const wchar_t *wcspbrk (const wchar_t *__wcs, + const wchar_t *__accept) + __THROW __asm ("wcspbrk") __attribute_pure__; +#else +extern wchar_t *wcspbrk (const wchar_t *__wcs, const wchar_t *__accept) + __THROW __attribute_pure__; +#endif +/* Find the first occurrence of NEEDLE in HAYSTACK. */ +#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO +extern "C++" wchar_t *wcsstr (wchar_t *__haystack, const wchar_t *__needle) + __THROW __asm ("wcsstr") __attribute_pure__; +extern "C++" const wchar_t *wcsstr (const wchar_t *__haystack, + const wchar_t *__needle) + __THROW __asm ("wcsstr") __attribute_pure__; +#else +extern wchar_t *wcsstr (const wchar_t *__haystack, const wchar_t *__needle) + __THROW __attribute_pure__; +#endif + +/* Divide WCS into tokens separated by characters in DELIM. */ +extern wchar_t *wcstok (wchar_t *__restrict __s, + const wchar_t *__restrict __delim, + wchar_t **__restrict __ptr) __THROW; + +/* Return the number of wide characters in S. */ +extern size_t wcslen (const wchar_t *__s) __THROW __attribute_pure__; + +#ifdef __USE_XOPEN +/* Another name for `wcsstr' from XPG4. */ +# ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO +extern "C++" wchar_t *wcswcs (wchar_t *__haystack, const wchar_t *__needle) + __THROW __asm ("wcswcs") __attribute_pure__; +extern "C++" const wchar_t *wcswcs (const wchar_t *__haystack, + const wchar_t *__needle) + __THROW __asm ("wcswcs") __attribute_pure__; +# else +extern wchar_t *wcswcs (const wchar_t *__haystack, const wchar_t *__needle) + __THROW __attribute_pure__; +# endif +#endif + +#ifdef __USE_XOPEN2K8 +/* Return the number of wide characters in S, but at most MAXLEN. */ +extern size_t wcsnlen (const wchar_t *__s, size_t __maxlen) + __THROW __attribute_pure__; +#endif + + +/* Search N wide characters of S for C. */ +#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO +extern "C++" wchar_t *wmemchr (wchar_t *__s, wchar_t __c, size_t __n) + __THROW __asm ("wmemchr") __attribute_pure__; +extern "C++" const wchar_t *wmemchr (const wchar_t *__s, wchar_t __c, + size_t __n) + __THROW __asm ("wmemchr") __attribute_pure__; +#else +extern wchar_t *wmemchr (const wchar_t *__s, wchar_t __c, size_t __n) + __THROW __attribute_pure__; +#endif + +/* Compare N wide characters of S1 and S2. */ +extern int wmemcmp (const wchar_t *__s1, const wchar_t *__s2, size_t __n) + __THROW __attribute_pure__; + +/* Copy N wide characters of SRC to DEST. */ +extern wchar_t *wmemcpy (wchar_t *__restrict __s1, + const wchar_t *__restrict __s2, size_t __n) __THROW; + +/* Copy N wide characters of SRC to DEST, guaranteeing + correct behavior for overlapping strings. */ +extern wchar_t *wmemmove (wchar_t *__s1, const wchar_t *__s2, size_t __n) + __THROW; + +/* Set N wide characters of S to C. */ +extern wchar_t *wmemset (wchar_t *__s, wchar_t __c, size_t __n) __THROW; + +#ifdef __USE_GNU +/* Copy N wide characters of SRC to DEST and return pointer to following + wide character. */ +extern wchar_t *wmempcpy (wchar_t *__restrict __s1, + const wchar_t *__restrict __s2, size_t __n) + __THROW; +#endif + + +/* Determine whether C constitutes a valid (one-byte) multibyte + character. */ +extern wint_t btowc (int __c) __THROW; + +/* Determine whether C corresponds to a member of the extended + character set whose multibyte representation is a single byte. */ +extern int wctob (wint_t __c) __THROW; + +/* Determine whether PS points to an object representing the initial + state. */ +extern int mbsinit (const mbstate_t *__ps) __THROW __attribute_pure__; + +/* Write wide character representation of multibyte character pointed + to by S to PWC. */ +extern size_t mbrtowc (wchar_t *__restrict __pwc, + const char *__restrict __s, size_t __n, + mbstate_t *__restrict __p) __THROW; + +/* Write multibyte representation of wide character WC to S. */ +extern size_t wcrtomb (char *__restrict __s, wchar_t __wc, + mbstate_t *__restrict __ps) __THROW; + +/* Return number of bytes in multibyte character pointed to by S. */ +extern size_t __mbrlen (const char *__restrict __s, size_t __n, + mbstate_t *__restrict __ps) __THROW; +extern size_t mbrlen (const char *__restrict __s, size_t __n, + mbstate_t *__restrict __ps) __THROW; + +#ifdef __USE_EXTERN_INLINES +/* Define inline function as optimization. */ + +/* We can use the BTOWC and WCTOB optimizations since we know that all + locales must use ASCII encoding for the values in the ASCII range + and because the wchar_t encoding is always ISO 10646. */ +extern wint_t __btowc_alias (int __c) __asm ("btowc"); +__extern_inline wint_t +__NTH (btowc (int __c)) +{ return (__builtin_constant_p (__c) && __c >= '\0' && __c <= '\x7f' + ? (wint_t) __c : __btowc_alias (__c)); } + +extern int __wctob_alias (wint_t __c) __asm ("wctob"); +__extern_inline int +__NTH (wctob (wint_t __wc)) +{ return (__builtin_constant_p (__wc) && __wc >= L'\0' && __wc <= L'\x7f' + ? (int) __wc : __wctob_alias (__wc)); } + +__extern_inline size_t +__NTH (mbrlen (const char *__restrict __s, size_t __n, + mbstate_t *__restrict __ps)) +{ return (__ps != NULL + ? mbrtowc (NULL, __s, __n, __ps) : __mbrlen (__s, __n, NULL)); } +#endif + +/* Write wide character representation of multibyte character string + SRC to DST. */ +extern size_t mbsrtowcs (wchar_t *__restrict __dst, + const char **__restrict __src, size_t __len, + mbstate_t *__restrict __ps) __THROW; + +/* Write multibyte character representation of wide character string + SRC to DST. */ +extern size_t wcsrtombs (char *__restrict __dst, + const wchar_t **__restrict __src, size_t __len, + mbstate_t *__restrict __ps) __THROW; + + +#ifdef __USE_XOPEN2K8 +/* Write wide character representation of at most NMC bytes of the + multibyte character string SRC to DST. */ +extern size_t mbsnrtowcs (wchar_t *__restrict __dst, + const char **__restrict __src, size_t __nmc, + size_t __len, mbstate_t *__restrict __ps) __THROW; + +/* Write multibyte character representation of at most NWC characters + from the wide character string SRC to DST. */ +extern size_t wcsnrtombs (char *__restrict __dst, + const wchar_t **__restrict __src, + size_t __nwc, size_t __len, + mbstate_t *__restrict __ps) __THROW; +#endif /* use POSIX 2008 */ + + +/* The following functions are extensions found in X/Open CAE. */ +#ifdef __USE_XOPEN +/* Determine number of column positions required for C. */ +extern int wcwidth (wchar_t __c) __THROW; + +/* Determine number of column positions required for first N wide + characters (or fewer if S ends before this) in S. */ +extern int wcswidth (const wchar_t *__s, size_t __n) __THROW; +#endif /* Use X/Open. */ + + +/* Convert initial portion of the wide string NPTR to `double' + representation. */ +extern double wcstod (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; + +#ifdef __USE_ISOC99 +/* Likewise for `float' and `long double' sizes of floating-point numbers. */ +extern float wcstof (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +extern long double wcstold (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +#endif /* C99 */ + +#if __GLIBC_USE (IEC_60559_TYPES_EXT) && __GLIBC_USE (ISOC2X) +/* Likewise for `_FloatN' and `_FloatNx' when support is enabled. */ + +# if __HAVE_FLOAT16 +extern _Float16 wcstof16 (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +# endif + +# if __HAVE_FLOAT32 +extern _Float32 wcstof32 (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +# endif + +# if __HAVE_FLOAT64 +extern _Float64 wcstof64 (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +# endif + +# if __HAVE_FLOAT128 +extern _Float128 wcstof128 (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +# endif + +# if __HAVE_FLOAT32X +extern _Float32x wcstof32x (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +# endif + +# if __HAVE_FLOAT64X +extern _Float64x wcstof64x (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +# endif + +# if __HAVE_FLOAT128X +extern _Float128x wcstof128x (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr) __THROW; +# endif +#endif /* __GLIBC_USE (IEC_60559_TYPES_EXT) && __GLIBC_USE (ISOC2X) */ + + +/* Convert initial portion of wide string NPTR to `long int' + representation. */ +extern long int wcstol (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, int __base) __THROW; + +/* Convert initial portion of wide string NPTR to `unsigned long int' + representation. */ +extern unsigned long int wcstoul (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, int __base) + __THROW; + +#ifdef __USE_ISOC99 +/* Convert initial portion of wide string NPTR to `long long int' + representation. */ +__extension__ +extern long long int wcstoll (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, int __base) + __THROW; + +/* Convert initial portion of wide string NPTR to `unsigned long long int' + representation. */ +__extension__ +extern unsigned long long int wcstoull (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base) __THROW; +#endif /* ISO C99. */ + +#ifdef __USE_GNU +/* Convert initial portion of wide string NPTR to `long long int' + representation. */ +__extension__ +extern long long int wcstoq (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, int __base) + __THROW; + +/* Convert initial portion of wide string NPTR to `unsigned long long int' + representation. */ +__extension__ +extern unsigned long long int wcstouq (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base) __THROW; +#endif /* Use GNU. */ + +/* Versions of the above functions that handle '0b' and '0B' prefixes + in base 0 or 2. */ +#if __GLIBC_USE (C2X_STRTOL) +# ifdef __REDIRECT +extern long int __REDIRECT_NTH (wcstol, (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base), __isoc23_wcstol); +extern unsigned long int __REDIRECT_NTH (wcstoul, + (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base), __isoc23_wcstoul); +__extension__ +extern long long int __REDIRECT_NTH (wcstoll, + (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base), __isoc23_wcstoll); +__extension__ +extern unsigned long long int __REDIRECT_NTH (wcstoull, + (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base), __isoc23_wcstoull); +# ifdef __USE_GNU +__extension__ +extern long long int __REDIRECT_NTH (wcstoq, (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base), __isoc23_wcstoll); +__extension__ +extern unsigned long long int __REDIRECT_NTH (wcstouq, + (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base), __isoc23_wcstoull); +# endif +# else +extern long int __isoc23_wcstol (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, int __base) + __THROW; +extern unsigned long int __isoc23_wcstoul (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base) + __THROW; +__extension__ +extern long long int __isoc23_wcstoll (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base) + __THROW; +__extension__ +extern unsigned long long int __isoc23_wcstoull (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base) + __THROW; +# define wcstol __isoc23_wcstol +# define wcstoul __isoc23_wcstoul +# define wcstoll __isoc23_wcstoll +# define wcstoull __isoc23_wcstoull +# ifdef __USE_GNU +# define wcstoq __isoc23_wcstoll +# define wcstouq __isoc23_wcstoull +# endif +# endif +#endif + +#ifdef __USE_GNU +/* Parallel versions of the functions above which take the locale to + use as an additional parameter. These are GNU extensions inspired + by the POSIX.1-2008 extended locale API. */ +extern long int wcstol_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, int __base, + locale_t __loc) __THROW; + +extern unsigned long int wcstoul_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc) __THROW; + +__extension__ +extern long long int wcstoll_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc) __THROW; + +__extension__ +extern unsigned long long int wcstoull_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc) + __THROW; + +/* Versions of the above functions that handle '0b' and '0B' prefixes + in base 0 or 2. */ +# if __GLIBC_USE (C2X_STRTOL) +# ifdef __REDIRECT +extern long int __REDIRECT_NTH (wcstol_l, (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc), + __isoc23_wcstol_l); +extern unsigned long int __REDIRECT_NTH (wcstoul_l, + (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc), + __isoc23_wcstoul_l); +__extension__ +extern long long int __REDIRECT_NTH (wcstoll_l, + (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc), + __isoc23_wcstoll_l); +__extension__ +extern unsigned long long int __REDIRECT_NTH (wcstoull_l, + (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc), + __isoc23_wcstoull_l); +# else +extern long int __isoc23_wcstol_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, int __base, + locale_t __loc) __THROW; +extern unsigned long int __isoc23_wcstoul_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc) + __THROW; +__extension__ +extern long long int __isoc23_wcstoll_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc) + __THROW; +__extension__ +extern unsigned long long int __isoc23_wcstoull_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + int __base, locale_t __loc) + __THROW; +# define wcstol_l __isoc23_wcstol_l +# define wcstoul_l __isoc23_wcstoul_l +# define wcstoll_l __isoc23_wcstoll_l +# define wcstoull_l __isoc23_wcstoull_l +# endif +# endif + +extern double wcstod_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, locale_t __loc) + __THROW; + +extern float wcstof_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, locale_t __loc) + __THROW; + +extern long double wcstold_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + locale_t __loc) __THROW; + +# if __HAVE_FLOAT16 +extern _Float16 wcstof16_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + locale_t __loc) __THROW; +# endif + +# if __HAVE_FLOAT32 +extern _Float32 wcstof32_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + locale_t __loc) __THROW; +# endif + +# if __HAVE_FLOAT64 +extern _Float64 wcstof64_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + locale_t __loc) __THROW; +# endif + +# if __HAVE_FLOAT128 +extern _Float128 wcstof128_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + locale_t __loc) __THROW; +# endif + +# if __HAVE_FLOAT32X +extern _Float32x wcstof32x_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + locale_t __loc) __THROW; +# endif + +# if __HAVE_FLOAT64X +extern _Float64x wcstof64x_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + locale_t __loc) __THROW; +# endif + +# if __HAVE_FLOAT128X +extern _Float128x wcstof128x_l (const wchar_t *__restrict __nptr, + wchar_t **__restrict __endptr, + locale_t __loc) __THROW; +# endif +#endif /* use GNU */ + + +#ifdef __USE_XOPEN2K8 +/* Copy SRC to DEST, returning the address of the terminating L'\0' in + DEST. */ +extern wchar_t *wcpcpy (wchar_t *__restrict __dest, + const wchar_t *__restrict __src) __THROW; + +/* Copy no more than N characters of SRC to DEST, returning the address of + the last character written into DEST. */ +extern wchar_t *wcpncpy (wchar_t *__restrict __dest, + const wchar_t *__restrict __src, size_t __n) + __THROW; +#endif + + +/* Wide character I/O functions. */ + +#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) +# ifndef __attr_dealloc_fclose +# if defined __has_builtin +# if __has_builtin (__builtin_fclose) +/* If the attribute macro hasn't been defined yet (by ) and + fclose is a built-in, use it. */ +# define __attr_dealloc_fclose __attr_dealloc (__builtin_fclose, 1) +# endif +# endif +# endif +# ifndef __attr_dealloc_fclose +# define __attr_dealloc_fclose /* empty */ +# endif + +/* Like OPEN_MEMSTREAM, but the stream is wide oriented and produces + a wide character string. */ +extern __FILE *open_wmemstream (wchar_t **__bufloc, size_t *__sizeloc) __THROW + __attribute_malloc__ __attr_dealloc_fclose; +#endif + +#if defined __USE_ISOC95 || defined __USE_UNIX98 + +/* Select orientation for stream. */ +extern int fwide (__FILE *__fp, int __mode) __THROW; + + +/* Write formatted output to STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fwprintf (__FILE *__restrict __stream, + const wchar_t *__restrict __format, ...) + /* __attribute__ ((__format__ (__wprintf__, 2, 3))) */; +/* Write formatted output to stdout. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int wprintf (const wchar_t *__restrict __format, ...) + /* __attribute__ ((__format__ (__wprintf__, 1, 2))) */; +/* Write formatted output of at most N characters to S. */ +extern int swprintf (wchar_t *__restrict __s, size_t __n, + const wchar_t *__restrict __format, ...) + __THROW /* __attribute__ ((__format__ (__wprintf__, 3, 4))) */; + +/* Write formatted output to S from argument list ARG. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int vfwprintf (__FILE *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg) + /* __attribute__ ((__format__ (__wprintf__, 2, 0))) */; +/* Write formatted output to stdout from argument list ARG. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int vwprintf (const wchar_t *__restrict __format, + __gnuc_va_list __arg) + /* __attribute__ ((__format__ (__wprintf__, 1, 0))) */; +/* Write formatted output of at most N character to S from argument + list ARG. */ +extern int vswprintf (wchar_t *__restrict __s, size_t __n, + const wchar_t *__restrict __format, + __gnuc_va_list __arg) + __THROW /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */; + + +/* Read formatted input from STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fwscanf (__FILE *__restrict __stream, + const wchar_t *__restrict __format, ...) + /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; +/* Read formatted input from stdin. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int wscanf (const wchar_t *__restrict __format, ...) + /* __attribute__ ((__format__ (__wscanf__, 1, 2))) */; +/* Read formatted input from S. */ +extern int swscanf (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, ...) + __THROW /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; + +/* For historical reasons, the C99-compliant versions of the scanf + functions are at alternative names. When __LDBL_COMPAT or + __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI are in effect, this is handled in + bits/wchar-ldbl.h. */ +# if !__GLIBC_USE (DEPRECATED_SCANF) && !defined __LDBL_COMPAT \ + && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 +# if __GLIBC_USE (C2X_STRTOL) +# ifdef __REDIRECT +extern int __REDIRECT (fwscanf, (__FILE *__restrict __stream, + const wchar_t *__restrict __format, ...), + __isoc23_fwscanf) + /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; +extern int __REDIRECT (wscanf, (const wchar_t *__restrict __format, ...), + __isoc23_wscanf) + /* __attribute__ ((__format__ (__wscanf__, 1, 2))) */; +extern int __REDIRECT_NTH (swscanf, (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, + ...), __isoc23_swscanf) + /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; +# else +extern int __isoc23_fwscanf (__FILE *__restrict __stream, + const wchar_t *__restrict __format, ...); +extern int __isoc23_wscanf (const wchar_t *__restrict __format, ...); +extern int __isoc23_swscanf (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, ...) + __THROW; +# define fwscanf __isoc23_fwscanf +# define wscanf __isoc23_wscanf +# define swscanf __isoc23_swscanf +# endif +# else +# ifdef __REDIRECT +extern int __REDIRECT (fwscanf, (__FILE *__restrict __stream, + const wchar_t *__restrict __format, ...), + __isoc99_fwscanf) + /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; +extern int __REDIRECT (wscanf, (const wchar_t *__restrict __format, ...), + __isoc99_wscanf) + /* __attribute__ ((__format__ (__wscanf__, 1, 2))) */; +extern int __REDIRECT_NTH (swscanf, (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, + ...), __isoc99_swscanf) + /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; +# else +extern int __isoc99_fwscanf (__FILE *__restrict __stream, + const wchar_t *__restrict __format, ...); +extern int __isoc99_wscanf (const wchar_t *__restrict __format, ...); +extern int __isoc99_swscanf (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, ...) + __THROW; +# define fwscanf __isoc99_fwscanf +# define wscanf __isoc99_wscanf +# define swscanf __isoc99_swscanf +# endif +# endif +# endif + +#endif /* Use ISO C95, C99 and Unix98. */ + +#ifdef __USE_ISOC99 +/* Read formatted input from S into argument list ARG. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int vfwscanf (__FILE *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg) + /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; +/* Read formatted input from stdin into argument list ARG. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int vwscanf (const wchar_t *__restrict __format, + __gnuc_va_list __arg) + /* __attribute__ ((__format__ (__wscanf__, 1, 0))) */; +/* Read formatted input from S into argument list ARG. */ +extern int vswscanf (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg) + __THROW /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; + +/* Same redirection as above for the v*wscanf family. */ +# if !__GLIBC_USE (DEPRECATED_SCANF) \ + && (!defined __LDBL_COMPAT || !defined __REDIRECT) \ + && (defined __STRICT_ANSI__ || defined __USE_XOPEN2K) \ + && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 +# if __GLIBC_USE (C2X_STRTOL) +# ifdef __REDIRECT +extern int __REDIRECT (vfwscanf, (__FILE *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg), __isoc23_vfwscanf) + /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; +extern int __REDIRECT (vwscanf, (const wchar_t *__restrict __format, + __gnuc_va_list __arg), __isoc23_vwscanf) + /* __attribute__ ((__format__ (__wscanf__, 1, 0))) */; +extern int __REDIRECT_NTH (vswscanf, (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg), __isoc23_vswscanf) + /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; +# else +extern int __isoc23_vfwscanf (__FILE *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg); +extern int __isoc23_vwscanf (const wchar_t *__restrict __format, + __gnuc_va_list __arg); +extern int __isoc23_vswscanf (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg) __THROW; +# define vfwscanf __isoc23_vfwscanf +# define vwscanf __isoc23_vwscanf +# define vswscanf __isoc23_vswscanf +# endif +# else +# ifdef __REDIRECT +extern int __REDIRECT (vfwscanf, (__FILE *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg), __isoc99_vfwscanf) + /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; +extern int __REDIRECT (vwscanf, (const wchar_t *__restrict __format, + __gnuc_va_list __arg), __isoc99_vwscanf) + /* __attribute__ ((__format__ (__wscanf__, 1, 0))) */; +extern int __REDIRECT_NTH (vswscanf, (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg), __isoc99_vswscanf) + /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; +# else +extern int __isoc99_vfwscanf (__FILE *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg); +extern int __isoc99_vwscanf (const wchar_t *__restrict __format, + __gnuc_va_list __arg); +extern int __isoc99_vswscanf (const wchar_t *__restrict __s, + const wchar_t *__restrict __format, + __gnuc_va_list __arg) __THROW; +# define vfwscanf __isoc99_vfwscanf +# define vwscanf __isoc99_vwscanf +# define vswscanf __isoc99_vswscanf +# endif +# endif +# endif + +#endif /* Use ISO C99. */ + + +/* Read a character from STREAM. + + These functions are possible cancellation points and therefore not + marked with __THROW. */ +extern wint_t fgetwc (__FILE *__stream); +extern wint_t getwc (__FILE *__stream); + +/* Read a character from stdin. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern wint_t getwchar (void); + + +/* Write a character to STREAM. + + These functions are possible cancellation points and therefore not + marked with __THROW. */ +extern wint_t fputwc (wchar_t __wc, __FILE *__stream); +extern wint_t putwc (wchar_t __wc, __FILE *__stream); + +/* Write a character to stdout. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern wint_t putwchar (wchar_t __wc); + + +/* Get a newline-terminated wide character string of finite length + from STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern wchar_t *fgetws (wchar_t *__restrict __ws, int __n, + __FILE *__restrict __stream); + +/* Write a string to STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int fputws (const wchar_t *__restrict __ws, + __FILE *__restrict __stream); + + +/* Push a character back onto the input buffer of STREAM. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern wint_t ungetwc (wint_t __wc, __FILE *__stream); + + +#ifdef __USE_GNU +/* These are defined to be equivalent to the `char' functions defined + in POSIX.1:1996. + + These functions are not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation they are cancellation points and + therefore not marked with __THROW. */ +extern wint_t getwc_unlocked (__FILE *__stream); +extern wint_t getwchar_unlocked (void); + +/* This is the wide character version of a GNU extension. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern wint_t fgetwc_unlocked (__FILE *__stream); + +/* Faster version when locking is not necessary. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern wint_t fputwc_unlocked (wchar_t __wc, __FILE *__stream); + +/* These are defined to be equivalent to the `char' functions defined + in POSIX.1:1996. + + These functions are not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation they are cancellation points and + therefore not marked with __THROW. */ +extern wint_t putwc_unlocked (wchar_t __wc, __FILE *__stream); +extern wint_t putwchar_unlocked (wchar_t __wc); + + +/* This function does the same as `fgetws' but does not lock the stream. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern wchar_t *fgetws_unlocked (wchar_t *__restrict __ws, int __n, + __FILE *__restrict __stream); + +/* This function does the same as `fputws' but does not lock the stream. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern int fputws_unlocked (const wchar_t *__restrict __ws, + __FILE *__restrict __stream); +#endif + + +/* Format TP into S according to FORMAT. + Write no more than MAXSIZE wide characters and return the number + of wide characters written, or 0 if it would exceed MAXSIZE. */ +extern size_t wcsftime (wchar_t *__restrict __s, size_t __maxsize, + const wchar_t *__restrict __format, + const struct tm *__restrict __tp) __THROW; + +# ifdef __USE_GNU +/* Similar to `wcsftime' but takes the information from + the provided locale and not the global locale. */ +extern size_t wcsftime_l (wchar_t *__restrict __s, size_t __maxsize, + const wchar_t *__restrict __format, + const struct tm *__restrict __tp, + locale_t __loc) __THROW; +# endif + +/* Define some macros helping to catch buffer overflows. */ +#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function +/* Declare all functions from bits/wchar2-decl.h first. */ +# include +#endif + +/* The following headers provide asm redirections. These redirections must + appear before the first usage of these functions, e.g. in bits/wchar.h. */ +#if defined __LDBL_COMPAT || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 +# include +#endif + +#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function +/* Now include the function definitions and redirects too. */ +# include +#endif + +__END_DECLS + +#endif /* wchar.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ec2c1c00002873a417ab1c600f44dd3762f38d33 GIT binary patch literal 48556 zcmdUY3wTt;+5ev1Kx4p2BSegdDp-V#EYUm2AAINTYU z8TJPThMl4Cz)EN3z);XJ&}(=5G94z1!(;bVwd>K0I)8Ac+gFuQ=?*#_VSljUmZ&3` zTGIs;Oyh@_WDl%xR=IsPhriMZ=zi>LUAj;8j3e9-px=;LslKUjheHF&x1oVHo3|nq zwuhazFzG~o)Z?xgNar$eP_B##ySLu$3kNY%Ji5<4dB3Vx3KKqTRWxCa*nQt@^@v3bpmW8kFq{49bl$6N(=~7M~g^ zd?@;TMFSY1&K_uc%uu+p!teKx2X#oJT?PChcYU_a2iCVwu+#?F2r8Qda5D{*&Klyx6kD#y~?~41BZaz?g0a~%@3iPpv&%v zkTe#!)lQGQo`A4v%QQ8dAu>>vJZG{(4WX-Y`P?y}q6lZaA97dK+C3V^S0SA}7j}D{ zLB(US;CI%#DWN;RJXQ_9ygI`E8V6-m8Of?4U4aabzpA3`dDuq)qaK@%T< zB~O&_K>I6oWuVx^O+lo*|l$B=>c?UX!K_A6Ize~&2CNkq(XLyFU z9X2PIB2+(A&T5-mWWvh0H^ftIz~S-McxF}3GGIT$H|p%}aA2m9p=kJc$dC|*k7AAn zK&aS_TGlpb1l3CCkJv*niX≥w6u>o@vjNGfuTY0nsw5oIYpJ?O?>qsIZ49f9ohH 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 Q=PsPPaYp}+PL&=02fqAx+W-In literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h new file mode 100644 index 00000000..3010b387 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h @@ -0,0 +1,140 @@ +/*===---- __wmmintrin_aes.h - AES intrinsics -------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __WMMINTRIN_H +#error "Never use <__wmmintrin_aes.h> directly; include instead." +#endif + +#ifndef __WMMINTRIN_AES_H +#define __WMMINTRIN_AES_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("aes"), __min_vector_width__(128))) + +/// Performs a single round of AES encryption using the Equivalent +/// Inverse Cipher, transforming the state value from the first source +/// operand using a 128-bit round key value contained in the second source +/// operand, and writes the result to the destination. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VAESENC instruction. +/// +/// \param __V +/// A 128-bit integer vector containing the state value. +/// \param __R +/// A 128-bit integer vector containing the round key value. +/// \returns A 128-bit integer vector containing the encrypted value. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_aesenc_si128(__m128i __V, __m128i __R) +{ + return (__m128i)__builtin_ia32_aesenc128((__v2di)__V, (__v2di)__R); +} + +/// Performs the final round of AES encryption using the Equivalent +/// Inverse Cipher, transforming the state value from the first source +/// operand using a 128-bit round key value contained in the second source +/// operand, and writes the result to the destination. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VAESENCLAST instruction. +/// +/// \param __V +/// A 128-bit integer vector containing the state value. +/// \param __R +/// A 128-bit integer vector containing the round key value. +/// \returns A 128-bit integer vector containing the encrypted value. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_aesenclast_si128(__m128i __V, __m128i __R) +{ + return (__m128i)__builtin_ia32_aesenclast128((__v2di)__V, (__v2di)__R); +} + +/// Performs a single round of AES decryption using the Equivalent +/// Inverse Cipher, transforming the state value from the first source +/// operand using a 128-bit round key value contained in the second source +/// operand, and writes the result to the destination. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VAESDEC instruction. +/// +/// \param __V +/// A 128-bit integer vector containing the state value. +/// \param __R +/// A 128-bit integer vector containing the round key value. +/// \returns A 128-bit integer vector containing the decrypted value. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_aesdec_si128(__m128i __V, __m128i __R) +{ + return (__m128i)__builtin_ia32_aesdec128((__v2di)__V, (__v2di)__R); +} + +/// Performs the final round of AES decryption using the Equivalent +/// Inverse Cipher, transforming the state value from the first source +/// operand using a 128-bit round key value contained in the second source +/// operand, and writes the result to the destination. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VAESDECLAST instruction. +/// +/// \param __V +/// A 128-bit integer vector containing the state value. +/// \param __R +/// A 128-bit integer vector containing the round key value. +/// \returns A 128-bit integer vector containing the decrypted value. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_aesdeclast_si128(__m128i __V, __m128i __R) +{ + return (__m128i)__builtin_ia32_aesdeclast128((__v2di)__V, (__v2di)__R); +} + +/// Applies the AES InvMixColumns() transformation to an expanded key +/// contained in the source operand, and writes the result to the +/// destination. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VAESIMC instruction. +/// +/// \param __V +/// A 128-bit integer vector containing the expanded key. +/// \returns A 128-bit integer vector containing the transformed value. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_aesimc_si128(__m128i __V) +{ + return (__m128i)__builtin_ia32_aesimc128((__v2di)__V); +} + +/// Generates a round key for AES encryption, operating on 128-bit data +/// specified in the first source operand and using an 8-bit round constant +/// specified by the second source operand, and writes the result to the +/// destination. +/// +/// \headerfile +/// +/// \code +/// __m128i _mm_aeskeygenassist_si128(__m128i C, const int R); +/// \endcode +/// +/// This intrinsic corresponds to the AESKEYGENASSIST instruction. +/// +/// \param C +/// A 128-bit integer vector that is used to generate the AES encryption key. +/// \param R +/// An 8-bit round constant used to generate the AES encryption key. +/// \returns A 128-bit round key for AES encryption. +#define _mm_aeskeygenassist_si128(C, R) \ + ((__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))) + +#undef __DEFAULT_FN_ATTRS + +#endif /* __WMMINTRIN_AES_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b19ffa5553cb6232a7f8f518c8252049fa833160 GIT binary patch literal 16754 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 directly; include instead." +#endif + +#ifndef __WMMINTRIN_PCLMUL_H +#define __WMMINTRIN_PCLMUL_H + +/// Multiplies two 64-bit integer values, which are selected from source +/// operands using the immediate-value operand. The multiplication is a +/// carry-less multiplication, and the 128-bit integer product is stored in +/// the destination. +/// +/// \headerfile +/// +/// \code +/// __m128i _mm_clmulepi64_si128(__m128i X, __m128i Y, const int I); +/// \endcode +/// +/// This intrinsic corresponds to the VPCLMULQDQ instruction. +/// +/// \param X +/// A 128-bit vector of [2 x i64] containing one of the source operands. +/// \param Y +/// A 128-bit vector of [2 x i64] containing one of the source operands. +/// \param I +/// An immediate value specifying which 64-bit values to select from the +/// operands. Bit 0 is used to select a value from operand \a X, and bit +/// 4 is used to select a value from operand \a Y: \n +/// Bit[0]=0 indicates that bits[63:0] of operand \a X are used. \n +/// Bit[0]=1 indicates that bits[127:64] of operand \a X are used. \n +/// Bit[4]=0 indicates that bits[63:0] of operand \a Y are used. \n +/// Bit[4]=1 indicates that bits[127:64] of operand \a Y are used. +/// \returns The 128-bit integer vector containing the result of the carry-less +/// multiplication of the selected 64-bit values. +#define _mm_clmulepi64_si128(X, Y, I) \ + ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \ + (__v2di)(__m128i)(Y), (char)(I))) + +#endif /* __WMMINTRIN_PCLMUL_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8c56f2d33d2b9cdc9602afcfef926098e0caca37 GIT binary patch literal 12424 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h new file mode 100644 index 00000000..72b9ed08 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h @@ -0,0 +1,72 @@ +/*===---- adxintrin.h - ADX intrinsics -------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __ADXINTRIN_H +#define __ADXINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__)) + +/* Intrinsics that are available only if __ADX__ defined */ +static __inline unsigned char __attribute__((__always_inline__, __nodebug__, __target__("adx"))) +_addcarryx_u32(unsigned char __cf, unsigned int __x, unsigned int __y, + unsigned int *__p) +{ + return __builtin_ia32_addcarryx_u32(__cf, __x, __y, __p); +} + +#ifdef __x86_64__ +static __inline unsigned char __attribute__((__always_inline__, __nodebug__, __target__("adx"))) +_addcarryx_u64(unsigned char __cf, unsigned long long __x, + unsigned long long __y, unsigned long long *__p) +{ + return __builtin_ia32_addcarryx_u64(__cf, __x, __y, __p); +} +#endif + +/* Intrinsics that are also available if __ADX__ undefined */ +static __inline unsigned char __DEFAULT_FN_ATTRS +_addcarry_u32(unsigned char __cf, unsigned int __x, unsigned int __y, + unsigned int *__p) +{ + return __builtin_ia32_addcarryx_u32(__cf, __x, __y, __p); +} + +#ifdef __x86_64__ +static __inline unsigned char __DEFAULT_FN_ATTRS +_addcarry_u64(unsigned char __cf, unsigned long long __x, + unsigned long long __y, unsigned long long *__p) +{ + return __builtin_ia32_addcarryx_u64(__cf, __x, __y, __p); +} +#endif + +static __inline unsigned char __DEFAULT_FN_ATTRS +_subborrow_u32(unsigned char __cf, unsigned int __x, unsigned int __y, + unsigned int *__p) +{ + return __builtin_ia32_subborrow_u32(__cf, __x, __y, __p); +} + +#ifdef __x86_64__ +static __inline unsigned char __DEFAULT_FN_ATTRS +_subborrow_u64(unsigned char __cf, unsigned long long __x, + unsigned long long __y, unsigned long long *__p) +{ + return __builtin_ia32_subborrow_u64(__cf, __x, __y, __p); +} +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif /* __ADXINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..391126ffb82a5f4cd576a4d284bc2ab8cb3391cb GIT binary patch literal 15267 zcmcgyZ;V`36@Rlpl~4+ZTbHss8AYbu(%E5`cDgNPw_CQ`mMkSg!4;Ff-g)!h%XREj2H~XARmYyj6oy;4S{|T6oQuV+Gk4y7 zZ-#{6hmG`|bIqVlH&i2#XcHQVe{pXd}~^ z(3EpD3pv$+NDEEZUpAd;pF7P|h*b%_#`vzs!-df*pLN3-e`y?D#~;#9G$S4~IN z+=@O?Q$EV)j-M82v~a~EU*0=2Eq*DRVNk?hgQBY1y!PHLIuBC(}7S>jTW z-7=lf2TOqzdqt2(bb>!>wQg3V8tqvuR;@bzbnz>vUPxdDuhxCJMTU;>w?NR8xx_|c zP52-;q0!nhIc0d0r4&nue{fhF(J4$6`CeXu1ZX0!zsw-4lwH@tgfXX)qdYe-TT`lK z+QMOiI25|Jsi{q~qC?2*PN@5wI4v;^)6&(l?=}Oa{n_XD%qKvqxU z3r?qWp=s-W7g?JAdc!1vUj6J%qWZi#LbtAwMCDEvL>gYfa;xS3b|R9=jk29)ZLks) zwTf=YOQzcwpn@wRYPzaXceK!SouJEo-8e=N z0Smmne0>T=8BifTCrD%8wC#SOhoA@Ha&S~?W!*8MSf!u3%#$M~^8*NQ5Xk`!rtA|r zBhYGkUlC0(V-SNq*VCLZ#bzEi0J9230Frm9Icy`1B+Or~x=~DGTnSR|a4{goM5I6P z^p-|SRl(7an5vChDzd<5)Lc10vR;LQr}sKW@NQLy)*J#t(iTEOkY;Pp!1kQEeoi!$ z+XGs{`Iv^=!{p)GB8mwfky>lC0syZVQc7u~y7s1kLH7d~4L&BPHAr{Ekt}T%G-q~k z+cnGd$}aNd&734Nbd1m`Ku>}s3|EBXq{ex^q19x7C8dsB;luzvEux06>uS|n@d(In z%+%)UYHx zEQG|!PASTPh!vIPY6xZoanzAY2Z=o4xt@Yd=w1d2#G?cP7t4~_3*Ggz|6@|g!G5Xk^b4j1Iv9c^;5&sEW2(UsT`4{pOmAC z%+Onw4T@6oKpF@sDcC4cLP$35D1f23^C>NtEWJg$=eoCb5l|p#g{to8 zzNyjR70M_e`5lWOPZHPDohq3TVoB0fx{e-*D8lr{iLKJiE+WswwjKMyYH@xdjjLl@ z;<((Q;}tD+b}K*)UF+v>hADVpD{USGQy_>93h>jC!=)|6~^;teVm7ua9GVoC4=3mJ(n z1qZmtUjV;^btfze;HIVmgcT|)4uU19kclh^ zvHroS(hA8!m@N7Fk2mv}qE9?YfTWR;x|hsSl7x~H>&_9)PD{UT%R9~*$o#;xJ-GT& z$ftnv%}rlVnUOlFl~k%Of`x$Q+P0h4=kdaOGI8M@8>z7|v0Uzy9p29hQ4*2@uR3B^ zPN}Q$HUqLZR_Ib<+lJkh1*004EcXV*8vtX-UlD3V1<6Z{^cv3S=<>VM9AXn3Yft?b zxD8k;!A4f_m(;)(e&FiyMp`Z1SRjl0)3ZJALL@(74l|&5<@bIhO zsLm5cnz}0}a7@pm^X$Wq-72SQ2gQ+z+MGQ`Ca!3}j+^{J_&i zNRvi`f-K(r^n@f4mcyWBRYLs67)xlDR=k7`yKtE>>8&Fj>q6R|h^h29k4RxNT|7(4_6d%BnxA@%Y6b}WMilwb* zq0n%B`6Za2bfj*IO`M&>irlH&$+ykuPKp(Y-FVo8bRlJ(&V|5JV-mP=RRi4#X!`KX z7L@JkC}yR9PXPeK8|fZGdB~-8&4hCWJ1aA}g7gI~W~fvo%^TRd!~sf5-+@wkbZor`%lR*)zQ;7&$u)k8iKU-hLr1T`6~GX-c0;g_heKweygWRxCA zeVba5a2ioqIE;zpyK3oIq7c7-!;;DJV9CTEdj%e;dYVV<5_Eccx7T@E zdS*+fi-1^Ka+)fPA9x+)yOz~6FG_U;7fwmijd_Tl3k#97k{zJGcy6;tAtr=@hir|N zq%{1#rD5UU1<16QGQllBy5RG+(5nE3$Y{$gL|3GvDGE+Ynf-Cv6kwGcwMmYtQq2qq zKEZCTn3N1cm2mkK^aEbI0C%2Bp`vRREJfihMzBVDc!DQ|lZDC;#e$a+MuTM!Ff&S? zTDDuKPYFD$r5b|y4o+^?lrly!EgDjvm1N!>`vDNGIc zIt7nsWOYa`bOQ~|=|7I)ZmuC1JLT_s6xYdCx&R;zo3KJMXi{Qwo9j{)HdjKDu_$+_ z;mtwJLqv!1BkA{(H=5V3G>~e=(4&$5V;SaF?iAP~)0!ksNxRN<7FmanN57j))dZZH z{-a2;F(OMx-uRe$Bp?xP@GRq0DPj|To07!wadrrruU#|n7$M(Hh~`BJ}a5?l?zs{YJYp} zFHR}fUiJun_%gMe>A>@ao~t`>YjyNW4)0}hYEUniU6`<&YQ401L(fN5Gd6V?aO265 zKdRbF`1cj*zi(7kZ(Nz49?i@sGowS9>y%wXilUs`eq--5zr6nEPyeR<`VREF%&-5u zx1BZe)px)D)cx)E9?1UT^>bDpQC4SwRB1mvJo?)c?H|82s5RG2rCS3b%!zi;f9bXW z|4T>rl2QWQwhn*uzhy1m`O$0h z_qW%Kzc>Htojaaue|P_5PycY}?$gYek@dGfG4}Xt?+<9qCmn}%nY@w*)vr`G4k`P{ zU=x^HkPB-l%)tPeLssDCPy?A3f)Oca8W85W`6X3_OonS1)IbHN-W_kf`lRAltoDBY z_7}763!iCUn!RH82ZzqS)P8Btw!6`Nmm19CKW=qSJz}ppGmyotPa}S#nK5Myl5te| zB8}gp_J*Oo+um^6bN77h@&i+EKhb{qUvK?$`Kk{#w)2;tyUMuvyxq*2U)}ZS?=Pyq zl^N8UPdb33nPFuZbpO0^SwaAL>|DoM=?-95_>MjK&QJgL+}Xdj|9)@oj+gG=er@~S zyWafCu|4m6p*?-(wTGtf`^tln!RMU9_|g5pRT3}7^F9Vi%E|6S@c&;WkseQ{7(OVE z#}DH6@JR9m<+aHXhry<@j>9BJ?hZ<0)~&;Qr9&kH^OY7##z`V@ z+tRj!z{hOhe6$TgrvZtd#hlwqy9j5twCi!oxw!2Ba55a?oKj1Rjp8xPUR*35qY6)2 zlUQMfXA*W*T~YFRtafo%aWCN>E$%%xA9K$v%=nahZfOo1 z&5|pXd*bkfhq))_C%j1Z(j?|)(dOK}E}PjtLtHkKorzpFw>XDg#(<1-_C$C6^m-EA z^`q;f=#E?C*jcBaz50Ti9=z~J1UdKZKXCKD{pwyw+I3gZ5~PsY`H)$2@tTc8N!# zkE`nZ?uEHq7Z0cl`_;Jv2X4LvwE1#J?cT3o2@2s-Uxs_9s&3c-|7kVRN}$qlNmVxi zg#*9zDc7s2IzA3ba>>P)Y#zdYA0W1#cjb;N5ADnpb`;?6mK|H*?{zz_gTK4i?4H`0 z;rPoflICr;l_eFL-JgvrG-u^-C>Sts_TK0ZZyzSnAI=U((H~hH!O>?p$T@qWzjpiD zoj3+-vuk(KQW>#Eut)|$oUvEr*!D3Zax6O*iOenLutC zj7~(pnp~X3zG5wpb5e;6dxsAV6YL#c7>=-aWN8F@iM6H#zWl*_g=jjTuSA+IjRW8R E0gbEa?f?J) literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h new file mode 100644 index 00000000..ed798245 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h @@ -0,0 +1,58 @@ +/*===------------- amxfp16intrin.h - AMX_FP16 intrinsics -*- C++ -*---------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===------------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use directly; use instead." +#endif /* __IMMINTRIN_H */ + +#ifndef __AMX_FP16INTRIN_H +#define __AMX_FP16INTRIN_H +#ifdef __x86_64__ + +/// Compute dot-product of FP16 (16-bit) floating-point pairs in tiles \a a +/// and \a b, accumulating the intermediate single-precision (32-bit) +/// floating-point elements with elements in \a dst, and store the 32-bit +/// result back to tile \a dst. +/// +/// \headerfile +/// +/// \code +/// void _tile_dpfp16ps (__tile dst, __tile a, __tile b) +/// \endcode +/// +/// \code{.operation} +/// FOR m := 0 TO dst.rows - 1 +/// tmp := dst.row[m] +/// FOR k := 0 TO (a.colsb / 4) - 1 +/// FOR n := 0 TO (dst.colsb / 4) - 1 +/// tmp.fp32[n] += FP32(a.row[m].fp16[2*k+0]) * +/// FP32(b.row[k].fp16[2*n+0]) +/// tmp.fp32[n] += FP32(a.row[m].fp16[2*k+1]) * +/// FP32(b.row[k].fp16[2*n+1]) +/// ENDFOR +/// ENDFOR +/// write_row_and_zero(dst, m, tmp, dst.colsb) +/// ENDFOR +/// zero_upper_rows(dst, dst.rows) +/// zero_tileconfig_start() +/// \endcode +/// +/// This intrinsic corresponds to the \c TDPFP16PS instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param a +/// The 1st source tile. Max size is 1024 Bytes. +/// \param b +/// The 2nd source tile. Max size is 1024 Bytes. +#define _tile_dpfp16ps(dst, a, b) \ + __builtin_ia32_tdpfp16ps(dst, a, b) + +#endif /* __x86_64__ */ +#endif /* __AMX_FP16INTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a726744f412482efb377d138842bdf6a6fec5128 GIT binary patch literal 12346 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h new file mode 100644 index 00000000..baa56f5b --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h @@ -0,0 +1,524 @@ +/*===--------------- amxintrin.h - AMX intrinsics -*- C/C++ -*---------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===------------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif /* __IMMINTRIN_H */ + +#ifndef __AMXINTRIN_H +#define __AMXINTRIN_H +#ifdef __x86_64__ + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS_TILE \ + __attribute__((__always_inline__, __nodebug__, __target__("amx-tile"))) +#define __DEFAULT_FN_ATTRS_INT8 \ + __attribute__((__always_inline__, __nodebug__, __target__("amx-int8"))) +#define __DEFAULT_FN_ATTRS_BF16 \ + __attribute__((__always_inline__, __nodebug__, __target__("amx-bf16"))) +#define __DEFAULT_FN_ATTRS_FP16 \ + __attribute__((__always_inline__, __nodebug__, __target__("amx-fp16"))) + +/// Load tile configuration from a 64-byte memory location specified by +/// "mem_addr". The tile configuration includes the tile type palette, the +/// number of bytes per row, and the number of rows. If the specified +/// palette_id is zero, that signifies the init state for both the tile +/// config and the tile data, and the tiles are zeroed. Any invalid +/// configurations will result in #GP fault. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the LDTILECFG instruction. +/// +/// \param __config +/// A pointer to 512-bits configuration +static __inline__ void __DEFAULT_FN_ATTRS_TILE +_tile_loadconfig(const void *__config) { + __builtin_ia32_tile_loadconfig(__config); +} + +/// Stores the current tile configuration to a 64-byte memory location +/// specified by "mem_addr". The tile configuration includes the tile type +/// palette, the number of bytes per row, and the number of rows. If tiles +/// are not configured, all zeroes will be stored to memory. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the STTILECFG instruction. +/// +/// \param __config +/// A pointer to 512-bits configuration +static __inline__ void __DEFAULT_FN_ATTRS_TILE +_tile_storeconfig(void *__config) { + __builtin_ia32_tile_storeconfig(__config); +} + +/// Release the tile configuration to return to the init state, which +/// releases all storage it currently holds. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILERELEASE instruction. +static __inline__ void __DEFAULT_FN_ATTRS_TILE _tile_release(void) { + __builtin_ia32_tilerelease(); +} + +/// Load tile rows from memory specifieid by "base" address and "stride" into +/// destination tile "dst" using the tile configuration previously configured +/// via "_tile_loadconfig". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILELOADD instruction. +/// +/// \param dst +/// A destination tile. Max size is 1024 Bytes. +/// \param base +/// A pointer to base address. +/// \param stride +/// The stride between the rows' data to be loaded in memory. +#define _tile_loadd(dst, base, stride) \ + __builtin_ia32_tileloadd64((dst), ((const void *)(base)), \ + (__SIZE_TYPE__)(stride)) + +/// Load tile rows from memory specifieid by "base" address and "stride" into +/// destination tile "dst" using the tile configuration previously configured +/// via "_tile_loadconfig". This intrinsic provides a hint to the implementation +/// that the data will likely not be reused in the near future and the data +/// caching can be optimized accordingly. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILELOADDT1 instruction. +/// +/// \param dst +/// A destination tile. Max size is 1024 Bytes. +/// \param base +/// A pointer to base address. +/// \param stride +/// The stride between the rows' data to be loaded in memory. +#define _tile_stream_loadd(dst, base, stride) \ + __builtin_ia32_tileloaddt164((dst), ((const void *)(base)), \ + (__SIZE_TYPE__)(stride)) + +/// Store the tile specified by "src" to memory specifieid by "base" address and +/// "stride" using the tile configuration previously configured via +/// "_tile_loadconfig". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILESTORED instruction. +/// +/// \param dst +/// A destination tile. Max size is 1024 Bytes. +/// \param base +/// A pointer to base address. +/// \param stride +/// The stride between the rows' data to be stored in memory. +#define _tile_stored(dst, base, stride) \ + __builtin_ia32_tilestored64((dst), ((void *)(base)), (__SIZE_TYPE__)(stride)) + +/// Zero the tile specified by "tdest". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILEZERO instruction. +/// +/// \param tile +/// The destination tile to be zero. Max size is 1024 Bytes. +#define _tile_zero(tile) __builtin_ia32_tilezero((tile)) + +/// Compute dot-product of bytes in tiles with a source/destination accumulator. +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with +/// corresponding signed 8-bit integers in src1, producing 4 intermediate 32-bit +/// results. Sum these 4 results with the corresponding 32-bit integer in "dst", +/// and store the 32-bit result back to tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBSSD instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +#define _tile_dpbssd(dst, src0, src1) \ + __builtin_ia32_tdpbssd((dst), (src0), (src1)) + +/// Compute dot-product of bytes in tiles with a source/destination accumulator. +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with +/// corresponding unsigned 8-bit integers in src1, producing 4 intermediate +/// 32-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in "dst", and store the 32-bit result back to tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBSUD instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +#define _tile_dpbsud(dst, src0, src1) \ + __builtin_ia32_tdpbsud((dst), (src0), (src1)) + +/// Compute dot-product of bytes in tiles with a source/destination accumulator. +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with +/// corresponding signed 8-bit integers in src1, producing 4 intermediate 32-bit +/// results. Sum these 4 results with the corresponding 32-bit integer in "dst", +/// and store the 32-bit result back to tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBUSD instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +#define _tile_dpbusd(dst, src0, src1) \ + __builtin_ia32_tdpbusd((dst), (src0), (src1)) + +/// Compute dot-product of bytes in tiles with a source/destination accumulator. +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with +/// corresponding unsigned 8-bit integers in src1, producing 4 intermediate +/// 32-bit results. Sum these 4 results with the corresponding 32-bit integer in +/// "dst", and store the 32-bit result back to tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBUUD instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +#define _tile_dpbuud(dst, src0, src1) \ + __builtin_ia32_tdpbuud((dst), (src0), (src1)) + +/// Compute dot-product of BF16 (16-bit) floating-point pairs in tiles src0 and +/// src1, accumulating the intermediate single-precision (32-bit) floating-point +/// elements with elements in "dst", and store the 32-bit result back to tile +/// "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBF16PS instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +#define _tile_dpbf16ps(dst, src0, src1) \ + __builtin_ia32_tdpbf16ps((dst), (src0), (src1)) + +/// AMX tile register size can be configured, the maximum size is 16x64=1024 +/// bytes. Since there is no 2D type in llvm IR, we use vector type to +/// represent 2D tile and the fixed size is maximum amx tile register size. +typedef int _tile1024i __attribute__((__vector_size__(1024), __aligned__(64))); + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 +_tile_loadd_internal(unsigned short m, unsigned short n, const void *base, + __SIZE_TYPE__ stride) { + return __builtin_ia32_tileloadd64_internal(m, n, base, + (__SIZE_TYPE__)(stride)); +} + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 +_tile_loaddt1_internal(unsigned short m, unsigned short n, const void *base, + __SIZE_TYPE__ stride) { + return __builtin_ia32_tileloaddt164_internal(m, n, base, + (__SIZE_TYPE__)(stride)); +} + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 +_tile_dpbssd_internal(unsigned short m, unsigned short n, unsigned short k, + _tile1024i dst, _tile1024i src1, _tile1024i src2) { + return __builtin_ia32_tdpbssd_internal(m, n, k, dst, src1, src2); +} + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 +_tile_dpbsud_internal(unsigned short m, unsigned short n, unsigned short k, + _tile1024i dst, _tile1024i src1, _tile1024i src2) { + return __builtin_ia32_tdpbsud_internal(m, n, k, dst, src1, src2); +} + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 +_tile_dpbusd_internal(unsigned short m, unsigned short n, unsigned short k, + _tile1024i dst, _tile1024i src1, _tile1024i src2) { + return __builtin_ia32_tdpbusd_internal(m, n, k, dst, src1, src2); +} + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 +_tile_dpbuud_internal(unsigned short m, unsigned short n, unsigned short k, + _tile1024i dst, _tile1024i src1, _tile1024i src2) { + return __builtin_ia32_tdpbuud_internal(m, n, k, dst, src1, src2); +} + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ void __DEFAULT_FN_ATTRS_INT8 +_tile_stored_internal(unsigned short m, unsigned short n, void *base, + __SIZE_TYPE__ stride, _tile1024i tile) { + return __builtin_ia32_tilestored64_internal(m, n, base, + (__SIZE_TYPE__)(stride), tile); +} + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ _tile1024i __DEFAULT_FN_ATTRS_BF16 +_tile_dpbf16ps_internal(unsigned short m, unsigned short n, unsigned short k, + _tile1024i dst, _tile1024i src1, _tile1024i src2) { + return __builtin_ia32_tdpbf16ps_internal(m, n, k, dst, src1, src2); +} + +/// This is internal intrinsic. C/C++ user should avoid calling it directly. +static __inline__ _tile1024i __DEFAULT_FN_ATTRS_FP16 +_tile_dpfp16ps_internal(unsigned short m, unsigned short n, unsigned short k, + _tile1024i dst, _tile1024i src1, _tile1024i src2) { + return __builtin_ia32_tdpfp16ps_internal(m, n, k, dst, src1, src2); +} + +/// This struct pack the shape and tile data together for user. We suggest +/// initializing the struct as early as possible, because compiler depends +/// on the shape information to do configure. The constant value is preferred +/// for optimization by compiler. +typedef struct __tile1024i_str { + const unsigned short row; + const unsigned short col; + _tile1024i tile; +} __tile1024i; + +/// Load tile rows from memory specifieid by "base" address and "stride" into +/// destination tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILELOADD instruction. +/// +/// \param dst +/// A destination tile. Max size is 1024 Bytes. +/// \param base +/// A pointer to base address. +/// \param stride +/// The stride between the rows' data to be loaded in memory. +__DEFAULT_FN_ATTRS_TILE +static __inline__ void __tile_loadd(__tile1024i *dst, const void *base, + __SIZE_TYPE__ stride) { + dst->tile = _tile_loadd_internal(dst->row, dst->col, base, stride); +} + +/// Load tile rows from memory specifieid by "base" address and "stride" into +/// destination tile "dst". This intrinsic provides a hint to the implementation +/// that the data will likely not be reused in the near future and the data +/// caching can be optimized accordingly. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILELOADDT1 instruction. +/// +/// \param dst +/// A destination tile. Max size is 1024 Bytes. +/// \param base +/// A pointer to base address. +/// \param stride +/// The stride between the rows' data to be loaded in memory. +__DEFAULT_FN_ATTRS_TILE +static __inline__ void __tile_stream_loadd(__tile1024i *dst, const void *base, + __SIZE_TYPE__ stride) { + dst->tile = _tile_loaddt1_internal(dst->row, dst->col, base, stride); +} + +/// Compute dot-product of bytes in tiles with a source/destination accumulator. +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with +/// corresponding signed 8-bit integers in src1, producing 4 intermediate 32-bit +/// results. Sum these 4 results with the corresponding 32-bit integer in "dst", +/// and store the 32-bit result back to tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBSSD instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +__DEFAULT_FN_ATTRS_INT8 +static __inline__ void __tile_dpbssd(__tile1024i *dst, __tile1024i src0, + __tile1024i src1) { + dst->tile = _tile_dpbssd_internal(src0.row, src1.col, src0.col, dst->tile, + src0.tile, src1.tile); +} + +/// Compute dot-product of bytes in tiles with a source/destination accumulator. +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with +/// corresponding unsigned 8-bit integers in src1, producing 4 intermediate +/// 32-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in "dst", and store the 32-bit result back to tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBSUD instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +__DEFAULT_FN_ATTRS_INT8 +static __inline__ void __tile_dpbsud(__tile1024i *dst, __tile1024i src0, + __tile1024i src1) { + dst->tile = _tile_dpbsud_internal(src0.row, src1.col, src0.col, dst->tile, + src0.tile, src1.tile); +} + +/// Compute dot-product of bytes in tiles with a source/destination accumulator. +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with +/// corresponding signed 8-bit integers in src1, producing 4 intermediate 32-bit +/// results. Sum these 4 results with the corresponding 32-bit integer in "dst", +/// and store the 32-bit result back to tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBUSD instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +__DEFAULT_FN_ATTRS_INT8 +static __inline__ void __tile_dpbusd(__tile1024i *dst, __tile1024i src0, + __tile1024i src1) { + dst->tile = _tile_dpbusd_internal(src0.row, src1.col, src0.col, dst->tile, + src0.tile, src1.tile); +} + +/// Compute dot-product of bytes in tiles with a source/destination accumulator. +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with +/// corresponding unsigned 8-bit integers in src1, producing 4 intermediate +/// 32-bit results. Sum these 4 results with the corresponding 32-bit integer in +/// "dst", and store the 32-bit result back to tile "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBUUD instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +__DEFAULT_FN_ATTRS_INT8 +static __inline__ void __tile_dpbuud(__tile1024i *dst, __tile1024i src0, + __tile1024i src1) { + dst->tile = _tile_dpbuud_internal(src0.row, src1.col, src0.col, dst->tile, + src0.tile, src1.tile); +} + +/// Store the tile specified by "src" to memory specifieid by "base" address and +/// "stride". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILESTORED instruction. +/// +/// \param base +/// A pointer to base address. +/// \param stride +/// The stride between the rows' data to be stored in memory. +__DEFAULT_FN_ATTRS_TILE +static __inline__ void __tile_stored(void *base, __SIZE_TYPE__ stride, + __tile1024i src) { + _tile_stored_internal(src.row, src.col, base, stride, src.tile); +} + +/// Zero the tile specified by "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TILEZERO instruction. +/// +/// \param dst +/// The destination tile to be zero. Max size is 1024 Bytes. +__DEFAULT_FN_ATTRS_TILE +static __inline__ void __tile_zero(__tile1024i *dst) { + dst->tile = __builtin_ia32_tilezero_internal(dst->row, dst->col); +} + +/// Compute dot-product of BF16 (16-bit) floating-point pairs in tiles src0 and +/// src1, accumulating the intermediate single-precision (32-bit) floating-point +/// elements with elements in "dst", and store the 32-bit result back to tile +/// "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPBF16PS instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +__DEFAULT_FN_ATTRS_BF16 +static __inline__ void __tile_dpbf16ps(__tile1024i *dst, __tile1024i src0, + __tile1024i src1) { + dst->tile = _tile_dpbf16ps_internal(src0.row, src1.col, src0.col, dst->tile, + src0.tile, src1.tile); +} + +/// Compute dot-product of FP16 (16-bit) floating-point pairs in tiles src0 and +/// src1, accumulating the intermediate single-precision (32-bit) floating-point +/// elements with elements in "dst", and store the 32-bit result back to tile +/// "dst". +/// +/// \headerfile +/// +/// This intrinsic corresponds to the TDPFP16PS instruction. +/// +/// \param dst +/// The destination tile. Max size is 1024 Bytes. +/// \param src0 +/// The 1st source tile. Max size is 1024 Bytes. +/// \param src1 +/// The 2nd source tile. Max size is 1024 Bytes. +__DEFAULT_FN_ATTRS_FP16 +static __inline__ void __tile_dpfp16ps(__tile1024i *dst, __tile1024i src0, + __tile1024i src1) { + dst->tile = _tile_dpfp16ps_internal(src0.row, src1.col, src0.col, dst->tile, + src0.tile, src1.tile); +} + +#undef __DEFAULT_FN_ATTRS_TILE +#undef __DEFAULT_FN_ATTRS_INT8 +#undef __DEFAULT_FN_ATTRS_BF16 +#undef __DEFAULT_FN_ATTRS_FP16 + +#endif /* __x86_64__ */ +#endif /* __AMXINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..31b5cdcd6cfe967de69da1869808dc5102eb3833 GIT binary patch literal 34808 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h new file mode 100644 index 00000000..f8521e7d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h @@ -0,0 +1,1148 @@ +/*===---- avx2intrin.h - AVX2 intrinsics -----------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX2INTRIN_H +#define __AVX2INTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx2"), __min_vector_width__(256))) +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx2"), __min_vector_width__(128))) + +/* SSE4 Multiple Packed Sums of Absolute Difference. */ +#define _mm256_mpsadbw_epu8(X, Y, M) \ + ((__m256i)__builtin_ia32_mpsadbw256((__v32qi)(__m256i)(X), \ + (__v32qi)(__m256i)(Y), (int)(M))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_abs_epi8(__m256i __a) +{ + return (__m256i)__builtin_elementwise_abs((__v32qs)__a); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_abs_epi16(__m256i __a) +{ + return (__m256i)__builtin_elementwise_abs((__v16hi)__a); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_abs_epi32(__m256i __a) +{ + return (__m256i)__builtin_elementwise_abs((__v8si)__a); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_packs_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_packsswb256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_packs_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_packssdw256((__v8si)__a, (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_packus_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_packuswb256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_packus_epi32(__m256i __V1, __m256i __V2) +{ + return (__m256i) __builtin_ia32_packusdw256((__v8si)__V1, (__v8si)__V2); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_add_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)((__v32qu)__a + (__v32qu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_add_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)((__v16hu)__a + (__v16hu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_add_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)((__v8su)__a + (__v8su)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_add_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4du)__a + (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_adds_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_add_sat((__v32qs)__a, (__v32qs)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_adds_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_add_sat((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_adds_epu8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_add_sat((__v32qu)__a, (__v32qu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_adds_epu16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_add_sat((__v16hu)__a, (__v16hu)__b); +} + +#define _mm256_alignr_epi8(a, b, n) \ + ((__m256i)__builtin_ia32_palignr256((__v32qi)(__m256i)(a), \ + (__v32qi)(__m256i)(b), (n))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_and_si256(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4du)__a & (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_andnot_si256(__m256i __a, __m256i __b) +{ + return (__m256i)(~(__v4du)__a & (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_avg_epu8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pavgb256((__v32qi)__a, (__v32qi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_avg_epu16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pavgw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_blendv_epi8(__m256i __V1, __m256i __V2, __m256i __M) +{ + return (__m256i)__builtin_ia32_pblendvb256((__v32qi)__V1, (__v32qi)__V2, + (__v32qi)__M); +} + +#define _mm256_blend_epi16(V1, V2, M) \ + ((__m256i)__builtin_ia32_pblendw256((__v16hi)(__m256i)(V1), \ + (__v16hi)(__m256i)(V2), (int)(M))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cmpeq_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)((__v32qi)__a == (__v32qi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cmpeq_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)((__v16hi)__a == (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cmpeq_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)((__v8si)__a == (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cmpeq_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4di)__a == (__v4di)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cmpgt_epi8(__m256i __a, __m256i __b) +{ + /* This function always performs a signed comparison, but __v32qi is a char + which may be signed or unsigned, so use __v32qs. */ + return (__m256i)((__v32qs)__a > (__v32qs)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cmpgt_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)((__v16hi)__a > (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cmpgt_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)((__v8si)__a > (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cmpgt_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4di)__a > (__v4di)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_hadd_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_phaddw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_hadd_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_phaddd256((__v8si)__a, (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_hadds_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_phaddsw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_hsub_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_phsubw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_hsub_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_phsubd256((__v8si)__a, (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_hsubs_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_phsubsw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maddubs_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pmaddubsw256((__v32qi)__a, (__v32qi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_madd_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pmaddwd256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_max_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_max((__v32qs)__a, (__v32qs)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_max_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_max((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_max_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_max((__v8si)__a, (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_max_epu8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_max((__v32qu)__a, (__v32qu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_max_epu16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_max((__v16hu)__a, (__v16hu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_max_epu32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_max((__v8su)__a, (__v8su)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_min_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_min((__v32qs)__a, (__v32qs)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_min_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_min((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_min_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_min((__v8si)__a, (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_min_epu8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_min((__v32qu)__a, (__v32qu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_min_epu16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_min((__v16hu)__a, (__v16hu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_min_epu32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_min((__v8su)__a, (__v8su)__b); +} + +static __inline__ int __DEFAULT_FN_ATTRS256 +_mm256_movemask_epi8(__m256i __a) +{ + return __builtin_ia32_pmovmskb256((__v32qi)__a); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi8_epi16(__m128i __V) +{ + /* This function always performs a signed extension, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m256i)__builtin_convertvector((__v16qs)__V, __v16hi); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi8_epi32(__m128i __V) +{ + /* This function always performs a signed extension, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3, 4, 5, 6, 7), __v8si); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi8_epi64(__m128i __V) +{ + /* This function always performs a signed extension, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3), __v4di); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi16_epi32(__m128i __V) +{ + return (__m256i)__builtin_convertvector((__v8hi)__V, __v8si); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi16_epi64(__m128i __V) +{ + return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1, 2, 3), __v4di); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi32_epi64(__m128i __V) +{ + return (__m256i)__builtin_convertvector((__v4si)__V, __v4di); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepu8_epi16(__m128i __V) +{ + return (__m256i)__builtin_convertvector((__v16qu)__V, __v16hi); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepu8_epi32(__m128i __V) +{ + return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3, 4, 5, 6, 7), __v8si); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepu8_epi64(__m128i __V) +{ + return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3), __v4di); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepu16_epi32(__m128i __V) +{ + return (__m256i)__builtin_convertvector((__v8hu)__V, __v8si); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepu16_epi64(__m128i __V) +{ + return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1, 2, 3), __v4di); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtepu32_epi64(__m128i __V) +{ + return (__m256i)__builtin_convertvector((__v4su)__V, __v4di); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mul_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pmuldq256((__v8si)__a, (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mulhrs_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pmulhrsw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mulhi_epu16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pmulhuw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mulhi_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pmulhw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mullo_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)((__v16hu)__a * (__v16hu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mullo_epi32 (__m256i __a, __m256i __b) +{ + return (__m256i)((__v8su)__a * (__v8su)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mul_epu32(__m256i __a, __m256i __b) +{ + return __builtin_ia32_pmuludq256((__v8si)__a, (__v8si)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_or_si256(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4du)__a | (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sad_epu8(__m256i __a, __m256i __b) +{ + return __builtin_ia32_psadbw256((__v32qi)__a, (__v32qi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_shuffle_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_pshufb256((__v32qi)__a, (__v32qi)__b); +} + +#define _mm256_shuffle_epi32(a, imm) \ + ((__m256i)__builtin_ia32_pshufd256((__v8si)(__m256i)(a), (int)(imm))) + +#define _mm256_shufflehi_epi16(a, imm) \ + ((__m256i)__builtin_ia32_pshufhw256((__v16hi)(__m256i)(a), (int)(imm))) + +#define _mm256_shufflelo_epi16(a, imm) \ + ((__m256i)__builtin_ia32_pshuflw256((__v16hi)(__m256i)(a), (int)(imm))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sign_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_psignb256((__v32qi)__a, (__v32qi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sign_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_psignw256((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sign_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_psignd256((__v8si)__a, (__v8si)__b); +} + +#define _mm256_slli_si256(a, imm) \ + ((__m256i)__builtin_ia32_pslldqi256_byteshift((__v4di)(__m256i)(a), (int)(imm))) + +#define _mm256_bslli_epi128(a, imm) \ + ((__m256i)__builtin_ia32_pslldqi256_byteshift((__v4di)(__m256i)(a), (int)(imm))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_slli_epi16(__m256i __a, int __count) +{ + return (__m256i)__builtin_ia32_psllwi256((__v16hi)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sll_epi16(__m256i __a, __m128i __count) +{ + return (__m256i)__builtin_ia32_psllw256((__v16hi)__a, (__v8hi)__count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_slli_epi32(__m256i __a, int __count) +{ + return (__m256i)__builtin_ia32_pslldi256((__v8si)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sll_epi32(__m256i __a, __m128i __count) +{ + return (__m256i)__builtin_ia32_pslld256((__v8si)__a, (__v4si)__count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_slli_epi64(__m256i __a, int __count) +{ + return __builtin_ia32_psllqi256((__v4di)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sll_epi64(__m256i __a, __m128i __count) +{ + return __builtin_ia32_psllq256((__v4di)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srai_epi16(__m256i __a, int __count) +{ + return (__m256i)__builtin_ia32_psrawi256((__v16hi)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sra_epi16(__m256i __a, __m128i __count) +{ + return (__m256i)__builtin_ia32_psraw256((__v16hi)__a, (__v8hi)__count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srai_epi32(__m256i __a, int __count) +{ + return (__m256i)__builtin_ia32_psradi256((__v8si)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sra_epi32(__m256i __a, __m128i __count) +{ + return (__m256i)__builtin_ia32_psrad256((__v8si)__a, (__v4si)__count); +} + +#define _mm256_srli_si256(a, imm) \ + ((__m256i)__builtin_ia32_psrldqi256_byteshift((__m256i)(a), (int)(imm))) + +#define _mm256_bsrli_epi128(a, imm) \ + ((__m256i)__builtin_ia32_psrldqi256_byteshift((__m256i)(a), (int)(imm))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srli_epi16(__m256i __a, int __count) +{ + return (__m256i)__builtin_ia32_psrlwi256((__v16hi)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srl_epi16(__m256i __a, __m128i __count) +{ + return (__m256i)__builtin_ia32_psrlw256((__v16hi)__a, (__v8hi)__count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srli_epi32(__m256i __a, int __count) +{ + return (__m256i)__builtin_ia32_psrldi256((__v8si)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srl_epi32(__m256i __a, __m128i __count) +{ + return (__m256i)__builtin_ia32_psrld256((__v8si)__a, (__v4si)__count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srli_epi64(__m256i __a, int __count) +{ + return __builtin_ia32_psrlqi256((__v4di)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srl_epi64(__m256i __a, __m128i __count) +{ + return __builtin_ia32_psrlq256((__v4di)__a, __count); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sub_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)((__v32qu)__a - (__v32qu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sub_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)((__v16hu)__a - (__v16hu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sub_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)((__v8su)__a - (__v8su)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sub_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4du)__a - (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_subs_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_sub_sat((__v32qs)__a, (__v32qs)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_subs_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_sub_sat((__v16hi)__a, (__v16hi)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_subs_epu8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_sub_sat((__v32qu)__a, (__v32qu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_subs_epu16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_elementwise_sub_sat((__v16hu)__a, (__v16hu)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_unpackhi_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_shufflevector((__v32qi)__a, (__v32qi)__b, 8, 32+8, 9, 32+9, 10, 32+10, 11, 32+11, 12, 32+12, 13, 32+13, 14, 32+14, 15, 32+15, 24, 32+24, 25, 32+25, 26, 32+26, 27, 32+27, 28, 32+28, 29, 32+29, 30, 32+30, 31, 32+31); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_unpackhi_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)__b, 4, 16+4, 5, 16+5, 6, 16+6, 7, 16+7, 12, 16+12, 13, 16+13, 14, 16+14, 15, 16+15); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_unpackhi_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)__b, 2, 8+2, 3, 8+3, 6, 8+6, 7, 8+7); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_unpackhi_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_shufflevector((__v4di)__a, (__v4di)__b, 1, 4+1, 3, 4+3); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_unpacklo_epi8(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_shufflevector((__v32qi)__a, (__v32qi)__b, 0, 32+0, 1, 32+1, 2, 32+2, 3, 32+3, 4, 32+4, 5, 32+5, 6, 32+6, 7, 32+7, 16, 32+16, 17, 32+17, 18, 32+18, 19, 32+19, 20, 32+20, 21, 32+21, 22, 32+22, 23, 32+23); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_unpacklo_epi16(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)__b, 0, 16+0, 1, 16+1, 2, 16+2, 3, 16+3, 8, 16+8, 9, 16+9, 10, 16+10, 11, 16+11); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_unpacklo_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)__b, 0, 8+0, 1, 8+1, 4, 8+4, 5, 8+5); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_unpacklo_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_shufflevector((__v4di)__a, (__v4di)__b, 0, 4+0, 2, 4+2); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_xor_si256(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4du)__a ^ (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_stream_load_si256(__m256i const *__V) +{ + typedef __v4di __v4di_aligned __attribute__((aligned(32))); + return (__m256i)__builtin_nontemporal_load((const __v4di_aligned *)__V); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_broadcastss_ps(__m128 __X) +{ + return (__m128)__builtin_shufflevector((__v4sf)__X, (__v4sf)__X, 0, 0, 0, 0); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_broadcastsd_pd(__m128d __a) +{ + return __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 0); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_broadcastss_ps(__m128 __X) +{ + return (__m256)__builtin_shufflevector((__v4sf)__X, (__v4sf)__X, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_broadcastsd_pd(__m128d __X) +{ + return (__m256d)__builtin_shufflevector((__v2df)__X, (__v2df)__X, 0, 0, 0, 0); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcastsi128_si256(__m128i __X) +{ + return (__m256i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 1, 0, 1); +} + +#define _mm_broadcastsi128_si256(X) _mm256_broadcastsi128_si256(X) + +#define _mm_blend_epi32(V1, V2, M) \ + ((__m128i)__builtin_ia32_pblendd128((__v4si)(__m128i)(V1), \ + (__v4si)(__m128i)(V2), (int)(M))) + +#define _mm256_blend_epi32(V1, V2, M) \ + ((__m256i)__builtin_ia32_pblendd256((__v8si)(__m256i)(V1), \ + (__v8si)(__m256i)(V2), (int)(M))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcastb_epi8(__m128i __X) +{ + return (__m256i)__builtin_shufflevector((__v16qi)__X, (__v16qi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcastw_epi16(__m128i __X) +{ + return (__m256i)__builtin_shufflevector((__v8hi)__X, (__v8hi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcastd_epi32(__m128i __X) +{ + return (__m256i)__builtin_shufflevector((__v4si)__X, (__v4si)__X, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcastq_epi64(__m128i __X) +{ + return (__m256i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 0, 0, 0); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_broadcastb_epi8(__m128i __X) +{ + return (__m128i)__builtin_shufflevector((__v16qi)__X, (__v16qi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_broadcastw_epi16(__m128i __X) +{ + return (__m128i)__builtin_shufflevector((__v8hi)__X, (__v8hi)__X, 0, 0, 0, 0, 0, 0, 0, 0); +} + + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_broadcastd_epi32(__m128i __X) +{ + return (__m128i)__builtin_shufflevector((__v4si)__X, (__v4si)__X, 0, 0, 0, 0); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_broadcastq_epi64(__m128i __X) +{ + return (__m128i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 0); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_permutevar8x32_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)__builtin_ia32_permvarsi256((__v8si)__a, (__v8si)__b); +} + +#define _mm256_permute4x64_pd(V, M) \ + ((__m256d)__builtin_ia32_permdf256((__v4df)(__m256d)(V), (int)(M))) + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_permutevar8x32_ps(__m256 __a, __m256i __b) +{ + return (__m256)__builtin_ia32_permvarsf256((__v8sf)__a, (__v8si)__b); +} + +#define _mm256_permute4x64_epi64(V, M) \ + ((__m256i)__builtin_ia32_permdi256((__v4di)(__m256i)(V), (int)(M))) + +#define _mm256_permute2x128_si256(V1, V2, M) \ + ((__m256i)__builtin_ia32_permti256((__m256i)(V1), (__m256i)(V2), (int)(M))) + +#define _mm256_extracti128_si256(V, M) \ + ((__m128i)__builtin_ia32_extract128i256((__v4di)(__m256i)(V), (int)(M))) + +#define _mm256_inserti128_si256(V1, V2, M) \ + ((__m256i)__builtin_ia32_insert128i256((__v4di)(__m256i)(V1), \ + (__v2di)(__m128i)(V2), (int)(M))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskload_epi32(int const *__X, __m256i __M) +{ + return (__m256i)__builtin_ia32_maskloadd256((const __v8si *)__X, (__v8si)__M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskload_epi64(long long const *__X, __m256i __M) +{ + return (__m256i)__builtin_ia32_maskloadq256((const __v4di *)__X, (__v4di)__M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskload_epi32(int const *__X, __m128i __M) +{ + return (__m128i)__builtin_ia32_maskloadd((const __v4si *)__X, (__v4si)__M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskload_epi64(long long const *__X, __m128i __M) +{ + return (__m128i)__builtin_ia32_maskloadq((const __v2di *)__X, (__v2di)__M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_maskstore_epi32(int *__X, __m256i __M, __m256i __Y) +{ + __builtin_ia32_maskstored256((__v8si *)__X, (__v8si)__M, (__v8si)__Y); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_maskstore_epi64(long long *__X, __m256i __M, __m256i __Y) +{ + __builtin_ia32_maskstoreq256((__v4di *)__X, (__v4di)__M, (__v4di)__Y); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_maskstore_epi32(int *__X, __m128i __M, __m128i __Y) +{ + __builtin_ia32_maskstored((__v4si *)__X, (__v4si)__M, (__v4si)__Y); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_maskstore_epi64(long long *__X, __m128i __M, __m128i __Y) +{ + __builtin_ia32_maskstoreq(( __v2di *)__X, (__v2di)__M, (__v2di)__Y); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sllv_epi32(__m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_psllv8si((__v8si)__X, (__v8si)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_sllv_epi32(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_psllv4si((__v4si)__X, (__v4si)__Y); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sllv_epi64(__m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_psllv4di((__v4di)__X, (__v4di)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_sllv_epi64(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_psllv2di((__v2di)__X, (__v2di)__Y); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srav_epi32(__m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_psrav8si((__v8si)__X, (__v8si)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_srav_epi32(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_psrav4si((__v4si)__X, (__v4si)__Y); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srlv_epi32(__m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_psrlv8si((__v8si)__X, (__v8si)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_srlv_epi32(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_psrlv4si((__v4si)__X, (__v4si)__Y); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srlv_epi64(__m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_psrlv4di((__v4di)__X, (__v4di)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_srlv_epi64(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_psrlv2di((__v2di)__X, (__v2di)__Y); +} + +#define _mm_mask_i32gather_pd(a, m, i, mask, s) \ + ((__m128d)__builtin_ia32_gatherd_pd((__v2df)(__m128i)(a), \ + (double const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v2df)(__m128d)(mask), (s))) + +#define _mm256_mask_i32gather_pd(a, m, i, mask, s) \ + ((__m256d)__builtin_ia32_gatherd_pd256((__v4df)(__m256d)(a), \ + (double const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v4df)(__m256d)(mask), (s))) + +#define _mm_mask_i64gather_pd(a, m, i, mask, s) \ + ((__m128d)__builtin_ia32_gatherq_pd((__v2df)(__m128d)(a), \ + (double const *)(m), \ + (__v2di)(__m128i)(i), \ + (__v2df)(__m128d)(mask), (s))) + +#define _mm256_mask_i64gather_pd(a, m, i, mask, s) \ + ((__m256d)__builtin_ia32_gatherq_pd256((__v4df)(__m256d)(a), \ + (double const *)(m), \ + (__v4di)(__m256i)(i), \ + (__v4df)(__m256d)(mask), (s))) + +#define _mm_mask_i32gather_ps(a, m, i, mask, s) \ + ((__m128)__builtin_ia32_gatherd_ps((__v4sf)(__m128)(a), \ + (float const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v4sf)(__m128)(mask), (s))) + +#define _mm256_mask_i32gather_ps(a, m, i, mask, s) \ + ((__m256)__builtin_ia32_gatherd_ps256((__v8sf)(__m256)(a), \ + (float const *)(m), \ + (__v8si)(__m256i)(i), \ + (__v8sf)(__m256)(mask), (s))) + +#define _mm_mask_i64gather_ps(a, m, i, mask, s) \ + ((__m128)__builtin_ia32_gatherq_ps((__v4sf)(__m128)(a), \ + (float const *)(m), \ + (__v2di)(__m128i)(i), \ + (__v4sf)(__m128)(mask), (s))) + +#define _mm256_mask_i64gather_ps(a, m, i, mask, s) \ + ((__m128)__builtin_ia32_gatherq_ps256((__v4sf)(__m128)(a), \ + (float const *)(m), \ + (__v4di)(__m256i)(i), \ + (__v4sf)(__m128)(mask), (s))) + +#define _mm_mask_i32gather_epi32(a, m, i, mask, s) \ + ((__m128i)__builtin_ia32_gatherd_d((__v4si)(__m128i)(a), \ + (int const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v4si)(__m128i)(mask), (s))) + +#define _mm256_mask_i32gather_epi32(a, m, i, mask, s) \ + ((__m256i)__builtin_ia32_gatherd_d256((__v8si)(__m256i)(a), \ + (int const *)(m), \ + (__v8si)(__m256i)(i), \ + (__v8si)(__m256i)(mask), (s))) + +#define _mm_mask_i64gather_epi32(a, m, i, mask, s) \ + ((__m128i)__builtin_ia32_gatherq_d((__v4si)(__m128i)(a), \ + (int const *)(m), \ + (__v2di)(__m128i)(i), \ + (__v4si)(__m128i)(mask), (s))) + +#define _mm256_mask_i64gather_epi32(a, m, i, mask, s) \ + ((__m128i)__builtin_ia32_gatherq_d256((__v4si)(__m128i)(a), \ + (int const *)(m), \ + (__v4di)(__m256i)(i), \ + (__v4si)(__m128i)(mask), (s))) + +#define _mm_mask_i32gather_epi64(a, m, i, mask, s) \ + ((__m128i)__builtin_ia32_gatherd_q((__v2di)(__m128i)(a), \ + (long long const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v2di)(__m128i)(mask), (s))) + +#define _mm256_mask_i32gather_epi64(a, m, i, mask, s) \ + ((__m256i)__builtin_ia32_gatherd_q256((__v4di)(__m256i)(a), \ + (long long const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v4di)(__m256i)(mask), (s))) + +#define _mm_mask_i64gather_epi64(a, m, i, mask, s) \ + ((__m128i)__builtin_ia32_gatherq_q((__v2di)(__m128i)(a), \ + (long long const *)(m), \ + (__v2di)(__m128i)(i), \ + (__v2di)(__m128i)(mask), (s))) + +#define _mm256_mask_i64gather_epi64(a, m, i, mask, s) \ + ((__m256i)__builtin_ia32_gatherq_q256((__v4di)(__m256i)(a), \ + (long long const *)(m), \ + (__v4di)(__m256i)(i), \ + (__v4di)(__m256i)(mask), (s))) + +#define _mm_i32gather_pd(m, i, s) \ + ((__m128d)__builtin_ia32_gatherd_pd((__v2df)_mm_undefined_pd(), \ + (double const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v2df)_mm_cmpeq_pd(_mm_setzero_pd(), \ + _mm_setzero_pd()), \ + (s))) + +#define _mm256_i32gather_pd(m, i, s) \ + ((__m256d)__builtin_ia32_gatherd_pd256((__v4df)_mm256_undefined_pd(), \ + (double const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v4df)_mm256_cmp_pd(_mm256_setzero_pd(), \ + _mm256_setzero_pd(), \ + _CMP_EQ_OQ), \ + (s))) + +#define _mm_i64gather_pd(m, i, s) \ + ((__m128d)__builtin_ia32_gatherq_pd((__v2df)_mm_undefined_pd(), \ + (double const *)(m), \ + (__v2di)(__m128i)(i), \ + (__v2df)_mm_cmpeq_pd(_mm_setzero_pd(), \ + _mm_setzero_pd()), \ + (s))) + +#define _mm256_i64gather_pd(m, i, s) \ + ((__m256d)__builtin_ia32_gatherq_pd256((__v4df)_mm256_undefined_pd(), \ + (double const *)(m), \ + (__v4di)(__m256i)(i), \ + (__v4df)_mm256_cmp_pd(_mm256_setzero_pd(), \ + _mm256_setzero_pd(), \ + _CMP_EQ_OQ), \ + (s))) + +#define _mm_i32gather_ps(m, i, s) \ + ((__m128)__builtin_ia32_gatherd_ps((__v4sf)_mm_undefined_ps(), \ + (float const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ + _mm_setzero_ps()), \ + (s))) + +#define _mm256_i32gather_ps(m, i, s) \ + ((__m256)__builtin_ia32_gatherd_ps256((__v8sf)_mm256_undefined_ps(), \ + (float const *)(m), \ + (__v8si)(__m256i)(i), \ + (__v8sf)_mm256_cmp_ps(_mm256_setzero_ps(), \ + _mm256_setzero_ps(), \ + _CMP_EQ_OQ), \ + (s))) + +#define _mm_i64gather_ps(m, i, s) \ + ((__m128)__builtin_ia32_gatherq_ps((__v4sf)_mm_undefined_ps(), \ + (float const *)(m), \ + (__v2di)(__m128i)(i), \ + (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ + _mm_setzero_ps()), \ + (s))) + +#define _mm256_i64gather_ps(m, i, s) \ + ((__m128)__builtin_ia32_gatherq_ps256((__v4sf)_mm_undefined_ps(), \ + (float const *)(m), \ + (__v4di)(__m256i)(i), \ + (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ + _mm_setzero_ps()), \ + (s))) + +#define _mm_i32gather_epi32(m, i, s) \ + ((__m128i)__builtin_ia32_gatherd_d((__v4si)_mm_undefined_si128(), \ + (int const *)(m), (__v4si)(__m128i)(i), \ + (__v4si)_mm_set1_epi32(-1), (s))) + +#define _mm256_i32gather_epi32(m, i, s) \ + ((__m256i)__builtin_ia32_gatherd_d256((__v8si)_mm256_undefined_si256(), \ + (int const *)(m), (__v8si)(__m256i)(i), \ + (__v8si)_mm256_set1_epi32(-1), (s))) + +#define _mm_i64gather_epi32(m, i, s) \ + ((__m128i)__builtin_ia32_gatherq_d((__v4si)_mm_undefined_si128(), \ + (int const *)(m), (__v2di)(__m128i)(i), \ + (__v4si)_mm_set1_epi32(-1), (s))) + +#define _mm256_i64gather_epi32(m, i, s) \ + ((__m128i)__builtin_ia32_gatherq_d256((__v4si)_mm_undefined_si128(), \ + (int const *)(m), (__v4di)(__m256i)(i), \ + (__v4si)_mm_set1_epi32(-1), (s))) + +#define _mm_i32gather_epi64(m, i, s) \ + ((__m128i)__builtin_ia32_gatherd_q((__v2di)_mm_undefined_si128(), \ + (long long const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v2di)_mm_set1_epi64x(-1), (s))) + +#define _mm256_i32gather_epi64(m, i, s) \ + ((__m256i)__builtin_ia32_gatherd_q256((__v4di)_mm256_undefined_si256(), \ + (long long const *)(m), \ + (__v4si)(__m128i)(i), \ + (__v4di)_mm256_set1_epi64x(-1), (s))) + +#define _mm_i64gather_epi64(m, i, s) \ + ((__m128i)__builtin_ia32_gatherq_q((__v2di)_mm_undefined_si128(), \ + (long long const *)(m), \ + (__v2di)(__m128i)(i), \ + (__v2di)_mm_set1_epi64x(-1), (s))) + +#define _mm256_i64gather_epi64(m, i, s) \ + ((__m256i)__builtin_ia32_gatherq_q256((__v4di)_mm256_undefined_si256(), \ + (long long const *)(m), \ + (__v4di)(__m256i)(i), \ + (__v4di)_mm256_set1_epi64x(-1), (s))) + +#undef __DEFAULT_FN_ATTRS256 +#undef __DEFAULT_FN_ATTRS128 + +#endif /* __AVX2INTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..58751859624358c792de1e8b3ffa68e53884241c GIT binary patch literal 73308 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 Jntom2e*jsZFkb)w literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h new file mode 100644 index 00000000..a864c1e3 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h @@ -0,0 +1,282 @@ +/*===------------ avx512bf16intrin.h - AVX512_BF16 intrinsics --------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifdef __SSE2__ + +#ifndef __AVX512BF16INTRIN_H +#define __AVX512BF16INTRIN_H + +typedef __bf16 __v32bf __attribute__((__vector_size__(64), __aligned__(64))); +typedef __bf16 __m512bh __attribute__((__vector_size__(64), __aligned__(64))); +typedef __bf16 __bfloat16 __attribute__((deprecated("use __bf16 instead"))); + +#define __DEFAULT_FN_ATTRS512 \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512bf16"), \ + __min_vector_width__(512))) +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512bf16"))) + +/// Convert One BF16 Data to One Single Float Data. +/// +/// \headerfile +/// +/// This intrinsic does not correspond to a specific instruction. +/// +/// \param __A +/// A bfloat data. +/// \returns A float data whose sign field and exponent field keep unchanged, +/// and fraction field is extended to 23 bits. +static __inline__ float __DEFAULT_FN_ATTRS _mm_cvtsbh_ss(__bf16 __A) { + return __builtin_ia32_cvtsbf162ss_32(__A); +} + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 512-bit vector of [16 x float]. +/// \param __B +/// A 512-bit vector of [16 x float]. +/// \returns A 512-bit vector of [32 x bfloat] whose lower 256 bits come from +/// conversion of __B, and higher 256 bits come from conversion of __A. +static __inline__ __m512bh __DEFAULT_FN_ATTRS512 +_mm512_cvtne2ps_pbh(__m512 __A, __m512 __B) { + return (__m512bh)__builtin_ia32_cvtne2ps2bf16_512((__v16sf) __A, + (__v16sf) __B); +} + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 512-bit vector of [16 x float]. +/// \param __B +/// A 512-bit vector of [16 x float]. +/// \param __W +/// A 512-bit vector of [32 x bfloat]. +/// \param __U +/// A 32-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A or __B. A 0 means element from __W. +/// \returns A 512-bit vector of [32 x bfloat] whose lower 256 bits come from +/// conversion of __B, and higher 256 bits come from conversion of __A. +static __inline__ __m512bh __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtne2ps_pbh(__m512bh __W, __mmask32 __U, __m512 __A, __m512 __B) { + return (__m512bh)__builtin_ia32_selectpbf_512((__mmask32)__U, + (__v32bf)_mm512_cvtne2ps_pbh(__A, __B), + (__v32bf)__W); +} + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 512-bit vector of [16 x float]. +/// \param __B +/// A 512-bit vector of [16 x float]. +/// \param __U +/// A 32-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A or __B. A 0 means element is zero. +/// \returns A 512-bit vector of [32 x bfloat] whose lower 256 bits come from +/// conversion of __B, and higher 256 bits come from conversion of __A. +static __inline__ __m512bh __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtne2ps_pbh(__mmask32 __U, __m512 __A, __m512 __B) { + return (__m512bh)__builtin_ia32_selectpbf_512((__mmask32)__U, + (__v32bf)_mm512_cvtne2ps_pbh(__A, __B), + (__v32bf)_mm512_setzero_si512()); +} + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 512-bit vector of [16 x float]. +/// \returns A 256-bit vector of [16 x bfloat] come from conversion of __A. +static __inline__ __m256bh __DEFAULT_FN_ATTRS512 +_mm512_cvtneps_pbh(__m512 __A) { + return (__m256bh)__builtin_ia32_cvtneps2bf16_512_mask((__v16sf)__A, + (__v16bf)_mm256_undefined_si256(), + (__mmask16)-1); +} + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 512-bit vector of [16 x float]. +/// \param __W +/// A 256-bit vector of [16 x bfloat]. +/// \param __U +/// A 16-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A. A 0 means element from __W. +/// \returns A 256-bit vector of [16 x bfloat] come from conversion of __A. +static __inline__ __m256bh __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtneps_pbh(__m256bh __W, __mmask16 __U, __m512 __A) { + return (__m256bh)__builtin_ia32_cvtneps2bf16_512_mask((__v16sf)__A, + (__v16bf)__W, + (__mmask16)__U); +} + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 512-bit vector of [16 x float]. +/// \param __U +/// A 16-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A. A 0 means element is zero. +/// \returns A 256-bit vector of [16 x bfloat] come from conversion of __A. +static __inline__ __m256bh __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtneps_pbh(__mmask16 __U, __m512 __A) { + return (__m256bh)__builtin_ia32_cvtneps2bf16_512_mask((__v16sf)__A, + (__v16bf)_mm256_setzero_si256(), + (__mmask16)__U); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 512-bit vector of [32 x bfloat]. +/// \param __B +/// A 512-bit vector of [32 x bfloat]. +/// \param __D +/// A 512-bit vector of [16 x float]. +/// \returns A 512-bit vector of [16 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_dpbf16_ps(__m512 __D, __m512bh __A, __m512bh __B) { + return (__m512)__builtin_ia32_dpbf16ps_512((__v16sf) __D, + (__v32bf) __A, + (__v32bf) __B); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 512-bit vector of [32 x bfloat]. +/// \param __B +/// A 512-bit vector of [32 x bfloat]. +/// \param __D +/// A 512-bit vector of [16 x float]. +/// \param __U +/// A 16-bit mask value specifying what is chosen for each element. +/// A 1 means __A and __B's dot product accumulated with __D. A 0 means __D. +/// \returns A 512-bit vector of [16 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_dpbf16_ps(__m512 __D, __mmask16 __U, __m512bh __A, __m512bh __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_dpbf16_ps(__D, __A, __B), + (__v16sf)__D); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 512-bit vector of [32 x bfloat]. +/// \param __B +/// A 512-bit vector of [32 x bfloat]. +/// \param __D +/// A 512-bit vector of [16 x float]. +/// \param __U +/// A 16-bit mask value specifying what is chosen for each element. +/// A 1 means __A and __B's dot product accumulated with __D. A 0 means 0. +/// \returns A 512-bit vector of [16 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_dpbf16_ps(__mmask16 __U, __m512 __D, __m512bh __A, __m512bh __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_dpbf16_ps(__D, __A, __B), + (__v16sf)_mm512_setzero_si512()); +} + +/// Convert Packed BF16 Data to Packed float Data. +/// +/// \headerfile +/// +/// \param __A +/// A 256-bit vector of [16 x bfloat]. +/// \returns A 512-bit vector of [16 x float] come from conversion of __A +static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_cvtpbh_ps(__m256bh __A) { + return _mm512_castsi512_ps((__m512i)_mm512_slli_epi32( + (__m512i)_mm512_cvtepi16_epi32((__m256i)__A), 16)); +} + +/// Convert Packed BF16 Data to Packed float Data using zeroing mask. +/// +/// \headerfile +/// +/// \param __U +/// A 16-bit mask. Elements are zeroed out when the corresponding mask +/// bit is not set. +/// \param __A +/// A 256-bit vector of [16 x bfloat]. +/// \returns A 512-bit vector of [16 x float] come from conversion of __A +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtpbh_ps(__mmask16 __U, __m256bh __A) { + return _mm512_castsi512_ps((__m512i)_mm512_slli_epi32( + (__m512i)_mm512_maskz_cvtepi16_epi32((__mmask16)__U, (__m256i)__A), 16)); +} + +/// Convert Packed BF16 Data to Packed float Data using merging mask. +/// +/// \headerfile +/// +/// \param __S +/// A 512-bit vector of [16 x float]. Elements are copied from __S when +/// the corresponding mask bit is not set. +/// \param __U +/// A 16-bit mask. +/// \param __A +/// A 256-bit vector of [16 x bfloat]. +/// \returns A 512-bit vector of [16 x float] come from conversion of __A +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpbh_ps(__m512 __S, __mmask16 __U, __m256bh __A) { + return _mm512_castsi512_ps((__m512i)_mm512_mask_slli_epi32( + (__m512i)__S, (__mmask16)__U, + (__m512i)_mm512_cvtepi16_epi32((__m256i)__A), 16)); +} + +#undef __DEFAULT_FN_ATTRS +#undef __DEFAULT_FN_ATTRS512 + +#endif +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..76c3cd7a249b47667f0aa837b57a9220049409db GIT binary patch literal 24894 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h new file mode 100644 index 00000000..d4411d15 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h @@ -0,0 +1,83 @@ +/*===------------- avx512bitalgintrin.h - BITALG intrinsics ------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX512BITALGINTRIN_H +#define __AVX512BITALGINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512bitalg"), __min_vector_width__(512))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_popcnt_epi16(__m512i __A) +{ + return (__m512i) __builtin_ia32_vpopcntw_512((__v32hi) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_popcnt_epi16(__m512i __A, __mmask32 __U, __m512i __B) +{ + return (__m512i) __builtin_ia32_selectw_512((__mmask32) __U, + (__v32hi) _mm512_popcnt_epi16(__B), + (__v32hi) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_popcnt_epi16(__mmask32 __U, __m512i __B) +{ + return _mm512_mask_popcnt_epi16((__m512i) _mm512_setzero_si512(), + __U, + __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_popcnt_epi8(__m512i __A) +{ + return (__m512i) __builtin_ia32_vpopcntb_512((__v64qi) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_popcnt_epi8(__m512i __A, __mmask64 __U, __m512i __B) +{ + return (__m512i) __builtin_ia32_selectb_512((__mmask64) __U, + (__v64qi) _mm512_popcnt_epi8(__B), + (__v64qi) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_popcnt_epi8(__mmask64 __U, __m512i __B) +{ + return _mm512_mask_popcnt_epi8((__m512i) _mm512_setzero_si512(), + __U, + __B); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_mm512_mask_bitshuffle_epi64_mask(__mmask64 __U, __m512i __A, __m512i __B) +{ + return (__mmask64) __builtin_ia32_vpshufbitqmb512_mask((__v64qi) __A, + (__v64qi) __B, + __U); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_mm512_bitshuffle_epi64_mask(__m512i __A, __m512i __B) +{ + return _mm512_mask_bitshuffle_epi64_mask((__mmask64) -1, + __A, + __B); +} + + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a975c01fab181dc64a02358dbcc085e485f22346 GIT binary patch literal 15570 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 eR~H_GrL directly; include instead." +#endif + +#ifndef __AVX512BWINTRIN_H +#define __AVX512BWINTRIN_H + +typedef unsigned int __mmask32; +typedef unsigned long long __mmask64; + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512bw"), __min_vector_width__(512))) +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512bw"))) + +static __inline __mmask32 __DEFAULT_FN_ATTRS +_knot_mask32(__mmask32 __M) +{ + return __builtin_ia32_knotsi(__M); +} + +static __inline __mmask64 __DEFAULT_FN_ATTRS +_knot_mask64(__mmask64 __M) +{ + return __builtin_ia32_knotdi(__M); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_kand_mask32(__mmask32 __A, __mmask32 __B) +{ + return (__mmask32)__builtin_ia32_kandsi((__mmask32)__A, (__mmask32)__B); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_kand_mask64(__mmask64 __A, __mmask64 __B) +{ + return (__mmask64)__builtin_ia32_kanddi((__mmask64)__A, (__mmask64)__B); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_kandn_mask32(__mmask32 __A, __mmask32 __B) +{ + return (__mmask32)__builtin_ia32_kandnsi((__mmask32)__A, (__mmask32)__B); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_kandn_mask64(__mmask64 __A, __mmask64 __B) +{ + return (__mmask64)__builtin_ia32_kandndi((__mmask64)__A, (__mmask64)__B); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_kor_mask32(__mmask32 __A, __mmask32 __B) +{ + return (__mmask32)__builtin_ia32_korsi((__mmask32)__A, (__mmask32)__B); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_kor_mask64(__mmask64 __A, __mmask64 __B) +{ + return (__mmask64)__builtin_ia32_kordi((__mmask64)__A, (__mmask64)__B); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_kxnor_mask32(__mmask32 __A, __mmask32 __B) +{ + return (__mmask32)__builtin_ia32_kxnorsi((__mmask32)__A, (__mmask32)__B); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_kxnor_mask64(__mmask64 __A, __mmask64 __B) +{ + return (__mmask64)__builtin_ia32_kxnordi((__mmask64)__A, (__mmask64)__B); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_kxor_mask32(__mmask32 __A, __mmask32 __B) +{ + return (__mmask32)__builtin_ia32_kxorsi((__mmask32)__A, (__mmask32)__B); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_kxor_mask64(__mmask64 __A, __mmask64 __B) +{ + return (__mmask64)__builtin_ia32_kxordi((__mmask64)__A, (__mmask64)__B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortestc_mask32_u8(__mmask32 __A, __mmask32 __B) +{ + return (unsigned char)__builtin_ia32_kortestcsi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortestz_mask32_u8(__mmask32 __A, __mmask32 __B) +{ + return (unsigned char)__builtin_ia32_kortestzsi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortest_mask32_u8(__mmask32 __A, __mmask32 __B, unsigned char *__C) { + *__C = (unsigned char)__builtin_ia32_kortestcsi(__A, __B); + return (unsigned char)__builtin_ia32_kortestzsi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortestc_mask64_u8(__mmask64 __A, __mmask64 __B) +{ + return (unsigned char)__builtin_ia32_kortestcdi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortestz_mask64_u8(__mmask64 __A, __mmask64 __B) +{ + return (unsigned char)__builtin_ia32_kortestzdi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortest_mask64_u8(__mmask64 __A, __mmask64 __B, unsigned char *__C) { + *__C = (unsigned char)__builtin_ia32_kortestcdi(__A, __B); + return (unsigned char)__builtin_ia32_kortestzdi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktestc_mask32_u8(__mmask32 __A, __mmask32 __B) +{ + return (unsigned char)__builtin_ia32_ktestcsi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktestz_mask32_u8(__mmask32 __A, __mmask32 __B) +{ + return (unsigned char)__builtin_ia32_ktestzsi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktest_mask32_u8(__mmask32 __A, __mmask32 __B, unsigned char *__C) { + *__C = (unsigned char)__builtin_ia32_ktestcsi(__A, __B); + return (unsigned char)__builtin_ia32_ktestzsi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktestc_mask64_u8(__mmask64 __A, __mmask64 __B) +{ + return (unsigned char)__builtin_ia32_ktestcdi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktestz_mask64_u8(__mmask64 __A, __mmask64 __B) +{ + return (unsigned char)__builtin_ia32_ktestzdi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktest_mask64_u8(__mmask64 __A, __mmask64 __B, unsigned char *__C) { + *__C = (unsigned char)__builtin_ia32_ktestcdi(__A, __B); + return (unsigned char)__builtin_ia32_ktestzdi(__A, __B); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_kadd_mask32(__mmask32 __A, __mmask32 __B) +{ + return (__mmask32)__builtin_ia32_kaddsi((__mmask32)__A, (__mmask32)__B); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_kadd_mask64(__mmask64 __A, __mmask64 __B) +{ + return (__mmask64)__builtin_ia32_kadddi((__mmask64)__A, (__mmask64)__B); +} + +#define _kshiftli_mask32(A, I) \ + ((__mmask32)__builtin_ia32_kshiftlisi((__mmask32)(A), (unsigned int)(I))) + +#define _kshiftri_mask32(A, I) \ + ((__mmask32)__builtin_ia32_kshiftrisi((__mmask32)(A), (unsigned int)(I))) + +#define _kshiftli_mask64(A, I) \ + ((__mmask64)__builtin_ia32_kshiftlidi((__mmask64)(A), (unsigned int)(I))) + +#define _kshiftri_mask64(A, I) \ + ((__mmask64)__builtin_ia32_kshiftridi((__mmask64)(A), (unsigned int)(I))) + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_cvtmask32_u32(__mmask32 __A) { + return (unsigned int)__builtin_ia32_kmovd((__mmask32)__A); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_cvtmask64_u64(__mmask64 __A) { + return (unsigned long long)__builtin_ia32_kmovq((__mmask64)__A); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_cvtu32_mask32(unsigned int __A) { + return (__mmask32)__builtin_ia32_kmovd((__mmask32)__A); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_cvtu64_mask64(unsigned long long __A) { + return (__mmask64)__builtin_ia32_kmovq((__mmask64)__A); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_load_mask32(__mmask32 *__A) { + return (__mmask32)__builtin_ia32_kmovd(*(__mmask32 *)__A); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_load_mask64(__mmask64 *__A) { + return (__mmask64)__builtin_ia32_kmovq(*(__mmask64 *)__A); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_store_mask32(__mmask32 *__A, __mmask32 __B) { + *(__mmask32 *)__A = __builtin_ia32_kmovd((__mmask32)__B); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_store_mask64(__mmask64 *__A, __mmask64 __B) { + *(__mmask64 *)__A = __builtin_ia32_kmovq((__mmask64)__B); +} + +/* Integer compare */ + +#define _mm512_cmp_epi8_mask(a, b, p) \ + ((__mmask64)__builtin_ia32_cmpb512_mask((__v64qi)(__m512i)(a), \ + (__v64qi)(__m512i)(b), (int)(p), \ + (__mmask64)-1)) + +#define _mm512_mask_cmp_epi8_mask(m, a, b, p) \ + ((__mmask64)__builtin_ia32_cmpb512_mask((__v64qi)(__m512i)(a), \ + (__v64qi)(__m512i)(b), (int)(p), \ + (__mmask64)(m))) + +#define _mm512_cmp_epu8_mask(a, b, p) \ + ((__mmask64)__builtin_ia32_ucmpb512_mask((__v64qi)(__m512i)(a), \ + (__v64qi)(__m512i)(b), (int)(p), \ + (__mmask64)-1)) + +#define _mm512_mask_cmp_epu8_mask(m, a, b, p) \ + ((__mmask64)__builtin_ia32_ucmpb512_mask((__v64qi)(__m512i)(a), \ + (__v64qi)(__m512i)(b), (int)(p), \ + (__mmask64)(m))) + +#define _mm512_cmp_epi16_mask(a, b, p) \ + ((__mmask32)__builtin_ia32_cmpw512_mask((__v32hi)(__m512i)(a), \ + (__v32hi)(__m512i)(b), (int)(p), \ + (__mmask32)-1)) + +#define _mm512_mask_cmp_epi16_mask(m, a, b, p) \ + ((__mmask32)__builtin_ia32_cmpw512_mask((__v32hi)(__m512i)(a), \ + (__v32hi)(__m512i)(b), (int)(p), \ + (__mmask32)(m))) + +#define _mm512_cmp_epu16_mask(a, b, p) \ + ((__mmask32)__builtin_ia32_ucmpw512_mask((__v32hi)(__m512i)(a), \ + (__v32hi)(__m512i)(b), (int)(p), \ + (__mmask32)-1)) + +#define _mm512_mask_cmp_epu16_mask(m, a, b, p) \ + ((__mmask32)__builtin_ia32_ucmpw512_mask((__v32hi)(__m512i)(a), \ + (__v32hi)(__m512i)(b), (int)(p), \ + (__mmask32)(m))) + +#define _mm512_cmpeq_epi8_mask(A, B) \ + _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_EQ) +#define _mm512_mask_cmpeq_epi8_mask(k, A, B) \ + _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm512_cmpge_epi8_mask(A, B) \ + _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_GE) +#define _mm512_mask_cmpge_epi8_mask(k, A, B) \ + _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm512_cmpgt_epi8_mask(A, B) \ + _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_GT) +#define _mm512_mask_cmpgt_epi8_mask(k, A, B) \ + _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm512_cmple_epi8_mask(A, B) \ + _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_LE) +#define _mm512_mask_cmple_epi8_mask(k, A, B) \ + _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm512_cmplt_epi8_mask(A, B) \ + _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_LT) +#define _mm512_mask_cmplt_epi8_mask(k, A, B) \ + _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm512_cmpneq_epi8_mask(A, B) \ + _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_NE) +#define _mm512_mask_cmpneq_epi8_mask(k, A, B) \ + _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm512_cmpeq_epu8_mask(A, B) \ + _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_EQ) +#define _mm512_mask_cmpeq_epu8_mask(k, A, B) \ + _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm512_cmpge_epu8_mask(A, B) \ + _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_GE) +#define _mm512_mask_cmpge_epu8_mask(k, A, B) \ + _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm512_cmpgt_epu8_mask(A, B) \ + _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_GT) +#define _mm512_mask_cmpgt_epu8_mask(k, A, B) \ + _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm512_cmple_epu8_mask(A, B) \ + _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_LE) +#define _mm512_mask_cmple_epu8_mask(k, A, B) \ + _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm512_cmplt_epu8_mask(A, B) \ + _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_LT) +#define _mm512_mask_cmplt_epu8_mask(k, A, B) \ + _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm512_cmpneq_epu8_mask(A, B) \ + _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_NE) +#define _mm512_mask_cmpneq_epu8_mask(k, A, B) \ + _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm512_cmpeq_epi16_mask(A, B) \ + _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_EQ) +#define _mm512_mask_cmpeq_epi16_mask(k, A, B) \ + _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm512_cmpge_epi16_mask(A, B) \ + _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_GE) +#define _mm512_mask_cmpge_epi16_mask(k, A, B) \ + _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm512_cmpgt_epi16_mask(A, B) \ + _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_GT) +#define _mm512_mask_cmpgt_epi16_mask(k, A, B) \ + _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm512_cmple_epi16_mask(A, B) \ + _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_LE) +#define _mm512_mask_cmple_epi16_mask(k, A, B) \ + _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm512_cmplt_epi16_mask(A, B) \ + _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_LT) +#define _mm512_mask_cmplt_epi16_mask(k, A, B) \ + _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm512_cmpneq_epi16_mask(A, B) \ + _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_NE) +#define _mm512_mask_cmpneq_epi16_mask(k, A, B) \ + _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm512_cmpeq_epu16_mask(A, B) \ + _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_EQ) +#define _mm512_mask_cmpeq_epu16_mask(k, A, B) \ + _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm512_cmpge_epu16_mask(A, B) \ + _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_GE) +#define _mm512_mask_cmpge_epu16_mask(k, A, B) \ + _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm512_cmpgt_epu16_mask(A, B) \ + _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_GT) +#define _mm512_mask_cmpgt_epu16_mask(k, A, B) \ + _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm512_cmple_epu16_mask(A, B) \ + _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_LE) +#define _mm512_mask_cmple_epu16_mask(k, A, B) \ + _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm512_cmplt_epu16_mask(A, B) \ + _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_LT) +#define _mm512_mask_cmplt_epu16_mask(k, A, B) \ + _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm512_cmpneq_epu16_mask(A, B) \ + _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_NE) +#define _mm512_mask_cmpneq_epu16_mask(k, A, B) \ + _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_NE) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_add_epi8 (__m512i __A, __m512i __B) { + return (__m512i) ((__v64qu) __A + (__v64qu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_add_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_add_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_add_epi8(__mmask64 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_add_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sub_epi8 (__m512i __A, __m512i __B) { + return (__m512i) ((__v64qu) __A - (__v64qu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sub_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_sub_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sub_epi8(__mmask64 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_sub_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_add_epi16 (__m512i __A, __m512i __B) { + return (__m512i) ((__v32hu) __A + (__v32hu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_add_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_add_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_add_epi16(__mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_add_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sub_epi16 (__m512i __A, __m512i __B) { + return (__m512i) ((__v32hu) __A - (__v32hu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sub_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_sub_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sub_epi16(__mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_sub_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mullo_epi16 (__m512i __A, __m512i __B) { + return (__m512i) ((__v32hu) __A * (__v32hu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mullo_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_mullo_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mullo_epi16(__mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_mullo_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_blend_epi8 (__mmask64 __U, __m512i __A, __m512i __W) +{ + return (__m512i) __builtin_ia32_selectb_512 ((__mmask64) __U, + (__v64qi) __W, + (__v64qi) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_blend_epi16 (__mmask32 __U, __m512i __A, __m512i __W) +{ + return (__m512i) __builtin_ia32_selectw_512 ((__mmask32) __U, + (__v32hi) __W, + (__v32hi) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_abs_epi8 (__m512i __A) +{ + return (__m512i)__builtin_elementwise_abs((__v64qs)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_abs_epi8 (__m512i __W, __mmask64 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_abs_epi8(__A), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_abs_epi8 (__mmask64 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_abs_epi8(__A), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_abs_epi16 (__m512i __A) +{ + return (__m512i)__builtin_elementwise_abs((__v32hi)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_abs_epi16 (__m512i __W, __mmask32 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_abs_epi16(__A), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_abs_epi16 (__mmask32 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_abs_epi16(__A), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_packs_epi32(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_packssdw512((__v16si)__A, (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_packs_epi32(__mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_packs_epi32(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_packs_epi32(__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_packs_epi32(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_packs_epi16(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_packsswb512((__v32hi)__A, (__v32hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_packs_epi16(__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_packs_epi16(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_packs_epi16(__mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_packs_epi16(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_packus_epi32(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_packusdw512((__v16si) __A, (__v16si) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_packus_epi32(__mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_packus_epi32(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_packus_epi32(__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_packus_epi32(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_packus_epi16(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_packuswb512((__v32hi) __A, (__v32hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_packus_epi16(__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_packus_epi16(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_packus_epi16(__mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_packus_epi16(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_adds_epi8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_add_sat((__v64qs)__A, (__v64qs)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_adds_epi8 (__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_adds_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_adds_epi8 (__mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_adds_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_adds_epi16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_add_sat((__v32hi)__A, (__v32hi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_adds_epi16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_adds_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_adds_epi16 (__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_adds_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_adds_epu8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_add_sat((__v64qu) __A, (__v64qu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_adds_epu8 (__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_adds_epu8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_adds_epu8 (__mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_adds_epu8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_adds_epu16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_add_sat((__v32hu) __A, (__v32hu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_adds_epu16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_adds_epu16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_adds_epu16 (__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_adds_epu16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_avg_epu8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_pavgb512((__v64qi)__A, (__v64qi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_avg_epu8 (__m512i __W, __mmask64 __U, __m512i __A, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_avg_epu8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_avg_epu8 (__mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_avg_epu8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_avg_epu16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_pavgw512((__v32hi)__A, (__v32hi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_avg_epu16 (__m512i __W, __mmask32 __U, __m512i __A, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_avg_epu16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_avg_epu16 (__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_avg_epu16(__A, __B), + (__v32hi) _mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_max_epi8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_max((__v64qs) __A, (__v64qs) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_epi8 (__mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_max_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_max_epi8 (__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_max_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_max_epi16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_max((__v32hi) __A, (__v32hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_epi16 (__mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_max_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_max_epi16 (__m512i __W, __mmask32 __M, __m512i __A, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_max_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_max_epu8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_max((__v64qu)__A, (__v64qu)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_epu8 (__mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_max_epu8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_max_epu8 (__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_max_epu8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_max_epu16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_max((__v32hu)__A, (__v32hu)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_epu16 (__mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_max_epu16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_max_epu16 (__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_max_epu16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_min_epi8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_min((__v64qs) __A, (__v64qs) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_epi8 (__mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_min_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_min_epi8 (__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_min_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_min_epi16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_min((__v32hi) __A, (__v32hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_epi16 (__mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_min_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_min_epi16 (__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_min_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_min_epu8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_min((__v64qu)__A, (__v64qu)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_epu8 (__mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_min_epu8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_min_epu8 (__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_min_epu8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_min_epu16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_min((__v32hu)__A, (__v32hu)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_epu16 (__mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_min_epu16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_min_epu16 (__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_min_epu16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_shuffle_epi8(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_pshufb512((__v64qi)__A,(__v64qi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_shuffle_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_shuffle_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_shuffle_epi8(__mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_shuffle_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_subs_epi8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_sub_sat((__v64qs)__A, (__v64qs)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_subs_epi8 (__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_subs_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_subs_epi8 (__mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_subs_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_subs_epi16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_sub_sat((__v32hi)__A, (__v32hi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_subs_epi16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_subs_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_subs_epi16 (__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_subs_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_subs_epu8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_sub_sat((__v64qu) __A, (__v64qu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_subs_epu8 (__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_subs_epu8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_subs_epu8 (__mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_subs_epu8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_subs_epu16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_sub_sat((__v32hu) __A, (__v32hu) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_subs_epu16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_subs_epu16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_subs_epu16 (__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_subs_epu16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_permutex2var_epi16(__m512i __A, __m512i __I, __m512i __B) +{ + return (__m512i)__builtin_ia32_vpermi2varhi512((__v32hi)__A, (__v32hi)__I, + (__v32hi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_permutex2var_epi16(__m512i __A, __mmask32 __U, __m512i __I, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512(__U, + (__v32hi)_mm512_permutex2var_epi16(__A, __I, __B), + (__v32hi)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask2_permutex2var_epi16(__m512i __A, __m512i __I, __mmask32 __U, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512(__U, + (__v32hi)_mm512_permutex2var_epi16(__A, __I, __B), + (__v32hi)__I); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutex2var_epi16(__mmask32 __U, __m512i __A, __m512i __I, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512(__U, + (__v32hi)_mm512_permutex2var_epi16(__A, __I, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mulhrs_epi16(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_pmulhrsw512((__v32hi)__A, (__v32hi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mulhrs_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_mulhrs_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mulhrs_epi16(__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_mulhrs_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mulhi_epi16(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_pmulhw512((__v32hi) __A, (__v32hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mulhi_epi16(__m512i __W, __mmask32 __U, __m512i __A, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_mulhi_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mulhi_epi16(__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_mulhi_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mulhi_epu16(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_pmulhuw512((__v32hi) __A, (__v32hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mulhi_epu16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_mulhi_epu16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mulhi_epu16 (__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_mulhi_epu16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maddubs_epi16(__m512i __X, __m512i __Y) { + return (__m512i)__builtin_ia32_pmaddubsw512((__v64qi)__X, (__v64qi)__Y); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_maddubs_epi16(__m512i __W, __mmask32 __U, __m512i __X, + __m512i __Y) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32) __U, + (__v32hi)_mm512_maddubs_epi16(__X, __Y), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_maddubs_epi16(__mmask32 __U, __m512i __X, __m512i __Y) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32) __U, + (__v32hi)_mm512_maddubs_epi16(__X, __Y), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_madd_epi16(__m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_pmaddwd512((__v32hi)__A, (__v32hi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_madd_epi16(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_madd_epi16(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_madd_epi16(__mmask16 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_madd_epi16(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtsepi16_epi8 (__m512i __A) { + return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A, + (__v32qi)_mm256_setzero_si256(), + (__mmask32) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A) { + return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A, + (__v32qi)__O, + __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtsepi16_epi8 (__mmask32 __M, __m512i __A) { + return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A, + (__v32qi) _mm256_setzero_si256(), + __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtusepi16_epi8 (__m512i __A) { + return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A, + (__v32qi) _mm256_setzero_si256(), + (__mmask32) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A) { + return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A, + (__v32qi) __O, + __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtusepi16_epi8 (__mmask32 __M, __m512i __A) { + return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A, + (__v32qi) _mm256_setzero_si256(), + __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi16_epi8 (__m512i __A) { + return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A, + (__v32qi) _mm256_undefined_si256(), + (__mmask32) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A) { + return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A, + (__v32qi) __O, + __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi16_epi8 (__mmask32 __M, __m512i __A) { + return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A, + (__v32qi) _mm256_setzero_si256(), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A) +{ + __builtin_ia32_pmovwb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A) +{ + __builtin_ia32_pmovswb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A) +{ + __builtin_ia32_pmovuswb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_unpackhi_epi8(__m512i __A, __m512i __B) { + return (__m512i)__builtin_shufflevector((__v64qi)__A, (__v64qi)__B, + 8, 64+8, 9, 64+9, + 10, 64+10, 11, 64+11, + 12, 64+12, 13, 64+13, + 14, 64+14, 15, 64+15, + 24, 64+24, 25, 64+25, + 26, 64+26, 27, 64+27, + 28, 64+28, 29, 64+29, + 30, 64+30, 31, 64+31, + 40, 64+40, 41, 64+41, + 42, 64+42, 43, 64+43, + 44, 64+44, 45, 64+45, + 46, 64+46, 47, 64+47, + 56, 64+56, 57, 64+57, + 58, 64+58, 59, 64+59, + 60, 64+60, 61, 64+61, + 62, 64+62, 63, 64+63); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_unpackhi_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_unpackhi_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpackhi_epi8(__mmask64 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_unpackhi_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_unpackhi_epi16(__m512i __A, __m512i __B) { + return (__m512i)__builtin_shufflevector((__v32hi)__A, (__v32hi)__B, + 4, 32+4, 5, 32+5, + 6, 32+6, 7, 32+7, + 12, 32+12, 13, 32+13, + 14, 32+14, 15, 32+15, + 20, 32+20, 21, 32+21, + 22, 32+22, 23, 32+23, + 28, 32+28, 29, 32+29, + 30, 32+30, 31, 32+31); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_unpackhi_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_unpackhi_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpackhi_epi16(__mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_unpackhi_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_unpacklo_epi8(__m512i __A, __m512i __B) { + return (__m512i)__builtin_shufflevector((__v64qi)__A, (__v64qi)__B, + 0, 64+0, 1, 64+1, + 2, 64+2, 3, 64+3, + 4, 64+4, 5, 64+5, + 6, 64+6, 7, 64+7, + 16, 64+16, 17, 64+17, + 18, 64+18, 19, 64+19, + 20, 64+20, 21, 64+21, + 22, 64+22, 23, 64+23, + 32, 64+32, 33, 64+33, + 34, 64+34, 35, 64+35, + 36, 64+36, 37, 64+37, + 38, 64+38, 39, 64+39, + 48, 64+48, 49, 64+49, + 50, 64+50, 51, 64+51, + 52, 64+52, 53, 64+53, + 54, 64+54, 55, 64+55); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_unpacklo_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_unpacklo_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpacklo_epi8(__mmask64 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, + (__v64qi)_mm512_unpacklo_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_unpacklo_epi16(__m512i __A, __m512i __B) { + return (__m512i)__builtin_shufflevector((__v32hi)__A, (__v32hi)__B, + 0, 32+0, 1, 32+1, + 2, 32+2, 3, 32+3, + 8, 32+8, 9, 32+9, + 10, 32+10, 11, 32+11, + 16, 32+16, 17, 32+17, + 18, 32+18, 19, 32+19, + 24, 32+24, 25, 32+25, + 26, 32+26, 27, 32+27); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_unpacklo_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_unpacklo_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpacklo_epi16(__mmask32 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_unpacklo_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi8_epi16(__m256i __A) +{ + /* This function always performs a signed extension, but __v32qi is a char + which may be signed or unsigned, so use __v32qs. */ + return (__m512i)__builtin_convertvector((__v32qs)__A, __v32hi); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi8_epi16(__m512i __W, __mmask32 __U, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_cvtepi8_epi16(__A), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi8_epi16(__mmask32 __U, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_cvtepi8_epi16(__A), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepu8_epi16(__m256i __A) +{ + return (__m512i)__builtin_convertvector((__v32qu)__A, __v32hi); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu8_epi16(__m512i __W, __mmask32 __U, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_cvtepu8_epi16(__A), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu8_epi16(__mmask32 __U, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_cvtepu8_epi16(__A), + (__v32hi)_mm512_setzero_si512()); +} + + +#define _mm512_shufflehi_epi16(A, imm) \ + ((__m512i)__builtin_ia32_pshufhw512((__v32hi)(__m512i)(A), (int)(imm))) + +#define _mm512_mask_shufflehi_epi16(W, U, A, imm) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_shufflehi_epi16((A), \ + (imm)), \ + (__v32hi)(__m512i)(W))) + +#define _mm512_maskz_shufflehi_epi16(U, A, imm) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_shufflehi_epi16((A), \ + (imm)), \ + (__v32hi)_mm512_setzero_si512())) + +#define _mm512_shufflelo_epi16(A, imm) \ + ((__m512i)__builtin_ia32_pshuflw512((__v32hi)(__m512i)(A), (int)(imm))) + + +#define _mm512_mask_shufflelo_epi16(W, U, A, imm) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_shufflelo_epi16((A), \ + (imm)), \ + (__v32hi)(__m512i)(W))) + + +#define _mm512_maskz_shufflelo_epi16(U, A, imm) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_shufflelo_epi16((A), \ + (imm)), \ + (__v32hi)_mm512_setzero_si512())) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sllv_epi16(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_psllv32hi((__v32hi) __A, (__v32hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sllv_epi16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_sllv_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sllv_epi16(__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_sllv_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sll_epi16(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_psllw512((__v32hi) __A, (__v8hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sll_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_sll_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sll_epi16(__mmask32 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_sll_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_slli_epi16(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_psllwi512((__v32hi)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_slli_epi16(__m512i __W, __mmask32 __U, __m512i __A, + unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_slli_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_slli_epi16(__mmask32 __U, __m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_slli_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +#define _mm512_bslli_epi128(a, imm) \ + ((__m512i)__builtin_ia32_pslldqi512_byteshift((__v8di)(__m512i)(a), (int)(imm))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srlv_epi16(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_psrlv32hi((__v32hi)__A, (__v32hi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srlv_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srlv_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srlv_epi16(__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srlv_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srav_epi16(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_psrav32hi((__v32hi)__A, (__v32hi)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srav_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srav_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srav_epi16(__mmask32 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srav_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sra_epi16(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_psraw512((__v32hi) __A, (__v8hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sra_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_sra_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sra_epi16(__mmask32 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_sra_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srai_epi16(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_psrawi512((__v32hi)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srai_epi16(__m512i __W, __mmask32 __U, __m512i __A, + unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srai_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srai_epi16(__mmask32 __U, __m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srai_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srl_epi16(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_psrlw512((__v32hi) __A, (__v8hi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srl_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srl_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srl_epi16(__mmask32 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srl_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srli_epi16(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_psrlwi512((__v32hi)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srli_epi16(__m512i __W, __mmask32 __U, __m512i __A, + unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srli_epi16(__A, __B), + (__v32hi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srli_epi16(__mmask32 __U, __m512i __A, int __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, + (__v32hi)_mm512_srli_epi16(__A, (unsigned int)__B), + (__v32hi)_mm512_setzero_si512()); +} + +#define _mm512_bsrli_epi128(a, imm) \ + ((__m512i)__builtin_ia32_psrldqi512_byteshift((__v8di)(__m512i)(a), (int)(imm))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mov_epi16 (__m512i __W, __mmask32 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_selectw_512 ((__mmask32) __U, + (__v32hi) __A, + (__v32hi) __W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mov_epi16 (__mmask32 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_selectw_512 ((__mmask32) __U, + (__v32hi) __A, + (__v32hi) _mm512_setzero_si512 ()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mov_epi8 (__m512i __W, __mmask64 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_selectb_512 ((__mmask64) __U, + (__v64qi) __A, + (__v64qi) __W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mov_epi8 (__mmask64 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_selectb_512 ((__mmask64) __U, + (__v64qi) __A, + (__v64qi) _mm512_setzero_si512 ()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_set1_epi8 (__m512i __O, __mmask64 __M, char __A) +{ + return (__m512i) __builtin_ia32_selectb_512(__M, + (__v64qi)_mm512_set1_epi8(__A), + (__v64qi) __O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_set1_epi8 (__mmask64 __M, char __A) +{ + return (__m512i) __builtin_ia32_selectb_512(__M, + (__v64qi) _mm512_set1_epi8(__A), + (__v64qi) _mm512_setzero_si512()); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS +_mm512_kunpackd (__mmask64 __A, __mmask64 __B) +{ + return (__mmask64) __builtin_ia32_kunpckdi ((__mmask64) __A, + (__mmask64) __B); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS +_mm512_kunpackw (__mmask32 __A, __mmask32 __B) +{ + return (__mmask32) __builtin_ia32_kunpcksi ((__mmask32) __A, + (__mmask32) __B); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_loadu_epi16 (void const *__P) +{ + struct __loadu_epi16 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi16*)__P)->__v; +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_loadu_epi16 (__m512i __W, __mmask32 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_loaddquhi512_mask ((const __v32hi *) __P, + (__v32hi) __W, + (__mmask32) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_loadu_epi16 (__mmask32 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_loaddquhi512_mask ((const __v32hi *) __P, + (__v32hi) + _mm512_setzero_si512 (), + (__mmask32) __U); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_loadu_epi8 (void const *__P) +{ + struct __loadu_epi8 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi8*)__P)->__v; +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_loadu_epi8 (__m512i __W, __mmask64 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_loaddquqi512_mask ((const __v64qi *) __P, + (__v64qi) __W, + (__mmask64) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_loadu_epi8 (__mmask64 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_loaddquqi512_mask ((const __v64qi *) __P, + (__v64qi) + _mm512_setzero_si512 (), + (__mmask64) __U); +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_storeu_epi16 (void *__P, __m512i __A) +{ + struct __storeu_epi16 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi16*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_storeu_epi16 (void *__P, __mmask32 __U, __m512i __A) +{ + __builtin_ia32_storedquhi512_mask ((__v32hi *) __P, + (__v32hi) __A, + (__mmask32) __U); +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_storeu_epi8 (void *__P, __m512i __A) +{ + struct __storeu_epi8 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi8*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_storeu_epi8 (void *__P, __mmask64 __U, __m512i __A) +{ + __builtin_ia32_storedquqi512_mask ((__v64qi *) __P, + (__v64qi) __A, + (__mmask64) __U); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 +_mm512_test_epi8_mask (__m512i __A, __m512i __B) +{ + return _mm512_cmpneq_epi8_mask (_mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 +_mm512_mask_test_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_cmpneq_epi8_mask (__U, _mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 +_mm512_test_epi16_mask (__m512i __A, __m512i __B) +{ + return _mm512_cmpneq_epi16_mask (_mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 +_mm512_mask_test_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_cmpneq_epi16_mask (__U, _mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 +_mm512_testn_epi8_mask (__m512i __A, __m512i __B) +{ + return _mm512_cmpeq_epi8_mask (_mm512_and_epi32 (__A, __B), _mm512_setzero_si512()); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 +_mm512_mask_testn_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_cmpeq_epi8_mask (__U, _mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 +_mm512_testn_epi16_mask (__m512i __A, __m512i __B) +{ + return _mm512_cmpeq_epi16_mask (_mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 +_mm512_mask_testn_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_cmpeq_epi16_mask (__U, _mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 +_mm512_movepi8_mask (__m512i __A) +{ + return (__mmask64) __builtin_ia32_cvtb2mask512 ((__v64qi) __A); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 +_mm512_movepi16_mask (__m512i __A) +{ + return (__mmask32) __builtin_ia32_cvtw2mask512 ((__v32hi) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_movm_epi8 (__mmask64 __A) +{ + return (__m512i) __builtin_ia32_cvtmask2b512 (__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_movm_epi16 (__mmask32 __A) +{ + return (__m512i) __builtin_ia32_cvtmask2w512 (__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcastb_epi8 (__m128i __A) +{ + return (__m512i)__builtin_shufflevector((__v16qi) __A, (__v16qi) __A, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcastb_epi8 (__m512i __O, __mmask64 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectb_512(__M, + (__v64qi) _mm512_broadcastb_epi8(__A), + (__v64qi) __O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcastb_epi8 (__mmask64 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectb_512(__M, + (__v64qi) _mm512_broadcastb_epi8(__A), + (__v64qi) _mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_set1_epi16 (__m512i __O, __mmask32 __M, short __A) +{ + return (__m512i) __builtin_ia32_selectw_512(__M, + (__v32hi) _mm512_set1_epi16(__A), + (__v32hi) __O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_set1_epi16 (__mmask32 __M, short __A) +{ + return (__m512i) __builtin_ia32_selectw_512(__M, + (__v32hi) _mm512_set1_epi16(__A), + (__v32hi) _mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcastw_epi16 (__m128i __A) +{ + return (__m512i)__builtin_shufflevector((__v8hi) __A, (__v8hi) __A, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcastw_epi16 (__m512i __O, __mmask32 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectw_512(__M, + (__v32hi) _mm512_broadcastw_epi16(__A), + (__v32hi) __O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcastw_epi16 (__mmask32 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectw_512(__M, + (__v32hi) _mm512_broadcastw_epi16(__A), + (__v32hi) _mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_permutexvar_epi16 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_permvarhi512((__v32hi)__B, (__v32hi)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutexvar_epi16 (__mmask32 __M, __m512i __A, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_permutexvar_epi16(__A, __B), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_permutexvar_epi16 (__m512i __W, __mmask32 __M, __m512i __A, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, + (__v32hi)_mm512_permutexvar_epi16(__A, __B), + (__v32hi)__W); +} + +#define _mm512_alignr_epi8(A, B, N) \ + ((__m512i)__builtin_ia32_palignr512((__v64qi)(__m512i)(A), \ + (__v64qi)(__m512i)(B), (int)(N))) + +#define _mm512_mask_alignr_epi8(W, U, A, B, N) \ + ((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \ + (__v64qi)_mm512_alignr_epi8((A), (B), (int)(N)), \ + (__v64qi)(__m512i)(W))) + +#define _mm512_maskz_alignr_epi8(U, A, B, N) \ + ((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \ + (__v64qi)_mm512_alignr_epi8((A), (B), (int)(N)), \ + (__v64qi)(__m512i)_mm512_setzero_si512())) + +#define _mm512_dbsad_epu8(A, B, imm) \ + ((__m512i)__builtin_ia32_dbpsadbw512((__v64qi)(__m512i)(A), \ + (__v64qi)(__m512i)(B), (int)(imm))) + +#define _mm512_mask_dbsad_epu8(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_dbsad_epu8((A), (B), (imm)), \ + (__v32hi)(__m512i)(W))) + +#define _mm512_maskz_dbsad_epu8(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_dbsad_epu8((A), (B), (imm)), \ + (__v32hi)_mm512_setzero_si512())) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sad_epu8 (__m512i __A, __m512i __B) +{ + return (__m512i) __builtin_ia32_psadbw512 ((__v64qi) __A, + (__v64qi) __B); +} + +#undef __DEFAULT_FN_ATTRS512 +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d4ff14d56ef69daf26a99bd1be1db9a821eae913 GIT binary patch literal 140628 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 directly; include instead." +#endif + +#ifndef __AVX512CDINTRIN_H +#define __AVX512CDINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512cd"), __min_vector_width__(512))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_conflict_epi64 (__m512i __A) +{ + return (__m512i) __builtin_ia32_vpconflictdi_512 ((__v8di) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_conflict_epi64 (__m512i __W, __mmask8 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_conflict_epi64(__A), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_conflict_epi64 (__mmask8 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_conflict_epi64(__A), + (__v8di)_mm512_setzero_si512 ()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_conflict_epi32 (__m512i __A) +{ + return (__m512i) __builtin_ia32_vpconflictsi_512 ((__v16si) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_conflict_epi32 (__m512i __W, __mmask16 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_conflict_epi32(__A), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_conflict_epi32 (__mmask16 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_conflict_epi32(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_lzcnt_epi32 (__m512i __A) +{ + return (__m512i) __builtin_ia32_vplzcntd_512 ((__v16si) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_lzcnt_epi32 (__m512i __W, __mmask16 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_lzcnt_epi32(__A), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_lzcnt_epi32 (__mmask16 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_lzcnt_epi32(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_lzcnt_epi64 (__m512i __A) +{ + return (__m512i) __builtin_ia32_vplzcntq_512 ((__v8di) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_lzcnt_epi64 (__m512i __W, __mmask8 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_lzcnt_epi64(__A), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_lzcnt_epi64 (__mmask8 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_lzcnt_epi64(__A), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_broadcastmb_epi64 (__mmask8 __A) +{ + return (__m512i) _mm512_set1_epi64((long long) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_broadcastmw_epi32 (__mmask16 __A) +{ + return (__m512i) _mm512_set1_epi32((int) __A); + +} + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..501de44e3f8b2a5ba0b72217a88192b250cbb8ac GIT binary patch literal 17407 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 kTD!dV0!$^7lNh3Bpa%Oo9{tANc)HkpKVy literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h new file mode 100644 index 00000000..3ba0a0cf --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h @@ -0,0 +1,1377 @@ +/*===---- avx512dqintrin.h - AVX512DQ intrinsics ---------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX512DQINTRIN_H +#define __AVX512DQINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512dq"), __min_vector_width__(512))) +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512dq"))) + +static __inline __mmask8 __DEFAULT_FN_ATTRS +_knot_mask8(__mmask8 __M) +{ + return __builtin_ia32_knotqi(__M); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS +_kand_mask8(__mmask8 __A, __mmask8 __B) +{ + return (__mmask8)__builtin_ia32_kandqi((__mmask8)__A, (__mmask8)__B); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS +_kandn_mask8(__mmask8 __A, __mmask8 __B) +{ + return (__mmask8)__builtin_ia32_kandnqi((__mmask8)__A, (__mmask8)__B); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS +_kor_mask8(__mmask8 __A, __mmask8 __B) +{ + return (__mmask8)__builtin_ia32_korqi((__mmask8)__A, (__mmask8)__B); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS +_kxnor_mask8(__mmask8 __A, __mmask8 __B) +{ + return (__mmask8)__builtin_ia32_kxnorqi((__mmask8)__A, (__mmask8)__B); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS +_kxor_mask8(__mmask8 __A, __mmask8 __B) +{ + return (__mmask8)__builtin_ia32_kxorqi((__mmask8)__A, (__mmask8)__B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortestc_mask8_u8(__mmask8 __A, __mmask8 __B) +{ + return (unsigned char)__builtin_ia32_kortestcqi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortestz_mask8_u8(__mmask8 __A, __mmask8 __B) +{ + return (unsigned char)__builtin_ia32_kortestzqi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortest_mask8_u8(__mmask8 __A, __mmask8 __B, unsigned char *__C) { + *__C = (unsigned char)__builtin_ia32_kortestcqi(__A, __B); + return (unsigned char)__builtin_ia32_kortestzqi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktestc_mask8_u8(__mmask8 __A, __mmask8 __B) +{ + return (unsigned char)__builtin_ia32_ktestcqi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktestz_mask8_u8(__mmask8 __A, __mmask8 __B) +{ + return (unsigned char)__builtin_ia32_ktestzqi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktest_mask8_u8(__mmask8 __A, __mmask8 __B, unsigned char *__C) { + *__C = (unsigned char)__builtin_ia32_ktestcqi(__A, __B); + return (unsigned char)__builtin_ia32_ktestzqi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktestc_mask16_u8(__mmask16 __A, __mmask16 __B) +{ + return (unsigned char)__builtin_ia32_ktestchi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktestz_mask16_u8(__mmask16 __A, __mmask16 __B) +{ + return (unsigned char)__builtin_ia32_ktestzhi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_ktest_mask16_u8(__mmask16 __A, __mmask16 __B, unsigned char *__C) { + *__C = (unsigned char)__builtin_ia32_ktestchi(__A, __B); + return (unsigned char)__builtin_ia32_ktestzhi(__A, __B); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS +_kadd_mask8(__mmask8 __A, __mmask8 __B) +{ + return (__mmask8)__builtin_ia32_kaddqi((__mmask8)__A, (__mmask8)__B); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_kadd_mask16(__mmask16 __A, __mmask16 __B) +{ + return (__mmask16)__builtin_ia32_kaddhi((__mmask16)__A, (__mmask16)__B); +} + +#define _kshiftli_mask8(A, I) \ + ((__mmask8)__builtin_ia32_kshiftliqi((__mmask8)(A), (unsigned int)(I))) + +#define _kshiftri_mask8(A, I) \ + ((__mmask8)__builtin_ia32_kshiftriqi((__mmask8)(A), (unsigned int)(I))) + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_cvtmask8_u32(__mmask8 __A) { + return (unsigned int)__builtin_ia32_kmovb((__mmask8)__A); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS +_cvtu32_mask8(unsigned int __A) { + return (__mmask8)__builtin_ia32_kmovb((__mmask8)__A); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS +_load_mask8(__mmask8 *__A) { + return (__mmask8)__builtin_ia32_kmovb(*(__mmask8 *)__A); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_store_mask8(__mmask8 *__A, __mmask8 __B) { + *(__mmask8 *)__A = __builtin_ia32_kmovb((__mmask8)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mullo_epi64 (__m512i __A, __m512i __B) { + return (__m512i) ((__v8du) __A * (__v8du) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mullo_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_mullo_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mullo_epi64(__mmask8 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_mullo_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_xor_pd(__m512d __A, __m512d __B) { + return (__m512d)((__v8du)__A ^ (__v8du)__B); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_xor_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_xor_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_xor_pd(__mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_xor_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_xor_ps (__m512 __A, __m512 __B) { + return (__m512)((__v16su)__A ^ (__v16su)__B); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_xor_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_xor_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_xor_ps(__mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_xor_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_or_pd(__m512d __A, __m512d __B) { + return (__m512d)((__v8du)__A | (__v8du)__B); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_or_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_or_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_or_pd(__mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_or_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_or_ps(__m512 __A, __m512 __B) { + return (__m512)((__v16su)__A | (__v16su)__B); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_or_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_or_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_or_ps(__mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_or_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_and_pd(__m512d __A, __m512d __B) { + return (__m512d)((__v8du)__A & (__v8du)__B); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_and_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_and_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_and_pd(__mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_and_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_and_ps(__m512 __A, __m512 __B) { + return (__m512)((__v16su)__A & (__v16su)__B); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_and_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_and_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_and_ps(__mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_and_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_andnot_pd(__m512d __A, __m512d __B) { + return (__m512d)(~(__v8du)__A & (__v8du)__B); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_andnot_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_andnot_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_andnot_pd(__mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_andnot_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_andnot_ps(__m512 __A, __m512 __B) { + return (__m512)(~(__v16su)__A & (__v16su)__B); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_andnot_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_andnot_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_andnot_ps(__mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_andnot_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtpd_epi64 (__m512d __A) { + return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A) { + return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A, + (__v8di) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtpd_epi64 (__mmask8 __U, __m512d __A) { + return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundpd_epi64(A, R) \ + ((__m512i)__builtin_ia32_cvtpd2qq512_mask((__v8df)(__m512d)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundpd_epi64(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvtpd2qq512_mask((__v8df)(__m512d)(A), \ + (__v8di)(__m512i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundpd_epi64(U, A, R) \ + ((__m512i)__builtin_ia32_cvtpd2qq512_mask((__v8df)(__m512d)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtpd_epu64 (__m512d __A) { + return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A) { + return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A, + (__v8di) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtpd_epu64 (__mmask8 __U, __m512d __A) { + return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundpd_epu64(A, R) \ + ((__m512i)__builtin_ia32_cvtpd2uqq512_mask((__v8df)(__m512d)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundpd_epu64(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvtpd2uqq512_mask((__v8df)(__m512d)(A), \ + (__v8di)(__m512i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundpd_epu64(U, A, R) \ + ((__m512i)__builtin_ia32_cvtpd2uqq512_mask((__v8df)(__m512d)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtps_epi64 (__m256 __A) { + return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtps_epi64 (__m512i __W, __mmask8 __U, __m256 __A) { + return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A, + (__v8di) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtps_epi64 (__mmask8 __U, __m256 __A) { + return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundps_epi64(A, R) \ + ((__m512i)__builtin_ia32_cvtps2qq512_mask((__v8sf)(__m256)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundps_epi64(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvtps2qq512_mask((__v8sf)(__m256)(A), \ + (__v8di)(__m512i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundps_epi64(U, A, R) \ + ((__m512i)__builtin_ia32_cvtps2qq512_mask((__v8sf)(__m256)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtps_epu64 (__m256 __A) { + return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtps_epu64 (__m512i __W, __mmask8 __U, __m256 __A) { + return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A, + (__v8di) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtps_epu64 (__mmask8 __U, __m256 __A) { + return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundps_epu64(A, R) \ + ((__m512i)__builtin_ia32_cvtps2uqq512_mask((__v8sf)(__m256)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundps_epu64(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvtps2uqq512_mask((__v8sf)(__m256)(A), \ + (__v8di)(__m512i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundps_epu64(U, A, R) \ + ((__m512i)__builtin_ia32_cvtps2uqq512_mask((__v8sf)(__m256)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_cvtepi64_pd (__m512i __A) { + return (__m512d)__builtin_convertvector((__v8di)__A, __v8df); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_pd (__m512d __W, __mmask8 __U, __m512i __A) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_cvtepi64_pd(__A), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi64_pd (__mmask8 __U, __m512i __A) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_cvtepi64_pd(__A), + (__v8df)_mm512_setzero_pd()); +} + +#define _mm512_cvt_roundepi64_pd(A, R) \ + ((__m512d)__builtin_ia32_cvtqq2pd512_mask((__v8di)(__m512i)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundepi64_pd(W, U, A, R) \ + ((__m512d)__builtin_ia32_cvtqq2pd512_mask((__v8di)(__m512i)(A), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepi64_pd(U, A, R) \ + ((__m512d)__builtin_ia32_cvtqq2pd512_mask((__v8di)(__m512i)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_cvtepi64_ps (__m512i __A) { + return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A, + (__v8sf) _mm256_setzero_ps(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_ps (__m256 __W, __mmask8 __U, __m512i __A) { + return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A, + (__v8sf) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi64_ps (__mmask8 __U, __m512i __A) { + return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A, + (__v8sf) _mm256_setzero_ps(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepi64_ps(A, R) \ + ((__m256)__builtin_ia32_cvtqq2ps512_mask((__v8di)(__m512i)(A), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundepi64_ps(W, U, A, R) \ + ((__m256)__builtin_ia32_cvtqq2ps512_mask((__v8di)(__m512i)(A), \ + (__v8sf)(__m256)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm512_maskz_cvt_roundepi64_ps(U, A, R) \ + ((__m256)__builtin_ia32_cvtqq2ps512_mask((__v8di)(__m512i)(A), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttpd_epi64 (__m512d __A) { + return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A) { + return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A, + (__v8di) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttpd_epi64 (__mmask8 __U, __m512d __A) { + return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundpd_epi64(A, R) \ + ((__m512i)__builtin_ia32_cvttpd2qq512_mask((__v8df)(__m512d)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvtt_roundpd_epi64(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvttpd2qq512_mask((__v8df)(__m512d)(A), \ + (__v8di)(__m512i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundpd_epi64(U, A, R) \ + ((__m512i)__builtin_ia32_cvttpd2qq512_mask((__v8df)(__m512d)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttpd_epu64 (__m512d __A) { + return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A) { + return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A, + (__v8di) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttpd_epu64 (__mmask8 __U, __m512d __A) { + return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundpd_epu64(A, R) \ + ((__m512i)__builtin_ia32_cvttpd2uqq512_mask((__v8df)(__m512d)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvtt_roundpd_epu64(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvttpd2uqq512_mask((__v8df)(__m512d)(A), \ + (__v8di)(__m512i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundpd_epu64(U, A, R) \ + ((__m512i)__builtin_ia32_cvttpd2uqq512_mask((__v8df)(__m512d)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttps_epi64 (__m256 __A) { + return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttps_epi64 (__m512i __W, __mmask8 __U, __m256 __A) { + return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A, + (__v8di) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttps_epi64 (__mmask8 __U, __m256 __A) { + return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundps_epi64(A, R) \ + ((__m512i)__builtin_ia32_cvttps2qq512_mask((__v8sf)(__m256)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvtt_roundps_epi64(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvttps2qq512_mask((__v8sf)(__m256)(A), \ + (__v8di)(__m512i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundps_epi64(U, A, R) \ + ((__m512i)__builtin_ia32_cvttps2qq512_mask((__v8sf)(__m256)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttps_epu64 (__m256 __A) { + return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttps_epu64 (__m512i __W, __mmask8 __U, __m256 __A) { + return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A, + (__v8di) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttps_epu64 (__mmask8 __U, __m256 __A) { + return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundps_epu64(A, R) \ + ((__m512i)__builtin_ia32_cvttps2uqq512_mask((__v8sf)(__m256)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvtt_roundps_epu64(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvttps2uqq512_mask((__v8sf)(__m256)(A), \ + (__v8di)(__m512i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundps_epu64(U, A, R) \ + ((__m512i)__builtin_ia32_cvttps2uqq512_mask((__v8sf)(__m256)(A), \ + (__v8di)_mm512_setzero_si512(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_cvtepu64_pd (__m512i __A) { + return (__m512d)__builtin_convertvector((__v8du)__A, __v8df); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu64_pd (__m512d __W, __mmask8 __U, __m512i __A) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_cvtepu64_pd(__A), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu64_pd (__mmask8 __U, __m512i __A) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_cvtepu64_pd(__A), + (__v8df)_mm512_setzero_pd()); +} + +#define _mm512_cvt_roundepu64_pd(A, R) \ + ((__m512d)__builtin_ia32_cvtuqq2pd512_mask((__v8di)(__m512i)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundepu64_pd(W, U, A, R) \ + ((__m512d)__builtin_ia32_cvtuqq2pd512_mask((__v8di)(__m512i)(A), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_maskz_cvt_roundepu64_pd(U, A, R) \ + ((__m512d)__builtin_ia32_cvtuqq2pd512_mask((__v8di)(__m512i)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_cvtepu64_ps (__m512i __A) { + return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A, + (__v8sf) _mm256_setzero_ps(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu64_ps (__m256 __W, __mmask8 __U, __m512i __A) { + return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A, + (__v8sf) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu64_ps (__mmask8 __U, __m512i __A) { + return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A, + (__v8sf) _mm256_setzero_ps(), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepu64_ps(A, R) \ + ((__m256)__builtin_ia32_cvtuqq2ps512_mask((__v8di)(__m512i)(A), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundepu64_ps(W, U, A, R) \ + ((__m256)__builtin_ia32_cvtuqq2ps512_mask((__v8di)(__m512i)(A), \ + (__v8sf)(__m256)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm512_maskz_cvt_roundepu64_ps(U, A, R) \ + ((__m256)__builtin_ia32_cvtuqq2ps512_mask((__v8di)(__m512i)(A), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_range_pd(A, B, C) \ + ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(C), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_range_pd(W, U, A, B, C) \ + ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(C), \ + (__v8df)(__m512d)(W), (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_range_pd(U, A, B, C) \ + ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(C), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_range_round_pd(A, B, C, R) \ + ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(C), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_range_round_pd(W, U, A, B, C, R) \ + ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(C), \ + (__v8df)(__m512d)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm512_maskz_range_round_pd(U, A, B, C, R) \ + ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(C), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_range_ps(A, B, C) \ + ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(C), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_range_ps(W, U, A, B, C) \ + ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(C), \ + (__v16sf)(__m512)(W), (__mmask16)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_range_ps(U, A, B, C) \ + ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(C), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_range_round_ps(A, B, C, R) \ + ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(C), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_range_round_ps(W, U, A, B, C, R) \ + ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(C), \ + (__v16sf)(__m512)(W), (__mmask16)(U), \ + (int)(R))) + +#define _mm512_maskz_range_round_ps(U, A, B, C, R) \ + ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(C), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), (int)(R))) + +#define _mm_range_round_ss(A, B, C, R) \ + ((__m128)__builtin_ia32_rangess128_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8) -1, (int)(C),\ + (int)(R))) + +#define _mm_range_ss(A ,B , C) _mm_range_round_ss(A, B, C ,_MM_FROUND_CUR_DIRECTION) + +#define _mm_mask_range_round_ss(W, U, A, B, C, R) \ + ((__m128)__builtin_ia32_rangess128_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W),\ + (__mmask8)(U), (int)(C),\ + (int)(R))) + +#define _mm_mask_range_ss(W , U, A, B, C) _mm_mask_range_round_ss(W, U, A, B, C , _MM_FROUND_CUR_DIRECTION) + +#define _mm_maskz_range_round_ss(U, A, B, C, R) \ + ((__m128)__builtin_ia32_rangess128_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(C),\ + (int)(R))) + +#define _mm_maskz_range_ss(U, A ,B , C) _mm_maskz_range_round_ss(U, A, B, C ,_MM_FROUND_CUR_DIRECTION) + +#define _mm_range_round_sd(A, B, C, R) \ + ((__m128d)__builtin_ia32_rangesd128_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8) -1, (int)(C),\ + (int)(R))) + +#define _mm_range_sd(A ,B , C) _mm_range_round_sd(A, B, C ,_MM_FROUND_CUR_DIRECTION) + +#define _mm_mask_range_round_sd(W, U, A, B, C, R) \ + ((__m128d)__builtin_ia32_rangesd128_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W),\ + (__mmask8)(U), (int)(C),\ + (int)(R))) + +#define _mm_mask_range_sd(W, U, A, B, C) _mm_mask_range_round_sd(W, U, A, B, C ,_MM_FROUND_CUR_DIRECTION) + +#define _mm_maskz_range_round_sd(U, A, B, C, R) \ + ((__m128d)__builtin_ia32_rangesd128_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(C),\ + (int)(R))) + +#define _mm_maskz_range_sd(U, A, B, C) _mm_maskz_range_round_sd(U, A, B, C ,_MM_FROUND_CUR_DIRECTION) + +#define _mm512_reduce_pd(A, B) \ + ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_reduce_pd(W, U, A, B) \ + ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_reduce_pd(U, A, B) \ + ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_reduce_ps(A, B) \ + ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_reduce_ps(W, U, A, B) \ + ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_reduce_ps(U, A, B) \ + ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_reduce_round_pd(A, B, R) \ + ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_reduce_round_pd(W, U, A, B, R) \ + ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_reduce_round_pd(U, A, B, R) \ + ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_reduce_round_ps(A, B, R) \ + ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_reduce_round_ps(W, U, A, B, R) \ + ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_reduce_round_ps(U, A, B, R) \ + ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), (int)(R))) + +#define _mm_reduce_ss(A, B, C) \ + ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), (__mmask8)-1, \ + (int)(C), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_reduce_ss(W, U, A, B, C) \ + ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(C), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_reduce_ss(U, A, B, C) \ + ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(C), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_reduce_round_ss(A, B, C, R) \ + ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), (__mmask8)-1, \ + (int)(C), (int)(R))) + +#define _mm_mask_reduce_round_ss(W, U, A, B, C, R) \ + ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(C), (int)(R))) + +#define _mm_maskz_reduce_round_ss(U, A, B, C, R) \ + ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(C), (int)(R))) + +#define _mm_reduce_sd(A, B, C) \ + ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(C), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_reduce_sd(W, U, A, B, C) \ + ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), (__mmask8)(U), \ + (int)(C), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_reduce_sd(U, A, B, C) \ + ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(C), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_reduce_round_sd(A, B, C, R) \ + ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(C), (int)(R))) + +#define _mm_mask_reduce_round_sd(W, U, A, B, C, R) \ + ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), (__mmask8)(U), \ + (int)(C), (int)(R))) + +#define _mm_maskz_reduce_round_sd(U, A, B, C, R) \ + ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(C), (int)(R))) + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS512 +_mm512_movepi32_mask (__m512i __A) +{ + return (__mmask16) __builtin_ia32_cvtd2mask512 ((__v16si) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_movm_epi32 (__mmask16 __A) +{ + return (__m512i) __builtin_ia32_cvtmask2d512 (__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_movm_epi64 (__mmask8 __A) +{ + return (__m512i) __builtin_ia32_cvtmask2q512 (__A); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS512 +_mm512_movepi64_mask (__m512i __A) +{ + return (__mmask8) __builtin_ia32_cvtq2mask512 ((__v8di) __A); +} + + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_broadcast_f32x2 (__m128 __A) +{ + return (__m512)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A, + 0, 1, 0, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 1, 0, 1); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_f32x2 (__m512 __O, __mmask16 __M, __m128 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, + (__v16sf)_mm512_broadcast_f32x2(__A), + (__v16sf)__O); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_f32x2 (__mmask16 __M, __m128 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, + (__v16sf)_mm512_broadcast_f32x2(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_broadcast_f32x8(__m256 __A) +{ + return (__m512)__builtin_shufflevector((__v8sf)__A, (__v8sf)__A, + 0, 1, 2, 3, 4, 5, 6, 7, + 0, 1, 2, 3, 4, 5, 6, 7); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_f32x8(__m512 __O, __mmask16 __M, __m256 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, + (__v16sf)_mm512_broadcast_f32x8(__A), + (__v16sf)__O); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_f32x8(__mmask16 __M, __m256 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, + (__v16sf)_mm512_broadcast_f32x8(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_broadcast_f64x2(__m128d __A) +{ + return (__m512d)__builtin_shufflevector((__v2df)__A, (__v2df)__A, + 0, 1, 0, 1, 0, 1, 0, 1); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_f64x2(__m512d __O, __mmask8 __M, __m128d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__M, + (__v8df)_mm512_broadcast_f64x2(__A), + (__v8df)__O); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_f64x2(__mmask8 __M, __m128d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__M, + (__v8df)_mm512_broadcast_f64x2(__A), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcast_i32x2 (__m128i __A) +{ + return (__m512i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, + 0, 1, 0, 1, 0, 1, 0, 1, + 0, 1, 0, 1, 0, 1, 0, 1); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_i32x2 (__m512i __O, __mmask16 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_broadcast_i32x2(__A), + (__v16si)__O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_i32x2 (__mmask16 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_broadcast_i32x2(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcast_i32x8(__m256i __A) +{ + return (__m512i)__builtin_shufflevector((__v8si)__A, (__v8si)__A, + 0, 1, 2, 3, 4, 5, 6, 7, + 0, 1, 2, 3, 4, 5, 6, 7); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_i32x8(__m512i __O, __mmask16 __M, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_broadcast_i32x8(__A), + (__v16si)__O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_i32x8(__mmask16 __M, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_broadcast_i32x8(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcast_i64x2(__m128i __A) +{ + return (__m512i)__builtin_shufflevector((__v2di)__A, (__v2di)__A, + 0, 1, 0, 1, 0, 1, 0, 1); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_i64x2(__m512i __O, __mmask8 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_broadcast_i64x2(__A), + (__v8di)__O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_i64x2(__mmask8 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_broadcast_i64x2(__A), + (__v8di)_mm512_setzero_si512()); +} + +#define _mm512_extractf32x8_ps(A, imm) \ + ((__m256)__builtin_ia32_extractf32x8_mask((__v16sf)(__m512)(A), (int)(imm), \ + (__v8sf)_mm256_undefined_ps(), \ + (__mmask8)-1)) + +#define _mm512_mask_extractf32x8_ps(W, U, A, imm) \ + ((__m256)__builtin_ia32_extractf32x8_mask((__v16sf)(__m512)(A), (int)(imm), \ + (__v8sf)(__m256)(W), \ + (__mmask8)(U))) + +#define _mm512_maskz_extractf32x8_ps(U, A, imm) \ + ((__m256)__builtin_ia32_extractf32x8_mask((__v16sf)(__m512)(A), (int)(imm), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)(U))) + +#define _mm512_extractf64x2_pd(A, imm) \ + ((__m128d)__builtin_ia32_extractf64x2_512_mask((__v8df)(__m512d)(A), \ + (int)(imm), \ + (__v2df)_mm_undefined_pd(), \ + (__mmask8)-1)) + +#define _mm512_mask_extractf64x2_pd(W, U, A, imm) \ + ((__m128d)__builtin_ia32_extractf64x2_512_mask((__v8df)(__m512d)(A), \ + (int)(imm), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U))) + +#define _mm512_maskz_extractf64x2_pd(U, A, imm) \ + ((__m128d)__builtin_ia32_extractf64x2_512_mask((__v8df)(__m512d)(A), \ + (int)(imm), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm512_extracti32x8_epi32(A, imm) \ + ((__m256i)__builtin_ia32_extracti32x8_mask((__v16si)(__m512i)(A), (int)(imm), \ + (__v8si)_mm256_undefined_si256(), \ + (__mmask8)-1)) + +#define _mm512_mask_extracti32x8_epi32(W, U, A, imm) \ + ((__m256i)__builtin_ia32_extracti32x8_mask((__v16si)(__m512i)(A), (int)(imm), \ + (__v8si)(__m256i)(W), \ + (__mmask8)(U))) + +#define _mm512_maskz_extracti32x8_epi32(U, A, imm) \ + ((__m256i)__builtin_ia32_extracti32x8_mask((__v16si)(__m512i)(A), (int)(imm), \ + (__v8si)_mm256_setzero_si256(), \ + (__mmask8)(U))) + +#define _mm512_extracti64x2_epi64(A, imm) \ + ((__m128i)__builtin_ia32_extracti64x2_512_mask((__v8di)(__m512i)(A), \ + (int)(imm), \ + (__v2di)_mm_undefined_si128(), \ + (__mmask8)-1)) + +#define _mm512_mask_extracti64x2_epi64(W, U, A, imm) \ + ((__m128i)__builtin_ia32_extracti64x2_512_mask((__v8di)(__m512i)(A), \ + (int)(imm), \ + (__v2di)(__m128i)(W), \ + (__mmask8)(U))) + +#define _mm512_maskz_extracti64x2_epi64(U, A, imm) \ + ((__m128i)__builtin_ia32_extracti64x2_512_mask((__v8di)(__m512i)(A), \ + (int)(imm), \ + (__v2di)_mm_setzero_si128(), \ + (__mmask8)(U))) + +#define _mm512_insertf32x8(A, B, imm) \ + ((__m512)__builtin_ia32_insertf32x8((__v16sf)(__m512)(A), \ + (__v8sf)(__m256)(B), (int)(imm))) + +#define _mm512_mask_insertf32x8(W, U, A, B, imm) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_insertf32x8((A), (B), (imm)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_insertf32x8(U, A, B, imm) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_insertf32x8((A), (B), (imm)), \ + (__v16sf)_mm512_setzero_ps())) + +#define _mm512_insertf64x2(A, B, imm) \ + ((__m512d)__builtin_ia32_insertf64x2_512((__v8df)(__m512d)(A), \ + (__v2df)(__m128d)(B), (int)(imm))) + +#define _mm512_mask_insertf64x2(W, U, A, B, imm) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_insertf64x2((A), (B), (imm)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_insertf64x2(U, A, B, imm) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_insertf64x2((A), (B), (imm)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_inserti32x8(A, B, imm) \ + ((__m512i)__builtin_ia32_inserti32x8((__v16si)(__m512i)(A), \ + (__v8si)(__m256i)(B), (int)(imm))) + +#define _mm512_mask_inserti32x8(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_inserti32x8((A), (B), (imm)), \ + (__v16si)(__m512i)(W))) + +#define _mm512_maskz_inserti32x8(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_inserti32x8((A), (B), (imm)), \ + (__v16si)_mm512_setzero_si512())) + +#define _mm512_inserti64x2(A, B, imm) \ + ((__m512i)__builtin_ia32_inserti64x2_512((__v8di)(__m512i)(A), \ + (__v2di)(__m128i)(B), (int)(imm))) + +#define _mm512_mask_inserti64x2(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_inserti64x2((A), (B), (imm)), \ + (__v8di)(__m512i)(W))) + +#define _mm512_maskz_inserti64x2(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_inserti64x2((A), (B), (imm)), \ + (__v8di)_mm512_setzero_si512())) + +#define _mm512_mask_fpclass_ps_mask(U, A, imm) \ + ((__mmask16)__builtin_ia32_fpclassps512_mask((__v16sf)(__m512)(A), \ + (int)(imm), (__mmask16)(U))) + +#define _mm512_fpclass_ps_mask(A, imm) \ + ((__mmask16)__builtin_ia32_fpclassps512_mask((__v16sf)(__m512)(A), \ + (int)(imm), (__mmask16)-1)) + +#define _mm512_mask_fpclass_pd_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclasspd512_mask((__v8df)(__m512d)(A), (int)(imm), \ + (__mmask8)(U))) + +#define _mm512_fpclass_pd_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclasspd512_mask((__v8df)(__m512d)(A), (int)(imm), \ + (__mmask8)-1)) + +#define _mm_fpclass_sd_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclasssd_mask((__v2df)(__m128d)(A), (int)(imm), \ + (__mmask8)-1)) + +#define _mm_mask_fpclass_sd_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclasssd_mask((__v2df)(__m128d)(A), (int)(imm), \ + (__mmask8)(U))) + +#define _mm_fpclass_ss_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclassss_mask((__v4sf)(__m128)(A), (int)(imm), \ + (__mmask8)-1)) + +#define _mm_mask_fpclass_ss_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclassss_mask((__v4sf)(__m128)(A), (int)(imm), \ + (__mmask8)(U))) + +#undef __DEFAULT_FN_ATTRS512 +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..38f5ddc03f2c711e83b7d0f9202e64e9cb25c3c1 GIT binary patch literal 90143 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 D5E#*> literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h new file mode 100644 index 00000000..1c5a2d2d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h @@ -0,0 +1,271 @@ +/*===---- avx512erintrin.h - AVX512ER intrinsics ---------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX512ERINTRIN_H +#define __AVX512ERINTRIN_H + +/* exp2a23 */ +#define _mm512_exp2a23_round_pd(A, R) \ + ((__m512d)__builtin_ia32_exp2pd_mask((__v8df)(__m512d)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_exp2a23_round_pd(S, M, A, R) \ + ((__m512d)__builtin_ia32_exp2pd_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(S), (__mmask8)(M), \ + (int)(R))) + +#define _mm512_maskz_exp2a23_round_pd(M, A, R) \ + ((__m512d)__builtin_ia32_exp2pd_mask((__v8df)(__m512d)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(M), (int)(R))) + +#define _mm512_exp2a23_pd(A) \ + _mm512_exp2a23_round_pd((A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_mask_exp2a23_pd(S, M, A) \ + _mm512_mask_exp2a23_round_pd((S), (M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_maskz_exp2a23_pd(M, A) \ + _mm512_maskz_exp2a23_round_pd((M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_exp2a23_round_ps(A, R) \ + ((__m512)__builtin_ia32_exp2ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_exp2a23_round_ps(S, M, A, R) \ + ((__m512)__builtin_ia32_exp2ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(S), (__mmask16)(M), \ + (int)(R))) + +#define _mm512_maskz_exp2a23_round_ps(M, A, R) \ + ((__m512)__builtin_ia32_exp2ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(M), (int)(R))) + +#define _mm512_exp2a23_ps(A) \ + _mm512_exp2a23_round_ps((A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_mask_exp2a23_ps(S, M, A) \ + _mm512_mask_exp2a23_round_ps((S), (M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_maskz_exp2a23_ps(M, A) \ + _mm512_maskz_exp2a23_round_ps((M), (A), _MM_FROUND_CUR_DIRECTION) + +/* rsqrt28 */ +#define _mm512_rsqrt28_round_pd(A, R) \ + ((__m512d)__builtin_ia32_rsqrt28pd_mask((__v8df)(__m512d)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_rsqrt28_round_pd(S, M, A, R) \ + ((__m512d)__builtin_ia32_rsqrt28pd_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(S), (__mmask8)(M), \ + (int)(R))) + +#define _mm512_maskz_rsqrt28_round_pd(M, A, R) \ + ((__m512d)__builtin_ia32_rsqrt28pd_mask((__v8df)(__m512d)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(M), (int)(R))) + +#define _mm512_rsqrt28_pd(A) \ + _mm512_rsqrt28_round_pd((A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_mask_rsqrt28_pd(S, M, A) \ + _mm512_mask_rsqrt28_round_pd((S), (M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_maskz_rsqrt28_pd(M, A) \ + _mm512_maskz_rsqrt28_round_pd((M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_rsqrt28_round_ps(A, R) \ + ((__m512)__builtin_ia32_rsqrt28ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_rsqrt28_round_ps(S, M, A, R) \ + ((__m512)__builtin_ia32_rsqrt28ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(S), (__mmask16)(M), \ + (int)(R))) + +#define _mm512_maskz_rsqrt28_round_ps(M, A, R) \ + ((__m512)__builtin_ia32_rsqrt28ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(M), (int)(R))) + +#define _mm512_rsqrt28_ps(A) \ + _mm512_rsqrt28_round_ps((A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_mask_rsqrt28_ps(S, M, A) \ + _mm512_mask_rsqrt28_round_ps((S), (M), A, _MM_FROUND_CUR_DIRECTION) + +#define _mm512_maskz_rsqrt28_ps(M, A) \ + _mm512_maskz_rsqrt28_round_ps((M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm_rsqrt28_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_rsqrt28ss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_rsqrt28_round_ss(S, M, A, B, R) \ + ((__m128)__builtin_ia32_rsqrt28ss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(S), \ + (__mmask8)(M), (int)(R))) + +#define _mm_maskz_rsqrt28_round_ss(M, A, B, R) \ + ((__m128)__builtin_ia32_rsqrt28ss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(M), (int)(R))) + +#define _mm_rsqrt28_ss(A, B) \ + _mm_rsqrt28_round_ss((A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_mask_rsqrt28_ss(S, M, A, B) \ + _mm_mask_rsqrt28_round_ss((S), (M), (A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_maskz_rsqrt28_ss(M, A, B) \ + _mm_maskz_rsqrt28_round_ss((M), (A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_rsqrt28_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_rsqrt28sd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_rsqrt28_round_sd(S, M, A, B, R) \ + ((__m128d)__builtin_ia32_rsqrt28sd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(S), \ + (__mmask8)(M), (int)(R))) + +#define _mm_maskz_rsqrt28_round_sd(M, A, B, R) \ + ((__m128d)__builtin_ia32_rsqrt28sd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(M), (int)(R))) + +#define _mm_rsqrt28_sd(A, B) \ + _mm_rsqrt28_round_sd((A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_mask_rsqrt28_sd(S, M, A, B) \ + _mm_mask_rsqrt28_round_sd((S), (M), (A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_maskz_rsqrt28_sd(M, A, B) \ + _mm_maskz_rsqrt28_round_sd((M), (A), (B), _MM_FROUND_CUR_DIRECTION) + +/* rcp28 */ +#define _mm512_rcp28_round_pd(A, R) \ + ((__m512d)__builtin_ia32_rcp28pd_mask((__v8df)(__m512d)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_rcp28_round_pd(S, M, A, R) \ + ((__m512d)__builtin_ia32_rcp28pd_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(S), (__mmask8)(M), \ + (int)(R))) + +#define _mm512_maskz_rcp28_round_pd(M, A, R) \ + ((__m512d)__builtin_ia32_rcp28pd_mask((__v8df)(__m512d)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(M), (int)(R))) + +#define _mm512_rcp28_pd(A) \ + _mm512_rcp28_round_pd((A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_mask_rcp28_pd(S, M, A) \ + _mm512_mask_rcp28_round_pd((S), (M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_maskz_rcp28_pd(M, A) \ + _mm512_maskz_rcp28_round_pd((M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_rcp28_round_ps(A, R) \ + ((__m512)__builtin_ia32_rcp28ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_rcp28_round_ps(S, M, A, R) \ + ((__m512)__builtin_ia32_rcp28ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(S), (__mmask16)(M), \ + (int)(R))) + +#define _mm512_maskz_rcp28_round_ps(M, A, R) \ + ((__m512)__builtin_ia32_rcp28ps_mask((__v16sf)(__m512)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(M), (int)(R))) + +#define _mm512_rcp28_ps(A) \ + _mm512_rcp28_round_ps((A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_mask_rcp28_ps(S, M, A) \ + _mm512_mask_rcp28_round_ps((S), (M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_maskz_rcp28_ps(M, A) \ + _mm512_maskz_rcp28_round_ps((M), (A), _MM_FROUND_CUR_DIRECTION) + +#define _mm_rcp28_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_rcp28ss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_rcp28_round_ss(S, M, A, B, R) \ + ((__m128)__builtin_ia32_rcp28ss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(S), \ + (__mmask8)(M), (int)(R))) + +#define _mm_maskz_rcp28_round_ss(M, A, B, R) \ + ((__m128)__builtin_ia32_rcp28ss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(M), (int)(R))) + +#define _mm_rcp28_ss(A, B) \ + _mm_rcp28_round_ss((A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_mask_rcp28_ss(S, M, A, B) \ + _mm_mask_rcp28_round_ss((S), (M), (A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_maskz_rcp28_ss(M, A, B) \ + _mm_maskz_rcp28_round_ss((M), (A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_rcp28_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_rcp28sd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_rcp28_round_sd(S, M, A, B, R) \ + ((__m128d)__builtin_ia32_rcp28sd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(S), \ + (__mmask8)(M), (int)(R))) + +#define _mm_maskz_rcp28_round_sd(M, A, B, R) \ + ((__m128d)__builtin_ia32_rcp28sd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(M), (int)(R))) + +#define _mm_rcp28_sd(A, B) \ + _mm_rcp28_round_sd((A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_mask_rcp28_sd(S, M, A, B) \ + _mm_mask_rcp28_round_sd((S), (M), (A), (B), _MM_FROUND_CUR_DIRECTION) + +#define _mm_maskz_rcp28_sd(M, A, B) \ + _mm_maskz_rcp28_round_sd((M), (A), (B), _MM_FROUND_CUR_DIRECTION) + +#endif /* __AVX512ERINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7fa06df19e54834a81c58f32bb738dac587c45e8 GIT binary patch literal 26837 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 directly; include instead." +#endif + +#ifndef __AVX512FINTRIN_H +#define __AVX512FINTRIN_H + +typedef char __v64qi __attribute__((__vector_size__(64))); +typedef short __v32hi __attribute__((__vector_size__(64))); +typedef double __v8df __attribute__((__vector_size__(64))); +typedef float __v16sf __attribute__((__vector_size__(64))); +typedef long long __v8di __attribute__((__vector_size__(64))); +typedef int __v16si __attribute__((__vector_size__(64))); + +/* Unsigned types */ +typedef unsigned char __v64qu __attribute__((__vector_size__(64))); +typedef unsigned short __v32hu __attribute__((__vector_size__(64))); +typedef unsigned long long __v8du __attribute__((__vector_size__(64))); +typedef unsigned int __v16su __attribute__((__vector_size__(64))); + +/* We need an explicitly signed variant for char. Note that this shouldn't + * appear in the interface though. */ +typedef signed char __v64qs __attribute__((__vector_size__(64))); + +typedef float __m512 __attribute__((__vector_size__(64), __aligned__(64))); +typedef double __m512d __attribute__((__vector_size__(64), __aligned__(64))); +typedef long long __m512i __attribute__((__vector_size__(64), __aligned__(64))); + +typedef float __m512_u __attribute__((__vector_size__(64), __aligned__(1))); +typedef double __m512d_u __attribute__((__vector_size__(64), __aligned__(1))); +typedef long long __m512i_u __attribute__((__vector_size__(64), __aligned__(1))); + +typedef unsigned char __mmask8; +typedef unsigned short __mmask16; + +/* Rounding mode macros. */ +#define _MM_FROUND_TO_NEAREST_INT 0x00 +#define _MM_FROUND_TO_NEG_INF 0x01 +#define _MM_FROUND_TO_POS_INF 0x02 +#define _MM_FROUND_TO_ZERO 0x03 +#define _MM_FROUND_CUR_DIRECTION 0x04 + +/* Constants for integer comparison predicates */ +typedef enum { + _MM_CMPINT_EQ, /* Equal */ + _MM_CMPINT_LT, /* Less than */ + _MM_CMPINT_LE, /* Less than or Equal */ + _MM_CMPINT_UNUSED, + _MM_CMPINT_NE, /* Not Equal */ + _MM_CMPINT_NLT, /* Not Less than */ +#define _MM_CMPINT_GE _MM_CMPINT_NLT /* Greater than or Equal */ + _MM_CMPINT_NLE /* Not Less than or Equal */ +#define _MM_CMPINT_GT _MM_CMPINT_NLE /* Greater than */ +} _MM_CMPINT_ENUM; + +typedef enum +{ + _MM_PERM_AAAA = 0x00, _MM_PERM_AAAB = 0x01, _MM_PERM_AAAC = 0x02, + _MM_PERM_AAAD = 0x03, _MM_PERM_AABA = 0x04, _MM_PERM_AABB = 0x05, + _MM_PERM_AABC = 0x06, _MM_PERM_AABD = 0x07, _MM_PERM_AACA = 0x08, + _MM_PERM_AACB = 0x09, _MM_PERM_AACC = 0x0A, _MM_PERM_AACD = 0x0B, + _MM_PERM_AADA = 0x0C, _MM_PERM_AADB = 0x0D, _MM_PERM_AADC = 0x0E, + _MM_PERM_AADD = 0x0F, _MM_PERM_ABAA = 0x10, _MM_PERM_ABAB = 0x11, + _MM_PERM_ABAC = 0x12, _MM_PERM_ABAD = 0x13, _MM_PERM_ABBA = 0x14, + _MM_PERM_ABBB = 0x15, _MM_PERM_ABBC = 0x16, _MM_PERM_ABBD = 0x17, + _MM_PERM_ABCA = 0x18, _MM_PERM_ABCB = 0x19, _MM_PERM_ABCC = 0x1A, + _MM_PERM_ABCD = 0x1B, _MM_PERM_ABDA = 0x1C, _MM_PERM_ABDB = 0x1D, + _MM_PERM_ABDC = 0x1E, _MM_PERM_ABDD = 0x1F, _MM_PERM_ACAA = 0x20, + _MM_PERM_ACAB = 0x21, _MM_PERM_ACAC = 0x22, _MM_PERM_ACAD = 0x23, + _MM_PERM_ACBA = 0x24, _MM_PERM_ACBB = 0x25, _MM_PERM_ACBC = 0x26, + _MM_PERM_ACBD = 0x27, _MM_PERM_ACCA = 0x28, _MM_PERM_ACCB = 0x29, + _MM_PERM_ACCC = 0x2A, _MM_PERM_ACCD = 0x2B, _MM_PERM_ACDA = 0x2C, + _MM_PERM_ACDB = 0x2D, _MM_PERM_ACDC = 0x2E, _MM_PERM_ACDD = 0x2F, + _MM_PERM_ADAA = 0x30, _MM_PERM_ADAB = 0x31, _MM_PERM_ADAC = 0x32, + _MM_PERM_ADAD = 0x33, _MM_PERM_ADBA = 0x34, _MM_PERM_ADBB = 0x35, + _MM_PERM_ADBC = 0x36, _MM_PERM_ADBD = 0x37, _MM_PERM_ADCA = 0x38, + _MM_PERM_ADCB = 0x39, _MM_PERM_ADCC = 0x3A, _MM_PERM_ADCD = 0x3B, + _MM_PERM_ADDA = 0x3C, _MM_PERM_ADDB = 0x3D, _MM_PERM_ADDC = 0x3E, + _MM_PERM_ADDD = 0x3F, _MM_PERM_BAAA = 0x40, _MM_PERM_BAAB = 0x41, + _MM_PERM_BAAC = 0x42, _MM_PERM_BAAD = 0x43, _MM_PERM_BABA = 0x44, + _MM_PERM_BABB = 0x45, _MM_PERM_BABC = 0x46, _MM_PERM_BABD = 0x47, + _MM_PERM_BACA = 0x48, _MM_PERM_BACB = 0x49, _MM_PERM_BACC = 0x4A, + _MM_PERM_BACD = 0x4B, _MM_PERM_BADA = 0x4C, _MM_PERM_BADB = 0x4D, + _MM_PERM_BADC = 0x4E, _MM_PERM_BADD = 0x4F, _MM_PERM_BBAA = 0x50, + _MM_PERM_BBAB = 0x51, _MM_PERM_BBAC = 0x52, _MM_PERM_BBAD = 0x53, + _MM_PERM_BBBA = 0x54, _MM_PERM_BBBB = 0x55, _MM_PERM_BBBC = 0x56, + _MM_PERM_BBBD = 0x57, _MM_PERM_BBCA = 0x58, _MM_PERM_BBCB = 0x59, + _MM_PERM_BBCC = 0x5A, _MM_PERM_BBCD = 0x5B, _MM_PERM_BBDA = 0x5C, + _MM_PERM_BBDB = 0x5D, _MM_PERM_BBDC = 0x5E, _MM_PERM_BBDD = 0x5F, + _MM_PERM_BCAA = 0x60, _MM_PERM_BCAB = 0x61, _MM_PERM_BCAC = 0x62, + _MM_PERM_BCAD = 0x63, _MM_PERM_BCBA = 0x64, _MM_PERM_BCBB = 0x65, + _MM_PERM_BCBC = 0x66, _MM_PERM_BCBD = 0x67, _MM_PERM_BCCA = 0x68, + _MM_PERM_BCCB = 0x69, _MM_PERM_BCCC = 0x6A, _MM_PERM_BCCD = 0x6B, + _MM_PERM_BCDA = 0x6C, _MM_PERM_BCDB = 0x6D, _MM_PERM_BCDC = 0x6E, + _MM_PERM_BCDD = 0x6F, _MM_PERM_BDAA = 0x70, _MM_PERM_BDAB = 0x71, + _MM_PERM_BDAC = 0x72, _MM_PERM_BDAD = 0x73, _MM_PERM_BDBA = 0x74, + _MM_PERM_BDBB = 0x75, _MM_PERM_BDBC = 0x76, _MM_PERM_BDBD = 0x77, + _MM_PERM_BDCA = 0x78, _MM_PERM_BDCB = 0x79, _MM_PERM_BDCC = 0x7A, + _MM_PERM_BDCD = 0x7B, _MM_PERM_BDDA = 0x7C, _MM_PERM_BDDB = 0x7D, + _MM_PERM_BDDC = 0x7E, _MM_PERM_BDDD = 0x7F, _MM_PERM_CAAA = 0x80, + _MM_PERM_CAAB = 0x81, _MM_PERM_CAAC = 0x82, _MM_PERM_CAAD = 0x83, + _MM_PERM_CABA = 0x84, _MM_PERM_CABB = 0x85, _MM_PERM_CABC = 0x86, + _MM_PERM_CABD = 0x87, _MM_PERM_CACA = 0x88, _MM_PERM_CACB = 0x89, + _MM_PERM_CACC = 0x8A, _MM_PERM_CACD = 0x8B, _MM_PERM_CADA = 0x8C, + _MM_PERM_CADB = 0x8D, _MM_PERM_CADC = 0x8E, _MM_PERM_CADD = 0x8F, + _MM_PERM_CBAA = 0x90, _MM_PERM_CBAB = 0x91, _MM_PERM_CBAC = 0x92, + _MM_PERM_CBAD = 0x93, _MM_PERM_CBBA = 0x94, _MM_PERM_CBBB = 0x95, + _MM_PERM_CBBC = 0x96, _MM_PERM_CBBD = 0x97, _MM_PERM_CBCA = 0x98, + _MM_PERM_CBCB = 0x99, _MM_PERM_CBCC = 0x9A, _MM_PERM_CBCD = 0x9B, + _MM_PERM_CBDA = 0x9C, _MM_PERM_CBDB = 0x9D, _MM_PERM_CBDC = 0x9E, + _MM_PERM_CBDD = 0x9F, _MM_PERM_CCAA = 0xA0, _MM_PERM_CCAB = 0xA1, + _MM_PERM_CCAC = 0xA2, _MM_PERM_CCAD = 0xA3, _MM_PERM_CCBA = 0xA4, + _MM_PERM_CCBB = 0xA5, _MM_PERM_CCBC = 0xA6, _MM_PERM_CCBD = 0xA7, + _MM_PERM_CCCA = 0xA8, _MM_PERM_CCCB = 0xA9, _MM_PERM_CCCC = 0xAA, + _MM_PERM_CCCD = 0xAB, _MM_PERM_CCDA = 0xAC, _MM_PERM_CCDB = 0xAD, + _MM_PERM_CCDC = 0xAE, _MM_PERM_CCDD = 0xAF, _MM_PERM_CDAA = 0xB0, + _MM_PERM_CDAB = 0xB1, _MM_PERM_CDAC = 0xB2, _MM_PERM_CDAD = 0xB3, + _MM_PERM_CDBA = 0xB4, _MM_PERM_CDBB = 0xB5, _MM_PERM_CDBC = 0xB6, + _MM_PERM_CDBD = 0xB7, _MM_PERM_CDCA = 0xB8, _MM_PERM_CDCB = 0xB9, + _MM_PERM_CDCC = 0xBA, _MM_PERM_CDCD = 0xBB, _MM_PERM_CDDA = 0xBC, + _MM_PERM_CDDB = 0xBD, _MM_PERM_CDDC = 0xBE, _MM_PERM_CDDD = 0xBF, + _MM_PERM_DAAA = 0xC0, _MM_PERM_DAAB = 0xC1, _MM_PERM_DAAC = 0xC2, + _MM_PERM_DAAD = 0xC3, _MM_PERM_DABA = 0xC4, _MM_PERM_DABB = 0xC5, + _MM_PERM_DABC = 0xC6, _MM_PERM_DABD = 0xC7, _MM_PERM_DACA = 0xC8, + _MM_PERM_DACB = 0xC9, _MM_PERM_DACC = 0xCA, _MM_PERM_DACD = 0xCB, + _MM_PERM_DADA = 0xCC, _MM_PERM_DADB = 0xCD, _MM_PERM_DADC = 0xCE, + _MM_PERM_DADD = 0xCF, _MM_PERM_DBAA = 0xD0, _MM_PERM_DBAB = 0xD1, + _MM_PERM_DBAC = 0xD2, _MM_PERM_DBAD = 0xD3, _MM_PERM_DBBA = 0xD4, + _MM_PERM_DBBB = 0xD5, _MM_PERM_DBBC = 0xD6, _MM_PERM_DBBD = 0xD7, + _MM_PERM_DBCA = 0xD8, _MM_PERM_DBCB = 0xD9, _MM_PERM_DBCC = 0xDA, + _MM_PERM_DBCD = 0xDB, _MM_PERM_DBDA = 0xDC, _MM_PERM_DBDB = 0xDD, + _MM_PERM_DBDC = 0xDE, _MM_PERM_DBDD = 0xDF, _MM_PERM_DCAA = 0xE0, + _MM_PERM_DCAB = 0xE1, _MM_PERM_DCAC = 0xE2, _MM_PERM_DCAD = 0xE3, + _MM_PERM_DCBA = 0xE4, _MM_PERM_DCBB = 0xE5, _MM_PERM_DCBC = 0xE6, + _MM_PERM_DCBD = 0xE7, _MM_PERM_DCCA = 0xE8, _MM_PERM_DCCB = 0xE9, + _MM_PERM_DCCC = 0xEA, _MM_PERM_DCCD = 0xEB, _MM_PERM_DCDA = 0xEC, + _MM_PERM_DCDB = 0xED, _MM_PERM_DCDC = 0xEE, _MM_PERM_DCDD = 0xEF, + _MM_PERM_DDAA = 0xF0, _MM_PERM_DDAB = 0xF1, _MM_PERM_DDAC = 0xF2, + _MM_PERM_DDAD = 0xF3, _MM_PERM_DDBA = 0xF4, _MM_PERM_DDBB = 0xF5, + _MM_PERM_DDBC = 0xF6, _MM_PERM_DDBD = 0xF7, _MM_PERM_DDCA = 0xF8, + _MM_PERM_DDCB = 0xF9, _MM_PERM_DDCC = 0xFA, _MM_PERM_DDCD = 0xFB, + _MM_PERM_DDDA = 0xFC, _MM_PERM_DDDB = 0xFD, _MM_PERM_DDDC = 0xFE, + _MM_PERM_DDDD = 0xFF +} _MM_PERM_ENUM; + +typedef enum +{ + _MM_MANT_NORM_1_2, /* interval [1, 2) */ + _MM_MANT_NORM_p5_2, /* interval [0.5, 2) */ + _MM_MANT_NORM_p5_1, /* interval [0.5, 1) */ + _MM_MANT_NORM_p75_1p5 /* interval [0.75, 1.5) */ +} _MM_MANTISSA_NORM_ENUM; + +typedef enum +{ + _MM_MANT_SIGN_src, /* sign = sign(SRC) */ + _MM_MANT_SIGN_zero, /* sign = 0 */ + _MM_MANT_SIGN_nan /* DEST = NaN if sign(SRC) = 1 */ +} _MM_MANTISSA_SIGN_ENUM; + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512f"), __min_vector_width__(512))) +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512f"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512f"))) + +/* Create vectors with repeated elements */ + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_setzero_si512(void) +{ + return __extension__ (__m512i)(__v8di){ 0, 0, 0, 0, 0, 0, 0, 0 }; +} + +#define _mm512_setzero_epi32 _mm512_setzero_si512 + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_undefined_pd(void) +{ + return (__m512d)__builtin_ia32_undef512(); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_undefined(void) +{ + return (__m512)__builtin_ia32_undef512(); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_undefined_ps(void) +{ + return (__m512)__builtin_ia32_undef512(); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_undefined_epi32(void) +{ + return (__m512i)__builtin_ia32_undef512(); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcastd_epi32 (__m128i __A) +{ + return (__m512i)__builtin_shufflevector((__v4si) __A, (__v4si) __A, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcastd_epi32 (__m512i __O, __mmask16 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512(__M, + (__v16si) _mm512_broadcastd_epi32(__A), + (__v16si) __O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcastd_epi32 (__mmask16 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512(__M, + (__v16si) _mm512_broadcastd_epi32(__A), + (__v16si) _mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcastq_epi64 (__m128i __A) +{ + return (__m512i)__builtin_shufflevector((__v2di) __A, (__v2di) __A, + 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcastq_epi64 (__m512i __O, __mmask8 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512(__M, + (__v8di) _mm512_broadcastq_epi64(__A), + (__v8di) __O); + +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512(__M, + (__v8di) _mm512_broadcastq_epi64(__A), + (__v8di) _mm512_setzero_si512()); +} + + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_setzero_ps(void) +{ + return __extension__ (__m512){ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }; +} + +#define _mm512_setzero _mm512_setzero_ps + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_setzero_pd(void) +{ + return __extension__ (__m512d){ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }; +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_set1_ps(float __w) +{ + return __extension__ (__m512){ __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w }; +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_set1_pd(double __w) +{ + return __extension__ (__m512d){ __w, __w, __w, __w, __w, __w, __w, __w }; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set1_epi8(char __w) +{ + return __extension__ (__m512i)(__v64qi){ + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w }; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set1_epi16(short __w) +{ + return __extension__ (__m512i)(__v32hi){ + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w }; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set1_epi32(int __s) +{ + return __extension__ (__m512i)(__v16si){ + __s, __s, __s, __s, __s, __s, __s, __s, + __s, __s, __s, __s, __s, __s, __s, __s }; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_set1_epi32(__mmask16 __M, int __A) +{ + return (__m512i)__builtin_ia32_selectd_512(__M, + (__v16si)_mm512_set1_epi32(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set1_epi64(long long __d) +{ + return __extension__(__m512i)(__v8di){ __d, __d, __d, __d, __d, __d, __d, __d }; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_set1_epi64(__mmask8 __M, long long __A) +{ + return (__m512i)__builtin_ia32_selectq_512(__M, + (__v8di)_mm512_set1_epi64(__A), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_broadcastss_ps(__m128 __A) +{ + return (__m512)__builtin_shufflevector((__v4sf) __A, (__v4sf) __A, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set4_epi32 (int __A, int __B, int __C, int __D) +{ + return __extension__ (__m512i)(__v16si) + { __D, __C, __B, __A, __D, __C, __B, __A, + __D, __C, __B, __A, __D, __C, __B, __A }; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set4_epi64 (long long __A, long long __B, long long __C, + long long __D) +{ + return __extension__ (__m512i) (__v8di) + { __D, __C, __B, __A, __D, __C, __B, __A }; +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_set4_pd (double __A, double __B, double __C, double __D) +{ + return __extension__ (__m512d) + { __D, __C, __B, __A, __D, __C, __B, __A }; +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_set4_ps (float __A, float __B, float __C, float __D) +{ + return __extension__ (__m512) + { __D, __C, __B, __A, __D, __C, __B, __A, + __D, __C, __B, __A, __D, __C, __B, __A }; +} + +#define _mm512_setr4_epi32(e0,e1,e2,e3) \ + _mm512_set4_epi32((e3),(e2),(e1),(e0)) + +#define _mm512_setr4_epi64(e0,e1,e2,e3) \ + _mm512_set4_epi64((e3),(e2),(e1),(e0)) + +#define _mm512_setr4_pd(e0,e1,e2,e3) \ + _mm512_set4_pd((e3),(e2),(e1),(e0)) + +#define _mm512_setr4_ps(e0,e1,e2,e3) \ + _mm512_set4_ps((e3),(e2),(e1),(e0)) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_broadcastsd_pd(__m128d __A) +{ + return (__m512d)__builtin_shufflevector((__v2df) __A, (__v2df) __A, + 0, 0, 0, 0, 0, 0, 0, 0); +} + +/* Cast between vector types */ + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_castpd256_pd512(__m256d __a) +{ + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, -1, -1, -1, -1); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_castps256_ps512(__m256 __a) +{ + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, + -1, -1, -1, -1, -1, -1, -1, -1); +} + +static __inline __m128d __DEFAULT_FN_ATTRS512 +_mm512_castpd512_pd128(__m512d __a) +{ + return __builtin_shufflevector(__a, __a, 0, 1); +} + +static __inline __m256d __DEFAULT_FN_ATTRS512 +_mm512_castpd512_pd256 (__m512d __A) +{ + return __builtin_shufflevector(__A, __A, 0, 1, 2, 3); +} + +static __inline __m128 __DEFAULT_FN_ATTRS512 +_mm512_castps512_ps128(__m512 __a) +{ + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3); +} + +static __inline __m256 __DEFAULT_FN_ATTRS512 +_mm512_castps512_ps256 (__m512 __A) +{ + return __builtin_shufflevector(__A, __A, 0, 1, 2, 3, 4, 5, 6, 7); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_castpd_ps (__m512d __A) +{ + return (__m512) (__A); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_castpd_si512 (__m512d __A) +{ + return (__m512i) (__A); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_castpd128_pd512 (__m128d __A) +{ + return __builtin_shufflevector( __A, __A, 0, 1, -1, -1, -1, -1, -1, -1); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_castps_pd (__m512 __A) +{ + return (__m512d) (__A); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_castps_si512 (__m512 __A) +{ + return (__m512i) (__A); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_castps128_ps512 (__m128 __A) +{ + return __builtin_shufflevector( __A, __A, 0, 1, 2, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_castsi128_si512 (__m128i __A) +{ + return __builtin_shufflevector( __A, __A, 0, 1, -1, -1, -1, -1, -1, -1); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_castsi256_si512 (__m256i __A) +{ + return __builtin_shufflevector( __A, __A, 0, 1, 2, 3, -1, -1, -1, -1); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_castsi512_ps (__m512i __A) +{ + return (__m512) (__A); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_castsi512_pd (__m512i __A) +{ + return (__m512d) (__A); +} + +static __inline __m128i __DEFAULT_FN_ATTRS512 +_mm512_castsi512_si128 (__m512i __A) +{ + return (__m128i)__builtin_shufflevector(__A, __A , 0, 1); +} + +static __inline __m256i __DEFAULT_FN_ATTRS512 +_mm512_castsi512_si256 (__m512i __A) +{ + return (__m256i)__builtin_shufflevector(__A, __A , 0, 1, 2, 3); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_mm512_int2mask(int __a) +{ + return (__mmask16)__a; +} + +static __inline__ int __DEFAULT_FN_ATTRS +_mm512_mask2int(__mmask16 __a) +{ + return (int)__a; +} + +/// Constructs a 512-bit floating-point vector of [8 x double] from a +/// 128-bit floating-point vector of [2 x double]. The lower 128 bits +/// contain the value of the source vector. The upper 384 bits are set +/// to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 512-bit floating-point vector of [8 x double]. The lower 128 bits +/// contain the value of the parameter. The upper 384 bits are set to zero. +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_zextpd128_pd512(__m128d __a) +{ + return __builtin_shufflevector((__v2df)__a, (__v2df)_mm_setzero_pd(), 0, 1, 2, 3, 2, 3, 2, 3); +} + +/// Constructs a 512-bit floating-point vector of [8 x double] from a +/// 256-bit floating-point vector of [4 x double]. The lower 256 bits +/// contain the value of the source vector. The upper 256 bits are set +/// to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \returns A 512-bit floating-point vector of [8 x double]. The lower 256 bits +/// contain the value of the parameter. The upper 256 bits are set to zero. +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_zextpd256_pd512(__m256d __a) +{ + return __builtin_shufflevector((__v4df)__a, (__v4df)_mm256_setzero_pd(), 0, 1, 2, 3, 4, 5, 6, 7); +} + +/// Constructs a 512-bit floating-point vector of [16 x float] from a +/// 128-bit floating-point vector of [4 x float]. The lower 128 bits contain +/// the value of the source vector. The upper 384 bits are set to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 512-bit floating-point vector of [16 x float]. The lower 128 bits +/// contain the value of the parameter. The upper 384 bits are set to zero. +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_zextps128_ps512(__m128 __a) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)_mm_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7, 4, 5, 6, 7, 4, 5, 6, 7); +} + +/// Constructs a 512-bit floating-point vector of [16 x float] from a +/// 256-bit floating-point vector of [8 x float]. The lower 256 bits contain +/// the value of the source vector. The upper 256 bits are set to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \returns A 512-bit floating-point vector of [16 x float]. The lower 256 bits +/// contain the value of the parameter. The upper 256 bits are set to zero. +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_zextps256_ps512(__m256 __a) +{ + return __builtin_shufflevector((__v8sf)__a, (__v8sf)_mm256_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); +} + +/// Constructs a 512-bit integer vector from a 128-bit integer vector. +/// The lower 128 bits contain the value of the source vector. The upper +/// 384 bits are set to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \returns A 512-bit integer vector. The lower 128 bits contain the value of +/// the parameter. The upper 384 bits are set to zero. +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_zextsi128_si512(__m128i __a) +{ + return __builtin_shufflevector((__v2di)__a, (__v2di)_mm_setzero_si128(), 0, 1, 2, 3, 2, 3, 2, 3); +} + +/// Constructs a 512-bit integer vector from a 256-bit integer vector. +/// The lower 256 bits contain the value of the source vector. The upper +/// 256 bits are set to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit integer vector. +/// \returns A 512-bit integer vector. The lower 256 bits contain the value of +/// the parameter. The upper 256 bits are set to zero. +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_zextsi256_si512(__m256i __a) +{ + return __builtin_shufflevector((__v4di)__a, (__v4di)_mm256_setzero_si256(), 0, 1, 2, 3, 4, 5, 6, 7); +} + +/* Bitwise operators */ +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_and_epi32(__m512i __a, __m512i __b) +{ + return (__m512i)((__v16su)__a & (__v16su)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_and_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k, + (__v16si) _mm512_and_epi32(__a, __b), + (__v16si) __src); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_and_epi32(__mmask16 __k, __m512i __a, __m512i __b) +{ + return (__m512i) _mm512_mask_and_epi32(_mm512_setzero_si512 (), + __k, __a, __b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_and_epi64(__m512i __a, __m512i __b) +{ + return (__m512i)((__v8du)__a & (__v8du)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_and_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b) +{ + return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __k, + (__v8di) _mm512_and_epi64(__a, __b), + (__v8di) __src); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_and_epi64(__mmask8 __k, __m512i __a, __m512i __b) +{ + return (__m512i) _mm512_mask_and_epi64(_mm512_setzero_si512 (), + __k, __a, __b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_andnot_si512 (__m512i __A, __m512i __B) +{ + return (__m512i)(~(__v8du)__A & (__v8du)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_andnot_epi32 (__m512i __A, __m512i __B) +{ + return (__m512i)(~(__v16su)__A & (__v16su)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_andnot_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_andnot_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_andnot_epi32(__mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)_mm512_mask_andnot_epi32(_mm512_setzero_si512(), + __U, __A, __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_andnot_epi64(__m512i __A, __m512i __B) +{ + return (__m512i)(~(__v8du)__A & (__v8du)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_andnot_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_andnot_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_andnot_epi64(__mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)_mm512_mask_andnot_epi64(_mm512_setzero_si512(), + __U, __A, __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_or_epi32(__m512i __a, __m512i __b) +{ + return (__m512i)((__v16su)__a | (__v16su)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_or_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k, + (__v16si)_mm512_or_epi32(__a, __b), + (__v16si)__src); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_or_epi32(__mmask16 __k, __m512i __a, __m512i __b) +{ + return (__m512i)_mm512_mask_or_epi32(_mm512_setzero_si512(), __k, __a, __b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_or_epi64(__m512i __a, __m512i __b) +{ + return (__m512i)((__v8du)__a | (__v8du)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_or_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__k, + (__v8di)_mm512_or_epi64(__a, __b), + (__v8di)__src); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_or_epi64(__mmask8 __k, __m512i __a, __m512i __b) +{ + return (__m512i)_mm512_mask_or_epi64(_mm512_setzero_si512(), __k, __a, __b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_xor_epi32(__m512i __a, __m512i __b) +{ + return (__m512i)((__v16su)__a ^ (__v16su)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_xor_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k, + (__v16si)_mm512_xor_epi32(__a, __b), + (__v16si)__src); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_xor_epi32(__mmask16 __k, __m512i __a, __m512i __b) +{ + return (__m512i)_mm512_mask_xor_epi32(_mm512_setzero_si512(), __k, __a, __b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_xor_epi64(__m512i __a, __m512i __b) +{ + return (__m512i)((__v8du)__a ^ (__v8du)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_xor_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__k, + (__v8di)_mm512_xor_epi64(__a, __b), + (__v8di)__src); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_xor_epi64(__mmask8 __k, __m512i __a, __m512i __b) +{ + return (__m512i)_mm512_mask_xor_epi64(_mm512_setzero_si512(), __k, __a, __b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_and_si512(__m512i __a, __m512i __b) +{ + return (__m512i)((__v8du)__a & (__v8du)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_or_si512(__m512i __a, __m512i __b) +{ + return (__m512i)((__v8du)__a | (__v8du)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_xor_si512(__m512i __a, __m512i __b) +{ + return (__m512i)((__v8du)__a ^ (__v8du)__b); +} + +/* Arithmetic */ + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_add_pd(__m512d __a, __m512d __b) +{ + return (__m512d)((__v8df)__a + (__v8df)__b); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_add_ps(__m512 __a, __m512 __b) +{ + return (__m512)((__v16sf)__a + (__v16sf)__b); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_mul_pd(__m512d __a, __m512d __b) +{ + return (__m512d)((__v8df)__a * (__v8df)__b); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_mul_ps(__m512 __a, __m512 __b) +{ + return (__m512)((__v16sf)__a * (__v16sf)__b); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_sub_pd(__m512d __a, __m512d __b) +{ + return (__m512d)((__v8df)__a - (__v8df)__b); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_sub_ps(__m512 __a, __m512 __b) +{ + return (__m512)((__v16sf)__a - (__v16sf)__b); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_add_epi64 (__m512i __A, __m512i __B) +{ + return (__m512i) ((__v8du) __A + (__v8du) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_add_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_add_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_add_epi64(__mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_add_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sub_epi64 (__m512i __A, __m512i __B) +{ + return (__m512i) ((__v8du) __A - (__v8du) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sub_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_sub_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sub_epi64(__mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_sub_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_add_epi32 (__m512i __A, __m512i __B) +{ + return (__m512i) ((__v16su) __A + (__v16su) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_add_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_add_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_add_epi32 (__mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_add_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sub_epi32 (__m512i __A, __m512i __B) +{ + return (__m512i) ((__v16su) __A - (__v16su) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sub_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_sub_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_sub_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +#define _mm512_max_round_pd(A, B, R) \ + ((__m512d)__builtin_ia32_maxpd512((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(R))) + +#define _mm512_mask_max_round_pd(W, U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_max_round_pd((A), (B), (R)), \ + (__v8df)(W))) + +#define _mm512_maskz_max_round_pd(U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_max_round_pd((A), (B), (R)), \ + (__v8df)_mm512_setzero_pd())) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_max_pd(__m512d __A, __m512d __B) +{ + return (__m512d) __builtin_ia32_maxpd512((__v8df) __A, (__v8df) __B, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_max_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_max_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_pd (__mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_max_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +#define _mm512_max_round_ps(A, B, R) \ + ((__m512)__builtin_ia32_maxps512((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(R))) + +#define _mm512_mask_max_round_ps(W, U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_max_round_ps((A), (B), (R)), \ + (__v16sf)(W))) + +#define _mm512_maskz_max_round_ps(U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_max_round_ps((A), (B), (R)), \ + (__v16sf)_mm512_setzero_ps())) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_max_ps(__m512 __A, __m512 __B) +{ + return (__m512) __builtin_ia32_maxps512((__v16sf) __A, (__v16sf) __B, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_max_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_max_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_ps (__mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_max_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_max_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { + return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_max_ss(__mmask8 __U,__m128 __A, __m128 __B) { + return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) _mm_setzero_ps (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_max_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_max_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm_maskz_max_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_max_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { + return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_max_sd(__mmask8 __U,__m128d __A, __m128d __B) { + return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) _mm_setzero_pd (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_max_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_max_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_max_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline __m512i +__DEFAULT_FN_ATTRS512 +_mm512_max_epi32(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_max((__v16si)__A, (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_max_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_max_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_epi32 (__mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_max_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_max_epu32(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_max((__v16su)__A, (__v16su)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_max_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_max_epu32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_epu32 (__mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_max_epu32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_max_epi64(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_max((__v8di)__A, (__v8di)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_max_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_max_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_epi64 (__mmask8 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_max_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_max_epu64(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_max((__v8du)__A, (__v8du)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_max_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_max_epu64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_epu64 (__mmask8 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_max_epu64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +#define _mm512_min_round_pd(A, B, R) \ + ((__m512d)__builtin_ia32_minpd512((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(R))) + +#define _mm512_mask_min_round_pd(W, U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_min_round_pd((A), (B), (R)), \ + (__v8df)(W))) + +#define _mm512_maskz_min_round_pd(U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_min_round_pd((A), (B), (R)), \ + (__v8df)_mm512_setzero_pd())) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_min_pd(__m512d __A, __m512d __B) +{ + return (__m512d) __builtin_ia32_minpd512((__v8df) __A, (__v8df) __B, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_min_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_min_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_pd (__mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_min_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +#define _mm512_min_round_ps(A, B, R) \ + ((__m512)__builtin_ia32_minps512((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(R))) + +#define _mm512_mask_min_round_ps(W, U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_min_round_ps((A), (B), (R)), \ + (__v16sf)(W))) + +#define _mm512_maskz_min_round_ps(U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_min_round_ps((A), (B), (R)), \ + (__v16sf)_mm512_setzero_ps())) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_min_ps(__m512 __A, __m512 __B) +{ + return (__m512) __builtin_ia32_minps512((__v16sf) __A, (__v16sf) __B, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_min_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_min_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_ps (__mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_min_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_min_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { + return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_min_ss(__mmask8 __U,__m128 __A, __m128 __B) { + return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) _mm_setzero_ps (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_min_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_min_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm_maskz_min_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_min_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { + return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_min_sd(__mmask8 __U,__m128d __A, __m128d __B) { + return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) _mm_setzero_pd (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_min_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_min_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_min_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline __m512i +__DEFAULT_FN_ATTRS512 +_mm512_min_epi32(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_min((__v16si)__A, (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_min_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_min_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_epi32 (__mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_min_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_min_epu32(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_min((__v16su)__A, (__v16su)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_min_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_min_epu32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_epu32 (__mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_min_epu32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_min_epi64(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_min((__v8di)__A, (__v8di)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_min_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_min_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_epi64 (__mmask8 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_min_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_min_epu64(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_elementwise_min((__v8du)__A, (__v8du)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_min_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_min_epu64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_epu64 (__mmask8 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_min_epu64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mul_epi32(__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_pmuldq512((__v16si)__X, (__v16si) __Y); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mul_epi32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_mul_epi32(__X, __Y), + (__v8di)__W); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mul_epi32(__mmask8 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_mul_epi32(__X, __Y), + (__v8di)_mm512_setzero_si512 ()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mul_epu32(__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_pmuludq512((__v16si)__X, (__v16si)__Y); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mul_epu32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_mul_epu32(__X, __Y), + (__v8di)__W); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mul_epu32(__mmask8 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_mul_epu32(__X, __Y), + (__v8di)_mm512_setzero_si512 ()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mullo_epi32 (__m512i __A, __m512i __B) +{ + return (__m512i) ((__v16su) __A * (__v16su) __B); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mullo_epi32(__mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_mullo_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mullo_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_mullo_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mullox_epi64 (__m512i __A, __m512i __B) { + return (__m512i) ((__v8du) __A * (__v8du) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mullox_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) { + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_mullox_epi64(__A, __B), + (__v8di)__W); +} + +#define _mm512_sqrt_round_pd(A, R) \ + ((__m512d)__builtin_ia32_sqrtpd512((__v8df)(__m512d)(A), (int)(R))) + +#define _mm512_mask_sqrt_round_pd(W, U, A, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_sqrt_round_pd((A), (R)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_sqrt_round_pd(U, A, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_sqrt_round_pd((A), (R)), \ + (__v8df)_mm512_setzero_pd())) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_sqrt_pd(__m512d __A) +{ + return (__m512d)__builtin_ia32_sqrtpd512((__v8df)__A, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_sqrt_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_sqrt_pd(__A), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_sqrt_pd (__mmask8 __U, __m512d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_sqrt_pd(__A), + (__v8df)_mm512_setzero_pd()); +} + +#define _mm512_sqrt_round_ps(A, R) \ + ((__m512)__builtin_ia32_sqrtps512((__v16sf)(__m512)(A), (int)(R))) + +#define _mm512_mask_sqrt_round_ps(W, U, A, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_sqrt_round_ps((A), (R)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_sqrt_round_ps(U, A, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_sqrt_round_ps((A), (R)), \ + (__v16sf)_mm512_setzero_ps())) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_sqrt_ps(__m512 __A) +{ + return (__m512)__builtin_ia32_sqrtps512((__v16sf)__A, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_sqrt_ps(__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_sqrt_ps(__A), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_sqrt_ps( __mmask16 __U, __m512 __A) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_sqrt_ps(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_rsqrt14_pd(__m512d __A) +{ + return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A, + (__v8df) + _mm512_setzero_pd (), + (__mmask8) -1);} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_rsqrt14_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A, + (__v8df) __W, + (__mmask8) __U); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_rsqrt14_pd (__mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A, + (__v8df) + _mm512_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_rsqrt14_ps(__m512 __A) +{ + return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) -1); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_rsqrt14_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A, + (__v16sf) __W, + (__mmask16) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_rsqrt14_ps (__mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_rsqrt14_ss(__m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_rsqrt14_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_rsqrt14_ss (__mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_rsqrt14_sd(__m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_rsqrt14sd_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) + _mm_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_rsqrt14_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_rsqrt14sd_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_rsqrt14_sd (__mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_rsqrt14sd_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_rcp14_pd(__m512d __A) +{ + return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A, + (__v8df) + _mm512_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_rcp14_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A, + (__v8df) __W, + (__mmask8) __U); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_rcp14_pd (__mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A, + (__v8df) + _mm512_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_rcp14_ps(__m512 __A) +{ + return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) -1); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_rcp14_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A, + (__v16sf) __W, + (__mmask16) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_rcp14_ps (__mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_rcp14_ss(__m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_rcp14_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_rcp14_ss (__mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_rcp14_sd(__m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_rcp14sd_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) + _mm_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_rcp14_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_rcp14sd_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_rcp14_sd (__mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_rcp14sd_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_floor_ps(__m512 __A) +{ + return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, + _MM_FROUND_FLOOR, + (__v16sf) __A, (unsigned short)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_floor_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, + _MM_FROUND_FLOOR, + (__v16sf) __W, __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_floor_pd(__m512d __A) +{ + return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, + _MM_FROUND_FLOOR, + (__v8df) __A, (unsigned char)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_floor_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, + _MM_FROUND_FLOOR, + (__v8df) __W, __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_ceil_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, + _MM_FROUND_CEIL, + (__v16sf) __W, __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_ceil_ps(__m512 __A) +{ + return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, + _MM_FROUND_CEIL, + (__v16sf) __A, (unsigned short)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_ceil_pd(__m512d __A) +{ + return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, + _MM_FROUND_CEIL, + (__v8df) __A, (unsigned char)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_ceil_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, + _MM_FROUND_CEIL, + (__v8df) __W, __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_abs_epi64(__m512i __A) +{ + return (__m512i)__builtin_elementwise_abs((__v8di)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_abs_epi64 (__m512i __W, __mmask8 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_abs_epi64(__A), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_abs_epi64 (__mmask8 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_abs_epi64(__A), + (__v8di)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_abs_epi32(__m512i __A) +{ + return (__m512i)__builtin_elementwise_abs((__v16si) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_abs_epi32 (__m512i __W, __mmask16 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_abs_epi32(__A), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_abs_epi32 (__mmask16 __U, __m512i __A) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_abs_epi32(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_add_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { + __A = _mm_add_ss(__A, __B); + return __builtin_ia32_selectss_128(__U, __A, __W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_add_ss(__mmask8 __U,__m128 __A, __m128 __B) { + __A = _mm_add_ss(__A, __B); + return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps()); +} + +#define _mm_add_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_add_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm_maskz_add_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_add_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { + __A = _mm_add_sd(__A, __B); + return __builtin_ia32_selectsd_128(__U, __A, __W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_add_sd(__mmask8 __U,__m128d __A, __m128d __B) { + __A = _mm_add_sd(__A, __B); + return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd()); +} +#define _mm_add_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_add_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_add_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_add_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_add_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_add_pd(__mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_add_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_add_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_add_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_add_ps(__mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_add_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +#define _mm512_add_round_pd(A, B, R) \ + ((__m512d)__builtin_ia32_addpd512((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(R))) + +#define _mm512_mask_add_round_pd(W, U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_add_round_pd((A), (B), (R)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_add_round_pd(U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_add_round_pd((A), (B), (R)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_add_round_ps(A, B, R) \ + ((__m512)__builtin_ia32_addps512((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(R))) + +#define _mm512_mask_add_round_ps(W, U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_add_round_ps((A), (B), (R)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_add_round_ps(U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_add_round_ps((A), (B), (R)), \ + (__v16sf)_mm512_setzero_ps())) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_sub_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { + __A = _mm_sub_ss(__A, __B); + return __builtin_ia32_selectss_128(__U, __A, __W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_sub_ss(__mmask8 __U,__m128 __A, __m128 __B) { + __A = _mm_sub_ss(__A, __B); + return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps()); +} +#define _mm_sub_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_sub_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm_maskz_sub_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_sub_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { + __A = _mm_sub_sd(__A, __B); + return __builtin_ia32_selectsd_128(__U, __A, __W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_sub_sd(__mmask8 __U,__m128d __A, __m128d __B) { + __A = _mm_sub_sd(__A, __B); + return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd()); +} + +#define _mm_sub_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_sub_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_sub_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_sub_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_sub_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_sub_pd(__mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_sub_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_sub_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_sub_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_sub_ps(__mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_sub_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +#define _mm512_sub_round_pd(A, B, R) \ + ((__m512d)__builtin_ia32_subpd512((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(R))) + +#define _mm512_mask_sub_round_pd(W, U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_sub_round_pd((A), (B), (R)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_sub_round_pd(U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_sub_round_pd((A), (B), (R)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_sub_round_ps(A, B, R) \ + ((__m512)__builtin_ia32_subps512((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(R))) + +#define _mm512_mask_sub_round_ps(W, U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_sub_round_ps((A), (B), (R)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_sub_round_ps(U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_sub_round_ps((A), (B), (R)), \ + (__v16sf)_mm512_setzero_ps())) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_mul_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { + __A = _mm_mul_ss(__A, __B); + return __builtin_ia32_selectss_128(__U, __A, __W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_mul_ss(__mmask8 __U,__m128 __A, __m128 __B) { + __A = _mm_mul_ss(__A, __B); + return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps()); +} +#define _mm_mul_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_mul_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm_maskz_mul_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_mul_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { + __A = _mm_mul_sd(__A, __B); + return __builtin_ia32_selectsd_128(__U, __A, __W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_mul_sd(__mmask8 __U,__m128d __A, __m128d __B) { + __A = _mm_mul_sd(__A, __B); + return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd()); +} + +#define _mm_mul_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_mul_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_mul_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_mul_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_mul_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_mul_pd(__mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_mul_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_mul_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_mul_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_mul_ps(__mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_mul_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +#define _mm512_mul_round_pd(A, B, R) \ + ((__m512d)__builtin_ia32_mulpd512((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(R))) + +#define _mm512_mask_mul_round_pd(W, U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_mul_round_pd((A), (B), (R)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_mul_round_pd(U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_mul_round_pd((A), (B), (R)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_mul_round_ps(A, B, R) \ + ((__m512)__builtin_ia32_mulps512((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(R))) + +#define _mm512_mask_mul_round_ps(W, U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_mul_round_ps((A), (B), (R)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_mul_round_ps(U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_mul_round_ps((A), (B), (R)), \ + (__v16sf)_mm512_setzero_ps())) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_div_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { + __A = _mm_div_ss(__A, __B); + return __builtin_ia32_selectss_128(__U, __A, __W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_div_ss(__mmask8 __U,__m128 __A, __m128 __B) { + __A = _mm_div_ss(__A, __B); + return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps()); +} + +#define _mm_div_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_div_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm_maskz_div_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_div_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { + __A = _mm_div_sd(__A, __B); + return __builtin_ia32_selectsd_128(__U, __A, __W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_div_sd(__mmask8 __U,__m128d __A, __m128d __B) { + __A = _mm_div_sd(__A, __B); + return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd()); +} + +#define _mm_div_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_div_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_div_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_div_pd(__m512d __a, __m512d __b) +{ + return (__m512d)((__v8df)__a/(__v8df)__b); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_div_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_div_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_div_pd(__mmask8 __U, __m512d __A, __m512d __B) { + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_div_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_div_ps(__m512 __a, __m512 __b) +{ + return (__m512)((__v16sf)__a/(__v16sf)__b); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_div_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_div_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_div_ps(__mmask16 __U, __m512 __A, __m512 __B) { + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_div_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +#define _mm512_div_round_pd(A, B, R) \ + ((__m512d)__builtin_ia32_divpd512((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(R))) + +#define _mm512_mask_div_round_pd(W, U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_div_round_pd((A), (B), (R)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_div_round_pd(U, A, B, R) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_div_round_pd((A), (B), (R)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_div_round_ps(A, B, R) \ + ((__m512)__builtin_ia32_divps512((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(R))) + +#define _mm512_mask_div_round_ps(W, U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_div_round_ps((A), (B), (R)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_div_round_ps(U, A, B, R) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_div_round_ps((A), (B), (R)), \ + (__v16sf)_mm512_setzero_ps())) + +#define _mm512_roundscale_ps(A, B) \ + ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(A), (int)(B), \ + (__v16sf)_mm512_undefined_ps(), \ + (__mmask16)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_roundscale_ps(A, B, C, imm) \ + ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(C), (int)(imm), \ + (__v16sf)(__m512)(A), (__mmask16)(B), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_roundscale_ps(A, B, imm) \ + ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(B), (int)(imm), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(A), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_roundscale_round_ps(A, B, C, imm, R) \ + ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(C), (int)(imm), \ + (__v16sf)(__m512)(A), (__mmask16)(B), \ + (int)(R))) + +#define _mm512_maskz_roundscale_round_ps(A, B, imm, R) \ + ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(B), (int)(imm), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(A), (int)(R))) + +#define _mm512_roundscale_round_ps(A, imm, R) \ + ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(A), (int)(imm), \ + (__v16sf)_mm512_undefined_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_roundscale_pd(A, B) \ + ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(A), (int)(B), \ + (__v8df)_mm512_undefined_pd(), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_roundscale_pd(A, B, C, imm) \ + ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(C), (int)(imm), \ + (__v8df)(__m512d)(A), (__mmask8)(B), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_roundscale_pd(A, B, imm) \ + ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(B), (int)(imm), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(A), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_roundscale_round_pd(A, B, C, imm, R) \ + ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(C), (int)(imm), \ + (__v8df)(__m512d)(A), (__mmask8)(B), \ + (int)(R))) + +#define _mm512_maskz_roundscale_round_pd(A, B, imm, R) \ + ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(B), (int)(imm), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(A), (int)(R))) + +#define _mm512_roundscale_round_pd(A, imm, R) \ + ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(A), (int)(imm), \ + (__v8df)_mm512_undefined_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_fmadd_round_pd(A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)-1, (int)(R))) + + +#define _mm512_mask_fmadd_round_pd(A, U, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_mask3_fmadd_round_pd(A, B, C, U, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask3((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_maskz_fmadd_round_pd(U, A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_maskz((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_fmsub_round_pd(A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)-1, (int)(R))) + + +#define _mm512_mask_fmsub_round_pd(A, U, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_maskz_fmsub_round_pd(U, A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_maskz((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_fnmadd_round_pd(A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask(-(__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)-1, (int)(R))) + + +#define _mm512_mask3_fnmadd_round_pd(A, B, C, U, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask3(-(__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_maskz_fnmadd_round_pd(U, A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_maskz(-(__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_fnmsub_round_pd(A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask(-(__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)-1, (int)(R))) + + +#define _mm512_maskz_fnmsub_round_pd(U, A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_maskz(-(__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_fmadd_pd(__m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_fmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask3 ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_fmsub_pd(__m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, + (__v8df) __B, + -(__v8df) __C, + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_fmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, + (__v8df) __B, + -(__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A, + (__v8df) __B, + -(__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, + -(__v8df) __B, + (__v8df) __C, + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask3_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask3 (-(__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_fnmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, + -(__v8df) __B, + -(__v8df) __C, + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_fnmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A, + (__v8df) __B, + -(__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fmadd_round_ps(A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)-1, (int)(R))) + + +#define _mm512_mask_fmadd_round_ps(A, U, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_mask3_fmadd_round_ps(A, B, C, U, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask3((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_maskz_fmadd_round_ps(U, A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_maskz((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_fmsub_round_ps(A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)-1, (int)(R))) + + +#define _mm512_mask_fmsub_round_ps(A, U, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_maskz_fmsub_round_ps(U, A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_maskz((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_fnmadd_round_ps(A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ + -(__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)-1, (int)(R))) + + +#define _mm512_mask3_fnmadd_round_ps(A, B, C, U, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask3(-(__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_maskz_fnmadd_round_ps(U, A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_maskz(-(__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_fnmsub_round_ps(A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ + -(__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)-1, (int)(R))) + + +#define _mm512_maskz_fnmsub_round_ps(U, A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_maskz(-(__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_fmadd_ps(__m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_fmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask3 ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_fmsub_ps(__m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, + (__v16sf) __B, + -(__v16sf) __C, + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_fmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, + (__v16sf) __B, + -(__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A, + (__v16sf) __B, + -(__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, + -(__v16sf) __B, + (__v16sf) __C, + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask3_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask3 (-(__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_fnmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, + -(__v16sf) __B, + -(__v16sf) __C, + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_fnmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A, + (__v16sf) __B, + -(__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fmaddsub_round_pd(A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)-1, (int)(R))) + + +#define _mm512_mask_fmaddsub_round_pd(A, U, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_mask3_fmaddsub_round_pd(A, B, C, U, R) \ + ((__m512d)__builtin_ia32_vfmaddsubpd512_mask3((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_maskz_fmaddsub_round_pd(U, A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddsubpd512_maskz((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_fmsubadd_round_pd(A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)-1, (int)(R))) + + +#define _mm512_mask_fmsubadd_round_pd(A, U, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_maskz_fmsubadd_round_pd(U, A, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddsubpd512_maskz((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_fmaddsub_pd(__m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_fmaddsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmaddsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) +{ + return (__m512d) __builtin_ia32_vfmaddsubpd512_mask3 ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmaddsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_fmsubadd_pd(__m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A, + (__v8df) __B, + -(__v8df) __C, + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_fmsubadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A, + (__v8df) __B, + -(__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmsubadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A, + (__v8df) __B, + -(__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fmaddsub_round_ps(A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)-1, (int)(R))) + + +#define _mm512_mask_fmaddsub_round_ps(A, U, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_mask3_fmaddsub_round_ps(A, B, C, U, R) \ + ((__m512)__builtin_ia32_vfmaddsubps512_mask3((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_maskz_fmaddsub_round_ps(U, A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddsubps512_maskz((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_fmsubadd_round_ps(A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)-1, (int)(R))) + + +#define _mm512_mask_fmsubadd_round_ps(A, U, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_maskz_fmsubadd_round_ps(U, A, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddsubps512_maskz((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_fmaddsub_ps(__m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_fmaddsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmaddsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) +{ + return (__m512) __builtin_ia32_vfmaddsubps512_mask3 ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmaddsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_fmsubadd_ps(__m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A, + (__v16sf) __B, + -(__v16sf) __C, + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_fmsubadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A, + (__v16sf) __B, + -(__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmsubadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A, + (__v16sf) __B, + -(__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask3_fmsub_round_pd(A, B, C, U, R) \ + ((__m512d)__builtin_ia32_vfmsubpd512_mask3((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) +{ + return (__m512d)__builtin_ia32_vfmsubpd512_mask3 ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask3_fmsub_round_ps(A, B, C, U, R) \ + ((__m512)__builtin_ia32_vfmsubps512_mask3((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) +{ + return (__m512)__builtin_ia32_vfmsubps512_mask3 ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask3_fmsubadd_round_pd(A, B, C, U, R) \ + ((__m512d)__builtin_ia32_vfmsubaddpd512_mask3((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmsubadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) +{ + return (__m512d)__builtin_ia32_vfmsubaddpd512_mask3 ((__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask3_fmsubadd_round_ps(A, B, C, U, R) \ + ((__m512)__builtin_ia32_vfmsubaddps512_mask3((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmsubadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) +{ + return (__m512)__builtin_ia32_vfmsubaddps512_mask3 ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask_fnmadd_round_pd(A, U, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ + -(__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_fnmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, + -(__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask_fnmadd_round_ps(A, U, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ + -(__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, + -(__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask_fnmsub_round_pd(A, U, B, C, R) \ + ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ + -(__v8df)(__m512d)(B), \ + -(__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +#define _mm512_mask3_fnmsub_round_pd(A, B, C, U, R) \ + ((__m512d)__builtin_ia32_vfmsubpd512_mask3(-(__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(C), \ + (__mmask8)(U), (int)(R))) + + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_fnmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) +{ + return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, + -(__v8df) __B, + -(__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) +{ + return (__m512d) __builtin_ia32_vfmsubpd512_mask3 (-(__v8df) __A, + (__v8df) __B, + (__v8df) __C, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask_fnmsub_round_ps(A, U, B, C, R) \ + ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ + -(__v16sf)(__m512)(B), \ + -(__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +#define _mm512_mask3_fnmsub_round_ps(A, B, C, U, R) \ + ((__m512)__builtin_ia32_vfmsubps512_mask3(-(__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(C), \ + (__mmask16)(U), (int)(R))) + + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_fnmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) +{ + return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, + -(__v16sf) __B, + -(__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask3_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) +{ + return (__m512) __builtin_ia32_vfmsubps512_mask3 (-(__v16sf) __A, + (__v16sf) __B, + (__v16sf) __C, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + + + +/* Vector permutations */ + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_permutex2var_epi32(__m512i __A, __m512i __I, __m512i __B) +{ + return (__m512i)__builtin_ia32_vpermi2vard512((__v16si)__A, (__v16si) __I, + (__v16si) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_permutex2var_epi32(__m512i __A, __mmask16 __U, __m512i __I, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_permutex2var_epi32(__A, __I, __B), + (__v16si)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask2_permutex2var_epi32(__m512i __A, __m512i __I, __mmask16 __U, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_permutex2var_epi32(__A, __I, __B), + (__v16si)__I); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutex2var_epi32(__mmask16 __U, __m512i __A, __m512i __I, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_permutex2var_epi32(__A, __I, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_permutex2var_epi64(__m512i __A, __m512i __I, __m512i __B) +{ + return (__m512i)__builtin_ia32_vpermi2varq512((__v8di)__A, (__v8di) __I, + (__v8di) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_permutex2var_epi64(__m512i __A, __mmask8 __U, __m512i __I, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_permutex2var_epi64(__A, __I, __B), + (__v8di)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask2_permutex2var_epi64(__m512i __A, __m512i __I, __mmask8 __U, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_permutex2var_epi64(__A, __I, __B), + (__v8di)__I); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_permutex2var_epi64(__A, __I, __B), + (__v8di)_mm512_setzero_si512()); +} + +#define _mm512_alignr_epi64(A, B, I) \ + ((__m512i)__builtin_ia32_alignq512((__v8di)(__m512i)(A), \ + (__v8di)(__m512i)(B), (int)(I))) + +#define _mm512_mask_alignr_epi64(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_alignr_epi64((A), (B), (imm)), \ + (__v8di)(__m512i)(W))) + +#define _mm512_maskz_alignr_epi64(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_alignr_epi64((A), (B), (imm)), \ + (__v8di)_mm512_setzero_si512())) + +#define _mm512_alignr_epi32(A, B, I) \ + ((__m512i)__builtin_ia32_alignd512((__v16si)(__m512i)(A), \ + (__v16si)(__m512i)(B), (int)(I))) + +#define _mm512_mask_alignr_epi32(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_alignr_epi32((A), (B), (imm)), \ + (__v16si)(__m512i)(W))) + +#define _mm512_maskz_alignr_epi32(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_alignr_epi32((A), (B), (imm)), \ + (__v16si)_mm512_setzero_si512())) +/* Vector Extract */ + +#define _mm512_extractf64x4_pd(A, I) \ + ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(I), \ + (__v4df)_mm256_undefined_pd(), \ + (__mmask8)-1)) + +#define _mm512_mask_extractf64x4_pd(W, U, A, imm) \ + ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(imm), \ + (__v4df)(__m256d)(W), \ + (__mmask8)(U))) + +#define _mm512_maskz_extractf64x4_pd(U, A, imm) \ + ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(imm), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm512_extractf32x4_ps(A, I) \ + ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(I), \ + (__v4sf)_mm_undefined_ps(), \ + (__mmask8)-1)) + +#define _mm512_mask_extractf32x4_ps(W, U, A, imm) \ + ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(imm), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U))) + +#define _mm512_maskz_extractf32x4_ps(U, A, imm) \ + ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(imm), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U))) + +/* Vector Blend */ + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_blend_pd(__mmask8 __U, __m512d __A, __m512d __W) +{ + return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U, + (__v8df) __W, + (__v8df) __A); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_blend_ps(__mmask16 __U, __m512 __A, __m512 __W) +{ + return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U, + (__v16sf) __W, + (__v16sf) __A); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_blend_epi64(__mmask8 __U, __m512i __A, __m512i __W) +{ + return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U, + (__v8di) __W, + (__v8di) __A); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_blend_epi32(__mmask16 __U, __m512i __A, __m512i __W) +{ + return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U, + (__v16si) __W, + (__v16si) __A); +} + +/* Compare */ + +#define _mm512_cmp_round_ps_mask(A, B, P, R) \ + ((__mmask16)__builtin_ia32_cmpps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(P), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_cmp_round_ps_mask(U, A, B, P, R) \ + ((__mmask16)__builtin_ia32_cmpps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(P), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_cmp_ps_mask(A, B, P) \ + _mm512_cmp_round_ps_mask((A), (B), (P), _MM_FROUND_CUR_DIRECTION) +#define _mm512_mask_cmp_ps_mask(U, A, B, P) \ + _mm512_mask_cmp_round_ps_mask((U), (A), (B), (P), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_cmpeq_ps_mask(A, B) \ + _mm512_cmp_ps_mask((A), (B), _CMP_EQ_OQ) +#define _mm512_mask_cmpeq_ps_mask(k, A, B) \ + _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_EQ_OQ) + +#define _mm512_cmplt_ps_mask(A, B) \ + _mm512_cmp_ps_mask((A), (B), _CMP_LT_OS) +#define _mm512_mask_cmplt_ps_mask(k, A, B) \ + _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_LT_OS) + +#define _mm512_cmple_ps_mask(A, B) \ + _mm512_cmp_ps_mask((A), (B), _CMP_LE_OS) +#define _mm512_mask_cmple_ps_mask(k, A, B) \ + _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_LE_OS) + +#define _mm512_cmpunord_ps_mask(A, B) \ + _mm512_cmp_ps_mask((A), (B), _CMP_UNORD_Q) +#define _mm512_mask_cmpunord_ps_mask(k, A, B) \ + _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_UNORD_Q) + +#define _mm512_cmpneq_ps_mask(A, B) \ + _mm512_cmp_ps_mask((A), (B), _CMP_NEQ_UQ) +#define _mm512_mask_cmpneq_ps_mask(k, A, B) \ + _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NEQ_UQ) + +#define _mm512_cmpnlt_ps_mask(A, B) \ + _mm512_cmp_ps_mask((A), (B), _CMP_NLT_US) +#define _mm512_mask_cmpnlt_ps_mask(k, A, B) \ + _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NLT_US) + +#define _mm512_cmpnle_ps_mask(A, B) \ + _mm512_cmp_ps_mask((A), (B), _CMP_NLE_US) +#define _mm512_mask_cmpnle_ps_mask(k, A, B) \ + _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NLE_US) + +#define _mm512_cmpord_ps_mask(A, B) \ + _mm512_cmp_ps_mask((A), (B), _CMP_ORD_Q) +#define _mm512_mask_cmpord_ps_mask(k, A, B) \ + _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_ORD_Q) + +#define _mm512_cmp_round_pd_mask(A, B, P, R) \ + ((__mmask8)__builtin_ia32_cmppd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(P), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cmp_round_pd_mask(U, A, B, P, R) \ + ((__mmask8)__builtin_ia32_cmppd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(P), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_cmp_pd_mask(A, B, P) \ + _mm512_cmp_round_pd_mask((A), (B), (P), _MM_FROUND_CUR_DIRECTION) +#define _mm512_mask_cmp_pd_mask(U, A, B, P) \ + _mm512_mask_cmp_round_pd_mask((U), (A), (B), (P), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_cmpeq_pd_mask(A, B) \ + _mm512_cmp_pd_mask((A), (B), _CMP_EQ_OQ) +#define _mm512_mask_cmpeq_pd_mask(k, A, B) \ + _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_EQ_OQ) + +#define _mm512_cmplt_pd_mask(A, B) \ + _mm512_cmp_pd_mask((A), (B), _CMP_LT_OS) +#define _mm512_mask_cmplt_pd_mask(k, A, B) \ + _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_LT_OS) + +#define _mm512_cmple_pd_mask(A, B) \ + _mm512_cmp_pd_mask((A), (B), _CMP_LE_OS) +#define _mm512_mask_cmple_pd_mask(k, A, B) \ + _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_LE_OS) + +#define _mm512_cmpunord_pd_mask(A, B) \ + _mm512_cmp_pd_mask((A), (B), _CMP_UNORD_Q) +#define _mm512_mask_cmpunord_pd_mask(k, A, B) \ + _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_UNORD_Q) + +#define _mm512_cmpneq_pd_mask(A, B) \ + _mm512_cmp_pd_mask((A), (B), _CMP_NEQ_UQ) +#define _mm512_mask_cmpneq_pd_mask(k, A, B) \ + _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NEQ_UQ) + +#define _mm512_cmpnlt_pd_mask(A, B) \ + _mm512_cmp_pd_mask((A), (B), _CMP_NLT_US) +#define _mm512_mask_cmpnlt_pd_mask(k, A, B) \ + _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NLT_US) + +#define _mm512_cmpnle_pd_mask(A, B) \ + _mm512_cmp_pd_mask((A), (B), _CMP_NLE_US) +#define _mm512_mask_cmpnle_pd_mask(k, A, B) \ + _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NLE_US) + +#define _mm512_cmpord_pd_mask(A, B) \ + _mm512_cmp_pd_mask((A), (B), _CMP_ORD_Q) +#define _mm512_mask_cmpord_pd_mask(k, A, B) \ + _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_ORD_Q) + +/* Conversion */ + +#define _mm512_cvtt_roundps_epu32(A, R) \ + ((__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \ + (__v16si)_mm512_undefined_epi32(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_cvtt_roundps_epu32(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \ + (__v16si)(__m512i)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundps_epu32(U, A, R) \ + ((__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \ + (__v16si)_mm512_setzero_si512(), \ + (__mmask16)(U), (int)(R))) + + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttps_epu32(__m512 __A) +{ + return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A, + (__v16si) + _mm512_setzero_si512 (), + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttps_epu32 (__m512i __W, __mmask16 __U, __m512 __A) +{ + return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A, + (__v16si) __W, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttps_epu32 (__mmask16 __U, __m512 __A) +{ + return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A, + (__v16si) _mm512_setzero_si512 (), + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepi32_ps(A, R) \ + ((__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_cvt_roundepi32_ps(W, U, A, R) \ + ((__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepi32_ps(U, A, R) \ + ((__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_cvt_roundepu32_ps(A, R) \ + ((__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_cvt_roundepu32_ps(W, U, A, R) \ + ((__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepu32_ps(U, A, R) \ + ((__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_cvtepu32_ps (__m512i __A) +{ + return (__m512)__builtin_convertvector((__v16su)__A, __v16sf); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu32_ps (__m512 __W, __mmask16 __U, __m512i __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_cvtepu32_ps(__A), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu32_ps (__mmask16 __U, __m512i __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_cvtepu32_ps(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_cvtepi32_pd(__m256i __A) +{ + return (__m512d)__builtin_convertvector((__v8si)__A, __v8df); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32_pd (__m512d __W, __mmask8 __U, __m256i __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, + (__v8df)_mm512_cvtepi32_pd(__A), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi32_pd (__mmask8 __U, __m256i __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, + (__v8df)_mm512_cvtepi32_pd(__A), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_cvtepi32lo_pd(__m512i __A) +{ + return (__m512d) _mm512_cvtepi32_pd(_mm512_castsi512_si256(__A)); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32lo_pd(__m512d __W, __mmask8 __U,__m512i __A) +{ + return (__m512d) _mm512_mask_cvtepi32_pd(__W, __U, _mm512_castsi512_si256(__A)); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_cvtepi32_ps (__m512i __A) +{ + return (__m512)__builtin_convertvector((__v16si)__A, __v16sf); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32_ps (__m512 __W, __mmask16 __U, __m512i __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_cvtepi32_ps(__A), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi32_ps (__mmask16 __U, __m512i __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_cvtepi32_ps(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_cvtepu32_pd(__m256i __A) +{ + return (__m512d)__builtin_convertvector((__v8su)__A, __v8df); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu32_pd (__m512d __W, __mmask8 __U, __m256i __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, + (__v8df)_mm512_cvtepu32_pd(__A), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu32_pd (__mmask8 __U, __m256i __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, + (__v8df)_mm512_cvtepu32_pd(__A), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_cvtepu32lo_pd(__m512i __A) +{ + return (__m512d) _mm512_cvtepu32_pd(_mm512_castsi512_si256(__A)); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U,__m512i __A) +{ + return (__m512d) _mm512_mask_cvtepu32_pd(__W, __U, _mm512_castsi512_si256(__A)); +} + +#define _mm512_cvt_roundpd_ps(A, R) \ + ((__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundpd_ps(W, U, A, R) \ + ((__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \ + (__v8sf)(__m256)(W), (__mmask8)(U), \ + (int)(R))) + +#define _mm512_maskz_cvt_roundpd_ps(U, A, R) \ + ((__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_cvtpd_ps (__m512d __A) +{ + return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A, + (__v8sf) _mm256_undefined_ps (), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpd_ps (__m256 __W, __mmask8 __U, __m512d __A) +{ + return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A, + (__v8sf) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtpd_ps (__mmask8 __U, __m512d __A) +{ + return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A, + (__v8sf) _mm256_setzero_ps (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_cvtpd_pslo (__m512d __A) +{ + return (__m512) __builtin_shufflevector((__v8sf) _mm512_cvtpd_ps(__A), + (__v8sf) _mm256_setzero_ps (), + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpd_pslo (__m512 __W, __mmask8 __U,__m512d __A) +{ + return (__m512) __builtin_shufflevector ( + (__v8sf) _mm512_mask_cvtpd_ps (_mm512_castps512_ps256(__W), + __U, __A), + (__v8sf) _mm256_setzero_ps (), + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); +} + +#define _mm512_cvt_roundps_ph(A, I) \ + ((__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \ + (__v16hi)_mm256_undefined_si256(), \ + (__mmask16)-1)) + +#define _mm512_mask_cvt_roundps_ph(U, W, A, I) \ + ((__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \ + (__v16hi)(__m256i)(U), \ + (__mmask16)(W))) + +#define _mm512_maskz_cvt_roundps_ph(W, A, I) \ + ((__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \ + (__v16hi)_mm256_setzero_si256(), \ + (__mmask16)(W))) + +#define _mm512_cvtps_ph _mm512_cvt_roundps_ph +#define _mm512_mask_cvtps_ph _mm512_mask_cvt_roundps_ph +#define _mm512_maskz_cvtps_ph _mm512_maskz_cvt_roundps_ph + +#define _mm512_cvt_roundph_ps(A, R) \ + ((__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \ + (__v16sf)_mm512_undefined_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_cvt_roundph_ps(W, U, A, R) \ + ((__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundph_ps(U, A, R) \ + ((__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), (int)(R))) + + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_cvtph_ps(__m256i __A) +{ + return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtph_ps (__m512 __W, __mmask16 __U, __m256i __A) +{ + return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A, + (__v16sf) __W, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtph_ps (__mmask16 __U, __m256i __A) +{ + return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A, + (__v16sf) _mm512_setzero_ps (), + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundpd_epi32(A, R) \ + ((__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \ + (__v8si)_mm256_setzero_si256(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvtt_roundpd_epi32(W, U, A, R) \ + ((__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \ + (__v8si)(__m256i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundpd_epi32(U, A, R) \ + ((__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \ + (__v8si)_mm256_setzero_si256(), \ + (__mmask8)(U), (int)(R))) + +static __inline __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvttpd_epi32(__m512d __a) +{ + return (__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df) __a, + (__v8si)_mm256_setzero_si256(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A) +{ + return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A, + (__v8si) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttpd_epi32 (__mmask8 __U, __m512d __A) +{ + return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A, + (__v8si) _mm256_setzero_si256 (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundps_epi32(A, R) \ + ((__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \ + (__v16si)_mm512_setzero_si512(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_cvtt_roundps_epi32(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \ + (__v16si)(__m512i)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundps_epi32(U, A, R) \ + ((__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \ + (__v16si)_mm512_setzero_si512(), \ + (__mmask16)(U), (int)(R))) + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttps_epi32(__m512 __a) +{ + return (__m512i) + __builtin_ia32_cvttps2dq512_mask((__v16sf) __a, + (__v16si) _mm512_setzero_si512 (), + (__mmask16) -1, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttps_epi32 (__m512i __W, __mmask16 __U, __m512 __A) +{ + return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A, + (__v16si) __W, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttps_epi32 (__mmask16 __U, __m512 __A) +{ + return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A, + (__v16si) _mm512_setzero_si512 (), + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundps_epi32(A, R) \ + ((__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \ + (__v16si)_mm512_setzero_si512(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_cvt_roundps_epi32(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \ + (__v16si)(__m512i)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundps_epi32(U, A, R) \ + ((__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \ + (__v16si)_mm512_setzero_si512(), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtps_epi32 (__m512 __A) +{ + return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A, + (__v16si) _mm512_undefined_epi32 (), + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtps_epi32 (__m512i __W, __mmask16 __U, __m512 __A) +{ + return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A, + (__v16si) __W, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtps_epi32 (__mmask16 __U, __m512 __A) +{ + return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A, + (__v16si) + _mm512_setzero_si512 (), + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundpd_epi32(A, R) \ + ((__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \ + (__v8si)_mm256_setzero_si256(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundpd_epi32(W, U, A, R) \ + ((__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \ + (__v8si)(__m256i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundpd_epi32(U, A, R) \ + ((__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \ + (__v8si)_mm256_setzero_si256(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtpd_epi32 (__m512d __A) +{ + return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A, + (__v8si) + _mm256_undefined_si256 (), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A) +{ + return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A, + (__v8si) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtpd_epi32 (__mmask8 __U, __m512d __A) +{ + return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundps_epu32(A, R) \ + ((__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \ + (__v16si)_mm512_setzero_si512(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_cvt_roundps_epu32(W, U, A, R) \ + ((__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \ + (__v16si)(__m512i)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundps_epu32(U, A, R) \ + ((__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \ + (__v16si)_mm512_setzero_si512(), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtps_epu32 ( __m512 __A) +{ + return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,\ + (__v16si)\ + _mm512_undefined_epi32 (), + (__mmask16) -1,\ + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtps_epu32 (__m512i __W, __mmask16 __U, __m512 __A) +{ + return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A, + (__v16si) __W, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtps_epu32 ( __mmask16 __U, __m512 __A) +{ + return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A, + (__v16si) + _mm512_setzero_si512 (), + (__mmask16) __U , + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundpd_epu32(A, R) \ + ((__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \ + (__v8si)_mm256_setzero_si256(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundpd_epu32(W, U, A, R) \ + ((__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \ + (__v8si)(__m256i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundpd_epu32(U, A, R) \ + ((__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \ + (__v8si)_mm256_setzero_si256(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtpd_epu32 (__m512d __A) +{ + return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A, + (__v8si) + _mm256_undefined_si256 (), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A) +{ + return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A, + (__v8si) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtpd_epu32 (__mmask8 __U, __m512d __A) +{ + return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ double __DEFAULT_FN_ATTRS512 +_mm512_cvtsd_f64(__m512d __a) +{ + return __a[0]; +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_cvtss_f32(__m512 __a) +{ + return __a[0]; +} + +/* Unpack and Interleave */ + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_unpackhi_pd(__m512d __a, __m512d __b) +{ + return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b, + 1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_unpackhi_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, + (__v8df)_mm512_unpackhi_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpackhi_pd(__mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, + (__v8df)_mm512_unpackhi_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_unpacklo_pd(__m512d __a, __m512d __b) +{ + return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b, + 0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_unpacklo_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, + (__v8df)_mm512_unpacklo_pd(__A, __B), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpacklo_pd (__mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, + (__v8df)_mm512_unpacklo_pd(__A, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_unpackhi_ps(__m512 __a, __m512 __b) +{ + return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b, + 2, 18, 3, 19, + 2+4, 18+4, 3+4, 19+4, + 2+8, 18+8, 3+8, 19+8, + 2+12, 18+12, 3+12, 19+12); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_unpackhi_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16) __U, + (__v16sf)_mm512_unpackhi_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpackhi_ps (__mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16) __U, + (__v16sf)_mm512_unpackhi_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_unpacklo_ps(__m512 __a, __m512 __b) +{ + return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b, + 0, 16, 1, 17, + 0+4, 16+4, 1+4, 17+4, + 0+8, 16+8, 1+8, 17+8, + 0+12, 16+12, 1+12, 17+12); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_unpacklo_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16) __U, + (__v16sf)_mm512_unpacklo_ps(__A, __B), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpacklo_ps (__mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16) __U, + (__v16sf)_mm512_unpacklo_ps(__A, __B), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_unpackhi_epi32(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B, + 2, 18, 3, 19, + 2+4, 18+4, 3+4, 19+4, + 2+8, 18+8, 3+8, 19+8, + 2+12, 18+12, 3+12, 19+12); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_unpackhi_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U, + (__v16si)_mm512_unpackhi_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpackhi_epi32(__mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U, + (__v16si)_mm512_unpackhi_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_unpacklo_epi32(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B, + 0, 16, 1, 17, + 0+4, 16+4, 1+4, 17+4, + 0+8, 16+8, 1+8, 17+8, + 0+12, 16+12, 1+12, 17+12); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_unpacklo_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U, + (__v16si)_mm512_unpacklo_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpacklo_epi32(__mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U, + (__v16si)_mm512_unpacklo_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_unpackhi_epi64(__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B, + 1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_unpackhi_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U, + (__v8di)_mm512_unpackhi_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpackhi_epi64(__mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U, + (__v8di)_mm512_unpackhi_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_unpacklo_epi64 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B, + 0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_unpacklo_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U, + (__v8di)_mm512_unpacklo_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_unpacklo_epi64 (__mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U, + (__v8di)_mm512_unpacklo_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + + +/* SIMD load ops */ + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_loadu_si512 (void const *__P) +{ + struct __loadu_si512 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_si512*)__P)->__v; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_loadu_epi32 (void const *__P) +{ + struct __loadu_epi32 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi32*)__P)->__v; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_loadu_epi32 (__m512i __W, __mmask16 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *) __P, + (__v16si) __W, + (__mmask16) __U); +} + + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_loadu_epi32(__mmask16 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *)__P, + (__v16si) + _mm512_setzero_si512 (), + (__mmask16) __U); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_loadu_epi64 (void const *__P) +{ + struct __loadu_epi64 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi64*)__P)->__v; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_loadu_epi64 (__m512i __W, __mmask8 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *) __P, + (__v8di) __W, + (__mmask8) __U); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_loadu_epi64(__mmask8 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *)__P, + (__v8di) + _mm512_setzero_si512 (), + (__mmask8) __U); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_loadu_ps (__m512 __W, __mmask16 __U, void const *__P) +{ + return (__m512) __builtin_ia32_loadups512_mask ((const float *) __P, + (__v16sf) __W, + (__mmask16) __U); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_loadu_ps(__mmask16 __U, void const *__P) +{ + return (__m512) __builtin_ia32_loadups512_mask ((const float *)__P, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) __U); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_loadu_pd (__m512d __W, __mmask8 __U, void const *__P) +{ + return (__m512d) __builtin_ia32_loadupd512_mask ((const double *) __P, + (__v8df) __W, + (__mmask8) __U); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_loadu_pd(__mmask8 __U, void const *__P) +{ + return (__m512d) __builtin_ia32_loadupd512_mask ((const double *)__P, + (__v8df) + _mm512_setzero_pd (), + (__mmask8) __U); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_loadu_pd(void const *__p) +{ + struct __loadu_pd { + __m512d_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_pd*)__p)->__v; +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_loadu_ps(void const *__p) +{ + struct __loadu_ps { + __m512_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_ps*)__p)->__v; +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_load_ps(void const *__p) +{ + return *(const __m512*)__p; +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_load_ps (__m512 __W, __mmask16 __U, void const *__P) +{ + return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *) __P, + (__v16sf) __W, + (__mmask16) __U); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_load_ps(__mmask16 __U, void const *__P) +{ + return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *)__P, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) __U); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_load_pd(void const *__p) +{ + return *(const __m512d*)__p; +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_load_pd (__m512d __W, __mmask8 __U, void const *__P) +{ + return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *) __P, + (__v8df) __W, + (__mmask8) __U); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_load_pd(__mmask8 __U, void const *__P) +{ + return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *)__P, + (__v8df) + _mm512_setzero_pd (), + (__mmask8) __U); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_load_si512 (void const *__P) +{ + return *(const __m512i *) __P; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_load_epi32 (void const *__P) +{ + return *(const __m512i *) __P; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_load_epi64 (void const *__P) +{ + return *(const __m512i *) __P; +} + +/* SIMD store ops */ + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_storeu_epi64 (void *__P, __m512i __A) +{ + struct __storeu_epi64 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi64*)__P)->__v = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_mask_storeu_epi64(void *__P, __mmask8 __U, __m512i __A) +{ + __builtin_ia32_storedqudi512_mask ((long long *)__P, (__v8di) __A, + (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_storeu_si512 (void *__P, __m512i __A) +{ + struct __storeu_si512 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_si512*)__P)->__v = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_storeu_epi32 (void *__P, __m512i __A) +{ + struct __storeu_epi32 { + __m512i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi32*)__P)->__v = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_mask_storeu_epi32(void *__P, __mmask16 __U, __m512i __A) +{ + __builtin_ia32_storedqusi512_mask ((int *)__P, (__v16si) __A, + (__mmask16) __U); +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_mask_storeu_pd(void *__P, __mmask8 __U, __m512d __A) +{ + __builtin_ia32_storeupd512_mask ((double *)__P, (__v8df) __A, (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_storeu_pd(void *__P, __m512d __A) +{ + struct __storeu_pd { + __m512d_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_pd*)__P)->__v = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_mask_storeu_ps(void *__P, __mmask16 __U, __m512 __A) +{ + __builtin_ia32_storeups512_mask ((float *)__P, (__v16sf) __A, + (__mmask16) __U); +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_storeu_ps(void *__P, __m512 __A) +{ + struct __storeu_ps { + __m512_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_ps*)__P)->__v = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_mask_store_pd(void *__P, __mmask8 __U, __m512d __A) +{ + __builtin_ia32_storeapd512_mask ((__v8df *)__P, (__v8df) __A, (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_store_pd(void *__P, __m512d __A) +{ + *(__m512d*)__P = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_mask_store_ps(void *__P, __mmask16 __U, __m512 __A) +{ + __builtin_ia32_storeaps512_mask ((__v16sf *)__P, (__v16sf) __A, + (__mmask16) __U); +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_store_ps(void *__P, __m512 __A) +{ + *(__m512*)__P = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_store_si512 (void *__P, __m512i __A) +{ + *(__m512i *) __P = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_store_epi32 (void *__P, __m512i __A) +{ + *(__m512i *) __P = __A; +} + +static __inline void __DEFAULT_FN_ATTRS512 +_mm512_store_epi64 (void *__P, __m512i __A) +{ + *(__m512i *) __P = __A; +} + +/* Mask ops */ + +static __inline __mmask16 __DEFAULT_FN_ATTRS +_mm512_knot(__mmask16 __M) +{ + return __builtin_ia32_knothi(__M); +} + +/* Integer compare */ + +#define _mm512_cmpeq_epi32_mask(A, B) \ + _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_EQ) +#define _mm512_mask_cmpeq_epi32_mask(k, A, B) \ + _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm512_cmpge_epi32_mask(A, B) \ + _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_GE) +#define _mm512_mask_cmpge_epi32_mask(k, A, B) \ + _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm512_cmpgt_epi32_mask(A, B) \ + _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_GT) +#define _mm512_mask_cmpgt_epi32_mask(k, A, B) \ + _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm512_cmple_epi32_mask(A, B) \ + _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_LE) +#define _mm512_mask_cmple_epi32_mask(k, A, B) \ + _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm512_cmplt_epi32_mask(A, B) \ + _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_LT) +#define _mm512_mask_cmplt_epi32_mask(k, A, B) \ + _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm512_cmpneq_epi32_mask(A, B) \ + _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_NE) +#define _mm512_mask_cmpneq_epi32_mask(k, A, B) \ + _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm512_cmpeq_epu32_mask(A, B) \ + _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_EQ) +#define _mm512_mask_cmpeq_epu32_mask(k, A, B) \ + _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm512_cmpge_epu32_mask(A, B) \ + _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_GE) +#define _mm512_mask_cmpge_epu32_mask(k, A, B) \ + _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm512_cmpgt_epu32_mask(A, B) \ + _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_GT) +#define _mm512_mask_cmpgt_epu32_mask(k, A, B) \ + _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm512_cmple_epu32_mask(A, B) \ + _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_LE) +#define _mm512_mask_cmple_epu32_mask(k, A, B) \ + _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm512_cmplt_epu32_mask(A, B) \ + _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_LT) +#define _mm512_mask_cmplt_epu32_mask(k, A, B) \ + _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm512_cmpneq_epu32_mask(A, B) \ + _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_NE) +#define _mm512_mask_cmpneq_epu32_mask(k, A, B) \ + _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm512_cmpeq_epi64_mask(A, B) \ + _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_EQ) +#define _mm512_mask_cmpeq_epi64_mask(k, A, B) \ + _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm512_cmpge_epi64_mask(A, B) \ + _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_GE) +#define _mm512_mask_cmpge_epi64_mask(k, A, B) \ + _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm512_cmpgt_epi64_mask(A, B) \ + _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_GT) +#define _mm512_mask_cmpgt_epi64_mask(k, A, B) \ + _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm512_cmple_epi64_mask(A, B) \ + _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_LE) +#define _mm512_mask_cmple_epi64_mask(k, A, B) \ + _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm512_cmplt_epi64_mask(A, B) \ + _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_LT) +#define _mm512_mask_cmplt_epi64_mask(k, A, B) \ + _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm512_cmpneq_epi64_mask(A, B) \ + _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_NE) +#define _mm512_mask_cmpneq_epi64_mask(k, A, B) \ + _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm512_cmpeq_epu64_mask(A, B) \ + _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_EQ) +#define _mm512_mask_cmpeq_epu64_mask(k, A, B) \ + _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm512_cmpge_epu64_mask(A, B) \ + _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_GE) +#define _mm512_mask_cmpge_epu64_mask(k, A, B) \ + _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm512_cmpgt_epu64_mask(A, B) \ + _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_GT) +#define _mm512_mask_cmpgt_epu64_mask(k, A, B) \ + _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm512_cmple_epu64_mask(A, B) \ + _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_LE) +#define _mm512_mask_cmple_epu64_mask(k, A, B) \ + _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm512_cmplt_epu64_mask(A, B) \ + _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_LT) +#define _mm512_mask_cmplt_epu64_mask(k, A, B) \ + _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm512_cmpneq_epu64_mask(A, B) \ + _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_NE) +#define _mm512_mask_cmpneq_epu64_mask(k, A, B) \ + _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_NE) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi8_epi32(__m128i __A) +{ + /* This function always performs a signed extension, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m512i)__builtin_convertvector((__v16qs)__A, __v16si); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi8_epi32(__m512i __W, __mmask16 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_cvtepi8_epi32(__A), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi8_epi32(__mmask16 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_cvtepi8_epi32(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi8_epi64(__m128i __A) +{ + /* This function always performs a signed extension, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__A, (__v16qs)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi8_epi64(__m512i __W, __mmask8 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepi8_epi64(__A), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepi8_epi64(__A), + (__v8di)_mm512_setzero_si512 ()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi32_epi64(__m256i __X) +{ + return (__m512i)__builtin_convertvector((__v8si)__X, __v8di); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32_epi64(__m512i __W, __mmask8 __U, __m256i __X) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepi32_epi64(__X), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi32_epi64(__mmask8 __U, __m256i __X) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepi32_epi64(__X), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi16_epi32(__m256i __A) +{ + return (__m512i)__builtin_convertvector((__v16hi)__A, __v16si); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi16_epi32(__m512i __W, __mmask16 __U, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_cvtepi16_epi32(__A), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi16_epi32(__mmask16 __U, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_cvtepi16_epi32(__A), + (__v16si)_mm512_setzero_si512 ()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi16_epi64(__m128i __A) +{ + return (__m512i)__builtin_convertvector((__v8hi)__A, __v8di); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi16_epi64(__m512i __W, __mmask8 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepi16_epi64(__A), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepi16_epi64(__A), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepu8_epi32(__m128i __A) +{ + return (__m512i)__builtin_convertvector((__v16qu)__A, __v16si); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu8_epi32(__m512i __W, __mmask16 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_cvtepu8_epi32(__A), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu8_epi32(__mmask16 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_cvtepu8_epi32(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepu8_epi64(__m128i __A) +{ + return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__A, (__v16qu)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu8_epi64(__m512i __W, __mmask8 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepu8_epi64(__A), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepu8_epi64(__A), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepu32_epi64(__m256i __X) +{ + return (__m512i)__builtin_convertvector((__v8su)__X, __v8di); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu32_epi64(__m512i __W, __mmask8 __U, __m256i __X) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepu32_epi64(__X), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu32_epi64(__mmask8 __U, __m256i __X) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepu32_epi64(__X), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepu16_epi32(__m256i __A) +{ + return (__m512i)__builtin_convertvector((__v16hu)__A, __v16si); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu16_epi32(__m512i __W, __mmask16 __U, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_cvtepu16_epi32(__A), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu16_epi32(__mmask16 __U, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_cvtepu16_epi32(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtepu16_epi64(__m128i __A) +{ + return (__m512i)__builtin_convertvector((__v8hu)__A, __v8di); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu16_epi64(__m512i __W, __mmask8 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepu16_epi64(__A), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_cvtepu16_epi64(__A), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_rorv_epi32 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_prorvd512((__v16si)__A, (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_rorv_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_rorv_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_rorv_epi64 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_prorvq512((__v8di)__A, (__v8di)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_rorv_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_rorv_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + + + +#define _mm512_cmp_epi32_mask(a, b, p) \ + ((__mmask16)__builtin_ia32_cmpd512_mask((__v16si)(__m512i)(a), \ + (__v16si)(__m512i)(b), (int)(p), \ + (__mmask16)-1)) + +#define _mm512_cmp_epu32_mask(a, b, p) \ + ((__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)(__m512i)(a), \ + (__v16si)(__m512i)(b), (int)(p), \ + (__mmask16)-1)) + +#define _mm512_cmp_epi64_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpq512_mask((__v8di)(__m512i)(a), \ + (__v8di)(__m512i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm512_cmp_epu64_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)(__m512i)(a), \ + (__v8di)(__m512i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm512_mask_cmp_epi32_mask(m, a, b, p) \ + ((__mmask16)__builtin_ia32_cmpd512_mask((__v16si)(__m512i)(a), \ + (__v16si)(__m512i)(b), (int)(p), \ + (__mmask16)(m))) + +#define _mm512_mask_cmp_epu32_mask(m, a, b, p) \ + ((__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)(__m512i)(a), \ + (__v16si)(__m512i)(b), (int)(p), \ + (__mmask16)(m))) + +#define _mm512_mask_cmp_epi64_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpq512_mask((__v8di)(__m512i)(a), \ + (__v8di)(__m512i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm512_mask_cmp_epu64_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)(__m512i)(a), \ + (__v8di)(__m512i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm512_rol_epi32(a, b) \ + ((__m512i)__builtin_ia32_prold512((__v16si)(__m512i)(a), (int)(b))) + +#define _mm512_mask_rol_epi32(W, U, a, b) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_rol_epi32((a), (b)), \ + (__v16si)(__m512i)(W))) + +#define _mm512_maskz_rol_epi32(U, a, b) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_rol_epi32((a), (b)), \ + (__v16si)_mm512_setzero_si512())) + +#define _mm512_rol_epi64(a, b) \ + ((__m512i)__builtin_ia32_prolq512((__v8di)(__m512i)(a), (int)(b))) + +#define _mm512_mask_rol_epi64(W, U, a, b) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_rol_epi64((a), (b)), \ + (__v8di)(__m512i)(W))) + +#define _mm512_maskz_rol_epi64(U, a, b) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_rol_epi64((a), (b)), \ + (__v8di)_mm512_setzero_si512())) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_rolv_epi32 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_prolvd512((__v16si)__A, (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_rolv_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_rolv_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_rolv_epi64 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_prolvq512((__v8di)__A, (__v8di)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_rolv_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_rolv_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +#define _mm512_ror_epi32(A, B) \ + ((__m512i)__builtin_ia32_prord512((__v16si)(__m512i)(A), (int)(B))) + +#define _mm512_mask_ror_epi32(W, U, A, B) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_ror_epi32((A), (B)), \ + (__v16si)(__m512i)(W))) + +#define _mm512_maskz_ror_epi32(U, A, B) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_ror_epi32((A), (B)), \ + (__v16si)_mm512_setzero_si512())) + +#define _mm512_ror_epi64(A, B) \ + ((__m512i)__builtin_ia32_prorq512((__v8di)(__m512i)(A), (int)(B))) + +#define _mm512_mask_ror_epi64(W, U, A, B) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_ror_epi64((A), (B)), \ + (__v8di)(__m512i)(W))) + +#define _mm512_maskz_ror_epi64(U, A, B) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_ror_epi64((A), (B)), \ + (__v8di)_mm512_setzero_si512())) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_slli_epi32(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_pslldi512((__v16si)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_slli_epi32(__m512i __W, __mmask16 __U, __m512i __A, + unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_slli_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_slli_epi32(__mmask16 __U, __m512i __A, unsigned int __B) { + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_slli_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_slli_epi64(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_psllqi512((__v8di)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_slli_epi64(__m512i __W, __mmask8 __U, __m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_slli_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_slli_epi64(__mmask8 __U, __m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_slli_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srli_epi32(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_psrldi512((__v16si)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srli_epi32(__m512i __W, __mmask16 __U, __m512i __A, + unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srli_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srli_epi32(__mmask16 __U, __m512i __A, unsigned int __B) { + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srli_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srli_epi64(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_psrlqi512((__v8di)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srli_epi64(__m512i __W, __mmask8 __U, __m512i __A, + unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srli_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srli_epi64(__mmask8 __U, __m512i __A, + unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srli_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_load_epi32 (__m512i __W, __mmask16 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P, + (__v16si) __W, + (__mmask16) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_load_epi32 (__mmask16 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P, + (__v16si) + _mm512_setzero_si512 (), + (__mmask16) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_store_epi32 (void *__P, __mmask16 __U, __m512i __A) +{ + __builtin_ia32_movdqa32store512_mask ((__v16si *) __P, (__v16si) __A, + (__mmask16) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mov_epi32 (__m512i __W, __mmask16 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U, + (__v16si) __A, + (__v16si) __W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mov_epi32 (__mmask16 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U, + (__v16si) __A, + (__v16si) _mm512_setzero_si512 ()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_mov_epi64 (__m512i __W, __mmask8 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U, + (__v8di) __A, + (__v8di) __W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_mov_epi64 (__mmask8 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U, + (__v8di) __A, + (__v8di) _mm512_setzero_si512 ()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_load_epi64 (__m512i __W, __mmask8 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P, + (__v8di) __W, + (__mmask8) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_load_epi64 (__mmask8 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P, + (__v8di) + _mm512_setzero_si512 (), + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_store_epi64 (void *__P, __mmask8 __U, __m512i __A) +{ + __builtin_ia32_movdqa64store512_mask ((__v8di *) __P, (__v8di) __A, + (__mmask8) __U); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_movedup_pd (__m512d __A) +{ + return (__m512d)__builtin_shufflevector((__v8df)__A, (__v8df)__A, + 0, 0, 2, 2, 4, 4, 6, 6); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_movedup_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_movedup_pd(__A), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_movedup_pd (__mmask8 __U, __m512d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_movedup_pd(__A), + (__v8df)_mm512_setzero_pd()); +} + +#define _mm512_fixupimm_round_pd(A, B, C, imm, R) \ + ((__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8di)(__m512i)(C), (int)(imm), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_fixupimm_round_pd(A, U, B, C, imm, R) \ + ((__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8di)(__m512i)(C), (int)(imm), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_fixupimm_pd(A, B, C, imm) \ + ((__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8di)(__m512i)(C), (int)(imm), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_fixupimm_pd(A, U, B, C, imm) \ + ((__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8di)(__m512i)(C), (int)(imm), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_fixupimm_round_pd(U, A, B, C, imm, R) \ + ((__m512d)__builtin_ia32_fixupimmpd512_maskz((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8di)(__m512i)(C), \ + (int)(imm), (__mmask8)(U), \ + (int)(R))) + +#define _mm512_maskz_fixupimm_pd(U, A, B, C, imm) \ + ((__m512d)__builtin_ia32_fixupimmpd512_maskz((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8di)(__m512i)(C), \ + (int)(imm), (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_fixupimm_round_ps(A, B, C, imm, R) \ + ((__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16si)(__m512i)(C), (int)(imm), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_fixupimm_round_ps(A, U, B, C, imm, R) \ + ((__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16si)(__m512i)(C), (int)(imm), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_fixupimm_ps(A, B, C, imm) \ + ((__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16si)(__m512i)(C), (int)(imm), \ + (__mmask16)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_fixupimm_ps(A, U, B, C, imm) \ + ((__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16si)(__m512i)(C), (int)(imm), \ + (__mmask16)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_fixupimm_round_ps(U, A, B, C, imm, R) \ + ((__m512)__builtin_ia32_fixupimmps512_maskz((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16si)(__m512i)(C), \ + (int)(imm), (__mmask16)(U), \ + (int)(R))) + +#define _mm512_maskz_fixupimm_ps(U, A, B, C, imm) \ + ((__m512)__builtin_ia32_fixupimmps512_maskz((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16si)(__m512i)(C), \ + (int)(imm), (__mmask16)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_fixupimm_round_sd(A, B, C, imm, R) \ + ((__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), (int)(imm), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_fixupimm_round_sd(A, U, B, C, imm, R) \ + ((__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), (int)(imm), \ + (__mmask8)(U), (int)(R))) + +#define _mm_fixupimm_sd(A, B, C, imm) \ + ((__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), (int)(imm), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_fixupimm_sd(A, U, B, C, imm) \ + ((__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), (int)(imm), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_fixupimm_round_sd(U, A, B, C, imm, R) \ + ((__m128d)__builtin_ia32_fixupimmsd_maskz((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), (int)(imm), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_fixupimm_sd(U, A, B, C, imm) \ + ((__m128d)__builtin_ia32_fixupimmsd_maskz((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), (int)(imm), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_fixupimm_round_ss(A, B, C, imm, R) \ + ((__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_fixupimm_round_ss(A, U, B, C, imm, R) \ + ((__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)(U), (int)(R))) + +#define _mm_fixupimm_ss(A, B, C, imm) \ + ((__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_fixupimm_ss(A, U, B, C, imm) \ + ((__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_fixupimm_round_ss(U, A, B, C, imm, R) \ + ((__m128)__builtin_ia32_fixupimmss_maskz((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_fixupimm_ss(U, A, B, C, imm) \ + ((__m128)__builtin_ia32_fixupimmss_maskz((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_getexp_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_getexp_sd (__m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_getexpsd128_round_mask ((__v2df) __A, + (__v2df) __B, (__v2df) _mm_setzero_pd(), (__mmask8) -1, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_getexp_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_getexpsd128_round_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask_getexp_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_getexp_sd (__mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_getexpsd128_round_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) _mm_setzero_pd (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_getexp_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +#define _mm_getexp_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_getexp_ss (__m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A, + (__v4sf) __B, (__v4sf) _mm_setzero_ps(), (__mmask8) -1, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_getexp_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask_getexp_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_getexp_ss (__mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) _mm_setzero_ps (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_getexp_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +#define _mm_getmant_round_sd(A, B, C, D, R) \ + ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (int)(((D)<<2) | (C)), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_getmant_sd(A, B, C, D) \ + ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (int)(((D)<<2) | (C)), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_getmant_sd(W, U, A, B, C, D) \ + ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (int)(((D)<<2) | (C)), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_getmant_round_sd(W, U, A, B, C, D, R) \ + ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (int)(((D)<<2) | (C)), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_getmant_sd(U, A, B, C, D) \ + ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (int)(((D)<<2) | (C)), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_getmant_round_sd(U, A, B, C, D, R) \ + ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (int)(((D)<<2) | (C)), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +#define _mm_getmant_round_ss(A, B, C, D, R) \ + ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (int)(((D)<<2) | (C)), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_getmant_ss(A, B, C, D) \ + ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (int)(((D)<<2) | (C)), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_getmant_ss(W, U, A, B, C, D) \ + ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (int)(((D)<<2) | (C)), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_getmant_round_ss(W, U, A, B, C, D, R) \ + ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (int)(((D)<<2) | (C)), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_getmant_ss(U, A, B, C, D) \ + ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (int)(((D)<<2) | (C)), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_getmant_round_ss(U, A, B, C, D, R) \ + ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (int)(((D)<<2) | (C)), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_mm512_kmov (__mmask16 __A) +{ + return __A; +} + +#define _mm_comi_round_sd(A, B, P, R) \ + ((int)__builtin_ia32_vcomisd((__v2df)(__m128d)(A), (__v2df)(__m128d)(B), \ + (int)(P), (int)(R))) + +#define _mm_comi_round_ss(A, B, P, R) \ + ((int)__builtin_ia32_vcomiss((__v4sf)(__m128)(A), (__v4sf)(__m128)(B), \ + (int)(P), (int)(R))) + +#ifdef __x86_64__ +#define _mm_cvt_roundsd_si64(A, R) \ + ((long long)__builtin_ia32_vcvtsd2si64((__v2df)(__m128d)(A), (int)(R))) +#endif + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sll_epi32(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_pslld512((__v16si) __A, (__v4si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sll_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_sll_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sll_epi32(__mmask16 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_sll_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sll_epi64(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_psllq512((__v8di)__A, (__v2di)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sll_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_sll_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sll_epi64(__mmask8 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_sll_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sllv_epi32(__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_psllv16si((__v16si)__X, (__v16si)__Y); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sllv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_sllv_epi32(__X, __Y), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sllv_epi32(__mmask16 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_sllv_epi32(__X, __Y), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sllv_epi64(__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_psllv8di((__v8di)__X, (__v8di)__Y); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sllv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_sllv_epi64(__X, __Y), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sllv_epi64(__mmask8 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_sllv_epi64(__X, __Y), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sra_epi32(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_psrad512((__v16si) __A, (__v4si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sra_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_sra_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sra_epi32(__mmask16 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_sra_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_sra_epi64(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_psraq512((__v8di)__A, (__v2di)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_sra_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_sra_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_sra_epi64(__mmask8 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_sra_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srav_epi32(__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_psrav16si((__v16si)__X, (__v16si)__Y); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srav_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srav_epi32(__X, __Y), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srav_epi32(__mmask16 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srav_epi32(__X, __Y), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srav_epi64(__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_psrav8di((__v8di)__X, (__v8di)__Y); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srav_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srav_epi64(__X, __Y), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srav_epi64(__mmask8 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srav_epi64(__X, __Y), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srl_epi32(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_psrld512((__v16si) __A, (__v4si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srl_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srl_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srl_epi32(__mmask16 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srl_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srl_epi64(__m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_psrlq512((__v8di)__A, (__v2di)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srl_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srl_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srl_epi64(__mmask8 __U, __m512i __A, __m128i __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srl_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srlv_epi32(__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_psrlv16si((__v16si)__X, (__v16si)__Y); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srlv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srlv_epi32(__X, __Y), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srlv_epi32(__mmask16 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srlv_epi32(__X, __Y), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srlv_epi64 (__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_psrlv8di((__v8di)__X, (__v8di)__Y); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srlv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srlv_epi64(__X, __Y), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srlv_epi64(__mmask8 __U, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srlv_epi64(__X, __Y), + (__v8di)_mm512_setzero_si512()); +} + +/// \enum _MM_TERNLOG_ENUM +/// A helper to represent the ternary logic operations among vector \a A, +/// \a B and \a C. The representation is passed to \a imm. +typedef enum { + _MM_TERNLOG_A = 0xF0, + _MM_TERNLOG_B = 0xCC, + _MM_TERNLOG_C = 0xAA +} _MM_TERNLOG_ENUM; + +#define _mm512_ternarylogic_epi32(A, B, C, imm) \ + ((__m512i)__builtin_ia32_pternlogd512_mask( \ + (__v16si)(__m512i)(A), (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), \ + (unsigned char)(imm), (__mmask16)-1)) + +#define _mm512_mask_ternarylogic_epi32(A, U, B, C, imm) \ + ((__m512i)__builtin_ia32_pternlogd512_mask( \ + (__v16si)(__m512i)(A), (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), \ + (unsigned char)(imm), (__mmask16)(U))) + +#define _mm512_maskz_ternarylogic_epi32(U, A, B, C, imm) \ + ((__m512i)__builtin_ia32_pternlogd512_maskz( \ + (__v16si)(__m512i)(A), (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), \ + (unsigned char)(imm), (__mmask16)(U))) + +#define _mm512_ternarylogic_epi64(A, B, C, imm) \ + ((__m512i)__builtin_ia32_pternlogq512_mask( \ + (__v8di)(__m512i)(A), (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), \ + (unsigned char)(imm), (__mmask8)-1)) + +#define _mm512_mask_ternarylogic_epi64(A, U, B, C, imm) \ + ((__m512i)__builtin_ia32_pternlogq512_mask( \ + (__v8di)(__m512i)(A), (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm512_maskz_ternarylogic_epi64(U, A, B, C, imm) \ + ((__m512i)__builtin_ia32_pternlogq512_maskz( \ + (__v8di)(__m512i)(A), (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#ifdef __x86_64__ +#define _mm_cvt_roundsd_i64(A, R) \ + ((long long)__builtin_ia32_vcvtsd2si64((__v2df)(__m128d)(A), (int)(R))) +#endif + +#define _mm_cvt_roundsd_si32(A, R) \ + ((int)__builtin_ia32_vcvtsd2si32((__v2df)(__m128d)(A), (int)(R))) + +#define _mm_cvt_roundsd_i32(A, R) \ + ((int)__builtin_ia32_vcvtsd2si32((__v2df)(__m128d)(A), (int)(R))) + +#define _mm_cvt_roundsd_u32(A, R) \ + ((unsigned int)__builtin_ia32_vcvtsd2usi32((__v2df)(__m128d)(A), (int)(R))) + +static __inline__ unsigned __DEFAULT_FN_ATTRS128 +_mm_cvtsd_u32 (__m128d __A) +{ + return (unsigned) __builtin_ia32_vcvtsd2usi32 ((__v2df) __A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvt_roundsd_u64(A, R) \ + ((unsigned long long)__builtin_ia32_vcvtsd2usi64((__v2df)(__m128d)(A), \ + (int)(R))) + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 +_mm_cvtsd_u64 (__m128d __A) +{ + return (unsigned long long) __builtin_ia32_vcvtsd2usi64 ((__v2df) + __A, + _MM_FROUND_CUR_DIRECTION); +} +#endif + +#define _mm_cvt_roundss_si32(A, R) \ + ((int)__builtin_ia32_vcvtss2si32((__v4sf)(__m128)(A), (int)(R))) + +#define _mm_cvt_roundss_i32(A, R) \ + ((int)__builtin_ia32_vcvtss2si32((__v4sf)(__m128)(A), (int)(R))) + +#ifdef __x86_64__ +#define _mm_cvt_roundss_si64(A, R) \ + ((long long)__builtin_ia32_vcvtss2si64((__v4sf)(__m128)(A), (int)(R))) + +#define _mm_cvt_roundss_i64(A, R) \ + ((long long)__builtin_ia32_vcvtss2si64((__v4sf)(__m128)(A), (int)(R))) +#endif + +#define _mm_cvt_roundss_u32(A, R) \ + ((unsigned int)__builtin_ia32_vcvtss2usi32((__v4sf)(__m128)(A), (int)(R))) + +static __inline__ unsigned __DEFAULT_FN_ATTRS128 +_mm_cvtss_u32 (__m128 __A) +{ + return (unsigned) __builtin_ia32_vcvtss2usi32 ((__v4sf) __A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvt_roundss_u64(A, R) \ + ((unsigned long long)__builtin_ia32_vcvtss2usi64((__v4sf)(__m128)(A), \ + (int)(R))) + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 +_mm_cvtss_u64 (__m128 __A) +{ + return (unsigned long long) __builtin_ia32_vcvtss2usi64 ((__v4sf) + __A, + _MM_FROUND_CUR_DIRECTION); +} +#endif + +#define _mm_cvtt_roundsd_i32(A, R) \ + ((int)__builtin_ia32_vcvttsd2si32((__v2df)(__m128d)(A), (int)(R))) + +#define _mm_cvtt_roundsd_si32(A, R) \ + ((int)__builtin_ia32_vcvttsd2si32((__v2df)(__m128d)(A), (int)(R))) + +static __inline__ int __DEFAULT_FN_ATTRS128 +_mm_cvttsd_i32 (__m128d __A) +{ + return (int) __builtin_ia32_vcvttsd2si32 ((__v2df) __A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvtt_roundsd_si64(A, R) \ + ((long long)__builtin_ia32_vcvttsd2si64((__v2df)(__m128d)(A), (int)(R))) + +#define _mm_cvtt_roundsd_i64(A, R) \ + ((long long)__builtin_ia32_vcvttsd2si64((__v2df)(__m128d)(A), (int)(R))) + +static __inline__ long long __DEFAULT_FN_ATTRS128 +_mm_cvttsd_i64 (__m128d __A) +{ + return (long long) __builtin_ia32_vcvttsd2si64 ((__v2df) __A, + _MM_FROUND_CUR_DIRECTION); +} +#endif + +#define _mm_cvtt_roundsd_u32(A, R) \ + ((unsigned int)__builtin_ia32_vcvttsd2usi32((__v2df)(__m128d)(A), (int)(R))) + +static __inline__ unsigned __DEFAULT_FN_ATTRS128 +_mm_cvttsd_u32 (__m128d __A) +{ + return (unsigned) __builtin_ia32_vcvttsd2usi32 ((__v2df) __A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvtt_roundsd_u64(A, R) \ + ((unsigned long long)__builtin_ia32_vcvttsd2usi64((__v2df)(__m128d)(A), \ + (int)(R))) + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 +_mm_cvttsd_u64 (__m128d __A) +{ + return (unsigned long long) __builtin_ia32_vcvttsd2usi64 ((__v2df) + __A, + _MM_FROUND_CUR_DIRECTION); +} +#endif + +#define _mm_cvtt_roundss_i32(A, R) \ + ((int)__builtin_ia32_vcvttss2si32((__v4sf)(__m128)(A), (int)(R))) + +#define _mm_cvtt_roundss_si32(A, R) \ + ((int)__builtin_ia32_vcvttss2si32((__v4sf)(__m128)(A), (int)(R))) + +static __inline__ int __DEFAULT_FN_ATTRS128 +_mm_cvttss_i32 (__m128 __A) +{ + return (int) __builtin_ia32_vcvttss2si32 ((__v4sf) __A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvtt_roundss_i64(A, R) \ + ((long long)__builtin_ia32_vcvttss2si64((__v4sf)(__m128)(A), (int)(R))) + +#define _mm_cvtt_roundss_si64(A, R) \ + ((long long)__builtin_ia32_vcvttss2si64((__v4sf)(__m128)(A), (int)(R))) + +static __inline__ long long __DEFAULT_FN_ATTRS128 +_mm_cvttss_i64 (__m128 __A) +{ + return (long long) __builtin_ia32_vcvttss2si64 ((__v4sf) __A, + _MM_FROUND_CUR_DIRECTION); +} +#endif + +#define _mm_cvtt_roundss_u32(A, R) \ + ((unsigned int)__builtin_ia32_vcvttss2usi32((__v4sf)(__m128)(A), (int)(R))) + +static __inline__ unsigned __DEFAULT_FN_ATTRS128 +_mm_cvttss_u32 (__m128 __A) +{ + return (unsigned) __builtin_ia32_vcvttss2usi32 ((__v4sf) __A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvtt_roundss_u64(A, R) \ + ((unsigned long long)__builtin_ia32_vcvttss2usi64((__v4sf)(__m128)(A), \ + (int)(R))) + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 +_mm_cvttss_u64 (__m128 __A) +{ + return (unsigned long long) __builtin_ia32_vcvttss2usi64 ((__v4sf) + __A, + _MM_FROUND_CUR_DIRECTION); +} +#endif + +#define _mm512_permute_pd(X, C) \ + ((__m512d)__builtin_ia32_vpermilpd512((__v8df)(__m512d)(X), (int)(C))) + +#define _mm512_mask_permute_pd(W, U, X, C) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_permute_pd((X), (C)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_permute_pd(U, X, C) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_permute_pd((X), (C)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_permute_ps(X, C) \ + ((__m512)__builtin_ia32_vpermilps512((__v16sf)(__m512)(X), (int)(C))) + +#define _mm512_mask_permute_ps(W, U, X, C) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_permute_ps((X), (C)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_permute_ps(U, X, C) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_permute_ps((X), (C)), \ + (__v16sf)_mm512_setzero_ps())) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_permutevar_pd(__m512d __A, __m512i __C) +{ + return (__m512d)__builtin_ia32_vpermilvarpd512((__v8df)__A, (__v8di)__C); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_permutevar_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512i __C) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_permutevar_pd(__A, __C), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutevar_pd(__mmask8 __U, __m512d __A, __m512i __C) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_permutevar_pd(__A, __C), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_permutevar_ps(__m512 __A, __m512i __C) +{ + return (__m512)__builtin_ia32_vpermilvarps512((__v16sf)__A, (__v16si)__C); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_permutevar_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512i __C) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_permutevar_ps(__A, __C), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutevar_ps(__mmask16 __U, __m512 __A, __m512i __C) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_permutevar_ps(__A, __C), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline __m512d __DEFAULT_FN_ATTRS512 +_mm512_permutex2var_pd(__m512d __A, __m512i __I, __m512d __B) +{ + return (__m512d)__builtin_ia32_vpermi2varpd512((__v8df)__A, (__v8di)__I, + (__v8df)__B); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_permutex2var_pd(__m512d __A, __mmask8 __U, __m512i __I, __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_permutex2var_pd(__A, __I, __B), + (__v8df)__A); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask2_permutex2var_pd(__m512d __A, __m512i __I, __mmask8 __U, + __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_permutex2var_pd(__A, __I, __B), + (__v8df)(__m512d)__I); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutex2var_pd(__mmask8 __U, __m512d __A, __m512i __I, + __m512d __B) +{ + return (__m512d)__builtin_ia32_selectpd_512(__U, + (__v8df)_mm512_permutex2var_pd(__A, __I, __B), + (__v8df)_mm512_setzero_pd()); +} + +static __inline __m512 __DEFAULT_FN_ATTRS512 +_mm512_permutex2var_ps(__m512 __A, __m512i __I, __m512 __B) +{ + return (__m512)__builtin_ia32_vpermi2varps512((__v16sf)__A, (__v16si)__I, + (__v16sf) __B); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_permutex2var_ps(__m512 __A, __mmask16 __U, __m512i __I, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_permutex2var_ps(__A, __I, __B), + (__v16sf)__A); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask2_permutex2var_ps(__m512 __A, __m512i __I, __mmask16 __U, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_permutex2var_ps(__A, __I, __B), + (__v16sf)(__m512)__I); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutex2var_ps(__mmask16 __U, __m512 __A, __m512i __I, __m512 __B) +{ + return (__m512)__builtin_ia32_selectps_512(__U, + (__v16sf)_mm512_permutex2var_ps(__A, __I, __B), + (__v16sf)_mm512_setzero_ps()); +} + + +#define _mm512_cvtt_roundpd_epu32(A, R) \ + ((__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \ + (__v8si)_mm256_undefined_si256(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvtt_roundpd_epu32(W, U, A, R) \ + ((__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \ + (__v8si)(__m256i)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundpd_epu32(U, A, R) \ + ((__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \ + (__v8si)_mm256_setzero_si256(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvttpd_epu32 (__m512d __A) +{ + return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A, + (__v8si) + _mm256_undefined_si256 (), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A) +{ + return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A, + (__v8si) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttpd_epu32 (__mmask8 __U, __m512d __A) +{ + return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_roundscale_round_sd(A, B, imm, R) \ + ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(imm), \ + (int)(R))) + +#define _mm_roundscale_sd(A, B, imm) \ + ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(imm), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_roundscale_sd(W, U, A, B, imm) \ + ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(imm), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_roundscale_round_sd(W, U, A, B, I, R) \ + ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(I), \ + (int)(R))) + +#define _mm_maskz_roundscale_sd(U, A, B, I) \ + ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(I), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_roundscale_round_sd(U, A, B, I, R) \ + ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(I), \ + (int)(R))) + +#define _mm_roundscale_round_ss(A, B, imm, R) \ + ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(imm), \ + (int)(R))) + +#define _mm_roundscale_ss(A, B, imm) \ + ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(imm), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_roundscale_ss(W, U, A, B, I) \ + ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U), (int)(I), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_roundscale_round_ss(W, U, A, B, I, R) \ + ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U), (int)(I), \ + (int)(R))) + +#define _mm_maskz_roundscale_ss(U, A, B, I) \ + ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(I), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_roundscale_round_ss(U, A, B, I, R) \ + ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(I), \ + (int)(R))) + +#define _mm512_scalef_round_pd(A, B, R) \ + ((__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)_mm512_undefined_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_scalef_round_pd(W, U, A, B, R) \ + ((__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_scalef_round_pd(U, A, B, R) \ + ((__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_scalef_pd (__m512d __A, __m512d __B) +{ + return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A, + (__v8df) __B, + (__v8df) + _mm512_undefined_pd (), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_scalef_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A, + (__v8df) __B, + (__v8df) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_scalef_pd (__mmask8 __U, __m512d __A, __m512d __B) +{ + return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A, + (__v8df) __B, + (__v8df) + _mm512_setzero_pd (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_scalef_round_ps(A, B, R) \ + ((__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)_mm512_undefined_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_scalef_round_ps(W, U, A, B, R) \ + ((__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_scalef_round_ps(U, A, B, R) \ + ((__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_scalef_ps (__m512 __A, __m512 __B) +{ + return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) + _mm512_undefined_ps (), + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_scalef_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) __W, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_scalef_ps (__mmask16 __U, __m512 __A, __m512 __B) +{ + return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A, + (__v16sf) __B, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_scalef_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_scalef_sd (__m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_scalefsd_round_mask ((__v2df) __A, + (__v2df)( __B), (__v2df) _mm_setzero_pd(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_scalef_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_scalefsd_round_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask_scalef_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_scalef_sd (__mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_scalefsd_round_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) _mm_setzero_pd (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_scalef_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +#define _mm_scalef_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_scalef_ss (__m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_scalefss_round_mask ((__v4sf) __A, + (__v4sf)( __B), (__v4sf) _mm_setzero_ps(), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_scalef_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_scalefss_round_mask ( (__v4sf) __A, + (__v4sf) __B, + (__v4sf) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask_scalef_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_scalef_ss (__mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_scalefss_round_mask ( (__v4sf) __A, + (__v4sf) __B, + (__v4sf) _mm_setzero_ps (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_scalef_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srai_epi32(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_psradi512((__v16si)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srai_epi32(__m512i __W, __mmask16 __U, __m512i __A, + unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srai_epi32(__A, __B), + (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srai_epi32(__mmask16 __U, __m512i __A, + unsigned int __B) { + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, + (__v16si)_mm512_srai_epi32(__A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_srai_epi64(__m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_psraqi512((__v8di)__A, (int)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_srai_epi64(__m512i __W, __mmask8 __U, __m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srai_epi64(__A, __B), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_srai_epi64(__mmask8 __U, __m512i __A, unsigned int __B) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, + (__v8di)_mm512_srai_epi64(__A, __B), + (__v8di)_mm512_setzero_si512()); +} + +#define _mm512_shuffle_f32x4(A, B, imm) \ + ((__m512)__builtin_ia32_shuf_f32x4((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(imm))) + +#define _mm512_mask_shuffle_f32x4(W, U, A, B, imm) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_shuffle_f32x4((A), (B), (imm)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_shuffle_f32x4(U, A, B, imm) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_shuffle_f32x4((A), (B), (imm)), \ + (__v16sf)_mm512_setzero_ps())) + +#define _mm512_shuffle_f64x2(A, B, imm) \ + ((__m512d)__builtin_ia32_shuf_f64x2((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(imm))) + +#define _mm512_mask_shuffle_f64x2(W, U, A, B, imm) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_shuffle_f64x2((A), (B), (imm)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_shuffle_f64x2(U, A, B, imm) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_shuffle_f64x2((A), (B), (imm)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_shuffle_i32x4(A, B, imm) \ + ((__m512i)__builtin_ia32_shuf_i32x4((__v16si)(__m512i)(A), \ + (__v16si)(__m512i)(B), (int)(imm))) + +#define _mm512_mask_shuffle_i32x4(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_shuffle_i32x4((A), (B), (imm)), \ + (__v16si)(__m512i)(W))) + +#define _mm512_maskz_shuffle_i32x4(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_shuffle_i32x4((A), (B), (imm)), \ + (__v16si)_mm512_setzero_si512())) + +#define _mm512_shuffle_i64x2(A, B, imm) \ + ((__m512i)__builtin_ia32_shuf_i64x2((__v8di)(__m512i)(A), \ + (__v8di)(__m512i)(B), (int)(imm))) + +#define _mm512_mask_shuffle_i64x2(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_shuffle_i64x2((A), (B), (imm)), \ + (__v8di)(__m512i)(W))) + +#define _mm512_maskz_shuffle_i64x2(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_shuffle_i64x2((A), (B), (imm)), \ + (__v8di)_mm512_setzero_si512())) + +#define _mm512_shuffle_pd(A, B, M) \ + ((__m512d)__builtin_ia32_shufpd512((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(B), (int)(M))) + +#define _mm512_mask_shuffle_pd(W, U, A, B, M) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_shuffle_pd((A), (B), (M)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_shuffle_pd(U, A, B, M) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_shuffle_pd((A), (B), (M)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_shuffle_ps(A, B, M) \ + ((__m512)__builtin_ia32_shufps512((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(B), (int)(M))) + +#define _mm512_mask_shuffle_ps(W, U, A, B, M) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_shuffle_ps((A), (B), (M)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_shuffle_ps(U, A, B, M) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_shuffle_ps((A), (B), (M)), \ + (__v16sf)_mm512_setzero_ps())) + +#define _mm_sqrt_round_sd(A, B, R) \ + ((__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1, (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_sqrt_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_sqrtsd_round_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask_sqrt_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_sqrt_sd (__mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d) __builtin_ia32_sqrtsd_round_mask ( (__v2df) __A, + (__v2df) __B, + (__v2df) _mm_setzero_pd (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_sqrt_round_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +#define _mm_sqrt_round_ss(A, B, R) \ + ((__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1, (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_sqrt_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_sqrtss_round_mask ( (__v4sf) __A, + (__v4sf) __B, + (__v4sf) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask_sqrt_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(W), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_sqrt_ss (__mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128) __builtin_ia32_sqrtss_round_mask ( (__v4sf) __A, + (__v4sf) __B, + (__v4sf) _mm_setzero_ps (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_sqrt_round_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_broadcast_f32x4(__m128 __A) +{ + return (__m512)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A, + 0, 1, 2, 3, 0, 1, 2, 3, + 0, 1, 2, 3, 0, 1, 2, 3); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_f32x4(__m512 __O, __mmask16 __M, __m128 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, + (__v16sf)_mm512_broadcast_f32x4(__A), + (__v16sf)__O); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_f32x4(__mmask16 __M, __m128 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, + (__v16sf)_mm512_broadcast_f32x4(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_broadcast_f64x4(__m256d __A) +{ + return (__m512d)__builtin_shufflevector((__v4df)__A, (__v4df)__A, + 0, 1, 2, 3, 0, 1, 2, 3); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_f64x4(__m512d __O, __mmask8 __M, __m256d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__M, + (__v8df)_mm512_broadcast_f64x4(__A), + (__v8df)__O); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_f64x4(__mmask8 __M, __m256d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__M, + (__v8df)_mm512_broadcast_f64x4(__A), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcast_i32x4(__m128i __A) +{ + return (__m512i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, + 0, 1, 2, 3, 0, 1, 2, 3, + 0, 1, 2, 3, 0, 1, 2, 3); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_i32x4(__m512i __O, __mmask16 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_broadcast_i32x4(__A), + (__v16si)__O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_i32x4(__mmask16 __M, __m128i __A) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_broadcast_i32x4(__A), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_broadcast_i64x4(__m256i __A) +{ + return (__m512i)__builtin_shufflevector((__v4di)__A, (__v4di)__A, + 0, 1, 2, 3, 0, 1, 2, 3); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcast_i64x4(__m512i __O, __mmask8 __M, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_broadcast_i64x4(__A), + (__v8di)__O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcast_i64x4(__mmask8 __M, __m256i __A) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_broadcast_i64x4(__A), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcastsd_pd (__m512d __O, __mmask8 __M, __m128d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512(__M, + (__v8df) _mm512_broadcastsd_pd(__A), + (__v8df) __O); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A) +{ + return (__m512d)__builtin_ia32_selectpd_512(__M, + (__v8df) _mm512_broadcastsd_pd(__A), + (__v8df) _mm512_setzero_pd()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_broadcastss_ps (__m512 __O, __mmask16 __M, __m128 __A) +{ + return (__m512)__builtin_ia32_selectps_512(__M, + (__v16sf) _mm512_broadcastss_ps(__A), + (__v16sf) __O); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_broadcastss_ps (__mmask16 __M, __m128 __A) +{ + return (__m512)__builtin_ia32_selectps_512(__M, + (__v16sf) _mm512_broadcastss_ps(__A), + (__v16sf) _mm512_setzero_ps()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtsepi32_epi8 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A, + (__v16qi) _mm_undefined_si128 (), + (__mmask16) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtsepi32_epi8 (__mmask16 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A) +{ + __builtin_ia32_pmovsdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtsepi32_epi16 (__m512i __A) +{ + return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A, + (__v16hi) _mm256_undefined_si256 (), + (__mmask16) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A, + (__v16hi) __O, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtsepi32_epi16 (__mmask16 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A, + (__v16hi) _mm256_setzero_si256 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A) +{ + __builtin_ia32_pmovsdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtsepi64_epi8 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A, + (__v16qi) _mm_undefined_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtsepi64_epi8 (__mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovsqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtsepi64_epi32 (__m512i __A) +{ + return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A, + (__v8si) _mm256_undefined_si256 (), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A, + (__v8si) __O, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtsepi64_epi32 (__mmask8 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A, + (__v8si) _mm256_setzero_si256 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi64_storeu_epi32 (void *__P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovsqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtsepi64_epi16 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A, + (__v8hi) _mm_undefined_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtsepi64_epi16 (__mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovsqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtusepi32_epi8 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A, + (__v16qi) _mm_undefined_si128 (), + (__mmask16) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtusepi32_epi8 (__mmask16 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A) +{ + __builtin_ia32_pmovusdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtusepi32_epi16 (__m512i __A) +{ + return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A, + (__v16hi) _mm256_undefined_si256 (), + (__mmask16) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A, + (__v16hi) __O, + __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtusepi32_epi16 (__mmask16 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A, + (__v16hi) _mm256_setzero_si256 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A) +{ + __builtin_ia32_pmovusdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtusepi64_epi8 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A, + (__v16qi) _mm_undefined_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtusepi64_epi8 (__mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovusqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtusepi64_epi32 (__m512i __A) +{ + return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A, + (__v8si) _mm256_undefined_si256 (), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A, + (__v8si) __O, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtusepi64_epi32 (__mmask8 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A, + (__v8si) _mm256_setzero_si256 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovusqd512mem_mask ((__v8si*) __P, (__v8di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtusepi64_epi16 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A, + (__v8hi) _mm_undefined_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtusepi64_epi16 (__mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtusepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovusqw512mem_mask ((__v8hi*) __P, (__v8di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi32_epi8 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A, + (__v16qi) _mm_undefined_si128 (), + (__mmask16) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi32_epi8 (__mmask16 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A) +{ + __builtin_ia32_pmovdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi32_epi16 (__m512i __A) +{ + return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A, + (__v16hi) _mm256_undefined_si256 (), + (__mmask16) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A, + (__v16hi) __O, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi32_epi16 (__mmask16 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A, + (__v16hi) _mm256_setzero_si256 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32_storeu_epi16 (void * __P, __mmask16 __M, __m512i __A) +{ + __builtin_ia32_pmovdw512mem_mask ((__v16hi *) __P, (__v16si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi64_epi8 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A, + (__v16qi) _mm_undefined_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi64_epi8 (__mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi64_epi32 (__m512i __A) +{ + return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A, + (__v8si) _mm256_undefined_si256 (), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A, + (__v8si) __O, __M); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi64_epi32 (__mmask8 __M, __m512i __A) +{ + return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A, + (__v8si) _mm256_setzero_si256 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_cvtepi64_epi16 (__m512i __A) +{ + return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A, + (__v8hi) _mm_undefined_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi64_epi16 (__mmask8 __M, __m512i __A) +{ + return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A) +{ + __builtin_ia32_pmovqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M); +} + +#define _mm512_extracti32x4_epi32(A, imm) \ + ((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \ + (__v4si)_mm_undefined_si128(), \ + (__mmask8)-1)) + +#define _mm512_mask_extracti32x4_epi32(W, U, A, imm) \ + ((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \ + (__v4si)(__m128i)(W), \ + (__mmask8)(U))) + +#define _mm512_maskz_extracti32x4_epi32(U, A, imm) \ + ((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \ + (__v4si)_mm_setzero_si128(), \ + (__mmask8)(U))) + +#define _mm512_extracti64x4_epi64(A, imm) \ + ((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \ + (__v4di)_mm256_undefined_si256(), \ + (__mmask8)-1)) + +#define _mm512_mask_extracti64x4_epi64(W, U, A, imm) \ + ((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \ + (__v4di)(__m256i)(W), \ + (__mmask8)(U))) + +#define _mm512_maskz_extracti64x4_epi64(U, A, imm) \ + ((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \ + (__v4di)_mm256_setzero_si256(), \ + (__mmask8)(U))) + +#define _mm512_insertf64x4(A, B, imm) \ + ((__m512d)__builtin_ia32_insertf64x4((__v8df)(__m512d)(A), \ + (__v4df)(__m256d)(B), (int)(imm))) + +#define _mm512_mask_insertf64x4(W, U, A, B, imm) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_insertf64x4((A), (B), (imm)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_insertf64x4(U, A, B, imm) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_insertf64x4((A), (B), (imm)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_inserti64x4(A, B, imm) \ + ((__m512i)__builtin_ia32_inserti64x4((__v8di)(__m512i)(A), \ + (__v4di)(__m256i)(B), (int)(imm))) + +#define _mm512_mask_inserti64x4(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_inserti64x4((A), (B), (imm)), \ + (__v8di)(__m512i)(W))) + +#define _mm512_maskz_inserti64x4(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_inserti64x4((A), (B), (imm)), \ + (__v8di)_mm512_setzero_si512())) + +#define _mm512_insertf32x4(A, B, imm) \ + ((__m512)__builtin_ia32_insertf32x4((__v16sf)(__m512)(A), \ + (__v4sf)(__m128)(B), (int)(imm))) + +#define _mm512_mask_insertf32x4(W, U, A, B, imm) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_insertf32x4((A), (B), (imm)), \ + (__v16sf)(__m512)(W))) + +#define _mm512_maskz_insertf32x4(U, A, B, imm) \ + ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ + (__v16sf)_mm512_insertf32x4((A), (B), (imm)), \ + (__v16sf)_mm512_setzero_ps())) + +#define _mm512_inserti32x4(A, B, imm) \ + ((__m512i)__builtin_ia32_inserti32x4((__v16si)(__m512i)(A), \ + (__v4si)(__m128i)(B), (int)(imm))) + +#define _mm512_mask_inserti32x4(W, U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_inserti32x4((A), (B), (imm)), \ + (__v16si)(__m512i)(W))) + +#define _mm512_maskz_inserti32x4(U, A, B, imm) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_inserti32x4((A), (B), (imm)), \ + (__v16si)_mm512_setzero_si512())) + +#define _mm512_getmant_round_pd(A, B, C, R) \ + ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8df)_mm512_undefined_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_getmant_round_pd(W, U, A, B, C, R) \ + ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_getmant_round_pd(U, A, B, C, R) \ + ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_getmant_pd(A, B, C) \ + ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_getmant_pd(W, U, A, B, C) \ + ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_getmant_pd(U, A, B, C) \ + ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_getmant_round_ps(A, B, C, R) \ + ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ + (int)(((C)<<2) | (B)), \ + (__v16sf)_mm512_undefined_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_getmant_round_ps(W, U, A, B, C, R) \ + ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ + (int)(((C)<<2) | (B)), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_getmant_round_ps(U, A, B, C, R) \ + ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ + (int)(((C)<<2) | (B)), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_getmant_ps(A, B, C) \ + ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ + (int)(((C)<<2)|(B)), \ + (__v16sf)_mm512_undefined_ps(), \ + (__mmask16)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_getmant_ps(W, U, A, B, C) \ + ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ + (int)(((C)<<2)|(B)), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_getmant_ps(U, A, B, C) \ + ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ + (int)(((C)<<2)|(B)), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_getexp_round_pd(A, R) \ + ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \ + (__v8df)_mm512_undefined_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_getexp_round_pd(W, U, A, R) \ + ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_getexp_round_pd(U, A, R) \ + ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_getexp_pd (__m512d __A) +{ + return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A, + (__v8df) _mm512_undefined_pd (), + (__mmask8) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_getexp_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A, + (__v8df) __W, + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_getexp_pd (__mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A, + (__v8df) _mm512_setzero_pd (), + (__mmask8) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_getexp_round_ps(A, R) \ + ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)_mm512_undefined_ps(), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_getexp_round_ps(W, U, A, R) \ + ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)(__m512)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_getexp_round_ps(U, A, R) \ + ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \ + (__v16sf)_mm512_setzero_ps(), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_getexp_ps (__m512 __A) +{ + return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A, + (__v16sf) _mm512_undefined_ps (), + (__mmask16) -1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_getexp_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A, + (__v16sf) __W, + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_getexp_ps (__mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A, + (__v16sf) _mm512_setzero_ps (), + (__mmask16) __U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_i64gather_ps(index, addr, scale) \ + ((__m256)__builtin_ia32_gatherdiv16sf((__v8sf)_mm256_undefined_ps(), \ + (void const *)(addr), \ + (__v8di)(__m512i)(index), (__mmask8)-1, \ + (int)(scale))) + +#define _mm512_mask_i64gather_ps(v1_old, mask, index, addr, scale) \ + ((__m256)__builtin_ia32_gatherdiv16sf((__v8sf)(__m256)(v1_old),\ + (void const *)(addr), \ + (__v8di)(__m512i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm512_i64gather_epi32(index, addr, scale) \ + ((__m256i)__builtin_ia32_gatherdiv16si((__v8si)_mm256_undefined_si256(), \ + (void const *)(addr), \ + (__v8di)(__m512i)(index), \ + (__mmask8)-1, (int)(scale))) + +#define _mm512_mask_i64gather_epi32(v1_old, mask, index, addr, scale) \ + ((__m256i)__builtin_ia32_gatherdiv16si((__v8si)(__m256i)(v1_old), \ + (void const *)(addr), \ + (__v8di)(__m512i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm512_i64gather_pd(index, addr, scale) \ + ((__m512d)__builtin_ia32_gatherdiv8df((__v8df)_mm512_undefined_pd(), \ + (void const *)(addr), \ + (__v8di)(__m512i)(index), (__mmask8)-1, \ + (int)(scale))) + +#define _mm512_mask_i64gather_pd(v1_old, mask, index, addr, scale) \ + ((__m512d)__builtin_ia32_gatherdiv8df((__v8df)(__m512d)(v1_old), \ + (void const *)(addr), \ + (__v8di)(__m512i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm512_i64gather_epi64(index, addr, scale) \ + ((__m512i)__builtin_ia32_gatherdiv8di((__v8di)_mm512_undefined_epi32(), \ + (void const *)(addr), \ + (__v8di)(__m512i)(index), (__mmask8)-1, \ + (int)(scale))) + +#define _mm512_mask_i64gather_epi64(v1_old, mask, index, addr, scale) \ + ((__m512i)__builtin_ia32_gatherdiv8di((__v8di)(__m512i)(v1_old), \ + (void const *)(addr), \ + (__v8di)(__m512i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm512_i32gather_ps(index, addr, scale) \ + ((__m512)__builtin_ia32_gathersiv16sf((__v16sf)_mm512_undefined_ps(), \ + (void const *)(addr), \ + (__v16si)(__m512)(index), \ + (__mmask16)-1, (int)(scale))) + +#define _mm512_mask_i32gather_ps(v1_old, mask, index, addr, scale) \ + ((__m512)__builtin_ia32_gathersiv16sf((__v16sf)(__m512)(v1_old), \ + (void const *)(addr), \ + (__v16si)(__m512)(index), \ + (__mmask16)(mask), (int)(scale))) + +#define _mm512_i32gather_epi32(index, addr, scale) \ + ((__m512i)__builtin_ia32_gathersiv16si((__v16si)_mm512_undefined_epi32(), \ + (void const *)(addr), \ + (__v16si)(__m512i)(index), \ + (__mmask16)-1, (int)(scale))) + +#define _mm512_mask_i32gather_epi32(v1_old, mask, index, addr, scale) \ + ((__m512i)__builtin_ia32_gathersiv16si((__v16si)(__m512i)(v1_old), \ + (void const *)(addr), \ + (__v16si)(__m512i)(index), \ + (__mmask16)(mask), (int)(scale))) + +#define _mm512_i32gather_pd(index, addr, scale) \ + ((__m512d)__builtin_ia32_gathersiv8df((__v8df)_mm512_undefined_pd(), \ + (void const *)(addr), \ + (__v8si)(__m256i)(index), (__mmask8)-1, \ + (int)(scale))) + +#define _mm512_mask_i32gather_pd(v1_old, mask, index, addr, scale) \ + ((__m512d)__builtin_ia32_gathersiv8df((__v8df)(__m512d)(v1_old), \ + (void const *)(addr), \ + (__v8si)(__m256i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm512_i32gather_epi64(index, addr, scale) \ + ((__m512i)__builtin_ia32_gathersiv8di((__v8di)_mm512_undefined_epi32(), \ + (void const *)(addr), \ + (__v8si)(__m256i)(index), (__mmask8)-1, \ + (int)(scale))) + +#define _mm512_mask_i32gather_epi64(v1_old, mask, index, addr, scale) \ + ((__m512i)__builtin_ia32_gathersiv8di((__v8di)(__m512i)(v1_old), \ + (void const *)(addr), \ + (__v8si)(__m256i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm512_i64scatter_ps(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv16sf((void *)(addr), (__mmask8)-1, \ + (__v8di)(__m512i)(index), \ + (__v8sf)(__m256)(v1), (int)(scale)) + +#define _mm512_mask_i64scatter_ps(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv16sf((void *)(addr), (__mmask8)(mask), \ + (__v8di)(__m512i)(index), \ + (__v8sf)(__m256)(v1), (int)(scale)) + +#define _mm512_i64scatter_epi32(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv16si((void *)(addr), (__mmask8)-1, \ + (__v8di)(__m512i)(index), \ + (__v8si)(__m256i)(v1), (int)(scale)) + +#define _mm512_mask_i64scatter_epi32(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv16si((void *)(addr), (__mmask8)(mask), \ + (__v8di)(__m512i)(index), \ + (__v8si)(__m256i)(v1), (int)(scale)) + +#define _mm512_i64scatter_pd(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv8df((void *)(addr), (__mmask8)-1, \ + (__v8di)(__m512i)(index), \ + (__v8df)(__m512d)(v1), (int)(scale)) + +#define _mm512_mask_i64scatter_pd(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv8df((void *)(addr), (__mmask8)(mask), \ + (__v8di)(__m512i)(index), \ + (__v8df)(__m512d)(v1), (int)(scale)) + +#define _mm512_i64scatter_epi64(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv8di((void *)(addr), (__mmask8)-1, \ + (__v8di)(__m512i)(index), \ + (__v8di)(__m512i)(v1), (int)(scale)) + +#define _mm512_mask_i64scatter_epi64(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv8di((void *)(addr), (__mmask8)(mask), \ + (__v8di)(__m512i)(index), \ + (__v8di)(__m512i)(v1), (int)(scale)) + +#define _mm512_i32scatter_ps(addr, index, v1, scale) \ + __builtin_ia32_scattersiv16sf((void *)(addr), (__mmask16)-1, \ + (__v16si)(__m512i)(index), \ + (__v16sf)(__m512)(v1), (int)(scale)) + +#define _mm512_mask_i32scatter_ps(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv16sf((void *)(addr), (__mmask16)(mask), \ + (__v16si)(__m512i)(index), \ + (__v16sf)(__m512)(v1), (int)(scale)) + +#define _mm512_i32scatter_epi32(addr, index, v1, scale) \ + __builtin_ia32_scattersiv16si((void *)(addr), (__mmask16)-1, \ + (__v16si)(__m512i)(index), \ + (__v16si)(__m512i)(v1), (int)(scale)) + +#define _mm512_mask_i32scatter_epi32(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv16si((void *)(addr), (__mmask16)(mask), \ + (__v16si)(__m512i)(index), \ + (__v16si)(__m512i)(v1), (int)(scale)) + +#define _mm512_i32scatter_pd(addr, index, v1, scale) \ + __builtin_ia32_scattersiv8df((void *)(addr), (__mmask8)-1, \ + (__v8si)(__m256i)(index), \ + (__v8df)(__m512d)(v1), (int)(scale)) + +#define _mm512_mask_i32scatter_pd(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv8df((void *)(addr), (__mmask8)(mask), \ + (__v8si)(__m256i)(index), \ + (__v8df)(__m512d)(v1), (int)(scale)) + +#define _mm512_i32scatter_epi64(addr, index, v1, scale) \ + __builtin_ia32_scattersiv8di((void *)(addr), (__mmask8)-1, \ + (__v8si)(__m256i)(index), \ + (__v8di)(__m512i)(v1), (int)(scale)) + +#define _mm512_mask_i32scatter_epi64(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv8di((void *)(addr), (__mmask8)(mask), \ + (__v8si)(__m256i)(index), \ + (__v8di)(__m512i)(v1), (int)(scale)) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return __builtin_ia32_vfmaddss3_mask((__v4sf)__W, + (__v4sf)__A, + (__v4sf)__B, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fmadd_round_ss(A, B, C, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(C), (__mmask8)-1, \ + (int)(R))) + +#define _mm_mask_fmadd_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \ + (__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return __builtin_ia32_vfmaddss3_maskz((__v4sf)__A, + (__v4sf)__B, + (__v4sf)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fmadd_round_ss(U, A, B, C, R) \ + ((__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(C), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fmadd_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U) +{ + return __builtin_ia32_vfmaddss3_mask3((__v4sf)__W, + (__v4sf)__X, + (__v4sf)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fmadd_round_ss(W, X, Y, U, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask3((__v4sf)(__m128)(W), \ + (__v4sf)(__m128)(X), \ + (__v4sf)(__m128)(Y), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return __builtin_ia32_vfmaddss3_mask((__v4sf)__W, + (__v4sf)__A, + -(__v4sf)__B, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fmsub_round_ss(A, B, C, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + -(__v4sf)(__m128)(C), (__mmask8)-1, \ + (int)(R))) + +#define _mm_mask_fmsub_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \ + (__v4sf)(__m128)(A), \ + -(__v4sf)(__m128)(B), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsub_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return __builtin_ia32_vfmaddss3_maskz((__v4sf)__A, + (__v4sf)__B, + -(__v4sf)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fmsub_round_ss(U, A, B, C, R) \ + ((__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + -(__v4sf)(__m128)(C), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsub_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U) +{ + return __builtin_ia32_vfmsubss3_mask3((__v4sf)__W, + (__v4sf)__X, + (__v4sf)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fmsub_round_ss(W, X, Y, U, R) \ + ((__m128)__builtin_ia32_vfmsubss3_mask3((__v4sf)(__m128)(W), \ + (__v4sf)(__m128)(X), \ + (__v4sf)(__m128)(Y), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fnmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return __builtin_ia32_vfmaddss3_mask((__v4sf)__W, + -(__v4sf)__A, + (__v4sf)__B, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fnmadd_round_ss(A, B, C, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(A), \ + -(__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(C), (__mmask8)-1, \ + (int)(R))) + +#define _mm_mask_fnmadd_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \ + -(__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return __builtin_ia32_vfmaddss3_maskz((__v4sf)__A, + -(__v4sf)__B, + (__v4sf)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fnmadd_round_ss(U, A, B, C, R) \ + ((__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \ + -(__v4sf)(__m128)(B), \ + (__v4sf)(__m128)(C), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmadd_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U) +{ + return __builtin_ia32_vfmaddss3_mask3((__v4sf)__W, + -(__v4sf)__X, + (__v4sf)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fnmadd_round_ss(W, X, Y, U, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask3((__v4sf)(__m128)(W), \ + -(__v4sf)(__m128)(X), \ + (__v4sf)(__m128)(Y), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fnmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return __builtin_ia32_vfmaddss3_mask((__v4sf)__W, + -(__v4sf)__A, + -(__v4sf)__B, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fnmsub_round_ss(A, B, C, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(A), \ + -(__v4sf)(__m128)(B), \ + -(__v4sf)(__m128)(C), (__mmask8)-1, \ + (int)(R))) + +#define _mm_mask_fnmsub_round_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \ + -(__v4sf)(__m128)(A), \ + -(__v4sf)(__m128)(B), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmsub_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return __builtin_ia32_vfmaddss3_maskz((__v4sf)__A, + -(__v4sf)__B, + -(__v4sf)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fnmsub_round_ss(U, A, B, C, R) \ + ((__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \ + -(__v4sf)(__m128)(B), \ + -(__v4sf)(__m128)(C), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmsub_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U) +{ + return __builtin_ia32_vfmsubss3_mask3((__v4sf)__W, + -(__v4sf)__X, + (__v4sf)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fnmsub_round_ss(W, X, Y, U, R) \ + ((__m128)__builtin_ia32_vfmsubss3_mask3((__v4sf)(__m128)(W), \ + -(__v4sf)(__m128)(X), \ + (__v4sf)(__m128)(Y), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fmadd_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return __builtin_ia32_vfmaddsd3_mask((__v2df)__W, + (__v2df)__A, + (__v2df)__B, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fmadd_round_sd(A, B, C, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(C), (__mmask8)-1, \ + (int)(R))) + +#define _mm_mask_fmadd_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \ + (__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fmadd_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return __builtin_ia32_vfmaddsd3_maskz((__v2df)__A, + (__v2df)__B, + (__v2df)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fmadd_round_sd(U, A, B, C, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(C), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fmadd_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U) +{ + return __builtin_ia32_vfmaddsd3_mask3((__v2df)__W, + (__v2df)__X, + (__v2df)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fmadd_round_sd(W, X, Y, U, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask3((__v2df)(__m128d)(W), \ + (__v2df)(__m128d)(X), \ + (__v2df)(__m128d)(Y), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fmsub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return __builtin_ia32_vfmaddsd3_mask((__v2df)__W, + (__v2df)__A, + -(__v2df)__B, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fmsub_round_sd(A, B, C, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + -(__v2df)(__m128d)(C), (__mmask8)-1, \ + (int)(R))) + +#define _mm_mask_fmsub_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \ + (__v2df)(__m128d)(A), \ + -(__v2df)(__m128d)(B), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsub_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return __builtin_ia32_vfmaddsd3_maskz((__v2df)__A, + (__v2df)__B, + -(__v2df)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fmsub_round_sd(U, A, B, C, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + -(__v2df)(__m128d)(C), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsub_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U) +{ + return __builtin_ia32_vfmsubsd3_mask3((__v2df)__W, + (__v2df)__X, + (__v2df)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fmsub_round_sd(W, X, Y, U, R) \ + ((__m128d)__builtin_ia32_vfmsubsd3_mask3((__v2df)(__m128d)(W), \ + (__v2df)(__m128d)(X), \ + (__v2df)(__m128d)(Y), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fnmadd_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return __builtin_ia32_vfmaddsd3_mask((__v2df)__W, + -(__v2df)__A, + (__v2df)__B, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fnmadd_round_sd(A, B, C, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(A), \ + -(__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(C), (__mmask8)-1, \ + (int)(R))) + +#define _mm_mask_fnmadd_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \ + -(__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmadd_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return __builtin_ia32_vfmaddsd3_maskz((__v2df)__A, + -(__v2df)__B, + (__v2df)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fnmadd_round_sd(U, A, B, C, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \ + -(__v2df)(__m128d)(B), \ + (__v2df)(__m128d)(C), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmadd_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U) +{ + return __builtin_ia32_vfmaddsd3_mask3((__v2df)__W, + -(__v2df)__X, + (__v2df)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fnmadd_round_sd(W, X, Y, U, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask3((__v2df)(__m128d)(W), \ + -(__v2df)(__m128d)(X), \ + (__v2df)(__m128d)(Y), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fnmsub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return __builtin_ia32_vfmaddsd3_mask((__v2df)__W, + -(__v2df)__A, + -(__v2df)__B, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fnmsub_round_sd(A, B, C, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(A), \ + -(__v2df)(__m128d)(B), \ + -(__v2df)(__m128d)(C), (__mmask8)-1, \ + (int)(R))) + +#define _mm_mask_fnmsub_round_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \ + -(__v2df)(__m128d)(A), \ + -(__v2df)(__m128d)(B), (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmsub_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return __builtin_ia32_vfmaddsd3_maskz((__v2df)__A, + -(__v2df)__B, + -(__v2df)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fnmsub_round_sd(U, A, B, C, R) \ + ((__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \ + -(__v2df)(__m128d)(B), \ + -(__v2df)(__m128d)(C), \ + (__mmask8)(U), \ + (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmsub_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U) +{ + return __builtin_ia32_vfmsubsd3_mask3((__v2df)__W, + -(__v2df)__X, + (__v2df)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fnmsub_round_sd(W, X, Y, U, R) \ + ((__m128d)__builtin_ia32_vfmsubsd3_mask3((__v2df)(__m128d)(W), \ + -(__v2df)(__m128d)(X), \ + (__v2df)(__m128d)(Y), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_permutex_pd(X, C) \ + ((__m512d)__builtin_ia32_permdf512((__v8df)(__m512d)(X), (int)(C))) + +#define _mm512_mask_permutex_pd(W, U, X, C) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_permutex_pd((X), (C)), \ + (__v8df)(__m512d)(W))) + +#define _mm512_maskz_permutex_pd(U, X, C) \ + ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ + (__v8df)_mm512_permutex_pd((X), (C)), \ + (__v8df)_mm512_setzero_pd())) + +#define _mm512_permutex_epi64(X, C) \ + ((__m512i)__builtin_ia32_permdi512((__v8di)(__m512i)(X), (int)(C))) + +#define _mm512_mask_permutex_epi64(W, U, X, C) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_permutex_epi64((X), (C)), \ + (__v8di)(__m512i)(W))) + +#define _mm512_maskz_permutex_epi64(U, X, C) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_permutex_epi64((X), (C)), \ + (__v8di)_mm512_setzero_si512())) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_permutexvar_pd (__m512i __X, __m512d __Y) +{ + return (__m512d)__builtin_ia32_permvardf512((__v8df) __Y, (__v8di) __X); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_permutexvar_pd (__m512d __W, __mmask8 __U, __m512i __X, __m512d __Y) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_permutexvar_pd(__X, __Y), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutexvar_pd (__mmask8 __U, __m512i __X, __m512d __Y) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_permutexvar_pd(__X, __Y), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_permutexvar_epi64 (__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_permvardi512((__v8di)__Y, (__v8di)__X); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutexvar_epi64 (__mmask8 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_permutexvar_epi64(__X, __Y), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_permutexvar_epi64 (__m512i __W, __mmask8 __M, __m512i __X, + __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, + (__v8di)_mm512_permutexvar_epi64(__X, __Y), + (__v8di)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_permutexvar_ps (__m512i __X, __m512 __Y) +{ + return (__m512)__builtin_ia32_permvarsf512((__v16sf)__Y, (__v16si)__X); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_permutexvar_ps (__m512 __W, __mmask16 __U, __m512i __X, __m512 __Y) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_permutexvar_ps(__X, __Y), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutexvar_ps (__mmask16 __U, __m512i __X, __m512 __Y) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_permutexvar_ps(__X, __Y), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_permutexvar_epi32 (__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_permvarsi512((__v16si)__Y, (__v16si)__X); +} + +#define _mm512_permutevar_epi32 _mm512_permutexvar_epi32 + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_permutexvar_epi32 (__mmask16 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_permutexvar_epi32(__X, __Y), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_permutexvar_epi32 (__m512i __W, __mmask16 __M, __m512i __X, + __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, + (__v16si)_mm512_permutexvar_epi32(__X, __Y), + (__v16si)__W); +} + +#define _mm512_mask_permutevar_epi32 _mm512_mask_permutexvar_epi32 + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_mm512_kand (__mmask16 __A, __mmask16 __B) +{ + return (__mmask16) __builtin_ia32_kandhi ((__mmask16) __A, (__mmask16) __B); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_mm512_kandn (__mmask16 __A, __mmask16 __B) +{ + return (__mmask16) __builtin_ia32_kandnhi ((__mmask16) __A, (__mmask16) __B); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_mm512_kor (__mmask16 __A, __mmask16 __B) +{ + return (__mmask16) __builtin_ia32_korhi ((__mmask16) __A, (__mmask16) __B); +} + +static __inline__ int __DEFAULT_FN_ATTRS +_mm512_kortestc (__mmask16 __A, __mmask16 __B) +{ + return __builtin_ia32_kortestchi ((__mmask16) __A, (__mmask16) __B); +} + +static __inline__ int __DEFAULT_FN_ATTRS +_mm512_kortestz (__mmask16 __A, __mmask16 __B) +{ + return __builtin_ia32_kortestzhi ((__mmask16) __A, (__mmask16) __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortestc_mask16_u8(__mmask16 __A, __mmask16 __B) +{ + return (unsigned char)__builtin_ia32_kortestchi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortestz_mask16_u8(__mmask16 __A, __mmask16 __B) +{ + return (unsigned char)__builtin_ia32_kortestzhi(__A, __B); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_kortest_mask16_u8(__mmask16 __A, __mmask16 __B, unsigned char *__C) { + *__C = (unsigned char)__builtin_ia32_kortestchi(__A, __B); + return (unsigned char)__builtin_ia32_kortestzhi(__A, __B); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_mm512_kunpackb (__mmask16 __A, __mmask16 __B) +{ + return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_mm512_kxnor (__mmask16 __A, __mmask16 __B) +{ + return (__mmask16) __builtin_ia32_kxnorhi ((__mmask16) __A, (__mmask16) __B); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_mm512_kxor (__mmask16 __A, __mmask16 __B) +{ + return (__mmask16) __builtin_ia32_kxorhi ((__mmask16) __A, (__mmask16) __B); +} + +#define _kand_mask16 _mm512_kand +#define _kandn_mask16 _mm512_kandn +#define _knot_mask16 _mm512_knot +#define _kor_mask16 _mm512_kor +#define _kxnor_mask16 _mm512_kxnor +#define _kxor_mask16 _mm512_kxor + +#define _kshiftli_mask16(A, I) \ + ((__mmask16)__builtin_ia32_kshiftlihi((__mmask16)(A), (unsigned int)(I))) + +#define _kshiftri_mask16(A, I) \ + ((__mmask16)__builtin_ia32_kshiftrihi((__mmask16)(A), (unsigned int)(I))) + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_cvtmask16_u32(__mmask16 __A) { + return (unsigned int)__builtin_ia32_kmovw((__mmask16)__A); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_cvtu32_mask16(unsigned int __A) { + return (__mmask16)__builtin_ia32_kmovw((__mmask16)__A); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS +_load_mask16(__mmask16 *__A) { + return (__mmask16)__builtin_ia32_kmovw(*(__mmask16 *)__A); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_store_mask16(__mmask16 *__A, __mmask16 __B) { + *(__mmask16 *)__A = __builtin_ia32_kmovw((__mmask16)__B); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_stream_si512 (void * __P, __m512i __A) +{ + typedef __v8di __v8di_aligned __attribute__((aligned(64))); + __builtin_nontemporal_store((__v8di_aligned)__A, (__v8di_aligned*)__P); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_stream_load_si512 (void const *__P) +{ + typedef __v8di __v8di_aligned __attribute__((aligned(64))); + return (__m512i) __builtin_nontemporal_load((const __v8di_aligned *)__P); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_stream_pd (void *__P, __m512d __A) +{ + typedef __v8df __v8df_aligned __attribute__((aligned(64))); + __builtin_nontemporal_store((__v8df_aligned)__A, (__v8df_aligned*)__P); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_stream_ps (void *__P, __m512 __A) +{ + typedef __v16sf __v16sf_aligned __attribute__((aligned(64))); + __builtin_nontemporal_store((__v16sf_aligned)__A, (__v16sf_aligned*)__P); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_compress_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A, + (__v8df) __W, + (__mmask8) __U); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_compress_pd (__mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A, + (__v8df) + _mm512_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_compress_epi64 (__m512i __W, __mmask8 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A, + (__v8di) __W, + (__mmask8) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_compress_epi64 (__mmask8 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A, + (__v8di) + _mm512_setzero_si512 (), + (__mmask8) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_compress_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A, + (__v16sf) __W, + (__mmask16) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_compress_ps (__mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A, + (__v16sf) + _mm512_setzero_ps (), + (__mmask16) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_compress_epi32 (__m512i __W, __mmask16 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A, + (__v16si) __W, + (__mmask16) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_compress_epi32 (__mmask16 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A, + (__v16si) + _mm512_setzero_si512 (), + (__mmask16) __U); +} + +#define _mm_cmp_round_ss_mask(X, Y, P, R) \ + ((__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \ + (__v4sf)(__m128)(Y), (int)(P), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_cmp_round_ss_mask(M, X, Y, P, R) \ + ((__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \ + (__v4sf)(__m128)(Y), (int)(P), \ + (__mmask8)(M), (int)(R))) + +#define _mm_cmp_ss_mask(X, Y, P) \ + ((__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \ + (__v4sf)(__m128)(Y), (int)(P), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_cmp_ss_mask(M, X, Y, P) \ + ((__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \ + (__v4sf)(__m128)(Y), (int)(P), \ + (__mmask8)(M), \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_cmp_round_sd_mask(X, Y, P, R) \ + ((__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \ + (__v2df)(__m128d)(Y), (int)(P), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_cmp_round_sd_mask(M, X, Y, P, R) \ + ((__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \ + (__v2df)(__m128d)(Y), (int)(P), \ + (__mmask8)(M), (int)(R))) + +#define _mm_cmp_sd_mask(X, Y, P) \ + ((__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \ + (__v2df)(__m128d)(Y), (int)(P), \ + (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_cmp_sd_mask(M, X, Y, P) \ + ((__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \ + (__v2df)(__m128d)(Y), (int)(P), \ + (__mmask8)(M), \ + _MM_FROUND_CUR_DIRECTION)) + +/* Bit Test */ + +static __inline __mmask16 __DEFAULT_FN_ATTRS512 +_mm512_test_epi32_mask (__m512i __A, __m512i __B) +{ + return _mm512_cmpneq_epi32_mask (_mm512_and_epi32(__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS512 +_mm512_mask_test_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_cmpneq_epi32_mask (__U, _mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline __mmask8 __DEFAULT_FN_ATTRS512 +_mm512_test_epi64_mask (__m512i __A, __m512i __B) +{ + return _mm512_cmpneq_epi64_mask (_mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS512 +_mm512_mask_test_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_cmpneq_epi64_mask (__U, _mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS512 +_mm512_testn_epi32_mask (__m512i __A, __m512i __B) +{ + return _mm512_cmpeq_epi32_mask (_mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS512 +_mm512_mask_testn_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_cmpeq_epi32_mask (__U, _mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS512 +_mm512_testn_epi64_mask (__m512i __A, __m512i __B) +{ + return _mm512_cmpeq_epi64_mask (_mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS512 +_mm512_mask_testn_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_cmpeq_epi64_mask (__U, _mm512_and_epi32 (__A, __B), + _mm512_setzero_si512()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_movehdup_ps (__m512 __A) +{ + return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A, + 1, 1, 3, 3, 5, 5, 7, 7, 9, 9, 11, 11, 13, 13, 15, 15); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_movehdup_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_movehdup_ps(__A), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_movehdup_ps (__mmask16 __U, __m512 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_movehdup_ps(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_moveldup_ps (__m512 __A) +{ + return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A, + 0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_moveldup_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_moveldup_ps(__A), + (__v16sf)__W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_moveldup_ps (__mmask16 __U, __m512 __A) +{ + return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_moveldup_ps(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_move_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return __builtin_ia32_selectss_128(__U, _mm_move_ss(__A, __B), __W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_move_ss (__mmask8 __U, __m128 __A, __m128 __B) +{ + return __builtin_ia32_selectss_128(__U, _mm_move_ss(__A, __B), + _mm_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_move_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return __builtin_ia32_selectsd_128(__U, _mm_move_sd(__A, __B), __W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_move_sd (__mmask8 __U, __m128d __A, __m128d __B) +{ + return __builtin_ia32_selectsd_128(__U, _mm_move_sd(__A, __B), + _mm_setzero_pd()); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_store_ss (float * __W, __mmask8 __U, __m128 __A) +{ + __builtin_ia32_storess128_mask ((__v4sf *)__W, __A, __U & 1); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_store_sd (double * __W, __mmask8 __U, __m128d __A) +{ + __builtin_ia32_storesd128_mask ((__v2df *)__W, __A, __U & 1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_load_ss (__m128 __W, __mmask8 __U, const float* __A) +{ + __m128 src = (__v4sf) __builtin_shufflevector((__v4sf) __W, + (__v4sf)_mm_setzero_ps(), + 0, 4, 4, 4); + + return (__m128) __builtin_ia32_loadss128_mask ((const __v4sf *) __A, src, __U & 1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_load_ss (__mmask8 __U, const float* __A) +{ + return (__m128)__builtin_ia32_loadss128_mask ((const __v4sf *) __A, + (__v4sf) _mm_setzero_ps(), + __U & 1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_load_sd (__m128d __W, __mmask8 __U, const double* __A) +{ + __m128d src = (__v2df) __builtin_shufflevector((__v2df) __W, + (__v2df)_mm_setzero_pd(), + 0, 2); + + return (__m128d) __builtin_ia32_loadsd128_mask ((const __v2df *) __A, src, __U & 1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_load_sd (__mmask8 __U, const double* __A) +{ + return (__m128d) __builtin_ia32_loadsd128_mask ((const __v2df *) __A, + (__v2df) _mm_setzero_pd(), + __U & 1); +} + +#define _mm512_shuffle_epi32(A, I) \ + ((__m512i)__builtin_ia32_pshufd512((__v16si)(__m512i)(A), (int)(I))) + +#define _mm512_mask_shuffle_epi32(W, U, A, I) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_shuffle_epi32((A), (I)), \ + (__v16si)(__m512i)(W))) + +#define _mm512_maskz_shuffle_epi32(U, A, I) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_shuffle_epi32((A), (I)), \ + (__v16si)_mm512_setzero_si512())) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_expand_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A, + (__v8df) __W, + (__mmask8) __U); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_expand_pd (__mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A, + (__v8df) _mm512_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_expand_epi64 (__m512i __W, __mmask8 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A, + (__v8di) __W, + (__mmask8) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_expand_epi64 ( __mmask8 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A, + (__v8di) _mm512_setzero_si512 (), + (__mmask8) __U); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_expandloadu_pd(__m512d __W, __mmask8 __U, void const *__P) +{ + return (__m512d) __builtin_ia32_expandloaddf512_mask ((const __v8df *)__P, + (__v8df) __W, + (__mmask8) __U); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_expandloadu_pd(__mmask8 __U, void const *__P) +{ + return (__m512d) __builtin_ia32_expandloaddf512_mask ((const __v8df *)__P, + (__v8df) _mm512_setzero_pd(), + (__mmask8) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_expandloadu_epi64(__m512i __W, __mmask8 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_expandloaddi512_mask ((const __v8di *)__P, + (__v8di) __W, + (__mmask8) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_expandloadu_epi64(__mmask8 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_expandloaddi512_mask ((const __v8di *)__P, + (__v8di) _mm512_setzero_si512(), + (__mmask8) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_expandloadu_ps(__m512 __W, __mmask16 __U, void const *__P) +{ + return (__m512) __builtin_ia32_expandloadsf512_mask ((const __v16sf *)__P, + (__v16sf) __W, + (__mmask16) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_expandloadu_ps(__mmask16 __U, void const *__P) +{ + return (__m512) __builtin_ia32_expandloadsf512_mask ((const __v16sf *)__P, + (__v16sf) _mm512_setzero_ps(), + (__mmask16) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_expandloadu_epi32(__m512i __W, __mmask16 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_expandloadsi512_mask ((const __v16si *)__P, + (__v16si) __W, + (__mmask16) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_expandloadu_epi32(__mmask16 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_expandloadsi512_mask ((const __v16si *)__P, + (__v16si) _mm512_setzero_si512(), + (__mmask16) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_expand_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A, + (__v16sf) __W, + (__mmask16) __U); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_expand_ps (__mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A, + (__v16sf) _mm512_setzero_ps(), + (__mmask16) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_expand_epi32 (__m512i __W, __mmask16 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A, + (__v16si) __W, + (__mmask16) __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_expand_epi32 (__mmask16 __U, __m512i __A) +{ + return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A, + (__v16si) _mm512_setzero_si512(), + (__mmask16) __U); +} + +#define _mm512_cvt_roundps_pd(A, R) \ + ((__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \ + (__v8df)_mm512_undefined_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm512_mask_cvt_roundps_pd(W, U, A, R) \ + ((__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \ + (__v8df)(__m512d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundps_pd(U, A, R) \ + ((__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \ + (__v8df)_mm512_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_cvtps_pd (__m256 __A) +{ + return (__m512d) __builtin_convertvector((__v8sf)__A, __v8df); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtps_pd (__m512d __W, __mmask8 __U, __m256 __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_cvtps_pd(__A), + (__v8df)__W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtps_pd (__mmask8 __U, __m256 __A) +{ + return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, + (__v8df)_mm512_cvtps_pd(__A), + (__v8df)_mm512_setzero_pd()); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_cvtpslo_pd (__m512 __A) +{ + return (__m512d) _mm512_cvtps_pd(_mm512_castps512_ps256(__A)); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpslo_pd (__m512d __W, __mmask8 __U, __m512 __A) +{ + return (__m512d) _mm512_mask_cvtps_pd(__W, __U, _mm512_castps512_ps256(__A)); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_mov_pd (__m512d __W, __mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U, + (__v8df) __A, + (__v8df) __W); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_mov_pd (__mmask8 __U, __m512d __A) +{ + return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U, + (__v8df) __A, + (__v8df) _mm512_setzero_pd ()); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_mov_ps (__m512 __W, __mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U, + (__v16sf) __A, + (__v16sf) __W); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_mov_ps (__mmask16 __U, __m512 __A) +{ + return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U, + (__v16sf) __A, + (__v16sf) _mm512_setzero_ps ()); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m512d __A) +{ + __builtin_ia32_compressstoredf512_mask ((__v8df *) __P, (__v8df) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m512i __A) +{ + __builtin_ia32_compressstoredi512_mask ((__v8di *) __P, (__v8di) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_compressstoreu_ps (void *__P, __mmask16 __U, __m512 __A) +{ + __builtin_ia32_compressstoresf512_mask ((__v16sf *) __P, (__v16sf) __A, + (__mmask16) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 +_mm512_mask_compressstoreu_epi32 (void *__P, __mmask16 __U, __m512i __A) +{ + __builtin_ia32_compressstoresi512_mask ((__v16si *) __P, (__v16si) __A, + (__mmask16) __U); +} + +#define _mm_cvt_roundsd_ss(A, B, R) \ + ((__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \ + (__v2df)(__m128d)(B), \ + (__v4sf)_mm_undefined_ps(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_cvt_roundsd_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \ + (__v2df)(__m128d)(B), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_cvt_roundsd_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \ + (__v2df)(__m128d)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128d __B) +{ + return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)__A, + (__v2df)__B, + (__v4sf)__W, + (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsd_ss (__mmask8 __U, __m128 __A, __m128d __B) +{ + return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)__A, + (__v2df)__B, + (__v4sf)_mm_setzero_ps(), + (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_cvtss_i32 _mm_cvtss_si32 +#define _mm_cvtsd_i32 _mm_cvtsd_si32 +#define _mm_cvti32_sd _mm_cvtsi32_sd +#define _mm_cvti32_ss _mm_cvtsi32_ss +#ifdef __x86_64__ +#define _mm_cvtss_i64 _mm_cvtss_si64 +#define _mm_cvtsd_i64 _mm_cvtsd_si64 +#define _mm_cvti64_sd _mm_cvtsi64_sd +#define _mm_cvti64_ss _mm_cvtsi64_ss +#endif + +#ifdef __x86_64__ +#define _mm_cvt_roundi64_sd(A, B, R) \ + ((__m128d)__builtin_ia32_cvtsi2sd64((__v2df)(__m128d)(A), (long long)(B), \ + (int)(R))) + +#define _mm_cvt_roundsi64_sd(A, B, R) \ + ((__m128d)__builtin_ia32_cvtsi2sd64((__v2df)(__m128d)(A), (long long)(B), \ + (int)(R))) +#endif + +#define _mm_cvt_roundsi32_ss(A, B, R) \ + ((__m128)__builtin_ia32_cvtsi2ss32((__v4sf)(__m128)(A), (int)(B), (int)(R))) + +#define _mm_cvt_roundi32_ss(A, B, R) \ + ((__m128)__builtin_ia32_cvtsi2ss32((__v4sf)(__m128)(A), (int)(B), (int)(R))) + +#ifdef __x86_64__ +#define _mm_cvt_roundsi64_ss(A, B, R) \ + ((__m128)__builtin_ia32_cvtsi2ss64((__v4sf)(__m128)(A), (long long)(B), \ + (int)(R))) + +#define _mm_cvt_roundi64_ss(A, B, R) \ + ((__m128)__builtin_ia32_cvtsi2ss64((__v4sf)(__m128)(A), (long long)(B), \ + (int)(R))) +#endif + +#define _mm_cvt_roundss_sd(A, B, R) \ + ((__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \ + (__v4sf)(__m128)(B), \ + (__v2df)_mm_undefined_pd(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_cvt_roundss_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \ + (__v4sf)(__m128)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_cvt_roundss_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \ + (__v4sf)(__m128)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_cvtss_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128 __B) +{ + return __builtin_ia32_cvtss2sd_round_mask((__v2df)__A, + (__v4sf)__B, + (__v2df)__W, + (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtss_sd (__mmask8 __U, __m128d __A, __m128 __B) +{ + return __builtin_ia32_cvtss2sd_round_mask((__v2df)__A, + (__v4sf)__B, + (__v2df)_mm_setzero_pd(), + (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_cvtu32_sd (__m128d __A, unsigned __B) +{ + __A[0] = __B; + return __A; +} + +#ifdef __x86_64__ +#define _mm_cvt_roundu64_sd(A, B, R) \ + ((__m128d)__builtin_ia32_cvtusi2sd64((__v2df)(__m128d)(A), \ + (unsigned long long)(B), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_cvtu64_sd (__m128d __A, unsigned long long __B) +{ + __A[0] = __B; + return __A; +} +#endif + +#define _mm_cvt_roundu32_ss(A, B, R) \ + ((__m128)__builtin_ia32_cvtusi2ss32((__v4sf)(__m128)(A), (unsigned int)(B), \ + (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtu32_ss (__m128 __A, unsigned __B) +{ + __A[0] = __B; + return __A; +} + +#ifdef __x86_64__ +#define _mm_cvt_roundu64_ss(A, B, R) \ + ((__m128)__builtin_ia32_cvtusi2ss64((__v4sf)(__m128)(A), \ + (unsigned long long)(B), (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtu64_ss (__m128 __A, unsigned long long __B) +{ + __A[0] = __B; + return __A; +} +#endif + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_set1_epi32 (__m512i __O, __mmask16 __M, int __A) +{ + return (__m512i) __builtin_ia32_selectd_512(__M, + (__v16si) _mm512_set1_epi32(__A), + (__v16si) __O); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_set1_epi64 (__m512i __O, __mmask8 __M, long long __A) +{ + return (__m512i) __builtin_ia32_selectq_512(__M, + (__v8di) _mm512_set1_epi64(__A), + (__v8di) __O); +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set_epi8 (char __e63, char __e62, char __e61, char __e60, char __e59, + char __e58, char __e57, char __e56, char __e55, char __e54, char __e53, + char __e52, char __e51, char __e50, char __e49, char __e48, char __e47, + char __e46, char __e45, char __e44, char __e43, char __e42, char __e41, + char __e40, char __e39, char __e38, char __e37, char __e36, char __e35, + char __e34, char __e33, char __e32, char __e31, char __e30, char __e29, + char __e28, char __e27, char __e26, char __e25, char __e24, char __e23, + char __e22, char __e21, char __e20, char __e19, char __e18, char __e17, + char __e16, char __e15, char __e14, char __e13, char __e12, char __e11, + char __e10, char __e9, char __e8, char __e7, char __e6, char __e5, + char __e4, char __e3, char __e2, char __e1, char __e0) { + + return __extension__ (__m512i)(__v64qi) + {__e0, __e1, __e2, __e3, __e4, __e5, __e6, __e7, + __e8, __e9, __e10, __e11, __e12, __e13, __e14, __e15, + __e16, __e17, __e18, __e19, __e20, __e21, __e22, __e23, + __e24, __e25, __e26, __e27, __e28, __e29, __e30, __e31, + __e32, __e33, __e34, __e35, __e36, __e37, __e38, __e39, + __e40, __e41, __e42, __e43, __e44, __e45, __e46, __e47, + __e48, __e49, __e50, __e51, __e52, __e53, __e54, __e55, + __e56, __e57, __e58, __e59, __e60, __e61, __e62, __e63}; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set_epi16(short __e31, short __e30, short __e29, short __e28, + short __e27, short __e26, short __e25, short __e24, short __e23, + short __e22, short __e21, short __e20, short __e19, short __e18, + short __e17, short __e16, short __e15, short __e14, short __e13, + short __e12, short __e11, short __e10, short __e9, short __e8, + short __e7, short __e6, short __e5, short __e4, short __e3, + short __e2, short __e1, short __e0) { + return __extension__ (__m512i)(__v32hi) + {__e0, __e1, __e2, __e3, __e4, __e5, __e6, __e7, + __e8, __e9, __e10, __e11, __e12, __e13, __e14, __e15, + __e16, __e17, __e18, __e19, __e20, __e21, __e22, __e23, + __e24, __e25, __e26, __e27, __e28, __e29, __e30, __e31 }; +} + +static __inline __m512i __DEFAULT_FN_ATTRS512 +_mm512_set_epi32 (int __A, int __B, int __C, int __D, + int __E, int __F, int __G, int __H, + int __I, int __J, int __K, int __L, + int __M, int __N, int __O, int __P) +{ + return __extension__ (__m512i)(__v16si) + { __P, __O, __N, __M, __L, __K, __J, __I, + __H, __G, __F, __E, __D, __C, __B, __A }; +} + +#define _mm512_setr_epi32(e0,e1,e2,e3,e4,e5,e6,e7, \ + e8,e9,e10,e11,e12,e13,e14,e15) \ + _mm512_set_epi32((e15),(e14),(e13),(e12),(e11),(e10),(e9),(e8),(e7),(e6), \ + (e5),(e4),(e3),(e2),(e1),(e0)) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_set_epi64 (long long __A, long long __B, long long __C, + long long __D, long long __E, long long __F, + long long __G, long long __H) +{ + return __extension__ (__m512i) (__v8di) + { __H, __G, __F, __E, __D, __C, __B, __A }; +} + +#define _mm512_setr_epi64(e0,e1,e2,e3,e4,e5,e6,e7) \ + _mm512_set_epi64((e7),(e6),(e5),(e4),(e3),(e2),(e1),(e0)) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_set_pd (double __A, double __B, double __C, double __D, + double __E, double __F, double __G, double __H) +{ + return __extension__ (__m512d) + { __H, __G, __F, __E, __D, __C, __B, __A }; +} + +#define _mm512_setr_pd(e0,e1,e2,e3,e4,e5,e6,e7) \ + _mm512_set_pd((e7),(e6),(e5),(e4),(e3),(e2),(e1),(e0)) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_set_ps (float __A, float __B, float __C, float __D, + float __E, float __F, float __G, float __H, + float __I, float __J, float __K, float __L, + float __M, float __N, float __O, float __P) +{ + return __extension__ (__m512) + { __P, __O, __N, __M, __L, __K, __J, __I, + __H, __G, __F, __E, __D, __C, __B, __A }; +} + +#define _mm512_setr_ps(e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15) \ + _mm512_set_ps((e15),(e14),(e13),(e12),(e11),(e10),(e9),(e8),(e7),(e6),(e5), \ + (e4),(e3),(e2),(e1),(e0)) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_abs_ps(__m512 __A) +{ + return (__m512)_mm512_and_epi32(_mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ; +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_abs_ps(__m512 __W, __mmask16 __K, __m512 __A) +{ + return (__m512)_mm512_mask_and_epi32((__m512i)__W, __K, _mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ; +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_abs_pd(__m512d __A) +{ + return (__m512d)_mm512_and_epi64(_mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A) ; +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A) +{ + return (__m512d)_mm512_mask_and_epi64((__v8di)__W, __K, _mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A); +} + +/* Vector-reduction arithmetic accepts vectors as inputs and produces scalars as + * outputs. This class of vector operation forms the basis of many scientific + * computations. In vector-reduction arithmetic, the evaluation order is + * independent of the order of the input elements of V. + + * For floating-point intrinsics: + * 1. When using fadd/fmul intrinsics, the order of operations within the + * vector is unspecified (associative math). + * 2. When using fmin/fmax intrinsics, NaN or -0.0 elements within the vector + * produce unspecified results. + + * Used bisection method. At each step, we partition the vector with previous + * step in half, and the operation is performed on its two halves. + * This takes log2(n) steps where n is the number of elements in the vector. + */ + +static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_add_epi64(__m512i __W) { + return __builtin_reduce_add((__v8di)__W); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_mul_epi64(__m512i __W) { + return __builtin_reduce_mul((__v8di)__W); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_and_epi64(__m512i __W) { + return __builtin_reduce_and((__v8di)__W); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_or_epi64(__m512i __W) { + return __builtin_reduce_or((__v8di)__W); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_add_epi64(__mmask8 __M, __m512i __W) { + __W = _mm512_maskz_mov_epi64(__M, __W); + return __builtin_reduce_add((__v8di)__W); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_mul_epi64(__mmask8 __M, __m512i __W) { + __W = _mm512_mask_mov_epi64(_mm512_set1_epi64(1), __M, __W); + return __builtin_reduce_mul((__v8di)__W); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_and_epi64(__mmask8 __M, __m512i __W) { + __W = _mm512_mask_mov_epi64(_mm512_set1_epi64(-1LL), __M, __W); + return __builtin_reduce_and((__v8di)__W); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_or_epi64(__mmask8 __M, __m512i __W) { + __W = _mm512_maskz_mov_epi64(__M, __W); + return __builtin_reduce_or((__v8di)__W); +} + +// -0.0 is used to ignore the start value since it is the neutral value of +// floating point addition. For more information, please refer to +// https://llvm.org/docs/LangRef.html#llvm-vector-reduce-fadd-intrinsic +static __inline__ double __DEFAULT_FN_ATTRS512 _mm512_reduce_add_pd(__m512d __W) { + return __builtin_ia32_reduce_fadd_pd512(-0.0, __W); +} + +static __inline__ double __DEFAULT_FN_ATTRS512 _mm512_reduce_mul_pd(__m512d __W) { + return __builtin_ia32_reduce_fmul_pd512(1.0, __W); +} + +static __inline__ double __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_add_pd(__mmask8 __M, __m512d __W) { + __W = _mm512_maskz_mov_pd(__M, __W); + return __builtin_ia32_reduce_fadd_pd512(-0.0, __W); +} + +static __inline__ double __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_mul_pd(__mmask8 __M, __m512d __W) { + __W = _mm512_mask_mov_pd(_mm512_set1_pd(1.0), __M, __W); + return __builtin_ia32_reduce_fmul_pd512(1.0, __W); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_reduce_add_epi32(__m512i __W) { + return __builtin_reduce_add((__v16si)__W); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_reduce_mul_epi32(__m512i __W) { + return __builtin_reduce_mul((__v16si)__W); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_reduce_and_epi32(__m512i __W) { + return __builtin_reduce_and((__v16si)__W); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_reduce_or_epi32(__m512i __W) { + return __builtin_reduce_or((__v16si)__W); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_add_epi32( __mmask16 __M, __m512i __W) { + __W = _mm512_maskz_mov_epi32(__M, __W); + return __builtin_reduce_add((__v16si)__W); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_mul_epi32( __mmask16 __M, __m512i __W) { + __W = _mm512_mask_mov_epi32(_mm512_set1_epi32(1), __M, __W); + return __builtin_reduce_mul((__v16si)__W); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_and_epi32( __mmask16 __M, __m512i __W) { + __W = _mm512_mask_mov_epi32(_mm512_set1_epi32(-1), __M, __W); + return __builtin_reduce_and((__v16si)__W); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_or_epi32(__mmask16 __M, __m512i __W) { + __W = _mm512_maskz_mov_epi32(__M, __W); + return __builtin_reduce_or((__v16si)__W); +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_reduce_add_ps(__m512 __W) { + return __builtin_ia32_reduce_fadd_ps512(-0.0f, __W); +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_reduce_mul_ps(__m512 __W) { + return __builtin_ia32_reduce_fmul_ps512(1.0f, __W); +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_add_ps(__mmask16 __M, __m512 __W) { + __W = _mm512_maskz_mov_ps(__M, __W); + return __builtin_ia32_reduce_fadd_ps512(-0.0f, __W); +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_mul_ps(__mmask16 __M, __m512 __W) { + __W = _mm512_mask_mov_ps(_mm512_set1_ps(1.0f), __M, __W); + return __builtin_ia32_reduce_fmul_ps512(1.0f, __W); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 +_mm512_reduce_max_epi64(__m512i __V) { + return __builtin_reduce_max((__v8di)__V); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS512 +_mm512_reduce_max_epu64(__m512i __V) { + return __builtin_reduce_max((__v8du)__V); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 +_mm512_reduce_min_epi64(__m512i __V) { + return __builtin_reduce_min((__v8di)__V); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS512 +_mm512_reduce_min_epu64(__m512i __V) { + return __builtin_reduce_min((__v8du)__V); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_max_epi64(__mmask8 __M, __m512i __V) { + __V = _mm512_mask_mov_epi64(_mm512_set1_epi64(-__LONG_LONG_MAX__ - 1LL), __M, __V); + return __builtin_reduce_max((__v8di)__V); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_max_epu64(__mmask8 __M, __m512i __V) { + __V = _mm512_maskz_mov_epi64(__M, __V); + return __builtin_reduce_max((__v8du)__V); +} + +static __inline__ long long __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_min_epi64(__mmask8 __M, __m512i __V) { + __V = _mm512_mask_mov_epi64(_mm512_set1_epi64(__LONG_LONG_MAX__), __M, __V); + return __builtin_reduce_min((__v8di)__V); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_min_epu64(__mmask8 __M, __m512i __V) { + __V = _mm512_mask_mov_epi64(_mm512_set1_epi64(-1LL), __M, __V); + return __builtin_reduce_min((__v8du)__V); +} +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_reduce_max_epi32(__m512i __V) { + return __builtin_reduce_max((__v16si)__V); +} + +static __inline__ unsigned int __DEFAULT_FN_ATTRS512 +_mm512_reduce_max_epu32(__m512i __V) { + return __builtin_reduce_max((__v16su)__V); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_reduce_min_epi32(__m512i __V) { + return __builtin_reduce_min((__v16si)__V); +} + +static __inline__ unsigned int __DEFAULT_FN_ATTRS512 +_mm512_reduce_min_epu32(__m512i __V) { + return __builtin_reduce_min((__v16su)__V); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_max_epi32(__mmask16 __M, __m512i __V) { + __V = _mm512_mask_mov_epi32(_mm512_set1_epi32(-__INT_MAX__ - 1), __M, __V); + return __builtin_reduce_max((__v16si)__V); +} + +static __inline__ unsigned int __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_max_epu32(__mmask16 __M, __m512i __V) { + __V = _mm512_maskz_mov_epi32(__M, __V); + return __builtin_reduce_max((__v16su)__V); +} + +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_min_epi32(__mmask16 __M, __m512i __V) { + __V = _mm512_mask_mov_epi32(_mm512_set1_epi32(__INT_MAX__), __M, __V); + return __builtin_reduce_min((__v16si)__V); +} + +static __inline__ unsigned int __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_min_epu32(__mmask16 __M, __m512i __V) { + __V = _mm512_mask_mov_epi32(_mm512_set1_epi32(-1), __M, __V); + return __builtin_reduce_min((__v16su)__V); +} + +static __inline__ double __DEFAULT_FN_ATTRS512 +_mm512_reduce_max_pd(__m512d __V) { + return __builtin_ia32_reduce_fmax_pd512(__V); +} + +static __inline__ double __DEFAULT_FN_ATTRS512 +_mm512_reduce_min_pd(__m512d __V) { + return __builtin_ia32_reduce_fmin_pd512(__V); +} + +static __inline__ double __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_max_pd(__mmask8 __M, __m512d __V) { + __V = _mm512_mask_mov_pd(_mm512_set1_pd(-__builtin_inf()), __M, __V); + return __builtin_ia32_reduce_fmax_pd512(__V); +} + +static __inline__ double __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_min_pd(__mmask8 __M, __m512d __V) { + __V = _mm512_mask_mov_pd(_mm512_set1_pd(__builtin_inf()), __M, __V); + return __builtin_ia32_reduce_fmin_pd512(__V); +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_reduce_max_ps(__m512 __V) { + return __builtin_ia32_reduce_fmax_ps512(__V); +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_reduce_min_ps(__m512 __V) { + return __builtin_ia32_reduce_fmin_ps512(__V); +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_max_ps(__mmask16 __M, __m512 __V) { + __V = _mm512_mask_mov_ps(_mm512_set1_ps(-__builtin_inff()), __M, __V); + return __builtin_ia32_reduce_fmax_ps512(__V); +} + +static __inline__ float __DEFAULT_FN_ATTRS512 +_mm512_mask_reduce_min_ps(__mmask16 __M, __m512 __V) { + __V = _mm512_mask_mov_ps(_mm512_set1_ps(__builtin_inff()), __M, __V); + return __builtin_ia32_reduce_fmin_ps512(__V); +} + +/// Moves the least significant 32 bits of a vector of [16 x i32] to a +/// 32-bit signed integer value. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VMOVD / MOVD instruction. +/// +/// \param __A +/// A vector of [16 x i32]. The least significant 32 bits are moved to the +/// destination. +/// \returns A 32-bit signed integer containing the moved value. +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_cvtsi512_si32(__m512i __A) { + __v16si __b = (__v16si)__A; + return __b[0]; +} + +/// Loads 8 double-precision (64-bit) floating-point elements stored at memory +/// locations starting at location \a base_addr at packed 32-bit integer indices +/// stored in the lower half of \a vindex scaled by \a scale them in dst. +/// +/// This intrinsic corresponds to the VGATHERDPD instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// i := j*64 +/// m := j*32 +/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 +/// dst[i+63:i] := MEM[addr+63:addr] +/// ENDFOR +/// dst[MAX:512] := 0 +/// \endcode +#define _mm512_i32logather_pd(vindex, base_addr, scale) \ + _mm512_i32gather_pd(_mm512_castsi512_si256(vindex), (base_addr), (scale)) + +/// Loads 8 double-precision (64-bit) floating-point elements from memory +/// starting at location \a base_addr at packed 32-bit integer indices stored in +/// the lower half of \a vindex scaled by \a scale into dst using writemask +/// \a mask (elements are copied from \a src when the corresponding mask bit is +/// not set). +/// +/// This intrinsic corresponds to the VGATHERDPD instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// i := j*64 +/// m := j*32 +/// IF mask[j] +/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 +/// dst[i+63:i] := MEM[addr+63:addr] +/// ELSE +/// dst[i+63:i] := src[i+63:i] +/// FI +/// ENDFOR +/// dst[MAX:512] := 0 +/// \endcode +#define _mm512_mask_i32logather_pd(src, mask, vindex, base_addr, scale) \ + _mm512_mask_i32gather_pd((src), (mask), _mm512_castsi512_si256(vindex), \ + (base_addr), (scale)) + +/// Loads 8 64-bit integer elements from memory starting at location \a base_addr +/// at packed 32-bit integer indices stored in the lower half of \a vindex +/// scaled by \a scale and stores them in dst. +/// +/// This intrinsic corresponds to the VPGATHERDQ instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// i := j*64 +/// m := j*32 +/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 +/// dst[i+63:i] := MEM[addr+63:addr] +/// ENDFOR +/// dst[MAX:512] := 0 +/// \endcode +#define _mm512_i32logather_epi64(vindex, base_addr, scale) \ + _mm512_i32gather_epi64(_mm512_castsi512_si256(vindex), (base_addr), (scale)) + +/// Loads 8 64-bit integer elements from memory starting at location \a base_addr +/// at packed 32-bit integer indices stored in the lower half of \a vindex +/// scaled by \a scale and stores them in dst using writemask \a mask (elements +/// are copied from \a src when the corresponding mask bit is not set). +/// +/// This intrinsic corresponds to the VPGATHERDQ instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// i := j*64 +/// m := j*32 +/// IF mask[j] +/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 +/// dst[i+63:i] := MEM[addr+63:addr] +/// ELSE +/// dst[i+63:i] := src[i+63:i] +/// FI +/// ENDFOR +/// dst[MAX:512] := 0 +/// \endcode +#define _mm512_mask_i32logather_epi64(src, mask, vindex, base_addr, scale) \ + _mm512_mask_i32gather_epi64((src), (mask), _mm512_castsi512_si256(vindex), \ + (base_addr), (scale)) + +/// Stores 8 packed double-precision (64-bit) floating-point elements in \a v1 +/// and to memory locations starting at location \a base_addr at packed 32-bit +/// integer indices stored in \a vindex scaled by \a scale. +/// +/// This intrinsic corresponds to the VSCATTERDPD instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// i := j*64 +/// m := j*32 +/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 +/// MEM[addr+63:addr] := v1[i+63:i] +/// ENDFOR +/// \endcode +#define _mm512_i32loscatter_pd(base_addr, vindex, v1, scale) \ + _mm512_i32scatter_pd((base_addr), _mm512_castsi512_si256(vindex), (v1), (scale)) + +/// Stores 8 packed double-precision (64-bit) floating-point elements in \a v1 +/// to memory locations starting at location \a base_addr at packed 32-bit +/// integer indices stored in \a vindex scaled by \a scale. Only those elements +/// whose corresponding mask bit is set in writemask \a mask are written to +/// memory. +/// +/// This intrinsic corresponds to the VSCATTERDPD instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// i := j*64 +/// m := j*32 +/// IF mask[j] +/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 +/// MEM[addr+63:addr] := a[i+63:i] +/// FI +/// ENDFOR +/// \endcode +#define _mm512_mask_i32loscatter_pd(base_addr, mask, vindex, v1, scale) \ + _mm512_mask_i32scatter_pd((base_addr), (mask), \ + _mm512_castsi512_si256(vindex), (v1), (scale)) + +/// Stores 8 packed 64-bit integer elements located in \a v1 and stores them in +/// memory locations starting at location \a base_addr at packed 32-bit integer +/// indices stored in \a vindex scaled by \a scale. +/// +/// This intrinsic corresponds to the VPSCATTERDQ instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// i := j*64 +/// m := j*32 +/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 +/// MEM[addr+63:addr] := a[i+63:i] +/// ENDFOR +/// \endcode +#define _mm512_i32loscatter_epi64(base_addr, vindex, v1, scale) \ + _mm512_i32scatter_epi64((base_addr), \ + _mm512_castsi512_si256(vindex), (v1), (scale)) + +/// Stores 8 packed 64-bit integer elements located in a and stores them in +/// memory locations starting at location \a base_addr at packed 32-bit integer +/// indices stored in \a vindex scaled by scale using writemask \a mask (elements +/// whose corresponding mask bit is not set are not written to memory). +/// +/// This intrinsic corresponds to the VPSCATTERDQ instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// i := j*64 +/// m := j*32 +/// IF mask[j] +/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 +/// MEM[addr+63:addr] := a[i+63:i] +/// FI +/// ENDFOR +/// \endcode +#define _mm512_mask_i32loscatter_epi64(base_addr, mask, vindex, v1, scale) \ + _mm512_mask_i32scatter_epi64((base_addr), (mask), \ + _mm512_castsi512_si256(vindex), (v1), (scale)) + +#undef __DEFAULT_FN_ATTRS512 +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS + +#endif /* __AVX512FINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..96c331b91acf2c679b0511bee4d4bab34894b7e3 GIT binary patch literal 584649 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

    0%~WE{+sL_qq+JkKP!UwCl82EqLzg8MZL z?iU%{uMtvEC=CU9D4|G139XM0eiGV1>hfyvl*mBA-zobfod3(yQ9wE9FFYY7G=$(r z^iL%H(~$m&pnq_im6-6LetaP7X)R3xU09RAU|=^vO#>69$7{{WYu6jpn&%)k1AC!5 z3TZy5uc{doSAbXPNjy?v9U2CV7i5*hJ*BjI5osop@vZlw!R;8(X}BS z%BdeU3pP_Wv}SXwzae?5Yp`E89tCGEPtg)-xio4yV*H%c`eG<6(HW(ViXe%|GO(hn z)x)a`PK(gFIcs-lDD1^%#b+|74dE6Z;#Fz~<_E84$_ zPa`r$?OE_=>yEqryTf8=2~-mR+)mcWua%us|3u>OOKkv4AZ{$-HUNT_8I{nO58Axq zv(P4~m$Lq5^4d${k}OvLWo}Yyi2q-|0knX8;&2=Nql-TeOFqv?@%{uYQWrlc=IWh< z?-QtTES_u57c*d*%aEqI3{XhG8kKr5Oml;|Y3|$?Y5jIQ$gYl2B%e|9eWz7!%BEEo zdhE2ybqUt+nVFTt*v!h2AfL^@vWfkaefq9C8C9jufQ2tZTKFwk4l$}nK&Fpi@HjWjAb zDWPe*(^}Q>O*Ubd%JA*bxYy26NWgY*WdYV;ml0M%BexQI2X4=4?;UYXWzMltk~zmH z%z0w+M4n@c>jY`+nBVvM?wJh-%jz72Ij<{$duIchBM(-{K4$|$2-aXuaX=<34j{?k zhes!>P46(lC{WwNDR|jFja`QOh6K>d_MHi~5Lyt=2QTjx?&Y1ge17{=XJ^=#JRv74 z)nz9t2@BW>MA-qhI3eh}gebdHJj%{D(5G+E{>sx#r$JrNo-mX3G^X;&^fbm3ta+#2 z#+j_QaUR~OS&N1 ziajKZQoS<2!shs^hmc=?^=Lw{#$R>Aqk!G;AcZd7vGJSBF9b%2O~fcFvD|?IxjSTm z+#Trh3Rt7j>_o`MP9Czc(JN!e;JlzDE2z-fIFxlZ3fp;S_yqxLP@x-8p&Lhq4-VF< z9>>asiD4{s-D9pT*)dmP*gfVNL9phCo^Y+fPPoD)^I~bUHpQt2>km^6`C%cjhw>KL z&jaGvbHugMDR~~ygkWjOHv~pALts1Hey7#amd?GCwhHpBw3aAo$v1U!_^XzD-0|N_ zj_Gw(sqH^;+?2HBJ0elXQBRh9f}Hh=CEw?x!yU^vJKsm72}Ubvf=+==Q7u<6dncp} z0#+;M#-eg=8*I|WfEuTsb`5wc(4TW+8O%PTN+Fw3MQGwPs^k)^Az`!OXPwRctlu^% z?B3$2Uo&+S75f)f9LN?{6sDPl6_W|pjIy|5AzNH=3g+^-%l_p*F#TIrus_b2%;F#d z5x&Jitpu#W{8x1D}pPAbUQY4=%P|GJoDN#S3NW zHF;*}%AOg7S>%}^mSE{Md4d0XVIT~yasOm$mG7oZwzf~pQFeH_EIYg$WrqRFeOigK z!z+2&;ecBUt_=Eqjlwt8vbz!C!^5yZB`S3d$V*Gh=tmJX!^5N*zC=E1$qK=^OWqD+=K`?#;q2?7Ch6I zjdxps4iX@tTJ3BCRX#5&HTpk2fhskmp$g-RS&C7D?PO!y6uwl7Qh4>K7oBY;i zF9PQ_XZM&B{o6kpwIS_<`878^3~ z`og+hY)B?pvlN%`?IpgkkN0_Ae{`&9|4Z7#FYwP~3;adY;R6581WPaIBL7)zk^chB zq|T-BZ#A1S?w;WK=YraG5{dBql0KI_yFu2^*9= zh*J?<6)Lh|^lg{84&U5XkO!}&3K@qCjoBfCAf<;4K?F(WW@KmX@A{>YX&9B3^+!*&{&qqP?2pVSz?xwO+F>?!BnG~+=WNxSm1ow9VJvvv z>IxBTbp?TTt1HwX*n&XYvb7ab@j>h#{w=_VRJKCcCIghE{D6qo67qw^-SlKm^&%~L4D*6zPyv);W2LG`A}S1q%K`Zm z{)W-hGVDwgIJ<X^+o$IL;dXlWCh(Y{^47WS$I%%tJUNV9hoU zM>yng9uDcTxJEOV1D#(nJ9p8-!3sORI3}mX$WWHg>rb zCniAHtrFFXRU5O5RR!I+h{geOUYkdKj{!h{_{&H#mgmJ$LmPrE z2nW&;&`)nM@2B_t!wu#0FU?qInvI%cJl8Il&9%$tYdhC2m0-Rd3^xduuO-QA?qzizI7dx({{nPdoIlkh`A^hpLk zf;De51#dHjzs>v)b5_i0)tSUyDQl}lc{FA*TFzp$A&y`TzKwwdKE^N#vx)4vc-Y~Y zcm1us&1j&*XdnnpXS5-hVEHzM;CF?b-|bv7VM~uSDW9mPJsM_X;nJ-yPkaB6{`|D# zs+{&u-R|W(jZUO=Z=!5KjNXdXIMcQ%%d`~_&9tpc@Qdy@{GwJ*n*T_Ire>kyKo&2Q z;N#e6aFvk(l%OgOiyH9Q)eypPNq7FdgS8q z((xb}G)lao3c;FD5)8R4!H|!ItofE-c<|I;&tMeEvQ=E)6F89V2^8wbp1|$|TVR)t z?G4o9L*ALaf!X*#r(^p9yIDIH zuSM%Pv9=aWv?J`L9c78Nj)64@*1S%qz+S9VAmPiLuah_EKk4jb<#kTjG-oGlgfwu% zCWK&%*Rf@%Y~t{V$B{o}lZa1Oz0HfRU4M>w*lZbvpa226ih|@@^Aho(buZ~*W&SG} z3t=7zf$?7A&-wcSz2wh<`fCx?YcX3H`uCTMS6LlUcC9k?=6#M@_RsC8Wfeg-1|@>T zzR|*sK?!w;<0Cf8THI^gvHWa-TZH4S6`s=pVSpVxC-CFn!4oxsJhhE4 zli=e{;y!M}rQA!Ss_Zw)m$Ah0O@?T;2^^Og#wN&WfF+J^0d3gAMXPN;cMARak*D;v zTb%r(4k2jhCiwqR2S0)}IDQ;GmyYx1Zp}Vj8rH1WvkdV%7Q+$p|+W)(j2pu)bdhc_MiJI zPXnJ%bIc~_oZ7G9+wh7(uj$A7h)n=WsanSqG(mkLo1i{%OeI*u3;uwU@el4~40?O| z)KwJ{x2tZwNF_g~Okh4M6IjUcsZ3xd!P2W|7wE|B0^P8KhwZNni(B4yr`ZmQqIx`g zRH?5=+t}2a8f@0UM5&o9jp*pX20hra4l<}!i9P*)tdogl<@q5FE^LTHJZKg{*$xAw z^=QepA%U;#89PU*B!t2;j*i^ZdL6ApuLlSP=z2gT!LpLj!vIJ2FrWhVq-k8kSJMW~ z9AdsF7HEpyu$mTZ@gtKx;{WYqh4V^m(=6HlI8M=VI|{NV=#*W)T=n9rOGgB^J?M@b zN^puexQ^na>nIMcBfyeVw1MlW4R;-lD%dr4-u%yP%+_6Y*)j!;@|1%tL%LM8$rSGmJhLQ4}wOq!P zPAE0Vn-LQ9f!d64^}%wt0wX7UE|7uvuWDY}Z6jM*Kd2t|15Pdg5p; zyYO~u;r8Ma5=AWeZ&_r7m6f%p%A)oZV99^Wq4rccUVG|aF}Ko_%YT(6krMMzMdm2y zSQh2Xl~r8B3Dz*q80XF`#yJ`DaM{)N!R3aHX&9~kJ+NXX8(2|zWd>I4Nw7x$&Zszv zWmKGwVQy8QVm#Dp73l%0$gCz0@3iX)!>mxxcG|TeSia6~yDYZbj_0Tuww%A=8Yj&O zw5;muG<0u?lx{((8oEaitXbAq-3PK)-KnxzX3^C5N7tT3RhmkiJl{&)nQtW_qxn{f zBUqliDwQ%>l}co>J~_Gb(bGK^%dP^Lg{ouTMpcyCjzWRBjXvIhHJtD+`gq^veZ0TC zu(#mL)g1#>mqH7rY-dm)-06XVoD&8Gx)97=3UG=;8K@mde#7EcasBV)u6o7n^pg*! zKXn0Dk_A9`U*?0c_}!oRU`!*HaKo5#X>IsGVJ7{w)IEeVq3iTs$a5r#5< zVi1i)J~u)HT;)&u_Rh)W9cob?1V)=6@eF)#>ajtCTl+6aod*poX2RX#-&aREV0CIl zK+uoX(`PhT=kMm0oivWvt7gxzYBT@b+~Ces9y zA-~yo1D|`_*R5w%M3iu~*x|K+B6clc9-qv$fUyKi5#{#)PxgC&KklBLfAsJSH)o25 z5lWSMU?*1!W|J!ktJh>0a{z0Us;QN7+0;s8^{N&(;C0ne~H3L&?F=!sK8vXS2+`QdK;sv#E?LMF51oC>5B35SbF>O+pz#wY?RgEcecc z*`2D_Tm?)~Sc7VQTx-`H%P-6+YoT@mmaJi&T_#({b92Ln_&w~hZyyD8%Co2L5mwc;zOwJbzOqM{7)JRDH3b1{5cX?C z2!G8ZgfqYHe#$3dPO)mQjzJzLw^v6gEs=*N59MBAToteIPjBki)_=wOL-7jc=f15= zFV@yYpm|%DM1n2Q9EM|;>G+TXbY5hmpH4rzw@rOEGDw95HB_;nwhU>>#SdH+TltE6 zPjzR1Ts200Z}p%iqF`jAEG3zUiiLnJ-do2yq9|!cUX-*Ws!4U^MM;yeLP@+RY1c_V zhBZ6-rOB?Mj_m3`kh%H`i?yqNGQk!j+c0!l|_=xB|| z5ntV#y%+aO1D$ysEBL;ZJSFpAm}Gr(Z40zfd%FKOf?b0;5wGUnYZy~FxAs7ctB0Pd zln~^tSL}N~bb9-BcDtile1K|MEA$-83Oy%r3@G%>B3Od~6Jc4K$SrGo{YDq7!!V9jh|^^;hvp5*($dZF*W zeIZ_!!63myC4O%sUgB*CA4Im^wrfJLW|(*ECb4(yXqYzbFW2$DmU=@a9nmqe)l7ua zY9=)~m6I)86|$AmtZAbYURAC6U#H=L(;)58!>8E=6RdgoTgWJVi)WP9k6!)Woen(% zuoP0&Q8&ikE(8^Dg~ig|&W~V?s^f&zRVO=I(M2793SRTou??mbRh@p9Z9~{)TQSUK zTR(y|v$=|IuiBFTbb4^}wRO*RzH1srUD1hH(TQ?JC*lPGYlfMO6`jmiwBeP2)bAY! zI*6CTzNqYEA>yAGR-D3@W+Bu#z#8JWq+$)Wq#~&t*VaGxSladT!5Bs1jjCze-T~Et z9faH8-XVx!$r~L|pvu94h*nyk4o**tf02yE0$Jw7m+@)L4V*%-23hAp#G1z) z9xnz?m^%7q{j-<_SS%-hCEOF%r5p?Igev8jQ$P%;rGPTwY4s_4AHCIixZFKUTSA?H0jv%Zl<0)i2}mMX@|+MPGlc|1VEZ1N__on+ z4YzDE;iAg>CIas#LYk-BCn9AVa0y%-09+)OV!4#|_Lmy8uO)^dEKq4pdDxN5OFMFT zG#Ue}!2&nfk=?i***|yFbI0$BhAAA-GEbTk@XQmA1eRE&QkNd z5a`d5r~#}VfRBnGh)7sHBDvLL-LAk>Lx%M^rMxNbS4q%hbXAxvTW3tRZ%(izK~qr2 zdJ3;&eXQg7LU*GCOW71h3-=*8waK!AaXJcG8w;Sn!5Xeg0LP zc3o|-sbsx)d-GCFH7j&wH7oSwFHsYW9I$NiUAw|4R=WZP7gRet^ryTJx9zZU0=!*@ zGjFu7ql4t_GJs&s38?I{fK_%`iecKWT5;b#a*4U8QB_s?gWL5-`5+pnKiC#vxfbbA zRnobtGTyG6|LhA395D^8QSTf&0GyK@0M0>#25iCUbnHBY?ekpNJ`Z90JQubv;FlM; zu&rBVT(~Z?tXX`Bdd9nfZFQ4us~gxBU=68w0}+~U*im?TpNyN2KZtTEry`sh3h^#d z+TMkyiQeyB#{_~k2=^Wk?mdohU%NJSo7Lc26p0hiQud9q0`x& z>G`c%nTAnkQwOuDBWF_wvjMCbrXFTfkI$xF|Hbv6Cg@0`$83n-^if>l{w@j3-=#BO z8-JJP1Zz%PAkJbSZzbuoaNxL}Q|>dwJM~+Q9K)Lu^F8^CD{+3IB zdolA=w+i;>w4NkJ^Zlf8+fyHtgoBPB z!nvJ?s#v@dhIxH9?blZ7v(b)fC0h)d2lIALYD74fXe?{Clu9HCQu(3UF}h}uDK|_} zsyCts$;JRG)ke^!fO%3j4a?5+Tr@ZTth(8;h^*wB9UB88O&M54Aw}F+gsWmKT6}zQ zW6vGO8z>?mIuELi>t0r@#rzj9HG-5_DctoxT&$%!^oZ(qWC|gurk#?!KIqb(@)biy z7n_cYiszGkir8eIS)7_pM$sq0n&UFnXB3<2L*me$)RybU&u$lM8b&1;D{w?sNX2~x z6nDUyVcrMxdY@C)z%zqv&OiPR z+#?@hB{+pV^5%|v6L$Vpcl?M?BY5EC(sQ8y*vpf{`^Je6AxhzZ_cv zJqa4_I9(EzN9|_(_S|k-p}d*$BnFjnbK_$AT?Ag=m4VlHZG#Dx{P4bQ0lRNI0T@yA zUZWdtM(D4aFhWIddpKh3fq8^b_VDKe)?kDK$hZS1<6Z5Z{?bjKkRpb`BvixmO??}7 zQ=h;`xe3!6V2$nN7P{Qt(idPd##i=FakzYK21e1!RDBQ?-A6`6_wngWu;!4Y`V42O zJ~T|k8U8!M5@X zD?ARrDnYr$xc_M9dd00IIsov8a#r`3yy#iiz?5Kiir~S?ZPN?op^S;kanDB_=Oo0uI48tlIcYV5wg|j$>qPXSOV#*S(q4U?3YSVc zZ(iUDOJI({R(@e3@a7gs980a7_FrB9iQfJnDL7)q2Q%8}!bbBdaRiN1E5(1*;D^VD zYfhQ?b!@=Ez|=YeZbe~0A>62v z))jp(c114&7p}mW30Na(U4^7|l}lP5#hppAb#n`qJHrJwS*7F|QWl=cl!a$VSpclD z7crzPFrKo|@BJrv4V>ytSJ`81l#IQIQDQH~g^c6u5m$vh)+qY;7u&tQZLK`q+odPW z!2;F2UE&GWJiIc3FDmoki+y3A1dcpk>0hQ{RAr{7%PdwCHe@<6HC@IMtQjU4-v)CF zb4J&w$gQt`>LSFu_DW?Z=Rh~+9O%i1a7Ji8U|HG86^43OZm6&Eb@lq+H)tBK?uD8- zc12$o>o0r-SM+`aYxd%rK8#({lNa^OS;t)`Ykl=DQ7zR30^-VBnp%{o*M3b0R6UoN zzm}&Cc!-bzclj_t13nc;=WR3+*bnC51h&@6OKaDHZM3=>eyjJ;*2DAgB>g zUfr!@dQ@qHZbImCOdmwB#?XFBpTSP)voXr>zFxl@lcs#4j-sBwLwN2XeFz`rklvSI z%_u+U2e2RXN2i;n-gKok!dC)C_V2hz`*de!p_>c{E z-uG`msQj;0GNjQ$e%y)(ovr$z{6)8d=m6H7u5J1`Y@41WkVn)1)gfzp_ZepV2<3(| z()(xfXjtCe*P0*O@<%2q@~?*KrCNmQg`$BOMZf$7?FCex>;Y<+p7~t=UX-48L`9I~ zp|?RY5~nQcxs)wOp?UW82^h=h^l5Qlt@CwlR##;I5;v%ynd{6UDl2 z=t;1~Hgf~n@Hcoiyi=#1&jJ#zOjS_`1~@Y;(pFm+Sfu&QOA)DrEy9#ElS(5IspiP^ z9}9y2j70)yWkoJ6HC7RJDwq{nvm|1LAyFpGiAt{%6yY>eveLIZZu#}+d5bnFNz=Sw|_3Iy#^)u1j{Cm*eDe6Nf=bYy%}Ll@Fr zo3L~=4JDjScdbRRw6|osj$)avWG25+n7bq3{&H`*K9W>IVX@M*Bfnqv5G9pCp{cZt zHq2n-f)Dk?5Kw|#{qgOSA?jqbbmV0nQmC_ikLRxWg7gt5xJ>Gmm!S@wE_{l^KREE4!AIUaCbfG2L z2*Creh8k>!;IWwt9+UD8cN!9wu~^NdiB&Rb(rt#KAeZpMr`rr5SS`-w$TDnPARlDd zgyBQt=C@}L9Q262Apm3y3VRXom- z;qm?bY&<_OJ2+|-&K!L-n}Y~$!r?g(e*w#bGf$t%=J7TmF28^MVoaAe-dCR*6)pYT zp^Be7P9MjgimUR}1CK73duPzR@q}V@UdfJOVq6^6%$p`z{f#N(Hrh;A!g~-$wJrrI zZ9+KPvUC@hG6GJp8p|O{D@KtBWI4ir76qq?0RIM^LB8QVLJ0c4>HtY9N94GApZ~ej zdaRVJ=c9@+8{C?(4Q_&tZ*U7HSX0kuqgxu==#~L0p{utc{K4F@7bQLCyJ#{t@{;N1 zTc}73WCAi;^X!Y0N?+|MN7Ki~J>#wNxU%5c6md&RLX_ zB!9zSWG0|lF}r6XBP!FIiq#X8?X4K>4xa1icmC}2_Vg4(r zvbHv>vI=~CNn+XG)>gTeq-a{I&T27TiM6duRqUUT)?5o#PQ+T1=?DbWr)C&pPCnjPc>J;g7(anZjbpQ8Fu|Jl`4q9-pYmAlGE=j! zxv}OeO_Nc@z#@o%Mbdgz1j`{{&17ck2eO%Zvdg@+I6TLz*T^}-Tp6R7E1d!pP<&qa z^qgRn1FROJZ;V3p$Ep|Y06 z$h%wYB9!aJh*<=z8D=TWze~CKx5Mu3)z+?_e_kF`lbwba2-T`m=3h%O^v{kazvWF# zQR=UMv!1x1|K>NFLdI|?c^=k7_zWJFC3T9RM`e}ZqmemtU-f=$GuO0K>WYuT@foET zLjNdO{Q+y1YK(pX8>6RKy|`-2{U-NaZi`_wK7)4ly;wW6VRq#ZBDf96xM5ditt6W{a$v z0z!?Q(UC!{Qm8SOV7bT*5UJaMN9qpyrRdnqK5HhZTN@h_E0paPEnyI#(2H5gv$z!+ zS0zF2*<8E%J2qdOBB=sxZ@$TGk~IL8yK%Gi&@|Qg!ha?i_@5YD$i*1c;-#Vg$F$gE{H!!cICQNDofSDKxyR{r z@1H}d+`aaU+!}C;yC-gSzLhDq?N0YQUp)D|{z4LI^-noEdPJ8D8 z1ZyxS!Fdi#a3-I@gim_pk8=BwbPpjv^ieDwjgThLNTvxi(uEUjfzUSWRb3K3-7(7T zC!IZp75%W&3=_DA+oVBq_2Z?UaP!}p%%6YF6OMcTXFcItP<3mI19`#;+UB4j)O(-R z3;Q*7FjdJ@5K5&7U)hHv$6pxVzOwfxSki<2$cW!>Ppsm*%X?xshF>d0c2cIi}VduCUi8BmDm^&(bY0al9hQO^SBKUSH*_sIkDEO z*Y_4Kz}$tI!K4@F5J53_!<78NOEp+EexLa+3}(_j4Uw#OHt(du4-xeFH1NU^tO>$5p`$5r9(UOz8t>AyO*72Rc# z3PllnB~zioV89L4rb2}w6>6z|DNlu>t4xJDSF`7&kJt94a6&0`nvMXZQY#EOw2Bl-Eq zRXP9PoGz}r(|KZVvGK&&R6#sPH=X6^=5WrIqZ>uAhWHHCEnq`+B#4h}?!J3sy++NH zozG86O&=<^htm-&(Uj)DF!{mF#S$x21ULQnQW1Ll|3IM8&>c%saso#46ZRAcOwei7 ze17o7jAO_5)S$dEIw$5z=kLZ;_B(>XNvK6=2f-G;R2_SSR;!PAtJO!w8h{Yh!XD$7 zk9n)rU&@U=w|Gcn1i!0{P1PpG_{6g@DB?|HkMU_juw-oGeX6kWK1g_b(Qe891&@Cz zBpnJbj&H!t)vt7{6c5&@&7qqioTszwhQnZ_EX9pHPUNJPYky)J{ z)#Om%-;Nddi@==%|0V=$uy&k(T{h02^c4I0KLmA3Uz(2zg6a|StMwVCfv--J<$k8w zjUrex%uJN~naRujtls-xU&sEvdYY}1DgY!pC9^~)5sRJZgd#XjN-TC4^l|FK`#3pQ zNy}e0X5W|A?(d=N%6jN}@^$W^Ye}$N=M-HgOVQ=xHQw}iE$~Ut&9|-H-_X4eis=pD z_cugSD8TamM(&xckvrZ0ea{6emj1Aa(z4|;sH>TW{L?&{f0~D)Nq{xWFan7bBX|nW ztG5e(d;Q90DvKkBQAx>Qm^=o%2(@T1(g*=-h8f~g$cDI(6(#q^jElYX<9t;*hHNsy z8)FqZHZ5ctr(?J(bZk$`x<;GVZyI5GxGF>?c!aYA4e#FfkuIZ@hi}P53ojaea|?Dy=Npr|4qZquY>yKj5B)&DT~D_ zve?w*sa(awRZ;OWoxc41{mb@8@bD6Xb>wOL?=GCMI(=}+MO<&R!g;1bwDA<4v1Kz*X&>y zPq1dSl5jMVxXAfYw^s*!5FIVULFoMSQG&gy>e{iYI&loE>Y5O&8KxS(t)}aWdCv+M zw|m)-#N*c+`)grkC$75U-Jbv+t$1?YjId6!?z>;=W)ZFCi zku14-Q@$3-)oT%~S<)WWlUR@Hq~^xftG(!Q;LjL@$O+dy@`Xgfvw}ohV(b12vqI7E zvI*aOiTJt_9=1O(4sEh;(rBeLSCC+6=6_S=gwi{J%;bbp%eb`vFK-!_4#hUzfgB$M z4R%n>wKf%e@`rw%B+=V~EH-p(#~R{v5PCO6{Zzmjve+1&g2voa(EG-@BA3Y5NmJJP zUaPqmuxjoT_%PMLnE-2iuYv9hSfD!zn-ve7d|v%gii^N6B0K8IPw-1)34X%Pp5WJ+ zV9m+zh?Zj=dCReiugo&6YdJbcMN>7KZoYjXn-8sq-f6ylF2Nc!U1&dtEwm?6e{)=) z3*~(43?w{-9%2y~bhB(CyIHm?ALl00&H+oJeFtIjcgm7!>DAw6_l^s=Ma3UV+~3^T zoi#TKlWlWj9KrJbXk#Xe=B;9l^H(MBoS2d!-oiruyXMe@U2_or>}w9e1Z%eDy2B`T z-GSnh4B3a?vK`uMix`I1w6{XaopdORr4zPMC!IgRnl&w_i(ut+O)$*HpSDHnKR!&A z4{>NMX7jO4IQ!T}u;Gtw0twd4<`bJ5>=PS`tiJi)z0drzvrLXQRUK_nz7K0rUdS^o z$|n)5*_u}63s|f2#1FSE4Sla|^~sX7Td=3;GksIRos zDV*(e5(~4_sRqHCQFfy-%x>NoCb!1m_oM6gQz(FCHcp~zQ2ig!UA zS{ELNcC+*PQy%G0Cz|*`RIKnT#3;G?6ZI20AHY@N19RSX+?rZu3vFu&Bt7WX2l3Wo zM-I9r5G;}OTenR1ts6<0OJ*4=K4?`V)Pk0q^gnL8wjL~P{v+#3B34stYWk0heqntr zI+9q-f+zck@(6!9SVB9XO8sH>7M`+3Ah?YjC{CK7CJtkz&$(UoKl(dvu2j)-5Oo=7Uc>*PWIvXmKw&8Bm#N~@PZP%fcQ4pHh$Hnj-WoZ~AX zDpxpB*>=*a_P83sM@=iK4&wt~k`HoYX&4_vAi&#(oED@iHU^{K)$4jArm=@;HrquEw=~N z4(&OWDg{ZKf%@=VtU@l@AJM~e4Ydfiuo)nQ2JzR!dHi(?+qP#4TgH7`qEXf!Nf!N>>*lEJv5Mt^Bj|VZfFU}XiURr5+E0J+i@{AhuTx4{HPRN%<#pM458q9 zzcmuZz~UeUbLiw;Z+MB`CFAS9!3f z?*6IjAeXc`Rxn^Q(pfgkbe7FXX929ifUQVp*~-&dz8-WeYRQ)D?J5SuC`T$vIZ`9^ zBltSvs;pzk$Y~QiCQt7u9!`8()!f>`%Fq_t8(~0OFm}M2v(O%_u{~#vUSG6uYSy`E zzZeFisH|}_M8eIEf*Ndgj3roe7Pdev+``2|LqYpm3+pbaW5yjc)ikin)+Bw+uV{1%Fq`|F!DhLJCcY`(3_5mh;N&E?T;h38-|cQ9*wC(Rn)A(R-fNFdQ|X2;FB&t=I8Txk!=Sg=eZ}Xwd+n zw7RNUgki}*?&0N;OK&7(ZYmsr9FU|#q&r&JX^ zd6?%voTks0(4wwq=@YU^&a)VToIlEe{5$?cjYDw)LOLgSlNW%XDc%{9ncRrjv2R@D zZ-YO;k9Qw7&Fnm@{s$l5Z06%ToX^h(-8TWt^IX|?607Vx9rG%`@|OG4=6xoq z+)2%g{RobMkNky*^%2|wfHmA{lYbc7Id)d4UIgx_tb_ppad!4OBNMI$9=_H&7DFll94bgK$+gsP3HIEx#IeN4jM# z)agXjH%W97X2nFO5P~&qItf~164x463=JD%Q`fDY*k>9>RqowUO37W8QgXMgORz@X zt7x0ZD%z5rHh$NPjMeQ9$U2o6Mb#nBIn89}oCK9VhsOfeti(llJ1%l>$I9>P^v;Z` zPKB8iDy{D7XjBUuZ5PLPb+law!E#r}fJ%?yRC;BA>%kRo=gYF97Dzi)m&>N=^7-vk zb*Thvn8kG6Og3FN4=)oJTs*7X&PL_c4T(X*2v2#6R`}iMDmfTjNJjZiReV;elSN8d`e5w9ILbCRgGD_^uK@vS6g?+fcS zV9o5S!fIWWTdmI~%y}C4Bt|BtMc%s zAIv=&cK^@?D-R!!h^O(e!jQ;0UKdEP=HU~e6HU}b({apO*eUP!vWb#OD-q#f&%-G& z(wx{3f3^6Y%kaEa;GYGrBjBCN6bu)o6?wooQE^f~OUImvA!u&5v?2@b-viX#!<$GT zL7v`oBwg=1J+X`5iWP^|r3RJ?{VrO`FB%;(nlCl3%2L1a*$)Sw7EYcnkC-Kvrc`Lj zQYr}fKBYn!!4gYTD}=Mu3XQSIJy(u;*SFu}0D7!hq)9_m-OZxs*0TBqPEUP{c$0=y zd$(=_gq$qXFRM%2OII0klKkP&v^K}9pHgZ`)el#SeO?c6L#skxjtrvww!QSwJjGjpvR%%&{+D?};%74r4@oRi?H zaFVdGxlscTIL^0<5?}iFVPEfP<4 zi)URBo=C^Hi>@ibn%Q@Q7rUFTCx&_YOHG@yZ*^~}&K`Yb1VW=Hl%O4*lRNXJ!&OmQ}Gg=qaJ+R2?T5d+^@y)iPdfsN+aDwGpZn5pmw%8_P zfUXf;9Xt3XeW+?pnhJd9z1pzzUcx$k-YbM)SplmU6|jnV1*})kzBA}*)C$s>h>cpF z@w?8^?5?xmqj#O_5-cb2(77>t=uAlyC$F?<;V|hw@lkaEwVmIq@cF-L$MGK55Q60Z zui0g>*LXX>`>uDEH-30)kZCKUB?oPwaL^vfJ@{7Qs%+(@}~PM%T>1B6h`>G%D^*?oV(Oz!*FAXp=d zJoL|H5B>8o%EV#%SKCB<*F${;*iM8H5T#VX8>Sz|&l0Z6S<<&0^uzg6S17z)kzmw# zj~rlnj*QpHfh7g7lwk4@uaU>&HC~+BUj3r+aIE>ts|CZ4Az$T~%vU+4Z%(jW`4jl- z310AJOUnIbC;L}272J)9jgefTkvv2N$pw7naaC5np!{o3<2roYNL?~j9Ck89FegJ3 zet?|}K?G}-th^zEl{b(H_q`5vi|6k?l@IfB3}ar7LPGX(^e0&J_CD~F z_;5eTwyn=Y|CM~qEG14|#Lc#&z!QXGz1bEu5Nx%j2)5V`1fL-5{+Zy}<##&9Qf!|} zqE$kXkA7A8vR_rcX9mG?5k`4-XQMo65zY-=Gs|&bJ1=?4OeG7fR^>4NT8hf%rYzuN z2}hf3A^e|MPo;#cTEDDS9)ArXkFVKN8W};&>?cX_c=KLeaf<`p>R^GS0poSWYh4X~ zhiV8?Bpj*c6G^bffDz~u#sYmv#eZ78<rdU#%90X?A!lCGl!C@;}_Y6u_9Z6xka}A1Z&=5I$Bmu=Pj#T z7Q8noEyy<4j4qq!tdki}YXc?JwD`?SvjVJPP``|ReRH$^et#wveUurSmzMdDT(xRm z`yRyZ@8Nmv1bwCEwcmSQru>&9BihU3X%YHyzkEw}zr4`0?w5x|Qofy}agWP4W{=C0 z1orc$+95l7ALo(#l0-=Xs*$qMIr<#F(YPubJ!N3arS-p>uv=gmr_VAgt~Y8Y^_I1h zdK-EXY!M@7!&2cMOXa@1-bSyK2_McXdPx%UQ2z`z)IXc!>rnqBf~D1dIFgWu^CaY* ztABKUuX8UmDMYD#(MZuvvy-zqyTDbELM})3NbsHOW*&ebjR!G`@nC$&crJP3s%Tv6 zLl2hgbZcG(IumfOwMHM9R!Jo4sHND=zd#;_*$?B}!6ahS#HC3sTl%-1q#bL==G5{^ z&l@Z82Kfa2vUAg<86i*|S45wgefu&af|fR#-=ZQZ0FqZrZ$q#!DqFK4*n^APR}Ke> zB*?L{QkdzvZ`t6=A57|r*ObOrQ!vBJ+ANs=!X#Rm^8(VjwJ(gj{<~8$XbIH7i_(YP z{d;-p0T|N*9-mLpV|&G~_SwSc&OYVBuBp@<-4LaUp;+oh>PPZJj;nIWSA-31;^2`( zt}LL7g_J!Q#GOf!bCX}r$-y!(@G^zHSIv=~?z zuj`lV%<7jD0Rr{QwIo<0OErYOqan9<6dR6hn(@WhL6}WRA!v(#EZc&lYvQY0{6h$q zLeMt<2)50?2^OK%FAZi!J>Fm4vPHgj+N1j7O3ZgkZ2#7&*ozvOR#1eDkJipzO}( z+dfTPmu~8YQa@BF)A$Fn?EjG6Q2szS6u`1fqcJdp83U=I*q|rZvTMF;d)aK>(yS4w zm^Cs&GWe;%RpGI1JU{;-d!M^O!oCv*hqCL;%g}ZZ7O~H_E#uD8Wr>i8*!1ne{z;Tp<&%q>-w` zTN@#(wPna^ZG@}>)*O;Lh-|6DLssYI{$AGS!+~akv+9xA=aGwmgM7YK`%tGGux6P3 zs87D1*C#KED$}LYnSOJ{DZyD&4N|)Tg3&`GjE}M_pbEhjVwo*^YUuHC1VZeE>3eU0 zC-(65{6ozuJ{xA1&KE7|Pa_5Q@0yvriCJ1&D782 z7>lcdvB#eXB>=2ZT-tifVQoDYVaj#)M!nl?Oqw;~ zm+v%-4FH> z40Ax2!4BxiP&Mf3C4c*rQSnl^6vqQ`B=QVty;K(8a{*IxaOlj) z+g~1OwgmBIOL(LiL2s*(W~bYIba`F*7TZ-%i`rK0I@)$z4+!V$c^z##0IQxBPk37V z@hV+B`WeD5y;dw=B|Rb>`4_q9uP7=`XkW$R`ykW{$cDoW?NNpY`wa~Z_T#x5;^j0^ zF>+K$kraj%6eOYwYw{s1f+#2=<s)jDwr1$ zG2rQq?jd7U0;0wlbTv$1T@6Kim%74r1=xas*swRC*S*2@y0X2N_O82V+UIh&%tCN@ zQ3&mBS$t23XD;O90F)5&=>~2&eTmW3(#UuO8OlfOXoUzms^%)UtdhF;?OiiRswF>F zVwrAJ7iB&LMyA{N5v-Q{3__vLy1e9P0-(;o&CavCM>K2oq_uoo&R)#RTfEF#Vg8$c zXRRpt`odgcS=OvHaXkVpc?~!$Z;Hi4OiVE7F9(*Z24f6N6brFqU1UW0E_7YlWu!PQ zg7zA-rQ%zu_0l5O;lEnR^2m2gU5>IkfHhL#N)*#s$&2ZHUT`Ll-AIxyISUbM z4Kj$=Aa#YP^cqAy0M=0H4~1e|O-s8*ArD1fmSXlbupdU`Z|XZtXY8m&Kaz~GqEZAJIfB$tGhd{aZ zyC9Ma9Vb+gG1?@z;W`ekijI>uJKEiK&@1G=!hVpnpz`PXP)_Pg<)l886Tli4*$~P} zL#~|MY!|;^@=v;r7>2gd(!xJm7t3bDn@cD(TNgsG)a&M=ZSGv&HaBK){Ir{OH=Bot zsctyEe*)9{cjou&QK}2DG`|_3EgE=qeKv?JGtp#P}^tKmDyq( zm0s3Ctjya&jt;YK)iC)G-CciuRZ>HeCV3`^BAc2Qv?8W%`GcU| z!G3*${j!8u$|;E^kVRlIVZlm@{U=J9aUQV$fGIy$U_jXk30~C z@1Z4LA0y`YV;*zto^h_m_p3+5(EdsDU_3V)Tl@h^c6gciA-R4n-puQrQN||HKGL7i zgRVU6l;#(QPamL+gqoLOUT(?w48`9hguk`M?^^TUNeF*yi{G{7zmrh&GB0d*FY$?r zuF$;X;oN5!%k~*W=F>hyHo=<1xgTo#ey+B6z1FwI)mCRhRrG|TMxbYmLKq4|3ORb> zs-WkX2Z^qO$3#CAXMbL1H_uiZh>23m`S#rI~WGDU#Uo-MVihob*+8Ce>4aAt)oRvZnI z0~A)Tu>OB{mFG;==FQpwm%5y(B1Aye{%Zy<)5K`Kt*WowO4StU>tIn`XDc|!Iz&DJ))4WJY^Sr2Z07(`ulGGuJ3O*H1>TZG z4}4ec)VZ*a7LW@`h z4mN^ghqq8JgE~!R0tfOpD1(CMfYtt69_YVS1BjvO9ybWqrqfqK(0DoyTeY|1*rW9QZxJk^LS}0naSFdF1u`jt3mY)CmRDsb~7PWSOY`MpMs(_ZP5+_t7-oYsh2@EZJ+w{5z>z{h4};TmDzn z+mb1&Ghy(YX{2651kF)fPwx!wAH4M4rk_|r{NKEqqSLfM{NKFl60F&_+g_>cwined zsI~s*-di#Pms=TTDiW2Z%Hj=EQM>`LW|$f9P|e^Ts@;2!)%0xd99g1%!cEt3cGI;n z$H1GeK?F;w`nGEocH5PTEAH{!d}v*V>yN}7a1PXDyv>dSk!~-_P;7QgCRjtnwn8A- z%6w=b(a1Hml$=9J9E*uixp}-f!t}jD%s< zj6GYg`)OXni+*9lZh5-kLpiMk-S{(8zc{W_@R1q4=DC&Ls6UORm|uHxaU zsCXBzy?FDES0EKb)Uq0P-+|2CS1gRXZ+C(?eN>L7XQ zxa27zNS=0(JngvTDIxr=0e;tj|4u^qTSNS=A^)9(AffJi(W}e{Usin6>{X;}8Lh~c zqxGZtI^wFV<6hqt!?&zR+$Gl0!k+h?t~2`%*)T+CzeA1#U=5-DK{ti{pd(hZzx&K@ zdM}>utUerSx>&~uWgYwJ`|*e4syy8O!G#(3Kfg6Vq9wNtN0q5i!9e)3+z(y~Kj9); z?&nRgv<&tZChcGd^!{pid2v zjuWf2An9h4%DUMI&fLu=nPA?6M9-3K9Px31Pb%3a44+6qJ@B_4{BJ$*w;uGj7gM5I zg+#CU(yZ`EW=5{!&;@>2(Id@%U?$~SmL3uQWUWIuzFksEr;c3q+YFDz=5nN{5%fv9 z?$QpG+;iEJb>B_ut1b^>o1_${gb5Vr3;3?!s_e?y(dDn)_U-m7c14O`YNW(PSb#1{ z3(&=?u>@)2MGZmSBr%*sutE8^KG))@&Mb z&3^N3Qxab+bS3U0j!}#;6GA5NhvTX|e29C}f+Oedhs$F@HaInPdX-N$TLoJm9m-Wc zy$F`n`U9Uy>;oT4h#xelRs)Cr?f04=tKQ17DuZOTGPZ*0l(F?ASRN}|TVG~tOR)gU zippt1Zy_(o?Q{UXEzHA;4*BQd#^p~X(J`GRVl(;yY6hR zozO?-B9joX<}@s@o6Z*SIp+ zX{`ZtS5{6~o~HN;MVu(cveLz7D_XcT1*o0MOr`*CFf4s@6H^sEIl}7WyG*Z%^^l*Fbh-fzYTjtsQ?j+ z@TXyq>M#E^>`{+kM?DXFB*;#NJrW0V!>0{Qt0P@}Z2I2Z`mX8psaBO?aHR~Bu9RVL zr2y8PzI?b+^0_PJ{Mjl$K7CZhED8Xra-0{1DJauExjo-TT$OG7saK!bRsQ&~xoI2C zX!seplg>zY(iyam11yPWG2BVT+?`}N@R?1kG+(nC*=T~nAKO9^OK0e3aGb+c!MWiN z9-O!wc2H;Ko!>?Ek9TGDk9Sf11F+_uSEBmIN?!frHOH`LUt|_1mPDPi=wp5so#6;| z&Z12gU=8YAK!d6ayg}9W&r^*x$K9t$MU6+y0ZCyFK81V~2cJxWHMZZfK1*0xA98uS z{uGeib#J~B$6y%&i)L$2fwtR!H$l6$a{d-zIDOS;pq$;2@R^&G->EYG|W?%PV= zimxQD%1Zv`61OGvcAJ=zOK`hdFLt|H8lU{_YKa7Emf&8sIqY6F;-T(WdY_BhKiUSP zlrW@p@=jo#ygT!8I(auGSc)Xwy(3t6Zwk&InDm-)V$@Zl2I35>oP0mtdOwN_(?;w^ z-X&noEWSa$1Eo~fg#l;D{mi#>yALZdu0^dVR?3IiozoDxJgzu5WW7aC`fuMm*h<7CN`Mwk3O*m0U&o=`{XYkQ^I69AyF2TMf zyl(|)1=Cs_UCT!|gElj52W@A1ALqT#=j}tv`#9wz*ms2Yodlg^I)f)Y!%zAp&ij(j z`xf*q(>0`bjnli0D{k`@4?qu?eg^%_`XVcO^HHEtOcOv8n5KcIG0g_eW_knk2GerTa;7z)HB6g8o0xWhb};P$ z?O{3qI>7WX=wqhSpwmoWfWBb51iHj@9dw=P4(JZkBhVwJ-$1`H{R#S$NsqZtdTV;4 z%Am?j29SZt2js&P0199V0fjKt1=VGWfJ0e?HRWlHbvS;MlP$5YCGU&JzIfi(3Hv(n zzC`Rx+1!a|a z{Obnl#?%LMc>3rmH~M2=f8Li3%4QmZqeJ*;A@&vWzR{r3OcQZ*A|IWGebac~T+m#m z^_Us7UQf@w4g0q7zTKeROrL^2Wjc>JLg)4L%-@2(WeT&YB*JXynImkX@S|sL3Tny} zhma(3HuTILu&)E}O9Uk{^~KS?d^8pNQh8qvD2FKzNAvh-5%v}FzA>ONOp|bQ5+9uo zn$9#2G>_>`(3?yvK`WUyfHp9_3woDnH)uE0e$alV=Yw;y@|ef$W%E9MI-D(EEBiMBqpFs0yme zbPng8>`UW) zBd~7-?|TjO8q*RSUBX9KgH|(bcQT6YPEiZi|CZP0Bd7r3Fj zxX}B0f;^f0LH##90-VVa3+XY#d+K#Q1GfL1VV0BvA;7xXUEW!&R3-{Us+ z-R6CdK#!R0U5&!tmEOn=(HGoY>5cqAeoPTK8o@`KVP7-e7Y~YON&%%XWrMPr@<4e^ zQ$SOg=7Q!jy$O1g={?YUO#49ln2v*vGhGE;Wx5Nx%k&uZnCVZ~2=S*YeIqM_5kGqR z%Am?jZU(%Ef!@Ox$}|TwhiNfrG1E%WN~ZOo^-S-8-eGzl^gh#m z(0-=lpyN!RXY=%QP8la!hth!c)xx&0<;zTFA5pq)(nK>L`Ef{rqM2KtQY zJm@^rMbJg2??B%%-2&ZWx(~X~^ceJ*DaRc;k~@{KJWw7}F{qen9B3Rn&2$BHh3OXP7Slt} zL#AIqzcBp?`jbiTftJ&Q-l#IDGLt*Voyia6#}o((WC{g^G8sWerf5(!Q%g`wrgorq zObMU_rX)}jQwk`BDHD{*G#E6PX*Xy$(?_6>n2v&uGJOjAl<6Gk9Md(8=yCsR)AJ8tp}}V+6vmrvdTY? z%3vDogAlDgRC0#m+M#^yNYF^8*Fdi^Ex{E__=?q_)l6GJTbTSY{mtK(p0qZoHd8}T zL#D325u&RvJ!wBsKc)eo0ZgCaywCW&^Puxgmq3@8Zh~$y-2>fYdJKBZ^rl~gc+-zk zejD^Q(z*1F+Bx6 zWvWyay^gAM4|@bLv#(0eVgMPKd~noQNBzEO=p@9n$NVkT7=kKjY{H9&`zd(pnXiO;jq&>kgjbHYR}XS)QzbRs1H+r zP=BUuP&QLuV1&pEq?C(5MNDHrW0)r4yh(iC4A2aw1)v2?Ry7cJx(0nMhZ<4%(GwW3 z&%pbtfT}PB;Aj9Jtp%#Z)Bx0gsWGTAQ*4b05nF?vr30t~Q+FKg&PV%!`Z3J`&0%_@ zMvQo)MkcOUjw_b)6>Domi?ub#cC!UXxA4*TK<_bqh@&6!(L9!4f19RK(L&EVEXzsK{c7eKw(Ugph%|k zNaZ}I@-66FrW;7*2B-1|=ntmKA?S^TQ2XW=0^Ko$?pq5~i>YBqglHH-PY?@=Woid% z$CQBc68O9xpdL&ELt@0h5GotFpj@T`PytgBsEDZqRKhe4G>&N!XcE(O&~&ExxZ8Zb z+Z&)an3jT;GOYrwVp<;(Cf0}a#(lSdwlHl6ZD-mI+Rd~Vw3q1+=n&J#ppTh81AWGH z9{F;f^W|&M*G!i|mzi#WZZO@&liuYgeHhY7JPawq6a0*QKl8q)*!Pt83G5TR&$?zO zVO^8XbHLiM4mByST(QrU_j%R~6P`8cJ$$jMtZ&VMpaAR(;C;c^7tH%Yu`iVOg=1eh z?~B5|DBjl;`pXVW8yDwJ@+Ru{;32 zIIuu0W^Yg5tWVZ`y7M|MG>^^&EYZ?w0q12)r%}Z6CvD?2NwjgI z*V*-!+k@#(xBq6Iz$=QY;$^E?aoI|mt$f)kj950VOUe(6 zdB#)xv&0nmg44I0;-5sUDHGHDi^VkmF-RtT{X@gPC104raKTSga#oE{<{5W0cH?r6 zt>RC0tG46E4Hx^-!=pf|(a|t{UYR+nbqvH5P|4#+KIKI|zdQ$D@-;H~0aAfe-ObtY zHwrF8QSKD9gs72w77z35#J(Et_{BmDg*Tem;z`5?3VSArAvGHO0sC-q0K*@YJqPRq zi8W&AkbSB+WS@oXaUb}N?Pj0QX=*B}`^KW+Nmv4OI;XNIxR_Xz%97xLVo7iwQVBfU zxVYz~N~Q>naP*flIYy~CdHOtdV8K>#VCgz~@9if$-WVZ$VJh+J%wR`DqHr`wo+plo zw+GggcxO0BIUA^;G%T2x-?Po-+4Ql>#36CCO+qw$NhCWWWI0$aY0lW|Y@3b*np*$b zBeI8I6)6v>q-7`}!&0!iQVQk(QC6m4tRAe1o|bCWL!|QRN-di={BCFHCk1#6{=TEq zO!2s16sXnwjK3fG0$2TinHnTT`{BS{2&u$X!x`}|oH_CZk((O%Vr%4yCh6P1{9UfI zR2Cwo1tv|iuQ-NQb4_gE7n~{2(?Sdk`1or4Qp?1ZD$W^#uYwzyCW1$j^AEyTsE(=s z(XxQ#pISDZicWNuyj;tsLm@IMGGSItM{*V`Z+*&|P6koaDFKp;sE(7e64K}OjXx%> zik277;>s>h+U$<$R^6?o#ZJ1z5dy4n&gyBMBzjsWqpmt^NqzqPkkggTnrL~-V#9Xu z&7vR(osFGYoMWqq^Yb;gj%oaS`Bqa6SLYr)LIB7|h=52n{E_zWOiPdlMu^^}9ro21>^RA;oyz58{pAhYIoFjjh zDOtv*Ns-_GW&T+tt;{r?LmT;sa!}Upl<1uQ#sgeAP3!&*_04R}=w;B;-IaSnNAVPOs7O+ zA`3li6`}VeV)m>l$9p=f_iC-o^p8~LxA)NZV5JOOMJWp|{`O$^DI;x=i(J0&r^Gyb zm-$S$vM0PS79;gVv~xL-^8ao%hRPv7ID)5Dw4GGSupC>`a`H!%9@@R0ru7lU=#^OW zZ@=S`Zu_8;PW@z<#UT}sw#p})kurme2ewM_Xj0Gi^@5Y@oTaBl%c}MS63`P!kb43N z=m~%|I(%331iErh;MvyajpAzeh?B&OL0E+>2YjY|qe>y=V>q z-kVxuH6X!kEU7iyHjZC>wrv=(rWY~~9(40;d4}lF*TPd*b!e%61U38Cd*zDtUXlT1 zy;mx+<|AzKswFmgh2a(6iy!SYchZ%$>MP*;OW7BrWM6@?fNMIoN==X5=(g`A+Yv)> zZxU!0c8@ham`dm)%>`KF)0J4Zdu;G&DmM7U;;tLwfB2xusJ#u;yW*osGdZG^Iljrp zWWFo5%3a?{`DJ(Uo?m}aKbrc+&W^)`v!gVX(b+MJSo6^gh{9puC>$#TeH%YC-fL54 z4tHgJTM)JOxF0@YyM|`HN$# zeDQi&Yy0$UHI0|@RYDOZB%#6fr*uqv0$T(&;$TDx*@cCHMFTVPD(RZoHwmHgKwCL# z&SzWW*Lhs(;Z)`gHn_DE8{DMM;|4c4K)J=sZ?MU&uh`^90VJ00X>&UFdi5MN6Nk?N=&Vx`k`D|u~jN-RbS`NrtSTHm2`6p!%Sci@9jTew@Ha7!gF}y6m!)F zfl1u%>{Z@`%qfVa#!jyHL3-Laz9hk!z`z< zWTo%F(f6qTXQ?VuKhm;kI&Y0Q&(^e37txp2N=)pFgJN=D`Kv!I`$#gza*|VB#IC6; z$F8aC-Huq!pfK+O5#~)s;_qG7Ub?r|N&Zj}v#N~W?^+`EyGo^Izw2OPjkq|7qX%8d z*t1}lE^$wX{vD{u${~}Ix}_y{>zUTED|G-(>PdMg$Q=P=i4m1c7j6hg6O6x#V(+l> zht$dubVb7OLH^D~N24BH@nlP!(A6zKZm zm&)RzK$k##o@T7-MWN0UKR-ktDAYB_FAh|MeMP*l2>Xg?-}4Q_?;pFE*`N~Yh-8vg zi}+~295LEYT6Sl&UteO44lvello;zrkxSesq-~3<(KW^NTCHUz(5NVZar!teh1e>k z@Z`%LPZvDPyIc0&XLT*bS)J4joyEK)u*JQt#5r9j{1VY(oYN)Ym#oJE2+Q(Ple2=! zelMwm>bvwe6p8)@sfFop$RXBL*K|xxP3Nhp2`9Y6-w0X3%YI2Kq@nAAcGXxCqx5(3 zjrshEuvI?Mxeh1ej9X{uP@}kuVG$u%TcgT3S|XN4o9bUqRZ`oWWsWq$u?A?9DAiobv;wEsr`h$-^#K~=^i82 ziD}#d675BEsV&a?_e;nq!zuq_37Lc>w)wV$fvFwOr6y{xE+MmGvGslZrfPCrItx?U zJ_K*tXC1-Sc^_;|U`^|P0HdP^tZDpW_>P&6Uz(8HSZ>@b6zFY;Be6}6BeBi16S1s7 zzw22b-u0xm?bpU#cAe}$y{TGdp~OkWJW46%$@*ljve+tBHu}sT>8DFq)4EKkVit?6Slp1ehhY zaFSgTv4vsLT1>Xn<5$^JhrhM(Lw7`!;>=Pzvb#n!xbW@UHeCT*W)45$wdy6raz5Xxo+WNo zr?_3;I}E9EV@beSHJ@S8kn*_=HU4D%E!CHDK4Yuo^YP)=7qoWG?^@nnb205G*RCnw zHPf|WbR~}kqLK#%!W|KGz4fV?1xHO!qw3AJRay$$ zDw3qPtrAYGd78>q28zm6sK{H}Ip$wHJcY`NB;VB!`eWrJEGL%CS@I+1aDz4S{V{qF zkGThNtlqC5cl&Bt2vRBYK{ISyVg*a-X)@4z2FqESV_R3`@G8NcL2cVF9<+hfZf(}a zq143brA1HU^g+a$mxhp=hEM`obq}BFZvA_rTCiZ2lT?XlrQe;MlFc1SY?Y4W)9DY=dsk`PSiK6? zJh}g*MBOM%DdelLRj%5c9QAJD`@I{gS0S>MREVRM!O{W70o*2HtF(!3zdyF!+{7+KR3KR;+rBWvpMi+LV9V8OXfvzJeC=1?4?YPyS2 zHGLpDh6naJ;kb3lJky6zdz91lv&3}0G}=F1KaN=QA!h0qiJAIk$j8fv-_N+6vUQ>2 z)zYwu;??p4yjp&cy;^>NR|{D7YWW!+TR#W4#MQ%c{7&?4>Gi7g5O_sZ=g2`9AxG{a z;YALW|!v=68LR%`4u)7zAjO_h;m#cP1zy7#vDhC`B!~sWXxbA>sOJYqb zhv89km_2G-4meJ(v2nmVF@y2-mgxD&d@IZ;D-Q;O4pQ=~kyGt!f zW5uxdvi@aORj^f5m5XtmXSUrr`zcB+dXN@6!W8#WVv4&IXL$-%A_r@9gz4@J#B_Jk z5w`zj6>;p!BQn-V9Z_{epbLa;mtaX@=@MLv*g`m9l5g-}{HRfM`#!H_uW61qkxH4y zJs+bA`Swye`SwA?a^pVKzLOYgPkPfvo6WCzWU%=H4CnOJouel za!6FQA=P(pBm5vY%6^a=E5{Mb+R!%mL2hF|$Q^BxMY|>UoYb<5aTG~IiB~j~sVP%g zufbN)YaU&VdcW#`*Up*WR#n2Tgme&BLZralSKvMkmT!9%uEJMCsQGuydFNu!E!TB& z0v6E`J0ZI|=_DVKPUsMU2+2O+##+AsKmcJUeO0L~XIvo?;TY|Hh&x zU--|O^kjo>XlR={&6`Km2^>S~vR2fLVUpQ$Hkjh!!D9WNq$Za|4vueWa_)@v&O28l zUq_;D)s)fD_zUfwdj9kv*Q`9K>)qs_ca~$9C@B+mF~o9t7>FYSx!;z5^1H2Dv)_6z zH$U&?K>kA|LJmTkp=&BK(95O@m7%Le`~g|}tVFgh6u)q2N7=eW{CcBkeRyH;{D?K( zY}Kgm(Mr^J9en6@DA1ISE+mjxj{2?-=^^wX)Oo%vTv8%Gw%aQeOfHwQL(I&89%5!d zU%q-~Ks>QV9M29&7qbIsuxs(B-F(wG?Cmdq5USeb-)3fPrscKDTkcGInyGx2RSC+B z(#tx5y1vOj%nZ_ZK+xF;&Z(#CHvKWM*qpB+sOrT`W)ip3QfQJ$ODuWPTZ6ANlCMa)(Dtuex zADc{#%Aj0peQQ=6uvHX?S3PgnY?c%-SuJ9!!rT>I@UFJ3o?shItSMsM(K+vKOYu>+JXj1Gnqx$gi%KBLC zlu(58_4E1Ru~iSv);pJ)>>UwxFw1eZc-O?g-o2T_Bp)3l>e&!8RgSMMEOV!LX=M&u_phceP)Shp9Q%2*mZlm z#qC~ZW_4DU>xou|E3@=jT-mTyD%+$%=^JYwoe;^D4Q+^dJbw=UpT^GW=6y@a&&zCO z0MmIoaSAd2Px(-{iRi3PvD|Ii`K#^Zw3$203-p<)FBYl#G2H5<>T`%SFPQ;LKn7a^ z3^}95SDBV(CJy7`pR-)Rs;IWB{NikvbO@ z_7tVM^5WHw;?c~;JJ8CDMC~0E{{z3*4hQw=W$bRAsl1eTjy!(H*;=0VlcqWCg+7Yq zG7`QG^7`ToJ17MAWzG+=5Zd%Vk6;3Is?%HhVgfG>5Lqs_<>y7V7eHdmp?4aY{ds{A5eSBi%b`)|1j4g`toF?PV3dRTaWm( z?mXDJ5iY|UIp#ajCg&7cqNaDL*SyKJg461&z*|dhFBOwgAAKK|_t+}({!Gp5?NbiB zHi)=x8NnT<*HB{cDvea!6OP)EqK{6@3xs0{%(=_ zdg@4#m7eOdWEil*L>#c@^{n+J!dgELAIN|5g0(+qt!z}TfuNHv9abjE;?@Z!Ixrgu zbfSxH7Jj6GeYaxRYpYrWja45*wX@y`h!!^jq;hg2Ae3117~cn^ithtx4(40dd+qYF zMpQEuH&vtk)Vctx^RQ&ZHl0{g+|I!D`V6~XKVJ9wdyx)DW~jvt%d$vi9SgQfgX8^; z{aMmst4O+py=(e+o;%{6baM-vV;_jtKGu?rw~uuQv8HL&nAgnz)+%Jp7+NVs?&7F<+TVJH=#N~ZYSbUA&w@3tm2SOAq+8Q? zW@L7Dj_;eV@oTaF64v{bq)uZ+0UVezkiQSMO3O8=$|tolFGanoehJ8F=_;e*4icXd z&sSlqT=m(cza}U4Uv%G83{;)f$*H+;a*}#ePEKLOnquIBY1l4K~q$~g3P+__zr2NgQ0!H0^67^tXq!qRZM3O%6*aB zYhP8TZ6nVNHJ}4x@QHxdLgeP7tf{fNW#si8>+UTv6$UkD=US&CLW0yAm}}jYSW_4l zV9kLAyyn0s_q#R=DA`2@Zagg{b3bKX+t|SIVr*b3XVX~3Isj`V^Y}mnDF~z@^~HIg zX+I7$y!L_xnSaA<=idyH=g)73P-1yd@ee~+@rQvr-Y+j0RkwCE`}%m0h(^&Cb+#Tn zu=N3d-D4SwjH~rJ~EtS zq(_dXm4?atD%+UNkBqJI$YE7&`fb|3-^)@w6lV;hhvk)lv^s<=B-B%sca-;+s0Zlr zrUx4Eqrn4-3S?zDZ$$i)PJQ3@kpx<6MWFS=U|c_)WUlY0t3|9X1s941;K=Ns0<(V# znfZ#)$7+TXHhrxrP#JlDQ6Nm+S28vVGJ2i&v{R>yBi~jM3hN zDs)p;g>J%=3M^~qcMyx@j-J%&?QOn!vtQF(`E4w;^CEpqQKXl&^CEpXu|_nOzyYg- z9k2%d8augn+VPF$yv;_JXtB{nYC<-;)FRfr&1RQUvDt+>Yn>v-9eVryp+CuGWf<1J z;GtfWE^|XL3N_@Ee9TP4RO};VR*fpa*+X#^Po9X$GGAAnyJ74HfI%|WIe)~G=s$Xp z)s*OwhvFN%Vs2V=bX1&&TKwT{E;X!em4;)pdFY+EBm*w&z4*yNlAr8A!S8|9qgVINcQ2o7st)U>r_&XG;#uqc^Z z&5b9nSa=i5U}IXy3+u3ER-=*~WeeyXPHS>9DJ_n_T!5M~>nDG8zs$aww;m zRZ?{ZK9Zrnq!KTu+(-kmBS$ZE{(5mYkf^uX4LtC;pF{7JBVQ^{`W4ysMua0t7#G1# z0hXoTNZYz%B)gybGz@Yr9GU+}&0b6&lq@Q7ibZ9NaSUfKwo3Mn>~re=%(KF;j6;|; zA^=*~kOa4Njk?6L?q*wKDk}0UROF&=e+_u7PYO241J$Gb|T|9qHylBNE=`iXmBV7rGru-!u!Mr_gZv=T{J4mC*!e`@?4k6$U$ zYZUqoCTcXI@k6B@QCFs1g#`sy*`#uNw92L(v7D2uZSurwn<89);mwr8dv5PnJm@V) z4j(|DePEDA4j<81fJZOh4*T`7&pc`oYre=Cj~sEvgS_WIb$BbZ zTFJ=kl$E9d_pWVQ_h{QQ36uY5{;p|I#{U(<_bDvrI5C@+rI z(&dg=U>vM@QD+==w(g5$iWfBYD43KwOLaAgh=i{RM+OwZV}uBnx|t%lfLQi5u?@); zwjneXCGg6+rj@cVJ6GSq=onDKXV#NU&*3oPr{V-Nsi-K&P{S0NUW(9Q&20WaIKh^{rb??!zb)8)$Dk= zIY%HzsV~&s*qv{Vt#WhywC>hu$JM4^ z*(+Hashp`7|HnvJ;8~i>RR_{T< zEVCyam6kK8WOxC_Kqd2(R%NE=(ww6cwq6GONDm}(^qM30Fk95VJZ0xJN1t*^QVvQ| zj$D#*P?Er!k~9eJ<%8J0yi2#20@e>720QAsqYhD%sA?A- z^m9Z9OsAo$*g-#@SkqE;#?j6^*(UXFWR6#h^btsg3a-V-o|T?#9Fpzc3bUuca?5Os zzP~N^{gaA(C-?koZ>93CALW=LMmf?*5u#r?b|RLqf7Nl4c-4`#n|>bWzKjpOZ>N^Q zIK&O%&PgL>qH;<~3YT1Lm6Dr!Am;L1Ho9Vf+>(bQK!kzU~@X&x)EehOID)Yst1 z8dk9nU;Sy}sXblaK<=`b8zo6AZcfe3q~>A1{?&;(aS>MOi#`;&is*{!DwBP)=HoZp ze*3=qa(FjM1hiE|z^s&6{BqbTFSoN-{uX1}J5!X2?1{=m_C_J8qEU#{cs7C)Dwrp- zW4Xi-d;DDR?e4taA##Sxcx&~R=#5JG8Kn%1_ciwAuYj%c6$U-oKV{eIDjDikm~k(C zyGZ5R^-Sr>4~nhwpq=+-Zd-c%qmNL|WQ9TP^6af117B>Z$F#S4D6vLi*avUzebs50 ztZ}8OffJ`$qs=i1FRkY_S|D@BCAEdpo@ZgaE^83cI@tVQ@Y5zqg!irUU&N{^e_l*? zIAwRQMh;#?y{aiLuv3n2`DJ!eZJPTjOEFa~iM1;dv38?adc@jg5o@Ga8@m~zjUD+| zMGj1O*ge>4gxO~urD_cLp5~(v%J(##pxB0`mK%zOMx{6fmEx2OncpQECO6)lhkfzw zFFW0Ot0ft}6q4+UQe;;jV;?U6*ed0J&f(BE3_s1UiRkp>vRgk zl3BZ}V%ByE2@x(KbveUbLi~y4aXL5r&n+Yfm+q`}=*IDveb<@3m)h!d@t7yNcr512 zyLe0>)_ku-k3}NUgT}AYudVT|Q`9U*$^&|lzDhS|bM+o#b9Kp}xw(2Av8Fa}!z_z! zJj>#e&CVZMC1!Z59{|n~(g%oC{5g8-dk4@XVXIit{0rOE{Ub0hQ@T0st(ra7dnLii zG?`yvy;nP83$q6_TdxWDQJ1#xsQ-LVk-joi{GSIsoeI(HO0A3Wx@ z($dp2KlC!iYlU_zwKI*Bb~{a<#*c}u@|ax?yr2B_&vql#&)h~CX+07!K^zH~%2{+I zpom!WnLiH56dwoB+{?nXS2FwD8Wt|4V$s#hx6i?pHL0VTZ{M3(Q&J1;jiSIl8p%A( zt#d0s_sVKhGHPj=gvCuKA<7hKNt5gXi8aZT+NC0b0yST!1`l&O)xf{r3&wqY+%koa z+dxjr$E_2wtdaP+O%Q%=RBrqAUN!%gx4l{5SoKMM!;}0bKgn-+60qh;p5jTK@{`!# zs%5B__Q7^p;;QD{e;GJdGUv*t{0noga>l^UK7_#30ZvkWS>qV*+=pZ zN=5`cutwPS_gN(R`;e$}dwq9$%}s@?)!G6DS5kKxDN`|CN_mOZ9c&eKXNS)D!OXDS zakzOIwOr@W1L9qhkUEE0Vp*-Wawrg14rJFj(zZ+exM9ChoCvgcka23^-&c96*jHJS z5Bm_~4Xo*>A3|h?LmZhQ{&>leKQ=e{)bx?fjP2z#s~T&3Mp$5GSYUyfg9g8gRxuim z%V=PY_1SK4lb90NsBjQHp*-@s9baX;2L<{f+UcQ;xZRi= zsXuvYN;Ktkm)2dA(t37m-!+Y7L#0YVWp+{zv{K=qm-7I$3GLaVO`S@*)%w-7NV?Ki z_BH$B(uRb$ssvsuThsnaCs0a^Y0fCSdQ@=QsN}{X2BAW_&4B8JWT;$pMp9pNTf=T&8nhLvjnTu>s2x`v&8qy*1 z2~dV~rXD|KRkOj2Ypx}`ctt?-Wqt{=<)kyCH57D zZ{!u-ZU)Z~H-i`P)i;AD5X-Tzo+2E}Q;vPLv66Az?vI9&&_ng)GA++`a;Tmt9IE%` zs~uof0c*OvPSrDoQ+4X{UTv0pV#hq`9RVHIF46nd)Sln|z|lwrcKX#-CFYZivPOvm&yz9SHM6NbY$R z7nYV~sKRsO{uL~VUCD}1G~QJaZaJ4Li^ab4yQ_H*r++E$BNU5PVoD+l0&EpQ z5WL~Y?=LsFk!Y6pa<~SKd*6#zErMQTex}LE?{CL;u<-Nyhr&BZEyO?J=_mII%?m}v zhv}#pH4_YFCp?D0#V^E>RxKh5byQX@@(Q2#-ZJ|WpQs-d(p~BrMk_ZO*qr;3OMuSi_+<1I17qa%Q?&_1bRdo_#rzofJJ+ z2_Du&>6Z@I59iv9tx}ukwEHG*X7!5{HU*WGj34Uk^4l;n+;-q1h;2Ht#`y6A9F%`x z2j%dC?%jh&9&2s(=CW^GwBj3=k&?k_VXGA9P9B4v&27JtbuY8&1clIf%{_S2%#X=M z)?8XZ1ZsPVC+2kPxFB~eU z=|i5EJC<*G*1rqWD<@VaMla1;?V6C3)~hFbO^?G=)p5==)=l)PbDliV^5DuhGk$g5 z^F)43b5VuotEKTZFh5*Qv7qv-EfcRlEqQDPH>W~?g4p|$08?L3;Dz&u#*tZiL{_w4&UIn|j+>KKV<5|Wm z7A)8*f@O5#xe1G|-}tzkx}D-!3_rdxELc(;bBHx{I~|6MboMz3ir$^@G}rgGdD-Cw z?BsE6)<4TFJC;A5oCF8)79U+?y6J{ zRh5!v$MOt1t&38bbLbnGi%!%LZ56>a!?T7)lnrAbY1+5~@b@bVHKz2BDh)@5Q0jJe z(WvZU`4B%9wDd@6m9?@cD?UDlM0xH^>N=5?i=uJ0d@`%5*KhF`<@-afy-d@Sp{y$M zPdl|pdkV`K$;PERr{Ns4M9QC@++LcVY>VLwTOP#(yy~GimxG^WvjM!i=;@5s@~MXI&&Lm|(g1 zG_olWjcjNLu>XancZZL3t)+ZOypJ0B(8*~A=6_4m*PSry8!THu-JHe=H>XLs-rHwK zdi&pB-(AjoG_xrY&1}Z;do)8&1FU(EmRL`{C9kJGaGGJ<;_Zpm)lUH*8L7${mHtOt zeOs|N2hST#fop5yTq3 zu7T5d(ZGpj@zfl+)#J-2RhCN0AQd(1`(sI#{syVk^hZvBHMJleZ=cR@?~%4Fcb(0+ z%a8@!j&ew8lV)E26oN7*kr@bc{QH$zKDnH}9p)P%{lY>7C4;z?Ob`}}s8rO1!z!Ic z3KT8iZ%IN{Z6xK!B7uI?Awb5`6UyGc6-tkdkcvjrp}IkIs7`Y$h!Uy~l!f1*&aE{$)NjYvIufD?U%CBsVEF{0O^&{4JB7Kc8jbGc+G`njvY!epG>GZlaY+*&JcJ5@RLZ8vUA3dOF(5ohvhIk zC`aWew#6(k@uk5ZKZ?rnrNN#^6P4qFAz557P{`fh0}PiQr9b^s7DLoLVG5IZJ>uR* zd2aD#&NFp5%KF5Y>2qiULywXci?B4LRIoxQW(CVcDn8mB_>b6hwC%lR^*V)a%P9vA zdouMih%UE?$@a6DbvWcT93>!^(dI@Cyv81F_@J5`Babv~ zRbwr*9wrK{OStwHT4xe#gh;XV3{h-NgYZ5EUwO2c>(&D(8D#3k!2-7l^Rka97ekm_7 zmP-Y^!qrXF*EhL+QE$IuYPVUHqoI(BXxM=ywO<@qHWigL)qy6L5@o73SjXL6o$SUQ zrTGk$aVUVQQ*}cu4A;<3nit#9t}d~r05r0T5RL3&PyqHiEDub7#jcn90Tp|PGIXx} zfELG@w`a^Wtx&tm66ZJ~^l7(dUEJwhr^JBwv$AWujP;K8ckzY!zkg zdONS)L+am^V?ml%)w6MDxnp@Y;%o7G~H+5o_X&dAUXlFIS3Lv0zd6{!MhtE+LE3hG5Ad$qdS&#w^AL&5y}; zPjmYhRQxi<8<+g=jxR>9zHvL~T6<6m)DhV!O-35?Yo;QqxqU!etCOU6zNO zE@PTASfi$WhY9oF@r3!~2K$%aOm6k7lnRxhZnBH(g@gV2fSG4 z@k^c7{6f}PxrV9}mp0hti4B-+#v&RM9Kf0yy2);y*krdD$>h#`bMnyvUArI|)u^j9 z6&D6yD4;|x^uACaH4zt+FOqiUa?hvHjyXS5PzUb#)!2%+nTy}H|H+u-rWgzsqQWKaLub%du8ZN z`KGqB9S}yngB(V^gFc5?)6RBA81>E^M!n0qw;wyba_|H5msi&Wy5rJU+;K_eT)g8F zPb{~S_g$Kb`!2C~4&&(Jc4^gp2Xf_wj%k`n&lT8QzRBG*Wu`qH*NH$l0tR}K_$8{T zx&$^)wi&&DSkOMx`*l=YpZg&?aX&daaX+6VVvF~)!ZZz7wS1sQh*anasXi1aBqzje z#`jZy-i8EG>dkZf$>1mak)I?#DX@@sx@XIty^Tw^PwAHYdGnSfre{%`f*jX4EIKGz z;c{Ffh%KH)Ck8>z4PrUBXU(40{p)O`5D6ylD40z+qfBdqlsWo0WgSNI3JW9td2uI? z=vj1#E367A3Ou>1()<5cx`3RRY;r5>8Zj{#^EraCd|Vi+%$7$k4}C58fG&39Y|JLodDgIKGv1`)1}{H!X5MP+w~$O35wg-VS*-Mw+?iK;b|98T$ZF5JVznnNlW{J5 zq|^9cJwp}0!brFk+EbN!7#xb9WNCRA96&6)75)?)E`AE8$!m=_gw>8d?oAe9Rp_Z} zAZ-Z@6I%i$1$RrJ53yYDx50OITObMF3-yQfCi z{&1%B8MqabJtO^{nhJj>Nk8*PSX{8C{RzMTNdSk%tvzv}-}YN-yi9d6i^eet9~ydz zJR2wUZ%nj7Xu;eUgci&oi!qyhF;zy2?2c(I8#%P#M$jfTwBQHx)<-RD_qkb4sX~4d zIv|q}ypdYCNeJWs*5p(vIw7Up2?=VuBCkfW{fA~HO?8|6W&k2>(!T!K*Pr%1 zAG)a4U%O+LJ{z7#6MC|<;Okt3f)H29&yOF@$#a5m@|?;K=Y%;n;B8X0TNlrH!o`!C z{~m`fyDZxCO*5$&QEgUB<7lfAOeY-2myfm@NUX`@aaO&>II9#SW7WLM1=p{vcgT5U zY4w`moh&AJOVxRTcROOaLQR6zYZ6<%X6J5tB)m^fkzS#VDU*62WBT$l^wV`BRx`;H zS>wl<)EpGYS>uVUp?&>z&GEy&=K})nG}zOi4^2*&#g)3S?8||5#mj+`q05(qiFHALGj71X?>tC41*k@b`odvZWzE1GA z(F~K2PO9~|kuLmS9PI}Y}W5re&2@{0}j3MJNbw(`7ci9D|`yx38z-96`ZN^Nb* zpG>9AoM=@nCR$0h`H5CJ#G3pm#okgYQi6AFYn@eM_&v^)jM|_ags?j(3%i35c3@31 zN33RuBUYrks_Iwb!8>(m1n>AbKksw zw3P4WsciL~Ah!BSjlx#nB4UlV!MnZ@;$2^|-ZW`7bIQGYC*DROka{l`HJ=Aj%ML_o z&Z)>ilyvDoJ(P+JCsW*it-+T`q=MsO{Na&^thkpW9(F@0?DnOhDWVU370rG8+E#Vi zc3eb5Q;M#vYA|d36T}*SNrPGA-;`L^KsNZpIO|U_PNGlux%Bhs3;oQlSG(&~v0QOg zdr4cYY9C50U+-^UApGq~1G=&=Kfl`a`q5Mll&O4a{Q1r0isd1lh((V!){A5UQCly? z0Q2=0ea}OmHTJ^OK-i&ds?*)xv5OM#z`95!{2jYm#F`Sm!!B3sup5SFdUkVG>r=PV z`L3LTY^QG*KxtvC82zd|>D8ppu*@GMHKR~bGola?HcBU{{873PVpcN@ zqOr~%Kg5Q@Uw8a`nEXM=Sp2PpA0!n18u3Hl0)Lz02jc+##^cwCsVfMRkwpyBi{bQQ zkX{U@7o+nBQF<{*FNV{LL3%NqUJTNU;q+pVUJR!fgT6%!rT6?V->Mru=gp$EDW%L* zJ-j}FPWcG}8&hU}qN_`+$;?mTp7SZY=lo>*ewT}@eq5&n&5BooW)-xAgndQ4uL%2!Xy0@D$;%wv^@hrF*|XFPH(RBP%@EJ@ zjGL_zh-J-iD*{?><$#u_;@tf{D*0mai?rNUo_$3t&s0vMm1j$0S<7whIZCwl9FK?S zRkSUp#lwpS%YBGhL78G!&_GULR!~=B`61@Pb8#MfE>>H$IPaCM$xo4htp2Gj$6dd1 z;;x_ML3P(Jk65Gr-S=B0?)#AoT))45ZOn$t2>l@t%N|`{(sC|W*C}=a~2--8@3kH7v>aybY z=|_&%mevoRjR@MaIfC|VM9`ki5ww5%&~0tdMv+H%bPnK@i4|qUS26{kM*H6S+B#H7`B#D6q#G3c) z30=P@>-u#jo~}8-`_Vxu8FO2iaCM2nPpVX|E}_I4HNnj#OSrj^uK!-u;_rhR8>Yyg z%_0!tw;u80TMx-d`Yl$C1x* zi?^{7ZzFr&=InVJ+4DAMPmdaP_IIuFSG*}fRTY zN!~l}&uEowa9F5uf*(`anRU~ihkxvHQTi*6snMtI_+``2%wNUxEaMKZjhZK-g50vvoo}zR4RPJ0p_3lKh`67RKPZfW7&q6XM zXS6x8wpOtd+A)+5Nu|M3xaQM4%=MXa&v~IfLnW?Ehvy%5KsJBa|IPuK^bmexxP?h7 z{5nkES!Ykm2hm1*B_^ELsk+nJbutdY1&Z>aDi5dKdWh3*Quq8c*2M+O#rUk-B5~G@ zWZr$9Ylzp)XGQY$mJPsF=S*?cS(3e1ox2jt((8tEOL4TxB zSYsui*x;1GEHtrIgyuUJuUwro`IBy>v%oei&&Gv)SemqJVVTz+CzG=}wgy!}`&oLgIHRH%=|>lswk?^lxK$OQv$I_WO$Tv#_?v z09H`iK`t%Gqh2jNLZ>u<*IW$KBy$* zu3~Xuu;vx6J2w^AooOJYL-@qg``<{kk*lVzxh zW!KBHMif$OUN4JC@1snEAJ%r<^8R1kT48!qRUVi4Hy0)TQgc<}A4aTs(^3A#VwC?F zyy=DU(~sP2c0N|kW(0bb91(+fv>;hbJL z(hKMG!jWD$rx%X&!a2Qgq!-TVg(JOiPA?qkg>!lhkX{2$uL06)!09zWdJQXm?JZ|JNOf+&KEzW-a zvVN{cpH#V~k%KPQrj#9QEvy$(D`|OxnOBW!9KspO^=6F{FW}lWp{+6%_5--(e!vd8 zM0->R-Ic=g$1XFcwk+>`j@l-Qqgb(oi=u5yV)=be!k_jeuT~O~IC9Z_eFJ-QlWKe= zPfs?1XX=7PCQ2(Mkg0PaR!ypvVMwL^OE$`THuqIFR_{F6ddRwinl=Mtlv1N%GVEA3 zD$)smuhqa9rP69xSR~3e8t2edoU1|}%|z#`C{vtUz2D&EnWrgX@&}|sU=f6wXV8^5 zO;vN2Jg`bjU$aM%;w7bR?NlczY5p|JP@do@>k!gX*HVL5;dQjxH1p3)msCtE6tB0U z4wfX0U+g5+5w1}kd7>&&7YC*J4mq-K|MxAHoHhw%wfP?I+d&NX?aBpjxNi)xg;3Us z5?>>Jq}?Vy86NCo=uQK(knQH8I0I!rLtd>X!?pvl##lE1{=fs+Yy9->v5gK_pEK3e zt|*K8lA)0eBCUla7@4)&2*0jj? zAQtX%BR0*Y_kuq8YY&-Ks5I>|VHB#N+(0j7PNZt}qS@ctswI2gV@0t-WJ4N#fpV%> zMGG?-8c`WE>(l=yP77sIsrVFdeipfK)hWm5xd4$x7C2Ji7^20Fin_Ia;kG{?ecs?z zxnx>&p9k3|h(Y#}(Q^+p9xei-n@-|6^~;pO#bs|MvgczdFv9%VPI6JXb;gX{!kVYcaprEj~*OW$_G7(ZCkU+<1F{_Z@+|I}l|xQD-t zBR@r1Lsx6bBDX}b$W3Zr7oq9k(!I zxk7}yjS=B)6L9^O{~_;7;A^_NzGWuE%_uUFQOra{q@<}KF-8zm5DAe)L_{P(gsPgS zs#0obO*LzkDq8c{QfjE7T18v5hSGYprgroF*FO84d(XaC+o<>b-uL^S-;-q3J!joL zthM%e5|vEi6Ht!PV{@~JD)sy@8GAvB1C9kHU2ylIa@=Kl|>vp)H;MhZE`X+QQ?S>^I5o%Jdpd@{B87gb;7M>zPhNf-eq*4ZE=KIi8_kU2|P@*B)Y*WG*GapOrBpdmumi=;a?aqNzbB3bX))FfDlq`Njf*lNA zagmompi@-SnoZPt@obG zUtjM%hG1zP8}aEzZ}PNm^t#zByI->tVmmlf!Zt^Bt+BKTBGQy2)svixrF73dmtv^| zr8GAhB~sD6Sc;%VqF4&frC<;Iv~6njB+@0tHf+o4{a66u-O>!HT$nw%_KG2uYmbx> zd)bg0WM7vJvX8<7yxpNypDVpCQm&V_k=o^X@Vzsn_h10rWe@-1pVTrCPPg7xF~T@*S+L3r%l!|+t&_l+1Cyo`5u4m5JRwFw)6Pp zyaU+tErOIJ_tMt03^(F|iZnqdHzm~9^#M(lH&1vHiBulXf@{UXY#5J!UM z_ug&Sl70--Hb^S16vI&oWEI1gBm zY!dXnBzKCAGP!-rQiv}FZQHT0>O$Is&+QhdL~vwIX-7vk0DqZZ%@aE{4~GX}vBC>+cr4_HN0aKeHkLf7{hrArOViPZR%pX~nwAY@(}$j# zO)DQ3%3T)dLy0+a*R4XJii_o+7$(}OAO@@(#j_a5GD1_cM2Rt_YT1(C2~E4D{%me9Xx_8_9Hxt{ey#UJ9?Gc{0HyLSw2+_(X6ULafMbjgcB@f z`BX#VM>U@KVN;`H)UHVfHY>9+wK+OLf$U_Xgkw9|1Q0Bl`<-!jc4r%6_(Ka$4xBRP z*G&o*T^7n>>&9#`D3a!~*c$gVTFcJOrLZ}ca+{+{j|Eje9M+)5t@;9uxpb~FrDrXqi>nw(%_6RuS*nwh;si1Ua?^EXS4*OdMo0H{rH*LxDi2 zjEr|k#MM`dlX5(=8UYK6n+RoOB3DL6mfRkF-}{Bi%0lP}zgq};g&;MJHo03!BEb^j zr-YQUl#nqP#`=_6rJ;NK9I$}K#i5Y7I4JpHE)E$4OK4p2sjCB>5krqXjCu9WDNEb3 z&iYMc=Plr)S!X?-U};;{L(HzXCOf42de&lMUdAKSRn-p7#ju(d+w@WP7nL)B#i}l~ zDPT)&XjOkbQ1dm%k`?pSbi`)xn(}a70X(+_R*L7g0IkLVYw3v9k%Wj=WBA<>KivQo z!^2<9|E(DRR!sl)q;OE()ZLYvxLMk;%jKikWq6Zm#V?l+Ay{nKRd|)Ja<8&S)1P07 zT6KMvveG)P+=LT&leLn|vI(aGU}=fAAl-3`HFd>rKgYGE?d8w`AYASg5zWn2#|dRU zm}Vkbe1F)^1|lfuKk6FZ+o}c{iic;b%1O z^+V9uK($HL{HY73)<4$1u@H*9&zkA+CoMmzoo3GnZ=!ii82O<7pC07lO=0u_-G3S7 zF|SEogV4?zCrU0O=zS;Em@9X&-q0JhcAGfXG!M=;9AVq6<2W~Nv#w6C#7;Z##14MQ zwad7E(6d#yx?(>OV22;F7`Fx~7n++Ud(mF%KIc~`Y4?N-LwgPG!&DAD>1qanRk_&- zw}U9jjM^xV?1R$>MiSxzCt~igYa1 z|6%Ed6O)Wq^-1Frn#Q-tjFHbH`j+Q^!Hg0N(A`p0W{tv_DqxX+9^=;P#|FBMgdi(d z^-4Ln?N@i*Wgo|Bu8n5uT~m>2Z{+q7?YSb4ziJA~h1gl!E``nBVA^~xJ-wiuj}KQh zd*R0WUhay)*UP;M!6GfaH`NxvzWRZQdii&3oX)0W6(f z2M{PdU`>SrE5Gu3Ct=TmPDV6Zbm_Qt1UqgW&Dr<3br8W4nv*yLPx3=BVeI^OD()M1 zPOz~)jB(Pj8$0Q!_ySKlHYZr9-De#~v$Kw5J{MgnYEkvWYm^Iw<3y+1Za@TM18NRQ zHQwOXglVJjwf*)Uv^;3iLzLj{^LLS}7D#EK=xptSCSqR4_A(h&&L zQ*v<>mv@_gC>oTouNr1WQcjL?-18BX?dnkl6`fBsI?8iXrOa+H#BKxKGeXclL#dE5 zP1`RzRh0MkGUHxouCdE-6kfJgeC3znPyj6L#Z?$FSGjBJ>W?dG#>S(DOHCcn5*QBH zMS9qU4N2fj+8uRE}#084|p zYdwqIwVnqwt^7)N&Rcc9qqYn{q#5n8$l!@ZqX0q_i;P;pg3jZtda^hxayK7+|ISBM zHavO3xF{yR?(0~J>()xV?>c-dfTfY#vd(3$Ghe!IDGjE8EHJD_dSY<3G7opWv5|ighPn zhvtF44v)=sShuw7*CF-*3pL>;GCywe)tZ~0J>z1H$ZQia9p8*D_$-N3dw_RH?J$gR z;IEqazHm|VrtN=tlbi`)OVhE(p~p#_vl5kvLkn=g(%74#1$a~50zAg?@`0v4XUTgm zM4Kj)E@0>v#LzE*Cjd(ue#v?=yJSsE5dQL=s|RCB8dyMc-MSdFE)^?~Nw9?GXX~l# zXKP9ev$qa%YZx4{4QMD6ho}#AZ^r+^qR@6zdIu()F?2v)F_M>xa)xGS=VcAU4aS2D zIX#F6y4Oabe%bz~q9@8Vb<>s|Q$+2cDCPg01Or1nSYU_`NH8$OmIa3l)1-k5GVH8a zXvhrwyop7~zFXt%i>t1a>x-nB&UN;%N-TR=MM+3{SfwVxf}9>#$z+eK(5V@kR@c8} zL@E>S>yNuW&MB;qvyw&H$2p#0AqKJ#vdH4s0p#~H6qKI(p88s07f2jwPRPb+UewrI zaosicjwM*%8jHnxkH!z3nuXa`J!AXrXah7LEpp*$fxslxk0ymEvLq>_F2R!Tty4%O z>l6|LG%H8fI*_oXy0`>XCmip?ZG9iIn3(H6LPmfk(s~FN_CxN%9z5M8uu0E@^8)#`6~hNL;jHjOK3j#AH_cRr(ChK>7V7+xSUeQh(?=KQ-?U#)Iph4Q-`_) zOK9R9a#_4X0ni*8Tz%bxxVW1d%QtTp-<-32lv=vgGqopYdHhvbephw(X1gYY-ZOr= z#;kX&Q*bsY`+5g*2C($ycfqW8IkR>z9O&Kh;J3!E@wlT-sZ)GGEw&w!I)r~Y{;FTz zqwq}8sa2g{!IvwCES6BqAz=7wCKB8jWCdVBR!>l`{Djvlf7|I={+>4dyp5yRcAzo( zVm3xtnl`erLkPjr=wlsnSgb=nmhMioqUHr>V(tKqNQuyPU_ki@WV|X$;ehf%1WUQ) z1Iwo&3zmXfQ(9&>?C`ann$e&gL)>f_%I~ihu)=sO=}veFHU;ieA`F`D zq;FXK40+5Xr|8;BYzDqn6IDe6@Ly$aqH1bhn7gP>;M&R)uH>R3=#+MW<%;)L7=Eu= zA7r2&9h#UJWRt`O*>vIiIS6?|fTjH$Y?HzU+aP)PNyQB>&**=o>q(6jV52Cf-wW!M ziG>k`Tyeo))ksNA3GcrDc)yJnzI+c9qCM90_?Pdo9!s$F<@@20-_JerO~XIGne?A= zqFES81&yN^v@RwZpD=i@0ZVAgp)GMa-j;ag?`hxHbn)#%rv~k@Y5p&72Vr`Xx`ih! z$2LLUvf@LHOaI4Ss6eyVotgj0L!h0{AZg{mvy=>Pg;u3jc64hxL3Ucx(tY(mT$`KF zf1;5NG}W1b4w#?=208$2wt;i8ffSjku%dbB39oNV0z8^f8H;0XthaLHj`glhu!Lr! zH~Q#!Qy-lV?0bhd`1ZtAjh0dJp@{W(Rjf}bx2~n#B({p=FH-?U1c! zC$jbIkgW$;`f>-Gsm#HKl&10)477M)q^ z4!Ptmx#k^Ere|3~ z852d7+oAMPyt3sT;{h@r#QN?6h|U(f>Iq-Kk%B@u0(&b zVZ=@&L1>!yD{k5B6}LQ2SFa!~60k%NW8uFX%l(((Ta&Dx)T4VxEbz%g_)Z@>Dn`^p z$GQXyK6&gohCOzqhMzlX?Ehe0?p1`^6`5yJcm$WF=?TR}qRGdC0;Ih+lWtItxM<@C z)3fT>v`_kXX|MIC!hDo5&9|jffuM!9YUr@Vw1by^?)~R2<4S8sxx39Uu!+KY?l##3 zODpXKebS5TlY{pTow54N8cLK>Sx?K?TIkx6Ep%1#wHBgh# z?t~pmGZ680RE~$v(>XgI;P`{tFh8aA8owkfD9^%2`F1 zj}9SbrN81PA;X^oa~D5Id08xvetoAxbDfF{mFV1<>Rp#$vA)xhiaVXB;(Gr+qvGtB zzNX_#JO4DlabZ9qD-2K^(1ihM1PcVk0h3vA0D1p>;ty2na`k62$<4_1caJ{ocaLm7 zfZsim2o@W3-y@&h_aI$p`oh8YmT&&Cld`nrDbl#+C7g9H*(f{o5)uOeOP-=;NDOSo z69YR!oOR{Zm?`>7=oj+2(oPW1Cyc3X=m>`l8 z6Y$-DCF*E}?{3AvJA6asz(&(smgs|K9o3*&x>pWM_sZw1knYuyU=cLy>-8q<>qXpF zdCUBzZtW|n9tq*qRN9ovonDL|3dz{sB!mOuX(k!zg?}#^m00FeE%#a=wAf|_{TIyP4sK+?*2MDP!u_|h~fz(&7Vhk zB77vekirZE5@zs_0zoq?sez@yh>7PuyM4AuAt#-mF~L8VCHNO`B1rJ>Nw6d)TKSi< zR{oT@IP!k>xn@1TeOE2+i&C2y-wyRa=XO7ir8j1r*AYCNuW0b6J0NJ2gqwEF7fJqNfV(EC2f|s&vo&ebtqU@h`5ZN>py) z?uA;bUcBmxpj7ROs>Jm>>t5DG9HK}O=?OMb1nYLg3L>csekc(*{;i!W(=vCqmG;2o!t$raiuKo;qo%TN z?Vya>K?Np)Mma5H4IFz+Ev1akPAJZ%iClfl7#|jTvnh%UO(82NJ2G*|)u@gn79N_J zjOO~2Jt;;^&@@k_z}A}idX&dcY*Q;{2gr_~C%#QrmBx5H68rEv*}1_2vqW-q7VJ&H5}F(=N)BI?8Z9O?tnk&E2$klIeGKI~cuu7z zA6vFEWco(0L2h31qeX8N{!_zJkaTtp0L0#=or2Vu^#(K>+)$oO41zu^KVD=m>}s&K z($ABw4aJ*6zG$oTClc%b6p8hJI>ZvJlP@-mIoRUI(aQ?I!|{Xc1NPXV3w}si^a{Pd zO;a{f zcrQlcHVD9i7GH+D;AQSExZ$>N^9uw1BV6$ic$%@X1-*^8AX}fleG6`F0xSuYoyW>I&t`6{jaL_~+nDho8Vapz|wAPJVTvfDS=-T~yH=6Tb+@#ZWr`7+qf*=HLk7!pp>60Hz98TW;`oAqFNos{0=^)QFBtfO zIlf@v3+DKOfiIZj3kJSmjxQMaf;qlm;0xyXf`KoX;|m79V2&>Y_(C|o5a0{p_(Fg$ zgyRbVz7UQt1o%QYz7XIG;rK#;FNEU@0lpB9FBJGfIlfTf3+4DifiINf3kAMVjxQAW zLOH%r;0xvWLV+)o;|m48P>wGQ_`*28FyIU0_`-lMjN=OfzA%n24EVx0zA)emc?p+tY?=*~(Ot`I>szyZ-!16_i*g2J7Z;-147*!D z8oOz{SycLrHqbOr*0SxRzLYb7Gy=`ipslK|IWD*#p^Y#;ZU&*7LlE7@Nzl(hbA_6> zKKI4hCu#(9w_wMF;guwv7HX2ttEsQ@P%{3iq2%PB+thHsJ%pOqLOFyIrP=Ub zpkCq&Q7`cY>`=g32AXpB)p7fLcHEv0;NVFPwZ?w%#M#Jy+W9pF&0(g%K}@>X6r0fm zOZ+$8W*(bvvj}Kj829R8_tQU8-ZgYwojx%icI$kb#vILjn=pbUGz$^%T4+PwjPWZ! zU3&NN()SfKrgLiUlfjz% zsRFroCR;DA78aX9?GxmsDe)h}O8h5sG$rsB0hUHnidzjz{o!nR@@4qUJgfS>7K73_ z38zD5n3hWF`mz$m>K-swMo3pwS&IAv^Ygz$lBAJ7bYFI9WR9ckcfcfQ6 zp4!b46ZI{X|&)>6<|>$6Zk~aS#txDSZ;ul zj+Kk6Z~zOLn2)P)^7&Ob7YA?l`E%9jSCrZ42)ngYG;8e?%PF$8Q#ipAVYh{{*_JDt z-;Q`Wt=t5^xfT{>F*tfLd{-no7QBI@KVzPp(3r6D9%DH zpQT4do|fi|7PFK+1h6`(UP8+Gdp1`A9opi5MCsg@CMKlXhy4EUf06WOIhb4r$$oWQ zlR)+aMYyV!slT>P=u_jgtLUjuQeC~7`F7&%WZK=^vA3l>-2deLhj#VIX6q(XKeV!y zH$)VrP-&Nvd1d2NekOSo?8ps@xLks(?Vqb8*IThu2kVg&;_l+>!-;1JAZhX z(Zk5K+DToC+qO%^ZQG?z*#t{m`!cxpWzMyy-Z|sqpLv`jfZ{mP(5yxrceUHwoNHI( zCS1T0*RI18>v*Jh_0P^fUfZ6z#sZqf&>I#DyCz@hh<^jX!-DTEv6wlH`M>Aa{=?B|NsM1?)+}KtdYNA8XHk&a*m2UFN zE3Xc!Hzd=-4(!4avMXdP-+^5rc?3&4um?}<2^otW=yLMFV-NjW z<45swKZM^Mu*7Q&iGPeI{w?TuCZ@%`c|=e$uVukGlx3sPLl&GvfThvo*dVKdJBJ!x z?S5~>`7gf$8lp>`lPnlF&jh2a229jKjcdj^7ob#)TeSF_L9is1 zo1<*4IWJp#>p|@*N2j1< zOxpl7BIK*Fbcugkm|jX1Xo-Jgf~An}NdE{n(mxt#F1B~=J@cfU2`^})Ibbsx1UEwv zUkSm|Xg;%<#Xhqk+p^x{EkoY!ctxNg%_>7>spF`rIc}|t<~Ry50ZY7a5|vITd8O0l z0RdlbIQr^cOiCP|+Gr{xNvX1}634D=n@_NGdsEl#U%`ME{VCGFe_o^_%A>RU5f8i`zUgDyo#Y^ex| zEpzX#_cC)Q*rUQ-HfpHXgjtV?Sku?Qah}dHgvB$WG{ptJUF~uWXM8ijnLUT?1fH!^+ zc~(Cla1K~v{3|v&?1~Lle;sUdwRb{bs*9G|g3>inIQIf5iEcOT5z&KN-uSELctyOw zzhzNO^w~A%s#eJ9K5wHTRlUUYlq7|xdtnv^(nrJl^KZI~r zf^WYc-?;IrPUsX4F4PQu(|Rn7oIB6x79jD2DsD`2U1)xmg-zx&H=5*jy=>JR2cb%v zvZT1k*i>mFd<2TXxq&p78=kQ^n+dw*sopHo?u~ifzx`(XapQJs`_K{TUmYEk3eAoV zAp}d?nGBJX%x@sxRo``elHZ*IjYn}UVKZLb+ET6Pn-wvO^C3zeSvz@w=Og9ME_*2XtcUM6P7u zuj)2m`N5r8FWr03Qqtb*?#1kNcZI87ch4kPn)n;;W7r$+6lpDr99ynk!>Ik30*Od{ zCT@a#OO{}-1dbChBf!E|Y>PG#ZS4^}eNs~HSYAf|B@qIFPK|wtu=_(BMFn_h0~^Ce zZQ;z2R>XK(QJW^)>K%ROPFK7SMlxN)hX{#0gc7aDm}G(_8S@A^M~`gCtGwueP4>Yn zf23(^h$R#g z{-+_-LO>LftWlk2g}{)y+Y|#+7_>D~N?TVVcMn1BDs>ZO36}Qv51b)?@G~T~q~X0e^}79Fj%Au(4x0u`m9R|n>q)SLWdLmRwMt| z{!XUb^kdi=nmcD;H#hF^9_%%Y4fawT-h;ie36|tgp;t63^dj5**vj{RD2lUf3N*s3 zNl^_6PtQ!|>6y!S*weEM!ID|y?Kziuds6<1L$ep^ewQ_j{BW8$(-L`B1|_kTK}t+v zWl&>+g*aOs^d?&!L>cXyzw^pD(&ck|EmIp4%2aP4jJJwm@m6tsB=J^Z1oImR%d?hN z$@odZiQdvG6+bZ0@jDwobjr81D!>oIxcFU)A9xY)dpv%oa%cviH#sy95XB)^Rdc&l zcng}Rh?1GwAG|i!R2vYgfKlx)%2c%hlO%M7b1;NjUqs)RyEEzfX;lJR6S_YW1LHl&zWi4aucrzRm@kAH>r?%m1aeqD0FUCC$| zP5X5TN+@8lU*Dr~^!L1R^w}K4M|G>&i&`R`wcFY@j6IJ&rSLL*LYHOq#wzka>h*}e@s&Z(6-Ih1Nc228abB%k$BOqUhatJ=H zGg!q6QLG|z1!x!*D})m)nY%s}aEo3AikLNSxAJzu?s^+dMX;9YvePq-?SwohL_0m( z5-f(X8?|%0dF|Z$ZzZ-JQR6V#i<%7A=Ft(0(NQ$=?ubU-fCYkN%p;l4BXN>dow%Qy zWoXJ^3*2hYmHFoCrS`AbzQUOoe^ut4^n1qz?fad*Aih?|bw^Q>c2tz49rcbNSalY7 z=d)wpl!3C=wN21Bp~1x%HCE5`vH(iCk}E~!L@Ozs0T|3AHD3Amfu<~ zx89ycKZtdqEu|ZZ`WKV7_4hS3y62utO--vVyo91VDrvg&ni_&qw3?ck#k1o+d%vM2 zZcGC=rU`CL12+PexG@9Vn8CTxF{9C}fUCGml`Ax0Ce3$rAtZubK&2<~z=eP-O_A_<_;oF3zyX0h>3^EjIExJDJQm5W6H^u^Kc&>~3fvl3+$M8WS5O)YSh$paMELYaH_A*n`0JAoa$mofWx^g>^N2~v z`I+RexWOm+rx7gJV+yi@ruftQUu-BX9>08ck}?xaM6&}*ede)JpGExJOMRviED4vF zede;4eMrAMR=z^~iYAvuE)$8$zN(s774EpIFe_L?iYxMTc`LEEKL-`X*Toc-qVnmpB zsy6$aPFpP}L$k4n4W+bw>KjOn15p~-K)Lf?pMAvh^mOdI753NGO4K8oppPrPEiAF7 zzgG*aQ=zG`YE+}h!%lJRu#07%bBqt?yXqB#L zbuHAcg)E|yEq?en3t0X3muoux(LO%3viNqrtKq@hF7Z>BuPTW>f}m1q^RXCsJyZbWW}GVUWUrHq0hUtjVo(BrH51{2qichGRP&s zX|SxdZJH;65_;6)w%6d{dyN;j5j4|tm>}Td<3sHK2wi#Aob)c>lIaWJTrN_bIub0A z-X)OUB~E(XFSxs$9=x=vIhLQCqS#MPik9;elEwf_SgwN&u5&gB{%}`=>KhYJh&2Eu zc2fn>FJVpDFJVfd!!KbG1WSVG*RVwPYgjTUvcvp|o32&*?pGrkEzmI>9_Zn?WRT`G z+%1}53C&29p^fBaXwi!*bh|v@hpO6~G~xOaX!0i~B`*FG*c`AlryH2l4L+x&em!&A zJXu{%!=g#WpRl$+390xKq#|Gm%T28BO}@T+4iwn$t=U`TzLJR6-2DeVOVKSsDbPCz ziyp8vr9-gf4{=NWT;`x(x;#7|uMI|%Gj}kJJ3?CBfwTfF4dyPUbeB)*!NtTxSI3S| zzonC6c{0nH-_lt`;u@|m6Pc}yOP1E!C7neIr;@s5oJaxT>a~S(s~)(Tvj@MVlb}@XlFl!lB)9nd(eBaOrf3v$$7wn?Ldj3M<20IJ zX;Xd&h5XJb6HDHpp}2Ptu>Ly)W*k{ko=e3eoP+| zwlnSz`A6M;@T##6@BgQ6KNZo$sv>V^MUbzv+U>{os|VZ5R~`MbLRYk*S`?=xYGYak zjOSvoWk5c`(uTH1tB=+J6a|>QBP++J&#u!78lAT6j7$w@k*VSA+=pOETXw@G>u&s# z^)<(Lp6fE@5Ywn!lcoXA$t(cvXh|jqpcO4(iOK_kC6HqYc=2qHx*zNuq+!u`CBQis zZz@d{0-RF`maqf?OAyEMc*LR@mxl(mL{+bJ1UOH|%Sxt3fO9dyf>(mk88?`B#~w zQItL)KW{)j{;4*e$RC`Ul`*ux@*l;03vu5zo(<_ctOSZdc8C%hSm(A5moeh^K7NjS zv4?P@KD0_jk@^#aN1s@A1oQ}v_#e5a0CMw=!4G}9I4A}`1g!wHfe(fpxSI> z5WTw<&{huZ3~I`D24&*k_5<3_p~HX~>HF-o1-| zyUYLW0iXvQVnKBo3rfbPA>ju6M53_XChhDubCeWRD&$_&WXVcrG{d+BbKMH76t4Qm- zmEn`fGJF*EFTY_^HQeO32jTy4T(C2Pi?#4Rj7jWX>>) ziJ+VVVhNUlXs!W~%r$@#c0wPN)CqEWt+PUxx?{8sj?g;JN=UDcb2h;eLDUC9)aL}T zH2J$qpFf$p%K~{X3Q1&(LX^=g3W+6HBJZVek}VCPOhv16ZP))Y#Oe*85kVD=OMDQ- z^MQD$N%;iTBv=Zn_@Qp!FNivIeCj&Ca*Y2MzRKEgUK6=YZy6f1w{SHQVR_3?n_$Tw zx4;m|78q!0Uca64rR$fi-cBFbH$Rh;IWNKV(TZ_Q{#~{6>7S@w{`V-B{645Uc1?kr z3bVHAhLP`2-m-cJ0FkyDAwFgI$vemK22{uA|rxSIQ!J^zn7Ku2px} z0TxBA2O>?WZsHQhnz$$qo+d6e2^NaNi|DTTqRS{CxIA~<`JTOl&wIR*>DWm1f#*i#@*p1mszJOd zJ9ggf`bEV}$};H;^iQ0V*eA|PR?R2QaRlqma%;BJc`SaAF7~A}Yo9m-6jD*g0xnX@z|;Cd1Hl=MvCziJ;{Y&@x~#jF&;nFLPQR@WsqJ z4?ThptNl76sp+93o%T1-uj7X3*Kq^=Isj|^Ivmlj!wZXGdp!5%nN|1hnhG?CYP1m) z!W!btQlSA!eB(oZ7ZlY5|3Grn>!p8ULVAbJJRG_bGJmBDRiY8J$|X_g$k;m3>^WmrlKD-$X5nrjceTEJrPVET@Sxe0N%B6Yb|TM1H~4EE ze6od8fFh@mso_(d&T+EB|zQO;|jN&>Ksp^>VOPwUtq+wIAfu5;$NEw6OeI2tWJ zUE(|)Bbdcyc?rH3ur!)c_}5WthHkwweL*N9577Oneu!&T}hnjXTqVO#bPlNGBac?0IxiMdy}Y0Zz+~p z3(%}hn)CBXlQU0zx`uMNYrHUypr6aD2_ZpW?;qk8JVDhmNsvnyLj09NCOgpow<}~8 zl)5q-41cYWO@kgbjca5Cy{>6wY4eBqteKwL(nLnXb(b$kGAzkxv*!dqJYy)s!Wxua zL=#)+73^nY3q6i9?}a9xEvv_~um!W6Nk9`cSBquL%&MLL%A?cdgb|We(@c7MMzh|Y zv0Nnf_6#Rjl4a?h*(}|YGJoLqQqO z6%@x&wLWO@L(PsxG}>`77W&Otq2G*kZcVU+W&#BC1TLU|+V*(B!*AbRZ$zWX`LQ^4 z#)?yCEKVK35}JuXGm)cdx@Xw>tJl3Pr%)`wcovB9EWq>t3n#^5OlL8l&Iu2@+heyf z(S!)6mZq*RfV#dwsOt+b48W4Q{tkxm4j;zC(rPuUwBDxPo}x?jtAit}jB7(9QxxWEO~s%mQecfTd9^!YCH;QLM{dml)Z? z?Pq08xdtmdQp=&iE*Bc?a%?bQ3Cl{X$V$E8(bxa%c1WQ!78DZAV&ZR)} zNv{o)&aeO63seY&QHSO<^wiVh%F)w^|*09Qq+5YAq zTDiEn;Kl>`Elj;v|NN;*`h&V}D*}mT)JC-lK0)rqCs62VVLky@0hShKCqCWjOl@Bp z&8h!K&VO8o8qsJc*FNWtY@c&Cj%FV`G=L>EpTbx0DftSX+}csv@;{|Z?Jb~bg>$r( zI7eII90e?)Y2%s0+IUj+b(^zQ9*hZT6$f7D{!c2I1;cULR7xW1nwYMZAF*P8`ncgI z4&+OamG7Hk$!ymazSQY$*SZ*_nH!^*e5};jj}0ptt>?H^90P zSz$DD@k6P_v%c6IbY_Zcw1P(GQQBxIWE%~NTXLfzgJ4O;*=)#Rn+-&7w;H^-bmoGnZtMcP7*L|TXdB$Y@@rZLiUMUu@rx7eo=Q!Bs zIA@<9Z}>#_Pu=pWCRm#{k5`Hy8uGh);G^mj(TDr_@K^QoRd(LszQqs# z!^=54bH}c$RZZq<6~VvS)v5}?r>F;~8*@jgySr6u?5Vp|B7Tt8h~M4tlggn!fFO49 zI~PC5yTb2c{6L1{_h|f}@hyH&#t)2m<^g;j9G?g9d2oClz~{m7d06!UMEE>_&x7Oh z06q_n&ja{8I6e>H^B{arHf|^vnELC)1KL8MvRhe*c(p6(B-=^+gu!3+gei2rnfdsh z%Wq;Ebt+J6cXU1u z&0vp1^EhQZ4(&$pW~Do;eOMH;52M8Elg^H%)e2X9Z=8n4qDR4^M+J)>1xo;yrg0oB zdYrT9%&CRz&V6=;j$E*YjzwQbTglh$6&8KnK7(M1Mc=@uZ`f0s*rjD(_uDw9%MRmc zG!b?h_Qz>wC6V|vL=<3YG-n~g&hovP>+JYwZ1@ARMMPj)o0KE^ayf=5=eA==D#21< z+8NCtokJ+@YCHP#RV}MGNKi(DwKY~+z+bdKW_1mZpsvhO0}bUzeg+VMp zoj%LA^-qarrdWC3~w#CAmx z+Z7NSUfd2G&d~cTrYYG)KSem|S*Qb?Mv23Mi@UhaWF2TBev1Y6B>1wOi zkn*b`!&X}*+gd#tQK7<>FYC=1rz#@pNR}JaH@`UD{H|N>NHhJ|iXE)zh99cQBIrm( zRROU|XV<1Bochc-S&ayA#RVdsV zm0j`}#V&b_?roZ)`5i!zIfMUs-?(n9MC_X+kd>@gQcL0 z{vl&1gZFu$7{pT>Iw%dEhUj{(h`gSE61!0CGcjP(p;kABb9iTle`vEw7*)5iuHnjK zIJF)-Q#^O=mPnlG0 z(7dB?;~*x1?@u?ncb=tvf#!vdL7j%;OYy*xdAN`-g`kQqYJJpJzwer*{qX|bR!B?3 z=}9-)r)O|Uj~R0@^{R`)Wqda-jSvS0&KpATUEvlf#CHGB!Bj=@`!XBD1La8h%umP5Q;%3i@gZ_UM9|*ysp41`d(l9BbJN@A z?|pyZJEXsnXwsR~6GJ+(i6M$(aAHUt!NR1T8WPE-hEVS9*=>_LUY*>WxDxswMxn)i zzOc{5yAy`7Q2v?FU;#ZQq zba{YB+k!c7YqoQN z)kGMAd?H$8)*)yra|lvGVGcp11WUHJQ&0wT3L*zjK!t008-f+X*?wMb&J)9=N%#hg}S(s~(^$z|x}j!bLc}?8piG{htly2TuBtdeF%9 z)zrI?HT6~;MNN@c1Xx1T!W*sjy~+Dlw0p-}amPMwVgXGnLkw$WP_mv|8LAU3p=o2t zWNi%O9tj<^dT!zD#yXKh8QHwMplV&qMaaZgWP+PK_4K-bGl7E_jqL+THs}L&bsod zaYrv=|o!ZH+V90n~f{WI)43sZW{zbShS zSD;eV;WhsVf~6_F4q5m*mxX(`FSVW2r7ij3%p`jYh@uuQ%GD7qT%i2As9lf}FvtWK zii-YJal*A)@AaTE8=3Q3xTNA0#n0TrC6Qoh7_D3)St}Ph>pz)aJ^E4H@7={IO?<$^ zb|&s9*?cy8MrhC-^+o$MDiWg&oFit^{|%$=rpT z(gbzau14LM;W~22h@da96R?@+jMX|Su7Kxug@+QET;b7$V5t~vHQZ&Zxw|Z4Pn{a~ zyuYs_E;KUHx&~OaWCP&dB(fTSl3u{4$?`(vkF6yCJ)c#StVjekJNbFY~u7U zKNmZyi8py$E#6INzPCsgRQw|UZ*8xIdvtnWS9`d$g^@#0s*9RA;p)9Cp{S(y9PF^t!w~G!e?%!5H`0`b!^Mhno|yVul4;v+Lo*#CY)x;8%jr$@u7d? z_)X}P-k}puLC?bcvbf`yplr?Y`^u${eS)^3agkz31p*oay{=s9A8upWTtt=rTgy>1LMS^PXLyz-RAH$G6-#YfDgt5W?j3Ue977oVV)wZ&(7URS=3 zUNqdoalQ?yE!)uejl};pT(k~YI?i|ak77IgDYCcdsQboCA9Yk~ONnHRyzsPXJu43< zfkDKyUd3cy<Xyxspl!ne}_a#(p~8j7@aw{8TnEKJ~BI#JKX~ zu-@Z1n-DZ!W0RkjW!rtbX!|IMn|ZRTCefcZOp~Yn%`lCLs*^Fc$$XRqP0b>l0RukUTLe8z${W6v4wI9JQvRE=FZuT9<-N}^c>b9I^xxouh|cj%fFpWdQt za(aB5j6eY>o^1&)_$*^j*}xD0|%|Jn9_r>M09??L2Y~&Wl`w^T;&- ztP^b3$TL7QIr2cU@9^w*JdLfwYuCpPz0Rm05$c#Oc_Gq!7>o2)nkGb|Z3kc}I^EEF z7HjA|4{SVSR)t3)X*UL7@}`N3$^!5X&bo9({_jdIqwx_83rULK@pMIkuKE;WlZ@>niF*6cRd8V>c zo{E)s3LSm{3op+Zbof2PJN(-3^y(AY?%k=D-rpYBg>8q(q+?}!U~_`S`+EX2*q%V{ ztg5uhHq^dlKV=%G;ycPGhDG@(ZkZ^bngmPYJKCp^Mf;Rs7Q4QQO6VDwxZg-;Bn34F ze~MaZ!rYeBN;49b)XL?c!sT48Bxr@ER$hPe^5F0MH{79pr!_6rHAf+rv~J%mJYvj9 zFbx=yFIcj5|Nm*>ZNZv)6Ae?|^rJ*xg68?D*3{;fBkneJ`tCiDlwwV3!G)O>5wNQ<)o_4yKJoUGyn@VODN_tIn z)eRuA4g7c`Xrp!rI|PoH|M9A879%nK&^P>DmE=Z$XcvG5{{^}>W`VAB=gYW7!wSbO zI(l2oP>FZXWwpb=l{hP%y zssg*QLc94|5wu5B1$sEWQlXY@pL4oVYR!IOh5pr@Atr6X)F+KmBU3gdUzyCO)cE(m z;@%KmGD>wQJXplP`5B@`INB^c>#Vcr1@d|HOLC}~= zD!J_Y#}jWmrjF4YN^WYt$LW7t&| zmJlpO*#^MY8^CS7@-6BdvaJ{Jtuh#0+_RtOFxJmgQ4;&13KXzJyV;)8S+*y+XfCh# z`B3){JwGs_(bTx3cC*+~yLo&xM^P~cSVD8m?rnC=ZW+*g^1%&*=p2^NI-AKaVp zAAWDblFj~3gKoxL#Ovg}BOFG8M2HNvFgzr0*)gm(TTvf;s(6*@6XcmWB+}gJZz>hZ zH&~{W7jv(FnG=;%d&_ds@$ZnOzjJ3WK@T)%@Sqyy?N=_Ev{J3x=%ChZGz@Fa8ipyy zdBd<+f_dGB6^jY;z>g2;V9mGnmM;0=0o^35?tsa)SnA3`1+~;8(!!HM6V+sdLSO&A z8zAPQrO1@IKeCp0XL%zYVfi2Nmr^{d-)Q3mwR2fRfoAaV~Y&)mZd;0wbz|92B(22rywb2Xr%Aq}-L zO31#Vp)J8e4X9)&V3iD{2KaQ}vwvYzD{{{(Gtlh2Oy6Rb>08QYkm;LEur!1IzLBiI zFWGnY1$G7Q=@;uOSaj!iMbrmYG$^`fMN|U*=414brL8 z%?y25GlSB`vY8=?V4(%Hz$YyX)o#jG6z#C>Z%8Mqwx2 zr9=vwg~NxG)92qoR_QOLQ+CUqI4e?~^{s)*tVvKNuc}R0Y$H1bg}qZk$rnP*V-1x4r$ zz4l<)_JU>GgJl5=mhAwR?Z8@9%}7mws#WC_Evhmjmp#~9p7AYdGW60 zD=f~VE10Y+NSef7S3?xRVjkTwkM4XP*CW3DBR6JeZ{s+$WTUPqChiJhp}d|C~{J~$g**kl?Vl*OZrA?~00bOnkie1&) zfG#(NSSf0ij-5~Esd1P7yma)M@Ai?#Nojj@6khYA!fSpMUUR_Gq>g)|Fw~nI(l_!7 za++DypcE?A2GPXHAZ@ArgFHV#8u+cevm zxaVswUz9Z4F$7D)=!;ML+R`wV=ZtN+=Z&7tOopL#6C8*_&VdFcTV@~@7qA${AXJwR zGL+!`CezCwuX23i>*9Sq%WU^ZWZOLyr^0rR7=i_+h29j+DFF^s?A^! zXEn)_uo!p|X%He-^|Zi?S+d062VT;k7N_yR3qk2x;N?G6%lR5|9OOgvv_l%K_=+U4Gj?Lt*E5%Mng<^+qS+KXdsuRD1kFIH?C zS}*^RClCmB(g?T+N$o`*p$0nlVsGv^K5Kw`2M`|67>^{x5xAl* z7kR+!RN^}P0i7#FSrH2-RY9h#nd>Vvp2!1quFa27xFZ~pG{H0$E!P3^9#eLCd{U}Meplj*I&(9S5imlT-9@PD_?0?p8qE@D7 zY93%=|2wym4tn}Z?#Y!-{j#|*c-337sM8yVof~JMY!`wi8gfM-anYx#3F&KoY^;*K zXi=?2@Xg3x_W+OcT8f^T$r-6d^+br0i9DZ!ph;TvtjW=3CzhbZj`9KJ?N!?OLZ<*QV0uJw6u`1KG|%nk3yDXk!TE9QhX-( zjAavi5EFiqSI2Ak)z*985o-e%gt4)du_2ElFN_~n&x)v>RljytWbLd5wX>pXXEm&y z6K$hBZj>Q~pOU7>7ZrQZbA?sU;>b8Ij!MBq??fo&iWS39q!@-)L-_5+ ze8MsW4UGs0f9cP@R-c*hpNTU`Wk5^qyyeF%IGp~Q*$;DgZj#hOFl92BZ?b_36$zSV zPz&AK{+9LalLa&G8zrH3h^5#@vJ_jTTp|S*MFW;3VNcvu+LPZ^dZ+EhnV+qA`Ar24 zv5$skGa7;dG~p>V%ni)2dNxK)xtFOX9Ujn5#nqg0fiZ` zP=7|^labs8EOZ+>dkU*0Y;>J6p(>Ix6|}Cms6`EOGH^7&WII>0odE=ZDQFY$_UOVNGVhqMm{J4^l5?7(xh^ z)?_AzJJT>4XtpdFm9(H*s~E8+{IJt5Gd_V7x)UOW?u36gg2iEX8mj4OuA1hYZ<5`s zUz~6`(B5eEJ;_cpS+bL&nkK_709YDFH{8V5&55j-`lphk)^)f!$ax5|QWJ|D#v>Z!dJ^+@6u?)+xj4#KgOEvC$ z-9L9h@VrqQ%K1BWi5`&EC1_mo8B1ZOf*e_2svn)B`1Qf00LrW|89kX|;3hTQWmlRs ztK4Ef{}?*9hhg`mSBlH7NQl< zLf#5!T<+@=SHy-_5)+ZM9Ww&3MfXUq@S8?X$s#cQ_^8#4<{TSnePqsV)esW%5fkF=JNRuQ8YwoL18 z68+Rpt6;BGxPp}AvtX}8f+a=>^P0@Uyr?gjcVhh`FSa}*ibugtTHmFOsO#GZIY6rM)Fr9s5piu1YdE-k1fBpG)BUfsJ`OT^+`wjIkgyuJ^2!eHkv1a$Iy5OfL zKEG#`hM!Ed37WHbLGc&2-b*s&&p~}l)cjM*1d~%wIS-pY^Hf);1rk%5(;zzqpAm%# z|GIKtjizwwc255vf)+HY)D6U>ZwO3^e-=&E5Q3u>4e~1+H};iHQ&0jy-`MmK8f3=N z-Bo(z4Vz|R@ol_@F&nQ@eDQ6(vI*8Lz7=x-B{*;RGZ?Zf&j>WuX)g%19EU*SU$(&9MFwm zp&z*7CNb9lvdQi9t$!G_duhB0*&>B8XJ~ddk}9cx3-#KwbgW2E8M7Gm9Tz~IW=?!T zy84bcWoWFV&@qu4`BTKmbz^?EzBhtDWW-s;rCEi8kzrb0khME95Z(RAxF*O;%SGJ3 za`J`Euk2D&&Y;m4eMa1b!&1s6M&=L6$`V(7q*PFP3*MznxmH+<*k(S9vc$Ee8042> zNlmSyXX$QCYpF7(B`4EE9L*06)TWA{KQ(RX_eF#1|C(7uebLNpk$Vn_?4E<-NxkRL zm|#KA4;JA> zWWfR!!|+D-t2fVnefN{1N4MIYZjJXzDw#@L57$z>qU23^xS~I)>ln!t@^T%;y!eHE z<@f(Fy`cKZuLXsf&=%#CLT&tOE*B5UT#gZ0CaEHs%k|aCWjBdbn~1YH5x$yhBihLQ zv%_AetsXcdKml0sdH&j||GXlh;Ydnbq5yYJPG-gvclM@zML$D65d^5zxztM=~b zbE?_0!7GFQFyU@;-K!jH+yG1IAr_uADqN;6;Qt$YL9&v6?=zS~nxM684^_v)S9hi4 z5Q1vC&JbGIl3RB?+DsiEV1XYh`$n^zxZz$=D$q#v0E^Mu@X9$*=+`&t%CA%-RX z74naN<3r9H5;gizM=WL)D`pi7Sp!&TmQ9gC-_(`VsNw#+-6M>+PuBz9>tEgFAo9mND zYx1E5E*J=UF({%WM!jEPuaVs zSBWJ_{a?5Z|3)^LEWU*kKN)MD>`G~P1a;M|-}wYYj$&r;UaQ#mTT zdZJ0N=NO3@Q#|Lg6iltR05Deh8=BG$g|`F$UfiDUihvEr5AM7j;Uk2mE0xS>|13@uIV81DK z-@vi=BP~qi9-5%t6HUL_N!gyq;y@d-Ymfp0jN^reUHWA;XR;Kp-kjBf|fOz4ri%>iGV~rAQG3 zma^si4rA%*icciV?huR6%nyxLt~GzVDG)RsL@!Wu_Z=hOxIXr4Y4KG#FWwZ zbLP&yyZ7#5qRH=h|G($|exGOK=ev9FFmvY2IcLtCbH@Aum5zF8P6@7kHzt*+Bjm`2 zRbOJU5xFEA4HSYvXp=#%nmu{dm+Ziw@!M3AKrXn=-MFUFhTspet22GXiuHwCvTp#z z&k@QCkoP%v+m)KR=1trkpe4m%P6^Y*QZ*&;yNVFXeXxH^k-Q#M z$fF?NQ3F*&A#~g@QrLb^R~)V0wDZ0{B<54?g(kz6n(P|Om-1vRMqrK6HWj<2sjkF) zKMuK@cx=O0xket&kk9XLTTf@Vt>^G&Zd;Egtl{B%`1PLkA~e(7V}Fe&;p-?2Kx`0| z)UYCyQYgY|BCD+kr4)cQ8^pO-Uvpilh~4vEgWo!zlq7mXgHp8CL&tpf&{1-!J#@?< ztQpi3$C2!bBe~QZPrW(D{^xWuAjr`=9 z3Cn}F)fnz32E*lKd?`;)ZkYcP9L;_SmJU>Z2@WJI#N316T=pQCsIet6toyZ=14KVm zoL1yI38^u5_1HllDM#?2PbI=)r5r^rSnNk>BV`XV76bN+hRcJBRiEsbkOkw=Fhj}8fWbO`bYShIGH zU?Csj3wcGTSMwH2A5Sn{JBr102sXwcVPhPEBmfp`=O`?pqugTpa>&9S3)*|umv5=A zUR}PW`d-*nb}vkluJ^(U35#2*AB9D+M`0um|FRkq^V_`I+l-T>Sl>Y*!&ngPYm%x# zA=!jAlN5qqL%8*QJGAi+W1H02W!#B1NRTcbk0<+p4oQY~8Ontc{*^s7ZhKR|95Slk z1B+un0c-Juuoh3i_5&7UKaH`U=3{3cx85~wsmo2#fQmQnK#JZGQuGdJ2P}BwXP8$% zbMtEYME9f$i@HpeMsI3uUMz#m;4f$`3uC|VLCh~)NapeQGOUK?{5ioNn zEf`!lD2YDl$}-hO%cj4PWn-S1p^e|b8_4F6YMIbdvz$BpN+u0NlREqOl@l`L7HGJ# z69dsG|L{Chv8`koY3UqefV~?VU>^k$LTIqP94y<~cZIX<&f%>sFiwma zC9GkbdiqROPfwAJcD@elj<_7Aj3bf1te7+fUU{s*OELxuyt)(C>k~G-q$CCfzKs@neXy$3mPv z#?l7Xu<=u{@l(#mNvFO$?>=HaZCOYq4wge5ad%nfUMV$#y&UkDE=<(|!T zeyq-y#p;4V`dFO@BdXZJ0HMUv(SG$lc3;}%L-BMVBqxwF!4-Z@nb{Js|5qH`av7NSL&HR#drr!sX zLZ?W*QHhiThA4KxAPwpO3fBQ^IO8A+*B#`A>$W;>-`vFUgANjDXiy4+?MIEI{i2@I ze&<-i8qPR~yPFR3dx#F!9djr>Zd;JljH);8ZbO(mEKVY^J1$uO)(pxE)}|M?Hs7ya zug!*RSJ^S468eLYuRmDi>kkeZLRbj>f}l)R5Jb!6;F*lkeXE5xHjYM7d3h+NncHWMS5Cq`39*laZOFdA}yeei7b)X!oI zEKN}lud1wvS54kb53fMNnknk(HIeo7qE(j_Z1+WRt1op%+NR5!tWdCSs0fk{MUXVG zrZ?dTk`CuV(oWy`IM}{Xi5w?llcm&^U5aa%mWpebmf{*FV9h3L1=x25XWyqMClN)47);m zVT|Sp)qY#*OGV8gx%7s4r2yrS{58yO(kR@$F8clYpkwWx)2thDs2&j~sz=13dIYfO zMgpowB=G7HTklq8Wv(g9^t1W4duHrr$tTUCuaCp4qW;v_;*9(#up~)TOn2e+@%3NQnXZnPb^^#v4W9I z9n6!dZ;XAn#j&RSUkDCVyH4BNcVX@AB^GRN--NI*?K|41vX1uTN$%WmN9JC)TGypX zgUV6TH5#}L!qq&I4ch=L0IX5RjWG3%_|%{1?e^ivXMH=$r864Ir88=TN3$B?l6_Sp zygXr1I-_p5KdT!aiZ0yR{q>3`XFnJqrL@P(DeX?-k<1CN6YDvJhZ7bl?e0i)cMori zSC1vPJw7ns-}0`mnOhUq%uRCqHgl^)@md=WQ}ys4Y&tBT={NClV@-TW zFc50)BOjZ(thtfX`Hy7E(iCD<$;)jLynr{+ri>!$1RTL8>Uyzo2@5#LlRXjD0T;=vfTkv z?ECJ3MuY`x?F*>Q_65{KH+*yaKg+K9z)2bnx{)Cl>TQEcU2R0At~R*a3)rk1h3E#U zst>!YuHE&<*&2$lg#SW{@~m53I4}l84dB8O|H{I$b*;C~PJPy9xbnA^FypTHdtJp{ zVqIb80BinsIz(4GH*+d2ThXXlVf1X1#gUfTdx+`6(8d99d=RUI!MLMLmj#h)~wBN2P6_W&=K&O*+bV|s+-f%BEfrt z$UTK3?+KX)EC}8U1n0J1c3%+z%~qc|Yvv`ngH2?|yEPgf(2=9|ER77cec}{Ah`Px2BYPM_fbO0VV!B z%D)whLfkjW>L~wM!om)(=^xB$`cnmk9V;?+Z|!ly&O$dT;!@O#o|34q=owB}(~ZiW z*{rfB1x(eR`DX9I>&MA=CUO}jEjHwX(*FYsYD1sRANspxCfYKyo7MLauSAORN`AWn zp;byn&>B@9KAU~~5S>KPpH{1*q0m}Gu}dIY4RvcpSj_iu%=d6U-?NJr{SvkNN>z&u zjDbcPBQ(+&oV5ds2F9X+vAltmkGqs@_R%V`{DfpvOtwhxk+_e39RK@~NLU8e5W5;o zwrbpDGko!`{@9YoMaE_nJAMo{JY(D@@@B^1j2~Fj%s4nN#_>&0qgpM3=FfqZCLMQ6 zItd5=(rLG8K9up8O!`^1`Tl2z-8lXK&(FHmN8Q;t;LhfiC<*m36bN;)^2W*fb>6bu zEm2Fg(@a9e=_Kz&POT*Gs)RKrQFEMCHRoql-~ZLIde5)w!vRTFJC>P}omwpjC7FVx zz`|-l-3V&}3!_m1JDOL(-ZkfTe~)jv3tx^(w@t#TpCnfOB&>R1&D2f7s-MDFecWH8 zH-D5fB+fV{g#(KRFq>H1eWiV8zFa-Ds4&8;$Q0KZM%Czw!yu+UN<- zKeeg#6aKjQa-4JRGO?}+E?>}rL zpW;eciOF0kCUYew6IesO)fnMwZYIY}Db@6Ln*B6O-Piz~zrjt4H`o9=0E=#H!s_0{ zBX|PN1&sfC+ODS-y0I6g>Rw^0?scn5SksOD=*E8DjhegP?CCJ#2P&*W^P#2&p87~k z$48(luuKhf;|TADT|vm{;xj?JEOg@p821DM4TzaexV0y&>BcE+>re4*ec-tFzZ=tk z<2hq93Qx`rPG)n1B`3w);8?<%W)=mfvPHqPD?OgM;E7wD4(n7FwaN-P0U3Eh$jB4u zKCq^lQ;?CTxQslX<74&X&6$~&h;rYyCcAGd>BsxX)CU$sd1zakJ+!4A%;<@}P8d``h<6Gh+vDJf+M-h@oM3DcNX@=dpB!kTF=hOjMmqfq=-rLRu*ThO(I z=z`kbx(V%Z6JkMXs5xOFpMQer{K+i=4SX=Z#)0&Z1>H(mJTI`0Ux;=50x}X$N1uO7l> zN~BQkt=#F{jqP-nLb-P0s0>&`iuavoviF_mp_v7B8+HEdSACpGHC zt>#&ku!bNtJu_KNPdcbOm3DRgFVn)j(HmI8oWn$no0|?d%v*@YYEuYTh6Quoy#t4v90macJPkkFN38ZhZC`8ou;%@oO{^oegw|bx%%m_83Ecy^^WkXPojfN3|UI1&< zOgQ*9TvrFpJosqD{jpvJ-9b>3T?0yiO3}oskSrzmj_QE^PZg*iiOs-B9sx^elv1ER zeowA%&>J<@l`wS`b=_G-EGrswMO4ZG7E@PQH<4A=(ZTG)@*mEA?9*nSx`{klxhKL4 zkSM$WiMl|-qKQTzS0hfYF;+F6Y`?ME8sq}i#pR4D|CBbM8M|s+>t}p~dv7e%Q!m;p@GFU_OqY2QY7!-39a1YvaFGCOmU#;-^A>!W$GHx^ zv##HVrv*=mh)pn!6tAh}Db??mx2jYtP2)MG0yK2-0d}cWYm59-rq{BY$Ee>0JKg1s zMd+Skk)YhAw^xm8^LhIvYOYXBz9ii+40f~_cz42rE1K&jv*tSTOqGhax9-<4-spZ; z3b}scl*hht;#(>Fn?YDZwsTJ7*f}SvXLjJ-t+N`v^I7*2I+6koPZ1oR0uBcj9cc>= zZ_7FS?~> zZ76*EgS!mo^uoXL)^pu-UCQS5-CRqcOgg40T})9rs01u1(*sk~gHO>rQ^$9%Z~e<1 zbI!hPQ=8qkk(__GZ6XM3rs%#+4!dtd`eVfWdMB$4tWeL`{ls`FwlX0~bbmyb5xo2O zSML7v*2n7($!&D5gzoo-((A3043plN17OkpzL?m)d}5#EFWd3ew2)ME-%Rlh4TSqE zus!F{p@Ff4h2k3-n88K{(oJ69^?l$R@oP)D>;%`mat0AQ>Ng0V0^Yz;zwU&E);jJt zjUD%+xbpHf9&M}po0V4yW5|bS$cNG<@sO`8Pgsm$5Cq2{9od&(4qcJDvcZrpB{VS% zO$-xF3_}yZqKN`DQNWwHc(--(lQ%|8DWQqcXkxTzVltXd*AY-zYHKE&Kh!xQjn0_I+Zx0Z#IN^bkc<~?^$eMLKR zG_7(L71?%SMYfXdT4akn0^1CYtu@zn8k=iNq|WXgTEQo`LKO?mOw_ev6OqABWS)q{ z46JG99hj5v=x85$s>Na5cROQCnR&ZsfJ!q2m1aP*0ShY40vFEGk-hh@)S+&r6FbV; zQYz=d3|%VTkxl|H5TrkC2JzbeO(4WmgA$xt%w@?N7gt}1x2n#6U( zJ#eM62W9CI8tEZ(-LtKmE?pbDPCn)^2KWvf)IY!HV96UJl`^Y@Yd|IG#^ZcVACO{w zJqx*aYL(8Pt>`|+ERFT`{a zH4Dd8{!|2p&>ep{H7uN znS?c3WU+M?${6NAkoTTEvSy2@-fqTb6rcG9-4M0`+gega8(^3MYns`FCpPIuqM5L? zhNpgtm`$fK=#6UA+uFMcYwazCV711zqQEMxYt7o?oUJXD{AKOD+u}op>CH= zk4A&i`UGDp22DHvJl4*in_>933t?fWl~Q9HAy;R6b(6U0?E-%s5W*;9APJ@nMQCSeU#en;T>@9ueM zX48DD9bc~d;er^1O3U7Kp2%)GOL6`;od*#XTDI6Zl@;^5@h&dBu+d>k5Ap#J5mfJQ zM>PF*bXXcj0%7s~4&6KqgTjXPEMDuI6?E!|Gz`_OaWHPL4L zauU-sY0D2;4oM?Vi&lb5F=;p<)nvi^2bsMj%GJ%ha%dW5v&hX5MPyw{WzAk$3>jmW zEnZMEA2Dh3eW>UUp~XJ(1to4x^Zn=Eyf;nR?!+f1NV~NfwZ(R)jcuDinqB-W7xlPP z{o}>u)*U%&wz78Xs-muOP0kFvb)kgC%G$4sLT%&PU`bv6tm9u@8&W7(TJ0jNZ`Xy@ zx09^s`gTnSi*+4u7sKN1$j6Ap7w5t&w@VA2HdAJxpVTo~lVzG}vb;>8#s+aUwijw_ zFIQuGp~iq-G@IaDYwhAOCnYtuAMT?4x&)}P0qw5dcWo8tY$O$SwmiZ&`VB#s>8!;4yX60LLfBUbE7Pt>pVB%ctW?>yz{ zo9KV!FFXBugDEW)8L7i{9XfGcht4mCu%M-fUn=wPBQf`3(C!DH3<#QOHj{@SBM%7~ zc?dERSj^;McySNwy5Z&hyN-R*>Ez)g@z+(t$yZNJuqQDTuyW-J01fg~?1v##4s)S$!KYKBIpd2Do63ryf zYG&}tkc@oj)P%60!LLr^*{@FI?_GO1y{q-y>2FH>WX?_lHSDC~rhy^>Dvxv1r$~VM zlqW!a3T^_@BtV@4H=W|#G=0qDx#hc^3PcnMh5z#FpRCx|xXJu$ey2I1bKdiWpKRD~&w4yO)AJ28W;g@C z=^5cSJp<1YuwaHSp?|*Q3e$E?XwB*GO&ep085Re{u*E@=<9=~a1YyApE08F(f+q?+ zUvMq=*maNFcwgh*^a<+2e1fD1GM}I>gjF6XE9Q@DLH+r)pr=pV{Cuj@N6VzSRO!1j zIF31^lY&CdAm|HNqo}?FPkqUGYI2pwcI)PDI%`IWZ?P1<#g3Zz>02Eti|e8VCC*~% z&+3A~Pj?$${cQfB0qez*hw~D8XwaaZ`OdG52+p* z%ypQwSJCWGM60N2jIh55!K4*=3$&?_Cjwj2f1piB5mBK@dW~Ds*i@qr|3ne-S5fwp zUd4b==yC{dKM?gpr0(-D%ZxxbmJvv~-Gq7u%88jxXZ$r|;}(Z0qQh#1Z~;cn1!3e| zfIkFSEa1y@A|!Jb3e1$x`x@hCT8mzW(!!%)(xFEyP*rjZ0RE+sy<{7 z+nc>y3_Vs1mnuzlu`YtJc=!$ybe>+n4?zm7 zu@Zm5O8P|?g=We;saEXrd#^790U-&MD6}R{eOME?n5mg2PN{@7T-zL#>6`P)^p~9q z(%;%$^}N|o9%Cqv#ZVq&D8OPUPcf9Id?>M{E2eJ@IetaVf=ZZgKxxkn_R{*@U>`wP ztly3Hd2FLS3G+HZ>#v^GrTd!w@hGUEC@35nK@`&cfW;q=_CpYsA2}~`-Ca6oS3YlV zswJ`e=Gi`2AM(cDQpSRk?IS<;cOi?sBBa>UYc72^p2di49|xSkIPl0|LXJvgaLfH0 zjy}0Mf1&6vb(Mmce@$2J|vPGF{zkKNnH<5(#Pg+wVxTu58d{6zo&U}_S1*mYzccHQ_g@~}%HtTBo7 zc2k+&ZYElJ(*NYR&;8Eq)o_7|0^re-xIp#Xf5HWVY;GWy8|MN-I)w`sh6ltoAMK8; zK5isqt?*cXc_mn0PO3*dv^xYdh_I9UYhJ<{?d|RaEl90N9w__`((tgP$bRutB`=rM1RBxcEO zQ$nwrmY&I);*L+^x~8QI32W@O=J>TazX7zS+h5Vuzxm)t&B{}a;3aZa_1xdDJL8D| z&TI+6U_-c^B@}9uvoV)O^qUn+;ngtIO|{F%IFa>QBF9I#kd7 zC(|MNTLrzW!l#2!Rb@IxtjhSqt!S=`roWQlmS_8K1-Ja*f6`+ixT~X|)w$p%6s`2Q z?uU0a>U&dSvr-86(027|GCe`7Gn1nL_ZOa-YVABA#DB6nkA%+lfB-;q-A zT@w14#QBa;GeJrmKEYtvzzv4)ZpAlr7;II+$VZltG$=~g{b@^s4;FJ7wbT7zV*`E(OXQKtK+Q&ox?BhaUfwo~mA93GuglxEC#(swjj)Yo5w;W^+tTijhu`@llMlzMS50d%pb?GETLprFF&i6rtG88%;+}W}J;yGFCB|b2beet?scAd!03@^&>&t?aq%^TiW?d=l%M|M zU%56xdY;}hEh*L{D?t%Uw{UaAEpcS-DH)H# zpPE}He9Euqx=KV<`89jF$FN@Rk}t5AdnLk})P%n7S*))+4d?S|mt*56ANxV#Vbi&Z z4;jMZLnIcCN4ZO24f8cXxyuH;+-0Mk528}9zGXS9us_QG_IH;yiT&M^35(GTz+LVG z_+9Q9Q3nUL`X=tGG#b@X>f<$;_3@H)Mjx+Xgf*g~pI3R-kC*IgF=^*VgDT9R(I`|^ z4w{A{AYdrU57TNI>Ry|$=*MvMV>s`}#gk)0{y3ictyo3WNR70tegg+*h`l5~543bm zul6y%mLh{2L^bQDUoG4Nf91dPSJ#g z=bZ>pLZiV}uHMG3>9C}9Y!S!o5R0aw6lz{R{dfMu=B$Tj6nNQscx?-^<49_krz!F5jt5L zjR8L7HA!m-V-Wrcvw;3rC`Vd_ct_R1EApRt1H^kqX8K3xW-LF*8;`i5^P%UhImbK?~X~4;?*ZXy8#P9GzG=&r|{zTF%_*p zZ5KR)a(B59!~`pXY=%36xA7jW{29R^+}2 z&2%oBT=u7f=?yH6rmsgL>+2zj<-Q)#gvDt3d8D#_9u&~>U7M6ke^xM1q?!=RN=?oA z?)BJwcPVLZzI!BLjaXg?iM!C9qT_FcES-Fy**>`f06&vXkn1|1Mb`USk@bEyIEJv0 zr{4$9Vc!SSIC74cy;wA4!UOb!nA&vJEp=~%dY+Q6Z7C)NShMO@V%4qWtIq4^8d)nG zI;-TmVsq?5cXtT|u?w~bu;|Bb*c`jL&GGAsaRFU^wyrLCoH(Q)O)4A2V{fruwU)ct zGe-BgI^x#SYL&`e4N%>I`zjZSN(KQBr$zIoJvG_;Mo>Tgshyx{QM1aW5L+7*^t1_} zLl#1I0di=<^pKbXXP*^>8o5a^>knXA9zbPQT3QF(+Y{Ds(;;Z*LtHx-er;7g`|JB+ zkD^)|C*4P~lcLb;Ni+wnSsSO(%xT_?&50FR3z8Oa>k$?UAhns0+6?ali*dhz)PBLGc2?K%gY6gnde#Cj zIC(T;P9Bncaq_55Si=jh9(|ar2gN6cj%s9ow8DbkrsPxPOE>#O)(!W#68XB>M-dj| z=#I*v-Ff9uLzTwkj$gm=vr4`o)+skVe|S#+UcGxr=kg_*1?G<$r46<>T;LdOEK@|L zBF`MMB!=>+UHp9|f1@D6^j(WswmnH;XtFf8lhyodGB_PoXsJJ|MesDHC^-C478l8Ml) zTr0vVXOInRUd|RDN@;6eZahASd1Nhc4|j`l6lUM|%@)O*&&~Kr^hU*qP97QH9%*y! zxvZ=Q-6nImnak$bh(0!WU#oDPJVxS`ah!jgJaPzYM5GHYrgPyJ)5YkY zJ$&->BQZjiPdRd>M>jtz#4vjs;h)3CW@qL&@{lVR#p*NA!f#q2TTVKjDpzN z!=nyiF&Zz7#*2?;{J#FNGq;{5p{Cu{`FYf1ejbwf;O7xZSTmXck1Q78L5`20>$?3H zYTH~xGvH24my#~r-FY(W?kqVRx})q9utqj!;@eEA7}OuGTmMKabwdn>3mIiox8JW7 z+wUjIw*7txQudQ&+abSTcF3>*=_7Ky155&|I+B7{T;gaojLsO2Ce z%5fpF@VBo5j?QlWm&qEZ(~MlWL5;QKEZs=1dFt;DU0zm94o>&9c5QeZ;cl4EyUWsL z--Py*%@vDed(|I~)zS?fg>Ld4CS5&aEMd+=0ZdIDi_er;*^{5eYXUI;7X|~6(BVUQ zol9-GP?N=$MQ6)E9RCmWB0GxEP$dxH)S;;hzxs@cG!$Y)WskAn8j9Uo^7ZexP9Usd z#1F08vJb6ER>eQ)X_eh!dneNcp=hfRk4$i}WG#eXnF9-L73Pu0!aT@Y__%FcsXvo- zO)NH05zC>XhqT+N2>Adk8mNp0D)R$(f}dn%riUmrbq` z)0|flF=k#8DRVO~o6KL5VgGT`t58_kO2(Qo^Y!26teGSt?#C7K`&}pzkSM+F4SR-E}p)Df0wmADv|D#<_HD4*_QKhshyL4lf zU8H3D%DBKBScv&5F8QpA%P{c4-X70~y0vpM4Lefy%x^(Wyd~7cTVMlV@qRqiL_Aj$ z_cs6XIN|Op+B0LCNFOWvf^hEwRQE3A!w5&AZeW!@wnCNfY535IcF@|U8Q-RLJ0vwj z%R*7>wovJ|Eag^c zjr_N;P~H*?l4gf&Kf0tlVJ34M9@#Wgp+t}ok%Dnf5XRf4UeD#2D%B>)zL+KH+J zJ9$-t!DamHYwoK_NB<;tObHcWo5=!frS%$M+m^7#^&V(jzyfXQxVG#0PU8}rE}kS2 z3au#mbd57A|2XG!a<4)CCt!^}-GEc94g3@a>|I4xt?y_QQcND>3X`Q5Y~(-8^!sud2zn}zm`d9x8uXU=!~-eQAA=3 zk8T)=v=mx^t$~F^YYB%*OYSg9FK*ZKMY)J9i72WWs^~TZ7gk7zG!@YwU=1rrq92jG zA0x7s-kRR!_A(=F6$$?V7Sjh<&_vr0KxbeLZTESMXZt)T7w1;q&+PitWkZe4C=08F z$1n_Fw3wo7!kT7Uc}!!iJZND(wYO?bVYBvir#cZZ-6z;q~R{*G>?gB zW<&IfjWO?a>}+gCVVE9xwTEDs9$*+?O*6f~Fugd#lr6VuMytnt$;U6Gh0;uM=@?dA zS~^WDE?tSRhQxPE=din_X{Xx2Ieh!}2@kuW8S|+w>y*ICBEgA>T-K>7VKLS2$l`S8 zS)8YeeyiK6S$~uJ2^6aI@R*4q%;T^3!1#eR!^y(0SzIQJ|7fkQ?uFTov}0}&kE=1- zG;N%mmYbdn{TFKXB{JlqOC>gJ(-t5(Jvq2{R`9^yy>cVkq%^3Aud0`_T5G$uJpEz% zcaPo*t-N4C4mbZeKig9_E2>$Y9Hb1Gq2E%L}0=62>-!N{rKGRFNUp1MKf9r(GQNSeg-LvN2~mTQuL&Y-I>Hz!DI8i3eR_M`)>se3!)jz74mA z&K~?5Eeq4cKRTidRU((ne?$Tk68(z3qtPOvd){-zB$of>({6u#a_JKz*%Wy@5(RBW zih?#HQP2ihL$)y}XfuWvw7LEEoplbCQ}3IuB85H{%woRGln2D7iO> z=9X@EIEX0%YHv|_xjF18+)VJPzODV@ah6SsDp5O0-H56 z56w_rjtlko)qPU_Fw}(6mQ&6bw*)7#EjYR$>TC(FO<34++k$7ZZNc-jWd}sXnkjaMzNX@9M|E;(xdaJkO{N3uELRe#( zZucI|wtLel&Z7wn=DzQ?tckHV%2W?7J%|l1UBCx3xO66AO>c&kp2miiCbPZm@b{KH zv)N)L_#SqW%EhS7oL2o_Qh1@_ROCK<^4L=@vU8fGduzh`Ltc1$=%Az%5Z?!+eKDI*a`1?E(h0dmsux9=}@vEl|t%}FrWJWyAw?3fA zz5JJ0U*b2Dc`x}iD8GMxN!Ax<3r?m4VSQbPFucyKFG4pI>+9~fPwyVM?%G)NPACXt z7qz}W^#dlJ<^MZIj!ZAP_UwOT4 zm+nJ|t?;jWt{VNzh||jt4P0V@#xK*-d~AxAj#sh~O5})t8>V1UOUu1@T?$*)(vLva zN1VWfo+?_pMN_L(7w35g#hO(gLEGRebQ^IMx{YTO!a{}EdFC-YPqK(c+v+~7-DBy; zCbT9aQ;Y&4t|T*59w*Gu|IMTp+SAL$^rwGY>?Edvp_5P`tp|?h6m{V{X0`U-@E_%hgJ1!xrpk>nX*c z*&=WqShQj9S;Xx5H5Rdv$7Wydv}~qvIEww?fv9#5ap#o>?z{rl49Ckei+Op{v1{gm zjvvnG;h$)1MlsH|hICT&Wjc@85||Z|_57Hq(ne zZQ@u@8_8wd)21q6p%;7Ezy$l@L8F>GZXcTNS2v_Uy)-G5xgeoUwL*HO%4SIhnb5 zQklb1oi6y?xLeu%;P*G~>^k+4HmS(`AXHyh>WeKAsEk{xaSr zAJ5T*#WMECGWO@o_{#?)S0+uIzXx5R<)T(e)u58936)e0G67gf$7raeXs(j%-g=mH z@W)bmG@w0Nso~O{)o_sxMQXUTBCI)Dsg0oe+B~S<@8o9=BV$`mw?L9=o-)lK@}jD<#CqZOoO!$w6s4t0Y|_l1q?H4mi917I9@)fKMTw@1 zS!mPWM>Z+TjF!*;rO>9j1~*pM&>U-tP(3BIiFtJ#cdxFqCHAd@RZvH)f;w0Qz?!*= z!Cb}gxvJ6guLk?h`(7%Eed~CR!~2st`_{oFiNJz=W5B*KoPC?F%5O3vDOV^}EbEr? z<+iJR8?n{CQb^ru-#UafCvxj?PxN|UIvyNx`;)}}Z(d*)n6HoDRMy9DChtTalw$|h z3@FEMG|Ta$E%moUt9;)5>vvBXn^9CpL#U31LUlBR>HyX>lLV?Ian<4Q_K3HgGh&{g z88Z#m&@&b9cIVw`h!qJeG*}bQT-L;sG?-1$m7`(9>=s#ie(7I)iKVDi zP?XMsc;1w0Y!7KJvuDJnTv~f-9fs%4w&wEt#>AqH6_Vu09yWHa`m=`h?a03XU${`VbO;00~AA*gK zNw?2fu^wS=_#l&7peDl5{(9Nvz+S^2lk-sKTO}@d2?{AK5rveNAoLAb@ZAa&Qd+?a zDZO(d;CDkvH*&CvVwG5KZgIWd+A*?x8YJ)o?+XPXT@yAoXzPmT}%$I`i zxC$V*lWC0-4ELp#l>XBK4I-twB646W@|pvLDk(JwtP6Zs-+f|pxFj*y2+O>YFvc4} zbN~x6*c4*0DHnrJ%T6nN(%GuAamgx@r-Nr4>)dqFbI~%GSSo6pG zcur(}Jg4E0e{$r!Z;jkJCj|SbEs_4PMEVO$q(2A(EG&@$_!9#>$vA7eML)Do*C9$_ zAx$tLow%6_981B315I2$YHZv)S0Hw91&<;mw8l$5tStI&XF{lb17ii=2Js>_yN;Ziozo?U?}hNM z>{3d8!!3UI+ok`q$O=QDMu*~_MKZL9f^~rfD+~uK4Cky+YOvebHamJhHLeGRC5OU7 z87eH4p;%VH8kQ{Ztj!8M>w%-T4cJho(%CqeV2VUjV$Q}u6OR#^cnmlaSV*+7P?BRk z3-JD)jXmlXJZLft?@OBw<+@vj1ZozN%Ll{UU_;y5ozLjnB`1<0lJ) z8G}DHM(E=)7!VNEk#{f4ow zexuQwxZ`&}?|5(LKua{45#aq(?P@jliJ&4545+`wfHh| zEWV5+2II?AB`mtus7xViREA=Q!auI$9yF-a67jw|c-zr0lR5fHv2TtD-Ob2tND%5 z0L(R_hoY8dKrPJ>YH0>o1z6LMBIvpz&zfka{IuXvJu}0D2WI!rCtp|3nx&kb9Z=AP zS%r7ON7{5-;c_70-O_!lw&5|%Har1uAMm-`%q?@3NO~fMQ!2H-Q6`JMQ6`7e@{Ka> z39A^+ioIE8BtGOb>-6^7ksaG^ldnlsowv*YQD+FE&VXnF7R)u5;7b0yw-T)TwFTwv?!rxz&>hidXeTa$cL2)0p*Ux0__4D{J+UpAm zYiQXCzjo3uK{pC*y6qa`&7zD`q9j{x(+^?WaC0Sb);4_>VNEkTaL45iJstb?x?FMb zy4x}HERAN6K7kF=OHyEvK8mmy%@BPq8=|K@O2);&>Z^kWtMVk27|6>$iR`kE#9Ehq zq6iDt`oSlU{oq5a6&vwE`l16nE|+lW)UwcNY*}a#AIq}PL4-v)nicqVMd$)FaeZRD zMJd0m3M!$A`LI{!drHhPABqB4G_eqN*FtW0P5J0l-h)z~o1}~?dS(SA-U=a_S3ooa zYpA&j``cBXl!$w=lFf{{rNIOj=j8$y>n<>A``8U68s&NC9`asJ1Pyy8SV)@$sq~A99(hx}Yu+ z!nZH4vXN4k39&|T5bGd1VIX7|lr2cVV}aG+ABHa*K&02qE>C1LjWsZT;3b|e5WPfC z7cR;n{^nFy-)-}%WamCEbrY{jchQ6tC`$%##fX39;8ONo7Q92vm%G{aH+~X zajD8YBrpRDlW;M9S*#-sHRZgGz16gB&1pj6MU@0EmMQ9wVq#CH65uwfod5Ij_IVp7bXSF{eJD^cY%XZ0$X${(? zq$M^@Y1p7`)0WBTrqNGU!ZYL;j~W&QyTK~TEecL%{I?Y+-v)Nrrae9r%o3{9j z2YPN3j87{dd)r`q2!#TLa#R_pGDn+H`*E`^z56Bd%f7UwcW>j@+x*u@K#w>oTRNDP zElsWHf%F{RDBYgjC{6F$+qK1q-u=xk6Q4OirEu|aDf{+7j<_n>(S9C~yL~V|)QTT| z_2a*W+h?+HdwQb^o~y#2tBvPs^XJYxX0!8-3-Id=pc@?BckILNJ1)X^zXAQmkyV*& zW>tosa{_YW$g4~r=2eEC3&M9n{JVf_h?{MW|#t}*{^Eq1DF%TS-U z18wJMAD-LCpF0M0jHA!->*xH}b3o@fx`tn`@n7%aySx0mr}*wE|Lz6Q3yvI}Ko=+a z8y-&C_)zbYopSJ50@M+xBS#rdxh%tJ8NSN_%He1T&=8IafeJaAiaSuII<3HSALHGR z`MX~LeZkRrJa?WycLV4KNB8mTeg5ljK)-Qh<($i`oawK*J7?oVy$W^C!iRcV1Habb zza}E9FwvQM+78dPd5=51Z^vv#Y}yP!dNOuAwZ$mD=kI)R&{dK!Z7&4m6#k z`9SkIS_!n0qy1=QKX2t2&@qla2l||&AAx@4=og@0IQkvvcaE~WQ1i~~DE@AqmnS}n zK!res9L>hBv-z(}@!eAX-BzHj9Az4OS*9TgZwx@j&j17Uek#73%D)Gapt>Bj_X%X}eUkBOccAVZ^#$t7QGt&?EAXM7j>jA0 z`5SY9=5Vyp$CqvNq4Dm*cf0s^$AFG;)Y&(fb@rvd+ZU)WM`MA;ax@EQ7Dtl;g4v`1 zdTu7rOpX=;E#zoNKp@)@K>gbfw4bA6K*u;56`0IM1&+qAvytXIJFpOFHPC8~cH!4u z{MVEC?j-;2JkWWLZsXV6{MQ%w?gjtOHK-MH4Wd?pf|Bu}mTTd=TKv0)Kn*!+hhN+A zU;E;_zWlopKqEMM2fx0f$4Zr@ze=UpH z`m({)mq4IEj#9#gv6Qe4_^vZhXO0$!4PlGJ*5SJ~Kx+uS@H=LAK77_hlax@!Nwd~E zhOM=h0;ShlS0b$0!LG*>>#gbDimJy)-5VD*t%AzF=azk-$==^+ztK-t%m!zt@a3Bht^FZyYH(t#>^W51tXJJ~nC;VEb;BVw@L%mWUbfw+iOH+U zw;P1&c#RjPqTN@A>z$mN{vqhEIOOEC0`85l6p)){d_r~J*g_p;Zno)@BA}5Sfj`A# zjc6KPrBWMNZAvVI=(0&)IVa-8h8;2;?#(~bQ)|DT=zwF&E=@Jv56{Wmf zSzLox)=3ImD(lpouqGJG6<6Z9@+3Ex+houY;R zN_bLpCA-vzOkoqU#19Y5l4a9isJJShQY>#g9gb zSzwJ#QcFLX)zVXRbN69yow>Vg%{MYbKoBTV6MJydxksFI?!nn6us9ps>zT*)@`&O! z)!Lx^cGqvEZm2@%_aJyPzOiZ6B+q^(uD5c?6Soa;m@mL7g{<`V=bMf6YiF%mjtX? z3T;r8unn(DxXacqW_-rlb;?Y4kfWsMd(~$1!7Ick^SvSnYi4>eE>l>{FH^AIe)x-{ z!}Y^0@!Nc_6uc|N70>sIBP{rB3HWUZ=eOdT(QQ5V`BO3`h3553&lTQLe#f;cJJ-VR zR%{Q1)gG?c2_5i~GhtW!*=}#tgZ*Bn?ecw@zX`u7ElS(6gJ|KPS0o5d=$Ik`Q@T#r zd?E399<@dMRG_>kYy`Ug-OMbt^pq95gqAOHV~fx=FZqn|gTO})Q<{FsUH%$6&?-?G zIOe~@^N7}Na5@nB$xA+;c5$*={YU%7J>L548ISzjBb!3uXS!Sg%}_kT}RyIhSsb(4Yb8 z3`GsA8xMNW4P}F(2J!P@{3}PDKHhb`RL?2>x5@o7n**Zd-_H~uyQ3aA1?%Y`fRKw` z=BzW9&%gMf=2uVYZ}jNjueW@PN=%?C-lFn>YkZ(SwTU=EGB-)iYK-q2Zj|Mo<@_{go`qjHR>$LWy#XXFLLOr_p8Y%7l?Y-UVUrf+A!54oOdNRgmNt$nvrt)g@)z*A$Ft% zEAF^%*qRqBu*TV@HNP2)kd3(UiPAIO@ri>ou6?jwxpr=ys|h8-V=R@}MxDMY)9Iz^ zQ98XZVG;P{q4#7SdSA>&uTsTrpS^IdC(WtKNDbFVpp@cO?YI%J&?mnQD zpWMM69()<|<2AW5P4#HGGR?iPe0DEP3WK{BmQ7exrg;<=%N~U_!P}c6T~@X2bK-9jEnA(6^(SmULWhYNA%sPsgis_*g3GM-$e> zi&oJWp&1Hfi_;(bahm7%o26!WE21pn2;b3cgs&9XJHj`QutvR)_N~cA`;wuXzt4Nr zqM{bGSV%pnhoAlJ%!{oKIS{~MC@X+GO*fI(VlVodMpl2 z&~l5@M-tW$B~jmpCF-fZ`8Q1*CTG{Sr+#RO5{LN1I1F2AW+Y(^Q5qo7u>lWs+;{H& zjS0(Zk23Z~aj-Vgr?Mt`$s5r`pF~*Gn`W4zW_*f%n|%4f?@84u7FP@^T@LA;X+4C^ zw3ZlUrgau!O*6Am26r|ugZp6Hl;fxFof&CtMv2~RrB7z9^iuM7D}5|sO*1L_@hnA8 z#&#*s@FV*kBxM?#QKG2Y1L{6Lbm?27DR8ghe-| zg~zgK;fWYV^SV!xhtCaaCUryQGkBv+Gy=ONt?)*fP{NvxQr$8ItZo@PPKiyMINjU# zy;{c6C_-Z-l*>q=Tt-5<0Bc4w8hk#QudmJ{?_6>jad#`4(TcEQ%~Wi2(M8dSQWDoYnh>*_xIawd0M#WM$WVJ-_lI(>BZjBAKQdp{{bA}J zHn(R7!RaxGyFUmGRoowmeWv?vFLj%0h70AZEXM`z z-^gMEdtd_WflWigau1R(fJFm)(ZF8bz)#gqwfKG4I#I@&IQTN!|dq>${G15aJ>mDqdJ&-3-FW{%uYm@Bu!HU?&t%y^9bhpa5 z|M6eOW|T>`^-o~7{!%81t$#FO4O#7QJ+vLa9{O49zD{AMmh3P#qs-18@W~!wjO@X5 z0&AMt2Sv1xE22dqL&LVts<}iES0xa1p(#ukDml4yp>c$TK=267VIHAW@p;W-w&C0U zE+*w;6rvmguN@M+b_l!%tm(#KknAv5%eIBjli~;1brs!E8{^AD`yinuk5hM9XnVq9 zj#q`&WUE5SnlHL~%cawS4e>^&3hsU9PL=pKAdJYVGOWumo_L9W<;2VU8PPrmy{f(~ z5s^4Uv38kjG-Ixk8fAzs0@iTG3s-mc!qwXrmp<%2_Qz+#9~N7fi$ho`hr~)bgp~qp zMugEI0tsiso3|fUUFG_-u^GkM9TT3##)M1BIb*`x6IL~2!wSP~@gd)PVR$}1!{B=# z8{QnB6g2(K)d!A$*?#`M)HKGa993?&@58pE76P&EcKa@bHJ*VT_LJETdphZu;Qn=B zK=sd((TbVz)XBS$b@G;?I68Uf5*EzT#k&jZ;+=u_8$}rIS9G^~*TMjggEq&7Ie#4H zJg{njR_s%7@~2!d`HdWuK7B}Dnx$?WhYfdJ*l@=oP=G}@K7kVZgex)UU&p*(F|pws z3*EQ?{dqxb+%90_2CV7E6)5T}dMf2~xY698v4y$eXa-h~%3QhO(45_HklZad9O@BP znJYHzrh_d$G+j3x5P0W6M(z-x61`Nr{|hjvE(n9_0wfo( z#)P>HOXxDUgg*71bJ70puI6aQT%TOW++7#@_Um9HU?D1QLLJ=X>fo>R(i`qRh>tW5 zM^OhIQAE0JBkT?t+=AU4oW>0+;Bm8V@DObUx(hjF7)Pg*nhy9j^4ub-Qv?1+cV+w$P*!- z8=D!J-vgWaGUNvT4)I>!SxejK?+_6NtZC@Hbq+gkO%9LRz1$=Js&m~m*PtLRuV;S0 z!Gn6H@e?ntyNxEu^bv|A=!n`v>g_75(Tu^pa|ZR!P3xUrgHD}tdiKDDs;ao3*R7$g zoMjn18WGWvjKl`76!Swn){>6Kq?^&aQGmz}Mi166u z=&A>hp$~)%eE=B>tZC*6`uK#)&^EVbR(+UtRGfXQyqgbT@jeh1?*p(pu%?;EVDZPC z#YY7v*BRC9Ie8Pbw0Qv6n4Lii z39vIXAuL3TgCUPO7-)qox49TJ!w`5-kqKND@B>@v(9bkHPLdj$C#=|UFwb#siXbC& z(tDl=y{osNuy699PfdimV({4+W}-V%LbRQskg$eSj`-ElK#7U^RaH0dxLUTi#WA`V z5}AuZvZh@OQG~@9-7rQsKE}FV*Zp;DdMUae3A+nZQzF$TpQZXpdz4h4Ou`ydqKi)f z>*7P6hY7X%uX*cYIZLB)F$}{WmV9Y021Jn?wC1Z0qtWrv+{&%hb!qGBZKci-|0qQ9 zH%!MJqmoD2AI$-4h!TWmf_O78E?=l!+$iA*=8d+svLxpbji%>9+8+_+7l3%b06J+R z^k#s3IQbwYHs!~*7p@61tL*A>F;trO5`Z#;9Px zrB4RRcKru23XxwFg~%^@WE0j<^@_(lQ~)Jbd!zaMFB<=HUEW)$ zjr#3~AlWV|b8WYeB`jF&Jy@gf@yc9pY|2=5=j!j|^bi|aMOLlx&thx*C4+d4e|y53 zeysB!!q)kZL_dNC%yOC6xa)aiGYXT0qts!zLGo#b8?p#%nyCOLslb_}_LxiIIX#^B z2quwqo3?}=FD+&HdU5kdwSjdNdBCdqe<*pA2fz{)wAxZGwx`_J@{0F}s!RHEXN7S0 zk~rmmQHm)s`&Pb06djh+OCyx3PL}Qw<*~bxvTT7Atrq+mQ9`W@?S+(Ew&SDTJ93Ww zKoV4axXAO#RKWt;-&Kc?7LTA`EupLfde*@}$Bu+LDhXv1{wOuN^W>Vw97Z}Zlu!P- zRL2T6JBsIb_NbnUXu++aPLaW;N6R2Ov6fl+CH#>RBhks8k*C0%eKg--TGeOKofMZD zout1?JEErupO&3&a$VA1A#SW!2!$9B>Jw5Z=GURA&)YZF*ty7~gv3^Y?YZ?ya&m4;OXeVDQbepYdZ!los&$>4vSc-R%( z(Um7266$7HB*uDw%;w6K<{z$2GQ4fWl;q|u8>dNu9`SOZ2di$d#fQsrfn`~~;;*)q z@40^|iZrUcR$ZL1qjr)^kuC@?2G;BW)0}WY7{5_#@jj1H?*`^Lh_wuQD=I;6sLk{S zDHuv`C{I`;{JagB%-cZcCXL6|%^1^SPB}~SHr=Nlo9-i>c24)HL|Dw*Y@ga}whyI= zM!(m%dY7QqbomkIZuCPr@R;GB%Vziw;`(rgKT6B^4-)Us@}J0N`O|LeLcOtL#=Etn zyHQN!!oW0|B&@a)`&P>j8C91O?jdoQnaloPXK|3cA|JopVUwlUT24H-hF<2@kz58mMThWnb0`FuM`<0&GJ7CjoE^^-NKoX&{l(7h|Z=- zNV{?ueCgy|>zq0Plk)_YKAE2ko@80b~b*o3YbO?BJJWciZijuO9p6zBa`cvS zlI9HhcyZ4WV_S$9Ad(gHdK*d$Zu6Av;%z7l1+399I}mujg9n~J?%_JGPv_I7XW5EM zpK6cdYWC96{8al;!a}r9vrl5v>`A3ZRrqcGwc-q0FGmb6VFuQ8qdsU-pVOr8^{V-UJ}+%@zNFNoit$EiaPI}2CNZc@1+1Y- zebl6?&udb7XMTHcYyaDwU;?2hNu?Yd?8pUNHar}kO1z1(;r@j8NJRy8;fYKao`iAy zpYpyutg5Q}U%(W{m{jgPR~a+|MI}^3Gz0__Qz;Y&L}n0?P(jGZ2&ZtKa>^k!r_{_c z)3RBuS53_fhf34e93rO-wR~~w_p|od=iGD7y;kJg^LyUs_s5Nu_ndY2UVH7e)?U+& zeM?GQ)uqyY3^o$YtRg+-gq29Nt^zCw5d}g-aYFPho*g|j>-cweDH-9D#3Fp;@M(lk zFMti3wbecGUZZ?LkL>XUdH^MBg&RX%~IJ*Ngx zJYxA!l6gj9bJiTj&YERc_*pYz2j(b)usLVWVCT#*hw8Y|f4Lp{Hc4Nf$X`TZJHlWD@nkfo-hI9MRxr($#w;r{QMkRJSCY3HG zm5xaPwiyks;pN1>d~@Bs24~u9ymRVkMqnZ%5E!IMjqvP2uwgXMc+O(ac+LlHz6jpP zJ|Fa}@HK;V)oRTV2sDoHlur&LupI##Hc=kF&GV$RpcOwI{QWzpcBkbzX}4lNem@@@ zn8uRt8A7lQiz6!pfeVSitjM!JJ`|%X|Kh+a!=_KtIH%Ofs2Acx z?!A>E>CUfoJ=NF7HvD62nD<}*XDq{0um?|ZW0;^HRLk%VTX^VZ`LDvz(Jp;46hX14 z9DpeXHv=}z_XRBd3w&?g+_CYA!s7=?O+uxRuUTF2VrYzFq2P+4-~j6u+z}{d-~;C> zEAh<0htAX=_zn0V@T*N_K&YIFRl_O0VG>JkD2v4OhP??EhErz4e3sb|;r)A`uZmwd zq~crMsH&r|W(ce&H;oOw%m9$v-rigU4Da@u$A+CD1I$p6oYi5Y>G zYB68IaQt7j6WT!DKP2mX5Ocm~UyzlcMJiciQHzOint-vqu!fK^-ctSFyre|$)lRJ*6Jeq}-=*VK+obd??N7ETV9SOQOzU|_xXU5dNB*p=eqefXzyG60nZgQyZ zv|9&)bs`6Kb8fl#P?FY}X0b1ux6IuwwuRn|odEGS0a}f;-vo$2z{2>N1cI2PeF2xwl7NVxvh@&j*S6r#^udMfU@5KeVE;%gHS z>_37uLGb5x9;YYh1J5Giu3g{mjk)d4Mf5OW=cSd}AfOhnsICN_kNDN)9|78>hHQ@v z@b4V(*~u2xi5O@M?SiU+4$JOECxC1Zl+4fVC=P(WRRXwp83T(4b zV4Gok0~XZZinZM8Nv88`r_~M>?sWtg5%pCr@-u}oKeV5w#rHF{CD=gy08pjlDDVS&fmG`qICvvo<-V~3w<7M4Md=KGmS2sSK9YcOhS&Zswk zd$-?nYaFy5ZgoYn+6RrL?$7o--1>*C){vZ>u2DgliqRtaXIw$bs_;>3o!x(DRrGBF zlpEIXnq1gj6ZyIcaxg1Sp(QaFSJqpQa9%xGL_|c&2?&85K|e~UjZBQ>3AOmEB-FMW zF}wQ}|5*o=)hGF!B?L6j5Hq^ocy5gK2|5>m+**^#9E+Jqp|Wn6*z1em&>58T5YN8w=g2GKoZ0BwF@Asbg zGK>_CqNi0&5rha`5JW18`XEyv!9r7nAW9d)qjcw=xwxTK&5A{00>ULdmdasm-2Fs+ z{R4is9#fl>1HF;KWq~3n@K+dF-0My8IZDmr^|c+m(T2>MVps%q^j1>pT)w_K# zG#S0BlifkkAVETd1ewse#bk_)c7W{ez-9N19S&!9y;;tKiqE8u)fy7s+FlCU@9c0W zX(6LLz$<8iD_bVC6!)oft`>`O9@W>*SDQyw99UxYMDTao?$EMv9<#%qZEL!)wlxE> zYy<_>RM<1AeBiJf5$_)oD~{z;Er^S*ec44<*$Tbr8b+|ef~Y_P;tE%41XH`yIQE=p z7M+{1`nsgSto;e)m@!{HxsaRY1<~iLIZ5Tk_0SC9Lt^Gw{-n9bUal7f54uM+XdZN%%Bb$UQ}duc@=Vkki=cdyVu_vEGhxlnS58r0 zt}Q2J;J}a}?yJdwCIKuMAqR|*!xWdY6m<7)q4 z9=Z2`%9d*RO9s?MhENw7roIFl*fI<1B8#hwGy8A6E_qhP)0z-fk`2rUvq)RGZTA_S zRjD;|{}^`No;Z);FNP7!3Gxn!8wrqz?(_7zjmZ?_isZM zS<$GvvBZ>zUmhbykwmZoO{uArm71t|%UeIp=-J`qkwI28>S#(#Q}C*MI4(h&Hedsq z@um)Jyot)`zWmVbSk&^AJfIOOHdS%hcsT_zFDJP$&dbS{V8izHfg8uiiL$=l+3q&* z*Y=L}fri@(P;9E-$U*AO93;8c#z6`tSkTr6x1mK3giEQ zB2aqv7@&v{XXcMYnazWFZf(yJ%dx4J za}_|)DwA?=?y|=_K3rTcvzHxCngw6XEE7Nb;cp7T22Pp_PMXU(>A5?V8w)nv=ENr-vht(4JMKy|*j-6(l5!Wu9bf}L z*07Ya8W!3eKfk(dXiZbbD@0Kx$)DPR)v(_>4c|DhpHY+bGjE+n&@XCr)-U-|`<+|H zZ&4?vnrxdfnawcUNNQ|0`4McG*xN95-sYyxCUemAn2{5yZHux))DzogQyktMB=Ce2 ztoZiu3tPGL*|%XzWz))qbX^tXFUYHEw#}v-ydf8MZibcvY#7BB_))f)NCp;;^nbQX zz$2UNkoOQ)@{lQ%58{xi1;GaL9yVpO!zOAn)cV{o)1rZ0YiqM>`HGv(Jk#J1CUeM? zByfchEUxxFY#Ij~WR-h3k1i^2*n7NnD5}OUhqJO=I4jG+8h{N$`4&|t-6%bV?il%K&P@%lvDW>KY4e+aw2$z^tL(@!w!0D$8I6;PJU^n{Rqy`% zI39&2S5ds(6+zLW-BpcyO)Z_51ySQYbkrF?8jxhUwaltQpz;u@A|*p_oJ zvEa9+`yOria-I9}%~7~5j>0%2A|1uT0~UO9!ZZ)WSqvNv-Y@h&)O$g^>aU87h>&l4 z>ktUakiTj`-~b*k!Cxg3?vq$q=f$jgq6|rALrkid#3t2~Be0X|^(ENACNI^Sz+S3H zW@^)tgP%7W5fFR737iMxpBIdO9$XAqOyDA{%ZuE)bY1kG#d-HhvxbPOB)9|{>!x3nE^DZE(dz6+>VDxToQnnqzC&VX{jw9xmaBh<=x_MF1O^>?)Y-Drd5p>qloy z3z3Ld4FctMv;ORMGuarr-K+<}27yx5EQM7yBZK?WxzuNFWafPUEELA&8%H#wy>8B8 z*UfUg=(>3T!MZdX2X@1}5Fbi0_~BxUr2W4+Q+rBcXPr9~i>ghywfSB+YHYmeHa0+Z zVOFwmu-fefgjP5l10%UW4{jRhpr(h0!>Cmu#1sFqpr4nFR4 z$cI*(#kp_BJ;=oe|kuFQnMkZjl=JO)7-fenV3kE>#h=$59k4+GTiN_ZMio^}|2Z~GcC+6}0Bq4wCTDY-}p@@=YIeRsX+oq(;0Oeu*_#0ihYX;T`s$`dC{ zS%DbX&7R)mA-D&MzWtHb#HB3U>gqx|xnxIIt5>6<(TGh5|bJM>x%%RG8yTL}< zTAC+xvgyxe`;RJ1&|JeE)w_(wmV$~*iUPHw_+2yvJ)wqn*FDQ756PWKCs)N>S1rwU zUR_x`FFD-M&Z`x{!qV*EmBBiA(b?+p?t3g7vf@T+=#E=Mo+&6yQzE^Tile<*#JVr_ zk6E{7cblNEjfRzP-W`>pA`^*TYVUiLyi~(p6W#H2N443ODJaI3J;t*wV+l5#8|PZap+J}XHU;0_di?pR zE1v}^lM6=Yi$XxT>xov?=)e4n(R4!i4@B!obUtvbPC>#auAEV--!M{}UTf>5?F;Vf z%T*vjaVj6y8u0P)QBOu?gN<;`CjW)%r*G*P##)NbPAwhV5`6E)WkpYIpuOs*ZsCf5!In$XA27fzOb-)lvqI{z}waV*m; zJ9snAkpvsi3^R{o!_2h5oaPt*x|+b{~on@PFq_n ztFaWT%@a75)#f~c4OrH}Z?%s5tr|QL6FD;_=^Yu1Za?hDH1>-sv;F3_1nc@yIkE## z9|w4q*#T6U9pF`Fo`r*Nly%-gCL7cR?F_Yt*iLg#wiC-lv)c(e0XFz4KQ?ExkIm$u zcX{IlzsIi?K5Rv!@?xJB0jy7pAdaRFssI5S(8RWQjm5Tj9cYffaKXFDxuhKmFD6^t z2iWID-2*za`%eONK#Zm*hBPW&V6EB~AIWPShH9I8HW;Wz1^=kE-Ku5z>Eqpr=sA$+ zOi6D9r8wt^{Pee59UL@w`(uhT)S8sW-3Z!XsB9rC`D}0@*v+c6F|dJ=Th|X{R}*pc zhA`1rKf^bj&{e^SvQ7wk%Sk!VeYZaGQ2X&82FvWJ-NIFH##aevd{w=t2sRi+3`P;- zM$u~p;|97#9&QgTLMN(Bz7rd2r??+tC-yL4gHHSid-x;1hb>)aP5Y&1zd}1`cEN?c zOSrIiL9hTep!pnVKIdrsOV^oeG;LB=-rb2JJ;}ZMC&%{VNABzfE-bqNxv2>n z-e8d6!A6JAG(B&Ra#)~64qFCV5(qYE=pgh!4&ptKLpR5~7Im<(lNF6B6)PYWD}+?6fK&u*Kyw9B z@d}rUF^{^YHlH-Aj`ai;)m=_??$lX?j)n&g=bN&9}@B&eq2$TYS60! zBD_MJ04lJqfQ7!g1g^Verg+VufX_VMt=IQ^d+*=I`?tmWxA8t;@qU##kyV)~H{!L1 z^Quag3?NOV{JwgMPj^pb>F#nFMY=l*cHPs&`j{s)j@U!X_Pt=+RaM(dRUZCcdIvV``kG$;#(cFnX!*it+|Y zCcU*^?Y3F^*B`iV7TNiKSy2#o_K1s(?;DleJw7fuDkd(vd;gf&zVbnJ0=jHX@S%IR z33|zAg4nQE&YnoARX1_0yvn+rW|G2~Ns^0pOj28d4O>LQz1tGMce}~lY4Z;(J}=p0 zwnepY|6MJ)NynmEZ3!04wyah#TULu~#E@c|%R&=n~VlxwG@{AJv zRjLU-izwcHr67Ey_*MNW+XwvRBlyb)c|?GP>}(-*Wi6yg{A{PlPHirI)%u>wor9DM zvA)3t@ZTVyNj&~dvv7h9+<6Sa%ws&5xnXia+={6;R@kATpOnq~uo(!AADA4lfrhO> z!&aPzA!|KbY_Ihxbr%(~Q%%iUi6*5hMU&E%Xi^H;AUjv1N$G0dq}093>`kBlR_9|o zqX|SROrS`G2}CLkV8dvFaMyZ}M5!=N?JM0LTlm~^8I3OT{hmW8dk>vgXj1Pvv?ADG z3hs39V>=z%0!^KL{xfzjyYL~QsE$RI47}Zm+jB^CuWi@23_MI(o2c(?Ko4NXqgd`bUXRKuf)`*Ci&SlDeBU+k&dF3tqq3;gu?E3@C8 zHP*QaWd>EbB;Z4`wDO&}M_;u(8IIp2DWqrAXwV>9l8+zJU`@b+QDdZLEJkWUtMOyS zn8{tg(P%Q&W?6tGTOi4Lb%8XBV8i?uA-!S|Z?WC(-)~0dzV&=}F>4x&wOg7}=8gRp zs;O>}jYWG8S`Brrl}^iSBV~*Jk#cZuOBTrCHvY4JC%crGK~@cRE(kyRunRl-a4#$| zK_?zooT_iE>T+@8n~mq#UC=(@!agFUrH_xjIj8S+MxMVMSyp5hrq6 zR=6_yV3+n0yR;8>DPY5b#v&^^R-(kLS32+i?eyqV;!sOy)a^Ay>dA&k^0{vav@~FY z%t*raO5)q=%Qn+L_&E5Z>DJMx9+6y#o?Ib%av^#E8%8q{S67VWS64I->Ye@bu_DUl z;}pekRFfwS21A-i=S;(H2Q0Ke7Pvf%bGZ~+%VY2MR&@Ndc|QlNog>LPg*hN9VDWw~ zh?>iZ8hd2M703KzXXL$`ocvUc`t|uvEkoULnIxyClz}dQYsfyXsYp4RDp5+x+OoP0 zUO8BMgG>VwcxpzNn@c!zbCETen@b?U27%YuC5tt7$pxBkPo4LBvh!}rPqUfB0;r?~ zLM1K0kN}H0ECxjuOW}AwvGa_bk34C*bw8J_yT>5rj%%Mu__}+95iDG`jXa83Bac$x zxY;w{#S6Fl)wiL;8i<)S$eyK_*MJUy1s&Fb4(m7_o*$O-(YAR7{bV|D#uRp6g;Or8 zaLVUzS2!gRY&c|HcACO2I}v|h_`>~ze3#@_G8P?wuK|Cr5&XRd{0-Q^QS0!p>v#>$ zZr9;CO z%h9ZQ67t^Q}ep6!Kwg(Zgbk9)=A z^BorFJH9y6Qx+X>-2eI*t+u|IAuD2rqzfF9^oH0LBHZL+HSM!f1bz z4a#4`Ydq{Qe7=lEC((L(_hdc2W#!P*JA`0^MC$gYk^9a$>T?vV$Iux-~2RW#f>X1h8dnBM8 zS*C*rK4#D-)1fOqWVUyEE>OxJ^zbY@^tlRa=&G=Wu0mx1Hqhr6(B~IUpO@DiIQK~Y zu2itFrrQntiG{qFRhvC%^F4V^RI5jo)#}`g1`yq7OFb;nH28i^EdTOBPYF!R31Pe* zRw;$Kg|k<-Mv`e!XEMM(;u)+!YGpE))V_u|H~9GLU^s;r#5d zT=Shhy_Det#QW)mm);2*9V|+{hz-+}T9Ni> z?$KT}_h^r*5WogD?1<(b9eHyPbM{QPz{nd*Y~~>0_a(FirY$O2dJ!z<(A1K`np%j5 zJDhmJJg@e(a+!xQ1T`7I8_LAGi88TnNN50TIOs)qrLYKICbql#+FXa{e)N&~PK%|g zRw%2&IhV#zRV#pCg9yKeC+^iE4ewviWyf>tlJ64R5kZr!i4phlj%y#V8r`;aj7F}* zd;i~g$17^Pu!`E`9Vh5YZN)ooS$m|-z$a@zYDZ>BmKk6gxk5xjz#6bYW;DgWHsxXL zG3)RBR<*Tt1r|>|7-37JP-qPL_b1=CJ94t_A-~j&jQjv^T76t>n3s_`Ho&_G&K_QG zB)hB(4UEJOWDFCOBtaeN>7Te=c#P$&Vo_b$Lf zK7p322khuM*mTf}Mm-bXbSq{z-AXx{n{GJ-8_@jjHlO|OwghNi+cJFIq7#p3U03R% z#ov;RA;{|6A7Tcu5N`n(T!4j?k>fCjb(7A8r`TaEf6D~CB3GOHTk;7uFji~$s#|kk zwcmm-qO#m#RsoHTlnueVA;_;F=@J5&23QOu)bbJwq%*idQ zdCCubO+h6?Y=IDP2d+To=SRG1O>N^*hQ7U{ljG$u!%hSjb~d0!Fa&+jAWwKLYurxm z(|zHHy>@6Gg3TNvHggEJEnox9L-DVnd^7jxIs8amX}=t$x8h@JZ^g^#pmE`r>dq|zENzJFOMtWZ!p1zg`4Xe%I5l#Qd!is^V0P6-Z8*pG}3xldaxeYS2UO& zmSBPnn<2&$$YS^L#+NZnCrANk>=WS zll}S+o7f3xXvy`blpe4wdLW7;kLM|Zg-IP_3B@>QI&pnRO)YCznQa$AA55l?5E6ZG zD;8jZ;AxA6J#Fy?g64q~6<}d>48#T<$c>J9Bks07Y4-KCGlqE7HpN@yZU^y@0e}r- z7-%U08uIbD3~Ki7@PfDL(kNBs&~D2dO${8ao$~BE?Tiop+0L}0wAq~2dau6GT)?NJ z$}8QCyki7qxQ!Ltvv0S?+1~Yck|*0p{2?$Bhk#zR_(RYM46tG1LqYtZocJE~ld?l2 zXD+aVCf!ns%g|(}XF8&RfDLFefhLoq>1n!@cX`qNnp*lnk7{#K?d6CkYoEEV)rI-l z#K|AH)I-+I>Wv1vfmns5U-fS^0AgAZP4D-X$Q5l_hcd$n@~@LGmeBvMXXmnIms;DQ zeGZgjj!=p@*aCnJw9f_Yb2;s^$KGm{IVE8~(Aa3TGT7>6I6n|8lwlhK7FumOw()en zjU7IDcC=T$a}-)p1xdVeX#A-`FZNRd8Np8tf(aIK;Btd7cDX?mHjm%l!!7)F&7s4q zkrfw!6&DCrTmV)CY?#L)G^Ja_o6_A4iilir`&lY>Hlo?n3|cAk0ky)>XPMnjh4s=wvps=wu+24I8pWhKVA(n8hFGj4pJI5DlqFgv4J Y4zaP^B4?g0$07kXjAjKUwSp$~f951>^Z)<= literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h new file mode 100644 index 00000000..5cdc37fd --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h @@ -0,0 +1,3346 @@ +/*===----------- avx512fp16intrin.h - AVX512-FP16 intrinsics ---------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifdef __SSE2__ + +#ifndef __AVX512FP16INTRIN_H +#define __AVX512FP16INTRIN_H + +/* Define the default attributes for the functions in this file. */ +typedef _Float16 __v32hf __attribute__((__vector_size__(64), __aligned__(64))); +typedef _Float16 __m512h __attribute__((__vector_size__(64), __aligned__(64))); +typedef _Float16 __m512h_u __attribute__((__vector_size__(64), __aligned__(1))); + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS512 \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \ + __min_vector_width__(512))) +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \ + __min_vector_width__(256))) +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \ + __min_vector_width__(128))) + +static __inline__ _Float16 __DEFAULT_FN_ATTRS512 _mm512_cvtsh_h(__m512h __a) { + return __a[0]; +} + +static __inline __m128h __DEFAULT_FN_ATTRS128 _mm_setzero_ph(void) { + return (__m128h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; +} + +static __inline __m256h __DEFAULT_FN_ATTRS256 _mm256_setzero_ph(void) { + return (__m256h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_undefined_ph(void) { + return (__m256h)__builtin_ia32_undef256(); +} + +static __inline __m512h __DEFAULT_FN_ATTRS512 _mm512_setzero_ph(void) { + return (__m512h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_undefined_ph(void) { + return (__m128h)__builtin_ia32_undef128(); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_undefined_ph(void) { + return (__m512h)__builtin_ia32_undef512(); +} + +static __inline __m512h __DEFAULT_FN_ATTRS512 _mm512_set1_ph(_Float16 __h) { + return (__m512h)(__v32hf){__h, __h, __h, __h, __h, __h, __h, __h, + __h, __h, __h, __h, __h, __h, __h, __h, + __h, __h, __h, __h, __h, __h, __h, __h, + __h, __h, __h, __h, __h, __h, __h, __h}; +} + +static __inline __m512h __DEFAULT_FN_ATTRS512 +_mm512_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4, + _Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8, + _Float16 __h9, _Float16 __h10, _Float16 __h11, _Float16 __h12, + _Float16 __h13, _Float16 __h14, _Float16 __h15, _Float16 __h16, + _Float16 __h17, _Float16 __h18, _Float16 __h19, _Float16 __h20, + _Float16 __h21, _Float16 __h22, _Float16 __h23, _Float16 __h24, + _Float16 __h25, _Float16 __h26, _Float16 __h27, _Float16 __h28, + _Float16 __h29, _Float16 __h30, _Float16 __h31, _Float16 __h32) { + return (__m512h)(__v32hf){__h32, __h31, __h30, __h29, __h28, __h27, __h26, + __h25, __h24, __h23, __h22, __h21, __h20, __h19, + __h18, __h17, __h16, __h15, __h14, __h13, __h12, + __h11, __h10, __h9, __h8, __h7, __h6, __h5, + __h4, __h3, __h2, __h1}; +} + +#define _mm512_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8, h9, h10, h11, h12, h13, \ + h14, h15, h16, h17, h18, h19, h20, h21, h22, h23, h24, \ + h25, h26, h27, h28, h29, h30, h31, h32) \ + _mm512_set_ph((h32), (h31), (h30), (h29), (h28), (h27), (h26), (h25), (h24), \ + (h23), (h22), (h21), (h20), (h19), (h18), (h17), (h16), (h15), \ + (h14), (h13), (h12), (h11), (h10), (h9), (h8), (h7), (h6), \ + (h5), (h4), (h3), (h2), (h1)) + +static __inline __m512h __DEFAULT_FN_ATTRS512 +_mm512_set1_pch(_Float16 _Complex h) { + return (__m512h)_mm512_set1_ps(__builtin_bit_cast(float, h)); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_castph_ps(__m128h __a) { + return (__m128)__a; +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_castph_ps(__m256h __a) { + return (__m256)__a; +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_castph_ps(__m512h __a) { + return (__m512)__a; +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_castph_pd(__m128h __a) { + return (__m128d)__a; +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 _mm256_castph_pd(__m256h __a) { + return (__m256d)__a; +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 _mm512_castph_pd(__m512h __a) { + return (__m512d)__a; +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_castph_si128(__m128h __a) { + return (__m128i)__a; +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_castph_si256(__m256h __a) { + return (__m256i)__a; +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_castph_si512(__m512h __a) { + return (__m512i)__a; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castps_ph(__m128 __a) { + return (__m128h)__a; +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_castps_ph(__m256 __a) { + return (__m256h)__a; +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_castps_ph(__m512 __a) { + return (__m512h)__a; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castpd_ph(__m128d __a) { + return (__m128h)__a; +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_castpd_ph(__m256d __a) { + return (__m256h)__a; +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_castpd_ph(__m512d __a) { + return (__m512h)__a; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castsi128_ph(__m128i __a) { + return (__m128h)__a; +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_castsi256_ph(__m256i __a) { + return (__m256h)__a; +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_castsi512_ph(__m512i __a) { + return (__m512h)__a; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_castph256_ph128(__m256h __a) { + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_castph512_ph128(__m512h __a) { + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_castph512_ph256(__m512h __a) { + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_castph128_ph256(__m128h __a) { + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, -1, -1, -1, + -1, -1, -1, -1, -1); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_castph128_ph512(__m128h __a) { + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_castph256_ph512(__m256h __a) { + return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1); +} + +/// Constructs a 256-bit floating-point vector of [16 x half] from a +/// 128-bit floating-point vector of [8 x half]. The lower 128 bits +/// contain the value of the source vector. The upper 384 bits are set +/// to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x half]. +/// \returns A 512-bit floating-point vector of [16 x half]. The lower 128 bits +/// contain the value of the parameter. The upper 384 bits are set to zero. +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_zextph128_ph256(__m128h __a) { + return __builtin_shufflevector(__a, (__v8hf)_mm_setzero_ph(), 0, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); +} + +/// Constructs a 512-bit floating-point vector of [32 x half] from a +/// 128-bit floating-point vector of [8 x half]. The lower 128 bits +/// contain the value of the source vector. The upper 384 bits are set +/// to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x half]. +/// \returns A 512-bit floating-point vector of [32 x half]. The lower 128 bits +/// contain the value of the parameter. The upper 384 bits are set to zero. +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_zextph128_ph512(__m128h __a) { + return __builtin_shufflevector( + __a, (__v8hf)_mm_setzero_ph(), 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, + 13, 14, 15, 8, 9, 10, 11, 12, 13, 14, 15, 8, 9, 10, 11, 12, 13, 14, 15); +} + +/// Constructs a 512-bit floating-point vector of [32 x half] from a +/// 256-bit floating-point vector of [16 x half]. The lower 256 bits +/// contain the value of the source vector. The upper 256 bits are set +/// to zero. +/// +/// \headerfile +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit vector of [16 x half]. +/// \returns A 512-bit floating-point vector of [32 x half]. The lower 256 bits +/// contain the value of the parameter. The upper 256 bits are set to zero. +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_zextph256_ph512(__m256h __a) { + return __builtin_shufflevector(__a, (__v16hf)_mm256_setzero_ph(), 0, 1, 2, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31); +} + +#define _mm_comi_round_sh(A, B, P, R) \ + __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, (int)(P), (int)(R)) + +#define _mm_comi_sh(A, B, pred) \ + _mm_comi_round_sh((A), (B), (pred), _MM_FROUND_CUR_DIRECTION) + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comieq_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_EQ_OS, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comilt_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_LT_OS, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comile_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_LE_OS, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comigt_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_GT_OS, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comige_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_GE_OS, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comineq_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_NEQ_US, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomieq_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_EQ_OQ, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomilt_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_LT_OQ, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomile_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_LE_OQ, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomigt_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_GT_OQ, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomige_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_GE_OQ, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomineq_sh(__m128h A, + __m128h B) { + return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_NEQ_UQ, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_add_ph(__m512h __A, + __m512h __B) { + return (__m512h)((__v32hf)__A + (__v32hf)__B); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_add_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512( + (__mmask32)__U, (__v32hf)_mm512_add_ph(__A, __B), (__v32hf)__W); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_add_ph(__mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, + (__v32hf)_mm512_add_ph(__A, __B), + (__v32hf)_mm512_setzero_ph()); +} + +#define _mm512_add_round_ph(A, B, R) \ + ((__m512h)__builtin_ia32_addph512((__v32hf)(__m512h)(A), \ + (__v32hf)(__m512h)(B), (int)(R))) + +#define _mm512_mask_add_round_ph(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_add_round_ph((A), (B), (R)), \ + (__v32hf)(__m512h)(W))) + +#define _mm512_maskz_add_round_ph(U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_add_round_ph((A), (B), (R)), \ + (__v32hf)_mm512_setzero_ph())) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_sub_ph(__m512h __A, + __m512h __B) { + return (__m512h)((__v32hf)__A - (__v32hf)__B); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_sub_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512( + (__mmask32)__U, (__v32hf)_mm512_sub_ph(__A, __B), (__v32hf)__W); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_sub_ph(__mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, + (__v32hf)_mm512_sub_ph(__A, __B), + (__v32hf)_mm512_setzero_ph()); +} + +#define _mm512_sub_round_ph(A, B, R) \ + ((__m512h)__builtin_ia32_subph512((__v32hf)(__m512h)(A), \ + (__v32hf)(__m512h)(B), (int)(R))) + +#define _mm512_mask_sub_round_ph(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_sub_round_ph((A), (B), (R)), \ + (__v32hf)(__m512h)(W))) + +#define _mm512_maskz_sub_round_ph(U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_sub_round_ph((A), (B), (R)), \ + (__v32hf)_mm512_setzero_ph())) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_mul_ph(__m512h __A, + __m512h __B) { + return (__m512h)((__v32hf)__A * (__v32hf)__B); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_mul_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512( + (__mmask32)__U, (__v32hf)_mm512_mul_ph(__A, __B), (__v32hf)__W); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_mul_ph(__mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, + (__v32hf)_mm512_mul_ph(__A, __B), + (__v32hf)_mm512_setzero_ph()); +} + +#define _mm512_mul_round_ph(A, B, R) \ + ((__m512h)__builtin_ia32_mulph512((__v32hf)(__m512h)(A), \ + (__v32hf)(__m512h)(B), (int)(R))) + +#define _mm512_mask_mul_round_ph(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_mul_round_ph((A), (B), (R)), \ + (__v32hf)(__m512h)(W))) + +#define _mm512_maskz_mul_round_ph(U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_mul_round_ph((A), (B), (R)), \ + (__v32hf)_mm512_setzero_ph())) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_div_ph(__m512h __A, + __m512h __B) { + return (__m512h)((__v32hf)__A / (__v32hf)__B); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_div_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512( + (__mmask32)__U, (__v32hf)_mm512_div_ph(__A, __B), (__v32hf)__W); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_div_ph(__mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, + (__v32hf)_mm512_div_ph(__A, __B), + (__v32hf)_mm512_setzero_ph()); +} + +#define _mm512_div_round_ph(A, B, R) \ + ((__m512h)__builtin_ia32_divph512((__v32hf)(__m512h)(A), \ + (__v32hf)(__m512h)(B), (int)(R))) + +#define _mm512_mask_div_round_ph(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_div_round_ph((A), (B), (R)), \ + (__v32hf)(__m512h)(W))) + +#define _mm512_maskz_div_round_ph(U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_div_round_ph((A), (B), (R)), \ + (__v32hf)_mm512_setzero_ph())) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_min_ph(__m512h __A, + __m512h __B) { + return (__m512h)__builtin_ia32_minph512((__v32hf)__A, (__v32hf)__B, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_min_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512( + (__mmask32)__U, (__v32hf)_mm512_min_ph(__A, __B), (__v32hf)__W); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_min_ph(__mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, + (__v32hf)_mm512_min_ph(__A, __B), + (__v32hf)_mm512_setzero_ph()); +} + +#define _mm512_min_round_ph(A, B, R) \ + ((__m512h)__builtin_ia32_minph512((__v32hf)(__m512h)(A), \ + (__v32hf)(__m512h)(B), (int)(R))) + +#define _mm512_mask_min_round_ph(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_min_round_ph((A), (B), (R)), \ + (__v32hf)(__m512h)(W))) + +#define _mm512_maskz_min_round_ph(U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_min_round_ph((A), (B), (R)), \ + (__v32hf)_mm512_setzero_ph())) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_max_ph(__m512h __A, + __m512h __B) { + return (__m512h)__builtin_ia32_maxph512((__v32hf)__A, (__v32hf)__B, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_max_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512( + (__mmask32)__U, (__v32hf)_mm512_max_ph(__A, __B), (__v32hf)__W); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_max_ph(__mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, + (__v32hf)_mm512_max_ph(__A, __B), + (__v32hf)_mm512_setzero_ph()); +} + +#define _mm512_max_round_ph(A, B, R) \ + ((__m512h)__builtin_ia32_maxph512((__v32hf)(__m512h)(A), \ + (__v32hf)(__m512h)(B), (int)(R))) + +#define _mm512_mask_max_round_ph(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_max_round_ph((A), (B), (R)), \ + (__v32hf)(__m512h)(W))) + +#define _mm512_maskz_max_round_ph(U, A, B, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_max_round_ph((A), (B), (R)), \ + (__v32hf)_mm512_setzero_ph())) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_abs_ph(__m512h __A) { + return (__m512h)_mm512_and_epi32(_mm512_set1_epi32(0x7FFF7FFF), (__m512i)__A); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_conj_pch(__m512h __A) { + return (__m512h)_mm512_xor_ps((__m512)__A, _mm512_set1_ps(-0.0f)); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_conj_pch(__m512h __W, __mmask16 __U, __m512h __A) { + return (__m512h)__builtin_ia32_selectps_512( + (__mmask16)__U, (__v16sf)_mm512_conj_pch(__A), (__v16sf)__W); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_conj_pch(__mmask16 __U, __m512h __A) { + return (__m512h)__builtin_ia32_selectps_512((__mmask16)__U, + (__v16sf)_mm512_conj_pch(__A), + (__v16sf)_mm512_setzero_ps()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_add_sh(__m128h __A, + __m128h __B) { + __A[0] += __B[0]; + return __A; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_add_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + __A = _mm_add_sh(__A, __B); + return __builtin_ia32_selectsh_128(__U, __A, __W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_add_sh(__mmask8 __U, + __m128h __A, + __m128h __B) { + __A = _mm_add_sh(__A, __B); + return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph()); +} + +#define _mm_add_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_addsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_add_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_addsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_add_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_addsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sub_sh(__m128h __A, + __m128h __B) { + __A[0] -= __B[0]; + return __A; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sub_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + __A = _mm_sub_sh(__A, __B); + return __builtin_ia32_selectsh_128(__U, __A, __W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sub_sh(__mmask8 __U, + __m128h __A, + __m128h __B) { + __A = _mm_sub_sh(__A, __B); + return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph()); +} + +#define _mm_sub_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_subsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_sub_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_subsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_sub_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_subsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mul_sh(__m128h __A, + __m128h __B) { + __A[0] *= __B[0]; + return __A; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_mul_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + __A = _mm_mul_sh(__A, __B); + return __builtin_ia32_selectsh_128(__U, __A, __W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_mul_sh(__mmask8 __U, + __m128h __A, + __m128h __B) { + __A = _mm_mul_sh(__A, __B); + return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph()); +} + +#define _mm_mul_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_mulsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_mul_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_mulsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_mul_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_mulsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_div_sh(__m128h __A, + __m128h __B) { + __A[0] /= __B[0]; + return __A; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_div_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + __A = _mm_div_sh(__A, __B); + return __builtin_ia32_selectsh_128(__U, __A, __W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_div_sh(__mmask8 __U, + __m128h __A, + __m128h __B) { + __A = _mm_div_sh(__A, __B); + return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph()); +} + +#define _mm_div_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_divsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_div_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_divsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_div_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_divsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_min_sh(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_minsh_round_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_min_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_minsh_round_mask((__v8hf)__A, (__v8hf)__B, + (__v8hf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_min_sh(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_minsh_round_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_min_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_minsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_min_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_minsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_min_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_minsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_max_sh(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_maxsh_round_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_max_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_maxsh_round_mask((__v8hf)__A, (__v8hf)__B, + (__v8hf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_max_sh(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_maxsh_round_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_max_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_maxsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_max_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_maxsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_max_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_maxsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_cmp_round_ph_mask(A, B, P, R) \ + ((__mmask32)__builtin_ia32_cmpph512_mask((__v32hf)(__m512h)(A), \ + (__v32hf)(__m512h)(B), (int)(P), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_mask_cmp_round_ph_mask(U, A, B, P, R) \ + ((__mmask32)__builtin_ia32_cmpph512_mask((__v32hf)(__m512h)(A), \ + (__v32hf)(__m512h)(B), (int)(P), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_cmp_ph_mask(A, B, P) \ + _mm512_cmp_round_ph_mask((A), (B), (P), _MM_FROUND_CUR_DIRECTION) + +#define _mm512_mask_cmp_ph_mask(U, A, B, P) \ + _mm512_mask_cmp_round_ph_mask((U), (A), (B), (P), _MM_FROUND_CUR_DIRECTION) + +#define _mm_cmp_round_sh_mask(X, Y, P, R) \ + ((__mmask8)__builtin_ia32_cmpsh_mask((__v8hf)(__m128h)(X), \ + (__v8hf)(__m128h)(Y), (int)(P), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_cmp_round_sh_mask(M, X, Y, P, R) \ + ((__mmask8)__builtin_ia32_cmpsh_mask((__v8hf)(__m128h)(X), \ + (__v8hf)(__m128h)(Y), (int)(P), \ + (__mmask8)(M), (int)(R))) + +#define _mm_cmp_sh_mask(X, Y, P) \ + ((__mmask8)__builtin_ia32_cmpsh_mask( \ + (__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), (int)(P), (__mmask8)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_cmp_sh_mask(M, X, Y, P) \ + ((__mmask8)__builtin_ia32_cmpsh_mask( \ + (__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), (int)(P), (__mmask8)(M), \ + _MM_FROUND_CUR_DIRECTION)) +// loads with vmovsh: +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_load_sh(void const *__dp) { + struct __mm_load_sh_struct { + _Float16 __u; + } __attribute__((__packed__, __may_alias__)); + _Float16 __u = ((const struct __mm_load_sh_struct *)__dp)->__u; + return (__m128h){__u, 0, 0, 0, 0, 0, 0, 0}; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_load_sh(__m128h __W, __mmask8 __U, const void *__A) { + __m128h src = (__v8hf)__builtin_shufflevector( + (__v8hf)__W, (__v8hf)_mm_setzero_ph(), 0, 8, 8, 8, 8, 8, 8, 8); + + return (__m128h)__builtin_ia32_loadsh128_mask((const __v8hf *)__A, src, __U & 1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_load_sh(__mmask8 __U, const void *__A) { + return (__m128h)__builtin_ia32_loadsh128_mask( + (const __v8hf *)__A, (__v8hf)_mm_setzero_ph(), __U & 1); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_load_ph(void const *__p) { + return *(const __m512h *)__p; +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_load_ph(void const *__p) { + return *(const __m256h *)__p; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_load_ph(void const *__p) { + return *(const __m128h *)__p; +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_loadu_ph(void const *__p) { + struct __loadu_ph { + __m512h_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_ph *)__p)->__v; +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_loadu_ph(void const *__p) { + struct __loadu_ph { + __m256h_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_ph *)__p)->__v; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_loadu_ph(void const *__p) { + struct __loadu_ph { + __m128h_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_ph *)__p)->__v; +} + +// stores with vmovsh: +static __inline__ void __DEFAULT_FN_ATTRS128 _mm_store_sh(void *__dp, + __m128h __a) { + struct __mm_store_sh_struct { + _Float16 __u; + } __attribute__((__packed__, __may_alias__)); + ((struct __mm_store_sh_struct *)__dp)->__u = __a[0]; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 _mm_mask_store_sh(void *__W, + __mmask8 __U, + __m128h __A) { + __builtin_ia32_storesh128_mask((__v8hf *)__W, __A, __U & 1); +} + +static __inline__ void __DEFAULT_FN_ATTRS512 _mm512_store_ph(void *__P, + __m512h __A) { + *(__m512h *)__P = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_store_ph(void *__P, + __m256h __A) { + *(__m256h *)__P = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 _mm_store_ph(void *__P, + __m128h __A) { + *(__m128h *)__P = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS512 _mm512_storeu_ph(void *__P, + __m512h __A) { + struct __storeu_ph { + __m512h_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_ph *)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_storeu_ph(void *__P, + __m256h __A) { + struct __storeu_ph { + __m256h_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_ph *)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 _mm_storeu_ph(void *__P, + __m128h __A) { + struct __storeu_ph { + __m128h_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_ph *)__P)->__v = __A; +} + +// moves with vmovsh: +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_move_sh(__m128h __a, + __m128h __b) { + __a[0] = __b[0]; + return __a; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_move_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return __builtin_ia32_selectsh_128(__U, _mm_move_sh(__A, __B), __W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_move_sh(__mmask8 __U, + __m128h __A, + __m128h __B) { + return __builtin_ia32_selectsh_128(__U, _mm_move_sh(__A, __B), + _mm_setzero_ph()); +} + +// vmovw: +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtsi16_si128(short __a) { + return (__m128i)(__v8hi){__a, 0, 0, 0, 0, 0, 0, 0}; +} + +static __inline__ short __DEFAULT_FN_ATTRS128 _mm_cvtsi128_si16(__m128i __a) { + __v8hi __b = (__v8hi)__a; + return __b[0]; +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_rcp_ph(__m512h __A) { + return (__m512h)__builtin_ia32_rcpph512_mask( + (__v32hf)__A, (__v32hf)_mm512_undefined_ph(), (__mmask32)-1); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_rcp_ph(__m512h __W, __mmask32 __U, __m512h __A) { + return (__m512h)__builtin_ia32_rcpph512_mask((__v32hf)__A, (__v32hf)__W, + (__mmask32)__U); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_rcp_ph(__mmask32 __U, __m512h __A) { + return (__m512h)__builtin_ia32_rcpph512_mask( + (__v32hf)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_rsqrt_ph(__m512h __A) { + return (__m512h)__builtin_ia32_rsqrtph512_mask( + (__v32hf)__A, (__v32hf)_mm512_undefined_ph(), (__mmask32)-1); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_rsqrt_ph(__m512h __W, __mmask32 __U, __m512h __A) { + return (__m512h)__builtin_ia32_rsqrtph512_mask((__v32hf)__A, (__v32hf)__W, + (__mmask32)__U); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_rsqrt_ph(__mmask32 __U, __m512h __A) { + return (__m512h)__builtin_ia32_rsqrtph512_mask( + (__v32hf)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U); +} + +#define _mm512_getmant_ph(A, B, C) \ + ((__m512h)__builtin_ia32_getmantph512_mask( \ + (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), \ + (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_getmant_ph(W, U, A, B, C) \ + ((__m512h)__builtin_ia32_getmantph512_mask( \ + (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), (__v32hf)(__m512h)(W), \ + (__mmask32)(U), _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_getmant_ph(U, A, B, C) \ + ((__m512h)__builtin_ia32_getmantph512_mask( \ + (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), \ + (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_getmant_round_ph(A, B, C, R) \ + ((__m512h)__builtin_ia32_getmantph512_mask( \ + (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), \ + (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, (int)(R))) + +#define _mm512_mask_getmant_round_ph(W, U, A, B, C, R) \ + ((__m512h)__builtin_ia32_getmantph512_mask( \ + (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), (__v32hf)(__m512h)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_getmant_round_ph(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_getmantph512_mask( \ + (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), \ + (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_getexp_ph(__m512h __A) { + return (__m512h)__builtin_ia32_getexpph512_mask( + (__v32hf)__A, (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_getexp_ph(__m512h __W, __mmask32 __U, __m512h __A) { + return (__m512h)__builtin_ia32_getexpph512_mask( + (__v32hf)__A, (__v32hf)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_getexp_ph(__mmask32 __U, __m512h __A) { + return (__m512h)__builtin_ia32_getexpph512_mask( + (__v32hf)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_getexp_round_ph(A, R) \ + ((__m512h)__builtin_ia32_getexpph512_mask((__v32hf)(__m512h)(A), \ + (__v32hf)_mm512_undefined_ph(), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_mask_getexp_round_ph(W, U, A, R) \ + ((__m512h)__builtin_ia32_getexpph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(W), (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_getexp_round_ph(U, A, R) \ + ((__m512h)__builtin_ia32_getexpph512_mask((__v32hf)(__m512h)(A), \ + (__v32hf)_mm512_setzero_ph(), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_scalef_ph(__m512h __A, + __m512h __B) { + return (__m512h)__builtin_ia32_scalefph512_mask( + (__v32hf)__A, (__v32hf)__B, (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_scalef_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_scalefph512_mask((__v32hf)__A, (__v32hf)__B, + (__v32hf)__W, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_scalef_ph(__mmask32 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_scalefph512_mask( + (__v32hf)__A, (__v32hf)__B, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_scalef_round_ph(A, B, R) \ + ((__m512h)__builtin_ia32_scalefph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), \ + (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, (int)(R))) + +#define _mm512_mask_scalef_round_ph(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_scalefph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_scalef_round_ph(U, A, B, R) \ + ((__m512h)__builtin_ia32_scalefph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), \ + (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), (int)(R))) + +#define _mm512_roundscale_ph(A, B) \ + ((__m512h)__builtin_ia32_rndscaleph_mask( \ + (__v32hf)(__m512h)(A), (int)(B), (__v32hf)(__m512h)(A), (__mmask32)-1, \ + _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_roundscale_ph(A, B, C, imm) \ + ((__m512h)__builtin_ia32_rndscaleph_mask( \ + (__v32hf)(__m512h)(C), (int)(imm), (__v32hf)(__m512h)(A), \ + (__mmask32)(B), _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_roundscale_ph(A, B, imm) \ + ((__m512h)__builtin_ia32_rndscaleph_mask( \ + (__v32hf)(__m512h)(B), (int)(imm), (__v32hf)_mm512_setzero_ph(), \ + (__mmask32)(A), _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_roundscale_round_ph(A, B, C, imm, R) \ + ((__m512h)__builtin_ia32_rndscaleph_mask((__v32hf)(__m512h)(C), (int)(imm), \ + (__v32hf)(__m512h)(A), \ + (__mmask32)(B), (int)(R))) + +#define _mm512_maskz_roundscale_round_ph(A, B, imm, R) \ + ((__m512h)__builtin_ia32_rndscaleph_mask((__v32hf)(__m512h)(B), (int)(imm), \ + (__v32hf)_mm512_setzero_ph(), \ + (__mmask32)(A), (int)(R))) + +#define _mm512_roundscale_round_ph(A, imm, R) \ + ((__m512h)__builtin_ia32_rndscaleph_mask((__v32hf)(__m512h)(A), (int)(imm), \ + (__v32hf)_mm512_undefined_ph(), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_reduce_ph(A, imm) \ + ((__m512h)__builtin_ia32_reduceph512_mask( \ + (__v32hf)(__m512h)(A), (int)(imm), (__v32hf)_mm512_undefined_ph(), \ + (__mmask32)-1, _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_reduce_ph(W, U, A, imm) \ + ((__m512h)__builtin_ia32_reduceph512_mask( \ + (__v32hf)(__m512h)(A), (int)(imm), (__v32hf)(__m512h)(W), \ + (__mmask32)(U), _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_maskz_reduce_ph(U, A, imm) \ + ((__m512h)__builtin_ia32_reduceph512_mask( \ + (__v32hf)(__m512h)(A), (int)(imm), (__v32hf)_mm512_setzero_ph(), \ + (__mmask32)(U), _MM_FROUND_CUR_DIRECTION)) + +#define _mm512_mask_reduce_round_ph(W, U, A, imm, R) \ + ((__m512h)__builtin_ia32_reduceph512_mask((__v32hf)(__m512h)(A), (int)(imm), \ + (__v32hf)(__m512h)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_reduce_round_ph(U, A, imm, R) \ + ((__m512h)__builtin_ia32_reduceph512_mask((__v32hf)(__m512h)(A), (int)(imm), \ + (__v32hf)_mm512_setzero_ph(), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_reduce_round_ph(A, imm, R) \ + ((__m512h)__builtin_ia32_reduceph512_mask((__v32hf)(__m512h)(A), (int)(imm), \ + (__v32hf)_mm512_undefined_ph(), \ + (__mmask32)-1, (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_rcp_sh(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_rcpsh_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_rcp_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_rcpsh_mask((__v8hf)__A, (__v8hf)__B, + (__v8hf)__W, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_rcp_sh(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_rcpsh_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_rsqrt_sh(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_rsqrtsh_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_rsqrt_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_rsqrtsh_mask((__v8hf)__A, (__v8hf)__B, + (__v8hf)__W, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_rsqrt_sh(__mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_rsqrtsh_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +#define _mm_getmant_round_sh(A, B, C, D, R) \ + ((__m128h)__builtin_ia32_getmantsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ + (__v8hf)_mm_setzero_ph(), (__mmask8)-1, (int)(R))) + +#define _mm_getmant_sh(A, B, C, D) \ + ((__m128h)__builtin_ia32_getmantsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ + (__v8hf)_mm_setzero_ph(), (__mmask8)-1, _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_getmant_sh(W, U, A, B, C, D) \ + ((__m128h)__builtin_ia32_getmantsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ + (__v8hf)(__m128h)(W), (__mmask8)(U), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_getmant_round_sh(W, U, A, B, C, D, R) \ + ((__m128h)__builtin_ia32_getmantsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ + (__v8hf)(__m128h)(W), (__mmask8)(U), (int)(R))) + +#define _mm_maskz_getmant_sh(U, A, B, C, D) \ + ((__m128h)__builtin_ia32_getmantsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ + (__v8hf)_mm_setzero_ph(), (__mmask8)(U), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_getmant_round_sh(U, A, B, C, D, R) \ + ((__m128h)__builtin_ia32_getmantsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ + (__v8hf)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) + +#define _mm_getexp_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_getexpsh128_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_getexp_sh(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_getexpsh128_round_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_getexp_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_getexpsh128_round_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask_getexp_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_getexpsh128_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_getexp_sh(__mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_getexpsh128_round_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_getexp_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_getexpsh128_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +#define _mm_scalef_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_scalefsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_scalef_sh(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_scalefsh_round_mask( + (__v8hf)__A, (__v8hf)(__B), (__v8hf)_mm_setzero_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_scalef_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_scalefsh_round_mask((__v8hf)__A, (__v8hf)__B, + (__v8hf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask_scalef_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_scalefsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_scalef_sh(__mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_scalefsh_round_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_scalef_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_scalefsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +#define _mm_roundscale_round_sh(A, B, imm, R) \ + ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(imm), (int)(R))) + +#define _mm_roundscale_sh(A, B, imm) \ + ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(imm), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_roundscale_sh(W, U, A, B, I) \ + ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(I), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_roundscale_round_sh(W, U, A, B, I, R) \ + ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(I), (int)(R))) + +#define _mm_maskz_roundscale_sh(U, A, B, I) \ + ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(I), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_roundscale_round_sh(U, A, B, I, R) \ + ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(I), (int)(R))) + +#define _mm_reduce_sh(A, B, C) \ + ((__m128h)__builtin_ia32_reducesh_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(C), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_mask_reduce_sh(W, U, A, B, C) \ + ((__m128h)__builtin_ia32_reducesh_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(C), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_maskz_reduce_sh(U, A, B, C) \ + ((__m128h)__builtin_ia32_reducesh_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(C), _MM_FROUND_CUR_DIRECTION)) + +#define _mm_reduce_round_sh(A, B, C, R) \ + ((__m128h)__builtin_ia32_reducesh_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(C), (int)(R))) + +#define _mm_mask_reduce_round_sh(W, U, A, B, C, R) \ + ((__m128h)__builtin_ia32_reducesh_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(C), (int)(R))) + +#define _mm_maskz_reduce_round_sh(U, A, B, C, R) \ + ((__m128h)__builtin_ia32_reducesh_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(C), (int)(R))) + +#define _mm512_sqrt_round_ph(A, R) \ + ((__m512h)__builtin_ia32_sqrtph512((__v32hf)(__m512h)(A), (int)(R))) + +#define _mm512_mask_sqrt_round_ph(W, U, A, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_sqrt_round_ph((A), (R)), \ + (__v32hf)(__m512h)(W))) + +#define _mm512_maskz_sqrt_round_ph(U, A, R) \ + ((__m512h)__builtin_ia32_selectph_512( \ + (__mmask32)(U), (__v32hf)_mm512_sqrt_round_ph((A), (R)), \ + (__v32hf)_mm512_setzero_ph())) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_sqrt_ph(__m512h __A) { + return (__m512h)__builtin_ia32_sqrtph512((__v32hf)__A, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_sqrt_ph(__m512h __W, __mmask32 __U, __m512h __A) { + return (__m512h)__builtin_ia32_selectph_512( + (__mmask32)(__U), + (__v32hf)__builtin_ia32_sqrtph512((__A), (_MM_FROUND_CUR_DIRECTION)), + (__v32hf)(__m512h)(__W)); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_sqrt_ph(__mmask32 __U, __m512h __A) { + return (__m512h)__builtin_ia32_selectph_512( + (__mmask32)(__U), + (__v32hf)__builtin_ia32_sqrtph512((__A), (_MM_FROUND_CUR_DIRECTION)), + (__v32hf)_mm512_setzero_ph()); +} + +#define _mm_sqrt_round_sh(A, B, R) \ + ((__m128h)__builtin_ia32_sqrtsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_sqrt_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_sqrtsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_sqrt_round_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_sqrtsh_round_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sqrt_sh(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_sqrtsh_round_mask( + (__v8hf)(__m128h)(__A), (__v8hf)(__m128h)(__B), (__v8hf)_mm_setzero_ph(), + (__mmask8)-1, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sqrt_sh(__m128h __W, + __mmask32 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_sqrtsh_round_mask( + (__v8hf)(__m128h)(__A), (__v8hf)(__m128h)(__B), (__v8hf)(__m128h)(__W), + (__mmask8)(__U), _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sqrt_sh(__mmask32 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_sqrtsh_round_mask( + (__v8hf)(__m128h)(__A), (__v8hf)(__m128h)(__B), (__v8hf)_mm_setzero_ph(), + (__mmask8)(__U), _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask_fpclass_ph_mask(U, A, imm) \ + ((__mmask32)__builtin_ia32_fpclassph512_mask((__v32hf)(__m512h)(A), \ + (int)(imm), (__mmask32)(U))) + +#define _mm512_fpclass_ph_mask(A, imm) \ + ((__mmask32)__builtin_ia32_fpclassph512_mask((__v32hf)(__m512h)(A), \ + (int)(imm), (__mmask32)-1)) + +#define _mm_fpclass_sh_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclasssh_mask((__v8hf)(__m128h)(A), (int)(imm), \ + (__mmask8)-1)) + +#define _mm_mask_fpclass_sh_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclasssh_mask((__v8hf)(__m128h)(A), (int)(imm), \ + (__mmask8)(U))) + +#define _mm512_cvt_roundpd_ph(A, R) \ + ((__m128h)__builtin_ia32_vcvtpd2ph512_mask( \ + (__v8df)(A), (__v8hf)_mm_undefined_ph(), (__mmask8)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundpd_ph(W, U, A, R) \ + ((__m128h)__builtin_ia32_vcvtpd2ph512_mask((__v8df)(A), (__v8hf)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundpd_ph(U, A, R) \ + ((__m128h)__builtin_ia32_vcvtpd2ph512_mask( \ + (__v8df)(A), (__v8hf)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 _mm512_cvtpd_ph(__m512d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph512_mask( + (__v8df)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtpd_ph(__m128h __W, __mmask8 __U, __m512d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph512_mask( + (__v8df)__A, (__v8hf)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtpd_ph(__mmask8 __U, __m512d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph512_mask( + (__v8df)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundph_pd(A, R) \ + ((__m512d)__builtin_ia32_vcvtph2pd512_mask( \ + (__v8hf)(A), (__v8df)_mm512_undefined_pd(), (__mmask8)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundph_pd(W, U, A, R) \ + ((__m512d)__builtin_ia32_vcvtph2pd512_mask((__v8hf)(A), (__v8df)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundph_pd(U, A, R) \ + ((__m512d)__builtin_ia32_vcvtph2pd512_mask( \ + (__v8hf)(A), (__v8df)_mm512_setzero_pd(), (__mmask8)(U), (int)(R))) + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 _mm512_cvtph_pd(__m128h __A) { + return (__m512d)__builtin_ia32_vcvtph2pd512_mask( + (__v8hf)__A, (__v8df)_mm512_setzero_pd(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtph_pd(__m512d __W, __mmask8 __U, __m128h __A) { + return (__m512d)__builtin_ia32_vcvtph2pd512_mask( + (__v8hf)__A, (__v8df)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512d __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtph_pd(__mmask8 __U, __m128h __A) { + return (__m512d)__builtin_ia32_vcvtph2pd512_mask( + (__v8hf)__A, (__v8df)_mm512_setzero_pd(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_cvt_roundsh_ss(A, B, R) \ + ((__m128)__builtin_ia32_vcvtsh2ss_round_mask((__v4sf)(A), (__v8hf)(B), \ + (__v4sf)_mm_undefined_ps(), \ + (__mmask8)(-1), (int)(R))) + +#define _mm_mask_cvt_roundsh_ss(W, U, A, B, R) \ + ((__m128)__builtin_ia32_vcvtsh2ss_round_mask( \ + (__v4sf)(A), (__v8hf)(B), (__v4sf)(W), (__mmask8)(U), (int)(R))) + +#define _mm_maskz_cvt_roundsh_ss(U, A, B, R) \ + ((__m128)__builtin_ia32_vcvtsh2ss_round_mask((__v4sf)(A), (__v8hf)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_cvtsh_ss(__m128 __A, + __m128h __B) { + return (__m128)__builtin_ia32_vcvtsh2ss_round_mask( + (__v4sf)__A, (__v8hf)__B, (__v4sf)_mm_undefined_ps(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_mask_cvtsh_ss(__m128 __W, + __mmask8 __U, + __m128 __A, + __m128h __B) { + return (__m128)__builtin_ia32_vcvtsh2ss_round_mask((__v4sf)__A, (__v8hf)__B, + (__v4sf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_maskz_cvtsh_ss(__mmask8 __U, + __m128 __A, + __m128h __B) { + return (__m128)__builtin_ia32_vcvtsh2ss_round_mask( + (__v4sf)__A, (__v8hf)__B, (__v4sf)_mm_setzero_ps(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_cvt_roundss_sh(A, B, R) \ + ((__m128h)__builtin_ia32_vcvtss2sh_round_mask((__v8hf)(A), (__v4sf)(B), \ + (__v8hf)_mm_undefined_ph(), \ + (__mmask8)(-1), (int)(R))) + +#define _mm_mask_cvt_roundss_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_vcvtss2sh_round_mask( \ + (__v8hf)(A), (__v4sf)(B), (__v8hf)(W), (__mmask8)(U), (int)(R))) + +#define _mm_maskz_cvt_roundss_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_vcvtss2sh_round_mask((__v8hf)(A), (__v4sf)(B), \ + (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtss_sh(__m128h __A, + __m128 __B) { + return (__m128h)__builtin_ia32_vcvtss2sh_round_mask( + (__v8hf)__A, (__v4sf)__B, (__v8hf)_mm_undefined_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_cvtss_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128 __B) { + return (__m128h)__builtin_ia32_vcvtss2sh_round_mask( + (__v8hf)__A, (__v4sf)__B, (__v8hf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_cvtss_sh(__mmask8 __U, + __m128h __A, + __m128 __B) { + return (__m128h)__builtin_ia32_vcvtss2sh_round_mask( + (__v8hf)__A, (__v4sf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_cvt_roundsd_sh(A, B, R) \ + ((__m128h)__builtin_ia32_vcvtsd2sh_round_mask((__v8hf)(A), (__v2df)(B), \ + (__v8hf)_mm_undefined_ph(), \ + (__mmask8)(-1), (int)(R))) + +#define _mm_mask_cvt_roundsd_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_vcvtsd2sh_round_mask( \ + (__v8hf)(A), (__v2df)(B), (__v8hf)(W), (__mmask8)(U), (int)(R))) + +#define _mm_maskz_cvt_roundsd_sh(U, A, B, R) \ + ((__m128h)__builtin_ia32_vcvtsd2sh_round_mask((__v8hf)(A), (__v2df)(B), \ + (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtsd_sh(__m128h __A, + __m128d __B) { + return (__m128h)__builtin_ia32_vcvtsd2sh_round_mask( + (__v8hf)__A, (__v2df)__B, (__v8hf)_mm_undefined_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_cvtsd_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128d __B) { + return (__m128h)__builtin_ia32_vcvtsd2sh_round_mask( + (__v8hf)__A, (__v2df)__B, (__v8hf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsd_sh(__mmask8 __U, __m128h __A, __m128d __B) { + return (__m128h)__builtin_ia32_vcvtsd2sh_round_mask( + (__v8hf)__A, (__v2df)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_cvt_roundsh_sd(A, B, R) \ + ((__m128d)__builtin_ia32_vcvtsh2sd_round_mask((__v2df)(A), (__v8hf)(B), \ + (__v2df)_mm_undefined_pd(), \ + (__mmask8)(-1), (int)(R))) + +#define _mm_mask_cvt_roundsh_sd(W, U, A, B, R) \ + ((__m128d)__builtin_ia32_vcvtsh2sd_round_mask( \ + (__v2df)(A), (__v8hf)(B), (__v2df)(W), (__mmask8)(U), (int)(R))) + +#define _mm_maskz_cvt_roundsh_sd(U, A, B, R) \ + ((__m128d)__builtin_ia32_vcvtsh2sd_round_mask((__v2df)(A), (__v8hf)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_cvtsh_sd(__m128d __A, + __m128h __B) { + return (__m128d)__builtin_ia32_vcvtsh2sd_round_mask( + (__v2df)__A, (__v8hf)__B, (__v2df)_mm_undefined_pd(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_mask_cvtsh_sd(__m128d __W, + __mmask8 __U, + __m128d __A, + __m128h __B) { + return (__m128d)__builtin_ia32_vcvtsh2sd_round_mask( + (__v2df)__A, (__v8hf)__B, (__v2df)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsh_sd(__mmask8 __U, __m128d __A, __m128h __B) { + return (__m128d)__builtin_ia32_vcvtsh2sd_round_mask( + (__v2df)__A, (__v8hf)__B, (__v2df)_mm_setzero_pd(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundph_epi16(A, R) \ + ((__m512i)__builtin_ia32_vcvtph2w512_mask((__v32hf)(A), \ + (__v32hi)_mm512_undefined_epi32(), \ + (__mmask32)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundph_epi16(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2w512_mask((__v32hf)(A), (__v32hi)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundph_epi16(U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2w512_mask((__v32hf)(A), \ + (__v32hi)_mm512_setzero_epi32(), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtph_epi16(__m512h __A) { + return (__m512i)__builtin_ia32_vcvtph2w512_mask( + (__v32hf)__A, (__v32hi)_mm512_setzero_epi32(), (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtph_epi16(__m512i __W, __mmask32 __U, __m512h __A) { + return (__m512i)__builtin_ia32_vcvtph2w512_mask( + (__v32hf)__A, (__v32hi)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtph_epi16(__mmask32 __U, __m512h __A) { + return (__m512i)__builtin_ia32_vcvtph2w512_mask( + (__v32hf)__A, (__v32hi)_mm512_setzero_epi32(), (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundph_epi16(A, R) \ + ((__m512i)__builtin_ia32_vcvttph2w512_mask( \ + (__v32hf)(A), (__v32hi)_mm512_undefined_epi32(), (__mmask32)(-1), \ + (int)(R))) + +#define _mm512_mask_cvtt_roundph_epi16(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2w512_mask((__v32hf)(A), (__v32hi)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundph_epi16(U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2w512_mask((__v32hf)(A), \ + (__v32hi)_mm512_setzero_epi32(), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttph_epi16(__m512h __A) { + return (__m512i)__builtin_ia32_vcvttph2w512_mask( + (__v32hf)__A, (__v32hi)_mm512_setzero_epi32(), (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttph_epi16(__m512i __W, __mmask32 __U, __m512h __A) { + return (__m512i)__builtin_ia32_vcvttph2w512_mask( + (__v32hf)__A, (__v32hi)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttph_epi16(__mmask32 __U, __m512h __A) { + return (__m512i)__builtin_ia32_vcvttph2w512_mask( + (__v32hf)__A, (__v32hi)_mm512_setzero_epi32(), (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepi16_ph(A, R) \ + ((__m512h)__builtin_ia32_vcvtw2ph512_mask((__v32hi)(A), \ + (__v32hf)_mm512_undefined_ph(), \ + (__mmask32)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundepi16_ph(W, U, A, R) \ + ((__m512h)__builtin_ia32_vcvtw2ph512_mask((__v32hi)(A), (__v32hf)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepi16_ph(U, A, R) \ + ((__m512h)__builtin_ia32_vcvtw2ph512_mask( \ + (__v32hi)(A), (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_cvtepi16_ph(__m512i __A) { + return (__m512h)__builtin_ia32_vcvtw2ph512_mask( + (__v32hi)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi16_ph(__m512h __W, __mmask32 __U, __m512i __A) { + return (__m512h)__builtin_ia32_vcvtw2ph512_mask( + (__v32hi)__A, (__v32hf)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi16_ph(__mmask32 __U, __m512i __A) { + return (__m512h)__builtin_ia32_vcvtw2ph512_mask( + (__v32hi)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundph_epu16(A, R) \ + ((__m512i)__builtin_ia32_vcvtph2uw512_mask( \ + (__v32hf)(A), (__v32hu)_mm512_undefined_epi32(), (__mmask32)(-1), \ + (int)(R))) + +#define _mm512_mask_cvt_roundph_epu16(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2uw512_mask((__v32hf)(A), (__v32hu)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundph_epu16(U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2uw512_mask((__v32hf)(A), \ + (__v32hu)_mm512_setzero_epi32(), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtph_epu16(__m512h __A) { + return (__m512i)__builtin_ia32_vcvtph2uw512_mask( + (__v32hf)__A, (__v32hu)_mm512_setzero_epi32(), (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtph_epu16(__m512i __W, __mmask32 __U, __m512h __A) { + return (__m512i)__builtin_ia32_vcvtph2uw512_mask( + (__v32hf)__A, (__v32hu)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtph_epu16(__mmask32 __U, __m512h __A) { + return (__m512i)__builtin_ia32_vcvtph2uw512_mask( + (__v32hf)__A, (__v32hu)_mm512_setzero_epi32(), (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundph_epu16(A, R) \ + ((__m512i)__builtin_ia32_vcvttph2uw512_mask( \ + (__v32hf)(A), (__v32hu)_mm512_undefined_epi32(), (__mmask32)(-1), \ + (int)(R))) + +#define _mm512_mask_cvtt_roundph_epu16(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2uw512_mask((__v32hf)(A), (__v32hu)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundph_epu16(U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2uw512_mask((__v32hf)(A), \ + (__v32hu)_mm512_setzero_epi32(), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttph_epu16(__m512h __A) { + return (__m512i)__builtin_ia32_vcvttph2uw512_mask( + (__v32hf)__A, (__v32hu)_mm512_setzero_epi32(), (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttph_epu16(__m512i __W, __mmask32 __U, __m512h __A) { + return (__m512i)__builtin_ia32_vcvttph2uw512_mask( + (__v32hf)__A, (__v32hu)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttph_epu16(__mmask32 __U, __m512h __A) { + return (__m512i)__builtin_ia32_vcvttph2uw512_mask( + (__v32hf)__A, (__v32hu)_mm512_setzero_epi32(), (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepu16_ph(A, R) \ + ((__m512h)__builtin_ia32_vcvtuw2ph512_mask((__v32hu)(A), \ + (__v32hf)_mm512_undefined_ph(), \ + (__mmask32)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundepu16_ph(W, U, A, R) \ + ((__m512h)__builtin_ia32_vcvtuw2ph512_mask((__v32hu)(A), (__v32hf)(W), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepu16_ph(U, A, R) \ + ((__m512h)__builtin_ia32_vcvtuw2ph512_mask( \ + (__v32hu)(A), (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_cvtepu16_ph(__m512i __A) { + return (__m512h)__builtin_ia32_vcvtuw2ph512_mask( + (__v32hu)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu16_ph(__m512h __W, __mmask32 __U, __m512i __A) { + return (__m512h)__builtin_ia32_vcvtuw2ph512_mask( + (__v32hu)__A, (__v32hf)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu16_ph(__mmask32 __U, __m512i __A) { + return (__m512h)__builtin_ia32_vcvtuw2ph512_mask( + (__v32hu)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundph_epi32(A, R) \ + ((__m512i)__builtin_ia32_vcvtph2dq512_mask( \ + (__v16hf)(A), (__v16si)_mm512_undefined_epi32(), (__mmask16)(-1), \ + (int)(R))) + +#define _mm512_mask_cvt_roundph_epi32(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2dq512_mask((__v16hf)(A), (__v16si)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundph_epi32(U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2dq512_mask((__v16hf)(A), \ + (__v16si)_mm512_setzero_epi32(), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtph_epi32(__m256h __A) { + return (__m512i)__builtin_ia32_vcvtph2dq512_mask( + (__v16hf)__A, (__v16si)_mm512_setzero_epi32(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtph_epi32(__m512i __W, __mmask16 __U, __m256h __A) { + return (__m512i)__builtin_ia32_vcvtph2dq512_mask( + (__v16hf)__A, (__v16si)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtph_epi32(__mmask16 __U, __m256h __A) { + return (__m512i)__builtin_ia32_vcvtph2dq512_mask( + (__v16hf)__A, (__v16si)_mm512_setzero_epi32(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundph_epu32(A, R) \ + ((__m512i)__builtin_ia32_vcvtph2udq512_mask( \ + (__v16hf)(A), (__v16su)_mm512_undefined_epi32(), (__mmask16)(-1), \ + (int)(R))) + +#define _mm512_mask_cvt_roundph_epu32(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2udq512_mask((__v16hf)(A), (__v16su)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundph_epu32(U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2udq512_mask((__v16hf)(A), \ + (__v16su)_mm512_setzero_epi32(), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtph_epu32(__m256h __A) { + return (__m512i)__builtin_ia32_vcvtph2udq512_mask( + (__v16hf)__A, (__v16su)_mm512_setzero_epi32(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtph_epu32(__m512i __W, __mmask16 __U, __m256h __A) { + return (__m512i)__builtin_ia32_vcvtph2udq512_mask( + (__v16hf)__A, (__v16su)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtph_epu32(__mmask16 __U, __m256h __A) { + return (__m512i)__builtin_ia32_vcvtph2udq512_mask( + (__v16hf)__A, (__v16su)_mm512_setzero_epi32(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepi32_ph(A, R) \ + ((__m256h)__builtin_ia32_vcvtdq2ph512_mask((__v16si)(A), \ + (__v16hf)_mm256_undefined_ph(), \ + (__mmask16)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundepi32_ph(W, U, A, R) \ + ((__m256h)__builtin_ia32_vcvtdq2ph512_mask((__v16si)(A), (__v16hf)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepi32_ph(U, A, R) \ + ((__m256h)__builtin_ia32_vcvtdq2ph512_mask( \ + (__v16si)(A), (__v16hf)_mm256_setzero_ph(), (__mmask16)(U), (int)(R))) + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_cvtepi32_ph(__m512i __A) { + return (__m256h)__builtin_ia32_vcvtdq2ph512_mask( + (__v16si)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi32_ph(__m256h __W, __mmask16 __U, __m512i __A) { + return (__m256h)__builtin_ia32_vcvtdq2ph512_mask( + (__v16si)__A, (__v16hf)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi32_ph(__mmask16 __U, __m512i __A) { + return (__m256h)__builtin_ia32_vcvtdq2ph512_mask( + (__v16si)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepu32_ph(A, R) \ + ((__m256h)__builtin_ia32_vcvtudq2ph512_mask((__v16su)(A), \ + (__v16hf)_mm256_undefined_ph(), \ + (__mmask16)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundepu32_ph(W, U, A, R) \ + ((__m256h)__builtin_ia32_vcvtudq2ph512_mask((__v16su)(A), (__v16hf)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepu32_ph(U, A, R) \ + ((__m256h)__builtin_ia32_vcvtudq2ph512_mask( \ + (__v16su)(A), (__v16hf)_mm256_setzero_ph(), (__mmask16)(U), (int)(R))) + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_cvtepu32_ph(__m512i __A) { + return (__m256h)__builtin_ia32_vcvtudq2ph512_mask( + (__v16su)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu32_ph(__m256h __W, __mmask16 __U, __m512i __A) { + return (__m256h)__builtin_ia32_vcvtudq2ph512_mask( + (__v16su)__A, (__v16hf)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu32_ph(__mmask16 __U, __m512i __A) { + return (__m256h)__builtin_ia32_vcvtudq2ph512_mask( + (__v16su)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundph_epi32(A, R) \ + ((__m512i)__builtin_ia32_vcvttph2dq512_mask( \ + (__v16hf)(A), (__v16si)_mm512_undefined_epi32(), (__mmask16)(-1), \ + (int)(R))) + +#define _mm512_mask_cvtt_roundph_epi32(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2dq512_mask((__v16hf)(A), (__v16si)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundph_epi32(U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2dq512_mask((__v16hf)(A), \ + (__v16si)_mm512_setzero_epi32(), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttph_epi32(__m256h __A) { + return (__m512i)__builtin_ia32_vcvttph2dq512_mask( + (__v16hf)__A, (__v16si)_mm512_setzero_epi32(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttph_epi32(__m512i __W, __mmask16 __U, __m256h __A) { + return (__m512i)__builtin_ia32_vcvttph2dq512_mask( + (__v16hf)__A, (__v16si)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttph_epi32(__mmask16 __U, __m256h __A) { + return (__m512i)__builtin_ia32_vcvttph2dq512_mask( + (__v16hf)__A, (__v16si)_mm512_setzero_epi32(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundph_epu32(A, R) \ + ((__m512i)__builtin_ia32_vcvttph2udq512_mask( \ + (__v16hf)(A), (__v16su)_mm512_undefined_epi32(), (__mmask16)(-1), \ + (int)(R))) + +#define _mm512_mask_cvtt_roundph_epu32(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2udq512_mask((__v16hf)(A), (__v16su)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundph_epu32(U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2udq512_mask( \ + (__v16hf)(A), (__v16su)_mm512_setzero_epi32(), (__mmask16)(U), \ + (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttph_epu32(__m256h __A) { + return (__m512i)__builtin_ia32_vcvttph2udq512_mask( + (__v16hf)__A, (__v16su)_mm512_setzero_epi32(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttph_epu32(__m512i __W, __mmask16 __U, __m256h __A) { + return (__m512i)__builtin_ia32_vcvttph2udq512_mask( + (__v16hf)__A, (__v16su)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttph_epu32(__mmask16 __U, __m256h __A) { + return (__m512i)__builtin_ia32_vcvttph2udq512_mask( + (__v16hf)__A, (__v16su)_mm512_setzero_epi32(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepi64_ph(A, R) \ + ((__m128h)__builtin_ia32_vcvtqq2ph512_mask( \ + (__v8di)(A), (__v8hf)_mm_undefined_ph(), (__mmask8)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundepi64_ph(W, U, A, R) \ + ((__m128h)__builtin_ia32_vcvtqq2ph512_mask((__v8di)(A), (__v8hf)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepi64_ph(U, A, R) \ + ((__m128h)__builtin_ia32_vcvtqq2ph512_mask( \ + (__v8di)(A), (__v8hf)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_cvtepi64_ph(__m512i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph512_mask( + (__v8di)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepi64_ph(__m128h __W, __mmask8 __U, __m512i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph512_mask( + (__v8di)__A, (__v8hf)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepi64_ph(__mmask8 __U, __m512i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph512_mask( + (__v8di)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundph_epi64(A, R) \ + ((__m512i)__builtin_ia32_vcvtph2qq512_mask((__v8hf)(A), \ + (__v8di)_mm512_undefined_epi32(), \ + (__mmask8)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundph_epi64(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2qq512_mask((__v8hf)(A), (__v8di)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundph_epi64(U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2qq512_mask( \ + (__v8hf)(A), (__v8di)_mm512_setzero_epi32(), (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtph_epi64(__m128h __A) { + return (__m512i)__builtin_ia32_vcvtph2qq512_mask( + (__v8hf)__A, (__v8di)_mm512_setzero_epi32(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtph_epi64(__m512i __W, __mmask8 __U, __m128h __A) { + return (__m512i)__builtin_ia32_vcvtph2qq512_mask( + (__v8hf)__A, (__v8di)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtph_epi64(__mmask8 __U, __m128h __A) { + return (__m512i)__builtin_ia32_vcvtph2qq512_mask( + (__v8hf)__A, (__v8di)_mm512_setzero_epi32(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundepu64_ph(A, R) \ + ((__m128h)__builtin_ia32_vcvtuqq2ph512_mask( \ + (__v8du)(A), (__v8hf)_mm_undefined_ph(), (__mmask8)(-1), (int)(R))) + +#define _mm512_mask_cvt_roundepu64_ph(W, U, A, R) \ + ((__m128h)__builtin_ia32_vcvtuqq2ph512_mask((__v8du)(A), (__v8hf)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundepu64_ph(U, A, R) \ + ((__m128h)__builtin_ia32_vcvtuqq2ph512_mask( \ + (__v8du)(A), (__v8hf)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_cvtepu64_ph(__m512i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph512_mask( + (__v8du)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtepu64_ph(__m128h __W, __mmask8 __U, __m512i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph512_mask( + (__v8du)__A, (__v8hf)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtepu64_ph(__mmask8 __U, __m512i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph512_mask( + (__v8du)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvt_roundph_epu64(A, R) \ + ((__m512i)__builtin_ia32_vcvtph2uqq512_mask( \ + (__v8hf)(A), (__v8du)_mm512_undefined_epi32(), (__mmask8)(-1), \ + (int)(R))) + +#define _mm512_mask_cvt_roundph_epu64(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2uqq512_mask((__v8hf)(A), (__v8du)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvt_roundph_epu64(U, A, R) \ + ((__m512i)__builtin_ia32_vcvtph2uqq512_mask( \ + (__v8hf)(A), (__v8du)_mm512_setzero_epi32(), (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvtph_epu64(__m128h __A) { + return (__m512i)__builtin_ia32_vcvtph2uqq512_mask( + (__v8hf)__A, (__v8du)_mm512_setzero_epi32(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtph_epu64(__m512i __W, __mmask8 __U, __m128h __A) { + return (__m512i)__builtin_ia32_vcvtph2uqq512_mask( + (__v8hf)__A, (__v8du)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtph_epu64(__mmask8 __U, __m128h __A) { + return (__m512i)__builtin_ia32_vcvtph2uqq512_mask( + (__v8hf)__A, (__v8du)_mm512_setzero_epi32(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundph_epi64(A, R) \ + ((__m512i)__builtin_ia32_vcvttph2qq512_mask( \ + (__v8hf)(A), (__v8di)_mm512_undefined_epi32(), (__mmask8)(-1), \ + (int)(R))) + +#define _mm512_mask_cvtt_roundph_epi64(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2qq512_mask((__v8hf)(A), (__v8di)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundph_epi64(U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2qq512_mask( \ + (__v8hf)(A), (__v8di)_mm512_setzero_epi32(), (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttph_epi64(__m128h __A) { + return (__m512i)__builtin_ia32_vcvttph2qq512_mask( + (__v8hf)__A, (__v8di)_mm512_setzero_epi32(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttph_epi64(__m512i __W, __mmask8 __U, __m128h __A) { + return (__m512i)__builtin_ia32_vcvttph2qq512_mask( + (__v8hf)__A, (__v8di)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttph_epi64(__mmask8 __U, __m128h __A) { + return (__m512i)__builtin_ia32_vcvttph2qq512_mask( + (__v8hf)__A, (__v8di)_mm512_setzero_epi32(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtt_roundph_epu64(A, R) \ + ((__m512i)__builtin_ia32_vcvttph2uqq512_mask( \ + (__v8hf)(A), (__v8du)_mm512_undefined_epi32(), (__mmask8)(-1), \ + (int)(R))) + +#define _mm512_mask_cvtt_roundph_epu64(W, U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2uqq512_mask((__v8hf)(A), (__v8du)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm512_maskz_cvtt_roundph_epu64(U, A, R) \ + ((__m512i)__builtin_ia32_vcvttph2uqq512_mask( \ + (__v8hf)(A), (__v8du)_mm512_setzero_epi32(), (__mmask8)(U), (int)(R))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_cvttph_epu64(__m128h __A) { + return (__m512i)__builtin_ia32_vcvttph2uqq512_mask( + (__v8hf)__A, (__v8du)_mm512_setzero_epi32(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_mask_cvttph_epu64(__m512i __W, __mmask8 __U, __m128h __A) { + return (__m512i)__builtin_ia32_vcvttph2uqq512_mask( + (__v8hf)__A, (__v8du)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvttph_epu64(__mmask8 __U, __m128h __A) { + return (__m512i)__builtin_ia32_vcvttph2uqq512_mask( + (__v8hf)__A, (__v8du)_mm512_setzero_epi32(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_cvt_roundsh_i32(A, R) \ + ((int)__builtin_ia32_vcvtsh2si32((__v8hf)(A), (int)(R))) + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_cvtsh_i32(__m128h __A) { + return (int)__builtin_ia32_vcvtsh2si32((__v8hf)__A, _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_cvt_roundsh_u32(A, R) \ + ((unsigned int)__builtin_ia32_vcvtsh2usi32((__v8hf)(A), (int)(R))) + +static __inline__ unsigned int __DEFAULT_FN_ATTRS128 +_mm_cvtsh_u32(__m128h __A) { + return (unsigned int)__builtin_ia32_vcvtsh2usi32((__v8hf)__A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvt_roundsh_i64(A, R) \ + ((long long)__builtin_ia32_vcvtsh2si64((__v8hf)(A), (int)(R))) + +static __inline__ long long __DEFAULT_FN_ATTRS128 _mm_cvtsh_i64(__m128h __A) { + return (long long)__builtin_ia32_vcvtsh2si64((__v8hf)__A, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_cvt_roundsh_u64(A, R) \ + ((unsigned long long)__builtin_ia32_vcvtsh2usi64((__v8hf)(A), (int)(R))) + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 +_mm_cvtsh_u64(__m128h __A) { + return (unsigned long long)__builtin_ia32_vcvtsh2usi64( + (__v8hf)__A, _MM_FROUND_CUR_DIRECTION); +} +#endif // __x86_64__ + +#define _mm_cvt_roundu32_sh(A, B, R) \ + ((__m128h)__builtin_ia32_vcvtusi2sh((__v8hf)(A), (unsigned int)(B), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_cvtu32_sh(__m128h __A, unsigned int __B) { + __A[0] = __B; + return __A; +} + +#ifdef __x86_64__ +#define _mm_cvt_roundu64_sh(A, B, R) \ + ((__m128h)__builtin_ia32_vcvtusi642sh((__v8hf)(A), (unsigned long long)(B), \ + (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_cvtu64_sh(__m128h __A, unsigned long long __B) { + __A[0] = __B; + return __A; +} +#endif + +#define _mm_cvt_roundi32_sh(A, B, R) \ + ((__m128h)__builtin_ia32_vcvtsi2sh((__v8hf)(A), (int)(B), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvti32_sh(__m128h __A, + int __B) { + __A[0] = __B; + return __A; +} + +#ifdef __x86_64__ +#define _mm_cvt_roundi64_sh(A, B, R) \ + ((__m128h)__builtin_ia32_vcvtsi642sh((__v8hf)(A), (long long)(B), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvti64_sh(__m128h __A, + long long __B) { + __A[0] = __B; + return __A; +} +#endif + +#define _mm_cvtt_roundsh_i32(A, R) \ + ((int)__builtin_ia32_vcvttsh2si32((__v8hf)(A), (int)(R))) + +static __inline__ int __DEFAULT_FN_ATTRS128 _mm_cvttsh_i32(__m128h __A) { + return (int)__builtin_ia32_vcvttsh2si32((__v8hf)__A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvtt_roundsh_i64(A, R) \ + ((long long)__builtin_ia32_vcvttsh2si64((__v8hf)(A), (int)(R))) + +static __inline__ long long __DEFAULT_FN_ATTRS128 _mm_cvttsh_i64(__m128h __A) { + return (long long)__builtin_ia32_vcvttsh2si64((__v8hf)__A, + _MM_FROUND_CUR_DIRECTION); +} +#endif + +#define _mm_cvtt_roundsh_u32(A, R) \ + ((unsigned int)__builtin_ia32_vcvttsh2usi32((__v8hf)(A), (int)(R))) + +static __inline__ unsigned int __DEFAULT_FN_ATTRS128 +_mm_cvttsh_u32(__m128h __A) { + return (unsigned int)__builtin_ia32_vcvttsh2usi32((__v8hf)__A, + _MM_FROUND_CUR_DIRECTION); +} + +#ifdef __x86_64__ +#define _mm_cvtt_roundsh_u64(A, R) \ + ((unsigned long long)__builtin_ia32_vcvttsh2usi64((__v8hf)(A), (int)(R))) + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 +_mm_cvttsh_u64(__m128h __A) { + return (unsigned long long)__builtin_ia32_vcvttsh2usi64( + (__v8hf)__A, _MM_FROUND_CUR_DIRECTION); +} +#endif + +#define _mm512_cvtx_roundph_ps(A, R) \ + ((__m512)__builtin_ia32_vcvtph2psx512_mask((__v16hf)(A), \ + (__v16sf)_mm512_undefined_ps(), \ + (__mmask16)(-1), (int)(R))) + +#define _mm512_mask_cvtx_roundph_ps(W, U, A, R) \ + ((__m512)__builtin_ia32_vcvtph2psx512_mask((__v16hf)(A), (__v16sf)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvtx_roundph_ps(U, A, R) \ + ((__m512)__builtin_ia32_vcvtph2psx512_mask( \ + (__v16hf)(A), (__v16sf)_mm512_setzero_ps(), (__mmask16)(U), (int)(R))) + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_cvtxph_ps(__m256h __A) { + return (__m512)__builtin_ia32_vcvtph2psx512_mask( + (__v16hf)__A, (__v16sf)_mm512_setzero_ps(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtxph_ps(__m512 __W, __mmask16 __U, __m256h __A) { + return (__m512)__builtin_ia32_vcvtph2psx512_mask( + (__v16hf)__A, (__v16sf)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512 __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtxph_ps(__mmask16 __U, __m256h __A) { + return (__m512)__builtin_ia32_vcvtph2psx512_mask( + (__v16hf)__A, (__v16sf)_mm512_setzero_ps(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_cvtx_roundps_ph(A, R) \ + ((__m256h)__builtin_ia32_vcvtps2phx512_mask((__v16sf)(A), \ + (__v16hf)_mm256_undefined_ph(), \ + (__mmask16)(-1), (int)(R))) + +#define _mm512_mask_cvtx_roundps_ph(W, U, A, R) \ + ((__m256h)__builtin_ia32_vcvtps2phx512_mask((__v16sf)(A), (__v16hf)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_cvtx_roundps_ph(U, A, R) \ + ((__m256h)__builtin_ia32_vcvtps2phx512_mask( \ + (__v16sf)(A), (__v16hf)_mm256_setzero_ph(), (__mmask16)(U), (int)(R))) + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 _mm512_cvtxps_ph(__m512 __A) { + return (__m256h)__builtin_ia32_vcvtps2phx512_mask( + (__v16sf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_mask_cvtxps_ph(__m256h __W, __mmask16 __U, __m512 __A) { + return (__m256h)__builtin_ia32_vcvtps2phx512_mask( + (__v16sf)__A, (__v16hf)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS512 +_mm512_maskz_cvtxps_ph(__mmask16 __U, __m512 __A) { + return (__m256h)__builtin_ia32_vcvtps2phx512_mask( + (__v16sf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fmadd_round_ph(A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_mask_fmadd_round_ph(A, U, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_mask3_fmadd_round_ph(A, B, C, U, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask3( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_fmadd_round_ph(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_maskz( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_fmsub_round_ph(A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_mask_fmsub_round_ph(A, U, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_fmsub_round_ph(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_maskz( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_fnmadd_round_ph(A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask( \ + (__v32hf)(__m512h)(A), -(__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_mask3_fnmadd_round_ph(A, B, C, U, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask3( \ + -(__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_fnmadd_round_ph(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_maskz( \ + -(__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_fnmsub_round_ph(A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask( \ + (__v32hf)(__m512h)(A), -(__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_maskz_fnmsub_round_ph(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_maskz( \ + -(__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fmadd_ph(__m512h __A, + __m512h __B, + __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, (__v32hf)__B, + (__v32hf)__C, (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fmadd_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, (__v32hf)__B, + (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmadd_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { + return (__m512h)__builtin_ia32_vfmaddph512_mask3((__v32hf)__A, (__v32hf)__B, + (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmadd_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_maskz((__v32hf)__A, (__v32hf)__B, + (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fmsub_ph(__m512h __A, + __m512h __B, + __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, (__v32hf)__B, + -(__v32hf)__C, (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fmsub_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, (__v32hf)__B, + -(__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmsub_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_maskz( + (__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fnmadd_ph(__m512h __A, + __m512h __B, + __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, -(__v32hf)__B, + (__v32hf)__C, (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask3_fnmadd_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { + return (__m512h)__builtin_ia32_vfmaddph512_mask3(-(__v32hf)__A, (__v32hf)__B, + (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fnmadd_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_maskz(-(__v32hf)__A, (__v32hf)__B, + (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fnmsub_ph(__m512h __A, + __m512h __B, + __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, -(__v32hf)__B, + -(__v32hf)__C, (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fnmsub_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_maskz( + -(__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fmaddsub_round_ph(A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddsubph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_mask_fmaddsub_round_ph(A, U, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddsubph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_mask3_fmaddsub_round_ph(A, B, C, U, R) \ + ((__m512h)__builtin_ia32_vfmaddsubph512_mask3( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_fmaddsub_round_ph(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddsubph512_maskz( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_fmsubadd_round_ph(A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddsubph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)-1, (int)(R))) + +#define _mm512_mask_fmsubadd_round_ph(A, U, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddsubph512_mask( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_maskz_fmsubadd_round_ph(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddsubph512_maskz( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_fmaddsub_ph(__m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddsubph512_mask( + (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fmaddsub_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddsubph512_mask( + (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmaddsub_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { + return (__m512h)__builtin_ia32_vfmaddsubph512_mask3( + (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmaddsub_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddsubph512_maskz( + (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_fmsubadd_ph(__m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddsubph512_mask( + (__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fmsubadd_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddsubph512_mask( + (__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmsubadd_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddsubph512_maskz( + (__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask3_fmsub_round_ph(A, B, C, U, R) \ + ((__m512h)__builtin_ia32_vfmsubph512_mask3( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmsub_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { + return (__m512h)__builtin_ia32_vfmsubph512_mask3((__v32hf)__A, (__v32hf)__B, + (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask3_fmsubadd_round_ph(A, B, C, U, R) \ + ((__m512h)__builtin_ia32_vfmsubaddph512_mask3( \ + (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmsubadd_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { + return (__m512h)__builtin_ia32_vfmsubaddph512_mask3( + (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask_fnmadd_round_ph(A, U, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask( \ + (__v32hf)(__m512h)(A), -(__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fnmadd_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, -(__v32hf)__B, + (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_mask_fnmsub_round_ph(A, U, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddph512_mask( \ + (__v32hf)(__m512h)(A), -(__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +#define _mm512_mask3_fnmsub_round_ph(A, B, C, U, R) \ + ((__m512h)__builtin_ia32_vfmsubph512_mask3( \ + -(__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ + (__mmask32)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fnmsub_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, -(__v32hf)__B, + -(__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask3_fnmsub_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { + return (__m512h)__builtin_ia32_vfmsubph512_mask3(-(__v32hf)__A, (__v32hf)__B, + (__v32hf)__C, (__mmask32)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmadd_sh(__m128h __W, + __m128h __A, + __m128h __B) { + return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, (__v8hf)__A, (__v8hf)__B, + (__mmask8)-1, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmadd_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, (__v8hf)__A, (__v8hf)__B, + (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fmadd_round_sh(A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(C), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_fmadd_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ + (__v8hf)(__m128h)(W), (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmadd_sh(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return __builtin_ia32_vfmaddsh3_maskz((__v8hf)__A, (__v8hf)__B, (__v8hf)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fmadd_round_sh(U, A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_maskz( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fmadd_sh(__m128h __W, __m128h __X, __m128h __Y, __mmask8 __U) { + return __builtin_ia32_vfmaddsh3_mask3((__v8hf)__W, (__v8hf)__X, (__v8hf)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fmadd_round_sh(W, X, Y, U, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask3( \ + (__v8hf)(__m128h)(W), (__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmsub_sh(__m128h __W, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_vfmaddsh3_mask((__v8hf)__W, (__v8hf)__A, + -(__v8hf)__B, (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmsub_sh(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_vfmaddsh3_mask((__v8hf)__W, (__v8hf)__A, + -(__v8hf)__B, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fmsub_round_sh(A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), -(__v8hf)(__m128h)(C), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_fmsub_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ + (__v8hf)(__m128h)(W), (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsub_sh(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddsh3_maskz((__v8hf)__A, (__v8hf)__B, + -(__v8hf)__C, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fmsub_round_sh(U, A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_maskz( \ + (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), -(__v8hf)(__m128h)(C), \ + (__mmask8)(U), (int)R)) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsub_sh(__m128h __W, __m128h __X, __m128h __Y, __mmask8 __U) { + return __builtin_ia32_vfmsubsh3_mask3((__v8hf)__W, (__v8hf)__X, (__v8hf)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fmsub_round_sh(W, X, Y, U, R) \ + ((__m128h)__builtin_ia32_vfmsubsh3_mask3( \ + (__v8hf)(__m128h)(W), (__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fnmadd_sh(__m128h __W, + __m128h __A, + __m128h __B) { + return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, -(__v8hf)__A, (__v8hf)__B, + (__mmask8)-1, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fnmadd_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { + return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, -(__v8hf)__A, (__v8hf)__B, + (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fnmadd_round_sh(A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ + (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), (__v8hf)(__m128h)(C), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_fnmadd_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ + (__v8hf)(__m128h)(W), -(__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmadd_sh(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return __builtin_ia32_vfmaddsh3_maskz((__v8hf)__A, -(__v8hf)__B, (__v8hf)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fnmadd_round_sh(U, A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_maskz( \ + (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), (__v8hf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmadd_sh(__m128h __W, __m128h __X, __m128h __Y, __mmask8 __U) { + return __builtin_ia32_vfmaddsh3_mask3((__v8hf)__W, -(__v8hf)__X, (__v8hf)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fnmadd_round_sh(W, X, Y, U, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask3( \ + (__v8hf)(__m128h)(W), -(__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fnmsub_sh(__m128h __W, + __m128h __A, + __m128h __B) { + return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, -(__v8hf)__A, -(__v8hf)__B, + (__mmask8)-1, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fnmsub_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { + return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, -(__v8hf)__A, -(__v8hf)__B, + (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fnmsub_round_sh(A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ + (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), -(__v8hf)(__m128h)(C), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_fnmsub_round_sh(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ + (__v8hf)(__m128h)(W), -(__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmsub_sh(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return __builtin_ia32_vfmaddsh3_maskz((__v8hf)__A, -(__v8hf)__B, -(__v8hf)__C, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_maskz_fnmsub_round_sh(U, A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddsh3_maskz( \ + (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), -(__v8hf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmsub_sh(__m128h __W, __m128h __X, __m128h __Y, __mmask8 __U) { + return __builtin_ia32_vfmsubsh3_mask3((__v8hf)__W, -(__v8hf)__X, (__v8hf)__Y, + (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_mask3_fnmsub_round_sh(W, X, Y, U, R) \ + ((__m128h)__builtin_ia32_vfmsubsh3_mask3( \ + (__v8hf)(__m128h)(W), -(__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fcmadd_sch(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfcmaddcsh_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fcmadd_sch(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_vfcmaddcsh_round_mask( + (__v4sf)__A, (__v4sf)(__B), (__v4sf)(__C), __U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fcmadd_sch(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_vfcmaddcsh_maskz((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fcmadd_sch(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_vfcmaddcsh_round_mask3( + (__v4sf)__A, (__v4sf)__B, (__v4sf)__C, __U, _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fcmadd_round_sch(A, B, C, R) \ + ((__m128h)__builtin_ia32_vfcmaddcsh_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_fcmadd_round_sch(A, U, B, C, R) \ + ((__m128h)__builtin_ia32_vfcmaddcsh_round_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_fcmadd_round_sch(U, A, B, C, R) \ + ((__m128h)__builtin_ia32_vfcmaddcsh_maskz( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +#define _mm_mask3_fcmadd_round_sch(A, B, C, U, R) \ + ((__m128h)__builtin_ia32_vfcmaddcsh_round_mask3( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmadd_sch(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddcsh_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fmadd_sch(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddcsh_round_mask( + (__v4sf)__A, (__v4sf)(__B), (__v4sf)(__C), __U, _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmadd_sch(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddcsh_maskz((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fmadd_sch(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_vfmaddcsh_round_mask3( + (__v4sf)__A, (__v4sf)__B, (__v4sf)__C, __U, _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fmadd_round_sch(A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddcsh_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ + (__mmask8)-1, (int)(R))) + +#define _mm_mask_fmadd_round_sch(A, U, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddcsh_round_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_fmadd_round_sch(U, A, B, C, R) \ + ((__m128h)__builtin_ia32_vfmaddcsh_maskz( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +#define _mm_mask3_fmadd_round_sch(A, B, C, U, R) \ + ((__m128h)__builtin_ia32_vfmaddcsh_round_mask3( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ + (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fcmul_sch(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_vfcmulcsh_mask( + (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_undefined_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fcmul_sch(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_vfcmulcsh_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fcmul_sch(__mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_vfcmulcsh_mask( + (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fcmul_round_sch(A, B, R) \ + ((__m128h)__builtin_ia32_vfcmulcsh_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), \ + (__v4sf)(__m128h)_mm_undefined_ph(), (__mmask8)-1, (int)(R))) + +#define _mm_mask_fcmul_round_sch(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_vfcmulcsh_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_fcmul_round_sch(U, A, B, R) \ + ((__m128h)__builtin_ia32_vfcmulcsh_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), \ + (__v4sf)(__m128h)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmul_sch(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_vfmulcsh_mask( + (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_undefined_ph(), (__mmask8)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmul_sch(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_vfmulcsh_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__W, (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmul_sch(__mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_vfmulcsh_mask( + (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_setzero_ph(), (__mmask8)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm_fmul_round_sch(A, B, R) \ + ((__m128h)__builtin_ia32_vfmulcsh_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), \ + (__v4sf)(__m128h)_mm_undefined_ph(), (__mmask8)-1, (int)(R))) + +#define _mm_mask_fmul_round_sch(W, U, A, B, R) \ + ((__m128h)__builtin_ia32_vfmulcsh_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(W), \ + (__mmask8)(U), (int)(R))) + +#define _mm_maskz_fmul_round_sch(U, A, B, R) \ + ((__m128h)__builtin_ia32_vfmulcsh_mask( \ + (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), \ + (__v4sf)(__m128h)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fcmul_pch(__m512h __A, + __m512h __B) { + return (__m512h)__builtin_ia32_vfcmulcph512_mask( + (__v16sf)__A, (__v16sf)__B, (__v16sf)_mm512_undefined_ph(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fcmul_pch(__m512h __W, __mmask16 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_vfcmulcph512_mask((__v16sf)__A, (__v16sf)__B, + (__v16sf)__W, (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fcmul_pch(__mmask16 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_vfcmulcph512_mask( + (__v16sf)__A, (__v16sf)__B, (__v16sf)_mm512_setzero_ph(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fcmul_round_pch(A, B, R) \ + ((__m512h)__builtin_ia32_vfcmulcph512_mask( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), \ + (__v16sf)(__m512h)_mm512_undefined_ph(), (__mmask16)-1, (int)(R))) + +#define _mm512_mask_fcmul_round_pch(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_vfcmulcph512_mask( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_fcmul_round_pch(U, A, B, R) \ + ((__m512h)__builtin_ia32_vfcmulcph512_mask( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), \ + (__v16sf)(__m512h)_mm512_setzero_ph(), (__mmask16)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fmul_pch(__m512h __A, + __m512h __B) { + return (__m512h)__builtin_ia32_vfmulcph512_mask( + (__v16sf)__A, (__v16sf)__B, (__v16sf)_mm512_undefined_ph(), (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fmul_pch(__m512h __W, __mmask16 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_vfmulcph512_mask((__v16sf)__A, (__v16sf)__B, + (__v16sf)__W, (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmul_pch(__mmask16 __U, __m512h __A, __m512h __B) { + return (__m512h)__builtin_ia32_vfmulcph512_mask( + (__v16sf)__A, (__v16sf)__B, (__v16sf)_mm512_setzero_ph(), (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fmul_round_pch(A, B, R) \ + ((__m512h)__builtin_ia32_vfmulcph512_mask( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), \ + (__v16sf)(__m512h)_mm512_undefined_ph(), (__mmask16)-1, (int)(R))) + +#define _mm512_mask_fmul_round_pch(W, U, A, B, R) \ + ((__m512h)__builtin_ia32_vfmulcph512_mask( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(W), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_fmul_round_pch(U, A, B, R) \ + ((__m512h)__builtin_ia32_vfmulcph512_mask( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), \ + (__v16sf)(__m512h)_mm512_setzero_ph(), (__mmask16)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fcmadd_pch(__m512h __A, + __m512h __B, + __m512h __C) { + return (__m512h)__builtin_ia32_vfcmaddcph512_mask3( + (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fcmadd_pch(__m512h __A, __mmask16 __U, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfcmaddcph512_mask( + (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask3_fcmadd_pch(__m512h __A, __m512h __B, __m512h __C, __mmask16 __U) { + return (__m512h)__builtin_ia32_vfcmaddcph512_mask3( + (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fcmadd_pch(__mmask16 __U, __m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfcmaddcph512_maskz( + (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fcmadd_round_pch(A, B, C, R) \ + ((__m512h)__builtin_ia32_vfcmaddcph512_mask3( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_fcmadd_round_pch(A, U, B, C, R) \ + ((__m512h)__builtin_ia32_vfcmaddcph512_mask( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_mask3_fcmadd_round_pch(A, B, C, U, R) \ + ((__m512h)__builtin_ia32_vfcmaddcph512_mask3( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_fcmadd_round_pch(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_vfcmaddcph512_maskz( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ + (__mmask16)(U), (int)(R))) + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fmadd_pch(__m512h __A, + __m512h __B, + __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddcph512_mask3((__v16sf)__A, (__v16sf)__B, + (__v16sf)__C, (__mmask16)-1, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_fmadd_pch(__m512h __A, __mmask16 __U, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddcph512_mask((__v16sf)__A, (__v16sf)__B, + (__v16sf)__C, (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask3_fmadd_pch(__m512h __A, __m512h __B, __m512h __C, __mmask16 __U) { + return (__m512h)__builtin_ia32_vfmaddcph512_mask3( + (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_maskz_fmadd_pch(__mmask16 __U, __m512h __A, __m512h __B, __m512h __C) { + return (__m512h)__builtin_ia32_vfmaddcph512_maskz( + (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, + _MM_FROUND_CUR_DIRECTION); +} + +#define _mm512_fmadd_round_pch(A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddcph512_mask3( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ + (__mmask16)-1, (int)(R))) + +#define _mm512_mask_fmadd_round_pch(A, U, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddcph512_mask( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_mask3_fmadd_round_pch(A, B, C, U, R) \ + ((__m512h)__builtin_ia32_vfmaddcph512_mask3( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ + (__mmask16)(U), (int)(R))) + +#define _mm512_maskz_fmadd_round_pch(U, A, B, C, R) \ + ((__m512h)__builtin_ia32_vfmaddcph512_maskz( \ + (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ + (__mmask16)(U), (int)(R))) + +static __inline__ _Float16 __DEFAULT_FN_ATTRS512 +_mm512_reduce_add_ph(__m512h __W) { + return __builtin_ia32_reduce_fadd_ph512(-0.0f16, __W); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS512 +_mm512_reduce_mul_ph(__m512h __W) { + return __builtin_ia32_reduce_fmul_ph512(1.0f16, __W); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS512 +_mm512_reduce_max_ph(__m512h __V) { + return __builtin_ia32_reduce_fmax_ph512(__V); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS512 +_mm512_reduce_min_ph(__m512h __V) { + return __builtin_ia32_reduce_fmin_ph512(__V); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_mask_blend_ph(__mmask32 __U, __m512h __A, __m512h __W) { + return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, (__v32hf)__W, + (__v32hf)__A); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_permutex2var_ph(__m512h __A, __m512i __I, __m512h __B) { + return (__m512h)__builtin_ia32_vpermi2varhi512((__v32hi)__A, (__v32hi)__I, + (__v32hi)__B); +} + +static __inline__ __m512h __DEFAULT_FN_ATTRS512 +_mm512_permutexvar_ph(__m512i __A, __m512h __B) { + return (__m512h)__builtin_ia32_permvarhi512((__v32hi)__B, (__v32hi)__A); +} + +// intrinsics below are alias for f*mul_*ch +#define _mm512_mul_pch(A, B) _mm512_fmul_pch(A, B) +#define _mm512_mask_mul_pch(W, U, A, B) _mm512_mask_fmul_pch(W, U, A, B) +#define _mm512_maskz_mul_pch(U, A, B) _mm512_maskz_fmul_pch(U, A, B) +#define _mm512_mul_round_pch(A, B, R) _mm512_fmul_round_pch(A, B, R) +#define _mm512_mask_mul_round_pch(W, U, A, B, R) \ + _mm512_mask_fmul_round_pch(W, U, A, B, R) +#define _mm512_maskz_mul_round_pch(U, A, B, R) \ + _mm512_maskz_fmul_round_pch(U, A, B, R) + +#define _mm512_cmul_pch(A, B) _mm512_fcmul_pch(A, B) +#define _mm512_mask_cmul_pch(W, U, A, B) _mm512_mask_fcmul_pch(W, U, A, B) +#define _mm512_maskz_cmul_pch(U, A, B) _mm512_maskz_fcmul_pch(U, A, B) +#define _mm512_cmul_round_pch(A, B, R) _mm512_fcmul_round_pch(A, B, R) +#define _mm512_mask_cmul_round_pch(W, U, A, B, R) \ + _mm512_mask_fcmul_round_pch(W, U, A, B, R) +#define _mm512_maskz_cmul_round_pch(U, A, B, R) \ + _mm512_maskz_fcmul_round_pch(U, A, B, R) + +#define _mm_mul_sch(A, B) _mm_fmul_sch(A, B) +#define _mm_mask_mul_sch(W, U, A, B) _mm_mask_fmul_sch(W, U, A, B) +#define _mm_maskz_mul_sch(U, A, B) _mm_maskz_fmul_sch(U, A, B) +#define _mm_mul_round_sch(A, B, R) _mm_fmul_round_sch(A, B, R) +#define _mm_mask_mul_round_sch(W, U, A, B, R) \ + _mm_mask_fmul_round_sch(W, U, A, B, R) +#define _mm_maskz_mul_round_sch(U, A, B, R) _mm_maskz_fmul_round_sch(U, A, B, R) + +#define _mm_cmul_sch(A, B) _mm_fcmul_sch(A, B) +#define _mm_mask_cmul_sch(W, U, A, B) _mm_mask_fcmul_sch(W, U, A, B) +#define _mm_maskz_cmul_sch(U, A, B) _mm_maskz_fcmul_sch(U, A, B) +#define _mm_cmul_round_sch(A, B, R) _mm_fcmul_round_sch(A, B, R) +#define _mm_mask_cmul_round_sch(W, U, A, B, R) \ + _mm_mask_fcmul_round_sch(W, U, A, B, R) +#define _mm_maskz_cmul_round_sch(U, A, B, R) \ + _mm_maskz_fcmul_round_sch(U, A, B, R) + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 +#undef __DEFAULT_FN_ATTRS512 + +#endif +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..50dd7f508178acd530a9d7d7d1970eecf305aa35 GIT binary patch literal 241400 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h new file mode 100644 index 00000000..5f7da52f --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h @@ -0,0 +1,68 @@ +/*===------------- avx512ifmaintrin.h - IFMA intrinsics ------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __IFMAINTRIN_H +#define __IFMAINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma"), __min_vector_width__(512))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_madd52hi_epu64 (__m512i __X, __m512i __Y, __m512i __Z) +{ + return (__m512i)__builtin_ia32_vpmadd52huq512((__v8di) __X, (__v8di) __Y, + (__v8di) __Z); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_madd52hi_epu64 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512(__M, + (__v8di)_mm512_madd52hi_epu64(__W, __X, __Y), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_madd52hi_epu64 (__mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z) +{ + return (__m512i)__builtin_ia32_selectq_512(__M, + (__v8di)_mm512_madd52hi_epu64(__X, __Y, __Z), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_madd52lo_epu64 (__m512i __X, __m512i __Y, __m512i __Z) +{ + return (__m512i)__builtin_ia32_vpmadd52luq512((__v8di) __X, (__v8di) __Y, + (__v8di) __Z); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_madd52lo_epu64 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectq_512(__M, + (__v8di)_mm512_madd52lo_epu64(__W, __X, __Y), + (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_madd52lo_epu64 (__mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z) +{ + return (__m512i)__builtin_ia32_selectq_512(__M, + (__v8di)_mm512_madd52lo_epu64(__X, __Y, __Z), + (__v8di)_mm512_setzero_si512()); +} + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d256010bf518d77180fabff7f5fd062dcb53d835 GIT binary patch literal 15666 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 directly; include instead." +#endif + +#ifndef __IFMAVLINTRIN_H +#define __IFMAVLINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma,avx512vl"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma,avx512vl"), __min_vector_width__(256))) + +#define _mm_madd52hi_epu64(X, Y, Z) \ + ((__m128i)__builtin_ia32_vpmadd52huq128((__v2di)(X), (__v2di)(Y), \ + (__v2di)(Z))) + +#define _mm256_madd52hi_epu64(X, Y, Z) \ + ((__m256i)__builtin_ia32_vpmadd52huq256((__v4di)(X), (__v4di)(Y), \ + (__v4di)(Z))) + +#define _mm_madd52lo_epu64(X, Y, Z) \ + ((__m128i)__builtin_ia32_vpmadd52luq128((__v2di)(X), (__v2di)(Y), \ + (__v2di)(Z))) + +#define _mm256_madd52lo_epu64(X, Y, Z) \ + ((__m256i)__builtin_ia32_vpmadd52luq256((__v4di)(X), (__v4di)(Y), \ + (__v4di)(Z))) + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_madd52hi_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128(__M, + (__v2di)_mm_madd52hi_epu64(__W, __X, __Y), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_madd52hi_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z) +{ + return (__m128i)__builtin_ia32_selectq_128(__M, + (__v2di)_mm_madd52hi_epu64(__X, __Y, __Z), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_madd52hi_epu64 (__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256(__M, + (__v4di)_mm256_madd52hi_epu64(__W, __X, __Y), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_madd52hi_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z) +{ + return (__m256i)__builtin_ia32_selectq_256(__M, + (__v4di)_mm256_madd52hi_epu64(__X, __Y, __Z), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_madd52lo_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128(__M, + (__v2di)_mm_madd52lo_epu64(__W, __X, __Y), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_madd52lo_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z) +{ + return (__m128i)__builtin_ia32_selectq_128(__M, + (__v2di)_mm_madd52lo_epu64(__X, __Y, __Z), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_madd52lo_epu64 (__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256(__M, + (__v4di)_mm256_madd52lo_epu64(__W, __X, __Y), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_madd52lo_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z) +{ + return (__m256i)__builtin_ia32_selectq_256(__M, + (__v4di)_mm256_madd52lo_epu64(__X, __Y, __Z), + (__v4di)_mm256_setzero_si256()); +} + + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..75960fe35060975ce14f92c6062c9362792c5219 GIT binary patch literal 18786 zcmcg!e{dYtecuyGaKJbUksWNXD;x>SpyOn5vJYd`GM4N!m1JQgSr!tjy}iA=wf1h; zw|n|k#x;t|IK*j)A*!K_lX|8}plzlplr*%ZZ6;G{l1`a{A*4St8DPelmLUl(35CG* z^WN@zcYF74b#6N7kH<;--S7Lp@Avcl`Oe%Zeek?K{yixak|G5=A2IYqL^YILIC@~P$Fw4jW;>CjmWN{zJ9dOTwIi~eP1ug&XtG0?a8j{avh!RURExg-s7zSobU{xF zCE7m_NgD<7sOhCYyHMk0Xtj_RpD3j% zmBO~7&l3v(z?@>Oyr=CX6Q*epLIOSCxhX5lwDtKe+0e5-X1?td$IR-gJf|l$n7oj4 zv^*yc0%l4#G&zws=WO?d&LKBcH7 zlLm>K(F}c_i13X+zsE19O*TsNGuQOpbSkF@NJSOyV&B%&vx-pxe4o-?I!DiH`7*K~ z`L$V{8hZ7!2mRu6Z8&B@r9kCM_HCK6!iJentb9&4M$IO&L8rAB?1-AwQeu}W*M*ZW zsE)kvz(BumYbF~Pp9Z>eh%kyWW~yn<=$fpXa;lJ19o@{?W$GiAV=vK&KsKC6>`2%kr%(*=V9Fj*9=4j%R@`C^ z$EfGPmT9RuC*aK7ZU|;cHv&-H1!6d>s1z{&a?_w6#KaSX+Tq(^7hNIQa)lTo%TP3c zDQA^=Suvn9_qgH!$#NAjo>r+CpLWw4QnP~y>822Bf}pe7vqaW6_wMl@l%EGug1_%P zY(L^#R4|`Lgt$!2+X!A&ky1$O`L)%B7qq;M(%=%`H0sH2#FE>iKFQg+_}NuMw-Tn3 z7bkNHW@HQ}7e-D32%QBVJK^E1d`iuT0+x{4Q$?;Spa)qrmDe;mZ7f(c$llnJ@mtpQ zK@tQMb!KIOJrRsVYUPRn=p+d=tRmhy{)iiNJVbC}YXF3ZBX)q2TZw}Ta}dK+736z= z*&^H=J96-f_e3U2DYl;#!wA(P3fQErFNz}qaU5DpR0+)SHKQ%~iq{~kIoY54N zaA9PwGN6}N(;nVt^}LzOA|;CvN2$>4g;7cgU5OHSg%ouu5V#GS=7Oi!1?9H9Q`zAJu`Ct+Mwh4#;t8tCE|^7NNaWK4Ga0q68ywJ+ldh4J zL$07sJ1!Q1b|KN}g(z2RYwXBuAwTCGBVBBVmyZa<4D|Ak4^k ztl;M+6ii93n8JKolVxOoIZ;T-j#8Ry1ep`GDK~RXAH3b4xhS|*!?ekCsA3=}lvbFU znUY0OZ$Gn0wSLWlI)dow3UdpfRUxYi@=@os%%Nv*vph1%n?ZU~0oPyb>4~Yz^ zRjGzk1v!$T5VG1`KN-jqiWTfh4J5RT@bI+k5&%j_tmTfW*&z6ppS+~3x{hz_SqojF zn;qPMa-!qzfO4t?ty->XDwqSPW;SaEl>}tYy{+b)yQ=yohpEDH$?eEk)@LOjD9D7P zsyh{`nhY_3-YQ2I5@)j*SsAG6$j)MIxbX(T82I&v8oz+_0!G-eGdg$X?aw{zSy>vE z>zLclVwQwKtWRIU1J09stqN@f`O;vR&g-AwExOr2$(Dliibn+W1nxD999Y+_Ja(ML z2&!~*5hU({V&`4r*(DEgIot!6cTbe(l z39aDb^j1P12Tp?S#G4;w2B1lzp#O|TP0aJ9o32qo`1vf6Lt>tVN zJ{;LTVaqa#o?JPnAb^oUbOoW<1Yx?!{TvL4{koxWRy?IzS2OXMx>% zX?5XogluWx5izbhJV|1DsfRC*71YYU;7&_z*;4X~|1w`FgPjqDbtZrdA#wrbgy}_# z4~#;Fu5JT865Oc3K4xr7KGqgKr2_F*9rGx|!aR!K@%r8oil-V$Eo(Y;P2~(zN!q2H zUaoZxOG}^E+?hcYEICaY5EmR6XLZmkk_gU9Z=Ry=p3#k1GY{Hm2dufu# zRH0-k7@x*&E|`!ErmE3=`sBmA*)V#ZWH_m*2Ii-@w(*@t$h?LoeVl!s@Aw^FMCcWk z6@i&ia%g4Ef_v-0Q7x1Z$IlUHqqMK9d_q5DD`_oZ(teDNRX7sdkgm>}O4K{_S$++i3me%kz;Y0>St;Tg$F z-*j_PPSjrmxb#SdNxsWy7BI;7om(h4E{-+S%++EGskQpEy5-E}bzy=LayAz0{Q69` zfU5^`t}5+u1=F5UtYJ=Lt4gkFKFjPtE;&{jl#?qyv*rY)v=6XN%}^ySwH1x8{$MRs z4{pZD6r=uHP0d=WIkF*~UqtWf-mbUES@K`ZSnZibtjT0|mto49 zRoEVF2Mzgq48(&Sr8ng9@?VaW|1z;v>gd=Wnv$lrH-sjoM1v$rjm4KAm$Tn)dgtZh zU*7PG7k~5F@AntCT=C3_i=*jv#k+Q0t6ejZX%8u5%JJgol-3tsjWo%Zz2DlqI)rzn z;=NBF+xM)!5a9y5?cxY?VVEuXz!8hn%*x*2(oSt^-KLXH-!46J6wG%5AVO+ zdFbiaihul(T;s*_UtK89T)gvBH@trFT=B(y&tCY+xtG^5K#zR)@!Rem`}Pll1!Zxg zHt2-HQLpr#c$N!GVOXw1>T)GLHnii%7xw>nM{&cio_uZU=D&KbxN6mg_N!ie;*H{c zhn8=?eExH9g@|%RmV0ISvx`6Z;ctDlN_00Ul%k%e=5pcxZ*ikr>PFm%N;_TQ_k8D( zC(XI1V#PoFlb_!44SUyOab)k$n_u|!wNDkJJHKi7eQNq4rsltGXua_H%fAq-lGW7? zy#nKSC>PYz-X-FpO=<%kTBRFZK_jup{(1ev^B*r>w|?*6y>vtOe-zLB_1WC(Pn@`= z_|9)U_4dy2aqD~ANM^+>135u)&pU30lWE~sFU#=g!9+cNx*W<0tW1I2$Nc;$% zPRFOoIyMa&C9dFe@&5U@e)d1B&v(>$tggC_)g?Ms`%wEtW2k+y9hU~~|FA3ZdR zzfbL)!rzM%Z?x?B+WlYpCEMu#197zS0p!+{%eK16J+{hG1F~L`*9TQ)K|r~)A=(=4 zf(ByU`>^J^@5Oqmd$}>Rqj|?>4*ON>*Y!%fT6cl6XRIfQ)#^Ep^?{zVjiKGmyFuxK zf24H;G^4Rma2w5yg4^h+QE)rld>AyIJFL1M+$LKmK{+)x1#VN;6u3=2Fa>UMvkXet zDT?oWuyCg9w{NL~y!m2V?K$73k+S-b3U{gYaeL(yZXVc zKhqCx{Y(Aew!e8lXgptCwGrF~S_eQmI6Me$gGUF!ZSdqExE*Xh2ujyuw{WoV!dxDg znwmZ;NujCKl<|H8wVJ{G;eEu*hUum0Q>#N{?Ui_y&76-^?b6j(Qw{@DhbV`gQ-{7z z-VDhT^7QHuuW1GEj3!5ql6T;ZN8NW0PaG!iu<8l#c=_juC+Ohf;0f{y4tauuhzdG< zdic!h5LqE8Gj)jpJ89c|+i}7G);aEH(0;ld49E%wtZXYWm|zk-JoqS;;N;+=eg?zK z!;e7%tYC2Qv#sZ2zxOxy@#crLJuI;zDBSpIBsbb6u{xogpdCdP>duL+E%p9PUeVG* zvLg*VTV;F+Q8&<+6 z@y)ZZFX5GnVhXBkEmLL1(@WPQj?7g_uos|8Jf^Bd7A~oh{_<<8lJf9W+1%8OlCQaG zou^8~5GWDxfvA$Tww~GHjtr$!k4}AsXcD3KD-{mCJPnjiV+Bg@4u5OYvA3r4vV36Q z;GVI814AQ+4h+e0XtjlFwdz@DP170_(PX9em3Yz@*tG4Qwj_19fwrV;(=8KQh)r38 zUJ{-;`P7N2`>F8O)cqC0pPq(~PGg1eEJTBW7bOmRKH7hKf1EHt=#2Y(^s@L;9N~wGdY{&{Z^0%!jym|D6ulZb^O*m@0IwQDr zh;n?ACZZNTjStDyTbf$n>Mc#1J$#}P05Xx~2|igbRZ=Z8adwF*YcozY7?BE`8`vc*zeiXOIK>WehzX!sdPTN}Mv=*hURifn z?K<6OyU!8GqSQO*cb(XB41P~mqF1l$sy0m9nYOcp0qT~se$2Now}Sy$!5}sBZzo@P zX7`U|xvziUp3#93dEbz{XJq8iT>zyI^CE)krcN>Dlm%OMCx^038uuK&^qwfB-Cytz zWbn^d(C=+_uL{WMyMx^tY)0n7Ns#Tl-Vpyw1t$Yy$l@lXtDCL{O0mAbE<{7tN21Z_ zJ-wk_(Op?2m^J?;1+mB)emG3?KgzX={NK6U2?dcA3SyOh$wVwT zb;rAhsEK0TLp~E-7F&uTs*n}!=h&^22u`eb0-MTY*`4gB)f0LguX@@sv4aFw)?1Xe zW&y4Hc=t)Vb*}rQZ|jEG=@`6@tdN}z9ZL+D+m4YfulG@qci zsmLe2r+aa1vVy^D1K<0>Kdt)R2dXg*j}OK)2tF)KV=EWapJ@67FpZUCx;5Gg1b0L` zu=Yj!unt5Auxe{Gf@#)u3#`(APd`o4=#jl7y?qIG;Z j4i%6UDqv&j5(8$%!RbL-;-Gb`C~=0Dh9L)8d!_#c2;1Yc literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h new file mode 100644 index 00000000..b8bcf49c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h @@ -0,0 +1,97 @@ +/*===------------- avx512pfintrin.h - PF intrinsics ------------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX512PFINTRIN_H +#define __AVX512PFINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512pf"))) + +#define _mm512_mask_prefetch_i32gather_pd(index, mask, addr, scale, hint) \ + __builtin_ia32_gatherpfdpd((__mmask8)(mask), (__v8si)(__m256i)(index), \ + (void const *)(addr), (int)(scale), \ + (int)(hint)) + +#define _mm512_prefetch_i32gather_pd(index, addr, scale, hint) \ + __builtin_ia32_gatherpfdpd((__mmask8) -1, (__v8si)(__m256i)(index), \ + (void const *)(addr), (int)(scale), \ + (int)(hint)) + +#define _mm512_mask_prefetch_i32gather_ps(index, mask, addr, scale, hint) \ + __builtin_ia32_gatherpfdps((__mmask16)(mask), \ + (__v16si)(__m512i)(index), (void const *)(addr), \ + (int)(scale), (int)(hint)) + +#define _mm512_prefetch_i32gather_ps(index, addr, scale, hint) \ + __builtin_ia32_gatherpfdps((__mmask16) -1, \ + (__v16si)(__m512i)(index), (void const *)(addr), \ + (int)(scale), (int)(hint)) + +#define _mm512_mask_prefetch_i64gather_pd(index, mask, addr, scale, hint) \ + __builtin_ia32_gatherpfqpd((__mmask8)(mask), (__v8di)(__m512i)(index), \ + (void const *)(addr), (int)(scale), \ + (int)(hint)) + +#define _mm512_prefetch_i64gather_pd(index, addr, scale, hint) \ + __builtin_ia32_gatherpfqpd((__mmask8) -1, (__v8di)(__m512i)(index), \ + (void const *)(addr), (int)(scale), \ + (int)(hint)) + +#define _mm512_mask_prefetch_i64gather_ps(index, mask, addr, scale, hint) \ + __builtin_ia32_gatherpfqps((__mmask8)(mask), (__v8di)(__m512i)(index), \ + (void const *)(addr), (int)(scale), (int)(hint)) + +#define _mm512_prefetch_i64gather_ps(index, addr, scale, hint) \ + __builtin_ia32_gatherpfqps((__mmask8) -1, (__v8di)(__m512i)(index), \ + (void const *)(addr), (int)(scale), (int)(hint)) + +#define _mm512_prefetch_i32scatter_pd(addr, index, scale, hint) \ + __builtin_ia32_scatterpfdpd((__mmask8)-1, (__v8si)(__m256i)(index), \ + (void *)(addr), (int)(scale), \ + (int)(hint)) + +#define _mm512_mask_prefetch_i32scatter_pd(addr, mask, index, scale, hint) \ + __builtin_ia32_scatterpfdpd((__mmask8)(mask), (__v8si)(__m256i)(index), \ + (void *)(addr), (int)(scale), \ + (int)(hint)) + +#define _mm512_prefetch_i32scatter_ps(addr, index, scale, hint) \ + __builtin_ia32_scatterpfdps((__mmask16)-1, (__v16si)(__m512i)(index), \ + (void *)(addr), (int)(scale), (int)(hint)) + +#define _mm512_mask_prefetch_i32scatter_ps(addr, mask, index, scale, hint) \ + __builtin_ia32_scatterpfdps((__mmask16)(mask), \ + (__v16si)(__m512i)(index), (void *)(addr), \ + (int)(scale), (int)(hint)) + +#define _mm512_prefetch_i64scatter_pd(addr, index, scale, hint) \ + __builtin_ia32_scatterpfqpd((__mmask8)-1, (__v8di)(__m512i)(index), \ + (void *)(addr), (int)(scale), \ + (int)(hint)) + +#define _mm512_mask_prefetch_i64scatter_pd(addr, mask, index, scale, hint) \ + __builtin_ia32_scatterpfqpd((__mmask8)(mask), (__v8di)(__m512i)(index), \ + (void *)(addr), (int)(scale), \ + (int)(hint)) + +#define _mm512_prefetch_i64scatter_ps(addr, index, scale, hint) \ + __builtin_ia32_scatterpfqps((__mmask8)-1, (__v8di)(__m512i)(index), \ + (void *)(addr), (int)(scale), (int)(hint)) + +#define _mm512_mask_prefetch_i64scatter_ps(addr, mask, index, scale, hint) \ + __builtin_ia32_scatterpfqps((__mmask8)(mask), (__v8di)(__m512i)(index), \ + (void *)(addr), (int)(scale), (int)(hint)) + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..349c88c4495cdf8b620b0a266a60363b2c9d9ce4 GIT binary patch literal 17219 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h new file mode 100644 index 00000000..17fa7772 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h @@ -0,0 +1,357 @@ +/*===------------- avx512vbmi2intrin.h - VBMI2 intrinsics ------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX512VBMI2INTRIN_H +#define __AVX512VBMI2INTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi2"), __min_vector_width__(512))) + + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_compress_epi16(__m512i __S, __mmask32 __U, __m512i __D) +{ + return (__m512i) __builtin_ia32_compresshi512_mask ((__v32hi) __D, + (__v32hi) __S, + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_compress_epi16(__mmask32 __U, __m512i __D) +{ + return (__m512i) __builtin_ia32_compresshi512_mask ((__v32hi) __D, + (__v32hi) _mm512_setzero_si512(), + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_compress_epi8(__m512i __S, __mmask64 __U, __m512i __D) +{ + return (__m512i) __builtin_ia32_compressqi512_mask ((__v64qi) __D, + (__v64qi) __S, + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_compress_epi8(__mmask64 __U, __m512i __D) +{ + return (__m512i) __builtin_ia32_compressqi512_mask ((__v64qi) __D, + (__v64qi) _mm512_setzero_si512(), + __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_mm512_mask_compressstoreu_epi16(void *__P, __mmask32 __U, __m512i __D) +{ + __builtin_ia32_compressstorehi512_mask ((__v32hi *) __P, (__v32hi) __D, + __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_mm512_mask_compressstoreu_epi8(void *__P, __mmask64 __U, __m512i __D) +{ + __builtin_ia32_compressstoreqi512_mask ((__v64qi *) __P, (__v64qi) __D, + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_expand_epi16(__m512i __S, __mmask32 __U, __m512i __D) +{ + return (__m512i) __builtin_ia32_expandhi512_mask ((__v32hi) __D, + (__v32hi) __S, + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_expand_epi16(__mmask32 __U, __m512i __D) +{ + return (__m512i) __builtin_ia32_expandhi512_mask ((__v32hi) __D, + (__v32hi) _mm512_setzero_si512(), + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_expand_epi8(__m512i __S, __mmask64 __U, __m512i __D) +{ + return (__m512i) __builtin_ia32_expandqi512_mask ((__v64qi) __D, + (__v64qi) __S, + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_expand_epi8(__mmask64 __U, __m512i __D) +{ + return (__m512i) __builtin_ia32_expandqi512_mask ((__v64qi) __D, + (__v64qi) _mm512_setzero_si512(), + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_expandloadu_epi16(__m512i __S, __mmask32 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_expandloadhi512_mask ((const __v32hi *)__P, + (__v32hi) __S, + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_expandloadu_epi16(__mmask32 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_expandloadhi512_mask ((const __v32hi *)__P, + (__v32hi) _mm512_setzero_si512(), + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_expandloadu_epi8(__m512i __S, __mmask64 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_expandloadqi512_mask ((const __v64qi *)__P, + (__v64qi) __S, + __U); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_expandloadu_epi8(__mmask64 __U, void const *__P) +{ + return (__m512i) __builtin_ia32_expandloadqi512_mask ((const __v64qi *)__P, + (__v64qi) _mm512_setzero_si512(), + __U); +} + +#define _mm512_shldi_epi64(A, B, I) \ + ((__m512i)__builtin_ia32_vpshldq512((__v8di)(__m512i)(A), \ + (__v8di)(__m512i)(B), (int)(I))) + +#define _mm512_mask_shldi_epi64(S, U, A, B, I) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_shldi_epi64((A), (B), (I)), \ + (__v8di)(__m512i)(S))) + +#define _mm512_maskz_shldi_epi64(U, A, B, I) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_shldi_epi64((A), (B), (I)), \ + (__v8di)_mm512_setzero_si512())) + +#define _mm512_shldi_epi32(A, B, I) \ + ((__m512i)__builtin_ia32_vpshldd512((__v16si)(__m512i)(A), \ + (__v16si)(__m512i)(B), (int)(I))) + +#define _mm512_mask_shldi_epi32(S, U, A, B, I) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_shldi_epi32((A), (B), (I)), \ + (__v16si)(__m512i)(S))) + +#define _mm512_maskz_shldi_epi32(U, A, B, I) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_shldi_epi32((A), (B), (I)), \ + (__v16si)_mm512_setzero_si512())) + +#define _mm512_shldi_epi16(A, B, I) \ + ((__m512i)__builtin_ia32_vpshldw512((__v32hi)(__m512i)(A), \ + (__v32hi)(__m512i)(B), (int)(I))) + +#define _mm512_mask_shldi_epi16(S, U, A, B, I) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_shldi_epi16((A), (B), (I)), \ + (__v32hi)(__m512i)(S))) + +#define _mm512_maskz_shldi_epi16(U, A, B, I) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_shldi_epi16((A), (B), (I)), \ + (__v32hi)_mm512_setzero_si512())) + +#define _mm512_shrdi_epi64(A, B, I) \ + ((__m512i)__builtin_ia32_vpshrdq512((__v8di)(__m512i)(A), \ + (__v8di)(__m512i)(B), (int)(I))) + +#define _mm512_mask_shrdi_epi64(S, U, A, B, I) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_shrdi_epi64((A), (B), (I)), \ + (__v8di)(__m512i)(S))) + +#define _mm512_maskz_shrdi_epi64(U, A, B, I) \ + ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ + (__v8di)_mm512_shrdi_epi64((A), (B), (I)), \ + (__v8di)_mm512_setzero_si512())) + +#define _mm512_shrdi_epi32(A, B, I) \ + ((__m512i)__builtin_ia32_vpshrdd512((__v16si)(__m512i)(A), \ + (__v16si)(__m512i)(B), (int)(I))) + +#define _mm512_mask_shrdi_epi32(S, U, A, B, I) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_shrdi_epi32((A), (B), (I)), \ + (__v16si)(__m512i)(S))) + +#define _mm512_maskz_shrdi_epi32(U, A, B, I) \ + ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ + (__v16si)_mm512_shrdi_epi32((A), (B), (I)), \ + (__v16si)_mm512_setzero_si512())) + +#define _mm512_shrdi_epi16(A, B, I) \ + ((__m512i)__builtin_ia32_vpshrdw512((__v32hi)(__m512i)(A), \ + (__v32hi)(__m512i)(B), (int)(I))) + +#define _mm512_mask_shrdi_epi16(S, U, A, B, I) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_shrdi_epi16((A), (B), (I)), \ + (__v32hi)(__m512i)(S))) + +#define _mm512_maskz_shrdi_epi16(U, A, B, I) \ + ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ + (__v32hi)_mm512_shrdi_epi16((A), (B), (I)), \ + (__v32hi)_mm512_setzero_si512())) + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_shldv_epi64(__m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_vpshldvq512((__v8di)__A, (__v8di)__B, + (__v8di)__C); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_shldv_epi64(__m512i __A, __mmask8 __U, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_shldv_epi64(__A, __B, __C), + (__v8di)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_shldv_epi64(__mmask8 __U, __m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_shldv_epi64(__A, __B, __C), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_shldv_epi32(__m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_vpshldvd512((__v16si)__A, (__v16si)__B, + (__v16si)__C); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_shldv_epi32(__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_shldv_epi32(__A, __B, __C), + (__v16si)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_shldv_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_shldv_epi32(__A, __B, __C), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_shldv_epi16(__m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_vpshldvw512((__v32hi)__A, (__v32hi)__B, + (__v32hi)__C); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_shldv_epi16(__m512i __A, __mmask32 __U, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectw_512(__U, + (__v32hi)_mm512_shldv_epi16(__A, __B, __C), + (__v32hi)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_shldv_epi16(__mmask32 __U, __m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectw_512(__U, + (__v32hi)_mm512_shldv_epi16(__A, __B, __C), + (__v32hi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_shrdv_epi64(__m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_vpshrdvq512((__v8di)__A, (__v8di)__B, + (__v8di)__C); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_shrdv_epi64(__m512i __A, __mmask8 __U, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_shrdv_epi64(__A, __B, __C), + (__v8di)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_shrdv_epi64(__mmask8 __U, __m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectq_512(__U, + (__v8di)_mm512_shrdv_epi64(__A, __B, __C), + (__v8di)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_shrdv_epi32(__m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_vpshrdvd512((__v16si)__A, (__v16si)__B, + (__v16si)__C); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_shrdv_epi32(__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) +{ + return (__m512i) __builtin_ia32_selectd_512(__U, + (__v16si)_mm512_shrdv_epi32(__A, __B, __C), + (__v16si)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_shrdv_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i) __builtin_ia32_selectd_512(__U, + (__v16si)_mm512_shrdv_epi32(__A, __B, __C), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_shrdv_epi16(__m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_vpshrdvw512((__v32hi)__A, (__v32hi)__B, + (__v32hi)__C); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_shrdv_epi16(__m512i __A, __mmask32 __U, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectw_512(__U, + (__v32hi)_mm512_shrdv_epi16(__A, __B, __C), + (__v32hi)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_shrdv_epi16(__mmask32 __U, __m512i __A, __m512i __B, __m512i __C) +{ + return (__m512i)__builtin_ia32_selectw_512(__U, + (__v32hi)_mm512_shrdv_epi16(__A, __B, __C), + (__v32hi)_mm512_setzero_si512()); +} + + +#undef __DEFAULT_FN_ATTRS + +#endif + diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1501a90c0d1653ace811e4a6d4452b33597d0ede GIT binary patch literal 33314 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 directly; include instead." +#endif + +#ifndef __VBMIINTRIN_H +#define __VBMIINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi"), __min_vector_width__(512))) + + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_permutex2var_epi8(__m512i __A, __m512i __I, __m512i __B) +{ + return (__m512i)__builtin_ia32_vpermi2varqi512((__v64qi)__A, (__v64qi)__I, + (__v64qi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_permutex2var_epi8(__m512i __A, __mmask64 __U, __m512i __I, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512(__U, + (__v64qi)_mm512_permutex2var_epi8(__A, __I, __B), + (__v64qi)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask2_permutex2var_epi8(__m512i __A, __m512i __I, __mmask64 __U, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512(__U, + (__v64qi)_mm512_permutex2var_epi8(__A, __I, __B), + (__v64qi)__I); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_permutex2var_epi8(__mmask64 __U, __m512i __A, __m512i __I, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512(__U, + (__v64qi)_mm512_permutex2var_epi8(__A, __I, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_permutexvar_epi8 (__m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_permvarqi512((__v64qi) __B, (__v64qi) __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_permutexvar_epi8 (__mmask64 __M, __m512i __A, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_permutexvar_epi8(__A, __B), + (__v64qi)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_permutexvar_epi8 (__m512i __W, __mmask64 __M, __m512i __A, + __m512i __B) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_permutexvar_epi8(__A, __B), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_multishift_epi64_epi8(__m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_vpmultishiftqb512((__v64qi)__X, (__v64qi) __Y); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_multishift_epi64_epi8(__m512i __W, __mmask64 __M, __m512i __X, + __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_multishift_epi64_epi8(__X, __Y), + (__v64qi)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_multishift_epi64_epi8(__mmask64 __M, __m512i __X, __m512i __Y) +{ + return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, + (__v64qi)_mm512_multishift_epi64_epi8(__X, __Y), + (__v64qi)_mm512_setzero_si512()); +} + + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..38ff61d9913fe075ae19c06737a1f1b85d9ae801 GIT binary patch literal 17322 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 directly; include instead." +#endif + +#ifndef __VBMIVLINTRIN_H +#define __VBMIVLINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi,avx512vl"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi,avx512vl"), __min_vector_width__(256))) + + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_permutex2var_epi8(__m128i __A, __m128i __I, __m128i __B) +{ + return (__m128i)__builtin_ia32_vpermi2varqi128((__v16qi)__A, + (__v16qi)__I, + (__v16qi)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_permutex2var_epi8(__m128i __A, __mmask16 __U, __m128i __I, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128(__U, + (__v16qi)_mm_permutex2var_epi8(__A, __I, __B), + (__v16qi)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask2_permutex2var_epi8(__m128i __A, __m128i __I, __mmask16 __U, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128(__U, + (__v16qi)_mm_permutex2var_epi8(__A, __I, __B), + (__v16qi)__I); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_permutex2var_epi8(__mmask16 __U, __m128i __A, __m128i __I, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128(__U, + (__v16qi)_mm_permutex2var_epi8(__A, __I, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_permutex2var_epi8(__m256i __A, __m256i __I, __m256i __B) +{ + return (__m256i)__builtin_ia32_vpermi2varqi256((__v32qi)__A, (__v32qi)__I, + (__v32qi)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_permutex2var_epi8(__m256i __A, __mmask32 __U, __m256i __I, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256(__U, + (__v32qi)_mm256_permutex2var_epi8(__A, __I, __B), + (__v32qi)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask2_permutex2var_epi8(__m256i __A, __m256i __I, __mmask32 __U, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256(__U, + (__v32qi)_mm256_permutex2var_epi8(__A, __I, __B), + (__v32qi)__I); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutex2var_epi8(__mmask32 __U, __m256i __A, __m256i __I, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256(__U, + (__v32qi)_mm256_permutex2var_epi8(__A, __I, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_permutexvar_epi8 (__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_permvarqi128((__v16qi)__B, (__v16qi)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_permutexvar_epi8 (__mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_permutexvar_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_permutexvar_epi8 (__m128i __W, __mmask16 __M, __m128i __A, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_permutexvar_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_permutexvar_epi8 (__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_permvarqi256((__v32qi) __B, (__v32qi) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutexvar_epi8 (__mmask32 __M, __m256i __A, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_permutexvar_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_permutexvar_epi8 (__m256i __W, __mmask32 __M, __m256i __A, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_permutexvar_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_multishift_epi64_epi8(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_vpmultishiftqb128((__v16qi)__X, (__v16qi)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_multishift_epi64_epi8(__m128i __W, __mmask16 __M, __m128i __X, + __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_multishift_epi64_epi8(__X, __Y), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_multishift_epi64_epi8(__mmask16 __M, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_multishift_epi64_epi8(__X, __Y), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_multishift_epi64_epi8(__m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_vpmultishiftqb256((__v32qi)__X, (__v32qi)__Y); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_multishift_epi64_epi8(__m256i __W, __mmask32 __M, __m256i __X, + __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_multishift_epi64_epi8(__X, __Y), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_multishift_epi64_epi8(__mmask32 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_multishift_epi64_epi8(__X, __Y), + (__v32qi)_mm256_setzero_si256()); +} + + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ec9ffb23145babaabf10693c49ae6e8e36641c45 GIT binary patch literal 22448 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h new file mode 100644 index 00000000..f5b8911f --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h @@ -0,0 +1,515 @@ +/*===--------- avx512vlbf16intrin.h - AVX512_BF16 intrinsics ---------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifdef __SSE2__ + +#ifndef __AVX512VLBF16INTRIN_H +#define __AVX512VLBF16INTRIN_H + +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, \ + __target__("avx512vl, avx512bf16"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, \ + __target__("avx512vl, avx512bf16"), __min_vector_width__(256))) + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 128-bit vector of [4 x float]. +/// \param __B +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from +/// conversion of __B, and higher 64 bits come from conversion of __A. +static __inline__ __m128bh __DEFAULT_FN_ATTRS128 +_mm_cvtne2ps_pbh(__m128 __A, __m128 __B) { + return (__m128bh)__builtin_ia32_cvtne2ps2bf16_128((__v4sf) __A, + (__v4sf) __B); +} + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 128-bit vector of [4 x float]. +/// \param __B +/// A 128-bit vector of [4 x float]. +/// \param __W +/// A 128-bit vector of [8 x bfloat]. +/// \param __U +/// A 8-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A or __B. A 0 means element from __W. +/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from +/// conversion of __B, and higher 64 bits come from conversion of __A. +static __inline__ __m128bh __DEFAULT_FN_ATTRS128 +_mm_mask_cvtne2ps_pbh(__m128bh __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128bh)__builtin_ia32_selectpbf_128((__mmask8)__U, + (__v8bf)_mm_cvtne2ps_pbh(__A, __B), + (__v8bf)__W); +} + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 128-bit vector of [4 x float]. +/// \param __B +/// A 128-bit vector of [4 x float]. +/// \param __U +/// A 8-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A or __B. A 0 means element is zero. +/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from +/// conversion of __B, and higher 64 bits come from conversion of __A. +static __inline__ __m128bh __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtne2ps_pbh(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128bh)__builtin_ia32_selectpbf_128((__mmask8)__U, + (__v8bf)_mm_cvtne2ps_pbh(__A, __B), + (__v8bf)_mm_setzero_si128()); +} + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 256-bit vector of [8 x float]. +/// \param __B +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit vector of [16 x bfloat] whose lower 128 bits come from +/// conversion of __B, and higher 128 bits come from conversion of __A. +static __inline__ __m256bh __DEFAULT_FN_ATTRS256 +_mm256_cvtne2ps_pbh(__m256 __A, __m256 __B) { + return (__m256bh)__builtin_ia32_cvtne2ps2bf16_256((__v8sf) __A, + (__v8sf) __B); +} + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 256-bit vector of [8 x float]. +/// \param __B +/// A 256-bit vector of [8 x float]. +/// \param __W +/// A 256-bit vector of [16 x bfloat]. +/// \param __U +/// A 16-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A or __B. A 0 means element from __W. +/// \returns A 256-bit vector of [16 x bfloat] whose lower 128 bits come from +/// conversion of __B, and higher 128 bits come from conversion of __A. +static __inline__ __m256bh __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtne2ps_pbh(__m256bh __W, __mmask16 __U, __m256 __A, __m256 __B) { + return (__m256bh)__builtin_ia32_selectpbf_256((__mmask16)__U, + (__v16bf)_mm256_cvtne2ps_pbh(__A, __B), + (__v16bf)__W); +} + +/// Convert Two Packed Single Data to One Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNE2PS2BF16 instructions. +/// +/// \param __A +/// A 256-bit vector of [8 x float]. +/// \param __B +/// A 256-bit vector of [8 x float]. +/// \param __U +/// A 16-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A or __B. A 0 means element is zero. +/// \returns A 256-bit vector of [16 x bfloat] whose lower 128 bits come from +/// conversion of __B, and higher 128 bits come from conversion of __A. +static __inline__ __m256bh __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtne2ps_pbh(__mmask16 __U, __m256 __A, __m256 __B) { + return (__m256bh)__builtin_ia32_selectpbf_256((__mmask16)__U, + (__v16bf)_mm256_cvtne2ps_pbh(__A, __B), + (__v16bf)_mm256_setzero_si256()); +} + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from +/// conversion of __A, and higher 64 bits are 0. +#define _mm_cvtneps_pbh(A) \ + ((__m128bh)__builtin_ia32_vcvtneps2bf16128((__v4sf)(A))) + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 128-bit vector of [4 x float]. +/// \param __W +/// A 128-bit vector of [8 x bfloat]. +/// \param __U +/// A 4-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A. A 0 means element from __W. +/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from +/// conversion of __A, and higher 64 bits are 0. +static __inline__ __m128bh __DEFAULT_FN_ATTRS128 +_mm_mask_cvtneps_pbh(__m128bh __W, __mmask8 __U, __m128 __A) { + return (__m128bh)__builtin_ia32_cvtneps2bf16_128_mask((__v4sf) __A, + (__v8bf)__W, + (__mmask8)__U); +} + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 128-bit vector of [4 x float]. +/// \param __U +/// A 4-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A. A 0 means element is zero. +/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from +/// conversion of __A, and higher 64 bits are 0. +static __inline__ __m128bh __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtneps_pbh(__mmask8 __U, __m128 __A) { + return (__m128bh)__builtin_ia32_cvtneps2bf16_128_mask((__v4sf) __A, + (__v8bf)_mm_setzero_si128(), + (__mmask8)__U); +} + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 256-bit vector of [8 x float]. +/// \returns A 128-bit vector of [8 x bfloat] comes from conversion of __A. +#define _mm256_cvtneps_pbh(A) \ + ((__m128bh)__builtin_ia32_vcvtneps2bf16256((__v8sf)(A))) + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 256-bit vector of [8 x float]. +/// \param __W +/// A 256-bit vector of [8 x bfloat]. +/// \param __U +/// A 8-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A. A 0 means element from __W. +/// \returns A 128-bit vector of [8 x bfloat] comes from conversion of __A. +static __inline__ __m128bh __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtneps_pbh(__m128bh __W, __mmask8 __U, __m256 __A) { + return (__m128bh)__builtin_ia32_cvtneps2bf16_256_mask((__v8sf)__A, + (__v8bf)__W, + (__mmask8)__U); +} + +/// Convert Packed Single Data to Packed BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A 256-bit vector of [8 x float]. +/// \param __U +/// A 8-bit mask value specifying what is chosen for each element. +/// A 1 means conversion of __A. A 0 means element is zero. +/// \returns A 128-bit vector of [8 x bfloat] comes from conversion of __A. +static __inline__ __m128bh __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtneps_pbh(__mmask8 __U, __m256 __A) { + return (__m128bh)__builtin_ia32_cvtneps2bf16_256_mask((__v8sf)__A, + (__v8bf)_mm_setzero_si128(), + (__mmask8)__U); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 128-bit vector of [8 x bfloat]. +/// \param __B +/// A 128-bit vector of [8 x bfloat]. +/// \param __D +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_dpbf16_ps(__m128 __D, __m128bh __A, __m128bh __B) { + return (__m128)__builtin_ia32_dpbf16ps_128((__v4sf)__D, + (__v8bf)__A, + (__v8bf)__B); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 128-bit vector of [8 x bfloat]. +/// \param __B +/// A 128-bit vector of [8 x bfloat]. +/// \param __D +/// A 128-bit vector of [4 x float]. +/// \param __U +/// A 8-bit mask value specifying what is chosen for each element. +/// A 1 means __A and __B's dot product accumulated with __D. A 0 means __D. +/// \returns A 128-bit vector of [4 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_dpbf16_ps(__m128 __D, __mmask8 __U, __m128bh __A, __m128bh __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_dpbf16_ps(__D, __A, __B), + (__v4sf)__D); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 128-bit vector of [8 x bfloat]. +/// \param __B +/// A 128-bit vector of [8 x bfloat]. +/// \param __D +/// A 128-bit vector of [4 x float]. +/// \param __U +/// A 8-bit mask value specifying what is chosen for each element. +/// A 1 means __A and __B's dot product accumulated with __D. A 0 means 0. +/// \returns A 128-bit vector of [4 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_dpbf16_ps(__mmask8 __U, __m128 __D, __m128bh __A, __m128bh __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_dpbf16_ps(__D, __A, __B), + (__v4sf)_mm_setzero_si128()); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 256-bit vector of [16 x bfloat]. +/// \param __B +/// A 256-bit vector of [16 x bfloat]. +/// \param __D +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit vector of [8 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_dpbf16_ps(__m256 __D, __m256bh __A, __m256bh __B) { + return (__m256)__builtin_ia32_dpbf16ps_256((__v8sf)__D, + (__v16bf)__A, + (__v16bf)__B); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 256-bit vector of [16 x bfloat]. +/// \param __B +/// A 256-bit vector of [16 x bfloat]. +/// \param __D +/// A 256-bit vector of [8 x float]. +/// \param __U +/// A 16-bit mask value specifying what is chosen for each element. +/// A 1 means __A and __B's dot product accumulated with __D. A 0 means __D. +/// \returns A 256-bit vector of [8 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_dpbf16_ps(__m256 __D, __mmask8 __U, __m256bh __A, __m256bh __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_dpbf16_ps(__D, __A, __B), + (__v8sf)__D); +} + +/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VDPBF16PS instructions. +/// +/// \param __A +/// A 256-bit vector of [16 x bfloat]. +/// \param __B +/// A 256-bit vector of [16 x bfloat]. +/// \param __D +/// A 256-bit vector of [8 x float]. +/// \param __U +/// A 8-bit mask value specifying what is chosen for each element. +/// A 1 means __A and __B's dot product accumulated with __D. A 0 means 0. +/// \returns A 256-bit vector of [8 x float] comes from Dot Product of +/// __A, __B and __D +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_dpbf16_ps(__mmask8 __U, __m256 __D, __m256bh __A, __m256bh __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_dpbf16_ps(__D, __A, __B), + (__v8sf)_mm256_setzero_si256()); +} + +/// Convert One Single float Data to One BF16 Data. +/// +/// \headerfile +/// +/// This intrinsic corresponds to the VCVTNEPS2BF16 instructions. +/// +/// \param __A +/// A float data. +/// \returns A bf16 data whose sign field and exponent field keep unchanged, +/// and fraction field is truncated to 7 bits. +static __inline__ __bf16 __DEFAULT_FN_ATTRS128 _mm_cvtness_sbh(float __A) { + __v4sf __V = {__A, 0, 0, 0}; + __v8bf __R = __builtin_ia32_cvtneps2bf16_128_mask( + (__v4sf)__V, (__v8bf)_mm_undefined_si128(), (__mmask8)-1); + return (__bf16)__R[0]; +} + +/// Convert Packed BF16 Data to Packed float Data. +/// +/// \headerfile +/// +/// \param __A +/// A 128-bit vector of [4 x bfloat]. +/// \returns A 128-bit vector of [4 x float] come from conversion of __A +static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_cvtpbh_ps(__m128bh __A) { + return _mm_castsi128_ps( + (__m128i)_mm_slli_epi32((__m128i)_mm_cvtepi16_epi32((__m128i)__A), 16)); +} + +/// Convert Packed BF16 Data to Packed float Data. +/// +/// \headerfile +/// +/// \param __A +/// A 128-bit vector of [8 x bfloat]. +/// \returns A 256-bit vector of [8 x float] come from conversion of __A +static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_cvtpbh_ps(__m128bh __A) { + return _mm256_castsi256_ps((__m256i)_mm256_slli_epi32( + (__m256i)_mm256_cvtepi16_epi32((__m128i)__A), 16)); +} + +/// Convert Packed BF16 Data to Packed float Data using zeroing mask. +/// +/// \headerfile +/// +/// \param __U +/// A 4-bit mask. Elements are zeroed out when the corresponding mask +/// bit is not set. +/// \param __A +/// A 128-bit vector of [4 x bfloat]. +/// \returns A 128-bit vector of [4 x float] come from conversion of __A +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtpbh_ps(__mmask8 __U, __m128bh __A) { + return _mm_castsi128_ps((__m128i)_mm_slli_epi32( + (__m128i)_mm_maskz_cvtepi16_epi32((__mmask8)__U, (__m128i)__A), 16)); +} + +/// Convert Packed BF16 Data to Packed float Data using zeroing mask. +/// +/// \headerfile +/// +/// \param __U +/// A 8-bit mask. Elements are zeroed out when the corresponding mask +/// bit is not set. +/// \param __A +/// A 128-bit vector of [8 x bfloat]. +/// \returns A 256-bit vector of [8 x float] come from conversion of __A +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtpbh_ps(__mmask8 __U, __m128bh __A) { + return _mm256_castsi256_ps((__m256i)_mm256_slli_epi32( + (__m256i)_mm256_maskz_cvtepi16_epi32((__mmask8)__U, (__m128i)__A), 16)); +} + +/// Convert Packed BF16 Data to Packed float Data using merging mask. +/// +/// \headerfile +/// +/// \param __S +/// A 128-bit vector of [4 x float]. Elements are copied from __S when +/// the corresponding mask bit is not set. +/// \param __U +/// A 4-bit mask. Elements are zeroed out when the corresponding mask +/// bit is not set. +/// \param __A +/// A 128-bit vector of [4 x bfloat]. +/// \returns A 128-bit vector of [4 x float] come from conversion of __A +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_cvtpbh_ps(__m128 __S, __mmask8 __U, __m128bh __A) { + return _mm_castsi128_ps((__m128i)_mm_mask_slli_epi32( + (__m128i)__S, (__mmask8)__U, (__m128i)_mm_cvtepi16_epi32((__m128i)__A), + 16)); +} + +/// Convert Packed BF16 Data to Packed float Data using merging mask. +/// +/// \headerfile +/// +/// \param __S +/// A 256-bit vector of [8 x float]. Elements are copied from __S when +/// the corresponding mask bit is not set. +/// \param __U +/// A 8-bit mask. Elements are zeroed out when the corresponding mask +/// bit is not set. +/// \param __A +/// A 128-bit vector of [8 x bfloat]. +/// \returns A 256-bit vector of [8 x float] come from conversion of __A +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtpbh_ps(__m256 __S, __mmask8 __U, __m128bh __A) { + return _mm256_castsi256_ps((__m256i)_mm256_mask_slli_epi32( + (__m256i)__S, (__mmask8)__U, (__m256i)_mm256_cvtepi16_epi32((__m128i)__A), + 16)); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..186187e7d7d36a8a5b7790be7aaca44e0302f358 GIT binary patch literal 36258 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 directly; include instead." +#endif + +#ifndef __AVX512VLBITALGINTRIN_H +#define __AVX512VLBITALGINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bitalg"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bitalg"), __min_vector_width__(256))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_popcnt_epi16(__m256i __A) +{ + return (__m256i) __builtin_ia32_vpopcntw_256((__v16hi) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_popcnt_epi16(__m256i __A, __mmask16 __U, __m256i __B) +{ + return (__m256i) __builtin_ia32_selectw_256((__mmask16) __U, + (__v16hi) _mm256_popcnt_epi16(__B), + (__v16hi) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_popcnt_epi16(__mmask16 __U, __m256i __B) +{ + return _mm256_mask_popcnt_epi16((__m256i) _mm256_setzero_si256(), + __U, + __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_popcnt_epi16(__m128i __A) +{ + return (__m128i) __builtin_ia32_vpopcntw_128((__v8hi) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_popcnt_epi16(__m128i __A, __mmask8 __U, __m128i __B) +{ + return (__m128i) __builtin_ia32_selectw_128((__mmask8) __U, + (__v8hi) _mm_popcnt_epi16(__B), + (__v8hi) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_popcnt_epi16(__mmask8 __U, __m128i __B) +{ + return _mm_mask_popcnt_epi16((__m128i) _mm_setzero_si128(), + __U, + __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_popcnt_epi8(__m256i __A) +{ + return (__m256i) __builtin_ia32_vpopcntb_256((__v32qi) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_popcnt_epi8(__m256i __A, __mmask32 __U, __m256i __B) +{ + return (__m256i) __builtin_ia32_selectb_256((__mmask32) __U, + (__v32qi) _mm256_popcnt_epi8(__B), + (__v32qi) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_popcnt_epi8(__mmask32 __U, __m256i __B) +{ + return _mm256_mask_popcnt_epi8((__m256i) _mm256_setzero_si256(), + __U, + __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_popcnt_epi8(__m128i __A) +{ + return (__m128i) __builtin_ia32_vpopcntb_128((__v16qi) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_popcnt_epi8(__m128i __A, __mmask16 __U, __m128i __B) +{ + return (__m128i) __builtin_ia32_selectb_128((__mmask16) __U, + (__v16qi) _mm_popcnt_epi8(__B), + (__v16qi) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_popcnt_epi8(__mmask16 __U, __m128i __B) +{ + return _mm_mask_popcnt_epi8((__m128i) _mm_setzero_si128(), + __U, + __B); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 +_mm256_mask_bitshuffle_epi64_mask(__mmask32 __U, __m256i __A, __m256i __B) +{ + return (__mmask32) __builtin_ia32_vpshufbitqmb256_mask((__v32qi) __A, + (__v32qi) __B, + __U); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 +_mm256_bitshuffle_epi64_mask(__m256i __A, __m256i __B) +{ + return _mm256_mask_bitshuffle_epi64_mask((__mmask32) -1, + __A, + __B); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 +_mm_mask_bitshuffle_epi64_mask(__mmask16 __U, __m128i __A, __m128i __B) +{ + return (__mmask16) __builtin_ia32_vpshufbitqmb128_mask((__v16qi) __A, + (__v16qi) __B, + __U); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 +_mm_bitshuffle_epi64_mask(__m128i __A, __m128i __B) +{ + return _mm_mask_bitshuffle_epi64_mask((__mmask16) -1, + __A, + __B); +} + + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ac413527a55df71f51c6ce17a99bc05b7f1b1c03 GIT binary patch literal 18854 zcmcg!dvqMtd7oJ?2@gY!j*O`#gpMp5Th>}Dc`eq)7)dsgEfmQQA=|{#Xm)mXcdVJ6 z^~|guj)fnw3>XIpp%fYdIXRq$LV+~TrUcs1loB2%1VUO0<^-CC=9B|Y3Z)QW`rSKw z@9y2XJKFqH|1p+k?{~lNe&6qV-nCnVPoL5DJS&JoTgEihHoa|&YEL+3uFX+xr!A=_ z+iXi|Gh{8hMiCY$x|~f{wKOtiS`%6}9Z71IsyL=Kb7e&i!Y8d_Ti&+Xw5+1%lWN

    LAaTYO4K*dme%v=qeZ{?)=w)CgI4nv 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h new file mode 100644 index 00000000..148af5ab --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h @@ -0,0 +1,3161 @@ +/*===---- avx512vlbwintrin.h - AVX512VL and AVX512BW intrinsics ------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX512VLBWINTRIN_H +#define __AVX512VLBWINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bw"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bw"), __min_vector_width__(256))) + +/* Integer compare */ + +#define _mm_cmp_epi8_mask(a, b, p) \ + ((__mmask16)__builtin_ia32_cmpb128_mask((__v16qi)(__m128i)(a), \ + (__v16qi)(__m128i)(b), (int)(p), \ + (__mmask16)-1)) + +#define _mm_mask_cmp_epi8_mask(m, a, b, p) \ + ((__mmask16)__builtin_ia32_cmpb128_mask((__v16qi)(__m128i)(a), \ + (__v16qi)(__m128i)(b), (int)(p), \ + (__mmask16)(m))) + +#define _mm_cmp_epu8_mask(a, b, p) \ + ((__mmask16)__builtin_ia32_ucmpb128_mask((__v16qi)(__m128i)(a), \ + (__v16qi)(__m128i)(b), (int)(p), \ + (__mmask16)-1)) + +#define _mm_mask_cmp_epu8_mask(m, a, b, p) \ + ((__mmask16)__builtin_ia32_ucmpb128_mask((__v16qi)(__m128i)(a), \ + (__v16qi)(__m128i)(b), (int)(p), \ + (__mmask16)(m))) + +#define _mm256_cmp_epi8_mask(a, b, p) \ + ((__mmask32)__builtin_ia32_cmpb256_mask((__v32qi)(__m256i)(a), \ + (__v32qi)(__m256i)(b), (int)(p), \ + (__mmask32)-1)) + +#define _mm256_mask_cmp_epi8_mask(m, a, b, p) \ + ((__mmask32)__builtin_ia32_cmpb256_mask((__v32qi)(__m256i)(a), \ + (__v32qi)(__m256i)(b), (int)(p), \ + (__mmask32)(m))) + +#define _mm256_cmp_epu8_mask(a, b, p) \ + ((__mmask32)__builtin_ia32_ucmpb256_mask((__v32qi)(__m256i)(a), \ + (__v32qi)(__m256i)(b), (int)(p), \ + (__mmask32)-1)) + +#define _mm256_mask_cmp_epu8_mask(m, a, b, p) \ + ((__mmask32)__builtin_ia32_ucmpb256_mask((__v32qi)(__m256i)(a), \ + (__v32qi)(__m256i)(b), (int)(p), \ + (__mmask32)(m))) + +#define _mm_cmp_epi16_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpw128_mask((__v8hi)(__m128i)(a), \ + (__v8hi)(__m128i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm_mask_cmp_epi16_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpw128_mask((__v8hi)(__m128i)(a), \ + (__v8hi)(__m128i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm_cmp_epu16_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpw128_mask((__v8hi)(__m128i)(a), \ + (__v8hi)(__m128i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm_mask_cmp_epu16_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpw128_mask((__v8hi)(__m128i)(a), \ + (__v8hi)(__m128i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm256_cmp_epi16_mask(a, b, p) \ + ((__mmask16)__builtin_ia32_cmpw256_mask((__v16hi)(__m256i)(a), \ + (__v16hi)(__m256i)(b), (int)(p), \ + (__mmask16)-1)) + +#define _mm256_mask_cmp_epi16_mask(m, a, b, p) \ + ((__mmask16)__builtin_ia32_cmpw256_mask((__v16hi)(__m256i)(a), \ + (__v16hi)(__m256i)(b), (int)(p), \ + (__mmask16)(m))) + +#define _mm256_cmp_epu16_mask(a, b, p) \ + ((__mmask16)__builtin_ia32_ucmpw256_mask((__v16hi)(__m256i)(a), \ + (__v16hi)(__m256i)(b), (int)(p), \ + (__mmask16)-1)) + +#define _mm256_mask_cmp_epu16_mask(m, a, b, p) \ + ((__mmask16)__builtin_ia32_ucmpw256_mask((__v16hi)(__m256i)(a), \ + (__v16hi)(__m256i)(b), (int)(p), \ + (__mmask16)(m))) + +#define _mm_cmpeq_epi8_mask(A, B) \ + _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_EQ) +#define _mm_mask_cmpeq_epi8_mask(k, A, B) \ + _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm_cmpge_epi8_mask(A, B) \ + _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_GE) +#define _mm_mask_cmpge_epi8_mask(k, A, B) \ + _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm_cmpgt_epi8_mask(A, B) \ + _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_GT) +#define _mm_mask_cmpgt_epi8_mask(k, A, B) \ + _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm_cmple_epi8_mask(A, B) \ + _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_LE) +#define _mm_mask_cmple_epi8_mask(k, A, B) \ + _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm_cmplt_epi8_mask(A, B) \ + _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_LT) +#define _mm_mask_cmplt_epi8_mask(k, A, B) \ + _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm_cmpneq_epi8_mask(A, B) \ + _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_NE) +#define _mm_mask_cmpneq_epi8_mask(k, A, B) \ + _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm256_cmpeq_epi8_mask(A, B) \ + _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_EQ) +#define _mm256_mask_cmpeq_epi8_mask(k, A, B) \ + _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm256_cmpge_epi8_mask(A, B) \ + _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_GE) +#define _mm256_mask_cmpge_epi8_mask(k, A, B) \ + _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm256_cmpgt_epi8_mask(A, B) \ + _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_GT) +#define _mm256_mask_cmpgt_epi8_mask(k, A, B) \ + _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm256_cmple_epi8_mask(A, B) \ + _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_LE) +#define _mm256_mask_cmple_epi8_mask(k, A, B) \ + _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm256_cmplt_epi8_mask(A, B) \ + _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_LT) +#define _mm256_mask_cmplt_epi8_mask(k, A, B) \ + _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm256_cmpneq_epi8_mask(A, B) \ + _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_NE) +#define _mm256_mask_cmpneq_epi8_mask(k, A, B) \ + _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm_cmpeq_epu8_mask(A, B) \ + _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_EQ) +#define _mm_mask_cmpeq_epu8_mask(k, A, B) \ + _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm_cmpge_epu8_mask(A, B) \ + _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_GE) +#define _mm_mask_cmpge_epu8_mask(k, A, B) \ + _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm_cmpgt_epu8_mask(A, B) \ + _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_GT) +#define _mm_mask_cmpgt_epu8_mask(k, A, B) \ + _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm_cmple_epu8_mask(A, B) \ + _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_LE) +#define _mm_mask_cmple_epu8_mask(k, A, B) \ + _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm_cmplt_epu8_mask(A, B) \ + _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_LT) +#define _mm_mask_cmplt_epu8_mask(k, A, B) \ + _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm_cmpneq_epu8_mask(A, B) \ + _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_NE) +#define _mm_mask_cmpneq_epu8_mask(k, A, B) \ + _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm256_cmpeq_epu8_mask(A, B) \ + _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_EQ) +#define _mm256_mask_cmpeq_epu8_mask(k, A, B) \ + _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm256_cmpge_epu8_mask(A, B) \ + _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_GE) +#define _mm256_mask_cmpge_epu8_mask(k, A, B) \ + _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm256_cmpgt_epu8_mask(A, B) \ + _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_GT) +#define _mm256_mask_cmpgt_epu8_mask(k, A, B) \ + _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm256_cmple_epu8_mask(A, B) \ + _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_LE) +#define _mm256_mask_cmple_epu8_mask(k, A, B) \ + _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm256_cmplt_epu8_mask(A, B) \ + _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_LT) +#define _mm256_mask_cmplt_epu8_mask(k, A, B) \ + _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm256_cmpneq_epu8_mask(A, B) \ + _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_NE) +#define _mm256_mask_cmpneq_epu8_mask(k, A, B) \ + _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm_cmpeq_epi16_mask(A, B) \ + _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_EQ) +#define _mm_mask_cmpeq_epi16_mask(k, A, B) \ + _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm_cmpge_epi16_mask(A, B) \ + _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_GE) +#define _mm_mask_cmpge_epi16_mask(k, A, B) \ + _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm_cmpgt_epi16_mask(A, B) \ + _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_GT) +#define _mm_mask_cmpgt_epi16_mask(k, A, B) \ + _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm_cmple_epi16_mask(A, B) \ + _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_LE) +#define _mm_mask_cmple_epi16_mask(k, A, B) \ + _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm_cmplt_epi16_mask(A, B) \ + _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_LT) +#define _mm_mask_cmplt_epi16_mask(k, A, B) \ + _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm_cmpneq_epi16_mask(A, B) \ + _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_NE) +#define _mm_mask_cmpneq_epi16_mask(k, A, B) \ + _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm256_cmpeq_epi16_mask(A, B) \ + _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_EQ) +#define _mm256_mask_cmpeq_epi16_mask(k, A, B) \ + _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm256_cmpge_epi16_mask(A, B) \ + _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_GE) +#define _mm256_mask_cmpge_epi16_mask(k, A, B) \ + _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm256_cmpgt_epi16_mask(A, B) \ + _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_GT) +#define _mm256_mask_cmpgt_epi16_mask(k, A, B) \ + _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm256_cmple_epi16_mask(A, B) \ + _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_LE) +#define _mm256_mask_cmple_epi16_mask(k, A, B) \ + _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm256_cmplt_epi16_mask(A, B) \ + _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_LT) +#define _mm256_mask_cmplt_epi16_mask(k, A, B) \ + _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm256_cmpneq_epi16_mask(A, B) \ + _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_NE) +#define _mm256_mask_cmpneq_epi16_mask(k, A, B) \ + _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm_cmpeq_epu16_mask(A, B) \ + _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_EQ) +#define _mm_mask_cmpeq_epu16_mask(k, A, B) \ + _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm_cmpge_epu16_mask(A, B) \ + _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_GE) +#define _mm_mask_cmpge_epu16_mask(k, A, B) \ + _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm_cmpgt_epu16_mask(A, B) \ + _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_GT) +#define _mm_mask_cmpgt_epu16_mask(k, A, B) \ + _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm_cmple_epu16_mask(A, B) \ + _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_LE) +#define _mm_mask_cmple_epu16_mask(k, A, B) \ + _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm_cmplt_epu16_mask(A, B) \ + _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_LT) +#define _mm_mask_cmplt_epu16_mask(k, A, B) \ + _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm_cmpneq_epu16_mask(A, B) \ + _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_NE) +#define _mm_mask_cmpneq_epu16_mask(k, A, B) \ + _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm256_cmpeq_epu16_mask(A, B) \ + _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_EQ) +#define _mm256_mask_cmpeq_epu16_mask(k, A, B) \ + _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm256_cmpge_epu16_mask(A, B) \ + _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_GE) +#define _mm256_mask_cmpge_epu16_mask(k, A, B) \ + _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm256_cmpgt_epu16_mask(A, B) \ + _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_GT) +#define _mm256_mask_cmpgt_epu16_mask(k, A, B) \ + _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm256_cmple_epu16_mask(A, B) \ + _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_LE) +#define _mm256_mask_cmple_epu16_mask(k, A, B) \ + _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm256_cmplt_epu16_mask(A, B) \ + _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_LT) +#define _mm256_mask_cmplt_epu16_mask(k, A, B) \ + _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm256_cmpneq_epu16_mask(A, B) \ + _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_NE) +#define _mm256_mask_cmpneq_epu16_mask(k, A, B) \ + _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_NE) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_add_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B){ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_add_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_add_epi8(__mmask32 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_add_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_add_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_add_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_add_epi16(__mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_add_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sub_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_sub_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sub_epi8(__mmask32 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_sub_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sub_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_sub_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sub_epi16(__mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_sub_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_add_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_add_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_add_epi8(__mmask16 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_add_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_add_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_add_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_add_epi16(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_add_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sub_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_sub_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sub_epi8(__mmask16 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_sub_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sub_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_sub_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sub_epi16(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_sub_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mullo_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_mullo_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mullo_epi16(__mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_mullo_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mullo_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_mullo_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mullo_epi16(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_mullo_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_blend_epi8 (__mmask16 __U, __m128i __A, __m128i __W) +{ + return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U, + (__v16qi) __W, + (__v16qi) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_blend_epi8 (__mmask32 __U, __m256i __A, __m256i __W) +{ + return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U, + (__v32qi) __W, + (__v32qi) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_blend_epi16 (__mmask8 __U, __m128i __A, __m128i __W) +{ + return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U, + (__v8hi) __W, + (__v8hi) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_blend_epi16 (__mmask16 __U, __m256i __A, __m256i __W) +{ + return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U, + (__v16hi) __W, + (__v16hi) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_abs_epi8(__m128i __W, __mmask16 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_abs_epi8(__A), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_abs_epi8(__mmask16 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_abs_epi8(__A), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_abs_epi8(__m256i __W, __mmask32 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_abs_epi8(__A), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_abs_epi8 (__mmask32 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_abs_epi8(__A), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_abs_epi16(__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_abs_epi16(__A), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_abs_epi16(__mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_abs_epi16(__A), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_abs_epi16(__m256i __W, __mmask16 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_abs_epi16(__A), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_abs_epi16(__mmask16 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_abs_epi16(__A), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_packs_epi32(__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_packs_epi32(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_packs_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_packs_epi32(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_packs_epi32(__mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_packs_epi32(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_packs_epi32(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_packs_epi32(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_packs_epi16(__mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_packs_epi16(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_packs_epi16(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_packs_epi16(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_packs_epi16(__mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_packs_epi16(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_packs_epi16(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_packs_epi16(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_packus_epi32(__mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_packus_epi32(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_packus_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_packus_epi32(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_packus_epi32(__mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_packus_epi32(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_packus_epi32(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_packus_epi32(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_packus_epi16(__mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_packus_epi16(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_packus_epi16(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_packus_epi16(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_packus_epi16(__mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_packus_epi16(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_packus_epi16(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_packus_epi16(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_adds_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_adds_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_adds_epi8(__mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_adds_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_adds_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_adds_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_adds_epi8(__mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_adds_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_adds_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_adds_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_adds_epi16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_adds_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_adds_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_adds_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_adds_epi16(__mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_adds_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_adds_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_adds_epu8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_adds_epu8(__mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_adds_epu8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_adds_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_adds_epu8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_adds_epu8(__mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_adds_epu8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_adds_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_adds_epu16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_adds_epu16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_adds_epu16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_adds_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_adds_epu16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_adds_epu16(__mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_adds_epu16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_avg_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_avg_epu8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_avg_epu8(__mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_avg_epu8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_avg_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_avg_epu8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_avg_epu8(__mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_avg_epu8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_avg_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_avg_epu16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_avg_epu16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_avg_epu16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_avg_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_avg_epu16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_avg_epu16(__mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_avg_epu16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_max_epi8(__mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_max_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_max_epi8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_max_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_epi8(__mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_max_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_max_epi8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_max_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_max_epi16(__mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_max_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_max_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_max_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_epi16(__mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_max_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_max_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_max_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_max_epu8(__mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_max_epu8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_max_epu8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_max_epu8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_epu8 (__mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_max_epu8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_max_epu8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_max_epu8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_max_epu16(__mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_max_epu16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_max_epu16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_max_epu16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_epu16(__mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_max_epu16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_max_epu16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_max_epu16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_min_epi8(__mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_min_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_min_epi8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_min_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_epi8(__mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_min_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_min_epi8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_min_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_min_epi16(__mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_min_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_min_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_min_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_epi16(__mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_min_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_min_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_min_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_min_epu8(__mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_min_epu8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_min_epu8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm_min_epu8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_epu8 (__mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_min_epu8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_min_epu8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, + (__v32qi)_mm256_min_epu8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_min_epu16(__mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_min_epu16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_min_epu16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_min_epu16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_epu16(__mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_min_epu16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_min_epu16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_min_epu16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_shuffle_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_shuffle_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_shuffle_epi8(__mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_shuffle_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_shuffle_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_shuffle_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_shuffle_epi8(__mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_shuffle_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_subs_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_subs_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_subs_epi8(__mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_subs_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_subs_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_subs_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_subs_epi8(__mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_subs_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_subs_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_subs_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_subs_epi16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_subs_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_subs_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_subs_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_subs_epi16(__mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_subs_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_subs_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_subs_epu8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_subs_epu8(__mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_subs_epu8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_subs_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_subs_epu8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_subs_epu8(__mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_subs_epu8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_subs_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_subs_epu16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_subs_epu16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_subs_epu16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_subs_epu16(__m256i __W, __mmask16 __U, __m256i __A, + __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_subs_epu16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_subs_epu16(__mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_subs_epu16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_permutex2var_epi16(__m128i __A, __m128i __I, __m128i __B) +{ + return (__m128i)__builtin_ia32_vpermi2varhi128((__v8hi)__A, (__v8hi)__I, + (__v8hi) __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_permutex2var_epi16(__m128i __A, __mmask8 __U, __m128i __I, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128(__U, + (__v8hi)_mm_permutex2var_epi16(__A, __I, __B), + (__v8hi)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask2_permutex2var_epi16(__m128i __A, __m128i __I, __mmask8 __U, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128(__U, + (__v8hi)_mm_permutex2var_epi16(__A, __I, __B), + (__v8hi)__I); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_permutex2var_epi16 (__mmask8 __U, __m128i __A, __m128i __I, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128(__U, + (__v8hi)_mm_permutex2var_epi16(__A, __I, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_permutex2var_epi16(__m256i __A, __m256i __I, __m256i __B) +{ + return (__m256i)__builtin_ia32_vpermi2varhi256((__v16hi)__A, (__v16hi)__I, + (__v16hi)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_permutex2var_epi16(__m256i __A, __mmask16 __U, __m256i __I, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256(__U, + (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B), + (__v16hi)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask2_permutex2var_epi16(__m256i __A, __m256i __I, __mmask16 __U, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256(__U, + (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B), + (__v16hi)__I); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutex2var_epi16 (__mmask16 __U, __m256i __A, __m256i __I, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256(__U, + (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_maddubs_epi16(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_maddubs_epi16(__X, __Y), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_maddubs_epi16(__mmask8 __U, __m128i __X, __m128i __Y) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_maddubs_epi16(__X, __Y), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_maddubs_epi16(__m256i __W, __mmask16 __U, __m256i __X, + __m256i __Y) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_maddubs_epi16(__X, __Y), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_maddubs_epi16(__mmask16 __U, __m256i __X, __m256i __Y) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_maddubs_epi16(__X, __Y), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_madd_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_madd_epi16(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_madd_epi16(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_madd_epi16(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_madd_epi16(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_madd_epi16(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_madd_epi16(__mmask8 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_madd_epi16(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtsepi16_epi8 (__m128i __A) { + return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A, + (__v16qi) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) { + return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsepi16_epi8 (__mmask8 __M, __m128i __A) { + return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A, + (__v16qi) _mm_setzero_si128(), + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtsepi16_epi8 (__m256i __A) { + return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A, + (__v16qi) _mm_setzero_si128(), + (__mmask16) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A) { + return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtsepi16_epi8 (__mmask16 __M, __m256i __A) { + return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A, + (__v16qi) _mm_setzero_si128(), + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtusepi16_epi8 (__m128i __A) { + return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A, + (__v16qi) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) { + return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtusepi16_epi8 (__mmask8 __M, __m128i __A) { + return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A, + (__v16qi) _mm_setzero_si128(), + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtusepi16_epi8 (__m256i __A) { + return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A, + (__v16qi) _mm_setzero_si128(), + (__mmask16) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A) { + return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtusepi16_epi8 (__mmask16 __M, __m256i __A) { + return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A, + (__v16qi) _mm_setzero_si128(), + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtepi16_epi8 (__m128i __A) { + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v8hi)__A, __v8qi), + (__v8qi){0, 0, 0, 0, 0, 0, 0, 0}, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) { + return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi16_epi8 (__mmask8 __M, __m128i __A) { + return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A, + (__v16qi) _mm_setzero_si128(), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi16_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovwb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M); +} + + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovswb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovuswb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi16_epi8 (__m256i __A) { + return (__m128i)__builtin_convertvector((__v16hi) __A, __v16qi); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm256_cvtepi16_epi8(__A), + (__v16qi)__O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi16_epi8 (__mmask16 __M, __m256i __A) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, + (__v16qi)_mm256_cvtepi16_epi8(__A), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi16_storeu_epi8 (void * __P, __mmask16 __M, __m256i __A) +{ + __builtin_ia32_pmovwb256mem_mask ((__v16qi *) __P, (__v16hi) __A, __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask16 __M, __m256i __A) +{ + __builtin_ia32_pmovswb256mem_mask ((__v16qi *) __P, (__v16hi) __A, __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask16 __M, __m256i __A) +{ + __builtin_ia32_pmovuswb256mem_mask ((__v16qi*) __P, (__v16hi) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mulhrs_epi16(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_mulhrs_epi16(__X, __Y), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mulhrs_epi16(__mmask8 __U, __m128i __X, __m128i __Y) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_mulhrs_epi16(__X, __Y), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mulhrs_epi16(__m256i __W, __mmask16 __U, __m256i __X, __m256i __Y) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_mulhrs_epi16(__X, __Y), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mulhrs_epi16(__mmask16 __U, __m256i __X, __m256i __Y) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_mulhrs_epi16(__X, __Y), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mulhi_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_mulhi_epu16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mulhi_epu16(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_mulhi_epu16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mulhi_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_mulhi_epu16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mulhi_epu16(__mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_mulhi_epu16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mulhi_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_mulhi_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mulhi_epi16(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_mulhi_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mulhi_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_mulhi_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mulhi_epi16(__mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_mulhi_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_unpackhi_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_unpackhi_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_unpackhi_epi8(__mmask16 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_unpackhi_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_unpackhi_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_unpackhi_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpackhi_epi8(__mmask32 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_unpackhi_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_unpackhi_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_unpackhi_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_unpackhi_epi16(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_unpackhi_epi16(__A, __B), + (__v8hi) _mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_unpackhi_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_unpackhi_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpackhi_epi16(__mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_unpackhi_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_unpacklo_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_unpacklo_epi8(__A, __B), + (__v16qi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_unpacklo_epi8(__mmask16 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, + (__v16qi)_mm_unpacklo_epi8(__A, __B), + (__v16qi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_unpacklo_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_unpacklo_epi8(__A, __B), + (__v32qi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpacklo_epi8(__mmask32 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, + (__v32qi)_mm256_unpacklo_epi8(__A, __B), + (__v32qi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_unpacklo_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_unpacklo_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_unpacklo_epi16(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_unpacklo_epi16(__A, __B), + (__v8hi) _mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_unpacklo_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_unpacklo_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpacklo_epi16(__mmask16 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_unpacklo_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi8_epi16(__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_cvtepi8_epi16(__A), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi8_epi16(__mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_cvtepi8_epi16(__A), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi8_epi16(__m256i __W, __mmask16 __U, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_cvtepi8_epi16(__A), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi8_epi16(__mmask16 __U, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_cvtepi8_epi16(__A), + (__v16hi)_mm256_setzero_si256()); +} + + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepu8_epi16(__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_cvtepu8_epi16(__A), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepu8_epi16(__mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_cvtepu8_epi16(__A), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepu8_epi16(__m256i __W, __mmask16 __U, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_cvtepu8_epi16(__A), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepu8_epi16 (__mmask16 __U, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_cvtepu8_epi16(__A), + (__v16hi)_mm256_setzero_si256()); +} + + +#define _mm_mask_shufflehi_epi16(W, U, A, imm) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_shufflehi_epi16((A), (imm)), \ + (__v8hi)(__m128i)(W))) + +#define _mm_maskz_shufflehi_epi16(U, A, imm) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_shufflehi_epi16((A), (imm)), \ + (__v8hi)_mm_setzero_si128())) + +#define _mm256_mask_shufflehi_epi16(W, U, A, imm) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_shufflehi_epi16((A), (imm)), \ + (__v16hi)(__m256i)(W))) + +#define _mm256_maskz_shufflehi_epi16(U, A, imm) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_shufflehi_epi16((A), (imm)), \ + (__v16hi)_mm256_setzero_si256())) + +#define _mm_mask_shufflelo_epi16(W, U, A, imm) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_shufflelo_epi16((A), (imm)), \ + (__v8hi)(__m128i)(W))) + +#define _mm_maskz_shufflelo_epi16(U, A, imm) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_shufflelo_epi16((A), (imm)), \ + (__v8hi)_mm_setzero_si128())) + +#define _mm256_mask_shufflelo_epi16(W, U, A, imm) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_shufflelo_epi16((A), \ + (imm)), \ + (__v16hi)(__m256i)(W))) + +#define _mm256_maskz_shufflelo_epi16(U, A, imm) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_shufflelo_epi16((A), \ + (imm)), \ + (__v16hi)_mm256_setzero_si256())) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sllv_epi16(__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_psllv16hi((__v16hi)__A, (__v16hi)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sllv_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_sllv_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sllv_epi16(__mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_sllv_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_sllv_epi16(__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_psllv8hi((__v8hi)__A, (__v8hi)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sllv_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_sllv_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sllv_epi16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_sllv_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sll_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_sll_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sll_epi16 (__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_sll_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sll_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_sll_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sll_epi16(__mmask16 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_sll_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_slli_epi16(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_slli_epi16(__A, (int)__B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_slli_epi16(__A, (int)__B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_slli_epi16(__m256i __W, __mmask16 __U, __m256i __A, + unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_slli_epi16(__A, (int)__B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_slli_epi16(__mmask16 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_slli_epi16(__A, (int)__B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srlv_epi16(__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_psrlv16hi((__v16hi)__A, (__v16hi)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srlv_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srlv_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srlv_epi16(__mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srlv_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_srlv_epi16(__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_psrlv8hi((__v8hi)__A, (__v8hi)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srlv_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srlv_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srlv_epi16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srlv_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srav_epi16(__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_psrav16hi((__v16hi)__A, (__v16hi)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srav_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srav_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srav_epi16(__mmask16 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srav_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_srav_epi16(__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_psrav8hi((__v8hi)__A, (__v8hi)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srav_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srav_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srav_epi16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srav_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sra_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_sra_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sra_epi16(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_sra_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sra_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_sra_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sra_epi16(__mmask16 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_sra_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srai_epi16(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srai_epi16(__A, (int)__B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srai_epi16(__mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srai_epi16(__A, (int)__B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srai_epi16(__m256i __W, __mmask16 __U, __m256i __A, + unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srai_epi16(__A, (int)__B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srai_epi16(__mmask16 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srai_epi16(__A, (int)__B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srl_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srl_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srl_epi16 (__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srl_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srl_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srl_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srl_epi16(__mmask16 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srl_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srli_epi16(__m128i __W, __mmask8 __U, __m128i __A, int __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srli_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srli_epi16 (__mmask8 __U, __m128i __A, int __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, + (__v8hi)_mm_srli_epi16(__A, __B), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srli_epi16(__m256i __W, __mmask16 __U, __m256i __A, int __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srli_epi16(__A, __B), + (__v16hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srli_epi16(__mmask16 __U, __m256i __A, int __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, + (__v16hi)_mm256_srli_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mov_epi16 (__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U, + (__v8hi) __A, + (__v8hi) __W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mov_epi16 (__mmask8 __U, __m128i __A) +{ + return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U, + (__v8hi) __A, + (__v8hi) _mm_setzero_si128 ()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mov_epi16 (__m256i __W, __mmask16 __U, __m256i __A) +{ + return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U, + (__v16hi) __A, + (__v16hi) __W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mov_epi16 (__mmask16 __U, __m256i __A) +{ + return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U, + (__v16hi) __A, + (__v16hi) _mm256_setzero_si256 ()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mov_epi8 (__m128i __W, __mmask16 __U, __m128i __A) +{ + return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U, + (__v16qi) __A, + (__v16qi) __W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mov_epi8 (__mmask16 __U, __m128i __A) +{ + return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U, + (__v16qi) __A, + (__v16qi) _mm_setzero_si128 ()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mov_epi8 (__m256i __W, __mmask32 __U, __m256i __A) +{ + return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U, + (__v32qi) __A, + (__v32qi) __W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mov_epi8 (__mmask32 __U, __m256i __A) +{ + return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U, + (__v32qi) __A, + (__v32qi) _mm256_setzero_si256 ()); +} + + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_set1_epi8 (__m128i __O, __mmask16 __M, char __A) +{ + return (__m128i) __builtin_ia32_selectb_128(__M, + (__v16qi) _mm_set1_epi8(__A), + (__v16qi) __O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_set1_epi8 (__mmask16 __M, char __A) +{ + return (__m128i) __builtin_ia32_selectb_128(__M, + (__v16qi) _mm_set1_epi8(__A), + (__v16qi) _mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_set1_epi8 (__m256i __O, __mmask32 __M, char __A) +{ + return (__m256i) __builtin_ia32_selectb_256(__M, + (__v32qi) _mm256_set1_epi8(__A), + (__v32qi) __O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_set1_epi8 (__mmask32 __M, char __A) +{ + return (__m256i) __builtin_ia32_selectb_256(__M, + (__v32qi) _mm256_set1_epi8(__A), + (__v32qi) _mm256_setzero_si256()); +} + +static __inline __m128i __DEFAULT_FN_ATTRS128 +_mm_loadu_epi16 (void const *__P) +{ + struct __loadu_epi16 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi16*)__P)->__v; +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_loadu_epi16 (__m128i __W, __mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_loaddquhi128_mask ((const __v8hi *) __P, + (__v8hi) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_loadu_epi16 (__mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_loaddquhi128_mask ((const __v8hi *) __P, + (__v8hi) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline __m256i __DEFAULT_FN_ATTRS256 +_mm256_loadu_epi16 (void const *__P) +{ + struct __loadu_epi16 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi16*)__P)->__v; +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_loadu_epi16 (__m256i __W, __mmask16 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_loaddquhi256_mask ((const __v16hi *) __P, + (__v16hi) __W, + (__mmask16) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_loadu_epi16 (__mmask16 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_loaddquhi256_mask ((const __v16hi *) __P, + (__v16hi) + _mm256_setzero_si256 (), + (__mmask16) __U); +} + +static __inline __m128i __DEFAULT_FN_ATTRS128 +_mm_loadu_epi8 (void const *__P) +{ + struct __loadu_epi8 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi8*)__P)->__v; +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_loadu_epi8 (__m128i __W, __mmask16 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_loaddquqi128_mask ((const __v16qi *) __P, + (__v16qi) __W, + (__mmask16) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_loadu_epi8 (__mmask16 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_loaddquqi128_mask ((const __v16qi *) __P, + (__v16qi) + _mm_setzero_si128 (), + (__mmask16) __U); +} + +static __inline __m256i __DEFAULT_FN_ATTRS256 +_mm256_loadu_epi8 (void const *__P) +{ + struct __loadu_epi8 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi8*)__P)->__v; +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_loadu_epi8 (__m256i __W, __mmask32 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_loaddquqi256_mask ((const __v32qi *) __P, + (__v32qi) __W, + (__mmask32) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_loadu_epi8 (__mmask32 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_loaddquqi256_mask ((const __v32qi *) __P, + (__v32qi) + _mm256_setzero_si256 (), + (__mmask32) __U); +} + +static __inline void __DEFAULT_FN_ATTRS128 +_mm_storeu_epi16 (void *__P, __m128i __A) +{ + struct __storeu_epi16 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi16*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_storeu_epi16 (void *__P, __mmask8 __U, __m128i __A) +{ + __builtin_ia32_storedquhi128_mask ((__v8hi *) __P, + (__v8hi) __A, + (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS256 +_mm256_storeu_epi16 (void *__P, __m256i __A) +{ + struct __storeu_epi16 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi16*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_storeu_epi16 (void *__P, __mmask16 __U, __m256i __A) +{ + __builtin_ia32_storedquhi256_mask ((__v16hi *) __P, + (__v16hi) __A, + (__mmask16) __U); +} + +static __inline void __DEFAULT_FN_ATTRS128 +_mm_storeu_epi8 (void *__P, __m128i __A) +{ + struct __storeu_epi8 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi8*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_storeu_epi8 (void *__P, __mmask16 __U, __m128i __A) +{ + __builtin_ia32_storedquqi128_mask ((__v16qi *) __P, + (__v16qi) __A, + (__mmask16) __U); +} + +static __inline void __DEFAULT_FN_ATTRS256 +_mm256_storeu_epi8 (void *__P, __m256i __A) +{ + struct __storeu_epi8 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi8*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_storeu_epi8 (void *__P, __mmask32 __U, __m256i __A) +{ + __builtin_ia32_storedquqi256_mask ((__v32qi *) __P, + (__v32qi) __A, + (__mmask32) __U); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 +_mm_test_epi8_mask (__m128i __A, __m128i __B) +{ + return _mm_cmpneq_epi8_mask (_mm_and_si128(__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 +_mm_mask_test_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_cmpneq_epi8_mask (__U, _mm_and_si128 (__A, __B), + _mm_setzero_si128()); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 +_mm256_test_epi8_mask (__m256i __A, __m256i __B) +{ + return _mm256_cmpneq_epi8_mask (_mm256_and_si256(__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 +_mm256_mask_test_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_cmpneq_epi8_mask (__U, _mm256_and_si256(__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_test_epi16_mask (__m128i __A, __m128i __B) +{ + return _mm_cmpneq_epi16_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_mask_test_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_cmpneq_epi16_mask (__U, _mm_and_si128 (__A, __B), + _mm_setzero_si128()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 +_mm256_test_epi16_mask (__m256i __A, __m256i __B) +{ + return _mm256_cmpneq_epi16_mask (_mm256_and_si256 (__A, __B), + _mm256_setzero_si256 ()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 +_mm256_mask_test_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_cmpneq_epi16_mask (__U, _mm256_and_si256(__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 +_mm_testn_epi8_mask (__m128i __A, __m128i __B) +{ + return _mm_cmpeq_epi8_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 +_mm_mask_testn_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_cmpeq_epi8_mask (__U, _mm_and_si128 (__A, __B), + _mm_setzero_si128()); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 +_mm256_testn_epi8_mask (__m256i __A, __m256i __B) +{ + return _mm256_cmpeq_epi8_mask (_mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 +_mm256_mask_testn_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_cmpeq_epi8_mask (__U, _mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_testn_epi16_mask (__m128i __A, __m128i __B) +{ + return _mm_cmpeq_epi16_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_mask_testn_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_cmpeq_epi16_mask (__U, _mm_and_si128(__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 +_mm256_testn_epi16_mask (__m256i __A, __m256i __B) +{ + return _mm256_cmpeq_epi16_mask (_mm256_and_si256(__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 +_mm256_mask_testn_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_cmpeq_epi16_mask (__U, _mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 +_mm_movepi8_mask (__m128i __A) +{ + return (__mmask16) __builtin_ia32_cvtb2mask128 ((__v16qi) __A); +} + +static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 +_mm256_movepi8_mask (__m256i __A) +{ + return (__mmask32) __builtin_ia32_cvtb2mask256 ((__v32qi) __A); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_movepi16_mask (__m128i __A) +{ + return (__mmask8) __builtin_ia32_cvtw2mask128 ((__v8hi) __A); +} + +static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 +_mm256_movepi16_mask (__m256i __A) +{ + return (__mmask16) __builtin_ia32_cvtw2mask256 ((__v16hi) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_movm_epi8 (__mmask16 __A) +{ + return (__m128i) __builtin_ia32_cvtmask2b128 (__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_movm_epi8 (__mmask32 __A) +{ + return (__m256i) __builtin_ia32_cvtmask2b256 (__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_movm_epi16 (__mmask8 __A) +{ + return (__m128i) __builtin_ia32_cvtmask2w128 (__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_movm_epi16 (__mmask16 __A) +{ + return (__m256i) __builtin_ia32_cvtmask2w256 (__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_broadcastb_epi8 (__m128i __O, __mmask16 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectb_128(__M, + (__v16qi) _mm_broadcastb_epi8(__A), + (__v16qi) __O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_broadcastb_epi8 (__mmask16 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectb_128(__M, + (__v16qi) _mm_broadcastb_epi8(__A), + (__v16qi) _mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcastb_epi8 (__m256i __O, __mmask32 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectb_256(__M, + (__v32qi) _mm256_broadcastb_epi8(__A), + (__v32qi) __O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcastb_epi8 (__mmask32 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectb_256(__M, + (__v32qi) _mm256_broadcastb_epi8(__A), + (__v32qi) _mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_broadcastw_epi16 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectw_128(__M, + (__v8hi) _mm_broadcastw_epi16(__A), + (__v8hi) __O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_broadcastw_epi16 (__mmask8 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectw_128(__M, + (__v8hi) _mm_broadcastw_epi16(__A), + (__v8hi) _mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcastw_epi16 (__m256i __O, __mmask16 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectw_256(__M, + (__v16hi) _mm256_broadcastw_epi16(__A), + (__v16hi) __O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcastw_epi16 (__mmask16 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectw_256(__M, + (__v16hi) _mm256_broadcastw_epi16(__A), + (__v16hi) _mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_set1_epi16 (__m256i __O, __mmask16 __M, short __A) +{ + return (__m256i) __builtin_ia32_selectw_256 (__M, + (__v16hi) _mm256_set1_epi16(__A), + (__v16hi) __O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_set1_epi16 (__mmask16 __M, short __A) +{ + return (__m256i) __builtin_ia32_selectw_256(__M, + (__v16hi)_mm256_set1_epi16(__A), + (__v16hi) _mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_set1_epi16 (__m128i __O, __mmask8 __M, short __A) +{ + return (__m128i) __builtin_ia32_selectw_128(__M, + (__v8hi) _mm_set1_epi16(__A), + (__v8hi) __O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_set1_epi16 (__mmask8 __M, short __A) +{ + return (__m128i) __builtin_ia32_selectw_128(__M, + (__v8hi) _mm_set1_epi16(__A), + (__v8hi) _mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_permutexvar_epi16 (__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_permvarhi128((__v8hi) __B, (__v8hi) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_permutexvar_epi16 (__mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_permutexvar_epi16(__A, __B), + (__v8hi) _mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_permutexvar_epi16 (__m128i __W, __mmask8 __M, __m128i __A, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, + (__v8hi)_mm_permutexvar_epi16(__A, __B), + (__v8hi)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_permutexvar_epi16 (__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_permvarhi256((__v16hi) __B, (__v16hi) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutexvar_epi16 (__mmask16 __M, __m256i __A, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_permutexvar_epi16(__A, __B), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_permutexvar_epi16 (__m256i __W, __mmask16 __M, __m256i __A, + __m256i __B) +{ + return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, + (__v16hi)_mm256_permutexvar_epi16(__A, __B), + (__v16hi)__W); +} + +#define _mm_mask_alignr_epi8(W, U, A, B, N) \ + ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \ + (__v16qi)_mm_alignr_epi8((A), (B), (int)(N)), \ + (__v16qi)(__m128i)(W))) + +#define _mm_maskz_alignr_epi8(U, A, B, N) \ + ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \ + (__v16qi)_mm_alignr_epi8((A), (B), (int)(N)), \ + (__v16qi)_mm_setzero_si128())) + +#define _mm256_mask_alignr_epi8(W, U, A, B, N) \ + ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \ + (__v32qi)_mm256_alignr_epi8((A), (B), (int)(N)), \ + (__v32qi)(__m256i)(W))) + +#define _mm256_maskz_alignr_epi8(U, A, B, N) \ + ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \ + (__v32qi)_mm256_alignr_epi8((A), (B), (int)(N)), \ + (__v32qi)_mm256_setzero_si256())) + +#define _mm_dbsad_epu8(A, B, imm) \ + ((__m128i)__builtin_ia32_dbpsadbw128((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), (int)(imm))) + +#define _mm_mask_dbsad_epu8(W, U, A, B, imm) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_dbsad_epu8((A), (B), (imm)), \ + (__v8hi)(__m128i)(W))) + +#define _mm_maskz_dbsad_epu8(U, A, B, imm) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_dbsad_epu8((A), (B), (imm)), \ + (__v8hi)_mm_setzero_si128())) + +#define _mm256_dbsad_epu8(A, B, imm) \ + ((__m256i)__builtin_ia32_dbpsadbw256((__v32qi)(__m256i)(A), \ + (__v32qi)(__m256i)(B), (int)(imm))) + +#define _mm256_mask_dbsad_epu8(W, U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_dbsad_epu8((A), (B), (imm)), \ + (__v16hi)(__m256i)(W))) + +#define _mm256_maskz_dbsad_epu8(U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_dbsad_epu8((A), (B), (imm)), \ + (__v16hi)_mm256_setzero_si256())) + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_reduce_add_epi16(__m128i __W) { + return __builtin_reduce_add((__v8hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_reduce_mul_epi16(__m128i __W) { + return __builtin_reduce_mul((__v8hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_reduce_and_epi16(__m128i __W) { + return __builtin_reduce_and((__v8hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_reduce_or_epi16(__m128i __W) { + return __builtin_reduce_or((__v8hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_add_epi16( __mmask8 __M, __m128i __W) { + __W = _mm_maskz_mov_epi16(__M, __W); + return __builtin_reduce_add((__v8hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_mul_epi16( __mmask8 __M, __m128i __W) { + __W = _mm_mask_mov_epi16(_mm_set1_epi16(1), __M, __W); + return __builtin_reduce_mul((__v8hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_and_epi16( __mmask8 __M, __m128i __W) { + __W = _mm_mask_mov_epi16(_mm_set1_epi16(-1), __M, __W); + return __builtin_reduce_and((__v8hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_or_epi16(__mmask8 __M, __m128i __W) { + __W = _mm_maskz_mov_epi16(__M, __W); + return __builtin_reduce_or((__v8hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_reduce_max_epi16(__m128i __V) { + return __builtin_reduce_max((__v8hi)__V); +} + +static __inline__ unsigned short __DEFAULT_FN_ATTRS128 +_mm_reduce_max_epu16(__m128i __V) { + return __builtin_reduce_max((__v8hu)__V); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_reduce_min_epi16(__m128i __V) { + return __builtin_reduce_min((__v8hi)__V); +} + +static __inline__ unsigned short __DEFAULT_FN_ATTRS128 +_mm_reduce_min_epu16(__m128i __V) { + return __builtin_reduce_min((__v8hu)__V); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_max_epi16(__mmask16 __M, __m128i __V) { + __V = _mm_mask_mov_epi16(_mm_set1_epi16(-32767-1), __M, __V); + return __builtin_reduce_max((__v8hi)__V); +} + +static __inline__ unsigned short __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_max_epu16(__mmask16 __M, __m128i __V) { + __V = _mm_maskz_mov_epi16(__M, __V); + return __builtin_reduce_max((__v8hu)__V); +} + +static __inline__ short __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_min_epi16(__mmask16 __M, __m128i __V) { + __V = _mm_mask_mov_epi16(_mm_set1_epi16(32767), __M, __V); + return __builtin_reduce_min((__v8hi)__V); +} + +static __inline__ unsigned short __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_min_epu16(__mmask16 __M, __m128i __V) { + __V = _mm_mask_mov_epi16(_mm_set1_epi16(-1), __M, __V); + return __builtin_reduce_min((__v8hu)__V); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_reduce_add_epi16(__m256i __W) { + return __builtin_reduce_add((__v16hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_reduce_mul_epi16(__m256i __W) { + return __builtin_reduce_mul((__v16hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_reduce_and_epi16(__m256i __W) { + return __builtin_reduce_and((__v16hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_reduce_or_epi16(__m256i __W) { + return __builtin_reduce_or((__v16hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_add_epi16( __mmask16 __M, __m256i __W) { + __W = _mm256_maskz_mov_epi16(__M, __W); + return __builtin_reduce_add((__v16hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_mul_epi16( __mmask16 __M, __m256i __W) { + __W = _mm256_mask_mov_epi16(_mm256_set1_epi16(1), __M, __W); + return __builtin_reduce_mul((__v16hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_and_epi16( __mmask16 __M, __m256i __W) { + __W = _mm256_mask_mov_epi16(_mm256_set1_epi16(-1), __M, __W); + return __builtin_reduce_and((__v16hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_or_epi16(__mmask16 __M, __m256i __W) { + __W = _mm256_maskz_mov_epi16(__M, __W); + return __builtin_reduce_or((__v16hi)__W); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_reduce_max_epi16(__m256i __V) { + return __builtin_reduce_max((__v16hi)__V); +} + +static __inline__ unsigned short __DEFAULT_FN_ATTRS256 +_mm256_reduce_max_epu16(__m256i __V) { + return __builtin_reduce_max((__v16hu)__V); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_reduce_min_epi16(__m256i __V) { + return __builtin_reduce_min((__v16hi)__V); +} + +static __inline__ unsigned short __DEFAULT_FN_ATTRS256 +_mm256_reduce_min_epu16(__m256i __V) { + return __builtin_reduce_min((__v16hu)__V); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_max_epi16(__mmask16 __M, __m256i __V) { + __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(-32767-1), __M, __V); + return __builtin_reduce_max((__v16hi)__V); +} + +static __inline__ unsigned short __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_max_epu16(__mmask16 __M, __m256i __V) { + __V = _mm256_maskz_mov_epi16(__M, __V); + return __builtin_reduce_max((__v16hu)__V); +} + +static __inline__ short __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_min_epi16(__mmask16 __M, __m256i __V) { + __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(32767), __M, __V); + return __builtin_reduce_min((__v16hi)__V); +} + +static __inline__ unsigned short __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_min_epu16(__mmask16 __M, __m256i __V) { + __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(-1), __M, __V); + return __builtin_reduce_min((__v16hu)__V); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_reduce_add_epi8(__m128i __W) { + return __builtin_reduce_add((__v16qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_reduce_mul_epi8(__m128i __W) { + return __builtin_reduce_mul((__v16qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_reduce_and_epi8(__m128i __W) { + return __builtin_reduce_and((__v16qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_reduce_or_epi8(__m128i __W) { + return __builtin_reduce_or((__v16qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_add_epi8(__mmask16 __M, __m128i __W) { + __W = _mm_maskz_mov_epi8(__M, __W); + return __builtin_reduce_add((__v16qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_mul_epi8(__mmask16 __M, __m128i __W) { + __W = _mm_mask_mov_epi8(_mm_set1_epi8(1), __M, __W); + return __builtin_reduce_mul((__v16qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_and_epi8(__mmask16 __M, __m128i __W) { + __W = _mm_mask_mov_epi8(_mm_set1_epi8(-1), __M, __W); + return __builtin_reduce_and((__v16qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_or_epi8(__mmask16 __M, __m128i __W) { + __W = _mm_maskz_mov_epi8(__M, __W); + return __builtin_reduce_or((__v16qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_reduce_max_epi8(__m128i __V) { + return __builtin_reduce_max((__v16qs)__V); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS128 +_mm_reduce_max_epu8(__m128i __V) { + return __builtin_reduce_max((__v16qu)__V); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_reduce_min_epi8(__m128i __V) { + return __builtin_reduce_min((__v16qs)__V); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS128 +_mm_reduce_min_epu8(__m128i __V) { + return __builtin_reduce_min((__v16qu)__V); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_max_epi8(__mmask16 __M, __m128i __V) { + __V = _mm_mask_mov_epi8(_mm_set1_epi8(-127-1), __M, __V); + return __builtin_reduce_max((__v16qs)__V); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_max_epu8(__mmask16 __M, __m128i __V) { + __V = _mm_maskz_mov_epi8(__M, __V); + return __builtin_reduce_max((__v16qu)__V); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_min_epi8(__mmask16 __M, __m128i __V) { + __V = _mm_mask_mov_epi8(_mm_set1_epi8(127), __M, __V); + return __builtin_reduce_min((__v16qs)__V); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS128 +_mm_mask_reduce_min_epu8(__mmask16 __M, __m128i __V) { + __V = _mm_mask_mov_epi8(_mm_set1_epi8(-1), __M, __V); + return __builtin_reduce_min((__v16qu)__V); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_reduce_add_epi8(__m256i __W) { + return __builtin_reduce_add((__v32qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_reduce_mul_epi8(__m256i __W) { + return __builtin_reduce_mul((__v32qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_reduce_and_epi8(__m256i __W) { + return __builtin_reduce_and((__v32qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_reduce_or_epi8(__m256i __W) { + return __builtin_reduce_or((__v32qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_add_epi8(__mmask32 __M, __m256i __W) { + __W = _mm256_maskz_mov_epi8(__M, __W); + return __builtin_reduce_add((__v32qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_mul_epi8(__mmask32 __M, __m256i __W) { + __W = _mm256_mask_mov_epi8(_mm256_set1_epi8(1), __M, __W); + return __builtin_reduce_mul((__v32qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_and_epi8(__mmask32 __M, __m256i __W) { + __W = _mm256_mask_mov_epi8(_mm256_set1_epi8(-1), __M, __W); + return __builtin_reduce_and((__v32qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_or_epi8(__mmask32 __M, __m256i __W) { + __W = _mm256_maskz_mov_epi8(__M, __W); + return __builtin_reduce_or((__v32qs)__W); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_reduce_max_epi8(__m256i __V) { + return __builtin_reduce_max((__v32qs)__V); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS256 +_mm256_reduce_max_epu8(__m256i __V) { + return __builtin_reduce_max((__v32qu)__V); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_reduce_min_epi8(__m256i __V) { + return __builtin_reduce_min((__v32qs)__V); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS256 +_mm256_reduce_min_epu8(__m256i __V) { + return __builtin_reduce_min((__v32qu)__V); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_max_epi8(__mmask32 __M, __m256i __V) { + __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(-127-1), __M, __V); + return __builtin_reduce_max((__v32qs)__V); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_max_epu8(__mmask32 __M, __m256i __V) { + __V = _mm256_maskz_mov_epi8(__M, __V); + return __builtin_reduce_max((__v32qu)__V); +} + +static __inline__ signed char __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_min_epi8(__mmask32 __M, __m256i __V) { + __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(127), __M, __V); + return __builtin_reduce_min((__v32qs)__V); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS256 +_mm256_mask_reduce_min_epu8(__mmask32 __M, __m256i __V) { + __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(-1), __M, __V); + return __builtin_reduce_min((__v32qu)__V); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif /* __AVX512VLBWINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7b7afa9d43fbedcab547a837ba680cb23970b5d3 GIT binary patch literal 235651 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

    -#{ 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 UvPFOeEI0v`owua2Lwe!=07HEoQUCw| literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h new file mode 100644 index 00000000..cc8b7252 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h @@ -0,0 +1,225 @@ +/*===---- avx512vlcdintrin.h - AVX512VL and AVX512CD intrinsics ------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX512VLCDINTRIN_H +#define __AVX512VLCDINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512cd"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512cd"), __min_vector_width__(256))) + + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_broadcastmb_epi64 (__mmask8 __A) +{ + return (__m128i) _mm_set1_epi64x((long long) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcastmb_epi64 (__mmask8 __A) +{ + return (__m256i) _mm256_set1_epi64x((long long)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_broadcastmw_epi32 (__mmask16 __A) +{ + return (__m128i) _mm_set1_epi32((int)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcastmw_epi32 (__mmask16 __A) +{ + return (__m256i) _mm256_set1_epi32((int)__A); +} + + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_conflict_epi64 (__m128i __A) +{ + return (__m128i) __builtin_ia32_vpconflictdi_128 ((__v2di) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_conflict_epi64 (__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_conflict_epi64(__A), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_conflict_epi64 (__mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_conflict_epi64(__A), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_conflict_epi64 (__m256i __A) +{ + return (__m256i) __builtin_ia32_vpconflictdi_256 ((__v4di) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_conflict_epi64 (__m256i __W, __mmask8 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_conflict_epi64(__A), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_conflict_epi64 (__mmask8 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_conflict_epi64(__A), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_conflict_epi32 (__m128i __A) +{ + return (__m128i) __builtin_ia32_vpconflictsi_128 ((__v4si) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_conflict_epi32 (__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_conflict_epi32(__A), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_conflict_epi32 (__mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_conflict_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_conflict_epi32 (__m256i __A) +{ + return (__m256i) __builtin_ia32_vpconflictsi_256 ((__v8si) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_conflict_epi32 (__m256i __W, __mmask8 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_conflict_epi32(__A), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_conflict_epi32 (__mmask8 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_conflict_epi32(__A), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_lzcnt_epi32 (__m128i __A) +{ + return (__m128i) __builtin_ia32_vplzcntd_128 ((__v4si) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_lzcnt_epi32 (__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_lzcnt_epi32(__A), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_lzcnt_epi32 (__mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_lzcnt_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_lzcnt_epi32 (__m256i __A) +{ + return (__m256i) __builtin_ia32_vplzcntd_256 ((__v8si) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_lzcnt_epi32 (__m256i __W, __mmask8 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_lzcnt_epi32(__A), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_lzcnt_epi32 (__mmask8 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_lzcnt_epi32(__A), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_lzcnt_epi64 (__m128i __A) +{ + return (__m128i) __builtin_ia32_vplzcntq_128 ((__v2di) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_lzcnt_epi64 (__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_lzcnt_epi64(__A), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_lzcnt_epi64 (__mmask8 __U, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_lzcnt_epi64(__A), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_lzcnt_epi64 (__m256i __A) +{ + return (__m256i) __builtin_ia32_vplzcntq_256 ((__v4di) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_lzcnt_epi64 (__m256i __W, __mmask8 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_lzcnt_epi64(__A), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_lzcnt_epi64 (__mmask8 __U, __m256i __A) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_lzcnt_epi64(__A), + (__v4di)_mm256_setzero_si256()); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif /* __AVX512VLCDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1ace3955e79a4f0afb5ad5b96189ead328b3c1a1 GIT binary patch literal 22432 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h new file mode 100644 index 00000000..713e1a18 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h @@ -0,0 +1,1167 @@ +/*===---- avx512vldqintrin.h - AVX512VL and AVX512DQ intrinsics ------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use directly; include instead." +#endif + +#ifndef __AVX512VLDQINTRIN_H +#define __AVX512VLDQINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512dq"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512dq"), __min_vector_width__(256))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mullo_epi64 (__m256i __A, __m256i __B) { + return (__m256i) ((__v4du) __A * (__v4du) __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mullo_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_mullo_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mullo_epi64(__mmask8 __U, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_mullo_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mullo_epi64 (__m128i __A, __m128i __B) { + return (__m128i) ((__v2du) __A * (__v2du) __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mullo_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_mullo_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mullo_epi64(__mmask8 __U, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_mullo_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_andnot_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_andnot_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_andnot_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_andnot_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_andnot_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_andnot_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_andnot_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_andnot_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_andnot_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_andnot_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_andnot_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_andnot_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_andnot_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_andnot_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_andnot_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_andnot_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_and_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_and_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_and_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_and_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_and_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_and_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_and_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_and_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_and_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_and_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_and_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_and_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_and_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_and_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_and_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_and_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_xor_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_xor_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_xor_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_xor_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_xor_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_xor_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_xor_pd (__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_xor_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_xor_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_xor_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_xor_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_xor_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_xor_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_xor_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_xor_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_xor_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_or_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_or_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_or_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_or_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_or_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_or_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_or_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_or_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_or_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_or_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_or_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_or_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_or_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_or_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_or_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_or_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtpd_epi64 (__m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtpd_epi64 (__mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtpd_epi64 (__m256d __A) { + return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A) { + return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtpd_epi64 (__mmask8 __U, __m256d __A) { + return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtpd_epu64 (__m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtpd_epu64 (__mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtpd_epu64 (__m256d __A) { + return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A) { + return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtpd_epu64 (__mmask8 __U, __m256d __A) { + return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtps_epi64 (__m128 __A) { + return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtps_epi64 (__m128i __W, __mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtps_epi64 (__m128 __A) { + return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtps_epi64 (__m256i __W, __mmask8 __U, __m128 __A) { + return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A) { + return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtps_epu64 (__m128 __A) { + return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtps_epu64 (__m128i __W, __mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtps_epu64 (__m128 __A) { + return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtps_epu64 (__m256i __W, __mmask8 __U, __m128 __A) { + return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A) { + return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_cvtepi64_pd (__m128i __A) { + return (__m128d)__builtin_convertvector((__v2di)__A, __v2df); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_pd (__m128d __W, __mmask8 __U, __m128i __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_cvtepi64_pd(__A), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi64_pd (__mmask8 __U, __m128i __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_cvtepi64_pd(__A), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_cvtepi64_pd (__m256i __A) { + return (__m256d)__builtin_convertvector((__v4di)__A, __v4df); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_pd (__m256d __W, __mmask8 __U, __m256i __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_cvtepi64_pd(__A), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi64_pd (__mmask8 __U, __m256i __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_cvtepi64_pd(__A), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtepi64_ps (__m128i __A) { + return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A, + (__v4sf) _mm_setzero_ps(), + (__mmask8) -1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m128i __A) { + return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi64_ps (__mmask8 __U, __m128i __A) { + return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A, + (__v4sf) _mm_setzero_ps(), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS256 +_mm256_cvtepi64_ps (__m256i __A) { + return (__m128)__builtin_convertvector((__v4di)__A, __v4sf); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m256i __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm256_cvtepi64_ps(__A), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi64_ps (__mmask8 __U, __m256i __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm256_cvtepi64_ps(__A), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvttpd_epi64 (__m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttpd_epi64 (__mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttpd_epi64 (__m256d __A) { + return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A) { + return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttpd_epi64 (__mmask8 __U, __m256d __A) { + return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvttpd_epu64 (__m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttpd_epu64 (__mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttpd_epu64 (__m256d __A) { + return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A) { + return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttpd_epu64 (__mmask8 __U, __m256d __A) { + return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvttps_epi64 (__m128 __A) { + return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttps_epi64 (__m128i __W, __mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttps_epi64 (__m128 __A) { + return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttps_epi64 (__m256i __W, __mmask8 __U, __m128 __A) { + return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A) { + return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvttps_epu64 (__m128 __A) { + return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttps_epu64 (__m128i __W, __mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A, + (__v2di) _mm_setzero_si128(), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttps_epu64 (__m128 __A) { + return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttps_epu64 (__m256i __W, __mmask8 __U, __m128 __A) { + return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A) { + return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A, + (__v4di) _mm256_setzero_si256(), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_cvtepu64_pd (__m128i __A) { + return (__m128d)__builtin_convertvector((__v2du)__A, __v2df); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepu64_pd (__m128d __W, __mmask8 __U, __m128i __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_cvtepu64_pd(__A), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepu64_pd (__mmask8 __U, __m128i __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_cvtepu64_pd(__A), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_cvtepu64_pd (__m256i __A) { + return (__m256d)__builtin_convertvector((__v4du)__A, __v4df); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepu64_pd (__m256d __W, __mmask8 __U, __m256i __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_cvtepu64_pd(__A), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepu64_pd (__mmask8 __U, __m256i __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_cvtepu64_pd(__A), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtepu64_ps (__m128i __A) { + return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A, + (__v4sf) _mm_setzero_ps(), + (__mmask8) -1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m128i __A) { + return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepu64_ps (__mmask8 __U, __m128i __A) { + return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A, + (__v4sf) _mm_setzero_ps(), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS256 +_mm256_cvtepu64_ps (__m256i __A) { + return (__m128)__builtin_convertvector((__v4du)__A, __v4sf); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m256i __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm256_cvtepu64_ps(__A), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepu64_ps (__mmask8 __U, __m256i __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm256_cvtepu64_ps(__A), + (__v4sf)_mm_setzero_ps()); +} + +#define _mm_range_pd(A, B, C) \ + ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), (int)(C), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1)) + +#define _mm_mask_range_pd(W, U, A, B, C) \ + ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), (int)(C), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U))) + +#define _mm_maskz_range_pd(U, A, B, C) \ + ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), (int)(C), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm256_range_pd(A, B, C) \ + ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \ + (__v4df)(__m256d)(B), (int)(C), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)-1)) + +#define _mm256_mask_range_pd(W, U, A, B, C) \ + ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \ + (__v4df)(__m256d)(B), (int)(C), \ + (__v4df)(__m256d)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_range_pd(U, A, B, C) \ + ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \ + (__v4df)(__m256d)(B), (int)(C), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm_range_ps(A, B, C) \ + ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), (int)(C), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1)) + +#define _mm_mask_range_ps(W, U, A, B, C) \ + ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), (int)(C), \ + (__v4sf)(__m128)(W), (__mmask8)(U))) + +#define _mm_maskz_range_ps(U, A, B, C) \ + ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), (int)(C), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U))) + +#define _mm256_range_ps(A, B, C) \ + ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \ + (__v8sf)(__m256)(B), (int)(C), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)-1)) + +#define _mm256_mask_range_ps(W, U, A, B, C) \ + ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \ + (__v8sf)(__m256)(B), (int)(C), \ + (__v8sf)(__m256)(W), (__mmask8)(U))) + +#define _mm256_maskz_range_ps(U, A, B, C) \ + ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \ + (__v8sf)(__m256)(B), (int)(C), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)(U))) + +#define _mm_reduce_pd(A, B) \ + ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1)) + +#define _mm_mask_reduce_pd(W, U, A, B) \ + ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U))) + +#define _mm_maskz_reduce_pd(U, A, B) \ + ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm256_reduce_pd(A, B) \ + ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)-1)) + +#define _mm256_mask_reduce_pd(W, U, A, B) \ + ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \ + (__v4df)(__m256d)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_reduce_pd(U, A, B) \ + ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm_reduce_ps(A, B) \ + ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1)) + +#define _mm_mask_reduce_ps(W, U, A, B) \ + ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U))) + +#define _mm_maskz_reduce_ps(U, A, B) \ + ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U))) + +#define _mm256_reduce_ps(A, B) \ + ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)-1)) + +#define _mm256_mask_reduce_ps(W, U, A, B) \ + ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \ + (__v8sf)(__m256)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_reduce_ps(U, A, B) \ + ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)(U))) + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_movepi32_mask (__m128i __A) +{ + return (__mmask8) __builtin_ia32_cvtd2mask128 ((__v4si) __A); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_movepi32_mask (__m256i __A) +{ + return (__mmask8) __builtin_ia32_cvtd2mask256 ((__v8si) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_movm_epi32 (__mmask8 __A) +{ + return (__m128i) __builtin_ia32_cvtmask2d128 (__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_movm_epi32 (__mmask8 __A) +{ + return (__m256i) __builtin_ia32_cvtmask2d256 (__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_movm_epi64 (__mmask8 __A) +{ + return (__m128i) __builtin_ia32_cvtmask2q128 (__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_movm_epi64 (__mmask8 __A) +{ + return (__m256i) __builtin_ia32_cvtmask2q256 (__A); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_movepi64_mask (__m128i __A) +{ + return (__mmask8) __builtin_ia32_cvtq2mask128 ((__v2di) __A); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_movepi64_mask (__m256i __A) +{ + return (__mmask8) __builtin_ia32_cvtq2mask256 ((__v4di) __A); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_broadcast_f32x2 (__m128 __A) +{ + return (__m256)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A, + 0, 1, 0, 1, 0, 1, 0, 1); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcast_f32x2 (__m256 __O, __mmask8 __M, __m128 __A) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__M, + (__v8sf)_mm256_broadcast_f32x2(__A), + (__v8sf)__O); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcast_f32x2 (__mmask8 __M, __m128 __A) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__M, + (__v8sf)_mm256_broadcast_f32x2(__A), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_broadcast_f64x2(__m128d __A) +{ + return (__m256d)__builtin_shufflevector((__v2df)__A, (__v2df)__A, + 0, 1, 0, 1); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcast_f64x2(__m256d __O, __mmask8 __M, __m128d __A) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__M, + (__v4df)_mm256_broadcast_f64x2(__A), + (__v4df)__O); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcast_f64x2 (__mmask8 __M, __m128d __A) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__M, + (__v4df)_mm256_broadcast_f64x2(__A), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_broadcast_i32x2 (__m128i __A) +{ + return (__m128i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, + 0, 1, 0, 1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_broadcast_i32x2 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_broadcast_i32x2(__A), + (__v4si)__O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_broadcast_i32x2(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcast_i32x2 (__m128i __A) +{ + return (__m256i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, + 0, 1, 0, 1, 0, 1, 0, 1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcast_i32x2 (__m256i __O, __mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_broadcast_i32x2(__A), + (__v8si)__O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_broadcast_i32x2(__A), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcast_i64x2(__m128i __A) +{ + return (__m256i)__builtin_shufflevector((__v2di)__A, (__v2di)__A, + 0, 1, 0, 1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcast_i64x2(__m256i __O, __mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_broadcast_i64x2(__A), + (__v4di)__O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcast_i64x2 (__mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_broadcast_i64x2(__A), + (__v4di)_mm256_setzero_si256()); +} + +#define _mm256_extractf64x2_pd(A, imm) \ + ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \ + (int)(imm), \ + (__v2df)_mm_undefined_pd(), \ + (__mmask8)-1)) + +#define _mm256_mask_extractf64x2_pd(W, U, A, imm) \ + ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \ + (int)(imm), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_extractf64x2_pd(U, A, imm) \ + ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \ + (int)(imm), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm256_extracti64x2_epi64(A, imm) \ + ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \ + (int)(imm), \ + (__v2di)_mm_undefined_si128(), \ + (__mmask8)-1)) + +#define _mm256_mask_extracti64x2_epi64(W, U, A, imm) \ + ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \ + (int)(imm), \ + (__v2di)(__m128i)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_extracti64x2_epi64(U, A, imm) \ + ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \ + (int)(imm), \ + (__v2di)_mm_setzero_si128(), \ + (__mmask8)(U))) + +#define _mm256_insertf64x2(A, B, imm) \ + ((__m256d)__builtin_ia32_insertf64x2_256((__v4df)(__m256d)(A), \ + (__v2df)(__m128d)(B), (int)(imm))) + +#define _mm256_mask_insertf64x2(W, U, A, B, imm) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_insertf64x2((A), (B), (imm)), \ + (__v4df)(__m256d)(W))) + +#define _mm256_maskz_insertf64x2(U, A, B, imm) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_insertf64x2((A), (B), (imm)), \ + (__v4df)_mm256_setzero_pd())) + +#define _mm256_inserti64x2(A, B, imm) \ + ((__m256i)__builtin_ia32_inserti64x2_256((__v4di)(__m256i)(A), \ + (__v2di)(__m128i)(B), (int)(imm))) + +#define _mm256_mask_inserti64x2(W, U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_inserti64x2((A), (B), (imm)), \ + (__v4di)(__m256i)(W))) + +#define _mm256_maskz_inserti64x2(U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_inserti64x2((A), (B), (imm)), \ + (__v4di)_mm256_setzero_si256())) + +#define _mm_mask_fpclass_pd_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclasspd128_mask((__v2df)(__m128d)(A), (int)(imm), \ + (__mmask8)(U))) + +#define _mm_fpclass_pd_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclasspd128_mask((__v2df)(__m128d)(A), (int)(imm), \ + (__mmask8)-1)) + +#define _mm256_mask_fpclass_pd_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclasspd256_mask((__v4df)(__m256d)(A), (int)(imm), \ + (__mmask8)(U))) + +#define _mm256_fpclass_pd_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclasspd256_mask((__v4df)(__m256d)(A), (int)(imm), \ + (__mmask8)-1)) + +#define _mm_mask_fpclass_ps_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclassps128_mask((__v4sf)(__m128)(A), (int)(imm), \ + (__mmask8)(U))) + +#define _mm_fpclass_ps_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclassps128_mask((__v4sf)(__m128)(A), (int)(imm), \ + (__mmask8)-1)) + +#define _mm256_mask_fpclass_ps_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclassps256_mask((__v8sf)(__m256)(A), (int)(imm), \ + (__mmask8)(U))) + +#define _mm256_fpclass_ps_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclassps256_mask((__v8sf)(__m256)(A), (int)(imm), \ + (__mmask8)-1)) + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..525716f8b247a8aab949e7eb1a4e037822a5bc6e GIT binary patch literal 83998 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 bu)`x3_r~J6o*l50fh8I2#QxAu+8_FV-L4{W literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h new file mode 100644 index 00000000..d4a7d1b1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h @@ -0,0 +1,2071 @@ +/*===---------- avx512vlfp16intrin.h - AVX512-FP16 intrinsics --------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error \ + "Never use <avx512vlfp16intrin.h> directly; include <immintrin.h> instead." +#endif + +#ifdef __SSE2__ + +#ifndef __AVX512VLFP16INTRIN_H +#define __AVX512VLFP16INTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, \ + __target__("avx512fp16, avx512vl"), \ + __min_vector_width__(256))) +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, \ + __target__("avx512fp16, avx512vl"), \ + __min_vector_width__(128))) + +static __inline__ _Float16 __DEFAULT_FN_ATTRS128 _mm_cvtsh_h(__m128h __a) { + return __a[0]; +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS256 _mm256_cvtsh_h(__m256h __a) { + return __a[0]; +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_set_sh(_Float16 __h) { + return __extension__(__m128h){__h, 0, 0, 0, 0, 0, 0, 0}; +} + +static __inline __m128h __DEFAULT_FN_ATTRS128 _mm_set1_ph(_Float16 __h) { + return (__m128h)(__v8hf){__h, __h, __h, __h, __h, __h, __h, __h}; +} + +static __inline __m256h __DEFAULT_FN_ATTRS256 _mm256_set1_ph(_Float16 __h) { + return (__m256h)(__v16hf){__h, __h, __h, __h, __h, __h, __h, __h, + __h, __h, __h, __h, __h, __h, __h, __h}; +} + +static __inline __m128h __DEFAULT_FN_ATTRS128 +_mm_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4, + _Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8) { + return (__m128h)(__v8hf){__h8, __h7, __h6, __h5, __h4, __h3, __h2, __h1}; +} + +static __inline __m256h __DEFAULT_FN_ATTRS256 +_mm256_set1_pch(_Float16 _Complex h) { + return (__m256h)_mm256_set1_ps(__builtin_bit_cast(float, h)); +} + +static __inline __m128h __DEFAULT_FN_ATTRS128 +_mm_set1_pch(_Float16 _Complex h) { + return (__m128h)_mm_set1_ps(__builtin_bit_cast(float, h)); +} + +static __inline __m256h __DEFAULT_FN_ATTRS256 +_mm256_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4, + _Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8, + _Float16 __h9, _Float16 __h10, _Float16 __h11, _Float16 __h12, + _Float16 __h13, _Float16 __h14, _Float16 __h15, _Float16 __h16) { + return (__m256h)(__v16hf){__h16, __h15, __h14, __h13, __h12, __h11, + __h10, __h9, __h8, __h7, __h6, __h5, + __h4, __h3, __h2, __h1}; +} + +#define _mm_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8) \ + _mm_set_ph((h8), (h7), (h6), (h5), (h4), (h3), (h2), (h1)) + +#define _mm256_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8, h9, h10, h11, h12, h13, \ + h14, h15, h16) \ + _mm256_set_ph((h16), (h15), (h14), (h13), (h12), (h11), (h10), (h9), (h8), \ + (h7), (h6), (h5), (h4), (h3), (h2), (h1)) + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_add_ph(__m256h __A, + __m256h __B) { + return (__m256h)((__v16hf)__A + (__v16hf)__B); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_add_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + __U, (__v16hf)_mm256_add_ph(__A, __B), (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_add_ph(__mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + __U, (__v16hf)_mm256_add_ph(__A, __B), (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_add_ph(__m128h __A, + __m128h __B) { + return (__m128h)((__v8hf)__A + (__v8hf)__B); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_add_ph(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_add_ph(__A, __B), + (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_add_ph(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_add_ph(__A, __B), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_sub_ph(__m256h __A, + __m256h __B) { + return (__m256h)((__v16hf)__A - (__v16hf)__B); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_sub_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + __U, (__v16hf)_mm256_sub_ph(__A, __B), (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_sub_ph(__mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + __U, (__v16hf)_mm256_sub_ph(__A, __B), (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sub_ph(__m128h __A, + __m128h __B) { + return (__m128h)((__v8hf)__A - (__v8hf)__B); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sub_ph(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_sub_ph(__A, __B), + (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sub_ph(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_sub_ph(__A, __B), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_mul_ph(__m256h __A, + __m256h __B) { + return (__m256h)((__v16hf)__A * (__v16hf)__B); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_mul_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + __U, (__v16hf)_mm256_mul_ph(__A, __B), (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_mul_ph(__mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + __U, (__v16hf)_mm256_mul_ph(__A, __B), (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mul_ph(__m128h __A, + __m128h __B) { + return (__m128h)((__v8hf)__A * (__v8hf)__B); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_mul_ph(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_mul_ph(__A, __B), + (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_mul_ph(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_mul_ph(__A, __B), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_div_ph(__m256h __A, + __m256h __B) { + return (__m256h)((__v16hf)__A / (__v16hf)__B); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_div_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + __U, (__v16hf)_mm256_div_ph(__A, __B), (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_div_ph(__mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + __U, (__v16hf)_mm256_div_ph(__A, __B), (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_div_ph(__m128h __A, + __m128h __B) { + return (__m128h)((__v8hf)__A / (__v8hf)__B); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_div_ph(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_div_ph(__A, __B), + (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_div_ph(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_div_ph(__A, __B), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_min_ph(__m256h __A, + __m256h __B) { + return (__m256h)__builtin_ia32_minph256((__v16hf)__A, (__v16hf)__B); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_min_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + (__v16hf)__builtin_ia32_minph256((__v16hf)__A, (__v16hf)__B), + (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_ph(__mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + (__v16hf)__builtin_ia32_minph256((__v16hf)__A, (__v16hf)__B), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_min_ph(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_minph128((__v8hf)__A, (__v8hf)__B); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_min_ph(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)__builtin_ia32_minph128((__v8hf)__A, (__v8hf)__B), + (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_min_ph(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)__builtin_ia32_minph128((__v8hf)__A, (__v8hf)__B), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_max_ph(__m256h __A, + __m256h __B) { + return (__m256h)__builtin_ia32_maxph256((__v16hf)__A, (__v16hf)__B); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_max_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + (__v16hf)__builtin_ia32_maxph256((__v16hf)__A, (__v16hf)__B), + (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_ph(__mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + (__v16hf)__builtin_ia32_maxph256((__v16hf)__A, (__v16hf)__B), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_max_ph(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_maxph128((__v8hf)__A, (__v8hf)__B); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_max_ph(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)__builtin_ia32_maxph128((__v8hf)__A, (__v8hf)__B), + (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_max_ph(__mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)__builtin_ia32_maxph128((__v8hf)__A, (__v8hf)__B), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_abs_ph(__m256h __A) { + return (__m256h)_mm256_and_epi32(_mm256_set1_epi32(0x7FFF7FFF), (__m256i)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_abs_ph(__m128h __A) { + return (__m128h)_mm_and_epi32(_mm_set1_epi32(0x7FFF7FFF), (__m128i)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_conj_pch(__m256h __A) { + return (__m256h)_mm256_xor_ps((__m256)__A, _mm256_set1_ps(-0.0f)); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_conj_pch(__m256h __W, __mmask8 __U, __m256h __A) { + return (__m256h)__builtin_ia32_selectps_256( + (__mmask8)__U, (__v8sf)_mm256_conj_pch(__A), (__v8sf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_conj_pch(__mmask8 __U, __m256h __A) { + return (__m256h)__builtin_ia32_selectps_256( + (__mmask8)__U, (__v8sf)_mm256_conj_pch(__A), (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_conj_pch(__m128h __A) { + return (__m128h)_mm_xor_ps((__m128)__A, _mm_set1_ps(-0.0f)); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_conj_pch(__m128h __W, + __mmask8 __U, + __m128h __A) { + return (__m128h)__builtin_ia32_selectps_128( + (__mmask8)__U, (__v4sf)_mm_conj_pch(__A), (__v4sf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_conj_pch(__mmask8 __U, __m128h __A) { + return (__m128h)__builtin_ia32_selectps_128( + (__mmask8)__U, (__v4sf)_mm_conj_pch(__A), (__v4sf)_mm_setzero_ps()); +} + +#define _mm256_cmp_ph_mask(a, b, p) \ + ((__mmask16)__builtin_ia32_cmpph256_mask( \ + (__v16hf)(__m256h)(a), (__v16hf)(__m256h)(b), (int)(p), (__mmask16)-1)) + +#define _mm256_mask_cmp_ph_mask(m, a, b, p) \ + ((__mmask16)__builtin_ia32_cmpph256_mask( \ + (__v16hf)(__m256h)(a), (__v16hf)(__m256h)(b), (int)(p), (__mmask16)(m))) + +#define _mm_cmp_ph_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpph128_mask( \ + (__v8hf)(__m128h)(a), (__v8hf)(__m128h)(b), (int)(p), (__mmask8)-1)) + +#define _mm_mask_cmp_ph_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpph128_mask( \ + (__v8hf)(__m128h)(a), (__v8hf)(__m128h)(b), (int)(p), (__mmask8)(m))) + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_rcp_ph(__m256h __A) { + return (__m256h)__builtin_ia32_rcpph256_mask( + (__v16hf)__A, (__v16hf)_mm256_undefined_ph(), (__mmask16)-1); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_rcp_ph(__m256h __W, __mmask16 __U, __m256h __A) { + return (__m256h)__builtin_ia32_rcpph256_mask((__v16hf)__A, (__v16hf)__W, + (__mmask16)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_rcp_ph(__mmask16 __U, __m256h __A) { + return (__m256h)__builtin_ia32_rcpph256_mask( + (__v16hf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_rcp_ph(__m128h __A) { + return (__m128h)__builtin_ia32_rcpph128_mask( + (__v8hf)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_rcp_ph(__m128h __W, + __mmask8 __U, + __m128h __A) { + return (__m128h)__builtin_ia32_rcpph128_mask((__v8hf)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_rcp_ph(__mmask8 __U, + __m128h __A) { + return (__m128h)__builtin_ia32_rcpph128_mask( + (__v8hf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_rsqrt_ph(__m256h __A) { + return (__m256h)__builtin_ia32_rsqrtph256_mask( + (__v16hf)__A, (__v16hf)_mm256_undefined_ph(), (__mmask16)-1); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_rsqrt_ph(__m256h __W, __mmask16 __U, __m256h __A) { + return (__m256h)__builtin_ia32_rsqrtph256_mask((__v16hf)__A, (__v16hf)__W, + (__mmask16)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_rsqrt_ph(__mmask16 __U, __m256h __A) { + return (__m256h)__builtin_ia32_rsqrtph256_mask( + (__v16hf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_rsqrt_ph(__m128h __A) { + return (__m128h)__builtin_ia32_rsqrtph128_mask( + (__v8hf)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_rsqrt_ph(__m128h __W, + __mmask8 __U, + __m128h __A) { + return (__m128h)__builtin_ia32_rsqrtph128_mask((__v8hf)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_rsqrt_ph(__mmask8 __U, __m128h __A) { + return (__m128h)__builtin_ia32_rsqrtph128_mask( + (__v8hf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_getexp_ph(__m128h __A) { + return (__m128h)__builtin_ia32_getexpph128_mask( + (__v8hf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_getexp_ph(__m128h __W, __mmask8 __U, __m128h __A) { + return (__m128h)__builtin_ia32_getexpph128_mask((__v8hf)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_getexp_ph(__mmask8 __U, __m128h __A) { + return (__m128h)__builtin_ia32_getexpph128_mask( + (__v8hf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_getexp_ph(__m256h __A) { + return (__m256h)__builtin_ia32_getexpph256_mask( + (__v16hf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_getexp_ph(__m256h __W, __mmask16 __U, __m256h __A) { + return (__m256h)__builtin_ia32_getexpph256_mask((__v16hf)__A, (__v16hf)__W, + (__mmask16)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_getexp_ph(__mmask16 __U, __m256h __A) { + return (__m256h)__builtin_ia32_getexpph256_mask( + (__v16hf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U); +} + +#define _mm_getmant_ph(A, B, C) \ + ((__m128h)__builtin_ia32_getmantph128_mask( \ + (__v8hf)(__m128h)(A), (int)(((C) << 2) | (B)), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1)) + +#define _mm_mask_getmant_ph(W, U, A, B, C) \ + ((__m128h)__builtin_ia32_getmantph128_mask( \ + (__v8hf)(__m128h)(A), (int)(((C) << 2) | (B)), (__v8hf)(__m128h)(W), \ + (__mmask8)(U))) + +#define _mm_maskz_getmant_ph(U, A, B, C) \ + ((__m128h)__builtin_ia32_getmantph128_mask( \ + (__v8hf)(__m128h)(A), (int)(((C) << 2) | (B)), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U))) + +#define _mm256_getmant_ph(A, B, C) \ + ((__m256h)__builtin_ia32_getmantph256_mask( \ + (__v16hf)(__m256h)(A), (int)(((C) << 2) | (B)), \ + (__v16hf)_mm256_setzero_ph(), (__mmask16)-1)) + +#define _mm256_mask_getmant_ph(W, U, A, B, C) \ + ((__m256h)__builtin_ia32_getmantph256_mask( \ + (__v16hf)(__m256h)(A), (int)(((C) << 2) | (B)), (__v16hf)(__m256h)(W), \ + (__mmask16)(U))) + +#define _mm256_maskz_getmant_ph(U, A, B, C) \ + ((__m256h)__builtin_ia32_getmantph256_mask( \ + (__v16hf)(__m256h)(A), (int)(((C) << 2) | (B)), \ + (__v16hf)_mm256_setzero_ph(), (__mmask16)(U))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_scalef_ph(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_scalefph128_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_scalef_ph(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_scalefph128_mask((__v8hf)__A, (__v8hf)__B, + (__v8hf)__W, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_scalef_ph(__mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_scalefph128_mask( + (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_scalef_ph(__m256h __A, + __m256h __B) { + return (__m256h)__builtin_ia32_scalefph256_mask( + (__v16hf)__A, (__v16hf)__B, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_scalef_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_scalefph256_mask((__v16hf)__A, (__v16hf)__B, + (__v16hf)__W, (__mmask16)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_scalef_ph(__mmask16 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_scalefph256_mask( + (__v16hf)__A, (__v16hf)__B, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U); +} + +#define _mm_roundscale_ph(A, imm) \ + ((__m128h)__builtin_ia32_rndscaleph_128_mask( \ + (__v8hf)(__m128h)(A), (int)(imm), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1)) + +#define _mm_mask_roundscale_ph(W, U, A, imm) \ + ((__m128h)__builtin_ia32_rndscaleph_128_mask( \ + (__v8hf)(__m128h)(A), (int)(imm), (__v8hf)(__m128h)(W), (__mmask8)(U))) + +#define _mm_maskz_roundscale_ph(U, A, imm) \ + ((__m128h)__builtin_ia32_rndscaleph_128_mask( \ + (__v8hf)(__m128h)(A), (int)(imm), (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U))) + +#define _mm256_roundscale_ph(A, imm) \ + ((__m256h)__builtin_ia32_rndscaleph_256_mask( \ + (__v16hf)(__m256h)(A), (int)(imm), (__v16hf)_mm256_setzero_ph(), \ + (__mmask16)-1)) + +#define _mm256_mask_roundscale_ph(W, U, A, imm) \ + ((__m256h)__builtin_ia32_rndscaleph_256_mask( \ + (__v16hf)(__m256h)(A), (int)(imm), (__v16hf)(__m256h)(W), \ + (__mmask16)(U))) + +#define _mm256_maskz_roundscale_ph(U, A, imm) \ + ((__m256h)__builtin_ia32_rndscaleph_256_mask( \ + (__v16hf)(__m256h)(A), (int)(imm), (__v16hf)_mm256_setzero_ph(), \ + (__mmask16)(U))) + +#define _mm_reduce_ph(A, imm) \ + ((__m128h)__builtin_ia32_reduceph128_mask((__v8hf)(__m128h)(A), (int)(imm), \ + (__v8hf)_mm_setzero_ph(), \ + (__mmask8)-1)) + +#define _mm_mask_reduce_ph(W, U, A, imm) \ + ((__m128h)__builtin_ia32_reduceph128_mask( \ + (__v8hf)(__m128h)(A), (int)(imm), (__v8hf)(__m128h)(W), (__mmask8)(U))) + +#define _mm_maskz_reduce_ph(U, A, imm) \ + ((__m128h)__builtin_ia32_reduceph128_mask((__v8hf)(__m128h)(A), (int)(imm), \ + (__v8hf)_mm_setzero_ph(), \ + (__mmask8)(U))) + +#define _mm256_reduce_ph(A, imm) \ + ((__m256h)__builtin_ia32_reduceph256_mask((__v16hf)(__m256h)(A), (int)(imm), \ + (__v16hf)_mm256_setzero_ph(), \ + (__mmask16)-1)) + +#define _mm256_mask_reduce_ph(W, U, A, imm) \ + ((__m256h)__builtin_ia32_reduceph256_mask((__v16hf)(__m256h)(A), (int)(imm), \ + (__v16hf)(__m256h)(W), \ + (__mmask16)(U))) + +#define _mm256_maskz_reduce_ph(U, A, imm) \ + ((__m256h)__builtin_ia32_reduceph256_mask((__v16hf)(__m256h)(A), (int)(imm), \ + (__v16hf)_mm256_setzero_ph(), \ + (__mmask16)(U))) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sqrt_ph(__m128h __a) { + return __builtin_ia32_sqrtph((__v8hf)__a); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sqrt_ph(__m128h __W, + __mmask8 __U, + __m128h __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm_sqrt_ph(__A), (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sqrt_ph(__mmask8 __U, + __m128h __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm_sqrt_ph(__A), (__v8hf)_mm_setzero_ph()); +} + +static __inline __m256h __DEFAULT_FN_ATTRS256 _mm256_sqrt_ph(__m256h __a) { + return (__m256h)__builtin_ia32_sqrtph256((__v16hf)__a); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_sqrt_ph(__m256h __W, __mmask16 __U, __m256h __A) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, (__v16hf)_mm256_sqrt_ph(__A), (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_sqrt_ph(__mmask16 __U, __m256h __A) { + return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U, + (__v16hf)_mm256_sqrt_ph(__A), + (__v16hf)_mm256_setzero_ph()); +} + +#define _mm_mask_fpclass_ph_mask(U, A, imm) \ + ((__mmask8)__builtin_ia32_fpclassph128_mask((__v8hf)(__m128h)(A), \ + (int)(imm), (__mmask8)(U))) + +#define _mm_fpclass_ph_mask(A, imm) \ + ((__mmask8)__builtin_ia32_fpclassph128_mask((__v8hf)(__m128h)(A), \ + (int)(imm), (__mmask8)-1)) + +#define _mm256_mask_fpclass_ph_mask(U, A, imm) \ + ((__mmask16)__builtin_ia32_fpclassph256_mask((__v16hf)(__m256h)(A), \ + (int)(imm), (__mmask16)(U))) + +#define _mm256_fpclass_ph_mask(A, imm) \ + ((__mmask16)__builtin_ia32_fpclassph256_mask((__v16hf)(__m256h)(A), \ + (int)(imm), (__mmask16)-1)) + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtpd_ph(__m128d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph128_mask( + (__v2df)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_cvtpd_ph(__m128h __W, + __mmask8 __U, + __m128d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph128_mask((__v2df)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtpd_ph(__mmask8 __U, __m128d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph128_mask( + (__v2df)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 _mm256_cvtpd_ph(__m256d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph256_mask( + (__v4df)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtpd_ph(__m128h __W, __mmask8 __U, __m256d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph256_mask((__v4df)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtpd_ph(__mmask8 __U, __m256d __A) { + return (__m128h)__builtin_ia32_vcvtpd2ph256_mask( + (__v4df)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_cvtph_pd(__m128h __A) { + return (__m128d)__builtin_ia32_vcvtph2pd128_mask( + (__v8hf)__A, (__v2df)_mm_undefined_pd(), (__mmask8)-1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_mask_cvtph_pd(__m128d __W, + __mmask8 __U, + __m128h __A) { + return (__m128d)__builtin_ia32_vcvtph2pd128_mask((__v8hf)__A, (__v2df)__W, + (__mmask8)__U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtph_pd(__mmask8 __U, __m128h __A) { + return (__m128d)__builtin_ia32_vcvtph2pd128_mask( + (__v8hf)__A, (__v2df)_mm_setzero_pd(), (__mmask8)__U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 _mm256_cvtph_pd(__m128h __A) { + return (__m256d)__builtin_ia32_vcvtph2pd256_mask( + (__v8hf)__A, (__v4df)_mm256_undefined_pd(), (__mmask8)-1); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtph_pd(__m256d __W, __mmask8 __U, __m128h __A) { + return (__m256d)__builtin_ia32_vcvtph2pd256_mask((__v8hf)__A, (__v4df)__W, + (__mmask8)__U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtph_pd(__mmask8 __U, __m128h __A) { + return (__m256d)__builtin_ia32_vcvtph2pd256_mask( + (__v8hf)__A, (__v4df)_mm256_setzero_pd(), (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epi16(__m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2w128_mask( + (__v8hf)__A, (__v8hi)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtph_epi16(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2w128_mask((__v8hf)__A, (__v8hi)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtph_epi16(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2w128_mask( + (__v8hf)__A, (__v8hi)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtph_epi16(__m256h __A) { + return (__m256i)__builtin_ia32_vcvtph2w256_mask( + (__v16hf)__A, (__v16hi)_mm256_undefined_si256(), (__mmask16)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtph_epi16(__m256i __W, __mmask16 __U, __m256h __A) { + return (__m256i)__builtin_ia32_vcvtph2w256_mask((__v16hf)__A, (__v16hi)__W, + (__mmask16)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtph_epi16(__mmask16 __U, __m256h __A) { + return (__m256i)__builtin_ia32_vcvtph2w256_mask( + (__v16hf)__A, (__v16hi)_mm256_setzero_si256(), (__mmask16)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epi16(__m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2w128_mask( + (__v8hf)__A, (__v8hi)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttph_epi16(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2w128_mask((__v8hf)__A, (__v8hi)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttph_epi16(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2w128_mask( + (__v8hf)__A, (__v8hi)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttph_epi16(__m256h __A) { + return (__m256i)__builtin_ia32_vcvttph2w256_mask( + (__v16hf)__A, (__v16hi)_mm256_undefined_si256(), (__mmask16)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttph_epi16(__m256i __W, __mmask16 __U, __m256h __A) { + return (__m256i)__builtin_ia32_vcvttph2w256_mask((__v16hf)__A, (__v16hi)__W, + (__mmask16)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttph_epi16(__mmask16 __U, __m256h __A) { + return (__m256i)__builtin_ia32_vcvttph2w256_mask( + (__v16hf)__A, (__v16hi)_mm256_setzero_si256(), (__mmask16)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepi16_ph(__m128i __A) { + return (__m128h) __builtin_convertvector((__v8hi)__A, __v8hf); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi16_ph(__m128h __W, __mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm_cvtepi16_ph(__A), (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi16_ph(__mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm_cvtepi16_ph(__A), (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_cvtepi16_ph(__m256i __A) { + return (__m256h) __builtin_convertvector((__v16hi)__A, __v16hf); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi16_ph(__m256h __W, __mmask16 __U, __m256i __A) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, (__v16hf)_mm256_cvtepi16_ph(__A), (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi16_ph(__mmask16 __U, __m256i __A) { + return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U, + (__v16hf)_mm256_cvtepi16_ph(__A), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epu16(__m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2uw128_mask( + (__v8hf)__A, (__v8hu)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtph_epu16(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2uw128_mask((__v8hf)__A, (__v8hu)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtph_epu16(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2uw128_mask( + (__v8hf)__A, (__v8hu)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtph_epu16(__m256h __A) { + return (__m256i)__builtin_ia32_vcvtph2uw256_mask( + (__v16hf)__A, (__v16hu)_mm256_undefined_si256(), (__mmask16)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtph_epu16(__m256i __W, __mmask16 __U, __m256h __A) { + return (__m256i)__builtin_ia32_vcvtph2uw256_mask((__v16hf)__A, (__v16hu)__W, + (__mmask16)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtph_epu16(__mmask16 __U, __m256h __A) { + return (__m256i)__builtin_ia32_vcvtph2uw256_mask( + (__v16hf)__A, (__v16hu)_mm256_setzero_si256(), (__mmask16)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epu16(__m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2uw128_mask( + (__v8hf)__A, (__v8hu)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttph_epu16(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2uw128_mask((__v8hf)__A, (__v8hu)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttph_epu16(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2uw128_mask( + (__v8hf)__A, (__v8hu)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttph_epu16(__m256h __A) { + return (__m256i)__builtin_ia32_vcvttph2uw256_mask( + (__v16hf)__A, (__v16hu)_mm256_undefined_si256(), (__mmask16)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttph_epu16(__m256i __W, __mmask16 __U, __m256h __A) { + return (__m256i)__builtin_ia32_vcvttph2uw256_mask((__v16hf)__A, (__v16hu)__W, + (__mmask16)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttph_epu16(__mmask16 __U, __m256h __A) { + return (__m256i)__builtin_ia32_vcvttph2uw256_mask( + (__v16hf)__A, (__v16hu)_mm256_setzero_si256(), (__mmask16)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepu16_ph(__m128i __A) { + return (__m128h) __builtin_convertvector((__v8hu)__A, __v8hf); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepu16_ph(__m128h __W, __mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm_cvtepu16_ph(__A), (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepu16_ph(__mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm_cvtepu16_ph(__A), (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_cvtepu16_ph(__m256i __A) { + return (__m256h) __builtin_convertvector((__v16hu)__A, __v16hf); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepu16_ph(__m256h __W, __mmask16 __U, __m256i __A) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, (__v16hf)_mm256_cvtepu16_ph(__A), (__v16hf)__W); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepu16_ph(__mmask16 __U, __m256i __A) { + return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U, + (__v16hf)_mm256_cvtepu16_ph(__A), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epi32(__m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2dq128_mask( + (__v8hf)__A, (__v4si)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtph_epi32(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2dq128_mask((__v8hf)__A, (__v4si)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtph_epi32(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2dq128_mask( + (__v8hf)__A, (__v4si)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtph_epi32(__m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2dq256_mask( + (__v8hf)__A, (__v8si)_mm256_undefined_si256(), (__mmask8)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtph_epi32(__m256i __W, __mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2dq256_mask((__v8hf)__A, (__v8si)__W, + (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtph_epi32(__mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2dq256_mask( + (__v8hf)__A, (__v8si)_mm256_setzero_si256(), (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epu32(__m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2udq128_mask( + (__v8hf)__A, (__v4su)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtph_epu32(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2udq128_mask((__v8hf)__A, (__v4su)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtph_epu32(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2udq128_mask( + (__v8hf)__A, (__v4su)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtph_epu32(__m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2udq256_mask( + (__v8hf)__A, (__v8su)_mm256_undefined_si256(), (__mmask8)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtph_epu32(__m256i __W, __mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2udq256_mask((__v8hf)__A, (__v8su)__W, + (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtph_epu32(__mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2udq256_mask( + (__v8hf)__A, (__v8su)_mm256_setzero_si256(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepi32_ph(__m128i __A) { + return (__m128h)__builtin_ia32_vcvtdq2ph128_mask( + (__v4si)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi32_ph(__m128h __W, __mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_vcvtdq2ph128_mask((__v4si)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi32_ph(__mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_vcvtdq2ph128_mask( + (__v4si)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_cvtepi32_ph(__m256i __A) { + return (__m128h) __builtin_convertvector((__v8si)__A, __v8hf); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi32_ph(__m128h __W, __mmask8 __U, __m256i __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm256_cvtepi32_ph(__A), (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi32_ph(__mmask8 __U, __m256i __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm256_cvtepi32_ph(__A), (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepu32_ph(__m128i __A) { + return (__m128h)__builtin_ia32_vcvtudq2ph128_mask( + (__v4su)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepu32_ph(__m128h __W, __mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_vcvtudq2ph128_mask((__v4su)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepu32_ph(__mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_vcvtudq2ph128_mask( + (__v4su)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_cvtepu32_ph(__m256i __A) { + return (__m128h) __builtin_convertvector((__v8su)__A, __v8hf); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepu32_ph(__m128h __W, __mmask8 __U, __m256i __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm256_cvtepu32_ph(__A), (__v8hf)__W); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepu32_ph(__mmask8 __U, __m256i __A) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, (__v8hf)_mm256_cvtepu32_ph(__A), (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epi32(__m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2dq128_mask( + (__v8hf)__A, (__v4si)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttph_epi32(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2dq128_mask((__v8hf)__A, (__v4si)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttph_epi32(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2dq128_mask( + (__v8hf)__A, (__v4si)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttph_epi32(__m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2dq256_mask( + (__v8hf)__A, (__v8si)_mm256_undefined_si256(), (__mmask8)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttph_epi32(__m256i __W, __mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2dq256_mask((__v8hf)__A, (__v8si)__W, + (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttph_epi32(__mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2dq256_mask( + (__v8hf)__A, (__v8si)_mm256_setzero_si256(), (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epu32(__m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2udq128_mask( + (__v8hf)__A, (__v4su)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttph_epu32(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2udq128_mask((__v8hf)__A, (__v4su)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttph_epu32(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2udq128_mask( + (__v8hf)__A, (__v4su)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttph_epu32(__m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2udq256_mask( + (__v8hf)__A, (__v8su)_mm256_undefined_si256(), (__mmask8)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttph_epu32(__m256i __W, __mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2udq256_mask((__v8hf)__A, (__v8su)__W, + (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttph_epu32(__mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2udq256_mask( + (__v8hf)__A, (__v8su)_mm256_setzero_si256(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepi64_ph(__m128i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph128_mask( + (__v2di)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_ph(__m128h __W, __mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph128_mask((__v2di)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi64_ph(__mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph128_mask( + (__v2di)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_cvtepi64_ph(__m256i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph256_mask( + (__v4di)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_ph(__m128h __W, __mmask8 __U, __m256i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph256_mask((__v4di)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi64_ph(__mmask8 __U, __m256i __A) { + return (__m128h)__builtin_ia32_vcvtqq2ph256_mask( + (__v4di)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epi64(__m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2qq128_mask( + (__v8hf)__A, (__v2di)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtph_epi64(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2qq128_mask((__v8hf)__A, (__v2di)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtph_epi64(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2qq128_mask( + (__v8hf)__A, (__v2di)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtph_epi64(__m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2qq256_mask( + (__v8hf)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtph_epi64(__m256i __W, __mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2qq256_mask((__v8hf)__A, (__v4di)__W, + (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtph_epi64(__mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2qq256_mask( + (__v8hf)__A, (__v4di)_mm256_setzero_si256(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepu64_ph(__m128i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph128_mask( + (__v2du)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepu64_ph(__m128h __W, __mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph128_mask((__v2du)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepu64_ph(__mmask8 __U, __m128i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph128_mask( + (__v2du)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_cvtepu64_ph(__m256i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph256_mask( + (__v4du)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepu64_ph(__m128h __W, __mmask8 __U, __m256i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph256_mask((__v4du)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepu64_ph(__mmask8 __U, __m256i __A) { + return (__m128h)__builtin_ia32_vcvtuqq2ph256_mask( + (__v4du)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epu64(__m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2uqq128_mask( + (__v8hf)__A, (__v2du)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtph_epu64(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2uqq128_mask((__v8hf)__A, (__v2du)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtph_epu64(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvtph2uqq128_mask( + (__v8hf)__A, (__v2du)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtph_epu64(__m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2uqq256_mask( + (__v8hf)__A, (__v4du)_mm256_undefined_si256(), (__mmask8)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtph_epu64(__m256i __W, __mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2uqq256_mask((__v8hf)__A, (__v4du)__W, + (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtph_epu64(__mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvtph2uqq256_mask( + (__v8hf)__A, (__v4du)_mm256_setzero_si256(), (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epi64(__m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2qq128_mask( + (__v8hf)__A, (__v2di)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttph_epi64(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2qq128_mask((__v8hf)__A, (__v2di)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttph_epi64(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2qq128_mask( + (__v8hf)__A, (__v2di)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttph_epi64(__m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2qq256_mask( + (__v8hf)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttph_epi64(__m256i __W, __mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2qq256_mask((__v8hf)__A, (__v4di)__W, + (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttph_epi64(__mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2qq256_mask( + (__v8hf)__A, (__v4di)_mm256_setzero_si256(), (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epu64(__m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2uqq128_mask( + (__v8hf)__A, (__v2du)_mm_undefined_si128(), (__mmask8)-1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttph_epu64(__m128i __W, __mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2uqq128_mask((__v8hf)__A, (__v2du)__W, + (__mmask8)__U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttph_epu64(__mmask8 __U, __m128h __A) { + return (__m128i)__builtin_ia32_vcvttph2uqq128_mask( + (__v8hf)__A, (__v2du)_mm_setzero_si128(), (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttph_epu64(__m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2uqq256_mask( + (__v8hf)__A, (__v4du)_mm256_undefined_si256(), (__mmask8)-1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttph_epu64(__m256i __W, __mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2uqq256_mask((__v8hf)__A, (__v4du)__W, + (__mmask8)__U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttph_epu64(__mmask8 __U, __m128h __A) { + return (__m256i)__builtin_ia32_vcvttph2uqq256_mask( + (__v8hf)__A, (__v4du)_mm256_setzero_si256(), (__mmask8)__U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_cvtxph_ps(__m128h __A) { + return (__m128)__builtin_ia32_vcvtph2psx128_mask( + (__v8hf)__A, (__v4sf)_mm_undefined_ps(), (__mmask8)-1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_mask_cvtxph_ps(__m128 __W, + __mmask8 __U, + __m128h __A) { + return (__m128)__builtin_ia32_vcvtph2psx128_mask((__v8hf)__A, (__v4sf)__W, + (__mmask8)__U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtxph_ps(__mmask8 __U, __m128h __A) { + return (__m128)__builtin_ia32_vcvtph2psx128_mask( + (__v8hf)__A, (__v4sf)_mm_setzero_ps(), (__mmask8)__U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_cvtxph_ps(__m128h __A) { + return (__m256)__builtin_ia32_vcvtph2psx256_mask( + (__v8hf)__A, (__v8sf)_mm256_undefined_ps(), (__mmask8)-1); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtxph_ps(__m256 __W, __mmask8 __U, __m128h __A) { + return (__m256)__builtin_ia32_vcvtph2psx256_mask((__v8hf)__A, (__v8sf)__W, + (__mmask8)__U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtxph_ps(__mmask8 __U, __m128h __A) { + return (__m256)__builtin_ia32_vcvtph2psx256_mask( + (__v8hf)__A, (__v8sf)_mm256_setzero_ps(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtxps_ph(__m128 __A) { + return (__m128h)__builtin_ia32_vcvtps2phx128_mask( + (__v4sf)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_cvtxps_ph(__m128h __W, + __mmask8 __U, + __m128 __A) { + return (__m128h)__builtin_ia32_vcvtps2phx128_mask((__v4sf)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtxps_ph(__mmask8 __U, __m128 __A) { + return (__m128h)__builtin_ia32_vcvtps2phx128_mask( + (__v4sf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 _mm256_cvtxps_ph(__m256 __A) { + return (__m128h)__builtin_ia32_vcvtps2phx256_mask( + (__v8sf)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtxps_ph(__m128h __W, __mmask8 __U, __m256 __A) { + return (__m128h)__builtin_ia32_vcvtps2phx256_mask((__v8sf)__A, (__v8hf)__W, + (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtxps_ph(__mmask8 __U, __m256 __A) { + return (__m128h)__builtin_ia32_vcvtps2phx256_mask( + (__v8sf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmadd_ph(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, + (__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmadd_ph(__m128h __A, + __mmask8 __U, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fmadd_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmadd_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmsub_ph(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, + -(__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmsub_ph(__m128h __A, + __mmask8 __U, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, _mm_fmsub_ph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsub_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, _mm_fmsub_ph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmadd_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph(-(__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmadd_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph(-(__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmsub_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph(-(__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fmadd_ph(__m256h __A, + __m256h __B, + __m256h __C) { + return (__m256h)__builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, + (__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fmadd_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), + (__v16hf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmadd_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), + (__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmadd_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fmsub_ph(__m256h __A, + __m256h __B, + __m256h __C) { + return (__m256h)__builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, + -(__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fmsub_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), + (__v16hf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmsub_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask3_fnmadd_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256(-(__v16hf)__A, (__v16hf)__B, (__v16hf)__C), + (__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fnmadd_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256(-(__v16hf)__A, (__v16hf)__B, (__v16hf)__C), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fnmsub_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256(-(__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmaddsub_ph(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, + (__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fmaddsub_ph(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fmaddsub_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmaddsub_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmsubadd_ph(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, + -(__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fmsubadd_ph(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), + (__v8hf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsubadd_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), + (__v8hf)_mm_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_fmaddsub_ph(__m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, + (__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fmaddsub_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), + (__v16hf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmaddsub_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), + (__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmaddsub_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_fmsubadd_ph(__m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, + -(__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fmsubadd_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), + (__v16hf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmsubadd_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), + (__v16hf)_mm256_setzero_ph()); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsub_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), + (__v8hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmsub_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), + (__v16hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsubadd_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), + (__v8hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmsubadd_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), + (__v16hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fnmadd_ph(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, + (__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fnmadd_ph(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, (__v8hf)__C), + (__v8hf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fnmadd_ph(__m256h __A, + __m256h __B, + __m256h __C) { + return (__m256h)__builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, + (__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fnmadd_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, (__v16hf)__C), + (__v16hf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fnmsub_ph(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, + -(__v8hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fnmsub_ph(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, -(__v8hf)__C), + (__v8hf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmsub_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_selectph_128( + (__mmask8)__U, + __builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, -(__v8hf)__C), + (__v8hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fnmsub_ph(__m256h __A, + __m256h __B, + __m256h __C) { + return (__m256h)__builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, + -(__v16hf)__C); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fnmsub_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, -(__v16hf)__C), + (__v16hf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask3_fnmsub_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { + return (__m256h)__builtin_ia32_selectph_256( + (__mmask16)__U, + __builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, -(__v16hf)__C), + (__v16hf)__C); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fcmul_pch(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_vfcmulcph128_mask( + (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fcmul_pch(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_vfcmulcph128_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__W, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fcmul_pch(__mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_vfcmulcph128_mask( + (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS128 _mm256_fcmul_pch(__m256h __A, + __m256h __B) { + return (__m256h)__builtin_ia32_vfcmulcph256_mask( + (__v8sf)__A, (__v8sf)__B, (__v8sf)_mm256_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fcmul_pch(__m256h __W, __mmask8 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_vfcmulcph256_mask((__v8sf)__A, (__v8sf)__B, + (__v8sf)__W, (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fcmul_pch(__mmask8 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_vfcmulcph256_mask( + (__v8sf)__A, (__v8sf)__B, (__v8sf)_mm256_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fcmadd_pch(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfcmaddcph128_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fcmadd_pch(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectps_128( + __U, + __builtin_ia32_vfcmaddcph128_mask((__v4sf)__A, (__v4sf)(__m128h)__B, + (__v4sf)__C, (__mmask8)__U), + (__v4sf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fcmadd_pch(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_vfcmaddcph128_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fcmadd_pch(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_vfcmaddcph128_maskz( + (__v4sf)__A, (__v4sf)__B, (__v4sf)__C, (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fcmadd_pch(__m256h __A, + __m256h __B, + __m256h __C) { + return (__m256h)__builtin_ia32_vfcmaddcph256_mask((__v8sf)__A, (__v8sf)__B, + (__v8sf)__C, (__mmask8)-1); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fcmadd_pch(__m256h __A, __mmask8 __U, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectps_256( + __U, + __builtin_ia32_vfcmaddcph256_mask((__v8sf)__A, (__v8sf)__B, (__v8sf)__C, + (__mmask8)__U), + (__v8sf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask3_fcmadd_pch(__m256h __A, __m256h __B, __m256h __C, __mmask8 __U) { + return (__m256h)__builtin_ia32_vfcmaddcph256_mask((__v8sf)__A, (__v8sf)__B, + (__v8sf)__C, (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fcmadd_pch(__mmask8 __U, __m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_vfcmaddcph256_maskz( + (__v8sf)__A, (__v8sf)__B, (__v8sf)__C, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmul_pch(__m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_vfmulcph128_mask( + (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmul_pch(__m128h __W, + __mmask8 __U, + __m128h __A, + __m128h __B) { + return (__m128h)__builtin_ia32_vfmulcph128_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__W, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmul_pch(__mmask8 __U, __m128h __A, __m128h __B) { + return (__m128h)__builtin_ia32_vfmulcph128_mask( + (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fmul_pch(__m256h __A, + __m256h __B) { + return (__m256h)__builtin_ia32_vfmulcph256_mask( + (__v8sf)__A, (__v8sf)__B, (__v8sf)_mm256_undefined_ph(), (__mmask8)-1); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fmul_pch(__m256h __W, __mmask8 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_vfmulcph256_mask((__v8sf)__A, (__v8sf)__B, + (__v8sf)__W, (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmul_pch(__mmask8 __U, __m256h __A, __m256h __B) { + return (__m256h)__builtin_ia32_vfmulcph256_mask( + (__v8sf)__A, (__v8sf)__B, (__v8sf)_mm256_setzero_ph(), (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmadd_pch(__m128h __A, + __m128h __B, + __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddcph128_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)-1); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask_fmadd_pch(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_selectps_128( + __U, + __builtin_ia32_vfmaddcph128_mask((__v4sf)__A, (__v4sf)__B, (__v4sf)__C, + (__mmask8)__U), + (__v4sf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_mask3_fmadd_pch(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { + return (__m128h)__builtin_ia32_vfmaddcph128_mask((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_maskz_fmadd_pch(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { + return (__m128h)__builtin_ia32_vfmaddcph128_maskz((__v4sf)__A, (__v4sf)__B, + (__v4sf)__C, (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fmadd_pch(__m256h __A, + __m256h __B, + __m256h __C) { + return (__m256h)__builtin_ia32_vfmaddcph256_mask((__v8sf)__A, (__v8sf)__B, + (__v8sf)__C, (__mmask8)-1); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_fmadd_pch(__m256h __A, __mmask8 __U, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_selectps_256( + __U, + __builtin_ia32_vfmaddcph256_mask((__v8sf)__A, (__v8sf)__B, (__v8sf)__C, + (__mmask8)__U), + (__v8sf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmadd_pch(__m256h __A, __m256h __B, __m256h __C, __mmask8 __U) { + return (__m256h)__builtin_ia32_vfmaddcph256_mask((__v8sf)__A, (__v8sf)__B, + (__v8sf)__C, (__mmask8)__U); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmadd_pch(__mmask8 __U, __m256h __A, __m256h __B, __m256h __C) { + return (__m256h)__builtin_ia32_vfmaddcph256_maskz((__v8sf)__A, (__v8sf)__B, + (__v8sf)__C, (__mmask8)__U); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_blend_ph(__mmask8 __U, + __m128h __A, + __m128h __W) { + return (__m128h)__builtin_ia32_selectph_128((__mmask8)__U, (__v8hf)__W, + (__v8hf)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_mask_blend_ph(__mmask16 __U, __m256h __A, __m256h __W) { + return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U, (__v16hf)__W, + (__v16hf)__A); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_permutex2var_ph(__m128h __A, __m128i __I, __m128h __B) { + return (__m128h)__builtin_ia32_vpermi2varhi128((__v8hi)__A, (__v8hi)__I, + (__v8hi)__B); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_permutex2var_ph(__m256h __A, __m256i __I, __m256h __B) { + return (__m256h)__builtin_ia32_vpermi2varhi256((__v16hi)__A, (__v16hi)__I, + (__v16hi)__B); +} + +static __inline__ __m128h __DEFAULT_FN_ATTRS128 +_mm_permutexvar_ph(__m128i __A, __m128h __B) { + return (__m128h)__builtin_ia32_permvarhi128((__v8hi)__B, (__v8hi)__A); +} + +static __inline__ __m256h __DEFAULT_FN_ATTRS256 +_mm256_permutexvar_ph(__m256i __A, __m256h __B) { + return (__m256h)__builtin_ia32_permvarhi256((__v16hi)__B, (__v16hi)__A); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS256 +_mm256_reduce_add_ph(__m256h __W) { + return __builtin_ia32_reduce_fadd_ph256(-0.0f16, __W); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS256 +_mm256_reduce_mul_ph(__m256h __W) { + return __builtin_ia32_reduce_fmul_ph256(1.0f16, __W); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS256 +_mm256_reduce_max_ph(__m256h __V) { + return __builtin_ia32_reduce_fmax_ph256(__V); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS256 +_mm256_reduce_min_ph(__m256h __V) { + return __builtin_ia32_reduce_fmin_ph256(__V); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS128 +_mm_reduce_add_ph(__m128h __W) { + return __builtin_ia32_reduce_fadd_ph128(-0.0f16, __W); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS128 +_mm_reduce_mul_ph(__m128h __W) { + return __builtin_ia32_reduce_fmul_ph128(1.0f16, __W); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS128 +_mm_reduce_max_ph(__m128h __V) { + return __builtin_ia32_reduce_fmax_ph128(__V); +} + +static __inline__ _Float16 __DEFAULT_FN_ATTRS128 +_mm_reduce_min_ph(__m128h __V) { + return __builtin_ia32_reduce_fmin_ph128(__V); +} + +// intrinsics below are alias for f*mul_*ch +#define _mm_mul_pch(A, B) _mm_fmul_pch(A, B) +#define _mm_mask_mul_pch(W, U, A, B) _mm_mask_fmul_pch(W, U, A, B) +#define _mm_maskz_mul_pch(U, A, B) _mm_maskz_fmul_pch(U, A, B) +#define _mm256_mul_pch(A, B) _mm256_fmul_pch(A, B) +#define _mm256_mask_mul_pch(W, U, A, B) _mm256_mask_fmul_pch(W, U, A, B) +#define _mm256_maskz_mul_pch(U, A, B) _mm256_maskz_fmul_pch(U, A, B) + +#define _mm_cmul_pch(A, B) _mm_fcmul_pch(A, B) +#define _mm_mask_cmul_pch(W, U, A, B) _mm_mask_fcmul_pch(W, U, A, B) +#define _mm_maskz_cmul_pch(U, A, B) _mm_maskz_fcmul_pch(U, A, B) +#define _mm256_cmul_pch(A, B) _mm256_fcmul_pch(A, B) +#define _mm256_mask_cmul_pch(W, U, A, B) _mm256_mask_fcmul_pch(W, U, A, B) +#define _mm256_maskz_cmul_pch(U, A, B) _mm256_maskz_fcmul_pch(U, A, B) + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a46730a25edd3977a6c24e9e7847370d5b7d9283 GIT binary patch literal 161564 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h new file mode 100644 index 00000000..3e8355f1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h @@ -0,0 +1,8431 @@ +/*===---- avx512vlintrin.h - AVX512VL intrinsics ---------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <avx512vlintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVX512VLINTRIN_H +#define __AVX512VLINTRIN_H + +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl"), __min_vector_width__(256))) + +typedef short __v2hi __attribute__((__vector_size__(4))); +typedef char __v4qi __attribute__((__vector_size__(4))); +typedef char __v2qi __attribute__((__vector_size__(2))); + +/* Integer compare */ + +#define _mm_cmpeq_epi32_mask(A, B) \ + _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_EQ) +#define _mm_mask_cmpeq_epi32_mask(k, A, B) \ + _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm_cmpge_epi32_mask(A, B) \ + _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_GE) +#define _mm_mask_cmpge_epi32_mask(k, A, B) \ + _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm_cmpgt_epi32_mask(A, B) \ + _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_GT) +#define _mm_mask_cmpgt_epi32_mask(k, A, B) \ + _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm_cmple_epi32_mask(A, B) \ + _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_LE) +#define _mm_mask_cmple_epi32_mask(k, A, B) \ + _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm_cmplt_epi32_mask(A, B) \ + _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_LT) +#define _mm_mask_cmplt_epi32_mask(k, A, B) \ + _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm_cmpneq_epi32_mask(A, B) \ + _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_NE) +#define _mm_mask_cmpneq_epi32_mask(k, A, B) \ + _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm256_cmpeq_epi32_mask(A, B) \ + _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_EQ) +#define _mm256_mask_cmpeq_epi32_mask(k, A, B) \ + _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm256_cmpge_epi32_mask(A, B) \ + _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_GE) +#define _mm256_mask_cmpge_epi32_mask(k, A, B) \ + _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm256_cmpgt_epi32_mask(A, B) \ + _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_GT) +#define _mm256_mask_cmpgt_epi32_mask(k, A, B) \ + _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm256_cmple_epi32_mask(A, B) \ + _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_LE) +#define _mm256_mask_cmple_epi32_mask(k, A, B) \ + _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm256_cmplt_epi32_mask(A, B) \ + _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_LT) +#define _mm256_mask_cmplt_epi32_mask(k, A, B) \ + _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm256_cmpneq_epi32_mask(A, B) \ + _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_NE) +#define _mm256_mask_cmpneq_epi32_mask(k, A, B) \ + _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm_cmpeq_epu32_mask(A, B) \ + _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_EQ) +#define _mm_mask_cmpeq_epu32_mask(k, A, B) \ + _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm_cmpge_epu32_mask(A, B) \ + _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_GE) +#define _mm_mask_cmpge_epu32_mask(k, A, B) \ + _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm_cmpgt_epu32_mask(A, B) \ + _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_GT) +#define _mm_mask_cmpgt_epu32_mask(k, A, B) \ + _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm_cmple_epu32_mask(A, B) \ + _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_LE) +#define _mm_mask_cmple_epu32_mask(k, A, B) \ + _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm_cmplt_epu32_mask(A, B) \ + _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_LT) +#define _mm_mask_cmplt_epu32_mask(k, A, B) \ + _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm_cmpneq_epu32_mask(A, B) \ + _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_NE) +#define _mm_mask_cmpneq_epu32_mask(k, A, B) \ + _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm256_cmpeq_epu32_mask(A, B) \ + _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_EQ) +#define _mm256_mask_cmpeq_epu32_mask(k, A, B) \ + _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm256_cmpge_epu32_mask(A, B) \ + _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_GE) +#define _mm256_mask_cmpge_epu32_mask(k, A, B) \ + _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm256_cmpgt_epu32_mask(A, B) \ + _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_GT) +#define _mm256_mask_cmpgt_epu32_mask(k, A, B) \ + _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm256_cmple_epu32_mask(A, B) \ + _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_LE) +#define _mm256_mask_cmple_epu32_mask(k, A, B) \ + _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm256_cmplt_epu32_mask(A, B) \ + _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_LT) +#define _mm256_mask_cmplt_epu32_mask(k, A, B) \ + _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm256_cmpneq_epu32_mask(A, B) \ + _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_NE) +#define _mm256_mask_cmpneq_epu32_mask(k, A, B) \ + _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm_cmpeq_epi64_mask(A, B) \ + _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_EQ) +#define _mm_mask_cmpeq_epi64_mask(k, A, B) \ + _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm_cmpge_epi64_mask(A, B) \ + _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_GE) +#define _mm_mask_cmpge_epi64_mask(k, A, B) \ + _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm_cmpgt_epi64_mask(A, B) \ + _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_GT) +#define _mm_mask_cmpgt_epi64_mask(k, A, B) \ + _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm_cmple_epi64_mask(A, B) \ + _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_LE) +#define _mm_mask_cmple_epi64_mask(k, A, B) \ + _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm_cmplt_epi64_mask(A, B) \ + _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_LT) +#define _mm_mask_cmplt_epi64_mask(k, A, B) \ + _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm_cmpneq_epi64_mask(A, B) \ + _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_NE) +#define _mm_mask_cmpneq_epi64_mask(k, A, B) \ + _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm256_cmpeq_epi64_mask(A, B) \ + _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_EQ) +#define _mm256_mask_cmpeq_epi64_mask(k, A, B) \ + _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm256_cmpge_epi64_mask(A, B) \ + _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_GE) +#define _mm256_mask_cmpge_epi64_mask(k, A, B) \ + _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm256_cmpgt_epi64_mask(A, B) \ + _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_GT) +#define _mm256_mask_cmpgt_epi64_mask(k, A, B) \ + _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm256_cmple_epi64_mask(A, B) \ + _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_LE) +#define _mm256_mask_cmple_epi64_mask(k, A, B) \ + _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm256_cmplt_epi64_mask(A, B) \ + _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_LT) +#define _mm256_mask_cmplt_epi64_mask(k, A, B) \ + _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm256_cmpneq_epi64_mask(A, B) \ + _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_NE) +#define _mm256_mask_cmpneq_epi64_mask(k, A, B) \ + _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm_cmpeq_epu64_mask(A, B) \ + _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_EQ) +#define _mm_mask_cmpeq_epu64_mask(k, A, B) \ + _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm_cmpge_epu64_mask(A, B) \ + _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_GE) +#define _mm_mask_cmpge_epu64_mask(k, A, B) \ + _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm_cmpgt_epu64_mask(A, B) \ + _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_GT) +#define _mm_mask_cmpgt_epu64_mask(k, A, B) \ + _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm_cmple_epu64_mask(A, B) \ + _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_LE) +#define _mm_mask_cmple_epu64_mask(k, A, B) \ + _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm_cmplt_epu64_mask(A, B) \ + _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_LT) +#define _mm_mask_cmplt_epu64_mask(k, A, B) \ + _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm_cmpneq_epu64_mask(A, B) \ + _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_NE) +#define _mm_mask_cmpneq_epu64_mask(k, A, B) \ + _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_NE) + +#define _mm256_cmpeq_epu64_mask(A, B) \ + _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_EQ) +#define _mm256_mask_cmpeq_epu64_mask(k, A, B) \ + _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_EQ) +#define _mm256_cmpge_epu64_mask(A, B) \ + _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_GE) +#define _mm256_mask_cmpge_epu64_mask(k, A, B) \ + _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GE) +#define _mm256_cmpgt_epu64_mask(A, B) \ + _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_GT) +#define _mm256_mask_cmpgt_epu64_mask(k, A, B) \ + _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GT) +#define _mm256_cmple_epu64_mask(A, B) \ + _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_LE) +#define _mm256_mask_cmple_epu64_mask(k, A, B) \ + _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LE) +#define _mm256_cmplt_epu64_mask(A, B) \ + _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_LT) +#define _mm256_mask_cmplt_epu64_mask(k, A, B) \ + _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LT) +#define _mm256_cmpneq_epu64_mask(A, B) \ + _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_NE) +#define _mm256_mask_cmpneq_epu64_mask(k, A, B) \ + _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_NE) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_add_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_add_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_add_epi32(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_add_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_add_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_add_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_add_epi64(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_add_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sub_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_sub_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sub_epi32(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_sub_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sub_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_sub_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sub_epi64(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_sub_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_add_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_add_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_add_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_add_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_add_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_add_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_add_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_add_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sub_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_sub_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sub_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_sub_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sub_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_sub_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sub_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_sub_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mul_epi32(__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_mul_epi32(__X, __Y), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mul_epi32(__mmask8 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_mul_epi32(__X, __Y), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mul_epi32(__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_mul_epi32(__X, __Y), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mul_epi32(__mmask8 __M, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_mul_epi32(__X, __Y), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mul_epu32(__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_mul_epu32(__X, __Y), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mul_epu32(__mmask8 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_mul_epu32(__X, __Y), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mul_epu32(__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_mul_epu32(__X, __Y), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mul_epu32(__mmask8 __M, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_mul_epu32(__X, __Y), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mullo_epi32(__mmask8 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_mullo_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mullo_epi32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_mullo_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mullo_epi32(__mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_mullo_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mullo_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_mullo_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_and_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)((__v8su)__a & (__v8su)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_and_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_and_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_and_epi32(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)_mm256_mask_and_epi32(_mm256_setzero_si256(), __U, __A, __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_and_epi32(__m128i __a, __m128i __b) +{ + return (__m128i)((__v4su)__a & (__v4su)__b); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_and_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_and_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_and_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)_mm_mask_and_epi32(_mm_setzero_si128(), __U, __A, __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_andnot_epi32(__m256i __A, __m256i __B) +{ + return (__m256i)(~(__v8su)__A & (__v8su)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_andnot_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_andnot_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_andnot_epi32(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)_mm256_mask_andnot_epi32(_mm256_setzero_si256(), + __U, __A, __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_andnot_epi32(__m128i __A, __m128i __B) +{ + return (__m128i)(~(__v4su)__A & (__v4su)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_andnot_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_andnot_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_andnot_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)_mm_mask_andnot_epi32(_mm_setzero_si128(), __U, __A, __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_or_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)((__v8su)__a | (__v8su)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_or_epi32 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_or_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_or_epi32(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)_mm256_mask_or_epi32(_mm256_setzero_si256(), __U, __A, __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_or_epi32(__m128i __a, __m128i __b) +{ + return (__m128i)((__v4su)__a | (__v4su)__b); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_or_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_or_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_or_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)_mm_mask_or_epi32(_mm_setzero_si128(), __U, __A, __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_xor_epi32(__m256i __a, __m256i __b) +{ + return (__m256i)((__v8su)__a ^ (__v8su)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_xor_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_xor_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_xor_epi32(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)_mm256_mask_xor_epi32(_mm256_setzero_si256(), __U, __A, __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_xor_epi32(__m128i __a, __m128i __b) +{ + return (__m128i)((__v4su)__a ^ (__v4su)__b); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_xor_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_xor_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_xor_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)_mm_mask_xor_epi32(_mm_setzero_si128(), __U, __A, __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_and_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4du)__a & (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_and_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_and_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_and_epi64(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)_mm256_mask_and_epi64(_mm256_setzero_si256(), __U, __A, __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_and_epi64(__m128i __a, __m128i __b) +{ + return (__m128i)((__v2du)__a & (__v2du)__b); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_and_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_and_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_and_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)_mm_mask_and_epi64(_mm_setzero_si128(), __U, __A, __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_andnot_epi64(__m256i __A, __m256i __B) +{ + return (__m256i)(~(__v4du)__A & (__v4du)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_andnot_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_andnot_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_andnot_epi64(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)_mm256_mask_andnot_epi64(_mm256_setzero_si256(), + __U, __A, __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_andnot_epi64(__m128i __A, __m128i __B) +{ + return (__m128i)(~(__v2du)__A & (__v2du)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_andnot_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_andnot_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_andnot_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)_mm_mask_andnot_epi64(_mm_setzero_si128(), __U, __A, __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_or_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4du)__a | (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_or_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_or_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_or_epi64(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)_mm256_mask_or_epi64(_mm256_setzero_si256(), __U, __A, __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_or_epi64(__m128i __a, __m128i __b) +{ + return (__m128i)((__v2du)__a | (__v2du)__b); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_or_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_or_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_or_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)_mm_mask_or_epi64(_mm_setzero_si128(), __U, __A, __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_xor_epi64(__m256i __a, __m256i __b) +{ + return (__m256i)((__v4du)__a ^ (__v4du)__b); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_xor_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_xor_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_xor_epi64(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)_mm256_mask_xor_epi64(_mm256_setzero_si256(), __U, __A, __B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_xor_epi64(__m128i __a, __m128i __b) +{ + return (__m128i)((__v2du)__a ^ (__v2du)__b); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_xor_epi64(__m128i __W, __mmask8 __U, __m128i __A, + __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_xor_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_xor_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)_mm_mask_xor_epi64(_mm_setzero_si128(), __U, __A, __B); +} + +#define _mm_cmp_epi32_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpd128_mask((__v4si)(__m128i)(a), \ + (__v4si)(__m128i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm_mask_cmp_epi32_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpd128_mask((__v4si)(__m128i)(a), \ + (__v4si)(__m128i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm_cmp_epu32_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)(__m128i)(a), \ + (__v4si)(__m128i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm_mask_cmp_epu32_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)(__m128i)(a), \ + (__v4si)(__m128i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm256_cmp_epi32_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpd256_mask((__v8si)(__m256i)(a), \ + (__v8si)(__m256i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm256_mask_cmp_epi32_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpd256_mask((__v8si)(__m256i)(a), \ + (__v8si)(__m256i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm256_cmp_epu32_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)(__m256i)(a), \ + (__v8si)(__m256i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm256_mask_cmp_epu32_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)(__m256i)(a), \ + (__v8si)(__m256i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm_cmp_epi64_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpq128_mask((__v2di)(__m128i)(a), \ + (__v2di)(__m128i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm_mask_cmp_epi64_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpq128_mask((__v2di)(__m128i)(a), \ + (__v2di)(__m128i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm_cmp_epu64_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)(__m128i)(a), \ + (__v2di)(__m128i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm_mask_cmp_epu64_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)(__m128i)(a), \ + (__v2di)(__m128i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm256_cmp_epi64_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpq256_mask((__v4di)(__m256i)(a), \ + (__v4di)(__m256i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm256_mask_cmp_epi64_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpq256_mask((__v4di)(__m256i)(a), \ + (__v4di)(__m256i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm256_cmp_epu64_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)(__m256i)(a), \ + (__v4di)(__m256i)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm256_mask_cmp_epu64_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)(__m256i)(a), \ + (__v4di)(__m256i)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm256_cmp_ps_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpps256_mask((__v8sf)(__m256)(a), \ + (__v8sf)(__m256)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm256_mask_cmp_ps_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpps256_mask((__v8sf)(__m256)(a), \ + (__v8sf)(__m256)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm256_cmp_pd_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmppd256_mask((__v4df)(__m256d)(a), \ + (__v4df)(__m256d)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm256_mask_cmp_pd_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmppd256_mask((__v4df)(__m256d)(a), \ + (__v4df)(__m256d)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm_cmp_ps_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmpps128_mask((__v4sf)(__m128)(a), \ + (__v4sf)(__m128)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm_mask_cmp_ps_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmpps128_mask((__v4sf)(__m128)(a), \ + (__v4sf)(__m128)(b), (int)(p), \ + (__mmask8)(m))) + +#define _mm_cmp_pd_mask(a, b, p) \ + ((__mmask8)__builtin_ia32_cmppd128_mask((__v2df)(__m128d)(a), \ + (__v2df)(__m128d)(b), (int)(p), \ + (__mmask8)-1)) + +#define _mm_mask_cmp_pd_mask(m, a, b, p) \ + ((__mmask8)__builtin_ia32_cmppd128_mask((__v2df)(__m128d)(a), \ + (__v2df)(__m128d)(b), (int)(p), \ + (__mmask8)(m))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fmadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + (__v2df) __B, + (__v2df) __C), + (__v2df) __A); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fmadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + (__v2df) __B, + (__v2df) __C), + (__v2df) __C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fmadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + (__v2df) __B, + (__v2df) __C), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fmsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + (__v2df) __B, + -(__v2df) __C), + (__v2df) __A); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + (__v2df) __B, + -(__v2df) __C), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd (-(__v2df) __A, + (__v2df) __B, + (__v2df) __C), + (__v2df) __C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd (-(__v2df) __A, + (__v2df) __B, + (__v2df) __C), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd (-(__v2df) __A, + (__v2df) __B, + -(__v2df) __C), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_fmadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + (__v4df) __B, + (__v4df) __C), + (__v4df) __A); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + (__v4df) __B, + (__v4df) __C), + (__v4df) __C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + (__v4df) __B, + (__v4df) __C), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_fmsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + (__v4df) __B, + -(__v4df) __C), + (__v4df) __A); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + (__v4df) __B, + -(__v4df) __C), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask3_fnmadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 (-(__v4df) __A, + (__v4df) __B, + (__v4df) __C), + (__v4df) __C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_fnmadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 (-(__v4df) __A, + (__v4df) __B, + (__v4df) __C), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_fnmsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 (-(__v4df) __A, + (__v4df) __B, + -(__v4df) __C), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fmadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __C), + (__v4sf) __A); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fmadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __C), + (__v4sf) __C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fmadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __C), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fmsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + (__v4sf) __B, + -(__v4sf) __C), + (__v4sf) __A); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + (__v4sf) __B, + -(__v4sf) __C), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps (-(__v4sf) __A, + (__v4sf) __B, + (__v4sf) __C), + (__v4sf) __C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps (-(__v4sf) __A, + (__v4sf) __B, + (__v4sf) __C), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fnmsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps (-(__v4sf) __A, + (__v4sf) __B, + -(__v4sf) __C), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_fmadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) __C), + (__v8sf) __A); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) __C), + (__v8sf) __C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) __C), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_fmsub_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + (__v8sf) __B, + -(__v8sf) __C), + (__v8sf) __A); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + (__v8sf) __B, + -(__v8sf) __C), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask3_fnmadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 (-(__v8sf) __A, + (__v8sf) __B, + (__v8sf) __C), + (__v8sf) __C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_fnmadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 (-(__v8sf) __A, + (__v8sf) __B, + (__v8sf) __C), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_fnmsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 (-(__v8sf) __A, + (__v8sf) __B, + -(__v8sf) __C), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fmaddsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddsubpd ((__v2df) __A, + (__v2df) __B, + (__v2df) __C), + (__v2df) __A); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fmaddsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddsubpd ((__v2df) __A, + (__v2df) __B, + (__v2df) __C), + (__v2df) __C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fmaddsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddsubpd ((__v2df) __A, + (__v2df) __B, + (__v2df) __C), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fmsubadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddsubpd ((__v2df) __A, + (__v2df) __B, + -(__v2df) __C), + (__v2df) __A); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsubadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddsubpd ((__v2df) __A, + (__v2df) __B, + -(__v2df) __C), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_fmaddsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, + (__v4df) __B, + (__v4df) __C), + (__v4df) __A); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmaddsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, + (__v4df) __B, + (__v4df) __C), + (__v4df) __C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmaddsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, + (__v4df) __B, + (__v4df) __C), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_fmsubadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, + (__v4df) __B, + -(__v4df) __C), + (__v4df) __A); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmsubadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, + (__v4df) __B, + -(__v4df) __C), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fmaddsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddsubps ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __C), + (__v4sf) __A); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fmaddsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddsubps ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __C), + (__v4sf) __C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fmaddsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddsubps ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __C), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fmsubadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddsubps ((__v4sf) __A, + (__v4sf) __B, + -(__v4sf) __C), + (__v4sf) __A); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_fmsubadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddsubps ((__v4sf) __A, + (__v4sf) __B, + -(__v4sf) __C), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_fmaddsub_ps(__m256 __A, __mmask8 __U, __m256 __B, + __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) __C), + (__v8sf) __A); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmaddsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) __C), + (__v8sf) __C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmaddsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) __C), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_fmsubadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, + (__v8sf) __B, + -(__v8sf) __C), + (__v8sf) __A); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_fmsubadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, + (__v8sf) __B, + -(__v8sf) __C), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + (__v2df) __B, + -(__v2df) __C), + (__v2df) __C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + (__v4df) __B, + -(__v4df) __C), + (__v4df) __C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + (__v4sf) __B, + -(__v4sf) __C), + (__v4sf) __C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + (__v8sf) __B, + -(__v8sf) __C), + (__v8sf) __C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsubadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddsubpd ((__v2df) __A, + (__v2df) __B, + -(__v2df) __C), + (__v2df) __C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmsubadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, + (__v4df) __B, + -(__v4df) __C), + (__v4df) __C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fmsubadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddsubps ((__v4sf) __A, + (__v4sf) __B, + -(__v4sf) __C), + (__v4sf) __C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask3_fmsubadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, + (__v8sf) __B, + -(__v8sf) __C), + (__v8sf) __C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fnmadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + -(__v2df) __B, + (__v2df) __C), + (__v2df) __A); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_fnmadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + -(__v4df) __B, + (__v4df) __C), + (__v4df) __A); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fnmadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + -(__v4sf) __B, + (__v4sf) __C), + (__v4sf) __A); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_fnmadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + -(__v8sf) __B, + (__v8sf) __C), + (__v8sf) __A); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_fnmsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + -(__v2df) __B, + -(__v2df) __C), + (__v2df) __A); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) +{ + return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, + __builtin_ia32_vfmaddpd ((__v2df) __A, + -(__v2df) __B, + -(__v2df) __C), + (__v2df) __C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_fnmsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + -(__v4df) __B, + -(__v4df) __C), + (__v4df) __A); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask3_fnmsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) +{ + return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, + __builtin_ia32_vfmaddpd256 ((__v4df) __A, + -(__v4df) __B, + -(__v4df) __C), + (__v4df) __C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_fnmsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + -(__v4sf) __B, + -(__v4sf) __C), + (__v4sf) __A); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask3_fnmsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) +{ + return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, + __builtin_ia32_vfmaddps ((__v4sf) __A, + -(__v4sf) __B, + -(__v4sf) __C), + (__v4sf) __C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_fnmsub_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + -(__v8sf) __B, + -(__v8sf) __C), + (__v8sf) __A); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask3_fnmsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) +{ + return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, + __builtin_ia32_vfmaddps256 ((__v8sf) __A, + -(__v8sf) __B, + -(__v8sf) __C), + (__v8sf) __C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_add_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_add_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_add_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_add_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_add_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_add_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_add_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_add_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_add_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_add_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_add_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_add_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_add_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_add_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_add_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_add_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_blend_epi32 (__mmask8 __U, __m128i __A, __m128i __W) { + return (__m128i) __builtin_ia32_selectd_128 ((__mmask8) __U, + (__v4si) __W, + (__v4si) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_blend_epi32 (__mmask8 __U, __m256i __A, __m256i __W) { + return (__m256i) __builtin_ia32_selectd_256 ((__mmask8) __U, + (__v8si) __W, + (__v8si) __A); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_blend_pd (__mmask8 __U, __m128d __A, __m128d __W) { + return (__m128d) __builtin_ia32_selectpd_128 ((__mmask8) __U, + (__v2df) __W, + (__v2df) __A); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_blend_pd (__mmask8 __U, __m256d __A, __m256d __W) { + return (__m256d) __builtin_ia32_selectpd_256 ((__mmask8) __U, + (__v4df) __W, + (__v4df) __A); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_blend_ps (__mmask8 __U, __m128 __A, __m128 __W) { + return (__m128) __builtin_ia32_selectps_128 ((__mmask8) __U, + (__v4sf) __W, + (__v4sf) __A); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_blend_ps (__mmask8 __U, __m256 __A, __m256 __W) { + return (__m256) __builtin_ia32_selectps_256 ((__mmask8) __U, + (__v8sf) __W, + (__v8sf) __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_blend_epi64 (__mmask8 __U, __m128i __A, __m128i __W) { + return (__m128i) __builtin_ia32_selectq_128 ((__mmask8) __U, + (__v2di) __W, + (__v2di) __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_blend_epi64 (__mmask8 __U, __m256i __A, __m256i __W) { + return (__m256i) __builtin_ia32_selectq_256 ((__mmask8) __U, + (__v4di) __W, + (__v4di) __A); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_compress_pd (__m128d __W, __mmask8 __U, __m128d __A) { + return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_compress_pd (__mmask8 __U, __m128d __A) { + return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A, + (__v2df) + _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_compress_pd (__m256d __W, __mmask8 __U, __m256d __A) { + return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A, + (__v4df) __W, + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_compress_pd (__mmask8 __U, __m256d __A) { + return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_compress_epi64 (__m128i __W, __mmask8 __U, __m128i __A) { + return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_compress_epi64 (__mmask8 __U, __m128i __A) { + return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A, + (__v2di) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_compress_epi64 (__m256i __W, __mmask8 __U, __m256i __A) { + return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_compress_epi64 (__mmask8 __U, __m256i __A) { + return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A, + (__v4di) + _mm256_setzero_si256 (), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_compress_ps (__m128 __W, __mmask8 __U, __m128 __A) { + return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_compress_ps (__mmask8 __U, __m128 __A) { + return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_compress_ps (__m256 __W, __mmask8 __U, __m256 __A) { + return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_compress_ps (__mmask8 __U, __m256 __A) { + return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_compress_epi32 (__m128i __W, __mmask8 __U, __m128i __A) { + return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_compress_epi32 (__mmask8 __U, __m128i __A) { + return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_compress_epi32 (__m256i __W, __mmask8 __U, __m256i __A) { + return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A, + (__v8si) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_compress_epi32 (__mmask8 __U, __m256i __A) { + return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m128d __A) { + __builtin_ia32_compressstoredf128_mask ((__v2df *) __P, + (__v2df) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m256d __A) { + __builtin_ia32_compressstoredf256_mask ((__v4df *) __P, + (__v4df) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m128i __A) { + __builtin_ia32_compressstoredi128_mask ((__v2di *) __P, + (__v2di) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m256i __A) { + __builtin_ia32_compressstoredi256_mask ((__v4di *) __P, + (__v4di) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m128 __A) { + __builtin_ia32_compressstoresf128_mask ((__v4sf *) __P, + (__v4sf) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m256 __A) { + __builtin_ia32_compressstoresf256_mask ((__v8sf *) __P, + (__v8sf) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m128i __A) { + __builtin_ia32_compressstoresi128_mask ((__v4si *) __P, + (__v4si) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m256i __A) { + __builtin_ia32_compressstoresi256_mask ((__v8si *) __P, + (__v8si) __A, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi32_pd (__m128d __W, __mmask8 __U, __m128i __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8) __U, + (__v2df)_mm_cvtepi32_pd(__A), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8) __U, + (__v2df)_mm_cvtepi32_pd(__A), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi32_pd (__m256d __W, __mmask8 __U, __m128i __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8) __U, + (__v4df)_mm256_cvtepi32_pd(__A), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8) __U, + (__v4df)_mm256_cvtepi32_pd(__A), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi32_ps (__m128 __W, __mmask8 __U, __m128i __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_cvtepi32_ps(__A), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi32_ps (__mmask8 __U, __m128i __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_cvtepi32_ps(__A), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi32_ps (__m256 __W, __mmask8 __U, __m256i __A) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_cvtepi32_ps(__A), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi32_ps (__mmask8 __U, __m256i __A) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_cvtepi32_ps(__A), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtpd_epi32 (__mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm256_cvtpd_epi32(__A), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtpd_epi32 (__mmask8 __U, __m256d __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm256_cvtpd_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m128d __A) { + return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtpd_ps (__mmask8 __U, __m128d __A) { + return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m256d __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm256_cvtpd_ps(__A), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtpd_ps (__mmask8 __U, __m256d __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm256_cvtpd_ps(__A), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtpd_epu32 (__m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtpd_epu32 (__mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtpd_epu32 (__m256d __A) { + return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A) { + return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtpd_epu32 (__mmask8 __U, __m256d __A) { + return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtps_epi32 (__m128i __W, __mmask8 __U, __m128 __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtps_epi32(__A), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtps_epi32 (__mmask8 __U, __m128 __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtps_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtps_epi32 (__m256i __W, __mmask8 __U, __m256 __A) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtps_epi32(__A), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtps_epi32 (__mmask8 __U, __m256 __A) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtps_epi32(__A), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_cvtps_pd (__m128d __W, __mmask8 __U, __m128 __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_cvtps_pd(__A), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtps_pd (__mmask8 __U, __m128 __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_cvtps_pd(__A), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtps_pd (__m256d __W, __mmask8 __U, __m128 __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_cvtps_pd(__A), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtps_pd (__mmask8 __U, __m128 __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_cvtps_pd(__A), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtps_epu32 (__m128 __A) { + return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtps_epu32 (__m128i __W, __mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtps_epu32 (__mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvtps_epu32 (__m256 __A) { + return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtps_epu32 (__m256i __W, __mmask8 __U, __m256 __A) { + return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A, + (__v8si) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtps_epu32 (__mmask8 __U, __m256 __A) { + return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttpd_epi32 (__mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm256_cvttpd_epi32(__A), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttpd_epi32 (__mmask8 __U, __m256d __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm256_cvttpd_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvttpd_epu32 (__m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttpd_epu32 (__mmask8 __U, __m128d __A) { + return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvttpd_epu32 (__m256d __A) { + return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A) { + return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttpd_epu32 (__mmask8 __U, __m256d __A) { + return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttps_epi32 (__m128i __W, __mmask8 __U, __m128 __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvttps_epi32(__A), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttps_epi32 (__mmask8 __U, __m128 __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvttps_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttps_epi32 (__m256i __W, __mmask8 __U, __m256 __A) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvttps_epi32(__A), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttps_epi32 (__mmask8 __U, __m256 __A) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvttps_epi32(__A), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvttps_epu32 (__m128 __A) { + return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvttps_epu32 (__m128i __W, __mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvttps_epu32 (__mmask8 __U, __m128 __A) { + return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_cvttps_epu32 (__m256 __A) { + return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) -1); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvttps_epu32 (__m256i __W, __mmask8 __U, __m256 __A) { + return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A, + (__v8si) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvttps_epu32 (__mmask8 __U, __m256 __A) { + return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_cvtepu32_pd (__m128i __A) { + return (__m128d) __builtin_convertvector( + __builtin_shufflevector((__v4su)__A, (__v4su)__A, 0, 1), __v2df); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepu32_pd (__m128d __W, __mmask8 __U, __m128i __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8) __U, + (__v2df)_mm_cvtepu32_pd(__A), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8) __U, + (__v2df)_mm_cvtepu32_pd(__A), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_cvtepu32_pd (__m128i __A) { + return (__m256d)__builtin_convertvector((__v4su)__A, __v4df); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepu32_pd (__m256d __W, __mmask8 __U, __m128i __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8) __U, + (__v4df)_mm256_cvtepu32_pd(__A), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8) __U, + (__v4df)_mm256_cvtepu32_pd(__A), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtepu32_ps (__m128i __A) { + return (__m128)__builtin_convertvector((__v4su)__A, __v4sf); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepu32_ps (__m128 __W, __mmask8 __U, __m128i __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_cvtepu32_ps(__A), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepu32_ps (__mmask8 __U, __m128i __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_cvtepu32_ps(__A), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_cvtepu32_ps (__m256i __A) { + return (__m256)__builtin_convertvector((__v8su)__A, __v8sf); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepu32_ps (__m256 __W, __mmask8 __U, __m256i __A) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_cvtepu32_ps(__A), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepu32_ps (__mmask8 __U, __m256i __A) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_cvtepu32_ps(__A), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_div_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_div_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_div_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_div_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_div_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_div_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_div_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_div_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_div_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_div_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_div_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_div_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_div_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_div_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_div_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_div_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_expand_pd (__m128d __W, __mmask8 __U, __m128d __A) { + return (__m128d) __builtin_ia32_expanddf128_mask ((__v2df) __A, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_expand_pd (__mmask8 __U, __m128d __A) { + return (__m128d) __builtin_ia32_expanddf128_mask ((__v2df) __A, + (__v2df) + _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_expand_pd (__m256d __W, __mmask8 __U, __m256d __A) { + return (__m256d) __builtin_ia32_expanddf256_mask ((__v4df) __A, + (__v4df) __W, + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_expand_pd (__mmask8 __U, __m256d __A) { + return (__m256d) __builtin_ia32_expanddf256_mask ((__v4df) __A, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_expand_epi64 (__m128i __W, __mmask8 __U, __m128i __A) { + return (__m128i) __builtin_ia32_expanddi128_mask ((__v2di) __A, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_expand_epi64 (__mmask8 __U, __m128i __A) { + return (__m128i) __builtin_ia32_expanddi128_mask ((__v2di) __A, + (__v2di) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_expand_epi64 (__m256i __W, __mmask8 __U, __m256i __A) { + return (__m256i) __builtin_ia32_expanddi256_mask ((__v4di) __A, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_expand_epi64 (__mmask8 __U, __m256i __A) { + return (__m256i) __builtin_ia32_expanddi256_mask ((__v4di) __A, + (__v4di) + _mm256_setzero_si256 (), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_expandloadu_pd (__m128d __W, __mmask8 __U, void const *__P) { + return (__m128d) __builtin_ia32_expandloaddf128_mask ((const __v2df *) __P, + (__v2df) __W, + (__mmask8) + __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_expandloadu_pd (__mmask8 __U, void const *__P) { + return (__m128d) __builtin_ia32_expandloaddf128_mask ((const __v2df *) __P, + (__v2df) + _mm_setzero_pd (), + (__mmask8) + __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_expandloadu_pd (__m256d __W, __mmask8 __U, void const *__P) { + return (__m256d) __builtin_ia32_expandloaddf256_mask ((const __v4df *) __P, + (__v4df) __W, + (__mmask8) + __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_expandloadu_pd (__mmask8 __U, void const *__P) { + return (__m256d) __builtin_ia32_expandloaddf256_mask ((const __v4df *) __P, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_expandloadu_epi64 (__m128i __W, __mmask8 __U, void const *__P) { + return (__m128i) __builtin_ia32_expandloaddi128_mask ((const __v2di *) __P, + (__v2di) __W, + (__mmask8) + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P) { + return (__m128i) __builtin_ia32_expandloaddi128_mask ((const __v2di *) __P, + (__v2di) + _mm_setzero_si128 (), + (__mmask8) + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_expandloadu_epi64 (__m256i __W, __mmask8 __U, + void const *__P) { + return (__m256i) __builtin_ia32_expandloaddi256_mask ((const __v4di *) __P, + (__v4di) __W, + (__mmask8) + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P) { + return (__m256i) __builtin_ia32_expandloaddi256_mask ((const __v4di *) __P, + (__v4di) + _mm256_setzero_si256 (), + (__mmask8) + __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_expandloadu_ps (__m128 __W, __mmask8 __U, void const *__P) { + return (__m128) __builtin_ia32_expandloadsf128_mask ((const __v4sf *) __P, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_expandloadu_ps (__mmask8 __U, void const *__P) { + return (__m128) __builtin_ia32_expandloadsf128_mask ((const __v4sf *) __P, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) + __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_expandloadu_ps (__m256 __W, __mmask8 __U, void const *__P) { + return (__m256) __builtin_ia32_expandloadsf256_mask ((const __v8sf *) __P, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_expandloadu_ps (__mmask8 __U, void const *__P) { + return (__m256) __builtin_ia32_expandloadsf256_mask ((const __v8sf *) __P, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_expandloadu_epi32 (__m128i __W, __mmask8 __U, void const *__P) { + return (__m128i) __builtin_ia32_expandloadsi128_mask ((const __v4si *) __P, + (__v4si) __W, + (__mmask8) + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P) { + return (__m128i) __builtin_ia32_expandloadsi128_mask ((const __v4si *) __P, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_expandloadu_epi32 (__m256i __W, __mmask8 __U, + void const *__P) { + return (__m256i) __builtin_ia32_expandloadsi256_mask ((const __v8si *) __P, + (__v8si) __W, + (__mmask8) + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P) { + return (__m256i) __builtin_ia32_expandloadsi256_mask ((const __v8si *) __P, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) + __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_expand_ps (__m128 __W, __mmask8 __U, __m128 __A) { + return (__m128) __builtin_ia32_expandsf128_mask ((__v4sf) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_expand_ps (__mmask8 __U, __m128 __A) { + return (__m128) __builtin_ia32_expandsf128_mask ((__v4sf) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_expand_ps (__m256 __W, __mmask8 __U, __m256 __A) { + return (__m256) __builtin_ia32_expandsf256_mask ((__v8sf) __A, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_expand_ps (__mmask8 __U, __m256 __A) { + return (__m256) __builtin_ia32_expandsf256_mask ((__v8sf) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_expand_epi32 (__m128i __W, __mmask8 __U, __m128i __A) { + return (__m128i) __builtin_ia32_expandsi128_mask ((__v4si) __A, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_expand_epi32 (__mmask8 __U, __m128i __A) { + return (__m128i) __builtin_ia32_expandsi128_mask ((__v4si) __A, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_expand_epi32 (__m256i __W, __mmask8 __U, __m256i __A) { + return (__m256i) __builtin_ia32_expandsi256_mask ((__v8si) __A, + (__v8si) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_expand_epi32 (__mmask8 __U, __m256i __A) { + return (__m256i) __builtin_ia32_expandsi256_mask ((__v8si) __A, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_getexp_pd (__m128d __A) { + return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A, + (__v2df) + _mm_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_getexp_pd (__m128d __W, __mmask8 __U, __m128d __A) { + return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_getexp_pd (__mmask8 __U, __m128d __A) { + return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A, + (__v2df) + _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_getexp_pd (__m256d __A) { + return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_getexp_pd (__m256d __W, __mmask8 __U, __m256d __A) { + return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A, + (__v4df) __W, + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_getexp_pd (__mmask8 __U, __m256d __A) { + return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_getexp_ps (__m128 __A) { + return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_getexp_ps (__m128 __W, __mmask8 __U, __m128 __A) { + return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_getexp_ps (__mmask8 __U, __m128 __A) { + return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_getexp_ps (__m256 __A) { + return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_getexp_ps (__m256 __W, __mmask8 __U, __m256 __A) { + return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_getexp_ps (__mmask8 __U, __m256 __A) { + return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_max_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_max_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_max_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_max_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_max_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_max_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_max_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_max_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_max_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_max_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_max_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_max_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_max_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_max_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_min_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_min_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_min_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_min_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_min_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_min_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_min_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_min_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_min_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_min_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_min_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_min_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_min_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_min_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_mul_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_mul_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_mul_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_mul_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_mul_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_mul_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_mul_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_mul_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_mul_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_mul_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_mul_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_mul_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_mul_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_mul_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_mul_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_mul_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_abs_epi32(__m128i __W, __mmask8 __U, __m128i __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_abs_epi32(__A), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_abs_epi32(__mmask8 __U, __m128i __A) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_abs_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_abs_epi32(__m256i __W, __mmask8 __U, __m256i __A) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_abs_epi32(__A), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_abs_epi32(__mmask8 __U, __m256i __A) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_abs_epi32(__A), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_abs_epi64 (__m128i __A) { + return (__m128i)__builtin_elementwise_abs((__v2di)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_abs_epi64 (__m128i __W, __mmask8 __U, __m128i __A) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_abs_epi64(__A), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_abs_epi64 (__mmask8 __U, __m128i __A) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_abs_epi64(__A), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_abs_epi64 (__m256i __A) { + return (__m256i)__builtin_elementwise_abs((__v4di)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_abs_epi64 (__m256i __W, __mmask8 __U, __m256i __A) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_abs_epi64(__A), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_abs_epi64 (__mmask8 __U, __m256i __A) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_abs_epi64(__A), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_max_epi32(__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_max_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_max_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_max_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_epi32(__mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_max_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_max_epi32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_max_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_max_epi64 (__m128i __A, __m128i __B) { + return (__m128i)__builtin_elementwise_max((__v2di)__A, (__v2di)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_max_epi64 (__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_max_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_max_epi64 (__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_max_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_max_epi64 (__m256i __A, __m256i __B) { + return (__m256i)__builtin_elementwise_max((__v4di)__A, (__v4di)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_epi64 (__mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_max_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_max_epi64 (__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_max_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_max_epu32(__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_max_epu32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_max_epu32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_max_epu32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_epu32(__mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_max_epu32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_max_epu32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_max_epu32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_max_epu64 (__m128i __A, __m128i __B) { + return (__m128i)__builtin_elementwise_max((__v2du)__A, (__v2du)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_max_epu64 (__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_max_epu64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_max_epu64 (__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_max_epu64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_max_epu64 (__m256i __A, __m256i __B) { + return (__m256i)__builtin_elementwise_max((__v4du)__A, (__v4du)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_max_epu64 (__mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_max_epu64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_max_epu64 (__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_max_epu64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_min_epi32(__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_min_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_min_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_min_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_epi32(__mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_min_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_min_epi32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_min_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_min_epi64 (__m128i __A, __m128i __B) { + return (__m128i)__builtin_elementwise_min((__v2di)__A, (__v2di)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_min_epi64 (__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_min_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_min_epi64 (__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_min_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_min_epi64 (__m256i __A, __m256i __B) { + return (__m256i)__builtin_elementwise_min((__v4di)__A, (__v4di)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_min_epi64 (__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_min_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_epi64 (__mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_min_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_min_epu32(__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_min_epu32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_min_epu32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm_min_epu32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_epu32(__mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_min_epu32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_min_epu32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_min_epu32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_min_epu64 (__m128i __A, __m128i __B) { + return (__m128i)__builtin_elementwise_min((__v2du)__A, (__v2du)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_min_epu64 (__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_min_epu64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_min_epu64 (__mmask8 __M, __m128i __A, __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, + (__v2di)_mm_min_epu64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_min_epu64 (__m256i __A, __m256i __B) { + return (__m256i)__builtin_elementwise_min((__v4du)__A, (__v4du)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_min_epu64 (__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_min_epu64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_min_epu64 (__mmask8 __M, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_min_epu64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +#define _mm_roundscale_pd(A, imm) \ + ((__m128d)__builtin_ia32_rndscalepd_128_mask((__v2df)(__m128d)(A), \ + (int)(imm), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1)) + + +#define _mm_mask_roundscale_pd(W, U, A, imm) \ + ((__m128d)__builtin_ia32_rndscalepd_128_mask((__v2df)(__m128d)(A), \ + (int)(imm), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U))) + + +#define _mm_maskz_roundscale_pd(U, A, imm) \ + ((__m128d)__builtin_ia32_rndscalepd_128_mask((__v2df)(__m128d)(A), \ + (int)(imm), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U))) + + +#define _mm256_roundscale_pd(A, imm) \ + ((__m256d)__builtin_ia32_rndscalepd_256_mask((__v4df)(__m256d)(A), \ + (int)(imm), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)-1)) + + +#define _mm256_mask_roundscale_pd(W, U, A, imm) \ + ((__m256d)__builtin_ia32_rndscalepd_256_mask((__v4df)(__m256d)(A), \ + (int)(imm), \ + (__v4df)(__m256d)(W), \ + (__mmask8)(U))) + + +#define _mm256_maskz_roundscale_pd(U, A, imm) \ + ((__m256d)__builtin_ia32_rndscalepd_256_mask((__v4df)(__m256d)(A), \ + (int)(imm), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm_roundscale_ps(A, imm) \ + ((__m128)__builtin_ia32_rndscaleps_128_mask((__v4sf)(__m128)(A), (int)(imm), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1)) + + +#define _mm_mask_roundscale_ps(W, U, A, imm) \ + ((__m128)__builtin_ia32_rndscaleps_128_mask((__v4sf)(__m128)(A), (int)(imm), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U))) + + +#define _mm_maskz_roundscale_ps(U, A, imm) \ + ((__m128)__builtin_ia32_rndscaleps_128_mask((__v4sf)(__m128)(A), (int)(imm), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U))) + +#define _mm256_roundscale_ps(A, imm) \ + ((__m256)__builtin_ia32_rndscaleps_256_mask((__v8sf)(__m256)(A), (int)(imm), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)-1)) + +#define _mm256_mask_roundscale_ps(W, U, A, imm) \ + ((__m256)__builtin_ia32_rndscaleps_256_mask((__v8sf)(__m256)(A), (int)(imm), \ + (__v8sf)(__m256)(W), \ + (__mmask8)(U))) + + +#define _mm256_maskz_roundscale_ps(U, A, imm) \ + ((__m256)__builtin_ia32_rndscaleps_256_mask((__v8sf)(__m256)(A), (int)(imm), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)(U))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_scalef_pd (__m128d __A, __m128d __B) { + return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) + _mm_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_scalef_pd (__m128d __W, __mmask8 __U, __m128d __A, + __m128d __B) { + return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_scalef_pd (__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A, + (__v2df) __B, + (__v2df) + _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_scalef_pd (__m256d __A, __m256d __B) { + return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A, + (__v4df) __B, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_scalef_pd (__m256d __W, __mmask8 __U, __m256d __A, + __m256d __B) { + return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A, + (__v4df) __B, + (__v4df) __W, + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_scalef_pd (__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A, + (__v4df) __B, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_scalef_ps (__m128 __A, __m128 __B) { + return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_scalef_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_scalef_ps (__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A, + (__v4sf) __B, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_scalef_ps (__m256 __A, __m256 __B) { + return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_scalef_ps (__m256 __W, __mmask8 __U, __m256 __A, + __m256 __B) { + return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_scalef_ps (__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A, + (__v8sf) __B, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +#define _mm_i64scatter_pd(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv2df((void *)(addr), (__mmask8)-1, \ + (__v2di)(__m128i)(index), \ + (__v2df)(__m128d)(v1), (int)(scale)) + +#define _mm_mask_i64scatter_pd(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv2df((void *)(addr), (__mmask8)(mask), \ + (__v2di)(__m128i)(index), \ + (__v2df)(__m128d)(v1), (int)(scale)) + +#define _mm_i64scatter_epi64(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv2di((void *)(addr), (__mmask8)-1, \ + (__v2di)(__m128i)(index), \ + (__v2di)(__m128i)(v1), (int)(scale)) + +#define _mm_mask_i64scatter_epi64(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv2di((void *)(addr), (__mmask8)(mask), \ + (__v2di)(__m128i)(index), \ + (__v2di)(__m128i)(v1), (int)(scale)) + +#define _mm256_i64scatter_pd(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv4df((void *)(addr), (__mmask8)-1, \ + (__v4di)(__m256i)(index), \ + (__v4df)(__m256d)(v1), (int)(scale)) + +#define _mm256_mask_i64scatter_pd(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv4df((void *)(addr), (__mmask8)(mask), \ + (__v4di)(__m256i)(index), \ + (__v4df)(__m256d)(v1), (int)(scale)) + +#define _mm256_i64scatter_epi64(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv4di((void *)(addr), (__mmask8)-1, \ + (__v4di)(__m256i)(index), \ + (__v4di)(__m256i)(v1), (int)(scale)) + +#define _mm256_mask_i64scatter_epi64(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv4di((void *)(addr), (__mmask8)(mask), \ + (__v4di)(__m256i)(index), \ + (__v4di)(__m256i)(v1), (int)(scale)) + +#define _mm_i64scatter_ps(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv4sf((void *)(addr), (__mmask8)-1, \ + (__v2di)(__m128i)(index), (__v4sf)(__m128)(v1), \ + (int)(scale)) + +#define _mm_mask_i64scatter_ps(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv4sf((void *)(addr), (__mmask8)(mask), \ + (__v2di)(__m128i)(index), (__v4sf)(__m128)(v1), \ + (int)(scale)) + +#define _mm_i64scatter_epi32(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv4si((void *)(addr), (__mmask8)-1, \ + (__v2di)(__m128i)(index), \ + (__v4si)(__m128i)(v1), (int)(scale)) + +#define _mm_mask_i64scatter_epi32(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv4si((void *)(addr), (__mmask8)(mask), \ + (__v2di)(__m128i)(index), \ + (__v4si)(__m128i)(v1), (int)(scale)) + +#define _mm256_i64scatter_ps(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv8sf((void *)(addr), (__mmask8)-1, \ + (__v4di)(__m256i)(index), (__v4sf)(__m128)(v1), \ + (int)(scale)) + +#define _mm256_mask_i64scatter_ps(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv8sf((void *)(addr), (__mmask8)(mask), \ + (__v4di)(__m256i)(index), (__v4sf)(__m128)(v1), \ + (int)(scale)) + +#define _mm256_i64scatter_epi32(addr, index, v1, scale) \ + __builtin_ia32_scatterdiv8si((void *)(addr), (__mmask8)-1, \ + (__v4di)(__m256i)(index), \ + (__v4si)(__m128i)(v1), (int)(scale)) + +#define _mm256_mask_i64scatter_epi32(addr, mask, index, v1, scale) \ + __builtin_ia32_scatterdiv8si((void *)(addr), (__mmask8)(mask), \ + (__v4di)(__m256i)(index), \ + (__v4si)(__m128i)(v1), (int)(scale)) + +#define _mm_i32scatter_pd(addr, index, v1, scale) \ + __builtin_ia32_scattersiv2df((void *)(addr), (__mmask8)-1, \ + (__v4si)(__m128i)(index), \ + (__v2df)(__m128d)(v1), (int)(scale)) + +#define _mm_mask_i32scatter_pd(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv2df((void *)(addr), (__mmask8)(mask), \ + (__v4si)(__m128i)(index), \ + (__v2df)(__m128d)(v1), (int)(scale)) + +#define _mm_i32scatter_epi64(addr, index, v1, scale) \ + __builtin_ia32_scattersiv2di((void *)(addr), (__mmask8)-1, \ + (__v4si)(__m128i)(index), \ + (__v2di)(__m128i)(v1), (int)(scale)) + +#define _mm_mask_i32scatter_epi64(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv2di((void *)(addr), (__mmask8)(mask), \ + (__v4si)(__m128i)(index), \ + (__v2di)(__m128i)(v1), (int)(scale)) + +#define _mm256_i32scatter_pd(addr, index, v1, scale) \ + __builtin_ia32_scattersiv4df((void *)(addr), (__mmask8)-1, \ + (__v4si)(__m128i)(index), \ + (__v4df)(__m256d)(v1), (int)(scale)) + +#define _mm256_mask_i32scatter_pd(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv4df((void *)(addr), (__mmask8)(mask), \ + (__v4si)(__m128i)(index), \ + (__v4df)(__m256d)(v1), (int)(scale)) + +#define _mm256_i32scatter_epi64(addr, index, v1, scale) \ + __builtin_ia32_scattersiv4di((void *)(addr), (__mmask8)-1, \ + (__v4si)(__m128i)(index), \ + (__v4di)(__m256i)(v1), (int)(scale)) + +#define _mm256_mask_i32scatter_epi64(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv4di((void *)(addr), (__mmask8)(mask), \ + (__v4si)(__m128i)(index), \ + (__v4di)(__m256i)(v1), (int)(scale)) + +#define _mm_i32scatter_ps(addr, index, v1, scale) \ + __builtin_ia32_scattersiv4sf((void *)(addr), (__mmask8)-1, \ + (__v4si)(__m128i)(index), (__v4sf)(__m128)(v1), \ + (int)(scale)) + +#define _mm_mask_i32scatter_ps(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv4sf((void *)(addr), (__mmask8)(mask), \ + (__v4si)(__m128i)(index), (__v4sf)(__m128)(v1), \ + (int)(scale)) + +#define _mm_i32scatter_epi32(addr, index, v1, scale) \ + __builtin_ia32_scattersiv4si((void *)(addr), (__mmask8)-1, \ + (__v4si)(__m128i)(index), \ + (__v4si)(__m128i)(v1), (int)(scale)) + +#define _mm_mask_i32scatter_epi32(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv4si((void *)(addr), (__mmask8)(mask), \ + (__v4si)(__m128i)(index), \ + (__v4si)(__m128i)(v1), (int)(scale)) + +#define _mm256_i32scatter_ps(addr, index, v1, scale) \ + __builtin_ia32_scattersiv8sf((void *)(addr), (__mmask8)-1, \ + (__v8si)(__m256i)(index), (__v8sf)(__m256)(v1), \ + (int)(scale)) + +#define _mm256_mask_i32scatter_ps(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv8sf((void *)(addr), (__mmask8)(mask), \ + (__v8si)(__m256i)(index), (__v8sf)(__m256)(v1), \ + (int)(scale)) + +#define _mm256_i32scatter_epi32(addr, index, v1, scale) \ + __builtin_ia32_scattersiv8si((void *)(addr), (__mmask8)-1, \ + (__v8si)(__m256i)(index), \ + (__v8si)(__m256i)(v1), (int)(scale)) + +#define _mm256_mask_i32scatter_epi32(addr, mask, index, v1, scale) \ + __builtin_ia32_scattersiv8si((void *)(addr), (__mmask8)(mask), \ + (__v8si)(__m256i)(index), \ + (__v8si)(__m256i)(v1), (int)(scale)) + + static __inline__ __m128d __DEFAULT_FN_ATTRS128 + _mm_mask_sqrt_pd(__m128d __W, __mmask8 __U, __m128d __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_sqrt_pd(__A), + (__v2df)__W); + } + + static __inline__ __m128d __DEFAULT_FN_ATTRS128 + _mm_maskz_sqrt_pd(__mmask8 __U, __m128d __A) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_sqrt_pd(__A), + (__v2df)_mm_setzero_pd()); + } + + static __inline__ __m256d __DEFAULT_FN_ATTRS256 + _mm256_mask_sqrt_pd(__m256d __W, __mmask8 __U, __m256d __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_sqrt_pd(__A), + (__v4df)__W); + } + + static __inline__ __m256d __DEFAULT_FN_ATTRS256 + _mm256_maskz_sqrt_pd(__mmask8 __U, __m256d __A) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_sqrt_pd(__A), + (__v4df)_mm256_setzero_pd()); + } + + static __inline__ __m128 __DEFAULT_FN_ATTRS128 + _mm_mask_sqrt_ps(__m128 __W, __mmask8 __U, __m128 __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_sqrt_ps(__A), + (__v4sf)__W); + } + + static __inline__ __m128 __DEFAULT_FN_ATTRS128 + _mm_maskz_sqrt_ps(__mmask8 __U, __m128 __A) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_sqrt_ps(__A), + (__v4sf)_mm_setzero_ps()); + } + + static __inline__ __m256 __DEFAULT_FN_ATTRS256 + _mm256_mask_sqrt_ps(__m256 __W, __mmask8 __U, __m256 __A) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_sqrt_ps(__A), + (__v8sf)__W); + } + + static __inline__ __m256 __DEFAULT_FN_ATTRS256 + _mm256_maskz_sqrt_ps(__mmask8 __U, __m256 __A) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_sqrt_ps(__A), + (__v8sf)_mm256_setzero_ps()); + } + + static __inline__ __m128d __DEFAULT_FN_ATTRS128 + _mm_mask_sub_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_sub_pd(__A, __B), + (__v2df)__W); + } + + static __inline__ __m128d __DEFAULT_FN_ATTRS128 + _mm_maskz_sub_pd(__mmask8 __U, __m128d __A, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_sub_pd(__A, __B), + (__v2df)_mm_setzero_pd()); + } + + static __inline__ __m256d __DEFAULT_FN_ATTRS256 + _mm256_mask_sub_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_sub_pd(__A, __B), + (__v4df)__W); + } + + static __inline__ __m256d __DEFAULT_FN_ATTRS256 + _mm256_maskz_sub_pd(__mmask8 __U, __m256d __A, __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_sub_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); + } + + static __inline__ __m128 __DEFAULT_FN_ATTRS128 + _mm_mask_sub_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_sub_ps(__A, __B), + (__v4sf)__W); + } + + static __inline__ __m128 __DEFAULT_FN_ATTRS128 + _mm_maskz_sub_ps(__mmask8 __U, __m128 __A, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_sub_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); + } + + static __inline__ __m256 __DEFAULT_FN_ATTRS256 + _mm256_mask_sub_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_sub_ps(__A, __B), + (__v8sf)__W); + } + + static __inline__ __m256 __DEFAULT_FN_ATTRS256 + _mm256_maskz_sub_ps(__mmask8 __U, __m256 __A, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_sub_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_permutex2var_epi32(__m128i __A, __m128i __I, __m128i __B) { + return (__m128i)__builtin_ia32_vpermi2vard128((__v4si) __A, (__v4si)__I, + (__v4si)__B); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_permutex2var_epi32(__m128i __A, __mmask8 __U, __m128i __I, + __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_permutex2var_epi32(__A, __I, __B), + (__v4si)__A); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask2_permutex2var_epi32(__m128i __A, __m128i __I, __mmask8 __U, + __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_permutex2var_epi32(__A, __I, __B), + (__v4si)__I); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_permutex2var_epi32(__mmask8 __U, __m128i __A, __m128i __I, + __m128i __B) { + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_permutex2var_epi32(__A, __I, __B), + (__v4si)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_permutex2var_epi32(__m256i __A, __m256i __I, __m256i __B) { + return (__m256i)__builtin_ia32_vpermi2vard256((__v8si)__A, (__v8si) __I, + (__v8si) __B); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_permutex2var_epi32(__m256i __A, __mmask8 __U, __m256i __I, + __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_permutex2var_epi32(__A, __I, __B), + (__v8si)__A); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask2_permutex2var_epi32(__m256i __A, __m256i __I, __mmask8 __U, + __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_permutex2var_epi32(__A, __I, __B), + (__v8si)__I); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_permutex2var_epi32(__mmask8 __U, __m256i __A, __m256i __I, + __m256i __B) { + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_permutex2var_epi32(__A, __I, __B), + (__v8si)_mm256_setzero_si256()); + } + + static __inline__ __m128d __DEFAULT_FN_ATTRS128 + _mm_permutex2var_pd(__m128d __A, __m128i __I, __m128d __B) { + return (__m128d)__builtin_ia32_vpermi2varpd128((__v2df)__A, (__v2di)__I, + (__v2df)__B); + } + + static __inline__ __m128d __DEFAULT_FN_ATTRS128 + _mm_mask_permutex2var_pd(__m128d __A, __mmask8 __U, __m128i __I, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128(__U, + (__v2df)_mm_permutex2var_pd(__A, __I, __B), + (__v2df)__A); + } + + static __inline__ __m128d __DEFAULT_FN_ATTRS128 + _mm_mask2_permutex2var_pd(__m128d __A, __m128i __I, __mmask8 __U, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128(__U, + (__v2df)_mm_permutex2var_pd(__A, __I, __B), + (__v2df)(__m128d)__I); + } + + static __inline__ __m128d __DEFAULT_FN_ATTRS128 + _mm_maskz_permutex2var_pd(__mmask8 __U, __m128d __A, __m128i __I, __m128d __B) { + return (__m128d)__builtin_ia32_selectpd_128(__U, + (__v2df)_mm_permutex2var_pd(__A, __I, __B), + (__v2df)_mm_setzero_pd()); + } + + static __inline__ __m256d __DEFAULT_FN_ATTRS256 + _mm256_permutex2var_pd(__m256d __A, __m256i __I, __m256d __B) { + return (__m256d)__builtin_ia32_vpermi2varpd256((__v4df)__A, (__v4di)__I, + (__v4df)__B); + } + + static __inline__ __m256d __DEFAULT_FN_ATTRS256 + _mm256_mask_permutex2var_pd(__m256d __A, __mmask8 __U, __m256i __I, + __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256(__U, + (__v4df)_mm256_permutex2var_pd(__A, __I, __B), + (__v4df)__A); + } + + static __inline__ __m256d __DEFAULT_FN_ATTRS256 + _mm256_mask2_permutex2var_pd(__m256d __A, __m256i __I, __mmask8 __U, + __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256(__U, + (__v4df)_mm256_permutex2var_pd(__A, __I, __B), + (__v4df)(__m256d)__I); + } + + static __inline__ __m256d __DEFAULT_FN_ATTRS256 + _mm256_maskz_permutex2var_pd(__mmask8 __U, __m256d __A, __m256i __I, + __m256d __B) { + return (__m256d)__builtin_ia32_selectpd_256(__U, + (__v4df)_mm256_permutex2var_pd(__A, __I, __B), + (__v4df)_mm256_setzero_pd()); + } + + static __inline__ __m128 __DEFAULT_FN_ATTRS128 + _mm_permutex2var_ps(__m128 __A, __m128i __I, __m128 __B) { + return (__m128)__builtin_ia32_vpermi2varps128((__v4sf)__A, (__v4si)__I, + (__v4sf)__B); + } + + static __inline__ __m128 __DEFAULT_FN_ATTRS128 + _mm_mask_permutex2var_ps(__m128 __A, __mmask8 __U, __m128i __I, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128(__U, + (__v4sf)_mm_permutex2var_ps(__A, __I, __B), + (__v4sf)__A); + } + + static __inline__ __m128 __DEFAULT_FN_ATTRS128 + _mm_mask2_permutex2var_ps(__m128 __A, __m128i __I, __mmask8 __U, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128(__U, + (__v4sf)_mm_permutex2var_ps(__A, __I, __B), + (__v4sf)(__m128)__I); + } + + static __inline__ __m128 __DEFAULT_FN_ATTRS128 + _mm_maskz_permutex2var_ps(__mmask8 __U, __m128 __A, __m128i __I, __m128 __B) { + return (__m128)__builtin_ia32_selectps_128(__U, + (__v4sf)_mm_permutex2var_ps(__A, __I, __B), + (__v4sf)_mm_setzero_ps()); + } + + static __inline__ __m256 __DEFAULT_FN_ATTRS256 + _mm256_permutex2var_ps(__m256 __A, __m256i __I, __m256 __B) { + return (__m256)__builtin_ia32_vpermi2varps256((__v8sf)__A, (__v8si)__I, + (__v8sf) __B); + } + + static __inline__ __m256 __DEFAULT_FN_ATTRS256 + _mm256_mask_permutex2var_ps(__m256 __A, __mmask8 __U, __m256i __I, __m256 __B) { + return (__m256)__builtin_ia32_selectps_256(__U, + (__v8sf)_mm256_permutex2var_ps(__A, __I, __B), + (__v8sf)__A); + } + + static __inline__ __m256 __DEFAULT_FN_ATTRS256 + _mm256_mask2_permutex2var_ps(__m256 __A, __m256i __I, __mmask8 __U, + __m256 __B) { + return (__m256)__builtin_ia32_selectps_256(__U, + (__v8sf)_mm256_permutex2var_ps(__A, __I, __B), + (__v8sf)(__m256)__I); + } + + static __inline__ __m256 __DEFAULT_FN_ATTRS256 + _mm256_maskz_permutex2var_ps(__mmask8 __U, __m256 __A, __m256i __I, + __m256 __B) { + return (__m256)__builtin_ia32_selectps_256(__U, + (__v8sf)_mm256_permutex2var_ps(__A, __I, __B), + (__v8sf)_mm256_setzero_ps()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_permutex2var_epi64(__m128i __A, __m128i __I, __m128i __B) { + return (__m128i)__builtin_ia32_vpermi2varq128((__v2di)__A, (__v2di)__I, + (__v2di)__B); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_permutex2var_epi64(__m128i __A, __mmask8 __U, __m128i __I, + __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_permutex2var_epi64(__A, __I, __B), + (__v2di)__A); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask2_permutex2var_epi64(__m128i __A, __m128i __I, __mmask8 __U, + __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_permutex2var_epi64(__A, __I, __B), + (__v2di)__I); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_permutex2var_epi64(__mmask8 __U, __m128i __A, __m128i __I, + __m128i __B) { + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_permutex2var_epi64(__A, __I, __B), + (__v2di)_mm_setzero_si128()); + } + + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_permutex2var_epi64(__m256i __A, __m256i __I, __m256i __B) { + return (__m256i)__builtin_ia32_vpermi2varq256((__v4di)__A, (__v4di) __I, + (__v4di) __B); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_permutex2var_epi64(__m256i __A, __mmask8 __U, __m256i __I, + __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_permutex2var_epi64(__A, __I, __B), + (__v4di)__A); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask2_permutex2var_epi64(__m256i __A, __m256i __I, __mmask8 __U, + __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_permutex2var_epi64(__A, __I, __B), + (__v4di)__I); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_permutex2var_epi64(__mmask8 __U, __m256i __A, __m256i __I, + __m256i __B) { + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_permutex2var_epi64(__A, __I, __B), + (__v4di)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepi8_epi32(__m128i __W, __mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtepi8_epi32(__A), + (__v4si)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepi8_epi32(__mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtepi8_epi32(__A), + (__v4si)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepi8_epi32 (__m256i __W, __mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtepi8_epi32(__A), + (__v8si)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepi8_epi32 (__mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtepi8_epi32(__A), + (__v8si)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepi8_epi64(__m128i __W, __mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepi8_epi64(__A), + (__v2di)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepi8_epi64(__A), + (__v2di)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepi8_epi64(__m256i __W, __mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepi8_epi64(__A), + (__v4di)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepi8_epi64(__A), + (__v4di)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepi32_epi64(__m128i __W, __mmask8 __U, __m128i __X) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepi32_epi64(__X), + (__v2di)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepi32_epi64(__mmask8 __U, __m128i __X) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepi32_epi64(__X), + (__v2di)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepi32_epi64(__m256i __W, __mmask8 __U, __m128i __X) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepi32_epi64(__X), + (__v4di)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepi32_epi64(__mmask8 __U, __m128i __X) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepi32_epi64(__X), + (__v4di)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepi16_epi32(__m128i __W, __mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtepi16_epi32(__A), + (__v4si)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepi16_epi32(__mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtepi16_epi32(__A), + (__v4si)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepi16_epi32(__m256i __W, __mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtepi16_epi32(__A), + (__v8si)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepi16_epi32 (__mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtepi16_epi32(__A), + (__v8si)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepi16_epi64(__m128i __W, __mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepi16_epi64(__A), + (__v2di)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepi16_epi64(__A), + (__v2di)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepi16_epi64(__m256i __W, __mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepi16_epi64(__A), + (__v4di)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepi16_epi64(__A), + (__v4di)_mm256_setzero_si256()); + } + + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepu8_epi32(__m128i __W, __mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtepu8_epi32(__A), + (__v4si)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepu8_epi32(__mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtepu8_epi32(__A), + (__v4si)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepu8_epi32(__m256i __W, __mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtepu8_epi32(__A), + (__v8si)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepu8_epi32(__mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtepu8_epi32(__A), + (__v8si)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepu8_epi64(__m128i __W, __mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepu8_epi64(__A), + (__v2di)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepu8_epi64(__A), + (__v2di)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepu8_epi64(__m256i __W, __mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepu8_epi64(__A), + (__v4di)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepu8_epi64(__A), + (__v4di)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepu32_epi64(__m128i __W, __mmask8 __U, __m128i __X) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepu32_epi64(__X), + (__v2di)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepu32_epi64(__mmask8 __U, __m128i __X) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepu32_epi64(__X), + (__v2di)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepu32_epi64(__m256i __W, __mmask8 __U, __m128i __X) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepu32_epi64(__X), + (__v4di)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepu32_epi64(__mmask8 __U, __m128i __X) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepu32_epi64(__X), + (__v4di)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepu16_epi32(__m128i __W, __mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtepu16_epi32(__A), + (__v4si)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepu16_epi32(__mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_cvtepu16_epi32(__A), + (__v4si)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepu16_epi32(__m256i __W, __mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtepu16_epi32(__A), + (__v8si)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepu16_epi32(__mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_cvtepu16_epi32(__A), + (__v8si)_mm256_setzero_si256()); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_mask_cvtepu16_epi64(__m128i __W, __mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepu16_epi64(__A), + (__v2di)__W); + } + + static __inline__ __m128i __DEFAULT_FN_ATTRS128 + _mm_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A) + { + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_cvtepu16_epi64(__A), + (__v2di)_mm_setzero_si128()); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_mask_cvtepu16_epi64(__m256i __W, __mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepu16_epi64(__A), + (__v4di)__W); + } + + static __inline__ __m256i __DEFAULT_FN_ATTRS256 + _mm256_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A) + { + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_cvtepu16_epi64(__A), + (__v4di)_mm256_setzero_si256()); + } + + +#define _mm_rol_epi32(a, b) \ + ((__m128i)__builtin_ia32_prold128((__v4si)(__m128i)(a), (int)(b))) + +#define _mm_mask_rol_epi32(w, u, a, b) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(u), \ + (__v4si)_mm_rol_epi32((a), (b)), \ + (__v4si)(__m128i)(w))) + +#define _mm_maskz_rol_epi32(u, a, b) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(u), \ + (__v4si)_mm_rol_epi32((a), (b)), \ + (__v4si)_mm_setzero_si128())) + +#define _mm256_rol_epi32(a, b) \ + ((__m256i)__builtin_ia32_prold256((__v8si)(__m256i)(a), (int)(b))) + +#define _mm256_mask_rol_epi32(w, u, a, b) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(u), \ + (__v8si)_mm256_rol_epi32((a), (b)), \ + (__v8si)(__m256i)(w))) + +#define _mm256_maskz_rol_epi32(u, a, b) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(u), \ + (__v8si)_mm256_rol_epi32((a), (b)), \ + (__v8si)_mm256_setzero_si256())) + +#define _mm_rol_epi64(a, b) \ + ((__m128i)__builtin_ia32_prolq128((__v2di)(__m128i)(a), (int)(b))) + +#define _mm_mask_rol_epi64(w, u, a, b) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(u), \ + (__v2di)_mm_rol_epi64((a), (b)), \ + (__v2di)(__m128i)(w))) + +#define _mm_maskz_rol_epi64(u, a, b) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(u), \ + (__v2di)_mm_rol_epi64((a), (b)), \ + (__v2di)_mm_setzero_si128())) + +#define _mm256_rol_epi64(a, b) \ + ((__m256i)__builtin_ia32_prolq256((__v4di)(__m256i)(a), (int)(b))) + +#define _mm256_mask_rol_epi64(w, u, a, b) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(u), \ + (__v4di)_mm256_rol_epi64((a), (b)), \ + (__v4di)(__m256i)(w))) + +#define _mm256_maskz_rol_epi64(u, a, b) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(u), \ + (__v4di)_mm256_rol_epi64((a), (b)), \ + (__v4di)_mm256_setzero_si256())) + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_rolv_epi32 (__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_prolvd128((__v4si)__A, (__v4si)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_rolv_epi32 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_rolv_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_rolv_epi32 (__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_rolv_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_rolv_epi32 (__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_prolvd256((__v8si)__A, (__v8si)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_rolv_epi32 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_rolv_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_rolv_epi32 (__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_rolv_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_rolv_epi64 (__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_prolvq128((__v2di)__A, (__v2di)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_rolv_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_rolv_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_rolv_epi64 (__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_rolv_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_rolv_epi64 (__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_prolvq256((__v4di)__A, (__v4di)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_rolv_epi64 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_rolv_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_rolv_epi64 (__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_rolv_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +#define _mm_ror_epi32(a, b) \ + ((__m128i)__builtin_ia32_prord128((__v4si)(__m128i)(a), (int)(b))) + +#define _mm_mask_ror_epi32(w, u, a, b) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(u), \ + (__v4si)_mm_ror_epi32((a), (b)), \ + (__v4si)(__m128i)(w))) + +#define _mm_maskz_ror_epi32(u, a, b) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(u), \ + (__v4si)_mm_ror_epi32((a), (b)), \ + (__v4si)_mm_setzero_si128())) + +#define _mm256_ror_epi32(a, b) \ + ((__m256i)__builtin_ia32_prord256((__v8si)(__m256i)(a), (int)(b))) + +#define _mm256_mask_ror_epi32(w, u, a, b) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(u), \ + (__v8si)_mm256_ror_epi32((a), (b)), \ + (__v8si)(__m256i)(w))) + +#define _mm256_maskz_ror_epi32(u, a, b) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(u), \ + (__v8si)_mm256_ror_epi32((a), (b)), \ + (__v8si)_mm256_setzero_si256())) + +#define _mm_ror_epi64(a, b) \ + ((__m128i)__builtin_ia32_prorq128((__v2di)(__m128i)(a), (int)(b))) + +#define _mm_mask_ror_epi64(w, u, a, b) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(u), \ + (__v2di)_mm_ror_epi64((a), (b)), \ + (__v2di)(__m128i)(w))) + +#define _mm_maskz_ror_epi64(u, a, b) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(u), \ + (__v2di)_mm_ror_epi64((a), (b)), \ + (__v2di)_mm_setzero_si128())) + +#define _mm256_ror_epi64(a, b) \ + ((__m256i)__builtin_ia32_prorq256((__v4di)(__m256i)(a), (int)(b))) + +#define _mm256_mask_ror_epi64(w, u, a, b) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(u), \ + (__v4di)_mm256_ror_epi64((a), (b)), \ + (__v4di)(__m256i)(w))) + +#define _mm256_maskz_ror_epi64(u, a, b) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(u), \ + (__v4di)_mm256_ror_epi64((a), (b)), \ + (__v4di)_mm256_setzero_si256())) + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sll_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_sll_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sll_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_sll_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sll_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_sll_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sll_epi32(__mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_sll_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_slli_epi32(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_slli_epi32(__A, (int)__B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_slli_epi32(__mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_slli_epi32(__A, (int)__B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_slli_epi32(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_slli_epi32(__A, (int)__B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_slli_epi32(__mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_slli_epi32(__A, (int)__B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sll_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_sll_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sll_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_sll_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sll_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_sll_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sll_epi64(__mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_sll_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_slli_epi64(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_slli_epi64(__A, (int)__B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_slli_epi64(__mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_slli_epi64(__A, (int)__B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_slli_epi64(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_slli_epi64(__A, (int)__B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_slli_epi64(__mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_slli_epi64(__A, (int)__B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_rorv_epi32 (__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_prorvd128((__v4si)__A, (__v4si)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_rorv_epi32 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_rorv_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_rorv_epi32 (__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_rorv_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_rorv_epi32 (__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_prorvd256((__v8si)__A, (__v8si)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_rorv_epi32 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_rorv_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_rorv_epi32 (__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_rorv_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_rorv_epi64 (__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_prorvq128((__v2di)__A, (__v2di)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_rorv_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_rorv_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_rorv_epi64 (__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_rorv_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_rorv_epi64 (__m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_prorvq256((__v4di)__A, (__v4di)__B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_rorv_epi64 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_rorv_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_rorv_epi64 (__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_rorv_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sllv_epi64(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_sllv_epi64(__X, __Y), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sllv_epi64(__mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_sllv_epi64(__X, __Y), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sllv_epi64(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_sllv_epi64(__X, __Y), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sllv_epi64(__mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_sllv_epi64(__X, __Y), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sllv_epi32(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_sllv_epi32(__X, __Y), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sllv_epi32(__mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_sllv_epi32(__X, __Y), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sllv_epi32(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_sllv_epi32(__X, __Y), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sllv_epi32(__mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_sllv_epi32(__X, __Y), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srlv_epi64(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_srlv_epi64(__X, __Y), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srlv_epi64(__mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_srlv_epi64(__X, __Y), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srlv_epi64(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_srlv_epi64(__X, __Y), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srlv_epi64(__mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_srlv_epi64(__X, __Y), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srlv_epi32(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srlv_epi32(__X, __Y), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srlv_epi32(__mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srlv_epi32(__X, __Y), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srlv_epi32(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srlv_epi32(__X, __Y), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srlv_epi32(__mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srlv_epi32(__X, __Y), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srl_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srl_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srl_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srl_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srl_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srl_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srl_epi32(__mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srl_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srli_epi32(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srli_epi32(__A, (int)__B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srli_epi32(__mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srli_epi32(__A, (int)__B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srli_epi32(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srli_epi32(__A, (int)__B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srli_epi32(__mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srli_epi32(__A, (int)__B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srl_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_srl_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srl_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_srl_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srl_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_srl_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srl_epi64(__mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_srl_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srli_epi64(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_srli_epi64(__A, (int)__B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srli_epi64(__mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_srli_epi64(__A, (int)__B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srli_epi64(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_srli_epi64(__A, (int)__B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srli_epi64(__mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_srli_epi64(__A, (int)__B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srav_epi32(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srav_epi32(__X, __Y), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srav_epi32(__mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srav_epi32(__X, __Y), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srav_epi32(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srav_epi32(__X, __Y), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srav_epi32(__mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srav_epi32(__X, __Y), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_srav_epi64(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_psravq128((__v2di)__X, (__v2di)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srav_epi64(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_srav_epi64(__X, __Y), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srav_epi64(__mmask8 __U, __m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_srav_epi64(__X, __Y), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srav_epi64(__m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_psravq256((__v4di)__X, (__v4di) __Y); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srav_epi64(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_srav_epi64(__X, __Y), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srav_epi64 (__mmask8 __U, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_srav_epi64(__X, __Y), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mov_epi32 (__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i) __builtin_ia32_selectd_128 ((__mmask8) __U, + (__v4si) __A, + (__v4si) __W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mov_epi32 (__mmask8 __U, __m128i __A) +{ + return (__m128i) __builtin_ia32_selectd_128 ((__mmask8) __U, + (__v4si) __A, + (__v4si) _mm_setzero_si128 ()); +} + + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mov_epi32 (__m256i __W, __mmask8 __U, __m256i __A) +{ + return (__m256i) __builtin_ia32_selectd_256 ((__mmask8) __U, + (__v8si) __A, + (__v8si) __W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mov_epi32 (__mmask8 __U, __m256i __A) +{ + return (__m256i) __builtin_ia32_selectd_256 ((__mmask8) __U, + (__v8si) __A, + (__v8si) _mm256_setzero_si256 ()); +} + +static __inline __m128i __DEFAULT_FN_ATTRS128 +_mm_load_epi32 (void const *__P) +{ + return *(const __m128i *) __P; +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_load_epi32 (__m128i __W, __mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_movdqa32load128_mask ((const __v4si *) __P, + (__v4si) __W, + (__mmask8) + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_load_epi32 (__mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_movdqa32load128_mask ((const __v4si *) __P, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) + __U); +} + +static __inline __m256i __DEFAULT_FN_ATTRS256 +_mm256_load_epi32 (void const *__P) +{ + return *(const __m256i *) __P; +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_load_epi32 (__m256i __W, __mmask8 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_movdqa32load256_mask ((const __v8si *) __P, + (__v8si) __W, + (__mmask8) + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_load_epi32 (__mmask8 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_movdqa32load256_mask ((const __v8si *) __P, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) + __U); +} + +static __inline void __DEFAULT_FN_ATTRS128 +_mm_store_epi32 (void *__P, __m128i __A) +{ + *(__m128i *) __P = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_store_epi32 (void *__P, __mmask8 __U, __m128i __A) +{ + __builtin_ia32_movdqa32store128_mask ((__v4si *) __P, + (__v4si) __A, + (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS256 +_mm256_store_epi32 (void *__P, __m256i __A) +{ + *(__m256i *) __P = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_store_epi32 (void *__P, __mmask8 __U, __m256i __A) +{ + __builtin_ia32_movdqa32store256_mask ((__v8si *) __P, + (__v8si) __A, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_mov_epi64 (__m128i __W, __mmask8 __U, __m128i __A) +{ + return (__m128i) __builtin_ia32_selectq_128 ((__mmask8) __U, + (__v2di) __A, + (__v2di) __W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_mov_epi64 (__mmask8 __U, __m128i __A) +{ + return (__m128i) __builtin_ia32_selectq_128 ((__mmask8) __U, + (__v2di) __A, + (__v2di) _mm_setzero_si128 ()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_mov_epi64 (__m256i __W, __mmask8 __U, __m256i __A) +{ + return (__m256i) __builtin_ia32_selectq_256 ((__mmask8) __U, + (__v4di) __A, + (__v4di) __W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_mov_epi64 (__mmask8 __U, __m256i __A) +{ + return (__m256i) __builtin_ia32_selectq_256 ((__mmask8) __U, + (__v4di) __A, + (__v4di) _mm256_setzero_si256 ()); +} + +static __inline __m128i __DEFAULT_FN_ATTRS128 +_mm_load_epi64 (void const *__P) +{ + return *(const __m128i *) __P; +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_load_epi64 (__m128i __W, __mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_movdqa64load128_mask ((const __v2di *) __P, + (__v2di) __W, + (__mmask8) + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_load_epi64 (__mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_movdqa64load128_mask ((const __v2di *) __P, + (__v2di) + _mm_setzero_si128 (), + (__mmask8) + __U); +} + +static __inline __m256i __DEFAULT_FN_ATTRS256 +_mm256_load_epi64 (void const *__P) +{ + return *(const __m256i *) __P; +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_load_epi64 (__m256i __W, __mmask8 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_movdqa64load256_mask ((const __v4di *) __P, + (__v4di) __W, + (__mmask8) + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_load_epi64 (__mmask8 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_movdqa64load256_mask ((const __v4di *) __P, + (__v4di) + _mm256_setzero_si256 (), + (__mmask8) + __U); +} + +static __inline void __DEFAULT_FN_ATTRS128 +_mm_store_epi64 (void *__P, __m128i __A) +{ + *(__m128i *) __P = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_store_epi64 (void *__P, __mmask8 __U, __m128i __A) +{ + __builtin_ia32_movdqa64store128_mask ((__v2di *) __P, + (__v2di) __A, + (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS256 +_mm256_store_epi64 (void *__P, __m256i __A) +{ + *(__m256i *) __P = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_store_epi64 (void *__P, __mmask8 __U, __m256i __A) +{ + __builtin_ia32_movdqa64store256_mask ((__v4di *) __P, + (__v4di) __A, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_movedup_pd (__m128d __W, __mmask8 __U, __m128d __A) +{ + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_movedup_pd(__A), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_movedup_pd (__mmask8 __U, __m128d __A) +{ + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_movedup_pd(__A), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_movedup_pd (__m256d __W, __mmask8 __U, __m256d __A) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_movedup_pd(__A), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_movedup_pd (__mmask8 __U, __m256d __A) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_movedup_pd(__A), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_set1_epi32(__m128i __O, __mmask8 __M, int __A) +{ + return (__m128i)__builtin_ia32_selectd_128(__M, + (__v4si) _mm_set1_epi32(__A), + (__v4si)__O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_set1_epi32( __mmask8 __M, int __A) +{ + return (__m128i)__builtin_ia32_selectd_128(__M, + (__v4si) _mm_set1_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_set1_epi32(__m256i __O, __mmask8 __M, int __A) +{ + return (__m256i)__builtin_ia32_selectd_256(__M, + (__v8si) _mm256_set1_epi32(__A), + (__v8si)__O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_set1_epi32( __mmask8 __M, int __A) +{ + return (__m256i)__builtin_ia32_selectd_256(__M, + (__v8si) _mm256_set1_epi32(__A), + (__v8si)_mm256_setzero_si256()); +} + + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_set1_epi64 (__m128i __O, __mmask8 __M, long long __A) +{ + return (__m128i) __builtin_ia32_selectq_128(__M, + (__v2di) _mm_set1_epi64x(__A), + (__v2di) __O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_set1_epi64 (__mmask8 __M, long long __A) +{ + return (__m128i) __builtin_ia32_selectq_128(__M, + (__v2di) _mm_set1_epi64x(__A), + (__v2di) _mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_set1_epi64 (__m256i __O, __mmask8 __M, long long __A) +{ + return (__m256i) __builtin_ia32_selectq_256(__M, + (__v4di) _mm256_set1_epi64x(__A), + (__v4di) __O) ; +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_set1_epi64 (__mmask8 __M, long long __A) +{ + return (__m256i) __builtin_ia32_selectq_256(__M, + (__v4di) _mm256_set1_epi64x(__A), + (__v4di) _mm256_setzero_si256()); +} + +#define _mm_fixupimm_pd(A, B, C, imm) \ + ((__m128d)__builtin_ia32_fixupimmpd128_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), (int)(imm), \ + (__mmask8)-1)) + +#define _mm_mask_fixupimm_pd(A, U, B, C, imm) \ + ((__m128d)__builtin_ia32_fixupimmpd128_mask((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), (int)(imm), \ + (__mmask8)(U))) + +#define _mm_maskz_fixupimm_pd(U, A, B, C, imm) \ + ((__m128d)__builtin_ia32_fixupimmpd128_maskz((__v2df)(__m128d)(A), \ + (__v2df)(__m128d)(B), \ + (__v2di)(__m128i)(C), \ + (int)(imm), (__mmask8)(U))) + +#define _mm256_fixupimm_pd(A, B, C, imm) \ + ((__m256d)__builtin_ia32_fixupimmpd256_mask((__v4df)(__m256d)(A), \ + (__v4df)(__m256d)(B), \ + (__v4di)(__m256i)(C), (int)(imm), \ + (__mmask8)-1)) + +#define _mm256_mask_fixupimm_pd(A, U, B, C, imm) \ + ((__m256d)__builtin_ia32_fixupimmpd256_mask((__v4df)(__m256d)(A), \ + (__v4df)(__m256d)(B), \ + (__v4di)(__m256i)(C), (int)(imm), \ + (__mmask8)(U))) + +#define _mm256_maskz_fixupimm_pd(U, A, B, C, imm) \ + ((__m256d)__builtin_ia32_fixupimmpd256_maskz((__v4df)(__m256d)(A), \ + (__v4df)(__m256d)(B), \ + (__v4di)(__m256i)(C), \ + (int)(imm), (__mmask8)(U))) + +#define _mm_fixupimm_ps(A, B, C, imm) \ + ((__m128)__builtin_ia32_fixupimmps128_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)-1)) + +#define _mm_mask_fixupimm_ps(A, U, B, C, imm) \ + ((__m128)__builtin_ia32_fixupimmps128_mask((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)(U))) + +#define _mm_maskz_fixupimm_ps(U, A, B, C, imm) \ + ((__m128)__builtin_ia32_fixupimmps128_maskz((__v4sf)(__m128)(A), \ + (__v4sf)(__m128)(B), \ + (__v4si)(__m128i)(C), (int)(imm), \ + (__mmask8)(U))) + +#define _mm256_fixupimm_ps(A, B, C, imm) \ + ((__m256)__builtin_ia32_fixupimmps256_mask((__v8sf)(__m256)(A), \ + (__v8sf)(__m256)(B), \ + (__v8si)(__m256i)(C), (int)(imm), \ + (__mmask8)-1)) + +#define _mm256_mask_fixupimm_ps(A, U, B, C, imm) \ + ((__m256)__builtin_ia32_fixupimmps256_mask((__v8sf)(__m256)(A), \ + (__v8sf)(__m256)(B), \ + (__v8si)(__m256i)(C), (int)(imm), \ + (__mmask8)(U))) + +#define _mm256_maskz_fixupimm_ps(U, A, B, C, imm) \ + ((__m256)__builtin_ia32_fixupimmps256_maskz((__v8sf)(__m256)(A), \ + (__v8sf)(__m256)(B), \ + (__v8si)(__m256i)(C), (int)(imm), \ + (__mmask8)(U))) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_load_pd (__m128d __W, __mmask8 __U, void const *__P) +{ + return (__m128d) __builtin_ia32_loadapd128_mask ((const __v2df *) __P, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_load_pd (__mmask8 __U, void const *__P) +{ + return (__m128d) __builtin_ia32_loadapd128_mask ((const __v2df *) __P, + (__v2df) + _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_load_pd (__m256d __W, __mmask8 __U, void const *__P) +{ + return (__m256d) __builtin_ia32_loadapd256_mask ((const __v4df *) __P, + (__v4df) __W, + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_load_pd (__mmask8 __U, void const *__P) +{ + return (__m256d) __builtin_ia32_loadapd256_mask ((const __v4df *) __P, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_load_ps (__m128 __W, __mmask8 __U, void const *__P) +{ + return (__m128) __builtin_ia32_loadaps128_mask ((const __v4sf *) __P, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_load_ps (__mmask8 __U, void const *__P) +{ + return (__m128) __builtin_ia32_loadaps128_mask ((const __v4sf *) __P, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_load_ps (__m256 __W, __mmask8 __U, void const *__P) +{ + return (__m256) __builtin_ia32_loadaps256_mask ((const __v8sf *) __P, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_load_ps (__mmask8 __U, void const *__P) +{ + return (__m256) __builtin_ia32_loadaps256_mask ((const __v8sf *) __P, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +static __inline __m128i __DEFAULT_FN_ATTRS128 +_mm_loadu_epi64 (void const *__P) +{ + struct __loadu_epi64 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi64*)__P)->__v; +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_loadu_epi64 (__m128i __W, __mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_loaddqudi128_mask ((const __v2di *) __P, + (__v2di) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_loadu_epi64 (__mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_loaddqudi128_mask ((const __v2di *) __P, + (__v2di) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline __m256i __DEFAULT_FN_ATTRS256 +_mm256_loadu_epi64 (void const *__P) +{ + struct __loadu_epi64 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi64*)__P)->__v; +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_loadu_epi64 (__m256i __W, __mmask8 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_loaddqudi256_mask ((const __v4di *) __P, + (__v4di) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_loadu_epi64 (__mmask8 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_loaddqudi256_mask ((const __v4di *) __P, + (__v4di) + _mm256_setzero_si256 (), + (__mmask8) __U); +} + +static __inline __m128i __DEFAULT_FN_ATTRS128 +_mm_loadu_epi32 (void const *__P) +{ + struct __loadu_epi32 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi32*)__P)->__v; +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_loadu_epi32 (__m128i __W, __mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_loaddqusi128_mask ((const __v4si *) __P, + (__v4si) __W, + (__mmask8) __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_loadu_epi32 (__mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_loaddqusi128_mask ((const __v4si *) __P, + (__v4si) + _mm_setzero_si128 (), + (__mmask8) __U); +} + +static __inline __m256i __DEFAULT_FN_ATTRS256 +_mm256_loadu_epi32 (void const *__P) +{ + struct __loadu_epi32 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_epi32*)__P)->__v; +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_loadu_epi32 (__m256i __W, __mmask8 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_loaddqusi256_mask ((const __v8si *) __P, + (__v8si) __W, + (__mmask8) __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_loadu_epi32 (__mmask8 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_loaddqusi256_mask ((const __v8si *) __P, + (__v8si) + _mm256_setzero_si256 (), + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_loadu_pd (__m128d __W, __mmask8 __U, void const *__P) +{ + return (__m128d) __builtin_ia32_loadupd128_mask ((const __v2df *) __P, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_loadu_pd (__mmask8 __U, void const *__P) +{ + return (__m128d) __builtin_ia32_loadupd128_mask ((const __v2df *) __P, + (__v2df) + _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_loadu_pd (__m256d __W, __mmask8 __U, void const *__P) +{ + return (__m256d) __builtin_ia32_loadupd256_mask ((const __v4df *) __P, + (__v4df) __W, + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_loadu_pd (__mmask8 __U, void const *__P) +{ + return (__m256d) __builtin_ia32_loadupd256_mask ((const __v4df *) __P, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_loadu_ps (__m128 __W, __mmask8 __U, void const *__P) +{ + return (__m128) __builtin_ia32_loadups128_mask ((const __v4sf *) __P, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_loadu_ps (__mmask8 __U, void const *__P) +{ + return (__m128) __builtin_ia32_loadups128_mask ((const __v4sf *) __P, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_loadu_ps (__m256 __W, __mmask8 __U, void const *__P) +{ + return (__m256) __builtin_ia32_loadups256_mask ((const __v8sf *) __P, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_loadu_ps (__mmask8 __U, void const *__P) +{ + return (__m256) __builtin_ia32_loadups256_mask ((const __v8sf *) __P, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_store_pd (void *__P, __mmask8 __U, __m128d __A) +{ + __builtin_ia32_storeapd128_mask ((__v2df *) __P, + (__v2df) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_store_pd (void *__P, __mmask8 __U, __m256d __A) +{ + __builtin_ia32_storeapd256_mask ((__v4df *) __P, + (__v4df) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_store_ps (void *__P, __mmask8 __U, __m128 __A) +{ + __builtin_ia32_storeaps128_mask ((__v4sf *) __P, + (__v4sf) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_store_ps (void *__P, __mmask8 __U, __m256 __A) +{ + __builtin_ia32_storeaps256_mask ((__v8sf *) __P, + (__v8sf) __A, + (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS128 +_mm_storeu_epi64 (void *__P, __m128i __A) +{ + struct __storeu_epi64 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi64*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_storeu_epi64 (void *__P, __mmask8 __U, __m128i __A) +{ + __builtin_ia32_storedqudi128_mask ((__v2di *) __P, + (__v2di) __A, + (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS256 +_mm256_storeu_epi64 (void *__P, __m256i __A) +{ + struct __storeu_epi64 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi64*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_storeu_epi64 (void *__P, __mmask8 __U, __m256i __A) +{ + __builtin_ia32_storedqudi256_mask ((__v4di *) __P, + (__v4di) __A, + (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS128 +_mm_storeu_epi32 (void *__P, __m128i __A) +{ + struct __storeu_epi32 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi32*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_storeu_epi32 (void *__P, __mmask8 __U, __m128i __A) +{ + __builtin_ia32_storedqusi128_mask ((__v4si *) __P, + (__v4si) __A, + (__mmask8) __U); +} + +static __inline void __DEFAULT_FN_ATTRS256 +_mm256_storeu_epi32 (void *__P, __m256i __A) +{ + struct __storeu_epi32 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_epi32*)__P)->__v = __A; +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_storeu_epi32 (void *__P, __mmask8 __U, __m256i __A) +{ + __builtin_ia32_storedqusi256_mask ((__v8si *) __P, + (__v8si) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_storeu_pd (void *__P, __mmask8 __U, __m128d __A) +{ + __builtin_ia32_storeupd128_mask ((__v2df *) __P, + (__v2df) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_storeu_pd (void *__P, __mmask8 __U, __m256d __A) +{ + __builtin_ia32_storeupd256_mask ((__v4df *) __P, + (__v4df) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_storeu_ps (void *__P, __mmask8 __U, __m128 __A) +{ + __builtin_ia32_storeups128_mask ((__v4sf *) __P, + (__v4sf) __A, + (__mmask8) __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_storeu_ps (void *__P, __mmask8 __U, __m256 __A) +{ + __builtin_ia32_storeups256_mask ((__v8sf *) __P, + (__v8sf) __A, + (__mmask8) __U); +} + + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_unpackhi_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_unpackhi_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_unpackhi_pd(__mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_unpackhi_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_unpackhi_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_unpackhi_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpackhi_pd(__mmask8 __U, __m256d __A, __m256d __B) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_unpackhi_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_unpackhi_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_unpackhi_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_unpackhi_ps(__mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_unpackhi_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_unpackhi_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_unpackhi_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpackhi_ps(__mmask8 __U, __m256 __A, __m256 __B) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_unpackhi_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_unpacklo_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_unpacklo_pd(__A, __B), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_unpacklo_pd(__mmask8 __U, __m128d __A, __m128d __B) +{ + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_unpacklo_pd(__A, __B), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_unpacklo_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_unpacklo_pd(__A, __B), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpacklo_pd(__mmask8 __U, __m256d __A, __m256d __B) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_unpacklo_pd(__A, __B), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_unpacklo_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_unpacklo_ps(__A, __B), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_unpacklo_ps(__mmask8 __U, __m128 __A, __m128 __B) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_unpacklo_ps(__A, __B), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_unpacklo_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_unpacklo_ps(__A, __B), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpacklo_ps(__mmask8 __U, __m256 __A, __m256 __B) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_unpacklo_ps(__A, __B), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_rcp14_pd (__m128d __A) +{ + return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A, + (__v2df) + _mm_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_rcp14_pd (__m128d __W, __mmask8 __U, __m128d __A) +{ + return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_rcp14_pd (__mmask8 __U, __m128d __A) +{ + return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A, + (__v2df) + _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_rcp14_pd (__m256d __A) +{ + return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_rcp14_pd (__m256d __W, __mmask8 __U, __m256d __A) +{ + return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A, + (__v4df) __W, + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_rcp14_pd (__mmask8 __U, __m256d __A) +{ + return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_rcp14_ps (__m128 __A) +{ + return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_rcp14_ps (__m128 __W, __mmask8 __U, __m128 __A) +{ + return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_rcp14_ps (__mmask8 __U, __m128 __A) +{ + return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_rcp14_ps (__m256 __A) +{ + return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_rcp14_ps (__m256 __W, __mmask8 __U, __m256 __A) +{ + return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_rcp14_ps (__mmask8 __U, __m256 __A) +{ + return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +#define _mm_mask_permute_pd(W, U, X, C) \ + ((__m128d)__builtin_ia32_selectpd_128((__mmask8)(U), \ + (__v2df)_mm_permute_pd((X), (C)), \ + (__v2df)(__m128d)(W))) + +#define _mm_maskz_permute_pd(U, X, C) \ + ((__m128d)__builtin_ia32_selectpd_128((__mmask8)(U), \ + (__v2df)_mm_permute_pd((X), (C)), \ + (__v2df)_mm_setzero_pd())) + +#define _mm256_mask_permute_pd(W, U, X, C) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_permute_pd((X), (C)), \ + (__v4df)(__m256d)(W))) + +#define _mm256_maskz_permute_pd(U, X, C) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_permute_pd((X), (C)), \ + (__v4df)_mm256_setzero_pd())) + +#define _mm_mask_permute_ps(W, U, X, C) \ + ((__m128)__builtin_ia32_selectps_128((__mmask8)(U), \ + (__v4sf)_mm_permute_ps((X), (C)), \ + (__v4sf)(__m128)(W))) + +#define _mm_maskz_permute_ps(U, X, C) \ + ((__m128)__builtin_ia32_selectps_128((__mmask8)(U), \ + (__v4sf)_mm_permute_ps((X), (C)), \ + (__v4sf)_mm_setzero_ps())) + +#define _mm256_mask_permute_ps(W, U, X, C) \ + ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ + (__v8sf)_mm256_permute_ps((X), (C)), \ + (__v8sf)(__m256)(W))) + +#define _mm256_maskz_permute_ps(U, X, C) \ + ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ + (__v8sf)_mm256_permute_ps((X), (C)), \ + (__v8sf)_mm256_setzero_ps())) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_permutevar_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128i __C) +{ + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_permutevar_pd(__A, __C), + (__v2df)__W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_permutevar_pd(__mmask8 __U, __m128d __A, __m128i __C) +{ + return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, + (__v2df)_mm_permutevar_pd(__A, __C), + (__v2df)_mm_setzero_pd()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_permutevar_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256i __C) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_permutevar_pd(__A, __C), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutevar_pd(__mmask8 __U, __m256d __A, __m256i __C) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_permutevar_pd(__A, __C), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_permutevar_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128i __C) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_permutevar_ps(__A, __C), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_permutevar_ps(__mmask8 __U, __m128 __A, __m128i __C) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_permutevar_ps(__A, __C), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_permutevar_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256i __C) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_permutevar_ps(__A, __C), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutevar_ps(__mmask8 __U, __m256 __A, __m256i __C) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_permutevar_ps(__A, __C), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_test_epi32_mask (__m128i __A, __m128i __B) +{ + return _mm_cmpneq_epi32_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_mask_test_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_cmpneq_epi32_mask (__U, _mm_and_si128 (__A, __B), + _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_test_epi32_mask (__m256i __A, __m256i __B) +{ + return _mm256_cmpneq_epi32_mask (_mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_mask_test_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_cmpneq_epi32_mask (__U, _mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_test_epi64_mask (__m128i __A, __m128i __B) +{ + return _mm_cmpneq_epi64_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_mask_test_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_cmpneq_epi64_mask (__U, _mm_and_si128 (__A, __B), + _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_test_epi64_mask (__m256i __A, __m256i __B) +{ + return _mm256_cmpneq_epi64_mask (_mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_mask_test_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_cmpneq_epi64_mask (__U, _mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_testn_epi32_mask (__m128i __A, __m128i __B) +{ + return _mm_cmpeq_epi32_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_mask_testn_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_cmpeq_epi32_mask (__U, _mm_and_si128 (__A, __B), + _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_testn_epi32_mask (__m256i __A, __m256i __B) +{ + return _mm256_cmpeq_epi32_mask (_mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_mask_testn_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_cmpeq_epi32_mask (__U, _mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_testn_epi64_mask (__m128i __A, __m128i __B) +{ + return _mm_cmpeq_epi64_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 +_mm_mask_testn_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_cmpeq_epi64_mask (__U, _mm_and_si128 (__A, __B), + _mm_setzero_si128()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_testn_epi64_mask (__m256i __A, __m256i __B) +{ + return _mm256_cmpeq_epi64_mask (_mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 +_mm256_mask_testn_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_cmpeq_epi64_mask (__U, _mm256_and_si256 (__A, __B), + _mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_unpackhi_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_unpackhi_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_unpackhi_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_unpackhi_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_unpackhi_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_unpackhi_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpackhi_epi32(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_unpackhi_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_unpackhi_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_unpackhi_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_unpackhi_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_unpackhi_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_unpackhi_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_unpackhi_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpackhi_epi64(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_unpackhi_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_unpacklo_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_unpacklo_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_unpacklo_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_unpacklo_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_unpacklo_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_unpacklo_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpacklo_epi32(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_unpacklo_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_unpacklo_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_unpacklo_epi64(__A, __B), + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_unpacklo_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, + (__v2di)_mm_unpacklo_epi64(__A, __B), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_unpacklo_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_unpacklo_epi64(__A, __B), + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_unpacklo_epi64(__mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, + (__v4di)_mm256_unpacklo_epi64(__A, __B), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sra_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_sra_epi32(__A, __B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sra_epi32(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_sra_epi32(__A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sra_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_sra_epi32(__A, __B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sra_epi32(__mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_sra_epi32(__A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srai_epi32(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srai_epi32(__A, (int)__B), + (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srai_epi32(__mmask8 __U, __m128i __A, unsigned int __B) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, + (__v4si)_mm_srai_epi32(__A, (int)__B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srai_epi32(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srai_epi32(__A, (int)__B), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srai_epi32(__mmask8 __U, __m256i __A, unsigned int __B) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, + (__v8si)_mm256_srai_epi32(__A, (int)__B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_sra_epi64(__m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_psraq128((__v2di)__A, (__v2di)__B); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_sra_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, \ + (__v2di)_mm_sra_epi64(__A, __B), \ + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_sra_epi64(__mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, \ + (__v2di)_mm_sra_epi64(__A, __B), \ + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_sra_epi64(__m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_psraq256((__v4di) __A, (__v2di) __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_sra_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, \ + (__v4di)_mm256_sra_epi64(__A, __B), \ + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_sra_epi64(__mmask8 __U, __m256i __A, __m128i __B) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, \ + (__v4di)_mm256_sra_epi64(__A, __B), \ + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_srai_epi64(__m128i __A, unsigned int __imm) +{ + return (__m128i)__builtin_ia32_psraqi128((__v2di)__A, (int)__imm); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_srai_epi64(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __imm) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, \ + (__v2di)_mm_srai_epi64(__A, __imm), \ + (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_srai_epi64(__mmask8 __U, __m128i __A, unsigned int __imm) +{ + return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, \ + (__v2di)_mm_srai_epi64(__A, __imm), \ + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_srai_epi64(__m256i __A, unsigned int __imm) +{ + return (__m256i)__builtin_ia32_psraqi256((__v4di)__A, (int)__imm); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_srai_epi64(__m256i __W, __mmask8 __U, __m256i __A, + unsigned int __imm) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, \ + (__v4di)_mm256_srai_epi64(__A, __imm), \ + (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_srai_epi64(__mmask8 __U, __m256i __A, unsigned int __imm) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, \ + (__v4di)_mm256_srai_epi64(__A, __imm), \ + (__v4di)_mm256_setzero_si256()); +} + +#define _mm_ternarylogic_epi32(A, B, C, imm) \ + ((__m128i)__builtin_ia32_pternlogd128_mask( \ + (__v4si)(__m128i)(A), (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), \ + (unsigned char)(imm), (__mmask8)-1)) + +#define _mm_mask_ternarylogic_epi32(A, U, B, C, imm) \ + ((__m128i)__builtin_ia32_pternlogd128_mask( \ + (__v4si)(__m128i)(A), (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm_maskz_ternarylogic_epi32(U, A, B, C, imm) \ + ((__m128i)__builtin_ia32_pternlogd128_maskz( \ + (__v4si)(__m128i)(A), (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm256_ternarylogic_epi32(A, B, C, imm) \ + ((__m256i)__builtin_ia32_pternlogd256_mask( \ + (__v8si)(__m256i)(A), (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), \ + (unsigned char)(imm), (__mmask8)-1)) + +#define _mm256_mask_ternarylogic_epi32(A, U, B, C, imm) \ + ((__m256i)__builtin_ia32_pternlogd256_mask( \ + (__v8si)(__m256i)(A), (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm256_maskz_ternarylogic_epi32(U, A, B, C, imm) \ + ((__m256i)__builtin_ia32_pternlogd256_maskz( \ + (__v8si)(__m256i)(A), (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm_ternarylogic_epi64(A, B, C, imm) \ + ((__m128i)__builtin_ia32_pternlogq128_mask( \ + (__v2di)(__m128i)(A), (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), \ + (unsigned char)(imm), (__mmask8)-1)) + +#define _mm_mask_ternarylogic_epi64(A, U, B, C, imm) \ + ((__m128i)__builtin_ia32_pternlogq128_mask( \ + (__v2di)(__m128i)(A), (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm_maskz_ternarylogic_epi64(U, A, B, C, imm) \ + ((__m128i)__builtin_ia32_pternlogq128_maskz( \ + (__v2di)(__m128i)(A), (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm256_ternarylogic_epi64(A, B, C, imm) \ + ((__m256i)__builtin_ia32_pternlogq256_mask( \ + (__v4di)(__m256i)(A), (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), \ + (unsigned char)(imm), (__mmask8)-1)) + +#define _mm256_mask_ternarylogic_epi64(A, U, B, C, imm) \ + ((__m256i)__builtin_ia32_pternlogq256_mask( \ + (__v4di)(__m256i)(A), (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm256_maskz_ternarylogic_epi64(U, A, B, C, imm) \ + ((__m256i)__builtin_ia32_pternlogq256_maskz( \ + (__v4di)(__m256i)(A), (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), \ + (unsigned char)(imm), (__mmask8)(U))) + +#define _mm256_shuffle_f32x4(A, B, imm) \ + ((__m256)__builtin_ia32_shuf_f32x4_256((__v8sf)(__m256)(A), \ + (__v8sf)(__m256)(B), (int)(imm))) + +#define _mm256_mask_shuffle_f32x4(W, U, A, B, imm) \ + ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ + (__v8sf)_mm256_shuffle_f32x4((A), (B), (imm)), \ + (__v8sf)(__m256)(W))) + +#define _mm256_maskz_shuffle_f32x4(U, A, B, imm) \ + ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ + (__v8sf)_mm256_shuffle_f32x4((A), (B), (imm)), \ + (__v8sf)_mm256_setzero_ps())) + +#define _mm256_shuffle_f64x2(A, B, imm) \ + ((__m256d)__builtin_ia32_shuf_f64x2_256((__v4df)(__m256d)(A), \ + (__v4df)(__m256d)(B), (int)(imm))) + +#define _mm256_mask_shuffle_f64x2(W, U, A, B, imm) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_shuffle_f64x2((A), (B), (imm)), \ + (__v4df)(__m256d)(W))) + +#define _mm256_maskz_shuffle_f64x2(U, A, B, imm) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_shuffle_f64x2((A), (B), (imm)), \ + (__v4df)_mm256_setzero_pd())) + +#define _mm256_shuffle_i32x4(A, B, imm) \ + ((__m256i)__builtin_ia32_shuf_i32x4_256((__v8si)(__m256i)(A), \ + (__v8si)(__m256i)(B), (int)(imm))) + +#define _mm256_mask_shuffle_i32x4(W, U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_shuffle_i32x4((A), (B), (imm)), \ + (__v8si)(__m256i)(W))) + +#define _mm256_maskz_shuffle_i32x4(U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_shuffle_i32x4((A), (B), (imm)), \ + (__v8si)_mm256_setzero_si256())) + +#define _mm256_shuffle_i64x2(A, B, imm) \ + ((__m256i)__builtin_ia32_shuf_i64x2_256((__v4di)(__m256i)(A), \ + (__v4di)(__m256i)(B), (int)(imm))) + +#define _mm256_mask_shuffle_i64x2(W, U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_shuffle_i64x2((A), (B), (imm)), \ + (__v4di)(__m256i)(W))) + + +#define _mm256_maskz_shuffle_i64x2(U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_shuffle_i64x2((A), (B), (imm)), \ + (__v4di)_mm256_setzero_si256())) + +#define _mm_mask_shuffle_pd(W, U, A, B, M) \ + ((__m128d)__builtin_ia32_selectpd_128((__mmask8)(U), \ + (__v2df)_mm_shuffle_pd((A), (B), (M)), \ + (__v2df)(__m128d)(W))) + +#define _mm_maskz_shuffle_pd(U, A, B, M) \ + ((__m128d)__builtin_ia32_selectpd_128((__mmask8)(U), \ + (__v2df)_mm_shuffle_pd((A), (B), (M)), \ + (__v2df)_mm_setzero_pd())) + +#define _mm256_mask_shuffle_pd(W, U, A, B, M) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_shuffle_pd((A), (B), (M)), \ + (__v4df)(__m256d)(W))) + +#define _mm256_maskz_shuffle_pd(U, A, B, M) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_shuffle_pd((A), (B), (M)), \ + (__v4df)_mm256_setzero_pd())) + +#define _mm_mask_shuffle_ps(W, U, A, B, M) \ + ((__m128)__builtin_ia32_selectps_128((__mmask8)(U), \ + (__v4sf)_mm_shuffle_ps((A), (B), (M)), \ + (__v4sf)(__m128)(W))) + +#define _mm_maskz_shuffle_ps(U, A, B, M) \ + ((__m128)__builtin_ia32_selectps_128((__mmask8)(U), \ + (__v4sf)_mm_shuffle_ps((A), (B), (M)), \ + (__v4sf)_mm_setzero_ps())) + +#define _mm256_mask_shuffle_ps(W, U, A, B, M) \ + ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ + (__v8sf)_mm256_shuffle_ps((A), (B), (M)), \ + (__v8sf)(__m256)(W))) + +#define _mm256_maskz_shuffle_ps(U, A, B, M) \ + ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ + (__v8sf)_mm256_shuffle_ps((A), (B), (M)), \ + (__v8sf)_mm256_setzero_ps())) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_rsqrt14_pd (__m128d __A) +{ + return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A, + (__v2df) + _mm_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_rsqrt14_pd (__m128d __W, __mmask8 __U, __m128d __A) +{ + return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A, + (__v2df) __W, + (__mmask8) __U); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_rsqrt14_pd (__mmask8 __U, __m128d __A) +{ + return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A, + (__v2df) + _mm_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_rsqrt14_pd (__m256d __A) +{ + return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) -1); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_rsqrt14_pd (__m256d __W, __mmask8 __U, __m256d __A) +{ + return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A, + (__v4df) __W, + (__mmask8) __U); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_rsqrt14_pd (__mmask8 __U, __m256d __A) +{ + return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A, + (__v4df) + _mm256_setzero_pd (), + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_rsqrt14_ps (__m128 __A) +{ + return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_rsqrt14_ps (__m128 __W, __mmask8 __U, __m128 __A) +{ + return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_rsqrt14_ps (__mmask8 __U, __m128 __A) +{ + return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_rsqrt14_ps (__m256 __A) +{ + return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) -1); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_rsqrt14_ps (__m256 __W, __mmask8 __U, __m256 __A) +{ + return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_rsqrt14_ps (__mmask8 __U, __m256 __A) +{ + return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_broadcast_f32x4(__m128 __A) +{ + return (__m256)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A, + 0, 1, 2, 3, 0, 1, 2, 3); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcast_f32x4(__m256 __O, __mmask8 __M, __m128 __A) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__M, + (__v8sf)_mm256_broadcast_f32x4(__A), + (__v8sf)__O); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcast_f32x4 (__mmask8 __M, __m128 __A) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__M, + (__v8sf)_mm256_broadcast_f32x4(__A), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_broadcast_i32x4(__m128i __A) +{ + return (__m256i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, + 0, 1, 2, 3, 0, 1, 2, 3); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcast_i32x4(__m256i __O, __mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_broadcast_i32x4(__A), + (__v8si)__O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcast_i32x4(__mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_broadcast_i32x4(__A), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcastsd_pd (__m256d __O, __mmask8 __M, __m128d __A) +{ + return (__m256d)__builtin_ia32_selectpd_256(__M, + (__v4df) _mm256_broadcastsd_pd(__A), + (__v4df) __O); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A) +{ + return (__m256d)__builtin_ia32_selectpd_256(__M, + (__v4df) _mm256_broadcastsd_pd(__A), + (__v4df) _mm256_setzero_pd()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_broadcastss_ps (__m128 __O, __mmask8 __M, __m128 __A) +{ + return (__m128)__builtin_ia32_selectps_128(__M, + (__v4sf) _mm_broadcastss_ps(__A), + (__v4sf) __O); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_broadcastss_ps (__mmask8 __M, __m128 __A) +{ + return (__m128)__builtin_ia32_selectps_128(__M, + (__v4sf) _mm_broadcastss_ps(__A), + (__v4sf) _mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcastss_ps (__m256 __O, __mmask8 __M, __m128 __A) +{ + return (__m256)__builtin_ia32_selectps_256(__M, + (__v8sf) _mm256_broadcastss_ps(__A), + (__v8sf) __O); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcastss_ps (__mmask8 __M, __m128 __A) +{ + return (__m256)__builtin_ia32_selectps_256(__M, + (__v8sf) _mm256_broadcastss_ps(__A), + (__v8sf) _mm256_setzero_ps()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_broadcastd_epi32 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectd_128(__M, + (__v4si) _mm_broadcastd_epi32(__A), + (__v4si) __O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectd_128(__M, + (__v4si) _mm_broadcastd_epi32(__A), + (__v4si) _mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcastd_epi32 (__m256i __O, __mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectd_256(__M, + (__v8si) _mm256_broadcastd_epi32(__A), + (__v8si) __O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectd_256(__M, + (__v8si) _mm256_broadcastd_epi32(__A), + (__v8si) _mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_broadcastq_epi64 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectq_128(__M, + (__v2di) _mm_broadcastq_epi64(__A), + (__v2di) __O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A) +{ + return (__m128i)__builtin_ia32_selectq_128(__M, + (__v2di) _mm_broadcastq_epi64(__A), + (__v2di) _mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_broadcastq_epi64 (__m256i __O, __mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectq_256(__M, + (__v4di) _mm256_broadcastq_epi64(__A), + (__v4di) __O); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A) +{ + return (__m256i)__builtin_ia32_selectq_256(__M, + (__v4di) _mm256_broadcastq_epi64(__A), + (__v4di) _mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtsepi32_epi8 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A, + (__v16qi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsepi32_epi8 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovsdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtsepi32_epi8 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A, + (__v16qi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtsepi32_epi8 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovsdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtsepi32_epi16 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A, + (__v8hi)_mm_setzero_si128 (), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A, + (__v8hi)__O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsepi32_epi16 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovsdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtsepi32_epi16 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A, + (__v8hi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtsepi32_epi16 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovsdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtsepi64_epi8 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A, + (__v16qi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsepi64_epi8 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovsqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtsepi64_epi8 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A, + (__v16qi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtsepi64_epi8 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovsqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtsepi64_epi32 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A, + (__v4si)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A, + (__v4si) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsepi64_epi32 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A, + (__v4si) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovsqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtsepi64_epi32 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A, + (__v4si)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A, + (__v4si)__O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtsepi64_epi32 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A, + (__v4si) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovsqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtsepi64_epi16 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A, + (__v8hi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtsepi64_epi16 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovsqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtsepi64_epi16 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A, + (__v8hi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtsepi64_epi16 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovsqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtusepi32_epi8 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A, + (__v16qi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtusepi32_epi8 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovusdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtusepi32_epi8 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A, + (__v16qi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtusepi32_epi8 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovusdb256mem_mask ((__v16qi*) __P, (__v8si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtusepi32_epi16 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A, + (__v8hi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtusepi32_epi16 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovusdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtusepi32_epi16 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A, + (__v8hi) _mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtusepi32_epi16 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovusdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtusepi64_epi8 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A, + (__v16qi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtusepi64_epi8 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovusqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtusepi64_epi8 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A, + (__v16qi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A, + (__v16qi) __O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtusepi64_epi8 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovusqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtusepi64_epi32 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A, + (__v4si)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A, + (__v4si) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtusepi64_epi32 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A, + (__v4si) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovusqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtusepi64_epi32 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A, + (__v4si)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A, + (__v4si) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtusepi64_epi32 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A, + (__v4si) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovusqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtusepi64_epi16 (__m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A, + (__v8hi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtusepi64_epi16 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovusqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtusepi64_epi16 (__m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A, + (__v8hi)_mm_undefined_si128(), + (__mmask8) -1); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtusepi64_epi16 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovusqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtepi32_epi8 (__m128i __A) +{ + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v4si)__A, __v4qi), (__v4qi){0, 0, 0, 0}, 0, 1, + 2, 3, 4, 5, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi32_epi8 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A, + (__v16qi) + _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi32_epi8 (__m256i __A) +{ + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v8si)__A, __v8qi), + (__v8qi){0, 0, 0, 0, 0, 0, 0, 0}, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi32_epi8 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtepi32_epi16 (__m128i __A) +{ + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v4si)__A, __v4hi), (__v4hi){0, 0, 0, 0}, 0, 1, + 2, 3, 4, 5, 6, 7); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi32_epi16 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi32_epi16 (__m256i __A) +{ + return (__m128i)__builtin_convertvector((__v8si)__A, __v8hi); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi32_epi16 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtepi64_epi8 (__m128i __A) +{ + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v2di)__A, __v2qi), (__v2qi){0, 0}, 0, 1, 2, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi64_epi8 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi64_epi8 (__m256i __A) +{ + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v4di)__A, __v4qi), (__v4qi){0, 0, 0, 0}, 0, 1, + 2, 3, 4, 5, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A, + (__v16qi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi64_epi8 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A, + (__v16qi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtepi64_epi32 (__m128i __A) +{ + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v2di)__A, __v2si), (__v2si){0, 0}, 0, 1, 2, 3); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A, + (__v4si) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi64_epi32 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A, + (__v4si) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi64_epi32 (__m256i __A) +{ + return (__m128i)__builtin_convertvector((__v4di)__A, __v4si); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm256_cvtepi64_epi32(__A), + (__v4si)__O); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi64_epi32 (__mmask8 __M, __m256i __A) +{ + return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, + (__v4si)_mm256_cvtepi64_epi32(__A), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_cvtepi64_epi16 (__m128i __A) +{ + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v2di)__A, __v2hi), (__v2hi){0, 0}, 0, 1, 2, 3, + 3, 3, 3, 3); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A, + (__v8hi)__O, + __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtepi64_epi16 (__mmask8 __M, __m128i __A) +{ + return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) +{ + __builtin_ia32_pmovqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_cvtepi64_epi16 (__m256i __A) +{ + return (__m128i)__builtin_shufflevector( + __builtin_convertvector((__v4di)__A, __v4hi), (__v4hi){0, 0, 0, 0}, 0, 1, + 2, 3, 4, 5, 6, 7); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A, + (__v8hi) __O, __M); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtepi64_epi16 (__mmask8 __M, __m256i __A) +{ + return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A, + (__v8hi) _mm_setzero_si128 (), + __M); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) +{ + __builtin_ia32_pmovqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M); +} + +#define _mm256_extractf32x4_ps(A, imm) \ + ((__m128)__builtin_ia32_extractf32x4_256_mask((__v8sf)(__m256)(A), \ + (int)(imm), \ + (__v4sf)_mm_undefined_ps(), \ + (__mmask8)-1)) + +#define _mm256_mask_extractf32x4_ps(W, U, A, imm) \ + ((__m128)__builtin_ia32_extractf32x4_256_mask((__v8sf)(__m256)(A), \ + (int)(imm), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_extractf32x4_ps(U, A, imm) \ + ((__m128)__builtin_ia32_extractf32x4_256_mask((__v8sf)(__m256)(A), \ + (int)(imm), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U))) + +#define _mm256_extracti32x4_epi32(A, imm) \ + ((__m128i)__builtin_ia32_extracti32x4_256_mask((__v8si)(__m256i)(A), \ + (int)(imm), \ + (__v4si)_mm_undefined_si128(), \ + (__mmask8)-1)) + +#define _mm256_mask_extracti32x4_epi32(W, U, A, imm) \ + ((__m128i)__builtin_ia32_extracti32x4_256_mask((__v8si)(__m256i)(A), \ + (int)(imm), \ + (__v4si)(__m128i)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_extracti32x4_epi32(U, A, imm) \ + ((__m128i)__builtin_ia32_extracti32x4_256_mask((__v8si)(__m256i)(A), \ + (int)(imm), \ + (__v4si)_mm_setzero_si128(), \ + (__mmask8)(U))) + +#define _mm256_insertf32x4(A, B, imm) \ + ((__m256)__builtin_ia32_insertf32x4_256((__v8sf)(__m256)(A), \ + (__v4sf)(__m128)(B), (int)(imm))) + +#define _mm256_mask_insertf32x4(W, U, A, B, imm) \ + ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ + (__v8sf)_mm256_insertf32x4((A), (B), (imm)), \ + (__v8sf)(__m256)(W))) + +#define _mm256_maskz_insertf32x4(U, A, B, imm) \ + ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ + (__v8sf)_mm256_insertf32x4((A), (B), (imm)), \ + (__v8sf)_mm256_setzero_ps())) + +#define _mm256_inserti32x4(A, B, imm) \ + ((__m256i)__builtin_ia32_inserti32x4_256((__v8si)(__m256i)(A), \ + (__v4si)(__m128i)(B), (int)(imm))) + +#define _mm256_mask_inserti32x4(W, U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_inserti32x4((A), (B), (imm)), \ + (__v8si)(__m256i)(W))) + +#define _mm256_maskz_inserti32x4(U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_inserti32x4((A), (B), (imm)), \ + (__v8si)_mm256_setzero_si256())) + +#define _mm_getmant_pd(A, B, C) \ + ((__m128d)__builtin_ia32_getmantpd128_mask((__v2df)(__m128d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)-1)) + +#define _mm_mask_getmant_pd(W, U, A, B, C) \ + ((__m128d)__builtin_ia32_getmantpd128_mask((__v2df)(__m128d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v2df)(__m128d)(W), \ + (__mmask8)(U))) + +#define _mm_maskz_getmant_pd(U, A, B, C) \ + ((__m128d)__builtin_ia32_getmantpd128_mask((__v2df)(__m128d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v2df)_mm_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm256_getmant_pd(A, B, C) \ + ((__m256d)__builtin_ia32_getmantpd256_mask((__v4df)(__m256d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)-1)) + +#define _mm256_mask_getmant_pd(W, U, A, B, C) \ + ((__m256d)__builtin_ia32_getmantpd256_mask((__v4df)(__m256d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v4df)(__m256d)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_getmant_pd(U, A, B, C) \ + ((__m256d)__builtin_ia32_getmantpd256_mask((__v4df)(__m256d)(A), \ + (int)(((C)<<2) | (B)), \ + (__v4df)_mm256_setzero_pd(), \ + (__mmask8)(U))) + +#define _mm_getmant_ps(A, B, C) \ + ((__m128)__builtin_ia32_getmantps128_mask((__v4sf)(__m128)(A), \ + (int)(((C)<<2) | (B)), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)-1)) + +#define _mm_mask_getmant_ps(W, U, A, B, C) \ + ((__m128)__builtin_ia32_getmantps128_mask((__v4sf)(__m128)(A), \ + (int)(((C)<<2) | (B)), \ + (__v4sf)(__m128)(W), \ + (__mmask8)(U))) + +#define _mm_maskz_getmant_ps(U, A, B, C) \ + ((__m128)__builtin_ia32_getmantps128_mask((__v4sf)(__m128)(A), \ + (int)(((C)<<2) | (B)), \ + (__v4sf)_mm_setzero_ps(), \ + (__mmask8)(U))) + +#define _mm256_getmant_ps(A, B, C) \ + ((__m256)__builtin_ia32_getmantps256_mask((__v8sf)(__m256)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)-1)) + +#define _mm256_mask_getmant_ps(W, U, A, B, C) \ + ((__m256)__builtin_ia32_getmantps256_mask((__v8sf)(__m256)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8sf)(__m256)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_getmant_ps(U, A, B, C) \ + ((__m256)__builtin_ia32_getmantps256_mask((__v8sf)(__m256)(A), \ + (int)(((C)<<2) | (B)), \ + (__v8sf)_mm256_setzero_ps(), \ + (__mmask8)(U))) + +#define _mm_mmask_i64gather_pd(v1_old, mask, index, addr, scale) \ + ((__m128d)__builtin_ia32_gather3div2df((__v2df)(__m128d)(v1_old), \ + (void const *)(addr), \ + (__v2di)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm_mmask_i64gather_epi64(v1_old, mask, index, addr, scale) \ + ((__m128i)__builtin_ia32_gather3div2di((__v2di)(__m128i)(v1_old), \ + (void const *)(addr), \ + (__v2di)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_mmask_i64gather_pd(v1_old, mask, index, addr, scale) \ + ((__m256d)__builtin_ia32_gather3div4df((__v4df)(__m256d)(v1_old), \ + (void const *)(addr), \ + (__v4di)(__m256i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_mmask_i64gather_epi64(v1_old, mask, index, addr, scale) \ + ((__m256i)__builtin_ia32_gather3div4di((__v4di)(__m256i)(v1_old), \ + (void const *)(addr), \ + (__v4di)(__m256i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm_mmask_i64gather_ps(v1_old, mask, index, addr, scale) \ + ((__m128)__builtin_ia32_gather3div4sf((__v4sf)(__m128)(v1_old), \ + (void const *)(addr), \ + (__v2di)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm_mmask_i64gather_epi32(v1_old, mask, index, addr, scale) \ + ((__m128i)__builtin_ia32_gather3div4si((__v4si)(__m128i)(v1_old), \ + (void const *)(addr), \ + (__v2di)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_mmask_i64gather_ps(v1_old, mask, index, addr, scale) \ + ((__m128)__builtin_ia32_gather3div8sf((__v4sf)(__m128)(v1_old), \ + (void const *)(addr), \ + (__v4di)(__m256i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_mmask_i64gather_epi32(v1_old, mask, index, addr, scale) \ + ((__m128i)__builtin_ia32_gather3div8si((__v4si)(__m128i)(v1_old), \ + (void const *)(addr), \ + (__v4di)(__m256i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm_mmask_i32gather_pd(v1_old, mask, index, addr, scale) \ + ((__m128d)__builtin_ia32_gather3siv2df((__v2df)(__m128d)(v1_old), \ + (void const *)(addr), \ + (__v4si)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm_mmask_i32gather_epi64(v1_old, mask, index, addr, scale) \ + ((__m128i)__builtin_ia32_gather3siv2di((__v2di)(__m128i)(v1_old), \ + (void const *)(addr), \ + (__v4si)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_mmask_i32gather_pd(v1_old, mask, index, addr, scale) \ + ((__m256d)__builtin_ia32_gather3siv4df((__v4df)(__m256d)(v1_old), \ + (void const *)(addr), \ + (__v4si)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_mmask_i32gather_epi64(v1_old, mask, index, addr, scale) \ + ((__m256i)__builtin_ia32_gather3siv4di((__v4di)(__m256i)(v1_old), \ + (void const *)(addr), \ + (__v4si)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm_mmask_i32gather_ps(v1_old, mask, index, addr, scale) \ + ((__m128)__builtin_ia32_gather3siv4sf((__v4sf)(__m128)(v1_old), \ + (void const *)(addr), \ + (__v4si)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm_mmask_i32gather_epi32(v1_old, mask, index, addr, scale) \ + ((__m128i)__builtin_ia32_gather3siv4si((__v4si)(__m128i)(v1_old), \ + (void const *)(addr), \ + (__v4si)(__m128i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_mmask_i32gather_ps(v1_old, mask, index, addr, scale) \ + ((__m256)__builtin_ia32_gather3siv8sf((__v8sf)(__m256)(v1_old), \ + (void const *)(addr), \ + (__v8si)(__m256i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_mmask_i32gather_epi32(v1_old, mask, index, addr, scale) \ + ((__m256i)__builtin_ia32_gather3siv8si((__v8si)(__m256i)(v1_old), \ + (void const *)(addr), \ + (__v8si)(__m256i)(index), \ + (__mmask8)(mask), (int)(scale))) + +#define _mm256_permutex_pd(X, C) \ + ((__m256d)__builtin_ia32_permdf256((__v4df)(__m256d)(X), (int)(C))) + +#define _mm256_mask_permutex_pd(W, U, X, C) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_permutex_pd((X), (C)), \ + (__v4df)(__m256d)(W))) + +#define _mm256_maskz_permutex_pd(U, X, C) \ + ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ + (__v4df)_mm256_permutex_pd((X), (C)), \ + (__v4df)_mm256_setzero_pd())) + +#define _mm256_permutex_epi64(X, C) \ + ((__m256i)__builtin_ia32_permdi256((__v4di)(__m256i)(X), (int)(C))) + +#define _mm256_mask_permutex_epi64(W, U, X, C) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_permutex_epi64((X), (C)), \ + (__v4di)(__m256i)(W))) + +#define _mm256_maskz_permutex_epi64(U, X, C) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_permutex_epi64((X), (C)), \ + (__v4di)_mm256_setzero_si256())) + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_permutexvar_pd (__m256i __X, __m256d __Y) +{ + return (__m256d)__builtin_ia32_permvardf256((__v4df)__Y, (__v4di)__X); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_permutexvar_pd (__m256d __W, __mmask8 __U, __m256i __X, + __m256d __Y) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_permutexvar_pd(__X, __Y), + (__v4df)__W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutexvar_pd (__mmask8 __U, __m256i __X, __m256d __Y) +{ + return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, + (__v4df)_mm256_permutexvar_pd(__X, __Y), + (__v4df)_mm256_setzero_pd()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_permutexvar_epi64 ( __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_permvardi256((__v4di) __Y, (__v4di) __X); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutexvar_epi64 (__mmask8 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_permutexvar_epi64(__X, __Y), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_permutexvar_epi64 (__m256i __W, __mmask8 __M, __m256i __X, + __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, + (__v4di)_mm256_permutexvar_epi64(__X, __Y), + (__v4di)__W); +} + +#define _mm256_permutexvar_ps(A, B) _mm256_permutevar8x32_ps((B), (A)) + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_permutexvar_ps(__m256 __W, __mmask8 __U, __m256i __X, __m256 __Y) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_permutexvar_ps(__X, __Y), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutexvar_ps(__mmask8 __U, __m256i __X, __m256 __Y) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_permutexvar_ps(__X, __Y), + (__v8sf)_mm256_setzero_ps()); +} + +#define _mm256_permutexvar_epi32(A, B) _mm256_permutevar8x32_epi32((B), (A)) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_permutexvar_epi32(__m256i __W, __mmask8 __M, __m256i __X, + __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_permutexvar_epi32(__X, __Y), + (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_permutexvar_epi32(__mmask8 __M, __m256i __X, __m256i __Y) +{ + return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, + (__v8si)_mm256_permutexvar_epi32(__X, __Y), + (__v8si)_mm256_setzero_si256()); +} + +#define _mm_alignr_epi32(A, B, imm) \ + ((__m128i)__builtin_ia32_alignd128((__v4si)(__m128i)(A), \ + (__v4si)(__m128i)(B), (int)(imm))) + +#define _mm_mask_alignr_epi32(W, U, A, B, imm) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ + (__v4si)_mm_alignr_epi32((A), (B), (imm)), \ + (__v4si)(__m128i)(W))) + +#define _mm_maskz_alignr_epi32(U, A, B, imm) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ + (__v4si)_mm_alignr_epi32((A), (B), (imm)), \ + (__v4si)_mm_setzero_si128())) + +#define _mm256_alignr_epi32(A, B, imm) \ + ((__m256i)__builtin_ia32_alignd256((__v8si)(__m256i)(A), \ + (__v8si)(__m256i)(B), (int)(imm))) + +#define _mm256_mask_alignr_epi32(W, U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_alignr_epi32((A), (B), (imm)), \ + (__v8si)(__m256i)(W))) + +#define _mm256_maskz_alignr_epi32(U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_alignr_epi32((A), (B), (imm)), \ + (__v8si)_mm256_setzero_si256())) + +#define _mm_alignr_epi64(A, B, imm) \ + ((__m128i)__builtin_ia32_alignq128((__v2di)(__m128i)(A), \ + (__v2di)(__m128i)(B), (int)(imm))) + +#define _mm_mask_alignr_epi64(W, U, A, B, imm) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ + (__v2di)_mm_alignr_epi64((A), (B), (imm)), \ + (__v2di)(__m128i)(W))) + +#define _mm_maskz_alignr_epi64(U, A, B, imm) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ + (__v2di)_mm_alignr_epi64((A), (B), (imm)), \ + (__v2di)_mm_setzero_si128())) + +#define _mm256_alignr_epi64(A, B, imm) \ + ((__m256i)__builtin_ia32_alignq256((__v4di)(__m256i)(A), \ + (__v4di)(__m256i)(B), (int)(imm))) + +#define _mm256_mask_alignr_epi64(W, U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_alignr_epi64((A), (B), (imm)), \ + (__v4di)(__m256i)(W))) + +#define _mm256_maskz_alignr_epi64(U, A, B, imm) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_alignr_epi64((A), (B), (imm)), \ + (__v4di)_mm256_setzero_si256())) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_movehdup_ps (__m128 __W, __mmask8 __U, __m128 __A) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_movehdup_ps(__A), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_movehdup_ps (__mmask8 __U, __m128 __A) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_movehdup_ps(__A), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_movehdup_ps (__m256 __W, __mmask8 __U, __m256 __A) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_movehdup_ps(__A), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_movehdup_ps (__mmask8 __U, __m256 __A) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_movehdup_ps(__A), + (__v8sf)_mm256_setzero_ps()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_moveldup_ps (__m128 __W, __mmask8 __U, __m128 __A) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_moveldup_ps(__A), + (__v4sf)__W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_moveldup_ps (__mmask8 __U, __m128 __A) +{ + return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, + (__v4sf)_mm_moveldup_ps(__A), + (__v4sf)_mm_setzero_ps()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_moveldup_ps (__m256 __W, __mmask8 __U, __m256 __A) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_moveldup_ps(__A), + (__v8sf)__W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_moveldup_ps (__mmask8 __U, __m256 __A) +{ + return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, + (__v8sf)_mm256_moveldup_ps(__A), + (__v8sf)_mm256_setzero_ps()); +} + +#define _mm256_mask_shuffle_epi32(W, U, A, I) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_shuffle_epi32((A), (I)), \ + (__v8si)(__m256i)(W))) + +#define _mm256_maskz_shuffle_epi32(U, A, I) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_shuffle_epi32((A), (I)), \ + (__v8si)_mm256_setzero_si256())) + +#define _mm_mask_shuffle_epi32(W, U, A, I) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ + (__v4si)_mm_shuffle_epi32((A), (I)), \ + (__v4si)(__m128i)(W))) + +#define _mm_maskz_shuffle_epi32(U, A, I) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ + (__v4si)_mm_shuffle_epi32((A), (I)), \ + (__v4si)_mm_setzero_si128())) + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_mask_mov_pd (__m128d __W, __mmask8 __U, __m128d __A) +{ + return (__m128d) __builtin_ia32_selectpd_128 ((__mmask8) __U, + (__v2df) __A, + (__v2df) __W); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_maskz_mov_pd (__mmask8 __U, __m128d __A) +{ + return (__m128d) __builtin_ia32_selectpd_128 ((__mmask8) __U, + (__v2df) __A, + (__v2df) _mm_setzero_pd ()); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_mask_mov_pd (__m256d __W, __mmask8 __U, __m256d __A) +{ + return (__m256d) __builtin_ia32_selectpd_256 ((__mmask8) __U, + (__v4df) __A, + (__v4df) __W); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_maskz_mov_pd (__mmask8 __U, __m256d __A) +{ + return (__m256d) __builtin_ia32_selectpd_256 ((__mmask8) __U, + (__v4df) __A, + (__v4df) _mm256_setzero_pd ()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_mov_ps (__m128 __W, __mmask8 __U, __m128 __A) +{ + return (__m128) __builtin_ia32_selectps_128 ((__mmask8) __U, + (__v4sf) __A, + (__v4sf) __W); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_mov_ps (__mmask8 __U, __m128 __A) +{ + return (__m128) __builtin_ia32_selectps_128 ((__mmask8) __U, + (__v4sf) __A, + (__v4sf) _mm_setzero_ps ()); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_mov_ps (__m256 __W, __mmask8 __U, __m256 __A) +{ + return (__m256) __builtin_ia32_selectps_256 ((__mmask8) __U, + (__v8sf) __A, + (__v8sf) __W); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_mov_ps (__mmask8 __U, __m256 __A) +{ + return (__m256) __builtin_ia32_selectps_256 ((__mmask8) __U, + (__v8sf) __A, + (__v8sf) _mm256_setzero_ps ()); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_mask_cvtph_ps (__m128 __W, __mmask8 __U, __m128i __A) +{ + return (__m128) __builtin_ia32_vcvtph2ps_mask ((__v8hi) __A, + (__v4sf) __W, + (__mmask8) __U); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_maskz_cvtph_ps (__mmask8 __U, __m128i __A) +{ + return (__m128) __builtin_ia32_vcvtph2ps_mask ((__v8hi) __A, + (__v4sf) + _mm_setzero_ps (), + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_mask_cvtph_ps (__m256 __W, __mmask8 __U, __m128i __A) +{ + return (__m256) __builtin_ia32_vcvtph2ps256_mask ((__v8hi) __A, + (__v8sf) __W, + (__mmask8) __U); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_maskz_cvtph_ps (__mmask8 __U, __m128i __A) +{ + return (__m256) __builtin_ia32_vcvtph2ps256_mask ((__v8hi) __A, + (__v8sf) + _mm256_setzero_ps (), + (__mmask8) __U); +} + +#define _mm_mask_cvt_roundps_ph(W, U, A, I) \ + ((__m128i)__builtin_ia32_vcvtps2ph_mask((__v4sf)(__m128)(A), (int)(I), \ + (__v8hi)(__m128i)(W), \ + (__mmask8)(U))) + +#define _mm_maskz_cvt_roundps_ph(U, A, I) \ + ((__m128i)__builtin_ia32_vcvtps2ph_mask((__v4sf)(__m128)(A), (int)(I), \ + (__v8hi)_mm_setzero_si128(), \ + (__mmask8)(U))) + +#define _mm_mask_cvtps_ph _mm_mask_cvt_roundps_ph +#define _mm_maskz_cvtps_ph _mm_maskz_cvt_roundps_ph + +#define _mm256_mask_cvt_roundps_ph(W, U, A, I) \ + ((__m128i)__builtin_ia32_vcvtps2ph256_mask((__v8sf)(__m256)(A), (int)(I), \ + (__v8hi)(__m128i)(W), \ + (__mmask8)(U))) + +#define _mm256_maskz_cvt_roundps_ph(U, A, I) \ + ((__m128i)__builtin_ia32_vcvtps2ph256_mask((__v8sf)(__m256)(A), (int)(I), \ + (__v8hi)_mm_setzero_si128(), \ + (__mmask8)(U))) + +#define _mm256_mask_cvtps_ph _mm256_mask_cvt_roundps_ph +#define _mm256_maskz_cvtps_ph _mm256_maskz_cvt_roundps_ph + + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif /* __AVX512VLINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b769bfa84534c7f28e044cbd7e6914ec549b4293 GIT binary patch literal 561510 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%0DRc87E^aaz`ps$%`f@U(U0j**B0rUgY zPoSTeeg^%_^a%8b=_TkTlbuVLWamOTa0WRud4ar`s(`96)dbaKY5;1$lmtp*>J946 zG#WIT>1)u}Oy7gPXIcYV!*mdIkm)DTPfT|}cbFc59x)Yl4U>wxQvU2fc1)!~rI{*% zDl*jv)n{r3YQ~fVN@D5_>diD7G@5B5Xd=^e&~&B^pbbphLED+mx`s$+UE`61i}>v# z|8^5}lS%6qC~4hd@YLEZ82@PQ_H)C0?nZeo2P(%@%PmBz<wmJQ;<rfttp%tBQ$M8A zk5d_hR0eS>lkjvBKg|K<Fs%ixW!eJT!gLCBis=IA0#mp<Ml*NHK}}FirgrX_HQZ?| zNdP4<4RH^VhPYF%M&Z3t{9ZOFn`s@MuH&cM@Y^>2Z69bK)32aknI3{3G8Of}eQq8+ zSAgu8%EC#wtOwOgI4GQ{fk&X!z=LWn3cp41Z$0o^5B{wme(T4-O$1G3nhToCwAv#~ zTJ1q)+YH*wbOL|v1pl@3pz}=mc$&{oUw~dP*?NXbww{zf7my26pl6sA=t=2)4*Hy_ zI;c8RXS~;$-|GSD!PFPjmuVN?+r{tYf^wOz;^|d>dK+|`>78eU^v;t;!Xm{Y@Q=tH z<j&*+@?i=Ag)l{cBAA+inlZHowPxyGEKKTNjPjfYN@E%a8pkvRG=*t7XgSk*(0ZmL zpd(DDL8qDSgYGju1wCcbd4)+jFZvsfAV;QhpmIz>pdh9&P#9A*D4Hn_6vxyB)P>2{ zJ52KRru52!$}&{~Rbp!84eiF8TBbdyJyTauSEgK0F4GCn38vfl_BMZ;56WlK`h-bZ zANm`%AX}zVpi)eMpg^X|pvp{NAawZ`J|vwT@moj!Eg6)|lnP2^%D{UW{N6YC?Hm4W z5oi(9a?o<7^>}YRzjqG5o#WrGfUYpz0^MSIfcGBod-lFqx%yI`-9T<kJ|G{a(!Rk` zX<y1;L;Ti|e~SV|F~x#nnL6XW&ivje{5Fbz%LZjLO$SY9nv3`5@_T#m+aCVy5a<xo zNzh5AU+~^9{NA7V?N9!#NbxYKNO8)k708Oosd%vDRGjh`ir+%{w`!njOm#tZnVR6e zCj4G1eoN)wGC&zj!$8BB#^Aj%{N76ZwvvC_2-?WB9kiWkKi=EV@7=<0xA?aQpa)FP zK+l-o;Jr8ep0{6^<n2efF9|Bi6aWff3h@h;Lj0&4(fBQze~SmjGbMr&nR?;9Ui_Z7 zf2ic`PZC=SREnt@s2Wo}P(7wJfAmm)`n!WbgP5k^=@foC8#J3~J!n1CHqbVvNB)k| zBmb(fPOaZ{Grn5WFIUUfDcE-ukNY0*dFX)<gk;U@fva1<Drf5y_&ubs-^0S5nbTfA z?DhY+dk^@UvakPNZhF6|B1Ixvm>^mZNkl}89(A-35uJ!2A|it5B?P1QZWz6fK8!ZH z84QEL=!O}i9r=IOI{Th`@5yD#^ZZ`_|L_02Uh;iE_nfn5pLKRwd#$zCrigpRd?x3n z)jJSPddrM%`WvIAZm-m5JSB4W+RfU{Fj{WbZqXSn2aHHwwsm<WlX(S0a120*)p&l* z5UXTjVYIAdl_FKLN`vh!BDvVXufFU5qbwvNqkazd1?M=(q1!nQk;E#a<v8pO9>;rw zZ-gy)@oeetrG`>sZ;{R%`zfEI(M^9NC0$vcky2y!CzaNghLlQcgLG0FKB@JfYP&Yj zfuCvv_#Wp>X^-<57SbN){=_N+_<rZFr2Wo|AgtH9=l<GzV#PbWC5Oz32q`%@nOg^5 z)6g{giMx!l%uy`2frmonfrp9Qc;}>XL|WH>8536^vhF{pm{Z(Hh$I$X3_s+R^D~FB z7=N`=fH)aZ)6k}2c$8UHo2vMm|Ks?<V~*tBA<vv}WGY7TY~&cq7N?VC<8TVFs=ehP z&rlBM8Jf2@d+NZmn?~!4QDP|PLD8J&7RDcRo?8iGRWS<?Z?(XU{GmUz+~~OIyWd2F z6@~~U7k*6(<W91Xn?+3ohk{kU<|stEL~$<s8cXWr&T)>Pg~}9gtPKqam4*h$-r1o6 zC5S~I92PJ{8Wxa&TD)mArqboRJNFuP9?m<VbD(~z^BCRqH=RdU)@M48oXESiwlz9W zYi%1{=ZS2bY1wgZENy30`=0Ayb6y=}ET)09j%^UJO4c#hpclg%^pfLGjjR1`%P16s zJ_uPWe*IEbJ*842+h-|c`vj|GT^3i%@(!A6r>>W4?){ZPWt2FcY=p*Uo6X?LWMj7i zSXG&^a6*n{C*-B@`1@tMyG$_nWQr^6qF-a_A`;`#OI`E}BNm_RDv};v<)nwxi+#-Q zxv?i5lWf?><!m8(Z`P+A=|=aN_;7}08jLP~`|ZND;c%pfYa?_H#9jL`Vy$X>?v%fs zk%wj%&T83(JRJ0zyI>Xut2{J&Ez_jEmXsB-|ETOAT<)eCws5_;u<!q(y}UK&qJ0pt z5Z5Ifz<tS{w(@mp?s@v~UdQdG#J$I?4Z;`Y-Hm&Y-3Kh5--p1LeH{4GulS1byHEGd zkza#msjj*mwc9iy(l%s6qu1D`2_RN|^&PmngL9=>-Q82syo%{l*pFKvtRH&^sGQ?C zz#J^9@x4W=^gZtzXdae0*Shj1O3*5%5oP<r5=~=iiAHWTOW^GTtEQ1<npV;>O?yb= zZr0m_v-g!~DZh=OVsaPJrFT8$5VE_TO^H>C$$dmY-sdRDz7BP!te$rgek@&Olo*FV zq&f=}sm=l+TCl1zC6TbBBqvN-_PTJ%mOH;{C>LWC<8a<0MLI81OrA%INw6v+?K1AT z%<+9`Z&SJ+`}0E+6jNXfY#C5bY8lX&McWbz9axCAHPT|W=CoLiTeN%lm04BV>|Ega zQc%%K*~zjkh1|km@%$HdzS0+V6j+zk=f;?Gdun0(k=lodzVvw?B5t4t^?%HVi1OtL z(nae6A0qxLKE%srx2xQSp8K%ML;U@{%J2C5w#r-5e9hpoGh>gPEy$M11?0k11XP5n zE2t||FHkS0QJ_&w6F?J~mV%Zttp%-RIs`hzbR2Y?=?BmcOb<a1nVy55GyMhni^&z9 zI9K+>d4ar`0zd&wVW2RkC{Pqr15g8|1W*D~Pf$;$WKc5GM9@U0>7eOMUxB`2+6vmr zv>UXW=@94;({<2wrrV&~Ob<a1nNGvocbdI@S3p;oegXZ$^a%8b=?~B!OdmlXnQY*v zvtd7-E6A0pFT8zy+1ob+G=wP&l*Kd=G?6I}l*hCPw1{a9XbsaA&=#g=DES$e{08)f zNdrHfhW&I7AO|K-kS9|d2JSfa=XC;gV(J0v!88ywkZCw*IMXydJB^=Rj^CE^Z#(hZ zPX6r_emlj#-NJ9T__tU1?G^v#0`Hs)d*^&WK1?;>r>nt!x;mgbOdW8w17A%5B`^)e z)uDVf6O_p`8CNIs)p?+KOlxp;4PV`X-*)hCr$MKgE`lyHJpw&q`W^H;lMTFcHtd~q z201g8f={j#`{c@j$}xq*D;UmR!B|i%Q#(*QrX)}j({Ma7oS(=BWi!n|$#b~mMW97Y z+i-OoU)>AZ%XA)B&-2wEK|eCR#?{w+^&{vblO;THmh6f10r@Zmf&!VUfvPb@f+CqZ zf;uuKf)bhffch|HgR+?>fF>}l2CZh=1lq*31GIzbH0U(bMbJg2-$B1Ky#>8xDg^&q zA@;xdf_#~Zfr>E&fr6N#;rEMXzh8Y&eWs?MrcB*%UpKz5H>fw$NL(GsS93r)Obc*z z0bgAXTF$fww1?>s=n&I2&^4wzpgT+-Kp&Va;ghpupIlLR?259-t|X`=QzWiN^40pF z`b_b-8qZggKuJs^aCHP<9RnJ}v>ddYX+3B?(-zPcrt^6AJU{yr=qILMK)*1(#(l5( zJ_#f-xx%yO%AUO<pdw7=;fX8Hp17)@s!XxC8p~H(fLbsm;c60J?FZ_|l#Q#|e02h7 z0@ET~UBp*cf>tse03BdD3OdSk3UrF;7tk+E4?qu?%;1SLV^5qF$co7k<j52V3S=q+ zD#KI<REMbnr~y+mP&1}PP$E+wP#>nTps`F7K@*vBLAgw;K&zO(27S$R9CV!NH0U(b zMbJg2TJR6nV*g+RPy?nGpcYK2@DHZ4e{ck71XB(uhbaQyxd`^o#eia%zJv$xOZEVE z0d-*-jH`qBY6d8SDHm6B`RZ4oubB4Z>VCd@1aySy6zCMwMbJg2*Pz!-A3z_NEZ~W= zU{9O_$bqQ>yn+?jD_9j&l_?w)&J+WRVd{e?`tTD2K?9kFfrc@S0*zvt3!2Nc6tt9S zH)uE0A<!YFpFlq`-3HxedJB5XWCq`z8T;;vfQm2`0~KQm1BEd~gQA(*gW5ACfD)L} zLFr7{plqgjpm|KoK+Bl+fc7vQ1|4SdfXB{*J$61IAEx4<;!L$cwVCRJ>N7P1HDj6& zn$NTxw47-#XfM+d&=IEVpzBO`L3f$ngWfZl!zX9XKDlC`Voaq$rI{*#DljzxHDPKA zYRS|A)PZRbXb{tI&~T=ipqWhbLGzimg0?d41?^?J2)f909dw=P73dYyd(e9(HyBOa z*gNL~@?okBs?1aqRFkPCs3lVePzR<#pg~N-LBpBmg61+U1}$b<4O-1~5Ok2~1n30Q zL--6Ivd{22etXWpy#c*p(!$%PWpAG+ynUYR?JE!8U3vE1g@Qtv+QMhpmVJhu@LMPT zEeVvwl!;O@xs)*|Wek_H09P0A)fJ!>O#49ln2v&uGW`ttndu(r9#cJd@#?V`uPLZ0 zQ%`sbd$Ol68I;U46JEiY>=j&q`xfwhD?lrlj^pZazIqP7o#Wqr1pUbL67-Vk9q1jC zJ3Myo?6LC&`7)J*x33&~`yxOQOl{yFY{UM+c>EU6zop@~H2!TAejCNV<$`jVmV%Zt z?SThy4|@O)gAOxY!+-4>|JUw-?l8T>)pvYV1Am@|{dwN-;(4<dFAx;S6oacVe6<Ov z2~%rOYo;{Zm&W&v0*zvt0Ghyb68D|t`!0YkFg?Q6M||}q=p~aiynWW}?Q;S-F$IDG znaY65FhzhOm|{RNOzlAJnBqb4Ohe$=8^WHwOi(7%Y|w0`MW97YJ3u>_z6E{DbOm&U z=_cqV(`(RcrjMYHOrG%ed9t^!D5xk?I4GPc8WhbG3yNjx3F^tzAJm^|C}=2CC_H<i z?AfaYs>M_vRG+Cge1W~$7dQwsh-o-zIMW!=7^X>}NlY_AGnwY2l=)oBGSD)nb)a=j zTR>Zw_JH;<UBI&!_}OcqYfLY3^(9|@2YSck3Ll><`}n*;-b}SXwV3LI>N7P3HDzi8 zUtk;d1*YS-bp9<Hl+82&G=V7>_vP|^+wj{q{%s#<AJY-g5vEhP?-bwn48J|&-(G`W zGkpYoWU_*f&x(C~W#Hp0!#=)>po&b@LDiX}a9<SPmx$jI`M18HzD%j0RHh8vm%;Zf z#&3)Hx7DE4OdCNPnRej59em$4{C16hy92tz^a%8b=_T%a$@h7{pXb5;JU@^hQwdNB zreOH^g4xH{48Jww-`axOGIa)ZW=g_+NqpZ#{5Fw)n+cl9G!Hb7X&LTY#`hh=Z^!tz zQ=n5!7eE)7uHn9Ge4m8hB>v43o<d9Z6gq$$nB3trbZ4JoD1Hm&-@-xROfjGsrpCCh zG2fSr-;(*aG*BATNYF^8aky_B-#5)4>tBDeu*?F@Vp;@R#Iy>uifIFA1JgFpHl_pq zm81jy<i9))I?i++SI_g+YoKdPW#Nr1%ihRJph`@!pjf6jP#jYxjA5DV-OK^yFfGE> zMSOJ?Xcf}|&;h37pyNzW;OBh8e$JjtA2m8N(T*&5I@6hAoE_;9E{#Mo2(oI9bSO(K zOlMh01d+vwAeKM(IQeS$ZpEPkW0<lp=v85C#V#!Gdw7M246u0q&%*tsKMRv_xA>YR zv74)GxP||`;vqHKDfTJ%h0#qWtl&y%2D{TfV*;0be_v|9g!|%4ZF`;j;+q;3POd%f ze;eWvM%!jO+i{*>Jt+^?ev(d}UnsH4PCCagM4IDA$#Z}CIrHe%)E%bs)5ln6Nio*) zUj7*CWMWk@^{mTE^{his%!jRZL*}QK5L+h5lC4;6y^#^#TV#ayMn-tB%98B|4~HKo z|7d&9Chz%p*A%>zY`#>SDQn@ZS}QV{tcB4QtTG{gZIL2<%|_eWKUbb~_1Q5WSu}=* z=;Xq2QgY#TEScoOF~lmDObU*jODRn5t3k`xFZCUABNV0R+Mm*XX4!^IvvAxPNqClR zSz^(C=E8L}*Os<+XO|4UWApKsU}`^bce3AH=juh%QSZ(*y8fv>mb$${`mI_9X+vdK zdJ%0A?6EAO^_KToB9;mJS}J>m!AY5(>estz)+&>`ystSYN!Og^jZW8`TM>&ly5XE6 z-QaUO>`s=s9yRsaud-Z?Z0bkM`%6d6Q&}KK%sUgSZ0g5x;P-Jp@H^R~>Z$`aXAL%e zD(;4cnpCNw$dud=nUcY(w$ezGCpF?s$x-7If`2}FVwzkVBNzV-m&wu%9KKGU=Y~rL zv8v_Xa+xjNa#?`SwEoFm^G-GHQ6d2}Iiq5VV2fB0ja*C-WIF<@YU7LA_;PJ>(&{ak z-?qUS6UE%}%9L(-$v)RxNDKy66?4aHwsgmfYSSVx?!%nYsU#b<D<%wXqcAgB#9`P~ z4OYEW1oBKpa5C~<Nw*g^UlX&<XzWTQm)qY&cNp&x{~vF)lDDKy(@w+KHBCERH+H>j zb8Kec%00^K-%=SZ%Gh?1%Gk;~N6XkYCsw`X7q&B`FKlT8YBjf!Q;J!&wvc6R<OQsN zJoXjrQ@90GKpuOr$_rT0e!NuCo{l~lJJ{#-F=v-=4TU9krs-XthT#v&0B(HO-wgG- zzW<q_Uf!8jL0bXA1{Jg+vbfA7bM#<y-kH`;Q`q&H#|+wXs~R7(Y_p^+TY0d~vP~gY zjgQ&3)1_?N*?8ejS6g<jlVn~5rRYXBWoA9&&|W&@Ajc4$L8>LN7zfT`W<AR@>oJ@C ze_d=DT2hQ`ynkNzb|ywPqwD`^WRthl`)U0!viWI?>UNJ$UC`{oo<|4Un)v<`alFe! zo1XmrC)&gjtG@qan;Ft%8)`;>E?lxFvibInaxpXlD6t#0;qt64HaOPC21l@}>(<2v z$GW`1apAjF6~3PN*kA-u8ucAb3id{(ac%BkH!4_F%smV>_josI=Q`#^Ldv;ZgmCeR zm8NEt;{`(glndVIJ`*j{u*`p`fAGN`L$pKSf*+zCs&m2D-%$JE@jrco^-@dF=^xv0 zWYIQ_ylZ<K67Yjnue$>-<sF)K5dM(dun_|tL+%^2MP-&9g_E^LiIcTPSp*Y{wm2Gd z{b-)+v*Rxw?lXQ0jR6JPvbj%!WbPw30(0yl2aD$|v3uN-caLw*s`=jR#$^#rXQa54 zw@#AETgy{odFwXBs@JGsohenYro%Z$Jue)%!ME5!R6~s0%Eu41O_Ks`<vh57wmpee zBU%ZJXeD?=+m|x?S#tK*R}17?9*A7a14XXofiPx(MHa$A$hAC(b1mmJo!xR{qsCq2 zFJd%3KZoY@+#-V;;B$*4VpVr|1&8=63kr&u;(B3bP}yab<zkE^qJiOA;~>W%X&g!r zt0ZFX&{HyZ=#OIFt$X^)*WM|qz^jD$G?l`9T5(;%e4>cOtAyiwh5Jy}>s{~1*w<fC zajX7SlpM#8%_mBa&E<rOkImDGRj={_ddLet*}-f__HQxmR*yw7y2hb2uJ$-JroA{d zraexL0gJ}b5fg1kj?dWH=}&9F$qSe0tD$HrJ#Y+452Q>a6{Cm!5Mos|df_1UUiLJ= zl-hCscw)tu^fqW57+(~vHUp^`GjN0im6BoKhFGPKX4+4bGVN(Q@vhvazdkK|$RNq2 z(!^rTT1l}`v#FR^#F~IrO{@t5Bbsnv#JRN6muFkes;g8+2_Nl^!=rj5W{FDaZPkic zRhhn4SyErC98~7lU;M)(&h#MVOP+|7{K#GG!lf>DvTED~=evVd6Hx+Awob64#mCLq z8iOjQF2rVLo$jTCyIuG1EnW9d=E_|6Z%=I0)HKpf|H=4=#92CuDwH4J@!SBrUfsM= zpzeb!Gh1`aY|X{Y)*Le%SbXpnnAuwJ%+^*rY4DaO$p*@xG8G{H2xpqg@1;Q)AK0iu zW|9@c_^ddLFL3(_k5X-dpB9vH2vU-VSjlm7Ayz@eDj8R{>MK>|Q|JdikL>f?q!+q; z$n-*{780MD35*vM1ywoKOrV><Kck+=3ydn-DwqkXXsgOIftgev>PdaCSS&DxE`K+3 z*TY*s8;D=&Z<_*|OPd1P@CV%#5J@b=zcnC4+8RLZ;mWT^n^yYzl!&D>8hWDr5~XNA zxu-<?wIWtE@faKy6~l)`b@g8AJ*59@nnDdTCF^qS8m+wW+PWN5eEqX&q&{<^7&3qU zpUjv1PckD@B3)!MC4&deL6lxnod}n*Nx2|RvWpWmDJFO2M6o&pPG;oAxZ8@yd6*K1 zL&jo6j1^0dSS&rjD&aT5(xVA4Jx=AXKUTiV;BBVbz+#K>IMiV(w}Hi&lE9)3EX9Pr zlqdAHTY8^d*3&*-u7=@Y8G-z@5%yX9bOiK!u&VFW!eCj82g{CUj>hFS%FoijjM9;# zaXv+~IQKIe=YE1!FH;X4xgK}q{ogNW-ehL^A^KvJu*?;%<E0g@^1G~XO(Rwnv)Xlr zw3^ea^)E8M%+uh0?>>=Y_zxU+@Q1Cuvik#vB7nt=_$M@jKUp*AckukHh@e}YOo=rO z>Dkk)<gS%w6-g|_It&4(!#Kdy|JknFj<X&|>fb~WNF@lQk`PEG2n4KplTZjGlm&8q z`O2fKEJp2?i!uB<eo!m?EM#rT4;kOVs;^TFSBqJspr6-FkZva2-b=PC-7u|;6Wd(d zOWTmHj%J~4t__IA%j|H)$ziT!n(Mq_Z>HbC(#U&3EuAzS<z=SA{xVgB?oLJME?8xV zn2uPC>9*BT%wp@4i+)>v(g(Gm!4O6ogP>IC*!lz=rfvvQ4pjfYKGeNjMfogsFT}Td znIo7Ff3=d2d4Em`qN#6FzfzQ0Wt+<Qo8Mz-{<Bfv9i{#aq0tzv=tKiyy%{L1Hv?h4 z0js9SL9mw$VtYyb*)I2!!jH_Ci$N)h8WQRpD}_4CtA|h=_X##qAT&~SWP+>C$9>ko zai2B#xX;I$br~-jnp5y;fhILvn<Nd_%1v{)wiU5xQX{k}(g<xD+Co%P>u&pYI(C+u zl+n~v9Eqoj`^eGY#eIT^RsEwRl3A7HWLC4*{eE#_PmNHX4PPtLv#%8CDO)5Wkr5PZ z^jc<8ZO<V5E04;I4bQsPsOW_dML3GWc-pd^bQ(G0sCS&Uj3ri;at_hW=Qz4K=wij= z)8CYfH6@b8NL#<yOBV8CFKqVq(k0ef3JcXzPF)|_>%huJ69Zf8MbcHb!Yi#QE0sos zGF79r#+z6rk}`-+F2m8uO*D1CwVzjWGR?+{9aL|IGMbIm*FR+~5RaQa%|TXEMrcQ1 zjvJxP)Y(CsLQQGPcF?H6B~kmcN>nbeG>Jh*pBQUdDlyiP#9|<>i!(jy@|hmXqJHl) z;e#Wm8ANquWB;dL$LRVeUPr%8%G7C4vi*Orb}wFMuXdl#__01?fop}M4Qb&l`k`(N zyc2$h)zmw|cT_6s{oePJ(Y!Xse!SDR_v$!P4WpPQQYwc0ar9-2!QufHeWf_^#}()N zagBGkzuCztY>9r{G}1LOa+)};#po8bAPNq@pZm0xw3TpBM<s3LL>`~aq$qsaD6c4t zPGx=zTsUFrK8olU>u_asN^=-5r8&qGcA7&Pv8v6cJ4~0-9mqoF8{9M~Zjb#*xfsK4 z9ACJs6py0^Nj~v~eTh}mTvvDyy0Qo1W_;Y?oA3ADFeT@m9_^%^9&$(C=~0hZ$a$|v zb!o2$c@RoYUhw+r{(g>lUiFEkTo|QtHS#WpTpXzmRt>eYFaXce^hPmtS2n)Xzj+x- z&#4}<&q1j>ClcJ9LxMZ7s+bFAc{r_?PA8aMD!szxu(q_QK`}JxDr@rF=98t{=CYyu zwmCBWn$J)zhVPrFNcYWYpsi76=BqyWahFkyyckvn{_kws;|OJW=Kl`IGJ{p3Jz+Ch zI$=Y(l249nGx^-px4Y!Zpf1Y#(;o?+{SjGDAIKl)Hh@(lWHJ0&%#H-?;o5!ntoa)^ zpp*iW#(s-7NSEJ{%h?Yj6j*$q0~V>$0p2)~_juRQ@hv7S*LMV?9WbUlg3&GiwIj%T zn!>bU=m=rjnsP@dl>el9KwA5YU(f<dd}_rgcLO^)Zit;6H(=HTt3LHjT)oLgx%!no zE>0>JJx5=RGV;4&)OQp6QrxgF1*|H@16MtG<p1HldDx(~8uG)b+wWrgaA~o<yqaEY zA55$&W*N*P%lKr?rIYHf9h}gnkiHn5;p1h>OE#*$On9j>sQx+mPiiK92R3;9mO5og z!AGS>X4Uaep4A`0{sUIk;0f+{Vn*%c=hb7^oGX2?wfN4|R??A<tyho!e4<5Y6?|#K z&9Zn~HryKD6om67ampl)nC#WBpFx^Ol1&-a{zy5`<3RN>um3R3BbI=C{G+I^VNDIj z)gY?IKig=jD$wL1uO0zf$s+)c9{hzG8IUcq6dwzJHFop12hsQjLRr^+KIu8K={*<O z^qynx1*??x7swm_g7bz4{M78>>dq6B@lHavNOsq+YyZ^v0=c0JT-Qs!j)B}!8@1R) zk;#K_jZ2{&tXNgcCzH|x?0NkMt8v{y3HV<*pL0-9oigF!mC6KU1O!F@L$MncBI-e} zuM>arprC*D`Hahv$GS2>x^q0GqFPBRN(KQUGyfst!?j;}=CD=s<%K`7YQ2k9>s_&G zy^B>VSSU-sV%7R9uUegKi#?VqZ(6GV_R5^G-vWvJEvAd{HJw=X?GM8yaF}fZkA43L zt1m61)7a2ijHVtpm=oMA^0*i`Y;FasrXDX0*IqnahrGUdG$H2t9bFTOPwk%4ziY~{ zz5{yn>Lxo!(UC(9&(fl<ZsIl?wvA7VH4w21mDM4dPl0}(OjW>tf1uLfR8O1ue|4>o znr0=Dc$~|YqXG*2N~en!yq6Ay75}Fcs2qaOt!LMiGCV%;qv{s3tcX@xR-_(U4AIIW zZA6RtzHF1buO8Q0X=1p|h5IWP8YE52xtgBDs^K;dF0edyfgLX$q1~NQKTmEonA{Z= z!NI<<<X|7ir8w9}601}MCm4vF?8!u3v(@W&$6R9Q7+Ep<DC16wbDWfdr6W})#W|YT zs4^O9FqW8ud5Jj$_YQGxhXNa4snKZTz#Uuk1?n_z?5=Nse{ww09>j`+jS4iAzQrE= zZ=K0_5m)%9tDVDVjueA4%a+WP;(!`H=DEOR!tK!Trhj=fO=5wOj?W*fjH7Az^k*7f zj7}Z?fA1_XBNOKTp|ikR;6R!d{xnw+wN{R%d9%knZ~UL@9X>JSMS8TCB0XdcHPR!R zSPXel9^<7b4~izZQ)^#X;qPZQG|@^DU}Q@WE`$WQ5WuQdk_1Cr5*yl@k6Sis#P)15 zaf#NeEM#^fT4bl!0&cxKy>f_E#q7ZydpMqC^~04ZH%IQWHc^Z>bboK5`+Gz82dj$l z!@hDq-d7$HccyTJPxf~x1|yAOj~s@>oQK)UJ#rZAZeUf99FE9@;kMKx&ll?ZsPNRl z5ppR;HkSH02(i962(dm6LIkT8XAN->VnaR%@qG>3^pVlaoJ0r0BHSp#;1gOmr?A(> zPmvlXYXUIon>6m3jIfg95JI(~(7Hpl)pS~S^-a@Xjs9YJM_I^5=E&=|4W#QL!SZ#O zCc&!d>1W&W($BV4AfBVMS9Y5jKi=dioF6UYq>r%u(1`WXGKyHNMhaP_N`<V_@qDjW zHNFj+v)7NNH=Sid=hcBw)P@$eOz5tw*C8rnsDajK5O5}2CQ52cLU$;sEv2(en4cT5 zbDVRV#t=t=RaFFh>Jh@H9%0>zSiDCRwkJkelN?rdFB>sz+E*v^%|vPXt(+T6tuP>y z7+S$L2v#+dHaHKWjWeAGkw2;DfYu+Ij@1{V*zS+Qc7IgZ?vKKD4^|a(+;zHi+?7lL z54Zi|R3m2;tuza~O-*g0R8uQErD|&9h{fAPz_1v>hQ<5$e_l4QMCaQ2YACZtIqcvq zhxiD3n{t{G#HwmkM080-jxKSZ+O<uw=uW1hOK!LzK+i>vF1g{7K&<M>w-66^%Y_z1 z3Ad}?=yPL6Pg8Gm3pT-9!X|hNHbJm>o7=Dn-e#L%M(o?3H)`~JgXh)5QZWR%6ca%% z#Sr8IR#l@oV(E%&zCtyka|?(3@b#MC<YJ6^Oa*&v`@-swgi^u26tSwuRD$oPl0Eqm ztj#QT9SlqSK`sWvl42+AjK0!Y*hxFXP6}380TN&*O<+6eutQ@iH}97Jz?4jK&5>Tx zTwW#SnwKILGMR}egP9y<FzuUDedd)4H|g<u2Ybdl8#$cqolR3>@w{XcCP_AwVBP#? z=1&*C+WS^7Q$<n9#L+mJcCyPW)2=tMN~R-m$4EXrC(J%B*tTH{a>*BHs9P<fq^&qn zorJp8qCByv#&#&#+gZuJ>;7Y5kM||3;d#;~Ax)*fOvX_{lf_X&li`~Is~YMw_`0UC zuWQB86Gy7rtX{7#MtPf|?){~q?y{e2C{7y(tBOf?FD0eB2SX^sHqUiBqd7eYFN20= z%5eNi8>7xR{OLhncZbPAUN#@k*3QNtKU+IT9^}oW4zMwHU>jrRu{P<mmqr~n5VR6x z;Njav^1zt^Bxn!cro=+fUYOy$eCc~<y)L)zWy99OxJZIlMuZ%z6e-6_?#ej`#{jD& zG~TL`G~TK@iutMPvqQD-mpOoHKtd=*N%AuZ34SJFc}10&1UD;K)%d4lO*Ea?MCHD{ zUc2e`_KEW6qMoP>wl|!Tr5jE|xR@I_<`Jw~q20vQn@$ugoj1B-h(qPp2k^PX>N{mX zUu8*E;Pi`hoV6(~2mPC~J_p95X&Pje3i{V)ebR!7DyjeP2T`)ApoD+5B-bscs3hHL zd{8f{o5&gU6dCoOYU$()q8HlnVujRh`quJCzCUqS7PpZKG|4wZn&g`;e>EIA0aktc zDNuo?unIKSZR?_M>)$o$?K+}uDjk8Bi@yF5Z8))Lg2yl^9pg!<d*^Xu{~9@bv)p#* zt1Eqdj(-Vhj(=Hxe2%|6v1<IC=RaGT=TFhfa~E4)Nog=DNiGJZC=0c^&ON2NSn^OM z>N>Y4RyDx}SYb7w6;}S2TCd*sGmlq6DFp_upI{pQ$wRj0{)CN!VDU0HVJ5%HW^$i$ zKYe(g(!Y-WWfUWWFZz?O=uf`rPhg{$(MZLhJ{2SNNeZ+I!$0bv#osQvkvehQBZCSl z9X#4E7O^L?izwO;dwl(LlVm-=0I8lI9SBmf|MrISpENFI@Vw&QPO*)ZQV`cnf=Piw z2o^6i2=<ggwzNWA^5~DJV=q_rggj{MBcZTDrwZWyRN&9w#c&&zDR)s}>iXo#mU0;P z8tobc{;bii)rEjIJyLS*uzAkCsTWWs)8mtRr43GoSuvhhv4;Nhf;Si#<<u5Ybff|c zR$bA_iMT44#>TlyV%f^i{0HkCY#?%PR&0EUWniES4$xUebXJnT{a@XnfdAzgv<xhM z|D_l{;hb!<CT%Zo-L=wNck<B_N$z=KWO+RFc8AqJ&d4j^)SQ9P(HSCibOu64!D7*x zhqO$2o(X7iZ{kbuSn}-c9aAl~p9PM+v1rdNwx2~bv1qXapgRm;-Jxz$+4`$jHrj#b z(YlOgk-soU{N<FvkN@SAL~PUr@gBJ2EzcrXKYBk)Z#ksCscM8GA6KZz#}$fvTwqa+ zYWB%eHTxlWjhjDw*X2pwO$MW@5>Ge=!6Rc_W!+<pYiDBB=sFIIf^n|2gg37;y}kW6 zA6}WN#xA#TX_uSqxY*@ZmRM9{k6Ws=$Bh<Z@4GH*^?dv4WIT^nX{1TbLnPHa5lJ-< zkyKz+H5MY0Y9U8bnLX>fVPCJj{(7M*npCKLD+oaTCZYB*#44dy$M%NmyuHD{q~nR; zflX~qz0F<E7$oD0<&Se0d!NDLZSHyYm+pDeXw>3-=~jC$^cbifjSSC(!}9Wzqmki# ze;<&p+o1B9FhqITxk9@FqtOcOO5JF5;M?CVChaJ8!GyT1poLorE!@hcIk8Gy);1ZE zwM{l&*SpTgs(tL@D066m*(e9WRXJ9&b3Df?m{^Ew9Hx<Ryb7OF-+sEEdy&`rYAD*> zZ2tz*Y=7BGINQHEv8o#L{kur>{gY6Q+?nMwy7&F7k%?-&i+abJ{JZk+gckpy{|EX~ z7t1x)WcgJ48qd&Z$n&v?;5(0qtn(I~`9q(#Xh5ve<u0K!U*gVO-L6gjZ~sarN3Tu- z%JjF>H&xmRHH4<GoxTagLIS&e$4k3?sr!_k`Q^fTSKPjkB|yzz>4i(sN0#73U3z?p zTOzS)J+s_xs<hlK55?@*((i{RxxdB8#n9U*f{b(umm;0yP8jJFOso=QZRoDGooGym zOpk1|Enw<V(R>xdh(2V)#6m*0jp&vM|8XH9x6@_XWmrfo(=OLpi|##ZJ^PM-sjBi< zGExD<5XT)R;<&>Q#|>7E4iSjsj^H@%W&_U_a`BFvtuICq&uEWuX*A4}B<0Z_!NjU! za-d4(c!WVbi?61C=&`@&2Na|G*ov+a17l5$FxJGtSOXRxyFQFH_1Rc+^UJQ^ysTtR z<_(Pe^fp~}K|<XSm(Wd9ovYDJ6G*K3*xlhO?#`}aN6(k;4rRJc)W3}~)=hTlD@}%p zgWhJcOGjeW+e~xGk*2wjDw*(Z$)@MqJxG-lwNZpp1p{{#F>qIL3no_8rn*~isk$2l z$c&H8>vW-YD=$+*X@&E)Tj3yRs!l7n2E;-rZQS}xZQQ6MHgvbWS;JyaX?>e3aMD?b zftQICGPFzMd(;*=ag&k4W-44r-b1!dyDmy&wobcVw|p&$<!ec=XoSdoJ3VgkP4^Ms z>t&>@_~yWFJV#iT=fJWIR>^1{?wH4x<%cJ-Cl{W*p2kTr$tlHD^U9E_dC4o8YF>Sb zjlP&hs^OK6e_7DF1tE4n{p(9EF%=(CPEQnwhNKvC>RMnifwZ(F^19GOz$zPaLxh$# z<j_*z`8$2DxdyB?_2~{Hw&}2lZ90tDCb0N)N8y<|%CSu?hF6{xRqttrTni&j=1aJi zzQnc<s>YYlIl!thv;#JTbg(Bo+l;+U2TaoB4@L`6Y!|vPFB7&{4vx}YSATgb0H0mC z{28moChaEJVmE2O(b-~~{xrGS&yNqa(SIeSL$pTcYmGn<dY#sqQp84I2`>rj<CkoG z?Dgy0ehKl;f%;;U?zt(TH)8pdxtL7>?TJ;zYz|13HV2Sm^tis?wV91~3riP1v9eyA zWKkVv3fay!$)YT=(RxuMO~w2)mF6cY*CGu6Xrb14On!;+lWxC|t7TYTEt_^yEgN~h zt7Q{QtZFi~5ld8?V~K7p{N?h{pom2%rN9svg!EuR&^$><LH2>fqREs&3n;@{XWpLg z8=t(fi}nwyr``Ri>VDYX=<)q{EwE9O(MSjJS_k>Hj^N%S{8|m0`iz)W?fO;}h+dD^ zQY<?|EqY5su@j!k8;am0uu4oBC@+J{8-emhaCwLN`nl)6x;|1r9LX_ApPd4YZc#VM ze>xb+VM>d%i!cQ)(k|9bfmtu6SvN0J;}=<CctNGB$6!NLjMxwrgAGw&)px6h82@@4 z<6k^<(A5v2T`S0?7)_*GZ97U^k)oO8v=tsIu&PmRvrU(_*<u9B_i1D^z<hFX@=D3l zRvKj-Jk4?TveP9FS~l27+L!<^9JI2hnWt@=iGHK*Zv0a&#i%l+u}iSDwY>kkv^CC= zw^r}}4#FKlypOQ;gfhi9eE-UnaxlOyRT=<mFTK+MyF_BuJ0;_4GTVZSHL^XK<lJ?% zB4Fj6QXrKS>_VhcQfylhs|1`1e_bm3>ta2;8wSn_6*199`s7OUIBBK1ESi<((Zog# z+e})6{r+oszyDW(OZ*lt8?*_PDbT+X9pj`#N4cCt$0%aazj`8#T~9|+QEqfQ+%fQ! zSu6Qvj6|DnR!Pc7m=?WFzF8o#N+xDdK+H50#1%hp?8-LJA5k=>JijP1$v{*=hKMT2 zKvV%(C6i1H{h1t9uz2{+qn(<iUeWg@dD_;E&KTT3IkoHV`E+km?l3vV%TxOe?F~%r zH?%+Ndei0dHvPVcY}w6}eCL}tm*$(xTSMl<j{z3)T?qfhLiS%wXukG(k4w^GQ_nkL z9CZ@osFO`SV)4AQO@GPRhP0h0(c=a#Z2IODo<|3w@1tk}bFmv>u15A>%*AX1Rw)z< z@aqDeV|Io=f1f)su9#d5O3{BG%Z^fprQDk{ESnOm`r$}8b4Ic==hA%7hOMq^vr&pr zOO%=FSJ%GMudcEp`KxP3VpU^#;F=>naHa0-y#8GModX_Hn-lM(6tfp2$6oXiYIA#S zdlRePX&>&`$79PFpZt~8ey~1nqBe&d+DL~SI&v|G9O@CPYIDRPM>^s_wTbA`*82Bn z`z3ub%8F_pmJIX6l3^Z}3}96;3$bKa$V&z@vwd4$yt=sx#T4j>%`CE|X4sxZZ`BMl z3|M^V7MM|5@WL?F>W6Dxmpscc^?Vj=npubfqvx{_2LKk&kAhuu6x%fyKUvY^d8MCI zMc<)1kZ!{>jjrW?#*$!k-``sjbR~Yqk|0k{7qk~(Nw}cBsIw%zj$eO!Rr~VPp;RM< zr9F<4wwFgwOW0t*s*%DPBZW1O6wB8KJUlz@{^^3HltO0TQm{6YtV&sxA~q^TBbC7> z&@!|MR0_s@!EBXY+oWMs+1=~NO(|NoqRKsTj*%W=+YA->$QenqoMTmu;2CW3&p7;O zTi?;oTen;2rY}Zm+2zm|%V}ioq8!eW2djz+(TtHoG!xMzOCOnDZ2pEUviPa{nRSu= zl64W;)Mj0zGqI`|yCUNyyCP&OSXQ>zzWb#nk3o~5rXXi8(CZ}yViw2*u6$V4y8IvM z$+9W?fc60N<OAA+Iz2gm@|34G6Q@q6dg$7vykkLM8N;9~(>IxDl*)}p3%5^N+GXeC zNbN|(CXLi)=`w({!s@M+R}5BfWBU$mQ+LRgpY?KA2HTxZO{JYqvg2o`QzWrU?z^4l zNxPkvK<-2Ly?AoRqqs>+Ydh@VZYOqdx3eotEV^<>yHKg4T{xbfHl}NOnVh;EPz{Wa zq#7tbm$&dZz7@F!-eOZA*vL4ekv<~Vz(>k8Amu|x&1W6;{%@_@Uf(=wC<@e#O^VTJ zhEIw#16!=9dC&0aLM$qj=aVDl`Opwqrt=ibS<mBX-6txf$mOwlGO`57e$2<_U5Je; zWF|ew?u6&OJ0UJKVD7>zF(!w&P(&(+!X!e~2(@lXEUHlh=8zg}4jH^=RJQZ>R^)^i z^F~9RIpnlcf9bT7+$~N!btX2NH#E`@PSf!ZK_}8Vr#Sqhpu<5A4|NFdVN0<^s<EiF z1v0KeepH>(7Nv-dMiHF1j8$=2UKNkkeA#Wmb{n$qi)wY%RqHTRsKY{qIt&#GY*Z~X z=_vMx9yOz{e(m5i``YW{>!BFkM^cPM-pHlkZN`R4{BL<;Ast`XynQ*J!kd5}YLE8) zjqLNH8p_xckG<XTe)8B8@7JDKRgJFL-`$n>ce}Qjy17+@)-)aJs-d)%Grq`K1IIf_ z<&1AAv8cv*-vH^nFZt)@BwzmW@`d&{sk1A7U`#yT1~wV}1>War95!Asj2FdF2(R!+ z8E(R6?=rh|;9@RA8?f)eBYaO=79Jd;`-*S4@|as8B`$u`&)~Hb=^nF+l8#x)(miHX zo>;ur_n08Q=LurRi7qRe2TzYM_56HTuICHO^?X>a!Q%M^Rzsu(R^-EfU#YD{(>7BI znR>p6rXA8>$?NGNntH_Ic^^%G$wxzaV9!}m8I7(MjWc*&`78-$?W6?wJLt0{pp}5d z^NDC3iQGD>O>Iy;$LaAbJP%PCEjOkhk;D|_6sO0h*cByKEjOlO?K73vKD{0u^?oq; zzSf``iWnn3TVdm6doCx^69Jr_I$u__XRs9QSqZOE^Sk;tyMK|}P+tvYBpC;7dYsUv z$C*bFtEw>xtDZ@`>M6hT!NPk*Ta`CejrE>wr1fyV(d(>-3kEEt@wI2N^tC71t<UyI zOw9Gn?=DxvXw|dcJ4ssaE$?St?~S6o`>F=|jo!1Rjo##<Pg|Rq;JGmQGKxW$Gt{cr z!X>a)xCGW(#1gBt>J5kz*}zdEd(YNPS+H~t=`wOD%7T4{(->)nlN@U@1CBhfs+2sZ zJSop<9_nJX&9V2UZzIVupw=03t=mhvVkby0c7lLauQbzoqBPTbI*R$FuvBl}pewZ0 z)^&f~2YwXwi2KN+@{dISc+&p~wavHdw`b+O_<4efXK;*69RA5`&_Il0VDU9dplz1m zw&}lQ-T9}#hgr%3Fk0i}BC0J{^A&&0TunByYUIk(%tmB8eGU7qB|F^iwxGx-;)`Fn zWlAsHWJ|#doaO}<uG*JwGo+Vp6gt=ZhsTr4J3L)s>P@a##z|L1l;{;iiGszO{Aigf z{b)%xxEKBNo?W`WEZo%d6=8*|D6DW5F{OaT^Odm(sLYFivOQ0}uGRXhd|48P4QeYI z)K<};wxU6SRZU?B8q^MMP_90My43vD!r!14%2?5)XtLC#s61acDcYG>)S_9@F;cUl zq<(%A9CR;mr~hj-0W?TC93XyB&%sGaaNQ(Tu9QYwvJ7*!ec~>C5JG`HS!GOa$x0sd zANOR*;R6&SP#xQeM7@n_Y!GDoFScfxF1LGXdiRt8*czn^NIHs*8b^!JA$CN^i|7K9 zE?s(AF7nBJGRdkt)5~@*dBA>I@1+>5|LFe*b*8w{8;kat955Hp$U2EK8kDwZ3_V1S z&n=CH1Xk%JUqC1Mf_0L+?Ye)r!1*$T!QtZ=4RFmJQjwk~ox4<XheTpkmx^<kEX6sH zrM>Htis#)M+BG+L0i`8v!T!E2SQOJZy9ELFV9}Dcp=WR7p8cx9;&U7N*K33KS9Eow zy~=1vpV9nv5#<H*>nNp>=C8Xg=x;QCAFU5Ge;=){PV=t;&A$d~{yPT$no+Ue5!y|u zo*t_~>#yb{PixhjVu)4qQVpl^QVl0salNZ~sE>QXR`S~ju`8ipmk<(t$u*C~b;&i8 zSS9wWuCt}9t~8Q$d!L`_+I#&-1F`D{VJQP{whXw&NbDKNe-9R7&xDIClU-!j*5m|k zyw$3tspoBBF}D@bs<wz$1&inHF@V_f01~{Zoa3_T-;(KHyoNGMk3_!Bks{ybNJK7! zRj-i^FIF~tv2MIb_^V{wcSTW*n39w%x}$w!rO`gk`7K8Kgb}Nzq#U0RDaR)i(%4bx z_qr{nmR(JasDLLA4ag`Gs=y6ud!Sgz>O&zu?dQwY<{}g*S35&q$RcqE+KZPL9Z4CH zzhL<9zf>^Qvn4xBb9O>mw}Y|{77}(q$8g||k$*gE=&VbFugjt#bxg50I3xY7vq*pI zY#U6hYHzN#eI-|07%=i%KP}bt_Z_$16^KjnC>keu6qTo4kD@WeVzMh-w2M@@C`Ccc z+|*;;2TyGa{a02N3^ra-l8u+F5!-l$5F34Ejb!K58~@<X)e)SGCF05t7|}Fo6be)i zcks4{;h*fR3B!(Hun<Z(gc8m|3A=l@REs~Ct<<*{MJS_fVx-Y<HBqY{jnjp|>h@xT zb3Sdz!R)Xqc+SRUITR$K?#uJdk&fP6Ue?VwFF|Z1TaB~`I_4tMF{P!rZ>c$X!Ztsu z@VHcB@^V>FM!NHDnCWku%c}Qn^9IDK<?pXp{{G6#U%yj-F3dcgQQ4GuG^8R46<$Ma zM^WJ|ARY@A&)H*THf8<kl%^Mt^1a^U)WrAp^78k+eP?2ocqBMeBzC5}I526)ieJVr zklzL^PnlpQVfvT^U4(=@3AzSYrDIIP)oHA$XfE^#YyV<-n8C{^GeZh=z7(PJrQn-` z#kWqy%cSzlIA(Nt{NUhCGPM+FD;r$Hr46ofh{Xoivc%%~jR-W`$XSXy)gEP$=={}} zCWJ8;=MT?CK011hxehVJDq+lr@pnEOf1hP}-0E7q)N~WYI3lLpQS6#>#I7l@su*YA zG|AZ)rk4C2QyzXX#$g1d##2wXt~gWC)hvx`<7$>bY}Azy%8m@(9-N`O{PpYS$A|x# zZXgszsN0dVZ@b9Zx81)Tu@K5G|Nhc0f6^WHcIY$q!RTG*OuWrCpLFS(k8D`K=F^*4 z^)@$P1iHa_c9v(fD1Pv4&QZA-LoKu$)Q@h^L`k&WkhcM>QbCdsN|3}S+%{WxD0*?w zM_O@1CWfVSvI&(s*~rfEPBuZrs&>{H5o4V>VoZ9`DRsx*uR9rtM41XlBN%(M2*w_b zU~I4u$yfwqkL6(OS*Kea+@YOPS1%G}Ou32!f3Ld9L()}58-i6Lx#otG2i&SavXR|N zOnNk>R-z&jB_)QlU6kaEv=}53XPnjrR*A#~DKT6)C5C&=FCGtQRF_g(&@|M;FnSLY znc5(0bp1cgWAdK5QQA>3$d1xx>kP6J<8NK@y*8BAiUm5~3QRpKu(6KbXN7GDu@LGS zL{zWg?CYC<yjuIwo`~Igp(-wuYtC6nZ=S=CUvo|-RtfcIY$E&Fne3#0_)6XHHEclP zO+r6N&>7B}!3@$&BZsCpLo5YYRZI&_oYaC7YK$*5tmcIhr$?h0b?1xpf*Ha~ewj$G zO2kH;PlL=hJ@KzU#(P1S$L2Sw-OycAuLY!o0`)qF?l@$8s!zKib;_v9el7|k3%l-) z&$uDev}tfdrfG-i+>p7|UfthZq8i1B6!>DTA&J&7A<-9Wt%)KQU#u<6M{U`B)OlRH zGHYM#I!G;#3gG6a3VAoFh#N;L{EZ^6i|PBcA}%|H#%aev5g(@=ugh6p&Ed|Il>4jP zsCwua22z5oOBh-Xjj#UGG;xFRm=fA9(oU%Di2o)eomQI0=^+2}ndlTCFMrcAx=e9S z$PedaUIoiZA{TKcdZB!~BI~C+d1VU|kKxQ6V$~GcPFryk2!S;dtQv%>AX#A*PF6T} z_Al-3JH0%D|0*>~U28Dfu?newKIB-}h6^?b!!rNb;!F<ZjM7HIQ5dDIt#cI4YcX}_ zH-+~6C65k9TGu^HLHC3)<Q@WU!A5GFne-bJmETxVnXWypt<s`A^&C`<R>I04(+vYm zH*_AJ%@C{wHX0qw5I-4*f8;9Y*QS>FvZd{6={^?9QRX2_bUsUAzqQ1`1r{C98XeG@ zJK)ZRZ|vvBbkNFgL)B1x7cHH$rIya)xf(5T9t2o5*0ph-j(xZAUE~iwRkrL_r_ST# zw=r5b^uXTE9%6525A5v(t5nh6*xT8g_jWoJo$FiNcdEgxsJJYKB6e>mf=fv#Lp8p{ zs@e?0csz^)OUt>mvb^}f?zt(U^ny@&38D0YP{2YceIS%RER=((kC(Qdcc7fX^NPN6 z+Xvb-vRP9-Zu^81i|6n86qWAzlz=pn*JRacT6<!GEDggB@rNa{e!?tAPyb=rg;=Fx zyusBsY_tm*Yr9g@%WaQbijl3PIMzYM#X6`s)<IyS7NSAeXK(zYb&w#;A6FyJFPT}t zC&f1u7_1**fPMsVP{kf;$`gy%dV)}nCz>3**1clc>voSzqXkTX=L2m!BguIpKOczT zE3kOJI1VN#Zi^Vc{6-l^n>b%fe}Koid#9U7vZCtYpS(|R!>c1U5`A*34h^8ZeUK(| zwSlidE|&D5PZp%Rpc|2CwEcf47t3mx^HvwZxP-r2X`PabCBOQ&@7Ld`MvAr=RFtLI zMu!w>BQoI82j1wAKy1`x%%pE%Ui*g4YZJTwSf_oY>qQhJ6d<J=zCbs8A-drUbVIPJ z8@@z0e97JLgV(`Q&8&LST1+f>6?4r1r@qnvCwWOXz^Nm#YNQ+pzvw{ni{`&u|L~gI z)sD0?55=H2DKSDZh~bJ6F<dc-;R36smwJfIsK=2RCng-YUM{p<O_Wlg@%GVnk@_HC zD9NS|ly|Uby#1iC_hW@!+dFz<bnsakQy^NyT8u*`jB&QIo-@uihFI07C*X{Z3AW_1 z4t?<Rt8slfnnp-g8TE&v_YD=Q<xt2Ftdi_7jQYcP)NkG=`nP4jS6pK1W&Ew{N&eO% z7oK$$VqH(P4wH&oljUI2_oW-x3HWHB;VO!9B9^j=V$W0}_Dq3Q)#!meQ$2Xk)ZF*A zhL#+^vXCs3Uh#u<c{TbD=$bf~X4%jxL56ORGGS;81{dl79a6}Bh!wd==Xm(yUmzOw z91k0!{AvDYEGPUK?`Tt)uFpjxmbo5XQ2l|^Zyt)d_U#%|ukVR9kEfmd`kwF}g2n6m z*!fC6c7b?)`MWQoL*uTk#q;7TD2uP{*3r^-YgsejZe593_4>Pz6?7M81zlO;#j2E~ z<yrb-l=eMBlOv5lZX;?@BQ!&ZRmEg!rb}5GYTtiN7*%)alw-8<04<B=PNkT_mT6L9 z%S<k&uw_qT)!gZWJA60@?$0?t4;|vti!!7rTC^@|2BT_$Mcn^5sz%nCcWQTH5w}yj zOSg!d-Dh?2Z@)fnCQAixqbx~VAd;j7;!H>=E$o7bRo%5EP6=qqrvz9n8SCcs=)PDy z8EILGFf%4%QlVlJ5%UXH2_?yPyp&{1hVRBxe|!66;d1g}7U=b{F#W{}(_bu1e_+v4 z8p9man9V`w3SDTj`{q+J9f|=}33+*3c)Iks@NBNe<HA|QssZ&`;jg4;g%_b3aZhRw zZ2Dly0DUpaxI9UNAb9LiptqT%2_jY%GX-}{;b_+7mdAdp+jGY6cp212%#GdCQd7Ei zONF-~t%|JJ;%i45tW7?5tC&WO{b1B5)bpg#e??a!uUM*!+)X5(|B@+>XH_{}p1l86 zH@)hn+kf!Cx^)k=ebv_d|F9XCHwVk@MV~NlJ<{Z@FWMBN6VaxkSz-(B$x_4buGzc! zmZ=tY8^O1?&1F~AZS!Da(ZcQ`5ce(z;`)Ab;o5@>b0{>gKnu-<o|=o4uGBViF*Sh2 z^E08V&SYIR;>L!E<0WQ2)i*6=^w@|AeWSw+ete@t2C=GXed912Q$D$Nt{>dw`>@M{ zv4*2{e0=jlUS2#lJKJT#f;5JUa<)q%7Iu5B-E>K7N8{Mavqj2OyA*ttJ_5ap;m+_u zXp=_%kODUpROk%#Hg$7UHij!n8`H(|S=rJ3-`b+wk_-y@FT28Z%@P006O6nm{D0EM zsU&V5`UdIep_TkRXiqp%F^_c7Am2_1>{5OIg#EfFFaj$p!hz882MR5JAhdk2Xi$To z<qu*lfA`pqntq#OX=e;|X*{lsRdY365X~*?Npm&LiB%110q$6!Aumq5>hq`6nQ}Q( zh`_Lzs?cMq3d2xU<TM7WCdX<xc(0m<cIMujw|eAn&p*DAi$N)hS0Due*C`?-I|Wk$ zST&oZ+D^o#28tdzD!H{zo0UULDfNWE3JdI2s08(~RZwohs>-ZGgzP$wR)4no`N9)d zFS_VOqv#FCpne|1b`dJ(m_1^(>|<1-Ie{H6Cpfq5_=QDm?>EkTr7uS5vTu-^?Twji z4u6BZa9~w2@A2z<&K7qeGcI~nX6Z-N-(W`)TM~o?MBU#C-0%sz?LV;s#%trz?Bcau zbW?ur-oRge8}iN_FH~R*Yhed_sGY1Gw}4F=ESg*^XlJeLXtPI~hApbTT7Gzq{CT*k zI63jSbHqDUI^vzqVm*QgD6r}yf9E|z`p%nzWEL*E*6QNJdJ_zimDOzlIe6n=Ay53% zdPjSAv@oN;QH6Zl_$FJJ(ch>-l^aw}urQ;)QH82@tUAQPjQ&Oy%8bs${q#4gP*$5P z+)sa_3e9OS2lvz8s6ul)&c*%o7c1<#bBerK@XeBB`9+NS&MIWeS|u`NtwN?Ou&SM{ zg}%6!b79uk_VfC7R&TN&6p-g5n`r5gjjW(PvI!v;@_c3!COxwu^}fP`wEhD-v>_){ zf#-9rqY!8%FZ6Q}!U`78&%idN8P?>ldG}<wdz#JYVy2!yi++DrBgg!oh28=d&!5Ab zbdKkwA1`<9Q>RDOC_IlL#7KF&Y920K#oi(6Cs#2gf>p}fHS-kd8apN@cMh25wa1;p z*wnqYDcm$oAqgs`sZB7kN}A2#jcsm2t?Syti|J8^6Hn-iQ3kXw)>%>)>l`ko3r@QQ ztBOg$X}1Y{+U@wU3oBN>|3UA4QbwYIRyg*;syCN15J$3rRgH9z)kJBK6^%r(;e*FE z`0-gISv1r_lp*8{e932oFZm2=4_5X4bMPgfV_)*H=D~HYSYFVem;zsTm*os;m*rPn zon4k$#NrF>fo*9I+m@#8TeJ4#Pd^uut6|vV20K=g20K>grw2QhAXcqrhd8E5LmbJy zxNQ2P{h>Q24c1Fmd6^Md!Hy6cO-E=-5vwFS3d8Cs9#+37apteUx@Oc|@SRZ^MY3a@ zGNmyHHl)uy2D|&gD#_+JO_g$-@=%$;v9_IWmfrEW;42M7>i%Ik@R>>(RydGY^-9B$ zzJEBU@1Jwpam<FUjrO6G0)pLxX1_-xM{w@JmSV6F>^?O8ecbfR+pZaKe1lZN;CaP# zc*MIS2CxLK#}V&XV)6Vj@AlF$Z(7=}eB86)!Ex`~89cAd-l^Dyo+@^sry|q_ES?{N z5St+!Vl${^JJ<Bei$tG+ES1$)Z$uFH#wHY!LT{@8VwEiWp$+%5qELm9N+aDie&~1G zR4qm$uf}MRS7WpdJe^8*yD``uHimbH?e4XsWB-ef^*&Z*GwWJxH(D!BgIa5mPOSPC z8(|{f$R_d@=MPM}6g}uW)Iw+?$~?J8GZEsS&M&hE`^~_rzOrAFC++7`XFQ%(@M%1> zyOqJqD4*mK&J(|cbKyuRmmETfg-9>se7MVeK3w}6H**5UcP5dd8isx4G{P-UTgqeU zY0FB)s+aiz%kv+2d46q0v&8#@XVS8`K*O@MkHxMcIqJyLzB;j}g%tuQtn6t_ZtzXo z*zNY6=Ie!_jADnOOC1&_?ZcV|#42GN)gbq!h8DzG9qTu%)P90FiV<UKg3h;j0!{h^ zPVppJoIsXJu&T?RgyMFR4N!Hz+>tf;n-1;uwNcy#M-g>)6upv)IqHNwn@&?zwK)#c z-f=eV-LKbmOT|t;w0MzwzGB*|Zj&rkw~^yPtK(c(u&T9&VJ~+W@8$ks+jjp_<L#%S z6rE_54{Yt5B3UCIf@))pJbhpxT3g>7$<~*Qa^Gh;ei_qhuZO|&N}r2!jF#dY<pvVx z7(y(bZ|fK;wRH@~^K*ums@&W>HN@a~<-Z?+ppOU<^bvu^1{TjpqJc$n13Udts(kpx z<4OghrG|OJqv0tVOon-uB^Il$OkBzIr2lxcV>b?u|F!*fygOPaDS}3M1)%nrNOfX# zi&_&D#gMa8ah#e8Mw7QKozR}ZKJOFS?{zNW-|v1uXX01g*61sQ#9+K2L|qJhrn>)* zxT^P=auzPO*z@O9ul?|f$%*tZU6ogTMp>+B^TofhAz*E#%7gvC=``&OS7~Q<ni6$Y zoTh(N4mh#y>dY!=G<X-oQDuc?n6v^T3pLplmchiTQDwDdinQ92Tq-5k4EHGAa&uLb zBD%9ODqKNly&_gwSFpeVtGe@#SY`dltE`%J%}zbhSbdZ$V`PHNM<iLkh$PELBpFzx zu$g1PHs=9*eB(ZuK1KejE*E2@{`P>D)x%mgi1x6?(W%yxRii>LXj;8k)B5nBZPK$F zb_OPmuDUVm23!v}U=JhN+(3F6u&S7wP&{t3`=Q5Mt6w^9^c$l{SWzn)!7I>6B=u;7 z1H-{82{*CF(T4V9)vy{c#yz->RXR%14KB*y&;ZuQ1|s7?1LXJvi_YE9w!hTSmd5R0 zzAje3$bqMu@Vxj!O0a1=zs6EKzc_xGc7E7@=NG5?LLK}nNge#EqnNiP{VNW2oaAgm zwCT>Rq;#ZPB$=dRQz%#^lMx7f8Nq26mz}+Mf2e&LxqAz|%_XcVE@48aaxNhh3M}5{ zGA8!RJh5Mo?(uu*z2?*8Y8a|&Td{w5D|P|W(_1YPh*dJ(iFUG++ey(sj@xwkux64{ zilQFOvdEEUS;);~7IqARRi(^BH1Ir*26nG|c1eu`yZ+RRL}?~9(M)QJW>OQ)1gsKC z1e!?%H<PRJ)wfsPxQBEdbVO>jik5K)E3!Kp*?@Kjodv8a<{ox=+~ZvyhsRb3yST8P zNy#q6nNJHnWINtMB(?+#$u31g%cY#qa`rc0^e*>if#K!|rJXH6(BT3ci%7Cv;2J_K zo?irS%_0sweEqWZ-jX{aD(YWD83`U?Tkj(nX6W%pnBc*x*LVVT>WPNdC;smrwklNV z+1DsWG*?BXuVB|es$eI#j|zw#1FM>AMeNwBXjcWrL=Ne{b!mWo9*QZ@&el11mex7T z(pZPw-eB=I8xUo%!I{Rj?S0&vKC(GUQ@W^zqNcon{pyAAlfA%K1gom?5+mPBR#QIq zvGtxXFV{xQMN}1<AvvZ*H@RU}`fN;z?miRye07r$m1#6xelp-+jw!jKy#n9u7421B zOi7KLHXBZi-n+t-xavALM<!Ky!Cluml30kVJ_K3cIT7O8bHe-mnoZT|d3iEXI#f@~ z$x=@&2<hARgeM8C>QMclqV{7I)&I@$eD`XFs0l*oM$7hb=Aqd5CTk+&kP;iL^4Cr@ z?<-B@O>imAejHf*MMQ-D+bJ#aEY^Hy#b)!fXq8~qw>yu`=I42{d3-<1zy2Eal6EVr zTjFbc_Sa%@`5KE$u&S8%_z%73#pQx}mhbL$PqvmtV>Bn(A%%jSncOez%wmaE{lXC; zu#Ox8+o7@VzL8r4=p-V;uP%o|>TPbHYDq@-{e4UN2U|zv5X$P>>S#&TwKa4tsog=p zq2CA0?rP$78`uuP43)u6p@D4@vFdeWZKq4IwlwSAUpD@6uMV$hx`FU9CMpeTo@Jsm z&r&va%(HAmY^0cLq{WDFS!{{9Pg(*^W{D+Pr0mB1F|~d5*-0j<<>?nKdHTtNn<wTw zu&P>K*aYmwn}BbW-Mo9}X`8ktikXD%LzBezp-I?21XdL@1@4e39N*xb*7qCD8!s`7 z8MTR>R-L7tu;);J*@@^iu&S6nR+XeZRx~Gj-+yI0YE0qDa&3&XCP&L5lB1<8Ye&l@ zVwKk9f^O%+-R|YBeuol%+f)z56c{U8W5M29WQ}NT6-X>Pe;cc0sg2bTRAWv_$6s$d zC(^en@O(?l_EJm48PV&sv}{1EdmcJu8`dGqj!nxs*ebD_spq#K-^CVtS-04NquapZ z`K?%)ZsnC}@cti~_;=d&jVuPkwlWH{`6w})kHTyYRt-Km&<S!_C%E@T|9i8K)T@nB z<QAuBYnC_y+7cQYy@REFUt*&chlL%|Ls@frs7CL0S$x%dWCytv`Xq|Kc7*vDX@vPi zE@lMWZ(!9BmW?4Sn}@I|j`_dbSRM0N)!S)|*Y|Z(I}LR+fi4cQUvNOz;DChSfMkQs z<ouP?s~Qdk)eS8s9IO9jRb%X${oh#C1mW;F-p^hdi<#2qw6&0^thp{?HnK_S2M=2o zrMP&!j8WJ6fJ2@?h(n$~xW*Ezx>mmHWGUa3Hu$~1m^ZCUo<Hpq6obDqhs;CH(RseI zePJF}_F&cEzrZ(BTHred#RR1feEz}a(smS6plgJ|QX6K~k=sKUcFBW9(+)=h@o+0r zLwskJG;ch*w8@CKyV#k3*GdjFxr=TJ7SBIGhkd}i^PhQ_oz`i6Gg4zz(zugyhm8_< z67Hztu<lL1M-mu5JIo`dmDNPlTr?`()-csFT6I;wj8^=oCfgfS7XA5Sv;;PeWc!!R ztzZHFxwWAv`C}<@$H8b}!Mubfs-QcedWOx6;3%_9n@s%8*Z8*eY=1f3z^<i4G~Gd3 z`a2>m{T&<t239qgdkFo%=ez_`|KXP_XWEUqE%s>fT0nTBPI-=zPI=11$0^St#Hvx~ ztY@Bd)|2+UKR8)<$heTFd?*hIU-gMpHW{{KsBQ`R=L5(81s_rwH7er!RWyga2!FLw z6=4j~<k{qfMww;VWZ`fAuSX)gy*ph~cu4RG6bp7E<YjDRAI3el5h97fs_CRDe5_5` z#~S|Ily`QgzNZkz0zH3$OFL<Si@Z5*flEDN(Q_BMU^(SN%l1E>?yvdcW+Vj;i2+Dy zPZMEmpNO2sG#^cL>rAX_PgC5+OH<s)-1_0m13tf<pV>rTj4~fxFFaAYju;{;=6d0D zVpTCW5nXh%Fhyrf?f%!tyX6B8>5EZTWnKta^AZ7TUI<tNtBUcq4wbyE$yOLLwd}Pu z&we|rA5(OT8`EQo?&?1sQ)mwRUmR3S9ANmLM->y>8A8znLwQ&ss-als7Pqn+c5F~* zVVN^B2+VLmvI|7g&^MdmkVLGS!txMNlgAM?>t~ePd1_d%oe(xn>&8n&$lEX+rr-_# zO62r7wQ^w$m3NTPgj0skIr;a-P{R`bH$@%`LC2a?%nDHxMdaU^4IH-EzCHC;R2zL> z@dNZjc8Y!?J4HVvQw1CKd5x3|6*8GrNNErfBMsujQs17u-K^r%>2rnb4aQ(ylg0=5 zoc^XWeE;)dnA`sU=Rbrp5;ueVo3Z{z6sPEK$<9xItugt0Pkf02<K`CUdeRmcY^e2b zLB=_-7&o`UaI=jKH@6QC3#@1Lkz!j4JU;{3xMzrL+%vGT5iFk1!;qTC{>wgBdc_>J zsX__;G42|zsjkDqcwJZ+uUm8>Rw?ke&=hX*Y9g!Q@qxeHEw>Q0P^Q-cIXev-z$fl9 zu~b*?{AU&)Ie+Id?J?-e$F$$+^yF)|D^6Ro`g>uVHqw(r5Op2mDlb7pT(N=5RlNkQ z3_ZCr>&fM;hr6w;H@$%@E~Bw(lUJIw30V>7Yi+`ALa=IL*n*4*TR0=aA9G#04zU>c zT=W-=RU$9Bezo(-orQ|6;*&cIl{-GOv#_4F9(ESi)7F>WNVI+575^xAd3M>I4)gDR zL7BUB{fkFay;n)?;Zpj$&b4INjsJh)T~hjSH}u|atWgmqDgC%?v+wRcFFU{$4Ff_m zvgN&p_WIsap2XgJCK0P_6CXV%OCLRH6*8{%`xQ@1cUJn5@!{qeM1u_ijk#wS-=UA{ z{QD4N-SOw>_Xf^CoLK!&-Fa9!@G6En{r~*<bA%lm7N`m<mRG^n0b0pAARO}<k)3k< z`MRp5cRY+JW-=hI3xeUg*vZ;w7i?Ali&3x}0^+)HKwQOi`=1+jA9PJW3M$Lr1$J$u z1$OeXbpaj+t46_v$cna*v!b0j@WA;OU(IzCQ(!P22gmj};n*Gr$2M40V=|I3Pv#`d ziE(cm%`1{V%S1I^z!C7mPTtx1!Y-0nRgIT++0sk9@n}TPn`}SbdBsOZxh)#b?lZ6r zXolDZGy~}o!A7&Y8Ip)i#6R*(RQ;}8<?yZ#w#cQ>P^aj?L9S6!kgFVr5d{ATSf!Q) zyY`fVU9p`yfA@)B-B!K-rj`6oM#ZGsL`ta$!lDr~)uueLYQ!9Zu&f~*R92(Y(gvkd z&w3Ypr{aY>O2rGyQ9i{BHziiRQ>ns}rBa2ddrhmn`uX6g4@_=P7-t)Xtwd2=n{l>5 z#Nq>uhjVc}I~Nx$Ji963)`D8{%RnTGnYOe=A`&slX4=vgZHSGQs~Ra7Sv7(wDU(zV zdQ&;po8~kt^=Oq>^HuU&8O=%+aE4<A_jImK1@}Z^m5eL7SCJ~YQ^cKhg~h+bjk_^d zsg|P7)v~NE)v}a#JJhl)ORTC^H0+YmWS5lc!g^ent;dOuuZ~Kd3mvIr>&JE+6A7Ic zW029-7WH+bmGnOt`;~xlS(!%KE{p=Ci~L7j+OUBC4OLnh`TJqK?`Mv^H~6cSlJz5h z?+O8Dhpjq-S{LZ_ZU{1RLxz27;ckdn28%Z34s)(Mn{#W=?__)Ee36}|p5NpZ13e;^ zpWlSM1z_>~X5?Jj%%{bc_`Pehxs$q0p^rt29{n_3)NrmaxTIg}{Dbdfyj|Y-Ah>^N zv=ZaH@`Z5*-2cWG(ruSd!DmS^FOLsIG+0^eY)<Q2;m;oXZw>B0s8^5v-4g?lC=^{c zx{$Xw$2@Oy!6^kUvb}qoOBdpek^}94+v&0Z|CXVL%{lIV?`>s^rKUd8D(iOADr<Ry zS%pYnu=q%8VF_5vmVoy)Iv<RPZ7VWm7!Dl8EXPR2EM+@aF?cb+Mm-eStI<PCvF9N5 zMz7+}gUiy+%mPhqB#fXVvE`qd+DNM)Vo{4MZ28aPE&p$3kGk0PkgFIcjFglS$cQvT zWJDT)j7VUk`9&jT!CIfi8IeZgzR{c!srQA>vjbj@k3xln)kc{&?X>BVomQ5r9gc4X zs|I&RZJy+)CHvj1=5<;&FO*Kj6nL)@NC!GXqyrs+{XJmuUL)aD7|DBj%76dY;R_FJ z$@?u9F^bja9^4`KEM$M|JtRy98@(4i^ayZx!~qTij?6t%Joxlo6ayX3XfzH-C}_9{ z1r2wLC032bwcI94wcKcuiRtuvM%0}WSM{|~0vvK7!(8(e{z$pz9f?)7nT0!Mu}@@d zyBc|}E!sXX5Q-Azwg*vedqkAm9z?l;g;4e)%55)4xxM|ewNvu0O55~rqs-q^tkR?@ zR`OD1id9cy)!R&i(`_0%-8PT)OzsmKxLE%-N--f$p;8D=38N+#;#7)Q^){6eLtL3p z2>UjqQ~S8!j#c!<D4!_TJO_f1V^DIDLK>_pW;TQ}n}xEnm3d~ZhSmGZ#h@Q4#>xxW zY<mH*_Eeb**1^Q8esmcdNiXw8(yle;Zm{d*v`$|c<qOR>?~QC=$z05Q^Y+B5$}C1@ z7IS4TPl`zVX3k9Up-~xS+I@#E_YSAkQDxp);dE-NR8?i(TV+V^t!T&1M3>evmuCzn zpNV?q@F!xy{uHrbe<BtPtXes|L1TKu!TSjh{+Qi*Oh?*Ar0$Bgwv{AXB<-Qv*xCjX z8+ApEWRDC2_O@|Q0_@?awzutzdZi?^Sl_PF`9Dx#flhf37NUE|`$Q$)vj`>@?e774 z(*y2JTdEJeR(N%dHgbgwr85v-oPkzx{PaNNOa`l@Gsp_NqpT<gLb*3#kN2*KYhEB$ zbFfcyX|RtxwGQ@)CKj=pLy^6Fs1NOlvOIWl!^lD#N9skZwB3d7QPM(pS%qEb9zv`V z?Nax?(o%QmYx&c6_TLf}e&!_vp<58A$0v7B={GpFdzyR-t9rFg5;MAo7G~{&1L_#K zCFyIcy^`{p3{yBR{<lRL?cStyR29T%iV7Q4H7KYZop@U3Ume7(E>E{KOHR}!J{{q& zl}7l(pn$(xDa(JN?j+{@lim#&ebT{H8;U>>c7zDRjzADLShS%?=thyO8-1_}2=0<O z%A~$N7@d8v*jO_d8*9Mg`61RR(hzI%C%RPf@6qt}=oGmP8o8%eV$@kFMxB)yb-=2Q zzRtYAw9cHI6U7eJoHDUqp<KBg8BGkuF$x!V=)!HexI-+lYA7v<Fo=>I2GRX&k%v`R z=UbYR#sQo5(g8&JQ;#};z(BBgn}Y}jJjlU-ffY98Enolfn5pOA!MplScvs)Sy9yT1 zOIFn-$tn`B5x+k*HL+Q_KC(3EHI!j5(YdLVh`2`j&nF`232Zb(m`O?S*(I^h&a?8@ zt*aI)b4D%(r6`M_TF_-`30<ZZbQ!R!W5-}eObqXcajG)p_f>uS)X`T)Q5_yRr{i=D zS#@~i+?!ZcnWxTq(o<(r9gc+Vad!E_X%d<`X}<+*j)qqMf;Xr`u~~usyEtsw!gxe` z1a|c!+M~Knc?}xnZ3$f8-oW*wywC_uUu?*cr~MJw&;nMyP!{qRWN9ckKEAcf&y)8p zY%BUMsqIEl5QZ;Aqml6qde#2(-st~3q91gceIWGtKz3sgl~gqQUpH^DaoJ=`B8Mmp z@?i{09gxzU6Jk`Z6eLd_!Dy&_7w5z<yg?+z$l}F7hNrKT;Ymp`GCXaFR7o*1k<dQV zvw^!={?ihjx+N5{-X%9+Bg^@2j2ye6ol<Ywjrkj_8e8^5iP+Cd#G$$ai`N)nPBtTY z2g6Qz0?}|M%w*m5gjoi$YHT@WHd{JnMjlJ&m*vV18dG+<zBWqhJ7V5SIs#ROYI6j; z<H4%he24me$0Oa^g*J;T4Y^HfT7gNw0y4i;5GS=&z#-9KF~o%6n7$DCn7)b!_Fvij zzN5kOiqe{G)=tV6xlOap>Jf|Q#~}a17|#Fj;zUSy|6L_arg=PrRlpf2&Ga5;@E&0C z{11@z54;k1HGf={s$WF@LBj#RK|GA%J-Vj$?4E*d1cv#-IKLgeruwF!Ar<2X^i2#7 zpo>U%)IYI%8Ul+F6H|f%26gM&x4XeCPRf>g7MK5nl?U~r<Z!~SA-nkaZc+R{wzG0V z2Dur_=>p2aHiF9h%K}I#5V<4dYVdpg>q6v)Q6`9FL%IYXyCF+OHqv&33ee3TiT&_b zEA{Z7A(Vk%tDCoN@<UOII73S}>M&=Zai75?EPvWA#42s<JQUsYtmu~hzKPG4(aT5a zTe_muO>qyCra-ZyVy3v4C04ccTqt$9tkeyyJurOi^phec(MUBo^Z&5--f>kQ&D*db z9ZsPm)gHu-ifFJm><tSRR76FCh>C#Nu?9;NOB9VQ8e7z;G1h48#u|G!u|~xfd&$as z&3^ZM&pFG{nDRcq-}CuAe;jk&_c^=F&dkov&d$yvYwc)$B~##N{&d0;H77yMNlwky zOOJ2n*f#h{p$4;8-2(*Jgt7pfrV=p$Hbn`WEr!;tAR>YVc|@=XB7#MDL@?y#pwjKU zmx`#X8CmDRq;rBv=kUZ1uo+p_>@vu@Ok}Yu*rH$ITXeflZ8jFDmr_n4knD@fuKSLW z?7pLtV16I_17K-cdgxe&J#?f5^GVu27rtnoy4Zs7uHmm<%g?i`@ZVU%W^`eTfM49= z?5gFS_4MA7Ham>MQ_WOoP}12^aX~ucaWh~^cwHPbSQkf%aL@Rxd(`*scNiWy!x|_* zY9$|0$v=@-ev_rta29Rx^h|l$>b(9ul4{QDFBmRi#rk(xy}aQ}4~#31-P{CsZj-p@ zu?hD)fQ8-Kh8yJD94KG+=}7xVw;EiCF-l2If0^XgmQBJ-dZb5_5OfEYr1S*}M18>v zL`5&wch7Zby-n$c%i3_UAC;;0V2ez>?6EIS*i0KyMFIDL_VN2bMRM9@4BzpJ(y53o z+(MF@foB;A!-UG*m4EWLgTRKr!;K}q-9SNL{Gb0U2yE8De-UC-gTT@7Kce~ZAE8ca z5crF9f2RSJ)|e(hq~mp?L5XqPGAf%y)AMh`fTdrF^E-ZcXAI8b$9Z;&14P%#UXcq% zS!vAf=GFRp=AExJ!leJh;y}{g({!)+vFC~k70Rk-m{7(#EX+mEm<wgX60*_^70b)Z z!<A-^u(ms)D2|!se2#tI^Zbe<^*sMj!jgr00}tX2_aGV^AK%$3`H`i}`9iqeS4iCZ zErff&z>+^!1owW6@O!@=XWD3UqYjo-W+Itg^+L@jxcB>sxcB=B?)?Hw6S{<TD^|j~ zJ?z4RonQE*Ul>CE5Y}uOlxn@pplCoDjdHY8MiWd}vX`MKEfA^+M>kt`zjms7<=RVQ zH>%m4fk4a*yY}2L%&@CXSnB3WB-?&zN9Rm|>j!;ili0H;y2)eZUV!Eo;`-wYl)V8K zR_-+}>%Zog_17M7nRNZ)JBye7-EC?zcN--j<8D)iuxRgzkdh}4Da~0|d#_tosh^BY zRk`t<dpP^fUE#)e?!km5rhe~Uk$vw@!)V_B@SaP<KiO+(7{%>c;HgL@tW+GaDPTcH zFtU_`d6sg&7H@vIzqG1JNL1ZNZ}1wxHh3v(;RY|<%JWK-xcP(EEcSyJx$JZ9j;&@p z(JR^#838uU;4mnQVSr5pVL?U^a&Cfn&dvP>HZOPI^DO<I5>m}QyRzn<J-J|;dqxr# z0kW2!6Ie@6N|!A5P1#!w+V87tWT>haxz<rE7gvU8!N`Ti0!s|F%0HZ0<)^f7uL%)T zH=!&Gx`C-8Wmmh|g~ZKW?&-XnUG8y&r8%<~a@niM#i`_%O=fBGE7YJD^-4l>u%o$P zM{_6&u(W!$hA-8cKY8<_@r$mPS5>0x8JIGry_C0!$7@T8oR;!79SBRkR6;M6crPV8 z?tk#O@x7~RFKUpZyv<0o94C4iKv?P}484T$UXr#2_4&Spt&h?RF-Be1)A6Qkx_DDI z9na?gOZ**Xg<GWjP1(IS-QJcP(#c{N?NhMkQ^A@~p((&ZQ>sBzs&P#jzCQAPox>+` zjby0L(WGPRm2RbMRnxIK1I|OnRFFZJlpZbZ*z~JI=Ne-68=V5<yE~F!VCg4je!+($ z6mU4qj~>nUE`Rgrk*`W-o1cH|7LaGctsk~P;&O%~d;v%96%cX}@d@j44&{(w?eE}E zY1Y#&+|PY9W2guhnEB!Tkk8T2Nr|TS!<9~8Ne2D#pg?~ovg8r^>N9!;rCk6G<U*)! ztub*-_RZv<e8BTH+@kq_=bNlghUc5CA7t=+Tc-Z}dgAL27K4)Yu>GlrqXM!a^=yh0 z7P{F0y4is1=Aym(%gsM(W3nSqjcGBY%M{Zn`;%f=?SLg?`UzIJPxuPAb3wn$`xkZi z(jXj6HT630V8@DVFtR&{jKMhn02XAVBeNr&XLh`tU$@VfkGC^R?f1GxvAwuVL+$tC zYA~>9zaQ6u_w(z(#R^=w<6Uuv=>f4C_=s_7#bR8PB{s&TCSlRO3r_30@Y6c|(vH(6 z{}B6J$kpIb=Sd5!YI3G;@F9(HO*QlHzo^Hq#5p7Nk&UdaBJ~ZG8;@4Z6^VkbK24y~ z?)%H#vmV==ijw4U2ZrK6e5idK=h;wH#|0K+9){@rFdm)nyCj))`YB{Tns>ov8+gje z$%xY=QSrjUCgU{!l7~LjpiD}6vyhDZoSf2S90g)}28&3b8ay%1<kINnFSEAEhL~U4 zF$7Q)>!Rj0lt6&zWBhKj&<W2s(CFDFO(<O3O+Z^U?S*UmyiMxXCa>4k1f#|JYM3L} zCtc@m?e(G8rP$!DS+~f^Xjo|5-4+pbTcWA58mjS$dN#P{j7%kEa@Hm+tz(f`$0GSU z_FY)ZC8fXW^HAx<Y=Q5HlY@@p<e(!?4uB=&6@zLBF*=HEv!X>N&s=pi$CAQ0dPFft z4`q@$dekN?6h?zcj>e-L+E;Su@nwT8Z-!VPV_iTRTNj`lX|D^2CoGY%As~fq2pEcP zmbuTZ?ildU$%G7bu2#jHI92_W^WUm|?FkDqBK#(>2tV?g4nKcfGV`<O2`24TTXWdE zD?9A1cwL8)jRq{*AN59z%bPBcZe3c_Yj2<Dk1Vw><6E7T@m1D>GQOn<i}n?K!&wDi zI>+gl+U9P9r4NRqz3guF#wkN@YsLTUjjDIRlDn0F8Vd=$>fL8o+HDzQ9kSLE84C)w zVhai?CTl^#nuG-ziwY*QMFrDAM&o5CT0Z#VmbXcJm5qY}I<Y|kN>bjSfJTHx`?P?n zEG>Xy9-R(-SL3+L!((W#sHW;-HOGtA&7pjxn$2z66E;&#YZirXqewMb8-&i<@X%TH z-0rVZ?SAd0^k=4|{k@V{f2843hyA^}5|*?h*{c*w=1<e6cB@#z|NCYpIeF?P;|-pF zf1_)`yLqFlN?79VJKTGF$De?A`^+Kj`L*lSOt_;eNjbN=$TC;by2`nQ5*FME#WEA> z))m~DKY7bf9Vev7K^R_1$mC|?`!2wn{mw#Gz3JLPk#RNX_1;nnO8KGL`q{VuKU+V? zupGo<If(UXgympOlatG5<V3fyG-7|dDa_w)2IrhVQXhcDhy#%(5okyH)Ws+3-KE2~ zL<|fIxN54RZCbHt=mCi@8fgc>X8K^oI>D{)#GjkGW8GqGCnuNtph8RzReTpAzKcS9 z7a=}iNqko!zN=h(mphMZ>3RB_3`>LQ4wdVUT?moW-6oi@7)%eiH9fdn)2Q#p;Qjj# zl~u@~jl02QvoIWQhlxkp!th8NuoR65cg|wr&a=Uj88w=Z9B(zkk(NkWV<}vepq^wD zH(ey9uY(6ESE2vns6t6Ni0gtGXqs;@=wsF|L!3rg{%{HcB31H&`Bf++`2EwK43VRO zy@@vAX`jMl-lz0oSRo0WRiE|lf4RNy(yk-*U^jkk=3Q^Ks>-&Cvg2E=LI_K9e+Npu z?%*X}r+zi4@RZ`-l=C8)r0zBukn;o~^JK!33dTbP<GBhR>5!7^cs>6YitNpZIqg;* zFMcZK{j^&d!jcM}cZ+A|dFJ%jb7Jiry40d>^0-$g?b{;5NeK#{w69B8sNgA76+OkP ziZ<ESpupJZA++Pj)4rZZTUO6QX<yHyE@9EWk%vEP<Uv*YPx{>-5d9+av8DFI5bYTz zqCLY9?Ex0;M<CiWf=7G)T-r0d?Wia2XfMko%PNdzSw(PeW?2;{EXiaRWHO7(<kz^= zaajxXWRLR<W4uo%Hr_{BX2v5=7Fdw+Ir3va=lQV>8$F-yTr18bIHB&rHwKNt`*}+4 z<;I|7!jd$$1WjUFf+(x+SVozhc27qTH(*yVpVif>ugw@-lT&)>i~CZ*QUdw_n1un{ zER^Zubh**WuZk$WkZQylN^Q9#B<OCfEH3WWRS8SPc!KGkJS;dZ<zD5~Q4PDO#Hgk+ z6}Bl=*rrruW&umYq=T4rPE5k}r~xiZURktpOY?^#B}Uo0EkywuV8PjC2$e45q0%b% zqV7gqYBAK3WRj83k}UFBl5qe6EZV0!gtJr!@?$m)JbCGl66M!fYG1>t53Av%_+d40 zg9BK!uZw3T>hfnLdPgsQ`nXbAacjeD!C#NF=Jn#NdA(I6VM)O@T4l10R&>$fL7hee z507m%PhqB6;P{cvRQAYb7T429i2DFbrurGmY&^4};;h~+YHX-_s;wKkfx4Sn{I&U8 zv9-wMqXlCvitz$V8`%xW2iU;#0X7x<qQqRUE>A2mB^6<(R2wBzG8Iu#V8N8Z5b9tq z)CRk@1YWc|CnCnCt7v_Pa;!eipNNY34uuIzCaeLTTWr9eTMTsVx3=uGcheP~n6b8* zTNrDGmpQ4MW^Tm^OM2SEttV^YMmdDr8x5Rry~ECl#%|Qb*bUR)&8jx<#?7h}VW}H0 zm;f(s0=m@Dts6beuCK8hHNH65s|Ct5D!Z7$UNs3z-3<3?hK!9UQ1i|A-C4)qFH=UM zGKJMyGYb2lQ8tP>9EFF(fTdY81`Hm<8C<SH+xYLE=xGxp91NA1C9WOV5@e7QYnHe+ zA}kTJ%ykl5=1TTt(I;y*B(=9k>Ofwzb`%rms3`e*6eowkLe9sK40ensgL$VdtFX&+ z>2K;_)L`i-EJUNA9Yn<_+}i|}1~V3e8OsOL*6sAHmaiMr17LZK>qJBqCn8Kr{Y<o} zO;}Jd8SN+Y_S>G{w4dSKl(r&5=~ZT|g#}qFEXdmY!GtBHUyrnt^*rt5a)HOzQKi$; zEs>Gq9fP+%lt@C3cN4;bj0fI{?148W=<UqiAFg>YHO-{Gx)nKwrS6zm>W*Ql0~YOn z!T<Y<M=aX!d-dk_+#8iyo-EVFURBv*s1@;Gu~!+wB8a}ks}oz|MU5MtbauWHw@hT! z(_HChu;~Y_Lr~VW9B+Qm+Ly3oh7O^$)*)UOul&2;f4Q0bOAm}ec3h9TRA)!=f-O;T z)TInzNw0o!L8WS!Bv6ylrc#$>?VE`sV6&OKTi28A)+yVn-KcN|EK##hH=FI#%||zd zXKUVWJki=T^HSyLVuY&~qkb1>id86K!O<m%CNJTMJQMs@>^-)knxlzC)a}m+gal8B z?BNqwqku*GQ&8Je{HUix{U%{AeR8h7=WwH}(>T<_Q!HUwr$oX+F6ErESUD&1or^3D zKk`FIKjF-gK~{Bh8t#=%!{IxPV46cw!jf)gISgl64s^KDV|!9s?;FKdVI+!As7|y~ zUU0R%l!<l<yGmfmpq@pElC!)-$-*Xg=64x-Kx}Tz#FB|Z=$ZD)<}}m3D`812lk79u zBzsz``b}G1KlS3_0HczqV|s<kYOk!6$ipkE7K9}wd5d4XwW7r6Y3a^Czg-?WR~eHT zYYyNH;Q(ekvE~4T11z!T5N7`&KKmC%cefd_{C*7!)ZBzAyeUlKO_)MpiJISG3V-LO z(4)v#wf_9EiHK1VZ`4&Hx<ELKE}*y}(FKADOT6h^peO5GfEJsXwX&TD=DgUXP-C`^ z=SM}p{I;|Cpz_;h5SG?)2b2eM;N`*MeAhaUSaNRA`>qSsb<bjT-Ic!Tx~CBq*M%Cm z&tnbT7lV{nQDt|$UD5dxNXcVX2cSgQ09$2|7+@PoSZIGTF8U<%i$2%u<gCd4ES<Ck zw!ln28dR#)h#J@$+j4}>hGNb17>b^T!rXDA&z;}sTU0Hgc~);)hmA)!{7F}n`V8iI zaoB89T-oeL7UBq|r#yzfg8%B>*Dd-jNDteh-)gv>pL$|$@RjC{zk)uoRZ!J>F76P` z)howsbM;AtB@LLb&t~)WR81)M(=r{}=4)he8PV8w0<V;<g2uKHVZnBtZ8FpGoa9>5 zOMEx0zVrJ|R4c>KRCZG4du3b;1{Ovq97ZRc8=W(+9x|IZueZNXd$zmIX4_rob4}dt zI-Ic3o}I3X*-qEx7>4`h@yQh{pC%VjNMD@~M{z=b)J`ehchoMFu$lC&*m1isd?L`z z<j|N4t2az&MnZ=)=_ph+!7W_tvKE+@G|OAKh7uOsXoZQ}%9SEen$)R3?<slZyiq7> z2xFPH30tOZ#hWj~4Ip4iC@ZwtY=xGD@?D>#>+f2Yu~?yEob5O^4iz(rjByYHupnas z{?`O9l%;D@*ZLOy@`{lgs&07O#^8xI#WnD@ZAMt)hA-xVFQ3+d?9{7!wU;(lMnh9d z9Zj%vJPSrphNuWef-A6O@<N;^u@Gl++uWz0v|rfaq44s_R;k_miC6sobW7*m{E2!J zz!Fn(-DaWQ8inN_xXe#(_2Sbz%AnAT>WUU|h+#z>lra@?XhB%=-ikR)WyKumK(@#y z4U@9-*<M92c_duOHVStMJ8)_W+14g3SX%^UrU*AP#k?By|2C*`ijgPkrK~;qCm>OH z3U9s#$$h{QPY%L+JIKAa(}(KkRDJf!q7&KNvpO;l6xXG>XDPyhj3`e$N8?HP7zw3D z5Bh4`)C)#3RG!{-8p-ZrttZjk#dZ)_A|nT0K#miM=97iCzN<F;wAa{;swm}f@4cM3 z_g)UqUjj?rglZ?SP%TCGT`E*7Jb9vRb95tSpURZn`~y&rJB?G5i%dsgGkvpWHdq^N zXl-P+*ofQmxb%UJZe5DT=ZjV7GL>~n*yoa>@_0#99tV~jh%%5>87`|6OEXTpP4qgW zkVT58z5tM+%VZgN8km@rfx8pH(pozf-;U)E2iNuM5#%&}XuNTBDzBeobkD`;o?~>t zW}~xWuknl5Jdg8&Yj(pguIgRYF{#mzlBiW$(pK5HmxRp)HXD;QD~B<aqcO4a7=L-b zKK-!Zv%q$mpQ!#In2y0U&nFTWC;1}f(YFa7+$0=<088^>s&71->Pxi-ZZw>6D?8vR zm9Wh-AC6$ldIX2J#H1r`A%uk@9>XE-F@A`9_0a}h{J|b^%BaXjsD?M%xg3ke%gWR| z+PNTMNrO6}RAwjss&e&;pX9#o+0n`p84=!9S%kN;p@{GfCM?LPg%?w5d6VHD5%A({ zPSd%=EVYlu6RgqV3D#)TW&;-OJ0J<a15d)&>`1I!tn;<O#$l)vA=<eonkZX<Xk1JO zmWI*MIfHd{rX<_`@l)!A_lW)85*d|HQ=pQqGOa5?bAbgJl_A~ATw|?&yxC@Kx3{O! zUUp)RB0c$NeuWE1^M?>NQ#EV$3smhFQZ;r8zdglMnZxrJuD9{j5?^IpW<K-`*C;jv zD;J4p2G%xU$@YHfI*xtmN~e&cy0nS)`J`Ss3+(CY+>CWa30CT+EAHz9OYDgSdty0z z9#z@1Ys9BZbSCUkcSvXa6WAHNghBnB@$W!bu;-kACOhX(u6%`o!#gy;HPfPxm<Y)x z;)(^ePjn6@EZX;jl>2ch*L|fw|6@j@trpn(Qd^t7)GA)WOKm7&Gxl1sSK1VO=rB}Y zdvuHO8K2PhMwxl)O62D~fcbeV*3J(baA0ZX1){J<ATO*@<aOOygRdvkU}RZW!<$dl z@EQS)r5d(6z!EVvka=8#XCBv2AN#1S_li>%x=Dms5}g$ZC*t8ZV5yrV=LsyynM`=; z@x7|t-q4>;0`u5`3i|r2f?lyF74#Je3)WV`+ryRk+rv2-b8ikVys|o)tNyK7Md>`Z zNDSU`59MrzxB3fjS<Th>fVW(aYQF~Q=`ux-zM#QdUSA`P^=T9lWodX!8_$?l@nx8{ zEnzXdTy0mDtEJsvtv|v%BD^EZpuMuARWDHwa>hMMRDC2_4T6;eHZ$H<EDaSO(|E<l zPkXJnkiWIfH82Sx=X(Vjy-C4d3z<lqi-w>4(@Z3#6nDHn9+^n-`rd|2q`J{%&a~<G zi{?Ec13P%`c20_WW`}}4z`}dChxcyJy?5IeFNSx`C~eW98if0*gT#H+LAb99EI6A2 z-!X;XSFKYcsqouRr_eDJcw%OuhWOQFL;UJ<)(-J2M_5{<hxw(kVSW@!4*e{0-GY^! zOQ`}<=j0&gSp4C5A)qM2l7LcCxjB`;z-?XlK$V9}XHe8M&n$>@k79ACX+VOGLy0(G zF_@kx4cC*Gh6`C7J7`JV%wj4PYT#oKDnt(w6`}`WH37~;MJA{qGuO-YsB_fMXUTmx zP@$U1jULt6Mug;uij5wn2n#AUAvCv%hvqz|6{)%1=?(=46#Jwq>u4zIXc$UrJsRan zfhGGi4$3-?D{HAv?G|S??faPt73yASG%gX3Mv4;e#~yvE4|tD3s?r#qs+9TNR$G^$ z=XR-7s1g|sX^a+|htaT4z!DW>@$$)7XIgnGSGe=biqe}Zs=cUV$?>j@z@}ocbG$1O zmU?*v3;f8t4|;j`>Ui^0XYGDgdr{>w8ZsFz-dP!qcUFL<UdG~`m9hMtl{PbU#aoYG zOj~Y)TvU!^f~%Qg`N_oc11#h+5hI<*RlUis#uw`}^tk<=+13@0hj&E=GBLHQXKlh_ zw#9mmW3isZj`NFOwtkXyj;RAtnVJa?CsSNC%!IKAmIg8j!<@vKsynJX-fVw56>~5Q zL{+eM{*kPmzmh@N&L8hb`5Ug@bo4LCI{Fs}6<ZFi4e+cp`ddrwdmvk{hl?_4dm!)% zY?vm<-0R6R_Z++I3?JY9*=1!EX0aMKJDhP~$4*Rev%?vOo%!R7*31)0<(`yO&U{e6 z#fKNM*6uo$?$mTCMKMG$MD;?a!2_M<tem|}gUSO-Zq5v-{0y%0ftQ_M?t1z)x#$MI zr~;k_{!SD8od!Vzi*aQ^z*$_toBu5Gx}z@jkuom$!m66}Me<EwY;<T?eQjb0OVa6& zZ~OBQ;j;4W6SsJNGsQR<)fb(O6@9i?(Pu-*z|vr{A>?c><fiUZvMvsGTVQE04RQY5 z&{`2vLp-tzEC$oq8t)GAM|Kl~COA5_Yxd4k`vqXc0_0)Pa27b%CoI}81Tz+LW)$w6 z=)H5m;cSH&W`=zMCfWjL#Z6iO^9(E*_C<&uEaK6FWLN87R`#E7XMr0fVf{<`4d+yp z^ou7faicVTQJSw0?kAolr7iC{%F<}QfjGaxC}=d_U^xdCqgjU0EaRiOd9eQ3rt#fp zE2H7t9I@LPu8Cm7QK^nv57(3-EQvM)wd*o8VVF35M#Nto)nOhz_M&)6@MzQ=&N#S8 zd1@8XJzL{1L?S0C=ljw*3xc-TLA?`_dnb13-3{r<qBU;Tq7u~y5;_gHQ~xrlQxwZE zOAR-qb$(=H^O{&Z^)pXq=S}2u-qcXxLPEc53<Wa2d#hjR-FFJ<73R8`@z~~_%(kIU zHHl&yj6bln7uf;#dk1&FNB)^VK51oZ3iZkH)78*{)xxD)?Hov0(yKLC!PYp_{&{V$ z`)z9<Y*b#=3)LXc!~y9{aX>l~2c*D~Ud+anpUtQIms_`N8uj_jL?bb({aO#dX+8E; zG^X`fSb!yBHo|^w<o4@8-vyd0M^~Gir>mA@vPTl`_9`bPlRdf;mRK{@Ba=<_Apax% z$nx7IBc7TB?9^`7V?wMKiCF7l0DvWGzJ~$&o*SUM<;RY!e{BRA5P5@B&pVXW^A6{O zs)y%Jfu)^E1MH$2c#~)MphxK%<v%S}S>cVDyw})9ur&zO5pULDOARayY8|%L>-g6C zC*7FyoBYnx)gf8lTd=F&;;bBHZ-E^EmIk#AgWARiwQ7CK?VVb=UboOqr2<i`QUS$5 ztW=;bVX2$&0^?YC0b0kO<qw$ubImgs$q>l54PXY$$_2{b%X<Loz+@K@{DG?o9rYbi zjjyA=lc55~rvXJncK4nTVH}Q{>63s<v<c!8Z2~UQ0!zc`hfB2m_$As`-;Uq(aHdr) zV>hbCY<6$UHoGg#-RxeUu++^q+-BOwZ!>j$`Lgh~JKvFalV|<ihh=Y{v*I1?bB-h| zjP!o!<bH0XcMl);?VQ8OuhCv{eAUS~T$2RDtf>ERO)Oz)GLFQP!6W&T!38_&Crw=X zS+3HH*}`=MT5<#n7Af2jgq47$h3gm=u48=Rn)-A0)(LOziwY4dr$WX%C$fmmzW+xe zZV*LV-`4up5OHgLltIKB-4{>kU#d`~1=*Z}J8??56Q|%#086qt1I0hX6~E8%E4G?* zeS}wH>f7|OOUFySBRNz0*d-8_wl)cNnJj_7EnTkPjcrFdUZun#F$>jL>M4lvlrSx) zU|N9l5Hl6TP!xYsXv=!mZTC>ds^~_2v2e9VI9rWP5{YQFM=)Wjn{_B?u#Oiru;0_G zws)<qF~)9GvwIP4<3-^%UWD5SEOm1QX7>s=yLIk{?EdlE?XKu1kJ{Sm#xPq1n~5A- zlpqHdYHP2<Q?EJ-E}YFh+%hewyQpDH3a2vVJ_4=xaY#bV@1y88utdfqH{@Hn5mPGu z+%n#~$FZ=4eu=#b@_*=z#KVIZX}OBJs8>A{Azk(8NqDnTvGJP640g>U8y%EAvh;_a zb`LyfG7fcHa1rkBMdAKlguetV#&HR9yTqs8wPSksAB#4zMtgZHU#GwTR;PgC@zp61 zOIVsX^$Sd3^$Soasz$ZDZrhKZ-)BOG>V<!;Z^pjXE78WU^$~;x8A}n0TFOIFo##Co zv7@XDMfqe)e-S(Hi*P=Pofk2efhBfchQeRw3O_MpOo3AQ!c4iLl2I42fVv_UP#3WP zU_nNG!~*K`SioSv=<EBN^|!>0YnXG_ge|*<7zwb%jT<l{H@F!ITk>_ZU$5*8g{h|V zZUmk_AE621gBhXmA}raoQE)s*amRCZPVFIIb#DDY>4g?i^@PUJW(sq(nZdhpv>8rV zT8p*tQ?%SqnYP0B=x3vreh)>5gcTQ7luA?X>zn$o7Jd=ju2jMQ`KoRp_1_hB3l?lF z5!_BBS<my<vw7a+tP)z_ZMb2de$T1N0+%0pDh<r0_BGhLYlsSwE?#qvBb-MGW<d$) z?6cFWp4W#}D6LhMK#hX<c~?i2S&0Yv;SqUYNeO~*wI;|r0lg#!&APrXVi{RYF+Wvv zcLMQ-6S(nA#GLR9B`gth8fTBE`PpMe%NsFuD@>Veq6Cy<&#MK6Rg^X{1|=~0g@rVG zA_r-G=KGc&2|c<e_m|81{rxoiIG$!tgs4RR^GthVXU1fEbZtnsALpuP<6KD(2z~B4 zMO;Ul+k54=nUC+Z0P77)glbyvz^vX8o9R1nKY@iYxeL>Jmz&m4+h5wg?AL>T7)7T# zSa)F0?ugCw9rz}|lIZTinB3#W<l)-_t5VlYrZBi{8aL>1^<J-pNjK<Q5tdBj4=6tS z11~;%FVn3_?D@#0mPYdoi{>*t!$+F*%sGUx7|nBx<~bitrCK|aD~^66d<ioT>lu9U zXTleM24(<DWW0cde!(sDlkMT7i*3CZZ=#6C{2QaE^}hQ)<{sByUjI}>@E<sQ;2v0_ zJ`wkQ67~I*`#$+{D-P)ym|7{pqFY<lwK}Vc(>G#QRo7C41-l|}HW$IOO8nbQiOn3? z?yXU3>b!l6-QioYJA8}XA+W@*cW_hQaW_R1wZHb<c-BbKA+wFtVQiWYdn?|-VedYK zr8VFfHqOWR#<_3Gt^Nxl#yct9n3*(tygg(u-X5}d=}A~pMMu0n<jCJ1dLBFRao^CT z%Z!6kHF|_gTQ<T)*)ohkC=pm1)F>Cc+UP<XsliJYS4xR-qDN1a<w)G7;fBccDR=4H z;M7tD|IT%v{{Q;A58Z<$Dpdmiu@N%AQJX53pgXwTb4OnhriW0DK3$le;HlqR75u?( zu2Ej9_GpnLs})JITEuFBC3(3bN!FDo$*#>P-F)F_2a~faUO&ok3l3)A!r7JCPvlJv zS!8AFYUt!cTi0*&-{9=(8~rlF+0{C~UBfCaFH;!fGMH4=KRc<5WG8h>5c{MqjIfwh zr{RO2)**VFtBqfiw(OA8NR#%eN!Fr7saBLI)w)Cy7VUKiV(WMiyY0=dwzn(Q*WSoi zRe`m5=v6Bode!2gS73>+dY4H|&nuj^U2UhY=CiJ@u^ZL-*SbtWQ^hmWx(p|rr<+;m zhCGB>u5XU}7T9sp*o{ifX-uWlF3P6$v`Z7hQa5Ko%~?*(E?@mBpISXFggGM}YvMUx zB}f|S7)n@jG#WehVT~P=K+L=0KP3efvGV{i@-EL4{PP5R$liIn#1NL|wztbv=Iufo zny?s;r32ROGwDXvTz{7^=I^3J_5EFn6PCIOg60Ns%{@}TNW^EyzqELebstF(_eB!K zeb?HAg`gkeoxO+roxO?8Y#(&ldHDrKV^B0zQT$P-z+coU@W;squxKBEfd+6z*_aV< zV9KI1P4i^RxAVgBikC8oc3vTb#eq*JeACH`5?hkD1)NEDeEO3GR{FyT`a^QWN`F{h zV2KBTU}Yd@rLT9<l3#BrYcZp6qBfjO)G9mXiQ3|X#TX_b|7((#CX2_xD|<7Ft{G+| zLshSpx-`6xu0-Ki;vGw1iHy~{EVf!V8{HhrU9_%9$<+fav9bu*S412f6@f7V7Gx9! zD~obgI(#!&bFy)dPb{?$ffz!dQN)fA^aCu~mqh!LynXnFGoAfw-=*s;LNQg1%GA|n znJ^pFJX04+SQ^F@+;pA7Z@MnJH%8ywXVVpQL!K+&l<D<+pB(~$gt%l0Duxo4CR-^i zfu;DIjl8$Acl!OSyN%tbOg*hlVyBUCLe!i_76P!;%{lEjc1}x6pjXnG>0k7loKNWn z#HdlP1xQR^AQICTpg<I`G-ns%_P}C(dm!FrbE;LnERon~=986&G|IbF<iwPB2_!7B zCe$UKg}P8YJZ4DNi(-Sy9yfAWHD~2vNXxq@M!CF8IN?0qWS|>Lq-t^N(?6RX9`**^ z<e76}nD=3*;7_~>a|t0V1YH?|uFM79vDMw-vz9onGLoUPHVocHnD8#bpeMi*8R3{% z;oQ3jdRNPOQL$h$heBV}@aPaESq~9O)<ckF4J>st97)#0d6M->o1Z&9d~<yQE&o{S z4Cgt9>Z)d;K>7QBTDt>9R275s-`DQ=%R?UQkEOb)mXCOL;b3Q%2H{Hlt7m&P<Alr7 z`Eq1po!>W4Gm*Z!w10zaoo}>>T>9T2TL)N3e>q-fTCR<Q_GFIO*lF{M5EF-4Rl+cr zBuHGDSYcS<fhDnp!)S(cqnYqip()?(e{Fi-Of~!y0+ZN;K&77vfiZ*y8JU4&SY}`* z$T&9t^zQm^YsMP2N3}N9p#Rn2eUT1Va|tFakx>)tS53Ztg^qbvwP!-tR>p4B(P&)} znQ>LZYFgJ=!csS`u3600m27XxY1f-g*&9kzN*FCwmxm(EKh#a}5Qe&;@{F78A&kIt zek1sEelubm3wiWhRtCCE4jj!+zUktLOrj(LoWb{Qx=ep(A>GTgPde22>mmzEYSS_O zF>Jby>5m&WU0te;vU~I3{#_&2R0~iIW}=$#L8@WJ0G7B`0~VkLw*b?Md}kltYy3D1 z-Q2({6*ug9av9!04Lo3}o11pS*-bmT5%p`|HxaJ2qJJR^phh9UCSTKX1nL*OB>7)d zAxOfn=^<NQ!P0z3K!v`P<5ZLq;7_6VM=+wlYX~M9p#iQF#6;UTFy)cWt8QB`I)j;2 zCt7uFdsZD&id3|^wmxB@;Wf0$tcI5APedm_e4e~$)i*}&sH$1bWdayGMQC^$VTn66 zFwtu8iRRt0TFGh!4pu}rLN(QiGFRUS_g7l*ZszK%5|$Ri1^Ps`Ku=d1k0%zYP*u~{ z(?T~MsB`Gyu57bC+{+M_y76)E!+hMyd+pRPebb&b0Z%M+voWX{ZoEfvYBmNT6Duf6 z>Sk+D2evhc?t*NqwDRclBaWrslkIcCGoD@WRP5LV&lZG*^LNQ}61(I{>G{Dm4}Uu# zV{?MSUelHRl0zuF<e(g&UUDc(SUPjLjN5pZ`E5Mg-kS#hy2wQY56!%lx>%0u;$a+; zab1`rU}-${TryZaz9e5Bd?7nx`q5WLwy3gh2!q;C?E4#H-w!Nx(-=-qWA60y*>q=c z{c{IaC}SdO)WUk1?i27*wW2baxF!ZHsmx?tB%AC`*6jR_Rkxef>UhFPjjA#&Fpw5v zSK9)v3$R2@YuMJ-+_na_P8vFO{ECrEHy}pM*cp%A%y>s7DSx~pY9=@)NxswPj#Js^ zj<iwf)&Et6YIO%KG!mn-rUj-z3$cf5fju0sL`*BNrWI$+*wH&$b#3{mD7rDsMs>Yu z=TeomgNIC#YKH{_Sj@)uux9PK)8l?)RnwBWIo@b5ycN~twS$n`VN<I#uS-~BZ8S_? zG&gzuYd#v<x<M;2!_bY&+8AuRV#Ky92HP%Rshe(KZ8y%^E0gLT-?uy|$7D3BZ5fK} zilHJ8aj0`)!eTVT5F{MNgM<U>%v-de=zU5S7o$;`8UtEm#Lg!Mx(6(g(G|9(E4M9k zevR;W_xL<*)8%e*t(vf0t5%#Txwu;oEOldrik?>19U$V3KDyA{F3o>dx&d!gCp+Fd zp2g!@HL*6{y8~fqD)#YCVST(QbG+!S<<D2HsN#lRWJ8w#wk8O#Ho>J7VM$T?fwlcO zYqQ_Io<6hXvxiDI6v<OrGYng{VOqr_7^aOSEJgB0XlJnzT8bI8eA(k_MD9zv{UfMR z_2p-r*#GRVcmzMYHz6!ha|EaMNBF6I(<awv#w@d^MFbo+i!0tmM*UrFGtQg4*k%Gt z2^u-r#^msA%$DD}@Bi9;v>24x1|-2{0QjK{DgluUV2PSUXhR~8V4RAZp47RN6{(FF zl**d~{3t=}%@Sa)fb(=S3*8WJ2K@2H*Y4AmUdo`rVfDmi3~mRE!B|M%W3)vHOY$BM z_jJ6LR;1d0zI{{tX=#)63YD0F*bNO7yP<*b27x8zONQx9=BBsVjw)ZDyW+P&A%<9^ z&d4-0O%sk}8tekF)Xfm6%@D3O{q6ge`oymjZSf5DMV*m*aAjnVxL&dcr3Zk;jNFIf zCHr{slD@kNC5LYC``o0xYM;_zVA6zvNrM^#i}r(Ip9XXL^x2rUE$!BH6pCUd;WYdx zO}J!faLItBVWeZur*r$Xz0RF)hgN;i5oE}dC>hIqvRLMmvCIQY5>9iEXKC)VQ$0N+ zv+c=iEgBfRQDrj`Mth<#+7n^4fu(LH!)Q<DigIelxMhpt@A5Pc<BPuh)r^9s&YkIZ zJQ9iozP^3`!pY-}sHUq@r`#;%?r+p7&$}P1t-6RrgyJM#$I}zngUZ24By=;#aCY^> zb-OG5>lUOioNOkl1rBG`u-~D%P%RK%b>J9@Q8fc+v6_K2qqgs#JauJ*g4--<PZl&L z3loC+$#N-2SZL35D8_WIJ=fR1X>oq<+o5PL8}d>(bT5Uf$<(}*dkkSod&;^`Wo6xI zt-cdgzgzJ4SyYrrbfX%*Bd!VT2zFG|%@J2*`nby30mpG8>Nvj<wS4v;Z_{4wy={Rh zSqLs<iFj)k;;q0EQ)a*r&EVGR%&MrE$g2nMnJ`72lEV;_8>Ur!)?wOGgauQE!vP=8 z9q>anZn_j*G|cWjPUbz&PVAniV#e>`N-3~#GVgm%VE1`J>uDQ3iwv~8H_?Oybym-T z*D*(U9dlq^fCUNJkV`g~%h*EqldFW;z$h6Qs?H-XpD5<#qj()&c$XE}OfJ^U$0r^i zOh*H%nJ@Q+_V*Q5$ELlo(BT~X)j7gU%z>EzHtW!e&Bek$moNOaI$zkA)$Hk1r5jTV z9;XRoamd;wIme+4Jg{WJdm(Y67f+n9a^HEO%+_tRM&_}Zv*E$a7CHa3arg!-xHAV{ z%pC5;gvNT8tun6s+PqZ6<IX}nt~L@C@!rJ=OH_P@^Zd`e!=SV~YQ1xqoUa_6;pCwr z!@DiZz=O`zPX;mpfCUxf@E68;({<qo%cr-we)|Na#K=?lhW|)*!+#uae#1YBu%xZG z{L|Sj|B*ySw#!cY#=lddQXVok=p%7vtSt2#^kIYr85@zAvyo@!d^^CsR?nuJOty>a z+*|09z!qYer%^1#1Ok>MyBG_=V!i;}UEOt0*6%Gp0~HvJ5`r)ZoAF|}rj;2i|L7xf zspX6WwKOhX%lJTe?V~fPxn0JwpvWfyFyv7y7W?0q$NdFywO=&!un?hBYI$7u0d-HU zpHWvV#h4uGz9$+la!1=J`<`f|F9S<z*%@~kI`bO0d!F`r8a=r3dPTWuL06~#LP%?& zaM2gSMF-9!&#90nndHii7dLY`=Tpj(T6I8(uLG{1lU{UyF$5NB)e)X<M}9cb*zL-o zd2GDNhFw*whES!3!WK7#Ee4jfyD^At%x&@HHNz_$U2*@kG8*z@RWB=Ei@B;5a}_=x zu;j;nrcGj>@n>774Ek))0v0{l(r9KnMX{Mq9r$QwI@KmDMl;(fjLmk605^tT`?SF3 zr+&1HGfXno9xsC}UM9{+mSJlPEZQ%JWn9kfaqamIKF<a@{Dk&Ud^2}E7qz8w@eCL- zGdF)3!qVoznis*M(2iS;=RJDIof9X4X0lxd3%pDmZ!W{}Ca}cR6>yJMaQEn|vJ2X- z8F`OFvBL5gRODXry>z1FUfeyY`GZ*x$YBUtQGQJE>;_c$Pps6cJhsB?-737^tyq_U zCGGkVUhj|G>vasD(Bzu$EE6AG)sC%T+E%fgY{hZ{EOoOTYP_8roq2KH&eomVti6#M zHGDb{sWSsb>dZi-&Hzi@q#$)Bg{RK=X5~!YUhnOUy!>Fn$m9%0xeJm`u-iz&5?f2+ z+mgH(Mz327lfz~@9<<QSL2N1xikQwp@CaDy=4Wgye&!pCT7ly{eoNUj-#93PbXa}2 z0r)6;uKI`#151Ny=$6GAx=}FZ$=RU6Rf=1i9?Pj-%wex6cGyc%`NMb#5Ll?}QPhGu z>P6e6-(xo4x3kZh05bBZ{6uUjCW@o@iEt5tMf*vR-XyN_zJ>b^8>6pX-^dMvi0^f{ z*Oe<-qkB?{<%3BND8x48$-qXbUFKOztU3zKI4acqDAXKSV&rkyj^o^RBrkWado`i% zSR(~0BadP;aa3$3j$$(boTr;v=!R5&!@$TbO`c9Nv1Dpq^VhzS>}y|Tef=6m9e|~7 zmZ7M_GG5dnH(>tQ^)2_kRK#j(-6v|}alWerD<*2eS*;wbn5><`CTnMan2TF7I;~or zkY*f{fvdP7)d3&QS^T#VVTqXK$T?fibIuZ`hcq6#%`+9UHRRx!zwu<6Giu=%B4@Og zh5gcpUU-7Z;GK#1xVn_amEiXy{_+gVP^s7OUnQXaFJ5>uzw^}Y@6`BJX@DsB1TjAC zbj?N2uDMXcA)#9?hQw3%bB)$FS!Q3`z;)@-EGb=wb4vP&>APCQEn*}Y;{WTIPAo7a zYtsA6AMtL1f#HV#($FQw-vPVtxF977|LWO&mGON_gua>G)iF_Fmf5;_8L!h^wo(!{ zE?cD#mQ3oeR#Vxp{Nb1xyBD_jv02ko_`9n6DnE{9(Z@CW(fj5OIR+&p@AiND>u4kc zPB)US{~Hm$fZ$%ZkaJAvjVi(hBPKa_%&lFP6vvdEc^=s?`;vk>JfdTKgbuUiy<8qh z357-rg~vAdHh`Ka7r6K%q5sU@fK~K*2TwOtHGkkg(R`!g8y*(Uk9|ab{@?~7JB{JI zwf47BBWI18zsE3Bu<EEjz&%`bxra)c<k{TQH6tw6@cT%|yU)|{zRVp{_oe1SPhvVv zwLF~v@G>z_QuY5mLLe4$ss0nSHS#~WjR?~@g6)p{UMwLOjUmr-+4mJ2v<xVAR+%PX zzj{K^!y$$BK%HV@e-DRv!qQPzPkh^xS24cw>dGzKSwAv!yJM`MFTbTNL?wP;Ijfc& ze|a7lis<7zzOV@E`nR+D!x0k|w2H)9JYW4!>*!Nw#Bok=upzPb64Gfe>G5(o{?)Uq zYGUo${6(rX+LCH*&{*^JlZ=IFMy!P;cA)7J`@ctFX*~ax)ljuo2VK=^Xt^ZhrfRM8 z%(geJtL&yTPfQZpt*VZ*1D;uQ5YH?+pd<vawCQ%SOJpu~w1Y@#-o_@}@k_chM#3}g z<}{)Yr^Vs)X&g=iOTOw^>{icm|ND68&(6M@@s37nRF}6HuJ#wxC`oX|G=YRAYKm*p zS#b@;$u>q5+5T;}+-gQ@)HCky-KMbb-DdE)_`Tb3!V)!`u*uuRH+iG?HXiWF+m3b6 z4WAySCe;xy893T2kzGgoMude)b+Hd;F80+y#`Ta{m-jyFN*m}r?aOGQSQ(A7Ei0p` zO<1(Afaqui4Mie`?$3Jg>U96+mfBZF{IoLKkxi+LOK8BNeFWM^@b*7-T+yaSwO*ak zUdUGEW@Qa(fohbnPGwDf!V)*b!Od{a&6LMcC8t+86ryxPvQ_V{-SAFkH^hbi8@TWf zEO}J7y=Sr8-n6%B@J;!^wmVi;wKN(ZJiX;3p5F37T^nFA8b3S$>}OvS?MKY^`Xcv_ z?IMm~rm2;2ySTErU0hkym9R9LDw<GMMH7y0`tG<g$1eZuN+3gMs>+lFK5=Y;Pan?H z1qhu3OS-YxXA)cNL;KdI3m*JX<<3vE<wiGVQJ$L6(wds8yqlW1BM2--d1`^TwK#9D zUT8dL{WrhmQ+R7OsA2j0uwi&Vn<P9ee+R<Sphlqr|0rI8zh>yw-4oK1nI+yn);3~~ zwMquhW1O1;3*P>L#MVD}d9AXG8uo17rCU&*6zQ%gB;M6a$vW@qRgtivCJw4c$9mEA z*%Oyn_So@x;&EjRP!DzC+k+Po_J|h|_Mm<huoTPO>y*a!I#HQ{J8z!Vm|D1ynEGZG z<bcmqcECpo%pC9;Nm$adL-_WP4{6zL$ItAdBRz?sLN031s-dPjYp7A8Zw+BhfF-#! zg_bnsT9W@%+c_bFr_*7V=teb*Z@s3nw|Ehi<nq>QBw?wWclh=le=qgY+q4+nx9hfB zl1oF({)SLi>ZhS5lCY3VGtA&-d<LK1S174)<xfS>%apZaeIwXdUuFJ}^({l#jJ4Km zyl*T%@i^KU?>iKq3~*;me0ne6cXO&(qGz&QT{hWHsjoZPE|jpKXA0gsn!?{Zx;nmL zzID1sHfRrv(!0x`f-r4e68d$E8$?y)!YT%v9)y*sipg&BCH>Eod>%<WQG1xDKO5#* z7z@%cPX|J|IlFu1EON*f;NVRU%Z)%arV*Z$$d&PGxqZ|1fA%-ZLY=V<HOb&xy5M0P zVM!K^@oi&1)rMHtKd`>Qw*i87FjEz2r2>hl7NMM9Rw@ufSW>X?0!T_NK*93IwSQTZ z+F>^BFJ;YWq$$oCX-aWw8sS1PutZH0C|DD&V5LI`Chk3J2e*uK64a=AdJGRNAH!=Z zq!`DnixQToIceR8owTN0xx$+h><f>I{leIdI;dU9wB3cZm%7=703NW^%^sZ9?cpZ? zxAVF7eb9L?nRt0ntzcJMX%y$Rm8K_QX;4uZR1_an;^G}kMrl^RGF5^uU0USx@!=xh ziIdQsNV_A7c6v4<ER4x6q}=V|DR%=Oe^t48y!Nm%ATA_P=O<2+fs?`symcJp4s53J zR;;I{96oej*D$N^;dvFlqY@H%R^9}xoC#v(Ou)(sEcCoT40nGGo!5Oa%Kde}Lp_rf zevmOzRn8lF;$1*dIqw2-gr!Box4;zUTYw^X+x?4oUNxzV#u6EBIInXP=XGv4uLBlj zc;LLwgP+&^wEXn)iK$je3NwfdHRk;-s)Kwhs)Kxs>L9?9bl0Lf$XZ?<BqO^+jpoG) zuTn<C2P1fT)FBNobtrd7jym)qEbUB=J7lrr4isc=`+ID+$63oMcM5agR5A&g1aMI~ zJ512T5SAp92+1UJ$@E^8li75Ux3wjf%)x>C9C6@22M6xJf+g8FYs%(lO`jE*zVE`e zUR}xVkZ8M@U4PH>x|qq=mhZlkV`O=6gjeeErRnCV&EJZ9U?W2npLh_!NaR1i_%6pU zm86j@TzAj%rq{&?%~UVG51QF0zE;h46b`_QHkH;O4T?f)6n|h4<^r%J^HfMHl}jtq z>!5$rLkG#c80L|B7Iqc&4zGGB9`IF<Mudg5e#1Av@k)q`H%HC;?rek2mfGJ&6~)_V zN7mrBM<`*@{*FfsyW>F@2?n*O7MB`WzlTYCHK;LM(;j7Hl>F%7aAAQ(`_Y)kqxn3Z z+9BuQkkdCzuYIfSH#pX28yuCKmko~P2#fZc9K+crNAlpezqs=G><#nAleU?ja8s$U z_dfR;_s_13K)xS1)Bcywz5Zpm-Jq?s{pNE*c@Q>FRj@Cxd;Efjp9p2CS4Ji!#?9IG zW90ewJtAO(12r2rCC$MGk1YX<M+EHM7BhP{dPLyatID^&Zj?D#o!cfX=iUXlZW?n{ z41oNjf0I{$JpK>J;BVy>m|qDn<Q06R9F#B!<N#p#>dt&{e?CtvAhbx8L%*mqzwIl3 z*au>iSMqmw0pXoiNw<BcjUX(o<oR^jET3*6L@}#WFZVy=YD|YH(2X+tX$JJ_mK<+* z@7PonmVX4=yYx$lD^-w;hgvYNTU^`#vloyJCmXUIR{mH8JcZ2jJw#AdXecp;I{$k% znQw3u_asEUnDv)JF&sk_q*+qYV#3JZ>O(Q6c#Iuv0sUr^jNccjf&{=SR6-g5>RGj* zsp7uKH1G0d+Ldnkz#tY{08R8iiR@AyvE=#DznLKwKWL>4Bl=5j{0l}ZO_gXpsrdV5 z$a2h!<$Q(^TBXjA8gJ63T-Z4Gh~S|K`wTY5G;BzUE&t@7*>~v82W-nn+xLH{et8*g z*{-YxuU7LoA))V7uI*a;q}Q(YMadLcGP^wA)>QK>|L9+7-oOv>?{8_|zp%{}&2oS( z^Kd^nx1Vbsp`TSAezo(`_P{sCYg*Ji&cP3B9wO_C?c}RTse&K-kUYZb|I?cH5nMY1 zUY+5ZN9erDwXZ8(ty#Ify~WD0&fZbX8FxO&hjd0gYGC2RX>cP%!yno!y5#AB#w)E~ zTk;_b>xQzzx(wdFu&xhb(Y}ZdZ`$a{2d%WA<iVBa3NC(+%{5#iws_&v+;XV$Gg}V- z8!7%R{r@*M<Rc_`5%RmJ!F5plt7lhKNfutavqqU|jGyb8mDSDTO<SnB`*(EyFKg|7 zytOqO?%(v{)Dz|Ru2H{&KfiKsn$UHXQ)ixK71(w#<uzGb6HXZxDDw;JMrQHvKWHO9 zSe^J^TZ#XqGVx#gzIVZ^yZqWZq5EoO;^Lp~-*NW!G;!bCG|o}THXN@>Rp;}(kZlNI zvj~MXD~dw3MfnRqpWua`PxuQzmA~w~^mRYq97~p?IG$)Nj?_A`JjGE%1Xx&(5U)}! z#48k*qe}ayvww~aouq83K#%(3P&A(AjuuaIM<eAE*o+=47K0?;7@p*NbLbD#+C;6% zG_yZOnSa3NGyTy=th^u4jsM8&`w#R3lo*bP-#e>bK`UPI^_S3FRX^PBEf`(v<vEI8 zljF!0M3fCl(I&AJQST!K$0ESe-Y88wiKS`j=;zRZxi7D$mn~#TEuv9_I9k*ojxJD} zuuzMRh%t98Kxd@~s}G)Y$IiaJ!3{8q$uPh3xB=2n{^=C|4_wgyM1-cN{FYrP2Ej4z z3=qnvH54De*lfD{iYi`a=@AwTq~*ofG8aFz7=Lg|e8^mW^m6=vh@aM4J+s!*l1#`} z<)_BAl5b}HK3`eV<z5KT^%4QPUI@?u3tjH(;m`Vd6oxJjJy@pBr)%4_rG<(ZX}VhR zdmwqUhD^kjH1J=VrT^v{$cJRW_f4j`VO(GTa(|01dHxtm%_Q_tBDF4Hyo;7HMG5J& zoy49#q(Fz$??x6IXNiRd=hDK?%1oI*%Cr2CGJkM~@PAa9%^WVv#=#5x^U_jugirxh znQuS%F)k@$z=gbqm8+tu*TlE=Mi#1yXxYpB0Ovk@6X~P;Ohx_7bDs>JCaE9(gki}O zv5tSDetuw;pO$L<5DHY)@Agk)-)>*)x<N3_;v_azKjK{8AN{*|{9z{kP4)Z#n~?>< zzJgr)2o+Ho`E&M)b>kX%Pkav}4O96emZpC@n?JnY|4-QYF&fBK_pg`w5O6VsFHM9> ztFzfYGiBR1KSX?IX=&Q3i(^}{UnlQ-tF9Gcu{3Sh4Pe`KX;_-VyM>I-DQDNoQu}fU zgO@{n9co`rTa&P8UmjO`%k!(fH_EQ@O8=n*T@8lL!&y`-5O{i3Wu8ckq1K-8_JO4n zG#{@r%*U%DsJOLp#+#)1eM*~XMS7QBJ(Bx&OH5WucFWElO)k@)h$O|@r3%(DxvfqP zY@T?z(rr?lVUAK@9r0?_eEhS!7s^T&99*YFL_}zbf<p@i*Dmq5qV7C=ZXiW4LQQb| zCl><Hmm!31$jZ$LM9tMe%5Nm}DA14=eR0duUzWdhq~s)GnW@iT9f!)*MX8SJDAfTh z`TR9;7pEq_i!<eHV%3JWfxd=6jDFOE#ClMmdMMCD>QGNxhOkhk`cS6&T$u{izG1hk z^a6Uij81h-$*Ahu9#w~xbIhu)k%Xm_{A#W!<>X4G`7;iU@NX4q`?U!f>UnHmzev{C zPr0Df*Ds8)AfvxuAnWf}6z%)h3IEMDU%@z&_UbS?_(rh~zDg{u12T(%Mf(_ERGsmq zjKs4|=b!3$YSSEL7^ZWgiMAqZqE(VsnrMp?mUgtwaqX!&ugdW@YF^V%-J8<PhD?YV zYVON6l$+Wn%1v!UxhY^NyJ9EGP3`36recp|{+ST-XrW4sns?R&x2&3oTUJeQ%L-T` zrWwkfG~;DY1{c4VST87pE}+rOGkbEpH3rlg(k02Z)&>(6EQx~dMDc`#DJ*Nkn3eMd zOUx8(l~)p5<)victU|gRu#~~K#%mH=<3*dw`F0PM`R<7#o<Kpkeux~6*05Erg{^9h z><D0KFl{iHHheI>8@jxREPf|R;VcoOrfRy`O~PYtS$r&Rc0&nE+U|`sFK?da<vae^ z+afJCURJs>C8h(o+5uWk9O;04GO%R&I$@vOiSLuUdfzy{|3v-P%8<--ese%qwmCq# zkgz$R1z}0&w+5uJtpP*9nJYHG4!%At`>wGYRa-WBMzBq&oKMtj!b{!2ayOn8*;ZaP z|H0fR4V$?Zv3P~Q8)V!~%;0XA!N5Y!v5<2tmvfO*MFv*=rR-^gAvgFyA8{gDAyoa* z-#HP*+{k0$`SEK7#5WBmqLOp?KXM{!+2i^M7eSn>nwWFqs>Ku0-Z%&C%}+!L^;J(q zgU<HfadYV9a?p-E)7KquGq{Vl8Qi@~5f)<g#OZ)1KOLx9z3qc%OBPnntLoh_=emjd zd)<&j3oNO6cc^-IuIg4U3m=UA>Pe{53#q!Ah8Klf#Zlr`aTJmufF+C84&S!p3FntK z-CZ%rDQvN&!NenlHy)SqN!R0%C<QDA(;M@#H(zC%I$qy>y39LzPshLvb$PfH)Ph|K zQrcfa={#W3{z_0HyAni^sZI}%*FNC=s-kfiYTkUNRWi%8O6Pw*(<+XzG>pksD9K|* zIk<IPKL2Iw%a*;-4W*KpawA?l29#%tQ6v+VOkyAHRMtmJnU?*BxxVZcRjP)u8+GC* z+DEWNdu8G$+Lt0Mb<^KIf%Uf^fNmmoj)>WNv{D~qH)<|lKbY2j!nF3o1JuBBH!!XJ zxoLG|r7zsu`zHmLg(IO-lY(U;MJy93+7QB$X&sF4;$U8#z%{{jP}JFH1BDqu{q+RX zikvtJk^MpWC+{!gZY<VGwTa-Rl`7b!Y11xsnzm@zEUHTr{xb7v{b@K!r}bwHW!!U~ zoJ#G!%Zu(Ri^W)7GM*x{|EYMD;3-}u0G4F_!h1G*;XNN*9@@jFWrYq+H(KCwytWVI ztR%9>V>JerxZDR^?!&q4<hJk2b(^Y=L^lQvRvnZSXn%@UxwDXhg%DV1a4Kd%DxU$r zy=4!_JsC08C?$0wPPJ{zrrIjar`pyhEJ<kw&H!fc$Ld}W-_;^(^RjSdG-mVpv}+<e z?W(MRr{T5%OKZ+K*QxBBD{1iax+7P$AM${xk-ffWu6SnyHI8UHKXb)98?JKx=1X{e zFS*xOAf`{L?t`*~bupVyDVR$sm@(8%iZ-3FG^jL`n@i*6=6<Sr#&3&XS&NqhbOj=q z4)JR0M^_+(u;8sL;?}M_ZasZT-5GA_r>0nv%@`D!8>3Z@L&hMt2w1cqixqS%UqN@3 z-gVZx&U{M!6q=?^#KLZ2tgu@I|MP|2iW8PJttfKFin`G&I*&d((QKN>8Zi+`HmZ@@ z?v}!~yA9>tY)1oNshgd!wL7`3U3jdt*P7&!O^mWpb8F*J&MHonvx-AGD_}{)z1+vK zUhY)<JK#Y^uNtMc)AY%su>L;vnZJ+nO0&ODMZ%mZ)-2Gc5k4)Dn=cT`E;U*_x9eT~ zzTFBz7?$eJj?wl6LlgM0#=u+wOCI1jnALGws(Jk6#=;Z5zioJ3*ca2PXRs}%`LU2e z7t^mT7DXdL$xet;6b;|-?WOtR|2K=GnK!mn6zwrq`^Q0)-%99-S`@AJ`4wgUSn;}1 zUT#gqLOD?^loMgpfhBHD2Dc`2ZXKO@W?<v?eNUnnj0Zed_xM@3DU*d|mL^0NY&x*C z`p<+bJd^Kd?w{&WT08E#Ni8zf=s2MImV=LS$-@Cc2R744Yv$yWj1MZl7!XvU)!Nzz zDz09))sj+WVU}gViYkPmY@61wO`DFHHl5G3O4DohZXLLwr8+ECmF9pkbA%0@gW{0D z(y->jqRiD!g(~@9e)qlKfzo2nYO0VWbg`@io*Ez;O6Z~pODry_8^=oOXo4)h_h3%A zi?b;6hhEf5M{~fyIbts{2YU(NJhaRJE!pVh%=D$rW;83mQW3Y=USc6+ybwbnViuw{ zB(OAF7vW%Uk(TxnE%g)J);zsM88~?ol-_q-VXPOgMu};rtLcm%o4<hz;UCDt`RJ$| z#ZfHhFYyS=-#@Czb5OAzCvMyM1!qD#)tXfSXJ0Lg+1+T3Q3k4~um=@Z_joIYcMsk> z1D0g4ANK(F^Lv2%y}lcBpz1!0#cE30LTzl73JoP~lL?Duq%_v%(tK@R-|RrXikBJ= zHj<&vwuKP%Lajo^LKsb8iHyb2x5eC3*uAgAhHB@(OhY$$40l<N4y-I5=_Qpa>k&y< zkWt<P;Xx0o&lD71YTmEKu8cI2(J-GlO#VijfwK6@O_gsjDS;(2R$$3q!JXW_WsYui zuRV9Zu-9<*l#5hcJz=rs``+e1;DyRd6-+V-4D!LqCL68#lf9=eMNrT*Fx&0#h4Z+g znPtJos(ZGizulF>{t|}z1~v2RS<U=(+nZ3G{E7US%zBl>s?eHNUpjn=e{;*}BKNko znP#GiD(}}I^s`2Ue%4^E1UBQnHCqSXuOr^G_4t0hHU`2R7CgiMn}&akhA?TxgOyU9 zf#q-jmb=GsU0CkkjIfynw_>YMGJBOf-S?SyqRhR~7jJj4q*FQh+p?Veop?Vvr~w8n zbm{>LyguLsUQ>Q^I5DJ4WoM&Ksj9se4%S-XV6DZv1Z*}gD~u@{A4=YC>-O5V!=6=i z?MQYze}FIkgYd<Fz$yYPb+ZM&_!jPqd-vW{GX5+36ADvI?SHcG0G8~l)TT=IjUy~s z?i646qP`<RO!bQWeyjG=g6T>xW|n&gto9C!i>BEQthc}tYj<M0?&Q-oU+!R*T=UT} zbdzVgUh;0wE_o{v)Jxv=2@BR<!9M>A-{-%YU$Jrax$`99JnfsnV`w5gh9=-GuxQ^D zv$v_@yngqf@8FxGaD&mHA*yJ0z~bz{lvjq4Kv){aPq0fr@dfBe)*qpXR##SAB4aPq zcCT0u_hO9(7G&&47-BzvSz}q?FB4nEjiT%NLQz%cHyLV}>^_5&k?cO4utY|x`z)5~ zPCN9`$<r4VzH_CXu^V+X`>-e8C-%hqu(Se8-5h|T9pH-g`Ju))s`UF5*2b{WS3UZf z9_`so+~Xmp%!COAmNtE}@!t7t{@!`y*i~O9H@;Wc5>p<b1mYu`Sl-Vgn?{5MQ~p5S z)F1rmoRhD1)%a~dZnUNLN8rvJ5gVi<2=)Vu_Q$}~W1OkGVmozO9m=b7DzR79MRAAz zxZ{pHjl$i#D`Cme@$#O*yu8Upv3CAF)yJU~-Ap4>Yj(zCdRNH&OW}3@zoVTzu|UIu z@GH)9ehm!8f<Wj-V2a3_m~*Ri`4Ooo9%ro3l(zy%MUxWH#CV$f(yuHR0l|;uMN}=& zG?3mzHLj&*Ay^)H`In`Gs6#O-^_c8mRu59^fCRy%3)0jDHwhJ1>wt8Pe|Yg&zqB{X zR5mlym3?AaWz-3#Nl@9R6=AbA!<tp`Nx~-uOR7NF!wksXo!zDL(Y8k0pqiKiHf`Af z%xmiKfK7eEl5IGQ7mp9~7mtq=>)@<!_|#&u-D%kD(_%Ao8UZ0-F}KfRZlC3IyZnsk zFG{RTq-{QgM&nXlh0`z%r-f-ajo1mWWa-Y~+jHDa+mpYVLxZlZCK|g@M{@?N@)@xq zI|C|!^K_GqZfIqGaOhf1{oyOFMy99+^D?3)mtk*-DVK5i6<A`*6|5px_$u;rkk8NQ z`lq74pqa2v`c-8o{gflClYSwD&4h*L%>2^up^^(rcKNxa1x%pRBH<^fytxe4UKXsq zjFS;yshca{%@xj@tcF)(eYPan2$faK0Kt1Tt-wxmM*WUEt|ne9$wr=Ucwr}jj<PL; z8OUK(_AQ1NcFv<T(0M%-PbYLiZ+Kzn?2ZW&I)0x2p;2%u$H%##JTnSx6UWE76eTPP zZoEr88_%Crdwe8u$xN%8<1Mi2E{=}x!t11N?qcx-He;1F-dC844|$yT;d<TYao`%O z7cIS+79M8Q1XZE#YG<R9`J%%Kge6VL!3vzi6)MdkzTk$3uPA>{sJB|M@<)&A>_?>V z5nVrelp!n)Z<j{`+vPzq^5GBbKPvf$CZDkzm71<T8LX?1vYF}XGk~yJH`XlHXB<A* z>l+YefBsH?PXA$PWVUg5D%&4x<4}V{$=!I2xdSW>?+IMcC)@>%I+H!Rb%nR{jNPa~ z_v@Zv>^jc>Xn5B>ixZZ*x#d}o-SP~>@T$BVcxGjAZf9dR>hM;1W#U{`381d>N+&FJ zvj){X*6?Z`-!IvpQFG%L4f0e;sqPids(UHHqUuNp0TzV~YI=2IHN9d%gRAEp&4EWQ z6n({HGYjHAhQJ>Sfj`E+5m=((2?YLx3%u|0*T1Zp*x@|75dv4|>`TnomrzFH$V=Sy z1U8eD6?+9me8uN%=k}|cx4Sa@fYJ?7qsqrt*NoZflu)j%t~y~Ur0js;jsp+w{Os5w zVr9pa>q<AKTZEC0@oc1{Qs{J~V+X?079qoN9LsQ|5K(0LJK7T6%hBYL$7G8rldVqa z##Yy!u-TZbLC92mXmU9sA;?ijRWUZb%C5HJi{@1DK;8iPyCmSDPNi0XKZ;WWo6S~4 zWKnWBke3`z9eOLy_klANqy}APBC`XN>;#kSz$D;2Ov(mbWc1IMarK$<AgMXJ$+Pv) z=vpw1PC1p+pdVndgz0o$nNCObbrL&2x-?+sG*2TLs;o2^vPP#It!Q)|2uoz>AuBzX z)u!XiC(R3MK_{IuQ{JKs{#$Ql(Rk|}LfDKc){J3$#k_GH%78G(hn@fI#Hh{o`xUy( zmR5~!3}{h~`82v@!e(N#0!>r#f!K1le_!GLh#!;4Q82JaJ+$<MdG<ujZBl7Zmtewz zJzgk2?8S=@Z&`M*!?{;+yNv8nC$|<-(h4bQ!Cl}y?8ychB&C>HEi!N1O+Bcv$5fR) zbs$0~h|nS3OIK6g1Yn3>I*JN8Tr51{*X6gnE4`TU#1n*gLPmTny1InTn2c;z-4uK% zkg)Xk6Ls#MnoVPZtW1gVLrXthBi@T2URDM+BgUEqK;i);aTbU>Y=Qg^Tl?tTpQ6UD zB0Fl}v3jiL2SxMKDY+PaU>LCAu|L}T^Y#xHj!JtuxEk#jh3=?U$4{4zCL;wweF#g# z3V^5sxTs5|l^opfn}Mbe#;2Q|LBM6Olxu4KBV$4wFZW4#2IL}e+adc9?<sTmk(E3s z&_zcS!m}|uEm4YuDn}Odgv&>jM3p);c=rQ)!@dNI`jW44&heUOIuQCZC`0UbUV0Q; zvAase7kPD}u&zFCE-L3tg>~VC&2++w6@^X|<yPSH$D?NWuyaDq%@njS6rr$Cgu<{( zz-E%fB`HX<D7Ur6V3UjSw|Hl@edn9&U1oKjMe$WY6ZR@VDL3#cpgLi(D851V&zk@; zZL@A)=$duJ={t2y>dw2cZUzX*=4w?K)C1=kQ#Od9soTFx?5}g1e{HeMPPSJImhGh& z*laA(z(Tv{W1*hU?`hqvd@|5=aGMlRk!N<4z+5W<X3(rH0p0?O_92)ZA$)c`u<0_$ zdVH@TiVm92)^ac#<scnuT@H^L152x5d6<s!+;sew@bdny%j4H7y_iX+9Lz>JNJr_W z5n;)kmWSym&rL^Ku_?84+3dP1F)B;LbhBBQPVp<lV4Q&^V#2}jaL&^9-5!44<<C0g zF+nv=hg1!UR!ygfwHj<Hu+&RUh^r=7wwJR@bo_Sv{2LaAR1Jz&O{bh`R>J}aY&Ilo zbTJhlTG(sB38<x`H=~9Pj@Ex0loO<MXy&&3W*fnNvsLy_zuA@|Y-a1N*$o^a+~8OI zZsUsIZGOcs!ft&1HqkZ%j1;PCs|~6v*@#D3ZSW{7uo;C`s9G`wAF|ihm8_O*-f({@ zy2+zK)o{PKnoe<`t6{AM78+Co8dO8kpiV`%Ui7%zKp_L{R)tm_?5-}@T^;NO&cp6( z@QLO@?ckU%ZExpp&f80U^ip5+QXjnlOT9!w^pU)m8*hI6u6K>WG#i9Brm|$VeF~dx zubi*Uw(m(;VoA3BRF-W|%lgE8dos3H)*eMSvb)h#SDQ7}MRIj+idg|{W@xNfGt7!+ zd{*f1p1=0no-;&^yz(^FbwX3c-))Kk0_W*w3c4Wyg|tg`bspW6!U)2ZQ#TR~Jgc$> zp33sxz%zufnc`TnM%YL+;v0$it#hx;_TEBKXwi+zo1=CprG@uqX^tMXizh5~a}3`e z<FC=qnSXK5sTv-?zo$-`jn@EX<E4bxZSZshu&|tVUgMaZ7x~Q3p1*h-{Pd~V8IiS6 zy`HAJ6!1ckQd3MbV2Lly!QSSay(i1>J)7F-#&!$r?TA^|QMle6;d%p`bz{w9FhgVb z4DEvNyXfd7rMk_Zo3FRgSd7yjaczY+y_Br`Bd#?Gi<xi?Nj1k@lhHo(%-7{2&ODk8 zg7VCyj_@iw3a_%G4zJJXGDZ8&m`R=aO#13Y*-6!tD@Pg!r1GT`oSRO<8|;Kh0BklO zT)M?1h~bmK`{MMRtO2DGERoS2%RzVHvv)^7z=Dh(AfpE-V@I}q)T+$JeT`(O4pVoG zqPrMHcL)MlBBLkx+LJp>!xEWW^$oKqIa$m_wVMQJegZ^9`j&vH4J^&YzUZbe@8-tH z!UgV~aJXvhM%Dg1&Jpa6vtl;yIF}+Ub(7=Vhvhiaw(9KYrsvY@ZMb9XM&)e+^esUY zQb>SV2bQ`?gjOc%=n($oyq4BStgn2FZt{qD02FQjm_nl(fcXt9c$*B~CUf3Cc{#@M zTABIpEVWMuW79EiYM-u4BP`kvMf;(={iBIFK_?nMp)(j^Qq*CbwN7AXt(D#3S?f-O zCE1*}9>>mG(+vD%w)dmmiJg2baAOFxY>066hrnS6mbfttnl_AUTANKQ{^!G){Va_p z16q~=F3@N)&=0T}%@~Yk3?EI^)e*(-m1vh?9F1y{GQogMonn$Qp(?=AXeR6Mp0AFo z`=vgwRpN(g+sXTo&2<($k1XLAW<mFXrEX@To0+_utR|fYE^D9St#m^Rw3;I@9`$U; zi+Z->QO_3GEXrZcCZV3~B&ui2CgU~C$@y!7u4UcNL=+pfm{wLX160+`hHI8BT(fNK z(SRi`&xbb6=U!@|`Rg4&O`j2uZu00{HpZ4MT#;-@4p?w`9*oR9ewnCX{fs-=L4WSC zz@F}bU0L@)W&hMY5T+qeW={{iQ{N+yRDZ$Y)jzGcR>UMvSRGA{T_nq~Qw~FO?7|64 zqj_K##va&3pquVrXXmb3F{<Z#)(;m1om{+>h0(>UE@82LXt921`TF6}Yu09;8+Aqc zo0%u|&Nhs_gEvK5_s+IBVM$O{b_vYNjs#_6R}~);RM_-p<NMi{kFvm_Y-|s+;S^Gb z+3<jXB?bBluIX1g$|GGn)@jQWkAkK<RW%w=Iv|;q4oK(yln#g`ECf|HU;--}KsRJO z-F`@D+{k;NQD4;Qkbys)0V|};rmln~4vz(qW4Y%V|5e-8UL&S0v!pLJ?orIfy#w#Z z#=SOSL53X?2kqQx8GDm)yYnWeLcdtx#$wFG#bRAujCB)O;>J>NV=3oGR+n1L>FzE| z56`ZI6SYz}Q7hp@0ZZMi!5>+}wZGj~>)zJum+w@lF%$M#2>YxM_E`uUSQ7RH+XQyO zmV|v7Zu4dCHjnB(Y+7=GN&Xgww;tAFy|5PRF*|`Jx;DaEY~<ErRMQ@n%hwJ|!KCa$ zY0k-%`%)p)ko#hKVK>kB!FcYYwsL}i>$yq?Ce4G5`*YJA=qM_$RzhC__h3utLt@0% zdgGsEzuCHL@Sm2Xy&In8Zs9ubhLr&p(%uW}u$NnhuO?P`@=4Mvlc<lnqJ&r_vJm9X zlhTD)VaI4C=aQDjn=_^Pn={Q;&-`Qh{()<ZTve^ZAz1%IBJ6WWSCO#9)nkzMF)r=o z-9y~By||u+ZiJJn+ThK$DQvT?;u>zY?Mc|oNwsD_+NR?(64KrQY470D{-ol8!518F z9kRrpLlE~NA?`zPuz&@7j(|N!ID7UrpJsQXN#JWELF%|V!KQVxQ*2EqyW)h+2(n^b zU~9UNt;yXRar@^}7b?#;vPVtQIfNk8ArXW+gqSF>#Ga#wCmhw$IsMRI*9AKIEud@x zv7)Hm%)^#%p4jru!<G+NvJea0Cb0!>S?DIIaPZ>=^PDKxM=Y3XHz(nmofNLwNvIC6 zM9mpcbB0sXzR95*rM`>|SGu98sq$u~Q#c+dtj<+urc*Fsv#DvtzH|!3hpO5aE7Nti zu3L|0=qAtlb{%55F8to>x(LETL^mO#n_NVN?q0Otvil*eZ+Y53ft7iJK1hY1Amj)v z+CM}4XS{vv58pMfQoF9O{uqUtak|Z^6x#+msr5FeK*CZWXFF=ZZ|61OkLT`*EcCFw zmyxHc@qPlHJ`p^90-gd(JbezHKIc5`)jRTBWY|#`3*EedlDrX1(HpD>z*091o*Cnw z+0co-FMfZjoQV&w&gzTK<Jd)KB~S69a|&Upo6F8q*=1+i2v?7o{p-`gw@7XCu-2Nc zI_j0^l(inB)*H4GHYfsZ!;3%<dvUGs$iXiuyIA(jto1lX(<|YBYduyZy`0TutIuY( zdI}C4bxr$im1a{pbOW{Lj+wY%c*Hh|9f4sW2_3PGC2STPux2M<6i#rXa1uu0BsU8A zgR39fw(-z$OT%)~cV$j`#U*k=jcZ_`F)kRE3m;bS)YcK!O_tTj6E~a?7{w+8D$DDH z!1{!R_mUYH!!iS@CR_g>p03%j{xEG@^YFBga}!p`SqV@Ta;{2P{PDuhNvyDQ3ffol zeNdv|!<^>|Gt3sm9Jro2;vx2&{2_$RERr>Qn1291xMI%!z;FNHZmPqY-+PX#(cIP& zK{v70y@@Lx#NV5)We5v`Ze!bfn{Rs`_xLk-^Z!@gcYsxSZ0*t!A;|8C8?Xft6%`30 zDiV7^R3sKeu%MzMg1uKnMJz#ri4}Y7y|>tnHI~E}OKj0ZjV8eo%cu8U^9|qLd-nGH zzd7gL|K8`G=YhOO_RL<hX3bh_X4YDxS`jM~MB8~q4HV!_^#cB;dVwaGu%MKdY5GXZ zG_*r&vVT(X({pv*(2Xc7@%BjXwU^l%Z;yvu?ZxYd&UhZJvpsEXs(0?66yC1om+$c} zr=gDfG+xJj8tS+M^BJ0sI_}e19rxu`Ywj$)utuP1K*~~fHRedJ#$3h^SK}zc!hqcH zuWm+quwYHIv<9QT_M#k8(f#*9s<01F74|`@FtE^#A5w+=SgP=hYxQ4Obo}XWbYmqi zJ`hwNFZm?W$19F7pB^KG)yRbPd$s2D!`$CWn8;8@Qyw`$<yCTgXn9o(VS$VasvN0; zifl$qt1<S6T&@fT6*3`IE~h9rlxnwHR?8t$Ek5xf*`t_$>jD8v`Y0<l%_7Myi`0E^ z{%GmIf3u{nTvOMg>Pu1almC7ODRm;x?7t|g+X&Ywjr^$q520rMx!n8f-Q!JU^^kd; z&;w+Qhlus;J#26~?w68ST0k|MVPs~XG2KZu5Z}o}pW>}lQN#3s$`|q=7o}9gKYJw; zY_KdBL-$i3z(%D~gJoh)10~$%AHRoJG&@E08mj8Nq^i0oOa`GEx}sOq`du5|W9qC= zT4O#%4ORnIr3SYuHL&o31*040l`DmL(Q!tDzM-WueDt|RVgZG!TzEF{ik2GSnPAe# z4WKxH`GRkR1>cA*_<8foEjf}Exz$95qK{j6)t6e}@dj$%!YhQZKt?O*omNcmT#m`T z9d+4}2S1aYQCx^LJW-$KE^iFd+!F~~*cp2%-8~mSG@7zU%ecq?SneAWHH!La3#PQ? zOlb?I01MQ#15?^Drkq|mX4Ao^?)>(|!pL;OfI7ia)1W$eg%cLESP}-6#0GWF@NQPE z$%CKU;%z6dWVDrodpd!~z?`?8!Q0M^x1E|My?B1;1y9`~GL+GD@*0CCnVbw1%=5|= zMw96ErIhGJCk5HToocsCymi?IQ+kvdA@wLF-%0l<)rYXqO)mt&^<qJA-)-yO?n3hp zBhU>NBby=a7nMWcZ#ksE5>Lt@sRh`=FGAr*B((&vq?R4`ogJdCO{PtSD7I&e-J~-{ z`JncUF_y4E%sJx->6{UJu6GH)t~=9b`(6s?;@v3n(x7CH)S#qnH5-&1MOf&jG5*@P zB+1LvM|JdTovJ#b8!K~{jSJCiej%ET3sGP`Lo;w8I)hz^R;|82*6>%hO>>#7j+2tr zvLBJGu1}b^@2O6cdaCL4W5471sCVjF*JYksi2d8*Y0}%`ve>^Zo=8{_dpn4|9TWS% zH;&b`DOQitA*_bc9m3ij)|w`#yH_2;oQxh2v>r^*KF<m2+InoWP!l(mEm~i%5mH|- zSwi|kUV#N}rg`N_Y3#}HQQy9uxV4if#eQN^%q64~UX$vC=QP-=`6!IAu(#>_Q8lSE zdrG5Gso1DyFI$$fHJE`|eFORG8;G}HfcansV=#l+U|v0QyA`r;J>924PAwMiNO(dc zxhFId3Jq9TykoI=$Fjw{VB5kHzZSe250;uj)ak86qnU{_`wKf}u`E3VCWr=&2fL>a z#NSMT(N=G&ewZctkJKF^i};^-iq+&`6vd_giD>jc{VKzP5qjn~h`SRF!zXvX8$AA! z4XK;xl_E{VRFJ$(^y)xZkh(1F*Rt4tt>PlPFY2zGM)JZ{fntHCc{P-#Va}<WX<ng( zg>GizOJ=h9E}Nl$kP>}@JXb+@-3^(jmz~XeaYz0hupqpi$ZhasxeWo|%yMqqXtd4a z&{X7Yr$P}BHK}U6r=%`Q9Z!QoNMj0N(WoV7d&CrkfeNdYJPj6X8n<B6un2&;@K1;E zPiMlvp+)-hYoo^ppgn}26pF%(wKySJTU-uvU0Xbuu%J-Z<Md%YJ0*G1;ZV2Y&v9|2 z@Kmup)1VNhafL7q3ISN)=?o}@8B8Hu`M%%lc~3UcnGL5#(bAWZ<#m~7d0lpFOjw}i zDt3=oY4`XpVy)+kyQ_E8)L1cPHZ;O)t`TNKBLH)zd;z9>!I<)Ka{JfYwe5G?7|m?2 zZfGLgoY^qLz`|(qF`9ffn$kPlKAS#y|9x9z%)`9Q<9nld(6+#wj0GTL0V5-O=Cc+T zJQiixAY&;=Sjy#nDdZhkAY%pOeFc;E_(A8VRZT6Jj&4Z5$xq7xnI4csSv>O%spac( zHA497azoftW2f-C+$r|D+$mi#Lhok!pK+f0Ea@Zpb-6QmUG5BfU2anosr{Yq4ySAl ze+@))4HwNdm<?b){B;=qIyU^4+GfAiPidNBWB6+zQ){?Pt$|Dd3&UTJSy<0z;p6*r zD!bI)Hd-FOxse%wu$2MMax}mI=VZcy8!`lc9pX$8{mVZKAO7Oqfnl}=vj+p&!{>4j z<`S3>W*-K#j}4|<Qg%Q?`x!Rf<_Wk}n!s<BCg__J=Iyie)ub$a7`{KgX{$LY+rC~8 ziKeOJ;r?Nv?@tB5lYw0;m+to8NClt-*7xMDTBZX0g#>`VSSkRaLM0VoQ@Qk!b=Ive z!HJ_aXF;KuYHRs{z@e2(53XGLzd@`VbC^L%LM$$kE$)heAN;g3Rp}QQ`H!Dgwk-Ky z^tAFbFz6Y3TA9$_%G1iz$IWcLYP^PaVHgED8;XW2fd@ECAmX3YeF^0K09!a44w4Gl z0*H9V`4~rt6+YWw&du%@RYOf3Dw;PzlOQE%<lD*wO*CPP4siv5%*G^^VB2!LVY<)p zK;>B?p3TKxzh+Wqet<#}NW7<fFaC+Z|Ho&Li-XO$(N~zkS6+0yK}hnN!Tpik@khU_ z-J%pfnzz_)*{P~YcB(Komv*YsgarlVpu#DxDiurnz^mFFOBZ}R1T)C}5k(~IRL#*; zj*+xeMG&^?2ClX$3*D5PSo`|+TUAfXf?%;V=!<lLzHai?ps!mZVZnCxbIX<bxzP@1 zZ(*M+&!$#={@&-tG`YB!{gRE$Ni&Ra(Q{*(`I4(<3HnH|o3Ted>wDYRT6lK&q^leh zcG5MFFjsbGU4x~wuAyju<#BwoZ|~RTIW86+xeK`9qLQ1tsDcO!94W5qBNbQCne880 z$=j>>m%J-8mN=qZ*By6CM{=BeGJo8u3t@{JAP4C*66H=)qMUTbDFQ!q6Q4ePgF~Bh z_BO}mg0e#{yzG#Rsv%)Mu3{=wDp7So`_K`?j8zZ5p`8YwX=SZ?B6`b{*Q)eXH6<*J zOQpi%XH|>B)Fpqo^wYR&@=ROEogOl$SIM`2dQ|{nVaa<#?!1}Y9iP>)-mN{KeIru? z?kG1)sdz#=^&@#Fnu-SifdvP)-$%owejkxxe6a3l?6wf~YV^X?G5S%?gUW*s<srhP z(aNhr2y>nUfF}WrC&xRrTGDE7pCB}6Iwh&-2v0sAw798ecEjxNw1xT%m(|!siD!f0 zueg;eYWSbsOYu`y<*>IRs}A;I`!O3Qwg2Y9plMU3<fj^N8fef_nQB6%bVYSsD+Haj z+h6Ce8765`b^t~!G^0wsUok?X0SnSpT9qP|R#5<PGyArsXBQ8uWlIi>SQkc>Y>14I z2VgD-evkt{CI{0ld^fYlj2XTrG88RXUNsD&BS%}6#}@(%WK>Y)<063a@72X()g!hy zt8I&n5G>IUzC=SHn!uclP>>PI$QaY2&xEgU4I?tF#CZv>YM1cq-X*y11?KIS;ktGi zyRL1~Z}l)YyFO+%K^aDfDjQ!ZN6>|+Mi3U3_$R7d=@S)c;idCtc@_(;Gah6>l1X(b zn&Pl4p8j@~uO<(>#uK(sUG~xuSA<Wv(nctB-TYBIrYsyJGu2{ucM9bjPZ{L3dCCw< zSg;A_4Be!220U~9F8jV$<&mYeQ*ALN#wA*cagon_V-T|h%$d^4C0%OeLYIP<4#aOO zearI`nG6f3r#`G(eas7~i24vWU}0_>s>VqTnS~qQ^oDQyO|$rp+hR2B@XTmCH`(5{ zb1O|)U`j`~RH>sIMLT@k@Ojo}s{`o1)@q7(A!u_K58B-29z>XrW;afice~RW+^kMH z)!J<DFv>I<Wx+JX2%7Q*(-aE^SQt$-<Tsivm^rzN@0=WQv7V_LWr~}shM=h&Owttk z8d&J21#Z4tu$!;Fm!^Ezu6fB~=ti_DvG%D_to;DS+gSSq!h*nkhKtG1*u~_W*t&OD zp9}obj44WV*g9>Tv<`)PXpYut>l5Zo*?{+GH?a3;oA>qUaAR#SMTc22btA&MHuA8p zjR@-k=IuA57TjhHrFRV<S<+{Fo9kvwRn|>YteK`*;PmxPAq>D)+{gzvX!(zfY&7X& z)gQ`(iXtZ!KI#BDd<lD{_v}RY2R?KslKgM)M9gxa6f*zuPQ>zRsc0wCOXVf?Qc>9- zLVZ+4_d(|pP#q+@)D&6%EL4o6bE4#k4KZ=t(K&{&pc`DUF?L}a;|~3+%no=p`xrQG z!D%1!Q%}>_gk2tqtZ1i^ojxELe~`DN7WbFd+3D>uruM2JjE+zTRZ({OnDkqx5ADn$ zc@&pLC9h#pC0vKl=qlkH1z1=X!MNB7W*0k)v?n97gU=k|@}!Kz=C->?ii9!JKF{VD z@dti6DVB_~+;%5pWXUSZz$es08RLcxwHB3WJN2=du+xsrB<=6pvlS8gA$zv}3uT>; z+vc7v6`V>{(VmS^e^t?*?PS1|j1>iKsHB4IZgPIHJ#Kk(nPtwV@>koc!It<I9a3-! zmet`uIHaIbbVQ|zgg_?#sLSvHH_vbcg`##vdSMXwGDsB)4iOrv=!NXe_UjWC#JieF zm5GM`LWSbY>3{Yxhe<Z5_@}J0eV8*I3>wc=D4|S+RlVy)9X@d5{v=t2TKF}s;j^~p zK5J{(d|<(7wS`G*%Z%2v7PthMH;}rqvYk1qSSg2R_T<330Oq!HhAK^(!9tv7)b3U- zqkM*~Yu`t>Q+&kl6d$P@5*Bpb6FeRML`|_tot6)q@l}o&k-=4_VuEv2S@>o-DlZ4l z39!)3Oc?2ztTb<E_q&f$^JZ7G3P0=U+Fa`BDj#Nabd4m;gPY>v(#E^emi^ZjtFCI= z9FT0W;wHkiZt`%gn;PUHYKn@E-_sbSdz!Ln|NP>#5x&2Cv(q#qif^{Zt)aBXO?G(q zxP=lHW@MjRh_ufw9NnyIu&whS=^E~7T1;#n*q*17&r<TRVFwmiF$b)e!&q_qaMy+# zjx?qFd@=&?;uUJ<W0O8#CExALS5+n~P*Z?&i~@F!@wn~u^QV6uWad6Ap5lBJ@+cr` zWXtAbhXpKjvk23+h<S=V{?6ETCV%5CTf9v~X~;xp`3^i0F^Rxj%(~!^ybCK28MrHT zd2Yh!jc6~*$9#Ord~9B1GDZ;=n6e1czKBWtys|HTU*B&X?U1abeHkQt8TX%;A)pVK zld%G9U%{l^Z)%)&cEJ~BmR%9kWtf*`*jW)7%MdvREReAhWUORlRC|@>GICs7x;VpV zEZm<J*gvgsm6^K2wHsk!GqKWjgtXF?;tFav_~q%dTIH#19A}C$#cNgJ(pr@qWxQ4u zNLZj|Bc^yGo8l#(Y;9a+UF$SkOj)anLtEMXUJH={=1f@+rmSa78S>*ZmA3ZvU=taN zh^)nj)^dSe3xNd|$k>3Br48(4X?Om^^+V=fEcL#_zqOd-wJQ1WZ!N?Qm>>RaP|Zgl zbojTW>gwLJkNi|<gOsh<=xya2@U56;V1bk!AY}(5<@E0Bb2|rBUxaS3cCd7m#NBGx zY*#}97R_?C63K*xYnu?{qJ*%FxGhu5S5YU_u40R?VY=2*m`>h$hUp>+bG}CCLZt{@ z1P1e>*tO3mRBb_0!dI}u*RkHo(pc|4jEu3~afF4XH^Dncn&3_0iIduWnRj{Kb=uBb z$$Y8?x4hUD(Qr~VxaHLpZ8_7B^peJsUXIQ??viu6XKNc|?8VgX<ubn)G7l_}aX>Xg zI-tq}85t!;J{v!Ftt+|_Wj@r9Duo*4y<(^#fv_O+VTNH+n1PP`K5f)^!HQ*@sT<A| zrBvc}{~&3*e>FCk?fyQ51!{Kr=S#c%X|LuLpbuX-rt%G2OgREMKZ0XWV#*P0q=EU| z9D_I?V=}+{(U$MC502*&LfTcCn<EgiBmBVWh$@<}K*n(}<v3%?v+HST{;en6wDfld zrzNu&2IW&oTctDL6q$V}usu79#DOF$oxwr_*&P))Bs%~9N6X#ONg&Y>*#1M@Myr~E z$}wWekMJ-cdjgh_Q7Lox+15@|y0vXw{e7zA2zKsA;6}(Z+LJI>9miEmFcn`zA{Ldq z=24^jCo618#MiL=Uu$IZ{k0~9FqeqcSSG94GC7<uWoVbJOX+-Gv{0w<)u*`!a~d8D zu%LR*!EB#nX8VDA?}K~yW>T!T)oQ(j`-e-gQZ$T9Q0l;(j2|GFKQO^Oxpef$F@Nl} zGm)VP<|XLzOI(*<!Vx5}K*nVddRayO*w;%AG{67-+gIp@FEhooT!Z&;je8H*;5`5f z@_iGg<t8&Ny_fB%RAt@S;WoN?1MBn#RM24Fz}x~0-Po!7NOo%S%vQa9{J6*92RtUi z!d_Ow3ow-oA*`E91|wlXcT|DysKRtd#PpcnPwpP1b0%?$?n0B@<(lj+G#RkKoBOcd z_nGx}UYFxG<JPMYrfwA8Jc8MM#Ley_%n-29%^%>+AB;C^e{cJ}rtJnFbYnHsYL^ap z$|;eJO6}5^FrR5Ho^#T&=bRSjp6qwLmg6>C?Q7!glA4~fq}22bB+T1~dk&JqS?%45 zakU(h2K4^bGz>*j9zmQQakKphW*b--#uM1eC(Ksr8}HrlRrlvd<!+cF<dK#+s1}^# zGmZ@+#|KHkKI4R&oS8oP(o7%H$HUfMkDr;)k{<|}TighjG${guCOL_4=|WhrxRLm4 zBx6a>E-O8@);Ue#7FI0Ha0!(%a7Il1WVn<i%vmx3-!Q<1PFIJzU7P5g*MlssRr{w9 z`=?y&pW^Zln74lpZars<uS4_bafkYP_q4&%J%||D<0Y%0JxJ~W7FfC;K{NYV(9HbO zx4$Vq%)Y;kZZc4GH$y8&^k!(o2@Bl})CNfdwbd}1sX5hM8~j%Ai>=YTfgX6H>cY73 z2DT2EkLE2#^OlV!W5!eCN4^z)m&w4KD9<R=bq|*6x`(pXb=^x77G^dI<prWxd4c|O zK0VRn;#4Y*$u)^0W<5OOr5+wK5j{Mb6BblJFOM9lmj`(<RnC3iw*0ahHt$A;qLk@S zUdnW+cWc6YFvGpmq~YE)wX14GuPs-9wAtEM$na2ClRVV&`Mrm_G+}|Ko_KY{Q%(2f zZ8kU1KI)~V>rc_;R;wc<wOU?tYIP7{p&LCEnw}}NW=mQ%D5&}KSyML(HEMM_nhs&S zRja!Y7P`@?r${<ArA5zeT)gy%P7kk`x>1~=T%4}w+RMA<T>Bw}g>Jq;hUynALv{Xd z8;^NDJ!JFx%tsw5`C#)-%f?4tnK0+A5nFqsny!|s&fA<&_uR}VkYTlKmLTbUiHp1u zS%OqhVBUTymhDouY+I~<;D0mAqq;l{Qt!%Ld6sh@DGQlw^z~WJ@q{hZyMr{%ISoIU zVkrk%Y&k58&2wVMntk?Or4VC2OA32^)EzJeS+n}6n-UiI;tTfrGWMSFa=7C5Ym2YY z4Mdlb#Z_BFq^~w~kv-Oi(9^&cO36WLhS4>n(Miprbegkd`Zr&Ey!M7Vjx@Gte|*#f zK#IJt@IkIBuoYRkAdBwj)IUbQ_Vr$R#KbOTbhkYlOSe%ZlGt_I6QwjgqXl-|MHSAw zRE1Oe1=VzaVbydOhwe<h{la)19a_y_pgKVc<jJ#v>gI&``~_kDgV_9gp8V);nZ0L8 z48<iL2uTj)Z}$XZ6#)xNyb^M6E3w?$N1Y;fpXu$?)WjZTT;W)v;e3gPV~GL_?1@0< z5p0Qmb$Wkf!2C(0&7%sFl3Lq&d$SnA5xNLz1TPFULRXeBKM5MEi;>3a;=o~NW4vST zxCTxpN|bGWICv1QmJgD`vEqTPC>aMzC@SVVzaN%7+<Y*{7GHbeC9_`G>(fm2!c8hL z=W8E?qV!>*DDD+JE;kA_{AeOWaWo?F)sbA;L_*mB3uM%XvZ>FM&Dn$79(>cIx6Lfz zNOe23O<-h1VwnSTGNLfOQEYlE=-*EJuGvvqp5pY*^G%lK`O5pydA^7w^%eJ_3-IFO z0`}tLs~7i1<?lRUmc^(rHBz08Z=S`e7(rMV&8O;I=~E{C`Z={Pl%F%Gz(kG0l&#QJ zTe+^<stzVB2-{9|inLQrAp`0qfqlofO7=AIR-tCBN4hlDL)O4!VV-~mYQ}ralE!;b z8t~+0F4f(R)}R9+&KrfAAdfmykcYgt4)Ul>SfHkgM<1z*2RXQP=N{TscK^7>CTbMX zZw!Uim@BNtP*}hMHO-)~nlXhnyHDABe^orh1F9{~{Nf-iacVi7A`YtwSfHi@c+-LL zrqMTF4(i;=j`Wl`;dM)fNOenwvze+}vMgbtn|dXCO7%*Tt-S4aH_vr#N(FgP7HWN- zW2Q9EF`IQW4-aJkTj(jg`Qw;|AF|wa=Zrpo!ST^;8@y3_b(7S%MWaQeMnE*Mz#APx zadj*dx7($W4+CyiA_u@q$;Dv>#Bn7ThXoGIS3x_hf_7{bBt(x)t9^e;U0dz_aY^mZ zFRA@;Ne#@~m%+<2W!TFyo&Q{s@$uL-G{quQ<DewtxRQ*69s?Gb+8#=>JyVhu-N!hO zbMIhhiwuKvL&@MQZ&MA<A%r;@CGqM`NoTt2Zs*)Be{K44icx_Lf=yGLIwyT7YLdwg zvXef5u;A3W>VqX$eJFbQ<L95N{`ky5u^m>-Ou!0E0266a64W7tITeXuW+G#z;}>(o z?tT##DN{j$suZ~1<Xd0b<SU=PZ1N2uEX?UvUo353BI9U5@SdwFt+nVz<Y@wyOoCdz zMov(pM3`Dk;7tNglNe9iWd1pQ)uiWhP2DKEAOSWxK|O{KCWWvtHA#4TE{VN8H~Qxn zs~0r7X_N<rF*UH`?t-t=7|GWull9_@=s#eAwPl@BrLs;GA>uizPrHCcOIMj#qiB?5 zbvP2UWM3*-9Y|PUO$wBL3RC)zC%ZL@{ie)JQ#Xohm<)Z9j3S3LLCF{&u+U8}Xxm;) z+xC5vyKU~_YI|*TlL|*Ql{>1ba8!YXZu+B}{;Zor>T=io4m&SHH=>#xgaHlWN_!BL zHn70qVNguNm|`m1dQaIuib>z08!NFJ1mPM4GH6tTpeKR3*bPC#$`F>YQhM`{oqCP` z3p58Aawkc>!$QrIwXKfZ=$kA)^db4$_?q|SYbW=nN8H&Zyyau=L#qEz<!f8K{`9{o zU%L#lw9BwUxP(4d^0o6zd|54_=B?Q#5mAcbg`vDh7%%S;hVmZ3f{28pI9zxMGRVeG zVcEvhN9LHiQRIFQWPXr3k4p%i(otJIrGvFRl&$6IL5t4*{bXmJjc!Ik=0|aDJqp?y zSfFMsx*5y5Y4hXDnod8BTwzOKe{cv#B|3RE|KNZcO%6pnqaRVL?neiTp<CE8W_9IF zJzk@|xZTWzGRWl0AQQ>}SXh2jpbVxkWzf~n@!E|8jiXH6C``$OGRWl0AQQ>}Sm<Ul zR`F!Eisv<MF>d>j7CUT>=B_$cx(io@mfv0Y8o+${-NW*`$Ch998OMGtzO&9mnGB0# zye;|;(iXkEE!(1RN?33Rw&PLt?d(x?!)L8_ob(RB$##)4Q4&D&)Pp3vX3D6@gZ2j& z=4KAG{v4+De;OVAZRe=H-AznU6zwwbb{XgGGVm5yV9M9v?bnRAgIixHrcQA>Z;L4n zN_Id-uRN*-B^wjwOlgGoR~xbSS2vXRsoJvYXga0gs!^GnYml^ST+*&V(tw50{0vF^ znMvB6{kuCXj2IYXi;Tm#_&)3^Up5`a<u@=V;~4fD$JkzDOS!`9%LeocvDJPVF7lT_ zz0%w+Lrx$tZ@&U_yMoPam(KS~?0SgkavQ2S*0qZii^8(hKGrpcFmL}EzW+1!{j;x) z^!>B`TQd<=Z18LMDbj0q*<QVNA4XW14GCp=BvzJZ<KJ6$t?^PVHgQvtjjfQ4tz0&? zLN<T}Ztj3=>|nA{tlq?xiJiV8N#&EGbh8(};$H46?nN~zV4<4>=;i?H=JS3xbVGI9 zJE9wL`5u9Y9pNH&1R@434C(~T-U(**j--}b++zBQJGOXRsOumV>SPfs)HNo|dHVtv zi7(hi;<!~U5BzfD<OEyoFJWFUakF^|W)qmV{{eIR1Do5mE7z4CP;mRQ4Q^ZlQ!jC* zUIJ5r1#VmhH!d@7wD$FU^vkbb-Lpl;HHg(Ud_9TCHEd6SIT<%V#tlYBualRY({FEI zg7)AhsSia&mZQexa-?8V^W{j?1QyiCDtuxURiS)$(D9_l<Xh{X*%-|=%<VNkx7RSY zz`|&L#%O+KquF?FzIN8CUS>g~ioF_8VhT!}$^tt8m&L$BH-llX1~Ys0@wqi|)sA-` zCJ%}{VP#Nv5gl_E-$#SG3snFth{%2HneVH~>@`~3ugscRg>+(J<rzJ~S-~TIR`3X- z2F!W;7`%PVc)KrY;Ni+%Sx-z%QIz3RH4eUcCh$|700Il6`5VgcZ>9`~e&1n#?)2^a z-p^t*4s;l4pUXz$V2}7>d$B%{GoG4vW>3w>cTa!Rcg2DAwnmeU7cH_4@<uk>5KNel zW+o!ZXBz0{{KvxmBP(4QGtO4~r!Z1a`F{E-HpIZZ{c~{RIpfC7AsJ6Xo2V|@YX1P| zM-TY<(F0u|Vcz};7TgoI;0C9!Uo&;v_8KN`D%<&|IOu!I5Bi=$)PMzUzQB~fU?P@s zdzX6Am|e5qbCQ*)9U~=b<y}RhwkKhJlGR0<D|OM*S)qT%f}o#2JMIWdxCT<h>nXnH zDQr85*Hc&-U_rcIz`DF()}`j`<eF1kp0wkR^T3qBJ$vGXd(=4^Mp>Zdi8AC^Tl}5Z z8u)L#>VRJ5E{j5&*)t7A!t~*_bI?-g!PZ;UmrHs{mrGJ^3ZW|{zvLNqEwUY>0-{#z zvn2#?u$<oT)08*Zv;cD<cncwV%Y>+0Q1a86S6bRq{!W^3<gUrCpOYq#u)z9anm$r7 zR{U#Q$F=L+#(iF1o<R$zX_sT1v<o$NX$E)U@ljww>+QuU%3gMga%$j(%tzNBpO8h8 zsTsaGy`vu_-N744)XN=xPr?>w+4j;seLjBZnyy!?^A*w-q*9$LIfAwOkU{AKlhRWl z1m>?HTK-Y4<jM9?_`Dpuz+2f%Kb7{v4?P4Zqh!whsZUF<XnXVZI4*K>>wf7yG7wKc zI4qQX1HLufENqrU&*tX>@vbwXBg_knnt#@;$H2h8R27N6_ea8FR%NtN8>%vT((7bX z2mC%&l)|*R>TmuxeMfw6T4BmscS3N06S545vrc$$7Fd{OSIrcpEz(ua;F4E9sj}PG z%nm5scxc*59vb<K)<e^nu+U8jbW?(L^K$*GB^NI|Ei_T1toK;l2*vUnp;+7q0Sn!H zh8v;J*o{!Vx}Tq|9+ExgeE}67nh_vl92=R3rVC*nP*DPjm?c;u=GxP9{w`>B*;|%4 z3&AzwLdfVMUn&`0f(Z*T{{FaJ@pqvuP;9XpSNx9c7%O)}CPiV47QEGh65_8`lT299 zr3T~}8(5C9^Tq4GZEm;j!TUy}MOvv=vyk^ShA<zIL9+yXP>4v6q)&Wi4Le4+c2-8# zsHra*HL?R^)F53=Q{=$-K??j>h{*ZIo0{YgDRh00KF`o~kur3$o1CG;J+H1O*XILu zS<*lq#buQ7>%7~!M_;NR0tsf!;LCUd9yOg{kcDl60d<h^sOju8l}jG@JA0et0m+pz zQ4S>2FbchRMAlrru(~ttZmkBAi-%2eQ5~0<nv0sWz+AQEA@(hgC7QkIu}b|S{I6GN zFZ#8Ov=LGxt$YjG2v^a-f|NDIt94DabbR+HB5uQs)p3n%bW>gvCY48U8c|VR6F^w# zCJ-7jkZH&RKh4YwtFhE91X=N2%G!rXW$oo|%Gw7I7P<+r?;{1+(;57(ygU78Z7&!u zv)1BF@&*QULo53nH?-9V3xalAn<m}X(sA{gl<O}mG)^bpSn;;JCKe-+H_7ESQG_{f z10W;;Oh~d9RE_G|bJ#U=y*H@GfV8dyhNt%L)w{crPE^O1=Cl5!b)G7ZuM+=5X`@9^ zW7at%)G@xFUT$PMHc)JC{r`*dP_4}{Q?Is-v(>*+GAjR{(xI}5yQg#=P%%(0Uq^ld z<9J0SUTiiD`s|X?uq}l0OSa>-MgL{907KC0F($!NbV_+mDyBu=NtB1u1r{Wxf+kC< zprOV1>R5xlow}WGSoFnMj!OD*Wle-s8B<IGTp1=Fm``;uraG8Sb)!xh&#Pa~p`%`~ z)k3v}f`m|wd><T&G77+g#MRW~NHsMS8sR<t`L@yV={rrMQFMMNJ`{?id7>gzGm5Y< znwoe$x+Z%)dR5gq$G`b}6gl0X#zJ2&(BcwL3!fd`EP$s8Ea>Y3?JTK4OFI$Wh0jMM z-Co($M2)f<8^Y~r$lacX;0drmO;arDrfgCF-uFc4{Dt*fqMM>+q~rvyEY(<ASxQz> zD@%nE=Db}~%1>HTsyxVO`D516uOAKXWY%7pn><wnLg(eV$x{Uq=I!$l{F2XtU)+yZ zv+H<tRvBCEqoJ6hq3?+u(TJJ_=IvuJw=ryP1J5q*H*e(TttK`oA{GsM9?k7}H0(LB zz=l?^=dGAMzZO`3k>AUG$IuNI5rvy^;AEUeHllHwV8VikbO1LyFm9#~&Hc)~nP#b} z8-<!U7|}RxMB`vYfrW0`!-%$LM%4e(nmT^pI{axGlyYt3hj+pJ_`6_!zI6x-gDQi| zoHD-Qn47~X@w=za8`=xq6wR$NH~uAYeO6Moqy8nU5$3!tgCnyt?8vPAeU}X_)U5Kj zxT!hokSU#YkS`X`It(H#ka6B&hIHN`4`iezZkTt`zU>7?o8W<G<{10<ut<S8xCC+B zC5Y3EA<SKZ_HYT>Gnb(EuN5<zT*{%lajT&m_fC+GBQ%M`<hXZp!h9&-A}r}!7M4`Y z?db*ew6JQn+9yE761Yo|0G9%ow@-waB{DIqx1!yOWos6vyl)H%aMBW>u!x2PO;5sn z3`rP65*tI{`gyh9bo$xsVqTH4WUSa^zG9QHVu1yArf5>66b;>|@A7S4Ji+l59f<H* zQO?X#A@QkP;!`2<z(P0uL1TZWRQrE&zG2+5F)3yoQ5Jr#vAL9Ml!GsFjp2kjNAiuO zrF>%m$f#OrX>Mb?(Pkd7a-N#1!HtzhzSvKN*9vS!#w?IQYOGbIUq@8j{^GS&Cei6q zank8h@}}!F6cI4@($1FZCY>!sIqQ9vMz+nIbtKDd42pnH!`Z<!o$O0Y(*+aeW0<82 zmuBfA(cbIv{Tk_I7U!cqU-b$r2VuDm;>&dqmMgHZT!%vE4`qg7glhB0BmJuHk-M=t zFnfuIx?eiUviZ^}ny{eJC8uGM<U}F&s_w}ZbJzTM&;~W5FsY+po=Ch#p~?@iK+RZC zGnP@)zHGuGeWy*7hrkD=Ow1@u$|#s8xf@)mXvBl=u`p9(nVG7)dRpuGZ9g-MvsQSM z2`!kZk;4)*HGYJJ`OU%-$kI@7!i+2KbwB@W59uJ$g*}ZrCZ|=h(|B4HKv?MJI|T85 z$AWlu-%dI6_pTa`Ox-Ah%EZ#m)X1TlnOH}_LN{4hoLL%*6iQal(~fy|a3s31QX|>O zV9(|m?AcHWz+7N*payc78i?HccExwP$@aF|7ocqcq@9>s0Gfb#`z2_<gtbr0Z(e&! ztNPc_p3jY9A0`#=CQT}y!kSMi9!pr5;;iB$q^#nUkTi09?2GFsGU+ZvoZ<o)kphi; z`BngB3M_Q96zX=VW+A${+^X-5GF5(9hi>@XDAa5O$s75WdLy>fzyedZKmfLA=oD~! z6aSk#^E_-88r_H;=tjN+-RM%8FlWjp1nzBOVTt804t_q*=pSw(L-DKXV=rBw@1^Tw zFAXe^(Fl9#Mr<#gHKN3=cZYhAC&HPcsMmu~tp~XYKM3Ik7MOArqdCe(qe;CUaCYVJ z24*J`F^zBl;)5SMJ$}4`>jx(|+0*YRyK3#Kr90Wv?<l(_O`CLcvZvoscFhu+4RNxk z-%)nC^>gug`W<DL*DepAr{7U_YnraX=jnHp-MWNz_&ohaxvz;sXZ&6#y`Rkk{L?60 zaoSzB+o#>D5#|g%gW?ruSn-OHD&MUc<D83w6IN1w5K?-OOX)#KDKKw;7}I^2)oD2K zc1T$M@jP-rI46~*zs^5ZTIVmj?d$v#2n(Ft=$|8P^e2D$Vb>vTM?|Jkf~6H1-(rD% z%Wdwru(`mTj8h=v6eDAH`F6GT{<dfinp@=IP^ou|Loo9son+dFS)PGHwyk0Vl=PhB zB>Y+4Y0>@(mE9}S28Xp_$5Ta{p`y*vfB9cIuV3CPeRyL|1C6;T=RG|+@E@f0m=$#| zs=4};2aW(e*byMm4UeKK5jR(F3|unq_a5&#FF6mTdY(Hc=QX7Xb4z>?f4Qh3OZuW~ zmHSP;=;Xyk##DcD;Gq5kdJLw`G%~hjBahQQS+H0QO7jo!B9!BpTNtl5O7Z%#*i^>r zixCovP$uZ%w&|N{;X}kM%IcQ2^kZ9sb{Q_wW$qGPh6(`Yf_4oF#n)Iu@r_>=PdIn_ z`_=Cm|7GkCFGH1*V!w=~1I)*N1zWx=8an@f_xT@#TtbJ%aM580MqXZQ99L0V?5dNz z3%cqQMA+i=*g?91GGsSc8M0gW>@8M?tVFl1b#}h%6!RXMZi0@RFtS9`O{^nePSb7B zbeqvMZTz9P-@CSV=G+ENibDJYJLW&&AX4)`u>639Wn2g~S*W4Yqo3C&ZkRc1_9k20 zeF=`f)W|VtFOjeX%(?px+<nKm8}ifCt7nHUKJcEAyu>J8;xK?nc?mNP%t!JXBYDk6 z61=3!u*2D7w#(eL*uXn#n@Wya+4?&oQ3F`85Y9Lqb7qMeU7~fL9D6Z<4zR2glCM5W z^3}^6@zn<t<|8Sq50T31X+M<_vHNZF(Z@6<G8Beh!vWYeegJk22VlSg88>kNc9R`| zH6OOsxNg*uAS;(wr45x-IM*XqsI-BEIV&_;KS`sd{dR?z{yX-!Tl|%Y2E}IU-Qp#^ zo9uw-kpvGc(BSQsBYC@#Za(akd}UPZ4JwfV6)&IWr}r4pZ}6ZVayF!`vLZ>QPw-U8 z4wkj8(Uq77DObwCEd>6?PQ4iC>FDSK3tWT`>{(RL(~OM34(KPa!3USipx#K&6UE4y ztVmZ5(nf<9eyE-Zp)H1@tA~-rXV==1vpLb0+_dmY#2W_5Y|dKXX#`*{H!V>Ywk4|z zJ1@OmOzQfo6oqLecZUu2rNai<o*y<;Bh1?$HKa>N4MQ+l!QOqA?hE;a4xT`-h4`x= z`YJ@l$|4g<SXjs!h`)x3f2Ad=Hlqzy%(JeP9pAoE$<jX5`lo*Om5L?I$@r#J9qF4= z^+Cp{O#LI5jhWl5<kp~#lnh$=gv6jlJgl}Mm)nv!#44$!eZaSUJf~NV)V;+RL|@Y% zXS)7~-=**N*CrAc<hCppMp-TSnn{kGgD=+kI!I;(ZMBpXmYXPVaFdrexQSQVfQ7Br zFDP^H3oCQ5IAnNO$0I}ga`CrtAmCky_pBCww{|cvDgVmBz@JSHhGhsM9ngNbkAU-& zqQlq^Zwv>6Xy7CNkNX%;;8{HJpj%!-g^G{yX8hG=iQkqoyQNi*w9Z21o#j^<XCbY? z!u(%=gj`^!{#C=q{qT6jeX_G)D>G^QUZyv8^}UhdPg2wy4^aaP_cEzC1xVGAN!!$_ zy)@vbDWT}aYC%@e){!b8ww(H@0BV5wN~j1Kt;k}`=PWx=xZ_D9Tj$ypwC&I&fj4hV zSQtzYggJ-_bH<k)>+X-prUl8@wPH`IVo6oyOR6d^a)5<(T?5_JVBOT%Fu7)%v0u+X zH&|NcJaIRKqcFY96L&)pVIdy6grSdA!a&zDO(Sk!@Y5xkT{-tlH@mRKst7i_2$3xY zUY#`iNMJv?z;or&>1G9~WqqHN)NOF@)Iq(|l6rT=6P1I}GDC2@<@#8p94fNPJ|805 zvg>Z%LpQPuY@wuo;2I;dz>QQtZWwAidP%h%BO%m;A{_@5-JK7~S8eW|GpMKqc(0s4 z)r1VygmXf2R1<euz+8@ML5^xMIoj3t(fmDio5b2`9|H-9;Svy|txTA=kJB2ZI4xDe z$$5M~pmlJ(-+NrE7;P6clbysEkOIv0a%%*xv}S=Tjb8@ba<WgMz!j^dP^gcT3h@Fi z4WUq9nJ_2enLb^5rYGC<$(&U6>j_y=XwUV!vU%_2Jxl84ozI&0Lfva%VJY;%U;B7d zz{BySF^|X0J$VV;h)W?6sv(hI3MPV)z`|1KiUrb@-E>NZDeHEZ|HQ%8XcDn16SeXg zTB5c&VLqDfU}$&7&=oZvof|r(*X8#xv=^A!ODp@Ty<mBPIYWDcp}iSH&pqqi{m3`B zm)RJ}Q18abnU(KThI)q)7Dh7CyNfi^yC)d(cR#PPM@tQjvof|B7;FaCK21u77WviM zP)@@@IEe$9llW2iksVh*n?A#;@lbfkLm^nycqoJlm^U7dp$%u2I{VKW-b;KxvAJ#c zR7Ij{u`Cgus>*~p54}|Jk{7G4y5XQ&)uR2$qgG!&7F3Vr?(JB(x4`_%$Aj|mjPh<i zOUveUZM@qgPKtZm7*+Ed<M|z;y)p7<fCX`Cp^uST=;Oe>xF@TxPi)-8)ry8m82lu@ zswTlz0p>JJ1_LHD25f7*WAKPpdu=jcl0$?v$wA)CO>zh%%o#8lw;+=pDD`Jd^OGSb zcKzPgmJm)t_R=IQOB%!^EJ<MAekyFuROY9(SRa4A-Qu9ZCJ9n_FbS$-l2(qyn50c6 zEJ)B4ZGbdITNz|bEIr|mHWM{#Y>~0vGgDgcDPP~L_Z&c&ld%!msvB9h>d%jTdhFZM z>#>Q9qLuw>&?`p5tK?VW*GqQ!l4M6K`e_s0n>T(_vTc3+bQsC$+(=HxYyk7GpQ%lk zW@<^XM4xDA*j{a$%^Z{kXuE(f<po&Ez`Xq;v|q&9w?9^RD1Ys>Xj|XE9N)Pd?PwO3 zLkfU-`;}<FlC^i!b?UUYaFt5FtoqchSTVMn-==LXZ3Fq#bQ>lRc)J|-u~VBP?bOod zYSp?5H7`lmCkaiDqS;YC>Z8yez`W@RXpa+2d))cG@XwCF?QCO4wc?{s!&6w(jPeQb zG~CVrbE;<;>qs+<<fGSkso9g^nspZKp^hysm$UVK@LW|oqdZ$5PuSud0`JD_1Mw4# zZVYYQKVCNP`|Q;IX}wCbUlb0c)iM^Gg%F<QLU<Ok47^ij!Fet2{IqoEr}eM&?)jt4 z9Ge~d04Dsvr|$>w5SVvx1sz;r9elUqUO}Ij#wRck+0j!9mtWQ62^hV6Wq(zlOjvOA zZXku>21{Y6HC@&5PKkvL<X$XpW_CI!-~ngZ9PD(CCM;|h_M-mjURM9K-kOJtQsxaB zB6F2CU`0zon&~|ZKl0(wOz#xJf>z3fk;`R9Zp^XQJre&8;rlrB(yAzN?V?X(>7tKp z87}(ZP|YV=7}I4G_PFdbfTp<0nR=<qLVt$AHmjpfhoXMw4q8zq^duY~QcRxh`sr5t zmZE0qRGrndZTa`lMP(Pw{B-r7zOG0`Gs#IKf1@Jy{zZ=7KRa?YxqC&&q`zyuq~Eo{ z@b(D(sVzDNNb{85%x(YaN@6_uN&@%IH;q<*w~h`X_m&-q&^i@QP5wWg1tqAc5X>*s z(oT}l3vJP9b(JeqyjMM~@eI=d&A>Q4LYRvG>cP?EfBoR-znBi?8*Sth{<F<I-;a|R zqVwc`^t1pZiFG5d3v|QR#fNO6*u94N-GymkC{yCD^OD@zv!jGc=<@hJXnIn_!2_O~ zj+;%1*^JQpc;<V@A|9H5<X@~0eEhx3LwNy~O^3yy-anWPVxmPK|3E{@eTWlb&eso| z6dTh}5zMcsqwOf6D#|MlL7z^%b;GdZo=u~B4+i(1R`wq5!TSK_M)x;uzVw@xe72Q4 z+xoxUUiGW@Y=2JZqNEc#`HcJoQZj(K^L$1Zg9pLL^A4H%bMu^@-4DN~i!j{))L@j2 zcbG1oFz+H<H$@89QHb`Ys<T(t-q?Pk$=WK%BJW)5OYdCeP4zq15W<4BwJ#Pb*%zau z!e3KAE-?Odj&3oncD9i?EQ;iZMUlDy!rYZ=faH<}EV<<6$%9|7?0Mthdq&a(qiCX& z4Sy3|7s7lb%`lQ?Y$RDtJRZgDpF=V0w6<aKm643XNJjCIjKWBO1@~htDwm9PC5!Ld z%2(gi)lqL^h~j>P;DS7aUyz63f*e?2$S1fU|AbwTpYr{+!M*3-`YHAchcHMkVOMiZ zjbfdeXJyMqO#G0I7=Pu1W_|sO0RQMlblN`6Yg&B={LU#lOxga&>`C29G@}qatNH2x z`RbsPkGVVO>JaAhm7qiA10CJYT<~7t8=F2+ZQ_!$Z5oW?D1&|FxR=4cJqZh38j4R0 zW#v<@k2Egt6E$nfd#1gEE*;-4$2N69P9QL!_IL!3$Ftz^-di0f_BQ@%GuW&PB(DpX zye^PDU_O!_7)cK{64#fj{T@}>YBNe@BEEB?E|Gch6R{S7dHc!ec`^%Y8n|yu=?iUc zerb!7y}`xaSa`I5>8-0zn78kT@9)RH|LLVKx}V%TG865|mOyM3PL}ZQi8ssS6Oa<# z?Fd_JK<WLmG5E<u;UkU^&@ek@<i?m2<@cG}2PJnYEOc0iAbE;~u=tRv{3e`P%PW2& zQ#2AqHQMpFf9vAO>>)Wza!lDPEHe5-jv2{HSe79#x`X-+0o1>h#LB>LFX>UqBCn^j zX5yFIBW~@tA>H06W9;oJYa(yg6vBdZm&9L7x?)b=eK+algGuW(UF4~?*bq5lyW{9A zcjM@sLRip9uK0v2+YnuE;kxwa;tPMaC1HngVt5#5H6&q&ad!&LCG4mkH(Kn}@I+S4 zPwQ3OHts!(tTz@|Z=JkedqdcP`6BC!Mb?)svd{ktKE0vJm*d~l#YEi*tc`JeopdA2 zyO^ZQktXSApT2Wc?Q$<SeSE_t=Zbn>fTghjxgj)&1y~rs7IKadFBpmfW+;Aq^u-eI z$Y@H}hcC}o3%`@7UMyCsUQEtIs9vlgVd4C}MzJiZMllL<?>KeEALs7`UVqPc7GNw3 zFnF1u6vBKwi!h!=Y&@fn?2QeG`24U;h{ZP5-g|^(k26?mZjXY-z!oy%AUS%E!p{V( zTaK`9AHC_^;&O?3$TqiD$;+X9mh0p#>vHe{m{0R+D5BL&5ozo`8s0Ia)I$@46-9Ca zZ`Pc!mmPr<_T2~z3_b<3cFLaSDP`#}@8bJ+c)o`<%XKOE_B1xO<+|2{IcrveH7glw z7JRy_Pxt)VzVGQ`J(5k=!@D8&tVgjjVBW<RSe`A+v#BAKDM+r|c`xU#9OCk!@2jS> z6O>JOUv(3EUv-nN7@>C$5A}MuxR{-<{J!cIDCjNhebt%S?uk`?YjEW~bf1S*oaa(; z9&7;SbYH~KFS4QkxUisNoYO3`C_lw}c!EH(C+>3a#1r>$!WL42;1Kr-_?d!9$jR9| zG|?{4tQ%#qtn`kOR^n`%xVO@~8eyTEH82}%yy+hJ_e0;dXxG_oi%BGuZswqiIsABh z4vxox1(BGC<MDayczkE;jpgIYj{C-zWZu@rO1EJqiJaS*RA4Td_aLYD*qWVEYh|TC zrvy)#3=7Y!5dK9WmOnKw)Zx}cS6|SB&vn(L=ejVAW|84mO5KUyOnuMv6ha9VawSx# z>qeMQ&olUl&zO&RwBXw<Ax9&-zo(1WX!aU2OVqs9H7CrwkkEz1y2w8{wbB-!@b0#l zaT$T}mvJsd?JuKdCopHm6$Hm$VZrh7{TrM~y}RO#t@cj()~HY=pLaUpJ_wk%F9zLS zjK#(HJum5Z)Tz@vTkZGaUSKaTfVx-JlrV3<UzH~9XE`7dy{kU7KYpo?t@a-J2+0Gn zIYhq)&L@F+dlkN4#lC;#-HQ1on_XQ09v13wSg6y>hE1pMLYTAApwE&FdeXj6S6v-g ztk&Y?W+W)*uJ*p&Bzs?(h4#L!33C#hkbvRjOXsdbU$0U1PaM?zJtX+z<zHXD+=VY} zBQPhyA0+rQ5_;au9#Er!Q!%SMivSE1Wz-o90`viddE-Dmibm?Y;rj<?EpE`R{LU`i z!y>1B5P9RcYb9se#tvNk2s<Q{?`>HgG5KKlj9DjvCWpr?I5s+ty!rZG^|2qV@716v zt$0)Z=Z~lT9+3}*(gByb4;cVP1n6ab9iZ<(SU8BTh>5Pq4x$&l+812+m$7JWZGnRI zaZ)f2vPm?85ex{-=OqM}l_B~N@a0U`Rx_{GdtyL)49J3vV2}{3m%~ni^@)UqbzU80 zRA*##@87l3+ZP+Si6_gd6rs57ISS=JCon2*d!`Z=l;2&?SttdX4{9c~{IlHI3suHh zO>r2eIE+tm7^WDQPjNV=IGjzf!=apNkG7Ab(_^dsQ5bH%!oUt<MVP)0Va|#Oup)x7 zV$I@GbuQOhM!OQhO$kFbdYE2z>ccQ0z=E4n3!JFMIN{Miw{=s~rE6t|5+{^E{JDtU zn~NZNB4RG$MS%tVJzq0Hny(>ia;?d$QX?nlRJ7tmV|_K;?1iyT8tcmw=A3AOe{G?! zgT{_t!{$vtxzT1EUn}UUR^S;C(F&d@Fy};D^xRfYTKl)UcCiBj{pf-ZoUqv6w1SJ; zN-uBkT0vI;3$qyuhQ>06zKSpYJfgb#h1D36a5<A?lyzp3u|8owhOWkBsjIOMXjm|= z#7Fh3?V{@`PJ?0x?-Yxa?!a55A>1hzOjw}dmttYkFU5!zw`MHZwsmLK`=)Lb<6Z}W z)OC0UOC4me01MsJL$XIbmh3VAkzMU0ZVf4fgtk)VtF=80KznWg+Cvco3$vO4;Y(oG zt}m~yZ~xc0j?>VMm56r1q;%mApm%`^1m+WyjEPBR6LbB$@I&9XZc0~<TxlrLU2mPU zq_>FhBBs1`9zs}98jdJ0?#RlE|8}5OE!F2|pIS{!3ce|Y3s(w+3z$z#Km2PyCS1+) zw$>?FI?w#xQn3W1jRU07M%if{ZR|prk72BFiZs?pr&n&C{;e*4w&8cvj3_>D3Wl8m zcG4J9VAp_!8R-XB_G7G^S=g)B@>lZ~$}?i2xN;$*xm-qbA)~;8;`##1^$WIKH>KXY z{o_x!YucKT49sc<Un&_`D!_a+gTbf4Y)0xfazAJ6+A+n7l@lNe6L`Gr1brxB&dN-X zl&Pl}h6kC^N6Nq6mioS=xi_jWQ4oD0<HsA-7{WYh?wx9h^o~6jaU=NU$l>8X`N({* zkjx3-!34d$OPl}|1}sSCB&^j*Y^~Pqwe!xIl_lJ5@!_t0gml+lb}{bS2NLFdxMx2| zx@S*!`n!gADp4hH{wU!}cb_&@+NYJ%A@<=u9++S0euFFBZ`hUYa-V&<C0<oHV)oUF zKpjNw+Jn4y?Lm(q!u+cbd8A2)JO<&bJ*(VJ+wS{od8;YN2HUeCMkG$zm~mh}1v!}2 z9A-3(C$DeVd?#;?iG7NGXyiRXYJ|t;sd*#s0fa5s=O8t~L-kF(;T{zsYzY&5hYZu4 z$USK`8YSc@7Xp>b1u7Q;1<Xg2kBP`<6Oqz&`jnfSHc|!@*L#X3E$~c`3OwZ-*#Z>T z1{RjbVp!6}%#to^Ice&hp9k=8LJR+W4Op^<dyH%JL4*ZOu>rPjgPu-Sd-^*sR2_=5 znSHzk-tHERg7~uq^aJzJY{LTF#?CS3-)yq^!5?K;m`0;4_JUHwq=Hhi*I7_1g|IN1 zCHTaWQk40(Y@T7@zMExF$g^az*c}acrqhtjsBkpknNEY%Go6MU$;CkXWV>Zc#tis) zI)ycIXGgIqd%%!Ae7Wwy>IN2c#sRFL1A5w`Et&3Mh}vDOrQ8iIIYnm5q9S)$wQSkS zs-p;7$P9`|sK?=la_!!(N$YocX769njg>Lj11Z_VjlmvhMPSa`ec<gr#@nw#k0vMH zpK5-JsjQnMV=AnwyzY{W@q~H%uEuOw*jf1gS@rbYzgSR@p7m4?sO73QCa2iuaks^X z{)^-8!Mv}3aojD}vuWwo5{G&%y<&=vyFYtADWpNmrn60xrHIZRD7HOZvF*XM01K0~ z9}y1wS%gE%;E-3p3|n8_)QvJ(d-Su=G@psi9zCAL(C1rqlaFrb<|lm7fbsE3dua=Y zWr-<Q$`yCO=~oAw=+H9gpes*Ua1J}^f~8I@uJ-ke3I%gr!;B_klrbHKhkY2)8r02U zSUF&Um}3~zF*c@6p3m-{oi(~My0Ma+6aLMm6aKOdJ>eftn9ux4|1{~OKWWUxn>v5} zcH`hvCNdPB9L8SoFy9Lv#y$ktii~`aK|BdKKkfQq&o4icy8%y>I>T|!DDv$rA9%!} z05q@=uF(-kr5)K(X)&)d!ygCk)ychBtfpxWvC=dL`JiH&Lw&-+YMSm4Crx*V2QfNz z{+F$eP3mHcCto=<mcDY3kK(>^2qnyUGT)({G~Xcs?T_{=Y_x7}+ex<CUxcQ+$Ti(X zXgXlt{(J0^zSk2^x2`Ckbfwt~I)ApBlR9ouQXMy$9d+D-3G?=K-O{AGZq$D0+QHku zzd4lNKHwgvGAE00W3b3OlZnP697+HSY*>O2nk6iR=G!;Fwz}CNcs{xj<n$D_Pp2>t z60lQH`@n*no<jiCIX%TXU&ue#rFGsnqvc*K=A^Sjn$#JgeAG>6heX1H+D>wqA|*MH ztEV3O)3lA-65<qMlo+K`urQ|(rz8`TNLV1|tUg;ht0z5GFR<gi$gK<8p%*L8Ud8tI zD*P$x=PJsz0&~t@$IM)3GZWu+cuLyVxhk0oG9C(NAL2_MLJLsyhx!qO1ylGK`r$E? zcKf`<<zI}yxB%UVTY%BV9Jso<teersQG|sF8fzQ__m?gh-le;_%)OX4(?pG8gC4># zKjen_A!Z0zpymnK_JkScpGthcc6V>-r8PCL;$Ja-ylVbRe8onx%R%rVS;CC)>}ks* zmf4}X6;B_+OL@q>l!uUdV9wLuVS9dOwx{An&ts(~@1hV)?xiTBsN_{2uSqv$%&6oQ zLRb)xs$OYQRWB0yy94&Q)VHg^-2)4|{t(~wkUQ}YF~h(DGaf@9K9&pd-o0^Y#o{$| zz9-uC*Wl-CZr5MKt^*7D>>UiqJ7(8?K0oYsAY`A-(y^<YqNG($@)BO<6ik>iWet)O z*HCieyO(Yc%0H`lXs9iwz6L{IbA$dG1|68UmoQL?F*Rwzw}<xE?`$(7)6vinu8n+Y z<Y)*X%-cH~(j{k>2KA-xK-=U!M{OqGXW&XTLnk|H891~B=Iw{Tehp#QnrBl}H!t0j zCz&Qyu}*GCFmcn$tKJPMNWj9RdT0YA4;EMJUa_FXsEr3)O|zk_H%9}m&<wKA=V-tc znnAQKE{1$KYh+zIckt|yv#<s^Yh1(>YJ9xLNj_d#OvHS=(g_RH_<GHieAydTsXNbn zm2mn29~2h9qJ!M=+M~Nc)<N#@B7p@R<Y~y3JPo9SuEvZCNqu^sZ(7ZJ(HPoE8iRbE zqA@fjEcBvBFM8HX)2v(5=X)1!wlSpjo-qhAmd}RPdqxr#hO`L}=4_$|bKcE+dGhQ0 zs-L!!8O-z<zfUWLuPSAb^;s#yD8ho>^#gzX7=QajRmohpLfQchz}!E}SJMN`LnTQ? znEg4>`pI;fA=~%MEPvemetGZ*-vbY{cmupf$UlGBn)g(c)HSd-=nmvLEJ=9PI!P6V zi)BLHR8x5D*0Tkr7BoMWNC~A@sxs6Ni$_9b2PM=HMVPOua6_0BZm5IV>O1myVEnjt z+vQ2O*olSWL!pK`OpZeh0fYq|R})LUrh%e2F8=m)%<HP!k4@bu%b|`TPO4*&&w1-W zPXG(uL}J}VvZn`AORkLY&c4;v)@WKFpr!?X3aAC10s`ivi9vbn7*-y;c*Ev@v<aw8 zK`5fCjloD_4D!8Di~$Kb2Jv2~4Mx+3jiyXwVZx{JhX>jsBL)nO!FnX49Ajuqn3E9; ze#J7TP91zS+UZ%NpKP^%<`^kGLlshL|ID#6Vcz})UU+%oNXHd=`{BK`pDY|_t9_n2 z9`)K~pCS*Xpn-Y&eAHCUXEjx;eN;NBdsOor6C0G-h=EFp0l#JPyAc*FPHX(NHJgoV z8|=sS8`+e6Un|*a2YG6T;Zr~D48eps8J)m}PK*tc9{qGU@lcHz8)USDK(sT+qi6@i z0W6Tw0c3PwWOQFTtybweLu{rJq#GinbdW-1q#FVWb20{_%<*7W<~ZhV)p0Xg7ORI* zKq$C2QIe1;^4eB-;|No_G>bR2&Xu-`Gv&$B$^TZeG>-*UQanwB2L6+5X|cN^<w8{{ z<h1F<1}|x`fx;09Ei+_u&El|P@u-v~_ZAgtU=u$mBGgI)oBi2#b~%)pZ5@p4a#C~_ zk&+*fSIdHN<m_^D8vY5hin=0Fh+HMLd<8hO!a&-W&?+Uh{A2}pRp;fyp2?qwtyA{h zukf7RD;HTXU!igiuwZ!K;HAwsE)?qcx@+nBSu>9HFXFVB=n<=}BGb+PPNC3(X#PLM zXd1C1kpqh)at(OA#z3Ltgw`7-aEY{Q+oRJr!@n2+Zd>Ui7t~yGDK6VOm*P=`xgu~c z?kBkyr{W8J{%RievhTC$@@!eyx;&RuDUZKYnCFr}STIugn67*_T`l6~)V;SfZ!x-o zKEb3bK3g_yLpHY!+0bghf`gM|7$W7c;<CS;csHQJpW_bN8q6MO$30v-?t#|^%m=d% z?({z9PTxq@)IGoR^-Xy&ph7v`c;GxvdVu>D(uog{GY>3?-V<kR)ST%A)$Pi!fB5&W zV&=vwS2lYLGw{WEteZXXih%{6Z$G@X{mffS4nEg*dBznA)`j$0?350}`#fxrkA)8# zq6rI}J%$s|W9$U<X=eOay{a##Ge>ZiHuefNr$EUm!(2wqDMKb<VH0~6)SPA1RG)GG zhczQ!Rk6{{MYx?84f1vGMR?f2LN`C4n;&Es|IH!&h5;l0RyeH8^Ht2kRm>!D_$tN* zEO7V+#&m;?DPrHY1xa=MZ<|=7jOn~nj&$Bh-k6_v8bw%O%@5eU{lIo_SAPi0$vt_C zPRy-j{|?-mI}j5h=MIWc0CREq#gHcbVxYZj+cD{-{K{$!w%T8HLmHM_A9*-#v4na1 zpWTeo&u(SWzA$rE^u$5acUd#z4utg%7uGwNU|@k6_rQ#Mj2Y|KJuf-G<!TCX6P8XP zdMGsXWHc1QZv_^X&U47)b3-0z$@u8mowNI#V`W+_&VOFR*?i5N&DU@?fh~mAL6Wes zlMHFN72ycCB2m>pJyG+3J4F&&G1nepP4+yj$=(~$>E80`9EIF9$4_e(a>o#QI?!|Y zGsEdE8WU-X=Vg!RCwl}^(Ja{`lm}QK%@Nl)j^5a-<2OU-aP#Zm!oE>&*<g#b5+JLD zcP#6%gm(mCHg6Qg+ZsRZ&=W`Ksq7NhUS3CL6xtvy7EwmAJjy5*9Rdra#d)Voao$7F zAxG%YE@NS_KYxA0Pp)Vhl(FhTjUHiTG*-QL5MiN1Z|_9O+dCN@a)b_x{bJ`l?AR=l zQD_m14vk=*ku%ST!2t^$`hjJBjCmZP!#+WAlaBtH(8ScCat>7B5hfMj`i>|p@CYDm z(V@Mx6wgjBWzSA7UQ_0~r<**vBCwD*BLXvxJTTLUz)WC^ZX7_<DEv@hCP$zv#{Ih| zpADSq0=l@KQ_djDdB;oTFj%6i90Uy5LP0r5AA1kN54H(K2pvv7TbQlwd)3X<p)%0* z8030>N4XyFYXVzzXfJKTKsT|0HthGJ?499P-=Z6<br1w$3*y2Sgy{w5!d4mcQJD!F zM<D27dYK2C9%Y)xlqt7A8xUWyfyY;DFh&yQ>ShbdlWt+<Npmmk-njYm-|CwNq{vnf z#2|>rum>TA9oS+(4j^U>esG*wgh0@-yFJP+8GE9isY8Y3L72ZF+?5i`gCOU?Rvk`3 zS2#1qZ-&re<mw%PpZN4J6AFdG>fUvv>fZ8Jv$}U>!h%rLK+W44-iZ9dZ-&s}?X9j= z{!~vj3)@#HjKqf`d5PRe%mc7MVHBi4ib+35=&*0>+a5or4#_nQSrLlbI03EgB}b0d z_6jF#(V@Lm52v8@*ePiF=yzu_ew*;r)QvLGM$j3JaO6*%YvkR5uthg?2R#ZuB>fzL zuH$zieCl5uR2ChI%RCyKi{_k*2IqhU&c%QgF^qE@p~Ii*?%Q(Dd%2?x3Qzlvkxu){ zmlLOb(+FEoXfK^b>d0A^IudLMTC}j@K#F;@lKvMM-3zEJ8tDsI1Yj<+FERd?EDrPg zhG8dPR#|_}G%jTVqaml!pq!dVqdBnExO!q-xWC13hA^&G*-o1y^3|_xbQlZ1#v%fM zI*i3)02VrogJz2JM!8Y^W(XaoPMGDmO6yby12oUx!ye;3xyJ+lMeeb<nNyNp2Vz#) zE}Lcbh4NBe_{R@_ng&^oR(rC4nAI1G(>1=Y<LQ<Ek*vO=tYekVOH%15>zI%ZX+`hs z!Pj?x?Mj)_eMvw$lWZzN(GddCk+15GSk=H5vgsgo!m94XRy9YM!;z{_r#^Vxa0uoQ zwu7H$^iCVtW5A%E{GB1&`Lkx9G3C!%<>834`tKHiqv<oN{bo*tDIWDh5^#hLt#^;R z{k){zeo>eSLi_y2@R?Y(dF|1R8RzMR6jANCqkNh>FQ4X)!qvbQtI1ySER~NRI{5EY zvqHq5-o`rU#!5?c@s5$Yc+1D+U7*T<xsB|GzjX7C!)oLRGr6sSTkn$kN92%kFF;YO zU7%RIaK+jMss~sQjc!l?-I!wK2pt-){QkB=(B$5x5h@D57o4$PP&}kBdLhOiSQuen zsGYtn#((dODlhWxouNBGPM1>as}MyF3Vmdcv(N{D_CB!|bU`_y(7_8<=)g1hM0{R! zB@bJS>IKp7#YMjtyc}SzPJ3h2y_q_FQ`qwC)A-PdrqL+u>E%5HO-Aw2ps0_xm=M^< zI|rqS=q_=?y(<arrv;c<8)X6ZNAZXLy!b<Za2!}*$^hJ44`4Uf?Fu{|oVhmUQxj7Z zYKDT6p<EXag)Rmbm@)#?j9}Efz3P$@5Zr~NM-;-z7}R7wsL7ZNV1b%!bd$}x*|PUd z^At_b4z_qZ2Yj7_(a==SfolfLdHWT3`xWDDrR#qf^1jZt83wizbF-4q%}UG-FmJyK z?N_n(pSdn|Yk#~9If@Vw+V3k&HM(@bLq)QsG`ch;ES&6?M(OC%taNmZW%pLN8ETQ2 z$GM?&vl7*(R)YI9ij{ECfCX->#$Q*nxhbbMoOfN8nk7?1{<$LeJ0SBrpj)Y%9Y{(6 z7UpITob5d<DJA=(cg}4F@1AQKlrqH^T+^isuJVTef@>GT!k{j>W=oe`=`!y5Zo}s* z#%>yAqDJYaCMu`Y)XHZeHMP-%1!^KtWGRA`g}Wc%l`yn}u>jpz>6smvo*jIOcVLQv z`4sKK6zyVD6tJ+z7avWU+mmcPb-=R$iXxt1o6JwWZGGee3&L4e9I-UFT|eYjO)>iB z2Kzr+5Ke<Ka2i$+j*wm{2>19+t;SnFb+LKxa{x=>0C-K3big~DFz5L}@cba-`7ay3 zF&JleSk7&8QSSA7cuwY9{K)&$IEp%XPZ|eH%1-x6$2oqwS4L49$LY0x>z__($uGMt zcGPpAYUXgQH3wP?SdhiJP&ad#x`~YM<J{t}Y1d66t*p}n(4Pl*^v?k>0$Awg5Z37- zwoZrd@7C0{dmXO)*m(iJ89wEMARC`##@tgrtqBWfNN0U=rL#U?Vtrk_9n&PVN-&vC ztA$aeWUN#LuL;v6RVf)om`_qwJd0A5J&WS|S#a84gGxU_dr<{HcSx0<<5g*D{@fvf yu%L8aIb=z%9O#<c|IgH&eFn$U9UJdPQ98$AY>#tedmP3VSm@>y^!q6?w*L!}NslQ2 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h new file mode 100644 index 00000000..fac1f232 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h @@ -0,0 +1,689 @@ +/*===------------- avx512vlvbmi2intrin.h - VBMI2 intrinsics -----------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <avx512vlvbmi2intrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVX512VLVBMI2INTRIN_H +#define __AVX512VLVBMI2INTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vbmi2"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vbmi2"), __min_vector_width__(256))) + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_compress_epi16(__m128i __S, __mmask8 __U, __m128i __D) +{ + return (__m128i) __builtin_ia32_compresshi128_mask ((__v8hi) __D, + (__v8hi) __S, + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_compress_epi16(__mmask8 __U, __m128i __D) +{ + return (__m128i) __builtin_ia32_compresshi128_mask ((__v8hi) __D, + (__v8hi) _mm_setzero_si128(), + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_compress_epi8(__m128i __S, __mmask16 __U, __m128i __D) +{ + return (__m128i) __builtin_ia32_compressqi128_mask ((__v16qi) __D, + (__v16qi) __S, + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_compress_epi8(__mmask16 __U, __m128i __D) +{ + return (__m128i) __builtin_ia32_compressqi128_mask ((__v16qi) __D, + (__v16qi) _mm_setzero_si128(), + __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_compressstoreu_epi16(void *__P, __mmask8 __U, __m128i __D) +{ + __builtin_ia32_compressstorehi128_mask ((__v8hi *) __P, (__v8hi) __D, + __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_mask_compressstoreu_epi8(void *__P, __mmask16 __U, __m128i __D) +{ + __builtin_ia32_compressstoreqi128_mask ((__v16qi *) __P, (__v16qi) __D, + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_expand_epi16(__m128i __S, __mmask8 __U, __m128i __D) +{ + return (__m128i) __builtin_ia32_expandhi128_mask ((__v8hi) __D, + (__v8hi) __S, + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_expand_epi16(__mmask8 __U, __m128i __D) +{ + return (__m128i) __builtin_ia32_expandhi128_mask ((__v8hi) __D, + (__v8hi) _mm_setzero_si128(), + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_expand_epi8(__m128i __S, __mmask16 __U, __m128i __D) +{ + return (__m128i) __builtin_ia32_expandqi128_mask ((__v16qi) __D, + (__v16qi) __S, + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_expand_epi8(__mmask16 __U, __m128i __D) +{ + return (__m128i) __builtin_ia32_expandqi128_mask ((__v16qi) __D, + (__v16qi) _mm_setzero_si128(), + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_expandloadu_epi16(__m128i __S, __mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_expandloadhi128_mask ((const __v8hi *)__P, + (__v8hi) __S, + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_expandloadu_epi16(__mmask8 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_expandloadhi128_mask ((const __v8hi *)__P, + (__v8hi) _mm_setzero_si128(), + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_expandloadu_epi8(__m128i __S, __mmask16 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_expandloadqi128_mask ((const __v16qi *)__P, + (__v16qi) __S, + __U); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_expandloadu_epi8(__mmask16 __U, void const *__P) +{ + return (__m128i) __builtin_ia32_expandloadqi128_mask ((const __v16qi *)__P, + (__v16qi) _mm_setzero_si128(), + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_compress_epi16(__m256i __S, __mmask16 __U, __m256i __D) +{ + return (__m256i) __builtin_ia32_compresshi256_mask ((__v16hi) __D, + (__v16hi) __S, + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_compress_epi16(__mmask16 __U, __m256i __D) +{ + return (__m256i) __builtin_ia32_compresshi256_mask ((__v16hi) __D, + (__v16hi) _mm256_setzero_si256(), + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_compress_epi8(__m256i __S, __mmask32 __U, __m256i __D) +{ + return (__m256i) __builtin_ia32_compressqi256_mask ((__v32qi) __D, + (__v32qi) __S, + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_compress_epi8(__mmask32 __U, __m256i __D) +{ + return (__m256i) __builtin_ia32_compressqi256_mask ((__v32qi) __D, + (__v32qi) _mm256_setzero_si256(), + __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_compressstoreu_epi16(void *__P, __mmask16 __U, __m256i __D) +{ + __builtin_ia32_compressstorehi256_mask ((__v16hi *) __P, (__v16hi) __D, + __U); +} + +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_mask_compressstoreu_epi8(void *__P, __mmask32 __U, __m256i __D) +{ + __builtin_ia32_compressstoreqi256_mask ((__v32qi *) __P, (__v32qi) __D, + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_expand_epi16(__m256i __S, __mmask16 __U, __m256i __D) +{ + return (__m256i) __builtin_ia32_expandhi256_mask ((__v16hi) __D, + (__v16hi) __S, + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_expand_epi16(__mmask16 __U, __m256i __D) +{ + return (__m256i) __builtin_ia32_expandhi256_mask ((__v16hi) __D, + (__v16hi) _mm256_setzero_si256(), + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_expand_epi8(__m256i __S, __mmask32 __U, __m256i __D) +{ + return (__m256i) __builtin_ia32_expandqi256_mask ((__v32qi) __D, + (__v32qi) __S, + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_expand_epi8(__mmask32 __U, __m256i __D) +{ + return (__m256i) __builtin_ia32_expandqi256_mask ((__v32qi) __D, + (__v32qi) _mm256_setzero_si256(), + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_expandloadu_epi16(__m256i __S, __mmask16 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_expandloadhi256_mask ((const __v16hi *)__P, + (__v16hi) __S, + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_expandloadu_epi16(__mmask16 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_expandloadhi256_mask ((const __v16hi *)__P, + (__v16hi) _mm256_setzero_si256(), + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_expandloadu_epi8(__m256i __S, __mmask32 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_expandloadqi256_mask ((const __v32qi *)__P, + (__v32qi) __S, + __U); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_expandloadu_epi8(__mmask32 __U, void const *__P) +{ + return (__m256i) __builtin_ia32_expandloadqi256_mask ((const __v32qi *)__P, + (__v32qi) _mm256_setzero_si256(), + __U); +} + +#define _mm256_shldi_epi64(A, B, I) \ + ((__m256i)__builtin_ia32_vpshldq256((__v4di)(__m256i)(A), \ + (__v4di)(__m256i)(B), (int)(I))) + +#define _mm256_mask_shldi_epi64(S, U, A, B, I) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_shldi_epi64((A), (B), (I)), \ + (__v4di)(__m256i)(S))) + +#define _mm256_maskz_shldi_epi64(U, A, B, I) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_shldi_epi64((A), (B), (I)), \ + (__v4di)_mm256_setzero_si256())) + +#define _mm_shldi_epi64(A, B, I) \ + ((__m128i)__builtin_ia32_vpshldq128((__v2di)(__m128i)(A), \ + (__v2di)(__m128i)(B), (int)(I))) + +#define _mm_mask_shldi_epi64(S, U, A, B, I) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ + (__v2di)_mm_shldi_epi64((A), (B), (I)), \ + (__v2di)(__m128i)(S))) + +#define _mm_maskz_shldi_epi64(U, A, B, I) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ + (__v2di)_mm_shldi_epi64((A), (B), (I)), \ + (__v2di)_mm_setzero_si128())) + +#define _mm256_shldi_epi32(A, B, I) \ + ((__m256i)__builtin_ia32_vpshldd256((__v8si)(__m256i)(A), \ + (__v8si)(__m256i)(B), (int)(I))) + +#define _mm256_mask_shldi_epi32(S, U, A, B, I) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_shldi_epi32((A), (B), (I)), \ + (__v8si)(__m256i)(S))) + +#define _mm256_maskz_shldi_epi32(U, A, B, I) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_shldi_epi32((A), (B), (I)), \ + (__v8si)_mm256_setzero_si256())) + +#define _mm_shldi_epi32(A, B, I) \ + ((__m128i)__builtin_ia32_vpshldd128((__v4si)(__m128i)(A), \ + (__v4si)(__m128i)(B), (int)(I))) + +#define _mm_mask_shldi_epi32(S, U, A, B, I) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ + (__v4si)_mm_shldi_epi32((A), (B), (I)), \ + (__v4si)(__m128i)(S))) + +#define _mm_maskz_shldi_epi32(U, A, B, I) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ + (__v4si)_mm_shldi_epi32((A), (B), (I)), \ + (__v4si)_mm_setzero_si128())) + +#define _mm256_shldi_epi16(A, B, I) \ + ((__m256i)__builtin_ia32_vpshldw256((__v16hi)(__m256i)(A), \ + (__v16hi)(__m256i)(B), (int)(I))) + +#define _mm256_mask_shldi_epi16(S, U, A, B, I) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_shldi_epi16((A), (B), (I)), \ + (__v16hi)(__m256i)(S))) + +#define _mm256_maskz_shldi_epi16(U, A, B, I) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_shldi_epi16((A), (B), (I)), \ + (__v16hi)_mm256_setzero_si256())) + +#define _mm_shldi_epi16(A, B, I) \ + ((__m128i)__builtin_ia32_vpshldw128((__v8hi)(__m128i)(A), \ + (__v8hi)(__m128i)(B), (int)(I))) + +#define _mm_mask_shldi_epi16(S, U, A, B, I) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_shldi_epi16((A), (B), (I)), \ + (__v8hi)(__m128i)(S))) + +#define _mm_maskz_shldi_epi16(U, A, B, I) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_shldi_epi16((A), (B), (I)), \ + (__v8hi)_mm_setzero_si128())) + +#define _mm256_shrdi_epi64(A, B, I) \ + ((__m256i)__builtin_ia32_vpshrdq256((__v4di)(__m256i)(A), \ + (__v4di)(__m256i)(B), (int)(I))) + +#define _mm256_mask_shrdi_epi64(S, U, A, B, I) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_shrdi_epi64((A), (B), (I)), \ + (__v4di)(__m256i)(S))) + +#define _mm256_maskz_shrdi_epi64(U, A, B, I) \ + ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ + (__v4di)_mm256_shrdi_epi64((A), (B), (I)), \ + (__v4di)_mm256_setzero_si256())) + +#define _mm_shrdi_epi64(A, B, I) \ + ((__m128i)__builtin_ia32_vpshrdq128((__v2di)(__m128i)(A), \ + (__v2di)(__m128i)(B), (int)(I))) + +#define _mm_mask_shrdi_epi64(S, U, A, B, I) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ + (__v2di)_mm_shrdi_epi64((A), (B), (I)), \ + (__v2di)(__m128i)(S))) + +#define _mm_maskz_shrdi_epi64(U, A, B, I) \ + ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ + (__v2di)_mm_shrdi_epi64((A), (B), (I)), \ + (__v2di)_mm_setzero_si128())) + +#define _mm256_shrdi_epi32(A, B, I) \ + ((__m256i)__builtin_ia32_vpshrdd256((__v8si)(__m256i)(A), \ + (__v8si)(__m256i)(B), (int)(I))) + +#define _mm256_mask_shrdi_epi32(S, U, A, B, I) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_shrdi_epi32((A), (B), (I)), \ + (__v8si)(__m256i)(S))) + +#define _mm256_maskz_shrdi_epi32(U, A, B, I) \ + ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ + (__v8si)_mm256_shrdi_epi32((A), (B), (I)), \ + (__v8si)_mm256_setzero_si256())) + +#define _mm_shrdi_epi32(A, B, I) \ + ((__m128i)__builtin_ia32_vpshrdd128((__v4si)(__m128i)(A), \ + (__v4si)(__m128i)(B), (int)(I))) + +#define _mm_mask_shrdi_epi32(S, U, A, B, I) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ + (__v4si)_mm_shrdi_epi32((A), (B), (I)), \ + (__v4si)(__m128i)(S))) + +#define _mm_maskz_shrdi_epi32(U, A, B, I) \ + ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ + (__v4si)_mm_shrdi_epi32((A), (B), (I)), \ + (__v4si)_mm_setzero_si128())) + +#define _mm256_shrdi_epi16(A, B, I) \ + ((__m256i)__builtin_ia32_vpshrdw256((__v16hi)(__m256i)(A), \ + (__v16hi)(__m256i)(B), (int)(I))) + +#define _mm256_mask_shrdi_epi16(S, U, A, B, I) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_shrdi_epi16((A), (B), (I)), \ + (__v16hi)(__m256i)(S))) + +#define _mm256_maskz_shrdi_epi16(U, A, B, I) \ + ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ + (__v16hi)_mm256_shrdi_epi16((A), (B), (I)), \ + (__v16hi)_mm256_setzero_si256())) + +#define _mm_shrdi_epi16(A, B, I) \ + ((__m128i)__builtin_ia32_vpshrdw128((__v8hi)(__m128i)(A), \ + (__v8hi)(__m128i)(B), (int)(I))) + +#define _mm_mask_shrdi_epi16(S, U, A, B, I) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_shrdi_epi16((A), (B), (I)), \ + (__v8hi)(__m128i)(S))) + +#define _mm_maskz_shrdi_epi16(U, A, B, I) \ + ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ + (__v8hi)_mm_shrdi_epi16((A), (B), (I)), \ + (__v8hi)_mm_setzero_si128())) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_shldv_epi64(__m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_vpshldvq256((__v4di)__A, (__v4di)__B, + (__v4di)__C); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_shldv_epi64(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_shldv_epi64(__A, __B, __C), + (__v4di)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_shldv_epi64(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_shldv_epi64(__A, __B, __C), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_shldv_epi64(__m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_vpshldvq128((__v2di)__A, (__v2di)__B, + (__v2di)__C); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_shldv_epi64(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_shldv_epi64(__A, __B, __C), + (__v2di)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_shldv_epi64(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_shldv_epi64(__A, __B, __C), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_shldv_epi32(__m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_vpshldvd256((__v8si)__A, (__v8si)__B, + (__v8si)__C); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_shldv_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_shldv_epi32(__A, __B, __C), + (__v8si)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_shldv_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_shldv_epi32(__A, __B, __C), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_shldv_epi32(__m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_vpshldvd128((__v4si)__A, (__v4si)__B, + (__v4si)__C); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_shldv_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_shldv_epi32(__A, __B, __C), + (__v4si)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_shldv_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_shldv_epi32(__A, __B, __C), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_shldv_epi16(__m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_vpshldvw256((__v16hi)__A, (__v16hi)__B, + (__v16hi)__C); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_shldv_epi16(__m256i __A, __mmask16 __U, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectw_256(__U, + (__v16hi)_mm256_shldv_epi16(__A, __B, __C), + (__v16hi)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_shldv_epi16(__mmask16 __U, __m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectw_256(__U, + (__v16hi)_mm256_shldv_epi16(__A, __B, __C), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_shldv_epi16(__m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_vpshldvw128((__v8hi)__A, (__v8hi)__B, + (__v8hi)__C); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_shldv_epi16(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectw_128(__U, + (__v8hi)_mm_shldv_epi16(__A, __B, __C), + (__v8hi)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_shldv_epi16(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectw_128(__U, + (__v8hi)_mm_shldv_epi16(__A, __B, __C), + (__v8hi)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_shrdv_epi64(__m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_vpshrdvq256((__v4di)__A, (__v4di)__B, + (__v4di)__C); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_shrdv_epi64(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_shrdv_epi64(__A, __B, __C), + (__v4di)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_shrdv_epi64(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectq_256(__U, + (__v4di)_mm256_shrdv_epi64(__A, __B, __C), + (__v4di)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_shrdv_epi64(__m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_vpshrdvq128((__v2di)__A, (__v2di)__B, + (__v2di)__C); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_shrdv_epi64(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_shrdv_epi64(__A, __B, __C), + (__v2di)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_shrdv_epi64(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectq_128(__U, + (__v2di)_mm_shrdv_epi64(__A, __B, __C), + (__v2di)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_shrdv_epi32(__m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_vpshrdvd256((__v8si)__A, (__v8si)__B, + (__v8si)__C); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_shrdv_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_shrdv_epi32(__A, __B, __C), + (__v8si)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_shrdv_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_shrdv_epi32(__A, __B, __C), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_shrdv_epi32(__m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_vpshrdvd128((__v4si)__A, (__v4si)__B, + (__v4si)__C); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_shrdv_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_shrdv_epi32(__A, __B, __C), + (__v4si)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_shrdv_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_shrdv_epi32(__A, __B, __C), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_shrdv_epi16(__m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_vpshrdvw256((__v16hi)__A, (__v16hi)__B, + (__v16hi)__C); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_shrdv_epi16(__m256i __A, __mmask16 __U, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectw_256(__U, + (__v16hi)_mm256_shrdv_epi16(__A, __B, __C), + (__v16hi)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_shrdv_epi16(__mmask16 __U, __m256i __A, __m256i __B, __m256i __C) +{ + return (__m256i)__builtin_ia32_selectw_256(__U, + (__v16hi)_mm256_shrdv_epi16(__A, __B, __C), + (__v16hi)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_shrdv_epi16(__m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_vpshrdvw128((__v8hi)__A, (__v8hi)__B, + (__v8hi)__C); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_shrdv_epi16(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectw_128(__U, + (__v8hi)_mm_shrdv_epi16(__A, __B, __C), + (__v8hi)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_shrdv_epi16(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) +{ + return (__m128i)__builtin_ia32_selectw_128(__U, + (__v8hi)_mm_shrdv_epi16(__A, __B, __C), + (__v8hi)_mm_setzero_si128()); +} + + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..979732aa8626eab680ef64b9fd9909bc5f66c9f4 GIT binary patch literal 55023 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h new file mode 100644 index 00000000..8bc0694e --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h @@ -0,0 +1,304 @@ +/*===------------- avx512vlvnniintrin.h - VNNI intrinsics ------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <avx512vlvnniintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVX512VLVNNIINTRIN_H +#define __AVX512VLVNNIINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vnni"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vnni"), __min_vector_width__(256))) + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with +/// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed +/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in \a S, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPBUSD </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := Signed(ZeroExtend16(A.byte[4*j]) * SignExtend16(B.byte[4*j])) +/// tmp2.word := Signed(ZeroExtend16(A.byte[4*j+1]) * SignExtend16(B.byte[4*j+1])) +/// tmp3.word := Signed(ZeroExtend16(A.byte[4*j+2]) * SignExtend16(B.byte[4*j+2])) +/// tmp4.word := Signed(ZeroExtend16(A.byte[4*j+3]) * SignExtend16(B.byte[4*j+3])) +/// DST.dword[j] := S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// DST[MAX:256] := 0 +/// \endcode +#define _mm256_dpbusd_epi32(S, A, B) \ + ((__m256i)__builtin_ia32_vpdpbusd256((__v8si)(S), (__v8si)(A), (__v8si)(B))) + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with +/// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed +/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in \a S using signed saturation, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPBUSDS </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := Signed(ZeroExtend16(A.byte[4*j]) * SignExtend16(B.byte[4*j])) +/// tmp2.word := Signed(ZeroExtend16(A.byte[4*j+1]) * SignExtend16(B.byte[4*j+1])) +/// tmp3.word := Signed(ZeroExtend16(A.byte[4*j+2]) * SignExtend16(B.byte[4*j+2])) +/// tmp4.word := Signed(ZeroExtend16(A.byte[4*j+3]) * SignExtend16(B.byte[4*j+3])) +/// DST.dword[j] := Saturate32(S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// DST[MAX:256] := 0 +/// \endcode +#define _mm256_dpbusds_epi32(S, A, B) \ + ((__m256i)__builtin_ia32_vpdpbusds256((__v8si)(S), (__v8si)(A), (__v8si)(B))) + +/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a A with +/// corresponding 16-bit integers in \a B, producing 2 intermediate signed 32-bit +/// results. Sum these 2 results with the corresponding 32-bit integer in \a S, +/// and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPWSSD </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.dword := SignExtend32(A.word[2*j]) * SignExtend32(B.word[2*j]) +/// tmp2.dword := SignExtend32(A.word[2*j+1]) * SignExtend32(B.word[2*j+1]) +/// DST.dword[j] := S.dword[j] + tmp1 + tmp2 +/// ENDFOR +/// DST[MAX:256] := 0 +/// \endcode +#define _mm256_dpwssd_epi32(S, A, B) \ + ((__m256i)__builtin_ia32_vpdpwssd256((__v8si)(S), (__v8si)(A), (__v8si)(B))) + +/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a A with +/// corresponding 16-bit integers in \a B, producing 2 intermediate signed 32-bit +/// results. Sum these 2 results with the corresponding 32-bit integer in \a S +/// using signed saturation, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPWSSDS </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.dword := SignExtend32(A.word[2*j]) * SignExtend32(B.word[2*j]) +/// tmp2.dword := SignExtend32(A.word[2*j+1]) * SignExtend32(B.word[2*j+1]) +/// DST.dword[j] := Saturate32(S.dword[j] + tmp1 + tmp2) +/// ENDFOR +/// DST[MAX:256] := 0 +/// \endcode +#define _mm256_dpwssds_epi32(S, A, B) \ + ((__m256i)__builtin_ia32_vpdpwssds256((__v8si)(S), (__v8si)(A), (__v8si)(B))) + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with +/// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed +/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in \a S, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPBUSD </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := Signed(ZeroExtend16(A.byte[4*j]) * SignExtend16(B.byte[4*j])) +/// tmp2.word := Signed(ZeroExtend16(A.byte[4*j+1]) * SignExtend16(B.byte[4*j+1])) +/// tmp3.word := Signed(ZeroExtend16(A.byte[4*j+2]) * SignExtend16(B.byte[4*j+2])) +/// tmp4.word := Signed(ZeroExtend16(A.byte[4*j+3]) * SignExtend16(B.byte[4*j+3])) +/// DST.dword[j] := S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// DST[MAX:128] := 0 +/// \endcode +#define _mm_dpbusd_epi32(S, A, B) \ + ((__m128i)__builtin_ia32_vpdpbusd128((__v4si)(S), (__v4si)(A), (__v4si)(B))) + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with +/// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed +/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in \a S using signed saturation, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPBUSDS </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := Signed(ZeroExtend16(A.byte[4*j]) * SignExtend16(B.byte[4*j])) +/// tmp2.word := Signed(ZeroExtend16(A.byte[4*j+1]) * SignExtend16(B.byte[4*j+1])) +/// tmp3.word := Signed(ZeroExtend16(A.byte[4*j+2]) * SignExtend16(B.byte[4*j+2])) +/// tmp4.word := Signed(ZeroExtend16(A.byte[4*j+3]) * SignExtend16(B.byte[4*j+3])) +/// DST.dword[j] := Saturate32(S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// DST[MAX:128] := 0 +/// \endcode +#define _mm_dpbusds_epi32(S, A, B) \ + ((__m128i)__builtin_ia32_vpdpbusds128((__v4si)(S), (__v4si)(A), (__v4si)(B))) + +/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a A with +/// corresponding 16-bit integers in \a B, producing 2 intermediate signed 32-bit +/// results. Sum these 2 results with the corresponding 32-bit integer in \a S, +/// and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPWSSD </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.dword := SignExtend32(A.word[2*j]) * SignExtend32(B.word[2*j]) +/// tmp2.dword := SignExtend32(A.word[2*j+1]) * SignExtend32(B.word[2*j+1]) +/// DST.dword[j] := S.dword[j] + tmp1 + tmp2 +/// ENDFOR +/// DST[MAX:128] := 0 +/// \endcode +#define _mm_dpwssd_epi32(S, A, B) \ + ((__m128i)__builtin_ia32_vpdpwssd128((__v4si)(S), (__v4si)(A), (__v4si)(B))) + +/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a A with +/// corresponding 16-bit integers in \a B, producing 2 intermediate signed 32-bit +/// results. Sum these 2 results with the corresponding 32-bit integer in \a S +/// using signed saturation, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPWSSDS </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.dword := SignExtend32(A.word[2*j]) * SignExtend32(B.word[2*j]) +/// tmp2.dword := SignExtend32(A.word[2*j+1]) * SignExtend32(B.word[2*j+1]) +/// DST.dword[j] := Saturate32(S.dword[j] + tmp1 + tmp2) +/// ENDFOR +/// DST[MAX:128] := 0 +/// \endcode +#define _mm_dpwssds_epi32(S, A, B) \ + ((__m128i)__builtin_ia32_vpdpwssds128((__v4si)(S), (__v4si)(A), (__v4si)(B))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_dpbusd_epi32(__m256i __S, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_dpbusd_epi32(__S, __A, __B), + (__v8si)__S); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_dpbusd_epi32(__mmask8 __U, __m256i __S, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_dpbusd_epi32(__S, __A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_dpbusds_epi32(__m256i __S, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_dpbusds_epi32(__S, __A, __B), + (__v8si)__S); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_dpbusds_epi32(__mmask8 __U, __m256i __S, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_dpbusds_epi32(__S, __A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_dpwssd_epi32(__m256i __S, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_dpwssd_epi32(__S, __A, __B), + (__v8si)__S); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_dpwssd_epi32(__mmask8 __U, __m256i __S, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_dpwssd_epi32(__S, __A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_dpwssds_epi32(__m256i __S, __mmask8 __U, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_dpwssds_epi32(__S, __A, __B), + (__v8si)__S); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_dpwssds_epi32(__mmask8 __U, __m256i __S, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_selectd_256(__U, + (__v8si)_mm256_dpwssds_epi32(__S, __A, __B), + (__v8si)_mm256_setzero_si256()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_dpbusd_epi32(__m128i __S, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_dpbusd_epi32(__S, __A, __B), + (__v4si)__S); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_dpbusd_epi32(__mmask8 __U, __m128i __S, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_dpbusd_epi32(__S, __A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_dpbusds_epi32(__m128i __S, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_dpbusds_epi32(__S, __A, __B), + (__v4si)__S); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_dpbusds_epi32(__mmask8 __U, __m128i __S, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_dpbusds_epi32(__S, __A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_dpwssd_epi32(__m128i __S, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_dpwssd_epi32(__S, __A, __B), + (__v4si)__S); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_dpwssd_epi32(__mmask8 __U, __m128i __S, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_dpwssd_epi32(__S, __A, __B), + (__v4si)_mm_setzero_si128()); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_dpwssds_epi32(__m128i __S, __mmask8 __U, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_dpwssds_epi32(__S, __A, __B), + (__v4si)__S); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_dpwssds_epi32(__mmask8 __U, __m128i __S, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_selectd_128(__U, + (__v4si)_mm_dpwssds_epi32(__S, __A, __B), + (__v4si)_mm_setzero_si128()); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..dcb0020db79a2eb591787045200644c1d3f2b56d GIT binary patch literal 24166 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h new file mode 100644 index 00000000..3e0815e5 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h @@ -0,0 +1,121 @@ +/*===------ avx512vlvp2intersectintrin.h - VL VP2INTERSECT intrinsics ------=== + * + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <avx512vlvp2intersectintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef _AVX512VLVP2INTERSECT_H +#define _AVX512VLVP2INTERSECT_H + +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vp2intersect"), \ + __min_vector_width__(128))) + +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vp2intersect"), \ + __min_vector_width__(256))) +/// Store, in an even/odd pair of mask registers, the indicators of the +/// locations of value matches between dwords in operands __a and __b. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VP2INTERSECTD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x i32]. +/// \param __b +/// A 256-bit vector of [8 x i32] +/// \param __m0 +/// A pointer point to 8-bit mask +/// \param __m1 +/// A pointer point to 8-bit mask +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_2intersect_epi32(__m256i __a, __m256i __b, __mmask8 *__m0, __mmask8 *__m1) { + __builtin_ia32_vp2intersect_d_256((__v8si)__a, (__v8si)__b, __m0, __m1); +} + +/// Store, in an even/odd pair of mask registers, the indicators of the +/// locations of value matches between quadwords in operands __a and __b. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VP2INTERSECTQ </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x i64]. +/// \param __b +/// A 256-bit vector of [4 x i64] +/// \param __m0 +/// A pointer point to 8-bit mask +/// \param __m1 +/// A pointer point to 8-bit mask +static __inline__ void __DEFAULT_FN_ATTRS256 +_mm256_2intersect_epi64(__m256i __a, __m256i __b, __mmask8 *__m0, __mmask8 *__m1) { + __builtin_ia32_vp2intersect_q_256((__v4di)__a, (__v4di)__b, __m0, __m1); +} + +/// Store, in an even/odd pair of mask registers, the indicators of the +/// locations of value matches between dwords in operands __a and __b. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VP2INTERSECTD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x i32]. +/// \param __b +/// A 128-bit vector of [4 x i32] +/// \param __m0 +/// A pointer point to 8-bit mask +/// \param __m1 +/// A pointer point to 8-bit mask +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_2intersect_epi32(__m128i __a, __m128i __b, __mmask8 *__m0, __mmask8 *__m1) { + __builtin_ia32_vp2intersect_d_128((__v4si)__a, (__v4si)__b, __m0, __m1); +} + +/// Store, in an even/odd pair of mask registers, the indicators of the +/// locations of value matches between quadwords in operands __a and __b. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VP2INTERSECTQ </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x i64]. +/// \param __b +/// A 128-bit vector of [2 x i64] +/// \param __m0 +/// A pointer point to 8-bit mask +/// \param __m1 +/// A pointer point to 8-bit mask +static __inline__ void __DEFAULT_FN_ATTRS128 +_mm_2intersect_epi64(__m128i __a, __m128i __b, __mmask8 *__m0, __mmask8 *__m1) { + __builtin_ia32_vp2intersect_q_128((__v2di)__a, (__v2di)__b, __m0, __m1); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..6bb3237048ad28e91f1bb77f416d331f1ea509de GIT binary patch literal 16942 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h new file mode 100644 index 00000000..9935a119 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h @@ -0,0 +1,115 @@ +/*===------------- avx512vnniintrin.h - VNNI intrinsics ------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <avx512vnniintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVX512VNNIINTRIN_H +#define __AVX512VNNIINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vnni"), __min_vector_width__(512))) + + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_dpbusd_epi32(__m512i __S, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_vpdpbusd512((__v16si)__S, (__v16si)__A, + (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_dpbusd_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_dpbusd_epi32(__S, __A, __B), + (__v16si)__S); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_dpbusd_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_dpbusd_epi32(__S, __A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_dpbusds_epi32(__m512i __S, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_vpdpbusds512((__v16si)__S, (__v16si)__A, + (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_dpbusds_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_dpbusds_epi32(__S, __A, __B), + (__v16si)__S); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_dpbusds_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_dpbusds_epi32(__S, __A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_dpwssd_epi32(__m512i __S, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_vpdpwssd512((__v16si)__S, (__v16si)__A, + (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_dpwssd_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_dpwssd_epi32(__S, __A, __B), + (__v16si)__S); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_dpwssd_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_dpwssd_epi32(__S, __A, __B), + (__v16si)_mm512_setzero_si512()); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_dpwssds_epi32(__m512i __S, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_vpdpwssds512((__v16si)__S, (__v16si)__A, + (__v16si)__B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_dpwssds_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_dpwssds_epi32(__S, __A, __B), + (__v16si)__S); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_dpwssds_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) +{ + return (__m512i)__builtin_ia32_selectd_512(__U, + (__v16si)_mm512_dpwssds_epi32(__S, __A, __B), + (__v16si)_mm512_setzero_si512()); +} + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9b1af5094c8c4d74c4239e6105b936e166c62487 GIT binary patch literal 18600 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h new file mode 100644 index 00000000..5d3cb48c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h @@ -0,0 +1,77 @@ +/*===------- avx512vpintersectintrin.h - VP2INTERSECT intrinsics ------------=== + * + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <avx512vp2intersect.h> directly; include <immintrin.h> instead." +#endif + +#ifndef _AVX512VP2INTERSECT_H +#define _AVX512VP2INTERSECT_H + +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512vp2intersect"), \ + __min_vector_width__(512))) + +/// Store, in an even/odd pair of mask registers, the indicators of the +/// locations of value matches between dwords in operands __a and __b. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VP2INTERSECTD </c> instruction. +/// +/// \param __a +/// A 512-bit vector of [16 x i32]. +/// \param __b +/// A 512-bit vector of [16 x i32] +/// \param __m0 +/// A pointer point to 16-bit mask +/// \param __m1 +/// A pointer point to 16-bit mask +static __inline__ void __DEFAULT_FN_ATTRS +_mm512_2intersect_epi32(__m512i __a, __m512i __b, __mmask16 *__m0, __mmask16 *__m1) { + __builtin_ia32_vp2intersect_d_512((__v16si)__a, (__v16si)__b, __m0, __m1); +} + +/// Store, in an even/odd pair of mask registers, the indicators of the +/// locations of value matches between quadwords in operands __a and __b. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VP2INTERSECTQ </c> instruction. +/// +/// \param __a +/// A 512-bit vector of [8 x i64]. +/// \param __b +/// A 512-bit vector of [8 x i64] +/// \param __m0 +/// A pointer point to 8-bit mask +/// \param __m1 +/// A pointer point to 8-bit mask +static __inline__ void __DEFAULT_FN_ATTRS +_mm512_2intersect_epi64(__m512i __a, __m512i __b, __mmask8 *__m0, __mmask8 *__m1) { + __builtin_ia32_vp2intersect_q_512((__v8di)__a, (__v8di)__b, __m0, __m1); +} + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5ba1fd36a446cbe697fe8a92600711e7566f95fb GIT binary patch literal 14651 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h new file mode 100644 index 00000000..bb435e62 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h @@ -0,0 +1,54 @@ +/*===----- avx512vpopcntdqintrin.h - AVX512VPOPCNTDQ intrinsics-------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error \ + "Never use <avx512vpopcntdqintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVX512VPOPCNTDQINTRIN_H +#define __AVX512VPOPCNTDQINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512vpopcntdq"), __min_vector_width__(512))) + +static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_popcnt_epi64(__m512i __A) { + return (__m512i)__builtin_ia32_vpopcntq_512((__v8di)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_popcnt_epi64(__m512i __W, __mmask8 __U, __m512i __A) { + return (__m512i)__builtin_ia32_selectq_512( + (__mmask8)__U, (__v8di)_mm512_popcnt_epi64(__A), (__v8di)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_popcnt_epi64(__mmask8 __U, __m512i __A) { + return _mm512_mask_popcnt_epi64((__m512i)_mm512_setzero_si512(), __U, __A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_popcnt_epi32(__m512i __A) { + return (__m512i)__builtin_ia32_vpopcntd_512((__v16si)__A); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_mask_popcnt_epi32(__m512i __W, __mmask16 __U, __m512i __A) { + return (__m512i)__builtin_ia32_selectd_512( + (__mmask16)__U, (__v16si)_mm512_popcnt_epi32(__A), (__v16si)__W); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS +_mm512_maskz_popcnt_epi32(__mmask16 __U, __m512i __A) { + return _mm512_mask_popcnt_epi32((__m512i)_mm512_setzero_si512(), __U, __A); +} + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d63133916b9d6c09923d788883a777eb69966afc GIT binary patch literal 14901 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 YXc&yy{n-U%R46D5Bp9deoC5Fv7mhI(00000 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h new file mode 100644 index 00000000..a3cb9b6b --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h @@ -0,0 +1,91 @@ +/*===---- avx512vpopcntdqintrin.h - AVX512VPOPCNTDQ intrinsics -------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error \ + "Never use <avx512vpopcntdqvlintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVX512VPOPCNTDQVLINTRIN_H +#define __AVX512VPOPCNTDQVLINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512vpopcntdq,avx512vl"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, __target__("avx512vpopcntdq,avx512vl"), __min_vector_width__(256))) + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_popcnt_epi64(__m128i __A) { + return (__m128i)__builtin_ia32_vpopcntq_128((__v2di)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_popcnt_epi64(__m128i __W, __mmask8 __U, __m128i __A) { + return (__m128i)__builtin_ia32_selectq_128( + (__mmask8)__U, (__v2di)_mm_popcnt_epi64(__A), (__v2di)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_popcnt_epi64(__mmask8 __U, __m128i __A) { + return _mm_mask_popcnt_epi64((__m128i)_mm_setzero_si128(), __U, __A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_popcnt_epi32(__m128i __A) { + return (__m128i)__builtin_ia32_vpopcntd_128((__v4si)__A); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_mask_popcnt_epi32(__m128i __W, __mmask8 __U, __m128i __A) { + return (__m128i)__builtin_ia32_selectd_128( + (__mmask8)__U, (__v4si)_mm_popcnt_epi32(__A), (__v4si)__W); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_maskz_popcnt_epi32(__mmask8 __U, __m128i __A) { + return _mm_mask_popcnt_epi32((__m128i)_mm_setzero_si128(), __U, __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_popcnt_epi64(__m256i __A) { + return (__m256i)__builtin_ia32_vpopcntq_256((__v4di)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_popcnt_epi64(__m256i __W, __mmask8 __U, __m256i __A) { + return (__m256i)__builtin_ia32_selectq_256( + (__mmask8)__U, (__v4di)_mm256_popcnt_epi64(__A), (__v4di)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_popcnt_epi64(__mmask8 __U, __m256i __A) { + return _mm256_mask_popcnt_epi64((__m256i)_mm256_setzero_si256(), __U, __A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_popcnt_epi32(__m256i __A) { + return (__m256i)__builtin_ia32_vpopcntd_256((__v8si)__A); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_mask_popcnt_epi32(__m256i __W, __mmask8 __U, __m256i __A) { + return (__m256i)__builtin_ia32_selectd_256( + (__mmask8)__U, (__v8si)_mm256_popcnt_epi32(__A), (__v8si)__W); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_maskz_popcnt_epi32(__mmask8 __U, __m256i __A) { + return _mm256_mask_popcnt_epi32((__m256i)_mm256_setzero_si256(), __U, __A); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..127229571fa36a01ef2f34a7d420c74a1cacb4cd GIT binary patch literal 17361 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 VK~ANjge?ilzs{2J({Zrm{{a97R=)rM literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h new file mode 100644 index 00000000..5c782d2a --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h @@ -0,0 +1,177 @@ +/*===----------------- avxifmaintrin.h - IFMA intrinsics -------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <avxifmaintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVXIFMAINTRIN_H +#define __AVXIFMAINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, __target__("avxifma"), \ + __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, __target__("avxifma"), \ + __min_vector_width__(256))) + +// must vex-encoding + +/// Multiply packed unsigned 52-bit integers in each 64-bit element of \a __Y +/// and \a __Z to form a 104-bit intermediate result. Add the high 52-bit +/// unsigned integer from the intermediate result with the corresponding +/// unsigned 64-bit integer in \a __X, and store the results in \a dst. +/// +/// \headerfile <immintrin.h> +/// +/// \code +/// __m128i +/// _mm_madd52hi_avx_epu64 (__m128i __X, __m128i __Y, __m128i __Z) +/// \endcode +/// +/// This intrinsic corresponds to the \c VPMADD52HUQ instruction. +/// +/// \return +/// return __m128i dst. +/// \param __X +/// A 128-bit vector of [2 x i64] +/// \param __Y +/// A 128-bit vector of [2 x i64] +/// \param __Z +/// A 128-bit vector of [2 x i64] +/// +/// \code{.operation} +/// FOR j := 0 to 1 +/// i := j*64 +/// tmp[127:0] := ZeroExtend64(__Y[i+51:i]) * ZeroExtend64(__Z[i+51:i]) +/// dst[i+63:i] := __X[i+63:i] + ZeroExtend64(tmp[103:52]) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_madd52hi_avx_epu64(__m128i __X, __m128i __Y, __m128i __Z) { + return (__m128i)__builtin_ia32_vpmadd52huq128((__v2di)__X, (__v2di)__Y, + (__v2di)__Z); +} + +/// Multiply packed unsigned 52-bit integers in each 64-bit element of \a __Y +/// and \a __Z to form a 104-bit intermediate result. Add the high 52-bit +/// unsigned integer from the intermediate result with the corresponding +/// unsigned 64-bit integer in \a __X, and store the results in \a dst. +/// +/// \headerfile <immintrin.h> +/// +/// \code +/// __m256i +/// _mm256_madd52hi_avx_epu64 (__m256i __X, __m256i __Y, __m256i __Z) +/// \endcode +/// +/// This intrinsic corresponds to the \c VPMADD52HUQ instruction. +/// +/// \return +/// return __m256i dst. +/// \param __X +/// A 256-bit vector of [4 x i64] +/// \param __Y +/// A 256-bit vector of [4 x i64] +/// \param __Z +/// A 256-bit vector of [4 x i64] +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// i := j*64 +/// tmp[127:0] := ZeroExtend64(__Y[i+51:i]) * ZeroExtend64(__Z[i+51:i]) +/// dst[i+63:i] := __X[i+63:i] + ZeroExtend64(tmp[103:52]) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_madd52hi_avx_epu64(__m256i __X, __m256i __Y, __m256i __Z) { + return (__m256i)__builtin_ia32_vpmadd52huq256((__v4di)__X, (__v4di)__Y, + (__v4di)__Z); +} + +/// Multiply packed unsigned 52-bit integers in each 64-bit element of \a __Y +/// and \a __Z to form a 104-bit intermediate result. Add the low 52-bit +/// unsigned integer from the intermediate result with the corresponding +/// unsigned 64-bit integer in \a __X, and store the results in \a dst. +/// +/// \headerfile <immintrin.h> +/// +/// \code +/// __m128i +/// _mm_madd52lo_avx_epu64 (__m128i __X, __m128i __Y, __m128i __Z) +/// \endcode +/// +/// This intrinsic corresponds to the \c VPMADD52LUQ instruction. +/// +/// \return +/// return __m128i dst. +/// \param __X +/// A 128-bit vector of [2 x i64] +/// \param __Y +/// A 128-bit vector of [2 x i64] +/// \param __Z +/// A 128-bit vector of [2 x i64] +/// +/// \code{.operation} +/// FOR j := 0 to 1 +/// i := j*64 +/// tmp[127:0] := ZeroExtend64(__Y[i+51:i]) * ZeroExtend64(__Z[i+51:i]) +/// dst[i+63:i] := __X[i+63:i] + ZeroExtend64(tmp[51:0]) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_madd52lo_avx_epu64(__m128i __X, __m128i __Y, __m128i __Z) { + return (__m128i)__builtin_ia32_vpmadd52luq128((__v2di)__X, (__v2di)__Y, + (__v2di)__Z); +} + +/// Multiply packed unsigned 52-bit integers in each 64-bit element of \a __Y +/// and \a __Z to form a 104-bit intermediate result. Add the low 52-bit +/// unsigned integer from the intermediate result with the corresponding +/// unsigned 64-bit integer in \a __X, and store the results in \a dst. +/// +/// \headerfile <immintrin.h> +/// +/// \code +/// __m256i +/// _mm256_madd52lo_avx_epu64 (__m256i __X, __m256i __Y, __m256i __Z) +/// \endcode +/// +/// This intrinsic corresponds to the \c VPMADD52LUQ instruction. +/// +/// \return +/// return __m256i dst. +/// \param __X +/// A 256-bit vector of [4 x i64] +/// \param __Y +/// A 256-bit vector of [4 x i64] +/// \param __Z +/// A 256-bit vector of [4 x i64] +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// i := j*64 +/// tmp[127:0] := ZeroExtend64(__Y[i+51:i]) * ZeroExtend64(__Z[i+51:i]) +/// dst[i+63:i] := __X[i+63:i] + ZeroExtend64(tmp[51:0]) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_madd52lo_avx_epu64(__m256i __X, __m256i __Y, __m256i __Z) { + return (__m256i)__builtin_ia32_vpmadd52luq256((__v4di)__X, (__v4di)__Y, + (__v4di)__Z); +} +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif // __AVXIFMAINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..59b2a8cb138c63791dbd4c922b88017c21c1d556 GIT binary patch literal 18044 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 CKu!Gs literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h new file mode 100644 index 00000000..ee31569c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h @@ -0,0 +1,5095 @@ +/*===---- avxintrin.h - AVX intrinsics -------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <avxintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVXINTRIN_H +#define __AVXINTRIN_H + +typedef double __v4df __attribute__ ((__vector_size__ (32))); +typedef float __v8sf __attribute__ ((__vector_size__ (32))); +typedef long long __v4di __attribute__ ((__vector_size__ (32))); +typedef int __v8si __attribute__ ((__vector_size__ (32))); +typedef short __v16hi __attribute__ ((__vector_size__ (32))); +typedef char __v32qi __attribute__ ((__vector_size__ (32))); + +/* Unsigned types */ +typedef unsigned long long __v4du __attribute__ ((__vector_size__ (32))); +typedef unsigned int __v8su __attribute__ ((__vector_size__ (32))); +typedef unsigned short __v16hu __attribute__ ((__vector_size__ (32))); +typedef unsigned char __v32qu __attribute__ ((__vector_size__ (32))); + +/* We need an explicitly signed variant for char. Note that this shouldn't + * appear in the interface though. */ +typedef signed char __v32qs __attribute__((__vector_size__(32))); + +typedef float __m256 __attribute__ ((__vector_size__ (32), __aligned__(32))); +typedef double __m256d __attribute__((__vector_size__(32), __aligned__(32))); +typedef long long __m256i __attribute__((__vector_size__(32), __aligned__(32))); + +typedef float __m256_u __attribute__ ((__vector_size__ (32), __aligned__(1))); +typedef double __m256d_u __attribute__((__vector_size__(32), __aligned__(1))); +typedef long long __m256i_u __attribute__((__vector_size__(32), __aligned__(1))); + +#ifdef __SSE2__ +/* Both _Float16 and __bf16 require SSE2 being enabled. */ +typedef _Float16 __v16hf __attribute__((__vector_size__(32), __aligned__(32))); +typedef _Float16 __m256h __attribute__((__vector_size__(32), __aligned__(32))); +typedef _Float16 __m256h_u __attribute__((__vector_size__(32), __aligned__(1))); + +typedef __bf16 __v16bf __attribute__((__vector_size__(32), __aligned__(32))); +typedef __bf16 __m256bh __attribute__((__vector_size__(32), __aligned__(32))); +#endif + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx"), __min_vector_width__(256))) +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx"), __min_vector_width__(128))) + +/* Arithmetic */ +/// Adds two 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// \returns A 256-bit vector of [4 x double] containing the sums of both +/// operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_add_pd(__m256d __a, __m256d __b) +{ + return (__m256d)((__v4df)__a+(__v4df)__b); +} + +/// Adds two 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// \returns A 256-bit vector of [8 x float] containing the sums of both +/// operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_add_ps(__m256 __a, __m256 __b) +{ + return (__m256)((__v8sf)__a+(__v8sf)__b); +} + +/// Subtracts two 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSUBPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing the minuend. +/// \param __b +/// A 256-bit vector of [4 x double] containing the subtrahend. +/// \returns A 256-bit vector of [4 x double] containing the differences between +/// both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_sub_pd(__m256d __a, __m256d __b) +{ + return (__m256d)((__v4df)__a-(__v4df)__b); +} + +/// Subtracts two 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSUBPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing the minuend. +/// \param __b +/// A 256-bit vector of [8 x float] containing the subtrahend. +/// \returns A 256-bit vector of [8 x float] containing the differences between +/// both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_sub_ps(__m256 __a, __m256 __b) +{ + return (__m256)((__v8sf)__a-(__v8sf)__b); +} + +/// Adds the even-indexed values and subtracts the odd-indexed values of +/// two 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDSUBPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing the left source operand. +/// \param __b +/// A 256-bit vector of [4 x double] containing the right source operand. +/// \returns A 256-bit vector of [4 x double] containing the alternating sums +/// and differences between both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_addsub_pd(__m256d __a, __m256d __b) +{ + return (__m256d)__builtin_ia32_addsubpd256((__v4df)__a, (__v4df)__b); +} + +/// Adds the even-indexed values and subtracts the odd-indexed values of +/// two 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDSUBPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing the left source operand. +/// \param __b +/// A 256-bit vector of [8 x float] containing the right source operand. +/// \returns A 256-bit vector of [8 x float] containing the alternating sums and +/// differences between both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_addsub_ps(__m256 __a, __m256 __b) +{ + return (__m256)__builtin_ia32_addsubps256((__v8sf)__a, (__v8sf)__b); +} + +/// Divides two 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VDIVPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing the dividend. +/// \param __b +/// A 256-bit vector of [4 x double] containing the divisor. +/// \returns A 256-bit vector of [4 x double] containing the quotients of both +/// operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_div_pd(__m256d __a, __m256d __b) +{ + return (__m256d)((__v4df)__a/(__v4df)__b); +} + +/// Divides two 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VDIVPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing the dividend. +/// \param __b +/// A 256-bit vector of [8 x float] containing the divisor. +/// \returns A 256-bit vector of [8 x float] containing the quotients of both +/// operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_div_ps(__m256 __a, __m256 __b) +{ + return (__m256)((__v8sf)__a/(__v8sf)__b); +} + +/// Compares two 256-bit vectors of [4 x double] and returns the greater +/// of each pair of values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMAXPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the operands. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the operands. +/// \returns A 256-bit vector of [4 x double] containing the maximum values +/// between both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_max_pd(__m256d __a, __m256d __b) +{ + return (__m256d)__builtin_ia32_maxpd256((__v4df)__a, (__v4df)__b); +} + +/// Compares two 256-bit vectors of [8 x float] and returns the greater +/// of each pair of values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMAXPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the operands. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the operands. +/// \returns A 256-bit vector of [8 x float] containing the maximum values +/// between both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_max_ps(__m256 __a, __m256 __b) +{ + return (__m256)__builtin_ia32_maxps256((__v8sf)__a, (__v8sf)__b); +} + +/// Compares two 256-bit vectors of [4 x double] and returns the lesser +/// of each pair of values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMINPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the operands. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the operands. +/// \returns A 256-bit vector of [4 x double] containing the minimum values +/// between both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_min_pd(__m256d __a, __m256d __b) +{ + return (__m256d)__builtin_ia32_minpd256((__v4df)__a, (__v4df)__b); +} + +/// Compares two 256-bit vectors of [8 x float] and returns the lesser +/// of each pair of values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMINPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the operands. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the operands. +/// \returns A 256-bit vector of [8 x float] containing the minimum values +/// between both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_min_ps(__m256 __a, __m256 __b) +{ + return (__m256)__builtin_ia32_minps256((__v8sf)__a, (__v8sf)__b); +} + +/// Multiplies two 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMULPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the operands. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the operands. +/// \returns A 256-bit vector of [4 x double] containing the products of both +/// operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_mul_pd(__m256d __a, __m256d __b) +{ + return (__m256d)((__v4df)__a * (__v4df)__b); +} + +/// Multiplies two 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMULPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the operands. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the operands. +/// \returns A 256-bit vector of [8 x float] containing the products of both +/// operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_mul_ps(__m256 __a, __m256 __b) +{ + return (__m256)((__v8sf)__a * (__v8sf)__b); +} + +/// Calculates the square roots of the values in a 256-bit vector of +/// [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSQRTPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \returns A 256-bit vector of [4 x double] containing the square roots of the +/// values in the operand. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_sqrt_pd(__m256d __a) +{ + return (__m256d)__builtin_ia32_sqrtpd256((__v4df)__a); +} + +/// Calculates the square roots of the values in a 256-bit vector of +/// [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSQRTPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit vector of [8 x float] containing the square roots of the +/// values in the operand. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_sqrt_ps(__m256 __a) +{ + return (__m256)__builtin_ia32_sqrtps256((__v8sf)__a); +} + +/// Calculates the reciprocal square roots of the values in a 256-bit +/// vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VRSQRTPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit vector of [8 x float] containing the reciprocal square +/// roots of the values in the operand. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_rsqrt_ps(__m256 __a) +{ + return (__m256)__builtin_ia32_rsqrtps256((__v8sf)__a); +} + +/// Calculates the reciprocals of the values in a 256-bit vector of +/// [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VRCPPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit vector of [8 x float] containing the reciprocals of the +/// values in the operand. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_rcp_ps(__m256 __a) +{ + return (__m256)__builtin_ia32_rcpps256((__v8sf)__a); +} + +/// Rounds the values in a 256-bit vector of [4 x double] as specified +/// by the byte operand. The source values are rounded to integer values and +/// returned as 64-bit double-precision floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_round_pd(__m256d V, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPD </c> instruction. +/// +/// \param V +/// A 256-bit vector of [4 x double]. +/// \param M +/// An integer value that specifies the rounding operation. \n +/// Bits [7:4] are reserved. \n +/// Bit [3] is a precision exception value: \n +/// 0: A normal PE exception is used. \n +/// 1: The PE field is not updated. \n +/// Bit [2] is the rounding control source: \n +/// 0: Use bits [1:0] of \a M. \n +/// 1: Use the current MXCSR setting. \n +/// Bits [1:0] contain the rounding control definition: \n +/// 00: Nearest. \n +/// 01: Downward (toward negative infinity). \n +/// 10: Upward (toward positive infinity). \n +/// 11: Truncated. +/// \returns A 256-bit vector of [4 x double] containing the rounded values. +#define _mm256_round_pd(V, M) \ + ((__m256d)__builtin_ia32_roundpd256((__v4df)(__m256d)(V), (M))) + +/// Rounds the values stored in a 256-bit vector of [8 x float] as +/// specified by the byte operand. The source values are rounded to integer +/// values and returned as floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_round_ps(__m256 V, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPS </c> instruction. +/// +/// \param V +/// A 256-bit vector of [8 x float]. +/// \param M +/// An integer value that specifies the rounding operation. \n +/// Bits [7:4] are reserved. \n +/// Bit [3] is a precision exception value: \n +/// 0: A normal PE exception is used. \n +/// 1: The PE field is not updated. \n +/// Bit [2] is the rounding control source: \n +/// 0: Use bits [1:0] of \a M. \n +/// 1: Use the current MXCSR setting. \n +/// Bits [1:0] contain the rounding control definition: \n +/// 00: Nearest. \n +/// 01: Downward (toward negative infinity). \n +/// 10: Upward (toward positive infinity). \n +/// 11: Truncated. +/// \returns A 256-bit vector of [8 x float] containing the rounded values. +#define _mm256_round_ps(V, M) \ + ((__m256)__builtin_ia32_roundps256((__v8sf)(__m256)(V), (M))) + +/// Rounds up the values stored in a 256-bit vector of [4 x double]. The +/// source values are rounded up to integer values and returned as 64-bit +/// double-precision floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_ceil_pd(__m256d V); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPD </c> instruction. +/// +/// \param V +/// A 256-bit vector of [4 x double]. +/// \returns A 256-bit vector of [4 x double] containing the rounded up values. +#define _mm256_ceil_pd(V) _mm256_round_pd((V), _MM_FROUND_CEIL) + +/// Rounds down the values stored in a 256-bit vector of [4 x double]. +/// The source values are rounded down to integer values and returned as +/// 64-bit double-precision floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_floor_pd(__m256d V); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPD </c> instruction. +/// +/// \param V +/// A 256-bit vector of [4 x double]. +/// \returns A 256-bit vector of [4 x double] containing the rounded down +/// values. +#define _mm256_floor_pd(V) _mm256_round_pd((V), _MM_FROUND_FLOOR) + +/// Rounds up the values stored in a 256-bit vector of [8 x float]. The +/// source values are rounded up to integer values and returned as +/// floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_ceil_ps(__m256 V); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPS </c> instruction. +/// +/// \param V +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit vector of [8 x float] containing the rounded up values. +#define _mm256_ceil_ps(V) _mm256_round_ps((V), _MM_FROUND_CEIL) + +/// Rounds down the values stored in a 256-bit vector of [8 x float]. The +/// source values are rounded down to integer values and returned as +/// floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_floor_ps(__m256 V); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPS </c> instruction. +/// +/// \param V +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit vector of [8 x float] containing the rounded down values. +#define _mm256_floor_ps(V) _mm256_round_ps((V), _MM_FROUND_FLOOR) + +/* Logical */ +/// Performs a bitwise AND of two 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VANDPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// \returns A 256-bit vector of [4 x double] containing the bitwise AND of the +/// values between both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_and_pd(__m256d __a, __m256d __b) +{ + return (__m256d)((__v4du)__a & (__v4du)__b); +} + +/// Performs a bitwise AND of two 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VANDPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// \returns A 256-bit vector of [8 x float] containing the bitwise AND of the +/// values between both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_and_ps(__m256 __a, __m256 __b) +{ + return (__m256)((__v8su)__a & (__v8su)__b); +} + +/// Performs a bitwise AND of two 256-bit vectors of [4 x double], using +/// the one's complement of the values contained in the first source operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VANDNPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing the left source operand. The +/// one's complement of this value is used in the bitwise AND. +/// \param __b +/// A 256-bit vector of [4 x double] containing the right source operand. +/// \returns A 256-bit vector of [4 x double] containing the bitwise AND of the +/// values of the second operand and the one's complement of the first +/// operand. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_andnot_pd(__m256d __a, __m256d __b) +{ + return (__m256d)(~(__v4du)__a & (__v4du)__b); +} + +/// Performs a bitwise AND of two 256-bit vectors of [8 x float], using +/// the one's complement of the values contained in the first source operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VANDNPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing the left source operand. The +/// one's complement of this value is used in the bitwise AND. +/// \param __b +/// A 256-bit vector of [8 x float] containing the right source operand. +/// \returns A 256-bit vector of [8 x float] containing the bitwise AND of the +/// values of the second operand and the one's complement of the first +/// operand. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_andnot_ps(__m256 __a, __m256 __b) +{ + return (__m256)(~(__v8su)__a & (__v8su)__b); +} + +/// Performs a bitwise OR of two 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VORPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// \returns A 256-bit vector of [4 x double] containing the bitwise OR of the +/// values between both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_or_pd(__m256d __a, __m256d __b) +{ + return (__m256d)((__v4du)__a | (__v4du)__b); +} + +/// Performs a bitwise OR of two 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VORPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// \returns A 256-bit vector of [8 x float] containing the bitwise OR of the +/// values between both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_or_ps(__m256 __a, __m256 __b) +{ + return (__m256)((__v8su)__a | (__v8su)__b); +} + +/// Performs a bitwise XOR of two 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// \returns A 256-bit vector of [4 x double] containing the bitwise XOR of the +/// values between both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_xor_pd(__m256d __a, __m256d __b) +{ + return (__m256d)((__v4du)__a ^ (__v4du)__b); +} + +/// Performs a bitwise XOR of two 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// \returns A 256-bit vector of [8 x float] containing the bitwise XOR of the +/// values between both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_xor_ps(__m256 __a, __m256 __b) +{ + return (__m256)((__v8su)__a ^ (__v8su)__b); +} + +/* Horizontal arithmetic */ +/// Horizontally adds the adjacent pairs of values contained in two +/// 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VHADDPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// The horizontal sums of the values are returned in the even-indexed +/// elements of a vector of [4 x double]. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// The horizontal sums of the values are returned in the odd-indexed +/// elements of a vector of [4 x double]. +/// \returns A 256-bit vector of [4 x double] containing the horizontal sums of +/// both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_hadd_pd(__m256d __a, __m256d __b) +{ + return (__m256d)__builtin_ia32_haddpd256((__v4df)__a, (__v4df)__b); +} + +/// Horizontally adds the adjacent pairs of values contained in two +/// 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VHADDPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// The horizontal sums of the values are returned in the elements with +/// index 0, 1, 4, 5 of a vector of [8 x float]. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// The horizontal sums of the values are returned in the elements with +/// index 2, 3, 6, 7 of a vector of [8 x float]. +/// \returns A 256-bit vector of [8 x float] containing the horizontal sums of +/// both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_hadd_ps(__m256 __a, __m256 __b) +{ + return (__m256)__builtin_ia32_haddps256((__v8sf)__a, (__v8sf)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in two +/// 256-bit vectors of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VHSUBPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// The horizontal differences between the values are returned in the +/// even-indexed elements of a vector of [4 x double]. +/// \param __b +/// A 256-bit vector of [4 x double] containing one of the source operands. +/// The horizontal differences between the values are returned in the +/// odd-indexed elements of a vector of [4 x double]. +/// \returns A 256-bit vector of [4 x double] containing the horizontal +/// differences of both operands. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_hsub_pd(__m256d __a, __m256d __b) +{ + return (__m256d)__builtin_ia32_hsubpd256((__v4df)__a, (__v4df)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in two +/// 256-bit vectors of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VHSUBPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// The horizontal differences between the values are returned in the +/// elements with index 0, 1, 4, 5 of a vector of [8 x float]. +/// \param __b +/// A 256-bit vector of [8 x float] containing one of the source operands. +/// The horizontal differences between the values are returned in the +/// elements with index 2, 3, 6, 7 of a vector of [8 x float]. +/// \returns A 256-bit vector of [8 x float] containing the horizontal +/// differences of both operands. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_hsub_ps(__m256 __a, __m256 __b) +{ + return (__m256)__builtin_ia32_hsubps256((__v8sf)__a, (__v8sf)__b); +} + +/* Vector permutations */ +/// Copies the values in a 128-bit vector of [2 x double] as specified +/// by the 128-bit integer vector operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPERMILPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __c +/// A 128-bit integer vector operand specifying how the values are to be +/// copied. \n +/// Bit [1]: \n +/// 0: Bits [63:0] of the source are copied to bits [63:0] of the returned +/// vector. \n +/// 1: Bits [127:64] of the source are copied to bits [63:0] of the +/// returned vector. \n +/// Bit [65]: \n +/// 0: Bits [63:0] of the source are copied to bits [127:64] of the +/// returned vector. \n +/// 1: Bits [127:64] of the source are copied to bits [127:64] of the +/// returned vector. +/// \returns A 128-bit vector of [2 x double] containing the copied values. +static __inline __m128d __DEFAULT_FN_ATTRS128 +_mm_permutevar_pd(__m128d __a, __m128i __c) +{ + return (__m128d)__builtin_ia32_vpermilvarpd((__v2df)__a, (__v2di)__c); +} + +/// Copies the values in a 256-bit vector of [4 x double] as specified +/// by the 256-bit integer vector operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPERMILPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \param __c +/// A 256-bit integer vector operand specifying how the values are to be +/// copied. \n +/// Bit [1]: \n +/// 0: Bits [63:0] of the source are copied to bits [63:0] of the returned +/// vector. \n +/// 1: Bits [127:64] of the source are copied to bits [63:0] of the +/// returned vector. \n +/// Bit [65]: \n +/// 0: Bits [63:0] of the source are copied to bits [127:64] of the +/// returned vector. \n +/// 1: Bits [127:64] of the source are copied to bits [127:64] of the +/// returned vector. \n +/// Bit [129]: \n +/// 0: Bits [191:128] of the source are copied to bits [191:128] of the +/// returned vector. \n +/// 1: Bits [255:192] of the source are copied to bits [191:128] of the +/// returned vector. \n +/// Bit [193]: \n +/// 0: Bits [191:128] of the source are copied to bits [255:192] of the +/// returned vector. \n +/// 1: Bits [255:192] of the source are copied to bits [255:192] of the +/// returned vector. +/// \returns A 256-bit vector of [4 x double] containing the copied values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_permutevar_pd(__m256d __a, __m256i __c) +{ + return (__m256d)__builtin_ia32_vpermilvarpd256((__v4df)__a, (__v4di)__c); +} + +/// Copies the values stored in a 128-bit vector of [4 x float] as +/// specified by the 128-bit integer vector operand. +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPERMILPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __c +/// A 128-bit integer vector operand specifying how the values are to be +/// copied. \n +/// Bits [1:0]: \n +/// 00: Bits [31:0] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// Bits [33:32]: \n +/// 00: Bits [31:0] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// Bits [65:64]: \n +/// 00: Bits [31:0] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// Bits [97:96]: \n +/// 00: Bits [31:0] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [127:96] of the +/// returned vector. +/// \returns A 128-bit vector of [4 x float] containing the copied values. +static __inline __m128 __DEFAULT_FN_ATTRS128 +_mm_permutevar_ps(__m128 __a, __m128i __c) +{ + return (__m128)__builtin_ia32_vpermilvarps((__v4sf)__a, (__v4si)__c); +} + +/// Copies the values stored in a 256-bit vector of [8 x float] as +/// specified by the 256-bit integer vector operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPERMILPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \param __c +/// A 256-bit integer vector operand specifying how the values are to be +/// copied. \n +/// Bits [1:0]: \n +/// 00: Bits [31:0] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// Bits [33:32]: \n +/// 00: Bits [31:0] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// Bits [65:64]: \n +/// 00: Bits [31:0] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// Bits [97:96]: \n +/// 00: Bits [31:0] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// Bits [129:128]: \n +/// 00: Bits [159:128] of the source are copied to bits [159:128] of the +/// returned vector. \n +/// 01: Bits [191:160] of the source are copied to bits [159:128] of the +/// returned vector. \n +/// 10: Bits [223:192] of the source are copied to bits [159:128] of the +/// returned vector. \n +/// 11: Bits [255:224] of the source are copied to bits [159:128] of the +/// returned vector. \n +/// Bits [161:160]: \n +/// 00: Bits [159:128] of the source are copied to bits [191:160] of the +/// returned vector. \n +/// 01: Bits [191:160] of the source are copied to bits [191:160] of the +/// returned vector. \n +/// 10: Bits [223:192] of the source are copied to bits [191:160] of the +/// returned vector. \n +/// 11: Bits [255:224] of the source are copied to bits [191:160] of the +/// returned vector. \n +/// Bits [193:192]: \n +/// 00: Bits [159:128] of the source are copied to bits [223:192] of the +/// returned vector. \n +/// 01: Bits [191:160] of the source are copied to bits [223:192] of the +/// returned vector. \n +/// 10: Bits [223:192] of the source are copied to bits [223:192] of the +/// returned vector. \n +/// 11: Bits [255:224] of the source are copied to bits [223:192] of the +/// returned vector. \n +/// Bits [225:224]: \n +/// 00: Bits [159:128] of the source are copied to bits [255:224] of the +/// returned vector. \n +/// 01: Bits [191:160] of the source are copied to bits [255:224] of the +/// returned vector. \n +/// 10: Bits [223:192] of the source are copied to bits [255:224] of the +/// returned vector. \n +/// 11: Bits [255:224] of the source are copied to bits [255:224] of the +/// returned vector. +/// \returns A 256-bit vector of [8 x float] containing the copied values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_permutevar_ps(__m256 __a, __m256i __c) +{ + return (__m256)__builtin_ia32_vpermilvarps256((__v8sf)__a, (__v8si)__c); +} + +/// Copies the values in a 128-bit vector of [2 x double] as specified +/// by the immediate integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_permute_pd(__m128d A, const int C); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPERMILPD </c> instruction. +/// +/// \param A +/// A 128-bit vector of [2 x double]. +/// \param C +/// An immediate integer operand specifying how the values are to be +/// copied. \n +/// Bit [0]: \n +/// 0: Bits [63:0] of the source are copied to bits [63:0] of the returned +/// vector. \n +/// 1: Bits [127:64] of the source are copied to bits [63:0] of the +/// returned vector. \n +/// Bit [1]: \n +/// 0: Bits [63:0] of the source are copied to bits [127:64] of the +/// returned vector. \n +/// 1: Bits [127:64] of the source are copied to bits [127:64] of the +/// returned vector. +/// \returns A 128-bit vector of [2 x double] containing the copied values. +#define _mm_permute_pd(A, C) \ + ((__m128d)__builtin_ia32_vpermilpd((__v2df)(__m128d)(A), (int)(C))) + +/// Copies the values in a 256-bit vector of [4 x double] as specified by +/// the immediate integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_permute_pd(__m256d A, const int C); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPERMILPD </c> instruction. +/// +/// \param A +/// A 256-bit vector of [4 x double]. +/// \param C +/// An immediate integer operand specifying how the values are to be +/// copied. \n +/// Bit [0]: \n +/// 0: Bits [63:0] of the source are copied to bits [63:0] of the returned +/// vector. \n +/// 1: Bits [127:64] of the source are copied to bits [63:0] of the +/// returned vector. \n +/// Bit [1]: \n +/// 0: Bits [63:0] of the source are copied to bits [127:64] of the +/// returned vector. \n +/// 1: Bits [127:64] of the source are copied to bits [127:64] of the +/// returned vector. \n +/// Bit [2]: \n +/// 0: Bits [191:128] of the source are copied to bits [191:128] of the +/// returned vector. \n +/// 1: Bits [255:192] of the source are copied to bits [191:128] of the +/// returned vector. \n +/// Bit [3]: \n +/// 0: Bits [191:128] of the source are copied to bits [255:192] of the +/// returned vector. \n +/// 1: Bits [255:192] of the source are copied to bits [255:192] of the +/// returned vector. +/// \returns A 256-bit vector of [4 x double] containing the copied values. +#define _mm256_permute_pd(A, C) \ + ((__m256d)__builtin_ia32_vpermilpd256((__v4df)(__m256d)(A), (int)(C))) + +/// Copies the values in a 128-bit vector of [4 x float] as specified by +/// the immediate integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_permute_ps(__m128 A, const int C); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPERMILPS </c> instruction. +/// +/// \param A +/// A 128-bit vector of [4 x float]. +/// \param C +/// An immediate integer operand specifying how the values are to be +/// copied. \n +/// Bits [1:0]: \n +/// 00: Bits [31:0] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// Bits [3:2]: \n +/// 00: Bits [31:0] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// Bits [5:4]: \n +/// 00: Bits [31:0] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// Bits [7:6]: \n +/// 00: Bits [31:0] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [127:96] of the +/// returned vector. +/// \returns A 128-bit vector of [4 x float] containing the copied values. +#define _mm_permute_ps(A, C) \ + ((__m128)__builtin_ia32_vpermilps((__v4sf)(__m128)(A), (int)(C))) + +/// Copies the values in a 256-bit vector of [8 x float] as specified by +/// the immediate integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_permute_ps(__m256 A, const int C); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPERMILPS </c> instruction. +/// +/// \param A +/// A 256-bit vector of [8 x float]. +/// \param C +/// An immediate integer operand specifying how the values are to be +/// copied. \n +/// Bits [1:0]: \n +/// 00: Bits [31:0] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [31:0] of the +/// returned vector. \n +/// Bits [3:2]: \n +/// 00: Bits [31:0] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [63:32] of the +/// returned vector. \n +/// Bits [5:4]: \n +/// 00: Bits [31:0] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [95:64] of the +/// returned vector. \n +/// Bits [7:6]: \n +/// 00: Bits [31:0] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 01: Bits [63:32] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 10: Bits [95:64] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// 11: Bits [127:96] of the source are copied to bits [127:96] of the +/// returned vector. \n +/// Bits [1:0]: \n +/// 00: Bits [159:128] of the source are copied to bits [159:128] of the +/// returned vector. \n +/// 01: Bits [191:160] of the source are copied to bits [159:128] of the +/// returned vector. \n +/// 10: Bits [223:192] of the source are copied to bits [159:128] of the +/// returned vector. \n +/// 11: Bits [255:224] of the source are copied to bits [159:128] of the +/// returned vector. \n +/// Bits [3:2]: \n +/// 00: Bits [159:128] of the source are copied to bits [191:160] of the +/// returned vector. \n +/// 01: Bits [191:160] of the source are copied to bits [191:160] of the +/// returned vector. \n +/// 10: Bits [223:192] of the source are copied to bits [191:160] of the +/// returned vector. \n +/// 11: Bits [255:224] of the source are copied to bits [191:160] of the +/// returned vector. \n +/// Bits [5:4]: \n +/// 00: Bits [159:128] of the source are copied to bits [223:192] of the +/// returned vector. \n +/// 01: Bits [191:160] of the source are copied to bits [223:192] of the +/// returned vector. \n +/// 10: Bits [223:192] of the source are copied to bits [223:192] of the +/// returned vector. \n +/// 11: Bits [255:224] of the source are copied to bits [223:192] of the +/// returned vector. \n +/// Bits [7:6]: \n +/// 00: Bits [159:128] of the source are copied to bits [255:224] of the +/// returned vector. \n +/// 01: Bits [191:160] of the source are copied to bits [255:224] of the +/// returned vector. \n +/// 10: Bits [223:192] of the source are copied to bits [255:224] of the +/// returned vector. \n +/// 11: Bits [255:224] of the source are copied to bits [255:224] of the +/// returned vector. +/// \returns A 256-bit vector of [8 x float] containing the copied values. +#define _mm256_permute_ps(A, C) \ + ((__m256)__builtin_ia32_vpermilps256((__v8sf)(__m256)(A), (int)(C))) + +/// Permutes 128-bit data values stored in two 256-bit vectors of +/// [4 x double], as specified by the immediate integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_permute2f128_pd(__m256d V1, __m256d V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPERM2F128 </c> instruction. +/// +/// \param V1 +/// A 256-bit vector of [4 x double]. +/// \param V2 +/// A 256-bit vector of [4 x double. +/// \param M +/// An immediate integer operand specifying how the values are to be +/// permuted. \n +/// Bits [1:0]: \n +/// 00: Bits [127:0] of operand \a V1 are copied to bits [127:0] of the +/// destination. \n +/// 01: Bits [255:128] of operand \a V1 are copied to bits [127:0] of the +/// destination. \n +/// 10: Bits [127:0] of operand \a V2 are copied to bits [127:0] of the +/// destination. \n +/// 11: Bits [255:128] of operand \a V2 are copied to bits [127:0] of the +/// destination. \n +/// Bits [5:4]: \n +/// 00: Bits [127:0] of operand \a V1 are copied to bits [255:128] of the +/// destination. \n +/// 01: Bits [255:128] of operand \a V1 are copied to bits [255:128] of the +/// destination. \n +/// 10: Bits [127:0] of operand \a V2 are copied to bits [255:128] of the +/// destination. \n +/// 11: Bits [255:128] of operand \a V2 are copied to bits [255:128] of the +/// destination. +/// \returns A 256-bit vector of [4 x double] containing the copied values. +#define _mm256_permute2f128_pd(V1, V2, M) \ + ((__m256d)__builtin_ia32_vperm2f128_pd256((__v4df)(__m256d)(V1), \ + (__v4df)(__m256d)(V2), (int)(M))) + +/// Permutes 128-bit data values stored in two 256-bit vectors of +/// [8 x float], as specified by the immediate integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_permute2f128_ps(__m256 V1, __m256 V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPERM2F128 </c> instruction. +/// +/// \param V1 +/// A 256-bit vector of [8 x float]. +/// \param V2 +/// A 256-bit vector of [8 x float]. +/// \param M +/// An immediate integer operand specifying how the values are to be +/// permuted. \n +/// Bits [1:0]: \n +/// 00: Bits [127:0] of operand \a V1 are copied to bits [127:0] of the +/// destination. \n +/// 01: Bits [255:128] of operand \a V1 are copied to bits [127:0] of the +/// destination. \n +/// 10: Bits [127:0] of operand \a V2 are copied to bits [127:0] of the +/// destination. \n +/// 11: Bits [255:128] of operand \a V2 are copied to bits [127:0] of the +/// destination. \n +/// Bits [5:4]: \n +/// 00: Bits [127:0] of operand \a V1 are copied to bits [255:128] of the +/// destination. \n +/// 01: Bits [255:128] of operand \a V1 are copied to bits [255:128] of the +/// destination. \n +/// 10: Bits [127:0] of operand \a V2 are copied to bits [255:128] of the +/// destination. \n +/// 11: Bits [255:128] of operand \a V2 are copied to bits [255:128] of the +/// destination. +/// \returns A 256-bit vector of [8 x float] containing the copied values. +#define _mm256_permute2f128_ps(V1, V2, M) \ + ((__m256)__builtin_ia32_vperm2f128_ps256((__v8sf)(__m256)(V1), \ + (__v8sf)(__m256)(V2), (int)(M))) + +/// Permutes 128-bit data values stored in two 256-bit integer vectors, +/// as specified by the immediate integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256i _mm256_permute2f128_si256(__m256i V1, __m256i V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPERM2F128 </c> instruction. +/// +/// \param V1 +/// A 256-bit integer vector. +/// \param V2 +/// A 256-bit integer vector. +/// \param M +/// An immediate integer operand specifying how the values are to be copied. +/// Bits [1:0]: \n +/// 00: Bits [127:0] of operand \a V1 are copied to bits [127:0] of the +/// destination. \n +/// 01: Bits [255:128] of operand \a V1 are copied to bits [127:0] of the +/// destination. \n +/// 10: Bits [127:0] of operand \a V2 are copied to bits [127:0] of the +/// destination. \n +/// 11: Bits [255:128] of operand \a V2 are copied to bits [127:0] of the +/// destination. \n +/// Bits [5:4]: \n +/// 00: Bits [127:0] of operand \a V1 are copied to bits [255:128] of the +/// destination. \n +/// 01: Bits [255:128] of operand \a V1 are copied to bits [255:128] of the +/// destination. \n +/// 10: Bits [127:0] of operand \a V2 are copied to bits [255:128] of the +/// destination. \n +/// 11: Bits [255:128] of operand \a V2 are copied to bits [255:128] of the +/// destination. +/// \returns A 256-bit integer vector containing the copied values. +#define _mm256_permute2f128_si256(V1, V2, M) \ + ((__m256i)__builtin_ia32_vperm2f128_si256((__v8si)(__m256i)(V1), \ + (__v8si)(__m256i)(V2), (int)(M))) + +/* Vector Blend */ +/// Merges 64-bit double-precision data values stored in either of the +/// two 256-bit vectors of [4 x double], as specified by the immediate +/// integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_blend_pd(__m256d V1, __m256d V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VBLENDPD </c> instruction. +/// +/// \param V1 +/// A 256-bit vector of [4 x double]. +/// \param V2 +/// A 256-bit vector of [4 x double]. +/// \param M +/// An immediate integer operand, with mask bits [3:0] specifying how the +/// values are to be copied. The position of the mask bit corresponds to the +/// index of a copied value. When a mask bit is 0, the corresponding 64-bit +/// element in operand \a V1 is copied to the same position in the +/// destination. When a mask bit is 1, the corresponding 64-bit element in +/// operand \a V2 is copied to the same position in the destination. +/// \returns A 256-bit vector of [4 x double] containing the copied values. +#define _mm256_blend_pd(V1, V2, M) \ + ((__m256d)__builtin_ia32_blendpd256((__v4df)(__m256d)(V1), \ + (__v4df)(__m256d)(V2), (int)(M))) + +/// Merges 32-bit single-precision data values stored in either of the +/// two 256-bit vectors of [8 x float], as specified by the immediate +/// integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_blend_ps(__m256 V1, __m256 V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VBLENDPS </c> instruction. +/// +/// \param V1 +/// A 256-bit vector of [8 x float]. +/// \param V2 +/// A 256-bit vector of [8 x float]. +/// \param M +/// An immediate integer operand, with mask bits [7:0] specifying how the +/// values are to be copied. The position of the mask bit corresponds to the +/// index of a copied value. When a mask bit is 0, the corresponding 32-bit +/// element in operand \a V1 is copied to the same position in the +/// destination. When a mask bit is 1, the corresponding 32-bit element in +/// operand \a V2 is copied to the same position in the destination. +/// \returns A 256-bit vector of [8 x float] containing the copied values. +#define _mm256_blend_ps(V1, V2, M) \ + ((__m256)__builtin_ia32_blendps256((__v8sf)(__m256)(V1), \ + (__v8sf)(__m256)(V2), (int)(M))) + +/// Merges 64-bit double-precision data values stored in either of the +/// two 256-bit vectors of [4 x double], as specified by the 256-bit vector +/// operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBLENDVPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \param __b +/// A 256-bit vector of [4 x double]. +/// \param __c +/// A 256-bit vector operand, with mask bits 255, 191, 127, and 63 specifying +/// how the values are to be copied. The position of the mask bit corresponds +/// to the most significant bit of a copied value. When a mask bit is 0, the +/// corresponding 64-bit element in operand \a __a is copied to the same +/// position in the destination. When a mask bit is 1, the corresponding +/// 64-bit element in operand \a __b is copied to the same position in the +/// destination. +/// \returns A 256-bit vector of [4 x double] containing the copied values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_blendv_pd(__m256d __a, __m256d __b, __m256d __c) +{ + return (__m256d)__builtin_ia32_blendvpd256( + (__v4df)__a, (__v4df)__b, (__v4df)__c); +} + +/// Merges 32-bit single-precision data values stored in either of the +/// two 256-bit vectors of [8 x float], as specified by the 256-bit vector +/// operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBLENDVPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \param __b +/// A 256-bit vector of [8 x float]. +/// \param __c +/// A 256-bit vector operand, with mask bits 255, 223, 191, 159, 127, 95, 63, +/// and 31 specifying how the values are to be copied. The position of the +/// mask bit corresponds to the most significant bit of a copied value. When +/// a mask bit is 0, the corresponding 32-bit element in operand \a __a is +/// copied to the same position in the destination. When a mask bit is 1, the +/// corresponding 32-bit element in operand \a __b is copied to the same +/// position in the destination. +/// \returns A 256-bit vector of [8 x float] containing the copied values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c) +{ + return (__m256)__builtin_ia32_blendvps256( + (__v8sf)__a, (__v8sf)__b, (__v8sf)__c); +} + +/* Vector Dot Product */ +/// Computes two dot products in parallel, using the lower and upper +/// halves of two [8 x float] vectors as input to the two computations, and +/// returning the two dot products in the lower and upper halves of the +/// [8 x float] result. +/// +/// The immediate integer operand controls which input elements will +/// contribute to the dot product, and where the final results are returned. +/// In general, for each dot product, the four corresponding elements of the +/// input vectors are multiplied; the first two and second two products are +/// summed, then the two sums are added to form the final result. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_dp_ps(__m256 V1, __m256 V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VDPPS </c> instruction. +/// +/// \param V1 +/// A vector of [8 x float] values, treated as two [4 x float] vectors. +/// \param V2 +/// A vector of [8 x float] values, treated as two [4 x float] vectors. +/// \param M +/// An immediate integer argument. Bits [7:4] determine which elements of +/// the input vectors are used, with bit [4] corresponding to the lowest +/// element and bit [7] corresponding to the highest element of each [4 x +/// float] subvector. If a bit is set, the corresponding elements from the +/// two input vectors are used as an input for dot product; otherwise that +/// input is treated as zero. Bits [3:0] determine which elements of the +/// result will receive a copy of the final dot product, with bit [0] +/// corresponding to the lowest element and bit [3] corresponding to the +/// highest element of each [4 x float] subvector. If a bit is set, the dot +/// product is returned in the corresponding element; otherwise that element +/// is set to zero. The bitmask is applied in the same way to each of the +/// two parallel dot product computations. +/// \returns A 256-bit vector of [8 x float] containing the two dot products. +#define _mm256_dp_ps(V1, V2, M) \ + ((__m256)__builtin_ia32_dpps256((__v8sf)(__m256)(V1), \ + (__v8sf)(__m256)(V2), (M))) + +/* Vector shuffle */ +/// Selects 8 float values from the 256-bit operands of [8 x float], as +/// specified by the immediate value operand. +/// +/// The four selected elements in each operand are copied to the destination +/// according to the bits specified in the immediate operand. The selected +/// elements from the first 256-bit operand are copied to bits [63:0] and +/// bits [191:128] of the destination, and the selected elements from the +/// second 256-bit operand are copied to bits [127:64] and bits [255:192] of +/// the destination. For example, if bits [7:0] of the immediate operand +/// contain a value of 0xFF, the 256-bit destination vector would contain the +/// following values: b[7], b[7], a[7], a[7], b[3], b[3], a[3], a[3]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_shuffle_ps(__m256 a, __m256 b, const int mask); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VSHUFPS </c> instruction. +/// +/// \param a +/// A 256-bit vector of [8 x float]. The four selected elements in this +/// operand are copied to bits [63:0] and bits [191:128] in the destination, +/// according to the bits specified in the immediate operand. +/// \param b +/// A 256-bit vector of [8 x float]. The four selected elements in this +/// operand are copied to bits [127:64] and bits [255:192] in the +/// destination, according to the bits specified in the immediate operand. +/// \param mask +/// An immediate value containing an 8-bit value specifying which elements to +/// copy from \a a and \a b \n. +/// Bits [3:0] specify the values copied from operand \a a. \n +/// Bits [7:4] specify the values copied from operand \a b. \n +/// The destinations within the 256-bit destination are assigned values as +/// follows, according to the bit value assignments described below: \n +/// Bits [1:0] are used to assign values to bits [31:0] and [159:128] in the +/// destination. \n +/// Bits [3:2] are used to assign values to bits [63:32] and [191:160] in the +/// destination. \n +/// Bits [5:4] are used to assign values to bits [95:64] and [223:192] in the +/// destination. \n +/// Bits [7:6] are used to assign values to bits [127:96] and [255:224] in +/// the destination. \n +/// Bit value assignments: \n +/// 00: Bits [31:0] and [159:128] are copied from the selected operand. \n +/// 01: Bits [63:32] and [191:160] are copied from the selected operand. \n +/// 10: Bits [95:64] and [223:192] are copied from the selected operand. \n +/// 11: Bits [127:96] and [255:224] are copied from the selected operand. \n +/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. +/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form +/// <c>[b6, b4, b2, b0]</c>. +/// \returns A 256-bit vector of [8 x float] containing the shuffled values. +#define _mm256_shuffle_ps(a, b, mask) \ + ((__m256)__builtin_ia32_shufps256((__v8sf)(__m256)(a), \ + (__v8sf)(__m256)(b), (int)(mask))) + +/// Selects four double-precision values from the 256-bit operands of +/// [4 x double], as specified by the immediate value operand. +/// +/// The selected elements from the first 256-bit operand are copied to bits +/// [63:0] and bits [191:128] in the destination, and the selected elements +/// from the second 256-bit operand are copied to bits [127:64] and bits +/// [255:192] in the destination. For example, if bits [3:0] of the immediate +/// operand contain a value of 0xF, the 256-bit destination vector would +/// contain the following values: b[3], a[3], b[1], a[1]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_shuffle_pd(__m256d a, __m256d b, const int mask); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VSHUFPD </c> instruction. +/// +/// \param a +/// A 256-bit vector of [4 x double]. +/// \param b +/// A 256-bit vector of [4 x double]. +/// \param mask +/// An immediate value containing 8-bit values specifying which elements to +/// copy from \a a and \a b: \n +/// Bit [0]=0: Bits [63:0] are copied from \a a to bits [63:0] of the +/// destination. \n +/// Bit [0]=1: Bits [127:64] are copied from \a a to bits [63:0] of the +/// destination. \n +/// Bit [1]=0: Bits [63:0] are copied from \a b to bits [127:64] of the +/// destination. \n +/// Bit [1]=1: Bits [127:64] are copied from \a b to bits [127:64] of the +/// destination. \n +/// Bit [2]=0: Bits [191:128] are copied from \a a to bits [191:128] of the +/// destination. \n +/// Bit [2]=1: Bits [255:192] are copied from \a a to bits [191:128] of the +/// destination. \n +/// Bit [3]=0: Bits [191:128] are copied from \a b to bits [255:192] of the +/// destination. \n +/// Bit [3]=1: Bits [255:192] are copied from \a b to bits [255:192] of the +/// destination. +/// \returns A 256-bit vector of [4 x double] containing the shuffled values. +#define _mm256_shuffle_pd(a, b, mask) \ + ((__m256d)__builtin_ia32_shufpd256((__v4df)(__m256d)(a), \ + (__v4df)(__m256d)(b), (int)(mask))) + +/* Compare */ +#define _CMP_EQ_OQ 0x00 /* Equal (ordered, non-signaling) */ +#define _CMP_LT_OS 0x01 /* Less-than (ordered, signaling) */ +#define _CMP_LE_OS 0x02 /* Less-than-or-equal (ordered, signaling) */ +#define _CMP_UNORD_Q 0x03 /* Unordered (non-signaling) */ +#define _CMP_NEQ_UQ 0x04 /* Not-equal (unordered, non-signaling) */ +#define _CMP_NLT_US 0x05 /* Not-less-than (unordered, signaling) */ +#define _CMP_NLE_US 0x06 /* Not-less-than-or-equal (unordered, signaling) */ +#define _CMP_ORD_Q 0x07 /* Ordered (non-signaling) */ +#define _CMP_EQ_UQ 0x08 /* Equal (unordered, non-signaling) */ +#define _CMP_NGE_US 0x09 /* Not-greater-than-or-equal (unordered, signaling) */ +#define _CMP_NGT_US 0x0a /* Not-greater-than (unordered, signaling) */ +#define _CMP_FALSE_OQ 0x0b /* False (ordered, non-signaling) */ +#define _CMP_NEQ_OQ 0x0c /* Not-equal (ordered, non-signaling) */ +#define _CMP_GE_OS 0x0d /* Greater-than-or-equal (ordered, signaling) */ +#define _CMP_GT_OS 0x0e /* Greater-than (ordered, signaling) */ +#define _CMP_TRUE_UQ 0x0f /* True (unordered, non-signaling) */ +#define _CMP_EQ_OS 0x10 /* Equal (ordered, signaling) */ +#define _CMP_LT_OQ 0x11 /* Less-than (ordered, non-signaling) */ +#define _CMP_LE_OQ 0x12 /* Less-than-or-equal (ordered, non-signaling) */ +#define _CMP_UNORD_S 0x13 /* Unordered (signaling) */ +#define _CMP_NEQ_US 0x14 /* Not-equal (unordered, signaling) */ +#define _CMP_NLT_UQ 0x15 /* Not-less-than (unordered, non-signaling) */ +#define _CMP_NLE_UQ 0x16 /* Not-less-than-or-equal (unordered, non-signaling) */ +#define _CMP_ORD_S 0x17 /* Ordered (signaling) */ +#define _CMP_EQ_US 0x18 /* Equal (unordered, signaling) */ +#define _CMP_NGE_UQ 0x19 /* Not-greater-than-or-equal (unordered, non-signaling) */ +#define _CMP_NGT_UQ 0x1a /* Not-greater-than (unordered, non-signaling) */ +#define _CMP_FALSE_OS 0x1b /* False (ordered, signaling) */ +#define _CMP_NEQ_OS 0x1c /* Not-equal (ordered, signaling) */ +#define _CMP_GE_OQ 0x1d /* Greater-than-or-equal (ordered, non-signaling) */ +#define _CMP_GT_OQ 0x1e /* Greater-than (ordered, non-signaling) */ +#define _CMP_TRUE_US 0x1f /* True (unordered, signaling) */ + +/// Compares each of the corresponding double-precision values of two +/// 128-bit vectors of [2 x double], using the operation specified by the +/// immediate integer operand. +/// +/// Returns a [2 x double] vector consisting of two doubles corresponding to +/// the two comparison results: zero if the comparison is false, and all 1's +/// if the comparison is true. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_cmp_pd(__m128d a, __m128d b, const int c); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCMPPD </c> instruction. +/// +/// \param a +/// A 128-bit vector of [2 x double]. +/// \param b +/// A 128-bit vector of [2 x double]. +/// \param c +/// An immediate integer operand, with bits [4:0] specifying which comparison +/// operation to use: \n +/// 0x00: Equal (ordered, non-signaling) \n +/// 0x01: Less-than (ordered, signaling) \n +/// 0x02: Less-than-or-equal (ordered, signaling) \n +/// 0x03: Unordered (non-signaling) \n +/// 0x04: Not-equal (unordered, non-signaling) \n +/// 0x05: Not-less-than (unordered, signaling) \n +/// 0x06: Not-less-than-or-equal (unordered, signaling) \n +/// 0x07: Ordered (non-signaling) \n +/// 0x08: Equal (unordered, non-signaling) \n +/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n +/// 0x0A: Not-greater-than (unordered, signaling) \n +/// 0x0B: False (ordered, non-signaling) \n +/// 0x0C: Not-equal (ordered, non-signaling) \n +/// 0x0D: Greater-than-or-equal (ordered, signaling) \n +/// 0x0E: Greater-than (ordered, signaling) \n +/// 0x0F: True (unordered, non-signaling) \n +/// 0x10: Equal (ordered, signaling) \n +/// 0x11: Less-than (ordered, non-signaling) \n +/// 0x12: Less-than-or-equal (ordered, non-signaling) \n +/// 0x13: Unordered (signaling) \n +/// 0x14: Not-equal (unordered, signaling) \n +/// 0x15: Not-less-than (unordered, non-signaling) \n +/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n +/// 0x17: Ordered (signaling) \n +/// 0x18: Equal (unordered, signaling) \n +/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n +/// 0x1A: Not-greater-than (unordered, non-signaling) \n +/// 0x1B: False (ordered, signaling) \n +/// 0x1C: Not-equal (ordered, signaling) \n +/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n +/// 0x1E: Greater-than (ordered, non-signaling) \n +/// 0x1F: True (unordered, signaling) +/// \returns A 128-bit vector of [2 x double] containing the comparison results. +#define _mm_cmp_pd(a, b, c) \ + ((__m128d)__builtin_ia32_cmppd((__v2df)(__m128d)(a), \ + (__v2df)(__m128d)(b), (c))) + +/// Compares each of the corresponding values of two 128-bit vectors of +/// [4 x float], using the operation specified by the immediate integer +/// operand. +/// +/// Returns a [4 x float] vector consisting of four floats corresponding to +/// the four comparison results: zero if the comparison is false, and all 1's +/// if the comparison is true. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_cmp_ps(__m128 a, __m128 b, const int c); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCMPPS </c> instruction. +/// +/// \param a +/// A 128-bit vector of [4 x float]. +/// \param b +/// A 128-bit vector of [4 x float]. +/// \param c +/// An immediate integer operand, with bits [4:0] specifying which comparison +/// operation to use: \n +/// 0x00: Equal (ordered, non-signaling) \n +/// 0x01: Less-than (ordered, signaling) \n +/// 0x02: Less-than-or-equal (ordered, signaling) \n +/// 0x03: Unordered (non-signaling) \n +/// 0x04: Not-equal (unordered, non-signaling) \n +/// 0x05: Not-less-than (unordered, signaling) \n +/// 0x06: Not-less-than-or-equal (unordered, signaling) \n +/// 0x07: Ordered (non-signaling) \n +/// 0x08: Equal (unordered, non-signaling) \n +/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n +/// 0x0A: Not-greater-than (unordered, signaling) \n +/// 0x0B: False (ordered, non-signaling) \n +/// 0x0C: Not-equal (ordered, non-signaling) \n +/// 0x0D: Greater-than-or-equal (ordered, signaling) \n +/// 0x0E: Greater-than (ordered, signaling) \n +/// 0x0F: True (unordered, non-signaling) \n +/// 0x10: Equal (ordered, signaling) \n +/// 0x11: Less-than (ordered, non-signaling) \n +/// 0x12: Less-than-or-equal (ordered, non-signaling) \n +/// 0x13: Unordered (signaling) \n +/// 0x14: Not-equal (unordered, signaling) \n +/// 0x15: Not-less-than (unordered, non-signaling) \n +/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n +/// 0x17: Ordered (signaling) \n +/// 0x18: Equal (unordered, signaling) \n +/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n +/// 0x1A: Not-greater-than (unordered, non-signaling) \n +/// 0x1B: False (ordered, signaling) \n +/// 0x1C: Not-equal (ordered, signaling) \n +/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n +/// 0x1E: Greater-than (ordered, non-signaling) \n +/// 0x1F: True (unordered, signaling) +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +#define _mm_cmp_ps(a, b, c) \ + ((__m128)__builtin_ia32_cmpps((__v4sf)(__m128)(a), \ + (__v4sf)(__m128)(b), (c))) + +/// Compares each of the corresponding double-precision values of two +/// 256-bit vectors of [4 x double], using the operation specified by the +/// immediate integer operand. +/// +/// Returns a [4 x double] vector consisting of four doubles corresponding to +/// the four comparison results: zero if the comparison is false, and all 1's +/// if the comparison is true. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_cmp_pd(__m256d a, __m256d b, const int c); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCMPPD </c> instruction. +/// +/// \param a +/// A 256-bit vector of [4 x double]. +/// \param b +/// A 256-bit vector of [4 x double]. +/// \param c +/// An immediate integer operand, with bits [4:0] specifying which comparison +/// operation to use: \n +/// 0x00: Equal (ordered, non-signaling) \n +/// 0x01: Less-than (ordered, signaling) \n +/// 0x02: Less-than-or-equal (ordered, signaling) \n +/// 0x03: Unordered (non-signaling) \n +/// 0x04: Not-equal (unordered, non-signaling) \n +/// 0x05: Not-less-than (unordered, signaling) \n +/// 0x06: Not-less-than-or-equal (unordered, signaling) \n +/// 0x07: Ordered (non-signaling) \n +/// 0x08: Equal (unordered, non-signaling) \n +/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n +/// 0x0A: Not-greater-than (unordered, signaling) \n +/// 0x0B: False (ordered, non-signaling) \n +/// 0x0C: Not-equal (ordered, non-signaling) \n +/// 0x0D: Greater-than-or-equal (ordered, signaling) \n +/// 0x0E: Greater-than (ordered, signaling) \n +/// 0x0F: True (unordered, non-signaling) \n +/// 0x10: Equal (ordered, signaling) \n +/// 0x11: Less-than (ordered, non-signaling) \n +/// 0x12: Less-than-or-equal (ordered, non-signaling) \n +/// 0x13: Unordered (signaling) \n +/// 0x14: Not-equal (unordered, signaling) \n +/// 0x15: Not-less-than (unordered, non-signaling) \n +/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n +/// 0x17: Ordered (signaling) \n +/// 0x18: Equal (unordered, signaling) \n +/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n +/// 0x1A: Not-greater-than (unordered, non-signaling) \n +/// 0x1B: False (ordered, signaling) \n +/// 0x1C: Not-equal (ordered, signaling) \n +/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n +/// 0x1E: Greater-than (ordered, non-signaling) \n +/// 0x1F: True (unordered, signaling) +/// \returns A 256-bit vector of [4 x double] containing the comparison results. +#define _mm256_cmp_pd(a, b, c) \ + ((__m256d)__builtin_ia32_cmppd256((__v4df)(__m256d)(a), \ + (__v4df)(__m256d)(b), (c))) + +/// Compares each of the corresponding values of two 256-bit vectors of +/// [8 x float], using the operation specified by the immediate integer +/// operand. +/// +/// Returns a [8 x float] vector consisting of eight floats corresponding to +/// the eight comparison results: zero if the comparison is false, and all +/// 1's if the comparison is true. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_cmp_ps(__m256 a, __m256 b, const int c); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCMPPS </c> instruction. +/// +/// \param a +/// A 256-bit vector of [8 x float]. +/// \param b +/// A 256-bit vector of [8 x float]. +/// \param c +/// An immediate integer operand, with bits [4:0] specifying which comparison +/// operation to use: \n +/// 0x00: Equal (ordered, non-signaling) \n +/// 0x01: Less-than (ordered, signaling) \n +/// 0x02: Less-than-or-equal (ordered, signaling) \n +/// 0x03: Unordered (non-signaling) \n +/// 0x04: Not-equal (unordered, non-signaling) \n +/// 0x05: Not-less-than (unordered, signaling) \n +/// 0x06: Not-less-than-or-equal (unordered, signaling) \n +/// 0x07: Ordered (non-signaling) \n +/// 0x08: Equal (unordered, non-signaling) \n +/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n +/// 0x0A: Not-greater-than (unordered, signaling) \n +/// 0x0B: False (ordered, non-signaling) \n +/// 0x0C: Not-equal (ordered, non-signaling) \n +/// 0x0D: Greater-than-or-equal (ordered, signaling) \n +/// 0x0E: Greater-than (ordered, signaling) \n +/// 0x0F: True (unordered, non-signaling) \n +/// 0x10: Equal (ordered, signaling) \n +/// 0x11: Less-than (ordered, non-signaling) \n +/// 0x12: Less-than-or-equal (ordered, non-signaling) \n +/// 0x13: Unordered (signaling) \n +/// 0x14: Not-equal (unordered, signaling) \n +/// 0x15: Not-less-than (unordered, non-signaling) \n +/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n +/// 0x17: Ordered (signaling) \n +/// 0x18: Equal (unordered, signaling) \n +/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n +/// 0x1A: Not-greater-than (unordered, non-signaling) \n +/// 0x1B: False (ordered, signaling) \n +/// 0x1C: Not-equal (ordered, signaling) \n +/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n +/// 0x1E: Greater-than (ordered, non-signaling) \n +/// 0x1F: True (unordered, signaling) +/// \returns A 256-bit vector of [8 x float] containing the comparison results. +#define _mm256_cmp_ps(a, b, c) \ + ((__m256)__builtin_ia32_cmpps256((__v8sf)(__m256)(a), \ + (__v8sf)(__m256)(b), (c))) + +/// Compares each of the corresponding scalar double-precision values of +/// two 128-bit vectors of [2 x double], using the operation specified by the +/// immediate integer operand. +/// +/// If the result is true, all 64 bits of the destination vector are set; +/// otherwise they are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_cmp_sd(__m128d a, __m128d b, const int c); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCMPSD </c> instruction. +/// +/// \param a +/// A 128-bit vector of [2 x double]. +/// \param b +/// A 128-bit vector of [2 x double]. +/// \param c +/// An immediate integer operand, with bits [4:0] specifying which comparison +/// operation to use: \n +/// 0x00: Equal (ordered, non-signaling) \n +/// 0x01: Less-than (ordered, signaling) \n +/// 0x02: Less-than-or-equal (ordered, signaling) \n +/// 0x03: Unordered (non-signaling) \n +/// 0x04: Not-equal (unordered, non-signaling) \n +/// 0x05: Not-less-than (unordered, signaling) \n +/// 0x06: Not-less-than-or-equal (unordered, signaling) \n +/// 0x07: Ordered (non-signaling) \n +/// 0x08: Equal (unordered, non-signaling) \n +/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n +/// 0x0A: Not-greater-than (unordered, signaling) \n +/// 0x0B: False (ordered, non-signaling) \n +/// 0x0C: Not-equal (ordered, non-signaling) \n +/// 0x0D: Greater-than-or-equal (ordered, signaling) \n +/// 0x0E: Greater-than (ordered, signaling) \n +/// 0x0F: True (unordered, non-signaling) \n +/// 0x10: Equal (ordered, signaling) \n +/// 0x11: Less-than (ordered, non-signaling) \n +/// 0x12: Less-than-or-equal (ordered, non-signaling) \n +/// 0x13: Unordered (signaling) \n +/// 0x14: Not-equal (unordered, signaling) \n +/// 0x15: Not-less-than (unordered, non-signaling) \n +/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n +/// 0x17: Ordered (signaling) \n +/// 0x18: Equal (unordered, signaling) \n +/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n +/// 0x1A: Not-greater-than (unordered, non-signaling) \n +/// 0x1B: False (ordered, signaling) \n +/// 0x1C: Not-equal (ordered, signaling) \n +/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n +/// 0x1E: Greater-than (ordered, non-signaling) \n +/// 0x1F: True (unordered, signaling) +/// \returns A 128-bit vector of [2 x double] containing the comparison results. +#define _mm_cmp_sd(a, b, c) \ + ((__m128d)__builtin_ia32_cmpsd((__v2df)(__m128d)(a), \ + (__v2df)(__m128d)(b), (c))) + +/// Compares each of the corresponding scalar values of two 128-bit +/// vectors of [4 x float], using the operation specified by the immediate +/// integer operand. +/// +/// If the result is true, all 32 bits of the destination vector are set; +/// otherwise they are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_cmp_ss(__m128 a, __m128 b, const int c); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCMPSS </c> instruction. +/// +/// \param a +/// A 128-bit vector of [4 x float]. +/// \param b +/// A 128-bit vector of [4 x float]. +/// \param c +/// An immediate integer operand, with bits [4:0] specifying which comparison +/// operation to use: \n +/// 0x00: Equal (ordered, non-signaling) \n +/// 0x01: Less-than (ordered, signaling) \n +/// 0x02: Less-than-or-equal (ordered, signaling) \n +/// 0x03: Unordered (non-signaling) \n +/// 0x04: Not-equal (unordered, non-signaling) \n +/// 0x05: Not-less-than (unordered, signaling) \n +/// 0x06: Not-less-than-or-equal (unordered, signaling) \n +/// 0x07: Ordered (non-signaling) \n +/// 0x08: Equal (unordered, non-signaling) \n +/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n +/// 0x0A: Not-greater-than (unordered, signaling) \n +/// 0x0B: False (ordered, non-signaling) \n +/// 0x0C: Not-equal (ordered, non-signaling) \n +/// 0x0D: Greater-than-or-equal (ordered, signaling) \n +/// 0x0E: Greater-than (ordered, signaling) \n +/// 0x0F: True (unordered, non-signaling) \n +/// 0x10: Equal (ordered, signaling) \n +/// 0x11: Less-than (ordered, non-signaling) \n +/// 0x12: Less-than-or-equal (ordered, non-signaling) \n +/// 0x13: Unordered (signaling) \n +/// 0x14: Not-equal (unordered, signaling) \n +/// 0x15: Not-less-than (unordered, non-signaling) \n +/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n +/// 0x17: Ordered (signaling) \n +/// 0x18: Equal (unordered, signaling) \n +/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n +/// 0x1A: Not-greater-than (unordered, non-signaling) \n +/// 0x1B: False (ordered, signaling) \n +/// 0x1C: Not-equal (ordered, signaling) \n +/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n +/// 0x1E: Greater-than (ordered, non-signaling) \n +/// 0x1F: True (unordered, signaling) +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +#define _mm_cmp_ss(a, b, c) \ + ((__m128)__builtin_ia32_cmpss((__v4sf)(__m128)(a), \ + (__v4sf)(__m128)(b), (c))) + +/// Takes a [8 x i32] vector and returns the vector element value +/// indexed by the immediate constant operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm256_extract_epi32(__m256i X, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128+COMPOSITE </c> +/// instruction. +/// +/// \param X +/// A 256-bit vector of [8 x i32]. +/// \param N +/// An immediate integer operand with bits [2:0] determining which vector +/// element is extracted and returned. +/// \returns A 32-bit integer containing the extracted 32 bits of extended +/// packed data. +#define _mm256_extract_epi32(X, N) \ + ((int)__builtin_ia32_vec_ext_v8si((__v8si)(__m256i)(X), (int)(N))) + +/// Takes a [16 x i16] vector and returns the vector element value +/// indexed by the immediate constant operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm256_extract_epi16(__m256i X, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128+COMPOSITE </c> +/// instruction. +/// +/// \param X +/// A 256-bit integer vector of [16 x i16]. +/// \param N +/// An immediate integer operand with bits [3:0] determining which vector +/// element is extracted and returned. +/// \returns A 32-bit integer containing the extracted 16 bits of zero extended +/// packed data. +#define _mm256_extract_epi16(X, N) \ + ((int)(unsigned short)__builtin_ia32_vec_ext_v16hi((__v16hi)(__m256i)(X), \ + (int)(N))) + +/// Takes a [32 x i8] vector and returns the vector element value +/// indexed by the immediate constant operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm256_extract_epi8(__m256i X, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128+COMPOSITE </c> +/// instruction. +/// +/// \param X +/// A 256-bit integer vector of [32 x i8]. +/// \param N +/// An immediate integer operand with bits [4:0] determining which vector +/// element is extracted and returned. +/// \returns A 32-bit integer containing the extracted 8 bits of zero extended +/// packed data. +#define _mm256_extract_epi8(X, N) \ + ((int)(unsigned char)__builtin_ia32_vec_ext_v32qi((__v32qi)(__m256i)(X), \ + (int)(N))) + +#ifdef __x86_64__ +/// Takes a [4 x i64] vector and returns the vector element value +/// indexed by the immediate constant operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// long long _mm256_extract_epi64(__m256i X, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128+COMPOSITE </c> +/// instruction. +/// +/// \param X +/// A 256-bit integer vector of [4 x i64]. +/// \param N +/// An immediate integer operand with bits [1:0] determining which vector +/// element is extracted and returned. +/// \returns A 64-bit integer containing the extracted 64 bits of extended +/// packed data. +#define _mm256_extract_epi64(X, N) \ + ((long long)__builtin_ia32_vec_ext_v4di((__v4di)(__m256i)(X), (int)(N))) +#endif + +/// Takes a [8 x i32] vector and replaces the vector element value +/// indexed by the immediate constant operand by a new value. Returns the +/// modified vector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256i _mm256_insert_epi32(__m256i X, int I, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VINSERTF128+COMPOSITE </c> +/// instruction. +/// +/// \param X +/// A vector of [8 x i32] to be used by the insert operation. +/// \param I +/// An integer value. The replacement value for the insert operation. +/// \param N +/// An immediate integer specifying the index of the vector element to be +/// replaced. +/// \returns A copy of vector \a X, after replacing its element indexed by +/// \a N with \a I. +#define _mm256_insert_epi32(X, I, N) \ + ((__m256i)__builtin_ia32_vec_set_v8si((__v8si)(__m256i)(X), \ + (int)(I), (int)(N))) + + +/// Takes a [16 x i16] vector and replaces the vector element value +/// indexed by the immediate constant operand with a new value. Returns the +/// modified vector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256i _mm256_insert_epi16(__m256i X, int I, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VINSERTF128+COMPOSITE </c> +/// instruction. +/// +/// \param X +/// A vector of [16 x i16] to be used by the insert operation. +/// \param I +/// An i16 integer value. The replacement value for the insert operation. +/// \param N +/// An immediate integer specifying the index of the vector element to be +/// replaced. +/// \returns A copy of vector \a X, after replacing its element indexed by +/// \a N with \a I. +#define _mm256_insert_epi16(X, I, N) \ + ((__m256i)__builtin_ia32_vec_set_v16hi((__v16hi)(__m256i)(X), \ + (int)(I), (int)(N))) + +/// Takes a [32 x i8] vector and replaces the vector element value +/// indexed by the immediate constant operand with a new value. Returns the +/// modified vector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256i _mm256_insert_epi8(__m256i X, int I, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VINSERTF128+COMPOSITE </c> +/// instruction. +/// +/// \param X +/// A vector of [32 x i8] to be used by the insert operation. +/// \param I +/// An i8 integer value. The replacement value for the insert operation. +/// \param N +/// An immediate integer specifying the index of the vector element to be +/// replaced. +/// \returns A copy of vector \a X, after replacing its element indexed by +/// \a N with \a I. +#define _mm256_insert_epi8(X, I, N) \ + ((__m256i)__builtin_ia32_vec_set_v32qi((__v32qi)(__m256i)(X), \ + (int)(I), (int)(N))) + +#ifdef __x86_64__ +/// Takes a [4 x i64] vector and replaces the vector element value +/// indexed by the immediate constant operand with a new value. Returns the +/// modified vector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256i _mm256_insert_epi64(__m256i X, int I, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VINSERTF128+COMPOSITE </c> +/// instruction. +/// +/// \param X +/// A vector of [4 x i64] to be used by the insert operation. +/// \param I +/// A 64-bit integer value. The replacement value for the insert operation. +/// \param N +/// An immediate integer specifying the index of the vector element to be +/// replaced. +/// \returns A copy of vector \a X, after replacing its element indexed by +/// \a N with \a I. +#define _mm256_insert_epi64(X, I, N) \ + ((__m256i)__builtin_ia32_vec_set_v4di((__v4di)(__m256i)(X), \ + (long long)(I), (int)(N))) +#endif + +/* Conversion */ +/// Converts a vector of [4 x i32] into a vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTDQ2PD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector of [4 x i32]. +/// \returns A 256-bit vector of [4 x double] containing the converted values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_cvtepi32_pd(__m128i __a) +{ + return (__m256d)__builtin_convertvector((__v4si)__a, __v4df); +} + +/// Converts a vector of [8 x i32] into a vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTDQ2PS </c> instruction. +/// +/// \param __a +/// A 256-bit integer vector. +/// \returns A 256-bit vector of [8 x float] containing the converted values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_cvtepi32_ps(__m256i __a) +{ + return (__m256)__builtin_convertvector((__v8si)__a, __v8sf); +} + +/// Converts a 256-bit vector of [4 x double] into a 128-bit vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPD2PS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \returns A 128-bit vector of [4 x float] containing the converted values. +static __inline __m128 __DEFAULT_FN_ATTRS +_mm256_cvtpd_ps(__m256d __a) +{ + return (__m128)__builtin_ia32_cvtpd2ps256((__v4df) __a); +} + +/// Converts a vector of [8 x float] into a vector of [8 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPS2DQ </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit integer vector containing the converted values. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_cvtps_epi32(__m256 __a) +{ + return (__m256i)__builtin_ia32_cvtps2dq256((__v8sf) __a); +} + +/// Converts a 128-bit vector of [4 x float] into a 256-bit vector of [4 +/// x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPS2PD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 256-bit vector of [4 x double] containing the converted values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_cvtps_pd(__m128 __a) +{ + return (__m256d)__builtin_convertvector((__v4sf)__a, __v4df); +} + +/// Converts a 256-bit vector of [4 x double] into a 128-bit vector of [4 +/// x i32], truncating the result by rounding towards zero when it is +/// inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTPD2DQ </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \returns A 128-bit integer vector containing the converted values. +static __inline __m128i __DEFAULT_FN_ATTRS +_mm256_cvttpd_epi32(__m256d __a) +{ + return (__m128i)__builtin_ia32_cvttpd2dq256((__v4df) __a); +} + +/// Converts a 256-bit vector of [4 x double] into a 128-bit vector of [4 +/// x i32]. When a conversion is inexact, the value returned is rounded +/// according to the rounding control bits in the MXCSR register. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPD2DQ </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \returns A 128-bit integer vector containing the converted values. +static __inline __m128i __DEFAULT_FN_ATTRS +_mm256_cvtpd_epi32(__m256d __a) +{ + return (__m128i)__builtin_ia32_cvtpd2dq256((__v4df) __a); +} + +/// Converts a vector of [8 x float] into a vector of [8 x i32], +/// truncating the result by rounding towards zero when it is inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTPS2DQ </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \returns A 256-bit integer vector containing the converted values. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_cvttps_epi32(__m256 __a) +{ + return (__m256i)__builtin_ia32_cvttps2dq256((__v8sf) __a); +} + +/// Returns the first element of the input vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \returns A 64 bit double containing the first element of the input vector. +static __inline double __DEFAULT_FN_ATTRS +_mm256_cvtsd_f64(__m256d __a) +{ + return __a[0]; +} + +/// Returns the first element of the input vector of [8 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x i32]. +/// \returns A 32 bit integer containing the first element of the input vector. +static __inline int __DEFAULT_FN_ATTRS +_mm256_cvtsi256_si32(__m256i __a) +{ + __v8si __b = (__v8si)__a; + return __b[0]; +} + +/// Returns the first element of the input vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \returns A 32 bit float containing the first element of the input vector. +static __inline float __DEFAULT_FN_ATTRS +_mm256_cvtss_f32(__m256 __a) +{ + return __a[0]; +} + +/* Vector replicate */ +/// Moves and duplicates odd-indexed values from a 256-bit vector of +/// [8 x float] to float values in a 256-bit vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSHDUP </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. \n +/// Bits [255:224] of \a __a are written to bits [255:224] and [223:192] of +/// the return value. \n +/// Bits [191:160] of \a __a are written to bits [191:160] and [159:128] of +/// the return value. \n +/// Bits [127:96] of \a __a are written to bits [127:96] and [95:64] of the +/// return value. \n +/// Bits [63:32] of \a __a are written to bits [63:32] and [31:0] of the +/// return value. +/// \returns A 256-bit vector of [8 x float] containing the moved and duplicated +/// values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_movehdup_ps(__m256 __a) +{ + return __builtin_shufflevector((__v8sf)__a, (__v8sf)__a, 1, 1, 3, 3, 5, 5, 7, 7); +} + +/// Moves and duplicates even-indexed values from a 256-bit vector of +/// [8 x float] to float values in a 256-bit vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSLDUP </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. \n +/// Bits [223:192] of \a __a are written to bits [255:224] and [223:192] of +/// the return value. \n +/// Bits [159:128] of \a __a are written to bits [191:160] and [159:128] of +/// the return value. \n +/// Bits [95:64] of \a __a are written to bits [127:96] and [95:64] of the +/// return value. \n +/// Bits [31:0] of \a __a are written to bits [63:32] and [31:0] of the +/// return value. +/// \returns A 256-bit vector of [8 x float] containing the moved and duplicated +/// values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_moveldup_ps(__m256 __a) +{ + return __builtin_shufflevector((__v8sf)__a, (__v8sf)__a, 0, 0, 2, 2, 4, 4, 6, 6); +} + +/// Moves and duplicates double-precision floating point values from a +/// 256-bit vector of [4 x double] to double-precision values in a 256-bit +/// vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDDUP </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. \n +/// Bits [63:0] of \a __a are written to bits [127:64] and [63:0] of the +/// return value. \n +/// Bits [191:128] of \a __a are written to bits [255:192] and [191:128] of +/// the return value. +/// \returns A 256-bit vector of [4 x double] containing the moved and +/// duplicated values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_movedup_pd(__m256d __a) +{ + return __builtin_shufflevector((__v4df)__a, (__v4df)__a, 0, 0, 2, 2); +} + +/* Unpack and Interleave */ +/// Unpacks the odd-indexed vector elements from two 256-bit vectors of +/// [4 x double] and interleaves them into a 256-bit vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKHPD </c> instruction. +/// +/// \param __a +/// A 256-bit floating-point vector of [4 x double]. \n +/// Bits [127:64] are written to bits [63:0] of the return value. \n +/// Bits [255:192] are written to bits [191:128] of the return value. \n +/// \param __b +/// A 256-bit floating-point vector of [4 x double]. \n +/// Bits [127:64] are written to bits [127:64] of the return value. \n +/// Bits [255:192] are written to bits [255:192] of the return value. \n +/// \returns A 256-bit vector of [4 x double] containing the interleaved values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_unpackhi_pd(__m256d __a, __m256d __b) +{ + return __builtin_shufflevector((__v4df)__a, (__v4df)__b, 1, 5, 1+2, 5+2); +} + +/// Unpacks the even-indexed vector elements from two 256-bit vectors of +/// [4 x double] and interleaves them into a 256-bit vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPD </c> instruction. +/// +/// \param __a +/// A 256-bit floating-point vector of [4 x double]. \n +/// Bits [63:0] are written to bits [63:0] of the return value. \n +/// Bits [191:128] are written to bits [191:128] of the return value. +/// \param __b +/// A 256-bit floating-point vector of [4 x double]. \n +/// Bits [63:0] are written to bits [127:64] of the return value. \n +/// Bits [191:128] are written to bits [255:192] of the return value. \n +/// \returns A 256-bit vector of [4 x double] containing the interleaved values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_unpacklo_pd(__m256d __a, __m256d __b) +{ + return __builtin_shufflevector((__v4df)__a, (__v4df)__b, 0, 4, 0+2, 4+2); +} + +/// Unpacks the 32-bit vector elements 2, 3, 6 and 7 from each of the +/// two 256-bit vectors of [8 x float] and interleaves them into a 256-bit +/// vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKHPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. \n +/// Bits [95:64] are written to bits [31:0] of the return value. \n +/// Bits [127:96] are written to bits [95:64] of the return value. \n +/// Bits [223:192] are written to bits [159:128] of the return value. \n +/// Bits [255:224] are written to bits [223:192] of the return value. +/// \param __b +/// A 256-bit vector of [8 x float]. \n +/// Bits [95:64] are written to bits [63:32] of the return value. \n +/// Bits [127:96] are written to bits [127:96] of the return value. \n +/// Bits [223:192] are written to bits [191:160] of the return value. \n +/// Bits [255:224] are written to bits [255:224] of the return value. +/// \returns A 256-bit vector of [8 x float] containing the interleaved values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_unpackhi_ps(__m256 __a, __m256 __b) +{ + return __builtin_shufflevector((__v8sf)__a, (__v8sf)__b, 2, 10, 2+1, 10+1, 6, 14, 6+1, 14+1); +} + +/// Unpacks the 32-bit vector elements 0, 1, 4 and 5 from each of the +/// two 256-bit vectors of [8 x float] and interleaves them into a 256-bit +/// vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. \n +/// Bits [31:0] are written to bits [31:0] of the return value. \n +/// Bits [63:32] are written to bits [95:64] of the return value. \n +/// Bits [159:128] are written to bits [159:128] of the return value. \n +/// Bits [191:160] are written to bits [223:192] of the return value. +/// \param __b +/// A 256-bit vector of [8 x float]. \n +/// Bits [31:0] are written to bits [63:32] of the return value. \n +/// Bits [63:32] are written to bits [127:96] of the return value. \n +/// Bits [159:128] are written to bits [191:160] of the return value. \n +/// Bits [191:160] are written to bits [255:224] of the return value. +/// \returns A 256-bit vector of [8 x float] containing the interleaved values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_unpacklo_ps(__m256 __a, __m256 __b) +{ + return __builtin_shufflevector((__v8sf)__a, (__v8sf)__b, 0, 8, 0+1, 8+1, 4, 12, 4+1, 12+1); +} + +/* Bit Test */ +/// Given two 128-bit floating-point vectors of [2 x double], perform an +/// element-by-element comparison of the double-precision element in the +/// first source vector and the corresponding element in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of double-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of double-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the ZF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns the ZF flag in the EFLAGS register. +static __inline int __DEFAULT_FN_ATTRS128 +_mm_testz_pd(__m128d __a, __m128d __b) +{ + return __builtin_ia32_vtestzpd((__v2df)__a, (__v2df)__b); +} + +/// Given two 128-bit floating-point vectors of [2 x double], perform an +/// element-by-element comparison of the double-precision element in the +/// first source vector and the corresponding element in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of double-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of double-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the CF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns the CF flag in the EFLAGS register. +static __inline int __DEFAULT_FN_ATTRS128 +_mm_testc_pd(__m128d __a, __m128d __b) +{ + return __builtin_ia32_vtestcpd((__v2df)__a, (__v2df)__b); +} + +/// Given two 128-bit floating-point vectors of [2 x double], perform an +/// element-by-element comparison of the double-precision element in the +/// first source vector and the corresponding element in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of double-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of double-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, +/// otherwise it returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. +static __inline int __DEFAULT_FN_ATTRS128 +_mm_testnzc_pd(__m128d __a, __m128d __b) +{ + return __builtin_ia32_vtestnzcpd((__v2df)__a, (__v2df)__b); +} + +/// Given two 128-bit floating-point vectors of [4 x float], perform an +/// element-by-element comparison of the single-precision element in the +/// first source vector and the corresponding element in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of single-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of single-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the ZF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns the ZF flag. +static __inline int __DEFAULT_FN_ATTRS128 +_mm_testz_ps(__m128 __a, __m128 __b) +{ + return __builtin_ia32_vtestzps((__v4sf)__a, (__v4sf)__b); +} + +/// Given two 128-bit floating-point vectors of [4 x float], perform an +/// element-by-element comparison of the single-precision element in the +/// first source vector and the corresponding element in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of single-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of single-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the CF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns the CF flag. +static __inline int __DEFAULT_FN_ATTRS128 +_mm_testc_ps(__m128 __a, __m128 __b) +{ + return __builtin_ia32_vtestcps((__v4sf)__a, (__v4sf)__b); +} + +/// Given two 128-bit floating-point vectors of [4 x float], perform an +/// element-by-element comparison of the single-precision element in the +/// first source vector and the corresponding element in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of single-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of single-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, +/// otherwise it returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. +static __inline int __DEFAULT_FN_ATTRS128 +_mm_testnzc_ps(__m128 __a, __m128 __b) +{ + return __builtin_ia32_vtestnzcps((__v4sf)__a, (__v4sf)__b); +} + +/// Given two 256-bit floating-point vectors of [4 x double], perform an +/// element-by-element comparison of the double-precision elements in the +/// first source vector and the corresponding elements in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of double-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of double-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the ZF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \param __b +/// A 256-bit vector of [4 x double]. +/// \returns the ZF flag. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testz_pd(__m256d __a, __m256d __b) +{ + return __builtin_ia32_vtestzpd256((__v4df)__a, (__v4df)__b); +} + +/// Given two 256-bit floating-point vectors of [4 x double], perform an +/// element-by-element comparison of the double-precision elements in the +/// first source vector and the corresponding elements in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of double-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of double-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the CF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \param __b +/// A 256-bit vector of [4 x double]. +/// \returns the CF flag. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testc_pd(__m256d __a, __m256d __b) +{ + return __builtin_ia32_vtestcpd256((__v4df)__a, (__v4df)__b); +} + +/// Given two 256-bit floating-point vectors of [4 x double], perform an +/// element-by-element comparison of the double-precision elements in the +/// first source vector and the corresponding elements in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of double-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of double-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, +/// otherwise it returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double]. +/// \param __b +/// A 256-bit vector of [4 x double]. +/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testnzc_pd(__m256d __a, __m256d __b) +{ + return __builtin_ia32_vtestnzcpd256((__v4df)__a, (__v4df)__b); +} + +/// Given two 256-bit floating-point vectors of [8 x float], perform an +/// element-by-element comparison of the single-precision element in the +/// first source vector and the corresponding element in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of single-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of single-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the ZF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \param __b +/// A 256-bit vector of [8 x float]. +/// \returns the ZF flag. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testz_ps(__m256 __a, __m256 __b) +{ + return __builtin_ia32_vtestzps256((__v8sf)__a, (__v8sf)__b); +} + +/// Given two 256-bit floating-point vectors of [8 x float], perform an +/// element-by-element comparison of the single-precision element in the +/// first source vector and the corresponding element in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of single-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of single-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the CF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \param __b +/// A 256-bit vector of [8 x float]. +/// \returns the CF flag. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testc_ps(__m256 __a, __m256 __b) +{ + return __builtin_ia32_vtestcps256((__v8sf)__a, (__v8sf)__b); +} + +/// Given two 256-bit floating-point vectors of [8 x float], perform an +/// element-by-element comparison of the single-precision elements in the +/// first source vector and the corresponding elements in the second source +/// vector. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of single-precision elements where the +/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the +/// ZF flag is set to 1. \n +/// If there is at least one pair of single-precision elements where the +/// sign-bit of the first element is 0 and the sign-bit of the second element +/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, +/// otherwise it returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float]. +/// \param __b +/// A 256-bit vector of [8 x float]. +/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testnzc_ps(__m256 __a, __m256 __b) +{ + return __builtin_ia32_vtestnzcps256((__v8sf)__a, (__v8sf)__b); +} + +/// Given two 256-bit integer vectors, perform a bit-by-bit comparison +/// of the two source vectors. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of bits where both bits are 1, the ZF flag +/// is set to 0. Otherwise the ZF flag is set to 1. \n +/// If there is at least one pair of bits where the bit from the first source +/// vector is 0 and the bit from the second source vector is 1, the CF flag +/// is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the ZF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPTEST </c> instruction. +/// +/// \param __a +/// A 256-bit integer vector. +/// \param __b +/// A 256-bit integer vector. +/// \returns the ZF flag. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testz_si256(__m256i __a, __m256i __b) +{ + return __builtin_ia32_ptestz256((__v4di)__a, (__v4di)__b); +} + +/// Given two 256-bit integer vectors, perform a bit-by-bit comparison +/// of the two source vectors. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of bits where both bits are 1, the ZF flag +/// is set to 0. Otherwise the ZF flag is set to 1. \n +/// If there is at least one pair of bits where the bit from the first source +/// vector is 0 and the bit from the second source vector is 1, the CF flag +/// is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns the value of the CF flag. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPTEST </c> instruction. +/// +/// \param __a +/// A 256-bit integer vector. +/// \param __b +/// A 256-bit integer vector. +/// \returns the CF flag. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testc_si256(__m256i __a, __m256i __b) +{ + return __builtin_ia32_ptestc256((__v4di)__a, (__v4di)__b); +} + +/// Given two 256-bit integer vectors, perform a bit-by-bit comparison +/// of the two source vectors. +/// +/// The EFLAGS register is updated as follows: \n +/// If there is at least one pair of bits where both bits are 1, the ZF flag +/// is set to 0. Otherwise the ZF flag is set to 1. \n +/// If there is at least one pair of bits where the bit from the first source +/// vector is 0 and the bit from the second source vector is 1, the CF flag +/// is set to 0. Otherwise the CF flag is set to 1. \n +/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, +/// otherwise it returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPTEST </c> instruction. +/// +/// \param __a +/// A 256-bit integer vector. +/// \param __b +/// A 256-bit integer vector. +/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. +static __inline int __DEFAULT_FN_ATTRS +_mm256_testnzc_si256(__m256i __a, __m256i __b) +{ + return __builtin_ia32_ptestnzc256((__v4di)__a, (__v4di)__b); +} + +/* Vector extract sign mask */ +/// Extracts the sign bits of double-precision floating point elements +/// in a 256-bit vector of [4 x double] and writes them to the lower order +/// bits of the return value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVMSKPD </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [4 x double] containing the double-precision +/// floating point values with sign bits to be extracted. +/// \returns The sign bits from the operand, written to bits [3:0]. +static __inline int __DEFAULT_FN_ATTRS +_mm256_movemask_pd(__m256d __a) +{ + return __builtin_ia32_movmskpd256((__v4df)__a); +} + +/// Extracts the sign bits of single-precision floating point elements +/// in a 256-bit vector of [8 x float] and writes them to the lower order +/// bits of the return value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVMSKPS </c> instruction. +/// +/// \param __a +/// A 256-bit vector of [8 x float] containing the single-precision floating +/// point values with sign bits to be extracted. +/// \returns The sign bits from the operand, written to bits [7:0]. +static __inline int __DEFAULT_FN_ATTRS +_mm256_movemask_ps(__m256 __a) +{ + return __builtin_ia32_movmskps256((__v8sf)__a); +} + +/* Vector __zero */ +/// Zeroes the contents of all XMM or YMM registers. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VZEROALL </c> instruction. +static __inline void __attribute__((__always_inline__, __nodebug__, __target__("avx"))) +_mm256_zeroall(void) +{ + __builtin_ia32_vzeroall(); +} + +/// Zeroes the upper 128 bits (bits 255:128) of all YMM registers. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VZEROUPPER </c> instruction. +static __inline void __attribute__((__always_inline__, __nodebug__, __target__("avx"))) +_mm256_zeroupper(void) +{ + __builtin_ia32_vzeroupper(); +} + +/* Vector load with broadcast */ +/// Loads a scalar single-precision floating point value from the +/// specified address pointed to by \a __a and broadcasts it to the elements +/// of a [4 x float] vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBROADCASTSS </c> instruction. +/// +/// \param __a +/// The single-precision floating point value to be broadcast. +/// \returns A 128-bit vector of [4 x float] whose 32-bit elements are set +/// equal to the broadcast value. +static __inline __m128 __DEFAULT_FN_ATTRS128 +_mm_broadcast_ss(float const *__a) +{ + float __f = *__a; + return __extension__ (__m128)(__v4sf){ __f, __f, __f, __f }; +} + +/// Loads a scalar double-precision floating point value from the +/// specified address pointed to by \a __a and broadcasts it to the elements +/// of a [4 x double] vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBROADCASTSD </c> instruction. +/// +/// \param __a +/// The double-precision floating point value to be broadcast. +/// \returns A 256-bit vector of [4 x double] whose 64-bit elements are set +/// equal to the broadcast value. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_broadcast_sd(double const *__a) +{ + double __d = *__a; + return __extension__ (__m256d)(__v4df){ __d, __d, __d, __d }; +} + +/// Loads a scalar single-precision floating point value from the +/// specified address pointed to by \a __a and broadcasts it to the elements +/// of a [8 x float] vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBROADCASTSS </c> instruction. +/// +/// \param __a +/// The single-precision floating point value to be broadcast. +/// \returns A 256-bit vector of [8 x float] whose 32-bit elements are set +/// equal to the broadcast value. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_broadcast_ss(float const *__a) +{ + float __f = *__a; + return __extension__ (__m256)(__v8sf){ __f, __f, __f, __f, __f, __f, __f, __f }; +} + +/// Loads the data from a 128-bit vector of [2 x double] from the +/// specified address pointed to by \a __a and broadcasts it to 128-bit +/// elements in a 256-bit vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBROADCASTF128 </c> instruction. +/// +/// \param __a +/// The 128-bit vector of [2 x double] to be broadcast. +/// \returns A 256-bit vector of [4 x double] whose 128-bit elements are set +/// equal to the broadcast value. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_broadcast_pd(__m128d const *__a) +{ + __m128d __b = _mm_loadu_pd((const double *)__a); + return (__m256d)__builtin_shufflevector((__v2df)__b, (__v2df)__b, + 0, 1, 0, 1); +} + +/// Loads the data from a 128-bit vector of [4 x float] from the +/// specified address pointed to by \a __a and broadcasts it to 128-bit +/// elements in a 256-bit vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBROADCASTF128 </c> instruction. +/// +/// \param __a +/// The 128-bit vector of [4 x float] to be broadcast. +/// \returns A 256-bit vector of [8 x float] whose 128-bit elements are set +/// equal to the broadcast value. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_broadcast_ps(__m128 const *__a) +{ + __m128 __b = _mm_loadu_ps((const float *)__a); + return (__m256)__builtin_shufflevector((__v4sf)__b, (__v4sf)__b, + 0, 1, 2, 3, 0, 1, 2, 3); +} + +/* SIMD load ops */ +/// Loads 4 double-precision floating point values from a 32-byte aligned +/// memory location pointed to by \a __p into a vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPD </c> instruction. +/// +/// \param __p +/// A 32-byte aligned pointer to a memory location containing +/// double-precision floating point values. +/// \returns A 256-bit vector of [4 x double] containing the moved values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_load_pd(double const *__p) +{ + return *(const __m256d *)__p; +} + +/// Loads 8 single-precision floating point values from a 32-byte aligned +/// memory location pointed to by \a __p into a vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPS </c> instruction. +/// +/// \param __p +/// A 32-byte aligned pointer to a memory location containing float values. +/// \returns A 256-bit vector of [8 x float] containing the moved values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_load_ps(float const *__p) +{ + return *(const __m256 *)__p; +} + +/// Loads 4 double-precision floating point values from an unaligned +/// memory location pointed to by \a __p into a vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPD </c> instruction. +/// +/// \param __p +/// A pointer to a memory location containing double-precision floating +/// point values. +/// \returns A 256-bit vector of [4 x double] containing the moved values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_loadu_pd(double const *__p) +{ + struct __loadu_pd { + __m256d_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_pd*)__p)->__v; +} + +/// Loads 8 single-precision floating point values from an unaligned +/// memory location pointed to by \a __p into a vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPS </c> instruction. +/// +/// \param __p +/// A pointer to a memory location containing single-precision floating +/// point values. +/// \returns A 256-bit vector of [8 x float] containing the moved values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_loadu_ps(float const *__p) +{ + struct __loadu_ps { + __m256_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_ps*)__p)->__v; +} + +/// Loads 256 bits of integer data from a 32-byte aligned memory +/// location pointed to by \a __p into elements of a 256-bit integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDQA </c> instruction. +/// +/// \param __p +/// A 32-byte aligned pointer to a 256-bit integer vector containing integer +/// values. +/// \returns A 256-bit integer vector containing the moved values. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_load_si256(__m256i const *__p) +{ + return *__p; +} + +/// Loads 256 bits of integer data from an unaligned memory location +/// pointed to by \a __p into a 256-bit integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDQU </c> instruction. +/// +/// \param __p +/// A pointer to a 256-bit integer vector containing integer values. +/// \returns A 256-bit integer vector containing the moved values. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_loadu_si256(__m256i_u const *__p) +{ + struct __loadu_si256 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_si256*)__p)->__v; +} + +/// Loads 256 bits of integer data from an unaligned memory location +/// pointed to by \a __p into a 256-bit integer vector. This intrinsic may +/// perform better than \c _mm256_loadu_si256 when the data crosses a cache +/// line boundary. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VLDDQU </c> instruction. +/// +/// \param __p +/// A pointer to a 256-bit integer vector containing integer values. +/// \returns A 256-bit integer vector containing the moved values. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_lddqu_si256(__m256i_u const *__p) +{ + return (__m256i)__builtin_ia32_lddqu256((char const *)__p); +} + +/* SIMD store ops */ +/// Stores double-precision floating point values from a 256-bit vector +/// of [4 x double] to a 32-byte aligned memory location pointed to by +/// \a __p. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPD </c> instruction. +/// +/// \param __p +/// A 32-byte aligned pointer to a memory location that will receive the +/// double-precision floaing point values. +/// \param __a +/// A 256-bit vector of [4 x double] containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_store_pd(double *__p, __m256d __a) +{ + *(__m256d *)__p = __a; +} + +/// Stores single-precision floating point values from a 256-bit vector +/// of [8 x float] to a 32-byte aligned memory location pointed to by \a __p. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPS </c> instruction. +/// +/// \param __p +/// A 32-byte aligned pointer to a memory location that will receive the +/// float values. +/// \param __a +/// A 256-bit vector of [8 x float] containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_store_ps(float *__p, __m256 __a) +{ + *(__m256 *)__p = __a; +} + +/// Stores double-precision floating point values from a 256-bit vector +/// of [4 x double] to an unaligned memory location pointed to by \a __p. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPD </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the double-precision +/// floating point values. +/// \param __a +/// A 256-bit vector of [4 x double] containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_storeu_pd(double *__p, __m256d __a) +{ + struct __storeu_pd { + __m256d_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_pd*)__p)->__v = __a; +} + +/// Stores single-precision floating point values from a 256-bit vector +/// of [8 x float] to an unaligned memory location pointed to by \a __p. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPS </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the float values. +/// \param __a +/// A 256-bit vector of [8 x float] containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_storeu_ps(float *__p, __m256 __a) +{ + struct __storeu_ps { + __m256_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_ps*)__p)->__v = __a; +} + +/// Stores integer values from a 256-bit integer vector to a 32-byte +/// aligned memory location pointed to by \a __p. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDQA </c> instruction. +/// +/// \param __p +/// A 32-byte aligned pointer to a memory location that will receive the +/// integer values. +/// \param __a +/// A 256-bit integer vector containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_store_si256(__m256i *__p, __m256i __a) +{ + *__p = __a; +} + +/// Stores integer values from a 256-bit integer vector to an unaligned +/// memory location pointed to by \a __p. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDQU </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the integer values. +/// \param __a +/// A 256-bit integer vector containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_storeu_si256(__m256i_u *__p, __m256i __a) +{ + struct __storeu_si256 { + __m256i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_si256*)__p)->__v = __a; +} + +/* Conditional load ops */ +/// Conditionally loads double-precision floating point elements from a +/// memory location pointed to by \a __p into a 128-bit vector of +/// [2 x double], depending on the mask bits associated with each data +/// element. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVPD </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that contains the double-precision +/// floating point values. +/// \param __m +/// A 128-bit integer vector containing the mask. The most significant bit of +/// each data element represents the mask bits. If a mask bit is zero, the +/// corresponding value in the memory location is not loaded and the +/// corresponding field in the return value is set to zero. +/// \returns A 128-bit vector of [2 x double] containing the loaded values. +static __inline __m128d __DEFAULT_FN_ATTRS128 +_mm_maskload_pd(double const *__p, __m128i __m) +{ + return (__m128d)__builtin_ia32_maskloadpd((const __v2df *)__p, (__v2di)__m); +} + +/// Conditionally loads double-precision floating point elements from a +/// memory location pointed to by \a __p into a 256-bit vector of +/// [4 x double], depending on the mask bits associated with each data +/// element. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVPD </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that contains the double-precision +/// floating point values. +/// \param __m +/// A 256-bit integer vector of [4 x quadword] containing the mask. The most +/// significant bit of each quadword element represents the mask bits. If a +/// mask bit is zero, the corresponding value in the memory location is not +/// loaded and the corresponding field in the return value is set to zero. +/// \returns A 256-bit vector of [4 x double] containing the loaded values. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_maskload_pd(double const *__p, __m256i __m) +{ + return (__m256d)__builtin_ia32_maskloadpd256((const __v4df *)__p, + (__v4di)__m); +} + +/// Conditionally loads single-precision floating point elements from a +/// memory location pointed to by \a __p into a 128-bit vector of +/// [4 x float], depending on the mask bits associated with each data +/// element. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVPS </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that contains the single-precision +/// floating point values. +/// \param __m +/// A 128-bit integer vector containing the mask. The most significant bit of +/// each data element represents the mask bits. If a mask bit is zero, the +/// corresponding value in the memory location is not loaded and the +/// corresponding field in the return value is set to zero. +/// \returns A 128-bit vector of [4 x float] containing the loaded values. +static __inline __m128 __DEFAULT_FN_ATTRS128 +_mm_maskload_ps(float const *__p, __m128i __m) +{ + return (__m128)__builtin_ia32_maskloadps((const __v4sf *)__p, (__v4si)__m); +} + +/// Conditionally loads single-precision floating point elements from a +/// memory location pointed to by \a __p into a 256-bit vector of +/// [8 x float], depending on the mask bits associated with each data +/// element. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVPS </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that contains the single-precision +/// floating point values. +/// \param __m +/// A 256-bit integer vector of [8 x dword] containing the mask. The most +/// significant bit of each dword element represents the mask bits. If a mask +/// bit is zero, the corresponding value in the memory location is not loaded +/// and the corresponding field in the return value is set to zero. +/// \returns A 256-bit vector of [8 x float] containing the loaded values. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_maskload_ps(float const *__p, __m256i __m) +{ + return (__m256)__builtin_ia32_maskloadps256((const __v8sf *)__p, (__v8si)__m); +} + +/* Conditional store ops */ +/// Moves single-precision floating point values from a 256-bit vector +/// of [8 x float] to a memory location pointed to by \a __p, according to +/// the specified mask. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVPS </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the float values. +/// \param __m +/// A 256-bit integer vector of [8 x dword] containing the mask. The most +/// significant bit of each dword element in the mask vector represents the +/// mask bits. If a mask bit is zero, the corresponding value from vector +/// \a __a is not stored and the corresponding field in the memory location +/// pointed to by \a __p is not changed. +/// \param __a +/// A 256-bit vector of [8 x float] containing the values to be stored. +static __inline void __DEFAULT_FN_ATTRS +_mm256_maskstore_ps(float *__p, __m256i __m, __m256 __a) +{ + __builtin_ia32_maskstoreps256((__v8sf *)__p, (__v8si)__m, (__v8sf)__a); +} + +/// Moves double-precision values from a 128-bit vector of [2 x double] +/// to a memory location pointed to by \a __p, according to the specified +/// mask. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVPD </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the float values. +/// \param __m +/// A 128-bit integer vector containing the mask. The most significant bit of +/// each field in the mask vector represents the mask bits. If a mask bit is +/// zero, the corresponding value from vector \a __a is not stored and the +/// corresponding field in the memory location pointed to by \a __p is not +/// changed. +/// \param __a +/// A 128-bit vector of [2 x double] containing the values to be stored. +static __inline void __DEFAULT_FN_ATTRS128 +_mm_maskstore_pd(double *__p, __m128i __m, __m128d __a) +{ + __builtin_ia32_maskstorepd((__v2df *)__p, (__v2di)__m, (__v2df)__a); +} + +/// Moves double-precision values from a 256-bit vector of [4 x double] +/// to a memory location pointed to by \a __p, according to the specified +/// mask. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVPD </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the float values. +/// \param __m +/// A 256-bit integer vector of [4 x quadword] containing the mask. The most +/// significant bit of each quadword element in the mask vector represents +/// the mask bits. If a mask bit is zero, the corresponding value from vector +/// __a is not stored and the corresponding field in the memory location +/// pointed to by \a __p is not changed. +/// \param __a +/// A 256-bit vector of [4 x double] containing the values to be stored. +static __inline void __DEFAULT_FN_ATTRS +_mm256_maskstore_pd(double *__p, __m256i __m, __m256d __a) +{ + __builtin_ia32_maskstorepd256((__v4df *)__p, (__v4di)__m, (__v4df)__a); +} + +/// Moves single-precision floating point values from a 128-bit vector +/// of [4 x float] to a memory location pointed to by \a __p, according to +/// the specified mask. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVPS </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the float values. +/// \param __m +/// A 128-bit integer vector containing the mask. The most significant bit of +/// each field in the mask vector represents the mask bits. If a mask bit is +/// zero, the corresponding value from vector __a is not stored and the +/// corresponding field in the memory location pointed to by \a __p is not +/// changed. +/// \param __a +/// A 128-bit vector of [4 x float] containing the values to be stored. +static __inline void __DEFAULT_FN_ATTRS128 +_mm_maskstore_ps(float *__p, __m128i __m, __m128 __a) +{ + __builtin_ia32_maskstoreps((__v4sf *)__p, (__v4si)__m, (__v4sf)__a); +} + +/* Cacheability support ops */ +/// Moves integer data from a 256-bit integer vector to a 32-byte +/// aligned memory location. To minimize caching, the data is flagged as +/// non-temporal (unlikely to be used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVNTDQ </c> instruction. +/// +/// \param __a +/// A pointer to a 32-byte aligned memory location that will receive the +/// integer values. +/// \param __b +/// A 256-bit integer vector containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_stream_si256(__m256i *__a, __m256i __b) +{ + typedef __v4di __v4di_aligned __attribute__((aligned(32))); + __builtin_nontemporal_store((__v4di_aligned)__b, (__v4di_aligned*)__a); +} + +/// Moves double-precision values from a 256-bit vector of [4 x double] +/// to a 32-byte aligned memory location. To minimize caching, the data is +/// flagged as non-temporal (unlikely to be used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVNTPD </c> instruction. +/// +/// \param __a +/// A pointer to a 32-byte aligned memory location that will receive the +/// double-precision floating-point values. +/// \param __b +/// A 256-bit vector of [4 x double] containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_stream_pd(double *__a, __m256d __b) +{ + typedef __v4df __v4df_aligned __attribute__((aligned(32))); + __builtin_nontemporal_store((__v4df_aligned)__b, (__v4df_aligned*)__a); +} + +/// Moves single-precision floating point values from a 256-bit vector +/// of [8 x float] to a 32-byte aligned memory location. To minimize +/// caching, the data is flagged as non-temporal (unlikely to be used again +/// soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVNTPS </c> instruction. +/// +/// \param __p +/// A pointer to a 32-byte aligned memory location that will receive the +/// single-precision floating point values. +/// \param __a +/// A 256-bit vector of [8 x float] containing the values to be moved. +static __inline void __DEFAULT_FN_ATTRS +_mm256_stream_ps(float *__p, __m256 __a) +{ + typedef __v8sf __v8sf_aligned __attribute__((aligned(32))); + __builtin_nontemporal_store((__v8sf_aligned)__a, (__v8sf_aligned*)__p); +} + +/* Create vectors */ +/// Create a 256-bit vector of [4 x double] with undefined values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \returns A 256-bit vector of [4 x double] containing undefined values. +static __inline__ __m256d __DEFAULT_FN_ATTRS +_mm256_undefined_pd(void) +{ + return (__m256d)__builtin_ia32_undef256(); +} + +/// Create a 256-bit vector of [8 x float] with undefined values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \returns A 256-bit vector of [8 x float] containing undefined values. +static __inline__ __m256 __DEFAULT_FN_ATTRS +_mm256_undefined_ps(void) +{ + return (__m256)__builtin_ia32_undef256(); +} + +/// Create a 256-bit integer vector with undefined values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \returns A 256-bit integer vector containing undefined values. +static __inline__ __m256i __DEFAULT_FN_ATTRS +_mm256_undefined_si256(void) +{ + return (__m256i)__builtin_ia32_undef256(); +} + +/// Constructs a 256-bit floating-point vector of [4 x double] +/// initialized with the specified double-precision floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPD+VINSERTF128 </c> +/// instruction. +/// +/// \param __a +/// A double-precision floating-point value used to initialize bits [255:192] +/// of the result. +/// \param __b +/// A double-precision floating-point value used to initialize bits [191:128] +/// of the result. +/// \param __c +/// A double-precision floating-point value used to initialize bits [127:64] +/// of the result. +/// \param __d +/// A double-precision floating-point value used to initialize bits [63:0] +/// of the result. +/// \returns An initialized 256-bit floating-point vector of [4 x double]. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_set_pd(double __a, double __b, double __c, double __d) +{ + return __extension__ (__m256d){ __d, __c, __b, __a }; +} + +/// Constructs a 256-bit floating-point vector of [8 x float] initialized +/// with the specified single-precision floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __a +/// A single-precision floating-point value used to initialize bits [255:224] +/// of the result. +/// \param __b +/// A single-precision floating-point value used to initialize bits [223:192] +/// of the result. +/// \param __c +/// A single-precision floating-point value used to initialize bits [191:160] +/// of the result. +/// \param __d +/// A single-precision floating-point value used to initialize bits [159:128] +/// of the result. +/// \param __e +/// A single-precision floating-point value used to initialize bits [127:96] +/// of the result. +/// \param __f +/// A single-precision floating-point value used to initialize bits [95:64] +/// of the result. +/// \param __g +/// A single-precision floating-point value used to initialize bits [63:32] +/// of the result. +/// \param __h +/// A single-precision floating-point value used to initialize bits [31:0] +/// of the result. +/// \returns An initialized 256-bit floating-point vector of [8 x float]. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_set_ps(float __a, float __b, float __c, float __d, + float __e, float __f, float __g, float __h) +{ + return __extension__ (__m256){ __h, __g, __f, __e, __d, __c, __b, __a }; +} + +/// Constructs a 256-bit integer vector initialized with the specified +/// 32-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __i0 +/// A 32-bit integral value used to initialize bits [255:224] of the result. +/// \param __i1 +/// A 32-bit integral value used to initialize bits [223:192] of the result. +/// \param __i2 +/// A 32-bit integral value used to initialize bits [191:160] of the result. +/// \param __i3 +/// A 32-bit integral value used to initialize bits [159:128] of the result. +/// \param __i4 +/// A 32-bit integral value used to initialize bits [127:96] of the result. +/// \param __i5 +/// A 32-bit integral value used to initialize bits [95:64] of the result. +/// \param __i6 +/// A 32-bit integral value used to initialize bits [63:32] of the result. +/// \param __i7 +/// A 32-bit integral value used to initialize bits [31:0] of the result. +/// \returns An initialized 256-bit integer vector. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set_epi32(int __i0, int __i1, int __i2, int __i3, + int __i4, int __i5, int __i6, int __i7) +{ + return __extension__ (__m256i)(__v8si){ __i7, __i6, __i5, __i4, __i3, __i2, __i1, __i0 }; +} + +/// Constructs a 256-bit integer vector initialized with the specified +/// 16-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __w15 +/// A 16-bit integral value used to initialize bits [255:240] of the result. +/// \param __w14 +/// A 16-bit integral value used to initialize bits [239:224] of the result. +/// \param __w13 +/// A 16-bit integral value used to initialize bits [223:208] of the result. +/// \param __w12 +/// A 16-bit integral value used to initialize bits [207:192] of the result. +/// \param __w11 +/// A 16-bit integral value used to initialize bits [191:176] of the result. +/// \param __w10 +/// A 16-bit integral value used to initialize bits [175:160] of the result. +/// \param __w09 +/// A 16-bit integral value used to initialize bits [159:144] of the result. +/// \param __w08 +/// A 16-bit integral value used to initialize bits [143:128] of the result. +/// \param __w07 +/// A 16-bit integral value used to initialize bits [127:112] of the result. +/// \param __w06 +/// A 16-bit integral value used to initialize bits [111:96] of the result. +/// \param __w05 +/// A 16-bit integral value used to initialize bits [95:80] of the result. +/// \param __w04 +/// A 16-bit integral value used to initialize bits [79:64] of the result. +/// \param __w03 +/// A 16-bit integral value used to initialize bits [63:48] of the result. +/// \param __w02 +/// A 16-bit integral value used to initialize bits [47:32] of the result. +/// \param __w01 +/// A 16-bit integral value used to initialize bits [31:16] of the result. +/// \param __w00 +/// A 16-bit integral value used to initialize bits [15:0] of the result. +/// \returns An initialized 256-bit integer vector. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set_epi16(short __w15, short __w14, short __w13, short __w12, + short __w11, short __w10, short __w09, short __w08, + short __w07, short __w06, short __w05, short __w04, + short __w03, short __w02, short __w01, short __w00) +{ + return __extension__ (__m256i)(__v16hi){ __w00, __w01, __w02, __w03, __w04, __w05, __w06, + __w07, __w08, __w09, __w10, __w11, __w12, __w13, __w14, __w15 }; +} + +/// Constructs a 256-bit integer vector initialized with the specified +/// 8-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __b31 +/// An 8-bit integral value used to initialize bits [255:248] of the result. +/// \param __b30 +/// An 8-bit integral value used to initialize bits [247:240] of the result. +/// \param __b29 +/// An 8-bit integral value used to initialize bits [239:232] of the result. +/// \param __b28 +/// An 8-bit integral value used to initialize bits [231:224] of the result. +/// \param __b27 +/// An 8-bit integral value used to initialize bits [223:216] of the result. +/// \param __b26 +/// An 8-bit integral value used to initialize bits [215:208] of the result. +/// \param __b25 +/// An 8-bit integral value used to initialize bits [207:200] of the result. +/// \param __b24 +/// An 8-bit integral value used to initialize bits [199:192] of the result. +/// \param __b23 +/// An 8-bit integral value used to initialize bits [191:184] of the result. +/// \param __b22 +/// An 8-bit integral value used to initialize bits [183:176] of the result. +/// \param __b21 +/// An 8-bit integral value used to initialize bits [175:168] of the result. +/// \param __b20 +/// An 8-bit integral value used to initialize bits [167:160] of the result. +/// \param __b19 +/// An 8-bit integral value used to initialize bits [159:152] of the result. +/// \param __b18 +/// An 8-bit integral value used to initialize bits [151:144] of the result. +/// \param __b17 +/// An 8-bit integral value used to initialize bits [143:136] of the result. +/// \param __b16 +/// An 8-bit integral value used to initialize bits [135:128] of the result. +/// \param __b15 +/// An 8-bit integral value used to initialize bits [127:120] of the result. +/// \param __b14 +/// An 8-bit integral value used to initialize bits [119:112] of the result. +/// \param __b13 +/// An 8-bit integral value used to initialize bits [111:104] of the result. +/// \param __b12 +/// An 8-bit integral value used to initialize bits [103:96] of the result. +/// \param __b11 +/// An 8-bit integral value used to initialize bits [95:88] of the result. +/// \param __b10 +/// An 8-bit integral value used to initialize bits [87:80] of the result. +/// \param __b09 +/// An 8-bit integral value used to initialize bits [79:72] of the result. +/// \param __b08 +/// An 8-bit integral value used to initialize bits [71:64] of the result. +/// \param __b07 +/// An 8-bit integral value used to initialize bits [63:56] of the result. +/// \param __b06 +/// An 8-bit integral value used to initialize bits [55:48] of the result. +/// \param __b05 +/// An 8-bit integral value used to initialize bits [47:40] of the result. +/// \param __b04 +/// An 8-bit integral value used to initialize bits [39:32] of the result. +/// \param __b03 +/// An 8-bit integral value used to initialize bits [31:24] of the result. +/// \param __b02 +/// An 8-bit integral value used to initialize bits [23:16] of the result. +/// \param __b01 +/// An 8-bit integral value used to initialize bits [15:8] of the result. +/// \param __b00 +/// An 8-bit integral value used to initialize bits [7:0] of the result. +/// \returns An initialized 256-bit integer vector. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set_epi8(char __b31, char __b30, char __b29, char __b28, + char __b27, char __b26, char __b25, char __b24, + char __b23, char __b22, char __b21, char __b20, + char __b19, char __b18, char __b17, char __b16, + char __b15, char __b14, char __b13, char __b12, + char __b11, char __b10, char __b09, char __b08, + char __b07, char __b06, char __b05, char __b04, + char __b03, char __b02, char __b01, char __b00) +{ + return __extension__ (__m256i)(__v32qi){ + __b00, __b01, __b02, __b03, __b04, __b05, __b06, __b07, + __b08, __b09, __b10, __b11, __b12, __b13, __b14, __b15, + __b16, __b17, __b18, __b19, __b20, __b21, __b22, __b23, + __b24, __b25, __b26, __b27, __b28, __b29, __b30, __b31 + }; +} + +/// Constructs a 256-bit integer vector initialized with the specified +/// 64-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKLQDQ+VINSERTF128 </c> +/// instruction. +/// +/// \param __a +/// A 64-bit integral value used to initialize bits [255:192] of the result. +/// \param __b +/// A 64-bit integral value used to initialize bits [191:128] of the result. +/// \param __c +/// A 64-bit integral value used to initialize bits [127:64] of the result. +/// \param __d +/// A 64-bit integral value used to initialize bits [63:0] of the result. +/// \returns An initialized 256-bit integer vector. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set_epi64x(long long __a, long long __b, long long __c, long long __d) +{ + return __extension__ (__m256i)(__v4di){ __d, __c, __b, __a }; +} + +/* Create vectors with elements in reverse order */ +/// Constructs a 256-bit floating-point vector of [4 x double], +/// initialized in reverse order with the specified double-precision +/// floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPD+VINSERTF128 </c> +/// instruction. +/// +/// \param __a +/// A double-precision floating-point value used to initialize bits [63:0] +/// of the result. +/// \param __b +/// A double-precision floating-point value used to initialize bits [127:64] +/// of the result. +/// \param __c +/// A double-precision floating-point value used to initialize bits [191:128] +/// of the result. +/// \param __d +/// A double-precision floating-point value used to initialize bits [255:192] +/// of the result. +/// \returns An initialized 256-bit floating-point vector of [4 x double]. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_setr_pd(double __a, double __b, double __c, double __d) +{ + return _mm256_set_pd(__d, __c, __b, __a); +} + +/// Constructs a 256-bit floating-point vector of [8 x float], +/// initialized in reverse order with the specified single-precision +/// float-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __a +/// A single-precision floating-point value used to initialize bits [31:0] +/// of the result. +/// \param __b +/// A single-precision floating-point value used to initialize bits [63:32] +/// of the result. +/// \param __c +/// A single-precision floating-point value used to initialize bits [95:64] +/// of the result. +/// \param __d +/// A single-precision floating-point value used to initialize bits [127:96] +/// of the result. +/// \param __e +/// A single-precision floating-point value used to initialize bits [159:128] +/// of the result. +/// \param __f +/// A single-precision floating-point value used to initialize bits [191:160] +/// of the result. +/// \param __g +/// A single-precision floating-point value used to initialize bits [223:192] +/// of the result. +/// \param __h +/// A single-precision floating-point value used to initialize bits [255:224] +/// of the result. +/// \returns An initialized 256-bit floating-point vector of [8 x float]. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_setr_ps(float __a, float __b, float __c, float __d, + float __e, float __f, float __g, float __h) +{ + return _mm256_set_ps(__h, __g, __f, __e, __d, __c, __b, __a); +} + +/// Constructs a 256-bit integer vector, initialized in reverse order +/// with the specified 32-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __i0 +/// A 32-bit integral value used to initialize bits [31:0] of the result. +/// \param __i1 +/// A 32-bit integral value used to initialize bits [63:32] of the result. +/// \param __i2 +/// A 32-bit integral value used to initialize bits [95:64] of the result. +/// \param __i3 +/// A 32-bit integral value used to initialize bits [127:96] of the result. +/// \param __i4 +/// A 32-bit integral value used to initialize bits [159:128] of the result. +/// \param __i5 +/// A 32-bit integral value used to initialize bits [191:160] of the result. +/// \param __i6 +/// A 32-bit integral value used to initialize bits [223:192] of the result. +/// \param __i7 +/// A 32-bit integral value used to initialize bits [255:224] of the result. +/// \returns An initialized 256-bit integer vector. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_setr_epi32(int __i0, int __i1, int __i2, int __i3, + int __i4, int __i5, int __i6, int __i7) +{ + return _mm256_set_epi32(__i7, __i6, __i5, __i4, __i3, __i2, __i1, __i0); +} + +/// Constructs a 256-bit integer vector, initialized in reverse order +/// with the specified 16-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __w15 +/// A 16-bit integral value used to initialize bits [15:0] of the result. +/// \param __w14 +/// A 16-bit integral value used to initialize bits [31:16] of the result. +/// \param __w13 +/// A 16-bit integral value used to initialize bits [47:32] of the result. +/// \param __w12 +/// A 16-bit integral value used to initialize bits [63:48] of the result. +/// \param __w11 +/// A 16-bit integral value used to initialize bits [79:64] of the result. +/// \param __w10 +/// A 16-bit integral value used to initialize bits [95:80] of the result. +/// \param __w09 +/// A 16-bit integral value used to initialize bits [111:96] of the result. +/// \param __w08 +/// A 16-bit integral value used to initialize bits [127:112] of the result. +/// \param __w07 +/// A 16-bit integral value used to initialize bits [143:128] of the result. +/// \param __w06 +/// A 16-bit integral value used to initialize bits [159:144] of the result. +/// \param __w05 +/// A 16-bit integral value used to initialize bits [175:160] of the result. +/// \param __w04 +/// A 16-bit integral value used to initialize bits [191:176] of the result. +/// \param __w03 +/// A 16-bit integral value used to initialize bits [207:192] of the result. +/// \param __w02 +/// A 16-bit integral value used to initialize bits [223:208] of the result. +/// \param __w01 +/// A 16-bit integral value used to initialize bits [239:224] of the result. +/// \param __w00 +/// A 16-bit integral value used to initialize bits [255:240] of the result. +/// \returns An initialized 256-bit integer vector. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_setr_epi16(short __w15, short __w14, short __w13, short __w12, + short __w11, short __w10, short __w09, short __w08, + short __w07, short __w06, short __w05, short __w04, + short __w03, short __w02, short __w01, short __w00) +{ + return _mm256_set_epi16(__w00, __w01, __w02, __w03, + __w04, __w05, __w06, __w07, + __w08, __w09, __w10, __w11, + __w12, __w13, __w14, __w15); +} + +/// Constructs a 256-bit integer vector, initialized in reverse order +/// with the specified 8-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __b31 +/// An 8-bit integral value used to initialize bits [7:0] of the result. +/// \param __b30 +/// An 8-bit integral value used to initialize bits [15:8] of the result. +/// \param __b29 +/// An 8-bit integral value used to initialize bits [23:16] of the result. +/// \param __b28 +/// An 8-bit integral value used to initialize bits [31:24] of the result. +/// \param __b27 +/// An 8-bit integral value used to initialize bits [39:32] of the result. +/// \param __b26 +/// An 8-bit integral value used to initialize bits [47:40] of the result. +/// \param __b25 +/// An 8-bit integral value used to initialize bits [55:48] of the result. +/// \param __b24 +/// An 8-bit integral value used to initialize bits [63:56] of the result. +/// \param __b23 +/// An 8-bit integral value used to initialize bits [71:64] of the result. +/// \param __b22 +/// An 8-bit integral value used to initialize bits [79:72] of the result. +/// \param __b21 +/// An 8-bit integral value used to initialize bits [87:80] of the result. +/// \param __b20 +/// An 8-bit integral value used to initialize bits [95:88] of the result. +/// \param __b19 +/// An 8-bit integral value used to initialize bits [103:96] of the result. +/// \param __b18 +/// An 8-bit integral value used to initialize bits [111:104] of the result. +/// \param __b17 +/// An 8-bit integral value used to initialize bits [119:112] of the result. +/// \param __b16 +/// An 8-bit integral value used to initialize bits [127:120] of the result. +/// \param __b15 +/// An 8-bit integral value used to initialize bits [135:128] of the result. +/// \param __b14 +/// An 8-bit integral value used to initialize bits [143:136] of the result. +/// \param __b13 +/// An 8-bit integral value used to initialize bits [151:144] of the result. +/// \param __b12 +/// An 8-bit integral value used to initialize bits [159:152] of the result. +/// \param __b11 +/// An 8-bit integral value used to initialize bits [167:160] of the result. +/// \param __b10 +/// An 8-bit integral value used to initialize bits [175:168] of the result. +/// \param __b09 +/// An 8-bit integral value used to initialize bits [183:176] of the result. +/// \param __b08 +/// An 8-bit integral value used to initialize bits [191:184] of the result. +/// \param __b07 +/// An 8-bit integral value used to initialize bits [199:192] of the result. +/// \param __b06 +/// An 8-bit integral value used to initialize bits [207:200] of the result. +/// \param __b05 +/// An 8-bit integral value used to initialize bits [215:208] of the result. +/// \param __b04 +/// An 8-bit integral value used to initialize bits [223:216] of the result. +/// \param __b03 +/// An 8-bit integral value used to initialize bits [231:224] of the result. +/// \param __b02 +/// An 8-bit integral value used to initialize bits [239:232] of the result. +/// \param __b01 +/// An 8-bit integral value used to initialize bits [247:240] of the result. +/// \param __b00 +/// An 8-bit integral value used to initialize bits [255:248] of the result. +/// \returns An initialized 256-bit integer vector. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_setr_epi8(char __b31, char __b30, char __b29, char __b28, + char __b27, char __b26, char __b25, char __b24, + char __b23, char __b22, char __b21, char __b20, + char __b19, char __b18, char __b17, char __b16, + char __b15, char __b14, char __b13, char __b12, + char __b11, char __b10, char __b09, char __b08, + char __b07, char __b06, char __b05, char __b04, + char __b03, char __b02, char __b01, char __b00) +{ + return _mm256_set_epi8(__b00, __b01, __b02, __b03, __b04, __b05, __b06, __b07, + __b08, __b09, __b10, __b11, __b12, __b13, __b14, __b15, + __b16, __b17, __b18, __b19, __b20, __b21, __b22, __b23, + __b24, __b25, __b26, __b27, __b28, __b29, __b30, __b31); +} + +/// Constructs a 256-bit integer vector, initialized in reverse order +/// with the specified 64-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKLQDQ+VINSERTF128 </c> +/// instruction. +/// +/// \param __a +/// A 64-bit integral value used to initialize bits [63:0] of the result. +/// \param __b +/// A 64-bit integral value used to initialize bits [127:64] of the result. +/// \param __c +/// A 64-bit integral value used to initialize bits [191:128] of the result. +/// \param __d +/// A 64-bit integral value used to initialize bits [255:192] of the result. +/// \returns An initialized 256-bit integer vector. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_setr_epi64x(long long __a, long long __b, long long __c, long long __d) +{ + return _mm256_set_epi64x(__d, __c, __b, __a); +} + +/* Create vectors with repeated elements */ +/// Constructs a 256-bit floating-point vector of [4 x double], with each +/// of the four double-precision floating-point vector elements set to the +/// specified double-precision floating-point value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDDUP+VINSERTF128 </c> instruction. +/// +/// \param __w +/// A double-precision floating-point value used to initialize each vector +/// element of the result. +/// \returns An initialized 256-bit floating-point vector of [4 x double]. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_set1_pd(double __w) +{ + return _mm256_set_pd(__w, __w, __w, __w); +} + +/// Constructs a 256-bit floating-point vector of [8 x float], with each +/// of the eight single-precision floating-point vector elements set to the +/// specified single-precision floating-point value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPERMILPS+VINSERTF128 </c> +/// instruction. +/// +/// \param __w +/// A single-precision floating-point value used to initialize each vector +/// element of the result. +/// \returns An initialized 256-bit floating-point vector of [8 x float]. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_set1_ps(float __w) +{ + return _mm256_set_ps(__w, __w, __w, __w, __w, __w, __w, __w); +} + +/// Constructs a 256-bit integer vector of [8 x i32], with each of the +/// 32-bit integral vector elements set to the specified 32-bit integral +/// value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPERMILPS+VINSERTF128 </c> +/// instruction. +/// +/// \param __i +/// A 32-bit integral value used to initialize each vector element of the +/// result. +/// \returns An initialized 256-bit integer vector of [8 x i32]. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set1_epi32(int __i) +{ + return _mm256_set_epi32(__i, __i, __i, __i, __i, __i, __i, __i); +} + +/// Constructs a 256-bit integer vector of [16 x i16], with each of the +/// 16-bit integral vector elements set to the specified 16-bit integral +/// value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSHUFB+VINSERTF128 </c> instruction. +/// +/// \param __w +/// A 16-bit integral value used to initialize each vector element of the +/// result. +/// \returns An initialized 256-bit integer vector of [16 x i16]. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set1_epi16(short __w) +{ + return _mm256_set_epi16(__w, __w, __w, __w, __w, __w, __w, __w, + __w, __w, __w, __w, __w, __w, __w, __w); +} + +/// Constructs a 256-bit integer vector of [32 x i8], with each of the +/// 8-bit integral vector elements set to the specified 8-bit integral value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSHUFB+VINSERTF128 </c> instruction. +/// +/// \param __b +/// An 8-bit integral value used to initialize each vector element of the +/// result. +/// \returns An initialized 256-bit integer vector of [32 x i8]. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set1_epi8(char __b) +{ + return _mm256_set_epi8(__b, __b, __b, __b, __b, __b, __b, __b, + __b, __b, __b, __b, __b, __b, __b, __b, + __b, __b, __b, __b, __b, __b, __b, __b, + __b, __b, __b, __b, __b, __b, __b, __b); +} + +/// Constructs a 256-bit integer vector of [4 x i64], with each of the +/// 64-bit integral vector elements set to the specified 64-bit integral +/// value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDDUP+VINSERTF128 </c> instruction. +/// +/// \param __q +/// A 64-bit integral value used to initialize each vector element of the +/// result. +/// \returns An initialized 256-bit integer vector of [4 x i64]. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set1_epi64x(long long __q) +{ + return _mm256_set_epi64x(__q, __q, __q, __q); +} + +/* Create __zeroed vectors */ +/// Constructs a 256-bit floating-point vector of [4 x double] with all +/// vector elements initialized to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPS </c> instruction. +/// +/// \returns A 256-bit vector of [4 x double] with all elements set to zero. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_setzero_pd(void) +{ + return __extension__ (__m256d){ 0.0, 0.0, 0.0, 0.0 }; +} + +/// Constructs a 256-bit floating-point vector of [8 x float] with all +/// vector elements initialized to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPS </c> instruction. +/// +/// \returns A 256-bit vector of [8 x float] with all elements set to zero. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_setzero_ps(void) +{ + return __extension__ (__m256){ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }; +} + +/// Constructs a 256-bit integer vector initialized to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPS </c> instruction. +/// +/// \returns A 256-bit integer vector initialized to zero. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_setzero_si256(void) +{ + return __extension__ (__m256i)(__v4di){ 0, 0, 0, 0 }; +} + +/* Cast between vector types */ +/// Casts a 256-bit floating-point vector of [4 x double] into a 256-bit +/// floating-point vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit floating-point vector of [4 x double]. +/// \returns A 256-bit floating-point vector of [8 x float] containing the same +/// bitwise pattern as the parameter. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_castpd_ps(__m256d __a) +{ + return (__m256)__a; +} + +/// Casts a 256-bit floating-point vector of [4 x double] into a 256-bit +/// integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit floating-point vector of [4 x double]. +/// \returns A 256-bit integer vector containing the same bitwise pattern as the +/// parameter. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_castpd_si256(__m256d __a) +{ + return (__m256i)__a; +} + +/// Casts a 256-bit floating-point vector of [8 x float] into a 256-bit +/// floating-point vector of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit floating-point vector of [8 x float]. +/// \returns A 256-bit floating-point vector of [4 x double] containing the same +/// bitwise pattern as the parameter. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_castps_pd(__m256 __a) +{ + return (__m256d)__a; +} + +/// Casts a 256-bit floating-point vector of [8 x float] into a 256-bit +/// integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit floating-point vector of [8 x float]. +/// \returns A 256-bit integer vector containing the same bitwise pattern as the +/// parameter. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_castps_si256(__m256 __a) +{ + return (__m256i)__a; +} + +/// Casts a 256-bit integer vector into a 256-bit floating-point vector +/// of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit integer vector. +/// \returns A 256-bit floating-point vector of [8 x float] containing the same +/// bitwise pattern as the parameter. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_castsi256_ps(__m256i __a) +{ + return (__m256)__a; +} + +/// Casts a 256-bit integer vector into a 256-bit floating-point vector +/// of [4 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit integer vector. +/// \returns A 256-bit floating-point vector of [4 x double] containing the same +/// bitwise pattern as the parameter. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_castsi256_pd(__m256i __a) +{ + return (__m256d)__a; +} + +/// Returns the lower 128 bits of a 256-bit floating-point vector of +/// [4 x double] as a 128-bit floating-point vector of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit floating-point vector of [4 x double]. +/// \returns A 128-bit floating-point vector of [2 x double] containing the +/// lower 128 bits of the parameter. +static __inline __m128d __DEFAULT_FN_ATTRS +_mm256_castpd256_pd128(__m256d __a) +{ + return __builtin_shufflevector((__v4df)__a, (__v4df)__a, 0, 1); +} + +/// Returns the lower 128 bits of a 256-bit floating-point vector of +/// [8 x float] as a 128-bit floating-point vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit floating-point vector of [8 x float]. +/// \returns A 128-bit floating-point vector of [4 x float] containing the +/// lower 128 bits of the parameter. +static __inline __m128 __DEFAULT_FN_ATTRS +_mm256_castps256_ps128(__m256 __a) +{ + return __builtin_shufflevector((__v8sf)__a, (__v8sf)__a, 0, 1, 2, 3); +} + +/// Truncates a 256-bit integer vector into a 128-bit integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 256-bit integer vector. +/// \returns A 128-bit integer vector containing the lower 128 bits of the +/// parameter. +static __inline __m128i __DEFAULT_FN_ATTRS +_mm256_castsi256_si128(__m256i __a) +{ + return __builtin_shufflevector((__v4di)__a, (__v4di)__a, 0, 1); +} + +/// Constructs a 256-bit floating-point vector of [4 x double] from a +/// 128-bit floating-point vector of [2 x double]. +/// +/// The lower 128 bits contain the value of the source vector. The contents +/// of the upper 128 bits are undefined. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 256-bit floating-point vector of [4 x double]. The lower 128 bits +/// contain the value of the parameter. The contents of the upper 128 bits +/// are undefined. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_castpd128_pd256(__m128d __a) +{ + return __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 1, -1, -1); +} + +/// Constructs a 256-bit floating-point vector of [8 x float] from a +/// 128-bit floating-point vector of [4 x float]. +/// +/// The lower 128 bits contain the value of the source vector. The contents +/// of the upper 128 bits are undefined. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 256-bit floating-point vector of [8 x float]. The lower 128 bits +/// contain the value of the parameter. The contents of the upper 128 bits +/// are undefined. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_castps128_ps256(__m128 __a) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 1, 2, 3, -1, -1, -1, -1); +} + +/// Constructs a 256-bit integer vector from a 128-bit integer vector. +/// +/// The lower 128 bits contain the value of the source vector. The contents +/// of the upper 128 bits are undefined. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \returns A 256-bit integer vector. The lower 128 bits contain the value of +/// the parameter. The contents of the upper 128 bits are undefined. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_castsi128_si256(__m128i __a) +{ + return __builtin_shufflevector((__v2di)__a, (__v2di)__a, 0, 1, -1, -1); +} + +/// Constructs a 256-bit floating-point vector of [4 x double] from a +/// 128-bit floating-point vector of [2 x double]. The lower 128 bits +/// contain the value of the source vector. The upper 128 bits are set +/// to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 256-bit floating-point vector of [4 x double]. The lower 128 bits +/// contain the value of the parameter. The upper 128 bits are set to zero. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_zextpd128_pd256(__m128d __a) +{ + return __builtin_shufflevector((__v2df)__a, (__v2df)_mm_setzero_pd(), 0, 1, 2, 3); +} + +/// Constructs a 256-bit floating-point vector of [8 x float] from a +/// 128-bit floating-point vector of [4 x float]. The lower 128 bits contain +/// the value of the source vector. The upper 128 bits are set to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 256-bit floating-point vector of [8 x float]. The lower 128 bits +/// contain the value of the parameter. The upper 128 bits are set to zero. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_zextps128_ps256(__m128 __a) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)_mm_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7); +} + +/// Constructs a 256-bit integer vector from a 128-bit integer vector. +/// The lower 128 bits contain the value of the source vector. The upper +/// 128 bits are set to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \returns A 256-bit integer vector. The lower 128 bits contain the value of +/// the parameter. The upper 128 bits are set to zero. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_zextsi128_si256(__m128i __a) +{ + return __builtin_shufflevector((__v2di)__a, (__v2di)_mm_setzero_si128(), 0, 1, 2, 3); +} + +/* + Vector insert. + We use macros rather than inlines because we only want to accept + invocations where the immediate M is a constant expression. +*/ +/// Constructs a new 256-bit vector of [8 x float] by first duplicating +/// a 256-bit vector of [8 x float] given in the first parameter, and then +/// replacing either the upper or the lower 128 bits with the contents of a +/// 128-bit vector of [4 x float] in the second parameter. +/// +/// The immediate integer parameter determines between the upper or the lower +/// 128 bits. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256 _mm256_insertf128_ps(__m256 V1, __m128 V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param V1 +/// A 256-bit vector of [8 x float]. This vector is copied to the result +/// first, and then either the upper or the lower 128 bits of the result will +/// be replaced by the contents of \a V2. +/// \param V2 +/// A 128-bit vector of [4 x float]. The contents of this parameter are +/// written to either the upper or the lower 128 bits of the result depending +/// on the value of parameter \a M. +/// \param M +/// An immediate integer. The least significant bit determines how the values +/// from the two parameters are interleaved: \n +/// If bit [0] of \a M is 0, \a V2 are copied to bits [127:0] of the result, +/// and bits [255:128] of \a V1 are copied to bits [255:128] of the +/// result. \n +/// If bit [0] of \a M is 1, \a V2 are copied to bits [255:128] of the +/// result, and bits [127:0] of \a V1 are copied to bits [127:0] of the +/// result. +/// \returns A 256-bit vector of [8 x float] containing the interleaved values. +#define _mm256_insertf128_ps(V1, V2, M) \ + ((__m256)__builtin_ia32_vinsertf128_ps256((__v8sf)(__m256)(V1), \ + (__v4sf)(__m128)(V2), (int)(M))) + +/// Constructs a new 256-bit vector of [4 x double] by first duplicating +/// a 256-bit vector of [4 x double] given in the first parameter, and then +/// replacing either the upper or the lower 128 bits with the contents of a +/// 128-bit vector of [2 x double] in the second parameter. +/// +/// The immediate integer parameter determines between the upper or the lower +/// 128 bits. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256d _mm256_insertf128_pd(__m256d V1, __m128d V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param V1 +/// A 256-bit vector of [4 x double]. This vector is copied to the result +/// first, and then either the upper or the lower 128 bits of the result will +/// be replaced by the contents of \a V2. +/// \param V2 +/// A 128-bit vector of [2 x double]. The contents of this parameter are +/// written to either the upper or the lower 128 bits of the result depending +/// on the value of parameter \a M. +/// \param M +/// An immediate integer. The least significant bit determines how the values +/// from the two parameters are interleaved: \n +/// If bit [0] of \a M is 0, \a V2 are copied to bits [127:0] of the result, +/// and bits [255:128] of \a V1 are copied to bits [255:128] of the +/// result. \n +/// If bit [0] of \a M is 1, \a V2 are copied to bits [255:128] of the +/// result, and bits [127:0] of \a V1 are copied to bits [127:0] of the +/// result. +/// \returns A 256-bit vector of [4 x double] containing the interleaved values. +#define _mm256_insertf128_pd(V1, V2, M) \ + ((__m256d)__builtin_ia32_vinsertf128_pd256((__v4df)(__m256d)(V1), \ + (__v2df)(__m128d)(V2), (int)(M))) + +/// Constructs a new 256-bit integer vector by first duplicating a +/// 256-bit integer vector given in the first parameter, and then replacing +/// either the upper or the lower 128 bits with the contents of a 128-bit +/// integer vector in the second parameter. +/// +/// The immediate integer parameter determines between the upper or the lower +/// 128 bits. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m256i _mm256_insertf128_si256(__m256i V1, __m128i V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param V1 +/// A 256-bit integer vector. This vector is copied to the result first, and +/// then either the upper or the lower 128 bits of the result will be +/// replaced by the contents of \a V2. +/// \param V2 +/// A 128-bit integer vector. The contents of this parameter are written to +/// either the upper or the lower 128 bits of the result depending on the +/// value of parameter \a M. +/// \param M +/// An immediate integer. The least significant bit determines how the values +/// from the two parameters are interleaved: \n +/// If bit [0] of \a M is 0, \a V2 are copied to bits [127:0] of the result, +/// and bits [255:128] of \a V1 are copied to bits [255:128] of the +/// result. \n +/// If bit [0] of \a M is 1, \a V2 are copied to bits [255:128] of the +/// result, and bits [127:0] of \a V1 are copied to bits [127:0] of the +/// result. +/// \returns A 256-bit integer vector containing the interleaved values. +#define _mm256_insertf128_si256(V1, V2, M) \ + ((__m256i)__builtin_ia32_vinsertf128_si256((__v8si)(__m256i)(V1), \ + (__v4si)(__m128i)(V2), (int)(M))) + +/* + Vector extract. + We use macros rather than inlines because we only want to accept + invocations where the immediate M is a constant expression. +*/ +/// Extracts either the upper or the lower 128 bits from a 256-bit vector +/// of [8 x float], as determined by the immediate integer parameter, and +/// returns the extracted bits as a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm256_extractf128_ps(__m256 V, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction. +/// +/// \param V +/// A 256-bit vector of [8 x float]. +/// \param M +/// An immediate integer. The least significant bit determines which bits are +/// extracted from the first parameter: \n +/// If bit [0] of \a M is 0, bits [127:0] of \a V are copied to the +/// result. \n +/// If bit [0] of \a M is 1, bits [255:128] of \a V are copied to the result. +/// \returns A 128-bit vector of [4 x float] containing the extracted bits. +#define _mm256_extractf128_ps(V, M) \ + ((__m128)__builtin_ia32_vextractf128_ps256((__v8sf)(__m256)(V), (int)(M))) + +/// Extracts either the upper or the lower 128 bits from a 256-bit vector +/// of [4 x double], as determined by the immediate integer parameter, and +/// returns the extracted bits as a 128-bit vector of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm256_extractf128_pd(__m256d V, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction. +/// +/// \param V +/// A 256-bit vector of [4 x double]. +/// \param M +/// An immediate integer. The least significant bit determines which bits are +/// extracted from the first parameter: \n +/// If bit [0] of \a M is 0, bits [127:0] of \a V are copied to the +/// result. \n +/// If bit [0] of \a M is 1, bits [255:128] of \a V are copied to the result. +/// \returns A 128-bit vector of [2 x double] containing the extracted bits. +#define _mm256_extractf128_pd(V, M) \ + ((__m128d)__builtin_ia32_vextractf128_pd256((__v4df)(__m256d)(V), (int)(M))) + +/// Extracts either the upper or the lower 128 bits from a 256-bit +/// integer vector, as determined by the immediate integer parameter, and +/// returns the extracted bits as a 128-bit integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm256_extractf128_si256(__m256i V, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction. +/// +/// \param V +/// A 256-bit integer vector. +/// \param M +/// An immediate integer. The least significant bit determines which bits are +/// extracted from the first parameter: \n +/// If bit [0] of \a M is 0, bits [127:0] of \a V are copied to the +/// result. \n +/// If bit [0] of \a M is 1, bits [255:128] of \a V are copied to the result. +/// \returns A 128-bit integer vector containing the extracted bits. +#define _mm256_extractf128_si256(V, M) \ + ((__m128i)__builtin_ia32_vextractf128_si256((__v8si)(__m256i)(V), (int)(M))) + +/// Constructs a 256-bit floating-point vector of [8 x float] by +/// concatenating two 128-bit floating-point vectors of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param __hi +/// A 128-bit floating-point vector of [4 x float] to be copied to the upper +/// 128 bits of the result. +/// \param __lo +/// A 128-bit floating-point vector of [4 x float] to be copied to the lower +/// 128 bits of the result. +/// \returns A 256-bit floating-point vector of [8 x float] containing the +/// concatenated result. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_set_m128 (__m128 __hi, __m128 __lo) +{ + return (__m256) __builtin_shufflevector((__v4sf)__lo, (__v4sf)__hi, 0, 1, 2, 3, 4, 5, 6, 7); +} + +/// Constructs a 256-bit floating-point vector of [4 x double] by +/// concatenating two 128-bit floating-point vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param __hi +/// A 128-bit floating-point vector of [2 x double] to be copied to the upper +/// 128 bits of the result. +/// \param __lo +/// A 128-bit floating-point vector of [2 x double] to be copied to the lower +/// 128 bits of the result. +/// \returns A 256-bit floating-point vector of [4 x double] containing the +/// concatenated result. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_set_m128d (__m128d __hi, __m128d __lo) +{ + return (__m256d) __builtin_shufflevector((__v2df)__lo, (__v2df)__hi, 0, 1, 2, 3); +} + +/// Constructs a 256-bit integer vector by concatenating two 128-bit +/// integer vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param __hi +/// A 128-bit integer vector to be copied to the upper 128 bits of the +/// result. +/// \param __lo +/// A 128-bit integer vector to be copied to the lower 128 bits of the +/// result. +/// \returns A 256-bit integer vector containing the concatenated result. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_set_m128i (__m128i __hi, __m128i __lo) +{ + return (__m256i) __builtin_shufflevector((__v2di)__lo, (__v2di)__hi, 0, 1, 2, 3); +} + +/// Constructs a 256-bit floating-point vector of [8 x float] by +/// concatenating two 128-bit floating-point vectors of [4 x float]. This is +/// similar to _mm256_set_m128, but the order of the input parameters is +/// swapped. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param __lo +/// A 128-bit floating-point vector of [4 x float] to be copied to the lower +/// 128 bits of the result. +/// \param __hi +/// A 128-bit floating-point vector of [4 x float] to be copied to the upper +/// 128 bits of the result. +/// \returns A 256-bit floating-point vector of [8 x float] containing the +/// concatenated result. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_setr_m128 (__m128 __lo, __m128 __hi) +{ + return _mm256_set_m128(__hi, __lo); +} + +/// Constructs a 256-bit floating-point vector of [4 x double] by +/// concatenating two 128-bit floating-point vectors of [2 x double]. This is +/// similar to _mm256_set_m128d, but the order of the input parameters is +/// swapped. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param __lo +/// A 128-bit floating-point vector of [2 x double] to be copied to the lower +/// 128 bits of the result. +/// \param __hi +/// A 128-bit floating-point vector of [2 x double] to be copied to the upper +/// 128 bits of the result. +/// \returns A 256-bit floating-point vector of [4 x double] containing the +/// concatenated result. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_setr_m128d (__m128d __lo, __m128d __hi) +{ + return (__m256d)_mm256_set_m128d(__hi, __lo); +} + +/// Constructs a 256-bit integer vector by concatenating two 128-bit +/// integer vectors. This is similar to _mm256_set_m128i, but the order of +/// the input parameters is swapped. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. +/// +/// \param __lo +/// A 128-bit integer vector to be copied to the lower 128 bits of the +/// result. +/// \param __hi +/// A 128-bit integer vector to be copied to the upper 128 bits of the +/// result. +/// \returns A 256-bit integer vector containing the concatenated result. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_setr_m128i (__m128i __lo, __m128i __hi) +{ + return (__m256i)_mm256_set_m128i(__hi, __lo); +} + +/* SIMD load ops (unaligned) */ +/// Loads two 128-bit floating-point vectors of [4 x float] from +/// unaligned memory locations and constructs a 256-bit floating-point vector +/// of [8 x float] by concatenating the two 128-bit vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to load instructions followed by the +/// <c> VINSERTF128 </c> instruction. +/// +/// \param __addr_hi +/// A pointer to a 128-bit memory location containing 4 consecutive +/// single-precision floating-point values. These values are to be copied to +/// bits[255:128] of the result. The address of the memory location does not +/// have to be aligned. +/// \param __addr_lo +/// A pointer to a 128-bit memory location containing 4 consecutive +/// single-precision floating-point values. These values are to be copied to +/// bits[127:0] of the result. The address of the memory location does not +/// have to be aligned. +/// \returns A 256-bit floating-point vector of [8 x float] containing the +/// concatenated result. +static __inline __m256 __DEFAULT_FN_ATTRS +_mm256_loadu2_m128(float const *__addr_hi, float const *__addr_lo) +{ + return _mm256_set_m128(_mm_loadu_ps(__addr_hi), _mm_loadu_ps(__addr_lo)); +} + +/// Loads two 128-bit floating-point vectors of [2 x double] from +/// unaligned memory locations and constructs a 256-bit floating-point vector +/// of [4 x double] by concatenating the two 128-bit vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to load instructions followed by the +/// <c> VINSERTF128 </c> instruction. +/// +/// \param __addr_hi +/// A pointer to a 128-bit memory location containing two consecutive +/// double-precision floating-point values. These values are to be copied to +/// bits[255:128] of the result. The address of the memory location does not +/// have to be aligned. +/// \param __addr_lo +/// A pointer to a 128-bit memory location containing two consecutive +/// double-precision floating-point values. These values are to be copied to +/// bits[127:0] of the result. The address of the memory location does not +/// have to be aligned. +/// \returns A 256-bit floating-point vector of [4 x double] containing the +/// concatenated result. +static __inline __m256d __DEFAULT_FN_ATTRS +_mm256_loadu2_m128d(double const *__addr_hi, double const *__addr_lo) +{ + return _mm256_set_m128d(_mm_loadu_pd(__addr_hi), _mm_loadu_pd(__addr_lo)); +} + +/// Loads two 128-bit integer vectors from unaligned memory locations and +/// constructs a 256-bit integer vector by concatenating the two 128-bit +/// vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to load instructions followed by the +/// <c> VINSERTF128 </c> instruction. +/// +/// \param __addr_hi +/// A pointer to a 128-bit memory location containing a 128-bit integer +/// vector. This vector is to be copied to bits[255:128] of the result. The +/// address of the memory location does not have to be aligned. +/// \param __addr_lo +/// A pointer to a 128-bit memory location containing a 128-bit integer +/// vector. This vector is to be copied to bits[127:0] of the result. The +/// address of the memory location does not have to be aligned. +/// \returns A 256-bit integer vector containing the concatenated result. +static __inline __m256i __DEFAULT_FN_ATTRS +_mm256_loadu2_m128i(__m128i_u const *__addr_hi, __m128i_u const *__addr_lo) +{ + return _mm256_set_m128i(_mm_loadu_si128(__addr_hi), _mm_loadu_si128(__addr_lo)); +} + +/* SIMD store ops (unaligned) */ +/// Stores the upper and lower 128 bits of a 256-bit floating-point +/// vector of [8 x float] into two different unaligned memory locations. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction and the +/// store instructions. +/// +/// \param __addr_hi +/// A pointer to a 128-bit memory location. Bits[255:128] of \a __a are to be +/// copied to this memory location. The address of this memory location does +/// not have to be aligned. +/// \param __addr_lo +/// A pointer to a 128-bit memory location. Bits[127:0] of \a __a are to be +/// copied to this memory location. The address of this memory location does +/// not have to be aligned. +/// \param __a +/// A 256-bit floating-point vector of [8 x float]. +static __inline void __DEFAULT_FN_ATTRS +_mm256_storeu2_m128(float *__addr_hi, float *__addr_lo, __m256 __a) +{ + __m128 __v128; + + __v128 = _mm256_castps256_ps128(__a); + _mm_storeu_ps(__addr_lo, __v128); + __v128 = _mm256_extractf128_ps(__a, 1); + _mm_storeu_ps(__addr_hi, __v128); +} + +/// Stores the upper and lower 128 bits of a 256-bit floating-point +/// vector of [4 x double] into two different unaligned memory locations. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction and the +/// store instructions. +/// +/// \param __addr_hi +/// A pointer to a 128-bit memory location. Bits[255:128] of \a __a are to be +/// copied to this memory location. The address of this memory location does +/// not have to be aligned. +/// \param __addr_lo +/// A pointer to a 128-bit memory location. Bits[127:0] of \a __a are to be +/// copied to this memory location. The address of this memory location does +/// not have to be aligned. +/// \param __a +/// A 256-bit floating-point vector of [4 x double]. +static __inline void __DEFAULT_FN_ATTRS +_mm256_storeu2_m128d(double *__addr_hi, double *__addr_lo, __m256d __a) +{ + __m128d __v128; + + __v128 = _mm256_castpd256_pd128(__a); + _mm_storeu_pd(__addr_lo, __v128); + __v128 = _mm256_extractf128_pd(__a, 1); + _mm_storeu_pd(__addr_hi, __v128); +} + +/// Stores the upper and lower 128 bits of a 256-bit integer vector into +/// two different unaligned memory locations. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction and the +/// store instructions. +/// +/// \param __addr_hi +/// A pointer to a 128-bit memory location. Bits[255:128] of \a __a are to be +/// copied to this memory location. The address of this memory location does +/// not have to be aligned. +/// \param __addr_lo +/// A pointer to a 128-bit memory location. Bits[127:0] of \a __a are to be +/// copied to this memory location. The address of this memory location does +/// not have to be aligned. +/// \param __a +/// A 256-bit integer vector. +static __inline void __DEFAULT_FN_ATTRS +_mm256_storeu2_m128i(__m128i_u *__addr_hi, __m128i_u *__addr_lo, __m256i __a) +{ + __m128i __v128; + + __v128 = _mm256_castsi256_si128(__a); + _mm_storeu_si128(__addr_lo, __v128); + __v128 = _mm256_extractf128_si256(__a, 1); + _mm_storeu_si128(__addr_hi, __v128); +} + +#undef __DEFAULT_FN_ATTRS +#undef __DEFAULT_FN_ATTRS128 + +#endif /* __AVXINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b3d4df303ae5333317b3caec8dda7e2c2881694b GIT binary patch literal 184697 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 B!_)u( literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h new file mode 100644 index 00000000..1bef1c89 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h @@ -0,0 +1,484 @@ +/*===-------------- avxneconvertintrin.h - AVXNECONVERT --------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error \ + "Never use <avxneconvertintrin.h> directly; include <immintrin.h> instead." +#endif // __IMMINTRIN_H + +#ifdef __SSE2__ + +#ifndef __AVXNECONVERTINTRIN_H +#define __AVXNECONVERTINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, __target__("avxneconvert"), \ + __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, __target__("avxneconvert"), \ + __min_vector_width__(256))) + +/// Convert scalar BF16 (16-bit) floating-point element +/// stored at memory locations starting at location \a __A to a +/// single-precision (32-bit) floating-point, broadcast it to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_bcstnebf16_ps(const void *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VBCSTNEBF162PS instruction. +/// +/// \param __A +/// A pointer to a 16-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns +/// A 128-bit vector of [4 x float]. +/// +/// \code{.operation} +/// b := Convert_BF16_To_FP32(MEM[__A+15:__A]) +/// FOR j := 0 to 3 +/// m := j*32 +/// dst[m+31:m] := b +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_bcstnebf16_ps(const void *__A) { + return (__m128)__builtin_ia32_vbcstnebf162ps128((const __bf16 *)__A); +} + +/// Convert scalar BF16 (16-bit) floating-point element +/// stored at memory locations starting at location \a __A to a +/// single-precision (32-bit) floating-point, broadcast it to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_bcstnebf16_ps(const void *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VBCSTNEBF162PS instruction. +/// +/// \param __A +/// A pointer to a 16-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns +/// A 256-bit vector of [8 x float]. +/// +/// \code{.operation} +/// b := Convert_BF16_To_FP32(MEM[__A+15:__A]) +/// FOR j := 0 to 7 +/// m := j*32 +/// dst[m+31:m] := b +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_bcstnebf16_ps(const void *__A) { + return (__m256)__builtin_ia32_vbcstnebf162ps256((const __bf16 *)__A); +} + +/// Convert scalar half-precision (16-bit) floating-point element +/// stored at memory locations starting at location \a __A to a +/// single-precision (32-bit) floating-point, broadcast it to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_bcstnesh_ps(const void *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VBCSTNESH2PS instruction. +/// +/// \param __A +/// A pointer to a 16-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns +/// A 128-bit vector of [4 x float]. +/// +/// \code{.operation} +/// b := Convert_FP16_To_FP32(MEM[__A+15:__A]) +/// FOR j := 0 to 3 +/// m := j*32 +/// dst[m+31:m] := b +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_bcstnesh_ps(const void *__A) { + return (__m128)__builtin_ia32_vbcstnesh2ps128((const _Float16 *)__A); +} + +/// Convert scalar half-precision (16-bit) floating-point element +/// stored at memory locations starting at location \a __A to a +/// single-precision (32-bit) floating-point, broadcast it to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_bcstnesh_ps(const void *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VBCSTNESH2PS instruction. +/// +/// \param __A +/// A pointer to a 16-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns +/// A 256-bit vector of [8 x float]. +/// +/// \code{.operation} +/// b := Convert_FP16_To_FP32(MEM[__A+15:__A]) +/// FOR j := 0 to 7 +/// m := j*32 +/// dst[m+31:m] := b +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_bcstnesh_ps(const void *__A) { + return (__m256)__builtin_ia32_vbcstnesh2ps256((const _Float16 *)__A); +} + +/// Convert packed BF16 (16-bit) floating-point even-indexed elements +/// stored at memory locations starting at location \a __A to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_cvtneebf16_ps(const __m128bh *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEEBF162PS instruction. +/// +/// \param __A +/// A pointer to a 128-bit memory location containing 8 consecutive +/// BF16 (16-bit) floating-point values. +/// \returns +/// A 128-bit vector of [4 x float]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// k := j*2 +/// i := k*16 +/// m := j*32 +/// dst[m+31:m] := Convert_BF16_To_FP32(MEM[__A+i+15:__A+i]) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtneebf16_ps(const __m128bh *__A) { + return (__m128)__builtin_ia32_vcvtneebf162ps128((const __v8bf *)__A); +} + +/// Convert packed BF16 (16-bit) floating-point even-indexed elements +/// stored at memory locations starting at location \a __A to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_cvtneebf16_ps(const __m256bh *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEEBF162PS instruction. +/// +/// \param __A +/// A pointer to a 256-bit memory location containing 16 consecutive +/// BF16 (16-bit) floating-point values. +/// \returns +/// A 256-bit vector of [8 x float]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// k := j*2 +/// i := k*16 +/// m := j*32 +/// dst[m+31:m] := Convert_BF16_To_FP32(MEM[__A+i+15:__A+i]) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_cvtneebf16_ps(const __m256bh *__A) { + return (__m256)__builtin_ia32_vcvtneebf162ps256((const __v16bf *)__A); +} + +/// Convert packed half-precision (16-bit) floating-point even-indexed elements +/// stored at memory locations starting at location \a __A to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_cvtneeph_ps(const __m128h *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEEPH2PS instruction. +/// +/// \param __A +/// A pointer to a 128-bit memory location containing 8 consecutive +/// half-precision (16-bit) floating-point values. +/// \returns +/// A 128-bit vector of [4 x float]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// k := j*2 +/// i := k*16 +/// m := j*32 +/// dst[m+31:m] := Convert_FP16_To_FP32(MEM[__A+i+15:__A+i]) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtneeph_ps(const __m128h *__A) { + return (__m128)__builtin_ia32_vcvtneeph2ps128((const __v8hf *)__A); +} + +/// Convert packed half-precision (16-bit) floating-point even-indexed elements +/// stored at memory locations starting at location \a __A to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_cvtneeph_ps(const __m256h *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEEPH2PS instruction. +/// +/// \param __A +/// A pointer to a 256-bit memory location containing 16 consecutive +/// half-precision (16-bit) floating-point values. +/// \returns +/// A 256-bit vector of [8 x float]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// k := j*2 +/// i := k*16 +/// m := j*32 +/// dst[m+31:m] := Convert_FP16_To_FP32(MEM[__A+i+15:__A+i]) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_cvtneeph_ps(const __m256h *__A) { + return (__m256)__builtin_ia32_vcvtneeph2ps256((const __v16hf *)__A); +} + +/// Convert packed BF16 (16-bit) floating-point odd-indexed elements +/// stored at memory locations starting at location \a __A to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_cvtneobf16_ps(const __m128bh *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEOBF162PS instruction. +/// +/// \param __A +/// A pointer to a 128-bit memory location containing 8 consecutive +/// BF16 (16-bit) floating-point values. +/// \returns +/// A 128-bit vector of [4 x float]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// k := j*2+1 +/// i := k*16 +/// m := j*32 +/// dst[m+31:m] := Convert_BF16_To_FP32(MEM[__A+i+15:__A+i]) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtneobf16_ps(const __m128bh *__A) { + return (__m128)__builtin_ia32_vcvtneobf162ps128((const __v8bf *)__A); +} + +/// Convert packed BF16 (16-bit) floating-point odd-indexed elements +/// stored at memory locations starting at location \a __A to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_cvtneobf16_ps(const __m256bh *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEOBF162PS instruction. +/// +/// \param __A +/// A pointer to a 256-bit memory location containing 16 consecutive +/// BF16 (16-bit) floating-point values. +/// \returns +/// A 256-bit vector of [8 x float]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// k := j*2+1 +/// i := k*16 +/// m := j*32 +/// dst[m+31:m] := Convert_BF16_To_FP32(MEM[__A+i+15:__A+i]) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_cvtneobf16_ps(const __m256bh *__A) { + return (__m256)__builtin_ia32_vcvtneobf162ps256((const __v16bf *)__A); +} + +/// Convert packed half-precision (16-bit) floating-point odd-indexed elements +/// stored at memory locations starting at location \a __A to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_cvtneoph_ps(const __m128h *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEOPH2PS instruction. +/// +/// \param __A +/// A pointer to a 128-bit memory location containing 8 consecutive +/// half-precision (16-bit) floating-point values. +/// \returns +/// A 128-bit vector of [4 x float]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// k := j*2+1 +/// i := k*16 +/// m := j*32 +/// dst[m+31:m] := Convert_FP16_To_FP32(MEM[__A+i+15:__A+i]) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtneoph_ps(const __m128h *__A) { + return (__m128)__builtin_ia32_vcvtneoph2ps128((const __v8hf *)__A); +} + +/// Convert packed half-precision (16-bit) floating-point odd-indexed elements +/// stored at memory locations starting at location \a __A to packed +/// single-precision (32-bit) floating-point elements, and store the results in +/// \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_cvtneoph_ps(const __m256h *__A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEOPH2PS instruction. +/// +/// \param __A +/// A pointer to a 256-bit memory location containing 16 consecutive +/// half-precision (16-bit) floating-point values. +/// \returns +/// A 256-bit vector of [8 x float]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// k := j*2+1 +/// i := k*16 +/// m := j*32 +/// dst[m+31:m] := Convert_FP16_To_FP32(MEM[__A+i+15:__A+i]) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_cvtneoph_ps(const __m256h *__A) { + return (__m256)__builtin_ia32_vcvtneoph2ps256((const __v16hf *)__A); +} + +/// Convert packed single-precision (32-bit) floating-point elements in \a __A +/// to packed BF16 (16-bit) floating-point elements, and store the results in \a +/// dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_cvtneps_avx_pbh(__m128 __A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEPS2BF16 instruction. +/// +/// \param __A +/// A 128-bit vector of [4 x float]. +/// \returns +/// A 128-bit vector of [8 x bfloat]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// dst.word[j] := Convert_FP32_To_BF16(__A.fp32[j]) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128bh __DEFAULT_FN_ATTRS128 +_mm_cvtneps_avx_pbh(__m128 __A) { + return (__m128bh)__builtin_ia32_vcvtneps2bf16128((__v4sf)__A); +} + +/// Convert packed single-precision (32-bit) floating-point elements in \a __A +/// to packed BF16 (16-bit) floating-point elements, and store the results in \a +/// dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_cvtneps_avx_pbh(__m256 __A); +/// \endcode +/// +/// This intrinsic corresponds to the \c VCVTNEPS2BF16 instruction. +/// +/// \param __A +/// A 256-bit vector of [8 x float]. +/// \returns +/// A 128-bit vector of [8 x bfloat]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// dst.word[j] := Convert_FP32_To_BF16(a.fp32[j]) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128bh __DEFAULT_FN_ATTRS256 +_mm256_cvtneps_avx_pbh(__m256 __A) { + return (__m128bh)__builtin_ia32_vcvtneps2bf16256((__v8sf)__A); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif // __AVXNECONVERTINTRIN_H +#endif // __SSE2__ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1817fea11767a3736f2c4826edca74c06d5f2c4f GIT binary patch literal 26503 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h new file mode 100644 index 00000000..b0b6cb85 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h @@ -0,0 +1,471 @@ +/*===-------- avxvnniint8intrin.h - AVXVNNIINT8 intrinsics -----------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error \ + "Never use <avxvnniint8intrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVXVNNIINT8INTRIN_H +#define __AVXVNNIINT8INTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, __target__("avxvnniint8"), \ + __min_vector_width__(256))) +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, __target__("avxvnniint8"), \ + __min_vector_width__(128))) + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_dpbssd_epi32(__m128i __W, __m128i __A, __m128i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 128-bit vector of [16 x char]. +/// \param __B +/// A 128-bit vector of [16 x char]. +/// \returns +/// A 128-bit vector of [4 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := SignExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j]) +/// tmp2.word := SignExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1]) +/// tmp3.word := SignExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2]) +/// tmp4.word := SignExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3]) +/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbssd_epi32(__m128i __W, + __m128i __A, + __m128i __B) { + return (__m128i)__builtin_ia32_vpdpbssd128((__v4si)__W, (__v4si)__A, + (__v4si)__B); +} + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_dpbssd_epi32(__m256i __W, __m256i __A, __m256i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 256-bit vector of [32 x char]. +/// \param __B +/// A 256-bit vector of [32 x char]. +/// \returns +/// A 256-bit vector of [8 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := SignExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j]) +/// tmp2.word := SignExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1]) +/// tmp3.word := SignExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2]) +/// tmp4.word := SignExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3]) +/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpbssd_epi32(__m256i __W, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_vpdpbssd256((__v8si)__W, (__v8si)__A, + (__v8si)__B); +} + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W with signed saturation, and store the packed +/// 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_dpbssds_epi32( __m128i __W, __m128i __A, __m128i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 128-bit vector of [16 x char]. +/// \param __B +/// A 128-bit vector of [16 x char]. +/// \returns +/// A 128-bit vector of [4 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := SignExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j]) +/// tmp2.word := SignExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1]) +/// tmp3.word := SignExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2]) +/// tmp4.word := SignExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3]) +/// dst.dword[j] := SIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbssds_epi32(__m128i __W, + __m128i __A, + __m128i __B) { + return (__m128i)__builtin_ia32_vpdpbssds128((__v4si)__W, (__v4si)__A, + (__v4si)__B); +} + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W with signed saturation, and store the packed +/// 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_dpbssds_epi32(__m256i __W, __m256i __A, __m256i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 256-bit vector of [32 x char]. +/// \param __B +/// A 256-bit vector of [32 x char]. +/// \returns +/// A 256-bit vector of [8 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := SignExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j]) +/// tmp2.word := SignExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1]) +/// tmp3.word := SignExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2]) +/// tmp4.word := SignExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3]) +/// dst.dword[j] := SIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpbssds_epi32(__m256i __W, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_vpdpbssds256((__v8si)__W, (__v8si)__A, + (__v8si)__B); +} + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_dpbsud_epi32(__m128i __W, __m128i __A, __m128i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 128-bit vector of [16 x char]. +/// \param __B +/// A 128-bit vector of [16 x unsigned char]. +/// \returns +/// A 128-bit vector of [4 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := Signed(SignExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j])) +/// tmp2.word := Signed(SignExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1])) +/// tmp3.word := Signed(SignExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2])) +/// tmp4.word := Signed(SignExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3])) +/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbsud_epi32(__m128i __W, + __m128i __A, + __m128i __B) { + return (__m128i)__builtin_ia32_vpdpbsud128((__v4si)__W, (__v4si)__A, + (__v4si)__B); +} + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_dpbsud_epi32(__m256i __W, __m256i __A, __m256i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 256-bit vector of [32 x char]. +/// \param __B +/// A 256-bit vector of [32 x unsigned char]. +/// \returns +/// A 256-bit vector of [8 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := Signed(SignExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j])) +/// tmp2.word := Signed(SignExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1])) +/// tmp3.word := Signed(SignExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2])) +/// tmp4.word := Signed(SignExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3])) +/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpbsud_epi32(__m256i __W, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_vpdpbsud256((__v8si)__W, (__v8si)__A, + (__v8si)__B); +} + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W with signed saturation, and store the packed +/// 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_dpbsuds_epi32( __m128i __W, __m128i __A, __m128i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 128-bit vector of [16 x char]. +/// \param __B +/// A 128-bit vector of [16 x unsigned char]. +/// \returns +/// A 128-bit vector of [4 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := Signed(SignExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j])) +/// tmp2.word := Signed(SignExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1])) +/// tmp3.word := Signed(SignExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2])) +/// tmp4.word := Signed(SignExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3])) +/// dst.dword[j] := SIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbsuds_epi32(__m128i __W, + __m128i __A, + __m128i __B) { + return (__m128i)__builtin_ia32_vpdpbsuds128((__v4si)__W, (__v4si)__A, + (__v4si)__B); +} + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W with signed saturation, and store the packed +/// 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_dpbsuds_epi32(__m256i __W, __m256i __A, __m256i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 256-bit vector of [32 x char]. +/// \param __B +/// A 256-bit vector of [32 x unsigned char]. +/// \returns +/// A 256-bit vector of [8 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := Signed(SignExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j])) +/// tmp2.word := Signed(SignExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1])) +/// tmp3.word := Signed(SignExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2])) +/// tmp4.word := Signed(SignExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3])) +/// dst.dword[j] := SIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpbsuds_epi32(__m256i __W, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_vpdpbsuds256((__v8si)__W, (__v8si)__A, + (__v8si)__B); +} + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with +/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_dpbuud_epi32(__m128i __W, __m128i __A, __m128i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 128-bit vector of [16 x unsigned char]. +/// \param __B +/// A 128-bit vector of [16 x unsigned char]. +/// \returns +/// A 128-bit vector of [4 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := ZeroExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j]) +/// tmp2.word := ZeroExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1]) +/// tmp3.word := ZeroExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2]) +/// tmp4.word := ZeroExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3]) +/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbuud_epi32(__m128i __W, + __m128i __A, + __m128i __B) { + return (__m128i)__builtin_ia32_vpdpbuud128((__v4si)__W, (__v4si)__A, + (__v4si)__B); +} + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with +/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_dpbuud_epi32(__m256i __W, __m256i __A, __m256i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBSSD instruction. +/// +/// \param __A +/// A 256-bit vector of [32 x unsigned char]. +/// \param __B +/// A 256-bit vector of [32 x unsigned char]. +/// \returns +/// A 256-bit vector of [8 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := ZeroExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j]) +/// tmp2.word := ZeroExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1]) +/// tmp3.word := ZeroExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2]) +/// tmp4.word := ZeroExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3]) +/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpbuud_epi32(__m256i __W, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_vpdpbuud256((__v8si)__W, (__v8si)__A, + (__v8si)__B); +} + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with +/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W with signed saturation, and store the packed +/// 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm_dpbuuds_epi32( __m128i __W, __m128i __A, __m128i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBUUDS instruction. +/// +/// \param __A +/// A 128-bit vector of [16 x unsigned char]. +/// \param __B +/// A 128-bit vector of [16 x unsigned char]. +/// \returns +/// A 128-bit vector of [4 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := ZeroExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j]) +/// tmp2.word := ZeroExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1]) +/// tmp3.word := ZeroExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2]) +/// tmp4.word := ZeroExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3]) +/// dst.dword[j] := UNSIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// dst[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbuuds_epi32(__m128i __W, + __m128i __A, + __m128i __B) { + return (__m128i)__builtin_ia32_vpdpbuuds128((__v4si)__W, (__v4si)__A, + (__v4si)__B); +} + +/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with +/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate +/// signed 16-bit results. Sum these 4 results with the corresponding +/// 32-bit integer in \a __W with signed saturation, and store the packed +/// 32-bit results in \a dst. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// _mm256_dpbuuds_epi32(__m256i __W, __m256i __A, __m256i __B); +/// \endcode +/// +/// This intrinsic corresponds to the \c VPDPBUUDS instruction. +/// +/// \param __A +/// A 256-bit vector of [32 x unsigned char]. +/// \param __B +/// A 256-bit vector of [32 x unsigned char]. +/// \returns +/// A 256-bit vector of [8 x int]. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := ZeroExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j]) +/// tmp2.word := ZeroExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1]) +/// tmp3.word := ZeroExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2]) +/// tmp4.word := ZeroExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3]) +/// dst.dword[j] := UNSIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// dst[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpbuuds_epi32(__m256i __W, __m256i __A, __m256i __B) { + return (__m256i)__builtin_ia32_vpdpbuuds256((__v8si)__W, (__v8si)__A, + (__v8si)__B); +} +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif // __AVXVNNIINT8INTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7c8a3a67944570a83617eb3c2e7d90342c04998c GIT binary patch literal 31235 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 I7yRS@0W!zRdH?_b literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h new file mode 100644 index 00000000..b7de562b --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h @@ -0,0 +1,225 @@ +/*===--------------- avxvnniintrin.h - VNNI intrinsics --------------------=== + * + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <avxvnniintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __AVXVNNIINTRIN_H +#define __AVXVNNIINTRIN_H + +/* Below intrinsics defined in avx512vlvnniintrin.h can be used for AVXVNNI */ +/// \fn __m256i _mm256_dpbusd_epi32(__m256i __S, __m256i __A, __m256i __B) +/// \fn __m256i _mm256_dpbusds_epi32(__m256i __S, __m256i __A, __m256i __B) +/// \fn __m256i _mm256_dpwssd_epi32(__m256i __S, __m256i __A, __m256i __B) +/// \fn __m256i _mm256_dpwssds_epi32(__m256i __S, __m256i __A, __m256i __B) +/// \fn __m128i _mm_dpbusd_epi32(__m128i __S, __m128i __A, __m128i __B) +/// \fn __m128i _mm_dpbusds_epi32(__m128i __S, __m128i __A, __m128i __B) +/// \fn __m128i _mm_dpwssd_epi32(__m128i __S, __m128i __A, __m128i __B) +/// \fn __m128i _mm_dpwssds_epi32(__m128i __S, __m128i __A, __m128i __B) + +/* Intrinsics with _avx_ prefix are for compatibility with msvc. */ +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avxvnni"), __min_vector_width__(256))) +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avxvnni"), __min_vector_width__(128))) + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with +/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate signed +/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in \a __S, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPBUSD </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := Signed(ZeroExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j])) +/// tmp2.word := Signed(ZeroExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1])) +/// tmp3.word := Signed(ZeroExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2])) +/// tmp4.word := Signed(ZeroExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3])) +/// DST.dword[j] := __S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// DST[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpbusd_avx_epi32(__m256i __S, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_vpdpbusd256((__v8si)__S, (__v8si)__A, (__v8si)__B); +} + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with +/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate signed +/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in \a __S using signed saturation, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPBUSDS </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.word := Signed(ZeroExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j])) +/// tmp2.word := Signed(ZeroExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1])) +/// tmp3.word := Signed(ZeroExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2])) +/// tmp4.word := Signed(ZeroExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3])) +/// DST.dword[j] := Saturate32(__S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// DST[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpbusds_avx_epi32(__m256i __S, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_vpdpbusds256((__v8si)__S, (__v8si)__A, (__v8si)__B); +} + +/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with +/// corresponding 16-bit integers in \a __B, producing 2 intermediate signed 32-bit +/// results. Sum these 2 results with the corresponding 32-bit integer in \a __S, +/// and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPWSSD </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.dword := SignExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j]) +/// tmp2.dword := SignExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1]) +/// DST.dword[j] := __S.dword[j] + tmp1 + tmp2 +/// ENDFOR +/// DST[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpwssd_avx_epi32(__m256i __S, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_vpdpwssd256((__v8si)__S, (__v8si)__A, (__v8si)__B); +} + +/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with +/// corresponding 16-bit integers in \a __B, producing 2 intermediate signed 32-bit +/// results. Sum these 2 results with the corresponding 32-bit integer in \a __S +/// using signed saturation, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPWSSDS </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 7 +/// tmp1.dword := SignExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j]) +/// tmp2.dword := SignExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1]) +/// DST.dword[j] := Saturate32(__S.dword[j] + tmp1 + tmp2) +/// ENDFOR +/// DST[MAX:256] := 0 +/// \endcode +static __inline__ __m256i __DEFAULT_FN_ATTRS256 +_mm256_dpwssds_avx_epi32(__m256i __S, __m256i __A, __m256i __B) +{ + return (__m256i)__builtin_ia32_vpdpwssds256((__v8si)__S, (__v8si)__A, (__v8si)__B); +} + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with +/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate signed +/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in \a __S, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPBUSD </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := Signed(ZeroExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j])) +/// tmp2.word := Signed(ZeroExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1])) +/// tmp3.word := Signed(ZeroExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2])) +/// tmp4.word := Signed(ZeroExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3])) +/// DST.dword[j] := __S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 +/// ENDFOR +/// DST[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_dpbusd_avx_epi32(__m128i __S, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_vpdpbusd128((__v4si)__S, (__v4si)__A, (__v4si)__B); +} + +/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with +/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate signed +/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer +/// in \a __S using signed saturation, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPBUSDS </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.word := Signed(ZeroExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j])) +/// tmp2.word := Signed(ZeroExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1])) +/// tmp3.word := Signed(ZeroExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2])) +/// tmp4.word := Signed(ZeroExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3])) +/// DST.dword[j] := Saturate32(__S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) +/// ENDFOR +/// DST[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_dpbusds_avx_epi32(__m128i __S, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_vpdpbusds128((__v4si)__S, (__v4si)__A, (__v4si)__B); +} + +/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with +/// corresponding 16-bit integers in \a __B, producing 2 intermediate signed 32-bit +/// results. Sum these 2 results with the corresponding 32-bit integer in \a __S, +/// and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPWSSD </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.dword := SignExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j]) +/// tmp2.dword := SignExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1]) +/// DST.dword[j] := __S.dword[j] + tmp1 + tmp2 +/// ENDFOR +/// DST[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_dpwssd_avx_epi32(__m128i __S, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_vpdpwssd128((__v4si)__S, (__v4si)__A, (__v4si)__B); +} + +/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with +/// corresponding 16-bit integers in \a __B, producing 2 intermediate signed 32-bit +/// results. Sum these 2 results with the corresponding 32-bit integer in \a __S +/// using signed saturation, and store the packed 32-bit results in DST. +/// +/// This intrinsic corresponds to the <c> VPDPWSSDS </c> instructions. +/// +/// \code{.operation} +/// FOR j := 0 to 3 +/// tmp1.dword := SignExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j]) +/// tmp2.dword := SignExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1]) +/// DST.dword[j] := Saturate32(__S.dword[j] + tmp1 + tmp2) +/// ENDFOR +/// DST[MAX:128] := 0 +/// \endcode +static __inline__ __m128i __DEFAULT_FN_ATTRS128 +_mm_dpwssds_avx_epi32(__m128i __S, __m128i __A, __m128i __B) +{ + return (__m128i)__builtin_ia32_vpdpwssds128((__v4si)__S, (__v4si)__A, (__v4si)__B); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif // __AVXVNNIINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d024a5ff31647ca35f33c07b2a5e893b05d7588d GIT binary patch literal 22225 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h new file mode 100644 index 00000000..0b56aed5 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h @@ -0,0 +1,81 @@ +/*===---- bmi2intrin.h - BMI2 intrinsics -----------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <bmi2intrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __BMI2INTRIN_H +#define __BMI2INTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("bmi2"))) + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_bzhi_u32(unsigned int __X, unsigned int __Y) +{ + return __builtin_ia32_bzhi_si(__X, __Y); +} + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_pdep_u32(unsigned int __X, unsigned int __Y) +{ + return __builtin_ia32_pdep_si(__X, __Y); +} + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_pext_u32(unsigned int __X, unsigned int __Y) +{ + return __builtin_ia32_pext_si(__X, __Y); +} + +#ifdef __x86_64__ + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_bzhi_u64(unsigned long long __X, unsigned long long __Y) +{ + return __builtin_ia32_bzhi_di(__X, __Y); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_pdep_u64(unsigned long long __X, unsigned long long __Y) +{ + return __builtin_ia32_pdep_di(__X, __Y); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_pext_u64(unsigned long long __X, unsigned long long __Y) +{ + return __builtin_ia32_pext_di(__X, __Y); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_mulx_u64 (unsigned long long __X, unsigned long long __Y, + unsigned long long *__P) +{ + unsigned __int128 __res = (unsigned __int128) __X * __Y; + *__P = (unsigned long long) (__res >> 64); + return (unsigned long long) __res; +} + +#else /* !__x86_64__ */ + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_mulx_u32 (unsigned int __X, unsigned int __Y, unsigned int *__P) +{ + unsigned long long __res = (unsigned long long) __X * __Y; + *__P = (unsigned int) (__res >> 32); + return (unsigned int) __res; +} + +#endif /* !__x86_64__ */ + +#undef __DEFAULT_FN_ATTRS + +#endif /* __BMI2INTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..377aa23585d3062d8dc74ec3b620c12838b5ca32 GIT binary patch literal 14586 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h new file mode 100644 index 00000000..ffb94bea --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h @@ -0,0 +1,431 @@ +/*===---- bmiintrin.h - BMI intrinsics -------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <bmiintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __BMIINTRIN_H +#define __BMIINTRIN_H + +/* Allow using the tzcnt intrinsics even for non-BMI targets. Since the TZCNT + instruction behaves as BSF on non-BMI targets, there is code that expects + to use it as a potentially faster version of BSF. */ +#define __RELAXED_FN_ATTRS __attribute__((__always_inline__, __nodebug__)) + +#define _tzcnt_u16(a) (__tzcnt_u16((a))) + +/// Counts the number of trailing zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> TZCNT </c> instruction. +/// +/// \param __X +/// An unsigned 16-bit integer whose trailing zeros are to be counted. +/// \returns An unsigned 16-bit integer containing the number of trailing zero +/// bits in the operand. +static __inline__ unsigned short __RELAXED_FN_ATTRS +__tzcnt_u16(unsigned short __X) +{ + return __builtin_ia32_tzcnt_u16(__X); +} + +/// Counts the number of trailing zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> TZCNT </c> instruction. +/// +/// \param __X +/// An unsigned 32-bit integer whose trailing zeros are to be counted. +/// \returns An unsigned 32-bit integer containing the number of trailing zero +/// bits in the operand. +/// \see _mm_tzcnt_32 +static __inline__ unsigned int __RELAXED_FN_ATTRS +__tzcnt_u32(unsigned int __X) +{ + return __builtin_ia32_tzcnt_u32(__X); +} + +/// Counts the number of trailing zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> TZCNT </c> instruction. +/// +/// \param __X +/// An unsigned 32-bit integer whose trailing zeros are to be counted. +/// \returns An 32-bit integer containing the number of trailing zero bits in +/// the operand. +/// \see __tzcnt_u32 +static __inline__ int __RELAXED_FN_ATTRS +_mm_tzcnt_32(unsigned int __X) +{ + return (int)__builtin_ia32_tzcnt_u32(__X); +} + +#define _tzcnt_u32(a) (__tzcnt_u32((a))) + +#ifdef __x86_64__ + +/// Counts the number of trailing zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> TZCNT </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer whose trailing zeros are to be counted. +/// \returns An unsigned 64-bit integer containing the number of trailing zero +/// bits in the operand. +/// \see _mm_tzcnt_64 +static __inline__ unsigned long long __RELAXED_FN_ATTRS +__tzcnt_u64(unsigned long long __X) +{ + return __builtin_ia32_tzcnt_u64(__X); +} + +/// Counts the number of trailing zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> TZCNT </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer whose trailing zeros are to be counted. +/// \returns An 64-bit integer containing the number of trailing zero bits in +/// the operand. +/// \see __tzcnt_u64 +static __inline__ long long __RELAXED_FN_ATTRS +_mm_tzcnt_64(unsigned long long __X) +{ + return (long long)__builtin_ia32_tzcnt_u64(__X); +} + +#define _tzcnt_u64(a) (__tzcnt_u64((a))) + +#endif /* __x86_64__ */ + +#undef __RELAXED_FN_ATTRS + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__BMI__) + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("bmi"))) + +#define _andn_u32(a, b) (__andn_u32((a), (b))) + +/* _bextr_u32 != __bextr_u32 */ +#define _blsi_u32(a) (__blsi_u32((a))) + +#define _blsmsk_u32(a) (__blsmsk_u32((a))) + +#define _blsr_u32(a) (__blsr_u32((a))) + +/// Performs a bitwise AND of the second operand with the one's +/// complement of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> ANDN </c> instruction. +/// +/// \param __X +/// An unsigned integer containing one of the operands. +/// \param __Y +/// An unsigned integer containing one of the operands. +/// \returns An unsigned integer containing the bitwise AND of the second +/// operand with the one's complement of the first operand. +static __inline__ unsigned int __DEFAULT_FN_ATTRS +__andn_u32(unsigned int __X, unsigned int __Y) +{ + return ~__X & __Y; +} + +/* AMD-specified, double-leading-underscore version of BEXTR */ +/// Extracts the specified bits from the first operand and returns them +/// in the least significant bits of the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BEXTR </c> instruction. +/// +/// \param __X +/// An unsigned integer whose bits are to be extracted. +/// \param __Y +/// An unsigned integer used to specify which bits are extracted. Bits [7:0] +/// specify the index of the least significant bit. Bits [15:8] specify the +/// number of bits to be extracted. +/// \returns An unsigned integer whose least significant bits contain the +/// extracted bits. +/// \see _bextr_u32 +static __inline__ unsigned int __DEFAULT_FN_ATTRS +__bextr_u32(unsigned int __X, unsigned int __Y) +{ + return __builtin_ia32_bextr_u32(__X, __Y); +} + +/* Intel-specified, single-leading-underscore version of BEXTR */ +/// Extracts the specified bits from the first operand and returns them +/// in the least significant bits of the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BEXTR </c> instruction. +/// +/// \param __X +/// An unsigned integer whose bits are to be extracted. +/// \param __Y +/// An unsigned integer used to specify the index of the least significant +/// bit for the bits to be extracted. Bits [7:0] specify the index. +/// \param __Z +/// An unsigned integer used to specify the number of bits to be extracted. +/// Bits [7:0] specify the number of bits. +/// \returns An unsigned integer whose least significant bits contain the +/// extracted bits. +/// \see __bextr_u32 +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_bextr_u32(unsigned int __X, unsigned int __Y, unsigned int __Z) +{ + return __builtin_ia32_bextr_u32 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8))); +} + +/* Intel-specified, single-leading-underscore version of BEXTR2 */ +/// Extracts the specified bits from the first operand and returns them +/// in the least significant bits of the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BEXTR </c> instruction. +/// +/// \param __X +/// An unsigned integer whose bits are to be extracted. +/// \param __Y +/// An unsigned integer used to specify which bits are extracted. Bits [7:0] +/// specify the index of the least significant bit. Bits [15:8] specify the +/// number of bits to be extracted. +/// \returns An unsigned integer whose least significant bits contain the +/// extracted bits. +/// \see __bextr_u32 +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_bextr2_u32(unsigned int __X, unsigned int __Y) { + return __builtin_ia32_bextr_u32(__X, __Y); +} + +/// Clears all bits in the source except for the least significant bit +/// containing a value of 1 and returns the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BLSI </c> instruction. +/// +/// \param __X +/// An unsigned integer whose bits are to be cleared. +/// \returns An unsigned integer containing the result of clearing the bits from +/// the source operand. +static __inline__ unsigned int __DEFAULT_FN_ATTRS +__blsi_u32(unsigned int __X) +{ + return __X & -__X; +} + +/// Creates a mask whose bits are set to 1, using bit 0 up to and +/// including the least significant bit that is set to 1 in the source +/// operand and returns the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BLSMSK </c> instruction. +/// +/// \param __X +/// An unsigned integer used to create the mask. +/// \returns An unsigned integer containing the newly created mask. +static __inline__ unsigned int __DEFAULT_FN_ATTRS +__blsmsk_u32(unsigned int __X) +{ + return __X ^ (__X - 1); +} + +/// Clears the least significant bit that is set to 1 in the source +/// operand and returns the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BLSR </c> instruction. +/// +/// \param __X +/// An unsigned integer containing the operand to be cleared. +/// \returns An unsigned integer containing the result of clearing the source +/// operand. +static __inline__ unsigned int __DEFAULT_FN_ATTRS +__blsr_u32(unsigned int __X) +{ + return __X & (__X - 1); +} + +#ifdef __x86_64__ + +#define _andn_u64(a, b) (__andn_u64((a), (b))) + +/* _bextr_u64 != __bextr_u64 */ +#define _blsi_u64(a) (__blsi_u64((a))) + +#define _blsmsk_u64(a) (__blsmsk_u64((a))) + +#define _blsr_u64(a) (__blsr_u64((a))) + +/// Performs a bitwise AND of the second operand with the one's +/// complement of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> ANDN </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer containing one of the operands. +/// \param __Y +/// An unsigned 64-bit integer containing one of the operands. +/// \returns An unsigned 64-bit integer containing the bitwise AND of the second +/// operand with the one's complement of the first operand. +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +__andn_u64 (unsigned long long __X, unsigned long long __Y) +{ + return ~__X & __Y; +} + +/* AMD-specified, double-leading-underscore version of BEXTR */ +/// Extracts the specified bits from the first operand and returns them +/// in the least significant bits of the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BEXTR </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer whose bits are to be extracted. +/// \param __Y +/// An unsigned 64-bit integer used to specify which bits are extracted. Bits +/// [7:0] specify the index of the least significant bit. Bits [15:8] specify +/// the number of bits to be extracted. +/// \returns An unsigned 64-bit integer whose least significant bits contain the +/// extracted bits. +/// \see _bextr_u64 +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +__bextr_u64(unsigned long long __X, unsigned long long __Y) +{ + return __builtin_ia32_bextr_u64(__X, __Y); +} + +/* Intel-specified, single-leading-underscore version of BEXTR */ +/// Extracts the specified bits from the first operand and returns them +/// in the least significant bits of the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BEXTR </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer whose bits are to be extracted. +/// \param __Y +/// An unsigned integer used to specify the index of the least significant +/// bit for the bits to be extracted. Bits [7:0] specify the index. +/// \param __Z +/// An unsigned integer used to specify the number of bits to be extracted. +/// Bits [7:0] specify the number of bits. +/// \returns An unsigned 64-bit integer whose least significant bits contain the +/// extracted bits. +/// \see __bextr_u64 +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_bextr_u64(unsigned long long __X, unsigned int __Y, unsigned int __Z) +{ + return __builtin_ia32_bextr_u64 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8))); +} + +/* Intel-specified, single-leading-underscore version of BEXTR2 */ +/// Extracts the specified bits from the first operand and returns them +/// in the least significant bits of the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BEXTR </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer whose bits are to be extracted. +/// \param __Y +/// An unsigned 64-bit integer used to specify which bits are extracted. Bits +/// [7:0] specify the index of the least significant bit. Bits [15:8] specify +/// the number of bits to be extracted. +/// \returns An unsigned 64-bit integer whose least significant bits contain the +/// extracted bits. +/// \see __bextr_u64 +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_bextr2_u64(unsigned long long __X, unsigned long long __Y) { + return __builtin_ia32_bextr_u64(__X, __Y); +} + +/// Clears all bits in the source except for the least significant bit +/// containing a value of 1 and returns the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BLSI </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer whose bits are to be cleared. +/// \returns An unsigned 64-bit integer containing the result of clearing the +/// bits from the source operand. +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +__blsi_u64(unsigned long long __X) +{ + return __X & -__X; +} + +/// Creates a mask whose bits are set to 1, using bit 0 up to and +/// including the least significant bit that is set to 1 in the source +/// operand and returns the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BLSMSK </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer used to create the mask. +/// \returns An unsigned 64-bit integer containing the newly created mask. +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +__blsmsk_u64(unsigned long long __X) +{ + return __X ^ (__X - 1); +} + +/// Clears the least significant bit that is set to 1 in the source +/// operand and returns the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> BLSR </c> instruction. +/// +/// \param __X +/// An unsigned 64-bit integer containing the operand to be cleared. +/// \returns An unsigned 64-bit integer containing the result of clearing the +/// source operand. +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +__blsr_u64(unsigned long long __X) +{ + return __X & (__X - 1); +} + +#endif /* __x86_64__ */ + +#undef __DEFAULT_FN_ATTRS + +#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ + || defined(__BMI__) */ + +#endif /* __BMIINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7ec7cd7fb196ac4e5405da911b4701861cbfc593 GIT binary patch literal 27157 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 D&9nG~ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h new file mode 100644 index 00000000..a68df5b1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h @@ -0,0 +1,115 @@ +/*===---- cetintrin.h - CET intrinsic --------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <cetintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __CETINTRIN_H +#define __CETINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("shstk"))) + +static __inline__ void __DEFAULT_FN_ATTRS _incsspd(int __a) { + __builtin_ia32_incsspd((unsigned int)__a); +} + +#ifdef __x86_64__ +static __inline__ void __DEFAULT_FN_ATTRS _incsspq(unsigned long long __a) { + __builtin_ia32_incsspq(__a); +} +#endif /* __x86_64__ */ + +#ifdef __x86_64__ +static __inline__ void __DEFAULT_FN_ATTRS _inc_ssp(unsigned int __a) { + __builtin_ia32_incsspq(__a); +} +#else /* __x86_64__ */ +static __inline__ void __DEFAULT_FN_ATTRS _inc_ssp(unsigned int __a) { + __builtin_ia32_incsspd(__a); +} +#endif /* __x86_64__ */ + +static __inline__ unsigned int __DEFAULT_FN_ATTRS _rdsspd(unsigned int __a) { + return __builtin_ia32_rdsspd(__a); +} + +static __inline__ unsigned int __DEFAULT_FN_ATTRS _rdsspd_i32(void) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wuninitialized" + unsigned int t; + return __builtin_ia32_rdsspd(t); +#pragma clang diagnostic pop +} + +#ifdef __x86_64__ +static __inline__ unsigned long long __DEFAULT_FN_ATTRS _rdsspq(unsigned long long __a) { + return __builtin_ia32_rdsspq(__a); +} + +static __inline__ unsigned long long __DEFAULT_FN_ATTRS _rdsspq_i64(void) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wuninitialized" + unsigned long long t; + return __builtin_ia32_rdsspq(t); +#pragma clang diagnostic pop +} +#endif /* __x86_64__ */ + +#ifdef __x86_64__ +static __inline__ unsigned long long __DEFAULT_FN_ATTRS _get_ssp(void) { + return __builtin_ia32_rdsspq(0); +} +#else /* __x86_64__ */ +static __inline__ unsigned int __DEFAULT_FN_ATTRS _get_ssp(void) { + return __builtin_ia32_rdsspd(0); +} +#endif /* __x86_64__ */ + +static __inline__ void __DEFAULT_FN_ATTRS _saveprevssp(void) { + __builtin_ia32_saveprevssp(); +} + +static __inline__ void __DEFAULT_FN_ATTRS _rstorssp(void * __p) { + __builtin_ia32_rstorssp(__p); +} + +static __inline__ void __DEFAULT_FN_ATTRS _wrssd(unsigned int __a, void * __p) { + __builtin_ia32_wrssd(__a, __p); +} + +#ifdef __x86_64__ +static __inline__ void __DEFAULT_FN_ATTRS _wrssq(unsigned long long __a, void * __p) { + __builtin_ia32_wrssq(__a, __p); +} +#endif /* __x86_64__ */ + +static __inline__ void __DEFAULT_FN_ATTRS _wrussd(unsigned int __a, void * __p) { + __builtin_ia32_wrussd(__a, __p); +} + +#ifdef __x86_64__ +static __inline__ void __DEFAULT_FN_ATTRS _wrussq(unsigned long long __a, void * __p) { + __builtin_ia32_wrussq(__a, __p); +} +#endif /* __x86_64__ */ + +static __inline__ void __DEFAULT_FN_ATTRS _setssbsy(void) { + __builtin_ia32_setssbsy(); +} + +static __inline__ void __DEFAULT_FN_ATTRS _clrssbsy(void * __p) { + __builtin_ia32_clrssbsy(__p); +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* __CETINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..af6c250b5298023be4aa8d2b88420874ac168659 GIT binary patch literal 15061 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 H2gv;oM;TI4 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h new file mode 100644 index 00000000..cfb951c1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h @@ -0,0 +1,36 @@ +/*===---- cldemoteintrin.h - CLDEMOTE intrinsic ----------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <cldemoteintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __CLDEMOTEINTRIN_H +#define __CLDEMOTEINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("cldemote"))) + +/// Hint to hardware that the cache line that contains \p __P should be demoted +/// from the cache closest to the processor core to a level more distant from +/// the processor core. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CLDEMOTE </c> instruction. +static __inline__ void __DEFAULT_FN_ATTRS +_cldemote(const void * __P) { + __builtin_ia32_cldemote(__P); +} + +#define _mm_cldemote(p) _cldemote(p) +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..cc9bed3caf876af302fbd05612d4e69b960f01c2 GIT binary patch literal 12846 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h new file mode 100644 index 00000000..060eb36f --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h @@ -0,0 +1,27 @@ +/*===---- clflushoptintrin.h - CLFLUSHOPT intrinsic ------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <clflushoptintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __CLFLUSHOPTINTRIN_H +#define __CLFLUSHOPTINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("clflushopt"))) + +static __inline__ void __DEFAULT_FN_ATTRS +_mm_clflushopt(void const * __m) { + __builtin_ia32_clflushopt(__m); +} + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..46248ba37185eef88f08ad952cb4c75d15952c4c GIT binary patch literal 12509 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 O9y_|Xt^TUDNB;*&raOZG literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h new file mode 100644 index 00000000..3360d203 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h @@ -0,0 +1,38 @@ +/*===---- clwbintrin.h - CLWB intrinsic ------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <clwbintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __CLWBINTRIN_H +#define __CLWBINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("clwb"))) + +/// Writes back to memory the cache line (if modified) that contains the +/// linear address specified in \a __p from any level of the cache hierarchy in +/// the cache coherence domain +/// +/// \headerfile <immintrin.h> +/// +/// This intrinsic corresponds to the <c> CLWB </c> instruction. +/// +/// \param __p +/// A pointer to the memory location used to identify the cache line to be +/// written back. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_clwb(void const *__p) { + __builtin_ia32_clwb(__p); +} + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..95550f75537c11e9fc49c8b5f7f59710d77450de GIT binary patch literal 12854 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 Bv=IOR literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h new file mode 100644 index 00000000..69574989 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h @@ -0,0 +1,70 @@ +/*===--------------- cmpccxaddintrin.h - CMPCCXADD intrinsics--------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __X86GPRINTRIN_H +#error \ + "Never use <cmpccxaddintrin.h> directly; include <x86gprintrin.h> instead." +#endif // __X86GPRINTRIN_H + +#ifndef __CMPCCXADDINTRIN_H +#define __CMPCCXADDINTRIN_H +#ifdef __x86_64__ + +typedef enum { + _CMPCCX_O, /* Overflow. */ + _CMPCCX_NO, /* No overflow. */ + _CMPCCX_B, /* Below. */ + _CMPCCX_NB, /* Not below. */ + _CMPCCX_Z, /* Zero. */ + _CMPCCX_NZ, /* Not zero. */ + _CMPCCX_BE, /* Below or equal. */ + _CMPCCX_NBE, /* Neither below nor equal. */ + _CMPCCX_S, /* Sign. */ + _CMPCCX_NS, /* No sign. */ + _CMPCCX_P, /* Parity. */ + _CMPCCX_NP, /* No parity. */ + _CMPCCX_L, /* Less. */ + _CMPCCX_NL, /* Not less. */ + _CMPCCX_LE, /* Less or equal. */ + _CMPCCX_NLE, /* Neither less nor equal. */ +} _CMPCCX_ENUM; + +/// Compares the value from the memory __A with the value of __B. If the +/// specified condition __D is met, then add the third operand __C to the +/// __A and write it into __A, else the value of __A is unchanged. The return +/// value is the original value of __A. +/// +/// \headerfile <immintrin.h> +/// +/// This intrinsic corresponds to the \c CMPCCXADD instructions. +/// +/// \param __A +/// __A pointer specifying the memory address. +/// +/// \param __B +/// A integer operand. +/// +/// \param __C +/// A integer operand. +/// +/// \param __D +/// The specified condition. +/// +/// \returns a integer which is the original value of first operand. + +#define _cmpccxadd_epi32(__A, __B, __C, __D) \ + ((int)(__builtin_ia32_cmpccxadd32((void *)(__A), (int)(__B), (int)(__C), \ + (int)(__D)))) + +#define _cmpccxadd_epi64(__A, __B, __C, __D) \ + ((long long)(__builtin_ia32_cmpccxadd64((void *)(__A), (long long)(__B), \ + (long long)(__C), (int)(__D)))) + +#endif // __x86_64__ +#endif // __CMPCCXADDINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e89dd6b819081496e70160155a92e7ff12ee9224 GIT binary patch literal 13977 zcmbtaeTZDu6`xI~g<2ttiEE6}jHb#a-Ep#;b(<D#&2FLwHk;UJDp7pCd2?sxy6<b> zd-JhD#6S9n7C{lJh+3$n7Fybh6hVZR{!xo*3sOo;3;lwkqQz2cp_S_PoO|EBGk4y3 zZ$`R*%rm}o&pjW%^Ks982TC8F=Xd<PG*zm#1CQ0*+EEs-CqY<CSe(=vtWk?2r{>w* zzt$;z%yDhMH4$mG7ewpaZ&e#SVonl7n>Xa{Q2JnQs@9348uuNy(_ppJM^_hWb=Km( z<pd3OZM*d0HI)a?8#GR`8HzXWy>r-nQ|C!s!?$tGvb=hn*a@=|WTHu3UatvVYV%8a zSKI4zKZ!t7AVsSf`w5xg$7*$WgOupz)mqE#;H&9hKmTgZVz6o_qBUwV8{fr-q{<|o zowSV?v<lt+b@L0&aDJ&k6JZ~8i*Fi5Z6)5<Hvs@WI~>1foHXh|;38qhXo6K3#Js;? zx!g0D8Qa-O;Bm+5@dg8zcl?A!nz#s<P3|(Q9tFKvE;#s|dXC$iu*3akfLt|}3Tz0H z+b#fbJRags)U=&}ON+#9Gne;Kgzvv_w<%|g8@05~7!9O!t)|Zlq!I>~*pGRuYr7-B zH;gXn67I2Rh^$C{*5$&{7yjs^DZY-5B<MH-sM^TJmd&v02Ce#dJ#B&HZrv-=Hr|YD zPJ=b+kQuf`5_O!!y6O1pF=J~bn-*Urx?zYYiXmoB5Ug`%@xW?!d?(?79}k&tIFE^p zfE%8zuN35{CPc^x2h#UF&l~4@aC)4q$LB~bJ3fbCC0`AxM`uiB2iU;31qO67Rj&k( z*lDw|Tl7GUNfZu)(D9Q3oweT}nKfhv5V$MEuxC30Fu(uI2@}K^38Z!OHn0n~MSall zCOu_YU}ylQ<=K79cEM&+T{=OkT7}MIqlPi8+hS0f6UdOVga{WD=^A%YpLbS{n2KtB zKuX|`G+H0EAI6pt%&-WlZL=Rk^2%gNk~WR&Z~+#uD2CSHBd&BOscz`WrA0$>rI*&- zad}t|?1(Pr0?be`62A&H2|$=^8th2r!l>!Asf0yRr>5{T3BAap&4@9p<!*)|$sVY* zP0z|0#3W!l>*EDZMR4oQ@f`!86ANh7fqa*k8MjD1$l&N}00@es1E63DZ+dpuCDtex z3MB`jNGBo{RBqtd&?A_w4!Jw*r~$9#H1>q*)wE-il|cYaZzJaC=q!T4Ci;(zz#5b5 zY}06Xi;$225@MdDoznYTjzj{fT3A>)^!6T)>13cOWS@qf%p{DK->E@!TaT+bk!QzV zjYW|!Y%u%&!)A*tk;{^My$O0wl|@8-Xl#r}i*~HGJ!z+I=(t|T-DqqO@FQ3BY@USc zRHI0e$D|`jQqYkQ!hoCTtSzVrMx-keJBFrs@Tv$)F6+zcx%+R-Oeo;AYK!?S;*NA) zwQk1(-x&{TkOU#~TcStEfMh6ieHNQpM9Gc7wj{D^cF0k;`<}ee?4Ly88t9hWE)VE* zM3ctu$99)F<Ls?+3N~y@i<9IOaAH>`_`?KqQWS@cmc$~@we7g=$z$45W33<s02VlO zBIg((hqAo(AmpKJX(Xjp6@-i!#aG6*?7^cRWMs26DKfo1p6a0gNSHV=(jWq9oNAld z(DqfK+6@7HxC2k|*5y&)dr-z{#0e@mAXcIMB11_Kq|KKII+6-Rf>0q}2?k-(jzD06 zqN*LqbCOO-87tIXsBvE2`~&;54%Fg=^$TQ%qAfQirBVjRm$a2(y)BM7#`*#zG$(-< z90B!~Mc{U0Q43z2DXMKzGI}a1VmUY{xC>P8qzhEWFEGD=!IEJI<uc)2nH=C8k0(uR z<ufgqK^`*~n%{hOIPiha#Wi;%Ee}b~j)X;Zk~6l#8r5{|mdVN>QJD?o9y2sRW;jyo znA}Lg?8ev<W?0R#p!!?&PSZ;4!7QZ6oj}`^mFu39%Vy;g;C9>~#);C%5RsIYEX~SF zU}L8mMhp&hhR;Y&&`nddgrv1BeXO@+_ksLrM>gH0%D_KWk0tGZK4wGX-06?&vr?<` zmX!|POdyhi_UeAX{Vp6BGtIm*lFBF6Am`|`Lh^)>YtC_wCYM7YITk3aIMND(kj*qJ z**OKdV`PKQqxCqq+fc<YE%_6jdE(aC7)k2}%oN~IXF;~BHa2}5=A{M_l@l_hMpG39 zl4~Pb{-gkh_((CvpTa?;XGrskwu=B1NzD8W$18&0u;v3}O{9Lzy%0``vO36w^1$4k z1?|)TT6v)w*f2YA0?!MIS^}Jn&*#p@Gu<~Tlfm*J>~NH8c*y_-PDL`OQ_|Ep_yF`~ z0-YrGJQ#Di(ADA2v^8YDfn*H$HB*f#pt!UlPwa|L&dJT%quvdbVQYd}Zx`lIFuXPF zMJm|GyRZ>!6vfhss+jSg|Ki9Ml8_Htwk8BGJt7bk@@mE^?CZvlD!VYY8r*giiMwgX zJ`Y3L`hNY{+s!g6M1r<}b)kJ89sU%t72ZbUzE3t<M&akEPZWpDOlhPyWRk@p(TGcO z({d8`-A01fkr_ZM=;#o-H-K{omj{&MT$hmj0x7Z=K-ru)o<vfFL;WP;+MRT!R4l9G zHr-C#E@s+u+V<eqZTJ+Wt<&a>^h7T9D{?<;aJcnF|Nrr(W<esA?hK304dX_AacpJV zThbB3&6X{1T6MxA7xWJ=wZe%#r|Q2mwo2&+EPvpyjV|+{k)|@R4P85F1`&N;)|@sv z+$`dXj|y_X<K-Vr(>4SJ$sCT<-F3BK@~$_5TgklSrbUgJA4~XXWE;W`RTSPBUsE7~ z;qZEdkajs4*J^Vu;9$B&3n(w!GK!L0O5DJJCYzv0`YvF1Qd&-`L$Vc#hhm&j9*Y<s zoZ*Lah48YG+(oNxg?40{9{`Xt#BD0AD*+^g@X{)&ipv=Tj3h&8+ro$hZbD##nc7m1 zwaK?aAbnJad6XN%JWAgS8*51M9Jj%|Aem??=LU8o9@O+<t7}+>ywBv!AOlNH(}MN` zCr44>x+DD}DI=J0fq<K`kmd`slcJEFpuU7bZ$u!qiAo;S#4Ar|_!Oq=;wJ=@^yDHq z<);UHT^2?Kz!aGd#0~G7bP}Rqw1VCrVN->vb6O^KP9-I4g7Zc0)`F2_;HsR%ry(D# z^{Q~@X;d4`abbQ6*EWVWB=a0g8k~*DPt1U)2-C)LBrz*W4J|L|$Xf@EYEnW_-$!Ue zYd=x@1m~gHZn1hG8unt|F#8A{PE~eNlu+hKB5p`>nWiSZ$bx$|F=Z47x`~?R;_qm* zncFtBo%9u;%<E!+U4<kKldx)j(v-yFG&dwFOs))&DK8JG;d;Wvp&}7q(y$&bKXcU^ zuZWN93hY?NFHE4EBE1e6#Y<}&^@31rryZ|I#(f<pQI6)%0j^NV4e<NNpaX+^LvK=W zxHx9eGiSvnsoCUJJxqELCkqV8**!PmCpTUPt{zaYjP<mE#hH<|u%?L}+t18rl^^hu zW89z|ulR!83Cds}z_xHhMqJ@5kzdVZO_~R8#&C);d9RiRHUuCU+~g)I8FY(3lTlXE zI>K03hM3T?=yW!iOWpfm`o(0SBw(ZB&mqMCNX!s*9aG{7`=)6?gGN&oY@72{O5Tc( zG7@ki=g`Dm0X=Fk)k{B)$=vGY2`hRNGEI>y!u50{SDeubE=}_<wlsX&kbUTAP170N zN96{ZAW_vH=hWt$kJJjP37mf?&3TU7tB=qYK|E<QIc0nN=5+p`JO&v9#4%E`dNrg) z?#H4jo{>jYw`GXu($ptQ7cQ2zZSB8*=NnsJJG0mJ1HZzcW2{&!Cr+)b++iJCyZuC| zRGKT5rY@SkXxBFQ-M0<?N2zqd6#j1AWzDY5yten7Xh~>Av#U*3yLaybR{P5P_5iEW zzCD76+Wx<S<&Ld4U!FVp-tq6AS3<0<9s|0Wp?_9xsLWqiT4NlH7FFQ#J+AmcRACz( z$S0+#tIAjH{$N{KJYSqau3J05cl({E?_qyXOjhB4UZnql{1!^9_=QJlYHxY(46ep! zy858~(kC8$^B=ET>53yqj~-vU?MuhktXqK3HTytw?z0N{dTRUh_N8s&x3nc>`N>0{ zzxtt%zx}M`c%kF;?MB05AwRSLtSXw-$h%p~Ix+_vEaT4#{v6$38UJ_J1(nL|ETC{d zFsOI93+T1DeQ05@_o0Q^*>1oal><m~WdB@6(Jv4E_X_+s{vpHhe~QD={qP44zkd4q zgWKTu3-#0lFF&)r|M&Ax|6m{nnqX-$-vmpG|Cb4{x2fPyz9C?TQ9~H3&>Z+TnF*wk zW(^K##8K1SIDI3S=Emve$5PXL`M19*Pe0JRTY>ZBFj7wfQV*6+!g&EAxd&j~QQjfI ziq90RSO5FR&Y6Gx>RH7=M9<E_zYy$;0_>Hcn7Oii<t{`$K2t`IJk|QDwP)9&T6$_& zl2gd$VCj?%&Dtgia(Vf3AqYOx^-n*y{`R*jk9|e0Upos7v><C|fdd3_kW|jGC;%3_ z%DaRJ_)J+myuWhhPw@*a%>u14V1eeC2NsoJV3D2Woq`KKQ!dXhKK0<a*I)aT=CW)i zl;vZ<=d(JW)EU^;NGQ9@yG265XUg;K-hb}@UGR-}70=~i<17Qeh0-$e0lh9RUo1?6 z&vf;>>#w|Z%PR+TPCGrk`ZTOQTsjS3VZ-9f%9n}7_)HhyI`_yef4=XhPpGZeaPNUp zaPvdLu0j#uF;kuqCc$UQ<I~@sdGxv`ele|ipmPU2gm;ByVGbr8d`0;R!33WvlS_a3 z`uRtnIrTHe1pTX%D!O;EbXL0dlJX@&3w)-F4{Xfr_{43GpHhp3PqYNWB}>wT!!W(H ze5sHEpDCm55B%`fJO6p&uZqzc=620!Z58C0m-fIy0p_TbD}o0;Qyy<U_tKMpdHyY3 c9@fwy10Lv+&mqoWE{jgtQ{E#u;8Sw=ACd*FkN^Mx literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h new file mode 100644 index 00000000..a0bd99d1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h @@ -0,0 +1,100 @@ +/*===---- crc32intrin.h - SSE4.2 Accumulate CRC32 intrinsics ---------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __CRC32INTRIN_H +#define __CRC32INTRIN_H + +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("crc32"))) + +/// Adds the unsigned integer operand to the CRC-32C checksum of the +/// unsigned char operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CRC32B </c> instruction. +/// +/// \param __C +/// An unsigned integer operand to add to the CRC-32C checksum of operand +/// \a __D. +/// \param __D +/// An unsigned 8-bit integer operand used to compute the CRC-32C checksum. +/// \returns The result of adding operand \a __C to the CRC-32C checksum of +/// operand \a __D. +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_mm_crc32_u8(unsigned int __C, unsigned char __D) +{ + return __builtin_ia32_crc32qi(__C, __D); +} + +/// Adds the unsigned integer operand to the CRC-32C checksum of the +/// unsigned short operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CRC32W </c> instruction. +/// +/// \param __C +/// An unsigned integer operand to add to the CRC-32C checksum of operand +/// \a __D. +/// \param __D +/// An unsigned 16-bit integer operand used to compute the CRC-32C checksum. +/// \returns The result of adding operand \a __C to the CRC-32C checksum of +/// operand \a __D. +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_mm_crc32_u16(unsigned int __C, unsigned short __D) +{ + return __builtin_ia32_crc32hi(__C, __D); +} + +/// Adds the first unsigned integer operand to the CRC-32C checksum of +/// the second unsigned integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CRC32L </c> instruction. +/// +/// \param __C +/// An unsigned integer operand to add to the CRC-32C checksum of operand +/// \a __D. +/// \param __D +/// An unsigned 32-bit integer operand used to compute the CRC-32C checksum. +/// \returns The result of adding operand \a __C to the CRC-32C checksum of +/// operand \a __D. +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_mm_crc32_u32(unsigned int __C, unsigned int __D) +{ + return __builtin_ia32_crc32si(__C, __D); +} + +#ifdef __x86_64__ +/// Adds the unsigned integer operand to the CRC-32C checksum of the +/// unsigned 64-bit integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CRC32Q </c> instruction. +/// +/// \param __C +/// An unsigned integer operand to add to the CRC-32C checksum of operand +/// \a __D. +/// \param __D +/// An unsigned 64-bit integer operand used to compute the CRC-32C checksum. +/// \returns The result of adding operand \a __C to the CRC-32C checksum of +/// operand \a __D. +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_mm_crc32_u64(unsigned long long __C, unsigned long long __D) +{ + return __builtin_ia32_crc32di(__C, __D); +} +#endif /* __x86_64__ */ + +#undef __DEFAULT_FN_ATTRS + +#endif /* __CRC32INTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4bb51d3ac7df99bcaf8f5d2e11075eee75d25b4b GIT binary patch literal 15413 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 Mi-#BZFPG5zAK{nqJ^%m! literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h new file mode 100644 index 00000000..064d9749 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h @@ -0,0 +1,4775 @@ +/*===---- emmintrin.h - SSE2 intrinsics ------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __EMMINTRIN_H +#define __EMMINTRIN_H + +#if !defined(__i386__) && !defined(__x86_64__) +#error "This header is only meant to be used on x86 and x64 architecture" +#endif + +#include <xmmintrin.h> + +typedef double __m128d __attribute__((__vector_size__(16), __aligned__(16))); +typedef long long __m128i __attribute__((__vector_size__(16), __aligned__(16))); + +typedef double __m128d_u __attribute__((__vector_size__(16), __aligned__(1))); +typedef long long __m128i_u + __attribute__((__vector_size__(16), __aligned__(1))); + +/* Type defines. */ +typedef double __v2df __attribute__((__vector_size__(16))); +typedef long long __v2di __attribute__((__vector_size__(16))); +typedef short __v8hi __attribute__((__vector_size__(16))); +typedef char __v16qi __attribute__((__vector_size__(16))); + +/* Unsigned types */ +typedef unsigned long long __v2du __attribute__((__vector_size__(16))); +typedef unsigned short __v8hu __attribute__((__vector_size__(16))); +typedef unsigned char __v16qu __attribute__((__vector_size__(16))); + +/* We need an explicitly signed variant for char. Note that this shouldn't + * appear in the interface though. */ +typedef signed char __v16qs __attribute__((__vector_size__(16))); + +#ifdef __SSE2__ +/* Both _Float16 and __bf16 require SSE2 being enabled. */ +typedef _Float16 __v8hf __attribute__((__vector_size__(16), __aligned__(16))); +typedef _Float16 __m128h __attribute__((__vector_size__(16), __aligned__(16))); +typedef _Float16 __m128h_u __attribute__((__vector_size__(16), __aligned__(1))); + +typedef __bf16 __v8bf __attribute__((__vector_size__(16), __aligned__(16))); +typedef __bf16 __m128bh __attribute__((__vector_size__(16), __aligned__(16))); +#endif + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("sse2"), \ + __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS_MMX \ + __attribute__((__always_inline__, __nodebug__, __target__("mmx,sse2"), \ + __min_vector_width__(64))) + +/// Adds lower double-precision values in both operands and returns the +/// sum in the lower 64 bits of the result. The upper 64 bits of the result +/// are copied from the upper double-precision value of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDSD / ADDSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the +/// sum of the lower 64 bits of both operands. The upper 64 bits are copied +/// from the upper 64 bits of the first source operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_add_sd(__m128d __a, + __m128d __b) { + __a[0] += __b[0]; + return __a; +} + +/// Adds two 128-bit vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDPD / ADDPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \returns A 128-bit vector of [2 x double] containing the sums of both +/// operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_add_pd(__m128d __a, + __m128d __b) { + return (__m128d)((__v2df)__a + (__v2df)__b); +} + +/// Subtracts the lower double-precision value of the second operand +/// from the lower double-precision value of the first operand and returns +/// the difference in the lower 64 bits of the result. The upper 64 bits of +/// the result are copied from the upper double-precision value of the first +/// operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSUBSD / SUBSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing the minuend. +/// \param __b +/// A 128-bit vector of [2 x double] containing the subtrahend. +/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the +/// difference of the lower 64 bits of both operands. The upper 64 bits are +/// copied from the upper 64 bits of the first source operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sub_sd(__m128d __a, + __m128d __b) { + __a[0] -= __b[0]; + return __a; +} + +/// Subtracts two 128-bit vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSUBPD / SUBPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing the minuend. +/// \param __b +/// A 128-bit vector of [2 x double] containing the subtrahend. +/// \returns A 128-bit vector of [2 x double] containing the differences between +/// both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sub_pd(__m128d __a, + __m128d __b) { + return (__m128d)((__v2df)__a - (__v2df)__b); +} + +/// Multiplies lower double-precision values in both operands and returns +/// the product in the lower 64 bits of the result. The upper 64 bits of the +/// result are copied from the upper double-precision value of the first +/// operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMULSD / MULSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the +/// product of the lower 64 bits of both operands. The upper 64 bits are +/// copied from the upper 64 bits of the first source operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_mul_sd(__m128d __a, + __m128d __b) { + __a[0] *= __b[0]; + return __a; +} + +/// Multiplies two 128-bit vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMULPD / MULPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the operands. +/// \returns A 128-bit vector of [2 x double] containing the products of both +/// operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_mul_pd(__m128d __a, + __m128d __b) { + return (__m128d)((__v2df)__a * (__v2df)__b); +} + +/// Divides the lower double-precision value of the first operand by the +/// lower double-precision value of the second operand and returns the +/// quotient in the lower 64 bits of the result. The upper 64 bits of the +/// result are copied from the upper double-precision value of the first +/// operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VDIVSD / DIVSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing the dividend. +/// \param __b +/// A 128-bit vector of [2 x double] containing divisor. +/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the +/// quotient of the lower 64 bits of both operands. The upper 64 bits are +/// copied from the upper 64 bits of the first source operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_div_sd(__m128d __a, + __m128d __b) { + __a[0] /= __b[0]; + return __a; +} + +/// Performs an element-by-element division of two 128-bit vectors of +/// [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VDIVPD / DIVPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing the dividend. +/// \param __b +/// A 128-bit vector of [2 x double] containing the divisor. +/// \returns A 128-bit vector of [2 x double] containing the quotients of both +/// operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_div_pd(__m128d __a, + __m128d __b) { + return (__m128d)((__v2df)__a / (__v2df)__b); +} + +/// Calculates the square root of the lower double-precision value of +/// the second operand and returns it in the lower 64 bits of the result. +/// The upper 64 bits of the result are copied from the upper +/// double-precision value of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSQRTSD / SQRTSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the operands. The +/// upper 64 bits of this operand are copied to the upper 64 bits of the +/// result. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the operands. The +/// square root is calculated using the lower 64 bits of this operand. +/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the +/// square root of the lower 64 bits of operand \a __b, and whose upper 64 +/// bits are copied from the upper 64 bits of operand \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sqrt_sd(__m128d __a, + __m128d __b) { + __m128d __c = __builtin_ia32_sqrtsd((__v2df)__b); + return __extension__(__m128d){__c[0], __a[1]}; +} + +/// Calculates the square root of the each of two values stored in a +/// 128-bit vector of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSQRTPD / SQRTPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector of [2 x double] containing the square roots of the +/// values in the operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sqrt_pd(__m128d __a) { + return __builtin_ia32_sqrtpd((__v2df)__a); +} + +/// Compares lower 64-bit double-precision values of both operands, and +/// returns the lesser of the pair of values in the lower 64-bits of the +/// result. The upper 64 bits of the result are copied from the upper +/// double-precision value of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMINSD / MINSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the operands. The +/// lower 64 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the operands. The +/// lower 64 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the +/// minimum value between both operands. The upper 64 bits are copied from +/// the upper 64 bits of the first source operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_min_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_minsd((__v2df)__a, (__v2df)__b); +} + +/// Performs element-by-element comparison of the two 128-bit vectors of +/// [2 x double] and returns the vector containing the lesser of each pair of +/// values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMINPD / MINPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the operands. +/// \returns A 128-bit vector of [2 x double] containing the minimum values +/// between both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_min_pd(__m128d __a, + __m128d __b) { + return __builtin_ia32_minpd((__v2df)__a, (__v2df)__b); +} + +/// Compares lower 64-bit double-precision values of both operands, and +/// returns the greater of the pair of values in the lower 64-bits of the +/// result. The upper 64 bits of the result are copied from the upper +/// double-precision value of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMAXSD / MAXSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the operands. The +/// lower 64 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the operands. The +/// lower 64 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the +/// maximum value between both operands. The upper 64 bits are copied from +/// the upper 64 bits of the first source operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_max_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_maxsd((__v2df)__a, (__v2df)__b); +} + +/// Performs element-by-element comparison of the two 128-bit vectors of +/// [2 x double] and returns the vector containing the greater of each pair +/// of values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMAXPD / MAXPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the operands. +/// \returns A 128-bit vector of [2 x double] containing the maximum values +/// between both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_max_pd(__m128d __a, + __m128d __b) { + return __builtin_ia32_maxpd((__v2df)__a, (__v2df)__b); +} + +/// Performs a bitwise AND of two 128-bit vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPAND / PAND </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \returns A 128-bit vector of [2 x double] containing the bitwise AND of the +/// values between both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_and_pd(__m128d __a, + __m128d __b) { + return (__m128d)((__v2du)__a & (__v2du)__b); +} + +/// Performs a bitwise AND of two 128-bit vectors of [2 x double], using +/// the one's complement of the values contained in the first source operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPANDN / PANDN </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing the left source operand. The +/// one's complement of this value is used in the bitwise AND. +/// \param __b +/// A 128-bit vector of [2 x double] containing the right source operand. +/// \returns A 128-bit vector of [2 x double] containing the bitwise AND of the +/// values in the second operand and the one's complement of the first +/// operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_andnot_pd(__m128d __a, + __m128d __b) { + return (__m128d)(~(__v2du)__a & (__v2du)__b); +} + +/// Performs a bitwise OR of two 128-bit vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPOR / POR </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \returns A 128-bit vector of [2 x double] containing the bitwise OR of the +/// values between both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_or_pd(__m128d __a, + __m128d __b) { + return (__m128d)((__v2du)__a | (__v2du)__b); +} + +/// Performs a bitwise XOR of two 128-bit vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPXOR / PXOR </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// \returns A 128-bit vector of [2 x double] containing the bitwise XOR of the +/// values between both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_xor_pd(__m128d __a, + __m128d __b) { + return (__m128d)((__v2du)__a ^ (__v2du)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] for equality. Each comparison yields 0x0 +/// for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPEQPD / CMPEQPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpeq_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpeqpd((__v2df)__a, (__v2df)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are less than those in the second operand. Each comparison +/// yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLTPD / CMPLTPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmplt_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpltpd((__v2df)__a, (__v2df)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are less than or equal to those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLEPD / CMPLEPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmple_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmplepd((__v2df)__a, (__v2df)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are greater than those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLTPD / CMPLTPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpgt_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpltpd((__v2df)__b, (__v2df)__a); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are greater than or equal to those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLEPD / CMPLEPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpge_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmplepd((__v2df)__b, (__v2df)__a); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are ordered with respect to those in the second operand. +/// +/// A pair of double-precision values are "ordered" with respect to each +/// other if neither value is a NaN. Each comparison yields 0x0 for false, +/// 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPORDPD / CMPORDPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpord_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpordpd((__v2df)__a, (__v2df)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are unordered with respect to those in the second operand. +/// +/// A pair of double-precision values are "unordered" with respect to each +/// other if one or both values are NaN. Each comparison yields 0x0 for +/// false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPUNORDPD / CMPUNORDPD </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpunord_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpunordpd((__v2df)__a, (__v2df)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are unequal to those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNEQPD / CMPNEQPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpneq_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpneqpd((__v2df)__a, (__v2df)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are not less than those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLTPD / CMPNLTPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnlt_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpnltpd((__v2df)__a, (__v2df)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are not less than or equal to those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLEPD / CMPNLEPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnle_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpnlepd((__v2df)__a, (__v2df)__b); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are not greater than those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLTPD / CMPNLTPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpngt_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpnltpd((__v2df)__b, (__v2df)__a); +} + +/// Compares each of the corresponding double-precision values of the +/// 128-bit vectors of [2 x double] to determine if the values in the first +/// operand are not greater than or equal to those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLEPD / CMPNLEPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \param __b +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector containing the comparison results. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnge_pd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpnlepd((__v2df)__b, (__v2df)__a); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] for equality. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPEQSD / CMPEQSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpeq_sd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpeqsd((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is less than the corresponding value in +/// the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLTSD / CMPLTSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmplt_sd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpltsd((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is less than or equal to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLESD / CMPLESD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmple_sd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmplesd((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is greater than the corresponding value +/// in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLTSD / CMPLTSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpgt_sd(__m128d __a, + __m128d __b) { + __m128d __c = __builtin_ia32_cmpltsd((__v2df)__b, (__v2df)__a); + return __extension__(__m128d){__c[0], __a[1]}; +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is greater than or equal to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLESD / CMPLESD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpge_sd(__m128d __a, + __m128d __b) { + __m128d __c = __builtin_ia32_cmplesd((__v2df)__b, (__v2df)__a); + return __extension__(__m128d){__c[0], __a[1]}; +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is "ordered" with respect to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. A pair +/// of double-precision values are "ordered" with respect to each other if +/// neither value is a NaN. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPORDSD / CMPORDSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpord_sd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpordsd((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is "unordered" with respect to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. A pair +/// of double-precision values are "unordered" with respect to each other if +/// one or both values are NaN. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPUNORDSD / CMPUNORDSD </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpunord_sd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpunordsd((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is unequal to the corresponding value in +/// the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNEQSD / CMPNEQSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpneq_sd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpneqsd((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is not less than the corresponding +/// value in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLTSD / CMPNLTSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnlt_sd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpnltsd((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is not less than or equal to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLESD / CMPNLESD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnle_sd(__m128d __a, + __m128d __b) { + return (__m128d)__builtin_ia32_cmpnlesd((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is not greater than the corresponding +/// value in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLTSD / CMPNLTSD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpngt_sd(__m128d __a, + __m128d __b) { + __m128d __c = __builtin_ia32_cmpnltsd((__v2df)__b, (__v2df)__a); + return __extension__(__m128d){__c[0], __a[1]}; +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is not greater than or equal to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLESD / CMPNLESD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns A 128-bit vector. The lower 64 bits contains the comparison +/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnge_sd(__m128d __a, + __m128d __b) { + __m128d __c = __builtin_ia32_cmpnlesd((__v2df)__b, (__v2df)__a); + return __extension__(__m128d){__c[0], __a[1]}; +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] for equality. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two +/// lower double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_comieq_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_comisdeq((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is less than the corresponding value in +/// the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two +/// lower double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_comilt_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_comisdlt((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is less than or equal to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two +/// lower double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_comile_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_comisdle((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is greater than the corresponding value +/// in the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two +/// lower double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_comigt_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_comisdgt((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is greater than or equal to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two +/// lower double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_comige_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_comisdge((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is unequal to the corresponding value in +/// the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two +/// lower double-precision values is NaN, 1 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 1 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_comineq_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_comisdneq((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] for equality. The +/// comparison yields 0 for false, 1 for true. +/// +/// If either of the two lower double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomieq_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_ucomisdeq((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is less than the corresponding value in +/// the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two lower +/// double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomilt_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_ucomisdlt((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is less than or equal to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two lower +/// double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomile_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_ucomisdle((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is greater than the corresponding value +/// in the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two lower +/// double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomigt_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_ucomisdgt((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is greater than or equal to the +/// corresponding value in the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two +/// lower double-precision values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison results. If either of the two +/// lower double-precision values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomige_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_ucomisdge((__v2df)__a, (__v2df)__b); +} + +/// Compares the lower double-precision floating-point values in each of +/// the two 128-bit floating-point vectors of [2 x double] to determine if +/// the value in the first parameter is unequal to the corresponding value in +/// the second parameter. +/// +/// The comparison yields 0 for false, 1 for true. If either of the two lower +/// double-precision values is NaN, 1 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __b. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision value is +/// compared to the lower double-precision value of \a __a. +/// \returns An integer containing the comparison result. If either of the two +/// lower double-precision values is NaN, 1 is returned. +static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomineq_sd(__m128d __a, + __m128d __b) { + return __builtin_ia32_ucomisdneq((__v2df)__a, (__v2df)__b); +} + +/// Converts the two double-precision floating-point elements of a +/// 128-bit vector of [2 x double] into two single-precision floating-point +/// values, returned in the lower 64 bits of a 128-bit vector of [4 x float]. +/// The upper 64 bits of the result vector are set to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPD2PS / CVTPD2PS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector of [4 x float] whose lower 64 bits contain the +/// converted values. The upper 64 bits are set to zero. +static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtpd_ps(__m128d __a) { + return __builtin_ia32_cvtpd2ps((__v2df)__a); +} + +/// Converts the lower two single-precision floating-point elements of a +/// 128-bit vector of [4 x float] into two double-precision floating-point +/// values, returned in a 128-bit vector of [2 x double]. The upper two +/// elements of the input vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPS2PD / CVTPS2PD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower two single-precision +/// floating-point elements are converted to double-precision values. The +/// upper two elements are unused. +/// \returns A 128-bit vector of [2 x double] containing the converted values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtps_pd(__m128 __a) { + return (__m128d) __builtin_convertvector( + __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 1), __v2df); +} + +/// Converts the lower two integer elements of a 128-bit vector of +/// [4 x i32] into two double-precision floating-point values, returned in a +/// 128-bit vector of [2 x double]. +/// +/// The upper two elements of the input vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTDQ2PD / CVTDQ2PD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector of [4 x i32]. The lower two integer elements are +/// converted to double-precision values. +/// +/// The upper two elements are unused. +/// \returns A 128-bit vector of [2 x double] containing the converted values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtepi32_pd(__m128i __a) { + return (__m128d) __builtin_convertvector( + __builtin_shufflevector((__v4si)__a, (__v4si)__a, 0, 1), __v2df); +} + +/// Converts the two double-precision floating-point elements of a +/// 128-bit vector of [2 x double] into two signed 32-bit integer values, +/// returned in the lower 64 bits of a 128-bit vector of [4 x i32]. The upper +/// 64 bits of the result vector are set to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPD2DQ / CVTPD2DQ </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector of [4 x i32] whose lower 64 bits contain the +/// converted values. The upper 64 bits are set to zero. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtpd_epi32(__m128d __a) { + return __builtin_ia32_cvtpd2dq((__v2df)__a); +} + +/// Converts the low-order element of a 128-bit vector of [2 x double] +/// into a 32-bit signed integer value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSD2SI / CVTSD2SI </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower 64 bits are used in the +/// conversion. +/// \returns A 32-bit signed integer containing the converted value. +static __inline__ int __DEFAULT_FN_ATTRS _mm_cvtsd_si32(__m128d __a) { + return __builtin_ia32_cvtsd2si((__v2df)__a); +} + +/// Converts the lower double-precision floating-point element of a +/// 128-bit vector of [2 x double], in the second parameter, into a +/// single-precision floating-point value, returned in the lower 32 bits of a +/// 128-bit vector of [4 x float]. The upper 96 bits of the result vector are +/// copied from the upper 96 bits of the first parameter. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSD2SS / CVTSD2SS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The upper 96 bits of this parameter are +/// copied to the upper 96 bits of the result. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower double-precision +/// floating-point element is used in the conversion. +/// \returns A 128-bit vector of [4 x float]. The lower 32 bits contain the +/// converted value from the second parameter. The upper 96 bits are copied +/// from the upper 96 bits of the first parameter. +static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtsd_ss(__m128 __a, + __m128d __b) { + return (__m128)__builtin_ia32_cvtsd2ss((__v4sf)__a, (__v2df)__b); +} + +/// Converts a 32-bit signed integer value, in the second parameter, into +/// a double-precision floating-point value, returned in the lower 64 bits of +/// a 128-bit vector of [2 x double]. The upper 64 bits of the result vector +/// are copied from the upper 64 bits of the first parameter. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSI2SD / CVTSI2SD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The upper 64 bits of this parameter are +/// copied to the upper 64 bits of the result. +/// \param __b +/// A 32-bit signed integer containing the value to be converted. +/// \returns A 128-bit vector of [2 x double]. The lower 64 bits contain the +/// converted value from the second parameter. The upper 64 bits are copied +/// from the upper 64 bits of the first parameter. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtsi32_sd(__m128d __a, + int __b) { + __a[0] = __b; + return __a; +} + +/// Converts the lower single-precision floating-point element of a +/// 128-bit vector of [4 x float], in the second parameter, into a +/// double-precision floating-point value, returned in the lower 64 bits of +/// a 128-bit vector of [2 x double]. The upper 64 bits of the result vector +/// are copied from the upper 64 bits of the first parameter. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSS2SD / CVTSS2SD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The upper 64 bits of this parameter are +/// copied to the upper 64 bits of the result. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower single-precision +/// floating-point element is used in the conversion. +/// \returns A 128-bit vector of [2 x double]. The lower 64 bits contain the +/// converted value from the second parameter. The upper 64 bits are copied +/// from the upper 64 bits of the first parameter. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtss_sd(__m128d __a, + __m128 __b) { + __a[0] = __b[0]; + return __a; +} + +/// Converts the two double-precision floating-point elements of a +/// 128-bit vector of [2 x double] into two signed 32-bit integer values, +/// returned in the lower 64 bits of a 128-bit vector of [4 x i32]. +/// +/// If the result of either conversion is inexact, the result is truncated +/// (rounded towards zero) regardless of the current MXCSR setting. The upper +/// 64 bits of the result vector are set to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTPD2DQ / CVTTPD2DQ </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector of [4 x i32] whose lower 64 bits contain the +/// converted values. The upper 64 bits are set to zero. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvttpd_epi32(__m128d __a) { + return (__m128i)__builtin_ia32_cvttpd2dq((__v2df)__a); +} + +/// Converts the low-order element of a [2 x double] vector into a 32-bit +/// signed integer value, truncating the result when it is inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTSD2SI / CVTTSD2SI </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower 64 bits are used in the +/// conversion. +/// \returns A 32-bit signed integer containing the converted value. +static __inline__ int __DEFAULT_FN_ATTRS _mm_cvttsd_si32(__m128d __a) { + return __builtin_ia32_cvttsd2si((__v2df)__a); +} + +/// Converts the two double-precision floating-point elements of a +/// 128-bit vector of [2 x double] into two signed 32-bit integer values, +/// returned in a 64-bit vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPD2PI </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 64-bit vector of [2 x i32] containing the converted values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_cvtpd_pi32(__m128d __a) { + return (__m64)__builtin_ia32_cvtpd2pi((__v2df)__a); +} + +/// Converts the two double-precision floating-point elements of a +/// 128-bit vector of [2 x double] into two signed 32-bit integer values, +/// returned in a 64-bit vector of [2 x i32]. +/// +/// If the result of either conversion is inexact, the result is truncated +/// (rounded towards zero) regardless of the current MXCSR setting. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTTPD2PI </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. +/// \returns A 64-bit vector of [2 x i32] containing the converted values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_cvttpd_pi32(__m128d __a) { + return (__m64)__builtin_ia32_cvttpd2pi((__v2df)__a); +} + +/// Converts the two signed 32-bit integer elements of a 64-bit vector of +/// [2 x i32] into two double-precision floating-point values, returned in a +/// 128-bit vector of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPI2PD </c> instruction. +/// +/// \param __a +/// A 64-bit vector of [2 x i32]. +/// \returns A 128-bit vector of [2 x double] containing the converted values. +static __inline__ __m128d __DEFAULT_FN_ATTRS_MMX _mm_cvtpi32_pd(__m64 __a) { + return __builtin_ia32_cvtpi2pd((__v2si)__a); +} + +/// Returns the low-order element of a 128-bit vector of [2 x double] as +/// a double-precision floating-point value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower 64 bits are returned. +/// \returns A double-precision floating-point value copied from the lower 64 +/// bits of \a __a. +static __inline__ double __DEFAULT_FN_ATTRS _mm_cvtsd_f64(__m128d __a) { + return __a[0]; +} + +/// Loads a 128-bit floating-point vector of [2 x double] from an aligned +/// memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPD / MOVAPD </c> instruction. +/// +/// \param __dp +/// A pointer to a 128-bit memory location. The address of the memory +/// location has to be 16-byte aligned. +/// \returns A 128-bit vector of [2 x double] containing the loaded values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_load_pd(double const *__dp) { + return *(const __m128d *)__dp; +} + +/// Loads a double-precision floating-point value from a specified memory +/// location and duplicates it to both vector elements of a 128-bit vector of +/// [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDDUP / MOVDDUP </c> instruction. +/// +/// \param __dp +/// A pointer to a memory location containing a double-precision value. +/// \returns A 128-bit vector of [2 x double] containing the loaded and +/// duplicated values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_load1_pd(double const *__dp) { + struct __mm_load1_pd_struct { + double __u; + } __attribute__((__packed__, __may_alias__)); + double __u = ((const struct __mm_load1_pd_struct *)__dp)->__u; + return __extension__(__m128d){__u, __u}; +} + +#define _mm_load_pd1(dp) _mm_load1_pd(dp) + +/// Loads two double-precision values, in reverse order, from an aligned +/// memory location into a 128-bit vector of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPD / MOVAPD </c> instruction + +/// needed shuffling instructions. In AVX mode, the shuffling may be combined +/// with the \c VMOVAPD, resulting in only a \c VPERMILPD instruction. +/// +/// \param __dp +/// A 16-byte aligned pointer to an array of double-precision values to be +/// loaded in reverse order. +/// \returns A 128-bit vector of [2 x double] containing the reversed loaded +/// values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_loadr_pd(double const *__dp) { + __m128d __u = *(const __m128d *)__dp; + return __builtin_shufflevector((__v2df)__u, (__v2df)__u, 1, 0); +} + +/// Loads a 128-bit floating-point vector of [2 x double] from an +/// unaligned memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPD / MOVUPD </c> instruction. +/// +/// \param __dp +/// A pointer to a 128-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns A 128-bit vector of [2 x double] containing the loaded values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_loadu_pd(double const *__dp) { + struct __loadu_pd { + __m128d_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_pd *)__dp)->__v; +} + +/// Loads a 64-bit integer value to the low element of a 128-bit integer +/// vector and clears the upper element. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. +/// +/// \param __a +/// A pointer to a 64-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns A 128-bit vector of [2 x i64] containing the loaded value. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_loadu_si64(void const *__a) { + struct __loadu_si64 { + long long __v; + } __attribute__((__packed__, __may_alias__)); + long long __u = ((const struct __loadu_si64 *)__a)->__v; + return __extension__(__m128i)(__v2di){__u, 0LL}; +} + +/// Loads a 32-bit integer value to the low element of a 128-bit integer +/// vector and clears the upper element. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. +/// +/// \param __a +/// A pointer to a 32-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns A 128-bit vector of [4 x i32] containing the loaded value. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_loadu_si32(void const *__a) { + struct __loadu_si32 { + int __v; + } __attribute__((__packed__, __may_alias__)); + int __u = ((const struct __loadu_si32 *)__a)->__v; + return __extension__(__m128i)(__v4si){__u, 0, 0, 0}; +} + +/// Loads a 16-bit integer value to the low element of a 128-bit integer +/// vector and clears the upper element. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic does not correspond to a specific instruction. +/// +/// \param __a +/// A pointer to a 16-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns A 128-bit vector of [8 x i16] containing the loaded value. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_loadu_si16(void const *__a) { + struct __loadu_si16 { + short __v; + } __attribute__((__packed__, __may_alias__)); + short __u = ((const struct __loadu_si16 *)__a)->__v; + return __extension__(__m128i)(__v8hi){__u, 0, 0, 0, 0, 0, 0, 0}; +} + +/// Loads a 64-bit double-precision value to the low element of a +/// 128-bit integer vector and clears the upper element. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSD / MOVSD </c> instruction. +/// +/// \param __dp +/// A pointer to a memory location containing a double-precision value. +/// The address of the memory location does not have to be aligned. +/// \returns A 128-bit vector of [2 x double] containing the loaded value. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_load_sd(double const *__dp) { + struct __mm_load_sd_struct { + double __u; + } __attribute__((__packed__, __may_alias__)); + double __u = ((const struct __mm_load_sd_struct *)__dp)->__u; + return __extension__(__m128d){__u, 0}; +} + +/// Loads a double-precision value into the high-order bits of a 128-bit +/// vector of [2 x double]. The low-order bits are copied from the low-order +/// bits of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVHPD / MOVHPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. \n +/// Bits [63:0] are written to bits [63:0] of the result. +/// \param __dp +/// A pointer to a 64-bit memory location containing a double-precision +/// floating-point value that is loaded. The loaded value is written to bits +/// [127:64] of the result. The address of the memory location does not have +/// to be aligned. +/// \returns A 128-bit vector of [2 x double] containing the moved values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_loadh_pd(__m128d __a, + double const *__dp) { + struct __mm_loadh_pd_struct { + double __u; + } __attribute__((__packed__, __may_alias__)); + double __u = ((const struct __mm_loadh_pd_struct *)__dp)->__u; + return __extension__(__m128d){__a[0], __u}; +} + +/// Loads a double-precision value into the low-order bits of a 128-bit +/// vector of [2 x double]. The high-order bits are copied from the +/// high-order bits of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVLPD / MOVLPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. \n +/// Bits [127:64] are written to bits [127:64] of the result. +/// \param __dp +/// A pointer to a 64-bit memory location containing a double-precision +/// floating-point value that is loaded. The loaded value is written to bits +/// [63:0] of the result. The address of the memory location does not have to +/// be aligned. +/// \returns A 128-bit vector of [2 x double] containing the moved values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_loadl_pd(__m128d __a, + double const *__dp) { + struct __mm_loadl_pd_struct { + double __u; + } __attribute__((__packed__, __may_alias__)); + double __u = ((const struct __mm_loadl_pd_struct *)__dp)->__u; + return __extension__(__m128d){__u, __a[1]}; +} + +/// Constructs a 128-bit floating-point vector of [2 x double] with +/// unspecified content. This could be used as an argument to another +/// intrinsic function where the argument is required but the value is not +/// actually used. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \returns A 128-bit floating-point vector of [2 x double] with unspecified +/// content. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_undefined_pd(void) { + return (__m128d)__builtin_ia32_undef128(); +} + +/// Constructs a 128-bit floating-point vector of [2 x double]. The lower +/// 64 bits of the vector are initialized with the specified double-precision +/// floating-point value. The upper 64 bits are set to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. +/// +/// \param __w +/// A double-precision floating-point value used to initialize the lower 64 +/// bits of the result. +/// \returns An initialized 128-bit floating-point vector of [2 x double]. The +/// lower 64 bits contain the value of the parameter. The upper 64 bits are +/// set to zero. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_sd(double __w) { + return __extension__(__m128d){__w, 0}; +} + +/// Constructs a 128-bit floating-point vector of [2 x double], with each +/// of the two double-precision floating-point vector elements set to the +/// specified double-precision floating-point value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDDUP / MOVLHPS </c> instruction. +/// +/// \param __w +/// A double-precision floating-point value used to initialize each vector +/// element of the result. +/// \returns An initialized 128-bit floating-point vector of [2 x double]. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set1_pd(double __w) { + return __extension__(__m128d){__w, __w}; +} + +/// Constructs a 128-bit floating-point vector of [2 x double], with each +/// of the two double-precision floating-point vector elements set to the +/// specified double-precision floating-point value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDDUP / MOVLHPS </c> instruction. +/// +/// \param __w +/// A double-precision floating-point value used to initialize each vector +/// element of the result. +/// \returns An initialized 128-bit floating-point vector of [2 x double]. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_pd1(double __w) { + return _mm_set1_pd(__w); +} + +/// Constructs a 128-bit floating-point vector of [2 x double] +/// initialized with the specified double-precision floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPD / UNPCKLPD </c> instruction. +/// +/// \param __w +/// A double-precision floating-point value used to initialize the upper 64 +/// bits of the result. +/// \param __x +/// A double-precision floating-point value used to initialize the lower 64 +/// bits of the result. +/// \returns An initialized 128-bit floating-point vector of [2 x double]. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_pd(double __w, + double __x) { + return __extension__(__m128d){__x, __w}; +} + +/// Constructs a 128-bit floating-point vector of [2 x double], +/// initialized in reverse order with the specified double-precision +/// floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPD / UNPCKLPD </c> instruction. +/// +/// \param __w +/// A double-precision floating-point value used to initialize the lower 64 +/// bits of the result. +/// \param __x +/// A double-precision floating-point value used to initialize the upper 64 +/// bits of the result. +/// \returns An initialized 128-bit floating-point vector of [2 x double]. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_setr_pd(double __w, + double __x) { + return __extension__(__m128d){__w, __x}; +} + +/// Constructs a 128-bit floating-point vector of [2 x double] +/// initialized to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPS / XORPS </c> instruction. +/// +/// \returns An initialized 128-bit floating-point vector of [2 x double] with +/// all elements set to zero. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_setzero_pd(void) { + return __extension__(__m128d){0.0, 0.0}; +} + +/// Constructs a 128-bit floating-point vector of [2 x double]. The lower +/// 64 bits are set to the lower 64 bits of the second parameter. The upper +/// 64 bits are set to the upper 64 bits of the first parameter. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBLENDPD / BLENDPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The upper 64 bits are written to the +/// upper 64 bits of the result. +/// \param __b +/// A 128-bit vector of [2 x double]. The lower 64 bits are written to the +/// lower 64 bits of the result. +/// \returns A 128-bit vector of [2 x double] containing the moved values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_move_sd(__m128d __a, + __m128d __b) { + __a[0] = __b[0]; + return __a; +} + +/// Stores the lower 64 bits of a 128-bit vector of [2 x double] to a +/// memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSD / MOVSD </c> instruction. +/// +/// \param __dp +/// A pointer to a 64-bit memory location. +/// \param __a +/// A 128-bit vector of [2 x double] containing the value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_store_sd(double *__dp, + __m128d __a) { + struct __mm_store_sd_struct { + double __u; + } __attribute__((__packed__, __may_alias__)); + ((struct __mm_store_sd_struct *)__dp)->__u = __a[0]; +} + +/// Moves packed double-precision values from a 128-bit vector of +/// [2 x double] to a memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c>VMOVAPD / MOVAPS</c> instruction. +/// +/// \param __dp +/// A pointer to an aligned memory location that can store two +/// double-precision values. +/// \param __a +/// A packed 128-bit vector of [2 x double] containing the values to be +/// moved. +static __inline__ void __DEFAULT_FN_ATTRS _mm_store_pd(double *__dp, + __m128d __a) { + *(__m128d *)__dp = __a; +} + +/// Moves the lower 64 bits of a 128-bit vector of [2 x double] twice to +/// the upper and lower 64 bits of a memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the +/// <c> VMOVDDUP + VMOVAPD / MOVLHPS + MOVAPS </c> instruction. +/// +/// \param __dp +/// A pointer to a memory location that can store two double-precision +/// values. +/// \param __a +/// A 128-bit vector of [2 x double] whose lower 64 bits are copied to each +/// of the values in \a __dp. +static __inline__ void __DEFAULT_FN_ATTRS _mm_store1_pd(double *__dp, + __m128d __a) { + __a = __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 0); + _mm_store_pd(__dp, __a); +} + +/// Moves the lower 64 bits of a 128-bit vector of [2 x double] twice to +/// the upper and lower 64 bits of a memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the +/// <c> VMOVDDUP + VMOVAPD / MOVLHPS + MOVAPS </c> instruction. +/// +/// \param __dp +/// A pointer to a memory location that can store two double-precision +/// values. +/// \param __a +/// A 128-bit vector of [2 x double] whose lower 64 bits are copied to each +/// of the values in \a __dp. +static __inline__ void __DEFAULT_FN_ATTRS _mm_store_pd1(double *__dp, + __m128d __a) { + _mm_store1_pd(__dp, __a); +} + +/// Stores a 128-bit vector of [2 x double] into an unaligned memory +/// location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPD / MOVUPD </c> instruction. +/// +/// \param __dp +/// A pointer to a 128-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \param __a +/// A 128-bit vector of [2 x double] containing the values to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_pd(double *__dp, + __m128d __a) { + struct __storeu_pd { + __m128d_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_pd *)__dp)->__v = __a; +} + +/// Stores two double-precision values, in reverse order, from a 128-bit +/// vector of [2 x double] to a 16-byte aligned memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to a shuffling instruction followed by a +/// <c> VMOVAPD / MOVAPD </c> instruction. +/// +/// \param __dp +/// A pointer to a 16-byte aligned memory location that can store two +/// double-precision values. +/// \param __a +/// A 128-bit vector of [2 x double] containing the values to be reversed and +/// stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storer_pd(double *__dp, + __m128d __a) { + __a = __builtin_shufflevector((__v2df)__a, (__v2df)__a, 1, 0); + *(__m128d *)__dp = __a; +} + +/// Stores the upper 64 bits of a 128-bit vector of [2 x double] to a +/// memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVHPD / MOVHPD </c> instruction. +/// +/// \param __dp +/// A pointer to a 64-bit memory location. +/// \param __a +/// A 128-bit vector of [2 x double] containing the value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storeh_pd(double *__dp, + __m128d __a) { + struct __mm_storeh_pd_struct { + double __u; + } __attribute__((__packed__, __may_alias__)); + ((struct __mm_storeh_pd_struct *)__dp)->__u = __a[1]; +} + +/// Stores the lower 64 bits of a 128-bit vector of [2 x double] to a +/// memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVLPD / MOVLPD </c> instruction. +/// +/// \param __dp +/// A pointer to a 64-bit memory location. +/// \param __a +/// A 128-bit vector of [2 x double] containing the value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storel_pd(double *__dp, + __m128d __a) { + struct __mm_storeh_pd_struct { + double __u; + } __attribute__((__packed__, __may_alias__)); + ((struct __mm_storeh_pd_struct *)__dp)->__u = __a[0]; +} + +/// Adds the corresponding elements of two 128-bit vectors of [16 x i8], +/// saving the lower 8 bits of each sum in the corresponding element of a +/// 128-bit result vector of [16 x i8]. +/// +/// The integer elements of both parameters can be either signed or unsigned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPADDB / PADDB </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [16 x i8]. +/// \param __b +/// A 128-bit vector of [16 x i8]. +/// \returns A 128-bit vector of [16 x i8] containing the sums of both +/// parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi8(__m128i __a, + __m128i __b) { + return (__m128i)((__v16qu)__a + (__v16qu)__b); +} + +/// Adds the corresponding elements of two 128-bit vectors of [8 x i16], +/// saving the lower 16 bits of each sum in the corresponding element of a +/// 128-bit result vector of [8 x i16]. +/// +/// The integer elements of both parameters can be either signed or unsigned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPADDW / PADDW </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16]. +/// \param __b +/// A 128-bit vector of [8 x i16]. +/// \returns A 128-bit vector of [8 x i16] containing the sums of both +/// parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi16(__m128i __a, + __m128i __b) { + return (__m128i)((__v8hu)__a + (__v8hu)__b); +} + +/// Adds the corresponding elements of two 128-bit vectors of [4 x i32], +/// saving the lower 32 bits of each sum in the corresponding element of a +/// 128-bit result vector of [4 x i32]. +/// +/// The integer elements of both parameters can be either signed or unsigned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPADDD / PADDD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x i32]. +/// \param __b +/// A 128-bit vector of [4 x i32]. +/// \returns A 128-bit vector of [4 x i32] containing the sums of both +/// parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi32(__m128i __a, + __m128i __b) { + return (__m128i)((__v4su)__a + (__v4su)__b); +} + +/// Adds two signed or unsigned 64-bit integer values, returning the +/// lower 64 bits of the sum. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PADDQ </c> instruction. +/// +/// \param __a +/// A 64-bit integer. +/// \param __b +/// A 64-bit integer. +/// \returns A 64-bit integer containing the sum of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_add_si64(__m64 __a, + __m64 __b) { + return (__m64)__builtin_ia32_paddq((__v1di)__a, (__v1di)__b); +} + +/// Adds the corresponding elements of two 128-bit vectors of [2 x i64], +/// saving the lower 64 bits of each sum in the corresponding element of a +/// 128-bit result vector of [2 x i64]. +/// +/// The integer elements of both parameters can be either signed or unsigned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPADDQ / PADDQ </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x i64]. +/// \param __b +/// A 128-bit vector of [2 x i64]. +/// \returns A 128-bit vector of [2 x i64] containing the sums of both +/// parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi64(__m128i __a, + __m128i __b) { + return (__m128i)((__v2du)__a + (__v2du)__b); +} + +/// Adds, with saturation, the corresponding elements of two 128-bit +/// signed [16 x i8] vectors, saving each sum in the corresponding element of +/// a 128-bit result vector of [16 x i8]. Positive sums greater than 0x7F are +/// saturated to 0x7F. Negative sums less than 0x80 are saturated to 0x80. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPADDSB / PADDSB </c> instruction. +/// +/// \param __a +/// A 128-bit signed [16 x i8] vector. +/// \param __b +/// A 128-bit signed [16 x i8] vector. +/// \returns A 128-bit signed [16 x i8] vector containing the saturated sums of +/// both parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_adds_epi8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_add_sat((__v16qs)__a, (__v16qs)__b); +} + +/// Adds, with saturation, the corresponding elements of two 128-bit +/// signed [8 x i16] vectors, saving each sum in the corresponding element of +/// a 128-bit result vector of [8 x i16]. Positive sums greater than 0x7FFF +/// are saturated to 0x7FFF. Negative sums less than 0x8000 are saturated to +/// 0x8000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPADDSW / PADDSW </c> instruction. +/// +/// \param __a +/// A 128-bit signed [8 x i16] vector. +/// \param __b +/// A 128-bit signed [8 x i16] vector. +/// \returns A 128-bit signed [8 x i16] vector containing the saturated sums of +/// both parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_adds_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_add_sat((__v8hi)__a, (__v8hi)__b); +} + +/// Adds, with saturation, the corresponding elements of two 128-bit +/// unsigned [16 x i8] vectors, saving each sum in the corresponding element +/// of a 128-bit result vector of [16 x i8]. Positive sums greater than 0xFF +/// are saturated to 0xFF. Negative sums are saturated to 0x00. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPADDUSB / PADDUSB </c> instruction. +/// +/// \param __a +/// A 128-bit unsigned [16 x i8] vector. +/// \param __b +/// A 128-bit unsigned [16 x i8] vector. +/// \returns A 128-bit unsigned [16 x i8] vector containing the saturated sums +/// of both parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_adds_epu8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_add_sat((__v16qu)__a, (__v16qu)__b); +} + +/// Adds, with saturation, the corresponding elements of two 128-bit +/// unsigned [8 x i16] vectors, saving each sum in the corresponding element +/// of a 128-bit result vector of [8 x i16]. Positive sums greater than +/// 0xFFFF are saturated to 0xFFFF. Negative sums are saturated to 0x0000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPADDUSB / PADDUSB </c> instruction. +/// +/// \param __a +/// A 128-bit unsigned [8 x i16] vector. +/// \param __b +/// A 128-bit unsigned [8 x i16] vector. +/// \returns A 128-bit unsigned [8 x i16] vector containing the saturated sums +/// of both parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_adds_epu16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_add_sat((__v8hu)__a, (__v8hu)__b); +} + +/// Computes the rounded averages of corresponding elements of two +/// 128-bit unsigned [16 x i8] vectors, saving each result in the +/// corresponding element of a 128-bit result vector of [16 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPAVGB / PAVGB </c> instruction. +/// +/// \param __a +/// A 128-bit unsigned [16 x i8] vector. +/// \param __b +/// A 128-bit unsigned [16 x i8] vector. +/// \returns A 128-bit unsigned [16 x i8] vector containing the rounded +/// averages of both parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_avg_epu8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_ia32_pavgb128((__v16qi)__a, (__v16qi)__b); +} + +/// Computes the rounded averages of corresponding elements of two +/// 128-bit unsigned [8 x i16] vectors, saving each result in the +/// corresponding element of a 128-bit result vector of [8 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPAVGW / PAVGW </c> instruction. +/// +/// \param __a +/// A 128-bit unsigned [8 x i16] vector. +/// \param __b +/// A 128-bit unsigned [8 x i16] vector. +/// \returns A 128-bit unsigned [8 x i16] vector containing the rounded +/// averages of both parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_avg_epu16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_ia32_pavgw128((__v8hi)__a, (__v8hi)__b); +} + +/// Multiplies the corresponding elements of two 128-bit signed [8 x i16] +/// vectors, producing eight intermediate 32-bit signed integer products, and +/// adds the consecutive pairs of 32-bit products to form a 128-bit signed +/// [4 x i32] vector. +/// +/// For example, bits [15:0] of both parameters are multiplied producing a +/// 32-bit product, bits [31:16] of both parameters are multiplied producing +/// a 32-bit product, and the sum of those two products becomes bits [31:0] +/// of the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMADDWD / PMADDWD </c> instruction. +/// +/// \param __a +/// A 128-bit signed [8 x i16] vector. +/// \param __b +/// A 128-bit signed [8 x i16] vector. +/// \returns A 128-bit signed [4 x i32] vector containing the sums of products +/// of both parameters. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_madd_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_ia32_pmaddwd128((__v8hi)__a, (__v8hi)__b); +} + +/// Compares corresponding elements of two 128-bit signed [8 x i16] +/// vectors, saving the greater value from each comparison in the +/// corresponding element of a 128-bit result vector of [8 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMAXSW / PMAXSW </c> instruction. +/// +/// \param __a +/// A 128-bit signed [8 x i16] vector. +/// \param __b +/// A 128-bit signed [8 x i16] vector. +/// \returns A 128-bit signed [8 x i16] vector containing the greater value of +/// each comparison. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_max((__v8hi)__a, (__v8hi)__b); +} + +/// Compares corresponding elements of two 128-bit unsigned [16 x i8] +/// vectors, saving the greater value from each comparison in the +/// corresponding element of a 128-bit result vector of [16 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMAXUB / PMAXUB </c> instruction. +/// +/// \param __a +/// A 128-bit unsigned [16 x i8] vector. +/// \param __b +/// A 128-bit unsigned [16 x i8] vector. +/// \returns A 128-bit unsigned [16 x i8] vector containing the greater value of +/// each comparison. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_max((__v16qu)__a, (__v16qu)__b); +} + +/// Compares corresponding elements of two 128-bit signed [8 x i16] +/// vectors, saving the smaller value from each comparison in the +/// corresponding element of a 128-bit result vector of [8 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMINSW / PMINSW </c> instruction. +/// +/// \param __a +/// A 128-bit signed [8 x i16] vector. +/// \param __b +/// A 128-bit signed [8 x i16] vector. +/// \returns A 128-bit signed [8 x i16] vector containing the smaller value of +/// each comparison. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_min((__v8hi)__a, (__v8hi)__b); +} + +/// Compares corresponding elements of two 128-bit unsigned [16 x i8] +/// vectors, saving the smaller value from each comparison in the +/// corresponding element of a 128-bit result vector of [16 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMINUB / PMINUB </c> instruction. +/// +/// \param __a +/// A 128-bit unsigned [16 x i8] vector. +/// \param __b +/// A 128-bit unsigned [16 x i8] vector. +/// \returns A 128-bit unsigned [16 x i8] vector containing the smaller value of +/// each comparison. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_min((__v16qu)__a, (__v16qu)__b); +} + +/// Multiplies the corresponding elements of two signed [8 x i16] +/// vectors, saving the upper 16 bits of each 32-bit product in the +/// corresponding element of a 128-bit signed [8 x i16] result vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMULHW / PMULHW </c> instruction. +/// +/// \param __a +/// A 128-bit signed [8 x i16] vector. +/// \param __b +/// A 128-bit signed [8 x i16] vector. +/// \returns A 128-bit signed [8 x i16] vector containing the upper 16 bits of +/// each of the eight 32-bit products. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mulhi_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_ia32_pmulhw128((__v8hi)__a, (__v8hi)__b); +} + +/// Multiplies the corresponding elements of two unsigned [8 x i16] +/// vectors, saving the upper 16 bits of each 32-bit product in the +/// corresponding element of a 128-bit unsigned [8 x i16] result vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMULHUW / PMULHUW </c> instruction. +/// +/// \param __a +/// A 128-bit unsigned [8 x i16] vector. +/// \param __b +/// A 128-bit unsigned [8 x i16] vector. +/// \returns A 128-bit unsigned [8 x i16] vector containing the upper 16 bits +/// of each of the eight 32-bit products. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mulhi_epu16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_ia32_pmulhuw128((__v8hi)__a, (__v8hi)__b); +} + +/// Multiplies the corresponding elements of two signed [8 x i16] +/// vectors, saving the lower 16 bits of each 32-bit product in the +/// corresponding element of a 128-bit signed [8 x i16] result vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMULLW / PMULLW </c> instruction. +/// +/// \param __a +/// A 128-bit signed [8 x i16] vector. +/// \param __b +/// A 128-bit signed [8 x i16] vector. +/// \returns A 128-bit signed [8 x i16] vector containing the lower 16 bits of +/// each of the eight 32-bit products. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mullo_epi16(__m128i __a, + __m128i __b) { + return (__m128i)((__v8hu)__a * (__v8hu)__b); +} + +/// Multiplies 32-bit unsigned integer values contained in the lower bits +/// of the two 64-bit integer vectors and returns the 64-bit unsigned +/// product. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMULUDQ </c> instruction. +/// +/// \param __a +/// A 64-bit integer containing one of the source operands. +/// \param __b +/// A 64-bit integer containing one of the source operands. +/// \returns A 64-bit integer vector containing the product of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_mul_su32(__m64 __a, + __m64 __b) { + return __builtin_ia32_pmuludq((__v2si)__a, (__v2si)__b); +} + +/// Multiplies 32-bit unsigned integer values contained in the lower +/// bits of the corresponding elements of two [2 x i64] vectors, and returns +/// the 64-bit products in the corresponding elements of a [2 x i64] vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMULUDQ / PMULUDQ </c> instruction. +/// +/// \param __a +/// A [2 x i64] vector containing one of the source operands. +/// \param __b +/// A [2 x i64] vector containing one of the source operands. +/// \returns A [2 x i64] vector containing the product of both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mul_epu32(__m128i __a, + __m128i __b) { + return __builtin_ia32_pmuludq128((__v4si)__a, (__v4si)__b); +} + +/// Computes the absolute differences of corresponding 8-bit integer +/// values in two 128-bit vectors. Sums the first 8 absolute differences, and +/// separately sums the second 8 absolute differences. Packs these two +/// unsigned 16-bit integer sums into the upper and lower elements of a +/// [2 x i64] vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSADBW / PSADBW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing one of the source operands. +/// \param __b +/// A 128-bit integer vector containing one of the source operands. +/// \returns A [2 x i64] vector containing the sums of the sets of absolute +/// differences between both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sad_epu8(__m128i __a, + __m128i __b) { + return __builtin_ia32_psadbw128((__v16qi)__a, (__v16qi)__b); +} + +/// Subtracts the corresponding 8-bit integer values in the operands. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSUBB / PSUBB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the minuends. +/// \param __b +/// A 128-bit integer vector containing the subtrahends. +/// \returns A 128-bit integer vector containing the differences of the values +/// in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi8(__m128i __a, + __m128i __b) { + return (__m128i)((__v16qu)__a - (__v16qu)__b); +} + +/// Subtracts the corresponding 16-bit integer values in the operands. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSUBW / PSUBW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the minuends. +/// \param __b +/// A 128-bit integer vector containing the subtrahends. +/// \returns A 128-bit integer vector containing the differences of the values +/// in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi16(__m128i __a, + __m128i __b) { + return (__m128i)((__v8hu)__a - (__v8hu)__b); +} + +/// Subtracts the corresponding 32-bit integer values in the operands. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSUBD / PSUBD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the minuends. +/// \param __b +/// A 128-bit integer vector containing the subtrahends. +/// \returns A 128-bit integer vector containing the differences of the values +/// in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi32(__m128i __a, + __m128i __b) { + return (__m128i)((__v4su)__a - (__v4su)__b); +} + +/// Subtracts signed or unsigned 64-bit integer values and writes the +/// difference to the corresponding bits in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSUBQ </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing the minuend. +/// \param __b +/// A 64-bit integer vector containing the subtrahend. +/// \returns A 64-bit integer vector containing the difference of the values in +/// the operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_sub_si64(__m64 __a, + __m64 __b) { + return (__m64)__builtin_ia32_psubq((__v1di)__a, (__v1di)__b); +} + +/// Subtracts the corresponding elements of two [2 x i64] vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSUBQ / PSUBQ </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the minuends. +/// \param __b +/// A 128-bit integer vector containing the subtrahends. +/// \returns A 128-bit integer vector containing the differences of the values +/// in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi64(__m128i __a, + __m128i __b) { + return (__m128i)((__v2du)__a - (__v2du)__b); +} + +/// Subtracts corresponding 8-bit signed integer values in the input and +/// returns the differences in the corresponding bytes in the destination. +/// Differences greater than 0x7F are saturated to 0x7F, and differences less +/// than 0x80 are saturated to 0x80. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSUBSB / PSUBSB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the minuends. +/// \param __b +/// A 128-bit integer vector containing the subtrahends. +/// \returns A 128-bit integer vector containing the differences of the values +/// in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_subs_epi8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_sub_sat((__v16qs)__a, (__v16qs)__b); +} + +/// Subtracts corresponding 16-bit signed integer values in the input and +/// returns the differences in the corresponding bytes in the destination. +/// Differences greater than 0x7FFF are saturated to 0x7FFF, and values less +/// than 0x8000 are saturated to 0x8000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSUBSW / PSUBSW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the minuends. +/// \param __b +/// A 128-bit integer vector containing the subtrahends. +/// \returns A 128-bit integer vector containing the differences of the values +/// in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_subs_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_sub_sat((__v8hi)__a, (__v8hi)__b); +} + +/// Subtracts corresponding 8-bit unsigned integer values in the input +/// and returns the differences in the corresponding bytes in the +/// destination. Differences less than 0x00 are saturated to 0x00. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSUBUSB / PSUBUSB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the minuends. +/// \param __b +/// A 128-bit integer vector containing the subtrahends. +/// \returns A 128-bit integer vector containing the unsigned integer +/// differences of the values in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_subs_epu8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_sub_sat((__v16qu)__a, (__v16qu)__b); +} + +/// Subtracts corresponding 16-bit unsigned integer values in the input +/// and returns the differences in the corresponding bytes in the +/// destination. Differences less than 0x0000 are saturated to 0x0000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSUBUSW / PSUBUSW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the minuends. +/// \param __b +/// A 128-bit integer vector containing the subtrahends. +/// \returns A 128-bit integer vector containing the unsigned integer +/// differences of the values in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_subs_epu16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_elementwise_sub_sat((__v8hu)__a, (__v8hu)__b); +} + +/// Performs a bitwise AND of two 128-bit integer vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPAND / PAND </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing one of the source operands. +/// \param __b +/// A 128-bit integer vector containing one of the source operands. +/// \returns A 128-bit integer vector containing the bitwise AND of the values +/// in both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_and_si128(__m128i __a, + __m128i __b) { + return (__m128i)((__v2du)__a & (__v2du)__b); +} + +/// Performs a bitwise AND of two 128-bit integer vectors, using the +/// one's complement of the values contained in the first source operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPANDN / PANDN </c> instruction. +/// +/// \param __a +/// A 128-bit vector containing the left source operand. The one's complement +/// of this value is used in the bitwise AND. +/// \param __b +/// A 128-bit vector containing the right source operand. +/// \returns A 128-bit integer vector containing the bitwise AND of the one's +/// complement of the first operand and the values in the second operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_andnot_si128(__m128i __a, + __m128i __b) { + return (__m128i)(~(__v2du)__a & (__v2du)__b); +} +/// Performs a bitwise OR of two 128-bit integer vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPOR / POR </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing one of the source operands. +/// \param __b +/// A 128-bit integer vector containing one of the source operands. +/// \returns A 128-bit integer vector containing the bitwise OR of the values +/// in both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_or_si128(__m128i __a, + __m128i __b) { + return (__m128i)((__v2du)__a | (__v2du)__b); +} + +/// Performs a bitwise exclusive OR of two 128-bit integer vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPXOR / PXOR </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing one of the source operands. +/// \param __b +/// A 128-bit integer vector containing one of the source operands. +/// \returns A 128-bit integer vector containing the bitwise exclusive OR of the +/// values in both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_xor_si128(__m128i __a, + __m128i __b) { + return (__m128i)((__v2du)__a ^ (__v2du)__b); +} + +/// Left-shifts the 128-bit integer vector operand by the specified +/// number of bytes. Low-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_slli_si128(__m128i a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPSLLDQ / PSLLDQ </c> instruction. +/// +/// \param a +/// A 128-bit integer vector containing the source operand. +/// \param imm +/// An immediate value specifying the number of bytes to left-shift operand +/// \a a. +/// \returns A 128-bit integer vector containing the left-shifted value. +#define _mm_slli_si128(a, imm) \ + ((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), \ + (int)(imm))) + +#define _mm_bslli_si128(a, imm) \ + ((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), \ + (int)(imm))) + +/// Left-shifts each 16-bit value in the 128-bit integer vector operand +/// by the specified number of bits. Low-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSLLW / PSLLW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// An integer value specifying the number of bits to left-shift each value +/// in operand \a __a. +/// \returns A 128-bit integer vector containing the left-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_slli_epi16(__m128i __a, + int __count) { + return (__m128i)__builtin_ia32_psllwi128((__v8hi)__a, __count); +} + +/// Left-shifts each 16-bit value in the 128-bit integer vector operand +/// by the specified number of bits. Low-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSLLW / PSLLW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// A 128-bit integer vector in which bits [63:0] specify the number of bits +/// to left-shift each value in operand \a __a. +/// \returns A 128-bit integer vector containing the left-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sll_epi16(__m128i __a, + __m128i __count) { + return (__m128i)__builtin_ia32_psllw128((__v8hi)__a, (__v8hi)__count); +} + +/// Left-shifts each 32-bit value in the 128-bit integer vector operand +/// by the specified number of bits. Low-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSLLD / PSLLD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// An integer value specifying the number of bits to left-shift each value +/// in operand \a __a. +/// \returns A 128-bit integer vector containing the left-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_slli_epi32(__m128i __a, + int __count) { + return (__m128i)__builtin_ia32_pslldi128((__v4si)__a, __count); +} + +/// Left-shifts each 32-bit value in the 128-bit integer vector operand +/// by the specified number of bits. Low-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSLLD / PSLLD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// A 128-bit integer vector in which bits [63:0] specify the number of bits +/// to left-shift each value in operand \a __a. +/// \returns A 128-bit integer vector containing the left-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sll_epi32(__m128i __a, + __m128i __count) { + return (__m128i)__builtin_ia32_pslld128((__v4si)__a, (__v4si)__count); +} + +/// Left-shifts each 64-bit value in the 128-bit integer vector operand +/// by the specified number of bits. Low-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSLLQ / PSLLQ </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// An integer value specifying the number of bits to left-shift each value +/// in operand \a __a. +/// \returns A 128-bit integer vector containing the left-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_slli_epi64(__m128i __a, + int __count) { + return __builtin_ia32_psllqi128((__v2di)__a, __count); +} + +/// Left-shifts each 64-bit value in the 128-bit integer vector operand +/// by the specified number of bits. Low-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSLLQ / PSLLQ </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// A 128-bit integer vector in which bits [63:0] specify the number of bits +/// to left-shift each value in operand \a __a. +/// \returns A 128-bit integer vector containing the left-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sll_epi64(__m128i __a, + __m128i __count) { + return __builtin_ia32_psllq128((__v2di)__a, (__v2di)__count); +} + +/// Right-shifts each 16-bit value in the 128-bit integer vector operand +/// by the specified number of bits. High-order bits are filled with the sign +/// bit of the initial value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRAW / PSRAW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// An integer value specifying the number of bits to right-shift each value +/// in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srai_epi16(__m128i __a, + int __count) { + return (__m128i)__builtin_ia32_psrawi128((__v8hi)__a, __count); +} + +/// Right-shifts each 16-bit value in the 128-bit integer vector operand +/// by the specified number of bits. High-order bits are filled with the sign +/// bit of the initial value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRAW / PSRAW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// A 128-bit integer vector in which bits [63:0] specify the number of bits +/// to right-shift each value in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sra_epi16(__m128i __a, + __m128i __count) { + return (__m128i)__builtin_ia32_psraw128((__v8hi)__a, (__v8hi)__count); +} + +/// Right-shifts each 32-bit value in the 128-bit integer vector operand +/// by the specified number of bits. High-order bits are filled with the sign +/// bit of the initial value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRAD / PSRAD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// An integer value specifying the number of bits to right-shift each value +/// in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srai_epi32(__m128i __a, + int __count) { + return (__m128i)__builtin_ia32_psradi128((__v4si)__a, __count); +} + +/// Right-shifts each 32-bit value in the 128-bit integer vector operand +/// by the specified number of bits. High-order bits are filled with the sign +/// bit of the initial value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRAD / PSRAD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// A 128-bit integer vector in which bits [63:0] specify the number of bits +/// to right-shift each value in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sra_epi32(__m128i __a, + __m128i __count) { + return (__m128i)__builtin_ia32_psrad128((__v4si)__a, (__v4si)__count); +} + +/// Right-shifts the 128-bit integer vector operand by the specified +/// number of bytes. High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_srli_si128(__m128i a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPSRLDQ / PSRLDQ </c> instruction. +/// +/// \param a +/// A 128-bit integer vector containing the source operand. +/// \param imm +/// An immediate value specifying the number of bytes to right-shift operand +/// \a a. +/// \returns A 128-bit integer vector containing the right-shifted value. +#define _mm_srli_si128(a, imm) \ + ((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), \ + (int)(imm))) + +#define _mm_bsrli_si128(a, imm) \ + ((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), \ + (int)(imm))) + +/// Right-shifts each of 16-bit values in the 128-bit integer vector +/// operand by the specified number of bits. High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRLW / PSRLW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// An integer value specifying the number of bits to right-shift each value +/// in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srli_epi16(__m128i __a, + int __count) { + return (__m128i)__builtin_ia32_psrlwi128((__v8hi)__a, __count); +} + +/// Right-shifts each of 16-bit values in the 128-bit integer vector +/// operand by the specified number of bits. High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRLW / PSRLW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// A 128-bit integer vector in which bits [63:0] specify the number of bits +/// to right-shift each value in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srl_epi16(__m128i __a, + __m128i __count) { + return (__m128i)__builtin_ia32_psrlw128((__v8hi)__a, (__v8hi)__count); +} + +/// Right-shifts each of 32-bit values in the 128-bit integer vector +/// operand by the specified number of bits. High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRLD / PSRLD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// An integer value specifying the number of bits to right-shift each value +/// in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srli_epi32(__m128i __a, + int __count) { + return (__m128i)__builtin_ia32_psrldi128((__v4si)__a, __count); +} + +/// Right-shifts each of 32-bit values in the 128-bit integer vector +/// operand by the specified number of bits. High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRLD / PSRLD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// A 128-bit integer vector in which bits [63:0] specify the number of bits +/// to right-shift each value in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srl_epi32(__m128i __a, + __m128i __count) { + return (__m128i)__builtin_ia32_psrld128((__v4si)__a, (__v4si)__count); +} + +/// Right-shifts each of 64-bit values in the 128-bit integer vector +/// operand by the specified number of bits. High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRLQ / PSRLQ </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// An integer value specifying the number of bits to right-shift each value +/// in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srli_epi64(__m128i __a, + int __count) { + return __builtin_ia32_psrlqi128((__v2di)__a, __count); +} + +/// Right-shifts each of 64-bit values in the 128-bit integer vector +/// operand by the specified number of bits. High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPSRLQ / PSRLQ </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the source operand. +/// \param __count +/// A 128-bit integer vector in which bits [63:0] specify the number of bits +/// to right-shift each value in operand \a __a. +/// \returns A 128-bit integer vector containing the right-shifted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srl_epi64(__m128i __a, + __m128i __count) { + return __builtin_ia32_psrlq128((__v2di)__a, (__v2di)__count); +} + +/// Compares each of the corresponding 8-bit values of the 128-bit +/// integer vectors for equality. Each comparison yields 0x0 for false, 0xFF +/// for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPEQB / PCMPEQB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi8(__m128i __a, + __m128i __b) { + return (__m128i)((__v16qi)__a == (__v16qi)__b); +} + +/// Compares each of the corresponding 16-bit values of the 128-bit +/// integer vectors for equality. Each comparison yields 0x0 for false, +/// 0xFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPEQW / PCMPEQW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi16(__m128i __a, + __m128i __b) { + return (__m128i)((__v8hi)__a == (__v8hi)__b); +} + +/// Compares each of the corresponding 32-bit values of the 128-bit +/// integer vectors for equality. Each comparison yields 0x0 for false, +/// 0xFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPEQD / PCMPEQD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi32(__m128i __a, + __m128i __b) { + return (__m128i)((__v4si)__a == (__v4si)__b); +} + +/// Compares each of the corresponding signed 8-bit values of the 128-bit +/// integer vectors to determine if the values in the first operand are +/// greater than those in the second operand. Each comparison yields 0x0 for +/// false, 0xFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPGTB / PCMPGTB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi8(__m128i __a, + __m128i __b) { + /* This function always performs a signed comparison, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m128i)((__v16qs)__a > (__v16qs)__b); +} + +/// Compares each of the corresponding signed 16-bit values of the +/// 128-bit integer vectors to determine if the values in the first operand +/// are greater than those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPGTW / PCMPGTW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi16(__m128i __a, + __m128i __b) { + return (__m128i)((__v8hi)__a > (__v8hi)__b); +} + +/// Compares each of the corresponding signed 32-bit values of the +/// 128-bit integer vectors to determine if the values in the first operand +/// are greater than those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPGTD / PCMPGTD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi32(__m128i __a, + __m128i __b) { + return (__m128i)((__v4si)__a > (__v4si)__b); +} + +/// Compares each of the corresponding signed 8-bit values of the 128-bit +/// integer vectors to determine if the values in the first operand are less +/// than those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPGTB / PCMPGTB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmplt_epi8(__m128i __a, + __m128i __b) { + return _mm_cmpgt_epi8(__b, __a); +} + +/// Compares each of the corresponding signed 16-bit values of the +/// 128-bit integer vectors to determine if the values in the first operand +/// are less than those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPGTW / PCMPGTW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmplt_epi16(__m128i __a, + __m128i __b) { + return _mm_cmpgt_epi16(__b, __a); +} + +/// Compares each of the corresponding signed 32-bit values of the +/// 128-bit integer vectors to determine if the values in the first operand +/// are less than those in the second operand. +/// +/// Each comparison yields 0x0 for false, 0xFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPGTD / PCMPGTD </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \param __b +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmplt_epi32(__m128i __a, + __m128i __b) { + return _mm_cmpgt_epi32(__b, __a); +} + +#ifdef __x86_64__ +/// Converts a 64-bit signed integer value from the second operand into a +/// double-precision value and returns it in the lower element of a [2 x +/// double] vector; the upper element of the returned vector is copied from +/// the upper element of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSI2SD / CVTSI2SD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The upper 64 bits of this operand are +/// copied to the upper 64 bits of the destination. +/// \param __b +/// A 64-bit signed integer operand containing the value to be converted. +/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the +/// converted value of the second operand. The upper 64 bits are copied from +/// the upper 64 bits of the first operand. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtsi64_sd(__m128d __a, + long long __b) { + __a[0] = __b; + return __a; +} + +/// Converts the first (lower) element of a vector of [2 x double] into a +/// 64-bit signed integer value, according to the current rounding mode. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSD2SI / CVTSD2SI </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower 64 bits are used in the +/// conversion. +/// \returns A 64-bit signed integer containing the converted value. +static __inline__ long long __DEFAULT_FN_ATTRS _mm_cvtsd_si64(__m128d __a) { + return __builtin_ia32_cvtsd2si64((__v2df)__a); +} + +/// Converts the first (lower) element of a vector of [2 x double] into a +/// 64-bit signed integer value, truncating the result when it is inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTSD2SI / CVTTSD2SI </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. The lower 64 bits are used in the +/// conversion. +/// \returns A 64-bit signed integer containing the converted value. +static __inline__ long long __DEFAULT_FN_ATTRS _mm_cvttsd_si64(__m128d __a) { + return __builtin_ia32_cvttsd2si64((__v2df)__a); +} +#endif + +/// Converts a vector of [4 x i32] into a vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTDQ2PS / CVTDQ2PS </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \returns A 128-bit vector of [4 x float] containing the converted values. +static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtepi32_ps(__m128i __a) { + return (__m128) __builtin_convertvector((__v4si)__a, __v4sf); +} + +/// Converts a vector of [4 x float] into a vector of [4 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPS2DQ / CVTPS2DQ </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit integer vector of [4 x i32] containing the converted +/// values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtps_epi32(__m128 __a) { + return (__m128i)__builtin_ia32_cvtps2dq((__v4sf)__a); +} + +/// Converts a vector of [4 x float] into a vector of [4 x i32], +/// truncating the result when it is inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTPS2DQ / CVTTPS2DQ </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x i32] containing the converted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvttps_epi32(__m128 __a) { + return (__m128i)__builtin_ia32_cvttps2dq((__v4sf)__a); +} + +/// Returns a vector of [4 x i32] where the lowest element is the input +/// operand and the remaining elements are zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. +/// +/// \param __a +/// A 32-bit signed integer operand. +/// \returns A 128-bit vector of [4 x i32]. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtsi32_si128(int __a) { + return __extension__(__m128i)(__v4si){__a, 0, 0, 0}; +} + +/// Returns a vector of [2 x i64] where the lower element is the input +/// operand and the upper element is zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction +/// in 64-bit mode. +/// +/// \param __a +/// A 64-bit signed integer operand containing the value to be converted. +/// \returns A 128-bit vector of [2 x i64] containing the converted value. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtsi64_si128(long long __a) { + return __extension__(__m128i)(__v2di){__a, 0}; +} + +/// Moves the least significant 32 bits of a vector of [4 x i32] to a +/// 32-bit signed integer value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. +/// +/// \param __a +/// A vector of [4 x i32]. The least significant 32 bits are moved to the +/// destination. +/// \returns A 32-bit signed integer containing the moved value. +static __inline__ int __DEFAULT_FN_ATTRS _mm_cvtsi128_si32(__m128i __a) { + __v4si __b = (__v4si)__a; + return __b[0]; +} + +/// Moves the least significant 64 bits of a vector of [2 x i64] to a +/// 64-bit signed integer value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. +/// +/// \param __a +/// A vector of [2 x i64]. The least significant 64 bits are moved to the +/// destination. +/// \returns A 64-bit signed integer containing the moved value. +static __inline__ long long __DEFAULT_FN_ATTRS _mm_cvtsi128_si64(__m128i __a) { + return __a[0]; +} + +/// Moves packed integer values from an aligned 128-bit memory location +/// to elements in a 128-bit integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDQA / MOVDQA </c> instruction. +/// +/// \param __p +/// An aligned pointer to a memory location containing integer values. +/// \returns A 128-bit integer vector containing the moved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_load_si128(__m128i const *__p) { + return *__p; +} + +/// Moves packed integer values from an unaligned 128-bit memory location +/// to elements in a 128-bit integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDQU / MOVDQU </c> instruction. +/// +/// \param __p +/// A pointer to a memory location containing integer values. +/// \returns A 128-bit integer vector containing the moved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_loadu_si128(__m128i_u const *__p) { + struct __loadu_si128 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_si128 *)__p)->__v; +} + +/// Returns a vector of [2 x i64] where the lower element is taken from +/// the lower element of the operand, and the upper element is zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. +/// +/// \param __p +/// A 128-bit vector of [2 x i64]. Bits [63:0] are written to bits [63:0] of +/// the destination. +/// \returns A 128-bit vector of [2 x i64]. The lower order bits contain the +/// moved value. The higher order bits are cleared. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_loadl_epi64(__m128i_u const *__p) { + struct __mm_loadl_epi64_struct { + long long __u; + } __attribute__((__packed__, __may_alias__)); + return __extension__(__m128i){ + ((const struct __mm_loadl_epi64_struct *)__p)->__u, 0}; +} + +/// Generates a 128-bit vector of [4 x i32] with unspecified content. +/// This could be used as an argument to another intrinsic function where the +/// argument is required but the value is not actually used. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \returns A 128-bit vector of [4 x i32] with unspecified content. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_undefined_si128(void) { + return (__m128i)__builtin_ia32_undef128(); +} + +/// Initializes both 64-bit values in a 128-bit vector of [2 x i64] with +/// the specified 64-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __q1 +/// A 64-bit integer value used to initialize the upper 64 bits of the +/// destination vector of [2 x i64]. +/// \param __q0 +/// A 64-bit integer value used to initialize the lower 64 bits of the +/// destination vector of [2 x i64]. +/// \returns An initialized 128-bit vector of [2 x i64] containing the values +/// provided in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi64x(long long __q1, + long long __q0) { + return __extension__(__m128i)(__v2di){__q0, __q1}; +} + +/// Initializes both 64-bit values in a 128-bit vector of [2 x i64] with +/// the specified 64-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __q1 +/// A 64-bit integer value used to initialize the upper 64 bits of the +/// destination vector of [2 x i64]. +/// \param __q0 +/// A 64-bit integer value used to initialize the lower 64 bits of the +/// destination vector of [2 x i64]. +/// \returns An initialized 128-bit vector of [2 x i64] containing the values +/// provided in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi64(__m64 __q1, + __m64 __q0) { + return _mm_set_epi64x((long long)__q1, (long long)__q0); +} + +/// Initializes the 32-bit values in a 128-bit vector of [4 x i32] with +/// the specified 32-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __i3 +/// A 32-bit integer value used to initialize bits [127:96] of the +/// destination vector. +/// \param __i2 +/// A 32-bit integer value used to initialize bits [95:64] of the destination +/// vector. +/// \param __i1 +/// A 32-bit integer value used to initialize bits [63:32] of the destination +/// vector. +/// \param __i0 +/// A 32-bit integer value used to initialize bits [31:0] of the destination +/// vector. +/// \returns An initialized 128-bit vector of [4 x i32] containing the values +/// provided in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi32(int __i3, int __i2, + int __i1, int __i0) { + return __extension__(__m128i)(__v4si){__i0, __i1, __i2, __i3}; +} + +/// Initializes the 16-bit values in a 128-bit vector of [8 x i16] with +/// the specified 16-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __w7 +/// A 16-bit integer value used to initialize bits [127:112] of the +/// destination vector. +/// \param __w6 +/// A 16-bit integer value used to initialize bits [111:96] of the +/// destination vector. +/// \param __w5 +/// A 16-bit integer value used to initialize bits [95:80] of the destination +/// vector. +/// \param __w4 +/// A 16-bit integer value used to initialize bits [79:64] of the destination +/// vector. +/// \param __w3 +/// A 16-bit integer value used to initialize bits [63:48] of the destination +/// vector. +/// \param __w2 +/// A 16-bit integer value used to initialize bits [47:32] of the destination +/// vector. +/// \param __w1 +/// A 16-bit integer value used to initialize bits [31:16] of the destination +/// vector. +/// \param __w0 +/// A 16-bit integer value used to initialize bits [15:0] of the destination +/// vector. +/// \returns An initialized 128-bit vector of [8 x i16] containing the values +/// provided in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_set_epi16(short __w7, short __w6, short __w5, short __w4, short __w3, + short __w2, short __w1, short __w0) { + return __extension__(__m128i)(__v8hi){__w0, __w1, __w2, __w3, + __w4, __w5, __w6, __w7}; +} + +/// Initializes the 8-bit values in a 128-bit vector of [16 x i8] with +/// the specified 8-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __b15 +/// Initializes bits [127:120] of the destination vector. +/// \param __b14 +/// Initializes bits [119:112] of the destination vector. +/// \param __b13 +/// Initializes bits [111:104] of the destination vector. +/// \param __b12 +/// Initializes bits [103:96] of the destination vector. +/// \param __b11 +/// Initializes bits [95:88] of the destination vector. +/// \param __b10 +/// Initializes bits [87:80] of the destination vector. +/// \param __b9 +/// Initializes bits [79:72] of the destination vector. +/// \param __b8 +/// Initializes bits [71:64] of the destination vector. +/// \param __b7 +/// Initializes bits [63:56] of the destination vector. +/// \param __b6 +/// Initializes bits [55:48] of the destination vector. +/// \param __b5 +/// Initializes bits [47:40] of the destination vector. +/// \param __b4 +/// Initializes bits [39:32] of the destination vector. +/// \param __b3 +/// Initializes bits [31:24] of the destination vector. +/// \param __b2 +/// Initializes bits [23:16] of the destination vector. +/// \param __b1 +/// Initializes bits [15:8] of the destination vector. +/// \param __b0 +/// Initializes bits [7:0] of the destination vector. +/// \returns An initialized 128-bit vector of [16 x i8] containing the values +/// provided in the operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_set_epi8(char __b15, char __b14, char __b13, char __b12, char __b11, + char __b10, char __b9, char __b8, char __b7, char __b6, char __b5, + char __b4, char __b3, char __b2, char __b1, char __b0) { + return __extension__(__m128i)(__v16qi){ + __b0, __b1, __b2, __b3, __b4, __b5, __b6, __b7, + __b8, __b9, __b10, __b11, __b12, __b13, __b14, __b15}; +} + +/// Initializes both values in a 128-bit integer vector with the +/// specified 64-bit integer value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __q +/// Integer value used to initialize the elements of the destination integer +/// vector. +/// \returns An initialized 128-bit integer vector of [2 x i64] with both +/// elements containing the value provided in the operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi64x(long long __q) { + return _mm_set_epi64x(__q, __q); +} + +/// Initializes both values in a 128-bit vector of [2 x i64] with the +/// specified 64-bit value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __q +/// A 64-bit value used to initialize the elements of the destination integer +/// vector. +/// \returns An initialized 128-bit vector of [2 x i64] with all elements +/// containing the value provided in the operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi64(__m64 __q) { + return _mm_set_epi64(__q, __q); +} + +/// Initializes all values in a 128-bit vector of [4 x i32] with the +/// specified 32-bit value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __i +/// A 32-bit value used to initialize the elements of the destination integer +/// vector. +/// \returns An initialized 128-bit vector of [4 x i32] with all elements +/// containing the value provided in the operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi32(int __i) { + return _mm_set_epi32(__i, __i, __i, __i); +} + +/// Initializes all values in a 128-bit vector of [8 x i16] with the +/// specified 16-bit value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __w +/// A 16-bit value used to initialize the elements of the destination integer +/// vector. +/// \returns An initialized 128-bit vector of [8 x i16] with all elements +/// containing the value provided in the operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi16(short __w) { + return _mm_set_epi16(__w, __w, __w, __w, __w, __w, __w, __w); +} + +/// Initializes all values in a 128-bit vector of [16 x i8] with the +/// specified 8-bit value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __b +/// An 8-bit value used to initialize the elements of the destination integer +/// vector. +/// \returns An initialized 128-bit vector of [16 x i8] with all elements +/// containing the value provided in the operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi8(char __b) { + return _mm_set_epi8(__b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b, + __b, __b, __b, __b, __b); +} + +/// Constructs a 128-bit integer vector, initialized in reverse order +/// with the specified 64-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic does not correspond to a specific instruction. +/// +/// \param __q0 +/// A 64-bit integral value used to initialize the lower 64 bits of the +/// result. +/// \param __q1 +/// A 64-bit integral value used to initialize the upper 64 bits of the +/// result. +/// \returns An initialized 128-bit integer vector. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setr_epi64(__m64 __q0, + __m64 __q1) { + return _mm_set_epi64(__q1, __q0); +} + +/// Constructs a 128-bit integer vector, initialized in reverse order +/// with the specified 32-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __i0 +/// A 32-bit integral value used to initialize bits [31:0] of the result. +/// \param __i1 +/// A 32-bit integral value used to initialize bits [63:32] of the result. +/// \param __i2 +/// A 32-bit integral value used to initialize bits [95:64] of the result. +/// \param __i3 +/// A 32-bit integral value used to initialize bits [127:96] of the result. +/// \returns An initialized 128-bit integer vector. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setr_epi32(int __i0, int __i1, + int __i2, + int __i3) { + return _mm_set_epi32(__i3, __i2, __i1, __i0); +} + +/// Constructs a 128-bit integer vector, initialized in reverse order +/// with the specified 16-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __w0 +/// A 16-bit integral value used to initialize bits [15:0] of the result. +/// \param __w1 +/// A 16-bit integral value used to initialize bits [31:16] of the result. +/// \param __w2 +/// A 16-bit integral value used to initialize bits [47:32] of the result. +/// \param __w3 +/// A 16-bit integral value used to initialize bits [63:48] of the result. +/// \param __w4 +/// A 16-bit integral value used to initialize bits [79:64] of the result. +/// \param __w5 +/// A 16-bit integral value used to initialize bits [95:80] of the result. +/// \param __w6 +/// A 16-bit integral value used to initialize bits [111:96] of the result. +/// \param __w7 +/// A 16-bit integral value used to initialize bits [127:112] of the result. +/// \returns An initialized 128-bit integer vector. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_setr_epi16(short __w0, short __w1, short __w2, short __w3, short __w4, + short __w5, short __w6, short __w7) { + return _mm_set_epi16(__w7, __w6, __w5, __w4, __w3, __w2, __w1, __w0); +} + +/// Constructs a 128-bit integer vector, initialized in reverse order +/// with the specified 8-bit integral values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __b0 +/// An 8-bit integral value used to initialize bits [7:0] of the result. +/// \param __b1 +/// An 8-bit integral value used to initialize bits [15:8] of the result. +/// \param __b2 +/// An 8-bit integral value used to initialize bits [23:16] of the result. +/// \param __b3 +/// An 8-bit integral value used to initialize bits [31:24] of the result. +/// \param __b4 +/// An 8-bit integral value used to initialize bits [39:32] of the result. +/// \param __b5 +/// An 8-bit integral value used to initialize bits [47:40] of the result. +/// \param __b6 +/// An 8-bit integral value used to initialize bits [55:48] of the result. +/// \param __b7 +/// An 8-bit integral value used to initialize bits [63:56] of the result. +/// \param __b8 +/// An 8-bit integral value used to initialize bits [71:64] of the result. +/// \param __b9 +/// An 8-bit integral value used to initialize bits [79:72] of the result. +/// \param __b10 +/// An 8-bit integral value used to initialize bits [87:80] of the result. +/// \param __b11 +/// An 8-bit integral value used to initialize bits [95:88] of the result. +/// \param __b12 +/// An 8-bit integral value used to initialize bits [103:96] of the result. +/// \param __b13 +/// An 8-bit integral value used to initialize bits [111:104] of the result. +/// \param __b14 +/// An 8-bit integral value used to initialize bits [119:112] of the result. +/// \param __b15 +/// An 8-bit integral value used to initialize bits [127:120] of the result. +/// \returns An initialized 128-bit integer vector. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_setr_epi8(char __b0, char __b1, char __b2, char __b3, char __b4, char __b5, + char __b6, char __b7, char __b8, char __b9, char __b10, + char __b11, char __b12, char __b13, char __b14, char __b15) { + return _mm_set_epi8(__b15, __b14, __b13, __b12, __b11, __b10, __b9, __b8, + __b7, __b6, __b5, __b4, __b3, __b2, __b1, __b0); +} + +/// Creates a 128-bit integer vector initialized to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPS / XORPS </c> instruction. +/// +/// \returns An initialized 128-bit integer vector with all elements set to +/// zero. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setzero_si128(void) { + return __extension__(__m128i)(__v2di){0LL, 0LL}; +} + +/// Stores a 128-bit integer vector to a memory location aligned on a +/// 128-bit boundary. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS </c> instruction. +/// +/// \param __p +/// A pointer to an aligned memory location that will receive the integer +/// values. +/// \param __b +/// A 128-bit integer vector containing the values to be moved. +static __inline__ void __DEFAULT_FN_ATTRS _mm_store_si128(__m128i *__p, + __m128i __b) { + *__p = __b; +} + +/// Stores a 128-bit integer vector to an unaligned memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPS / MOVUPS </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the integer values. +/// \param __b +/// A 128-bit integer vector containing the values to be moved. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_si128(__m128i_u *__p, + __m128i __b) { + struct __storeu_si128 { + __m128i_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_si128 *)__p)->__v = __b; +} + +/// Stores a 64-bit integer value from the low element of a 128-bit integer +/// vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. +/// +/// \param __p +/// A pointer to a 64-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \param __b +/// A 128-bit integer vector containing the value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_si64(void *__p, + __m128i __b) { + struct __storeu_si64 { + long long __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_si64 *)__p)->__v = ((__v2di)__b)[0]; +} + +/// Stores a 32-bit integer value from the low element of a 128-bit integer +/// vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. +/// +/// \param __p +/// A pointer to a 32-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \param __b +/// A 128-bit integer vector containing the value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_si32(void *__p, + __m128i __b) { + struct __storeu_si32 { + int __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_si32 *)__p)->__v = ((__v4si)__b)[0]; +} + +/// Stores a 16-bit integer value from the low element of a 128-bit integer +/// vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic does not correspond to a specific instruction. +/// +/// \param __p +/// A pointer to a 16-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \param __b +/// A 128-bit integer vector containing the value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_si16(void *__p, + __m128i __b) { + struct __storeu_si16 { + short __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_si16 *)__p)->__v = ((__v8hi)__b)[0]; +} + +/// Moves bytes selected by the mask from the first operand to the +/// specified unaligned memory location. When a mask bit is 1, the +/// corresponding byte is written, otherwise it is not written. +/// +/// To minimize caching, the data is flagged as non-temporal (unlikely to be +/// used again soon). Exception and trap behavior for elements not selected +/// for storage to memory are implementation dependent. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMASKMOVDQU / MASKMOVDQU </c> +/// instruction. +/// +/// \param __d +/// A 128-bit integer vector containing the values to be moved. +/// \param __n +/// A 128-bit integer vector containing the mask. The most significant bit of +/// each byte represents the mask bits. +/// \param __p +/// A pointer to an unaligned 128-bit memory location where the specified +/// values are moved. +static __inline__ void __DEFAULT_FN_ATTRS _mm_maskmoveu_si128(__m128i __d, + __m128i __n, + char *__p) { + __builtin_ia32_maskmovdqu((__v16qi)__d, (__v16qi)__n, __p); +} + +/// Stores the lower 64 bits of a 128-bit integer vector of [2 x i64] to +/// a memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVLPS / MOVLPS </c> instruction. +/// +/// \param __p +/// A pointer to a 64-bit memory location that will receive the lower 64 bits +/// of the integer vector parameter. +/// \param __a +/// A 128-bit integer vector of [2 x i64]. The lower 64 bits contain the +/// value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_storel_epi64(__m128i_u *__p, + __m128i __a) { + struct __mm_storel_epi64_struct { + long long __u; + } __attribute__((__packed__, __may_alias__)); + ((struct __mm_storel_epi64_struct *)__p)->__u = __a[0]; +} + +/// Stores a 128-bit floating point vector of [2 x double] to a 128-bit +/// aligned memory location. +/// +/// To minimize caching, the data is flagged as non-temporal (unlikely to be +/// used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVNTPS / MOVNTPS </c> instruction. +/// +/// \param __p +/// A pointer to the 128-bit aligned memory location used to store the value. +/// \param __a +/// A vector of [2 x double] containing the 64-bit values to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_stream_pd(double *__p, + __m128d __a) { + __builtin_nontemporal_store((__v2df)__a, (__v2df *)__p); +} + +/// Stores a 128-bit integer vector to a 128-bit aligned memory location. +/// +/// To minimize caching, the data is flagged as non-temporal (unlikely to be +/// used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVNTPS / MOVNTPS </c> instruction. +/// +/// \param __p +/// A pointer to the 128-bit aligned memory location used to store the value. +/// \param __a +/// A 128-bit integer vector containing the values to be stored. +static __inline__ void __DEFAULT_FN_ATTRS _mm_stream_si128(__m128i *__p, + __m128i __a) { + __builtin_nontemporal_store((__v2di)__a, (__v2di *)__p); +} + +/// Stores a 32-bit integer value in the specified memory location. +/// +/// To minimize caching, the data is flagged as non-temporal (unlikely to be +/// used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVNTI </c> instruction. +/// +/// \param __p +/// A pointer to the 32-bit memory location used to store the value. +/// \param __a +/// A 32-bit integer containing the value to be stored. +static __inline__ void + __attribute__((__always_inline__, __nodebug__, __target__("sse2"))) + _mm_stream_si32(int *__p, int __a) { + __builtin_ia32_movnti(__p, __a); +} + +#ifdef __x86_64__ +/// Stores a 64-bit integer value in the specified memory location. +/// +/// To minimize caching, the data is flagged as non-temporal (unlikely to be +/// used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVNTIQ </c> instruction. +/// +/// \param __p +/// A pointer to the 64-bit memory location used to store the value. +/// \param __a +/// A 64-bit integer containing the value to be stored. +static __inline__ void + __attribute__((__always_inline__, __nodebug__, __target__("sse2"))) + _mm_stream_si64(long long *__p, long long __a) { + __builtin_ia32_movnti64(__p, __a); +} +#endif + +#if defined(__cplusplus) +extern "C" { +#endif + +/// The cache line containing \a __p is flushed and invalidated from all +/// caches in the coherency domain. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CLFLUSH </c> instruction. +/// +/// \param __p +/// A pointer to the memory location used to identify the cache line to be +/// flushed. +void _mm_clflush(void const *__p); + +/// Forces strong memory ordering (serialization) between load +/// instructions preceding this instruction and load instructions following +/// this instruction, ensuring the system completes all previous loads before +/// executing subsequent loads. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> LFENCE </c> instruction. +/// +void _mm_lfence(void); + +/// Forces strong memory ordering (serialization) between load and store +/// instructions preceding this instruction and load and store instructions +/// following this instruction, ensuring that the system completes all +/// previous memory accesses before executing subsequent memory accesses. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MFENCE </c> instruction. +/// +void _mm_mfence(void); + +#if defined(__cplusplus) +} // extern "C" +#endif + +/// Converts 16-bit signed integers from both 128-bit integer vector +/// operands into 8-bit signed integers, and packs the results into the +/// destination. Positive values greater than 0x7F are saturated to 0x7F. +/// Negative values less than 0x80 are saturated to 0x80. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPACKSSWB / PACKSSWB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector of [8 x i16]. Each 16-bit element is treated as +/// a signed integer and is converted to a 8-bit signed integer with +/// saturation. Values greater than 0x7F are saturated to 0x7F. Values less +/// than 0x80 are saturated to 0x80. The converted [8 x i8] values are +/// written to the lower 64 bits of the result. +/// \param __b +/// A 128-bit integer vector of [8 x i16]. Each 16-bit element is treated as +/// a signed integer and is converted to a 8-bit signed integer with +/// saturation. Values greater than 0x7F are saturated to 0x7F. Values less +/// than 0x80 are saturated to 0x80. The converted [8 x i8] values are +/// written to the higher 64 bits of the result. +/// \returns A 128-bit vector of [16 x i8] containing the converted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packs_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_ia32_packsswb128((__v8hi)__a, (__v8hi)__b); +} + +/// Converts 32-bit signed integers from both 128-bit integer vector +/// operands into 16-bit signed integers, and packs the results into the +/// destination. Positive values greater than 0x7FFF are saturated to 0x7FFF. +/// Negative values less than 0x8000 are saturated to 0x8000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPACKSSDW / PACKSSDW </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector of [4 x i32]. Each 32-bit element is treated as +/// a signed integer and is converted to a 16-bit signed integer with +/// saturation. Values greater than 0x7FFF are saturated to 0x7FFF. Values +/// less than 0x8000 are saturated to 0x8000. The converted [4 x i16] values +/// are written to the lower 64 bits of the result. +/// \param __b +/// A 128-bit integer vector of [4 x i32]. Each 32-bit element is treated as +/// a signed integer and is converted to a 16-bit signed integer with +/// saturation. Values greater than 0x7FFF are saturated to 0x7FFF. Values +/// less than 0x8000 are saturated to 0x8000. The converted [4 x i16] values +/// are written to the higher 64 bits of the result. +/// \returns A 128-bit vector of [8 x i16] containing the converted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packs_epi32(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_ia32_packssdw128((__v4si)__a, (__v4si)__b); +} + +/// Converts 16-bit signed integers from both 128-bit integer vector +/// operands into 8-bit unsigned integers, and packs the results into the +/// destination. Values greater than 0xFF are saturated to 0xFF. Values less +/// than 0x00 are saturated to 0x00. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPACKUSWB / PACKUSWB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector of [8 x i16]. Each 16-bit element is treated as +/// a signed integer and is converted to an 8-bit unsigned integer with +/// saturation. Values greater than 0xFF are saturated to 0xFF. Values less +/// than 0x00 are saturated to 0x00. The converted [8 x i8] values are +/// written to the lower 64 bits of the result. +/// \param __b +/// A 128-bit integer vector of [8 x i16]. Each 16-bit element is treated as +/// a signed integer and is converted to an 8-bit unsigned integer with +/// saturation. Values greater than 0xFF are saturated to 0xFF. Values less +/// than 0x00 are saturated to 0x00. The converted [8 x i8] values are +/// written to the higher 64 bits of the result. +/// \returns A 128-bit vector of [16 x i8] containing the converted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packus_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_ia32_packuswb128((__v8hi)__a, (__v8hi)__b); +} + +/// Extracts 16 bits from a 128-bit integer vector of [8 x i16], using +/// the immediate-value parameter as a selector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_extract_epi16(__m128i a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPEXTRW / PEXTRW </c> instruction. +/// +/// \param a +/// A 128-bit integer vector. +/// \param imm +/// An immediate value. Bits [2:0] selects values from \a a to be assigned +/// to bits[15:0] of the result. \n +/// 000: assign values from bits [15:0] of \a a. \n +/// 001: assign values from bits [31:16] of \a a. \n +/// 010: assign values from bits [47:32] of \a a. \n +/// 011: assign values from bits [63:48] of \a a. \n +/// 100: assign values from bits [79:64] of \a a. \n +/// 101: assign values from bits [95:80] of \a a. \n +/// 110: assign values from bits [111:96] of \a a. \n +/// 111: assign values from bits [127:112] of \a a. +/// \returns An integer, whose lower 16 bits are selected from the 128-bit +/// integer vector parameter and the remaining bits are assigned zeros. +#define _mm_extract_epi16(a, imm) \ + ((int)(unsigned short)__builtin_ia32_vec_ext_v8hi((__v8hi)(__m128i)(a), \ + (int)(imm))) + +/// Constructs a 128-bit integer vector by first making a copy of the +/// 128-bit integer vector parameter, and then inserting the lower 16 bits +/// of an integer parameter into an offset specified by the immediate-value +/// parameter. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_insert_epi16(__m128i a, int b, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPINSRW / PINSRW </c> instruction. +/// +/// \param a +/// A 128-bit integer vector of [8 x i16]. This vector is copied to the +/// result and then one of the eight elements in the result is replaced by +/// the lower 16 bits of \a b. +/// \param b +/// An integer. The lower 16 bits of this parameter are written to the +/// result beginning at an offset specified by \a imm. +/// \param imm +/// An immediate value specifying the bit offset in the result at which the +/// lower 16 bits of \a b are written. +/// \returns A 128-bit integer vector containing the constructed values. +#define _mm_insert_epi16(a, b, imm) \ + ((__m128i)__builtin_ia32_vec_set_v8hi((__v8hi)(__m128i)(a), (int)(b), \ + (int)(imm))) + +/// Copies the values of the most significant bits from each 8-bit +/// element in a 128-bit integer vector of [16 x i8] to create a 16-bit mask +/// value, zero-extends the value, and writes it to the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVMSKB / PMOVMSKB </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the values with bits to be extracted. +/// \returns The most significant bits from each 8-bit element in \a __a, +/// written to bits [15:0]. The other bits are assigned zeros. +static __inline__ int __DEFAULT_FN_ATTRS _mm_movemask_epi8(__m128i __a) { + return __builtin_ia32_pmovmskb128((__v16qi)__a); +} + +/// Constructs a 128-bit integer vector by shuffling four 32-bit +/// elements of a 128-bit integer vector parameter, using the immediate-value +/// parameter as a specifier. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_shuffle_epi32(__m128i a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPSHUFD / PSHUFD </c> instruction. +/// +/// \param a +/// A 128-bit integer vector containing the values to be copied. +/// \param imm +/// An immediate value containing an 8-bit value specifying which elements to +/// copy from a. The destinations within the 128-bit destination are assigned +/// values as follows: \n +/// Bits [1:0] are used to assign values to bits [31:0] of the result. \n +/// Bits [3:2] are used to assign values to bits [63:32] of the result. \n +/// Bits [5:4] are used to assign values to bits [95:64] of the result. \n +/// Bits [7:6] are used to assign values to bits [127:96] of the result. \n +/// Bit value assignments: \n +/// 00: assign values from bits [31:0] of \a a. \n +/// 01: assign values from bits [63:32] of \a a. \n +/// 10: assign values from bits [95:64] of \a a. \n +/// 11: assign values from bits [127:96] of \a a. \n +/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. +/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form +/// <c>[b6, b4, b2, b0]</c>. +/// \returns A 128-bit integer vector containing the shuffled values. +#define _mm_shuffle_epi32(a, imm) \ + ((__m128i)__builtin_ia32_pshufd((__v4si)(__m128i)(a), (int)(imm))) + +/// Constructs a 128-bit integer vector by shuffling four lower 16-bit +/// elements of a 128-bit integer vector of [8 x i16], using the immediate +/// value parameter as a specifier. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_shufflelo_epi16(__m128i a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPSHUFLW / PSHUFLW </c> instruction. +/// +/// \param a +/// A 128-bit integer vector of [8 x i16]. Bits [127:64] are copied to bits +/// [127:64] of the result. +/// \param imm +/// An 8-bit immediate value specifying which elements to copy from \a a. \n +/// Bits[1:0] are used to assign values to bits [15:0] of the result. \n +/// Bits[3:2] are used to assign values to bits [31:16] of the result. \n +/// Bits[5:4] are used to assign values to bits [47:32] of the result. \n +/// Bits[7:6] are used to assign values to bits [63:48] of the result. \n +/// Bit value assignments: \n +/// 00: assign values from bits [15:0] of \a a. \n +/// 01: assign values from bits [31:16] of \a a. \n +/// 10: assign values from bits [47:32] of \a a. \n +/// 11: assign values from bits [63:48] of \a a. \n +/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. +/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form +/// <c>[b6, b4, b2, b0]</c>. +/// \returns A 128-bit integer vector containing the shuffled values. +#define _mm_shufflelo_epi16(a, imm) \ + ((__m128i)__builtin_ia32_pshuflw((__v8hi)(__m128i)(a), (int)(imm))) + +/// Constructs a 128-bit integer vector by shuffling four upper 16-bit +/// elements of a 128-bit integer vector of [8 x i16], using the immediate +/// value parameter as a specifier. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_shufflehi_epi16(__m128i a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPSHUFHW / PSHUFHW </c> instruction. +/// +/// \param a +/// A 128-bit integer vector of [8 x i16]. Bits [63:0] are copied to bits +/// [63:0] of the result. +/// \param imm +/// An 8-bit immediate value specifying which elements to copy from \a a. \n +/// Bits[1:0] are used to assign values to bits [79:64] of the result. \n +/// Bits[3:2] are used to assign values to bits [95:80] of the result. \n +/// Bits[5:4] are used to assign values to bits [111:96] of the result. \n +/// Bits[7:6] are used to assign values to bits [127:112] of the result. \n +/// Bit value assignments: \n +/// 00: assign values from bits [79:64] of \a a. \n +/// 01: assign values from bits [95:80] of \a a. \n +/// 10: assign values from bits [111:96] of \a a. \n +/// 11: assign values from bits [127:112] of \a a. \n +/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. +/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form +/// <c>[b6, b4, b2, b0]</c>. +/// \returns A 128-bit integer vector containing the shuffled values. +#define _mm_shufflehi_epi16(a, imm) \ + ((__m128i)__builtin_ia32_pshufhw((__v8hi)(__m128i)(a), (int)(imm))) + +/// Unpacks the high-order (index 8-15) values from two 128-bit vectors +/// of [16 x i8] and interleaves them into a 128-bit vector of [16 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKHBW / PUNPCKHBW </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [16 x i8]. +/// Bits [71:64] are written to bits [7:0] of the result. \n +/// Bits [79:72] are written to bits [23:16] of the result. \n +/// Bits [87:80] are written to bits [39:32] of the result. \n +/// Bits [95:88] are written to bits [55:48] of the result. \n +/// Bits [103:96] are written to bits [71:64] of the result. \n +/// Bits [111:104] are written to bits [87:80] of the result. \n +/// Bits [119:112] are written to bits [103:96] of the result. \n +/// Bits [127:120] are written to bits [119:112] of the result. +/// \param __b +/// A 128-bit vector of [16 x i8]. \n +/// Bits [71:64] are written to bits [15:8] of the result. \n +/// Bits [79:72] are written to bits [31:24] of the result. \n +/// Bits [87:80] are written to bits [47:40] of the result. \n +/// Bits [95:88] are written to bits [63:56] of the result. \n +/// Bits [103:96] are written to bits [79:72] of the result. \n +/// Bits [111:104] are written to bits [95:88] of the result. \n +/// Bits [119:112] are written to bits [111:104] of the result. \n +/// Bits [127:120] are written to bits [127:120] of the result. +/// \returns A 128-bit vector of [16 x i8] containing the interleaved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpackhi_epi8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_shufflevector( + (__v16qi)__a, (__v16qi)__b, 8, 16 + 8, 9, 16 + 9, 10, 16 + 10, 11, + 16 + 11, 12, 16 + 12, 13, 16 + 13, 14, 16 + 14, 15, 16 + 15); +} + +/// Unpacks the high-order (index 4-7) values from two 128-bit vectors of +/// [8 x i16] and interleaves them into a 128-bit vector of [8 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKHWD / PUNPCKHWD </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16]. +/// Bits [79:64] are written to bits [15:0] of the result. \n +/// Bits [95:80] are written to bits [47:32] of the result. \n +/// Bits [111:96] are written to bits [79:64] of the result. \n +/// Bits [127:112] are written to bits [111:96] of the result. +/// \param __b +/// A 128-bit vector of [8 x i16]. +/// Bits [79:64] are written to bits [31:16] of the result. \n +/// Bits [95:80] are written to bits [63:48] of the result. \n +/// Bits [111:96] are written to bits [95:80] of the result. \n +/// Bits [127:112] are written to bits [127:112] of the result. +/// \returns A 128-bit vector of [8 x i16] containing the interleaved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpackhi_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_shufflevector((__v8hi)__a, (__v8hi)__b, 4, 8 + 4, 5, + 8 + 5, 6, 8 + 6, 7, 8 + 7); +} + +/// Unpacks the high-order (index 2,3) values from two 128-bit vectors of +/// [4 x i32] and interleaves them into a 128-bit vector of [4 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKHDQ / PUNPCKHDQ </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x i32]. \n +/// Bits [95:64] are written to bits [31:0] of the destination. \n +/// Bits [127:96] are written to bits [95:64] of the destination. +/// \param __b +/// A 128-bit vector of [4 x i32]. \n +/// Bits [95:64] are written to bits [64:32] of the destination. \n +/// Bits [127:96] are written to bits [127:96] of the destination. +/// \returns A 128-bit vector of [4 x i32] containing the interleaved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpackhi_epi32(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_shufflevector((__v4si)__a, (__v4si)__b, 2, 4 + 2, 3, + 4 + 3); +} + +/// Unpacks the high-order 64-bit elements from two 128-bit vectors of +/// [2 x i64] and interleaves them into a 128-bit vector of [2 x i64]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKHQDQ / PUNPCKHQDQ </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x i64]. \n +/// Bits [127:64] are written to bits [63:0] of the destination. +/// \param __b +/// A 128-bit vector of [2 x i64]. \n +/// Bits [127:64] are written to bits [127:64] of the destination. +/// \returns A 128-bit vector of [2 x i64] containing the interleaved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpackhi_epi64(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_shufflevector((__v2di)__a, (__v2di)__b, 1, 2 + 1); +} + +/// Unpacks the low-order (index 0-7) values from two 128-bit vectors of +/// [16 x i8] and interleaves them into a 128-bit vector of [16 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKLBW / PUNPCKLBW </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [16 x i8]. \n +/// Bits [7:0] are written to bits [7:0] of the result. \n +/// Bits [15:8] are written to bits [23:16] of the result. \n +/// Bits [23:16] are written to bits [39:32] of the result. \n +/// Bits [31:24] are written to bits [55:48] of the result. \n +/// Bits [39:32] are written to bits [71:64] of the result. \n +/// Bits [47:40] are written to bits [87:80] of the result. \n +/// Bits [55:48] are written to bits [103:96] of the result. \n +/// Bits [63:56] are written to bits [119:112] of the result. +/// \param __b +/// A 128-bit vector of [16 x i8]. +/// Bits [7:0] are written to bits [15:8] of the result. \n +/// Bits [15:8] are written to bits [31:24] of the result. \n +/// Bits [23:16] are written to bits [47:40] of the result. \n +/// Bits [31:24] are written to bits [63:56] of the result. \n +/// Bits [39:32] are written to bits [79:72] of the result. \n +/// Bits [47:40] are written to bits [95:88] of the result. \n +/// Bits [55:48] are written to bits [111:104] of the result. \n +/// Bits [63:56] are written to bits [127:120] of the result. +/// \returns A 128-bit vector of [16 x i8] containing the interleaved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi8(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_shufflevector( + (__v16qi)__a, (__v16qi)__b, 0, 16 + 0, 1, 16 + 1, 2, 16 + 2, 3, 16 + 3, 4, + 16 + 4, 5, 16 + 5, 6, 16 + 6, 7, 16 + 7); +} + +/// Unpacks the low-order (index 0-3) values from each of the two 128-bit +/// vectors of [8 x i16] and interleaves them into a 128-bit vector of +/// [8 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKLWD / PUNPCKLWD </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16]. +/// Bits [15:0] are written to bits [15:0] of the result. \n +/// Bits [31:16] are written to bits [47:32] of the result. \n +/// Bits [47:32] are written to bits [79:64] of the result. \n +/// Bits [63:48] are written to bits [111:96] of the result. +/// \param __b +/// A 128-bit vector of [8 x i16]. +/// Bits [15:0] are written to bits [31:16] of the result. \n +/// Bits [31:16] are written to bits [63:48] of the result. \n +/// Bits [47:32] are written to bits [95:80] of the result. \n +/// Bits [63:48] are written to bits [127:112] of the result. +/// \returns A 128-bit vector of [8 x i16] containing the interleaved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi16(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_shufflevector((__v8hi)__a, (__v8hi)__b, 0, 8 + 0, 1, + 8 + 1, 2, 8 + 2, 3, 8 + 3); +} + +/// Unpacks the low-order (index 0,1) values from two 128-bit vectors of +/// [4 x i32] and interleaves them into a 128-bit vector of [4 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKLDQ / PUNPCKLDQ </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x i32]. \n +/// Bits [31:0] are written to bits [31:0] of the destination. \n +/// Bits [63:32] are written to bits [95:64] of the destination. +/// \param __b +/// A 128-bit vector of [4 x i32]. \n +/// Bits [31:0] are written to bits [64:32] of the destination. \n +/// Bits [63:32] are written to bits [127:96] of the destination. +/// \returns A 128-bit vector of [4 x i32] containing the interleaved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi32(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_shufflevector((__v4si)__a, (__v4si)__b, 0, 4 + 0, 1, + 4 + 1); +} + +/// Unpacks the low-order 64-bit elements from two 128-bit vectors of +/// [2 x i64] and interleaves them into a 128-bit vector of [2 x i64]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPUNPCKLQDQ / PUNPCKLQDQ </c> +/// instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x i64]. \n +/// Bits [63:0] are written to bits [63:0] of the destination. \n +/// \param __b +/// A 128-bit vector of [2 x i64]. \n +/// Bits [63:0] are written to bits [127:64] of the destination. \n +/// \returns A 128-bit vector of [2 x i64] containing the interleaved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi64(__m128i __a, + __m128i __b) { + return (__m128i)__builtin_shufflevector((__v2di)__a, (__v2di)__b, 0, 2 + 0); +} + +/// Returns the lower 64 bits of a 128-bit integer vector as a 64-bit +/// integer. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVDQ2Q </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector operand. The lower 64 bits are moved to the +/// destination. +/// \returns A 64-bit integer containing the lower 64 bits of the parameter. +static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_movepi64_pi64(__m128i __a) { + return (__m64)__a[0]; +} + +/// Moves the 64-bit operand to a 128-bit integer vector, zeroing the +/// upper bits. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVD+VMOVQ </c> instruction. +/// +/// \param __a +/// A 64-bit value. +/// \returns A 128-bit integer vector. The lower 64 bits contain the value from +/// the operand. The upper 64 bits are assigned zeros. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_movpi64_epi64(__m64 __a) { + return __extension__(__m128i)(__v2di){(long long)__a, 0}; +} + +/// Moves the lower 64 bits of a 128-bit integer vector to a 128-bit +/// integer vector, zeroing the upper bits. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. +/// +/// \param __a +/// A 128-bit integer vector operand. The lower 64 bits are moved to the +/// destination. +/// \returns A 128-bit integer vector. The lower 64 bits contain the value from +/// the operand. The upper 64 bits are assigned zeros. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_move_epi64(__m128i __a) { + return __builtin_shufflevector((__v2di)__a, _mm_setzero_si128(), 0, 2); +} + +/// Unpacks the high-order 64-bit elements from two 128-bit vectors of +/// [2 x double] and interleaves them into a 128-bit vector of [2 x +/// double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKHPD / UNPCKHPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. \n +/// Bits [127:64] are written to bits [63:0] of the destination. +/// \param __b +/// A 128-bit vector of [2 x double]. \n +/// Bits [127:64] are written to bits [127:64] of the destination. +/// \returns A 128-bit vector of [2 x double] containing the interleaved values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_unpackhi_pd(__m128d __a, + __m128d __b) { + return __builtin_shufflevector((__v2df)__a, (__v2df)__b, 1, 2 + 1); +} + +/// Unpacks the low-order 64-bit elements from two 128-bit vectors +/// of [2 x double] and interleaves them into a 128-bit vector of [2 x +/// double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPD / UNPCKLPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. \n +/// Bits [63:0] are written to bits [63:0] of the destination. +/// \param __b +/// A 128-bit vector of [2 x double]. \n +/// Bits [63:0] are written to bits [127:64] of the destination. +/// \returns A 128-bit vector of [2 x double] containing the interleaved values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_unpacklo_pd(__m128d __a, + __m128d __b) { + return __builtin_shufflevector((__v2df)__a, (__v2df)__b, 0, 2 + 0); +} + +/// Extracts the sign bits of the double-precision values in the 128-bit +/// vector of [2 x double], zero-extends the value, and writes it to the +/// low-order bits of the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVMSKPD / MOVMSKPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing the values with sign bits to +/// be extracted. +/// \returns The sign bits from each of the double-precision elements in \a __a, +/// written to bits [1:0]. The remaining bits are assigned values of zero. +static __inline__ int __DEFAULT_FN_ATTRS _mm_movemask_pd(__m128d __a) { + return __builtin_ia32_movmskpd((__v2df)__a); +} + +/// Constructs a 128-bit floating-point vector of [2 x double] from two +/// 128-bit vector parameters of [2 x double], using the immediate-value +/// parameter as a specifier. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_shuffle_pd(__m128d a, __m128d b, const int i); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VSHUFPD / SHUFPD </c> instruction. +/// +/// \param a +/// A 128-bit vector of [2 x double]. +/// \param b +/// A 128-bit vector of [2 x double]. +/// \param i +/// An 8-bit immediate value. The least significant two bits specify which +/// elements to copy from \a a and \a b: \n +/// Bit[0] = 0: lower element of \a a copied to lower element of result. \n +/// Bit[0] = 1: upper element of \a a copied to lower element of result. \n +/// Bit[1] = 0: lower element of \a b copied to upper element of result. \n +/// Bit[1] = 1: upper element of \a b copied to upper element of result. \n +/// Note: To generate a mask, you can use the \c _MM_SHUFFLE2 macro. +/// <c>_MM_SHUFFLE2(b1, b0)</c> can create a 2-bit mask of the form +/// <c>[b1, b0]</c>. +/// \returns A 128-bit vector of [2 x double] containing the shuffled values. +#define _mm_shuffle_pd(a, b, i) \ + ((__m128d)__builtin_ia32_shufpd((__v2df)(__m128d)(a), (__v2df)(__m128d)(b), \ + (int)(i))) + +/// Casts a 128-bit floating-point vector of [2 x double] into a 128-bit +/// floating-point vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [2 x double]. +/// \returns A 128-bit floating-point vector of [4 x float] containing the same +/// bitwise pattern as the parameter. +static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_castpd_ps(__m128d __a) { + return (__m128)__a; +} + +/// Casts a 128-bit floating-point vector of [2 x double] into a 128-bit +/// integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [2 x double]. +/// \returns A 128-bit integer vector containing the same bitwise pattern as the +/// parameter. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_castpd_si128(__m128d __a) { + return (__m128i)__a; +} + +/// Casts a 128-bit floating-point vector of [4 x float] into a 128-bit +/// floating-point vector of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [4 x float]. +/// \returns A 128-bit floating-point vector of [2 x double] containing the same +/// bitwise pattern as the parameter. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_castps_pd(__m128 __a) { + return (__m128d)__a; +} + +/// Casts a 128-bit floating-point vector of [4 x float] into a 128-bit +/// integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [4 x float]. +/// \returns A 128-bit integer vector containing the same bitwise pattern as the +/// parameter. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_castps_si128(__m128 __a) { + return (__m128i)__a; +} + +/// Casts a 128-bit integer vector into a 128-bit floating-point vector +/// of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \returns A 128-bit floating-point vector of [4 x float] containing the same +/// bitwise pattern as the parameter. +static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_castsi128_ps(__m128i __a) { + return (__m128)__a; +} + +/// Casts a 128-bit integer vector into a 128-bit floating-point vector +/// of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit integer vector. +/// \returns A 128-bit floating-point vector of [2 x double] containing the same +/// bitwise pattern as the parameter. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_castsi128_pd(__m128i __a) { + return (__m128d)__a; +} + +#if defined(__cplusplus) +extern "C" { +#endif + +/// Indicates that a spin loop is being executed for the purposes of +/// optimizing power consumption during the loop. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PAUSE </c> instruction. +/// +void _mm_pause(void); + +#if defined(__cplusplus) +} // extern "C" +#endif +#undef __DEFAULT_FN_ATTRS +#undef __DEFAULT_FN_ATTRS_MMX + +#define _MM_SHUFFLE2(x, y) (((x) << 1) | (y)) + +#define _MM_DENORMALS_ZERO_ON (0x0040U) +#define _MM_DENORMALS_ZERO_OFF (0x0000U) + +#define _MM_DENORMALS_ZERO_MASK (0x0040U) + +#define _MM_GET_DENORMALS_ZERO_MODE() (_mm_getcsr() & _MM_DENORMALS_ZERO_MASK) +#define _MM_SET_DENORMALS_ZERO_MODE(x) \ + (_mm_setcsr((_mm_getcsr() & ~_MM_DENORMALS_ZERO_MASK) | (x))) + +#endif /* __EMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..0308d63666347140fe2e7ad8dcd92e64b7070a08 GIT binary patch literal 222078 zcmeEP2YeJ&{@<XWM!Hzex&kU-0!iqI1qcYzI|eXrHXE|C*<H3I!QKm2?7er-?s@0g zD~gJWy|)v4JsV1#|M&OG%$wOav%6tY_#gNA<T99<H*emr_ddQqmWSs&>nrm0tB*B= z`bGLxhLQ_Yv3S2!D4FV48>;P>Oa%Ki1j5n2LEk39NFcf(r&~*#Vu^*}=z`MPa3T~; z#S)A6c721drKG4|I+^Gfjs_#?+EBmgl@luZ)r1y=qt(G!ZK!X(?~mR6Coi|%6HG0R zv%mcK%@F%vYQm{xKl*F3Uv+guO)?cog{o7uh<R%yT+@$zOTY3#=34^|&EaS&fiK0a zbSk#@u|47csu!fgwb~u+KcU}(NSglC`IS4Kad{Z0noj7ys4f(sza?!ul}FMLNY&f^ zp#Ox%=7HrEb@B2+9$&)FhrklGABubx`+Ln|AV5<fp8cK4RBcTx7NHw64vj4pk0ry+ z71fb&gKaU}>jJ4*LpWI76s`>c<mqTClrV4hLd?2wBvf6Kh&3ho17$bYxPUDfPluy* zF<RBcC66=2&I1u3V0L^+rW196paoK|?be4P;bz*xZFe1H-)E9uw7~pkq6Y2m7Su(< z9=l=(&T&5(UeFkbI1t}<=={D^xFM8KZu8oIs4>g{-TtA;_U)V0k&2~*3{lNPw!N}0 zUK)ulsLB4F0fxzqH4R>0n_Qgi7px7{=}AUCi&P>VOjVB=H(|8x)pBp<_8Fs7QAFOM zEEbH#7KTIB;aGKDIvPxcW6`8?d@3Jf9D!a~RWr(iN7aEs94lyH-_+2M4fFtdGPN*y zsP-$<(J+Wr`zPh|^c+*316~jfFdQ(Msr(aLBN?m@Wqm~xJ|mY8j>qD`Xv*W8O}K%X z)p8EN@Xiy58v;RwFmLTS(T>DK3EI;!UxT-V157@c=&glRbu|teh*{kbXs!-KaAy2- z^$b$VDgs`}c`&xqT@Zq3PJu&m5yC*=^{vT9`krq_jj(^H`90Vr)~9>S?~(5#+F~2C zorv~p>zb2bUKyNHd#|ADcm*B^C6Z7L@_aIqi*zGM4jN$Fx%@8k+k=sCye1Y%=!H2$ zW=M=wv=lN4NSIn|TTc6N@kCv)UdOPscZ;KlW-xRwh}I=Sq3Q*Z#c{@D`}phakmWQ; zOdt?kn0>=y3z3?->>2~GlLTmK5d1D>=eS;<2M$iK27=IbOakzDBwW`JXpCr{ksxFr zX_2Cy5lNzo#DW3n2zFIR`*yt1M0j(bws%5$)diCFrEE7q>8(wM57l!KA~vRfWNg^P z$%UcCHig#<6H>s0WH==>rQeJo#{})C#XTj5`TB-%QqK&`JGh=kkj!8h3!>?MP;P6I zr7n~gNH+8fB@$6~2EBee&8{MI%nhXuX~;q6lw5?#huTHivBd<edG^|KYK#XX4e7|D z+C>`l(>~D@2&du;b&8_)_M{dN+FS9BnoZcyjcL}^kO($Pm$w9xP>QWTdErtd)Xb&l z_FskU3<W?dT@Z?f65${RUTIAr$?!V^f+mv0;-TmQrXyq^i9)*3P}0st<h}{9t2t)( z3&g|pZHHgf-mX6}!DW4$tGaC6XHvBGu$z;C#!xWZc}t!`3frIox$qPKv5_<QA)3Xt zTM34oBGC(S^?_u412@wK)lTwY0l<YYG?7C?ntjNVHz5c<lqnjuyOk0|OEGd?PTO1u zPc(re+eMSS&3rvsb<jUjA!ae^kqEm9mez*?Q2R<D?G!{;HE@A%jp0Nr+5j=G$2fKu z48&5XUs_UPHwfj65uNrfYzd^I{S#Xto~ln^!wic`0|{;?nG7l86lx-naSd+%57N)l zkj1G`v&WtxwE0W5yOIY^f7G8co)0h+$M(DjCe-DEUN8a8S9&3LB*|pKz1w)nwnWNl z6?rXb848gKo$h1`s0_Hke*wpm?HnY?7<4&vfE`bkCaLlnDwyr|WGDjV*L^v1_&{@s z*x#r<c`&&^f}N<z<ZQ1Z8C4evEU+(SyG3#~>^qCofEFW{TH3yvc4L9stRl>IYSq<{ z{?#?<y6RNG@`ZST6Zh6}$#wALk#@<&kUJQOCCQ`Ya3X4Vs};@ilyJtu(s&{Sqs|61 z?Ml$5b+SZzZ*{e4)>m`wgVxsrvM!P;4FNu-4WU$hOmAjGaZWd9)3d~>hZj@}$D17y zwHs}!iN?awMi`74%Dg-z$xo^+o@25V?V518x|nnN+qqMSy9GQY4nGBpWHXeNOh1M8 zjfnuh*(r}*wGAl@g~-pz=1DHdN+UvUz^4GCt{U8~w03bc0Dq|s6D1HbM2&fu7a>Ig zbep@UfSmYrM;3T80BIqkJzl1EX%I?#b11qf*x-eJ>X%!GmDA@Z!wqp*iCj8xhH`Yt zTn}~1LM=B^jRoL42*w&3VqPi%`Nqp#ed8J0H+@V7E?Z<ru3Q_GY)C;~kqqlpd(`Ck z0QP1Oy7uOV2DrH*(CX;T`qSY22Fw`vYiBj~4YHt()?%0UaX-0T_Q<~}Vz@d7UvDG) zPjKGa&P)4&%@hlBoQ4-IO)O<T{^k2RLP%_XP}%B0ym}V_yMu>jsy+3(?5@g2xUH;c zhu3x&2a?fnJkC|$%dehk7o%)TPzyqhP@kR7AFpK@wCQkv(<)jv!5^mYNhISTJ4@3- zgELuj5;;KP%9c~f=16Ud!jTyWEm6lLp+jP@JHp&R@#b|Yt-he$azhMaGiQ2YOc6$X zF53;Hg-^+Qufa%NB%Q4HUbHD#AF!fssug9PPJOsmSmf+|Uf>Vah7t88_`f%%&V!M1 zaK^pthHS3BWU@L_z10FjRki{=(rPj+?E}q21}%u^3^^(PgIT4NserjV{LMq>{Lsdx zGSD_238d;`3BA2+uCyo}whM8&jwJGEy20Hr6>11=B*Qq8vFlO~&%5~&L?zvro4M6w zD4OKxV`8>#vx-Cs*JhU~U|{6DcHF23xt6Zw%gqg1-ZlLOd9W?xL$$BucmoGbCWF%6 z-w52z_1>`dbF|Ac#-m#}<Ksz)g)JLi<rNIdHs;P$?do_S5wIr!X!nq;*RgfE0ggfx zv`Uq-;EW9!wF~mI^`uCw#x`tQOuo`|Yis|?He{OW@JB`B@JE?(VcRp>?FA#Xp@vv0 zC$C&27N|{HGF?4&6D{N6<`DN8WT2&a&jP3)<T*;jA`yqasNExuutI}w@`TKF;XCmn z*&O6cJl5pckbH?`9y*Vg+oq8U(-@%?0^RPl55dY82EHj4oEsn(DIDT9=-Th&D2hY# z(ESN*O5t@DV$$TP+MU$__>6a(8`ItfP`MbNw*BGRhEmu(wWYP8U<CeCgl%kJqg~wP zByB6(C_iN<c-@Ucv2-wId8dh54Y4$jI+$3k-61|dN~jIhJ}31F_E0jgAXF1$3cL5( z@O{LCVVz{xZY9onq=s&^w{td?V;~E0Hs)ny23<}{vv(eidCc_zsGa%{Am{7Mfn5qF z4Nq99JJaMhGiy%SDm+&<B$H6K?nZdRj)(FVmPr$8qQ_@-|MV%AT<39)HI!ijaZ2}_ z1S8inzc$eni?i36fS0#q%Z}q%PRH+pxa^Z6G0K08rQyi8eYbYw2por?GiPpFdv`q5 zln863hW7Tzp*iN!G^7zvpv`6+iFs<w5Y!)=c~3GJh-Nrl<>6A~BAfS{;&w4tw}|x~ zAS^rEjO{W2Fs5nez}n+MxQkp9xhr77hIla89H`A1UV^+qhFTKW?n<(RM(<=9d93E4 zz&XqbjU9@Yjb?eL4mnxmO?vJGhw7aa$=pE9lW0maxjhCD!3<0+Gw<?vtxIl-+Y|XX z27-xT|D1ILy~Dx&c_Kw7Bev(ZS*D?AnU(g5_(I{B^X6+Fp;PzpmWe*~;6Zxw7EBFM zDObv5w@4j;yw!GZpZ2RDQ(y(>%K3tkrW(h+UMQZb4{=}H`TGkmgoGGa47Ouq%<@ml zSGcB(3VfzDN=@aA@VUtEE}fbcW2|j^U&r<>H+S;2{Jm5AmKX7RC4QgW)z`A5Yx|b- z@cV+U?cX!5>s~hE@t?0-1&cY9i2562;aYz+T(0o|G@@Sg&)&Z6w(IKijYDo?5UK7- zf2ux^@(29McsS~h#A0!OIO(r}g|WboG>;%Se61h80^Anz$I}VKv++!<uGsJQlY^)s zd??+@RB=C)m}I&E|1}o%*QOy+7qG`@)xO2W^LYH7!u9^)aFs~7>{DDkqaH8i|4xR3 zSSJA}$79i2Y%j*v7#`fmKV`(s>7)I_`{6Q-tTIw+$Rq2+|JwU}MJ?xaEymA|MReuE zPcNU(*l%F(IcHwdWg-P3v2r+ySWn20O#kwVA^d29$k9rM@z3gbZ7=?ZFm4F+_LY?Q zi&~EFT7{oO+t8J-<;1RSe52?AoERP{1zc(0p#`CYpDX9|&zSO825p=~X`Et1;wE-_ zb^f^({$@WH`SbHSAmnlQqcP>2=&02*!D%xSnm&YHHo|4MeT(NMLZ~B%CY4*XTL#Q+ z`z2tfV0}v<Ct)Vin{Xmc;UsV+K*?rNKX%GchYb1<rJn&(#u>NH9(viYHRFBliwJtg zzx&@hW9qzvKF~pl;jaRuq#a0o`T$7ju5<9y3?QWeq^80GX#jx4j%34tk+t2m0@2@2 z?efUn*}Lp0LG;c)j=glv%|E`V1Cd2Y@uWpXl8Cl1YMBipn%y-8_{;`;4%EQM9p{wq zv6B{IoBLyb0cp8!#`=c8h~RcTb+0|9w_mltgy!<w+KxGJ)v3SPp-Bviqy-`np@u+m zp#@7om^fn3o;w${Y}s`he&PV;mH=i40CRM6DuKiwPU&!-Mu`iMlwhRK862fU1j7_U z^TV=BLx@1$5N8l<l%Od%sDsm#_zw*wVx=U~m_WcYY=shkAX@8ZmJJq52}wcgL}E>) z$gKrWw(Wz(<sb$iGYTM$W=)(tYvT0rQ!4%a{N`nbaB^qF`j2(etT?NtaH`&Koop(` zSZxR*nw>m~C@e-k0|#W?T9=45_(OqUy(>77TEvpw2q5zU1n3f4oemZ!PRGhlac=pr zviW`ew0Z*A!8t$s3(R}4d3q&u1+ihkkf6r6{hC|$pMK4u$9^G^@6}!AK5%xQL3`Md z&lJ4^0jopt@Sp*9W?xdWV^Pb>E>-wx1pck;;%j-OOB>%r;44QyKps#ZG{6MBtC&`W zG<_~`Uy<S*=cH^)Bi_kzsZfYBl_Sm6Ol`&;VeC7E_7zHi060YK-%S7^8m?7nqE^Lz zjnKERu3J?Id`7ek%6`HvIy)j`+jjVYNif*(gRmmW(Bh7&srx?K%XfQG%gbHn;pa%> zsK9eoa|X}<X_J<o`w7k9p{^e`oa#U0b5C3$M6u8XuNCTB_o9}^fGm%7IULCH7?9-& z8?p=<!1On<b2=+GY_XvOeQ{wi0_>x5PvR#z;e*&V1A#*Jt|}fQSv!Ih8kAEPhQI0d zS*O*K!fy*t>ik49m~@9)IvR(;7l{$r`d6q_UIOTmc1}uo4JqM0i(1YA6wl~#B%pW( zpm;W*IFmhZ61`yey}~H$YWA0vl=qg5i1EKvQ%uSkA!MWtGnYg&b}*j_6C#2{B!uj4 zwsHe;1r;k4o-Lm%2uGMQbJCPi<0n)STd=N4m;l*w)9ZCx^UsSCvW_HSJhwmbZ$Hsu z250AglHyun6t)Eh^&iI0Nw>n#fx`w3m~V<0WeLj=siD1CSh_YF9yEY$Wo>p`UNLys z&_OO+&a{a%yLF0c3wfjz1e<GP7@xlM@S^u;Z)IHe;=QvMT>8^5l1LhNJN>%tO7CmP zjYx)g(g-+R6=<Z2ak?tdNOe{kDIJ_Mjg$`}A{ml5jmYN;Nh2d?TQq{}*3yW%H5-Z# zb|n$^7lCi^O{62KzP2aJ2M(k2(a}al|6%18qUjzMcW9sPKU76^-P54n3ecYR>45`> z4ZyxUHZIoJK0UZxrE1-~2MiuIz>TX689ZzV{^s#+u{-U%%gg$!^r?F}7}7u-tp4%x zp~K3{!Pf1s&xISAsA2I=cf8<mx4$G;#1Me<c-RXu#L;^^?S&ZP?7W`lh^IZ>!9#}) z&Ny4!XL}(AgvAhVr1V6L^73KjWtOnX8#BQ8%PTSv)3TqmB1$4fj!gg6RTrPN?d<pZ z8fQNmx_8kP;Y!K$J02JA*0S>0E3z^D`fzTVQ4eta9!xXp0j|G?gX`Ca7u4HTql%LL zIkSDK;;aX%(O5+_qU+YOefddt<}I`rEvo0H8%b?KyTrOsj=Z*<qju!EXZc6LAhKDH ztyhow-ErsOlUmMt!l>?f-1d=|k1mpw;_q?EsGIiM^gwq?Aqyg%BswV{<f$FOL+tNd zg&%U``#bwudUS>xpC^7K{pEw087TZ0!VXR{<JMmjgWpB(=qKqQOh*>Gi1~RqARTqA z#QjvXS#GXyh9#bX=}Zf$=j)%v{bLJI{s(ge)^#B2FKZq%hDo|4wf(_=XSO~4*S_+8 zR6!<bEpdNYneP6wvcf21BSwv%Ieqp>(#7Ou9=<Pe$g0C{2&tIRlluBcle0<yMfj#D zCWS&@_SpgUkqB6Ef0JB_e1W(NmMx|8@Z-U`>0#n0e;S>YI8Aa1%41wt$Ii@fYkPCq z2SW@BhZ#5rZAh`r$g5&E+wIcYRhN-Rq7dcA)770WiATG;kj`8v6s=SUEC_SJG8=G( zzqmTwrqg#uXz}KoJ=S5`4wA|Je%N#O&)Tv6dpnae!?p-=h5`+!4~2^aQ1$nzu8x<G zQ-XWAcHbTD_@$jT$ItHIY-b`Wd`_n}zUjyjgaaes?_XgLP!eCk)68E-<rCq$FbJgq zDW!?UKsCgJxo;eJI3wmq=@^A~L;fHL60Xn^_FQcs6(B;R9Qp-#nnfa`rKrA+#}a{v zzgHR|)`g+SV&*tzr;gAw?ppwtu|FA$MSB;51HoA~X~sBD_i3EyX#_&kL=Rx2JdiBT z#PQL7wnyBOq_blmD*bDYII81J0d6%4${ylh&X=lX@c-uypZ?L<_njJJ-mPa}UbQUo zyoCSKS=Ws|an&YQ+TpK;r%gwh8J%Xa80jUWe=si@Fkv-x!PQ+T3c4D);2MW62v#Cg zLE%6&{r+w)GCDu795qUvuPTTr9Ieut7`ICjz%1@6V__HbG7r(CFhw;)Xfs}59Jv{_ z{7+h~NFs{6pQ|-5Bt^{CwdU!kQr?!M)pAG6A@8<Z*uKc<x%X=q5BvGGV<ejH`1<ns z+r0eY5IdS?vMFdvrXt39mF3Gt_;B~#p@|*QX$F2M7JLNw)zK=y(koha$2{wgwV`q? z^6^iaF=aZB{;(@A)YWq^c}gxPkvl7s3pw-!9ZQ4yg)kuEio_l{Py5fjt&Z)v<<fxh z)%{mjhL;U!kjV1lPn$eCyfS{5E3#k-)byy)z3Q|OZJFpY6X-INq03C5%UlaxwCa&t z0LSEGh!oAow-8ebXe8fS=O__`CrAL(MSk!NAa==Qwo^W_EUl(+Bm(s$7z#IX8D&!s z1-qtmaX^%DCYF3->5QIfLAK+{5(}i)x`@5<TbDmL?T+!M8ZX|u?7qE9Dn61ZGVg(( z&zXF{Kfdxpku=mEg`a3p1agmYl+QcPX!*P&ag@(H`dYs2sAxbgC=O(XZIDK9LT*Gj zPP-5a3L(Nwi3oI&FCsYhL}pzIc8dc8Oh_}E5#c}=DP-QqDoC92fUBy4##!W;sV!f> zv~nMRq<*3?_JOH=PMY?)A>p_EZr!%I=k^cB*x_dqFCzHJ(M%AH59vj9qNJphmH6dl zxpi4#UG}#w2UwQ_t;<2y<zVY_h;=#Cx-3^;r@XIRd11No#&YGA<pU|~h_t2qfll{# z+#ZPaZ(KbB#2Q8I>?rZjJpqvPb5tm^?ny97qaawS9Y=(mGE#_InDyyU!j)7)(xN#) z^1?&t<N<#=6^@|!pkLOMF@3Ez25TT1O9ARKuae7DVFLtdQ!Y`)nlk$12x&+&G%`16 ziW=*SMXrb@T%w?6d8^jcx!RRQD_XUvHaMfK+P_t+YCZePssmcLsxB0ytU9n&t7_v2 z%Bq7}wW>Doq^vr)RjX>F7RstaTD7V+%%!Y4v~{cMVkF9{<*lPEZB$KNwspj%jmfCX zwvN2?Q9O0s))82_J_w{P+&UU7&l)!@ZylMD9p@c(irNH+UUPw1?riiQc2~c>`=2`6 z*k<YP52v@;J8e9Fk^jLyW$~YlX|G&2Z|75wKgn2h&<iL3Z9-zDam%iMJf1kP?0w^w z`cI}^w`%3yMz8;V`~KT^E&0i4Gj7pk7ytg#Dr5NJ-F|*{^uV``{YSOj@zkel#vA8< zdgM30$N#pI@x<MO_PXul;%P>kC5P^`->O^6jQSC)g4?y*X}B?e-ojUAwmtf$qLzm` zcEwL0<LT1>-1f`z2O~=U)~WrjzkcrLr<HhW3gz4yXzoQdaBxK7|EjAOkr0Mg!{|_j zAM$D#9egcC5W?e3`HD&fa?lI)1+vyv|7Qu5P>qR{E!US&woT=Tl&JMU=q{pNj*|(A z%xfq8Q;MV|Mc?${WO^ikO)R64*5XbNHCZedWV2ZTTxp@>rUlLS>WoEyJQ1UYGEDoS zUCP`*O8r0JmE*=<vFXfSMJ+yHjjv;0<Gx)ky1j1v$=fPev-rHocgbk)8J<`p0zYU} zk|2L*6LdoJ8mgjs4Gq$~hL&euL;EwYp%t3f&=$?>GNB3H2h_W-18IW)!qtNv>_|x8 zC;}EbR8(9}(hqM2Am~vGAH^azd`zwf2-(ENwfsoi{@j&7#`3Hj48j{F&SfE`G+COs zs*&$oAPTHRuIw-2>^skwka)CG29&R`QJ484T=wMo4kT6R9ew(DaKV}9JD@-*`9N8} zgA4sU-vNb^@&q$ElKwlmzLMuVpkOOGRaw7-t6F)!1NKICkeeP@Jww%zzK&(Gn5GNc zq-^QUjp^NXUX%QE_x+9A&U^RfGb%rQ-YA;<?)krkUVG4ZVW+3BI_Kce-!a;6RaSoa zq|-YY%P01^ZSsxJU1Rip;HDK_k6-qSaq&O5oO<z#&+N`E_%<#5!F>C7EJ30*a%ypX z2ER5g9y&0w*|&X;&B}R2M5?+v3_c2m01g}m7Zq3Fq2fw%(4`RLOFNL0W+^!6xf%{C zA}d)qsLbGS;h>K2%z9%-hXuLn_UFw(^Wbe^L9h9}#5FxdORr%;ulc<Ld?yc{5Ek^B z-#gqgb!?xJJH48S)*5=<)HvaZAs>7`>FuqIEv7E4zjMHO%Z&Qf^J}+T_`pAnBX?Ln zWahb>Jtb+eJLs>wpv4%jV}cfkpML)iw<W9J@uWqjJ6m2hp|6bUSk*F$xkN|7b2Y}H zG^6ldt1~Oy%FK7uE6&_q#i(mNP)~ToP5P+Vu5>iD4iskB6Qd)RN-`m!4v9SV<Zrfa zIow}$!ofu?l|YF~y>&J8-P>N8YixO*Cx%#|7FHRv2)r4dT7E6Lb0fHOBje7E;LeL3 z+?g3!YS{@Z-m`2i<rFCB$YLxq!^W=Q>I|;+LBU-lxSDQ%Zm480a^mU^fm+c<)C4Da zGK!CWk>GRryww)+5lU8WZ_S<c$*pR!Hk+!_#+Y#K@$Gy3+j!sjATji){oX$Li=vk1 z4qfr1vGv-tbOCyI5!`PMuIC8u_h9eMPL4gh_bN}^W-$g{B`6SDLGE&5hA0@E1!g#_ zBNYtJ0y8{tUApmANSbc){17~=w;r06)%-vy7t~>sxd%5Sc0(sK2};^DItt0Ux*Lg@ zt7pMU)6nF7&#0W{nUSw|f8ntocQsD;ExGip!B4(f1dL%=V@PhOI1;39!4rwJ-Y0NL zn>UJaN+44JoHEdXkSPF8S-X)_in3WRFO?e_{LgdBbI1Jqysz7w{Gd_Q<?P}6jl2JB zsS*l)$;>n1C!=fQj$?m5W&3ac+s7TBsqLc-okQtJl3~WmDMbKXcvX7=d3$x(8ECu* zu1bN%yoj38l$qmB0jtP`wnfaPd)g7DCP{?gy3~BYs$5;NdFhQ-<dS8gkWxV%VJOI6 zIdvvar=g3r4YDh0n#p@)WZmRdE(zgIX~`?Fg#}8k&z42A-+k<ne|;dM=;vG!srqBY zGoN?^Q=~!IV9By&gmn8G;P<x<I|7p1;cAB*At^H-)+acQkZ>H40~~=^B6&ke@XSc* zQDIVefZlfUu+^QW%@`vA`o-H%|Ko(p(a+ies)!LJMg$v0x1nT4cZ0IB?nN!d9S*|J z(Ew*Lz}emeC!stllR?jv_>Rn7G|fxdJ00lMaLRNcq7;gWBWXT=1I~jG^XX}z*{Vo0 za{WXqt;w~if&Ob1;-=G7=o22cBIB{X-(C8`SKl8dp?SfuvF}~>^RGwPp~>7@b~xJW z*QrYi;P_knY4{<3*Kh58EiLUOgVn>ae}&SqLOC4M2_fMqTq5fdj-sJSr6&=J^fAp= z-QXxcF&{YUzt$6uZHzDOh&;dj!58jiq+fY5u-~iQf)b!#9s1$fcib`9!=hlsiCz*s z^GqRJ-VO|4{jz-(eyE?smjLV60P8f-KP#X!_WVsKFi>;#gk)p|Ex^HWG@ecoeaa>j zRK`Lm!c`{aZq`kuKy7PWDYY2#TF?#~C8k&x0^oYelDl_6hI?Xwy2u>GpLk)88ih0^ zse(st#;3UecU>`(edg<5-ik+(D<y>Qth)R03A?_qx1D62dCJJ7=LzYyq*Kx2X!qTb z__Yv8rwcnp0p*2AI*nRMr<Tt{Hhbdr1y0zDgm<21C1fmtS;{Pj+5}w)f1I(N*IcY$ z*~<=;ktgmzL4mJa3lj;BN)q!0Ka4o+*3uyf<GStJt$B3Yt<A!m``^0Zr=_2Lw1XX! z)C@<)EBaRmUctnI$tB(amw1P9iFd#y-gDy;CU>`U3CMVb@QE9^vI(mblc{nOe=Q`l z$VVLL`LzuHXQ`-?r@<)u65m6!P9K!`RZ{lfemvmX<L7-?=?RY%+Rv%|WMKNB>VUOz zTmguzXixQ@D*%xf0g+L%{?o>|X%mdJ=i|^x=&F=0cgXr<Aq_N26;q<gC3k5Mzegkx zO(Dre8fr#Yw1U_<qh`%O*+2!Wg0`;7+5zKm@dr6FycK$}J~A6KmS3#u(S(o=X3QHp zRX07;{;1*e5)x+DH2w4L>0_$BvxHgv!U`q|qh?pQ>~>`?yItY3>ydx_!rZt%ejyMw zfBkpeWZ8y^{g06KdR%P&IT=3=tYDpx*paPu0OR3d@AO#sUHHc$#I{&`%Zx26{<-3B zj+{4phYKF?Bx@I{MsC={pz4R)Q*PM9pz250j;aeqs0y9(OE0HHtBKUKW_dzC!Vgv} zD~Aj;iIuR7OG3tDzrW$+NA8-l|9+BQOGD3}a#r;7k9EM{U054ajJ;OJGn%jh7<aax zgCFvY-U(pb?FkHqXL<(9xo@F>Q8~4O6=8sB^2<DcVL#$rSf!90Zs)Ha{&Vl|cFN#h z_dY8Rf56MD4qeu~$mi_b9H|RMgI4S2Za&|bSR#moe#8JMQBr7<thj(=Q7<{VnHBT) zhU%Sa3PC23Uy$Ih2#X{FkSHcXTYBo#%p{f>SYU+%^o;$1It+n{VO+ujTFUuMi63K_ zthUd*u{cBp4NIg>)5KEn#>OzlbFlqTqiOV(W=Wa6*)(k>iSZ(#MQIF><2Mxo6()=s zJ!zCz@94)n6}LRzX=n6~ejFPA<DL4TEAdmo0Z)DMj~UO{=|Qmyg&Uw2I-uF9QkW5C zWr!7=)BYg*kkWAuDB?VoB1nkVg%eQqko1b4mAy@s50q?EI>;W9$}OiDI(xkx#)upJ zCW3I&aIo^C=U^IzA2`oMERDY3gf%qdwh-1N=xTap#q@D--I<qpkeDKVl<(A4oRM0~ zL?TR793Gtk=WA>#qpDi!kH(uO89)4{&w;m9Zau!YB+28q{VYB0ip8Vs@VD6jK<$)G z<z%hHWpTFI!VuhXAw<<eCaM+!7orRo8W3CqU8vnzE&m!L1zw(}YAdp>E**e$-r5-z z^N`n4xgRR{VLR|HyqxcYnwfinqn=RAX(>8hY9NBY!q1O+!6;Y~_a<pZPObD%0BdkN z>(N1!9Y}<eXz9B+9EzY>ds%ZCYZhM@h$KTLtZB&@_CMZ2K9Og3wRISFum6-$6Q}Gy zgA5aSl?Te%4@-&0JL<MG?#tKzuN)6I4oFLGV;uG2Hvjl#<dr)cOI~lk+x#gN_ZGD@ zwC{?aGUMJJmnCj}^nni)1?i=+(MZLur@W8@4qBzxFncmk5bS6aP;e9z(4&BYWAZ{l zCE-V6phQ2y2m4{=je#cm(OQMZz;%Iptnm%Q!jZYSN%e&K=i}ZP{jU18Z2O&0FgiTC z&r6S|E{0?p4cr^uzOS+8=-Km%j&Ivb!M$USI;-Vh&24A8;~uI!MePQa{qqbAVZn8V z1=pEbaGhbnb#+*9u4NkzfncT*5!WK*uyW;9&rV*VY~7e}tY%|`l*@mS31|9F3uD4X zuiEv~`ua1jD3VD!x)ck^wA`@-^N$wfC?)%WMfGD+vL9GfMP4lGPm+?h{!kkQrE~s? z)=aXChfHUZsYj@SvS0mfGoCv5=lMq0Pm3>@fBvSTdw?k}Swh5&5sR;!*?x<ybHKhV zP2!-V?EviCfnnbcz`mXH!ajTbkChFmXZ?9gNaB5@qpdsaTNh%I_3C9}l6UG=jY;C! zGP%s*1+k;cpD!ktzSV#C?YBO8mQlL!)SdfJx@3E95frr?2w{0(`!a@kyZRQsK5#<d z5j*B7u_hR{l!yb%ko`wzKOEM*0!Y__?iDQ^6A;BM5R{v!u_htn%;R7=R=isi%tzRb zcB9dOYJ@UeoaQAS-IQ*m+PKCIRanO9y|%VnZcR<NnTNS}pn6lO<o*m=LpCIX^(*=p z)T1%Gh~bDpTCTX^WI0?u^T?zU4tnE;7q=aB;lAG)b&ro)vE=HV-;}1{HGw;hyt2b# zBkaI-n1Z22xtW4LY+2Rv!<OW={9#L9%THTUEF!BZsFQA98aU1Df)@qnlv*r$Dk=tv z)?TASr;d{A%48coRhn#cwE>xION%b~cKkzIZE0No{GhV`4*2>Hi58=VZFb0RSFAob z2eim8eLetMe8AA+1E9snxuJzl?5s1iD7=UmJynVby4rwH;<cZ;fB(z86MiwO&gp!6 z*YD3bL88P3KX!d&zk}}n$sHw<2}k!U3R9}~dJtZ^6q!-TM0fy5@xYdpM)UxX;$a}g zG&HSDVW@7n4ozsJ>qs?*SaAmV7aj6I2m_*WnXgfUE{(X+GO94Ix(2-xp}x>$pT7RF zRs(5s)K3s;Xw(F(5bnb%)2B^fLoe9xR>R-P-jlI3eB|;o6(PZnmJ2BT>5$W_sXmMj zwCsE5@_v8(fcRnAkBHWS7)e+_;V|I>28+p~=986Lp&ctrBQck|@t7m2>oF$`d_FN| zsB!bI3)>wr`Kb>j3icVfYyWMZST-js3fdFb+)(gBpx}iJ1up~&UgCy=b^#@Phx$Wa z?@*A*C7|G1NTvTt6g+;HxxcRY`0o3SiM@wx8-4bu(<BOxoYQb>`=Q5PmK6ov#iGgu zQ$WEKL%|eKu*nSt?ZR-wLO~`6fr4ux1^*{eFnx5lF;^b){z*pUQRB+T+Rrq{>r9J| zdvoel2fyouf&uN61=w2<$tM26bKVp9*K<n>ZTAHJ?V-g#mH)}miJtvQnLuo?RT3B@ zbR&=jGPQ+egtNtvc*H#q*Z}K6CvqhVB&tUUK8fFdrl_XY3Q9SOP*)aHfQ+;kyFhlA z#&kmKR3M*Naq(SGElV~U^WXV(_fJlLwVULIe~UhN!X@{9-t38rWIN`@4Z8pvyD)Cp z1=!e4i;XHP{QruLf@O}_$TGD}JzW*YUF%nL>H5<hcNp`wzV6F-?4ivho({i#&2J~p zF8<mJPa}+Fn&}QA-kr%ZZw8Xy%vk2lK+;>aND5xH(QvW#kI%ty*-*IQ<(oGeF9tvV z!}x6CKR<e=WuFHmmL2>>x6(;Z?KRp9%eY{6vcpU)`=hw3<&R<#%zqT4Ih+>DHnPH; z-0ZE;9yb(Jyt?w7>M4`ozuEZrR@a?!eDIYziHbGVoA0%4=*DRts2It^S@R{Z@ylXz z)_e(U{HC~#Z$hZf?yFJxT><6t1ar8<I&#xY5N;a!{b%ZaE>0{ux>mSpA|^Nr?WM6+ zwmWGK-*>;oub;c=*Tyz|=X9HWiT@^vdUDpW2kM1VRL3C-Oels#KEduqEz6NwvAiSI zpe;wl=sD_V!Db`5_oT*gSuLsIt}0l4$ehX3Sb8o0twRhmYl@hKwFwu?C?jvdj}#NA z^rXA9P5baaHX7QT8qI=nshw}Q{Ho<2w0N9mBv;MlO;GWhOs2dEDt>1p6$5a>{L<=~ z>q2L-$Vnm8LK$$@;&xhXY<tBqH>`SdsqykH(`F1zPn#!cwO#Cl^RGYm(K=7;%H4ju z1_*Wy6BE|}!LHXK*gDc#{sb|>jj{<Fv>(et5C!{4<gB$b-&)y@dIKuj&hGxh`=gCr z{@wGMDSO^IQleh(l2^W-H}}_BcGP2vFtX37guNk<Tu8WQOaBx_=nFefYgyQt6q1FQ zdf33G9>&9nrjy@<hZ3a2s3GQPEx;5BmTbU+Oe_JED9|iTbZ_lJYtA)0$U)u&nS7#F zAbi#$?U~kMTPR_iy_5<cqR1gOx5not(m*_H7@jSxLw{46#uO$5g~W!5)5o)nPI;*l zWUW%7#ThfP#tsx8fnsQUYXYT#6hxaR1>_8TTTVbwA;6<btR7LB9LPggtbZxbu|U^m zMD<M7Fpw1e14yLu+P$v7?R(t2OSUrWEq9vt#;k*?R$Xt$J2l~<IhGKriTPjcVN5ob z3?a-qu)8|O?&`qq!eDn(LJ6cNG?2c6JvD`qYaVJ2M$$=|YcqKoL&>I?i|UtOH!Zhp zmMPF!D1V%O6$IKbq}mJLt6d;szh<73XNtLMfO)PaF=m9z38@Pa#kig^PpK6+3iigb zas`j$$?Eau3znXJYKJ=GlIG3tf49dcamknZzWc9(dJo!tA9wu72|czeYMBZ2m|0Bu zPcwlYbM)x(Cm{vLiT@##5a()21EFGNB7$+yp~rqV?3;fX&yLw-Tx9zzZ<L5I`9H6G z_SB6n9wxLo!4N{q={K}k2jdn!i(0P15W{QOK<jHT#PIsH9%2Zhq>o}l3|Tfg8x#wL zHi0yTMlK2)NW-OCZ)ufivd{}7Yxu;%sme6#3G@%*K-i^Ho2O>fIkF>ln_KJgg|vVh zn_8O}dW<h*ugv6SnzuO_8rdTpe71y$;2(ROc5B6#hH>@@&Ao;W`sGlGqe~ZD|9tPR zBZu3Wl~khA$csav)S~KStr%XYo3PolCvr7k-*g&&;^0-UZ|ZA#Yf~k2j~Feh<P*hu zrBquPrs6c-PXN)XQr4+T>RsTsB72AMlO9hgGEcS_k<T#8izP|g#&H5`)k-h95@YG4 zu+p-;){ChxR1`+73DWpnqy|cr$`X<kQ<D$N#YFv=xd2cT8=ircH3@|*MNE``m0S5@ z{&98w5N0m(+#>n0?7V0(Uf-x3nUqOM|D?dA5`Q^unxjgA5|3t%nmlpbbc$!nt30#- z2a1a7OtorJ|3UZ)`dWT$FaU%`>w-2M4$vu>l2_xdM*J1q2`HK?rh^ehE&y;dsw^Fu z{e88FK!@UW2vGmEh``F}#?7Cyed>UVjFVgT+A$eBcP~lw_g-<vx1|dvZEGibE^uTu zd%V^vWfz6JefmHr`Fztk_#ry~9CZFAqjT22h?^%ws2LD;P^{UH1ps6W+(ots<lz#C z7EXc&BO!$r><iObaq1{BDMC^@KSPvZF-@OdtdnSJ_YW*agsf}OiPe+oNJ{oUq2dGX ziz}S>5Ea8yD$V+Qe!2E!Xqi-&f~=5;_4)81Q<<y%)C2|-=j601=gIR!=R|HlFXz!v zGr7bWeS7vl;j3*VHlFk8+h2bF?F;8;U?UaH@j7xsMjG_ZQB<H~uU<$$xwY*<_@O%T zTig0tZf~nJuaT^D9irocC|H%qZjp2@Fpy42vSmU-Gt*x=Z&s6r=KqCIpajBr&;9mR zmju13?8^*7Tdg$YrZX9u104v~+uykRX9w&(=_Lv4GkpX9HtB}@-n7G7svD$jEC^*& zHefgRfwIwO(+Hs62TZ7RgH<+cB}=j@LC8K%Vsa{_s(mokWu2)W^xoVgPFcZK4^#6H z7i-V)7!UXQoQ;YHa@ln%XlwC+bt2zC61sEg*k_I6hkHLdGqA>-jw?&4?euS&y2R~e zMXb$ft0rJGa~Q0@ElLvGvYP$2C`l~Nt0ZyV*X+~r*~r_g9yUwU2wF?&8)4ZF1xa2M zwfeGS#0FKhe{J~0Q#bqc<&j3!(;pdMd^Y7cE@;f!eHH=jwfiQsx&{I#x+7guL_o7= z)hvZeZYhg^E`>|(+>HS$)4maUjl;~bJA4&G%_=vsOeAjBiHZ`Ec%;H*=CE3kA|(bz zGy*kiorR%(|MlSFJKsF_eB;}0ORAm<&EHh2G&h`m$f>hlzwkvncG*;#R1PXl7pOE{ zm`c+HDowZlA1V#OPvb!mu%f?iRAcBcwAPqQ*QX3~hEvV|y#K^QjcJuWOM1+#X`$x* zZ+zoX<J@JZc6j`yThEn5zuPP0_W0<Q8?Lkyy{gBku6?IiG4HFEuKgys_M4b%zX`7W z!(3hay~5GjP_w_Rw102uEVbg$BF3ipN(r|(U*`T%bH-|3o_<<ou6(o*w(6`Y+}S^y z6-}7et#$QVTf;_2qBs)~b~d1rybt==uZ%}>M^0Z`j6e*~)IMw<;Hi6B+@XEiKE_n{ zv=~CFeVPV)TN4k34@!}!jtHvaXUOk>>;pt~yYxCC`xsT-(_SZJA114N+Vg~HkhnEf z*E%B4P>MVqr$d7rI+{?*>XSO(H+;gy9gJ7c*#6b?lMyrSyU)B$|8?qN=l96Q6Y5!+ zKz5$c9z3Bv;|cA-6FNJ1LcLXfESSQ8(!qA7pfCc33)rZc^|G`+l=*PILVohB3djY< zDqMiB3&;foz3Hh*9bv0OG=YlRhqJQ*Nvzt(v-1ISKD73Exwv5XV)wZODJ}S!tkUa{ zva<rOQ_9W?<cDa#GCMEGa!P*&HyH8qPfzbZzW)&8lFn@poZ=tTRcZ)l&ONHWXTPT% z*=eQ&n|nIYinJOd7tH@^WeJgwTV@G$Xj9eFp$(;~VdPCq=Qc`cRW>=uRJ8SKqU<F@ zOu!y>$r?aq#u#^Q%b*GipVCs&>LNI@cDrzkv&1f-W*n|#?$XTCI1`O=0%6u*!ENuf ze0Q;a_ly_NS+LFEFc8YE^G8KkRVv8v!6Rhas*W$~rt=FtFO#QLP9ZJGyj**iXD)m| zwJkh?LJnhI32Jkm!!x0VjqbbGtiONP$+-W>5C7g}w=s`N8i;>;>>H&sA8lush^lFv zJ+%Pd{--vXh9C0wKedUk<(W+s{3pD3@$TAVgHl^ANNRztfl#4B{)D<NpCYMFM0z*+ z-E-1<RUBWZVSrW!{5=fT*5Cozt2f-z_4>%It0Klb#hs#?l%`E5)vVJmy0-5}XP3EC zVh&k8)F&5Ss!^NL^q*1iQjOVQy;SQ*mQU^^U-&GajiI)+iTo9w<a6Zxc0?eWzi#TX zqh{|@)MUKZzRNi;b-UK=b@a-nZSG$@=&>j5G;ivfTmy}wNqcq;bOJQc2}}c>01b5V zdai*+V;GOH?i#kQGhJ}f1myg1U65aHfV$w+^KQBA?wxvnZ(RNN(_iq_yka)`xcry{ z4n6PY%}(*gMl?hAOf_YV-_F~ls^z>*$R0Wm`rt)>y*}8=R8zuJM~K)FE+GLStQVfJ znpe2QZQ{VXL|~RT3S$NcjLWr0;B~6Ft<Q<04)a{ipp{vS!aC!LmzHftNF&WNO$s9! z(ZLu>-D>@2zg&CL9^6WzC7;i?iE&W<irHV^IrItR?ZIa~`QcvI{@d98hr@pOWA&c5 zN;9v^=#D3ktSfroowOU$k!(_?ThYx`H$$<!*>@}E!6Lgd9FMSaJSFp64P~g>eIe2y zCeEC|m@ogm)`+V*la-1kvw|p3BR%_ao-S_Xu+){vdX6Vzwdo*YCV)ECwh;E1yCnVM z^~wD%m_GNvos6UJsrcdELx(;s!M@9FI~@N0cbi`A4tDe}&c@EW6^*MJ2e6OxO>E;E zQHvtSEVhrM6pJ~q<+tN|X#2@Dxv-hPiZ3P!#_liG(1z^>TFRYR^gb#XSF#O}DTuRt zL}ex8t^D`8!cTj;hDUv#5?yjZE(Pl|SCtUU7WmF351GI%0G9!7d$pDZ;ue4j-0lpK zNQDE{{xPiG=s~*=yuG$&w{}M4<tu*L_Kn#|Ng~UiJp9_mi!aocio(MS6`baXrHMC! znWM^>V-*eGt&LMl3nbk4Y=;JW?WhQ_XFFd@?{?^%f@jo*7EVu>Jy(}6IiG)9AWEN^ zj=B%qomU?U)S?JA90~b{HxC&EZ(SlB?OVT3aq$d32#x-o3<tqTWO6Db5HCO;9^A)I zqi|<(R?08DaJ5#~5?wl`os)nW_|~>3dd`^V@O=`XATqftj?KhcJ#N+M2aMU-)Nm&U zj=t%(9mjh#_6%Z1Jtj8t5!&1kQ|7SNbwx37S4w5C>*{N%?+Q03?#~U-O6EQQrqt^Z zxGBCz6)2o$^WsMJfuui*B6Sngl$DiREuK48TAQ_{noF?Tx9gNw$v}fuwi^$m5TiwM zJ=1~cTdh(oN<VM9Yvs!m?>Y2ek{%bm@^W?WtDil{U1TBsluY96Mo0)oNQfCBAs8X` z8?+Ik8p|6k5Hx5|M4GC2yU6_ir>R%#i3QTexaGt0^P{upTw(-{d~%2LkNIq<B<H|S zubp(-b{}ZT8QmAThl@`k%#v<_0@m3`C!ftG+{{Kgc~xHN<Z4eEU5M4r(wMkZYg64q zt5Ojs#zu;YN~c+ZsiP4L1?x0x47F1&#7K*EkxwpX7wkV{En1Mehk5J=+6pnE9F4S< z$=JD|@6}fw8x1WrrmkrIeEEI83UjcHA;&2xQ{bMut7y#=XT9ywycXhwk3Pv-&9DMZ zL07P*pexW6^d+=w9F=|YNuFg4wzy@Mngg}qfbfr=#a#Eoj7Fu|l%uE0Nr80br6fA4 z)-qr(+s`->;4<#ZRQ>F?I8_Z79J%PI0hbN@`2GJH(?9Kge!Ed0zAM?$s9wL_H*%-n zmV0U!+3MSv&TqiqZnPnt-+;e;lMPn6uz5GvVSU@5?&+K`S~@z}RUX)@H=H+W8PYmo zMxNb{|8xADFF!r}jLRRqc#Sde#c|)q;{QF)cw^j4TbC@EYxZ;bII(ctZd<ImTSwnq z-9TD3occBcPjrFi)*k(XWp(*cp@d4J(Zyu$jYcKWSbcM!5tAyJZ$oi{+Id#81f!ot zsSL4ccwP2LGQl4SHPBpZ;TaJrB;qJx$O;FU)~8Vjf9e!$eG;{iV!!hz5U2T#_N0D? z>xH3;^MlzT&|GKqMG&DAH1$YYUo2ZbVPEe0g`iT$CRp2W=Pq>VQ+60R<%+Tc2_E(p zv~`j>cF5UWiOk(ez9<1t0YwoO5`J6elREU;t8c43<ww8q-d0l&eDB>MM@lIbI_v(Q z<{kErZ**A9eNw?j@=};lVd<iPFY5PAtMEf|>35`m{NZf=z{xg;P7Sh88`G8DT0mHC z0`g$M!IZtV1f3v18G8o^ZL^0ABacTx@ETf1ZBju89*)M-wvG?!C}CAz-W1D?V)vL) z?f&!%9{ZJ-`BMxieXez8szlL2guc<?qA@?2J4IzVKSeiV=^9((4SvY%9kh^na@MiY z8uEzDMt)h{y$*uIKN~{{Gy_!qZXIG<#IC#Y-gXk9fA4nZd!2T8&e2oAWVo;b8v@PV zEl6di?aIxoT2^jOk>!<}`&wSzTv5U;*b%oikBZo<!kk6(K(ktgAtY~5RN_wt8f8(V zRE#)>vPyUqm6MY;EueihaSjWuxeX&^DE-OYK|v67%ES?KrZba{U*v(D&J&Sx-ZcQ` z{y?Vw?sBh_;o47|cRgd7)7Eh_o_X2MKU{g?2RDy5ihurO#m{Fx`X7m6n}x5OSNY&Y zUwZOP^l<B6VX;jn_{oP4-$LiMnE2h6##(kpmy)fVT}mvzDFug$Ulx>2-I1_@(K_BZ zKWFZ!XN|O$biJA{u)Dy_6ju$M69KGy_E<U9WRLtZ4-AxNs(c)=Njf?wla#lb#}6*X zDNynu4`%3fO6!gre%kNh>CbPqui23Kzw?T_%-DL0HtUNkscDoD)}gB#VzXfYo{iuo zJl(yhWnzaa{2UEDo!9|+UMM%%KNJlm0@P+!gN6zYvTXl!)EbvaoE-XRUphV(I6}d9 zq?S6oGGz=N`vCm*i3Mq<rBcWOnlnq>X8|V)Fx91_!4!3gYr=m=4>%s(HJ@R9&laV_ z7`W)Kfovu;<opzWq1+m@kwquB$YS=!y!c=)VUJ91q(LxVq@X(&vs=5*7;|#x&tktX zInABBpb1~LkVLnlmaaur_@U(7u0_6<t&0@tB@L=l=$>xUoWzDLUdp-*6a3_-(g~9f z(rQ&FD>k@3AdL$3ZK^wzODRrt87U{UxDaDp|InnU&}Q_yh*YF)+Hzhnx1_9HIh#0c z60`OB?>zX9f)0wRsmdlLL~f>BkWoXQDbLVsSjH?GaU1gnt456?$Xo^MU$!5KK3TQD z9GZ@S62c7#_;W(938k7sAxBDx4!;~2MF&jyrbR-nNleb+BOc!K*KvP*f0l92HNz*Z z+4>rD1oo_d{QJpk9~nMUN5DJ`L4jXgLp@Zt4DC7xKV(x4Mc8+*yu!XJUNIZVWYYA7 z4)tDvzhWljW9#R_7Ns-R;k0$%i}DRxKfe2u)>o)RMR27cF`a<4wC!<XN07Ms)!QHT z?S1BQsq7s#cKQo{KcUCzI%o<5ne`|#4P>g-Gp7{OKbScIbNOR1<d2I8v>$^ZuTmNE zdRVw8wd7PiB(qnyBBto%6JU}Fr}Vq9fds@6tfXmnwbl$et5b-qt87RsXf4B>HREw= z(5a@!LyfEN{9%Q0dACPS`}dot#v~?|KXBt)H~+C{u?`ctE|*N#Bw^a7vxGNMxw9+W zjk~hOMZ3b?*c0x?>FFBQYM<PNGLwhwQxVLB(h_F<4W&|Sm+{OWLNrFLBqWC?+N%xM z)j?g02B9+w_mqA8n#F8t0ZY)M1=Ohp{z~O(E8JPuT!#NKsh13-(xi~G7P0)l7evfY znLcymOm5?ft2{8tJR+WY<p4WmR+{EFxMP<0^8hjcRWFv1XKhJS@28z`WJj)?vM}K6 z&^6T&l6%+x<C|@c?|aC<j7v(_{3mwy*<VZi-0{nI&bsWa8;08Plg2SIsh3Q}5}`D# z40P^f{}E|zaYrY&-FJt1+@;eD{1Bh)(#hAdZ71L+JxVr*uDPa_rUxZSx?=495OE~* zt(+7Kf+NUmqxuZ?%L_YnNp0do)=5sAl)0V(P^XOK8WapKm}Cr6waf?76#4DJGpgqJ zjTbt-bYXSL(<3CXU!2*aEIzzncRR2h<wV(2ryv&ZMRfCC7TvrT(arnRY9eAFT=UIP z^PPG?Ad==BMu<{^H9fAn<DAcMPaN})DIA=#7u9qOxe`AiTcE^DFQe9%7Js7m+L@eu zR<5;v7jCd(4OWD{v1|jTLVoSXZMA?7SDNZzl3D0NI<S;QV2xA>2vek1z#?0A<HTXX z=*<_iY@>}aW#rfI{4wO$LB`4-rmX&M-^)Ieblh&Mp>Hoe`az$Lj)hVYN|g(Ld9ps1 zpo!m2<RF3;QGxk-6&-1)Xa(l$4ZwW8apvSYu<J-f_!vp@o3@C~Ep1Ndrq8y#MrtBe zUMw5r81Sc4;Yc{O*m4|^Zc-Zqn;>_PMW96R0r}P-?Z73awTb=)LCZ%oahhgkHx{r) z_AywPE<+(t6|DxhvIJaOOiCjwB%&Ywrx<IpXA3_vI%D}RTF{|u@I9iaqcKeB%7S@W zfx#l<+0QQ9Y3nCG=~2|uzhhVYlo*T8i+q=i_MV|+Hr>C?{@a}L$OC)nkVLhCvgFBv z*{=e#U&WaHDlq#mHdtowu#U9+o?{Y2hyP#vzHki+1;fje#by-h{nZ;PAkQxx)8EAS z?2$vpw(s-(EaT^=YR<p<z1#mV&JMh=>dT!TK1p)_k47H;+Sn_9@JN{rG%m=&qJ-n> zdIU?aXTj3z5iGq)1WVIo+>t(%h*6-S){jX-iNFH<M=(Z<1#5z+L_IPPWg0DJ98+*k z<hzJ4DpUJ}!<e%<&JI;mRxnDtZ6Kb}aM-*gj`b~efAN$Nv-W49Quf=+OmMi!T))}f zZuEL2(@u1~+bKi@=;%CE=&|5{sR8reKe4WDKiT%%8%{Fb_^6@r@M&|Ol8E-7bHc^X zynOkqItjwnjCdfpkenA}9-7g5%aMkgxFZb)V%yGW_1&4`r)@E;adS4TkwxT^(m=HP zDw5npWE++!Ww(;)+oX|8@);xbxR7@&#3wDXt#YhplRwC_fk%Mmw2mU``}(KEk{IQS zVSP*zC+!8^WzB=h1xC7@!;eA#oyE!~g%$+V=Pe_nta*rw6NLVIfpB-!`03LtIr@sr zJTTaP#LUdHBCX6}D6C*fm(bc$Z2l$K1e^Z@t<3IpVvS14L!|^@p;+o*#q=YBhd5e9 z4*U9NaWl~-y|X|;JVPtxeE3XZw>HUR^W}r)3oM|u2<S>PQeu&s7>|sBxzqf{Ll!AP zIUX`K%0$3YT3<pv=RyFdoXI9Ng2BlkEl6`JXP%Q^f;T_e@botWj3I|@_14I6`?Do0 z+-39kPTGIB&$rOALat0xabdY<73dmdkgRD-F0wVqAZepif#&2W5!Ij4=7Ct|jwpuY zu^>1O!tBgiN~7!^|0dT8Yum?os5la7ci82rd0w=b-7{WXkZRJ(%9&Gy+l{Wg7?QT0 z)Zueeff;ZKCuc(p)qCWyz(k=a4wKHKR-UJl!q&!Ev}F9khSl4Y8C(9kZ(!N>XMQD7 zWxpj?Uozy4xgFh6g>u=lSY1d37>>x(aFz-%9FeDe)yR`%I%}T_AepKlssDvs0Hnb& z4>0@fg@_K_&ZH3=fvA|cF&DsoG`Zvg1e*V{T!2sJ41CqMU*II;jv<Hb5i`zxR8nx_ z$svpDSM^?`qhPN0BE6cD0aV48g2n-Iv7s*D3~>50*hI54!0FF&<_eN~I~&Wl@oC~h zQU`WHL$1tXVWE8Kf-XrmNt;Vc%dsSxiJ7IMb^4h~Ad4Jh*buW1`3yZU57DNT3sp82 z6nY^N)S8jNRifU@)I}tPQTUHOtCzGfQ?aH%0zDCEXm@WI)C=%0rn?E&6imY^L@~s~ zIisdeqgj0^*q=(C2rZ^n5TxspY3v~;5a}HSQMQrwO*8)3z+3B@m<qPz;*iXVtz;8k z5*)cS*T~RxTwK%Y{6ng||Ngl54&U<H4sS@ZIDYT`qYu3A<%itK0yB7QG(q;CnN>mm zU=w4ANZ@-|hG_OOHaLA5qS?z4&7Ob)k<w&+xDFi?m}@{FF?WaxKd7Vwrw$#5i-ODR zn#By^ERVE({7hf}gjiE4YeCFWp1I{QE*U|Cf*{3|=@TZ9gyFyQkT8x<awsK^${8z1 z%o@XEG6}~@IJ&0#Fsg}>OoPb^XzE=yU+9titn4R5qy*DgJEI3!Esbv3VM?cfJ2v3> z6l-O$Aw~V(dc|c+uYUT$GmWjTy6T~h2d;QlqTbWnz7v~x^VN<jU3-)ox_5am&Q^Kz z6&a=$oO$=%fpmv&HUmGDUwQauzLujlL!YXc7?Yi8%4r#)sy3#Y!a+nUS+NQ6LmuuS z9bCgy9V+Zvq8eZ%JGC&~dQaB0WrS?nGGXkL>Ha+_%sm1ZUO1SOx{Z7y1YeL-#G=gF zG9E%20ZI!sbK-Sc9>$20w>SeT5;ve12wA}2L#W82Wwmi;yw!cycl-;LA3tDx@#D$< zbKm&;xkW8UZni0Yb~bi6_~xNcZ&j93!Xq=f?|b+1^!!>KHxuCz)KI~(CCULHTZDi| z3~fc*8vGmyG+F@x|DsO7>*cUbtY=K-q)%kl7bUji^T<DygRa1j!%;3pYe`<I*BRCl z0~!8N+0!`6>-R!2fdzvGFnh(Z8T!<0(oUs02P?@CZX~&mJ?h*C6YuTyxnv*9&)8w) z(Z}`Q!5!AM;YO?MgE0)1d$44{ZbdIwy$sIrvhTGvzA0$06iYO)40r+4(wfDk;t~l| zjeIydA*@nc#J`>V=q9K+$12GD*jbh1W-$i9f9C)aZv;_o8)9$tRkcWA0=Qh#RUEJt z-=<q98B44M)EA{=sW7xb7Lg$L24fCf1>jEYFVE}tQOm!kb~Vyvci+C_iW^r*T<9@# z@VndgnmI~`3tYM9rDkdGb`J=PeuCi1C!3Q$=Mw}^KFhz-%yQ<J529+8A@k`o1df<N z5;}QlrZY<Cjv%HWS*Zua3~?tdU_~{Q2#wv}lNmpeJ17KGm_@Z_Gg)g0evt<zW}b-^ zZ+AgDuSYUngRXZwvDAL%?iFWChV0*A+t0sv#yI?;!54RXwxe0bbHL7fkGb#6j@ssm z9MkxKF+NPl8{N7WwS0#F%6FX)2fBTS0Lo7Ypv;U~L5<8=LPJW+2WA~6#OMaeuoC>t zfk?_5pPIzNfL_Cd<a32V8#YF4>_`^7Fs})Du+6-!DQjz>iIGh49b7(a(17_)H$GR2 z2a`@L^b6rxwv80SjGe&{%A}VlAprhtMgL(GDDZfC$lzf^u)g-`{zHe6xc7LP#^?-j zd3xZ$VFU0tkEhGa`m>>9+LwzX@p>FH%gW2#j!k@+=kr7PL@(|8<>tH=pdmmNZl_mX zE|#~ikc)^iF~kmN4<x}%I`6ag!V*kks=zVY_i1~z7nWdN)c|h{^}-UEd;`5PR02W^ zCGlAvTc<Hl?pPwW=J~uQmdMq;R`5m>`B(c2I@?uIVkCw*WrM{bZT4%?l4V18>^0*a zW71I{_xf(e$1h8z<A@7iUfFx`Pb=M(j$|UjX39AO>3EasH-YVOBDzeS$hu6Oh%Qs7 zpv%-WgvacT6MUrVJ2A8PrM^e|x7tZEA;6U<e^%$oSZin<V}67$!Gd~ErU~x}{mw&k zuz!;iVmWwE@*ZN$dWmp{)jF7BtgLSLl3YLX%9G-4KYiS&sn~ztffszTNMhO8ub-dZ z>98T6>#&TQw8=#Y=d1|w#%)uyrfN;RP0<=O1o2VN(nv5JVF5%^K9h^m1mr{v37CR< znDR;2ux*4f&hyVn4Q1w@#59GN6f3SE>caG?)A+CjaghhExb4b2l&pL}26|a%q*lvX zjtV+RHHEWh&&C@<_YZhj!fw~Q=I!;zlCht;!;VbUtWm>9svd!f`iSp|Hoi(`t?@)I z?vBccIdF4Az|>ZDEBF9$hFqStH?MKl6VWQtViR^srh|+QNa|fPaBWYW=6j@tgz3WA zj<yAU4qvG-yn<jN>}?iP<iFP%51q(W2)mos$kXP|A$(^-Rp3yD+modp$RsT#T4RQ4 z07rsG)@cTW9<Eir&DB-&#y`8S&#3(Vwp;fY@nS+!)g3+jhyA_BLmt(4stGn|fM*h0 z&!UzgnCCi#&2t@sd9Hi8&vO;NF4Nt|yOMi*g2K!;f%DkXF0$HR#FFT_f}k-U={$BS z3uh_+XsrciZqBCU(!@_!D~yLG1U9KjdAaEGt$3f@jP{M0&I5<sU=VXSBrV|CRKv+# zI>%poc#qGF^Uizgj7N$OGe<n#9R6(ORlCH;xikJ)BAaWnYf;My$QC)Fhz2a4fNYVI zku74mD9sw`$<vqs*P@{<bYB>B!s`$P!~YkQBPv-IcBRgvIMV?)jbGAp)vSo1S&$eO z6y&CGGUONM&fRlDC(!pjpjyp8PA{Lda`m;9#_FF&)oeCmt6d~F8{Vt(>W4>OHNhQK zOm3E?upRlhpMaHp(uMMIKLIQItgx(1o(F}(EP}{|n~^XOPZtCUxf_Xj#m&pLMo0Uw zdC5aaCCP9Ntu;fFhmkuEmHTNOPm`d_jjc5v`RFkt`*+{fxc<6jXKj1bb)6)xCf@(@ zq!sVgKB2=^?)*$90=Xv(42ID=cuVT)HW)_lFs;$6TD(%tlxB#-I20NQAzP~qUX0d= zz$jxKlZenM*vA$_!lgKNQCr5%qk^FFl<Ct(@Vo;0od*&-KHdRYI}=r6JL@X1Krw6; zvzZ_!z|#7}0%d8t&D`gqFaCCZkJGj@ewgoHFygdhCrLbg^Nqbb^{w3OB0HWsG7DgK zak6kpEI=@5KO`3Hw;9Rb{g7BN28jit{+-YxLoLppS%B(BLa4$f4VWndJOgqvSuI|8 zq|FTws%^&3%$Q(qL4OApa#IumZ+j{GfO8s-JGc41xbbsw`}Xa>-^%oLJbC7)*Dv|! z=zZ;Q1E#aK1!)Av!r2Phd-jAkEs1HkNj42PiFT-s8|*Y(tIUBA&K?5fXB%c5igBwD z4!>4up<}kaQ{sto+5l_zQWuCMLnZ!ltMiK=DS#sBPcS_41u;aoM0jaD5eo7^xX^l# z{)hSPCH}(Czn*DM!<AQFn4J@js+HfI{+%DRHuGmQ3L-~j%hzCed!Fu?wHRY!D~GgP zp$;-t5QIBo*1-hq9<K#%I;-M?2aRPXefQm#+jXsyyt-sr=-{uuKd0PI^N#iv(MTwp zn+$niM_}~N5p49&5g7e*^ak6VpNirw(*OU|o_~_npPyfDBxgzoGqnj9h6H9TI!IWd zt&B=*m9fd3X+h}RUu=;%F>{mBXW;F2zpT3(R<3Jph-}-VCY)GYd_d}H<GROg-{+{E zj@nVu_LH^u)E<1qesgrRE$oGK4cQA>oOGb=m$#_G57`PYZ{cfsZ40$cR;F+?U34VI zAi{Y59XY7D(*RzD0+c{eYpSU%CzyWcfy&;x`(N9ZN^KJ+lmIT~32Asfl2qw=Qr60^ zL*uXipklbOa>nq1Cycpvkc58Ys;zH&X{%GvVi9F*K|C8l?Ero$+FZ7=(oCDX4%*yx zOq;t7+T4vBtTrcek3=6otwN_9a$cP(HY#+nCKQvp@Xxi-pfVJ?48BXg0b6xtt{NQ_ zdg?I*o3^zwU_?PwI?rGrvJAA^J@NfBf1NyM%fZ)tV|+e4nfRwKwwa{-llx5$CT^@e zKGe*nK$?bkLmjmr6pgL7+pe3>Hzt;#euT+XB8Co!!u(`q9F*qR3muKa7>Rl)tAp(g zGm^KJrBY57k7V&_PBT~n<C0M>o5bkkP%u<W3$Wh2N|G6S$o@1KlJzJpRTqmu9oIcw z;txfWX-rwAg^@eY%r1nXLJbU*kq~Rg9f{B?*h6DDmQKoV3Iy?;NqlNe2sy?ff2cVW zL|Y^*MXe%3i_nNL<-E5LLTcie(UV4v&J<3p%{9`hTUK-`#?Q`0bmhZOAD_>7q~ok} zA``9***UjECr?KKr))tC_@sNH(NNDe<dg1+Mnik3jfTvOgAD6dPsnN%UOEAVKzC9h z(UjUdjsZ*Bt9%AEi#!snq=$<19`;pelPUaw(30Y4PRA)U%V@t5FuubH+KAik=>^@* zH+1K&M&%V|MFcP_;Sbl*)F40fe_rd&J0{Q?u(tbV8574anH%_J&D7sj{hwv=7eWm} zuh*HACQqwm{&?jdq!3{n3Vjhm%Y5J5jCJdNM-N4P@W(6rJiF0LJnhbspHG;5&}Bax z%QyFJIrQd#Jt=wGW*?mX_X$rPu%$aqfRMA1L${*is*Xc0$8o+BZ3^t46ug7J%7Daw z=b^CbPa9k>nhL-t&KP3IFBDhB+nf{7oXc2kRlUIJkh;!AR5ezJ4I&A9>H-1$fg?XJ zE^BvJ(x~Wo{3~M~-`S7=U;f+E!AGBb`XzUOlOSPXT%3b`MtC>O2=B&bgm=S?@NLcR z5M-0MFo_Zn42(1M(m;%nNx~A*BmzlT5!Qr-KE&avCAC_aE-lMr9fwp1fkI=%&5AU- zaH5fa&*Eq(L>;D*_364gDE+p{)Z|-=`bW%~<8O%7!u`mEsCi>UU@<w1p&8ZCB#dG+ z7&9*@YvHIQDw&Qj*-7DrC<aLc{Pg!Jqo++AHvwC6VL8(CO<iix>sTJAKOQ543}ZBD z*agzL6WD|Y7sqWiEWbr`lyJgpEwEO=ok|U9syP9g%Pdw4H?rq$i@&>d`a{O7N8Sr> zJL1F-B&xo&-wW3)eDde9c2u=lT9|g~nP<i<ttwbrRm{?=f~7V8ueY>lxG8ia;C*T_ z^Ka0JSbhwD7Js%ZYj^Q!yOE%a%3BCoDc#up{PN04KKaYYT<wiknHw4Q&qjwf@5el6 zR-clyw>^Dt<Fh9}J^s0aJDbh7E2oWHJ?`42uiJ^yw1Jq(LV5z{|L(!ZnFv14WWmRo z2tLj+tD31i2+Y+*e8`4EcJ&zSj3`GnQyI5&ije{c2#0)_?uFlyAv+i_mvYX%ahuCl zuT0<Mat?|TA~a2LZW#w-KNW{cBP<4!<u{<PoWsA(rn5WMJT~eL<B9#QjJ!Ja1~JF6 zsAVC_lNWBbV@uEdij3xYbH}_<zum)jTrivJ(FnXWtW9!(W|<TKL#h%k(8?{ykg9|W zbbq)&Cz2RMUnrQB*?pj*cG+y)$b^e#1Rjq?p-6&N0zeKjD^28Kpn+{I%xuz8@J7y! zvo>~gzFDUGa;>reI0w-`apr^xd=MVH@WMKW<&m*Fxh>OFacHsb4`im4x!mj2R-I=~ z2df&#Au0xu)gJ-|-21wsSDQBu9{A}R<C0s(AAIK*C+sA3g3EhuGx3Lpj_<gm9@#5u zvm1Ei?TtO;^u;@Xcy}=0`yD{MyR-P-1*VWn#i~)ve(;2%X4Y^agem#odF~AT&I9D; z-qyph5USw<;-f?J_P<Y^`|;ts-1z$(W5_c<70qt<tyz6=<|hN+nekk*oel#;<p?mq zQ!6Yf=~lF;Y7s2fMZUDnV#T&RgVti}_8J00Yo0Wn<Ky=71xh>=Bt|RI(O9P?Sd!S4 z5~!lvxW%ALRp)}yx`$PB>J!)Xl7=h=dfe$vDhOKxg0rk1{yPs0-vA8u94ZkM=!#S3 zIHy3@ZqVzSAaOCJ8Cz!-ET}Ma&XFc3!MG24v|Unv^yS8-uRk)-IAzl&$z@Brm7m<{ zijP{{X$%5BJB?jfbs=c%Lf@q}neIhktoqOP@oIsNBoDi|&Yw1<kmvNXe$fUbKF@e# zzY9tmo_XWaf$7i+vQwPrs+p>T%Yr$OjfDDNOEcpS{=WF3OPYT%8hhRR_t+<AT_tJe zz1Kf&Xgj4#nLEv(X&KRsu#m)*3v|zX8t$~G+ksN>|L86TciJfOyiwqX#!N`nUOQce z__S*ODCrVJEecB^ZY~a=obA>;2{ktuQGsw>SYwCLV$Kba3ZxT0w7lA&tq@8P+;fzZ zz<zlVg&3icA=Gqx=c8d^1X*XnWS->4^v%**utcfq2h$JJaK4MHV>&?58|2&gtAwG( z_Q4b+DTo<;A{3W!IdNJ_J#^|V^u{-RYrgyUQq%YQ+M?$d-G0prXS<_lupu5@5X$E7 zN8-xK2!Ea2h7wm!M)>R0^*sDVsb{u41?hmxDFQYc9ldn!x#lu8KjBY^M<KaPMx*$p z7bQ6CK|SA9{0TWReiivm#w3<@_!ty_CYQ6^vYXX>_{hrc-Q&i#;p6XHI^pNel7IS! zz1Q;G#9fBFBPRke*)S8_bT?F&?Z$c$?}qBKUTSrjru&t$OCeV%h#^@n|1w<<ELAPx z#HuyADBlq-cr4BAUJ*$pS``lPg7C(1lNefHWUwZ1k+<hnwc-`wZrQkQ9t1s#WnV65 zCBcDVzz3@#FYD(oGbwBuBnvVeu-gC31MPokHg;RR^PrOF*W4n}?&A}W+H1j=$6a7Y zJG)=AKC5FB9Pu7FHt%8W8t;K)^WXNW3VS9Z(7_VxE~iFO8^RMuM64k87o_M|jxqeg zi;d`<nX(yR#@<ZK$cg!=n8CCYQYeTc+v_U!{_UBfVHKZjV%$6bn7e+uzj{jvx-JVZ zJ>|)pI%&&Mc^)R~IhC6m@{3MYEnjpZH{=&c82K7QA)$m(>;I&F{6lMIehgtv1%>lW zcxy0Wh8zG^cPzmyp_Jexa4dubYISk;ksr*U$r$*N!?+LKgF^~A>SH!*v^Ii9ec;jy z?FfOan2f`-MXHn>QzkM-#E1^r)R47q4zandY|=-LgFbWsl5;+C8S|k#z`<k8u^=Q3 z@LeoZlE$m(ZpV2ub054;4xV72ie65_YY+7rizwBbL_2mZQiw9)AF^kgY&_Kjjq~LQ zl;u>{W|)UtKPC&XLIogC%yD}UU%vYR|Nh8W_2#43Z`*d&ev-$%I=}m{^rX8kvx_G+ zXN_7wW+|bDRx}w}(PX9-O@>x9?XT5}q$;keMa1Ut??S3YBj#`+$9`vHHVU_Kk;sbn zv3{#X>YRcsYSB42FWh<aHFxi8^gO2cqcx{}HcR5&P1A<VxT5Z;q&wchRHRJFERJ?4 zM%$x)X?s?`v_0yVcG_U;m%6jGrBH2Vf}@bq`btJ-9pshup1WNMq$QI=&`yTa!x9*N z_s#Qw96o_kGijx$$SYw_Q_@I)Wo8z_Qb8IeGAfyW)4W`3!c<&dE@AWkuceO;J5@ah z>G%^&OGeVy(e&Sok2(7DE;~i8GZH;sd8hl*xi?BSa_uRr-yM7Ulh4}O2-G=N`V8Yc zoUH`1XHT$@UpJYCAF5dY6)fcU4VH!cDdmr<Qz}~(G|_vOc#O7Aq9Dv*^2BkR74VA< zjS*zk7*u-H^Jc-AgmV#EDL45%K|)$mM%m<FTr%_7Tg#?QZrA@mM$^P?YiIe6KUdQK zO)m{!vdyZkKe5xlnkf{hWwVLATS}v8#rvC8;fFeyzYq7yM{uu<sKp2#vVH7w*I6W) z>C3ZPNV6eBV!*3qMGY~%{!BI|)6`Yk{Y?ZA=I@Yi5@AI}jg+<kyf+}Y8Q8P5Xw}^^ zua)WN#}rDW?ZOoz#IbN2z;i9zf)~UWG-X6(CAZ4yck5`-`aIJC<nB#YZuWHi$@`pM zB7nozO5Zv#=IGn&UvJEK=<RzpH^SXMc;UTR^i_$9kJOIqlHBFN%k8LWcl4#Jla#T> z{$ro&>bM-NKsiK68`^z$<g4x0X$F1>5qE>5XiqqbME4Z9^!S`m30tl}shJ^ilsZEh zQ+kX02{ky*<OSHQ1LuKjW+@o0EF-;fdLa}@B~4s@fzz?aP!^O5%$CJU!ZFDOh?wYT zZlxY`e1#)VB=@@q8qCwuI?(wUX7~iZ+NAGAdj`(&8Q1puY~l0srWZ>nKQ!R+B^Qm| z`v5zXRePC*xSXA3C7@}XhRhF3A;gtpA+8icTumEVh$~f}rLb!~3TyG+xG)JOO`yxx zaUrGUtvj|UOxb?FD=$*aelBdJ4lUBJcv$QF*A`tm^Xt=A8Ik*^JoEm8;}4Mt`SPzt zpAElbfX6%+xPNnS;2aDG&cV!qb1)n@LDhj1AbG`__l=lTNvuU5!m{TH6hecWLhnP{ zMEbSXFjM)w;$N}1{91qeCd#AFv2o&{#F(S|{Ad5mjVpJY^V-xgZx%^>DgL0-H%~48 z&uDiBMjBIAhu_?)xkxCP>pMv5N!qAp;ZXwG1arFa-~X#f;nY#g*eUsXPki&yzVY|_ z|7i5TtL6BgF8=Ql3Htquzj@_97cG0-9rVrF`>Vp&dp=mj`HWSZ4_0xJo>k2GlN+qk z`@kyb*Z(S3NG>gpK1Wtj-F52ny*o`VHTt)ocjclVOaCVE<@DQL*<salJqGIVg~va^ zDv~*bKhaxm4hBTc*}M^2?Hmk<nu`HZWL}l<T5c=!#S0sAGPp=Hbg2`-y29wn)xe^~ ztdM!8fn`Mlr^J%sR2b?fqd^&I5Fxk0C>Li-QHEL|l}@k-A+*b~X8KcK|0K+EwVt-z zH59EY%Z%62TKrFWsqEJI!GPtBlGuPmvc;yeau0ry2cfu}w7VkY{y?TC<Z`bnu}L+u zPE_zeIv$5n%WSmK$B$VZzWOPjG5hG%zCYe<bH2prK6}6VN9p|sJ31w*?t%uAe%b4a zfYA>FqaS7%{V*{4F<^9Fbw$#ccYZs46IUXE#XKdIN`ZMP3)wP>1~lmaUdg%^v4Avl zWSI*K`!ig$+!#@W3D7+Q$V*;*W@*_Alo-08dbB|y2EIP6G}oN8YnqYxuVX0JtvS#T zkDx4>r8CaOXdphG#{nD`k49!Uuf9T30xOH6&tv`#`(ET?7!@Q2O69s5`)YYS;yid3 z1j8b@TS$jx<_l@E^2Fc^fy0=3jj#b(cyAdSLdR}4iy;c4*G>fe&1R~txLV&R(E;fU zN)$d4d31E*I3@>x7%hI1YPmHSZ8O<;W!~^7jgq%bf63O@H{QBzWlh3ex+DWcirI$` z9)UuuBeo!q$q^{DIvRymqtGHKO>Jce;DMTCEP{V2RWA(nEiOqI$Wt>^SBX`Dm8skI z^-rfGpyhe7%@FNtOd?E%$SaZxq3E9RE{2G_^{D>IzWymFSY>ZOLj#~G9kF!GNjHk5 zdA20}!CAd?@~-LvWOU|i>sA=qGJQlPpH{~&^1x{M8Nzl}4C2<<X{}t%l1k3waYKF% zLq2y?;ut~6D!-w&MZEPAqYRst{!wGo>J>)~xx<Jp`M7_F5vL56GHQoY54-cr503bo z2VJ1`QEoEocTmRfTaecEJ1FB1TM42a{e^4MAxuPoS9qtxQ4kenlhIeo^P*EwzgX+Z zroIv8;4L-Tj8>`)*VUnQ5L#R%?Mc*JY0@Pzkut?Oy4az}d;&qjr|qIl6;zX=(lVw= z@r#0BJ00Z)*2S=R{O5zty7<N#<M+kCo!VpTh32%GS#!6avv|up7uvBHw8;arjj1G3 zJ23B9OqpS0hI{*1JB{+T(^|^gQn^Yw21@sL4wObXQB16t$#{@FmhP^1z!9D?1{sig zfezCP!U!=2dU|EW^l`98&C5K{L%)AD)F(slR0fkyBB;knjy@5rlRDs_otrI@UMN<M zPgeLWVIF^$Qr8$wL3kG#jbB~XX7wLq%&8k&Joe88x1QN?t{til?{~JIDJ3Ncw_OhB z_vLL!W?v5H_f@L%n>OPTGj>+Km?D}dnXvQ{dR%o-I-g--0Hy$_bxka&ZT3tt!)QwS zzHFM3d-hBrR7Lo#M^BXrE$phGxa1i&<{zJD)OdaFd}2n#g#E(8PWH@JK@?oIv!Kr< z9`#Q`Bc>U^Fnhv1k)po(SrRLFlnAPmi*8cGT~GH2AM&(u&90HJ2DN)PCWZgpVPEz- zpxfTxxDyz)I3o8fHmYf!wM|jWS8c2Cg9(QCe_zWtV4oB4NZy5hIdsn|2)oSI7mHpZ zBZ}Hu0cl9LGNxD`0IXR_fTO>ajf2XU=()2~LlhmZxNgE2>G;=nyKbMs3oev!{^pY5 zTg@<v?sbPVg%PuJQsgd8MEc`Imi{;qxl2<v*xaQwJ{K*kq{GUtp0cBapd&gY2EUH- z9Sg*<Cs{0;UvA{t!Zvl0>m0lmkF@%=Th#=AHP3$Q$@$y=zC*+DMs5AxWt%+lh*?<p z!Z`<QH?w=&d7iYKz33H6(Ju(B{8B_p(Ju(B{D!~^IWizzlD4)scGA#`aG6Fy1Y>7j znW_(9)0&>IHsAM#S@3GryRxgbCsRvSxhE(UG%sMz_o?#JU%6*TWBj(StXS3d<xQl7 z`RJZEzq#zrA(y&iB@B7gEoTe$Lc*kgmZ>7D#ZCb&oAmKM8K2Jdm62yqRkcfCwZP*h zSvh<>dmtALh#m<wP&;SbPAr~FPbpeWGe<x9v=EG&(hMevbc0ES4I<L_L_&2bXOk3C zCFvaWXMogrA@`E1p{HhJxW`{|(^S}yFz2q^xvvwH5<28SrEioGNQn%#2&C`~*?SwY z;zW8>e*~HaL8L$bdSdsTJFK2{w{gU6dv_Y%zT<Ne>+gK<pi8d4V9tjbSPwnCn)=3} z5gpCVsCEv|=<Vy(t9wz)-CbtkhpII1#w5spU=rlC5W;xqj?O^Hy5%b>z2$arcpafs z21FGr!B_mX5DGK&<;tlQYcn@PxFOwK3anS3(86f%Hg}ye6kN<clOOKzCfKbiLDEc* zXFVp!xiIykx368Y<?K5o?B>2ce(t5$EWE-FJ9`3UgxD3AcrGm<!LOE~QhFJylwO8Z z-skO=(it1GVCX_J5Rc4l?ldq8!E*pj>b%PukI;pe1kzeRf9eFfv$or1+J7oudCut8 z_~V^}j{o~35_J6o$xU}WX7F2f(AoS#@c6;qmr>3I^pPo%h^Za~+x4Kf<gY#mwrh>* z`tx+$vF^`Ap-#Ji{*Yp^lR#$ej?*(l-Xv<1OayPq8z;gLO=QCvosU4!fGxLxt(A-K zfWD0fnk*VB1pbkSa$E)XFUd<U9At#x)XAMv!S(AQ(9G?VTc18(xJ`t8V0Ww7jx1Bu z<>c1n5){j`{@9}CIS<=j$0h}@BbmTIL6%bUmzf#aPHfa2jO99_rOZdQ2jRp35{2)N z>2uRH1D4)pTzlWrt=}mM+%IWz(#Y#}EWhb6j|s`58Bg{K%iG{$xQ)3OZi9>At_{}3 zkflwJ0H)fQRp?*5IwJ#|>y?|BPliL#fwG)OgQN>Y$DSs8Ax8w|##YwVc5E{r9VW8} z4_K#;;!TY1zUh~D{pQ1@aoekhp7h(y@8ZTOm5uwoR^0PVN#=iFa(cHpSFG~z7=z4F z1eqnH7v6^#VCKERybmwH%v-shdmpUaxs9%enn-AVrg*fweKLf!hn45h<*hJ?tt4T; z*bn|qE^T+BvFfc~-aK&m9epH9POt6y;-a0-`_f$-L?gL!MUxk;3K6_`1FZ_*Xh*?| zH_)o^t+i@ZD3VJlG)SUVC=(PK%y5}GH9=k~WG2ptzIQ_0(`X}o6GMFm!$Rn3Wc5|f zoFWW`u~Vjda`&}uQplpI+!~^jQ{wEThjI;8RiW0VO(9u=>8(FM;gsWNUCt4xsO9r^ zUGdY4^@5MIyuR$4h5tQVhfF*PIfzk-ampqD!rRjcN=p1iEn~Y@;pb4G)Yz`RmIJ!N zsfq{kkB5;VVJZG}F4FWBp6PtxOi`z349c&nY`E0XIdpD4t^&JNADaptQ<&NJ>-60u z0}Yk~Cmu+#8FUmJ<4UfnxU+cHRVOZaYt?yQe<(@*n=j@*_m9d;_i%?2#l#|%wS=Li zJa#G4ZmZK|$;W&9N=i`uIJ|=oKRW|jd*Nzi2g?BykljV)r(&h~{wDO5K)fGl$rS^M ztJI(=urL&58Z`kc^A^DnggeAa5ap`3ve2QSM63|58=CQuQ<G6qIqAZ{>AU;-N3tZ< zLH#MymTU;6UlY$?<$tmob-Vd-Jl`_IJXqG8gr~+j%pdMBVwy5nltfn}<q2lwL_+vQ zQy_|rZ4Z3=fZfXHd@0dq*XV9XpRw1(qutRb*hn<4_T3jLLkw%W!*9^NExGNw!*9@2 z^&1e}bK&_Wvj<u*igP&^E<5HkzXDrWWYq{`)TA+%n!@V8vpEzjrlMlF%)nJ_MnYr7 z`AA=8^Cs|2xeyz>S1_D~hhR!&MJ3^_dAatMg@^J%<SjoQ<V{7Ub{C8T{qRrG$c&+& zYkr2adF=_uFFEwX{WmxJD{ry#iI1MzZpBeL9OQlfp-A)Tjae*au(5%#m<Mh`2sscI z^N<bJV)h!l2>c_Aw9BwR!(h&%D^ZrIk^UGyLiQzM$;SGrk@<*r>pUQWl;RuM<!s)g zOy-jRAY#Hf<|h30E^5_2&CqQHL|CIPuE}rA=t{;|CJE=Bt{fwujIPipiAj4L6kTOB zA5nMi%Aq}1O3^lA%~z%WJ*q=Y$5y!hN}3ThhA<T)*&ZT5IuX3$gJ2X5YDZr2K`@Gj zo8u5=gvnAwN$5zV1JhJBcgtlhL=@4kKqqPt8YJ<|y%{zI=ucIAgsN+68Q~J)C`ii) znZ)kudSW`J5I8c(sb+UUn`vX*^57O%tT^WAy^Jq<zSMQjn#S8C>{lGL>+b^=@AjJ= z_Bem5I~D8LZw5-NK|-QY1nW-qKDtxA&$?5+4`K4r1}jV~mkp^d7N4Ypm2!iylKz^P zuXSTbDhRRvEyn-Xj&Of4wQ~Qt=RA}&emwuP{rgS)PbW$7ryuck@TfgcS*@q|G~{m% z4e7x0Ps2#j)7VJS(=bx>%)fr5C^Q*0M@*8bBwI$aj_?$<cC<*|?xiiL=9mxpb6bM8 zucsGODXp`HbaHm-hC9V{V@o>93}8Zk-)*`VwIm1q(>UiDUze-P)>KOt5P5%buyWz| zzlWNc2hGf12}bH7>14fdesLYIw{N@cw(<F9kT`^!8kR1`H>-|0Rx=PMoMaC}b0=Lb z90lElYguyv7BLP)B81Xx4YSTJ7$e_UG`JY3-hg@Ih0x?iO&Bv_=Jc_i-sjA|UnI~S z*)!H`oLc1kh3ghG4x$_ai`dggi4SLfqi=6$_u-jm-ms~!J-kRQ|LRnXAAb>D`S3H+ z=QGAE-s-$t&i?pSI|DWqETn)@)H{1T3~59MqeSUo)}QNOlqdz&5+zY?#P@9T;kt1Z z?rfy*vHO(@mW@lXZ8vVa;WX;n@aNAw61wM-M-JHR2czk4Be%Zrg0rrad|}QV_g}U6 z_Y3PhF*A}i9~Xhz`w^(Up9N~~N1*nh4JJ_Q)iKUL+CBt{DCIA!xMNM?SSH1W+Agl~ znA>0Y@a*&28r7%ox>MtGE80jbEd61#i&q`L&ni0>N|Tf+s3=wNba1jF-G`u{KExE% zhoGQ7y1^=_9z_g)ijL|ZhtW-82uL=>i3FwS_28A~vQbHen+p<^X-DgG!D&IP)Yf1E zxut48xL~KF_xSB2<G@*EJH~1cHYL%*`F9^QZP!!pxAOq5BdO*2NfAv)f^NXkz_d>v z$f2=q=irBuHO3<9Hr^R^bJ@2eel6py0A~(iw=9Xid<m*9iG)hy3FK)|Exa}@!!6Ob ze+3V6dhCayQ|v1ch9%XV`%8yfqu+^)Ga_?LL67Oi={lZtn9+q$+h>VR1k-sGkNOjM zXOK8@4wSG%4j&I|#mpA)O7nGmx0zSM9;U2tIx<(+EZ4LJ2=ur{&%2--_NequAd^ei zIKi%~vlJ@l_wzSPtnrRbTIszR?oACMd1eMX&d!N5ME{4pWHePBdd@=Q$*t0d9C7mD zzepWm#e2_<YxB!0ZNVZBNg!655W#k)8dQhNSSCGy5-vBdD$J|?B2p3QSk)5gNRf(2 zM_)_4BO7v-IcZizAVm0qRzXWWShR=otouZWU;z%Fs132%BfLu>QI(Z@rN-M6C>v&; zD70@ao>w0V;JG?D+Wf<thYZ5Y5-@)2_bD!(Q4g^5e<#C1vZ@1q^h1k;Q;Yp|>1Z%T z%z_MTv(dEWq^7V6rhM_-uOMNTOT;c*#?e;0LCfqlKbf<exvbroOj64rg>ZSR7DWz7 z|BCtUtNtH*-vL(TvHX2NI_J<tlh}fY1c^~VMZgk8z>Xb=VgUg`5s+p_V=Rb@1zXIG zy~W;pH;FC5p2VoJ#NMJtV?FNo+j+}*PXQtE{_nld^YJ`;9Cv5;-7-5nJ3Bk;_qR$7 ztQW*hZ@?jSj80*Gm{jL)mFnwPKPb@OxLEm&#<Z20J}p5@V8Nzkjrw!Hw(T7Drpwx; zm!95;WlcW!p0uaw)p~5>4{<H)1rBjC)22GOAk<`Y0_&w)|KUBV46M!6W-9!#9}<Sm zsZed+Po~yKaegExC+QiZAeyg{s0@JKsaYwR;*8jA*HydOj?akAcF<AS!5aha0e+H^ zn3Mn;G}0r8grcWPl^BnH>)b?JCEmZWg2qHQAyTsX#|ly;xBsc-)<*V|L-s&Q6P(ga z65R~YKhAF7sZAU5U`PL!!Xm_=Nd|{&`tFz&R7IUigryUzgf0`hV6b#Nr{52J+VY#1 zLXQg_PT6=-xREIKsN|f(lwC^k71k9F<|Q&A&V8rbE?l>CVooMY8hWr!s|GjrO5FEh zcb6cap^3%VI%SCdy(DW!k+?*AIleG*;(~_iCfs}7wB;9bZ^FITonqX3nS6Lqs4edW zK9Bzs-n|5iB|}H4f+?QTsTfym@d1<Fdzs4ku3nPl9=+(r3ITX$r2RkU+G}op`Eh-> zhYw+ObDr+m{?xsVM8KE6*}G)zfWp_N*rRADh0A^!MJN#@^2PpPAguNVT5@*>1F?S? zYI^_hHetR5`v;xK#yK<*yP^C=tXsV2X{5q65Fu&W6t#WO+2?V3)frtVBxvRRe}&km z%c)paMG=Y0`cK~z?4-LVNMI=@Mk!lg(hY>kE>o--MQ<Q<B%!pOGNd)$?FNG{k=x(i zKNyX^uz`@8@-8+IQdz}rAS5JFiZiu=SiN)k?U}RAtYqJRSAWzGS63BC9AMN)^Nn9_ z3^VyKvcLf{2Bg2mvZZFt@@99t-i7wyuIdkNlb_r>D;XzRf(cRvTmgaJ(^GM(A=c3J z7Ed%B(V01mGh15Mxil|HkV%=+^w;lm13?yp-dWz&8+4PntJn3cZc9g608TMR{DT;V z)C{4c#p;!6yHb=S)~Q2BcpSveUIhN}yi^`Ql2N1}=!<n0%;k7P1-*w}4`Eu!J+I?e zkiocwVFI6YtVX+?qUWt*_LQ`iN>W1gdP{^BhrO62Gn$|WT}w>fr7+FWN@B09tdAaP zD>_o@LqWkQ$U}lDwA6>Z|8;V`Nwrc@<;7r=RE8Cd8u04o`lS=tn4eG9sn;gOjI}8! zTQIYi{RU~4kLaa!tJKD6nf^LYTO59jnw?pc4^P-X&xH@qxuhDLi=}<OiKX3?4^QO{ z7Rfdd-{Tu^VUxsLZQ#XHT#Yl+v44kaebEt#I8Sjq1iJ-Hd%o?5lk(n~?_|b7o2K;f zDZ+f-p@K!I1&Y?FDQH@`7)is&d5uC<#k-&gZI!r@H0U6M4VI8s-_7Ud8e{9Xe?NJp zH1cjwMtbL@^}nV+^0FmE|Co$^{L%-#W+vac;=7bMNlncElTy>IcVbMsc)Q2b)6+~F zjJM5#9r<0XV4T>8;cc_FC<ktm$v<!g7T4aqX5!wKe@Dk(^%$pU<Vy4)U&qTz5g!9H zG&ZQ^7Rd=A#*IqEwBZB+Jr<af(4ER#SiCMgUA$0JQ?L=I=Z}Pp{G?q>1T|qeI;V2C zy-EF{zakS15TWpn1uQgTcu@(-F@5@Q+YNr{E9H~Sc>c68bXHzjDalFwxKnV@cr4Y0 zMmnYs%r)SZCpD!8o}VAoJ3dX;Ol79WqyZHVpe4bg3a<Jk8(&^D{0oU)$g9N@Gcxg^ zK4cRt8enj8N|JmnVZuP;6&IftpTf;B-pS->+q6?_eqFIc7k*n&_n+dY2l<rN>3WOb zbBh~S>NGdHexwlk$g;bnC2@ifCS8A6XcKS2)lNK&n8~>-)@<I9q@^LUNRP*%LI!$D zkWwUaQob5xZ2ba{)H=$P6g!6IFuHqevPOr0T5KsFG@+fGb-zBcblqdG7IWE^1p6in zTo!I+Pv%{E>T_&_Y=h)GIN0uD;)x3S6Br5vFct0wi8F6pr%E$&!0hD(=DpXl2f{GS z(!F5b`wf}*f6r|y*#O>PHAb^=ADZ_cPFK0)Aub14ZpE`!9S2pc4Z@@qaWQShH6@;C z(<>cXy*Nzb%+!G~>F}q@Z&=kp$$juYGQ1HN^WItDCZM0TQO!Da#DvV`i_*K8S$x&O zRjl?ci?zNg**c@tbBPA_Ci+k*V)1S?SUdR3bY{%?WTULO$xrG?i$|?S!xzq;V-{~j zdmw!*3!pyf!UJByM2VPoh8G^9ap57FE<8lz!b7a$!h^{dFu@0S?I6TS%#aJ)y1lo^ zOlUp{H@n~2g@?Bu6ud<o(7Wj%HqL-G2<!>Z(tt1}ua2dE98=l@=@_G8yrtKT49DB( zro)WAE<e|bpWd7`-gfHaxY=eN(x9&oO5T6|+Thlv23^<@^0K%}NEmTpk0iM8;>t{1 z{ZGZ9r_$B`R1A8SV$ekbEn;6)#OU+UmYA)<YVyuTzo;D<mOt8%3I7(iA2aFG%YXos zqhi8~6)h39cyl{r5}2eDOpOw~pjs@ED8y7{jf9zp6E~gTcys2NvF!N#RWI7HwFSRC zY!Z9kO`?;YfA0MHR+AH(^yx&FEV;M>>m$WY{v;9~m13pzPVTP`owdI@aP8r*IBUF! zvqs%Jxqf=Dxky_HPzprA`2MNsgLOS3iH!W@Pf0VeoZZKy4}KS%n_v8H3ZD(+=8Xfz zk%UPBLaL=<?V%8dFq)K{jD@IoJb&4VkB5@s(LH2^cx14*HkcZiotcn5rEQc6L5rVl zWPBfY`OWhayIJ4izdw69z3?Mxcn^PaZOyZzyOZ^YS3bA^@5g$`56%L-XlsC@4BvX< zHi5%+6>uE|jFV;=A9A}4<5XIL19f144y>;O{dJ(?lZr1YKB)YjE}IYMRM1=BfoFm{ zn)g9@w*ftbkAjx+X|5m`3gjpD9z=QFTBP8*@&nWZVgJQRj}M(J{pmkQB%Lgk=Hw0% z%)jAy8w1Acs%$aoA-eJNTVFrn-7nq}g}(uD0xGG{w{8)o_yz{~`s&WC-%<)4HJhl5 zFCGo^(VbDhr4%{_H&KdD9p#DiTMD5QdgDTHSRN1{pK8CQ3^E-sE+e3RP(VpLHqdmx z)(;G-U(#L;D53~o<*|S9Evaw12-qXk(;e{_UxdHuBI?x(s$0_jEP_(&)(@&%((WvR zOzQ+H4J(RoND(v&gAc!wQfLtb>Q_g48m|Ns&UAO;slJl-W)Z|$UwrGY$STNEg=qs0 zQykIcGQ=Bz2j{YrxU3<b<H<T{mCA`7Tb8@7dh}0|SYB20f;Ud>I<e*#od2rV=S(i^ zviJ3X-&dUdkhzwRd+KO^D1tSyYF$1vFVUWTHMwQrAJ(JCvZ3+WV=rZ&SisB{9K4_k z{cJmPdOpSemmRKS7;{@!$JtpO#6}0lc|Y6a-iF!#RrjFPClk)ICr<I<b#Et!vu5+w zOms_(@65bnzx&cUXZ!<UQ8d?vz|thd!JB(C((VDgM}S#WPoK|HR0lVjS}etLRN)PX zx43SDAwU4Gsszwgl>l5-Y4BfuRYmWmhyR(oDWM(6Q7?C|NMLa?TuC?KrL%NYZrY`- zjW~M@CQK0?+ZrDmfAo^g;Z(N0^TjDOUYswK<Tg#{jG?3Yof};=De~=GqLC9p)0;Vn zNV(X|<yvv!JQtg}$%@Tf5xY3Zp~5bnI}Z}i21u?@?&LWKP_PTdjzm_RE3=w9rGt_{ zK;dOcAK<J@PrdxEg#H$iZ)XntbAoY;Cgo;uNnJlFbYBYD%jBNZw3h|tM$dTb$-B_t zc$`FDd=|SBh@XP~KpGp}9#NrQC(Sq7!^<KO(%7=F)caaq7N`jhf5mMR8ZR$GvQoe_ zAt_tT$%3@5lJw1$uip%LoU!Aa%_HV=`DLYY)(<DMS&KKj1g*=eBu%D@tvWBPlGT5Z zsmUZLz(fPDx4di$zU~0)K?gf-;N<}8L1$PGcFKyy5kPM!pmoXzzFQM^9P$I9^0tn) zf6{76CSJUEl&9jfZY!Q(6jxUL;*}3L@&XhRPc6L%9CcR^eFm9$&>C+r`uMz)+0`D_ zSzTm1Ee@4pe#zY<r~?hS=YQ5v%Ww>-yA|Ujs+o10OFn=KImn#ZvjL0W9PZVH?QAhF zaluW`UnI)3I2<&)%8HF9eJP4|8`z%fJnX|SXHC(Z0q1#x`1aS;O#2eN{iPLupYbJl zyB55?8Q0>bXK||3?Q{(}gV5Eez4DZoH!exuJja<b^fp>B3=0-D9HlV)*3mY$>k1c5 zUBcTpYc2TWm%-ww>Yw`A<RfQvpf8TEa15bf+k<#tH8r*_G1VQW%*^@6Bs&LQlydQt zKPIzD)3UnZw@i*HP6f<adDjE6<5MnPVPmq^$Cr(pCOd~szBRdh&$~-Hn&OT+O)<Um zAn1({$xW+^6g3ut92b(Pu@L0=O({eTSr(A{LZ)8cL8cc7VKp<9QcQ>%ya+=yacuuB zvPOyDktmsPswZo3-40)vc{7b1O-hMH5$=Dlydk;BRLV)EmNvjaXgd8{q>VqlmVX+p zT783EbI&<4w)?zi?9j0>)zlU_b`nn?`*eKm*p-J@o0?Cew2>}cR={zatcf*!Ss~WG zt2Wl2Usi~<S83zz;d~X+xc+SgjIwx6rN0768xsAcmG_Kf%=Fe93oQ&pf0|UH*U-`^ zK8s@S?K^dBBfQzn|1FNO8%z=XHW`YD|BfpQ^e)rC?aqRtbm`cJpXHjfNi)~w9jkNg zXSSqv&ra!wx3rb0thfKsR?qhhSzttEqCr9btmK{<S;BM9Jc`qoXl}r7D|mTfPZ(j_ z1A$Xl1a2#QhT95l@t$f@T5=LBfJECRL*Yj<fDk1#o#IDW$@m&ZBqkj5bISyABcnfL zkV_PHpnN41(WLM3LZDlUgADU7q|^3oyR_*7pQ$CFF@yRlL{Ww5r9O!%%}vDPoWEI$ zyxdFuq2FzWlrHuVKV3I|(0<c`-a9vMSl)wGoH^E~QTJ~0o3<X|t50^BGbzW2c4UJ9 z99r^2AwveG<5tpzmnYU;wNI@1e&`8ac6x@FotnnM6oU__ZqoDZkZ7hYoR=5zB%O5X zO-_0<U{EF64hp1&(-}!ZBKx0=tp3tA%H*fW<bacr#0W(@5``2YeGn7|yw0e!)ZNPJ zQqRiwXSu;@3g60#hAX0RA56O>(tQ{78qvOKNC>e;`nLpRE49*O^W+D64GtSkBkPE; zm_iLn5yL@)%X^C^Z%jJ;m&4<dz{q;CRb@gqB$s22y6n1{tbGt5F|r-ItQO{v3-m0S z7`f7dTQ-832{NalbxKPJoGr;Zr6mN;b_#)0WMa~&ipr4xoOOzhQ1$mY+&oV>j4qK@ zO3z3|Y@@+J^#6g83cs?!4Z92}K~ORY3k5A=J%1ZAGXMVm5Vq+LtBMZ?u4*ZbeN3zA z2fjCp7-wqig{=p-@JfKCFukzN$DMC^@rJ+_4EYu-ZnwGxL%!`FZFy;r%Sjd!ST<ed zY@Zuof-698hP#f*u!0rseql8V77&x(CySoP<W>wY^@PU|UI=Inx10HGX88iM&XiEj zgEG_cx^fcyue-%&!9h59k3gMBL1DZkD3$R1GHg+~32LdBN=Y6wFrMTk+Di%w0Yy*o zno6C;FYAg|c4w`<_w(3hkGd8;v@ks27JFQ~Aq_12ELOsTQpuXjB$cqBRKbGM?49W{ zFi`Kz3wu<%j$}U~{A-Fo%N_g=cJ4B1f(~>`D0+@-NvJJ~E<c_>`%<q3?fi=Ea&)(^ z^j@Rxm6uzXPPfR^>lUWdoqsf){{Jg4sabgc=Plk&Oeus&tPz%EKC46-gv&9UJ-lm` zkQsYbb;56}$87VE-*;isLqUqW_d%`leh64IZ$hzDm0rA#62^oMnAZ;0+%=5@=C$)b zn%5*BDwUMbkn6dqD2djR_pl+y``=bvzEzhf9d5o0#pPSIr0;_Lk@Qg4Z{oyhF^xwu zpMW0^Z2IW-Z_*OuHQ={7`+sdw#uQ}=iWY2w6Ui;aTQ)K<v9E%g`&DfD`w&&I7p|(m z7v|GXC%T#1&WO8!Zqkl|Q<pH4GitgiwlYGu8E$1n5l-682?svH!m7LoqhJWKUR1h$ zC4X7u6S9TZJJ7=O&2tOdj0k|K)lQ-<14WHtzsS`pYDZFZ2AQDb4P6nqhVrOkpA&E8 z&J9Jz8qZZ~lD<P617XwB{$G1C+|Qq1#s&=SlwafP$t@((D>Kq=(2s5-E9#S;XhSXD z=g5fbnSd7r6gu-7DsOL`Azp-+u8VZb{vvL3T*7URj`~kpi$~@rhg-2@Q=GQrA`@?w z@rkfW7Wd9&$sz{dbX}#>=YjBzqP$Wkj4zjT6=%aGI%~p!>wEDs#R=)=CckNkbua7g zoZ%Ty$4H}@^s%+~&Z}9$`lBfi9E@c7p>q-L6ZmNeX+yBc)y5)Mn-;m+Smf&bqeV{9 zO?+sTJtfM2oGVE!l~p4=($JTJP!vsrVv3SDx?WMj!HBH<C>7=CIHvw)H@Hn`cnH~H zNKh#lN^vx$-vWc95p)c1ygrVhXeAMH(P|RKq*IKL-tZ{SW5kb|93^9UPG)ST8)?Yb z3@jm_EcX87=teWg)vWxMYx53&JX&^wU$NJUz{6#IGW7{u-^gG2{3D)!i%XMC{OP!_ zhRV|utSb=@xhK*??uj7qWDs~;x-M#x6m@G<5$(wwnADr!gyiGGOAy9}D~63a%;=iH zKcqx_vSIJWZu}kqJ>&Q>flVdrpf>zL$B*5_TLQ(Ar^&N416>Rn2lE@QHl*tmCSO0} zeIT6QC{CCS7SkfS(bSV%bW$U5MeG#$#)5x9BzN685i!NMG?KHXtY4kd?z{5l?Civ| z6~`QHcGgVW&)Nc^5)0|r@<q$VQ-7AX1!meDB;{CFp%)>q`+fUmhhT>{#gSK*Vuw&9 zc})U&O(OD|1oA2Xc^TaxDWVUcb>UhV#l22p40x-hyEgxjWMqQrB2ftkN=+M*O4Wcy z1ZHCLvXHV3I!Ac8a7?#|^^B?{{#7!<;cA<r?v@ax3Xb)Yw80J5ukYo<IyKmIC8MdM z{F2h@GJpJj^Ou}2^v7L1Wx}e-PZ8)9B{9m>8B_(E9@+{vT;Ef{My0K6BOM^%h(HwY z6q<FTLlN4rNuGbi;{u_(l+uMr_Rvtj3liX(`M+_Hq?pzwkBIcdo}y2WIG^MvA83=o zxdct(u>rN#{yg|#Dx0yn>Q`;P8E+}cIGz_TUU{^kx=Men^p^nTF22Y)x(IW05zWy> zn4`;dbJXN5WP#O?mnXd)dQHKNfV@QTK`UZv^NCF-+}sU75!bH%$+*IYWMWoA0v>wk z1Ldt?Hbp*aQ<M2JM9vRl?4;E~ULrV9`pNJA30+$+q8TO@3f?hBLh#>QD2ki!;^@$G z7W|uv`M>e>xa^=$M|{A_f6(A~ROt7zj@RSn2c53BtFm67rUbcJ*no@Yh{7>6I3Hp~ zCLsPtI!Cm%>8iE0;pd39U;}EI4S?EpVx*~!x5Q2b;-M2L`LRmV=ZKPLSj?bzb&e>V zgn$gub)8XZ>BQ;3;vA8@LV{}*Pq0O=8M@{bwQE;QT?Ml7j@<;Fp;Y^pbHqUlX9TV4 zQP7HgcduW>*5*DlBnEe=vvdFbUpQI3l^Eqcd6C3e8^l<fh_N<^(eIxTBi}IaN9#-z zqqMDihr}p-@V}H8`Mb3xUPAR}H(&I~R+S!HwkrWK>iR;VQz)j;QWE1K{{`RA8?|>C zQ`uP7TJZDBb`miTJ-W)dakJ;0OcA4SunC7BTr@ILDkP_38KNIit$;JJQR=P;Tt*tD zR%yqo=}e42vCFM{MNvT%mL$GID}>HfkAV+1L0T?)Y0)#z;XZZ*AC1DUOiwMvheKCR zcX17GpxDkS(7Eg)X?dj8o(@-K?F}zVw-YqT`tFT1xfAx5Iwy(*7PqDs%_2FW3Cpye z3wp)$&gAFFlI0z?XS}JR-U<?quF-l~^e*idDM1>Hz4Q@N%RN6g#Et<;!V}GUQfCnp zLu^+`T&c<Biig>lu)JmZ<fl+a>FG@rT0DI^Fz6C}I^b4vUuS*VuIjQ|k*sRtyG{0t zS~ygihql!x$5ebV{<NuiC`%|A!u@wyZZR#PG{d6Mj24AvSQNs<ML|65%n&^0LTnUV z)|5zQ;f<73*z(nLQI3%h4N5Aa@WNziTK^1y*rxP>T5j!AGvM4En@3t{^`2Yt8B{-v zn-o*c44nYiatnuR9bHc4#gYJ@f2aRnh%Umt5&<a13@xI2jc1ZX`bB3j7G{dTHCjXD zjub^3-n*vuZVuPxe&;uSNoQ8e-m(9ohds7PR2*0D=(Dn)pEL0LC(|o;;*b?vGJCyw zIOdv14yxzjm}{Y)gK9og^$FLMb07INJNbsoyRiiB5-eB(^M6Y*!t#RmUwCmy=`dU5 zgu>2^Q-HXp%Du?>*rp-n8y~4%e<e#EUTwgOwiRV>KC=$Az5eXu`OV+T$KHN}Eg5_) znfO>T_*m*Y;$xESBd!ekbAcCE*#8zM<2{3}dIy{=ER2`M^`Ihi#!eoKpU<GMFhfpe z0_k1di37(H@5G5vDM-7>J}sJk6_>@Bffb2eJPQ-Y$P^2^*VjC9$C#LK_SH}KT~@fY zO_W$zt7|_*M~?V;WzhtTLoIsY1V{B5iK*%Q*@l7eCL_b}G9$zA1|!385+lR#9V5eV zDI>%1G$X_HxdkDA&=)?6COTAtP(1<A<bUVOC`vZ^U-dG|K=L5bRJuPxyi~5BDGMbs z!0rYY6*_Mn@-ddAdmbphjAF9YMHdS18@@VEB*vwRFQb&QRCpFC?!A?P<O-zJ9e`^} z3YRCwbtNAqr7jg7VT|uu>vp*V$$3htOXcoviW@ER>Qd@bec{i?)Y~vJ5s<%`(ih8J z7Ac$!$z3ZmFVn`9`ceQi;Wn)KUu6$l4{N!Fb^G$*`0YP6N@PuY4*BM0gNKJ%zn&9P zEo(QhXA6&3_+ZbnYMohVMDr*AG8_C8+xz{dkIRhnEXTTJJ6xFX@bf-q+I)Bj$;Z1i zgJ&c^%t)!xSv~|)u`2iN+70V-*QIE#1_dbJUSz$+015nPB-Z7TbPzHU>+%=xd|j3- zlm2b%vh;!Cb{Kr=;45$#Z8MBl<`S;W|6QxI)Nrw9OR_o}XORh9HUiMC&IZ_jdv!MR zjO}*8&*KDJQfYfy^StCpX?3o?=iZ>`+!iJu5D~V?xPi~fxcCQfaHY&1`wM$p?q<Xu z`wIu`FPf$H2UEa>GX1TEQZdd?j-(BkuGNwt$!W$=mL#P@e;7r>hDf36qRq0x)k>)h z=>%RQeoBAO{7!Z_ZCi$Sp;v4K;D1vP)a!GFGiF_<(=nuP)uC`F{-g?Pb%0q1YM!*0 zDDCCkYG<l`G@@5A95cI5i72fA{IbA?Q(6J|<xKEPPH9=vdliy%V4RY3f7^60R4fH@ zGAo)0jVO>vO(dEBDl%&t(VVD^{{5dMGI8kmfG9`L)PAFJ+_%@Fs~s4~+WRkC)OS<i zREf^^Wk336&C}|?7fojZM=QY<$LAol=d@vd4nlh+5?U!(nxrR^*!X{rp-DCPC&%TS z_0nN@d+@PNf>kg9rJyy#9(n7^S#$>Db+ZUuqgAtntgPR;kypYdtr^MQkACn;=8CF2 zWfJ>t<Zm0VExuO_iQx`57R|SxekWqpOeC#bB38|Q`o`yf>moL%G3mCfv0l$`@s$tN zbZky>J)4)s%MeeRBnxRtgH<$FjnSRf$s_!Z%+dK>Zk!{Q{8qPN6P4spntR=UyBr;% z7FPuCXXzRM^kBsE^i+h?*EYXA`OkJ!**CLaB;=Oux<Dewt&VRjN87*NTr@d~O5(T5 zaQUFde3IevL5)-2q9ZnN?5yYBO0M}k5uo5-idHuIw-nq)e{-lDc;4IpS>IBnRuRWk ztaS0%j+?g3>B85;JGC2`A&vjKf(rT9oHvcpAAiMhGL8x4CxT=f2+_FL#|Kwn7O8t6 z@K+`l;h1@e@|c--lyL0kMTfvOl$X<D#K|om&r1h}=y=#}arRNnAvF%n{{KrsMRbtC z39iBEDkN<)wrI3^=%(O%X%ZQH`l99KIqfR+(<cMrtVpyx;BU<s*&WCj!es_*<qF}# zw9uRj*oAOmdQ$1al#_#C3}9rMX7WlMUn)po*1Za+-18acp`#qZluL20&b9Y(+@Szw zEDWsZAsAi}VgDx{rx@H<AfJc)l?HmJl)ue`XY7)BNyy0wQ-AT&E6V5=g>2lV+w8av zPKr;4zY93gqt|^BVv;lBYl<okuI7;bC>4Yr|4u|NxIAqWN)H-HP$}4<!UjvxyUNQ9 zMuRH$3*9ji8ZR8C6hj9>7A#@Hi)lqGMg9}ji9vOA>#?-!6KbOD2+8n3oQINM6Ryxm z%19;GpTZVUc!JO1atS|HQrI+*3}tlvM81|}&gw>N-(xZ4=fmvNRpVAnnKWU$G^exc z{!qJp_^ryt&gu98+`?WrjRk){Xd7qoWM+vuz1*xT0-w{%%~aZzW(xI;I6tYD`m@3` zInewRXOVsn8qZvM6^qY2yz7qlv-sURlXHmANRIn|H;r^Yg#TAv2=5y<+i66Lij~-q z&gUoZ`)l}FiE3VZSdaYv*T>ULQH^N(lEUrtF?jlJ$YjF;foyQ?#}8gl{mAR7AH1H{ zgV)pc@#z>SczlWB+YEY(t!a1&mjINEU0?Eom!x+g{qyf|6GHq`3a+PL6{QeZ8tGpm z^uJk}G0!QwAkJG2yH;B5h!JDOGu|FJpFSBpe)PuL?1!EgI;}g^*;%57{qE7(jq`I1 zs6k=>pB^6rI}(^ALc)_w5OE0r*T8iDhw(PQ2nJbkiK7jICzlnW=v#(&1Ld1K26q?q z*HqcRisAJaVR8L;zT5W>h!6L{!aKJt{_=<MYcYHz#ZED3wR{>%*7n4Dsk;=brD$?! z(5VK3q0q;WYGB%@Fx>C@dAH!Ho3>qM*8N8~cAHQjzY4R~{_`e#Tocb0%^IYe^KU!2 z0x9@nyXZ?d=Y6qVtgElQ;BD7mO$>DpI)%Tao#Ly2DTTkVcH&q-Qf$zY^-u238-H8h za_-$QEPiRei+p_^P$}4!i5iMxitb?8;Ie9QS&SJ_k=RNW$wyJI_xTWk*DGa)qHodv zF#SUxZQ+xVY+bVVo+(ZH)s=YCs=SQW&mF7#8<8R8E`EugD=gl2f9wE!7#<)Wh6g}> z-{~nUL`~pZFOZSBGrzTqV*)glH%_-N7dHzAR7@l&?m3jMx8DJi;eND>XECOEf+$EE zum(}Rq2MScZ=Xq9c!S&+0XR3uQ?2^9@(s9==`Sm~kc$QK+J(&^?_nMx>xa1U+wst< zUP(vB9A{sRvbeF>?)6%cOng}OpHH`bJ+C9)DB~`zA<hzyqsMOj-G&ZVIXG0nR#^Ly zqYFY!tVtg^T4-xHTERDx8SDIewX}$#y(3ks_tZQ>>+M(`!N<akeeuKhvoAQsBpH{B zJ3_j0%c9(}RBl<6TTU$Z<u50$9h#82PA<1R$}P{!-N1b^DgUbew>^Zy9+cA#bL%>$ z7poJrp?0G>6GB<}sjv2Cm2Z^Ae*DsHx3^E)U##PqCDBzTj2_1Z^f;dTL7VhbY-QCq z2h%_Exx`i`UhlZ%#;Hck>(4(fo!^l6l$p02@b#QmPj9e>!(9J57FzE-Yu-$|?)#gs zTeF!ra~`M;eo&cxyV1YFnq0e%%sg*M<t8^)`mn^NH+sKsRk<PS9^LOu7t4{~s92Y= z-LtA)nfa4ECg20yp&Zww(|rkn255A+0z}(L<ATrxquxkkq5V`NjCyyUt-bo1`QDL7 zr>VwU+f);UQQxpx^X5+ftakDjWNHH2(TzHT*#~pr)WjStv}WR{AM^KTVU6CuE0=4I zQ8y=Qn!ht4%PV%s)6BtX@o-wlZ@Oi|6&$>~#rN##1rb}ACg5m8ctl+{Z&-g1iBC<y zqr)Pnf;3nIf3hb@OchS<*>y9rRP*O^@}<Am{MSNjZ{vkf*8*qlHX#V@0d27LLf~;5 zY(o$b$0~pMb^13MM~)gcI4w?SZh78~ldWA4ywKdqxY<3`TIj}&7Sk%vcocC^ZtgVe z^4e+EHBsu#UXyD0SyjcRRGgHYVGFMXVppLUB`;olFp3Yh4npz4C_Y3i{^^$=JiPJE zFn785P!u0(-5AAhzFvFz`30Io%Hjn&z%#i<#V@vU(Jr>)#V@w9&@QzSYQOU9aqAx) zo>N6GewkH6?J}!46yIg;{FQ9iAG$sf$&A0KVqAP4iqE6s^HBUmvG^*Ve|EZB&r|tw z@sm*eBr3k@Pph3resUJKZN<)!d{{zyArgC^cS?5@+uh0=weF5$dy2)j^R5z8K0HT9 zy1lG|w7sl4qSk*L^>JNR`^T6Pk{CW_Ok@0cK7Aq+AMDHa^&gO>TDsH$RdcWDj?Q#f zxd#aZXNG^&+AG#x2>u|hE7oBModKoT#3G~-lmloYpqn@`y=jw3P&S~^fHaU2HMTrX zW1Ee@<EDUEr`YoHrr3rd@baAOVi9<GPIfs6D38@CKef)00Vijdu-SelS}pHk^qVe6 z^I7H>m!;aaO|9x8O-KH{43(Lizgw`mnVZTjSl1b@+E_C$1U}PZ%|a0P?8`RuM&J#~ zHVZ?*m}$oWZye!`1Kv2on~k{H6gL}jvnkFOv)PwsvoB_|FU{t&=%BMSo6ll4pXIYz zTi4DDfq%EIT?hh?Yi{R_z`xtvE)0QxHxhV}gck|CNWx1*Tq4CKA}*1~vBg<8zTTX8 zBBX?!8=&i4sFf0Y{i#C*5S`c`JLK3zRc@{msHk?8+O^EhYO894QRDA5ry><={^8!y zW`8z?hT4E}7|lIzK1q&%a~!d5h)Hq;oa30tIqJKv`t|Il-R0!D_X9Y`57tdA%+BzS zDF0lTwnv)><-8YOVD`^HjX6|d@;&yix@!w-M%1;JpF?HRWR@R~VG{R{9lWz&9@L6` zxMM0~S><kz89zE=uIxe2_;m$l<hG1S+>Tl8S(7m#(c&7DTd_@9VGi4~2a5`4E{y0l zg5B{r=@RuidyRa#i5<EB?ANs9j8jZn<=FJF9W(Bm=k8`*ou@Ty(sJiC*6Pd`E#_Ht z@nX`7#fEl^aasGUerw%skX;{qV%n06i#L{j?Bykk?5g!Am1Jt29gvu%TD~01mRZ$W zRl!fHs;VmZiJkT@@RPr+IVt~T9fH6~c@+4`D4P_5h5^b26ozRKM$;e+(;$qd!2-lB zptuEyTR?Huz&onh@x0aSh9Mv?+q`GF>*6lvX{B$Xu4Re_C8<V_<_)S;sS?)8N~%g& z-S9`G?WK*eYJ$)P73hj)bfso=wHXG8H)FX?1VSu9X@G_S+7DK_-zI^eOh6+6ok83g ziaTSI35dtNMBGb?dx^N06z66erFFB#YKGr*gd9M1z-H^%^787~W+L#sTH9Cz-Yr_& zVF<h~1$I#gJns^_2n1fMC3a~DyjCjvC<LBb);<D(r<S!(L*S`#NR6Y^Y@}vWYBo}{ zDfOzom-ebXAJnV%VF;WTRaSc;@VLtA5ClHZJ2g!Zcwc!tc0}j_=$>OVLLx!gfJOmw zcZx>faqdpp2t3ZgIRb&#%E37ef!As<;s#UPV8jjPaZICLc&6dum1!kpHCw=Hwh*h? z0#>t4WHr)km08Vpu$t|h)v!TF&#oC^UhPcjiOUr4%npc60O#c7RjW!Zhy}G&wZH-; z@=~$jrq*@p9q3X`ZjLOug6j%$MI~g`-i7FT*8!{-zZTm24uUk~VA1T$?p4k-k=yaW zp}h8igCE*)_duV!3v5)COV|#@0xK_|!~*31i7P=;&n(sS=`N^Kd5`k`=4Rzp<^AOb zSuyQ^$cqQ|K|kfKo)lU38=s%qd!L<eRoyr0F1vs7RAaZ~#I}&Vg<3P;)kk-CT-SPn zmDWq+hJbo&y)`xn6#z9vTtkYx?U1d#?Z9dLo`VenPwnEEjexi<^mWD0du;LcspT%1 z#q4A@2YUUn`ofSKvX^T1hihKf@8i2$u%w{}>$GZcV=p_svSa6ZSskO<j<QR}kM4aY zfpx#|-1GXRv##<34J_8L`KR?}T_3=1wcUF4h_>-A_LXW+#3cXp=WNWk0he!wpD)X7 zJM>FjUw6hKmiVH3-244@ZDlzXj|Oy^Zv8#m8+4&szlTXr*tD!sf9}_|ox|RAS-bSo z(;Km@$>-ja_B6d(k8S)Ru4TQzAx=!%gtF+>)8=+Pl>VcNRX*N&#<2FYR+Vrpl`^8Z z3y~#6#s9f{1o<#SHFvIqDl*<JB_1b$@V68{2(Lx-PRfLrY7sjdXJawgw(xTtUJ@=_ zrNVIwxxk`3(BP(Urk(Oprd>>0T6|2pWJknR;pqu6+#?t;`Xts;nR$A7f@(Zfo;s>g zS!qMTTSH0Y47JGt#6`~A;BmKY(+J7|#N%wib!^pKDza6FA#?_%msvXN_80X#lyt@O z)k!-tZ5vT~wr^Y#$lP#yR>`J~wvr8YocK*ZNC)(-Z5sq0_pNOL0^(TDPs00;eZ6YF zJgdd62#)CWb|Rj9YNuh#kY*Ktshx%`L%O(Ski;2zYG+_4l3@h~$*$&pwRy<$r-MsM z4kc-DfB(8@ubniF_;ysoMva)hJN>r?x0#U(B4+dug|V)OwV6IzU2O-u#4e`?j%ac| z_YO;0Q1xbFV*WgKB=~3d;|HEpWs_8S|C&<&yK}5VzoZAQw;W%*uU&2Fflvz_y2jEK zp$eeAh}%nX`w+K};tDNCY6~s%kXpgU1A*tLU^57TuO}4&RV1jAjVp$Vml9#?fxz)1 zYzHB5yhuQi1RX%?0ZKi9xC0b-5YRz_zO{A5;PO(kHQ5M!6&?s^AVE$JgS1W#yu1iN z5d=j7iX>>Gvxj!0Gym=;XIBJX$^qvb1n@8RxX#?~+RwZhUBcm1C>bQ(f~-<VQVkoX zN3&)u>&$mCP0qUZuA+6ZY>dzf-*$nwQWr}u3xq?u2`A~MuWbu$U)rwq#k}iFvc*<N z6kAE6I0A{{2uT!2AW<A4iNX^ygD1%hfsh#jNoELy%n(R2LoQNtDRmA~=TPb#q|Tw# zCy*$fkVNqW62%jeD10%ueMzG5g+$>?62%5}gm!}(M6bQ5Zi2vNi&tt31Sf*r0M!Ik z0Li0(B#-itJj#>gVGSw6nxqVCNEy~7WmJbmQJo};>X0a^law(9aZ@O63gV`al<{eU zDOWmt7qPU2W1?6+g_Ct+C;}*KLj@_IGj^Xac;T-fz#FYug(?*w5>!xCP>2Krx_fnp zRMkDCJ0z+xUSj}{2^j-;mDei3t3p-*KI?TB@Y#^FfbWOj?}{GKs+u71{&6*HjKIg) z)hr5ukMl=}`-tK`Lfl6b*BEh)DXuZ%8dF>c#C4#!4v6bOaVyL^Ygd@{LMbcEQV@m! z+Ksr~6t^33yD9D@;!aZBNyMF`xa)|!PI1=}cb(#1Anpaly+GUxigPrN&^ns)adtFM zL*UY%CybRm&AHs`X`YF|XIv2Qf(S1NctM00j<|4&3rAcy#l<2nmf~U&7fW&3h|8w9 zY{X?#Tpr@`C@v3ic@#I_yt8(`IdAWL^ArT$-ff86MseE^w~gXXAnpXkoj}|Pio0dr zUVF<t8aZy6_eIDCWLBm<0*^B*(-(oqRVovKz}s7?Od0}jZ~Zb|5qNv+m&run?QI9V zc7)dsc<l(U590bzTpz^sp|}x<8$od+5I2J2W|irvomHj>N|{wA8DS8hb%<L>aqAGb zj^YlN3DF)d14_bg4}`vet|0CT#a%(%6^eU_xR(_75^*mnuB=6fwyXuuTh^in0?%6$ zaWyHfCgN&RT&P8uHq@dcQbR3zAtVEeMqD(-MI$bn;<6BzMR8e(%c8h^#N|_5KH~Bz zZW-d1QQR`bEu*-7h}%bT`w+K};?7yL(4MpCjIW)uh($;NbO-gjL-ng>8KSLb$!qTi z$d8~_mMPj+mVC@7gG){(E;-LKOgqn#*M5y<M+Dxd`z$*na4IQp6@tJ^DR0#Sf%idQ z>tKX%f}#QOz0MNEEupw2*3p1?+;nvd1YW<z>Q)F5fciT&M&R?ezhe{vpT9SqLlF2k zZaVis;NN(KxK|YS3URL}PVEw+Rl5L>J%2NJn%~fmKQBE8D_SbznjkI~adl!@kFtK| zW@S}n{YYluyX6_|X6?P5ek}WGG;6T!m(F|6Z?a)Yu9uJhmYQ;w89f%njNE=PBi~ER z$bSY49Ub-}Y2o)O7CG{T>diUxnat>dIy1Ty$BZtOuv8bz>+k)sY#jULYX9tE9lL$c zu4igj_f9cy$Ie7I{EpQ;f0lh+<?;O4mshlAc7I(j{A=?5Yb-CIx#qpwcaE@Od+N_| zJ?0S2jP4RJql;3^$mcjSIzMHFUgp2_s(14>`)XzDUhD6SsmzSb!r9gAfiDV21gvAJ zdB4}uG#y``8JP|n`<q}Ly8S-v!{x7{Siq5|W|3BZ>}99!$G2X3*{>lx)wyB4F=31S z+1&i{<N9t7AHwS9Jl(VXse2n{*ZQ{qlsU^|*{i`XCsZrfFWvaXTefubgYu(m_1(t4 z`sDSs)M?Z1Gb39SHe~U_H6i1lxUt{LcKGbKivc-|^%yehVbFtZ>{wWtmdO?7FK20k zW=)+oL6g9~8f3HcVzujO?A7yLcI(egp9z(lWu*J#OQGz;9UhC?f4n}JO}AaRZt29F zOjfS&>!}M5@1D%cE?BU~;j_YHEZcJ4=gV%Ko63fL+GOz0(=G0^^0lH|BfoO{hAj*! z=-IyAr4_7dVxhCk({<}ubh#yW(^B_Xv$1}2Hhh05Bb#~ex%0uyY7^gQkGs3|X*zLK zxbCUGtdXu^^ZQ;J$CCH6`3KZpp0TCD^T(xG-aN=gf7tE$>)$u-WNm8%yq9up#6&jN zCYzn;efte_`Fu>hAJfAE*@~+DtcJJy{tEkYMBT6J{eJ0B*6F7EOsi&BF0!AVx<7gr zJ?0tfTHv(S<x&0^Hr4E_KU(i8YtQEX=<oAq-TQCY;-s+?tZ$wUW?c_oWp{41|AI~Z zwT@?na=8)glYSGb)CvEp0;`=^z4Q0I{_4(LZraW2KGWhV%dfrQxle^EW0+=t<C6z7 z=a{ouwH7WIl@dRdbtoKk`{;I+9~*I{{N`uD^Q*ADpVig7xA)t^ez;V9e0{Gi$Jm{9 z$v;-;HM=r9Q0w8pj^BGUl&#4Pdg0iya~R9`KJN0H=O=cvzQcci_HugRN36xJ4&LKB z-exS}V6(!!g;mb6<Blh1_pEuiDO>DytKW~&o$T1_BTLsk_G&SgT}iNSvcP5GR(4|b zq3sQ7`dww$qRWo*u%8;k?(JL{l60tUfA&SAhDSYH?YPQroZG+jJ<A(S*t6a%zUzPZ zL0uLwwCu0JN$P2=(9N!AlDXqU7C+d=`hccmMdtGI(=RUOm3_|4@(u-7^6I>ag^&2% z>tW~LPqU_{pB`@Bx=sN5%E|Jx_HJP=toFL~^~Y(ae9L-zd{H6!^hh(-&e<vLr@bHD zVl!s^n!nF(=oNPM#+)hdMgCTcP1_&8Wx%|o5cXo6)AojK=4ja2{0e7hW+bOEcJt)k z0hc1nvae5UiR|;Qr_WgLHy=%0?RS^4X=4U?1^Pc5!a7_%zc|l6avfXOwZo_Ty;N)2 z2NRt4b&LG463bs58Tj?{*w)%GoR3%zLBOU!>y8bNyQLqXd_egGO~%$|vZXuX{H;6? zcxnTyS_lmRwM1M?iVH_vIK@RHE}G(E5Enynm#jUsm#lf-OV*hPqX1n7beW(l)~+}O z;@@}zyeEYB#5x<$Xv94Q^pv2#fcF>S*<$l$Ys1U4waG@{cy@s72(riK%ie~UR~vY> z39mL%Yg4KZARmH!f#*wj&4Aa8@R}jD8Ks5*3Lz*Ic%g(B1-vN2i^5hf%4RIS@fo1c z2<i&Fu7sBiykx>lMk&cuN`FB82}%K83gL|e-blh5iBd*VDW3!SoS;#_8%1~pz$+lU z0;p{ZXp1==&~$=k0B;82Ed}0E!dr^3Ev2t51GJ2w<-l7`czc1jm+<!DYkTQy`vC1D zXg~1w6W%G{og%zbDCHEDavIQSg3bW%4B=e|-gUyej#^!(THOG2gP@zhyGeM@f%ly7 zo}-lKRLToLF9>=GyqAP$k8QENEgxTdsGsd=Gpq)rCP;&AvBs8<Zx!HGA-pQKLjZ9q z{t(cI1i1mvjqrSd=Sz6LNcE*uKR|v2)d5}|!V3Xj2;qewHH1<_0fiD22D~uBO9Wmb z;U(e}GLcRplK>?VG#shJDRnsNJe=yB11N`}e5B@6YChufDQ+^L$plToH>S`x<^gXW z;mt$I^Qh$cfaVjl0C)=sZyoT~5#BnauA|iTfYuYV0eBk-?=<jE6W(d0o~G0@fX)zf z7I<d~?<VkW65dUu-lWu9fNl|V8+f+~?-lS~5#B2(EMD32x$qj$Yl5`E(-NM8orl)J zj*q2-T{Z%rtB!yi339S?#px^`%c{VuN_bW61_9#bxdU=1s2cF95uP9L{0PqvrT9@P zbpX{Ns4np85?(0qLJ2Pvr#PW@c_=RoP#8hYf!Cbyx&W^W;dQag1T+eG5r85HiUeLH z;Uxesf$$RWwFLTFA3%KwN(5da;Y|hJRKlBz+E1n07a+BOQWqh05v49d-bIvmF`&f+ zEdkyV!rKhI&4jlZrEI2Bwjy;ar5-}+Axb@jyoV_7VL*ooIs&{Sgm(^j=Lqi{N;yZR z+(q17io1&(cPYm`K=%lGgVZ;a`UW}PP!5&7D~@sa7&+T}An>ttw$Dc3W9b6Og`l#) zD@%AD!1EwH5BouY_*i-()ss@|Beg!I)<@p@ls5oS06~Gk3naW);KdSNEJ}%`QsR&r zN2!@e&7{;!<jthKS%9(#$_8FG;f)2}Si&2NQpQp#xk$~W)Y(X#O{ueycQ)ny63~|f z%>mvV!dn5n6@<3}rL3S*b|G#T#qC0lU6f-tpxp!&BDIiG3z4IcavTSAoS+jZ`2>}G z8F-fo@3Q?6K%9qN0d$3+tH8TTc#nbinD8DW^)aRX3FuFPo&fI&;aRFZw3cc<MwaS9 z2)ysD09g@at9FG7n~!Bh;8i5Nis~VN_;)J-szgv_;8iBP+Q6$#c(svQn^JuM`4Hp_ zJYT|V2E1m3*9>24Mqdj76hcrWQX?rf5_uyjZxo;?g8Ct~AEov~TtA9S29!+DdX%!B zO4$p%y@a<9-`z*wEks-)#T`f7af-WuxC<0_QC$lvJT9x;MciGAyN9@Y6!%h{t$nE` z=|M9}Yp0n4y!SO82)zG3&{RR-s=kj9_YuW40Mvk>CYoB>CK_IHTg0`cxNwcDHeADd zHwJMr6xSPgy$LTHaoH3%70^_I3XobrsoM~@jpBA9ZYRavM%-<RyN|g06vq(9D9*{j z0}5bX)2e`~666QSkDz9Nnh_KMD1xA5K*<D605pN19e{QabQI80f{r=V(jIf*ZTr<B z6M^%@^MKA1bO%RccN}=Hy+Pa?igR(y)VerwJWoKL1O+<|(*`?ozS|5?GlC*;gcjk* z^9~0zoS+;)IRxEt^w8dM<Sn}6I0S*y<Xu2_3A*R#io;yqyOvI%aVMg2ry+nio)sV~ zf~=ifp?c+bZoqRRJU6FdfOuW10;)=oJMi2IuOF1P{hWBM9wNs>%JI-C2hc>sJp%NI zpvTDZm~yD0UROKw8mOH|BIE<o0MZcT0F}FgGp|84;8i2MYDld{sUCnl2&xXe>Vy{n zya2)rKxzP`1_BBsC<u5#gx3{#T?wx%l=)qqdHuQp>PApB@S+KCAn*nf-awQxkV+W@ zXb?ezfj5}&@`0C6c=<@pr_{-SCKEITcvA>(5%3lf-Xf$fqSVEJ78A4tcuNRxqw^3P zJMi&1fE))X$3f>>+JnxVnoc3^6vdr#9t4Q<rWP(92)rj-y0{|nUQ0k+0>$+~Tpx<d zav7q{a^WS9b{U3%v1EH&{(jguehFUOGOz(MW#;L_556K{gd6DyJ1qQKXg?FpF(sQ8 z`QWQ7%rUz<hT#*hJJy=zG4J%a((AMgPD=bTj7~~aWwghk1Uybkz$n{bZImrn-$mI* zBP8PEV+TEc_(Hv~X6Zj(v_cK`Y2q=XSw)YEKIUc>RTa@S_#^9+ve?=+L1=@DoQD<I zdAp8)?%RbRa9!YiyB-LA0j<I*$|`%Fy2m~Qfv4`V?}5Nm@8Rs^9-W=^#yLrEIwv{i z&;)FSmu!v`6LUH-83E1X2+}-`faY<8V;oY0a5@r1rz1f)9SNcnlO>2-LUBtFw}j#j zIyV7f@$ybXFL|2lCE2l0x_>qAX)_NcNpP!4{w|f?IVjnaYAs!~T1#&5skOAwGE2e4 zK{E7`$w7s4P!(BZ4w(4kCF|A8f02uqEHWiiZ?ed2h2zy$WRcm*%0k;lJYJP71LR`c zTKQ|+T4Bi9<P+CUjXl(|QRxTT)Y%W$na06pA~%=YOq8oq4x?O7RZcg`xFj05_+i`J z!iP*U%{AA0TG=2}KyOa5wm|^Iq8i`Z%iOBodx!Nxt++1NrHTuTqFq!jHD%f>U_CtR zt&NMVZpD&M&wKjbFOeB+?7985(k|6`!s=|$j($4l&pg)hay84m#F2B^zkc3VkBzq& z$adx2w)3&tkiq;MMxO~gScS3Hy&l=^`D)NJmhH7-RqFLA3)s)?YR~G_?N3KGa+BZV zEkgnivq3$(Mz=opsfvX>TC@72rYF+b-5IV|wc9$luq>aAYbzBlFJuLy2E4kte(3}@ z=I4`j>a|HRV{Hn`7R>BrzkzvpWG{=~S$8iRzW3wjE#Ewv!Zs~x82-B4qI0a(3%4V? z)Q<<T>MyGJ*ZlGIN_IV}-dR<Xm~m`fz|fCU+4TLaU`4+wHm^5+$~-=|yZU<KtqA6y z9yZeZTJyPVex<0NI)t5rI(@8r70ru?jcoXuMve{D4nMFrlYGNZy;uy5(9>qI)=kTP z$a=bTINHdu-6yP$I(q(qC!c)4j4pDr?9bO8zcOuxCF?n<YUS)73e8!Q)W>dR{$(|m z-T3v{xzCQS^JcNt_GG_U|G1FNb=@~{$GHiqEb39F@1!%EDzVn@ohiIwdAbY>3a!;3 zV%0-Owln9-D(C892iW?We~pRk@%3NqsEx`#aK*OoSmR^kk6yAloXWO$zBr}Ei}Qu7 z!;F<{Hde0jh%H<->9{KPj4Rt0zv-)et*jrjfgc2yn>}mFd^Yo^0src9f8q_6ytDn0 zOS@b5Wf6mh1&6r1r?K~vMsJ_m<}W7}-had4YDs+$vqe>t@A+F@Ol9qZ?_YQm@Z6uB zdffiS!%x4yWqkFS-P+f;h1&a31pDjz*qIA|Tl<Dhi#dMdZson>*y+O!^XKlK^P1H= z(ehDh+Mi#rUs|3lS2M5MayIAlk++>ICof^?)y`aSpNg3H>*?Vi^+>tF1`SV`ek#!8 z6#MnN?iF5D>_3{tB{uRY^X)z-w(^Sa%#_HeuUJgZcNJ%Tek+iTXfxK%u2tq?w&cLt z#v>|^sKk0C7DnD*ANVahUw_JXR~jtd!74l+`uNR@k5@ByRj0Ww53XdeHD`y6d)eh- z8XF&y-Q*`bk8^C<N|&X{t8XN;3wDkvWj@KWV7oI<HSboiCxbnid8>Ktw$~iltzQqd zZ)a8K8XMU5y|@U~=;<t?WBj1z%YWI=rXQN1Ie2pQbate9a{T(KEsim}y*2iCiFwV~ zk`9MPL^d`X$bM5h7o2ome1%0tc-Nfv-lRtC)^|5Y|Io|nKCAXq%r{f~F7IZC#yxy! z|GrCC_Gx){Gi`?dR#tFC<-E}6bx$_=dAlh4`ima0+mRXRTUDvnEcWuO$|FB|d6j(@ z;ZrF!uGf4vqGk8?6*60W$#S&~DrKZjZ@|*?YkAZebFVxbGdgd`mF6}JSoXcI&0o9; z`;dKCHmmRO++okyr7-Vr7S)})fvw)T{PxUQXI8RDU;H-AezE2kwz<aG`t9FOUdbvf z_q^4rQTR#be6mqi+~g;9<hMCl#J=B>-fKGcGW%x8<BT2WY#y;cy_SC(ty+D<_?<)c zmz`RzepGe<`?ksa<g*=?<;aiNu{%$4-KPJtYP$S-nf#0q+tU5>4NrIWv}dl_PuBa7 zUbRp6kiY})&(?&LYh6S3ufdj7uzJ1!y>b;<cFz9KgX_3gWlNVFn)2R=C5~*Jw(mu& zerhx3(def+L4W=9IeWdbd8b7~M%`gO&#v98YBc#MTQD~7*BdkLU(wo{we)BSsi|dJ z%Nz@{R%xy9+s&gJV!EYu100<ejo<FB-62m6@ECyj0ciselb)82-!DAAK+G3uUjQDR zHX6TUT*m-&w#RJ5&rX|-m@m`5#P14^6^L1pwgT|Vw3YZ><+=)(`#km`eqY)?#OzPo zkKfZCrx9~H?KI#sX=m_z*7Ynf?|R%t{N41sI9$G$eh<I*E$+Kmm_4ZV05aigkJm_j zo&K61J-e8BAmIP_O+!E#+OmMk5>y?j)hV?);;K`eCm>IP8X~nJr8Y!dLyBtzs1ZT! zklKz?+aazU#kB|2o}gYx?M11*5Z8<1VgSVu6l=!K^wAP+Ch#%|FVhS<2Q$87$O4o_ zP&V+g32zMW#t_~Zm>Y~S8wR|wfW{Iu4tV1TZzk|&65dRFZ6<wf7NA)K%?93V!dni! z<%GA~EECWul=lswZwOieycLAE6L>obZzocBQtB>1y9nA1yxoL%9C*hG?>JJAQ|bvo zCkQ$Typx3YJMexdyx)=fJEdL&bd8|vz`IU(&w%%g@SY*{8Kpi4^qim<z<WV>8gmb= z#+;9@#vHdd%z6Jg0CFJ6(cBeg7`&f7fagJY9_B*;ajCyLpy~v90?(810)Q7lcmXIS zfJzAj6i84I@PY`h4e;6!UK^ygq13j3+7c8Fyl}$n1-xE_*9)n=C^ZI93_-ELizU2F z;AIkCCQ>sgH49J{LD|5|CcIqW<q}>lQgbPFJfQIe<pD2`@a6(<F5%5J&jiHBcOIa5 z1kDHDe8SrTye)*c1*uyobt|B)1Z@M}Ho_|eULoNXBDIiGj{`bR&<Wt3AiNvEyFqw2 zka~ksZvwhW&@FQdn3G_pYHyp@Lf|_%h8&D?FyJx5Q^9mZRfgButPHNWmEk$e%hW>P zIVzNap<Ee0<`v3hBk(b=2&f`KmCC?St_&aZdcdnkc=gH*0mR4LACNym^?_HP@Y({e zE#b9ADQ&5ga6sV%wF6!|!ixu9JmJM7HJ(xv03{IA2Y7u5Z#eLV6W(y74yV){Ksf}B z0Nx0~n*qETgf|1JGbnW?pqT{CLd$1S%V(qIv#I54kYf$ySOdH@gtr#ZT7uRg$2!Wf z9y!)ij_=E)Xul^znnQpN5p)UAC4w#kx=he>K+g$!0q6xm&K4<JXA910TmZQc<PFH1 zppOB4Oi(k6G;K2r&RIhMg%H#gP*;Mw0qRCj2A~XrG67{0G!f85f+hi)M9>mIO9)yD zXemK^0PP`YFQB~y{cMr0{n>(Z`CkD2LeOnMw+VV>fzt#FP9?7`ToE`$IN=o1iB2J% zaSG{7r;zSAt#qf;N?*$~t*<3-M@!3e1YU9v<mf>;dRPtu#PtgU5jT+H23lqU;&hsC zISheogXSXdT*|u|ajPkAuVoGlKe=Y55P1tJ??vRjNO|ue?jFV6w{+LuxAXztYs9^# zI5VqSS~Dw7_pUexb)|FAa@Yfwv*NR&oRtqkV?Z8A^`O*LK&b>}B5x+;%|%=;#pPOM z0-`!2HJ?%!B6T69E=1}=N?nfB<&?Swsaq&@s};@*tawizM%-bFI|95Tg!c>LexbN? zh&xAdw-9%W;$8xJNziMgzNS<MoX$GX>8z7=Ev=I^Z)GLKRie1ch^tI-wGmgF;%Zx` z1L7m&1IUM<rq(Iirq-NJBLGDZ6p0OIq;+}3C0VB-@KGHOXgERnfbt1i3}`VyOOazK z<=Bk4%@lVS&|!i`LDxHqbiJdXJ03;4;{x?CZGoDP`66`=0w3RG$20`~wd>GKT_?@d zb!f1zlLqSspc@3eK<W!heSx?a6!#L)OM>iO(zW(3yp@42nFxHeT0lqDg6pWXk<evD zk}fL>x~wSDWsOGMXo?$yxG_AA)o{qaU{+>ZVF|a|$_sR1P(ox%SLnq5h*u{PRa2($ z?e@p+A43W7vFc-;5<sQeOj~cok1LaIjk3nuPJJ9V+suP?a;@?@<ECeGwr0k~75O1I ze`IFuF3x-z|I==Eyz=1%1-))xVCu3yzH`GTIkKZ|z1Or`{=*_xYu7i0E~5`UV{^9J zcbIeHh$lOC>+8zpzP(=UU3t{k-N<L(j}P1X<zI`>m9Xm+*39HGjtplB5<5+}oF()N zw@SBWnpE4=CG)pfvA!qSz^+3I`myi7t3T?8tE&pwqh-1KHbgaV!g>xoq8`yOI-OOW z(BPv^>Ko13zzwHPx7{>kn-iEE6!{jMRlKsuMBv2I0!*U?v5yvDLM@1uwF0ASW$A|0 zL0~w8h%v1PF|Swiyc=-9u|dsK_u_D5FOhX2$hwe@NdiGsfi4^`2t*a+!to+qvJp5z zCV(IlNPU_Gyez`Y23|JDW8JJq<{sTJ#_3)3Ag-Aw81|sbQmeISjL-^I(ON_ya7AA$ z7&NvbgT{R@y52`d*T>aSIK@FKHfkOFB~|acxP+A|>5PD4Y|0d_7^~@Cv#z;WO;ydh zG}Pj~(vJ6QcKza<<FD`TtGK|JfKRGb!Ks;vZat+5%3b4%7hcohPcR8?-a2&(^@H;r zdZ0EXCN?=9FK3&1yL;mfmbc1V@A~VQY4&$Itx|O{P((_X@m<kAZFQ(2t6OpJO4YFh zeI%+OCDos-hV;U!<Yg6t9zQ$#v}e`+d&e3SO3u9$J`HNXS3(U9_i0c=W1;<6^pzmp zzLLwWsqxX))L_Kf%CnPO&gzqCTf#n7UM7-n5h<>hC#gn_;!Le_h03@+Sy@$CaeLAM zrZ5o*oV;e(q$7+3Gy)gHN6<}!5x8kEf^PVnz<q!d_WnpcVc!CQ+ri$4uKK=)E8#;O zgAiH}6ak2rm+aIEfnU4%)5!s$5<%X80swV)c0k~9-JQJ=5XXYfkDhhgtL|u{4wZaF zkh-`&#;HE3i|b>Y0>yEXZtlwc8Dtf#4YKNr4_q)~-s3;s5c$#J_C4FS?b#``bI*{_ z@OB;BHf__XXV=h<?RvIt7ZM7p_OB*b{<{@}<~67W{HT=dFB&dayvV0cd}i;Abhx9y zEu%gHT*J-NEr)-{uqsVEwXWed%njeEQG=7^A{QrwFpv+27Q5uA7{AiZvL0=Gvh&K3 zjV8)y7Y+n(Wn&CJ(k|T13*Iw*>iTq{Z+wlCzjon@eE|v=zad$^>73KWsGOXj_UFe+ z6A`9q&C$Wa5z{o;qFKvtQ(~dUw%)}X8k&&hS*K1NU-L7sYV(ryei3M1HG~dTbfSs& zx8;4vtFRF5T1b5-K>rfkCFz9}jvJ+RwLrUCi0u-@l4-JDUuaiLw5uhxOVTr$C??Ql zG?te<>K;MP$ulS>$i*GYju*N|(p#A*#@=NVgr!_6Mi88G4T@2_bc8*56pAtLII-cZ zpBk<pf}_XP<8g`uN~k1L0{0dor+C3xWh@?vFF8GnR8M3rIlZg_rks_OoQbDOl49!k zQTcF*$vv<5#U<2`(Y#`6)Wp~s#>OJnjTiW~KQDej=#?Z+3U3UoH$M`=uamZ>OO!aU zlA6#&S6+9{gQPlzx>Ar@rx<kQP3Mj<+~-{>*?<bg(38~?eVlU6#ZhcN6(bzW<{Qxc zX%ussiji*2p%`#5xTaC5)iikype_f*x(L_IrpR{&1tL4>oPfi+WYk46UNupdd=!!I zJd^4o97xYJsLK@RI2=j$MKO{wtge_?sY!!S%pkEC;ndr(n87$RAM89D#Yo1rx?*IG zFc8HI6pIm#(T$6VLorkv(Q4O3F<sHQU7e>>ql8oY=?0DJ?py^6h6idRseXlGNI;Mp z^%7nDQtV=3^I<sLubh){CnFujNLIxrY7>AW0>nlMwg!fc3PKkLQKKX)WnD3H7ki)> z53v}*puw=1>geL?)Wwq3v#uDqi>slSYGN^hg@kc2aVUm&@!W&m`i1?zd%A)hB&TwJ zPQLtJucrx~ASH9gkkr3_srZ7DCnOp2gfz}{k_Qq~2uMtlm;wM|3c}3B2ZaT1t&@{> ztrM;w<JU>M&M8lv+hb!kUE2EfodiXLcysFT>n-jknj<9soyG_piC35I)0k|Iz~bs= zysb6)XhXgeF5=+VNjupoS8UDJiZ|b6*SZkPZ-#P@pDH^$VhvLr{j^gZ1Bm>mI(l(f zC9s5Pjy~FHj{X>0$p+s9h2%Jng>}$G$}U(6O*EK2BOKenaG)cKksMUY)(^y@TwSRi zOW+k^iDN7kw8XImhqnp!SPC12rH&yeKsucf>cOX<OsUC^BcUr8OW6gz!B_)s+aLAl zPxYAfxarW<p9G|fw=t<VL@A>mis>g7(+}zgz+!LockGMoX}mYe)cW${m;x2KRi(@# zm#vP>)y2%!VP^$c%<S#x59b#Rky*OS&xe5si#yZePVVr2h)`fnG)o|Zpdf`4ygGjT zzu79AzSLc=j!s%v$MP6vS2$?}w8iE<E`gMH3`S_-3R4TwiJ79e`Eo3M4=!Mf{hoha z;d`#x^gWehC9TTQ9p6*odw{kH-!sSe%;|g56%dI?sApVUDEF@pV_~NzP>Eo(W=JI$ z9IUh#9MtF`$z7bdqlopb3sS{3bX+lYz{OHrq2?msZihGyZxBdik3*1lj{_$W$?Ke) zyN)h*1akBebGPBJoVx{ba|)H5*U7p4bh#TNM+-4`T@K5+Bapina!Wq&<lMfx+@8qc zBj&EeVL5jka;G4-<Wo<|9f-^}yxF@P5)slU^Dc)T9F{YWMCM#%mTtgEoev>NT9~Yy z@?d!<$RUCi-V}owYV9-{7I}FnM)LG0)uFzw4h`|$5U~z^92V=a*P*6%uR~pAmOKbb znfbU;19m#(Xm^4F__*zaO(I}9b9-dw5|H#HqvVBWpg&|6%00;;SUbs~73H4f;LqXB z!l>tC)bkyJkz0D%QO;dYm)jdT{KVW<I4tMJB~piQ<d&QvN)_jWE>^rFD%(}8cnc28 z6;DLPIX94=nUp_WNBZ<chjhF>JA`sibV%T^{OKO}bOLfq&sNI0eRa8mkwa+qL^K<) zoI4x2bC6ql{Zh{Dqs#4$973}vI#l7XoO={<^TC$<ix4a7nN&w*V?(V@aTuvhaS-+Z zDVT16w+J1c3d7S>2fiXm-b%#0zEa*~hv_h3{TH=48516`oHq=4d3Q@LPsF@Fy1ZcF z;&+qrUBGhQj>y{;c_qIoVqRn={!$fHt}0SkRb&NBSuM2gsIogJPy7ZTG$tq*Pz!?E z0OB)W@;ZSDM56Nmc_1PkM#E`?z`Fzo4igPz=O}z5in>MeW+9h?@t_Jip%5nrVS6Tc zhRD+^#9Zr)LY%3h&Zwv}uc&-6&BUzMKr+*al9^!HYABgGK)`b#0q@DYOHX}{jp#}A ztz57|9CNiHj>6s|1V+Gs#RV%AYhS2iHtOIN``wq;IpZHllfy@v9QQQCwD&ZlX{hgM z(m5<njt3gG_JPI~nWgttWdf})5$GgLt4R*RazDu-oWnAK;v|K7v)Q~g6WtQyJ4>JD z?35_<o+bgGOA$W}Z&I2R`P1*?({A{*<VHuN6hDc|`h!&Zi&WMhqyku`vLH|yXD3gb z;=}9SP7aqoEHi|An)diul=$H=4$B|*z=vxhv)O`!7gV92ZI?33JoK(6QF~V-@bSBv z9vqf4_eEyDGZ-45J@!)ei3L*T0IA7$H64*bU`2N|EjTP@{sX=J2laLntJdW+^Ahc) z%)WfAXyv>MtMt3DQRf`^uBHNq<=h^~T??O<jsoPdl9|a4w0MU`SUGoS+HhDLtDWeN zof^)+rCXIINcE9ZJ`A*l4VGZ6ZMebu(<umAx+W+_I+&0vAy2~{(EaT|!+8^SXzFrU zu0%8{5r^E;`G%a^Pa?M+8ZYD!7T_J4N*tDRCn7iJ<kG>3oLgQ*wxa{Kiyg2X9ROI& zy-O3V-9_J)4r1ioGO2IJx3`Pm-i~hrmUF}SLo*EDmhP*X=)S5>6JZfAD82;ictgdP zJJxS^TE8X#QiiN`nr51Inr04l-ZV`fhee_<zz7!52ugl`CF-dsk={=5^qnG4-w7TD zSR|gkkO=lVv_bt7MGsfvhvoHPnkEMy6PEsI@Qnjl{%|xt%tuYST5F>1f#7n1B9{~F z?G3qH5V%|raXHEDmRJROIh%?qOckpz6;%K%R{^&*srx0rM5uxR_s_=7lWg=DCp*E- zk3QqZQIIAKfiG;5Uo*JZ&fp$>Ns8~8C2Y6c-Dx3cs0oG(Gl7f+cV;bQ$85qP+Z3#! zDRqpbve%WwcMOtAGpvZcjJ{NZ3+)OFQHCEv-}VOad26@~FSt~5m%l8?@-;!sH8rtl ziR81*sC>S06kFnjmUxLR5uCLdwxlL#tEMIb<#pNndcf~1&VDG-mai;V-_ay%?_gAT z|K8EWa#-d}O~9F2A-8nPT(34luU4r-E&D*z5O;yF6G17$y`W$N8MlJQRa-$*0i{Xq zkFc4-ZW_ZB3)kXSy8pQ~BDEpkY4iOh1n^gC7lilGZ-S$ty0U{N4Jn>qBmK4deH<uA zH{^AsEN@U>s>k9olORS27n=;XK(BD|>6MyG(vs^>#nufq5jV<r)zffOYBsg?F3!pU ziyP&8YOGFb-rtfhI$<uvNMh0j)Zv0yhYQFGSeyzMk@X^Fm9FdSnjr5a-av?XBMLFX z-J(2$UN(2cD&fclTj|_YD28_G=w;rUd)2uJg3uuxl;+Dv#KH{Nr;fvEBiAWOt_O6L zk^6H!idiofBV0i<)QfIFF&n5D$#hdFMo(|>0&2S#;4++Y1nU7~wOvQ3?f4q^%d!*i z`Op6Jq0z=)3z<SIil16+Z~%*PlsPv3=Ctvbo^Uf!hec?{BDJtU3f2$P4RjZaaq7BQ z-2-)yoG9peL>?X&$I-atC9o>t!k6Ljl*jOtr{R$-Urp4e00dG18sj}8SY;R<NK98p zz(q|oYE!lG-6nfREgY&O)L4m7zd%7>hy{J29>ighP)DoFYe%aqp@6TmK5bWZ*{w(u z^%#W#9wiR2U?-BV*DK~I!UDk#^&Ep4I7a<G3Y5H7nCPEmbsnxP3PUYiUo_kZ_gDLA z`>O+Z!$czip%^9kM&h6)Qaor8&hPUK$Tte-HBoe4Bl*(MRYoS?eyB`8u`<G~O5@5j zL}j=*Dj9Ofq6Oa85cbB~Ax>`B2pW;?nm7*2qD6a%7MyA&&mOu;$P^QWN<@j35UzU~ zR^l`C$Y<0eql4qTpKWq)Be8IKcYhDE<vmSJqL+J+Edh%h`~gI^2O8|NWPc+j>JWlq z4iSf0xR7c%k3-cy+E6v$bxQtAbj8U1*$l-r6N?dUxEdFOBV#oeG9`Z~x?<!W@j;LH zh&>`)qc!XiUv)=ZspTCjd0f#IBiE)Pim50TBi!FLET*#BA2)cpMo{wLqANzOjTIVY zB{oX9By89yTTDe;nu?O0x=@VX(Zmh#xEmsm6Rf5TdE8ALP28lT3CY!rt~PR`9^2>P zVzV%RgiFqbje275k894nQIazoT`_W_j@#$rmbJkDg&Ws~jXGf;g#&-i?Id@wVlk2| zRlYo}Bwe6)?&2tLD#7{dG+Ck%R+6sJ`F16pujFP&S0TAwg{V-WSRvsuxN(I7P$9k} zm)!Q~is_x2m68cv8@G7C-SV*r0w)*lnj3C)_Sh%m3f>SDH8A<*?)<J%Zbqw#Gt|h= zq8iy5YGlCTYEmAnNqJgLBtJsBddSV$g*xoA7X%IA=DVSwvB$n6>cB}@@+YJ#Mjoa= zG1`BMqb*!yHy-WI7;UbVk(}WQ;)c*8Ha65F<LpOj$BCUg4)^N;iy}v^eHw20=ODY} zI7wFvxiMogHe<!?f`b6VvB|YhKr#H_QgXzkD@Jc@vd}MC;@AkD2n@$2+dc<g2_~W_ z$+?rRD7i+NC?-?vUct42VfSX+$DtT5zDTd5NIX-wA>Rd+=q^zUu?rFdV3BF=f!1)3 z!!YEYG;>|vu{zg&Hc^RKbW5z*ErRz2!)}Q~x5QDmG{4~dSG_)Ga^*_M8u2@t&XBiz z5a+(5X~kh#_6~>a%_&53e5I>|UZ)12Hv+^?6`VvEc4{CxHIO=0a;Bv#O77J9D5k#H zse;!D!%huErv_4|p5IqkP&aYUKE4-<%}7s9!r=+_LO7JGqCAvSB>lZ3xwjt5r6<P? z;9u?;I~Z?DB_<_gidG1QM|85OK}qZmWMl$FD+KwhvV*;owu3!)`puzE_JhRJJ;`U7 ziN3vziF{d{$bt_G!-;$qZ2Ky)?ffZ$fiG_SvX@S#lwGTD(jlk(-JT^2jAG6^{}Wx? z79HBwo||}ZsGZ!klJ9R5%&j_@TXk_7RtIwfEHXDwFgH(PZjvuK6C>k+S?nQZ7d){T z&SFo@Vo#dIl5aX)F?#dR1rx|coQHzT7sGj27W1$y%|ppanyx5$9=bu-<R<Ex1fLAX zx~9I+HF0&B<h)H+Oq_J&6pV#ASX`I|Hxq`%ggUl@ez`r0k-YEeijiyMj7B+&TtV<? zW5^ZCf-96It{}N;H!(`gZlspk2?7U$+Z@2+D5)??DjFrppPq?YSV9Q16ooLsXN%z| z*{TB|gmLjeaxSPVMsJkv*^PxGA3;12ocb7!(tW#R+~4Qof#l^*SCqUo-^C{HuA?A` z3H~<>XY@U61@AfXLmtWRp{^LYd+(w)ckKj0L2x!?*uD4dI-)jw8IT+*>Wa~8*kKfP zSZtW!>Bz8QNAS+i5j(!NN=_PeMaeZfgklbfH4<DW8P@2CT^x$xYpdj~-^74#!GLcO z2Yd?#9I!axTj8pDs~wj)B%hHcYO&ca7cQLydJ)_^84mbXy95-&We&+JrHNvuqL`^- zF@mot!(s|hOaT=mxw|w`Oal5OLF^O3wUuF?B-;7IxfPeX_eXB6J7(;yLSbo4E_!K{ zlm0FPe~bA|@_%4y9BJpI9cjmxMh=a#la@y56+B7)fm)k(56z&oX(lRdnmNF)pm-|n zqz!SXiQtFx!4Mq0hB%;W@!JF;jG$J4z`F3;836(?etRH5nT_8>gcO3(0SzJuM{5qF z2pS6rvjD$S5M}}j#n(dVYoYjBD19vyUkjzLh2jV}l)e^<uZ7Yf==>)!f9x1jdl{|L z@=zKXUdkzdcaYz<O8+NDc^Jlam>plGIg}%hvUD?Dm_d3fK3}{F;A<(IK?v8<3{8Xl z;KSL^lJhy~CW%mtQt$K1ViazM2&dx0Es<P3y^lFAO|(J4VKROb5IBF3oYk6`*o!c+ z7l{*F@HS^Sv6q0^Eg@zn-OV@Ax}Q<6pT&9!m-q}VcF$Qvz|VCwYLoxE?EaYz#@8#t zgc%f6>;JWOC2&z!+aHjbVc13VnUc9@X37>4E@=qvON3yGY$75eE-a!?a3VBU+>7*| znu?f9X{l+Nm@R7gutZ<_%+$&SG_#(Ts3ZUHJ@?+<kGV`Q|4X0GZ~Ds2oH_U0?c8(E zqN&jKJ;iO^xYxlKcAZa8bOuLJLL2oD{m0>5PgZ@erMu5#CU$l}_A*)U@V@Xu&>8S4 zepL514M5Nu(+KwWdoAtltL@L|GShZGFUZVG$c$$xRAuIk71!H!1<1&B2)fKPGTF`+ zgiLZSc=)6`B66HFk!w5~WMt+AJ7oHROdmmpM{BBNB0wgB$jI^*Aj5B%wA<AfSk+^M ze*rHQQQyBH4E_bo5-1Zf=*(z)XKTZJgkEx`fQMnKMxHhp<!xw`%UmBi8BH{Uo#r6! znkxl727956)fELIoC@$1fg731!Va051_cOw<<0>-2)0Nea}U|(?=@g|-o8yz?s&N! ziIEF*faW$;4fld-555yudm!bQN3nK54a5PJ?RhduGG~I{=Ll!MOE~#l5+@&?vrpBN zesGJ%$%mORWcmudEt+Jf8Hx~?%I)erNY&Q0-pM*0*@>nbm?3%wG8WA+GzGyUU(Igg z?p)xi&4C;?2lRijYbJ4jr-h%0+r5lB$&fnY5-Mf#Q_u8FKwuOmP#J<z%8cwTstmy> zWyXS2{0?d}(n4)EVt>*C?}W9uuFqdU$ba_v3kc!&h3=U&Svz?7T03|(!*6x)a$#sU zzbEVnpTCae^C#1r=u*=L(nXAbi(&-u&}el8T*3&rL?b}vO|e7f2*?}}WO&rIO6DlY z93?U`Gm9NE?=_f%z-~UQd62g{tamg>M8G$@x{^s?bTZmdSP3#K1sNV^ZcD}qQRXx7 zSg;9{pvXf>1B5Nr%FI%vs@A!|h07<u(&Q#Uo4Z@h-7}H8VxZC6I?%}6JqIEW6p(QD z9BfQPjw;5r%zUGBt#w66gZYTl=Su^R*;ki_t_=zizt0>AWh$lmWNsARpxqBiLX;im z=eVEQrLnB(gRd$}+%#OGPZO8uyh2X>OY}5cqO)VAOv<A(ph-U;($5#t=h*;krH??e z1}S*h@nGaDqh46LYwtz<W{Mo2gypytF2$u@+?}x$PS3!?#Jb5V7|zCFpx{<JW#hx6 ziNiS~HZd8V*oHjCHpJ8B*58JvVjF_;r{yTp+oSbMbF`<qXb;c1pti>kqu;LqTWe)r zEuD-M%M{BL+R2bW#&-L0%5u)anw0I6&DNvZmOFwPHgpe@tE}eUaouAD{DHX3-gR^m zuy%hl1ot=WK6%$K#^$%CZR^huTRH4LSwMTsnDjqD(lxexCDH1Y%T}+!Mt3|u7{-IK zdST%1;j7mW<1pkWXTK!#8`W<oQXp9H@LijyM6hiys~-}Lhb`wa`@G(Hn$)YI^H+=g zmgmY;JMX6FFqF(=+{pY(cDM-#H{pUCp0q*bCIZ|<5H~XWyUva5JmhLzf`^CH@Z626 zhf68qJxVFULRPA?bL3ryBkwYC*j$DqFR(cBF2|8~IURXraRr?VO(rp}&_P`J7RR$I zt5?UdFa^YtDL^JA(`BNO`P#7vNoqJ5p0LJtr*uT(nwfZT6w*T3^=(QH8|+elx-4ot zR0=JN@yMYNZ)7`EJeEZuu|p*qQ&3EqtphT9m>q5%u&p>?X=E4OJV}bmts|=1I5uED zN-`UnPDbm&TBjmpTH$1P))iYaP9Two2UZ8<Tp5Ok?FnCslx#XdO^WS6teq2Iu6bG= zb-8ZuREQKiY`K<s)9jGB3cjuizIfIcTfSI9qIf*4d9n(;TpZXHf$)HacbxD&-;YBs zuvi?*J>%f}#l9@_@zv+yl;spnSLB;gCdcWh)9kn<GmPn9)x=tbb4`^v*YHFn%C3Wo zJyCcV8JTL%4w*fW!X6<7o|Q+H!d|Cj<mE{N8CjBnld)OxKfo302jU8qCs9>Z$z2Uw zqK;d8bgfKRs&74XP-lS`BJrsV^kMgzw&5O9TeHoO%Cxc^2j3DJ^CJ+6F@hp7MnEeA z5|J1qy++`!Gaiv2vc87i4sC3;hheb2@DbsufYpiK5k4Xv$wx$Hq0^<Rk$Kv=0QqXT zde3v$s9ISk=L{5jV(Puj45*XQ`gjdGXN~9_o?1!moOS4&b<{a4%YDA>Ja$Fjx=RD| z&uZF~q!MRbg1Q!b9gQ>QF)ViUMB@mo1@YiSruox3(Hc~Mt++sJ#XP-`x)smDRy>Qg z;>X-qOmtim^a1Ntwq`+F55Up6sdjX(^Y;$W-6_t8eUK$NWq)8hp)(XZXCva{1(HW+ znPSlnk2yG+<%pvhPiLj_nCpa_M<=%I$&`CK8BOTh4GWP;hu@m>tU9WH&%1_1l(b?> z<?6-#pZmpBG)JxrT1?7yINV+L;0n}rk3fdClUY-o%$NtZOay3$hhp$hEO_AAepDV7 z8&Xl(gqcuerb0Vp4q^{JDE45U)JR!oQ1c5lxo8g#j@ft6dB(R#?U1R!Fsu;6kZ0sl zhvC;4hF{Y#lqG998I-=|euzS^tb$%q<;i8sOVp|!2{%1Mp<A%K0-3MV4nrR3X%ErU zJQbVT(_ZLlFY0NT4ATyoW*F4X#GvNcy;L%O(3ky4UzSNabu!xA_z>dxP>6@8GgHO0 z*J&n}P`0bfRG~T<ZQNy}QQ4wVJTIHdO)e}8xnx<81%@~oo0ZrVuFS3;-2Ks&(!!T0 zPKa(EK2|pm=8h>dyz1O&jcV^`L1sd(O!6#+>d<-8F%@MI*$9+Xd~|L!GK;Y%EEeh; zPt2{VZ%g2yyo4N-Wf3Tyj3%2cxCz`MZUT7)1NE+88!Q#u$WkGb=GJf2o0d1JK}Zd$ zG-g%PRV^S7nG{w3s>Z=!jFrJ+tnkcjYVQoiSQ$!VMW)i#$!PLu1hF;}V&$nJ6;4on zG8GRKtIS1ehs-8S>`h`~^Sos$nKD?`%E+=Nv+n9-v_{Q#EI@ikzD@B|kLot{nqvr( zJu*9z%rmT$k&XJq@(GC*c{CL+4mUl_#3~Cn@vqv9)*N^W=J;@3j;Bah^@d!eWyqzp z46;TwSMQUh({2LH*9pRWoq)V)z(Tc8G&Hd$8vMZg{haHo^0V&D)|uC2a30pH^TK+? z)1;}h_j}l^zBjP>vi{3vj~y&)6J6iYa3S1&7m9^#A$(VWg`;7yXB5J9*qKYFY_8A5 zA<H3>Ao7vgO3>-B^I;rOKlS;P9Z_XcEBW&|EP6`&$A3C$vXnHoC(T6cuZd(ZNi;gM zv%qeC(oDihGl@=`vOJodUh4w)y)MFikC)X@do2L&djaIW7rcDpt1I&MP1b{nQzqjc zoV4d&rUGj(VeRgPbZWptDTy%ku|}8%q0ut=bbYBIOR5DAU!!=|R9opeqD1Q;Jh*bu z@;KWeGYAXsAhGcB1e@yA9)jIu2<;{^AFoa(hh6H|`6s%eqfOjF3W*+#hE~%U=ds3g z9^+Z{25ClLCVeNA!bB-vBUE<0X5eA^p-dR9|Aw4+NU&LihaatY!cBGTuEWl=j&>fI z9a<+d#+LIj;9SWaGG^lBjImjI@({eO=L}(n3)Ut_<d}49z|NRFf2PHzP3%n93lA$s zAk%*9ENCs6gOzBGSc!P5+4?I{6jma3nvwab?T|^uDxE4;X`U@p?aFabQ^%2-DpRS~ zC$rVEl?D|O1}g(<Thunjfy^>q|EtI?TZD&q3C}gFcFASOWaOP?=P8+WS|_8eN~Kuf zOT_}uQ&cLPU~!Me!`2m<XIm%pNIjeR*Il~<UAu$2mZ$qHRJwL2x^^dZtxVgl^Pn|l zGbFNENQCGARVA_o64^o$kyQ;jnekkA6fyGo2*%78!I-@IimC(5LJERel!8E}-`3gD zMp}PEA<}K~drF>qQ$05iKq}1v2BxjG5B>3{jAqlS6A~f@5AHuCI;#JWgnl^6G}DeU zwr@DPdb^@LHG35|eFOj5uC!;@aV7jzX0rzR`SDmyLopI^@`Kq81HwcN@?iF}Ap{9J znJWBT>bb?EOabK5C-McQjsK6SL*(24o2%`=@LfRakhDil9r86&Y<x|rLm2u-OC2H$ zwaR{G2UT$?m1drUl63qgf|sXL&5!Bk7*tzl_q8%<yxz?knY)<hcg4L3&o`?sDEAsf z;ew4#XXgihf49rc8JiQ3`zx~d@IlcDkwX%CM@L7!guZU8_qF=2tt;Xq{)<T$&CSl9 zIzBlkdu&1ibMs5en3gm>D`9+Q2I`zABruyt=A@Ld$vNZrKeCgiBEuFw+d3<2Y+!4a zqe=VEj?*OMf%H$gW5>Xzk}z$2N_HB)3QtU)&?U$_2#EuOyr1PsnkxGT_aD*Aaa8aq zyiN(8g4b7rU&U)la0y<w1aHCXq2NP!tqiWj>-FI4czqE30I$e$9*l>fc0lb2bqDHB zXeiK7LWw|$gtCFM3C#wYP3U!?*9mO~+DvFa(0)QEfKCwl5$H!ke*pbK$ipcZhe5_c zTcEatLV-dF4FVcOC=n=;P&QCDp}9bF39SKILue1s9zqpB6@;z;T_IEpR7<E?gJ7H< z+3!9J^emylK!XX51sY2zA1I&DN}!d5-UWJ>&=(ClA!qV1P`LnffzVx`yM!7#cS2TV z_HIX@j)cO2!U>H88c8S%D2vcSpoN4=fl3J-1Ug9QTcB?VRXGR3d>8}D_nm|Buy%MG zg7Gla8mKj)07EA@hcFKM83OUJZ^Yx>czSml&@@8DK*faC;2Ue`8|U$j^Yo1yc=raq z`vB+xAzx!KG7M9{0ktI*0u(~1KTv-{aX@i|CIL+%G#6+tq4hxP3GD&eL+B{bQ9@^c z&Jel=bdAtGpnHToO~J?r%sB7^@*~s*s0*Q9$Ozoa6oq$(0}UsX29!o<CeTbmi+~mp z+5ohH&@P}|gpL3mA#?$hFA(M1K(`5*U4l{nm2uDos0*QRpm0JXfJP9?0Lma_0kRNU z4z!%mCZJ7(%7MxWodh~b=rYh{LU)1g5^^&Kqb@1?-4;MC2n7HI5b6Wehfo?&8lilk zd_u)Q#e~)ZttGSrXa}K6ph`klfvys|4|Jc9rz<4x%6_*MP%A=#K!JoJfFcMD2O3T& z6)2U^QlO=THUMoPv>RwQp(8*?2%QBwOXxb#bwUq;9ujKk77U+R#z9-4wuHI@btRMx zluRfaD4Wn6pgDv}fJz8$0op?70MG$K6+jh)E&^R7^c&D`gbeP%@RDV}+Z?Dlp)NpO z2!#WM6N&|jB{TtO0--{nLPE>oNxR%V4pcS(Z6LH0A!s|@*}N>r=gR4G6+jh)z61J> z&~>2egzmX_LZ~g9)2<$&co@B=NEy)7gYowy(36C^0d*rZ7-%q|B%mZhxj?yumI5s$ zv=?YEp(>y%LbX7(guFemzIama1GOR)2oy*t94MSn3{VWA44@1`3xF07`UvPFLSF)X zN$6jmosmC@&DAQPDneEuE1`y7NFCzE-faiej?fE0FAy3IG@Q@`pb3QXf$|Ae<G#Dv zi}7smMh|*3)DoyAp$XodP<f9@@)rJfi~i=`Fc=l}*yq{+wILJ=6iR3$&`3hlfTj^D z1}Y}B0cZoE4;uR8LM0kh4&!f!>2D{2P7=BdbeT{MPz@nBpH4_k$#{9rClC)C5&e9E z@i1Oufno`z0;Lkl!RK=5b4B=D5&f;i$J1Kk6W9yJ4pINzj*j*auDcIix!(~lw5qD& z4sgtOAjkZzADh=!ykhD0C-)K|xR(eK_YxtvmjD(ffH1gjgpuoptZZ(FlWN@6R0~&c zUUX5lMBKok;07HEu68MZ=^u@rkF!I@8wMb6;T*;*irbQLvicYX;ejOquc>&LflgL9 z*9mH;j8RCMI7%c<<OL2@hwsr1!;mzQg<HzvUYtx_*UT-JEp!k?{Tk)?w=HBFGs?*- zSM|RN<){b`KZx?OChD=P26xRhbl3dFg0pjjhb5NRSAgLOIRZ*>r$1MM*(Wqz^ije8 zQ3;+nF|U)YBK)XIa7ZxMfkV7Qx;r_Bc!$Q&LCu64AAdY-B`gOjCsYAlrNWSizcq95 z$HU%@G5h0T=rGV>LT_Tuyy+8$IV0<S+3AnDurkdRRwiCfMKw*#hk1WKnfHf<lx;}g zRk760z*^x_gu3axTX_w2^@4JxOCi!mv&-)kQQAxAMjM|)U?>?P3?;n$h|0}S9H54h zp~P|ik>~t6MDNnM(N0;nkh<oUNL|A#j;h1_-`*{dx~46-8QE}I_g?+?FROFyn=r*6 z!SHkpPWD)6P4?iSAIXT=1{T5aV?2hT03$o6$?9x+do)HuA>B|RU0zH_ZBH0%cwuD2 zljZg5lPR&3(0oG$Dckwxw90uE?69kSRyPG7UzN?>(Jt<vi{!0e0P_{1JVMoo^{y6q zgsKti4Xj=JrQ_O<In2u9fcnqNUKwB+KtGRiShhd!II!tJW=NL>{q(O&0bDP<P9_c1 zsZz`tH;3J1{uHC*CY%~>u)I^B=a1p<^D(^bnVZMQo--L1JRgMT{Xxn!C5yY&|6v?s z=HTJybzUgOR`O1;AkDzTT>f^#y<;c2cgPZKb_gzn>1&}deesGdiZHCj&e3?7=}Q(- z)X7L$PPI%WS)yQ=^7X8ySxlBPkG%LQE-K}Hbq>3Rwl&z)aXp-zB67y0(Y<<mqaVsn zvYauz0A*{f7$)}x?SR|$4s^RNOC{Fl6=l3Ec!*#8pOy7ec(%TXTcH=}R!9~A)X6-O zwJ#(4uk5(joP6Q!!tA)ba*}Gtt#ayxDoV_bE9)leEXZMq<M(_#d@%9iSM_~!(%_qe z0Fc^ld(T84Jh#h*ld-uLx?n28S&6T57fjg<E0>s;Orh3GCT1KvCrT0O+{iJ2;zo1u z@Uh8@9oddeN4TOU;$c_$OPW3r^;6)f<2E)raZhmsUin8%+-7*hG?`(cq#QRzT92Dp zawE^5)_fi~uQb|DYr<XT;6%sS2zNmwjf-m1ig1}~jc~~W8CjChPHPrnVk{C9gBLJT zM@ca*{fg<*&v@|NtOaS#KS_UT={J)`E*6t=P@F+`tx2KbUH2oR)GYU_@wCuL|IpOL z`k~1W<KshAuK_y6NBBNdv~{0pB>ZZ6C(L-~YPVZQ<(1SlExp)6WV2f+ve_*}HalSL zdMq8+W9*(IZ~e-!ZSl(o*b$%^0yGN&njt`7WjMIGgjn5Nm`ZdiuKVY;oz9)s$!Npj zkjq@_As4Q;9&*WJSRwNX_Rdde@00~n^?s0J{6XOZ8VM-+r!2KrtHTgH(cmK2u=bU* zD`)HM;PUG@o6g0<xi||~L|}!BbFR@ST+G%tSsS)K7q41grS$?u5S39dJ7hMKgRDHN ze^ryiJZzTp#AeCsxvA4)J~qqwv{{a~zR+#w&P0EE(_#^(#Ue2+7GYWdi)pdU6lh&$ z3IiLZe)}f(ou45R*sw{ivGEGJ;}y{zub?}C6+sk2(J6FU0y45btew`pfyMI;v3T<8 zgNi^<g)j;a(;#l7JH>u9J81|fW3%LBV2ovmF_wWb2CQ(CiAkDClXO6u-)EM)UOnx^ z2@Q>mw9%LAhY8^mJW9x46nj{MD4{hzP)G5~&@gd#ke>hJANN*NJgGCQiS8U?V$O+7 zQ@pahx;}pA>4SX1Ok0r!dF_ZU38G69qT>Z4Rna9wbjc(-S)I5(nIcOO4MkMqRK7kt zYBrO)tgoc43t9@;eI9d>lZS5?`;adaSgZ^CJ&*_2V<x^WYYpo^tWBk%;D4y#pBKhd z7{H!62oJjeZnEd6wMU;W^3us@()2eKqPiDf-g%`jbz%o#?F%rWIEq$0*bW&_Oe;?@ zt$0~Tby|5r!}lT$zsK+cS2L_PLpd3nX>kV^;&)7Zx42`<Wmp-Aznh}0znhq3NBe)6 znC=)*T}P)D&UMn0lIt<zXP7sZT<e*`on0@=Vp{EcA{Smy%7xd{!-XN?McLaU9ohF- zAcCy;tV=@cmqheSqUaZ1l2q-NWcZaNlV8cO|2mk}`rNrPT@o6Z7Uub|P4dyv!aRdv zMG`H|sn(Web{3aKd3A2I?mYuf*)zgZmKX0+yZ0>0{GD~q1sPdlSSO=#(-A(M9feOP zuS}@kD0PCvZ6|WLm9?+!kjaKzvK@K%@-nRID9LpUMIlzE+W6di{?+sI8{M@dn+e`? zV0q$XCV1yEtjH$AdnC&JB!Y}A+pTk>$)*Q-s)y()UT#+Hsh-e0dy?k)_4XtCx^)Wt z!45YuNXHW+vfRgb<ua^rGtw&s-nZ$PLEd+lxSjdPceXr<gh*fN>qta-T_mEsj_D69 z4k9;^c=0Bse3Zq&^`>b3vmXYJ{lehE>&L1FkB@QB{4w1#%TnSx8BHPwK<0oT!;8<> zCxb&0*-d0=X`PJ5O%{~3ETOFNT9m3_b8w2up;OG(w98SYS5Ee*Cy@i5?UDJWGabzi zc=|CcBvKAH$#PF-J(9)H?eK5{O*tW&!Yk#fP5A~A`GzDSE2!Hc^CQUoD9G?ax+<B= zuq0h3i9EmUwJl2)E!d}%(FA(}&MGH_vkI@~s*?E{&MIG%vx?VwuM4idvZt~m+1R}7 zsYzq9wd-!1(h@dr{%<b3WfmJal|9uVCo^mOxXiIBEorBM!<0=W9o(lfW)e^kZ9HYN zsb4yS>|b_lQIB93Q#08-j|=nXsZIq$y}d2cqd?TNw<F=Z=%~A*qj>#dRl+ss?;7fF zSy^5uqYd3F=%_2Aqj+ImTQW{KAm-sIz=^)fX&4@6U}#wR%?tC2KIp;;+Nf562nP!k z;b4KTxeP0-L$GUzHJDN~O!6^Y{@X8Quh}892^!iap`mSph6b#V+3b>H-R#2rySw^s z``77RA2(LdKP+^#gVbeZXu+eMf4+nc@FkspzQp+lNSuF;<NR}+&Od{eH(LIBqTBnr zO#k|5o;78vax!O5RX_XwjDt7|ji=ap+}!MSlO4dfUJ7_UGj_yk{fD&98;c|FSaIa# zm4nsoWgPre$C01v@fA<_TPto`?8rI*TW^5adIPZa0xPl(GN)OC%<LS0XzZ@lhX$B_ zv%^gyRH8(o67ibUDmTeEX(ZE0W7+Jy4$p=BF+=A@TRJwvi+H2(BHq~0!mz?kDZGeF z$%}aG<*7rSjL*Dchnr^+%=D~?^W;^URpUh025E@%WR1!%fBJ6!hrcedL&gVtrjOV& zd7*c8Y4?TJ=}TItEV#+ZFvkxW>E91-tNn!ADzBh9$0lC_D=(RhhdGK}`}}Ir@kH;R zb!IftjKV%MO6)Vd`mxGP9E<{SWE5!lO^=+E#kYfWGTN{yhZj=0ftz1>0bw=8>LGA* zh`5P~8k^U5^O;ZVkZA}VsiDx3ctvMbM`{EesS)W&(;j=FamgD?*6C!lMkQg`B#B|e z3z*j*HU$_qMUYM5tQ8+m{k~fj$WT<RR@18jF%%UdhN1$(2DT|F;AlO8fd3N|@c%>Z zw3>=pp*uJ)Hj7ujxd<2E+!U2>&SqE{d$Y_jsL2=yUIv_cwclFj;T`Iz;|Wt_y4P9+ z>emVjcP)bTfyu({WOeZL#}k6()BzPc9B5mgGJoKNi8W39ZS9aO*4;rkjy=GA)dK@} z^nYN;W>}oQ9gOK#2l5@Y#t*vLxa0co>MVm=pp7l%y2k<*hhu92;x%p_!k_w~fmwha z8eA9>E1(1J?Hr8Q4r*IgeDJr`m8*i;!T6<q!y_XHMX+j6dgxD`zjw&%)N(q?2X<f; z9J_aK89-GQr}LUqt8o%u?Zd)<I2tK-KexNjCmm_F_=ao{!oD6gYe1b=36ESoYk-5% z2Q6S(103KDjkZwM07NDtYk(um8i3aUcv$+4`>hsyzkT-Jwi*l5<dnW<w7|!Nn{lrh zr!p*(cT^cWTC0ry`1Yk#w_b1itp89SX_?aVEgTATxEBwO2}iXFU}dC5c%>pM7(4DX zd92%s5fNWF=#xjA${S&o*(jW<dBthl6~WnBYGRM8uOnWE;Xx!XUeod5T!*^U9q}+; zUufHI`mOCR9kd-Ob;qDDZf|{!d<^;;vl$j+u(7cZJe`>X_qD+v{&39N^MIYG+^xtD zx7CfC!nPtm9I$ZR-{uyNa1Pee{C9gGqo?O_y`|bRk%L7zM;xVc9CI1gwo9HgCD$<; zM=54WtLcAb(SXPnzJK19wrERR(U!Jo3$SQQ2lRahBQqilek$~DnP1IXsP~>tny)vJ zknK%3zKXu-mdmixgR78bZWU#jJD%{}OFK?RH`GaK?Fxdv6eRSeAm~fL3YlO;8wXRg zag(L@%X6Ca$dP9Utp><`&+dpu<q>H6QRxO)J3D0K?7&PbvPNs2^-7ozSj8<=z~a)f zlYT*~ew9Jif>7LogwicYDB_HPgtZ{dn1MTdX5FoB`;E_t2f6Ro`6(8%>1(w4!+(ll z!0N8VFoYSKf_e+g+Az#o{LWq;!_dt*%-W4&7(UKE*>}|PgIW6E(Wc1-+;3hG4x$$t zWHPJ_o=b2Ly+jV8bIyL!dGdvz+x5wevW%knK5FtP+gau~I%G66!?w>VJF#wC&Cov| zcax08@M_}@z>~0Q0E=;#WlXbX88Iho6TY8eDgODBK6U$p=@KHivp<Gze?g)@7Gq#R zVz4n9X$05=_+!kL&nF(e8LW>tO%w)Hz%qymSO)JI3@hW!<eiQRSd5eZ3VyGmQ%ta% zT>Zp&Nx<!rZ4>KmD0tU)KbcCSW{R<ib&8SgCsQzLfW&^1Wz0pp*#P~ib-}SYqu2gn zOS<j~v;j@uAZG0b%vxa4^fK&%Wi<AFDKlPLytvHSR(g}A^!B1w@?I|lDc}NhuUBh^ ziG)M#>O$u$8(kl~2bqy>k<0>aSj@wxPzpX3O2Mb*JcbqB;xniUpP6T%4eu>KbE{YK zxt3C5|AQ?{ms`CZD+@bT7VTJB82gZx$a9m89V?si-1uC)=hxVDYw@4UZXRSePsnZ_ zWCtu{w+OOZM6!!-|Ll7y$?fVyxX5AC-_oCke*ek+ZHK<oK<9zDEFa`Eh?$?y-0Ylu z>!YQ$TJyE-@~E)@Zkjy$?5J@v!(zKUhDIEtMm#fNL5rXvtDEVgR$C?g5QO9>f{^^& zXE3ac+Q*TK{BcS}J}0#Ed*4p~bdu~yO-XD9cZz1houV1;Ab^#Q^m7?$^>blnv=*<t zT-he!WU*|C82WUj#`#O>)Y4YkbteJ)ob4=_OJivPX2AlQ1q(0>fW$0Vgo(U}v?{0m zQ{Gy2|IQV;#%o274j{JdfT+KAz_TC2+SUC+T-~!YUju4d9y{RvTb|&Mjv&I-z8wxS z?ZiQ*o#SMNl_l^=9AuuPgUsoLr<>3IGF)7%)pb&`j)%fAUML*naSa4)L&n*f4uvC~ z6pnN#9O<NRq(k9ICxv4I6pjg`aJ;c`w@=uP96u@H|G`wLBi(v)WfA7eBAP3UFjpW` zF;|MQPZZNW@$U|spO16cZtu{z9wT(Uk?a5KF-d@JTIYzgQUmY|!?}ER&d#xoQkHep z_}B8f-N#tJFUI<PjCEi!)*oQ3KcKNbBl_IpL%-+O5wSMb-+^W49bwsd$1$5>g^4XN z!EGTETod2J$@4PLU(%S+Cfq$RaZfOD4@>}SObh@M!!TURw)$+!*nTC$&T#nxJLVT+ z$NU02Ca}W9QS6vUX~*39)@wU|J-VueWJ1gpGQT{+T&a`cOWZ;8xl)R`Qc82B6mtbg z%#||C73BH?|2d7TX3r~%StEZqL2LaPXy<2yc76u?EHJg+$$A!DaF(?Ev*^mRB!}R@ zg$tJ@^|aKd<B8$!DTcczQuF}}DSDfFAw?ff3$^oGIW2$aJ@h3xWAz%H)kq9b?GZ_v zO*Ik&0E;R63yj>qcraIl6-O3$eEQAy6?z|N1HlIeY#(vJ_QAm(Sm}dC&KWphGnH#m z$7jC$z|m{FPDU=>@Nh50!*9I0pbfw_WSnr@<%|c*xHZt^gNH5UJ2E;RT+(|&9Th_3 zD-fGups*JO!d?WdEXG0RLfDI#TiS)lj_+&;URuXYrtuYzz^r(fBG^_Ok62z{g|9>d zqE#uCT#~`ZnnbDO-kI@R)<<Vueznukxft$q#q6Dn*$Zq#5LJND`Nc+NRr}r5-QE4y zMpNvN>5V|u-tb9beDy}4DzHK(!W55y)fAAq^X6l>uDmm|wH!GZ`czbwsYv2)T2d2R z%cH*Ci$On=Hi&Q-9>dA-7!JcDkQnq4rYQX62smDNI)}eGy2YtpoO70RLCdJZ6nRz& zOMgrI@$s}fX$5cbDfY9u4!%Y7vo~<zaKn>%Hr?=aVMwbT!TmmN;&5@(a{zum=zVL^ zomKyyuM19&i#SUh=?HO?<81c?$I(%v*#)MPbF5eL;qWt3Fr?ZEubbfz`fxGPhC}GU zLOqE!`B`I4%&BnN`zI?0@0zif|1@oGB9mq+BFj@nWO=I3OokQv+Bnpq8Ao+!KB#;x zH|+UYkJ;m51E%{1F;zBTcLNq&YyuaXhzo<+Vh#2A!kI~Zd}h|zsrqe2OU-jud5>LI zAe#37wXQe2p~ym<*nha8;MWYvdIZ^{-&UwM6r*r2G0NK?1B9W`-f6-{^I5NT8K++? zE6|67Hos%gr7>b2#h^=pm3b5kWgwQ6fh9Y)XAb?miIcrfNkgZkiB3sFrvQsinP6%G zWuiTX#_p%)bRE_-W2+rD)*uFSjfeqVW0=aY!p2%dv~{h4otsjxbsl)4&yNS}u`v^D z%oJ?Q1RKDDjRI3kYk{c)zF&QNZp#&Cw$)k8HEHDI>-l1U=i}?Z3L6EcP9PHqGB0)8 zbt$X2*GW6ADF&HhL8cgFfE6;!OoQN#!weW7I4^sA<*zZH3Np4U#h+e{h&4iUedNct zB^dupOl*Nzf^`W<aeZ8d?QoeX5(`9+d&eBZ0xvhPC&OLfewUEpE^rSlWVp{13CA+# zTeoNQEAQXgpWtSv@w@T$-J<ck@pWLO@%v1PAd`xf**Ew0&XA&QhwP9!3Nl9pnWG>B ztdKblGRKL`c;AaBzMqt7&%^8@#`Z<ww|EhLi@?e@c*zt4zeQ#&j@!O$&B!BD|H18I zS`E6TNV~YyYXEIEOTD@?ENo)Sa86z3#qNAvf4^Mu`{GZ2;tjF!9;w77S*5rntHdQ4 zu)@J9__&=SAGd_sZ4Dyc&uFZZ(T3)2$l|teLb(km6kvtS@1_tqp)eCi(G#QYKKSv2 z{dUNdz#vv4DioB!AO@_ES%nG(tEfW3TP=QDS8{R7Ks#hkqERPBqfVkxzzUgDE@@~K zySVxM#)Oy;`}(ic$;i#f>IyQhf{ZK304rqNT%zDc$Tp_nf;$KI-Dy3@4w-9+P`)N2 zl&_g{8CJ+tnTxGeW_J2oxx3ZsLGR2nfQ+pLp*aqo&Bej9IS!t{^$wodICwG(!jX`- zzgSyXZqG%g3!2nLG^q=k1g!890MEz(@{DwFF?4?W+j~RpG|3-i`~?|*kO8ho24%fS zG8y@8rqm2>-qsG8b&$+DA(?fM46s7xZF7|MZ8H;aP}uujdIT+qkSelPH+est9`*~T zhyBn&fHlLV1%^weLO$_P+YQ5>-uZ&ggN+?_BMhh;UAY~0BMhj(3Lm8?w@^yu7CO6m zO+0cdeveK{8!vqzl|Di$eIONJg-it87b9F)M@JMz){I{-4e~ZONF(6qI70Y2jzCuf zD`ZBxOty}6Vg5%6J}-XR!)xd>oEw{C_UkyUzb;Peuj8~1tSnI_aH=XHr>a;>jl;vU zPOsZ()XU)JWx>tM;0CxJH}k>G5^(cI=k;$FW{$Pz#TpCiORTWI#KQUltdM!xy*o<d zy#O++|M|1emX?DNgiaM-p`~deo(K_76e6Ao5d$k^GQn#miFifiM=O7Jn)`8Gi!sWO zivW@&1dt?&>$M~VkN|4|Byk8JVVM{m+b56uF0k#_IwRVGXMtEOLM#@D1z2IE5S>&= zopd6iRfqA%W}g5V+bhSzFbf_QX2HWS3j!;X`ZM!Lm<5?Nsb|V(KgG2<Jk1U-%ds{r z7i+_E7u4Xz+Hm*b^ksp6fBF@Eud&i46)`^Sdc^Jb;7^UuEI22pk(QbAhDR7m4f2w& zH&9&}SWKgvICkFj2*a1p{4g<hX4I%JbRM*hDMQDUiH<2l#{erlY<4Mtvjw|?ogdoQ z<8M{f$8<89STCa~mqk-9qba}&nX4}8)~hbev|QRH;iaiZ_YAgkQ8We@MPtN8(HLA5 z0gFvB#ceX`c(IfJ%!6H5`F`bDC%jK<%oT8PMR0KiTmaYOVh*@i2r?7SS}sK{de>s7 zF?S)8yFw;+AroMQ%sp&F_h=jX;`6SB$A8$ioRgs;FAgSoP(Jg7@|lNwTVUm2G9CA< z(+$kqv}xSUXR^1ns<X9fZK?q?HG-KMFaunVnL;qbmP^-xRUu1OZBDk+ru*i(h|T6F z?)w<BzzP|wd9u}NW{XomtG|0WSZ}wmL&gmw-%X5sH<-SG6*3;?bgPG%_4CUy{(h5E z64!AuY>m?zRSs{4a^cNT4yR0DWsN%oqsJlgW*Bg|*7Tgm?O{4M8X0$R<1V;y2RFd= zxIqR%Gwbgue}Ad?skavQvqR<yka$8EHJ*S`16U!`5(mGQ<~bm<dh5W%oz=4+w?ifZ zWFiEa2#^6*$V6gSjHF$$qJz_!#AmNQ(8*|1sSn8X5oG#+3~)U%At1w4vR!YF*}wb! z&G8^(yF$f4GBH9jG3ah!WrZ4H9%db3#+7hw@5(zz`wk4M<D;zc;tq!#cj1uZ4u>3I zg%?j`W%i`3%&VVy@YAGa%Y^fajk4Mrp%AS_C`4<7LI5jd+92t28&|d$y}R=Kmf}8F z|DidNhv-FKd%<zMA8E|{5Nr-CoX8J&q@l<w8*}fJ)TGXBH1cg-uG(N352a<iP+G=A zX#rN4NXHCFry0=fx4-}Pu;%GHCbhrz@In%;%)gGldZU3a0+Cqs)f)|*@u;bmN|0)) zgi<X{n*U>vNAG!E?KGtTy;~r9w*ccFSZT^E^Hlh%<Ut}y&Hc`Q_0d(cPDbn9Vvs2o zWQsusSRu2-9BN%+?g=v9-@TRp(ol=IVYTVq#UQg-kXZ~e!1c()fDAhf?V8b~=dmtb z#bMn>eOinDSu6TyE&2yoA@jC51WF|v_g`Im>+!~)U2dZd5_w^V=mn%1;8y%V&pd`{ zjJQ~XplSwr2E*|o2tKtzEcGZ}U%=Ck&>$e3obeii2fX4n5f2QtcumKH@rBoHJWN@C zanz49pV)kVgdMr=KudOrmh3=FfR&cKkCwboEeSn#$1&FU3qrE%=}bF8W~U&t6J&tv zk%<Bsre$AW>HC9q?~6X1OkI7l(o#vLxys3v${Kq*<TR7z$)Cp#+;lOpyUu|&Kq|pO zrQo0v8~`gEoJK=VQ$sFiTepwNbgFae(8!cS=PDOES2=VpV1>*l*iS#9{q$sX_h)BE zZVb`6(I)UIaC1s<a|+x5D`ZY%eLYR`Fuyn<ZD;VxBV5NAABZH96n?xESyPvKtm3C` zB>4vx3dVA*A<JnE*%y6&$x}7wDs)+DEIbE?wdaJx+H+313@iIq7(ze7$YE_wag*25 z_YJAz=cozfDq3<?wB#yU0<5&83iG#$=5NBZWA3xM$4%wjU=!6m3oD?SR|wU-!hI&g zih^;%J=J=`ovDxar{7!9rtt(p#b)|GfM)POXa*0kRRAl@STVV+X0|wQ+I_Q0QRj4F zhP9c#t+2+o5^H=btnt7KnKsD4-^P_G7&A7mf49%P+h~j&^qOcQ;13hw%AKPkTxT+@ zkm>6hYVGUF)}+d<QPI!lM8(-rB>#mv0RIx){0rOwi+(=m8jqkmCX>~9F8j~7xjb3t zLhI*oI9QGoo;l-iumo1PNP}li8hPe4e|?UBkI|zhfsF0ZKNjm^tXLOgAz0vgdvH4T zV7704-{{4czds);Y^gT=6A3;dg+wAD5nzRvzKA32OL2s?@iPi<h26B*Kf_VlV7Mr4 TFx)kpVTDYrYY0jkU`hCI*iQH$ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h new file mode 100644 index 00000000..30af67f6 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h @@ -0,0 +1,63 @@ +/*===------------------ enqcmdintrin.h - enqcmd intrinsics -----------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <enqcmdintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __ENQCMDINTRIN_H +#define __ENQCMDINTRIN_H + +/* Define the default attributes for the functions in this file */ +#define _DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("enqcmd"))) + +/// Reads 64-byte command pointed by \a __src, formats 64-byte enqueue store +/// data, and performs 64-byte enqueue store to memory pointed by \a __dst. +/// This intrinsics may only be used in User mode. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsics corresponds to the <c> ENQCMD </c> instruction. +/// +/// \param __dst +/// Pointer to the destination of the enqueue store. +/// \param __src +/// Pointer to 64-byte command data. +/// \returns If the command data is successfully written to \a __dst then 0 is +/// returned. Otherwise 1 is returned. +static __inline__ int _DEFAULT_FN_ATTRS +_enqcmd (void *__dst, const void *__src) +{ + return __builtin_ia32_enqcmd(__dst, __src); +} + +/// Reads 64-byte command pointed by \a __src, formats 64-byte enqueue store +/// data, and performs 64-byte enqueue store to memory pointed by \a __dst +/// This intrinsic may only be used in Privileged mode. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsics corresponds to the <c> ENQCMDS </c> instruction. +/// +/// \param __dst +/// Pointer to the destination of the enqueue store. +/// \param __src +/// Pointer to 64-byte command data. +/// \returns If the command data is successfully written to \a __dst then 0 is +/// returned. Otherwise 1 is returned. +static __inline__ int _DEFAULT_FN_ATTRS +_enqcmds (void *__dst, const void *__src) +{ + return __builtin_ia32_enqcmds(__dst, __src); +} + +#undef _DEFAULT_FN_ATTRS + +#endif /* __ENQCMDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3e0399f3072b1e988d6f9fe0d64737a41e02afe6 GIT binary patch literal 13835 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h new file mode 100644 index 00000000..94a662c1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h @@ -0,0 +1,162 @@ +/*===---- f16cintrin.h - F16C intrinsics -----------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __IMMINTRIN_H +#error "Never use <f16cintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __F16CINTRIN_H +#define __F16CINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 \ + __attribute__((__always_inline__, __nodebug__, __target__("f16c"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 \ + __attribute__((__always_inline__, __nodebug__, __target__("f16c"), __min_vector_width__(256))) + +/* NOTE: Intel documents the 128-bit versions of these as being in emmintrin.h, + * but that's because icc can emulate these without f16c using a library call. + * Since we don't do that let's leave these in f16cintrin.h. + */ + +/// Converts a 16-bit half-precision float value into a 32-bit float +/// value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPH2PS </c> instruction. +/// +/// \param __a +/// A 16-bit half-precision float value. +/// \returns The converted 32-bit float value. +static __inline float __DEFAULT_FN_ATTRS128 +_cvtsh_ss(unsigned short __a) +{ + __v8hi __v = {(short)__a, 0, 0, 0, 0, 0, 0, 0}; + __v4sf __r = __builtin_ia32_vcvtph2ps(__v); + return __r[0]; +} + +/// Converts a 32-bit single-precision float value to a 16-bit +/// half-precision float value. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// unsigned short _cvtss_sh(float a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCVTPS2PH </c> instruction. +/// +/// \param a +/// A 32-bit single-precision float value to be converted to a 16-bit +/// half-precision float value. +/// \param imm +/// An immediate value controlling rounding using bits [2:0]: \n +/// 000: Nearest \n +/// 001: Down \n +/// 010: Up \n +/// 011: Truncate \n +/// 1XX: Use MXCSR.RC for rounding +/// \returns The converted 16-bit half-precision float value. +#define _cvtss_sh(a, imm) __extension__ ({ \ + (unsigned short)(((__v8hi)__builtin_ia32_vcvtps2ph((__v4sf){a, 0, 0, 0}, \ + (imm)))[0]); }) + +/// Converts a 128-bit vector containing 32-bit float values into a +/// 128-bit vector containing 16-bit half-precision float values. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_cvtps_ph(__m128 a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCVTPS2PH </c> instruction. +/// +/// \param a +/// A 128-bit vector containing 32-bit float values. +/// \param imm +/// An immediate value controlling rounding using bits [2:0]: \n +/// 000: Nearest \n +/// 001: Down \n +/// 010: Up \n +/// 011: Truncate \n +/// 1XX: Use MXCSR.RC for rounding +/// \returns A 128-bit vector containing converted 16-bit half-precision float +/// values. The lower 64 bits are used to store the converted 16-bit +/// half-precision floating-point values. +#define _mm_cvtps_ph(a, imm) \ + ((__m128i)__builtin_ia32_vcvtps2ph((__v4sf)(__m128)(a), (imm))) + +/// Converts a 128-bit vector containing 16-bit half-precision float +/// values into a 128-bit vector containing 32-bit float values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPH2PS </c> instruction. +/// +/// \param __a +/// A 128-bit vector containing 16-bit half-precision float values. The lower +/// 64 bits are used in the conversion. +/// \returns A 128-bit vector of [4 x float] containing converted float values. +static __inline __m128 __DEFAULT_FN_ATTRS128 +_mm_cvtph_ps(__m128i __a) +{ + return (__m128)__builtin_ia32_vcvtph2ps((__v8hi)__a); +} + +/// Converts a 256-bit vector of [8 x float] into a 128-bit vector +/// containing 16-bit half-precision float values. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm256_cvtps_ph(__m256 a, const int imm); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VCVTPS2PH </c> instruction. +/// +/// \param a +/// A 256-bit vector containing 32-bit single-precision float values to be +/// converted to 16-bit half-precision float values. +/// \param imm +/// An immediate value controlling rounding using bits [2:0]: \n +/// 000: Nearest \n +/// 001: Down \n +/// 010: Up \n +/// 011: Truncate \n +/// 1XX: Use MXCSR.RC for rounding +/// \returns A 128-bit vector containing the converted 16-bit half-precision +/// float values. +#define _mm256_cvtps_ph(a, imm) \ + ((__m128i)__builtin_ia32_vcvtps2ph256((__v8sf)(__m256)(a), (imm))) + +/// Converts a 128-bit vector containing 16-bit half-precision float +/// values into a 256-bit vector of [8 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTPH2PS </c> instruction. +/// +/// \param __a +/// A 128-bit vector containing 16-bit half-precision float values to be +/// converted to 32-bit single-precision float values. +/// \returns A vector of [8 x float] containing the converted 32-bit +/// single-precision float values. +static __inline __m256 __DEFAULT_FN_ATTRS256 +_mm256_cvtph_ps(__m128i __a) +{ + return (__m256)__builtin_ia32_vcvtph2ps256((__v8hi)__a); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif /* __F16CINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ce1b1e04f203ab9c00bea7e1a02d8fabb60a2de1 GIT binary patch literal 15532 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 Aj{pDw literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h new file mode 100644 index 00000000..0e73bca0 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h @@ -0,0 +1,168 @@ +/*===---- float.h - Characteristics of floating point types ----------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __CLANG_FLOAT_H +#define __CLANG_FLOAT_H + +/* If we're on MinGW, fall back to the system's float.h, which might have + * additional definitions provided for Windows. + * For more details see http://msdn.microsoft.com/en-us/library/y0ybw9fy.aspx + * + * Also fall back on Darwin and AIX to allow additional definitions and + * implementation-defined values. + */ +#if (defined(__APPLE__) || defined(__MINGW32__) || defined(_MSC_VER) || \ + defined(_AIX)) && \ + __STDC_HOSTED__ && __has_include_next(<float.h>) + +/* Prior to Apple's 10.7 SDK, float.h SDK header used to apply an extra level + * of #include_next<float.h> to keep Metrowerks compilers happy. Avoid this + * extra indirection. + */ +#ifdef __APPLE__ +#define _FLOAT_H_ +#endif + +# include_next <float.h> + +/* Undefine anything that we'll be redefining below. */ +# undef FLT_EVAL_METHOD +# undef FLT_ROUNDS +# undef FLT_RADIX +# undef FLT_MANT_DIG +# undef DBL_MANT_DIG +# undef LDBL_MANT_DIG +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ + !defined(__STRICT_ANSI__) || \ + (defined(__cplusplus) && __cplusplus >= 201103L) || \ + (__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE)) +# undef DECIMAL_DIG +# endif +# undef FLT_DIG +# undef DBL_DIG +# undef LDBL_DIG +# undef FLT_MIN_EXP +# undef DBL_MIN_EXP +# undef LDBL_MIN_EXP +# undef FLT_MIN_10_EXP +# undef DBL_MIN_10_EXP +# undef LDBL_MIN_10_EXP +# undef FLT_MAX_EXP +# undef DBL_MAX_EXP +# undef LDBL_MAX_EXP +# undef FLT_MAX_10_EXP +# undef DBL_MAX_10_EXP +# undef LDBL_MAX_10_EXP +# undef FLT_MAX +# undef DBL_MAX +# undef LDBL_MAX +# undef FLT_EPSILON +# undef DBL_EPSILON +# undef LDBL_EPSILON +# undef FLT_MIN +# undef DBL_MIN +# undef LDBL_MIN +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ + !defined(__STRICT_ANSI__) || \ + (defined(__cplusplus) && __cplusplus >= 201703L) || \ + (__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE)) +# undef FLT_TRUE_MIN +# undef DBL_TRUE_MIN +# undef LDBL_TRUE_MIN +# undef FLT_DECIMAL_DIG +# undef DBL_DECIMAL_DIG +# undef LDBL_DECIMAL_DIG +# undef FLT_HAS_SUBNORM +# undef DBL_HAS_SUBNORM +# undef LDBL_HAS_SUBNORM +# endif +#endif + +/* Characteristics of floating point types, C99 5.2.4.2.2 */ + +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ + (defined(__cplusplus) && __cplusplus >= 201103L) +#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ +#endif +#define FLT_ROUNDS (__builtin_flt_rounds()) +#define FLT_RADIX __FLT_RADIX__ + +#define FLT_MANT_DIG __FLT_MANT_DIG__ +#define DBL_MANT_DIG __DBL_MANT_DIG__ +#define LDBL_MANT_DIG __LDBL_MANT_DIG__ + +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ + !defined(__STRICT_ANSI__) || \ + (defined(__cplusplus) && __cplusplus >= 201103L) || \ + (__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE)) +# define DECIMAL_DIG __DECIMAL_DIG__ +#endif + +#define FLT_DIG __FLT_DIG__ +#define DBL_DIG __DBL_DIG__ +#define LDBL_DIG __LDBL_DIG__ + +#define FLT_MIN_EXP __FLT_MIN_EXP__ +#define DBL_MIN_EXP __DBL_MIN_EXP__ +#define LDBL_MIN_EXP __LDBL_MIN_EXP__ + +#define FLT_MIN_10_EXP __FLT_MIN_10_EXP__ +#define DBL_MIN_10_EXP __DBL_MIN_10_EXP__ +#define LDBL_MIN_10_EXP __LDBL_MIN_10_EXP__ + +#define FLT_MAX_EXP __FLT_MAX_EXP__ +#define DBL_MAX_EXP __DBL_MAX_EXP__ +#define LDBL_MAX_EXP __LDBL_MAX_EXP__ + +#define FLT_MAX_10_EXP __FLT_MAX_10_EXP__ +#define DBL_MAX_10_EXP __DBL_MAX_10_EXP__ +#define LDBL_MAX_10_EXP __LDBL_MAX_10_EXP__ + +#define FLT_MAX __FLT_MAX__ +#define DBL_MAX __DBL_MAX__ +#define LDBL_MAX __LDBL_MAX__ + +#define FLT_EPSILON __FLT_EPSILON__ +#define DBL_EPSILON __DBL_EPSILON__ +#define LDBL_EPSILON __LDBL_EPSILON__ + +#define FLT_MIN __FLT_MIN__ +#define DBL_MIN __DBL_MIN__ +#define LDBL_MIN __LDBL_MIN__ + +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ + !defined(__STRICT_ANSI__) || \ + (defined(__cplusplus) && __cplusplus >= 201703L) || \ + (__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE)) +# define FLT_TRUE_MIN __FLT_DENORM_MIN__ +# define DBL_TRUE_MIN __DBL_DENORM_MIN__ +# define LDBL_TRUE_MIN __LDBL_DENORM_MIN__ +# define FLT_DECIMAL_DIG __FLT_DECIMAL_DIG__ +# define DBL_DECIMAL_DIG __DBL_DECIMAL_DIG__ +# define LDBL_DECIMAL_DIG __LDBL_DECIMAL_DIG__ +# define FLT_HAS_SUBNORM __FLT_HAS_DENORM__ +# define DBL_HAS_SUBNORM __DBL_HAS_DENORM__ +# define LDBL_HAS_SUBNORM __LDBL_HAS_DENORM__ +#endif + +#ifdef __STDC_WANT_IEC_60559_TYPES_EXT__ +# define FLT16_MANT_DIG __FLT16_MANT_DIG__ +# define FLT16_DECIMAL_DIG __FLT16_DECIMAL_DIG__ +# define FLT16_DIG __FLT16_DIG__ +# define FLT16_MIN_EXP __FLT16_MIN_EXP__ +# define FLT16_MIN_10_EXP __FLT16_MIN_10_EXP__ +# define FLT16_MAX_EXP __FLT16_MAX_EXP__ +# define FLT16_MAX_10_EXP __FLT16_MAX_10_EXP__ +# define FLT16_MAX __FLT16_MAX__ +# define FLT16_EPSILON __FLT16_EPSILON__ +# define FLT16_MIN __FLT16_MIN__ +# define FLT16_TRUE_MIN __FLT16_TRUE_MIN__ +#endif /* __STDC_WANT_IEC_60559_TYPES_EXT__ */ + +#endif /* __CLANG_FLOAT_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..856c77d149b9a178644a41f23fa0a618cbdb9014 GIT binary patch literal 15546 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h new file mode 100644 index 00000000..d889b7c5 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h @@ -0,0 +1,216 @@ +/*===---- fmaintrin.h - FMA intrinsics -------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <fmaintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __FMAINTRIN_H +#define __FMAINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("fma"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("fma"), __min_vector_width__(256))) + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fmadd_ps(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddps((__v4sf)__A, (__v4sf)__B, (__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fmadd_pd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddpd((__v2df)__A, (__v2df)__B, (__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fmadd_ss(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddss3((__v4sf)__A, (__v4sf)__B, (__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fmadd_sd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddsd3((__v2df)__A, (__v2df)__B, (__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fmsub_ps(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddps((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fmsub_pd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddpd((__v2df)__A, (__v2df)__B, -(__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fmsub_ss(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddss3((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fmsub_sd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddsd3((__v2df)__A, (__v2df)__B, -(__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fnmadd_ps(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddps(-(__v4sf)__A, (__v4sf)__B, (__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fnmadd_pd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddpd(-(__v2df)__A, (__v2df)__B, (__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fnmadd_ss(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddss3((__v4sf)__A, -(__v4sf)__B, (__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fnmadd_sd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddsd3((__v2df)__A, -(__v2df)__B, (__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fnmsub_ps(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddps(-(__v4sf)__A, (__v4sf)__B, -(__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fnmsub_pd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddpd(-(__v2df)__A, (__v2df)__B, -(__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fnmsub_ss(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddss3((__v4sf)__A, -(__v4sf)__B, -(__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fnmsub_sd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddsd3((__v2df)__A, -(__v2df)__B, -(__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fmaddsub_ps(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddsubps((__v4sf)__A, (__v4sf)__B, (__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fmaddsub_pd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddsubpd((__v2df)__A, (__v2df)__B, (__v2df)__C); +} + +static __inline__ __m128 __DEFAULT_FN_ATTRS128 +_mm_fmsubadd_ps(__m128 __A, __m128 __B, __m128 __C) +{ + return (__m128)__builtin_ia32_vfmaddsubps((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C); +} + +static __inline__ __m128d __DEFAULT_FN_ATTRS128 +_mm_fmsubadd_pd(__m128d __A, __m128d __B, __m128d __C) +{ + return (__m128d)__builtin_ia32_vfmaddsubpd((__v2df)__A, (__v2df)__B, -(__v2df)__C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_fmadd_ps(__m256 __A, __m256 __B, __m256 __C) +{ + return (__m256)__builtin_ia32_vfmaddps256((__v8sf)__A, (__v8sf)__B, (__v8sf)__C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_fmadd_pd(__m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d)__builtin_ia32_vfmaddpd256((__v4df)__A, (__v4df)__B, (__v4df)__C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_fmsub_ps(__m256 __A, __m256 __B, __m256 __C) +{ + return (__m256)__builtin_ia32_vfmaddps256((__v8sf)__A, (__v8sf)__B, -(__v8sf)__C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_fmsub_pd(__m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d)__builtin_ia32_vfmaddpd256((__v4df)__A, (__v4df)__B, -(__v4df)__C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_fnmadd_ps(__m256 __A, __m256 __B, __m256 __C) +{ + return (__m256)__builtin_ia32_vfmaddps256(-(__v8sf)__A, (__v8sf)__B, (__v8sf)__C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_fnmadd_pd(__m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d)__builtin_ia32_vfmaddpd256(-(__v4df)__A, (__v4df)__B, (__v4df)__C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_fnmsub_ps(__m256 __A, __m256 __B, __m256 __C) +{ + return (__m256)__builtin_ia32_vfmaddps256(-(__v8sf)__A, (__v8sf)__B, -(__v8sf)__C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_fnmsub_pd(__m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d)__builtin_ia32_vfmaddpd256(-(__v4df)__A, (__v4df)__B, -(__v4df)__C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_fmaddsub_ps(__m256 __A, __m256 __B, __m256 __C) +{ + return (__m256)__builtin_ia32_vfmaddsubps256((__v8sf)__A, (__v8sf)__B, (__v8sf)__C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_fmaddsub_pd(__m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d)__builtin_ia32_vfmaddsubpd256((__v4df)__A, (__v4df)__B, (__v4df)__C); +} + +static __inline__ __m256 __DEFAULT_FN_ATTRS256 +_mm256_fmsubadd_ps(__m256 __A, __m256 __B, __m256 __C) +{ + return (__m256)__builtin_ia32_vfmaddsubps256((__v8sf)__A, (__v8sf)__B, -(__v8sf)__C); +} + +static __inline__ __m256d __DEFAULT_FN_ATTRS256 +_mm256_fmsubadd_pd(__m256d __A, __m256d __B, __m256d __C) +{ + return (__m256d)__builtin_ia32_vfmaddsubpd256((__v4df)__A, (__v4df)__B, -(__v4df)__C); +} + +#undef __DEFAULT_FN_ATTRS128 +#undef __DEFAULT_FN_ATTRS256 + +#endif /* __FMAINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ad34bb8d41ef2d06551d96688e61b3f9a42df764 GIT binary patch literal 25892 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h new file mode 100644 index 00000000..afee6aa9 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h @@ -0,0 +1,91 @@ +/*===---- fxsrintrin.h - FXSR intrinsic ------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <fxsrintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __FXSRINTRIN_H +#define __FXSRINTRIN_H + +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("fxsr"))) + +/// Saves the XMM, MMX, MXCSR and x87 FPU registers into a 512-byte +/// memory region pointed to by the input parameter \a __p. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> FXSAVE </c> instruction. +/// +/// \param __p +/// A pointer to a 512-byte memory region. The beginning of this memory +/// region should be aligned on a 16-byte boundary. +static __inline__ void __DEFAULT_FN_ATTRS +_fxsave(void *__p) +{ + __builtin_ia32_fxsave(__p); +} + +/// Restores the XMM, MMX, MXCSR and x87 FPU registers from the 512-byte +/// memory region pointed to by the input parameter \a __p. The contents of +/// this memory region should have been written to by a previous \c _fxsave +/// or \c _fxsave64 intrinsic. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> FXRSTOR </c> instruction. +/// +/// \param __p +/// A pointer to a 512-byte memory region. The beginning of this memory +/// region should be aligned on a 16-byte boundary. +static __inline__ void __DEFAULT_FN_ATTRS +_fxrstor(void *__p) +{ + __builtin_ia32_fxrstor(__p); +} + +#ifdef __x86_64__ +/// Saves the XMM, MMX, MXCSR and x87 FPU registers into a 512-byte +/// memory region pointed to by the input parameter \a __p. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> FXSAVE64 </c> instruction. +/// +/// \param __p +/// A pointer to a 512-byte memory region. The beginning of this memory +/// region should be aligned on a 16-byte boundary. +static __inline__ void __DEFAULT_FN_ATTRS +_fxsave64(void *__p) +{ + __builtin_ia32_fxsave64(__p); +} + +/// Restores the XMM, MMX, MXCSR and x87 FPU registers from the 512-byte +/// memory region pointed to by the input parameter \a __p. The contents of +/// this memory region should have been written to by a previous \c _fxsave +/// or \c _fxsave64 intrinsic. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> FXRSTOR64 </c> instruction. +/// +/// \param __p +/// A pointer to a 512-byte memory region. The beginning of this memory +/// region should be aligned on a 16-byte boundary. +static __inline__ void __DEFAULT_FN_ATTRS +_fxrstor64(void *__p) +{ + __builtin_ia32_fxrstor64(__p); +} +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..2377355d801aac403f7434b634863429a32ced67 GIT binary patch literal 14538 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 UI$_oR(m1?w`1F$eDNpeJ1^d$15dZ)H literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h new file mode 100644 index 00000000..5ec53c54 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h @@ -0,0 +1,194 @@ +/*===----------------- gfniintrin.h - GFNI intrinsics ----------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <gfniintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __GFNIINTRIN_H +#define __GFNIINTRIN_H + +/* Default attributes for simple form (no masking). */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("gfni"), __min_vector_width__(128))) + +/* Default attributes for YMM unmasked form. */ +#define __DEFAULT_FN_ATTRS_Y __attribute__((__always_inline__, __nodebug__, __target__("avx,gfni"), __min_vector_width__(256))) + +/* Default attributes for ZMM unmasked forms. */ +#define __DEFAULT_FN_ATTRS_Z __attribute__((__always_inline__, __nodebug__, __target__("avx512f,gfni"), __min_vector_width__(512))) +/* Default attributes for ZMM masked forms. */ +#define __DEFAULT_FN_ATTRS_Z_MASK __attribute__((__always_inline__, __nodebug__, __target__("avx512bw,gfni"), __min_vector_width__(512))) + +/* Default attributes for VLX masked forms. */ +#define __DEFAULT_FN_ATTRS_VL128 __attribute__((__always_inline__, __nodebug__, __target__("avx512bw,avx512vl,gfni"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS_VL256 __attribute__((__always_inline__, __nodebug__, __target__("avx512bw,avx512vl,gfni"), __min_vector_width__(256))) + +#define _mm_gf2p8affineinv_epi64_epi8(A, B, I) \ + ((__m128i)__builtin_ia32_vgf2p8affineinvqb_v16qi((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), \ + (char)(I))) + +#define _mm_gf2p8affine_epi64_epi8(A, B, I) \ + ((__m128i)__builtin_ia32_vgf2p8affineqb_v16qi((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), \ + (char)(I))) + +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_gf2p8mul_epi8(__m128i __A, __m128i __B) +{ + return (__m128i) __builtin_ia32_vgf2p8mulb_v16qi((__v16qi) __A, + (__v16qi) __B); +} + +#ifdef __AVXINTRIN_H +#define _mm256_gf2p8affineinv_epi64_epi8(A, B, I) \ + ((__m256i)__builtin_ia32_vgf2p8affineinvqb_v32qi((__v32qi)(__m256i)(A), \ + (__v32qi)(__m256i)(B), \ + (char)(I))) + +#define _mm256_gf2p8affine_epi64_epi8(A, B, I) \ + ((__m256i)__builtin_ia32_vgf2p8affineqb_v32qi((__v32qi)(__m256i)(A), \ + (__v32qi)(__m256i)(B), \ + (char)(I))) + +static __inline__ __m256i __DEFAULT_FN_ATTRS_Y +_mm256_gf2p8mul_epi8(__m256i __A, __m256i __B) +{ + return (__m256i) __builtin_ia32_vgf2p8mulb_v32qi((__v32qi) __A, + (__v32qi) __B); +} +#endif /* __AVXINTRIN_H */ + +#ifdef __AVX512BWINTRIN_H +#define _mm512_gf2p8affineinv_epi64_epi8(A, B, I) \ + ((__m512i)__builtin_ia32_vgf2p8affineinvqb_v64qi((__v64qi)(__m512i)(A), \ + (__v64qi)(__m512i)(B), \ + (char)(I))) + +#define _mm512_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \ + ((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \ + (__v64qi)_mm512_gf2p8affineinv_epi64_epi8(A, B, I), \ + (__v64qi)(__m512i)(S))) + +#define _mm512_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \ + _mm512_mask_gf2p8affineinv_epi64_epi8((__m512i)_mm512_setzero_si512(), \ + U, A, B, I) + +#define _mm512_gf2p8affine_epi64_epi8(A, B, I) \ + ((__m512i)__builtin_ia32_vgf2p8affineqb_v64qi((__v64qi)(__m512i)(A), \ + (__v64qi)(__m512i)(B), \ + (char)(I))) + +#define _mm512_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \ + ((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \ + (__v64qi)_mm512_gf2p8affine_epi64_epi8((A), (B), (I)), \ + (__v64qi)(__m512i)(S))) + +#define _mm512_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \ + _mm512_mask_gf2p8affine_epi64_epi8((__m512i)_mm512_setzero_si512(), \ + U, A, B, I) + +static __inline__ __m512i __DEFAULT_FN_ATTRS_Z +_mm512_gf2p8mul_epi8(__m512i __A, __m512i __B) +{ + return (__m512i) __builtin_ia32_vgf2p8mulb_v64qi((__v64qi) __A, + (__v64qi) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS_Z_MASK +_mm512_mask_gf2p8mul_epi8(__m512i __S, __mmask64 __U, __m512i __A, __m512i __B) +{ + return (__m512i) __builtin_ia32_selectb_512(__U, + (__v64qi) _mm512_gf2p8mul_epi8(__A, __B), + (__v64qi) __S); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS_Z_MASK +_mm512_maskz_gf2p8mul_epi8(__mmask64 __U, __m512i __A, __m512i __B) +{ + return _mm512_mask_gf2p8mul_epi8((__m512i)_mm512_setzero_si512(), + __U, __A, __B); +} +#endif /* __AVX512BWINTRIN_H */ + +#ifdef __AVX512VLBWINTRIN_H +#define _mm_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \ + ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \ + (__v16qi)_mm_gf2p8affineinv_epi64_epi8(A, B, I), \ + (__v16qi)(__m128i)(S))) + +#define _mm_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \ + _mm_mask_gf2p8affineinv_epi64_epi8((__m128i)_mm_setzero_si128(), \ + U, A, B, I) + +#define _mm256_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \ + ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \ + (__v32qi)_mm256_gf2p8affineinv_epi64_epi8(A, B, I), \ + (__v32qi)(__m256i)(S))) + +#define _mm256_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \ + _mm256_mask_gf2p8affineinv_epi64_epi8((__m256i)_mm256_setzero_si256(), \ + U, A, B, I) + +#define _mm_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \ + ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \ + (__v16qi)_mm_gf2p8affine_epi64_epi8(A, B, I), \ + (__v16qi)(__m128i)(S))) + +#define _mm_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \ + _mm_mask_gf2p8affine_epi64_epi8((__m128i)_mm_setzero_si128(), U, A, B, I) + +#define _mm256_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \ + ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \ + (__v32qi)_mm256_gf2p8affine_epi64_epi8(A, B, I), \ + (__v32qi)(__m256i)(S))) + +#define _mm256_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \ + _mm256_mask_gf2p8affine_epi64_epi8((__m256i)_mm256_setzero_si256(), \ + U, A, B, I) + +static __inline__ __m128i __DEFAULT_FN_ATTRS_VL128 +_mm_mask_gf2p8mul_epi8(__m128i __S, __mmask16 __U, __m128i __A, __m128i __B) +{ + return (__m128i) __builtin_ia32_selectb_128(__U, + (__v16qi) _mm_gf2p8mul_epi8(__A, __B), + (__v16qi) __S); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS_VL128 +_mm_maskz_gf2p8mul_epi8(__mmask16 __U, __m128i __A, __m128i __B) +{ + return _mm_mask_gf2p8mul_epi8((__m128i)_mm_setzero_si128(), + __U, __A, __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS_VL256 +_mm256_mask_gf2p8mul_epi8(__m256i __S, __mmask32 __U, __m256i __A, __m256i __B) +{ + return (__m256i) __builtin_ia32_selectb_256(__U, + (__v32qi) _mm256_gf2p8mul_epi8(__A, __B), + (__v32qi) __S); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS_VL256 +_mm256_maskz_gf2p8mul_epi8(__mmask32 __U, __m256i __A, __m256i __B) +{ + return _mm256_mask_gf2p8mul_epi8((__m256i)_mm256_setzero_si256(), + __U, __A, __B); +} +#endif /* __AVX512VLBWINTRIN_H */ + +#undef __DEFAULT_FN_ATTRS +#undef __DEFAULT_FN_ATTRS_Y +#undef __DEFAULT_FN_ATTRS_Z +#undef __DEFAULT_FN_ATTRS_VL128 +#undef __DEFAULT_FN_ATTRS_VL256 + +#endif /* __GFNIINTRIN_H */ + diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5b617586038b2d7dfa7a94959855008c59544ecc GIT binary patch literal 23077 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 U72g2D=M&pm&<A=4;0Eyj0omjhNdN!< literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h new file mode 100644 index 00000000..646f6c13 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h @@ -0,0 +1,49 @@ +/*===---------------- hresetintrin.h - HRESET intrinsics -------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __X86GPRINTRIN_H +#error "Never use <hresetintrin.h> directly; include <x86gprintrin.h> instead." +#endif + +#ifndef __HRESETINTRIN_H +#define __HRESETINTRIN_H + +#if __has_extension(gnu_asm) + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("hreset"))) + +/// Provides a hint to the processor to selectively reset the prediction +/// history of the current logical processor specified by a 32-bit integer +/// value \a __eax. +/// +/// This intrinsic corresponds to the <c> HRESET </c> instruction. +/// +/// \code{.operation} +/// IF __eax == 0 +/// // nop +/// ELSE +/// FOR i := 0 to 31 +/// IF __eax[i] +/// ResetPredictionFeature(i) +/// FI +/// ENDFOR +/// FI +/// \endcode +static __inline void __DEFAULT_FN_ATTRS +_hreset(int __eax) +{ + __asm__ ("hreset $0" :: "a"(__eax)); +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* __has_extension(gnu_asm) */ + +#endif /* __HRESETINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9c037b536619aa8fa2e020c31756758417dd2221 GIT binary patch literal 12935 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 I)qaEj1B|q}TmS$7 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h new file mode 100644 index 00000000..0d2e8be6 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h @@ -0,0 +1,650 @@ +/*===---- immintrin.h - Intel intrinsics -----------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#define __IMMINTRIN_H + +#if !defined(__i386__) && !defined(__x86_64__) +#error "This header is only meant to be used on x86 and x64 architecture" +#endif + +#include <x86gprintrin.h> + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__MMX__) +#include <mmintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__SSE__) +#include <xmmintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__SSE2__) +#include <emmintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__SSE3__) +#include <pmmintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__SSSE3__) +#include <tmmintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__SSE4_2__) || defined(__SSE4_1__)) +#include <smmintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AES__) || defined(__PCLMUL__)) +#include <wmmintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__CLFLUSHOPT__) +#include <clflushoptintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__CLWB__) +#include <clwbintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX__) +#include <avxintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX2__) +#include <avx2intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__F16C__) +#include <f16cintrin.h> +#endif + +/* No feature check desired due to internal checks */ +#include <bmiintrin.h> + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__BMI2__) +#include <bmi2intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__LZCNT__) +#include <lzcntintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__POPCNT__) +#include <popcntintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__FMA__) +#include <fmaintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512F__) +#include <avx512fintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512VL__) +#include <avx512vlintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512BW__) +#include <avx512bwintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512BITALG__) +#include <avx512bitalgintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512CD__) +#include <avx512cdintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512VPOPCNTDQ__) +#include <avx512vpopcntdqintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512VPOPCNTDQ__)) +#include <avx512vpopcntdqvlintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512VNNI__) +#include <avx512vnniintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512VNNI__)) +#include <avx512vlvnniintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVXVNNI__) +#include <avxvnniintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512DQ__) +#include <avx512dqintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512BITALG__)) +#include <avx512vlbitalgintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512BW__)) +#include <avx512vlbwintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512CD__)) +#include <avx512vlcdintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512DQ__)) +#include <avx512vldqintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512ER__) +#include <avx512erintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512IFMA__) +#include <avx512ifmaintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512IFMA__) && defined(__AVX512VL__)) +#include <avx512ifmavlintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVXIFMA__) +#include <avxifmaintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512VBMI__) +#include <avx512vbmiintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VBMI__) && defined(__AVX512VL__)) +#include <avx512vbmivlintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512VBMI2__) +#include <avx512vbmi2intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VBMI2__) && defined(__AVX512VL__)) +#include <avx512vlvbmi2intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512PF__) +#include <avx512pfintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512FP16__) +#include <avx512fp16intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512FP16__)) +#include <avx512vlfp16intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512BF16__) +#include <avx512bf16intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512BF16__)) +#include <avx512vlbf16intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__PKU__) +#include <pkuintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__VPCLMULQDQ__) +#include <vpclmulqdqintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__VAES__) +#include <vaesintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__GFNI__) +#include <gfniintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVXVNNIINT8__) +#include <avxvnniint8intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVXNECONVERT__) +#include <avxneconvertintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__RDPID__) +/// Returns the value of the IA32_TSC_AUX MSR (0xc0000103). +/// +/// \headerfile <immintrin.h> +/// +/// This intrinsic corresponds to the <c> RDPID </c> instruction. +static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__, __target__("rdpid"))) +_rdpid_u32(void) { + return __builtin_ia32_rdpid(); +} +#endif // __RDPID__ + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__RDRND__) +static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd"))) +_rdrand16_step(unsigned short *__p) +{ + return (int)__builtin_ia32_rdrand16_step(__p); +} + +static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd"))) +_rdrand32_step(unsigned int *__p) +{ + return (int)__builtin_ia32_rdrand32_step(__p); +} + +#ifdef __x86_64__ +static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd"))) +_rdrand64_step(unsigned long long *__p) +{ + return (int)__builtin_ia32_rdrand64_step(__p); +} +#else +// We need to emulate the functionality of 64-bit rdrand with 2 32-bit +// rdrand instructions. +static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd"))) +_rdrand64_step(unsigned long long *__p) +{ + unsigned int __lo, __hi; + unsigned int __res_lo = __builtin_ia32_rdrand32_step(&__lo); + unsigned int __res_hi = __builtin_ia32_rdrand32_step(&__hi); + if (__res_lo && __res_hi) { + *__p = ((unsigned long long)__hi << 32) | (unsigned long long)__lo; + return 1; + } else { + *__p = 0; + return 0; + } +} +#endif +#endif /* __RDRND__ */ + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__FSGSBASE__) +#ifdef __x86_64__ +static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) +_readfsbase_u32(void) +{ + return __builtin_ia32_rdfsbase32(); +} + +static __inline__ unsigned long long __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) +_readfsbase_u64(void) +{ + return __builtin_ia32_rdfsbase64(); +} + +static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) +_readgsbase_u32(void) +{ + return __builtin_ia32_rdgsbase32(); +} + +static __inline__ unsigned long long __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) +_readgsbase_u64(void) +{ + return __builtin_ia32_rdgsbase64(); +} + +static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) +_writefsbase_u32(unsigned int __V) +{ + __builtin_ia32_wrfsbase32(__V); +} + +static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) +_writefsbase_u64(unsigned long long __V) +{ + __builtin_ia32_wrfsbase64(__V); +} + +static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) +_writegsbase_u32(unsigned int __V) +{ + __builtin_ia32_wrgsbase32(__V); +} + +static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) +_writegsbase_u64(unsigned long long __V) +{ + __builtin_ia32_wrgsbase64(__V); +} + +#endif +#endif /* __FSGSBASE__ */ + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__MOVBE__) + +/* The structs used below are to force the load/store to be unaligned. This + * is accomplished with the __packed__ attribute. The __may_alias__ prevents + * tbaa metadata from being generated based on the struct and the type of the + * field inside of it. + */ + +static __inline__ short __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) +_loadbe_i16(void const * __P) { + struct __loadu_i16 { + unsigned short __v; + } __attribute__((__packed__, __may_alias__)); + return (short)__builtin_bswap16(((const struct __loadu_i16*)__P)->__v); +} + +static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) +_storebe_i16(void * __P, short __D) { + struct __storeu_i16 { + unsigned short __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_i16*)__P)->__v = __builtin_bswap16((unsigned short)__D); +} + +static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) +_loadbe_i32(void const * __P) { + struct __loadu_i32 { + unsigned int __v; + } __attribute__((__packed__, __may_alias__)); + return (int)__builtin_bswap32(((const struct __loadu_i32*)__P)->__v); +} + +static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) +_storebe_i32(void * __P, int __D) { + struct __storeu_i32 { + unsigned int __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_i32*)__P)->__v = __builtin_bswap32((unsigned int)__D); +} + +#ifdef __x86_64__ +static __inline__ long long __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) +_loadbe_i64(void const * __P) { + struct __loadu_i64 { + unsigned long long __v; + } __attribute__((__packed__, __may_alias__)); + return (long long)__builtin_bswap64(((const struct __loadu_i64*)__P)->__v); +} + +static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) +_storebe_i64(void * __P, long long __D) { + struct __storeu_i64 { + unsigned long long __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_i64*)__P)->__v = __builtin_bswap64((unsigned long long)__D); +} +#endif +#endif /* __MOVBE */ + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__RTM__) +#include <rtmintrin.h> +#include <xtestintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__SHA__) +#include <shaintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__FXSR__) +#include <fxsrintrin.h> +#endif + +/* No feature check desired due to internal MSC_VER checks */ +#include <xsaveintrin.h> + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__XSAVEOPT__) +#include <xsaveoptintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__XSAVEC__) +#include <xsavecintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__XSAVES__) +#include <xsavesintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__SHSTK__) +#include <cetintrin.h> +#endif + +/* Some intrinsics inside adxintrin.h are available only on processors with ADX, + * whereas others are also available at all times. */ +#include <adxintrin.h> + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__RDSEED__) +#include <rdseedintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__WBNOINVD__) +#include <wbnoinvdintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__CLDEMOTE__) +#include <cldemoteintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__WAITPKG__) +#include <waitpkgintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__MOVDIRI__) || defined(__MOVDIR64B__) +#include <movdirintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__PCONFIG__) +#include <pconfigintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__SGX__) +#include <sgxintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__PTWRITE__) +#include <ptwriteintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__INVPCID__) +#include <invpcidintrin.h> +#endif +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AMX_FP16__) +#include <amxfp16intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__KL__) || defined(__WIDEKL__) +#include <keylockerintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AMX_TILE__) || defined(__AMX_INT8__) || defined(__AMX_BF16__) +#include <amxintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__AVX512VP2INTERSECT__) +#include <avx512vp2intersectintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + (defined(__AVX512VL__) && defined(__AVX512VP2INTERSECT__)) +#include <avx512vlvp2intersectintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__ENQCMD__) +#include <enqcmdintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__SERIALIZE__) +#include <serializeintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__TSXLDTRK__) +#include <tsxldtrkintrin.h> +#endif + +#if defined(_MSC_VER) && __has_extension(gnu_asm) +/* Define the default attributes for these intrinsics */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__)) +#ifdef __cplusplus +extern "C" { +#endif +/*----------------------------------------------------------------------------*\ +|* Interlocked Exchange HLE +\*----------------------------------------------------------------------------*/ +#if defined(__i386__) || defined(__x86_64__) +static __inline__ long __DEFAULT_FN_ATTRS +_InterlockedExchange_HLEAcquire(long volatile *_Target, long _Value) { + __asm__ __volatile__(".byte 0xf2 ; lock ; xchg {%0, %1|%1, %0}" + : "+r" (_Value), "+m" (*_Target) :: "memory"); + return _Value; +} +static __inline__ long __DEFAULT_FN_ATTRS +_InterlockedExchange_HLERelease(long volatile *_Target, long _Value) { + __asm__ __volatile__(".byte 0xf3 ; lock ; xchg {%0, %1|%1, %0}" + : "+r" (_Value), "+m" (*_Target) :: "memory"); + return _Value; +} +#endif +#if defined(__x86_64__) +static __inline__ __int64 __DEFAULT_FN_ATTRS +_InterlockedExchange64_HLEAcquire(__int64 volatile *_Target, __int64 _Value) { + __asm__ __volatile__(".byte 0xf2 ; lock ; xchg {%0, %1|%1, %0}" + : "+r" (_Value), "+m" (*_Target) :: "memory"); + return _Value; +} +static __inline__ __int64 __DEFAULT_FN_ATTRS +_InterlockedExchange64_HLERelease(__int64 volatile *_Target, __int64 _Value) { + __asm__ __volatile__(".byte 0xf3 ; lock ; xchg {%0, %1|%1, %0}" + : "+r" (_Value), "+m" (*_Target) :: "memory"); + return _Value; +} +#endif +/*----------------------------------------------------------------------------*\ +|* Interlocked Compare Exchange HLE +\*----------------------------------------------------------------------------*/ +#if defined(__i386__) || defined(__x86_64__) +static __inline__ long __DEFAULT_FN_ATTRS +_InterlockedCompareExchange_HLEAcquire(long volatile *_Destination, + long _Exchange, long _Comparand) { + __asm__ __volatile__(".byte 0xf2 ; lock ; cmpxchg {%2, %1|%1, %2}" + : "+a" (_Comparand), "+m" (*_Destination) + : "r" (_Exchange) : "memory"); + return _Comparand; +} +static __inline__ long __DEFAULT_FN_ATTRS +_InterlockedCompareExchange_HLERelease(long volatile *_Destination, + long _Exchange, long _Comparand) { + __asm__ __volatile__(".byte 0xf3 ; lock ; cmpxchg {%2, %1|%1, %2}" + : "+a" (_Comparand), "+m" (*_Destination) + : "r" (_Exchange) : "memory"); + return _Comparand; +} +#endif +#if defined(__x86_64__) +static __inline__ __int64 __DEFAULT_FN_ATTRS +_InterlockedCompareExchange64_HLEAcquire(__int64 volatile *_Destination, + __int64 _Exchange, __int64 _Comparand) { + __asm__ __volatile__(".byte 0xf2 ; lock ; cmpxchg {%2, %1|%1, %2}" + : "+a" (_Comparand), "+m" (*_Destination) + : "r" (_Exchange) : "memory"); + return _Comparand; +} +static __inline__ __int64 __DEFAULT_FN_ATTRS +_InterlockedCompareExchange64_HLERelease(__int64 volatile *_Destination, + __int64 _Exchange, __int64 _Comparand) { + __asm__ __volatile__(".byte 0xf3 ; lock ; cmpxchg {%2, %1|%1, %2}" + : "+a" (_Comparand), "+m" (*_Destination) + : "r" (_Exchange) : "memory"); + return _Comparand; +} +#endif +#ifdef __cplusplus +} +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif /* defined(_MSC_VER) && __has_extension(gnu_asm) */ + +#endif /* __IMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ec7973e36b5af49d43042bc79d4b254819966470 GIT binary patch literal 21124 zcmb7M4X_l|m7Yf2n77ZLB@`gb;@|>4gyB6N`r^6-1)o1u1o00Qf4X~mdfqhjOb^pN z?}r$ZQc%<<c`=AsB4VNvQ4}>&1}(EDt_ICgM%`M9(p0ou-ISI;o7FYC?d*4N_r241 z=6277s(0(WH|L(ed+s^so_mLrQ(wPqUH(c+Np%;TqS<YC_nYoo&nb6%rt5X*%v`ry zF}jPoRhn<4jxcP!G|(1mX2_|mwMqk-oK-Om&#8=jCzeCXpQm(J-AcDrGVE&3?7q1F z{NC=YIbfAk!^xTR3#qSXr#HPU;27RWnSSy=ADt$ClC?ayn|$hat7<Xpdb($-9wEX} zZ7bVNb?IKv$GPgoVXNd-peay^RRn%iCJgF8)yhdFI`{nU0lP{*I_{0V2Vy3}s?~~I zqr9n;&s;%LW|E@r6@(AuDhv*vx}Y~-UeK4I3AGPdmXc@`#)^KP9f1Q3>E+fuT`!k) z9Gf6E8I6)EJFYd{tJ+pkASSTWJ*Q|H>X4N)vE<c~XI40Jl4IsA+f=g^XUGjE^z6>Y zESpiTTBW>0sB&LQupuPZZ8%_Se{idnyl&K&G)dfoX<NfYgh!vaMwHVfj0U*QWH(5q z8_1We1gWUO1K)S8fkEAFaD2h&0iI_S%}N9<Nq%$Cq6^*m+y$cee0O+G)u4{bjV!Rt zmov6AkZrA}PCa=rTTIf{9dWyjoSBzznW!ziO4abxbC#Wdw!oUn#>J<BF6tr-BSOq@ zoVAvzT8^5pmJH8wN^Zn_(KtpU0%5p1dsae>%43H#P>`<uP_fu*>9Odpx7J-R)v{W$ zuvw)aMbwi=OlAi#DCyJ(craxjQ5vpMFk7-1f*S28Tz1Mv$xG0guN#6{E{Fis?-G5u zs2kK_4$oaKIx*P^QtNOw;9}`CKXCV!u9T|6&~Qw(s1K{U4Vwk($^#_JRb=tZM#Bi! z9WaraJw(VLh0rBP($yU#`h0ZO5>ZjE52OTrg2VM;{K(#-f(aIpYMUQ+5xklrr4%>Z z*X3SJFe@%fgTHd7-A;BRE7^C7AUV^E>u%UqIqT>Zc`~QYjEv!xGRR4ALT^MMCsnRo z$r}Y(z>;EzrYJQ9^rRKdS4>kKut&-?$ex@oh$|cHK@tRXV{L1JLlNw3zIDX_?<5H{ zV<6snV#G~S4-uTKH5`P9!#6;}6f0lU2W`n5wuDs4`c{+&BDSe)$IwwDh^3B{J2-NO z=W+@>k-hS|E0PirQ1s?pYrQ;*kj+Nxk0yb+Pp&mbgn~E86Fhi=Yk6U%^kvNmJVB~j zIWco^_C?E;2Lp}~)M;cTn*zo_soIU=HtS|$cAoAQyUj|aL~YRZ<)~O92cBzsYl>~u zoGgma{E%DM+FSU-a@$MoG*~w5V%1)kTPJZp>5L)W^2%#vg`yPQl`e!76*@|U5ZsMc z)+#cBu+tfe?xHBJf0X1)wmBSR&#51pVnD&7Wd_WWS+R^@@iJN6rT*Qtg4{`*vRN9S zHA0h<M7D0pbj2vb<R*@-2A<ummo1{(wRd%j^%G58b=_ji<vJeU(Nbd%yZWGMw6Zsg zDWqWQJEfhNf<+t*0{m$b;!;rzvoR$mtz1EO3&r4=)|Xq65CY%}7AleTrbG^AdA@>( zL(QpCDlN+((jCL-275cG!7D?E$YN?@Xq-Jc)uI0IOnPFJI}xNYG6hpd*_T1Ki#U3; z0uTLd(5g74BGS0r<0uvmh#8b$(yc@h!s3f=Iw=-J!d8)fL<y9=LIna-FUshZ;GDz* zQj-<3Hga4suKz*mvnq12XAURGjHDefl}g17PCk@d8S`~|#1ZBvctXA%_rej7vrKYs z+oic+-=w76R`D87MM)&<2L-!VRy*+o)wC|?U!buh*nuq>UELr!;2cj*nxvF(D!~MF z*R)am#*-rrA5<>3$Wdx}1UbDzEy{zOz>4IkysZz2qy!We*&ug|rU4;FT5461np7}7 z*D{3(R#R1Ee>GdptDau(g(NK}aPvXt(k@skW-jX7hV8hdqtwtulu9d2&CE)$v5_fP zOdRTjHIq_8H7&~}Qe0K#$9grWJ_vpJLgsBRV`6<WMbj%d@?$m%=jw2)IxDogHK2x# zH_;KLf(~U%j#V1Ofw8HWXGUW2M6Jgh9#*6@(Q=JB&dJe(rclrpNX$5a73y2IsaR?5 zQ%E^hbm-iek7KJ1mJGv`-`1JO9cZ~n!n}c=0uFU5qFp98Qqs{c6+DqGLQ|^YSV<en z)(KjCr+_r^2}X<cqzfcn8L4?`*(Gr(DY98wXB3m%FRFRnSZ%5ATE#L>i9vP<0?H5P zU71i$)m<xYt2#P*2ZmEDI!Pq~>5VUl?Tt58-$a=vU#@RE(#jQ9NpK3%6=^!1N=;1~ zAMoC$jV?tl7SZOiQPmO7a%%+f2EiEqD~1|TKzeB-J+U*qpieI59`;!z4XbVRdI!;e zLi1LzmsG)Fau?QMjikM_JVSf@FQ3tHg+%2;$(G0FmA42eMsPKwCf0SWTa|-oTh(tn zlEfX+-I7%<2c_?hpI$1aQ7RJ30&@`Mb7S)-i7Z`hV%#sKg_e-`Euv4wEt_IUldeV( zWJ!~#VM$`cvgZ!lIgeaNHaRqN9lnLuI5>A$!2u;X)_Kx;K`L_5LE3D4KhdCwLw!5q z>eaBPlq{=Z=k2OnNG3XD6!iM7Tl5sgty8da;fb8`OIm(2XW`bDtp6X*$tMKTU^&Z4 z=Z03TKG#*7%UkI}M2jswxM}49OFCirw7!9I+bhTNztJ*F@d7Nq;m?g8#6uxWHMwos z*1fz_k)M}2rFB(HOyZ0V+vKHcG5%m0mLWutro$1tyUrwZ-Z>N8O2!2@E~;ym+`xUf zXA8ncGK!UJol_9NNb|Y@QNHBTea)D20qfm0xq!iCTa%(vmVw`(LDL+dr1*pI-F9(l zG?8I9X+$!URX><V0{~q*A!5_|SuN`oUA)zo%Ig+nv6=}G_yxI%@-p<sMer~w!N6dN z+YHpGzydMGlJ}~mpHhMN`5R3pyNo6izw8y}NX0YkoLO|dwpwkrqvzauqK;af`&!u= zHiJe$ldo}{0n`+v9aM2_yP*h_$_NwoN_>b}h|@(wBxxVEku=KAP=i2>35y7_HddU_ zc;7N;lXn3!>7|o!bPrGMJk~b~K;mB5<rY>~#0y*$MoTE@iQ8n*N)B@$50p~L@>qNt zkhx$|G%QujiBgacbBh@qWOA9DY1n9r;x0zeMoK)!k^*I6=X>IYmm!ALVneiLnB29B zPBpkn;9f125bBqRYolIot0uxB$JGbStV65tWZGzGlnqOkuBD=sgBU5<H&XN<OtpDC zh08PAI;5wxwkqM|$1&W@1s%1d{9Z4J>$EGKL6Am!D-$0y17vzci-?MLl;C7+mFw8J za}fQIq0r|s<`9{_>csb7q%Y<Y?3g9bMvx;3KHo5m7T2~i<di8pzVHmC)swft%Zd48 z9G9wOJLFNLQ$=@P&|4}vZi7t}!p&k!u}x{^Aw?~FLlsM!V5I2w`ZnLu6sx#TAbK@f zj~kdC1mzayIIf|WnwqX`9mvf^tL`_sw{v3KB6U9SZMqCi;?lLE@l_1gQuE-ti?k-% zFTjjq*)WFnT-!?<Mgr_uX*7^Z#iGYx@?#lhR&EqDhl4#yjgoXmt9Pf?Yzp5^CQ1UM zCO?X#Z6Ml7<cW`oM;9cF8{Eq{Rs!3Yw<&Qm{+h;sQ85;_T}H?o4x)PD6Pc#Fy*OcM zF(Zv@(i!EoVPh^i1SVXa#$Ru7_bDJ;$+veH|8Of6yE7>YD;G$&TI}{owL<#ADY)Gr zY1l*A2HYeU_X=jvYukEm*o9y#h7bdBgc!~~if9r0WHj_=LL<ZLIO5M2q~jA=Lpz}> z9y5{(dgHN%BWR1_(V~gvoOrb8E1{L~Xwk;k>Ugy1Q<q#k8o&L*N|fT!Bps~bB<zTj zTpy2z5X*gOG!d;HCbq`o3HN?G;_;$|+k=T{b+&us@x<)DKOV8+J?#ten9*Q&Fdi*P zQT5*4p;oAo?DtM9+(=yfuqCdTnLclYA88%<so={e(%2N{;HDc#zoY$05uN>st*1rb zgZk53<J-d7(C<o~AtLuCBO^UU?(+OaEwKk}gvDry;GfgZoO)sJuWSQ9x_GPGz>n&X zYl$DJ0{v1;Y@yunhugxBI>hzKGeq*E$;hOdh=vw_Yg_nHadx&fqaKy~-K{4ybZh)y zw44&T4e+09i7mV!@PFG9e^7iv?!VS@hERg~Z??q8Hi$l`_TNjG5v}R`PZAI%Z&Up* zlklTWVt@R&_>d@kr^r7h0Tbac3?TLAjQ*753C+D5zkEczFwy5+ekB1>yp{E@O+bzI zpZyyX5QT3t_?r_j#g_~I)>f#|t2cjVEA0B~A%Ax(+<I@{|3w0B^jWF@TmoYB(U$*W z0%AjR!+$jax9Rbae>efVsekUjn}FT;1l#{80lDES*8d^_x3Syjj~gHFx6yYzerEz= zW9!DBlz`mWpY*3EAUD3I^1Bj{n|mI9ZvuMs%d!5VB*gHI7ReC}U-0qIX+6)Dc02r) z2{Rks1^KHJaGPI2`?&=4rk4Xpbf%8!^m~+)zeMTuPaT)?ZyM)KsGYKH)~>7X`{Vb? z!$`|WTP3_dGt+~Pl}qCx627gK#rFmKPU)h5IayU#&P$U%Vlb#`|D4q9*;5pM59sbu zri@ekM*uycj7z0b<7#godFfSC9^3y_?Kj{3(fiinRV!1S3O-2H9y?<0EC2A(EczU? z&NV`q+%1Ki(YSWKKqA6_PO7J8lHxxAHV-J1!0>)RyD3AZ)-mmvXFl8Qyu$e0bnD_- zd#--!nMCat_C~eC;-~9+Z3pq~RIj@M-52Wh^Nl}!_}(u{-L*Z}l>D*FH=fV<ZCLOh zzdr801-}>hQIbp}aBI?N=1gd`1q`-OjeY{?u27>J|9Qc)gLkdYGY&ud$-9U5z47VM zB8P_cTF@8O2(Kq9QJqFXew6BTE1(~TI(_o#HPc`G<1ZK1{_@thrrmk#vR#bhrVWcH z{r$|(ZV)+EOSqUWnK^h2XjgJ&++|loOU_C4^-Wa#$)G-2nTREt1n7A1xyZ!V#7k}( zt&KFg?^QGH<moTVmMrX5FS+<Eb;+fdr<Y%RQM#*V*yzE(1w9Mr%<t&9DtInWUe~7= zS@qVz;*O3>3YJTRs92E5NaG8JXv&nGQVwh!N_>&AIDJw7%4PlOMcn{_N3Sc$11jQ- zp-Ud~<ZFkIKli}Dh-!w~RrFGBK_51RS?=PR2X=)|mgl5q&YY(BCqT^;lxa|SI-nE7 z6&!tb_dB!JZ|q@=t~>wVFWtWN&(am7t?>bud{ITMV%KqAk*%SwB6}{a_!TgzC~2@; z2dEmdyT34U)^%^b^f6;MwEXjtyXP+KjMWR47xf}KN3@y+;<Kn$GXZslY#ttY;);*I zDh)9<s~5fd!Tq~d&WL4$Z=Hy2>MBK;%>#>hl-XQB-66B%@4sT^8TXDn!<hAdJv#N< z%bzFTo`?i3nX$;X7V>p_l6^8KwRGup#a{vXE0pQ5-f}<}Qcm0%I$t~S=)cTcu}WkR z>@vDW5t=f#e2wy;ou_ML0<uDV-uPg%IpK+uUSs+cp6UJli`!=Oi|jbzzzHLoMD`gp zIS-W2qnexx=)0mOw+?4>@84YhK`YYC=|s|(fZ!#R^u>TK6G>lu=%w_VA5^Z1Azfcz zJWkbfj6s-7!c|xeva2bBD*#<BGWgT7|6Q{G?Cw)V29i~P(4w)p{WVb4sQpzyMri+A zzMA!S2PeLI2DAVEbC-<!bL|@q&KqIGgpX%rgS<@{tp((SjGiq1*B$@4`)9q3(HFZO z8vEtP*+)c;!T`-O1fq9ShUn@-hS&hg8)$~O0np9haR~xx5Y5~)ZlrVRtZ6$#X<Ubr z;D={b1_0m?(zvBXIwyb6n&~RO3Qyzr{4@!m9f+a2flHOLZMpawe0s?83Unr-8=B!} zPF2&ohaj89H5-{@B1snY5%Lvr-NlFaf&qDE>2`QoT~CvXoSg3I>3qd0f*<~ah%|kr zfd9}0LL$87(oTso2*gh#z|vny2R_US9eK;NNrG|lAe8(KPry<srS_*k+<f-Cmt}IH zQ9El}zfr#ErOWIkAt~||c4%59bxZnt-%lNL%oI%XA5|vc=VWa7N0ssZUgd8P`<2>% z&$wsYj_dw*Zz?spll;MdT$zNQ`Qw#+_*M9))YJXb!Uy<8sh2plvCQr3F1~t2FBgYc zKO)T}!sbCp^PtiNX&!_$KM$q3{kE<B-^$$dPh6UZlr{cC$`8jYwepfzUby>TpFFvd z>cZYYM@sb$P`!gvy#rM545=Qtf06yp;S(O=RJSSD_}df@RPS55?B#vm`~E|mDl^@J zzKH2=1KHcC>23qrABAL}zVM=T+g2aHmXjTW>BflZYJ0!de>*(xtA$NunY468?g80* zDA{{J_TG@}u}}Zst4DtD)DJk>ogllDkloX0^>MXtfB4FludBb?T;sw#)rh3jE1Fu* z8)YZIWAX2}T;b9%ZK)AALadF{h#Mi+O`%wf6BlcflJz$!!{ZhBj`(kUjRp7`%f>af zvUP`hRGgGbjjyq|RAX_Y#+I(et#W+r{-u}B_~g9jh3N_^`d<93JhSf7JS0XUadSx@ zspsdMetLB8klzMVvo~O)DE?#0eEggOe|=0jia>jhnjCDG#n>+W6BVwZj4cao2>#K~ zMj7(m5%L?P{C0ugF3N8g_yG#}J*13bLu~D=*ZNU{I3J{@OrZoGP<nAdI1MLXa#)x` z;FOOou3-8G{M-T(tbC^lR_#w6brhYtT{#^^|Cw~^c8~$QFPOShxdpB`hN<jC6R|A_ zOq@sw>`~6aY3O`PU=IiYemWrVxUv=I+71G2LAkl85PW^YJe)px9w}~xm08#uSZb<G zne9+c^mkBq-2qDhdNf#>oyua!N>+v)S7<^bXQ)(XXQ*fwl$#$aI+ehojdnunoyuvD zlbzw3Cht+Ypja?@k200O;pE3L`Efd#onB(rXbTXxgln_~YXmqXu}v99gt`v=*~aE} z3bQ4*6hG|DOVf`8TP^4dY&G4Z3U5|s`<s<{@Z!y|6`(zVt;S%hF={Keb2+={0<S{h zP3h#7^HA2UpoYuC{($!e3tWIY1!XY=XInp+QU#PMA*Bi^0S+m7pyW|XYc8~xy!~(f zvgnRqF+rQK{!C@EHW}kIZ5qZI+6;`dwb>ZwYI8C6XgwHD)lS8Dx^_CoGqf`>_G|qZ zmubr|UZ`D&ah0|T<CWT#7&T49Xlf?LHQE}Cj^<$WG!Ns5HiGdw?K+G%Xg6Toq;0}@ zn|2$<+qK&<-l^S*al5u1<9*tF7$4Lg#Q3oGFvh*wUW`v^Phs4z?Z@~l?N=CI&|biJ zKs$i(pmq@B>)PuW4{3)mzNNi|@g40QjPGmjWBgG25aXxXrx-uiKF9c#_7z54i)r{F z(2;<Sq)-Q-4hkI$=vWF(12m07{eb!@v>woU3he{5k3!D^dX_@Z1A3l92LK(Q&_O^4 zDfBv^*C})e&>;%F4d`tOy$9$$3Vi_R0}6ct=o1Qk2Iw;ieF^AG3e^DBC^UYYhCVpa z=$nAPNui?w9ZjJLfF@9AGN8#6ng(bZg=PSnL7~}zW>aV`pt%(40n|gF8at<Qf32Ty zQ|UBy`xCHDPEh)(+n=CJCvdo5XDF-u8Ol{~dv-A7WJp{iC%n|OX_Uw;MAunibe#nv zfI}iDfyhae$eH*2`pG+g^POQ;UABDrvK5zHv}}cX9^8NGKjJ+sX;3wMpmZG9fy$1I zsTyf9@l+~^p{lD=Q>RiXG-VME21}_b8ulIFM}r-l#lFkZeaEtJ91R;Z?2v{H8h}F@ zCD15Q8mw52iGUjr0XG1dWT_2^fPh0|Y*Ma8d2u}~$|?^oM)G+fnpAoCD^aCyMEJXr zhQAvT{s4vHZ<DeKyf%Xu>jE`J`%y&u(J<PNBH9BE1s#J5V>H^cVucGzQyR<t$Y@a` zM8)J8Z4DK3D{Q%yX0)vk6Hu7ZwjptEqlud}1URR9l%}rM)kO)-Lmr+N=HYp8HNc_J p^WkdqsjIPeS7=lu@h~}#!r4bdXCH-*fS(FHWK7u%jkk0v{|}Y{B<=tJ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h new file mode 100644 index 00000000..1c894c4a --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h @@ -0,0 +1,97 @@ +/*===---- inttypes.h - Standard header for integer printf macros ----------===*\ + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * +\*===----------------------------------------------------------------------===*/ + +#ifndef __CLANG_INTTYPES_H +// AIX system headers need inttypes.h to be re-enterable while _STD_TYPES_T +// is defined until an inclusion of it without _STD_TYPES_T occurs, in which +// case the header guard macro is defined. +#if !defined(_AIX) || !defined(_STD_TYPES_T) +#define __CLANG_INTTYPES_H +#endif + +#if defined(_MSC_VER) && _MSC_VER < 1800 +#error MSVC does not have inttypes.h prior to Visual Studio 2013 +#endif + +#include_next <inttypes.h> + +#if defined(_MSC_VER) && _MSC_VER < 1900 +/* MSVC headers define int32_t as int, but PRIx32 as "lx" instead of "x". + * This triggers format warnings, so fix it up here. */ +#undef PRId32 +#undef PRIdLEAST32 +#undef PRIdFAST32 +#undef PRIi32 +#undef PRIiLEAST32 +#undef PRIiFAST32 +#undef PRIo32 +#undef PRIoLEAST32 +#undef PRIoFAST32 +#undef PRIu32 +#undef PRIuLEAST32 +#undef PRIuFAST32 +#undef PRIx32 +#undef PRIxLEAST32 +#undef PRIxFAST32 +#undef PRIX32 +#undef PRIXLEAST32 +#undef PRIXFAST32 + +#undef SCNd32 +#undef SCNdLEAST32 +#undef SCNdFAST32 +#undef SCNi32 +#undef SCNiLEAST32 +#undef SCNiFAST32 +#undef SCNo32 +#undef SCNoLEAST32 +#undef SCNoFAST32 +#undef SCNu32 +#undef SCNuLEAST32 +#undef SCNuFAST32 +#undef SCNx32 +#undef SCNxLEAST32 +#undef SCNxFAST32 + +#define PRId32 "d" +#define PRIdLEAST32 "d" +#define PRIdFAST32 "d" +#define PRIi32 "i" +#define PRIiLEAST32 "i" +#define PRIiFAST32 "i" +#define PRIo32 "o" +#define PRIoLEAST32 "o" +#define PRIoFAST32 "o" +#define PRIu32 "u" +#define PRIuLEAST32 "u" +#define PRIuFAST32 "u" +#define PRIx32 "x" +#define PRIxLEAST32 "x" +#define PRIxFAST32 "x" +#define PRIX32 "X" +#define PRIXLEAST32 "X" +#define PRIXFAST32 "X" + +#define SCNd32 "d" +#define SCNdLEAST32 "d" +#define SCNdFAST32 "d" +#define SCNi32 "i" +#define SCNiLEAST32 "i" +#define SCNiFAST32 "i" +#define SCNo32 "o" +#define SCNoLEAST32 "o" +#define SCNoFAST32 "o" +#define SCNu32 "u" +#define SCNuLEAST32 "u" +#define SCNuFAST32 "u" +#define SCNx32 "x" +#define SCNxLEAST32 "x" +#define SCNxFAST32 "x" +#endif + +#endif /* __CLANG_INTTYPES_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..607ca0d26babc7a9bca74986f3d8150f8555f728 GIT binary patch literal 12230 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 N_g=8i#q%?u{y(K*=Pm#M literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h new file mode 100644 index 00000000..48dae0a8 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h @@ -0,0 +1,23 @@ +/*===------------- invpcidintrin.h - INVPCID intrinsic ---------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <invpcidintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __INVPCIDINTRIN_H +#define __INVPCIDINTRIN_H + +static __inline__ void + __attribute__((__always_inline__, __nodebug__, __target__("invpcid"))) +_invpcid(unsigned int __type, void *__descriptor) { + __builtin_ia32_invpcid(__type, __descriptor); +} + +#endif /* __INVPCIDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8e88b84aba57741733b81a951cc7654d4232e898 GIT binary patch literal 12460 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h new file mode 100644 index 00000000..1994ac42 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h @@ -0,0 +1,530 @@ +/*===----------------- keylockerintrin.h - KL Intrinsics -------------------=== + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <keylockerintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef _KEYLOCKERINTRIN_H +#define _KEYLOCKERINTRIN_H + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__KL__) + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("kl"),\ + __min_vector_width__(128))) + +/// Load internal wrapping key from __intkey, __enkey_lo and __enkey_hi. __ctl +/// will assigned to EAX, whch specifies the KeySource and whether backing up +/// the key is permitted. The 256-bit encryption key is loaded from the two +/// explicit operands (__enkey_lo and __enkey_hi). The 128-bit integrity key is +/// loaded from the implicit operand XMM0 which assigned by __intkey. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> LOADIWKEY </c> instructions. +/// +/// \code{.operation} +/// IF CPL > 0 // LOADKWKEY only allowed at ring 0 (supervisor mode) +/// GP (0) +/// FI +/// IF “LOADIWKEY exiting” VM execution control set +/// VMexit +/// FI +/// IF __ctl[4:1] > 1 // Reserved KeySource encoding used +/// GP (0) +/// FI +/// IF __ctl[31:5] != 0 // Reserved bit in __ctl is set +/// GP (0) +/// FI +/// IF __ctl[0] AND (CPUID.19H.ECX[0] == 0) // NoBackup is not supported on this part +/// GP (0) +/// FI +/// IF (__ctl[4:1] == 1) AND (CPUID.19H.ECX[1] == 0) // KeySource of 1 is not supported on this part +/// GP (0) +/// FI +/// IF (__ctl[4:1] == 0) // KeySource of 0. +/// IWKey.Encryption Key[127:0] := __enkey_hi[127:0]: +/// IWKey.Encryption Key[255:128] := __enkey_lo[127:0] +/// IWKey.IntegrityKey[127:0] := __intkey[127:0] +/// IWKey.NoBackup := __ctl[0] +/// IWKey.KeySource := __ctl[4:1] +/// ZF := 0 +/// ELSE // KeySource of 1. See RDSEED definition for details of randomness +/// IF HW_NRND_GEN.ready == 1 // Full-entropy random data from RDSEED was received +/// IWKey.Encryption Key[127:0] := __enkey_hi[127:0] XOR HW_NRND_GEN.data[127:0] +/// IWKey.Encryption Key[255:128] := __enkey_lo[127:0] XOR HW_NRND_GEN.data[255:128] +/// IWKey.Encryption Key[255:0] := __enkey_hi[127:0]:__enkey_lo[127:0] XOR HW_NRND_GEN.data[255:0] +/// IWKey.IntegrityKey[127:0] := __intkey[127:0] XOR HW_NRND_GEN.data[383:256] +/// IWKey.NoBackup := __ctl[0] +/// IWKey.KeySource := __ctl[4:1] +/// ZF := 0 +/// ELSE // Random data was not returned from RDSEED. IWKey was not loaded +/// ZF := 1 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS +_mm_loadiwkey (unsigned int __ctl, __m128i __intkey, + __m128i __enkey_lo, __m128i __enkey_hi) { + __builtin_ia32_loadiwkey (__intkey, __enkey_lo, __enkey_hi, __ctl); +} + +/// Wrap a 128-bit AES key from __key into a key handle and output in +/// ((__m128i*)__h) to ((__m128i*)__h) + 2 and a 32-bit value as return. +/// The explicit source operand __htype specifies handle restrictions. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> ENCODEKEY128 </c> instructions. +/// +/// \code{.operation} +/// InputKey[127:0] := __key[127:0] +/// KeyMetadata[2:0] := __htype[2:0] +/// KeyMetadata[23:3] := 0 // Reserved for future usage +/// KeyMetadata[27:24] := 0 // KeyType is AES-128 (value of 0) +/// KeyMetadata[127:28] := 0 // Reserved for future usage +/// Handle[383:0] := WrapKey128(InputKey[127:0], KeyMetadata[127:0], +/// IWKey.Integrity Key[127:0], IWKey.Encryption Key[255:0]) +/// dst[0] := IWKey.NoBackup +/// dst[4:1] := IWKey.KeySource[3:0] +/// dst[31:5] := 0 +/// MEM[__h+127:__h] := Handle[127:0] // AAD +/// MEM[__h+255:__h+128] := Handle[255:128] // Integrity Tag +/// MEM[__h+383:__h+256] := Handle[383:256] // CipherText +/// OF := 0 +/// SF := 0 +/// ZF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_mm_encodekey128_u32(unsigned int __htype, __m128i __key, void *__h) { + return __builtin_ia32_encodekey128_u32(__htype, (__v2di)__key, __h); +} + +/// Wrap a 256-bit AES key from __key_hi:__key_lo into a key handle, then +/// output handle in ((__m128i*)__h) to ((__m128i*)__h) + 3 and +/// a 32-bit value as return. +/// The explicit source operand __htype specifies handle restrictions. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> ENCODEKEY256 </c> instructions. +/// +/// \code{.operation} +/// InputKey[127:0] := __key_lo[127:0] +/// InputKey[255:128] := __key_hi[255:128] +/// KeyMetadata[2:0] := __htype[2:0] +/// KeyMetadata[23:3] := 0 // Reserved for future usage +/// KeyMetadata[27:24] := 1 // KeyType is AES-256 (value of 1) +/// KeyMetadata[127:28] := 0 // Reserved for future usage +/// Handle[511:0] := WrapKey256(InputKey[255:0], KeyMetadata[127:0], +/// IWKey.Integrity Key[127:0], IWKey.Encryption Key[255:0]) +/// dst[0] := IWKey.NoBackup +/// dst[4:1] := IWKey.KeySource[3:0] +/// dst[31:5] := 0 +/// MEM[__h+127:__h] := Handle[127:0] // AAD +/// MEM[__h+255:__h+128] := Handle[255:128] // Tag +/// MEM[__h+383:__h+256] := Handle[383:256] // CipherText[127:0] +/// MEM[__h+511:__h+384] := Handle[511:384] // CipherText[255:128] +/// OF := 0 +/// SF := 0 +/// ZF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_mm_encodekey256_u32(unsigned int __htype, __m128i __key_lo, __m128i __key_hi, + void *__h) { + return __builtin_ia32_encodekey256_u32(__htype, (__v2di)__key_lo, + (__v2di)__key_hi, __h); +} + +/// The AESENC128KL performs 10 rounds of AES to encrypt the __idata using +/// the 128-bit key in the handle from the __h. It stores the result in the +/// __odata. And return the affected ZF flag status. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> AESENC128KL </c> instructions. +/// +/// \code{.operation} +/// Handle[383:0] := MEM[__h+383:__h] // Load is not guaranteed to be atomic. +/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) || +/// (Handle[127:0] AND (CPL > 0)) || +/// Handle[383:256] || +/// HandleKeyType (Handle[383:0]) != HANDLE_KEY_TYPE_AES128 ) +/// IF (IllegalHandle) +/// ZF := 1 +/// ELSE +/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate384 (Handle[383:0], IWKey) +/// IF (Authentic == 0) +/// ZF := 1 +/// ELSE +/// MEM[__odata+127:__odata] := AES128Encrypt (__idata[127:0], UnwrappedKey) +/// ZF := 0 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_mm_aesenc128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) { + return __builtin_ia32_aesenc128kl_u8((__v2di *)__odata, (__v2di)__idata, __h); +} + +/// The AESENC256KL performs 14 rounds of AES to encrypt the __idata using +/// the 256-bit key in the handle from the __h. It stores the result in the +/// __odata. And return the affected ZF flag status. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> AESENC256KL </c> instructions. +/// +/// \code{.operation} +/// Handle[511:0] := MEM[__h+511:__h] // Load is not guaranteed to be atomic. +/// IllegalHandle := ( HandleReservedBitSet (Handle[511:0]) || +/// (Handle[127:0] AND (CPL > 0)) || +/// Handle[255:128] || +/// HandleKeyType (Handle[511:0]) != HANDLE_KEY_TYPE_AES256 ) +/// IF (IllegalHandle) +/// ZF := 1 +/// MEM[__odata+127:__odata] := 0 +/// ELSE +/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate512 (Handle[511:0], IWKey) +/// IF (Authentic == 0) +/// ZF := 1 +/// MEM[__odata+127:__odata] := 0 +/// ELSE +/// MEM[__odata+127:__odata] := AES256Encrypt (__idata[127:0], UnwrappedKey) +/// ZF := 0 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_mm_aesenc256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) { + return __builtin_ia32_aesenc256kl_u8((__v2di *)__odata, (__v2di)__idata, __h); +} + +/// The AESDEC128KL performs 10 rounds of AES to decrypt the __idata using +/// the 128-bit key in the handle from the __h. It stores the result in the +/// __odata. And return the affected ZF flag status. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> AESDEC128KL </c> instructions. +/// +/// \code{.operation} +/// Handle[383:0] := MEM[__h+383:__h] // Load is not guaranteed to be atomic. +/// IllegalHandle := (HandleReservedBitSet (Handle[383:0]) || +/// (Handle[127:0] AND (CPL > 0)) || +/// Handle[383:256] || +/// HandleKeyType (Handle[383:0]) != HANDLE_KEY_TYPE_AES128) +/// IF (IllegalHandle) +/// ZF := 1 +/// MEM[__odata+127:__odata] := 0 +/// ELSE +/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate384 (Handle[383:0], IWKey) +/// IF (Authentic == 0) +/// ZF := 1 +/// MEM[__odata+127:__odata] := 0 +/// ELSE +/// MEM[__odata+127:__odata] := AES128Decrypt (__idata[127:0], UnwrappedKey) +/// ZF := 0 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_mm_aesdec128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) { + return __builtin_ia32_aesdec128kl_u8((__v2di *)__odata, (__v2di)__idata, __h); +} + +/// The AESDEC256KL performs 10 rounds of AES to decrypt the __idata using +/// the 256-bit key in the handle from the __h. It stores the result in the +/// __odata. And return the affected ZF flag status. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> AESDEC256KL </c> instructions. +/// +/// \code{.operation} +/// Handle[511:0] := MEM[__h+511:__h] +/// IllegalHandle := (HandleReservedBitSet (Handle[511:0]) || +/// (Handle[127:0] AND (CPL > 0)) || +/// Handle[383:256] || +/// HandleKeyType (Handle[511:0]) != HANDLE_KEY_TYPE_AES256) +/// IF (IllegalHandle) +/// ZF := 1 +/// MEM[__odata+127:__odata] := 0 +/// ELSE +/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate512 (Handle[511:0], IWKey) +/// IF (Authentic == 0) +/// ZF := 1 +/// MEM[__odata+127:__odata] := 0 +/// ELSE +/// MEM[__odata+127:__odata] := AES256Decrypt (__idata[127:0], UnwrappedKey) +/// ZF := 0 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_mm_aesdec256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) { + return __builtin_ia32_aesdec256kl_u8((__v2di *)__odata, (__v2di)__idata, __h); +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ + || defined(__KL__) */ + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__WIDEKL__) + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("kl,widekl"),\ + __min_vector_width__(128))) + +/// Encrypt __idata[0] to __idata[7] using 128-bit AES key indicated by handle +/// at __h and store each resultant block back from __odata to __odata+7. And +/// return the affected ZF flag status. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> AESENCWIDE128KL </c> instructions. +/// +/// \code{.operation} +/// Handle := MEM[__h+383:__h] +/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) || +/// (Handle[127:0] AND (CPL > 0)) || +/// Handle[255:128] || +/// HandleKeyType (Handle[383:0]) != HANDLE_KEY_TYPE_AES128 ) +/// IF (IllegalHandle) +/// ZF := 1 +/// FOR i := 0 to 7 +/// __odata[i] := 0 +/// ENDFOR +/// ELSE +/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate384 (Handle[383:0], IWKey) +/// IF Authentic == 0 +/// ZF := 1 +/// FOR i := 0 to 7 +/// __odata[i] := 0 +/// ENDFOR +/// ELSE +/// FOR i := 0 to 7 +/// __odata[i] := AES128Encrypt (__idata[i], UnwrappedKey) +/// ENDFOR +/// ZF := 0 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_mm_aesencwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) { + return __builtin_ia32_aesencwide128kl_u8((__v2di *)__odata, + (const __v2di *)__idata, __h); +} + +/// Encrypt __idata[0] to __idata[7] using 256-bit AES key indicated by handle +/// at __h and store each resultant block back from __odata to __odata+7. And +/// return the affected ZF flag status. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> AESENCWIDE256KL </c> instructions. +/// +/// \code{.operation} +/// Handle[511:0] := MEM[__h+511:__h] +/// IllegalHandle := ( HandleReservedBitSet (Handle[511:0]) || +/// (Handle[127:0] AND (CPL > 0)) || +/// Handle[255:128] || +/// HandleKeyType (Handle[511:0]) != HANDLE_KEY_TYPE_AES512 ) +/// IF (IllegalHandle) +/// ZF := 1 +/// FOR i := 0 to 7 +/// __odata[i] := 0 +/// ENDFOR +/// ELSE +/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate512 (Handle[511:0], IWKey) +/// IF Authentic == 0 +/// ZF := 1 +/// FOR i := 0 to 7 +/// __odata[i] := 0 +/// ENDFOR +/// ELSE +/// FOR i := 0 to 7 +/// __odata[i] := AES256Encrypt (__idata[i], UnwrappedKey) +/// ENDFOR +/// ZF := 0 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_mm_aesencwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) { + return __builtin_ia32_aesencwide256kl_u8((__v2di *)__odata, + (const __v2di *)__idata, __h); +} + +/// Decrypt __idata[0] to __idata[7] using 128-bit AES key indicated by handle +/// at __h and store each resultant block back from __odata to __odata+7. And +/// return the affected ZF flag status. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> AESDECWIDE128KL </c> instructions. +/// +/// \code{.operation} +/// Handle[383:0] := MEM[__h+383:__h] +/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) || +/// (Handle[127:0] AND (CPL > 0)) || +/// Handle[255:128] || +/// HandleKeyType (Handle) != HANDLE_KEY_TYPE_AES128 ) +/// IF (IllegalHandle) +/// ZF := 1 +/// FOR i := 0 to 7 +/// __odata[i] := 0 +/// ENDFOR +/// ELSE +/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate384 (Handle[383:0], IWKey) +/// IF Authentic == 0 +/// ZF := 1 +/// FOR i := 0 to 7 +/// __odata[i] := 0 +/// ENDFOR +/// ELSE +/// FOR i := 0 to 7 +/// __odata[i] := AES128Decrypt (__idata[i], UnwrappedKey) +/// ENDFOR +/// ZF := 0 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_mm_aesdecwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) { + return __builtin_ia32_aesdecwide128kl_u8((__v2di *)__odata, + (const __v2di *)__idata, __h); +} + +/// Decrypt __idata[0] to __idata[7] using 256-bit AES key indicated by handle +/// at __h and store each resultant block back from __odata to __odata+7. And +/// return the affected ZF flag status. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> AESDECWIDE256KL </c> instructions. +/// +/// \code{.operation} +/// Handle[511:0] := MEM[__h+511:__h] +/// IllegalHandle = ( HandleReservedBitSet (Handle[511:0]) || +/// (Handle[127:0] AND (CPL > 0)) || +/// Handle[255:128] || +/// HandleKeyType (Handle) != HANDLE_KEY_TYPE_AES512 ) +/// If (IllegalHandle) +/// ZF := 1 +/// FOR i := 0 to 7 +/// __odata[i] := 0 +/// ENDFOR +/// ELSE +/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate512 (Handle[511:0], IWKey) +/// IF Authentic == 0 +/// ZF := 1 +/// FOR i := 0 to 7 +/// __odata[i] := 0 +/// ENDFOR +/// ELSE +/// FOR i := 0 to 7 +/// __odata[i] := AES256Decrypt (__idata[i], UnwrappedKey) +/// ENDFOR +/// ZF := 0 +/// FI +/// FI +/// dst := ZF +/// OF := 0 +/// SF := 0 +/// AF := 0 +/// PF := 0 +/// CF := 0 +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_mm_aesdecwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) { + return __builtin_ia32_aesdecwide256kl_u8((__v2di *)__odata, + (const __v2di *)__idata, __h); +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ + || defined(__WIDEKL__) */ + +#endif /* _KEYLOCKERINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..efca78bb2d7e230483d302702398befa1100750c GIT binary patch literal 29407 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h new file mode 100644 index 00000000..32cc901b --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h @@ -0,0 +1,123 @@ +/*===---- limits.h - Standard header for integer sizes --------------------===*\ + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * +\*===----------------------------------------------------------------------===*/ + +#ifndef __CLANG_LIMITS_H +#define __CLANG_LIMITS_H + +/* The system's limits.h may, in turn, try to #include_next GCC's limits.h. + Avert this #include_next madness. */ +#if defined __GNUC__ && !defined _GCC_LIMITS_H_ +#define _GCC_LIMITS_H_ +#endif + +/* System headers include a number of constants from POSIX in <limits.h>. + Include it if we're hosted. */ +#if __STDC_HOSTED__ && __has_include_next(<limits.h>) +#include_next <limits.h> +#endif + +/* Many system headers try to "help us out" by defining these. No really, we + know how big each datatype is. */ +#undef SCHAR_MIN +#undef SCHAR_MAX +#undef UCHAR_MAX +#undef SHRT_MIN +#undef SHRT_MAX +#undef USHRT_MAX +#undef INT_MIN +#undef INT_MAX +#undef UINT_MAX +#undef LONG_MIN +#undef LONG_MAX +#undef ULONG_MAX + +#undef CHAR_BIT +#undef CHAR_MIN +#undef CHAR_MAX + +/* C90/99 5.2.4.2.1 */ +#define SCHAR_MAX __SCHAR_MAX__ +#define SHRT_MAX __SHRT_MAX__ +#define INT_MAX __INT_MAX__ +#define LONG_MAX __LONG_MAX__ + +#define SCHAR_MIN (-__SCHAR_MAX__-1) +#define SHRT_MIN (-__SHRT_MAX__ -1) +#define INT_MIN (-__INT_MAX__ -1) +#define LONG_MIN (-__LONG_MAX__ -1L) + +#define UCHAR_MAX (__SCHAR_MAX__*2 +1) +#define USHRT_MAX (__SHRT_MAX__ *2 +1) +#define UINT_MAX (__INT_MAX__ *2U +1U) +#define ULONG_MAX (__LONG_MAX__ *2UL+1UL) + +#ifndef MB_LEN_MAX +#define MB_LEN_MAX 1 +#endif + +#define CHAR_BIT __CHAR_BIT__ + +/* C2x 5.2.4.2.1 */ +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +#define BOOL_WIDTH __BOOL_WIDTH__ +#define CHAR_WIDTH CHAR_BIT +#define SCHAR_WIDTH CHAR_BIT +#define UCHAR_WIDTH CHAR_BIT +#define USHRT_WIDTH __SHRT_WIDTH__ +#define SHRT_WIDTH __SHRT_WIDTH__ +#define UINT_WIDTH __INT_WIDTH__ +#define INT_WIDTH __INT_WIDTH__ +#define ULONG_WIDTH __LONG_WIDTH__ +#define LONG_WIDTH __LONG_WIDTH__ +#define ULLONG_WIDTH __LLONG_WIDTH__ +#define LLONG_WIDTH __LLONG_WIDTH__ + +#define BITINT_MAXWIDTH __BITINT_MAXWIDTH__ +#endif + +#ifdef __CHAR_UNSIGNED__ /* -funsigned-char */ +#define CHAR_MIN 0 +#define CHAR_MAX UCHAR_MAX +#else +#define CHAR_MIN SCHAR_MIN +#define CHAR_MAX __SCHAR_MAX__ +#endif + +/* C99 5.2.4.2.1: Added long long. + C++11 18.3.3.2: same contents as the Standard C Library header <limits.h>. + */ +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ + (defined(__cplusplus) && __cplusplus >= 201103L) + +#undef LLONG_MIN +#undef LLONG_MAX +#undef ULLONG_MAX + +#define LLONG_MAX __LONG_LONG_MAX__ +#define LLONG_MIN (-__LONG_LONG_MAX__-1LL) +#define ULLONG_MAX (__LONG_LONG_MAX__*2ULL+1ULL) +#endif + +/* LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX are a GNU extension. It's too bad + that we don't have something like #pragma poison that could be used to + deprecate a macro - the code should just use LLONG_MAX and friends. + */ +#if defined(__GNU_LIBRARY__) ? defined(__USE_GNU) : !defined(__STRICT_ANSI__) + +#undef LONG_LONG_MIN +#undef LONG_LONG_MAX +#undef ULONG_LONG_MAX + +#define LONG_LONG_MAX __LONG_LONG_MAX__ +#define LONG_LONG_MIN (-__LONG_LONG_MAX__-1LL) +#define ULONG_LONG_MAX (__LONG_LONG_MAX__*2ULL+1ULL) +#endif + +#endif /* __CLANG_LIMITS_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..888f046d8a2016295b59cd185f22d9c343dd10ef GIT binary patch literal 13774 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 F`ahA~fGhw2 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h new file mode 100644 index 00000000..f4ddce9d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h @@ -0,0 +1,104 @@ +/*===---- lzcntintrin.h - LZCNT intrinsics ---------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <lzcntintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __LZCNTINTRIN_H +#define __LZCNTINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("lzcnt"))) + +#ifndef _MSC_VER +/// Counts the number of leading zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c LZCNT instruction. +/// +/// \param __X +/// An unsigned 16-bit integer whose leading zeros are to be counted. +/// \returns An unsigned 16-bit integer containing the number of leading zero +/// bits in the operand. +#define __lzcnt16(X) __builtin_ia32_lzcnt_u16((unsigned short)(X)) +#endif // _MSC_VER + +/// Counts the number of leading zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c LZCNT instruction. +/// +/// \param __X +/// An unsigned 32-bit integer whose leading zeros are to be counted. +/// \returns An unsigned 32-bit integer containing the number of leading zero +/// bits in the operand. +/// \see _lzcnt_u32 +static __inline__ unsigned int __DEFAULT_FN_ATTRS +__lzcnt32(unsigned int __X) +{ + return __builtin_ia32_lzcnt_u32(__X); +} + +/// Counts the number of leading zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c LZCNT instruction. +/// +/// \param __X +/// An unsigned 32-bit integer whose leading zeros are to be counted. +/// \returns An unsigned 32-bit integer containing the number of leading zero +/// bits in the operand. +/// \see __lzcnt32 +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_lzcnt_u32(unsigned int __X) +{ + return __builtin_ia32_lzcnt_u32(__X); +} + +#ifdef __x86_64__ +#ifndef _MSC_VER +/// Counts the number of leading zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c LZCNT instruction. +/// +/// \param __X +/// An unsigned 64-bit integer whose leading zeros are to be counted. +/// \returns An unsigned 64-bit integer containing the number of leading zero +/// bits in the operand. +/// \see _lzcnt_u64 +#define __lzcnt64(X) __builtin_ia32_lzcnt_u64((unsigned long long)(X)) +#endif // _MSC_VER + +/// Counts the number of leading zero bits in the operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c LZCNT instruction. +/// +/// \param __X +/// An unsigned 64-bit integer whose leading zeros are to be counted. +/// \returns An unsigned 64-bit integer containing the number of leading zero +/// bits in the operand. +/// \see __lzcnt64 +static __inline__ unsigned long long __DEFAULT_FN_ATTRS +_lzcnt_u64(unsigned long long __X) +{ + return __builtin_ia32_lzcnt_u64(__X); +} +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif /* __LZCNTINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..17ded9d642e359983973b1a30fd1bb19c3637156 GIT binary patch literal 14123 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 L>%^M+sm1*-cqL9O literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h new file mode 100644 index 00000000..d32fe594 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h @@ -0,0 +1,67 @@ +/*===---- mm_malloc.h - Allocating and Freeing Aligned Memory Blocks -------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __MM_MALLOC_H +#define __MM_MALLOC_H + +#include <stdlib.h> + +#ifdef _WIN32 +#include <malloc.h> +#else +#ifndef __cplusplus +extern int posix_memalign(void **__memptr, size_t __alignment, size_t __size); +#else +// Some systems (e.g. those with GNU libc) declare posix_memalign with an +// exception specifier. Via an "egregious workaround" in +// Sema::CheckEquivalentExceptionSpec, Clang accepts the following as a valid +// redeclaration of glibc's declaration. +extern "C" int posix_memalign(void **__memptr, size_t __alignment, size_t __size); +#endif +#endif + +#if !(defined(_WIN32) && defined(_mm_malloc)) +static __inline__ void *__attribute__((__always_inline__, __nodebug__, + __malloc__, __alloc_size__(1), + __alloc_align__(2))) +_mm_malloc(size_t __size, size_t __align) { + if (__align == 1) { + return malloc(__size); + } + + if (!(__align & (__align - 1)) && __align < sizeof(void *)) + __align = sizeof(void *); + + void *__mallocedMemory; +#if defined(__MINGW32__) + __mallocedMemory = __mingw_aligned_malloc(__size, __align); +#elif defined(_WIN32) + __mallocedMemory = _aligned_malloc(__size, __align); +#else + if (posix_memalign(&__mallocedMemory, __align, __size)) + return 0; +#endif + + return __mallocedMemory; +} + +static __inline__ void __attribute__((__always_inline__, __nodebug__)) +_mm_free(void *__p) +{ +#if defined(__MINGW32__) + __mingw_aligned_free(__p); +#elif defined(_WIN32) + _aligned_free(__p); +#else + free(__p); +#endif +} +#endif + +#endif /* __MM_MALLOC_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b786550b4b82cd682ab1c5a8dea21627b732cfc2 GIT binary patch literal 13353 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h new file mode 100644 index 00000000..03bac921 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h @@ -0,0 +1,1562 @@ +/*===---- mmintrin.h - MMX intrinsics --------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __MMINTRIN_H +#define __MMINTRIN_H + +#if !defined(__i386__) && !defined(__x86_64__) +#error "This header is only meant to be used on x86 and x64 architecture" +#endif + +typedef long long __m64 __attribute__((__vector_size__(8), __aligned__(8))); + +typedef long long __v1di __attribute__((__vector_size__(8))); +typedef int __v2si __attribute__((__vector_size__(8))); +typedef short __v4hi __attribute__((__vector_size__(8))); +typedef char __v8qi __attribute__((__vector_size__(8))); + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("mmx"), __min_vector_width__(64))) + +/// Clears the MMX state by setting the state of the x87 stack registers +/// to empty. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> EMMS </c> instruction. +/// +static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("mmx"))) +_mm_empty(void) +{ + __builtin_ia32_emms(); +} + +/// Constructs a 64-bit integer vector, setting the lower 32 bits to the +/// value of the 32-bit integer parameter and setting the upper 32 bits to 0. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVD </c> instruction. +/// +/// \param __i +/// A 32-bit integer value. +/// \returns A 64-bit integer vector. The lower 32 bits contain the value of the +/// parameter. The upper 32 bits are set to 0. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_cvtsi32_si64(int __i) +{ + return (__m64)__builtin_ia32_vec_init_v2si(__i, 0); +} + +/// Returns the lower 32 bits of a 64-bit integer vector as a 32-bit +/// signed integer. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVD </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector. +/// \returns A 32-bit signed integer value containing the lower 32 bits of the +/// parameter. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_cvtsi64_si32(__m64 __m) +{ + return __builtin_ia32_vec_ext_v2si((__v2si)__m, 0); +} + +/// Casts a 64-bit signed integer value into a 64-bit integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVQ </c> instruction. +/// +/// \param __i +/// A 64-bit signed integer. +/// \returns A 64-bit integer vector containing the same bitwise pattern as the +/// parameter. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_cvtsi64_m64(long long __i) +{ + return (__m64)__i; +} + +/// Casts a 64-bit integer vector into a 64-bit signed integer value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVQ </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector. +/// \returns A 64-bit signed integer containing the same bitwise pattern as the +/// parameter. +static __inline__ long long __DEFAULT_FN_ATTRS +_mm_cvtm64_si64(__m64 __m) +{ + return (long long)__m; +} + +/// Converts 16-bit signed integers from both 64-bit integer vector +/// parameters of [4 x i16] into 8-bit signed integer values, and constructs +/// a 64-bit integer vector of [8 x i8] as the result. Positive values +/// greater than 0x7F are saturated to 0x7F. Negative values less than 0x80 +/// are saturated to 0x80. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PACKSSWB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. Each 16-bit element is treated as a +/// 16-bit signed integer and is converted to an 8-bit signed integer with +/// saturation. Positive values greater than 0x7F are saturated to 0x7F. +/// Negative values less than 0x80 are saturated to 0x80. The converted +/// [4 x i8] values are written to the lower 32 bits of the result. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. Each 16-bit element is treated as a +/// 16-bit signed integer and is converted to an 8-bit signed integer with +/// saturation. Positive values greater than 0x7F are saturated to 0x7F. +/// Negative values less than 0x80 are saturated to 0x80. The converted +/// [4 x i8] values are written to the upper 32 bits of the result. +/// \returns A 64-bit integer vector of [8 x i8] containing the converted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_packs_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2); +} + +/// Converts 32-bit signed integers from both 64-bit integer vector +/// parameters of [2 x i32] into 16-bit signed integer values, and constructs +/// a 64-bit integer vector of [4 x i16] as the result. Positive values +/// greater than 0x7FFF are saturated to 0x7FFF. Negative values less than +/// 0x8000 are saturated to 0x8000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PACKSSDW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [2 x i32]. Each 32-bit element is treated as a +/// 32-bit signed integer and is converted to a 16-bit signed integer with +/// saturation. Positive values greater than 0x7FFF are saturated to 0x7FFF. +/// Negative values less than 0x8000 are saturated to 0x8000. The converted +/// [2 x i16] values are written to the lower 32 bits of the result. +/// \param __m2 +/// A 64-bit integer vector of [2 x i32]. Each 32-bit element is treated as a +/// 32-bit signed integer and is converted to a 16-bit signed integer with +/// saturation. Positive values greater than 0x7FFF are saturated to 0x7FFF. +/// Negative values less than 0x8000 are saturated to 0x8000. The converted +/// [2 x i16] values are written to the upper 32 bits of the result. +/// \returns A 64-bit integer vector of [4 x i16] containing the converted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_packs_pi32(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2); +} + +/// Converts 16-bit signed integers from both 64-bit integer vector +/// parameters of [4 x i16] into 8-bit unsigned integer values, and +/// constructs a 64-bit integer vector of [8 x i8] as the result. Values +/// greater than 0xFF are saturated to 0xFF. Values less than 0 are saturated +/// to 0. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PACKUSWB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. Each 16-bit element is treated as a +/// 16-bit signed integer and is converted to an 8-bit unsigned integer with +/// saturation. Values greater than 0xFF are saturated to 0xFF. Values less +/// than 0 are saturated to 0. The converted [4 x i8] values are written to +/// the lower 32 bits of the result. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. Each 16-bit element is treated as a +/// 16-bit signed integer and is converted to an 8-bit unsigned integer with +/// saturation. Values greater than 0xFF are saturated to 0xFF. Values less +/// than 0 are saturated to 0. The converted [4 x i8] values are written to +/// the upper 32 bits of the result. +/// \returns A 64-bit integer vector of [8 x i8] containing the converted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_packs_pu16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2); +} + +/// Unpacks the upper 32 bits from two 64-bit integer vectors of [8 x i8] +/// and interleaves them into a 64-bit integer vector of [8 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PUNPCKHBW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8]. \n +/// Bits [39:32] are written to bits [7:0] of the result. \n +/// Bits [47:40] are written to bits [23:16] of the result. \n +/// Bits [55:48] are written to bits [39:32] of the result. \n +/// Bits [63:56] are written to bits [55:48] of the result. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8]. +/// Bits [39:32] are written to bits [15:8] of the result. \n +/// Bits [47:40] are written to bits [31:24] of the result. \n +/// Bits [55:48] are written to bits [47:40] of the result. \n +/// Bits [63:56] are written to bits [63:56] of the result. +/// \returns A 64-bit integer vector of [8 x i8] containing the interleaved +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_unpackhi_pi8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2); +} + +/// Unpacks the upper 32 bits from two 64-bit integer vectors of +/// [4 x i16] and interleaves them into a 64-bit integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PUNPCKHWD </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// Bits [47:32] are written to bits [15:0] of the result. \n +/// Bits [63:48] are written to bits [47:32] of the result. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// Bits [47:32] are written to bits [31:16] of the result. \n +/// Bits [63:48] are written to bits [63:48] of the result. +/// \returns A 64-bit integer vector of [4 x i16] containing the interleaved +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_unpackhi_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2); +} + +/// Unpacks the upper 32 bits from two 64-bit integer vectors of +/// [2 x i32] and interleaves them into a 64-bit integer vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PUNPCKHDQ </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [2 x i32]. The upper 32 bits are written to +/// the lower 32 bits of the result. +/// \param __m2 +/// A 64-bit integer vector of [2 x i32]. The upper 32 bits are written to +/// the upper 32 bits of the result. +/// \returns A 64-bit integer vector of [2 x i32] containing the interleaved +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_unpackhi_pi32(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2); +} + +/// Unpacks the lower 32 bits from two 64-bit integer vectors of [8 x i8] +/// and interleaves them into a 64-bit integer vector of [8 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PUNPCKLBW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8]. +/// Bits [7:0] are written to bits [7:0] of the result. \n +/// Bits [15:8] are written to bits [23:16] of the result. \n +/// Bits [23:16] are written to bits [39:32] of the result. \n +/// Bits [31:24] are written to bits [55:48] of the result. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8]. +/// Bits [7:0] are written to bits [15:8] of the result. \n +/// Bits [15:8] are written to bits [31:24] of the result. \n +/// Bits [23:16] are written to bits [47:40] of the result. \n +/// Bits [31:24] are written to bits [63:56] of the result. +/// \returns A 64-bit integer vector of [8 x i8] containing the interleaved +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_unpacklo_pi8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_punpcklbw((__v8qi)__m1, (__v8qi)__m2); +} + +/// Unpacks the lower 32 bits from two 64-bit integer vectors of +/// [4 x i16] and interleaves them into a 64-bit integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PUNPCKLWD </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// Bits [15:0] are written to bits [15:0] of the result. \n +/// Bits [31:16] are written to bits [47:32] of the result. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// Bits [15:0] are written to bits [31:16] of the result. \n +/// Bits [31:16] are written to bits [63:48] of the result. +/// \returns A 64-bit integer vector of [4 x i16] containing the interleaved +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_unpacklo_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_punpcklwd((__v4hi)__m1, (__v4hi)__m2); +} + +/// Unpacks the lower 32 bits from two 64-bit integer vectors of +/// [2 x i32] and interleaves them into a 64-bit integer vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PUNPCKLDQ </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [2 x i32]. The lower 32 bits are written to +/// the lower 32 bits of the result. +/// \param __m2 +/// A 64-bit integer vector of [2 x i32]. The lower 32 bits are written to +/// the upper 32 bits of the result. +/// \returns A 64-bit integer vector of [2 x i32] containing the interleaved +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_unpacklo_pi32(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_punpckldq((__v2si)__m1, (__v2si)__m2); +} + +/// Adds each 8-bit integer element of the first 64-bit integer vector +/// of [8 x i8] to the corresponding 8-bit integer element of the second +/// 64-bit integer vector of [8 x i8]. The lower 8 bits of the results are +/// packed into a 64-bit integer vector of [8 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PADDB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8]. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8]. +/// \returns A 64-bit integer vector of [8 x i8] containing the sums of both +/// parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_add_pi8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_paddb((__v8qi)__m1, (__v8qi)__m2); +} + +/// Adds each 16-bit integer element of the first 64-bit integer vector +/// of [4 x i16] to the corresponding 16-bit integer element of the second +/// 64-bit integer vector of [4 x i16]. The lower 16 bits of the results are +/// packed into a 64-bit integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PADDW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// \returns A 64-bit integer vector of [4 x i16] containing the sums of both +/// parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_add_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_paddw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Adds each 32-bit integer element of the first 64-bit integer vector +/// of [2 x i32] to the corresponding 32-bit integer element of the second +/// 64-bit integer vector of [2 x i32]. The lower 32 bits of the results are +/// packed into a 64-bit integer vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PADDD </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [2 x i32]. +/// \param __m2 +/// A 64-bit integer vector of [2 x i32]. +/// \returns A 64-bit integer vector of [2 x i32] containing the sums of both +/// parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_add_pi32(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_paddd((__v2si)__m1, (__v2si)__m2); +} + +/// Adds each 8-bit signed integer element of the first 64-bit integer +/// vector of [8 x i8] to the corresponding 8-bit signed integer element of +/// the second 64-bit integer vector of [8 x i8]. Positive sums greater than +/// 0x7F are saturated to 0x7F. Negative sums less than 0x80 are saturated to +/// 0x80. The results are packed into a 64-bit integer vector of [8 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PADDSB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8]. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8]. +/// \returns A 64-bit integer vector of [8 x i8] containing the saturated sums +/// of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_adds_pi8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_paddsb((__v8qi)__m1, (__v8qi)__m2); +} + +/// Adds each 16-bit signed integer element of the first 64-bit integer +/// vector of [4 x i16] to the corresponding 16-bit signed integer element of +/// the second 64-bit integer vector of [4 x i16]. Positive sums greater than +/// 0x7FFF are saturated to 0x7FFF. Negative sums less than 0x8000 are +/// saturated to 0x8000. The results are packed into a 64-bit integer vector +/// of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PADDSW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// \returns A 64-bit integer vector of [4 x i16] containing the saturated sums +/// of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_adds_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_paddsw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Adds each 8-bit unsigned integer element of the first 64-bit integer +/// vector of [8 x i8] to the corresponding 8-bit unsigned integer element of +/// the second 64-bit integer vector of [8 x i8]. Sums greater than 0xFF are +/// saturated to 0xFF. The results are packed into a 64-bit integer vector of +/// [8 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PADDUSB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8]. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8]. +/// \returns A 64-bit integer vector of [8 x i8] containing the saturated +/// unsigned sums of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_adds_pu8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_paddusb((__v8qi)__m1, (__v8qi)__m2); +} + +/// Adds each 16-bit unsigned integer element of the first 64-bit integer +/// vector of [4 x i16] to the corresponding 16-bit unsigned integer element +/// of the second 64-bit integer vector of [4 x i16]. Sums greater than +/// 0xFFFF are saturated to 0xFFFF. The results are packed into a 64-bit +/// integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PADDUSW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// \returns A 64-bit integer vector of [4 x i16] containing the saturated +/// unsigned sums of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_adds_pu16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_paddusw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Subtracts each 8-bit integer element of the second 64-bit integer +/// vector of [8 x i8] from the corresponding 8-bit integer element of the +/// first 64-bit integer vector of [8 x i8]. The lower 8 bits of the results +/// are packed into a 64-bit integer vector of [8 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSUBB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8] containing the minuends. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8] containing the subtrahends. +/// \returns A 64-bit integer vector of [8 x i8] containing the differences of +/// both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_sub_pi8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_psubb((__v8qi)__m1, (__v8qi)__m2); +} + +/// Subtracts each 16-bit integer element of the second 64-bit integer +/// vector of [4 x i16] from the corresponding 16-bit integer element of the +/// first 64-bit integer vector of [4 x i16]. The lower 16 bits of the +/// results are packed into a 64-bit integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSUBW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16] containing the minuends. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16] containing the subtrahends. +/// \returns A 64-bit integer vector of [4 x i16] containing the differences of +/// both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_sub_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_psubw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Subtracts each 32-bit integer element of the second 64-bit integer +/// vector of [2 x i32] from the corresponding 32-bit integer element of the +/// first 64-bit integer vector of [2 x i32]. The lower 32 bits of the +/// results are packed into a 64-bit integer vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSUBD </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [2 x i32] containing the minuends. +/// \param __m2 +/// A 64-bit integer vector of [2 x i32] containing the subtrahends. +/// \returns A 64-bit integer vector of [2 x i32] containing the differences of +/// both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_sub_pi32(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_psubd((__v2si)__m1, (__v2si)__m2); +} + +/// Subtracts each 8-bit signed integer element of the second 64-bit +/// integer vector of [8 x i8] from the corresponding 8-bit signed integer +/// element of the first 64-bit integer vector of [8 x i8]. Positive results +/// greater than 0x7F are saturated to 0x7F. Negative results less than 0x80 +/// are saturated to 0x80. The results are packed into a 64-bit integer +/// vector of [8 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSUBSB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8] containing the minuends. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8] containing the subtrahends. +/// \returns A 64-bit integer vector of [8 x i8] containing the saturated +/// differences of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_subs_pi8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_psubsb((__v8qi)__m1, (__v8qi)__m2); +} + +/// Subtracts each 16-bit signed integer element of the second 64-bit +/// integer vector of [4 x i16] from the corresponding 16-bit signed integer +/// element of the first 64-bit integer vector of [4 x i16]. Positive results +/// greater than 0x7FFF are saturated to 0x7FFF. Negative results less than +/// 0x8000 are saturated to 0x8000. The results are packed into a 64-bit +/// integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSUBSW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16] containing the minuends. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16] containing the subtrahends. +/// \returns A 64-bit integer vector of [4 x i16] containing the saturated +/// differences of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_subs_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_psubsw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Subtracts each 8-bit unsigned integer element of the second 64-bit +/// integer vector of [8 x i8] from the corresponding 8-bit unsigned integer +/// element of the first 64-bit integer vector of [8 x i8]. +/// +/// If an element of the first vector is less than the corresponding element +/// of the second vector, the result is saturated to 0. The results are +/// packed into a 64-bit integer vector of [8 x i8]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSUBUSB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8] containing the minuends. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8] containing the subtrahends. +/// \returns A 64-bit integer vector of [8 x i8] containing the saturated +/// differences of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_subs_pu8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_psubusb((__v8qi)__m1, (__v8qi)__m2); +} + +/// Subtracts each 16-bit unsigned integer element of the second 64-bit +/// integer vector of [4 x i16] from the corresponding 16-bit unsigned +/// integer element of the first 64-bit integer vector of [4 x i16]. +/// +/// If an element of the first vector is less than the corresponding element +/// of the second vector, the result is saturated to 0. The results are +/// packed into a 64-bit integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSUBUSW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16] containing the minuends. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16] containing the subtrahends. +/// \returns A 64-bit integer vector of [4 x i16] containing the saturated +/// differences of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_subs_pu16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_psubusw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Multiplies each 16-bit signed integer element of the first 64-bit +/// integer vector of [4 x i16] by the corresponding 16-bit signed integer +/// element of the second 64-bit integer vector of [4 x i16] and get four +/// 32-bit products. Adds adjacent pairs of products to get two 32-bit sums. +/// The lower 32 bits of these two sums are packed into a 64-bit integer +/// vector of [2 x i32]. +/// +/// For example, bits [15:0] of both parameters are multiplied, bits [31:16] +/// of both parameters are multiplied, and the sum of both results is written +/// to bits [31:0] of the result. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMADDWD </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// \returns A 64-bit integer vector of [2 x i32] containing the sums of +/// products of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_madd_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pmaddwd((__v4hi)__m1, (__v4hi)__m2); +} + +/// Multiplies each 16-bit signed integer element of the first 64-bit +/// integer vector of [4 x i16] by the corresponding 16-bit signed integer +/// element of the second 64-bit integer vector of [4 x i16]. Packs the upper +/// 16 bits of the 32-bit products into a 64-bit integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMULHW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// \returns A 64-bit integer vector of [4 x i16] containing the upper 16 bits +/// of the products of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_mulhi_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pmulhw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Multiplies each 16-bit signed integer element of the first 64-bit +/// integer vector of [4 x i16] by the corresponding 16-bit signed integer +/// element of the second 64-bit integer vector of [4 x i16]. Packs the lower +/// 16 bits of the 32-bit products into a 64-bit integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMULLW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// \returns A 64-bit integer vector of [4 x i16] containing the lower 16 bits +/// of the products of both parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_mullo_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pmullw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Left-shifts each 16-bit signed integer element of the first +/// parameter, which is a 64-bit integer vector of [4 x i16], by the number +/// of bits specified by the second parameter, which is a 64-bit integer. The +/// lower 16 bits of the results are packed into a 64-bit integer vector of +/// [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSLLW </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [4 x i16]. +/// \param __count +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \returns A 64-bit integer vector of [4 x i16] containing the left-shifted +/// values. If \a __count is greater or equal to 16, the result is set to all +/// 0. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_sll_pi16(__m64 __m, __m64 __count) +{ + return (__m64)__builtin_ia32_psllw((__v4hi)__m, __count); +} + +/// Left-shifts each 16-bit signed integer element of a 64-bit integer +/// vector of [4 x i16] by the number of bits specified by a 32-bit integer. +/// The lower 16 bits of the results are packed into a 64-bit integer vector +/// of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSLLW </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [4 x i16]. +/// \param __count +/// A 32-bit integer value. +/// \returns A 64-bit integer vector of [4 x i16] containing the left-shifted +/// values. If \a __count is greater or equal to 16, the result is set to all +/// 0. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_slli_pi16(__m64 __m, int __count) +{ + return (__m64)__builtin_ia32_psllwi((__v4hi)__m, __count); +} + +/// Left-shifts each 32-bit signed integer element of the first +/// parameter, which is a 64-bit integer vector of [2 x i32], by the number +/// of bits specified by the second parameter, which is a 64-bit integer. The +/// lower 32 bits of the results are packed into a 64-bit integer vector of +/// [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSLLD </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [2 x i32]. +/// \param __count +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \returns A 64-bit integer vector of [2 x i32] containing the left-shifted +/// values. If \a __count is greater or equal to 32, the result is set to all +/// 0. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_sll_pi32(__m64 __m, __m64 __count) +{ + return (__m64)__builtin_ia32_pslld((__v2si)__m, __count); +} + +/// Left-shifts each 32-bit signed integer element of a 64-bit integer +/// vector of [2 x i32] by the number of bits specified by a 32-bit integer. +/// The lower 32 bits of the results are packed into a 64-bit integer vector +/// of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSLLD </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [2 x i32]. +/// \param __count +/// A 32-bit integer value. +/// \returns A 64-bit integer vector of [2 x i32] containing the left-shifted +/// values. If \a __count is greater or equal to 32, the result is set to all +/// 0. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_slli_pi32(__m64 __m, int __count) +{ + return (__m64)__builtin_ia32_pslldi((__v2si)__m, __count); +} + +/// Left-shifts the first 64-bit integer parameter by the number of bits +/// specified by the second 64-bit integer parameter. The lower 64 bits of +/// result are returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSLLQ </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \param __count +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \returns A 64-bit integer vector containing the left-shifted value. If +/// \a __count is greater or equal to 64, the result is set to 0. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_sll_si64(__m64 __m, __m64 __count) +{ + return (__m64)__builtin_ia32_psllq((__v1di)__m, __count); +} + +/// Left-shifts the first parameter, which is a 64-bit integer, by the +/// number of bits specified by the second parameter, which is a 32-bit +/// integer. The lower 64 bits of result are returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSLLQ </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \param __count +/// A 32-bit integer value. +/// \returns A 64-bit integer vector containing the left-shifted value. If +/// \a __count is greater or equal to 64, the result is set to 0. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_slli_si64(__m64 __m, int __count) +{ + return (__m64)__builtin_ia32_psllqi((__v1di)__m, __count); +} + +/// Right-shifts each 16-bit integer element of the first parameter, +/// which is a 64-bit integer vector of [4 x i16], by the number of bits +/// specified by the second parameter, which is a 64-bit integer. +/// +/// High-order bits are filled with the sign bit of the initial value of each +/// 16-bit element. The 16-bit results are packed into a 64-bit integer +/// vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRAW </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [4 x i16]. +/// \param __count +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \returns A 64-bit integer vector of [4 x i16] containing the right-shifted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_sra_pi16(__m64 __m, __m64 __count) +{ + return (__m64)__builtin_ia32_psraw((__v4hi)__m, __count); +} + +/// Right-shifts each 16-bit integer element of a 64-bit integer vector +/// of [4 x i16] by the number of bits specified by a 32-bit integer. +/// +/// High-order bits are filled with the sign bit of the initial value of each +/// 16-bit element. The 16-bit results are packed into a 64-bit integer +/// vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRAW </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [4 x i16]. +/// \param __count +/// A 32-bit integer value. +/// \returns A 64-bit integer vector of [4 x i16] containing the right-shifted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_srai_pi16(__m64 __m, int __count) +{ + return (__m64)__builtin_ia32_psrawi((__v4hi)__m, __count); +} + +/// Right-shifts each 32-bit integer element of the first parameter, +/// which is a 64-bit integer vector of [2 x i32], by the number of bits +/// specified by the second parameter, which is a 64-bit integer. +/// +/// High-order bits are filled with the sign bit of the initial value of each +/// 32-bit element. The 32-bit results are packed into a 64-bit integer +/// vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRAD </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [2 x i32]. +/// \param __count +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \returns A 64-bit integer vector of [2 x i32] containing the right-shifted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_sra_pi32(__m64 __m, __m64 __count) +{ + return (__m64)__builtin_ia32_psrad((__v2si)__m, __count); +} + +/// Right-shifts each 32-bit integer element of a 64-bit integer vector +/// of [2 x i32] by the number of bits specified by a 32-bit integer. +/// +/// High-order bits are filled with the sign bit of the initial value of each +/// 32-bit element. The 32-bit results are packed into a 64-bit integer +/// vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRAD </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [2 x i32]. +/// \param __count +/// A 32-bit integer value. +/// \returns A 64-bit integer vector of [2 x i32] containing the right-shifted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_srai_pi32(__m64 __m, int __count) +{ + return (__m64)__builtin_ia32_psradi((__v2si)__m, __count); +} + +/// Right-shifts each 16-bit integer element of the first parameter, +/// which is a 64-bit integer vector of [4 x i16], by the number of bits +/// specified by the second parameter, which is a 64-bit integer. +/// +/// High-order bits are cleared. The 16-bit results are packed into a 64-bit +/// integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRLW </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [4 x i16]. +/// \param __count +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \returns A 64-bit integer vector of [4 x i16] containing the right-shifted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_srl_pi16(__m64 __m, __m64 __count) +{ + return (__m64)__builtin_ia32_psrlw((__v4hi)__m, __count); +} + +/// Right-shifts each 16-bit integer element of a 64-bit integer vector +/// of [4 x i16] by the number of bits specified by a 32-bit integer. +/// +/// High-order bits are cleared. The 16-bit results are packed into a 64-bit +/// integer vector of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRLW </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [4 x i16]. +/// \param __count +/// A 32-bit integer value. +/// \returns A 64-bit integer vector of [4 x i16] containing the right-shifted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_srli_pi16(__m64 __m, int __count) +{ + return (__m64)__builtin_ia32_psrlwi((__v4hi)__m, __count); +} + +/// Right-shifts each 32-bit integer element of the first parameter, +/// which is a 64-bit integer vector of [2 x i32], by the number of bits +/// specified by the second parameter, which is a 64-bit integer. +/// +/// High-order bits are cleared. The 32-bit results are packed into a 64-bit +/// integer vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRLD </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [2 x i32]. +/// \param __count +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \returns A 64-bit integer vector of [2 x i32] containing the right-shifted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_srl_pi32(__m64 __m, __m64 __count) +{ + return (__m64)__builtin_ia32_psrld((__v2si)__m, __count); +} + +/// Right-shifts each 32-bit integer element of a 64-bit integer vector +/// of [2 x i32] by the number of bits specified by a 32-bit integer. +/// +/// High-order bits are cleared. The 32-bit results are packed into a 64-bit +/// integer vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRLD </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector of [2 x i32]. +/// \param __count +/// A 32-bit integer value. +/// \returns A 64-bit integer vector of [2 x i32] containing the right-shifted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_srli_pi32(__m64 __m, int __count) +{ + return (__m64)__builtin_ia32_psrldi((__v2si)__m, __count); +} + +/// Right-shifts the first 64-bit integer parameter by the number of bits +/// specified by the second 64-bit integer parameter. +/// +/// High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRLQ </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \param __count +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \returns A 64-bit integer vector containing the right-shifted value. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_srl_si64(__m64 __m, __m64 __count) +{ + return (__m64)__builtin_ia32_psrlq((__v1di)__m, __count); +} + +/// Right-shifts the first parameter, which is a 64-bit integer, by the +/// number of bits specified by the second parameter, which is a 32-bit +/// integer. +/// +/// High-order bits are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSRLQ </c> instruction. +/// +/// \param __m +/// A 64-bit integer vector interpreted as a single 64-bit integer. +/// \param __count +/// A 32-bit integer value. +/// \returns A 64-bit integer vector containing the right-shifted value. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_srli_si64(__m64 __m, int __count) +{ + return (__m64)__builtin_ia32_psrlqi((__v1di)__m, __count); +} + +/// Performs a bitwise AND of two 64-bit integer vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PAND </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector. +/// \param __m2 +/// A 64-bit integer vector. +/// \returns A 64-bit integer vector containing the bitwise AND of both +/// parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_and_si64(__m64 __m1, __m64 __m2) +{ + return __builtin_ia32_pand((__v1di)__m1, (__v1di)__m2); +} + +/// Performs a bitwise NOT of the first 64-bit integer vector, and then +/// performs a bitwise AND of the intermediate result and the second 64-bit +/// integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PANDN </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector. The one's complement of this parameter is used +/// in the bitwise AND. +/// \param __m2 +/// A 64-bit integer vector. +/// \returns A 64-bit integer vector containing the bitwise AND of the second +/// parameter and the one's complement of the first parameter. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_andnot_si64(__m64 __m1, __m64 __m2) +{ + return __builtin_ia32_pandn((__v1di)__m1, (__v1di)__m2); +} + +/// Performs a bitwise OR of two 64-bit integer vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> POR </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector. +/// \param __m2 +/// A 64-bit integer vector. +/// \returns A 64-bit integer vector containing the bitwise OR of both +/// parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_or_si64(__m64 __m1, __m64 __m2) +{ + return __builtin_ia32_por((__v1di)__m1, (__v1di)__m2); +} + +/// Performs a bitwise exclusive OR of two 64-bit integer vectors. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PXOR </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector. +/// \param __m2 +/// A 64-bit integer vector. +/// \returns A 64-bit integer vector containing the bitwise exclusive OR of both +/// parameters. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_xor_si64(__m64 __m1, __m64 __m2) +{ + return __builtin_ia32_pxor((__v1di)__m1, (__v1di)__m2); +} + +/// Compares the 8-bit integer elements of two 64-bit integer vectors of +/// [8 x i8] to determine if the element of the first vector is equal to the +/// corresponding element of the second vector. +/// +/// The comparison yields 0 for false, 0xFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PCMPEQB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8]. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8]. +/// \returns A 64-bit integer vector of [8 x i8] containing the comparison +/// results. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_cmpeq_pi8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pcmpeqb((__v8qi)__m1, (__v8qi)__m2); +} + +/// Compares the 16-bit integer elements of two 64-bit integer vectors of +/// [4 x i16] to determine if the element of the first vector is equal to the +/// corresponding element of the second vector. +/// +/// The comparison yields 0 for false, 0xFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PCMPEQW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// \returns A 64-bit integer vector of [4 x i16] containing the comparison +/// results. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_cmpeq_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pcmpeqw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Compares the 32-bit integer elements of two 64-bit integer vectors of +/// [2 x i32] to determine if the element of the first vector is equal to the +/// corresponding element of the second vector. +/// +/// The comparison yields 0 for false, 0xFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PCMPEQD </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [2 x i32]. +/// \param __m2 +/// A 64-bit integer vector of [2 x i32]. +/// \returns A 64-bit integer vector of [2 x i32] containing the comparison +/// results. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_cmpeq_pi32(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pcmpeqd((__v2si)__m1, (__v2si)__m2); +} + +/// Compares the 8-bit integer elements of two 64-bit integer vectors of +/// [8 x i8] to determine if the element of the first vector is greater than +/// the corresponding element of the second vector. +/// +/// The comparison yields 0 for false, 0xFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PCMPGTB </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [8 x i8]. +/// \param __m2 +/// A 64-bit integer vector of [8 x i8]. +/// \returns A 64-bit integer vector of [8 x i8] containing the comparison +/// results. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_cmpgt_pi8(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pcmpgtb((__v8qi)__m1, (__v8qi)__m2); +} + +/// Compares the 16-bit integer elements of two 64-bit integer vectors of +/// [4 x i16] to determine if the element of the first vector is greater than +/// the corresponding element of the second vector. +/// +/// The comparison yields 0 for false, 0xFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PCMPGTW </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [4 x i16]. +/// \param __m2 +/// A 64-bit integer vector of [4 x i16]. +/// \returns A 64-bit integer vector of [4 x i16] containing the comparison +/// results. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_cmpgt_pi16(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pcmpgtw((__v4hi)__m1, (__v4hi)__m2); +} + +/// Compares the 32-bit integer elements of two 64-bit integer vectors of +/// [2 x i32] to determine if the element of the first vector is greater than +/// the corresponding element of the second vector. +/// +/// The comparison yields 0 for false, 0xFFFFFFFF for true. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PCMPGTD </c> instruction. +/// +/// \param __m1 +/// A 64-bit integer vector of [2 x i32]. +/// \param __m2 +/// A 64-bit integer vector of [2 x i32]. +/// \returns A 64-bit integer vector of [2 x i32] containing the comparison +/// results. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_cmpgt_pi32(__m64 __m1, __m64 __m2) +{ + return (__m64)__builtin_ia32_pcmpgtd((__v2si)__m1, (__v2si)__m2); +} + +/// Constructs a 64-bit integer vector initialized to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PXOR </c> instruction. +/// +/// \returns An initialized 64-bit integer vector with all elements set to zero. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_setzero_si64(void) +{ + return __extension__ (__m64){ 0LL }; +} + +/// Constructs a 64-bit integer vector initialized with the specified +/// 32-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __i1 +/// A 32-bit integer value used to initialize the upper 32 bits of the +/// result. +/// \param __i0 +/// A 32-bit integer value used to initialize the lower 32 bits of the +/// result. +/// \returns An initialized 64-bit integer vector. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_set_pi32(int __i1, int __i0) +{ + return (__m64)__builtin_ia32_vec_init_v2si(__i0, __i1); +} + +/// Constructs a 64-bit integer vector initialized with the specified +/// 16-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __s3 +/// A 16-bit integer value used to initialize bits [63:48] of the result. +/// \param __s2 +/// A 16-bit integer value used to initialize bits [47:32] of the result. +/// \param __s1 +/// A 16-bit integer value used to initialize bits [31:16] of the result. +/// \param __s0 +/// A 16-bit integer value used to initialize bits [15:0] of the result. +/// \returns An initialized 64-bit integer vector. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_set_pi16(short __s3, short __s2, short __s1, short __s0) +{ + return (__m64)__builtin_ia32_vec_init_v4hi(__s0, __s1, __s2, __s3); +} + +/// Constructs a 64-bit integer vector initialized with the specified +/// 8-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __b7 +/// An 8-bit integer value used to initialize bits [63:56] of the result. +/// \param __b6 +/// An 8-bit integer value used to initialize bits [55:48] of the result. +/// \param __b5 +/// An 8-bit integer value used to initialize bits [47:40] of the result. +/// \param __b4 +/// An 8-bit integer value used to initialize bits [39:32] of the result. +/// \param __b3 +/// An 8-bit integer value used to initialize bits [31:24] of the result. +/// \param __b2 +/// An 8-bit integer value used to initialize bits [23:16] of the result. +/// \param __b1 +/// An 8-bit integer value used to initialize bits [15:8] of the result. +/// \param __b0 +/// An 8-bit integer value used to initialize bits [7:0] of the result. +/// \returns An initialized 64-bit integer vector. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_set_pi8(char __b7, char __b6, char __b5, char __b4, char __b3, char __b2, + char __b1, char __b0) +{ + return (__m64)__builtin_ia32_vec_init_v8qi(__b0, __b1, __b2, __b3, + __b4, __b5, __b6, __b7); +} + +/// Constructs a 64-bit integer vector of [2 x i32], with each of the +/// 32-bit integer vector elements set to the specified 32-bit integer +/// value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __i +/// A 32-bit integer value used to initialize each vector element of the +/// result. +/// \returns An initialized 64-bit integer vector of [2 x i32]. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_set1_pi32(int __i) +{ + return _mm_set_pi32(__i, __i); +} + +/// Constructs a 64-bit integer vector of [4 x i16], with each of the +/// 16-bit integer vector elements set to the specified 16-bit integer +/// value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __w +/// A 16-bit integer value used to initialize each vector element of the +/// result. +/// \returns An initialized 64-bit integer vector of [4 x i16]. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_set1_pi16(short __w) +{ + return _mm_set_pi16(__w, __w, __w, __w); +} + +/// Constructs a 64-bit integer vector of [8 x i8], with each of the +/// 8-bit integer vector elements set to the specified 8-bit integer value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __b +/// An 8-bit integer value used to initialize each vector element of the +/// result. +/// \returns An initialized 64-bit integer vector of [8 x i8]. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_set1_pi8(char __b) +{ + return _mm_set_pi8(__b, __b, __b, __b, __b, __b, __b, __b); +} + +/// Constructs a 64-bit integer vector, initialized in reverse order with +/// the specified 32-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __i0 +/// A 32-bit integer value used to initialize the lower 32 bits of the +/// result. +/// \param __i1 +/// A 32-bit integer value used to initialize the upper 32 bits of the +/// result. +/// \returns An initialized 64-bit integer vector. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_setr_pi32(int __i0, int __i1) +{ + return _mm_set_pi32(__i1, __i0); +} + +/// Constructs a 64-bit integer vector, initialized in reverse order with +/// the specified 16-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __w0 +/// A 16-bit integer value used to initialize bits [15:0] of the result. +/// \param __w1 +/// A 16-bit integer value used to initialize bits [31:16] of the result. +/// \param __w2 +/// A 16-bit integer value used to initialize bits [47:32] of the result. +/// \param __w3 +/// A 16-bit integer value used to initialize bits [63:48] of the result. +/// \returns An initialized 64-bit integer vector. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_setr_pi16(short __w0, short __w1, short __w2, short __w3) +{ + return _mm_set_pi16(__w3, __w2, __w1, __w0); +} + +/// Constructs a 64-bit integer vector, initialized in reverse order with +/// the specified 8-bit integer values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __b0 +/// An 8-bit integer value used to initialize bits [7:0] of the result. +/// \param __b1 +/// An 8-bit integer value used to initialize bits [15:8] of the result. +/// \param __b2 +/// An 8-bit integer value used to initialize bits [23:16] of the result. +/// \param __b3 +/// An 8-bit integer value used to initialize bits [31:24] of the result. +/// \param __b4 +/// An 8-bit integer value used to initialize bits [39:32] of the result. +/// \param __b5 +/// An 8-bit integer value used to initialize bits [47:40] of the result. +/// \param __b6 +/// An 8-bit integer value used to initialize bits [55:48] of the result. +/// \param __b7 +/// An 8-bit integer value used to initialize bits [63:56] of the result. +/// \returns An initialized 64-bit integer vector. +static __inline__ __m64 __DEFAULT_FN_ATTRS +_mm_setr_pi8(char __b0, char __b1, char __b2, char __b3, char __b4, char __b5, + char __b6, char __b7) +{ + return _mm_set_pi8(__b7, __b6, __b5, __b4, __b3, __b2, __b1, __b0); +} + +#undef __DEFAULT_FN_ATTRS + +/* Aliases for compatibility. */ +#define _m_empty _mm_empty +#define _m_from_int _mm_cvtsi32_si64 +#define _m_from_int64 _mm_cvtsi64_m64 +#define _m_to_int _mm_cvtsi64_si32 +#define _m_to_int64 _mm_cvtm64_si64 +#define _m_packsswb _mm_packs_pi16 +#define _m_packssdw _mm_packs_pi32 +#define _m_packuswb _mm_packs_pu16 +#define _m_punpckhbw _mm_unpackhi_pi8 +#define _m_punpckhwd _mm_unpackhi_pi16 +#define _m_punpckhdq _mm_unpackhi_pi32 +#define _m_punpcklbw _mm_unpacklo_pi8 +#define _m_punpcklwd _mm_unpacklo_pi16 +#define _m_punpckldq _mm_unpacklo_pi32 +#define _m_paddb _mm_add_pi8 +#define _m_paddw _mm_add_pi16 +#define _m_paddd _mm_add_pi32 +#define _m_paddsb _mm_adds_pi8 +#define _m_paddsw _mm_adds_pi16 +#define _m_paddusb _mm_adds_pu8 +#define _m_paddusw _mm_adds_pu16 +#define _m_psubb _mm_sub_pi8 +#define _m_psubw _mm_sub_pi16 +#define _m_psubd _mm_sub_pi32 +#define _m_psubsb _mm_subs_pi8 +#define _m_psubsw _mm_subs_pi16 +#define _m_psubusb _mm_subs_pu8 +#define _m_psubusw _mm_subs_pu16 +#define _m_pmaddwd _mm_madd_pi16 +#define _m_pmulhw _mm_mulhi_pi16 +#define _m_pmullw _mm_mullo_pi16 +#define _m_psllw _mm_sll_pi16 +#define _m_psllwi _mm_slli_pi16 +#define _m_pslld _mm_sll_pi32 +#define _m_pslldi _mm_slli_pi32 +#define _m_psllq _mm_sll_si64 +#define _m_psllqi _mm_slli_si64 +#define _m_psraw _mm_sra_pi16 +#define _m_psrawi _mm_srai_pi16 +#define _m_psrad _mm_sra_pi32 +#define _m_psradi _mm_srai_pi32 +#define _m_psrlw _mm_srl_pi16 +#define _m_psrlwi _mm_srli_pi16 +#define _m_psrld _mm_srl_pi32 +#define _m_psrldi _mm_srli_pi32 +#define _m_psrlq _mm_srl_si64 +#define _m_psrlqi _mm_srli_si64 +#define _m_pand _mm_and_si64 +#define _m_pandn _mm_andnot_si64 +#define _m_por _mm_or_si64 +#define _m_pxor _mm_xor_si64 +#define _m_pcmpeqb _mm_cmpeq_pi8 +#define _m_pcmpeqw _mm_cmpeq_pi16 +#define _m_pcmpeqd _mm_cmpeq_pi32 +#define _m_pcmpgtb _mm_cmpgt_pi8 +#define _m_pcmpgtw _mm_cmpgt_pi16 +#define _m_pcmpgtd _mm_cmpgt_pi32 + +#endif /* __MMINTRIN_H */ + diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8e13ca2e1c8cd69e5aaf7a3895d0fefafdc6d8f9 GIT binary patch literal 79877 zcmeHw34ByV^8d_`K|oOC5)pBPh{&0Q5FmidwTN;Bf{2QQ$z+lYOb#=X16KWW=?Wq) zuCnW~T%yY!DlT%Y$g%EE))QS374Zhe6Il?sjPL)g>eoH<jyZy1fA0SOem*Z2Z~E2i zuBxu8uBz_W)$zlNfypm9oQ___WhMSz!Cu4tp&8+_@?K$oDBP>SU(hR5;p<i64V3ou zIU4wa-qNC^n)awJtC$feE$UGasPOy3Wfe0A#e9RKw!5=eWvHT8pwt(vEb#Zr9X>jv zSH8a}P@3l}EAaO$cKp!UbH|H@Hoox8a{lGpgZ+%Z<Ojl`Ui53IS6*I8ekkk>`}4wt zL^TZt@_X@EdZlNnw|Yxz0;S;!j1*0YDu(xQpYSKIs4`Gs+oLN-_bLij(ofCbSo=bZ zhe6fK3i}Zi`n~j9$k0<sk`iyY*zkk>5UOhWq-PYCr)R|(3DbwzQfefMd=>wmKNA8_ z?JZCI&QQ1@zpN}s4J|}tROMx%KutzoFi>JZW_X=9TvihB<y8j?{9t)yY1m((8pjjN z!a&fUmtRp<9TE?u{V_iV+kEAffzrY<!m4B`4h_+BZx8~QSRO)^6@^}3gr)JiTkH=8 zYN!j3|7EJNpCNitks3422HV~h6_y6#^oj{CWIq%rs`3U+f^Q(YXcrEY_$#8C#p}Pn zD!`0xx^<kf`)YQC%PM^=sEWvjR~DA{2$mJ)CmyGlCAliUB;II4Gef<61^z<&DHBbL za7CproHydC(LXo5TJ}wKpA}uSh{zUE$b4mGGXnm+Kv`a4WvMS5C@T#`kuO@0u|}X5 zUY|cKj*cqC3^8G_<$ZNYNg~#R>7nq9&@9_gR+a`ZS#5uc8lJtzlytxgO1&%tN}0-^ z7)Qug>`(ZLY78Tp0hgDR`%1%c#;o`TWmX_G0Lxum87}eqSYY1iHpVE#G!ty8qh5oz z1iWk?lz7{6DlZR&hG6EEcx&>!LC{PL*Iq$NTSd(Cn+ao}Zjm3RISdUcObD|e-dICb zG@gUQh8PE`#)Do0KebWgk?*6q#T_$H#CEiWH6bW3i>9<~tIzB53_Rek2*EX|<CDQ; ztQ&DME7Q<(IW9GJUocRfU*@f_H|8wNuo&Ue9<WIe!thK3I@`gOR}}h+?G%=6Yn>FO z7KI*<qlFcIe_l~=W;rX_uAX8eXT=;OCE)eVNZet)3&H%t#2y2rlMHANAM{<=sBz;B z4;q|!4FRF<s0k3~kw9UIw<>7!jAS7XGBOqI6_K1&!7`s0K7!HJv3)z<s03d1)9_AM zuR?Fgh|16aPH#adFw0(x&}3u(!_r|TlQaA?4GwQSNeDv{LV>XEDV@}OLK19;Rvy=K zsMnVSLiWl)wGe(9anhnNib^Yc!MV*3^@uU^yrGg_{)&oHra_mJi;OO^kX(OwdPx#K zr_>^B9|~?tEG>$$iuSg2sw(#dODcmm72ISaezs3kdjsL}8Fr4MZS#;VBW#;uj5eJx zh#Py>d9VnEnJ$}nLvV^CKgE-!pua{~&vsw=jS2-!>rvz{^;ZOZf_Xjiy&;xw3kQ{u zl$HBSi`Yl72uak`E%k?tT157n1UpYib}w&vfW~(7{Y{Pj6C19`*kZcNk#=fE+Y-Ab z<gN1i646`g6mr<IGLz9MU}BX}@cnF%+jhn0H=D$GoGbQ*ic7>YEvsN`92Edr2*4AW z<+tgFq`cxF^pMpw+V)mj5Zf6e@rt=EeDI2DXk?>llFiiXX;laRBkboDqrDKJH@+Ul zelOg<9<X*%f*$RG>+)6=s3<Efff=`#IBtanVh^}qwo{24=*|~UI@?z05~hmnPmG{E zTwH+;vlR94R)}?yQb-mm<OgBnN@B%7$Um!uEe`u@;`A9tTfEe^SCZiLqdk@JyqA|a zhUeo*LSZuEg(aYRWjx^yhS(NtXcN!2RfNr}qIf7H3x!~Yo$sU!l!Y&dUm&n#po3%? zb5|$_tmA2=Nv^!b1v4}c`GatNW22*h4?LHk@r|~Whm!MFFh!M;GrWpyRAJCtWJG0X zA~hTOogipH$S9;%X^#zk@%1RL@MG~4du#?$<>kTT=jB%x=7qhH07yI@qHUotSJTD~ zHJU4yXkV}_L}4UT<j|IO-U2%-Yugk)vYmynZJU>;7VCM!ryy$Bv!^f^?%@a3dzARY z#bx%3XSl<aHHo|@oveYPJUyId6ffJ3R_B+N1xl;1479lDQb44Z$ctzar7Uc5B9Izm zk!IgqgnGncKdv1SRESJOiwk0nKG?po!izDRt!zvmLYg?;kSDd02^HCim8592H9({Q zOSL@cupR|7OTCDK#-2CP21K=rH&cRMY8HF_Poa5gk$|7fAY0DZl9!z+8-cQI>@U5^ zR}xSB?1`1s@I!%;a;*J?&KDYEcJ~|NI7t!FiZxZsyod<+%1TPg;u(61c&EpVcw2mG z8jMAjBh!uov<5C2<cMM&mNlm>sVSTR>9tIB+r}j&2wnx@tI?b7sUh?Yv@PV<sA`NI z<W!99I$X9B(QkW;5@lTTl8E3|A*zIstbty(1FWG8mx&tj=F*rR9Jzn-XQspu_YaO( zAttZ=!k=4+giBsrZ!K{EvI@bdNDd=jcV~J-rGfHt;m|Hyb&b(Za+hH2{Z(*^%^{t5 zXqnqY+>^HMlfkkFXgn36a=%ff*>XcDSqlA_SQ1k$heI{Nf-of+EdnjYN=>2ZWmruF z#Ihs4t_vr>KrbnS*-Uyqu~NiRJ(=!$EA>cG{J#2vg~7^DaeSoJzG81AmlnM?Qq(C9 z6zJ=0eqTKH`wIfd<r4qjA5j=bkqUN}$6E~~3gCr8c~+;@R(7JDEw9L*DureHKuy1_ zqVl9UC+)v4p_Nh&SnM#qBD&Cr1~p|7+w!0{Tv%3NzY12EZmJ9zjkv@kCwXaQN$lmO z?o&`lEK44lk?s*Eo~~YkTw^Tdrn(yPmxhG+D9JW-Hp-#|3KH8CC@>01n;P1)+;(2e zm#Yp&VrKRo6e%>zKy6<s<OX3EtAes^Uj^Aswr#+6IJRh6@z^1@44#ZwAhI%#))mZU zgK}qAJFnbZ;Wei9ZTk=^wo~h}144u-6&3EmDHnq<+9DLRjXNWOjXP{WCSR$7)waKK zhtvWbQKn!yqD(5=Yk0=Cd%j?SzoaajRIDvn<}C<CY<e`+l~|SsYWyM+U=d5zrU>o_ z#e*u!f<cqNXxm4SFvCXNB!v`SL`33E*(B^sd0DloL-Hk3dDz9VVs#n?E>%G)46y6H z?L&x3=-~)u7R((W6{&~04cs-h6Cw(t#qs?~Y<eJ;teZ)tQ*C=z2<EfyRvoi#23Eyb zd>Z<PXG?lu%~Q~$!0!tpDvD%`VKlbLV^Gq7*)a3N#tCoNP<Jd%idnW)qE%8>DRK!) zs%?9S;g^zV!?jP!eZqPu<Sp{&m$AbhA2(tj<-UNOWw-50xzLd|^TxKhP*X{!r;t74 z*dZ_Il5(2kSH~za7klA$+9&peUgxlM4=8EG?RvyknxZkU=Ayca$dy6JB$p$tk#sQ1 zp=`qSG5%_Ld{V~)JGf*n4juEUZUp9(+N%j8ajDT(RF{?W>lEW<lSDOdLduE!F$9-~ z6fC2v#<EI;=MCew?KslGe)!DRZrir@CvVlu!_^f5TLWW@IXElHLYk6FBot^|7V0Si z^P16~!m3Tk=Pk7aU?m?Yb&)9iO^Lg*m=To7dm!7)21|FDSFB%+%G#DZ$ahf`BY9uV zS5oft)p!e%X05IXFk@}Cfo-p(_Na<qEhEXQh=Mq>n3GJDc+0s+AZz*^df{Z;o`9(F zt0FmK#6d@8_+<B(A-djBQl?tPd2Nj1lvq#HC5GUu@bymGjj)eR7>B3V$XJqlu{z7n zjICa?eWHAZ9>a^T0^{UPW9PS&_!L83*-vj>{~;|Eb7pcA=`K)U+ZY(M9Tm(E7R<>i zNnfx!-_$mqh=+^)A}qJ`N<Cm9IR+Jj?ih5q{3&V_F>6M3c_th^lpja(>~J=9oYQoe z_SY33oqXh<lb2DpEa3A5N|C<sdr*>|mFdYtcok!=$SV)@>p~G4+|N(z?vY@61k8wl zy(3^|1nd(5vm#*M%N<?1v~||*b~|vjbvbL_0JO*LatxyaF7h-&9<L`Wvj+x(&V~I& z{tAz9T)X4n2;OnIKmlM+1#~`&^*ktVLZj+HxVVYO;{j<s6x|CH2K)t{env#zU?r@6 zlO|I{j-FEbo`DFwNY-7^q{+nMK#1N9lO7@hQGY7Kfgoz_JaVz+@s<{N3d;N;Pia}$ zgThD1N_iRXh0D-df4h%*10*~u3jX4?yfS5~(vL$*?fU0|`^lIh!}SnbJva2tPP@@l zR>(ud8!Ln1o>3^%PX}dspX`2daAuqi&WzsK=~;1*_C6h?z0<QZGUFi4JT0XCvwLU6 zLE7hZkY@JH&Wy*WtkXf-r%!ffJVy0B9i&;kv-{XEs=|*QAEhA@&xi;X*iXuy4o4&H zjSutA9Wm;!yR=KZ-FH;I_<R>_PNQS9U%bD|SgqmGJ3d)_Wvi#O!m-V6Z+XsNR%xvs zpPAPwZ{%8SWy1qc4qrO|a;<#Fvrqb`T-U%^`?k9cuI^gXBZE`7FB^QUL2c^brcMX` z({eWE7935_aK_PF=?1-}Ynp}7FAG`IEC6&@QksV5*bV(WHJ(7f8@sb&@%X*IVtwin zrA=yu7uFusPH;7k2Rf8AK|)RRQ&2>8lN%<3P{(q(QB+YnsV))}O>9V$Q=8>`uJy6j z2U|O97eO2r*^7gekT~LCkcPey8x&=ZqKs6O>54LFQD!d6_@$9-wQ<(wK%#QoZD7U5 z0lFqR*@~W0WV4K7Vk2BX8Jks~Iz}17GolU8h~7RU7UqoD!ZTvE&xCuCRyXYv#|x^9 z#$lV~>ULA7?^|?kt+i=6{H51hUK`S8mAvg}^_$H-wS6CKbd~Qr*hYJI^~DdBUfA>+ zt?`(n+3%mabg}lc5$~>_dEMj!?Y)<)woh8yqte0V$t6`4?3J=&1Z&%tti5gRs9v*T z>M2A+p{UZcy67%=UI`S9f-^|dv~$*ucR6sigQm#=G|}a9<W}Z~D^LX)5~e9Viyd9$ zo=V|7O2=8ZNV<xKT|%Hx8ge4NY^Q5<GJBb1_Q-uJtSBpC-4t<eu@}%|`y#?+dRJkf zA{4gw8Cc`X_w@ASpe`jGsPe;~Czm!v$cj*siai8)zqizrR?~OHh!Gyd0X-qwjEY~_ zKNk0UddB*Tu$GA+@SsjN#E%lHw3>ctX=!#()BT>FiC8b_Z{|kjSRV=!k}oe-A_-_! zCp#V?C;BLygn_;*JUO}749&gPGq4xn7>kAyF$I$#DwZUrVI;SRVdRCNj;j)xZLECM z3Zz6RiPJz9V#zDk@u`V-I+!FkiM|B^s-N_i`mm~kAm*3BG_sZO)0QmES(oO^82PIs z#~WXxwRrQM!BbCcNEfrup#>gm|JLpvS6vlrmLVjDSyq{7mhE>sYWF*7mhA&{!0B=f z!GnegR*6MnyeVcU_B1-X8K!eTA`nsYE7p4mm%ait%;tDgxu++$vLs}fQ-mh12D8d` zTG9QV&cqlpeE2o>HZx9Z2H>H36LZDb5b-32pkI97>T=f;MZeUtm!7}*VCJhGrJ&ag zee3B~CkDP9OVBYl6Il~PU(SIIImboOmu7&@i)l@yc`&JVTfvJZ<nhgj{Tm3E-9)mR zMM6%4l+1-~5`hviK?qAC#U6Ls)Fn(5nZy>Y{{NU#H|lX>f}JY&IP)Ca4z7J)yKdFj zU)=6`@B=B~y;fg5VCd#IcgB?P3U2@+-a8}WFi~JI44;XQXwV&|M;kb5A8kOY{1HHZ zXy9^82ox2EkxmR0N}s8Bh9Ni@CFRoYo5X_#1KGMEgM1_k9Ochs^NKuuKE#hEGsWp5 z(MSC5^%!3RUjbM~qBA{2+>#$5-v+_RARLd#nh=JD5K4WoFC0BcZB`=aS;%&Ykm)bb z`!6PhelJ=1Cp1weN)E7o9GeM4hR647=<P$|_z#ipDEEbVEuJ&dSCA)3jV%$I{iTYC ztoRF<HewM@PRLWQrav`w(-enx(Le5Jv*7KSt)=8%bN#O_dpLF3$(WKWT>X9#!L@k$ z(9PM<$l0u$`vV$e)y*RG6yFOmXlUxc)U#1M*5g~T{CvCD5T>YELY`$JHLbrTNiW~d zOYaL;B({go?mhL(W_8dnN$*}#hZ!wGc{Iyq*Xzj)<PMEL2@*Q@l414X+sD9Fch^1^ zqB?r^uOFQ9+&>>%nyJ0sc>cP3H}CvdPO962Z=8M6mNsi*O)6hiI0RLUt!-JEU4$73 zkO}ZOdpml2T+R$fR&u!|#B7o56U!yxP4vzX>Rh<#EF4nvlH{Azj#{d4ZYUaCCF<QP z&|G0ls}Hq0X56IsS~WmD9%Ak$8;``=G1{w=J=f)qEuOMLpai`~jb1!x95PQ$5fV@1 z2=A@S7I)mZ_na3blfV1Zt-H^=qQq@vGL^J=_z&eJ!Dyr?1)o)T<Z?$^S_fx=qo9M! z>2nl;(>MqrW&)Asd1OuRF{x0UGIdA|#_;*Tnep+by5Nj$lGBbgrjDBCe+U(pBwE!0 zq(aNRbo4^0$4l`K6K5#4?rZkc8rNeBhfB(*e;n#t)%WPvM#@LB!N_x(NN#7d2BbJ@ z2c*z?A{)>ZDK1Bjzk*7{i50SIL&gqgPo}!e-qP1CEgOUOIrNs(j-i0~GA<oAJYvTr zlZ7=g$wUP5hz-+5#5Zns?b}gx$DZTb^d7G}FFN~zrzM+)Kisfr%!1EH#bQ$l0vw6f zeTX7H1drk&jv_t?XgPd~F$lN?%7X#KTsXC38{La%^Jx^Op_A>D(LL!QN7xk=<1orK zVKO-v1~(?|YbYO&o$#K*vdRiVq$}t0in0PKDd_3pK#sRyI?hDHTA|#F=p;#_Y(SAX zdOi&4)SspGc~8PM5z5|Z5%3^p7p5CE=XE@(IJ>~1>@?wt^1Y<rDHa1G$|^km8ZYe% z>@JMN4M@w26tZdU#BL7G0uf9rkj;@CN6405g03ZcglL8CQ^!?vxlTZ}16A;a{iTEq zM1kO<@BsL&8SNjhDRagkwsY-|n6T7;C2PsfUh_lAgmxsu%nJoQh(p9uqGV+O2QRyK zdn2psS=WryPJH*uxgV~(wxyih=Wo7g?b2<XM#P%jB6x|49A)<Gbnr?<ELS>72d@CM z+7P?6^X1KR&CZcGNv-ttghLcn_Cj+y!8=%-Na&(d5OQ`zPYwMgQ40p9adbj}a8c~v z&gVC*7Whe(4B(}L<r#sju1f{G9@ob@0rR20)(Lf*4wCB01v;f5n2cN`IYWde!p4{i z;mTL`es<^Y_GoAC%UJ#CqMd1SD&%h1mbrTV^0~35f?k}4I6gKQR#42R8s%vU#=KB4 zGWQDZtp|lRAWOf&O+lgcfc~0PzW%hT&U7=X4C7BFg<mZat}=;d=wIxzGi8j(Y6wda zC0y0|!qslfv2hBEMFL`vRL@S;4Jj(G;+1n%i)4EpM~@;YyUHtNHIgfmO3~&$eC3=g zJ6*6^`&l6K#&r$49MWER@Z^-r)S@NY@;|KJe$UfwuXomNLdDA_cTX*E#<e$odEu#U zQ3X(6d9MHC+}`h(#he?#pveV{<dIcm6al99;QGDC0j75WeF!ITw7<|87){;_q)D#U zekheH4xmhmOD1hsHwM!S=OsFPD)ogWg37*%FdNCdidUe7%q}Nz8VLbH73E{pgV&Qg zdUS%E0KGF_KvcTdQPVIgAZkx~n(P%g1Ba65SRSHG6=oadug2EEs3hC;Q?$*K9WeVt zK_yCtxT)u=LeCVh4AGN-NPAAM?@g87Ao-f<sLYCJ18Sug(xHBzC_=#lm)5ZTu<~9z zi}q+s&i&FqsMpE4(s=kETYufGp65RjbAtH8v-}lhVm(_`7AO#LqFOg>f!mE(QEdvK zMoC!(crKArWOSVn*GE(*XY#lSw(D2LlqA%RNFjh|(#KPT<Ze<qrCwB7_0FaDj@{s> zj72iBtc>S*q6*Fnf79!vD!6HY3T!-2X=hB!J3E(C7cycu`S#M&h~sj`KrS3j!ebQh zXepLnPt+2xpIGr2>=GtRg&s?>mWIUhVe82wtf#<nl(L8$-H0Z9lIlRR$?OnDrMQU` zN_~rP#~_FH!1@`%HCoI4<0l?^bDLgF<<MU1_Wol<-hKmOiDhLet+j(?raYi!S=7;4 zI~pQ6+Sw7pISSA?2<J8YFvrJC%X*Qjjv1c<U1$)I>>n+pS*r&9IH!>@me7r;7^4(U z`?Y`ayAUGr6JvV$nz1><MvWexAl{fTwIG+bc41!%ZRjxpC~2Yq>1exvh}AbtEN69p zvoW@8n5aogt9+-~ctv<=&iS2Jvh3U6H+t^(+7rWGIr`<nk{_f3ZS#Dmc}r>!{V|rL z>I)WRtAQN$FM#EW4yEghlI1Wu%Xv|<4A82i%+F~pN=yk0j(68B=*o^=z3+ty=!+7& z{@E=cVu>G#re$>!&}F|a$n7M|fV?ion0=P-|1_)J^W7G_rhR(w{w=$^cCK{Ru7sz* z5}y9ho)?~db9meTiSqRK{k{9gSEc^(%2+~$_#f-OxaDl^owYmQ-|uj>hwgh0&<p=P z;a&uXp#P&(IB~~V{3D~dDk_Ir7hf++m$qKqxG~ox^zjoa<w%E;%Ssp)S4pZu`3|!x zG_0M7y1JfK<ix*Cab_0uYwvqv{ko5a`m{&C{_YdUnt7X~q8xPlnEQLr3_KM}rjdD0 zrb2TL1bGf;FlGaqZ>^5dm#(VHj&wS0AvC$3hA<?JPqvFP)QUFoOW5SAqOq9X7RS*w zF^!O5t%RayTNHZlpob$-O;U#u_kcpN`lC^7(}yb_w=A+`uAbIl){+TA6EC$9?NCdS z)yo`0L3I7qeVPUQzoa61bExg?19x5aj+U97^?<K>&?q_I%2sp_{O!ZX8yV*tyB;E$ zP6ZQK3P;z`UG7Lt^*Dz+hGQ)}%yA`3=Jbt#wiY)=jhu)r2y;uKV@&eZhhQYEd?=y! z#t5Gn^rG$*7`v#~*O`_wcK)uI88~W+D%7F=oZ15C;)+MgY8Oi`<Sd(c#kQ}{ztG5q zNP0a~5lp6-(SfYGBZcDD8j2YkAiw^TFJ|;%O@wn>#DYSnvrID5io#B#5It@5uyoh! zLw0g<CyY*zZ;T^6tgIv5QD!+R_Gag28e}eZG(sXatEza#h|L=Mmp*Y-`^&Vxqe|SZ zvN!gWl9%`EufH1bi$*WRl01=Atc(}hL9BQu*33IOsrU+@f7*n0r1evbv$b2sK@)|e z?5qqP#EJ35c?%&U{baD{syEix*ldR2oe(m{6G>u`HN+MPA;O7d*ZM~4n2cZ5i|Fz` zi2vMJkn}Q$E{dOe{@m7=Y`yR4(zFjJHPin5Lt*B|g2pSQY|AB6EZN4QTSSJ~+~oxj z7t$f#xC^;%hn03a-V}ZTpo@}Pa|1^t<Qpl{mM2Znu<R!PPhy3ACKkc6QtFH>-|M`> zZZv54a~n>To~M1kWp1Z)fBlvop>fp~VVzy%?#UZ7^))wd%<S{d`|dw4TJq<ZLc}|1 z;^{|(zE40ap5V~;aX{ZgKjs>@Ws0f@Y1B-*(N<-V99gwi{3>mG{Ddjd$|KnbIN^$A zwymnKe)S&K0rjNy%$D`E76H;+nH<D=E1gbm|4i3q&s=`+)k_;|+n&mvG=6XM$x=Da z89nsDN#FhOdMvpXDV=Dy-x4;5g1i&rd?y?Jg@6_t48KXsnS?ry#E}poZV(Be+gkki z=*65NOh%s~dd^5k$}XC1h!@v6v7<28Q)VZDE1EDw6zPxhMe7i9PcGFf-(j9S(WaaD zVM^|#fA{j$Z@uuxb=tI%yY6qf?!6IGKyS;~f8!P2qOI`-G;VAY0$K&JtYQJJ1T@ni zpr)dcx(lcbV^BcE8eWNyJ{bX(_@f2X6uyk|HwAH%%RDN~^(3GP>J$<RXrw=N5YVWH zlphdhy36Ku6wtu^N4`EVX!Vm??dN{qlA^*6Qb5<=b!bkryR%|$ISEyGlPa{ChPC>% z22_!m2gql;1u?!X30<ltR(FzwA5&sO+LsD?36EiuV$=dE^0wHo!g2-}>U9sJP6&Oj ziix4$i<%0yVFT%ZP@keaCn*;7vi8cIFeJfLptr|}IhkU-Y9>U54eX5>`E_T!WG7yD zVXJq*&HZ1W_m+0-@9meJTsVHVoFl{fw;r=&&1bD*DRBz#(77gY{fzd`6^<21Pc3&m z%zL!xB;}A?L>Yr}A>jaX%E6XaM1Cc@T-qOTGeAZvF0wlyMI=GH^PVj@bovQ|ge+Eg zlN=Z+TKYB{nRSeuWFpWK8d>L5w}VW?^N}DwVM=h0NxdliVWV<$hbIv9ggRe33_U$R zr$f_pe@<Fq<Sy_jO+Lbfs?ca;dJ7}RnI&ipu8>@a6JNYB*eK6_)Ppy4*rJ&kb>al| zO6@r{Gb0fvxSB|Hn@|Z+q(gOdT(p#m)Kr|If{Oo7eNls$4E60&{&HF;=O!ziU|JU% z1VON$Go`~iENGQJc<Y_ooRj%$PZU=Vk*c-qm46*Lb=8uzSgJL|b-vMx)xOTR37n25 z?0z%`)C}&2rOwxW;>nq+FO}E{At_esHOV?(sR#Z&b-r?!s&#=E*J+4&43UY78uI#a z8b+VlT!XD4WN)b6oCe85vv2*Q>U?`+Zw7gs!m*20=R5Q6Ni7ELUYw^rdhz5#9lq<= zR!)$`fBEzN@ry6{TdWDfTf&jt#CG8>QG1B<cwcx2=S0Uu>=w>-Tx;1aY%)MRS&5u6 z>qhEBN)qlC*7tGi%r^EhiOiBo9o1>KaHo#<PwP>%{h*}$_>5k+o&Uq#FUF$0sLL#- zlxDoZsmHm;u?IQkw;kAl5M7RG)WV6&F;$$A=I-fLW6A(%eYj6tj5%`XkM*BqmpoH= z6XsB{15=z-Y;qjL?o69wp$*UK2NK&pYkO9+;c5NkVcVyB+nt|mcv?SV*!JlJXBsDt zWJyX9`xBGN?x<@+U*plq_V{VT)A8tJdnB~s>3DQXbWC%c*hq|EH7_i=YS~=r`rPl2 zz4qqy$Nky^&puGI$(Q{vIrk^^8#{2}cfXw$YwnX<!iR9EU8?qONhX|;Om<6p1L|vX zOUNwPMv#^BVcay7Ohm(ECKaaW=o=2d=eZ<GymiAwLMsALC}gM)1%Zt}2`aTol4C^? zl8y%O2<2v*dcl||3}-Sj(cXc69uunCs3%G60?NWk%(mWv*#6Vu?iZh_S-E3}Hts@C z*1@s8JW@dAmbsV$%30y4t)n5F^DMWBhN8BMhN8BShGfP#9eLt(&KRcw%B-)9u_^wi zuMg@XYiFh=J5--rC8a!u&cvq9kRFe)qoiH+xG<Rswx5RTai6T3J4x)^!pbm38@%VE z9Tyc|*hYJ+;i}oAZkhj2?Xm+Ue_hz@!*$wiYr?_v5A-b*GViLLh2-`uJ-MxK9p&Wq zj(0Daw`Sk=&y90|_Pp^oKKv!+;h9~;7P!uxTR1y9I<{~*FL7K7mze6dL}m4uF_S%n z0H@2$q@8%`cqDOCUuf0z>r1VCGoUJq0wDw}IlK&~ncq?$dh_RF#^hQz#YJsn+x~X` zx8sg=nqeGnRGA&;@}rl`b~(>Zs3`8l8)G{H>TInoP9`&Hvc;tHqGHl&ITfR%IPMz= zm#uBIc|o*oGp>vYOR^DlyRO#<L+PyJ`bvG8SEi?x(^q^k8M3-3^<!a5F023DCDZ=T zzf#XD)^;6PGVEm2vH8-tHF)Ns56>Tv|4mE@uSjn5_ZIkETiE-02GDkRU)D-elP0wb z2Svq#NS=P$IVnRasy?_xGk``#{#NAcL#8B7eQX1t@L#(PJYG&|^N4>OTDxViN81{H zGW6_#0lG1BXniK_*u3G!+=a1ZT;`PGmIkzU&UMU1PHB$gwy2zv&UIt(<aBaMD$2`Y zA=@)=gb!EOl#*PiiG$m84Q)wckXTwWN|qySkf1OegClwr$tH0EgHX`|$5ii%gK+BN zeMUB(826<Pp-j@XKelX3Qd`d?>0Fcw$tIIz%V+yclKk|RQ6|(^#OjnuvLhroKqQWz zMY4NP9z|qG9Eg-7J^-cj(iBgj^^)BV1t~{Ko@-~+aUy;9|A`)t=*EbpA@`6(Y!>Zh zg}B*`F>qgB7Sib#X^pSH?u+b2i?n-w{@(TJhgQBJJ%p{LSFUUG@E<>or9Gqe%*R!r z9i6p(QBl>G_snMj%0_Kfbdc64XNiNfGz+3K=BKr1UMYh5&`n~`d_5jJhXIP{qc|wZ zG&jY9)9wr<LjX`;k=j0-;9R4`fzk;5lIg4M;yCHfCOR+4v_gtrW5{lrCqwLT<<cGB zUh;>d2X<*+U()RB#Yf+}LQaQwKK-)%rd1ik;!g)oRV0`Wha87+e8e}7BgSc9ocaH$ z(_rM8m<GDI+KO_*d7z7r?Zanc9>nWx;)xKixBu3O&~ePkH>$@}yrq>t{&dNRS9fO1 ziO{6S($_aHDKdqEBC!#CGunTXsh-gi9l>D&E3gM~MG74zupH3C*n>E%tOSugaqfw% z%aLm)-ACg>EIK6B6oVHL3;NY)9S}7tpv{z6#QQw~aW<TE_jKbbA|QIm11_LCJqkV$ zA&YpVQCp$Ou^}Hx-*F+HhNFx26LA|KoW@83p|VoX%z!_LPyVFgB-sj2p*I-9k*xZM za_A1e<?62&2YJ|-oS%>Xv6(`tFX3v)7;9Z@!H+uWD?&4(qQ0Ky%9cl0%{w^c=lA-x zq7i#On7Vbc+LL(kMW-fA|LE6RES)SxF>as^qPPJ9xPe7+J)pmuMbSQpmZT`E_{~pQ z6#2VN^)HU~6_TryI7)&i=`PFWW)~s0IM$A7y64Z&E*z_sj%`$VVZp7pNX_`+@BZ9- z{YB^YiY1Ow)eLbZ5+1V~ezKcA<`h7UOdj)Txe98ar&re?AFmf>B?=qr`IIRmRgCtY zR7!oWX%#hC-6!*AW1G`i*vWUAB{jA)yC>`Vb`LcD;W_P#OUiaHJbYGDDXGu?I#~6~ zOT5>{l2rZhlz25a*fJA9RwKaqjbcDSYkot7v((;PlPx#dP+`%DQL<fB8bU_1Vx&3j zUqrZUjlHe&z_AKd07B3H2cMe~8OM)55{{2e`LU5V$v{&+<g}72F>uvAw-O6c^v-f) zp2c=w`Q0n;daPI4u7|azo4;-SuVX3w<TMLc{bJ4DmLHyoHO=&c*yFAj@s)*5FaewR zE0P-lZMNH*W(qncA@wBSQ4>shesOoG#e54Pi*ko!&oB9!s6aGt`-_f26SAbg(8^Co z&Mu1VX&@|?P;|1NXEmuH!bPDq)%*I08qvw@|H=M(gt){5okVs=cpZNBnbL|8hYoAU zZs_>PQ@3^ci<}<M9vSY-ee{1`ia9+>3rfqvrXn!QQnCX+VGOT5Cj~{gwc`Ng+J7!) z?6`^2;>1aMi!=*lnM)<{oh5k1wqKpWDvu3siN7E~B@JT1!l?nvOd#SIjat2UQTQ~? zSZf&rWK*r(;%%)F8U3<S|7El%hQ1Y2LSHgr&jib0#z9MGDyOatiJcFDQl93BK=Q|d z(1B!K^CY}+lWB;0iR4>kD{Q29^5Y}+1Chmlsy#0#rx)ei{HIyheWP{!Wx=;|dWF<E zu`QnXr{|$tx?CMgBK3@6{O|s@cW!lTMO<Tx<8S}2jG@KFipm+1@PV}YPPDk&(4;*y z<qRkB*9Hhrw3_B9hF!jiPPh?|L}v(%EeRPG#PyaN#JO%i)<aRs{S2n5EPS%tXQtEc zbZE_F<u9BY$sKhNpUMO2<}6kUP@wwH$^!lelK00i3+1FWsZYgcVx&+9tousdzVGO` z@0X@&yB>e7^KbupKz(hrGV_W-*W}lH5=-|*<@@5T3q8(S54=>5lg_`t7*Hou@S?8i zK9$j=ft+6KLMKtZ7+sO<tG7KFG$@hl<4qUFsD=KqtVG)}#6ASuM-%VH&|BC(op?6} z5*itqH?p#c+I}iBlxJW!Mr;}h8W_VWh74mIBI$#O^Kd*OA>Wf}`IedC)$xdgoK7EX z<2AlJxecN*CO&(mwp%gQj$ZKx*QD>y(tgpq#RDB$zxSqe#5+Fq+1$s|S9Xmx^|2Kr zU~<Fd325p=Fj%LKL<QhT{zUebfJVjKiJ_daIQu^39#5Jd@xF!~<!jrc6~TK#qkG`d zm8_9n8p?nF@7bbZN?WiEsJk0}CbwR!KXK>$IX?s*(Hh)(?Gt}r`*}zT<ZVsDH*EC0 zxG9!E;=uC6nRX<0o<v;oNj|WAEug0mq5LoTK4tWQ<?KR`fSXSI(fO}V*oOSa+;~a~ zsD8s6IIw)=e{y(3IA%IYiMqOqR^-IL?V=sme0A;R>y{3<Pka5GUVC2|_g$Wp={x$* zFW%`-Sr<#DS;-m?II&Z*9;j9iE7^+ybuuYg{^qLA_?Xc;%Nme|7ZnRsi3Y>xw1@y~ z*bN8$c;#UmQo9naiSerk`INL|Hqq;3R|l`uivx!}a|!a2^x9Z^=4hTs`b5P(qE6m9 zO|=`1*qq^s*1^mx@%g{xK7y6p=J@+&=f2;<`OE<=_~KLlbIZ5Oe=Egy`4g9w47;mM z%w+-g@uZ7$c_0DwK@$BdB!28_^Yd3o3IG)+x4$i#2yhMp;bQR>VcdtIr=gpv>-UA} zi(evmr9Ml=UV%JF)%1)aV4b81K`^hU{=ZZrM9n-X{wh4h+-Th%IVD!mLZ7I{5I^A& z5y)r@pTq_+R{Tn!>B#Zmwe$BEk9!ke6wyyQwfmw-_ioFszpKyH<uR2RZy$-ya@%j- z{Q^4d3*J8RIiRm?w~v^pV;s1?fhpqq5haq^J|YJ#Jx!CFNq7vJE}^Gs%z8k&fWhua zGsE@~eQ<iY3ooSpTTe1K(nlH`vKwdobdh-5M}Gb5(j5g~e%(Z?KAzn@_3QDMNX@tE z)nk`zT(Xk4ECzg-he0YLixj%mlvS7(MV8zIlH_4zB*OeD`w*aN``m=T#uuy%1*-fW ze65d^UCau%Iw`G4>6&pfMXYZE@+_he#?2c<<rnn*x3-*(Rz&vYdS){xBmQP;kefx5 zNlkL`wYPSSezv92R}(+dMmiTh-S4Hx)W_{F-8%h)n?C-{d9js~mrfLkPP^K9TGh}< z)$D0i0h(p2oAk{Ly7MFL5V0`Eac?vZvT`!oY=8QIQS(@RtXQh0Fc1vFYD5kb4-}P> z)5bEz87n?<T*L$ECi#nm%(y8-ERpqliBywZR}-2jCsGcuUIg|`pO$DcG085K4U9C! zU*oBq^fjBCkLz{hSK5K+_l@6pVa5|u<!p9s_TKF3aBob>70wnUSDrIat-D(_aI$LH z-Kqxki{#xc$tQbv%Ou}M-y?>*WqgLkf*hJU3Bs9ix2mZ#L!_|FNz2@}+u6^HDdUj! zi9~o#-`$cVM?BuCy)f*a)dyF+bB<H)y|?>R^K`%Gy6TL}UX3Xie1dFZck6B_vb)*c zS`6qOTa{*-3;*%%)@kcRoe(+!gicJ-U5lX;rOR2TsSwMELnofmb*!yX=YjpNx@(<R z?7F#8m&uQ6f$GrF(%QGHrS9y$WY_Y^_r4Nmj_{|E5?TFSm>9d*>c0-?P1`AA)Nudn zR^PCoNYZMP22%=9ETW^WSv^VUnca_W(o|>KYTq*Gs{x+=PaoHY-tohxsoO8>BqcA{ zZ}UYj+|*=tZ0(%fNmi|}KxoBFg_eNM$5O#?mI5t6Z7Y|QUu^G8602jaWKEM?VFLg0 zRJ_$|eU!lA+gbll9A9Pd1@-f*Xz%Ss7oYd%cMjcjiT35%?%zHB?x<&_M7^_rRsW-F zZ)hA#qOh^0h(1XaFA<M~+{+N7m-#bqF9CYhysyRfTQW&*Ymv#v)7aG#UD!fWMsgi7 za`n2&iZ@-==N79gC;r$nBUOtKsnUzLisr>)<QaALQ;Zcg>2S#!(}E=ShL$(J{9yRH zOP8$DQg7dUs%&1~D^d)5%w6;MvCX%|J_d=tHfTPh4^~AU6{oLFE{E`4&SKaFQ1{q+ zO{t&%oy72exz0OHb7>NzSi0<yH@`YCe)&IEYuC2>)4uz=elkxA(UxBK|MOSQZ;E2+ zvcyp|d>1Ppf|H-p1|>yaKz{ou+P@`shL;TN<+}pTlc=bqqv4Y-xjo~dGeLqF0kbde zxvov?^-uNIe)rYwOW)W&u1K<|_qOh?%sD@gJ<qBBBXPhC8`^7+@VAr?1Nsix_R;>r zaF0-Npb(#7;MKJ5ot}1TQZAkCJsqQ)V-1_Z*i3}65fx~rY<aR_E<MIYhO7P^=7it) zrq{+xO-lOIdumc5Hpgs#RBAFkE5^y3-e8bMDh}vO|D*TUxqqE9MoVAV{*FG*gDs`l z_FT~FP{SwB+89f-$nC!gyrhNDC=1y<EdX@aPsB_5H*G_&cMs|3<Npgiq-`^YoYQLY zod-4d`}cl!Syt2eQUp66{vv(OV@vLcBZBOxM@JnjSt1lFeGJL_n0KIm1n3j94B7`A zl62M8)ctAu>LW(fyDVNg@jtl&DYnCY-mX?dd++UVulCqwGa61vDZ5OHWAO1ld*`g4 z5pzeCTsKBXitWVlIE3&xi{mjsr_ADL@+9>LX_De7gP>H~P}j3L{*6mVIuhZGh-8AG zZM@VgdmNH}Q6@g|868m%C9{N-&CS+6wn%=lVNh{k$5X%49&VgJXKwM|UeZOf@p?K| zH~PQE$(%>5(jwZthp(J-Wv2^PYd;HQ-ngzomqXeM51yP-nOd|&TmFaD+wXb0?e&gL z(fA2=YU)c98_d6*qush}amS5&&v`*P6sqV+6{4!loOaPa?r5{%?U}7r)K7gGU9EI9 z%eR765smi!pJugtzT1M=v`-J-zh!sV&Xo>r^4uZ!ef&vTRd{B(zrbIJ#j-aXt_b8; zhW&YYUApAuiIfu-*0bnFKTlT=fn|kVe8t|1%kiIw06bUK@1}rb_Uxt@aO-xhJG-2% z9j!a_c)xezf35aT-dm93+#B9IJH=Vs(K#6x{*Aw3Ty)Rp%)vE<p&+0dKo2`7;F`)% zDWF+^UUN>wHI1QiKsN(Ag=bIkv!|RvK=kZD*92Vj>_As3E_!x`Ya%Xsc804Q7d^Wu zWg;%Rw<x6?7v0;5dpr5wPTbo`_x@t$-Fcd;+fALmZ_&B6)~4m~mtJpqZAhC{^0uSZ zZ#MVT_I<F?Rle_F8|~fI7e7>bVbg20#$%3Vzklk|#oEtCyt{tpb(0IU_g=2rK51=_ zN^O?!xz@*8A8f6?@nPP%BS!somv)J_`;Mv?pYNj0X>@G%i}!aKt2JDD$0v)gZ1t2@ zIJVjCEzkMODy`MyGxIv-ja;j(Y<S?w;Y;UVu9fe2_DTPg>l!$;?<e&9P3rPpzf6*? z84<Q3V!~V%k&~*7P{48X&BWA}ZCj?goGl$KQzJ}mJtAksloaQxNvrblw_??;Al+GD z?ODv)v%uQ3n6+bZZ!F&%i+f}F-d$kXUCgq(z_PoTWtX~gYA<yGBmM?)5gVH}$iYST zIyRVqix|2D_m=RzHMqBi?|p@PU-3Ox%7j{13boq=Hf~}zZUP%OF>6oa-buc968BEh zJ*~l`zxjM#-|_2`Bv*QbT<Q}%Of>Z`nh)s(0mr@f66so`wn%e1TR2*zMM&4QHVYlj z;tpSpL0rv)Xp@pt+a`qu+YN*0#)BA?GPrh7%4pmhlrjZZF`x-4Lvf8|XeyxTfC^Hs zz;!i4*8?g9RE1}&_}MBvTSd=mQ_np%{J`GDHzzsR%*bFl&(8yu8UL!x;(%lRd>Uk{ z_N}_OoUI(Kx<m$<I)Bo9NXGn%`H+n5lePoiUa=kU;mL<F`45K=)5Px&>FCeW(I3*$ zpQWP)(ow_GQ3L6yVd;1p%HU~M22VRn0nvp16w2UJRtBFs%K?F#wap<#%~^_?LyDTS z6y-u0<gzlzg)+!xWiSuQU>+-jd9HFm^z1U+TgLa6;odU7w+_#)<7e05*>(Kv^SJjs z-+LbSp67cX;JqL4dynGRqx@?=n4Hf{o(U$;WF~LJy={DNH}37`d#fOot5_;mK`K|V zr0&PP{d{jf?(Jtu{rHXt*UwsWbY_ywOG;AlDJckQ6Y#KkYV)2hXLCn$R0H5YQr!94 z0_Wn2N6Km!YrbYrt#LiJaJcoDPR;VYH_fuOPqTb{MYA01rdbY&(JcFfG|Q=o+Ic0* zzWsfp=YFp}G3=G2Umh&^K^x@I9#}skxJGNafBeKlZ*Hs9EFZ+xEZ=a}!j-S={p`-) z?a|KOm$CZOMLW|p%W(l(>wQm`rhPc6nfB)&3NtqrG+wD)eBbJF*Aqp*)UubJzxiP1 zs~t7V=gT#ZGtaT@;M(`K>sEdJ#qF*KKhP|Pp=+-nobud1A6uHKz212Kx_dY8{8;m4 zjQrJ+<BhM;TD*DB;Hf7zq-&PbJ+#fCwzCi1b=f;wW_H#CzUo1vwC>&B$m)95HRH4s z-@S6~hwH9wsaduGXxHBN#QJp~4fSb{e*N7ijy3Z(X${*CEAO?lXpgq!+%NrudYzoB zsZfXITV<Lm(6)T9L{r;nEMHgERHcz6ZLU4_YWh<{H%)P9mh-bUmFcw9MrzF(`j<X& zRr|}VxhqXYfNyr~+fjALp5xl|9<MtuI{SjBHOq#3%@T{$EaiNfW!0@&PJ+`chjD3^ zY=&l8E@>8T_3ez*jGigZK5hGSOmPnHIJ|p`GdDFCcP6!+ggXVEg03mfIjM7SXKshN zUGO(+?qF!yw)64p^3>(HzoNqm++UHk0{2(7U4{EwQn%p#)(%^7e{0rO+~3}IJMO=o z`Zn(G>9_}P*^|9zI9#;0dvX7p)NgSAQ0gK2JMhp5XzR9zalbajnTiW{aVA(QE&&Y$ zgf_7EZE;b%i}CBl{Hw>=5nFJ9AAhrP;T>@K+Tx;iS!kEV?fL@ht3v|;5x)Lt*Pq*s z!mp$F*U^AR>(D?z)NU-=jpcUJ@ar`G)r)&xzUOtO0m?=@AMW}1UM1R9a=R*LJA7?D z6~9(FGjI(ARD*Uk+-@P-E#!80qTQX`?oPD3liS^ec6V{R6==7D+pR>qmE3M6+O6bv z52M|~+-@V<ZRB>Fob7RxPG`JrlQR?76@Z>byQjI`D`@u$x7!JPI~m_j;M>XgUPHUr zxZOUq+sEzp1K)new;%ZSGrmvJ?o)1e9PN&CyA!x~g72LGT~07vPT}4uzSqo^THDM; zTs_Ct4j0ko99IS|qDymETU^Aqj%e4B+jT;_PTZ~&+I8Y~m!jRJ+^#>`_2+ikXqV0H zve7P^+YLm!f!r<!?Q*!?cvt({@h+mvcvmJaqDwB?<#M}Xv@7Oz0pJTTz5wtA7~c%E zo5Ag7qup$7HwXCUFupm!H;3`fL%Vt0?m@JBklQ_kb`Np8htTdJZnq5WmT|kaXt$Qz zJ?ZLzjeM9#_?v|ba|vESTU<n!=g{ssZnp#Nc5u5LXt#sgJ&$(JbGvuZ?p<#89>(z= zkK;X88X%I>576!dZg&{%4s*LB=-(0U-%<Q}lz(m9Ahot}1L9Vb2JLVWx0*Ca!$nw{ zHfW2BXCvBO%<Vi4+GEcaQMV(0?a06O#;?8k*Gyo^WGtD$lF3-I&@PMHU5R#Aa=Veh zGLo@ejbE?kU-R&59{)NGSf(+SX}~g#vE-v&KDVnvyDDy14J_4+WhQ=|$-gefuZ#KD zyMg6y#&S2X+|5{)pxqK~_XyfO!tEXfmPZ-O8vMG3e|-kOKEuCm0hTR{Wec!uVJzFw zZX36I9qnG{cDsOO7h~CtUw8AbpX1lh`PVOi<qO901+aX<SiVBLuehCtb{e;Hq_nSf zq!4voDQ$5P?OUd#;vyckN@<6Sc+@H-4HxmK4cfKgc3se}3%9!*ST1KQ-SBHS{xuuF zX7jHDfMoz<8IY0zi00)u{5p<*%}Md#{2^Ef{OyNpC?GF>_42Rzz?aYX^3j8Q?m-B@ zhWOVoFozj)7?{J1c>#W1z`rg;uNHEz7N%qZqItOp_!cp~<!HB@+pS3HfWvfYeym8z z!bS6A722)hcI(k@J-6F{b{n|e2DID2?KYv^CT{l<+P%c>UdDT0=J&pg_rA>U-HCQP zx!p%-_Yt@I82CPBd>;ef$Bb`3+U@6d$I$K=w>yq@$GP2cv^&o2PNLmOZkOVQeRC7H z&T?nsqETLedl&G%_U^W|?cK!HG~7$$d%bb5H{TnFd*k?CF7D;>y#m}T;Ct18su@}U zXaPgZ04-x^J)rdry#eSAf_A9Iz8+)A&vZ0t(g==v?QZwYxaLE`2(BRbFSWD`t9{!& z0oV0SohoD?AMPD_xDXGN>JLvLSUo%y4;SL$n)dtul9xJXdR|FhIY(-%u^?#G2{9tx zc%ts|C%0rMH$97b(7IuBTnHBE&`^g)5g-+(kp0P${dp4ue$(BZ`}3x|9l@$U+33$u z^ym6MJ-=V@;4i;b{mHlOPrji){ir*w(4AJ?9RUs2yHmU5i9fv6=fQ3|M*mF(HW+bN zV&sFQduI^JmO$B(Q3^<ou-AG2=-K(Q7QZBv*pUN#=R{Ksw-}k+tV5`p16A{ebX=H# z`suxE-{%pn+xfq1L#S}jNGWhNkH$s!7#RWj!DNK*9N;^rA)R+3AUWEzZ*ElHa6?rC zHCj7<`fsW>j8^co1yHu&(F#b8_TlTixodxTzm`yjDuM|AIUFsb`^YyLAs|tlLtShN zd`%nT*m)hgLLc&|g?GQ(HuOqc9Urm7Fk~PR%mBc<JPBE2AZyIy6;QU0?7UwLFMVpy zv=0R`FJdv4&f%usIo^UJSlbZz8gl0ZBs+Kh`PpOri@#f@<EysAS8c#2h?fF<DU44* z65qD$gZJdmJDSD#g29_CgT+13JN?t6G*~B)IeD-Gl7nq{+iji>pU&XP0eJu}gWTa3 zqr(5WLW)o|1FB{$cLI`fw{GBdSKfK!o8RgEvY}frDCs6DF$CQlz~|s`3P_H#;jHb| zj?SF}IzAh^1%r}qva*Bv_k+7RE)o&}Nqqj=M}9kh_3a_Thm#kAB*q4z<C{EOg37p5 zgb;oYgx@nl0m+H+!yE0>XFYwxW=4oZFsm(UpoH%VlmHdRlfZb=O?pm1664y{%O3k= z+}FS1Ay?*ChAdMJr-S0IU~gr9D6brcxKSTZ0OJY9C?JWkakuWvrp!BXvBGFkevDBl zKY3m*Av_L*#~Go3Bo$L9fA(3+r?%gxBjg?$s7OenJBSTxgzp&e9b+O2Na9-*K2)?S zd)@#YpLOb1=Ic{e|5za*I|^h+-K44nB&GTKsbhvsyyz6j1HDq2Pt-H&0o;?cQ_T1l z$i8J{0+PsXp8DG@zy0t?6(NH_6x+#5u|P*Zi_#+M-6<eE#X}X4<i-EoeD+n%9_uay zx-y?QVeXyc1A50M=m>Bf;m!$2PPVz%pTFp$^?R36=O9^?Aq!u{T^=n!k`zYxFChFE z^Ho5S4{xnMzP;VUoz^kwFi|a?!#zPdXcao&fkvtUnZ~^nkR;uZ8$P{eXzHXt=)JQF z3H3;jPV`L|l0(3Eh$$x^**VvcqHTj-*t1*5XW=W5C~S(aUjy0K+&KZs&i(3dovNF^ z@k+Ul%)$mB6Knt=+3*!`eZ{y0B-xPFb<nV9XJ560aN%Sz-;7`Z>EpK1woKk<>O~zt zCP?@tFn{Sr{2PA>8m(KQd9SYAII(TjK!v$D24>uk!pveQFn<PopD|_uNz8A3zT7|N zomc<F<M+)7g{p}JZKAu3&z90{#vA#(9C3UfknVFMN2f!>_3pkmWpbBa?cTczNW*1$ zNC5$5v|1218KJK#OvSdaC!(Jp0p&-`bOA|}EgpTM{eqS?Er62F%hr)b_fy`EpzWQZ z%+v=!`vLb<KqK{@R)5y$tY2(xw+LwYOROeA=X;D$|J7OhJ}|w{%ok9mj%n$=w|w}* z!~=dJB#u3?NG084OaPQr)&f~ABNLF6N|_gy`H|{$N7JV4uy1e=uHE1s$v*A|EGz)8 z7Y_R-+}-5PfsZTG%j)U0$kSc$M4J9|dxF)|NO8HR;OU%ZU+wYc{pNFhAU5t8TngPo zk!NU;Ft}j3U2M4pB&Vy)7K=<^AkERJ5szd!y!GX}x4zunp5P5)BrDwmYgf95qc2&% zTf1@TWJgEp3s=5b6q~p!c&>k>g*DrG=*@ZTYzj!KT^W+sx4h?-WJubqbY6iV+X$wO z2)K>VWST_u>tW~32)@lnzhr(vVNv{XBNXO#_G2s}u-VUq<t%3*LYt+)B2Uv%SX5u0 zbPYv7=xW9yf<srEu&i_4j6f0fMILS<=*x$;fW+qzOFRt_Cv6~v#nT{zV4cJr8%#&c zrUsA8puXya8p@NduINOD-U*6TWmq~f4V@?k78$a(V%d<=6>D;VMXc1#ST?2PW34_N zSnlpW=YlsJ$9dhu%bupudPraO=(W`}zH`Cka~rmY{t=Lzi!udb?M=3;Ga`mPc}yaX z*wZwofv#zYB+{6QZ_w@yOnRATG_Oo89-X)=g^!EkgcfUqj<sRw6Odf$$mG3Tx@O3w zYmWO@wK?wJa=&uiw-c-{U31-4hydJ*{>bc&8kG{4@vgy$Zwfw(Sm#L7sB$4LxhyU+ zw`IjL+Bp(Y@Eq>LXeUL)b4*yqI_Dxfz7Tzp^#qoI>~`lM4ltRK>~@bJSgpaQV+~$` zhh_50+J$pmS0F$v=AZ}`o9AG2*DM5%=K_oT$e+R@1$S=Oxh!r-YM4ZAe!=`8o|IWM z%aeF_XIw%&MA+Ia9?e}-@qUVIR1^%k>W`mgYtT)?o+15dw4Cy`5Rj@c5~Ru?eGJY2 zF&iWSjnK`A%ucDkK|M7jS^uIzXIvt<A)<)gP2Bma!BoT%3(z%L8X~!qF2!uTyJPKm zcUR`lc!ZV!D>0i6F(dBCtfT6Iq$@)FsklTJMDX9-g;UO{2>%mx<nAwtMd+obO<6Cs zN*Rc#rBH7of@xN7ZBmL6&8z~VQ#)Q+Ke_c|Z;}ZR&J(Y!Y@DiU;gUu<RbsL61xWn` zyFLPvu8+*K$}UDs!G7mp<UPcE5;+j_eEQUREAk<?qkpn;OBq`=D>q;oY;aFwVsCJd zCRiEUfiSjY;AGNQ^+6GPzq1SaAWXH$$fTM0{i!n_eIUIllgU;rJDr`8=@9}g@;_#Q zehpY&V=VG0dxb@fWE1GINvDU%F`4P{G)&{uY#QZO85?tSc}h0I(Sod(!z2LK%~7|M z=?G7gIg)u+)d@wA0V$mkq!vRFp=<L{2BnNeUCSh3kx5#GMGa*Ds#^x62n{2`-ewIm z2z?opLNh_0CTzj7b?8<WUL-(Gg1de8_B-&TOqpArL^^0NE<pp49x{`1nd?@hib%9% zURq(1y1<dr1=#^X3Xv%=lfsokaz_(U7EmZ8lAv3=Ze=xzT&_t?ZZFtQYEl+#s3-N; z5AQiVlY|;6<xHbUj+i=v)Xx(go_+B1VZR!cmp5k2RbwYkxN2<PNT|lhlr`LUHfi1j zD<1l*>p)pUV16-jTAgtT1thXvW(D*C)bj@}>cr=slv#}%Hu#Iu8^s&}h;%~g6WnJ7 zE%XL2nb?E;6l&vBRvQAkTJN2#<xsto1jQ8Tf=f(Uk(4!0*{7Y;Fipt0kkuzvEPa8Y zukJyLRJPfJ><<sJKYNg}j>C#208#~XOC}PWW)Yd;%14Tm)Q2p{QCM_F7j!RR2|=ZR zNkR&{7iQo=S^A<LRHV2Qdgo4E?}&W2`So|fRNTd;V)d)%?QPwBPANDg*Klk~+eJBl zksqWn<y9k<9Kkkz2v&XQ?g~FpK$2DRd#9>@N)7adHtVbVI(^~m05*y;2s{@T`8x6= z!WJxZht6d+fVv5j8kj$OKB)m&L#r=+(&f^p9n5e$-3+%wq5`n42-~}-BQHeCM;0}y zw@TU`N;|~M3)EDY1mkewVOmzmLJ-T7$We90C46y_y)y9?xvP9!BowmZNnug6^MYPp z=Ww=bq9S6riFQ8cEL2C3leX=t>`CMIHlJ+8aspUR=vYMkfEmjvU^&HDWEqyiB58qs zAS0=}B%)5ktPy;WGat*Dth7>C)QEOs>9^A<jDo0*FdK!}VDDdJdq3x7{@N48)k7>; zRt#Oi(tv6ilQgWFy^5qk7V)Sj)hJ$uK7TnyC=QXOG%Jps;LA?t%hsQj{5i1W?;S|5 zQDVdtvEX|=M<}~NlY}P7*;tR9%>jP_$vA_o`m%Ouj;jkw97LBy;e)wL^PoTGvHqz2 z-0xdbRM<gbQG~4mVXJh)ilP`ZVQawT8fNnUROkM2=b^1HMHF@nN3Yo6=tYHE4?qnZ zV2v#x>FCKyHq}2x_=hmchxAd3vJLYnmtmC4c$9<pe6-`D!VB9-M=#VHYLX)v>F&<8 z>26_;(=nX^>yBP;_gtiONr}jsKx-dXLRGHRRi!BTF{{dlVKp9RtI>LX=aZ}7-%w06 zLO{|Im!*5md=ae_i_wE1%Rvq@2}m+uZYPMYHV!yiwW8(5#LS7=G{Gl&CT4Hq=*Ohg zNnJ4xSxaag$9T|kyiQ9|dSj+#E|%80ytIDc*#~Mi`Lh3|ut<s7Gh)wJdM`@I#u}B% z-nn~;j-767c=y#^+OS!t<N^hRqC<-m=?|&EIRf1xa{e7?@EwO01vF4M=Cb%sbwr8A z3h2rex~>$J2xeWm3UhK5&q-N?X~ohBX1J4XhDCjonYow3W4V+Ul(Lx8ie(2PF+21~ zjHm`O_vLwz_IW0)+z6uE9GD#9XYa1Pc`o<v*gH*_nm$wekeehcCe=%&kNIeWE~thP zLM<v|%spSzU>d4q$j6*Ea@YMW*S$AFA(8Ba4{!x8p;<+>n^^(e1qE;yD*(CeK(1Q* z%2n%|?rh}phqA$W6VXe+DyGmAF@-F2L4MKM(uG4K59QF4C_c<FO4Q-Ghe@JjJ+XRH ziol+pd$L#-JMPIcKDoDWFBw`{t!#O6Mb{N<WKlk8V$`aFRpeUBeHn77YJt8RL*1<p zbvK3zSPiubL!~&7EIhTm7F9akaj|ob|5N>r$w5bne-5t6z#<Eotyrp{kg9ZrBx)MX zoUegRtznxgPkT{Vr1-SLYONKz1Ipw7RIX$;%xzMpVu?>OD7Wq_Buaep5h%z{5w3<P zG%`C01qc)rq?7}TtRYrdWLGi~Imy%`C!#LR+?6auPO><1BCDSj64jMCSh&s67jB~d z&%AJ(hlSfbUbxBQhK+L&M@OgP>dG|nBjOF1=b{Uz5~tyU9OG{`uE7|O{P3c+D*@LP z@a@H<5+#e~Ni_pqnZaF=UrDuMal-|6>n^Yx&KO{$lp{(#7Z=SDSxRojl8wG(>wOXB znC89=MCfrKhaP27w!$Jgv;`d6qH{>p*_k=C4IJ9W9Fm3n3W=Pqs0i+fi>EC9Pqo6P zX^TqXLR>U;cO6+W>}1oi`3j5Tb0-X_lRh9(hiV?sr3gV@${|Sk%@HdW4|JZ#$)*hd zr)p)BIYU3@;v(XveE*BbdmWs$CNFRJ&qoZoX7t3o5o7a)Oq@6&7q%@`ErKk+S~uBw zgVo-dA>_vBRNuTjI-a_;tiYdNStR}u_Er@6!`Oe<v81G?<K=vOb)Z!4&8rR+gp2WG zRwnl5z-F{<-Zs-ke-E;;9F~!mF>$bSSodK$gPpl)xqyBBd{YKH=cLU6ygY3={%%Rz zg1>L4y^X)$q<w?GDDqCjMbO27E@mhTP!>a@0F7d38lY(mRRXGHXd$4546OjPf}xFo zHZt@IpjQ~$2WTHd#{nH@s2O~bW-fYfM?f7J>JO+tLpgwQ7%B!-%+PE=vl)62(1Q%E z1+<o-=Kwv&(7S-%W#}-V!wfY>IcMVrJW4<pGt?VUZ-%Y}bR|Q1fbtls0#wD&VnB-- zdIZoT3_Szr8HQd5^g2VI1NxjH4UooAODr2&rqFx40P4a}HlS>V#sM0~kQb1bp%9=D zLkj>cU}!m@<qWL{w4R}t0KLS}M}R(J=op}545dJ0rMT(67XZ3|p)^2g42=Ucj-diT z1q@XKs%B^bpal#q1GJ2x^?=qh^ah|e7~1PTr*^M9V=w{@`f(X*qDjqh1WxA>-M<ob z&1PG56rRyh_OI?+_G;fJ+cf=5UpZMbv=uT#%XMKQczhOCPG|ATNkGzhmWL*&9w`N~ z5PRho>QPQn;A%D$i&Abyu`5OR<mn$a!O|nHY>Z3<3Xj0|1FXjgj=H8}L=-H2^y0~f zI(*l!t?Yy$$lj#EK$LIul2k9{HZ4n0(p`*;g6wkFv0U3!tF_GrcR2#rHEgpsxC;nY zLF_aHvHRg^xs6A5qeODY10T|(`;eku+{~Sh@F6?05BX4!mhE3!cKc|-9j^^{yn6ne z&xIA-X#nmtVD1P=a%bFyo~(modqMvpLWI8t!eoLlnL1%ab-I}_Ss+Xn6Gm<clZZ-` zwHXaXGg=SRiJc^-XbduCg}BJt$jwX&izLuU5NM=MAW;f$CeYO&(A7+!&3md(Hn?Zs ze6>Cf#t3NQepEn{OV>D{`MJA!?dQBa7LbgR$z9y$DAjUzKP2S`GwYXQQUcZ`a3%h= zl36czXIVxz4JLh>Zqh{=zuBbc!=&f4Ntc_fEJ!X#T;y^+&Mj)$&E)BZICnRWbISwM z6%sWe!wC6@^^m`)M>kvaDun#2IOH$)s3|OxQ%x|QCi-~9776osnqoXnc|3Bjw)E~* z!E}y$7BahYnW8zESb$afZ7$Mp<PFH<vu#vDb%Shda}X+_8tHt%Izwh6oj;S)`EpO3 zWdL_$0C(#H5IZ8w16YCqEa3sjV`wE3!}Pfu)8}q|`iKn`=IOHp(`N}!pRM61L(dKv zP-u&23lMG55s5t&W<=Y7Xd5HC>_Ew17dHEFom5aEH4oF>lMry3$}~-PUrn$IzD!5( zg<`34@1N|3Qc$}v|90u~Pi)*U3)pVVzui3l<O!)ZjM)Xo?9v&t3ycA*GiEm!vzr;y zZ})~@Kk|e30X=kM4O}2(qX#Ysl7WkFFloQxz=eQh;6i@bK@Q2lqAx(%FLcU^eI{ng zeg(>Y#gx5mO*nY|fxd-`vZ`1p9i{#0s6L=2T)I1-U`5%fpe(KYPo9`O`J!(x6{Dg$ zu>w-u(Pdd&F^1c$l4SXq2u$tA*!FV{TtKqcOMW@chSDQJ>5)36M}pFTbxL0iN?*;C zmit2`X%x4s!R>0D+hWU*ncFkL?U~H&zN1Rqt+F@vwCRHbX-tQ1;2nq%0oMEAf*x^k z8dIJaqWYk;(Q$0KKd$G##l8_UZ%)EJIGIB3f&7%S6-y2l#W^XXg(gX%{W+sei?<0W zL9Fz{z#_M$DlBU5<YO;OzP?BoJ9^AIp#bkFNSO#M@=OV-)Y4>hW;a%~yY)J*-H3hy zRw0YI2w9L)llx$;T?ivi5Y|<^*fwP5NfolXRh-o=9owk#!h&0GQCJjFH-M-cbfSt) zKxU$D0#P?HQRNO?g+-BLA<WG}c(^3+Vv~|Ng1HDGzeODK>$mr-TTT`&X(F9Tn>v0~ zk4~Ew=%hi4#5aP+(uk|%1SG5E2KRe-;eeZF-_Gj6Hv?tec6FF^J9;AN_1>RgB7MRW zNkDQU6^+>Q!PKpjd#a%-f~^3-R_Fv1yQ|CuTLprxVuHy7LL}$=L^yvBxcvarYq$Fj zf)(dSfb(O)d3n@~%{+P(bNNwyE<cL73|OB>YcQAB@LZOsw^~Q=GTiK!^;szPbD7=j zofyGR9)a8}t*|JTe~c*a$9j}k?E5kW?6B)AAJ=pYMINsr=>RftWzIrOfQ5QkXCWp4 zU?xMO+C@kTEOKWetg{Hd)FSs43=IV|lA+OnCNMM!5Q;DHcN#8eR{Wig3xO^C4da@H z9>}Ay)HoDBKL$TP*7+%Rt(p0`AJo{-)JUB+VVd{w<U4iIwb`114Ki{I3X85#*G(Y0 zO;~gVBt`ew-`g)cxp4e!*(-x7ng&xeO*chi6Q{Xj`7lNKY>K|$GPl#YzkcfnAuEwe z(RS`Eq)4w|Ico=!0@ekky?ZLsrDTZSYPf3ls9Wa$Q<*VEnshvwj!HCP#xe+2W~>Tk zj6$mN1Rlv+6?)D=rZz|CZ4L^i0P7+?5q{i6R&Mgt9{I4^kCp?b=jaY}4*CsPJzRx{ z>CN)s1WCL|5z-FSfbMXK^_$rEYo^@uh^#%&ku`Z<knDn*qB-udc<m$}e2yD7!#zoL zVLG}%-jO_GNItAK2j*bCm*WoV4_{BPdUz@xCc4YRhvdV`ER4tC$LoV1kHG`hAI=5S za{1xWx4e0@<bu@~3Q6=@(pjMjufEMd{}u>oP&dTT&1*gZ$u-~Q|9ZCKt`{4>z#5b` zL69e6*l7sAN^X}CE|#u74?}$(=3Nj1lC{F}2n)#@gJ8es8i-mH!5*>S+RUC0T*atG zq2;yw9*PuBeBVJ7_0_n$;0re*$x?%eFkqI=6nr=(4Hrd(XCWdyiz34KI~>>542=Z@ Hv;2Pnai_dq literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h new file mode 100644 index 00000000..30c4d02c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h @@ -0,0 +1,49 @@ +/*===------------------------- movdirintrin.h ------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <movdirintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef _MOVDIRINTRIN_H +#define _MOVDIRINTRIN_H + +/* Move doubleword as direct store */ +static __inline__ void +__attribute__((__always_inline__, __nodebug__, __target__("movdiri"))) +_directstoreu_u32 (void *__dst, unsigned int __value) +{ + __builtin_ia32_directstore_u32((unsigned int *)__dst, (unsigned int)__value); +} + +#ifdef __x86_64__ + +/* Move quadword as direct store */ +static __inline__ void +__attribute__((__always_inline__, __nodebug__, __target__("movdiri"))) +_directstoreu_u64 (void *__dst, unsigned long __value) +{ + __builtin_ia32_directstore_u64((unsigned long *)__dst, __value); +} + +#endif /* __x86_64__ */ + +/* + * movdir64b - Move 64 bytes as direct store. + * The destination must be 64 byte aligned, and the store is atomic. + * The source address has no alignment requirement, and the load from + * the source address is not atomic. + */ +static __inline__ void +__attribute__((__always_inline__, __nodebug__, __target__("movdir64b"))) +_movdir64b (void *__dst __attribute__((align_value(64))), const void *__src) +{ + __builtin_ia32_movdir64b(__dst, __src); +} + +#endif /* _MOVDIRINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5c73a0e15a231a1fe836e5bc2ff951e5722fe333 GIT binary patch literal 13210 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 BB0&HE literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h new file mode 100644 index 00000000..d2014b02 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h @@ -0,0 +1,40 @@ +/*===---- pconfigintrin.h - X86 platform configuration ---------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <pconfigintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __PCONFIGINTRIN_H +#define __PCONFIGINTRIN_H + +#define __PCONFIG_KEY_PROGRAM 0x00000001 + +#if __has_extension(gnu_asm) + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("pconfig"))) + +static __inline unsigned int __DEFAULT_FN_ATTRS +_pconfig_u32(unsigned int __leaf, __SIZE_TYPE__ __d[]) +{ + unsigned int __result; + __asm__ ("pconfig" + : "=a" (__result), "=b" (__d[0]), "=c" (__d[1]), "=d" (__d[2]) + : "a" (__leaf), "b" (__d[0]), "c" (__d[1]), "d" (__d[2]) + : "cc"); + return __result; +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* __has_extension(gnu_asm) */ + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..2ec9e9213bc17cbd3705decfa1e0d2d977f6dfee GIT binary patch literal 12900 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h new file mode 100644 index 00000000..c62080be --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h @@ -0,0 +1,34 @@ +/*===---- pkuintrin.h - PKU intrinsics -------------------------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <pkuintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __PKUINTRIN_H +#define __PKUINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("pku"))) + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_rdpkru_u32(void) +{ + return __builtin_ia32_rdpkru(); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_wrpkru(unsigned int __val) +{ + __builtin_ia32_wrpkru(__val); +} + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..036ca7f899f31f95fe615b1fc732d2dd6cb55603 GIT binary patch literal 12606 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 O$B&)cP=6KA-v0sU!Bc7g literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h new file mode 100644 index 00000000..ee660e95 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h @@ -0,0 +1,294 @@ +/*===---- pmmintrin.h - SSE3 intrinsics ------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __PMMINTRIN_H +#define __PMMINTRIN_H + +#if !defined(__i386__) && !defined(__x86_64__) +#error "This header is only meant to be used on x86 and x64 architecture" +#endif + +#include <emmintrin.h> + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("sse3"), __min_vector_width__(128))) + +/// Loads data from an unaligned memory location to elements in a 128-bit +/// vector. +/// +/// If the address of the data is not 16-byte aligned, the instruction may +/// read two adjacent aligned blocks of memory to retrieve the requested +/// data. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VLDDQU </c> instruction. +/// +/// \param __p +/// A pointer to a 128-bit integer vector containing integer values. +/// \returns A 128-bit vector containing the moved values. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_lddqu_si128(__m128i_u const *__p) +{ + return (__m128i)__builtin_ia32_lddqu((char const *)__p); +} + +/// Adds the even-indexed values and subtracts the odd-indexed values of +/// two 128-bit vectors of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDSUBPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing the left source operand. +/// \param __b +/// A 128-bit vector of [4 x float] containing the right source operand. +/// \returns A 128-bit vector of [4 x float] containing the alternating sums and +/// differences of both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_addsub_ps(__m128 __a, __m128 __b) +{ + return __builtin_ia32_addsubps((__v4sf)__a, (__v4sf)__b); +} + +/// Horizontally adds the adjacent pairs of values contained in two +/// 128-bit vectors of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VHADDPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// The horizontal sums of the values are stored in the lower bits of the +/// destination. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// The horizontal sums of the values are stored in the upper bits of the +/// destination. +/// \returns A 128-bit vector of [4 x float] containing the horizontal sums of +/// both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_hadd_ps(__m128 __a, __m128 __b) +{ + return __builtin_ia32_haddps((__v4sf)__a, (__v4sf)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in two +/// 128-bit vectors of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VHSUBPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// The horizontal differences between the values are stored in the lower +/// bits of the destination. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// The horizontal differences between the values are stored in the upper +/// bits of the destination. +/// \returns A 128-bit vector of [4 x float] containing the horizontal +/// differences of both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_hsub_ps(__m128 __a, __m128 __b) +{ + return __builtin_ia32_hsubps((__v4sf)__a, (__v4sf)__b); +} + +/// Moves and duplicates odd-indexed values from a 128-bit vector +/// of [4 x float] to float values stored in a 128-bit vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSHDUP </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. \n +/// Bits [127:96] of the source are written to bits [127:96] and [95:64] of +/// the destination. \n +/// Bits [63:32] of the source are written to bits [63:32] and [31:0] of the +/// destination. +/// \returns A 128-bit vector of [4 x float] containing the moved and duplicated +/// values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_movehdup_ps(__m128 __a) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 1, 1, 3, 3); +} + +/// Duplicates even-indexed values from a 128-bit vector of +/// [4 x float] to float values stored in a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSLDUP </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float] \n +/// Bits [95:64] of the source are written to bits [127:96] and [95:64] of +/// the destination. \n +/// Bits [31:0] of the source are written to bits [63:32] and [31:0] of the +/// destination. +/// \returns A 128-bit vector of [4 x float] containing the moved and duplicated +/// values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_moveldup_ps(__m128 __a) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 0, 2, 2); +} + +/// Adds the even-indexed values and subtracts the odd-indexed values of +/// two 128-bit vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDSUBPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing the left source operand. +/// \param __b +/// A 128-bit vector of [2 x double] containing the right source operand. +/// \returns A 128-bit vector of [2 x double] containing the alternating sums +/// and differences of both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS +_mm_addsub_pd(__m128d __a, __m128d __b) +{ + return __builtin_ia32_addsubpd((__v2df)__a, (__v2df)__b); +} + +/// Horizontally adds the pairs of values contained in two 128-bit +/// vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VHADDPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// The horizontal sum of the values is stored in the lower bits of the +/// destination. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// The horizontal sum of the values is stored in the upper bits of the +/// destination. +/// \returns A 128-bit vector of [2 x double] containing the horizontal sums of +/// both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS +_mm_hadd_pd(__m128d __a, __m128d __b) +{ + return __builtin_ia32_haddpd((__v2df)__a, (__v2df)__b); +} + +/// Horizontally subtracts the pairs of values contained in two 128-bit +/// vectors of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VHSUBPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// The horizontal difference of the values is stored in the lower bits of +/// the destination. +/// \param __b +/// A 128-bit vector of [2 x double] containing one of the source operands. +/// The horizontal difference of the values is stored in the upper bits of +/// the destination. +/// \returns A 128-bit vector of [2 x double] containing the horizontal +/// differences of both operands. +static __inline__ __m128d __DEFAULT_FN_ATTRS +_mm_hsub_pd(__m128d __a, __m128d __b) +{ + return __builtin_ia32_hsubpd((__v2df)__a, (__v2df)__b); +} + +/// Moves and duplicates one double-precision value to double-precision +/// values stored in a 128-bit vector of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_loaddup_pd(double const *dp); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VMOVDDUP </c> instruction. +/// +/// \param dp +/// A pointer to a double-precision value to be moved and duplicated. +/// \returns A 128-bit vector of [2 x double] containing the moved and +/// duplicated values. +#define _mm_loaddup_pd(dp) _mm_load1_pd(dp) + +/// Moves and duplicates the double-precision value in the lower bits of +/// a 128-bit vector of [2 x double] to double-precision values stored in a +/// 128-bit vector of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVDDUP </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [2 x double]. Bits [63:0] are written to bits +/// [127:64] and [63:0] of the destination. +/// \returns A 128-bit vector of [2 x double] containing the moved and +/// duplicated values. +static __inline__ __m128d __DEFAULT_FN_ATTRS +_mm_movedup_pd(__m128d __a) +{ + return __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 0); +} + +/// Establishes a linear address memory range to be monitored and puts +/// the processor in the monitor event pending state. Data stored in the +/// monitored address range causes the processor to exit the pending state. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MONITOR </c> instruction. +/// +/// \param __p +/// The memory range to be monitored. The size of the range is determined by +/// CPUID function 0000_0005h. +/// \param __extensions +/// Optional extensions for the monitoring state. +/// \param __hints +/// Optional hints for the monitoring state. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_monitor(void const *__p, unsigned __extensions, unsigned __hints) +{ + __builtin_ia32_monitor(__p, __extensions, __hints); +} + +/// Used with the MONITOR instruction to wait while the processor is in +/// the monitor event pending state. Data stored in the monitored address +/// range causes the processor to exit the pending state. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MWAIT </c> instruction. +/// +/// \param __extensions +/// Optional extensions for the monitoring state, which may vary by +/// processor. +/// \param __hints +/// Optional hints for the monitoring state, which may vary by processor. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_mwait(unsigned __extensions, unsigned __hints) +{ + __builtin_ia32_mwait(__extensions, __hints); +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* __PMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4ce0102a326548cb905721cf4b1dc4b27499bcad GIT binary patch literal 22974 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h new file mode 100644 index 00000000..0aa94aec --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h @@ -0,0 +1,59 @@ +/*===---- popcntintrin.h - POPCNT intrinsics -------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __POPCNTINTRIN_H +#define __POPCNTINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("popcnt"))) + +#if defined(__cplusplus) && (__cplusplus >= 201103L) +#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr +#else +#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS +#endif + +/// Counts the number of bits in the source operand having a value of 1. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> POPCNT </c> instruction. +/// +/// \param __A +/// An unsigned 32-bit integer operand. +/// \returns A 32-bit integer containing the number of bits with value 1 in the +/// source operand. +static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR +_mm_popcnt_u32(unsigned int __A) +{ + return __builtin_popcount(__A); +} + +#ifdef __x86_64__ +/// Counts the number of bits in the source operand having a value of 1. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> POPCNT </c> instruction. +/// +/// \param __A +/// An unsigned 64-bit integer operand. +/// \returns A 64-bit integer containing the number of bits with value 1 in the +/// source operand. +static __inline__ long long __DEFAULT_FN_ATTRS_CONSTEXPR +_mm_popcnt_u64(unsigned long long __A) +{ + return __builtin_popcountll(__A); +} +#endif /* __x86_64__ */ + +#undef __DEFAULT_FN_ATTRS +#undef __DEFAULT_FN_ATTRS_CONSTEXPR + +#endif /* __POPCNTINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a5efb66b37591e5e9215659cba53cce324371ad7 GIT binary patch literal 13468 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 A_5c6? literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h new file mode 100644 index 00000000..36600b25 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h @@ -0,0 +1,61 @@ +/*===---- prfchiintrin.h - PREFETCHI intrinsic -----------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __PRFCHIINTRIN_H +#define __PRFCHIINTRIN_H + +#ifdef __x86_64__ + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("prefetchi"))) + +/// Loads an instruction sequence containing the specified memory address into +/// all level cache. +/// +/// Note that the effect of this intrinsic is dependent on the processor +/// implementation. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PREFETCHIT0 instruction. +/// +/// \param __P +/// A pointer specifying the memory address to be prefetched. +static __inline__ void __DEFAULT_FN_ATTRS +_m_prefetchit0(volatile const void *__P) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wcast-qual" + __builtin_ia32_prefetchi((const void *)__P, 3 /* _MM_HINT_T0 */); +#pragma clang diagnostic pop +} + +/// Loads an instruction sequence containing the specified memory address into +/// all but the first-level cache. +/// +/// Note that the effect of this intrinsic is dependent on the processor +/// implementation. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PREFETCHIT1 instruction. +/// +/// \param __P +/// A pointer specifying the memory address to be prefetched. +static __inline__ void __DEFAULT_FN_ATTRS +_m_prefetchit1(volatile const void *__P) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wcast-qual" + __builtin_ia32_prefetchi((const void *)__P, 2 /* _MM_HINT_T1 */); +#pragma clang diagnostic pop +} +#endif /* __x86_64__ */ +#undef __DEFAULT_FN_ATTRS + +#endif /* __PRFCHWINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..83dd339994a7f8aa8f5cad97f1e05212118a20bc GIT binary patch literal 13458 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h new file mode 100644 index 00000000..0a04f7c1 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h @@ -0,0 +1,37 @@ +/*===------------ ptwriteintrin.h - PTWRITE intrinsic --------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <ptwriteintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __PTWRITEINTRIN_H +#define __PTWRITEINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("ptwrite"))) + +static __inline__ void __DEFAULT_FN_ATTRS +_ptwrite32(unsigned int __value) { + __builtin_ia32_ptwrite32(__value); +} + +#ifdef __x86_64__ + +static __inline__ void __DEFAULT_FN_ATTRS +_ptwrite64(unsigned long long __value) { + __builtin_ia32_ptwrite64(__value); +} + +#endif /* __x86_64__ */ + +#undef __DEFAULT_FN_ATTRS + +#endif /* __PTWRITEINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..325516db9a540b55ef426e64f0217f0343e1d1e1 GIT binary patch literal 12742 zcmb7KO^h5z6`t8x0?f*Ckk<%%gH{GbwsCvnjam5sCMLEMM~;J>4TK-j)O1(Rl(+xf z)jcz7IB-Id;KTux3qo9iI9L`3Zm~EaVXnY|0}2Pk1^L7U3uk#%)m1Y!{ko>(!^*q; z`qlgS-f#8U-iMFa+kfiydxLS7&_O)7O8H)y<%5#)auCvRz>8pz5SE?~dd~zgNk^SX zy=hkLv2^5xte`=e75iUqJ)!sXTz^pUV!+ZMu0lF^^Xkp*!H|wv>IYd!&yRZ_KEL(O zBa0>|_jCE=KaVfjPll}I1M!p(d_NiTl9bdh1rtLWv*AGMGPtl~P9@2VrDXw{0;#Zy zb)J+7e)yw`g{VZY+#HPJN<2FH=Ldgmc^Rx)6}UzbCE^*kB-JKKNIAA1;3`aJU%ap# z<rj7wnn?Qyx1_dF^ilHpa326LCHd+zc^M9~EEa?fqe)hI#@TG!k6B_dvyLNWmaxE| zvXFwytF)wrA$9>XVlnlHMK<N?g%^G^Y;jwVS1gS(!PQ{NVMCCd!~nq6c;HnLkznpp zm$+jZvzZX#{%^l)%gMz-Bcrp322{FHlro1@(%=gFoQ)<VUIM;lbVXOPgcb{AF8S$% zNk^|ge8U#sL`Rubfdr~CvUOyXdvP`zuGW)CBu|EkOIyCr2SG?9JY*JaQ5IED`qyvV zyk;G(Wi#T-M7IbLO|if%$g({~eU|xAl?EltQodlm#XKf6f;jM7!<QX7DuM`E;(+>o znk1`S4^HRh9>0fbS)~ku6@9dz9-c9^9pHeJNDP={svk)nJQ&lJM@&JDE(+&a9;Bs1 zXX7_WW}(Ue5_e7vCnS)7`P&y>w?Ql-0kw`f22No_)&~P`)Kk6>h6Z5z37PpM2Ae5$ z@dT-Bm2e(iHjHK65rxuRLWWc&M7qGGE1w8`9>09WR@CSNQUZTLWAxGIiP(~YSr$RH zjb<E@S0huRv~^tP+wcM{IJ5>I@y)nPbrYW4xoAnQ^)k8#G0TS;Dez)0!3-6nOg*Sc z0K#(LVuvc17f~?A5*A8bn<8x_beBh?f>M7J@8>efp4}STo>eg@k^l+zRtsE<5D%l( z9Rr|K6i_dKd{^2T*QFk0aN%nJh!DpFfa4VwC1esK?`RiFCFh}tCn6nGaTXBh5$sk6 zJsnOofH!hlXF~Og2)9{T1km(`oZZ8-hzK^>e>4O(nB1fLR>SK;LJ3IVtgJhwCkKH- z0;*c>tQ_X}gmF9>7z)*=2~Rc>#we`@(A*BW*AjVzCj(j(skFiACqJ=UWQAN>-bp(2 zoH~oh`Vih-jTYlrV|&z2lRSu%D!v=uMc{|NF(s_b_pnA0CFiIkP*Ttl5yFC-?5usL z2v($P62hS=o<DM7DW)@3Jx~0b+6e`m=8b4d3l=Enc|*b_z8fAiAjxu?j%1I}0Len= zrj*-RM9VFJ?JHytNX~?AKX`ZD?w@4gn(NluF3;&qM5D%@aWbL7DtqgkA{w@xi(PUG zIB}v9{3V1rDoQ|?OQOqjW5UOY8q;>dTaFX}SYXhJ+@pvb+VaMOkcXP35tUX~5Hw;m zUlrS`2QQ|Ok?qo?$;|O$s)PQcq;g`!K?KqS-k1_-`#h+23qW7&z-zosSdpa(lyMw! zk_rYy585v@lq5mje953gsX!zM74(s0keA~E1ePfBNTKE=laLx#7{*ZJlD7Sa=+7#s z#U-6NWQL-x4n?KX1{V);E5rLljyTr)4kScf-~}U~Ino90n9Ex5yW_6fR+P(Ak&ESg zP>8p&-pLfGhF@TR0gENe4%%hXyDB-r94{tK(aJYkFpHei7@FU9c4FZJol9(=h*}<! z94VwlO_H;Y5;ZD{$;f79k?70@a<5n#2xelXR@vN8!AQ8WgjrVeeW?Eau!{VW%y%I! zcLHssD%bbk_^MsGB)Ee(<6@(<v_wRuMN6}`64*HK@`A!pXZZ}}1l=@NOHf+hH)Fl8 zx(~r0cVrZo9tHn+2`$GNK4wGXT+LSXS+&*K$gdY~HV{!kr^7U3=>!JGMl-LCr1ObC z&p9Topgdva+A_}J<Z3CT)&kCoqpUCw*+#R{+*6<@76f!&uE(w2hAxJ6$?r7t@X^W` zsp|&p6kw?HA=`Q3eoA0pY9UcOp;2lKl`D{9BFNe|1!9RWC|3AWItcX)YF^oPA%H@O zX?izET<}}ed~U2x>T{OlFeR$$pc2Xt&wbm`PR*g!7OEM6-9eBgN#<$^#BTgT>u$W! zeG6q8Se}QSSmjz?vOpoWB8}-3HMLlL0D2pNjuIycthr+7>cq*oHB`QVWDNMVQ;jX4 zytF|lc1@@D<aX`R&lbwC-(lA~f&CLKZ!LSF3eLn`*pf9|vGlqpcl?jOvUG(c<%5<j zg5bqh1d>8s&G^o~ZuP2i0&A=JZHG(TeZo_g=c@Jn#joD7%cv9y+5$R(_IY{v<6<kl zEsXmFZM3Yy&xAe&&#9f#P;aOtE0#n{E@@56C7;D%DXt?MfY#74A#^8$xr3<z#hvR) zv|m6)PBJK)o#RO+MHuS4h)b$^r{tD3h@-gTV>i=jFedX`x5X*SSZB<_dLozSx!g}f z2DiS#|9`(8ITERIXYQICR;~It_nYl4>WIZ=i>RAcld#YiW|wwGd1ue*`X8*UQl<fG zU-%oNt9)pssRnHGn3Pdg;PbNKbhl!55!ZZlkf&ABKA6^Rh!CVP9O=7j&#`$ohrq35 zTXHj^a+-1lAA@X5*oBJ1!qqhe5|~(CFA?G{N8?%_ZUmff*Kh&VWm`j0^hkvpSkN>R z6iPn<>~^JPs5&THnRqb94dq1<WAhn)F;_@0TghFv+I~(7Vt)XD%D~51TGs+72#HIp z(vz1n78p^6%C^pk1a4Abi<v&sthLdnQXn&`!#*m`VIO7gg{^l`@q##{Nmh2+%EcK8 z`MjntTHU}hXEUmH1`Svmnh~@gVslhvalF(oqB4RBw-LB$3mLw!J8^|<hx(Fd(<OoQ zAv$?r8?QE@;ZvANEIuK?q(@(ZDZd`@O<7nLK%~feA#Qosrc)3Fqd9ti0UHmt&UKkI zITe*G0_V%zZ3IKfz*Q~7rzIb}n|LtugkDI481|=dZDVPJGH<b@#o3Dd(hhixux>1u z60@c>&`PpO-8vXlqY{Gpsem@L_MO@%n1?tS(P1VVb~kU>edGbdDmyAlu5u(2Hz>JE zQynj|;GRux8RbCNscCk9M`O%9CeU``SAZ(7%LTRvNg6g`UVGA1#B!Qj5EV987Ra=h z=hSdLVdGGf$S-N=RJ{K6Q~&yd{J73x$D#Pb1j?zPHvyx08EuPcmdoRe<2A{uuj3TT zh51{6D^-d!@%>{~!6M(%8x<Tbjw$raO|emG+P$jB_d0$<lT>h*AOvlg!&poXfw;*G z4G&1#Sh#A#id&0Sn{RPvm$j}$=H~!drCl51O5@9fX=h*5l5o`}))L*DuOP{TU`E2u zzN$kTLJ$paR4SbgChiYqv{{W&U@@$MOd7>CpUpQ@ciySLnRH45Ms<G>DOW&pi)bpD z7Ed~)P6P&JhRShl%XcYlZ+w)cKu`oPcJ2%CWrM9={dr8|Uaw79*`1(?3VkErtCw=_ zoaVSTZNJ(w@EJq?!Na>wXmBId8kv$r*MG68wl{sKR!~o10`8jif_OSyqIE&M98<Mt z``Ih?210ubQVfV=C1w3+L5tSUMQc0@9-e8;1fF~SPxL;yzIO1<e?I*9<h>*Ctq_5F zy2VnskDyzVjD=f%UQP>E!sltHs}#o4l!jZPP^cfi4@I(~XL`>+f2_aR+dQ_`KiT{2 zTCdmZAN>Af@BQ-Zj~{%{Tkpf~y@S7A-Z;4P{?0?kAun#v4*|n%S?o7@8^Hcp@6(F? z;dg)DKRgQFuGz0W5Qi-OTae)X;@`#p`v>OrLq^bc{Xo4V@Y3d&HeY+XcBsF3eDk#j zPuJlu&+R;Sb$!mva99w&cjAP2cjJYP%i`UQ;~SUn%Xg3O92f5%`rr5O4<6t9weMfO zcKym*H+TK(xBM%+ySLv2IY0k7=<kIunoqaBb9f8>OiE}RhENK9|MY42HJ*}v?kf-a z{yCsX;Wlwtjl?hT8+>{I9|i#NsoJrp&YU>|@;!U>*^6uN^HV?V9e}@{Id=Zo?U(u| z&!2>!r;eQ3eyM-(>OcPSU-qL9KI8je+x^Dv8@tzT+}gc;<Cgy_2zqKRXyal3$k8L) KYx1Y$-TOb}HG0GV literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h new file mode 100644 index 00000000..d3290eb6 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h @@ -0,0 +1,203 @@ +/*===----------------------- raointintrin.h - RAOINT ------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __X86GPRINTRIN_H +#error "Never use <raointintrin.h> directly; include <x86gprintrin.h> instead." +#endif // __X86GPRINTRIN_H + +#ifndef __RAOINTINTRIN_H +#define __RAOINTINTRIN_H + +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("raoint"))) + +/// Atomically add a 32-bit value at memory operand \a __A and a 32-bit \a __B, +/// and store the result to the same memory location. +/// +/// This intrinsic should be used for contention or weak ordering. It may +/// result in bad performance for hot data used by single thread only. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c AADD instruction. +/// +/// \param __A +/// A pointer to a 32-bit memory location. +/// \param __B +/// A 32-bit integer value. +/// +/// \code{.operation} +/// MEM[__A+31:__A] := MEM[__A+31:__A] + __B[31:0] +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS _aadd_i32(int *__A, int __B) { + __builtin_ia32_aadd32((int *)__A, __B); +} + +/// Atomically and a 32-bit value at memory operand \a __A and a 32-bit \a __B, +/// and store the result to the same memory location. +/// +/// This intrinsic should be used for contention or weak ordering. It may +/// result in bad performance for hot data used by single thread only. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c AAND instruction. +/// +/// \param __A +/// A pointer to a 32-bit memory location. +/// \param __B +/// A 32-bit integer value. +/// +/// \code{.operation} +/// MEM[__A+31:__A] := MEM[__A+31:__A] AND __B[31:0] +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS _aand_i32(int *__A, int __B) { + __builtin_ia32_aand32((int *)__A, __B); +} + +/// Atomically or a 32-bit value at memory operand \a __A and a 32-bit \a __B, +/// and store the result to the same memory location. +/// +/// This intrinsic should be used for contention or weak ordering. It may +/// result in bad performance for hot data used by single thread only. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c AOR instruction. +/// +/// \param __A +/// A pointer to a 32-bit memory location. +/// \param __B +/// A 32-bit integer value. +/// +/// \code{.operation} +/// MEM[__A+31:__A] := MEM[__A+31:__A] OR __B[31:0] +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS _aor_i32(int *__A, int __B) { + __builtin_ia32_aor32((int *)__A, __B); +} + +/// Atomically xor a 32-bit value at memory operand \a __A and a 32-bit \a __B, +/// and store the result to the same memory location. +/// +/// This intrinsic should be used for contention or weak ordering. It may +/// result in bad performance for hot data used by single thread only. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c AXOR instruction. +/// +/// \param __A +/// A pointer to a 32-bit memory location. +/// \param __B +/// A 32-bit integer value. +/// +/// \code{.operation} +/// MEM[__A+31:__A] := MEM[__A+31:__A] XOR __B[31:0] +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS _axor_i32(int *__A, int __B) { + __builtin_ia32_axor32((int *)__A, __B); +} + +#ifdef __x86_64__ +/// Atomically add a 64-bit value at memory operand \a __A and a 64-bit \a __B, +/// and store the result to the same memory location. +/// +/// This intrinsic should be used for contention or weak ordering. It may +/// result in bad performance for hot data used by single thread only. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c AADD instruction. +/// +/// \param __A +/// A pointer to a 64-bit memory location. +/// \param __B +/// A 64-bit integer value. +/// +/// \code{.operation} +/// MEM[__A+63:__A] := MEM[__A+63:__A] + __B[63:0] +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS _aadd_i64(long long *__A, + long long __B) { + __builtin_ia32_aadd64((long long *)__A, __B); +} + +/// Atomically and a 64-bit value at memory operand \a __A and a 64-bit \a __B, +/// and store the result to the same memory location. +/// +/// This intrinsic should be used for contention or weak ordering. It may +/// result in bad performance for hot data used by single thread only. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c AAND instruction. +/// +/// \param __A +/// A pointer to a 64-bit memory location. +/// \param __B +/// A 64-bit integer value. +/// +/// \code{.operation} +/// MEM[__A+63:__A] := MEM[__A+63:__A] AND __B[63:0] +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS _aand_i64(long long *__A, + long long __B) { + __builtin_ia32_aand64((long long *)__A, __B); +} + +/// Atomically or a 64-bit value at memory operand \a __A and a 64-bit \a __B, +/// and store the result to the same memory location. +/// +/// This intrinsic should be used for contention or weak ordering. It may +/// result in bad performance for hot data used by single thread only. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c AOR instruction. +/// +/// \param __A +/// A pointer to a 64-bit memory location. +/// \param __B +/// A 64-bit integer value. +/// +/// \code{.operation} +/// MEM[__A+63:__A] := MEM[__A+63:__A] OR __B[63:0] +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS _aor_i64(long long *__A, + long long __B) { + __builtin_ia32_aor64((long long *)__A, __B); +} + +/// Atomically xor a 64-bit value at memory operand \a __A and a 64-bit \a __B, +/// and store the result to the same memory location. +/// +/// This intrinsic should be used for contention or weak ordering. It may +/// result in bad performance for hot data used by single thread only. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c AXOR instruction. +/// +/// \param __A +/// A pointer to a 64-bit memory location. +/// \param __B +/// A 64-bit integer value. +/// +/// \code{.operation} +/// MEM[__A+63:__A] := MEM[__A+63:__A] XOR __B[63:0] +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS _axor_i64(long long *__A, + long long __B) { + __builtin_ia32_axor64((long long *)__A, __B); +} +#endif // __x86_64__ + +#undef __DEFAULT_FN_ATTRS +#endif // __RAOINTINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d8b0ff215c101b6ff20b0b3cc1aa595b54ed9217 GIT binary patch literal 18395 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h new file mode 100644 index 00000000..405bc245 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h @@ -0,0 +1,42 @@ +/*===---- rdseedintrin.h - RDSEED intrinsics -------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <rdseedintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __RDSEEDINTRIN_H +#define __RDSEEDINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("rdseed"))) + +static __inline__ int __DEFAULT_FN_ATTRS +_rdseed16_step(unsigned short *__p) +{ + return (int) __builtin_ia32_rdseed16_step(__p); +} + +static __inline__ int __DEFAULT_FN_ATTRS +_rdseed32_step(unsigned int *__p) +{ + return (int) __builtin_ia32_rdseed32_step(__p); +} + +#ifdef __x86_64__ +static __inline__ int __DEFAULT_FN_ATTRS +_rdseed64_step(unsigned long long *__p) +{ + return (int) __builtin_ia32_rdseed64_step(__p); +} +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif /* __RDSEEDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..bdfcff6fe43d60c9bf4c55204908941f660f3309 GIT binary patch literal 12835 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 M{M0`AEAe~(2eQ7OCjbBd literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h new file mode 100644 index 00000000..a3ec81e3 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h @@ -0,0 +1,45 @@ +/*===---- rtmintrin.h - RTM intrinsics -------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <rtmintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __RTMINTRIN_H +#define __RTMINTRIN_H + +#define _XBEGIN_STARTED (~0u) +#define _XABORT_EXPLICIT (1 << 0) +#define _XABORT_RETRY (1 << 1) +#define _XABORT_CONFLICT (1 << 2) +#define _XABORT_CAPACITY (1 << 3) +#define _XABORT_DEBUG (1 << 4) +#define _XABORT_NESTED (1 << 5) +#define _XABORT_CODE(x) (((x) >> 24) & 0xFF) + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("rtm"))) + +static __inline__ unsigned int __DEFAULT_FN_ATTRS +_xbegin(void) +{ + return (unsigned int)__builtin_ia32_xbegin(); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_xend(void) +{ + __builtin_ia32_xend(); +} + +#define _xabort(imm) __builtin_ia32_xabort((imm)) + +#undef __DEFAULT_FN_ATTRS + +#endif /* __RTMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..44b532f9414a68ba71c18397062c1dea449f8a13 GIT binary patch literal 13231 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h new file mode 100644 index 00000000..b774e5a2 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h @@ -0,0 +1,30 @@ +/*===--------------- serializeintrin.h - serialize intrinsics --------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <serializeintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __SERIALIZEINTRIN_H +#define __SERIALIZEINTRIN_H + +/// Serialize instruction fetch and execution. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> SERIALIZE </c> instruction. +/// +static __inline__ void +__attribute__((__always_inline__, __nodebug__, __target__("serialize"))) +_serialize (void) +{ + __builtin_ia32_serialize (); +} + +#endif /* __SERIALIZEINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..bf8a70742758b3788b9101c77301db4284a7efaa GIT binary patch literal 12402 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 R=;||9PcE6?$y2@I{{a=?AG-hm literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h new file mode 100644 index 00000000..303a21f6 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h @@ -0,0 +1,60 @@ +/*===---- sgxintrin.h - X86 SGX intrinsics configuration -------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <sgxintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __SGXINTRIN_H +#define __SGXINTRIN_H + +#if __has_extension(gnu_asm) + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("sgx"))) + +static __inline unsigned int __DEFAULT_FN_ATTRS +_enclu_u32(unsigned int __leaf, __SIZE_TYPE__ __d[]) +{ + unsigned int __result; + __asm__ ("enclu" + : "=a" (__result), "=b" (__d[0]), "=c" (__d[1]), "=d" (__d[2]) + : "a" (__leaf), "b" (__d[0]), "c" (__d[1]), "d" (__d[2]) + : "cc"); + return __result; +} + +static __inline unsigned int __DEFAULT_FN_ATTRS +_encls_u32(unsigned int __leaf, __SIZE_TYPE__ __d[]) +{ + unsigned int __result; + __asm__ ("encls" + : "=a" (__result), "=b" (__d[0]), "=c" (__d[1]), "=d" (__d[2]) + : "a" (__leaf), "b" (__d[0]), "c" (__d[1]), "d" (__d[2]) + : "cc"); + return __result; +} + +static __inline unsigned int __DEFAULT_FN_ATTRS +_enclv_u32(unsigned int __leaf, __SIZE_TYPE__ __d[]) +{ + unsigned int __result; + __asm__ ("enclv" + : "=a" (__result), "=b" (__d[0]), "=c" (__d[1]), "=d" (__d[2]) + : "a" (__leaf), "b" (__d[0]), "c" (__d[1]), "d" (__d[2]) + : "cc"); + return __result; +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* __has_extension(gnu_asm) */ + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..21890dae219d9789734d768e9d2b669ca00e76a4 GIT binary patch literal 13565 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 ZYn%egy#pOc4=OkBy!p@+`(?1T{{vptaxwq_ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h new file mode 100644 index 00000000..08b1fb1d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h @@ -0,0 +1,61 @@ +/*===---- shaintrin.h - SHA intrinsics -------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <shaintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __SHAINTRIN_H +#define __SHAINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("sha"), __min_vector_width__(128))) + +#define _mm_sha1rnds4_epu32(V1, V2, M) \ + __builtin_ia32_sha1rnds4((__v4si)(__m128i)(V1), (__v4si)(__m128i)(V2), (M)) + +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sha1nexte_epu32(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_sha1nexte((__v4si)__X, (__v4si)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sha1msg1_epu32(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_sha1msg1((__v4si)__X, (__v4si)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sha1msg2_epu32(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_sha1msg2((__v4si)__X, (__v4si)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sha256rnds2_epu32(__m128i __X, __m128i __Y, __m128i __Z) +{ + return (__m128i)__builtin_ia32_sha256rnds2((__v4si)__X, (__v4si)__Y, (__v4si)__Z); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sha256msg1_epu32(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_sha256msg1((__v4si)__X, (__v4si)__Y); +} + +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sha256msg2_epu32(__m128i __X, __m128i __Y) +{ + return (__m128i)__builtin_ia32_sha256msg2((__v4si)__X, (__v4si)__Y); +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* __SHAINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..213c95c4be653e201155deb5877b7838eb9c7f11 GIT binary patch literal 14630 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h new file mode 100644 index 00000000..16d8855a --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h @@ -0,0 +1,2328 @@ +/*===---- smmintrin.h - SSE4 intrinsics ------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __SMMINTRIN_H +#define __SMMINTRIN_H + +#if !defined(__i386__) && !defined(__x86_64__) +#error "This header is only meant to be used on x86 and x64 architecture" +#endif + +#include <tmmintrin.h> + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("sse4.1"), \ + __min_vector_width__(128))) + +/* SSE4 Rounding macros. */ +#define _MM_FROUND_TO_NEAREST_INT 0x00 +#define _MM_FROUND_TO_NEG_INF 0x01 +#define _MM_FROUND_TO_POS_INF 0x02 +#define _MM_FROUND_TO_ZERO 0x03 +#define _MM_FROUND_CUR_DIRECTION 0x04 + +#define _MM_FROUND_RAISE_EXC 0x00 +#define _MM_FROUND_NO_EXC 0x08 + +#define _MM_FROUND_NINT (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_NEAREST_INT) +#define _MM_FROUND_FLOOR (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_NEG_INF) +#define _MM_FROUND_CEIL (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_POS_INF) +#define _MM_FROUND_TRUNC (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_ZERO) +#define _MM_FROUND_RINT (_MM_FROUND_RAISE_EXC | _MM_FROUND_CUR_DIRECTION) +#define _MM_FROUND_NEARBYINT (_MM_FROUND_NO_EXC | _MM_FROUND_CUR_DIRECTION) + +/// Rounds up each element of the 128-bit vector of [4 x float] to an +/// integer and returns the rounded values in a 128-bit vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_ceil_ps(__m128 X); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPS / ROUNDPS </c> instruction. +/// +/// \param X +/// A 128-bit vector of [4 x float] values to be rounded up. +/// \returns A 128-bit vector of [4 x float] containing the rounded values. +#define _mm_ceil_ps(X) _mm_round_ps((X), _MM_FROUND_CEIL) + +/// Rounds up each element of the 128-bit vector of [2 x double] to an +/// integer and returns the rounded values in a 128-bit vector of +/// [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_ceil_pd(__m128d X); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPD / ROUNDPD </c> instruction. +/// +/// \param X +/// A 128-bit vector of [2 x double] values to be rounded up. +/// \returns A 128-bit vector of [2 x double] containing the rounded values. +#define _mm_ceil_pd(X) _mm_round_pd((X), _MM_FROUND_CEIL) + +/// Copies three upper elements of the first 128-bit vector operand to +/// the corresponding three upper elements of the 128-bit result vector of +/// [4 x float]. Rounds up the lowest element of the second 128-bit vector +/// operand to an integer and copies it to the lowest element of the 128-bit +/// result vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_ceil_ss(__m128 X, __m128 Y); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDSS / ROUNDSS </c> instruction. +/// +/// \param X +/// A 128-bit vector of [4 x float]. The values stored in bits [127:32] are +/// copied to the corresponding bits of the result. +/// \param Y +/// A 128-bit vector of [4 x float]. The value stored in bits [31:0] is +/// rounded up to the nearest integer and copied to the corresponding bits +/// of the result. +/// \returns A 128-bit vector of [4 x float] containing the copied and rounded +/// values. +#define _mm_ceil_ss(X, Y) _mm_round_ss((X), (Y), _MM_FROUND_CEIL) + +/// Copies the upper element of the first 128-bit vector operand to the +/// corresponding upper element of the 128-bit result vector of [2 x double]. +/// Rounds up the lower element of the second 128-bit vector operand to an +/// integer and copies it to the lower element of the 128-bit result vector +/// of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_ceil_sd(__m128d X, __m128d Y); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDSD / ROUNDSD </c> instruction. +/// +/// \param X +/// A 128-bit vector of [2 x double]. The value stored in bits [127:64] is +/// copied to the corresponding bits of the result. +/// \param Y +/// A 128-bit vector of [2 x double]. The value stored in bits [63:0] is +/// rounded up to the nearest integer and copied to the corresponding bits +/// of the result. +/// \returns A 128-bit vector of [2 x double] containing the copied and rounded +/// values. +#define _mm_ceil_sd(X, Y) _mm_round_sd((X), (Y), _MM_FROUND_CEIL) + +/// Rounds down each element of the 128-bit vector of [4 x float] to an +/// an integer and returns the rounded values in a 128-bit vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_floor_ps(__m128 X); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPS / ROUNDPS </c> instruction. +/// +/// \param X +/// A 128-bit vector of [4 x float] values to be rounded down. +/// \returns A 128-bit vector of [4 x float] containing the rounded values. +#define _mm_floor_ps(X) _mm_round_ps((X), _MM_FROUND_FLOOR) + +/// Rounds down each element of the 128-bit vector of [2 x double] to an +/// integer and returns the rounded values in a 128-bit vector of +/// [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_floor_pd(__m128d X); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPD / ROUNDPD </c> instruction. +/// +/// \param X +/// A 128-bit vector of [2 x double]. +/// \returns A 128-bit vector of [2 x double] containing the rounded values. +#define _mm_floor_pd(X) _mm_round_pd((X), _MM_FROUND_FLOOR) + +/// Copies three upper elements of the first 128-bit vector operand to +/// the corresponding three upper elements of the 128-bit result vector of +/// [4 x float]. Rounds down the lowest element of the second 128-bit vector +/// operand to an integer and copies it to the lowest element of the 128-bit +/// result vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_floor_ss(__m128 X, __m128 Y); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDSS / ROUNDSS </c> instruction. +/// +/// \param X +/// A 128-bit vector of [4 x float]. The values stored in bits [127:32] are +/// copied to the corresponding bits of the result. +/// \param Y +/// A 128-bit vector of [4 x float]. The value stored in bits [31:0] is +/// rounded down to the nearest integer and copied to the corresponding bits +/// of the result. +/// \returns A 128-bit vector of [4 x float] containing the copied and rounded +/// values. +#define _mm_floor_ss(X, Y) _mm_round_ss((X), (Y), _MM_FROUND_FLOOR) + +/// Copies the upper element of the first 128-bit vector operand to the +/// corresponding upper element of the 128-bit result vector of [2 x double]. +/// Rounds down the lower element of the second 128-bit vector operand to an +/// integer and copies it to the lower element of the 128-bit result vector +/// of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_floor_sd(__m128d X, __m128d Y); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDSD / ROUNDSD </c> instruction. +/// +/// \param X +/// A 128-bit vector of [2 x double]. The value stored in bits [127:64] is +/// copied to the corresponding bits of the result. +/// \param Y +/// A 128-bit vector of [2 x double]. The value stored in bits [63:0] is +/// rounded down to the nearest integer and copied to the corresponding bits +/// of the result. +/// \returns A 128-bit vector of [2 x double] containing the copied and rounded +/// values. +#define _mm_floor_sd(X, Y) _mm_round_sd((X), (Y), _MM_FROUND_FLOOR) + +/// Rounds each element of the 128-bit vector of [4 x float] to an +/// integer value according to the rounding control specified by the second +/// argument and returns the rounded values in a 128-bit vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_round_ps(__m128 X, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPS / ROUNDPS </c> instruction. +/// +/// \param X +/// A 128-bit vector of [4 x float]. +/// \param M +/// An integer value that specifies the rounding operation. \n +/// Bits [7:4] are reserved. \n +/// Bit [3] is a precision exception value: \n +/// 0: A normal PE exception is used \n +/// 1: The PE field is not updated \n +/// Bit [2] is the rounding control source: \n +/// 0: Use bits [1:0] of \a M \n +/// 1: Use the current MXCSR setting \n +/// Bits [1:0] contain the rounding control definition: \n +/// 00: Nearest \n +/// 01: Downward (toward negative infinity) \n +/// 10: Upward (toward positive infinity) \n +/// 11: Truncated +/// \returns A 128-bit vector of [4 x float] containing the rounded values. +#define _mm_round_ps(X, M) \ + ((__m128)__builtin_ia32_roundps((__v4sf)(__m128)(X), (M))) + +/// Copies three upper elements of the first 128-bit vector operand to +/// the corresponding three upper elements of the 128-bit result vector of +/// [4 x float]. Rounds the lowest element of the second 128-bit vector +/// operand to an integer value according to the rounding control specified +/// by the third argument and copies it to the lowest element of the 128-bit +/// result vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_round_ss(__m128 X, __m128 Y, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDSS / ROUNDSS </c> instruction. +/// +/// \param X +/// A 128-bit vector of [4 x float]. The values stored in bits [127:32] are +/// copied to the corresponding bits of the result. +/// \param Y +/// A 128-bit vector of [4 x float]. The value stored in bits [31:0] is +/// rounded to the nearest integer using the specified rounding control and +/// copied to the corresponding bits of the result. +/// \param M +/// An integer value that specifies the rounding operation. \n +/// Bits [7:4] are reserved. \n +/// Bit [3] is a precision exception value: \n +/// 0: A normal PE exception is used \n +/// 1: The PE field is not updated \n +/// Bit [2] is the rounding control source: \n +/// 0: Use bits [1:0] of \a M \n +/// 1: Use the current MXCSR setting \n +/// Bits [1:0] contain the rounding control definition: \n +/// 00: Nearest \n +/// 01: Downward (toward negative infinity) \n +/// 10: Upward (toward positive infinity) \n +/// 11: Truncated +/// \returns A 128-bit vector of [4 x float] containing the copied and rounded +/// values. +#define _mm_round_ss(X, Y, M) \ + ((__m128)__builtin_ia32_roundss((__v4sf)(__m128)(X), (__v4sf)(__m128)(Y), \ + (M))) + +/// Rounds each element of the 128-bit vector of [2 x double] to an +/// integer value according to the rounding control specified by the second +/// argument and returns the rounded values in a 128-bit vector of +/// [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_round_pd(__m128d X, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDPD / ROUNDPD </c> instruction. +/// +/// \param X +/// A 128-bit vector of [2 x double]. +/// \param M +/// An integer value that specifies the rounding operation. \n +/// Bits [7:4] are reserved. \n +/// Bit [3] is a precision exception value: \n +/// 0: A normal PE exception is used \n +/// 1: The PE field is not updated \n +/// Bit [2] is the rounding control source: \n +/// 0: Use bits [1:0] of \a M \n +/// 1: Use the current MXCSR setting \n +/// Bits [1:0] contain the rounding control definition: \n +/// 00: Nearest \n +/// 01: Downward (toward negative infinity) \n +/// 10: Upward (toward positive infinity) \n +/// 11: Truncated +/// \returns A 128-bit vector of [2 x double] containing the rounded values. +#define _mm_round_pd(X, M) \ + ((__m128d)__builtin_ia32_roundpd((__v2df)(__m128d)(X), (M))) + +/// Copies the upper element of the first 128-bit vector operand to the +/// corresponding upper element of the 128-bit result vector of [2 x double]. +/// Rounds the lower element of the second 128-bit vector operand to an +/// integer value according to the rounding control specified by the third +/// argument and copies it to the lower element of the 128-bit result vector +/// of [2 x double]. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_round_sd(__m128d X, __m128d Y, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VROUNDSD / ROUNDSD </c> instruction. +/// +/// \param X +/// A 128-bit vector of [2 x double]. The value stored in bits [127:64] is +/// copied to the corresponding bits of the result. +/// \param Y +/// A 128-bit vector of [2 x double]. The value stored in bits [63:0] is +/// rounded to the nearest integer using the specified rounding control and +/// copied to the corresponding bits of the result. +/// \param M +/// An integer value that specifies the rounding operation. \n +/// Bits [7:4] are reserved. \n +/// Bit [3] is a precision exception value: \n +/// 0: A normal PE exception is used \n +/// 1: The PE field is not updated \n +/// Bit [2] is the rounding control source: \n +/// 0: Use bits [1:0] of \a M \n +/// 1: Use the current MXCSR setting \n +/// Bits [1:0] contain the rounding control definition: \n +/// 00: Nearest \n +/// 01: Downward (toward negative infinity) \n +/// 10: Upward (toward positive infinity) \n +/// 11: Truncated +/// \returns A 128-bit vector of [2 x double] containing the copied and rounded +/// values. +#define _mm_round_sd(X, Y, M) \ + ((__m128d)__builtin_ia32_roundsd((__v2df)(__m128d)(X), (__v2df)(__m128d)(Y), \ + (M))) + +/* SSE4 Packed Blending Intrinsics. */ +/// Returns a 128-bit vector of [2 x double] where the values are +/// selected from either the first or second operand as specified by the +/// third operand, the control mask. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_blend_pd(__m128d V1, __m128d V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VBLENDPD / BLENDPD </c> instruction. +/// +/// \param V1 +/// A 128-bit vector of [2 x double]. +/// \param V2 +/// A 128-bit vector of [2 x double]. +/// \param M +/// An immediate integer operand, with mask bits [1:0] specifying how the +/// values are to be copied. The position of the mask bit corresponds to the +/// index of a copied value. When a mask bit is 0, the corresponding 64-bit +/// element in operand \a V1 is copied to the same position in the result. +/// When a mask bit is 1, the corresponding 64-bit element in operand \a V2 +/// is copied to the same position in the result. +/// \returns A 128-bit vector of [2 x double] containing the copied values. +#define _mm_blend_pd(V1, V2, M) \ + ((__m128d)__builtin_ia32_blendpd((__v2df)(__m128d)(V1), \ + (__v2df)(__m128d)(V2), (int)(M))) + +/// Returns a 128-bit vector of [4 x float] where the values are selected +/// from either the first or second operand as specified by the third +/// operand, the control mask. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_blend_ps(__m128 V1, __m128 V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VBLENDPS / BLENDPS </c> instruction. +/// +/// \param V1 +/// A 128-bit vector of [4 x float]. +/// \param V2 +/// A 128-bit vector of [4 x float]. +/// \param M +/// An immediate integer operand, with mask bits [3:0] specifying how the +/// values are to be copied. The position of the mask bit corresponds to the +/// index of a copied value. When a mask bit is 0, the corresponding 32-bit +/// element in operand \a V1 is copied to the same position in the result. +/// When a mask bit is 1, the corresponding 32-bit element in operand \a V2 +/// is copied to the same position in the result. +/// \returns A 128-bit vector of [4 x float] containing the copied values. +#define _mm_blend_ps(V1, V2, M) \ + ((__m128)__builtin_ia32_blendps((__v4sf)(__m128)(V1), (__v4sf)(__m128)(V2), \ + (int)(M))) + +/// Returns a 128-bit vector of [2 x double] where the values are +/// selected from either the first or second operand as specified by the +/// third operand, the control mask. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBLENDVPD / BLENDVPD </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [2 x double]. +/// \param __V2 +/// A 128-bit vector of [2 x double]. +/// \param __M +/// A 128-bit vector operand, with mask bits 127 and 63 specifying how the +/// values are to be copied. The position of the mask bit corresponds to the +/// most significant bit of a copied value. When a mask bit is 0, the +/// corresponding 64-bit element in operand \a __V1 is copied to the same +/// position in the result. When a mask bit is 1, the corresponding 64-bit +/// element in operand \a __V2 is copied to the same position in the result. +/// \returns A 128-bit vector of [2 x double] containing the copied values. +static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_blendv_pd(__m128d __V1, + __m128d __V2, + __m128d __M) { + return (__m128d)__builtin_ia32_blendvpd((__v2df)__V1, (__v2df)__V2, + (__v2df)__M); +} + +/// Returns a 128-bit vector of [4 x float] where the values are +/// selected from either the first or second operand as specified by the +/// third operand, the control mask. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBLENDVPS / BLENDVPS </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [4 x float]. +/// \param __V2 +/// A 128-bit vector of [4 x float]. +/// \param __M +/// A 128-bit vector operand, with mask bits 127, 95, 63, and 31 specifying +/// how the values are to be copied. The position of the mask bit corresponds +/// to the most significant bit of a copied value. When a mask bit is 0, the +/// corresponding 32-bit element in operand \a __V1 is copied to the same +/// position in the result. When a mask bit is 1, the corresponding 32-bit +/// element in operand \a __V2 is copied to the same position in the result. +/// \returns A 128-bit vector of [4 x float] containing the copied values. +static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_blendv_ps(__m128 __V1, + __m128 __V2, + __m128 __M) { + return (__m128)__builtin_ia32_blendvps((__v4sf)__V1, (__v4sf)__V2, + (__v4sf)__M); +} + +/// Returns a 128-bit vector of [16 x i8] where the values are selected +/// from either of the first or second operand as specified by the third +/// operand, the control mask. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPBLENDVB / PBLENDVB </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [16 x i8]. +/// \param __V2 +/// A 128-bit vector of [16 x i8]. +/// \param __M +/// A 128-bit vector operand, with mask bits 127, 119, 111...7 specifying +/// how the values are to be copied. The position of the mask bit corresponds +/// to the most significant bit of a copied value. When a mask bit is 0, the +/// corresponding 8-bit element in operand \a __V1 is copied to the same +/// position in the result. When a mask bit is 1, the corresponding 8-bit +/// element in operand \a __V2 is copied to the same position in the result. +/// \returns A 128-bit vector of [16 x i8] containing the copied values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_blendv_epi8(__m128i __V1, + __m128i __V2, + __m128i __M) { + return (__m128i)__builtin_ia32_pblendvb128((__v16qi)__V1, (__v16qi)__V2, + (__v16qi)__M); +} + +/// Returns a 128-bit vector of [8 x i16] where the values are selected +/// from either of the first or second operand as specified by the third +/// operand, the control mask. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_blend_epi16(__m128i V1, __m128i V2, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPBLENDW / PBLENDW </c> instruction. +/// +/// \param V1 +/// A 128-bit vector of [8 x i16]. +/// \param V2 +/// A 128-bit vector of [8 x i16]. +/// \param M +/// An immediate integer operand, with mask bits [7:0] specifying how the +/// values are to be copied. The position of the mask bit corresponds to the +/// index of a copied value. When a mask bit is 0, the corresponding 16-bit +/// element in operand \a V1 is copied to the same position in the result. +/// When a mask bit is 1, the corresponding 16-bit element in operand \a V2 +/// is copied to the same position in the result. +/// \returns A 128-bit vector of [8 x i16] containing the copied values. +#define _mm_blend_epi16(V1, V2, M) \ + ((__m128i)__builtin_ia32_pblendw128((__v8hi)(__m128i)(V1), \ + (__v8hi)(__m128i)(V2), (int)(M))) + +/* SSE4 Dword Multiply Instructions. */ +/// Multiples corresponding elements of two 128-bit vectors of [4 x i32] +/// and returns the lower 32 bits of the each product in a 128-bit vector of +/// [4 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMULLD / PMULLD </c> instruction. +/// +/// \param __V1 +/// A 128-bit integer vector. +/// \param __V2 +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the products of both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mullo_epi32(__m128i __V1, + __m128i __V2) { + return (__m128i)((__v4su)__V1 * (__v4su)__V2); +} + +/// Multiplies corresponding even-indexed elements of two 128-bit +/// vectors of [4 x i32] and returns a 128-bit vector of [2 x i64] +/// containing the products. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMULDQ / PMULDQ </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [4 x i32]. +/// \param __V2 +/// A 128-bit vector of [4 x i32]. +/// \returns A 128-bit vector of [2 x i64] containing the products of both +/// operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mul_epi32(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_ia32_pmuldq128((__v4si)__V1, (__v4si)__V2); +} + +/* SSE4 Floating Point Dot Product Instructions. */ +/// Computes the dot product of the two 128-bit vectors of [4 x float] +/// and returns it in the elements of the 128-bit result vector of +/// [4 x float]. +/// +/// The immediate integer operand controls which input elements +/// will contribute to the dot product, and where the final results are +/// returned. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_dp_ps(__m128 X, __m128 Y, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VDPPS / DPPS </c> instruction. +/// +/// \param X +/// A 128-bit vector of [4 x float]. +/// \param Y +/// A 128-bit vector of [4 x float]. +/// \param M +/// An immediate integer operand. Mask bits [7:4] determine which elements +/// of the input vectors are used, with bit [4] corresponding to the lowest +/// element and bit [7] corresponding to the highest element of each [4 x +/// float] vector. If a bit is set, the corresponding elements from the two +/// input vectors are used as an input for dot product; otherwise that input +/// is treated as zero. Bits [3:0] determine which elements of the result +/// will receive a copy of the final dot product, with bit [0] corresponding +/// to the lowest element and bit [3] corresponding to the highest element of +/// each [4 x float] subvector. If a bit is set, the dot product is returned +/// in the corresponding element; otherwise that element is set to zero. +/// \returns A 128-bit vector of [4 x float] containing the dot product. +#define _mm_dp_ps(X, Y, M) \ + ((__m128)__builtin_ia32_dpps((__v4sf)(__m128)(X), (__v4sf)(__m128)(Y), (M))) + +/// Computes the dot product of the two 128-bit vectors of [2 x double] +/// and returns it in the elements of the 128-bit result vector of +/// [2 x double]. +/// +/// The immediate integer operand controls which input +/// elements will contribute to the dot product, and where the final results +/// are returned. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128d _mm_dp_pd(__m128d X, __m128d Y, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VDPPD / DPPD </c> instruction. +/// +/// \param X +/// A 128-bit vector of [2 x double]. +/// \param Y +/// A 128-bit vector of [2 x double]. +/// \param M +/// An immediate integer operand. Mask bits [5:4] determine which elements +/// of the input vectors are used, with bit [4] corresponding to the lowest +/// element and bit [5] corresponding to the highest element of each of [2 x +/// double] vector. If a bit is set, the corresponding elements from the two +/// input vectors are used as an input for dot product; otherwise that input +/// is treated as zero. Bits [1:0] determine which elements of the result +/// will receive a copy of the final dot product, with bit [0] corresponding +/// to the lowest element and bit [1] corresponding to the highest element of +/// each [2 x double] vector. If a bit is set, the dot product is returned in +/// the corresponding element; otherwise that element is set to zero. +#define _mm_dp_pd(X, Y, M) \ + ((__m128d)__builtin_ia32_dppd((__v2df)(__m128d)(X), (__v2df)(__m128d)(Y), \ + (M))) + +/* SSE4 Streaming Load Hint Instruction. */ +/// Loads integer values from a 128-bit aligned memory location to a +/// 128-bit integer vector. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVNTDQA / MOVNTDQA </c> instruction. +/// +/// \param __V +/// A pointer to a 128-bit aligned memory location that contains the integer +/// values. +/// \returns A 128-bit integer vector containing the data stored at the +/// specified memory location. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_stream_load_si128(__m128i const *__V) { + return (__m128i)__builtin_nontemporal_load((const __v2di *)__V); +} + +/* SSE4 Packed Integer Min/Max Instructions. */ +/// Compares the corresponding elements of two 128-bit vectors of +/// [16 x i8] and returns a 128-bit vector of [16 x i8] containing the lesser +/// of the two values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMINSB / PMINSB </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [16 x i8]. +/// \param __V2 +/// A 128-bit vector of [16 x i8] +/// \returns A 128-bit vector of [16 x i8] containing the lesser values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi8(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_elementwise_min((__v16qs)__V1, (__v16qs)__V2); +} + +/// Compares the corresponding elements of two 128-bit vectors of +/// [16 x i8] and returns a 128-bit vector of [16 x i8] containing the +/// greater value of the two. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMAXSB / PMAXSB </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [16 x i8]. +/// \param __V2 +/// A 128-bit vector of [16 x i8]. +/// \returns A 128-bit vector of [16 x i8] containing the greater values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi8(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_elementwise_max((__v16qs)__V1, (__v16qs)__V2); +} + +/// Compares the corresponding elements of two 128-bit vectors of +/// [8 x u16] and returns a 128-bit vector of [8 x u16] containing the lesser +/// value of the two. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMINUW / PMINUW </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [8 x u16]. +/// \param __V2 +/// A 128-bit vector of [8 x u16]. +/// \returns A 128-bit vector of [8 x u16] containing the lesser values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu16(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_elementwise_min((__v8hu)__V1, (__v8hu)__V2); +} + +/// Compares the corresponding elements of two 128-bit vectors of +/// [8 x u16] and returns a 128-bit vector of [8 x u16] containing the +/// greater value of the two. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMAXUW / PMAXUW </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [8 x u16]. +/// \param __V2 +/// A 128-bit vector of [8 x u16]. +/// \returns A 128-bit vector of [8 x u16] containing the greater values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu16(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_elementwise_max((__v8hu)__V1, (__v8hu)__V2); +} + +/// Compares the corresponding elements of two 128-bit vectors of +/// [4 x i32] and returns a 128-bit vector of [4 x i32] containing the lesser +/// value of the two. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMINSD / PMINSD </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [4 x i32]. +/// \param __V2 +/// A 128-bit vector of [4 x i32]. +/// \returns A 128-bit vector of [4 x i32] containing the lesser values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi32(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_elementwise_min((__v4si)__V1, (__v4si)__V2); +} + +/// Compares the corresponding elements of two 128-bit vectors of +/// [4 x i32] and returns a 128-bit vector of [4 x i32] containing the +/// greater value of the two. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMAXSD / PMAXSD </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [4 x i32]. +/// \param __V2 +/// A 128-bit vector of [4 x i32]. +/// \returns A 128-bit vector of [4 x i32] containing the greater values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi32(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_elementwise_max((__v4si)__V1, (__v4si)__V2); +} + +/// Compares the corresponding elements of two 128-bit vectors of +/// [4 x u32] and returns a 128-bit vector of [4 x u32] containing the lesser +/// value of the two. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMINUD / PMINUD </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [4 x u32]. +/// \param __V2 +/// A 128-bit vector of [4 x u32]. +/// \returns A 128-bit vector of [4 x u32] containing the lesser values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu32(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_elementwise_min((__v4su)__V1, (__v4su)__V2); +} + +/// Compares the corresponding elements of two 128-bit vectors of +/// [4 x u32] and returns a 128-bit vector of [4 x u32] containing the +/// greater value of the two. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMAXUD / PMAXUD </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [4 x u32]. +/// \param __V2 +/// A 128-bit vector of [4 x u32]. +/// \returns A 128-bit vector of [4 x u32] containing the greater values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu32(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_elementwise_max((__v4su)__V1, (__v4su)__V2); +} + +/* SSE4 Insertion and Extraction from XMM Register Instructions. */ +/// Takes the first argument \a X and inserts an element from the second +/// argument \a Y as selected by the third argument \a N. That result then +/// has elements zeroed out also as selected by the third argument \a N. The +/// resulting 128-bit vector of [4 x float] is then returned. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_insert_ps(__m128 X, __m128 Y, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VINSERTPS </c> instruction. +/// +/// \param X +/// A 128-bit vector source operand of [4 x float]. With the exception of +/// those bits in the result copied from parameter \a Y and zeroed by bits +/// [3:0] of \a N, all bits from this parameter are copied to the result. +/// \param Y +/// A 128-bit vector source operand of [4 x float]. One single-precision +/// floating-point element from this source, as determined by the immediate +/// parameter, is copied to the result. +/// \param N +/// Specifies which bits from operand \a Y will be copied, which bits in the +/// result they will be copied to, and which bits in the result will be +/// cleared. The following assignments are made: \n +/// Bits [7:6] specify the bits to copy from operand \a Y: \n +/// 00: Selects bits [31:0] from operand \a Y. \n +/// 01: Selects bits [63:32] from operand \a Y. \n +/// 10: Selects bits [95:64] from operand \a Y. \n +/// 11: Selects bits [127:96] from operand \a Y. \n +/// Bits [5:4] specify the bits in the result to which the selected bits +/// from operand \a Y are copied: \n +/// 00: Copies the selected bits from \a Y to result bits [31:0]. \n +/// 01: Copies the selected bits from \a Y to result bits [63:32]. \n +/// 10: Copies the selected bits from \a Y to result bits [95:64]. \n +/// 11: Copies the selected bits from \a Y to result bits [127:96]. \n +/// Bits[3:0]: If any of these bits are set, the corresponding result +/// element is cleared. +/// \returns A 128-bit vector of [4 x float] containing the copied +/// single-precision floating point elements from the operands. +#define _mm_insert_ps(X, Y, N) __builtin_ia32_insertps128((X), (Y), (N)) + +/// Extracts a 32-bit integer from a 128-bit vector of [4 x float] and +/// returns it, using the immediate value parameter \a N as a selector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_extract_ps(__m128 X, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VEXTRACTPS / EXTRACTPS </c> +/// instruction. +/// +/// \param X +/// A 128-bit vector of [4 x float]. +/// \param N +/// An immediate value. Bits [1:0] determines which bits from the argument +/// \a X are extracted and returned: \n +/// 00: Bits [31:0] of parameter \a X are returned. \n +/// 01: Bits [63:32] of parameter \a X are returned. \n +/// 10: Bits [95:64] of parameter \a X are returned. \n +/// 11: Bits [127:96] of parameter \a X are returned. +/// \returns A 32-bit integer containing the extracted 32 bits of float data. +#define _mm_extract_ps(X, N) \ + __builtin_bit_cast( \ + int, __builtin_ia32_vec_ext_v4sf((__v4sf)(__m128)(X), (int)(N))) + +/* Miscellaneous insert and extract macros. */ +/* Extract a single-precision float from X at index N into D. */ +#define _MM_EXTRACT_FLOAT(D, X, N) \ + do { \ + (D) = __builtin_ia32_vec_ext_v4sf((__v4sf)(__m128)(X), (int)(N)); \ + } while (0) + +/* Or together 2 sets of indexes (X and Y) with the zeroing bits (Z) to create + an index suitable for _mm_insert_ps. */ +#define _MM_MK_INSERTPS_NDX(X, Y, Z) (((X) << 6) | ((Y) << 4) | (Z)) + +/* Extract a float from X at index N into the first index of the return. */ +#define _MM_PICK_OUT_PS(X, N) \ + _mm_insert_ps(_mm_setzero_ps(), (X), _MM_MK_INSERTPS_NDX((N), 0, 0x0e)) + +/* Insert int into packed integer array at index. */ +/// Constructs a 128-bit vector of [16 x i8] by first making a copy of +/// the 128-bit integer vector parameter, and then inserting the lower 8 bits +/// of an integer parameter \a I into an offset specified by the immediate +/// value parameter \a N. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_insert_epi8(__m128i X, int I, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPINSRB / PINSRB </c> instruction. +/// +/// \param X +/// A 128-bit integer vector of [16 x i8]. This vector is copied to the +/// result and then one of the sixteen elements in the result vector is +/// replaced by the lower 8 bits of \a I. +/// \param I +/// An integer. The lower 8 bits of this operand are written to the result +/// beginning at the offset specified by \a N. +/// \param N +/// An immediate value. Bits [3:0] specify the bit offset in the result at +/// which the lower 8 bits of \a I are written. \n +/// 0000: Bits [7:0] of the result are used for insertion. \n +/// 0001: Bits [15:8] of the result are used for insertion. \n +/// 0010: Bits [23:16] of the result are used for insertion. \n +/// 0011: Bits [31:24] of the result are used for insertion. \n +/// 0100: Bits [39:32] of the result are used for insertion. \n +/// 0101: Bits [47:40] of the result are used for insertion. \n +/// 0110: Bits [55:48] of the result are used for insertion. \n +/// 0111: Bits [63:56] of the result are used for insertion. \n +/// 1000: Bits [71:64] of the result are used for insertion. \n +/// 1001: Bits [79:72] of the result are used for insertion. \n +/// 1010: Bits [87:80] of the result are used for insertion. \n +/// 1011: Bits [95:88] of the result are used for insertion. \n +/// 1100: Bits [103:96] of the result are used for insertion. \n +/// 1101: Bits [111:104] of the result are used for insertion. \n +/// 1110: Bits [119:112] of the result are used for insertion. \n +/// 1111: Bits [127:120] of the result are used for insertion. +/// \returns A 128-bit integer vector containing the constructed values. +#define _mm_insert_epi8(X, I, N) \ + ((__m128i)__builtin_ia32_vec_set_v16qi((__v16qi)(__m128i)(X), (int)(I), \ + (int)(N))) + +/// Constructs a 128-bit vector of [4 x i32] by first making a copy of +/// the 128-bit integer vector parameter, and then inserting the 32-bit +/// integer parameter \a I at the offset specified by the immediate value +/// parameter \a N. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_insert_epi32(__m128i X, int I, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPINSRD / PINSRD </c> instruction. +/// +/// \param X +/// A 128-bit integer vector of [4 x i32]. This vector is copied to the +/// result and then one of the four elements in the result vector is +/// replaced by \a I. +/// \param I +/// A 32-bit integer that is written to the result beginning at the offset +/// specified by \a N. +/// \param N +/// An immediate value. Bits [1:0] specify the bit offset in the result at +/// which the integer \a I is written. \n +/// 00: Bits [31:0] of the result are used for insertion. \n +/// 01: Bits [63:32] of the result are used for insertion. \n +/// 10: Bits [95:64] of the result are used for insertion. \n +/// 11: Bits [127:96] of the result are used for insertion. +/// \returns A 128-bit integer vector containing the constructed values. +#define _mm_insert_epi32(X, I, N) \ + ((__m128i)__builtin_ia32_vec_set_v4si((__v4si)(__m128i)(X), (int)(I), \ + (int)(N))) + +#ifdef __x86_64__ +/// Constructs a 128-bit vector of [2 x i64] by first making a copy of +/// the 128-bit integer vector parameter, and then inserting the 64-bit +/// integer parameter \a I, using the immediate value parameter \a N as an +/// insertion location selector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_insert_epi64(__m128i X, long long I, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPINSRQ / PINSRQ </c> instruction. +/// +/// \param X +/// A 128-bit integer vector of [2 x i64]. This vector is copied to the +/// result and then one of the two elements in the result vector is replaced +/// by \a I. +/// \param I +/// A 64-bit integer that is written to the result beginning at the offset +/// specified by \a N. +/// \param N +/// An immediate value. Bit [0] specifies the bit offset in the result at +/// which the integer \a I is written. \n +/// 0: Bits [63:0] of the result are used for insertion. \n +/// 1: Bits [127:64] of the result are used for insertion. \n +/// \returns A 128-bit integer vector containing the constructed values. +#define _mm_insert_epi64(X, I, N) \ + ((__m128i)__builtin_ia32_vec_set_v2di((__v2di)(__m128i)(X), (long long)(I), \ + (int)(N))) +#endif /* __x86_64__ */ + +/* Extract int from packed integer array at index. This returns the element + * as a zero extended value, so it is unsigned. + */ +/// Extracts an 8-bit element from the 128-bit integer vector of +/// [16 x i8], using the immediate value parameter \a N as a selector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_extract_epi8(__m128i X, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPEXTRB / PEXTRB </c> instruction. +/// +/// \param X +/// A 128-bit integer vector. +/// \param N +/// An immediate value. Bits [3:0] specify which 8-bit vector element from +/// the argument \a X to extract and copy to the result. \n +/// 0000: Bits [7:0] of parameter \a X are extracted. \n +/// 0001: Bits [15:8] of the parameter \a X are extracted. \n +/// 0010: Bits [23:16] of the parameter \a X are extracted. \n +/// 0011: Bits [31:24] of the parameter \a X are extracted. \n +/// 0100: Bits [39:32] of the parameter \a X are extracted. \n +/// 0101: Bits [47:40] of the parameter \a X are extracted. \n +/// 0110: Bits [55:48] of the parameter \a X are extracted. \n +/// 0111: Bits [63:56] of the parameter \a X are extracted. \n +/// 1000: Bits [71:64] of the parameter \a X are extracted. \n +/// 1001: Bits [79:72] of the parameter \a X are extracted. \n +/// 1010: Bits [87:80] of the parameter \a X are extracted. \n +/// 1011: Bits [95:88] of the parameter \a X are extracted. \n +/// 1100: Bits [103:96] of the parameter \a X are extracted. \n +/// 1101: Bits [111:104] of the parameter \a X are extracted. \n +/// 1110: Bits [119:112] of the parameter \a X are extracted. \n +/// 1111: Bits [127:120] of the parameter \a X are extracted. +/// \returns An unsigned integer, whose lower 8 bits are selected from the +/// 128-bit integer vector parameter and the remaining bits are assigned +/// zeros. +#define _mm_extract_epi8(X, N) \ + ((int)(unsigned char)__builtin_ia32_vec_ext_v16qi((__v16qi)(__m128i)(X), \ + (int)(N))) + +/// Extracts a 32-bit element from the 128-bit integer vector of +/// [4 x i32], using the immediate value parameter \a N as a selector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_extract_epi32(__m128i X, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPEXTRD / PEXTRD </c> instruction. +/// +/// \param X +/// A 128-bit integer vector. +/// \param N +/// An immediate value. Bits [1:0] specify which 32-bit vector element from +/// the argument \a X to extract and copy to the result. \n +/// 00: Bits [31:0] of the parameter \a X are extracted. \n +/// 01: Bits [63:32] of the parameter \a X are extracted. \n +/// 10: Bits [95:64] of the parameter \a X are extracted. \n +/// 11: Bits [127:96] of the parameter \a X are exracted. +/// \returns An integer, whose lower 32 bits are selected from the 128-bit +/// integer vector parameter and the remaining bits are assigned zeros. +#define _mm_extract_epi32(X, N) \ + ((int)__builtin_ia32_vec_ext_v4si((__v4si)(__m128i)(X), (int)(N))) + +/// Extracts a 64-bit element from the 128-bit integer vector of +/// [2 x i64], using the immediate value parameter \a N as a selector. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// long long _mm_extract_epi64(__m128i X, const int N); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPEXTRQ / PEXTRQ </c> instruction +/// in 64-bit mode. +/// +/// \param X +/// A 128-bit integer vector. +/// \param N +/// An immediate value. Bit [0] specifies which 64-bit vector element from +/// the argument \a X to return. \n +/// 0: Bits [63:0] are returned. \n +/// 1: Bits [127:64] are returned. \n +/// \returns A 64-bit integer. +#define _mm_extract_epi64(X, N) \ + ((long long)__builtin_ia32_vec_ext_v2di((__v2di)(__m128i)(X), (int)(N))) + +/* SSE4 128-bit Packed Integer Comparisons. */ +/// Tests whether the specified bits in a 128-bit integer vector are all +/// zeros. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. +/// +/// \param __M +/// A 128-bit integer vector containing the bits to be tested. +/// \param __V +/// A 128-bit integer vector selecting which bits to test in operand \a __M. +/// \returns TRUE if the specified bits are all zeros; FALSE otherwise. +static __inline__ int __DEFAULT_FN_ATTRS _mm_testz_si128(__m128i __M, + __m128i __V) { + return __builtin_ia32_ptestz128((__v2di)__M, (__v2di)__V); +} + +/// Tests whether the specified bits in a 128-bit integer vector are all +/// ones. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. +/// +/// \param __M +/// A 128-bit integer vector containing the bits to be tested. +/// \param __V +/// A 128-bit integer vector selecting which bits to test in operand \a __M. +/// \returns TRUE if the specified bits are all ones; FALSE otherwise. +static __inline__ int __DEFAULT_FN_ATTRS _mm_testc_si128(__m128i __M, + __m128i __V) { + return __builtin_ia32_ptestc128((__v2di)__M, (__v2di)__V); +} + +/// Tests whether the specified bits in a 128-bit integer vector are +/// neither all zeros nor all ones. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. +/// +/// \param __M +/// A 128-bit integer vector containing the bits to be tested. +/// \param __V +/// A 128-bit integer vector selecting which bits to test in operand \a __M. +/// \returns TRUE if the specified bits are neither all zeros nor all ones; +/// FALSE otherwise. +static __inline__ int __DEFAULT_FN_ATTRS _mm_testnzc_si128(__m128i __M, + __m128i __V) { + return __builtin_ia32_ptestnzc128((__v2di)__M, (__v2di)__V); +} + +/// Tests whether the specified bits in a 128-bit integer vector are all +/// ones. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_test_all_ones(__m128i V); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. +/// +/// \param V +/// A 128-bit integer vector containing the bits to be tested. +/// \returns TRUE if the bits specified in the operand are all set to 1; FALSE +/// otherwise. +#define _mm_test_all_ones(V) _mm_testc_si128((V), _mm_set1_epi32(-1)) + +/// Tests whether the specified bits in a 128-bit integer vector are +/// neither all zeros nor all ones. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_test_mix_ones_zeros(__m128i M, __m128i V); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. +/// +/// \param M +/// A 128-bit integer vector containing the bits to be tested. +/// \param V +/// A 128-bit integer vector selecting which bits to test in operand \a M. +/// \returns TRUE if the specified bits are neither all zeros nor all ones; +/// FALSE otherwise. +#define _mm_test_mix_ones_zeros(M, V) _mm_testnzc_si128((M), (V)) + +/// Tests whether the specified bits in a 128-bit integer vector are all +/// zeros. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_test_all_zeros(__m128i M, __m128i V); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. +/// +/// \param M +/// A 128-bit integer vector containing the bits to be tested. +/// \param V +/// A 128-bit integer vector selecting which bits to test in operand \a M. +/// \returns TRUE if the specified bits are all zeros; FALSE otherwise. +#define _mm_test_all_zeros(M, V) _mm_testz_si128((M), (V)) + +/* SSE4 64-bit Packed Integer Comparisons. */ +/// Compares each of the corresponding 64-bit values of the 128-bit +/// integer vectors for equality. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPEQQ / PCMPEQQ </c> instruction. +/// +/// \param __V1 +/// A 128-bit integer vector. +/// \param __V2 +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi64(__m128i __V1, + __m128i __V2) { + return (__m128i)((__v2di)__V1 == (__v2di)__V2); +} + +/* SSE4 Packed Integer Sign-Extension. */ +/// Sign-extends each of the lower eight 8-bit integer elements of a +/// 128-bit vector of [16 x i8] to 16-bit values and returns them in a +/// 128-bit vector of [8 x i16]. The upper eight elements of the input vector +/// are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVSXBW / PMOVSXBW </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [16 x i8]. The lower eight 8-bit elements are +/// sign-extended to 16-bit values. +/// \returns A 128-bit vector of [8 x i16] containing the sign-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi16(__m128i __V) { + /* This function always performs a signed extension, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3, 4, 5, 6, + 7), + __v8hi); +} + +/// Sign-extends each of the lower four 8-bit integer elements of a +/// 128-bit vector of [16 x i8] to 32-bit values and returns them in a +/// 128-bit vector of [4 x i32]. The upper twelve elements of the input +/// vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVSXBD / PMOVSXBD </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [16 x i8]. The lower four 8-bit elements are +/// sign-extended to 32-bit values. +/// \returns A 128-bit vector of [4 x i32] containing the sign-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi32(__m128i __V) { + /* This function always performs a signed extension, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3), __v4si); +} + +/// Sign-extends each of the lower two 8-bit integer elements of a +/// 128-bit integer vector of [16 x i8] to 64-bit values and returns them in +/// a 128-bit vector of [2 x i64]. The upper fourteen elements of the input +/// vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVSXBQ / PMOVSXBQ </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [16 x i8]. The lower two 8-bit elements are +/// sign-extended to 64-bit values. +/// \returns A 128-bit vector of [2 x i64] containing the sign-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi64(__m128i __V) { + /* This function always performs a signed extension, but __v16qi is a char + which may be signed or unsigned, so use __v16qs. */ + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1), __v2di); +} + +/// Sign-extends each of the lower four 16-bit integer elements of a +/// 128-bit integer vector of [8 x i16] to 32-bit values and returns them in +/// a 128-bit vector of [4 x i32]. The upper four elements of the input +/// vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVSXWD / PMOVSXWD </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [8 x i16]. The lower four 16-bit elements are +/// sign-extended to 32-bit values. +/// \returns A 128-bit vector of [4 x i32] containing the sign-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi16_epi32(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1, 2, 3), __v4si); +} + +/// Sign-extends each of the lower two 16-bit integer elements of a +/// 128-bit integer vector of [8 x i16] to 64-bit values and returns them in +/// a 128-bit vector of [2 x i64]. The upper six elements of the input +/// vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVSXWQ / PMOVSXWQ </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [8 x i16]. The lower two 16-bit elements are +/// sign-extended to 64-bit values. +/// \returns A 128-bit vector of [2 x i64] containing the sign-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi16_epi64(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1), __v2di); +} + +/// Sign-extends each of the lower two 32-bit integer elements of a +/// 128-bit integer vector of [4 x i32] to 64-bit values and returns them in +/// a 128-bit vector of [2 x i64]. The upper two elements of the input vector +/// are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVSXDQ / PMOVSXDQ </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [4 x i32]. The lower two 32-bit elements are +/// sign-extended to 64-bit values. +/// \returns A 128-bit vector of [2 x i64] containing the sign-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi32_epi64(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v4si)__V, (__v4si)__V, 0, 1), __v2di); +} + +/* SSE4 Packed Integer Zero-Extension. */ +/// Zero-extends each of the lower eight 8-bit integer elements of a +/// 128-bit vector of [16 x i8] to 16-bit values and returns them in a +/// 128-bit vector of [8 x i16]. The upper eight elements of the input vector +/// are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVZXBW / PMOVZXBW </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [16 x i8]. The lower eight 8-bit elements are +/// zero-extended to 16-bit values. +/// \returns A 128-bit vector of [8 x i16] containing the zero-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi16(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3, 4, 5, 6, + 7), + __v8hi); +} + +/// Zero-extends each of the lower four 8-bit integer elements of a +/// 128-bit vector of [16 x i8] to 32-bit values and returns them in a +/// 128-bit vector of [4 x i32]. The upper twelve elements of the input +/// vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVZXBD / PMOVZXBD </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [16 x i8]. The lower four 8-bit elements are +/// zero-extended to 32-bit values. +/// \returns A 128-bit vector of [4 x i32] containing the zero-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi32(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3), __v4si); +} + +/// Zero-extends each of the lower two 8-bit integer elements of a +/// 128-bit integer vector of [16 x i8] to 64-bit values and returns them in +/// a 128-bit vector of [2 x i64]. The upper fourteen elements of the input +/// vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVZXBQ / PMOVZXBQ </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [16 x i8]. The lower two 8-bit elements are +/// zero-extended to 64-bit values. +/// \returns A 128-bit vector of [2 x i64] containing the zero-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi64(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1), __v2di); +} + +/// Zero-extends each of the lower four 16-bit integer elements of a +/// 128-bit integer vector of [8 x i16] to 32-bit values and returns them in +/// a 128-bit vector of [4 x i32]. The upper four elements of the input +/// vector are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVZXWD / PMOVZXWD </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [8 x i16]. The lower four 16-bit elements are +/// zero-extended to 32-bit values. +/// \returns A 128-bit vector of [4 x i32] containing the zero-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu16_epi32(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1, 2, 3), __v4si); +} + +/// Zero-extends each of the lower two 16-bit integer elements of a +/// 128-bit integer vector of [8 x i16] to 64-bit values and returns them in +/// a 128-bit vector of [2 x i64]. The upper six elements of the input vector +/// are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVZXWQ / PMOVZXWQ </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [8 x i16]. The lower two 16-bit elements are +/// zero-extended to 64-bit values. +/// \returns A 128-bit vector of [2 x i64] containing the zero-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu16_epi64(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1), __v2di); +} + +/// Zero-extends each of the lower two 32-bit integer elements of a +/// 128-bit integer vector of [4 x i32] to 64-bit values and returns them in +/// a 128-bit vector of [2 x i64]. The upper two elements of the input vector +/// are unused. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPMOVZXDQ / PMOVZXDQ </c> instruction. +/// +/// \param __V +/// A 128-bit vector of [4 x i32]. The lower two 32-bit elements are +/// zero-extended to 64-bit values. +/// \returns A 128-bit vector of [2 x i64] containing the zero-extended values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu32_epi64(__m128i __V) { + return (__m128i) __builtin_convertvector( + __builtin_shufflevector((__v4su)__V, (__v4su)__V, 0, 1), __v2di); +} + +/* SSE4 Pack with Unsigned Saturation. */ +/// Converts 32-bit signed integers from both 128-bit integer vector +/// operands into 16-bit unsigned integers, and returns the packed result. +/// Values greater than 0xFFFF are saturated to 0xFFFF. Values less than +/// 0x0000 are saturated to 0x0000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPACKUSDW / PACKUSDW </c> instruction. +/// +/// \param __V1 +/// A 128-bit vector of [4 x i32]. Each 32-bit element is treated as a +/// signed integer and is converted to a 16-bit unsigned integer with +/// saturation. Values greater than 0xFFFF are saturated to 0xFFFF. Values +/// less than 0x0000 are saturated to 0x0000. The converted [4 x i16] values +/// are written to the lower 64 bits of the result. +/// \param __V2 +/// A 128-bit vector of [4 x i32]. Each 32-bit element is treated as a +/// signed integer and is converted to a 16-bit unsigned integer with +/// saturation. Values greater than 0xFFFF are saturated to 0xFFFF. Values +/// less than 0x0000 are saturated to 0x0000. The converted [4 x i16] values +/// are written to the higher 64 bits of the result. +/// \returns A 128-bit vector of [8 x i16] containing the converted values. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packus_epi32(__m128i __V1, + __m128i __V2) { + return (__m128i)__builtin_ia32_packusdw128((__v4si)__V1, (__v4si)__V2); +} + +/* SSE4 Multiple Packed Sums of Absolute Difference. */ +/// Subtracts 8-bit unsigned integer values and computes the absolute +/// values of the differences to the corresponding bits in the destination. +/// Then sums of the absolute differences are returned according to the bit +/// fields in the immediate operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_mpsadbw_epu8(__m128i X, __m128i Y, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VMPSADBW / MPSADBW </c> instruction. +/// +/// \param X +/// A 128-bit vector of [16 x i8]. +/// \param Y +/// A 128-bit vector of [16 x i8]. +/// \param M +/// An 8-bit immediate operand specifying how the absolute differences are to +/// be calculated, according to the following algorithm: +/// \code +/// // M2 represents bit 2 of the immediate operand +/// // M10 represents bits [1:0] of the immediate operand +/// i = M2 * 4; +/// j = M10 * 4; +/// for (k = 0; k < 8; k = k + 1) { +/// d0 = abs(X[i + k + 0] - Y[j + 0]); +/// d1 = abs(X[i + k + 1] - Y[j + 1]); +/// d2 = abs(X[i + k + 2] - Y[j + 2]); +/// d3 = abs(X[i + k + 3] - Y[j + 3]); +/// r[k] = d0 + d1 + d2 + d3; +/// } +/// \endcode +/// \returns A 128-bit integer vector containing the sums of the sets of +/// absolute differences between both operands. +#define _mm_mpsadbw_epu8(X, Y, M) \ + ((__m128i)__builtin_ia32_mpsadbw128((__v16qi)(__m128i)(X), \ + (__v16qi)(__m128i)(Y), (M))) + +/// Finds the minimum unsigned 16-bit element in the input 128-bit +/// vector of [8 x u16] and returns it and along with its index. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPHMINPOSUW / PHMINPOSUW </c> +/// instruction. +/// +/// \param __V +/// A 128-bit vector of [8 x u16]. +/// \returns A 128-bit value where bits [15:0] contain the minimum value found +/// in parameter \a __V, bits [18:16] contain the index of the minimum value +/// and the remaining bits are set to 0. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_minpos_epu16(__m128i __V) { + return (__m128i)__builtin_ia32_phminposuw128((__v8hi)__V); +} + +/* Handle the sse4.2 definitions here. */ + +/* These definitions are normally in nmmintrin.h, but gcc puts them in here + so we'll do the same. */ + +#undef __DEFAULT_FN_ATTRS +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("sse4.2"))) + +/* These specify the type of data that we're comparing. */ +#define _SIDD_UBYTE_OPS 0x00 +#define _SIDD_UWORD_OPS 0x01 +#define _SIDD_SBYTE_OPS 0x02 +#define _SIDD_SWORD_OPS 0x03 + +/* These specify the type of comparison operation. */ +#define _SIDD_CMP_EQUAL_ANY 0x00 +#define _SIDD_CMP_RANGES 0x04 +#define _SIDD_CMP_EQUAL_EACH 0x08 +#define _SIDD_CMP_EQUAL_ORDERED 0x0c + +/* These macros specify the polarity of the operation. */ +#define _SIDD_POSITIVE_POLARITY 0x00 +#define _SIDD_NEGATIVE_POLARITY 0x10 +#define _SIDD_MASKED_POSITIVE_POLARITY 0x20 +#define _SIDD_MASKED_NEGATIVE_POLARITY 0x30 + +/* These macros are used in _mm_cmpXstri() to specify the return. */ +#define _SIDD_LEAST_SIGNIFICANT 0x00 +#define _SIDD_MOST_SIGNIFICANT 0x40 + +/* These macros are used in _mm_cmpXstri() to specify the return. */ +#define _SIDD_BIT_MASK 0x00 +#define _SIDD_UNIT_MASK 0x40 + +/* SSE4.2 Packed Comparison Intrinsics. */ +/// Uses the immediate operand \a M to perform a comparison of string +/// data with implicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns a 128-bit integer vector representing the result +/// mask of the comparison. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_cmpistrm(__m128i A, __m128i B, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPISTRM / PCMPISTRM </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words, the type of comparison to perform, and the format of the return +/// value. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// Bit [6]: Determines whether the result is zero-extended or expanded to 16 +/// bytes. \n +/// 0: The result is zero-extended to 16 bytes. \n +/// 1: The result is expanded to 16 bytes (this expansion is performed by +/// repeating each bit 8 or 16 times). +/// \returns Returns a 128-bit integer vector representing the result mask of +/// the comparison. +#define _mm_cmpistrm(A, B, M) \ + ((__m128i)__builtin_ia32_pcmpistrm128((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with implicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns an integer representing the result index of the +/// comparison. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpistri(__m128i A, __m128i B, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words, the type of comparison to perform, and the format of the return +/// value. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// Bit [6]: Determines whether the index of the lowest set bit or the +/// highest set bit is returned. \n +/// 0: The index of the least significant set bit. \n +/// 1: The index of the most significant set bit. \n +/// \returns Returns an integer representing the result index of the comparison. +#define _mm_cmpistri(A, B, M) \ + ((int)__builtin_ia32_pcmpistri128((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with explicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns a 128-bit integer vector representing the result +/// mask of the comparison. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_cmpestrm(__m128i A, int LA, __m128i B, int LB, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPESTRM / PCMPESTRM </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LA +/// An integer that specifies the length of the string in \a A. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LB +/// An integer that specifies the length of the string in \a B. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words, the type of comparison to perform, and the format of the return +/// value. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// Bit [6]: Determines whether the result is zero-extended or expanded to 16 +/// bytes. \n +/// 0: The result is zero-extended to 16 bytes. \n +/// 1: The result is expanded to 16 bytes (this expansion is performed by +/// repeating each bit 8 or 16 times). \n +/// \returns Returns a 128-bit integer vector representing the result mask of +/// the comparison. +#define _mm_cmpestrm(A, LA, B, LB, M) \ + ((__m128i)__builtin_ia32_pcmpestrm128((__v16qi)(__m128i)(A), (int)(LA), \ + (__v16qi)(__m128i)(B), (int)(LB), \ + (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with explicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns an integer representing the result index of the +/// comparison. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpestri(__m128i A, int LA, __m128i B, int LB, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LA +/// An integer that specifies the length of the string in \a A. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LB +/// An integer that specifies the length of the string in \a B. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words, the type of comparison to perform, and the format of the return +/// value. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// Bit [6]: Determines whether the index of the lowest set bit or the +/// highest set bit is returned. \n +/// 0: The index of the least significant set bit. \n +/// 1: The index of the most significant set bit. \n +/// \returns Returns an integer representing the result index of the comparison. +#define _mm_cmpestri(A, LA, B, LB, M) \ + ((int)__builtin_ia32_pcmpestri128((__v16qi)(__m128i)(A), (int)(LA), \ + (__v16qi)(__m128i)(B), (int)(LB), \ + (int)(M))) + +/* SSE4.2 Packed Comparison Intrinsics and EFlag Reading. */ +/// Uses the immediate operand \a M to perform a comparison of string +/// data with implicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns 1 if the bit mask is zero and the length of the +/// string in \a B is the maximum, otherwise, returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpistra(__m128i A, __m128i B, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// \returns Returns 1 if the bit mask is zero and the length of the string in +/// \a B is the maximum; otherwise, returns 0. +#define _mm_cmpistra(A, B, M) \ + ((int)__builtin_ia32_pcmpistria128((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with implicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns 1 if the bit mask is non-zero, otherwise, returns +/// 0. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpistrc(__m128i A, __m128i B, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. +/// \returns Returns 1 if the bit mask is non-zero, otherwise, returns 0. +#define _mm_cmpistrc(A, B, M) \ + ((int)__builtin_ia32_pcmpistric128((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with implicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns bit 0 of the resulting bit mask. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpistro(__m128i A, __m128i B, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// \returns Returns bit 0 of the resulting bit mask. +#define _mm_cmpistro(A, B, M) \ + ((int)__builtin_ia32_pcmpistrio128((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with implicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns 1 if the length of the string in \a A is less than +/// the maximum, otherwise, returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpistrs(__m128i A, __m128i B, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// \returns Returns 1 if the length of the string in \a A is less than the +/// maximum, otherwise, returns 0. +#define _mm_cmpistrs(A, B, M) \ + ((int)__builtin_ia32_pcmpistris128((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with implicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns 1 if the length of the string in \a B is less than +/// the maximum, otherwise, returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpistrz(__m128i A, __m128i B, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. +/// \returns Returns 1 if the length of the string in \a B is less than the +/// maximum, otherwise, returns 0. +#define _mm_cmpistrz(A, B, M) \ + ((int)__builtin_ia32_pcmpistriz128((__v16qi)(__m128i)(A), \ + (__v16qi)(__m128i)(B), (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with explicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns 1 if the bit mask is zero and the length of the +/// string in \a B is the maximum, otherwise, returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpestra(__m128i A, int LA, __m128i B, int LB, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LA +/// An integer that specifies the length of the string in \a A. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LB +/// An integer that specifies the length of the string in \a B. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. +/// \returns Returns 1 if the bit mask is zero and the length of the string in +/// \a B is the maximum, otherwise, returns 0. +#define _mm_cmpestra(A, LA, B, LB, M) \ + ((int)__builtin_ia32_pcmpestria128((__v16qi)(__m128i)(A), (int)(LA), \ + (__v16qi)(__m128i)(B), (int)(LB), \ + (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with explicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns 1 if the resulting mask is non-zero, otherwise, +/// returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpestrc(__m128i A, int LA, __m128i B, int LB, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LA +/// An integer that specifies the length of the string in \a A. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LB +/// An integer that specifies the length of the string in \a B. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// \returns Returns 1 if the resulting mask is non-zero, otherwise, returns 0. +#define _mm_cmpestrc(A, LA, B, LB, M) \ + ((int)__builtin_ia32_pcmpestric128((__v16qi)(__m128i)(A), (int)(LA), \ + (__v16qi)(__m128i)(B), (int)(LB), \ + (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with explicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns bit 0 of the resulting bit mask. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpestro(__m128i A, int LA, __m128i B, int LB, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LA +/// An integer that specifies the length of the string in \a A. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LB +/// An integer that specifies the length of the string in \a B. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. +/// \returns Returns bit 0 of the resulting bit mask. +#define _mm_cmpestro(A, LA, B, LB, M) \ + ((int)__builtin_ia32_pcmpestrio128((__v16qi)(__m128i)(A), (int)(LA), \ + (__v16qi)(__m128i)(B), (int)(LB), \ + (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with explicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns 1 if the length of the string in \a A is less than +/// the maximum, otherwise, returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpestrs(__m128i A, int LA, __m128i B, int LB, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> +/// instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LA +/// An integer that specifies the length of the string in \a A. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LB +/// An integer that specifies the length of the string in \a B. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement in the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. \n +/// \returns Returns 1 if the length of the string in \a A is less than the +/// maximum, otherwise, returns 0. +#define _mm_cmpestrs(A, LA, B, LB, M) \ + ((int)__builtin_ia32_pcmpestris128((__v16qi)(__m128i)(A), (int)(LA), \ + (__v16qi)(__m128i)(B), (int)(LB), \ + (int)(M))) + +/// Uses the immediate operand \a M to perform a comparison of string +/// data with explicitly defined lengths that is contained in source operands +/// \a A and \a B. Returns 1 if the length of the string in \a B is less than +/// the maximum, otherwise, returns 0. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_cmpestrz(__m128i A, int LA, __m128i B, int LB, const int M); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPCMPESTRI </c> instruction. +/// +/// \param A +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LA +/// An integer that specifies the length of the string in \a A. +/// \param B +/// A 128-bit integer vector containing one of the source operands to be +/// compared. +/// \param LB +/// An integer that specifies the length of the string in \a B. +/// \param M +/// An 8-bit immediate operand specifying whether the characters are bytes or +/// words and the type of comparison to perform. \n +/// Bits [1:0]: Determine source data format. \n +/// 00: 16 unsigned bytes \n +/// 01: 8 unsigned words \n +/// 10: 16 signed bytes \n +/// 11: 8 signed words \n +/// Bits [3:2]: Determine comparison type and aggregation method. \n +/// 00: Subset: Each character in \a B is compared for equality with all +/// the characters in \a A. \n +/// 01: Ranges: Each character in \a B is compared to \a A. The comparison +/// basis is greater than or equal for even-indexed elements in \a A, +/// and less than or equal for odd-indexed elements in \a A. \n +/// 10: Match: Compare each pair of corresponding characters in \a A and +/// \a B for equality. \n +/// 11: Substring: Search \a B for substring matches of \a A. \n +/// Bits [5:4]: Determine whether to perform a one's complement on the bit +/// mask of the comparison results. \n +/// 00: No effect. \n +/// 01: Negate the bit mask. \n +/// 10: No effect. \n +/// 11: Negate the bit mask only for bits with an index less than or equal +/// to the size of \a A or \a B. +/// \returns Returns 1 if the length of the string in \a B is less than the +/// maximum, otherwise, returns 0. +#define _mm_cmpestrz(A, LA, B, LB, M) \ + ((int)__builtin_ia32_pcmpestriz128((__v16qi)(__m128i)(A), (int)(LA), \ + (__v16qi)(__m128i)(B), (int)(LB), \ + (int)(M))) + +/* SSE4.2 Compare Packed Data -- Greater Than. */ +/// Compares each of the corresponding 64-bit values of the 128-bit +/// integer vectors to determine if the values in the first operand are +/// greater than those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPCMPGTQ / PCMPGTQ </c> instruction. +/// +/// \param __V1 +/// A 128-bit integer vector. +/// \param __V2 +/// A 128-bit integer vector. +/// \returns A 128-bit integer vector containing the comparison results. +static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi64(__m128i __V1, + __m128i __V2) { + return (__m128i)((__v2di)__V1 > (__v2di)__V2); +} + +#undef __DEFAULT_FN_ATTRS + +#include <popcntintrin.h> + +#include <crc32intrin.h> + +#endif /* __SMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..93d49577ce6b9a59c26098f16bfa6bd065ac1f58 GIT binary patch literal 55794 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h new file mode 100644 index 00000000..ba978721 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h @@ -0,0 +1,51 @@ +/*===---- stdarg.h - Variable argument handling ----------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __STDARG_H + +#ifndef __GNUC_VA_LIST +#define __GNUC_VA_LIST +typedef __builtin_va_list __gnuc_va_list; +#endif + +#ifdef __need___va_list +#undef __need___va_list +#else +#define __STDARG_H +#ifndef _VA_LIST +typedef __builtin_va_list va_list; +#define _VA_LIST +#endif + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +/* C2x does not require the second parameter for va_start. */ +#define va_start(ap, ...) __builtin_va_start(ap, 0) +#else +/* Versions before C2x do require the second parameter. */ +#define va_start(ap, param) __builtin_va_start(ap, param) +#endif +#define va_end(ap) __builtin_va_end(ap) +#define va_arg(ap, type) __builtin_va_arg(ap, type) + +/* GCC always defines __va_copy, but does not define va_copy unless in c99 mode + * or -ansi is not specified, since it was not part of C90. + */ +#define __va_copy(d,s) __builtin_va_copy(d,s) + +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ + (defined(__cplusplus) && __cplusplus >= 201103L) || \ + !defined(__STRICT_ANSI__) +#define va_copy(dest, src) __builtin_va_copy(dest, src) +#endif + +#endif /* __STDARG_H */ + +#endif /* not __STDARG_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a1c7dc6c49ccd1d784ddc029c527bc292c9a5110 GIT binary patch literal 12335 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 LWPUF$^bY?A!8QVx literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h new file mode 100644 index 00000000..9406aab0 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h @@ -0,0 +1,34 @@ +/*===---- stdbool.h - Standard header for booleans -------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __STDBOOL_H +#define __STDBOOL_H + +#define __bool_true_false_are_defined 1 + +#if defined(__STDC_VERSION__) && __STDC_VERSION__ > 201710L +/* FIXME: We should be issuing a deprecation warning here, but cannot yet due + * to system headers which include this header file unconditionally. + */ +#elif !defined(__cplusplus) +#define bool _Bool +#define true 1 +#define false 0 +#elif defined(__GNUC__) && !defined(__STRICT_ANSI__) +/* Define _Bool as a GNU extension. */ +#define _Bool bool +#if defined(__cplusplus) && __cplusplus < 201103L +/* For C++98, define bool, false, true as a GNU extension. */ +#define bool bool +#define false false +#define true true +#endif +#endif + +#endif /* __STDBOOL_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a4d3c1361094de146a71b127f43780af743c3e65 GIT binary patch literal 12476 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h new file mode 100644 index 00000000..42815176 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h @@ -0,0 +1,128 @@ +/*===---- stddef.h - Basic type definitions --------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined(__STDDEF_H) || defined(__need_ptrdiff_t) || \ + defined(__need_size_t) || defined(__need_wchar_t) || \ + defined(__need_NULL) || defined(__need_wint_t) + +#if !defined(__need_ptrdiff_t) && !defined(__need_size_t) && \ + !defined(__need_wchar_t) && !defined(__need_NULL) && \ + !defined(__need_wint_t) +/* Always define miscellaneous pieces when modules are available. */ +#if !__has_feature(modules) +#define __STDDEF_H +#endif +#define __need_ptrdiff_t +#define __need_size_t +#define __need_wchar_t +#define __need_NULL +#define __need_STDDEF_H_misc +/* __need_wint_t is intentionally not defined here. */ +#endif + +#if defined(__need_ptrdiff_t) +#if !defined(_PTRDIFF_T) || __has_feature(modules) +/* Always define ptrdiff_t when modules are available. */ +#if !__has_feature(modules) +#define _PTRDIFF_T +#endif +typedef __PTRDIFF_TYPE__ ptrdiff_t; +#endif +#undef __need_ptrdiff_t +#endif /* defined(__need_ptrdiff_t) */ + +#if defined(__need_size_t) +#if !defined(_SIZE_T) || __has_feature(modules) +/* Always define size_t when modules are available. */ +#if !__has_feature(modules) +#define _SIZE_T +#endif +typedef __SIZE_TYPE__ size_t; +#endif +#undef __need_size_t +#endif /*defined(__need_size_t) */ + +#if defined(__need_STDDEF_H_misc) +/* ISO9899:2011 7.20 (C11 Annex K): Define rsize_t if __STDC_WANT_LIB_EXT1__ is + * enabled. */ +#if (defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1 && \ + !defined(_RSIZE_T)) || __has_feature(modules) +/* Always define rsize_t when modules are available. */ +#if !__has_feature(modules) +#define _RSIZE_T +#endif +typedef __SIZE_TYPE__ rsize_t; +#endif +#endif /* defined(__need_STDDEF_H_misc) */ + +#if defined(__need_wchar_t) +#if !defined(__cplusplus) || (defined(_MSC_VER) && !_NATIVE_WCHAR_T_DEFINED) +/* Always define wchar_t when modules are available. */ +#if !defined(_WCHAR_T) || __has_feature(modules) +#if !__has_feature(modules) +#define _WCHAR_T +#if defined(_MSC_EXTENSIONS) +#define _WCHAR_T_DEFINED +#endif +#endif +typedef __WCHAR_TYPE__ wchar_t; +#endif +#endif +#undef __need_wchar_t +#endif /* defined(__need_wchar_t) */ + +#if defined(__need_NULL) +#undef NULL +#ifdef __cplusplus +# if !defined(__MINGW32__) && !defined(_MSC_VER) +# define NULL __null +# else +# define NULL 0 +# endif +#else +# define NULL ((void*)0) +#endif +#ifdef __cplusplus +#if defined(_MSC_EXTENSIONS) && defined(_NATIVE_NULLPTR_SUPPORTED) +namespace std { typedef decltype(nullptr) nullptr_t; } +using ::std::nullptr_t; +#endif +#endif +#undef __need_NULL +#endif /* defined(__need_NULL) */ + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +typedef typeof(nullptr) nullptr_t; +#endif /* defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L */ + +#if defined(__need_STDDEF_H_misc) +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ + (defined(__cplusplus) && __cplusplus >= 201103L) +#include "__stddef_max_align_t.h" +#endif +#define offsetof(t, d) __builtin_offsetof(t, d) +#undef __need_STDDEF_H_misc +#endif /* defined(__need_STDDEF_H_misc) */ + +/* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use +__WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */ +#if defined(__need_wint_t) +/* Always define wint_t when modules are available. */ +#if !defined(_WINT_T) || __has_feature(modules) +#if !__has_feature(modules) +#define _WINT_T +#endif +typedef __WINT_TYPE__ wint_t; +#endif +#undef __need_wint_t +#endif /* __need_wint_t */ + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e631c67d58284b9153947e698f24c31ae69778dd GIT binary patch literal 12392 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h new file mode 100644 index 00000000..a47e91be --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h @@ -0,0 +1,979 @@ +/*===---- stdint.h - Standard header for sized integer types --------------===*\ + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * +\*===----------------------------------------------------------------------===*/ + +#ifndef __CLANG_STDINT_H +// AIX system headers need stdint.h to be re-enterable while _STD_TYPES_T +// is defined until an inclusion of it without _STD_TYPES_T occurs, in which +// case the header guard macro is defined. +#if !defined(_AIX) || !defined(_STD_TYPES_T) || !defined(__STDC_HOSTED__) +#define __CLANG_STDINT_H +#endif + +/* If we're hosted, fall back to the system's stdint.h, which might have + * additional definitions. + */ +#if __STDC_HOSTED__ && __has_include_next(<stdint.h>) + +// C99 7.18.3 Limits of other integer types +// +// Footnote 219, 220: C++ implementations should define these macros only when +// __STDC_LIMIT_MACROS is defined before <stdint.h> is included. +// +// Footnote 222: C++ implementations should define these macros only when +// __STDC_CONSTANT_MACROS is defined before <stdint.h> is included. +// +// C++11 [cstdint.syn]p2: +// +// The macros defined by <cstdint> are provided unconditionally. In particular, +// the symbols __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS (mentioned in +// footnotes 219, 220, and 222 in the C standard) play no role in C++. +// +// C11 removed the problematic footnotes. +// +// Work around this inconsistency by always defining those macros in C++ mode, +// so that a C library implementation which follows the C99 standard can be +// used in C++. +# ifdef __cplusplus +# if !defined(__STDC_LIMIT_MACROS) +# define __STDC_LIMIT_MACROS +# define __STDC_LIMIT_MACROS_DEFINED_BY_CLANG +# endif +# if !defined(__STDC_CONSTANT_MACROS) +# define __STDC_CONSTANT_MACROS +# define __STDC_CONSTANT_MACROS_DEFINED_BY_CLANG +# endif +# endif + +# include_next <stdint.h> + +# ifdef __STDC_LIMIT_MACROS_DEFINED_BY_CLANG +# undef __STDC_LIMIT_MACROS +# undef __STDC_LIMIT_MACROS_DEFINED_BY_CLANG +# endif +# ifdef __STDC_CONSTANT_MACROS_DEFINED_BY_CLANG +# undef __STDC_CONSTANT_MACROS +# undef __STDC_CONSTANT_MACROS_DEFINED_BY_CLANG +# endif + +#else + +/* C99 7.18.1.1 Exact-width integer types. + * C99 7.18.1.2 Minimum-width integer types. + * C99 7.18.1.3 Fastest minimum-width integer types. + * + * The standard requires that exact-width type be defined for 8-, 16-, 32-, and + * 64-bit types if they are implemented. Other exact width types are optional. + * This implementation defines an exact-width types for every integer width + * that is represented in the standard integer types. + * + * The standard also requires minimum-width types be defined for 8-, 16-, 32-, + * and 64-bit widths regardless of whether there are corresponding exact-width + * types. + * + * To accommodate targets that are missing types that are exactly 8, 16, 32, or + * 64 bits wide, this implementation takes an approach of cascading + * redefinitions, redefining __int_leastN_t to successively smaller exact-width + * types. It is therefore important that the types are defined in order of + * descending widths. + * + * We currently assume that the minimum-width types and the fastest + * minimum-width types are the same. This is allowed by the standard, but is + * suboptimal. + * + * In violation of the standard, some targets do not implement a type that is + * wide enough to represent all of the required widths (8-, 16-, 32-, 64-bit). + * To accommodate these targets, a required minimum-width type is only + * defined if there exists an exact-width type of equal or greater width. + */ + +#ifdef __INT64_TYPE__ +# ifndef __int8_t_defined /* glibc sys/types.h also defines int64_t*/ +typedef __INT64_TYPE__ int64_t; +# endif /* __int8_t_defined */ +typedef __UINT64_TYPE__ uint64_t; +# undef __int_least64_t +# define __int_least64_t int64_t +# undef __uint_least64_t +# define __uint_least64_t uint64_t +# undef __int_least32_t +# define __int_least32_t int64_t +# undef __uint_least32_t +# define __uint_least32_t uint64_t +# undef __int_least16_t +# define __int_least16_t int64_t +# undef __uint_least16_t +# define __uint_least16_t uint64_t +# undef __int_least8_t +# define __int_least8_t int64_t +# undef __uint_least8_t +# define __uint_least8_t uint64_t +#endif /* __INT64_TYPE__ */ + +#ifdef __int_least64_t +typedef __int_least64_t int_least64_t; +typedef __uint_least64_t uint_least64_t; +typedef __int_least64_t int_fast64_t; +typedef __uint_least64_t uint_fast64_t; +#endif /* __int_least64_t */ + +#ifdef __INT56_TYPE__ +typedef __INT56_TYPE__ int56_t; +typedef __UINT56_TYPE__ uint56_t; +typedef int56_t int_least56_t; +typedef uint56_t uint_least56_t; +typedef int56_t int_fast56_t; +typedef uint56_t uint_fast56_t; +# undef __int_least32_t +# define __int_least32_t int56_t +# undef __uint_least32_t +# define __uint_least32_t uint56_t +# undef __int_least16_t +# define __int_least16_t int56_t +# undef __uint_least16_t +# define __uint_least16_t uint56_t +# undef __int_least8_t +# define __int_least8_t int56_t +# undef __uint_least8_t +# define __uint_least8_t uint56_t +#endif /* __INT56_TYPE__ */ + + +#ifdef __INT48_TYPE__ +typedef __INT48_TYPE__ int48_t; +typedef __UINT48_TYPE__ uint48_t; +typedef int48_t int_least48_t; +typedef uint48_t uint_least48_t; +typedef int48_t int_fast48_t; +typedef uint48_t uint_fast48_t; +# undef __int_least32_t +# define __int_least32_t int48_t +# undef __uint_least32_t +# define __uint_least32_t uint48_t +# undef __int_least16_t +# define __int_least16_t int48_t +# undef __uint_least16_t +# define __uint_least16_t uint48_t +# undef __int_least8_t +# define __int_least8_t int48_t +# undef __uint_least8_t +# define __uint_least8_t uint48_t +#endif /* __INT48_TYPE__ */ + + +#ifdef __INT40_TYPE__ +typedef __INT40_TYPE__ int40_t; +typedef __UINT40_TYPE__ uint40_t; +typedef int40_t int_least40_t; +typedef uint40_t uint_least40_t; +typedef int40_t int_fast40_t; +typedef uint40_t uint_fast40_t; +# undef __int_least32_t +# define __int_least32_t int40_t +# undef __uint_least32_t +# define __uint_least32_t uint40_t +# undef __int_least16_t +# define __int_least16_t int40_t +# undef __uint_least16_t +# define __uint_least16_t uint40_t +# undef __int_least8_t +# define __int_least8_t int40_t +# undef __uint_least8_t +# define __uint_least8_t uint40_t +#endif /* __INT40_TYPE__ */ + + +#ifdef __INT32_TYPE__ + +# ifndef __int8_t_defined /* glibc sys/types.h also defines int32_t*/ +typedef __INT32_TYPE__ int32_t; +# endif /* __int8_t_defined */ + +# ifndef __uint32_t_defined /* more glibc compatibility */ +# define __uint32_t_defined +typedef __UINT32_TYPE__ uint32_t; +# endif /* __uint32_t_defined */ + +# undef __int_least32_t +# define __int_least32_t int32_t +# undef __uint_least32_t +# define __uint_least32_t uint32_t +# undef __int_least16_t +# define __int_least16_t int32_t +# undef __uint_least16_t +# define __uint_least16_t uint32_t +# undef __int_least8_t +# define __int_least8_t int32_t +# undef __uint_least8_t +# define __uint_least8_t uint32_t +#endif /* __INT32_TYPE__ */ + +#ifdef __int_least32_t +typedef __int_least32_t int_least32_t; +typedef __uint_least32_t uint_least32_t; +typedef __int_least32_t int_fast32_t; +typedef __uint_least32_t uint_fast32_t; +#endif /* __int_least32_t */ + +#ifdef __INT24_TYPE__ +typedef __INT24_TYPE__ int24_t; +typedef __UINT24_TYPE__ uint24_t; +typedef int24_t int_least24_t; +typedef uint24_t uint_least24_t; +typedef int24_t int_fast24_t; +typedef uint24_t uint_fast24_t; +# undef __int_least16_t +# define __int_least16_t int24_t +# undef __uint_least16_t +# define __uint_least16_t uint24_t +# undef __int_least8_t +# define __int_least8_t int24_t +# undef __uint_least8_t +# define __uint_least8_t uint24_t +#endif /* __INT24_TYPE__ */ + +#ifdef __INT16_TYPE__ +#ifndef __int8_t_defined /* glibc sys/types.h also defines int16_t*/ +typedef __INT16_TYPE__ int16_t; +#endif /* __int8_t_defined */ +typedef __UINT16_TYPE__ uint16_t; +# undef __int_least16_t +# define __int_least16_t int16_t +# undef __uint_least16_t +# define __uint_least16_t uint16_t +# undef __int_least8_t +# define __int_least8_t int16_t +# undef __uint_least8_t +# define __uint_least8_t uint16_t +#endif /* __INT16_TYPE__ */ + +#ifdef __int_least16_t +typedef __int_least16_t int_least16_t; +typedef __uint_least16_t uint_least16_t; +typedef __int_least16_t int_fast16_t; +typedef __uint_least16_t uint_fast16_t; +#endif /* __int_least16_t */ + + +#ifdef __INT8_TYPE__ +#ifndef __int8_t_defined /* glibc sys/types.h also defines int8_t*/ +typedef __INT8_TYPE__ int8_t; +#endif /* __int8_t_defined */ +typedef __UINT8_TYPE__ uint8_t; +# undef __int_least8_t +# define __int_least8_t int8_t +# undef __uint_least8_t +# define __uint_least8_t uint8_t +#endif /* __INT8_TYPE__ */ + +#ifdef __int_least8_t +typedef __int_least8_t int_least8_t; +typedef __uint_least8_t uint_least8_t; +typedef __int_least8_t int_fast8_t; +typedef __uint_least8_t uint_fast8_t; +#endif /* __int_least8_t */ + +/* prevent glibc sys/types.h from defining conflicting types */ +#ifndef __int8_t_defined +# define __int8_t_defined +#endif /* __int8_t_defined */ + +/* C99 7.18.1.4 Integer types capable of holding object pointers. + */ +#define __stdint_join3(a,b,c) a ## b ## c + +#ifndef _INTPTR_T +#ifndef __intptr_t_defined +typedef __INTPTR_TYPE__ intptr_t; +#define __intptr_t_defined +#define _INTPTR_T +#endif +#endif + +#ifndef _UINTPTR_T +typedef __UINTPTR_TYPE__ uintptr_t; +#define _UINTPTR_T +#endif + +/* C99 7.18.1.5 Greatest-width integer types. + */ +typedef __INTMAX_TYPE__ intmax_t; +typedef __UINTMAX_TYPE__ uintmax_t; + +/* C99 7.18.4 Macros for minimum-width integer constants. + * + * The standard requires that integer constant macros be defined for all the + * minimum-width types defined above. As 8-, 16-, 32-, and 64-bit minimum-width + * types are required, the corresponding integer constant macros are defined + * here. This implementation also defines minimum-width types for every other + * integer width that the target implements, so corresponding macros are + * defined below, too. + * + * These macros are defined using the same successive-shrinking approach as + * the type definitions above. It is likewise important that macros are defined + * in order of decending width. + * + * Note that C++ should not check __STDC_CONSTANT_MACROS here, contrary to the + * claims of the C standard (see C++ 18.3.1p2, [cstdint.syn]). + */ + +#define __int_c_join(a, b) a ## b +#define __int_c(v, suffix) __int_c_join(v, suffix) +#define __uint_c(v, suffix) __int_c_join(v##U, suffix) + + +#ifdef __INT64_TYPE__ +# undef __int64_c_suffix +# undef __int32_c_suffix +# undef __int16_c_suffix +# undef __int8_c_suffix +# ifdef __INT64_C_SUFFIX__ +# define __int64_c_suffix __INT64_C_SUFFIX__ +# define __int32_c_suffix __INT64_C_SUFFIX__ +# define __int16_c_suffix __INT64_C_SUFFIX__ +# define __int8_c_suffix __INT64_C_SUFFIX__ +# endif /* __INT64_C_SUFFIX__ */ +#endif /* __INT64_TYPE__ */ + +#ifdef __int_least64_t +# ifdef __int64_c_suffix +# define INT64_C(v) __int_c(v, __int64_c_suffix) +# define UINT64_C(v) __uint_c(v, __int64_c_suffix) +# else +# define INT64_C(v) v +# define UINT64_C(v) v ## U +# endif /* __int64_c_suffix */ +#endif /* __int_least64_t */ + + +#ifdef __INT56_TYPE__ +# undef __int32_c_suffix +# undef __int16_c_suffix +# undef __int8_c_suffix +# ifdef __INT56_C_SUFFIX__ +# define INT56_C(v) __int_c(v, __INT56_C_SUFFIX__) +# define UINT56_C(v) __uint_c(v, __INT56_C_SUFFIX__) +# define __int32_c_suffix __INT56_C_SUFFIX__ +# define __int16_c_suffix __INT56_C_SUFFIX__ +# define __int8_c_suffix __INT56_C_SUFFIX__ +# else +# define INT56_C(v) v +# define UINT56_C(v) v ## U +# endif /* __INT56_C_SUFFIX__ */ +#endif /* __INT56_TYPE__ */ + + +#ifdef __INT48_TYPE__ +# undef __int32_c_suffix +# undef __int16_c_suffix +# undef __int8_c_suffix +# ifdef __INT48_C_SUFFIX__ +# define INT48_C(v) __int_c(v, __INT48_C_SUFFIX__) +# define UINT48_C(v) __uint_c(v, __INT48_C_SUFFIX__) +# define __int32_c_suffix __INT48_C_SUFFIX__ +# define __int16_c_suffix __INT48_C_SUFFIX__ +# define __int8_c_suffix __INT48_C_SUFFIX__ +# else +# define INT48_C(v) v +# define UINT48_C(v) v ## U +# endif /* __INT48_C_SUFFIX__ */ +#endif /* __INT48_TYPE__ */ + + +#ifdef __INT40_TYPE__ +# undef __int32_c_suffix +# undef __int16_c_suffix +# undef __int8_c_suffix +# ifdef __INT40_C_SUFFIX__ +# define INT40_C(v) __int_c(v, __INT40_C_SUFFIX__) +# define UINT40_C(v) __uint_c(v, __INT40_C_SUFFIX__) +# define __int32_c_suffix __INT40_C_SUFFIX__ +# define __int16_c_suffix __INT40_C_SUFFIX__ +# define __int8_c_suffix __INT40_C_SUFFIX__ +# else +# define INT40_C(v) v +# define UINT40_C(v) v ## U +# endif /* __INT40_C_SUFFIX__ */ +#endif /* __INT40_TYPE__ */ + + +#ifdef __INT32_TYPE__ +# undef __int32_c_suffix +# undef __int16_c_suffix +# undef __int8_c_suffix +# ifdef __INT32_C_SUFFIX__ +# define __int32_c_suffix __INT32_C_SUFFIX__ +# define __int16_c_suffix __INT32_C_SUFFIX__ +# define __int8_c_suffix __INT32_C_SUFFIX__ +# endif /* __INT32_C_SUFFIX__ */ +#endif /* __INT32_TYPE__ */ + +#ifdef __int_least32_t +# ifdef __int32_c_suffix +# define INT32_C(v) __int_c(v, __int32_c_suffix) +# define UINT32_C(v) __uint_c(v, __int32_c_suffix) +# else +# define INT32_C(v) v +# define UINT32_C(v) v ## U +# endif /* __int32_c_suffix */ +#endif /* __int_least32_t */ + + +#ifdef __INT24_TYPE__ +# undef __int16_c_suffix +# undef __int8_c_suffix +# ifdef __INT24_C_SUFFIX__ +# define INT24_C(v) __int_c(v, __INT24_C_SUFFIX__) +# define UINT24_C(v) __uint_c(v, __INT24_C_SUFFIX__) +# define __int16_c_suffix __INT24_C_SUFFIX__ +# define __int8_c_suffix __INT24_C_SUFFIX__ +# else +# define INT24_C(v) v +# define UINT24_C(v) v ## U +# endif /* __INT24_C_SUFFIX__ */ +#endif /* __INT24_TYPE__ */ + + +#ifdef __INT16_TYPE__ +# undef __int16_c_suffix +# undef __int8_c_suffix +# ifdef __INT16_C_SUFFIX__ +# define __int16_c_suffix __INT16_C_SUFFIX__ +# define __int8_c_suffix __INT16_C_SUFFIX__ +# endif /* __INT16_C_SUFFIX__ */ +#endif /* __INT16_TYPE__ */ + +#ifdef __int_least16_t +# ifdef __int16_c_suffix +# define INT16_C(v) __int_c(v, __int16_c_suffix) +# define UINT16_C(v) __uint_c(v, __int16_c_suffix) +# else +# define INT16_C(v) v +# define UINT16_C(v) v ## U +# endif /* __int16_c_suffix */ +#endif /* __int_least16_t */ + + +#ifdef __INT8_TYPE__ +# undef __int8_c_suffix +# ifdef __INT8_C_SUFFIX__ +# define __int8_c_suffix __INT8_C_SUFFIX__ +# endif /* __INT8_C_SUFFIX__ */ +#endif /* __INT8_TYPE__ */ + +#ifdef __int_least8_t +# ifdef __int8_c_suffix +# define INT8_C(v) __int_c(v, __int8_c_suffix) +# define UINT8_C(v) __uint_c(v, __int8_c_suffix) +# else +# define INT8_C(v) v +# define UINT8_C(v) v ## U +# endif /* __int8_c_suffix */ +#endif /* __int_least8_t */ + + +/* C99 7.18.2.1 Limits of exact-width integer types. + * C99 7.18.2.2 Limits of minimum-width integer types. + * C99 7.18.2.3 Limits of fastest minimum-width integer types. + * + * The presence of limit macros are completely optional in C99. This + * implementation defines limits for all of the types (exact- and + * minimum-width) that it defines above, using the limits of the minimum-width + * type for any types that do not have exact-width representations. + * + * As in the type definitions, this section takes an approach of + * successive-shrinking to determine which limits to use for the standard (8, + * 16, 32, 64) bit widths when they don't have exact representations. It is + * therefore important that the definitions be kept in order of decending + * widths. + * + * Note that C++ should not check __STDC_LIMIT_MACROS here, contrary to the + * claims of the C standard (see C++ 18.3.1p2, [cstdint.syn]). + */ + +#ifdef __INT64_TYPE__ +# define INT64_MAX INT64_C( 9223372036854775807) +# define INT64_MIN (-INT64_C( 9223372036854775807)-1) +# define UINT64_MAX UINT64_C(18446744073709551615) +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT64_WIDTH 64 +# define INT64_WIDTH UINT64_WIDTH + +# define __UINT_LEAST64_WIDTH UINT64_WIDTH +# undef __UINT_LEAST32_WIDTH +# define __UINT_LEAST32_WIDTH UINT64_WIDTH +# undef __UINT_LEAST16_WIDTH +# define __UINT_LEAST16_WIDTH UINT64_WIDTH +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT64_MAX +#endif /* __STDC_VERSION__ */ + +# define __INT_LEAST64_MIN INT64_MIN +# define __INT_LEAST64_MAX INT64_MAX +# define __UINT_LEAST64_MAX UINT64_MAX +# undef __INT_LEAST32_MIN +# define __INT_LEAST32_MIN INT64_MIN +# undef __INT_LEAST32_MAX +# define __INT_LEAST32_MAX INT64_MAX +# undef __UINT_LEAST32_MAX +# define __UINT_LEAST32_MAX UINT64_MAX +# undef __INT_LEAST16_MIN +# define __INT_LEAST16_MIN INT64_MIN +# undef __INT_LEAST16_MAX +# define __INT_LEAST16_MAX INT64_MAX +# undef __UINT_LEAST16_MAX +# define __UINT_LEAST16_MAX UINT64_MAX +# undef __INT_LEAST8_MIN +# define __INT_LEAST8_MIN INT64_MIN +# undef __INT_LEAST8_MAX +# define __INT_LEAST8_MAX INT64_MAX +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT64_MAX +#endif /* __INT64_TYPE__ */ + +#ifdef __INT_LEAST64_MIN +# define INT_LEAST64_MIN __INT_LEAST64_MIN +# define INT_LEAST64_MAX __INT_LEAST64_MAX +# define UINT_LEAST64_MAX __UINT_LEAST64_MAX +# define INT_FAST64_MIN __INT_LEAST64_MIN +# define INT_FAST64_MAX __INT_LEAST64_MAX +# define UINT_FAST64_MAX __UINT_LEAST64_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT_LEAST64_WIDTH __UINT_LEAST64_WIDTH +# define INT_LEAST64_WIDTH UINT_LEAST64_WIDTH +# define UINT_FAST64_WIDTH __UINT_LEAST64_WIDTH +# define INT_FAST64_WIDTH UINT_FAST64_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT_LEAST64_MIN */ + + +#ifdef __INT56_TYPE__ +# define INT56_MAX INT56_C(36028797018963967) +# define INT56_MIN (-INT56_C(36028797018963967)-1) +# define UINT56_MAX UINT56_C(72057594037927935) +# define INT_LEAST56_MIN INT56_MIN +# define INT_LEAST56_MAX INT56_MAX +# define UINT_LEAST56_MAX UINT56_MAX +# define INT_FAST56_MIN INT56_MIN +# define INT_FAST56_MAX INT56_MAX +# define UINT_FAST56_MAX UINT56_MAX + +# undef __INT_LEAST32_MIN +# define __INT_LEAST32_MIN INT56_MIN +# undef __INT_LEAST32_MAX +# define __INT_LEAST32_MAX INT56_MAX +# undef __UINT_LEAST32_MAX +# define __UINT_LEAST32_MAX UINT56_MAX +# undef __INT_LEAST16_MIN +# define __INT_LEAST16_MIN INT56_MIN +# undef __INT_LEAST16_MAX +# define __INT_LEAST16_MAX INT56_MAX +# undef __UINT_LEAST16_MAX +# define __UINT_LEAST16_MAX UINT56_MAX +# undef __INT_LEAST8_MIN +# define __INT_LEAST8_MIN INT56_MIN +# undef __INT_LEAST8_MAX +# define __INT_LEAST8_MAX INT56_MAX +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT56_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT56_WIDTH 56 +# define INT56_WIDTH UINT56_WIDTH +# define UINT_LEAST56_WIDTH UINT56_WIDTH +# define INT_LEAST56_WIDTH UINT_LEAST56_WIDTH +# define UINT_FAST56_WIDTH UINT56_WIDTH +# define INT_FAST56_WIDTH UINT_FAST56_WIDTH +# undef __UINT_LEAST32_WIDTH +# define __UINT_LEAST32_WIDTH UINT56_WIDTH +# undef __UINT_LEAST16_WIDTH +# define __UINT_LEAST16_WIDTH UINT56_WIDTH +# undef __UINT_LEAST8_WIDTH +# define __UINT_LEAST8_WIDTH UINT56_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT56_TYPE__ */ + + +#ifdef __INT48_TYPE__ +# define INT48_MAX INT48_C(140737488355327) +# define INT48_MIN (-INT48_C(140737488355327)-1) +# define UINT48_MAX UINT48_C(281474976710655) +# define INT_LEAST48_MIN INT48_MIN +# define INT_LEAST48_MAX INT48_MAX +# define UINT_LEAST48_MAX UINT48_MAX +# define INT_FAST48_MIN INT48_MIN +# define INT_FAST48_MAX INT48_MAX +# define UINT_FAST48_MAX UINT48_MAX + +# undef __INT_LEAST32_MIN +# define __INT_LEAST32_MIN INT48_MIN +# undef __INT_LEAST32_MAX +# define __INT_LEAST32_MAX INT48_MAX +# undef __UINT_LEAST32_MAX +# define __UINT_LEAST32_MAX UINT48_MAX +# undef __INT_LEAST16_MIN +# define __INT_LEAST16_MIN INT48_MIN +# undef __INT_LEAST16_MAX +# define __INT_LEAST16_MAX INT48_MAX +# undef __UINT_LEAST16_MAX +# define __UINT_LEAST16_MAX UINT48_MAX +# undef __INT_LEAST8_MIN +# define __INT_LEAST8_MIN INT48_MIN +# undef __INT_LEAST8_MAX +# define __INT_LEAST8_MAX INT48_MAX +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT48_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +#define UINT48_WIDTH 48 +#define INT48_WIDTH UINT48_WIDTH +#define UINT_LEAST48_WIDTH UINT48_WIDTH +#define INT_LEAST48_WIDTH UINT_LEAST48_WIDTH +#define UINT_FAST48_WIDTH UINT48_WIDTH +#define INT_FAST48_WIDTH UINT_FAST48_WIDTH +#undef __UINT_LEAST32_WIDTH +#define __UINT_LEAST32_WIDTH UINT48_WIDTH +# undef __UINT_LEAST16_WIDTH +#define __UINT_LEAST16_WIDTH UINT48_WIDTH +# undef __UINT_LEAST8_WIDTH +#define __UINT_LEAST8_WIDTH UINT48_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT48_TYPE__ */ + + +#ifdef __INT40_TYPE__ +# define INT40_MAX INT40_C(549755813887) +# define INT40_MIN (-INT40_C(549755813887)-1) +# define UINT40_MAX UINT40_C(1099511627775) +# define INT_LEAST40_MIN INT40_MIN +# define INT_LEAST40_MAX INT40_MAX +# define UINT_LEAST40_MAX UINT40_MAX +# define INT_FAST40_MIN INT40_MIN +# define INT_FAST40_MAX INT40_MAX +# define UINT_FAST40_MAX UINT40_MAX + +# undef __INT_LEAST32_MIN +# define __INT_LEAST32_MIN INT40_MIN +# undef __INT_LEAST32_MAX +# define __INT_LEAST32_MAX INT40_MAX +# undef __UINT_LEAST32_MAX +# define __UINT_LEAST32_MAX UINT40_MAX +# undef __INT_LEAST16_MIN +# define __INT_LEAST16_MIN INT40_MIN +# undef __INT_LEAST16_MAX +# define __INT_LEAST16_MAX INT40_MAX +# undef __UINT_LEAST16_MAX +# define __UINT_LEAST16_MAX UINT40_MAX +# undef __INT_LEAST8_MIN +# define __INT_LEAST8_MIN INT40_MIN +# undef __INT_LEAST8_MAX +# define __INT_LEAST8_MAX INT40_MAX +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT40_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT40_WIDTH 40 +# define INT40_WIDTH UINT40_WIDTH +# define UINT_LEAST40_WIDTH UINT40_WIDTH +# define INT_LEAST40_WIDTH UINT_LEAST40_WIDTH +# define UINT_FAST40_WIDTH UINT40_WIDTH +# define INT_FAST40_WIDTH UINT_FAST40_WIDTH +# undef __UINT_LEAST32_WIDTH +# define __UINT_LEAST32_WIDTH UINT40_WIDTH +# undef __UINT_LEAST16_WIDTH +# define __UINT_LEAST16_WIDTH UINT40_WIDTH +# undef __UINT_LEAST8_WIDTH +# define __UINT_LEAST8_WIDTH UINT40_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT40_TYPE__ */ + + +#ifdef __INT32_TYPE__ +# define INT32_MAX INT32_C(2147483647) +# define INT32_MIN (-INT32_C(2147483647)-1) +# define UINT32_MAX UINT32_C(4294967295) + +# undef __INT_LEAST32_MIN +# define __INT_LEAST32_MIN INT32_MIN +# undef __INT_LEAST32_MAX +# define __INT_LEAST32_MAX INT32_MAX +# undef __UINT_LEAST32_MAX +# define __UINT_LEAST32_MAX UINT32_MAX +# undef __INT_LEAST16_MIN +# define __INT_LEAST16_MIN INT32_MIN +# undef __INT_LEAST16_MAX +# define __INT_LEAST16_MAX INT32_MAX +# undef __UINT_LEAST16_MAX +# define __UINT_LEAST16_MAX UINT32_MAX +# undef __INT_LEAST8_MIN +# define __INT_LEAST8_MIN INT32_MIN +# undef __INT_LEAST8_MAX +# define __INT_LEAST8_MAX INT32_MAX +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT32_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT32_WIDTH 32 +# define INT32_WIDTH UINT32_WIDTH +# undef __UINT_LEAST32_WIDTH +# define __UINT_LEAST32_WIDTH UINT32_WIDTH +# undef __UINT_LEAST16_WIDTH +# define __UINT_LEAST16_WIDTH UINT32_WIDTH +# undef __UINT_LEAST8_WIDTH +# define __UINT_LEAST8_WIDTH UINT32_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT32_TYPE__ */ + +#ifdef __INT_LEAST32_MIN +# define INT_LEAST32_MIN __INT_LEAST32_MIN +# define INT_LEAST32_MAX __INT_LEAST32_MAX +# define UINT_LEAST32_MAX __UINT_LEAST32_MAX +# define INT_FAST32_MIN __INT_LEAST32_MIN +# define INT_FAST32_MAX __INT_LEAST32_MAX +# define UINT_FAST32_MAX __UINT_LEAST32_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT_LEAST32_WIDTH __UINT_LEAST32_WIDTH +# define INT_LEAST32_WIDTH UINT_LEAST32_WIDTH +# define UINT_FAST32_WIDTH __UINT_LEAST32_WIDTH +# define INT_FAST32_WIDTH UINT_FAST32_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT_LEAST32_MIN */ + + +#ifdef __INT24_TYPE__ +# define INT24_MAX INT24_C(8388607) +# define INT24_MIN (-INT24_C(8388607)-1) +# define UINT24_MAX UINT24_C(16777215) +# define INT_LEAST24_MIN INT24_MIN +# define INT_LEAST24_MAX INT24_MAX +# define UINT_LEAST24_MAX UINT24_MAX +# define INT_FAST24_MIN INT24_MIN +# define INT_FAST24_MAX INT24_MAX +# define UINT_FAST24_MAX UINT24_MAX + +# undef __INT_LEAST16_MIN +# define __INT_LEAST16_MIN INT24_MIN +# undef __INT_LEAST16_MAX +# define __INT_LEAST16_MAX INT24_MAX +# undef __UINT_LEAST16_MAX +# define __UINT_LEAST16_MAX UINT24_MAX +# undef __INT_LEAST8_MIN +# define __INT_LEAST8_MIN INT24_MIN +# undef __INT_LEAST8_MAX +# define __INT_LEAST8_MAX INT24_MAX +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT24_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT24_WIDTH 24 +# define INT24_WIDTH UINT24_WIDTH +# define UINT_LEAST24_WIDTH UINT24_WIDTH +# define INT_LEAST24_WIDTH UINT_LEAST24_WIDTH +# define UINT_FAST24_WIDTH UINT24_WIDTH +# define INT_FAST24_WIDTH UINT_FAST24_WIDTH +# undef __UINT_LEAST16_WIDTH +# define __UINT_LEAST16_WIDTH UINT24_WIDTH +# undef __UINT_LEAST8_WIDTH +# define __UINT_LEAST8_WIDTH UINT24_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT24_TYPE__ */ + + +#ifdef __INT16_TYPE__ +#define INT16_MAX INT16_C(32767) +#define INT16_MIN (-INT16_C(32767)-1) +#define UINT16_MAX UINT16_C(65535) + +# undef __INT_LEAST16_MIN +# define __INT_LEAST16_MIN INT16_MIN +# undef __INT_LEAST16_MAX +# define __INT_LEAST16_MAX INT16_MAX +# undef __UINT_LEAST16_MAX +# define __UINT_LEAST16_MAX UINT16_MAX +# undef __INT_LEAST8_MIN +# define __INT_LEAST8_MIN INT16_MIN +# undef __INT_LEAST8_MAX +# define __INT_LEAST8_MAX INT16_MAX +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT16_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT16_WIDTH 16 +# define INT16_WIDTH UINT16_WIDTH +# undef __UINT_LEAST16_WIDTH +# define __UINT_LEAST16_WIDTH UINT16_WIDTH +# undef __UINT_LEAST8_WIDTH +# define __UINT_LEAST8_WIDTH UINT16_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT16_TYPE__ */ + +#ifdef __INT_LEAST16_MIN +# define INT_LEAST16_MIN __INT_LEAST16_MIN +# define INT_LEAST16_MAX __INT_LEAST16_MAX +# define UINT_LEAST16_MAX __UINT_LEAST16_MAX +# define INT_FAST16_MIN __INT_LEAST16_MIN +# define INT_FAST16_MAX __INT_LEAST16_MAX +# define UINT_FAST16_MAX __UINT_LEAST16_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT_LEAST16_WIDTH __UINT_LEAST16_WIDTH +# define INT_LEAST16_WIDTH UINT_LEAST16_WIDTH +# define UINT_FAST16_WIDTH __UINT_LEAST16_WIDTH +# define INT_FAST16_WIDTH UINT_FAST16_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT_LEAST16_MIN */ + + +#ifdef __INT8_TYPE__ +# define INT8_MAX INT8_C(127) +# define INT8_MIN (-INT8_C(127)-1) +# define UINT8_MAX UINT8_C(255) + +# undef __INT_LEAST8_MIN +# define __INT_LEAST8_MIN INT8_MIN +# undef __INT_LEAST8_MAX +# define __INT_LEAST8_MAX INT8_MAX +# undef __UINT_LEAST8_MAX +# define __UINT_LEAST8_MAX UINT8_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT8_WIDTH 8 +# define INT8_WIDTH UINT8_WIDTH +# undef __UINT_LEAST8_WIDTH +# define __UINT_LEAST8_WIDTH UINT8_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT8_TYPE__ */ + +#ifdef __INT_LEAST8_MIN +# define INT_LEAST8_MIN __INT_LEAST8_MIN +# define INT_LEAST8_MAX __INT_LEAST8_MAX +# define UINT_LEAST8_MAX __UINT_LEAST8_MAX +# define INT_FAST8_MIN __INT_LEAST8_MIN +# define INT_FAST8_MAX __INT_LEAST8_MAX +# define UINT_FAST8_MAX __UINT_LEAST8_MAX + +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +# define UINT_LEAST8_WIDTH __UINT_LEAST8_WIDTH +# define INT_LEAST8_WIDTH UINT_LEAST8_WIDTH +# define UINT_FAST8_WIDTH __UINT_LEAST8_WIDTH +# define INT_FAST8_WIDTH UINT_FAST8_WIDTH +#endif /* __STDC_VERSION__ */ +#endif /* __INT_LEAST8_MIN */ + +/* Some utility macros */ +#define __INTN_MIN(n) __stdint_join3( INT, n, _MIN) +#define __INTN_MAX(n) __stdint_join3( INT, n, _MAX) +#define __UINTN_MAX(n) __stdint_join3(UINT, n, _MAX) +#define __INTN_C(n, v) __stdint_join3( INT, n, _C(v)) +#define __UINTN_C(n, v) __stdint_join3(UINT, n, _C(v)) + +/* C99 7.18.2.4 Limits of integer types capable of holding object pointers. */ +/* C99 7.18.3 Limits of other integer types. */ + +#define INTPTR_MIN (-__INTPTR_MAX__-1) +#define INTPTR_MAX __INTPTR_MAX__ +#define UINTPTR_MAX __UINTPTR_MAX__ +#define PTRDIFF_MIN (-__PTRDIFF_MAX__-1) +#define PTRDIFF_MAX __PTRDIFF_MAX__ +#define SIZE_MAX __SIZE_MAX__ + +/* C2x 7.20.2.4 Width of integer types capable of holding object pointers. */ +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +/* NB: The C standard requires that these be the same value, but the compiler + exposes separate internal width macros. */ +#define INTPTR_WIDTH __INTPTR_WIDTH__ +#define UINTPTR_WIDTH __UINTPTR_WIDTH__ +#endif + +/* ISO9899:2011 7.20 (C11 Annex K): Define RSIZE_MAX if __STDC_WANT_LIB_EXT1__ + * is enabled. */ +#if defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1 +#define RSIZE_MAX (SIZE_MAX >> 1) +#endif + +/* C99 7.18.2.5 Limits of greatest-width integer types. */ +#define INTMAX_MIN (-__INTMAX_MAX__-1) +#define INTMAX_MAX __INTMAX_MAX__ +#define UINTMAX_MAX __UINTMAX_MAX__ + +/* C2x 7.20.2.5 Width of greatest-width integer types. */ +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +/* NB: The C standard requires that these be the same value, but the compiler + exposes separate internal width macros. */ +#define INTMAX_WIDTH __INTMAX_WIDTH__ +#define UINTMAX_WIDTH __UINTMAX_WIDTH__ +#endif + +/* C99 7.18.3 Limits of other integer types. */ +#define SIG_ATOMIC_MIN __INTN_MIN(__SIG_ATOMIC_WIDTH__) +#define SIG_ATOMIC_MAX __INTN_MAX(__SIG_ATOMIC_WIDTH__) +#ifdef __WINT_UNSIGNED__ +# define WINT_MIN __UINTN_C(__WINT_WIDTH__, 0) +# define WINT_MAX __UINTN_MAX(__WINT_WIDTH__) +#else +# define WINT_MIN __INTN_MIN(__WINT_WIDTH__) +# define WINT_MAX __INTN_MAX(__WINT_WIDTH__) +#endif + +#ifndef WCHAR_MAX +# define WCHAR_MAX __WCHAR_MAX__ +#endif +#ifndef WCHAR_MIN +# if __WCHAR_MAX__ == __INTN_MAX(__WCHAR_WIDTH__) +# define WCHAR_MIN __INTN_MIN(__WCHAR_WIDTH__) +# else +# define WCHAR_MIN __UINTN_C(__WCHAR_WIDTH__, 0) +# endif +#endif + +/* 7.18.4.2 Macros for greatest-width integer constants. */ +#define INTMAX_C(v) __int_c(v, __INTMAX_C_SUFFIX__) +#define UINTMAX_C(v) __int_c(v, __UINTMAX_C_SUFFIX__) + +/* C2x 7.20.3.x Width of other integer types. */ +/* FIXME: This is using the placeholder dates Clang produces for these macros + in C2x mode; switch to the correct values once they've been published. */ +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L +#define PTRDIFF_WIDTH __PTRDIFF_WIDTH__ +#define SIG_ATOMIC_WIDTH __SIG_ATOMIC_WIDTH__ +#define SIZE_WIDTH __SIZE_WIDTH__ +#define WCHAR_WIDTH __WCHAR_WIDTH__ +#define WINT_WIDTH __WINT_WIDTH__ +#endif + +#endif /* __STDC_HOSTED__ */ +#endif /* __CLANG_STDINT_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..feac9d0144a9dcafec6a19fabb717715fdaa4a4b GIT binary patch literal 12292 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h new file mode 100644 index 00000000..cb9be234 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h @@ -0,0 +1,775 @@ +/*===---- tmmintrin.h - SSSE3 intrinsics -----------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __TMMINTRIN_H +#define __TMMINTRIN_H + +#if !defined(__i386__) && !defined(__x86_64__) +#error "This header is only meant to be used on x86 and x64 architecture" +#endif + +#include <pmmintrin.h> + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("ssse3"), __min_vector_width__(64))) +#define __DEFAULT_FN_ATTRS_MMX __attribute__((__always_inline__, __nodebug__, __target__("mmx,ssse3"), __min_vector_width__(64))) + +/// Computes the absolute value of each of the packed 8-bit signed +/// integers in the source operand and stores the 8-bit unsigned integer +/// results in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PABSB instruction. +/// +/// \param __a +/// A 64-bit vector of [8 x i8]. +/// \returns A 64-bit integer vector containing the absolute values of the +/// elements in the operand. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_abs_pi8(__m64 __a) +{ + return (__m64)__builtin_ia32_pabsb((__v8qi)__a); +} + +/// Computes the absolute value of each of the packed 8-bit signed +/// integers in the source operand and stores the 8-bit unsigned integer +/// results in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPABSB instruction. +/// +/// \param __a +/// A 128-bit vector of [16 x i8]. +/// \returns A 128-bit integer vector containing the absolute values of the +/// elements in the operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_abs_epi8(__m128i __a) +{ + return (__m128i)__builtin_elementwise_abs((__v16qs)__a); +} + +/// Computes the absolute value of each of the packed 16-bit signed +/// integers in the source operand and stores the 16-bit unsigned integer +/// results in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PABSW instruction. +/// +/// \param __a +/// A 64-bit vector of [4 x i16]. +/// \returns A 64-bit integer vector containing the absolute values of the +/// elements in the operand. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_abs_pi16(__m64 __a) +{ + return (__m64)__builtin_ia32_pabsw((__v4hi)__a); +} + +/// Computes the absolute value of each of the packed 16-bit signed +/// integers in the source operand and stores the 16-bit unsigned integer +/// results in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPABSW instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16]. +/// \returns A 128-bit integer vector containing the absolute values of the +/// elements in the operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_abs_epi16(__m128i __a) +{ + return (__m128i)__builtin_elementwise_abs((__v8hi)__a); +} + +/// Computes the absolute value of each of the packed 32-bit signed +/// integers in the source operand and stores the 32-bit unsigned integer +/// results in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PABSD instruction. +/// +/// \param __a +/// A 64-bit vector of [2 x i32]. +/// \returns A 64-bit integer vector containing the absolute values of the +/// elements in the operand. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_abs_pi32(__m64 __a) +{ + return (__m64)__builtin_ia32_pabsd((__v2si)__a); +} + +/// Computes the absolute value of each of the packed 32-bit signed +/// integers in the source operand and stores the 32-bit unsigned integer +/// results in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPABSD instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x i32]. +/// \returns A 128-bit integer vector containing the absolute values of the +/// elements in the operand. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_abs_epi32(__m128i __a) +{ + return (__m128i)__builtin_elementwise_abs((__v4si)__a); +} + +/// Concatenates the two 128-bit integer vector operands, and +/// right-shifts the result by the number of bytes specified in the immediate +/// operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128i _mm_alignr_epi8(__m128i a, __m128i b, const int n); +/// \endcode +/// +/// This intrinsic corresponds to the \c PALIGNR instruction. +/// +/// \param a +/// A 128-bit vector of [16 x i8] containing one of the source operands. +/// \param b +/// A 128-bit vector of [16 x i8] containing one of the source operands. +/// \param n +/// An immediate operand specifying how many bytes to right-shift the result. +/// \returns A 128-bit integer vector containing the concatenated right-shifted +/// value. +#define _mm_alignr_epi8(a, b, n) \ + ((__m128i)__builtin_ia32_palignr128((__v16qi)(__m128i)(a), \ + (__v16qi)(__m128i)(b), (n))) + +/// Concatenates the two 64-bit integer vector operands, and right-shifts +/// the result by the number of bytes specified in the immediate operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m64 _mm_alignr_pi8(__m64 a, __m64 b, const int n); +/// \endcode +/// +/// This intrinsic corresponds to the \c PALIGNR instruction. +/// +/// \param a +/// A 64-bit vector of [8 x i8] containing one of the source operands. +/// \param b +/// A 64-bit vector of [8 x i8] containing one of the source operands. +/// \param n +/// An immediate operand specifying how many bytes to right-shift the result. +/// \returns A 64-bit integer vector containing the concatenated right-shifted +/// value. +#define _mm_alignr_pi8(a, b, n) \ + ((__m64)__builtin_ia32_palignr((__v8qi)(__m64)(a), (__v8qi)(__m64)(b), (n))) + +/// Horizontally adds the adjacent pairs of values contained in 2 packed +/// 128-bit vectors of [8 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPHADDW instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16] containing one of the source operands. The +/// horizontal sums of the values are stored in the lower bits of the +/// destination. +/// \param __b +/// A 128-bit vector of [8 x i16] containing one of the source operands. The +/// horizontal sums of the values are stored in the upper bits of the +/// destination. +/// \returns A 128-bit vector of [8 x i16] containing the horizontal sums of +/// both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_hadd_epi16(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_phaddw128((__v8hi)__a, (__v8hi)__b); +} + +/// Horizontally adds the adjacent pairs of values contained in 2 packed +/// 128-bit vectors of [4 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPHADDD instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x i32] containing one of the source operands. The +/// horizontal sums of the values are stored in the lower bits of the +/// destination. +/// \param __b +/// A 128-bit vector of [4 x i32] containing one of the source operands. The +/// horizontal sums of the values are stored in the upper bits of the +/// destination. +/// \returns A 128-bit vector of [4 x i32] containing the horizontal sums of +/// both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_hadd_epi32(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_phaddd128((__v4si)__a, (__v4si)__b); +} + +/// Horizontally adds the adjacent pairs of values contained in 2 packed +/// 64-bit vectors of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PHADDW instruction. +/// +/// \param __a +/// A 64-bit vector of [4 x i16] containing one of the source operands. The +/// horizontal sums of the values are stored in the lower bits of the +/// destination. +/// \param __b +/// A 64-bit vector of [4 x i16] containing one of the source operands. The +/// horizontal sums of the values are stored in the upper bits of the +/// destination. +/// \returns A 64-bit vector of [4 x i16] containing the horizontal sums of both +/// operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_hadd_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_phaddw((__v4hi)__a, (__v4hi)__b); +} + +/// Horizontally adds the adjacent pairs of values contained in 2 packed +/// 64-bit vectors of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PHADDD instruction. +/// +/// \param __a +/// A 64-bit vector of [2 x i32] containing one of the source operands. The +/// horizontal sums of the values are stored in the lower bits of the +/// destination. +/// \param __b +/// A 64-bit vector of [2 x i32] containing one of the source operands. The +/// horizontal sums of the values are stored in the upper bits of the +/// destination. +/// \returns A 64-bit vector of [2 x i32] containing the horizontal sums of both +/// operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_hadd_pi32(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_phaddd((__v2si)__a, (__v2si)__b); +} + +/// Horizontally adds the adjacent pairs of values contained in 2 packed +/// 128-bit vectors of [8 x i16]. Positive sums greater than 0x7FFF are +/// saturated to 0x7FFF. Negative sums less than 0x8000 are saturated to +/// 0x8000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPHADDSW instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16] containing one of the source operands. The +/// horizontal sums of the values are stored in the lower bits of the +/// destination. +/// \param __b +/// A 128-bit vector of [8 x i16] containing one of the source operands. The +/// horizontal sums of the values are stored in the upper bits of the +/// destination. +/// \returns A 128-bit vector of [8 x i16] containing the horizontal saturated +/// sums of both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_hadds_epi16(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_phaddsw128((__v8hi)__a, (__v8hi)__b); +} + +/// Horizontally adds the adjacent pairs of values contained in 2 packed +/// 64-bit vectors of [4 x i16]. Positive sums greater than 0x7FFF are +/// saturated to 0x7FFF. Negative sums less than 0x8000 are saturated to +/// 0x8000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PHADDSW instruction. +/// +/// \param __a +/// A 64-bit vector of [4 x i16] containing one of the source operands. The +/// horizontal sums of the values are stored in the lower bits of the +/// destination. +/// \param __b +/// A 64-bit vector of [4 x i16] containing one of the source operands. The +/// horizontal sums of the values are stored in the upper bits of the +/// destination. +/// \returns A 64-bit vector of [4 x i16] containing the horizontal saturated +/// sums of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_hadds_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_phaddsw((__v4hi)__a, (__v4hi)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in 2 +/// packed 128-bit vectors of [8 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPHSUBW instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16] containing one of the source operands. The +/// horizontal differences between the values are stored in the lower bits of +/// the destination. +/// \param __b +/// A 128-bit vector of [8 x i16] containing one of the source operands. The +/// horizontal differences between the values are stored in the upper bits of +/// the destination. +/// \returns A 128-bit vector of [8 x i16] containing the horizontal differences +/// of both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_hsub_epi16(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_phsubw128((__v8hi)__a, (__v8hi)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in 2 +/// packed 128-bit vectors of [4 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPHSUBD instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x i32] containing one of the source operands. The +/// horizontal differences between the values are stored in the lower bits of +/// the destination. +/// \param __b +/// A 128-bit vector of [4 x i32] containing one of the source operands. The +/// horizontal differences between the values are stored in the upper bits of +/// the destination. +/// \returns A 128-bit vector of [4 x i32] containing the horizontal differences +/// of both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_hsub_epi32(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_phsubd128((__v4si)__a, (__v4si)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in 2 +/// packed 64-bit vectors of [4 x i16]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PHSUBW instruction. +/// +/// \param __a +/// A 64-bit vector of [4 x i16] containing one of the source operands. The +/// horizontal differences between the values are stored in the lower bits of +/// the destination. +/// \param __b +/// A 64-bit vector of [4 x i16] containing one of the source operands. The +/// horizontal differences between the values are stored in the upper bits of +/// the destination. +/// \returns A 64-bit vector of [4 x i16] containing the horizontal differences +/// of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_hsub_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_phsubw((__v4hi)__a, (__v4hi)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in 2 +/// packed 64-bit vectors of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PHSUBD instruction. +/// +/// \param __a +/// A 64-bit vector of [2 x i32] containing one of the source operands. The +/// horizontal differences between the values are stored in the lower bits of +/// the destination. +/// \param __b +/// A 64-bit vector of [2 x i32] containing one of the source operands. The +/// horizontal differences between the values are stored in the upper bits of +/// the destination. +/// \returns A 64-bit vector of [2 x i32] containing the horizontal differences +/// of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_hsub_pi32(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_phsubd((__v2si)__a, (__v2si)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in 2 +/// packed 128-bit vectors of [8 x i16]. Positive differences greater than +/// 0x7FFF are saturated to 0x7FFF. Negative differences less than 0x8000 are +/// saturated to 0x8000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPHSUBSW instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16] containing one of the source operands. The +/// horizontal differences between the values are stored in the lower bits of +/// the destination. +/// \param __b +/// A 128-bit vector of [8 x i16] containing one of the source operands. The +/// horizontal differences between the values are stored in the upper bits of +/// the destination. +/// \returns A 128-bit vector of [8 x i16] containing the horizontal saturated +/// differences of both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_hsubs_epi16(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_phsubsw128((__v8hi)__a, (__v8hi)__b); +} + +/// Horizontally subtracts the adjacent pairs of values contained in 2 +/// packed 64-bit vectors of [4 x i16]. Positive differences greater than +/// 0x7FFF are saturated to 0x7FFF. Negative differences less than 0x8000 are +/// saturated to 0x8000. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PHSUBSW instruction. +/// +/// \param __a +/// A 64-bit vector of [4 x i16] containing one of the source operands. The +/// horizontal differences between the values are stored in the lower bits of +/// the destination. +/// \param __b +/// A 64-bit vector of [4 x i16] containing one of the source operands. The +/// horizontal differences between the values are stored in the upper bits of +/// the destination. +/// \returns A 64-bit vector of [4 x i16] containing the horizontal saturated +/// differences of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_hsubs_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_phsubsw((__v4hi)__a, (__v4hi)__b); +} + +/// Multiplies corresponding pairs of packed 8-bit unsigned integer +/// values contained in the first source operand and packed 8-bit signed +/// integer values contained in the second source operand, adds pairs of +/// contiguous products with signed saturation, and writes the 16-bit sums to +/// the corresponding bits in the destination. +/// +/// For example, bits [7:0] of both operands are multiplied, bits [15:8] of +/// both operands are multiplied, and the sum of both results is written to +/// bits [15:0] of the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPMADDUBSW instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the first source operand. +/// \param __b +/// A 128-bit integer vector containing the second source operand. +/// \returns A 128-bit integer vector containing the sums of products of both +/// operands: \n +/// \a R0 := (\a __a0 * \a __b0) + (\a __a1 * \a __b1) \n +/// \a R1 := (\a __a2 * \a __b2) + (\a __a3 * \a __b3) \n +/// \a R2 := (\a __a4 * \a __b4) + (\a __a5 * \a __b5) \n +/// \a R3 := (\a __a6 * \a __b6) + (\a __a7 * \a __b7) \n +/// \a R4 := (\a __a8 * \a __b8) + (\a __a9 * \a __b9) \n +/// \a R5 := (\a __a10 * \a __b10) + (\a __a11 * \a __b11) \n +/// \a R6 := (\a __a12 * \a __b12) + (\a __a13 * \a __b13) \n +/// \a R7 := (\a __a14 * \a __b14) + (\a __a15 * \a __b15) +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_maddubs_epi16(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_pmaddubsw128((__v16qi)__a, (__v16qi)__b); +} + +/// Multiplies corresponding pairs of packed 8-bit unsigned integer +/// values contained in the first source operand and packed 8-bit signed +/// integer values contained in the second source operand, adds pairs of +/// contiguous products with signed saturation, and writes the 16-bit sums to +/// the corresponding bits in the destination. +/// +/// For example, bits [7:0] of both operands are multiplied, bits [15:8] of +/// both operands are multiplied, and the sum of both results is written to +/// bits [15:0] of the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PMADDUBSW instruction. +/// +/// \param __a +/// A 64-bit integer vector containing the first source operand. +/// \param __b +/// A 64-bit integer vector containing the second source operand. +/// \returns A 64-bit integer vector containing the sums of products of both +/// operands: \n +/// \a R0 := (\a __a0 * \a __b0) + (\a __a1 * \a __b1) \n +/// \a R1 := (\a __a2 * \a __b2) + (\a __a3 * \a __b3) \n +/// \a R2 := (\a __a4 * \a __b4) + (\a __a5 * \a __b5) \n +/// \a R3 := (\a __a6 * \a __b6) + (\a __a7 * \a __b7) +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_maddubs_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pmaddubsw((__v8qi)__a, (__v8qi)__b); +} + +/// Multiplies packed 16-bit signed integer values, truncates the 32-bit +/// products to the 18 most significant bits by right-shifting, rounds the +/// truncated value by adding 1, and writes bits [16:1] to the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPMULHRSW instruction. +/// +/// \param __a +/// A 128-bit vector of [8 x i16] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [8 x i16] containing one of the source operands. +/// \returns A 128-bit vector of [8 x i16] containing the rounded and scaled +/// products of both operands. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_mulhrs_epi16(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_pmulhrsw128((__v8hi)__a, (__v8hi)__b); +} + +/// Multiplies packed 16-bit signed integer values, truncates the 32-bit +/// products to the 18 most significant bits by right-shifting, rounds the +/// truncated value by adding 1, and writes bits [16:1] to the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PMULHRSW instruction. +/// +/// \param __a +/// A 64-bit vector of [4 x i16] containing one of the source operands. +/// \param __b +/// A 64-bit vector of [4 x i16] containing one of the source operands. +/// \returns A 64-bit vector of [4 x i16] containing the rounded and scaled +/// products of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_mulhrs_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pmulhrsw((__v4hi)__a, (__v4hi)__b); +} + +/// Copies the 8-bit integers from a 128-bit integer vector to the +/// destination or clears 8-bit values in the destination, as specified by +/// the second source operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPSHUFB instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the values to be copied. +/// \param __b +/// A 128-bit integer vector containing control bytes corresponding to +/// positions in the destination: +/// Bit 7: \n +/// 1: Clear the corresponding byte in the destination. \n +/// 0: Copy the selected source byte to the corresponding byte in the +/// destination. \n +/// Bits [6:4] Reserved. \n +/// Bits [3:0] select the source byte to be copied. +/// \returns A 128-bit integer vector containing the copied or cleared values. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_shuffle_epi8(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_pshufb128((__v16qi)__a, (__v16qi)__b); +} + +/// Copies the 8-bit integers from a 64-bit integer vector to the +/// destination or clears 8-bit values in the destination, as specified by +/// the second source operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PSHUFB instruction. +/// +/// \param __a +/// A 64-bit integer vector containing the values to be copied. +/// \param __b +/// A 64-bit integer vector containing control bytes corresponding to +/// positions in the destination: +/// Bit 7: \n +/// 1: Clear the corresponding byte in the destination. \n +/// 0: Copy the selected source byte to the corresponding byte in the +/// destination. \n +/// Bits [3:0] select the source byte to be copied. +/// \returns A 64-bit integer vector containing the copied or cleared values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_shuffle_pi8(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pshufb((__v8qi)__a, (__v8qi)__b); +} + +/// For each 8-bit integer in the first source operand, perform one of +/// the following actions as specified by the second source operand. +/// +/// If the byte in the second source is negative, calculate the two's +/// complement of the corresponding byte in the first source, and write that +/// value to the destination. If the byte in the second source is positive, +/// copy the corresponding byte from the first source to the destination. If +/// the byte in the second source is zero, clear the corresponding byte in +/// the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPSIGNB instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the values to be copied. +/// \param __b +/// A 128-bit integer vector containing control bytes corresponding to +/// positions in the destination. +/// \returns A 128-bit integer vector containing the resultant values. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sign_epi8(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_psignb128((__v16qi)__a, (__v16qi)__b); +} + +/// For each 16-bit integer in the first source operand, perform one of +/// the following actions as specified by the second source operand. +/// +/// If the word in the second source is negative, calculate the two's +/// complement of the corresponding word in the first source, and write that +/// value to the destination. If the word in the second source is positive, +/// copy the corresponding word from the first source to the destination. If +/// the word in the second source is zero, clear the corresponding word in +/// the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPSIGNW instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the values to be copied. +/// \param __b +/// A 128-bit integer vector containing control words corresponding to +/// positions in the destination. +/// \returns A 128-bit integer vector containing the resultant values. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sign_epi16(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_psignw128((__v8hi)__a, (__v8hi)__b); +} + +/// For each 32-bit integer in the first source operand, perform one of +/// the following actions as specified by the second source operand. +/// +/// If the doubleword in the second source is negative, calculate the two's +/// complement of the corresponding word in the first source, and write that +/// value to the destination. If the doubleword in the second source is +/// positive, copy the corresponding word from the first source to the +/// destination. If the doubleword in the second source is zero, clear the +/// corresponding word in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c VPSIGND instruction. +/// +/// \param __a +/// A 128-bit integer vector containing the values to be copied. +/// \param __b +/// A 128-bit integer vector containing control doublewords corresponding to +/// positions in the destination. +/// \returns A 128-bit integer vector containing the resultant values. +static __inline__ __m128i __DEFAULT_FN_ATTRS +_mm_sign_epi32(__m128i __a, __m128i __b) +{ + return (__m128i)__builtin_ia32_psignd128((__v4si)__a, (__v4si)__b); +} + +/// For each 8-bit integer in the first source operand, perform one of +/// the following actions as specified by the second source operand. +/// +/// If the byte in the second source is negative, calculate the two's +/// complement of the corresponding byte in the first source, and write that +/// value to the destination. If the byte in the second source is positive, +/// copy the corresponding byte from the first source to the destination. If +/// the byte in the second source is zero, clear the corresponding byte in +/// the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PSIGNB instruction. +/// +/// \param __a +/// A 64-bit integer vector containing the values to be copied. +/// \param __b +/// A 64-bit integer vector containing control bytes corresponding to +/// positions in the destination. +/// \returns A 64-bit integer vector containing the resultant values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_sign_pi8(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_psignb((__v8qi)__a, (__v8qi)__b); +} + +/// For each 16-bit integer in the first source operand, perform one of +/// the following actions as specified by the second source operand. +/// +/// If the word in the second source is negative, calculate the two's +/// complement of the corresponding word in the first source, and write that +/// value to the destination. If the word in the second source is positive, +/// copy the corresponding word from the first source to the destination. If +/// the word in the second source is zero, clear the corresponding word in +/// the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PSIGNW instruction. +/// +/// \param __a +/// A 64-bit integer vector containing the values to be copied. +/// \param __b +/// A 64-bit integer vector containing control words corresponding to +/// positions in the destination. +/// \returns A 64-bit integer vector containing the resultant values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_sign_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_psignw((__v4hi)__a, (__v4hi)__b); +} + +/// For each 32-bit integer in the first source operand, perform one of +/// the following actions as specified by the second source operand. +/// +/// If the doubleword in the second source is negative, calculate the two's +/// complement of the corresponding doubleword in the first source, and +/// write that value to the destination. If the doubleword in the second +/// source is positive, copy the corresponding doubleword from the first +/// source to the destination. If the doubleword in the second source is +/// zero, clear the corresponding doubleword in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c PSIGND instruction. +/// +/// \param __a +/// A 64-bit integer vector containing the values to be copied. +/// \param __b +/// A 64-bit integer vector containing two control doublewords corresponding +/// to positions in the destination. +/// \returns A 64-bit integer vector containing the resultant values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_sign_pi32(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_psignd((__v2si)__a, (__v2si)__b); +} + +#undef __DEFAULT_FN_ATTRS +#undef __DEFAULT_FN_ATTRS_MMX + +#endif /* __TMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1ea7a15b3cf395f7518fd8e34ed56906d20c8c0e GIT binary patch literal 44047 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 E2m7q+o&W#< literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h new file mode 100644 index 00000000..491823e9 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h @@ -0,0 +1,56 @@ +/*===------------- tsxldtrkintrin.h - tsxldtrk intrinsics ------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <tsxldtrkintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __TSXLDTRKINTRIN_H +#define __TSXLDTRKINTRIN_H + +/* Define the default attributes for the functions in this file */ +#define _DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("tsxldtrk"))) + +/// Marks the start of an TSX (RTM) suspend load address tracking region. If +/// this intrinsic is used inside a transactional region, subsequent loads +/// are not added to the read set of the transaction. If it's used inside a +/// suspend load address tracking region it will cause transaction abort. +/// If it's used outside of a transactional region it behaves like a NOP. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c XSUSLDTRK instruction. +/// +static __inline__ void _DEFAULT_FN_ATTRS +_xsusldtrk (void) +{ + __builtin_ia32_xsusldtrk(); +} + +/// Marks the end of an TSX (RTM) suspend load address tracking region. If this +/// intrinsic is used inside a suspend load address tracking region it will +/// end the suspend region and all following load addresses will be added to +/// the transaction read set. If it's used inside an active transaction but +/// not in a suspend region it will cause transaction abort. If it's used +/// outside of a transactional region it behaves like a NOP. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the \c XRESLDTRK instruction. +/// +static __inline__ void _DEFAULT_FN_ATTRS +_xresldtrk (void) +{ + __builtin_ia32_xresldtrk(); +} + +#undef _DEFAULT_FN_ATTRS + +#endif /* __TSXLDTRKINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..f2aacad75a297b2bb2606808177feacd96d837e7 GIT binary patch literal 13480 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 E0U$Pvi2wiq literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h new file mode 100644 index 00000000..135dc814 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h @@ -0,0 +1,157 @@ +/*===------------------ uintrintrin.h - UINTR intrinsics -------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __X86GPRINTRIN_H +#error "Never use <uintrintrin.h> directly; include <x86gprintrin.h> instead." +#endif + +#ifndef __UINTRINTRIN_H +#define __UINTRINTRIN_H + +/* Define the default attributes for the functions in this file */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("uintr"))) + +#ifdef __x86_64__ + +struct __uintr_frame +{ + unsigned long long rip; + unsigned long long rflags; + unsigned long long rsp; +}; + +/// Clears the user interrupt flag (UIF). Its effect takes place immediately: a +/// user interrupt cannot be delivered on the instruction boundary following +/// CLUI. Can be executed only if CR4.UINT = 1, the logical processor is in +/// 64-bit mode, and software is not executing inside an enclave; otherwise, +/// each causes an invalid-opcode exception. Causes a transactional abort if +/// executed inside a transactional region; the abort loads EAX as it would +/// had it been due to an execution of CLI. +/// +/// \headerfile <x86gprintrin.h> +/// +/// This intrinsic corresponds to the <c> CLUI </c> instruction. +/// +/// \code{.operation} +/// UIF := 0 +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS +_clui (void) +{ + __builtin_ia32_clui(); +} + +/// Sets the user interrupt flag (UIF). Its effect takes place immediately; a +/// user interrupt may be delivered on the instruction boundary following +/// STUI. Can be executed only if CR4.UINT = 1, the logical processor is in +/// 64-bit mode, and software is not executing inside an enclave; otherwise, +/// each causes an invalid-opcode exception. Causes a transactional abort if +/// executed inside a transactional region; the abort loads EAX as it would +/// had it been due to an execution of STI. +/// +/// \headerfile <x86gprintrin.h> +/// +/// This intrinsic corresponds to the <c> STUI </c> instruction. +/// +/// \code{.operation} +/// UIF := 1 +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS +_stui (void) +{ + __builtin_ia32_stui(); +} + +/// Get the current value of the user interrupt flag (UIF). Can be executed +/// regardless of CPL and inside a transactional region. Can be executed only +/// if CR4.UINT = 1, the logical processor is in 64-bit mode, and software is +/// not executing inside an enclave; otherwise, it causes an invalid-opcode +/// exception. +/// +/// \headerfile <x86gprintrin.h> +/// +/// This intrinsic corresponds to the <c> TESTUI </c> instruction. +/// +/// \returns The current value of the user interrupt flag (UIF). +/// +/// \code{.operation} +/// CF := UIF +/// ZF := 0 +/// AF := 0 +/// OF := 0 +/// PF := 0 +/// SF := 0 +/// dst := CF +/// \endcode +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_testui (void) +{ + return __builtin_ia32_testui(); +} + +/// Send interprocessor user interrupt. Can be executed only if +/// CR4.UINT = IA32_UINT_TT[0] = 1, the logical processor is in 64-bit mode, +/// and software is not executing inside an enclave; otherwise, it causes an +/// invalid-opcode exception. May be executed at any privilege level, all of +/// its memory accesses are performed with supervisor privilege. +/// +/// \headerfile <x86gprintrin.h> +/// +/// This intrinsic corresponds to the <c> SENDUIPI </c> instruction +/// +/// \param __a +/// Index of user-interrupt target table entry in user-interrupt target +/// table. +/// +/// \code{.operation} +/// IF __a > UITTSZ +/// GP (0) +/// FI +/// tempUITTE := MEM[UITTADDR + (a<<4)] +/// // tempUITTE must be valid, and can't have any reserved bit set +/// IF (tempUITTE.V == 0 OR tempUITTE[7:1] != 0) +/// GP (0) +/// FI +/// tempUPID := MEM[tempUITTE.UPIDADDR] // under lock +/// // tempUPID can't have any reserved bit set +/// IF (tempUPID[15:2] != 0 OR tempUPID[31:24] != 0) +/// GP (0) // release lock +/// FI +/// tempUPID.PIR[tempUITTE.UV] := 1; +/// IF (tempUPID.SN == 0 AND tempUPID.ON == 0) +/// tempUPID.ON := 1 +/// sendNotify := 1 +/// ELSE +/// sendNotify := 0 +/// FI +/// MEM[tempUITTE.UPIDADDR] := tempUPID // release lock +/// IF sendNotify == 1 +/// IF IA32_APIC_BASE[10] == 1 // local APIC is in x2APIC mode +/// // send ordinary IPI with vector tempUPID.NV to 32-bit physical APIC +/// // ID tempUPID.NDST +/// SendOrdinaryIPI(tempUPID.NV, tempUPID.NDST) +/// ELSE +/// // send ordinary IPI with vector tempUPID.NV to 8-bit physical APIC +/// // ID tempUPID.NDST[15:8] +/// SendOrdinaryIPI(tempUPID.NV, tempUPID.NDST[15:8]) +/// FI +/// FI +/// \endcode +static __inline__ void __DEFAULT_FN_ATTRS +_senduipi (unsigned long long __a) +{ + __builtin_ia32_senduipi(__a); +} + +#endif /* __x86_64__ */ + +#undef __DEFAULT_FN_ATTRS + +#endif /* __UINTRINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..f7be277708601d9a2f1a382169060478b20e5773 GIT binary patch literal 16493 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h new file mode 100644 index 00000000..294dcff2 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h @@ -0,0 +1,85 @@ +/*===------------------ vaesintrin.h - VAES intrinsics ---------------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <vaesintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __VAESINTRIN_H +#define __VAESINTRIN_H + +/* Default attributes for YMM forms. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("vaes"), __min_vector_width__(256))) + +/* Default attributes for ZMM forms. */ +#define __DEFAULT_FN_ATTRS_F __attribute__((__always_inline__, __nodebug__, __target__("avx512f,vaes"), __min_vector_width__(512))) + + +static __inline__ __m256i __DEFAULT_FN_ATTRS + _mm256_aesenc_epi128(__m256i __A, __m256i __B) +{ + return (__m256i) __builtin_ia32_aesenc256((__v4di) __A, + (__v4di) __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS + _mm256_aesdec_epi128(__m256i __A, __m256i __B) +{ + return (__m256i) __builtin_ia32_aesdec256((__v4di) __A, + (__v4di) __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS + _mm256_aesenclast_epi128(__m256i __A, __m256i __B) +{ + return (__m256i) __builtin_ia32_aesenclast256((__v4di) __A, + (__v4di) __B); +} + +static __inline__ __m256i __DEFAULT_FN_ATTRS + _mm256_aesdeclast_epi128(__m256i __A, __m256i __B) +{ + return (__m256i) __builtin_ia32_aesdeclast256((__v4di) __A, + (__v4di) __B); +} + +#ifdef __AVX512FINTRIN_H +static __inline__ __m512i __DEFAULT_FN_ATTRS_F + _mm512_aesenc_epi128(__m512i __A, __m512i __B) +{ + return (__m512i) __builtin_ia32_aesenc512((__v8di) __A, + (__v8di) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS_F + _mm512_aesdec_epi128(__m512i __A, __m512i __B) +{ + return (__m512i) __builtin_ia32_aesdec512((__v8di) __A, + (__v8di) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS_F + _mm512_aesenclast_epi128(__m512i __A, __m512i __B) +{ + return (__m512i) __builtin_ia32_aesenclast512((__v8di) __A, + (__v8di) __B); +} + +static __inline__ __m512i __DEFAULT_FN_ATTRS_F + _mm512_aesdeclast_epi128(__m512i __A, __m512i __B) +{ + return (__m512i) __builtin_ia32_aesdeclast512((__v8di) __A, + (__v8di) __B); +} +#endif // __AVX512FINTRIN_H + +#undef __DEFAULT_FN_ATTRS +#undef __DEFAULT_FN_ATTRS_F + +#endif // __VAESINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a69348ece80878c05255d77b7c14018cea90c4f4 GIT binary patch literal 15397 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h new file mode 100644 index 00000000..485692ea --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h @@ -0,0 +1,30 @@ +/*===------------ vpclmulqdqintrin.h - VPCLMULQDQ intrinsics ---------------=== + * + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#ifndef __IMMINTRIN_H +#error "Never use <vpclmulqdqintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __VPCLMULQDQINTRIN_H +#define __VPCLMULQDQINTRIN_H + +#define _mm256_clmulepi64_epi128(A, B, I) \ + ((__m256i)__builtin_ia32_pclmulqdq256((__v4di)(__m256i)(A), \ + (__v4di)(__m256i)(B), \ + (char)(I))) + +#ifdef __AVX512FINTRIN_H +#define _mm512_clmulepi64_epi128(A, B, I) \ + ((__m512i)__builtin_ia32_pclmulqdq512((__v8di)(__m512i)(A), \ + (__v8di)(__m512i)(B), \ + (char)(I))) +#endif // __AVX512FINTRIN_H + +#endif /* __VPCLMULQDQINTRIN_H */ + diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..2ae28308da6bde487d9f9e06b87c6824e8d958bf GIT binary patch literal 12759 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h new file mode 100644 index 00000000..7ecada4c --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h @@ -0,0 +1,42 @@ +/*===----------------------- waitpkgintrin.h - WAITPKG --------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <waitpkgintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __WAITPKGINTRIN_H +#define __WAITPKGINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS \ + __attribute__((__always_inline__, __nodebug__, __target__("waitpkg"))) + +static __inline__ void __DEFAULT_FN_ATTRS +_umonitor (void * __address) +{ + __builtin_ia32_umonitor (__address); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_umwait (unsigned int __control, unsigned long long __counter) +{ + return __builtin_ia32_umwait (__control, + (unsigned int)(__counter >> 32), (unsigned int)__counter); +} + +static __inline__ unsigned char __DEFAULT_FN_ATTRS +_tpause (unsigned int __control, unsigned long long __counter) +{ + return __builtin_ia32_tpause (__control, + (unsigned int)(__counter >> 32), (unsigned int)__counter); +} + +#undef __DEFAULT_FN_ATTRS + +#endif /* __WAITPKGINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..2e4713507f741148b80161aa09f89f8620f8fcbc GIT binary patch literal 13144 zcmbtaON<;x8SdFc0!5q1*p`u(80|X7v4bar7qhZJgmoTHtT+yGoB#&Vsp+nsscgU8 z)jc!2aNw34I3Nx@4nc?$M8dK-AWk_T1WIz?!Xe_ofdd>s7J{5ioaL{ou9~UoziTGK zhn08x@4vqP{iuG#``~T%)pxv(*BfRD?Zv$(Dc>oxyjN0Q_Cgx=coFmx!qP_r@17tg z>0l|+?l>!USUTv2te`=e6}w+-J;A$srqio<(PL>4S0U}a@Z{yqUY`zF>IYd!A02uh zoLqnHZHp!-cXRpVz1!#QCw*4(o_NZ8zMu4YNlNOMf{7uGS-&S`>7Cs&r;=pC(y{<a zfmCS4I!|JPAO4_XA&Thf%e_HdiAM+ibnC5_mqDvlflCxoBA#&zsa8os%AxfD7hyE{ z+}X`2KfC3SMCwPFCAF2JkCM;(yWjw0k}p1!mtjB4VnNtYnq-w{oJ}_Um?ai7>o`(o z2@Cu&3n`eqN=sT8VwYn^ET(?H$i`f~@R>LIEoKYyiltE|xEfz_=n#;T7#wi1Kk%xE zNH8_23+|A{Y$71s{M9#YoLn3<Ffxm1K+z4NlsQmIg)86ZY%n76oa0+cS9B#yXfZ?P z!cRv`8hZ83=WX~VI?AjHq@x-oTSrEDH_itA#c~qq$)kSal9uoCUJ%j<51CnAltmSk z{>4j|pR$hD*bID`=w@9+Q_L_6vTTP@pJjejr9sKEl+UPdHjl}SAP&6Vf5MTYB8ZSV z4yf(NNwUcFV02#Y@I6$@DrFF?=%X3&@QkVT00*Q*`hZEM`jO<pgCSjb#2Ca_M&LZl zgS2$WZ0rWfEL0gl`km8<6B0;=`SYirvz=H(0;(Nz44lG<tPjS$QA_zgC>k8oPsqe4 zG3ZQ*izi53tAz3Bykacv4k(o75;CMJA<_gcS@}rFbNh)4wxC8HKneT>jgd#6Ct^zi zvowNA8%;PQuSTXsY3sPoH{k_ZaA*xa<eTv_)lFD(>zsvL%VlH_VwU$aQsBj0Ix|#^ zGVMZ50w*kYEq17Ic@YIeEMcM4wJOp^LU&m-Dk${_@op}Y>?7+#+p;PKMG_#v&SJnd zgt#9q?ij#3MFH&wknc)6<GRFy3@&U94kF-~0C2p*qJ)fM<Q;87DdaR1@kFG9D$W7| zJ%Zippr^x$#^DW4>rAL#5#cr~ivXJ5kh48Ji-=&8{YL|^@yQ*!Yc;$sPbk3?I4kQ; z>CS$jJOLFgcUBH_e8M=M3=D<p(}X1(31g5}J!o$GyxS6ageN^(6sgp~sXO1bTV&<A zw0tF5qUY3EMAnD!#$s<VhBdlJ^)$+ZIH}?r;SI$7&^I`$S(Fq&BU~;2k*%^1Dc%ZQ zO+q+yxzk53=ZNV<mBY1vQaeL{6}khO(t-ub8r?qO(qS7WF;>rVnhs>qZ&-aM7E{XY zw4iYdPxY0n_DIfzY~TLzs@)LDN;H+Nwf~*cnGi*lJ>g_TgGKt*NkVjBTj!QZ5@5uU z%Gl=-<|vea&eu4X<%Wb06E$~jg;yLg4Zgsjwb-Kw4y}1(K}amkT8E<5B>@cq%~u7h zYO0Gdq*%MwXfkuW7}KDkD5)F)aVG*aL3c<A^l@D%Uo(zA+fvv5HeyAVCQz4gkCRj| z@pYk}LPJRs)ZLT}I+O|^L8zdQB!j#h764d!QI`~I@G%*tp@n`7MJs7rXo!ZZg5p}z zi32lKVRa~qN-JDE#I+3X6FIY3?>jspTE@L#rZY#noIB<+x&Qizt5_A~{FvinIqm%8 zO{^I*6{lerSV+L8$kKy0nY6A-4ltOD(NXl~jh@OP=QM_Hww;~W;6N)9+b5!$ha^V| zsZo>UtfR(+l~GIvHY<xnXEwmSU<)9ai5*#Gb3=iVaA66vwC4Lz&i#HB`6ZbyH(cff z+DKKdm!E&!u3XZ&gE-@2MKre+MA4$9S!)S&9CY)7!jxv&4CMsvF;+`ZTHiNwy06*^ z!5=qd6qj8J_UR_H9A^0344rT_S=2byT4w{l-lW-%hyoq=(~PAfm;f8yxmJ?SC;l|& zn6!fOgdJ+je1?;&EsvV>ofSuEVH&cHW~I4!Ku;_P$UI+<Te}Ti4C|7=)DXi53uC0N z8?YpRDb0s$*9~`50t-;f6SWZ<rN&UX0x2eftbOzsTX{jTz@E}TsAW*~%C-w}D3q9{ zH-g0FezTHKm9>=koFzGoeX2UBgz}v;Uw5=qQ`c$>)r`P0Ajpy=bF~Cw*?qQk+1=>A zg)j|Yo`#*+&01EnoI<QQ8sjFaYO%=x?`;G+N}MFHw~C>w6DQ-^Q27RuG5D{YYHWb= z76u)`HJw^~+qFkOn<>No63g2WER<jyYv~IWa3U_Z=Ct98rRTbGY5(?@=I(?fK4{q@ z2wr^VmlW!*#dr2~i+7JB*h5XPFI;eU2~Sy`tJe1?KYP(GqY@Id1#|@M^ZYi)#a3Ed zDEAK9Xjz4y33&>hQ#+-h)=)`SY<=cT(wde_K8eFp+%Gm9TDy)3p;t1PJD3_!+_|nq z`vnwol0n&AI-X=wgrR;JxTLC=L~g7>9K{tMx|xoHA(>vI%}!B9J3|)M6S+LkWqukm zxW*Os|I5Y5kw}#}bJyIkXm`iC-)wJDL(Dc?L|vVlgoVB^Ilnc?m$sa)|G~m4Wg4*d z4Zcyj%7<2(YPfA4lQPN*d|o!3ZdA-J;+l^R^0Z3Y2h+L@5kMNlk-m)XI#%iC5V&S+ zOKt`#rzuzNV?5geJ5y0uxVWZ30u$TlIYQjzXk6>V4Z!Jk4F{-h&l-ZFM=HO81x+(S zq4Xp0-DPPRDh|q4CLWA&LwHfd*mQ=U%@xwhR&tlEwx5%N*f;tp20p~nx(1+JNZdk| zU3uGLIU~wY>DC#Mz)b?SnCT<Uo*I2B0hv)9_EB*T`zUkKYrTWQ3*wL_S-I3!F3w2E zr!{?6>&7i}Hlb=~&~QsbGl2F(Y>tX7j_3MC6eFl`6LB}KA;TATC$5lPqQ2zWcn*+0 zL?;hy<JATlzHJ%B;+p^rJ^B(%`SpNr%ECMVks|AbxMf|NPPr&3&C&Y{x9P&xxh|6? zr=rLrFuu&)1{g{PrfL~JEqw59(uJ8P?1nUmVSftuFqSkZ^A=57oUO<&?SRJ!>&9{} zF>6ZWT1i%^TL<ISC_)fF6|N1f{Zj1{%tM?EXg`w;yPG%cKJtKJl^unWs~m~M4N9)k z)RH$-aB(KLjB=n`s%dtA7-Q5tB+z!^cX}$X%LR59k~D0>y6s6*5zA?A1}bc>EGN@e zo>Ig0gzbl#M1C4W$Kv&uj{p7l@@qMV9{b{x5h$mE-UN*1Wuz^}SuT$=hSwyEK6g`I zF4W)RxKgAz6CX5Y6)f^Cxl!P76HK9JZo)>X>GD-QFUJK#3k=FR-dpk;nxulO2O(EO zdq%->X2dmYXm~)<#(q}YL0obyT9k_`zN~eFGCc=;TbiK(SK3PES36mw>VcavvBg-v zR|}Fn2qq+4+O%~hfQUu20g6gzkCFRB8Ld{M6xbuHn3PI!jdRmQ)+?{o-%L7@fKuHb zM9PhkTsoS<r{PJ1)Oo{rnW1tV+wxsX+Z!KdhY%FOXP0gx@ZE$hUj2DY;~KCHtZZh` zyoSD!@6<aycM5devbNuZ8TT1Ny28V|&VO)$)f$<SM7IlKv28B~QK_K(z`(q0k__T; ze~#AW;^mO4wcHP$t``>CVvu40j+MjpqZuh$KNqe2S@7tZK2G?v*ZHV--|9X4zrFjl zqqmN~b6wo4v0$C0aD747s}!czl!ohKFSG8KIe{MNl=&-2w(i5#mh9utOsPfHS(iV= zQ~7Q5Y47~`2Ra+x#se#zb?;Lvp69LX|NGth-g@rY-C+M8pZEUbT{*Ywt#;snw}1V{ z)}h;fsD9%_Qzhae@c%%w=B)vmquwVKn*a7z&xQN%eQ*Cquikm%%|l<<)M$SB)7yXj z#UI~&%0@HFSh((2uv-^frc?6QM|>aBEO-b%?VUV%uyfcud~l_6$osfBp|k(D*R$t8 z@%pP*YsM?Lgs`*!R?OK`mE4>q5dUA<H%PSty^k1O;>PjT)(!%KjWZjM-Ceo2vvF|a zv72{S;V%zuKXi4qV~#a%BPJ9Q!5eGCwLQUO?eVp}TY|^Rv6IKnuXc__$0oo@V>6sA zC#i9)omrDO)()=KI3C=7P~gxSn$xDYx+;!7eB$tyIQsCB!&{z&e`M>(Gw_=BA9H9s z{Egv;gun6lMh*YO$rAwoM07&HzxVxb-R#}o`?>Ew`P9V=FJ8XpU%cX9xOVO83!wQE z55Z_A;-dL<{TuhK!=FhBJzpQ%65l^{3Vw~pWS9FYntcBZP^54X+^+`W7x)dn8i8** zfcUuZ<$Pyw{PgM5AnAbv2hOd)&yRiI+lP?2_t2w<u5NdZZXXS|JL}u)@blpZ9^TyU z?7wvAhyQxv{g;2|`(L?m>Drf{efrXsYgaE_@t*;>$ER=`4?FiCxPNm+{*)(p{{zif B22%h4 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h new file mode 100644 index 00000000..cac0347e --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h @@ -0,0 +1,24 @@ +/*===-------------- wbnoinvdintrin.h - wbnoinvd intrinsic-------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H +#error "Never use <wbnoinvdintrin.h> directly; include <x86intrin.h> instead." +#endif + +#ifndef __WBNOINVDINTRIN_H +#define __WBNOINVDINTRIN_H + +static __inline__ void + __attribute__((__always_inline__, __nodebug__, __target__("wbnoinvd"))) +_wbnoinvd (void) +{ + __builtin_ia32_wbnoinvd (); +} + +#endif /* __WBNOINVDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8f7492304c3c3851e45f7b07484339fce8965a27 GIT binary patch literal 12264 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h new file mode 100644 index 00000000..49148dbf --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h @@ -0,0 +1,23 @@ +/*===---- wmmintrin.h - AES intrinsics ------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __WMMINTRIN_H +#define __WMMINTRIN_H + +#if !defined(__i386__) && !defined(__x86_64__) +#error "This header is only meant to be used on x86 and x64 architecture" +#endif + +#include <emmintrin.h> + +#include <__wmmintrin_aes.h> + +#include <__wmmintrin_pclmul.h> + +#endif /* __WMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ceebafe4ffd562ee22465e594c6235979a8118ec GIT binary patch literal 12322 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h new file mode 100644 index 00000000..f9a765be --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h @@ -0,0 +1,65 @@ +/*===--------------- x86gprintrin.h - X86 GPR intrinsics ------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __X86GPRINTRIN_H +#define __X86GPRINTRIN_H + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__HRESET__) +#include <hresetintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__UINTR__) +#include <uintrintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__CRC32__) +#include <crc32intrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__PRFCHI__) +#include <prfchiintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__RAOINT__) +#include <raointintrin.h> +#endif + +#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ + defined(__CMPCCXADD__) +#include <cmpccxaddintrin.h> +#endif + +#if defined(__i386__) +#define __SAVE_GPRBX "mov {%%ebx, %%eax |eax, ebx};" +#define __RESTORE_GPRBX "mov {%%eax, %%ebx |ebx, eax};" +#define __TMPGPR "eax" +#else +// When in 64-bit target, the 32-bit operands generate a 32-bit result, +// zero-extended to a 64-bit result in the destination general-purpose, +// It means "mov x %ebx" will clobber the higher 32 bits of rbx, so we +// should preserve the 64-bit register rbx. +#define __SAVE_GPRBX "mov {%%rbx, %%rax |rax, rbx};" +#define __RESTORE_GPRBX "mov {%%rax, %%rbx |rbx, rax};" +#define __TMPGPR "rax" +#endif + +#define __SSC_MARK(__Tag) \ + __asm__ __volatile__( __SAVE_GPRBX \ + "mov {%0, %%ebx|ebx, %0}; " \ + ".byte 0x64, 0x67, 0x90; " \ + __RESTORE_GPRBX \ + ::"i"(__Tag) \ + : __TMPGPR ); + +#endif /* __X86GPRINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ffa0492f5c3937b068ab25bf9834a11ad91dbf29 GIT binary patch literal 12824 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 C`JJHv literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h new file mode 100644 index 00000000..80aa2a81 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h @@ -0,0 +1,3017 @@ +/*===---- xmmintrin.h - SSE intrinsics -------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __XMMINTRIN_H +#define __XMMINTRIN_H + +#if !defined(__i386__) && !defined(__x86_64__) +#error "This header is only meant to be used on x86 and x64 architecture" +#endif + +#include <mmintrin.h> + +typedef int __v4si __attribute__((__vector_size__(16))); +typedef float __v4sf __attribute__((__vector_size__(16))); +typedef float __m128 __attribute__((__vector_size__(16), __aligned__(16))); + +typedef float __m128_u __attribute__((__vector_size__(16), __aligned__(1))); + +/* Unsigned types */ +typedef unsigned int __v4su __attribute__((__vector_size__(16))); + +/* This header should only be included in a hosted environment as it depends on + * a standard library to provide allocation routines. */ +#if __STDC_HOSTED__ +#include <mm_malloc.h> +#endif + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("sse"), __min_vector_width__(128))) +#define __DEFAULT_FN_ATTRS_MMX __attribute__((__always_inline__, __nodebug__, __target__("mmx,sse"), __min_vector_width__(64))) + +/// Adds the 32-bit float values in the low-order bits of the operands. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDSS / ADDSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// The lower 32 bits of this operand are used in the calculation. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// The lower 32 bits of this operand are used in the calculation. +/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the sum +/// of the lower 32 bits of both operands. The upper 96 bits are copied from +/// the upper 96 bits of the first source operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_add_ss(__m128 __a, __m128 __b) +{ + __a[0] += __b[0]; + return __a; +} + +/// Adds two 128-bit vectors of [4 x float], and returns the results of +/// the addition. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VADDPS / ADDPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// \returns A 128-bit vector of [4 x float] containing the sums of both +/// operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_add_ps(__m128 __a, __m128 __b) +{ + return (__m128)((__v4sf)__a + (__v4sf)__b); +} + +/// Subtracts the 32-bit float value in the low-order bits of the second +/// operand from the corresponding value in the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSUBSS / SUBSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing the minuend. The lower 32 bits +/// of this operand are used in the calculation. +/// \param __b +/// A 128-bit vector of [4 x float] containing the subtrahend. The lower 32 +/// bits of this operand are used in the calculation. +/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the +/// difference of the lower 32 bits of both operands. The upper 96 bits are +/// copied from the upper 96 bits of the first source operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_sub_ss(__m128 __a, __m128 __b) +{ + __a[0] -= __b[0]; + return __a; +} + +/// Subtracts each of the values of the second operand from the first +/// operand, both of which are 128-bit vectors of [4 x float] and returns +/// the results of the subtraction. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSUBPS / SUBPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing the minuend. +/// \param __b +/// A 128-bit vector of [4 x float] containing the subtrahend. +/// \returns A 128-bit vector of [4 x float] containing the differences between +/// both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_sub_ps(__m128 __a, __m128 __b) +{ + return (__m128)((__v4sf)__a - (__v4sf)__b); +} + +/// Multiplies two 32-bit float values in the low-order bits of the +/// operands. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMULSS / MULSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// The lower 32 bits of this operand are used in the calculation. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// The lower 32 bits of this operand are used in the calculation. +/// \returns A 128-bit vector of [4 x float] containing the product of the lower +/// 32 bits of both operands. The upper 96 bits are copied from the upper 96 +/// bits of the first source operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_mul_ss(__m128 __a, __m128 __b) +{ + __a[0] *= __b[0]; + return __a; +} + +/// Multiplies two 128-bit vectors of [4 x float] and returns the +/// results of the multiplication. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMULPS / MULPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// \returns A 128-bit vector of [4 x float] containing the products of both +/// operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_mul_ps(__m128 __a, __m128 __b) +{ + return (__m128)((__v4sf)__a * (__v4sf)__b); +} + +/// Divides the value in the low-order 32 bits of the first operand by +/// the corresponding value in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VDIVSS / DIVSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing the dividend. The lower 32 +/// bits of this operand are used in the calculation. +/// \param __b +/// A 128-bit vector of [4 x float] containing the divisor. The lower 32 bits +/// of this operand are used in the calculation. +/// \returns A 128-bit vector of [4 x float] containing the quotients of the +/// lower 32 bits of both operands. The upper 96 bits are copied from the +/// upper 96 bits of the first source operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_div_ss(__m128 __a, __m128 __b) +{ + __a[0] /= __b[0]; + return __a; +} + +/// Divides two 128-bit vectors of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VDIVPS / DIVPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing the dividend. +/// \param __b +/// A 128-bit vector of [4 x float] containing the divisor. +/// \returns A 128-bit vector of [4 x float] containing the quotients of both +/// operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_div_ps(__m128 __a, __m128 __b) +{ + return (__m128)((__v4sf)__a / (__v4sf)__b); +} + +/// Calculates the square root of the value stored in the low-order bits +/// of a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSQRTSS / SQRTSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the calculation. +/// \returns A 128-bit vector of [4 x float] containing the square root of the +/// value in the low-order bits of the operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_sqrt_ss(__m128 __a) +{ + return (__m128)__builtin_ia32_sqrtss((__v4sf)__a); +} + +/// Calculates the square roots of the values stored in a 128-bit vector +/// of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSQRTPS / SQRTPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the square roots of the +/// values in the operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_sqrt_ps(__m128 __a) +{ + return __builtin_ia32_sqrtps((__v4sf)__a); +} + +/// Calculates the approximate reciprocal of the value stored in the +/// low-order bits of a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VRCPSS / RCPSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the calculation. +/// \returns A 128-bit vector of [4 x float] containing the approximate +/// reciprocal of the value in the low-order bits of the operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_rcp_ss(__m128 __a) +{ + return (__m128)__builtin_ia32_rcpss((__v4sf)__a); +} + +/// Calculates the approximate reciprocals of the values stored in a +/// 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VRCPPS / RCPPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the approximate +/// reciprocals of the values in the operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_rcp_ps(__m128 __a) +{ + return (__m128)__builtin_ia32_rcpps((__v4sf)__a); +} + +/// Calculates the approximate reciprocal of the square root of the value +/// stored in the low-order bits of a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VRSQRTSS / RSQRTSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the calculation. +/// \returns A 128-bit vector of [4 x float] containing the approximate +/// reciprocal of the square root of the value in the low-order bits of the +/// operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_rsqrt_ss(__m128 __a) +{ + return __builtin_ia32_rsqrtss((__v4sf)__a); +} + +/// Calculates the approximate reciprocals of the square roots of the +/// values stored in a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VRSQRTPS / RSQRTPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the approximate +/// reciprocals of the square roots of the values in the operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_rsqrt_ps(__m128 __a) +{ + return __builtin_ia32_rsqrtps((__v4sf)__a); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands and returns the lesser value in the low-order bits of the +/// vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMINSS / MINSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the +/// minimum value between both operands. The upper 96 bits are copied from +/// the upper 96 bits of the first source operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_min_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_minss((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 128-bit vectors of [4 x float] and returns the lesser +/// of each pair of values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMINPS / MINPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. +/// \returns A 128-bit vector of [4 x float] containing the minimum values +/// between both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_min_ps(__m128 __a, __m128 __b) +{ + return __builtin_ia32_minps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands and returns the greater value in the low-order bits of a 128-bit +/// vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMAXSS / MAXSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the +/// maximum value between both operands. The upper 96 bits are copied from +/// the upper 96 bits of the first source operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_max_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_maxss((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 128-bit vectors of [4 x float] and returns the greater +/// of each pair of values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMAXPS / MAXPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. +/// \returns A 128-bit vector of [4 x float] containing the maximum values +/// between both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_max_ps(__m128 __a, __m128 __b) +{ + return __builtin_ia32_maxps((__v4sf)__a, (__v4sf)__b); +} + +/// Performs a bitwise AND of two 128-bit vectors of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VANDPS / ANDPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector containing one of the source operands. +/// \param __b +/// A 128-bit vector containing one of the source operands. +/// \returns A 128-bit vector of [4 x float] containing the bitwise AND of the +/// values between both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_and_ps(__m128 __a, __m128 __b) +{ + return (__m128)((__v4su)__a & (__v4su)__b); +} + +/// Performs a bitwise AND of two 128-bit vectors of [4 x float], using +/// the one's complement of the values contained in the first source +/// operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VANDNPS / ANDNPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing the first source operand. The +/// one's complement of this value is used in the bitwise AND. +/// \param __b +/// A 128-bit vector of [4 x float] containing the second source operand. +/// \returns A 128-bit vector of [4 x float] containing the bitwise AND of the +/// one's complement of the first operand and the values in the second +/// operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_andnot_ps(__m128 __a, __m128 __b) +{ + return (__m128)(~(__v4su)__a & (__v4su)__b); +} + +/// Performs a bitwise OR of two 128-bit vectors of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VORPS / ORPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// \returns A 128-bit vector of [4 x float] containing the bitwise OR of the +/// values between both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_or_ps(__m128 __a, __m128 __b) +{ + return (__m128)((__v4su)__a | (__v4su)__b); +} + +/// Performs a bitwise exclusive OR of two 128-bit vectors of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPS / XORPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the source operands. +/// \returns A 128-bit vector of [4 x float] containing the bitwise exclusive OR +/// of the values between both operands. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_xor_ps(__m128 __a, __m128 __b) +{ + return (__m128)((__v4su)__a ^ (__v4su)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands for equality and returns the result of the comparison in the +/// low-order bits of a vector [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPEQSS / CMPEQSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpeq_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpeqss((__v4sf)__a, (__v4sf)__b); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] for equality. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPEQPS / CMPEQPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpeq_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpeqps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is less than the +/// corresponding value in the second operand and returns the result of the +/// comparison in the low-order bits of a vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLTSS / CMPLTSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmplt_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpltss((__v4sf)__a, (__v4sf)__b); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are less than those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLTPS / CMPLTPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmplt_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpltps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is less than or +/// equal to the corresponding value in the second operand and returns the +/// result of the comparison in the low-order bits of a vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLESS / CMPLESS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmple_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpless((__v4sf)__a, (__v4sf)__b); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are less than or equal to those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLEPS / CMPLEPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmple_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpleps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is greater than +/// the corresponding value in the second operand and returns the result of +/// the comparison in the low-order bits of a vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLTSS / CMPLTSS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpgt_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_shufflevector((__v4sf)__a, + (__v4sf)__builtin_ia32_cmpltss((__v4sf)__b, (__v4sf)__a), + 4, 1, 2, 3); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are greater than those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLTPS / CMPLTPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpgt_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpltps((__v4sf)__b, (__v4sf)__a); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is greater than +/// or equal to the corresponding value in the second operand and returns +/// the result of the comparison in the low-order bits of a vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLESS / CMPLESS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpge_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_shufflevector((__v4sf)__a, + (__v4sf)__builtin_ia32_cmpless((__v4sf)__b, (__v4sf)__a), + 4, 1, 2, 3); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are greater than or equal to those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPLEPS / CMPLEPS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpge_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpleps((__v4sf)__b, (__v4sf)__a); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands for inequality and returns the result of the comparison in the +/// low-order bits of a vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNEQSS / CMPNEQSS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpneq_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpneqss((__v4sf)__a, (__v4sf)__b); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] for inequality. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNEQPS / CMPNEQPS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpneq_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpneqps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is not less than +/// the corresponding value in the second operand and returns the result of +/// the comparison in the low-order bits of a vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLTSS / CMPNLTSS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpnlt_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpnltss((__v4sf)__a, (__v4sf)__b); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are not less than those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLTPS / CMPNLTPS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpnlt_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpnltps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is not less than +/// or equal to the corresponding value in the second operand and returns +/// the result of the comparison in the low-order bits of a vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLESS / CMPNLESS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpnle_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpnless((__v4sf)__a, (__v4sf)__b); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are not less than or equal to those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLEPS / CMPNLEPS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpnle_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpnleps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is not greater +/// than the corresponding value in the second operand and returns the +/// result of the comparison in the low-order bits of a vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLTSS / CMPNLTSS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpngt_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_shufflevector((__v4sf)__a, + (__v4sf)__builtin_ia32_cmpnltss((__v4sf)__b, (__v4sf)__a), + 4, 1, 2, 3); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are not greater than those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLTPS / CMPNLTPS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpngt_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpnltps((__v4sf)__b, (__v4sf)__a); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is not greater +/// than or equal to the corresponding value in the second operand and +/// returns the result of the comparison in the low-order bits of a vector +/// of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLESS / CMPNLESS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpnge_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_shufflevector((__v4sf)__a, + (__v4sf)__builtin_ia32_cmpnless((__v4sf)__b, (__v4sf)__a), + 4, 1, 2, 3); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are not greater than or equal to those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPNLEPS / CMPNLEPS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpnge_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpnleps((__v4sf)__b, (__v4sf)__a); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is ordered with +/// respect to the corresponding value in the second operand and returns the +/// result of the comparison in the low-order bits of a vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPORDSS / CMPORDSS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpord_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpordss((__v4sf)__a, (__v4sf)__b); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are ordered with respect to those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPORDPS / CMPORDPS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpord_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpordps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the value in the first operand is unordered +/// with respect to the corresponding value in the second operand and +/// returns the result of the comparison in the low-order bits of a vector +/// of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPUNORDSS / CMPUNORDSS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float] containing one of the operands. The lower +/// 32 bits of this operand are used in the comparison. +/// \returns A 128-bit vector of [4 x float] containing the comparison results +/// in the low-order bits. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpunord_ss(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpunordss((__v4sf)__a, (__v4sf)__b); +} + +/// Compares each of the corresponding 32-bit float values of the +/// 128-bit vectors of [4 x float] to determine if the values in the first +/// operand are unordered with respect to those in the second operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCMPUNORDPS / CMPUNORDPS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// \returns A 128-bit vector of [4 x float] containing the comparison results. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cmpunord_ps(__m128 __a, __m128 __b) +{ + return (__m128)__builtin_ia32_cmpunordps((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands for equality and returns the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the +/// two lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_comieq_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_comieq((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the first operand is less than the second +/// operand and returns the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_comilt_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_comilt((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the first operand is less than or equal to the +/// second operand and returns the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_comile_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_comile((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the first operand is greater than the second +/// operand and returns the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the +/// two lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_comigt_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_comigt((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the first operand is greater than or equal to +/// the second operand and returns the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_comige_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_comige((__v4sf)__a, (__v4sf)__b); +} + +/// Compares two 32-bit float values in the low-order bits of both +/// operands to determine if the first operand is not equal to the second +/// operand and returns the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 1 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the +/// two lower 32-bit values is NaN, 1 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_comineq_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_comineq((__v4sf)__a, (__v4sf)__b); +} + +/// Performs an unordered comparison of two 32-bit float values using +/// the low-order bits of both operands to determine equality and returns +/// the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_ucomieq_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_ucomieq((__v4sf)__a, (__v4sf)__b); +} + +/// Performs an unordered comparison of two 32-bit float values using +/// the low-order bits of both operands to determine if the first operand is +/// less than the second operand and returns the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_ucomilt_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_ucomilt((__v4sf)__a, (__v4sf)__b); +} + +/// Performs an unordered comparison of two 32-bit float values using +/// the low-order bits of both operands to determine if the first operand is +/// less than or equal to the second operand and returns the result of the +/// comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_ucomile_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_ucomile((__v4sf)__a, (__v4sf)__b); +} + +/// Performs an unordered comparison of two 32-bit float values using +/// the low-order bits of both operands to determine if the first operand is +/// greater than the second operand and returns the result of the +/// comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_ucomigt_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_ucomigt((__v4sf)__a, (__v4sf)__b); +} + +/// Performs an unordered comparison of two 32-bit float values using +/// the low-order bits of both operands to determine if the first operand is +/// greater than or equal to the second operand and returns the result of +/// the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 0 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 0 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_ucomige_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_ucomige((__v4sf)__a, (__v4sf)__b); +} + +/// Performs an unordered comparison of two 32-bit float values using +/// the low-order bits of both operands to determine inequality and returns +/// the result of the comparison. +/// +/// If either of the two lower 32-bit values is NaN, 1 is returned. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \param __b +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the comparison. +/// \returns An integer containing the comparison results. If either of the two +/// lower 32-bit values is NaN, 1 is returned. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_ucomineq_ss(__m128 __a, __m128 __b) +{ + return __builtin_ia32_ucomineq((__v4sf)__a, (__v4sf)__b); +} + +/// Converts a float value contained in the lower 32 bits of a vector of +/// [4 x float] into a 32-bit integer. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSS2SI / CVTSS2SI </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the conversion. +/// \returns A 32-bit integer containing the converted value. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_cvtss_si32(__m128 __a) +{ + return __builtin_ia32_cvtss2si((__v4sf)__a); +} + +/// Converts a float value contained in the lower 32 bits of a vector of +/// [4 x float] into a 32-bit integer. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSS2SI / CVTSS2SI </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the conversion. +/// \returns A 32-bit integer containing the converted value. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_cvt_ss2si(__m128 __a) +{ + return _mm_cvtss_si32(__a); +} + +#ifdef __x86_64__ + +/// Converts a float value contained in the lower 32 bits of a vector of +/// [4 x float] into a 64-bit integer. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSS2SI / CVTSS2SI </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the conversion. +/// \returns A 64-bit integer containing the converted value. +static __inline__ long long __DEFAULT_FN_ATTRS +_mm_cvtss_si64(__m128 __a) +{ + return __builtin_ia32_cvtss2si64((__v4sf)__a); +} + +#endif + +/// Converts two low-order float values in a 128-bit vector of +/// [4 x float] into a 64-bit vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPS2PI </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 64-bit integer vector containing the converted values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_cvtps_pi32(__m128 __a) +{ + return (__m64)__builtin_ia32_cvtps2pi((__v4sf)__a); +} + +/// Converts two low-order float values in a 128-bit vector of +/// [4 x float] into a 64-bit vector of [2 x i32]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPS2PI </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 64-bit integer vector containing the converted values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_cvt_ps2pi(__m128 __a) +{ + return _mm_cvtps_pi32(__a); +} + +/// Converts a float value contained in the lower 32 bits of a vector of +/// [4 x float] into a 32-bit integer, truncating the result when it is +/// inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTSS2SI / CVTTSS2SI </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the conversion. +/// \returns A 32-bit integer containing the converted value. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_cvttss_si32(__m128 __a) +{ + return __builtin_ia32_cvttss2si((__v4sf)__a); +} + +/// Converts a float value contained in the lower 32 bits of a vector of +/// [4 x float] into a 32-bit integer, truncating the result when it is +/// inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTSS2SI / CVTTSS2SI </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the conversion. +/// \returns A 32-bit integer containing the converted value. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_cvtt_ss2si(__m128 __a) +{ + return _mm_cvttss_si32(__a); +} + +#ifdef __x86_64__ +/// Converts a float value contained in the lower 32 bits of a vector of +/// [4 x float] into a 64-bit integer, truncating the result when it is +/// inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTTSS2SI / CVTTSS2SI </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the conversion. +/// \returns A 64-bit integer containing the converted value. +static __inline__ long long __DEFAULT_FN_ATTRS +_mm_cvttss_si64(__m128 __a) +{ + return __builtin_ia32_cvttss2si64((__v4sf)__a); +} +#endif + +/// Converts two low-order float values in a 128-bit vector of +/// [4 x float] into a 64-bit vector of [2 x i32], truncating the result +/// when it is inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTTPS2PI / VTTPS2PI </c> +/// instructions. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 64-bit integer vector containing the converted values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_cvttps_pi32(__m128 __a) +{ + return (__m64)__builtin_ia32_cvttps2pi((__v4sf)__a); +} + +/// Converts two low-order float values in a 128-bit vector of [4 x +/// float] into a 64-bit vector of [2 x i32], truncating the result when it +/// is inexact. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTTPS2PI </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \returns A 64-bit integer vector containing the converted values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_cvtt_ps2pi(__m128 __a) +{ + return _mm_cvttps_pi32(__a); +} + +/// Converts a 32-bit signed integer value into a floating point value +/// and writes it to the lower 32 bits of the destination. The remaining +/// higher order elements of the destination vector are copied from the +/// corresponding elements in the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSI2SS / CVTSI2SS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 32-bit signed integer operand containing the value to be converted. +/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the +/// converted value of the second operand. The upper 96 bits are copied from +/// the upper 96 bits of the first operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cvtsi32_ss(__m128 __a, int __b) +{ + __a[0] = __b; + return __a; +} + +/// Converts a 32-bit signed integer value into a floating point value +/// and writes it to the lower 32 bits of the destination. The remaining +/// higher order elements of the destination are copied from the +/// corresponding elements in the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSI2SS / CVTSI2SS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 32-bit signed integer operand containing the value to be converted. +/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the +/// converted value of the second operand. The upper 96 bits are copied from +/// the upper 96 bits of the first operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cvt_si2ss(__m128 __a, int __b) +{ + return _mm_cvtsi32_ss(__a, __b); +} + +#ifdef __x86_64__ + +/// Converts a 64-bit signed integer value into a floating point value +/// and writes it to the lower 32 bits of the destination. The remaining +/// higher order elements of the destination are copied from the +/// corresponding elements in the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VCVTSI2SS / CVTSI2SS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 64-bit signed integer operand containing the value to be converted. +/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the +/// converted value of the second operand. The upper 96 bits are copied from +/// the upper 96 bits of the first operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_cvtsi64_ss(__m128 __a, long long __b) +{ + __a[0] = __b; + return __a; +} + +#endif + +/// Converts two elements of a 64-bit vector of [2 x i32] into two +/// floating point values and writes them to the lower 64-bits of the +/// destination. The remaining higher order elements of the destination are +/// copied from the corresponding elements in the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPI2PS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 64-bit vector of [2 x i32]. The elements in this vector are converted +/// and written to the corresponding low-order elements in the destination. +/// \returns A 128-bit vector of [4 x float] whose lower 64 bits contain the +/// converted value of the second operand. The upper 64 bits are copied from +/// the upper 64 bits of the first operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX +_mm_cvtpi32_ps(__m128 __a, __m64 __b) +{ + return __builtin_ia32_cvtpi2ps((__v4sf)__a, (__v2si)__b); +} + +/// Converts two elements of a 64-bit vector of [2 x i32] into two +/// floating point values and writes them to the lower 64-bits of the +/// destination. The remaining higher order elements of the destination are +/// copied from the corresponding elements in the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPI2PS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. +/// \param __b +/// A 64-bit vector of [2 x i32]. The elements in this vector are converted +/// and written to the corresponding low-order elements in the destination. +/// \returns A 128-bit vector of [4 x float] whose lower 64 bits contain the +/// converted value from the second operand. The upper 64 bits are copied +/// from the upper 64 bits of the first operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX +_mm_cvt_pi2ps(__m128 __a, __m64 __b) +{ + return _mm_cvtpi32_ps(__a, __b); +} + +/// Extracts a float value contained in the lower 32 bits of a vector of +/// [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are +/// used in the extraction. +/// \returns A 32-bit float containing the extracted value. +static __inline__ float __DEFAULT_FN_ATTRS +_mm_cvtss_f32(__m128 __a) +{ + return __a[0]; +} + +/// Loads two packed float values from the address \a __p into the +/// high-order bits of a 128-bit vector of [4 x float]. The low-order bits +/// are copied from the low-order bits of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVHPD / MOVHPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. Bits [63:0] are written to bits [63:0] +/// of the destination. +/// \param __p +/// A pointer to two packed float values. Bits [63:0] are written to bits +/// [127:64] of the destination. +/// \returns A 128-bit vector of [4 x float] containing the moved values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_loadh_pi(__m128 __a, const __m64 *__p) +{ + typedef float __mm_loadh_pi_v2f32 __attribute__((__vector_size__(8))); + struct __mm_loadh_pi_struct { + __mm_loadh_pi_v2f32 __u; + } __attribute__((__packed__, __may_alias__)); + __mm_loadh_pi_v2f32 __b = ((const struct __mm_loadh_pi_struct*)__p)->__u; + __m128 __bb = __builtin_shufflevector(__b, __b, 0, 1, 0, 1); + return __builtin_shufflevector(__a, __bb, 0, 1, 4, 5); +} + +/// Loads two packed float values from the address \a __p into the +/// low-order bits of a 128-bit vector of [4 x float]. The high-order bits +/// are copied from the high-order bits of the first operand. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVLPD / MOVLPD </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. Bits [127:64] are written to bits +/// [127:64] of the destination. +/// \param __p +/// A pointer to two packed float values. Bits [63:0] are written to bits +/// [63:0] of the destination. +/// \returns A 128-bit vector of [4 x float] containing the moved values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_loadl_pi(__m128 __a, const __m64 *__p) +{ + typedef float __mm_loadl_pi_v2f32 __attribute__((__vector_size__(8))); + struct __mm_loadl_pi_struct { + __mm_loadl_pi_v2f32 __u; + } __attribute__((__packed__, __may_alias__)); + __mm_loadl_pi_v2f32 __b = ((const struct __mm_loadl_pi_struct*)__p)->__u; + __m128 __bb = __builtin_shufflevector(__b, __b, 0, 1, 0, 1); + return __builtin_shufflevector(__a, __bb, 4, 5, 2, 3); +} + +/// Constructs a 128-bit floating-point vector of [4 x float]. The lower +/// 32 bits of the vector are initialized with the single-precision +/// floating-point value loaded from a specified memory location. The upper +/// 96 bits are set to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSS / MOVSS </c> instruction. +/// +/// \param __p +/// A pointer to a 32-bit memory location containing a single-precision +/// floating-point value. +/// \returns An initialized 128-bit floating-point vector of [4 x float]. The +/// lower 32 bits contain the value loaded from the memory location. The +/// upper 96 bits are set to zero. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_load_ss(const float *__p) +{ + struct __mm_load_ss_struct { + float __u; + } __attribute__((__packed__, __may_alias__)); + float __u = ((const struct __mm_load_ss_struct*)__p)->__u; + return __extension__ (__m128){ __u, 0, 0, 0 }; +} + +/// Loads a 32-bit float value and duplicates it to all four vector +/// elements of a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBROADCASTSS / MOVSS + shuffling </c> +/// instruction. +/// +/// \param __p +/// A pointer to a float value to be loaded and duplicated. +/// \returns A 128-bit vector of [4 x float] containing the loaded and +/// duplicated values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_load1_ps(const float *__p) +{ + struct __mm_load1_ps_struct { + float __u; + } __attribute__((__packed__, __may_alias__)); + float __u = ((const struct __mm_load1_ps_struct*)__p)->__u; + return __extension__ (__m128){ __u, __u, __u, __u }; +} + +#define _mm_load_ps1(p) _mm_load1_ps(p) + +/// Loads a 128-bit floating-point vector of [4 x float] from an aligned +/// memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS </c> instruction. +/// +/// \param __p +/// A pointer to a 128-bit memory location. The address of the memory +/// location has to be 128-bit aligned. +/// \returns A 128-bit vector of [4 x float] containing the loaded values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_load_ps(const float *__p) +{ + return *(const __m128*)__p; +} + +/// Loads a 128-bit floating-point vector of [4 x float] from an +/// unaligned memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPS / MOVUPS </c> instruction. +/// +/// \param __p +/// A pointer to a 128-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \returns A 128-bit vector of [4 x float] containing the loaded values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_loadu_ps(const float *__p) +{ + struct __loadu_ps { + __m128_u __v; + } __attribute__((__packed__, __may_alias__)); + return ((const struct __loadu_ps*)__p)->__v; +} + +/// Loads four packed float values, in reverse order, from an aligned +/// memory location to 32-bit elements in a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS + shuffling </c> +/// instruction. +/// +/// \param __p +/// A pointer to a 128-bit memory location. The address of the memory +/// location has to be 128-bit aligned. +/// \returns A 128-bit vector of [4 x float] containing the moved values, loaded +/// in reverse order. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_loadr_ps(const float *__p) +{ + __m128 __a = _mm_load_ps(__p); + return __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 3, 2, 1, 0); +} + +/// Create a 128-bit vector of [4 x float] with undefined values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic has no corresponding instruction. +/// +/// \returns A 128-bit vector of [4 x float] containing undefined values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_undefined_ps(void) +{ + return (__m128)__builtin_ia32_undef128(); +} + +/// Constructs a 128-bit floating-point vector of [4 x float]. The lower +/// 32 bits of the vector are initialized with the specified single-precision +/// floating-point value. The upper 96 bits are set to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSS / MOVSS </c> instruction. +/// +/// \param __w +/// A single-precision floating-point value used to initialize the lower 32 +/// bits of the result. +/// \returns An initialized 128-bit floating-point vector of [4 x float]. The +/// lower 32 bits contain the value provided in the source operand. The +/// upper 96 bits are set to zero. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_set_ss(float __w) +{ + return __extension__ (__m128){ __w, 0, 0, 0 }; +} + +/// Constructs a 128-bit floating-point vector of [4 x float], with each +/// of the four single-precision floating-point vector elements set to the +/// specified single-precision floating-point value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPERMILPS / PERMILPS </c> instruction. +/// +/// \param __w +/// A single-precision floating-point value used to initialize each vector +/// element of the result. +/// \returns An initialized 128-bit floating-point vector of [4 x float]. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_set1_ps(float __w) +{ + return __extension__ (__m128){ __w, __w, __w, __w }; +} + +/* Microsoft specific. */ +/// Constructs a 128-bit floating-point vector of [4 x float], with each +/// of the four single-precision floating-point vector elements set to the +/// specified single-precision floating-point value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPERMILPS / PERMILPS </c> instruction. +/// +/// \param __w +/// A single-precision floating-point value used to initialize each vector +/// element of the result. +/// \returns An initialized 128-bit floating-point vector of [4 x float]. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_set_ps1(float __w) +{ + return _mm_set1_ps(__w); +} + +/// Constructs a 128-bit floating-point vector of [4 x float] +/// initialized with the specified single-precision floating-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __z +/// A single-precision floating-point value used to initialize bits [127:96] +/// of the result. +/// \param __y +/// A single-precision floating-point value used to initialize bits [95:64] +/// of the result. +/// \param __x +/// A single-precision floating-point value used to initialize bits [63:32] +/// of the result. +/// \param __w +/// A single-precision floating-point value used to initialize bits [31:0] +/// of the result. +/// \returns An initialized 128-bit floating-point vector of [4 x float]. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_set_ps(float __z, float __y, float __x, float __w) +{ + return __extension__ (__m128){ __w, __x, __y, __z }; +} + +/// Constructs a 128-bit floating-point vector of [4 x float], +/// initialized in reverse order with the specified 32-bit single-precision +/// float-point values. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic is a utility function and does not correspond to a specific +/// instruction. +/// +/// \param __z +/// A single-precision floating-point value used to initialize bits [31:0] +/// of the result. +/// \param __y +/// A single-precision floating-point value used to initialize bits [63:32] +/// of the result. +/// \param __x +/// A single-precision floating-point value used to initialize bits [95:64] +/// of the result. +/// \param __w +/// A single-precision floating-point value used to initialize bits [127:96] +/// of the result. +/// \returns An initialized 128-bit floating-point vector of [4 x float]. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_setr_ps(float __z, float __y, float __x, float __w) +{ + return __extension__ (__m128){ __z, __y, __x, __w }; +} + +/// Constructs a 128-bit floating-point vector of [4 x float] initialized +/// to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VXORPS / XORPS </c> instruction. +/// +/// \returns An initialized 128-bit floating-point vector of [4 x float] with +/// all elements set to zero. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_setzero_ps(void) +{ + return __extension__ (__m128){ 0.0f, 0.0f, 0.0f, 0.0f }; +} + +/// Stores the upper 64 bits of a 128-bit vector of [4 x float] to a +/// memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VPEXTRQ / PEXTRQ </c> instruction. +/// +/// \param __p +/// A pointer to a 64-bit memory location. +/// \param __a +/// A 128-bit vector of [4 x float] containing the values to be stored. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_storeh_pi(__m64 *__p, __m128 __a) +{ + typedef float __mm_storeh_pi_v2f32 __attribute__((__vector_size__(8))); + struct __mm_storeh_pi_struct { + __mm_storeh_pi_v2f32 __u; + } __attribute__((__packed__, __may_alias__)); + ((struct __mm_storeh_pi_struct*)__p)->__u = __builtin_shufflevector(__a, __a, 2, 3); +} + +/// Stores the lower 64 bits of a 128-bit vector of [4 x float] to a +/// memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVLPS / MOVLPS </c> instruction. +/// +/// \param __p +/// A pointer to a memory location that will receive the float values. +/// \param __a +/// A 128-bit vector of [4 x float] containing the values to be stored. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_storel_pi(__m64 *__p, __m128 __a) +{ + typedef float __mm_storeh_pi_v2f32 __attribute__((__vector_size__(8))); + struct __mm_storeh_pi_struct { + __mm_storeh_pi_v2f32 __u; + } __attribute__((__packed__, __may_alias__)); + ((struct __mm_storeh_pi_struct*)__p)->__u = __builtin_shufflevector(__a, __a, 0, 1); +} + +/// Stores the lower 32 bits of a 128-bit vector of [4 x float] to a +/// memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVSS / MOVSS </c> instruction. +/// +/// \param __p +/// A pointer to a 32-bit memory location. +/// \param __a +/// A 128-bit vector of [4 x float] containing the value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_store_ss(float *__p, __m128 __a) +{ + struct __mm_store_ss_struct { + float __u; + } __attribute__((__packed__, __may_alias__)); + ((struct __mm_store_ss_struct*)__p)->__u = __a[0]; +} + +/// Stores a 128-bit vector of [4 x float] to an unaligned memory +/// location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVUPS / MOVUPS </c> instruction. +/// +/// \param __p +/// A pointer to a 128-bit memory location. The address of the memory +/// location does not have to be aligned. +/// \param __a +/// A 128-bit vector of [4 x float] containing the values to be stored. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_storeu_ps(float *__p, __m128 __a) +{ + struct __storeu_ps { + __m128_u __v; + } __attribute__((__packed__, __may_alias__)); + ((struct __storeu_ps*)__p)->__v = __a; +} + +/// Stores a 128-bit vector of [4 x float] into an aligned memory +/// location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS </c> instruction. +/// +/// \param __p +/// A pointer to a 128-bit memory location. The address of the memory +/// location has to be 16-byte aligned. +/// \param __a +/// A 128-bit vector of [4 x float] containing the values to be stored. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_store_ps(float *__p, __m128 __a) +{ + *(__m128*)__p = __a; +} + +/// Stores the lower 32 bits of a 128-bit vector of [4 x float] into +/// four contiguous elements in an aligned memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to <c> VMOVAPS / MOVAPS + shuffling </c> +/// instruction. +/// +/// \param __p +/// A pointer to a 128-bit memory location. +/// \param __a +/// A 128-bit vector of [4 x float] whose lower 32 bits are stored to each +/// of the four contiguous elements pointed by \a __p. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_store1_ps(float *__p, __m128 __a) +{ + __a = __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 0, 0, 0); + _mm_store_ps(__p, __a); +} + +/// Stores the lower 32 bits of a 128-bit vector of [4 x float] into +/// four contiguous elements in an aligned memory location. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to <c> VMOVAPS / MOVAPS + shuffling </c> +/// instruction. +/// +/// \param __p +/// A pointer to a 128-bit memory location. +/// \param __a +/// A 128-bit vector of [4 x float] whose lower 32 bits are stored to each +/// of the four contiguous elements pointed by \a __p. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_store_ps1(float *__p, __m128 __a) +{ + _mm_store1_ps(__p, __a); +} + +/// Stores float values from a 128-bit vector of [4 x float] to an +/// aligned memory location in reverse order. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS + shuffling </c> +/// instruction. +/// +/// \param __p +/// A pointer to a 128-bit memory location. The address of the memory +/// location has to be 128-bit aligned. +/// \param __a +/// A 128-bit vector of [4 x float] containing the values to be stored. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_storer_ps(float *__p, __m128 __a) +{ + __a = __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 3, 2, 1, 0); + _mm_store_ps(__p, __a); +} + +#define _MM_HINT_ET0 7 +#define _MM_HINT_ET1 6 +#define _MM_HINT_T0 3 +#define _MM_HINT_T1 2 +#define _MM_HINT_T2 1 +#define _MM_HINT_NTA 0 + +#ifndef _MSC_VER +/* FIXME: We have to #define this because "sel" must be a constant integer, and + Sema doesn't do any form of constant propagation yet. */ + +/// Loads one cache line of data from the specified address to a location +/// closer to the processor. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// void _mm_prefetch(const void *a, const int sel); +/// \endcode +/// +/// This intrinsic corresponds to the <c> PREFETCHNTA </c> instruction. +/// +/// \param a +/// A pointer to a memory location containing a cache line of data. +/// \param sel +/// A predefined integer constant specifying the type of prefetch +/// operation: \n +/// _MM_HINT_NTA: Move data using the non-temporal access (NTA) hint. The +/// PREFETCHNTA instruction will be generated. \n +/// _MM_HINT_T0: Move data using the T0 hint. The PREFETCHT0 instruction will +/// be generated. \n +/// _MM_HINT_T1: Move data using the T1 hint. The PREFETCHT1 instruction will +/// be generated. \n +/// _MM_HINT_T2: Move data using the T2 hint. The PREFETCHT2 instruction will +/// be generated. +#define _mm_prefetch(a, sel) (__builtin_prefetch((const void *)(a), \ + ((sel) >> 2) & 1, (sel) & 0x3)) +#endif + +/// Stores a 64-bit integer in the specified aligned memory location. To +/// minimize caching, the data is flagged as non-temporal (unlikely to be +/// used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MOVNTQ </c> instruction. +/// +/// \param __p +/// A pointer to an aligned memory location used to store the register value. +/// \param __a +/// A 64-bit integer containing the value to be stored. +static __inline__ void __DEFAULT_FN_ATTRS_MMX +_mm_stream_pi(__m64 *__p, __m64 __a) +{ + __builtin_ia32_movntq(__p, __a); +} + +/// Moves packed float values from a 128-bit vector of [4 x float] to a +/// 128-bit aligned memory location. To minimize caching, the data is flagged +/// as non-temporal (unlikely to be used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVNTPS / MOVNTPS </c> instruction. +/// +/// \param __p +/// A pointer to a 128-bit aligned memory location that will receive the +/// single-precision floating-point values. +/// \param __a +/// A 128-bit vector of [4 x float] containing the values to be moved. +static __inline__ void __DEFAULT_FN_ATTRS +_mm_stream_ps(float *__p, __m128 __a) +{ + __builtin_nontemporal_store((__v4sf)__a, (__v4sf*)__p); +} + +#if defined(__cplusplus) +extern "C" { +#endif + +/// Forces strong memory ordering (serialization) between store +/// instructions preceding this instruction and store instructions following +/// this instruction, ensuring the system completes all previous stores +/// before executing subsequent stores. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> SFENCE </c> instruction. +/// +void _mm_sfence(void); + +#if defined(__cplusplus) +} // extern "C" +#endif + +/// Extracts 16-bit element from a 64-bit vector of [4 x i16] and +/// returns it, as specified by the immediate integer operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// int _mm_extract_pi16(__m64 a, int n); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VPEXTRW / PEXTRW </c> instruction. +/// +/// \param a +/// A 64-bit vector of [4 x i16]. +/// \param n +/// An immediate integer operand that determines which bits are extracted: \n +/// 0: Bits [15:0] are copied to the destination. \n +/// 1: Bits [31:16] are copied to the destination. \n +/// 2: Bits [47:32] are copied to the destination. \n +/// 3: Bits [63:48] are copied to the destination. +/// \returns A 16-bit integer containing the extracted 16 bits of packed data. +#define _mm_extract_pi16(a, n) \ + ((int)__builtin_ia32_vec_ext_v4hi((__v4hi)a, (int)n)) + +/// Copies data from the 64-bit vector of [4 x i16] to the destination, +/// and inserts the lower 16-bits of an integer operand at the 16-bit offset +/// specified by the immediate operand \a n. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m64 _mm_insert_pi16(__m64 a, int d, int n); +/// \endcode +/// +/// This intrinsic corresponds to the <c> PINSRW </c> instruction. +/// +/// \param a +/// A 64-bit vector of [4 x i16]. +/// \param d +/// An integer. The lower 16-bit value from this operand is written to the +/// destination at the offset specified by operand \a n. +/// \param n +/// An immediate integer operant that determines which the bits to be used +/// in the destination. \n +/// 0: Bits [15:0] are copied to the destination. \n +/// 1: Bits [31:16] are copied to the destination. \n +/// 2: Bits [47:32] are copied to the destination. \n +/// 3: Bits [63:48] are copied to the destination. \n +/// The remaining bits in the destination are copied from the corresponding +/// bits in operand \a a. +/// \returns A 64-bit integer vector containing the copied packed data from the +/// operands. +#define _mm_insert_pi16(a, d, n) \ + ((__m64)__builtin_ia32_vec_set_v4hi((__v4hi)a, (int)d, (int)n)) + +/// Compares each of the corresponding packed 16-bit integer values of +/// the 64-bit integer vectors, and writes the greater value to the +/// corresponding bits in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMAXSW </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing one of the source operands. +/// \param __b +/// A 64-bit integer vector containing one of the source operands. +/// \returns A 64-bit integer vector containing the comparison results. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_max_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pmaxsw((__v4hi)__a, (__v4hi)__b); +} + +/// Compares each of the corresponding packed 8-bit unsigned integer +/// values of the 64-bit integer vectors, and writes the greater value to the +/// corresponding bits in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMAXUB </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing one of the source operands. +/// \param __b +/// A 64-bit integer vector containing one of the source operands. +/// \returns A 64-bit integer vector containing the comparison results. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_max_pu8(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pmaxub((__v8qi)__a, (__v8qi)__b); +} + +/// Compares each of the corresponding packed 16-bit integer values of +/// the 64-bit integer vectors, and writes the lesser value to the +/// corresponding bits in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMINSW </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing one of the source operands. +/// \param __b +/// A 64-bit integer vector containing one of the source operands. +/// \returns A 64-bit integer vector containing the comparison results. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_min_pi16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pminsw((__v4hi)__a, (__v4hi)__b); +} + +/// Compares each of the corresponding packed 8-bit unsigned integer +/// values of the 64-bit integer vectors, and writes the lesser value to the +/// corresponding bits in the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMINUB </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing one of the source operands. +/// \param __b +/// A 64-bit integer vector containing one of the source operands. +/// \returns A 64-bit integer vector containing the comparison results. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_min_pu8(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pminub((__v8qi)__a, (__v8qi)__b); +} + +/// Takes the most significant bit from each 8-bit element in a 64-bit +/// integer vector to create an 8-bit mask value. Zero-extends the value to +/// 32-bit integer and writes it to the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMOVMSKB </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing the values with bits to be extracted. +/// \returns The most significant bit from each 8-bit element in \a __a, +/// written to bits [7:0]. +static __inline__ int __DEFAULT_FN_ATTRS_MMX +_mm_movemask_pi8(__m64 __a) +{ + return __builtin_ia32_pmovmskb((__v8qi)__a); +} + +/// Multiplies packed 16-bit unsigned integer values and writes the +/// high-order 16 bits of each 32-bit product to the corresponding bits in +/// the destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PMULHUW </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing one of the source operands. +/// \param __b +/// A 64-bit integer vector containing one of the source operands. +/// \returns A 64-bit integer vector containing the products of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_mulhi_pu16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pmulhuw((__v4hi)__a, (__v4hi)__b); +} + +/// Shuffles the 4 16-bit integers from a 64-bit integer vector to the +/// destination, as specified by the immediate value operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m64 _mm_shuffle_pi16(__m64 a, const int n); +/// \endcode +/// +/// This intrinsic corresponds to the <c> PSHUFW </c> instruction. +/// +/// \param a +/// A 64-bit integer vector containing the values to be shuffled. +/// \param n +/// An immediate value containing an 8-bit value specifying which elements to +/// copy from \a a. The destinations within the 64-bit destination are +/// assigned values as follows: \n +/// Bits [1:0] are used to assign values to bits [15:0] in the +/// destination. \n +/// Bits [3:2] are used to assign values to bits [31:16] in the +/// destination. \n +/// Bits [5:4] are used to assign values to bits [47:32] in the +/// destination. \n +/// Bits [7:6] are used to assign values to bits [63:48] in the +/// destination. \n +/// Bit value assignments: \n +/// 00: assigned from bits [15:0] of \a a. \n +/// 01: assigned from bits [31:16] of \a a. \n +/// 10: assigned from bits [47:32] of \a a. \n +/// 11: assigned from bits [63:48] of \a a. \n +/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. +/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form +/// <c>[b6, b4, b2, b0]</c>. +/// \returns A 64-bit integer vector containing the shuffled values. +#define _mm_shuffle_pi16(a, n) \ + ((__m64)__builtin_ia32_pshufw((__v4hi)(__m64)(a), (n))) + +/// Conditionally copies the values from each 8-bit element in the first +/// 64-bit integer vector operand to the specified memory location, as +/// specified by the most significant bit in the corresponding element in the +/// second 64-bit integer vector operand. +/// +/// To minimize caching, the data is flagged as non-temporal +/// (unlikely to be used again soon). +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> MASKMOVQ </c> instruction. +/// +/// \param __d +/// A 64-bit integer vector containing the values with elements to be copied. +/// \param __n +/// A 64-bit integer vector operand. The most significant bit from each 8-bit +/// element determines whether the corresponding element in operand \a __d +/// is copied. If the most significant bit of a given element is 1, the +/// corresponding element in operand \a __d is copied. +/// \param __p +/// A pointer to a 64-bit memory location that will receive the conditionally +/// copied integer values. The address of the memory location does not have +/// to be aligned. +static __inline__ void __DEFAULT_FN_ATTRS_MMX +_mm_maskmove_si64(__m64 __d, __m64 __n, char *__p) +{ + __builtin_ia32_maskmovq((__v8qi)__d, (__v8qi)__n, __p); +} + +/// Computes the rounded averages of the packed unsigned 8-bit integer +/// values and writes the averages to the corresponding bits in the +/// destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PAVGB </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing one of the source operands. +/// \param __b +/// A 64-bit integer vector containing one of the source operands. +/// \returns A 64-bit integer vector containing the averages of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_avg_pu8(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pavgb((__v8qi)__a, (__v8qi)__b); +} + +/// Computes the rounded averages of the packed unsigned 16-bit integer +/// values and writes the averages to the corresponding bits in the +/// destination. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PAVGW </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing one of the source operands. +/// \param __b +/// A 64-bit integer vector containing one of the source operands. +/// \returns A 64-bit integer vector containing the averages of both operands. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_avg_pu16(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_pavgw((__v4hi)__a, (__v4hi)__b); +} + +/// Subtracts the corresponding 8-bit unsigned integer values of the two +/// 64-bit vector operands and computes the absolute value for each of the +/// difference. Then sum of the 8 absolute differences is written to the +/// bits [15:0] of the destination; the remaining bits [63:16] are cleared. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> PSADBW </c> instruction. +/// +/// \param __a +/// A 64-bit integer vector containing one of the source operands. +/// \param __b +/// A 64-bit integer vector containing one of the source operands. +/// \returns A 64-bit integer vector whose lower 16 bits contain the sums of the +/// sets of absolute differences between both operands. The upper bits are +/// cleared. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_sad_pu8(__m64 __a, __m64 __b) +{ + return (__m64)__builtin_ia32_psadbw((__v8qi)__a, (__v8qi)__b); +} + +#if defined(__cplusplus) +extern "C" { +#endif + +/// Returns the contents of the MXCSR register as a 32-bit unsigned +/// integer value. +/// +/// There are several groups of macros associated with this +/// intrinsic, including: +/// <ul> +/// <li> +/// For checking exception states: _MM_EXCEPT_INVALID, _MM_EXCEPT_DIV_ZERO, +/// _MM_EXCEPT_DENORM, _MM_EXCEPT_OVERFLOW, _MM_EXCEPT_UNDERFLOW, +/// _MM_EXCEPT_INEXACT. There is a convenience wrapper +/// _MM_GET_EXCEPTION_STATE(). +/// </li> +/// <li> +/// For checking exception masks: _MM_MASK_UNDERFLOW, _MM_MASK_OVERFLOW, +/// _MM_MASK_INVALID, _MM_MASK_DENORM, _MM_MASK_DIV_ZERO, _MM_MASK_INEXACT. +/// There is a convenience wrapper _MM_GET_EXCEPTION_MASK(). +/// </li> +/// <li> +/// For checking rounding modes: _MM_ROUND_NEAREST, _MM_ROUND_DOWN, +/// _MM_ROUND_UP, _MM_ROUND_TOWARD_ZERO. There is a convenience wrapper +/// _MM_GET_ROUNDING_MODE(). +/// </li> +/// <li> +/// For checking flush-to-zero mode: _MM_FLUSH_ZERO_ON, _MM_FLUSH_ZERO_OFF. +/// There is a convenience wrapper _MM_GET_FLUSH_ZERO_MODE(). +/// </li> +/// <li> +/// For checking denormals-are-zero mode: _MM_DENORMALS_ZERO_ON, +/// _MM_DENORMALS_ZERO_OFF. There is a convenience wrapper +/// _MM_GET_DENORMALS_ZERO_MODE(). +/// </li> +/// </ul> +/// +/// For example, the following expression checks if an overflow exception has +/// occurred: +/// \code +/// ( _mm_getcsr() & _MM_EXCEPT_OVERFLOW ) +/// \endcode +/// +/// The following expression gets the current rounding mode: +/// \code +/// _MM_GET_ROUNDING_MODE() +/// \endcode +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VSTMXCSR / STMXCSR </c> instruction. +/// +/// \returns A 32-bit unsigned integer containing the contents of the MXCSR +/// register. +unsigned int _mm_getcsr(void); + +/// Sets the MXCSR register with the 32-bit unsigned integer value. +/// +/// There are several groups of macros associated with this intrinsic, +/// including: +/// <ul> +/// <li> +/// For setting exception states: _MM_EXCEPT_INVALID, _MM_EXCEPT_DIV_ZERO, +/// _MM_EXCEPT_DENORM, _MM_EXCEPT_OVERFLOW, _MM_EXCEPT_UNDERFLOW, +/// _MM_EXCEPT_INEXACT. There is a convenience wrapper +/// _MM_SET_EXCEPTION_STATE(x) where x is one of these macros. +/// </li> +/// <li> +/// For setting exception masks: _MM_MASK_UNDERFLOW, _MM_MASK_OVERFLOW, +/// _MM_MASK_INVALID, _MM_MASK_DENORM, _MM_MASK_DIV_ZERO, _MM_MASK_INEXACT. +/// There is a convenience wrapper _MM_SET_EXCEPTION_MASK(x) where x is one +/// of these macros. +/// </li> +/// <li> +/// For setting rounding modes: _MM_ROUND_NEAREST, _MM_ROUND_DOWN, +/// _MM_ROUND_UP, _MM_ROUND_TOWARD_ZERO. There is a convenience wrapper +/// _MM_SET_ROUNDING_MODE(x) where x is one of these macros. +/// </li> +/// <li> +/// For setting flush-to-zero mode: _MM_FLUSH_ZERO_ON, _MM_FLUSH_ZERO_OFF. +/// There is a convenience wrapper _MM_SET_FLUSH_ZERO_MODE(x) where x is +/// one of these macros. +/// </li> +/// <li> +/// For setting denormals-are-zero mode: _MM_DENORMALS_ZERO_ON, +/// _MM_DENORMALS_ZERO_OFF. There is a convenience wrapper +/// _MM_SET_DENORMALS_ZERO_MODE(x) where x is one of these macros. +/// </li> +/// </ul> +/// +/// For example, the following expression causes subsequent floating-point +/// operations to round up: +/// _mm_setcsr(_mm_getcsr() | _MM_ROUND_UP) +/// +/// The following example sets the DAZ and FTZ flags: +/// \code +/// void setFlags() { +/// _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON); +/// _MM_SET_DENORMALS_ZERO_MODE(_MM_DENORMALS_ZERO_ON); +/// } +/// \endcode +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VLDMXCSR / LDMXCSR </c> instruction. +/// +/// \param __i +/// A 32-bit unsigned integer value to be written to the MXCSR register. +void _mm_setcsr(unsigned int __i); + +#if defined(__cplusplus) +} // extern "C" +#endif + +/// Selects 4 float values from the 128-bit operands of [4 x float], as +/// specified by the immediate value operand. +/// +/// \headerfile <x86intrin.h> +/// +/// \code +/// __m128 _mm_shuffle_ps(__m128 a, __m128 b, const int mask); +/// \endcode +/// +/// This intrinsic corresponds to the <c> VSHUFPS / SHUFPS </c> instruction. +/// +/// \param a +/// A 128-bit vector of [4 x float]. +/// \param b +/// A 128-bit vector of [4 x float]. +/// \param mask +/// An immediate value containing an 8-bit value specifying which elements to +/// copy from \a a and \a b. \n +/// Bits [3:0] specify the values copied from operand \a a. \n +/// Bits [7:4] specify the values copied from operand \a b. \n +/// The destinations within the 128-bit destination are assigned values as +/// follows: \n +/// Bits [1:0] are used to assign values to bits [31:0] in the +/// destination. \n +/// Bits [3:2] are used to assign values to bits [63:32] in the +/// destination. \n +/// Bits [5:4] are used to assign values to bits [95:64] in the +/// destination. \n +/// Bits [7:6] are used to assign values to bits [127:96] in the +/// destination. \n +/// Bit value assignments: \n +/// 00: Bits [31:0] copied from the specified operand. \n +/// 01: Bits [63:32] copied from the specified operand. \n +/// 10: Bits [95:64] copied from the specified operand. \n +/// 11: Bits [127:96] copied from the specified operand. \n +/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. +/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form +/// <c>[b6, b4, b2, b0]</c>. +/// \returns A 128-bit vector of [4 x float] containing the shuffled values. +#define _mm_shuffle_ps(a, b, mask) \ + ((__m128)__builtin_ia32_shufps((__v4sf)(__m128)(a), (__v4sf)(__m128)(b), \ + (int)(mask))) + +/// Unpacks the high-order (index 2,3) values from two 128-bit vectors of +/// [4 x float] and interleaves them into a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKHPS / UNPCKHPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. \n +/// Bits [95:64] are written to bits [31:0] of the destination. \n +/// Bits [127:96] are written to bits [95:64] of the destination. +/// \param __b +/// A 128-bit vector of [4 x float]. +/// Bits [95:64] are written to bits [63:32] of the destination. \n +/// Bits [127:96] are written to bits [127:96] of the destination. +/// \returns A 128-bit vector of [4 x float] containing the interleaved values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_unpackhi_ps(__m128 __a, __m128 __b) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)__b, 2, 6, 3, 7); +} + +/// Unpacks the low-order (index 0,1) values from two 128-bit vectors of +/// [4 x float] and interleaves them into a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPS / UNPCKLPS </c> instruction. +/// +/// \param __a +/// A 128-bit vector of [4 x float]. \n +/// Bits [31:0] are written to bits [31:0] of the destination. \n +/// Bits [63:32] are written to bits [95:64] of the destination. +/// \param __b +/// A 128-bit vector of [4 x float]. \n +/// Bits [31:0] are written to bits [63:32] of the destination. \n +/// Bits [63:32] are written to bits [127:96] of the destination. +/// \returns A 128-bit vector of [4 x float] containing the interleaved values. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_unpacklo_ps(__m128 __a, __m128 __b) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)__b, 0, 4, 1, 5); +} + +/// Constructs a 128-bit floating-point vector of [4 x float]. The lower +/// 32 bits are set to the lower 32 bits of the second parameter. The upper +/// 96 bits are set to the upper 96 bits of the first parameter. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VBLENDPS / BLENDPS / MOVSS </c> +/// instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [4 x float]. The upper 96 bits are +/// written to the upper 96 bits of the result. +/// \param __b +/// A 128-bit floating-point vector of [4 x float]. The lower 32 bits are +/// written to the lower 32 bits of the result. +/// \returns A 128-bit floating-point vector of [4 x float]. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_move_ss(__m128 __a, __m128 __b) +{ + __a[0] = __b[0]; + return __a; +} + +/// Constructs a 128-bit floating-point vector of [4 x float]. The lower +/// 64 bits are set to the upper 64 bits of the second parameter. The upper +/// 64 bits are set to the upper 64 bits of the first parameter. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKHPD / UNPCKHPD </c> instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [4 x float]. The upper 64 bits are +/// written to the upper 64 bits of the result. +/// \param __b +/// A 128-bit floating-point vector of [4 x float]. The upper 64 bits are +/// written to the lower 64 bits of the result. +/// \returns A 128-bit floating-point vector of [4 x float]. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_movehl_ps(__m128 __a, __m128 __b) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)__b, 6, 7, 2, 3); +} + +/// Constructs a 128-bit floating-point vector of [4 x float]. The lower +/// 64 bits are set to the lower 64 bits of the first parameter. The upper +/// 64 bits are set to the lower 64 bits of the second parameter. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VUNPCKLPD / UNPCKLPD </c> instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [4 x float]. The lower 64 bits are +/// written to the lower 64 bits of the result. +/// \param __b +/// A 128-bit floating-point vector of [4 x float]. The lower 64 bits are +/// written to the upper 64 bits of the result. +/// \returns A 128-bit floating-point vector of [4 x float]. +static __inline__ __m128 __DEFAULT_FN_ATTRS +_mm_movelh_ps(__m128 __a, __m128 __b) +{ + return __builtin_shufflevector((__v4sf)__a, (__v4sf)__b, 0, 1, 4, 5); +} + +/// Converts a 64-bit vector of [4 x i16] into a 128-bit vector of [4 x +/// float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. +/// +/// \param __a +/// A 64-bit vector of [4 x i16]. The elements of the destination are copied +/// from the corresponding elements in this operand. +/// \returns A 128-bit vector of [4 x float] containing the copied and converted +/// values from the operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX +_mm_cvtpi16_ps(__m64 __a) +{ + __m64 __b, __c; + __m128 __r; + + __b = _mm_setzero_si64(); + __b = _mm_cmpgt_pi16(__b, __a); + __c = _mm_unpackhi_pi16(__a, __b); + __r = _mm_setzero_ps(); + __r = _mm_cvtpi32_ps(__r, __c); + __r = _mm_movelh_ps(__r, __r); + __c = _mm_unpacklo_pi16(__a, __b); + __r = _mm_cvtpi32_ps(__r, __c); + + return __r; +} + +/// Converts a 64-bit vector of 16-bit unsigned integer values into a +/// 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. +/// +/// \param __a +/// A 64-bit vector of 16-bit unsigned integer values. The elements of the +/// destination are copied from the corresponding elements in this operand. +/// \returns A 128-bit vector of [4 x float] containing the copied and converted +/// values from the operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX +_mm_cvtpu16_ps(__m64 __a) +{ + __m64 __b, __c; + __m128 __r; + + __b = _mm_setzero_si64(); + __c = _mm_unpackhi_pi16(__a, __b); + __r = _mm_setzero_ps(); + __r = _mm_cvtpi32_ps(__r, __c); + __r = _mm_movelh_ps(__r, __r); + __c = _mm_unpacklo_pi16(__a, __b); + __r = _mm_cvtpi32_ps(__r, __c); + + return __r; +} + +/// Converts the lower four 8-bit values from a 64-bit vector of [8 x i8] +/// into a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. +/// +/// \param __a +/// A 64-bit vector of [8 x i8]. The elements of the destination are copied +/// from the corresponding lower 4 elements in this operand. +/// \returns A 128-bit vector of [4 x float] containing the copied and converted +/// values from the operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX +_mm_cvtpi8_ps(__m64 __a) +{ + __m64 __b; + + __b = _mm_setzero_si64(); + __b = _mm_cmpgt_pi8(__b, __a); + __b = _mm_unpacklo_pi8(__a, __b); + + return _mm_cvtpi16_ps(__b); +} + +/// Converts the lower four unsigned 8-bit integer values from a 64-bit +/// vector of [8 x u8] into a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. +/// +/// \param __a +/// A 64-bit vector of unsigned 8-bit integer values. The elements of the +/// destination are copied from the corresponding lower 4 elements in this +/// operand. +/// \returns A 128-bit vector of [4 x float] containing the copied and converted +/// values from the source operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX +_mm_cvtpu8_ps(__m64 __a) +{ + __m64 __b; + + __b = _mm_setzero_si64(); + __b = _mm_unpacklo_pi8(__a, __b); + + return _mm_cvtpi16_ps(__b); +} + +/// Converts the two 32-bit signed integer values from each 64-bit vector +/// operand of [2 x i32] into a 128-bit vector of [4 x float]. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. +/// +/// \param __a +/// A 64-bit vector of [2 x i32]. The lower elements of the destination are +/// copied from the elements in this operand. +/// \param __b +/// A 64-bit vector of [2 x i32]. The upper elements of the destination are +/// copied from the elements in this operand. +/// \returns A 128-bit vector of [4 x float] whose lower 64 bits contain the +/// copied and converted values from the first operand. The upper 64 bits +/// contain the copied and converted values from the second operand. +static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX +_mm_cvtpi32x2_ps(__m64 __a, __m64 __b) +{ + __m128 __c; + + __c = _mm_setzero_ps(); + __c = _mm_cvtpi32_ps(__c, __b); + __c = _mm_movelh_ps(__c, __c); + + return _mm_cvtpi32_ps(__c, __a); +} + +/// Converts each single-precision floating-point element of a 128-bit +/// floating-point vector of [4 x float] into a 16-bit signed integer, and +/// packs the results into a 64-bit integer vector of [4 x i16]. +/// +/// If the floating-point element is NaN or infinity, or if the +/// floating-point element is greater than 0x7FFFFFFF or less than -0x8000, +/// it is converted to 0x8000. Otherwise if the floating-point element is +/// greater than 0x7FFF, it is converted to 0x7FFF. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPS2PI + COMPOSITE </c> instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [4 x float]. +/// \returns A 64-bit integer vector of [4 x i16] containing the converted +/// values. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_cvtps_pi16(__m128 __a) +{ + __m64 __b, __c; + + __b = _mm_cvtps_pi32(__a); + __a = _mm_movehl_ps(__a, __a); + __c = _mm_cvtps_pi32(__a); + + return _mm_packs_pi32(__b, __c); +} + +/// Converts each single-precision floating-point element of a 128-bit +/// floating-point vector of [4 x float] into an 8-bit signed integer, and +/// packs the results into the lower 32 bits of a 64-bit integer vector of +/// [8 x i8]. The upper 32 bits of the vector are set to 0. +/// +/// If the floating-point element is NaN or infinity, or if the +/// floating-point element is greater than 0x7FFFFFFF or less than -0x80, it +/// is converted to 0x80. Otherwise if the floating-point element is greater +/// than 0x7F, it is converted to 0x7F. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> CVTPS2PI + COMPOSITE </c> instruction. +/// +/// \param __a +/// 128-bit floating-point vector of [4 x float]. +/// \returns A 64-bit integer vector of [8 x i8]. The lower 32 bits contain the +/// converted values and the uppper 32 bits are set to zero. +static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX +_mm_cvtps_pi8(__m128 __a) +{ + __m64 __b, __c; + + __b = _mm_cvtps_pi16(__a); + __c = _mm_setzero_si64(); + + return _mm_packs_pi16(__b, __c); +} + +/// Extracts the sign bits from each single-precision floating-point +/// element of a 128-bit floating-point vector of [4 x float] and returns the +/// sign bits in bits [0:3] of the result. Bits [31:4] of the result are set +/// to zero. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVMSKPS / MOVMSKPS </c> instruction. +/// +/// \param __a +/// A 128-bit floating-point vector of [4 x float]. +/// \returns A 32-bit integer value. Bits [3:0] contain the sign bits from each +/// single-precision floating-point element of the parameter. Bits [31:4] are +/// set to zero. +static __inline__ int __DEFAULT_FN_ATTRS +_mm_movemask_ps(__m128 __a) +{ + return __builtin_ia32_movmskps((__v4sf)__a); +} + + +#define _MM_ALIGN16 __attribute__((aligned(16))) + +#define _MM_SHUFFLE(z, y, x, w) (((z) << 6) | ((y) << 4) | ((x) << 2) | (w)) + +#define _MM_EXCEPT_INVALID (0x0001U) +#define _MM_EXCEPT_DENORM (0x0002U) +#define _MM_EXCEPT_DIV_ZERO (0x0004U) +#define _MM_EXCEPT_OVERFLOW (0x0008U) +#define _MM_EXCEPT_UNDERFLOW (0x0010U) +#define _MM_EXCEPT_INEXACT (0x0020U) +#define _MM_EXCEPT_MASK (0x003fU) + +#define _MM_MASK_INVALID (0x0080U) +#define _MM_MASK_DENORM (0x0100U) +#define _MM_MASK_DIV_ZERO (0x0200U) +#define _MM_MASK_OVERFLOW (0x0400U) +#define _MM_MASK_UNDERFLOW (0x0800U) +#define _MM_MASK_INEXACT (0x1000U) +#define _MM_MASK_MASK (0x1f80U) + +#define _MM_ROUND_NEAREST (0x0000U) +#define _MM_ROUND_DOWN (0x2000U) +#define _MM_ROUND_UP (0x4000U) +#define _MM_ROUND_TOWARD_ZERO (0x6000U) +#define _MM_ROUND_MASK (0x6000U) + +#define _MM_FLUSH_ZERO_MASK (0x8000U) +#define _MM_FLUSH_ZERO_ON (0x8000U) +#define _MM_FLUSH_ZERO_OFF (0x0000U) + +#define _MM_GET_EXCEPTION_MASK() (_mm_getcsr() & _MM_MASK_MASK) +#define _MM_GET_EXCEPTION_STATE() (_mm_getcsr() & _MM_EXCEPT_MASK) +#define _MM_GET_FLUSH_ZERO_MODE() (_mm_getcsr() & _MM_FLUSH_ZERO_MASK) +#define _MM_GET_ROUNDING_MODE() (_mm_getcsr() & _MM_ROUND_MASK) + +#define _MM_SET_EXCEPTION_MASK(x) (_mm_setcsr((_mm_getcsr() & ~_MM_MASK_MASK) | (x))) +#define _MM_SET_EXCEPTION_STATE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_EXCEPT_MASK) | (x))) +#define _MM_SET_FLUSH_ZERO_MODE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_FLUSH_ZERO_MASK) | (x))) +#define _MM_SET_ROUNDING_MODE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_ROUND_MASK) | (x))) + +#define _MM_TRANSPOSE4_PS(row0, row1, row2, row3) \ +do { \ + __m128 tmp3, tmp2, tmp1, tmp0; \ + tmp0 = _mm_unpacklo_ps((row0), (row1)); \ + tmp2 = _mm_unpacklo_ps((row2), (row3)); \ + tmp1 = _mm_unpackhi_ps((row0), (row1)); \ + tmp3 = _mm_unpackhi_ps((row2), (row3)); \ + (row0) = _mm_movelh_ps(tmp0, tmp2); \ + (row1) = _mm_movehl_ps(tmp2, tmp0); \ + (row2) = _mm_movelh_ps(tmp1, tmp3); \ + (row3) = _mm_movehl_ps(tmp3, tmp1); \ +} while (0) + +/* Aliases for compatibility. */ +#define _m_pextrw _mm_extract_pi16 +#define _m_pinsrw _mm_insert_pi16 +#define _m_pmaxsw _mm_max_pi16 +#define _m_pmaxub _mm_max_pu8 +#define _m_pminsw _mm_min_pi16 +#define _m_pminub _mm_min_pu8 +#define _m_pmovmskb _mm_movemask_pi8 +#define _m_pmulhuw _mm_mulhi_pu16 +#define _m_pshufw _mm_shuffle_pi16 +#define _m_maskmovq _mm_maskmove_si64 +#define _m_pavgb _mm_avg_pu8 +#define _m_pavgw _mm_avg_pu16 +#define _m_psadbw _mm_sad_pu8 +#define _m_ _mm_ + +#undef __DEFAULT_FN_ATTRS +#undef __DEFAULT_FN_ATTRS_MMX + +/* Ugly hack for backwards-compatibility (compatible with gcc) */ +#if defined(__SSE2__) && !__building_module(_Builtin_intrinsics) +#include <emmintrin.h> +#endif + +#endif /* __XMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1e7de545e5aa70128a65bb24595af91b52bcfe81 GIT binary patch literal 134054 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 Rc^E_TFz+w~Di(p}{{ZgUi75a8 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h new file mode 100644 index 00000000..5524947f --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h @@ -0,0 +1,34 @@ +/*===---- xsavecintrin.h - XSAVEC intrinsic --------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <xsavecintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __XSAVECINTRIN_H +#define __XSAVECINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("xsavec"))) + +static __inline__ void __DEFAULT_FN_ATTRS +_xsavec(void *__p, unsigned long long __m) { + __builtin_ia32_xsavec(__p, __m); +} + +#ifdef __x86_64__ +static __inline__ void __DEFAULT_FN_ATTRS +_xsavec64(void *__p, unsigned long long __m) { + __builtin_ia32_xsavec64(__p, __m); +} +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4fd6e3cc6bcb6f98fe3510b0390cdbd1e8f94bc6 GIT binary patch literal 12847 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 KB!A`3t^WfKDyE76 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h new file mode 100644 index 00000000..9429db6d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h @@ -0,0 +1,63 @@ +/*===---- xsaveintrin.h - XSAVE intrinsic ----------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <xsaveintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __XSAVEINTRIN_H +#define __XSAVEINTRIN_H + +#ifdef _MSC_VER +#define _XCR_XFEATURE_ENABLED_MASK 0 +#endif + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("xsave"))) + +static __inline__ void __DEFAULT_FN_ATTRS +_xsave(void *__p, unsigned long long __m) { + __builtin_ia32_xsave(__p, __m); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_xrstor(void *__p, unsigned long long __m) { + __builtin_ia32_xrstor(__p, __m); +} + +#ifndef _MSC_VER +#define _xgetbv(A) __builtin_ia32_xgetbv((long long)(A)) +#define _xsetbv(A, B) __builtin_ia32_xsetbv((unsigned int)(A), (unsigned long long)(B)) +#else +#ifdef __cplusplus +extern "C" { +#endif +unsigned __int64 __cdecl _xgetbv(unsigned int); +void __cdecl _xsetbv(unsigned int, unsigned __int64); +#ifdef __cplusplus +} +#endif +#endif /* _MSC_VER */ + +#ifdef __x86_64__ +static __inline__ void __DEFAULT_FN_ATTRS +_xsave64(void *__p, unsigned long long __m) { + __builtin_ia32_xsave64(__p, __m); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_xrstor64(void *__p, unsigned long long __m) { + __builtin_ia32_xrstor64(__p, __m); +} + +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ad73782d8276bf30c0b0eed49fb23901f3b7ebf4 GIT binary patch literal 13554 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h new file mode 100644 index 00000000..89a4c44d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h @@ -0,0 +1,34 @@ +/*===---- xsaveoptintrin.h - XSAVEOPT intrinsic ----------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <xsaveoptintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __XSAVEOPTINTRIN_H +#define __XSAVEOPTINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("xsaveopt"))) + +static __inline__ void __DEFAULT_FN_ATTRS +_xsaveopt(void *__p, unsigned long long __m) { + __builtin_ia32_xsaveopt(__p, __m); +} + +#ifdef __x86_64__ +static __inline__ void __DEFAULT_FN_ATTRS +_xsaveopt64(void *__p, unsigned long long __m) { + __builtin_ia32_xsaveopt64(__p, __m); +} +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..dfbf98b16fc307b80c6c2d5c9bc6cf256db22641 GIT binary patch literal 12855 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 TY&O64AA0y9*j@aTyZ8PNG?}4Y literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h new file mode 100644 index 00000000..3f99219a --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h @@ -0,0 +1,44 @@ +/*===---- xsavesintrin.h - XSAVES intrinsic --------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <xsavesintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __XSAVESINTRIN_H +#define __XSAVESINTRIN_H + +/* Define the default attributes for the functions in this file. */ +#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("xsaves"))) + +static __inline__ void __DEFAULT_FN_ATTRS +_xsaves(void *__p, unsigned long long __m) { + __builtin_ia32_xsaves(__p, __m); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_xrstors(void *__p, unsigned long long __m) { + __builtin_ia32_xrstors(__p, __m); +} + +#ifdef __x86_64__ +static __inline__ void __DEFAULT_FN_ATTRS +_xrstors64(void *__p, unsigned long long __m) { + __builtin_ia32_xrstors64(__p, __m); +} + +static __inline__ void __DEFAULT_FN_ATTRS +_xsaves64(void *__p, unsigned long long __m) { + __builtin_ia32_xsaves64(__p, __m); +} +#endif + +#undef __DEFAULT_FN_ATTRS + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e859df10939b2660fe6ba3d21c571cbfed85b940 GIT binary patch literal 13331 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 Y-Oqx!OCxb7ztwin?LIyuegzlj|AdJ;lmGw# literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h new file mode 100644 index 00000000..7d19e373 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h @@ -0,0 +1,27 @@ +/*===---- xtestintrin.h - XTEST intrinsic ----------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __IMMINTRIN_H +#error "Never use <xtestintrin.h> directly; include <immintrin.h> instead." +#endif + +#ifndef __XTESTINTRIN_H +#define __XTESTINTRIN_H + +/* xtest returns non-zero if the instruction is executed within an RTM or active + * HLE region. */ +/* FIXME: This can be an either or for RTM/HLE. Deal with this when HLE is + * supported. */ +static __inline__ int + __attribute__((__always_inline__, __nodebug__, __target__("rtm"))) + _xtest(void) { + return __builtin_ia32_xtest(); +} + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..055bcdd89a2cbbd3ecbfb12637afcab108c42115 GIT binary patch literal 12432 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h b/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h new file mode 100644 index 00000000..9d5c3d28 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h @@ -0,0 +1,21 @@ +#ifndef META_H_ +#define META_H_ + +#include <stdint.h> // for uint64_t +#include "editor.h" + +typedef struct { + const char *name; + void (*execute)(Editor *, const char *params[]); // Updated to take an array of strings as additional parameters + int additional_params_count; // Number of additional parameters needed +} Command; + + +/* void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *)); */ +void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *, const char *params[]), int additional_params_count); +void initialize_commands(struct hashmap *command_map); +void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name); +int command_compare(const void *a, const void *b, void *udata); +uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1); + +#endif // META_H__ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..286e23094209e63a08bef3191c7e30df3ffea4e1 GIT binary patch literal 14743 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 Z1$m>>oh688$!8`ulVuZ=6PsC({SVz6Ch`CP literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h b/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h new file mode 100644 index 00000000..9cea9e8f --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h @@ -0,0 +1,16 @@ +#ifndef BUFFER_H +#define BUFFER_H + +#include "editor.h" + +// BUFFER +void editor_add_to_buffer_history(Editor *e, const char *file_path); +void editor_remove_from_buffer_history(Editor *e); +Errno editor_open_buffer(Editor *e, const char *file_path); +Errno editor_open_buffer(Editor *e, const char *file_path); +void editor_kill_buffer(Editor *e); +void editor_previous_buffer(Editor *e); +void editor_next_buffer(Editor *e); + + +#endif // BUFFER_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..628f3f4c1ee44ca01f600b8466cf9e4f2be052a6 GIT binary patch literal 13584 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 ITmhQ@1F8+80RR91 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h b/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h new file mode 100644 index 00000000..15151d43 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h @@ -0,0 +1,16 @@ +#ifndef CLOCK_H +#define CLOCK_H + +#include "common.h" +#include "simple_renderer.h" + +extern Vec2f clockPosition; +extern float clockScale; +extern Vec4f clockColor; + +void render_clock(Simple_Renderer *sr, int hours, int minutes); +void render_digit(Simple_Renderer *sr, int digit, Vec2f position, float squareSize, Vec4f color); +void render_colon(Simple_Renderer *sr, Vec2f position, float squareSize, Vec4f color); +void init_clock(); + +#endif // CLOCK_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ca47492651959ddd36628c1a3ff267ca00162cb6 GIT binary patch literal 14097 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 E13c+g3IG5A literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@common.h b/.ccls-cache/@home@l@Desktop@test@ded/src@common.h new file mode 100644 index 00000000..65d742e2 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@common.h @@ -0,0 +1,118 @@ +#ifndef COMMON_H_ +#define COMMON_H_ + +#include <stdlib.h> +#include <stdio.h> +#include <stdint.h> +#include <stdbool.h> +#include "./la.h" + +#define SCREEN_WIDTH 800 +#define SCREEN_HEIGHT 600 +#define FPS 144 +#define DELTA_TIME (1.0f / FPS) +#define CURSOR_OFFSET 0.13f + +typedef int Errno; + +#define SWAP(T, a, b) do { T t = a; a = b; b = t; } while (0) + +#define return_defer(value) do { result = (value); goto defer; } while (0) + +#define UNIMPLEMENTED(...) \ + do { \ + printf("%s:%d: UNIMPLEMENTED: %s \n", __FILE__, __LINE__, __VA_ARGS__); \ + exit(1); \ + } while(0) +#define UNREACHABLE(...) \ + do { \ + printf("%s:%d: UNREACHABLE: %s \n", __FILE__, __LINE__, __VA_ARGS__); \ + exit(1); \ + } while(0) +#define UNUSED(x) (void)(x) + +#define DA_INIT_CAP 256 + +#define da_last(da) (assert((da)->count > 0), (da)->items[(da)->count - 1]) + +#define da_move(dst, src) \ + do { \ + free((dst)->items); \ + (dst)->items = (src).items; \ + (dst)->count = (src).count; \ + (dst)->capacity = (src).capacity; \ + } while (0) + +#define da_append(da, item) \ + do { \ + if ((da)->count >= (da)->capacity) { \ + (da)->capacity = (da)->capacity == 0 ? DA_INIT_CAP : (da)->capacity*2; \ + (da)->items = realloc((da)->items, (da)->capacity*sizeof(*(da)->items)); \ + assert((da)->items != NULL && "Buy more RAM lol"); \ + } \ + \ + (da)->items[(da)->count++] = (item); \ + } while (0) + +#define da_append_many(da, new_items, new_items_count) \ + do { \ + if ((da)->count + new_items_count > (da)->capacity) { \ + if ((da)->capacity == 0) { \ + (da)->capacity = DA_INIT_CAP; \ + } \ + while ((da)->count + new_items_count > (da)->capacity) { \ + (da)->capacity *= 2; \ + } \ + (da)->items = realloc((da)->items, (da)->capacity*sizeof(*(da)->items)); \ + assert((da)->items != NULL && "Buy more RAM lol"); \ + } \ + memcpy((da)->items + (da)->count, new_items, new_items_count*sizeof(*(da)->items)); \ + (da)->count += new_items_count; \ + } while (0) + +char *temp_strdup(const char *s); +void temp_reset(void); + +typedef struct { + char *items; + size_t count; + size_t capacity; +} String_Builder; + +#define SB_Fmt "%.*s" +#define SB_Arg(sb) (int) (sb).count, (sb).items + +#define sb_append_buf da_append_many +#define sb_append_cstr(sb, cstr) \ + do { \ + const char *s = (cstr); \ + size_t n = strlen(s); \ + da_append_many(sb, s, n); \ + } while (0) +#define sb_append_null(sb) da_append_many(sb, "", 1) + +#define sb_to_sv(sb) sv_from_parts((sb).items, (sb).count) + +typedef struct { + const char **items; + size_t count; + size_t capacity; +} Files; + +typedef enum { + FT_REGULAR, + FT_DIRECTORY, + FT_OTHER, +} File_Type; + +Errno type_of_file(const char *file_path, File_Type *ft); +Errno read_entire_file(const char *file_path, String_Builder *sb); +Errno write_entire_file(const char *file_path, const char *buf, size_t buf_size); +Errno read_entire_dir(const char *dir_path, Files *files); + + +bool is_hex_digit(char c); +Vec4f hex_to_vec4f(uint32_t color); + + +#endif // COMMON_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@common.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@common.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..131df066454485ee8b527346da834978459fe5e1 GIT binary patch literal 17569 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 OPc|em{m_v6^#2dnbNiD3 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c new file mode 100644 index 00000000..d3afbe20 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c @@ -0,0 +1,1986 @@ +#include <assert.h> +#include <stdbool.h> +#include <stddef.h> +#include <stdio.h> +#include <errno.h> +#include <string.h> +#include <limits.h> +#include "./editor.h" +#include "./common.h" +#include "./free_glyph.h" +#include "./file_browser.h" +#include "emacs.h" +#include "lexer.h" +#include "simple_renderer.h" +#include <ctype.h> // For isalnum +#include "evil.h" +#include "theme.h" + + +bool quit = false; +float zoom_factor = 3.0f; +float min_zoom_factor = 1.0; +float max_zoom_factor = 50.0; + +bool followCursor = true; +bool isWave = false; +size_t indentation = 4; + +bool showLineNumbers = false; +bool highlightCurrentLineNumber = true; +bool relativeLineNumbers = false; + +bool showWhitespaces = false; +bool copiedLine = false; +bool matchParenthesis = true; + +bool hl_line = false; +bool superDrammtic = false; +bool instantCamera = false; +bool showIndentationLines = true; + +bool showMinibuffer = true; +bool showModeline = true; +float minibufferHeight = 21.0f; +float modelineHeight = 35.0f; +float modelineAccentWidth = 5.0f; +bool ivy = false; +bool M_x_active = false; +bool evil_command_active = false; + +bool BlockInsertCurosr = true; +bool highlightCurrentLineNumberOnInsertMode = true; // the loong way + +bool helix = false; +bool emacs = false; +bool automatic_zoom = true; + +float fringeWidth = 6.0f; +bool showFringe = true; + + +void set_current_mode() { + if (emacs) { + current_mode = EMACS; + } else if (helix) { + current_mode = HELIX; + } else { + current_mode = NORMAL; + } +} + +EvilMode current_mode = NORMAL; + +bool extract_word_under_cursor(Editor *editor, char *word) { + // Make a copy of cursor position to avoid modifying the actual cursor + size_t cursor = editor->cursor; + + // Move left to find the start of the word. + while (cursor > 0 && isalnum(editor->data.items[cursor - 1])) { + cursor--; + } + + // Check if the cursor is on a word or on whitespace/special character. + if (!isalnum(editor->data.items[cursor])) return false; + + int start = cursor; + + // Move right to find the end of the word. + while (cursor < editor->data.count && isalnum(editor->data.items[cursor])) { + cursor++; + } + + int end = cursor; + + // Copy the word to the provided buffer. + // Make sure not to overflow the buffer and null-terminate the string. + int length = end - start; + strncpy(word, &editor->data.items[start], length); + word[length] = '\0'; + + return true; +} + + +void move_camera(Simple_Renderer *sr, const char* direction, float amount) { + if(strcmp(direction, "up") == 0) { + sr->camera_pos.y -= amount; + } else if(strcmp(direction, "down") == 0) { + sr->camera_pos.y += amount; + } else if(strcmp(direction, "left") == 0) { + sr->camera_pos.x -= amount; + } else if(strcmp(direction, "right") == 0) { + sr->camera_pos.x += amount; + } else { + printf("Invalid direction '%s'\n", direction); + } +} + + +// TODO if we are on a multiple of indentation delete the correct number of indentations +void editor_backspace(Editor *e) { + // If in search mode, reduce the search query length + if (e->searching) { + if (e->search.count > 0) { + e->search.count -= 1; + } + } else if (e->minibuffer_active) { + if (e->minibuffer_text.count > 0) { + e->minibuffer_text.count -= 1; + } + } else { + // Check if the cursor is at the beginning or at the beginning of a line + if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete + + size_t cursor_pos = e->cursor; + size_t row = editor_cursor_row(e); + + if (cursor_pos > e->data.count) { + cursor_pos = e->data.count; + } + + // Determine the characters before and after the cursor + char char_before_cursor = (cursor_pos > 0) ? e->data.items[cursor_pos - 1] : '\0'; + char char_after_cursor = (cursor_pos < e->data.count) ? e->data.items[cursor_pos] : '\0'; + + // Smart parentheses: delete both characters if they match + if ((char_before_cursor == '(' && char_after_cursor == ')') || + (char_before_cursor == '[' && char_after_cursor == ']') || + (char_before_cursor == '{' && char_after_cursor == '}') || + (char_before_cursor == '\'' && char_after_cursor == '\'') || + (char_before_cursor == '"' && char_after_cursor == '"')) { + memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos + 1], e->data.count - cursor_pos); + e->cursor -= 1; + e->data.count -= 2; + } else if (editor_is_line_empty(e, row)) { + if (row > 0) { + // If it's not the first line, delete the newline character from the previous line + size_t newline_pos = e->lines.items[row - 1].end; // Position of newline character + memmove(&e->data.items[newline_pos], &e->data.items[newline_pos + 1], e->data.count - newline_pos - 1); + e->cursor = newline_pos; // Move cursor to the end of the previous line + e->data.count -= 1; + } else if (e->lines.count > 1) { + // If it's the first line but there are more lines, delete the newline character at the end of this line + size_t newline_pos = e->lines.items[row].end; // Position of newline character + memmove(&e->data.items[newline_pos], &e->data.items[newline_pos + 1], e->data.count - newline_pos - 1); + e->data.count -= 1; + // Cursor stays at the beginning of the next line (which is now the first line) + } + } else if (editor_is_line_whitespaced(e, row)) { + /* // If the line is only whitespaces */ + /* size_t line_begin = e->lines.items[row].begin; */ + /* size_t delete_length = (cursor_pos - line_begin >= indentation) ? indentation : cursor_pos - line_begin; */ + + /* memmove(&e->data.items[cursor_pos - delete_length], &e->data.items[cursor_pos], e->data.count - cursor_pos); */ + /* e->cursor -= delete_length; */ + /* e->data.count -= delete_length; */ + + // If the line is only whitespaces + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + size_t whitespace_length = cursor_pos - line_begin; + + if (whitespace_length == indentation) { + // If the number of whitespaces matches indentation exactly, remove the entire line + if (row < e->lines.count - 1) { + memmove(&e->data.items[line_begin], &e->data.items[line_end + 1], e->data.count - line_end - 1); + e->data.count -= (line_end - line_begin + 1); + e->cursor = line_begin; // Update cursor position to the beginning of the next line + } else if (row > 0 && e->data.items[line_begin - 1] == '\n') { + // If it's the last line, remove the preceding newline character + e->data.count -= 1; + memmove(&e->data.items[line_begin - 1], &e->data.items[line_end], e->data.count - line_end); + e->cursor = (line_begin > 1) ? line_begin - 1 : 0; // Move cursor to the end of the previous line, plus one character + } + // Update the cursor position if it's not the first line + if (row > 0) { + e->cursor = e->lines.items[row - 1].end; // Move cursor to one character right of the end of the previous line + if (e->cursor > e->data.count) e->cursor = e->data.count; // Bound check + } + } else { + // Original behavior for deleting whitespaces + size_t delete_length = (whitespace_length >= indentation) ? indentation : whitespace_length; + memmove(&e->data.items[cursor_pos - delete_length], &e->data.items[cursor_pos], e->data.count - cursor_pos); + e->cursor -= delete_length; + e->data.count -= delete_length; + } + } else { + // Delete only the character before the cursor + memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos], e->data.count - cursor_pos); + e->cursor -= 1; + e->data.count -= 1; + } + editor_retokenize(e); + } +} + + +// Unused ? +void editor_delete(Editor *e) +{ + if (e->searching) return; + + if (e->cursor >= e->data.count) return; + memmove( + &e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + e->data.count - e->cursor - 1 + ); + e->data.count -= 1; + editor_retokenize(e); +} + +void editor_delete_selection(Editor *e) +{ + assert(e->selection); + + size_t begin = e->select_begin; + size_t end = e->cursor; + if (begin > end) { + SWAP(size_t, begin, end); + } + + if (end >= e->data.count) { + end = e->data.count - 1; + } + if (begin == e->data.count) return; + + size_t nchars = end - begin + 1; // Correct calculation to include the end character + + memmove( + &e->data.items[begin], + &e->data.items[end + 1], + e->data.count - end - 1 + ); + + e->data.count -= nchars; + e->cursor = begin; // Set cursor to the beginning of the deleted range + + editor_retokenize(e); +} + + +// TODO: make sure that you always have new line at the end of the file while saving +// https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 + +Errno editor_save_as(Editor *e, const char *file_path) +{ + printf("Saving as %s...\n", file_path); + Errno err = write_entire_file(file_path, e->data.items, e->data.count); + if (err != 0) return err; + e->file_path.count = 0; + sb_append_cstr(&e->file_path, file_path); + sb_append_null(&e->file_path); + return 0; +} + +Errno editor_save(const Editor *e) +{ + assert(e->file_path.count > 0); + printf("Saving as %s...\n", e->file_path.items); + return write_entire_file(e->file_path.items, e->data.items, e->data.count); +} + +/* Errno editor_load_from_file(Editor *e, const char *file_path) */ +/* { */ +/* printf("Loading %s\n", file_path); */ + +/* e->data.count = 0; */ +/* Errno err = read_entire_file(file_path, &e->data); */ +/* if (err != 0) return err; */ + +/* e->cursor = 0; */ + +/* editor_retokenize(e); */ + +/* e->file_path.count = 0; */ +/* sb_append_cstr(&e->file_path, file_path); */ +/* sb_append_null(&e->file_path); */ + +/* // Add file path to buffer history */ +/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ +/* e->buffer_history[e->buffer_history_count++] = strdup(file_path); */ +/* } */ + +/* return 0; */ +/* } */ + + +size_t get_position_from_line_column(Editor *e, size_t line, size_t column) { + size_t pos = 0; + size_t current_line = 0; + + while (pos < e->data.count && current_line < line) { + if (e->data.items[pos] == '\n') { + current_line++; + } + pos++; + } + + // Adjust column position + size_t line_start = pos; + size_t current_column = 0; + while (pos < e->data.count && current_column < column) { + if (e->data.items[pos] == '\n') { + break; // Prevent going to next line + } + current_column++; + pos++; + } + + return line_start + current_column; +} + + + +/* Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { */ +/* printf("Loading %s\n", file_path); */ + +/* e->data.count = 0; */ +/* Errno err = read_entire_file(file_path, &e->data); */ +/* if (err != 0) return err; */ + +/* // Move cursor to the specified line and column */ +/* e->cursor = get_position_from_line_column(e, line, column); */ + +/* editor_retokenize(e); */ + +/* e->file_path.count = 0; */ +/* sb_append_cstr(&e->file_path, file_path); */ +/* sb_append_null(&e->file_path); */ + +/* // Add file path to buffer history */ +/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ +/* e->buffer_history[e->buffer_history_count++] = strdup(file_path); */ +/* } */ + +/* return 0; */ +/* } */ + +/* Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { */ +/* char expanded_file_path[PATH_MAX]; */ +/* expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); */ +/* printf("Loading %s\n", expanded_file_path); */ + +/* e->data.count = 0; */ +/* Errno err = read_entire_file(expanded_file_path, &e->data); */ +/* if (err != 0) return err; */ + +/* // Move cursor to the specified line and column */ +/* e->cursor = get_position_from_line_column(e, line, column); */ + +/* editor_retokenize(e); */ + +/* e->file_path.count = 0; */ +/* sb_append_cstr(&e->file_path, expanded_file_path); */ +/* sb_append_null(&e->file_path); */ + +/* // Add file path to buffer history */ +/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ +/* e->buffer_history[e->buffer_history_count++] = strdup(expanded_file_path); */ +/* } */ +/* return 0; */ +/* } */ + + + +Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { + char expanded_file_path[PATH_MAX]; + expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); + + printf("[find_file] Requested File: %s\n", file_path); + printf("[find_file] Expanded File Path: %s\n", expanded_file_path); + printf("[find_file] Line: %zu, Column: %zu\n", line, column); + + e->data.count = 0; + Errno err = read_entire_file(expanded_file_path, &e->data); + if (err != 0) { + printf("[find_file] Error reading file: %d\n", err); + return err; + } + + e->cursor = get_position_from_line_column(e, line, column); + editor_retokenize(e); + + e->file_path.count = 0; + sb_append_cstr(&e->file_path, expanded_file_path); + sb_append_null(&e->file_path); + + if (e->buffer_history_count < MAX_BUFFER_HISTORY) { + e->buffer_history[e->buffer_history_count++] = strdup(expanded_file_path); + } + + printf("[find_file] File loaded and cursor set.\n"); + return 0; +} + + + + +size_t editor_cursor_row(const Editor *e) +{ + assert(e->lines.count > 0); + for (size_t row = 0; row < e->lines.count; ++row) { + Line line = e->lines.items[row]; + if (line.begin <= e->cursor && e->cursor <= line.end) { + return row; + } + } + return e->lines.count - 1; +} + +void editor_move_line_up(Editor *e) +{ + editor_stop_search(e); + + size_t cursor_row = editor_cursor_row(e); + size_t cursor_col = e->cursor - e->lines.items[cursor_row].begin; + if (cursor_row > 0) { + Line next_line = e->lines.items[cursor_row - 1]; + size_t next_line_size = next_line.end - next_line.begin; + if (cursor_col > next_line_size) cursor_col = next_line_size; + e->cursor = next_line.begin + cursor_col; + } +} + +void editor_move_line_down(Editor *e) +{ + editor_stop_search(e); + + size_t cursor_row = editor_cursor_row(e); + size_t cursor_col = e->cursor - e->lines.items[cursor_row].begin; + if (cursor_row < e->lines.count - 1) { + Line next_line = e->lines.items[cursor_row + 1]; + size_t next_line_size = next_line.end - next_line.begin; + if (cursor_col > next_line_size) cursor_col = next_line_size; + e->cursor = next_line.begin + cursor_col; + } +} + +void editor_move_char_left(Editor *e) +{ + editor_stop_search(e); + if (e->cursor > 0) e->cursor -= 1; +} + +void editor_move_char_right(Editor *e) +{ + editor_stop_search(e); + if (e->cursor < e->data.count) e->cursor += 1; +} + +void editor_move_word_left(Editor *e) +{ + editor_stop_search(e); + while (e->cursor > 0 && !isalnum(e->data.items[e->cursor - 1])) { + e->cursor -= 1; + } + while (e->cursor > 0 && isalnum(e->data.items[e->cursor - 1])) { + e->cursor -= 1; + } +} + +void editor_move_word_right(Editor *e) +{ + editor_stop_search(e); + while (e->cursor < e->data.count && !isalnum(e->data.items[e->cursor])) { + e->cursor += 1; + } + while (e->cursor < e->data.count && isalnum(e->data.items[e->cursor])) { + e->cursor += 1; + } +} + +void editor_insert_char(Editor *e, char x) +{ + editor_insert_buf(e, &x, 1); +} + +void editor_insert_char_at(Editor *e, char c, size_t pos) { + editor_insert_buf_at(e, &c, 1, pos); +} + + + +void editor_insert_buf(Editor *e, char *buf, size_t buf_len) +{ + if (e->searching) { + sb_append_buf(&e->search, buf, buf_len); + bool matched = false; + for (size_t pos = e->cursor; pos < e->data.count; ++pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + matched = true; + break; + } + } + if (!matched) e->search.count -= buf_len; + } else if (e->minibuffer_active) { + sb_append_buf(&e->minibuffer_text, buf, buf_len); + /* printf("Minibuffer: "SB_Fmt"\n", SB_Arg(e->minibuffer_text)); */ + } else { + if (e->cursor > e->data.count) { + e->cursor = e->data.count; + } + + for (size_t i = 0; i < buf_len; ++i) { + da_append(&e->data, '\0'); + } + memmove( + &e->data.items[e->cursor + buf_len], + &e->data.items[e->cursor], + e->data.count - e->cursor - buf_len + ); + memcpy(&e->data.items[e->cursor], buf, buf_len); + e->cursor += buf_len; + editor_retokenize(e); + /* printf("%.*s", (int)buf_len, buf); */ + } +} + + +void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos) { + // Ensure the position is within bounds + if (pos > e->data.count) { + pos = e->data.count; + } + + // Expand the buffer to accommodate the new text + for (size_t i = 0; i < buf_len; ++i) { + da_append(&e->data, '\0'); + } + + // Shift existing text to make room for the new text + memmove(&e->data.items[pos + buf_len], &e->data.items[pos], e->data.count - pos); + + // Copy the new text into the buffer at the specified position + memcpy(&e->data.items[pos], buf, buf_len); + + // Update the cursor position and retokenize + e->cursor = pos + buf_len; + editor_retokenize(e); +} + +void editor_retokenize(Editor *e) +{ + // Lines + { + e->lines.count = 0; + + Line line; + line.begin = 0; + + for (size_t i = 0; i < e->data.count; ++i) { + if (e->data.items[i] == '\n') { + line.end = i; + da_append(&e->lines, line); + line.begin = i + 1; + } + } + + line.end = e->data.count; + da_append(&e->lines, line); + } + + // Syntax Highlighting + { + e->tokens.count = 0; + Lexer l = lexer_new(e->atlas, e->data.items, e->data.count); + /* Lexer l = lexer_new(e->atlas, e->data.items, e->data.count, e->file_path); */ + Token t = lexer_next(&l); + while (t.kind != TOKEN_END) { + da_append(&e->tokens, t); + t = lexer_next(&l); + } + } +} + +bool editor_line_starts_with(Editor *e, size_t row, size_t col, const char *prefix) +{ + size_t prefix_len = strlen(prefix); + if (prefix_len == 0) { + return true; + } + Line line = e->lines.items[row]; + if (col + prefix_len - 1 >= line.end) { + return false; + } + for (size_t i = 0; i < prefix_len; ++i) { + if (prefix[i] != e->data.items[line.begin + col + i]) { + return false; + } + } + return true; +} + +const char *editor_line_starts_with_one_of(Editor *e, size_t row, size_t col, const char **prefixes, size_t prefixes_count) +{ + for (size_t i = 0; i < prefixes_count; ++i) { + if (editor_line_starts_with(e, row, col, prefixes[i])) { + return prefixes[i]; + } + } + return NULL; +} + +void editor_clipboard_copy(Editor *e) +{ + if (e->searching) return; + if (e->selection) { + size_t begin = e->select_begin; + size_t end = e->cursor; + if (begin > end) SWAP(size_t, begin, end); + + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[begin], end - begin + 1); + sb_append_null(&e->clipboard); + + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + } + copiedLine = false; +} + +void editor_clipboard_paste(Editor *e) +{ + char *text = SDL_GetClipboardText(); + size_t text_len = strlen(text); + if (text_len > 0) { + editor_insert_buf(e, text, text_len); + } else { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + SDL_free(text); +} + +void editor_update_selection(Editor *e, bool shift) { + if (e->searching) return; + + if (current_mode == VISUAL) { + if (!e->selection) { + evil_visual_char(e); + } + } else if (shift) { + if (!e->selection) { + e->selection = true; + e->select_begin = e->cursor; + } + } else { + e->selection = false; + } +} + +// search +void editor_start_search(Editor *e) +{ + if (e->searching) { + for (size_t pos = e->cursor + 1; pos < e->data.count; ++pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + break; + } + } + } else { + e->searching = true; + if (e->selection) { + e->selection = false; + // TODO: put the selection into the search automatically + } else { + e->search.count = 0; + } + } +} + +void editor_stop_search(Editor *e) +{ + e->searching = false; +} + +void editor_stop_search_and_mark(Editor *e) { + e->searching = false; + + e->has_mark = true; // Mark the search result. + e->mark_start = e->cursor; + e->mark_end = e->cursor + e->search.count; +} + +void editor_clear_mark(Editor *editor) { + editor->has_mark = false; + editor->mark_start = 0; // or some other appropriate default value + editor->mark_end = 0; // or some other appropriate default value +} + +bool editor_search_matches_at(Editor *e, size_t pos) +{ + if (e->data.count - pos < e->search.count) return false; + for (size_t i = 0; i < e->search.count; ++i) { + if (e->search.items[i] != e->data.items[pos + i]) { + return false; + } + } + return true; +} + +void editor_move_to_begin(Editor *e) +{ + editor_stop_search(e); + e->cursor = 0; +} + +void editor_move_to_end(Editor *e) +{ + editor_stop_search(e); + e->cursor = e->data.count; +} + +void editor_move_to_line_begin(Editor *e) +{ + editor_stop_search(e); + size_t row = editor_cursor_row(e); + e->cursor = e->lines.items[row].begin; +} + +void editor_move_to_line_end(Editor *e) +{ + editor_stop_search(e); + size_t row = editor_cursor_row(e); + e->cursor = e->lines.items[row].end; +} + +void editor_move_paragraph_up(Editor *e) +{ + editor_stop_search(e); + size_t row = editor_cursor_row(e); + while (row > 0 && e->lines.items[row].end - e->lines.items[row].begin <= 1) { + row -= 1; + } + while (row > 0 && e->lines.items[row].end - e->lines.items[row].begin > 1) { + row -= 1; + } + e->cursor = e->lines.items[row].begin; +} + +void editor_move_paragraph_down(Editor *e) +{ + editor_stop_search(e); + size_t row = editor_cursor_row(e); + while (row + 1 < e->lines.count && e->lines.items[row].end - e->lines.items[row].begin <= 1) { + row += 1; + } + while (row + 1 < e->lines.count && e->lines.items[row].end - e->lines.items[row].begin > 1) { + row += 1; + } + e->cursor = e->lines.items[row].begin; +} + + +bool editor_is_line_empty(Editor *e, size_t row) { + if (row >= e->lines.count) return true; // Non-existent lines are considered empty + + return e->lines.items[row].begin == e->lines.items[row].end; +} + +bool editor_is_line_whitespaced(Editor *e, size_t row) { + if (row >= e->lines.count) return false; + + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + for (size_t i = line_begin; i < line_end; ++i) { + if (!isspace(e->data.items[i])) { + return false; + } + } + return true; +} + + +ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos) { + // Ensure the cursor position is within the valid range + if (cursor_pos >= editor->data.count) return -1; + if (matchParenthesis){ + char current_char = editor->data.items[cursor_pos]; + char matching_char; + int direction; + + // Check if the character at cursor is a parenthesis + switch (current_char) { + case '(': matching_char = ')'; direction = 1; break; + case ')': matching_char = '('; direction = -1; break; + case '[': matching_char = ']'; direction = 1; break; + case ']': matching_char = '['; direction = -1; break; + case '{': matching_char = '}'; direction = 1; break; + case '}': matching_char = '{'; direction = -1; break; + default: return -1; // Not on a parenthesis character + } + + int balance = 1; + size_t pos = cursor_pos; + + while ((direction > 0 && pos < editor->data.count - 1) || (direction < 0 && pos > 0)) { + pos += direction; + + if (editor->data.items[pos] == current_char) { + balance++; + } else if (editor->data.items[pos] == matching_char) { + balance--; + if (balance == 0) { + return pos; // Found the matching parenthesis + } + } + } + return -1; // No matching parenthesis found + } +} + +size_t editor_row_from_pos(const Editor *e, size_t pos) { + assert(e->lines.count > 0); + for (size_t row = 0; row < e->lines.count; ++row) { + Line line = e->lines.items[row]; + if (line.begin <= pos && pos <= line.end) { + return row; + } + } + return e->lines.count - 1; +} + +//TODO BUG +void editor_enter(Editor *e) { + if (e->searching) { + editor_stop_search_and_mark(e); + current_mode = NORMAL; + return; + } else if (M_x_active || evil_command_active && e->minibuffer_active) { + sb_append_null(&e->minibuffer_text); // null termination + execute_command(e->commands, e, e->minibuffer_text.items); + e->minibuffer_text.count = 0; + e->minibuffer_active = false; + M_x_active = false; + current_mode = NORMAL; + } else { + size_t row = editor_cursor_row(e); + size_t line_end = e->lines.items[row].end; + + editor_insert_char(e, '\n'); + size_t line_begin = e->lines.items[row].begin; + bool inside_braces = false; + + // Check if the line contains an opening brace '{' + for (size_t i = line_begin; i < line_end; ++i) { + char c = e->data.items[i]; + if (c == '{') { + inside_braces = true; + break; + } + } + + // Insert the same whitespace character + for (size_t i = line_begin; i < line_end; ++i) { + char c = e->data.items[i]; + if (c == ' ' || c == '\t') { + editor_insert_char(e, c); + } else { + break; + } + } + + // If inside braces, perform additional steps + if (inside_braces) { + editor_move_line_up(e); + editor_move_to_line_end(e); + editor_insert_char(e, '\n'); + + // Add indentation + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(e, ' '); + } + } + e->last_stroke = SDL_GetTicks(); + } +} + + +// Anchor Implementation: Initially, the anchor used a single index from the +// start of the buffer, requiring updates on text changes. To simplify, we now +// track two indices (start and end of buffer). The anchor position self-adjusts +// based on cursor's relative position, ensuring correct placement without +// modifying all text-manipulating functions still a dumb implementation. + +void editor_set_anchor(Editor *editor) { + if (editor->cursor < editor->data.count) { + editor->has_anchor = true; + editor->anchor_pos_from_start = editor->cursor; + editor->anchor_pos_from_end = editor->data.count - editor->cursor; + } +} + +void editor_goto_anchor_and_clear(Editor *editor) { + if (editor->has_anchor) { + if (editor->cursor > editor->anchor_pos_from_start) { + editor->cursor = editor->anchor_pos_from_start; + } else { + editor->cursor = editor->data.count - editor->anchor_pos_from_end; + } + editor->has_anchor = false; + } +} + +void editor_update_anchor(Editor *editor) { + if (!editor->has_anchor) return; + + if (editor->cursor > editor->anchor_pos_from_start) { + // Cursor is after the anchor, use position from the start + editor->anchor_pos = editor->anchor_pos_from_start; + } else { + // Cursor is before the anchor, use position from the end + editor->anchor_pos = editor->data.count - editor->anchor_pos_from_end; + } +} + + +void editor_drag_line_down(Editor *editor) { + size_t row = editor_cursor_row(editor); + if (row >= editor->lines.count - 1) return; // Can't move the last line down + + Line current_line = editor->lines.items[row]; + Line next_line = editor->lines.items[row + 1]; + + // Calculate lengths including the newline character + size_t current_line_length = current_line.end - current_line.begin + 1; + size_t next_line_length = next_line.end - next_line.begin + 1; + + // Allocate temporary buffer to hold the lines + char *temp = malloc(current_line_length + next_line_length); + if (!temp) { + // Handle memory allocation error + fprintf(stderr, "ERROR: Unable to allocate memory for line swapping.\n"); + return; + } + + // Copy current and next lines into temp + memcpy(temp, &editor->data.items[current_line.begin], current_line_length); + memcpy(temp + current_line_length, &editor->data.items[next_line.begin], next_line_length); + + // Swap lines in editor's data + memcpy(&editor->data.items[current_line.begin], temp + current_line_length, next_line_length); + memcpy(&editor->data.items[current_line.begin + next_line_length], temp, current_line_length); + + // Free the temporary buffer + free(temp); + + // Update cursor position + if (editor->cursor >= current_line.begin && editor->cursor < current_line.end) { + // The cursor is on the current line, move it down with the line + editor->cursor += next_line_length; + } else if (editor->cursor >= next_line.begin && editor->cursor <= next_line.end) { + // The cursor is on the next line, move it up to the start of the current line + editor->cursor = current_line.begin + (editor->cursor - next_line.begin); + } + + // Update line positions in the Lines struct + editor->lines.items[row].begin = current_line.begin; + editor->lines.items[row].end = current_line.begin + next_line_length - 1; + editor->lines.items[row + 1].begin = current_line.begin + next_line_length; + editor->lines.items[row + 1].end = editor->lines.items[row + 1].begin + current_line_length - 1; + + // Retokenize + editor_retokenize(editor); +} + +void editor_drag_line_up(Editor *editor) { + size_t row = editor_cursor_row(editor); + if (row == 0) return; // Can't move the first line up + + Line current_line = editor->lines.items[row]; + Line previous_line = editor->lines.items[row - 1]; + + // Calculate lengths including the newline character + size_t current_line_length = current_line.end - current_line.begin + 1; + size_t previous_line_length = previous_line.end - previous_line.begin + 1; + + // Allocate temporary buffer to hold the lines + char *temp = malloc(current_line_length + previous_line_length); + if (!temp) { + // Handle memory allocation error + fprintf(stderr, "ERROR: Unable to allocate memory for line swapping.\n"); + return; + } + + // Copy current and previous lines into temp + memcpy(temp, &editor->data.items[previous_line.begin], previous_line_length); + memcpy(temp + previous_line_length, &editor->data.items[current_line.begin], current_line_length); + + // Swap lines in editor's data + memcpy(&editor->data.items[previous_line.begin], temp + previous_line_length, current_line_length); + memcpy(&editor->data.items[previous_line.begin + current_line_length], temp, previous_line_length); + + // Free the temporary buffer + free(temp); + + // Update cursor position + editor->cursor = previous_line.begin + (editor->cursor - current_line.begin); + + // Update line positions in the Lines struct + editor->lines.items[row - 1].begin = previous_line.begin; + editor->lines.items[row - 1].end = previous_line.begin + current_line_length - 1; + editor->lines.items[row].begin = previous_line.begin + current_line_length; + editor->lines.items[row].end = editor->lines.items[row].begin + previous_line_length - 1; + + // Retokenize + editor_retokenize(editor); +} + +float measure_whitespace_width(Free_Glyph_Atlas *atlas) { + Vec2f whitespaceSize = {0.0f, 0.0f}; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); + return whitespaceSize.x; +} + +float measure_whitespace_height(Free_Glyph_Atlas *atlas) { + Vec2f whitespaceSize = {0.0f, 0.0f}; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); + return whitespaceSize.y; +} + +void add_one_indentation_here(Editor *editor) { + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(editor, ' '); + } +} + +void remove_one_indentation_here(Editor *editor) { + for (size_t i = 0; i < indentation; ++i) { + editor_delete(editor); + } +} + +void add_one_indentation(Editor *editor) { + size_t cursor_row = editor_cursor_row(editor); + Line currentLineData = editor->lines.items[cursor_row]; + size_t originalCursorPosition = editor->cursor; + + // Calculate current indentation of the line + size_t currentIndentation = 0; + for (size_t i = currentLineData.begin; i < currentLineData.end && isspace(editor->data.items[i]); ++i) { + currentIndentation++; + } + + // Move cursor to the beginning of the current line + editor->cursor = currentLineData.begin; + + // Add one level of indentation at the beginning of the line + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(editor, ' '); + } + + // Adjust cursor position + if (originalCursorPosition <= currentLineData.begin + currentIndentation) { + // If the cursor was at or before the first non-whitespace character, move it right after the added indentation + editor->cursor = currentLineData.begin + currentIndentation + indentation; + } else { + // If the cursor was on a non-whitespace character, maintain relative position + editor->cursor = originalCursorPosition + indentation; + } +} + +void remove_one_indentation(Editor *editor) { + size_t cursor_row = editor_cursor_row(editor); + Line currentLineData = editor->lines.items[cursor_row]; + + // Save the current cursor position + size_t originalCursorPosition = editor->cursor; + + // Calculate current indentation of the line + size_t currentIndentation = 0; + size_t firstNonWhitespace = currentLineData.begin; + while (firstNonWhitespace < currentLineData.end && isspace(editor->data.items[firstNonWhitespace])) { + currentIndentation++; + firstNonWhitespace++; + } + + // Check if there's at least one indentation level to remove + if (currentIndentation >= indentation) { + // Move cursor to the beginning of the current line + editor->cursor = currentLineData.begin; + + // Remove one level of indentation from the beginning of the line + for (size_t i = 0; i < indentation; ++i) { + editor_delete(editor); // Assuming delete removes one character. + } + + // Adjust cursor position + if (originalCursorPosition <= currentLineData.begin + currentIndentation) { + // If the cursor was within the leading whitespace, move it to the first non-whitespace character + editor->cursor = firstNonWhitespace - indentation; + } else { + // If the cursor was on a non-whitespace character, maintain relative position + editor->cursor = originalCursorPosition - indentation; + } + } +} + + + +// TODO slow calculation on whitespaces +void indent(Editor *editor) { + size_t cursor_row = editor_cursor_row(editor); + int braceLevel = 0; + + // Calculate brace level up to the current line + for (size_t i = 0; i < cursor_row; ++i) { + Line line = editor->lines.items[i]; + for (size_t j = line.begin; j < line.end; ++j) { + char c = editor->data.items[j]; + if (c == '{') { + braceLevel++; + } else if (c == '}') { + braceLevel = (braceLevel > 0) ? braceLevel - 1 : 0; + } + } + } + + Line currentLineData = editor->lines.items[cursor_row]; + bool decreaseIndentation = false; + size_t firstNonWhitespace = currentLineData.begin; + bool isLineEmpty = true; + for (size_t j = currentLineData.begin; j < currentLineData.end; ++j) { + char c = editor->data.items[j]; + if (!isspace(c)) { + firstNonWhitespace = j; + isLineEmpty = false; + if (c == '}') { + decreaseIndentation = true; + } + break; + } + } + + // Adjust brace level for current line if it starts with a closing brace + if (decreaseIndentation) { + braceLevel = (braceLevel > 0) ? braceLevel - 1 : 0; + } + + // Calculate required and current indentation + size_t requiredIndentation = braceLevel * indentation; + size_t currentIndentation = 0; + for (size_t i = currentLineData.begin; i < currentLineData.end && (editor->data.items[i] == ' ' || editor->data.items[i] == '\t'); ++i) { + currentIndentation++; + } + + // Save the current cursor position + size_t originalCursorPosition = editor->cursor; + + // Adjust indentation + editor->cursor = currentLineData.begin; + while (currentIndentation < requiredIndentation) { + editor_insert_char(editor, ' '); + currentIndentation++; + } + + while (currentIndentation > requiredIndentation && currentIndentation > 0) { + editor_delete(editor); // or evil_delete_char(editor); + currentIndentation--; + } + + // Adjust cursor position based on initial condition + if (isLineEmpty || originalCursorPosition <= firstNonWhitespace) { + // If the line is empty or the cursor was on or before the first non-whitespace character + editor->cursor = currentLineData.begin + requiredIndentation; + } else { + // If the cursor was on a non-whitespace character, maintain relative position + size_t characterOffset = originalCursorPosition - firstNonWhitespace; + editor->cursor = currentLineData.begin + requiredIndentation + characterOffset; + } +} + + +size_t find_first_non_whitespace(const char* items, size_t begin, size_t end) { + size_t pos = begin; + while (pos < end && isspace((unsigned char)items[pos])) { + pos++; + } + return pos; +} + + + +// TODO tomove +bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length) { + size_t start = cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + size_t end = start; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + size_t length = end - start; + if (length < max_length) { + strncpy(line, &editor->data.items[start], length); + line[length] = '\0'; + return true; + } + + return false; +} + +bool extractLocalIncludePath(Editor *editor, char *includePath) { + char line[512]; // Adjust size as needed + if (!extractLine(editor, editor->cursor, line, sizeof(line))) { + return false; + } + + if (strncmp(line, "#include \"", 10) == 0) { + char *start = strchr(line, '\"') + 1; + char *end = strrchr(line, '\"'); + if (start && end && start < end) { + size_t length = end - start; + strncpy(includePath, start, length); + includePath[length] = '\0'; + return true; + } + } + + return false; +} + +void getDirectoryFromFilePath(const char *filePath, char *directory) { + strcpy(directory, filePath); + char *lastSlash = strrchr(directory, '/'); + if (lastSlash != NULL) { + *lastSlash = '\0'; // Null-terminate at the last slash + } else { + // Handle the case where there is no slash in the path + strcpy(directory, "."); + } +} + +Errno openLocalIncludeFile(Editor *editor, const char *includePath) { + char fullPath[512]; // Buffer for the full path + char directory[256]; // Buffer for the directory + + // Get the directory of the current file + getDirectoryFromFilePath(editor->file_path.items, directory); + + // Construct the full path + snprintf(fullPath, sizeof(fullPath), "%s/%s", directory, includePath); + + // Load the file using the full path + Errno load_err = find_file(editor, fullPath, 10, 10); + if (load_err != 0) { + fprintf(stderr, "Error loading file %s: %s\n", fullPath, strerror(load_err)); + return load_err; + } + + printf("Opened file: %s\n", fullPath); + return 0; +} + +bool extractGlobalIncludePath(Editor *editor, char *includePath) { + char line[512]; + if (!extractLine(editor, editor->cursor, line, sizeof(line))) { + return false; + } + + if (strncmp(line, "#include <", 10) == 0) { + char *start = strchr(line, '<') + 1; + char *end = strrchr(line, '>'); + if (start && end && start < end) { + size_t length = end - start; + strncpy(includePath, start, length); + includePath[length] = '\0'; + return true; + } + } + + return false; +} + +#include "unistd.h" // for F_OK +Errno openGlobalIncludeFile(Editor *editor, const char *includePath) { + char fullPath[512]; // Buffer for the full path + + // List of standard directories (expandable) + const char *standardDirs[] = {"/usr/include", NULL}; // NULL terminated array + + for (int i = 0; standardDirs[i] != NULL; i++) { + snprintf(fullPath, sizeof(fullPath), "%s/%s", standardDirs[i], includePath); + + // Check if the file exists and is accessible + if (access(fullPath, F_OK) != -1) { + // Try to load the file using the constructed full path + Errno load_err = find_file(editor, fullPath, 0, 0); + if (load_err == 0) { + printf("Opened file: %s\n", fullPath); + return 0; // File opened successfully + } + } + } + + // Print the error message only if the file is not found in /usr/include + fprintf(stderr, "Error: File %s not found in /usr/include\n", includePath); + return -1; // File not found in /usr/include +} + +void editor_open_include(Editor *editor) { + char includePath[256]; + + if (extractLocalIncludePath(editor, includePath)) { + openLocalIncludeFile(editor, includePath); + } else if (extractGlobalIncludePath(editor, includePath)) { + openGlobalIncludeFile(editor, includePath); + } +} + + + + + + + + + + +// CLANG FORMAT TODO +#include <stdlib.h> + +int is_clang_format_installed() { + if (system("clang-format --version") != 0) { + return 0; + } + return 1; +} + +void clang_format(const char *filename, const char *arguments) { + if (!is_clang_format_installed()) { + printf("bruh clang-format is not installed.\n"); + return; + } + + char command[1024]; + snprintf(command, sizeof(command), "clang-format %s %s", arguments, filename); + + // Execute the command + int result = system(command); + if (result != 0) { + printf("Error executing clang-format.\n"); + } +} + + +// TODO select more after end brace +void select_region_from_inside_braces(Editor *editor) { + if (editor->cursor >= editor->data.count) return; + + size_t row = editor_cursor_row(editor); + size_t start = row; + size_t end = row; + + // Find the start of the function + while (start > 0) { + start--; + size_t line_begin = editor->lines.items[start].begin; + size_t line_end = editor->lines.items[start].end; + + // Simple heuristic: a line ending with '{' might be the start of a function + if (editor->data.items[line_end - 1] == '{') { + break; + } + } + + // Find the end of the function + int brace_count = 1; // Start after finding the opening brace + while (end < editor->lines.count - 1) { + end++; + size_t line_begin = editor->lines.items[end].begin; + size_t line_end = editor->lines.items[end].end; + + for (size_t i = line_begin; i < line_end; i++) { + if (editor->data.items[i] == '{') { + brace_count++; + } else if (editor->data.items[i] == '}') { + brace_count--; + if (brace_count == 0) { + // Found the matching closing brace + goto found_end; + } + } + } + } +found_end: + + // Update the selection + editor->selection = true; + editor->select_begin = editor->lines.items[start].begin; + editor->cursor = editor->lines.items[end].end; +} + + +// TODO should not run from anywhere just curly braces +// TODO dont move the cursor on open brace like it does for closing brace +void select_region_from_brace(Editor *editor) { + if (editor->cursor >= editor->data.count) return; + + char current_char = editor->data.items[editor->cursor]; + + if (strchr("})", current_char)) { + // Called from a closing brace + editor->select_begin = editor->cursor; + evil_jump_item(editor); + size_t row = editor_cursor_row(editor); + editor->cursor = editor->lines.items[row].begin; // Extend to the beginning of the line + } else if (strchr("({", current_char)) { + // Called from an opening brace + size_t row = editor_cursor_row(editor); + editor->select_begin = editor->lines.items[row].begin; // Start from the beginning of the line + evil_jump_item(editor); + row = editor_cursor_row(editor); + editor->cursor = editor->lines.items[row].end; // Extend to the end of the line with the closing brace + } + + // Update the selection + editor->selection = true; + if (editor->select_begin > editor->cursor) { + // Ensure select_begin is always before the cursor + size_t temp = editor->select_begin; + editor->select_begin = editor->cursor; + editor->cursor = temp; + } +} + + +// TODO select_function + + +bool toggle_bool(Editor *editor) { + char word[256]; + if (!extract_word_under_cursor(editor, word)) { + return false; + } + + const char *replacement = NULL; + int difference = 0; + if (strcmp(word, "true") == 0) { + replacement = "false"; + difference = 1; // "false" is 1 character longer than "true" + } else if (strcmp(word, "false") == 0) { + replacement = "true"; + difference = -1; // "true" is 1 character shorter than "false" + } else { + return false; + } + + // Find the start position of the word + size_t word_start = editor->cursor; + while (word_start > 0 && isalnum(editor->data.items[word_start - 1])) { + word_start--; + } + + // Shift the buffer contents if necessary + if (difference != 0) { + memmove(&editor->data.items[word_start + strlen(replacement)], + &editor->data.items[word_start + strlen(word)], + editor->data.count - word_start - strlen(word)); + editor->data.count += difference; + } + + // Replace the word directly in the buffer + memcpy(&editor->data.items[word_start], replacement, strlen(replacement)); + + editor_retokenize(editor); + return true; // Successfully toggled +} + +void editor_quit() { + quit = true; +} + +void editor_save_and_quit(Editor *e) { + editor_save(e); + quit = true; +} + + + + + +bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { + if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { + return false; + } + + size_t end = e->cursor; + size_t start = end; + + while (start > 0 && isalnum(e->data.items[start - 1])) { + start--; + } + + size_t word_length = end - start; + if (word_length >= max_word_length) { + return false; + } + + memcpy(word, &e->data.items[start], word_length); + word[word_length] = '\0'; + e->cursor = start; + return true; +} + + + + + +#define MAX_MATCHES 1024 +#define MAX_WORD_LENGTH 256 + +// TODO cycle +// TODO bad match sometimes i invoke it and it does nothing + +void evil_complete_next(Editor *e) { + static char last_word[MAX_WORD_LENGTH] = {0}; + static size_t last_match_index = 0; + char current_word[MAX_WORD_LENGTH]; + + if (!extract_word_left_of_cursor(e, current_word, sizeof(current_word))) { + printf("No word to complete.\n"); + return; + } + + if (strcmp(last_word, current_word) != 0) { + strcpy(last_word, current_word); + last_match_index = 0; + } + + char *matches[MAX_MATCHES]; + size_t matches_count = 0; + find_matches_in_editor_data(e, current_word, matches, &matches_count); + + if (matches_count == 0) { + printf("Pattern not found.\n"); + return; + } + + const char *next_match = matches[last_match_index % matches_count]; + size_t next_match_length = strlen(next_match); + size_t current_word_length = strlen(current_word); + + // Adjust the buffer size and content + if (next_match_length != current_word_length) { + memmove(&e->data.items[e->cursor + next_match_length], + &e->data.items[e->cursor + current_word_length], + e->data.count - e->cursor); + e->data.count += next_match_length - current_word_length; + } + + // Replace the current word with the match + memcpy(&e->data.items[e->cursor], next_match, next_match_length); + + // Update the cursor position to the end of the new word + e->cursor += next_match_length; + + last_match_index++; + + // Clean up + for (size_t i = 0; i < matches_count; i++) { + free(matches[i]); + } + editor_retokenize(e); +} + +void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count) { + size_t word_length = strlen(word); + *matches_count = 0; + char *data = e->data.items; + size_t data_length = e->data.count; + + for (size_t i = 0; i < data_length; i++) { + if (isalnum(data[i]) && (i == 0 || !isalnum(data[i - 1]))) { + // Found the start of a word + if (strncmp(&data[i], word, word_length) == 0) { + // Found a matching word, now find the end of the word + size_t word_end = i + 1; + while (word_end < data_length && isalnum(data[word_end])) { + word_end++; + } + + size_t match_length = word_end - i; + if (*matches_count < MAX_MATCHES) { + matches[*matches_count] = malloc(match_length + 1); + strncpy(matches[*matches_count], &data[i], match_length); + matches[*matches_count][match_length] = '\0'; + (*matches_count)++; + } + } + } + } +} + + + +Errno editor_goto_line(Editor *editor, const char *params[]) { + if (!params || !params[0]) { + // Handle error: No line number provided + return -1; + } + + size_t line_number = atoi(params[0]); + if (line_number == 0 || line_number > editor->lines.count) { + // Line number is out of range + return -1; + } + + // Adjust line_number to zero-based index + line_number -= 1; + + // Set the cursor to the beginning of the specified line + editor->cursor = editor->lines.items[line_number].begin; + + return 0; +} + +void get_cursor_position(const Editor *e, int *line, int *character) { + assert(e != NULL && line != NULL && character != NULL); + + // Get the line number + *line = editor_cursor_row(e); + + // Find the start of the current line + size_t line_start = 0; + if (*line > 0 && *line < e->lines.count) { + line_start = e->lines.items[*line].begin; + } + + // Calculate the column number (character position) + *character = e->cursor - line_start; +} + + + + + +// TODO doesn't work +// VARIABLES DOCUMENTATION +struct hashmap *variable_docs_map; + +void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1) { + variable_docs_map = hashmap_new( + sizeof(VariableDoc), // Size of each element + 16, // Initial capacity + seed0, seed1, // Hash seeds + variable_doc_hash, // Hash function + variable_doc_compare,// Compare function + NULL, // Element free function (NULL if not needed) + NULL // User data for compare function (NULL if not needed) + ); + + if (!variable_docs_map) { + // Handle hashmap initialization failure + fprintf(stderr, "Failed to initialize variable documentation map\n"); + } +} + + +bool document_variable(const char *name, const char *type, const char *description) { + // Check if the variable is already documented using the variable name as the key + if (hashmap_get(variable_docs_map, name) != NULL) { + // Variable already documented + return false; + } + + VariableDoc *doc = malloc(sizeof(VariableDoc)); + if (!doc) { + // Memory allocation failure + return false; + } + + // Duplicate the strings to ensure they are properly managed + doc->var_name = strdup(name); + doc->var_type = strdup(type); + doc->description = strdup(description); + + // Insert the new documentation into the map + // The hashmap_set function calculates the hash internally + if (hashmap_set(variable_docs_map, doc) == NULL) { + // Successfully documented the variable or replaced an existing one + return true; + } else { + // Cleanup in case of failure + free(doc->var_name); + free(doc->var_type); + free(doc->description); + free(doc); + return false; + } +} + + + +// TODO type checking +void initialize_variable_documentation() { + // Define hash seeds + uint64_t seed0 = 0x12345678; + uint64_t seed1 = 0x9ABCDEF0; + + // Initialize the hashmap with seeds + initialize_variable_docs_map(seed0, seed1); + + // Document variables + document_variable("zoom_factor", "float", "Controls the zoom level of the editor view."); + document_variable("showLineNumbers", "bool", "Determines whether line numbers are displayed."); + // Add more variables here... +} + + + +void print_variable_doc(const char *var_name) { + VariableDoc *doc = (VariableDoc *)hashmap_get(variable_docs_map, var_name); + if (doc) { + printf("Variable Name: %s\nType: %s\nDescription: %s\n", doc->var_name, doc->var_type, doc->description); + } else { + printf("No documentation found for variable '%s'.\n", var_name); + } +} + + + +uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1) { + const char *str = item; + uint64_t hash = seed0; + while (*str) { + hash = 31 * hash + (*str++); + } + return hash ^ seed1; +} + + +int variable_doc_compare(const void *a, const void *b, void *udata) { + const VariableDoc *doc = a; + const char *key = b; + return strcmp(doc->var_name, key); +} + + + + + +// ANIMATIONS +// TODO don't always update + +float easeOutCubic(float x) { + return 1 - pow(1 - x, 3); +} + + +float targetModelineHeight; +bool isModelineAnimating = false; +void update_modeline_animation() { + if (!isModelineAnimating) { + return; + } + + float animationSpeed = 1.50f; + + if (modelineHeight < targetModelineHeight) { + modelineHeight += animationSpeed; + if (modelineHeight > targetModelineHeight) { + modelineHeight = targetModelineHeight; + } + } else if (modelineHeight > targetModelineHeight) { + modelineHeight -= animationSpeed; + if (modelineHeight < targetModelineHeight) { + modelineHeight = targetModelineHeight; + } + } + + if (modelineHeight == targetModelineHeight) { + isModelineAnimating = false; + } +} + + +float targetMinibufferHeight; +bool isMinibufferAnimating = false; +float minibufferAnimationProgress = 0.0f; // Normalized progress of the animation +float minibufferAnimationDuration = 1.0f; // Duration of the animation in seconds + + +void update_minibuffer_animation(float deltaTime) { + if (!isMinibufferAnimating) { + return; + } + + minibufferAnimationProgress += deltaTime / minibufferAnimationDuration; + + if (minibufferAnimationProgress > 1.0f) { + minibufferAnimationProgress = 1.0f; + isMinibufferAnimating = false; + } + + float easedProgress = easeOutCubic(minibufferAnimationProgress); + minibufferHeight = easedProgress * (targetMinibufferHeight - minibufferHeight) + minibufferHeight; + + if (minibufferHeight == targetMinibufferHeight || minibufferAnimationProgress >= 1.0f) { + isMinibufferAnimating = false; + } +} + + +size_t calculate_max_line_length(const Editor *editor) { + size_t max_len = 0; + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + size_t line_length = line.end - line.begin; + if (line_length > max_len) { + max_len = line_length; + } + } + return max_len; +} + +float column_to_x(Free_Glyph_Atlas *atlas, int column) { + float whitespace_width = measure_whitespace_width(atlas); + return column * whitespace_width; +} + + + + + + + + + + + + +// Spellcheck + +#define MIN_SPELLCHECK_LENGTH 3 +#define SPELLING_THRESHOLD 2 + +char **dictionary = NULL; +size_t dictionary_word_count = 0; + +char **load_dictionary(const char *file_path, size_t *word_count) { + FILE *file = fopen(file_path, "r"); + if (!file) { + perror("Failed to open dictionary file"); + return NULL; + } + + char **dictionary = NULL; + char line[100]; + *word_count = 0; + + while (fgets(line, sizeof(line), file)) { + line[strcspn(line, "\n")] = 0; + char **temp = realloc(dictionary, (*word_count + 1) * sizeof(char *)); + if (!temp) { + perror("Failed to allocate memory for dictionary"); + // Free already allocated memory + for (size_t i = 0; i < *word_count; ++i) { + free(dictionary[i]); + } + free(dictionary); + fclose(file); + return NULL; + } + dictionary = temp; + dictionary[*word_count] = strdup(line); + (*word_count)++; + } + + fclose(file); + return dictionary; +} + +int wagner_fischer(const char *s1, const char *s2) { + int len1 = strlen(s1); + int len2 = strlen(s2); + int matrix[len1 + 1][len2 + 1]; + + for (int i = 0; i <= len1; i++) matrix[i][0] = i; + for (int j = 0; j <= len2; j++) matrix[0][j] = j; + + for (int i = 1; i <= len1; i++) { + for (int j = 1; j <= len2; j++) { + int cost = (s1[i - 1] == s2[j - 1]) ? 0 : 1; + matrix[i][j] = fmin(matrix[i - 1][j - 1] + cost, + fmin(matrix[i - 1][j] + 1, matrix[i][j - 1] + 1)); + } + } + + return matrix[len1][len2]; +} + + + +bool check_spelling(const char *word) { + if (strlen(word) < MIN_SPELLCHECK_LENGTH) { + return true; + } + for (size_t i = 0; i < dictionary_word_count; ++i) { + if (wagner_fischer(word, dictionary[i]) <= SPELLING_THRESHOLD) { + return true; + } + } + return false; +} + + + + +void spellcheck_editor_data(Editor *editor) { + char word[256]; // Adjust size as necessary + size_t word_length = 0; + + // Iterate through editor data + for (size_t i = 0; i < editor->data.count; ++i) { + char c = editor->data.items[i]; + if (isalpha(c)) { + // Collect characters of a word + word[word_length++] = c; + } else { + if (word_length > 0) { + // Null-terminate the collected word + word[word_length] = '\0'; + + // Check spelling of the word + if (!check_spelling(word)) { + // Handle misspelled word (e.g., store its position, mark it, etc.) + } + + // Reset for the next word + word_length = 0; + } + } + } +} + + + + + + +void editor_color_text_range(Editor *editor, size_t start, size_t end, Vec4f new_color) { + for (size_t i = 0; i < editor->tokens.count; ++i) { + Token *token = &editor->tokens.items[i]; + size_t token_start = token->position.x; // Make sure this is the correct way to calculate the start position + size_t token_end = token_start + token->text_len; + + // Check if the token is within the specified range + if (token_start < end && token_end > start) { + token->color = new_color; + } + } +} + + + + + + diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c.blob new file mode 100644 index 0000000000000000000000000000000000000000..4ce228cfff335a446066a8e925de59b9f145cead GIT binary patch literal 107273 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h new file mode 100644 index 00000000..5dbef50d --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h @@ -0,0 +1,293 @@ +#ifndef EDITOR_H_ +#define EDITOR_H_ + +#include <stddef.h> +#include <stdlib.h> +#include "common.h" +#include "free_glyph.h" +#include "simple_renderer.h" +#include "lexer.h" +#include <stdbool.h> +#include <SDL2/SDL.h> + +#include "hashmap.h" + +extern bool followCursor; +extern size_t indentation; +extern float zoom_factor; +extern float min_zoom_factor; +extern float max_zoom_factor; +extern bool showLineNumbers; +extern bool isWave; +extern bool showWhitespaces; +extern bool copiedLine; +extern bool hl_line; +extern bool relativeLineNumbers; +extern bool highlightCurrentLineNumber; +extern bool matchParenthesis; +extern bool superDrammtic; +extern bool showIndentationLines; + +extern bool showMinibuffer; +extern bool showModeline; +extern float minibufferHeight; +extern float modelineHeight; +extern float modelineAccentWidth; +extern bool ivy; +extern bool M_x_active; +extern bool evil_command_active; +extern bool quit; + +extern bool BlockInsertCurosr; +extern bool highlightCurrentLineNumberOnInsertMode; +extern bool instantCamera; + + +extern bool helix; +extern bool emacs; +extern bool automatic_zoom; + + +extern float fringeWidth; +extern bool showFringe; +typedef struct { + size_t begin; + size_t end; +} Line; + +typedef struct { + Line *items; + size_t count; + size_t capacity; +} Lines; + +typedef struct { + Token *items; + size_t count; + size_t capacity; +} Tokens; + + + +//TODO minibuffer, replace, replace char, helix +typedef enum { + EMACS, + HELIX, + NORMAL, + INSERT, + VISUAL, + VISUAL_LINE, + MINIBUFFER, +} EvilMode; + +extern EvilMode current_mode; + + +#define MAX_BUFFER_HISTORY 100 + +typedef struct { + Free_Glyph_Atlas *atlas; + + String_Builder data; + Lines lines; + Tokens tokens; + String_Builder file_path; + + bool searching; + String_Builder search; + + bool minibuffer_active; + String_Builder minibuffer_text; + + struct hashmap *commands; + + bool selection; + size_t select_begin; + size_t cursor; + + bool has_mark; // Indicates if there's a marked search result. + size_t mark_start; + size_t mark_end; + + Uint32 last_stroke; + + String_Builder clipboard; + + bool has_anchor; + size_t anchor_pos_from_start; + size_t anchor_pos_from_end; + size_t anchor_pos; + + + char *buffer_history[MAX_BUFFER_HISTORY]; + int buffer_history_count; + int buffer_index; + + // lsp + int to_clangd_fd; + int from_clangd_fd; + +} Editor; + +Errno editor_save_as(Editor *editor, const char *file_path); +Errno editor_save(const Editor *editor); +/* Errno editor_load_from_file(Editor *editor, const char *file_path); */ +Errno find_file(Editor *e, const char *file_path, size_t line, size_t column); +size_t get_position_from_line_column(Editor *e, size_t line, size_t column); + +void editor_backspace(Editor *editor); +void editor_delete(Editor *editor); +void editor_delete_selection(Editor *editor); +size_t editor_cursor_row(const Editor *e); + +void editor_move_line_up(Editor *e); +void editor_move_line_down(Editor *e); +void editor_move_char_left(Editor *e); +void editor_move_char_right(Editor *e); +void editor_move_word_left(Editor *e); +void editor_move_word_right(Editor *e); + +void editor_move_to_begin(Editor *e); +void editor_move_to_end(Editor *e); +void editor_move_to_line_begin(Editor *e); +void editor_move_to_line_end(Editor *e); + +void editor_move_paragraph_up(Editor *e); +void editor_move_paragraph_down(Editor *e); + +void editor_insert_char(Editor *e, char x); +void editor_insert_buf(Editor *e, char *buf, size_t buf_len); +void editor_retokenize(Editor *e); +void editor_update_selection(Editor *e, bool shift); +void editor_clipboard_copy(Editor *e); +void editor_clipboard_paste(Editor *e); + + + +void editor_start_search(Editor *e); +void editor_stop_search(Editor *e); +bool editor_search_matches_at(Editor *e, size_t pos); + + +// ADDED +void editor_stop_search_and_mark(Editor *e); +void editor_clear_mark(Editor *editor); +void move_camera(Simple_Renderer *sr, const char* direction, float amount); +void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); +void editor_insert_char_at(Editor *e, char c, size_t pos); +ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); +void editor_enter(Editor *e); +void editor_set_anchor(Editor *editor); +void editor_goto_anchor_and_clear(Editor *editor); +void editor_update_anchor(Editor *editor); +void editor_drag_line_down(Editor *editor); +void editor_drag_line_up(Editor *editor); +void add_one_indentation_here(Editor *editor); +void add_one_indentation(Editor *editor); +void remove_one_indentation(Editor *editor); +void indent(Editor *editor); +void select_region_from_brace(Editor *editor); +void select_region_from_inside_braces(Editor *editor); + +bool extractLocalIncludePath(Editor *editor, char *includePath); +void getDirectoryFromFilePath(const char *filePath, char *directory); +Errno openLocalIncludeFile(Editor *editor, const char *includePath); +bool extractGlobalIncludePath(Editor *editor, char *includePath); +Errno openGlobalIncludeFile(Editor *editor, const char *includePath); +void editor_open_include(Editor *editor); +bool toggle_bool(Editor *editor); + +void editor_quit(); +void editor_save_and_quit(Editor *e); + +void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count); +void evil_complete_next(Editor *e); +Errno editor_goto_line(Editor *editor, const char *params[]); +void get_cursor_position(const Editor *e, int *line, int *character); + + +void set_current_mode(); +size_t calculate_max_line_length(const Editor *editor); + + +Vec4f get_color_for_token_kind(Token_Kind kind); +void update_cursor_color(Editor * editor); +/* void update_cursor_color(Editor *editor, Free_Glyph_Atlas *atlas); */ + + + + + + + + + + + + + +// UTILITY +bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length); +size_t editor_row_from_pos(const Editor *e, size_t pos); +bool extract_word_under_cursor(Editor *editor, char *word); +bool editor_is_line_empty(Editor *e, size_t row); +bool editor_is_line_whitespaced(Editor *e, size_t row); +float measure_whitespace_width(Free_Glyph_Atlas *atlas); +float measure_whitespace_height(Free_Glyph_Atlas *atlas); +size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); +bool exract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); +bool is_number(const char *str); + +// Var Documentation + +typedef struct { + const char *var_name; // Name of the variable + const char *var_type; // Type of the variable (e.g., "int", "float", "bool") + const char *description; // Description of the variable +} VariableDoc; + +void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1); +bool document_variable(const char *name, const char *type, const char *description); +void initialize_variable_documentation(); +void print_variable_doc(const char *var_name); +uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1); +int variable_doc_compare(const void *a, const void *b, void *udata); + + + +// animation + +extern float targetModelineHeight; +extern bool isModelineAnimating; +extern void update_modeline_animation(); + +extern float targetMinibufferHeight; +extern bool isMinibufferAnimating; + +extern float minibufferAnimationProgress; +extern float minibufferAnimationDuration; +void update_minibuffer_animation(float deltaTime); + +float easeOutCubic(float x); + + + +// spellcheck + +extern char **dictionary; +extern size_t dictionary_word_count; + +void spellcheck_editor_data(Editor *editor); +char **load_dictionary(const char *file_path, size_t *word_count); +int wagner_fischer(const char *s1, const char *s2); +bool is_spellcheckable(Token_Kind kind); +bool check_spelling(const char *word); + + + +void editor_color_text_range(Editor *editor, size_t start, size_t end, Vec4f new_color); + +void adjust_line_number_width(Editor *editor, float *lineNumberWidth); + +#endif // EDITOR_H_ + diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..c8e70d67e1adab05cdfd5a7bb9b07f2c25d8f788 GIT binary patch literal 39953 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h b/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h new file mode 100644 index 00000000..e6e113be --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h @@ -0,0 +1,11 @@ +#ifndef EMACS_H +#define EMACS_H + +#include "editor.h" + +void emacs_kill_line(Editor *e); +void emacs_backward_kill_word(Editor *e); +void emacs_back_to_indentation(Editor *e); +void emacs_mark_paragraph(Editor *e, bool shift); + +#endif // EMACS_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..43a304c0856ad2b72bc31277fbff6e4a596cd6da GIT binary patch literal 13015 zcmb7KU8p2S74F&GKQ61RFFpiaE(wv%CY{N>uGbhg|JhAkH=D3gBSzAx>8_rsz5Tac z-7|9+13m^3{6PYFksuO5A%=j0FX}@Gm<akH2tFvjL<J2fLNF$|o~r7qnVLRbGr14D zcehWSI=|mJb*fH#@Bi_ZN8a#yUVoIQw4d}Jr2L@Di+)9U)sJY@=VjPW3CnH^z3ak+ zWW$w6{YhRPux#i@tfXO;mxp(C?%=(5Yp-APvd^+GsUzBd{K1QR{Q(`aEC}<6-Zt{y z|HRI-uUj->by&zR|9R^U`^$h;yf41;eh{PsUXh9hm0)5>6E^5eUHZHGW>=C<Syq*x zDUiO-zVwE*pOgvy2!=I_P>CM8*dHdf_;lj;FaNq@F<7-OagAb1#5Zn9s!fuTYGi%D zRTxh{wYwJ=yZa7Jq<w^2GTSJ6EBSqJ2mvr5#qvFQ6%Fz{5ri$HNmfP9*>o>RSZXn| zwj))ZvM`vih=R-OtfHkMb_Hh45*iH3e8Sa&+kZ6Za9dc^EQ@o&)x?s+h9EgfAOM%g z1Fy@Ngfo}A#2wLuO@#<Az4DYTCl?zHjm{z)Q0azo#vD>fgR9u*Y&a&#Lf~6QS9BFi zX*oyclAn&5boB9GJZg(?vZKoDPzI_ovbAMg_(?t-EZ39BNFEPTm$v+n_rr+Bc*@M% zqAKgK3eJD_;yG(;Et?Tv0^NLwXo@*zVV)l_8n8Tw>nyBTp7A;J&EuFv1hL_l2M;(f zDuxVM;DGvmlBUaC4^HRR0l$W7S!WEA75y})9*&sW4zNK+WDFQE)t@8}9**eJEheDG zDhd~Q5oVP`XX7^jvq&L8EAB*mqdJ?#u$B>t`erd|{~!SKLAV7enFb^QODH99*wYnA zxP&gMYuRi_q2N}4d#W%<!@9DNkA*&OJ#b$~4uX`xU(gtR^nM~^q+pgsP;KKW2S{q+ zA4=O~Yq19lXvv}Af54T=Dm6=Za{r7axz@}0GE7)8$VrKpXc?kV2dd16N&}%)9a`*A z<%%*6M;HvD)Qu^!7EHT58kdv?!{o4#(0O`iWP4U+mPl<99xNBQ5g{4G%liO`PEi*9 z5KyeLanz+A;Ii;F1c(sFB!FWHi&HXAkTu$cQps5=;_#xAD#=3vmEUe)(A{B26Yxe( zYfq?2G2u2VivU{Lh_h=riil*BT}4Y^6O#w@&}w5{kx)S-a8@<_&pSt<iUd@(!dVZ@ z_9^2y7#IrGeF;yt0ArZdeP~$+-0#Rd!qYx2%S_tf)H~m>8($T<w7Qb6&`D|(k*FVC zT^=pQvBvhOoyJ9&q;+yNx{8D!x?)0DRUBaLA4<+qN1&vjBO-(qZn9qvpdwhAu1N@o zR(JNv6-x=7s+xHHKd22T;52_oGg`7xInN&uF5|o9K@%i-L9?N({H-9FOWlle8%4C- zBCrD$*?m$lq1#uVKW=wLvT)6G>uiE&bS9%wV^295({P!+HKvF*Z2!zEm;z25D}cWP zVUCIt(#4YK^4y5<QK}AK`_Ux_1VAh>=tQnjL=J6v<3Yfoc4<VV)fEKI7|mDZw(6|Q z2_Ujvnlzc&UYymS|EQ=u2jW2l(uDqq5@_apsCILKKHpb2@it~<o~2O6@raXDaP0G; z{X$bo5;V=1OgfYbM1oX7KS>5fH7Y@18AU!R)#=9oQp*a11ZrH`HPsOPSq-(gqEm;= zP_)&is8rhE;v;TlSWo1^#ai!(gm{(kf`gse(iPkZm$l$$A9dBXvRXXrxLD5G|6~vA zolJph`30sDFfOv}pj{@ttH1$H=i>Y*TKQHBW|4E6K=a$pPK<G&b4lzSQOg6!ky2XJ zfSk3Js8Ml3hBhmUL?au>y<`+1n2AAIZF55fBhk_lW?3x=p!x@cIu0r_n{c??3AC}Q zTu(oGzg@XxaED3G#hhqiG>A%zmS$}wuyN=YC51zs<ujBMbkkTZL1}})9M%KXeF*-z zBjcp<Dfq`vX*J66!!tC_^>kUE)mWVkgJzs&2O=uyWRT@78^eLI)y!)nX*>yLm}6iC z<q3n-j^i9ou0}oTu<xum$_lfTZ8a<H=>xiBNkHetdfeG<=wjHE{FTl;e7H16nz{iq z1vu0NfOdX#m=TzQT9K%o&?+^C%9Th75oFzy0x_Bw6ifUm9fW!YHLq;DkbpvoX?8VC zUEw#c`OH`=sn1zjz$sBx2L&i!yY)#&J2eZfu2jtl%nrglO><XEAST|sofGd?_brrZ z#quoe#DLcFk`)wUD$+WgqNWyu4~X7YqNBuV3S+JWx;n8lZViPu0LBo%Hq_Vx%BvXk z#IEVo^xLjI`rBL?4px}pj$!@;BU#H{sDe{*!?j=yS1vu`%gO!g_bgltN%^2<iy?XO z5rL#o7cPObuUkH<9K+aZc8B2-_mJ?66@_YjzxVww*kx3T1Z@EwL;Jiq{Bg0B-WJAv z2W_;h!q0?0B`>HAX{a|8$ciD+f=fDKx#H6#s>CH@E1-4gm=wB_!?}a01Bx5#Dzslf zMNV@ln=9v&1VuR1uOcp~o0*bZ)-Z{anvdK}C*g?9?$YK@QN}tW7Bwewxu47ZG-7a< zEBybb^RWX+l{*X9xnbF;kMp42-lC3}Z?=fKKQ(}bE|}i2KP*=EoUZ@j(kf*du<n7s zF}lJ-3#M9OTO_24^AbNV8%|eiW*2eIM<;n!r`-qBrVSB-v<^r5M%s5w-pwX(*VqMa zMpRBSuENJewk7ObMPbqMngReOhSv*(xXaPJ)|(pvXVW!YKy`)IQWV`%#SIK-+5m;p zk0EwfrDdo(C|e0U7~_`mqKL8C8Garsq?avlm#ubCkdoNf`lt+igu%KNK!uRFw5oi0 zIb#JQ%23(XnUTOv3T!dcTbi*p`c(>Kj_NRvN(z`qncH4#4JuxkL^RE-m8Nn@P9i?5 z>GM`MVOg*#RWpNDSQ?rkv>#$}ROU&t&@ZAgf(iGKaMKntd|`ItO4$|aOOa0&1k#&m z@W3WsT|&bHmvJH<24K>oi{O;s9Pmw9SQJ1&WHS)Aylc~`5Cx+-dVdi%K1`jPGHEas zl`ID5OYAm+p=98yj>D%VAFNG%IP*k)M8gE;r*Lg!X@fHFu%yM=%KXYsc#N=VEEj-T zQ<~69^IF|Hn5af21obl!+R)ms)IPy^h?5~5<g#IR^M=_+5i+c@qoNcFBays8$rVhk zc##G7Y;wvd4|FRv&F<GR#>^uEZ6|&OsBm2luzdh&n1uP=ps9%EX>Lwbm|R&wroB9) zhU*DC4mF8<A44Z%`4?~a>ud7KoWqU-@ooglsh~Frqj?!^%Sm3y?Tq6!$+9<ZD$0fV zI|5g#l;q-7V_w4`-_jcu94?M2^vrFsQEIw+RWGVZ$<P9Wa!#(T_>d;8;p#!?)v}&3 zusk#37B)0IBw1@dtNkD@IhGB|#T8%PIYF821F<dL&=ObrO5&>x)~I>lW=u>mR`1oq zv<Sl~iB@)Pg9MPVC>o$rY4jMo-_>Zd8l%7*S>>cOit9Kx8)RL1ws|<|lmv|GeibPv zMsnzA3ZE8FI;6o36J>_Vv2DjQmaY{aWQGuy;U`yaBk<XTtzPq*rgaV2C9G^_P+UV- z6bH==&kcc&Th{KIFcUr_fGa$`8~lR{tj^4oB)VM?gKc{-h-wAp2M)}uf@GLX1`D*V z5U)m5jpd$us2Nyjj{(GhI2MNMPjgyyz8P)eS@7^pA1C6ux6%31UA(0?BNT7#=sVBc zd+mn3WH8QIv_n%8au~Xn2l7}oEJ-msbxsakc23h<cY^!jne`4IvADX~+ulCq!OyXy zAKr4$$8Y}KU;cIEM-Pu*xc*zUcii)OTiaWEz226$^|a?5efNdk3%|MRCr`}nGLWvx z0|w6~Gr0GIiRo-B!F^9~?;Ty(e{%EXTQ0vUnQm@xp6&HEz0J$O^rhE!fA!ygzwIqB zoxsz(;D9AbAYM(`Ja1P#|9pac`k5cR`XR}4V|(MyUT?$Ocno;n^yb^Y{pC&j=jM1y zR&eh_ZB{20t8d;P+!Ors?dK({_3iajz23UFez)gc_o5(}|LM&PbhP>0#gA=&<)NR> ze^<XBC7-*I{r%^!enx~a92#~MVC^(+P=9$RPlAo*k74yL{B!L{%X6f4GzK(&T3bK8 zzQ5MnIJ@!iT5t32%?oS2tutHq!tX}FIY)cPk8cZietzqz_l^POg{`Mvd{1m{_?ZCl zPMkO<NFUrfFG<gAoj2O3CEA&bOExcUJ|>ocG><JT`SzPXzVgIJ{ve}4X)Lz5uyy&~ zp3!lU-Nwa@OM)G!cxi#1w$I{{^*h(kiX~v1vkOc9_U_u(cd!0$eD0C^9(X)>7=-xn Zjo=uFh#m7^z21r5$z$?Q@2CeP{|A&E(w6`L literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c new file mode 100644 index 00000000..cbe70a81 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c @@ -0,0 +1,554 @@ +#include "evil.h" +#include "editor.h" +#include <stdbool.h> + +void evil_open_below(Editor *editor) { + size_t row = editor_cursor_row(editor); + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + + editor_move_to_line_end(editor); + editor_insert_char(editor, '\n'); + + // Copy indentation + for (size_t i = line_begin; i < line_end; ++i) { + char c = editor->data.items[i]; + if (c == ' ' || c == '\t') { + editor_insert_char(editor, c); + } else { + break; + } + } +} + +void evil_open_above(Editor *editor) { + size_t row = editor_cursor_row(editor); + + // Determine the current line's start and end for capturing indentation + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + + // Capture the indentation of the current line in a local array + char indentation[128]; // Assuming 128 characters is enough for indentation + size_t indentIndex = 0; + for (size_t i = line_begin; i < line_end && indentIndex < sizeof(indentation) - 1; ++i) { + char c = editor->data.items[i]; + if (c == ' ' || c == '\t') { + indentation[indentIndex++] = c; + } else { + break; + } + } + indentation[indentIndex] = '\0'; // Null-terminate the string + + // Insert a newline at the beginning of the current line + editor_move_to_line_begin(editor); + editor_insert_char(editor, '\n'); + editor_move_line_up(editor); + + // Apply the captured indentation + for (size_t i = 0; i < indentIndex; ++i) { + editor_insert_char(editor, indentation[i]); + } +} + +void evil_jump_item(Editor *editor) { + if (editor->cursor >= editor->data.count) return; + + char current_char = editor->data.items[editor->cursor]; + ssize_t matching_pos = -1; + + // Check if the current cursor position is a parenthesis + if (strchr("()[]{}", current_char)) { + matching_pos = find_matching_parenthesis(editor, editor->cursor); + } else { + // If not, search for a parenthesis on the current line + size_t row = editor_cursor_row(editor); + size_t line_begin = editor->lines.items[row].begin; + size_t line_end = editor->lines.items[row].end; + + for (size_t pos = line_begin; pos < line_end; ++pos) { + current_char = editor->data.items[pos]; + if (strchr("()[]{}", current_char)) { + matching_pos = find_matching_parenthesis(editor, pos); + if (matching_pos != -1) { + break; + } + } + } + } + + // Move the cursor to the matching parenthesis + if (matching_pos != -1) { + editor->cursor = matching_pos; + } +} + +// TODO when there is a {} dont add the space +// TODO when animatins are off +// move the cursor to the added whitespace +void evil_join(Editor *e) { + size_t row = editor_cursor_row(e); + if (row >= e->lines.count - 1) return; + + // Get the current line and the next line + size_t current_line_end = e->lines.items[row].end; + size_t next_line_begin = e->lines.items[row + 1].begin; + size_t next_line_end = e->lines.items[row + 1].end; + + + // Check if the current line is empty or only has whitespaces + bool only_whitespaces = true; + for (size_t i = e->lines.items[row].begin; i < current_line_end; ++i) { + if (!isspace(e->data.items[i])) { + only_whitespaces = false; + break; + } + } + + if (only_whitespaces) { + // Current line is empty or has only whitespaces, delete the line + size_t length_to_move = e->data.count - current_line_end; + memmove(&e->data.items[e->lines.items[row].begin], + &e->data.items[next_line_begin], + length_to_move); + e->data.count -= (next_line_begin - e->lines.items[row].begin); + editor_retokenize(e); + return; + } + + // Check if the current line ends in a newline character + if (e->data.items[current_line_end] == '\n') { + // Skip leading spaces on the next line + while (next_line_begin < next_line_end && + isspace(e->data.items[next_line_begin])) { + next_line_begin++; + } + + // Calculate the length to move in memmove + size_t length_to_move = e->data.count - next_line_begin; + + // Move the data from the next line start to the current line end + memmove(&e->data.items[current_line_end + 1], + &e->data.items[next_line_begin], + length_to_move); + + // Adjust the total count of characters in the buffer + e->data.count -= (next_line_begin - current_line_end - 1); + + // Insert a single space to separate the lines + e->data.items[current_line_end] = ' '; + } + + editor_retokenize(e); +} + +void evil_yank_line(Editor* editor) { + size_t start = editor->cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + size_t end = start; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + if (start < end) { + editor->clipboard.count = 0; + sb_append_buf(&editor->clipboard, &editor->data.items[start], end - start); + sb_append_null(&editor->clipboard); + + if (SDL_SetClipboardText(editor->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + } + copiedLine = true; +} + + +// TODO handle !copiedline not in the keybind and behave like vim +void evil_paste_after(Editor* editor) { + if (!copiedLine) { + return; // Do nothing if no line has been copied + } + + char *text = SDL_GetClipboardText(); + if (!text) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + return; + } + + size_t text_len = strlen(text); + if (text_len > 0) { + // Find the end of the current line + size_t end = editor->cursor; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + // If not at the end of the file, move to the start of the next line + if (end < editor->data.count) { + end++; + } + + // Insert the text from the clipboard + editor_insert_buf_at(editor, text, text_len, end); + + // If the pasted text does not end with a newline, add one + if (text[text_len - 1] != '\n') { + editor_insert_buf_at(editor, "\n", 1, end + text_len); + } + + // Move cursor to the first non-space character of the pasted line + editor->cursor = end; + while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { + editor->cursor++; + } + } + + SDL_free(text); +} + +// TODO handle !copiedline not in the keybind and behave like vim +void evil_paste_before(Editor* editor) { + if (!copiedLine) { + return; // Do nothing if no line has been copied + } + + char *text = SDL_GetClipboardText(); + if (!text) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + return; + } + + size_t text_len = strlen(text); + if (text_len > 0) { + // Find the start of the current line + size_t start = editor->cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + // Insert the text from the clipboard at the start of the line + editor_insert_buf_at(editor, text, text_len, start); + + // Optionally, insert a newline after pasting if the text doesn't end with one + if (text[text_len - 1] != '\n') { + editor_insert_buf_at(editor, "\n", 1, start + text_len); + } + + // Move cursor to the first non-space character of the pasted line + editor->cursor = start; + while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { + editor->cursor++; + } + } + + SDL_free(text); +} + +void evil_visual_char(Editor *e) { + e->selection = true; + + // Identify the current line the cursor is on + size_t cursor_row = editor_cursor_row(e); + Line current_line = e->lines.items[cursor_row]; + + // If in VISUAL_LINE mode, adjust the selection to span the entire line + if (current_mode == VISUAL_LINE) { + e->select_begin = current_line.begin; + + // Set the cursor to the end of the current line to span the whole line + e->cursor = current_line.end; + } else { + e->select_begin = e->cursor; + } +} + +// TODO doesn't work +void evil_visual_line(Editor *e) { + e->selection = true; + + // Identify the current line the cursor is on + size_t cursor_row = editor_cursor_row(e); + Line current_line = e->lines.items[cursor_row]; + + // Set the beginning and end of the selection to span the entire line + e->select_begin = current_line.begin; + e->cursor = current_line.end; +} + +void evil_delete_char(Editor *e) { + if (e->searching) return; + + if (e->cursor >= e->data.count) return; + + // Copy the character to clipboard. + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // Delete the character from the editor. + memmove( + &e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) + ); + e->data.count -= 1; + editor_retokenize(e); +} + +void evil_delete_backward_char(Editor *e) { + // If in search mode or at the start of the data, return. + if (e->searching || e->cursor == 0) return; + + // Adjust the cursor to point to the previous character. + e->cursor -= 1; + + // 1. Copy the character to clipboard. + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // 2. Delete the character from the editor. + memmove( + &e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) + ); + e->data.count -= 1; + editor_retokenize(e); +} + + + +void evil_search_next(Editor *e) { + size_t startPos = e->cursor + 1; + for (size_t pos = startPos; pos < e->data.count; ++pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + + // If not found in the remainder of the text, wrap around to the beginning + for (size_t pos = 0; pos < startPos; ++pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } +} + +void evil_search_previous(Editor *e) { + if (e->cursor == 0) { + // If we are at the beginning of the file, wrap around immediately + for (size_t pos = e->data.count - 1; pos != SIZE_MAX; --pos) { // Note the loop condition + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + } else { + for (size_t pos = e->cursor - 1; pos != SIZE_MAX; --pos) { // Note the loop condition + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + + // If not found in the preceding text, wrap around to the end + for (size_t pos = e->data.count - 1; pos > e->cursor; --pos) { + if (editor_search_matches_at(e, pos)) { + e->cursor = pos; + editor_stop_search_and_mark(e); + return; // Exit after finding a match + } + } + } +} + +void evil_search_word_forward(Editor *e) { + char word[256]; + + e->searching = true; + e->search.count = 0; + + // Extract the word under the cursor. + if (extract_word_under_cursor(e, word)) { + sb_append_buf(&e->search, word, strlen(word)); + editor_stop_search_and_mark(e); + evil_search_next(e); + } else { + // If no word is extracted, exit search mode + e->searching = false; + } +} + +void evil_change_line(Editor *e) { + if (e->searching || e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Calculate the position of the first non-whitespace character + size_t first_non_whitespace = line_begin; + while (first_non_whitespace < line_end && + (e->data.items[first_non_whitespace] == ' ' || e->data.items[first_non_whitespace] == '\t')) { + first_non_whitespace++; + } + + // Adjust line_end to stop at the semicolon, if it's the last character + if (line_end > first_non_whitespace && e->data.items[line_end - 1] == ';') { + line_end--; + } + + // Determine the start position for deletion + size_t delete_from = e->cursor < first_non_whitespace ? first_non_whitespace : e->cursor; + + // Calculate the length from the deletion start position to the end of the line + size_t length = line_end - delete_from; + + // Copy the text to be deleted to the clipboard + e->clipboard.count = 0; + sb_append_buf(&e->clipboard, &e->data.items[delete_from], length); + sb_append_null(&e->clipboard); + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // Delete the text from the deletion start position to the end of the line + memmove(&e->data.items[delete_from], &e->data.items[line_end], e->data.count - line_end); + e->data.count -= length; + + // Set the cursor position to the first non-whitespace character if the cursor was on the whitespace + e->cursor = e->cursor < first_non_whitespace ? first_non_whitespace : e->cursor; + + current_mode = INSERT; + + editor_retokenize(e); +} + +// TODO can't find Capital chars +void evil_find_char(Editor *e, char target) { + if (e->searching || e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Start searching from the character right after the cursor position + size_t search_position = e->cursor + 1; + + while (search_position < line_end) { + if (e->data.items[search_position] == target) { + // If the target character is found, move the cursor to its position + e->cursor = search_position; + break; + } + search_position++; + } +} + +bool handle_evil_find_char(Editor *editor, SDL_Event *event) { + static bool waitingForFindChar = false; // Static variable inside the function + + if (waitingForFindChar) { + // Call evil_find_char with the pressed key + evil_find_char(editor, event->key.keysym.sym); + waitingForFindChar = false; + editor->last_stroke = SDL_GetTicks(); + return true; // The key event has been handled + } else if (event->key.keysym.sym == SDLK_f && !(SDL_GetModState() & KMOD_CTRL)) { + waitingForFindChar = true; + editor->last_stroke = SDL_GetTicks(); + return false; // The key event has not been fully handled yet + } + return false; // The key event has not been fully handled +} + + + +void evil_substitute(Editor *e) { + if (e->searching) return; // Check if editor is in search mode + + if (e->selection) { + // If there is an active selection, delete the selected text + editor_delete_selection(e); + } else if (e->cursor < e->data.count) { + // If no selection and cursor is within bounds, delete the character at cursor + memmove(&e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + (e->data.count - e->cursor - 1) * sizeof(e->data.items[0])); + e->data.count -= 1; + } + + // Switch to insert mode + current_mode = INSERT; + + // Re-tokenize if needed + editor_retokenize(e); +} + + + +void evil_change_whole_line(Editor *e) { + if (e->searching || e->cursor >= e->data.count) return; + + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + // Find the first non-whitespace character + size_t first_non_whitespace = line_begin; + while (first_non_whitespace < line_end && + (e->data.items[first_non_whitespace] == ' ' || e->data.items[first_non_whitespace] == '\t')) { + first_non_whitespace++; + } + + // If entire line is whitespace, first_non_whitespace will be line_end + if (first_non_whitespace < line_end) { + // Delete from the first non-whitespace character to the end of the line + size_t length = line_end - first_non_whitespace; + memmove(&e->data.items[first_non_whitespace], + &e->data.items[line_end], + e->data.count - line_end); + e->data.count -= length; + + // Set cursor to the first non-whitespace character + e->cursor = first_non_whitespace; + } else { + // If the line is all whitespace, just place the cursor at the end + e->cursor = line_end; + } + + // Switch to insert mode + current_mode = INSERT; + + // Re-tokenize if needed + editor_retokenize(e); +} + + + + +void evil_insert_line(Editor *e) { + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + size_t first_non_whitespace = find_first_non_whitespace(e->data.items, line_begin, line_end); + e->cursor = first_non_whitespace; + current_mode = INSERT; +} diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c.blob new file mode 100644 index 0000000000000000000000000000000000000000..7d89e416dd724a8da0e16a09c5f7d6709415ca73 GIT binary patch literal 36810 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 OcVR2C>asq??EV{|N+JjV literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h new file mode 100644 index 00000000..e3e63f99 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h @@ -0,0 +1,29 @@ +#ifndef EVIL_H +#define EVIL_H + +#include "editor.h" + + +void evil_open_below(Editor *editor); +void evil_open_above(Editor *editor); +void evil_jump_item(Editor *editor); +void evil_jump_item(Editor *editor); +void evil_join(Editor *e); +void evil_yank_line(Editor *editor); +void evil_paste_after(Editor *editor); +void evil_paste_before(Editor *editor); +void evil_visual_char(Editor *e); +void evil_visual_line(Editor *e); +void evil_delete_char(Editor *e); +void evil_delete_backward_char(Editor *e); +void evil_search_next(Editor *e); +void evil_search_previous(Editor *e); +void evil_search_word_forward(Editor *e); +void evil_change_line(Editor *e); +void evil_find_char(Editor *e, char target); +bool handle_evil_find_char(Editor *editor, SDL_Event *event); +void evil_substitute(Editor *e); +void evil_change_whole_line(Editor *e); +void evil_insert_line(Editor *e); + +#endif // EVIL_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..94d22cbf4afad2464ef76ea2cdc2d2ad5cc2788b GIT binary patch literal 15639 zcmb7LdypJQd7lxNyVKs@Q+IohsFW)^G3Vn}E1l)5v+58+*5i<6BaBgqi8aj5&hF0L zyficWIN>6gGGLOB5LBpQ;{=Qos3cY3nDT=Jn@ZUw+adwtGImNy5hzk|IR-i9a=8){ zYw~r^bkFuo&+MW<&L_>+Uw_Zv_x0E9Md3>R$@hOx5QS3RGSre@I;^^zo@JLj)%8jh zwNi2&rDVvOxmyw5q3E(%>xs13vYbuLtQ9Moqbi=|Y`r^m2jT4{vD9##l4dG;qoS5R zc=*I}sjSvCQ&Oyoy1Oo1xn};Jiwuq8ZQ1zC8<$tvFJ;YhOX#axk|d+-da|cV9%4dC zb*)^&x|H^=&|PJtt(l$!ngZ!X?Ze+=_QNv452@DBDqM+<oha4x2KqGi!b8ucEC#DK z9KJ?XRYu=jMp9xDL-y*-2fhl;_Vs(0tM=ZN3{9|okXuaFC}b=Ay}Shh(30)$d%9kw zY*{)YOc)KbvMpC@FH5>+FwB_kWY01*MQUjk6<pphJ=LMaS%F#AbX6)lR?7_*?D^|* zirW;sp_x?+aiy`8VMCBy)*%49$AjB&s<INfG)vsNs%vc|!Z#j1&C2PbjcQb9lnq?z zYE@IqkO~_-h<#V9HDx^(_>9p5I!`lHCxwg#y=OHP9Dmeygp<4FmXwNG<%cbnr)n2< zt5)u=oQ%V_SvGo9QL(H|O_elDsy0l;(=5|XQKZu@p3_h~>FE1T9AP9P3Q?Ug=yeU3 zmSJT017iZ(=JxW987NhS9LbU#eCc|d?pdzD4O4?0<bLW<n-7FUY1qJ&aSl_AB%d%3 zSE;LAw`hSOVp?!x*tTrN^fIhQT>uzW2@)H}T~=zThOFQiy!5V{+0;S-&b1ER26oY8 z4Er>^xq?d)7#d<-GUT=->tM4$T|VxS5`>(m#tp+*x28hH^#J&S%79&vrK{US`dq&8 zy{w{CACMCGBO0m?*$<^F7L2h7SKDga1x!i+AeT1GTzeT7sE!L2|5se8_foWwCs+0{ zk`ukC?uxG2WlMJWH5vyq6avpILaBiu^tKpwT;*)1s?>Rq#H9{RVJ2`o%cE6CRi&D~ zWn++CoUgN<4RR2HfUInG7dR9_FIT%a0uY_3E*2F4PmcxhEcF1Rk*^^@kT^5}GL~pn zLvHGvHN=Hj$tV^1Ktz&Cw-gylKik1@cZVHmz*9MyJ)u5TWtU~e5I`?makaC26hX;` z+lqw1G$uFIEvApniUbcL!PUI50eZ_<f=J-1W@pwOy1k*fd@!ICLHmU~nE;HM*(gEJ zT6T*mnJ2qONp&0(+hF0XKV&=KAaYf2!|0)vBq)OGL*-2OXrYd!w&&WZX)C(X(9cxP zaKewfq9tpdy~*qUxa2O^5nNKxks|~XZn$BVpdv7tPDo@Idfn(#RxIgiJE)#>KUY~m z0jCvfs;N4f5;(6|mR%g*2@ldBv24|>;T|CoBps=1sxFHnL~az=QV`iC+18M5cix+4 zn<8AeBHdEE;E0Z9G}qW|S8l3GH+vIIL0#C&zFsf|oY)KiewD+VD~h7VOJbJi>atrm zg45SZ<(3QxfLPF=6FIAL<RF%(9t0dpmPW3$q=IlWhVTt?J7}k!79cWPng|))9v#-8 z|L|0N5ab6DNTU?%stj#k5vpBBpmz=k!gy<Hj%6B9#`zJ4so>mKg!YS@N|+#QzHriU zsX!!1749d@!1n462#lksC_BM9i2_o>3S}K?oRK!xK>b+*YO$xbGh~LM9c;>#iWnSy z<Xaim%lN#+tj~yqYA@jhhdjDvR&eVst_6=4vTB>-#m`k)ETe;hzRc^LXn{)j1;!FE zFJkOKT!y_HfCC)Q(V-Ew@`)CVA$L_Bn%{JGXpRG&i_Y%IwLE~F>|l#hkYlz&HL9x1 zHI@}aLXZvQ?lKEN%+RE)!E)mYCRe(aFve<<1l3<EH>#2+M<b3bcLHrSs9Ya?{~@+= z;ow$u%SD5t*ldt1Ew?liD}jxbqV1?~sAGJ_<pkX{ua<CWC5a9Oq@epi{P~Wo>RwR= z{}c_?t6ThIHZ;zScDFt&w7OQ4!g(4Sh+IKiWz*8kCL9<O%{(y@!4oOM911I3o-j#G zInMFPgRxIA7RanPffb^ZO*AXXIR$q|M+Tka^*FWLAjL2&`8}O^+*;Qh3F`*T6yQ)N z0ooNSTc!+SP$m+I6B4C{Qe`EQE+ew^NdcP8BZ@Bm#17(mhHGBjc5woVORSn_6eBDA zIyH}s)sy<JX4r5_45~u_D4$sRNJcvqg;rXsS~AQI6w5HItd;<cy!WP#yc69wQYI10 zQQDyiE#oC7D9}_SaXRIi8Vx=mdJ~DxB{mEgbLr64p`H2G2=E5L7~+?O8dgAj7sEZV z6S`ph&DI|Bt)mP}J&bLeFn@wcFk>&Sf^Brg6|+WGF5O(jqx*~RiQNog`JiR1Lh|xQ z1ehYYagj3ny6&UOCXB73ON=aWw`AAUY&&Ru|NN^TV#_EN3EBd+3GH)y_>;vJdm9<| zEpDU56n+iq<G8lULK@c_0mz~uQOqT&u<W^Qz2c!;#za7q(4i@`VZpgW3l1pRSm$y3 z1+K`31!c46e8Qjzhx%T`l^fwqDO*-Wuj&oAp3StS)aB?ht@9K`ty9-3;fWmYm*sx7 zqQPY@^8b&IRx^M!aHpMhZs<1Zb6qLf-f|t$*=)(d1u6wB?t=E}O3m)sbEN(&U8@vr zz|sf))aU^oGBA}0TU(dCs^##{%aqfZhQ=0g!iOZe*)Y-%rePa`1W6o@$dz<4WAaWn zfy>4;aHFESs_6#dLnE6JwxgnGmF_hK01OSUV}yK{bMu;PP6dpnYkUEN%eI7~+%1E+ zfdNetpt$r+h}~XkHLf~bwitMLj1$VEBBn)W_)e_AUS_}@x7v~|J2HE(&y~Tg^I)9_ z5QGrAwDOAha)t>;F2lgKnHdS(u)qv6vLzjBbH8GN=usW!QMwKDD0<1vtl^5M=oQtl zyq>0Vx+PcKsHS&Xora~Ywbfu|kO)gkQ-k&cO^zH(*JJ%6S4J@5GAG=Kg(zQ`on)nK z5B0^iS}}phCImcq6R$L(;e|_6M~?(}(sLKVDL*{m)3Oj306}Cp5NEv0(gh(3M$72^ zQP>n=>Kv9yim6=5s^EN#-Bd6x8MrFt@X5#rYmFkDc`C(<s^~C3g=-r|8!qz{OER39 z%=g%Y=MjdDWek`JB@HdZY6Q0qG^)80g8C*3ZD{R#YM<ad<jOU*Y~hAIn>WlpY(?W$ zcCILPfRUWM;gSb1)#F7L+_T{+BR<ge)HG+ml%Zy>%g}c6uK)vF#{=vlfHX|Pis_&k z5aZKaho~^QVuFl#IiiN^2{sN134R`<w$SoZSG{}zznROhV;Q|LfpUuIX~Ga*R9mNI z*?2qZctX<c(OVGZ$owgRi&fGs^sLcpz#yN|n=3e69IMbXC&lJctG!os+iN)*x4>{Y z>t}m>a$_{$>H+DMupTuqJ~Q$yOle$2HWTw%;s<oe(QQzUuK29f2}-mN#5Q(ALR{=C zjIS(MbIk)cV`z%ed#|P#wxYD<O3$thkpME5iw0b&2zoTL-_;PaQlr2eImk(Dl&s@i zG|1YxCww`XDG3-g`&lHO7~!EKEqp{g?2r&QXp~W^jBQh%v81i|Rb~i^qg>Z>8^NDV zu<C`cX%g3fX~N=WhKp<574~L0!^?)ij9b?9n=l$ab$}~=dWZN27g(v8iAhMifCk&_ zV34a7lpi=S_X?7V-YUmvvqIdftHD_A{IPIgK|BT!1L80kPCj*Lk@`?HjAz87Nc%Vx z&tiY-Q+M>3o{mt2N&lgDKJ(`D)=yt)T3TgZZECs%(;Bm;O0BvDgKN0&P#2Eik<0v| zdaaPlEeY^P^l$&#>dMB@b599*_}gr5c109th1nB=;Q#Q2f4b?|??3Rlh@%T#AUt#f zTxVJB3Rr3X^_AIIm)`q1%xWe#vmlBy!ps3+^~v4;u=Gb8Z(izPrJ}%=(0eEe<`OM< zX2<f}6YyN0KL6Nj5BOEgb22x%Ulb>W$&-lZJrC@?`0~Rajd*G%de6d9bw1$rgUaf` z+kRqPz`W*ibBm%lC(IoLUQ6>&Ex!J*!%s?w;QjeL*sTI4!$yR$Qw3SliKN3uT$+a< zmyV#BC)gAH=UO43Uql;i^S}AXFP{18+kgC+KQ{0O)pvgO%>#JH>D=@_QJfa0+py!~ zcRTl8cc?TMNgui^>8N?cRP;Z2!`;u_e_H$*<~5a@0_mrOse{1lGavrVtDZl5ep|!~ zJ+P6=s&2JnVk5_g-Vz>dKlsp#&kkXJ{keYdR=?1{4*c%A@`bDKKmLJgjGtV#njMbE zX6WGeuE)Orp5OV>OP4Xff!qM_8xRH%zwi8PYV)NR_neFPZ8YE-7kUnZBi>G=?l%AL zr#`XwNnzKp|Me$6{ZjLuZ_XgT+Xi!k*NEbvFnDx(Zae(8UD$pUcDUiv`u*j`50|4I zDsX!a|FcFJa0A6w%!NqoWwejzkKVQOQ{NtWO2uN2=f>AWaa<U`6`20-g)i)#{BGl^ zi0KC0^+ggRCKCaZcb_g@JYT#1G-i^^<#vi<PCz^OKY!w%zkK({e)@}u$(C$x#$uG3 z66-GdwfyB5U%2tvk7IU2xgk(=NEkwj-g*0_;y*q*Zba-tMcEKVqRj`QjsM^ycRc#) z<9~*EjpfE5Y{rDKgTU+Zmly84y79=zBVIPVT~sBx3Qq<jHK}kR!>@e)wu5`_eeFw_ zVLq1!hIt`>92kDEex3N*4R8EqoMBmo4Ch78Re^}#z5U2%?%0|rVUEMO;U!TV7KRZ7 zed}+pJ@xGK=l&z&*wowx)QnVhA3S;A+-L9nz&XroBsT)mjR+%1-QTm%O}%o*=hqXw zQZw%5D?hsV-<E&*1m-oG8wFmY!YJZ(=wDuc>zd#ApEn|29GqC1M^eti(<68oggg>P z_BTHE#Rr8W&*%M1w|?vCdtd+4J(zzXR{%E`gu*G{|5x?@9{A<PwjV|O-2g95n2ScP z>2UL@o9=ekpMJ;JFt3T+1jsreOdwgWJpSgtzjE&6g#<5ntkBfp*v#@<2z+vV=`Zfu zUAXWe%x_0-$FeBy5OzQ||C)c~Ctv*jkDoYx8kJ@khRnkt(=t2YkOHHyb0^LZ;OPI| zv9EvX8t0kI{|A2&DK3iBr>5(D;=^dq&Oc&g8-L*ZiJiIMJ@!cF_uzNRl=Dfy>1yqj zZ$Etl5i;l&=fesZ{72Ze3or%$p}QdYrhI~pJ^{5P9Qh>YX}0<#Gkg-zK8Z%3gpyCv zk>ZX|Jm(XW`=sVk$oFZ;(8@w;Ev?@^scuvKi~TEo;=tkn{2W{u+}9^=U)T;mbGvej zed5r<5d5BB%CGi`!@Gy~_lYA*Bk=p^(kT2KTN;C(;|Io%_lXlr6Y%?veLD{JiIZ!S z>wV(X(iHqlVW9vVrdOs9^@%f!GqB6->g?e@ac*f2zRprXXtyDZjco(3&#lcJczYYB zJKz)lyp25I6K&#4X7<mlp(U`*T5JhPo{k)Y6a#KzVZCr0T2wetxb5M9KdGH@{!?pH zSR_y^E)waB;!9@NXOAQ9p!4yVNW@F=C56?(ek{;JVSj81aejQs#M%TF415q5?A7o5 z`fn}F-Izae>U}39NJt@nHDn>Qck|?50O7@*+wf1p7m<BQJkxD3sDodSz54g}A4TFp z+#HRG_b31PHygh_{t^_j=nv{(1`mofHMl$n_77m55QTA`q_A_>4XzFzMzTQM9*)UE zvVyJ)!)o%x<Sl3kgy=1?C8TwrOFGrwzPcT61<4WLiljDO7jBi?o!f)9f=t>I+lq90 z6#T-jP$(2~VB=|hx`|c--Zd$J2C+$sJ>9HR$f4CCEF@%YTu6c~bX_Rq$l3@F9Z2hV z=n(XvOFFljK019X7I9_z)|hex*tqNRYx#Aw4j^ScwvON+cir%TVVp<+Lh(c*Xi3+F zs*SFVV$}ev;;Io`jV~En8^cQg*y2kF-o}^gIJ^VLE+Ah#c1g1sUow8n_(@~~0M3)F G4gMeMF(=*t literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h b/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h new file mode 100644 index 00000000..bf16441f --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h @@ -0,0 +1,41 @@ +#ifndef FILE_BROWSER_H_ +#define FILE_BROWSER_H_ + +#include "common.h" +#include "free_glyph.h" + +#include <SDL2/SDL.h> + +#include <stdbool.h> + +#include <limits.h> + +typedef struct { + Files files; + size_t cursor; + String_Builder dir_path; + String_Builder file_path; + String_Builder file_extension; + + // for file creation mode + bool is_in_file_creation_mode; + char tmp_filename[PATH_MAX]; + size_t tmp_filename_len; + +} File_Browser; + +Errno fb_open_dir(File_Browser *fb, const char *dir_path); +Errno fb_change_dir(File_Browser *fb); +void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr); + +const char *fb_file_path(File_Browser *fb); + +Errno fb_go_to_parent(File_Browser *fb); + +// ADDED +void extract_file_extension(const char *filename, String_Builder *ext); +void expand_path(const char *original_path, char *expanded_path, size_t expanded_path_size); + + + +#endif // FILE_BROWSER_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..99a3b2f60d75e5d238a21e8710f6e8cc0d35a0e7 GIT binary patch literal 15829 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 W0_#M3#Lm<;Q-_Gqxv4{9?EF8=UwZQZ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h b/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h new file mode 100644 index 00000000..24631e86 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h @@ -0,0 +1,54 @@ +#ifndef FREE_GLYPH_H_ +#define FREE_GLYPH_H_ + +#include <stdlib.h> +#include "./la.h" + +#define GLEW_STATIC +#include <GL/glew.h> + +#define GL_GLEXT_PROTOTYPES +#include <SDL2/SDL_opengl.h> + +#include <ft2build.h> +#include FT_FREETYPE_H + +#include "simple_renderer.h" + +#define FREE_GLYPH_FONT_SIZE 64 + +// https://en.wikibooks.org/wiki/OpenGL_Programming/Modern_OpenGL_Tutorial_Text_Rendering_02 + +typedef struct { + float ax; // advance.x + float ay; // advance.y + + float bw; // bitmap.width; + float bh; // bitmap.rows; + + float bl; // bitmap_left; + float bt; // bitmap_top; + + float tx; // x offset of glyph in texture coordinates +} Glyph_Metric; + +/* #define GLYPH_METRICS_CAPACITY 128 */ +#define GLYPH_METRICS_CAPACITY 6400 + +typedef struct { + FT_UInt atlas_width; + FT_UInt atlas_height; + GLuint glyphs_texture; + Glyph_Metric metrics[GLYPH_METRICS_CAPACITY]; +} Free_Glyph_Atlas; + +void free_glyph_atlas_init(Free_Glyph_Atlas *atlas, FT_Face face); +float free_glyph_atlas_cursor_pos(const Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f pos, size_t col); +void free_glyph_atlas_measure_line_sized(Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f *pos); +void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, const char *text, size_t text_size, Vec2f *pos, Vec4f color); + +// ADDED + +float free_glyph_atlas_measure_line_width(Free_Glyph_Atlas *atlas, const char *text, size_t text_size); + +#endif // FREE_GLYPH_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..53262b92c2cf615c37eb260f69809e9c9a8fa36b GIT binary patch literal 16850 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h b/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h new file mode 100644 index 00000000..3ae8b519 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h @@ -0,0 +1,50 @@ +#ifndef HASHMAP_H +#define HASHMAP_H + +#include <stdbool.h> +#include <stddef.h> +#include <stdint.h> + +struct hashmap; + +struct hashmap *hashmap_new(size_t elsize, size_t cap, uint64_t seed0, + uint64_t seed1, + uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1), + int (*compare)(const void *a, const void *b, void *udata), + void (*elfree)(void *item), + void *udata); + +struct hashmap *hashmap_new_with_allocator(void *(*malloc)(size_t), + void *(*realloc)(void *, size_t), void (*free)(void*), size_t elsize, + size_t cap, uint64_t seed0, uint64_t seed1, + uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1), + int (*compare)(const void *a, const void *b, void *udata), + void (*elfree)(void *item), + void *udata); + +void hashmap_free(struct hashmap *map); +void hashmap_clear(struct hashmap *map, bool update_cap); +size_t hashmap_count(struct hashmap *map); +bool hashmap_oom(struct hashmap *map); +const void *hashmap_get(struct hashmap *map, const void *item); +const void *hashmap_set(struct hashmap *map, const void *item); +const void *hashmap_delete(struct hashmap *map, const void *item); +const void *hashmap_probe(struct hashmap *map, uint64_t position); +bool hashmap_scan(struct hashmap *map, bool (*iter)(const void *item, void *udata), void *udata); +bool hashmap_iter(struct hashmap *map, size_t *i, void **item); + +uint64_t hashmap_sip(const void *data, size_t len, uint64_t seed0, uint64_t seed1); +uint64_t hashmap_murmur(const void *data, size_t len, uint64_t seed0, uint64_t seed1); +uint64_t hashmap_xxhash3(const void *data, size_t len, uint64_t seed0, uint64_t seed1); + +const void *hashmap_get_with_hash(struct hashmap *map, const void *key, uint64_t hash); +const void *hashmap_delete_with_hash(struct hashmap *map, const void *key, uint64_t hash); +const void *hashmap_set_with_hash(struct hashmap *map, const void *item, uint64_t hash); +void hashmap_set_grow_by_power(struct hashmap *map, size_t power); +void hashmap_set_load_factor(struct hashmap *map, double load_factor); + + +// DEPRECATED: use `hashmap_new_with_allocator` +void hashmap_set_allocator(void *(*malloc)(size_t), void (*free)(void*)); + +#endif diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..eac9d87877fdb708f561b403560c403c7db7df60 GIT binary patch literal 20017 zcmds8eRLbum7hrj*p6dtCo%H39LupJTan|0khUp=;E<3yA)7$RCLzjbG_occ%?Qm% zwkgYIvn-@Egd}Z4v*pm96evyjDy6iAE~Q(x>_RBpmQxDdw(OoRv|HNJw6IIIFniyd zc~5%M(^$0sZBCAkt-0^r`|ii@e!Ou+cyD=f<8y*2#L`AaiD|Jh#oTKd*_fr6RxGI` zV`ff{Wh7N!EDN(`P0}Z7B8^TOxxK1B5lyN&MYfFG^oOf*5Z)aYV|g<dQ*~L(CzaTi zvGLJZLYYwYxNIbq#cAQaMS%m)GBmO^oyAZ7@S7FvlZ0xSG4#}o#p9WTX-Sq6x6me( zR8tc%e3saf<&>+GnNoEt2PXy6XVq=bG5oMh@DZQLt4XdzYsX^~S{^-We(~Xdsj?Wf zn$Pi1lu{)0%w!}bD#=Jznt8xKLSgE{C8MeAlI0#J!TLdF(OIPsR`_{h8XRC!%FfKw zw2}$K&=6sT((qPU!&Ik6<C>abHe=XHmXT5A_@tUtz~p(|QgW2o%P~``ro<CDW72dM zjGRnVF`Jytt9r^nyHa2B&>=`JY2bh}`-7R!r6jp%QZI4Sil$B>5gvSG7b~ZU7){VK zqiEntH<8j+52>)i9p5+AiGrk+IX<Iwht5(nO0I;=OMa!GVna7Rc_k}8jSkDm%h*w= zk{On%Y*aHQ5;LDu!k%16WV}vmPMa|~sigQJQ>qIqmzS;h<yVZaVOSH{sQ4J@N?n9d zlx!v&#$Hv4t42JP*JVpJbhAW#r8tHW0WsX3xXc5iQV=0!J8*43naRv#dN8_a?KQ9G zo-(hi5UkusCCB3<CeZ^h&?W2x6imq@yoV{Ll^Iz~!ZB(&aMsAmy5(_ZYBvD0q=Nw1 z?>v1tBgxodUK!fJIx&g_u68IJ;G#-6KT!APS}Gm~MT29;GtyLC(m-d<arppAauqV3 zQmz<AyAukeW(yF~Ng>z-US~B6=sdr<>{9li^gJLX?2l;Zc?drgTUangBiz%brc3~@ z3Z&%Hx^bNyg#}8^gwo)BuGDJDZpf0$mobu)bJ4TQnwm`*QjVX@u`@%)u=FV8Byd7& zn%RzfxNI&Zr+I+IrFK=JR{*+~MN>INiBD+LSq!p~K$^9z6N3l@Bzf=50=pt;iPX#$ z19&G&pivp{&SDYQ>v(|R$kyN>NE{jf9!u0zMk;8WHN=GYki}5s0}%--&5$Li5!h0P z%N;mUho^EfJRy6fB$M5WA%LPcX{y)rQ3M4Wu0JXSrark>nPv)JFHf+*6HL`|E2Xox z?05qAXj#w9LD^?ilMe=z!l~1cB`W}9LeIybxJ{VRDv>9dnV6Ex=~xG$vj^D{+3{S( z+LNiF<|HVB^F#8wnZ1P?mg=6Xr$ScNGI{N~<aHeP<F1&LR4coeS15AHO|Buhq;N)# z5RALw$~q1ifr)fNBAHMW7aw`~lBP^K*|Xyfg#{EaT699um7FR&#)~E-6Z?0C1*wx5 zSw)|~HA01xl!UIXm@JAAxshYX9nX$QSrwh_hU1NF{e%-&@oZJg<su!8Xs)uSOsSyA zGwGXP3M$x^FRKMpz=#D0;8$=q=ZYdLHK#<duL{-0^$KTiqD^WQz?RB%$CZF&1#T3O zeVur9>gwDipe&ni2pMIMIyI;%ECqLge8&K3<Y-!vpp=V31}kyi(yH3^p@Nz-^bDkC zz87ICX!@d1QgOor6SxHx4kRuWhy?D>eS|m2TIn1Jj6EYN<(%G!f=q=L5*p;KOtqN? zs=4xzUoB<ILuN?C4pXjFMB(TmU(2vw!fgw)-oq18wYV3wb(Ezi)R-9GA8Yf<S2?S^ z)A8D}So~|Fyn2WxoeI0aOag{Qj2?)|uyvh)hu$1@kElGaD61H9Q_-NHt-c)^;y^W` zu^hRY2jG%&SfdoU7*;6nq%>)Q-HIV0Xa#c5FbF`Kp)pyW-Hj`ll$<dwF<OhqA*06= z`BdDJit`OGa{_J3$ws@cT+L=9?A)?um}p8=HW=he%T2dLOQ2&pn$0QDs4+I<?gSMw zFF$Z;<8j)m$DN7-?aw!4O0%L0*e9A%thB*zouL@cPt8<2xms5z;_fhwbwsY9lL_5W z^#U}36$Ls`62X&r5pyW4aQB2UYLym^PwotQoL1j6<2YI<hHOOvQaO9za?D9^=9+UX zNrrA3uc?nQCuWQhH*dh402;M8pj|XMtxGTiWjv7>p(52#Dz8A&Bt%xd`$vO$L@|Rs zv4Oaj;i?yxQXGfk5-a+3a>mR3N>5%?R!zq@)l3#TKPNjlfU<9RhewxGbggQkYDh2- zkc~{n@G1$=yn9L2d3QxcjSf@c%f+xm<5|W^j8mXVM@7fURW%xBfcI7eI+r+;fzg!) zRUP8Y*M@^P0LI|IEYz?9;)@t=7f$G$**BYe$g`3(9Is)1TY#Ao3}hL7aSu3!?zhUc z;T208qIhoq>?LK_LRda1*-{X^{I(xcIM*$4&$@2r@nZo-QN<e!FL9?OQ&+QDr}Vw+ z#MNvX#UepjpcJ5dE+6Q4ZHujqlzWz2XfcUjMd!(xS%rl(t~DHxMT4I*lT>Z&EOSar zTIh<g!l8-l&=A^VK;NM{4T?9`S=@SoD{{twv{`dJVNirdy%uq$ygMiImQ~hLTHZ{1 zZ#pTbrQ%ImX%|JclU9>%myP*(nO{k&aFdJd|I^D;9zg1tGwani%rw3;&3I*b%QZx4 zu_ZaTrxdWb3#L{qpUBp1Ig<b78M72Ez^V`NsnQ)hWMHboZL^wWrHmZEU#2@<msi;& zPWB-|uIDq=8&kIoL4s5?N8~;_>M>2HOyH)m8n{tWO+_~y_o1H62wRd-)a1-L1po{U zq{|5TCg;XAVNL}sPR#fMIu~da2j#MK{00Uzl>o)1FM#jXN~>~@!`&7G4{zg&!=ogo z7JK+otiV=gz#W&`@vM}S*h_t`3}%`K>qG#@h0sNm6~z}Wj5BgKbad+(k+2&UnAwc5 zq@!x?Q!Ef|)nOi`Wnmsg?|PXvT=8TrsbmbRrm37}NJ+Dp(@V8Z-7>3ADbCEG!YwJy z1e70Wa+EVPt*l<;$_OeP<+vNs5ZxDMCte|2Lw?B`lVt)CCImcq6R&DQ!|N>t4ZRk? zlb*W>x_r06r)i;F00fclkejhCOXs*KD9xkxM{W~^NwS+JDW-BIOM&q*c2mK)WMHZ) z%_k!ttj$EB=SfDBimbu>6s}^J({MMhqDf|FCh{#d;CX~@VOa*ugp#^e#>hK23Dm2( z62kFy<l0c$*Hk`1KV(W1O2WVeyZ7EO`^d^FFSBz+$vPOxi5o7t15-6#PQl$7o-*Qw zuBM{d``s9-=ClN5C;wW{!F4>qjsi%-BrIATG#z5x&6S7>lPku_h?R@fa6Q5LAtAwU z$0(C%`PPN6e+R!X=b^_0dTRvIDWazVL-wMl%}p9v%#IqKkj(VPo8#q3{Z$+nA4xON zJB>yj2Kmgnxq`!GumUx6rPy3*rS`0zwI*{aH^Fds)~>JdHJVHwt{%|2DzrxxjC)4D zhAE9HOM1n8me>JZa?CU+N7r^n)d@<G5BN4VLxs55Rv2Gdu;!`<ZpP3QqxM=&&SYhI zN=nvjS{Df*V!3F*m5QK8!TVhqqE@ODm?JweiIw8j&J_n)dk(m-O?pZKO7(sx5>Jfq z(2*uSA|5t~iyPF-D3u4>DzBzgTk(Eo2y#wdT5}n}pG~mGbKj7uxCX2yEG}laxW-+P z-RsWqydluzmbLm#7<HdCz!g8dUHpR!tg4ZTNl3YX2HWglkb5dfKhQAO3X-xmnJA<6 za&arIIAghEYu$kbu^2!Mh{Iqwc~o+Ws&9<C{*3mB(mD?L^Xzl0Co<sazA9bkN#xY4 z4W2Zh1Q1?WV1Fw)>*nY)zgk-`)MOwnndyv_jiV6+YAxdMYBJQKAt&<4<3I#xh67F- z3zX1>g@%U30{ok0FMi}p-&5{*;*@>GsTVpTXFhw8&?pGvP{Ys)Q5+J6ZWRPuU*FO) z(y&y7s>rkgn16%_kc6vHc<p{twbF6)9bbadm4L#-0p#H5%?d1OSn&HtkTkRHEBAkM zQTndu|Ir@V_Il{hD{sGKzw+__I9HvuI)cRt`9teOF(iZ@0kJ-N`15h=FTXonx;YUG z?)(3InIeu%)AIKQeqDHMmo47=_E#SL^*KMZ|NYq7XTE-9av_#!&_B3Z6bFUD`$48p z4t1WM{e$1HW6p;RH8q7qTN)}AHYr)sZ~#s9K@sr6K#5vVJuy=D`;xHG+S-F;^4X^r z-97h;r{DU9eZxoBy*2*)>7(|8hmsFn^wk>|*thQ(`Jd?>gF!6ZK<mJWC=Lh%NVt#v z;)!LS7+CSU3gI&O9Q^;YW$SWeJCwQS+B?O$AF`kHom{i(Th?#v$FKc%&%Y**YxV}a zZQElbuTEguf~~>Dq8Jo{CqcG5ukCtu*6U9%E!7V(CUWxk;b2fOWlB_sc0nHITJ!#^ z&(z7<*Jj(N)tzDAGh3qe12=b`xnlOC7hs{n{xDcGEQB8fp+2+a#1(REY&#QjvZhE? z0xiB8{y-v-&w^p$;#$h0FzY}{nPvNbHJ!U@RpRgL<DdTi<7Zd?#D}@HH?#*uv0Z4- z0=LKhVSmfd&;O?aPX*x5Ge;IWI67&Y!*Y4tXRN&EmaFZdm3?pi)t;cE^)7!GXuV75 zx&c^rW`DW=(Z7AOnK>X*_XPZ@MLaPb$4xz-v+K8*0v&YJ;rjf8JFeOCn!ne6c|+r0 z>^eRFEqu^OLu92WMuf<I;JRV#^Y4u8-uhZOSP^^c%A{j&r_MmQ=73HJ@C;p6g+mVW z@UV+Up$NR3<2-RFNmvnzPz1eD8+P}BZ(ZqO-U8uAe+8SBcn&uROP+@?3Wk}uDLyX# z1ndCr0-*>LVlYYrF-lE59AJNQ4p0<a(aJ=32=WL$!a^Xh4C#H2{a-(j!xIe`{?I;~ zpLP4)-|TzTZruG_|I1^(EA68<{iNsUzuB8@edC?yti9r=x7wGS|A%j!tNin)?flT1 z!4I_iPud?j^X&_br+#|GzH9B$(Ux0(S!aKu)Bmd4|J;~;<n$MgsDIqP78|lT(0r9B zHVbV5Fl6s*e^@Zk`pz?0B4Rz{KD8RI%q+-_AWX;BY}&l$vP-X8Gxos%j1B_3$<~#Q zu^YwKkN-Zi=R2?ThV6MDc~Pp9cC5sb#u{SFL@_4B4uhnj%f2`E+Y^_KRY0GqW*KYz zDVU7o&1WxpV&RrIm#s4G(DUXkx4iJ5v+X%+?)=QDi-KRb|N9ezsZTvLdIuJ)zqLOk ziv2?W-5^-*p<f@laPGAxqe5hGUeF=^_>s9q`;(~`_TAR_@%!+O{s#X-QS=M`aoF+8 zdphE4P2c^lhZEi5zqaCU+SG(WO0>6s==66M-t)lAc+-xi4iK|L=-3RKu6}RifsUto zA9oOr>}ePo{*H}}SSO;r_U%O<d-!)h8^$|!HgpC=u~X<=4?8|L@15Hc7yPWd)cMK2 z;6l88*+?lvyW`=%8DILNYu>i+{pi7L<Lqx(m}R%W8_=#>=tgMwgE!~z|N8K?KjN`; z>X_QO;#@b&9{zdc>GL=Dnf9i}$FKR=sV{yBbM5i>fa~=LJqYc-vj51w;ndIX_CPxq z&I11r&<NYT&VKrLx6fYq`p}o{$%E(Ke|X-=x%Tn8JGLG;dsT<MXlc{p4Rb!X**2H$ z+Oqe`SDvz;diA-(M}9HA-2UG~-Iw%y_1G5sNBY%w9Q(d;8`frhpnkb1)(cGtaz1?1 z2f`z_{qiNA4YN5T!Ht_D6bH~7py*GzP@Z&C^X_+FczHZ|-dF7lPkrR2W2b+d!d!d( zy`!SoEA%28b`L*jU+_fFA6fSY53EuMxUm;eNrH+v-rCrR!*{m*+fP3IUeC5i&e(;E zezxR|r3d`>osD(%U$B1v*O+-<LmvcmpU{Wg_Kkbac}5znKh82ovlqU*I&>k#GFP5z z*yIv%lL!^-ffwKY%*mIx?Xce*8~^gBp839Hf9vQ6K6||D&7D}RKtlk;3J8Ix1mV0F z0f(4>VzGs|mw5och{d|+q4H;KHF--dNsJiK1A#q?Qjc1iR{XRbp;cqC&ap4~=!egK z>YcBBvHXBwL*v<RkKX>qwhZc-q3a98<1`bIAB07Vn%$Ljr$3@EE~wY*Z}f=`bq#)> zIHzt7`rJ5Y7kuh-;QQ7<>j-?VYTe`$=he-Fr}H+>gQxTKdGNG%SFi3v$)*`TQ~d?_ zyt)6F50%~UO;8Ko0G|hgcluD10N)Jg1F&k~(7;_jaq#fq=X_%5Sm<7#7(N<4;S=r1 z=~L5heRp&dIY(ZH+gV*nLUXB4xJ8vPJPa+Q^A8<Bq)tA!entJ5PpscspYVyzh35S} zvE_p;m&0eF1%7U=Yn|^y8K==F_HFFj4zh0ShtJ?u!QCL!)&W=*Nk=T77~2|ypY697 z@0hysp6jk<p;c&VY9jnE5XAGE&g&Az^Mv!dg!5_IEY{;B=h0MU)4G|a6pHc`Drlh4 zK&D+HZDDDrK}%xNYq!)l)pvmgnwsI$Kk8rQ6Wf=yuZFX)=m2eWj&xq^6T2?%8uy9a z7k9&F&sfi9u;uDruyJ5C0Q7yMeegNBc@Q)c+7?QIg*J!b=g4>jG&ZzuXsb`Wj21*V z?8}NRP*WWkCsv5v`0gxFX*zaDco!Lt)>95xR21Dpb2E^MvCCtd@xtY?q`Q!m{4V_A z)&STv0Cl7g*@vjXe)}GB*pR-91OT1|K#Pl{3f~>RACZIG-S3i<eytSw5vl@^;}tiD z58)Mhn4E){gmn)*6oI<=TwpVp9NdEz4UP@&q2A<3M;f;3i`y@6A4iMZ7qyR<Eha8h zeR0>OuB~Ws*GSjavc;s{cGQm{T4-!UN^G0o)`J$c)wT7wDklXzRU&FymVg!!ee34d zoroU5VW+D_Qjk@btaEkeI<%;BVduIs$w*dr?dy~)U|{49^_SOUcYqMz?D8V%-1WY) zM#fz?w{7l1#BOfg+?DQ`$n2-o(l9jwLnE7o4u+1R1tBYR)LlRVwfdpDH+5rmcaL<J ztDE#Wo>DGoTY#lpP`7|cNh%vx8PGbyiI9Nx$$IQm0CRg>O`O^E<No*VIul%X>6UdH zF5MJg2VvIQ4~an4l|adt&{>HKXW>u57Evsc(FtSU5!b%K8-oXsDgee0xSU9fS0Pnv zTWc4h1(5A>X-TX1{+m<qM}Syy{`~n^EA#8-U+<cN^d;3z;UDv_M}qi+{`F=4MM^{F zu*8`gIvRp#9pu5FdjK;0at{k5G}i<J$pLHv$Qi^01ca*#7TFa^A_kF*BgrzsNWaVo zMy${}+PV^JHqg4#6^s-syg+HWspT*thn#oVB_}OA0o-cC3_xC__7;E3BD_Og%Q{!> zr28j3l+8(8$Zk$G=g`9Dt<5*N3(1hc^?qj50Lnzj+OoYRf!U3><lI$9UOTntnwFRF z$cLobbJ{nxZ(D`hySh~()QISFV_@qlRK~*3HW>?+Mm6fTUHlHN3vNPOf+N9AE*Fw^ ztDCH6YYzsvp5;9|%S=WZvQl;>>7r+<2j`=n-97tUcBCJnMy`3jBeb<4Ma}7%gY5z} z+Cg_uQZQ6MLhn_*+tImum-TKhI|Av8{^a;<oZpD!v$3v`#3$*FtEi<r*L^*brh9ug zSwT7g$F)k+QQ*<QlZZHQU*JjiykxrR^dQAaC;-NM&`|sKb{(w%SJCfv@+>K!s%xlk ztPcZ5U$CznFvvWanyfVY1@8*phnPWmd!HL<q^+r;MS_q)HVy0yU{C;8zS}(`8L)Gi z4t#FlBw`8`^huW~Y4Kbzh^VmjEZDklSKn?#3Z?FDT39<uA<dwpbKE?-!PuAU!v^Y0 z_7MY-xl^f0O9HEZbw5^Lf24oCdje92R@eE^_8~0W&<BThmw6?b6w>3r-!PfiGY^Le zG%F-b$i%Dy$oqHpW9)%OAmOT$3=$}RJf?LsV*S4QTaiwoWxCa+C$l$(o+Oq2Pxqfd z^w1QYaOugkyi}bfz|ocK!UpKt-bD;R#(WG1k{$Y|`uAfFss8;g2hws>SAWO)4h)7J zk&aDe>L-^f6{-p*f@#DEx}~(sh_oWr8HM(QvS?9geJESTh+Hw1>Y>D~2G$SYdT(HK zV6*F1WNK516ixG+aN*ii*F*|e(yLRYk;x2L68d1VH`|K=8X8#AFpw)Qx}?<d1N#QB z<)MKkmM2YG_2UP|0ys7T!9Y2*kjuW(;}?t2!J7vUBE1djgT#l)r683KO*7#z2t@`@ z44%Z~hX)BNkb6xYdFZ~-!`LdvLJzy9B)7AbcewxzFmw}#aznTl97+xyc+o)-(tuV! Re>fT5gBXR!!e#x>{{fNv;Di7G literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c new file mode 100644 index 00000000..09c3e39f --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c @@ -0,0 +1,105 @@ +#include <stdlib.h> +#include <time.h> +#include "helix.h" +#include "editor.h" +#include "theme.h" + +void helix_mode() { + if (current_mode != HELIX) { + current_mode = HELIX; + switch_to_theme(&currentThemeIndex, 7); + targetModelineHeight = 21.0f; + targetMinibufferHeight = 0.0f; + } else { + current_mode = NORMAL; + targetModelineHeight = 35.0f; + targetMinibufferHeight = 21.0f; + srand(time(NULL)); + + int randomThemeIndex; + do { + randomThemeIndex = rand() % 8; + } while (randomThemeIndex == 7); // Ensure the random theme is not Helix + + switch_to_theme(&currentThemeIndex, randomThemeIndex); + } + + minibufferAnimationProgress = 0.0f; + isModelineAnimating = true; + isMinibufferAnimating = true; +} + +void update_cursor_color(Editor *editor) { + // Check for no text + if (editor == NULL || editor->data.items == NULL || editor->data.count == 0) { + // Handle the error or return with a default color + currentTheme.cursor = themes[currentThemeIndex].notext_cursor; + return; + } + + size_t cursor_pos = editor->cursor; + + // check if cursor is at EOF + if (cursor_pos >= editor->data.count) { + currentTheme.cursor = themes[currentThemeIndex].EOF_cursor; + return; + } + + // Check if the cursor is on a whitespace + if (isspace(editor->data.items[cursor_pos])) { + currentTheme.cursor = themes[currentThemeIndex].cursor; + return; + } + + size_t current_pos = 0; + size_t token_index = 0; // Current token being processed + + while (current_pos < editor->data.count && token_index < editor->tokens.count) { + Token token = editor->tokens.items[token_index]; + size_t token_end = current_pos + token.text_len; + + // Check if the cursor is within the current token + if (cursor_pos >= current_pos && cursor_pos < token_end) { + Vec4f color = get_color_for_token_kind(token.kind); + currentTheme.cursor = color; + return; + } else { + currentTheme.cursor = currentTheme.text; + } + + // Advance to the next token or character + if (cursor_pos < token_end || strncmp(&editor->data.items[current_pos], token.text, token.text_len) == 0) { + current_pos = token_end; // Skip over the token + token_index++; // Move to the next token + } else { + current_pos++; // Move to the next character + } + } +} + + + + +Vec4f get_color_for_token_kind(Token_Kind kind) { + switch (kind) { + case TOKEN_KEYWORD: return currentTheme.logic; + case TOKEN_STRING: return currentTheme.string; + case TOKEN_TYPE: return currentTheme.type; + case TOKEN_PIPE: return currentTheme.pipe; + case TOKEN_TRUE: return currentTheme.truee; + case TOKEN_FALSE: return currentTheme.falsee; + case TOKEN_NULL: return currentTheme.null; + case TOKEN_PREPROC: return currentTheme.hashtag; + case TOKEN_POINTER: return currentTheme.pointer; + case TOKEN_EQUALS: return currentTheme.equals; + case TOKEN_GREATER_THAN: return currentTheme.greater_than; + case TOKEN_LESS_THAN: return currentTheme.less_than; + case TOKEN_EQUALS_EQUALS: return currentTheme.equals_equals; + case TOKEN_COMMENT: return currentTheme.comment; + case TOKEN_ARROW: return currentTheme.arrow; + case TOKEN_FUNCTION_DEFINITION: return currentTheme.function_definition; + case TOKEN_ARRAY_CONTENT: return currentTheme.array_content; + default: return currentTheme.cursor; + } +} + diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c.blob new file mode 100644 index 0000000000000000000000000000000000000000..e186078b212cc89c4a1b0e0edc380a8a2ef2f00a GIT binary patch literal 15904 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h new file mode 100644 index 00000000..24d0cd57 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h @@ -0,0 +1,10 @@ +#ifndef HELIX_H +#define HELIX_H + +#include "editor.h" + +void helix_mode(); +void update_cursor_color(Editor *editor); +Vec4f get_color_for_token_kind(Token_Kind kind); + +#endif // HELIX_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b802b66bce40de1ef28f2bc34a2a756a91266c9c GIT binary patch literal 12864 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 EKPs228~^|S literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@la.h b/.ccls-cache/@home@l@Desktop@test@ded/src@la.h new file mode 100644 index 00000000..e931fe27 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@la.h @@ -0,0 +1,41 @@ +#ifndef LA_H_ +#define LA_H_ + +typedef struct { + float x, y; +} Vec2f; + +Vec2f vec2f(float x, float y); +Vec2f vec2fs(float x); +Vec2f vec2f_add(Vec2f a, Vec2f b); +Vec2f vec2f_sub(Vec2f a, Vec2f b); +Vec2f vec2f_mul(Vec2f a, Vec2f b); +Vec2f vec2f_mul3(Vec2f a, Vec2f b, Vec2f c); +Vec2f vec2f_div(Vec2f a, Vec2f b); + +typedef struct { + int x, y; +} Vec2i; + +Vec2i vec2i(int x, int y); +Vec2i vec2is(int x); +Vec2i vec2i_add(Vec2i a, Vec2i b); +Vec2i vec2i_sub(Vec2i a, Vec2i b); +Vec2i vec2i_mul(Vec2i a, Vec2i b); +Vec2i vec2i_mul3(Vec2i a, Vec2i b, Vec2i c); +Vec2i vec2i_div(Vec2i a, Vec2i b); + +typedef struct { + float x, y, z, w; +} Vec4f; + +Vec4f vec4f(float x, float y, float z, float w); +Vec4f vec4fs(float x); +Vec4f vec4f_add(Vec4f a, Vec4f b); +Vec4f vec4f_sub(Vec4f a, Vec4f b); +Vec4f vec4f_mul(Vec4f a, Vec4f b); +Vec4f vec4f_div(Vec4f a, Vec4f b); + +float lerpf(float a, float b, float t); + +#endif // LA_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@la.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@la.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5c10933afe40dc07fef0dd574a2e47d6f2d5a937 GIT binary patch literal 17730 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 AaR2}S literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h b/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h new file mode 100644 index 00000000..3a379bc8 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h @@ -0,0 +1,79 @@ +#ifndef LEXER_H_ +#define LEXER_H_ + +#include <stddef.h> +#include "./la.h" +#include "./free_glyph.h" +#include "./common.h" + +typedef enum { + TOKEN_END = 0, + TOKEN_INVALID, + TOKEN_PREPROC, + TOKEN_SYMBOL, + TOKEN_OPEN_PAREN, + TOKEN_CLOSE_PAREN, + TOKEN_OPEN_CURLY, + TOKEN_CLOSE_CURLY, + TOKEN_SEMICOLON, + TOKEN_KEYWORD, + TOKEN_COMMENT, + TOKEN_STRING, + TOKEN_COLOR, + TOKEN_EQUALS, + TOKEN_NOT_EQUALS, + TOKEN_EQUALS_EQUALS, + TOKEN_EXCLAMATION, + TOKEN_LESS_THAN, + TOKEN_GREATER_THAN, + TOKEN_ARROW, + TOKEN_MINUS, + TOKEN_PLUS, + TOKEN_TRUE, + TOKEN_FALSE, + TOKEN_OPEN_SQUARE, + TOKEN_CLOSE_SQUARE, + TOKEN_ARRAY_CONTENT, + TOKEN_BAD_SPELLCHECK, + TOKEN_LINK, + TOKEN_OR, + TOKEN_PIPE, + TOKEN_AND, + TOKEN_AMPERSAND, + TOKEN_MULTIPLICATION, + TOKEN_POINTER, + TOKEN_TYPE, + TOKEN_FUNCTION_DEFINITION, + TOKEN_NULL, + } Token_Kind; + +const char *token_kind_name(Token_Kind kind); + + +// TODO add a size_t position +typedef struct { + Token_Kind kind; + const char *text; + size_t text_len; + Vec2f position; + int nesting_level; // TODO + Vec4f color; // <-- New attribute +} Token; + +typedef struct { + Free_Glyph_Atlas *atlas; + const char *content; + size_t content_len; + size_t cursor; + size_t line; + size_t bol; + float x; + String_Builder file_path; + bool in_array; // to remember if we are inside an array +} Lexer; + +Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len); +/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path); */ +Token lexer_next(Lexer *l); + +#endif // LEXER_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ae71d6a6af07c3c8fbc40eac848bbe9490786cc5 GIT binary patch literal 18004 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h b/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h new file mode 100644 index 00000000..cb1efebe --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h @@ -0,0 +1,39 @@ +#ifndef LSP_H_ +#define LSP_H_ + +#include "file_browser.h" +#include "editor.h" +#include <pthread.h> + +// Struct to store LSP response +typedef struct { + int id; + char *method; + char *params; +} LSPResponse; + +extern pthread_t receive_thread; + + +/* void start_clangd(); */ +void start_clangd(Editor *e); +/* void shutdown_clangd(); */ +void shutdown_clangd(Editor *e); +/* void send_json_rpc(const char* method, const char* params, int request_id); */ +void send_json_rpc(int fd, const char* method, const char* params, int request_id); +void* receive_json_rpc(void* arg); +void goto_definition(Editor *e, File_Browser *fb); +void handle_lsp_response(LSPResponse *response, Editor *e); +void convert_uri_to_file_path(const char *uri, char *file_path, size_t file_path_size); +char *url_decode(const char *str); +void get_current_file_uri(Editor *e, File_Browser *fb, char *file_uri, size_t uri_size); +void parse_lsp_response(const char *response_json, LSPResponse *response); + + + + +void send_did_open_notification(Editor *e, const char *file_uri, const char *file_content); +void send_initialize_request(Editor *e); +void send_initialized_notification(Editor * e); + +#endif // LSP_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9033087615cc0bfa057631a9bfad3337cd1dfeb1 GIT binary patch literal 16245 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 MOzNJ(Swian0Y6~@O8@`> literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@main.c b/.ccls-cache/@home@l@Desktop@test@ded/src@main.c new file mode 100644 index 00000000..62313495 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@main.c @@ -0,0 +1,2434 @@ +#include <SDL2/SDL_keyboard.h> +#include <SDL2/SDL_keycode.h> +#include <stdio.h> +#include <stdlib.h> +#include <stdbool.h> +#include <errno.h> +#include <string.h> +#include "common.h" +#include "helix.h" + +#include <dirent.h> + +#include <SDL2/SDL.h> +#define GLEW_STATIC +#include <GL/glew.h> +#define GL_GLEXT_PROTOTYPES +#include <SDL2/SDL_opengl.h> + +#include <ft2build.h> +#include FT_FREETYPE_H + +#include "./editor.h" +#include "./file_browser.h" +#include "./la.h" +#include "./free_glyph.h" +#include "./simple_renderer.h" +#include "./common.h" +#include "./lexer.h" +#include "./sv.h" + +// added +#include <libgen.h> +#include <limits.h> +#include <stdbool.h> +#include "yasnippet.h" +#include "render.h" +#include "evil.h" +#include "emacs.h" +#include "buffer.h" +#include "theme.h" +#include "unistd.h" +#include "M-x.h" +#include "lsp.h" +#include "treesitter.h" +#include "clock.h" + +#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) + +#define FONT_DIR "~/.config/ded/fonts/" +/* #define DEFAULT_FONT "jet-extra-bold.ttf" */ +#define DEFAULT_FONT "radon.otf" +/* #define DEFAULT_FONT "minecraft.ttf" */ +/* #define DEFAULT_FONT "iosevka-regular.ttf" */ +#define MAX_FONTS 20 +#define MAX_PATH_SIZE 1024 + +char *fonts[MAX_FONTS]; +int font_count = 0; +int current_font_index = 0; + + +// TODO: Save file dialog +// Needed when ded is ran without any file so it does not know where to save. + +// TODO: An ability to create a new file +// TODO: Undo/redo system +// DONE: Delete a word +// DONE: Delete selection +void MessageCallback(GLenum source, + GLenum type, + GLuint id, + GLenum severity, + GLsizei length, + const GLchar* message, + const void* userParam) +{ + (void) source; + (void) id; + (void) length; + (void) userParam; + fprintf(stderr, "GL CALLBACK: %s type = 0x%x, severity = 0x%x, message = %s\n", + (type == GL_DEBUG_TYPE_ERROR ? "** GL ERROR **" : ""), + type, severity, message); +} + +static Free_Glyph_Atlas atlas = {0}; +static Simple_Renderer sr = {0}; +static Editor editor = {0}; +static File_Browser fb = {0}; + + +FT_Face load_font_face(FT_Library library, const char *font_name, FT_UInt pixel_size) { + printf("Loading font: %s at index: %d\n", font_name, current_font_index); + char font_path[MAX_PATH_SIZE]; + const char *homeDir = getenv("HOME"); + snprintf(font_path, sizeof(font_path), "%s/.config/ded/fonts/%s", homeDir, font_name); + + FT_Face face; + FT_Error error = FT_New_Face(library, font_path, 0, &face); + if (error == FT_Err_Unknown_File_Format) { + fprintf(stderr, "ERROR: `%s` has an unknown format\n", font_path); + exit(1); + } else if (error) { + fprintf(stderr, "ERROR: Could not load file `%s`\n", font_path); + exit(1); + } + + error = FT_Set_Pixel_Sizes(face, 0, pixel_size); // Set pixel size for the loaded font face + if (error) { + fprintf(stderr, "ERROR: Could not set pixel size to %u\n", pixel_size); + return NULL; // or handle the error in a different way + } + + return face; +} + +void prev_font() { + if (current_font_index == 0) { + // Already at the first font, don't do anything. + return; + } + current_font_index--; +} + +void next_font() { + if (current_font_index == font_count - 1) { + // Already at the last font, don't do anything. + return; + } + current_font_index++; +} + + +void populate_font_list() { + char path[MAX_PATH_SIZE]; + const char *homeDir = getenv("HOME"); + if (!homeDir) { + fprintf(stderr, "ERROR: Could not get HOME directory\n"); + exit(1); + } + + snprintf(path, sizeof(path), "%s/.config/ded/fonts/", homeDir); + + DIR *dir = opendir(path); + if (!dir) { + fprintf(stderr, "ERROR: Could not open directory `%s`\n", path); + exit(1); + } + + struct dirent *entry; + while ((entry = readdir(dir)) && font_count < MAX_FONTS) { + if (entry->d_type == DT_REG) { // If the entry is a regular file + fonts[font_count] = strdup(entry->d_name); + font_count++; + } + } + closedir(dir); +} + +void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas *atlas, int direction) { + if (direction > 0) { + next_font(); + } else { + prev_font(); + } + /* *currentFace = load_font_face(library, fonts[current_font_index]); */ + *currentFace = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); + + + // Dispose the old texture + /* glDeleteTextures(1, &atlas->glyphs_texture); */ + + // Reinitialize the atlas with the new font face + free_glyph_atlas_init(atlas, *currentFace); +} + +// TODO: display errors reported via flash_error right in the text editor window somehow +#define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) + +#include <signal.h> + +int main(int argc, char **argv) +{ + set_current_mode(); + initialize_themes(); + initialize_shader_paths(); + load_snippets_from_directory(); + + init_clock(); + + // lsp + start_clangd(&editor); + /* pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); */ + + + dictionary = load_dictionary("./dictionary", &dictionary_word_count); + if (!dictionary) { + // Handle error... + } + + + // Define hash seeds (these could be randomly generated for more robustness) + uint64_t seed0 = 0x12345678; + uint64_t seed1 = 0x9ABCDEF0; + + uint64_t seed2 = 0x1E7EDAD0; + uint64_t seed3 = 0x3E8A3D59; + + initialize_variable_docs_map(seed2, seed3); + initialize_variable_documentation(); + + // Allocate and initialize the commands hashmap + editor.commands = hashmap_new( + sizeof(Command), // Size of each element + 16, // Initial capacity + seed0, seed1, // Hash seeds + simple_string_hash, // Hash function + command_compare, // Compare function (you need to define this based on your Command struct) + NULL, // Element free function (NULL if not needed) + NULL // User data for compare function (NULL if not needed) + ); + + if (!editor.commands) { + // Handle allocation failure + fprintf(stderr, "Failed to initialize command map\n"); + return -1; + } + + initialize_commands(editor.commands); + + + Errno err; + + FT_Library library = {0}; + + FT_Error error = FT_Init_FreeType(&library); + if (error) { + fprintf(stderr, "ERROR: Could not initialize FreeType2 library\n"); + return 1; + } + + // TODO: users should be able to customize the font + /* const char *const font_file_path = "./fonts/VictorMono-Regular.ttf"; */ + /* const char *const font_file_path = "./fonts/jet-bold.ttf"; */ + /* const char *const font_file_path = "~/.config/ded/fonts/jet-extra-bold.ttf"; */ + /* const char *const font_file_path = "./fonts/iosevka-regular.ttf"; */ + + + /* char font_file_path_buffer[1024]; */ + /* const char *homeDir = getenv("HOME"); */ + /* if (homeDir) { */ + /* snprintf(font_file_path_buffer, sizeof(font_file_path_buffer), "%s/.config/ded/fonts/minecraft_font.ttf", homeDir); */ + /* } else { */ + /* // handle the error, for now, we'll just set it to the original value as a fallback */ + /* strncpy(font_file_path_buffer, "~/.config/ded/fonts/jet-extra-bold.ttf", sizeof(font_file_path_buffer)); */ + /* } */ + /* const char *const font_file_path = font_file_path_buffer; */ + + + + populate_font_list(); + + if (font_count == 0) { + fprintf(stderr, "ERROR: No fonts found in `%s`\n", FONT_DIR); + return 1; + } + + // Start with the default font + for (int i = 0; i < font_count; i++) { + if (strcmp(fonts[i], DEFAULT_FONT) == 0) { + current_font_index = i; + break; + } + } + + /* FT_Face face = load_font_face(library, fonts[current_font_index]); */ + FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); + + + /* original */ + /* FT_Face face; */ + /* error = FT_New_Face(library, font_file_path, 0, &face); */ + /* if (error == FT_Err_Unknown_File_Format) { */ + /* fprintf(stderr, "ERROR: `%s` has an unknown format\n", font_file_path); */ + /* return 1; */ + /* } else if (error) { */ + /* fprintf(stderr, "ERROR: Could not load file `%s`\n", font_file_path); */ + /* return 1; */ + /* } */ + + + FT_UInt pixel_size = FREE_GLYPH_FONT_SIZE; + error = FT_Set_Pixel_Sizes(face, 0, pixel_size); + if (error) { + fprintf(stderr, "ERROR: Could not set pixel size to %u\n", pixel_size); + return 1; + } + + if (argc > 1) { + const char *file_path = argv[1]; + err = find_file(&editor, file_path, 0, 0); + if (err != 0) { + fprintf(stderr, "ERROR: Could not read file %s: %s\n", file_path, strerror(err)); + return 1; + } + } + + const char *dir_path = "."; + err = fb_open_dir(&fb, dir_path); + if (err != 0) { + fprintf(stderr, "ERROR: Could not read directory %s: %s\n", dir_path, strerror(err)); + return 1; + } + + if (SDL_Init(SDL_INIT_VIDEO) < 0) { + fprintf(stderr, "ERROR: Could not initialize SDL: %s\n", SDL_GetError()); + return 1; + } + + SDL_Window *window = + SDL_CreateWindow("ded", + 0, 0, + SCREEN_WIDTH, SCREEN_HEIGHT, + SDL_WINDOW_RESIZABLE | SDL_WINDOW_OPENGL); + if (window == NULL) { + fprintf(stderr, "ERROR: Could not create SDL window: %s\n", SDL_GetError()); + return 1; + } + + { + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 3); + SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE); + + int major; + int minor; + SDL_GL_GetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, &major); + SDL_GL_GetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, &minor); + printf("GL version %d.%d\n", major, minor); + } + + if (SDL_GL_CreateContext(window) == NULL) { + fprintf(stderr, "ERROR: Could not create OpenGL context: %s\n", SDL_GetError()); + return 1; + } + + GLenum glewErr = glewInit(); + if (GLEW_OK != glewErr) { + fprintf(stderr, "ERROR: Could not initialize GLEW: %s\n", glewGetErrorString(glewErr)); + return 1; + } + + glEnable(GL_BLEND); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + + if (GLEW_ARB_debug_output) { + glEnable(GL_DEBUG_OUTPUT); + glDebugMessageCallback(MessageCallback, 0); + } else { + fprintf(stderr, "WARNING: GLEW_ARB_debug_output is not available"); + } + + simple_renderer_init(&sr); + free_glyph_atlas_init(&atlas, face); + + editor.atlas = &atlas; + editor_retokenize(&editor); + + + /* bool quit = false; */ + bool file_browser = false; + + while (!quit) { + const Uint32 start = SDL_GetTicks(); + SDL_Event event = {0}; + while (SDL_PollEvent(&event)) { + switch (event.type) { + case SDL_QUIT: + quit = true; + break; + + case SDL_KEYDOWN: + if (current_mode == NORMAL) { + if (handle_evil_find_char(&editor, &event)) { + break; // Skip further processing if the key event was handled + } + } + + if (file_browser) { + switch (event.key.keysym.sym) { + case SDLK_F3: { + file_browser = false; + } break; + + case SDLK_RETURN: { + const char *file_path = fb_file_path(&fb); + if (file_path) { + File_Type ft; + err = type_of_file(file_path, &ft); + if (err != 0) { + flash_error("Could not determine type of file %s: %s", file_path, strerror(err)); + } else { + switch (ft) { + case FT_DIRECTORY: { + err = fb_change_dir(&fb); + if (err != 0) { + flash_error("Could not change directory to %s: %s", file_path, strerror(err)); + } + } + break; + + case FT_REGULAR: { + // TODO: before opening a new file make sure you don't have unsaved changes + // And if you do, annoy the user about it. (just like all the other editors do) + err = find_file(&editor, file_path, 0, 0); + if (err != 0) { + flash_error("Could not open file %s: %s", file_path, strerror(err)); + } else { + file_browser = false; + } + } + break; + + case FT_OTHER: { + flash_error("%s is neither a regular file nor a directory. We can't open it.", file_path); + } + break; + + default: + UNREACHABLE("unknown File_Type"); + } + } + } + } + break; + + case SDLK_EQUALS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_next(&currentThemeIndex); + printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor -= 0.8f; + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } + } + } break; + + case SDLK_MINUS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_previous(&currentThemeIndex); + printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor += 0.8f; + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } + } + } break; + + case SDLK_q: + case SDLK_ESCAPE: { + file_browser = false; + } break; + + + case SDLK_r: + if (event.key.keysym.mod & KMOD_CTRL) { + file_browser = false; + } + break; + + + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); + } + break; + + case SDLK_UP: { + if (fb.cursor > 0) + fb.cursor -= 1; + } break; + + case SDLK_k: { + if (fb.cursor > 0) + fb.cursor -= 1; + } break; + + case SDLK_DOWN: { + if (fb.cursor + 1 < fb.files.count) + fb.cursor += 1; + } break; + + case SDLK_j: { + if (fb.cursor + 1 < fb.files.count) + fb.cursor += 1; + } break; + + // TODO cant go back more than the original direcory + case SDLK_h: { + // Copy current directory path + char current_dir[PATH_MAX]; + strncpy(current_dir, fb.dir_path.items, fb.dir_path.count); + current_dir[fb.dir_path.count - 1] = '\0'; // Ensure null-termination + + // Get parent directory + char *parent = dirname(current_dir); + + // Open parent directory + Errno err = fb_open_dir(&fb, parent); + if (err != 0) { + // Handle error, for example, print out an error message. + } else { + fb.cursor = 0; // Reset cursor position in the new directory + } + } break; + + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + followCursor = !followCursor; // Toggle the state + } + } + break; + + + case SDLK_l: { + const char *file_path = fb_file_path(&fb); + if (file_path) { + File_Type ft; + err = type_of_file(file_path, &ft); + if (err != 0) { + flash_error("Could not determine type of file %s: %s", + file_path, strerror(err)); + } else { + switch (ft) { + case FT_DIRECTORY: { + err = fb_change_dir(&fb); + if (err != 0) { + flash_error("Could not change directory to %s: %s", + file_path, strerror(err)); + } + } break; + + case FT_REGULAR: { + // TODO: before opening a new file make sure you don't + // have unsaved changes And if you do, annoy the user + // about it. (just like all the other editors do) + err = find_file(&editor, file_path, 0, 0); + if (err != 0) { + flash_error("Could not open file %s: %s", file_path, + strerror(err)); + } else { + file_browser = false; + } + } break; + + case FT_OTHER: { + flash_error("%s is neither a regular file nor a " + "directory. We can't open it.", + file_path); + } break; + + default: + UNREACHABLE("unknown File_Type"); + } + } + } + } + break; + } + } else { + switch (current_mode) { + case EMACS: + // TODO add all keybinds + switch (event.key.keysym.sym) { + + + case SDLK_z: { + if (SDL_GetModState() & KMOD_CTRL) { + current_mode = NORMAL; + editor.last_stroke = SDL_GetTicks(); + } + } + break; + + + case SDLK_BACKSPACE: + if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + editor.last_stroke = SDL_GetTicks(); + } + break; + + + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + followCursor = !followCursor; // Toggle the state + } + } + break; + + // TODO check if the snippet activated if not indent + case SDLK_TAB: { + activate_snippet(&editor); + for (size_t i = 0; i < indentation; ++i) { + editor_insert_char(&editor, ' '); + } + editor.last_stroke = SDL_GetTicks(); + } + break; + + case SDLK_r: + if (event.key.keysym.mod & KMOD_CTRL) { + file_browser = true; + } + break; + + case SDLK_n: { + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_line_down(&editor); + editor.last_stroke = SDL_GetTicks(); + } + } break; + + case SDLK_p: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_v: + if (SDL_GetModState() & KMOD_CTRL){ + editor_clipboard_paste(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_b: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_left(&editor); + } else { + editor_move_word_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_RETURN: { + editor_enter(&editor); + } + break; + + + case SDLK_EQUALS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_next(&currentThemeIndex); + printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor -= 1.0f; + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } + printf("zoom_factor: %.6f", zoom_factor); + } + } break; + + case SDLK_MINUS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_previous(&currentThemeIndex); + printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor += 1.0f; + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } + printf("zoom_factor: %.6f", zoom_factor); + } + } break; + + case SDLK_f: + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_s: { + if (event.key.keysym.mod & KMOD_CTRL) { + editor_start_search(&editor); + } + }} + break; + + case NORMAL: + switch (event.key.keysym.sym) { + SDL_Event tmpEvent; // Declare once at the beginning of the switch block + + case SDLK_RETURN: { + if (!toggle_bool(&editor)) { + editor_open_include(&editor); + } + } break; + + case SDLK_SEMICOLON: + if (event.key.keysym.mod & KMOD_SHIFT) { + current_mode = MINIBUFFER; + evil_command_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for ':' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ':') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + + // TODO ivy + /* if (!ivy) { */ + /* minibufferHeight += 189; */ + /* ivy = true; */ + /* } */ + } + break; + + + + case SDLK_d: + if (event.key.keysym.mod & KMOD_SHIFT) { + emacs_kill_line(&editor); + } else if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else { + emacs_kill_line(&editor); + } + break; + + case SDLK_c: + if (event.key.keysym.mod & KMOD_SHIFT) { + evil_change_line(&editor); + } else if (event.key.keysym.mod & KMOD_CTRL) { + automatic_zoom = !automatic_zoom; + } + + // Eat up the next SDL_TEXTINPUT event for 'C' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'C')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + break; + + case SDLK_m: + if (event.key.keysym.mod & KMOD_ALT) { + emacs_back_to_indentation(&editor); + } + break; + + + + case SDLK_ESCAPE: { + if (ivy) { + minibufferHeight -= 189; + ivy = false; + } + + if (editor.minibuffer_active) { + M_x_active = false; + editor.minibuffer_active = false; + } + + editor_clear_mark(&editor); + editor_stop_search(&editor); + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + } + break; + + + case SDLK_SPACE: { + if (SDL_GetModState() & KMOD_CTRL) { + if (!editor.has_anchor){ + editor_set_anchor(&editor); + } else { + editor_goto_anchor_and_clear(&editor); + } + } else if (!ivy) { + // TODO time delay whichkey + minibufferHeight += 189; + ivy = true; + } + } + break; + + case SDLK_5: { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_jump_item(&editor); + } + } + break; + + case SDLK_8: { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_word_forward(&editor); + } + } + break; + + + case SDLK_1: { + if (SDL_GetModState() & KMOD_CTRL) { + hl_line = !hl_line; + } + } + break; + + + case SDLK_o: + if (SDL_GetModState() & KMOD_SHIFT) { + evil_open_above(&editor); + } else { + evil_open_below(&editor); + } + + current_mode = INSERT; + editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'o' or 'O' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + break; + + case SDLK_LEFTBRACKET: + if (SDL_GetModState() & KMOD_ALT) { + switch_to_font(library, &face, &atlas, -1); + printf("Switched to previous font: %s\n", fonts[current_font_index]); + /* redraw_screen(); */ + } + break; + + case SDLK_RIGHTBRACKET: + if (SDL_GetModState() & KMOD_ALT) { + switch_to_font(library, &face, &atlas, 1); + printf("Switched to next font: %s\n", fonts[current_font_index]); + /* redraw_screen(); */ + } + break; + + + case SDLK_TAB: { + indent(&editor); + } + break; + + case SDLK_z: { + if (SDL_GetModState() & KMOD_CTRL) { + helix_mode(); + } + } + break; + + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + followCursor = !followCursor; // Toggle the state + } + } + break; + + + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); + } + break; + + case SDLK_y: + if (editor.selection) { + editor_clipboard_copy(&editor); + } else { + evil_yank_line(&editor); + } + break; + + + case SDLK_g: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_move_to_end(&editor); + } else { + editor_move_to_begin(&editor); + } + } break; + + case SDLK_SLASH: { + current_mode = MINIBUFFER; + editor.last_stroke = SDL_GetTicks(); + editor_start_search(&editor); + + // Consume the next SDL_TEXTINPUT event for '/' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '/') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } break; + + case SDLK_n: { + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_line_down(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_next_buffer(&editor); + } else if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_previous(&editor); + } else { + evil_search_next(&editor); + } + } break; + + case SDLK_p: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_previous_buffer(&editor); + } else if (copiedLine) { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_paste_before(&editor); + } else { + evil_paste_after(&editor); + } + } else { + editor_clipboard_paste(&editor); + } + break; + + case SDLK_b: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_left(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_kill_buffer(&editor); + } else { + editor_move_word_left(&editor); + } + break; + + case SDLK_f: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_right(&editor); + } + break; + + case SDLK_s: { + if (event.key.keysym.mod & KMOD_CTRL) { + // Ctrl+S is pressed + editor_start_search(&editor); + current_mode = MINIBUFFER; + } else { + // Either S or Shift+S is pressed + if (event.key.keysym.mod & KMOD_SHIFT) { + evil_change_whole_line(&editor); + } else { + evil_substitute(&editor); + } + editor.selection = false; + // Eat up the next SDL_TEXTINPUT event for 's' or 'S' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 's' && tmpEvent.text.text[0] != 'S')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + editor.last_stroke = SDL_GetTicks(); + } + break; + } + + case SDLK_EQUALS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_next(&currentThemeIndex); + printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor -= 1.0f; + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } + printf("zoom_factor: %.6f", zoom_factor); + } + } break; + + case SDLK_MINUS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_previous(&currentThemeIndex); + printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor += 1.0f; + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } + printf("zoom_factor: %.6f", zoom_factor); + } + } break; + + case SDLK_i: + if (SDL_GetModState() & KMOD_CTRL) { + showIndentationLines = !showIndentationLines; + } else if (SDL_GetModState() & KMOD_ALT) { + if (SDL_GetModState() & KMOD_SHIFT) { + remove_one_indentation(&editor); + } else { + add_one_indentation(&editor); + } + } else { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_insert_line(&editor); + } else { + current_mode = INSERT; + } + + editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } + break; + + case SDLK_v: { + if (SDL_GetModState() & KMOD_SHIFT) { + current_mode = VISUAL_LINE; + evil_visual_line(&editor); + } else { + current_mode = VISUAL; + evil_visual_char(&editor); + } + } break; + + case SDLK_4: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_move_to_line_end(&editor); + } + } break; + + case SDLK_a: + editor.last_stroke = SDL_GetTicks(); + if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held + editor_move_to_line_end(&editor); + } else { + // Move the cursor one position to the right + editor_move_char_right(&editor); + } + + current_mode = INSERT; + + // Eat up the next SDL_TEXTINPUT event for 'a' or 'A' + SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'a' or 'A' + if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != 'a' && tmpEvent.text.text[0] != 'A')) { + SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue + } + break; + + case SDLK_x: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_ALT) { + if (!M_x_active) { + current_mode = MINIBUFFER; + M_x_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for 'x' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'x') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + + // TODO ivy + /* if (!ivy) { */ + /* minibufferHeight += 189; */ + /* ivy = true; */ + /* } */ + } else if (event.key.keysym.mod & KMOD_SHIFT) { + evil_delete_backward_char(&editor); + } else { + editor_clipboard_copy(&editor); + evil_delete_char(&editor); + } + break; + + case SDLK_0: + editor_move_to_line_begin(&editor); + break; + + case SDLK_F3: + file_browser = true; + break; + + case SDLK_r: + if (event.key.keysym.mod & KMOD_CTRL) { + file_browser = true; + } + break; + + case SDLK_BACKSPACE: // yes you can delete in normal mode + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + } else { + editor_backspace(&editor); + } + break; + + case SDLK_h: + if (event.key.keysym.mod & KMOD_ALT) { + //if char under cursor is { or } and not editor-> selection + emacs_mark_paragraph(&editor, true); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_j: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if ((event.key.keysym.mod & KMOD_CTRL) && (event.key.keysym.mod & KMOD_ALT)) { + evil_open_above(&editor); + } else if (event.key.keysym.mod & KMOD_CTRL) { + evil_open_below(&editor); + } else if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { + move_camera(&sr, "down", 50.0f); + } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { + evil_join(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + + case SDLK_k: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { + move_camera(&sr, "up", 50.0f); + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_kill_line(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_up(&editor); + } else if (event.key.keysym.mod & KMOD_SHIFT) { + goto_definition(&editor, &fb); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + showLineNumbers = !showLineNumbers; + } else if (event.key.keysym.mod & KMOD_ALT) { + select_region_from_inside_braces(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_DOWN: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_down(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + } + break; + + + case SDLK_UP: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_up(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_up(&editor); + + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } + } + break; + + + + case SDLK_RIGHT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_right(&editor); + break; + + case SDLK_LEFT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_left(&editor); + break; + + + case SDLK_w: + if (event.key.keysym.mod & KMOD_CTRL) { + showWhitespaces = !showWhitespaces; + }else{ + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_word_right(&editor); + } + break; + + case SDLK_e: + if (event.key.keysym.mod & KMOD_CTRL) { + isWave = !isWave; + /* current_mode = EMACS; */ + /* editor.last_stroke = SDL_GetTicks(); */ + } + break; + + // additional NORMAL mode keybinds here... + } break; + + case INSERT: + switch (event.key.keysym.sym) { + SDL_Event tmpEvent; + + case SDLK_x: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } + break; + + + case SDLK_n: { + if (SDL_GetModState() & KMOD_CTRL) { + evil_complete_next(&editor); + editor.last_stroke = SDL_GetTicks(); + } + } + break; + + + case SDLK_SPACE: { + if (SDL_GetModState() & KMOD_CTRL) { + if (!editor.has_anchor){ + editor_set_anchor(&editor); + } else { + editor_goto_anchor_and_clear(&editor); + } + } + } + break; + + case SDLK_i: + if (SDL_GetModState() & KMOD_ALT) { + if (SDL_GetModState() & KMOD_SHIFT) { + remove_one_indentation(&editor); + } else { + add_one_indentation(&editor); + } + + editor.last_stroke = SDL_GetTicks(); + // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } + break; + + case SDLK_o: + if (SDL_GetModState() & KMOD_CTRL) { + evil_open_below(&editor); + // Eat up the next SDL_TEXTINPUT event for 'o' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != '0')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_a: { + if (event.key.keysym.mod & KMOD_CTRL) { + editor.selection = true; + editor.select_begin = 0; + editor.cursor = editor.data.count; + } + } + break; + + case SDLK_h: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_left(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_backspace(&editor); + + // Eat up the next SDL_TEXTINPUT event for 'h' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'h')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_j: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_k: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + // TODO if no snippet was activated indent() + // TODO if no snippet was activated dont move the cursor + case SDLK_TAB: { + /* char word[MAX_SNIPPET_KEY_LENGTH]; */ + /* if (get_word_left_of_cursor(&editor, word, sizeof(word))) { */ + activate_snippet(&editor); + /* } else { */ + /* indent(&editor); */ + /* } */ + break; + } + + + case SDLK_F3: + file_browser = true; + break; + + case SDLK_MINUS: + if (SDL_GetModState() & KMOD_CTRL) { + zoom_factor += 1.0f; + + + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } + + printf("zoom_factor = %f\n", zoom_factor); + // Consume the next SDL_TEXTINPUT event for '-' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (!(tmpEvent.type == SDL_TEXTINPUT && tmpEvent.text.text[0] == '-')) { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + break; + + case SDLK_EQUALS: + if (SDL_GetModState() & KMOD_CTRL) { + zoom_factor -= 1.0f; + + printf("zoom_factor = %f\n", zoom_factor); + + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } + + // Consume the next SDL_TEXTINPUT event for '=' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (!(tmpEvent.type == SDL_TEXTINPUT && tmpEvent.text.text[0] == '=')) { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + break; + + case SDLK_9: { + if (event.key.keysym.mod & KMOD_SHIFT) { + char pair[] = "()"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + + // Consume both characters '(' and ')' immediately + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume '(' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '(') { + SDL_PushEvent(&tmpEvent); + } + SDL_PollEvent(&tmpEvent); // Consume ')' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ')') { + SDL_PushEvent(&tmpEvent); + } + } else { + editor_insert_char(&editor, '9'); + + // Consume the next SDL_TEXTINPUT event for '9' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '9') { + SDL_PushEvent(&tmpEvent); + } + } + } + break; + + case SDLK_LEFTBRACKET: { + if (event.key.keysym.mod & KMOD_SHIFT) { + char pair[] = "{}"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + + // Consume both characters '{' and '}' immediately + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume '{' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '{') { + SDL_PushEvent(&tmpEvent); + } + SDL_PollEvent(&tmpEvent); // Consume '}' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '}') { + SDL_PushEvent(&tmpEvent); + } + } else { + // Insert two '[' characters, move the cursor left, and consume the keypress + char pair[] = "[]"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume '[' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '[') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + } + break; + + case SDLK_QUOTE: { + if (event.key.keysym.mod & KMOD_SHIFT) { + // If Shift + ' is pressed, insert double quotes "" + char pair[] = "\"\""; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + + // Consume both characters '"' and '"' immediately + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume first '"' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\"') { + SDL_PushEvent(&tmpEvent); + } + SDL_PollEvent(&tmpEvent); // Consume second '"' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\"') { + SDL_PushEvent(&tmpEvent); + } + } else { + // If just ' is pressed, insert single quotes '' + char pair[] = "''"; + editor_insert_buf(&editor, pair, 2); + editor_move_char_left(&editor); + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); // Consume first ''' + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\'') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + editor.last_stroke = SDL_GetTicks(); + } + break; + + case SDLK_BACKSPACE: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_RETURN: + editor_enter(&editor); + break; + + case SDLK_f: { + if (event.key.keysym.mod & KMOD_CTRL) { + editor_start_search(&editor); + } + } + break; + + case SDLK_ESCAPE: { + if (editor.searching) { + editor_clear_mark(&editor); + editor_stop_search(&editor); + } else if (editor.minibuffer_active) { + editor.minibuffer_text.count = 0; + M_x_active = false; + editor.minibuffer_active = false; + } + + current_mode = NORMAL; + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + } + break; + + case SDLK_c: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_clipboard_copy(&editor); + } + break; + + case SDLK_s: { + if (SDL_GetModState() & KMOD_CTRL) { // Checks if CTRL is held down + if (editor.file_path.count > 0) { + err = editor_save(&editor); + if (err != 0) { + flash_error("Could not save currently edited file: %s", strerror(err)); + } + } else { + // TODO: ask the user for the path to save to in this situation + flash_error("Nowhere to save the text"); + } + } + } + break; + + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); + } + break; + + case SDLK_v: + if (event.key.keysym.mod & KMOD_CTRL) { + editor_clipboard_paste(&editor); + } + break; + + case SDLK_UP: + editor_update_selection(&editor, + event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_DOWN: + editor_update_selection(&editor, + event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_LEFT: + editor_update_selection(&editor, + event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_RIGHT: + editor_update_selection(&editor, + event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_right(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + } + break; + + + case VISUAL: + switch (event.key.keysym.sym) { + + case SDLK_y: + if (editor.selection) { + editor_clipboard_copy(&editor); + } + break; + + case SDLK_x: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + current_mode = NORMAL; + + } + break; + + case SDLK_j: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_h: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_k: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_right(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_ESCAPE: + editor.selection = false; + current_mode = NORMAL; + break; + } + break; + + // additional VISUAL mode keybinds here... + + case VISUAL_LINE: + switch (event.key.keysym.sym) { + + case SDLK_j: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_h: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_k: // Up + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: // Right + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_right(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + // Transition back to NORMAL mode + case SDLK_ESCAPE: + current_mode = NORMAL; + break; + + // Add additional VISUAL_LINE mode keybinds here... + } + break; + + // TODO + case HELIX: + switch (event.key.keysym.sym) { + SDL_Event tmpEvent; // Declare once at the beginning of the switch block + + case SDLK_RETURN: { + if (!toggle_bool(&editor)) { + editor_open_include(&editor); + } + } break; + + case SDLK_SEMICOLON: + if (event.key.keysym.mod & KMOD_SHIFT) { + current_mode = MINIBUFFER; + evil_command_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for ':' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ':') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + + // TODO ivy + /* if (!ivy) { */ + /* minibufferHeight += 189; */ + /* ivy = true; */ + /* } */ + } + break; + + + + case SDLK_d: + if (event.key.keysym.mod & KMOD_SHIFT) { + emacs_kill_line(&editor); + } else if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else { + emacs_kill_line(&editor); + } + break; + + case SDLK_c: + if (event.key.keysym.mod & KMOD_SHIFT) { + evil_change_line(&editor); + } + + // Eat up the next SDL_TEXTINPUT event for 'C' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'C')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + break; + + case SDLK_m: + if (event.key.keysym.mod & KMOD_ALT) { + emacs_back_to_indentation(&editor); + } + break; + + + + case SDLK_ESCAPE: { + if (ivy) { + minibufferHeight -= 189; + ivy = false; + } + + if (editor.minibuffer_active) { + M_x_active = false; + editor.minibuffer_active = false; + } + + editor_clear_mark(&editor); + editor_stop_search(&editor); + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + } + break; + + + case SDLK_SPACE: { + if (SDL_GetModState() & KMOD_CTRL) { + if (!editor.has_anchor){ + editor_set_anchor(&editor); + } else { + editor_goto_anchor_and_clear(&editor); + } + } else if (!ivy) { + // TODO time delay whichkey + minibufferHeight += 189; + ivy = true; + } + } + break; + + case SDLK_5: { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_jump_item(&editor); + } + } + break; + + case SDLK_8: { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_word_forward(&editor); + } + } + break; + + + case SDLK_1: { + if (SDL_GetModState() & KMOD_CTRL) { + hl_line = !hl_line; + } + } + break; + + + case SDLK_o: + if (SDL_GetModState() & KMOD_SHIFT) { + evil_open_above(&editor); + } else { + evil_open_below(&editor); + } + + current_mode = INSERT; + editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'o' or 'O' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + break; + + case SDLK_LEFTBRACKET: + if (SDL_GetModState() & KMOD_ALT) { + switch_to_font(library, &face, &atlas, -1); + printf("Switched to previous font: %s\n", fonts[current_font_index]); + /* redraw_screen(); */ + } + break; + + case SDLK_RIGHTBRACKET: + if (SDL_GetModState() & KMOD_ALT) { + switch_to_font(library, &face, &atlas, 1); + printf("Switched to next font: %s\n", fonts[current_font_index]); + /* redraw_screen(); */ + } + break; + + + case SDLK_TAB: { + indent(&editor); + } + break; + + case SDLK_z: { + if (SDL_GetModState() & KMOD_CTRL) { + /* current_mode = EMACS; */ + /* current_mode = NORMAL; */ + helix_mode(); + } + } + break; + + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + followCursor = !followCursor; // Toggle the state + } + } + break; + + + case SDLK_F5: { + simple_renderer_reload_shaders(&sr); + } + break; + + case SDLK_y: + if (editor.selection) { + editor_clipboard_copy(&editor); + } else { + evil_yank_line(&editor); + } + break; + + + case SDLK_g: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_move_to_end(&editor); + } else { + editor_move_to_begin(&editor); + } + } break; + + case SDLK_SLASH: { + current_mode = MINIBUFFER; + editor.last_stroke = SDL_GetTicks(); + editor_start_search(&editor); + + // Consume the next SDL_TEXTINPUT event for '/' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '/') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } break; + + case SDLK_n: { + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_line_down(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_next_buffer(&editor); + } else if (SDL_GetModState() & KMOD_SHIFT) { + evil_search_previous(&editor); + } else { + evil_search_next(&editor); + } + } break; + + case SDLK_p: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_previous_buffer(&editor); + } else if (copiedLine) { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_paste_before(&editor); + } else { + evil_paste_after(&editor); + } + } else { + editor_clipboard_paste(&editor); + } + break; + + case SDLK_b: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_left(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_kill_buffer(&editor); + } else { + editor_move_word_left(&editor); + } + break; + + case SDLK_f: + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_right(&editor); + } + break; + + case SDLK_s: { + if (event.key.keysym.mod & KMOD_CTRL) { + // Ctrl+S is pressed + editor_start_search(&editor); + current_mode = MINIBUFFER; + } else { + // Either S or Shift+S is pressed + if (event.key.keysym.mod & KMOD_SHIFT) { + evil_change_whole_line(&editor); + } else { + evil_substitute(&editor); + } + editor.selection = false; + // Eat up the next SDL_TEXTINPUT event for 's' or 'S' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 's' && tmpEvent.text.text[0] != 'S')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + editor.last_stroke = SDL_GetTicks(); + } + break; + } + + case SDLK_EQUALS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_next(&currentThemeIndex); + printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor -= 1.0f; + if (zoom_factor < min_zoom_factor) { + zoom_factor = min_zoom_factor; + } + } + } break; + + case SDLK_MINUS: { + if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + theme_previous(&currentThemeIndex); + printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging + } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + zoom_factor += 1.0f; + if (zoom_factor > max_zoom_factor) { + zoom_factor = max_zoom_factor; + } + } + } break; + + case SDLK_i: + if (SDL_GetModState() & KMOD_CTRL) { + showIndentationLines = !showIndentationLines; + } else if (SDL_GetModState() & KMOD_ALT) { + if (SDL_GetModState() & KMOD_SHIFT) { + remove_one_indentation(&editor); + } else { + add_one_indentation(&editor); + } + } else { + if (SDL_GetModState() & KMOD_SHIFT) { + evil_insert_line(&editor); + } else { + current_mode = INSERT; + } + + editor.last_stroke = SDL_GetTicks(); + + // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } + break; + + case SDLK_v: { + if (SDL_GetModState() & KMOD_SHIFT) { + current_mode = VISUAL_LINE; + evil_visual_line(&editor); + } else { + current_mode = VISUAL; + evil_visual_char(&editor); + } + } break; + + case SDLK_4: { + if (SDL_GetModState() & KMOD_SHIFT) { + editor_move_to_line_end(&editor); + } + } break; + + case SDLK_a: + editor.last_stroke = SDL_GetTicks(); + if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held + editor_move_to_line_end(&editor); + } else { + // Move the cursor one position to the right + editor_move_char_right(&editor); + } + + current_mode = INSERT; + + // Eat up the next SDL_TEXTINPUT event for 'a' or 'A' + SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'a' or 'A' + if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != 'a' && tmpEvent.text.text[0] != 'A')) { + SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue + } + break; + + case SDLK_x: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_ALT) { + if (!M_x_active) { + current_mode = MINIBUFFER; + M_x_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for 'x' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'x') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + + // TODO ivy + /* if (!ivy) { */ + /* minibufferHeight += 189; */ + /* ivy = true; */ + /* } */ + } else if (event.key.keysym.mod & KMOD_SHIFT) { + evil_delete_backward_char(&editor); + } else { + editor_clipboard_copy(&editor); + evil_delete_char(&editor); + } + break; + + case SDLK_0: + editor_move_to_line_begin(&editor); + break; + + case SDLK_F3: + file_browser = true; + break; + + case SDLK_r: + if (event.key.keysym.mod & KMOD_CTRL) { + file_browser = true; + } + break; + + case SDLK_BACKSPACE: // yes you can delete in normal mode + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + } else { + editor_backspace(&editor); + } + break; + + case SDLK_h: + if (event.key.keysym.mod & KMOD_ALT) { + emacs_mark_paragraph(&editor, true); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_j: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { + move_camera(&sr, "down", 50.0f); + } else if (event.key.keysym.mod & KMOD_CTRL) { + evil_open_above(&editor); + } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { + evil_join(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_k: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { + move_camera(&sr, "up", 50.0f); + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_kill_line(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_move_paragraph_up(&editor); + } else if (event.key.keysym.mod & KMOD_SHIFT) { + goto_definition(&editor, &fb); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_l: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + showLineNumbers = !showLineNumbers; + } else if (event.key.keysym.mod & KMOD_ALT) { + select_region_from_inside_braces(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_DOWN: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_down(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + } + break; + + + case SDLK_UP: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_up(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_up(&editor); + + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } + } + break; + + + + case SDLK_RIGHT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_right(&editor); + break; + + case SDLK_LEFT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_left(&editor); + break; + + + case SDLK_w: + if (event.key.keysym.mod & KMOD_CTRL) { + showWhitespaces = !showWhitespaces; + }else{ + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_word_right(&editor); + } + break; + + case SDLK_e: + if (event.key.keysym.mod & KMOD_CTRL) { + isWave = !isWave; + /* current_mode = EMACS; */ + /* editor.last_stroke = SDL_GetTicks(); */ + } + break; + + // additional NORMAL mode keybinds here... + } break; + + case MINIBUFFER: + switch (event.key.keysym.sym) { + + case SDLK_ESCAPE: { + if (ivy) { + minibufferHeight -= 189; + ivy = false; + } + + if (editor.searching) { + editor_clear_mark(&editor); + editor_stop_search(&editor); + } else if (editor.minibuffer_active) { + editor.minibuffer_text.count = 0; + M_x_active = false; + editor.minibuffer_active = false; + } + current_mode = NORMAL; + } + break; + + case SDLK_BACKSPACE: + if (editor.selection) { + // TODO once we have selection in the minibuffer + /* editor_clipboard_copy(&editor); */ + /* editor_delete_selection(&editor); */ + /* editor.selection = false; */ + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + // TODO use editor_enter() + case SDLK_RETURN: { + editor_enter(&editor); + } + break; + } + break; + + // More cases for other modes can follow here... + // ... + } + break; + } + break; + + + case SDL_TEXTINPUT: + if (file_browser) { + // Once we have incremental search in the file browser this may become useful + // or to edit file names or create files/direcory + } else if (current_mode == INSERT || current_mode == EMACS || current_mode == MINIBUFFER) { // Process text input + + if (editor.selection) { + editor_delete_selection(&editor); + } + + const char *text = event.text.text; + size_t text_len = strlen(text); + for (size_t i = 0; i < text_len; ++i) { + editor_insert_char(&editor, text[i]); + } + + editor.selection = false; + editor.last_stroke = SDL_GetTicks(); + } + break; + + } + } + + int w, h; + SDL_GetWindowSize(window, &w, &h); + glViewport(0, 0, w, h); + /* Vec4f bg = themes[currentThemeIndex].background; */ + Vec4f bg = currentTheme.background; + bg.w = 0.0f; + glClearColor(bg.x, bg.y, bg.z, bg.w); + glClear(GL_COLOR_BUFFER_BIT); + + if (file_browser) { + fb_render(&fb, window, &atlas, &sr); + } else { + if (theme_lerp){ + update_theme_interpolation(); + } + update_modeline_animation(); + update_minibuffer_animation(DELTA_TIME); + + editor_render(window, &atlas, &sr, &editor); + update_cursor_color(&editor); + render_search_text(&atlas, &sr, &editor); + + + if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "json") == 0) { + tree(&editor, &fb); + } + + + if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "md") == 0) { + render_markdown(&atlas, &sr, &editor, &fb); + } + + + + if (M_x_active){ + render_minibuffer_content(&atlas, &sr, &editor, "M-x"); + } else if (evil_command_active) { + render_minibuffer_content(&atlas, &sr, &editor, ":"); + } + /* print_variable_doc("zoom_factor"); */ + } + + SDL_GL_SwapWindow(window); + const Uint32 duration = SDL_GetTicks() - start; + const Uint32 delta_time_ms = 1000 / FPS; + if (duration < delta_time_ms) { + SDL_Delay(delta_time_ms - duration); + } + } + + shutdown_clangd(&editor); + free_snippet_array(&snippets); + return 0; +} + +// TODO: ability to search within file browser +// Very useful when you have a lot of files +// TODO: ability to remove trailing whitespaces diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@main.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@main.c.blob new file mode 100644 index 0000000000000000000000000000000000000000..15e283b373d82ac5e7149fa1f1552b1345ecc7cc GIT binary patch literal 85372 zcmbrn3tUvy`aaH{`<NP<N3F~zH3dRN^bna5BA_BFA)*;M4luwdFf=n<yjRD}%GAuv z%3G=3H7hl()KZUjG_BOiZg#&|>ZxOP-|gSC-o5r_ug!pd|NlOp6_4+%^{#i_Z}0o= zgqXkg^shJ&BiUVjD}q)2zLkA5{oyH*U`^kMKOE^>>M!jZ4wdvR3074FtNT>M*!tFn zLwy6)C6%?M{=P$V`<7Sw>p^$4n7qmtsP0n|V-XUU215So2-3y~<Zz@k5Crvn7+Omz zebwdX6}5MLFf=7lUEZ5zTM`L|re4=<4l#0XNswtwW^QudVt;v{+FKGV^+US9dwS;W z7vhverq<9eKc7w&e<=<`!hPAV;l5sPRdG1ti}<~);D75;D+9%SsVsf_rRcTmt7-^T zM?$DNMBN`4e?Z8OWWxWv<+Xv*s1i}@)Uuyqk8b==Gl|j4wV~)GD)al;Z(%`Ft?8?L zkqY65=tZb&_-DW5vYLJ=EtG`nNAC@dm7--uzZXwMhphM2oI6i+pyFV#l0|G%X~e1~ z7!EWfdn*G~0y7~yUnE!+DDl<@O8sc^+Ukfuq(^RPpp*qF{odkGus*CNNP4=snPw}g zsSQ+@v7X-8ms+SpNbajd2RwIw2-k+nd?k%d+LE{x{>nfD6Jf&(6Gb`0ETeM0%xu(0 zm9D(3I?#etRN-ph4+qNYe3hn-FI2i3FA}KohYZnLlHXq!poVU}W3(u~J~|@7+7jxh zO$IE9R#wxyGFV=G?sEF5C)X8MwN%>h)NtRDQh!<WA!DqINT{|X;>{kOn<ZqeRfjG< z&78(AqQx*UD+vat1pMAW&|6kpT@ncdtHXxsYcgN63?~#1X<?2k!w4~Ph}!n`RaNI| zdNg`CG9^4MYAI{00~oAPe=-y=`i!a712U-gQ6JDJQ|%|>5iY6lpEHYk6ytmfTobG* zsgATzX1(38w3Vte0QI{T`*4-7ggVTJSB(@qF&ha{Ye&xpxdeQ)KIq*$YD;;&sAzOd zZ<VjX>#Ibasl|;xL27FiYdpWXVuac)_hYLN!3?P`A=Csdl{H+)%5!?iV6mWjdD!A# zUBcq%<<atEV~Ye6Y9wlD%NoL%yqe6EQRDJ)U6YIi{!kcOga2d7%JW&>SWBi15G2>i zrI)>=GEh?-^o61?=G2+7VnnKYV@*OQj7$~SMJ-%SsH~(S+JqG~Hm{26CKGx~Em{`x z`@Q9rQ)_6FP4HBREvt?}HVODjrkq<~E<$B-*|~QN=$&i<?OlTTE+WpjEfo(lIBRQk z5GIa309r^AD68_-RYpmpH6azUaVSQgh_pdf87%Q(k8mFQKjf%)cwJ5*Ppn>LzOcwj zh=5IRX*e(~`Ygf*8|^=u2(0(XDgLR#hPS1j5J67}2O@l@^oLTS_JpVvThrpop=Vze z2uGg`^cd<sjkRQx38TEawl6lf#o^w~j67ess;@s3s-`-K`(wViMOJ&RKQg)MJocR0 zEJEu;=`H8(EqcT1bsx2!>S{_Vt7<E6DZM31_lugM-WQ0}Oo_Hpj2b;0wIQNLMH!<A zA#^v|S$nY}2qRsK;tOL_-1t*VeW}vlpst>mob-zm3L33<xxd;U3Y4gg*SpvkrvBZe z1@%r6tnpWu(;lHoCov4&YJXUqMKrlt$M&i{yRWY%z{)n`q1NL5i59NLvNgM1Zj7go z=%|(55cbviOU_l_+ML2RY$*fIXHG#Q)~OSGY82*CMJe%{m&BG@uEH0ts8Ww<DW#)Y zm;%rj0@#U6^GA_Gt9iWzF%LCe8ly_9tsqfHjK)_T+v*-XRF4^1T$;3KdiLy8hy6#y zPbbFcoe0vD^seyxu<h%O)y~k-jXQAO-|7OPV09Ii@#sB{V&Q<;8{4m_Ly02r%@+;2 zsIedthDy|*h(S%HA_Re{7xngq)N_(PAvLLm;!3P>Rn6Uhu>Dyr*5Zi2p#_<-Xsek< zl}f8{_G9!~MtUC|afI|O^n|kW>0USj>RGnbxhuo87HsL*(%Ke^m`_D5v1~jjR3=B; zJLwBllXk)V1um9^deEATT34MMaE@muO}3S9vIP^Ohy9h<{5H>yUHD+<QYq#bwdOI& z`9f5q`Xnc0#nz~@N?*CiN{FJ(Y>@jLmj;X(yHcwaxkVMsS9;DROsF-l7puRwxVFq2 z@ipFswA7r4Tc)mDlSXHVD;IU{lFDG1-6)wZ5u-{Qb!paW33Xi3yC&qvp-yPCsGP8y zj<%LWjqCO5$9k{2`(XT|H)L65q_-dK)4R$asR%|tW@F=A+i<RZ7O(X{xtCwOi5)Sj zp!LPo!9aB#4vbAU^I9co^NF`{&e5lps627y+RSk-dUW+tNWB(lam7(<p>fDI*{n3Z zr-+(k$cHkU*W+e)8`@&Xm;CcO^MuRKIY#)pfjb2p>b#ikdY4YE_Tj!%=!se*G+Ao& zSS<~tN*{~X{7nJ7#Ah+i(Vo;mQClWz_0qO0N{5OX*<XE2NmWbT&sg%t$~v#&hXYkL zI3=p9gF2zyns`$S+o{H`)!a}G`fzukKjbuX%}$$%e$C#EH`#r&!Zhj2jl+&z<qEAN zbP9GW(&Tg+wW`_02YPRlfgUw-RTZweDzU3$IY+Mzb-ux5jQ%T5HKKs@XcP6suEkUD z$;Gut`^~Tnd(Y#pw+{DDxV#nWD{287*xQ_`Hd-1>BYV>w|NiSuPe>#mwrph>ywR@+ zD2Dnp<85(YckZjoI$T>dzIL=E?o?m6I#5%iZhcoiHdb6lNhE9w{B_tqn=gM_VoR;f zD)*158!chs53urt!Zm(zN{iYW>Lkl9iA+t>?6e#SH&m8J*mGo)4y|<^eF#ks;@lBX z4=63qb&;t1g{UG|1+i?N_jsa75r_Ko5!YAC@041WwWPAFvNl}NGSm8!3SZ-^oADH- z*G@&Cl%L2czm}TcUmC!xFKhqf*<~$Eq-t~4v~+Gb*HvFQ>}|TejoJ{#&6ZDnY1JpJ zs0kWUQ_5@3yXCa?zvP^&l)eFL{=#3cbag%yrl}^~wx-e-DGP?8pO<w`x6}s2MO@>f z4f5*Rs^$--d>g_9X>vHy-mZJMaPzKbf>+7rCO2Kwu)jL2b|1ZG3&I*!ltAgZ*Az@( z?DE<aF?y3n9oJgsx`2(hYtaQ%AKRJ~G-{S=zrh7f(+MhS{5tgA^NkybTAZkCY2t~- zxJlvJA{J;o!yD%cYGq+^r>(ZP#uxI53II`M2v<a#)-?gtF2o+KBE9KxM(B)D8LD;L z;)nz{5?ElSWvO3lNBxxq(vRx6kE*P}eU$z#EToAlUP)!CzbY6xuUomwpszICxTYIx zUGJ7Pfd;>NXV9cu>T$}k{a`mop<rdDX}=g%MpR*Pl<ub0kj@u(CoK)x^H^VMg7qeW zv`n<gBifBub3#KErmm8y5JZzcY9gHS`2k;F7R&;$DUx4^3#}{0Q@bcCt%d7A)@^#@ z)|oGp`kWe7vNAM2&E2|SQKO-$nmK$5@*!<iZ=88bdzbo4Dsg{`XB(k3QJFVWlLBX9 z<VVB-A1xx^SehngEvDYJs)DuZtApOFqe_V4SF^5-t^IjzpKu-u`^x>rLE5ml%o}$f zH6?*)D|=K?YScM0%D9OdU7e=R^C1iGY;?;=2fFjxG`FlrqgQi<58KY@Pk`#YP8Zm{ zF-hYltatO1rW%<}a|Tgyb0u^#t(6;N<9R~thgy_I&BwnByM4Qtl<Qik$6}^og5{KD zrw<s7mtNXXeXxeI(;HrkaxU#SwU@K%Z>Hl?kt%~s|1nsLi+rKnQ3c1tu^)Tprea5p z?LYrjy(Us03PfFCqH?aBcAhFXRke6}VC8C3dwK=anK60|>v6&*zUn6Tvsyc_M~-t{ zl(Q$kV6!(UjrpK&Q!_LXm)eTvS8=kAT0M9fW49RRzgH`%swpXH@Rgo-)AE@BBR1-6 z5LGH|_NZ%FuSTm@y;5+Gtd2>ll$MTjjTc#y=W!Lw79~NYwyZx%H%4^ns4sk)c+?<# z-q3rQ9;=0Hn^9wFF2(=l4xuDe(*L}-5z+4^#Nu&nnkLVH%?V4JnW*zx)D$&S_#Ix$ zQ(z0Ptj)iK>D{LS(^d50&F4QnU^P23DT=mTU>Dos#bDG@Vfn#<`FtnIlFIsGQ{0xi zc%;IwUdt^V$}cRm7Q+++afCTs`^iv>X0=Ose`Y*->-#v?pL>X^_<Fq>p5H|seq#(i zX^IvCG#NrrhoFA0%kOG_;Y1v+#@$Ltt966c0#&_+MMiC#)#?}Q7-CzDrm01D5c1F$ z;m!hCs{>@-Mfjm{kKhsLS^_A_aJ`g-7NyZ|t`b{}W>P)x(_&<LUP)>(ilEt-++x(G zuN4DYjIU4LDJ@3Rw184uj72)7X+jO7W2=e}=|qk?boB?5jOODs_QA{+MKIo2XSWzr zf9@aFVl=MTp3`z9t~i|AVl4eddQ^+iw8<t<s7PHyJHN%m>H|YTi*Z!liNY4+2r7i* zTa2pR=F4TGsSYmIRDJN61&XuqodI*c>HL0OFi`3VSJXyIgY~fBVKzghaanX9>`Cy) z$FyqIHHQ9c&HgXR)7&nEo^p?LNy+|d$=_K=2am=Dp+8jZAyyc`-b{a`Z))6FOy~WR zJyqfOn9iNs3ry<Vo#i@r0x?;2Amf64+28gyGZ~ue9Rr(|ae-<`7RT7C(361k0!WN& zH-T%&9V>_2$;9=q7kZTK-C6TH$wZ@-znge{p%8={qrRdHX8-Uc_*gl62+XFVoYUQj z#O%n~ql2&hW!%4rnc7ReVL#gqc$r2|TsBjJ8_M*2y@Ml_zOW|&@4f-GbK%h*ltj-M z_0cjP_v8MMKjcXWhY~${JyU%*6`~0BROB8+LWJ^N?M5#<lTSj_)|4_ssgl|dE?%KB zQ5g(1Hk!_?r%<As!0aY>8Zp}>hY}zA_TMLsmCkuGB__Pc`@O#E0B$|-=oZJSI$7W~ z4!p*>bBNbV7siiEyLEoOTGhq;T{aF!>Ttx9&1`-$RGS}9LRm2?qDf08dYV>X^R>om zN$gGe?hbN3?~;+ql*j(=J<!by#$HK030R!iD_)%XFE6e)BNg#6mt4|TDAONOhWv+= zM`g+wko3qL>5c6I8?2+%B{fqyn?#RVLX~Nvr?#36FMp|rog|xb|3&H{|01cKGw0L5 znzU=WFEBQxvB&5YPa6;q+9TpC!1<LGJw=dtJlbKrdlbq1>z1nQ?yv0FMO@W&(Tm3{ zzn3XGdqaWpib!K0VXP7jtnBi8wnT*SjFmjjk%*w;2Y?^o_&<&w@_!suMe-?EA_B!x zet0V9;`ujj-%eT6Z0W6L0|PUFCjp%lV<u9-c5K7Z`x{u^9SnKf<SkMh0`+rwsU;O5 zm*n`snkau@O(*=TGg1E4NmzOHoq5}yz5Tl-lpo8<TZSuA^iy;VX-2CVT`ba!nA<Is zM{5axq(@^P?MAgU<vZK4mD_IJ%UhODQmj)B^+yWum>7;@T;pT9bm?r6F-5MG1|sB> zESZ*KIny$Y@JQg19OnV&aa?SfAQxLg6ekFJkkjiyujlmHz_U5N8~ARHUjTlA<8<o; zIo+!Axzn02-)WspJP%uo<-=B02FX?|OEwi>X3Li^v#D_+wh3~?#?u1d$?-#o^AL}- z4)k@LeinSraz1VC6Xmw{I?Ah?y-@CEuO>VQco4^#z?mH90_SpE09?TFH}-t_8@npc zPvH3z=Xn-!&hj_|9r^M=hZ-jfIE&*v;5?3R0=|jk>A=%Dz61CUju!$i<oF@rhd6%D zkt09nC?@&00dM1YH}Gzb4+0<LxX3v{E^?~%w$7O^uXC!h{pc)~e{}MCb`{H)xm0|O zD__3GrN&w4njkN9scBb(zM9iF0&nE_Rm6Ff$GO;DEMM&AJlzxI%iL<(!I)kL<2N=Q z!|rqhb*!EItFV4n-hX>F8Rl#v@>crGOrt!((2HZ`xfoq@(Hj}p=P|mTw-yq<#g;DL z!h6I)TatVby@JK*XCHttk?{TYMEQQS8l!In-pKK5z^`%q7Vujfe+v95$D=TdjB==H z{{{Rnj$guz@{)rlF!?Qv@VA_5ocXSFc|NbLuUtv;SEw=Mt8AQ7y?*%UcYZULzC0KS zVznx%z*6X|F2yDWYjfjNr!R-8hMKU-oiML-vNlj@V(jU1j9tb3F~{_G5>^sDyA%HR zQJWp!3>eLND!?488QXt)@dS>HP~)b2)b%Zk>0e;`#Qwy`v~F!|14*7OB_XKganCqa z^~=c9bE!P0qk<Qkh)7(NjRTwK;tYk6<jIl?A&IK!L~87$S4zKrLS2{=*h7@JG(d{M zz7SR~T9?%y=~%>8!$c3$HS$7cS}e$_H$J9qTVe0FyW4Jc`rY^O3%ideJ#m$`IuggB zxwXs=*^|Jm-Z7VEu?MCx>|(b(ZfLF_Pca^PbBd2iOcb|TMbaF(NP3cl?`!?D^qb$` zE#s`!izSbGy7VM4jcnk!%;EW-1TRVzs$uMeb$n^u(iCDfq{HivjoOvdkF(-3FzJS~ zdevt6SfL^(ND1-;X&^BevF4F^Gg^(UGxoJ&Tz-UWU_xwach)2x11E<(8Y6AAg~qI0 zinX=WrmkuIF{1k03s?^F8Q?P<--`A0R+k#*Qg^C+DIf1wXFD(cY}Fh08l@-=`O0xu zgH2j(O%y?l`#!6DKQg}`6F$pun=KVV9nNpNQsuW@gq7~w`X8=+y)3}%ik8FNA*#YU z?bxszAA;JC_&G7^hCCrb?3H7sSb40JN|hP@-;wLC&iR9>e|wlV5bX`130;DH6m8NH z@Q=Fq7?;Z>ZFX&rwMd&|<e6@^hF`7xcfg97i|5atrYz0h^>=aBBL|cNBRUO;w4X3h z8JmCP=L79WeW4__Uy*ukQu0w{;ziev$hkHlN9k7n^skF{f4WSWa>Li|MSpkyL>d2~ zqla(w{R5Q&j~-vy>+K;K%9!!9k0<0M-=y3dQ=i#>av)ZDtowUIHs82lic+`v;rAYT z@{<dd!o0tFSKknLLb*0~VxKc#ICGTvKNp=@cmGc(l&zJME^7Bt$x@|H_^nR24-KqR zp1AkE(kDNiQKrmoy=MDsf8F9!zMGrX>cvk#D^{+|7`rm-i`FqpUF-KeS9e+Sj1qUn z=?^WPIy#kqT-VU+*|qWkrN`1cLa9#`KBipt*e>7t&D|eYHr;+Oc}Le{yOdutkH3-F zwfrx|)8(a3p`hm#W#9ZgQ~#)2yhllT@t5mwz2Lw~WlsLl(fj`Q`y<M-_1&JXRsOqG z>Gj2rHUB*J&HYOC%{^W1ivAp{q+PhIgZ;{k-pZ<+FP?CJyd_y#{Dg06ALWr>l^!P} z7hkZzmaP0-(e0siCqAC6Tr=gOb#FGz=%HM?U|yTTuD?_&d2gIa8BsB%Q0X{jZsgJ% z3KeC=L!Z8z;yQFd8Q$xz6Y{@b>ZYvu`^23emNzU`9zOKKlj*%auTstq_pV-*c1;H* z-t*`Me^0F+rySZ8&U?Qg?FD7y<f=RG%DH>J;_J8fVEw=iU&}KsFS%ZdQ#KYZ?KHi2 z@6lFtpslX03CeBX7QZ#;sp|$X!Zz2o6y^J!+iOQ`b@~|LW!KB;iudVLo8Mlry@3&4 zb-mg}vG;s({f5GRFEYYT*G`Y}LDu^Ce-EDYCL^#3P0^-HMtIxxcDi!7zjES2|GI}5 z;T_jIIg01<@HHtvWhXJh(Zr(}%I4eeyEU=wtF?@9EcVy{WyRTh5^Fwuu)o#zLF@;8 zlr~RPB#rL2bg9+$S?p(Bl~?v%^xmEyy0>Q0zjA%mNBJsP@O$U?0>3lDsn}Cu4B3Xc z+$JR|S6sR1+QA>y9b&O$r_>tZ5`mZ8M(TjzQLfs3;SYtc@416wCQ4o8M5&MR`^@8q z78jjNCSo6{v)o7ODJJhDEeG*gW&gO3pT7C-X%|w=0pK}6N>E<*-Q4ck)biVin1X?v zBAMh&LGl!H@_~ps5F%}P<B8ke*}vglN`5Vf*P4@GE8Py_!^*&{s~_I|`Zfo}Oh?Rg zDM?xS>?Kmxiu)>?CuSjLmYHXkG!MkpBF`Me%#l)*|GHn@{nFW+2NBN^AdWB-b3x2C z6Z1gK1M%J8LXRx!uwn@%zX8M>%*1>U^QA7z$W4D+dd}>qP)t4t>N6}63lX!>EPSD~ z2*f8v;rV)`Xp0#ok4h{8&muEVzO*XZicQHUp@U75IxBfAUtAh@zhx{DeIWXfe9%$F zp75WW+7Pi6JWJ7<LQKDuCi|r#<?By>IB{Ua(5+URT#k6<=DhiyMA5c5#IYLLRHJ*n zy0T)%#%t0#6OkXS6zy!*Jh5KtD%VS?O1u22Hw2u2pQV_5Kc(;1h<J}QUcN`FQT|%B zxBQ;OPp)mAxBv&w1yX@>+5FCt3vzeHQOreHwiZdp!~wHNdKJVs#Q_sF<`OAaULut# zGaVn)?o3+Qg?KKNhRI8%FGQY8rM)1&C-RIMbEQ-uuLMtFV6Vo7#cCus&M_dojIdwi z88zmU5a~(j4>5UE;(EkfFU=D>w??#IeW+SVnE3$}bF-8vZ<cbD<u?{B&-ifRqeSE< zeEp_?h%e#T|B^I7<hd2QudUK}G5PD@`MR0sE+pS2Wh&k$D<%%9Uw4Lh?gnwUndctx z++*hXA#P+olqM<r7DUqSdE&mSDLKEUQM3ynBJ!IdMY~*To+zU)$x^;JdqyQXEQzwi zVydOKmIAr0rBdv)QHkv=1LSs=T(Q$$1fCr%bz*CFuuK4Pve+4-#_VhvBzLwHik<cn zWOS)zmdNu`oFFf?ghZZEV|EA6?v_zvr@az9ds-?)o;`8r)6-HU@{Ag@w<SsLi<m;6 zk4o&1nEfp^Vh7WRLZ{8ZZao8K7dkD!<`L(mT*S<U@Ei8_d+qoC{Tf4^fnNfNG5HBV z(asSRlV1^uF$=-7(46~32tU!1r`(tH?WTWUJpOq~J_#`=q3mzX+LXC*`P#dP$gi42 zo>hohW#(B8Vzs4M8Ts~CpMCY><O?V{znv13M-Ve&PF@RQt!1LJ=h@@w#}3`rgOc+L zEiw5F#GGMHJ`=>5mQv;I#8schCEjq5lJh$-G5H*neGW2eC|Y~ne>a_`y_kFllHXzG z$uBe%?OKF*&O^+3D5m4C^;6%UKIT&*@(VUGqlL(5p=FrzSLvJw4!m9%q?ivN`2*&R z_`Re!gFT3t4_Y$C4z|paEiXecg}$@`F;|#lJ_h1r=8V>WxW-Z-PHSsHTx(9g4jHX8 zXY@2;K5dTq9Ei`EGujB^MkL?)dr^mbdl$Y<W#?CqVlBOdm@lC@ycyN|XLf&P7R7ws zGEjaU{qq@j%mW*`&+kgaU5L30F|V57?Rx3g8SRL82*g8{d~wx&+mbH7ZJD54|4GU} zM^C?wcIfh_i1{hxyz-l0-`aU)N){#m9K_GjnnV7P*1qDC$(IxH3lP7slqtWxF!rxw z1;vMn_%(=Mo0I<l;t!Vb%GNodhx=#ry@X=^gm(W4)330R_!%*OhMa;(e}MQ0=FcUo z`{lfO-E-q8`32S_`2uUcvhU8cwIfUCR}--{h^?&!%FB=Y`u;T6S46}%AhxlZdh$iq zRQV#SX}0+XE~NfpEmjWH^spX$>%LS<&TpyodoLn(L-KCs<lRB+j@)1U@*h*)e=q5N ziWv`Lyg6n9hzZsT<@P?WCoY)$%ZC)RABg?TF|Psf8Z&Vqhyy{q?eE3im*?D2M#%?( zI0(c$$M@)Vc-m465&6}%*q4T&LWWpPHJ^>-*{DyU=0_mr2<s?u9F4@K<w$F)IO4`2 z<`{F#v4}a=9J2^9i>!l`RX5%8>bGe#=u9U2kh{-Z%wiCWt+`6Ym<PA-@4LfAC8|L3 z3Ufv^Al6tb#f?NAlGmX%g-+W5VguUf<o0(~&6)oBDdIT`$!D2)&W7-_t$B+5XyJVK zlhs2h=4~L}hUD)a`C&_&{_E5gfxiiel|0WHC(i><VZhD@alSP}?DGr2bAdHmtoi#P z=l$jiSpwn`lt@@R9<XN14_Hle-BQF{YAsUQzxkW<;w?Ycknj&8=7Z*#%Mf#!b&~S; z)?Yq7aev-kiuo{z4_n78PgVTr{ByG9T_Uamag|x5)gZ3M;1brON0HH^=8PUg%*R07 z_Uo6JKkD8io@+7U)*`tuQLh7W9f~=oqQCUtYkpowF`oeO3CMYRRouhfYd5PC;M3sw zG<XWj*>kAm=OCxBa&1HtZ!|YCzkU~2t{1Fn@(ZXsL8KRv{6)0;Tf^h_cAh+`jzroF z;%4gvagBQ!#Fxz(y@Dow1@$S+^SdDYE|gv9A^T9wedx&>d+qz>aPadJl+k}c{10Nj zee~dnp?5#39_bGv`9Ta=Vg7s@G2ezr!YJnNRAT=;204$J<>aq@;tKmAg#XYyia$av zePphs&k*x7bIh-i(bwjTzCp}yti!|=_FE9YH7EZL8GUEY=oDg}GROQMD&&9W{`oVy z;?L%;cowyE*4*oU0r3~q{Qgs8BHM0U`5@K&Zy^3=EmJP7X+0|a#@F+S_$P>env?$p z;$P^Wx6gaD-~Ml3m_#x8tDso(HrxQ)Y^H{D;`PUAGc{ZrJOj0{nWo<hahZIfEmxUc zbN@e1+`MQQWz-(T_8`9ae0<>>hwuN2h@FtUlR0^3#O#cWKArWi!A~vxY6HdOFP5U5 zU6H)2Ir-&Cez`e$HxRqoOx-)q7AMEqOmkfVVkX#3b6pZDB*|u)sQZD~&t}?PT#H(| z7P$+3{yN(*`8p&Q`utENA8Nzx>4(FX7uUY6-oXtAakx3791wFL{EP`7_I`6qyDF-X z(GY$#GWy`=FW1zTtg9g6L<m38RwyngUJ$*ADeQuZK`gcvi6<2P1R)+qrXcqzwn@t3 znd#HIC07<xMpYnIq3ps87DU;DD3P$E=8uNr494G_#nzmP)|_fH?SiHwqv<G-u#uPv z;!F^Qjl^saXQMN`9sA9(3ojk2o_cNr@itqI^84P!{W|Qd-A%&(3&ek+l6~LD%s-y> zZbu^C0pcAX3M<#0>U+2-=e?-;dy%_P_Jyd=h3HE{?)QOsA95FVs{E-%(cWw*_Xkk+ z2O#|9Z@YWKV_s30o(DmE5E%(87k`!)MOuNFE6i2*C`$CGtwAX{WIOel)jg0hS_9%5 zn`uAKpZ7(c&miVA=2}`0;(BwtKZkaI&K6O+rg;waT6xzCl+p7bK99~I)F*#h63hMy zc)nuh`6`I7qC`U3cY^0mTa9x13a{NgePIS=v=3$9XD<62Aija_Ei7kmg7~I6CV$8l z`{%o8xOXvRgeK<7FN&r^L%IKem_MM6ge}}j5Ko#%+!>VU3}Ona_Rk>x3_0&ObIHPY z9ZB?B0PPCWun?Q$FU0)IocwQ8$lquq;W)q_s>S1g6R(I)d%l>v%RWeU*(ZoZH;8U~ zg}BOG0OAGqVsVw>+8?5vvB)UaK1!SbFGBK*?1kb4crjvLY!>Mf5HA5y7}{Mx>|*A5 zIe1=f=E;>%M3It^JPE=Jt;v-Z#CGTJuHpokg5)XY+^<3I*O+tXYA<5$gY8N3V7qBr z%K$M0H7|?~t|=oXACBCIn}yE-F$c+o(ZQ8##N;<1<_+fL`5@-oCyAqj>*I*YZ-#ot z&GuaJerYm<pNt9-dU6OcLw3`ds}{ssd$!ma>XE$Oo+EaKnIO(I^Sl+wZ#DCr2jV<4 z&%2TQZZprth`AU%_pROg$%(9E&(eV93Myi|KZuwQnt471o)4LMK7yE!m}9O$%oXOC zs}XaxJx{!aTMOb^bMnWL{Bd*g=MeKbv+!J_MihP%Vs0|?+yb6k%sjUu=2mmeml5-2 zbIhHHxzn6G*WnR!--VdF%slsi=N>c9Lx_3E%#-T^i9C-W<`FZ`cfs>rGtc)C^L=y7 z4-oSMbIjw2dEA^k*FF++{~R$tH}m`wJij#a<Z5f;kU5FLbrR!USP@QvcnZT%*n|BD z;*a)HaSz7T-$b5V2Sl8gxN@8r^LGgUyFF99tNh!ZD*p|UgmawTkt*9A6U6H&2Z#<w zk$64T){!K)b(m(b4p7kQ;4m$G7bE7y4%5tVsbi3QsUu&R=xufU#p_01M8ohh#{l^< z$7|yK{AG@{AZ`+`_oK$V0vTQ5FugcLCB`9UoWpeS(g(u#af}yF<^3ITa(|RaSSC^s zGX)hQY&lXvOht)=>6hy#ip`M*o@r*DgOPl&W0JUE8Uo@F#1vKpuIDK791fnt%{+6F zJQqY^@68qJ#O}@YB}JYE;8|ei$u)e%4bP3p=tfkXu(RTNmm<$H#4H0(VIWk3SZO9! zfmnsED2$F;h*WD9sU9)w%~dxQ#HolWR2^6U6h)d1p0mw7Z$t9iKoqKu>mQ0$$JIzh zo_B%gU1py5fag8tZgVe)_nNy6S4S0j-VdJln|X32Yq2>V1kVS}&B4`LMV?PNJn~Z* zn?m<~2C9|MAi1!0Uk~DX#1!h2tH+8wUj)w=%{(_F`DPG>`s6yCVtsNoTao8>@Z4_Z zxf48hIts*L_&SKMJ95Nf$kla4p8LRapP46DR2S>>0C*m7<cZyztNn^RKXnY0KSfO8 zY2!1@pPyl>6rMItf_M_`F5C&6cBIRv(dUIb0U0r6w7YO%R6tZ5rpt#IXQ~|IG+jPe zL9{we$=x8jou;RaHcs5zKuJvyDHbtfou&)+jv#h)nw~a#A$c#v6rMKXK#X&mo;Kn^ zjCY#Wj=td87jg<4$bQhN?dLR|Ww@fPc$P^+@-%bu>p{F8xeHGlSs-SaV`hVx?KC}Y zj0AC{Ip$ap$C`<SAQpls+(?WEaXg5^v4v}hi`~YH3h|n2z8J}i%{5<+nB`8>Vj6({ zbHHiZW(N^7XpVUcV%}no*?^c0PSexIOyoY(T+CZRywz!X+L(*vbIlno0C9oSw8Aby z@+D|ZVe(%J;!?Dc@U*cU$(NgXu7L0>oTjIZRUocHa^Y!%tKN&1{J1ktejGf74bRgc zKJ7GJ_dN@q&pJ)lea}PA=gk%J0*Ei5M8d52qBC25(P?_x*o2syoTjIZ&4{_#9CHg| zZgHBPHnxJe6$4gy+Sm@_cC$!3K-_`BCG10XBBPz=j9x>`*FY4WHg;je?Lu;4814pf zH;O4dZTuU=e?v~;Y2yv>d;>g%r;UTC<b#k?SY-~Oi4U2Zm}~NjE5h5(H2G~*ogmUX zNd6AmU3l6!0^$*;>1pE_h{wzseSjwZ0QD*CSU!XBpP}qR5BVC!{2D!3c-r_D#BUK( zc-r^@$$!9r73R;=h<O?!2~#>Z2NC<{FOc&Wvz**`NqpM)4Z{Cs9>u?-mVP(ak_8qJ z7ME$dutH(n>N34z*g&+oOmm3cl_uL=rkZaH_3ySW(?lKX%9dkYras>ewixYProPl3 z#P%-JgGC1rJGe{_7M(!sWKP~0#Lh0$gT-a4NsU;a9?0o&nVO?Jl6QBRnj;>y6mPDj zt56|Vxl9iheL(C3qVQnRAIbZhlMg`50mw*ru;AuCqMQSfe4sh`wMc%gIe8k0X)aTz z&2+`dnJ&`|mW`O%F4GK_iwengnWo>7AdW=M3)}2*sHJhpUFgX-x`xR&BDv6$OOU+8 zWqPpigXlMBR0d)hgclwxra<^9$Vhmwm<Hjep@Rv_#B>m+Bc>qdED&d*e+nv9+#W(a z7tclRbJ1;t2a9<i&O_OSdFgJH{ce;<*r{@>B5_{g23ullE<uTwKzM=YQpmX!Z6rJd zECX?wD@WWjJPhK)t~Bv&VmXM*A-u35UkTz$WF#y-+-^)1X)Q!rYZmEoB!Ap2(vu)Q z36X@Y=F=cPjY<|yyU(K2K8sE(yiIHXaRV|EmL6`tCW^EPF*jjo3$?Tr&9T*GdYgC| z#FsI#2op6ogA;k~Ld;$0b;1kI9uW7Kn|Lppc(2R!Ht`0CZ=l_U`sAiA;@iYw@H}kh zc?85GD3MV1_rUW#m+5WdILdz9T=q{v{1lZe6!S|Ezck0>Mr~qOJc%|siP0g{CpWYe z&oT~J2szxQ8y+W!PPgfXr!$D1-6nlSZgeQtJhwU$N8DwqNun6Dn>$JF<~C`~UG0vO zuXY!TL;G5HrhKhCPx+~0dEAFRw;!hqqNv2{+&$#$z*Ep{<VKKU?!(=&@^E*uGW&RF z&-8uAwh_-95Odr;lnw8!t@%&+OA--BfjG(?r>yz-p8Ml}d_z@H8x7)UcUR?5k=wU7 z@skpY$!*9L&6u5tW8EHkth+$@IeU1x?ho6oMC7LLie^GjL~e(zXqMeXoZ#*(Pk@{| zew}%G<>e<-y)|xyuW07{6qDQeE1IJLB6{6rvez9Ftve<`q)8~zxUbvUx^-&*J;f|V z%u;hqKVtgbY068z7rZ&sov7ZBPjPpVr?^KcPj2|;p5O^rUrJsDVwIW5ohc}qdj^Wh z?NG($h)U!h9&{HGl$`sH(0xx3kvm#YG>;98NH*Isy2%B%N@J#Ds%09p)gByyZDBF| znvp5m&|Dw>?P32*^pM#(9N5*uV!mTXqcxlbrW|C>flMS=aF7)T!@AW4&&y~f$&JIw zpplym_Uvgi4!6RPg^XE<D>p(R%xyX-2hE}ee5!+<vSM;^!)zGinmS1^W{()$V?pcI z9StUi7TD>Ktq$eHmCPw8&Ay0C2AL75`Y|E+iKwcA4Qn`#n^p4f5y3=X{Q<7wVNcnr zm9fSoX0b$EwNry?h{%j!Yw&$Fe9_epXU5U&A&uTSEYPVUy($uxA4G_)X1ru*WQYe( zY=Wh#=xu>DEBPadiJ?DM%@m5b^MON{4-LvmQ>3N>urKA*F&`S-FG!;qrP-9z0xfLP z#3qLP)r=Twwk5{aLc8i#wM`n9Inpq891BcT$V`P;b47n*t=Uf*YK3(}vRvgp3&@Q& zs|nG9m0MsD7wuGKv>lxisH|k4ZNaBl#4;O=axKs|Bb_r6j33g7rEC7Fn-8blyGt7< zWV?y4E%~eKga-3^nad642gBG<mWcx<k`3{l1MXC9iM2hSDkAgR<7GCs_4wAKmqcX- z$)cc1hCyJ5E<Wkwlb~Glg)o1CA<Q?Jg!y{Nux@6?3&Uzyb27uQYVoR4gu>wqla+pT zo@r43OjZBXtAAimEjCimo*skH5^UVa&W(i7%*6~%O<v5)ge((1efsn<_xnyouA&Z9 zDsFp5m|NvA+$FY4mvk45Y{<}te&q%-gt;jMVXn$fm@BIj=9=e(xo$aOu82#RtJ)Ig z3VVdPN*-aZUq_g0&=Ka3%Y^x(FkyZhM)($-lyTohn4g*n^V2TF`c;Louj`);Ri`Sk z8yVf7*kG4Hwh6?RD|Qm*&q;*&tq5iJas6i(|M<x(`wXoHw@YF8T``%bo5tsI*YeK9 zKvQ{D<z>?;cPWGq7u5xVwP8_Oqh+-PI<urVOH%QRCSp2qVdf`W+;b)iqZ89<DeT0J zvy^#UO3Tuhk?FZ^bW36}hxgol3tY*R`pLtJ(36>=F6FFgBJp(Wds*-VR1Wt+-m*}z z3cd`&?0ezGA=u6vil#efNH>fR3v`=EzlqAn&l8l3wvprIqs+=HhcJf^L&yoz&|J8% zs;VjTz~^nENB>tjJTz4s{#}f{f#ILN%9;xJfD$KX30p_nK2pw_Au(mi)>OEefNxQ% z5u-C3iJ2W!3eBX1QgDAf@CRX@c8%+S6}Bj3k3t3K@4bZij++>3x6>+P)^nJ%Jg=`9 z&VCv@jb5`x9}YHX?vwUDF`bTDh5{a8e)Ub5A89Ew&0d-^qi^>`brNPQg~SZ4DY0h$ zsBd{->R(;%kGkn$elji*IsrGLB$2pn8gbR^mCc=;+)FUO0<3o%7sXhZIg_a~vEp{i zgt<kh5vMy~k4ZL}MCBM%ZdFNCjzQ(-bwuSDRBj+gRE|OACT>LK7*zf;PE?N59m<X? z^KVb_4||pBolOZw7e|p+5x6*t#7r}~I9e0CMs;zdU9j@{VJq1P|5S`$b@%L#j0~2J z!B^q@d^6jlhp~$kz<84kI7uLGjY*grVG`yRm4vw|BVlewN0?i+5$4utgt=)MVQwcz znA>*|<|bH#xjhwOZZSoen?Die22O;zbq!%|DnpnX!w}}?E`+(23t?_^LYP~X5auQ# zgt-w2VQ#!Zm|IN{=5`T;x#a_4ZpJ{E8!8ayrU-<&wE$sm4?vhJ_Y>v{^n|%KJYlZy zPM9mN6Xxpagt=BaVXll$m}{03=E~oMxh6MZu9i)hYdsR?DvX4=J|bbRhDewz1rp|Z zW`wzZm>NgbG9k>L5()EnLBjmyk1&7RBg~)l2=fOv!u$!1Fn<pt%wN0+^Oq{Z{E3J# ze*_}TpLq!LHygtIRfaHscOlH5MhNrA55oK<gD`(BAk44+3G*9&!u<N4Fu%1Y%rEN+ z^E-ON{KB0uzY{0SFSrTw+iHe&TYTd}6~f2sr}(Sk6sU1UVFx4QnNETwKUwn=7tNg3 zxHS74;An>?<j$R4hPmD8kM+|os3Nw4{@xvXH~n24yO{pM)SS%C8RyGlFYAmwtYNRJ z-)WG<+#zF?FEoYuu#Do3v3X~LW*3ZbMQCzZ$O>(o9wl6=(8UTBS~EQ-K~%?g`u2@( zA)-3J>td)18%)^AjGgg=-6z?866RJag!x+!<*D7gtIfrhe>e!l0nFr%s_8M7+Zqr< zevMBIHH8La`_qns`%P}_0s5Z8ctc=;!6zAg5@W6<L5#I4TqEN~*G1G=O+8>5ePvmp z%TN0J#F}fZ6Xv(Xl#S+Yg;ltAlYzhZhz(pml5Z*!Ai<|yBB=j_FG>~E!j~p?e=e8M z&digG4TFQ5Q>tZPwLQ5O-#vws{;DYTVr*Fp%rVI%lLY2E3?#5-xXy<Ple>%``Iuj7 zPl6_>>KREt`WgLPb;)z(b!6O1V@tcTzvZ#z^tURuivHdedl&t^FZMqA%Usd0c+BAp z`>VN>A<X^55a!Na2y@RZgt^BR!rXxgVeWW@Fn0t(m^;Q``1wK4=cGHHZ+Lz#_B-6U z1;yb`DF}176NI^c0>a#{0AcPAfH1fCC(IQI33F9JhV_>(Lrt^oP#!*}Lq6K*?ojmB z*0G~;7kW9|jgZR`V$BVi33Cf#!rZ2nFt@TK%&p`IbHgjb+&YOcw<;pc73>Lf#dyM8 zO`R~;yC%%_r3rIAXTn^QnJ`yNCd}1|33G*E!d%gpFjvqe%vEp+bJbbGT<eK2S2rTe z6<`Q+l?=lCNu4l%&n3(sJqh#2N``d@OXhn@eqjmcqV;jyVI4l8ghfjCUsvL*fh$&w zDE7&B5Bo|-lIh?54F8TxU>xIxS)%dhMij4J>%_5(QZ}uaQy6C%ZB{`Vnls`O{FTfB zaXjs|Jqa2;floUgkMUAhVh*OL4(0~>-q-2EAIA}saD5=cybTA{QvjPW;J7;ke}1ZD znv>ORoUU7Nr_0jef&yoAoXgn)(M4L-YE@5*v?^u;J4)D;54$8?@yj!NHYlw>c;@uy zU)hc-vF~k6__*iEr<AOsKJj^1?7zawe5vX#SlM+wJ9+2_7Dia_TA!@ES~Vf<f~m(( zT5bF~Uwhe6r&3x=*tGyY|6^LZxJx*46l=Vdw8HfTxxZi)1O<Fj!Y9lhj~LeTrEJLc zb2+(Yrd@#QQ?Xfp!!#A64q4q87b1z32&;kSD@JV;@jJA*?jT=__}~s)JcpZe+&D;B z{J9evDg?J9C(Kow33DYZDxBu=j07-T?W>v6J3*N4B>EV#k(jeIO0M}wqvWczsv~TC zm66@jsGTDSH<7FcQjI*Ae>LKv`F$cDBh`;G4Z#;e*tM<Z=`kFv4Y8icoi4I3N3ege zf$0g*#SA%w48ubvzITI8JT#XL<AA3UUjLapN_9lx{)X<C`KO;WGUc3rk4%N~*oW$v zs9mMZR+(`YDKln_C8l6>=IDW*!POpLai9|HJ&~ZNguEAed>+gl9(F_DN{uxZzQp_D zvMA_LKd;d$bM&aJfgZRp$Ce7w+4ZwXQ@?S80TdJCROVeL<yPL~OI04&Jm!H@X~Q=v z`zF=gH)75H8x`k$(_aa`GT){=H)PSXXJ49PRrZ!&kUsR6pJys{8;TEZEctky#1?Tu zPhRy_4F6i>V+%b_^G0WG@H$^8;KRp?yrn^0nd9LmuH{*;NqaJ1chsJmh6Lr%#BX%V z4rN_%vqG*`7$=yclSw*ZZZJxiE3gyh8rf=mRhyVF*ZCsMbvGE+U(%aM$9l%Oyjr(` ze-rX?LTtGmJmGFI<Ac#KVQx1`m>U-o=B8AHxoSLNu9r=i>l72_%4meSjt^n3`#_j0 z2r#UC@YI%^A-8vV*|0eYS8G@Q)bFtZ8NG^Y{ok}LG+uRCye==Dpzd|uOMi8<KB_>t zPxS`jHWc1#aTTe0cW=4{H}3AOus|m(bP}K23KHhZUQ`rK)y~*T>SdvNsol6$X8q8} z-vP%m<Xnb$a=#UXxrYM6+{%S8R{$l<Rs9&&RkVyUkpFY6n&c}LuJ=VbjB}(7cIjlB zPJFqcIbp5>Mwsh!QGS|sjhY|5T+xFS%S+71c&>10K5mE~cUVK1TND%K%Ho8%<~L!k z*~74|S7j`3<AX;@5T5Gwre(EmT+c3qLmhIeLtMG962jaZo-nsqC(O;y33J0(!rUZ^ zFt-~b%q>I+bHfnAT;rWES0pCPwb}@C#WTWOi;Q92H=*&0p}aB!Yes2yZFPyh_>|#s zHwZldzWS7^|7Q35!d46Z4$0>s@z(T(jI~L<hq{h<RyEh=1@Ngwezizq?k9yXw>&4z zt)>Zc8&SgCI*2egcOlG8H3)MBWx`xzj4;=BVpw-+LnTlLcw-09Pwv8NEL`D`I~?N0 z^~Z^qrd~q4*q28dIYqxBG2ZS-&`=>Q6=J1n`WY*hUs&iXX(M-CPUF~Y1y4`p?TO^% zz8MH}{|AJ*Wj0}MlSi0aAQ6tiBO**I2y>N5!dxwpFxO*ZSl1B}dmOztp|{~%QE-`D zSqg{7;VG<pwKZ;-pkzdfM#M-{&NkM9c2gAfHQx9-X@Tn+a$iI8aeZ%Mt2yQr<;$vO zI|FSv;7G(|6IKcM|0Exv#E^UWB!-&inNd#uVUQ@TmFQ7DqlYU3Wq5UI)ymjvaq!?q zUfd`X?gxu7_mM-Gdz&E4y+jb^o)`#o7YKy8mjc4vy8vPCDu6I|20)mb`xEBI;)J>B zHeqguO_&>16XwQ|gt-MFVQ%?Hm|N@-=9YGZxrrNLZkk4zo0JjereK7*2^V2*dPSI< zOcCa$PK3Gf4PmaBPnavi66Q**gt_)8VXn4Gm}^!N<{FWNxq2gEuE0o`t0*$8`(vig zVmOS@MW}iV5$=nb6K6`Oxnfg$8M{=&mWDkHHeEYCh9PBvA2;&lMv`#jCt|4i_BCv! z*gX&XhR``R#iA;TS>ZC6+y+xt+*>eV?j)G9)qKLK<<ON^*f~Aw4vP&D<A-!C@GM8( z<%n}fOinPzBF>uim2n)>cMY)B4^4?OUm7dg2H$k#pN`maV_?GExQj4XA*Jjzjb_S@ zmc0^a?}U8O4zc1cRKHG0^r&B}@!|8o><PA2E8}8ogZ~!t;X+w+k1B+@QZ-?&%}gR` zUi6GL5RL?ExSB*`6|k&~w*)pg;Uh<U#FAS*6XsTIgt@LPWu>{;5VC^mgZfR0#+>xU z$ynJ|IPD|HeZ-b~?I6sp-Y5%ApV*j1<MzVn#h(?&xIw-E9yiJBCh_DR&j@oLGK9HL z6~f$u1YvH@OqkoK66W@mgt@5^VXpg4nCn6_tQ)_n^6NSW#klgQk5WO#9j^_J0m(Ta zG3EY!2y=%Zgt?U+WtM$w>*wFRXU)BI&BZ=n!M^U}#V*cIUk%W2zKj|z6osjrsTX4O zX>~8VQ(zbSU8I|0Z%VXCH^qe5HJ4p^w#_4t6nxzGHl^&Qi{sZ`ek50U_Oq*|)W3GY zDkb@;j-J{L*Gy3QAKiNKhf@o$a5E(<!QUWLVpB9lICkIFguqT=`uUE<V7K(bL7%;V zDcYMEi^1;ig&6E@Oo+j5_JtVyUQKf_)7Uobnv$M`=qpUZDZn^VB>1NxA2n3#nxjKv zLtlAp)cG-LxLDv8kz6CPRIno?TSDT{b(-(UQ$23m!DnImN(XyLVmeXAw$gM1O&g|# zT^A-2AI-xxR~uoUT46Ufjr~lVf^>aL{T7%lBl<t^b+p<l+;+BZZTxJQ6;ATWQ9hM| z`_?ART^5rhnt@Pb)z$^VwfImfJAyaL!^W(*P;r-N#E@GX5kt*9vXS9bU-cBzx~I=G z;&T%B9!WfxqS|3@Njx?6bmGZ3YwBAh29Q5g6Rgxe<JPLx0K;-BLAjk2+=+|kX;PJp zL{L8;hQ+MO$=TS8EO1mw&MHYTZrw>NHA9ysEOCeKD-Zeby}YIeE2D%C_?{yFQ^cD4 zRv^rs1rX+j?u5CG4PkB{!mw`1t?pMN!E$^D#>>8;+SrJ^*3C-R+|4a<<aXi2QL|KS zQaIFCF%;jb8#%M?A?ojOPoBh-o4yiL&8|shN*fBc-s4`ES6Cy{CVOu&2kzR9a^O}| zl!NAz(<nB5LG9cs!Q8DUvE+8J#8NY6RavsNfon20oqfbX!X14QLv9&M3^mg<({3)W zHe7LjuXbJGS(v;F6Kn3)moRrUOPISpCCpt{66W3z2`AuE2rdH&b60<axz{Vg+*=i4 z?mLPwcZNimJ24{6oevS_?u7_*UqOVqj~~L^iw|M$eTOjjnnRfT#Uaf7*%0Qg2ncf@ z0ED?!I$>@nt;SdFTnTd{OTyd|kubL)WLUQvZftwiD8N@HC_3shn%DujTUFx9?U0G9 zW-(*zq^g=nl<y9;@ZJ^W+gWCf4>mT9555vicF1gp1kwCyHWrURSe@&j!X0u_$+)d6 zG1Lrih@qyrf}<1vSSVIWXwpafqUirchsC(o;*y~(&`^M(#7Zh2KDady3CWFsNJz~_ zy0O&!cvfE##I)J8?BZnw_aaMdx!E<b)xMI`_)wufpy8Dl9|`lar&!@7mg!hDzQIO+ z%#Dv}-`=<wN$h((cs9|j9F0AQ_S^bQDttPN)lHINX>`CBA^9VuLU2bxgt_+@!rXHS zVQyYYnA;07teciM)@8W1I1B><X1OHn%#3?x3q0<U*InYr&D4pX_EjL_R}-wM#p3Q) zH^`NNu=)+m9?~7H?&xEY?uc2zw!1dvvOnLP?fh>02<7pculqCqk$>$~zP{z2?w#fr zKCjgG9l7qA+3kI;nMH=Msck}F8YRO1lWA=UJ5=`QAZ&ZtmQK;Og>0AGguv8O1g1;{ zOkm1B=%#4jg=0LJuDYUWx-$aPsaG_Gd`94}X#7h`AV|8y+QxR^JGrL4S)8M|$6Lk( zhU8>SP7JlLLJ>p5<%jWMuC_{lWnn!m!_dPd_Gu|%q&bOgl#E}G>UJ<qH=E)(=I&-m zL~hAVoHcW7m9w~|W5tfPPZ2qDPqf6D8+j9F&F5;P%#(xW9glIhZGop&^43b6xOFsf z(!RQ*?)BM2u{T(zZugDTm|>5f%{2515E0)K#-!G|wNdxnf=~I-=X@w5{*@HUNHcLJ zk?E6>rI;C+aU8yItPjNKx7*^-<PKda2W~)3IcQGM)S~#+`VRY`l&_XV&m`(jQ-UKk za;8SSG{1(%rsGQwmI|Z1taEr0K-3RB!1xX*>30|}D(rBWNKO+;aPEVUF!u;Zn0xXg z%>C*ytQ+w1J(=(>>A?(+423gZd`v=u@vT9E88Ddw6F1GxH5D)9r<wWO?~=x4#tL`Y z<T9Hi<&I4WbI%l%k7gpwrKarYV$dH^&AP@g4Od3d?7r%8+6;0tt_1CG1-n2u)};gk zWHLggT(l1<sEuXV0Mo}bVI9e=*&5r-yx3UqH3s@31BuUF7!hO5nAs?Pd1Yb1Utbdp zMR38-Zb)E(rUHW+MSY-@X;Ele6%~H=^=DQH<3V16!8937v%GpJcW<1V_Gn4QHg%FR z{$KfG)Qp1bKfAAh4Nr_3*50)x5l^ANWI&nv|Cp{_Tk#}1qrX7F6AJ&%pCsoZw_Nun zSe+Bzd}iv|L&<p>KT~f)n|LGmt|#w5F)@r2KD6V-7e~C7Y#ZxK9)v`oLHLaPAa@Fw zzC84aJ9>upo#tW~{wS3rx(7~d+jEVUAD5pGNc9g&pyj7Hm*#e9RWx+7T7q6HKU{rN z{}Y!<<Jyjc^cxJE3A)Zp3q=2%r2ZAjCLcbGQC@j<|Iw@JulP<Al(jESCulmYe%0Er zeCztQJ<2cRD^{|^G*!>8-}!k(>hYy!@nT|>wA6!3LgO6u8e3j|^Y+;EZ`25%_+oVC zYK=_a;`{K6r+So0g>4Jb2+x_bbe`AuIrXn!Hu+p+jB@?->;8D)_pMKvIioP!i#)S# zU-JZCUW^fxtA}J;T_c`*(MVLWa;j$G+g}`hc$ZcMq<_@7l;{YiLmFqD9V@h@@e`lg z=Q}O(z4+wry;266A=VOyFc8f!>>bP3*S%Wtr<Rf4w^>`NDo~A6Bk$T$c0xAm!cR<n z>K*0L(`i~--cIzTTVTJh%7aU_n3NO;FQKw;^w1wFM~t~zZ5M4<CoOa>YzuzR_x<hU zn3oQIr14WlAWbWDDE?Zh$uKNoSSr#?Oq#iJ%kgpl(bCZRqAFrF8uO}YBweFP8lEy7 z)u2qVUzpWl;cqW%iM5W_IKei~wdh`aHi}V3J>p;a&Yp7W+LHcJR!P1d&y?3oUBG!^ zZq5wrrkFU5v#DBHb2h0~TV_Hgsx>Pi3;!RQFckmC$9-K09l%i=<WV}yg$rW8-xb>Q zjFuTMMqF(*yJ0Sk_m~w3W0I3ST9at~Q|&bupLQ+zuIR`Mx*nxvY}>IIuB&FOT5glJ zm@~gnd0_SBxy%1++oAmP-u#n&AN#d;qyCtFYpq{a>*|`Ca%SVFa+`krw&^Es^-t3_ z`8;ckvLoTPhdOkBa;sTFjKHkV9yoM-d(K3ydTOh&ha%%LRh62xF`<|)UG%}EP0y@a z+Bbed_y6aYZ<~JbR{zee{&`#dtG54_kJ+}D>+k?rCv`)g*@3~mgAH!^Af93lT5^Ey z!FOKnu`=2~oD>Jz@`1j^Wzn~`G@uA}S`j-#cLLo>XerQALTiB55PA{lMMAFwy-w&b z&|yNK0ewd3V>k`{*uir90UjfNa4-p;f;+aSoQzfo|1^azNT5##Q5r3y>>t@5|9t1? zTBGqkO%q>6C|D0|O2POA!;^2U8~cJf%Qy}k8ga|}(sk1Kw&Qyu(?F*+&rkk((C3^Z zdlAG`H+?3)AFi#aF`Xchq#rh=2Rc50idDu~c8$G#W8Ks!;yznjaQUWR4t*Bor_tk; z|D7zEdD>KxA*vG#5C04KwFyqohshr!z1#I&ELxA7IZOJ7o*U;Qa~yR3>eui5{K$_f z<FwrMiHJ{>>{8k9tH$<4>-v1bmP^o~N+i}`oy#*23es&#aR2V)g(t^XY23VC{dPnH zF+F>7-Hpa&kqTnl@7mwlCLM4c!2b`r4&wiZT!-*~<?Gk>hcDh&a<RshvFe`;h4`@q zV!CzH8b;CTnK)YIT0Dx>N^y`e46iU@H$xGi2t#L-)M<rdD$^fx^9|`3Re5-DDCC>! z;f^%IF>!GuZ<`n?Mv|w)RnT;I`W#9Byt8^3QYG==s2lNlBY`Tvw<?VF<&x%q^<3xa zmz0#`>FdeP8-r$qObG~?7KUOGCT?hhVp-%`cOQgdttGk6orsX#T2ka-r&%Na+VM9R zoIe9p_>pfVo=A{0twpNL1=w8{xCbEFro{~po*DJy-|EwLoUa=5oZ8Lf2M(MT(>j6O zuf#CrCuS`^3?T=pv@Nf?KQ1oE8P%p?l)`8e)`uPP%R_iFFO4xoQ8g%TGR7PZmCc5m z4e_r<p1Ek6T(<{Rpl+@U^sPFp3cEZK6*JO})ee#+AYkFa|5FfHHyq{8Kw$gnQSMO) zYzEQ3>aEY=o=8=VI+=Iq5F0ZD_Efml@IXLlQa7j$c?z<|7YrYjH@3jzuVX_WCmv6) zzP%vdQ_evMxsXqtt#b9XgUM%u&(3Uw!a0)s4BRF@<4lJv&p0CpbAX<8<{(T!-_gE4 z-i%b4epvm7{GMQS33Rq2BptoMRO4dN6D%WwYD3{EW@h^k?PHv_KXx$D)X7y8tutKc zjzX9S(c0pzt*vty1iH{U5P?m;vCcw-GW_aAJTJwYgm{xEo)7VS6wl|J26Q)46eC43 zrT78p2SO)t+kVoShhI-QGZ5G!a>{u-!eXG)&WQ-sb0pd0DnwwpU4g0o3KvV!&6R<` zQgn0Oj=)lMcTGfKDKg>6G1FBDl;ui7U=^F?szaDdXbaF@plnwT0;}Sk7hhj=b-^FK z$Edfl8MT2*m@#-veZH#kt~!F|kLfyyjtFc7SY($Y8=(|z-R^7zAf-+Fj0Nxi(Zi;W zI1@MZod|7&kwmkl%EtyiHph4jU_1EO-9Y+x<JlIr0#EuFc#=HK-4%g#|6%CpKwH!q zU^u$-aChDucEZK?mD~ftK>MUUP17~LK<K8MaV6(6{1Zd7Td!W-VuqJ_Cf9}|o?f0n z*n|7?FuZy&tpaAL;t50AO26lp+F-;V_Vi+%{1bZ$LK>v_1Pk^j_PiJ-g@jKM6eCPV zC1^X4X1cF7sEUJ;3J((q`m3-Y@$~A}%L9K+^fyq2jb{LNy_HkJ`mjA6ArD!qyM;Vq zT)FUtg&YJlt9%q6A~<T#M4KG7Hz3Rdde=S*fpzWo5$}D9cMS24QM_Y_cZ}kFfOsFU zc*^1@d{g@<kNj$=ttgdO)UBu+Ro@t<59qlndJUEaYoVQ})gTgJTZI}tNHus6HF(fo zz-#ajYVZ)%VA_StI@qtw=-sjaH{Fcv)pm;12R*%R>Sd_TL=U@WqNxD$Y8Z1Avu#ME z8fL4GHmyzZPo+kOTst7w4w7pJ<l3RP>`utFljPENoB!9Aoz7c!COVnWvM-`#U!;~* z_lD+{-Gmm~L@l-%Ew-6jY%^MHGqu<jwAdDE*{z7TmEvtfyloV38{%!FcrPQ~%ha;H zzWA}`pU1wrzvYUZJ`=ZJlDq-+v4QGi1L|XgULVh)KAxlcShl{~)3wTfx1OUu&b@qG z!$#H`RK^;r40X#aR)!6qTggFS-FzJixsD3C4uxDtg?t=^e4GmT!WWws)NOcT2BaF{ zy<zO=f-H>nUPTzaF)_66GgUQ7-f!=NkbwcK9V^aJj3xs%jyG$(xmlN@Bul9z>M=kp zi3?w-$w6QxS%#7<qmnE`NtRJb9zsbTqGo*r@gAXg%Moum#aoVe%PHOp#9KinPI~c| z>u<f_z{-}JH7=f-^*%J~eblV?p;_<Kn{_dobul&TzWIBm{!zDh&pGPj+|7C&Yt}na z8Fx};sHY>bGHmz+P!0mCjJxo4le_F}>AlN717SYU-6-VURLCE%d-0JguYUS%EJXfL zHP=NBgva5^UAwAa8#<f(F%D)Q+fqAVt;b>QV_PnkmNR(EIpboqGgwp4xIj}bdFG1~ zQ+9S*P5s2r`iP%(5zOW>F|3PN<PU9q5ZLDFCs!W?AmtMGPfM@$9bQPO>RGCKQ>u56 z>K#h;9a4QqsjeD1e*Cdc>DN=L+^p;ZB&3_@F+&EA8ZtUF%S*%=p16LVL4!Q~lj7qc z0j-iu6svr|mW;q=_F;}b2yBV}!j+5wnu6QPPxqH@ZY9)BxFT4OJ7fQ-+NxqKFsLM2 zz12!ug%_Gtwn9|MD%(Va8K|T!aEH3Z#b{fwwb<eUO^JP}UuvZA3W)?yV#Q4|6?YVh zJBo@s8O5DU#eHbVzee6F`*SH(154E)q_W9<P@X<?dOm^lC)D&P*<=T+?i`dX$CZYX z9rta&Jx%W3nK=0vC!fH{DtAHpE|mUCd$N2bouE@8Nh(RA-F2{?M1A8<qBHgnm*_i* zOZ1&YHg*!j=CGXv1fWB~kJ6sFw=#OFMH#>Z7$68>kvl?wjwC=bvQ4IJCp+KtkA7vy zx+V?6Hul^Wi?t1F6;kC<TjdO%2F_R~v2JRuKv;xUxe%>#p^MQjbX6dLrd+ys-`7hn z-?A?1Nu}O+QnBDf&=H|C(vNZ%AQU3~rU@N$+9VAbOSKwcg$f9TvdTYMlM&DYvIFy^ z!_Hcz4O*oQwMvgk%F5b5`V44!`^Y>kV9&_5dHmEAZ!eSM?bWQu_PX(k+OMy<nItG@ z5|j%PSmc@3J_sz|N1S~S*x-9<&!>5{H|&q0RQbb)4lBsWA3S7478_2zZe|QH#c88A z9}M!XZ1-FZ2Gwlmtvnyocl6oI&Rk9mrm|F1g>0>I1O<;!!AsE{OQ}09b|%Y<ovb@9 z>pjJ?rd@6wrDsFdkpE4LlSj)RI_1be$2to6KZ`1S*3M8FBq?(ODRtWlHr_DI-G(^z zW0Ld}B(cazkR*vD$wmITl)rY(g;eULn|NTubo)A{+t+EjRWF&$)9o%yx4US%-HkP6 zH?1kVv8L>%HDwQ`+dVYh{*rn8jl{0ye>I=ex0qeOwXtofdKD(-)CM09%tt7mBgyUX zjlFjET$I1PJq>}?M0@)zgatqs*(V@OM!YUa(S=f6h7^}kimph}l~P=ec$ZVW6vRuR zcvmCd)f6uk@lq+?HHdc&i>JJ^<deNC<8t4nI!<MEoNB7$IMi_*)o~{3IFsr)?~OAl zBPym8HdAtK|9<Y}Zy;O#esJU>6rq;X%e*3C^KQfUWC{`3Y3~$1By-9^=R?OFpe3lA z(+->p9XR7DLng=k{ekbzFNGOpq_@FKzD?N@sNZS0Whdqlr!^O2et<0l0b^cHL35?p z3P5w?R?+QXzjk-RXNi-cJRC6dTr6Hb7RY=Ti`NRrsa9_G>tx(KOm-(>=6LzYZQFM| z_()$t3}0;|SOvAy67RHNunMAdVWWUeX%_huE>TZe7`s!JB7_Do@%%9Sz$drRb;1a5 z32T=Up<S%<2}?2pn||736t<^P=tK)SsfBWvFW#R!p<*6uA*Sp!yt<|~Lf00J_tFCg z(vh`i<Mb0Jzhzm9uo7I)SaJ~xfU>N)2r8Nn#A^Ls>s$oZH{Y@rAQTZ=0)$(9*<mX{ zU^Itq2?C?V+vXuGBJ>8(+dzYCD-j+CYH!a&7*A*s&@!N|pmil$Do`q+I{N~-&b}1C z-UW0Qp=I{Fu`guj{pCQ*39SQKM`$z9W<uM5wh`J5w42aTpreG20Uaas1<)6SPC1sM zm$BNo(3y+C>c9u&<7hq*tBq%za}ii=oPrMWDJLuWDd!RdR`PDH0t80u=30WlXj!g# z2&^`;TyG$-+8FOziNI=OpgSL70_MP%lRnyDla8E-dR<_+eBfQYbpp-qY&~f$@3&+l zRG?ou@ZD{PwE|t&1>~|a+SRsE2sJ=XM*%_|er<(|hE@*t>vurk5$c93scue|wg*rT zC;N4bYZL-Y>%xNRa<jA-;A-LmH-1$%PyNhxY4Ycn3j=^{wZ>IIg)LmeJYI@hts~fv z9<k+s-w|6rLJjzRkNxQPE=K#_m5%_La*<{F?)=Z6PZ&9T)bNb4+1Xk7D5!p5X(hj5 zDMY{xgFF}IoNGl5%Db(F2#oemY~%iE3juwD8RZ)Xqpd}m);d|d&v6U&xs%auz}D^t z7mN3oD*=Ixu>tO_2ydcA9zOKKlj*%auVSx;xIqr!R^Oswj8kaMu}63qc(?~*MpK{T zGoE8NAXfY<8-d-#4uXsFLGFq!5`4UuA)tO0?dhkPS@r+RrQQz9AiUJDOFi|?#(b&w zlVz0rlV#!@N&X)uq5oOf$>I#O3eM1*&d;dMpDk?S9bz4Yz~W_M-psVJcv;qg2swnN z0o@IhjmplpvJ?k_4iY*9y_7?=$#~0}fe9iX@!qoDj=+ZO+t!H))ktB3=S`c9rL|)o zw%hXXs{?bhgWi%Hw%dVN3MZP;X=5qkpoko2D+G$i=Z@oTY{wsOt3#MeXbaF@pafeE z!UQZ4&#%7a=(fw=e3q8GFq>Ax!nA6WH)C4eOw;O4EPOj@;p>bEwlhtzpJ0OhgeKT0 z+UC4)Rixum;zau_a1+lfD%Esg(R-^^-ir<XURyQ<9D@wTI5L1f!3OdZ7ih{4%bvcy z^Ugbd8ZmNorgzM+;dCIPf8?tFn&F{;<<q~6;~)=)rmGP)f!{t$8NxK6<3Ps=eGl|K zp*GglavLj)*UdT!Ap#T+6i?_Hplb-tvW}N$Su64DgVt(<+kw_%`@PmW1L!&HGK6P= z_TtyQ^y^vtdX|3u6X;JuZEWM^Ha5nk6Hq5YU4gn1%C<%1Y#Y0dtFk?b@G8($+iC<R z->qoYTWze1-D_Khz;at+t3<dJXa(Y}pm^(%c0Hwi1?Uw*`|#^N`t?nqHwnFKTaK?@ zZ$w&`y%eDVD9OGSVJpyJ`)UN1?{LtD6YU0|8wf43Pm~wgL-=()(0W1#fDRC9>sXC1 zh_bW;9CHyK2D%>TdO|rsIfTXnjU`m;Scb1ZvJ%Y(noZ~~pt}g&4|G4FryPs$Rl~K2 z_ae}Xgth~1C$tY}AEB=uW%Ab!*5-c!{YA*-ER$VMMvHf@Mqu)#IVT}RfU<zH2#p0A zOK7=sJib-NT5Gej8iBR>E@uS-Yx9H7We7~>ukh<v^lLjDzS_CiubqH85sG(>$2W)= zm;ONg2@M1qNT}Eqk&9id&F8tEL||>c#I+28ael~EjX-@3w6#Qg##Jdl<6>>T$+a4R zm17Um?xD1YfesToj$e<{uU`UvN$8|&Ild->Hdjv1zk1f9$3|q*;4Nm;K(R0lz|S70 zfq&67umNY34c39k=S`eU-lRiTwX<*RV;jrW8;&}bzD`JQlcyv7bV}bEXW!Oz_D#en zPo!xi4yWKaIt5?((F<A058d<*Nm9c&)d-xdau}S##Aziaq?I%wy^3k*RhovTPtDuA zX2DC3Qu+)W^v2{39+JiQ6j70Ao5}7+>~anm<yc0cAVm<V$d&{2J&s-9+Zk$rNDVHA z+Tmc|&W(7=p3_fE{(Z&2Pw}@&(_=*?zINcn;~)HD#<WdjdC(DdfSieaN2a9+EB8pC zk%aPq@(2}M(&S>=?FK;$60IJzdZNt+noa0#pt}jZ0Q3T(bZeTNZe=^=JFO`QY~y_x zEB#?B%T2;^AlVqY%$9<{evR1D5GV!EorE63uMg3$>p)vaw6jQimeRJhXUJ{s<B_(T zeIP;}&>)~egff9L3FQLi5-I>HAoL9`4!^Ope18I$pNPv@{Cbvt9q34r2hyP;3n+_F z9#9^kn}BX2G#zL<p*w)?AhZx@A)$wW9wPJ{`qOicOysr=Xd9v3K)VSY1Ug8l$eAV= zIawX7bEY6L`F_N{=SL^i6<)?JgGHw#U*k$aV81TJ2htYO0cSO6tBJM|Xd|Il@$0Mf z>&4j5T<j(;?lk!_H_Kx%UYiHIA(f)(vuV4dXgejZWf)W#bFe{Cl^OGCr)0su3K7_o zm)9}_VOAGODO-Ft{<+iHi>a?qV|{#@X{-!J7avSxWfI29BpNF-Fji*JSkd&<blo;j zStO=I2OHb5#bTorYe|P3s^(g{t{|trptZxA+0HU~jwE+P%#IeQ)GJT?_vk_8;j0pa zeQp_CDF*9@(1Qv#xui0}j(M$RC$wgqmUL8+6NPqKCZTZSu<IIUVO?yTWjq4g_y%A- z7_hQt4dCDvu$F>0%eENdX`ltR83;>&?!-p`?sT$vcj8ELr<28dz%>Jb{kjfl9Ye~J z*9P=@ymCM)8=%^MIATcM5YnK@eBU?EOdi+n{bcPo_E(Za&<hJmvG{%3Q$PHte9f*$ zjlXxrZ%GIP(~-NBfshOIm{g6>0CWhnLqt0&Wy?pUJka7S`3OZoUs@(2Q~+76nFynR zoYs5<_Nxn<2$z*{Ie@+40V|7_j6GknjiE_6AWX8cc&C6)5ju_QjMMf~(A<uE1omqy zM>PWDQVm))(N;L{9N-uanuMoh$;tR#?#x7B5_EUwBe1kRu%z{Hva}}<?*zpgg+sw8 z7fUe%$B`K>7S93=Zi}0xZG{6{D>tKE;I2ksY11({(%mSzvbA#3MeRN+S;}73;F6UT z)XSLGevL0u0mZ}iQGY-O7e1cSv#c05-q5s?(h>5}Rqv6Yb0tlq$H5Ea`Dl^(QU>cI zQXv96vMrJxN7&kk(wV=}jR?Cy;|R2s(lmtmpskkHB5Y|y`1MKY8-(9L;|TuPS3LCT zyD6?i2QV0;U9+A46%ekynZ{NDLMh6m>TZ>qu7Jj&_Q%mf{&;+@Z@i0L6pVMxM_3MY zqpJ*|4*UBXA6xkKl-X0~8T%@Z?2-o|6)kbmzLz^!Rt>$2O#xx^TRv-&Fm8rPv6vm9 zE%FH|AE5|&oCZ40kn-yjC+2=pQU5R>_61C7M$lm~4tu7E(h~t^NG0;~sz3KnKRv$X zE8)hD(RGln10czlI5H3l7@H#rU-|4CPS7+MWYb{KG!3R=@=H}uE?D0?)6H}NrojT5 z2InOE%708+vyRf2vGip^dYilf)9418Mz>+}vyC=Cf8pieFM2t6AKRe!X&cmUN}qMd zuK3_R;*|YQuo4eIAel}-q=Ck^3O4xzDFGoBRU3r3K`T4F^>QR5Fmx}(y_c!KD6=m8 z?X%x4tuEu$tt}>vj|5Pvq|FDLW!Z8u5g~$kFXr$QxWb>Lh<zbL8YO2)7{|(@{+&lG z+}Z=vf8&3Wd=~T7S*Z}eAKh`$M@60Q_(2`7rp*tt#S{99UH(NXLtrzw7xRMGJ&MpW zpvQnpK`SL%se2g^Xu5Mz_VU7=IN<#SbtJ7yTa_zYpcNapDtC*_-rJNX)6+admW=sV zqp)l;$dHl|av-kem(;9^>q#I}$(SBJ(66Oct5-cujAyKRTG7;cSq9Sj0qa>OEo=M3 zZEI&PX&v?5q`~-Z!d^>~5Ry@n?Y|%C;CkSxzW4@HxWelXg@Pf-*|9sB6#3x^MJLCx z&-QrWUUItb<2f9GVh!ArdA)^$y@T_Ij`4cquWj;cx1#E9AkXyFS74mRC9%2i`Pk>- ztQG%%IYyCUVp?IYOGRKavg%cNB9Q7+xeQ44sLW{0pYlbP3?SxB`4S5%P-ecAuO!4g zDfhNygQogXX1}UlltEKw4cd`1!!`YttdWC<K<_SwrVG{sE%G1>j4vz$(0>QGarSdB zLWRa8zuZ%~cYGf<QR1@`;i*-00}EIj^o2_4PIllxC|Tf_n2v+!ZIw+v_sDlhnF#C} z<OrtxBT_C<8g6CNENuE40W^Y8IZ!#FIhMIN_p?iqEud{7+IFDrg!TdLBXk_-IHB)> zz9)3jGC@9RDMQ-dLHnI(ZE(xmhOTLzv(Ca9pPj#7!=~glE0bU^ZhrS#Cjs@hO+a92 zvw^Y+jk9IS<LDB{hlSc_n}}ZnHf(5YENzu-0RlT4SL3d@+Qzs{warCf(oe(P<TTp^ zLJtEy4m1OtXAtLEwjykXDnPpx=vI!N1=<SQ?TB|f#k<!w3pWK!<^|Z@FR<kUErKkI zNS4JwiwP|OT0&?ABv?Tbtc0X1Nz&Eex0?7p4cgO0TMy~ilk^)P{RWbLD}LQdzrKQB zU!h-j;MX1W>ppPaN1WdTdXvy$)X-t7p?7h)^{#CJ<ogJ;kBIh-ZJ7Lx4HLfH)1HgK zYOSw*7y_du;f^|qZoiZ5g>tgJ7_@Z!nohqCw$H`=1*^$npbaD1aHJScDe^$eBiaq1 z-9WTO_DtMqu)ek)Xg#3=KnDo@7kT`b@{l2mOtQ4a{Y6^`%i|(PCIU;_8>ly-0gg)C zeKdgfPtg8JwCh2;o@nWyr4ua&v>c+10Br=(#)3AMXoa8^60O)VOfF{2A8tx!A+T1h z!>@Jp>uk_w6YW;eZYA1Xpxs5ZyFt5~X!nD5Khc(ewuESpJN{p3X98Abwf23UJ@1a1 znW>Q)k(qiF5zz=qL4lYAL_|^)CBPXB5r>>IG&MC-oN}xj@o1B1WlpJKnOdfuPM*k< zT4|c^vAKNO-|xQn2E{t(`@ZYty6%1b`LE$w&sytQ!@cgcR;0PXA>Y<!M+qYOhH`8n z%N?TRd=2h3<+j6ZS8g}lZsqpC?NP20u2Q+faEFyU&AQfUhm_lS(0N7IK-UzxoJnY8 z#Ptr)9g14Bj?h|d9gjMvpkI-<tirWQUC*($aLy@TN{Xu=BHvpMC`Zv4SF|}sEg>f} zK%MN8?`?)F36W>aa?MBNdz;NrYqm>bDRWIh<Qa>Z11?tE$)$u{s$rMoZ@Kzg?pg<W z8GkEqU7@b)2)j<ht|#nz4Z9K7jq17?v{}&>&=y78T{F?wNPVdwRTY}5ouq!JrhY%% ze&r65(u11PL!{u4rr<cP$JO-&t|!#>6t1V#wThUlH0HCQvx+W|8y7S;E@2IN$tB;` zRk*9lnZ##me2uxzwXvI=^i=OY^Nz)<&9TQ8=~*!h>FWQf17jX(*tvf*eb}QTIO8p# z9R|^Zi;C%;Fc)uw$TGkf%rVEfN7fi*H^Csg6{CU@cM_6C4;nr6*W9R;t$(5AulciX zn7d&+eNRJUE+Xh&y8C;Le)K}sJJ)ZVIt(owl@~p%NVYQl2~ARc_YwxirSyymln(T% zfT!3O|CH+~uZ^Z<R)bjqb&Pq%^QM!eq}4gS{*iNdhHuDq(+KEMIo1rtPt9oA!RTi$ zvV`~g$w)^Af?C^0BNIU`l#wonEE@T<{NnGB`LCPB54Ri6)2~UwS8exIB<pC)yJaFg zJXbGG>>tvpGq$PTixZ`5G?ry8qxts)f1H0MvUi-6Kw`EGKkx5UYb0wi?_p?pkB)>N za)y`>Ic0>?>15D=e>9x2*f$U3go!czLxKljlr96LusUIlEJm1LSX;lk3@Mz;nk)-s zb411l`C{raX|8Lu1@*K}L*(1(V;zr3t1-+u4H51!=XeCp^Ip3j4u3vx#k!g@mE@bb z#FJ}8QjB+P`zr3Cp+8!Dqg!v9+T;$?6X`k5p24lI80bpz0oQ@14UK~h4z{Fpsy7Mx zN=KG*WtTHbmijkQWDIIL*^n%rbPm}CB~2H%nCN<Uj%KOaMV6(K5z5W;*B9O%ytU%q z4N|+k>&E{ZyZ5K95$q0<btvyXq1x+EHghgYyt&qlQdwAL3!zR1=2?qDrDW%PYXZ`* zlx+*8=dXo-SM*k`>|7eYRK{g{zgyCEWB#{a{dslup4REz;ZLnqy^Pi+vz47yB>O<> zp#Mh!Z$AA`<9n@7u^q{`o8~he|I2)4Ci9t@Mi|LWL%o`2ivZ;@{mQcoDnPwj-~!bg zqxL6X=>NxuJ1}4%AMQZcK%a4S_T22}D7EU{bu>ZP8vJ2f9(w^8iTecy-|}BQ@ZygL zPo|>w3GPGd)yJ<-Y|UJuu3_<WnxoJ>j50z>d0FN)Y3^iDKlB~_)W|%`9cgB{6X5dL zQIY3P0*ydJGQyn&8U-39$dmeI-KZCaJ^XG)eD6L{NtCG$eq|_aHE(0h?lxP7joG`S z4I+CL+hLsF&IRYG-l*q0TA-+iuh&uY59z=0I$;ziZ38&x1go;vekq*4=KIHY^#iB- z^GTX$PfVjTHPpL<c%&M<8RqXsTSVqKwy_u6x)zpCtyTBT{%m6EZ#1X=Eqt-rxBo0H z5Al7<-U-yG!Q<89Lr&}C4CWh`y>Bt!F_Mtsw1bsg?^J2zgEnFUve6>#<tET3MHj89 z=0$4(+&2uqzp+Y)0!$(b?7|f?BrCKF=X9ka!nx?+TrN0I?y`^mW$s`0Y<zO>n6&g8 z^O&8atm<~N$}szPG;P0IhlB28sC=IemCxJSnCESh@BN+0i1_nI5999=e^GS%QQGZ? zQl6pifs{)1u`1e%iEgWZhv1M<-Bv(ln%Q6`_JlKCGs9G2Wt-<ekCt^_=sdoPXM&#L zLC=;xJC|sxcYMmUSdTIEb~P?n!`ckREUWDgx*p{6zX$yuY_UUHY{%q?$*FaWB?(Jt z#+J2M7FNet-eh@OR@xmDmBVO3_SB)U>lo2w&#oQ+42ubT(BUgIubBn+jdG%$?+$36 zWre@L9zrSYu+@AQwe7nWnhf(R428aO2pUOeKhn*UJ$1Jqyk*;m?rXK;d~EEnVoG0{ z9G}@wvC+gVHt256iEJ{PXtbaOy03em)iGbx@w>5cxULZT|J4-MLsebRl1!bhXK8_y z_%wyLGW)&N(v>IQW=Te*CvIqoMl!CWNV&B!36Wmhhv4qD<RIu*m@CghXmzR)uI<rm zx3~0z^C2{a)mK9JP9OJPh2h-`X+(!bqe8VAY)p>crfP_!MoEF>;r8iAL-sWP<n8}; z_oM2?aOPp*Hc>BnH>cjLUhIN;xr>?<L@?`$&{<rBZ7ygfRsA6w78<q^8mxa*?he@B zZ{dB>F|kp7lG3wdQ<CMAYErG|xRDPCEE=3!SP)cLoG(V@A@xJJj)UJwRaMAXqBDZ3 zqGlH;owS@H;oC3ThUSWvNzaim7Pnj+Y%vzQ76;etE>(+?B~6wDHZ+ztSxTNQOJ2r$ zi6=XD^>2lZE<O2hQcU0M-sw^4@jXaljVh)VZPcw_7X^y^YO4G^pTumtIO09qX{n~w zf1*H*KtyTw)wshils+3~jY><4dL+Ade7_icHLQOB>ujsRMMbRx^irb2eD6Q)*()?L zkN@=F{=oypfZGVFAJoDkzoUIAm@(q6xV7icZ0i}7srf4^mIl=is38MF<kRm|zf+(^ zep_i^OIVYzHj&1X+$AL>^?^73y6N-V+6DSPL*KCA`p_y{Pb2ZRElr!Yk+)S9;(^=) z^C|0qraK!K6$b43U)R8PqTnvZ=CoLCPQ6>9Yg>Za%(2*<j#Zn}5={I{)Wp986aNx5 z@gHYTHpi*WY4wQ)dX^|Pg<VIEYD{}reY&VLzLLAoG<c?oMNU5mt2s+S>&=1&3!2bI zhAp8HSn0o#M#%Hp$LY5=jr@0#%zQd@uGUeZlnM{$s#L#vE%l5AX}_LC7nO{p^O+~2 zHA>V5WC&=8qEbs4S}184cEIgWt`bzKs0vi2=pyK%qDz*c=$@qG`UUP6<?33?&^<{k zFIndz3qkv={Saxc-m&H&vc%ERHWZPtv7lH*ebMOjwedBecN&C9$2tr>&M=#V9fj@3 zC>sh`^iDa5#4-Up#R)cf+C+3p6Ky$)Hi5Q*CK2-_jd_Y~IJzfM@=gOy^Px9E`{1VI zZ@T)MN9!@qCTX5e+cV!LP2vL5vOv?a5VTNH8K_LrDpIgYQ?QzpuGW;UCBC&9UpZX4 za$8CLR!#jjQol`8|2nR(tLrXYcd6?hT=%GJB{5fO%<qHVS9F3LI-xmq%C-RAlT6x9 z!<|;HB@1dT?UGmR(fqWxGeJe$v<z7d3bE%RGT?~BHBw!p>}6=2B>&>z;*^UgM7)Mb zg-cbg7hEsp7GR;gz%FI96|_~+5zrAuS9r!1eTGR|OifEYM;RI?dB*K5>D{gyBHMx5 zDGGH=MB_9K*G_Pql<Nl9O}R+8NaYgX5|m4XOH{58Tp#5!;4+jO>zIq4NlLH;u0*-1 za8s3=1~*N)*>JO!n*%pTxkYe`lq-WPQ*JXB%bOi@h_Bp{fG|=(vs8)*w;gV~a=YPn zE4K%3k8+i8mC7B4JFMJ!M?Z8*QbyN6*A%&&{m>~1cL(SWMXj+zZS9m?JL;T^$QxDR zTBWY%oH^)}<O@i_W+z1lk2#<mMPtz3jB!aBO?C}J<U5*y&Sr*7o-qr1nprOSj%K@Z z5Q(LXMY%GUJYzBXnZ+)t_e%-8RKqUE-*WZ0-1RExbzE2Ax<Xyo5q6!1T~FBc8g?VD z8`X6)XtSa%pe>5FV^6!?CGS>2swy;9J4yXcP5pkj{mLCAr3W>ohe*L8O~G+okE`nm zTu-R$DO^vfYZWn9Y0PIqXBAx_H!f&yTyiZyrzGFZRk*9lHFjh3<fa{}x#+5Tz{4hR zxztN$<}}F<hdmr8LmtjwiSrJ5(psd2671{u!rt6FWn6fzVdKz|db}hfM_oFT4$5YR zSi_K52Av^{;6tqPc_ur<5aE&;ttUH0r&M<2$Ae+3_IA<vY>i=1fapk6so<SyH9$ww zz#7Xy=Qj)ze^Z0RAhabxPB_o}-%8*7;_o|dS|v;2M1T~x%(_3e^_n>1(}>3Z4~v@e zVqD+EMPbb&)GkRn6C3MeEs^d#KifSKSpv$1%T+EHE?2mki^OWKO(R3ab|W?{HbOF# zGlL?$8QQZ^Pk&zjZnj?Uee9tDJf-H(S<t+oWu)<G{ZE@j8mH@@=GTliS|DvfeT-Bj z6O`@7{=_XyMY*6{L7sJsn>x}K6hB}4gp2FCDmh)kuc`NxE>$foZMigrbj&~Jc{KdM zphs&G0cgm8zYP+?6NX~zGSni^de@SRj0C-BDL@#;m`yQ}XlfPniq5q1oozXw2W%zC z6i{!bYrSo<;FSr=R5Suh$`Q6naQ9=Cc)vX#l#h}l-!A^Xa^xcNjISL9h&&?<BZx4k zJR^;-BF!bw=*{l<-Y$7YAyd6VmxL__6)T#F<=#ve&+t4I{`vZ+7v6QRR<Z{fgWS(n z)f=YrSQDWIc}5nYJ-d6@KdZO=Ur(stQQ~)0Ex#7?XO^CS)}`l$RKbR-u<O3V^T^)H zU$)$se-_`3$dYT`n~<e428}u1c>2S`*2Ic&MY<e`c-_Kh9;<2dj5y{1-czdLZnE&1 zkMYWUqo~v{7cv=NXvqG@xBLzsy0-YmPyc)6rUrN|IhsfCfqSjsIF1h$=#NG&mH9`E zD}FTQfPTU(<|iYKocQ;M`>MV=ee%GK?_~69(@V@nKA78oOmn|&<zBT&c2az@46=2N z+xx}VLpM@SmzCB#0?qXfQ989jH_}Gb;Wej4$-uStDSqge>im(V7=-Mh7Xo?%v<l44 z%MEOMOTd5n;}X%}|Ki-cM_Nowa(3VN==8X@0lxp@Vq`bke+wlEj!%wG>6@Jv!_*?G zdr}MvH%+mZPDzbPemF@rnBB1H=w`H~IOR;N9!6=+Sz9u|b?`ygN1D<y_A$bdSWvt> z6o~|-VdI$QmKktAxPHnNfr<pxoZ{u3h2M1PA{tp)p^uM^PnT9FzD<03%^6`jgG~!d z<6)jDr+?gfC3B;vR&zd#vwi&ibtElK`7NeFQ*Kx#Ay$yp+LZ?UPHP;J4A&H{sdCL| z-kUka-`$|Qo#L;PGY%1dVQ^u}`LXlBPhZRevbgc*8F6)bc;gS!g2~9l?A|dw<9nne zr6kMO*G0a*8WT~A`3_&-J8B|&4oi%4j%2FSf)9#|&Q&H`d@CYS8oo7aZSU%}P?d)K z+-;6GLXikkbR1)^;}+@tuUZn2G*C2Z+-R$yd29rjXH5Vd!|dyrRs7i*ecE-L+!~|* z);4jCpv8;OvG{GwfNrykdZHPqnW6_k4=5^O_Ech*m}i4#D_Ta2x6CfNvl6sY(R$E& zMHQe5MQ?!KP;>xvK+#FiNkyN4K2h`q=nF-c8Pi>MNSf<$AWJ=`Ja-UikfJS|T(ZR} zslS9l*(Im=yN6N2JvyF=VG~)5OI$N)X)|5SGd!OKe>ivd(Gl&U)2a6lQ!ZkvSECBG zh<e**j0zkT6lw8fzm)fG>)363xygr_d}exfYFbKqO8O(IF)~kXSv^nwQ)lDW`nRIs zlwaRmyZTaF(W~8fWiGQyS{h?b&YJO3$JeB;8Sm${LaDx~)B9=Y0iV||9u-qIf+ciM z&`%?wO+vZ`Gg2C*wBkjpPjHjR`Hu4Op47}4qj}>oeQELME@X+!_QPG_eDC3Y;i0PN z`%6|)7DKSH^~W-Ln&6s%if?lL$>1kkPk=Y%Y?w(l*P|V%XN2;(^kf>@)A}-8A8RSH z2{eo$@i3=wk2y;bIM2qSg<qC$_&(#$*Acu&Ww3&v1*F|P>szr%ntW=#M;5HFdiu*+ zA3awO4$I4xz07?3I`EQj-(tSVqQ{F`_xEFsyI*RGr}~t-8eO(1wt4rj8h(ZHlrt{9 z8?gh;w!BwcqY>}b4n1N!qdD&oWNbsWgF<N&LydaUNZ_xN(Fm?HuAS9&KI+f;MrT}~ z!CvMWLz<NZ#xdmNb%Zvr46~CmL&lVg=@J(k@-ZzjK0&IkBmAw#b+wU<zcmb?))?}c zt~K6APFzR$yUo%H3Bq3kENmKBI^){VG7>4ej_}t6*CrN8-<>F0?^I3YU6x|BkQ4Fe zL-@NFfA^}t7WiwS{#s)H)zTuius(#pyBxuY#McycZBvK5Z!^aZ<gM!nO=b0=fl>=) zSf`6{R7<JUYj&(Ttlz@6HHXzA%UD}~Z6GC9eF&ihs%^y8Ke~UK1nD2tKh0;vmGE=< z)ovqNXZY%e_jY@){S$RVtCZA@yHcB^qNiToe0iHlzubV_wsnjl0Yms56)=j`$Jqh1 z!OsRf%kP<hGyGl-xXdqC*f&M^)Tjon5IzQqJOB~bE}$-oVn8v9GC&!MvOrmihJc1B z@?BX^Sl=b}Am0`BAm0V`ATg(EXej~tE~f|iuBHe1E~W?huB8Y0E~O{`qL`mN`CQ6( z+B+3UuT)TLOlUJl(kqSBG2ud{DhqWv_bOABt9m%X%Zw9W)^TF>DUebU*Y7)`{P^aK z{$>3)X<?N1-{dQd18-;ledr^rFH4t(Io6|vxp}qJUSg2dB)CTH<-!;%4Uy?^SJYHp zRZX=Uv|G`a>|guRmW68$>)SaFK^q(#x#CC%oo14LS|{ly4ZkT9&zgfQtB)mSiI&Tr z{p#1JA{cSuaj}wMjv<ZpR=DIw$x`8#q`m!nPRxoUzO~}PMMFxM3DFW66`>V66RK!g z5#eok&A;*q|J8^iSfkE;qhr6AMctD_if>xXzv0xiI&HLx^0sVA?nsPRNx!H1&|lxe zq3@_*j$o2it)@-u{25PSde;&AHtmb@yRTp0(3+!%WgU?QXK#zW!KKDY*U5%9qpCqw zbDME4_?#@5w#Cw+t<kj<bscTlC<Ax1z+e&82#1?$3`B;5RvW_+l=HL%*l$|~f}&{+ zqAi^IVJ6YKBw5D8^@QuGT#6;jOtB1wONC2SZlERI9B3H?H^?#w841dvb;+?vS_&}! zFR;keppX!S8e%N#AY&~BaO3bdPW?@`3^gZPis7chO;xTGf2HbgCb7)aSZ0A{DVl@7 zIqL5j)>@viWD@peVtH9(c@@`J)paMa?9^EHlhXZ~(zoH>R_;Ag^`55cb86$~x?}T< zCDuG+VXDE+w)u#p{tL@+MDpq^A<k-u^Mp9BA-*ABzR`U7mC5I?mWlXtFaUK}B_~}V zm!iM0v-2<399-*IGm%_SUDUC4br)wtYj?Au9_et0HJ_{C<hhNllaN`UdkJx`hG=6Q z$uZwjGT|t7!*!=<1SmpLBvt^CR>}J;D{IMCSwS943dU**N{G2cV;)a@<2Ami7$Z)# zN(nvz_k?m!aVF_g)=*-Z#V~W0Rq93=Vaqh^66+vyiB(E^nKc&~4SLR+g-G34%NwoL zH+sQ3l>0`dRM!)By@uULh>aSe9M^JneTme+q^W-e^opX_NXu)QmI_u_E38suckzr} z`i!@E#@qUgO6zE|(mDy(cj4Yu?g;ODMBn!W=!Bvl@%N+p``J32o2aEMuaTB(nihi- zYYaUB=T=*)d8<uU+Z%uyC~CqYR}-70pqZ@|BKdMR+}+9rqV^87$(y$)mi8J;ur1#V zwn+(gK-t|vmcZDBf$m9NA7Gd61GXe$dDvEfNPUSXM7)MbAie~RFNJ5M=rabeOLu@8 zMhvv|GY8u836YI!wz>|owPk0A%w=;>is#s*WO7M;uBLv3Ef=MRl+h^CGD_1@$a4$z zxsQP!Q&h||iuD;2P=HU+MZL#)+T;4P$)L%Kp1{QP30ptndy+IiscD`8nxW_^VtGnq znMa6u8sb?(JgXrV(b6xn$rrGgNy}oJ)T^cVTdMw+le^0`cUO^uRhok5ZIjIBZSn=Y zh)VxOo7N_tv0k6Ch39V3=WgZQw(7gRWE;<AU!{b2g?D>J-|Y?Jdqd;fg}+_u?=85u zl-rBiXRmD<Au8c2l{-vM9@d<EAMSnSj*{a?HOEhZPAU4B()w6S>msSTsHysfH~L23 z=o0=eslUsV(Pb^8?}_<)jrj*^#1C2{OeSuojY*^VJ8$&6zLB4OlIdrcH+S1dBJ#!m z#h#Byy{g9nEA{M=gz#sHz+Vq63AA$+y<O_T{Vavuug9;n0<}`q8r0f{*jj4O#a}S- z1#5gA>^Wu!yR^z3?QA!-OWPDdd=VO76s}R~+8xDMcReU28rNubjVG3PjU@rs1a(cq zHA!82;o3`G(^#5FvrA1($2DDD2Vjjcz%Jk0LY6QV%2J)Vh=q$qcB$iQ?dgcLO)ug4 zlDfW(>&xo87jCa|`{4E|cMR^Ba>wD0D^~?qrQGLmpDXvJy%ie{<xBpCocu;}@)B=( zN#F7^X}+v!{ubA7)%AbuL(TuOOa1#d+`pCkj=cI#^XdoQ=m&kHU+i(_FZOi&{Z4$p zYkW3F&o)OiPqTCAirpb?iNi4nk#E(>kr7UZ^f)g3xzyh+AQmX$>N#={DVc_hgc|B` zF8&T|?{&M!U5uFSa>y4I<j6v#9qNd`j_R*7&*-er2*Y2P`U`ioVl$<@c~|^(Rew>a zHlrL;GCkmWC>Mjj81)wq7q46rC`nN=C|OY|{!-OnI$XMPeMw7SP0J&oM-=tPUw`$N z$E+gHA$?RnA@ViE2)Gf-jf5Mi+$i#Dl;%}|qb)npq-KxBb*#FMBhBM9%@g1zDEBze zcwC<`6>h3>Pk^3K^d#s>MKka>L;cN$o2}f_<ki!fSM$iLd74+x;O`mrw+MfW)Zb#> zXtBQ0QqWRG%kj5d{jCD6QnVRm$7YAr=Pmf#qW-qRZB_0iM*v$;+ww-Q!M&zj1*k&N zPS8$8Z{Y6@^|u>tw{m+OndV-He4+apCGU4gTYLb22h?9B{wmeqyN-18U59)<M?gmu z9mU^K_4hg4=gOU-hMmzG_BFNcYpr!A?`!J&{!Z=uU2CTYJ5-NDS|2~>a721F0|lDl zlzM7qY0RpJ(Yl>krrRksv5~U?k^U_Ze}U?+1*nCh`<)r){Z6U7t(=*NyiseG)mrOO zwZW)^g5@|Xvx74qk>_@FPC}$j>_&)g8Y0#?(u{RV>zF|bGBgF5piD(sPVS|5N?jYz z5xL`?G9Fq)3KnS!%80p4V_rghOEkV!7>loRO0KPeTcg~1XDhb<$~UtC)zk*3l<KR5 zeO1G5XY2oVr+mpfoVkd6N3W9yuWKIc;f?m_8|~u|fPGGBK@Jf1fQCIph(j9UFs_Hy z^(d)7s;NH?I<DwL((<9E<s;`n^CPFUAphVQ|IlZg;TdQ28Rwm&&GXJlxPArqm2ww& z-wXP_{{#9TMGah|%?2*<*U&W_k+N*!%0(pg%{UjXnVkN|MOCSYw9i4HAVs0rvW2=N z1rNGfA(Ag$;JPT+)s<y-bxG+b5=)}SlEgm4B$t$6PoCCOpO%bkvby%>RH)vrBw~4# zg9{#YNqxy9M4pDoC%$}*Zv@X6q0gAWQN$C(DAb(DoN%HZX#6;?kE`n>4#1h@lGb7h z3!YP4QZmy>{WMMeOx|*)zU3^^GE37khv&}G=gtMqRrCzcct)R5#xu(F8Ou1nXPHaB zx93ntKIcjXtt7sc8sBRCtyX_)$(Oa7FYDmeDYuERn>1`WsVdi0{SEcz-&|6gw&8D^ z`g@tMFKgKCEUIqTy_>JIC;4@k)cZGCq<zyRb?7b9_m-ybZSv}E&8vgF(LsHqcU<Gm zcU-0TJIos$);Icq_&(71PT=o^`uhm(BjrA3Vd`VoG(uFtRVnv5Dg9hidKT`ia_7kB zbDGbWK$jF<ri?CY8QD>u+uc%g9PWXL)DowA5F(}E!qU~{mY&XyKezh(3+OM38h{!o zYT_PgHgU^0eJ9+V%H8G8GVgLry=unpxn^!D{XljB1iCZfI=fpTQWGCwW5NS&89h9N z>qF`q$*OCl-trR#ic-{%RQ1zT^>=qS`@5wqvk04|VFz*G`yh81TprKO)8~#LRU<T2 zqd=n+O~iO{qPugc;i<mNpxQuKR?@1kL&(qJEPLCZyVT6}Gh1b%rOouq4D(c9u^@B( zX6Pe>kPy=Hv{8&mzLYV0FEeCR@VU_z3AP#L8B|wijJBY2aOade4|iU<3vd^dyI>@N zQt@{Y*Nf`<Ew10H>$kXmtFBjYy`ru^Vz%_7EWhzvjEo2UWJDm5Ad_9wrXgR2fu7Q^ zNDAs%Mk7*Bn=nsqqS}SU%tRL3qy+!QH}f~GFKOgonmY(Co07?Pw;*h`yBLvY4B~Kv zLGJFj=Hi;GuDQ78s%suQ#`D~?Dm9mH*RuYUtG?xy6`yjwe?k9gs>jOcKTUN!maMF- zf;vX_>TJ~5p7@+wtKL2L?rIhTYW`SjaHk?{koWYzHsZdct+Kk*I08tZ;g4WC=lS<P zR}LKWhTn^|-Sbc)=NS>Wf3!WWP2t_KLu<PiyEEm!0o+?GnNbwBIpc+zWun@rFZQ_M zT<QOQT)v(Rc+`@_^&)aIp!cGYn@<Kj#>)9IRbCvoM6%u_mEpLh6e$CJfGYR{QIOPJ z0wbD1^kt8t6I6Yfe?_3=WkrLEK(C6;Y{Q$jF`AH*ebPSq{z!x5FUAt6b0{Z$jmgW) z?ZEY#x7222abo;~QQdoB{3)vxNBoaq(8wheUA=oM{@(oWC}cee6Mr@AElQqNHD|G? zIg4*nbK2QFYPWPI;eAke_EClB5cXdW(f!vm*mXU_8P0;-kmdV68MNDSShBcRpLjXg zGk82VK~N;R{LIP?MLNL<L_+Xieap*#C=&dhu}30uOr`gRm79$d|7A}w|7Dji;|t~t zU+C=X3;TG`EK+;co{Z4?dpwOFTX-s{`HS+TTKij7t$KZ@t6z)o8m+2qbB#c{6Vpem zMto#+1$DJVBMG2HP@<wCpdpG%EmP2`mEyVsZijNaLAw=If+`hNfvOZ;1YJ~g2`%9z z-Q4;M+%L-2Wpis?tHk$`wFH?2+K1W2KC7hQ9c=F3(NoJhGTZN{#=)_mSVetp5ttfE z>IbtbKUlYJ4zopLYA9hx*=8bhK?Q6NEl|7q32aN9V3Vg!w8bJxiWY*FfhH02B#n6r zhJ#aV{otm7ruoo1P&wRm{7qMX^DqXPXOlF~w{=CLK?_LB0!_<8&_YFJpfW|PNWm&i z!D>>vT2s1~_||HC<#6T7Z6)<vHTBy_{WeYg>$twIuDfvErLKE$-J`CR#9XN{zYls} z(Ft<sgyzsG+eGvY(@5WGxYNpgi5BTgwK;0ZcGH%2$+h;>$M*JEP_TVEBDE}pS{7nY z2Swr<sjgA>Da_|3C*$Dal#3@syoN}HOI5BHTrcGo*ds7Hl+xM?+N$UX=!l{#JmZQ! z!z3-HrllTRM(a7`8Mm{s^LB@XZ3k+nD3sY-s2(KP39gfJ-Qc<@7YP@sTmoEza*1$> z%JqTkqg)1DhH^P<M$K`^n~!Bf=~#!9Y6-3->N*u}s&dodrYScYZnkoB;N~c|2yT&b zWpHK6ZD3Bc!6Dz)X3TyzJBmT&%)iSWv?<Ko3J~G8!);e?H{5RJ_Q35?t`e?Nxx;XW zl{?K=+S3jxxAUO$imrjKDRMcZF-a8HJ3x0RYR%@>)=tUOqs|gU-m(hUDs?^QOu{5l zdg&C#l_{=FP!1?Z(HK_*CW%rCld*W2tlK$fu(5N7o?SJI4WP4J^1aPw2h42UpHhY) zQ<)w{wwQy97VB7jDPfmt*yZ?JuKt!|2Dsey0%2F+x<Xyo5q6!1T~FBc8g?VD8`X6) zXtSa%pe>5FvoUtNOWv)5R8?rIc9Qy?n)>~4`;|LLN)KvE50QdHnu6oF9#_{BxSmkg zQ@EZ|*D7MJ(wNVJ&MLY<Zd}mZxa6A1C|16$t8iD9Gl|dC_!_fEr?H!y^t5fTDy&Oz z$jMrrSjZo`wGeNw67xVzbX2r-Ye)T$(yei;lCN9)p!)|&bZY}PO>J17(Jarmpy}K6 zRC6gxoL;oa(q@1R7-VVFZd%Z0Tl4^dyFhm-YR-(Vxo&cP0Q7(&gE6zAX%2n9YW4je z^yq%$xTwbHs!0>y&Rp+$ST#@j1A}Dah1rqi%#H@zC-`+C5xNV;!dSF3B6dNYjakSt zUT5I#T@n+zv`MIyJ01U!JF+z}cznm0u&9pFogU;N$NZ0xJKQ!^oja)?$ZGzWcTayh zKc?s7e|nh4gqsi3h~O{{mZm)yI)^^>=3TE`sFkO3Z1D9>WYWiLcD69zV95K1cAsyu ztpBFI&@Q-LMt2sx4>9;Xq+RMexW1#VmAF=_>vEQXmaDzbbBv#!)9pViKr1X6gk8np zca=qqC^q14gZkTu>qhmr3A9Q5mE*5m{r%I*y#iMGI6t$7B4X!K#Zpd{8mpeM=9*`$ zvV?yDe;3r>Mf_b<f8XHm8})Y?f0xzY2-J}yv}rD2;89?g_zLa8h!`alq24UAPlB6* zzbWc(8r(GHrW0bihIo<?Pilx?oo&ruosz!aoS}%scMa9bH8q@dFyVIShvRgGvXM?) zT})41E}rHI^dISoT+nQ+<b3tt?XpfEX~+tFq^{6M>I!|NuFyy73Vo!m&`0VDePqoF zJ*cG-fDo>Ftsc}Fj<tG_Z>=8WTdN0U;L2J($hTGx@~zcJ8m}b1g5ByXvtB7<6h5NY zdG~_f@BK{1yTcglS`<j7_3JI0(*wp0<7OQ>o|^+&29F)--Dl?~8{_;Dw$t(30AWiV zYtc4PE2Iq>QU_a)Iz|H9>FP3{t7`<q)ic782&(Q2_kP@?;*t3y<awM<%+j#SCA+H4 z6r%~kW*vU(3-aA3(90+>dl}P8G08JB5wVBL{M6B6aLS_a8$b7anTP)0j?0pz@ctdJ z_eJ4Dg8ypB*89KmyuTXBzK^~w7MN{y=Sq+<lbn~2enj&7g{^nLut0{bf3QE451m`q z_>&z+eyybFy(8=%tWftb7@v7|tWOzp@p6YBi6Ak1B-wob$Xa82hgp}geO(>fuf%X+ zr5Y}z*n`XzyY#*b9YKhocN{GdM(yTn90dEC-XsvRxlzE_Z4dU-_D%Og*4kPr#wi0D z450ZL;2O}~yR|agKfA5X$nKiWgeZ4P?gE=JWa1EdMbE~0&*pCWd{Vx~Rc(Srli5Es z_(9oYkJ(p`!qF3|t+TH0kY&p(mI-n^QV<eNzW!jeKr;1#V(l7=NH_lz{7;6w%&(YB z{Avv4v8{hw@ZI`F|CS@Ge4EL!iRbiyh7E7Ii6Zm7CIehG*#cpcv+v@`@LETLJ!6hz z+Az+DEkz|tS&x^g4kiJkk%@3KXzgZbDn6pM`^b=KRaaWEt`_<F6G4fJhJc1BDzy|b zsgR+_4!9l4?FQ{uR0*n7R0XP1bP;q>(IrbPlM0!A{sQ-la&@gmOe!S4msqNO$tr`Z zeRO#HwB37$W$kx#deM<dKt~;x$AV%N^<@#RuTAoBFhlymwm8r*TNom#AH^_wln$*6 z7(5r~V0?nDh)IP!ZK5q4iB>cdMBy``h(#oQQ`p})MThFsK+}9^8R!LEr{izB`kTiB z<2;+Bc|H|(zAXZ@fV3>ov@8TIR8$5kQ?!Z{tkM*$CZ(%2rE7_At;SalSFYSvQomJG zzm3#y)6~C?>+9;e3)fxhx(C-i>RL(6l^XN=p!XG>Acsz94xO?UFsTqV%W1gN%6(}I zWl|x7-IgpDw$z@XJ^ev@J-{s3Uc#h8hDss!?ubmlB5{pW*C=}tlM2bnIJh|F;t3J2 zAyVN|mFor9OSuK~FAMZT-U`~P=m_YDqANV(iax_6EvBZWo}-9Kg*@YS7L0D!Prn_g zouW_{MnWAqxORf;q+B<+ZpuZ%MJks7m!MoCT%vM);QA<+0hgg%4ny@E9r}-T3};dy zrCNe(iMmdOo2uM2xM|AGhMTS29Jo2kErMI5Tp3)MavNCC+Tf6HYcq>4n;j!T<t!bQ zdz&!0*Oc21w_Um2aJ!Y;1Gh)HO1Mhp4#OQ*?ljYt(>ifE4?3^t8t9rL7lTBXQ@({e zKzAr=?JQzaA$fX~Wu2o=dCMwXtJL)z%O>Y^dXd5&h7=vD=YVn)jiHwxBj@olq3DXp z_cjB?{tO)r%wlLgONZODQSr~#0d*Ow=Q5W(V=)c&VpU)-CG1iSyBvSZ)!%Y<3N6?3 zYF6O7LS5GpcAbV@PuTSub|bDE)pavyv!X4aEsD0gikMW$yH${?3Qg5cQomDEzaMVD zatBH2K~3o)QgBF9a2(g;>Usj#6Y6>j*Hh|RMa)$i^I6bYMHk483z{33P`Y1o$+vYC z?y7Po@tGQ5W7Ob{-O{RrgTe)Q7FYCMe7S4<%f7u&UK4ROPKybPi4<iUw@*jvHXTbZ z|6bU$r8P+lpcDT5XS4t8sNN6V&<T63{dK7A?SX?s=zR5pgX$i55Iyj89{W_&%QGK& zrNKVgADkMM9#_3H*}vK#x|Rd?riO&lZFa8Txs64BL%rLF2ecf(nJhD#&g{$>s?~#+ z&K)iI^ifF==F~md>Mi!xJ);s*(y}vR(t5|IB$FIHR#lQ?F%wW<B^aa0k5o{qAP;@Y z&+BGvJRPgH-F=dx((tMVcHS^645pgKK*HQ@>5R~Wdb%VH4EpX1XM%V9(}%HC#}MD4 zLjL}@{E;PxG?6uD5Xk^&tkDJurTZMq0BEd{p=S@tNklnv5)nE6aMq;dch_6>7s4iH z50z2N(3?gr-x0@m+I0@46Bw!uY7nEAAZ^&DFlw2i&A_XST3*%9wv-B8s-u<%hrL^O z*p&s{Z_d8><o}d?iDX)$W?wH*FU`KgQ+gd-w(rbJ-`4n{93wbt@aTXxH<>T`&T1Ir z7tmEzpeT3!tS1|tY}wGL3aDa;damm^jF&y*4I_A0%!Swfct+w)5&Diy>|S%Yk(ePi zLIRixe79k)V}Dve$)DcI;XP+YHo4t!g=bSt@zRle2Fqs|E1b2+`O;&pv51(H9swP( z3fG<<v%T)Y4FQGNgd0E~JHVETzd`ivgY@L;i*Of}y9{?(x%=(0n9E3rZ|HNrv5VR1 zx1ewBaxQb8qbnk@i~x;LRNx55AVE%iUghYF#DRWyq$8421FLkyDe)}=EpkdqFMuv6 zmq`1Qs5>8%LCG%hH-Q#wf=iw;$rX-B%nfK88pxHUENpc~utjAND+u8zWY6DR$1Z)} z?@HiJ)r4IQVjIm@mljjq0Cb>GJ0rf~cal+LCK;RfULyQ=?D{AoF5y2I?B9G&m7MCz zslIwX?zf<C1$mAnHV!Rr&~IR^nSbyfX8v-&8`}1ej-j18KM>{@otKYUe}L3WT_4~~ zS!PvZI1jdP?8w}JoV<V{E-Wn^HF5%HZx!Tmm{?w}UI#p?kn4Gi3Ujzul`GE1wDvRJ z^M8*qJXcs(uN&0=yFclwzNB7fRD*|KpHU?<qe|8pRWctq$Ty=(Wk!|in^7e&qY~rY zJ8pkt!3XxRi;{cQe=JiIj{CQ1>mJ`R_|q>ox5)P`?e!iuYBbZWv^=(D6mjS6m?FQR zpz3wMKRS{n-Z6VdP)3Nw$neYP>ggJGw5+JFW1KAg-D(bJb}-xsD>ckdja+0XXf&pb zqpiiDsi>Z(+A=`TQ0JeqC4gEvMkC@n-#Ho)w1j%L#3im9KpPaLxzkyA%Y^I4KFxma zexNK?yRzKrpgh!Gd2We$1kK(EcRpwoXp|sNNyT#?FW>apt-ijBYi!4{?E+isdbJte zPu$`Qh84Hcy=VPs3i=t87QZf}tM6R5{zgmA0t%&qXBp+l>ty|%1<NK*v9Iqa6};wN zXv)A}%0c>oyIHNuL8N!T$|B=ci;OCwF(HlCIm0|mSLaz}WOWSF&|^BIu-kIjD<vUX zlXtCc;u^t-Jwiv$x7i1>S4w*AW}s$@9soU{sKnlny;Aaw*`V2qmSKFi%sv`!C1|Ch z^`P~NDnJ#A-T=L!=m6+|qLZMLiar5-qUa0I7m6-3w!5q&-Fg^-)YDPfAkZL1Tb!H@ z=#<o7!p!56j^6HJiT)lPhs2;Zjd6)<CL^Xy9k~R%1I=JrG_Sdw-rEYRejul)aNL+Y zISZ=EA6ZH<fAGjLd46&sJ-6)+lSMdX<l^um)Ez|zqXB;9;PdbeqWGw1mNE-1)g5h5 zfu1rVXwhCUQW3ca=@{HG<xVmOJ!#0{?yWdRwv|O%zM;$ohw9<(y)g;xZ4=i_P^O}M zO!xBb!WCjFQRos>3@TRC!QH~_;6|ll_Hs8t=)*h#OP}y>Gxt!rRHek2N7yGRoA}T} z>e`>wC12AxnYF*kMi`lNCSr2C;Zw(U^r;eKIM}GCY;&ld`g5{Jo?k$Ko`xpc*=FVx zUSx_PdnCJHecr_)&2<l6q=&x9VbEbk-B8zcvr30C6D#YPR!RN=rnd*Ia+>|`OmBbJ z4y_&*qxEcZO8sr1+Z5eLCfui)(1}T2C++0wGO4Jm9Z(^YibB1(U^UZ$)eedIgd+e6 z1AWOP;7f-*qd$tf{!U53I_#R(ImO?<81VngDX#tuas9PZYJ*y@jZ0F{4%ALj6d4_* z8Qlwiz0_Y_>@n)PCB9I0hla|{_59`|Qxq)&y-YE*9PnYUJ2&r<E-Nvco2dHqrWEey zl$RR@c6M_gW2b$pczvGL+~+N_rgM(f+;ckpAI2zZm`()^4u&&iIPD2~zIXV9V~_Os z(_sZYO!nY{M~Bk>->^Z$im81nBHNuzOr=empkQYz0`d$GTbg;iYP$EH-?W(YK54q` zGpk4vTT@{i<{T0`M~xunli2xs4b(o+K1Dy1*q?RLx5^P>R_WQM_mD;RxS1z;mSjFW zboltU9C0y8@tH)cLneuv#@^8e3B}Vt7Jc{Vm8?yP41+nXCZ<PvO4=iM(RwF-E#@K= zbBjcqW;SLZ+*p*&o=XXRT6c~(xmS)^l5lveUp=6&<^lqzv=3rToIh+x``o<T_M#vg z(_R$+!S#c=37y|$9o>uWwFsF`e|Io&-`Dd(5_^!Gl=L{gMXYA&++uEIOukW*(w3yO zm7?=J@yX0V4|kvA(n62v#c_37>RjJ@Lq^)o?PTP3&B!vcuS~P=@09xA)p~yt897Na z@&{J)e-H~cPyGF}FPMjR2HvRblw%q(_i)|JQO{Iw79<|@M{+rwb&_zmTwM{4bxF88 z*Qe_2Lg&}T%`ybmLs^Jah^?>Absg>-_@ur@uGHJyT4R2T`5Ec{Ol=Q-qp*JywSi~* zI7>)$&xUiP;kjWdR6R)R8Pz+HZ0L;CjLpIrn-vgrNMhsHU#WV$i(XX~l_bUr-aD)W zSKnX-CTL9wv@<K%J71xD=l6s5D_YFPoW&ODqh0{Lpy(I2w)|o#flFkgMWS^ms5hv$ zqQ%w%bFp;_-1DI46}@W3+|eo_KEdB7>hC=0yrS>%_r3b-Xe&l5C(C%lFl8TRlMoYa z+mVByDYg=1CTN=N9pq!sbV5wm5c6$=(3nX|7urT5(oe6&b*;LV6JNQ;_d4ixMNWH` z>9k8v7h)fch;Hf*j4SVO%5#S}GZA^WLQtWi*PJZaI_2H=g7zx<fDj*Oh#&Fyqx!RO z*OJ90Ve2!OukVr&DVWHmXm2{h#fAr$JYz8?a*JJ(=H;$E$T83g?pj)*J@I;6*Q@Jh zxXsG#B$k~T%YI_nudy5l9T(&oI-_s%i<h0BYenmw6vZj6RJQiD8cB;egHL0IHi$3s zLA)rM8qZU|{V=8Z;i*e~U6zb{eZ7_5v>>+wkN0cTNYwz+Wz{!#u*YqOkyC1zI}Of$ zG3HR^-)5QOZQUStfUo|5Q3kifl8O}JZ>eQG@*LcYmP}+K+&as2WF6c;F#Y(4RmO^+ zT1O)D;l9KO<V$M-+*g>0d}Un*_Y+IjKRLzU&lvCi>=b`imTRqQU}$6M*yh5Yr_P}} zV=eoKy{<}k`G(SYx9b;jdavQ^-!TOJdx*?j{p3fk;#`YtvdN8n8OT6T412F)tX{MP zv>I-nbpf&rbeug#$F2E_R)aQx9PHh2*o1S~RwKf-wk<@SQ*;9KDJa6W33(aRfMH<+ zdyb;#Kreur!!=hf3>2oQ#J-Gy<XT*3gJvsQ#xYRK>?`3`f>tV84_dFN0#u>s4bU5k z4uB3QIte<d=o8Q<ioO7Sq3E(>Edxo(ja!`=h~&Xw&|n{00+QU=;#`18Zd`T_MC8pc zJ69v}=7HFH2I_&+fn2s3sF!WVxE3<Zl-!7Moj@cvGPy`BQ;)n3r|qOorD7f|%y=O- ze8W~07(HvBR_bEJgj(H5Cu9%Gs)t2#?=9AR-qJOnx{hSVHvQlVIligTkpWumh(*#s zCzy_(P+N(*Zv5%BpBEz9uU!++aQ}ap(t2+fx?vBx8{5ecM0PfxF@lhAVm=3VPPy}N z=astvcR{&}a2J*P7VcZ+uE1SU&af~pv4k^44{q&TIdFmFoVMFN($kV^+Hn1+x)GOu zsJARfd3ym)Br|dlnQ0sZ9aQv@(T~*_Y3UqjL>v|=p6;~g-7Q6+MB4L2i_Bay;4+jO z0yjjtQE;P_D+U!Sngp7pXa;D8qGfDfTxO9rbUkRjqL*-eNnLjk-wuuMlBJkco0<5# z-8u-76m$S}P&61cSkX}WhoRQtxGsWQq}&?N8bvST`m(yd33^k}K6;sbR(X%ppwo)J z27RsQDq*i`*uH$6eYK|;OiwY`HiZxctY;M1B=r+*Ly?J~N%S6*w7*$^zXj@VHND4b zUH8~Vh;15T4``2~6U2N%V?GT!t>`=YrSEL=me)Yn6x~VBbElo2npKi~MAF=z4L|L5 zUKk0AR1^n_Q<MryRW#h5X%4qbzDx#9R&<5_>xz9koJoA9#&<g#U~YFv-*P9b6L&f! zL_4^4%5?&DQWOb_RFnuxRFnbAP*egcQ8W!SP0<|C97ScIGDYQVdntEFkGCDPUC|!U z9z};ihZVJFyF+`Y<VH_WPeqeKlNHUR2c7AZl)eJ@igLR_yA>V7^_aST0{TQz6}@kj zQ}XW@&@YPY^oMrUpVy-Yt>==bjiCt|qkZXQ`qIhTBhRL9o~_0^OW~F(w-K~aQ3bJ7 zXe@{DcS!x60-aKHf%q<Hd{;qN6*b1VxUrj>?K!?Q<>#oP?WXp_k4Yc=Sgipcw;D2J zeP5Kko><3yTi3PxAVK}c^zIRr8Y2O+#&^)G1ZAAA<2$E$lrTqinCr)md_QX(?`37U zXw|vFN)*E@b^FbSj+W+!4rc3SQ)dVw{yeCNJ+i9d34Wu^y478J{Ho6@l1J&hgn763 zIX3eI&pDwA=zNBy`8q7kumzbJy2@9?)Tv0;Bs`&G4wU}BCN4%}>XS-TwGZxw`p*{; zRq>E2nJt?;(Q@y!MS?<jg%C~nF_L@C1?QPr=f&Oou01x`YiHy=Pa0K2og4q>$*iV} zxpu4SDK`JN_TzqlKRa~#S5~QiH6j?g|B5EzS7W#i-Nh7rATpe>L-D<_u6mm<Y}Pj$ zA$c^SR{1&1vn2nl=FwboX0GPU!%Q?DRwex`USyUk>EEI(-clv~i{#sjns4JKW(0fu zzn3+R#O(B_?h=2N+9lTv#%<;RvVMRrY4@kF`|EJ69}noK%b?>Z*l{{=8}M{gX5Gbg z%Y6g48dI?UeE#*D*yz70uZgiz93o2R=Pc~N)^k2qfL18_j7jcidj544!>}qn|9ZMT z74sep-!bh;LL`>onE3wY6z&=}gx8#sfvbx?TvKr0Pj-DppUR|m<xujb>QU2++03uW z->(g+!<(rdn{{RVA#(L0hg6h(RF8dP7U&sv?&WTcp6&L&K4`e)<nWtH>M}81){+`e hOyhMqr5hR9O-rhnIE%HUHc?WWw4@eMQj4Ud{tvs1dj|jj literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@render.h b/.ccls-cache/@home@l@Desktop@test@ded/src@render.h new file mode 100644 index 00000000..22caab71 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@render.h @@ -0,0 +1,42 @@ +#ifndef RENDER_H +#define RENDER_H + +#include <SDL2/SDL.h> +#include "free_glyph.h" +#include "simple_renderer.h" +#include "editor.h" + + +extern float tokenInterpolationProgress; +extern float tokenLerpSpeed; +extern bool tokenLerp; + +extern float lineNumberWidth; + +void update_tokens_interpolation(); + +void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); +void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor); +/* void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); */ +/* void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText); */ +void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText); +void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor); + +#include "file_browser.h" +void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, File_Browser *fb); + + + +typedef struct { + Vec4f originalColor; + Vec4f targetColor; + float interpolationProgress; +} TokenColorData; + + + + + + + +#endif // RENDER_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@render.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@render.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ed213e5aff0b6ed53042307c250071e3db80eea7 GIT binary patch literal 16200 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 O%Ldp2TeAVL!2bdAM>yO7 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h b/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h new file mode 100644 index 00000000..3d035aee --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h @@ -0,0 +1,114 @@ +#ifndef SIMPLE_RENDERER_H_ +#define SIMPLE_RENDERER_H_ + +#include <assert.h> + +#define GLEW_STATIC +#include <GL/glew.h> + +#define GL_GLEXT_PROTOTYPES +#include <SDL2/SDL_opengl.h> + +#include "./la.h" + +typedef enum { + UNIFORM_SLOT_TIME = 0, + UNIFORM_SLOT_RESOLUTION, + UNIFORM_SLOT_CAMERA_POS, + UNIFORM_SLOT_CAMERA_SCALE, + COUNT_UNIFORM_SLOTS, +} Uniform_Slot; + +typedef enum { + SIMPLE_VERTEX_ATTR_POSITION = 0, + SIMPLE_VERTEX_ATTR_COLOR, + SIMPLE_VERTEX_ATTR_UV, +} Simple_Vertex_Attr; + +typedef struct { + Vec2f position; + Vec4f color; + Vec2f uv; +} Simple_Vertex; + +#define SIMPLE_VERTICIES_CAP (3*640*1000) + +static_assert(SIMPLE_VERTICIES_CAP%3 == 0, "Simple renderer vertex capacity must be divisible by 3. We are rendring triangles after all."); + +typedef enum { + SHADER_FOR_COLOR = 0, + SHADER_FOR_IMAGE, + SHADER_FOR_TEXT, + SHADER_FOR_GLOW, + SHADER_FOR_EPICNESS, + SHADER_FOR_CURSOR, + VERTEX_SHADER_SIMPLE, + VERTEX_SHADER_FIXED, + VERTEX_SHADER_MINIBUFFER, + VERTEX_SHADER_WAVE, + COUNT_FRAGMENT_SHADERS, + COUNT_VERTEX_SHADERS, +} Simple_Shader; + +typedef struct { + GLuint vao; + GLuint vbo; + /* GLuint programs[COUNT_SIMPLE_SHADERS]; */ + GLuint programs[COUNT_VERTEX_SHADERS][COUNT_FRAGMENT_SHADERS]; + Simple_Shader current_shader; + + int current_vertex_shader_index; + int current_fragment_shader_index; + + GLint uniforms[COUNT_UNIFORM_SLOTS]; + Simple_Vertex verticies[SIMPLE_VERTICIES_CAP]; + size_t verticies_count; + + Vec2f resolution; + float time; + + Vec2f camera_pos; + float camera_scale; + float camera_scale_vel; + Vec2f camera_vel; +} Simple_Renderer; + + +// old +/* extern const char *vert_shader_file_path; */ + + +#define MAX_SHADER_PATH_LENGTH 256 +/* extern char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; */ +extern char vert_shader_file_path[COUNT_VERTEX_SHADERS][MAX_SHADER_PATH_LENGTH]; + + + + + + +void simple_renderer_init(Simple_Renderer *sr); +void simple_renderer_reload_shaders(Simple_Renderer *sr); +void simple_renderer_vertex(Simple_Renderer *sr, Vec2f p, Vec4f c, Vec2f uv); +void simple_renderer_set_shader(Simple_Renderer *sr, int vertexShaderIndex, + int fragmentShaderIndex); +void simple_renderer_triangle(Simple_Renderer *sr, Vec2f p0, Vec2f p1, Vec2f p2, + Vec4f c0, Vec4f c1, Vec4f c2, Vec2f uv0, + Vec2f uv1, Vec2f uv2); +void simple_renderer_quad(Simple_Renderer *sr, Vec2f p0, Vec2f p1, Vec2f p2, + Vec2f p3, Vec4f c0, Vec4f c1, Vec4f c2, Vec4f c3, + Vec2f uv0, Vec2f uv1, Vec2f uv2, Vec2f uv3); +void simple_renderer_solid_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, Vec4f c); +void simple_renderer_image_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, + Vec2f uvp, Vec2f uvs, Vec4f c); +void simple_renderer_flush(Simple_Renderer * sr); +void simple_renderer_sync(Simple_Renderer * sr); +void simple_renderer_draw(Simple_Renderer * sr); + +// ADDED +void initialize_shader_paths(); +void simple_renderer_circle(Simple_Renderer *sr, Vec2f center, float radius, Vec4f color, int segments); + + /* const char *resolve_shader_path(const char *shader_file_name); */ + +#endif // SIMPLE_RENDERER_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..dcac291e2ee1f79c019bdb734e40fa6326c374ec GIT binary patch literal 22602 zcmb6>YhV=BxicZ+ng)%$<Pk#T5kkn42O&m42!y;eBrypHNyub&c6N8d%<i(YyGalg zsUlTt)r-_}eb;Jh??tTEM_+1NYQYEhUbVK^($;6O)>^F=A7t)#&dfR4nLRs6^J8Xr z=X~G!-mf!I!j0@I?RlQ#xw241lgrey^|HP#9*LI4Wj$Wzm;GgWOe)hvCA?JPCP=Cn z4vuT7cQ6v$ri6oDzY>$BcqBG_QN|s()1`b_LXVXxVM$H+<+9H8EtO?HIjDpMDdLxx zhPaWU!o5drYoz#a6hHar2Q~I5J|(V~p{IJ8AZR{4F2-dcj*!r$s^Tldyp&Z`(_KYv zND0Sdz$q*}s%(DVwjZVmE<!M&_?Z+nwv+|c1bUSB%Aq3}fI+H>7@MPjETU(+jZz{K zO^k<Z57;auhn81V2BH<!E}UTbAhm?;LLpn>=e}VufI%@j_MUp&?~6oKv@lI*7*#Z) zD?^ons%SQ3w(Z1tL{lVTQ1Q#4@<cc;$LL}=!we{@EcjxPLEQu>f5?|XZBjI$gaZ+T zmD-Yv41sb{1p^%09`r;kAWEYubt5+<tI7}};ouMY>~!jAqafuOc>|NWU?8lxP=y6< z+P<y?lcMS{e4EhCb#X<LV=2qr=$DfUR&?&q+U(?0?}$ed5;jySWZRa3s8@{yePi<} zVoOf?G&gSbVZBW9%K^5_q{<>5OGt5{p}D2rwl$%Rl8*yjs)>*lDafQqWSb%jN<;`G z!cts`g!L5hrN%KF5zvO+zB-o}6#x%$U|{NgP}9azJt$p|Z_{@$xlDu=a8~A{6!zE= zlgI%!2#eSTXfP#@Fb-V`$zyIY2yBdp;b<f(h2t(fQ@uej^P3R>+nuWoYode==J=8g zb|Xffz?2T%26j<IoFAxpGc_d$AZRd5K@*1rQ3aWq?6LzS$yG>svQscN=>}y;&2fm3 zW(vV7aN|`^B7Q!oTWe>O@&i-?ezb=2L-s?yg$c7sgvo7SNQdB+7Acu)Ex(Rd0)QOT zp)~k6A=U9@H>AnxDjVg5FUq^5Dp6lVjIonBHfG2e@vs+i5*T58*oKbDTr?JtLaczr zTy2RWoEFgCG#ZG>vJg~<qd3Tx6o%}YHGL2T0a4mEHo+DNsxL5h#Q@fc5~x>#co(-v zTsQV0f+Jmnfgp0I1Gs=F0ZmM*3>cz9%;cymvI7xuDm5aBP$Sq&9p>(^BQ<zRr)^Kj zUI9_Jqp~f4qSvo0JJ?YKIUBA&(g>zDxlJCn6})bi5C==pmAF+YeQrpmB`{fwx@Hc# zy{72wU_e)xbsExSTEGZ~6J=1``gCsw&l7d6Ope9ESO&$P-)Jw9P0N+z1KK!hP7+0M ze(-M}+ghk%sqC3@N=7ABOQ_rZ+ZpD^gcuZ+cyt@9P-HIGnTlX81s)kh*vt)A)&gV% zo2Qc{q7Fsz=p#2<Qsp5td(L`awg(hYnl~ti<(MLw%Jcd}9ou)B2C0!mqH;KhYlJi- zNpan<tlOgqp&J>tU|M#W7*!B&JHM4{ub*(@8s#lxxjed#dNfnmL%NuhrLp8qVhSqQ zs;kBmQ$UGHGr-p{kTXe<WM@ir(_Bc@Lz>y9Rr_0ALIBu;0+q-PnL!7UJk=n?q4d<q zq?Tk5rpFMxrf-`ycx(_NvOP7CWpsPg)j|CcmvP6)HX@)#@`hv)%04e-yA(rDt-vjN zODeHQSc5dqwm7^B8bmLYUrblR3#{S`I~{WskOZ#6e1s81<DnQ3jIGEk#>_s62Bb78 z_*BSoTBi92s?QRTi{tW;3(b(U%}tq95rLzJY$*f0h+7;Ryo)6S#$#U40@5wrj9b-l zE_i&pTW*WRon4U|%F#watz^|sG(n~51?CqpShC51s0?e@3=Yu8qfQf*@@XZQZMiP1 zQ2b^_hXy`Sxv2IXnUaSfC&sWuX^^vRg>qCt6@zwEwk0I80o`K^4G=OkQcKveF$oj> zW2P{h)C2*tzu-#*gt$053vp8?tPPl%tG{iXJ#%5>meh!jCQ6PWB9mHXY9>+w8B5-1 zOopb;rZXlcsHR!Dgt=A_Xj?Cs)d#}QR%Aepdu7m%SCiwR2)oUO!Z|TCR-I)@T?q=- z;LUD`OhN~J;fNAWLc^F=%o8Dzcp{9(92!=bIAP?Pp`BwdH-|#zSim*om{J&Z*|cIM zeNMsLF(v}f&U~D)+91i$O8MjJdGz3zK4Rq!m?=P0CqT6G`iH|J%u8*SNR*J4YUnCA zM^Z(!Ec2uQ4e`;6G4zQQ#MBH^ytwRQ7!-4{9NsQzZswQD`KYic`x(_XY9^W7E+WDl zK#FKu#4Wv}Id?_IId@tmjR;G#%TX6XV_BQTZ3;#cj<imbDK<330831BTIOO+gOQaA z6&l)^Ee$hvKwt%1w1*8lf%pK1*?p6B=FHokN6533lq!s4ZkvQz5)5K(@?tVLgwC}b z(s1*O4PHF2Kf1<o9E9nE@+$z2$Zq%X3iFsnaIMkC9y=ys1T}hc;YRMTsE3tk)GTA~ zx^JUBC1R2w#mh-3g`I;OH?&yWNVuOfizZtVR}eojJu2J76H^;zz(fNdhe|T~YFr;u z{c&`(m}bz#bf^mrM4*RI%x1$qZpE3opGmS7ffP7yf5HI{8uamyD<-V@kUOoC8c-8@ z$Q|jR6cR^I&{8`hDxHwxx4LV*pPTw+zXB(?NdG4q0xmtKsm`cd4=~o)PS=I>QkAKQ z)WS(LPfcmSVgd}+R0pHu)*Q*@(wG^C7E_sr_f+U+JhX+WG_#GWVmuIuv3p;NX?sGk zCuD+$IC(gsWo|O9k^&Ku*65IPXs^o@oo)grjG2NPB~_Qhx@kVtvTeksWE90ec20o+ zh6d4&g>02G{hDk}2^^i2u?aK}&e9lVZfV*L3|rCz6mxwNY<IkC6(&1Ov^emv5T`MZ zl9)2ukEg~8tYuqp$7Qn+6=S0PFrP_-9%6-cLV#&P=m0A2#Rn}mV`L&UW$WsZfDIFD zLq@iwBWmVTOb~6mVYZ}3VYWoicx^CD@+8$SYmxZ4CTwa%^y{NJJyq(|EThVhZ1(?Y zW=Yosq5MEopjbpz9rYrUMi5~o!`z63C|;O@xVh{&@=G)_=pcw}LV^ctdX<T2c&#O= zqSpaf)H8vgW4D@hniiY{pb%*dw{6<BuQN>)gyvHFBeU_s1ldZHG^R2s3xM)*?52b< zmw~D>G?F&@09NzristwFWl4ouC>+7qxM3pCAW0i$o9D;v4$oR>6_$>`Ojc6U(jp1- z1c6#LlR{uWj7%F!`*D>|&=2WiQ1(S|!S0S5<`_{)VP$qEDN!><GW>?Q+zeCWJd}bn zGdwZG4c)kkX7_husF*_{l%4G3JTtE2VYC;5G)%R;nS-Xe7<Y3iq{0-+W@JRmqpRVl z!ET3S34SX^9z@`q=DqtX{GyzT9DV3*5lE+KJ#`p@i*g$qj70HvRPkiVSZ}(SR*uA< z!EiB4Y6QK@7)iiT-o`hRa5w~(p=M4eo4HyZe^!si2V)8|!7wqaJI49?jFy071jJXG z^r(Pw&&ZZAU8754IBnKS^nea5#u|E~<GM)33Cid`VB1&?Y2;#E;rMC~)=crhDHobz zjK5Zsw5TKviT-h`)`|q+vCL?|q>4n3r29KEM66UOFcUU?5(~wxof{ow4eYgEmvp5B zgzEk-B%T=I0U}L&ggmSeD{fFLqpMuD&G1S}CWwD$h9JeHW#cX**s}>cd)AvVX-9gQ zh{eSWGp;cqqT8$)o_h#%IWf(AszuEw1mTM9-d6mB!>Ej&iI<Ra0S&3`gFz-&kba<H z9&eD8)IpzPt(%F*L$W!R+uvvnEQrP+!~i+A7)~CgaFOv%QOlkY4lk|akUeKlw7v07 zTgqJ9&!f3-vh8=O2Kw&A^o*~|qZjh=xSpG2y!Z4^6PG-BrkIQ<{z4@Tvp0OkFF;m@ zgK=oo;vv0wF_)9Gl;hT}UthnTgTGvk<JBCshUZmIUBz+6n%ia#XC41^E5-t)WE5VQ zG7m}thor<LRW9x{f9`+*jvSL?g(Z5dv~ZIwRR#(rm?p~b4a=i2Ci<0xj-OS*vxpjj zN1(bwT@K<SctlPqqT>u><KT~X7yjnp^~RY?-nn9_{_}uwUVi(k;#b$*Xq22Axb6L4 zw|#2N{_%uE@4S-r0w!C_(W-e~<FuE6>_@{RTdrNWZvm5ReK;(!h(@~?quqI9mAdWz znonoX#+XAnp-P?)aiKoIT(!6HveFmsoXEtC$8VWXmzby@xnV`vv*f%Xj5?STtm63~ z7wiYrf4%(SQ`)wZwM^8C1{ExbUW&8u6M09;2UE(Rfkcx2mPn4u9`Ra*2%2bA{7>)S z?`=@_8ShkHl0C6o+G<?!yN#cBJ+1hR*12cicK5C~dX4)(_+(3TVE#{yw>~|1$sK3@ zv=dV==g6yhUgiQjf%>PHZCo&N%e!n#*`5&nu5_0Z!lM=RQziYh41Yp4W3EG=%ysCK zxek3Y*I}+H!bFl{Oe87FL~<Eb_ar0tieD~!d0KUmu}&7eUz~X~X<YQitFQKb?U-T& z=2w69te!<58Oo9Ts*cBM?=xmk|Jn58LvNpLTy^Dh51pDeZ=&(2N4ocqt)9)s?Td2f ze1G;Oe=r70R(^2SH}kJF_C5Jv{S9waeckxpS;yb*AAD`tIOEW7&wuE$Cud;^ia8>f zmdHuhg9NYp(ZnySp4b;->fav|2U!xNT=2$;;NOD5qd)jN#;oKhfLY-bWVB~ZK79H7 z`@eD_6EjrM@K1N#{Wwa+nWi6it+?p|kzS5$Fvr-ib<d&l&;DLuT(kMQrT?7DUt}Ep zL*wbkAC4R|9uViAEdR}#myJ6ktGkWsCJDxZ&POkL;OSFO8OGde{%iOjN4{db^Ks>? zzdE^e#CX@Iz1zR#?&Zd_j~|^_{PvCsSQdRbeJgmrkLwSBEPlA=#H7DG`}SK*S?CcJ z=8XTQmmvvIf66x29oV~W<jsv+jFW>mU$W}{DJP9r^NMF}exT+%#>u;v9=mw6P=KlO z=lH>U{G9(TpsHhY?2juYC5KHFy!vg1ZI%U?Ar$q(@=zxZ?#&R0hs>V?F%gH>ln0d5 z35Is~v17U7ddXP$;8Vwr1g@?#TBZ#6o3D%BjVbKS=>-aVxvf#4@WibfZhrR8E1qLg zXztFY&ddZ+>cYgU6G=n~4)@u{skfx(XTSc*lSWbfD+g|Sr!3o;dtFc2)rY<_$>?AG z@)grw=RU+F_2l$Gl<(nsZU>T{yD7f<h6iuCfJstJMuRj<ZaRxJv_0fF6z}<)Zk)Nh z^tUm*M|Vzl1J8GJ-H7e8cK%KKbi)UGn0uhKnhCR&N%WsD{MBP$zIGgA-jcHgoN^1d zrI+KT86_`#fB2J^D%(+Y1oNoEL>T7RVcB1ZI?6(Hge%0k(o)FD=HHj-#@Bjkr)KlU z-(J1y7r!2?$K5#sMrpLM1+LtT895dJhah-E+w-%!x31c89lzSMdNP1seeP$oZ-4lS zkIB9=47&<9h81+OAatscxa|u!Yt{_FG9`OTeilE8o05-^8xO_aJ96^IJ>UM4w|y1E zk#J!eK3D>3<|pM%ngJ;Creq-)E(e3Yj6bJbvW=eqJGbJTuf2N0STgeBTbKIpdDNIN z>EKtN|Hr9LS_5#8r$FG3XBa&n-CeNf{6C#A+K;aMu;I%0PNiG*XvJVO{cqOW7yTsk z1rY)jz9~plR&ymKHreyWCub}%M!Gw1pRnAs9F$P)sfKHfrv@qHv+_S5YnUHc=p>Be z4my9zGM4YV;qz-Zl>gOu@xe1E7tOroM$Y(s$ED|0Pk7=nLJ*dsRa$Mr&MmBs$76-* zKY@l8fOuzS&n(X3r*Si}<rz=B_eD|g$n!5-8uHGWbMnixZ#X=vAq$Zi8GuBn1Nnt{ z3qeH-^D0wSL{X)|rqBflY5>8sylH@7THZ_>f`fN|q5k92H($XB%$Cp22S8T>^z6LZ zU}UrN<|60`#-m$i{^Ge~KbprGUBA2g{;%JA!Kz)x{$n-E+u!exoZiKA=b6U$$$vln z=TOaw{S54+CIxiWfWIoQ3h-CuH6#4zP%Us&4YgFoyNqufKi>C^#=--qxqNC{r)%@6 zd7a*sPhIQuGx^4~1rLAaz7MxuaQc}!#v`qp4tK?VzIlWzxP66jaQ6BC`f$pj-;eA< z--vmSaC70?#jj7B@BO$)AE`y(h{caQgT4{7AK?n&+wkk}%pbgB=$esQ_(pi2Qut=? zw__*XAXZ}u*NnON$`urlctC9w#f5w-UMf>cD5Z*SIvSTrICe|bne*|uDy(r-PmJU` zp7ND66Z!d`d<caFo&vb8^Q?nwy{8_oO`ayW_V{{KxbEq>Ih*eb^hM#iqwgBH-qd${ zHZKebyR-TJRs9Wc?db2#=EXiS1lO3j6Rvwifbv!OR%i24m4vPrOI>j7mj>XPly+tF z{sDg+t~>pEvUzzxhR^a&89oPU0~f<}Q=mVa*L)h#V7$?~vun+tZs|%_Fq9pj;Hp5X zg0DZcXZ5|(x~GtWbE(&i=2Dj$YCL5vsb6RtKzp&=Ii5L4aPgiiK|ren5RK3-bi>sz zgh3olz7Dwd`T}r``gXwe8sAMIf}8vx(10390>cNi`?L9nfpXg)Po0S~9%*0j?$@{< zEp!OO77`tSrJ!IIIR4!1xdjkdxVZ%gw?X0&ij6#VTz-vb%{&nK>Y5k##V(sT$lis7 z6tWNb4r&18d~<g5JP0vd^E|v0iA`vyT!Rz?wB8u4duS;}OX1O`gcOvtQzJbj?Ne#( zPy6QFEmd1U<lRl(Ao8A?o=w?&Z*6ZM*zl@8P>Wb4!c%{(AAXT*Ww-{bgJ7khsu29H zR4H)PYBYc{h)vnFg1;Es-+F!C_ulyZ>qJtiIm^r|L`qhcnKcV(qcXb^w6Tz@G_^re zlc^07cKHiE7lJkfn)6d<2wZM1q-I{bUfX{<3n;x(+yC-ul&q;lESn(OK|={{-n?u8 z3T+PcA|PP3m+IOCCgH&hpXTs_Y!%ja;H`Yx4ueEp6N>c2*c%Ha0D$zu2ZjO|0E~MF z^<oo%bkpWG(3S(pL<HgsgwP%k078yENGDD}q6DNR(1Af}104<!(#4w~Xb(h|yjQ*+ z0YJdH-T^?&E3@cipB%uzwQ|5AIuaV}Lhv8(-+=(Y&+l*ufiy*S^89=Km^_G$PVz`Q zWda}pAb$Kw{}A3`z(3^RhcsfD`SJVwm>=*1CqE<ynY$&D<(9yuTB!l;2cf;eu^;LF zEfFjO2xM=*n|=Eb1Vp@j4jGV?WoHS_Q!q=A8JsMUNrSaTCD~%9Zx`Mo>f7bmf($7v zhzbG`@~If2*QYul$e_a_in3AbTaO{CeCr*IlNpHxL8uaM6|r|hM%?d!Anmyc0dpBk zy8V6qezXasRlfs-bo~xSgkGT^K|r?YcQA7Ql2g;yZ(e=%ruvSq`prUT)7tg*9l~X6 zH`PO+Sdji};YEcPg1*W;Wu*usx<5W0m6*mpW$AxBFuCTqg`%OYL#W%>(b?7k59g)* z2zZtQo+X|oB?u3?TX;&p`Bc*+-@Zc|TblvL2BEX1txM>r?`&(?*wx(D3fPurcmy~r z0OvWLbE*+ebhmIGxZsURP2ZbUW#?x@b8GXujSUU;h{W<t&j2eb+LwBk)*!6tZecy+ z@`>~RAP<zKFjwE+T-RFP*$D`X7(W9p7%1{3o|2^q7rI-xNHJ`7w1vefb^78JE70gb zkrY`s|921W>{66QYp2&%AvDnKRz2)F5B4-(JGtx3Z)Cmr>y*74TiPyzM+J_bfRtr` zW3gv(5yFA)gcNJ|nmHr{yMuiQ2-0DnBgB1n&#m<bjt|tQ?AE+tZ6mU#Lg#Omz7}~F z6(eluZjnHm8q@S0!a)Cm4E?teTy9AoaF9PWe*prAYIOm12U8lyxBoIe?VhenJDWGO zx6})khSzp=bqMWkoz2LcfCe;PLygaL&-B#@5!@RrI!Kp{`dtSVQX&?E!M#9+N94>v zL31U}Q?vpwuF6|=F~YdYv+Cl<O_J`Lz4Dj0{V9>OnQ-0O4fP#s5lujf-MU8~0i~$@ z%k$)6>qd8rN;2X{RFYEy&f`JC(SD-6fGE%&(_VPoOswS4AhUY4ZVjs!Y8$6|$qWo_ zWzMrwhGwuQ6m)!VtQW`f-htkI)}G&e>CIg$zZLAV`&dKsW_+Sj#P}Jwy#R1|Jznf7 z=x%X)b*M71=(VEDSQ6~4Tib$6tuo_7z>CcOT+g{HkX+E+!rS)54L_8;i+k(ZHnw&N z4IOJ6H`K!i(`b=mO4&~UV+EKHU+yW#-iYoPC12B31APqbFwCIrG$VAt1C|W!CqHNE zoB~7?v<U??Oq*syX0{|3pcI9wq5h`+Rs;f#Rx34rQ_qp+g6|I<e(6Tb_&e%bA+kek zZxVo)1@mDZriA4})>EF(<Eygpl{0W`C%r1!o+NtV8Ua@#(Cs-Zk(aLRINbfj$RdXC zZQKMDlrSGyMn1zcqY|-&?v{Fbyg&KN`|G}Y5xg!d$HIl^1#N7B#P9HbWrPmwdMYZm z_Eavf-U>s$5^n6}8`jda*S@x^Noc8WZR~2=x)Nxd#PNK`jE;41<vQ--=!C;19GFf) zh$6uNg_o6iD{)b@(zCL`3I;ox_rD~c95`wkR;tY+dn;o64Dvw<WU^;6b_;YjZEbbY z>K3rIACBDf=(<N1RGFYQzd|UBS-&F#MtQTsQ&EnDj_w#~R!wnDdp6&(z5_McWaw<# z04Xhd!aY$01k-@1!vJ6ESls>WsYQEjR0yWp5iP9WffgjIQco!+1>G(EAD(#WshLM! z`G{dQb!{!U$|%qD3~>lp&-0vzQ#iU?SjmYKF>F#}Nvae>Y{5Vx=3tA=000CZ>yTox z%eNUpKo`H6I<M)8WSC_(XN~}X-kbve_W*r$Q|s~(iaJkS{>!G{|0{U@oq2^H#!_uV z=xW|j4=ka)h2rhmp0jZc1$W{sS@FF4a)0pHTPYbAs=F=#NG$`<Pk;wym10jZE(6fr z5)C;i%bX{a%?fT3p%ZpCiLLitfB1&n?#oj&(p=YE-zn6sZAZFygdb!I^m$?NvXbhm z@{)@3^76$%+xdCt*JPn<2aZNr^YiDgujSX&tm&`i>1@T)h8azBQ8d*a&<-JK!pP*1 zLm_0c+}MIf*v`zJ6eCbzq3F7N`f{ugm}KW4G!^pEEe)?czoYzJV1oYf^SSx6fEM9l z`N-migHJcM2#qZuTcN$9t*fnTOM5+bXTme{G4ILqRA=F<6?4fD*ECIs)g+Q&GpKPY zm|8FcaS2np8PrfsQpqu)i6Dw%HiGDj^(7Gm%<PgB!ZcJeXwM)QACXJ-^lB^@nC%m} z2n~0A5t;t}SAp@%gwC$DpiYp_^iiHue&)}}JEJHIUoBqAnE`v_Xe<(hH|BL5*(=Jo zf_CyaYbkwZMmEddtfUP=oUfT)gDo3QAa>IO4O2j5ieg!~HH>jcn$&qZJ~ia>SHRg0 zf8l})Ymp3L{8CE?JSI|dbZtr<j?k@4E$x=}A`lpE?sbTr48<)v%mafot0XNzPsN3m z;29u>{1uadmNg63;DQhab3Qu!Gif1{a%SL>;MMn-D8NgHDhfd8{HkGU1Mcb?JPoB* z0BZWUcjSTpjJ(FqlAz*JqGI-nLde8`xjnCaRTjFg#~SB5q8)dD$B^Oum;?$*Sp^~s z0afGFMqFn#dK#-NBFXsx(^V`!p=$sHQvpH!)Oy@+z%aX*YQhv4IX-YhWKx0<HBD{8 zh+rP>L_}U`AXY%?HEENCLne&7d+FY$^N~|!6p=_%VK1(WV9%{hTf@kVw$^S9Tg5dw zy2K}&PP2i3dxMTF^`5G&z&>gTR!?1x`z1K&Y^5ipCi~=sH*?7E9_Yr~!^kx3=={j( zbY|e5?jGD%z@*jLSCDr~OnK2*B@T#qJ2*QCJH$n%^Z=2XhM~M|LGpp|dW$3Klf!Zg z0{jxq#(H-3>_z}EmEY|EAg4G)iB<sZxwU6MhS<~N9NCaJVk|buAW6JZ#CyQu$8HB3 zWTc&0YQ4VR0NM^F)6V&uxa|0%vzwoLCMC_|TF5F6khc_him;8som5ifq|GGK5$@ov z!ibu%+G}Lw>!z;52;cz7Y2;)IpPBZ)zCItK9p>pihq;i+eP&>Blh}=bVGQ5x046WB zSgIt$G$AU)5d@s4#2vaMrwW<3+p=j3-VV+LoZFH2Y#eIs+tY`;A2|1Nc0c5W91DUF S*mt1sE-a6m`tGtD!v6y~@3jH| literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h b/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h new file mode 100644 index 00000000..14e93cbf --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h @@ -0,0 +1,319 @@ +// Copyright 2021 Alexey Kutepov <reximkut@gmail.com> + +// Permission is hereby granted, free of charge, to any person obtaining +// a copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to +// permit persons to whom the Software is furnished to do so, subject to +// the following conditions: + +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. + +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +#ifndef SV_H_ +#define SV_H_ + +#include <stdint.h> +#include <stdlib.h> +#include <stdbool.h> +#include <string.h> +#include <ctype.h> + +#ifndef SVDEF +#define SVDEF +#endif // SVDEF + +typedef struct { + size_t count; + const char *data; +} String_View; + +#define SV(cstr_lit) sv_from_parts(cstr_lit, sizeof(cstr_lit) - 1) +#define SV_STATIC(cstr_lit) \ + { \ + sizeof(cstr_lit) - 1, \ + (cstr_lit) \ + } + +#define SV_NULL sv_from_parts(NULL, 0) + +// printf macros for String_View +#define SV_Fmt "%.*s" +#define SV_Arg(sv) (int) (sv).count, (sv).data +// USAGE: +// String_View name = ...; +// printf("Name: "SV_Fmt"\n", SV_Arg(name)); + +SVDEF String_View sv_from_parts(const char *data, size_t count); +SVDEF String_View sv_from_cstr(const char *cstr); +SVDEF String_View sv_trim_left(String_View sv); +SVDEF String_View sv_trim_right(String_View sv); +SVDEF String_View sv_trim(String_View sv); +SVDEF String_View sv_take_left_while(String_View sv, bool (*predicate)(char x)); +SVDEF String_View sv_chop_by_delim(String_View *sv, char delim); +SVDEF String_View sv_chop_by_sv(String_View *sv, String_View thicc_delim); +SVDEF bool sv_try_chop_by_delim(String_View *sv, char delim, String_View *chunk); +SVDEF String_View sv_chop_left(String_View *sv, size_t n); +SVDEF String_View sv_chop_right(String_View *sv, size_t n); +SVDEF String_View sv_chop_left_while(String_View *sv, bool (*predicate)(char x)); +SVDEF bool sv_index_of(String_View sv, char c, size_t *index); +SVDEF bool sv_eq(String_View a, String_View b); +SVDEF bool sv_eq_ignorecase(String_View a, String_View b); +SVDEF bool sv_starts_with(String_View sv, String_View prefix); +SVDEF bool sv_ends_with(String_View sv, String_View suffix); +SVDEF uint64_t sv_to_u64(String_View sv); +uint64_t sv_chop_u64(String_View *sv); + +#endif // SV_H_ + +#ifdef SV_IMPLEMENTATION + +SVDEF String_View sv_from_parts(const char *data, size_t count) +{ + String_View sv; + sv.count = count; + sv.data = data; + return sv; +} + +SVDEF String_View sv_from_cstr(const char *cstr) +{ + return sv_from_parts(cstr, strlen(cstr)); +} + +SVDEF String_View sv_trim_left(String_View sv) +{ + size_t i = 0; + while (i < sv.count && isspace(sv.data[i])) { + i += 1; + } + + return sv_from_parts(sv.data + i, sv.count - i); +} + +SVDEF String_View sv_trim_right(String_View sv) +{ + size_t i = 0; + while (i < sv.count && isspace(sv.data[sv.count - 1 - i])) { + i += 1; + } + + return sv_from_parts(sv.data, sv.count - i); +} + +SVDEF String_View sv_trim(String_View sv) +{ + return sv_trim_right(sv_trim_left(sv)); +} + +SVDEF String_View sv_chop_left(String_View *sv, size_t n) +{ + if (n > sv->count) { + n = sv->count; + } + + String_View result = sv_from_parts(sv->data, n); + + sv->data += n; + sv->count -= n; + + return result; +} + +SVDEF String_View sv_chop_right(String_View *sv, size_t n) +{ + if (n > sv->count) { + n = sv->count; + } + + String_View result = sv_from_parts(sv->data + sv->count - n, n); + + sv->count -= n; + + return result; +} + +SVDEF bool sv_index_of(String_View sv, char c, size_t *index) +{ + size_t i = 0; + while (i < sv.count && sv.data[i] != c) { + i += 1; + } + + if (i < sv.count) { + if (index) { + *index = i; + } + return true; + } else { + return false; + } +} + +SVDEF bool sv_try_chop_by_delim(String_View *sv, char delim, String_View *chunk) +{ + size_t i = 0; + while (i < sv->count && sv->data[i] != delim) { + i += 1; + } + + String_View result = sv_from_parts(sv->data, i); + + if (i < sv->count) { + sv->count -= i + 1; + sv->data += i + 1; + if (chunk) { + *chunk = result; + } + return true; + } + + return false; +} + +SVDEF String_View sv_chop_by_delim(String_View *sv, char delim) +{ + size_t i = 0; + while (i < sv->count && sv->data[i] != delim) { + i += 1; + } + + String_View result = sv_from_parts(sv->data, i); + + if (i < sv->count) { + sv->count -= i + 1; + sv->data += i + 1; + } else { + sv->count -= i; + sv->data += i; + } + + return result; +} + +SVDEF String_View sv_chop_by_sv(String_View *sv, String_View thicc_delim) +{ + String_View window = sv_from_parts(sv->data, thicc_delim.count); + size_t i = 0; + while (i + thicc_delim.count < sv->count + && !(sv_eq(window, thicc_delim))) + { + i++; + window.data++; + } + + String_View result = sv_from_parts(sv->data, i); + + if (i + thicc_delim.count == sv->count) { + // include last <thicc_delim.count> characters if they aren't + // equal to thicc_delim + result.count += thicc_delim.count; + } + + // Chop! + sv->data += i + thicc_delim.count; + sv->count -= i + thicc_delim.count; + + return result; +} + +SVDEF bool sv_starts_with(String_View sv, String_View expected_prefix) +{ + if (expected_prefix.count <= sv.count) { + String_View actual_prefix = sv_from_parts(sv.data, expected_prefix.count); + return sv_eq(expected_prefix, actual_prefix); + } + + return false; +} + +SVDEF bool sv_ends_with(String_View sv, String_View expected_suffix) +{ + if (expected_suffix.count <= sv.count) { + String_View actual_suffix = sv_from_parts(sv.data + sv.count - expected_suffix.count, expected_suffix.count); + return sv_eq(expected_suffix, actual_suffix); + } + + return false; +} + +SVDEF bool sv_eq(String_View a, String_View b) +{ + if (a.count != b.count) { + return false; + } else { + return memcmp(a.data, b.data, a.count) == 0; + } +} + +SVDEF bool sv_eq_ignorecase(String_View a, String_View b) +{ + if (a.count != b.count) { + return false; + } + + char x, y; + for (size_t i = 0; i < a.count; i++) { + x = 'A' <= a.data[i] && a.data[i] <= 'Z' + ? a.data[i] + 32 + : a.data[i]; + + y = 'A' <= b.data[i] && b.data[i] <= 'Z' + ? b.data[i] + 32 + : b.data[i]; + + if (x != y) return false; + } + return true; +} + +SVDEF uint64_t sv_to_u64(String_View sv) +{ + uint64_t result = 0; + + for (size_t i = 0; i < sv.count && isdigit(sv.data[i]); ++i) { + result = result * 10 + (uint64_t) sv.data[i] - '0'; + } + + return result; +} + +uint64_t sv_chop_u64(String_View *sv) +{ + uint64_t result = 0; + while (sv->count > 0 && isdigit(*sv->data)) { + result = result*10 + *sv->data - '0'; + sv->count -= 1; + sv->data += 1; + } + return result; +} + +SVDEF String_View sv_chop_left_while(String_View *sv, bool (*predicate)(char x)) +{ + size_t i = 0; + while (i < sv->count && predicate(sv->data[i])) { + i += 1; + } + return sv_chop_left(sv, i); +} + +SVDEF String_View sv_take_left_while(String_View sv, bool (*predicate)(char x)) +{ + size_t i = 0; + while (i < sv.count && predicate(sv.data[i])) { + i += 1; + } + return sv_from_parts(sv.data, i); +} + +#endif // SV_IMPLEMENTATION diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..85669f3724047b3287f1adb10c9f7ca444eb6559 GIT binary patch literal 17919 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 F{~w;0R(b#c literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c new file mode 100644 index 00000000..7a106bd1 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c @@ -0,0 +1,669 @@ +#include "theme.h" +#include "common.h" +#include "editor.h" +#include <stdbool.h> + +int currentThemeIndex = 0; +int previousThemeIndex = 0; +float interpolationProgress; +Theme themes[8]; +Theme currentTheme; +Theme previousTheme; + +bool theme_lerp = false; +float theme_lerp_speed = 0.005f; +float theme_lerp_treshold = 1.0f; // 0.5 mix themes + +Vec4f color_lerp(Vec4f start, Vec4f end, float t) { + Vec4f result; + result.x = start.x + (end.x - start.x) * t; + result.y = start.y + (end.y - start.y) * t; + result.z = start.z + (end.z - start.z) * t; + result.w = start.w + (end.w - start.w) * t; + return result; +} + +// Function to smoothly transition a color field in the current theme +void transition_color(Vec4f* color_field, Vec4f target_color, float transition_speed) { + if (theme_lerp) { + *color_field = color_lerp(*color_field, target_color, transition_speed); + } else { + *color_field = target_color; + } +} + + +void switch_to_theme(int *currentThemeIndex, int newIndex) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + + // Check if newIndex is valid + if (newIndex < 0 || newIndex >= themeCount) { + return; // Invalid index, do nothing + } + + // Update previous theme information + previousTheme = currentTheme; + previousThemeIndex = *currentThemeIndex; + + // Set the new theme index + *currentThemeIndex = newIndex; + + // Reset interpolation progress + interpolationProgress = 0.0f; + + if (!theme_lerp) { + // If theme lerp is disabled, set the current theme immediately + currentTheme = themes[*currentThemeIndex]; + } +} + +void theme_next(int *currentThemeIndex) { + previousTheme = currentTheme; // Capture the current interpolated state + previousThemeIndex = *currentThemeIndex; + + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; + + // Check if the new index is 7; if so, skip it + if (*currentThemeIndex == 7) { + *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; + } + + if (!theme_lerp) { + currentTheme = themes[*currentThemeIndex]; + } + interpolationProgress = 0.0f; // Restart interpolation +} + +void theme_previous(int *currentThemeIndex) { + previousTheme = currentTheme; // Capture the current interpolated state + previousThemeIndex = *currentThemeIndex; + + *currentThemeIndex -= 1; + if (*currentThemeIndex < 0) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = themeCount - 1; + } + + // Check if the new index is 7; if so, skip it + if (*currentThemeIndex == 7) { + *currentThemeIndex -= 1; + if (*currentThemeIndex < 0) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = themeCount - 1; + } + } + + if (!theme_lerp) { + currentTheme = themes[*currentThemeIndex]; + } + + interpolationProgress = 0.0f; // Restart interpolation +} + + +void update_theme_interpolation() { + if (theme_lerp && interpolationProgress < theme_lerp_treshold) { + interpolationProgress += theme_lerp_speed; + Theme startTheme = previousTheme; + Theme endTheme = themes[currentThemeIndex]; + + // Interpolate each color component + currentTheme.cursor = color_lerp(startTheme.cursor, endTheme.cursor, interpolationProgress); + currentTheme.insert_cursor = color_lerp(startTheme.insert_cursor, endTheme.insert_cursor, interpolationProgress); + currentTheme.emacs_cursor = color_lerp(startTheme.emacs_cursor, endTheme.emacs_cursor, interpolationProgress); + currentTheme.text = color_lerp(startTheme.text, endTheme.text, interpolationProgress); + currentTheme.background = color_lerp(startTheme.background, endTheme.background, interpolationProgress); + currentTheme.logic = color_lerp(startTheme.logic, endTheme.logic, interpolationProgress); + currentTheme.comment = color_lerp(startTheme.comment, endTheme.comment, interpolationProgress); + currentTheme.hashtag = color_lerp(startTheme.hashtag, endTheme.hashtag, interpolationProgress); + currentTheme.string = color_lerp(startTheme.string, endTheme.string, interpolationProgress); + currentTheme.selection = color_lerp(startTheme.selection, endTheme.selection, interpolationProgress); + currentTheme.search = color_lerp(startTheme.search, endTheme.search, interpolationProgress); + currentTheme.line_numbers = color_lerp(startTheme.line_numbers, endTheme.line_numbers, interpolationProgress); + currentTheme.todo = color_lerp(startTheme.todo, endTheme.todo, interpolationProgress); + currentTheme.fixme = color_lerp(startTheme.fixme, endTheme.fixme, interpolationProgress); + currentTheme.note = color_lerp(startTheme.note, endTheme.note, interpolationProgress); + currentTheme.bug = color_lerp(startTheme.bug, endTheme.bug, interpolationProgress); + currentTheme.equals = color_lerp(startTheme.equals, endTheme.equals, interpolationProgress); + currentTheme.not_equals = color_lerp(startTheme.not_equals, endTheme.not_equals, interpolationProgress); + currentTheme.exclamation = color_lerp(startTheme.exclamation, endTheme.exclamation, interpolationProgress); + currentTheme.equals_equals = color_lerp(startTheme.equals_equals, endTheme.equals_equals, interpolationProgress); + currentTheme.less_than = color_lerp(startTheme.less_than, endTheme.less_than, interpolationProgress); + currentTheme.greater_than = color_lerp(startTheme.greater_than, endTheme.greater_than, interpolationProgress); + currentTheme.arrow = color_lerp(startTheme.arrow, endTheme.arrow, interpolationProgress); + currentTheme.plus = color_lerp(startTheme.plus, endTheme.plus, interpolationProgress); + currentTheme.minus = color_lerp(startTheme.minus, endTheme.minus, interpolationProgress); + currentTheme.truee = color_lerp(startTheme.truee, endTheme.truee, interpolationProgress); + currentTheme.falsee = color_lerp(startTheme.falsee, endTheme.falsee, interpolationProgress); + currentTheme.open_square = color_lerp(startTheme.open_square, endTheme.open_square, interpolationProgress); + currentTheme.close_square = color_lerp(startTheme.close_square, endTheme.close_square, interpolationProgress); + currentTheme.array_content = color_lerp(startTheme.array_content, endTheme.array_content, interpolationProgress); + currentTheme.current_line_number = color_lerp(startTheme.current_line_number, endTheme.current_line_number, interpolationProgress); + currentTheme.marks = color_lerp(startTheme.marks, endTheme.marks, interpolationProgress); + currentTheme.fb_selection = color_lerp(startTheme.fb_selection, endTheme.fb_selection, interpolationProgress); + currentTheme.link = color_lerp(startTheme.link, endTheme.link, interpolationProgress); + currentTheme.logic_or = color_lerp(startTheme.logic_or, endTheme.logic_or, interpolationProgress); + currentTheme.pipe = color_lerp(startTheme.pipe, endTheme.pipe, interpolationProgress); + currentTheme.logic_and = color_lerp(startTheme.logic_and, endTheme.logic_and, interpolationProgress); + currentTheme.ampersand = color_lerp(startTheme.ampersand, endTheme.ampersand, interpolationProgress); + currentTheme.multiplication = color_lerp(startTheme.multiplication, endTheme.multiplication, interpolationProgress); + currentTheme.pointer = color_lerp(startTheme.pointer, endTheme.pointer, interpolationProgress); + currentTheme.modeline = color_lerp(startTheme.modeline, endTheme.modeline, interpolationProgress); + currentTheme.modeline_accent = color_lerp(startTheme.modeline_accent, endTheme.modeline_accent, interpolationProgress); + currentTheme.minibuffer = color_lerp(startTheme.minibuffer, endTheme.minibuffer, interpolationProgress); + currentTheme.matching_parenthesis = color_lerp(startTheme.matching_parenthesis, endTheme.matching_parenthesis, interpolationProgress); + currentTheme.hl_line = color_lerp(startTheme.hl_line, endTheme.hl_line, interpolationProgress); + currentTheme.type = color_lerp(startTheme.type, endTheme.type, interpolationProgress); + currentTheme.function_definition = color_lerp(startTheme.function_definition, endTheme.function_definition, interpolationProgress); + currentTheme.anchor = color_lerp(startTheme.anchor, endTheme.anchor, interpolationProgress); + currentTheme.whitespace = color_lerp(startTheme.whitespace, endTheme.whitespace, interpolationProgress); + currentTheme.indentation_line = color_lerp(startTheme.indentation_line, endTheme.indentation_line, interpolationProgress); + currentTheme.null = color_lerp(startTheme.null, endTheme.null, interpolationProgress); + currentTheme.code_block = color_lerp(startTheme.code_block, endTheme.code_block, interpolationProgress); + + if (interpolationProgress >= 1.0f) { + interpolationProgress = 1.0f; + } + } else if (!theme_lerp) { + currentTheme = themes[currentThemeIndex]; + interpolationProgress = 1.0f; + } +} + +void initialize_themes() { + // Nature + themes[0] = (Theme) { + .cursor = hex_to_vec4f(0x658B5FFF), + .notext_cursor = hex_to_vec4f(0x658B5FFF), + .EOF_cursor = hex_to_vec4f(0x658B5FFF), + .insert_cursor = hex_to_vec4f(0x514B8EFF), + .emacs_cursor = hex_to_vec4f(0x565663FF), + .text = hex_to_vec4f(0xC0ACD1FF), + .background = hex_to_vec4f(0x090909FF), + .fringe = hex_to_vec4f(0x090909FF), + .comment = hex_to_vec4f(0x867892FF), + .hashtag = hex_to_vec4f(0x658B5FFF), + .logic = hex_to_vec4f(0x658B5FFF), + .string = hex_to_vec4f(0x4C6750FF), + .selection = hex_to_vec4f(0x262626FF), + .search = hex_to_vec4f(0x262626FF), + .todo = hex_to_vec4f(0x565663FF), + .line_numbers = hex_to_vec4f(0x171717FF), + .current_line_number = hex_to_vec4f(0xC0ACD1FF), + .fixme = hex_to_vec4f(0x444E46FF), + .note = hex_to_vec4f(0x4C6750FF), + .bug = hex_to_vec4f(0x867892FF), + .not_equals = hex_to_vec4f(0x867892FF), + .exclamation = hex_to_vec4f(0x4C6750FF), + .equals = hex_to_vec4f(0xC0ACD1FF), + .equals_equals = hex_to_vec4f(0x658B5FFF), + .greater_than = hex_to_vec4f(0x834EB6FF), + .less_than = hex_to_vec4f(0x834EB6FF), + .marks = hex_to_vec4f(0x658B5FFF), + .fb_selection = hex_to_vec4f(0x262626FF), + .plus = hex_to_vec4f(0x658B5FFF), + .minus = hex_to_vec4f(0x658B5FFF), + .truee = hex_to_vec4f(0x4C6750FF), + .falsee = hex_to_vec4f(0x867892FF), + .arrow = hex_to_vec4f(0x834EB6FF), + .open_square = hex_to_vec4f(0xC0ACD1FF), + .close_square = hex_to_vec4f(0xC0ACD1FF), + .array_content = hex_to_vec4f(0x4C6750FF), + .link = hex_to_vec4f(0x565663FF), + .logic_or = hex_to_vec4f(0x658B5FFF), + .pipe = hex_to_vec4f(0x565663FF), + .ampersand = hex_to_vec4f(0x658B5FFF), + .logic_and = hex_to_vec4f(0x658B5FFF), + .pointer = hex_to_vec4f(0x514B8EFF), + .multiplication = hex_to_vec4f(0x867892FF), + .matching_parenthesis = hex_to_vec4f(0x262626FF), + .hl_line = hex_to_vec4f(0x070707FF), + .type = hex_to_vec4f(0x565663FF), + .function_definition = hex_to_vec4f(0x564F96FF), + .anchor = hex_to_vec4f(0x564F96FF), + .minibuffer = hex_to_vec4f(0x090909FF), + .modeline = hex_to_vec4f(0x060606FF), + .modeline_accent = hex_to_vec4f(0x658B5FFF), + .whitespace = hex_to_vec4f(0x171717FF), + .selected_whitespaces = hex_to_vec4f(0x9989A7FF), + .indentation_line = hex_to_vec4f(0x171717FF), + .null = hex_to_vec4f(0x564F96FF), + .code_block = hex_to_vec4f(0x080808FF), + }; + + // DOOM one + themes[1] = (Theme) { + .cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF + .notext_cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF + .EOF_cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF + .insert_cursor = hex_to_vec4f(0x51AFEFFF), + .emacs_cursor = hex_to_vec4f(0xECBE7BFF), //#ECBE7B + .text = hex_to_vec4f(0xBBC2CFFF), + .background = hex_to_vec4f(0x282C34FF), + .fringe = hex_to_vec4f(0x282C34FF), + .comment = hex_to_vec4f(0x5B6268FF), + .hashtag = hex_to_vec4f(0x51AFEFFF), + .logic = hex_to_vec4f(0x51AFEFFF), + .string = hex_to_vec4f(0x98BE65FF), //#98BE65 + .selection = hex_to_vec4f(0x42444AFF), + .search = hex_to_vec4f(0x387AA7FF), //#387AA7 + .todo = hex_to_vec4f(0xECBE7BFF), + .line_numbers = hex_to_vec4f(0x3F444AFF), + .current_line_number = hex_to_vec4f(0xBBC2CFFF), + .fixme = hex_to_vec4f(0xFF6C6BFF), //#FF6C6B + .note = hex_to_vec4f(0x98BE65FF), + .bug = hex_to_vec4f(0xFF6C6BFF), + .not_equals = hex_to_vec4f(0xFF6C6BFF), + .exclamation = hex_to_vec4f(0x51AFEFFF), + .equals = hex_to_vec4f(0x98BE65FF), + .equals_equals = hex_to_vec4f(0x98BE65FF), + .greater_than = hex_to_vec4f(0x98BE65FF), + .less_than = hex_to_vec4f(0xFF6C6BFF), + .marks = hex_to_vec4f(0x387AA7FF), + .fb_selection = hex_to_vec4f(0x42444AFF), + .plus = hex_to_vec4f(0x98BE65FF), + .minus = hex_to_vec4f(0xFF6C6BFF), + .truee = hex_to_vec4f(0x98BE65FF), + .falsee = hex_to_vec4f(0xFF6C6BFF), + .arrow = hex_to_vec4f(0xBBC2CFFF), + .open_square = hex_to_vec4f(0xBBC2CFFF), + .close_square = hex_to_vec4f(0xBBC2CFFF), + .array_content = hex_to_vec4f(0xA9A1E1FF), + .link = hex_to_vec4f(0xA9A1E1FF), //#A9A1E1 + .matching_parenthesis = hex_to_vec4f(0x42444AFF), + .type = hex_to_vec4f(0xECBE7BFF), + .function_definition = hex_to_vec4f(0xC678DDFF), //#C678DD + .anchor = hex_to_vec4f(0xA9A1E1FF), + .hl_line = hex_to_vec4f(0x21242BFF),//#21242B + .multiplication = hex_to_vec4f(0x98BE65FF), + .pointer = hex_to_vec4f(0xA9A1E1FF), + .logic_and = hex_to_vec4f(0x98BE65FF), + .logic_or = hex_to_vec4f(0xFF6C6BFF), + .ampersand = hex_to_vec4f(0x51AFEFFF), + .pipe = hex_to_vec4f(0x98BE65FF), + .minibuffer = hex_to_vec4f(0x21242BFF), + .modeline = hex_to_vec4f(0x1D2026FF), + .modeline_accent = hex_to_vec4f(0x51AFEFFF), + .whitespace = hex_to_vec4f(0x3F444AFF), + .selected_whitespaces = hex_to_vec4f(0x959BA5FF), + .indentation_line = hex_to_vec4f(0x3F444AFF), + .null = hex_to_vec4f(0xA9A1E1FF), + .code_block = hex_to_vec4f(0x23272EFF), + }; + + // Dracula + themes[2] = (Theme){ + .cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 + .notext_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 + .EOF_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 + .insert_cursor = hex_to_vec4f(0xBD93F9FF), + .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), // #F1FA8C + .text = hex_to_vec4f(0xF8F8F2FF), + .background = hex_to_vec4f(0x282A36FF), + .fringe = hex_to_vec4f(0x282A36FF), + .comment = hex_to_vec4f(0x6272A4FF), + .hashtag = hex_to_vec4f(0xBD93F9FF), + .logic = hex_to_vec4f(0xFF79C6FF), // #FF79C6 + .string = hex_to_vec4f(0xF1FA8CFF), + .selection = hex_to_vec4f(0x44475AFF), + .search = hex_to_vec4f(0x8466AEFF), // #8466AE + .todo = hex_to_vec4f(0xF1FA8CFF), + .line_numbers = hex_to_vec4f(0x6272A4FF), + .current_line_number = hex_to_vec4f(0xF8F8F2FF), + .fixme = hex_to_vec4f(0xFF5555FF), // #FF5555 + .note = hex_to_vec4f(0x50FA7BFF), // #50FA7B + .bug = hex_to_vec4f(0xFF5555FF), + .not_equals = hex_to_vec4f(0xFF5555FF), + .exclamation = hex_to_vec4f(0xBD93F9FF), + .equals = hex_to_vec4f(0x50FA7BFF), + .equals_equals = hex_to_vec4f(0x50FA7BFF), + .greater_than = hex_to_vec4f(0x50FA7BFF), + .less_than = hex_to_vec4f(0xFF5555FF), + .marks = hex_to_vec4f(0x8466AEFF), + .fb_selection = hex_to_vec4f(0x44475AFF), + .plus = hex_to_vec4f(0x50FA7BFF), + .minus = hex_to_vec4f(0xFF5555FF), + .truee = hex_to_vec4f(0x50FA7BFF), + .falsee = hex_to_vec4f(0xFF5555FF), + .arrow = hex_to_vec4f(0x8BE9FDFF), // #8BE9FD + .open_square = hex_to_vec4f(0xF8F8F2FF), + .close_square = hex_to_vec4f(0xF8F8F2FF), + .array_content = hex_to_vec4f(0xBD93F9FF), + .link = hex_to_vec4f(0x8BE9FDFF), + .matching_parenthesis = hex_to_vec4f(0x44475AFF), + .type = hex_to_vec4f(0xBD93F9FF), + .function_definition = hex_to_vec4f(0x50FA7BFF), + .anchor = hex_to_vec4f(0xFF79C6FF), + .hl_line = hex_to_vec4f(0x1E2029FF), // #1E2029 + .multiplication = hex_to_vec4f(0x50FA7BFF), + .pointer = hex_to_vec4f(0xFFC9E8FF), // #FFC9E8 + .logic_and = hex_to_vec4f(0x50FA7BFF), + .logic_or = hex_to_vec4f(0xFF5555FF), + .ampersand = hex_to_vec4f(0x8BE9FDFF), + .pipe = hex_to_vec4f(0x50FA7BFF), + .minibuffer = hex_to_vec4f(0x1E2029FF), // #1E2029 + .modeline = hex_to_vec4f(0x22232DFF), + .modeline_accent = hex_to_vec4f(0xBD93F9FF), + .whitespace = hex_to_vec4f(0x565761FF), + .selected_whitespaces = hex_to_vec4f(0xC6C6C1FF), + .indentation_line = hex_to_vec4f(0x565761FF), + .null = hex_to_vec4f(0x8BE9FDFF), + .code_block = hex_to_vec4f(0x23242FFF), + }; + + + // Palenigh + themes[3] = (Theme){ + .cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .notext_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .EOF_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .insert_cursor = hex_to_vec4f(0xC792EAFF), + .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), // #FFCB6B + .text = hex_to_vec4f(0xEEFFFFFF), + .background = hex_to_vec4f(0x292D3EFF), + .fringe = hex_to_vec4f(0x292D3EFF), + .comment = hex_to_vec4f(0x676E95FF), + .hashtag = hex_to_vec4f(0x89DDFFFF), // #89DDFF + .logic = hex_to_vec4f(0x89DDFFFF), + .string = hex_to_vec4f(0xC3E88DFF), // #C3E88D + .selection = hex_to_vec4f(0x3C435EFF), + .search = hex_to_vec4f(0x4E5579FF), + .todo = hex_to_vec4f(0xFFCB6BFF), + .line_numbers = hex_to_vec4f(0x676E95FF), + .current_line_number = hex_to_vec4f(0xEEFFFFFF), + .fixme = hex_to_vec4f(0xFF5370FF), // #FF5370 + .note = hex_to_vec4f(0xC3E88DFF), + .bug = hex_to_vec4f(0xFF5370FF), + .not_equals = hex_to_vec4f(0xFF5370FF), + .exclamation = hex_to_vec4f(0x89DDFFFF), + .equals = hex_to_vec4f(0xC3E88DFF), + .equals_equals = hex_to_vec4f(0xC3E88DFF), + .greater_than = hex_to_vec4f(0xC3E88DFF), + .less_than = hex_to_vec4f(0xFF5370FF), + .marks = hex_to_vec4f(0x4E5579FF), + .fb_selection = hex_to_vec4f(0x3C435EFF), + .plus = hex_to_vec4f(0xC3E88DFF), + .minus = hex_to_vec4f(0xFF5370FF), + .truee = hex_to_vec4f(0xC3E88DFF), + .falsee = hex_to_vec4f(0xFF5370FF), + .arrow = hex_to_vec4f(0xFFCB6BFF), + .open_square = hex_to_vec4f(0xEEFFFFFF), + .close_square = hex_to_vec4f(0xEEFFFFFF), + .array_content = hex_to_vec4f(0x82AAFFFF), // #82AAFF + .link = hex_to_vec4f(0x89DDFFFF), + .logic_or = hex_to_vec4f(0xFF5370FF), + .pipe = hex_to_vec4f(0xC3E88DFF), + .ampersand = hex_to_vec4f(0x89DDFFFF), + .logic_and = hex_to_vec4f(0xC3E88DFF), + .pointer = hex_to_vec4f(0xF78C6CFF), // #F78C6C + .multiplication = hex_to_vec4f(0xC3E88DFF), + .matching_parenthesis = hex_to_vec4f(0x3C435EFF), + .hl_line = hex_to_vec4f(0x242837FF), + .type = hex_to_vec4f(0xC792EAFF), + .function_definition = hex_to_vec4f(0x82AAFFFF), + .anchor = hex_to_vec4f(0xFF5370FF), + .minibuffer = hex_to_vec4f(0x292D3EFF), + .modeline = hex_to_vec4f(0x232635FF), + .modeline_accent = hex_to_vec4f(0xC792EAFF), + .whitespace = hex_to_vec4f(0x4E5579FF), + .selected_whitespaces = hex_to_vec4f(0xBECCCCFF), + .indentation_line = hex_to_vec4f(0x4E5579FF), + .null = hex_to_vec4f(0xF78C6CFF), + .code_block = hex_to_vec4f(0x232635FF), + }; + + // DOOM city lights + themes[4] = (Theme){ + .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .notext_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .EOF_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D + .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 + .text = hex_to_vec4f(0xA0B3C5FF), + .background = hex_to_vec4f(0x1D252CFF), + .fringe = hex_to_vec4f(0x1D252CFF), + .comment = hex_to_vec4f(0x41505EFF), + .hashtag = hex_to_vec4f(0x5EC4FFFF), + .logic = hex_to_vec4f(0x5EC4FFFF), + .string = hex_to_vec4f(0x539AFCFF), // #539AFC + .selection = hex_to_vec4f(0x28323BFF), + .search = hex_to_vec4f(0x4189B2FF), + .todo = hex_to_vec4f(0xEBBF83FF), + .line_numbers = hex_to_vec4f(0x384551FF), + .current_line_number = hex_to_vec4f(0xA0B3C5FF), + .fixme = hex_to_vec4f(0xD95468FF), // #D95468 + .note = hex_to_vec4f(0x8BD49CFF), // #8BD49C + .bug = hex_to_vec4f(0xD95468FF), + .not_equals = hex_to_vec4f(0xD95468FF), + .exclamation = hex_to_vec4f(0x5EC4FFFF), + .equals = hex_to_vec4f(0x8BD49CFF), + .equals_equals = hex_to_vec4f(0x8BD49CFF), + .greater_than = hex_to_vec4f(0x8BD49CFF), + .less_than = hex_to_vec4f(0xD95468FF), + .marks = hex_to_vec4f(0x4189B2FF), + .fb_selection = hex_to_vec4f(0x28323BFF), + .plus = hex_to_vec4f(0x8BD49CFF), + .minus = hex_to_vec4f(0xD95468FF), + .truee = hex_to_vec4f(0x8BD49CFF), + .falsee = hex_to_vec4f(0xD95468FF), + .arrow = hex_to_vec4f(0xA0B3C5FF), + .open_square = hex_to_vec4f(0xA0B3C5FF), + .close_square = hex_to_vec4f(0xA0B3C5FF), + .array_content = hex_to_vec4f(0x539AFCFF), + .link = hex_to_vec4f(0x539AFCFF), + .matching_parenthesis = hex_to_vec4f(0x28323BFF), + .type = hex_to_vec4f(0xEBBF83FF), + .function_definition = hex_to_vec4f(0x33CED8FF), // #33CED8 + .anchor = hex_to_vec4f(0xE27E8DFF), + .hl_line = hex_to_vec4f(0x181E24FF), + .multiplication = hex_to_vec4f(0x8BD49CFF), + .pointer = hex_to_vec4f(0x539AFCFF), + .logic_and = hex_to_vec4f(0x8BD49CFF), + .logic_or = hex_to_vec4f(0xD95468FF), + .ampersand = hex_to_vec4f(0x5EC4FFFF), + .pipe = hex_to_vec4f(0x8BD49CFF), + .minibuffer = hex_to_vec4f(0x181E24FF), + .modeline = hex_to_vec4f(0x181F25FF), + .modeline_accent = hex_to_vec4f(0x5EC4FFFF), + .whitespace = hex_to_vec4f(0x384551FF), + .selected_whitespaces = hex_to_vec4f(0x808F9DFF), + .indentation_line = hex_to_vec4f(0x384551FF), + .null = hex_to_vec4f(0xE27E8DFF), + .code_block = hex_to_vec4f(0x20282FFF), + }; + + + // DOOM molokai + themes[5] = (Theme) { + .cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 + .notext_cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 + .EOF_cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 + .insert_cursor = hex_to_vec4f(0xFB2874FF), + .emacs_cursor = hex_to_vec4f(0xE2C770FF), //#E2C770 + .text = hex_to_vec4f(0xD6D6D4FF), + .background = hex_to_vec4f(0x1C1E1FFF), + .fringe = hex_to_vec4f(0x1C1E1FFF), + .comment = hex_to_vec4f(0x555556FF), + .hashtag = hex_to_vec4f(0x9C91E4FF), //#9C91E4 + .logic = hex_to_vec4f(0xFB2874FF), + .string = hex_to_vec4f(0xE2C770FF), + .selection = hex_to_vec4f(0x4E4E4EFF), + .search = hex_to_vec4f(0x9C91E4FF), + .todo = hex_to_vec4f(0xE2C770FF), + .line_numbers = hex_to_vec4f(0x555556FF), + .current_line_number = hex_to_vec4f(0xCFC0C5FF), + .fixme = hex_to_vec4f(0xE74C3CFF), //#E74C3C + .note = hex_to_vec4f(0xB6E63EFF), //#B6E63E + .bug = hex_to_vec4f(0xE74C3CFF), + .not_equals = hex_to_vec4f(0xE74C3CFF), + .exclamation = hex_to_vec4f(0x9C91E4FF), + .equals = hex_to_vec4f(0xB6E63EFF), + .equals_equals = hex_to_vec4f(0xB6E63EFF), + .greater_than = hex_to_vec4f(0xB6E63EFF), + .less_than = hex_to_vec4f(0xE74C3CFF), + .marks = hex_to_vec4f(0xB6E63EFF), + .fb_selection = hex_to_vec4f(0x4E4E4EFF), + .plus = hex_to_vec4f(0xB6E63EFF), + .minus = hex_to_vec4f(0xE74C3CFF), + .truee = hex_to_vec4f(0xB6E63EFF), + .falsee = hex_to_vec4f(0xE74C3CFF), + .arrow = hex_to_vec4f(0xD6D6D4FF), + .open_square = hex_to_vec4f(0xD6D6D4FF), + .close_square = hex_to_vec4f(0xD6D6D4FF), + .array_content = hex_to_vec4f(0x9C91E4FF), + .link = hex_to_vec4f(0x9C91E4FF), + .matching_parenthesis = hex_to_vec4f(0x4E4E4EFF), + .type = hex_to_vec4f(0x66D9EFFF), + .function_definition = hex_to_vec4f(0xB6E63EFF), + .anchor = hex_to_vec4f(0x9C91E4FF), + .hl_line = hex_to_vec4f(0x222323FF), + .multiplication = hex_to_vec4f(0xB6E63EFF), + .pointer = hex_to_vec4f(0x9C91E4FF), + .logic_and = hex_to_vec4f(0xB6E63EFF), + .logic_or = hex_to_vec4f(0xE74C3CFF), + .ampersand = hex_to_vec4f(0x9C91E4FF), + .pipe = hex_to_vec4f(0xB6E63EFF), + .minibuffer = hex_to_vec4f(0x222323FF), + .modeline = hex_to_vec4f(0x2D2E2EFF), + .modeline_accent = hex_to_vec4f(0xB6E63EFF), + .whitespace = hex_to_vec4f(0x4E4E4EFF), + .selected_whitespaces = hex_to_vec4f(0x808F9DFF), + .indentation_line = hex_to_vec4f(0x4E4E4EFF), + .null = hex_to_vec4f(0xFD971FFF), + .code_block = hex_to_vec4f(0x2D2E2EFF), + }; + + + // SUNSET + themes[6] = (Theme){ + .cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .notext_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .EOF_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .insert_cursor = hex_to_vec4f(0xD46A7DFF), // #D46A7D + .emacs_cursor = hex_to_vec4f(0x9A8B6AFF), // #9A8B6A + .text = hex_to_vec4f(0xCCCCC5FF), + .background = hex_to_vec4f(0x0C0D12FF), + .fringe = hex_to_vec4f(0x0C0D12FF), + .comment = hex_to_vec4f(0x8E8E89FF), + .hashtag = hex_to_vec4f(0xD9A173FF), + .logic = hex_to_vec4f(0xD9A173FF), + .string = hex_to_vec4f(0x6A7E74FF), // #6A7E74 + .selection = hex_to_vec4f(0x28292DFF), + .search = hex_to_vec4f(0x805F44FF), // #805F44 + .todo = hex_to_vec4f(0x9A8B6AFF), + .line_numbers = hex_to_vec4f(0x1B1B21FF), + .current_line_number = hex_to_vec4f(0xCCCCC5FF), + .fixme = hex_to_vec4f(0xC06873FF), // #C06873 + .note = hex_to_vec4f(0x6A7E74FF), + .bug = hex_to_vec4f(0xC06873FF), + .not_equals = hex_to_vec4f(0xD46A7DFF), + .exclamation = hex_to_vec4f(0xD46A7DFF), + .equals = hex_to_vec4f(0x6A7E74FF), + .equals_equals = hex_to_vec4f(0x6A7E74FF), + .greater_than = hex_to_vec4f(0x6A7E74FF), + .less_than = hex_to_vec4f(0xC06873FF), + .marks = hex_to_vec4f(0x805F44FF), + .fb_selection = hex_to_vec4f(0x28292DFF), + .plus = hex_to_vec4f(0x6A7E74FF), + .minus = hex_to_vec4f(0xD46A7DFF), + .truee = hex_to_vec4f(0x6A7E74FF), + .falsee = hex_to_vec4f(0xD46A7DFF), + .arrow = hex_to_vec4f(0xCCCCC5FF), + .open_square = hex_to_vec4f(0xCCCCC5FF), + .close_square = hex_to_vec4f(0xCCCCC5FF), + .array_content = hex_to_vec4f(0xCCCCC5FF), + .link = hex_to_vec4f(0xD9A173FF), + .logic_or = hex_to_vec4f(0xD46A7DFF), + .pipe = hex_to_vec4f(0x6A7E74FF), + .ampersand = hex_to_vec4f(0x6A7E74FF), + .logic_and = hex_to_vec4f(0x6A7E74FF), + .pointer = hex_to_vec4f(0xD9A173FF), + .multiplication = hex_to_vec4f(0x6A7E74FF), + .matching_parenthesis = hex_to_vec4f(0x28292DFF), + .hl_line = hex_to_vec4f(0x0A0B0FFF), + .type = hex_to_vec4f(0x9A8B6AFF), + .function_definition = hex_to_vec4f(0xE07084FF), // #E07084 + .anchor = hex_to_vec4f(0xE07084FF), + .minibuffer = hex_to_vec4f(0x0C0D12FF), + .modeline = hex_to_vec4f(0x08090CFF), + .modeline_accent = hex_to_vec4f(0xD9A173FF), + .whitespace = hex_to_vec4f(0x1B1B21FF), + .selected_whitespaces = hex_to_vec4f(0xA3A39DFF), + .indentation_line = hex_to_vec4f(0x28292DFF), + .null = hex_to_vec4f(0xD46A7DFF), + .code_block = hex_to_vec4f(0x0B0C11FF), + }; + + + // Helix + themes[7] = (Theme){ + .cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 + .notext_cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 + .EOF_cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 + .insert_cursor = hex_to_vec4f(0x5A5977FF), + .emacs_cursor = hex_to_vec4f(0x5A5977FF), + .text = hex_to_vec4f(0xFFFFFFFF), + .fringe = hex_to_vec4f(0x3B224CFF), //#3B224C + .comment = hex_to_vec4f(0x697C81FF), + .hashtag = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF + .logic = hex_to_vec4f(0xECCDBAFF), //#ECCDBA + .string = hex_to_vec4f(0xCCCCCCFF), + .selection = hex_to_vec4f(0x540099FF), //#540099 + .search = hex_to_vec4f(0x540099FF), + .todo = hex_to_vec4f(0x6F44F0FF), + .line_numbers = hex_to_vec4f(0x5A5977FF), + .current_line_number = hex_to_vec4f(0xDBBFEFFF), + .fixme = hex_to_vec4f(0xF47868FF), //#F47868 + .note = hex_to_vec4f(0x6F44F0FF), + .bug = hex_to_vec4f(0xF47868FF), + .not_equals = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF + .exclamation = hex_to_vec4f(0xDBBFEFFF), + .equals = hex_to_vec4f(0xDBBFEFFF), + .equals_equals = hex_to_vec4f(0xDBBFEFFF), + .greater_than = hex_to_vec4f(0xDBBFEFFF), + .less_than = hex_to_vec4f(0xDBBFEFFF), + .marks = hex_to_vec4f(0x540099FF), + .fb_selection = hex_to_vec4f(0x540099FF), + .plus = hex_to_vec4f(0xDBBFEFFF), + .minus = hex_to_vec4f(0xDBBFEFFF), + .truee = hex_to_vec4f(0xFFFFFFFF), + .falsee = hex_to_vec4f(0xFFFFFFFF), + .arrow = hex_to_vec4f(0xA4A0E8FF), //#A4A0E8 + .open_square = hex_to_vec4f(0xA4A0E8FF), + .close_square = hex_to_vec4f(0xA4A0E8FF), + .array_content = hex_to_vec4f(0xA4A0E8FF), + .link = hex_to_vec4f(0xA4A0E8FF), + .logic_or = hex_to_vec4f(0xDBBFEFFF), + .pipe = hex_to_vec4f(0xDBBFEFFF), + .ampersand = hex_to_vec4f(0xDBBFEFFF), + .logic_and = hex_to_vec4f(0xDBBFEFFF), + .pointer = hex_to_vec4f(0xFFFFFFFF), + .multiplication = hex_to_vec4f(0xFFFFFFFF), + .matching_parenthesis = hex_to_vec4f(0x6C6999FF), + .hl_line = hex_to_vec4f(0x281733FF), + .type = hex_to_vec4f(0xFFFFFFFF), + .function_definition = hex_to_vec4f(0xFFFFFFFF), + .anchor = hex_to_vec4f(0xFFFFFFFF), + .minibuffer = hex_to_vec4f(0x3B224CFF), + .modeline = hex_to_vec4f(0x281733FF), + .modeline_accent = hex_to_vec4f(0x281733FF), + .whitespace = hex_to_vec4f(0x281733FF), + .selected_whitespaces = hex_to_vec4f(0xFFFFFFFF), + .indentation_line = hex_to_vec4f(0x281733FF), + .null = hex_to_vec4f(0xFFFFFFFF), + .code_block = hex_to_vec4f(0x281733FF), + }; + + + // Initialize currentTheme to the first theme + if (current_mode == HELIX) { + currentTheme = themes[7]; + } else { + currentTheme = themes[0]; + } + previousThemeIndex = 0; + currentThemeIndex = 0; + interpolationProgress = 1.0f; // No interpolation needed at start + + } diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c.blob new file mode 100644 index 0000000000000000000000000000000000000000..88eee6cec41e4d3b736e290fc723110faa266f01 GIT binary patch literal 39046 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 ABLDyZ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h new file mode 100644 index 00000000..369821d1 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h @@ -0,0 +1,93 @@ +#ifndef THEME_H +#define THEME_H + +#include "la.h" +#include "stdbool.h" + +typedef struct { + Vec4f cursor; + Vec4f notext_cursor; + Vec4f EOF_cursor; + Vec4f insert_cursor; + Vec4f emacs_cursor; + Vec4f text; + Vec4f background; + Vec4f logic; + Vec4f comment; + Vec4f hashtag; + Vec4f string; + Vec4f selection; + Vec4f search; + Vec4f line_numbers; + Vec4f todo; + Vec4f fixme; + Vec4f note; + Vec4f bug; + Vec4f equals; + Vec4f not_equals; + Vec4f exclamation; + Vec4f equals_equals; + Vec4f less_than; + Vec4f greater_than; + Vec4f arrow; + Vec4f plus; + Vec4f minus; + Vec4f truee; + Vec4f falsee; + Vec4f open_square; + Vec4f close_square; + Vec4f array_content; + Vec4f current_line_number; + Vec4f marks; + Vec4f fb_selection; + Vec4f link; + Vec4f logic_or; + Vec4f pipe; + Vec4f logic_and; + Vec4f ampersand; + Vec4f multiplication; + Vec4f pointer; + Vec4f modeline; + Vec4f modeline_accent; + Vec4f minibuffer; + Vec4f matching_parenthesis; + Vec4f hl_line; + Vec4f type; + Vec4f function_definition; + Vec4f anchor; + Vec4f whitespace; + Vec4f selected_whitespaces; + Vec4f indentation_line; + Vec4f null; + Vec4f code_block; + Vec4f fringe; +} Theme; + +#define CURRENT_THEME (currentTheme) // interpolated theme + +/* #define CURRENT_THEME (themes[currentThemeIndex]) */ + + +extern Theme themes[]; +extern Theme currentTheme; // Interpolated theme +extern Theme previousTheme; +extern int currentThemeIndex; +extern int previousThemeIndex; // Index of the previous theme + +extern float interpolationProgress; +extern bool theme_lerp; +extern float theme_lerp_speed; +extern float theme_lerp_treshold; + + + +void initialize_themes(); +void theme_next(int *currentThemeIndex); +void theme_previous(int *currentThemeIndex); +void update_theme_interpolation(); // Function to handle interpolation +Vec4f color_lerp(Vec4f start, Vec4f end, float t); // Function to interpolate colors +void switch_to_theme(int *currentThemeIndex, int newIndex); +void transition_color(Vec4f* color_field, Vec4f target_color, float transition_speed); + + +#endif // THEME_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..0261de715559c33b991559b1bf8d87f38422019d GIT binary patch literal 20214 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 ON`pi<aPtt*&Hn@LDU+N4 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h b/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h new file mode 100644 index 00000000..8aff68e8 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h @@ -0,0 +1,20 @@ + +#ifndef TREESITTER_H +#define TREESITTER_H + +#include "editor.h" +#include "file_browser.h" +#include "theme.h" +#include <tree_sitter/api.h> + + +void tree(Editor *e, File_Browser *fb); +void apply_syntax_highlighting(Editor *editor, TSNode node); +void highlight_node(Editor *editor, TSNode node, Vec4f color); + +void update_theme_colors_based_on_syntax(TSNode node, Theme *theme); + +#endif // TREESITTER_H + + + diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..8055e0c4e0587a780ed84a109f1fe1f8968ed9f1 GIT binary patch literal 13860 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 amqMy=1JY9ezq)Dbrk$JE@5-bKaQ_FVh63FH literal 0 HcmV?d00001 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h b/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h new file mode 100644 index 00000000..c3efacb1 --- /dev/null +++ b/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h @@ -0,0 +1,30 @@ +#ifndef YASNIPPET_H_ +#define YASNIPPET_H_ + + +// YASNIPPET +#define MAX_SNIPPET_KEY_LENGTH 50 +#define MAX_SNIPPET_CONTENT_LENGTH 1024 + +typedef struct { + char key[MAX_SNIPPET_KEY_LENGTH]; + char content[MAX_SNIPPET_CONTENT_LENGTH]; +} Snippet; + +typedef struct { + Snippet *array; + size_t used; + size_t size; +} SnippetArray; + +extern SnippetArray snippets; + +void init_snippet_array(SnippetArray *a, size_t initial_size); +void insert_snippet(SnippetArray *a, Snippet snippet); +void free_snippet_array(SnippetArray *a); +void load_snippets_from_directory(); +void activate_snippet(Editor *e); + + + +#endif // YASNIPPET_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9743123d97efcc5bd2b321076d11cec1416179c3 GIT binary patch literal 14191 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 N*4~n-NQf|N{||}+P`>~G literal 0 HcmV?d00001 diff --git a/build.sh b/build.sh index 3cbd112b..cac0959a 100755 --- a/build.sh +++ b/build.sh @@ -24,16 +24,15 @@ set -xe CC="${CXX:-cc}" PKGS="sdl2 glew freetype2" -CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -ljson-c -lpthread -D_DEFAULT_SOURCE" +CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -ljson-c -lpthread -D_DEFAULT_SOURCE -ltree-sitter" LIBS=-lm -# SRC="src/main.c src/la.c src/editor.c src/file_browser.c src/free_glyph.c src/simple_renderer.c src/common.c src/lexer.c src/yasnippet.c" SRC="src/*.c" if [ `uname` = "Darwin" ]; then CFLAGS+=" -framework OpenGL" fi -$CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS` +$CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS ./libtree-sitter-json.a `pkg-config --libs $PKGS ` diff --git a/ccls_log.txt b/clangd.log similarity index 100% rename from ccls_log.txt rename to clangd.log diff --git a/config/ded/fonts/JetBrainsMono-Bold.ttf b/config/ded/fonts/JetBrainsMono-Bold.ttf deleted file mode 100644 index 8c93043de6454ad2d5575f0751150c6551d9c588..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 277828 zcmc${4V;zJ`u~5e`(A4|J*eq9O~#(RXKJb`(Uei6Ml(I=fh0_cW@@4+LWdASNJ0o9 zgd8F4k|Tr;Ax;P(2|Xc%oD-sl`Ms~b_Rer}e&6r^`~AKCdA)tsz1FqXy4JeZec$W8 z_skwKBGQomS;_2M*1J!W_3mZ~m+Te^+VvfL?C}r2P<y_FPv?u|X7oM&gkJd{zdl{U zk2{HsYI5xHhaA?pvTl`#nL{fTqbF2O9G+XgPUN6MkzQwvK7Ud)zdW<4$XU}UUvS#Q z(<h8NB)m*y<UEo3^-ixmZzB1b^tS`eIDPzur&T;O?m>|m<0V*IJa$ZFRaWPUD`~$K z<z2^;A;q;$;&>>>xnn0xnmn|+eoKybiewd!KYMg##;LDu6FIwp<B|!LlP5M<*`$c_ z$=FBFs+=&Uah(~xB^<RtB+`81+2>6<W%!*|!m-Om26mo!?wE-)-kh5)GGQV1ABfIP zFzCI<zH454WP{=#r9rrr9QkbPX%~7Od*v@BdnX2aYz4Lv36eGFP9)sDcMX-xe<`Ux zIoOlR*GkEMk+(G`^0rwjXUWA{GngIzB-e|$iu&~=q|^rG!7_2QF(W9a(g3gKR5{F) zkSkK#w>8fO)s5trUE~yNPXAu~Z=M`bUG04ccbkH!n0r6_kXo$+q9aj>(B^Q6|39Q2 zZ7YLd;GZyn{5p`<a?<}(x}@3|jQ0Bvs9)N*s?NoKhivSX^tdi0JswokG$Gv;{*w>? zFUp$Jr=o4gK*x6sl%>*ooaPA9`{QWxwSLF_@W1J^uD|;Gp%r=Qar`Ge7Q32ca{Ncq zV^zPq{XgU&+E%nbUC;ZYFZqRV7^pve{)eR7P(3u&rl$9Y`o$Hg`gJtDZvQ7bgm#n@ zAuEN(Go7xLN*{uzVo?3<Z|UTk)cpVH9Q;{*or82t)JA>N{xmKchsqkXBz@GMpy$FZ zu)k~N{$l*UnU_nye_YRctoi>H^t`W$j-}{N*xz|pfbE}AW8SNGv99)mXzcYm_(x74 zFOB+B`Un0iWBcEnXC1rxq36)U@EB;kb?$V{q_63!YMZ`CaXv{tq|dkX`P7g+z4mKe zElanf<sBitmh}3p*Sca*8=Wsj)1Y&z$JIMgje}mRwGFjT->>vOq<(0<4ym-}^#qMk zI<9)n84SA4|LC{+sBLP#`keMV?WgAJwNuX<ExR~HdOp%?AtYb>Nw=Zb2BjIK=R<AN z<r+hs^K`s*E;Zc))FwS2nm!4%9i5MARO{(j`h(i1=Uz2EABU&Xtx;`5{coE>{n6`} z`cu<yJ=XcqHZ^S^y;fDzzG@#jKiaO&gQj&|91EJKZD@?tA1%}VG*5j{)flT?Z|Ddb zr}TQrC(S%oe-F&{KJFr20cf&qt)uO0JBs?N=eUkh)4E<pL)sth=R`>Rtz%I;MXxLB zlg31k)kf3mi`uES18pNs&2v!eXt}EPoAycT)dQV7Juh^OI(OQJ*4Ox{YPrr=`dHU$ z7HC-&=(-vS>GHJd8qhL5);6_mUH^K`QD1c4(|)S0=BX;0pH@w4I}K9#YL_nWkV@-% zQor;#-H)c#whWF3J@2}w&^6QrN>i$7wbPhs9ko^eG<^l!3^&3wm;qP8RJaZ<gDc_x zFS}dmTYb6+{wrzqw<hX$4XSsuj%!e}EIHm1?B9kLQu++q8P=va57l*{HjhFS)aDvE z4RkF{23^P4RR4tPHBPabCsKVNTuk~Q(Dw9P90uuj(#L0!cN>g@TT<m}Gaj@*WhBgm z2`Sa|AkcN9Y3)~iJswVgq3|+jo~q_Gg%+UpN(k!LS3&vS!k~QDdY&j*=ezFbctlXX z=U1Oj>)s6VBiLN%*-ibu-GK9A?|ne*_8tN&gYw<X&F(RzF93Yn`x?hD0)Fm&7-c^9 zvM!V5YO{zu^7k%78S9>%DL<|zPoa%nKcjuoIh1b%`q}djcq4_T(`?0V7JhO*q-}Pc zOL`0WjD2r_&O_?}KJUVQH*wp0vS)Y9+iJhN9dmREQ~`C8bEek<jhD`^#!BPxJM?Lp zJdM!+$cH1KAJhjeD*%m2DYSv+ptfp9Jfsoa18Pe@)x;xt?rK>p_!jgUcCSzCdQaYS zG`8$blWS7<s1L$tKulyd41va=?Go?g8fISgnpT}anUiGOxhYjU?JEt}v}D_Q{n0Xo zx_X^S=BwXIc1ks^KC3V4ujUVgbe`s`Kbohgf9bTArR#MkJrjn3#zO6C+NSHMU)r|X zsFp#?ly7ZGE9#S?zQ;l5^KfVY8Y7L{G)Rv*tsTfys8{_@^gNgcx?fPVKlMr1Mau8w zoKECe+fda$HLZ4v9;+?^t=~C?=GUa=T<AQiz1GuwjiaiLLCezhdXjDghXLbE#z)JT z15N)Y<Y4S_ph-&gxEOSO&~Ej7RP*$Bf9Q2h^HsIav`w{7r+wL{y7tsg`%BqZZ}+yM z=U}RS^;-H?()McmKfo05HtYc3hNl16miqU*e4T?-fB$Lz(q$T_bXrw9{Z>DD-PddX ze*90`lK;E9HIB7TO`CmfX?uE}sHWk#dYeb{(rMMSO**e;dChdvb|v<ZwoR+(wdoJ} z$vnND{h`jk*&Ud&(Khn-Z~uR5Bkji@RejLBw5H3Gdm`;GRlZ*v^($qQ^edgNG0t@P zzIJQ0m(Ke${o~vwefYy%rRyfgU!(2c`CTKPHRtwsHtM^svBDIr;hO8JW;(fc^qQDP zuh;2ohh94egSM4MueSq1?}^F;m<iNNjwzj=w*TK&?durOb}s@wKOX`0L$7-}=KcAt z_WgdFhvYp-W8MYy8l?B++9}oRpgvy|K{x1-Lhlzd;04e<*0(A8quRG>3s9f5J@ysJ zc3Pr}_Ol$ur_i+8?T6&Ku5Ip*uH-A)CUujx$C0LeJ|jrJm#co5<2q38(fvd+J{r3k z{iWAjvg}97BA|XU=488i&Hpo)&*ZbMwx@H~9v+9O?5iw$s-5h$o<i54Q_%O|b@)5S z6VW%ZyOs1R6n~TZ%6Hg<-3(mse|<WYUQxqtF=^V~%h-4QLL2Kyw<A5zlio|}zBav= z)%31wIsOiP0{co(AGvQQkBPUcvbzeq?WE`Yp1qfFj32+0Q2sgTN2yPnyT{_^*&J^m zU&p)j4>sCIsx7UXPU{|gFXvMFc-J<cPWDaPn!lIzqxrfQ-?JWekUoXHS!kzJfAg5{ z$#4{KZAh+7RXq=<YM#hmJ~!KY1so2SLX2mX6VQe!^3cJ+XLCs=iR|Gsp1o&bcL1t& zPlQuoJWzMf40wgK?&T%`aY#OIet=#C<5DnhvH;W<g*lYRQf=+WuYEqX#%6y$X}<b( z5UPG@8|v5Dpkvap<kQE0^665_Yx=aD<M*{rs(ucdM%zozQ(F0)aBmv*C!L>E+8GWy ze$HLpyX?Dm3TZw62Bw}DR4jy$>(dPyB|o#%<522|aBS;;#|ME6_?WMjERX}_5II6F zHHVtZ%q(-Wxy#&V66P(l+PrJlm=DZav(BtHUz%^skES}v3OWae2g8DAgJr>M!Rx^% z!M}o^LmSo$8-$I*tS}zthehFE!b`&$;mmMWcwhK%m<V4F-wr>t^=wNUx7}>1J=Tt} zBke8rF8hF8WS_Rr*^lgJ_AC2iov*X6%DyN2m#B%>jb=uhM4Lrp(cEb3Xs2jlv|F@i zv`=(m^up*x(J9euqYI;tN0&sOkG_}_<Q$OGIHy@o%bbI9VmY}v9dk-@uFJV2=boH- zIS=GKl=Dc=V>vJ6yq>cr=i{8uaz4-5n)7w6UaWDfX{==|JC+w~A3Gve9P1G)jrEQl z9UBlE6dM{lDK;i{UTjM2+Snbj2V+ZOOJmQ+R>WS7y%BpWwmP;c_Cwso>&9Ee501Bv z=f~T}FN$9mzcv0?{H^%j+??FpyxDp8=G~X~Xx^&4xAWf5`y%g~yzldVYCWO#*{!c> zeP5f#ZJM@e-ll7tbK1;qb5EOB+pKT%O`D(FHf!6z?euoiF4Dey!~Gkc+&gM-b@j>B zr&RB$t|poX@abqL=_d0`p}8>`sd?rJ^X4BS^@aJ`>@d577Qtc3NIgTOUL{g%laZ1z zvM*A3Vb^dHk(x%NZU}D*9|#`_7lm(x?^|Q*+bo-FyW28*oITafvUl41?c?@u_F22u zuD4t44k9&`NX<({sxgsjk&4t|(IcY8(J~@6DH*A$(MSIfsirvx)`--MoLM<{6RG=i z9?W?-6{*!k>Qf^1C6SU?eInI@NX27qVukx6)puW{M#j#FT@<?_c0=s0WTc*py+ou| zrXuxSJcwrysaEmaWTd*ruO(7<5vg6dk{i#Hyj%0;<vo(OIPa~zHAL#m8j+f}FH&a_ zskv=lAyQwo`7s%(YlxI1Qu8(>YDOx2lJj#u@k;&+x>jH0Q`McTkFTCuJ+1n(>PxFH zNfjq$?}vNu<fL5?z8Kz(W`<lN(bK}Ja71`QI5g}Vd?!b8UDycA_rA#gSETFjS;lp9 zL;C37b!QKejbDjues1&P%>y>~+01olbMwu$w(uGK=8kH=>E=y0Z~pt{Gd5Li&f1*4 zx#{KuHisMMZM<{K<J7!u<LoVSHr~4Bw$1$PLDKruO`mL9&wp=kdVLd~Y+|&V?%lLt z^G+?@xRRp?%6i?@XyX$buitnxsRK9Owej+eKPDSU{cq#Yjb+Iiw_sgwW9CMFZbScV zdMEk+=Qk}?-MF0`{RxZYzt5U~mj78)lb?R|=_j9l{^^^azW&+2KKtiqxu4bh^sZ0u z{Pd1bFBVx}y&hlIH-`H^?yzqDM{j+!_oH9e-O)O?b#u4Yz7&2Je(QeGpK>sNg_nZ< z;dmQptCp8<)@tgvf8oyX*Kl{Z*ILWf6PpZQ=Iv}9+vqpjR7riTT4-ATZ)3K=cCvj) zjex7|T)WsV;XGPqU$86et9GS*!>+dLC{s55)|%svsQ=s?xYNzk^#1>)Eq$q*>aK9J ze{bog)5Z;{@)_=ajvfJimc$X|RDNP#YN1=|-f(ZZ_3odV7YQQ7G?E&5Boe6?Vbqak zkz`~dts<=U2y+=(8F{N#X06nWWE5tMO}F^(n!&x8AFLVT`S<eQa>5tFj^P<$x9}BP z<em!83`@hZu+TOQ+l42EZNnqO_F;i-We>DjVJEkQxVDrm$&oxM;=WcQrE;tsC&$Y$ z87>uakxY?G<Z`)IZjk%retC#H;G(c^*dy#`<Kc+N74kekUGt%QA{%9g{3yGn+8kgq zO=Hv2WSN*b()2VXrpyd9$C+{F40E=bXf6zUyBESfHpcmTNceL2k8nl!rhCyn9hvHu znpeXyHYY51&qQXp=j_4UD_!JD+sXYcJS=iu7@F5O&tqW@cg{nl5kEXrN1F3<N6n;# zWXoaFTH11d?k{E1NBT-kM#`B|DWhewjI+(<e3>mb%1v^!JS-QR{_>W*Ag{`MvP#~S zHL^~=lTGrud}A_<G1fTw)a00sCT?1r?xw)DFh`gXW{5e#oM_H5J<NI1L{_s)cu|_l zJJL$l%E9t6_nh@|kbER@`HVfp1}T*7(ndCOC)y@m<Oj)@EnJ&^k?!)d^psuFLw=QB zvR96hJ#vhxCj(6#>1_fTWa>&kPP)OSfebMXO(Pj<n#hT!xtw5{$w{V#l$!(PWPYCN z6mzhQFxloHIn_jEk~v&PnOr%~bd?KDF*}u`WU48Z%S<o1!t|D_Oh1`s`pT82kIXd3 z%5~-#nPCQTmmDj1n=vxW9545p(`Bxyl6%Z)GT)4sN6fkMs4O-Y$r3X~o-`Mm0Ww{> z$^_F%ZsX^eYRfD9#L`ariz(uM`;#0f@5=?In_O*<mg~)6dBR)}IXyBaa!us&$n?m} z$hDDakuxG^M$U?y8#ymBF)}VPHZm!4PGo%K>_{TAI2ac`8=MiG8H^9k3eFB@1rvjF zg4=@IgE_$s!7ag!!Og+!;HKc#;N0NO;I7~f?&v?6RpvYMt=VpVF#lxlwaxsCz1Rl! zVJpq+<_+@?c4%*#ci5x7$1d%Cv(aoaTg+zjx%t9;#SUPr`JP?Ck3l`&P1O$?1dW2m zLDQgF(42k2fk7TWZIvIi3EBqjf(}8)pnzRnQE)`iB<L1ovTryvC=9v;U4uh{PV6CC z2Dw3d^JdV{{2X*QJA-2LOK_z5HRxe>1wGkml$briQD$$@i~V6~AVFDRg5E(8^a;YC zZ(xId@>g?~JYde02h9X&C~rz*KH;b<ud$<fUFypl(m?(p^<*U%;N|?p*-Pw8UzQA6 z!OxieT@ICRrL%l5hs!^uoqQn$vQ;|BSJF|wmiF?c3^29jXj4nhFdbyPIYg>V8#&Fi zmD5c-8Ee|h7?Uq&nL}lw=`81%LOIuTk+aQVa*H`xZZ)UK?PjFhVJhWLGfM6<qh*e% zkjKnlWTBZPkDK!)VJ3%_;i&MGaCA5_tO!pHtK4$;QrOuobI*t4*zFz>7Kc5<XxJs} z8a(D+cGYgLy}+Jh&$EBA7ut*LWP7fiWY4!3+e_?Bd##;eud~;?t?o-ZCj7u25`Jw* z**x1m{3hIF>xP@{DYj1dxh)9S+77l^_=_DBuCX1%_2H-XP&+z&$ClV0;b-Aj+>xTT zw(V(KhF{tScDT*92Zg)1TfNIpJJTLu8`}Ee&*3&(%x?Qgdonxj#<qz)%J#C(M#4Sz z1bdP_(U!9tA8aSu3HB^I-kxp8*)#1K_INwQ4rT8*z*gD{d%7LVp0E~o$1wajd@uZ$ z?Hg_hciPj!jc%iR!`|d}gvW+M!olJ3+%?{G|8T49&F%}g#f@?E+>LIgyUyL@u5lCG zneJXU*4^%|cDJ}$+^6n#H@n;1ICr5t*WKV|xXJEeH^(h-=eRrEweBHzk-OgA<<4_| z;jVU;dyxC!csJes)lGEwxy#%c?gDqYd%#U`XS+%65qH14$IW)Py7S$9cZr+pu5_on zi`}Jenmf&HaPPa<Y@t2OcD9GxF1Bm<Q@A7i(e}6f?9t&r!ym%!;YYTQ?QP54_inrU zr~8-t&i(3kxewi1x6Unguec}OXYQMbai6%?-A?zjd)vM1*0}fFJ8qlX<34gL-3M;B z`<VOYr|!pyxL@3A_p1BWb#xi7yKCwSU47TZHE@Tzy6!Mn&vmf7?N6?jE3m)X9WLU! zxf9&6u8BLs9q$IYMy`jebjR4A-Klnu8|qrPBVC0XXn%C4*j;XjYwp^+mafG9V*lkz z-9gT|BA4Zka>uy=uFPe-hOXGPa=qM0*Wd1RBV5$=aR<7dcCQ=kdb@*NGnelI*Vcu0 ztKH^|{iprXiT%NT;mY07_8WJS>u0}qRqkZ_y&LU@+wW|(-EKd3C%V4&D>upwv){Uy z%W-j+>)N>1F3%m}y1LG;ovZCK-2u+JPVR75$2I2J;ZC0Q=GwdMJ@#HZ&)#Pru@Bn? z_96RM`=Fg~ALSWvseOj0!FTNY_7l6&zH2|QpW0147k+Htvmf$wxY@4Z*<%CG9_x4l zSz%vc@AP;38qbc)?MwFAaA0^$I3OGp9>;$9Z{aiHlJM#9sc<RR75;TD_xlOmhjG<O z5-vxhp6~@U#}jr$W1jE~H0}wzp}C&$6_h7=#TKEhJ?<&AjVC-4&4;$^<xA0ap0E&Y z@3FjX;EI+c)bb9Vke?*x3YR3LK6`*9Ax{C^d4-*g1Zz<BsXOg!d&M5ByE3%{%cscP zk(1agw5KQ3HcC9~nS{HwhZ{6^Z(-LY?4yKzhezk8cM2W1&SPKDvG+?+f*zeh>-SG_ zEIJ^?aj3qnP>zQ|a10CswNolUcZbSFpmo?MvUBrwwBF?~G{v<jZ)%d<fbwQZbpGxG zjk~t}5DZVT2tC;o>KI0NLY=2mJfV*1RF93LBR!$oR(RMe3VSin^XMoT4Ie;Nicion zDK?^~!RfFAba$-mhH)u)ZW3K{V04}88UmAvj`tXzZ1l|%Kc6i|V|2F1#L$TzL+s@o zI2Rj@`FS3r@tou_8iT)hjLz}-Z~^w}%VfBaw6?7=0K+jq5uPN}wV?3;r{~Tko>14t zr5>yP%=3gVq8bkf4?*wugfF8Hc*1|6^F84T^g&PfCi+*8({?nL;GRYocp_8Lhdpj7 z`iRH8iazQIH4Y0sHV1vo6Y3gy+~b}>pYTLxpb3wA4%Kx7_F!}|Jjqxrs^<?xu0-|x z2ipn#o5!iDuMi%Fs(%o<4%Pl34AEyj<~3CNgHYGYGEb=Usp||v^<U>5!Z@n)0z5;A zEKku0{d<Z4eJMp9^yL)IQJrf=*Vrp5nxQ&(N()e*lx$d;LdWuYiq_~GDcYhMOGRV7 zDn)-(W2uzETktmYfz>H=jPIlviN2fSO!U1JmFSujqtW+MOh!LQp=<a<56?-$vyA6_ z^rIBB(RC?qL_dc0a1(rzLf6!%DK17o^YE-CvLS_zV`B=9$)*%KcbikF?^{yne0-il z$M;1F9n+U7)UT~6zC*uCp>2PiLfiPJ2HQx3$w0sL7=vp4@5#65_7pm%A3P=p{inxt zME~V6x~_J3jK=pzkLiy7<S_;4&z|HvkDa8!9D)AgF(c4lJ!S~H3wC330=maz&O!Hj zOb@i$!!xPAs7b=pspxo;V`9DVOqqlyRxv5`9MEwl$J!Ki9$ix=;^E0wcwR`N>q6%% zIcEo>wLQ8Pcy3K1QM9f{*9XtENq8zwUZa!OY1Wjf@6r7N&$vl+z38<&dHv2s8+vr@ z@C2NMCu-4adh)tXe0VBOqWcJ=V*p)8JS8X5`#(?3Ns{qyK^k}(7oMP#Xl(V~ki0+S zqgftZgFIpT-&#5n)iHp^%4B<VKfx1t5{<2idUWrgYbCi}h@swZlJ^|qrE4X*UWhZ# z>Pd7TVe&j0TU|rRb#xS}V*`yp&u2+=AHZ{)N9VYmNB0Um$9Xg+thwa6>y36up=*J) zn_Rzx&_hya+;qM`_bEIFdN|}+Fp2Incqa5{+`4*n&%wI~;T?dF+Yu<}zJqrG9*vdG z7wEo&_Y)qCkIpaXzC_n_5{;qGBj_H*l%&uY>b!vNS$MbM(Rh}6bkCyq?<5*S9Y5%v zg?Aqwjay%j?rV5A;?dY1o#G(0zeo2ty!-G(QJrhhJp%7gJURy&8_+!t?^rw<XPrCH z{e|u!lIZ;D-08V~A$oiYog1Ay&^>~l|4DS*I(HybQJoh>$E|Y#av3@-h0e`zk6eN3 zyeK*!I%bfoP@NY==Rn5^G7TM>Lg%T%BUhr8DReG%oFFsN(J6G?RUWwx9g{-m<}{DY zKu=Gh^EcKb^U!fAH17<L+>M@@Lfaefky+@36gq!rdE{R7>=fG1M32lx&q<*^p6ii& zP>qeEK5AS+_gTE-@MxdsdvxDqE=ZwmO!nv=O80-sJ>X*Wq8eOG8gviD+qB=fgf!?r z$!NS4wbfWEy6$fD@b*oNjv06lC+22PxDvf9MN@R1NB6(xz7(C%Cp`M;v`M5O-sVk@ z{zjsC%cFZ7vpPkHzMCQsU6W!c`aud^Yim>Jx?Gn+*XH^Zx;DS?=yRC)(v!RweoY#5 zuWi0bQH1XB=rf%8(WCcOv)jX4M=^Umy2mklJ;^<KHED&qK?{#ujZ#O^b3JJ3(cj$+ zvOIdO28VfcpBr@cXv~AdJ$fGt7>}ZRf#4ZWg!L9Y>xr;dgJqrw>n(T{USm&t75cg- z!g>psHzjfn`jIDcIl9ghA@0G)o(Sh!z<er^Ytc_Uk!h&<0TJRA{OpNX_Pe+k8uB@x z!oU;ZT+#is?#(0Tq7hGIB3jE68HZ+gB4g3op2#G$jwizT6xQ`bI7h;Io(Sh(*uWDZ zrePyb<b0HQRwB%&?#q?PWR$fP=99h<?FvPtIX6P>k2WG)YeLSCB+sFYS&6WgL*`V8 zEJlg35~%;oX%b=*GLPX5@^v1VM<w7K32%TKN$Z@<@&u|k0q0M^H9LF&9wx0mJOZ5S zfzH)Jc%1ZYC~HLtv_16+f?Lo<@H%Oohc`R{{pquu65Ncg@&vO{&POHC{@?Nhx1w)* z0*%-E@Bub=q91yKJ9wrd&WfJ9`gxsVenN@0V(3Rdl~c@jsPmX_QPzNda%Z-q#9BYg z({s_*^%&Nct>@A6-q!b+4QK<8p3^oH8dG;A+60=CW*oK|v?TowO8oVmfx&m13&h@R zL|c2z7PO7WY(`lZwk<ZFqwSzQ>95cNkJ*ZL@R;w>j&KMzJJ3$hnYmKm3!w{X)}!qT z-ALn~?GB}+)vq$>O&Xu{U6>MR|9w4y`qdAPCLf<{e;7bo`yc2D)UQDvy?)qZ;8<)} z)0Xw51UffEJOO^#<2`}S-%yWUhwKTS;865LD5tKDV;Br4%{cAJ9=$%<5gxs^S+4I& zpmRLZ6EJsnmPfDs_9joz5WU%BenxNc1Uff&ddyDrE>BR5-tRHLpbvP0Bhkk_=2!Fy zPtXHRc+4(zktgVh{>`J;b^Ej@C_$g~=r!Ix=LwEN*Lw7NZ$I(`y-==;ieC3E*G45E zuJ%(8r-RtfJb}hp*BJzQ-sswbfY{qFJOLG~u4xE#E$BLfAVhWjL7?kmhbOS;j~+hL zkvd;{^tzTk)uZoevM=}Oo+bMVkG|u{zS5)no$P5IeaDl1l}GnG+4p$l8g!mVh+X!5 z9({L^eZPlKktAE&1$i5t@8Odr$<}s3-&tg<PoVF8vmf&4dyDJ^9zKDR?1w%24kP;! z51&d&_M;y82fEOsZ<Mni^XR*fY}SJ!%uhD!L6PMs>p_tS%6d@r9ZdFOkJLh+^vKKT z5)YqzN%m77eJ_*E`ccH8tRF?+>trwW@Clh@KjYEo{%qEj!l!1E&AL+b`9FJ^hfmTZ z`+1K(_h-N0(f8BYFM9NyMD}uzzMsz4{y^VJWa}6}-&JR;-=Oa&vej3Rj_4~MeOHnF zsz={>XKOq_-*aT^+=0Fu&enK<K7VIx3_#x{XY0I!KCfr5^60zK>^D97{FnWfN5-RX zd-VA)d$mWZ(04rg%$fbJN8iO}zvt2C&g?ZFIURl9qtBq(A9!Re`k_akN3%Ik6&Zta zo+|n*o4wAX?`N|=_ULnGHs`J)6H(4xh0i1<oAXzZb5PD-MW0QxH+bY+bfZU~Q?oaD z^u2HPW)GidO7<3y+=71Y(dVLUjU~vfsLng+b5ZtIkKB%a<<V!O?5{m?2l|aipN+D& zdE`!1*BR(DQucQqxeL{G2KvmDz1<^o&>uXe0@XDK`u;WhUmkrH$>utv=sVi%A3gf4 zlKqoM-_d6O?9u0y?42Ir9LxU2qt7c*;|W>s(Yl_H^&ZXigv?2_F*IRsF$`_y2{|vK zE#N@%8E>?uCuFXoS)Pz_MO(o^*f3YoY)^P9dax&Cy+xxQw;av!IL?`9%o7s#Xs##h zj<)uMtmkMak39k<u2F2Aj-}8OjzhJq8$PgBqs4F}=_0g;C)B*2o=~;S6RKamp%3<~ zrRYSD?wzB|b@W2=Bj`mQ-8)35ctX}tbShlSePIjwC=jdgRg~B$y4Q;?@#wxVs`C!I zH;lgM37Ll+`cs1Y(E~ieLnv`k+~3iro`7|dLyQ#nGD>`Mh)wVWN*t765gPNjXHn)> z(Px*OjvluHE%E5SA!mliRioE=++K8+$6kQm<guKaIX8RkdFU-3%eu{(4YzXnXYO)t z^H|nl4(F9(&qe2WEOVT5hsU0e-tDm$qxX31CFnely%g0sdVqE=Lmvd@$zF~=43Ch$ z3e`CRORREU@YrimVxZXR=xUFhiM|8xk$)|^#$&HXKla!g&`&*%>qO3H9`_~6wMDVh zP(7yH-iUJDP~0XFLXpIdL5)ZE^s&IB``1|L38@pa9y<zk9^E&`Sc{78iDR`q;Wuc8 zC)B=bdvq@!tK$hbqk0VX6ttd4_x-W@o{%xb8hCWC9n18DYte=t-FL?td328-V{Izo zFDUC%2|qzwcywPJJJ1s{uQArCqI>pOwnv`{VsTHn9@S$AneUj68SJ5G8)#3uHCpJg zqtPy&kQm0gdMxWY#`R0FJ<uXgNZevac*3txt_zCp*<)%4;kRh1CuEJpdVBQQE7sSe z&s4E~9velE_UN-zY=FmBp*nsDSrf6L9(|sRo#fGHh}cMv?TJ=+^w}v^=?Pg=F<l3s z&t5SdGwAa`O#1+vjgIlygU~ZP;V$${Pxvc3-V?ryPVne+UhFK7KF`I@_Sgf^i5{!* zKgXlbf-%lvCHxsZ&l7G#FY;KOSI%KYpHX5{JoZTR3XeX=#IE${^Ga+QT!p=^sjJ}{ z(nq1w;abuTy}=XiL2vZvGgEAq$LhS^<k9D+*v%e&j*8s^vuWp8^j446@!bZuldtnJ z$76M#xGpJH=i@Gq9f!{KSe@6qJyz%Y9*;iT#qRa!Ghb|;N1yXz_j&Z0Fm}I3pC@Av zc&x^JzQ^iXc+g`{N0)f?xjnYj6YfTz^VqTIGLOC&h&}JIwa}N~WyTVqD?H)H=&K%m zzKpH(gzurRd%}OAZ+P^XIQEt&T!*gqgd5OJ9{uUx*ms_A3;Mk$+=*`Y*wfG-JmE%u zoCKc~r|Hn+=re9T`pg<9_KMqqGJYi_j&aU6C1jrCbv)r<w5}&47V#Dy_Z8a8;}}Q$ zAdh<!<@|{sO#A;pb3OWe9MAK(FVNN=$GGD89``xg-s3i-Tz?cd20h&4h=07u<8DN` z{wQuH+RfvxL%VyNj<?w3u0fCVIM!#J>yzTnM7drlj<psq@wl<*Q69&dj`#AotI<-A zy9F)txLIg#kGlfx<8iF(IPq4T&O<+s<6Ma!?Q!GK{vLNBI>6)3MF)Bu=WBeB$IU>G z@wmyT#t+=XsKyN39F%iIaSKq5E4Xt|jU~7{P|hXAU5j%5EAAomM33V-6z5u?xa-k! zkK;U!5A(S5(BU5U7xZM0n~IL`xU<kxJnljCRFAt89qDmgE8-O%Hyy3?xWA&KJZ>U7 z+T-p+t32*9RM!f)GtkpK?gI35kGmYzxPp5C)p-Xu1=Tv>&PH`jfSZJ>Pv9Owb=`ow zAJy@Iy9d=e_~mA!I=|q~M>T%n=A$}C;4VS6U2t<zoiA`#qFM)>`m26}yBO6NgS!;f z^#N`gs<8p5W7YV9+knpSxcAZPJnl90R*$<1)%bzF+l#9otW$d!s^bBBII8EvJkniI zoofhxLUsJiU$_I+v4QQ6YFvqx?T6|bg7BZ{0#En@`miV5j_RC3_!0W3N8cO97kX@O z^f8YuL*MeauhCtwoAG{+?t#6e=_^+}?mN^#K>n|22$uARsPnjWXvE_dqqRKl6*R-+ zo<wVV+-GPVkNXC#>xpPT^*rtq^Z<{09j)(iJJALn_cNO5ac`pyJ?>q!k;kn;8++V) zXcLcn2W{$c+t6kn#~kD~_c-P=w}r>8L=W`1573q#$K2&+K`Z9uWAq@8`xMRgxF6Aj zJxr72Mm_EqG{@ssqj8UW6(s<Q`*z=tF^cO*nmJM&^O{FY6xSUkE{bDJdBjI?tjRoL zq&Vg;kIogxI?N+RieoPGv@LLlqQppX#3YXxDef>-kHHb2ycDhjX=0>U<{?k}0L$9W z({{mWKg39J1t>96ENdx`7%BSxGLIN3PJJXsitC2zc)*>25+lVOixMNnsVy;5+z}`- zQrz(<F;d(hlo%;a`y^J1>wyw4#Z{ujOL51b#7nWPu{`3XxKmN$rC8QUUd-c$qQp*d z>PxQ29f{_7Tm{<N;|8K_Jo>&iFW=)%LEC!lF0`G;4ME#`oQ_-P5uD~}48ZAFJ9=CR zdWgre#_~FO?7vWrF}PCnFpp#Wd7V8@*Gr+t6`@@`PUo+y#~p<p?s3PVY6orrsxbgp zhHCu4>AZILIAWhy>~X3(N8mIjJv^=#+SB7kqB<UM{ZZ{3>`qkez>Pq4Jm8|J_6@EN z+S}t;6M1?JPTTJ5v3t>e9yb_0+T*mI_6Lr2kf&n<r)yB-2TtRrYYSX}>be1^G1N5* zE=09muv<}`FR<HCjVm~V>UstHPgK_v=zIS>UH3p(B=1Cz{Q*76qn{Pzm3y4(Fptx5 z4ENY?(33q*>*;)f({byX1N$|q>l<7Zs`Cy`>s5H{_h_ZZjYda#oc5!~V827PKG<q> zjK^+APxIK%(bGLn$28XCG$!Lb`q@U_86Kzooau2ozVROWEjq#DV(3{OmxG=S6Y)Qe zp5t+C&~rVmHF}=M<)M>2?hy1Z9;fU5e2>%f;{uOshfemm+USKImx*5FaR;Cmdz?k5 zcw8s+5|7h!=u(fXgI?xwjnSzddp~+POlLmtM6dPON6;A_`!IT)$1Xr;dhA2!^&b0I z^ahW85WUf3=cBVc_EGdExP`u+MrV8M1L&=AFZm16d2k=;m8kkbJ^Kc_*kj*8pY+)G z(Ip=JJS^`ikKKs=&12t1wLh>Qpi4dWQ}h{+-Gn~tu^*w&dF;pNGLL-^ecod~L|^dO z&(Ie=b~C!%W7nX6_t>@QOCGxcec5BTpesCf9r}t#Kj+JP6_^97<*$3Jwx@Fe_BHe$ z9;^PY@>uQvEsxbc-}YD?pZdg{Sslk09;?253Ez;fZG7*sI_{r5mhrXbTu>qv=-Hk~ zC3=m=5vSJk;6Ba^;@F0Drntw^rXKeM+T7z3XjhM0gmQi<;Xsu3mGBsJq9+`Ha;_=i zAe8l^*jv!Ka1UwCV-A(@IFvb5!l5X0s)XO8j9m#?BW)PF60#QBZ1sdo(62lp>!!`u zo{;s`hIvv#)=`@u;b;22U8HR@k1a*}d&2Kf=BMp+>`&PDD<Bf?CG8+Wel@=iQtoj- zh-_dEH{8!W6ZZ|w(S|2Uzs8Tpj`G-UD0P&O^-z7XCp;QG#S_wh^&XG=i61@7Od`R( zV%{%;BX~DH5A6;;NI!s<KpE);XrCk!JdXB<!Q?MShrpSnSxX5ih$iHO^4`Ou(E&@P z{&52mk>iJ#CknF?`NJwsi_SQqJQ3toK9eCCGJ14;R8~$-LWU)zG+staQd-fgL&6j! zq7|ogNCXA(oOn)$L|725dNOR%RC<*r8ka^ZDtavnnw0ihloysJg3_UrqltQP5~Y<@ z2|IZ5Vt&bxW)eALTIFc&;`&WZuU1i#@m`A?o5qyI6Ee7b%&^7Hj9PX`*n&jZKGC$a zT>DEjD=keKWJRl@iRFV6w)ODE`R0Jq-lKabBE8FV5@Fu3At#q(oHe67nixEotde0_ z(L|A^iiQn~F7noRluuUbD4OV`<(<@W`QY*>voWJGny53lyn>vlmetWzS50-T$f_7N zY*-evm8e%bIw3>K6EZ-Jb2!c#kjU0l_JGQznKD`}mO2?VY*<z0u!LzpY*=ap!=hD; zC*EsVhlDGL_KqfOUL|9yRXVslQ7hgnkrD4j1gKKcArVPVH!~5fT2yOPuc#L4aI?Jo z`u~Kh=sh~&+T~DK8l4fHL0^kHxjbg*xblj@S(QVEmB)wW42vd8jxVPyOXnr!N{2+P zf<*1o_KPL(Vb0(%-Yd>>iTA2Z1fxz%n9(?rsMW4RqIN-4y{*r%tc=10e@iNcsYyjy z(%U)(i)+`H(%!w=<?LHHbqjvKkm~tXOnY1?W#|>r-ZSEr8r0-uOO^&C5zWHMw3mc7 zURmb5IN(pJCvvGp<$Xh|S*gCR|9Gz_58%%t^d>}E@tk4pSi}tq76n1?L{(*3heT!p zLx@Hb4NCj#$Vd>OM5Z1M;V3g1uZA>~nVgg;b1)jm6Aeo%qBAO@iH1yDheV@-0Yl3d z*{ZT(xrqbD#3y%1G%gr$T={_GeP&h;`HhqLO$ruCqtX+~7d2{BnlP2U5)IqyDaX?4 zwWxvqFO&ZzOfzB;<_#`iq~{^i)oTV3rrXSRIdQ6`)2s(A*D9RJS~`r8^u_<a<o-Tb ze-gq)B8}rra%n<(EH=g@&%&k!vPgp7L(3D5;=Q816ZKhs2gF%&y`mLQw`gIcp){6W zy?W^kG@;B?E^3m|K5<?9tQgC?8DnhPzC)sU!6KvDg85cGuwYTB+OlAgRn00`<WyS~ zEQ+WeRIsR)YIeb*4Ap}R7S&d5U%+hm`A<YDnCW=5W5S%GXG@1fL5;#@`wGwTg&k@X zw%%8Gt}l!hNTNaeKOHB7ddd$~$60fHIgBrgUopm~8fSc}xr|RWkMXItW_+q`7@ulB z<5O+R_*C05KGlu|(c<KZbVxz8BGIBE%0<sq=$fcR6CHKUb}C35(mrtr=i{NA3Vm6z z`#mA!l|^yAu>VI3mScy+Vd)SrsvqgCD=u+pyG714?Oo1AQKQ(o#`OG|O<_T_OVaZ$ zwC3CC{qL6vu0H$qR`aD9cXIxf^@tZODl|=XtX-K82C&~c6`U-UMI91{7j$f1+#yl) ze=}uakH-86LL|-dq8+1s^^(BU9zA15-*{gxLFL@|xax98Dl(>N6K1#@*RE!X=9pP7 zr+G=UMfIdtqHbyXF*7>GqtW6SwAualX3>tmy+kD5D{UQ3ROmIO<hb%DZPZ1xp0ur9 z%VE9rN?V7EHvQv4yiY|ULbQK>x^iZj_WrJ9ODn24`M9Zav9qO>S)?n5aeeq>ol0Ee z`XBF8S(Fv0hdzuGN%lf}`{@Kn^pYImB0?}63ywR;A3UMOO1)dD6CwXkT}glIi^Wo$ zo{K0RxYnt;h!-<WNA4?1)Zt<hjrNK6)lM~vJ<?^#!T6a@$k6hR(PD1s>V4odX>?yG z5|KQPj;3he-o*#;-&bBmJQXdj{2dZK)4e5UKNYSD-QfIj$mtN5aQ*10v)CumytI69 z7WdR>@vx4II+-S%w@3Z1bV%0V-<9_IU1_>*&G!CSqqHE=t$j^{bft8MWd(`u?Psw3 zbdAm6O#d_A2x!MdCtU2E9I`Is)_&$I*`W3EL)YaT=S=I!ndb-8r(jVX?lrpllPmwf zx1{^-Z-M=PS;acvdL1i{7iHztST8xlQhxU30^F^AdRF>z)V+O<#!TlWHJW`>a5PiU z)Sve3PB_CGcT9BUEbsp(`2%RqG-;eT9Gig!i6f9fI*YxT?r0xw!s*#Mra%{TVi41O zYyr={eMk%@VKi}E!D5rl8A2kNbG+L0rD&+yXyOF5(Zq>rqluFWc$Sb-Qstz$x04!H z@TBp1!%6wPlhw{>=?Jw;rcP12Wa?D4OQuF@pS>}w&^|R$seNi<l=i8K(Q4C=M3vfT zVvO2o;xx6<#OX=D%1Dh(`lYFHNxw98M$#`$otgAYQ{$6<X=*~!FHN15^h;A`GsngI z0yr^wlqjL#9G^Uj<heTOYL@85(Rti!Nvh2xpH!Q_ByF@nZO*6ik^5S`AbFImG1(`z z#)Uqq<`>b<k-o``eNqjk_@o+Kf^Cm|?OmEYO15{IPpbJ;pH%b9soBG~cZE-?!IeI# z2Gg+Zxv#yel1It*uJ%bazs4ukd^$CI`u48%Ni~?^lWK5X!Q#5fooynLwb%w>ZyuVs zmksOHK9Mmd5#|n_oW7xV5FP+m4q-cKZs1<$ANeLOl3KlZzCP;E94GDcprqb0e8EQ7 zjMf<~YPmY8tRX@Fphu)*<Y1S~s@Lm<#>*QnKVW(7<&hHJOV-7#VXqgYWZ!?9_l$(x z(--BM>BsT3Fuh!ltI8JT>+#YI@flJ!ENf94&3ZOtsu)``ee}?zB?bDgq~745Ur-du zkF<2Ie!Hcn`l^Jzo*Q}DlddWvWjqW2xBgusm+*T@6M}U-AGhY&dtk7IZ#?Z({d4s| zN`5O_SEF=GaL9iu4;!WGpCl*AAihJXd-cVpr22f0lE+~Wb7@#=E=>7Zg|2~ZoV^xW zK{4?5!;FV%Fc;VpnN@&YfL(xHPzVEoHi9WI8y510p&wMhWZ21@j!dAwzRlK8-`!N+ zPRs$`R76&a)G7ki4I&v6fqpW!z;2P+O`rhEfPQMzPi^|CO+U3)z<SuhPnFk$Tqp+G zs!RKIX}_L@1+W~}!ghYBI|HIXzX!||{&pWwxBg_91=!cezCQN#v2TEV1MC}M-(WDT zhOHu*1EC650Dd%V0iB>9RKPUYBGPCC&|V|jYeajEX|FN;Hl8oiBp*tk945kaSOC~J z!M+LhO|fqpg(4UXyG5EcfdVK4+HW=qXtNn@Hm?wAfp0CUV2Vgf+RJJIl(#B`C9n#% z0Bs$_@j)CP#PPwc0GorUe=x_<rGQP&2$;lAqzKSfY%<IO+K%CCY%Soc{?thvU*q$D zy7ASpl}`?-mrK3ePS6iFz)s#2X2MvYkJe3~0Lp;=TGM8mA{Y$Vw3!NXAOS0ZHrmie zKIQq8=Tn|fd0RSbTMR>CJWK;@+hW^p0dLK)VVf`QX`?;)bSVWbpcC|i3YZMD0J{S0 z3e=AJ9Wo&wN}wDj^26&3VFj!g=~M)RMGkEROJEgj5jku(KU~lFc!ZJ8v{Oia7wU9f zCUSTcOo7=zTZfZ>_<EpD5p{~FQ&a{cU=qxP`LGPuh#av1mWy<woo=+-9e=yyZ+H4B z#@}N6Eymws{4J)ecrDQOk+gke1x$unKs!g$&XJTKxt%Y7p>7ZA_MmPL>h{Eko+AJs zdeTqNEg~iTfHq1d0&SOU;OdR-Q5+vN9Ttl8Y6bXNid`vvmCl7FKpSP#faBiS^e%*f zz&LtOf!TmvZ|r*0SMS~IXqrF)l)(sgFGVmI#==yX0|~&Fz8ly@aC|g<96c9ktN#vu zd0@H7z*&5e4D|<bd`vyag<_FoY3o?pI+nHuQ+6C>$5D3NYLOwWU?yKE(*)@E_-!IX zEmXl2m<<bI1*{i2Ap;7b0;qSwd{_o+_{HyuFdgQ>QlR}4xB4%kIjIG@0PypqwIb!6 zU?psTog%|BAs=XOxCQ(gPCvs3LKWc4aC{k#FT+=eoJ{%2l%Gub$&{Zw326Id+CF)^ z$cPLmfI0kP_+Y-ohPF?|cH{`awvzrU`#}XvhFP!xXrq!gMv*s)ywUhFn!ZNU*J$cj zMFG1pV`00<X&FG?X+<y?60j0z<8+Qs-z_q>3E<1vGFSquU<*(-j<Ru-jiYQFzKxs2 zm)_9l8Oub@TrDzwE?;tkPiM^(IUAdaL-_>>`Z|ZU&%uXtrotSc-*cz&3+TlnlUngh zw)k}ZJdq1%`+@}`lj-L|h4wC7$QRk<1MOTi8D_z5k&CAQ{aiesFSMcF6!I>q0BkOq z4zzb^E))X3Tsjoy0PSD86jt&J>XctrEHbqUCIMr(oW3rn?aMcaTu~0#T}k~bSMiJJ zbNMB8%C9Pdts+-X2im-v@m#%J<eCzZ>8)VC$hFkDb{>CwmT}CO4A{=tEppvhSivu; zPXzL2Vl#6o(D(J@VVcMd7N~av<GO+NZ_I>z*Z|u_X3gdcPYPiY%!HjHH<P}Zx;NwF zEiFW5V|!}}l*1BOC34$PKySy#+iClDe7Joo%z`zr1@LhW_H$N<+=1O4lVGLDo!H+w zU*s-)xr=`0X24pJyDNZp?!opR?Czo8d+_I8?CzZ>GH)_)d>?i17Z?xtaQ}L~L<oN# zSk5oDQ+Gc7%_ndE4!%UF9^?Y;JxF^GQva{C^Vc=7jV}@^hp{k~FB2++GN7#mRX{rn zuv@SNcJKv5vtd3g5qSikA87&kFc%iWGQgilJ3$Eyh6-RzkJ8sd$`{h!Leh^}Xa$8Z z5UOAb(8uGsK>p*)MV^=`lAw(Q=|!~jWDzWZ75u_I`Ae3<N|C3i^VBL>&leBPgM`S_ z)Ln{yOBeDbLuD`@sQWDSo~5m4xAP@KbAi0)sQcU&*v%IXHGu-4&ax4F;m}~dTnK$} zk_c|d@=U;f`Feg4jk1@pOR}0T7Fx!a361BAgzCW*pv_ll|FvSkua%u(1z#M*+`Ud? zZ<N4pk$=qPi-KtXP1<@3+qY)(OMOjXy2$DZSTFJp`VRVDF5BFGutVenY(Ch^m;Fo@ zS-X%g_aT2Bd^{A$Uypt=U*uEDKcnvr1NpKZ{M%H-m#P#3K5rQe`1Cn;U*Ojl3-|>! z+Wm43zwnk1wEGopentM*)cYDAzM<W1q_<)7?G%ykGJ*8>b40dJ=F4>ofWCg9uODW@ zLRbac__CdPPyhpAJj{fJunM;EOZWAl00zQ%m<bDEC2UE3DNieu{&(QVj){QH4*c7} zIDW*}ALsHVJyF2^=Q3cNJF8#=U-q(;FXR~r<AHj=E`(LEjW6e^2l+sqUCj5cts=W= zch6Xu4w_!Ur;qbNmG<`T=4prg>J7Xrs0XXXgp*)4%!d_X>_FHi#udUeF%cd=BD2KQ z;?u}lTf}4x6;pe<m^xKJc^%rQI}y-&`7jx<ub%<*Q-3>Ou+s^!Z!lL(W)q;l%q6f! zOhb+v4(1DXEG&ebVj7phP@oR`b<=n&Z(?$x0yu8MaZ~Cy#kN_onCAG{9KV~-hE=d$ zObgm&KW<u#0Qx<!9?-^t3Ba$Gg)kIoFN=Kk=_YH3m{zpcYAP&;wPFs+gbG+G=3wj& z#_nMHjgrS6-Q<+RdNJ(H4SREwYsKVk5z`uNy#}_4X~X#1OcIk%-Te8m0vJPEfn1=^ zwzSuFHZ0@|bSN)a0IOiTm<}0G0A)}G8^m;^t&a0y8PHG19b!7o0qS<bpF?T;uvTI^ zFBMZrdDmRNBqzZaQ55neI8*t;8~W@yNlXcT9JN+VsfBzP0kly@e`T~+MjiHuruR^o z4?D!L2Q+<V^YV)0e%r(xP5III+aEvsGuHk~_|lLjK>mQTKW8BR4P4Ea*WlwZv-q+a z+8c~-$Km^Nv^#|K@%VZCG9Ha-cj!*Oh=#ULoGs=g^4X`E@+gol-yvogb%vwtxy;Gb zJ(;#gSSSSi7%@-GDfM8Lm{TXGzF=mGm<q;SQ4R?)mASA|%&00@A!c-e81__V4E4s0 zfUROqqd)dh=5&F6KpUqo7c<r-KfO2OC_5t)Cc+xNIEJ>yQ#PJ<Cy+mZb|!4#%VNr4 zK3@*gi7$mI5_2xc=VEgn=}G8csCzzk7t9kgxfN^|a}j>9A2Jt@7c*rj?B>f`7VxDl zlwXRkmsa^NZMlr`Tt@w=^fz@dEE97%<(DU5y_hRXV5gWXv76RU%vDjC46DUlT?n&* z@@q1n0#=EcUIbf#{A;Oy?Ic(N_%Nd$41}3tu3IaHJ&n1Zer}+x8yMq_=q%d0DIaL( zrj>ko%uq46kblc`pv~E|Ih%U3X9IrRnh7Js+|~qU!93U|=JrmoM9iFAAny*^yMuan zY!`DUY4$AU&aGnZngZC*rR;7C^mF$PG4~V$dG}5dGq07H`|0EU)nXo)3M<6SFB9|N zcrkyC0`?Cr5VHWAhskF@VIEl}=26NXoe7jLEQf_+9%}(pV7-{f#{zawP&YAK%%Wl- ze=&VNNgGd&_pf)@8<-_)#XLp+-^l-43G5W}^kAUvr5rD%-ZS&WJUargeU7r{CIjPL zMmx_(f&QLPh<Tw1mWz3j@x8bVuvwl9<uDT{TTZ)w&j;H3`)pVN<h_L5OW3`H-AmZL zMBdBTy^P(<vjDr7cZyj-A1km~u}Td42lGk^%z?FHR?@~Q?B33V3ZRYE)5W|){yX!; zygO9PdmOK!?EUeul`rtY_Je*vA0M^=(jU%+)qJ5(6eht+F&|O(5p_NypO<%L9cAmv zU@R<wEn+^VpO4F7GRy($eT)z5$zPA{dg`yA32VfBLK~kH1NA@ICgxM>eY!%-XRUz# zH(0=a!%{IDvDrvFo2CGDH|GQC&9uLz9#p{sF`v`s=M}IJwu||qAIyX;V!kYcgqW=v zfX!CYU(v@`MKBF$>ucKj8oRG)`)iKBA^i>gZ6kl%MA#zc+ZIp-3t*d=?>Yg;-z^vO zeJ0TM_tf1Ug~_m9%nyYy9kz=3=U|}jzXZx*iI^SO?x5a|d9a-?I-=hnsr%y!F+XL% zK$r&0#Qe<h&!l%Y0rGby#Qc&AwDrqeppRb*U?R*Hv&+IzAicXDQ~~Ymq0c?^v1gT- zz1Z)a4cqwQj1nMSy+Z;ifjO{V0#gW+VXXu~E=+;t5`-;a1gwz2wt`8pO#<G125zYY zktR?DOC+d8x)$kLq%(?Ot^~COs9%S&I$I^E+Yc%vs7L(+$|R_t3D`Fn3o9kaoF+j- z{A##Ef<}`iXgm|POVA_(rb^J1I!zZy(98mUG)J4$cJo;hw4jXxIX-Z{1TAT|<uVDf zrombXTG1x^jo_da5@b)5;NU1=7o8$OPChV}SU=bxL0n+D1i3>c$jg<W^*{;Q)Pt!K z<adHq60{u*_}vbhcC^`^F}A0_0_+OV4hdKT+a%~n`jB!7Iz@s0*h2(|VsqF+zI>_- zrUPwt#<r0D3P(uL1>3F_5*$u>5p{~F)2&2;?sFw5ULe7dlVG<5JzBv)m<HJNEQGBR zl#Gzzs3{WkDw3d7V7vrnQ3-lyNYF>2-9A%cg#>*m@5^!D-4gJADL8tl1pTc91E@Q& z32c{O5O(Y%f@5i8F!sllNHC<81jn}k#y6BcPnayhiS&Eo5(!SKf-Mr1qr;Sy5)AJL zt0Z905R5=i!S7Qo(C0|f6}f;9l^j=Ykzf>gqiAdNdI_qq9|NcDlwfQ<3C3kga7K{? zXHJ%2{B#K>P<O&Y3C_ZovuXcq{5hMpCQ|>Lxe}Z^O@i~Vn>1g7^9z8o$yS03w@EOC zvP-s0aOntGBf(|!B$!Is)K-A~<)klPF2NO55?o38%9#>Oqih;>SIw2+>P|p^*Wk<a zp%Pp>UV<6)dtE)4D#1+3XKs+-`dJd(Pyh=gxRJ6Ose2>s-nd1ASp$JKZX%y|5W&s4 zPzDJJZlSMRroj#gW>*2@m`(e)VS5{Pw_$hNN(pWsD*^ZIU=Ha!GbOldyaaPsNN{(# z1ozO!J@|63g#{AKn<&A3%-?<3-k%R8fG-bV`vBvZzg>dA7E18YG6^20orl*-@W><y z9;MxdOC@-0w**hne}c9abprfZTm@SscybzG|KwH)mK4BDm<N<Sh0Rmce~S9tkAuI> zh1C)~-3rFSDhZYjmEalLer6z0_AF)3Rsd~2R{-?&+zttrVZRLf=dpbr+vjHj{X9?k z^DALJY?t5#3oW1k=<@~Ie}TF$Oo3TIofj#85#L_aH1(Euf=Pg{e{TY_C3vX}sPocJ z30^J+@?OTj6@@Sr$bW@;ugnF~uMP!#dX+X`T>|*@Ds8{IoiB>Rr`K8lKD|}~*uI8O zuPp#<R!)XB61<MS(Mp1UG?8G{bl4`rn<FH6i@dk{!Ac2Mqwho|c$d6)>F>RK*eb!A z*%G`@AMa!H0X}@NR)P<)`>+BQNU$~+iuV!9aN#DwXLq4Qq_!Md(y=xlc?M>n2sZ!; zPM6S_@Fd|cwv4o-%&{UFwIUAtu%U}IZ{N9LPQyIIpCM~F+|1v5gDKd%rU`%eb={uU z6N2u0X7Ei@f#}7x3w_j*OerX7dw}5vHc*%iV}r4DR5ZxZC4ZLX7?Ii;nAK|7uwkV3 zf$cjt?%X)uCSI#?=Qgcdw~0h*#h2dq%+&ms@_WuMsGAvvnRT_JMT<=H6^9<%sL`>V zXpFxZmh3P58=p5CGHOL`3P$ZWpTC({BY(HFi7eBcAfolOo$7;wF8r)?n@G}fUwis@ z0)Ojg_rCn+|0G}k&gK5>U;JJEZ~o5yll)t1<X;p1*6;Fk{yu+`mizpw>F*IW>is=k zk1_YCk^fSS{4O=}U;bVGGyB@VA)T-N2l_d$pZ9yx`5ONk@t745=zVeeaG(7hzq6ma zFMp2a>pH5=4~}9THI;1XR&sb2Z&S>`M*L9502Z$`5jz&6FbGE{*HkT+UQ^ARQKf0q zoV<n&Giqn~RaGm}v`MqhotwsEt-BN+{>L@ewr=OF=0}a}UN+>9i>*#UPNM@)?AD=2 z=Nijy-&nrh=d=Fp$lu2J?7sZlQ)A(MQ&7TK8t@~ZJxe$vCCmuI(<MV9HY0L+ZAK*{ zlj9I;-N-t%0>|ISVBQ)xYM4o_2Am@LuWs#w7*I~rcvHp#IbHO0X&A3}y?JQiEw?P( zyY-6bA?Fna>&|@XtoO!0^%Q@C=v4J9*?%%7E$Ah6j&N4<8wUK{n|1ssYD><eBTBkv z80K*x{y7^sE(hUnZkdr0+)SRf@tlLQTDEA?h<cehwQB2iq4QzQnl_2lYMLD&k$Bko zu&!MSTgT%R_{5+M<1Xoac-xZPZfEp6r|QsdM;uml#^F7C9)3o!?z9t&PplodLkD&2 zd1`0#SeK3+y6pL>d*{wQ@zuyce!ieputg4*?j=QBrnq{zsrVN<d#PTjDtQ;zV-WKu zl@V5APyQg2w8}d0|1kI7@o^p3z4)Dbx1%nA#R6C?7K;TIy=_Iu0xTei!d}3JMiKx? zfCP&~kpe|oq!de(WEESM?6|~AqR4Tg*pw{WvK-5f6SpLCi$hy^v8_+abL=F~mSii! z^7lP6_uef4B<ub0`#eejxwCWc%$zxM`Z?pw%gxTRStJkhn5~8N#tOebY!5{um}sHH zhpAPV9CjcDrWeGFS!iIky?u6I<7~&JXfW8;77Ru&b<Enrll`oxe=>}}gVAU({u2Gh zXG{%n<#Xe3b*XTjS+)I9`JlR%8orhm>EW2o%FM=E#?12Y&@+y$dt*UKF_;XB>9S<P z-8IOtW}uDiG^iv)dcibSC{IFW$6Ad>^Q2@p_nJptvCyhdNtfUDv9XvP^J$Tq^Yf}I z@@opbHfveEGpz1a^zA|AGxJUMeQUVL-5D;~x<4Ik?KA7Gr9E|<I)4~*W;sgwau;^4 z3PYFT@VkBCRp9st!Aoy{9_LBG_dyOvSsDV~I)S$tIO^3g-1@2GsVsBWCGgadpPh+5 zHm^~`(L(Gw(6gFWYA5_0`p3=lU0w5=4;+ZZVvz&#jrOA(;{Ul}ru|fJgxSM{f;bH} zb-WzOEk$D?90W514U%TC74kSXrHv3!8MiP6HzncRx=URpgn~G`*<QQdO6<+<3-fcb zVh(hehx+<bXR>b}8{ES>(x&r`Jsd84{T%PSn4j6idC323^TgQ&Rm9C)v`@`3$U#6= zqI#*s4p$8cT8Ca4oXVMrY}>sK?Z3V3x%gkPqWHhDPWi^di^qPjK)Au*&0$c*VepVV z$6=G+{(fxGYW*Kwqy3Sj_6ImW6z~5_tsQ(XTOYUD^bu;u9wa{(OM33h+H-)#hNSkF zlG?MA+P{+0PJCC4|3FGRoe9zYpw>?F;`~^&^LecTr}xRblHfu7SoD8fdk^iILi|{? ze~{W~FTs!Vu$LvojrF}WVdduOv@Nw-H2#I&CB%v857C(9ZS|#c<)mG1RT=Vz?dpCf z_%Nn|xr8a^3_PJx8jTH^nbANz3%3r+hRc!}cTAZ<L=BSBY~VahV-Y5kG-=UTL|tul zmDf{NT2xq&pPMZ;vPP@MCPI;D7$h)_S*QX8mm~s_C}$es;WK^1-NC-j+4UQbbzbag zZSLx7*|no%V4$OIfL)9&+9DIN^+z%l+uqKOy{*y7SZjB*v9bMFFSuJ*OKdWV<>-4v za)W^RV=Bx^5ibPHtx|2wuftqFKe*4z&`xEp(7{R|Hd#v&AhvI1UyDD>TH`OvH_m?L zZ2V>P1MD^dc13`lPwI(5UdLUzGO-+RR8tDHh@pbY35Mz^bC>EY)yI4m4OVNg)G%lr z2?DHTC0o7y&2+vR3C6!nEO*<9FM_oK9(<1cjJ0FV37I~<U6bk4+clXwy<L;3H{Hx7 z7y#bl{U4JL@O=>d>1>Ji2f6&lxSRy-0~Ct54M@Mj3^Ou-(>7u<$|}uIqhFx)_|J#` zMwY(1wDeW^M*N4YX4%jB=yF@ZQ%3R5e91|Y4Jkz#CNvXQu|e&!S!N83I7_BgHk;ec z*k&hWEcDN(t>%BStRBHv0PP_CIA}bd-5w14M%Jyvxb*9*UzM}=+=4%QmVZT~vrq2_ zj7j#(;4qGH7<1TQZJLglK{y9}kO3EI8en&l5i;Pa)Eb=47lvGF4?6Ze@(6qKkw+HU zZx$EhmPHO%{!TvDx|ID)Z`bxSy<OWk(M~i`yhqbTL_6)9Xy^NeHSW9VA$?bG*L0Nh z_iH+eXeXK|-lOR#qMc}>XcsyPV0E*G>(eDtDAtNIM6_@P$lit;CV?%D8mdtIW1SLe z@Jx_GS|1K{9QST&^Ah?7lge(s&gYdQ)yHb!o0b(OUxt(fF-4Z8N!m&-Cue3@AaP1L zEXODgG-P2e5(9G!Of384olD)3aL>}6whOb7-kyl8EHBUAhAqU{7(>3w_Y_tF&i{Ui zzag&!uiAmvnFu+oGc(u`hSxkXnNp@b511@CKF&*iP|5cxKKt;}?)&a}@=x!3-!2@R zAF#UklkxYkb@4A^++mzuydP`c#>f4bdPXrV-0^usGD@CUDZas4fx8n}Il2>#G)hLh z-C!-ki6J(0+Y*bwpzzot-g$za<!jl&-}w;3TF|b(6Jv??c|ec1V-6TgZ~qvetM%{J z+L>9Y#oep<k`*E2&$Ikz!u1570*n>FJhR9;VzXMzU|YDnmW(8;Ogc--ayZ1K&EY7H zSJYvKV06dv<4f;*AB!+w_nB_C{;ln2w!ev^M(>Z{{S}<9G{x$3G8M?icr~m$P?j%) zb&vtZfTUsp6i|~wY=K}L!F*CCiKItyRWI};d*l<_cRYE{Y%|TwOj~oX7hhu?AYsAY zd+rFuA7V#0eCb5|+hW{J7&jN=+NH{vH&X$maDgx%4hz(VvrBe+q20*E;b4A~93~Q} zK%cO0di<M;$$0wlugfL_w&m01d-nO*zGc5W>fXM)GX5bBUp@xkCt!XuU!bv*+7t9Y zm*#|h68$fzxUvax>onIAl1p<;Mj#0rCQRW-(+<)o877Ilc607pA{7_fi@XFRp(ODc zgV?DnAeG|vo`%4ynEPq5j`pMLuHV{HFSm%<19CRLB6+#9YhRFXMXZI+u9%x<D<B?} z3;vu1od+i<q2d}bKmF|HWHW?RXS;G-7L%04vP|mv#paPJj?-JMsyIT=Wesx|FV4|V zFcb>n$9Dc0t2=i7{9OF|$IdTAgRDo>Z)t8c2M*7PR5+)#YxFw3zecaAUD&R~do<hC zCdjIZ_md0_sh!gh{H=~JY**qr&2~la6SgbSuGy}{_+%p!?V9aMv=hG&?Ha$}<8%Hm z+BLo)`jc%=v}=4pv=d(t?VK;*L{WQCsgnw&O0w%%IkmIn_YlmT@>S@Bs_bckVkiNl zINdFBGRfn1Ru)xeWn%XVS)pp7AOl4(;EaU1@MK<d8+Wujj+U1er|+fTTrxD`3+J@< zueGN^zNhn&I6E4wJ+ua_O|)zFL$Nl3g=l}Dyk6g%phB<^?T@SWJ<*@=S+qZv)Lxr} zOApgt>o`U{RlroU`)z`rLHJ)LHAro-u%y7Mqe#=FX$$iQc!~gPFB>iQFsZuA(@@^v zcI9LNm}RU?l}#bPN6oPJB~FCdY*OujO6u7-(XpZ0V-^P_*jQ6sSW?vYG4-7Mu%of4 zt%#kQW<AsA&P~O?+&%8{7Sz~b7i3+@#|Eh*lJn*dVYB=ttP-V=ug}Hufe})Lx5$}k zG#UzUevJx@Jw-6~xPcL}ayK_y5tZy2ff^%L*ek=V;{_#WSCcwn&r<u0#R|&Yur&C} ze6C`Q=<w(HEg-DUsJdonG$>HWS5a-wx95||D<2CFD}~Ns*TuQr9q!qUj*D|!+p5-m z$<+~z9t%dFchy{N>7%9A1THqV$G<#%&etc0;=f^AE28nLXz<tZFOn$+`^VSH_w^PP zpQe)bmGD69t47x<ZoVn^V_)4;J$q*887F{X%Ycuem`Nsi7!@E0ENHPNT2K>$x5#>* z>ZBG6p3=TH;{&BT@rn{LA1Qw(D1TNQJ2nZ+Ff4=_7MT=4vkfd9!Vd<dDZFFXe%_Vl z)~LNzvRbv5a_YSD{o)~-etpVAkVs&@QxsLCPM(r@gw_{%yGJB_4gDh-%wka&L{Gzj zs4kmNFl{V6XdZ{ruw8u&dWM9j2xwz5kEe`D{>rj?Pkj+78Dw_O$)@w<X6{U|7N>rY z3Y|d`^hwpg4-C-Rax~>MeRkuPEgLJFi)AA#dg{RkpNjvRQ7&#adi{PceoV9b+2Q@O z?%IN_$6q?}{S!M2>Pn9_*RjKO%`LU@57#vVmt?M+kc^ZGye0`2A`C>>89FUwjDQ5A zNp+6=oGf(9^n*Kd$&Sps#E(e{!o0}FH}b1NvhfYxa!a_UCwz;1qwUE0^+(!ZPr5r6 z48|}X#6vEV(Rh#uaQ0wQfHn-T6--vJ>5`(S+4i&{E4`3g$*u>zi(9{aK8HT$=+fP@ zx7{{-_pOo6&d9Cujr&hcPM-QCD~z<XKtQ84u7?a#j`QFEr2w5P0F{HBmc}vAvzITn zTONgDLn<pR^f`TW+N)d5Sg^6W0zQo-%QhIl*_lS(9-mPZ*tOf|Hq!6VZNCmh+XI32 z==G-~Q~j)?e=35%<6rBaE`gP;J;*wO9UZ~=*Mg)2i@j*XUSva04aQomOeSlK@aK{J zQ{54m5mfJh(_x3zQ_8kG;Tz!a5qo0hlD!V0k$)LH-nFUw!S`O?e=OY99fBhuGTA>k z?~H$oRmA^^y{{t}>;jz`!6X_voms+s61IT!c1`9RfozWXg8qp9n#|V@UhM(A>$o4m zU?i*2W#AQ1=@OQqOyXSPaFUFr`w_}YONt8%tY)J@s$+G!A3;@;LjG!aD#2%xeF_DI zPNzUY*1Y*-_r-N>k=|PW)RqGmj&7J~yU@|n4FA)SZ3jC~*g})*;0I}`jM|C|7KRU= z4D9c&3k7Q{8u0o2j=l*v8L)mnZ@&IJQ`Vo}E^NRI{cHF-J5?Wp5=!wg7)>%v7MIEJ zBP%O>3?`Fd5;(|-RI-m@wWpGN468jRd<>mZM`=ZVeMP}4K8D{7jGDXQuerOSc-QpW zAU!sa?01OeEbM-J_^J*FfOQo(Ycgy*@CkSWd=l{2@M#cuS&eg1PN%oTVpbG77a$i< zcVK<gC>0QjO#<TT;XwEDib`)yrBHdv#u#*%HJYV)V0_^y_fHMB9bNa|AKh}GV{V`$ zNQb29_b&!IWCL*H)-T#l?(UlmAMXtXdnUis(YpK=)`9cNWmVvL5r#TD^h_o=iXW;U z2<U0hHItE<W-uppo8j*>>SjJytXg!WbMdx4$701L;K^m~;_{Mma<pYw5hYN>igX)l z*h{1rx`$6!NVrB4_Bjez<HngbwmBFG2A3|(&0T0avN6*9En8%=@0(|X(Y7Gutm*hm zeUp)??)HU+TQHX<EUXT&HcQ@E8QI;~IM^H6q%_-`2qO@RrLaW(;!EtUFUfO@i_4Dz zE{S*K5QR4~hC>eXCbzLE<2d_mBNnFG*^)f2R`R%#=LQx{mF?MoarG*_`|4HZnEUzS z;?L*eKL`HsIr4M*UW}*tWH2tyBh9^-?5%*ei4B`E_z+1baP*O(8kXznq*dW-Q@aT~ z3C|Q4cxzxFu~<v_G|0rJy5BG-!QY~MrCILo`oYfWA@a$Uie*;`{~C9~ZQwZG1YE{k zfXiZz8ZHZ*QFV7RU<pIflx`>@S1O30ok4f!&Qwy|lTAep$8Wn73bckVowuDkBHNbV z2z7LXWb5+lN6rB@{QVp@4{+FMF&gRZEA>gyUptGUKk0L#JyoBhb&2+59Y*MxqJ5=4 zC)$NRCv4+ql}&&<Vq;KFjciv2X1JOJ5><y|Ql33W0Hv4}>)Lk$C;?T8BRiS~oH5_g zNK-0+d_yD6J?8k}k#m|(be6;E18H#b$e0(_C)$(s)#U!k>pRPJG|^wPV-oz%a(kg@ z=d!uFKSD<n@K~v%iFVEIDRi_ONUkPn2`CNY+O)7%lSDj)!wKb#NnVemz@9@^M%<86 zp=r6AVwM0FNiDi^#x!;8QV@SGX$qOHh{>7Dzb0D+{hd(8l5`J>%MkO`;xYu@kWM1n zH9M&fbcJG-GKsF3Si)qLuo^<PED}~jC754W=!9(yM#>*Of9FYSj=_*)J$}dYFz!_P zwiOj^t7Jb~_7kni#(Ov8y=CMtD9JH#8yrZmYJAg(R+&_0FDeqoH~w}9e|usWpCTfm zlzqdqO;8@qO6+)-VpR~O(Kxg9-Zt=X*`&bY7?(@7m6mQRVe!PjU^|oCJ6x_E?l|EV zpA*NeKS;r?^mgs6iFP_`qQ7?5())9q!<u1pmAkNJr{s_M^0T0&C%~Cx0dz{vyrMi# zsPmN|L?wb~l+3<r)R(#R8!uivV9PZqxweD9_u@CM&DiV)L#}O>-NFukwxG&pt19?x z{G;)EzL8&@k>M}+2F7+`Y>E}imVB{t46P)FPV6K^(xN<JN=+Wv{)-=6S<K2)4EC&( z@A(1L&zG0WI&yP6%9i8J@izb}z>dG4!|tgR*rm5?uoLYBJJDZ*ofCF1%u{dI&T;yC zv~w)l$<`v?qn%^XPPP-#&d;SjPr`H2uHiW>^s*K3v69UhcuwHKLR2maaX>-5pN5t2 zCFa@14uzQ)T#tDjTUb^6r|hZt4c2;=y|#EZp0P-9;qT>e`HK{|q_=Cbxo9Upjp(oW z*K#qxO_*P?1e<jcofqLXfZnHE7JfF^thEV(E82^bkBvB#bZmNLI-Nd6*&3Uzf}#Rh zciov@qeUh|K;_K(2R3b`!%{p_S~^n9F2=9Aww2}u19ldNRr}|02iC;r!q@a{%9_&K zwY?VYwAZ4)w%6(X#W@lB6!}Mt*bV5mm?PQ#)kQ)Q;DREwe92@r!8<^1i#!wJSG)>2 zN4(&>?5Xek-M!!bhj_sfyPX{(*9Zkh(teQcBYY#D=W`dn5t0eX-c2&0pQMmH*#Dty zLZj8CRW>Q?1wf4nVsYKlC`ou;PqDwm?{s9^NV?MqIC;mD%xWUGE=}pYI=EwKH(8t~ zce;u${8+W7T_4%tv7g?nS)LD_%_=B%9brW&hBR5~0H4Z`TYwLh(v@eO%w%S&-3+z> z5@orBYBn*mF3a|fSRppS#%fXRJ77#}c7?vzuJ%_00>)x4R|%8K%StL;m4yx=)0&ME zn7d82e?X88hC`5P%|0GR=73meQiWOwx&?**xpQ)1;_k_YkaFH|ZhG$Q1@mrqG<LbR zC1@KT**admqr$WKz|>g$zL{{>(MV%oQzez1r+wq=RqVi_FY<jmPBw>C+D}pZlivQ2 z-v7GZ?txENdr!6LJhej>UF*4L_2&R@<puqH&!x0~MsNRYO1n0W*>rM^_JySO$CWGk zd!E<ZSD$b4bHho`eNKPwb-7>pl>WZYC$(oNbQT31zmU?Nr?=1Q?HC`CBwBwCFCD&# z^&OMp|I^!h^!{h{_Yl6mrnjG=cIaXqkp26C$2C$=`g7I7>1P(JgGt<anL!`eumj;_ zL$F<vm9aSqYpoV$g^2~Km}y$m+4_>req_gl*)M_Tt3Q!u_QO*!`PJ1jskyN>SQo6S zEH87rbd;}QHJZt9CCUdi6S@eceTNeuSCqn(KGCsZd*xbZp{zDn4Y5r=6*{a(b(k(D z!&-6Z?WZ}c70C^n(FRyI!UNhT{YlK`fEZBE$TB?iOg<p1!s)bRfv{;gZDTBpnJmmS zmjQ+-+<ko`IhhEykfyBJ8Wn*9LM1qO%w#cN{+*s1i&eKpnbh4G?Q81`1)7@>ZB$uN zPC+#J_MGfY8%PU6j&f5-OOn0}jz%^`*jV)tRRA18@%bP@ydRO<Fe%stg`e)<v2RnC zySTV)W=n7DI-_x2bKmwKxQk2NbKCkF*PBfn?wEI%6qS9n*wg9ql-mvs4ISE40dwz$ zU9EL>tz!d^9>pimhTVbM+5p?W$y;6RjlWp!J=$DT-NNyn!<N&P@2T`@isSbPU~UI5 z%Y&`q_;XgoUl}z*?FPa^i&PD3eQ<A3KoLWP3%9<*!IAns*iXCKNj1NX#heBCOmY?H zmlu?0Wgrj1Amy<<)xA^AgH6mToP@hm1r0#L4t0#?Tv#&XZfV~(HGM}*INX9CTSw@y zeB+5rp^np&@1Hn*A{2Qb66y$F33ot-9Ku>kfj@3;A6z}oxGycv7*WuLPy;g&XADER zZXZ-b$DBSt-zu?(Q5+o>9+>NZF=u8;xu|qDk)5@<1OHs2IOBT}`*i$3eRDK;U$CvY z{=jj780Ub`i^KjORM_K-RoYL=llY$2K{3XN?bTw8Yf|igzf+7c*7<)EW1RAsu>Unn zO?ikh&RZ?Ucug?*G@IYwkU1k%JhE>!n9VR7Y#y7sM3iyAeSXIZ2<isDRp7Ni@Y36f zHwgI7aX8A-0GB~D+|ISFhTB|f(r_EfSUPU2-$N&UJKTn+h5W!OZj-A;*p!{sJU&R3 zF~qS4F1@*RdTLwymR!Tqg`Ck04Yf~Cynpg^N9fWM%l^ZmjuRZKIerr#3f+85u9W`; zr?f#Djtv$U6_SSsdJ-FUGStzR8LZ&O%fKG;dmQ7|FmYh%EVfId6<#LQ_`MAk4UU4$ z469ixXXSbfpa_(72BE7~BS@t>=tPi;Y6Pb!1Tk|Q%7&qnJ)wg=EgQ0|%v;s*k(rJ6 zSAAqAh6tmRL(z5XqHX>ChK|_{{fDD1PE(|1G&Wv$DA+q*yJz$LeF)P&w!Xb>{ra|c z_@Utu3SfU`Kzj<fRD0)hcAK0K6DzIcO@&g!iHzB-ZiJ1Ch{(NAH>zg!ZhXH)UtK)( zloUI_wuM0KD00A0rn<-qSV4wL$JKocijDJuT*C*;h*Imj_x+*0dxyg7&5GgHv$A>p ztJ%j3<EU=kP+i;HY&&`AV~0-mgzv&8&V_sAmh0E!(e~i`DK_%`+#RFZclTo5rSN3j z^<1${CJ92w4pl}5Z#i@wh>r}(Rm?gELv-5;iJ^9leyhp}Wp0LRncQ_{b!o1_QdX+T z35j)+rBsbW3}gMY{fV_N@0gm}(LHQY439s)G&*`gwhY@_LZOzHV9>TWIW~E^J91a! z&Rx59F8|$JwChBBa5UK778(t;5e{#}exp((bb<;Vxk{O92IVruBb-bu7}S+?7|<XJ zwSZ|?gt&P<r7mY-L0(Qah%}^m9cxwU119TD5NO2_71M={n({$5A`>9~ryb$ysPXo! z3xECNws5q~7MWi6o^{g^*sBlw+uB_v1H0H1ZenQf=_Pu?=gH~yPgHshUb#y9DK!ov zz5mHI+82`AALTN!c>nWyyGPE`$0gYxaTbvMlb;(%dhT=jbFa(YT$UE^`+QP+9+#y> z`xjE$iC&8K*)`hd^mfdP%h;knpVunzI3|xK!HHyS(f_Re9@>ABu|@kCYUk&H;ze4Z z*)~gqv5k@uIy9Np&5~j?Biq1ag)c)oELkid?6S;RIL8!jp=@fXt*P=+vWBA|Hycu! zpZQ7QGxAI^?psYklwg4PIE<BqGeHN_@nyba!+In98f`PcnP~i(g<aXVTUvcp0SLhH zU;Qu~iAG?-42FO;_rkS-zox6twb%3(czKSQ+=6$tclTgPI&4VB6>B}Mua#oMT40YV zm)6B%x@el_t?7d+BgwB*jLQbxrA6h%<+<6J88!=CHBRPCan<-LRHYWj0p4?dY)STH z^&5`1u`TmEvv1G7ZLe5fH2i}QIcsSC1H07qz*XbG{6ThFu_;BMPx%zRhUiaN6Tn0$ zmrRX%NVqpBlsVrEPrc^efN%>X8)<qb2L%|||K_pBCboS1BSr4-ewQ6voZPf~!Q~uZ zjKg>>Y#L-ED1ml$x2jteK)y6%NFEu24~qDps#fKI3b8mg2Vx;ll4TIsfKa~);&ll1 zbHyqXT@<Brg!dCjlhkc2<|suF3<?F;l-6MU;`}PV*Qy5xhNB2SNHB5m@B$>nr4Ygo zeyE{Ewhu*iPEYTQ4B0Q7na<>VJQTV<+g#(_-4tA$JU($c*t~c7r+bdDSbK0H*dA@2 zZH)^2AbXC`^It=Q*>s%p1%Nl{?Wg2jtG1t9qkSQz{S@#|y#JPzb~^i_eU91zQu4)T zabC>#oQz9ohxiYxn;^<bA*TgWfiJ&O3psVDB0R;Na%mai@``P=Yun^fxUm_=`RhkR zT_^U(A7lIA8w|ytqIKdAjVGIA0OaP)n_s8T%3on#aDp<>JodbFU9uqV_L=KE>=w^p zMsgEs4f`2AZZ^%y$MCm^S8l?SRuS9JIF@#fDClMwUp>P@gl!}4WB7%qSk<2_vh|Dc zA&MgwW58~pj&WQ*%i*8ieu~CkrT@t_+80vV6Kj}Vqn)pf-Vb|oV$Id+n$6%1tB-$7 zo=BP(Xt27Dv&sF52CMC7s2yi<7&-^WK?X#nbjQ#$S<trYK!7b~%QVFqaU6&dHW<bs zkaY5h7Sni!6%ko*bh;4X!_W`j#yRz=wYtJ?k(tS)%*sq|vq*$0fpTZC43b9}QEsk1 z!}F%^R9bjF>+v@<`0*3}H@<~`l@U}874mzky`%tptCugS8=DBZPwW|JvkHUL8f<P3 zv+r^If`^3T*PjXeLi=9>zp|vNSOo+W6~FMEFuHdu;CuKs6Qq#bA|k?=(kX~;Y<sAs zEzT~UKYD$!y_G$%xEwzWl;ZOM4cI{Zo{8}maE}$?^LA_q^5o#tf)5jfEh+vU-*d-q zXL8ociWq$1jPW_PFYUeSzEAwg19wB(jGz5s{Pp;&uf8hA-VQr6#=zLHa$~LBj|_a< zjj?00ALp_d?a<xvxfyfGl4@dA+S)l;kRY3L%>tWg<ElM^n8~;7#rBECbN+gD`}DIc z;4Az1)K>P{#pNG)s_2~Y_mYjC<@50$k|82uJmJrK6*>X@9Jw}YBDNlK{AP4%8$m3( z7K#Bvq{i0g>uL*PlvJ0S@0*WaYQ9qV$SvQ$a>9yu_6+O1Y~MWId#-nIykq%UT*B3v zm)BVue^HwchliNYyo?i1?SK>3ug~*>e1f-|0hjv$7t9|edypr9ZA#A*&|v4FwKynI zKqjl<O3w|>3UW@p)%JV?cu+JP<)I3cC%{D%&WaA702Cj55O92Y`}Dt@>G{s$|7<(6 z{W(B$YAZ5~33knxQ!V(ZSK9rY4Wcy$5?r;=#7#Hcec3r;F&mLmfB{{x5<CY~;^DXe zDnxJn%dr?ChF9|X@<8h=kpN3!6i^Jfy+*ZesU#nEbWZvm_U2hd3HYl*Rzt8l(7#aZ zY&`5NgmrdnO`y4^rg=+G{2+V6<>`nYRsW)S3*OTLd1Lrluyn8<G3|W71qLTz8R(6g z@ZgF$`JC}p8ebZVW#JnLB))u~&YCnczs{L1BrzucOsG4ZFY&qXGl|{fe3{$vZ~g+X z%~A@12WSU>y1?G2oD+E=$~j_Cz?Jl8HJdv5bh1c(rf0RYhINnP{AXgn+|u~7b|`(? zx=V4+lu2^uL4HBr1>P$eCn;~M+lWmo$J+4)V+IQJg8Y--Wh_SY#4VLp+ViUr!ROK_ zlFFVb$4hLZ$ff>ucS9i5)D&7Gb*_8cMEen*`M`Pt5n|V}e=b6B`cq1KNUW3Sr&y1$ z-;#d!2ITu@(2A72hd$0MMBW49RoBXUP)R<7*Ho30H5|MB_G9!Dh(-hWvEF**^3hvv zIePiXt@F{)?}eiL7vRsw=X+P7?wzK$VO~k?3B4_~J)yUywkPzjH)O82G4cKtdK+(F zO>cWc=6aj@TtaVqL+EX4dqQuc@!<ne+Y@>lwUg{1#!u*Nq@OkG?Fs!XbsY))jM_;y z5bxponI!fvh{!jmR3$Awo5u@Dh?D3=WUF!&hz7hf8r6fBFfZ}gW#sVlKB^&V^=_~T zlP*(UR#a77ML}n<nn9D%0{%G;I9s*I8?MT%h7E%e-x06dorV%_gyK|2asnGtF@xhQ z;YN_-0PNxXTtoNdID^~?`7&T3+LK|I-2a#?awo)l2zH|XSzYI)_tTjW?WdF4Ym;#A zgsux?54apA_8?ssUL$uxSStAjq~%WJW?R#9Cz5m+(g}5yH&v6NV4aFegCdeATI%Xa z-~AZ2Ab=kzyv4y%<WAg6sT22g9w@D<^HJhNXEby#ojm*kJjr+SQ^*sel0))9n>!oJ zL(Z!~sxB#pCa<SW;I7D+8-$NhUX3(~2WdT&G=bP-Sza@3LhA(tL?5J0c*`ZJyvAGO zc45Hev<ZPgJZ%CirnHG@OMxTG)e<LH;Hu4q?or>xxlQ5Pxo!T7b3@U}=+ng&;f|Bx z4)$jyWecIrSZis=naJ>c)8{<F|B%i9oz)(AtvztB&GMTZ!Wq6+zNZvlO}g8Zj$?To z2gIHVonJv6oYxVfL_Wj_EL!iQj0X#=gtSb4ElOdiBa?^0cp4gvVzeqVHlzixNx_ga z%`#v$Wy+9Mi)X!VA9?5AV=*r|3A;PnqOHxfk-CW2<Ay(vLb`D9;3mvc&7L9_0GR<j za<bQoEG1+?sYZ?fokNX{78FJ`FV^+`EnE8iffCrxO9IvXTYgYhT;!H#3|qRZ10@J; zDhU*oxZNcsWo4f|>2?*D*>-MZrj0v`D|2%zi+67P@Ub$VyQF_qd>*UtFq5akR~CP> z%=eou^e@n*5%5Vn;Fk|^WcE3Gs*j4SBtk?WdL)y9sFz3jLn@~v91<Q<X;x|<U=vcZ zrP7iD6ssWd!S91H142BQB$pmI5dsjZoerLRquYT;V7%`LZ)=>|*0CkWa6~oZUzcwj z33Z0Xd*45Pwkz_UCs<*Uj|z29Ztj+mg~|PGC!Vt-dV~AhT7d;LSMG01qOYlQrS+uH z)ugXQ5WhmFqW~hT@VQ}_ysAolJqceMt;e3aoS`K{&X)G=Q`6hpM{{P?)jX|S(VcA_ zq4@t{nMtdGNCY1X>=^pq<iZV`<Ugdj3M>}90t-ypo7MP9a-S7@lV4Rudt*d!b-INn zji^0fV7a5@IowKa#Gh)L^Tbk6cn;x5M7&U;aI%CR4uwFLK#=4rzLtF{a%c(VkO1p0 zC(ENiHWY4f#eksdmmJd)VyWoxHd3j>r`px+lNW4TdUqaL3bh16vj2Fb_rzqVDG=_8 z#{Zn?4WAdMH!(nm=*=yh-lVsmRCSXQ$eUOPc#-ITfl(|4lls5|osiG!r4I;yI#Q=7 zi2_mOP^nG<wG>LB;1VS$4wEEe?1Ds9Cb}l4Tcq`cipbwc!96Ky8L9n{uLQTS2dNp( z0xPAj*XyYnJbhh+MQf=UAV}N~OEyJ4H^avqQ>QOB*EKY@R`}lAKQKGhbl{YHJ8P(F zs;Tpo-8nomKW7~qF0ZISWP~x#x^vy=j-4AzJl@jcA|=l{HnepQharavhb{S}60|(M zoy&$ChBX|9-O{&t{U;@o<eLp3kQVW3r-2f0lbQioD2kcNKlP*hlK^jUwI`*^dI=~s zJtOr|RF3-HvN}>81MuxwYPZzo3gmSL)=KO6UG_k8^8PJP>?qnb`3@UmMsf#2+=aWh z+q`Gv+ig#&URx@CFEn|)4|ooI2A+$((_-N%ucHRBa&=VcDH9=b6ax-RJ7gT-IF~zk znh={bn?Rm;K{Rx(tMpcS8!Lq+TPqzy7137ab_n1QLfQx6?p$}YBNpl&?mV_J)EJEQ zw6^-2Iy#z~J7jC$bhLF(d*_}EIrHfH?t`I)p4LG3R9jPHdv9R*4dBxwq*sC;WJpx= zfN4eK5;3nRspR#Em{;AhZhz$X*mKWR)XC+$j?C9rEdMk16YnD1NrC)jFtKnffb}X@ zkt6|Y75PxX1QA;YGr4NA$;-`xBLOA}iphZMizIN>aHF~ZgnMLqWd8?0c<Dz!aut1I zY?$RPe&|Ds@n02r7L&$vac>@t2bz&#lg+3JIg>K9#bTX6N@Kf~3}r6d3|0u2f%ub& z0w__QoS}}(^AZzwkKvPi_)mTk6Zq4S{jW})q$!-7>cSkxhPl6vuUqi~4`8!_Zay#9 zN&~`nJiu+oG*{R+2{u*IP;3**v6;&lLtGK+z!<LLS_cW%rOUX+jUjY)n!;-p7>>D` zjX<Muc%IrVH1#T}5~dFPaTItnFma=v!9nqq3D2pRzMAF%12v^|ltp?pKz=kU=^PAY z@90T_tD5pbbl(U3#+=2vK$|YekMez{c#<sGBYB+$1zU{GMbziJ$@Q2!4`$OGUb=u> z54Jo0Ny_zLyW&stTo3+!P7}9byaY{5Z`btb^ma{;PH)%Ft!O7bR=i)+V@3P2+Fotq z?buI}um1!4sjz4ML-Pf!)tAQpUHg(gyn5fCte6AoXDj=9Xdm=-Xu4zix;4F9w3F^A z)-CjI5w~;#ds{4xifpe^C{&Viij<^r87CI|3zygwh*vKefL!<*+W4y9j>W9L{5<5& znvidVY9o4zkE&Dq$Ru6iA6javt7|^)JJQv0W_tScx7k?ykH{p%_CbdZ_r>2jeC7=2 zk2L2K92X9$xBv?=aB~QL3CtO55$)$ydue+AV{(7eduZ*V|JjuOq&JK9(@E_@Zx*o9 z^kxo2t~ZNzp*M?|DLND7>G>>x9b~d80FZl&J?;X8?`35|SuSVgS~xWFSqLgTB`O%; ze<jpqT|qv-bolU6qfn4_#hC4lKXv>#{nnLZ0Uw-E1+kCnUN5S8zrX=nub98k5gEKL zC@PNmr{%Gb7fY+WvU(oNE1$dTm@P*!WLf8~AS^%r>9X#^!frR)vV4PhLN4A*Sw}1L zSh!793&>xQ$C3!h7wIy(QT^!d=~e^SrpeSb+hH=JAc8S4vG>jpMd;fM5zOGvJ)4S( zHhI`K{A;kNXb}HezQJ~s4mzEKrSVSzjetLVUL3E;|CFFH>FpZL5bZ=WM1PHDr1$4% z4eQq6xiXifbL3s+vQ+-%XYSu+$p(NeyB_$=mmV0mAZaMuGQmoj?VijstF<ii9&)Ta zmg%utJ(-Wu*wBe+FSDeIn8%F$gCQQA9mkk96M5iRF{%QIR2FA6DJzNn;ppF8IcCi> zD0b`AmH4l(e@C{&|FyWY82__k%1k2I@%MAsol1dSdb<WY(N3@v{WaKC;tYp5{Sxix zm7G=IuhB2@9y-IKzZTcQ+xeLk?fgvY^CVms?HaCQ{jv@4SuK}^v$A)}Wf^6j`2R*O z%RjNkMK-Xo82=ovC&}N-;ex79NjR0>uJI?)PH++ZwRjhjACVV~y3+UHJxqdUN^XLT zmf~NA9|~Lgj{fDgFMNvCy-20MM4c-BF7Efb#OL^sypO}2+L3#Oxrp|8c|o*82B5L4 z!Tk}DE}Q6kz?S-dirV3Ms$}^JZ-+ku*QMxns<e6ACDb-UgklC{J;ee_h;m-SiMetS zDDULJf4rI$q%wHbG+z|#A#Go{{dO$pjyqmld|}|sz}FXlHF#z)zD%;96MUi_@>Q|4 zAiT#g2SXr4f-YihPNxWikVB``pgb28My(qd{pGd#!EB6TNyzC)5?XN})BqSnQEM@4 z<S-*MAC)d-=f+Pw^2pMUe_U7TtGR8~c65K7ORxU=dVhBI{-b<vwRwA`JH@=4#DuJ7 z$gHO!&t_)GX6s6M);1;CY`r#cV+!}jLh*pvYPtN*PmIM1F|t?kmO&NO#bBxfxT+Ye zt%lfBc=!-s&=<cbmULkJgf0&^YRfvhzY+Ms*TrSxE2>Ofwn8R$LMEm?Ys9sQsAX(5 z`x&#6O_IF-C`Ce|u?4~O78nR17jp?YgV`k8bee>0oq}-RYXvYu`cpCj?SIF|VCDft z8l?tQGS;MPQVUX~>(%$zSE1>ks+8^OS)a7$2aJYfm2-XGp-rhcpobUJnR4Q+0UkJm zfSE3DD^kPFe(=y1@RSy*hh@iX7G^M+nH51w!aY)#!BEf~+2GJG5wvNv&LA)s{z=t> zOGRGBDT)FqS<v^Xs7z>$CvY&y*sVrdb&h1FJxg}Nz=~&KN>FWvkag7Pgw!Wv%_|;4 z2h7PLO|SAa%!n`(_=2teDkgPATYG{%4Ruv5{uWdXFXp9XvZPApQ?17ot)bRiMeQp@ zefhY?jOsF4DHk%%3A<@Qp<Y;=n{!@`?r7S+F4}#1veNyppJR<J3kQxwb~HEdh#YMW zhnr!yGd@~gTU$=QUaT8x?b~PDnzyZE*Q9OASlh5^M{oUbYwJ)Q`x&AD>*{K18{${} z9#2)3#{*`GJ>`4Hd4kB7*KGCa?V2u=-mdYA^mdK6igv_VG4cLeR5?$y6K@gi8gJPM zT(WT=-a{P6=3u8F9)orU%?Iv`y+hB?E|(=0eN<y^NXeU2Q~O8@K$I{9ip#j=hrtqi z1bZ(!k`dU>Bq{*Jt2!VqQB7|L2?1r~B+`z&Q0M|C=7o)7DO_6{L5ZlV(didMhhqKx z4UtF#`}pGWFJp&79F8>aiyV$(-V0*hH~$B8zYTmSUkZQ{!e`AWqE}}xn3FU`Q|84g zb92;45f~iwgnJ$)lSH+rrq4XYvYYE_n=hTUof>CPE-wGPJ`}3oxpSPv2*ir<F*y%~ z^#teiA-OBj&Uxj$e3<h}e9!ym@;N4WC_N|h_w43#_fVY;@=p12i~+{e64HvOobFuO zQpkS7Q?{z9BiJeG?!IkL)Y(9}44C5!JPuFt`ZeCAMapP&K0i75Nx-6|wzg&IOsF;# zs;xtuwFZ-5u-@q$KgB%3+PYAvt~Llf()YtfHBDS1=EMwb5@8k4tkfEkgmI$$22jc{ z1x>QoFzU;PN5F_+fwcG&ZDO1Oxldwmu3ZzmgW3JdnckNd-`sj;>r>hmof@CO+x1u! zk90US7R8MO1qHAJrz9Vs%;49em=uv4%sm|9drUGtG)43gktrU@Q;}DZ6q({&5t-tv zK>8Ksdm=977{Vo5{FNcADc}$GFV;8CHZ&kCrM9)nU)?CeQaU=m@|6xmrVw;^jnDNs zk3|ylnVqZTGpDFeMN-kqG5}F6H(um3@7s8^%3xJ8%x%Xa=1f^O8>*)U?%q5Mjp;Mx zn@dUt%YOOu@`2LQfpRtieQ9g_8KPg{jPiPZ?w-KB5_(d4yGD;hJJB7{Uz7FI`wKlu zmJt0Zug4isAl;%8gau`8#BDNam>I=la}y~xOEOpuR<nt$4-gRfoe_2<G~@qWOaJ)y zUw`<ozfW1rtb!Th@%WE1UCe(Mcq+Z0&fZ>rCO<0L`M4BkhD!K=H_570&(le^OL!Pi zpdUFcR4+^srCsRcS;k?xQ%!NGLSPr6$D%B`YC_a)q}+@Mk@ew+AD-I!==+OGzy9^F zFD}m?-L!4Kq-bIuLMtD49mcK4J{OSOiaQ*h#W)a<UGz8X#)vzniyev)g9nM3)He!! zL}vH68UyW$`8bIXUtzkd_8N;pv%(k!`QA!c54nk%2R4d896ero-IdF4Dw&%*cb^Y+ zK2NI6)$UCfx`N-rWC2S)SH%ukat{z-^og`~?g2`)1NO8wf_*86J^BOILSG|Z1N}6^ z2=$b**SQ%HW~T|zZ1_%nMFr&)jpl?r9Zl9z6?oo!(KC*6YxZ}p%yV7UGI8Y}3dTEb zTUYF;k_+QMEFy)q2&J+=-nI_&7J4JaIsP%mPvCHRyN1J}op4z6*KjzYuZs4S`l@JO zsjrImmHMh^U#YK(c1>R;n@tAbDB{zQOsd7F@t`zrV3MXt!AF`E;?uNNd``AKt?&dg zkbdFCOql89jFbSi<r_Rijm^P2htO$;69i7r=L0;Ty5mRTsZ7kMR5BtRRyLYu%oHz| zKDF`{U$2;>qX3kmz*&GAf_OiVrK7m`)#h4_FpHG={@Jm+Ps{!la~{8T4bx7VcNVmt zPa)zB+5ajeD?wvqb`>gyB$EffZNx^k9x;Ej*#P-L_*#daDaBc=S+g&C(E|xXDHT7* zYf(7^84R*Cr@b_-BSc+yHmdPvd$YMx=E%>@p(G19CK1v~nPCh}S*>-3TLYY{Y#eJC zot&)q`RXSp-j}?EOWW3YYihjfw(VH~mlT+okcDtAW`hC@Cj^R(setj&dA(|Zd)5f> z(4|6viOHnE)~|+e`c~_K@2H!`+98A>C0a6<m`j|FJbQK~ZtXHjCc4m}s2&M!PG7az zxXPmD-h1}F=Z6PbZSsn)Ub{9pIKFZ<ii(#ML+*r+`466TsXI*Sq}L`}6-;#!Tf$<Z zl;?`=rR;eRI`F>Gq~~~f&9rVY-)cQpZmGAZC<}q+MfFAXHGW@(#|_QJp6SeTnpX`p zC+C+IbiNua*vDxfD{5-uzs9c$d|<(3u)IeLI@kU_uo6W43{brSKl%Hl*=KY3#TP<} zggj5YM>=9LA>s#%MqJbsu@#j0cEvpD-}0bOc<iS@u6s%1FXmzOo=mvaorU@K>@2ZP zP0rNTmcPnAvj#Pm{&Pty`bo97qPn`mTdkN^SxNGFM%7$t4h)kn@epePw?W<x0+44` zT}=6kuUD+5h|3#JgOl?9xE4cFhZRysKC)9+JAuDFd++gwlIAZ1QCC4zoeuR#*;0k{ zM~HJoMLo=$%Ix_p5J!=YNOkrgen>N`9XYW?<Qeg<#>;QlH&(M|xAZfL9n680kW-Pv zaka1j_lBY1k+)JDQYg?qn7OD-soA{h`UBbSt#b|Gf~r4DfkIbaX8v$PmAANQHE0m^ zAbvvrr&8&`XNxIrLxn~eBp_y>xDW=>M|U&A=r5EY0SGsG!BDhTr<ixe_edEL4oi~h zsFVfLv2akqa`cL9$V?@Vv=fIi!5rb4;f6ijj}b=v&;J?TztmJ)*L=cvq`L#5%LBIK z2f!(xq^M=KSNO4-5xUG}B)&#2M?Vj`OEO5hA4{~a^ka$km3}PIzS55++PNPKk}{18 zKNkLFhU5FzXETzxo(C9aqgr4l9F)~b-D*A3NnNbmVxiMwaarJ4&(A|qJFCHL&~AOq z#F=4W)n5FpO4!yPzi=l0)f2a!VV)GkxrRThpo}Vi$gg2d|G%Dl)UjF(?=Q2xDTMg_ z6B8#_BUr*m=mzceN*4v{+Ne4=ST0m!S1f}*uwev5>6KhcB$)ZYDS2T$P-Jo>l8G9g zL<;;${gMh2@g5MT(ShT1If5YtF-GdLmwB}~=TLNo<cAWKdP?exof~!}@)VYQ{0b3x z9D9Ok;^6WPk=X>4R&gyu8CCi36`lVQTSe{;?9@z|voTE?S{37J*Y39h@7^Vcr2taR z2)NotvWCvV!A|;ddA%<DyqS!S``1ONz(8bOZ+VHUyxdh%es<+9YqGHeeuzdUJ?myj zp$9b+>1>o$K~WvC5wKurvy?u8%XyH0Z^7nTt)?kWsT1f?gU$pFHuui`n*d|fBz>Fy zoa$Mv<|&A%{NBF~J&+ft9L(f0wve)4P|aq=<kB7{>#Vl~)vih!OB(BHswyc*zR&@# z57EwKpe%W^&9aInSv7(novsX_y@G(Q3jNcb>Jn#e*+^TH_K)Mq@V~R5INw|1ZSBV2 zo>Kh1e<k<<EM(`%>tGu!mbzo8$wGJ2Dwko<hP4N#1giBVZty|?7QcpwNqVjFOkSl~ zb?Y!P9jli-k}8j|8*=g>EQ{UNwLf@UV`XL2kAJ-M$Rpu{@~bVoJF6NRsxB>}@N{VL zQs?d#oQGta0^-0DmIRm<pv%L?0R4zK(A!%T)M1lznsuwfL&YAlDzHuSu1(vHxr-e0 z@#j^$LMz}Pa;T}krk*)XwgYj!A&t#*Co$D`l|}vRVj<6>E<naAoqJjO6ZR5&8ZdWB zesJ(2wbmNPNILUCsmoOD8>Ql4&IIp6%{5e7gArpaQE<&9ZA-30WrTWQ1V*lW47IG( z$Kb=mQz*OUE@e_hd8yy+Ct9c0MshKiEkn=cRHMbUx@$1YX{9AZR42=9h;{`>-9?3N zdA+%>HQL{&WHe`$SC1ArOW8{;)z!_eyaIc+zp=IUE78*O7EehbYTT12O_n~z{*rxC z{wdEpLdGN=S)z2<VSGDA8_koCWNF)q+#_{{s^q^)?os>3jqUV9BnLn2FJpn8U~g}* zClG5dFYYP!c<`$n(}0}=su=v~<Tu7HV_xK6u7pjC>aNqgATRPeS)t=0*;^_RH%?Mj zdKaj+q*h(e!flggGgV!u+Y@yc3cv6Y<kL5byA;2AeDFk97k-@xb$5qO$Tt@MEIQra zf4F_2Cm8Ccxlk?|#>QMqFcjnWAdw$g+^wX~fb<I&4@eMqE19VRKgPA+#-5G;4c^O3 zFXMgikRw0%IoM>riT9Ds{g%Xgm3Bxs1A@#tY4LFQ1L$Irq^V+kF1S5G<|v6M^^37s zCcTkgB5f4whLlG$=sr(V82|1vnKA)A=gqUSs1fR*I`*(tLMPZk?kh58myDp4DhMa# zC%fp<AG!g7Bxo4i3hY)h&w`_178GCv{&^iyy0{41e3iWt)tuiOI}?AQ`R_k$EWh?z z=`EYsW6KY|cJ110vN`_UL0T$cuosia<}j^FeCG8v@EI`S_dD{vmt<tz!oC)X1v9xV z6IT-<=YvXj&%!W6dymvs#b|WV6~UClf=SXfTK2pQv!}ilbyabX6aFLPs!u^iBPwFv za&lq3c7Ma66N?v59II3IEA>a%1vU}?HVg8fkH@dF;rMm>!8<XJ8pxhL&;@?SqF=<p zA_M?_%FDX%2ywCS*w8HiW{ODmaKU_%-1Fsh4R3iF70AlV&B@}#neJFLt5@*`3%S#V zP*RJ6ghvm>!og~||4$2?Wxmaev5Rb=jV@K(v8$!4tGTu3B7$Yt&vy0&yNCPE*l?|4 zOBda!c&xp#G1}dVYZY7fc69EwDVays$0j0TJ(~c3vJvyR$6SOSsc|(WBBDp&v3frh zM<lA-VB*&+BfkYVVr@E&$fd78e%feKzKM+J4^{5o?v_Vkvfk(0x2Jsh)7WD^2FLU7 zVo<ZVNgVBnEQKOY=V=??d;XdFsdt$1df0%u{pSB5wuR38$j~!Hf}JE23jD+i<w<TG z#8i10pZ*O_A!T`r8g>;1NRL_gm@Q=iBfKWFxV4H<7i^FWu=e5&vV}dg^tf4`+-p32 z7yI9+6+9Qe=hjP@E5Ie={xHmSjL(&50q#D;=NSLYYbndP>PnixAjm_-_cUj-gc{08 z=Mz+vx#*Jj)YD0Gu#d7AmR=%rzdX167{;VAaNh^sc|pJjxQ9ER@fkUy_`V6>Q{8eC zuUjr+m8ouXdW=*FkC75vDPp9EBqiIQ*{6oS|9cCz99hn?9Jv~Q>kG0c{$go&etvf; z>tFU`EKY~{9{w+yyVyerR~0w^RgR#ruoJeIYU$HM&*YHM20fq2r)<oKB-=$CQ}9G^ z=3^Gbec<6S`rFL;hZ!t#=ovensZTs(y!)LVL3S5-@KqY%9Xms;D=8|Hq-wvnyvS38 zidC2_tQ~fzJ(CkK+_y$D5F$nBo^J3fgr`^AaqhIh7aYf5bnOp?_IF(pe=W9lcD^4! zt;JheWIXnA|3rih4KWmbc{w&7VOu}LKHnRCnXXlNIob<w0e<8wpjaf6M0Ri{b>XuG zdzHiM9}ta|rCBlvl)x9F5?fwy-<QvE6<Dh4?L@`ceHRa(T8cKGSYpbNeYghrmo<%S zM%39J1x-iwYv?SsF+WnAW#dlqW(r#8_~|12#P{mW!T^I2o@-7WLCD!R;#ZcQUK+Y~ z4aoQb`PlLY-r{o>x$yK})ND{mF1^?|L3z}I>?Xf6sHktmn_Jk)gVP5W@WT7$GyKOd z-if)Azc@!ijTBrpAe(p6ou9;c$l9JX+r)kER<k>KzBF$K`}g?9*+Y8{&93LO)&{x% zS9BI{-o?*i2GI}lNEc(iDrRCJI-L^+P-j5J6)U3eI8vp3H5SWGgPAjotZ)9G&+&_o zF1@t$(WNCU@Co_ovVTdHRg&-Pf%glHVFqu(pb%eCQdpG~)XQ@+ymk|p7VuUr%p)PA zES=dr-`zdG`OIRZuP?F)V*9hUBM?y9C;=iyzIWghjh8MP0pC<&NuIy8Wh3yMRmMHP z^yZ)#cyNFQ9*|GZ#$Sm}_4iLl7rI&lz+}*Y1a9O&PXUhx+=(^MQA8h>3&ZP##b8$W zf-@nV(7m~tIhm;P2Yj-5AxwxXD9IW}X{H3&Djs)6+^~6}YHW6P?6(W?vsEYwS6hYE zzcMq{z6Z7LP};AhzO5eG0buYO@CvFiUkF}%OmK^GY=v2p%~bVGlWH(2Ws-y)Ax43m ztlEX#q%LGWQmp`lBp54<;39bvSa`7$LpbbJ-aIdfL1wUPE(NKxS6ND80hauB_z>&d z+m0UHcGq458{5o|y2%#oHXfdn^Wv`@+=~C?i}8`E<A>`i_gB?nIha)ge$jgJQF{RL z8IBv~0kiNN^jm@}d^r<VGH!G6%<U=^SK(Gc;I-S#bUlXpUt(hRs1DYK`CE^=w;wsO z{jOVIar>&PeQv@k=8pgD;I^r)2id{+C&ue4C;hdYhN*W2frj0Qxgj`A@FVbsO|cDn z%HA3`O+yNzLevQ<$m4c#^Ca#`fg#7oe7Y1wf(6I_Bwbad#r%HhQ0nc;-}z2kFc`g* zetmK@IJSt3Q=&l>5G7cG=3>5?kllQ|mZ=&t0r*0vVPq(vyFkf1ZkohYF<)e%k^EL} z9<4^f4tst@E>c|TamO_m(s=M3a5GszBiRUa+TV348Vt7S6Wgdy_-|=KXBWrRd7-{( z{3XmUJV`uaA0|on@|vV|9Nzphmxb|}%fgVB(NDd{7X7yHb>SC}XDy`MEZ~OXfMI|~ zreKW%Q&hZ1ZkEPd3Z+638ED~HBJOdC65M&^5nqMbY@eNFdrs%9+cva+X;Xbmtvqw) z%-`f}JhnIfx2$?1P#6C`Mh4WH0oNYD)d9$!5oR73s3m4HAlSfc76zgcwX!(49?lO@ z+FHGjqHs($PJ&EuY1x%jh8%sN4?7E)dd*jEww_~!AS{~@oe{1I0Sc(DYMt1K)ZA+J z{-OQb7Z$ef9~wDuV5{5fb(eX)w!_;$9Dg1t|DC(GPfu@;FKs_OUhiiQP}pbuv>ze~ z<a{B=5luz(55yWcWRQ6atf4E=koqPxGJeq)1UsllDBqUj%yohcLrto-kkp*dFT_F- zH!f?UTCvd38}IKK=sdCMUzWx$EzHe9?PMY6{9ylNgd#o=iT&U|bq9l;VviC3PP(Q? z>WlRh;GQ0oXJ*)A=*6Hb(96|8H2_kTd(Aj&W^)<ckd3FxC<rva62yvlClLTUf_SjU zfE)BSpF`bxLSU93YY5PWFX{WQl`paKZBHP=&v^Y3oUJky2eXKe!^Huk49KQl->!sP zW?Uwk3`9`U$`G=lVxFp%!yt9r{{5sQU%SRSj<Lw%Umc5o4e#!SjIaf3&n3PBIg$rk zOD5R(@qP-9ofgCp0Z*D3k}Kt60Mh<w!JGt=+DA$%)INLf((ZeI@5%Ff=KGSaQhx2` zHM&e0GsKu1RT(NrYKb-C^V^P=Dw^mdmj(lTH!gi;sbhZgSAb`9)%oKX2G@<_9Ftv- z?!7Sadnpq4brkTZAt?5A`!3Es^1mg+EQBJGNVF9q@CB<Y5>SNfntXW&mWi=1oJqdI z<II^$&+SOQ#bd{F&tY8wth1H#7sO-%-?<!$g9(*(S_q9~QWG0TCN;Yq0x4}=x<E>x zWp`>qX>dM8EXA5J)>f>y6k`dQ7atIggq%i$ffN)?Eh1Q|GH*UfBWfKa0_3-~w*!*P zNA}^S!n~Ts_~Uq^j67^{KX3_X(7ISmx6uhHM86NglT-r|gr(F4b=>3fmHNoJ%Uz-+ ztVCx-$=7uWjzk2W7f<13AZt(!m2GPa1lpER6m?*xqhn?u(DuDHs#|^INT97fz-han z@$>D0xw$|)_8ouZy}TC9%lIeRI0Rkiwguk)os@Q=KU3`*p+9T=#r-{0*MB0>A16Z9 zMRCvyaq`<^5x@s3GHz~!+B^xg^58U5pdbl0fCAmTi*m5gjmR;KA{L0yu&8u3aiN8x z+8ag12EKmW;B?#Z<F{S-hZ|AoPxF!Jji~L`!>s-AEw>zw|Mm2FcKtxOt1BEo2zwf= zYQ(#^-ow}Uvy?gG1Gn!WjsW-pN^3L21&T8;%oPn>Lx!@Y5GX0LI5QKHgd~JVQ-%oz zZ(xE$K6>Ih5VG|sI1>5n-!9xbcm6%gPu+d{u?u%RpiC*+<sfVc(#;>luaNwRd6BLy zY!RR5JeGe}o<p1$w?g2Iq8)JDg!3{AjI#o|$N+&xMRNplgBru7Mb#!C0Et>)HXE{E zvuwz(KzFM>4@KIG)eB3wwG8}<eS$76`N019_>6XK3CIx539s~FK+@+O66(ZdBG^Wa zDMJ_`#8;>+TBeypDkv)8W%7{kyGm$T*V%#!b4HSe|K0rY&c$L!X^NVUz%slSu;Am8 zt}k2Bpy~Rc4e{>*Z{Grj35gHi86}9-h+Z_96uOcDNM@MBU6^2#FlZyfX54~*vMolq zQYnO@Adkuu8GJ?`UZNmW##wK-d+n$N9SQq*5~X&7N-)H$#3LEJps-Nh8~-sb>EuF{ zD(eZ6D*ioV&6_`D6*zAsQHk5Slg^x2k9uzk_K=9XjQSd{q4vqEI31P5QL@OIKWs&= z-DUtC$|pB-3;VWqJjBJ+xWN<GQk&>#fT2Uwh@zex>;zm~C9Q>%1|btdU`3U!i>K!Q z?!~)pJ7N<@E*@)*MqBY?W9JUPb=y6b+}pBk_q0WjEPCkhtqUE&Lsa-4zc5FI<D&;B zI|tFSUa2eA4(lTEAd*vYGdnmR4ls!xrChf{=%lJjdOa=_GSAD!li3BJ)av!Gn4D@m z^y$e0iAzV{+JC$+(lfYl;DI};YHO?RxVyHgsrGK!Kit>Sje0YKott*C^*)cs7ym%D z&sPmFT?8PJg_dgjE=@8trP;nOvM1s{ll^DoBmn@&`12GyAVXjRjvbdT<8NV8&zB#B zHU`@_g^#4!zDxP-hO5}V^)J@8eOH{PDa^gX=Kwq)+jlS4kc|_z()L~YJKDaZ$+mA? z*XFFss|4k`y6#N;#inmRAv4dlH}b}|-HdN|<Jz@1*p^2}_hbEP-EQFIPdGe8y=%m0 z(r3Vf$7d2c0?xb8x~koKhSSE<x3zl{A;jgx2#VDzSVAf>E9d4<?W@~YH-3En+{wv? zeGLa;mCSe*f8xK1|Mb7`2V)0r{uXz9HcCxwQ0zqrs0ULw?h1j>Wl=7Z#am{lAugmC zyuBh4g(43tcy<oCir@XSq$G$?;dlS67?<img;$v~JT#ZzVbWllnpr<-vG4pKzc?CK zMER=__UI}WW`2r#Y+{X?u0jeVN#JDI(9HZ?jRYMbiAO)G5XFs?r!TbB#_C#I>n>lc zZfL3wR5e~?3x@)S&h&?S2BTAb=DkCu-m3EQs_BZ-GOxRMV8>{GbGL#Z@Q%PRtO%kO zB*n+&NR=^fHhFYJ?ktWB_D}Uyk=*653uh78_%#!MR2f+`TEFtaMT7Mvgw?;^c%+j3 zC1U9_8V;3{vsC4syza6Li59ra^L{YyZs2YV<7Sdh0Et7$?c4?it_jM8m`v4Ahd!BH zTsOm*0s%UKt-F`@Ub_EdPd|uytN!nOkFtV)@)L~7-_7YqF(31|d<1_Zp%FMM)(Tsn zm(vf`R{%nZ`K;zEz&EPSl;$e{38i>=%~udnodr1LzCve(51PosOHUZ!Eij*scCk%> z%CrA8zsTny`~`GwAy?;SK_DP8LCqC`s}QS)NTvZF&MGICPXl4``S4RA$AY_8d<xm5 zBfr0Q??=xfdUxXRAqz;oKmHaoEZ;cPy09?r#r1Q}+B+WFa431NGo<QRCE&3-v{S6K z1Z^HT?{kbSeRXN+s|4uf8$bC8?JckWh<Y$4R>9XrauLBd#jn8;NfY2xypE(^+DF)n z^iqK5dVHAhMbsX{I}>qaxSIvE@E`aXu;d|ESRI2fg<CIl0*^k)V{rA={)-pb>o2fp z7r6r;W2o`?7y}7T+GifChR-^VD)8qGV`R#aApb>wtQV*tOcjiW)s~JVoE4I51Re)t znQ`=8`xBIOe?rGtATZW(N&L0Y5{*89AKYvqM-Fyf?K%*V>7NJi&x80U%V%?)!TSSU zU4i?_9zg2>jF1nH^_}D}>%nIeKjW~?gSYAa1mM}K{sfpHw9GY9SlRErcmGj@{@rrv zFD7@t_<Usz;TO>kl}D!e5@<70tn<kjmEueIR{YMTPjO#@KR&`f6CWY{N6TfRm|e}6 zK*Gbj^CkG>-Rvv$LuDE0otW!x4ue!*0tn5!_az+Mb8vPed<ps>@$UcR@VJZP|Ej(O zPDobwC8U1!4!(qs;TV1lz65`Klzn>n2Kf^9V1I*Hn+=v=+>eNvXubrzImMTdZ_k23 zU9#%F1c%@$KHZbB=hAzpPoJ5*_ey<BOZ^que|>t-uIc%j%E}sm5n~nN*E)=q3F?&` zW1$~J$eu}lgoN`#jj;ezTQTMbE-&vtym)%*!0v|T=7!zuGiUgy3)PjC)g<pWW6WB< zKC-l>`46zf6#qd+hKTIQ$j(3tzF4g4KhOpyoaWYd;XSC?GdH*Ab$AbIYFk=rYh?fD z5AWPQMKtM9b9G${UpHkn%19l<_}(>r2f!r|q__1Qs9o0b9e6z@MHr$GzJq+-cR;L# zPn}#Jpqb>4PB;%(eu)PbwVI~Q`}b{r_<+Lp46^Aam&fC3GR{Ps*`d$v9%$RJgMIC$ zba3IYr=+daOZ!N4l-9GV?*K6U9efAG8ItFf<U43Re)}XQw14n@x4+Uvp**-Q;Dr}n z*u5#VekZfVUmq_o3A?;RtJE5KpjGSnIo%9fO$l<py}yg!0K#O7-@sEwiX>Ir<QI&2 z8DOYJPmmWExUOF?MrJT>tLK-D1qbHZ+i}U*?S@NATT`(8$tT-`%~9o&;dbqsv19vd zo7;l9hn>M_bM1briNd5F%r#q|t0odc?p<3HO!znu=0Wj;FaYqxm&9DF)j*Fhj*5ui zOu1-;Rq<Iyo5d`f+Gv(DeEv3?B(h5m=i)XrOcI(e-S5SD0>w`x?ln;Fasd3(+x7bq z)~L--M1bn2xyg0}j)#;YaA7FO3Iu&9o+KHYD2tb@x|%)GExD1|R0RVe{7z-{b}S5- zgB>tyWwG_EEFcjqJ@JGhTTvJr_gOSGg_q=3y5ML)6vh57E9X_RUzLHuz+>_+M6d^M z>t85+TmJ&bb|d*0xN`D;<6nSzngk`0^RZIbzi(*I@WR6Io}n!V4s0o{@VZOkU)Vn~ z^zX9&ryEB0?Hl>|$o_-16+fp$m!DU_p(aaF{32P3>~w4U7C=tOAr9X{4jj<9kFqeQ zP}tD@+_w<rz6EkEK(EtX3(-5Hy=Ra9=hB{2`{w5x!=Z23_jK)^TE6k(i_G)!dcVI8 zxGh2U$;3WaNwAofkktm4-x?5D3XNw5RSX!yVW_%a!lz)JL^U^S8810kB~|j>rh4cU zVC4*JZbf*+NbXyS0ibPfHU=WRF8b)`(&LXSqBuJ4aX1@k{jIj?NvQA!zt;hCMYI57 z?+8|_`WH&q^e^xu#-sj#i}xNrOm>KmeB|ZDSI?eWd>QD4caw~>5$}F`{{kezxA8A< zg@x)ggniW{NAJFR{~sUOy%4wu%KHy-OT?etyoPHc7;H}zn?btR>VAckQC9dBfPbVM zVUV!TF@T5z_!Xd)egFFqtFFEB3eI{h_7v3{Aq(Eh*QS0(o-Ab|!&bS%r@)yjWLk7j z@hM<Gld32wbd=#!IQv)cIbpLIlnm>!JHC46%+k)CkW#LDy7Ke8$|%Qr=fngbH-dFW zu+Dtae}L=heud->OZ6+H38u7KcIUlZIK6eLZC)2oX~`H0Fr~XaN;phO_QeOyuOLK9 z5pI?2R}dVHmx?9*<nJ}nSN5xKkH3Z2(VH|o4PqM9`_(}C4X_@-qK=$UvZ#w&)i|4C zlYnnILyX^w`_;gsc=$C42lo(%HQxde{`@e%l_C&f_4@s4Y-j5IYI4iU3)bQv5f`js z-?^QLYGB9?%v-e|p`F`scsr!Jq;{^y@pflQJJ<K9oe?B8JCx>AXhEDHd01BQDR@(T z3JK2&rO&{@Z)foLr7~)9tCsFp;I+hsUtz=1_V%M2`0r=`xg!$kI2Gym=MLi2_w`MN zBNKi1^-YD@P*J$OJ^W@zxU@9ffwgiSh_4AEr8al8uU;R7(h4Mb4>o!Yp93l=ynCMm zsZ#%b_tLT3-@E+uy-O$0zvsRKte9ny-GY^{%=oY3|4LFP<|nIl0%-j7JI|32uhj@3 zSI63So_~^;2#DL4$b1)ngY27lIo7-j1MnILG6l4&`QbFCO6%72Um%A5o&6V_(D6&x z`2_CRyAWSer|>k~7wQ}mI`|)_>EQT`ISD%vXoK!o5E3E2dl!BMA!OmQS+l`w^x`0- z_!XjviRYRw=i77}CoF9|w2!<Bukb5pJDSPz-qcA~&O*w<RkWI4fi9kH!^N{vx_DL> zwFti4N5Xx##7EO&!||ENcGLGfwp-TvV|tmAKjuTm5ZQwysfKJ%Y=TtZS_%tAh5)U= zU_mK}eE6^6#o{;b_@4jx=i>jk<0m_<xdsCQb`c@)<M=~tp?bU1xeeo`$5C&={#*I{ z{z9Lh9<Pca5<Wr~EFV3wPRW44B6ym0Ct(u~G*o=<By5JOw3Gt<OFgBYGIwD?wkyXa z9EDa3Kh&DvW<}ryF8y?{25}L>#X0rD`@)B8=cZW?-G31O^7Od{&2<xhDH#3!*|S*B zJ`ncgSQwIF^;lt?TowMX-6Ld=!;wtU0)`^;!eD{x10eJ%O>%1sf;ts~;pKTtmIePK zz8@g`QDuK!UB535YYN5`Haqgiix^)uHX5HX8^CM;bD(>jDeo|Y=i=a6J#YhMhSFcS zHwN2@O9$ZfG8$`*qiPOeh6NETN!f!|Y;Hb+E|~f=fPl-L>;e3ILq2-;Z2UX;`J1z6 z`JB{!!W<^}XP^khG6JuDr0=U9BMi7~!1sR4F@wC5z$z3QBe;;lLKW(?Nm4Oh@*mbx zk_0+u<k<_17DTFq^Q$o{uT$|lHhlZr>?iT(zV$7(d7hbnJAdj|@!y^zI5lAmJ?<Ev z!9fyn4EU_Z1Y?dr;d3m-_sOxZFf(wQTQONOU`K*Rjr7-JJnpjw4tle>mPf4=OT`6< zILJq)fdxSvVFc=eyh5YHZwg=$q3DiZz=*aGYChT=T7XIIX*oLH!}i7hDAdiq84q`d z=-=Ik+LWiUQ1~=3b~Su|wbHn#*IrIpR1i;2L(t{?yJ-aSgQQIG@;QJH%IEMd@L^tF ztB)w3Q!CXvAQIQqs`KSDR+Uo0>&&DPg)w(EX^+%XN8llMPd&nbHl66K?{Po;U2knq zDAZHyJ!4dS8^ZsEFiYg2{8xBAi~?t_hwEMobaw|{s|zC`0Tzq@#Cj+{hWy1uQ~%;- z32!I=8s$~^A>H%#_#f%*pabx0{{^)GuVPv|owua+b-evUYFq{N{~GT<!Q1hh_MG>> zkGDT1`s3e#FK}>H9T!glC-`|*K8OB1dI96|_Y2%fX~%o8mSM=T>+yc41e>fGS^Q)@ zH{%eSF5_FXf_y95rkW9`r6yA?8Hjl9VIyU!;3=5XamyAdqn5Jd_#ZN_a7D$3FreY3 z-S^$|<dxvTy}?FbbyZR<(2Ya8#*X<b)p#JxpX4PyJ^*}_Y}hovTnNpvShvkgS$UWu z!T^vOMuEKuS>Tn>$?agk&Aa?AO}kx^kU4`iD?FK#mxt(4R00tJSw3F&hpH_4sz{7D zfH~Duc)%ZaAKV*%ap^iu=yrA}{$!k{hf6Vd@lqk9YWGFVJeP7OcQMCUA^@$be5N3d z0M<4_YjB==0vt#CRx%^jCJAxqgA$QcXiMDVq29+$b<IKYon$>$d1^J+J=MS%-TVFK z*2DbT3mG?Zvz!reC3hrZ<5zOGho+ZrOo!UVjofXx@}>=70$c|H*9M$V7pzx^D$T^< zEF$VPOwk1>4n~)hN|Wf?1VW*Pvov!~)hLg;L1`N5{FOd$X{);x?{GC$TEPaKdPFI? z*5FVPLU^@LTtAZRha=s!pm4C`$hy8GZC%ZEu}WM!(mP^R3}-{Vy`h%!rbwizF&eur zzt}ewZQ0!x*_t6+B0B=TQ|<g}lCu72wEsZ3p&{HIjQ?Y_AK0qtVA+x{R-Ofxp*i5{ zxxX9}$9fPgh~l+0*>JMj<@jZ?!Ud;5inc{bNwoj3;oc*Pd9IXtV_jJo0I0|i^Mg2H zG7gVpr)yHTmSTR?pazt*Lj(;18)#pRYBofW?ky)yz|)Q>t|5dQYeZ56YuGT;0a9!9 z?rmp(82_*P9=+vMAYw1>X=!h>vB*^4!JhF*NvCh>$i`>xxcAP5O}kn~t2zTmL+zL@ z=G6`#onKDzE2DauK|zHGBgKqgmMo|gjS88_i?pEb4p^!@i6sC<kv1|#e&s-tU-{iW zOUSSJmEY~NVqD=@Uiqwv>T|yRq~TZQ&ly3+5{rH32Zdi5@!<8f{)%#sySNanG23F6 zn&c)M?Hh#L<eHJ(4oZlPEhBd`zde}#ft^GUHQNyb`VRJl`_I6YyudCtRt2h?8mcc| zCQoy$w&lWUbKP*DV+he7-Oc@@I|ho~aA;RdlcU*NIs|c(Nz*si!v}Q(v7bdTM;;{F zLE2tQHK>tB?PW5M*;pL~=BT%hM5CyWh=3W)$mt}!GP7648*QcMCk{=|&LZCRi_eb? z9JwPLsd^#0E<4L<sc;?MGWzh=ZHuQr(m&I@(OsF-RU3fSOr^(k|DTDuFsLTaQts0l zF>kBj|B9Hm6{4)Jo8}YG7P_e_%KrV|(q&#Vf$-mkNtO+9S@xUL=h&Z4&>dd!$!O^K zak|Khae1i$oH*saPf%Xi4)}eawUiZ@bl)eYL6vhTFqfnq$j=|%HvM@P^||lCeV@u= z{F=Lx?)%)0!w>(uey^wxpY{ANio()Vj3m*Rf^RvQ38Ll;(<_ks{(kcnW=UM>>G=Yr zWBo2qtbzDlHr7xi?S0OX&0j4dy^DwqV=*AolU$;NgT!cTq?-Dr>Q}^9@IB|x&Dz(( z1%@JjxKPn&H(QWODug>g8vpRAiW|}Bk)=>G?p3%QbtQsL&8-l)!TaJ*1>4($Z13_7 z7>&ClcRc|#08A2o(K$j!(8l$URViPyBNi>=HqL^4SssKH8!j|<8NVrVk8;SBN$f}y z?L~cEbrtkUBkCPAny?!z<q#3>n$19LKkynnP%YES14PO9z`B~++nPW8XxqjEAKY5r z+H|NX)8@SAbE7@szP2Ol)*bCsmJIFkZQ+`lmieycjm5Q&TSo?h1Nk0PRp5zr<5_a% zw)XJ$=B91oa+ry+rgR^CF8owc>_xux`)WQD7oB;QE_Q+#q)hc>1hJwZs^Zl<0P#Qx zDWh_Y4)lhYJLO?n#%9tGW<iFjYyv9Hq?D0XWdtKfVr~jXgt<Uvxp>#~y|<x;|ADIV zBIA+WsB5^9eg4FW_**_d?)c&NchX(%c~Uvq#B<b}W)Q53?Q8||=scffEU?b>i@D56 z{GKNg;Z`n{&nJZL(dg0jM=wt8=pMExhQlqvU`uN-bY0FvWmYbp5I(U&E|%a|P~}@g zz$F*vRxY_?CFP6_!a~mO24fPFlSeD^8Wbo|Mu8e!KuU2)iJO*?TRq&AmEk<Sb#KSq z#@XAIC8e!7&{5~Rvc(%{eD6Shnb}u-V)H4ub;$k@4K9|qX4E*(jSO&J|2pEeskUMT zS&+#K&na#_2aPCY3kFw+EpfXX6@?XawY^lp3e1AIsgt6Je^6i&gwkRb>o=0^4fn}C z67Fi7+0Yt^@R&v9HeT+Vj2u_2n>!BTABbkY+#bNM00D<_eY^nk$|0SOtQlPB05(#X zBAqTy<fxPeza1xs<<P;>$ee~9Y<^__AF%&^*;Vv7zZgfo76)g5YW~o@ASSjA<H>5= zMm>B~e#+*tAtM4YoJ`&f+*F6AsxlISI50MseYk2+Rp}|iLvE+H%x<wz4zLh-q7JYn zGpMb|fFr<|9oqe8zF)MD1@{aT7PGd-xvu|@w=aQ@tE%_E=ib>TnaRv#GTA4S*)mJE znIw}v)1*n;wCR?%Y1*_&x}`g`sgzP$N~Hw~(uyJ=Ad63hhfi84f(whwQy+@>S3txk zqN2~I&-M9KXma!a{?5HKnWQNc-~aP3+|0~f&OPUM&iU=jP+fem$x@AMzS8;g3{Dz1 zt{Kldq^m8zwYG)*YyF1y8{xmf&NF9A?X5L!GjNjPtD*Ru1fWxfErV~ah~iGMiEPUu zE&*50Ap!HgDo7H46+FrNIa2~gr|Q<Xq58;Y;*IR<a%*FpzPGKfV`>b07_h9uI*yWV zzRV598NdcCc!K5)VY$d&NfH8r-2*5l=E$)KQ5L1?Qki}ZE5))po%@*h!+K>&ffWhr zbm!W7*Dfw7g0Z$>TS1<yu()vXy2b7FT}<jS4KF>n?kd2nF7QmL&sX}~bM*Hae_VGc z>%h8mONSREnxM!a+(){GDEIR^f)hI3*@DdTr0=Hlq^IuBxc?*Sd7bWYT%~sS`r-aR zw0_VI0#>HalfIkIPwUN<`_T?RKi!U^AE&&V<ulshFy;OHkaFIR5AY@A*9qS^e4`4m z$3CBH5fKWlrgTFS@Q;QfS_zXP@>vTPBdp+2tr2>gY6@wG3t#FcjRqTv0;)i$zzjpj zq~1-w*0^~viQGugQy@N(YQa)c@hp?ZrA53vbc$wDJ0W3}^q!*I4|kl}zj1EyjWWPZ z?t6C`j`Q~zbCnQdM-|V}HihfGh{HE#QDQ<9`Hs)U>QmO9X;%M#(a1E<|G#Ktn)z>^ zV>q0Lzs&K#&FoTAz~!~T#Q{%sHH_o2>R4^fTw*~sVf^<e7D!kg?7c;US9hKoe|Paf zM4mIgzesPA&G#Mg>DYH*Qi)y=KiLR+QAoC=0>vj4XdQV1wa0*jz)>RZi558d8qs>M zlt@Z06bhl&fupLypv1N+j;dT~qUv=Z>!*BHD>n?rtI8`XGhJ8Zn5x=Q9aw=IR3AX_ z(WEOAg)Hn@@|(#Q!os3tPagMxKsXyjQ|&PW8RJz7qc@?8K$u1aVHU#gH;A-RCB+5d z!f>u#DF!FxvwU*~^5p)CnTRr|WRQyE1L+8nUpx2l)`dauZZWyr8(i2Ho2S#yD~J!p zW3jKsOhbLAYZu!0?6EJbJ>54%io((4=RcoJ{+#~DSh(GX%LHWiq1+iuV22IEcLKQp zaxK6xicr8tNhyT7Jvf8R#JCqesD&P{mddo&OAs8PCCejLSE*VgIsf*dY#2}42XnfO zu>WQm$Bum!l;#fKzSjDmPTPOa<DKQ;Py56-F<EziJ{zTWd2(NhyLW+ClE^O#5iAsc z1cQShbaEzCarK|$GUfkGW&N1rGCiFv%4io6LQ3Prbl@uSr%2onLWV?$h{QpBmzpM@ zq*Bl+JyO90mGQb9ByEYs9sSk@LyiVDEw_E}+b&CR>DohqPi6%xwGDMo6!JXG@~=cg zGO&N2T<+fo*ulLU3kN!JZW+iWS;Iz|X(&EZM1GWXpeP?W8%7*F`bqX4rT7XS(?eHD z@j={V5%lW)aiphFjX(OTe}4F%?~1(~V?*tCwVnD(SC&N-bKtr$3DbXtcuHQ(LW!Pi z^CDO<@J7r$YB*9J06X$dc!daXXkW6|Taxd>W`cfQ6N^>^HKHCS0S#2|8mcTv!YH0@ z1RqH(B}k6aLFgNN#f45@paLysLt)9Ylq-JfB*p9CS%{E5XciJStPrmQ!8~9F5N3kk z>7R@LJhZ#DzP<av=5M#QZX3(aH<|LY$DVVSm%E?aS>SLK?0ha5jiN-*mNi{#E!jg0 z*6*f~{RogM5heK#_IZ&=(mr{shQ&4VtB!@S*a8RkD*2LGAm0@T9-%k6pa|7+r9vC* zSkM@X5|}G3G%}<(Jc@;hwj^W$fIfDRuRpL`8es(jFA<nz&8GCkl;usYn_<!7LFjs0 zo~k(s+Q2A6mSNGc!-vOq913q*Q-!=~Yc_=s{j#{M%ye)oYuI}5;MV?8>*O)(X#duO z%f#jR3##N7sutjFG&j)8!{VC_j=)Wxj_!Pi9WpJYNlZ_I!q<~oiLVlu6H)R&CwR=@ z(WfT>#<n?NkAl*{#XsJ4<jAgbfb`;msKXI0So~s%+l}b{gInb{wjKmzC$B;t)}02! z<o&J%m8`sS0r>&IK8!!4OQa|~s(6W*crtK7|DGzN31f(A;c6nM5mF120f`*HkV}@l z_bJzva`>?@R<md1SC|2nFe38aR@i|m<eyf^&sCrgXdQL|zE%kyh{2)vAt+$lpoR?t z%|61LkSUQ=`zjQS^fm)j=hJVaMYt~YuCers?xgof>2*>J4MA8~mRwRwE5%>pv|%)S zt-#AlcZ~8+QjLnV6%;x32vbqo0$y$-9HQ)#>E(i)s;OkaYNX`!a!HU26t+id#b~iF z>b<kpO_gu?o7cRBg~M`7+^w@#kCl~FJdnA7^0APv=J<xzky7K-3OxX{zR<N8VJ1OU zB`kCeCTR@0u_Q@1fDfHCYywnu60E{}BWKQ;S;r$TAW;B-_>bVoa4bIa(3vw2ZEJ01 z@H>aT<w>>}I-xQ7ZoYT`RK8v)rkC>A(0YM~5l3vCIs%a(rH!E2LNBpWc+>%@2I5Y7 z>+(D9U{8PKBX761;uRGYlUJ#0qzHR_5#C`3MaD=SV2ybwiQ<IGgGjjU18aq3aZ*h1 zxypCZ;#9Ma+Zn<y6%mFfaG=@YS_vIuSD|a0+Hp9%b#;yJL3Zc1!%k%`u!qGH$WC3h z_26>Xf-3eVjT!l8G3IXcCyQHux{^tUUS#@Q1h`-!slX>q^)TtbU<RTI7(rztHC&T& zs3Ge~D&ob&_Y9!#i0dgQnK}WIe({;+U&J5$(gR1A&?GGHygP(h_!rjyM>&rT%MbEt zV0R&e0^Jd|;1Ah-$(IC_o))cw&J|gllqJY{joQbMzj2e+hH4W^!WEB`cIlQgEGBQK ziJn}_!H#i~t(4l#1>B1TjMJJWYK1(2ooAPT`Wn_a@&FZviDd)$N%l67uRVWPF$x>y zyU43755X;D=)x#nlp>DoF$vH&m||>>M3Aqy*uN}a_V5`@?M<;;(8B#?14-6O9s21{ zvF@IZZ(UO)-@vXdTC+7SFJ#*X|1^0OUxYmM9eW%7q@4hqWmbyWQ<oqMVJo9UngKvW z9L638JEHCa+)p7-dL88j<S80x2S^}k@Em8};cMTP#PHF-p+`Ag@>`vN%s0!H7qQPF zKUcG7S+Tq_D1yfYPEXMw1)~Rv`UlGpgz2>9z-N}Mf)X2r0<;~W7_>ksOc)E4{3&wn z7MInfcv7UR_b4u=+>?SRXgP>aCJrI|&Z66|xn?^ZM0{{8RZ)n$B#lGl7l7!k;xQ`` zqM*3kwUCI=LKi++13r1*X)V(nn?T$1U@@DQY%g+w9#P(L@DgMjN5&#8BK@?GQUN|` z0K*X}-c%w$BBeIpWN5(T^B8orraYWCfE&BY7pQCi>;Q|Iab*Aa@F6VdZHG$p@=6c= zuoHmYJ2bRc{vsB%{AE3B(95qzhc-g&RbWec=eIZ~<AcUxL2`c7Uy71hc}}SAz}Uew z2&f9;N!ob`L)-xsAvWnCX$na%CkZP^MOff+6z3MB8N0t+k6vnn+$~5&+7$2R3UYpB zPH2B+rz4-p{n+8I_I=;K2;}GgMM{x<`Gv(hU0?iu3hWi)QXmeZ{VqZv4fv#SX*mvQ z2HdmZQCA?8L5sCCxfq@`P7oiYH`f7^2-sTKt7CBgLe>$TxC159phX8lr#wa`Ff$s4 z83_2wJ)FA*RzY*wwmgrSFKJ~Orf~{5G(HnrtRGuL1DH#l*SnZ$M)ohA|LA8vQAm?= zptP{C^Z+aNd&&YmU8l|FN}8P|+ida^tVf+91FJJURN3v6|Lp9M=QB4}v&i!=xG+ya zVIHmj4(M%T*nt=ZoW>FUcnrb_RPIM<8<H&#bQQrq<dBW>yODBxq&$aL*Hx42po`$n zRcC884bXI*`tpDy{X?&Co66k@oo-%ubY=7W+Q^>vMc3~c+7%w?O(bKHz4Mlw9N%`Z zz9qh=p~LI0ZR)7s-8e5;R-JghcVJ1<mvqz?kF|~L+q!1{vW^CKlcTm|f6v&VJ?zQa z)vj1Ue|4lc*S@j6dDvA`urwTMGn-e@Jc?-?NghGad}^`36%!ce^pz-?CX%lxX^qO} z>xs=*$q#LjUp~S9at_cJ9|zG}ifw>)6`Vr;1$k5j%mxXWb|lR_VRV($k&MGhox_gu zyLzCz90oY5{A*lcT7lJw2_XeMF&}3*vwF>2t;DN}hRJ>~srdLi@fmyMGH|Iht}6T? zd4^~l=sI?j^7=HYCnS)jDk*}NuTYgt19lK{%ugP>>$+?U6Rp|TMISrd_VIS$(zg<w zHd|MNSUee^5z|Jc7gLT;H)IxWuc-_bT6J2AKLBMRath!gzXB)@+;hN|N*uC&pSRpo zhNs+AFN%|yj1D-`60Dcj2;2c-yFs5=O19Du4&L4kF<7h7tZ5vktWctq3~#ut!jLVB zW<$-6))lR6xP4G>)M(78$cwHQ`OC}wMd<qUx4<h^TRj!q0<VB5Odepr4fd24FATQO zka%t!+Uvw4!7Gbrw$PApm_a$QEk=ksDU>tCRNL)#zE}{$?NHK|N<^B<zx~o9CmyPO z=Cwy|JI984<j;4rE_SDUfobKJ<N@ZA|5E`e-kpmMke`YL-@sqz+Tecx-%`Gm=AKIj zGLzzVcq1qrLIx})VDx&3%fI^mL${+ovSc^iUj5x|t>-(x2vqc{{KdSm$sEmt(@eMg zvx>j5kH{l@{5|Lc$rQxnBa;CMn52ZjGvum0rpKniY8s$Vs0XmrL}}T~+!=P8-9R|4 zo{<Hafn{M{*2Ajge+R?=edKC=fYr>CzZVrxRzxSSA^v6ZD!dxBxdFT**^|g?xe~h- z87e7tyR8f;wYn;juhAKzl-&o(>SvzQ;~Xkg(aoWhTMtN#LB|Z~Y%=ru;P*qeFlcM} zMl4F!Uix0FVeK&Hya`HMaEGJh$AHa?LOFgP6T%g~N`ECx($ndlp{k%lIiz(5OE5D~ z2oV-YcMo0)m=YWdw^V>raOMT;VP5}_mBSlXetdpQ(;_J>Z66yybS7u{sn*{4f#~zy zD?V<s+FDvo>-rWCG|unsZtfi!UMJt&ABn}-vi7B>oE7!*XL>uXl>S??y;jx>)J1S4 zeK_e9Y&;4lEPO%%jV0_WG+^uKq59HL#{Y~H;Qvz)^kUemRFKkN&+Fr9>!1XpgkXR} z5#j{qxQnAa(2Ayvlwcfc87aXi-MMN%hnu-c!GA%LD?sNc`VmqXF}bkfg94HVFwW$` zGlBFJY;R&o&Y3egOA<@hub02j+WH5h-C(dAJ9>L>Z3R136J8F!dm>!3d+5>iyJJ{d zyTKCvTol*zKDua4UTEae>IK+k*lUW7s)p+#z^A;ME<)u9=PA-9nSD4K&yXxh5uqaT zOfoo25rJW_YVt_fc6E5PzuNDw?jH?bP4c8^-^iV#`}U149kR$V%lf4w`})}Zd0mk^ zBb_v#lrM?o$Jz7g_mx>qm`_h?KBrGyay~h8o1RbU67#9vh53|71^8a`Ns=4*Vs$<< z+|7tdSC+mvWuGh80W1oS?9BZQrg5n{r6*fkpTInJ@EM(7TxQz6{?Vb`HDLrd2bPCx z_++kG^l0xIQItzXF^@f)yP*2f5x_^y&w<rmER-u617CS@KC)kUvnc`uq!<jaMk4tK zDn2b#e5m_LTt4QMIM1}k0L*FuHZ=mb_<)eJE~PP0=hf+Pl5&ZH6ya||{66w^(8455 z6HRax>2h`)mcJf|^>4w3KK$%w{nfF+t5}^#EIU2b>waimvuOQp*6>}6^~G4ED^K3U z?#t^`rX1^Yo{EQafeqoa=;FETQu9HIKT>QHO>gOgZU|;46xdZu1EO-75*!3J!e%oY z;Zw<lcODN%p+Ptx#bcA9&+|U?p%1mSy>K4?<X^RxxGUJJ6^WM4id!q>FmUtDnraWn zDf6J4h7S++iysh<3HK{F#Tt$Hybd5sU4X&D4y0oDGQAFG9bg9ZbTW;ay_B6ygppSi zu>ips@G0ovK9|s8a-T~=EOZmNPRxy7&zB#DIQQM~c`SkpZ8%h3R_HJCqjUKVzpvH= z>6IefVyP-4%H-h`SHh8d5P3dg9lA)Hkea(alUkD|r#C@Cfr;LnGiw(gNG@2AbmruI zqqUV!-uVjlTBwSz%c@Y{<hPd$exI*Mja;g^w{(S=EhpHQb9<^Et%gNZ(LGSUZabIO zFpEW564ab3hXk;KGfX2F;*>H4a>};}VF*GHrG8Weaur2lVmV?=>3<-sov|&f>sx=u z>S*f$cgm2;3y4q-SM45>??N8QHNEm(oYJ!72pm;_Q?R}QQUUlJilFujw<y``E0L}p zhCKM4k~1Qopd?SEpc}@#@U^DV7>2WzwMMh0YHFvSqqGZi-aVM~D<#Q@3C#E8d&&@= zKzfJFvSb$EQKk@4E}1IcjEZNRr0AfOwd-Xqq1xII9j>Ax7mi;%@o^S@Nd7y9ekAPk zh3W9-JK(>T>&TxRp_MI*C|mZbLL-;3XVmfg;P7zE=l#V%4XI)&k?Arq({P|j0d-{9 ziTYvGGSau{K@8_88gq$zQMN>ZL8v0%m+vJA6wMfa*1L?KVNG*Y7%gK^L@eFSvtS@k z-Cvyd4C~uAG&Cm|CO%uC6K|-Pd~0xPGO(8Y1&dHwr-)17@<T33?W7|U=g^TUOO|lX z<?6{`qnxEDOT5~C_op5nTS%+4Vg7N*E%J&BkI6SPNuE?zXt)~qFQv~ife%Ms12cmp zwFDxyV$S0mNAXpG&51$Ntoo{$n2AIx5BFxGG}*`w4q=Mz>{|3$*7nrTS{Ee6K;>kA zWsP`b^7Vxn5cYx<dtni98&Qu6=q<jo_-r9qNlQgJT#5Bq6Ly#r7lY}nC>Kpyqa?zX zsGL)o&JtSlaO5JH2YZBS#!Dk+WD??14@_dzT##;3OnKl%=>byu&2f9u58f(uqX6c5 z?)zXXgMK0!35R^%(h_vO*yeQjytXVOx3(&Y&R`HEo(eD^ONjCph#wRS`M#CEUhA#; zx=^6eq-&~dNZ#fPANPe>PitB6_hLn^*RhHMo!$`brJfdf1*-POD&zsEk?TV8Kn1(r zTdS9S?0Qd?Ne<A?O06fwFO0NQ*KkVlR0{W@&{P(b-9@nWKyji1uu#zeG4NJY7bX)E z7A4D5I}j9sL`x2}nKun4p*ETmW2*VyE)Qb{7Kfsl2orKrm?O+-9^<|AhVw2@Z<t~y zC=J~Vy&-rAZhIh}BD(Y1Yj@I7>-X2z1Om%RZ&*yWp%lY-=g7VaEBlVsD%V*9>=O#h zn8(?Ot~|hrWPv4+1t=DjB=xXxmqNGAVPBpzN750-gCLN{^xCiwC%{dnCk6DHR<$xI zM$l(YmO-z{MnMk!uth6^0H+h2UZ>XT+;<NqVLlTCQUMg^+uaT~x@GfwAqBvYjlG%{ z0LUxJmY5*{=)p=dvdR##Qv?9w9B)nw0B3<vz`(S^-xTcPt|87m$`jvL1c22L00#aU zTFVB`H7Ybv<!NTa#_uaBwjd+20-IvM24^g=HO+!eYL60ZxLe`7!-fl0#LLWi_nfeC z_`L)hEp{(Jg0a(XCO*cWVq!Qq?IPIN6bAIjG;Geu|B+^>zf3GlYuS0G;lk0-E{IB# zf$tB1p<b;p)EqeMSuP{dK34K6*KnS%1eN=gq+rVO@xmRKbcDxXDFI66JROJvg{$bn zi0buCL>42dyMWIm@(UrhPsQM~?;cD-E+cLLOk4pkyGyJqMUs&SkzN`+4jdvOA$DA- z93K9IHCerMVYt4drRC~3V2uKmUl@$+9`bs7*MRGJo)i3Od5?6S@ImZAMrgJKT2Hq4 z5=u`j=ed=hsj@HAO3zdhleC@_b9HH@=i;z-{ldD|@{-f>mV;Z@Tww|umo?S3mKL0B znSbrBk*gvR|CvZ_i7Q%HUwI-}<teOcI$hUV87K}LBi5CP<wJ|-Ro7Pr^8JROZK!SO z`hM0K=`csKTLbP`ma((CW>I#~obZ*@Wt-;HJW4`>%MxFKc95iro@AF34w&FVB?KHw zhB0Lhhf@`k3B{U#h&f?}kP9QEVwzJ)EVP!S=}<|mnmGjX!H_B2LBuwXwRE(cI(6nN zU-`0(8EI{GC)?Qd75CgjB83<jpZqX;S-!43%GcO($hHRf?_5H6in?@Ug?Zn))5>iJ z&-g+shr?I>JJ+4ERkF@9+K-RVZauh^eNle7YEgQPNAUi+b*Fg!`_Y~L`(t-sWy=*s zXU+$rpS!;OqexgO-&ViSY+h8y_D{afSx-QnUW^QRobRq7pQ@Tj4zSG()u}=TGgYU- z0P)Ru$YU!k$W)!SiwT6za@A>|0beCjo|3anhVGQBQa5e7eG#NzBq!A@sT&6Qg($|P z`BkHL`7~yc8MS2}Xj|RJmbWd}nW5gx(jwuByf4q=wB#VA`x*JlyfSBQj?rRcrzc;3 z$Ud($uPgr{3<^YYxTq^HudAq;!xZkCVl&2fNgXP{`tCYZ)VqQ05v*enzBSC-{P=et zKYC03Bd<Ju!$(<7ul${bzhh0$J@*UwnQwiI0~NRmxSZyZDq4VFbmSOO1~8?C2abaK z6#Ay5x92`o&RpDUvFCbpM0~(mD^=bdaR{kkuF2%-C>57Qs@oi;zq$YJyQ<_r<*#Zu zugx)iqVqOGuH$?~ZDc-*L41m>pS-7`<L#_yK8mkCWse3q3=}<Tfa_6V6HxW2w2rw8 zI5~5v3RFcgp7ND|_LOUpr?saTe-A5_e~YqbZ?TZPX#p$g39(ly!g7@3Hc6O|J(LT3 z4$-j)j}M1gil_HYaZc@Es%Rgn$}3Nq!w&a1e_6y6Q3$b;^g&g2Ae<#t)d7+QcRB~J zNHQ2UcOpYLV^O78g7UYny{*2!t-X%?gK?M|Hg&S*&P@&Yl)r(`-K{a!OnLF-Z^T+( z@|2dk-KC`-2$1jw7Aqism;_kEq11=l8>yUOI1vFaX@vaVxb=Vxmx#zDzc-=_`g-V8 z<IYvjKKJlP@7~A$c<Zf)ChsH{FSOZ#HVXlh0@9?zZx?tTk}9+j$8ec5GO%h<9)8NW z$GugE@VLD8fR1e6^^B+d#E>%!dg(pRUZzhr)zr2eY2De=y}hZv?P(U@$FjS+Yuh^N z=5K3)?|tKytxusBOlZNpko;e);9QM1FGo>FL8lM%=P@WuunNe`#&ylAohYqf<d`>` zXQP7aN=m^Phu^zO{Jr%`kQQ{xP?|FT?xRPW<FV$Z_|U^B4D#uR*KWPev~RR3k*G@4 zCbm4dcjtpydj=AtO5f1I3G~e@AToiB8Kjl~`KHoF9Q3n*LtaC6WW5A%pw_QvamMr8 zu%q%b%yNtT({CUB@RRJL^5Vd!<RKb6<>DecLJ?n&WF}xDJa&+LmS>-an-GSrjyUZE z!if!Pt?@CVfMTj#Z04BBTgj#BiCM+2>yEU<<4uk6AFv1HSJ|fBR~=D?Tw7C{U<dcz zb>+62%@nIrkN$YkA14qfWi03PALo%(RkM>1SP?-~N<$?qP@u)*@}TmYL4YDqg+C7> z0*+M#EApu0`$O3tAbrurSG4)dK5^TZHP+_xw)L^LD;77-pWleX)VgO;<ccPSYF(l; zKe1*0!d)#p7qql4SkT%+c05K=);!kUAgnkKn4nA*uYi=Vtla&ya49;pkvoE7Llh+o zluOE@o^egdtZWbrPyzD&!YCyW>@lBU=KnmxekcD;+<owudnZ4NO`*W%EreQxgnFSn z*_nsrNnnqFGk7lgv?{0_az8Pz>Jp8F-K9*Ztq#{m>iyo*kUNC%gA!JfMk6!htpKZ3 zNjy>pr$7cpfBHL%F1oV455ZSW+q$~OnvgZOul>qJ)y>V-bR>Fu5;&+@Ue}gv(Y&Um zd2K9)I(ci%V)m9U6wPB_XsWDgYO1PilFudU>gUa?uS)`KH2?VH1wP0X%E*t80U1yR zEf8Z-g02g;+EJ_m#p?qOG0>qRl-gOAS4O(jfLBirIM8!~v!fM2Y&gxmUdkNFV~=K) zm9=he#+)mwAXlAw7BprzkI{rHYe4=P`vA>4%|75ijlan=lDrH{a~)Wiv?IlIzerIH zuA7VxMTMw*>nZZ&=P7twwIa{L+maKdOn|is!1ZvInSrgp@TRdjQs1_}t{q=4Le*mK zZ<xs!Zj}SAvERsl^^t=I;`{+DH(*#!u_&1<PjwQQiB8Lf@*=N2qM%dqAtK)`WzxOv zD8;J)kRnW>R9_nGj$T#j<CvAT?(Ckwy}2uS#9Ph!Z?0U`o!4w>_MkvwUDvke#?AA( zcbB!>+I)HYFt4QhFG8P+A=|?L8=4woqkv|yua80gRnp(7s!UqHB+{w~r?i9#es4** zH0*M!E~OXw2&Q;@r<xfLlRhg5t7g}A*Y4hSjpm4ysEjv?#-(j*cOKnCbgs6w)pTGp zOKut8yuw}47`v~wao<SGmhqiUwe2;{%{A?{6ptmMW(wiT^cc*_7*w2z9%HF$B?_k3 zjAEgJZV@S;V+=W{2Lbnu=`jS;sS7jZM^JIyv^9oXEyC0NH=zGJj_lcW^x8dCH80lE zg33E(p~l$5waxoRVq3-!Y?hzjGS04Ts;RGSYO1ZT!5}1VyDi5Uihx5Bw1#U-ocecL z!;vuTsEJ6z@3m$N!1d`h45Tr0kMV_~lU&p5CpS+)8o?kfAHur5d)s?Enmd}dcXy99 zwKsPzXy3aj-{r4vsi|qLZfod?2g|*|SdS?-*wQ{)TDm5Y7>LCN@VBIFw6%4xmVL=& z%xU(9>gz+^Ci(uBN?(V~V$JFBR*_o(*1BS2dL8={-q|iDAufnqm_W&ofsBK=9fiXP zw1s@0GRb+`wp0u^s0@<sK{8B;QHZ-t&l2Apdapv^fMXgIx*pkfSaU?vP!(%zjFnZJ zuK}fd1>Aa1!@4cknzj!3!-?7jwGGAj?2dh}`9o~a=mJnYikCV*brpM+B_%j|3c}>1 zU_2*?Pft#st&d<xxPJT8VfGel!F8ZP<vPo}ej3-m%b(ZGdHn{o|3m(~cFyak@ch^K zb={oTPvH62_;vl9*N>&I8&cP2^#2yL{|bNJn7Tfr|JP0JW<O#L7@rB(|C`1yJw5r~ z>G6M%KTq&6r=FkD{_&{`fZx9=@RN@#@RN_HpT8Xo<1O~Q0zc(CdphI#X<Yv<e;)9g z<N6I~|A+i}z;BN0@U#K^sC~e1j_W7z{A>I=;5WzhW9jRFpK@Ky?B6YD{}ui`;5Wzf z*Wvje@%{sT%5^F8`495v2|j?|9PJ-xPWGz!Q}{BA!o3RgrtT%^(b_|XwYS9AaZOUL zv8U75PUG5l`E#0!uHAq(f5@NHUUcmgo<rp(w5hx3+6g@O8o#E$=-RRLHG^_ZobJml zX!8~RobjUPuETRb;{7x!*QDv^KFFV=v72YM34DK?9b&IaUGT6eqNvi8khU^Ib=<GG zoMtBP(!FP`?j;*HE}<h(SsB2=4h=3iwP29{>8tXe@>lUc3O>7?9c6Dx?H9>h%QIxI z6+G5RmAT9X$b*%Zxo-c^seM=OWk;8?;K1M_`8If-FyS=X{4U0oPo7gGa{))r61rAS z3tcOC_8%k_$Sb!8b>>1eKaJs$Xpwk)a9H}d^Ufz7u8J~uXn?Jo-!oVlIQo5dblvG3 zztbHEy63H2KF{A(vWdidyzK_S_J<f(p)mfGGZ%hO&;cwyYlQv92lNcF3t^2jq^{)( zIVF}BKre#vWp3$g=6x_YFz%jj$>KB@?mv2UepF!v$Q<$+vD|u2z*yDd;ejeYIRIDe ze3e!1NOW#whgNpFD<b9P;jU$UD^?m8HFU4W7)}9>U&9zKA)BEmDNaj)VM;aw3|T#1 z8kZE=Y|k$q9(m%nHSFl--G7oNv&Q6KD=<0%7`=w}3*JpOQ^!ke2H?U3C8|grE*xGA za}1Xv)s<;u)k`)GR0e#NQSTir^7{O~bsN~BWl6U;TvlH3){_3d&Q3(HU@sg~`;r3= z4ssdkEr@?h%Vo<mV&%~fJG_YV^K8ZTV)7v(56TqSk;o&C^u@~SGp)v~a_O-5*!m;d zqN>)u;l5yPZ4d`Lw7RRd@$1ifmUVQkUL5v%!*nR{xdrfl1@JKlE1~s<Achr0WsheI zV#~Q8hFvm;AeO#1LlC1)<WK}L>BY16t!BNC;9dI{-@R78i{32>*8v_s!X6?&i&~P! z90;wPOBP$1A&UVp!2k&bm61SguohX%;SFKQq5vtQI!$R&Ox;$LQ9xk>6_y;j>lt!b z-$<e+QoC;9qII!oP2)(PFB<jvA`xG(rY4Ak9qMhaY|(2BF<;%hd3C-R>czHHHuo~C zr?AN5DJt~*o8RsB(?R1Bg%5I=cEO*a^j+jH1qH59GDQ^TJ4$m)@r2#y)0^`V53S~h zRDA9UH)PK9j}L3Id<Ct&8x}9wnCm!b_SaMegH=`R=<`<lvX1$yR?RPLDgN@Csi_7H zx&!q8WzOF~+M9#_IR*aX4SpTAv^n^vYj9oRk6?(M<N6&yNH25xiT3B9ucts?-{9BL z{v7o48eCWS2ed!O^*cagUgq@2c@b?o1={omzm_+X{$SkK;F>~TT{Eu%_uPSbdKv4l zlvfi-VQ=t{&;>vb0EaM&Dd1`|Ndu2|+*n#rZV!`~=cuo1*Q7)|b&@O^An<!V@#ea+ zklPbpv#zIm9sTmKU$CRyRV}{!ys|=+vvns|^tFfUJg)rm;-y$Gr?3y+KtGD$r4EjJ zmRyH^so{ZKz9Sh)&<>`BJFT#yq?idvEfy>Zre!+_8N_jucZq69LjoAmYNlj6MYK!p z2NqwlVW@AxdQHE!(i5y^=EiWce|Sl-x;lu19a`0Och9Q%b&lewzuy~Jmh4*93rrrN z1O2}S{U=&T{a=z?G*hNa$)(e>9RMs2rsO&?v-^3us#rJO{j|U^V?U^pX}bIV>8_ia z!t+)RFIl{Cs4rMu6X4ySA9oZ+`~%+LvX0LF{?2=PR{b_q?g@uIo-pxe*G=tGd1u6e z&%rxiH}#In8{)dMHfQjL*D*VIqo08PDH1-eaNbiN=bSU)xT`siBU!P5A`oiQvLd{U zAxlw-R3O7a9%M;M4+MsAd9fkVkSQ<HR06Rjro#^iDe!bvv*bmN+@{6FzL5%VvCAD; zw{YRQu+LiL3ytg#1njO#ueZ|GR1pi+R_D56?CRd;@>rJHm{nDpm_I*JQe)Mcvtu5h zxqPcdUuZ8ZD=V}Y{Loiik>haaOB^M>wA}SFmrL9!yf8y9A-?!!&QrQC+PBA94z9fd zxVeQp32xwv@8ob}oNs&?bg5KWp6tt;QwBw92BZW=iV9U0onBXvL$R))H_GQyC_EfF z<5J2>)lHFFReS;IdBB}&kcVzLGJm6fKwDYntE}|70;ZKL`eRFN*}N5CVdf{CMNz;l zH)m?ep<LIBWY>VerY5kUhoEnjgn}e_B9Ja$4Uok-$tEE%7JmKkEC1_G*#t-Z0H+h_ z=WOu9dH9@e%lss~1K=|!1{|VMA7pU9Q4@0TdXC}=<N-12^!veVQtk~XuMGf!0VNNN zTCH(FFdDVPSthfjHENd?C1cRHv(z)jW0&*LV6xZ_p9Oo=j=T+&F8~!m;I&}0xooy< zgae+_3G=-SCTjS(>J^IwY)EnNvMEfcva)(Tfiv#Zu)IGW(B+!j7Hu1P0%QOF$yl+g zpmZtgZEjw$VWBx-+s^Ko_dTP_7+cfCYexl^EiUo8ii-2&9W6EUVim|_Fc09(fK`dG zjl*ia0;_zdXfTR!mr@1`Ba~hpEZDj2h$|$>08Uzi4!<%W#7A0U=U#ba`n`;idN{|4 zWT`OHXAEuqc?^y1edOqx8;APXN9TRdkZ+6)G-5p3$v|@Gk*9K2yo4>D9z!8kb(r~- z8FyNt!1Ke|$}BD+H#Aid-Z{;|izpRk1cPieA49GOaEn?*zKPk0t3`5J#P8_M0}yQt zdXr(hU^eSVtXURGZ`Ln|FIFiyxvmT*{~vBDIX|NnZpisZdIUGF5Q@W~xUD<v4u>j& z0iV}XR#aL9-$;u8ofa^1K)h(RIe_(M2^n!!$dIt3GAHDowncp?VN+U?U)ue#pD&Nr zEqa~rxAerEX|8tU7dV{-?TMC_4sAoIwne^@c4K;qKnvbWkEF`8NIwX4!|#6!dXvwo zdXrtM-ei}eHvty9h26qllooRNmueQN)SN;CK?TXFnQOX%t|;tsh762w|7rS7RxjcJ z)s3bo0tW_qdvSO}AukSg%krMvyO%HTzP)Gpl8W-%%Y#Auso=OqNJ8(Lk9a1s3Bg9| zwwO^&141h>mBdZ}O@Rb~+2Nf51tQ#uIyOeK25FVN11kC9#%hJ^=z@xU4tW&yIu=DG zRDb!<XKouAIrZt0vhwEb=b({n@%Jq7nQGT0qRT3Fe{+2NU-t)=g%fLPzZY(53P&TW zR;zNzOH+SkHw%wpnHR#<4+w6Q?4dmP0Qv6B%q%GiM1`9HFjzDkkB4!X;-OGoT__aC zK$-CD)CfB++>Qa&EABg4bQ&RAjI}WcFE;#QRJBSuDX?XONoai1c-jSf*R%Dfmpp*5 z<L_erc)#EmM83n&UyxCPTPff&18)g9YltY-ximWq60$AJmF-eGOA20vU@IbsG{caL zh?Ypk!EUY!kiH^NCGVlX^b0)_g)d+%r|@oy#Z(D_E3*S+R42B9`=;e0Lk+3XH&5R| zF+2_nmX*b3L2S1{ivr478C_HQ#?$+<a({J=FV|O7?LUIivzuysz8X3vU*mw_5Q<|B z`GvE5Er-aK%5#JvqyWxh$PZ7mRl>8eBO)PG63Sf6s`^)DMrkp7(yS@{iqH7P{*$;3 z$X4<W^~)#KPm`xOSyWz*9FCs3zM-3d+iQ>|j&XWy6ZR^0MZgWyPVSW4omQE+PNcC? zi@DBq8K$wK<fR@2Dzj^$>dZ1~Y}y>Yd~_i5aORNo%4Dn1{j23BOSd}^aF>?(gYI9j zzsbg5`%6mvbnw0|L0=<$jx*O6cLqvN?`2J*gO$*GO5AXE=(p^)u+OC4Gx;fcEr-oG zVDlHihVt}%SAk6c-frN*kZBy-0F{)ef|6={g&jtVh!L%}6L~WgP+iX5NUMOmtsp*^ zb2qh}462>b9eej)@U)I(u`DS>7C{eLEb}}*o~=5OE+hvJ7sZgGcg~!QFN@1ytcu@p zx_5VLd|hh~pBJ}3;Qqz44bjT_57duzwr!|q%cp0E*3%Z$qxvPEqjKSZIxdJc5DoWZ z;!%}CyPZ@=94}zrc(MWDg*IA0LAnt%``CNjIhZUU0>G;zBO1a|ZY@{#Yf6lRjG5Z6 zs$DiwA9s;Rr=((CO~X(YfHJr%)UjqRgZj~Ve0<7iiGIB#OtG8U)1Y4=i~!}pi3?{& zm3}edQQ^PXzp&o}|GAUJz^?)uOkrn6WMUdQ`)A;|riBZeaQqkli*I;PC=)gzx7Kd> zouf8_-&0mxkne;uyOw3~482#`av1Pt0vSwU77GRwt~?j4W8k$Q=|J*v=~3Ytsh{+! z%hyx=Jr-|neQ2L|UqwV`*k;g2EATy3pX;^s^e?cukP*nTsbzDn-=?*OheOt4S9Rf` zLxt6@VrytPY}MNQxtnphGT&7NhfD^1dpr9-To(xniDd{Hjobpr{DP1wWNSda7s}S4 zMI<Py4U;|~m0m^<-q;0G7KIwo@dcKD&pr3ty;u6|xcn>BOc=+#X#YmEe?M<OnhYV< zUg6|Wdlh(_vZDwL(gep+Ojri4+h*gj=UR{A7fO-Y?0)$-ccX2VzjvH99$<yz=-)Q9 z`)9OE^&i5?AP6UsIHI3ynAd9om4hpTkWuP^a24gXrT?}ax%~*bI<bllS`+JlBPi#7 zK&m>9TnkdwQR=@aT#fUT&jR_pS@x48x01Gy5@=PVQOGpv05hSuug`%*F7JK?jZl&1 z%e!AeQpLDGG>uK(t3&Sx^B|)v@`ecRVi)3B0ERrLCupZ|r36(IQ6m181ZAXfw2Ctb z!M9C&#b9Mi{2oF+SB_{}(#YpW|I^bG(brW}C9VJh8oE-m?u``Y=5Y4{_>@1HDxx65 zpq2n)F^Vk9B!V*%kd%nri>y>pLmEc3vLv<i<-lje+++p@3eXw4h*h@z;>S`qB1a=e z21XpO;rUU>g3A{n|6_DV;?VFb2b9mGfOdNMft1Lo@0RfPl`mQ6UbD4)ZTW3DmaKOV zZ1b!wKkccx&3)UmtIw}~7XOqF<~YxBkHYhTmj>>E9Q{}E+u|m^jssjag0_VgGF>AE z4yzbnQvx+f2NEm}CULj;?Q!fdCbUl7E*A6WT}i&7PY~O8RmMXu$PBG)<8k>RzTnko zir)1ZEuLX_%bz^XHYg8Ke*_JDFjwK5Rp?YGf&<(%V0<Mhw&2Al2yJ9xvC~=b*BK`V zlU8KaHp6FA60FRk1<Io+Qj&7W*$qk1y`Nh;bR<yrLRsL*(9-jx{eHMf_mARb*n=+# zJ?v(9mk~e8E4ATONF@t(B_^LZc+T2L;)?gjlB&Ek@zZp$*Qympv|8Q^cC?y);q|EN zQNWB-KVV;Fpcis4bEx#fq0kFlKMWdDuU`M`?CXHrXQpmqzl1zw6?9MN1s02F3B^OP zMR{&P%3SQ1cYXTPcMXn>4PNbi@y;hc_8s4~&ePkT*mfE;AJ32D`E%;?Mta^=&jTgW zNnXe4Q8aP&5%sZaec$=m6L-FdXS=69%%(8cJ^|TeD9W^mri^^Uf#6ZW0q7p)2g)h~ z1uOjcx$_tFtE63pNeHgs2>kUipXwe5Cm*tVVbb6pPudO;V<aXdBBe*JHk@EzT)WL+ z)%c>vk4JqPt6|&P?zq1~v}!xr+dH&YDddk|F}mWeP<T9Cao@7xaew)}@h*e0r|w>l z{{YQ569%U~EIN3fVKG8Dh2px1t;{gx#9KfYKwTZg-C8)SA%)TkeD$HreoquR*+7|6 zU4*Ymy3f3iywB8Sop&(q4{LIDtql#Wx?D}zAMb7+i0E=n11C=om~wTIH7!>h@O$o! zFEAQA<M)>P$0JMY?^`+Ee^<kDIJZyJPQ6f(Br}LgJFy-Iu=sgVA7oF!1tp^(Pv@vo zOinF{R!%k(p`50ZN?Vu}P)Ljt1ch(`Z%dfn7AKJ&+l>lo6u&VJQbssNopa!rZvI<^ zCw}+vckRUs{{Y;o6-tvuq(tIrD4CE(9RR3Z(jm1VuY&U5Cr(V9IKg(YE98&JA3@JP zhUfqFa-R3_=UK^(H$Hshjp+t>A9kRP-|#k2uK>v=fc40j474E#SJ`t!qy_SLDb)ts zikDBEV0+je`NOz~n?8a+U%jknTkzh8Z_Io)#qVeZU(y4$BNI=ewG_ss9?*pGq+A;G zLE&&{wrH{@zRBM|qYdiN2~54n85t27VbJERHpq+l3rDDliEpZW(Qe>v341yq3@tuu z0d*^bqcZs$Wk@9HHnA2&Xg59TE$kS&p-L???-@*H<5EBfL_AR#54g!DZD_Zk)(Y)V z_&9Q{dfHvjdCRte)!Rxdc2rb58>&BhcGv!B_3=Qyr?kW;9xCb|9bM_$n7F5LS#y3g zF+RQ_c2)ON4PDM+xP*dQVfZN?F9lNpFrCHO;l4CXwZzofSUE9tQWIaav)Z6(z(T;P zpvBK&D$If@)_xo-|H$5Psfm_7^<x-3;a@pSS1B-sdLEh{VLxyNs25=mY)d6)7VHoN z(lX@^h$@%3W$>w}C*sY~A~7G7z$xPk<zfZ5qhLau1?SFv+DKYqKfKmgQtHVM9IuY< z-*xu0)eX*SfVOno>Va(lXQ|g;?CffIs{5+ghVk)4G{1RS<2{LuzLle+{lLbz0@wc* zV=zMhVR#aWiUbk#LM;T7kWy&~e!KU+RjcmXyQQPM`|7-14{m;P%LBXfCSDUi>^;2V z$>oO$9-^=ZZG9)*mJLBaXv>9SAf$cJ1yvfdhc{(HOC48B&*$xaV9S%6AKZ1k{P6N8 zR~!Z##)Mm8v-l3X0k{|V0w+?t<s$xs3aQ=7k}L-W(}0K6=YV%OKO^+990Z?VW;=cC zS>6ubFW|Ygm-Czr@5i0=`nlfUI(3y;JoO(K$7S+bF0|Lm-aNGrF7@cgOVCZ-A$%Bg z{Qc?KklW5h_7K&>kqj{;-sxXzFqlh<j^`IyP0<IgwTG>x&31cBNp7QS3-5pb)QIT7 z`vTI28%QSEpvokx*&|4@MmhG}gvBz19@Z!<&B+mj9CwZzTsys(q#k5!Ad#7TUHQ)U z&iak=#|Cq0;q?WDR#RjPdR1C@JipLlj)<?%?AFX*1mjigF=X+3QwT~MrcQ{<z$0xC zAcYHdlBvaI;E~QT^$UmL*VrTA<*4t9-AGYWqT9Hdg468ovYRsiHM>jb!%JxM4%pl1 z-H7y7_%m@)TArVNry~jAfV0LL#w%SpBHX?i&qW1p3^_kIGj{X!QIoYO|9DY}*}xvz z;%dw-X|dazORZtpiD+LD{3R9s;JOv~gX!gMx?DLLNJq0<)z5m1C|w^hSqt-z7nYh0 zPh1}{Th#Bf-gxaC?{^9nVp22!qnauDh3Bv$8cu}#A|V*zeuB=d10P2i7<r^z5q}Vp zjLXCSvM)S#_9SwH-0;}h8_%Dw_~Rdc|7SY*IP>wIuK&$@pq+B*J^U}rKKJ-dkDZlI zo_qYp$IjwC%0HS7;Z~u7eTTotpDdr|M=nA$oGnTBpY?q4i^re-GMf6spJ-m*e>*TN zqkm_<@XX0CezD>YfBNGev6dwENpZFK3f6OYs$1-$Pa#X}!nzI%Kfv!IzOK7c>zaQN zvB2pI?T2ypIq1zukFe_$?b%%<ilJ}+iSt+BJhzvUh^8oJDeW}QDfUvZJJO$xCk?nY zD!)w6iE>>U_r5PZ2Vr7L&sE9ppV-dsCzMD?QM&N&8SR<LQwIq-`KqB$><qQcF4&+; z70kp0q*{;T4OaHdJ2~u`VQA3!OXxL%_;&BqID1Db6Z}H2aKn?;BoRVyLV69K8SGvb z%JC703yZEb8>Tx!ztsq>z6LeTHJT)kJI6PiLRz04vmQXcF1Uh#s~%M!T``y}3k1OT z^ad8q@0{1s+?c2j1@USh<N?3U>B&K$F|X?fGEE^>mlg@2c2Y!}cat0BDlRx^?C<=O zcF3-oTXbMAzNd8YA(AdC+y_c4W(gPXB6VPnE<7Z75qGu^iQ%~B3mz4S+>kgIiV`?! z9%qDjoaHvJog*ZKkV-u6k;Weg-uscC{rvVvB(wNVpZ0N$Q6uh?e<c6tCmNG@Kr%sZ zhWE%rQ;)Lk;_o58EKux9xmd^~d5=-Vo}w;Soa0E(0zIB`F+=uIoa1JQKa{k?_S?yQ z;^`x++13MW=fpF3*W^3@ug3JKq!T9|mIe?6tBmOljX^pf8TpvR4A>P?oOnStmplmR zOpjnYesZl6oR=ZMS*;*Vg}~J=O2wCJ^HOSfuCP@=83bhGTz?BT5Z~`b7o-a}Y7XM# zk&nLlvrj!*;MQo}MGphy-c)aXLg0SG<AojE%fBlyVDDgFO%#8F6;2{iX1^%cU4~Ri zj=M_mmp_P}0H^C+F1GE-$wlH*pa00Cjm?jEe|O+_Z!BE=6M>IgZQCv&?_W-qfk$D^ z9607RbKqvUeVgrOI}#)-@1lVxrr$;4A-&V{<V1t?0$$nF^2oV2e>UUQEXabq3s_GE z;YId$_Dygt&_xJ{#A8~4$M8rR_;X-gL79W;;Q9zM%fi6G&9X%W$Z%qX_6V_~f}6Q1 zY!G3p)De<sV(mz850(n?Z^WNlq~%o$oN}j_?I|e=1}fXDYI?&vJ;g;8`2M2LeZW@c zEv>9{SIm!ew-$To>(rF2gP!F3&^ZL9?#ZuU^+R_40haUIho;8Czm`F{&<h^r!%1_i z3)w#vB}xjPLC=__7kR(4nbxYaz(68wB}^tEv7jU+HPDJh@QtDpp>#3Nd;p@+AfAKj zMST?b48h<`ShS#XUXo+8nySi(zc<i3Qzt_X1Bfq4>o+c`lY!mw5;q~@)sxcPNcH8l z@BIEfwKwd0bKjzIXj|X;x<kWNJilTex}=h4)`d{Xfzl8ue-P_Hct?|lxgY*xl|l=P zKB=TfQ}pf)NS`j|m~|3^I(SUb!-Aw2w!%mujY3_L?6WeX(J(9+46u4;XJ?JtSXNeN zR?3w3k38MPpC;P%k33E9PS#;1^SPh1^Oxu{+5M`ktHR+xfC&vKieB9ut_)X3BY{u= zjwHTv^5aP>>HN%Zf7b<(IoDLnJb~?_8thdo+ofh-<3Kjk3+mJ|C#<`tG~aq>N7}+W zd#<Oa^hz?qR-%UXZ&TX+si_GGdu@@j*DgGZ84pTT@Ia(JSM_hi^EBi7Dz5*l5LP6Y zx{&*o?>H@k{e=g05-7<^HLbfGAcf$tQ4h4H6_)w2d;ArCINQwJF_exH)=}CG@2<s6 zfJiNGT2(2TbZZYDtO|lAZd-lokS`>eq~`kiX2~Rmyoc^Paz%7m;;w#DWv<vTUhan~ z(`4+9^VQ5POC-n1RT$4Ze7rrAukdm9{0EKmLFg-nah~!OgOBG<3>XszmR2Fc*^kp8 zg8|-eymq;&Oe9pSrARUyqzaKAWVa)Sfb%gjYmruwUXOQQquSqs(gMP3$a+)!5vyQ; zP<Ga;2uPA#4P8_{`av0lg2DrewIxA{Rv_FlyG=A(vLJAp1rBnNZKmvCjeU+B(PYvB z<|w?=(wA!$v$LDBvDWKTPtp~-$*eVPzho<^=LVDD;FKH~o-%Yr%^jyCeM;M8oZKdZ zL94n?qI$FKG7_K?=e8O7HTl=19A#TBGSC?1M_I#KveL*ek3)4TzmZ|8`Q~}D)yUt1 zt)>b7IYB8j`8J=o&{>?HxEkkcmGc)K!Fjs=uyXxjy1o_Hmx}9!pr&}LQ@MTtI#X22 z4owojPi-H>Js*QSF#T-JLv+4h_!#Qy$v7XMe0U1}wVDDvp!kXYM3FJ%Z&JVDBNLP& zlYhrmofP5ydT#2k!hb5~FZ>bb={ogGFGZ$C@JW4ZMIFr>V0p#03wwkFzo$k>pbkyJ z6sZ?-5JPx2LE??5e4<Z}sC^Ac=p(f@`8w{@PL$z1vN6FQp$s{yTZLZMrBnw(*tm`% z_*PelRL*74YvwV7#>w<1-4ZwUFjB2u;tpf#4&)6ZSBj(=4<omHhEg=;rjZ4TsT+lz z6<$dOgMQRv%$D?eWN0#((m#--Na@f#wH?DTbbOY-$7ME@Y`e@hOeW)~1vIEr=~p(g zC3Wag`Y7pdZ>y;;_Xt9FXIpRkqC{PFYfVci;HfIFOu2Mep*ir+<<g<8_j3mUf4$bJ zIvq@VMv#A)`fKL3$w`U(eth({-aRd`^{w!FD0jJYN-I#`_xX38CvPY2{)9j3H+G+5 zp+(@;EccK{$4|n|R%5^M13x%&B;_e3@2&RJv;Jyr3cm{|A}Xv$TwoKhniYmsw{Upz zSq}+*K-hvffUJrdt$qMz8?ZxK%~m5O7>H>U?Cw1BRtpFsSS8><WO1c?b*Q4E-bzxR zawEBUd5eotQx9Hf#qMHY3)JN)vK3`nvyjb5@z9u^YcYf1@z^u^Ek6{B!<jA~|D_n1 z_|Eiqc0)}C83rqA^yB05_i8J`u~@jGwuP*&eE(t}J&b)6&=lP(FxnFjV>bb>D!V3q z&oO1M(N&D4c#5QBLu!v<Z=Hiqv6=7LsJfS<d@nzO9s3*gJniA26y<wZFGcy@rapWb zz6q31oapCUxCiv}>$Jy*L2o|A=}pyz8~L+UlhBOede7}7YXN5<C)3?Zg${URXik8x zB7+S?pzVl<0+f*sd(4D2++-wt<$#}G>Yo`1*h?}rKjOqw@Z%E+d6<2>M%Ie{rv4^& zm)u^%{yh1M#K*>ukKc0-{tyBr*%h=#hrSh2-5+=;>rPl03MHIGE;_`9f#7WCd@}WA z%nU6F{6p{oZ3*TX9wKOCE>pb~z0#(8r3gc*p3$dVP&c_+{6TEuf)tHUJSd&)?e7(D znOqtde>w4&xYRN6@w&aY?YepQ&AVQBfq&da@IA@#EWx)%cHqsh+0)$c^8+02sq>NV z()oVO$BWAO$v64^H9x}n3xC7;=auspZoql8r_zg>?||Qx7vTDT;X2iJDMfwHq9+T< z7Nq)_!~`u8D#GPz438?fOP_7PR)pRU9yBR@2)w7_9b<~ueZNm)wt+7x%li9$vJ+1x zo2C)u96e?RlOEaH=j<;ry8beE0UVV99iKZ|7AYt#fM13)AI>Lv?};7#*vQ)Yh6Mi3 za6gehtl+<t?;G>6f1CVT!ptsAyqNYxnT6;6Ykd5#)wwm}neHf<!@J<eWtFlpcXb!2 z>JvUOhYv8FRQE&L(cq^Z;QZ9o)a1{EM))1?Cftxk^s<gPFP#6D>Z`$@ojMEkKpR?8 zX!}|Iur&E?)mOleOi$IqO-Xwx(;NKQ0OFDoX6Oa{7AgE$5ImWdEAO<lS4rHlW+MSU z($*T0pR}cq6w)YIhKN@>LD#e>se18K>V1RB!s;r>7T}qwQV=9=^&e7gVRJ!c<k6GY z3yv8cF&@yRv>$_~zOLS*1@FavdHeyV{AunB1HYII9~tI$ec~ATD@-0`^W`7Q7r=vE zUHag`Y4+>c@q0>B{twLZm?VN5qoqIj0{jAuz#Vb;namS@oHPXhn@Ut07O_>xLui3u zb=VzN`!TqdS`68i9Y9@nox?unv|;q{AIQ;xyUuYjq@&wv27YVo%gY6@3<x0+4F)A? z7k7c}p4}4NK=(Qf`t9%CD(O+s&S0{hLD$jI-qzaE)QEtQSWT$H>nSTuI~ytWr<CH9 zP;Ur`EXhv^ahHJiOuq}nd8QmMJc?&VLYaWCuNu=D<o5Cb&uuu!Gij@Lp!_x*?4&`v zZFP6t7ZOdHh0QGsG$t1E#wQ2azt|J&)-~GYee#9V?$cL{tUR1CD+joQb7x~G;#GSZ zA0&bOc-et6J~=cuiXY)D86r!_)@Nmp!JyCAss(EmDl}%bST`$c)`6LsW6jnhVIO~z z)-K&cYxmNvq}TA}$`G*Y&%K&e{|u^aLF@Pn@;!4wFhtId$a6R#e~W`^FN<bCij|W9 z#;!-sb*x*><hMb^ZUTO%SiuOmgwH9fwOOz_nZ;qX?8s3a+mN(vOmO5eyV+q!?IiMW zv(4~u%T0T@HIj!LU9^B`Urs}*M+cMG<?whD;<eF4WdiAiu_7ssa!$hP!ru4H+VPn_ zaG4JOeBUehm$O%s|1)FbPdmqnKUMjx$qH<K@r?RwmcQIXDF*EHdHL}a|E0ha^z!3? zCzOGZSZjs<QJDOO9J43^zrlA%9J85_6@6Mb<tzlxUka^|!;w9lXLnjPiomMQ#$`T@ z*d;thjo3#qQ}#|fP;4WKy7Wq7U@{xZ&3y43kAm<u_<iK48V&hs{WaclPnpK8nIZhn z#1R;^WOKm?lR(sl_Fbli+!HZ9P)w6>0E@5p*;O}PG4aABCWSl}#bUQxr>k_Ax=XdX z$};Y_|BG4E;y5qYrFng#R~L95zBtx(H~X5R5}l8@EoL(AhXi0ku-2HvA~Ks*6p(an zOvuX83}Yr}abry?`eyFFDdgql4Cgytc1=!BQ%;H%>87^KM)<t^FB_`@fq-rJ(v2w_ z4*fHXLZWPc&)yNm>HEhUblF9Wvk#+oj^;C`v(t%%v^dosZEpe(3g{ui?P4&_?(7_` zfvXx!)-*K=Lb9!~yJ<c}EP{5%QKFht`Y@`=mVwDCDlAXY`hvN(JCAQ9j|HT6Ly6OL z8UgUtgbGrwurpPOvo`;A##^sk{()p{UE38>dt2v%WO9N0mrQ3_ac@}=h5G1EYQYWd zZrI$_G14He{RVuP5{cM6?oSIxTDi_!TI%<gmcl&+`1RM2XYzm#h-0F4_|M9Yt}D#X z%hs@5RQo^<c#>!gi1@&=Lk*BDa8439C6wtR&*5UH!=|xXo2;0Em~vLRiA17HH8cGX zHnAWOcvG-NR|v7D)LApOa|+hBlDU9AhdxW?y12iw3!9qotn8RU(%(=?J16rh!Fq## z)_{<I^QZ2gG8ew2Ae%v}@D%{1e*mSRyKqK@WeXykx`YM7V#r*tEAUJPeC1`OHXTEV zEUK>R1f)nAvt$9PDA(247xa5Q?i|!clZKIO4UmQAvZb$rDy}$n4o8y%ux(FWN!?8F zefMTF8yHMN99_1wZ^`1`MGF`7bkFZ10|~e*p+#tEZfeY&g7=1h=-uG|F7q(ge5B^( z!k1>u%Y-^Fsn5*$nNa6R`Q-C7>7HcuG-0VPnG-g1(&(2uaq8q5-kz_{9nD!kT<6xq z$6&KC#!SlmEs51sMZ*;Vr-9K#(kvPT@WSBE_$=ya7UQ+mm61>|7o3GO?64{GWuTd? zqxr>b8eFa>7v{2e`s(yUG@qCAnwgCaCbtQ~*tV@(Hg6go8Q!>IX#KjuwF7Hbuj*g9 zVmZw>mf`FvfB*AcKgWEh^vAP5GkF}SJ5*kA<|h$Ymq%f@XMeuEmj?r+0t1-7e69C1 z4!BjTOnB-`=8~8aR6RAm43wY7A-~Pf@YTWeZuxDN1fBjSf{CXD)<{c*A>rs0YnrvY zX?f5;H3UKV!T)9~8fD>d{uKHkCDwv00PiS4)Exr&QTqTfr+JPnI0a0{U8r2CMXyB( zjFvtpvs$I$)UOn$30(q_$kr5hOXxzd=P`%b?oi`5W^%XGjAdA`SYS;^GrG+wM%Rj^ z^)5}#@i53A%7Yez*YyQ`z{SK|DZ0XcjMpVC12I+joJHO;cw31*J@Em|5j)SGPJv&I z06BZ$z<uZCKfpsqguHZ>SPqz%2p-`k1yEI1@ULKB;j;=rW!sn~+oGCUa%OO|Py%ql zK1y6CT_UdY(hn=Q!$(FCJSa$mSMvD(S(X($c8At+v3#G}39uCs-T7+sY;lq=;Gp<F z6YH=BPqBsRMTb%Ua38ym2#a`OKXU2(Oj-mxK}@(SX$c?)W+lr;MJYei_5ObwKe0aO zLKRgddcWgO`QWCM9ULALJ1+qbO^>gkwC}df>&C{`zSBJiWLzt^Cte=8?~201dAE(d zyyZiA`xQ_@PxKb_M2%d3+eUgq_%+r6hQ}2x6Qw7FKI+!#doC=;RYf0lJbiBtX{6}h zbE5JI{|gZ^`ft##new+mCKXOV39r$Tvo?H)z-LaU{~@g~DO)q6{SXvHrZrOcO0tNE zqJ!dflWS_lA5UBuh0#%de*A;`<q7C`ANYUwo(m7K4aW~^e*Vs1YPD_e+%=N<9@&KV z{1oHK5xmJVt65L}A@CU?Z>Wr5h8!V>XCp!P^$6@&3@L%2Uqb$h4Ii8*Hpod<o?Dr1 ziRQ{(f5!_Rlixn_gAbfEn!tS<Uz*&?b@{N7@;J$W)b=Fl^xC+^TD<UUoPU+W)Joab zkY)}}E#wNNLKGpCFjZ6bITA)uo>9;)%Ys%=u~VesONGZX;p;&F*5so!cJXVIj#{a7 z;;E6zFX6ZR$!QR%v5ONL^x>bB^>X1`d@b;G1ATSdO#p?w9@ohpV4!$bRE9`F2%cg} zs2EQpt${Br#eI1h;*#a{Z0L42bX@*>QIY%(UOBN!d~xmC$@oR>LDhx!(5NV!z#<Z_ zLI==Zu8rE$qdivwe-_FAbetKG1w(g({7-0ZGQM`L_#$`QXA|YX4JWyu**r!4Y=v_m zT+9S%3vgE>=`blZ8$)~w4~W5sAdT=Fme2Mu({leZk8`4296u_KpV}wsC*CIaZP-2D zO8bAmhaWo{aZbLaY2=RI8m`wr16)n9re<VrJFhsRgt(y!t_X;eMZG6jwcySOK&TP- zP|J;)VJPp^rS$Qa`9KpMK&&iT!7it9P`UE#EX7+h*Opa~ov%0wWJJDZk<+Z|@j+vo zr6u17hmPmiU*s(Imq|m~se?=Z508)k&-nN~X@MVb)J<rif0>2{ReJXbuPQL9#&WP| zvn4p;Nq~kf$7n@f7MSp|G9Y6%o8XmWGIg3#ka=H^HQ}-3`+5Q|0+eDXZUK9t0;%GH zT#vIX$B}~^EXrQI2x|5WsF9~DL5_dUurW+{IrM&cHT&g-XBmCG^Tmr`$e}n3j!ZZ* z^&!LsRwHXZ_9eXDr1Z{A#c=8bor40gv{F5i4l#CUVq%;8YgRhW?zjdeeJf?4af;Qy zT?}J?>!9{VJ_QOd7h!-`J;H?(JRX`|1;1HApRLa}n{cNN$<EO(qfGz!pMS6q$bVqA zg#2?>x*+{+FZ*&Fg?+;)0+RYd?<5@m2fUMZ1l|e95_n}{|C4JdcIN<jh|*4w1UM2C zXzh@DbMy$K(UQvwBE}iKR@fipb8OjTkIBDi1yZP-_?)zo4s7;uz~;wk*r2t!V8esd zT<E{UDUG9s#;><cOpLRa*bn4A*T}oDR#7_}{rrmxo3dmH3dy0PI-r#$&>1Tz1@UGG zbkrbP%H<_kIDrD`;};1u`SS#`$@@~@_9E}it8!NyrPh@%{2e>+j;B>vpguQBkP<p% zWAJdK_&t0efRA#~OCYJ4wZ~CL8G(vC97+O2c0BeNBYXYcN@-;!LesCC_#Dw5#5WjW zx&Nw~ui&Ei(^SqB*j1zGk0kU>9T0uMO2u%2t`b%!SHjf6Y|LzcuxFCgv{CR_1T8uV zTx~WP%wtFsm9Az^CFzJ_p+b-#R7ESmIlD{HTCuH^D=)I)PVK5khY<iyhZ4@B{Dl*y z*9m`2o*fIfs9zr6y0xRHqql!~+x&GKR&?})x70Q_#kTB7baW(k+<L3{I?9xOG-u<2 zu2lxZ;L;VlEVtuiQ+-us{p4R!0HTA#c`?RSEItnA-79n?Tg&Xo=L1Qo&;e^H#k3L) zV&XB7Ui=Sd7C?Mf@FZ-<uG|6&#MIWSF}S?{6d4ml@lA>W(K{uC%21#cv#;O1dws|H zJ<?$@;`K(v!_uDhHwV4m;H@_p_pd*-e!uaC4;r?w@m1>NPwOguYqlFc$kv6C<aDi} zp2EA)p9)07#Kda>y$WGxvdrnQX2Y~wl$S*{(~D7jP=mfM$%TTn7a)gik31zDL{#zc zR;(X3ip4sQ+^h>RK%N#+xjKjsQ5dEB;4qqvV7>B^iqeW`xfX=iAJlovgZf|s0Y6AC z;erCqg=7*u?#M;O#Zr-M?DuP{T3V~tbggo`*L1C|X>O}o)w!x9$1)&asO{{mjdgWh zF;G;5>$Pod)dTa_7M0+7ZF6bDHPAOd7Mo88)?5?j#w~3VsKR13)k6suIC3;1s}2;x z^;!&h$ht2`<j_oUvd6GaF`A?JF7d!g?$^v{gP@7>+~VBSBn1&9?y6V9>yZ5ei_PV& z3p$kmJY}xxbq*fO7-ZR-_OT;XA^VyQJJ+{w*u{=4@eB-&kDl~<7oH4NRfTT7!LWO+ zzt-@wHgErm)q4z>zFn((tuGk!_Vo|!Gkj2d)LWPJv}JNiR~zs*7%{GeQ~!ioPE_NC zDo1|&^98U28p$+IX7Z}E-vp(yFdCR~2P&t6{}~ia7G^e?H|yazCn&X0$O*W5&IjPy zfI1I5QqQ0)uJQ!DhLXWhh{_m*q9Ig*L@@)*up+o9RsjTOqa1)0CPS**LykbG9~TcI zXB*#~z_Zwoi1ova^C?H<pPrbT{!N?uTl?TyH8yr+>C$UNLtjo!U0u!QqwHI;D@V#l zu54@gVCAaSt5?b99Sv=}6S4eQVn_atcZP;APz$ma6pL?Ro=1`!kd05H*J)sKWmzmc z>lo%4j0<E^7^M;I$FhM4F(U0K95hkd0K6}}qtq-{$ha5uc_EcUK?-e@)1H&EgbLNH znnndq1;e7z(2*+4;Z;_z6S65k$O)Wh5zw(Z)GBJnzozXAkelmhA|7vi0RI}{5O}nC zyQzM(v#5V<zrS;|9$(|gDeTA3BKm?;7@L3`2La4?5qV@H(-pDHGy=F6Q>AQJk3d9G z9g$at#rGni&}R2|Z4QqSSkX!0BlUoJsupuOl8<5%pgZ?|AR4>xzIA<%e4_r<SDUtW zoj+I;VdlM`>|L`b{>i=af3>ayZ!HQ@z%~ll=EJVFE{QmDb-O@z&>IcMfbZb125%5J zM`fEuJyIi*PlYs!z5%)hgJ~3wARVTq1#lZIs4b|ChLLcNI|`%8d}p~mV6#BhKm<=Z z8Ml5q8F!pBIUXJehmj=W7E!5)l87>IPHsVMDAK^L)*Kw!xWBYuL`Hw*e{<y5g(6Mt zYO#4!vSVX|pWU=N+ZxC(3q<^@Hm~U|t<PP3$LiIVpsOrg?QdLF9qO%(!%T~3;p_q2 zNV!$qLR+#K%LV|)+JU&lAjiQEX$*r=D+!rX<*(f(1un`%Vzc=?M2@m}0c>@NfZ!;B zxqMxu$<L-f{Co3?>#x6J^J}kdM)BnO%{OoD+0NSckB;u|*?Kd(w<#7waWkbxj|=dR z2%X6ebc19iHDS0Go(AwWr(UVGG68XN9x$f5Mr!{&8|6E<xlFuU?IP+~qHj<hD2q2$ zZzLCZ3@am-n^io{#rZL>xUVax%-OVK!PvE$>qL}FX)N^SeEQ~adkNcrqa_?Guw-v{ zhU4DGwXwZJ74`8@X(Uv<-C&B&3mf5;hJs&!XD#6AqPQ-Afzk_F4O}dS>jP!3A<0RJ zeoWOE!bG?Pq`KrpF<y@Zm;6A4HuhG+sprR^K7)TRh^80l^WNyDXn*DA==t&SJMghG zx~cL@Xa(<g;r;VCu7o6vg3)kcO79>zmVwa#?i36>dI%dS<z5EHqNtE&GGCcacLaEz z_B)Ei0ZO3C$atRG>fZX+bLVdS><#;}?UKfpeZ}$5-gxfZxud%`bZlTBm@IA1$!RW~ zlyAY$-MgtzR3Eh%ee%$JQs9M9#zeS+fLlP^D$^W;rUS_8C<U9Vf*WdhQ@SH<o0gp4 zJc7sWFV8JdvP#Tm8hCnPj(!x@;m>{R*7Y4(IwT#ITB_pB&GG7Hd__i+bGAMGr~3EU z&OK(?ilTFg_$~3q>d3OKmd6y>HKCtw=?26*AYX1J%%Va;o+xQE`>93!YI4!VB#JwL zO*ukB9=!70lJZ=hHOawwF%>(4Y^I2$mzbS&N=Y?VJ@Ma17xrJ%TvMG0dbh6Fuwli~ z)msmDH8ymF0-LBrx^%<C_HDi4x_GEOYAVRRx_{-~oU@Nvu2=)kt;UzYsl7{9?66=T z*THAmCoTjobPFdJpEZLr*5EYwll{n}1}Roc{<}b3$TtF_4^DU|sD@rQ0PkHrb`Nq~ zQSMfH1iUjS2%bSjoMZ3#&|or;w7b(fU7y$P^O_)JAXPO;VJR3<C6|`Byh`!{858lV zTRtz;0OwI>VCS+<_1hTx4coV@ZE<l$s3@{1{pH7S_ml)XaB>fPF)9Cym!ifXIw1QW zA`K`B4UAtrbBYE@<KWM_q5w%G!IhTedkau6b2>kw5h*1pwI`?1*!G@`@0qz0w*;cm z01mcO{qp<Ni3b86%5RDAJ@r#w6ZCk3bkMR8J~8!g>>J_+EZJ)04v6}*dAvXT;?z}3 z`C?q;twj|JC;~mt<qQOM#O{KB0)G$$;(xd<)L32J7^+*|+`K&FdqpIXh|rO!G}|kW zF3w$iw9;;_w7A`t*(X@6YhOjhzOG#51AT)?D8#@=-Gkr^2podxDHsTWOr=<)-o_xC zxNLfD0u_-F`1*qjugX7v<&~JYgJjUjJDKAFcJgcg`t`3WvXJl}kcA#lWFg^C<V(xW z{)wFDG*j;g>+z0hzvGq3Wz)XI<kqUp7fNvsX1Eq>dC(~)?mgX!XHDQ-?!;?UUzWpc z<D@+O{oTBYnQ#OAOy9uzatrsX`34~q07vcTYwJqdGa!p7VunpL2-+iT0_ZftN*Guu zb4YOdZWsc<QeW!!WQB64_81y|*IS`2fwiW%2&EXTS!OVqh`K|1A7aN;CNmXn#}gP4 z(^F3=>salwjT@IO+jyifFRze}BO6V_OW#~NJiN3dnpaemC)1y{s-;{rP$!fDZ#>KK zhL_?_2y-;4m;)NMOJEK-g&T<NF(A$hX^ss>_y!vdMxc<E6bj)F&y7MZ^)zyUm6Z`T zDf5<rC7p#+vfl%zkZ$M_cty?wZu#}n_THjUMRAmH3;(k4<=wmgvI|NIz!|u|6*S5$ zAV;2}mLSJY1T+oMCp5<(N6;H%6Q%X>=ntt5)c>5t?MMFkNc;H%QsKm}=r};_{!V_G z?UE+2`{v9I2K|o%4gBt?{Ia&<o!8Jho<V*O^d$nFx;<&lLHZF50w0l*Czs)NXfu_0 z2O{BwS!^BMd(*Drt4|wDXRc;n$a?m^l`HRgE_;9Wmp=aSFCi6;DBLeR%f7%~Lm%|O zNr=fMoP-1fE`0)O<|xGe53O3Y>RIJumC}dbp(DEhk4yKPhW)#vJgYeJZ%yDu$VJZM zG-(Vg@mrUIC(n)mpejZI$_H}-+9Xk;{A8r721M<4yB4aL1cJVtu>1dC^4<hauBuA> zfA`haU0uCYS5;T<-PP4=x;slR=`5Y3vXGDtp}P|#2}?EuBmqKJHc1FON<eflpdy1K zC`4s4vIvOcfR52|;m05<Fp7gS;=&BWh>kJ+^823q-m8Aq+0mKLe+hI~b=7<KoqO)N z=brr_zK524a##N<e)fD%UH9tX_pEDQ73?#gJ;q*Yq5P5CiVe3G83*zPc9tX%i`N{w zC2Lp`6Kunxos1A<`#2#oT11tTC|l3>I}}YB9^Wi=aGS?}MdujstQsR@PB-sFPHr<! z&z#20D0gd0t*)S51YT-mNf5ZUxQVR^#e_cwrMqQobE>Ykx~whP7B9u*r+Zw6fuTuj zR3ePx$C2g;NG~a!Qz9o5QlIk~mAq=t+&*j8_A^zD^~S*R<paDP?CJ0CQNce@4!`6N znVFX@TD|D9neSUMuzFy{`#wE&(zHoam&8gMOJb}5wZDIFRGMqe>%o<ro09V@0yKI* z$-eZSgu}h}(^JaFxhJXj{aoqLK(m*B@V@e1{c4<ioNgHR%W?GMk)Jo^FZonxMsPg? zTvr%<Bx{0cv1Niw?Y;ryM!?Q6WCG+DDw@=YbgdCf7Z%}-M<5pb+Q?Or`IpR?amjo& z$@)RhZ1q{|oY_5UQfA5pbMKsc!IVqqc9pI#?V5WjI8(-h#uMtR>R-Uv$-z+;N5(JG zRoaq@YM~kq&7+Z+Whq5)W{FwO%E_~4P5#Vh>Kgy;-x}*a^Te#lb0*K~Y^;lpi`F%E z${GDLqf%Y<7hJC#a`&v4Q=e9E1J&UyRC>(oaTiP(#Neyf$&))Ck4QzYRO^*x!E=ne z)HjfgzRvX_Lu|B&qnM#k?8olgu|-1*>~a^v;O~;M(5lPaJT&x$A#u7g+7iyNpt)U- zTVP}|MD(M*+9QWt2Trz%Dxxh_RF73zLl`oTkw?kT67`sMhW%saUwrYq&Us<tZ&_oW zW_H7Y>Wq1r*)TWCElMmv5PPl(3xLa_qtZ`OYPSYg89{$=u%v{jcgg}`Xh|kYM{6+( zPY|)xTZ>V#vqX^=O+tw1Pn)j3qQ7@-Z~qlnZ?c}aded6>Z*}p;mF*KIw6EM~{eI;} z`@M}9!&qysG`lpPtjg|vn^S@pq8s63V<cxgo9oCtE|HwQv?R#!?s?O6<B5N$RzBdo zS0CzZl3p%NomX$){)qct?=cQENJ7qAsd-D9t5~b}h+Pjs=yR9rj&bVZ0doI~4ydWt zuT`1#E%n5vmo`1KNjJGL;dOTHQXfI=ROrAdNbwW&O^S1fnkhDEx2Boj?~nK+QM?cI zKT7$iOKu;mv9wwG<loeuonP$t7w0dLlg_06U3$2@e7I3<5*(Wbc|&H@{4q~yHg;yh zVmm{^4H?8!#BI3{(~!AUocvk`lcb^*-07zbuN1uYt%Vu;mS|_Ap1ky0kV{d$j&Ut= zVPRomb0Ib*D2d3vQhYiXAG2O{@)MP<d(i?mt9xNZN+iy}&E8T_&>EBMLu>lroK$B+ zD%Oq?mg-E`$J!s?c5{BjXGZcQ#n8GkI%hCZm1s}s*LZte=B!8s`m8yZ+RRPHF1zhp z4I3GaQUqk_XH0_uUQA;Rn7}ZOh%B{w8}NmzAQp2+Ha^;wnd6UyNL&zaY>e_#k{7Ji z_EvoWp=FEw%U0>NZBGqS4NkTVZ1?XLo^{s3Y0IJ&(e_HZKrCFkbYMDvm5i&Zt*iR% zvNIMhpV7N`0ulJl=h=S@j&I`+J=eqgjV<OwW+N*K6$$-_<YM^P<4jXz4P&*Cfp8+H z#0pYOQ=i1Lr9$f3ua0d0RpzVao?mTw{_W@A=EAV?8*`p|m?|cfIsya{(`N=aj3Eg^ zjtD7M%D+M)i`5zkKn<4^m&J=KODann8(3zFT45Qqs|SjiITf&{t!HY^v#t+yr(65_ zTGPZ??6R85>*~t+AzG@fueEJ*Tj~t`H=oHmzD17Wo5-dGMsp^u=cZ?6_eerS(7kNJ zd8EV;u<eJ$MD;-GvyZX|-nVvFOS+p372i{b2JOP3%4l@t-MC0*usgecis@oaY+s&Y z(_oE4>akQ>WWQKcSe<RX<sn)_j=t5@N$!8+t|>h|Q>>TFkgi#3=8yc=&hj65OXk5d z-^BM9HX1W2WClg;LmsSalL{6MHOzx3pOQ-JJsuU-%E_FFzP0v!^STGDmweBVShL`e zK2KO!M^6?lnfibESf`MeLrv(&P00W{vbns$de{0Ps&YZf`ft&ccQpUrdP}tBcN*W; zYO==fdyxI#!jBweO>`Yc8RTT@TE4aGlbie-4~YfRc`jp6-DM0ugz1UpaZG*9nDzy~ zr7AvYz2x7x?NGiD^z6eUX42tne+6HoYX=91=4;aEvC3vnd?aM+a5B8QnwQ!89hLYb zS>N#n6D{~?+^(sqw}}oRLL^B%=)whRkKlG@gt(%wTR*i~o@%gq;d7H(8sqI7+&7Q^ z)6Rc_=Mm)}$-mipxp>ZCydvHn<26<pYcB<3$j~sewdxa4gUHaxglt(M<Q4L&47U#j zb?Hym?$qs(#Jum1DLI?2z&!R<)_dmR-<tJiGqQ+CRU96WKRLuA0FhBFIuS2frAQ3C z{L>6HCKhIqPVrEQy?3s9@u5c_z2?zJA2FL(KECa-$F@B#EWzl*rgN^If8OJi&e!@Q z-Ip+GwX|^B1U&Cm{Q0`FaCPzXYTn30*|&Y`KU5YbJLkqt|GfTZp7)GBcKqT9u4DF_ zEHD`}7|4<V&wF#Z^^BVLd~tQStnPX1x1K-xezyLfH{BSH2Et_@;vw1h`WbQf?wJnX z#kvdD0z`>z5J^$;c`u@HI~7hiw`{k9--PiR^u-a@D<!8I8=`r_qk74;bo?8fG2VWT zakUHP+ctSJd3>Ssvz&Ka3clOg*OqD+WxdRKJ`*oR{)r(!&dp??ryyHha<R$zriUuY zHg-C8zI0t8kVE%B@U0PPVK^R-*Tw5(731BpZtC#Vwa09>ES@jnorsLhy~GEwsKf`b z!1KF?2f7A^yVk#d^844nc;%I?S6+!g^X~)0!vkjN$iJ_-=%O{-u4=xD|3R158@tdO z@6+<F_QQZNTtisEBuAV~!rYS{m5kFORZlAggEk=TsrHIwNnNxqKSb6?u?UY^HFKSZ zQu?$@`-|m}mQ%V+e5d*>7ZX;;^4o`pZ(qJ*&+zb`6$6*gn|Jwu{ky!rzMP+~?3Y~F zmHn1$zN^3I8sKI3Vl#dPu0_;|meAQ4S>X?WP3d-^qfTO}C_TZc(`NSUwEkhImh~<i z`GnxYI}Yb0E2Wt-D<TJ($7eoz{)=fuO01RcRMTXvPnZ`vz1PSsA2O$j+a2o;HNYYw zHR%dtY}DPDW_<V`<m|F}HSR8$wN{5p{3YT>;znOI<Y+01f^umen~-hdt2L`f{^LuZ ze)PHv3rc*xX#NG}-it3Dd0NMmRo7->u?#kZocYA$+!wy?O2s0Wnrj3xa$r(&0P2#H zxm%x@NLC=pQAeVs*IhmH>g#sSnK^Cd9QE7nS6{u|imTtwnlopXB_--y+{Xm>9-K)R z51&oNLb?+1b2QQ|wFlm*A7Z{@#bsdiTPrRP0!X9h@V&&>M2H8NsEkZxyz+%6Btt%C z<D~3o^k#w^>e3~Jkx1bdw!8?|8z6{0GnBU>UzuSLjKV=wJx+0|91s+`s<_CE7?DB5 zR<VW78Z%De&8Ij_#tTUvKKjV14#63SO_Zq;e&8lF;m^j;BIL{F$5*G55XWm7pAu}s zqRNtzKf`X4AQV`DE)kLLQ@x?deIK0g<ZI1U4fW;C8;53hPH8OeA4;7!I42yg{@NSk z3AXx9$55xLt*EG{5X0tJcXP+-*iKX9<A1jX)2VtNH5zWb(VSC15E6nhYLHoGAaB&5 z1AQbDP7#L|z@a275dnjfQ0{y;MN}9WYzq!4>C<V7^PEEp8#1aH6u-<4+ob3P6(*|i zUAgy!Z$7D8a6^$|&;Ses)(dBhMq6nf2y&7dHMaW&xlbb{jW08$5h9M4m?#RXThF_> zcFCF<mn^)zXG!-3cdq$Q>lf8(igjOGc~|F}g;Qp2+O&N*x?@?#ybGt^e*1Ro_uCh3 z-(;3fm=;ud{k<9wRp4Pdct{zof`=$4OC#HQ6b~34ZX!e_FMo@x@fNtz4X{(p=*BW$ z3_BIx$kTXm?#aLT<ZjV;Xl?=qB09i9X-X0c1rMAAf{7UAxO!7vLL9aSinGEcjh+_i zB~o>F^`k#slOINU9ba2LdC9Dv>0qU`TD4ez+qR@tO|E(0<bGyPK->1fN54>g!Cb)! z*x01L+g<Z3b9xUnF^11c)jbLK!`q9`7aiB{KQ^B$E*i_{s6p@O<lVyOtiKuMa@T$- z%jbS!b2)6J5!S<JU~V=e$gpAqD3SgEoTYF(kzzeORzx^8h>TfMSW+v2o+5epdbQ|L zmXuZ>wivnkIa`dpPkmj4Mr+r<oRd$cNF?7Hy41EC_8k6(=1DV*UuS9)sKn*?PsGUD zB(6%8Z#1h&ey=Lb3$ZhVw+xD~#;K2|HMkYSGS_Z3@{LGd{#Gio<b@-Jr0<3cs3(f7 z;-hwY0N4Yejm$2RXGAs_d4*x(oQODCOY~A0E5g$3h`4xn%a8#xv|GkB@*}(Tpxm?j zlt!g01rMBI%$Pp4Z*upf@tw`-(uSCLd5bmg5pI)26cqb{!+VnCMVF1*9-3Q1Ug4ZS z(~u#T<F2Vp)W;htg%5S~#a0Y%E-n?9aJ;^-CRSy;hbK>u4-Br#%WGZ_^9il2>=ftl zKt0V_ttTVeQ5*^`jki|ok2|Y=qRPzng|hxNtj7$_h$_7!Kbi>_vm@)A9Vz&qg!zjd zDNCK*kvWF~g_~E%p%7dZ$s=MlIJzV8muGk6@o!m?Atr-{lMShQAgPiqDcq@0>=zE- zK5|3Cr*Q>qwk?K@nuj`n_{Z_qPt>HM!uG+5vlh*`c)_anL7I8il(((CZv3>K*_lgk zS%1r=YUds0mkfwW`<iRirc_Vy<?C;m+m(Y0i4MF|>UIQ?E^IC>xR?mzHPq&a$_wS) z%q9tIxp*V)4dK_s)qBDPz?eh}OyCv;V?WtDG$vYGB;Q#uq0s<~5=;pFh{Zh1pxqOT zvx~y6!k`fnVdXm}%^JXre?F7Hao_kK|7pBxvwl!q)ZTgR_$fWJtIJ!??Z2bqVg~~b zO4N_R!Jhh_;vLX2Fvs8vr<oteezh!fRtXYVT1hKcOtyZiFu|~IiWCqf6VA_Lr-Z{d z8tf$`HYGedKi@z}pkmA#HdVfeNliu*OIur-Dvd=O_$|D)k39j<jzt$%Yxma)WevI{ zGX@i}t1d2&Ycp>Df~BX;x#Fsg<uUuu)0WJcvu5SSIbzNI`qQ!5&fBj%5t{>VJ>&3K z;A>L9z1&D=>dQ(g%o^5}Srrk05-r6fu^Xt%6G>^}(br3r?Or&(FPRANWW0U^o`LZ* z?&$mGFNcTD|CnVB3{8K&qGqyYaZ|R<x$oQ^m;ToJ-Ta+bzx?o@B1<c@QBcnMGdSZS z?5QLi{?be-?rBPWfhkGiF65EUnO~<#17_s&Z-JO31e+Iw5NvD&#9&utYTYaRLTyJ} zup(0gZgp5xq5^@pN}peZMlq8B2u&tJ?x}_R%dvIFWfSiE$ELScw0~&9#&672ruC!7 zp(a(IS6v(_O>f^bux;h0%XaL3^rfzy=RGB7)wfh$uraRyFqRzt9R7p<geJdZn=X1B zr+=iNAhLzC3S&9u>GgSvd=M=!(#C<pyvuko3RV@7CutP8@?y8mQ%>#H48@*=6GaLl zH=peDkP3w_AGH*h=F7HBNEDeZ^4QD-u_xWPWJmk`&vy{n(K^(+^zx3s`9{av)?3X( zEh6rH@Zz02^~+Ugg1NNTmT898iVAUD<b^m$M`_K?m7se-LXOa6tc8{84iUV@O0|Sy z$v*o$-Ms3CU!OUYx$<)pUjF0KaiOvrO>n2F(wRFq{o>10wk^Kx{X2HNqptMLD%3U^ zCg`QPdZD@6$_m_Vxc%ff{~w~cibR&?T6&v2Gm+%GbYFHpXIwUWze<lAs+xJp%zfXT z>`>j=-A&8&#J2za(w!gNHC(f;>*>KAt3NGdw?Db5)twr1b7kiw3wgUOFL!I%*9hn5 zYjK&f#3C+Je+-)r<_ZL6;X(+^aG_O21txrm{RER2hk7_)3(O~VlO`a^!jyd`v5Imo z>3?#tYk4v15KmTKX71>mHFs6-R~I2CU-*$V?^thC<AeDWqG4?1nrF8!QtxEt<4xpn zAolBd+Glanws+{_YB)OJx^jk)r4$GX9}st)frd8P^iVbie*c;(0dkT+*P0)!KJvhj zv`9HD;<h-yW7hm(q}GAygVXMM=3JGuUZl3vxXkj@lv({xm2Dmrk@fSR7cpLaLEU*~ z1zp?_;!UFpnPIx-Z`!X%@U&S8gutoM3ov5(*Gzz80L@&V26i<SL((;EKv6z`RRHCT zj~)Gdr@Safd(|`NTE9}`fo^aVWL2yoy==P*1K%jTs_@K;!x~ay@zag-%o=kFcDcoi z_DlQ0GK?IA_~CZJ@D~V}tFU%VmoBGOD7gW1+344Np?zy+fIh^+X|q8s1Sa=+>_-2t z&4K4Vw*4{wCl6+9KbaMDTR3c1a)0nqQhK_ijV6&L#Fo%6bKmgp-NV=2Fnq)HORn3t zWcT&FUvk6lCD$X5tTWQ|gWb-3QlHX|OMn81;y7jBBthz4-=u_f<odUziX=bps5=ih zZ`F6*{&G)k+48oh{V}V%#Hs&!%6@96ErZ8#tZvh3XCPRgGvB~2A3^>g(pn4Z*!qn8 zn=z|lpyiCg3dyEcD1p369En|RF{kz;JJZ%^MVHetxtg)>IQ`;}c6{yM&Ko@M+Rt|W z)4|jGU!>lnDze_;<weFhgL-%o^IY_R;G<!^PF{Cmj$3ew*9RzYd+$XPacr}$@qMh3 zeTvtjuJ^vHhdEl<sE?GvT}#&yTG$wOW@?P<GJ_W8h10rHlrYW;eu>WKJ}c|DINr0y zI1^lr&*M0d$9d;vz3k|GGkIRUNf|NYY&##N8U<I(cH+jCx(rxGjnHaIR+vgDTnstF zM@Fy7`FcgB1cY&j3Y+7fq%**VJ=?K6G4~O@BOh|i^DEhtJ;qtY@MX+qe}l16h4^h8 z-e5!}Ds!V`pVR#3@CFIbWG&Yj531j(PoYW9w`H9qN;z}b!go2Yxhml%SORYz`vpE& zfFu?!s?&>`#1o%TS5f%-&IfPW_TOCIgRQ+$z0AH|Fa0#_=TwRO=foeo*6g*e$0$Rp zE%ps<8DKZ$Mh&9*YOA5`DYw}bQjd-^mWXia$k}ImfR2bYK3Y8B;cRGe_6-vP?s@7g zGmczMg-P89v|3D4jx_Ca^RzJy+7p+@#^f+`+5(5>eeufA?>H|{3P|LwQfH}~t*ien z(Gm`~B>qjt_u=uq-<(O@S`9f0Q;o%$fxd={F!2|X6M&r{;Kv~m4(4+L5@V|0_>DEb zJi*LxX9wk)jh?QKshv}s8*AI)0*R6$qC#s_O@Vm-Q8sM5U$T29jxZfuj0Vz@E;7Z` z-e<eRQKC{DI(F(=FqAC2zkgtOcF#a*z*pVX?0KK8ZH}20@ecZ(t1@YNuK$kRf5yzy zW-RWWSk_tZyi1I)UsT-`nLn|i=Cqmy{Y(F;eFz3V1j&U+F=J}Y7E&j}7}r)^MT~YC zE~$XeKK><k0GB$`mZ%6Y!B?ECoM3A(VVJ{dD7v9N-A)E1LO@Gti@0LCMP<|u1;>^p z2|h>wxTlk1T?htawu_;~R~A3BYZ@+t(`Qayv81OTpTeR{Pj&fA>E_AHx}N2yw(^Hf zSB?9?01k)h<=2kewFtLD-LP6e?(`~kdQtDWmeqUi)Q*8F>xmNRqz(V@1pI9ggPh@G z(}-wZUITrb*ErvG6uW%RxSR;ko-mTpoPKDpJSr}1+P#k&#9s3n!(`lCJDArN|NmBd zKdgiJ+%&Wl6FVMj0CI>8)Ow@rtyO-B%8>X_s*R?aQsT9662VZ#ZD+re0H)Kwoa8UF zT2jA8UM2AhKAMIP((f2uP=a8+F~P)s*ov!{8%kWTeL!c0Cy5A_RAR~b<G=GVW_@PY z1CRMCw{N#&g7vt4PCiV5_>z&y@J0xCkxjty#l&)B;+UG<!c@X!qj8y9vNtA%$y5xf zx9{LV^{>|cgMU)Pk8M_GtL2-wSPxsD-@-_MhZB=tT4F089wQGV!Ow8`96KI^)2D)t zHnPEdB4S{7?WQpsqQ<XwT=2DJc|jt-^X~k>OX`Wu*1a{7>r-Qvi+9T;PxD=RBE15i zYmqt}VnK4A1|Y;e`KhPrW3dQtLEo3?AX>{*S1F^RzN)3Vr4$b<(T|l9%oGTYva{Zv z@n%bRtxwV=>?BIZ9Hcrnd|=J8*#iM{;@~;sz8F7kVb=#XOzORGQg3fqU4FsBbz7!( zHFU06I<Gu3ZP}K&PhGJ6k}16lFXg9qisW=JW*v&iGz^-%!If!<MfxS+7rCz?Q^$dY z8O2H59~+X0k}DoQ`BBSuTKjF6At7Si^Il@U-#UD&*{)-8N-~870D}e7xI7^d-_m)K z$4IuC*}mqE!Ce#1o_=M;HTyT3-yE5K=I*l)-}N)O|8(T(vP=wGr4ay|#tE)A!6?x+ zoB|0NkVfAcykpJuvnLQv^UaO>uc^4U=&apmj!fry;KYI54EnqHKpCCXLYDaT0t2{Y z+iAGU1g>N+nRNmf<tiC&*Wevj>Y)TI#^rXoU&p`*T-=Yf(T-#<(UI)pOe7zMUYP1) znG|yqm}E-V%KSviFo>^PZvKp_3Q;siI?)&(w=0cyL=+W2jF2CVA%s&Ul#h8lpw`Gn znzFcvbU@$Q!e9Zlv8GDmcF$2RH%&6&<Q~M(DT@mr%BlLs;Mzi>?5P>DBGW!$e5yWH zT12|+<Q|&8OmA(j?@V=8mY3GW>WZR8lH5nh2URGEvV?H<_0o}<xGYH3hwjS><ear) zz7!qBKBGrTSq`d1B3O3!yfc*=oI7Vw4ZfnRb1ZX4WnFD0KZ?)JoI7`La4x}Xl@%m` zs5=+VoIP`){$*_zSGD@*x~kb##J2IvsvZ6I%(_bZ<4WSaf`{J$m)o<roN6pE&N9CI zMBg~NgNWTuigQjXQGRLW16C1P3(21j6>Rk2H5MuLg~PN|iUx}@?rGFcJ?cHV$i?yw za_zf=+)cq@jo-e7r%#{eVt8=z>1QoGYffg`g6RuL*QDq{{nXUdBXJ$Kaoy|UIyj1J z@j?W_ewkhi?FS{V$|DYW^04i=`z}OB_oiJ_=BnA#`sOJ$`<v=3L)QH1$tqP{R$i&9 z{&V7V)z{rP$?u=kIC0vPuBJ&o|D?)TMMXT3EPu2^Rm9^JG&y;4R?qCoGxRU(biFix ztV+%<tJc3PGt=8YWoBb-ZDVF~f1iFcqqbreRn{x{)yI$iOZLsS!-v(s;_)faF+IYu zb^giCa$F#%^MZzmIDM1@$fGVCyycd4x7?y`J@=Md&ZP_ySKqHD(J65u<C5oc9IF5q zXHT^P`tEuLRsMDBhSsf9lQzuX!2k9>pG1sMk-406hMaAE!eB6$>JPi6yaEwPa`cE8 zZ>$k8#Bk0@L;OB9Q0TXT=ek#No$Y`wb#LhW`!;;)xyaVY)A!u-bfj<g`IAU-*>PK5 z_^uDg^GstBzl!J)DV1*)Wai~Oksuy8hd;2J2Z_o7V+aOy?m!Tw8cP#_*mPNmN!=M2 ziu@y?5H)@*Bvx9z`j{6QGH`*%Pdvi!(RnP8CNW|Y1SZxf-;`cRKp@gRDQ_av`qvZ$ z!^9!@hnpJhc(L}j#tBUmj?7k!z_z`1jg%)u#^-tO{ak&kt*57rAM4ZdrnRT1)p=D# z&Nu4xt`@O^v~;<z)+1dl@}+!Yzv?;ZxO!g`7`7{l?_0FL5gsvJdJIs-6^|td*5TU3 zRfyFtNM1ZKDllY9Fpw=zMH4zAEW=zGUR6Xf;xKl~e&_Ds?)PvzEeaYN>+2H)BHQHz z>(li()~YJvb%{FQj5VejQ^gWfqQgj?cv2@D-D?sO6OpX%!G)3|cgyX4vuF1e*C)!$ z6Y=u$*PMX=)JjR8n?I|kdwP0HqO>$2KM!u*`Wxv*%vt#ZA_G5YPQ<2zYRznF_%*}) zJ9338B(_J8g9?oq03~07dp%Z7p@+a=8972_6=jsc8_f^OW6_UDV<F<!hF29Ylr)xw zYP|K*lv%T;sE(2UFr&{-y>OlwG`IKnw)XaKf7b5*iT-VnyJW*NH8Xh>-%iZiQQ#ru zO~b<+;)v0rXOUv*oMK|ebYlhtc~z=IV30Tg8!GEXU~zzOK(b*`#8EFYA5yQfZ_mgq zj8o3i=txz@q=}VkuP1AQk~mtNzA2m^@<|c}yNB;q2%`(G<vJBy0+J^glUkxJrO8w> zRVra`7#q8ja^R9(P2)%JTg>zbJiRD|QcyAbcIdDFdgIPp@j8Yo3YTr%S?<2O_uh@m z!j<`jt<mzG?z>xeE;?}FexI2itSGtEeLZksQz4n?%6Gr}DhzEivDCJlgpOr%BVp7w z#}iIy3?t`<$O>^{sgnrT;8n{{kIm~&x9nPb89hgRe|KoXlGV(VJCMc99%Qe$#GXq= z8`3m(!kfgFfE7BM>?S6q!Bo0jM^h=JDxGbtMMkaqP(|lr9YDRSar_lmbT%<;toyY5 z@Z4@QKJtgwaofhV>E~_MvYNzE+qK!`A=tkq9$aK3Qw^sYN_>!nJR>de(`o(UT?5_o z-nW(*>irA0oey8fnv@ei9k%1AqkRG5rvoibfoLdA=m<&1)*l)$d(^#bE^qoTJInY# z({DdVqOn&F_5Du6wuJglg5Q9KP0m9Qlw+_W6iQ$VNL#XQb+Pr!Pwt{I{U5k&i8C+z zUOuqrCDHp54s9yJ0Nr_^yfLLustP9b2Pd8y0FXhKBWAJ=vM{1OiNOLBh7JN0L%T9X z`y7n{oJ1m{WS{L+uUbv!^0&7Cfv-szHY8W+ReerKuD;|)qX$Xq1Yrbr-Vp8&l4r;G z+{u~6>0Vu3u2b9X)Y$T>a@;rG1oyE=hUiOLyg?)qjZvRz9n%*soGw3AsZ<p|&)WP> zy*YPs-`u%<ljqK=udJ%Cud1xKeqnPv(|F8yQ9YoZ({NA9jCWziT@G?q@M0QkIBE$3 zmCSoDNRo63LvsXQTZMB$QXM_>=JoW>o!gu4>`e3XqWxFTyjJ}uA3+O_JrSJ*I}lIq z=8;WiJ;-LSdE*x)Xj0aKz|Net5Is%w@ox3b&i^*+M_yN7utder8LK`gPSK9-lxW-0 z7*Pr9WT@_)|Gm>HGV86g)E7oxXD=E?E%b4@)*E9|n}AO!GU+3`O2UeXmDT&mrZ>q< zQ-gE@r|EKDEI%ftLAaAX5~x(Y0NO-tHl)`qzRcw#uZXeepcDJbvql~gGtc+4p{`?K zC~#q5U=AJ58md;1T*Z^UFpTyyJUR@Ji~H<zR3`h_?{d1Jmu2T1BoHEk7=_#?j$v63 zv0~unm!l7>#xkrl3RxAqF3XY)?g}{bReh;sG8$-!_JvXecmLBv*8V^4vmX82A0Jl3 z`k`vqLkAyHOZGi%?O(P}>x9{7OXWL}0ME=U;tN7Ic%~l%Y(CCXU+|*52)-m0S|+a{ zwTfWRkRmBqba}}fwNrzo7@Vh0W1$OHZ<-c{z3G_q3TS(uQB$7bpLO7wXKctW{QB3w zZbkUTge8A<nDc)wbSX9}J~@^lXOv6yk$WMv_-Y`h^VMgD)jQ&ngo0gJLS`sucXl*6 zyLGwCY(k?gON_22&kx}|&}X+Zyli{t5hJgg_0QUman5Gsgkj_afg7s_w4_~8%x4UH zwIijQkOFA^m@=ocjXq<YZ`Kcsmy!j~${Q}sS@G~#^2X6&w#Sd!5{7<)hFP9s6}d1! zX1oGFdI8!i&m>?x16TkM`xk1fM`@`JdqFnnOA;#5@<#3Ab8BkOU0l2HmG@6R|9n~+ zfKTDYX?XD#W^B_DeNG9!WS40Bo454mQF*aj#_|}YD<cq+H<eW8<4Gr#v{G<4yl;5; z;h~{@b}p;X&}Goj8sx9`Oe<^PNRTiT*+yFBBe|R$ylg^w;FtpAk;39-xq>3&51_Y^ z&%`cTxoCeW(tSz}#GAkg%wsFMoBu{u78cK8DXN>~^JN-5*Z4)jJMto`;elguWtEm{ z70-@1YUwU3>rP;s4-MF=-PXu+pW1NW`JuiK+!fBdZO5vMZ=H1hY`vG<T=0|353MlD zQ&Iv<LWLZW6)Kg(&nvdps7XDut#j08XZKh?P?IDl{Ne?fZ2Gs84$dq`ZM0FT1{5vI zgRcc)q3|}`dqN^O@k9jUh1?oQTpMXiiVGubSuxaxkVd?Q+9v7#9<$B0k72Yu!<s*P zWMuZC$GX&AYH!zgYpr$3`0?r<^$F`j+3)P9%h;Df3&KybyGdfD_}*jlwuN=E*&bb3 zKSEHyELTY9S^RTk963`_)<wL@asX`#9ebwQcJ8;{Lby@?N`pq!4evPQ;)!62w0cy5 z%jPC22I0SMbNNoINxi!B58K}oP<+NL;>-+UsbiEGt2FjLo&ecyaG4Wgl}Ft#iO%9F z<PH}}sc6N9QH07+63ke}3uWR8X<lX6wT*O$l>{rE>`lbo$5Az<PI<g6UM32r_RGqz zY={gooJ>JttaLvs;_H*?Q1`(6#hX8V8eIX}nwB<Avz~5U+N!F@ja$0-ex0SfZrw<; z1Osi|y6Gi7-`x5}T6;umL~+<4g1_lQ#Ddr))eM}P$4xZznhcI<Cg>Pj*vPGPr0#D? z+4YR5Y~-nP)J${@>(WJDV6%A-8g93-SY5Mde-xf^fe<IL%cW?wI?I{bFrmDyG0cbg z;exG3QKYc2Xlq<yEiH*|Wxm?a2VI~U`=~=@gfWR|Gj1f5ztJdU6Ri*rel$|Df&Sse zYmt?TrPPivD4iuf`Y`gOk9=CBsBrh6{kY7<&Ys)t%*%dMFfX**nOXjBnVRQe#k=3@ z<cQ`Q-_uh`L|@P1p2dq6&Ywq2O#jrr%I-=!d)O5Oaer1A73p+oI-P*aIrX)U$a)NE z(a{@lZRdp?>+`NN=eAAjXic_nJe4=<t@3$;l?|2SYRl)!YkTc~md_n>KCoZ;!2ZU) z5`3oNGx*pzaZ5yE#ORKXNV6A0Z%N;Q>-hazsgjz5N+POA#Iq%uAPi0l(vidAYq9eI z`qHmGwY&Xm<F0-3()<#?za+n%qS#MAJ<@!*Wl1tQ-0}>(<S$+W#k;`*9!cH%-b_d> z4SuY5ouV4n@0>Tst*VjBLsNvwvP~%Ju2oGjhB&$=9LP<cLeK2&erwlTBM-rfttv4{ zn)s*<eAN487m57n^(NaP&Y0}{TBh)GcCl;8fH2s3?7bpx!p|HU>t_}LCdb!oeOrC^ znOuMKGj`paAUKbkYw@cUL$YEIosPGG${h3O%$z!T()jk4bbWP2S&Sm{j!lD86o{RA zy0AUuj2Zm|<t>=8z|JAeiaDMfLLW)uR3?-F;IgCykRw-waQ|yrqXn03QgRGiP@L(| z*hL70&Xfz4<>VJO=Y=|2FRWV8_xaZLU|!#fs^-S}nMLV%Z`*}Fb@R;nM&E^Pz47$+ z>D`&4WPX0KDAOJHrXQ*oDkmhXi<`#J2!EouIys^8g7A#-AL>1~VMV+t8Ypf~T(+X& z+}^T8b8#Tr^lWlPyt6zxKE8sa0Gl>lJe3<MV-D$Nk}-nWP)Y*8O{Jc_jtAj|Xb`a^ z8pD+pl4n_4Q<18qyiG}YwEWn4mOc@-QsYgZ1c9V#&78Tf$ZR}4q7Fq)-<XkimY;Vy zlQXCFoI8E`xjiHQZNCb8^Q>)|QID@zv@a|=IZy*86=_2hpbg@BTER<@L}|%#9d1Yo z^i7SamWCF5Tov(H2?aat8AvFLwtjk7xq%5ZH>-FuC99bVDm(=#Y^OO{qVqPV)g$T6 z){~_1n&!wMGL87iT9V#8W<r#*o^BnY6nZH?*01GH%_H1(5PC)8Ye>aowk~T6;c^bM zVEP=^rVf19RfL9CrmND)gblr8>TtqRFqPsORnVi-;V6JD#+VkB3%T`~@vW+&YbwdB z%FnNf<E&qfp|HvQ7o^priFub>Un19a#zkrCjARbXVxQNv!>-1XWcVp^BRW5%B)f_i zgm-9%T~)7hbnCU<{8V#vTi^h>Shurs_3yJ)CI{0wX}RCgCTSz!p&f|?Zh<pUr<#_x zO^xZg3PO+zY%8bmDE0v2f#94M;swz1z<FD%P*3ZGwh1LkdNAtzVu=_y8r4WvNlf#A z=9Yl)1rlY2cwiT~Yp|kqLG7N~YZtWLUYdxPTD9@mhi)s4D}T%Un%i!xU63;`b6TSG z_S<7|>mc8>ws0dqAKFth-}+&^bkCkr1V+6!2K?_5_+On}$5x~rNa#K1Pp712m}gf= zP#4ssDGTG?spU_5`B%<5jiyiMtW_K?UJH#a%A8&i#ps!?A}GzYt<jn#-Rujo@BD-q z^J@B61@hR1{=v#hDS1?1S6N$GTb3w^m&A|5sDyi`y5Z5$gs`eKCwvaE-92zovFiVN z@kIl?vA!X1au!Byem=T>U|@aJ`nK~1oa6X5r&3F}$Vg;LC3OMUw$A@^f-9693YZ4v z<mhb*m{UJrl<-~QixoXWDeWS4>BkCd!z14|d&4!6kALLXzhZ3_eEOetJ=-Gjp^DC- z&JY_C%e#=Tb0b>0p@=?Gk`xi^OGQIsoL4Py!*s_6b<37u!20{M)x!M7xVdG6wPUL? zOPdR<uPspv0#H8BiW_a_ndZgBKM=ozMsvb?Dl~GBM`KzS>;sFva84W}G2bsfUS4Ib zQ}=|c!k_ri&;O<E`TEc%x?BE(^}6*_JtxDgRwDqb^*@;txFV4^Cs&dS)nFACY(mh) z>!SJ;R2ij{Z^uZyG2i;~*=klGxW&3^1ISpg#QIu6b19;_C5cz81wPWL$bNb)=o`RR zXDz^)ae0Lf2uV=rLCOtdWrYIFsn$Ez?;a_Nu^tJQ;*MYa`Xe8Y)P&96k#C1<#k|0n z{j6`FhMNu;r0RhmXDtShEx3ZbBVMU>X?x1u#b^qpqJ2_iMkN&i0%pes>nc`5%{trq zGOMv+gSu_2Ww97)&Jyb>SqxI*Sc`djE${<~k?eT>m?%9jCA+<edQ#nz{DPqmgl)g| zUw;0fPp}B;9&24yd7Elb_5V;9_iYN*>-o$wUN@&{9AS@kR$w8|&auT+;&Uv=3qyD( z(t^0;TB0d6@{h4}fm(RB^(^U(>OOOe8MK~SqUIK~lzyi{eMaN!@B_@@G3JmodNW<6 z0ir8)7Y<$52(vDp5uz@|O6;Zwa2qj~rSW(vrfQUqvSczlBZsu`uJz5Stk`?&&wlp7 zyTerl>iY$i;d?&#v!C61cX^eHh3cPoXXz3g#K)ZK4xepKrQSgWG3gZ%$sMp)-`R@^ zy)_|(zC@r-$iUr|vPGeY&s*<gY=U^f*`0Uj-P!?heC!U{s(Q`tr|!pBjg(a9igKz@ zM3X-5cBV}mF)qp<3~l9L!P<bm8d(Jyg~D7RzxLhviBdxg!R9qiU(4saPk6B%#+@=! zgeXTzlg$s-Ff|EAkz&Ywl7*d2P~b9XS41WbC49!TbVp4h8Lg>)-=6QyA6neKprM1n zlhSzIgOg?~N~Z94u0C`Ak3PM6w!E*eB>X|>aTRm>meFKfn~B6>%OR{JNczl9GCJF| zKL&>??$uym3o}Fx2yH-#;1tYptX5@OJ=f|Cmt$SJB12^dp4gO5r(#k0C2m-f^27kr zC6UJ{p51t26F6O&9~B9T%yc?=`wcg&yr(Bx+t6ND*WOSYU2xBatFBtVskX7bx+;;V zs%lFYZd&z``5$?(zP+CRALQ-!`nG!h$F%I3Yt&f(1dKz-)~-F)VCzPkSvQ!K)E5u} z7NcBXbsqKj%)n4prd}>mgwP0yAMFx*$)bjB-ieX9!;&S__OzH9o0q>fT)*;$8&=(L z-F0hjRblJhTUTHAn>_%!XV0FYJ$nE%2hKH5P)Gs`jsquRt7JoNwo^Q|*wQ3@X^?DI z!v}o^VAg3(>?XNHNmdAgM9vk2-a7^;UA?DC9NTbs@q61CSO0O{b*pc+-c{jS*IaiU zpx&_ZHyStrGY7sRW6hTf0B97Ebq*q-1VQ8|BUnx3k;bB3Lj~t&E~9Y1w*&Jjm4jFv z)7f(_0>wBsiamNRt-tr)i*`Dwd-QQIH%iMz#yMY(0N5zvYFRH#Uz;VV!cbzZcWmLS zc_Ubpj0<vh<$J38jrn>-CLfgH><N;K)g-xlU`j9sebV{p@Xm|wy?6aiWjMHc{LwuQ zs(@(|&-*oT-i1=5kW&S9ET|7)9(0qeSvIRx8%)JMDyMJUj-JI0O}Z)%YQYn{>7yUL zcm5|n`q3e^@x}{o`_P3qSa(aYvC(-K8mpgxT=9}Q^rFL0i7Sw}V>EU0GhDmKYO#wj zZ>Ow^zQAiYvA?&M19(`BsJ$HGk+x^vmr8_}sK3&azTUcYm0GW-t%=w>Z+sATX0dJg z#>ss%K)VtS1cNxhd~HjFL_L%6$)+I&dXu{5qaXdm{Chw8QL}l-y8DI;KXls#H!7)I zfJS0mV=geuS*lWFe5RfJ@?#%D2BbF_FO5r~6Inr=xB*+FN!n2zDRaTrts_sV#!x)G zYTJVkZd;uf&$C{;M&0`fU##$o?|=X5a15HTalIZ{>J=ne@~<RQPK^1?$xyqc=pua2 zJ_ca_F0Nf06!+9Nry3hewR@ojg65Et_zgG2Nb7oOky(@bKl|COtMU_}M>501ncCXL z+h@<-zW9;+Sl;UO-~av<k+|>l{{Dp*&AfQ-f{oLCvGCPnU?V2HR)9N$%79WKe7Atk zxs3W?ifYGqQc_eR7yMwqG1c7YphnCd$ON{UATjT{{GmwHth#z=t6=7lGj`0Lz2l79 zS^@5nP$GZT*3YgN6iwf_VD7~;FIw2&f4VOox#Igg^zh*`=-ah`-7Y>h#2xBT%O;el zV)B0^su&dv`ab;b^N;!d^zXC3dguy`=fgh%&r68dy&@AWq(+9Xh!r+V=svG}&f(NV zL=@amf*K9ZCJ>K2wVsFO2s%}nG}rl^*vDgCWs|yQ-tZn-p@3$K4sT3Ivbef!tyQDm zSnK>=!@rg*hOXE?bj8kjSMQv+6GAxrd*Z>@>iHHJcrV!TA(?faF@P=#4PA~6gQE4p z0-3$8hp1<tmVF*om%jV_zdir1iwEBazdHNh4>38Jl99%@vIXXF$rBO5gzRxCiTRgD zg6wy=okjvxDDg|Q=mR3=Q=yI4ht>XBv#cStW#fi7f0@2zh<~?OKe2wI=RSwI&tPT+ zvfAPlhuxWZjz=|7q9x95+2FqJC|g`z+Qn?U-hJLT<Iok%)%T}E0Vp7Mz85@^k2a{! zK$&kNenV4jX2taZgR#Q&t@lKs>0IBedl6VP*&pp9*t$%!)S-M4u{okcNq(u}jlX<z z!$!5m8k#jr?YBOhM&D}DlVzU!S&N7CTEw8v{8$NgHIx8nL6GW&y=|s>pTl&G5D5?K zsov|?tun+Y9rP2%*d$jPH|YzttL&)PX=#b_3}_uJi~yW3?nw=<C}kYq$rf3o(A^s5 zak4NQH(D=md{{liQZ1il1Fu)<mRo+rf_dnv#Mt?Gp$IlWUkrLX!Jj{{Sr_VX>zS;F zacHL)zA$`Z(4y{~q&;Hof^W*tgo17<lVe|P3rO^FWfJmF1f*WbOQ_4CFlv_Eve25S zURY>dr3U88Oy*vB=K1{hJ|VLA@oW=))-dP!$}lm<4C082BBpOZPB74Ehe+nKH_GzF z3S-eYrNU%i6L{v-wu`1!jQS{OisrmermC*5N_|q5fBo5KH{VM#%rXgVQV&z>`*%P1 zft6A}<I(!uk^UE#=x5`5kY|HCnl`He+H|0Z+Lk_|R$LJSwGnT7w5%zmRk>cctB&CB z?p2flO$fEM{6-%38=m#2Z+**pO*M8skgB@6D)oT%##g@b^d<K)Xc)csOm#N&9DLL- z`Ln3Gfu@9Nw|)j`)`Wk*;g1I~_a1&*Jz}ose3E#CLdl>ZXMr<{npgvr@!`<FSpo?; zeR-jfC$S51{^}r#!aV9B<b?6~DEx<al^g^z6hkFXtFPe}dG%Mny6Unm=0)3Z*S<su z-b;7gCGZ(n!mq3Gv{FB^OcNBslv;Fb_ifpv7Du_2Ge=@9p@GpTOm*MK&W=<^Vwf_% zqGne%2Lt6L%RaLI%Js$7bPM!tq6Ac+BDO*Dk^{y%o;?vuAYO{5a?Knmvf(@&QB$9N zz~qV6Q${+Kj1`lnsahPj03G(Skk}rXEI4)~Rg${wYDco6C=YOAtx@Y;9BCCQR5>mZ zPRFB#4au75BVR08*N}{t<kz-vzWVBu$$Gd~emW5=i6`qTzV`!dvlo1A0OodV+1N_Z zDOe-$H2|nbXzEci9q0t8o!m+FVe13xre`;NZT{DOE`0LO9cSOBeKOAB9}`=<+g!-{ zVYe3LAxff`sY>}J31!ENSEPqmYO>vV!4Yb(y%B4SwXsFo{3Sp4gYRE-v&6-=m8jRP z`jR$@oBiOT!-pS?REA*gLw-f*eDMQEz){SaC5kYdK*LD$C&)Sj4y1CiS~X?Y(MwSw zwMaw3!quzS?U>yUZur6X7iln*Z%Bf40fT5kC)OBzv>9_VnUWB@q_L)~m>6QeYO02@ z`y7Yk5t4IO+G{h~`bv}YbEG|um{A(HrB6-zF0QWi;A;ISj5hv&{GKDQmxbDyhKo%0 zH$l3~4_^f@I9{J*tcp==^0@t8dhkJboO2)2>alC`M~N|%8`OaHgz!c8p65^Ip8v3- zo_iGS%8g_7HF2L~-ZgTG=N_~0B<}G|J@hT_JzqMRdwzPT!E=xJHctqf|As#y`DJlH zeDR6z8ST?zsP*RZlemY=MseU<=G=2q>*`xJx~|5e6FjRsy2xoGqu12fd&2AY=3IZ^ zgx4SNUavY%aD6H&M~nww5Zx6gzUPXu_dIvvd!8F}k6C!ad(1-5Jp$+n)>5%=baO0c zMoI=a;XTMFh3=|2bjBbj+BX^;mu76(j(g82Y&NB_{&d|qnf1w`O=ms<qb5Tj3g?E7 z^F#R|xLK=wR6gK1lbt<^i;+w0{f%Cq#fLXiUJP%9F^Yl4=eztUd9(~yVcO%_(2QK- z*)OLAlkhcJRTn08`1d*Yb5`FZk{|&UW9B3n)b#otlUxS#F7qzw#-wDePPoQi*tMMb z-teFo(LwCUL;A^(Ko%JepN6jO^*Q!jyzAr6#4!4d{=+5CT->;6sXArncD3V)?dF>4 z#w=qlu^NkvL1QWU!nwFk-cRb%#l~gEHscE81ID$+4aP0TZN`U<zcTJNK1p|}&lsOG zK5zW3@u=}-<15Cq#`DIvjDIwKVEmKuBjZ(&D3Yj@q4xaHH|zfspPAMDBfsc(|NU>i z^?luaYJdNg|Eq6d1z1KsG;YV>|8LOJ&x|*WUmCwL{=@h$;}6E4jKky<gj9hlRx$i| zRpdsCzTB=RkbB*yrmI<Mu3DfLsX?_=EmP;JRqFlfB6YF4Ol?zFs1K-X)eY(vb({LI z`YUy}`lR}6^%?a!^?CKT>QVJ&n{rX1@YRg|1U&EE&)v^lDwof_6z+Z=;&XW~-@Bi= z*STZK=k8~+W87=KpULO$b?$rjI)UY6o*}Tf_qwkxeD2>eru&(U>HfISkn7xQkM@~+ zuXk?pnG37jEANknzoXsjeTF-R;Kd!soj1GkG3P(Ee)R3@ytU5Lf4^<N(SKdpuR7ds zuI#s7(iiX%@9m5Ei0fZslRYN8{cZPRuCeO-)dTXke5)^#2lK_-{LStC_Iv%ceu{p8 z-1w6G4|Mt~JuZJR`eSnAOFUd(uE)C4eIS3ybR4j<m&ib`yPxWN1qj|e*6-yK4E+Cx ze<IJfW%<(#W43V`dii2f&fiBznDdP_#sy@AUy6rohjEp$)3^>X=Yz)W#z%~g86P)3 zWqjIr(0JJRqVade<Hl3QSB<|nzG-~h_@429j2{|5G5*;wqP=!SE-0|~L_fKw9&{S@ zaZ||i6Y#v3&%J*q`CESEGkJCIbFY!lAb$P%*lXRt-S5ZV>;5g@yW`1c$0rd^n(Y73 z;t_v9_I%H8>mL1LUo2PJ-?*>N71^<l9LfHQ{gZtP1by6p2Y>9}?pz?7NdEn~uR=@6 zkmR%4y)dwhBNl7tpK&>5ICb=y?<mn{Ie|+#-73V^o*l1FY@m#YwZ=z)AtH2cE@hPH zDQ}S8(E<#|27={0+S@!M2aKGkum8uxRHHK*aTnl{*bTmLDM&FPjW1pZZluTp!Ht41 zsbpGG6RkORXrRVeDoS9i1kN3SFYAzwXFLL31eEGFB+!I+4HI^S4s2Yeu^WS>aU))? zoOUhb!{UIp;W=6uv(m8Sz+rtx$Aad-pe73hI=0ZI#~NbtuoKtC3C9y7BvH4Lwxh|3 zYI?-u5y_(iya~purGQ**x;9-^QRc*}9xZN?cvS+hQWCg9)JS3`(N*3!TkA73HqKMk z!TDR}gC$jyxnNds43vBoRMqn~&X{-k`+psrbwP%tx-88X;1#qhWc2EoaC)l7idar# z?u@BZ$aH8QM>&T|I*k+;1Y)L|H@yenzgRI*MGZwFEq_Wbns1F*r-v7uHhWeh#(6sT z5nhuF>3GNxLE*_@sHv}v4+1^BmxY%1b^vZ46hf<O`J_o-8R{b|jkwSx5jn3mb<nlD zq@k2D?f=*|P%$H|F02@6>quMS@I+b#`X`3XF8eh+^39I)jEVuZVMe;6ZQ!lKXsWcd zp`?%z%)6YcSIez4R`YemjIU=0E^I0vy|!r)59w(0$xv-I&NFa4WN{`jq!WyVnfb0q z7@rkpOjEa+MysZ}h~5d_FkibBPg_g<gwzBt2RX@BJUOAJIRxP4C<A>fdV5#&O<mF5 zyCR1Oa=6PZF5$xN6;t_b$B(=8EAyIVEX{~l%ZZM~;T8yOC{RIZ84>hLR=jXUUfAUX zkh9AtO|)k>wQu6ANwbceqa?wP4F?{}C8?K~Gsm&tpVXZD+UK>j%xl-bPjdbf-0S5o zCi9r_u6jWID_+;+3C@B)E3f|DBl7CA=h|Om^9(-9=Ay1EbvZh$@4#p#ck!#w`nHGH z$#vfT(S()h_R;qB)_2}~^G)ZbH{bjf(RVKW+V@Gn`EZ`}o~GYC&yjnR6bg2qr|*B0 z7Sx_Gq%pPFQzr7O)qH`cR~b#2hVmqVyx8tZIgo00kj_mK<0&R8@`Pd%YTNDWrSf9J z*V2u9s;^f93DXi)m>|0Jm3{jje(=F_0-^Gvp`oJkP#{zp85}IEP?OiHDb|72)`2sN zdn-OR^s$QG;*#ES-jq*fXdYu2{rC^>I*yH4^7qZ<Ts86#aF1T^*u&(A@R7fkb!Xw; zqZj~iyF~!pq<AR;;3nVe;Yj$`Fzlrc!*j>&xl2lUbg$}oQOt(i0vx0FoDv)|Pzw?v zgB?6@K#$jTK*saVi<<CY#>AdRKCJee@<N`ncAUZ{L;etFpLXmpC7;I6$V2AxF6)rY zOIJ1+JEpF(@g8vHx5t#?2zuV5a0U$`nd}@Wc^LM{>=Nk6K$gI%!r+H`oGJ`9cv<Xw z=N**DZ#;jvk7Ydkvalz+DwpZj0`Uwemc4*b1~YHAB3L&y1|m?>D2!s06KRl>T$2gn zpa97WRZ8rt5!B?8pcI!_qz#ycwL6+7_n9Qxkyn2HbM?EQ|J(&y8sUii+HZ>dY8u4A z;~vZg@lYs3f_Pe#3d^47s*(FNo!k7`gfFngx_F2(*LIngSl<C&S028L@xmBMjLV}E zyxpWyvX{+ExL02@iM=Avba@MtSw3=~xpoqk8QD-GL%DDTB;H0QEKXE60!X~uSRo}Y z06;~`2GFLIPs2L$OZ5+LXn?!avwSZ#XY4r!=-ElhVCf+U+<~ShX7vJHATxRbZ@lq_ z^K7|Z=AfgSc&HoI#zWO$sqMFAPBCX%)_2~prg4u|EYH(tvpqj~9%8BPSxAkGXuzIk z7Y`JqYCw6U#_NmbTK297uK{x{8*8uro-toEmpk8Ue%xu=W4*YSD`bxD{W)_CxO2S2 z+A4#cefHThp1|mi=Yg@)4E1I~+{(zm{leM6rg;S6KF6YwzF2JU-n}oX$u<q>>%Z%r zOJ6jwS50;%BjX*=e9AP6GZ9vDArM`z%RbU#8IH1-p5Wi%xqBRbmc@yRHmT=0Q!MMH zy+AVx*GbX{fVOnE04wv-;I@8Aa3|x~@Op3u%$!4jZN2lQFS)3bYhBonM;pFWs4p!O z0pnjdpeDbfpEEk2F*pzDSxs*Jl7n*2$KO)D@e*+EGxEt3IxRCN9HRKMZr|xtp@3x} z@8-1c3{x?hMry@jT3`?;oA1{QfiZm10=A(P`GMUKib=^EDrv;c-PSv*XrJ}cKGInp zShw!bcg+{pjof8kvTlSreFB4e4j3fvYf7d!L?teKHKIhohooc~QF;<?=vzg!mT%CF zfD<;vJ=6ftlS~9D2;w|Yt+eh?FYCuyn|(d&4z0HzC2Qc!*ZVBLM3m~{fP~#-Gg5i1 z{}|7T>5?Yo+B3zyJm`*fGP}*bd)%4XwEtV<H3zq+*lXUwp(MM4yOG`IZo%4tb?anY z)=b9ruh#e~Hs)qBIz&Yhbn^q0h+x6IjgrE;Xj3F2XtT?NNci9=@(MKah+-1cDzQxR zRJC&5zLDMg)>-e!qs?bV9$L2!HZV^>V7-jj)N{`BSuX?#A1*B)HDC~+FM`tD-sW=J zna98(d3-#qNk1~Kwyv|r?OXTSI$!;vYYyl~>HRV~Po4um^>b`WEg>bfgyc|?5=kZ} z6EQo-cupTrNhO;2-JRIGPHnZ`S-0;s-;IY}Uw1&y%ccoEACWCjqUNrW5%~d0)=TTG z&4ITMmdFol<G1&dgB#H@S7grCA<8!u7ZmxV?gML87@)m*kTOAJq=rI4TKFIruFBWz zR9b4URB5tQj0mwvl&<h>v)nZ+Va<FRb+TgJxw~!Ox^?UJ<!m@vIz8E(jc3!6>^<PM z_dlAjoLa_B;ZPnG@Cjw7+mJtK`XQ)5Kt~@2R#C|^Fn9tMAUIMQK%Zs-f-4qy9Sp!m z7`sxS0wB!<1QvU5dSQWQ`y5z;5>^i^#3NJE3ah{}0yu-Kq%r1+V2J^X{J3b^JBlB@ zcD^1jZjc)^PgD=UjgSH*K*z`_L~`_++a#i}aqODgd-s`a9!LW=2a7XbfX&(CavnVZ zr=^w(eP`Gln#pM@HdcXoJ3owm91`9rMM?Fjx^CFsed=XrNLfW0QO<MC&%9$EEj*qp zbH>cVsb1D#vKTIu4xHvCjA_?4lgKGAn65}9iVjeUSnbaJz-#92*W6ia_%v_7ld<&4 ziG-dzWtoAbEZChK#Db!!<-lv|0X@v2@49%q6Q6UwL4F<buDJ1~o~vvu1T|hf$#pps zmD7iXk1}A<x-LB=RQHe!%aafAfy~o|Ef;lMAZn2pHo@Bg^#D`U7|V_U&DyYWi@?V5 zDWscC&5)B(hRT6W;L-zjaeC+>A;WocB06){JpR;c@7gGI#+G^O(V@iA;j=XU@~Nyb z=W8MrJt$`aNs*h)`wko!S?j>6R?=(3#p4OrSWarjff>svhd$x#jXO0S?V7;u8nX(n zEPnL;VINv)8Sk|Nvc&ftFh6wY5rItB=b&EWQP@smje$*$2^RT6nV>@_S=cyh9QuP% z8m3q`_1-l#CFd+L`j8x}(SuzFUb9i=TQYLF#@e5|#`d)J;4*P%c&45mU&~dF{Gsc& zac-LAml)`AL_{L$V8N7vUM6+%khkm>&jo%*y%U<%^#C1dPA|Sla(CDS;K*^8z~G4A z)%$!UGF-kvHjTYK89@>%IH<ErC@XTrMt~aRKTQ!d3({1<ut;t0`gz9HlBu@CV#5%* zRP3<Gg?4v>9PC4_@}Iq$(uPP&Xc}JASfq-~LTFabe7L+YHIy%22x`{l_SyV?DSCnN zAc$N8GJ=R@oN3wvt*+Q>&D^Vs4)6~;GmQg>FH?8=q+o_)-@qcIEi1>5JBmReK4DP& zLpS)8_5P91sK2(>XxfE8DdC;Rjt7+64{({UN3*o|wy*7T%jMn9u6F2?=a2546Ygta zw+`>t+uGebo-s~h|7Cfs-hMJC*6I?yRwsy86jFsmWmz=*XdA+pP8h$c?^9bn_vz<3 zH5Az`h?%y1iFNVRJR3a$Wd!*TNmeM0k-FA(K|MwVu+P#k*zrzO$dC@}n%eXm=&c|W z4&);o%7Jqd1^rwal!ycQQLnBWd1W2XgVPHg$v@!qLz6S0$<Jw;l=ztciQ0nQ3FOf1 zkNxli2h10K^dsvBqd$Nnd--J7QA!rVgYEV38BN^RoyFngOt+T6*sk&l{_+A8+QjiB zc?hy+^9u4{VxFCw@7cK;V~_6|d1u$aE*D>5=)mD7aJA3DmGnjfU~;~M+q3j039;y& zXdeMTodN@a%a8LYcT>9?8+@!&^R1_?CF%m}lh$SOUWPxQGD^<86YX!6K`nY+<Ivs< z+!HcdB$dhb1CL4?V*k{lhL<!sggA!coDxh}pAgxx^z-$(t;h1{Zdz8$k$-H3gJJY2 zhaS;us(F-#hdxAEcyx7Q-{o8}3I}otaBxs}>0|l@nUj`_!2|o7F>E*(L}ET&-3~bH zvc?`6QKoZ1W}}bO95_ydOI!PJ<}b1V&wXz)mW@@I)oUPDq+Ss`oYU7n4`prb(?Dca zy)<4yT1Y?;oP#2*Gs%$7fLg8OLit-@^`0&qdW@IFlt{*7#}iBeq6RSVc2+iUbR5Pj zl>R?jrVc5ZON&fRdJxtYRs$tFSGLxfeWIG=kp}C^nJ^)FgqE;9c<2&I)_D$l*DDvG z1@Hvi5Ns@@gJTKr$OOVuZAsBSzrnFPu0u0=Tupb-t{+Ctu<+N5z$+DCL`@hYZ@{S` zLz`ENY^<3z3pY>r^(bBnjGoLSjTgJ;g*FdKI6tKx(LlXGXM0pgX$ozH(&O9mjDCVk z99p_R5+@?lh@>Q^3_0gmypAc;NUV=m8eT(1vQ@3FQF$^4C&IKCO$w|rtTv=!M-!Z2 z*8)9WSxI7uG?UQ8tctosS-AYbk@#RtH%<A7k+s2$fphWUj_lbeS{2b^@F>0u4fwi; z4v&Iw;qZFHj3Gl;6i!2iS_^pXHCGRiRrTs94?yo&`8|4QZaWZ0PBm&zzO)6h%gYl7 zaB$j&)6?k-_bx>sdwt<0)7PE#@r$f_rt0b!qvN{r%?kN;4Hu|k-g(C*w}}lSfgjO> zOYgoQonEkUnv8qV$In_f{gQ?DxbXRmTB-LZ@X9a}Gj0+*#>*NFzdddwt|Je8Qpn$_ z<R47O)2DBkwr=U(3spvjRNu9F7~O_fWi%ftG@3JMn1`Hh3~86v)wUmc1VqA!yfhS& z{9+0XQe8*4egbZD;RSauT{msxg0#wj1Q}WI!O%i0hgX}I_%<VHVBaX>2*!@9XdURb zki$b^N4!&#mvnlu9E5rm;tVYe6G|o0J}RRWTK_fl_S-|&f2l%V?{8JFtJhntW$NKp ztKO<_RS#Pvkd8h}*V9LT0YkXKI67Q6EXPHuxM2f~uM%eU$O}W}#QS}3wjL^{rg0Y5 z6W$Mm02enW4voBUf2+P9d>Qk>W2u(S-<$rh^?s}8ewK%SvZThr!{@4%zMU`_FNe=c zAIHjDh_NyvW*lT3^`!cyH68uoTh>&2ts$$GC)6JfVy7CbKb(^7NAqdfd5&E`+r0D| zInUSUx@XUc(RQ>NlIL7^wZN?~%onhwd-j(*hP%HY0wh1#7{bfEW4Ich%*r`~gyuCK zPEvnhSv35z2T%Gw<kjqbw!UKP4@Yu#BmrAp^_={+4xA9HNRddsi1P^XqCaHNA4CWI z-_Rd4Jvub$hbCu0lmDCggOIWOJC^=%lI!T|4|+XBf5@OexH$Yv>JJXSSe=9D4=eu% z^amRwxMY`Dk60Vjnbwympf+s%t?;^o&KYrhnfKs2kNzNXq?Y+Z#);*1EfPdUla;+B z=0nFGEBi^yqAe$_gV;h>T$>}=C)yU7-D8ZU_qS|k`<#>QZDJ7@|B-ip+tQmJMg|eB zNaI1nV~@cHC)OX(FOkdyF^C9y4B=J4aUxv)rSu13bw?2sJyu#R8)=wMQHQXH)||w4 zL72~o7U9S$dfjw%3wY9;=)^jNmckuL7A?XyQfv4eSweIOcp6GF{un84g{e`Coycrb zqn=7`x`+--IYxLxJk+A6Bh)&!aJYY$t4ul1@#qkzATNUp(IRYF+_vh<*xIg})unA6 z;*{iNclm5ALrGbY`7a?eyQ4dByE?=Xa<c~~xI?s6^d$7EG#GJIwg()AO)FI_4!F+I zA)Nhqa(b1mL8P^z!Lc-mQZ-5^?^&lhiVmTbZLdBBUE4Z@m}zWXmhzwmfddGjC>Def z_zkol&Q#$jN06cW3~=5h8oh0=cN8H<hj93w?pr9%Cv}rppaKEM5~a%(8UY#Js{<jM zv(;_v#I<wQVSqLh6r5+Y4>sQ*lFc3$c@}WBJ^EN`tUIV4GCQJUCo=Xru<9{II@Sfe zrKFUo^m<HP*gQuK%z~+1q&9bSIJKq?#|H6U>?N*}rb*gGuZP>&w0G*~ii1|MZDmgt z2UdN~<x7;D)++;I3}BP+tu26_q(4c3v@KN*jPK26<{no7;M#I**hI#6U^``h5=JzK z8v~oz6HoOVwC!l_F_^Pgsl%f2X4^l6EJ2(Q&oO#_y7nNOlV|;o9;=v*Kik%KD)!49 z*&%De)O^KR<3HOkY(t4B(t%N*yQeOb2ykK;^{%nNCai)res6x^3*D1Y#??0Tth~er zCoSu^#!?-><H&Ei`?rP;7D0t;j9c)@lj-W@n$dKOl3r{lOiBFfI#h}EAx=nSD*JpD z`5?=SHFpEqM`v!t2FZW0BP2c1h=>f50Hj0G&>0*!@lW=+HVz#3%xL(QMz^qHkDbeo z1rpnzNPjXgkw6mLBs%!$ITe#AG!bG<DO`$@c5?tj23IVTSLi>F9@4fc%G-@aijc}C za2d0lvGU*EeVXaJ0U^RrHB)s$F0`Lk^MBFssEBJnS)$;u<$D>H%-t@vq#Yb+gl>;5 z?_=%9X$@KgKOLFm#Jy?R&v}NRO+Vu(M&zUR#8PrPFeO<Qi4P;35Ao6w2c7t*Q5?RP zGr~QB$C?T~@}{G^i2VBAZ0f?z|FSl98#*ujyqCEjL*(;tPn+M#e){wD0U7cys}I-_ z4WnxxGsJ%ex4S8<*nLt(RwDEW1(3o}Y$IM|7l~9NJM_p+q_@ATA+cQ@L0Gc_d*f>H zOriudzgZ_i2<{%%Jja$b1qR1{?}K2D9*p3X)wKQI;XPWm*N+srM?WeTZ}u}}BRMv4 z*GW9eg^q3$*NUG#Er$=ubl6J5iex5W3H^6Db=V5*m?t@YkzujoYiX13k0ESM0&8Fo zj1k2dv!ol#TPoIR?(Xay+1;s!)qSF8Q|~NpG#HCB1Es|g8YW>rMQfvS@opR(fNkss zihy4Q$n4@TKMfp^NS)>%^jtM+suB%l4bhUK!f>7uS8-_?oD^fR(;*;9haAej1%sqD zc^c6FVcPOZla^1Ly(~0g>za#qOb#rY+%|Dy8$aPmEBe3KzoKi&+}o_*Tfewx;ff1; zJ3rsi)6?<!PI9(<z};)Qa5o$0XU;hh<ira~yAK-4>w1LC42iR}<6$Y2${f<o>E@=! zu``hdASW>sj=;pRXY)BT|F{#fenJOlYRA)KtePHUHqQ__K}aSye9R6(9IIBudg()i z;XEBn`}!Yv;Q9xi{_q{w-=RvjtEa8`+pX)>E{dm8PxPbI)SPKH^9(|N{9h3gFr<G9 zc?7<vcy7{Yq2>y70F7mPg=3E)>_z9mQFU?!sc=F68nWSnewts{9m6M0Xzgq3OVyRP zRJ3?|t&VN~N*Om@cU-E|(o^*K8E>CXwYH`jT3cyU)Y{s>A7?GUeK^}G!qe%)*V;le zu$BgC6K21TgtOOiPfqrqJ701^>|Pjsr=0KC*<t7Vbx-Q(>+EZ3s&7xVdvh93GT$$Y z3E32*9cYg+$$`lW7fzO+^!V}Vh6xjno!@tpecj}R<0mxO7iV+d>^Zj?^v!5wC%1t( za+pmrb@9je{5qFecWgOI2B+jQH#emlyfe)<2R~jTkZjw_W9BfbY(LCn&+21tr%dwr zY&xb7VJ-BEPpmOrRT+=uD>+4SJwFK}QK>yYz2i;cMSTRQ)SA)<huZWyv$)6%;NEMA z&NNkQ$#nw**DdL?U#vICEGBE%%(GuNeLA@G*0avKb!qU^qwmzql3i>DCI497jU411 z{0SI)P09Ze8cQ3qGc(!W2#h*6mP9SA5tL5O3fDxD(0={TX@w&U=$QEZzB%#Oh_(KY zw2v3R(;j1v`Y!dw#lJv3QaL0E2Be>+&vzr|keiT1DBIBk;>6UhV%@$yDr0?T=>F@~ z<6E{^w>xQ@*jmy&q}SmyRYs#h{8K)CrFC!hJTt_>LVH2#*#>onhXi!{gM)T|=~VrZ zy`{sjW^ZHSZVz+u`BJ_XmOGY?m6d(j;UC|27|NSZnx#*k=`YS-^7`5N#Yb|FLq9fO z8EM{HKHR7_SszK`T=f}gXs%cD<{~o2cRW!XAwx(C-4;^lRs>LGZU%fzo<?A|1O?p) z3#G4t){=v(F+!;zHPV~8Qo=t@aG|c#E5|83xj=#}sBcRZ>E1NeI*76GrD-^krjV+N zO?mR|uD73@(xJ}1WyOk3o6J`b8k#q$A$6OzL)|9pIu`aVPehBz3lZ2Oy5_S$B)}>O zW<r?QA{H|vh-5~Z2=Sms(4fF@qlSF+y1>mxxlF_DwjA}s9n)~f(uo%0@4I~}2FzW3 zPrd!2b2`sCCkytgYLB&Dpe9O>{Ud!xd{oCRG3Y-jdDnJ!Bbp=SP1#J|44tt(<D6_q zNlD~jj5T%p*yQYb*(d2IKmC+-^Uu$+JM_IRy>mvIFIAgbhstTuH?qRs58zGH>(lfD zsWF<3yBF;*17E$8^zILA1sxb!w<1C0g``kBJB4xpesX}3G3X(gm#0%C@>bCfG7tRq zxykbOjmGYiymLjSrjoW^>4wUh%9`q`vP3Le6v-!Z8FyfXNGD1+wMbC7NO$zewqMNI z0%~hrOJ%a8cJY+)?wfDs?t<ocMU3`slV<Q*SIz68SH|vwQNHHpP`6|n5e-<1U`|^e zQH&)3PlE3%g#9`R);5#!Bxp~BG1-aTlA}HHJupwj)HdXi3BH8U65L8BV1umt7U)<R zL+rsk_Fz(C3d#x*K|niApAeK-46;LTVdy|J8pI?L35h8P^turXb`u{Ry&$|lcFqR+ zOm@vZvundSo4%d5V<kN6D+|uaGoKh4$UA3&I?ej}${l%<Z!S5pb}!lrWaM@^I|Uf* z%Bmn@=5gw5C=65W6#~dNr7N3cjS0_`+T4WK$l=u1nr?4wr|(olRYN>Q+3k3$q$pV1 zj>tyaB90?EXzE~MUD26!><&4_@_Um`QUAnSyG&_LZ|c5^`kg6F>doEyx4HaANvYqm zZQGW)y-vIO`|p>g_4f<-hQWSX4mQQEARZbAX{Ti8ndAfpiJeFHcQlu8qq=p~wttiz zgC0U%Y0*=PB)eJrfTS3)Zg2v7)ICrLsFpBF>0vMbLR9SzNKUsiGFVWZ-~Qy`!{;16 z{K@dcpB-WyzB2S#;GYTnX|ogjPcYVIRuR809SNj(uIb-xV7v%~g1dPbwCH0S(&=8( z!YJCn_Tx~=%g@hSX5{7NuPRXadHI7>#4tK0bW9lE+1A>euB)l8Ovb5;9x>X@b`jqK zQdyhUSXxBwmex{fi2-V$ZU>PsMC|A{l<4Rt{YZ|zg?($b&6&|V?b4Owmv1Y$CO9cQ zesOElb+@*5bhh+0bq97vc36+9Cqv5@O<9l^nmJ+q&{+#BYi87>-rrPT*IZq3`qFP~ z*#hmKVN5Y2zEZQ<U&XqGf>e71uZIotu+0uS-3Co55NjIa!3TfiyNC*R<P(P@ig4kR zM9HjhA-D<*78NO@C|X1US;Q{PO-zr7Zz7WGL>oObJ(o`pzyDd)pRT#y3aLM?9a6q6 z)}ETiEqawD4&hRASASzZsr3cvrFruDLQ|uyFSNHcPH37?S5uy@NS}hfaCC|JNIgMz zNAKLZy|Od-F%fe`HyHh~_8nP&!e{I`+)Ld3b9!D?Cn>Yp;>nT1iBs3)s1Vz1a14+; zRp!MbfU>5$vRN&>ZyLNW&RIleu0D)8L9j=Ps;1D{{TmAMOgX<-$ZJ5W=K*85EMZWx zDN$2a!@aaE;a_7aBKt0C(|ET&nla{yL62SvHgT(Q6EC>piVG%o{gi(f_4b~DbfNq^ z)~?-g@L;F)g-+{`nxxJ;@60pLgB-<Ps(GaBeYlJ8LfPlY4m8-%oIv=4b_O5G2<X=$ ztyEIjM-wf53EPX4Rx8fA;@*3&fDx$E?muwge$5H=v!MOoo8z!qv`T&PX5lAiR9Dd( z!yIsB6rQFVO3|b-Am&-(*cuzkWQP|Tt*TYZR-x33b)qjp@LeL_-PMa=rC;cX*()u~ zV9E_5GJL83^koYxs=K<+qnA|0!1B{)bj=QiW{1yP{Pgl|k*k6|jn8E=&peaKJeTeY zT@~57?CHhl&FJl&A+Xx})P}Xg7|1L*DzyF(jzbZBM{^k|4o)&-TbnZ4I@&tg$9bU_ z(mHAALolaf%-{)i=!BE_dzb!<!ylnm>r75VCnk+mHGD*;3TG!8Q6VS_V;7#~$X-%A zB!P+8TRY@3-xm)p?er}LH=L{4F@sp<sWp)w#PKdd9*muoSRz&x5vvrhlEHm4cwT7C z;J%a!q^RW3WsM{GI--7Twd!a1b{~4B)7QpOe$R6vMzzsoyf3q)sV*Esiqp^16A|%} zG|a#Tqzb0s4`C)kCKfXhNd+Pu4;B^jY$KhjttpEaRu@&%Vlfhsni+PcyG&I{J@yop z*<)k6VTMvtnH_qPioioRv{;eW>xWL?GJE!x(-&-+GiS@A>US+S3=LiH0PmkaePpEn zw2`08*|I=?FTeL&)90VopEI8j_R>1zjEqz>@R6BBIxM^Z9MQa-Oky)c>$uSsk|cgL zn26`+8Aeq_ye?5!T$mTjr;nb4R7u!(SInzf`8=8xHdb9E<zUnJ@lDO0oz2dxyRz0# z+Zr0$<i|SCeK!W?LOKHgGg1>BBWNpxniufzW^p;fG)<u$nL&;)oYQt|A!IFj3t@Al za#^GR#E)iTNj`^0eInIM;W8i107dUhq4&9<s^5L}s;^mr;-bygPcAEpJM_`lcj$}e zA4V1-@!gp`r-w|d)jbkY>!p``Izp8hLz%_J6n~<(3Rya%LPr)}Kk)j27nY|}krm<z z=2H!?<ZTy(r7S`ys7WOYFM3ccs#30Af}vL6{n}MuwYI62%|+3GzqIIOx>-jYct_&q z<3Rh{ky+}md(JH@JEv#l`*X&?n}@a(6%H)Nd_g!*N&p;pKNS@^V7Z%BQEM$4qZpEp z=AfEd4_c9f)KV%{zdLx)2Bqjv>Qd{ktk)3Pt+Umpg9ot?j_zflNvWuYO_taP<&Y(< zLrft{n*QNNyU55dRC&StJnt?G>s?k+&hoMbws0VM?>3Qomb}PaazOQxCd;1^#wdD_ z2-WubyM$`JF35EMa*%3Wqi(cba_MyBC+fy`+&@4q(2mZl)>x347mv|g%<n7ZZ1Y;p zvi{QSW<%p=vke*26}w#b&BUJyr^p-KV$wS%qzghNLNqX<%pI+<ki~4UzvnZ<fvU3A z-}?5dvKl{J>3bSvc<0F9mvt5fYf6VVJpAy6q0*XAVP}~+D~F#Jan@6ZFCHx_fEfr0 zkOx7r!rd|_e=chkU0PUctW+!R0;FU&YCZr=vYB9Mg6gyn?)6wfsXq`4{|H|DyH{tv zs)2gDdRjC(y~<p;p#RXX%ny%HO(=IC+3~924;O59lMB0LlWT5^s6K|<3JvIzB2=gF ztbN$C_KH0NT-m}@vc8@TWBozpTcP`{pbE=cdiQk*n?hV_IL2c|gr<`-rnd<$kE5PD z0!wLBpwMgRqDLhHQD0NE2^7%|oRUiR%3W#QsIG~n^70$l$)o%CnuF?cYtu8<im&7s znr4x;KwWhZu#oK?8bjt^jC2wV+{DLue`lEcTle?2kD<YHGRu-&QXUQae8B=VVB{-Q z9~7Y7$o;krmopfXJt)O{6QrS4mMG;Q(`R%o3XiOJp3C`NuEbd_r<88BlJ<09!AoUN z?sxPI$*&AA+j#H28<!PUgy_TKPO(#6?^F4-W7%}zz@;S>!F((t*Zq&+ol+qxK(&D& zeY1V3-X<F~LA!OMM*Kw{yjveU_<xyu6Tr60D{c6`_e#3jylAtm#fv1%@*=OYE$>z~ z+ld`J30drHjzb_TA&J9IQa9|BftIqBP)diEQYZvk_P?df4A6E4Izw5?zy}O1<?q)v z9a<=bB)<Ni^WH02@{*-9-~3-dmMq`pea}7bdC&5ka}Fr;e#pL~(S6IoOnIeN3-<|I z6I*f^d>LqKH!eVUTCC=AJP0no5Qe9c91vVk%(7tj8!TG|$Sd<2!E9zD*;KHKi+i8f zlh12)pvV|;uP!r(I#=Uf37w+AxN#PX^J2FoxzNA`OaI2iU0`B+LV5U^)=!x5$ur7} zn9CnKyF2evMONt%aP?o0D5Lk>!&&=*2QbJ?-u4R>!go~fUaOTEWfbt(M>7FG5K~~U zQr8{U)po(0g-DOtl&&YBg*3RtNBy4o$toSr?Cjx0NnrtD2g1REio$ZE-{^;r9tyYx z8=<CdB;`0Mh=^cK?_MaoWL21JE)wl2TW_sT^!3d<aG-l@OYN%W4sS5%Ei5PsdQ<Z8 zhmZBNwe_rO+%&&sU6Zu^7eTK#81Q;S)8#qVQWh*Hufr<II&^%NX)VE{K+1?ghVleP zNa|Ipn3{Dh`O%`?W}Yg8mbR9FkC?4Pk0#<3>nCbg9(6TQSEDl9C&_6jU!ZP0p4{_( z`qSN5Xpoy2OHx+g6Y0#b{Hfzxy6}QWhqPwArPO8_sxD-LNj4#7r)nYO7v)-$jX??F zlzr1br8>VMRh)Q8DnIc{%s+DvL{*qvgz%|{9BnE6aJeD;A#q9>FsQANp<o}aOdQ_? zvA00p_}qDBllI_Kn_!IEkMl~1jd3(?q_T)Gy#OlV(&l9yGwTZSMt=5_O?f`OS(IMZ zl%Xmyfh|xjurH%6aJjv}fGu$1Ic`>D(8vTSzaWut=30$#hoJ8t$by|)!UM*{xU8R2 zGO-bAN@j+_mLin{OV$B#lhoL-8Gih>VtxB<_Q}7S9Z=USZ>mdlF*d-PCiViO^uc^_ zz}IH8wfZMejVtr{QBO70P_?4=B)PJ{c8I)>Q(*>3po4TUM_^3}Z|sm*mUFaM<J&c@ zqX_I+Ik{Bcux_%X`04An;U7Iu?&pA?P7e;!&`rs>8K|KqIa3BAWgfzjiTo6*7iBO( zUz2f?-cB2!dLwdW9LqXreHF0PhrfK+U0<HKhAc)=7(nmJT-fM#p_sTd2X0X+2#i?6 z)tDNA2)3)7I?OqB6pjM6-02|0#8K=l#(DNIe9QUh=&8mQlLmRn?SgTY1|k@UpS$qf z%Qm0Y(QlM=TWVvm+PYZ7W1>B=v0>k)TSxbGG+l8g%WH19zM&aEVw4UAj{yFm9tQa< zfKNe#HxZsfG;V+mMc4<P*(mV96b_z_bVN^K?nt2yfbf^7zRO0p+!(SU%Ff*uY!P=| zlH)=_m|YSsg>UIy@dNI!a|u{Qpb_{_!UL!0tV8WwUcYgcu%O*ezB{|i4pTz);29|+ z&q{s(mLVb0$5A4Kp9RA;wI$Ay+M4iT#NlpYTg3L-l9F0_O}t3~x%X7NemdshR5MRT zqiE)C2WE~N!fhnA-+1HG-#+y1Z~yB}yV=1c=zvHpJTUnc_VAhe4af>Xs3`OR)BWO} zdy*^+ik&CCmGV6X1Vj-1u-93Cpt#7R(=CP<Oi0!O(i}iCq!W37s9bGffzO-nZY2Mw zMnP^c1k#KL*g&zk8;znPY=(o;l8RT);#&NEGEmL=tR8+l!dnD{FDKx5#gg*n)6RnE zn;p@lIt&dk4{(Ag?K48fK=aRi*rD}TQ`iHkm{@l*HGoIi?9EW(bt`;GjZK~d9}HrR z{3PA@NzY2PfCoavj@MKRcof%;*{Iw!cYtvp1#pT~x7y`Ggd{&=t9O<-D|g^ySuX#0 zB7ea$i;U#Ucy?YzA$~C%m7Cd(^b3XyeYQdPy;veX1${P%)x&+*llKXxN16E4<b9;l z;+UB+o>H8Q{@Gv}Bjkn+e$H}|k7U8>Q1A=i>je=$GIB7<aMMr=)L|-@rW=LN17MV* zLWdptMyRm7sNCbW7dQ%V6&ogNK_G~B8qy;$Hx+7Oi>E#8bOgq-i_SUcqI&XdJ}}Ki z%T|(0RQVno9$3GAK>5yxGyJs}CFVe59g^(ak6c9FS~zNTs-qV1E6vph?-P|R<HgYR zIxWndUzA@&d!^Tt&ZcUVZ_2LCU{mtl!*M&4NnOBu9Tg9yyS?f2#6k8ObldbL#|cwS zjcct)3|hHE8PW)H8u&PDh}jl3!e!19O|adD>D|O#%O+uYDCG6RAyyfxjD)>GZ?Mph zOL?^TRt{Xu2<&L`2@xKQaw^zGF&`d8iPM(^e>ti}w`kBjx-~9ReCyl%XGU!6%I~Rh zE&h{aj7skiJd?ai8_92KAj^vufB}=Z1?WYHN^%c4cR2HkTLj7lLJoI52zrs_3fi#W zuuhJNQ1^);$Za0e;^8c;R#5_u5t&Q?0Rz3rYbK%G0>82v(_(Il=W)m{a+*S{>L*%E zOZ)&qEi@rrgrFAwNkT7t*|~gQC`2S>D6y&lln+4{g`<gJB5>=IYm#gaDky|ts{y<Z ze~TWxPhNgtUf|^~F3Q0kQCVJEQdCo1<IQ*4vkP+y5&A-uhuBAt=a5_hPJ>im$iu|y zN^p_4vau0MpNi~bpUq>@?U!A)9j{xQ{(Mhvpdl7($Xbh6jrP0w;vKAF$Hf<KS6<(7 zF?-cr;I2G77LUjNZi#X@9y`2*zStX!&w{l=tO)bswbh~OSPW*Mj^G!fIZmsp{@;zV zN?$c|B4ysnFD}l<OZlnxVQ$>aEBrt@SbNd)1eQ(!?uYor312f|U)7i-Jmso?8PG}S zKPrL}#VWz4gM>cx=DYlPe$^%yvenRBEQmI;ypMnb?yOKa=0JNDM}1=h#Ua}kIsTj* z2;~0Bxk&l6&b%-XjYgZj)naF9>BK))dz*jC+&w+Y#tQr+eaC@)Xo1uVUhyY9SPAeL zrxphOoUAa+Bwk_o^~YFn;*Wn(j!M1C9{78|g}I^ghp=Ak5HH0w3_s9IsKe}tyB%)k zS$*K6QRP|IzUDHvdA?G@k8MQ4Qb=5c6>0c^S%+ie5&Y+lyJfc=xpu|9-&*;td->0y zw9mMQQy3H%isQ4Nw{^wyFRXmwdH!?RisxTk`Qi&_;hPt6UIew9Yf(RW>VEME?iR=X zEk_~`KJd$`=r135@RwCpD0jQ~y?1-*=X+RCkZNKAdLTNd;CYQEHp0^;y3s?H9KAa6 zDhswBOqg-a9JaIJpw$eKXe0rHR<a1R8cZf0CNPZ%(2xgnkzSeW&m|e2PtISmlyG%I z=VxIbVv&#>g6B8F(I|2Z3Hz>C9BM`=5^}L7-+kT{x2(S90r--#<l^&k2D&$_9y_r1 z>~8j@&Q3O{Jo@u;Usj2uf8t{{I6i*Qk?XF*I3kl1Vk722e)S@B%G;FyP8ap)`vtQ_ zMjPgFK{i@sBey9u2fOBbvm$n=1CGW-g}f~YlN$`iVT8#Iqgl*gG%ODk3qn_WYfHQV zk|k8!7g$nM;Bn_UbE$#2H9!WugG^lXuYlc#h*>0Q#cNVM6oP&gi9x?m{}6$VNB&uy zqeawtD-1Y4`Pn~>Eou%%x*M*$!0GikFC2Fl6u8Hk*fF3V5KH{^1p!aqP^_c7J=W4E z4~RieEZ?8!SliUuHxEtI2CGY3oW{z+@`mRf`1cB4&WR6O>g;Htob3?JhQ>%$Lwz(W z*Oq0?!LRZ1x@PdIC<I`uv}4Vd1N#behmXmy6u}#^L6RYv4A49b&^(YZH;P5mxfI(r zN307S!a!vO6Y6U#;+65T(m)Z^j$9z1%UQYE#Dy-Gx}<nO^WXtRiaFBcV;bVq#>4JX zhDE~`t-YdW;lZJ0W1SlY2iA3WlsB2gWlLAAKYMt0C=dz-@OrH0&{}rZ+C$wP=k+Ro zUbbP~(w%*)gM~ed2e*$X4{g{w!aA$Uc9uu+qpS*Zv|*pwgE>Z^oqau#1t}y(O9F*Z zH%S%EhboH7KS?wNv?)SUz=NPo82*D%J*syIT}wd^L-H44z(<8~PI4OM`s!P>ldx3@ zUBbX{!dG6#gqo_dhH{9q;-dUKrvn@nVG*KQGPJ33ib}gs5+3UYlAP9x%%SA*c!abF z>{#!OoWE=#ywx>lHMOp(8;gbtOReUo`p0kl(iMG<g7vk9H4gs;*^#O`^Y)?nOE(z{ z3)_6PODgJyTPqt%3$u%}KHl`$(_8Y(s<-*Qp~JQ1^UG_&8lYP<c*BUbWrjrOnbHD7 zDmr7$OAV+$D?%O)SS*NhWLx0v!%^n2O*WC$iVc@DI%Ue(K3%na`>M?Yn;&Dp+t|Ns z>4p>gq#IAbCnpN6ljn$qcrL9%uW;)V^-fZD@j%>oAjQCN0J^ac&@z$jfjt1&zi=+- zDUIUMbm|9u>VpeR9R~yZ;A{sbg6c7B92cA8pyA<!g9)XfKyjhZWPpX<%35TVi>DT_ zwtnL(oObqQEUO4xATLR;!x?;uv;4C!FnmGR5Q$Vb4X+<ux1cl7TC(@-(hYl!U(g|v z7_ANlcP}6AY4dhQFWfFxHkAds%46Ze!)Gn_7L^A&Z1$Y>?QM&o`<HcA46GaM&hv+h ze5G=pZDU8vA`m4szkYB7+iYs83)IV2V`FV71~rLvtSVu*SP2^25S8i@9(vTUWuZ#p z78qA>NA43$KnCr>E|SsnMKDs(%Bb66QI!+Ci2{J{cnZtm997RXjpJn51mSuHXAdVr z;Sz_P2_5aN)MThST2ay!?(%!dG=u!GF<TZW|ENJ&$os~Ck<@hnAxS9|-2DLyjYAjm z^2m}=#fnQ?D1=UeNQpTOEZRSoNR0I_-Iqx0TiU+1zJ6^x|2eO%x3{gecWFU>eqmvL ze!<e--R--2Z|mLFuD#XQtZuojWmRqMD!i?(Sv5a?VSN7lxTm1Nb0PhR&nLfgI&JH~ z#b*<B6GKsKAFSUZljKA&7i>pXg+$0Kgmd6+HbRv(B4!Gi0xNfluq7o-Xl-t&FR3f3 zs|7p@==wspOQnf*PMU-P<;H~5=mM*joAm0&nsP2@kVE->k{Cpil@~WJDDoxx<JGlp zpU+)8jT|3=22&I{#x}Oq71vsCyY9N@y>2(mAj~9(?c@6}@>vNJ74ialk`0pzsssg& zWN927XG{p$TuCuGs1IxC9obL#C7I0^F-D3CNo_EjG_8TGSIX%lD-W`S;)Dn|#mVtR zfOZ5y<PdpIvBkLdj52x4_^KkESwy(Ha772;FZvw4r`c!7(Mv`Ylc{QJQ(k4;&dsUF z&aTKgSGnT}M`Ik?q+``;N3+Afvfvq7Goo-kx{m%FYld<{TKF?PSzovry@0eQh0R}M zOeatMNs4h6?OnUJmtMij${=3s!8MDz*R1JYv}Q?l2_Xtf0C*!m!L#T_bVz(dk|n6I z;zD>41oo7;kh}=|@2gOfUMIdGM5Kzz+r@?0x+{c3IL@9r?ol>%0uzo--pqD#f7Hq9 z|Crp6;4$0LgS(~goj|cHG3~rFtly7IK}F()nT{Sjco0Ru5u`!`5c~uO2uq-sXJb6P zjsPrI)XKp20^k%?%fPzesa;}b9RU-ZZ{&7_r<aV(qxar>@ZNiOiz8!iy)`!RP4)TJ zPacDN{sUx4lu?|s*vnBKGTcv)U);8YVvF@Swf=BV2sUWa;ru+SStw+M)EkZr$3{64 z*B&DTkSwdxCGO4^C0Cr*93&B2y>iFA@VQ%-4{ln$xCgF)3e!eQP4{_$rEzb8VdShT z&z8s^21Z5(7SG@1_iZQ)g=}4}+JM;cY*yit#a)4PS~v*T1s}0VM>yK4bV2A3fL9}A ztTQ2V3y=y#7BUkCO+}S%0+aF=rw&ob1qyK*fl9yKuk3&KUHteh(Mb~W@o>q$&*IwO zB?&Xx-YzKiNwugDE+*U<aT8!_WNiM}jIsNh^k`?-qJshyoH_vM5@PdGI!x7@k_QbZ ziYl?*lA2<6d3HH@c_{wM4Rov)S}9XBMt-fMP;^&IgjWtp)ncSjasge$1)Qexu+J+R z8!Pad_{$|{>uq*fZ!sIrzGT#ZYVkUYNzV>ia&jzqv1mN{=V+Y&K$qmVl#TACs{-X` zpR?M>yc4DDUhlw)V*1sue8_fX=P21ZIoS%V7UKJM=#75R$BVran4Ll&Bsu~>go8;! z3MiR@!9@x89K;P!TcGPOG!$VJRcs|<sbFz|A6A1sCmVv?%e>@w1!M6UYa3gD`yhd* zC8i1hwM{$~?K!W#{k)#VJKL2jt&8I=n_P{#3)elz@~yqi@x|tO7cTv9;DUMc_77g7 zOt_*Qb=BPwar~WkT+t}T4!Z~wpd13#E(!~45-T;k$bc@*2G~UyX{JGhNPvM1BH3t^ z*Wf`K!D#5zFj!nH2*u&za7ic_$S{EjGIc5wh}M716`9qz`NqJTbD1vx8}{Dky^s+> z=%7s)t1K+;dn6Z{VLojbOn}A$6`cxLNSm;^G6@MLZoZeG5Wuv*3@5Do3du74$@a~` z1I&BivB#DzdklZZ^R@}g#FgR=h%OcrUJ(v;7?N;4Q{W7t5j<q1UjWvQ$OS&Dm>vi$ z{=nHNLR1Lj7-for15Is_i;cw)JgAi&LH}gg4YW=vv=VKzrm~8SWEw%MVg2u~{e0wC zE0%p>$)?(sjg2d7@e{u+`2usjiNCz59AA8JuxV9Y-Kr-19A122aPT0(-Y{nDzG9vD z9=fqr37Zld%8EoIt_QmW3c8;B;)v)Tq-+%^9ma7B5*v+If~=|lgc+|JrV<3C+3AGk zem@iZRsO07l0gZ(L&h#3XXy3De1r@KE{^szVq0#(s!(th2@Yf4fjlz=ghCRs%v}H4 zxT3mxMPp((XPLRSFxt`*Evz*!%NZ`-{7q!^FXcbk)zN|a*g$lCgUi=iRn_8iHOyBo z#iO6_MQY2oD~~eC8?GulA1jIGxromb-g9ARVp|C_nrBQj3-~HZNl8r*fe&Ph0BHpy z-(cA$n2kn`TcFewvvH6nTwfcl@R$3M4_F!oduL2K`_z-3P1Bld?%scF@2@N0w0>>> z1)icp&xLc%zpF0NXuf3s{zpA77eV1MA1C_>d_y0A@6h)aK5AhJSQBlW@W*6@M+ajt z4xKEY<==GO_3S6CK>77eH{smpu<!ptcoqk$`+i2P4DuMmeVZ#m)r!-$5qR#v5#_aK zpC04)-Gy`S;OCYk0+8_t58{eY-)Iq{vz(f_o~k<-M$&bxk=>!ZcH~**wXvtwYoJ2p z9oXkn_eX#Su45HC3!{u2)BOG{M80x%$AKd(D%vpuj2-9xfuEbaKf)on^-1a;hFs6F z=n<S3<@cAkEUe&mEFnf$CXm#YlzqUlV2uO52#ZD!l^jhKO|o$-5+$(FuECp$GFeQz zL8ns?oJCG8LP0nehb;?@6a^Ci<(e4ei+Rco#CY;KcZRzncd5%^V1QP_0DD~dH&*-W z7hWLwSJ_uz*I%(HURfERcxWCQoYxocqY<WLxEUM0M?fqEs8AA0<5S}&a3~*tsuPTg zp60{#I5{9EHBbU)aCtp#pqh-%9HJ(i(+9Up70RixIa4%+@80Vc4Kfy_9@~pPeS5*S z!bvO}Xj?G|I^=JG(5dYuowDRMObs`+y-XV}1CziL;vyYzI$h6t`QEkPyS#roS$DOM zJoXRf4ew*<8eN;Tu@_P`c#uiW{0DX6br`3k)V&d)F&aEF>;NPIumnvMsX>uWRvDtu z$s<;2gC>mLtTe{5kTGo93^NIR?G=}fZrwIx#J$h0S<^#%AoyVNxaiZyTP-}0u#_>Q zsXPQxM~WIHGB#t=)*C5$YB0i0J2igrH~NT@lamZ}IBY3!2wb;r6!<yB4Sk6g^;Fs` z&hXsf1dKI7pv@v!?Dyuooz<@D)YF@DRY2LpE|~O{Hpa=iQ$48D2*a|vR}WN_1S*35 z=;9;H&|lrOdODf5E@|}#JuZ9xysF-w22(szpTOj`XB^aM7A5V+#bkoK>w#pP&YnPG z6E;i-FgEnuY1$8G&#05<Aru!C_)-&`i#=ge!WdVry%66kx#2M5xqszuyDQ)?DjkrP zcXjnwgcpBv`s8*k88R2-<QJ3_cJ?i33dbGc9?VUz)-2%p)#URo#m=8dbVMsdK>z@z zI!{v~3WMu*S`iLPW%v8wbj-8m&E1w;3L4}<X{kikb^vB~xFLe#3FK;U!zf8_LOr}_ zPl!Dd+Ox>&%eq#%?%FIb%XPl7U`NNqXYJeOzv{>cB8jc-u~@rO?5@fC?QipHUWnH! zw;6i&bT8V|EwimP&}Ztg&r?jof?S1>#QNd_yM*+@e$rq}2se<&3IFpz1XpBej-+<; zhFFAQ5%dt-<fNvJ5p5&{!5X%PvD-psr{xr90mYFnps{8%y$f-87D$g_n>A5Ay1Ukd zfV^z3K5vO+S~9Q{?j81$Ca;wSHh7ualb!9!zf^g2WZ}BV3;*b?U(kS2q|YftoLJ;> zWI+h3lgd=fGG?QOI?)v^b2cF>k}C7vuu+nT6zlZ40KSo$3^{?+^j~>uDpwp@Ki_E5 zL4qXK9XhmOo)MuQy%8Dksp)+8zSS0&1^=(U|2wNJZi~fjUY(rFV*Y#_<mbT-X)uw# zHFM;^;X=&AMMJiP0q|RcY*3$v!%98a0TG>h2Fb{NlK8*7neDqdZFo%X?NvU9&N{^} zY9t>~EC;i||2BP0R^knm^QM)K6k^j>XvD}8AS|mabDdBg$zs5Z@-bGHquK+6n$=^? zN8VJD(%I7~eX0OZa{PN{HGtA5G+P9RcxUoOv7ghsMtCA&@iVir+9v{E49V|;<nM$^ zYciSl3Fu`w<2mp-tIq-Iu8fQWlfhsb77(@Dj3AfE07Oj}UBGC@%KF=`fL#F2f1wHj zGEy2Wb~&sySv7MK45oh4f}mYpjwB@|?FccjZ75<$u_-(OD{5+1#PHLR(`0I`tZZ$q zl%$$9H?FDiPtmTXYM`!upsH%1-rM3zIGxef)@Zb~{mBmMpjwZ;vy0O&A|Q7b>K#&O zESM}}er9r9XE1I$!N|1@h_Jz69tO~vM+MCWK&b$;(e^vcHIfxMow?4imZs*IKZl)^ zHouuh676xK(4@saO+q6@ZwV0(7@!d{(rf^-e;hik*&vfP08;^598?<EuEhArD==fL z)9dA7EKdC><}K@&TaYV2vCcptLQ+}gMoR-^E^on?#ar-k6boERFaxKeA{68}Nm#Rq z)&A=F=RZEpC}vM@&n3#fQ-&>R?jS%lo~sGEF>=}vxmGcxJjEF%!n7%;^!wEA4u!~w zj)`dB>M(2K$ZAQ>*P1zBLd$SxnmU_H`J8CC=HtCUeOI4}mp_yDcr5yy#AXUP!LbQ` zvl^`yJQ}0PYBbR!fv*CaGu#L;&}jn$8U%hMGokOTSf{eg*QtzPG{Q6pMrVeiOKkR% zpgoigppj!XgB*T9@+<&?RC*>sXm8DmhL(}sWtKWWtu=q0b@-v`fx3njHEhFaJVLP^ z>#(CL*V%>z=<#=D*AGOi1}09N@_~xn)=BOw@U^L)95e91(AOk+JhjgN$V}G5>2E98 z*vV4Bh62Xbww1`heFFpceZuz?JjH_tl}E3;4mCs6O$84}s|&?-tN_MVMR{=1kcR+l z&_(drAZv}Pf(7prB5=s?mn8j&*<b=6>IYG@2_?apP*zn|6^sNUg#|8WE+ERP#zm+k z9^6XCw(zK+aUmlrwQX064!Ki|2jB^fWa?YpdwcX34QG3-P`HLK)c5S&bVK6YPW{9& zeaDurFHKXoI(II-J+H<Mee3pxJ3EyRj~WtN6Nz&ZhCg5p!44K>;0+O%qN)-QcyJ3D zX6^fpjgyL@VcaoW+)Zh%5qbIBZzF|l#dp8U*1i6^^6h$N`}VhqcEGU+;zB788*LUM zC_bt&g-Vgq5_+6?uxg4vz>#n^T9|A_Q39E^W8g2SOaaxtF;eZD>}*+9lgqQ+*>0yz z&XTii03YXa-3?t%04{SxWO}>~Fgq#~z^UrSZ{otk#}2dnXP$Xx*IhLM-yvV1<}UV| zH{M`%%3of7`HeS}$FA@N0=_FsIS^Q!Tqn#EZxZjt;>)AT!`PUT0ztIG*O02RAzX+j zFCq5@OBD|=z*vA#l?d+u-y=tW?g8pXtX9@5udo=qC)(JU_w_p$-TAd8hwtdQ{mywT z%9@&@%I3=W?S~I9y7SJ(hwtdV<4*Ju{u%B+G3)(JGwu(sxpsewd=jh;!w3`FM;k*$ zWm8inyNAV;SCsB0ci!G}$KfSk!zkv(E7{#qv<z2XyM6JUxbxw~ciy?^Fo2Dd-xU(# z5%KSV0;2520wDn1yBs`UCu~W;nQxZ$XfVj6t%zPqVs5r*HHg-&IawCTfXpz1eJdQN zf^Cgpvk99JMTZxa2|RuYm4JKI$Z=ep<~iZyH5m{y%yxp1sfnn>3^9Z-fDyqvlHy|_ zd_v_P{tf>YiEqxD_NGd4AqX6u_{OeXckJ55F5UISl3(rG^&$TaUnp0z4;62sy@uTy zC902BHnF?M$H$e|Sd@O^BYy*{;<*dr0QM5XP@?t|@&IH#3hwhD6lSg_18^ts>{Ukt z5=Vpc?r&_(qj!Dw=;4=M61R>`d~FOrRX^I$<gakax4~guiFP|PE{2Cex(WqUcq?Qo z>Vq4?&w%Y%fS&;lZz|9y$N<P8?^64h%S)?*7;q*`MR;N|Axbyja?35d@Ve#hpTBkY zE$sHQhQ9W-p|gg@e)l^JfC)pBleqt9xc|b$JlqZLL-^6Jf+QtyF4Q5!F9h9Is!4^O z!gxbdVbzs{C7mZ=6zUl4Hk*~|yJ7^PxQg`TJ0p4SVvU<`x%;i3-%X>yP}l-~cMO6? zA{Zu*3G>B`;4{LLc!UyQK1YPziJdtti>9B&wr4vb8*;6X5`whdW)Ve)(Io+;V*nCK zHk;*PyvgQKd!A^P&CBa*ecs%h_3MUKuUIy?baBtZ1&Pkq=6GZ6NZm+vw5+ta&|Bgw zaXE54xgKnn0XH^vmc(YkzQqhcxMWyXkAm%*R|2)BlAi5k7FH6>3l@cd;V>pHa&S4) zW4Y+T1q|%IW_NM1JHPn;_3N)}F3!g<>@xLT`H}Xg=B6b}nwr(0{p<Uu{VIml!zXui zYsY_@JWu_@xjjuyy*qlFntFQZD)^c4EALBQFKz`t+u$_^3ey9GfzFG~N-y@?5dd8b zcF+O8w-rwo;tct4i0koM1L6qOVe$ssfw!c(6k&8D;?t#R5{N5+6bqn+Lya=L%m2#i z`UAeJNtP;qj<TM6zVkvoD_{lR{w4qFLSG=UlRcpPao1D06V_Qjevr<lhoqq_5R3yW zfH*L@nWijxIHNLJTLX6`7;+5Bq*$JcW3!ogr)2V}NhuYrf8fpiDg6xoGi>WzO~d^u zCPuym8zRH-0;Bo3h(c0GBI~EshX&jD0<cGT`SiN05GvuJ1ijJ7!Riz-&>IKsfZ5v% z?cD9BW;^0?Hd`K61wj=uV<24jNCF%qX@QT+(y)y)!yPna4dBS>M&qVf9`#XQkVx=x zCwoa@%ce2I|Dn4ojcDr9<%884sB6PSR^4pFB)4SR`0i07bJOE6G%#{W5-kxMt>a?~ z3EhbW8DoN%1X?eOM4>X#RcS6qHC2HU6^e^cbSRGyKiaU&vkZ%eg`vjsRmt_)^dT~T z@9;o%I9xq2Oq%$Nq3&F@=*K@UjYdm<{NqKdIRBy7)u+gNdL3FxT&Pdffc+TCW<mER zSi8u>c;YA!Vv@L=5alJo?08OG4O3Iq6liQ|IC2??aR>tV`rLW&Y!J?i2FhVyrKRzv zJg9OmXST?qd4WJ4355mwhwADpT(R6-+36{0*wEg-p~3HU%DJ|BS0!q}?teezVV8SC zA&+vUC-nQ;HT&kz+gF(<+j48&{=R6(NK?~DN3_rHuFbW{c@<;x=I>hrq@JYBYZrF! z5cX{3jU+QUjR+3F<V)eRW~po$E<vwW0T`^ha9x4V39ZTklZrVg!Aj4k*a^5im5t06 zIr@qMmju4Tbknd`B>JK>K}=&o^1Xd?OUvf=_R-eX(RPgpW||d^JNZ7+wxy$EOPl($ zJLGwc=8qrXvCMfTPKLpuIi!!C9@nWxf70=ue4OB%zf2xyXNz0GONhsDPJ+Hb3Zlv{ zq#z>7pT;jKKG5SSf5M-#m8OYv4U>Nr&xM-d67mv`92v1aE*hbFUg#<iA>)u@4@WHF zortUOE@z9STWV@pZEd8oP+whLbLhI(yh!Z@mtU}|20v;ec`er;s;;Tl7gk1UYgrBF zf5Z?=5JRN8f+p(f2*C#>pr4SOlr%CGRf7TqP`r+!!&9|8c-|vi^(GNP#%gwA;&)o0 zkyISzM_RBEHv;A`4U;{eVzsc8;FyMtKq|S&;A)zI&DJAjh3X*y0t%we1<B5L3qn(@ zuC}_e7};#@`T6rSIChpT4}feg+4z1u4f%E^4vVU3G1?QSVfT^%%81!coPA1@m)A-C zi%9trPV7vLyb^CRpBNi7LQ&)%Fi3jJfP=R}G$Q#$hGK~17buBH{DQ)|yaH(Ay6UpV zipEGdP*murJqarqb*R<Umxu)COfr!I0tp?0p-rm+3TW4=_5$S^@ET}Bs@}t*q0no7 z-|Hd#dp$eL|5~uOF&gV^?CSCd0{(!*o^7*b+p}yoO9hicp^_l8R8}f~v6a|DA!VY1 z6*r2_RrRg)K)!@taAaj8i8ITAITT@0SBvkUj$NGl;yA>Yjgyaru)9!2;0(cJ5wr*1 znhMuJIWWpw0Wz{!3~+=S3>Nrk;ip6mI|!|K6bP(_SUop3u%md~P7dC!WEEQA{<Pgx zT%T3bv|L9{<B8iYx`?&ob?wQYvvP6IKlI>#T7QyI1YhJrKL0kMhdg%ll#u{ElLCNa zKn%b`2Uj(`kf=pK$q9Hvb^>ZpBRip^y$U2)Ft5F*qo*+zZL4a_BtRAf(3!A(8nlBH z+6=_v=@8^d%2f-8ZAEKq1^h>+q|R8%b6Yo1)eWz08##_tT7g#*oK{W1EtBUqlU7uo z0f{Inp0PlT62)L1n+#@%5IE4*z|k#_Q1U<Lm#&VMc(f@BXmCx{f00-kz!sG&Q|Q{$ zAyWR2+xz?5_wFO`$Ji;Ub1{TUeO>4IM|@6~ALQWcr%qcx=O)gcMiHod;1?jfvMeaM zj-X76HUxs<+yoPff-&Y1#5~OZ{c9-A({?)4$mU+S(;<WEpaWm1G*J0s0dYlFORS2= z(xwq(I^ros3tS@|a?Rz)g6M)a7>+g7nOvbEo=#haNOOeUPKOq3u87<z1<b60IvwW~ zl};_feB?!)m)H?g<6@cXXeO7ODm+Fc>s!2N!TdyfYqTZWJbf{pvFJTT4DEEtmpyxU z?UcluHE$}#XX;w(5P+*|u2FGynZ!FIF6)SP&~{ZlP4=8Amrb`ZPm4ThrrqhRx9P?d zbW}3>3ZSd_$=b`y1q{-Kt&70aFqfD#&O=M6<N%WzNJv3IrWmrkH&F(ZegN<_$^}Ht zRrq)O%ulH`C>NNXv4O%JNJVa>qO-87SZvq9gRQap)|S}%`=MH{y?^MOFNh!P9j%VX ztK)U?E#KU|<D1s=*2G8mVr-qT>pakFJ><P36lNbFpwvJdqf$G4>wrwg1V%BuE^z=K zk*n<v*-H&3atSfAW=I1<&Ik{gkX;uKG@?+|=ZTiuy0!!DJGvKbYiaCwN_km)Yp?S0 zf<<*5T@4G*ZD|^v*Sx3wNlKU|n^?_7v>`ceII$YgP^u?lH0e!7{Wy$s6G3yR*hc!^ zo@O7bkQ~a5sjH46pV<dAl)b~zPMt-dAR{wIV-{YnV9G2$lYRcDDXV$wX{b5ui|JOh za{0-%9ijo{lqTaiK(cc$V?RtIxO(7nV$_jPG9ZBz4~EJc@**ob2{CsoPyui}!Iff! z<H?~VdZ6xFjA>DuA0RQ*VqAR|azvN2917luR-O_1a{xsL0p?c2HzM>)K|BlmK$Xkq zC%Rw-^PEQV>qzi=!Q4T^WZ>ATRK0+Dg@Vu`3=|a-R=cni1&IN#plVG5Tv;Y?YCwxw z$Elt+MQi}8SN(&OmXgZmXL;Q_+DZ}?@$UHM`42x_+0a<Y+P1yEZe3kxXXB=M(IvHd z(X^_)WmV12`e-z^U3qfXJ3zy<fpw7U@$jU;9+><&{IQo%0Xh5w`%e1Vo0E@#S<h4R zwyF{E_W|Pr)Gm?(a0D;At`jz+m?VrRMDxp&ra!r_5%nEckA{@TI%Sl{DQw2_#IZc% zEwiFJElbL~BFmYQ;ip$spQVuc2TqSONR`taUbS*M#;xcmZxC%0ngsNIXaczfD{}WG z1k7|&um~P2oen9c;08%IP7}r8Xk_Glq@2QvveIy%7{vzl$R9z|@jN$*%{8i(<|1M8 zK47`JxqAia3L$zbDL|PPjE*bM9zY!E9HpE2ogtGs<WREaEvRXZl$^6{!-nMtR&Tj% zesjF5qIC1%`t{4CE5B>?DX$%P^@6KRR#CK={u+#x2cu?>^OBXz&&z$}NcQ=w>sni? z!_D|=cmMM3lpY|kiO(?4d_GT9_d}#kLhwwKsOlgL*+$sB0_KTIOK@k8)5GFPCorl} zSV*Vq(2*Q!5}L{*;gaGad#(Z0cQ=+s!i`~+Z>REZZarV)Jdcn#j~aNusg#xw%JJi} z>*&Uf6F*_kDepQX7E8p*Ufj5DL3erS*@NrW4<6`Ud09(sO}vz*zINqf-!n!&IPmJ& z)l`VjDu1uExn^ow-@4y^?vjdz)Z_<t*}pHa<Bw1FvyU;)E{a`Xo+3lhixLafGBXKC zx<}-bN(Ye-l>lcjbx^Zbk~$=sAx^5VrTOVGKa`|D)%;HSu$2c!HctGM{aAU|QI?$P zqJ`z^V?0pbByK@zK|k^c`4gW%zZOZd=PcVe%e2#<=C|g4`~y4fKcERsyat)F88W2- zvb|eapBT;sGL-d0gk)Jv5;N-=ntG8uqmoX|OLMI`62Ju`Vm3h9kS<-FO^pn~sI$AP zyCvS((bNI6wWbmU*aJmApkAqjn$W-+Y$<sYhnF1=B*+_0?xcyGS;SBn(G0#Y0?7}| z26<HX$ZvOi5kjeX(Zy#!^bllH1^a#*<kO>%a``m4{ltsAch`4xh*zF}KFO((uAUm@ z$-U<!rPc739raaJ^<~}hl{Gu+s;lZDwsyYT*3j6>e}FWC?l`&;a@s5vRwJUbO}H>I z=0OaN^`pwI?6l`*BegUK_&${Tf>(cpm*{R@n(uJi^7J`5XtN=@Bu=H#O+#x2p)G9L zylLC$wspg6MutXKEE`xoxVpb@N$<k>^SUTKvaY70tOThjkPtbXZcEux&osJ$LT5t2 z(<10J%0BViQ`7g!3|b%Cola}<x^$ACn(}i!gXDvdCSJvJpnPrG_bPbQeQM{EY3GwI z%m{#M+7_sS3*ky4CXFEdk_nND2*S2Aw?fK5J=s=BMXNL(q)PhAvop3ssdwT_>VAm$ z^xG%f6P>$v3*yAjCNJdqS7ku?UHZ6}mnKltzDuVn6X=nkrWargrz#Z4vNQ_CuT4gR zS_yW(X{8LNpP-|p{0dYXuc<1puc)V_+x$EmI1BYi%chqy&?>QM>1r933{ZLub)=|1 ziOZ=RRjU|WeBD$LgO!V^h=Eiy;a|9L;q_F)pd2L(F4_4h3K$IRKmmh-`mP=nF!<%l zjeA+!s+}uW?ci|>-NZjYzugAiI|4gyNH|CMmqc!jjHu6sWxXh4U_d7ht&Bl}ASsB^ z>&CMgmEW{l#!)&^Vn{~gwHvT6jhb@}$clwrUJ4JMg#7)fZ>Xd}>nSe*kPGytmelFF zh8(P3UfZB<?eNlms&BAq<M26a&pB&(|IpH*p6*0vds}l;SzmcyX2k;sILZwfM_Zc; zB5Q&}GGl{FRXhOao#Z%5d@&fp$V5t2MF^z-@=KIRSOkrsda6W1mT9U)!o-zSLc#5t zDxpvmwwl=&Q9q$@otRGr6!zz!fWpMDPP>-E9HkZ%A+yjzTEzv!@jZCXBieI5U$|Vj zPPk3@JmEO228&m`@r(O+(c?De+LDjEKg)=)6@T6?hiKE~>TJ2=*(g1WCvKIYdUGR8 z7|qGInB4|_9x9S{E%iCQc8?yFS~9+-N59~-E~g*KF{8yoOWK9<Ep9^|u@u#}==sw1 z2M_Gsqw>L5Zo2-qFWq+Kp##?)yzZh4_FTUA@|`;%+((cBb^g-x=jIIme=}$N*SIHx zm41HmY8%JfHWDl4<<+c+w+vA=j-pa@>-pl9ONf;mGyXWmXA{>JRy(OsM|GVzmf|yU zU+Uwj%6FWU<xcv?slp#AeoTFU?(;JElJa27p{}+H&n6s*?CJ^u+o}$sdM@lPvrZF0 z=*6NHL^0}3dLtq|i0c@s8x3lnn`ILmv&5XRzB-qp;2NSB1`8A<Fpe+LaR%oigQZ2g z035$6<AvjKDo7J=jkmTmLq}+;Yywahz$2~13JTL?gRLkkcQSzkFT`v`R>HKU9iH{s z|CmiEW%o@lwt{XdZ_oL}{xtTBX%$zRRh*D=>*RyT>i;7=xjpJu=On$Fk{n2-hI%Ck z%@U~P;dT?U@YFw&j!H_mAPr_@yPD7j3K_VVlufzyp!k)E^H)g=l-u?zhoRTMB!p0Z zZ7)Lb@S7kwk6<8KjS`aUU?Rdm+lF6p-KoBtR8!CnGhId+ei-iFKxrfrb4Z~$wA6s> z_)7=$Stir{Uw!{qH$Nzuq+=h4#DSxF%R9=yEC2p3YUms#eNj}ti@KQqgq*$-<mV%Y zzzx6;wQ-S($cmLvrxtbuj3o{RfnRAWU@Cf^@TVU^avq9O>j%SOz_820$l1hILV<7~ z8Zcu_NVKhQf(=MT$>Z@R1hnu)9?}og&P6a9;o!l*Z5@|{%28mqwXv}k^&-kkF8R`` zbM<Datm>kRhJeJ4u4-1+9Xx-3IB-{Nk;%Luc2_t!wqg0#%PPjsx+6XqWol^z%;lTN zj~u~VQrIz!ose9h8_|)-$Gc18!OZL?ji*C+8X($G@)Ix?=2CvoZl0KbVE35#;@F9m zbeG9V<rUnc2KOk{Kl?o5fBI)9J|H@txEZ{%kMoK}Sgmr4JIN6Irr;Mi3si<Fz$fj| zYV4Fgw&8?x*5M_YhlZyl4vLRW^iRBYFv&yGf)hUyq!W)!-Yk5M@j=xBf)0J&b?^eh z;bTN?d8Eg)3yr+10d+((o6_ppQ$8Y<nxKo*>+%D~pFF^}9N>i~XzrZKx?@jHJ}A78 zdD8VMpM4}@&a)#i8D%1<UJw;<vM29F)&wL<Gov-a$AMf?{uNr8sN+FwdpP0M#*}5u z${Z7X4t&z;nBW{tc^*!ja}aYE|K9^*@5EE=R%fZn6m}{*K#UVVQeVp9gUUT$`csx& z(%Gz^rk>Fl#!i*ix2a<-N<Je@h<l_sQ^ONQe$!@@HcEu?3F#_Rt6Mve4wza4!-+he z-jriaPo<${fC;#;<kkN$5qfgeKLaoI>3uYIXzcg=>46DOJP$tV;Pj=QAIlPEJ8Bgm zTP{Ui)K7spP>Z#wq;-*?0A)!)psyMInUmF?L=6Bi3}Iw5Op!B#l+PbzO({B>&1rO; zK|_|3i56j4rJ#R01<`k!XMCyT3t&vMP!G=|*(`cEK`xwRRu4(DbdqV3Qj?aPR`e`W z^3n>V20S5fWx~dtl9)0oD{Mmm5-@4qR#kEWVnHHV5CES+(Kx|M4o;gXDLqx$8E`cQ zAU~0$6@UcQJvc=2bLjXgz0U2^>HO|v6A+`oSU`x5jeS^9B<YF~Nr&wDKAzh}cy4;& zDd#23*=D%c)1I0Y8X(WnRv#Hay7a_wCPUF3^>G3DinGzlL48c=k4X7`>iMMje8#hp z;OpBDU*EYv3pWUD0`d^s>g&)++MVafHCY7K81>{MFbU`>z<+Ru3*tCEJDxr+qL>&E zAymkuN~rQXb*LRiJqsi7=D8bHgMhodGF?KY5m(apC((fh1Df7Yu`T7z&3oB_>T>() z4LjC#CHgbmf4K$K`NeD2k8Qdp47bWPW!2SXH(X&nZ>Y4^_?kX%-||)GnXb4>E=~6W zewvdb{);JZ?^$d1n63~XEQwj4lA}tAp$-m5sM1XF3hUX2Vl!}8Yx^GYLkf9;r9r43 zB};)FHUmH?^ZKYFH${u7vaF2i@M*{3D-l3n94X2WN<hZpVkx+<&4QXPVGZqzym}32 z3q|DRAN=5Qw)=AYRBm4X*#5`xkA7fJ{~TjFf-(7oo$8nh3BAp%W)$D00y5cvZJSKu z2nsBVVw;Hz8+=5T@S4m6`2nU8e!OTRiHX7agjAD<BqrIGGi{LR1Et*F6W>z@n;h@d zkkvtB*s%5A5~{>}aVyqjK6P&aiUrJJ1DED!S+V2u%H*e6A1FyNs(u4!s=Bnoje3{z z^n34J{@!~Gbs5P~TINvRWzSXpdjGHSzXcvq0F<o8Yc6>8fS^+<gmvs0v4zWRAEK$} z_dOE86AnVE3Bbyt03J1orH)g2-8t~OfFDM&zUI-sLrw=Em@yl~<55iz<ptE^;HuCL z<COp@L4;uOZdb0)<|Aw?a`h|>n<T<x-1n#AbHY#%X8gXfJQgd*OZnNvTVg58&iwVt z+OmpRtfH(|9#b~dl~vT&SCrMY5foi89KT0chY_oDqlyS2coxv%mF8DLr6mM$jm?sa zyjwsh%xF%WL#dnRWb3meE3CY!c}8(CeT&&j0O=UjlZ?pa&`tsHAZ@;}l9J+Lq`~A` z@qJ081c~Ftq2f?5p!Va+b>t#QXyv<^N(cKiI>f<EAO%XilfO=*jrJWH8L9MmTde*3 z4zZT$wBJwMi`uBDs?E|!G6re-Z&OskuPR-D&msSrs>e_^L_m0>?-4WTQj?r2@>r-3 zN-laQ%NB#Y6;(tv8M{=lSj?j~W;V|^Q+Yzl%Ri&jT5#H#oq-#na$&tnQ&pkyqXxCB zIGvU=)Gj-OeOQV~Nph06j>t-u5y-02HKg2~eQh?HXA?0e{!OLfi60e}mKGHjha*M5 zW`9*o_k(g{f1w|T!vzIldeK_`Ot?)nGKJHzCJ}{;7?Dt(fSAgrP+Kc-WnrqF87T{l z27=ebXS&?uAL(-0m-rp<e5B)lFBButwO@Na*lWPd$tzPU0m^NhYW)e<JX(LwrFy2_ zif(uO?+sf%ze|0Irky+gvTN5TJ9k2!{(Z_u+W9zK{wOS)Y#mJ@%so&%u!HWU1rL*D z8}_!0(kQ+}2<m_ikaFy@gvgooC{-IF7&&m{+_s|Vb5bX043L^|*U+(t^$%(a!D{^q zQW8RAW2!cwDhHqun>hA=&3Gpa(pl<wPdqFhn|-`u8hv?hPk$~n0%}!4X_07uI7Kih zHb{>Fra-j;@n|`^y}%A6C<l=f?MV5J%%EM2%v0zUDjko1s2ihk`SOq7sPhip@*nSi z`$12UPG96B!*v=>-wlK$T{y%oSkRY`mmP!6oC7RAqJAzL8Y9je@m6AlnIq=)k=?m& zK;UzP93Jha5yvBV+I-k>cgk*e481JqJw9~&pQI1#>rZ%fokKT2(9(AQUH|d^S08L{ z{Vqm1Z{FD0yS;tyun3FLJ9zav4A3Zk4RWh7QP24<RYGnXJiyp}NCQCiI8%#>LUYqq zjQ~-OzhVT&;4fufe8MJqYfn5O?QdDxB0f1$R43U_JRiReCdA>x_;DNOyFY^O44_Lk zWfFoBRVM<sH1YSOZvr3DK*VOt*TeJ;ryh%&?l$qq2fT%P{umw?|81i7iBOXGNB5KC zfE_=g@ixbK*iOe^0hmX~?zH7|e?{8uG-go!7V_~U57M2Bz2Cj%aosSqcg=%g5Rc!N zHVV|_Q#~0vqjVH8du0@M`Q@;CBRZerLN=R0>V1cIFJq77@FI;kW?ZOZ*Fh7YV;VpR zgGA_8Bl<x+5?2d3ipsxEexKEeKZI>-69S1sWB^NS2``X95MN5yVON0w7uuX6RAjEw z#2S%<O*#$CQx_6(UT{=qXGI-Ko49%6ZgKN%7u<+Mf1TmW`(OKlvUty{dvLm#q90{t zA~Nqr&&kubVDen3IFTh}kp*Mt7K}rRxw&i##RGCYDX!edkNo=Aw+!iqH8bYEp(DEW zsvJ1}?O2F~S@|?uW**TpAjH{!i0cIOetwNoLwysk0~LY38SJUaNlqwr{KR8MFcJFd zz^w{ZnxPF-2D_2RW6J4*jtzn-+XQa`PBUWYM&dj^bmDM)a7ZWK#)u!6es!Yo31uEW zLJH6@!FKdUb{EK}(U0z*g_VP~Z_gn>1D95_+MAiydNwT1Y)3YNmMJRI+D{I}t**GK z@eJv@PPk(+>3<)8ZYX_J>dK!Q*yQAiEz~y~v;&WwKut%^YgP={!24*kiI0R3`-HE} z+C&xYVMu8OQz7?-x;els)9kTLkhbD7T!7YS$j;X&i6Vdzut0%Fa4WBH*B+Fh?i2qH zEtC)!KUfg^X?0+Y-jR|6|J8e)xJ0{`{*hyYlB}P)*Iu1juicCNFU-p-aQ`Jx<iraQ zyGWo!K}J+=+D6R4i&n!sfr-HaCj*@Cv5Y5$2i$0y8bfW%0|$<M_BdJIPp~VGPJI99 zQJR@5cW6%JC(R<c%5xc1vtPK1Jfk`yA)=4))-c^B=sG$gVREH#$wPNYt`s+)*Au$q z>dlVpALleYdX)I=C~nAU$oH5mo~1##6X|Y-Ssk-8Zx_cd5{d+pw_EqbSKod2mdB6Z zm%80s%A0gMti1y%8Rb{%W|L8qlgFROG2iEM%zyl1;xVam;(n}IgU){+$-F6fru#er zJ=(zaXzDZ>6yA9pfEPfpR8=}gwh=4_<n#j=hbX}~AQK2zfg5$(P_HVbPNQx8C_1GY z=Npsi^ckPpf>Y5m=*({jwHkTgHXCWE1zuM$FM!N*fEW>D%gus-23mvMTiKc_t>?>x zuM)SLLIs+MqUq8nx}i%?oKO4=f9NC1a)W%oc$@Br$F^qb)6enMWR&;Irgx6+->>|B zN~^|mn)nUYd5O3S>)Su^H9P}@)bIy<fBZo>cqY{Ek5hmEGW1XI6H5(vLJ$MWb?_4n zO!<ib+`-y_(A0dVr|&0nke|rS8j+bD(OOWtUzvDH>^*Qm+2IVEOr_3MY|}w@&WRs= zNv!zPYD2f!EDQlY#%=K7evs~C%t1j$ecCAg1|K6jvL$_t+>M+$uyYSiyfkfW<nf$! ze7a-jV|-uZ<4gIN9Vpp~QnD#J{a1X<R!h3yo2aPyyaSno_K}Nu)^X1{cIo(kKo9w; zMBTV^f&D-)@d8h(gaO(PB9)N~{7mN`Jr!`U=J~V5ryM2l0%A}p3>v(lyV)%qS>{l7 ziajSrCY~01lwHnJi>1`TZrv?idg5x&O&{ZF>ui?Kt|ceoH`pk+;LD#82iPp1AcpuE z{Dda>2`ho+Xc2Br6xIg)9-sonmYR^AAahVgDj2%K^~WFr`cxwejhe6{No*WlD3BPY zJDWV1qZs*o1PuEg$%2JF=OH|%IOkt+0W5Li%}Sxt=_!Px+B*|{m*IsZT*6$g$Ite! zn)q270Pp#ZQOBx{JJxrt+jU?`(VF%9HeHKYROz*4RaJ01>O+4>BJi^0A9$rVk`Bl# zj5}8?$@%BGeU8%crzZEak3h#J;LsKdUrdA+wzZ;Cd?--t_kfOo<k^@Q#1n6X3NH0` zP7xCsSbW2ug@`l$#ECcKTa{?gEC{v;nvsGq1JRdBvrO0RT;x-pnn^$Vs*#=Rx{CWs z#2rc^<*<{1CDgpQq3|^)Bj+yDl~?KVZRF79u08Y&{Hw<>hd;LgS|au>2us?xd^|E4 z6<&V4fUz7BlXc*<g+ew=`D|(2&1`TB+AQNvmXq%ibA_DTZFb}}qB#yQ+Nzb>ywm|~ z26{-Mk_4bgOY^csi>1Ya-Dv)d%g`ZobPgN{C%t6yB5?VXm-~?tR30ryjSVVX>o4(Z zRW>mCnLb(%e6#^nT13lTykatcxk9L&f{r}#kR0Y3iYwp_Q&V2@hkQNQzqV-gIl-ae zjd=C1D_V1IU?_M~K#6h{sX=-9aklryq8r%_x~6AWJ+|su{8Qglb!Pw3j~;t+|9<d_ zh<&R{EQRi%`F2tH4ZdAu?EVeD-MHor=f2%^r0l<N*RHY=yrSV?%N#72bnd>ITyIw7 zMd6=>J+lgXraGpuuqZJf<io%adoFasR~1GT=PaO>|8~c7`r!0a!WCZVyVRkcl{r-L z7bzxB^Gc@={DKS@HTLy%yAhqOV2enCYB$2pH^Oj)&4_kR@b+ng3AvD#u15!HJ*y)# zQE78Tv$884>;-N#zWRmNF8Dixj%tA1tbFIS^IwC_1Kn5Cv27IHfp9r}laZJBqo5c5 zsU{<5GfnR%r-#gy;UV3F2M!!xHFQKT9-FA;{4+K-@qGll4ka{wnEMv8gk4V%JT1)$ zM;ih;;oujdOc3%nY@1&3lALg4?$BXy!p(7%>V%uAN5e`a_k^lP59wDNTU}G9zyH|7 zL)thK^Wi-fAv=;bf<w3{VRGccHY7@^8(BmIw_~If4+Kb<hN?viQI8eT1OrtWHt5iI zI!s4W=v*@_W<QRHig<Ue<bb(Fo?&N10`M!z#{yWdLxww4Yy9(VLl4W{vBuAysnLe7 zMHRaifYMm2+<sGSo&US$p)pEA^C~<y^sw%a4Nb@GNp_iK9-0m15auVkQqP0PtNNx+ z7OtIxv`L#PLf*P0@2<m;-oIt&I5|4j)z=^YR$Y>`u&}_x^X4V6RvVD_^pbcnqOC5$ z_;@z@vWoSUjaZj@mp&Py(op}XCHfM3Nr|x<XTWF**ip#o4M)gm3_1M&dEldu4qSA% z*@~XMmT%r|L0cZQs~{V$6E?tm+y~&F_%og)>@tD_r|j{Q`b@Z)d@7$wa*GJygXEZa z1g^*@b(b8!=1HXyEcX8UeAY+zend8mf~lwYiT#D!&L{JkV9lyfh|}|#XhTsKX4-g$ zbf)9qh&AXo9slc4`l!anXq8S43^vmrK(7~7dLbT0J`?}MLn_^#Nz%=Zad)F?&9|QH z>t$$2POCWwnm~gfBVH=+%K<NC3p}7pIkyO+?x3hCHOb2sjXUsXA$!E0Ym?wl!P0J| z(@@QC{EW^+Gx?q#LFno4>0h!K!|7f)zq7p=RS>G9A$tk3??VB*gF>)G6spt_tM8Pw zcdFch&&lq#l+}}s7k`)Vj^usWkw(8;r6^Kl+;+deq&{5PQdZ)22P4Ros44b%?3G*k zIsmB)xKX3CrMkK$5_CK0z>;u%iQn(&HT^oB<o^(?3c3S9H{R$|FyO8#sch*EMuY1A z_*-5czO^WCPCXaIFW{?!FKe&RE_@>aXMn`o0Q)AuD-k}9CxbjP0}uyjT*Zv&>LZO? z85;dv4JSMzkPKvp&l?DEN|2J|&7ij=BQL5sb*6|m2xo9AKsMltcA-7qSXWa5isPTn zo~037%Hy;Kjg#*wT7$mXDvd#NS@oR#GOy56R22-@1-xFH&5OLLl5lOn<Fl7-U)EVt zAM|?d_%?`d>jECH-R|?27Ji4XE9JM$UQpolgu|ZXtGcwheR1*^de18^l;2i$8}bLN zgSX2g3<}>$6y?LiC)<tC|2=T_0b=LQgDNX6LBtsVO*GaZ;zr>yK$-J>FcaVs+z0xh zay#5M=vA%*E)TuR;SAYqgp$iM&8q2eNhaG2c}}7*e)1E5vG;i?Z8(8KmQ4+{)fHvo zl0cDn&^Ks7m^Z1R@T{i{bqUF6AR`*xY1wFLv_?l5s&dI08N{C0c`}Xa#APa}oq0R@ zyUH5SzSm~=<QMZN;PpEk`P=)uB8??JdIb5!was&CUe!eF{Jd~=dv7}RJ+AcU0iIEP zp(H~#p>nU;&Mf*I#4M7$+>C~6(p3ULY&r{QE{Io~&@l{2vUmu3wjJHF&>J0O=N~|L zbmFjs(3IrYk~&pyA^M;Gxx<M{Cahn(dgZc#zQx@O=XJHWwZuu3l*58V@sK<l3co_@ z-NZH#I6urq1m&V((UW{3X~H@E%%lt+&WVpp>VjUs9l3u@Zr}lyujdE-e!Ig*4F9*w z9W0Vy-G?Mf(5FRS$m3xzTOfHf>2o?lh=dXFJVE$TK1DnyR|qAFv*0;_rU@jE<}D{Q z)rEMjxk7Fs_k+bL_L9uhL&3+qs)_e_YFZe8HV3<(WgSxP-F+dGl8J>@(@(@-P)jZF z#vgF6AL3pG0y-=D^La@`?UqS@jc`@+mIXoqzomZKE#>sYNNM7Os)@JB`f-$+&G5`T zhyiqo@igms{;?Uu`Hu3ZDFgYn3AhiLViaCx$JkGR3_+9#CNWiy7{?CHr2%z=Lem&j zra?C(>PICYy99iRR!7vl+wHQ!vj_Y}5i2r+g(B(87nlv=Ago(x)CR+{s?Ms?GM_)N zqhd*IH9kjt1pzTf>2meFTvSz681T0*s$5t`A4`gC`-@6oOa3q9TvET%ZegYHFRDY? zQtJ_|(n1VE?Dr*-zac-SA8<heZ=gGZ0JJ&E>Zax(W{H9YjbXAGn&z4;D6xYwZ==8& zBV_{Rv{4|#+(B@RuB3FEd5J7kO+4ilh7;l59`s0A+Ox8EWumjAt*N0p8bP0#6rH+R zcg|dNqRwM#O3cX`r~=OhNINp?GFoJ9tM9HaFZ23>JEDCxRqa(34dMF5mN`1B?nb(j zx10TIAQTGV^?QF=xi9Ex>8e~*MjvBQ*GamqB9-Y;kAF0+<tp~^Pc(ao@8fL*l%h@= zseK#;s!_8JJ%!QY(*$NR>1iKlma7RYh&Z)D*a37EPC>J1c!@UyeX3`CA5Wf%wm#!$ zaB6BFM{+<Mdw9@+A7R?ZQBfd$uf}Ik6Z^{4p04igaS9dQ^_{}7&+D*zJpsTRA<?jl zV8^a6>0GwG%<l69YVmDqcMpf6MV><Un}jQP%UD>Pm%d>vZpRLu{)Mxk04;nx$#^4E zHVE&qC)v}e4Ryu;&=!r#14v3O4O8iRDy_v=awBV`EjnW*s|#5r3}4Xc8}V7#X`#wE z-PlrTr}d~?YM8$EIh^htOFL<&_0a|#sC|d;ry09v@|(6LN&0Y^`DKl#)(Q_NEUVG~ zX&CjyfGkys(=6ngb5U*qEqRRl><rZsuFkfi)iGc}D2Og>r-HTMLent+U}Bp&-qA!{ z)si|DS%2eaa_(><h@q_&)()*%v8;bd&mwH8t)wbCLQu_1pfHkd9(P1k#XFtRl8QLq zGZ>DxR!woAdPiv)FyC*S?&46qTHQ(QsIFBX4%dhL1$M5cSGSbWt`}~Kb}Tu&(oR}T zxT>`@<jyN8Z;omQhRT{Np<ViXc1J-$iTCTonk-@rR2I_~n$*fuYI=7|Wl2@$7OJW9 zQ0dJ-Px7j$)C#w;Z=k+xHW1{fISSQ1xo--<ML_9921^<^i!zAxgGl}ra_l*12BE@2 zY!sYl4!{ar0pNcl&^%=FMk=*G-+m)1iTd^$Q54o{+|P2^Z%}mYykldp=N1^{0^93A zq2WR3GO%Zaxkt4Uk|!vPkKh7t<f8|$NCgsEWHV4kdK8~fQDQ3ga0Xt^3J)5?C}Mcg zXy|?7GxpNO?4{!$@izjgX+Ss?Upa+;qcKob<qe6oFbxG2M9B;o3XqkU9?F{G-5`$u zJZZ|&qZleW3lT(89g@@S1Qhm^a6Siy1b14-5NVk0?4{4|U@zT(k^V3KhB2#y)rL#H zE8*hFPl3I73(vqSp#C+XvRQu)iZQ^02wxNj2n@r2C5{q6V0m?kjhcl~1S_WYw}BFl zHkm+SYt?iwKEUMWini{d{+>Wdd4bnkU=}}6{<*S#<KW_Xy9!oiWi^Ku7X|`_cx1T$ zJp6ETzk3n+7)k%()uPc+h!^5Uh6dsqP{#5^42bvQ!y$mgkTD2%Aj)@27dku+Xn@|z zcw?LzEkT0wmrHiV@j}5`yd3y$-pI&E-=RMIq_@693)j>?RKKSF$hC{Uej(mdpIPNY zi^w4W3f#uN#;z9s4cbGa8VZ<-n3fUVcP?Z-kFOcg4+;*G+m_vP2$zW~Kf@)dx9j94 zc1XBcG*E9>even!)shkSDCHezefV<DfE^X-NL}<5?V_Sk&AtYlCXG`T>iJbPzvHwt z4GL<fg(C@eNms<elLC0LdCR_WNEycub-?QNG3IgcR`#a&7q}$HQZ-7ZXmh6HP7*^@ zT;ie0uS#~r2i!u8kGqVrO$0WKHw669ZWM}}fZiJn;CQP$%dO&rsbU5VTuQ?O2hu)2 z87M0Y1k1{lPw*p%U&KR^Kp>L-BHAm5aQ{+%{|LXkA2-9z=>d$AzmRlW^^THu$8-d; z@)}i{#cS&7xMp0uYBDO>PXBo_G(S-u+<*N}@v0kcz_4(QgSf`-Gr9&sJIcWwSMN(+ zLsWve#w+|9e;ZHWiUGRnA9h|kraZsvk}<k8A0V4tC6-S9oZ~z^i9E7Z)bvC~*urFN zS;EN=X79`sO9|)C6dT5KJH}%WG+IN+OYRidCR7s(76+ggz`Aj^j8j(_S+QNW|GJC& z7t{S0Q)pwBYe911TDTwt13rsnuHjntscV7AG@Co=N|#)RYb{<(#AZrZJTQ3$#+4=1 zaUOsagcyW)fs|1T#sNyidjz9t5S6jYLe=s#ZqO>wpn{b0+Q8^&WhhiRx=B2+d;#&` zg5|h}s4NrLO%9<b%Kw?Z(#mUXix;=ii>hzqC9Yf06ko6)-n5{r*y}4U_IZmj49vAm z{Nm)e<oX}4D<sWPSLnl{h}WH4xU{)C`9b`m)8hzGT_L;|`SGrf`_{>E$e+`ek+f?o zWo$^ib<-xydp~%u6E=6YFhI{(4b8ZTX#{v_Xw4Ibi<lS|n=g?^e?ei~X@3|_SU^R% zbOR+*EQ$mqHP;jsR%PXz_1Oi>wnrPCVezVVyVcPj4F^2cI7^)PCB|^IwjRTr)4Zyz zTf=3Y)(#y3vs@hz37r2?rCyJh^22>&m$JrvW0&wHi23ZswN^`eKo4y#VfoM`l1owT z&6!+@Tv8(1`@ph04oQ1{|9j30lUeMQ$!En|P?JBMCVb8SjY4A?reVYW0x6&=!%d>@ zyqSMcX#&mL9!SzeLguaJpZmBxbWTqzdu3IqZ)xK^eqZI#WYJ_PYFk;7W9PR#natJF z6L`hil+1lU5(q{j!9WCqR8~(4lPgd|>;KgHYFV_X1+P}Bf{XPuDUchSUX4C?zR&M= zW77uxl?{`*lZnZ1o<5)INhWO=x$^vvzVa2EziYB=awU*+cA<%LNTr1*9zgs+1ff*c zRBAB*9X!1dhuUn;00A=SG3%36NpW2&-E9adyZZAB+8RR(oc_+r#cgjU+*vN~aEs(B zEeJKzm{;MR4WL|(P|fcdg4UNV{x%`OQ>4xw*;ZiRa#)T|6MpJr!Hswky_idRy=_sf zez`m5bI*ITwJMPCxuOBPXEl5R*Rx!-R^NU4bfNV-alLp8%iXvU=f5!dtI1!B1315k zkI_jBHRU8r=W{*WaT71F$G0neh2pM>Th!;`n7n!NR`B}iov%1pY*2Z5w<MlWa6a^( z^Tb2!_s|n$!!}j_!FO-ryMz3@?Wyl>60c%cVvWm&9jWi$z;`e5?{=oXyHvbNEa%_t zN`1E-$NeY&ZuczTouB&dfOvqt&5zrY`tE*l9eV`(i)`4N`fgnOB6}0EUN-DY`)-;Z zhj~0dS;oExo|6rirH*?D-`xP7kPVk7zf1BqOqNSQ6zFbJ8FaU&`I@UtoW9<6+B%z5 zmR#b=cfQ6B;l8EPQ@C$Y;^g|;thyRqRn-K+`*EoPy4n-q3$;J;oO*XkN0Ta2IvUR1 zeOl+z8YkT>c`kG_ocjttS0*noshYSo-qKR4XVKLeu9T^h(Ir)#OtImbx8s@yqRUBj zD_kaBucB)t^{Vu1kmR3Jry_#Tyfl3Z*GTG9rBV?3)DzIBxJ8*MOh#wdrRYgz=uw+S zE4Usd1*hpzpF)rN9p^cq9U%l@8%o<zL>wH6z#n!k?GCe94C(xUjs}{^>dc#|KYh9& zPWn@PK^NRv0eY!&q)aM>{`3s=r*rxq`5&msc=~#iR648PB(-C_cbx`*Yx<JZuIfut z;bgn?OXxb?|2?`AqXM|;dQxq6!N5pOs}n8bp(ojwR)veanw|t6yjoiu1&NdCNNk3F z#Fqos^%M`5CPL&t5E;;4Nu6dC`<Y0JIUqDadr%LT22-<2wE~Mu>863fO{B_KNWlfm zRTiYZayQ1-Bb}gqB;h})&Lu(LdV1a+W73IV{DSk&WC3)xpGm#Yx7t;j+PUJh2g?jx zi({Ha?ol8$EB(7^8djQi_3M(*Io++|Ris@tC1`w8y49&<<EeEj7xc8Ray`v0oVI*N z?Rl+n64%xOC$q^@8eE!q#~h|~s8h(~X}Z(-&|_9}-KjcpMtajMI@9^8&NScQ@2u!O zsm=ucIvsuK^mQdAJef6l1$4;MmY<+GT|Ps8ChgFV)5IreTQ*reIX-#gDdYi)vvA)l z?5AHq9FYDal|lb`8v4MENqs<g3*Q~YJ}et<N_}?|kla^d?aGEPr@ngw-@VAc`%3D& zOQj0vKXly9sqePqxc}teeRY=aZb^N2Pzpl-p>uCdeRse3DfFM;;k(;X-;GP9(0`u6 zcekf~*N*S*!gqJ5-(d+p2fgbt=u@Y*E#c539ovC@@3|e<bAJfVe_d>4SDeBZLZ`gm za=|>Y^`3jkL!#=FU&W^!pmrB<owgY;3P2oTb!n;1gkup$jXI!U(3c2BapAmE3kFzB zx*UBD&X#PZv_Vlty<~QL`pWxc>3ORcPxpvPwnK+*N~%K1cakAf{*cq$zrlYq_U|PB zP4j~U#PP{%q_1G)HsS2PN6HYQEx<hqp^3>~g&FH46pBXBU=;CXE)at={*Gv`h&VLL z25-ipIuQkp^N2P%*{F3P>uh>@mJ%WgaNdLNB#+Y8#w}y}FN+Rt*;o}RuiCgpGGBAe z^?e<_q9R{MAIWJ^`5zx6G^uH0y#KQOV~JCb@rT%-{lYiZ-J}GxKrmk1hX@Dy`RS?k z6KqCdJCITm4{%fUFqP(E?O5ITNe@m`%y}G&O-p)U0rb)+uCJGtBd5Zhi=Yl#vA7)e z9DlA~b(EOk%gfmObHvQ&@%5@K-~3fo&8|R2+KiiXtga=fpy#bfdpaU`^AL2)A3*<# zFj=izQ3jwFAkVUqU`UuVuXQZ~t0e1$9q5>1FpeU^-)x|{N5F42$vWAo^S~`9KaCW< zrsQcvQ&1Y^HMQH)=_0=?)pwtM(?r|ppU4}b4pSpkt<}pgs9NOnGJ*O|7Z!LUzDQ=> zZmP^WmyVdpQ@<^Wc=F(BYpE$NRX>a^-Ml_p8mU^pSt@h-oW%tNH7zc$(_iebX}J$e z0&YVr36cD^LOW_eqy4GCvn}DS>IZ941cr%Nv$S$4)+$}dO%}6`O7p5kpk%B;@&jY5 zCX3^#3(?QxEO>J-S+Yd@?1mf0RKtVcWAZ<>d!W7&N|(|-RIdk~D?M20Anutgtj0sT zlG><h#{ICKwEJCi=-{PFaE|-^MtTS=>Jlz^+zFUl60aS`JgI^UR)&bxv<E2~I^C7D zmQ)uZ6g5Nze2LP`<8%jSKX5qV;-OAg4pxO4><p9`u_mNUg;*Q#qcvFt3s=@OJ44FZ z$ziwUTAY2+aDlf<BbWM2VCy}Nbx<t)%i~38mPF&HGA`w?|9CGLD&HbsiKNt-CF4yh zkWXC?wJH9b<wW9bbwvS(2Ar#kLW`$P(bmFj_oP$RWr0(Xl|Y5(hZBehGQnHy1vmSB znY>I$gSmKFBhO4GR{mKflhokIw-=+^aSPrHJb5)ON0Pkdm8_G0$8~mx&_-}jbp4~P zR-#P@eF<i4C$yL3=AiR}taIq?IDF<_qP2_&DPP&Pe@}1kS*uEd9f8u7XZ1?gTyVi< zy&dEy>_FoT+E3E&kKFa7lp5#zJVmCb1^_%2_Os=44Ipi!NDbh~=<eZ7CmF!h{d0io zy14HV2Qdl6KDb;bj^l>Nm)=AC4NgJ1qG@8?m#CO_th%wxdN8&Cu(;s&dGef&+#*{c zw40nj$&4+)klF)M)3`TiwDz1GDzzHzed)8gupIsB=NI{NycYM4OuClhxgNrEbqf*U zhJ@8=hn7SYxH!(T5VOSY1+1DuPZ&$peG1etW=OrFlF1jFP@c)4Tjont@`KT;WBk-d z1JUZqX9Doog??Xt#8V3FrUln^GdC4*f`bdK3X-r@>J6!S!;=CzIq7%G>Pua|r47-t zI{tolSKlh1d%*2m)z>B6>~#7JhRS;F?drC;3;*J6Do@!Yt5Cyv+Dw>>OnFJdks&pm zb}F^#8}|myAuXq*^V8eEus124IUj3oA(A(s_50fWc08`$PDR)SG;)peyD}uWOuwx! zQJitiEF(h=%GtM$DN%mw1qaVlYPH2qi%c7wI<^lnwoF-W0|Wg3E6cwdvA7nlE3bEX zm9^Tqca)hexr-v9LVNzkjPc*j`M6LRO!QCjaRHDrQgRmrf|0<M#Jp*Rj)24jiX|V+ zm|vI=X7qZdSdki-%*BeDJe|&g%0F#;V%w#Qm(1Y49XpmR!GjgnDt{J-q<@A?^pf8) z2VP4`=*N=dS~@%;&;<~hAXPx;)p_kcB#ZOrj5Y}!%TbsWND<yW8n_W^ooZWq@x{^b zS3Cu~A9!GQS@B_ypY0MiP8^@8Vh5tbzFqbz#{&;M@L0Gnf6UQPpxlTtY@eJDJMmIL z2Mehd2fwj^^a>irR+6r=PLd&1ky=H4W(*?)v(Xs_c_ZOML!p<aNM~7*Lrw({ZI-lF z!Z8PGUBv2vsszL(BmsyNLRE6x_GRz<X~P$-E<F+rjD73Jt!{%E0PHWb-zlSg6W_<% z+x{MR?K~fID0wW5&%Wiw%F+LiwQqsbvZ(%lW}eI5-`g(h?)&a8E5eG1^j`OZN_!U( z0TGo*g@s+%g=Kf$3l}p)G$S%YGa^DGLPIkmR6-&myb&3ZnUR^1nUR?h5s@kWzjNk1 z@B1#I{(ir|yPs#~oHJ+6oH=uS=9za!wN=xIzPnXcm<wRBbMOo3#@f1Q1^to^S;2y( z-JzDJ@Iopw)D?CH{U*%71>8U;3*&<G)n56MPytRo#r>i|QLL_KRWEw#0(f;nv)&~- zM4dOFwu<5kb$zdOe(YR**Q35PrAysAnjO9(mbhX}Hr+w`^1iAIE~u)SAp#W&7!jC) z>q)m2pY!L~<)cPVjQ$yy(M~EpN1p#0m@atdh7B1bhmDLx;AE(LiFXg3dLDJ*Z4B&Z zq4}y6Y;_Tc+MI*)YJBSQ()@F9ux)lUDkq(K-X8f*C&e=ij)(HA4PkQ_;v{PiZL>zH z1Wc?!_yxY@2=U6P;XQE55bbWc=AF)TIm;=1tP-j%2&aj`mU$ABC1ZX$>78wIQWPTY zk@vi%exQT_?|-TX1dtkK;+39L!=VaEd1wART_k7XyCdZoSz#2>&B7RQY-bLPA=RBW z7haB!XSntScX(P>4c+@vWE7n}Lj5ihhk=%!kK5eU9Y;8|^&Iyz+BxbizG~vG&0@rZ zPvyjdMRl{rHch=jG~RIPvKzALi`v)=#>MEn)Wmm(s<d$mpt5a-vqa8UfKiBFClLt_ zzLhbIJv6{HUDCLzVH4}=>I`3jOI-|O7k)mfVS!(+sd>Dj;~r9RHp8Y-Db8cqGAeMV zlIF3EX()aTJH~MF8-_EC+2S3BGmQW&qj|E73HbW1;T$6>f531q;J-1PCx)3r8TJ^J zR-J~S_(*Fp!vg1Ce4SzJg|ePv*fa{Qe>QZs^!0VjDWB8b)z{xUFsHwxyQ`tIyRWTv z5UIYmdqG=QdD{&GEuDSkogMR9`UiU3`lhxh#@Q{s<#UY&qub~)mKwe2gXiJ0lYXNd z4LVFuIX0!Y8*QLWfZK1>gR2F6T}B^hmm_8uo^oRf=-tMA@XVq3b;bbvcF=l>b0o>_ zM>>5taQ$QWp9d+5W5Aegj6tk!V<D*TP3259H{J8jz@O5p9x^+PR^(%h5kr2|ajp}P z1LdBc7gyp12-mUR%af8^p5(e3l2i^m5UY#qmP)G}`Rh04!d}W2-N>u5o3idmW04Vo zR@Hdoc&cz*Yyz4lV2d;5>3^$T2id#@DfLr%wL;5<(4*H_09rS6I&*pUL6=@U-FV)c z|0$G%PUNBo|K-Lc<f|7?C;nB=MuT=4*`W{VwoqObU0F+UwE<p$@I~*b3yTf)KZfd0 zKWvbyV{Xk*wKBc-e0U61Z?zqoNhf9ZD*?@goW*1dRjW0J(ti%=*9W&1^a1Fqtkw%y z)l$WKB|4Ca@FyepDlg^u$%ZO*C3)f?3Ca?u*9=wO>d`IgOzFDXw7^2DjdjAEO?E4X z#=5nXgQn80Gp>N&g0#oNKixWg$c<{vJqTB2s_JJaeAOD~p_NUBgo*#hSPi6CAIY49 zv{lPhy@9G}1Hk%`mZB)WZqT(o-;Yc6C*7zO+MaF34Uo}-n5uVCr81B5sOni8Xj6f? z5@!Qer88H}-{|k%HZ*k}6EsD;&d=cwH-3U48C$0Ds|(CYM5gf!=2qGGg+{K(LqF~@ zzJr4?d;;sY#uj6>2pA)b3gaE)U87axivqlh{ROAU6r$<2iL*qJu@65y42qB_5v9g{ zQ6`2OKNaQTY%xrnBZi|9j}jw{lcEB@1RaSn1@||L^U*+_6*z;#IAFXbE--#B#t7VZ zE+RO$0bP`c86OjI9CA`As*G3AT}4E-s1akug~(#mI4CYMejzRv<HW~Bt*A5RiF)Ig zqCqr@CebV|5#z<BVuH9#Of>EimmA+TwxY}X8#<SSm?S2PDHz$VFkUtOE2fGo#WZmh z&bhi;TqCAqPiVFAyqID9%4ip#G+q$bitEJnVy2iSTEuKIN3@DIF&FRhHO5%cE;__~ zu>c+DMaEx6r||=^P;`lI(Iaj!E*8DUYobr|ivh7nEEY?|QgNgBl+kE(h?~Tx#WHcT zST1hC4&epjR&ks7jJREV*60)~jrrnpVwLzjs?0)T19oRLp>m!QhS4p)Anr6SF<uv6 z#3X3E(Sv#ET}H3CTYO2}Bfc!w7=7X^Vy$rl_Vlh3UlZ%ay=b5l#C^tp#Mi|J@eQ%j zxJ-OgY(iE4wb3u`7Z0FeEf(Jrn~eeSpm+#BCwthqTzp4tF(!%cimjNJeot%@kBCRb zW5ypbq+KDl<JT%X#N%S8u>_TGsrZ4|WqeBfQ0x{z5_`mtjhn<?<3{m>cv3tio)*uD zec~r#zxb(m*7%0_nel1kd+0RY#1MLwI3Rv54jNaBUl@Nf-WJb^UmBki&l}f>Ux^pQ zuf-wUg0xKhM!aY&H*OKX6)%b3iI>Iijhn?`@dxpW_@j7L{7Jkf{w$7&zlhhxU$Kd8 zhIm8#O}r`oZhX?X)_6l4HFk=Bh-2cP;<)&iah*6}{8{{4oD~1TFW>$v-WKnOQ{r8G zAjVe+tSDI0#t9U-f*q@0*)j*eP|lMc>BXsVei@MYvOo@zh1kPhgnLMXGKAYwN@bZG zD$C{Ba+o{^r*@6N{OnvgQl2MA$@ArCc>!i@AH#0#h>XgZjLU?qlvT1?*2uB)Lj1z* zVmS_1mDU>f8u!UMSuY!8qimAR@)9{7_iIj&m&u9paydy(mQ&;vaw_h-oF=c5SIcYU zbomK6Lw-_TE3cE+<36ETvPI68b7ZS*lXK-f+$7Z@=gS4MQ!bQUvRn4Z8)UESll^i) zE|QDo61h~~C_g1{lAo5#<jr!qyhW~%x60eFTj_TBS-DbvPOg%lmv_i7$UEg1<!X5s zrsQA3ochahjr@vSE59n&$*;-v@?LqL{JPvAzacluZ^}*be))j>mfS2Kln=>o%ZKH6 z<QDl|xmA8oZj+D5N9AL3yZpY~As?4J<qza8`9rx|{z&eTKbCvt6Y@#<lzdt~BlpRl z$o=xC@>%&ac|iVL9+bb3&&glP=jE^D3-Z_Uko=8&QT|rGB!4GgmcN&W<salL@{jUW z`6v0B{IfhF{~}+Pf0b{@zsWb{-{n#H4|z=fQy!Q9k|*T9<w^M;`Ih{zeB1b%d`F&= z?_%js{pbM4{o)gcV`kvDBw1#*nPcXfd8Wtonm!z(6)^M70&|F2Xr5&jnZ;(%44EZn zsaa+YHOtMj&0*#_=5TX_Sz(@Qjx^6RN15lFqs<G<G3Lk2uo*F<IFLDRCd^8+%B(hP z%(3Q$=0&(dah&;av(~IL>&*tU(QGoC%}dPj=B4HY^D>&p55avHXW^}*7;ly#qr{wO zUT#h@C!15uE6l0pmF6__D)Vad8gsh&33G<|N%LCsI`evSra8-OF=v}|%vQ6_oNLZA z+szJhzPZ5cG#8p(X1Cd6-eC5ceK^-~z+7Z5HkX)7%^S^6nKzlAHkX+<o6F5x%oXOX z=56L@%-hY+nk&uEnXAmtn|GLBz`Mh7<6p)J^G@@N=4$gU^KN|S!)>Z~Q~x&J6TfK; zGd3De7@sxr%rBYum|r&6m|wwJc5BVAVjJVf&2{G2%=PBIcpJ$zuE%eu#~HQeedgEA z4dyq@jpjGaP3HaP1Ln8P&E|vVL*};)pZTz{&3FXs`1Qt<##6?l#$(2I<NM|o^Sj1_ z#zV$#<45LJyyRz_-!r$FkC=~|kD1%e@0&Z!$IYGQ56oTW56#`?kIX&hkIlX26XuiV zQ|8m=Gv+??C+2?hr{=Tf&&&hn&&`A8FU;r6Uz*RGzcODie{CKze`CIA{?>fS{GIu- z`Fr!Q`3LhA^N;4M=AX>h%s-n)%)gkgn}0RmF#l%0Y5v_jYW~AKX8zMWZvM+WVgB1Z zY5vE2%lxnTw)u{E%6u0usscZwM<v6eiH)B|-e&v|ix?SJrtyH4Wo6^I&KzTnm22f$ z9?Prl`mzF6zExliu?nrTtRkxzOD!R*#45GQtf5x9b+$FkI>#Drjj$@LbFGoqdDbZF zd~39Ifi=eZm=(4nR@91FaVud}T2)pxUQEYY7g`tLV$yNe$E{kc&Z@T>tVXNJYPK%1 z##@(K6RgXuiPq)TBx|xY#k#_piq*Ei8%K>Dm{@$#I2$X=UpDSBzGQsM*o5guopHBy zr8UjE%DNg$Fzc=9#yaDx#{I@x>l4-t>yy^C)^*nP)=V6knQ1(2wOF&QIaaIHX3e$c zS?yMbHQ!obby^FpF00$>v2L(>tv;*Y8n6~wi>)QrQtL+RQ`Sw^r>$ky&DL`37Hfrd zt96_88S8fIv(`%MbJi;B^VS{K7pyz2FIuauyR5sdFIo3kU$)j*U$NF&U$xd*U$fR* z_geQ^U$-_`->^1X-?TPa_gfEG-?BDa4_Xgd-?kpMzGH2%zH4o@zGrQ-9<d&^9<#Pv z-?w&Hk6SyfA6UDrA6mPuA6a{>A6t8^C#)x}r>v)~XRLkJPptjcPpxOIpIHa2pIZm5 zUs%sszqFpWer3I2{n|QY{l<FH`mObn^*ifj>-W}S>krl|)*r1`tv^|>S%0>USbwoz zxBhCqVg1c`+<MdcyLHt1hjq;Qr*+)=mvzGWw{_C`kM)-IU+Zn_9SfImV6{Zp(l)UW zXxomRVXOPMvh5r@*Uqy&xbV+s`|W_8Zx`UanL_(4yT~rKgLcR+u}keTd#GJ*pKTAb z&#{NwBkT(MTzjN_o;}Jw-yUsWV2`msW{2&F9kpY2+)mh)c9mU?d%efn7upxu7u)0P zkK46&on3D?*o}6R-E3cCkGC(iC)k(S6Yb0GN%mxWihYGW)xOf6W?yArZC_(gw?ARe zus>;EYhPzyZ_l)6*)8^Ldyd^|x7l;;d3L+qVb8Z0*q!!5yUXsjd+ZzRUc1lkw+HM+ z_F{X9z0|(Z{*--_{b_rdeY3sXzQtZ)-)i4xf5yJu{;a*y{+zwa{=9vM{RR6@`-}E! z`!4%#`%Csc_LuE7_E+q+_E+t7_Sfw7_PzFf_SfwV_BZT}_BZWK_Wkw)_P6ZK_Jj6A z_P6ba?eExI?C;uJ?eE#!>__ZJ?Z@ox_V?`__T%<W`v>+e`-k>!`$zU3`^WZP`w9C= z`ziZr`x$$m{S$k?{Zso{`)Bq6`{(vS`xo|e_Al+{?O)k1*uS<9*}uU`V3x7cxZU`? zvC6o^xYd5q{w;odaKu<)zhvySe`mjJ|K2`q|G|F6{-gb>{U`f1`_J|f`!DwE_FwHc z?7!J>+JCo?+W)YR+5fbU+yAmp*#EXq+W)cNvj1zpZNFomvfst8UxXta6HA}A<KP;H zOef39c5<9tC(rRXUdQM7oq&_?6gWeiLgy@}$SHP$PRJ>7N}V!is8jBo?F@6yafUl1 zoC@b$XQXqUGs-#N8SPx)jB!5Zgq?^Jbz)B3NjQ~Gl~e81IAfg)or|1{opH{`om!{P zsdpNjMyJVXb}n(oJC`~WoXebv&gIS|EXPi9u5hM0S31+2tDLKyYn<uMC!871C!K4Z z>zwPIna(Vy#hLBQaax@=XRb5PX?HrD`OX5T(^=?rIo(c=bA!|C^f~>`fV0S1>@0DX zIyX9>a&B@y?JRR{c9uK0I4hi6o!gwxIJY~Wbyhl`b5=Q@ckXb$;N0na(OK=><=pLj z$+^e*va`ndinG@Fs&S|B5?;u@VEo=VWc<PSt?@hKH^z&`%f?}6o%1zky>qW~pYwHR zgYyk%qw`H?lXJiGfb%V9v-6<ykn?TlVdp!}7U#RpR_A-pHs=xNQRgvdyYqc#hx53z z)A@n3%lV<R+xd~R$N90d*LlKu(s{~x+Ihy==lsOk@BGwx*7=!p!1=jz(D{Y)obyZP zdFNNo3(l{dL(XrU7oFcab+dch7PVyzbah0U>YB7)U&(%${V4l!<%c5;jT)~b9Pt_$ z=XiD1jMuTxa_XWPbqibO^mcb;)OFA6?rK|*QP<QmXQ00=r(sS<@0@{!b35CXWH+>S z_qWWM)7I7RG|p)OH@x2NmVT#+bak4Ds72Sa$_<=!11HtMDmTQlo08%<3Tszim(j%9 zG_f|6yBaswl&f&0IqqCSDdt>~Qc{TuN21Z}OOn#9@mSK!8K2^DE={v-1KXmZI^$AK z^-`Uxb7_A^XKP!|gj7r|Jyz*VB<na6lQ|AYV)fQUr0Go3L6g#g;t8{<Yo0SXE!jrS zOe1Hyk?qpRMc3%sjf=3M$)4Qa-P@&2)yPUWxv`k5k*(eo&YRpm&^526cVJ;>%Rqm| zWX>8{r>QPyavxSo+qI@s*-KM6QR!Ss)SN3%%X~D#3fE9l;Yf9}H4XN4rlm!%B(=iP zNS$+4TArIYZ%vi<RjIr*vA|}wNRyj4&QnuU-c^J0auw(0DqT$WRlOZB?p0J+&NW)? zYf@@wUDMjphSlAUKIfWwy)BE{az2p?)aFD@`UC|rO12M2V{F~#YG($C&7P60RL(VH z<}3<V<>>SX_N66C1Wz($=A|?Ub}mz1buN`htdbDt3V4x9rzOo~b<J9(`YQG#?8n$o zC?74K3%-tUw0yTG;COX4n!m1|eU?)f%V=S9ws2c(Y11a0ld@9woK(JBshpiQQqpNl zmU^VAo^@^DG#faL2G+G9k=>S*!|JnI_4OHTtVUa^$wMS%BOFZ-ADVo^nMWz+%u8vf zEf9@m&r3?T+EtTpPw_Y%Nu!1%jp3}0F`eCWI;Ty&OzY9WW@)I&=wLlMxD)80dPQkO zV^ulxQ!;hBv8vn!^LpFbx;k6BT07=Aon$>7R#WeECJlrhqQUBficXg{a92xDH@;GI z_q4Y;U1@CbO0x|Wx;tHCx1F;|8`*A+Y}!UH_D0wAT>K5qc6X|!HF7SS+*r)j$OYFF z$?G1}(z@9ey4R@B=}zl4dMOi5Z<^wXDyL6pt?x7|MI$wKXLr{;Ozl-)(VrHnl9WMT zQSS_-=a`2y-9Mtts8@i`oxj^ZHgV3Is_cPOPMg?1&1|nGH|Lz=rslkXK{*|8bIN_n z0QD&Yx=&fGGqpICsjS7xK4r1)Q<kOzb(KO@U7FsfP|2WAVcR#?I5(2m>>HD{);q7Q zcOh!g?9RS1b6Pt4oley+L~?YMVwg-vFn1megk-6j#Vk}x1Up2EW+|&HLNrI4o?son zGL}M62!uHElo!(s%?Uzs=27V|oYW%bOKXW~v7#h4=1sLp3UuZxFHVxtoCxuywJ9R# zd?(WK4LF%%B0b-UWWK?Y%y+_Bs039yi<MWEqYIE=Us@>=!ILaX=1uFQ7bue3Nt3eG z{`AI9!OmRe)i}z)k#LS~7Yw^fN5Wd^gc1@7J4=-p$yrJ@fM8!*1tNlHsawSeRq-QD zR2C|tt7Ig?0VJ3ZRmak!)DYqfC@-2bkW3P=TcVMuZy;5FiP1BVo_tiN(xj?_5|T{b z4WQ(s+0+Dyha*tp%+wr74^cHO;zn;wN16!<3~Hbpu3IT1x~US9P3@Jy9NlOMrlN^d z<>(R`)7KXbgQPs_pW_kNr*0w~kLY<zJfi!gc$j@X^F+Arl;ROR>c+!vJUwBEM|2~P z>p2qm^{^F>=*}x1)}2>8LfsL<U0e@y@ra&N#Us=qhvTlEQBEhy`bAy+m_N#TMOm*X z>k(zWqBO;VJk}@d%IEZ>tY4J%3cGx+-fn)~bXeao%MWvUVNNH^a-yz&oL-pquW@~r zkM|EX#KiS`PB>oA<)YtrfHNNt25}w);(EFpj_ZjfeAY)#DZ}w*-O<D&dV;0uB#d5% zy1}g)C6b2Jq=!%krkhtd9&S?gNjI-}RMq1eHc^aKjd2m_Ib%4k`}uG@;Z`9xoJ|;G zlO|j`s~%%h#@LiGHyt)Xf{QH1CXTr{7fFmw9%GZoS-&`^6K7M$S+4~1$62p9>lJ4` z;;dJk^@+1S30FR+A7}mItQXJN;t5x8H@|K=tZ#zlCpf(Xr;}hgaaTW1FX2`l*RITm ziL9<d%vaC()e~n_A?DLFr*OQH)7Nt!R2|l@iS^Jk2vi|G+{6>rs-kdx;t9L1PqFk` zlNeN=Xf)O1M?9YDlu;|v>r-6UC%dk*r@h6hZ|iTdFKJo0u!S-dtBGec_4IXM_GHaK zklBRbY3+clOYt^tU)Ivo(}LI0g|k~*<mCf$(tw=af!Dnb^)@f3beL1yyX`AG<}GY7 zr?m`ZT%|>sQ`$Ss20T;xI&?C1HQAJYe|J}RUoNLeNG4JwAWJ2v!&$yYSSBIalNYvO zHw_6<?Cv1qWhNKbi8eH6lm4kT7;8|yf4JIiA!E!&KJ9tR7<Ox0XMamZ8=K-r1ehwY zpG?uAOtFAW(MhJz^6ML9*MMBok<qQ~VfMCnbIMV>kBrg}qYSW7dSH+_c!1j7Dj!)& zuFi~tT;=`ghz@2Egm@Wo*$Ym?bqrRCkZej#gOqX2!kHx`6PYDI>#ryJ;h3KI!>`Py z?33}b$zlL8Q_$uh*cpga)?o565NS-rs<lV0IT{H^HHta73T)6`qxPr;f=8oqEg&AD zz_^YWk7<k=cQg`7Xq4JEP)<b;gTPr*o#xVs#&x1`4r|h3&EzGh6N^ToagFLk6FSiZ z6Lp$cxlmcas|a~In~55Y=>!ux!GumQp%YB#1QR;JN}b6{oykg_UZqa2Qm0p`)2r0! zRqFIAb$XRLy-J;4WqsC-ZN1%Nl#|)NxLXxQb!K135(2WiI=b2j%5LkJ*RCe)k(#Wz z9g7rEPXMCfYHfgUHT7!1sTYJ#y&imR_;5A#V!*ZK!`0NA0jFLSevMY8wX1t!Cf51J z5TJBYKz4sSUStW(n%h0l%aBrq_>{`T*N2tKE)8m(6;)@1Aj)pnz`|Zig8-F=0yqr? z>NGT@(jY#S2Jz`M2-Im1BN<CUsu@JXReE#_*XvO!T(3uma6Q|litU24;xs?orHbuR z#dfKxQGGe=6Qz=1M9mr^)O{<<5t8THN@K1?2=kC~$^a==rD}>biD}j(N&^X$Cr+Js zReIu8I&oG@jYN?eZ_4uNxGR%0RHd0YrkcJ-!yc+!tfz}|yePe>z_6N?<Atg2dZ<__ zo`N(=@f6BxYgX!{>hwxp6vLgizMe}&!;#9Ywk31WGvQ5Fhr}8^sEv4o#WG4;OKTe! zub#|A!?EV<Io%im@mAc|7V2s1?dWb*%g|WXYo&#phPr7KR(R$xl}K~5o>IW4p+8!s zD^IklQg?7wRl0FiRnin98q>2`_%wxyRyF8s#PsYKbed9tt}7J|oTbdv=*AWf>oquJ zH=K9F0J5gm^Lw$wRA*Vw@sYQ9pnWNpfVyUCZ;aZGT0Dr99x`%p$ZWiB!W`%~W~M+A z5gg2jC8`#vKtWy(Qi}pAwS30Yc|wC}Gt<L-9M;*^*GB?|q!DH&sfA2!!D^6RMI+`S zQna&eE~~5{3aB_k0B1ej0_UXIbS*jqPsw|DG%KYONCmnU2omXxb}Udq3)=d%!fdf2 z>BMA)DOIp)IcOQPQQjT%x^$|#YR=Rik%|YA(nHP~9Fk0-fay03wDqaI%_PRpMB2_w z6d$#gnYzuW5-v<5ydOCgJzsMVN+dLxHn=|Mu#|v+CZyLHuO=mPQq<RmIhktIGm{YM zJ}il*0#XpM1i0MO%CvM4>GZbXcSF^NZxV4<I%Q@`^8z>1>7|jMB$C1;pfE{u0U{4| zv6=4yC_E)9mFCcvKD5k^z6CSi15lhHNpiYD^OID)>_y#1s?N>qY3Ws+DYvcSw2)-= zC+VTnLb$5yl+(h}vYtjwD}tglvYUC55=;w7ffO_%h0i=ANL=AF27N$;A!!j(c23u0 zpbLXc-<<B=HcDZ5T7*>4X*SF!LnjM~B9;uM4G#3_z?24sX@s;&7trMN(&eZWKnZcw zGy(4=r??9=-)!_;X~ZNtGes;*%PxAunJJXy2UGazL51l}h?udm7O5#oC#PkS0%_>0 z(#tc^DxM!y>17+>`aPjauhs*v%4+Gtz}eZ>!7syAO-|G0XvD3a8BJ3sUvp{WwDDI? zsnZ|7FyMw|!&DmUo0|0)9<Fb;TJhb%Y8vRJH@|4Oo~MNR(^52C*OaBE5^4?=&uQ)M z?4*@)z0wzr>SdB>R4>;=qm{JW5sl(&v6?XAyN31?S}F$nEd2IlUhe=zGKZeJ$LjPf zBC3^z1dgHC@*qjiE|8>-rx$>tQT?Gf8pWp!7-C^kF3(D$O?vhc4QoGK)sTY<*RiOj zv#o1Ro0b*VGoEOyCZ}yl2YQ>X{*IQ;OswMK9o1D7zYV1<@uaIpujoXp^kQ2yravLV z*IAF%>FG`s-^^6Jm|nz#ujRz*^mHm(MRW3Kv`H69R4=Z=lzRFUtz^U0vq`IUM(V=a zaCKpAm^!`K7>(AuMZj|P=SA3!_2GA&Xf+oN7j%>hKB`x+qS0_ewys<$n^v-&cm^2d z8DUg^&xXouYo0kqo1$3|(Kj%=uZ>H)I+5A7u%~}12-%(8^E&Vu2Oo5@80_xN?NGDU zzBc-0k`23I%LQ4Tmr}#^ZZ+V^W{u8mtVXLAtI<}A)$k;>j;ojc9N*l;s)noBs!5-% zrq>svQN4bLid~u8+opDR=v;VQ1ak^EQ#BDi!Hw~RHm0|gprpA3^%e@?taF{q&sCXg zMpUoyp{iGB^mQ!kKugnkui=`9r7p6CTXQ&%QJuGFl=B*`=9*N)HB2whN27XK8BI&4 zAFYh#_Tcj>a*|d;RrQ&D19RH@+go&zMdD$P%axYtsNO?^L|M6TJPT`0Fb~EIt!BJF z3+k#leT#mLiRvv3h{J`b7agG(8;T1t%7q%O;VNHK=~16w(7Xpa`#X9%m$F@IvNgG< zbD%GyrMI_x@jwp+MQW<D38$$hld7|b)Y`pR*QrQNji#ts0P|F8%Ixm`b`1^mw7T57 zhDErPBW(2uTRp<17-54%IFk`B?Fjb=5xtU%y&t;$MY!XO=p8}PNJEWQ9WQ?aJ$YK? z*`1V;To+S$NFqx8B%(CedC_09qY=Gg3!nR?u&zZh?ntY+R#maltGE!VIDb{my0EI6 zb*-st*8NC=*IE+1){?+lOKaC`Y#UfW=_h!tCBbVgiRvnwLwnM=IQ0bA*#!4)iR#9T z&beuP)w+r#s&%_fp!e$SPYbWnS|)0=mWdkHlB-Zce~-XM369TIF2T7@aIO=a>jc_X zXFqlTwYJ&hX0$HQzG{JqhGs|CJe^hUx)XYHQZ%7g9npudG7Y+ON$^mRXlTktv+J5Y z(AmiyV}jdcLT?U13e{NSLU8Ns?j<@AZuJSSFA45l5?sCsF5d*t5)wRnNMN>rH?Ed> z+%yvSXhb;I>xABU7ESP)P(ptZ0IutM0^3xGzqeoeopZH5+;|iG+MnR@Bf;ZTg6nfa z?`VTOE+M@Z1zh)12_Bykm252T1#yXjPKOsa6P3EXBzSoup}(BqI0@a$C3xzQ&>JSA ziAvq`Cn`Bz{Ut>mKcVI7FH_Nk{-_yE=#PTY1Wyzaya18VUxpCQ`bIcC{jm`IY$yE@ zGK!xoYx$L~{%-nuJWlXrBN1nLRa~?67cuC=`st65kk9GyT3n(^53&hfW=ZfeOM*wT z1kVQ&`lBNT6}FrHA_n=KUX`04)>nVbh5j6_KXxMDtPihJC8C^Pp7JGPF3$OjaSP-5 zQG%z437#AzcoLD|NkoDt3kjZIC3rrR;K@ZI&W%TZ=|X;3-zd}dM{3xKah?|?cx^LL z<<fQkm*9zEqKfMq_lF6dKdE~&sEt>-`QmcaAFW|O#`VYAD82@0e(p~b`lB`M$ny0^ zUhpx_^T&k#A__W}56`<2`b#6~FYBwnXrkV_d|a=20-Vqvv7r~+U4JA8&gtndlSs$4 zo6E=Y^ha~>bG|E?PcH`|UDku=qY0itC3uFE&|geZPneI_<P-V}E9fjY!uI6(Y@(9u zwf@42O&MC>7}w(%mrqQ8p^e7aJ~3|3F}7oj^@wpjjIq69oKB4Ojp;9=kfZB&jO`iY ze8spwiE+Kdoi0?aF|KzpuFo;<M`BzLW85#PyTnz!iE%rPar=+49b;_Q7`LMs*RvS6 z&lrzjF}7!n>s5^VF&t&V`e-}GxShqg{=~T7jB$I3as7yKeTs4Wk8%GL<8~Qymvgxt z#<;%3xZjI$|BJ&Jboy?2alMFfJBx9Bk8wMXarwu%-o?0Ij&b{sas7^QdyjFy9^-lu zOXzwN<NiIy{bh{%`AS|+uH^YwC6A9)+<#VaeXi1*PNG$@$^c&XySf)+P@UI?w@_>? z?DWw)e-9Rkncyt!=)%5k2d^OAU9FVk2uqBpb$Ki+F2q7{YtHPp&Q6X)TygFvW7YL} zb6W6f>4px$CMPxiwoPrrDGFWbabn!(#<<PKc+81$TZu&)hP1Zyw@mElTF}%tr=`c$ zG7n#S+xlIssI_fT$DFnXouy`cnc_sw8Wb?O%Z*Sxh(1ky)jDI0X^XoDsastaXzOa7 zJooap){cRN9ONU?w6-PvOeoTX-j=Sug&jC<qT9`L>3ag|)pU`gdD^=0Uf#Qu(Y&_w z3>RQB)OKYX7VYqr*Ug?6?-~o6+uB+=%8+@z-2*+RbA_<&vExSArloUQ3#MExYGIgT z=o(#JW4Ct?^y$|Y><!jb9{+Ga72~>p!vR)=NA%8!Xhd(aiN<(*h&42MJMqafO|M{= z`sR-}p}P0fKTlWNV#Uq+<aA+5I7qi<?yZ{jC{ypYx@PVLn)PfT7EToQLP~Gz>DkZe zZR^1XNm?24^tE@)?Z4E`y_e9*18%|P_N6t1A$|QVz5SEtj>q>V>>p>P0!&RSZohha z?C<DDt6`?XzNKAr+OfX^M!mGP(<N)O@kBmST~~navj22-i}AkLua*VgQ&ygqh3fqi z%LQsJiV7hdZKh5MepQiPn;Nw6PK#DU)SCKCUb#}Mz(g%gqrNvzX)>*uNk}i@sie<M z(o&%*D8*Nt;!CY@lJbF;{?nHWi&D%<h(rxbqNy}e5U~`bSW*dj)pDi&#6(PIrSL%+ z&R6u*_Z{LL;?mr&HAKxNs{2ulk@O_cn?jU+C`M5lVNjw0Hz1{NflEqX=k+LJil;D% z4w6Rcrbo*^LuK%&Rf3tyA=UDeXo}`1TDl+~rJepsD2<S&*jbvKzP3xLaQw6!Fr)g? zk`})xot&;fKnJ9gf`dqd3{jwisBR}eB^7F-Uh*bb8-Qh|7hq^GZIJ9@H;ljS(TW5~ z3b-MuZy-rhD!rh~rPX1K1QfVI>BOWiZeUtnPReq_QpuFKq|<y|9Aud^L1(2A(hX6N zPDiDq*hT3?7Eb}Xi{a0?iixORVo%vb%OpJY5x9()xZbdYH2ne;?0(83vB5#4K}D2D zL9V)f7gJ3#O;6Q^_&JT5o+ls0PU|*x?$6M$h7o7l7ozuO!$T~|wpW-$2dS?OmMY48 zV$;=Sa27Nz#i@JqH0mI^x{!5fdKPtoXu3*@tf8%z&Zd=5GU&o4)zS(|%StIsvUCQB zn2cVWMDa0f(1(95;xu9jv8RZGGB)(|z!V>)uML{|n57M&JA(8a7N+8*H-bPKxkc|m zI4g~mE+LpkPl2SwuoRw_<3ah*>FXW#X`SMbv;rkj^o=Z(MonW*eLt(@H;hXCW)tQ& z6!<)8&|gTxQQkJqUub~S8*!L7w!p8-qK*7>x);vQqTdB5NKIo9R-dE&hB5dh3e#u> z1YtB+gHJO@_;p$ILz%SL@x1o#?gcHgyBA@0l$1#;GT|6+vyVmUbFt+IFB;v8Q%t;v zou{SY81H3|@g8=5jSll`7yN3iXtYu(s&*kkA?$j>P9a9{+XNt<WL7nr%x^j?HteS2 zVLMg|!M@%Ug1uQO1lxasc#;-K4~r8L7-Wm|aBOx>3W{JGa0*FJT>UBsA^vn@rSV2} zDmu3?LrO|iXPraRjS|HM<YZzoopPSLVU>bBNKOCPm(Xnf$p<23^G`^WO6fnMB0jIK z<?4%)j>kWNQStcaCIGY4&#QDe*^R&)_tza@u=QqGaw#yW9FcNJl&UmymU2C<M6pNG z;BXpTlLp5a#?GrGzk*$U1-twTj`?(zBKf3B8X<f-0UPz8eHsULeWwVN=IMk%GAQ-a zIkXJb2AlAWn|)ec0#0qRDXf1o0iWr5CnWHghkwb4@>JcaufwfIOt2<hHF2VO<&*{k zr$q|f|KWv?D~$CyVd600%R#vg&rF>7B#ayJFN~XTqJc0zhhNPL{CfTv+~daEa8Kb} zFd+(Y_LmT6<D4#m^SLgCJ5k&OcNxxx66$0qxckIDxchM~l)yPqFTg#7vz`Rbc{&XD z74b*7e-W?4{hNS%I>AYZf8%sXfis)b+0PbEZ5KGPDI0FC%!TWfKDhZZ2)9g@!7Z1= z;a13V;f|5GMG9vzRl=>7HE=JK&=99ET@1HYHp3l{>yQP`U78H{3V9{mt0eA=RHrS$ z#c4}$XW~>#AzNe%+&Qup?p!$+ZinoG+am|yE|p8+eoB4{E>2j2dyBjU?yd4xxSx}s zgZp{;dAN7tt~!A;mA(phy<87>tK16rSqaPFq?#w-K4U%u_h;tM4WUlLfcudB5ZtG1 zSQ4jB9EAH<`>$~SX8#RWapM#SL*f*Ln++2uAZ&vBi1P$ooI8LrQV03s*mFGUR^nRV zImr_hzK}fi0B0Vc>`h3)1*<qkVZGrcDX=Q23vmj=y@-uN$#6E&aNHMQ<1Dv0PC;wN zDPgj)dEzvq1d9<}INL`qZ0TKK)Gl1GZ~@LNTY?xkbsaI6vA+W6-=f@5qmU3mD}iZf z6?D+2*{PK1yne)r8<}-8n#zqhc77^%s&X%@n*sOo$rIsDoqRdmX%vc|`2wahRFy21 z|9XM)GN#G>aIdzW#zEnGoOZx>;$Pr=p+zdxKv{?*#%q8BxO)SKfa9zpSz1<#8kMvF z+6q|$7A+0nDZ*36cDotbQPwXayM^D!nmHvWN?tE{yW}XI6Zn6-RF-CzdXUEZmx_f_ z!4bPS8)FfUF;`{d!3h*k;PfTjT3Yh#Y0uNA;i>QoN;cvDp^~j7+e>!Q|K5^)B?n5L zFL|-#aOuR7*Gk?fIaYGAv_$=voGP_SvrB!Yg}{cDj>P|%(s=3E(%RDI(ut*0>3@Fd z^wR4~TTAC7w;_~$KP<ik|3hHedr?!qZfw9Ag1hiP5`D+-jPt}Wob5MCT!_A+7QMuE zMx8oe&$v>|6YV%7?lzo;ca7MJe&bs4BKn7JoYW?b9%|h;;H0!>qnFxaAI>>jX!KM2 z8ld*I2q%`^V=ShY@+oR5H&ILZG_{mv)KYH7!H-7C9sJ;~!xEhHOE~mS(%tYg`FDd) zJ<IW+{u1ocKFmLpywhnPEMs}-jgS2Qwb1|W|HY8||Kafthur@U=T#gkcj>+x>y6M! z{2vRQ#Q9T3@L7I#!r#L1qiJ+E{Jp*i?lffaOM@O0xD~`%*CE`R5XwZ@3y}33KYQS# zJtc9M{{FrQc?QW>>8Ui_bW{4jSHD!)`^#6lNSqL<#%P1a=<8^VUQA>35*nj#r7`*t zjnS{u82wK*M&qncjM1V%jnO!F6JxZvNR81r!xCdO&V9rfjgucSMvKSP7>#ouF-D6$ zYK+DSj~Js7jxib>7^A^;T>J~?IAV+z&#N(7{8o+8;`eHd7KhasE&im&Xz`jFqs0-` zip5cNexmq?IzLhTQ;pQ(UuvWl|5hWlIH^WzaY~KUIH$1|EuO|`oY9Ce8mBa3jD|#v z(Kw+IV>C`^#2Ae;8Zk!WltzrvIH?h1G)`;87>)B9F-9X*jL|r)5o0vYX~Y<fvl=l* z<Ge<U(MTI(G)`^A7>$z~F-AiVjL|s35o0t?Zp0Xk83V>>oZW~qT7F!O(Xv*J(XvjB z(Xw8R(XvVPJn|AX=3-Vcq2wX-4%<sc8%79qh#{1!hKf2}C<Iz)l;TU#Qc!U)o$quh z#hK}$T1qiya+<HWAPFU<luU4GN<WS<+ocsJLyM=lv{XKd$GJ4z`^#zQP}D=trGip4 z>LKq?w4z?nHH7(qhSEZlv?AOD#GzzAV0&G8C3}^vO12NCl|+G8mq53o+mg`g4}?~w zhZb$2xNDNM^+{->3x!hhHoG*HF2_aR!y2GRVrY*GrSx<2fp}_!CY@6>1r;HG+L8<b ze}9N#JgZ_9U+eO@@;=CFC5>)r5ri~QUlc6~aV-H&N!FoCGU|(>>H4Ce32rFY7tpi@ z#HVWsXdz`?lpC}><U+2dItJabZ4|u@j-#OLEqXZ#rDzIzl|oar6QI2fP2^yCIyK$$ zRJuBE3Zi@{z|gf=LCG1>-q0SN8=<bf7b?z7r@<P#O7<3eTv~BK5(>Id$%G_?Sr^Bc z?b3>qp`o2gTDc1;8po(`X~m<HP&5fuC!r}Wq;jNkMtQ4ntx>{I@zp6la8Swo@9me0 z@qTvZbg5oxT~HFNl}`7A>M1y=?W-6HDsDtg+yx1HlF)PSg-Ry4G!;YHPt{nLRy-*5 zba@{fqxkBil<Fij#f4N{%9>F;&ZVVdq->Rf&S<p>Zh7cd=34FaGWy`SDvi)66*nbC zw^gD|Nv3hN3%OdMkKLnb>AkJ)1wc>s#i|tCxM^+cL$!BHKUx21-W@`(5Uho~I|!QS zLdESa6a=k!tqM)iifQgnw3L)&TopshE56Z%(xfbRX~k+5Pw5ulk%aDcp%O^ubnkO% z#ha24?5yJ|K9+)Zr=j3f7b-yv{a1pKm?0Hcw>*{FT171e&Jb#?hUg7LhbC#ody}Co zrKC%xq3g3sgQ4;df`Zf2Lv>3DUhmR^tuDl)flB?_BrOFYT^%<Rc0)szNvP9>QZ@)J zNz#%wDBgz}@DkbJKoWZX1ECj_p@);uYf3Vny~S_1Q0OS72JR9_#@jBS;$unZ<Oe|% zmtvd-;e8oWPPuV|Rual~p;U~ZFG)KAs6gd1SeS%LT*z&Mz+o3|DN_`;`U{Q)y%Epe z;IJf=q5%qyq|h;NVS`{i6+_nzC57rKLJ?l8`7|xqOf=PIC{*!j4X74t+NP3rRj*Lj zf=Q_SgP`E_^iUehx`Nlcv|y_XVU%<wUz>!GnvM|)yR=ZH3k7?U(EKC>8mF-+NxLZt zt#F~x+$7ZLLRb|+U!(pM#5SN@Dq3hsiqExBa3ySbr;g#$LPen6Lou8rl$(T9=(@o% zbXz4_xho~Dv<A_*JT^eeli=+NemJyW@gYaE-JT%{m46^~ts5GAAPGI3gtjH29WJEO zaC-rlhSK76L-nxXECYX`i;|F{jVIcqByCy}nvsO&CZ%+`kV;L(1W&I^Lm9cbM32NJ zn1X^yT6q$pK8&PL&!wO=+y4*asu-c+gQe*Hk7(5Y5ws+kE=yMJNYen7Cn46Vq${); zv}zSMxZ8zNGzA5ZljI~{DwJY9366vR0|>Pwcu?g-_rOXkhRQz(3cipGh0Ywq15FDk z%~z7pktFmMphgOPGYO?=fOL+6gJ?R&|Gs4Oc%)K0W6z5G>c3Q|YQLd?qK43Z8AAJI zNQIWE&@^3wz;y3eo`jP1>i<$VR4ooIgREc@qP9x36htkQXw>o)gnp9a>Xt{edbG<~ zG;6*n2`SomqD@NDrX`^nNr+k=NuieKrl$4NEssK}<xwccEw;vKkXqkJ*}0@bSyBCk zZqq)XRp6j^;?&!=ilP6~;wEWo-g$axYF0WphSEySUX%0Alzz7(<PIgrjiG0`TJo9F z7_3!FgA~LzNJ<Vpjr={U!gU%nj!yul-@Df+$PG<NVJKy*^^merQB^w+ZNc-XtFtSa zLU-zzu2hAoIh_8}vpEH)(~@>c@g*&kvgzP_XnAQC>W564Nrzt6VbJhZ7t(D;)w;A< zWU37UVjHAr<;l3oSy1TpB#p*tnvJC5CTG%VEfi8xl2eeDqxe$L`-i4xb7{~CNT$AS zuoNvX^mbCROhQ!33R5Xz6w8E*-a`LryC^uFmYjK{_>z5WTDs_m^j{h+WtVcDB3vrf z_iK$MQE&`emrA|yxe(ReWZgJZ{X1hT;~1_KrR(W&NvrqOK&P9mrzs64sJx|G)R`oo zMoZZx1*y8L+u(hQTm6+JYn`&GTQ`#Bk(yPdLQ`?C)-n(;MN7p<&acwuW@oC;Dak4Q zK+}I|B@JsZ?M9@yT*0aL#?(4%n#EHsC1uGpO|>*gN%fcqfYG}Uy+_d-5cUr|r@m&t z`#W<y+$LFJh*SSj?z>qM-}X;E|1Q42o;v*QNP@9P;M9S4@#Xi_ADNOzbbO^h1?dXb zt{DKl&Gf@PLGFLZeV*M(iqjmTT=_4!zcI(b-9n+Sm^~D_1MW6+JKPiG{)gP>&DSY( zC%O3Ed+Lz+Yq(oDRPn!vdq<W0yU5)|?jy+2xwyk#ylW`;)PHd=jpBJ6?k^SpyX6$? zKjgm65|o_%WRvY=jh6|2nc)4}K16w5!J-@AGliI=T-*u;8^Q%$Hd<}i3y`b%MXgE~ zcdscoAMOhj_k5M2xK8ClMA(G|#7u&3rqCF{>Q+}FKFJgX$4tc;dspq?$RM67WfRcX zlM7pkQL5AgX322(Djwri;+&-D#tzb9nhG^`6Fh@BqeA6q38i%fxzorUP3|O;L!~1s zD8*r>O6v-eJX)2MxP_#JDReaHGn#ltlg<WlMpQ{5*Sp9?Nr~H38NnLLovum>p(rW1 zs8=FFIki=75tXXuh={612t~aTEksYStN71TWg)I2%6a5gsX8XkQ__q(l!nF~rrO~$ zpF+ox8z8rV<c}ly<5Z0mD@fW33LQiGk0l$vNjWVdi%Ej7Q#{7?@-v7PA^r$SxS8{% za(5-=ZW4tKQ<8B%lgih*l<qL%A4SqeQR&=8?&m4Rx8#q(Io(wIYeti6F#HElrjTy! zRF1Q$^oObXCdN|UN1r+dcn9TW2c;M#{_}~`p%g0!?xfIK<>Ce>Rex$p&(|sRk5m?; z$u)>GLYhw`xSZsdt5D-OQASW`IpwRIq+LPu(PZJ#RDz=^bT@@|l2(<ZPmJooUV?{e zmw1K~JY2(M|6xR#PI1pA_*@DdO_aR^PaxeEQR<&0cO2EO735B&(BYKRcL?4=^igED z=~`!UYf1iLk{KfyxBtRQ+sLgYcQk4KF_LpG$r(-VeMF&NSB$38i4bL^b}4RzWJU;1 z5IsTgxde}97j+orqFNB<>2N<u?r5^cID*F!=Qt`UjJPNf1ABmqM2X(}V?C_){#aX$ z^INbj(|%N)XKuf$_QF{&%$c*W$9|IBLpba+V!Z@6YP|wCW*vbWx88)Cu#Us6wBCYS zWgBp-aoaME+O~7?E0wSvfE%%k;708-xN&<p+=M*}ZlxWDTV+?mt+p?MTVvO&!|&|z z>g-;7(p;SCWgk$N0NB&Wok8v_a_5rUNp3H>OUPY@-ye0^yZSo1=GwRQ^@St$D!5U5 zwL195UZW0{w%4nl3)vg{aOkJKSsjdLZxPSpzMXR1sT0P%Ikos7kNa?@<IbCQ+-tK0 zch{`M{WNQF)68aPYxZi~AhQSVKIdTWEZhcj*g4`Hbxvj&86z_?GkkDIW)x+VlRq*e zoKc-on=w9PO2+hzSsCpaJsC^<TQipXcV?{2Se>yp<6y>yjLmQlW^B#ak+COZAD}}S zhx2+ej$|CoIGJf=j?B!=^ko)hmIE4@8P2TEoRV3aIUeqm%;}l4GTSqIGS_A<$y^S1 zZRX0%)o?dtZqA*Rxixc#r#5p>=Dy5>nTLQM&ODNNH1lMZk(KGG&GKax!7a}k>8XVu z&Z>r6n>9XbO4jtOSy}D5BXdV)^<*u9yF6=U*6OUaSsSu8=N-!0nzbW$R@R=ZeOU*y z4go)$btF&uN3%|58`+uJzU-px^6Zh>;cQ6EuFW2w*ONUZdwTY)?Do8(?4Il;*~_z6 zX0Og(o4o-co3ppV-I2W~dtdfJK!>uCclbxLkHS5fW8`G!_;QMJ%5z5MgmX6JROi&@ zOwSpgGX?JSoLM>Tpl!(M$yt)KJZELj>YTN}Hs@?r+UM-Z*#mc9&cU2RIfnrq$vF!5 zWUi5$nd{3f$}I<1IJY`?R&H(Xc(_w?r^B6<+n(E#yE1o4?sB**b64lC&E1f@Id^OB zj@&)D`*M%w9?U(IdpP$9prg4b^NhUAJYQZ>UU}X~Xdce1_SELp=8cCtC2u+?v+~;E zF3DRCE3M314R>wc2DqE^w!+<!w<m93-a$Zz^N!>l%{%GY;W0d!9-pVkQ|?h^6ZSx& zXS`>MXS!#Wr`^-zS>jplS?O5~&b6Kmp3R=EfcALyc@BCGc@BGyc#e8bdJS);*XJ$r zmU~Bf!`^Cdt#`b4ig&tqmbcy8<6Yui?p^6!?Op5L;N9%q>fPbp<K5>y=sn~;>^<T= z>OJW*e3?F<ugF*K8|e%Cs(rP-@xCd(>Hb5$S@>`F_27SrZ+Y^6rEjHgwQqxOEuIa& z&G_Hy+u_^ef6}+lx6gmTchGmpci4Btchq;%Z}>C)K7WzF+&|JE_E-CB{p0;p{L}rj z{O$f8{}TUl|4RRA|62bB|7Oob!|>d#_Y!(uQhN!#Bh_9)Z@=10=-s3C68du0UP9k= zwU^MhN$n-{9i<*n_sBa4ew<wOo-M==$i;gt;2)B!$DSV%yocN$ldDILCkTF$+^5LJ z>Hy+CL+(Cue?snla(_zh*T_|G|3a)M_g-?pLGA`})%;zEuampkHx2NkzNv5@^G$)f z-KXX^->1-Tk^3OIkHA%LsH#VoxC8ck@J-w<`xUW{poi#=SnT1{G@`CU49m#C2#{y^ zaARd5ZmKN7O_1fd{p?)q3mrpOr^k&-+^jp+xEQ;(8n93FQe2Ha3A;t78Q0*x*6Xla zuoagZ&&Qp&>Qd%@?801%Jxt4uTaC})9?8#R2jObtZrnb&)>voUYkUKDOx}-M2p=>a z#@)W(!;O&JjmNRC@JGgvv4eA;@l)ex#?Osk7|-LT+u!1ruRq}a+SiQNaRcz*v0wRL z#=njKV8`;ixB=P0t;cz|>DZ53jSB_FFx*{ywiqtX#SO(5;5OnI?jNqf&Zu#s4z~+8 z<6hwj;&L$s_XbbHjlt8!CviXUEZhv-id%u(aT{<aZUF8Py}0*x5$^oG5xc6EiREGi z_A=fsR^ndYJH(y1xA$(cuqao%T4C+dXR+fIe&~dzdv-EDi}9@*_l;%z0rodBeH7#C z*k7yZ{-DPFCG3|my`1r3><?$Unl(ZX|47DJu79+~i_{Kcgclv;aJ3&;@s~4xnmn(o zk4J}lIo}?O@l`s0-dpUS)O6pQ8b@m*yZA7}RO$GRGtPGMx%?d8_cn*0()@nJA^jx# zZn|ujygN0&H=x7wZsYi`Y20^&alC&}`fo7b><{JBdVfehJR4aa-r<z|yh1G({gTFW z8F%f(`N+feU(!dteJQ)_V7~bp&wY*Y*^Ix${9GPByv?b2x%)N!tXz$s<zv3vHSSxf z@nXEQQ#xw5HsTc?*Lb08|9%c%#POFfek0>IF}_UWdCzG)cM9YC8E<C(S<KINE@XWR zH|X%fO**`AGxIkxzZ)Mb5Tx$}4xh;QB*xJPQutKH(LWM?HRID6pTYRGj9;(uykQ#8 zS<g7vr<}W)zn1yy8UKj&8?sBwAF_w#e@K3FS7`q1lkA`1c-5@uSjI16d>rGa<s-MA z<L}bpxnmjM#{9!Meg)%hy&1*$XbvC4c$o31#&fuxXSXxX?Jk?`p7RQ)$K{pH<(I?t zDSNz*=jC?leN*EFTwe;fzIYF7IbK&Dw>$4kOn;f>r1+@bdtc>nZeQLbjK6;7biGG8 z{1}IGyYaI9bB5{gto7`#(|kDr##eK^gDmGcjc32b;fvVsXFA&}Yd+(gzpPoz$9DAI z!}8X!{I!g8`d-$@dmqc$$nklc@UCY5yE%Lnhi9{&$#QREzGcieU*nnFFJ`{MeC^D~ zdV4z=@8a+t#(Om$;PMUd_~32j@VVO0bo0Ua_HsXx#;42kf0?egpVMKxXI7tCzbv*# zW*O_t^))b^`5E_K%{ccr-WiNv%jsON{S5BE1Khp>BUvuDr$CtTxaJSAUV)1kuVuMK zEH}t_3FEA%x14dVml<w(yg#3|BkSemcJJkO?;WMn@jt8O`VW3+x+Ks4DD&@N{sPv^ zZKtQ@!@r*Sd3^BZGQWr8`xp<fKDROdN)ER;++jSE@odIFM4tCU^z;6I+Ryif*2kR> zrOBgltKbmlt5)+Bl;~eq`PlCEW{$sK^Euql+G{l3zK8w0wIAT|-(Jad7iYWqR%`jr zHXUAIFdw(?f`>JpU$1>%m-anN7=K;+HtTDTWBN4qU*ho5+V}6%eqbuodAzl`9{4#w zXkU69AJ2Y3`_>8ek89um8i$A3uhxFvD`X$(+wVKf&>McqP?v8xLo0o{f3bXT`6u{u z{bls~vSDflfp;MjzlL-0K9q^OpR?(X`#k)j(u;Q^KYmM=ZxrD7P=&@>MiJhVhT$D) zxG@61iaHm+i8@dHCJ(>DbR}8;-;&PxKj;*EAFci`vO*uBtdfsVR_RA5tL!6`HS{Bt zRsIpmI{QqrsHwpbSTPW$Ap-TN*&<MB#PCMA$B4k)Y2vr8{+&hw?xQAp6ZGsDqy1a( zt}pzXjdr*jP4qs2TmyYXz%ek=2MqNU$G_T`19z3VPPsA@?rky)?lOt*H~wYD)o_<! z^+5Q0&HI%rqi{Q=N~=>s6aQR^{=q*NYYW0Z%iN$`^?PCe44DJ>9^(^mr%~u6qXqDI z6Z0JZO~wqki_CAry~wx<Zl%EZ;jdJ=^M}!Pg@2T}Sh-lU5dPst8{9JUKIM`=MF#pI ze?Sx~mn7txy?9G|MLq`ipu~46zoCAE?AtB3!96a~U;28`X9&Fc;y2iM??j6EQ<UpF z_U<16H=>^q`SEwrlldm1UlADd(Q5_b2CV0+HExF6Y-|B#w6dEoZq$;CUkw8m`RECK zuupyg{4jjv!Z#9ca*N=X<Bc9OGQ91HLZ#<&rhDMu2s{^3kHW_&N&HgNy>G!^W(e;| ztX!ac)NEJrW7aJ~(9nxsR`IJ@a}h>pHQNqOfd3-=w;>NY70w2J5c1c--v=Bs9+Io* zyAcoicz1z+82m?p_rTu<{(krmfxj94X5d}$QNo4w@KF+hcKArMXcBzL4nW@7NXNSt zaHk;y*9KbQ&c-iz51=e1Mh-yE0fb&{NZ*M<{Pr&}(U4{rXc9Hs4IPirmjkt+jYH^C zigA%4haARSP6nbR?~AZ6;(MEiya3uM(8`H#IB1mtd?g74LCYapIcODuBG3v!^AoKA zX)N~w4`h?Po1m4F=lFUJ=~wasiqHSHA%i15CqO$!e4hsGB(S5N*WkWMv>O4v0ZqS) z7}Ea=(Y8R|LFioT*^4xuCYrM0E<>I*+OrKbJg^IDWneR6?eJkWFmNBy9z+@s8`5)U z(ME*eF&`jZ)<VCRQOeSPCurXy+HHm`TI0d5f&I_|^1cdr)xef`W<cH;qOE{Dlt;mC z&jf_bCfY5qAN2E#EqK(B`AWaZO8b21=fp`ecs=F*dc;6UIF}O*>3VzxcYua;of@Jc zU5`<)0<<2`4me|x8thlFB=0C_$B8x-v;Z*ahqe8%Gx%yzI~CsytPDx4Iw{)6L3<sv zDS10UJ5023h+7F-bDpx(XhkzoL;Xn6x8L&;XiJEOTI}zF#b3k<lk~R|ts6Ahp~%YX z2W<+`ZUAkZA@f>?>;^3k+8C7&-$S5H^C_ttK)Zlwi$H5Ex(GDb&lyem4T2UwD~h;2 z&@LgG1KRNXt>Akbv?&z#80=C%WG-k&K)aM^D3AQRv9ct6!%>1;i8joTh4>Z$S`qjT zn5&_S2l=S<<bq}q4Sh9Qtjv9O2qd5nP_{yA^+CV04(6iFNWTM41^AF|?!!Z1Q@lAV zzOzAl8R-tsT@TvxBo8BocPFrIxhP97^hUa?K-&U7C-)}MHW3ZyCwQMjJ$gGA`A6TO z_&y8TouD1dy%x0Fh;}<@tB~%*f(Jlb4qBngn-}`!UQ}=&Xv%&?M4JuTXuO3<?{v^Y zM7tWalEA~DO$4ogXcIuo4QvFh7PPa7hTP}89asw*?B{ri2K(i_5r9TsWxrxY^PNE4 z=Tz&)tX?_^;>!l#zCaK7V1M&Vism^5+jr&cKuJ;kGuMCyJLhcnsM3R-&AW;3P0-e= z-pKPR<avnpI<QxAR>D0D+5z)c#D$%6mgK{-9<sA@9(0)xT06#G>6@ka9E>QQ7eJey z54(7tCE7&L9zvOS=8Okz1JOo+wg$EA#atg~cM$Dd&{iPsaJ=P7%=DGKkAc<&T7e&} z*wYGHl=Oq0b1XmVhG#lx5u!~pWcKm=C}@qKjUw7u&|dW`UBV>qe8@vi{r6-e51u&D zu0&a)B=TkUld#`fMKk+!J@7a=i$J@LXc#fD&Wt`LryVT<_Je*SL4*DL({pBk_A1dZ z;uGJbY~(@nnFFA~F4^sV=$5DKa;?%YZ!c)m^I%ieCpa^Rwi~qZdD}sI6tw9?Qykl} ztKn{?G%)i}9N8oDwt)69Xx9<nHqeUlU~Sc(IQ2wR91mn?!rer1OAr?vSts+5>pWE+ zO~i-Vop)c>5x8he$QyP_C=Pr{T?d-7%SFToYv!%V+6VU@#b;tfR2*45^6mz0HE358 z-x^?dW<ifUDqj<$Epe>Mf~>ri6!&YO-3jdWEa0kdgFKA7d8>e}$XWt-Ingiz=iQDp z+VhryhBj<|ozl1wrSn$SbkKT;Zxi?yfp2_X7igW}yN~#KL95Q24_Z5D_YzHU%*`4J zx0T{zzNR>`it=WIhWczS1E0*h9$&Ja5>Em`pCEJO6x92d4Ku6Ldq>_3)coggo(D#L za|!4#f<8TOyze0B2Z(;5N(=ANW>#ZfCDxCmZx7KMiGCFHa8}%hGWWeo^vj6874-6~ z;ogftS0}I>aH@#D5p<t-bXEcAYe274DMS7}hUqQA*K-T>mBfEQ&6e?=ZRS3idDI8n z`EDcn1ma&|n3*qmj%OYQeG%x>SWZ9a&w5_XRQk7TIZh?y^nkw0H#c(+=&ej25BhA- zAI{wB*#-L5L=TeuX`rvq+~7gY^o=LFkLb;y-;uf6vmW%ZL~kH^HRv~GE>}H)Z#2=H zi9QPS&deUqO`w+%{bHh*fPQV}EDuW9=Og+xME4k`=i1DPnNvW=n>0%0enl_OG%VjD zd=Xv+OG(U;Eu0tg1)N);_};+R$fw0K>H+q;VVT>^N1W@OnZS-9Y_+&c+>Micr0+Gu za-@^#WI5S}wC@Z|^i5E6yqrZ|<TLPS;Eq6R06EB+tNIhn>uvLZ`Ezxij*|g=m|@FT z%p$Yc44NU}<-q@FmYAhxnK=}(%KUMEqaQUWr^4UrMLos*#KG6UoALec7JLD`6%?$~ zi7(;X>6gVCd{bSEwE}_BLD(Mc<89qkG#_Tk8I$PU-4Nd)%3e?|V#*dp$%s?=8EWN1 zpuT~kM&0SmqbR6j$g{9^fDRuaRU`}ZU{#~6ji~1?Rr==pc7oo62R?Xfh!-u=LW}gx zKs|P;NKmaT>90uQ%Zd;49Q9~zGzIy>yO*Y*FF`%c#;&jJ#`ldK#^Yk0_?lQR?iKeT zwvwl6NGINGkcLp)HyJsmG)>boZPPI`%uF-O%r<kZ3t`3k46pc>*eo6t^gUX9M{E(_ zm036uViL}UxL2Zw!-}9+{$3uIe=u{+Jkw)(O`qvE17^NiU=A@0&9lI>4)0exjUR}w ziw)u%(#A;@88};F0#28hC@+_NvL7chNqj@i#~C!=!-*J=;5>}S#CGw0oQ3hY*eQM> zc8MQ~-Qq`LkNB}V-75bDW4QmMyTic0)xX2P$G^{iFdzfV{D%U$fvNt^Kw)55pv&Kj z-3W&RWBkkfM*@2TWBs=Ungg%oPY7%d%<`}D9}S={#_Cx`n#G<-uQ}qY_@ew7d{h1` zzA7he`C(SUo7TBFG3blfb99$;xAP_E9_P!>8s{t6f%H{powMG#7bie%aK7PebnbT^ zaK43INe?;?Ip203cE00malY$(&)Mbt(An+$$l2rk*xBnmfp#;@IM1v#>ppV1FBl)g zK~T>+KNTLdU<~}?u8%y8{l<k<12*b9kltFwH^nA#zj)w(R`zGGysl5GR=Rac)y~UN zKi8`o8hFyUnEEW$lRb@n2+yED`?Q!M-;{rsN98}{G5Jq<T>eX*kpG5t4}8RVhe3^Z z@d)|6az#+N*m0rU<H|Lg$ZaNfEV<}$&>LVC1fiHc0>)efZipyj2*#QRLPsmt#``;9 ztkA#>69wxZfUi}qh29Eq6g?k>3G{iuF~ft4Gueh<{8QgM@SdpN8rABOKyR(y&qZJs zp84SEhmRgBa3h}EG(KcGV9fagtAQ&Te6%JJz`SJ0J@7Z;c^J=jJbUo$$MZbGRC+Hm z|6%xRfuq+{D<6Tk(6%idzxYY`kd-gtZ^E-xhvlOW&o9D*eB~qm`51TeYZ1Ny57Ha5 z1CNS(5YJ0^jvyR)8v^<HuxviwCG#;R6Fv#>bUd^1bmCcrXE~l#c#sFo&PD!aJlpW> z!t*p9$jyiT`LE)66VFLQ6hOy<Ts(zXmsaQSO+jA^2s>c@t07S<8WdE1xcnI2Mc*pM z$e4d($TGNZ55X8woLO81cUW;0?nT8IEpd*)T(~{O%i*pn#>}yJQ!!?`#k-3!+bTX( zd<5>Xpv2llZm`4<<qzRO-piq5Fo>rD4@y0V{HoQUAj&g{d<MJl+=%CPJSeXq@)$(i zAj&DY7taAa$Y1a^Jjd{y(yL6NLioe*jKMP&PcxpWc&^8T`5<ceNmGqn3VL4t4v<x_ zqu|NV>`)J&rwg77^@mmfdcN@4(Cwjn0KHJ?39Su10O(M`tD%QNI{>{__;hGjXg{DM z1;;}NLO3U?;6&kmoN0yG$k4aTbIVK0G4m;pR&1)+4u5RLo{HySX=yf53y@|rd^5B! z^g?-*=wqmbNpp;eSyjRI!e#hXnBu?IeiZn&g55|>;my>Jq<IPZ<6RuB&n(zjczp;p zP^H84i?J`-3_VbGVkoQydK|6EEV#YU38A(EKab+AC_IMWj{&zr3Lm<2=>CehVOET* zm{KvD=p~S6hE|ptL-!*7^+TQu-AVDsQ+ro>?k0SURgCZng&RXR5q>_0pHIDmG|yMz zg^LPTpfo5wj(3grtzt@Ndg-B|6mFhReT6i`DqjAnA@!k2B=<Z`2mfQBA1e%o8Z{k! zDqk0C-zw(xuYqrdMwLz)I*igS*7{f_=y}Zi-9wIr%84E#eCLp1_&ukRa}D9!^Y?~O zdtskpsyx8|P$<Z9&H=tN|7rX}RPjHh?3cfH$VOEY2}ip5yYu&l3W$G*3LkR)kQMml zsFF8C>6O17<?AE<IK|&KWH!zUQ}N>zzNO%y5Lzzqiz$8pcF1O2#b1~IfLe1!_*m2< zGk;_L7W__C<Cg$`D1Up%V!Q$PwgLxdnyK)xiB>}Kt_A&pf<O>G1@JMTD><(RPY`}S z;rA76!|!m3pUMO2s@6yG(OaQa9T!xO#P8(Uh8!Lr-VAr@aJ(rE?-{-V?w!NY1A_k= z<ijxR(ha3shHo6cZTMcpE*YKwWN=&Q*3#Xe?<qYneCP1}!(TM)b4tz`HT>n_Zw@~N z`je&4jgTV(BQXCC-kBc{t}A`M^cB!wEj>0OIAYX@v4D?<+DD8VF=@p0fKP-bjhH>6 zcf<<tFUl`L4LDim7<O4^S>cEqN30sL4scOf#fbYxY#D)c%SM(}j@Ucmxe<_AR$bOS z;<XVcDjdVA$gT*U|JLYS!zvqBHnF0-B8-#aqJd|FFP2RK6b~)SUspB_q0`IeRt&3% z0-9g8q@ucFJVJ*B#{@Q&-2~e5vO6mpD-_?|Wg9AHRLlposccW#whHt<!BJ(~gMqRq z0Tl$x18d6mA@td@7b|90^a6Uh?2U>g6)SNPoiFIgA6<47e7;a1G`j3Kpg<rVEGs(+ zzPHcbP|;Jd96H}V)Tmfffu5`4;h|Q=u8L>DCj;YyTZd)>vVz+JuMI_xf=&SOhyK69 zu0F`B;>vg5e(y30G6M_@Gb(RHGk16&sC-G`7pn+LSPXt7B|BxIZj2&9L=gl8C8#VS z!fK2X%W{da3`tycF=1I{U87lJZBc|(m$+uuN*TmREH_$)C5GMK@0{-Y?!El6Lvi0Z zeNKO!K7CI2>3;XM0csz*uj`3QJ8am<N>9(Wo?U>dJui0+>e&lu>?yDJyxoI+Q)OIb zYR{n_ycw@Dt#VlsB|`yy^_0QM$fOsg^x_Q@Q!8_kc6D-EXMZvQ(6yCCl~u_UQ|jE` zHKJ>D1va*FZ{?k2QZgNBdxvc7e7CaRxa5K{*H>XNlbOlfD)!cuRoy$2Yhgk6cOOXR z17BHLpDf1brpgn^a(q5jc|KW#&z+~#6XdV#?p~MtEk0kZ>`S)bbARPPvK60)Do2uS zD93aUPM*hSd-v#Mmx-(MtIHexjZg5JxpotGcO^TjD~AkCUP*8_p?l<zwn1NXpO)-R z`oXy<>F=CYy{o#ZihBj!?VZy)ztY*4^e2Z*IXTqZ*E_%ZaP=uu9y22OxI3;sQ{8FG z-7Q1bbk6Qxm3)Hq#~Xt>7mwLi-46Z(4b#}(d3|*U;Dgnj$>-JAtNQ^TuD)A&zj~<p zg(=ret*!AyV|(Kjq<>s_r*g2?Uc)Xl`J~pH9IZ{RU2Mv|rZ%g0aILSlz?3Wd+7^y{ zyVBp=hI)sNJW}cJZ11IwahS{WI;Gm|#+u&a8(1+&8fPG(DKZyJ$rtr?mEYB-N*b)C zQu!&C+0hci7L{tfjd``njm6}nb#3y&QnEahiyWn7SFJmFy>^D@^QAC{FAsHi=(V&I zSVP|`*gX%On?h6Eg;*^{)dLCkhsj!uv&9$>7-<?&ZE@R49S5ris-Kww$-`r#WNY$l z>t9#@P%|b@wk1Dlorf{qQ$31tJUVL6sCR3FYF+hLLEGK2GkK%+E6Lk6+=3akCwVh@ zuh!eTk66+Vo^2h^w7yz{R=1AB?e_CprvaMUI=yvP>t%puw_edYw{;$%zSe7T<9#94 zRWs3JYg#&PAGNW1xMNf8;##S`vcBH5)aJHss9j$@TASV4SHHLZuxY7psvb_(bzGf1 z(wN^^-dJx2)J9c5uT4T}H?&TxZ!iPu>+6p;_E!He>Wap)#yXT+GHcBSJHuWou*G@h zOO|pkxlL|!d}@3eVccOJY+IvAgv&3)gW?lndJ_xvZ>e7~;&6RleL;O$eQkAnV>(h+ zp_WJLTkFr(cOBo|xBw|T2EWl*&{)~n(0IIYUSk&W(p$VFpYu@Pan;+aYpNRu?`S;T zSYO>T_~pi<pq26d!`I@I5UIS7SoCgmDEb^B40@_^^sDGY>|y@w5Iw=#>*MH;u>WWi zBRXi=c}R`mjiHkgy#hur0loF9;EHi8yB+tkJ8(0*(;U|rhqf(jtZ!^-%xrwMaczSu zj<Or$#<}rsclqZmA^Ub*;%2LP8r9CX3vru*^ri6~P>~gUKQeN+;1>7*I}q~Q6itXG zF;0Xip{x_(sfQzG5uqn<M*V0p+vcE~m=n_OsJt8c%u?xjUxX&SZjYj;2wdP<mUmOn ziEab@B+snLC#|!1ckeRvdU=fY$9Ki+@!TF`6^Hlu{*&k17;gdoc>DyOPsUsE{C@oR zcs>_Dhv$pfc{j`ByMUMBUBE1_P0AZ4<&Bc^5S#MtGt#~nrG1}D`#!@vG;cFU*giW7 zd^mwdKmH#+O2bYDx3hEX<>0>3B6f(I@Hapf7O|N{_7>cLzZG}jm*5usQrv_8FZ&+f z@fj_Ra88ZL48Exv{W>}j{Vw`F_PU=%e~gYqN1a8qr^VrH9&wpD<}%xcTlqunFYQ}+ z`{-f3-Ln(#^E@Y-8!g5=wIlZz?gBiYg*HWQ3vK{J?s38rHIL$}0K4e7(f>H8BWgP0 zO8ERB`jac;^I-Iai}CrPXs1Ivj=C1$A4UJ`j>G36(P0<;9&H*33%9{N!1CPf?z{ZN z`76)coXoR5rWEx@?_-yN??JfL?k+i(DY-k`Mu}dR-FMv6I1y#^z3f)GC*9w<tpYD} zE8K%}=3918x$W*bITJ3I&W=xxM@dvac5B>y?qT<BiI>N2Nqkv+d3<I3SI9rWb-Tyh z58aP(w#$h9ac-(x>+W$6AwJ%XGeVw#9`6>p<!)s>ES?mf7oQ*V`)7O1Aa|>~&E4tl zcK73(X_MnA@vL}uJO`9kx4?bVEp^Lqe$|dMm@{$SIx#*wo`w@xo@8{oZ@GKj-_Y{7 zN8I<^GwuiOM>uopz}eO*@n~A3cnr=g$KmYp5}Y;iR3kDi@FXzH?gEUMl^GC;#tsmT z9V!|-Tr{>@G#0l_+|BM5x7e+7>)oSnTik{-yOD7hPUKFCEAf}&o;ZnX@#*+h-FQUS z&qW;l!gzW-GyXEpg0G0bhLaec&qTO=C9@w9jn7P(wgeVs1Y#X6vKKx<tin*}>oU_p z9W~w5QZpKQy40K&t%kPZqzllS(Ob~j|A_X(ro9vWC+ys>VRdS*4o`aqtj`4aRP4Lp ztuDeoZ-%=VwxSO^gW>8gxrZpf09z56!HBx>i|_+1<{IqIK%7pTU{ApO*<?3ClO{wH zU~eYDlE={{utoz!UM(W86GUDkMP4V0ym~}l3CbPD83X&uo<^8C?I>{sY-Wp{iXHwS znW=3uQ-{e+9WK2-6|?J?rp_5=8X|$y?O}V^oQc^s+>GOlGvh@j6EXA7F=vTnCgXj% zs}Ub&t@L~bK4~64*WzDfHsGIw=XeR8i+wHI(RMWCKEuv11MuycnP}6c@Mg!!zWjL6 ziuTf}rBlst>FWsT>xt6W9_i~C>FWgP>%{WU(6iARe=>8SPxK}bDE^<E!*KqUp*3<C z&LuOnGjrJZ95ykBQGc8D!S81<_~#7Pm&0%#nW5n{F@rsr!*H6Op*@zv=mna!V>h3{ zp3Y&24P|KCau{N88QRM^3=xP74RvL(y*cc?9QJVz!~QXo54+1IW(Vgm?0_>gtX(r$ zM-I!4twnq=!<icu{^CT2mKz6qO^$Y54*Plz`$i7CDTm=r2ALXe$zi#Xwzwsh;k+Y< z-I>GS7c-o9=df?(uzPaYeK`zwCo-knpTi!=VL7d{4`FpP19ONmTmE5f0ULHPAe`tn zOT?|!JU*>}f4zVQxoM=>7~HhVm3Mamf5f*@W5mWhA8?877_LX9HP++5DCB>?fPYlL zKPlj!=F5Yf3gw?fi(+B@eSM1Kv^m>;J2s^=25#(x0{yH4j>wBIPx;R;(61KRYvkPU z_X#*Ae4h#+SScTqzX+I)5qEij5J4p0bb&SAt}r7#)=go$#_jPWe_hh~{eCT{jufVI z@5U!!MA-o2$v@}={1;&#y~nPMJUfJ6;oSnWUgh8I+jEhWL%s5+23o%C^>}uGbUaxv z)(G+htm(czW14v}?&QZf1s;V}4ho}H{9~JU2yEe7$gg=hk{0ji@I3A{ftk`QQ+PyH zQjY8dSg+=tz|!4>B0u7+Ojns_$B1x9pTTO86Y*TkxMn(|@S1+1BOLf;EPR<`GwCWT zsZ0AMTB2jE<xG)rS9lEkCI49O86tm$WnJde`(#WteXL_$0?Qu9!?FVk@B~O8z~{2> z@lI&-P4PeCIX~Wo=WW={MDgMnrvpfTLDGLB=|7e9m+{;j{|la*;#cr|47-{Lr;#s8 z`b(0IH51bRndxYK32TEzIJf*Z<O3g&>cH?6mNsM6C1Wko2Gu1^=iUtqQO;qRhfFo* z1C*Y{+run{6i6Rlpu<x7S<J|@F&7u;*gY#<bi|myEYLRuy0p)j2MTmp<E)jy4c~nG z@D`g~{m&NYy9#uULZ*Lca%dlI1(u-&IxJ1Lev7l8T>dYobhU~&70S_P7wDH3=vSq5 z&SPWernp!|t|GJL0nfDucR%v<BF>%k9+a$h#h4=gn?n8qZfkiu)~&hnnz)Xiom1eS z6Zk#-@&f(xKo`4*{d0kSWr6;+0v)54?Vr7|K)<m-zqvraxj<i1pf4%VR}|<)d~@K3 z<>Gh-93W;#3;xsM(hnGXCq~<@w1J*R|7Fae9PJcOqm45rcxKIarP9Qw8GaK$<e{{; zd_MX(W8Tivu;<dY(9ap$lB2aNP5d5?VRN*K&(|mUx_xhWW)kcqW3EjstY1Pt?O(&! zKu>A-od~gEk+)WvmKpJ=ss7#yPR>-G)zN+_XH80ZN-@<WvnPjr>^+u7)k3~8(ubj* zQ!JQ0Ijw>5IM3;|^BU!p78rY-V&eG?eyd5^0&7coe#3LplNx)Ir|C-Pn;wH)LAxbK zyVd8TM>SY8;}QC95vwC6k}~$r9Bs9yiDucmJ;rsc!EGzery6;W$8_B9^O#t7d%wp- zp7sI7e2*UVG|@q<l3AvnGy>8+XvVYhWR>YG$**RloUpP{kCk18(2HxCJT3KbdAE$R zzc~RL0uEhyD6HkHhx2f@UalClOh)eki4|gLDeUu78rnAH=SeMjUSPVwOqYnKl%yCm z#P^dr$+Z~L{R*WIFu8C#EUOsF!BvA_pXs`aIfSb;T5<<C=r+#^Q<xDHa;v|`6ENBq zS{Ux21nKdFLcPD1s%<TLe0=@Jdl+3i8+<cQZHUelXpreTCgp}>QWn8^4r5#7Y3%m^ z!@B#YvDl;ARYK>}*zW^>NN_%l#jaiKqT_ju$Oxw?fT__sV$ut-ENqk7D76^Gq3fa< zj;l1$4)T{2OL4Uu<PRFmx>!Gw@CfmCW8v9lBzdaLT?45+FH$UPWzQCxpO@wwKR%cn zGD4aUupckZdY*g_4`mY8y-3D#``wSsEB>05&M@3qNavU%ESUCNTaMbGBdkH~W44|9 zd^^=z{yWN~Ux*O73%egj*zbSHg&PZ)Rs3V$0Sl&kqwMP0aV4GED}^1B<l}D1@0Vz0 zc>6<lWQy_5ht{Chg0U;+3;Ws&ntf000{R|io{TyAE*c~C5l*pC<`S<Ryn~U>55j^q zB^c(T14U<~r)6|XG%TH!d3_7}Rc|fD-Wao4C5STpYCN>sTOayToS>w;4wMP25iCfM z#J_pD&~g~FS25Wa8uK2c<VUP&t=Q&N65487HIc4rz4=@*u_DGC_B7ED#HTXjU^`L? z>g@%QHP1V}1Zjs-t@AqQ?NzFgp?2EQAPKLn&32YfOl_plG8RyGyT(E%q{U60r%a-Z z4RwT5i>g?#qoEW?U3SULm(n10S_4Fnbc}rMLAvTkwC{i=U(lXrDXcF?bG+fhKh7h- zf~l_1f{9fZT?zI+)Q;2PG#^ijh0|*fZ_oHLVL@^<xjEx$gtPf@izdxSSZUtYWqlQ3 zzyIb;wX(kR9yIL@wU)6ll_Z~`R-U43YdMM>uRwus6)c@u&GyjWXLF@mLAh|=s&!*d zz_O?0t*)^9c7#)ml2tzS&V*$IC~>VtEN;`!sm2En#97vQ%no^Q#$Sr(0FRWao`%|E z{Pz|z_IzD4myEN)?-6=0E84(ZxWPeBoXOSI%;o1R?mHEDZa9YL#$$LE9m8`=GX;{M z#$(Q_G(;bnQcro<Kf`a`3WxedW4<K)R{uzPPl5lul%K0TW6t;d^n}Ex7WmV>qK_5u z42S-LBTD|l-jUxd*7o?l&sEAV-jw|KMoUhb*93m=Rj>8s(~FY-x&r^5fnVmE!SD1+ zd&J_Ae|3TXiIiU?ir;uue(D<epDgh25B%bXjro=Giw7qEI|crCQ+~0}_|;gI54|$^ z`}6!3HxK-H=~{oF=clIzza3QIhXq%Dzwhf(e(~PqM=wMRxh_*5&iYG=sZaOy=^n4c z*GCV}_KghXdwJ@PNpE42etn>OUB5~5i*F}=LB73+p!@#&@|K1CV%3egJLLEH8pYH3 zmd2jE_uH28%O1}Buu$LgA;0<v^ABl#%KyI7v8qt~w|>7tZ|+z9UOs9!K1s_{{J)$0 z!9ps(FYnX9?{S=NX7w8pdX)z)CFEr>AF(Rqt}pmyp^NP!{mepsT2b=SACW#W-#>en zr^9y(eR81dcv*?9vo4RHT_``yf9_~lKIVVgK3zp<{e(%M?dzi-Cw^6^&*#@QvU+dQ zxk~14f$;|~Zz)M`d7(}GqrT$Km!}g~kBj{ByW7BJ&q;i{@S}}>{{BXBSuL=>8J@1U zcMW1+QeG-Qjm)IwTeg7p(Wf*2jh>%=ocPV2&Reg<mw251n)nKj(?=8EoXXGpX3-W9 z!1q((Wje8)UUEu1qBQS^{^V!1dO>hBOR>|G)5{;S70cb+^;2)Pe_#Y0R;pXUDXaUS z$D%Qa5#dugF-8Si*m3V>nPK1W^YK1&$Ol-ku<BAD&)T`)ZR(NQDueS;ZJFxSC4!Yy zLqsQ<<>+dKe3%323J0b7^_rB!UZRXxOI6H1DxXZpfBP7o5h3}%5VBw#Cdf(Kr8`=! z+ruJTu4#}@Jf6ZVMQ^Ty;9)%ll2aGmRf-4W=mef~r5xe+eerdv>|}IwP1fvxDq~6* zI)~h%3%X-te}*uPD_F7rOwrg`m~l)|uMy@PQxF-D)n#+{%u+ZH!)_Y8EpG|DCX2*a zk48W8cFqMm;O$IFTBZ7n`fNGSMSF}<Emo~%d!WbOuFAYJkA(a>&&+oe7d<2Yj|(`? zbAsLS8l7t&PG;FZ)pq8`xlPKiTAt_sh35}`<Bg^t@bf_AMJ>#&TSH9$Bh8=MtwWjm zbmrvh!^y6;ProH#?5RzD&LB|p{JqLAG|CsNC2v=Qot5%LXV_nyQ7D}f6g`smD<*g< zkIX#NImhy`&V&4Pp0T_zo-D<fSEMz;()`SirPBVaG}Q}p)ML7O#0?d1y_!1&-7kb$ zqZsEFOAGOwOBM6F^h_$N=8h(`1+hZmV(+yK?oTOgmZyFZvJJXGd5|Kl<yhuv#5EtH z283izC|{^YEf%#{(|tX{U)(43rlT6x?-)lvzZuh_Z1K)5e1>_-lp3sRn44S~uq8n| zg8qFF%1Jfwpq8T=D<yxJ_B+@Lut;61L#zus87~`+Tm}gQ3_RGSNFUQZ!K_UCbVM@# z%Pbde)kb4h<aFh`o~Ab7aX)sUkE|v15B6LwxYuTtJ~>7Heq6F+9%6fpONG5D;nz^7 zv>!0FPHW(;2EvRCdf3~4N!QbO<q-`I{9J_vey-@X|L|?;h^c1@<HeeddCf~fdtuDa zeTz7@r2lJ57s=SMDP8f?1rIVEuNYd#yo}-Mdb2t2eLZ+@R9=%*cI3wR%9<JNlib90 zrI6ww%9PT*UGw_V)c!DL`1V9o3OY`xiT@nhNlD<&ZVrwz>E#Se??QfZ!)tkrID5QM RXt+-ctVzYaTEQjd{{RH8A$|Y= diff --git a/config/ded/fonts/JetBrainsMonoNerdFont-Bold.ttf b/config/ded/fonts/JetBrainsMonoNerdFont-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..610c8c02b15355fd8d60a9a731bd5f64355d752a GIT binary patch literal 2081928 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%0D2*P%77o645?Gotwl8aN;?aITVk0)(%Z zFe}qm1-U=M(+ehciu79!`BR>k5=~1dj;}jIPFrlaU1*wvd{Nz$8mml-nX4f|k$05o zLIf!j29;8dbqV=keuDir?6^o5j_qk>hLhH$K##-XPr)FS>pVDXOIzP%J2|Ou!t9TU zrn&Y&HW*^>jkds@22z`0ceSspqp`hFB*erlt0NWye`H;1U=5ZUM~a)Z0RSU;iMb2Y zIJlwMW3t$xSWFRzd2w(<PtS(Iu`Ry!&c5cZ`SZJ)`<&~2Tk4-&xTe2-$2n)Mxgy@u z9KVvit7~n(u(oS_Akwg)yL)~^WMJHU2U|DVpBr?({cUgi`*<XR;7!#27UZOu5V{*h z3kBb=QQA<1NC1r$${B3fB5R_dJN9BPj+hHRz+K>r1MaeDVK>y*C5tJ5=wP91xO=!- zdGnm2@)oKRf?|85ECuJHz<shT79kuv7A)w1Ts*1rc6nJ!_OI<;1_?Pl3@Hg(S$b}d zt?NV2Juam%I1Hi`yuNj0Z=@KaE|&%cPSaf5v0JOT{``7A9VsDI35wrbNE5i~Dz*@> zlPdbl|7kh?TVsXzY6tk3Q+OGkIYyQrTb^R?83L+e-lFlylZV-@C=TSUbvWphj6+!$ zMu=bvZaxz|AryeU(J49LaAQdyYqxbqu2!nFxqGcCuy!qt{<Z9JTazWG*SR|1zoug; zWrv#jgss4eF-~|7*?2co1~XWSt$jV1nz3BlKhqAlL{d8_2b-?o0IQ<th{+GnL<{le zu)v!fQ*5N^tUrm&TBLE3c2FNI5|6II`IZ~saqjthY7ySI;>(*hEhqUe3;C6@@$I6O zLWJpb1YL#vQY*C>(q4$_8ipc{M<1ib2x51I#okh)rKzEebxDgk7Hfp@wdYt`uqJ3Y z(9UYxaOeHO2+}EM*UG1lj;`s*to-mX?OC<i+2pHhYHc1_y<{j;3}t8#p>5zd4R+gl zq(ft_Hss%GPlLUZrcP-B=Ajv?L7pa>0X1``Z!pFj)LI8bfde@hXN&+ij|nHh25kF@ zM~Q8p;<M1sDfuGhE>0yHv8)RBM0(2PI_}7X<p;SyOA6p1@*O54mReZT>CCfi<Jyka zWJe0=qCd&BH9bQcYe{zgss)XycqCZ2xO>I&0Y@>HA4B8q@enT0JNO~hBdwNB0|IJo z?SK%|kk}4%al}H`NW;-fYHj80gG8Dc#>X2F2r7g@tdrJLI|kSpFMQ;zhyP+tZ8P>Q z-2T`<Ik*0laJO_ZT2}<%Lj{f@Y&vm<BY?JD#|gU*mKT_5s&X?7147KIh9Mk(Nt&w0 zx*)7O!RDZtdRC@G+rs0X#lnNhIJ1zbH11qev4)t%wgYv^UPuVMXY4wQq#a{h=k@Y8 zYtdNLwTR3*J>Atp@l-7uXkV2@YcAa0E38|#jq9W=|5)N+O)_J<uuexpQ$SK;1A}n3 zwKUv|h%3Q$&w-ro(2)%CPlA<;{F8LZK==R&8$f3}Jm@ju+;Mju{5?vRjN0Weao7{B zxXMf6OJ-ek&8&e3W?gz=oRS{cFZ94}>hHD|tG}z&z+(+HCASIegHwVYWaI^{PAB!R zvAeOG*a@9ms#N`~{yw4VSJl7A)A<sWeR>>yuhxKxcFy!;M%q4hPNFF&J7B7#mN~G5 z-;X}Sf3diSiLRz^>AXEGQTV8`L}lC=Xq}ju6_y-NjX?uFShmAq?SQQaJ)IL4*|IU} z;ywqgyt=dJqE)hE)!NgLC8w(6u8GCH-gw<R%)j40adz&RC+qV|24D|UD(sK*rEzJs zbkW!a1#4_p8z5(NSyJCgLp#|JB~#?;l}ne5k1br#HNR_KZ_VU=1LoKhj^jB^=Glk% z9H#XwMhC&`@{q}+;L)_#Kzgm=z_Cde3|+7xIN=akZH}xomcf${o_bDAb8f-J7FGtQ zhT{X+vasbS>|8ld?zj_s#?B=?g{l@o<w?!zj<fEW86LgIE_f{YGi2LR9MT}IZYXjC z+}8|@bEk%=9{XXOcWOFm8Py9=12J0-$`P-s`W8q~^<2sUt)A|}3Y2Uo$>tFGa}Bx% zN^4M0^&0dP%p}$-^|y1hiikDrWhXU*5Kj|r{|V;DYU#YOowO$bM>h1U+i<%;0>j}p z9Mp8!0yv!<qqQ!XA~XbKL${LGsT;OXT^F`c9Y!PsaDfr2+Jw}Kz=f$`+6#aA&}{2j zYzC71BwU!;sThyydp8Ws-|k=U>Te`_W@Ep5%O`r)_7806Wn1S!DxQa}b5XZHOv|@; z<ES^kwyS&X)X|d?PL{eW>~G^_6M&HhPBze8;C9OynB*~bIP4t@A6EE;^W&S}>SB^K zROs*P=}h2sO>Dewv29oM1fof=rOeE>?mv|skM0^<z|lF-id48N+rZSWlah&aJDW}c zX_2&LY$IH9XcO9Ss18G@;0{vXYwZTdsO_O3!t3>P!9TtM8fkD*Xd(GYf}n_>W-CWE zTXv^Hj>F|0z4PZnh<8@*@R@&cGAh7+g4tv3eGN&Yf_qlW9CBHPk-Th0ag`+xxQ`P< z1(S;s$?MxGIFhgnj4qmA>>BDq+TdDobIJx3+l&O;blHY97ZFqUrG;zOEWGqGGA3Pq zavK2#PriTTt)FZNM;c4(l?C>CB`z%;8;6S;Id$y^tFi3`bVy&=3(DqBk(SX~Wyiy$ zOw24!=-57KfXA#>EjxR)Nx(L+R~iHMS%!7g&ZHFlrD2Q2PQ=R9kNUCPtRq7xlP-b3 zs4OCQ$~)kT!ej(yh?Q)lHNR{bgMhR5GRQF{1_lSunMmqdR)6hdkF8(-7=EVtfj6Q< z00*6xjEz<8XCs;vt$VO=S8lE_`dU;F3!Yd|#PPP5I*5)#G^kPy@tw>I6^h^k*6u>B z-bW@+GA&TdCN{?Ru?I0AE#IP&N0cxMlfMle3!r1(GM2JozMqXvPFl}-@!WUk{+##l zVWRgD^AfgA*@5Ry<coG>(!4}{?FhDv=$XTK=8ls-a~Q=+&&W~+?J9_N(OLGPv4TR* z185z6BEW}%_+1*@Bq@d}9gjLD6+I0yI2VbIq}48a{JN>vuUmB;5rF>Cf($$w3W5fI z?m9p$`a>N@rZa4td<a)m2RvhlAXpw-UQ0+%PUln*QJ%&Pg%r8+1kIuG0ZX!Y9TAP- zo7o2Q5pyqFYkta{WT%^-qz*rfI`8;zsMBf`pJdC-e>69+^UM#LZ>4L}+2iQ1(Q<$J zB%DsAOd6ug#0C1yr8`xJj9d%oHMiSpsFnZbnBF4`O=a(i9{kbd)DI`~_*d#f8p@(> zFY2bTOf>%QuG{WgnhvP@$n+xg@5jn@!y1Xfi0&1;9|(LUwm%T30tP*D#4jH!aEW6D zb07mOk0LrRMd+oM)$@~+{H5=G&wO#_MRQF--!DSn|4-s$jf%sEXTwME3&EdG!EZAe zIKnP7UpFt22PUWbES@8H)f<Ab`|uPrW#U1nibpzdm_7J%35_z0??SOY1s_x!hCqY( zHStf(lM)OG=Xw};!f|3vW9tjfZ%546L6J-NOOr>RFT<F@<CI|BfA}b3`U*VmI2Al# z3Jn~7nLSuSqYUE|@Th<x(4f90`32b^=plF`mNlg;QOEk%5(`8GmPuqI8Iu!J6C}$3 z1G4N5!SKo(rmhrn?eMANQHUG{K}u-Q_&9YuEEpv;h^A~z$XAOV;FLE*={SDOdq{Oq zB+R_T6ZsQIUjaP;!}|tdcn|ZxJo<<QV@$~GIpYD<B@liYWVF$+@gTW>$}mc3P~XzL z1&mY5C1#Bh%o~goVkGKo7%5;Se@1v$5?i4@xAAjGU1RMSy6k3E#9@HCC~*oFDQy=X z$)t+eo7<W&Ea2=pls({>Km0P`$X^oUnXs&eOEI@;8~|=@&{s$u`53^|5#(ca7;@4p z*cX4oZhi&6r%X>eDUb0EfMse{<N0RWf4`WEMAd4zZ@T@v`Cnp^3&1n|_2$}dgR^-c z>BAPh6MDW|&Qg}=J8|`b;Okzf%3$pL3DTBr`S7OU-H&-Z1CQpQH9iSHdwk9a9pUkP z%rL?N2pFab$CnT1Z5)rjVvkQte!z#^A&HpqWw_P>P&?)^b>uOCNeB>V@J{cf4H&`r zAlXXoCwxzlp0G&?kT27GEK#!(-kWbf(e&se_V~2gFX;NF+fRU}u7p&s#P`j#ztsCS zJfZjK<m-=xaP^@Ku^^@%su`Qam(17sev2_7E-CR&YO~P898%9%XK5Hg(FL0WCn7f= zEYM)VpQY0=-Xr*DX)+d5=J$g`0r0VK!RBDXq|D_Qq!^uWBSHpqm>P~{c7RKet(jzL zjp+Wo(D};vzKOQqf7s&lHmnChs5#RS1D$y0%X~kWCa@Aze3Nt}n1T~S6C+++B4TOm zRQ1m(&=K>;#+CpJbOjNs;J)Fu+f)>7xAiPt%8j+6e?_EUS(Y|oC`uwty(Q9S2Bf9p zz<5DQ4%9xdN=xq}JxAyUVmu01khuzugq6I`upmN+YMiL7VL~O4C7@8RN#y`oY^MqR zsRAxeryytsgs&Km2oD8|I%32EE>2>CK9y3PMkDwTG*kjf=z8;nuh22e_`cz`3nWXh zEWP<uU=fRi>HcNXT1!+sw!OB_IX605Ad!U#K*7&TM0`^;w0Jo*<Ch83G682`zQHz^ zsaKwZ;NPbnv)@{hQ77AM$5t|h*eU6m7QYbik?l*IvC^>Fs$#JRn+VQ5VX2Oz096dL zv{_DJ&5v7&5Eeq2wfW{u9T=ymLqQ$Kj#hDO7=v|Ab&&kDG^WZrddIpd+EFFvF)5DC zZE)fy*!pt?o!$t1Yxs$Nz*w=R)r`7Zk}YqrpTTU!WF{sqX0yc@|BUeM=>zyQe+1ht zL!Y6&hwPt%_Byup;n{oa7$QrkP_;agha6}F$k+=HU&>S^CVd)`NN92|zf3BZJ&N*T z4O8v|s~$2(+V$WBAUud6;ZZq4@+uOz9tJLPy_$L`Ay>IG^3)p98TZ@VueKiK7pQ0t z#uCm3!c`e7MHtEOwL*<JrXry|mV_WQNLvh&4ppg7pwB%bnmp77YLBXk*te>sRiGV6 zV1y%R+a;B&vo;7O$8zt#Y_FwAw<xV9X8Pxi@sKjPNWr$rB{V^6sq)`3b}dbF7Wi+F zN0s`VCWt+N|E&CJ7WjWI-ZTs73hHoa8T6E(ZO_K3TvC*=`9MkvvR+_{;QMT0*-AER zcG&~wzylDow9^2sL|P49#bev3-w3>`4w@qeAz*1&f#4mPJ{xxDYavJ~SF+_@1&Skg zB_`}KVdF5QX$ygj$n10M8FP5*BkU_C1^3~w9lsT}V+wuthF}tI?0I&dxeG8qWS&bf zaW42}<oTczNxI06gRMi`HeM5Qc@|`$rip+p*tVM5kFBc*CnpaJast<bu%kYSIZkj> zV=ZDKbF=6eHe0(HO=Y~;wn_8b_U4qm*<{<8fMaQ0LwYm%*)rjm(VTt#5wX`bwDz#p zHS+sG+o`+2G=Za7dx>nNIMIXEHvrQ(BJi*a(ICQQr3NWXHx#J;Ap7p2Nnk3B;QS?P z-7VTJ=&3@KBbGG+{vhXqhz&(T0jg<rq!3L*P&YWJQ;aZhS7iM(#90$kUO*8@1=M5S z4i)AQs(L@{%V2Rpo)9Ftz_wM;1>r?OZxIF^t*f<JSGR&RVTezm2iw-`eW1(HJvQ7Y zF}KQesWxEGZjT^gEa-BGeV6D0JPBEwE&|slfommQWXrZLRQ8#}Fd&f~;QJW5Fkx*+ zJ*bOqGj9iJzI_P2N}X_Y58qd^A<~$}*t6ChAO*!=u#b3_$v@lrpeSfgBgV2!!agV8 zH1!bZLiCmn+G`_+)IOHAMl^{=#Y!+BmK^MuB?mxSlH?%39J0*OLWiI}#CWlBwdn%d zDnM6(pD{M@p?{Wb?Fco491^pS7YpwURTMcmNke_|5HLUb%H&~G_0S~ssr0h2Ia@R# znTyITy@3=58u7EQ#d7vY5ms!mYI+$BK^_4L`~kSIhtoV4G!ZlAW>AJ85-*+|q-?1o zKsSsjWLd_iCM@f?&65O7n<n5$GR*8qb&Vi;pvjEA9W+6X+1Y6Vyiq|$R262IO`08t zCSRVE6G#8zFtDGRK;uicYZqnwr4BCX=f{qg+4Xapp*DXJi;S{0n}!U{Qkx%uKD6^W zIF=Wh_|3!>&;?Kw%iT-r*6bNTi8Yc*!Df$#4%rM+EM;sSDO<b@_0Y*uaq11^N90!= zu9Xp`2z&vt)97$>h3|tn@aA+9V|V(T;>a82dnpGiw0+bAA%Otq9&sZY#54-Pj;L;V zKn$=FTe5i)@UUo#B{<QP)>X%6OvkKw>{WV+Hwg<YF(<y6Y^IP|wrnZWl+31rrq$Ln z>eAV1N{0!>tVGie9-={L>-I<df}(P{jxs$lGZ7X+&{G9H5f4()IOwUVsyK#AnyRMa z#M}w#Nu3ED1n;uV#l*k_V*nSk2r5P=2x@UNyS=uIc1iQchA<B}2uc|!Es;`=)B%kd zp*jeGnz)mc^o69gV4#s?02150-7+AO)E2b~nMmyxGEro2K}@6?gQW2C5DSdzUIRzQ z=&<-d-!B9s1OWK4B>@CI?KaT(gpZO_cYx88B)50tDV7#&iuiyr(Mt1h5@Omd5_5w@ z0<}sEO%e)ryGUAEq_lM%doI!n2jZQWRVfF?O#D$$SW#ymIj9qzXX`y;(P^tb;3*FY z^+)hTA%9%7=Vb9jq8psJE$^7)q+^|7i!cJwn1r+tW*|#kfQA*a!Y3^m8?(3xYH(0e zPf)JXfx(K4=ynr(w7fW~6%7{@4U4x}i%=0BaNFdeDRdtV4fddz+G048S|{eVXje%1 z$<W+(GH4aZb%c0jLhXQ?873XFa^Vv>TWS75N`xewYPJ7dT8m{ou_t+%fl|*2@nU_5 z<*7C4g#fP5d2Af)Od<ScCr+_Q`nxEV231a<R688bk5~Q7<R`{zjaotQ(!eE(3#!`# zSh3~>#tz9O@-MUeFEN08E-zeW3@lzHj|!JF4cWeM@{s&U=m4TP&W8Au!JyR>LEFvD z9dL_K4Ap(&N1s#<1B>Ze3Xe4;ss=d8G0{mj|1I+jTeh(WvBs|Ug{Y1rg~fZa)s7=Y z+3ygf$crFPN6z@`^U~?%7c2myedYWQoH;qXZ>5>A<UQ$}6>v+cp%t8nI4+%1tb|MP zDB%qWXTrdd1$$Sd)4LCzL2y^@8=gG#1Lv3ELXV(*I)Sg4nL^GJx*Rc&Am=T(?r@Uu z1(7Ja9Ht_9I)~FM_AZz_<KS*g7@*3YHwS<<;am1!@X)@1*#89^FU3C*JRPy9+)f;z zK|D%|MI}7s2`)u^iSU)@{q-4>3oclmW@A8>AQRpIP4i)T2j3@Of-wQ#zRIjM7=R+n zD+FJVeEal49O+|W-nV}0r3c#NU$h;qJEiAU5D>UDPQA3A_dOt<Z>y-^M{(c1SVLf~ zfg}m#7(U4I!#Tx$_es8RFibm}`k(`_8h{R>IHg@I%sl3A*T44Kdh@r;gU<)r*emRn zHggmEyEZdnCfX3%8M>k1X`<if=Euk`qouV?f6=ce^G77bn7kwGXM_woX<d{k557p{ zy6mxevbt!!Aht6_yWop4XFp5SW&2sekz!6hlhy5-qfck4U8TCvF7gFBal6Prv#MQU zuSut|A=ZS|yLH%Vw6^PJHgZra{j>H)sHJe_vwUx;ejzto#u~-kw3JK05NQP}Kw#p~ zKkOXBj471E38FNOAFJ&aK4c*!e5^&;@i&$tBp#r>TQY&5()d6_=Zp`zalo{ix3<V> zjETKcfZ2mQ<R^;R7)MZU_;2pvcTMfH#-)USZJVdxj(#|aFK+-;q=eER{iqnv;yIkh zJbwRKbs=2cD)TcHbxBXn<(c1@fr@9?o;f^I(<bhj!!z>yqhG10hkt4=&;0YzRK+tC zQ0};X$t4;nH~#6`%4bgAN0o6kiPoNz_p7Jo8TRB!pJ7kdK6BN{pSh~`nXZ#R(^d0~ zboeCCV7}RpKmjtpEgd{*`GZyESD&=}>QZ@RAj2FuVR`5*0oFwYt!Sr3<lpw&&shGy zA?QyHILVQQ$3Df$E=Wab7^gXwNXv0@YMpcjc*EInRM>^B+zX|*N|#GlN!Li%OE*gI zmfj;BklrW#we&&hL()g2k4YbwJ}G@#`mFSM=}VX`Uy;5hy(oQ4`kwS7%y2m4Ch;QQ z<kG8jbfEN|KL2mL#~T+;{d{5R?|<@A{&K0-g$u9#AH4)qxR}QG|ADde6X{jyU!-44 zzma|`{ipONX&M$O9qF)rEW~20fs#nG9Q52?R$xWwjiYP{Th3Oqb?gkbiJi^1vt8_b zb|HH!yPRFcu3^`+8`-;Y3hV%TANy<eLG~f`5%w|marQ~}Y4%xb<YJ8yseGw5-|4r~ zz0xSBdzGWPbRTh<#Y~{zOZQ6UN_Eiv(mk3LrLvXx=zghO>AF;oaG~Ey-z#TUWgUb| z>Dkg}3BS^JDqp%sFiWpe9aOGVcD8$^XKU-N#Eq_Jqu*@LR@PC1L3AM;O5f=dv+^<f zAKNo?`3f%0bHw-8tPAn&>V>SU^vl%?&2NhWxP@!0Fm9pzw=u~cquKsisW8fziG}Pz z`cA)!LR2w+cn#n2_(JPi{48n_70`p<rvJcB{3PJw3!pzn4}Ke!i{b*-)ujsYjhbVl zRW3q+UMbxb&k_>2cx+)MmjK}Z7yd|RLHu5uKP{3LOG^<%`!uYF-y&_1wo2zp=ivnW zMbf3x71G<KYo&L>&VQ?Pn{=mixAXz&KIy~KN2R}$J|X?R^tkj7(ifzElAe*iD!m|m zL;8;N1L?<-6d0tKLvwr0NIZM4AdA*uTCaFf+L_~hkKs3ZQ5pIyl`B0%_b~Xy{o1mn z@1@^spDlf--%If5-ie0@Bu)80#^NzwFzoR=-p%)m534Yhw0<dl+9k@cj)i3Xg!xmh z1q1qoe@DKryv;5^lZgJ_?5C~&%A0IiH>dT6yvbT`a45GY)zJz8?kQ<?w5Gzih0=Di zwS!RqO6ws@7d+uJGrFL);vfUv9yS*p_?UGUbWT-j8bjO=?9&KC4y;1Lx*@hr$tXlC zh#B2;YM-@kgSn?nk5k$=2e>%5;91yA?W<Wg%^4?J43a)v!ii1)!N$pI6Ir5Rm6C2g zrcFda!ohrwBPKb&i{C{V1Q_+zN&C1GcY^)~=^#4MChXKhqGk+%GBL#15xAVJEtUOK zYKa(o(n93IzUu^Q!$DNfH>1?lL)4CPdAmPLr<~!sKu0>*c9Aw3rss01DHT>Y0z#># z0Og0sspS^n^6YnjhrM0o!hDjMC%~bI#}BfuZ_==*`AK`XrDskF4+4|}#{;k<hYt&Q z!p?%cDhoN~$mLRGEC?I+Dzc`N{SMYoN=K1%FejydMyV;3swl6Lm6x(mt)i(6S1q!D z!$>0x;0m_hU}>=cWRkLgG4(I(*;fUiJo{3q{n(#BUfsn8cJScAZ&L2*nYN4abF3Qx za)lgV{OiLT1(>!^S$%KiSwUX;PXpgPdWrF!dA`rCN3!z<WBWuh9#_d?E6S+dC^q#H z`?5JE3cvd5tH8_Z$LG<HWq8GadXNo)$_LAMTfbMpD+WBQm_sr1^-q0@if-Jvkq9Y$ zlkcpAHHhe&J8e*?VdnP=Sc8CN<954wSqT{7X6Mbh3r{+s<V#luD7!|6CB^LC2Rev8 zC3;X9RjM09o=o&4ZO*gpK!~ji1~?cUJrlAYGoO3aT!3dxpWTm##W?1YZ_JGmu#zeg zX+c6s86)l>GeKDzyQOj`sz*-h#WXzxl01Bv4gHY%4DIO0e5G-!eHzy0Jf#G{q`IH) z?8oY72sP5!%-dy%Hn2ofzoDEA5{jaEbQ}$4F%a<xn)g@sd@A=H3uIt*c@8Ll`ygtY z`Mm;WH`kGPfJzOued?QHcv(1p6UIAh90(k{xm7QUSooEGuYpxY?=l-$soyAXd%3-w z`i#)GQ?QrYT*~imJdRV<R+~lo_ELF~y4`+=^0veFX^)FiUU=tcorod_7kQ$Wcs7<R z#;TtG#cj9URsjRwZkvH)<yY^OkmtLU7SurS2U$UaZ}<dYvu?KR+Q|eZEo#ptdXv4C z8Mdt)@TKrsRz!$gDX|Z27Ga;HSQ9t2I(N~kD<>wdTxGo%w+s$$DbC+g7~E2ovnXFK zfpViLf`WxD^YKp14~JWL8-EEt6b({lEL9f^dOg^hX2^$%cxY%8c5$r@7g(Z0wBb^a z2NCN!BIgPeL3fa%(5ETvbp$c7et786-+lC>XQ_Ifcl~;Aov!Nj?se-taW=G*%`*@0 zFb}Ww4aV<Ye|LP)=O3)YMI8<4^4zrO+dtMr)WojmUhrM~x&<FxIv3l32&qrBtfV3( z)yvdSsg{bzrP}c+B^mbEx!>NEq%6*Zu%#`hxW^$cxj`;jG=E;9zqhj^m29YwMv#C} z4RJOxJU|{OpdM5yi6Pu9zHXs&Jm-=h-RaAhE*@<aJ8dB(N{#6vUapS~6=Ry7DMn*@ zRvjqDsQbmW2x6HlQph+}{F<SXK31eGP;{A2{V3DbmGSsf!C*4*wf0r<MQOG>zN)<| zZ91KO3jX?>Ja2tEr=ICbFN&{Xdl#j<+E@LXCy)#VQ+^L1@Vo5NJLu6xJMeRS(U;4B zJ(;?hvYFMWq^n&fQ0+~29dL~()654OWH0QFXN;{c%?xl|=nNv~H3eixkWb1ui{8Zt zdKX*T=-vK4YqrcU_Ko(B9y@0!iq6S;yLQgZc{Hr5m_x<RiCk`?Q@kI4lvK^9-cosb zsw|UeOp~<1gd&d!=}Lw`Ig*e0NNcEVO4UHEs<vv5G)cpVEef^+=D#11F&HT~rl2M{ zc}VBN$=jYQ6nVwp6lk(4oh@0KpieSjbDSy^wt#1tM+Jka!iJa%Q!LI>Gk+t(*Oi=G zxU?TrR=P=qquBy!OA~;}*c7Iq*A_nNY(x;aRN-NMgekzH3I~V?V1Q;mCjFj0$o?1R zX-qmX@1SJxl{v>P-hq@in1~>gR+Tfot0qPI?~l!gPI^j7zt+if5q-h2&VYZt45=ZK z^U<k5S%T*fBHrp~H*FP@s*G^w(7UG|;+ym4QPP)%;*9xF1rz?#_-;oUIt3kEv0y%A z>EM+xHK}u~jm8S`cPxvrfmu@R;q8Ltv<Qoc13Czuqs%Dw7J6l^z8W4pagdpkauWa^ z<tHc4JA5#X{6=uSs{%+X9@TDn)^ualCn(@Xjg_=?iJpYVv}ii1-$0VY0NW1VEP<tP z>@DTHr6hS`5rQqrBsL}q;h+AL{qCnfEg@~XfnF7VI`LTfpOP~r9fkNr6ZUOJ#)ezM zID9gb3DFXTINqm-C71#VVCJuDZe~(*x;fntk4BC^xf$iU3nVG!Hqw+vklV3lVlBF0 zf;DQ(E?tKC#hS*>8`WxN8Gh1O<HQAvCa&D|D{b_=F&fX!(shUjwE<VO?<5tmE1R)j z&2Xmpx%Ikk+qTb(|L9wcndwi-zmS`eLHRTc2}rnH8YwffxgG_v<B=$wV)Db8g(JeA ztV6=3<rLBbhLMUg8XGE($Ot%#R%p7HLhm5}-|r&M7{W$79hXmL7LWHdb+6h{SpJUo z_G^|EcC6}d>KR|0x#(KPrdvk(o0E%Hbe+9-&pBNy7A2ee7bV6n2r2PITnX=OX;<OJ zsj7=NCdM~z+EZ9`!OHfD1;b0)S6;BFuxHc8@x;~%CL0ZX%RBmZoxLu*Zg}C^?7Fje z^>r-oYk132Unu08*eKd}_4FUuD~OThMFdvx0`LK3g!4i0W1(OfRyZRz$j_x|ae7ZH zf>R;l7VYYb_|%m9SI;48wVgOOa`m-LpVu+GZ1bAs$<}t{lW%hJpPSEh=C`d|xp-gG zTRfh5>6OjNWHYJ<eHY^`hWcs$4;eL)6qbqD<cI(*vJ80O#ex9%oJG+W<fA|VZ*AiU z*cKi2l&=iMLoo$W8j6EO3i=JpyLd(PND(h2BEu_$dyBVk-@f{W)p)0m)i+FR%6}ri zDgVh^mfm+IKFimv^Ak%yLHJec2A$ZKM6MkmU~A2)3y~T{KFnFPg6=L$D=74L6}yYM zOrkT{S*ZigO)Hq;^GQl`X7l{2=|J+Xq%Z%lE|I9i%RFpfRLzSjwfY;PAQiS>XfMrc ziSOh;$9M=!jl!?b(rPI+1SL7aT7le2t*o<{)O5Uzvd-4mMH-`xp&*j7Ym(PW<y%N0 zFPqR8Ll9JH<couuIFuh8NFyKd@Y2xh{$$esAK|6uANrjW$*!)hdG$SfB%7UjvZsFD zVHR7y+}zfIKcIxXW^a?j@;TTa-i&cT+1SE*AB9HGH_M2{t)=@?aMhwjaD79g46!be z`3zfel#8p-m$wqbiwBs<<Wp6;zi+TV-N$~>uy&rKx32Eyy7opt3k1x;Sc_9p6Fq8w zUEMAAP4?`#xj=Pj=MNOZ4a#6c1ADCWO&w`TFnMvqyj&!>cW@xs+}7R^Fvp`k37_wZ z;f2BGTzhAL{lgM-8Ip`R8^R9b#>M08AtZoyG=`kcTbC^*69Yz9Tsns@;_ra&seKw2 zj(lgR7z@Q%eB-sRoojxPE!=bs+c|Ewin4=ntWWc$;Ah&WoeIhpbNCl4#`Kt;yJf>i z9z65GkBIlp71yXEEUiP{3B)3u?YZ+eJpIg>&pa*O*Kc_G*)yMg<_z3<7SH9NJM_UG zQGRZe<xpEukLC1S?&F8P*WLBKLm&TMcQ;ncD}VCOE9m_vc<w#ZFR&MIZX5xO;cbR= z+wXbdim!kD3haX3YfhTGMO!M$Fu4$t(`@teZ+qc|ib7=1k=Qff7bo?xOUfZs!<ydx z?uXv}ZrW-!-)FwhqAxz!lL7{GTosxpCBd|~igabrPZpJAIs^>ZFrIzr-RvTEk$I=} zEOwmPZ{|`zD#!od-hA`Xn{O^xPYI|c_NzJ7eI6b>dUIvnPU&jCmNz2163*U6NuxmG zVa8U|3JvCBM#(2h<pB34^AHq{Xn#&5pUkAep^JlXjf6uNWY%C0ZB576{daG4H@ZVv zm-%_NxIU|?b^c9vK6>>YU!wsn=3<0hRpX((-vnq?nnc}w=zn;eXArazl|zo%l|yBo zrFJHzld%wzljm5@(wQ+oM_CCIi=UOzvAA0c!mP0?VkxfybV6+b^Y`&|I?nX^4!1KM z4tP?rrobbg@K2_Y9?#L7!(kga5sM`d%+Uef;t$6X@fTi<S$*Y{_5$ZlNh4oRuqt#j z=tcaS(p#3yqC_~PvlMo;LGpNuu><Bc?B*}+{o=AO{*-=wvv3Ywd`Q6AH~n5Lt5--_ z>73P%dJ+3FfkQo5Tqu_TU!=B|_oCBEv9yF1+CWxZQH1S3UYRXp9{iM*vYpAUw1`zy z785==*?|EHKVBj)(ca1~(Zt@fd(&HXH@EF=>x~TcKK$r~mv!~tkgZELH?{J&H=J?q zxf@!y6+bv{-GaKV;^mib&0o3nvqMWFjhS>aC9Z)r898nLAlh=K)s`0Ag?ZsJ2m}ZP zSP<ZBO8#A?grN;%39E#>|9C~Ve6}munZ{xRY4i}HJZnXxwo@qzr(ufUkC7`fF4F3U zeeW+?o0^k#*&BMhF1zs2hkJ)2y=YSN?ze2(jb=2bGmViYL!VuGWq#}BmlwP07Ob21 z!Q!^o4d<SF2IQGj`Zb?me<ySwaiSLXF-SPl>R}_NBqTV^wS|(9uyZL<)9HR+H0-PQ z*CXDtUx&WIk`z|i8o1F|QWc5FEUfv2d4pa^w-t+R>4MI#Gc$E9Ep>RY!DM@}t$nCH zxkh})J<@|706l+$JinxwiU>+DXdP!&W*8KH5m})EK%$`&3llnPfs{}<O7a^@`}E0A zny)UrSbn(s=p*t5dIA1k!2g^LU!2@W+c3n=$C{g>dEf)lJaF<sMDw6k3NWEuaXM*x zIG{r3DP+{L_miJw>+%a1UfeBj=stR;d_9F9LyuoOeH;5<axdl@d_rN1!%(QP#o;8p zu*Ioliv#O;`_ZGj&0nzQ%h}!UVDB@#&3=M&IpF-L3<tA&HaNnG8fr9|^e$)3<}Y?1 zJ$gBNk$ua&=pE*Tz=undm}?zquLcit(9?~O$Q&v&kb*q}imiS0RM)X7<k39{D^B=n zSdqcGngPFp^}((%f5QSr^JlDidHL#M_C$ew!R#<Q$`@2;4`}>5yUxT|lgAC!75@KV zJ6KqjEGa?gNTjRA(o{!;Ss$+!(TtxJS-`xsbagTNF3vM9DVP)X1<`r>`_gK@AIf=D zLMAafUJ)>$6|<nF8dJ+avssRk;o+zhO%4TVDPM$a!iq$XK!t}#EmkIxX80_9?8UF2 z|1M{}!_)3(ub2scyGM_EZe1-+OVb~9*Xs_>*DJ_KSnqof&}wn<LGnbrDo!8)0SRh4 z9l{cq?*dj;%+|ssmV{7%Sz%Vmq_fom69|9=dnM2&FxmU!*H;Tf5FJ?N0uf}}X48*? zCJ%uo?b4F5F~5!uZf%PC5Xx6!nMN48WxLPm_>w}W?C6Llx`k3ASqC)RrS@Vlwk$~V zsfsu=vQnQBp(T1<UqP=uGdNl_1m^Fbg@R?g?S{+{)NTj+k<>3CYhD<U&ZVwoeF*K) zSZ9LcjNlsUxD`&g=rRtMk=X*jZ6ULTwiD%;wgI&5m-=&oTrif5C4+Rl1`1&zMk`fY z>Q`Kr8`a4wFV}zQLl<0oi`Ak{7hGFcy1Mt?3pUaCXbaR`Te`aC+SP{-KS0fj`!6be z9zJ}rC$3|6=Yi5Ejh9EIOVLlQ;4EYzf(B6<A6VK6twq{F(`Y@~Fylg=DJGEsC#kdR zzcBT-Uygl&|J5%qed@KRUPHmZLXP@hLk2l;0>^k9OpEqcR7y9DF!)6|;6<Y8aFqS} z;``1#^S+BGN0%<WI(p%UcRfD&z`p3w@AEs;*PQ<N`fE@dU|j@Q&zE5ZC=+fT%UsHk zffFS;Ykix$NPuzz(&*Llm!tb0n0$QKhcCP#b<O(6ProK@t)FPW&e{{`ln_-HgI}x` zC6#tvROR@aEypeq=eF5m%O98mkGm{fb<)+~^W{|_lY$_~GU%wf1TKcb#c{q7I;Gfm zB=Z=~*pl!eE*7Fg-gpK1z_sSH*YY1uW%=$Y3XO(#&%nu!r7gBA%&Ii^MCd3c({Zqw zzNVuBbet}DEn7ga?g6YU!6G}%L-O@<o8-pIMPez*FBS3<8CSG?lrn%1urGbi{3Fvp z_YX{8{`QZ4_YV(0{D+UrZRUUBT;maDeD18jy?Vtx5C7rNAuMnq-th`THTfcN?86Sp z2w=tvnx4jfP$7~{BN@g3&xN3Y=sc1RhKibAh$S^WtVM>%fhv!389klNg*07D4-OSI z{#NH-vij}b@DiTsjTvY3Br@yHTfaEA!9DgCANy^{{FUZpEoZD<Jit|Rf8ao!`o5;l zcp!O}gMVfyJFuG@6YfJ#KE`gj#C%p$%zxj>9$<>GK-t_lf_MRZWTE2jc<rpNo@oi2 z5F<{-%2ECb|22ONG?|BlA4Lp$QkwK=EGowe#i1hY)I?)BO{Xg?n7yz>S%W2pV%G0D zzPdxzP8*I*)OmiALJI6qw*Q=-i2mWah}RW5>zdIEZd!ThYuB8m*B5&(Q9|vT*U!&< z%fo}&`qh)et!H(x*Z$*tzqh#~6m71{D9StcoPEcp?&t5>_m_OQITC6gyGHb#g{KcY zQBtd|B!PNDQv%)RiYnv3di=D-BlFe_4=-NBn&yaY_VFuLZp`I2uDqJp%^g=2Y*fk& z=JZ%3bP5>0_oL}s>*k2qwqIQ^wE0>7-jg9^kN*l9hElL=#FE02kpdx$bI0&Ui`O{# zV#jHVhlkfJ+B8Q@+3TBDv^Tdmuh^8!nI}URb8GtNvXB2OxN=(Rh8Mqt<BuA$6LIJp z*m=#OzwI0Sr5lpSZci$I4l|6VG_Hhl4Q5_Q=2^W%)|wj~$&6PqnjDdi&|48tzCNxu zCET)JuLoOw%-NKU*9SuzGZO=ARu3-A`aiJy(vQU1@8bM9uRohg%}YdiV{5R@n{5mC zIsJ)5b6;b)F5yji6Rm!8ytT1D9IW57X5N}Ts}}6M>7I)}6D7rE`c?ia|2LdNkeE*V z0J96GCrtfpu6#*WCL}$>_ZS+Mz)zT5qLpbFiHj(U2k9Orq<H7AYHj20o=kFi#2JY6 z%?kxuTa5I1L(J2<V>lkH>)c^}duLZHoLX~5bo~b}HDY~}i(R3%w!sBzta16e4I9J$ zp0>;R9<5$;*AH#z8R$u@HNw$>dHKFecD(#9qt4jr9SAozM)Ub-V@rI2_P{;vv-~4# z7HEbMOc<%U1q+;t7xD`2`)B?&{yKW96X!1Aydn4mwTHSuG>k5KxL8zz?P2~7WK&vr z$o}Lvr84QxbZoG#wcD9Xt$yG6qkC3tA6ampIgpCSQ?ZY?#^bGVcAzm*mvD!@&USBO zV<c##oGrOa9{k5uZ@ulNYj*}Z$GW@6c<VqWgE&*b>0A8wd<qyrJY*sr<uz6X+ah8^ zG=rg8SYlhbkPitqr|H((vBd16_-zp*+7mNmcd23R;jiAX-BCY3f29`c-SU=&xeco7 zjCzLx`LRX$x;|g*ve5QxKYnd%x^=*aH?}l5`cjEpe*TthKz*QL@{VU8K$_i=M7_Uj z;s&q3F5mWiYx7wP26i;F2XEMS(@UvCtzFIYQmq4xJ*j_Bb%pDiZCm#jre9|t<o}En zUI@DnC0j1ggsn*qYd!3n1KI2Vy|nt5>xUK&t;q}wWN-&=UXPd?nvyIDUcjVn)4yRy z_)nqtNU@NfgPjTfAWyBnKUnzJ)n9O#zw@)V&2zJd%>P;toFYAG*>r&i<@;da2O=@7 ztc$P&U>q)D>0%7A0BPR><2Dk|1BDmfoogtr?g)o=AGm#Yef>bD*B5^GyI=VArg?4Y zzJ~Vf*oQy%u_w0W`_u83rt~7VX%oL*@TXg*?_)2?1=xuKK#|s?ff!bea*QrRIkx}5 z);zLy!`03;>#ugQC&t)k&0F`FD_PSQx8w3>-vA6*+CBYK_B#I!sMCb~7Ack*3=9+q zTl8EL%SQrX?5^lq6T{7{JP7uOOzy-9BZnr2+jCdu+J~3EGZ_xu(S|i~FyESNS<2S0 zx_i8*qoZg1?p5ZaOZkiOSm)h$x96uGyx*U#N8+S-)_*_g7u%+<W=G`B=o`{6W-#w% z2#-Jpln{IW&hrntcAWQqkK6p_MgR0oj`R&VR(Sq=_5<^4KYMB!`|(<n+_>2E%jOGw zGb{+;gfdo=>DCUuVd{|%MV{I{HAy_B?CU87iVhqU8Q`r`FAret`1HJ~i>5A|&(9J4 zECJ46Sa2L14!QusH+10Uz5Jdd<aSpLD}?M&EVhgNzA*J8o++@sQxDGPck}l_IbhRA zY@7_>l#eO2rJL67{s8MUU%KZmq@4bu`A+kuCw5lB1cL~TVB+&!IvPYW68-9XesccN zpI`m+qep*ketY=GN8b5WcKMbq=51d+Y#unPgwG3n8*s+Dnx%BbuSN@e+ua|aG_h7a zQz~kip#kb(#9V^Kf(BbvFveavNhNIhcXnIADdYfi^GWjsbx06o1}-=oC{J!^Pd9R$ zL9ouA(eE$tN#KWP89WOor|vC1T=i@KYjeJ^aq8*PlSIQ~>Q&?;&#6OIG^?&xK6>Q) zY8#%NrQXuRv)5aClIs1Vd02T=X_OuYH}n!$rtL>;DJpu5_8E&>4*VJG`B-EqN_V_+ zF6-sFp};`4m~U3Vv@zLXQdMcqui<NcM8&FG+y@X$eK1q3n1=9h(F+j`*g9a#1Y1ve z6*%q;VMmrKlfPmN#d_nZI)mp@0Z(gFG9J~nkl_!wb$3%sUC-#Uw?-HBkJUBxu-4v` zH`VP54kiZz(Rn?^h^#Q=sn%qN8kyJLG%@B12Ax4IB5MnrQI8%(QtV*8H^RG@^*0W6 zHhAh2(JpttuH;%XYu*xn=ezpG)@Rb2Hf`LRRU$^v>GuSX!YNtbrZ=@NDLQ%rt&t{= z!{bhmc|6Stx&7yA(%a<mBZHiwMS^~(tgCU|<5Ub!p+$4Y=kY|d&+A*+>8w-ZPTW^R z9%Mhw6mr_<<g?<3=OGuO=GU5)y7+=l?sC*Q(wZaVjKw@&IpB)9qpZu{5WtxA*F{`m zt*$3obUHGNokKg)3Av%8-sJ`R3+sN}jhH)zCqVCxF4$%aUmTmoJT~9y@;MpUCH3(U z^F`%zN|Y_eoP($W?VHI^J`~fj2QKUQPd601+rYkuS(NS)->&FB_*UVz=t4~wgCkG6 z7L65rYvzS0@;;^_UIn9wHl)!+UGy_LQO7vS(nri1MtVw1+e3*|wjqoW8f~<Vt!s;z zxCfwQkj;{5Sw^7|M%9q8#i%6skSwDdKV|JgT5*J9C_yFCy}Snv6#ob&p^0Y*2*(?K zXSfYSi$l(US9dsMkL*pQ>w~Mtvx>*%QG$lEE&$&(JsOX+crmI^>#6TcMX&|pcE%$; z4GSEG!R6LOYJ6SubvGsR#lD!sS)bdn`7P@k+k@_wHm#|FaU-~F$dL}lgN7&7=k?U5 zSnj@h#@!RpM%;2d-0Ti4?Qz9)EsPAQUGwBRMP9kL@s5;R53o#o!qd{}Zp8}OS7;gV z2l_kb*E!u>4!L~&UBh*uCLioC^&Y;kE*2l_njdr~ow^!uxqKci=x}I(`fO9q6KKwI ze`Yu^KkQkUG(291#}R4oiqvI7ni_Pu9KL`fsMRU4e9Izlx-okFRlzgXuWHleu-6?3 z1$|9@x%fn8UfiEi4R>8sY4$?!^$bT8H%HJBmxs&WZQ_O;Q6fH1z&F-44CjMpPoU1} z<O=*I^|-r{_Xg{IkO?p&wbW<*af*DS#Pf#HvdBGfPP8##_?gktn^8SRUB-v5U=D+I zySvHo1pXn{cR3wiw=X}B86Dv!4@dIuwun-%>q&n|cE!?RnGMRPVFm<pAwA}FIpl>* z3AvCgy0x!WXE9Z2;%crhX~6kXjVVEtSh=LZ>326ab63G_sEuxyt}8Jo=CB+J)@z0= z2c3G@=Nyc}N*;`O5?Q~@oG}DZb-NVJsrl5X9I10Mt_A#O^&2CtfuT%8BINeFR7XIG z#Kr^lolU*E!xi+%{Q((n3UUj~(>jZTfm{6gu<}{(T(|)gn>FZ_7?ujSs~W?&#W;-? z^CL9UeJqRF#W9J%BBAOB28MFrm}2l|^*qXBw9}MK^{6y)Xi$SCgW+Pd(_#n@=V+<} zHnwbOMq^z8uHAy)z^<vXUpfl)T@6XF+%{sljmdaSQv)zs`<;fnv8AqeblD}*MSY8j z=dw)q{{+)*$Qg~ZGhMC4-{7rcx?vdDjsJsOS2t$mx@`Ktz;izXo=esrEF(aB;+*Ib zSWAfk%jgdVM<1)(dU+bM6EYDCz>3bx=7dP44vfaAw|W`ON9au@=2g>LF17%IQ^5d& z-z!E8%1{?$ISf{sAEFQ48bPtXXumy*hQK<r7#=jxh^NM)SijIcz$XXhA#hVMobVk3 z3QOgvV4E#0+RJ<79I5wq5sooLyt|o?pk?A8K_m?E48Hepyy17~2qQo<msS4O;<j$t zmu#&MtRByS+qzZ3ZG(`Bk@|4L+gw=F3uYVT%<ZTHubuC3!?@m>Of6pDeC<t%g3W8U zZ#fgZHsprCQd0wB(b&8;q<d2NI9P4lz4c%rGrZR0U)JRcc-4rz&fhU#j?3V+4ew1_ zytc)Y=yatOUm;Nl1p2z>*E!srV@mgRF94?vD2a}Gk315K)sJ=;L#~8V*Me@B8!^ND zemzj1Ys`84Eg9M0x*#}@IIZsS8g56ly(=7V4e8*tZfDpX)*I9+M!PzvDq)XDFxviH z-FRwYJkY8cE->0Ae<s=7I~-9RP{uT;>y0p49q~U;iP46R<+CBLp7K@mS%2Hf_^d-d z4xiN&Lk$H~od+xUtZQI4KI?>f6jx5fW=8`p-OW7~o9zi(Y*r7b8mp6~bEKg8FUk)2 zmst7vu;!!q4;1@>;yzH!hm*&9pjZzS=V2zsgLN(+XY%dy_;ePZ&f(J;{L=aR(%F0K z)cvd{?%C(rm)KM6E9`3wn~Lmv>__Y;>{a$J?APo!?6>Sc*`L@noQ1K@Eez%gdDtP~ zdjvyO>?GgSll)%$yjpSOKUZ;`skpAZUwM7XxE%*(EgZR~4Kkh!)!eK7Ui(aKJ7a(m z!K?N@!LGPZ1|N;Qyg=$9dggfLMSM*BUiu^$rB?}N>9^8n>G#s-T+6ZVZ#a9>FeZ&a z%_kq+e(o;Lcgbqar}^8R;_m=L`r*%fWtaH7)B1S7^}(LndhR6WlU%F$G=Ef8PX3h* z{iba@s5a%sojdu~?K@?8r=r=P``2!nbUG(pQTx+H)w=92*V7lz%8ip6)Uip`a43_L zie2YjR#lbnHkOsQcI~opuD&UM|BN&II*~^A&vND3x>e(ovP>;J_KFi$$Nl@$i`x;@ zdzXy=>MU1s1tQActy@))5&x%d+O|zaf5@QI6_e&Kwr$fCK_~Mn0fhRBU%Ym0)V0fn z|97li8v)T=lg?XrHtcFE-$zirrd=Odv7*tb?$nTMd8g+1t6d+Rfp7#rPwkxKzn+}> z@g(1eXFswlH7Wn^V{SL?N}uQl(nHUY)`Lgh|9>}+Ob-^*DNJ2BVPfKvFYbxHt0(!r z_IVXEd(eIrE3PvY*Om7xuVL0ZAue;Rs}@eE25tzr$TjzBzt=ufTel7v#Kmgw6YPrn zu#S?$7g@Xqvh>XH$_MaU<!gpRMhYdEmA}(<Wf{7jYdQXdGtS;+7`q&Sn$M}{wpm<G zt@&g=YYyLLeXykUd8fq^{@VIxj)M1DOrZLcWva>@joQ#}+PZ@{fqe6>U0`v$6lE8& zSMj<3w9R7HN9|7+RpGL~Tu)!XBX<#x+(kTc*Dh|?JsXdljd9sH6Qr5H|DQ*`c^=tG zdZhfvIrB)07)G(eC{EZ@B0?BN2m8tKVmY0<mZ#TfL$z8;?ROpXYS4boqQO;ZJ+@|5 zbx*FTZ`Lw^Ut4d522~C3n0X#am$ac;9>DLr`o;rp_W^gT=JTm{-g3LH->!RWKEHaq z`1|1j@h5M7>vgwd>7>$IxZ?WrH{N<c(++6yJ=Yv?INkaI!{z?w?YHYTH2wD5Jy+at zyQVvo+c6!Vw}8^S4cG?%jjOMYxd=a3Y?iCw4L5kS1G;`d^UQLkSun)AX<mA1i&MK@ zcZjzs_obIMJJdUL!=c>)W7IV_-ssWp(DggCsb}}@&ARnF98Q;UhvDMhJMsVxI^h3j z5B&0qE9xD}0b(F{<ImmEb^G`3$R6mpLrLH=bs#IgK<;-+pFJhH{|3hNsYyO;<DHVE zj6pgK+OJt8Zk3d>C1KUQP)&WamI3@)=~f}}s^OvR@uXMneIBYA%cZeBw=sS6p^9-_ zHKuR4<^Sa|E%qR>kEQZkkk<@e9WZ{8-6<9&Z>kvW(qoIBu408~e<2?UcXAy6!*&G> zT(m`v?Fj2Kjk5SJ9x0YS@vsdAx1t3AMG>46vVMoDjUbW-R2fPtM_*vN0a#Q3D_T|< z0dZOno67XuFo)M9fuS!ztx(MOi);H99r{BYfzq=AQYS*q!zc$!u1_3eY=+Gb`k4Jj zo9#NSVQF(k2Wb2+($6SH*MJ`F2lg?5hT8+7hQhEgqZ0fJ+t{E4%HlbC9E~JOMk{bF z|7ce$00TA*oAlHS6vBrp0I5r)=wxDz4VuHcNTdN0IyQ@NA9vEgg6;?!f#4tta1fLN zU{rx`<ROFKg;N2jDw-i4!yCni5Y>xDm%ANLm3k7-V=t#!1`I(<;096<5_q%;C%SM6 zn1Uh#6F2~fHqqE2;P?Xi*p%kLoybkm9#V*P;SZ?meclFaMQC!bLzZPj(Nx3lPQu-u zHz(jcEISOh;#OPYMkY(H)PB{YbMEvii)FZ*tFqrPM#DJP+UTdFiK>D}{BWiTtMOqR zzu>fiQx|m^I((m*PY*Rvz755rc)g+SX1A<{)P4tcBE7gBYV^vgk@MyfoUM+y65i9A zT{3s&;J3`&il%rHI)HP<)7s!h4O$ZWE?zfI#10$%L0vZtw^KC$NmF|iHK($uH=yV$ zVwXESam^F(YL2is8<9I216sJr?Z-()1ZV~=&{9?I)w~hxNOCQxFumQGRo(SWjUq%n z*IbRNQPjOl(OOQsZU}7|ny-0qP{plqm+E$L&EZu2Ze4b&QH@5l5>{m$j-Xyu^Q0S8 zRfd~+T8$>)vxTO1sC9Z15LFr(PhnrkP#s2#w%(&TR1bFRm@bFOhMMkzcTyO_G2G_X z{i^C~b}Si_6G?{>^Z4^RcOznXn8mzCtA^}wVO3YWI2^;|0gqSHeExbxm$4@&H>u$| zw@>bOMYsm~#MF9Sb+sykbO6Aq*1NgG@T;ymcvU(S*{8TP1D)w}d(?V|BkFVb3rfz2 zDjH70Mx97W0TsiS<qf`YTUgNp3XiIBhs)1pM^ttyZcmR>he6ZT8mc$ks@i2NmCbL! z1zEv?Zw))$AUT}PfuzncAh2nP14zigf>z7S@M2(azl?krOowMMbAi^_tj3A)04R$x zaQSwqNbZ46Hn=&!&0leAy33>abYKs-sKlu<KYEph4AbCshhZZl9|*WCGYqfp;TXL} z3?9f__5uvfBM3Mk1yLS<4(6k}Q32yFPEN`|ihO<n2j@X>9tpz*B|r%7!v;RK=<prm z6R64XQ716K1{?c0AAqhzLM4THA^@+@xm}b7Dh~MKy97`M$8{IQrALYg{9!!eK91e! z3>j2F6x0SEeR#EtYak|rZrG)j(F8?-;sly99Dc?;p^6<&AR~KF+>K1KmY)UobY%V> ze1Ufuw%l^yTwv|saM*%|H<93g*aD&d*cln-mK$XjE`5}mfVj&5e5Bw^o5dwI$?0)` z0V~8^89dJ7a(I*x+p@nAG{JfD*yh3RI36J<LBYTYCiY|K9=S6KZcJ<nl@rSZN_Ym| zOn3wm4kc5BHZe{-Cs=SNoMh+{yeyXz3>CkFCvzbma#p)6X(F%~rY(3#1fYj{M3pvj zWpoQeQINor1@><?|1J&<(oPX@Ac7E&&89nm05+kD*hRM>3>8MOO+U<|qBTVzleP#g zkg;l|s!?i0M$=>qo+S;aDMD(Zj=mlok}pvau(ACD%23x(d-{MQs6<~Z0+C06C2$Eb ziwdICh&sTuU-&B0qrglw9GBuk^gQGhaFT_Pq1(d@!bTLsH$iOzBF^{=YWK*X@!-HP z>m!#r>ST+`bOk_oCn`d&MwG|pA-~?OsxG5G)aq6Ox<1e2Qe1MxDRaNe5m%!eHx)1v zUjxtjAXsFF6FX?K3U`*AQt&%`QHP^Jb-R5WazS+|ey&o~nL3y1$Lw;|;~Rb$P%<tA zDN<twcs-A}^0Loe7gif(2I#t6@Aqk%*E4|dDon#>BitQv-niB9#$Y{H!!D-h{hpZO zNG9a52}iS6Q+>L-4X2USutV2ygivv)VeEusc6m^NXT8=8E2q(*gj1X~g6A4ddQ9zv zH&L@DCn9Rb8PwH=RzzU(CIV?)QN!2{gQt8{adAg82V3OWK6G&i51Dzi`5`a_Fgk>? zlA{w|y@=g?7laOTMpf>{`by0@+i}P|ph5N+5wF$@Da5&+B3^;mF@8^DSPL|E@JQAh zacG{PM~iz9APdY~Qv%*7gCtaXA%cAHC2+b8L)U}-#zNJL?LOv6YF@?ZZb0`?`*c0w zL4*_FrnR{^cQ>ErO}HYf8BgTAZ3d)6LkKJoEtMVp5ZsEpsVC(1K$wHiHH35@c$A_W zu4tXZ3mpNYvZ*PqhP|rO57=O1it2Rw8^Ni=qlV$v<!DG5ReWGsx<~axwP4wd5l^6_ z-I_zN#6%N5)RfzAK(Qe0#L+8j0Yk@*`Z^VIMuBvJv~q*jdmvko=?2Zf#v@`ufayb# zfh>c3F>oAK2W})oz*0#LQSww=;sG6l3l9-FK?0mF$Kx&p7{hP@H+MpEA((;6Au51B zZaX6$$O6Cui{{u=72F<ABEE#IIyrh4a3B>RD}2a&qmYOr*mT^EPB4mZpqK{n0;UZp zz}&}4>QNyKX&iy&95_NS!Y>NBmZFB{QUM$S45!=BU=m+Qk%pt$cm!9R2T(DdhXjRO zz{b7iaqF5}Kym{cs4=Pr<p$j>D^7R`G7J!fdlbwk>*yah;MRt6UbGfKIUxk0>T%); zC=zHMo&;`C4=rItjv+Gn04h7-Kd9pLs1Gtm#yRsO-UG=Hy(#D3YkuY4d)a(bzSlg= z=G`mak(&_NjF@lgVkA;(;x6+)coWVW!VgrrQp5~(;XF$O{<(CBHkZ_6$)W`}2avb~ z@bZ<i>AmKU@4S<x|Ng_~7e4%9wq)w}cbc!Vrbj<)evYlUq2iit`y>9$e?v_2(A1TG zG`+ayS@!SZ>R&nB64452x<`3b{u|UkBCU|t(BUhJ=mE}J=mEnM&iFni6nc_^L&cnz zMR7<Qo~G6n-6Ng|eOuh2*kD$vScpMmh10U~Xj>!GopMuCAmws4wQU{Z?Tv=s+!)EM z%hffehF6;Z#1<`|pN%)B);Bfz6K-!)8yi|m-+$WF63MR1#+#De=8GmIBm1=(Fn`Rx z!S;-v!_@Fa@9bd4+221m<QhAhDbY)BY~z{h-qy(W^A6sAHLkB{;Nc7Rceu`895A-h zZw=1yWjD2pQv6#}N4fT=+i^(KqD5L+Cw~I{I*dJN$~{2-@UgItgY(&3KOLQE5pp%w zAI5?Lo*z+oTHqXNQCxT-vxS#@p{SEP1qF-255)`%IN)m<;JJ~_48dEjYtuJ>b8Fa1 z-y#=XpOY6n+rh4x`sLIw-o_U^)4^N5IPTgq5-_&#)^}XmU?jdeMz^Pyvfr9cWu57i zAI>&{@i#X5Q%+}NcJmO=Hfl~d`={2-QwHWOGoNSqiJ^H)er=b#&+Tr^4vc5(8WTV4 zF^1NnK$rP_bA;8gmyyrs7wkz1<6!#3@>-m^^&kpMC)z%WNYyK(wb+9{TiSsr)feGZ z_f^QZaFcW^qEjD~{ziI8dIZ+ff0Uk;o|nFjXw*N0_4N1BpK!?4!J@2@wX$}WM`$Dj z>VQv*I7-mVS_dk>VGFlV@nbeq^Ib0FB5GkEor|$TPFxh^92{L@&<!y1boe1gBkD1C zpdOvHj8LSkrSyOb-9y93#nFIlMuV$NE;cyO%c2>qd#xga6=hQJI4_qXg(gbgH?tJ1 zEtZ+R*s<`=zoU>Y>|VK|kY*p8xt^Lnf5q~FbisOOU$6Z3S#YYCz`&R}P`X-QmrJ!T zTe6+S)vb%4P+R>|_te}$(!sj+L~WVsJAw6Gh5Xjuu7Uhk^ZWThu4zg}Ze(3bPrs%p zE{C7p)je7DyP9U`d{F>u5Cn#Q>W>0OHvr8B1N<CNYKt5TrsIx11F3-(D|Y8w^D~$H zmKD1PQu$TKyqllGkvaN9@<q<gFV_WIwH@R2<L7AaU(l9ld#>txDm&Ft=WkW)0`oc& z9fzyFr`j&*I_IXIuCs2M;LGwoD}u^Eo7Oro($ldpsPI(1JGI98eSExBU?{8LG)uVz zH+YI~27tb<bH>Lelx6w8W#KZEk)Woe>aj2boa!Rlyb_$5GJ<D2aTfAf_{~t}6v~-` z6AOcBc%mSlqvauilM_QB+>`N1%6;j+iu0BH;YS`(zvS}z9rWgX<dNop@dc;P@A!ht zJ9QcVJN~_~PQPKk;Pm<pR&aW!&R+~h(dYC94D%)2{Ic@IpC)i-qU;YZy#3*AA3(hA z0$*ib^c4Bke?gv}`Y7Li<T-I<wB&a$%7$>j0%g-a_THza?&Xt}MX`p{r*Gw_%gYf5 zM+&tt7R^)Kikt&)SVN_BmV#v|+>}<>rQroI-m)ly;*8@X9T^Up2RO&AVuqWyg~OTf zf-sw46Zpu4!{%)~6TxW+m><FOUX=e4!37$nR;f!GkQPc4kbY-k$9+=T2YRL;#xS#+ z;B6v4=p9DEB%OL<;T)C(SVCZdIXDm-(#2;XpRqsnir<Un-(y2D`+m`WPPM<wMpLW% zx--wY8SCi6GQY2L(H{Q5iVOBkUFi=7{eK(u`-7+Xf<YfUi{8%(`2B&4gMQ`<{+hmD zOW%J?Z&S}xdA`=O;i8+j8hk~8YoncO_uRGD+#O^Ae-dyI7S-nqUXCjS0rmwEM-xuJ z{o?&xy74Jd=3`Wx=)|O3rVrp;&tf`{qe9S=e>S-cVj+u=)j6DxM1ZXVq#?B57<|ZK zfJ2Y%Z+E-HnztdMgp=Iuf!Z}bu6P=FGOR=zyjswy)w`URYQ@1-xskg*&@woz#6|<* zxH72Ve|(~-3=g)v|L&2@+5#fGU|BED>%L9?N1Th%afT@?^#HXbd<v4_-UHd(V5gj< zg=!PSMi$+J=*20a0P*So9Twt`nA<k+Wt-0#*Z8Pn{*aGO>^zH)pS5ECs{7c{bK~s3 zRjhH*g%>XRPUk`#w(VY?9*IUr(uy{a{tk{+Xj;Vl<#*Bpgva!q@@M2x%tD8>TY3`b zSrgJ=GK>%$Nrr<+Q4vT1LMjrA4i*Npi}(P7k_`=xa+nPUVdI3ZL<>p$gY<xLL3l>! zq)tT0Vj9uYh_MNa8qAy#Jq)D^`}whaxDab3wTu44*vbZS7GSi#Fi;r9`nUox*2MHL zjVB3^PX<t|P4pB+U<F**P{Udi4?|M_C5s+iC4c7VDi#E{RJaZ<L`FVvO-K~_#1-Cj zzXAJ-;Sb?=+&~~yC)Q2YrD7PQKI2dl$FEp5p@3mMNd;hw5+Dqx2Ov;Di{Mw{%d!(S z(Ql{>mOp&(D2qM&jQQ#H{1+4v6goNn(c@Sk7$}0Irs5Az<Da6s{b66QCFaK$rxC;A z$3PeY!jMpeWe+PYDhcD0qG)a%-vE&6!z#mB2@lI3fHT5jU)bY?houG3%VE@lkEspL zZ$XnmA_Z|75eItuR=Hn3O<IPzf!-7cA)o?U<i`!VfMo+eh!ZxW!s`|TBu3qcnNq-} z0{ye?*2TdAxfSQm`QmP#i!~@q6eH+M4}$vfJnx@qzckU%(!OY6ur~s97k7ERFtt&C zr4^;6DW4G!dgYDANTz$elRKNz$rW9SjH{7ML%0}I_}J3+mUzo$ox>?D*yn8I-Rm8o zuOMZ*yO7R!jL}T*T3DJnPG!*vDYWm4;KM=6V*)z~S@mHcqmXKJ_FiIiYO6?2Jz0#d zv?fKu5{`p#{x?7P_eVHy33;Dk_0!VSjrKPX@)`4Ane@cp{6JnB|I<T{PJ5LmZ<y6T z^8^B)_#c&~y}X5c!(1_c_0$vQzj@<-A|3=fzekS9OTnkXmo@9`h-K=>gwgb@pl%FS z98kIlgBJb61j};u^7lE{guMgs*N$Dkq9x8Fm+fe4Y3lUH!yb?#Y=k{cOIo(S_vi8W zL3!z(cQ&l+cf$Stth2p)wkv!^Ffu-P%V31L)9o#%;oOiDW9B~|f9QFOHh0Ju%VRjH z*iTsLLRv&(;fO6Rut`!97xEBz6DB<tRhWO+=J2r?e=e4GU$JK6H5g01<8FU$-gbWB z#Eu>RX}EixN`uq)4yU?SbI)@sn=!N8YbLMRh<@Tr5buD^YhSVb)}7`8!#Rw6yB~5g z=TFdA6uWQwX89}fYRIyc(A}|;9Li-d27!v85DZ)~AQeMEY;<5TgaH_!t{fT+3>8E0 zMh5{AH7{C>MT<ijFAZoizM<nK@dakCsQl55O83+c{C)mF=lXCw+3yde8@{D2xyRe& z)*{Y(xSvP-*jRAi<BTcpWbmG*U}tV4A}AdFjXxg@JACf$pdNIypBwG5c%#uCkFn3S zOoYESKd7-~#fhteT6j%3wz+7&)Dl!etQSM!Id3H5Wkb07MwltV7S<PQbrzbO{rO+! zx;100J>6-Hnco`kRQSM>PKCq;G^5+6-@~56nDL;8x^ZqUFp!D_uz?mubF)R9j6?qf zXed)S0_<)<Xh2mWMF|T&wt8fY6*m+ay^Wl6(>Z%DST&l<BMQikY-vl2`T5v*d$HI) zzKD<HipAX2lfCOF&OU4D+80(0uFCMW@k}N@^{LFN!5TauwdRP2(BzJXNTwm48Dlr{ zx@2<d7qM}|0GKRnFV4?RJ>9#0eCs(&*1x!>08G}zbD4&z$I@$XvKzQiycCLYQliP= z07U2<X%elX$=J4=wq1C^n#Gx+%n0K*T+z~UMQjO?WXVE4-aa%hH}&QI_2b*NF4^#{ zHAIpP@mwxG^$3xKZ1jS!tU%A;j3(q@3f6?I7jh2U1Y*sFL$T<WfgI1VTfMBI(`#OB zUghmb_}Q)IRep>w$oE^>Enb`vMEaOp{n-|uc@;icOAZ(272Xc77bWmaV<!bi6TIwZ z*@?N~fR8yc0S=I@8j?_L7yJx^oI}i$4pU6hJb+FyB4eszaPSMyT=3|k)A^YBx8~n= zCL+;><g)&WdJU#McDo-uA-*(I?8Js`EW!TQcNU#-=ECo+)p}!zMe|17XQr2V{ch&+ zdzYm*8p+}Au0#y=lO1XLHu(wkg&+FNI4}}NvU_0`W}1)3)Lb|Xm4Gzg{2+Gr#NiLz zfZQM%PCFR_S)gm}K@7-ROET4$#vul8->QP4-7#Q3o#C&yu+eQTuk$q5%{E2x_OF_Z zJA-FJ(;M`+`8Nl1+`Df6`eXz9R&KDE&G4<7Hn^(ba=P8E{mGW(odb`h`RmEEMiT(B znf)NrxvGDe$}@n_?koBMz^K1)?R-tq%<fz+cL8|ye@<U7*W(;DR{t=NP;&@b(nIKU z3`shL4x(UJpc&_2qNLgP;>CZ}zp~J?wqdw&ZEt=>zBjrU0^i-&j$jYbCZ~pk%;Aat z{)w>WjP#{b<DG8zSd2fqxxb~Q*YEFbY3bj*_8S}AnZ4UC`u_-f8~8Zx`p#eT+tKW3 zG#bs$&g|@JwOXy#yX*COy<V+WYgx7|%eLYuig1llU1J>Mgv5C?i7{Y;3Be5^P11yv z1V~dzb7{zN90wuCLoPfvrS#gu^|%~IY3{Ct77A^z6x!0(TL0hQSs8L|@AcoudHBt5 ze)D_$K7794?*<i5oAG3+5?pi50bM_E&DE)uFq`fC)@6$a#mpR^t`{!;F!m|+N6?b@ zBggn8$0CmgC`+IvCz<v{?~L!f$kQDC1S=ewMy1A4L3hNp=oS@6O(c4Ro<&fkc!mlN z>A#S8tUr;jJr*IJzEhT+pM57;|3$`DrY*&SY&~&54c<w`D@@k`Q*S#p-C$*HkfhT} zbsSY*FJ)}Gwb*Pf{+e%TX1FIEl=cicUeOw`n@N9Zq)=%bdevl6={2KX(Fc81C@U-P zm5>@IYgxl@RXCRmH;8oCLOO5aB+4|9pBlO=>O)?LRdqLKn9eZ7!E&)&pHg~YS$@_q zXT4NVsq4y5cAH8KrHq1$nAII()>r!UXeKk8@aAUh;*PI37hA1G?dz>Vp;dTqST!vS zfD({!5CI15Df!RmTOH5J*Gz@waK&ROGz!WJT-5JwAvjTKlyoQI4e0(t<<w*V6)wWt z;OBB<wQVi~9H(t=ZOHcaW=0A%LmwM<c>p2Kvb&SMSxSdy(fupK&zOHPE^+|p?j5t} z6WkN;$&3&T-t^7N`!+<yi};I+zXm_pg3q}DeBg)Zy;0NAMQL_qN@WPS4)QA6H=^Hr z8mtJAG2PFMA-)L2!$;(LB5p8HMY|-_2tI=h$b9izAe{rY5rLR!u8J}`gjR_$yy<4c zjEmmiRMhFhB$PfgK!j-Mh^7uMo?h5*OhoHCJU(4524P?pp^l04ZMvZa`5M?D<_r@} zj?xRe+Z&47hT`;|?r$~m#SAWO(CpNAP8enudb!^XJt4+ZNd*6fZY6`bKALlQW&_ND zlg%t6LpK|CEX{IWbhUKoHc+<2wkx;pXz4&X4M$UZUDKj<x|b<mb@u>WurL_?IpA;P zZNg7jS`b_jgqkJy(s3MRn0ssWg@r9uO&iHn{iHi+_>g3crV}5*gS!T2z|&|Xtddrb z+j<xp%E+1yy+Z>)VAyBQ*zz?7^zKg_=f)cy2A^dPuN^W6Ed6Pvo;D3Du0G-nSd4Gg zH+k`HRgPVbug4o{TOk63FrqeT6Ri<LnM&Uo7KdT9NKa!}*#$g62qs9QT^g(wt=q{f zAurj7pJTf2K<+mi{ks_WdC^j~r?enn)BP}?$2(;@rA?g5R7Nw^a5Q+Mj?F4M5PG{! zM>dS6Zw{CTbk_-U?kc(mOK&yJm>v4Ua)d?;#zmMhMji&aR?%YRL*4z6R<7WOS~@e9 z4^!Rl&dPkP05@?4k_&rYtk@OPcetm%^^y5QSAN_z0@qbzpQVY>hOFubpLb)P4qxQw zKWo8T^_!lVA95<K`q7TE7IYga5A~&8{L#g?$6kmXAmVPHNL^$CgoiCtNwOI&RFg6z zV(+NR2DK8G<&)ES%%Ft7VKc=Qu*B>t2F+GsdOOo>OTFPUYns!s50^Kk4LfBUHlyC& zvS~D3E{{5CAHOOpZI5mmPmgWhj7hcan677=>5ZGx=}j9)jWLY(<ciH(Mn*SmNV}=D z!`DlfC(@&vx1>2^I-X;UY%GsxZw}I4SgK?*wYucQ8Q(TC)k;RbCQfO3S=F~>MpUVo zwbP;FQp4`ZVmP+B5#8Ld6?YG-Rj#RKjNUcINPTlQt@5=DE&zmOg2w7&9{D8mNW5=C zID@`%R(QTRk&87zTFAJMx2ZyL##)*V;!`N0WDW>-Y0c@5dc6C_?)Q6)dG}MAX}JS$ z!C#Xy&607(Qw%cg4=b-W&F;6A$AB2pziGu<-M{I+Gtw`;rF#=1Pc&A)uve+{J({X8 zucLH()*D?yG59f~z2a(b(m!iPG}yiB1oSZ;VFVo^@C1=`;l(i;5-sWBUdMwcRjaz? z0+9;oK~8_Adm^vdhiq%0ka=(OfrBw0uG|pB)V{Tm)_`p_?OhFRXjM}W8g@i?eT8{d zq&86D1LBVs36YYxJ2I`cWp<+`l2gouSWyg1Pitt}bdZXjzVHc9RSLV)uO(cbWYF+_ z>BZcJxcS}<iQBuUR6onSJFB#R%<1YU-Dj1NwC#kh@6|i)w|O;XoO{x;2Oag3&@!Iw zzE_!lXl6Q}v9$%y)9K%97ylf2(s%m`Jby`M=eWVGc^CU-^6tPIg@ws>BC3ek6Wx!R zfv&RQu5?z`!tTdH092`S;$7-o(BF)y2M(t)9%3^u6KIF^>~p@>J)Y4<w8xXrA;vT= z{!`!K*dM7kBh$RP@2zN3-rM&$cScB%ic9OusvsLoLD9k?D}j)q(jp)wrCf-S*oDTx z6D}GG$_isA6&C#>p3FnBP_5H~CrrwqgL{jMI0Ax3(W*Qn)o;WLm9nT}#BCnBEfzPi zr<0)>Eltz-(qk*|W6y`baU&$P?;3**FD!<3Fj!IEV%9Hy#NVvcPR~mF6H0l0cHC4} zJ7a~0V?kD!VcYTxbFN#;XY1&_`?Gk!C}oCS^VlC+&bL3v+Uuaw?my1@H1ml!+1BR| z3va9RlBs?&Y<KTZjwX|%M-99_AaBBngEwF_vaAmU%{ugOE==1AH>lK_e$cE|=}L{g zHPx*6NU-XO3?QKjoFExGLv9T<e=*?&+63MT8)3@bupwbQYj&Sux?xad)4N#Q)Va@_ zkFtj>#ZZS%xWmtLuWa&K%b+<y3+PtAK5W<>N>z|S-j6T(M`O>#X5b}u5rgcjeSb|$ zCUG~vg$4+<Vx?Gy)sLrG-DS8ppy&lU3Arnajqu(A8`%XFIgJk^))X0gEbd`64y6+o z*$q>2F>h#rXiv7KKZqH6s>Ku=<()^ENW00KWvbmTS$8Cz^yp5DmdrD*E*;<y>sIe5 z*~^HRbi(&USRJ`I-!G$6`a?sXZ0I6!m&eks{I+ts|I^x7u`Tr<pt1^eqg}3VP|mPD zY`WQ;Uv%<1j$rhRX}C-Tc0OYRuDj!L2oghepu-?AXc!NF4W2CTmd%h-{h6|#ODNx~ zBi7RO(lj7l9eAFfRtf@8nfanUvQXM<l<Lrjc?g4U)|eR%Q%ACPE@3$yJi+kpDFT}9 zY#~$tq{oD<?07a^%~%jGIQ1<yple(^Y{IM!;z`4uGQwkI7G{0%fiVG@1g&w6X+6~a zeRq@Nf;asg#0@{9OQiilznWaT0b(TH%(HeF!+CosZ6*N~SPBW80jv^C8iL83qXxW$ z=R08K$KpUza9D0+WRZ2ejh0!@xv{})6XK{Hvi?HWD1Xv2i;gjNz+^?n;d=kodeL$Q zPvF@E_EpuWtSlahS)m{VaB9J0!4-vG+@g1D)(?!4*Ku!^$!g5*UI79rZk(~Lk7_r2 zj#C@%CZhTGmtvoX@2!c<oEdGp0_%uuT!w!Q+ur}jzn?;RKN@?7H#~IVoKv{mN%}*V z|I1(RS#7TSr85&lvGb1W{WZhpB*R3$HzY=r2W^;wE;90HUA#ZG9NWW~3Hr8+A0rLP ze8MPBF!hKS25NbWR*Ix(GE?#4ApH;&m%N3R=2ysT?WmsW|5U4*?|w}!-EpMRxc;5$ zn#!*nx%S_T(+bAz$Mpnw8e`B3s;&G;p>*VqBVWQ73YY<+iyRE?y~mH7OXZ*GE+0L6 zoM~WC&yAjZGDnA2%CQ{#jw4H_qk8*atPelzn~o3>6Y+9IrsD=vuQ0XIK;&15dKo_A zwVn~l9wSOf#z;?85($G0F`0s8KnYSzX8Ur?ERGq8IXYhK4tm1570BfHE6zdJo)e;d zWd*wVto1WZQ1`vZ&MTvdJ08?r-b8+~@!Do1Uv%5rKD(MfEQ0UqUAQ+^m78?^CcNSs z{dZOAQs#{}L4{ZRoNmn3R<x7vx#5}f$1GL!hngoE&3rLIcK&#A;|AIYZ*mvE6?;bg zE%L)%$Rq><a0MuUpF=B##H8G=Of~e0sR<N~#RALH1p0}1E`~FVkTr|>BPBCY6OBYC zB9^B*J5?oKiHF5b^c%L4p`cn?l}^ZQlzNV@V1bNopBw+2>>%j>O&*^OhA={UUHc^e z7m9D$e*PclPPJOCj~LJ0e&7MEv~b7c4;0>@{W)iO{W$v727fHm3qzh=fKmZ1D!?9H z`++DkqEjzE_L%?l^B?#?{@1p5pJ{04x}Vo}Z-4k<=z)Jk#{31wi9Bm0wg`M0_5Zo$ z!{|@;PDA;xCyf3hA@9q#r1NUiv1ea&hhb)}${u%yi-xf+J3|0F!#F;AmFpBub4DAT zafdem<T@@XN{+KVH)F&tqv(0ZMqdL*Wgzr;k^i`Q&Q>?PXxlXduIn|U$2_md;r`jo zHpfBXWf_u#v%$mzw%o;)v&L1U$61h_;hF3<!zj8#$Fo<#T)D$9vgkbrkcr1;U3(l_ zP5j|Tlu0Bb6_|ZWNCWz<48lwL<zmmuw2iow<8w?X{Kx)d__t4m<Ka_3P9tupUE4g6 zKxCd@X%)j_Yvrna;ojpbdH6E#z}9PPL?b=*<aZn|lkuGIJekqbM?3W}T=Khj6r0WB z!trB!wLAT#FsyfuM)4eCeNz|jRU4pLhtU9v8aG<K;EAK@p`9o>DpGkBBZ3C;-E^2r z3f03x357F_s)AKkZFunH((aq1pYC6pe%3dK-Ap)EN*EQ}d31lhx!7pt{O<=$UeCU} zwsgKbee%KD(p}nDu2#-e@oX?`q`kA1y`?PVaHX>L+lME!TC=|RNk6AtTLQE)j_y_O zqc4G_D%JXB62SHui4tI4@IjrtE{qXOkf`M%j;R+nQPPF8G0~?WX_ondHJKfC-(Y$< zOy6ud>1B7y^TVU(-*_mlTh5S~+BOr$cg=%W*Nx$JK8V-e^nuey&x9|8;g`ZQ2;&bl z2*?wD&KYn*8>5BTJC3fNGgAYFjaviax*2HOf;c0?v&`Ub|5LZ0{7?yJF7Q6tdI}6+ zb)OYFQu#6B2fUm31iQef)tMdoB-BBoFva?T;4@lBdjGTqE|Cl6ijSt4$vV=>#=-2! zLzS5~qK8biv|o3_?pLmYLcS{c3Ee^+#@?>G1uL^LV-^0y2@&sfUvPs#(>s+O)?U(X z8Zk1vGe+hMZW!yUwA&TUEw!9*qL6l`HvCO`Xu=(|Qo|Eo+?F=b24c@?zb%@6)S!il z3JUweWEgvH^upV+8Y^2CS4nK#o$bZ5=)3qV<9}3qpq3`^)k@hB0gIqm=JQmD3W8~! znH;oFO4gxDhkh^m6!!2&d3mjH+Bt;&Z1LK~MrrO<&gnv}xwv>@zkX}yeVtqN{U;U| zKQwk_p)h}~eVsj5X<mMLvogo#wey9-l{xLQ*Ijmb(@rjRI!pdw^Ky1&Op0D79{Zg7 z&(t~xF6o(=c+fLOG`p-p(Hj~q(j-RZjFz8%mLdv#DXA<=sW9%NB#&8zG3RZEmfjFD zS>_U6!7+`*&UUL(CCpGdTT+&)?z}-gzI4M4Yo9c$^ET!%DZklVsTBMS+S*&}gSV{i zLk`r~UL)Kk^tjSfnM%FcKHHhy0H269;()9+oo2~2@{M|Xb#5WOaQWiSLdXnFFk4>H zIElTB@hlSYaUIJb9XvTQ)^I8s5K_yiP9tPIBOx`Xx6A5|?z_7GkSG_Y$0zlXR};v% z(Kz$$nFi5(b(MJah(0+!UEG*Zv3)Q6Qn53hgl3xE>(3eP{LIe%m+zRF$79X-ptHXN zrH~w--f(YJj=n#QJ)`{qBuL-%<a7r>_?+4W$qoviDjWv+j=7Pr?qjh}pS`<Kxcls} zX5P^AdkV9Q&DOzTge<GA%FbdlyD+YdLi0~|FD&fN)#{F$*RI%K^#dzgug}!SMfeI4 z#?zjHwzw5asNQ!3eBIf;`w=;B$3xAEwyGV~&T8+{?$>@*`?uP^#}mzOX)kL3Q~TS# zKJWz4_()PPtz4%<ppvlS1sVV=-3n5@7%5Zub)D$IQZj`|LKq0(0>T!yBXVE*0g(F0 ze=f#RswDPPoZ>P(=XQYf%QPAmD{wK4;(*KvATV8tCMFS01|>)!FbVWG^tId}>SLA2 zj$so2=(11M!FsMsju`o(4u{PUwqLrT{0G8~3fF>U4Y-6HYf5YvA+x56k?~msH<26k zj+P-VwnJ=?n16nI8Ofi{!3sv69P>jME3WB}_*oVJ=BFa0NqY+a?m%wHWRj+soWlDp zevYRJNyNp$6r5Nq4y!a(@rmPC2}!~L??HWX8b%=#aS1EOtQ@eJ!+Gwd6rCx209DX1 zb~svDza(r2VnHHl$T(mL4Y+wFD9VijpW9EwgN{H(qyRF8i<Rl-B!aPaWxQzyf!WLt z7wu-lDmj0P-@tu&)w=p>%iPn}{=<=k9cZCzm*5PB)se$~e^#rB^qhf+6qiWX2b<Qx zLnHZ*SK~X)s-G|6irE;<7xg5{!;}Cvf<~xK=RC3C0VN;kfY6XOI#~rxjG2=FC9<}j zMCOFNLzQOCkP~s$AZ#6f@XJtIydj!X&L9&8;W(hBQ6u<j{X8t0Wm{$}4hv*Jfe*^a z$6PKAMnw1Us?~t%=AIY`m<}NPbmAw%7)6wt($@}S^9Fkk*N6z&GIm9Xr%_Z>$a_cz zvk2gwJ2LWhV{nHpNCwkG=Er65LhQo)jSlt>Yk2n)ay#yNuzJAqjo3uLvRv1MYVP-W z$TANFX#yb*7Xe&;=&^IR0GIM^Id{&D*_oSe%1|%qz1;ZVt%U%F%gp8AJku^_Xb9p= zl~iV!$dH?^JhTu_K_$H#Z(hn7Ms6uEM=}1uh62eZHMa<X>t3!y8$p_h8Cmo&t|@#T z&!+5HFd+CE-KmB8EK`jT!-brk)u}@hIk&*{VVzCY$^+$LGie93fiYwjK<Q93mRT4s zjDz_=GH2vWPm{-1QW=Jw?NHfvn86SLhTH4^U7AO#i$_=LgWzD;NQSnlWqd8^>7%2% zC#Ow3f{}v1BItcm4;PVCQ&Uku8@x$kYe7>bhF^X#SBqm(mc+?xUN=Wg@OOsigU{!A zxF=D@TpWvW>(q#giCI+f6U>hyXZca=bJ|O+-yt%(I<nL@bjRg=zrcL?1_Ho7f)9s2 z4SE8KBU<g^1w#Z^1z~7QG842z@Q?lNB4+4f{LKy);EdlQ6q%5WtlDvZ0vwf$-EzFl z`Y7yXM^Z8YGKE63FlZqM$bu=Cbo{n1?TX(o!Is6>Nd(3@zO<P|*9B?Cso3td9i7F? zrqv6b#l_Crj@ndvlX{^xHMO?bC>EN9g60YWukbqsUTVLe%lX0RXnb_^2HFc>r7G|W z1?)X>IDOt7D4>x2bH~Z&J*SX)Wv)W%4OW5iiUR_b)n3|rVlSWHS152>OYMCtuU}q% zePz&f2QR<;^4F)Wu$WF4!)*WtU0xI5t1_;gFwnHT{t7Tpe4NaH0S#g|E2T>texeF} z?s}PV-SdV<8FV(tC&)i&+y{_>?Z#Vn4r;tXWK7m@WZe;u&g2`xPFcWp5hntx@H@Q? z-)LRhNUd+E$GUG3q4#g*8_7Ux<d2<t|5|CT(U@x-C^VXEd^ayU^~dI#?8SC>zc1+< z`GTKI=NpgS^3iWM=9-N{{z(%3^z(I&HF4}nC%O0!l=aK8Ey6RD%B<`nfD`%-a#Wa` zIZ>-C1a!1N(&$R8C5}CX0_Qo9y&?Wm-`g1^Q%^hN8>^{c?R}^31X{Xu6F!fvoSt`l zV?5k{I&MFj39M7+Z%_HY8w%FVxat)REph8@1NBn9seT(tYCeqV#qRGcSi5qaV!h~8 z-+j0CyWP9*z2<s-|IRt2nNG$nZWS5hPcFVI_7(J1`Mw!=@hc_vN@<IZXpwb-u$Cf4 z+{MZb_f5Z>)B0I+d6+Ps#C%+!6Xkdk50rfp8bzS0F#%T02@O8ciNd9@9HnAk+Wh3> zpFT3G`(?tYbbpLi!#CU~{)hIEZf!9clWTuvdgYTFwx#cTgPmU3nl5j>W#i$u-Ehl> z?lbA}RGA6O$IZIuO+L4IVe8iM@hu;DvU}HIc)zi*X<zvJqVMQ4OZPI;kv~_!^^{7T zy-jV^3mXezDXHzSCSGyfN3Yl3nh!&_)V<4_M1o!fCiKoiqp@c*WMS;$KlJ?^w9*|| zCP*zrm;w>Luw0@+kL2AvzX(<YWY^QwR?5>I&?Hh(Jalv#cf!(^m<*upL+U9<Ij<hW zHcDT<_R)jPwd&N_;rE}Zop{xmYi_=M`2EEjA3wOdw|;%xxO}e&hrk}S=MNox-?g@8 zBW)!8qqed3_l6r?f8^HdR8!{B`SUEUJn+poEEvOHrF!ayg%8hW95nUy+^(D~Nf>&1 zdCLhqhFadkN~oOet?o-)m`|-^ZUrCn9Jo8i6jUf`<t=&xUjnfX&4+1%&^<7{5fdUp zrD+}o*UY;#JeaD*Vm4a~!<B1qJ(eFgN;}UTL`7Q7XO~C!5{AL_i(zYK+u{DbC%25j z_U(M=<h*umzI|f;;JMYA0tiQc{;4~z(VLC1a80dp_KJ6Rf9PdK5~nUZ+G#E>Rj;{9 zUpn>rYQ-qcMsbs37ys$vKY*q9M&G-&d4(830JzMx1jrGAfykdDH6O8p!NJ1&iWXJ$ zsMF{(DpOF1B3D8aUMbQ-Q@B`_CyWHs7;<8dIT7tLhfDjlfs#xVB{fZ$NVS-*CsXSJ zLWn|e$dhQ7n8M?&GRko@SgDx7>>t_w7Y%ufi6{;P(8#yR99OLnW78<!Ap4PCwQ(3R z-RcptZOTmfL!{*$=6_=XZ815BC?6~>ZX=M46y+HIawc93V7H7Wo_^_wzyL)bN*9cp z3+a5XoD@<@92GlkO$Thq5xFV1?v%<+p<Ly0i<1?aUTm(4Xbd65Q3y@Y^DCRQN&w}^ z?cx(W4>#fFMi_`>p90IHOtQ(F$C1en3{ligI1)!2fM&KB=VBfvK$|eZU@B5A@Hvtp zA_+);c@#JwMW&K1+V4r2VWDGrL+8sK*caGwi&N7w1S2Vs+)!#1ofV<B86<J#8_gse z454+zaI`JwpoI7lD@K(O3AVzzT@DE?BADHDT<`-3g8}41)L;dU!_l}!k|7~J8BEYx zrr~jsqa%k$v#z_DzkzCm+9W+=jX$Bq64_CV2FVvqD!O%(3ghNc7Kk~3BnvKqv=EUI z5n`%@4PMxQFq2!05;ejtpk3lFLjE9vhZxdOjVe6Ma+Ey;mXJ=S7<f`XOd*Ac)`!)Y zJ8t>P7={*8w?_A&e30PW419qOAQMlwfzV$8I%d<!rmz?modB>1oAe-KSmQxpQ()?f zbUZIMvs_L^pw5Tzw{iY0bYeujldvdM6{IZZ(VR+w<bfa@$wK$+4Um9<d=e(aA+|g` zs1ygRwqU6hY8&>7F4mQf%8D#jGT0S1Kg~b&8JX1xwHVQC207_qh;-YVL!9LU50NK> zE0Ey2WX6uPGo-)p7_uYQsJg!Ps;C*+<?fKUBy{r%O#|kgU2w15v-go4<btTiqAHN% z(Th7tUPoj{@0S{&IJ~*DWGYW1w~LY+%GJGL%8ij~uN*>Gqlk)f;^$^5H+4o5d7A=4 zkBY`l^pfdXHx6-3wxUGqk02S58{LbC;k@`Gp#2R2pZ6|>Q2Ti-jmc56q#b2Lc1a>B zgn{YDlL(u!$R3fo^?d9aFoHkd_YU-okM=z&^ouNf0U~r}I#xX<3qd`L@W&7POANip zk$y-AXX0Vz>V(jzc(9JdL&AT{MN^ehKd7WA#dL)sj!BCwi9J0G@Rm;Wg_he1YusCC z)+J$~Q4$Ip8SB(^TrB&_6)YiTYOnnCcx-#P$x?s#hsvs^1MmS^XVBbK^Lf7RH@n}| zO}|!)TSHmXOa;NEgte4uWh5PWq6#BoFzJF|Gv?Lk(EPPyoeHyrAHtz#pj5LCI2lAy zm5x<>>ibU>E$vtG)oMPsY1128sSG}qQzJun<u+BvIJ!he)bat8DnZILYe8l(gS2wE zCL+$8ZZfrC^Kdei4Xlx%YEdR#UpYW}0z1@#Y@DR2I1i%7Zn{a2@nB{u6=sal0AWi7 z%#5G$vcRIWQEwz^Da;4`omZau(1*^f?C?KUovqbos}BctZ&1K#gPvb7AMG9N(a;|Q zD}wz<-z^{l9_{-W_D-^DMoWgwyt{y<_Wr?ni9?%W!9X9(0wGcgj6k$Wg1Mw(k@$TY zaR*-!i3m_%1mC<xgwtIAugDSz5yYDwL7RaolPd(GLs}7=3*p|GMB0M|i&(y{A0=)7 zznb<dS*KXClG#+HmI2<4?Ldk7%V)k+X=PQqZ<ns^F`yX{X%({*=H9xOC@fzw;raEw zMr~W8(hnLx@NF+NgEqlY6KxuR=B)%7*QhjR)UO(f*h~qI=FOZNX0+s$3@t0j2mPZs zn-4RI3x8z9jI@(LwwRBOXug&P=%c~k;{w1Ma4kVHG6mwKTXmnodrAo+4QeME!Pt7Q z;GN{>>odmUqA^=D7wVOHTZPz5A%D<YxKnT^nc!VNA1ZskQeWt9RzcD+!kj_Vvl^tG z<kuk(^JtXK=!h}mBv;qd=+O~<)B#wf`fdb+{g;gCL8O0ueaMy*VpImT61${ODQa(h z{MNj-H~%-@;6^)fBDVk51Ks-x9DMq~g|FI)1aRU=cKRpK#Xp1_?nBy#oDEe1P-dFl zr*$E%DlwWl9+RU{z+_q-rJYeJ3ipdR73v5Di7!ws#yc`NdfPN&Fg|p`$xc!zBTkC= zFOqP-=S|+gvJ+<dllY}T;-IU#p37Q?3_YnE9&%eFo3U!9ca@t;xxW}76Jm-q)SNz= zwQ&2Y3RJdlY{OP1K27^&Q2&2`q}s0y-$MY1^nHHfCYfB7y2;2G+SZ(=k9NP{1bbX} z7uHI5g?f0Kr!h>Egw6oJ85n<^=^wdZWcAx+)jm^H-FtH2U*4vV0;#Jxx|hnPg#Xho z{_x`MV66q~v=J_1nHq~`HtMJh@e`Sf5d@b(0<i{1KkY?&8ev-dp}H7M$UH@Fk%~fQ z5kQ@q>yy)lB-BoPXY0bk)~SX0Eqk~8S@+9R%S1REJ$m5Kj){>G>^eus4z8|l|IX&c z@7#9VpJ=O_C%y6RJ2#AsY)ETo7n<L!&s#Wh>P)SU?dZJe*3;U_nN@Ae2-a{J-}{r( zubW-n+xX_eg+l(&YHnuswcY<dk`#>@L8=66_D(Q*OZ22%glg{<l6hP#k=l^12r$at zB?KBYuZ;d4H;#dNsQuOK!Gp8zuwAqV4s5IZ+&j9rb^jEH>A$RHyK5)wx#H<xf8yJZ zp9i9#_Fc0d<69$0YpP@HY+km1|20~F_fIcf(B0VZ51CJV_lYM?Kl(~HW321@KZ(BI zN2)#@^>nGgsBDn_y|N{#^hkY2jWPntv42rS<=?Wr+zBkZFkmgUOMka!Rc2-?>hJjd z)`^Xk)b;Ou?|*&oSu^jb4afH^EF1%PsV0qWjroNI?d_OD{51KRSMv{;@BhXlkKFX` zWj7Qf5xy7y9eh>^&3B?NExs4}WT`7tC_goU>HcJ=(kakO;;9mgTu_+Op1Nge>6WEu zPShVf)jjp#QLT9AEe{^;e(%AX-$AS?<I1THrEULW=ED5^g~!joG<RWU=EB@d=dYJ& zSQo#5E!9w;i8WQWuS9#zAj={eri@AO;nCm>Q;fk)Aj0X1FFz#e_UO>`&$gh}BlQGj z4TLWcC_*_dW$($u)J>teg0GW-<wK^qWTH2Ig?>D(FXJ>!UpZ;VmYLDwE4p^4oRwo{ zmm_Q%<_hF*xDf@>vAcvkX%*2I*VpwypB(-Mq`3RF;o+}ADmveY{&lza|Ihd3xc0;# z=BUSnAlp!$#9_x=?ZEX9UoX7<-=ZhIk8zpodsW|Sp=}&yGFhD9DSB%lOIs>rutnTE zZY8K4;SZVXqJ<4slJPkq3nPpYC*Y5%C<z$Pf+kS8c&Z=Xm|;E5YH6rV&DGX5_uc3@ zEoDBkI9n@ZHhrX1K0Mpb1XvOY;TDndEiXo#Etm<%j@P^-Ob3JmI5e~E4~W+=$Zd)6 zqQ6&r<<6@!=@R6EnQI+edidri@7=E(mDRnkKNxP(j?W+W8Pj>}*;KZbt5UOEoVdp` zM)DsvZSVMz8D#I*EhBs;zl7t|6SWa6@@&2S`MJ^gky7%hJBy8DbW7xIucEGE)K#3( zUckBn(N=!}IR@4$K#|dG(s4z-8ie>Nn#9c>71PGKLGPgG$Yqd~Fj!7Zp&E)OQre$& z?~5COwj3DUlXgOTgE#06cJH$j71u)Mh;_@|y?t*`dxM?mzS~4vj<xV>eP4atvc6$^ zo*g>Q9j^QMcG+J04f#DhtUZf)Nq0HI6v!O)0mj&56yHIt2n%K4QJ7-+okFV8MkymJ zU!@R*`YTMvlYXU`n8K1hh&{E|=WBQPek}U?QgZDWH-5s`euaU2*pD?e{~B-2@-_Ka zf9GHL6w+$77c1{3V)WM-CR5}({%K=u5h*fqWsPZ%S$n)kuSQD7aT)RbVJF<B#PN#S zJazodpXvVNXU<+Vb?d!<p&j^(d%K^=RVule`5oQvj(PRSQsFnQJOA8s=TH8diKWKx zo_p&5{GX@J{jOhu6kR@Y<&{LiGkNC!#@c*=yZ5svzFkt_K1ZSM;;m9#A_C$urnF1L zjS|anJj|+w7JvWyUsQ){pYA@Qop@nwM7!fr?ZwUJpM>2%*M2GaZS%xOKa+XlVfE}6 zKlQ0@O}npqjrQ2<KVLL*U;JV=mhS!mf$0DH<zM?+-vBm%_r=`U8J>3rY55yLnSQPB zyM6xv&Cr)*j9`Qk;UX9@WmY~$3uGSwWQi;`EtV`C-vV=qmmd;GHp=|=s6*HchN6s5 z#uY*j#-JqOJr@PViDSV0@{}UDkeet;cj>-p411~iqx|Las37af2&xnTAM$EU_vIcG zP=<EzIJrA<j&N;M7TFhZm{6%4k+eKX@5qWd==-LXuWrwO>l?n~1fTsf28#(Bi$X{T zV`z5q_RALUSe{GiHrQ>IZ121I><x2`1oPd4K<doEOu(CG20B~fIQnnbmD#y$?v9xw z^CReaRIn#->~tLnwqIDfb?>8>uP!L(Fb0K(kpS+rEE`8lwd2R8Gq2fhVpE(RvMcqv zyLj%-j!x9C>S<heb%*T%2S~<8U%4`$9Vu*g^0(}8V0BW)-0{rJN@FX0GGIW{3cX_= zH_TO1r;XRVyJm%%A-7tq*DJ*gv%2=Yt+(q2>`*ua)TZG(@wZq5nSBs)Hp8=aZN>Ku z^<L9U#?5p#XYGH~!L{f;yWA}RLq4ah(9XYNN88XhOzzGLO_tX4?Rw6vcXkvFulogb zS_^Mq(ZL{&KJlP;%BUWw41MILV=Oj%N=4m?<+n)n1sfc_R9`6>?y2)%)KzsatUyO) zZn?TzUzs=>(~mc<YZ-o;cwKg-v3>M*Lw}QAJ-Yp=IuAF4!H?3<o;$tUHm#+xxoeBM zl@6`qk<O`6YygnSBu8?UYAbus?YgmhC>Y-R$f0o14hy^5TPqV898Kygdg-ctnQ+MF zVGb3X)WEorG2^C_raFhLqMu+$_V}%P(OK++Cdp$<yd#SGO@9_GKpePt3e+AQGEo*M z8L+qos5`t=L`o%?sxY`jHeMnJF-m^yec26bZ_8pXU^tD~<{VDev<qKV*~xPE;ZjRI zvUWpdO#4YT>n2q9f!pkaH^@)opVZ0Ef);e^7k)46WMo6VdZL33^fx5n>)P*Wec8&O zQ9<K**c<vix$5_v1ol1AeD(l#$Gbu2ooB_2y8fkQQ-<a`ECku7phJ3cKL#+vjF@8m zLe7I+lLe70<yRO!s9?SonFr)A&ae1-r9yg4WHi8pI_}9^rH<C$+Iz9ns4KX-*^HSC z#{;W2(jY*yI}C|{h=ax(a!^3RwkL;dBt*h-^{bqv4}ds9|Mik0wj65EVdPREToWEL zGs4f!i4=v<LTZ?`Go8_G->wZP*IZ2F<|}6n7rpVzk5o&D)7sAT!c;C;m_4;Q0~$9# zRDkPHMOqhGooH0`eg|K#mT4zL5yw?4!R(P-9+bmy(M0d-4m$nHMa%|d*wa^t<T$8X zGo#`5l}diLz41tuxTiau*}0uTere{M^dtS^T3<T$dG#e`^cnm_onmHfO8~@ZCey`4 zu%~svPlk{xGUbUkU#W2DU*Ig$TVk;SWQ#1`<&sQUNMJgXDFND*J2I(-a|#F*rf1^y zF`kO9PE8xT3&kMeCe2K%nvL1}cfmOfy57vZss0*A2q|~-<rvk?c<!KST634%`e?P4 zxwd;*HmiLGxKsB#bN%{$bgf3#)4dE7PSaBj)tE6_4P>tjLzTU$+L%;ozxFz{@<5^B zCBvi<?%sdnOlIZRi5=}HT93?YhZ)HUXUoGY%A0?r<t0sH_VJa>%#HhZhiiYD$!0Un zZPS?@X&dZBy#y#<&+T*TL*}b*y4usL*c9g5@oQCab>Z;%3|8vG%l5qlR_jN7@9gVy zBTy4y4e6Zn7MD!XqC@|b?j4_AKP6OO?=23WQgE>Aow6c~8E1O5q+El>LAo!ggxO7X zu%C<a>LIA)y2;3?fXoBYJ8ZTWSAH%x*V$XIk7aG>8I0j#go~^qLEOK5{NSPI4;`%6 z@!Oc$*xXQS%`VQ)l$!H9=VvSC;EW$+nkSb2_3P7%|G!uJY3<7CbjHT}1ojj|wrl4H z?O`_owwzu{++OG~I}C^hXb1j~i!a<r(1;Y6z>8QXr^C@q>t|QHgYHi+H(q|VoA_6+ zj&!>ZL$l4oRaW|T_Z{pzA#z712GKJVjfiQE>QnkJNSiGh!K>F<X3@xlf%zF<hX8S% zxs&O%H<|YA7|}!4G`PNEA=26h>gmRgFpa%WGoQ(3#&_=T;IR*x@gDJBXbjI*(T~nm zHEV4qoY)^uOoZyUdmAsVecaDxef0_unC87Xe{dpP`-)j%KYQ<un&%BbDtdc6V(y4M zXUJ`7+j6y9F28xRc1s}*HdS(rHYCRjAIv4y0m*RfV@9m<n4eWEV4-qJ8T-()eb<A> zdn5DjRWkB5bXH~QTTHMMAsq-JBmzAZg=~_Zi$okp;38NN*Ek|}fj*}nwix!kS-L`x z<^WYooOQWcdSt(lJtUTFWCD&oKQa8}*~@crGhZueZ_YGkC;gjmPIb0z8F^E_kvGk; zrR`rHE@&zZG~`t~_pdf)jfC#UW*e*fcdi2I$Y{?8W}6APQJPU+F7$_C`rtp3ZvH^G zJX;DgNU+<D(|Ok$*r5G#L09i?q|97?z|J1ltsy-Kbf7MWGnO@;GlMPf#<aAU#W-eu z_JC4L*IMSuC8Z9`&T}a1D6_VwFpb?N-4-Q=o*&5?&e!#9rnsku!p6vC#&2G)&x>Lo zW>T|pC}k|fk^{H{F2qV&N!!)^;se^e_T9DfkEpji34p(&)nk2Y-|DWZjotsEy8jrP zQ)@3NG7?_?p4g-4O#8u(1aR1WVTmcZf=Da@vk__~fasm+sS+c<q}{BI9ocm5T({rP zfGfS{g$M8YTDIH0r~QiV?`xm>`46;`yU%GC2FAOOJkot%#n8T0x#8V+opd(dyFa_- z1Ks_-egIzlIcSLrs1!kF3cxLr9pn(TGxtP7HX#~BQM*&n1dIcW7npkl%Qh8F`aO5| z;`|3ImPj-cd*qb!)am4S^7K>ADHkBY|GnEi5~jn|b0~%EbE`kwEa9T!=r3yb{_7WA z%A@<Oe|A|f2W^{NES{D6@JS#tn>YyTEIwbFtZ&cqY_hP?#e3bnQVx4eHWG^I3Xc&j zQIReIvwoI79%fzSgalI5q!CfRi!o3J!AV7cNd!;p3$H#YiVErP=z$|eaWp6}uh%-h zO#F0xRFT7QxT#Pka4{Z)WRW?2n(@SJodT;T5j07|c{x<peqxE4vpKjCLOgC+@hiNc zr0WLQlKcK+2p9w1nQvv2`P|AD!%SL^l^p<4@;!VazEewoYwtwmQ1)Y`Fs{ajog~^u zurqk%1umBkvlV|ZY~)i(h#C_!WUTD>=eER6U#xN<HOvySywEU%k+@lKQQ;K^?YxWD zZKSlP2Jn6>6p%-pTEnQ11h&G&x263t7&&aAP$>>z7(8HOyOVT>eGjKx!$+Kqol(wA zr?M~f)01X89*5M_HgvytsleU;)0kUo9{hUBPB@KW4>v5+qmzD#mB6$X8@ZMxG6vHs z1rA|2fd=As2CY*qTbsdpQdO@9egy~(&tIV<<^+Q~XE4fwT2)TYk5}rmmcCe@fgLi; z5EpfHpfHotvtFneb2sB-<p+!biQHHb?>uyM#sCsjniyPTZ&m2DMV`hEq$lXBq<kgx z)PMQ()${K0LSvy(IPT8h@%FbTjvaI7=FVKR++Iy)Hahzg*M}Pcf)pz0>l2G^WyF6~ zds)xN&OXq+X+--#Bm;j}>}YI%|L?Ls$!$e%9!IASAv;kiR%SI~ueLDD4qHe(qEc~^ z6P!d~)}Y5gXJEI|X@&GPDY+2C5h9^UswOL4S+a?g_j#?wbj@cPms^;RqbrG03Raa= zZPYSyWAVZliZu+{{mvw6aGB%92iR0}NplKXyNy>%OsG-M%Ob!j0HM5D3L~w&EVA@^ zH1Pqwno%Z5hBhllEAp@{lM7363;Y5P!;%9gfg?dnsC&GQNnHbc0T+mZY6o95MGb9- zR&K;1+a2!04Vv)@ZqNh_5vQdXS&Xz)PQ~T1D4|>g;+29%w*jjf)fx8{fIv}_avNBF z!S(kpD7SkHA96UU{&KO&eJ0|(;Uz%SfeZm&T<O&t8H)`o90v)@O+XFhT8yV>WHXc2 z6dVWypU@Fl*YF{7xuBFgm`9{gakXlCR9RfXZ0qwB;t5J@v7$#00fMlk@>mg4p))xf zL-7H*(JN5V2lv1g1`>;?uA=@ac04`Ygy_U(HCc}3d3(r@OX`(obcv9g(Hpd`pe~wB zR5W-bgQPF;Xf$_Io)8G|R59w4(j)Pf9!^T%K-@%!V_`taLZwjCq=l52Xrtew&ZRd= z`?lzuT*I3l0(=InMf8@YY2cV#>QL_5gruO~VO&o`O0QO6G7zRj=nT*p(gXdDbYJj^ z0`I2nAWMRxIGB^_!Y7IHLDYz^^+|D5N8glg$ra5Gcn;=oxR|I*P5=(4lSQuXV(VAX zIZ4hSV~_x_-bH`o(&!R?WDqv74`N`z0rlQfLJE;4dYq1Q4)Jyu&>KnAOV$zv#`IK_ zk(3#qb@Wr8j?QvG0i~3)DwJl5`dNHpI5s5|JoLZx22x8g(PJ_+CIbc|(*T#m5RTIQ zrFENfAy)`khr3I6Q}XDbTp}0x^tttZ6JdQ2G)ZbYGl0e^2ny1I*%nNUJXqL@`V1LI z*^9USfSxP^f$lazUuE>r@8Yd6phzO9MqVq+S-YX8Ao!3h$ncgVKEoQmFNmj_ldzOc zf!ou#qS>RrL<(Gbl#CwUaswE4-i($22w;;sqPI{kyev$%J3Dn5rhvzy^Yr(eJ_+!M zVpE4QPtg!8&FfPYgS66)rZ=*bDhzWv(;$t^<I-$=Xzl1bg(rtL^Ib2HfdKJnb`C*n z$y^DBHg+`9vkIm{AToyI00a;m1s~q<>Vm(3#*dP*3K<4lKx@#wI-<5^sTEL$q<3Ii zxdx7aWlN68HBm<V3D`xl#4(-#MdV&`nlq9tdLdHdU~~xE^GXD^kXw<Sl*k|?Jzst( z1}q=PSg@nxE+IMKAh<7#Suag5Q$t`a06uVQqa(g&TW&#23(1O?pp>FRQNI1?7%*ZM zBvJ3Qq`-ohKMFw+a8xdNuqS@p*I!b5y(Ds-ftN$rKguI`9u=43*g9y0sGuYzu~@c~ z5oz>+C?6?#56?ml(Y^VLKHyH|O2@`6BCr+SJd!*#&v7ZKTul{=bpd)3+@ez=fwz!l z@99XXs@W0H=bAjB)D<5l6+-7=gGxEMp4_6Aq#lQcq>bbw$H+>y*p+;uXO)xDF*P&< znu>dIGp<=LQB<V@@{)aSz#rsEbgh_5b3du}^;d6;5=k9{0pRQ~s-E?GO2z&(*C@$P zQ$>v~1(zJCJxM4p$|Kc7NB}w~Eg;2`-nRbYSj+$qFI`ItDqs2KF5HaVTzFd}Mn8&< zQ?Jou^zx1#n*;RUUcv|~B*--}35d=zXe2wTgBSE$gyg3mNHOI@=>Qe=01h0Ga?l@W zyO>MkNQaTWP8O7gtHG!V`Y3u1@`y?r{lv+OOT}=XcTb^@)1as?Nat8D4S!K%k_XLe zn+${bUS;X3R26#-#A}3%ky}JRv{e#XQk*VGi^#pAm$VQKq`L+bD5s>7<k0$+zyl?1 zR06K*W%UCNv9*rzTF;(m*29zxj$W(rYxd)IK*pDtpZv7DNeapymwN$plm5>xV^2=- zit?lLa~+k@gTh6fO=<*v9@j<prw1@u6&k&3NJ=JBk<#A1it1gAuM|oy4;<lynUFBJ zkOU-@UwION=0%m#>r>oGW(#Q-Lwc=vH4vbgL<G9@98ve_4PyphEJj^3RWXRAmE>;G zb4YW^4Gb&leo>oAg7uEYnW(bCHEx}->61KL)aAHdUQr&TkXAFWEs2sxSJ2o*QRt;2 zLj<ivqrhlKO2|zqfQ*t$FTr*Sz)&{^Y9mA?l5$gOWmb!sLUw@3!eXwKcA-)DC*$Z} z8a3*P(z`AA7(<%vQm))fN+4A)Wt8Fx3@Pd`0v=^VQWa4~99_?lfBLs1Gi{<sQDdBt zOQmt8T+zAS5osW4RW&62FlrHL+$aT?T>9r?ISH&!(&PM!)?(vQOUXgfaxBUNb0ukP znOdW}kfF%ULBpclAu0Z6DKqvua!|_Idr5DX3gjd%qoN$7t3_#g$w)1GGK-MT4pTgg z6j!QKQUK<_(FQx@^zxhqV9NQZuA)_m%VmP#STt^;wJ*viS_+wDqoNV>C7MpD1v-uV zNCkpEU6$A)Qb3u&-hQ22Y4%LPxCMRRP%Qa!R8})N!lty69E*mL?9=6_E=oc`9Vs3O z7)U%lx1jq-qsSHVtWh(_?b(RBKO3@4#>A#b<aZr(v+qZ~A(0LQffad-F2iX=nEIVs z0qQ6cSwdJw2cdi-cuL`)?Z^C9sXJGi+^}J?q<yK>DjhULY$!h$9^rR1DVys3)v=F% zT%d^E&GOsZ*8W>=D(iPYEf;9}<@aaXluG1T-;I4z{dp9VVPhXAAtmv5-BaTW&xM?o zaz;x1sdA|h*=Cl<g*l0%=tp<u$Ie{%J-afhzMS1?UHD3-TpEdO%aqF({zGh=b?(;g zgSVc`$9@U_4;S7TyxyA2mP?~^)<>$NxoS0+-Sj$3efa3=>hY(o1GO3=Aj<Sdu`g)< z6v?_GN5@8d650?&EwTEL`tY8FZpSN4T=+IV$hkx)#;<_*p>Z2R)#_oS;@zUu6Ygtv zWf#xj=7lztrPRW6Od2!8q~TOM!Gwu^CoqteqzDK@Fd%6}+TGNQztXhyZ=L<_?YdrG zIjOy7_5c&b74y>MbOw5cfH<U+NOxZ!p>l$;8#COE+081Qvv4GbxRK|&_{P}r*bxvw zeQgl5sSX%g00^ZrZuWwPcCZnByB}>d`2I#G`$8u3Lbjv5^U@Z1;7jTYu}{Zb!C)o9 zPD*t^-NO(}cZ8wE9#(isahqNg_924erm!;VOn;W*cHWNnLZ#ny@+(bW?IohXv23k1 zGuim&Gll_Lx!?En*!aOr-EJD%=TzobR&Ku5E>_-icWILu!`sm2%9kHE5KGnDlasYm z-J7&$wwRHR%Xh}U2sUgK>#QyKH0(=Kk>aRhvV$QIfCF&^Lvci#kFFn~^Hc|L&Ll~4 zg!6$@5^<V}8de%tWNXsG7_r9Xp&}`!{Ke$CI1q<@nGWr2eoA{_|Ml&XlU?02kPRv) zyKh*zHmId!SAFo%_U`GOkS4#F?*78hZ`badU3=&g;+Jw3)5y$7b9m=K=H&87$+tFC zSQ0Wxo@^m->#c*ihHDnGd!4|;o^k;Xjwtuk{m#O}Q{7wlyLNV9&uTVx|8?4ZON3lx zXRW+ldtl~O+4S05jaYHE`-a)ol)42MYQY|J4v!died?_5WUEWng04mY-|OD;&ba|E zQ@b)>9ZDNkY06#_YaIjB3VK)ZJyAf`H7MS`MavN;;hvJyGWO8gi9nKCh&*(OEVQTZ zlPW{PiROxSm+GWeWfv9_E?xU{_j~wYcno>?`^*HcNVd(p&TzVb6QsPR7HXmbvTV0x z6N_pdi6g-gFCT9YqG5EWTUiKCvvk+WFcBQKX>T4$bPr%W^)cL!Wi$J{Y_63LHUenH z&ejawr0t`2lbN-kroB9>RUr+V#!NexBaTtux{a0CT2}CY(1~KeTtW1ghoWaiIWDRm z6yq<$7R4i2Bx11j027^;ox=zJ&)$MWLb$~&8i=DzF=CSHh<ss5$h*i~ybQ-otq^Ba z&N64vH-!r(89zPYp#V_@fjJd>{K8xC91(kG2Bqc)y@LRM4tn1oOMYD}DEXQ8qeH&- zQn&cC?|QnmgV_;gz07DHhm`5yN#+R?G9I8XG=n{07Of!~osY5xsXU>}U>3aOhXc=1 zcVxPHCZk=*EcyOH&-*}h!(ePI$VL0zCp$b~XUXGU{@tleF1l4Ho*K8AgAj-iRgf?& zXF|}Sx5H)v%L!W_5({W_EaKJ_Kg1Fns_!Y*sZFd{3G{GP^l(@7_2Dt8hzJ3QlvuZ7 zshVi9iI#t-n9aw;dmI+7lZ@bgB;u+q=}_7W4gj$mHH%b1+JaGh;)Hf>)6bkgRN7rR z_~Cn=%#JBlOJ%47J&8(Qt9tl`z=f_m4t^g~u_4=PM;6#>Q}-_I_D_7Gd)JSC^pl@x zw|DOv8*+Y<FUPvyf(ug@U=N{>@hEx+27T_J$~r^O`-BYrhUY!xc|2F_;>EuEW1mrb z(9=w?3X889JSuIGsJToscmy0nA3j9@QThVvVDVt4ix*)DbQ`;U{@LBvUqAmJ=Mgmg zbaU;OYP)8))M}0GbDOW%erNSu?fUC$=T?=P*CesFd+yUX^uDzDTeVv4t$eSaTa|RH zl*zpKmly9;zY8wgVhq&L?yVBt;mv(_LM}wgy-vlDkUo?W#}J~}>m;3i#yK@Ur_10^ zZWXkAw7DzN`lmu5RaCjCo+Ux6+|!?gJ%u)sT~Y0EZi||Wu{NdzD3t=jM6Me;#-Hsk zwazZjPhEf2HZ6DeS@h55p{)zQKEJbJgu7a;(8ciE#_FjwY$dBo|DI7=?cTYZpTnPT z_7!_Gc3vy}@%3@_aDD&&_r2oi?cm8@**@~n#|wMay|&pZl!uL>YN~kD{}Zzl<Zi*2 zygA@(T0D}>&uPVPe?7eIF+%;>SNl2qcVtI=%Y0o1kd$fWMvAVP(7vaPOt#+ITh7*p znWS>LdTKVDUi*RL3}%d+3pQN$#<PKGG~1cc_zy!H_l?ekX;d>#m^E(EOII`l9MwYh z7u)mB6W)R5q1A)i8@AOs+F8ogPj)v~3lPAYrvc>(hVUPtg}%W^5N%susS<g>6<KdT zb8u-IxfXN9M1u-M{uLb)RUdwKCU^B?3tK8ru$ud^kM8S!DAO6~erO*dD?Sgc!H>D` zcOK-}L%+?jXSG2&IQXo2;o!bgr;aSJw{YatDNc2Fv(3*}at~V8gE?s4|D@~xN!cIH z9ok`8I}XW_<x{$TYFXKj<{FJs79)mI0}lt6Qi@)^ZyRI!R~gMa@U8WRzPHo&TTFrd zbSpzv1p(g0StHg_aN|NpOcN6ir4|Z9`V(;s=uR>!I>1G=u^4i<Ifb1hD>*}(NuZ2` z(pmpgpgj>OhG2itF4O<YQ?aMbQT+7h3NzLH2li~)b6|gCS9NGCh6}kImTYl-XZ2R? z_^s8Qp}Y3|ppk9kQrEOLrAkE)9q>!RK65y}Jchz*?a}ZZPhD5Hton6N-I+#2hqDMH zEcuOX_3Evi+p6`>R=>m)VrR{Bo$ZcgInB+sr(IF2nU$f!Xg%9Bt5vgEsMqawe+@^C zn4ZR4Ei-A_TG9wSTw__X)DNeajt8+F%Io$pz}sQB`^Se)*YIz5`Va&m(<TZ4=5tdc z#4<XxQiuVWj)pJN*K7E^zYCxDSI~3%N-Q05G5BN!lC{O@M`=L(6(xi<3mm7lkNX3} zsI+q~E}8@4)F{nyfX`UjFDL%q(=xw4^ngT>#Ge*65-AKrzM1&@M4?;Y1I_hMeS2cR zsqUx8y38VQ7aOKKaTFWeD<z|zs0xU8Qv?i}YC#jCSrG~>n)L!YGV;~Ae&&p+wiZ;( z-Rha}kNWGTJ^u6o-M*~*KXy)-^`w`Dqq0hi-lF?kGxb5#7}m-`r6>LESFSA04wnYs zXy;Pei;ekfmJj-;%;97ERjaY*Zne6stHb+0Id503Gq`j%f{{X@<bqnn7b@fH--1oA zh|hMSh)^W@(Yh`h^W)+Krcegv#{%S-s!aEs9$`Zt1F`@7w~s7mS;T^IOc%4uN4^c) zpDJdq{R<uAcKt7|%@lF%tN!>-ZT>xYO8lmaq4)pv%}2YRyCXbSUCft<KL4h>7PDS; z@$NT$cBnMIw|10qavZ(l8kpU85pC{+cxeBRjFah!BK229hL7f>J&oIjVy6OSfcphd z;Bi!HZIW=fQVu58kBUWW5rqJN6olk$fK+k{t<MDUeS3#FHxclx@d>}k84|>c6L@b! z-5iJd6`$?0{)k+=GexIiEVV`1JVu>BkEA-&1R1K}-poki(gk&nf(R5oF+`IBJJMr2 zAn!#?NFR@EESdHq)*goCl1NE}l1vpOfZh;ye!L>PQanZX`21u6YSaud4mG?O0x|^x zqf-d$IG8jD5o+S%uMS~d(p6Y4diIbBO@hb$uhJk9lN@nE67`x_#EvVZblik5g@MqG zUhvesM8w3qS7H*&8^$|&At#2B!h#aEKd9}L>nUN~Hmf*WeS6_qL;pI|&G!#{{oXh( zxyKJ{R~i57x@-TqdpSlc`it7$H~;c-dWg{&VHw{IhGG{qH9nD`sRe`?(U~zH2DXxz zVo-*$CokN__>TQ@fLq}7h3`PL#YRIdwkv(%9kTtl^o6H`Kz%GEj|jtX5q!=cL^d7U zqnKW+eL(27o^1?%jtoL}K}ZBIH$K@ZJZg`U6)kLGqK8OIL~K8VsW9FzyR`Bzj;L>D zOQq~1%X5j*#MoNBzPmo5{%fKBh*+yULNJgz5Hj`kN~f{(t3OM)^s`Ov2c^+kru5-6 zc_*24v>glewZ9bA_aAJl)W{=K%1>9i`NE9$NPFqeUY>OI<vToPU;W}c)mHdEsKtol zLw{DTFp60=gqbr0qlC>lyZA1nBNrGjanwnX?vfEMdlkW7Oik0nBa}tRz*E+I+RXrN z@Z+Uhs{5OX;SEZISGDvSF29AY)!sv|P<caDp#JC;p7M6CDz{K<XKnlr45ihZ>bo!{ z8n(OvK$m{5bFuHtnWi!lIH}&xdITLlkn;y3ZA-P;SU`U6(V_2eyk|dzbEblCPTkl2 zEEFSs=T7E`{|-O)T4Ff#^|#@`+K{=TL2JX3GRcdR58Q{LO{Ms>DksEuRS%p7nZP(l zyJpBBMz=<cUpXUnBOy_6q~S-k1GWt+4TuT0K(M#W-AsXazJ#QM%;N$`xD-1Tc$9ET z`;xEcBLUu^t{3q}4ZkJ9?m-Q<O?!;kXU7PNHfHYx9ZNvxVM&bRB+o>ciuBmji;>wR z;?4a^|D6y&?uL^eGJ+)I7U>!0;Y8H|u{DI$G7JG~nC2_v`8^HVp&t+2E5(CNW*D7t zBmJu@@O*v_egYten>>057_0?Au(-3>N_3cC#B;uCWh&!HMnQI>{8_=y3W1A-WH3Zc zm++Y%GJweC)_`V+0DvJq2dRIp@5+nsQiIUTOVoa^`&7U)(0hvLq**^AA1hn%RV{Td zvMQu$VsL@JSo|UPsygx+f2peJh}sWvWTR@rK#2T5yUW_A@Ga*j)Z)_eEz3*$Rl)~b zyf3p0;5~Dfp?LH$aZ#mxRM(eyc0vd&7!DnWS*iW0owzR~Btq#>=gO7o)uNRic0%i+ zUjeU-if}pKAzBce4V@0`6MgEIi}z^Xk6p$rf_YNpI)#}6ixeJ9OjV-ZCDM*)JL+3_ z8j)w_$plXVHh@K)ukf$*A<#%H1@tL2{!sUR!0t~+Umz;sLb;;dQpCWjbr1HkYC@(` zdO|Fd8q;gy5McmAi27L0!@Uzzx{DF4pYYLvn^@Na-^}K=s12ek@%k}r$OWS)hR}5A z<xBnO^+>>qBB9)H;iRVLH`Z$C4jr>uJH21WU7~Bu-Wd29A6Y8>&-DoALBI?@xM{oV z(0%vcRs#*JJ6zMs)yDg=*mi|ArTweOL$)yf4$%IPEL&m?q@>hSQOE=l5cX8Ttc;!L zEAk_B(&B-f!50HVvR*ULKX`!?oi~-iT&2tst_p@7*ko75QeI(@NaC&;uLLGVyba^D zYs~}ZZJ@Gp#CL#mw~Bf}x-%xej^3Yei+YLZ(3bXhEK#xPnQeA%EDtVx*kS>>%1dIs zR;c-tu6vMIvmI_^Vx+eZFzmY@$LPzphDI}c{q~M@{{(>B;plnA-_f7NKCS)+3(~Fl z#EsUJWWPY2#D3b3Pho7|5L*=vF;g&MKr^wZR3xZNNrYw-mFfPFg+~rom`M7e^Ln<J z5DO_(>ixZ#l1Ai!opdAWfKdT*ocyBem`D6XZezV36i@iO>eU@a_Z~o9T9Zit5y*e@ zGJ9Aof^^)dYJaM#(^c&eFRM4!_6E=)+G{GKqm``oiKDI~mP`no$MmH82}`Twn$9m2 zhpL6~`h2VM0b=MKBEMAlx~DVsg~rfAMbF77tX8u^X{+?`g%78~Fm;IBvK8Wgb}!zq z9tJPC3F(A*s)@K+*mMvD0%TxLrSl7YD`FoZpui0D=wR84qIp6aLsboHYL38rNO5x& z-5}@>0b$(cLf(UI%<ieQGJ4AlAG`hZ!+~x;X%XB7(Jp>;a`s>_YUTY9pBZW<bZk4H zGV_C;iHT0WGB<m)bmCR*dT<%|)58Z|I)iVE701LD0ab;iR&HPs;&;(6_Iw}zJFt(X z2>Td<XsaO2?Z9omg5EBRM}W;7Uce%+VgKyEFCq@;&;O5qD4YM=%=MF{(d(|uX8D%O zFaN#p`sf6bcscd5U-icB+XbSm@jIbznl7K8xwF(Medf;6bon{iQUlYaJO5XQ?{wuI z|C@hxUm?8kcVVFr#;mX)@}!GBf7U{46?wK<u^dnKln6rCmtzrvJL=6Ce=%Vr>;31) z!FkiCd!0Up0~kmq@lRh7VH5tZl~@(Gq%V_SLv<MPtrrfw;SC24-g@i7`PUrXy>RrX z_SXkbpFSuD*;$x>&1*hW%|)IYs*8`{Gu|-nT*V86^#PlO=m{7b%<d7+63*t>iOozz z+O@Yv7azQ}`*@TeS-`LUi(~2u(PQK{Z6f5kYvLP45gp8oe=u7ztye$k5-Y&9%omwY zHS9Lc$UX=@sP9<pS#?|AIK5ezAexk^HW2O_60j_jch9<3s!J8e?6*qHRwl^SqCZf} zkDXMHE}cB7eZf9>)A?gUX)m^vJ~qB-<>b=-laYVr+tpg^6`I&V!afT67m2#Ku8M** zAO+}s7${{#Msuoy2P+c7xU;fIW3ZfxEJ@z7Dv9H9+<r#GtcZ{!63pXw7c7>X6!4C` z*^=HV@dZQ_1>|tLVu+T4vB_x}qU#^Tt#T-GgETFpcDe(eSExlEeT?WGvVnjy`b+gt zyO{sMTR|ya(gTqtQr=Ema7ewfcA`jG+|M_9Dh1$YoMO2sS9V|z!`~LPA;OsRW@YW9 z)H}kwF=F8Gka~naVa?8)UNgYifR$3Cu1Tngk%9QU_!(gChkvm!0btytTnq>Cw?%+b z!8Dj@d&q;v^bKMKSi_)t(e&DgUx%!;tx0l4WCHGxWF=99!MtgW2x7$@AsVU0(V*#> z1;e8pQ9<k&rOJmy<;0uB0Az%)N8G$0CG2SE0Fi)E8ga5ZntCEvkc{;OvaNzoX*3PW zt!7)55JEPBKw<3wNO%~37X+>VeuJClEU}G@0pZKgYFXfc$wGT-LP#(K$D)zoP7r&G zq7OB;+NwNW-Z)}xPT6y-`h+!#VU-TX%EPxJ?iqPj&mZ>)M!@1ZnsV@l!7^!@&M4%D zW8=%j^*tiuDB|@RqZ^>42>Uf^P3Wt0j=x#L=ZtUA?XBENS&J6f5x7YygQ#rHiN)v< zz4Yd-V{->g2mF)oZK5QO?O8U?A~8R=5D#KJsJ4;^=6vJ!mhxt3HkyhGoi_B%<t_R~ znh@iyty|S7Hh_#*EE90$X<I%tzqsewyb0dXBkIol+}PY$8rFhpW4IDm<sY$k{VHqF z05-PcNNzjue0?Ew*_<Y#GW?+%(CD%YkUs@uBkR$0D7!+$$LZB2`X4*E<xfUKNv1GV zIv*?4_O5)cQ+@o`wAtAsj}}ztvnzXR#Z344kNkZ0x$BPHXdM2lBR5;6+2z+hb$RxA z6<kwXzCY>D?ihW6O5b)(MJ?Z(@^<8BpW3@J(Ya%0=FPMD&MAa-D|?@w#gf6jW~osr zp5OP%|6II#Un!M~yGPXi=HJ|Nr+e2e$9{e6R_(6Y=|fBRT<@O0`S_DOYwY6R_k9w% zd9Lr@_x+{@MI!SqPXnSaA4|2s2Q~#c3HCESIW4LZ(OZLd1k^g&Y08k6gYuSCsTSa9 z<bntrQ(!Zh_c_!Q+^ayM`Sz#4+Jd)@t`b1xbO%3a0(QkbUqFvhG-KHpG$1>$T%w%; zXgal1mHW$c*zU^=Ljy!VMj5+Z<dz^XL&->FEAqu1FMvz3n`!|moUBA!QyhR=Xaii` z87pE#DHe3<tHbt74?gt#K$^ZIkSQ1w!4lx)K)jv~$bg8@6nMpo`Y0+FP&<se$iEc; z17sRP@&n(1B?EV3kN|K6V?*I8+Q1o?sE|=WJ8|V(IF}`eH6h6GgzEz}!M7Hf$uvOc z7Y>6PvMI0r3$HfzJ^GtZA2y&qZT-kctqC)G#nBtpRNlp=7AQhU<S$56k@3KIQ6zq# zJjv!#9_qxIgHLInn<*K!`mLo`$P;pE{RWciWjkE8{*q_nsZ@;2cty!2p=7-NI<Wh# z?(EWbOa#0f6U#yqw%r_Z1_Y}`30QQg4*}dr7E&$&4oRN8$evff$bh{fW;Jv>{5CuS zt+ZWY%yw8uI@2DrzxZhAgdOo*&+nygZ|~Bvi4GlL{VaWxt!Q^TugTT)6EQ3|y~Y*U z;Dti-oOK*F`J8>0a=qO?Yn`*-Y~RV=fI4sAPQ%|hc)NXGvv1eU^Y+=nJMA}-?#{t8 z%DltA&C+jojunF|kMDfs&O!6XbCu%-pQ!Np`Y!u=U)iSz?<9lM1Lv*N_S@_;_8oZJ zJ!_vQgSW^n2JbY?+wD6C-(=rmzR|h^?=tpTUBAIOoy%lbn*aW3$NU5MMf`K!7n{UK zX9kZ9eI<=BXj-KDNiwhCq*GR3hQ$<a|Ao-^)sMOl0cS{eA9Dt5^TX#YA>kjlW?yq; z*W5$*oH%jMYrEPp%eCjVDNecF|2?iV6Rv$#x8~IR{IeJPPQ2^HiFb*-wr>_0*F#w5 z34X=L&aw>e4S67Bo9spI>w7y)a+l69N64Ne6XLETbitSc=Zs=O;OEQ>khig?@+s?d zrRav~e3-2*?+o)qbjXK0muuNDpH2@KE2pg#8}MYe4tSoic=QO)iRww2?r+1WB(3_w zyz{1E?`Y_e$#Bj(QOy1u6HiU);k^08Xz_%F8>ciDCr3T^%?`dl^CS9?4+e02_<v)m zHV*z+AIVd{7x00aMaHlRuRSu`38jf}PNWASie;_}eVNmkKbXdXR0nuB-|3i8YOtaR zBPQZO5-Jo(Oea~6rAF-H)fmHcKUT8LtBW>je#?XZecVHGurOD{A@t)}Kk)pw-sjl0 zUnGKx^B{_5RSLBahb0~FH+LT^Np#=RF?Y!R?c7ki3BMiwe%QUmZfh+^%V3li7K@=~ zW+GW+FMjqg-epA7*@EicLr;l}9%-I+uN<ZI{?X$erKiYN)Mbpm^^NjB`;UF@ipjMd zt)(j_)eEhqwWFn(&dRoJmH+EcyM1M5W@UQ%Wxs}`?p^u+G56+yZJgJ=D88A&3@|eo z0E59!5ClOGq976iK>!3nQWQy1G(}MqMNtwh$+Dz)ku1xSEGyokIJWG_j_P<zT*pZj z$Iarn*?QxqiQ~jo94Ae4o3vSOHpfodtaZ}nwYPn#1>fKK23#a7?fdJ!=LG}?GXUmW z&hk6IbIt^=z}uDAsu>`R_-ntcyZGN1mOWyXQ4H=h`XdlF;w7{ex|a8~Tl{^E{59c2 zs0s9Q7DW-EX#MDu$B#dG{Px^nE;lHyN6ykwo@Dh$^`kg^{K+G9Jcmz|U%yw_jD1A@ z)_U}txg0&x4r0a!MJ#1#W-wPE8K~_lnYFa7pu@@8qWX8J*AHj~3JfZnrBGEJ)F+7^ z<zh-fk~J-mo;1*2Zn~Fx+9=e6_kk9|NwtdX?E_oEG(x-rbtqAKAiZ~Vcy}872;?^+ zhWEhn^?JY%(D`1SKDB3ehbx6hlsa3#gUv;w^{3+Oc)b2y^pRj4uf*ez;>jKyjN{Gv zeK;1!n=j+wqd0Ulb@=2_#1aH_rE`rOyk_1T+_U#^(MY<aw*B$H-;w|3*Wr+cj30fV zIkD;NgDGe0i(h5$EEeC|-Muj$jmGOD+N(C5EEcD_5vZ|!)>p)5h2LT(;_z1sjsaBs z*y`Bhcpt`2mUxna6fU<Ri=(|Q01-_c$%tRkcuMhgcx)h8bb-VX=HL~joT4hg@-vn_ zU$_z%I{9S-#QcJ**j=&xMHHl?mza#j*Ne}}74A|ZMzV&nAH7ijg}`FZKhI*4Q2)h5 z(FaShhzwKh9R=XS)@q18S=~3jABCs(?>|>SNCe5G1)oQ)KeO6YeO3V{pebe%AeMo5 zb*DbZpLYW*Qia$4^~opyRZkU=?S|^r2t$U=xJu80ITAb_9rRd8>B4V?58l{uy8rM4 zlJvmg7dno8sQ$mxy3glHql_nn1gdA_nLj72T7&LmooiP81~1XSM@2b?=;GV|l!g)Q z&cKkLYQx0_UHr3|gOYS`<|;iAOCh&ztr?E^*Q0`ZI5usD!{(JJnT8`K(vk5e6>X+o zi9^8dBjPBe#1Tjdc!OB|SpQU}1>O>}wL+L1*jbR&*b+5#jKF@N>A@DkafF8}04u}A zc7&(Mo<-(Hh1@-Ck~L_h-kL77L$I_WumyvRm<(`f;m`w%L-WOdle<AFI(01&ux>e> zM0q=8NeXHwO8UXpA+w6=WCCV}IUpxt(#X9ibMNX-)c+WVow8qd9l05Xyq^pRs(K0= z31L#W7NDqRKnFrN3(zvzOxOXB7rq|UEuUWv2ftqUCC>FA2NLxd@HROYut;zkz7OY8 zxCwPm5N!C6@Heu*;!oa^45IL~FP^-)C7eU=VdApmN>?PD)U9sxZ-Y4_+de&d8XXdz zLj2c5xy2A0At*Z&bhlPks{eaV=p1G8iR0@>>i;e`iEHY`iH}X=6&++>N2POM-Oxc_ zgbq@m<rk%%h$6pa?v%-c$GC?>%jMozqmO^-arCJ{v*nX#Pg*F8Cyv*Dz91Lt|FY-i zoA;m@UTo^hE2pAP{yXV=?h_9KPfa+k!`x$j_*d{X(4Ji^PEtY(dpTgc$@l>T7w{L* zcW}`0KbhLLmrlu2L^;Dx#9#bNIZ$M(FZ(xJ5-w8{PP5isGv$Ok|K+4V9Bmf<E)fd{ z<6rz|1=*hM-}a*Zm0yZdF&($dib`Rh?3;^*3lV235|785<!~V!ox}b`d_K@*Y53oX zU8(!N)nQSh%YA4rf$B7f5xdg&1g-jQsR)6Lt?aI-?-VPcC`=#|c~}Q{ix?>UJ=mS( ztb$jf_nW?yUjp)#l3giOyOR7VpV?2$Hw~3V;KRcYR^Zz{oNTr<BVgB^J1zD@Pi4Wd z_+!XH%8<iA;a@&RNWVh)A0$gH8&YhFMsZEZHQvywF=kLH*gbr}N<eV=;5I(RCaUqz z#ZKa10N@w-PWBbc#(9B9iQ%_D7QRdf4UAloo!6!$BOcC2;)ayEb|<yP=yV~2OZadi z5_ENv`R_Wv9oU3n-aM&B0i5Gp3-yB4$(v0hWX99?cm-rr$zGj!E4qg24nC-=yVG&B zybMv3ZeR+Bs>t4;>ceQp*d*h@1MoqXtA_woSSZXKWWr@=nLb7o7XFWrm>r7%CMguo z{}$LPIC9N`A1{79Lof*(pM9oh=a3vhZ~|aC+IGl8I}QImQW7+`_;tDmq5}Pmv5nne zgrJg`ey}N=OtctDR6nOCiMlYi3T_sP{%90<1|iN(C6=Ymt$54eCs8Rr+Ix;RG>Ur~ z76%S6X!K<S=yvhq*W1qvnNleu)ah~AbK&VyW;9c&;GtAM%Kz{K^c}Ek9BFWi{)~SI z`U712Ey_jTl0l9pA=VT?qz8bVV!4O?u09fMX$i8=2U}Z%%bv6MM}^;`?HWqf{@@2F zTWe%|zZbxy$|Zv+;*APu!Q?NJp=`LN6|Y;yV#4oHc`agOJwN)9(QZWW;`acP+QBV( z{q--4pB7bc=GtIK!iscLV@^mk%8iAML%uXfbG#HNp5d2~iA=q35SSvZjw2!h6#N8~ zjKfPsd{_Ox#9X3&f0DI)KOQN>zY;Hmo4%7g{~UxldeVK+<wDN-gYu&pm)lYmP;z=z zxz{DvU)No9hAgunKZU)S9Z%5bY)$?k9zuv9{@vu(zvdsI>lL^BkZU+YEsWh*i&cev zvR+3!%{JA^LU>yRI8FBD+r$UODInE_Mi0KMKh-YMkH^L$Qw3l%bwsmYVxMAW7A)ui zOa`1T?iN7Kk@=6MLJk7dAnuem@h$a;?8QWhjkvGv%m&g(#Z4!ZsZvNtpNzJF7}l1K z34b0<C$eWht@;diNM-Jsb3W7$aCy(o;6+IFn66K&!tNK6YW=z5`Q7PIs_1iOGr3Hz zE$i|Y(&-r6mX5ymbTplgCX;D4`i!cEAT_69+hpMLO{+;2O^W|qHN5uPgUmk(nJ;5b z$FcSxMwae*4Q_+P(Z#n3F9?<{hK1iP1=H-?qkL*Ig0rQv@VhT1i)_F()tUKJD*3(# z<Az!P82u>W$#9#Tx<l2!Fm2zEZhTx-KW^yu?M{CIF=Dh#-2SDctA4I{{<_qsQiaaU z<FH!TOk4Q1XTxo6sGXi>)9REF_E@U=3DEjf6ax$bsPjxAbe7inT>cRI_FtjP`l!Yw zf&}D?;%CAWg?mGhF}f=pfnS!f!wiix76NLtZWSx!Y@FAMwl27gVh^})x|I97Vs+-G znTX#PZtG5WwVr=~Oe*2<@D;E9<IC0QvAtt{J(-Gy)1Aqe6U-D|KmV6LG&5nscxp8Q zqU4?8@+;WC)Hcub5i^N~D3zzr+dVqdi|%a&!=DVdrO{<1VfcTE3!?c{G?j{y1y|iN z+dI4m^N6`b@3?2sJ1)rkbR0s}z1vaC=#LzaINs}c%JE6ZmmJ@8yn=B6GKP^rppg#- zcehL6R1?<<OSYX5ef}2;Nui8h0GNRPiKxL%YBH<of1C!C1(r7IUf^jN4fnWNkEf)o zNa5hB3jS9}dqHotXG7g|CXO}JDx;1OGR_6$*&4>1II|s?JAFQ$;)T$|pP^zP>K5=J zM~y)Ku~c#l3zNR7nNS=0kjBqb(DPbA5im341&piu5SskJ`Y^UqqNQ`*YMMDPJMN07 zsP)f$=kx5E`9vCoXI1l9GY1aL#DkMT$+h#E`YV=qG+UcVSN6r!6@w#dI^2K=LcZ4I z9W7~Z5L03KYu%`lAHF@ELHu*?XNrAhK*j5!pl_&CPSNp9I^X?bO70x;1-<nvQKLJk z4qw*UIaA9%_O#WM2y8`qD(W`NLOecOEp%MTZZoT%(Abq7h3YJFNqsG8Pbw7h8YrH@ zt^-sEv;uqxUl`4J@lb`If?%}rLP_60h2r0>Lg|It)rHx_sd3%ui@4<d`}N#ozI0-i zJ*#Fv;ZqBJJL@TPNRoz3Yp9q`6eX#cNEg>M6?)NnKC9=><TItDfXdm`)xn&e{an80 z6J0&4-jUB_^3wj2B6+LDR@N_|Ak1jzpz8ZXeeP^&Y|X$pD&gQCM92nivc%Dj`H$bz z;+pRmMc6DkS(%zGz@_zt-5ni>(gRQVSH$dp26+=DrXS<oWXSp_PXX(KRu)!EmzXW_ za`9*%LtC~|ZWq3hx#RY`*9U}f1l{g{aR2ir-{xX8HWZ7!I(StzA?uSfU~mS8XCK*) zu240X+R17MpSf-(fzn`wfn&ivFXwA&u-5md#>V-YU&wWYCp&z_oA>RvgwD1cC?vw` zzkB_Y;#b8a(ED3q|MH)L7!v%JGQ#Qf!vOJ+j-ys6P{2Ww@z8KstoYaN8b^o76QX~C zW`VPj1|kPi2G1d&_izCj$&fABXb_}J7vSc}Ph$HAfMt(&64w+|R7q8lXF<3CM%iOp zXzCmWD}gL44K>u{(cSkvYNA6#)-b`34`!n2iS+}*QJwh)4Fq1%nF72Xq|U_wCv<ci zIUR?Qi{@&+LIBmti`mS?T+;_n?!7#yd=#{WBANhOE6tAZ1Zr2n&C=tb*?Q4&8X0=2 zUGRp|Cc0-yW37b(TqL3pn%SOIb0r*LTlPp%#D!A3oxThZ?My;;<pTK0ory^%1bps% zHsMRkS5N)s_5{x@bLg;nzU0V2*Ve#wcaYUXn-~@*1OT4#!v86}=5iJYBE`M4%c8&S z6rtqNLzMC2Az^Uy?|AK*Fsz{IM2is5HU-&q7)$}_3@oD$hv9pZV7*!jdCjO4G<^?7 zTTlfm%AQGu!b#~}Yr`tyJII+sJPwbjh<z@VOO4xCg~wV@>pzr?3&L&^)R4beGmyJ> z?WktzC>;Q&lhgLV<ATV-<U-OeJwx#dE~sECAxJ?ve)cm8Vm~xDQ4)qq6Lab4lhO9M z3?ADaxU9P^Ivj0h6Pegxw7odaUVW@GF;RJ}gS144{kZ2h#R(x!mP0g3k8xq5_#13B ztmprD{VwsKIEnEk4T!Z!jzJd%Lm=iGNG;^DJ%$ufrCvr@=MeXeL9bvL4>AN&u&zlp z&_|TBTuS34+zc&tF%Q;*kqPIvwHwOA5*wNu5+8PXGTU?E%q8AYHF~H1;bbnGendrk zg-(dZN0PaGoWIJ2f+|D&@M)Aj-98Zs$=Y_GyK```Q}u4w(H4GUI~L&5n{$?8zd5J! zH$Rh1&UL1<>eEI#-8r}LLd~W-X-t?ydHpnSzV+lugCGR^)k_{Zx#cioP{)|u(;lIg zmg@IgeSr*o7&csg4u3Lu$&Ls@I>`PwBd}xWzGd}U^=IqP;!no1*fBJgqmIBbFyjw$ zU2Fhv?Z?<3aNL7$18)!V1LIeL(G1337)dZd#j>19Ph$@P5=N7%azP(bsUloKNDI<t zoFD?wYKNLcs9Z*Y5>!mVn|K*4J88%8Zek@8Ch!v5D_LOA_!5IOEl%Q!l55;{HgEWI zr9!9AYr022Jf@8e=T>G$O9KPZcqug)%FVt#0_QgP(1b58%&pU%@}978HhkY~N2otl zipB<5e_>r_Wyk2ugCSVqw}LP^x=nyLY20Wwb(mRyN8BHLXeQB|smz}3$h~hi-<gWd zJj8wu7ERRUHU0U5|2<|o?8=&Xxu^D2U(_3J9sJn(t7l8aRP)T1F3^C%k-0M!44Hw_ zAxWQ{yL#;DHK~X%Qu|1);Le*_SGejAZkb86l~DLG>Py}^g$y%7YYy!hT?<&&6CD_z znGLxDfcr-$CWcYS)l`BA6xlhgc6~87(Bm%5j)S#w6uH#n2wap+#<ypP2y-+Sv{kXE zK`Nv_w6$@N{ovd}&93^d_8*!4#`KXR(|f0HKr3Ni__Hthf??w&Bvbw7urC-y3AAuf z99bxvb?yZgI{)nS4M#Tp-SiFD!Iq8tu7$b}gDn_*c;U&yZ?@~ac_A%VV>dgvtX!z4 z&5PEf!za8AvT1pNL;ToK5WPnsG4V?|@sXp@crDJKmx&TA{2q`0m@mxs*MBmwWw!sh zfi3k{ZV$$yq1*Gn{bD}<#b7KZu0#F$#k0|^ypX@2&Sg^rGcyBMM04@g`TGm`SdM~n z;4i`keGWG05HR2wU`TI9N0E2p9a`6rGhKYl2nymr2CZ7^y-I3Ns8D4Y{+yf#ta?C7 z*dEk(7mCuh*ioR{4oHBVhG!L=UlT(JF_#emrs%B0P6OoAhyVue99Pm%EPE~<x@*2V zTq+G$=kMCw(VQ7egb^$RI$@?t2_xC*^;J=6K2btXL?*;4q2yRP-CqB;VWCNP{X`0n z)^FZ<-MVf)$rUni4d~^hUL39eD&jv%s^X~mk(mD~>R5J_DMrmcYL(FM6Lv>C3W-Fa zBRW5UOw;B{AdyGwz#yu>7J_Cm9D#an(!)g)v_P2}i?rlYRyp2Wi%--eRve7%R0_Q8 zxOHMQpBaE&CL9Eo!2r+zmD(ys+tbl#I(BP17E438VUb`yz5#AKA%+g}N9{$6WkW+k zjw#t2c(nT--1*#NQ&W$Ak-&p5maYyXLo;E95A-~T1EOPMA{jn^f4C(R0h_Nq84-?z zIX*%@^TKy@aEtE0`yNU~LAqclNWTcBIBQJg-~1STQSiCawM*X&JzkGZAO64xW)89c z@qxqBhh{!->0feweW%b@O4K8rLO5RH_x}2CUw;BJIFFU+K>1j{xGLz-3yhktJ1Yb^ zKLAJ@i~~qVG#18Ka1szz=_g6sjunglv2wYEhQEes06LCu5+xUEWoN4SWCiJHIZOh; z-r?)O&OzY4Gps>=4HZ(^=<2~jJl~PY<*K=XF4dI?fx(_lg3T<|B##kpi$;;HRP(3y zZ&wvpr>ae<A<3v!OfUzBJ9EWEbf~4)mC(>DC>jM36_!}48>m2d09Xa`z5iDHn#d5< z>jD?l!FZ}7&=!DYP-B@8)J(aAeU~AXZodS-31g0wa-Lw`Ls=yl7u=YPH@Ms9gcS=K zzUZt!ZN<~U`sWbTVAFc1#^ws?8OzmCOTG3ZHf|IWY_yP>v4Z27>;HCezpMUUpY#Cp zBW9rwd}|}p^*UTsC{`8}U9SIqBKTue`E>rwuvkJxMZfy@RP`6A&^#QrGP3m6`cDjJ z@JGm@>fgO4Id|mHi+VQD_ZZ3+B&2(W(}*S8Gyv)AX6T&iF?j6%C*t1;|IQ_0JINLR z&h)1pQ^ltaH$&n^L3{(YB>V~*4TuO58KewBTmu3xetz&<b0Ap6VZ!KCzXAPo(Pb7q z_=Gz5!ay+FkuJ?;v!ip<RZEc~k}FW1o*T_(=Zcw*tnk@^_U$UN!CXlInm%NHCD52B zE~Q=5i9VzLjgG9Ey6sqAmJjCIQmiez@}Ml|kDXW{cXY7Tz|#Kd^*h8*ASNIpvYaP| zCj%fHu+w^|={GzK+)*f;#o`4;fs}m(CK&X5yOT(60cyF0_izfC36P*L&u|6KqZ?=c z30}q8&hb#t70t+MA_#ufv7t&*EuINg4h`nRC+;gK;y`D5w8K+>QMPi*kCPrD6%&k> ztd$6%vGCr>p?J^?Zm$&A8A{amE*6tPSwr(?SSBSv^Z<QNjnDe>h3{^6T~?E;Gf&hM zxn`E8hO3_w+SBZ+-CIqRUY(vZtzb$}^0Rq_^DRA}EtT|?rX1%z3hdalh|UbH@B@0# zrKOK_vZK4F6?8#D(2D4Ki+(upzsLrK&b5_<5A1C~Q`DJ?um*J7l`BdGw_ggf_uh5a zlV36vweoO9Reo~ci|6h?bLReY&p&edD<{rAe&QIr@yHWTqR9=b--g%`NL&!4kyGzi zRQ=p9e|b(<l`r0R-vj4x(fy~{AJtbJXEz>WL&uM>qsN|j@+=HfDHQj3G}JeM?7IhX znadn8bkEx4xEgbapG2L#@r#!KT)2-ia*3d{F8LM(2W%n3eIHCH_XI(Rz)f-sjutcS z)V^2Tt#C^cdC)^hyVnM@+XmY^vK>R&kwCvue-3Y~MWtqSD7$@NMK+rq>KF<1nSv)X zeCDe!-Zz%cq_e|gbKCdqotuA0GW}w0eEjjT(Sd3L@N1%qJ3Lm4qxJ$bBhk#9>I$aD zIyy$jvK_fpGPiUnH$0x<hnR2Y;2C!B*!H=-d$w;M9?RhK-!ZfOOZEGzNi;%ARIB5o zXYu*R*iE(3vFQ(!Y$lyy+hCr?%C~EVghMT)_w9+z_EbP9quTEPdK79<Nmc=5x10yl zlV@ZT+XqcCvG+L=M1yWAV(xVP=;{0JyPv)7p?ki3?1{6O=+N&bs+|V&o8iH(q2W#C zVmjmcROl}!a|06Kw_J9xGF0vy(LbGt9Dd@-!$(kl>9eO#Kk)n)ux##m@vHR}$1wHp zo2VRWjas@N?Fn+j)$wsTo?OYMR{Sb$qNcOub~UZdN)r=OE;Ex2V~HJpvRK5u(i*XC zHyv_%HShb>SjP_BZDSSVX3_2vNk4eN?1LSbrQ3$BiG>ZSTM13sIrxA(CS_#bFIiDy z{`6O0Jbi}6*xk6@6KCId{1~%Nx^lUqo*KJ-tP;o-hF198AN${-`g?_kU8l=FmKn(B zg0=o5m&w7$!!5YupW=S+yYI{k=juN@a}Rs4-hQ0jbmZ(<wb~o;R0nc9S#rCTHM560 z{x;JaiwZewCy-cIVl<sR!hZT>CBHDI3-_5p#a?)u_HN~Oi3M)oA=<9+F4(9Xz~yy- z5LE@USV=3WPZ_2gyWp12`;Ia5Un@6gx8C~ZTOSX$;||~V<WG%r8*Vu{o7;G@^uA>C zVc}WK*15%Bf8^|7>EJ{pJ#qc@qgd|8852D}eR8NUmwxFlgHK*L)|ohpc|k1W9`Ub` zqeit2T7Z2!;E$)koWl4*X|$1wSX_zaHWD%Xgeu!ze}cVs`fD#@iT%<2?CwWSGxn96 z&z{A=-*kvg9y!9;`ET%(*37WKJ;UB{fBmL2IQ7g6U#qv$$UZ@*-gx+fPqN?)=fvCN zra_bEU_p@tbhyYklBtn3hfZxlhacfXORWq_St`MBB?%TMNbX80m@S2aV7nn2R6<>$ z`mbJm;XbU0bLSp7-B=Mf9cH7)j!a!q|IwYov0HC-{oX0F8(r`G!4JG+lk3BCa{@B| z@4Fw>e1CT4^aOt6G1kw2WBoIaXOG`fy{B+%u_#?l#X9bKR1kK~%?r`yRPvh4Z2H2v zH&E#X#)&=mK3h=R8@k=MAgDRsl@3?Z<P39104p8&$RzW))i37nKZhGQbN}-%+z*NU zzOz5SiMA!l>o?C<YFcLZuC%_V5=|r%#r^ULy{|fRX#ME$2rXjV11>!M!i%(Nf8Mx@ zCqKx}=8JQ?cFkrpQ{%bZ+<d-p*~G!)>k#gsoElpPdB9(xP73QU`u!Iw8lMO>2i8Rj z%a=-e!-$3#NFf9&*wapjv5Wo1U;qzd;q+HuICBZzbL8CBF5OlCPs%TH=~w%7Ch9)q z_rHoz_0%`-{N^`>&*G~3EpJdkHy*BkhIP`#xKgjbACCI9;D@N}ipHUHtaGY<mQi{l zzc*VyDe!Qcu(Dt$5?2p+T91>fA}?zPA)gYH*HE(1k|H7-xiKfCcY0uqkUUz@L$n`A z+RDO)@9f<9ot^cc&gpW{cddj!A_}|&j=R{^>CrP^dx11gCOtZaGEO^p?;IUYr|Zv* zO;3$Y76;;_a%zX!I9EAG2ZY<7_}LRr{Os7%f*F0j3k%IieJz`Nnq4(FifuH!bLJ~E z+i6E<vcto3P%$M$9n-~u(TRsA#%m1)^Td%Fw=3=zP3&zi?1~il*u?1C0!A11IK1}d zesjv7y3oC+SGKQ@idH~wLzPw@xTAEcY<p;7^p>5~);K2o=6u-*fh6|Vc+8)_MYwzR zH%2gMT=;PQ_t9Wcg==Z5JI&^JXxIvE$|aMzBs;u#Vtqe9B2EO2*WN}SA-=^3zV<e; z_b<@tBw%?B>)Te+!hc^6HVx>^`$&t=Ok5X<|2;k?nR~&0&(B}bIv_vr?cyYCO|nq9 zTvpnFI|0kUADUh=9kcBukzqr_7NHzT+K>DUs`EexTNOeN;UW!^DZ(FcK5T20;f1G7 z7sGrZ2%qo~;au2A#i;)YXW{@Vj#f}C2_%fjQwN7)l9DeBOy0ipWWRs{vx4Gsr%Gsb zMzkA-s5}BVYtr#-0Tn!eAiI$Ghekqr@aWji+b7vdmk$mXQdvRNY_$fvS9HI5$OrPA ztosgp_RY5lu9z9RVR-(n*8`yL>RHt$hkP#3{d>_?9;^dbyWHK?HqjPqe%sskpn3zc zuvRp+wY05h9-4jY{O}DlUT;PY=F7kcuf!(84I__;0f?ZY&^)D-XI+9D-jgP{o}g4@ z<08);U9>`JZnuM3LP60qax!_csl^MckZ$4pR}5Q_XI`Qf|Cgf-VQrLIMOT>`k}nk* zsk$KnrQ&^V*MyHH<6bF&e-%BHbg5>@^r56CcDqXe3r0_1d=X3pnL8s0F}R@;n~^5f zV#ZenuL2}+)BI2hg@rVE#E-a5&^V5Up{yBrN6s~<s)f8SxGrEB;t29}bvcn3h*wdi z&O|jJHW?{&%Bs?2Qk<CV7~5uZL6UTXABk!RKq=F(xam)O8h1}%Fp$YG)>8&Uh9p&F z1Mwqttkf=c0q1Vd7BGxBo39s)SQy|9Rv3oj2aldO_Rh!yM^AL_-%BN3eW*b->=gD$ zdO`S`ByNz%UrgG&|Em>4*eN-06XdC{sX0l?soxt%?W}t~ANj(aGNK#81GlGU1z|Sz z&1*Brt;OKvuRRrc?B;=0fAyO@jv%!~NFNlQ|LaQEvG+wz)yIek^4a&RNwjxWKlTEu zBq-*6f^Z*LXXt`V`{$$>5%-X8bB3U|LU10T2B^z1)uNz~P`kZ#=omNRt&ml~NQbB% za+g46e9$sk+S;HR<HqeDeY7|>Z3?yd;<U$iW?L<R4&JEKA2-49r+=*e>_BQ_>SMPc z?HX-jR~`M-P*8{qmb)`zY-!6ROX-8PF2fyko4Vnz_F$fAmj&b~Cfto=;z!1>seg;_ zeb_noiDyyAB1L;2V=jbgi{l9-cm@6=1|P4p6*76+#SPQnofx|z@{mi4Pc=mal-DuZ z<5Te{YjP<M?q>0I6SDBygmY@5{=@mlbqQz0H^nn%C5tm~g^Rt%cgOhD_jsL|&8RbT zvcc8uBFnc#tk+5@1u3kcyH)!FZ#P4=Pk=)Kxdw9@*&FoGgDTZog782;Y$u6Q>InlZ z0)Vb?Xq;ExdTq=u!-dX0^#epq-&_Aj)a?|Q`mD<Eq+qncs|WQDYe48FXHP&Y0^vY3 zI>7!{w0?#ii`F06Ll?eF&8X})5E5=<cy_Hp?VAk&&3p~4VraB>ikgKH@A-4chChXD zXmgOLfDp*0Tk+$eHxzWwg~C82ntne;4Pg@?<6kKTaSmAG0?A3hu>3Ev#w)>WPCz0* z>evH>S|gNzWfHj#^AUjfEm4e{ZW)Z3V2B;4Ro_ypYC<5&geH$+`jMKCX3sICqX~2P z<#U2Cq^d*0!i%^xinMiPb;&ZAYyx^#r;uqDh_f6~tlnbivem(W0%zEUe7x>c<6xPv zS5@^@<fL>M?4RSEljF!53#dB&6OjA;4=Rj*urTGE`osFGsGZ~s>g*S>S*HvV&TPzH zZ~qB<Y6!aK81@Pl7OZ;EJ;}mQ1{D|?gg0UPaE-%lh=mvA_#oK^w+=;vM{FoELQoZ+ zKj&BB^#w0ThS0y<029koA2j?_M5I%-R_>k`3@aLM3R_MoVVV|{NKns(^;9Z5hUg?Z z!HoNo()=n!4vdby>4c;vuIoStn~7$@GRNn0aa1av8PAyUwt;qvgG$++&L-j1!HyOb zX)`>c;nOznT!B>uCBs4;)1yPhd@2HAm(Ayq$)fs-<&@=0RA*hHGo9O8H8g#Qb5QrI zu4HN_^2qQjk`Ph}9e8sFIWWFzB9#=>lI2I4mS&gSBpj;mISlSk6Ph+sobm0#_27V- zRQu1-LcxbHEEzI9F`9&u)1cw$f>}+qFF6r|))Q$SBzt1u$$G^r8e18~|LV^?aHu(( zJTqCWfAy-Vs1;3Chj;ECtW-Kru0l3RY96T(Xs41fOy-YY7EQCZ&Y|JXfq}98P2%{c z?>O>QsQ$fRA{k&A^XBR8chv8gh_;PARvjKLPEA%iJ2Tg3kp2tM*f6Xf0O6@(A>G+I z@S%Y*8H_8gR~mKyY)(J0pFboesQMcE7|>n9Zs9raxCf++5&F-uOv`K6<9nl2_@E@s z3$QW>Gf$_m`c*1W0ERBugL*2RoWF!bSSw*ep_&|QY&{7!H5#iR<s0QO)}&^+K71MS z?f(L9HRRaEJ7D9dEu#ZKm~mr>*1G*K2x7L{qa};bzfCEy=>;@t*(EN)@+)C!;gc6+ zrTCdhZes9}Onm+R9nTM#$WeKE_o=Ik#bhEea!u4#F~BfMrjwcK+>zNc(QLZs!&6s{ zw`U$K${q30eCbrCb9(RC!`W!Ux^ZOpSZ6lgncbNMMZ#V0+&ezLcU-tWlO6yy1g*xT zSoJL()oTWNCid?y%~Ue!L>{5={Z=|{WwV{VL)E$My*nol=FvFYqZg!1i%-aF$Y=}Z zW^1Fl^_O)HRmz=tGZ<2xM*ThA>x;$pq)Q!FftPgvJS7J=A_=w$aJ~>0Yf?z1)r#QD zg4gwRs~or{(2mE4@~=(3-`a(uhp;mCr&9kTHIz!dMu|s!9`41yxD1_Nx*fedp0_yQ z*Z?%tBtW3?@I92XL3k0YcVCD%T@_Jfr`swcu!Pi|)}C(mZtyC?sf46wBCeFTRuQbe z;lqY0`G$uMAmHN`j60rrh6&G{_!AU-3^wI*a46X?P<trR5e9VJ>Qh|V3HZnZ!#>G0 z4v!3(NNSTK&S$XGp1I?yC+fajZVJrt;T*Rs?gAHPgM)Ih@k15-Oe_)pLxZ*zPUZcu zdfLe8RA7nYme`|aLU$&*hHuq1XJPkL=fT-2(C}&C<85r{<jl?KbikDs%X%pqp9pt& z1xq^|3AXrC+3Zc1|Hu8VWFn9-AN==chI84O!Aex8jmR9H*G~x>#4WtCC?7B~Y|w^+ z93K=>2+|mm0ZVLd@(s}2h1+{%+F-dtO(BFwiBB*i*sEyU=ZPa}7g<&;?nnDF$*ud4 z1MLb=gSD0gpTw6>s=>}|NXUYLpGs9wbK%HdrNbxrI+XoKBq__*cfNBLrN$D?!L)(m z#3*Fr(!EqpN}ln_EQ>UZOi>ZMezJa|=IjHjCa)Tty&Xk>Zk-#v3isrO%>1zQl=u)l z`!cc_-r~5|@h-=oI-YTyBPqiJV2BJtZYpr$=%(ywsZ8&YOV1f`<SwHvtsPsHD?F8l z3_fIe4I+$&#8;&Kz;~w5E6kWm3M^R679=v|?kf<sG(xbA9X3mnXSub8vFr%^KrpO5 zKvJBl7{E7$wb)D~TG%_3UKX&gA^Fb9ma=L8Z2O05s`t0PNF?deJYGvpt?F8{rt7!f zAP%$V=y_MO8faGamQcuFANB^XQ);4Q^tA<H)b71!uOccVm5m!K^`9vUi&b`({at<g zs=L>$?w>nl7N^l<d7~Cpz39XicPGxRs`k$XYcqydvruL<Vg1CdCfqgEN~nGAq#E;( zOjV<r$7c;_Zet61ty{cTpyXaS74fJnkWf==cdQK^@~G;X`87$k88!tAfrUTgbf#7b zq7quWWBYJKVUy*`Mg{!b@~%o}W?-Vauev^ZV2i$?2d4l3OsFxsrKt9um2<Tf>Dn+u z{S3?gx=-NCnAWGlJ$Co2b-$s-U;&~SBrai&gd1f#f>dYr^=G9g#0Qa!5p!%qea)Lt zU-N!sD}B`Q8GBVUW*$gE8H0`aq;-&LU6^?+aU=|*h%QY%R{he{<HF@rkL`?g#YKLg zv7j)kL^`EjLbTczCY36(EUg8+L5l(FhE@YlmuRd8ldi*Jq_u$G1MF#G#iDr_TT3HR z|AMc%io0efy_V&z-(iF>mM|^aP^eLmR&QK2vQL(jwdGAymHIC*?~%%`ikYwO>svL` z+}%HSx7oAF$C{UYfH%NaW6*&+xMMWC-|slF#q8UP24TP=%m4=a71fn;(MrJBx47e8 z<Wi_Ht$9TV(}Jk=7H{xMuZqF90=FhqjbZH!%5tj1=?bk{-!VTNav?i#lTuOmg!gUe z+uPTcin9Z=o(&~df5Pil3G@hvsuw>1*ays1>-p?#|B6)K7*o7~fOiYs>L<KzjZc11 z#pE~B8qw4yEvmibwSrB70OSEBxeQ3_G4~`7Mo~3rm*aZJZI08ZX$voX`Sekow6Sx; zJ+S2YX6I8*gWj0(cD|#L!e{Tzi?(!Q8XL1{V@Ncs*wywtE=)hIvc;J!@2s%Dtn4bA z`BdMg+~p&y2j}hzjBXnnEd~|QwRf1Nk150DjT_7L^`$B1(_%gp%+ey7;eBCcU;ixj zsK@6Ccrh@|fmhrfUGvni{S2?W-`#?(&=hdTRgZTCGS+4d(==wiOsVWHm3CKFbW}I4 z+Ei^_A3LzccWA6QAu|^?<&L!xWvbLWwMnQpYf<c3+JoQim>p=()JB+&sqt;`0z&wN z4--(;ypTkFTD>`e?+RkJV(P02w;D)5-P?Qb&oKTv_TC2YqOOLQa0eJ7XHj1f5_v)B zHntvZM0>|%FO<4VdykJC$~-~XE>0N~>B4@qx7%{Tt6VI3FWPOk=v|s68<fU=Q?TKd z&68~Tgx_Oj8Ruo6brAbS_)jBXde1uzuUtdoSv8H!26^Ae+WnZewb>z`<m^M8fUef+ zrrZ?+JynR<Lm4)VS-^#mmFJyai|I5qhJ`URykA~f?Vq*!witeFG;a_?X}zq5n)+1Q z0yUMU5^Q%+Lm~S+G&eSZy%TmD7A8LMmL`=pi#6nwTULmoVh!)u2I;!86&koYm7D5o zT^Bnzo45|8tFdutgNQLqtY%@3HTIpATWc#))o~^@q$~E9p@u?z8a`6(*Xpg!_^B#h z;Sc*UHasZ>Y%j`idwr`kCB6$$jP;POS3|y@c02~@`WIlJ{~Z|U|4h3Lb~}0as5x`t z?&1O!Nu6AiE*GW?yD>msB1bGR%`_u?W084>eMRDu+a{dkXfUolaehO0LeKJd$un<U zL3__W*7!_F)eAo}fSBtt;k+c9f$UI`A#Nmi?XRN6!eul6Wn>Fs`NHLwk8W0!p36pi zLdZkhKQheML}hwIkIS|BsJ~F#+qY*8Hu^p0==Sd^x+jM2Odd~6b|ytV8gQ?4`V3E0 zTFEAvjPB|vnxO0G<*r5`33WZH#&l?Zr^lm!>+6vwz%21boD;%3Bq!3+M7QB|qOeI! zhKiP@h%1NARNjztrLd}_zqU0<lH5zvZ+NX&G<QO+X+f_?t%aabyd+ZN?xtYBrZqIW z&tl5vn?!`#g-xa61{sLw@cfREuxskzln5Elgqvo%+WMv-#Mj3TZt)+gKZY0w-3{)^ zQ1`n~7yoVEC}3dYF6Xb%S__3no$<KpbOyxReeM|CvJfpT>$UHr?ztd3&EI<?BF=sd zMc*Wk6K8uoz%x{1r#m3A=p9Cs-hG>!{W8mDYuQX~J#&#dn59kiL^JdaHcKL?)#@Uu zLPI4apct%wgF<519$YQ(ctK4X7axZAu+g#8agF0Rcxw+rD*bmW6;|IxOLb8S8H^PJ zWz2qsGQ6=k!E++@y=2P$L46S-?0rcPac#lZ(lWK*SXf796s0siTBL=wZ)9X2Y`Wpf zrproLSVsb@xv*K&Q{8q~U}QV%*1m@v*&Vx`+MAuyHbL1j<c>!p(A8*<Zha4{Vb<#3 z?D6U7`)LLe*2`hokx=V~N9zl5krYs)deaJv^ev1#BgmAQ<04Y2#7Qg#rzkfpxQ*qW zjUriaSPLDwz75bRsj=vRS>K`azhy&$^J%yI3%Bq&pBtPuND$KJUs}1fKhsuS$5dOL zn5Os1CJSp3t5U7iVPxVY<Z#5@KlY#o3nrLkjSsSBRJsiMq=pKRTj7J><TwRe?oS+_ za(o`L<|W6k9RI--2Gw&(i9;6Lf;xw11MqQC;w+m+E;VSQ1KGti+A;^bz7<a)E0zfp zerA|vt|47$=D<0!6@9i<pm`;cK(^ZjSBCK#JhY`tSM%?opVRmrdY2;w_D5TCpo}ZX zXjIY{I1nV3E?PUdkXxFq%7rTI29iqS>&UWD_MX~LhQ-?Q)OZoKr8gh;@zt|?s9c2s zvTpAC9*=<n+mg2_D#|RWxgm2PHlmuL$DEqvMOvYxvb@KGGBxN0j)I?2pon2Lj*{H) z3t*IMn74q1Gz~D{a0SkYi7Gpyd(dD9J6iI3yue&xd%6>WKq3(Jc+gl(c6-oB#lUwv zHD;_B=${Ss&*-KP_5=*dSKJMSh!qNv7{xciz)=fWxHF`<X1qZrZ9c}u)yAHlNwn(; z4e!`a22F2iQsDCH#?32N)Hdce^^x5(>$|@G9@RoM9)Hw`pmcCVItm?&Wa7Y-+oaoS z^P=pJ;b~XvAJ;6Av1pW}8BUbN_a)#i0WXEA1#A4ZZ{Q-YVfL#?Z`J*6xC7BJGS1y9 z<W@Wifi4-|sOtndEfBt@xryFDi}4JGhrS34_udY+rGG`bpN%k;Olb%;%lrN$>Sft> zRzK|wa&j=bXo>wx17<b`hV};1#$O+V9)1Mq)JE93haD%83wGA=wBxgmuQ<Nv__@6& zuv9pe_EHuu$Fl5oN-SLN(JtQ?^wy##M$~8dR#?=;fA9=0)o@M22O^8@0!54keu0O) z%ud4+=RUG+P1_%|Xs2Z_veP!Nm8E=nYF&>7uNNY6KSFKt2o7{ND?8j0DTJx+EqQ+- z4SRd%aA6RZ*}5Hnf*HU%)^sE8bZ%t2mT>KG3!0Wtx4DC&(}R3(#p9Imev?xiWgd64 z`Vkj>nCmH5M2osTo(L9!;oT?59z{X522$xbSJ<2DgCE^LWB5Hm+pG)z)U7qS2h<=0 zZGYI^1gIV9j1YK+7bOVcK0%vp0drDbcb&<k>U4$FE)4Ve9kAy%R(d9#qU)I6<Wfb? zerNBF;;Q!AWNsQ}eEc9S=Ywb{Mw?VtAWYwcfR-w%$FzjoEow*AZ%S?ywr5TcZdTTH zWru`s7CqncG|~ItQN=+hV>j?^!;5wH+D!@!5D~Wzb3)cUituMytk1UoG3KJ>xs~?Z z2NL9k*VJa%iFK2<1k>Pe(BGH2rD@A<@&z_Y8?ZiWhz#vQhQw{CwEhUtnLl?t|3-OT zCa`76?0=))T?Vx@%)BKrOwyGkZzVu79A-IRG7D~7<Micn{KA#DWb$EE^M!|i@G=h} zY=2TK*^)~(A8BSX`3P*;H!}PtMS$0~=`xsnGe`X7a9^>8``e@2e+bjf8BvBHL_HDb zkZ{0bD3aS0_9BiKm9Aud@QY(X*ybMZow}ijnkf!(BTpJae;#uA`e!_3#6jM0Bd$sB z(^$Z#Yc;KvE@NmQ9@Cn#WX18-1ecFAH#g$CH(&ukEY8mlhg}=XrA@Y2ylEzvt!)4v zgk?l#+y^wY(}@3;gq_FuXZP*81$u^uU1vlUk5PYE72gdV?G7Zgxcb^RAjt%e@msRZ z=wxAA$JYM#O#gZ&b9aI|%EO&-i+W8Zcd_4HZ-Tq%LZ}=T;BPocfW5(eiOsOf9zfi6 z66}q`SR?NMQu8s$urE8l?f3`B@7}mlmOS+ZaE4oG#Y>7Xc>T-fowVb!m$WceU#NC% zJZ{0r=PPH~1ytRld+Bu(84C-CY~x{3X}=Nmg8{&8j75BaBpRY;SZVka!UvX_e8mZp zXWZo5FN?}(Y12dzhTx8(zl&glooiMP&D~|L+x|l&m7u}`sa8>A<tS9HCK?`?)H>^? z-lr&AA=CTN)*3UlnAOBpXt0f|dll1%N?JNQ%Aj6Me3IeSqhN$rbzRd<6ut8#!g%TF zfUg<=IOx*?$pHTQiCc%0LbyYdRs-x1rI#?pIr0EVh*ki=A@~wEI-!MyDchHTa^5i< zR;J3xLZri$ouyT6041jSQllJ{sDDHYx^(|aJx1EIL-<_S?L-p}JxUrgC)GczSrUWO z&_Ur_!&oVcclgwpWodD&%fR`9iqh4(pTFxh;82A%rW-2_zNl9+Nqk-lh=NyN;f=Tq zPtM8CtYBMf=}c`MlYOS?n<4TIfF^<&H2|1|b2RBO+*%WE?Z@!Ey*R^RK(<{jt;4#l zag=E{Jc^?{8~Y*HrXO{D&hb^pcWLE<#Z7LovfK?`4l6cR?j_)4C+BbxV2m}}Fe+`a zh9zvfyC%0bNm8{hK0|;SC(|)nn)Gb>C*bIRu|OAKX)gI1xb!k_cM-vodv=r|`X-jy zmCD-66iL3#N6gjLy?wja6b3k|#Y9+E77!_jwgCQaftb=f5jEyEd@&0aCU?=u+=r`X zzxG&nS_tQ&S~}Dj+yui~v9b@IOKl5@zyv-e__79<rcWb%+NY(|7_wI_sGo#YgIx$s zN^o(AIeRXzK-8hC&{VOTbf^VKmMp_c5#9?H-%Zn9nZC)sz11;VdWU~a_O4|;0UOhV zAsY}oo1qfPUBzdgchY@WC;4Oj8IJ}3$@*5~3Xhv#VF}lDuvy5#8o??Y7=;`4aVT5? zzm^;w$U(mkwlc~|1G4^?MQe_9<xlx~A~`sZs$?e|cf!v(i>&@HTxuO<FR3h-MBp-I z3EgNfAB1-RRr7hZ<r}Sr#+wxS$x<W@i-w;~r=sA{8-bDKXeZ>=^0l($_%6gSY=O40 zT)NRc2Yv`4W|B;*vIL1XU-Z+8xndBylAPFoX^liuO&)~b{qZ-cv4;DK>FCX_=uI_6 zU}l99t^E<7FVwDTfqOe@<kc>y#{|}fhQepd7KaUTkbi>ZK_~}b9w5?Q-rHCmC1}WH zKxoNc9S}{OZA;7J`fDRCEfH^zVTe9|x1hjW3IueTN9%mwib`)bmCr;(*&XP}|JsWv zWVA!mTmA{={Xkn5>p|uoHLd4QLb^b%&~oTQ48w;q!Z4o*M&&UK6|Mre?-AQ_$jJY> z2U>CkYSztwt9CuI*6(#Z%5~y0g+a5(kyH@(Y@F0!)Lvq7wim(>feW#?1=pBT3Ip8w zBD0G~aA|zxl2v4*;M|Z$qYB8Q26kb`ua>K>usP}vhs;qkJdU=Dk^U{NVlBJ&^1|?u zwF7~CWsNqRXwvl&)C~^$Q?V!#GtiWv$BBO5<#>BGR{ur3{nOGF!=qPpq}%f5eD9kh zEs?O_hl+^WaI8gD*J-UmO-pI(5OmUqHDr?E`@(*FAA6YcFa42l{dcu(bN$U$>fm7E z^5OR3!y`uPi1#vd9Z=T=gSy|Zk7(iZACI+(qC1k#=hJa_HWtrjS<CR{SFX!l7HTdH zv3->Oy~l^L#pl=Ii()a=@7G3AwB-AKc#G>)Bo$~QTK(0=calFwd-zl0UXiSt7&3l{ zX*><A>44)F$_@4-v`b+`J5SL>*Lofj0^X1nd9DMH3Pc!*0b%mIEo%Kk#ksf`=O_VY z4<A4|pp*g16D92z{0+LEN))vF>9e_KMIYYU9$Nm*sDm+UJDS#w5J#lqqR{+0iBcdz zh#{!g^j%p6e4MK8J$j`!dtw&<9pZ=#BwkYxF!0L(j~5{rH4^Q^N`@B$!KPtKcd4pp zhETZ~gYENbDg}b9`p*zQq(!au1p>mPp`nc#|5~;F?9qMIbnm8Ib#Jx$p4!%}wc3^~ z_0zObHj_dSzGBB1@pI4r8w}h&=wQ?AQ`y()SHic#5f*qUVSf?2`#4^olr{pFo`AP; z2$tkK9q&gC<G+MA{QU)Q80kw)LH*z*)NVmD+bx)uMf@7DA4s7KkzU#wJlqF9tnJAz zc_0fw^x{st(C}RHmX|KU#KN6evL>OLF9AeD-Y$5<kkKS=ZOu$2U#S)k$W%OJOnwQ6 zqBpONi|%bT{ga|7?RXQQKoq~uRY!Y}NwVOlxQ1<QU7jy8e;!Egsx8fh!EJW~on{+7 zI(!qw!%ab87@FWlAi|?Zp#;6&U>8!n3ES}k?Qjdn;P)y{7hqc)A`??*y%1$yec=?1 zNgXw^9A`ZUCt^7yte>i`CaoW)A|$d(xFf2ldkDoP_Xi@{?cGXiXe(Tp(Szog`=dV> z<mX)Sac#V-XF_3egiOeYvZ-8Z;L+t>rOtLl75DXJS`hK@9<FEHwvm`4WEp0oOT5QW zo7_<49E=Q{U!{Wo>R$<GjNW#ybGyJE6rF*UfP=`Ybbb-gk0is)^o8N!cyey`PN2^e zk>sKr=rgTQpwEB|`T<C34fvT{VQNmOu^<zh-8>cw*+4vnZPEnr=k+`$b}J;pBaRQ) zJOx57p?HgzUYCm;1ju`eN?rtGaz$?kq2c3&QJ<EaV1f`EUNE7Pwz;?jz+eq>Z-p>M zE+`gA3Rpu6f$4=sXRCO7c^6i97qIN;<LpJZXcBH7iixgmMg1v^;`TR5+6l0aS5?<> z)O!CZATl;+tuXk;W&u;Rdk7ZdDFUr8V`#V}sX=iUV16v2U4jP-F5%WOiiYnr>TgPJ zHwtg|OK6xP4zR%${cwl}Hj_0-W}4RsUKG}Fc|{bAqYttAIZz17{)`XH=|Eu2&EEe* zLH@kUN$Uv#P*DjsaF%75c4u2{68`&oic$Lx)q7OG6J7+{X}i1iC!FG)6vDt<!=2S$ zds%U#(2w8@{KOl9ul!S{2;(cZkUu=moJJ^U!|6}hu!$Qb1pDehVPc>VY81XkWjrh( zn4Wgt+=s=p!aJZrDpaA7(%@*~iNn%GQXRV2-sX0O9JD@75Yl_0_$xG-oTUP#fvaF6 zE=T<uk+)?e7S3{~lzmtV0LP&lUg})4=JFOd1J0m&s0#B-hz0^*_?REr>%bcl0e3P_ z#FIMU*X?qj(`kTsuz<S(cB^dKv_Lo6RRQzBW1f2Ylv$egUEx#Jwev$MlKpxl6}Ik0 zOcB~$cQe!LbF~c34_Vhcm6lZqWd`jnK6PlyrimQhRo;Bf!C8H>C<vSn_N@5V!f763 z-s0HfaP(tjQhaw1i-X1iul}2Xz*e$H0_PHPKrOt8&cnx|Ae+lS#qzO36acS3<l6@M z#14}Ntv_G{qY57ZiUceBM@Fu6@!-sKx&CtyFQOeA$}ONgcmj9LZo?RWc992hh8-pi zhpRU=Lxgw(h|W@MHF!vt7jAyrNJIvHO_Yh2@<a#70yEcKH>+(Z3-xzF<nT~C<yblf z#M8q44h#7&)3jC^BuU%Mz}=zQg>4yf#ZbZuqW(t~+4huIOxlN>Q7!`PFc-RnaGRY* zVzSS7bi?|iK7IU6SFNw#-8Phu*GBW~mes=}`Km0+v&ZI~V9~GYXV=Q^xL;wJeW2*~ zt*Cal%ktpt{94)nrZscF9@u4!U%q4PP4{0F?^@fI9~s#-EL(k(lYO{Cl!jQ@DFQeU z(<7^6)oi9LDP6L(V_@y&14x*roP^Jd|AM*pASYphYTOVlbaAe!oA?DU|Io7MaedtX zvN<lvfeSB2y#GH)o}732tOFFb{||B%&by4DjDWvL0e=q24DVG0_uA}QuO!tJ!Mt|V z6TD+~>#0D`CWEboyuqhnf^l7FHy2NVz#nmn3yvOMjMZ<SYsBi;Y?`_H;1<tB5y@|7 zy>2&!X}SHc;NCZhlfv5}3D)sA`>nvnp5V6s|D)LYMT@!-S0_);_VX5@Ff4jlii;*n zBeYIf86i}*I-!jra=KLGsI6nT4MU~~R7!zziTGzVkkJcbmgVUUMVG6zqlb2cb=NEx z{x3NxxFkCf^2MKKj|Z<Z2%^BrGo?0RBVxg@E<kbdARO*aL}8gA06q#ufio;&o$wCm zcS7Gi9LbN$G1!-kLP{Ct(PSq+C37JXy5#2_XyBmbo#pb*(&lT35>tPK!}x&4fc$&3 z{fG#mB*bYL0ZiBLb^oK{By?PAifIUEUy0=an}IoCW#DZTn+zIg&teC#6<mM08v$-q zZScMw0VX;HG$i7A8?S#;m=az@?iw;S!bOJgF%KbQfKh7x!k99gE5pYkvVP+&vhf~S zzCm!`@O|yuFy*%HP>jPa=d2((x8&LTw3jrc{`cApt2*T;J+7CX#Q7wjWVEq{#*opo z7i^rjAWB4b@n8M7D`~;n;6h>f-dTi2-xx3@4*HTwyP5z72%4p^r$rLU4w1^03r|KK z4bH^7izc!KI08ay;dH!x5n5~6ybD62Y!H4Q0ME4*V5Jn{JOcfr2k)e%wr=i+s6L7C zrihL-62hCR8+d?)AS9zj2lK+~g|Vv&t91l@q6*oCo~Tn!S_Wi&A`rvuQG}8X$0YTJ z#h9ky@xh4Xd^&z&)I$kHFej0tL%~H2*-X>NMWw8WQ^g`sD8(9?p9czs9Cg^QIDF$~ z5Hn}4;TZgdkxAi(OGhS^`qLLiCY{F!m;~2r>c0#{GUeh}qypBz9g7q=S04|r4~kQe zIfO&)0i*UVs%}gcYUsi^;zf~l5+FDSQ)eR(ww#4kK@bFKnq^T!E>|$eDE~*63th=i z;lidNR?seouLEj0Z})Cn6i@gh$~l1yQ{?F(r!!yPh!_lL`+M&OQci~E#&z8aN;dC7 z>`zX)w@zN0EN|%WSf{pD_pj5|ZM&BkCQY=#kvAi5&{11dy8>A=XsBekuT+wVe#wab zp{0vP=dDFc6+{1|f)mib?-Q<ff}?{zF!Vl3mwTNGkFSj$u$a_0g<zc|I>RH|?a*Cu z5}_B@QN$Kq#y;1L8&|?2*nHLMxnA$}b@H9?6||o4DDRXEx63#Jx`ZEK#}U_yhSPwo zL1Yh|nl#Uh<S{+phMa>m(7&bi$%r~4%&Dm+I6u&%2GoVEFSm&sF@I&S?{=g2H*kj~ ztH5q=gEU`MsX*6KA}%c&1!+tbC7e)=DF8rWfCz*L6`QH&dAb$pJvhigA{<gsnVeTI zfC64T58@(-4@pDKZXXHUy><33%LCJ;IA4O<-!rkPG7Kwe->H3=s!(zCvK~d*eDwRm zuoQ5kk(5^&cA*uPgzb26A9~_AWq1X9g@6v-;F6zaBce&2wmibHXrk!1hsk5td$%0C zW^-w01^)?rgB_SsB4o`6p{FN`<R6w5>G&4}`PaH8M!mm8^DFBb_9k7EB3`fnyn^UK zgBFF}4X7X~{1UDx@Eg0%)h2P1a4$G+Q|J<L9CcRT4P5^XqY0}C4pX>cH37UKk|Nny z7Y?TgiYYmA2rgnY6%@zEXrhcak9qciDNM&v2BeDt%2_%QLrka92-{ck1NPJ`JFqYZ zw9oit(F}~4r{=caWqG0Ahy_xd*i;(9ijfMFt48+Af)eamH;yUDURG-UA;LUpS!$qz zEVAL8g2z*)v{JN$me7`5QjsR-F}iUG1z~^-$T1OKP6ZdyYg`mUBQwu2ri(EU(<EJv zkv{K5vtA6U%Yz=yDhlq<oH@r1duI<_GgIExyBRVOWHM>0SlOh6SB<UMF&vUbX+sI< zD}^mn<?&w&3R{U^B}I&m7-LfK>*yD>5>3^_sIkKDMJ`_bMKtd1z<1)8<WRXW_&1Wm zuLyh5OHwqel9Kh(yPg~p>a4E|?v)-~?ooZY81jxeU-<PMjr~Fu&9(qJx*Cz3+b%iN z_O`JxZQ3_WGrhELoQ=xE2+6>@q@04*GMSm&g`+Zn&~P}0!nciMm~h*3X>AWKT+zO5 zG;nIJv44(iUcP<607FHa#r?x1lejddn^S5I!&QS;1Fy;sw=Dd<0f&g2qpCQ$Il!d# z*ZXMiz!ckjV?#HAppCsVKN4_>(&W_*)x@DfARP}SRJdu0z;;A#(eL|1O&S1>ra=AI zO&WZc0O$o4w_ERql}6_g7n^MNSGes_LX2#?WB(<`6uW0Z6jd;!m)JYBPhf>&y_3t< z+K#P+okT~dnyh^cmi*##$ev|m=Yr&!E)OH{AOnY>q3d2}i=N*lJRZU8i>IQI)Xf1y zYjI0XHQekqD;?QNe^%A}A)hb2T+V<Nd4ZS-DT1)EXF<$#dW&8!lDfNn2o&7wUuAhS z_(XSbg|*6$h9;~M%fhAByi`-viLsf1o;?lAemi1^w>cih=wKE7VSJLL0*@S$cgHO= z2<qaXc%kRYk;#TVPKG|j0XNZ?OfuN{ww1LUdF1Di{w1{xGoI?!(zTn1;(}{iPJd!K ztkX+mL_moI>kyJSj$q)5@lrEny<y$C)kbwDX(fOWLogy)QW~qkf&xHD&><1Yj)DD! zh3(Ruh(W`MLiD=g@i?6dST~3_8%$=PX=!j&M-Ez}?#I3@D9^fq0$$e1Q5&#h$ckc< z(72+jS7EK?i7bA>W;j#e#B{*&=cad#BYNQ3{1vggJl>U@mSuFPqdbr-1v-qF1dn5- z^aZ!&1oq%x>0+GS;OTJkI!5D-dD=nUQkLcjgY`xbnalG_$9I?8&qydDL$={s6}W3v zAsdLmy2cc=<1q9HrXVIL+g51oPtd4g$D1VegzQAQxkcK^eixZMd=h4kly{f8Z^e<^ z4d^$iTH@s>GOU7Xd%5tG<kl1owrNd3(tzfdY73+L@n0>CF4!W-)ZwE`+#^ZpRm7V% zFAZ%MMjc?-m7vLy*YjTagrXpE8XL^~8Tv_bN9Pwzq5bc8TAXCxf$tu5w4?GDY0qW8 zd%33^UchN6MzILmWbBHLSmZEJ+R>-}pFF1Nsar;1pSkoRuev?#Rl^K;>H!aX+%!G| zQmgS9WU&rW)`Q{qpNIvR84G+j=62)H!;Pc(SzI=KSp0k8C62S5qzaZj82<*uigYn7 zf4pu$ZCN~RBneSkEoQDEyaBObdo3bu6qH@uqRZhW25KFUIN+uP(_w-EprUYupwRcg zWJ2l~H@46O7MoM%Xe@w)U-=@@B!ZcUue8h$4XyeW62D-fe71AV(5ifrkOEAi7a(1I z%p1IF0g7sfI_%B0y;D=Y3pqgL_$t2)^t_0gM@(snMZ#T$yqPP44A+B9Fd-foMI!xB zuRB!U;PD-TU=RCzQI86~NDA28b`Koug|sd$oC*hLkm7SeRu|B^UZuSIx_oZ1$tk(L zn^t=LF$KxwYItSBqy(=Ls*Z(P+u)%0T^kDr@+cT!%fe^TKJg{sd2z_Xn_z2UHbPhq zB#Q{q!}u?~BA*a5a0zUabOF!M!^tpjY0Obo9)k`cxqQ$YIa>udr}hW)Z=op&cT+8D zngMWbf%=`~sNWqx{g7|<R)T}-Z}nO$U48HmfqTMXC)Cf)Q9t0G9QDIaiLEjfIT~9T zf%Pi7T2XHmRaO1@Zj5z#A^GYKjsl)UD=tTHG_7FdHLE=7@g72I2T;Lz%D5mGb%thZ z6?#bm6s7FBjlJbfFpx^S4tHip(8b=#+^**K6{gpUInnq?3+0+D2CS4)t3E)u6I8#j zzcs_u{_EnAK!HtQ%#kPc`d0B~;YaZDsCMx!K$hMM*41;ignI*J1uADL6>d3a1tVOc z5eC*|k1%@FFD~ngGC9Z##7VYVvMz}?U8uQ;ZudsCX&F8sbAN>T0yH+w67a-BUC6@V zlsxbZW{$*Gqph<NZY>1S!qU|eYYKLC=lxyX$cP)={$nR<7dzqb5sk71=@t>GjVRCf z!#2PnBoqqy{Xn6#B*qyMPaY-*KPru~cfg+n2Icl((d(YL97pB`i^^?ypFW1g0;BDU zIMl0~<tc-d>T#kzG0~<(5zmt}*%ZaIFtL!eJzZS`O^i9wTzGY<$?Ffxq6VcDUfC4j z%I)#RgbU51?so@7S@*vU8WbV8JDKZe6pjN(6^{b|3+xNKfIv9S{~JFA@4u#8lw@(a z>X%sL4*T7=IoYdeAZPv8#AD{_jdncZ-QrEyn;Q_xMm&P_-y8CJ7G)kcOAttaMMrGn zHEi{Ti(|RWqjZVo5ijLZb7?0&kgc(p_dp?}8=49<ml4b*up9`pXsD~0N6Bm3_UIMe z+e_L<5s{g{0--3U^oTVA*|w&t275Pn{Pqm=D$-<65#IVzTIw=w*R^UOAp+f2^Q9Q1 zn2f}mh7^Nwao+ure-PxST~5~A+Ri++YvW;SHJ4=+gB}%c6<*<4CRd|6@@ZIhPa-qw zoa28vez7!u3bn#}LvV%y{>!<H3-Svw=;iXuRvQ050^u&6I!cBrPF$D_)w`*+*6MO0 z<lI!mb_u1sgMdb{5u;6^eD`X9p$pkj>$d%W2Ga@FXq!_R0&%FiL5D}va8SifSJN5^ zjvxmr<l0n8^=G($TDiPbE_4oJn~IX67D_RX1u)62sNq~9aB$Xtef_ZuvJC#;#q!v@ z(^)|uxF#O8@(82wy4`)^ZP>?~9an%wL>Mr!Y%fOk7A=^DCB)G=SfwO$$<;u?fD+s^ zF730cQNp%xfgMA%uO+CjvXC)gqr?}<a=EgA@iqLEFuxdnoecqADBGcqHxJ3q&e9Z! z46txq`|o-a7w%yB$6Z$tfgKc<nfB4uiKc?rl}r~xl9GZ^8jFVW#k|>7fS6ym?cM0m z+<^XK@?}hSCG;!YBJ$C8yTTy8Qy{_V1hpU8Dq{j*KlKxc?|TxikGbv_p$;?%Uc4KZ z#a)4stRk+h`h4Y$9+NpoZRUO%SyFH@hj-W#y|@wT{{(mr0q?a^x-_0Cb#)DjEgDG` zpT7lkBGT810MAN!iyvx+LynYAH|L}tNuHauX1}Q4sJ=oXouVX&X?V0<A~Ht5&nf=u z58PF<zY#+Ll1Pbwitss-;k5&?gl{#QYWSMB2rom|Q#SNT@Cp~@IOGt|&n#cUbD=6n z3xXU)khqq=Kn`WO@wzC7mK3|KwHsV~JJG4(T-r+k@`5ZaAjY<>`^Mx+xHL$fbTed6 zVm=|`xx9dt=x&Ke!mGRUX7?(dP5D#AYNApfG3%r7XRZZ%MT{u`Q=4KUJf0XLvf#4R z0Q*P9K4G;r(ypL;Ma}ESF85Pt$kxSns^bDno|N$>TN%%kyH*W0!^(2eq@msrRDq(A zK?@@by5Ixw6;XT*MH)D5p2;VnkA(=k4paccQ-9cX0+9(x3jCH+1O8bP_O)f0-hXXV zlQ+MS+hNn<EwIDJ5aGLqv-{rb_=Mw&OEUzZkk1fjz5gLi%XcMrEiUpb8sPh)*~J4Y z%k3~bK+~9=OCtt+W7^oj!W1vZ3mO+;PHSwL|FV>~_(t^|qb*wKm0*ZBA*NI8GCPYl zn_Z?g4v>KO>fjfZQ1Y!2c7cVW2}K?8H`%SDv=UDyQ&}0wW_Sk>f){a_BQcpGgn$%~ zd=}v}c8?1%1X19LvP5`-wJz%#>h+ja7~9KC0dPPsX$q9OItQICZe#OGzmZY}ndTlF z76AT-RPa)q9&ZjS4+uhs`wNPqag4!$E#|?2`m=;2!1~H@rjd80^m&d#7z?PxOjv;e zaRxZe$ndNb+<!$$uefVa){$dw<P`QElt)whu8qgdZd5b1xkTHsW_}DCV>=>x#0h=7 z;{nHeI6mF5&l>i{AKccE;AEfKl+KIXBip<H|C}?*@Cx=de`=S@u%mZCqRDx(U9?u2 z>ZC5d!0I5+nP1q5-C=d0i1(7A{zeNy8SdT0cYJBSC*BEefWjRpz|l$yTfVEi%io>n zCIXWPYg{CZCjxi6iGxT7-uUEB%6ul)B2ZHB&qvx+@^ORZDeV3w9e>RR2~7)w!<QpP zM%h#;^35+m$M<%vSet;8B`8WVvm)R(qcS;JSOY;)@~^^)!{<MN@LRKKu4|@B7T(|u zUQ}@eEh$+43I*^e3G6$IC*lOt6i%cvj9ZSOP+^1Z1HU4kz?>5Mo4RVe{SQchOL<}f zpUVXieF;YlkRP81n*okje5w{W-ynJ~903*q#~Li7rJ1_OrCOHdgo$d(lWY#dmUCi= zTH>}H-rYHOH<(?&Yh9gc(iIdIX}YD7T~Wc?PT3ued(Hlk=?!Hx&Acr*(gxSJ>L$Y+ z$s#j1N<df_63=<c5)}`zAy%Qh>p;G<-?q!UdSaLiN{EMJ)B(q6)_>>#XK0sD7T#wT zK1H1D)_gh!c@fH5tLk2KT8nk)o|b=4w=qxOfj9sNux5CD=8f=$UxFum5PRtiJmEjL zN8e`Ut%gOinB@HiX}n-5Q9Xl2b=mNHC@^y|*7HX0Xoc^cB@qpKi#F5Z0kHH)wgxGg z#MYNY!KM>>O0bn0SnX;;3Ptx^kM=Yyh3)$#_X6>gLgTi%w6=HC1QN$*j>Pk5wk${6 z3J6-F5@sq94Ck@IdN6Sf4yapzDZ%625JXxz0xJo9RvSscN15)?#Gs4BEYCDrZLQ0= z<GmTx>YeoXd*e9U1rV1IULcRUu)w{0>K~W5cO-9-kztpIp?vaQWMs^g@|^=sw&&Fo zwPzTpd}D$E>ykW`y*Xmy8Qv9t5l4l9290y2b3zR`g(f>Q$h#6Oyj`vBM)tCSKsc~^ zWBpNJQSp_c6QOfNxK;uJS%{b30)LHiE^f!%HxS<cij8^E7UX79L!K_*gNSBa;O{~* z!*^aHXJXUA2(l-7(JWfpdfehgx!1WB`k!2CLWhxX2y~-&3NuQ{3_Z4;6mIPfNpPz? zt5KmCZWUxEpVA35c$1^@ZX2}N&7J~~h&>yY2Vg2iBs5eHj$~ZoP!;~q1bk#7ORjUX z`@bp@S@I@=-8bO-7MOWRp&?+H^0&(QuKs2bs|W^C6CgtwL#%~hAaSf>rD`IFI>xT@ zhS5jaQ-4&x3D7)?{n{IL>Bg&yuoKXfUc0s_<}WZH4#bbq9P2^-xz`a!-h%^Vc=VkO z1+goTdxuR%k!M6jt!5NxLQ4#)G%M&`8?Wo@Lh0CpldbB;yQXT_ZA`S+rdFiK2RoJh zZ+7?XDY5+V15;h1t8MBKi2p05?%vq7@q_u9-j=5Bjd|;B+r+i|?Dg;w@qY?`0k&BM zT$z(pv*wMsFck!%;JHkoF(H#S2NOaQW>SNBxC|Fw4Ba$j#WIj`dD1nkp#~Pbj0gUI zn0phzwvOvum~$_1HvktG`wo%-2yg{Kf&jShqC|?KsEwkiU6y27n{9cMZCQ~w*|F2s zPMp+Pem6_gIE|CIb&{7ZSzfj#Zq}yRnlw%Rv|0SJwy#ZJVnP3R<^mK+t+vy?U!+J7 zxOZmm%$YN1&V1)PaQOZL*vncw>>Qu1Zjk^?HQ2}6hKJkQW172Gv(+J7p*-T;DubCu z?;-v#`MR^fsVQT{_3Mi!|5uSXhfKnV9HO(_`3-RUW?FlQBV?nl??LP?T)v?4^2M|| z_<DzZcOzDCn5ev*PT-{jb-{iMn7l**kyP8}$0&@i$bG&$OWB5jwJn?lf*s!ESeq9_ zgbcE|-iA!?2*#AoyFO;A5kAOcBQ_(F<(S#Ci`-irT2|@G3rt+_kkH}xQt#u%od<a! zM>+?a$g~ArET$3$QT3;@2MCW>KIQZsfp?uf$WfekJHy<a+Y1mU9TJ}9o+j=&=kDBY z>NP;*cMf;;0zYCe%sN4vp|i8x8+@0}UTp5`-{S4x<Z$jr4<hEl=Rbvh1EkaJEw1I} z$2kdBrMHleVs-ESp7Bt}){<kgtNebGKS>yE1m{wH?^p%fdA;xfoKJKRC-F-5s>(By zz~DS|NT5Y~5y^=zN`tzYjtTjr7j_oehvAlXWxMzFZ69qPn!Dd5oQeW8GXky}%bMa0 zSmM?c*0G;}lxT~uZxd~fN;^vU&NO$=P?Ycm&Zsz1M%At>me$X*+bF`RA>Fr%?`7u2 zW5S2Pu`<a|HEAt<3Ylpacbm)hGAq<5Up~1Sr4!8y<Xl&BBJ-UIG$?GAEJ2O9O7-W- zu;m&Rx`Gy0S}ZU470l(9pR-leZV^qXbk(J-o$hrM*$8U~p^ep`ZkRXU=GaB6s@p@7 zT+6qijo|SCo~mhDu<8JSaT*^05^>Os#V8`Jw%B7q>l(%gwTR^MxQLt$VOfkL5{fnt zjaEGtur@M~s+d9FD{P|5ib*qX(IzUiHT15dAV#nOAdLGd2e@-6d>_;X+I7&r7Kd@# z<m0*b7X&%tbUfr5-fwe>f)MyMcBXdy*8<2Zi19$c76&2UxLexeS8?v^K8-)^`WYMh zanqJQfZ8Xje&HK1p9hf@XMxM7aFJtpIfLG%0vF7!#>K8+4vFBh8!xPBl;t9Em|!2> zv9@(=p9%59m=MIzOTmMC`#ZpB2$^OjCT}ZJ6oRF~g7ZgBCpY{0H`w8$X<SpR6X0R5 z_<a>`>*_|%6vF+!1V*`KLnb@08qo=>LwxZ%um0%|1Q~2L%nLTOR71}sbeZYny;=A$ z$H>vH{Z63do~U^jtj5pQeAS$*)xNl-lh=e=^Tc;cLW@lGzvxXdWz!T^zL{Eqmi(PV zD=)!6V@``qGTpTRv$1QE;yJLJA18V%87m85mY5fLR|n=r+veJ0_tvwXRa?Kch_t*w zB(nr*$pHX3?I)zAHO!HgFfoC&M1=5iq$S?gZq)4nW)XV~nVMFM0OTe`eN^dV$oFMJ zEdep`G@pd-+5!Zf1WXv957<f^;_lmVGiIpNRgD=!+<AIn9rRinOoZHD`^Nv9{@ULI z9a~efm#sE^wQH~!{2$0^F#}G7W85yiGzydJ(CV?ZOyQX1f5nn{DMiXP;i7w$B&(_? zFPz0)_?W`ZNs(6EJ3JNa5<R*!aA?D*WX+b=PjvZY3&J4A4-yP>q%^xKA5#_p!c^*% z+0HGUSVs5v?HMZc&p+syn13^Il0*sm2o$C;<p_rsuxp5E3u;6pS~CEz34jSjCX9o8 zMSVs^Tu@YfMt&WofspAu4j6Dy3~g`j8^roMX9u0>sv`h5_05zDaJ&MAiS2wyUf%;Z ztZkny3Y4F|#nQVipUL)5_g&Y!DtvU#c~kkU0>3K|mhcOM_S>?cJN(h>Y%!Nb+w1sy zS<<=V)lPU(UD|HN5-;eVwZ)Oa!S-3DT?a=BIcA;M+G@fdG|vrWQvIvAy|Yz30{v*> zXivc7PHXtZI?`OXd1y`*)PvQmViqo423HIR4JL@Ov9K*hd(rBL5n3{6O9#nRq?cn7 zbLB7<b`KT6T8O3Xdm%XC257fOJA)fUSr>qDj#wx{3p^9M*t-F*wPI&CV1*klC=Lii zJSdAo^q1?|bs~k`n}keD)NE@*?|KTbLbx7$sP75l$kOowD#IlIvHU7ob)YtOo%u%j zEz(KaGT7`dnAn{k%ffUM!mHAKm@Vd6_N;gmwi0o>?F48488ExO9SHYjJ<c`pCBo*h zeY;GDqc;g;P(84&bnoJv;hK7x<CL)N%O?#d2U!8M!Y*d9P{iLYnjZ1OWTtX#CLv7z z04EW|@%79a+Td+Gf$2lsy@ejcY2uvBrpty)B)2Ad#a=+VI))t;*t>!j2ZNtf6(kL* zuE{YDhiZ|teZWo1uV%M^S5m<Q!|i}x33j0y_lK)aQlk5~W0MD?35C))X|9^kq;Qg9 z1Gq4cgD?P{&F~4!ts64U1Cub2$0J8K8%N9U#3o#1PJ6Q%d)aLLs0~?4B8_@j0m@1# z{}r+R!6n*cdd!=pkCWa-Fs3sg64M9m;zcq$5Q}NGI6-6jNh%=R48g<0G|TL<#<{*s zecu?yp5iLEiN~QUdx4}|4{dn>D6PA(9xplLSY~xD-AYs<d@nKEDBUt<68SKr+!;eJ zF}jN`PQs^{+dh+UgMcc81u`*170)N#zGQ%_ryLjiV@|kp=)m1Wpr+!Rb>xEwjuUGf ze$!faBcc$%3r0H*?&rjB^Y8mXfa`IC5G>|~le4M$4v@ochOJW}|EWL>WH{33^wKmM zVd%im(vl&g5h0FbH2%C2XYd5yhj>$z<H+Ijy^gz1%O9e;9A59&>^9DmM&3?D@(Ra5 z=?88DnuN5!`##3u!x)E2*n<awp<QbAU(pQW{hwK8^arXAOYH7xi&O1+(`CsGeLfWQ zA;)5o`3^gUA398~0woh?;e@l2qCto(5tK|h2BztqW1W4xlm9i@o`^xxk>(+KS9dzo z<EA4bB@k^P?_?ki@8qkS2EZ*bu#wy$6&}QO*H7bskBCJ0_V)q}B8+g-XltO+;D`() z>VwXL6B$EY?#@3?_w=NVtS1!`<zRU2f4D%_9clzS#Q$pA)R$?XMW5m>HuJp`#jfAT zHP};T4_-Mkc*Q1)`=YAyOi1)9!i>C*ojAu`vN)_zR$c(!%mrjoJDK{-XCD1ryjL>) zjqQ$ia`%)~JBeIORbZk?fx76PBJGs`ZBZLhP%p-rGboC%T=gmnB|A9PtV;l*1f!9O z8xT|9UP4^CtlH>o2r3R~N-3_~i!fjhQ^t;Z#ufIi?;%iJmF}=jwZS{J=&J&V(ezc_ zu@P+JlSDO?ss|AuPH-~NEQ|>OI>8}#qV1D7eIX^pNwDBTw20$&oW}(D1x~$5{D|hZ z0*Wr{c!%^E2!t}&6eas6IHqt$Jd8DeE%eY)Fu3p;a79G#C3Z*`I9!%6@nQI|Y%E>s z%{}df#puF1VuoT9X19tLMJP65c4fYQ8s+|t;w%r5B0ee5P|vhL_f*2M$G~+ImafBs z4D)+GdpB6!WZ7;7+6mo0#>SgS$7~`UgXsKml{~tCy%<dm<Y)^RzehOF*dmQeYr1;| z&Y>iyUp!WB#HJJ{q=(6eYuC$f(C!N2MBnQE8Q*9ALKC*|;AyxN;0KAq7dR;7;9YQI zb%!?)56WTS6;+!|;E0m|3KiHuj>iR=u_?fo)3%?2rh&KZh{KbV>4007duDN6Alf}c ziO+C))EGkq?)&TA1DO*s5j_ADD^vAgW6)cRl@$K=j;4Tt@ClFKfzw={ZWL-82V4op z{$!>bg`8;Ajd)|c{Nw&yFgi!fX~+OA=$fwRb^iF%b}b$b>xv=SHH#N4`eDs(M1$Eu z%K3sA-WlOh<h9tiOk-X+^Ib8;tA3KDcw!6D&hj8TEICfhe=IyP<Sk1kmaaLRqfP_? z=mt6jfIkCa7!J>ao6R*RsvcIHF6A&BSGKG-?rsCmH`u%Q`8a3q0`-E)1WeQmi(^~b zS)kZ8<M{0{?Xb$U!?vhLYkNC6+TPxV@I&(F*3>lP87Y?LdV0o+6^tXw#fPlSgXPe6 ze7y7_133RM*I!y*B}4+?_7X;sBmonl%DjQT(AiRJSG45dHsE0O;(7wBZ$x0=1*rPD z?7Ftq`@yQ&+uYdOQs+XNB_-mV(zGdJ%~kb*4P*orklz?oQj3_emeq}0$KWyK5nq7w z!44vb^bN3qj^EX`F1vr6NGuxr`WhR01p~`CSf!@HuCGoZfC5m$ot3d)hZuk!FxxJ! zmS(q<^8CDi#n^Lb9kzB^;X)iUnJRdE@;!sQ0YGJw6@>FLUGQdMIUMD?_EF6IE@0@2 z+wyfhDy|CH2ibQ_%fgDt20?nI9>%0lZ@}E=5<nbUMBqkT&~!vPQ#3cy<o|D)LQETp zz_C3D@z=6%Ct&MaTRk4taB4Sb+6^$$s&f7aa>8WstUQDR4~GG-#H7_{x%aMqWmuYw zd@%Fl?z3~7AM`j%yNd8cl)E>an3(KhpDj$ymPX)-IPd@h{}f+-6_ZyVGd3SVfRPy# zX1Q$x++@P~BQwC{kO>4C#%U|H=Zoxl_6Yi3MsC=uRzb{;X}={CUnI@2uBsRW3wgSG zZ#8E*?q|R#f1UlEkbr--1`8=1`>+t{kPtgJ9LZJYpzo~Lc!HSlhMz~z7>4q^H}3rn ztgE>Dd1QIlfX{z^l&m^x69ePdUiLNNW-8O<cp<UoGulNn+UKGfEj?gAZFjrzBbcyv z2UEdryWtKp!~vd0#xHv+Xzyn8Zol7Me!ANpM7d&(zh+7p6<YbTHZOl#>TXh@TzJgc zg>+`zw8i;`&%dl2o;UoiCu}am{>0xvIoSS>)zp67r2T{_)ZZaHI3hmfhIadXBdEiu zkx~DEcvAQ&{QeQ-zMX+>co?VKkbo+$1ws4+OVR&n3d`?=LgSMhcoxF2PzP62Lc!J} zNCMuX?ncZIVoae5s?10f9tWL|+p&A$@j^?hvZ=-v63{J9ALzq$;fFL$&xLj0Cdfb7 z<Pb)y4QPk`OdYcdmiqbrfh~1{Ag+=`fA9X=_xFAXnbZ9-@4tX^9K@FD0MPlK-J0S= zc|H)=cv!nj(J;#1kHhhcvj8tU50?RWItj(!uatjTXofGVF+VUjH_(-_z?P6&y88C_ z_3dYhSq2JP?*uWn*J&W3gXim&^2o+UUlxRo=*t)~Aq`=_12%*uaT94yT48pbEFne~ zP8%$Y{A{2~fPhU3`U>5Hbwr|`U(#8)$F8`97Yv`@dCqV6HmDF%+W_dv;<kZff;xZ@ zk2S5WlR!KTD1z^{*WLOiA1HzRG2c&YLzwLzkV3&>v)2HNLEPtKvvpu$89+oUqQ$g< z=T#<Wve}HRt(u$r#8&FBt(Y4doVdj2bb%ii{5*Ufq-x$TbO{U+Q=JDyIb$BP)zg?m zWHGiW`xz2_dy(WlXq2BW+JkNbZ?bu>cG~Vw*^A*sm`@M=lpTA;>6$wQQP>L|)PQX6 zYhh_0!<-{uL5&AVQioU`+jj~prZ2wLAkzYjItBhm8VUaVNJPfJ&;%r*SaFxHa+e>_ z#tXMmV!#XcQQ4&x_a)8yu3XvvK+M;wsC^MIF4;qIK{VX5*yu(-M2O(mXQ{Q?cM7r< zIXP@_ARsYQRu0tqT4c3947yoIFpf;2R%??>w9*}d)hE_UR%wTb^McAPHhVT4i2GU; zr9T3iZ#@(fnVZ*Q-ovbZk=JtJ7KfT;|JczQ2ac&LP#f?xMg;KrSjFZEiyV%M47u&> zqJxb}B2YALM-0)?M)}`zZMZ?m2V((m1{cAbWNBF?C@dTk;I@c31f7k_0`BnW5d@(! zi|gn77S<JvQyrpNg$*^}`ipCT81X&nC&ix$FL2$n1@VW7-zs1vAV_9h3E!_T9u{I^ z0Fr*mz!G!vfCmhdB~9_o_zlIhxVs_^wWL@IBr&m#*ph<B>_2GJeok|G4{NF+{5vW9 zb2g_JD_5Urb@n8PRs^hwFw7~Bh!c54Wag0CU~gK5P^kxyH#ISKCY5VLJa2v-xX*Rr z*SruF8AblyH`!<zAq358#79vG6f_zTNHz-m*dnM>B{|6a){%hRl91Gd+Bg!nNQ$wq z1P6=iD)xIQHm7_O^b}#JJi?x2+A@4&#OKd4s2B!s%3bX5VZSxdeB?$L%|J50@??I& z6N3KW<`<%-$ohJq|Ii@$5QgVBb|aB5visO)G;Kz!^V^MuyV#DwL;e1^cVW1H!2sox zUz<_fZe_;quhVqt42>Ow-QO(q3-3bCw@RHn#Co~qM=t7W%~%+D)zPVYCfDAxCfE=@ zx^DXLrji$a-Q;eEW4CU2fzjS~AM2euHMQpSls6pqP9HrwJ$e)nLj#-t=q}Cg)%MxL zX)LdxSY*im`DN&#B(2AwS}oP{WoPkO%^K?ysi2$96&#_2?Tp=V#_n<l9i{TS-RzN6 zQ0PX<K^^NgDWqV^-i>Dy5fkti>`TJkV3Dok&&REy0%ku}JTtzPR17vPm3Nj#x4ya# zUOT5Nmg-EM@eozNq6OmyvdHudHfnZvz~u_CPdmE|tAn{bokl2?dd!vcq(e+m0~ue| z-Q3g5MkCF3N4*Vs#i*~zHX8?@(o{_?PV-=g!iG#BE{__+4UP%{EesnREK7uksLDE2 zAQocUdzC7v2kda1OxWrQ1(OZ{zkIetwtYO2Xg~L-NF-|0#awQDJl9@l^BNSphRfV9 ze%SzpzZ0p#LT-1!j-|j*6QjEl3E%CYM;*)N#_AB{=0&VuC>5y0=GXL#KNP#se{tB( zl+EJ~$mpU?frgV&v1BoX8PJZ%da?sb#VX$su4zZ|zzigr{B~F=msuE#_Jx3mrlt0U zm6pt<<^@Wnr>8m*5wwfkJG)%Lhp^(i5M}B&ocj1`JnYfal5+3O#4GuzWZk#VB0p#Z zFfJ-w6+&j;s_{K(=;U?C`J5S9xNc!A{rN!B?@tDpXdAWH2W+bxPQ!QD4^qltkeDgi zD#Kw9Vz`4043#$9xWjPyZDZ&D)1@Kg#d?R|a0P^&J4F`wRbLKhN^5)fsy%yF^<*uI z(%w(ZnCa2&tbeCF5OD7Vhvs&}F>ZtSfF0BSOBXm;gNRdx{dWG7;<v>tw>gSH$Q=L| z!u?3hfzCvak&xiIscQpdcTmzxC`Rh~QXX$yu)K(wlJC{2UtdB;a}-0>kmEgF8D59x z+C}`FyIeQg?1oDli$?804UgMq9X8{B$+~B+MR|z&>iDY^>7K&|+{?<e#bQnE86Vq| zvIy2`MMPI`+qZ2b{W<WE;hWWHqc*qU*T$R>-5Y$U0Qc{5`B+Ci1-#STI^@zE%sv`H z1pJuo+z;q|ar<@=0g<;_t+z7EKo&^+w%+lbyT*FkERvM#>)1AuK|QRvo5p@OirnVX zMjb3bjkfuJ=JFxV9GxxHB+oYr1@UR{d0~%4QSTHli#~RldnAr}!fd0}3!RKlp@k{e zJyAy_2TOB<Lt9JztM7X3uGQNQu9>`{v(>4vWF(Y=x2mIa^wzXs8JwRVJojSbiP1H8 zt)cHjht_m%#PVYoa^XZGeD2H0y6%S~g4H~I{u%bHFb1y+?Qcx<XthF}Jw1JNc030} znUWjtB&<y5l)_Gf=Rqppr%aKKTly?O0KLSg!J@LV%BwwK)AW(q@eU2lExECm^01d` zKK!vp&9JaW_&wx)B?gdv&@jJGD-n0Q@$<RrAswkmc%h*rp$lPfS6Ysd!MpH7!RG{Q zid4$M4j-bNfF*!9b?Ayrn(I!}oTZ7wl`T!B5?w{R9P?cyk)<~w3Vcbp@U|<OKh)mT zTo8*x;<n86>n6Gf*4neN2IuM{Yjm5Ui*j?gB`OJ4$)g79v4hbqgIiLyAa8MwPL8@9 z-ObItPSq_LsalWZ#@cI9BWoWR?U!AxxrsIHS*M&(U6dEDyUPu*g}bYJ{S02JY<<L& zlC?}&Q5@NrtkxBh;k?~mNP1o2bj<I2eXOo72F@InfcGAW=v{VNM7t;;T2BI3A_!f+ z7K%i`C+Z=-Gu91b)z;_`!TACO3hu2VGIkR#m*G?$ioyQ@tx0?Cf5M)-1<~YKk7*<p z-5w?ykM@M}S!}d*jW*g|;|*jbjXuwexT0yF9X7mvo!*MOKaVw!_S+}1-+ncAQy5uZ z9Kst*NLT_2V?NC=%lJ;?0oqq|<A=GMu%EJfX}it7huuea`Du4h5XcCi{fApSW7kiU z<4c6@{FU%CV7d)RQ3tJ0gF+{APwN6F<|9LjpVOlbq#-YnMOh43{obTiO84!5<V}z4 z@9*FL=#%)hasAo#eaB|nw{E?o@96sMQ>}u~icw`LtF`<c{5~}OntizTktZKH*xS4R zk(t@EGr5_gy(j19vNOj&aJxl1fj#G4f^wQzo|d;Of3<dX<r_LF&{-zMp3GdiW%nUz zD}ws&M8v6>w+J_1rD=nfQ<A0pO^YDiq;y&?>a(l0tz`C>jG4k$h{6?n?LEM|!e*Cl zvI==R&c0%&6_Gg_9VQ5!g5@R&y=L~?FNB}-@r;9Uk;W54cws<EXy8xb4v7HeJNEdo z=%vxL^nv#tn11v?U*7?Y>VdvZb8{!xKeT@R**`kF{vG!KBYlq`S#PykZbJhP9(>>a z{{63c@-_Q=F`(18&(F=Aee2oT*|T3{X^W-&4@go?qi<1GjAQ3j#}QTw87|bSBmjF? z60if-o2^18x&Q+ymA`4dT3^9Rrd}%l14&u6uP(^`Romw2BIAL(eB`SM|NHLJggldP zg6Mw>{dL7re1<hzEGH}&M9CtY6fC^YekuF{SbryM?;P1N7v>~6AZY~2ze-aQ;)N!m z&q(~Cp8F3x^2SH`oW!rdGbd*sTA!Ug+TV9{ru`kL;5Mst3lP<JGi-HP7z0Q%(wxL! zKlu!%WdG5b9H!-{Bw_aA8y)r?OSMhE0tVfH1<t*r7uo~@&qc8!h^rsdu}CCOXql90 z=s)o28y`K;k6&*>%QkJDJ30IC`t=XbLb~phSOcaa=u}Bnl)p_q1?_N<L<=o@&GgCn zxmhk+4{s#JV7c9bZ%F`9#oQCr2p<yu6YYUHu+(2mCZF7a|G?YwJp%TDCB7TPNlJ^* z0hU_6B_Q=y;%b!d+^|TRE1e|gpzzj|jN_}vkAhQuZ#>eLP<ztu=H3>oHJP{9IdaT0 zvb|?jt~Ml3<O&U;hGb_jx~ii-CT{NQ*^Etbj{Rltf@9UzxzRnVQX|1skCN$<e4%)A zbKGX@N(Q~Igk{gEy{q(We>&EYaOG=r<8IyEyJ@zEQQoYYJA|8s2JRQg)a2nwTgQ<D zx9~i{Z|2WSHhsm?#M3YN%OqjPM|kF?uK~jad1HmLWZ50CeU{vh>v+k0qqpS!<yT$w zmuYKLoyJdGZnx_vlt%APm&fC})9^F~z?|(dbbqfK`FlMs-PPzd-jed`Z!x?@{u6)d z{#uXg$Fwc~vCDHL5b^t?{z0!XO{Gm6UR-^T!|l@V(f#g#W0n|KW_ACK*c)RZ1*wXM z=u=QB6Lgo`fr`sdI|6<kFBqdjaoP8De`@L9ug0f#yzza9$K$}Q*VA?Q`(cNN7xn7O zeXpj<@cwc>t`T_Xwjf&h2A)}EnGEuMah1jn)-bjpm*e9i*E04Hw6R8?R(hVZ&G0wL zvNAs<mM-%``jiuQRc}DAUo#;WQj?ezTq%>7YaJ4N!66ev>Rg^W1iLey31u3vV7D7P zcaxdx+9|nytlK!nmirw9Ux#Pu2POyChbRLxU>UEgaC3b+YF_uj3N_cVoHeV#7rY%k zdn?bF{yWQAW7@|w&j||y6P{kcBIf4_u!yS};o!}M4yasB*Kn1AtI1VbvAvcS@!y-X z=6ls-HAypf&9o1*3%O=|GAQb+$!n0qgWipLT$NzN8GaWqI|(y;&3{wUn)1EXbTtoB zbG+VPnW<^SQ%jQ9y!dOd_mHH$j?3V0tNCiqnzyiTzRa{W9DlXFg1?&JNbmzdue@^n z)zt*aTot)^T~%~w&T}aF(zEd8@o+2fSC<ul)YS&P<>ex<%CEZgFrK~gz<uii1dESF zH7<B7cC0iG594&>cN`bYcS^kHxw*tAEkA=d9TS-4MB7vSqcTwBZ|9nT@9LK*2Shgh z&f<c<PZWosH+1peK+Emr;lP-=-VkYBn#0m!gz#QWReZZ>T135Vzw5~0GMJqxCYaAk zkLTYAVMl?$Z$K6RwC_TU@Q-MZijd$3u}VZeUiL4`BZJL6pW~IhCfgCEcpEa{K8f5B z??;xg=WD)G^Ap%B0B&6#XG9THFdtSBI8pe)Wip#Ap=*{_<~1>Mj**7P@CTM5#0g@C zfrr5i-v)MMCh-He{s;$ITAYZL<7QI)|Gl|QMph)R^)1b8@)EPxHveD9Yl7tM*jp?~ zNc-AlX-!`I{!2_q%l`2dBsC%5@Hp4~Q`~yK4cdk*iT_GzG?o1;lfGA&A7`Zu)seQj z_N2!b#D)XtURHXWm11z;%N};x>zU(d#=jqiMfd=ij^B>_+LdvnNa+892>7Ks=4FrS zim>?KT>$(m9OT%taQNR<@Oxy%?0?C_{-Y(~@aDQw&6h=p?OT94el?%L??Lv}&m)8M z?{p@^VS(kM3eq$Ex28wnr4fnz|6v`OTe@y^ESeM-zgWgT()8cIVzBouTOiIM{qAz> z<MIq8$6mqGz;()WWo?)PfBH>`k)(W<ze9<tSz=|rYzcaWYr#VokNDy{ml^t(ul2w3 zGRCf|->dv42jEM272g#A^JH3$zkB`u@<-;sOrKx#Kt=ycH22?K`_SF7Oh@A!>HMH& zllWTrD$Sgd6Y$6G<1uc(hY=*76-@go;DP-6*zLkS%yUZeBYARE!rihwr(|FW1aMg< zNfUA+FYe#KQc36dOEXKt$TzDnAr_1EJ9O6(cQEKa;ts#wzRsQwI;QIC>~<%7ic^k| z+k^KWoV;hUw12W?@}Ae;^QN%d6Am|o!>I^<TE};67&2r6<aj~s>GC+H9gf;Mu$D~0 zV;FW!!}}Px-QjTE;06)a4Q_S_49`M16%Lo5OxdS#@aEO0f<fVz^fvxZ2XSM0&udRl zwXQi>1mb7vi|%mPeTYy$;_n}JN2Bh;XzUl2LldL>bm8dq)X{Plr+L$QLJtO~bYa?y z*FxCsML9yS{Ld+~I!q`5=Y{h^pKub9;6Nx+#{$F*ssZ?BO~>S7@5SgrC+Wu@;rRv) zY5LePJYO8mnmY9a8pTd7X#g*~=KSY`lj1t?!Oao66Cn)6e%1k~RiT42L*&5pmh0*$ z6!8j!4~ErZfgGE70~;?KC5a_`Aqawh`>I?i)S?P-5`KI90~!xI2?2;4a3q4fo8BoJ z%>SPEy!rS?=>itn*WbOnJGXPRbEBc{7#(O0#hz5ak_E~Ds)q^4Si!8wZh{i50Uv(i zA0T^76xpV2tg-x|Gv()}%kM=^C_6uh!bW!XX2a3Z9gTi4T5x~GKZ>^@-v;4$hHBnf z^J`{d1vbt$nUcN4IZmhIrW~5m?7^{(2_2W=SdhW;O#X!!OUOB*9}X0{&>=<i3*egA z{1%b%Gv7hS=LiDf2kQx`1L2P`0X9h>2hb<Z$|-ULc}{Q)k8T}Q3IM6#3r9ip3ty<C z)KwT1G0AWePyFp2xDzjM7U09ZvX}TS%`cS4PbA@(hV!^1M?{%sxmL<vlSvbx2ou)? z;d*$Xl>>e+-lHRavr*L+VYgnnaVcQeL{2a1C(xQ8F{Mx6Y<Ta`0Ee;lVYxQ|tv#IV z-O$pzzn8iEx^r$|V2j(OC>l=1L|vib7r{1+pluboKLv|olPvgCM3^RILqIfQ7a}^n z0BM3GLK56I72*3#u!t5BgN<Y`$WsHbGy~%Wl7xutDdsSo2&UE$+z;#~=%0`d+Y7Qw zSyTnZRxdEaqvNz+gcw1B5Cx_&jV`mGUR)frONkJ2JNkTa@56!}Wl=z^;<EvbiqM+c zg2)WCMngOfa>0NW&}PR?NK&!~uxYr&kzF+E*@Z-Xn~3vk6F`!?fNkUjvNlRUJAfpN zz$%x2)iT?g01=ByU7_}G-rTPs@r-8m-UFNhz<?yV=pqa1$Kx8RhKxTDaZ$3$=pa=B zs-V5(P6X_jOh{rER&W`@gYdB|I_#2c1?`8ZN~-8`s$lgqL_rU`92O9;Bhi2pGecs! z<ZyydTGh}svfkL_PWtWWSrjA*C=k74RTR}4ifD2Z`&lJ3s@q+jF-t;y2Kr2}c;Jrq zMJuh5d0RBU7K->o5q8E<29PfoaB|K2RmwR|T?;+-nwl2&dEwnS;~N43qR`I<Eu|tP zn1q?mLVQs)&%~h6Y=SKEAPv$bIP>FE&dGjH)}xuBj7HcFZML~CF}hQf?e2IgUuTsK z1&nW-n(I@|Q!T6D@9DCzVnZSiskk2bT(a$hJv~USr>TBx3&@Cej#_MW@oZy9ON&d? zRlg-WYcx-`f;BaXj%es?O%Sev;eU<r37ky=8@lvll22`7P^ObfoWya2Y60^PjYV*1 zmQD8RH?CfF#AVCQ<_h7~fKtl1SxaAwD5mnxxH~_(i~Uv4f<8XKWjwR0X;r(gyUm*J zQrw~1=H^;ax8zfL%t%>x0}F8epKD^mcHz_DsLIw1qxXR5Ca@cNk0vj^kj;nG27uuB z_7{n#3fe>@kdIaJ)78*S2wLNpHm%w=bRRO7{`sbi*GR43Y?Wi}F_(S^I4qd!$a=6L zGC^<-+G5_Mss?;4D5&m0c%;b(J`P1s#U>`%;Op+)?iH<XT(fmm|J~CT$tQR;=bc}Z zf|hk#kRrlu@mn{hWgXccEPsO>FM{MMg!&qFn+Ux1Jas9;bZUBp>xH-B)dbFm7J!&O zj#!QRI4c@gSCvz=K0FG}(rPJwi*y){&;ou~9p)Kj3mz953`PeOV<J5O@DqjrIu#>9 zIdS-LTZR(g@I$stH33cniL1H!g3Ad&xbiyFX5nQTHl*<m7#j@R{X0}wK-u9A7(11K zq9{8bp!k#rcH(6~*=YpaJ5;}m;cdGUd5YX_zoJ%t|26Kx=jPA9!R06scbUH@T>xwv z0T(-ph!$K2gyBvlXec}Hr~Kjfqj;5yx7&<e3Kfa+5&1%mvDxKa#;5(N;_|x`_C!EY z8Ol-1MW9^?@hbGvm3UE3UUboO{3FBQJY*0um#D$U2m*%;q=E~MRCri{H0z>V?fkW{ z<TbqyiCVm-u~ckqES5^^jvQT=-_miUw|B#ao}LXGzTLZFwzqe7152^KOk<BA^fos3 zvW(@%nVB0cV%L0r=BDyGaZ7LCW>MJE+q>nHICQ7in|pgVWA1IOxg8qtEj2i-B`i3H zOF*tkxWN)JPdUSTTVl~kL)8lntMhEC8_B)*bvGPnNo+P0XEC+sM#!05!_L1bY!yBW zd||RCgUFz6ur~~&OmksJ>T^l<B@3i)u%cE#83dCm<b9b^K!z|3v4HHCxk%zo`ao#k zaJ+xu#`W#D?Rf9*J4OJh9X>MHFf_MoZZI91Z}SiOno^+~BO7h3p_nR07q+pd29B?9 zZ=XHhf8AT64?P%pYX9!>aW;5lD2qGNgL4D1*kisy-=m>4`ycwJ4R55O;al_b55xc% zGkGJwAnXvn1sza_d~3bPas(zM%n7o~2)xaWX&qRStN<4mv?es5A6izdpoZ{)=*fGM zBKnbkDEZCD7o&nMlD6&3?w+VM+@b3mS_X0(ZW<i8aYJrL^Lz_yo%aJRtXNfzR#;8N zOJLB7f7=~qEnA!Mzhww-E5P1iDG|Ym3$DiB79SlsJsfvA!nfxJf3Glb(`+s~d(%%2 z4D@$(4&3S1T$+a95hH>uBUrm#<!`VLmOqv6@6YE428Qu2K2=?+S8*c>Tl4Y!F3$^3 zvL8W4o#+GD!i9VxAIQ6szGNoJ@L-;N34e>p0DjG~jT_gq^>a+?J=~*hw$ItO?%$w? zh2U47c!D_}f4uwxi<bXaI?bH#+XMs9#Gnia?-bq&tktV2$8V`Xn37_t`V%jGUT%Fs z;U}ada3#Q}!`y;2x?v{eyICpM!*X4vd<VYps??Fo=Z08Eu8-jzyxk|{0v&xUhmXA- z0lLbU>%e{a9R1zH@D`LA=`t4yTEPWf#*BevYQQiCQptXotABMrcxM>29}Fkq+{Y0z zZgG0Vf07rtK}<%m`ESLajBS^7uiWYIIy+?VLD~9=cq$dI{{Iv#VHAkuApB;pgMGp) zZ?6_*{@yNob-A<rBhBGJoO~zTxF&w$i{b;qw-G-v0Q|&O;I(go1_yR^=}PJM<zTGh ze$vUbGSXR2o=_@*JU_2l2B@GAOb-!%S2ljhggFEVbwtN=wH&BevIXSyq3t53FYP)7 z(^w6d8^*NX1j6v$>O|2vGBI|8VH?|>W!af*?+*PZBip-sn|~yTjffy<?i+3?0J^%N zt2irRv1%&4Xc$>F;8e1T-FBa&FPR%vypydWv?^D&&lv%^Lvh(0xIoDwd$_779de-0 z37j@m@0gvvqkF+IHn(|n_n5#s#<T0QlO=K2Xv?60e?!eJL$bTLdUeq)0mNNC<n^}8 zy4@~!$X~5%9B&VL8rp@g+6`3!8XpS$KEG3LSFkL|9qh({oWp`(w<+xk`(s*F5K?O5 z1%D*IO$-A4NsM^QMu6KYIFef=v=j=Lh=9eO1}UIg0PnW)xEmM@>5L>(cEw6|xKeAT z5K$0r(+)0<@{c#1ST#j~v6D!7hMemMM#s!-i>uh*<<_+{OqJx3Y<`G6vHG}k^N|}i zf+TCAyIv5K+QA$8Qv;i`JYZH3W)7Rl;E<L?T6?ZzeM@R>&e7P&IDYPj;yXk?G+qzl z=`MaIdN5PvUFv}rpNG*TCiH8XWGLwkB$fvGvc@*Fraim4zk#0VGQqyjTMmsjjI@S= z{=lA|+h8fZ4$;4xj^3~V(Z6;_?anUhlf|dvVZhb+WqGQ6Zq?3M`#@c6Ak;a6Z3rK) z8msU&<j(8_9&BGllb3Q_q0`hLfFgEv;Ncaxi2Jymm+Qb*f#kiO;z+8YF_=J<?8zKJ z$_0sV2&`iPvI7TLGkqW@rS7a};O05MANwUkPbskV^+<a>CM%*<^+p<%&Hd#U`nGOp zh%$d9osJYFD3?MqnYUP!aH#G%se8elOE!ClS7V=%9uKj^ALgc<qe*??At&E>S>&k4 z=WA_AfvpO=tf*6u#L{7Jynk-4KhoG331^f@vb{YSP+<bUFjS01TI=o@)9YeQkYBR3 zyAc=kAdd@L3r0t>2k!z3`|+B$VC1ndzk)cS3kVN%#j-yZu^srJa!i1A^TH+OyJk}0 zWMc6O6HmmMSracW3TYTnEt6g+4G@?4>XZrJ!Vw>F@?hH(`$K*ekTyVO*ztx_|6}g+ z1-Rg^DwlwR>{{cQ%HKeWCd3?jz3ePv_V}yWO4g=wBhiQ=o73^?HRTaty%=4@{w#|7 zqQ3G+bX7yfMX#6UW{o5~1w4Bgxz@%Yzg1~O3_=Cd%3|1ro0Orfvr0?ruQ(7$f?-*j zRy_PF5Z|rX(e!Ut@_mRE>KMIwWYC@M-cT0`D;7(Bq6^*usX&5Rej$>6&a!88e0Nha z)$U&CezI@tTz}kKe`JsXjYe-A)03ml$&PRe)Vo2FxQLnwM=}{!H@bcAs+LKAyfBRB z*9hm&pZ^lLBEEt1s56i;+955*E62q^T<9Q|36GV~#SZ==<GQd<&5B)V<RRyqS9nl> zK*ghHT=dLz4^K{os5UHke6d6EaOIdku~~x=Ap^jkJn<!%@$UZX*A@Mtl<u;-rChhK zDHO14y4;rHdwfZ;*7gk6$~I(^U>*njXu7?*PFG~sRxj#So1W_qw)g^q-DT6PbIlFn z>fXRu+A_g^CL1E^vH!XE$qpym=bi6-tKxPb`?OoA?JU-&Hg;GnNJv~@hTCmZTGjH` zFzGeLrrI@|C6$s96#;Ru8G;8+RkyALWrelcQs5yi35L_hROGu@?Js)kU~|?9?k?jG z*yJjTt0rIaA6sVNOO7D=c@()$PXbBuc+FdpZ{i~)Ehf(~>>S<`=JCp<XpUjZntL}0 z3|wp^JyqCi#Y+dPoI9O81@5MUHLoL!GwlUoi*X1L=|6tcGDn!JvY{kf>w?RVLdUQ- z<bF5Pl7Q7hAkD>^;r2oTj$o~WP(E7yB1tl05kHz88p>wlnkTN=>kye&9(8`*@7P43 zn@zg!HWf}Xgz^L3>eTwxL#%giH<)Vby7%@dNcE!j!6nqY3FQA-_0Qln0l*F*9s2&h z3KmM-s0D+4xXfnPedK%6-8-NIP_PfBZ`U;~P!B$3<^iEHc$B?&VbTt5AFS2l9>hEP z>w`Z=kszJ{g*CiV{VMXlX}wzcH)3gb2}I4!J^OmB)((YHBi8qbO8Mjl^6ue>SNKMy z7LVuLze5LTJ+`RL?e5js7o70(ps^^)^WB(DLu<Ki7!Yqmo{=2q$g8Z|+~r8yk!35J zOa}<$L7`#87<2Qm67tzX(M%ayzvP0>oC2K5upF!F8YD;BI<C+4ryG%55cviDfk?e7 zN)~&tDIA6qO*Yy>pz#OQFo;7Y))m-?i!(FDH5PecKv2Zm+O~d4jONGLcSoF#>4MkR zJuJ$}aVAe3a}MwHIXuzk05VvL){w_=H>Ts*Tw9U3a5U4BL$;QkMU-5eT@Uuh+JSk= z&fL?TF#&0Q0^O4xo>2HG#+jwDhkdB#+w3bsn)7Tx;;LdqW-58RDvpbXy!sm`{oly* zs;a?(_c<>z=N>0IkGR)l?@*o}#$TkjC^qRUh)s&|*d&N1b?Krolju`5nWeEwR1kPU z*iSDNn`Fl5RAWuJpNkaprDILZOdXh8Y0N6$<wH%FLJkY^Ww1jB-@Cu>z@rES=tGFn z^d0ka2u68mX6B*w<UaW>;wf$1*8A0Byi1;Jy(_c<4~vBZz97WD^CZ{EOK`QOgroo{ z3Z-eubHyg{=G@+bE3E<bem8@EWO@Hwt!*8ZkuaT`+%bRUw!xdE`QZZA?p45La)sXF zO?zLLggoqiX^o7Qt!$ea`*QiQt2E7AbRj5EZCC8JfN`4kA5Xxoe$|G3f*ehkXp<R> zcGWgv9L?#FWmjp^NsNtRDAF0lcD2s>!i3}p%j%TyGTK!gNA98K3(Qs8wFbUrtLl;` z5r=kJiRWYZ^)oi4AJ^|goZ)iWYQBoxn?6hK9k@zk;77cCD}KUG(xfXtjKRG~hORPR ze(cRFV$?yZ8<x)HoAPnVI*FD@lZp%Z3oqL%Kla<se4SeKT}`=9N0+SZm#ei2F0e|Q zyk>CT720%0(oUjHHsuUS(d8TUR=+gy1>PvtDNb4Rm2JApT!W{g??R)J2~x|K@2F#j z{Z-ucYZacj;#9L6pWto6j}@|W6}{vqf9>KjfsiT^>B~3htPK69!KV!suBrE4zMK33 zI;iS;U!_&@nwQv5WOQS%yEuGTZq|oEGwYYayjfm(?d6-*8L(nHw%lIrtotET0&G%> z$NL`q$zT_u2w7U?sxE{gw%VqffVR>)qqS-skE48a-82H;8Vd{ejE&#3P*`~L_VH5- z6yj#awpD&V_VB5NVsYWr_`+Kjitx?WFm?y(qjl8-f*81!5v`ewi>S}a?tq5a|IGEH z`+Fi5XCRZGG7diT`DgZrHy=D&tm_@^?aehWxgRc`W%rBK`%9a0ekIa6W8NK|-+!o> zomp5jzT{r#l6%QrvUu;7jmUF1Xx=&a{PFDc{I%UTJYY2<S@XW}&m3)?np?AGNqu0f zueOyu6=qA{dvH_2yyLMS-u{=%`sSrx57%S0{Aw?lC8G_SD*cV!2eO`5dR$_gQf6<b z*r9)Zg7-5u0oUg)eSK~<UH{&LtJ$HSKf<s7Q}cR9MSh?RILGOrK+&5pOC9a~X2|WM z({Sh>I{B9q2zsP&%&AY|(wd)C?t`|)IR<#S$r%M<(AiHMwY^R25T=Xj#-`b!{{8zl zCn#VNk-4Lvp?g1l@x5lHpEfd+`D(43_OL^PhxToZSL*HkEZzII%Ds>u)GIEj_igrg z`*dfe;{CU<L!I+;6aD^5&7Gg;&&%fv$uGvpFwbAm>V$OQnJ+v8>HWep?2Dg&<{<B& z{nVfQ`kRIC5RU_x7sY(h)rCVyoTQ{z?Km;;+emI?O$Jk`j~(nkv11}V!E*hFH;%XJ zh+SR0e+K&o^wZ+~0`6!0{%@uR*R~vdW`E`GIaW7uYR9O5|1*pCwjkCP&${ehv+fVZ zyM|Irsy@W@(c5=TMDf6tb}P8o!S5B2wH&TORErSmb&s<RLl6gZx}Rh<w|;c|;GdfJ zupi(a$Qt!c9`Mo(b<M$}M-M*3KL7kP2Os(QXP#Z`7xppqqn(#uxmFi&@tQTHTA;_C zIrygUKJz^92;Ps3^0PtKdD$*rFp8!A7JiOGFI-ctpAMe+Wu2Xs3!nOjKmGiL`l-Cd zYXRrs*B)T|D;HN9d!gLQnCI!B)V%ohn?@@a-_C?vKQX+#Y&;upD<|4CZ#cB)=B<@G zI{*5S)1T?wzogxmLyOk~Z^D~%@12dSwslo*Y5eGG$4~DXcT+V>?!y+yyw6hT8nl}C zO&%FeJD`=?2DTO}cSk2C=BBfC-Gjy6T-GduY^`gKsgJO(PT#e~)T@gT^_I&=)R%wG zK7bhP>BV^L8XhA#iddW1!?(Q~OoeyXJW}(9nm?)ei<(c@e7WWyYkpc&W*7w*TufNI zx$md~L&A2MPNA?1TRcHobO1}_0FJQ^0tW#jL_U8Um-?`gF60UnL`<GIbJrv%$nOTP z3i(vXWkm#i)erG^7BoiH6P66Iz*JAq=~_xRSGiWFeL4)D3ngP?Q7xID&H#gC?%d&n zPb~V_$n)Z_p4yP%mZtN0?jRtVg?4gl<8*#;&z#7>Z~xHTKxceYE9k`AT`a#)q*Ng@ zrBN`vRZbwlnB6tb+8p3}lI6Ns=W0#-9)L1oaMN3?GB}WsPcBYjlOSKz#^9<BBYh`O zHxW^GIKVHcg=`@()+73oh{tt!UPDYXFS1z!y2E}m(%6NNt^gR65NPBa_Bcg%IpG&+ z&bu9(`#f8255gtl@kV_=fL{d85ik-0C8Pkhprc%dq$11-Ufw=0NF3q4+2T~0G;!Ru z`ADR`0SRH&_N7~k+q=O5D}z)WS+9abgc`I8(o~nw*JziS9r=>*#2RyLEHY-4e+i#_ z&<V6f$Q}v<J><Ths`se29|>|$*R4X(2!@!&D?SC6RTyNF0fA`|?Zsd6uwIW%J1kim zbf?7<bTj}nB=}}fV8E$cEMa>vf*hFl5y!6X(Ny-^?3(^W<G`l(Zz6v*{n!~J-xLU4 z`|xPxE<mEf07fA@6;tuBB1OLWAjceoHw>Kib2Y>}PMK`(L&V@a5nG1k*j0FmVop3n zknIjSvaiTFz;h7u<ublR5-%g;bc#rp3fzkqNp#2JTv=8Q#D9rAU$am)fPE<{%duE? zTvxAMChJHJqt<H?LQv{2${^rm6E_;0j)dz|m@HhTc9ck_knyrOqnPBn<R+WS3oM@j z(+-y^L32*DN6WtvWEOPlm^Thcl<2)5k`nc5+7BxN6><i{g2j7+&m+%itF?ioC8#$T zc2V@q2+E~yX1{4)(_7!zzlqDjDDq%_8+iTOAqTI+DbF)CAFKHsMS={l4*C|cH!$_y zN~a-*1oMNi<w}s^^7*MB=|CUO;5+E3xr3NCxgvys;Jp4Sn(87YcqIY3oXUesx$3GE z2C$uwg!xhM3b%E+vYqV#I4WfjrrSb|(U8OxXEt*4Mv!Drt?ypOFdPrTvb1{xvfR_& zl>6>ADKU%Wa9mwrWTB$9VxHKL%dxh{t2H2zX2Ys;A`rKL9gZJ%ZaU(QHU%_E6Qz(F zv=8Z895?_m85zuGiyLkyNwTcVm)0r4k%fg3WaE+6=IeSqnnj~rNMdbd^9z?zBHE8c z30lb_l2!tm@B~snAS#uFh;&fM(O>|#=vi02J>(!A<h_^cAmp=^y4K}90r%ik#*Td) z&jmLkZopa8KE$iuTZuycDDq>~knO@nC<he*F~A}UP%eD09lo4D26m*2R?&2Z7(+U` zASwyib6Av2MMILbsA#aD67J)o1$Bv%s4RO+g$V_MujC5a=90q1k4U(R>1fJlShMaJ z?Wk{2fO1~C_DO97-e~KyXk$2p=SyJ7XLkofms|pYoW1lC_)?_@$AOmBH{y8T0CJ#p zFzFvj>p-Id288vC)+k|pR}shi1Fa%!vNBr4fXrRn#bRAJZ>lU~pp)KMsIFps(OEv= zs`^9Zvd|r(7;=U%B`ls>Dgwh7Evr}+m>E-NL4x#P*j%)*2x^2igmnr&<9(bP8f>3H zP|e|l`6iq&KMb4eojd{&o^%`-RpT3APIKGG^puFE6@pPEM-DWI=|jbUmkLl*eZ+Ot zk%wscfS>?&hxCwn=7ei2N1pV-Qf|kpHFafj7LRElnP*Y_(hH45p!sH6!8hyPTQz&c z)=TkLYQG5T6>|84dZm$brQoOzV9T|P+0%Bm_Ig2WmnC8IE&QxWYvOb*oVexHFj<gF zvIMdgd=GhzwM6iOA1NR4wYVMk=)MUuX>b4qgT}qn>)1#J%tlaA_u-(B@$)6vMlc8Z z)wsvjQ+|pwxp=*Y9Daa;z25JN(<iV(*iTH0nj-eBr<0~n={`TGWV}KO@M*7e6K*M= z(A}VM!F^Odem`6(hs_!akj1*w)?@R031`zdal)3sg7FQAKNbFx=Tas70LKjAAgN;7 z(rE=u1)fHyo`^*`c!EwbOrlj20*V7Dq~GIyAZ#!2AwYm#gCe&Nl4(_O2&(P@%d1TV zC{&G1b#*nI`?bU6atI%2C=?nRBC-+Cl!({sIEU24!W)B4oxm$M$DQ)*Si^X+{(6hu zQ{NouY{;^|cF3w5(us2tyAmm^?Q$*Hjjpv_VHII4isFuVjq;hszN8Uq?dr*TCTEj_ zyLxTOj>c#>yyhVGY2^Q_35i=O&)oM4o*3x4m;7uG-M#75wLHYRpR&iQZT)qntvg>q zTkA{7!l0GAPcX&um6?e2ZG?lCUh-p{X4BrkFnZFtn6G7|X>x~pLwzjZ7adB-@QfP$ z0sFN*<8CGeov~P3w5caJvo4wmIaOU(oRU_rG!(+s=da4=^{?RhxpY!2YX*u3-2mt& zx`7rssE8IO=Q}G)PbvA*d*d-z{ZP~Pjj>Q&i!0KQ@vT}=4~n%xUuY<(`}2t)l8Xw5 zglp-N@?LKy<zF)pX+y62_WD37pi5)pfw0?1tx5&LE>{!|fa<*c-xawS1s43}&s)Tf zm-3}#DJcgKXZVsO;nC-u$K82XXZEIlT)0^XUDHFB)~(z9tuL#`kJGczeDsU|R(Y0% zSMVef*FYlIKynffRWBo~sH(~`FZt2_Krj-+&8=e%A$hp7%g0>r^^||JX1~2T6iw6z zkWb;79`;bMwZR{#&o;O_2YmTm{}c*!)&k#N(Y^m!dG0x&KwthCa{8vqbK{9&a^<rY zs9}*Wx#T>DqvEA2;<v3`w|d8DN2!j5dObE(ILsj4X>a@5mZ*AtDgY#emDNT9(QE35 zhu6%_t?uY=*s4f6NR^#(sxaQ&9tGUOP_2RbXjK*h$U$wcM<cJGM=-UA7{>plPv(!_ z<GrrWQ~sLo{ja~4=Q{Vo-Zy4<?tVSb{SXj;xhThG4h@3nysXvKk3$s_<xI)92o1wH z!kFgRFo-orS>=hRw5rVkV}I#`{OHy-ZL88jB^6`!ZQ*QtB-xt^sF7ex?~&$sJerOR zHjmGdZV3D9tccl)2d|}9%G*lau5c=D#IqDV)|reo`c$Mhh`T}=Wa#Ot4Tquzm}NxO z^>onZ^-0Ja1}<yU9{EwF54Qqg_VVWh9O-5cavKKS2{RQ~88{&_7di~R_mb7Z<1EyY zi#AWR#O)i#SMMF}jN~<@G}ZYPO$^4Pp{QgJ*82hazZP3%bF4L>)piW`M`pLot?C@~ z8L3XI;&?oe2!|vD<l5Y%@U8eCu)Mp{FMaTQZhHki1G@!@n&{Nd)RodJG1l(Cd*fZN z3N>~{vum0o>g?FeiR(p&JJA@*r>@CbJNI+;2QR{4b2XGEdV-U)ufExq>S&BbLu9RS zd9XMapBpi7glT<QGm6JLyiAMj(5Ve~UCVHudx1SxzKJZiiY!~6U2Ho-(q2*9FKxkb z^X+AsaAb+@ff@H<XLlwS^EQt*PVP{yuaEovb?pKhyJjPfKk{yb^BK`N8FB$K<N~f> zB*0jmn#v>QgigY0+ATKV8g=Y6nrce0SdM_N`+i^>-v&=+wP!fl2sRTONsJsI*h}Cq z;+|Pd2tpy%RW#UA1R@21V4pZxJ)FK0n6Vnv>smZNr;@O60%L~`y#$mou&h>ut+F%V z4s({zIK9}l>Fi#@{1Km6x6jF5MVrg=y~cVZFWN+}u|K<2vmw+MJIxr7e<p@;rY8Xm zBbc{Ut=GgbN^-mU=N_<P$H@zhpWlOn2iG$-6zU=PppIl`{Ybd%*#Tg46<o*`oWLLx zKDqpBG=|91&Y%FKwfH_hSc+W)r19FIiyq;dXfpvMIdsu;Y2@OUfQU5rkz~USh|OXx z_$uE~^EAih_c6eA$sIsnWRuhasw9IH*W7a8H{3}0&KHo=hzDL55Z43PDgu5e>Zc=z zs2{}lbo%l+UuQnoQHy{C+yLlb#fwl+XnwMFconDy$1C(QZPvh#V)z@yI4~Ui6AJA# zKV|s>qTy7RL($XevGIkSM~8cRimRqmAYL?@B0i5*^3~^e-<eF-3txAt9tn9^-U4S4 z0<6v0p32X+C>E>Lt2i>)xv1xmMQ+Hh>c>Q<udQ{m6Djy?dV|H%RUGIV>y}g*=UCFf zRR4H#G=iMfvWC<nxq-c#Huem}6YMKb&CbkedSlyI>CpCV!y}2L-2tX}CFl*Oaqytp z^hic_c4pGI&7aV$033U*dx3POhU~HWWYsDuC*V$S>i^n0*4Z%MJCo~-`<z<TU+Wf_ zLq;6IDBO)MX%aq3Z2SbE)ZIF8akX{brI`)ouRYe0!#L7e=Fh~4@V}9*7iWfkOf~?8 zJaKH5iX{(@!03%q1p9q-sRwVG_+ux->2ETP_;I-FXk2ZGt$-^~#!gFD?^1NuFd{gB z)e|~f1Us@NJJ?VRs~a0TK|S|?><|)hy9!494ef$cR_v^Ch}jj@A@pCbvW<Z9E8jTx zBkb~3_Q)-=tSKyT?nfvUXDi4V<Iv>Cg*qf4(bV#5@0C@?Y)biy>^zQBG_Cx0JQm?t zYFxr`;MU!g_p=`q0Ug$2hv}r~Xn=ui1_+np<|!b2-~K!Vvm#Wcj70^6k^r@iZr~D? z$rZ@j=3ks(z`QKSiT4)cj3pVO3fCyUf-WIwp_CQpekuvbW2lITN`rF`1c*iyNLjDl zZM7&2DbTzPfhLRQ1maDLNGY3UAO=XV)qCQ|#Dr*ki)d(=-rxX08DwKwfoK=S@+gXP zxva9%nhJv<!tKUSW)G#@X;Ecj#P3mYc;WNaHPyGPb+KTq&K(i~&}FGqUDO}4rc_(7 zHqj`m@ld)x8Veh_ItO6Znj3jF;NkZ80s)}g5oc>ftUMsw9>iJywnhaXM!2R9(QMeG zmnaU+oOgK9$8-T!Yn;K?0P_@Tmb;e8sf?XBoP8uK{2&R+qPR2^+?~b&H*~TE;o2>T zd(T=##omKPI9N2=IH>`#?Q#Y}F4?G0cQkl!(Okz;F}XXLC@NAaA4Ya~9Oe0A2*PxS zWTzUgYyWGcN!0|y(8S_L7&v-;|6<bvHboA!#9VR1bxaUN0Kq-6y9`^nrL{NeX{bf2 z1iNGt4n<q#L|aRuHJ%6=Ef#mgVg{B_J}j5)RNP{F`8&RV({Hs~4}1;O2Z;5L1nO(k zsU)p`0xX#UVY6^Q`l#28pheV%k4q69HOomJe69mk6-dHQN=sZN3l4XkQW6~UgIW*= zJJ7B%@y3~i7TjDXAG}-byRML!3nL$@>&UAl<;=|_T#rc7zP(oY0VBv3`j5@#M73e| zMueC)4RyEm`p#|>#}0On6uUo!z`Q#wmOGFcMclDNr2Hn9^Pd#9pq+^tc*ZEw*KDVV zFgRqkT;5K?_tOBGks90sOp9kSLCx%Mw+SqspGYS)7T_(_`t}tQb0Hf5&i6|a<$gI! zZ9R5Iv7SC`EH*SVQK)5T>R`{(rvA-}EH2z{aQ?UAF>y5*s1MY@<f7G_EJNBCwP29| z=L@8)z(X3)pOp<0EgmrzNEVV+{((}mDt=2|Q3x2Wf#=xNfCSyf2uMC4q_{X!DiQca z!N^ePpm2!{x`H-pbeKxMCH%)sD@Y)QaL=)D5}10`uB#gmBccwuf=~X>7(SiqlA7eg zR6)-1pH2^RN$O^|qtD@T+xr}DcAv**7rnaVL=2PLYLnc-M8s=t42RN^HPpbKb5QvX zSstepL66!syXtVL`0;4ab;oB;x!kEjA?0>ef4g1g-$KAh{=f2@h$MU``KQ_8kjq{x z=x(e?Hm8A;D8cOjELUfVkhjhntgj8#K{jIN-!1fs8F*}vY$4#vyF4yyyqIF2m=jOE z_yGG2yYJ(Wb#d8sI7Of<OD=0e<>K;S<%XMZ{b#H9L{RnsFIy&S(JZ~*)sQbFBYn;6 zBjt~N<}<t+A;sp)PanPyd!ps{I0-Lk)>ZFfF8s&6uEqPu%rYvayp;-J575u@Ki|hJ z_nA0H6HD);IO%0s2Vi+X`1wAZ0FF<Z_{Jw6-Op~=c*A>cfAjPMEc!;k(SUq1(+>!# zw)foj@0<O9ao48DcP%d)j*d%}&7p0}%icD%`;RuAo!Ri3m4!ESyywI(cWOIdyLs;Q zJJ97A8_Husm@_A3O1V_|*y?3hw0-^XhDV1_Y|3qZd}Rgc(tD2m_@K3W+sWarPojpG zSN`h4$cd3Vwsg+D{-W}S-hKUdZV|h;-8s7L$?eO_zo>sOPi5Mvu5AABcD8No&iVZO zlNS~Lw)cJcRjjmd*Vw|F;846;`50P23jq&Y-u-=pePgG#brlv)T~z*`J@u(afmwa% z)Iwod->j4yEB4q_aLbCGFGzsG7EtoIw4&^jcoT@&!tyr9SBz<c7t3d*WNCS;txb+< z*|wGyg@5Ctk5`KS!1D6zR+JC3x|3j!1er`Em)G$1Sy`{vV3#(ntm4b3S*4Drmeyf_ zAp_^i<ZxdSA=61#Wu+R}0YLUukeQfT{Xe)BrjNB+m0K;2Re;OY6d%*yy^&QbV*`X| zBsskTR+)ASR3FI__5l}zl|S%=KUBdg`&|=r7lD<hU)X1<V3ma;Dtx8&J@6+Djg|Tm zk&P9!B%w*GAnBjaYnA$>?E9A2XJ)slZg(+Ga0C)sb=ebIAsox#*xR&d`%E#Btkl|^ zY#nc{b;=h%Y2)zJ;9yv()UNnDy8sHT&ZR5#@$VcDenI!xz(Yd1ZIR1O;9jiKAPya~ z0&VReLhl70eE&0_fA0XbyrsT*AO#YI=E<D5Y5df7CRRQ@aDZ(k;JNA_7@8i<WEZy0 zL@Zqw=?dT^mg&-Jg<Kn%6)u~7UYgQwe|EUeUc0v2XM^yrm>(=cvs;L+-?61*@Qz#3 zklz*h3G?J~bpl*L&v<c_E;&;OYs2Fb&CE;I$l|lxH+Ss$^MQ-%OI)J9J`kXgDRb%C z9Pvi4oGYl8tE+C~!lvA=XGeHd%k*RYCF(K*fPn(OOl5K=GHxZEcIoFDeb<4{ou!&C z$cYnNbr<&`zy_JF%RNzoCG3~0;-0_z*kh<*Y56PlJjq2Lb6xrgV4Yp2@xoIp%Dr^E z$%}I7qJ>yoyj<ZAKL74NS=lcu*H&tGfJ2}!lB#WYjraDC-+ghf)1t>tef5KHTG95E zc1NaCcCn-{Us%2Q`8!9qWSbZMaDK&*eq-#eg`#llw|BmOjBS78ig~fJZ+Q78Y<gt{ zom*}n9qb$^&A)zbWeuZuZtE8NpFXnp*+G$4v20vxSIEuMI>hDEE<1aCaO;}+nW39E z<W^QPblZHd-1YR$hyJ|F+OrMLhNZG|@pJeCS<JSJ`{`{bJ0~)({aZIaxNc<)r~b+t zTD^5=>4xVzv|X>|J{!~igY8T>Z!?I4(BajXgD-vInFHou=vUb9H5Ty(;q$=CJCSR< z9+5p*Pdu)?FJGv4S+Vm0vr|66e^&mY*Y(z<FAplDKt1g1%s)KK9y<5A*5>*5eP`?Z z`&nlz{>?L`{PvcXF3+T!oqq8T+257_v$d5e-#K&U*=Jk7^XwV?dp5U`J?)<Io_iYH zQoL_!tZ2*MqAjaoBh;J4Gk_5V89QYB7mxy${4g1x1YZDm$Ur-l;J>q&o|w2`GPMED zEwIz>DL1<Zb-!P>sve(I2qo1vDdVwNYh$Wa&Wp7UcQlBg=vuA&G}EmrkiUrs5{fE0 z?Q;D?iPp$-lFuXjt$Wga?p;D7h;0Jaf)Eb2Su~>4VgZMqztNF(#|%B>RZmG7qx)Xw zusT$mRR3VTrdm|diWkY~bJidZZ^$=lKHn~QN5QOxw4nV$5t~Iq-OBW15U$d!K%Nk| zF2S~fMI4Wbb3VW9M<*apHO4a#7wHvV^x`$BCW&kk9+INJge8&Rh+KOV4~k5u7#`t? zlq5-pF2L(pQvIN9R4sO-3-<^XJdn+ST-UYezp%H-8`QFjtVuqLJqn&oyDA!Z2uF89 z(VbGQWU=}6CRugJqE#1^yymcppKjhE%In)Z8|odm9p`;5ODPfiPyv~BZOyep)M7=- zDkMG@T^^ZuM;k$fW%oD|_GD1&@o5>=X;B4FkKGP9xKnj0;jl#n+D-S_9WEQTx=zU< zx<KFqNL8o5t39{Ip&ib6*e{P^NIt{Q!>Tfq1~1td=eem!4zg9kMMq9L`l22}Ptlho zr@=ew&--~d(N);1gPj*1Veq8js&ol2<9I8*C`7-2JIxJ-AxnM7+WHY&W4&`IIV@OP zgg|a~eC>2`%;DV;N~dksp{B>zCB24kbr1-6uit8M8*h#(vZu~4993EJ0OQx)(XnxL z%aE1a$bz8OcJ0rtTa{Nkb-n8gRtCT9R63Qm=yk?ieQR@l7$mqBt7pX0;BJQW4KJH7 zB1NV&)O+e1L{~mg?-M?AuJ@0HPoJ|K`;TMnIxG8Nsq7U#bL<%R=~iSACyD0lWvBVT z34d$$DCXh$7tcQ{JSWy8+ZvEYtO&1&6G^+$Nq9Wz3w{;qB_DWLrK)3pP%RbVSpiX1 z<su&AKsG4#Cw)Q0NraPyK_)zA2PjvxL~_wWi=#HE$qu)sxIH$Tp(i`x?zIV;h+trN zvi0(FibHgy##;K*K0qz37G1Uk<ITNo@sKVmPMZUa1t3jRvSKaBPL+Ttx-6}Q?cvQM zr35_ksvE8lBt#W-d$M@vmW`{JU9^d+1v1Q}@}KB(G=Ju%4gGLe2SZ-jm+0Erv#>tl zv5F2R5s|4;$MLZr7H<GIlnBj4{AnJ}poTS~RPU>2mH(c+FX_YU2K?sl;rB+iuly8y z8!MGRS9Y-B^2a~&um8&0%3l>+Z+`Q+2l$8I*}K=fgMD!q`{j=E^Sk!!*s+6sZ%6r? z*lV*IKgMBHtfN)KqcXqHdhYMVy7K07KgQ^{=bsV2CpIIS2hPTU<p;eUdY)@XNIHQY z0BwS<<dRMO4~@W;f_YJ<s|0`b;>c764bz1D*?vyQi)Gs!Onw=AK5|<m8c3b=*M-zr zt0n5S;e^9$RpHnlX-~TA?4H2LiPs<9t959lCU@PIJML?0P?2BRiXgj*ltb@rpSb^l zwP}Yh*xGD3he5yM_O0uKHu%bL4jeUMe<2wIb;y)!aMdj?$tFcdx-4<GY)e3QC{{~j zdomW9sOuTIt}Crub*q1__h83bpWNW)b+|$sTiS|=pz7V!ly^4`wKm)BMLW1w?Q*kS zRz=I*$y_+?^IP=JcFY|_s-6F^cmQKs4`$LL=g{2APa=sy^GW2?z@`rFSahH%@uWfO zD~DJVbIW_w527jbJT&(p^GN3Jk{=`+KKKih37}Xrg?y)oOOU*$6h}BvCeQmf#*%4z z8=DmrhWC(hhdzJ<0zpFwDhb|6uOFFQ@e)(bA1Hx6uUbU`L&@vKx`2vMhhIE^$c4_K z*R=V-ZPr-cVspjn8l|+oWy8q+x%s&lzpRgon&8Mg1nd7}Q}NsCw5HgzUdgKEbgO6+ zq{jbHfKczSC$!YZaD<T5(69b(Tf!zfZGsY4tk!T?Gpu271=~`OHu=DLJ7{6n6u8^! zWT#K{Z<M??(GcX?8<ms->R~A!Mkd=BSbBZJol+bcHN5KgTlzOn=lYL_(+95KI=5b% zaIfyk8+v2r+`rl!-DsTXEY_S4q|rKC7PN-%i=#fPoC0H_LrdA@q`Tf4E}u^MtUjyN zS!;C)4tnKr%2vawgvxJ<8}zr;7nkeUX{%hTFeO-i(XYx4isrMb^+%Z(ggi=E7OaQE zco--e$=EM>tYI>Rxc&4j=6W4icWMX|2++HiJCcF60ZAL+Q}~VV1f5|ZMk_;OjN=OW zHl;#veibRY_v=V6Y7_ky&4?Y1_WYnHG@hr--6J+UBN{le<%zdTVx1IRu=p*_l2=N- zAys~1-q6skf+5%?rMnfK9u{=TJMYc<pWggbBR~+A^Z)1kyTt3nCSb4&HG3ejHRNQ5 zMutxsr>u1DS>HLp$VJT=d}!iBcHy#@k`m5eOh%tfg3jyU%7!-_Xns;1^@$ksSDfRE znuHwbMK=L?$;ln)WN$oJ7<OjY#6xN@w1#Dzn)SUlwXG1`x23VRLFy}{zU+59!y&`{ zwgZJ>qisz*j1%kC<!>1_x-eVxU$`*fc7}omJln&?9eRIP<H6Ax-4d1*`)IfBw-{a} zm`Z%OtKY(g>w*X|3tGx2_?5-<{_#s+S^jwCO0u<d=*}swJALHE4HN=6XK^K6+&SQ6 za77pMo#d;Bwe|b#_U<#nbnhcG!or!ehjtyG@}AK*&c1k>o#~z~pJgY96H%dANR;2y zdVJ5(6WC*l=YLa^6%PyV!g<3V6K<h_6fJ3Aekcf`iHiuq!?Fn@wG;H@=7-fIL_Q?{ zA7k$V9!Ghe4eOor%+Act%+Aivo{yScNvqXrwc3?sS(ap3mStHswtT=CV~jBdj4@yc zAr2vsatbAsf`Nn(LMTZHO<WEMX$a692qnZNlqCEPA^Fo>Y5yF!av*66c>Le*tew*9 zYQL}2YIiiJoq6Yd&d+l{m_?LdLxCN}6B+`Sg;@%=JRCeR3UC8mFgUP)r$>W|0I>tF zpgLh6X;RKXg(}WLQ?P@QMxk7UM~mt>!?dp#ov8FkJoQ+kg8_}%Jk%m(v73)_5kn30 z3a7~qGO<v|l#?AR;z}rY;~BHMK@i$*K9)Xxa?S#WSY9mxke7!hXm4&b!m=#SPHbMf zyU1&ZAQMJrAcvg_pr2VR^T~uY;}C`6^^iL-o>4SZ=n3UPjtT40r(`y)$PzSoPy#gf zgsF&-@v5TzLsesRsK3y^6~r&-37~&+0H?Mhz^FBFX0x>XtaEo(OjU40;jwzTf3>b= zvL?XJnIYE^mQSA}q)|u}7KGmAR~r!pY={bf1oUw5Tt!k6NvQKlO=@avj~0s>VkRou ziDYz8LP$O&nh{rseiR@=3Fs7JQUFe<7~&ofaR>N2$se+qSBNoS5(&g3LuN*RGm$VC zJ$j@6+qnN%pW+*-Mxomkw6)i;3BPfR|C<E4n!L&t?1Js6btKobU1iMA63+7hRPVij za|Pm?K4%-eg=+kG%mJ%`icc|A=xm9>ZAnpH5JH9)1yXMo3zRQ)UU=Y;`;-X<(~M3O zD&a8=qL^JcHJzT=+L=N$C4<foCPu{%zJONO1hcJ8gIHK@(@O}nXIf1P#Q^B4bf)1{ z0b``wKtfJT#Chof1zP_{?$8zrvIw~=Q3FU;4S|XQftR7-Ln^3D+!9e-8kGwQhfSIw zs$7Ue>v@J{;xJUOBubn#@5qBph)IvtHKe~KB`)b`1*s)ez18j0bPY{|v)yfPKx0Oy zPQOhk6*<WmGo+*_=!>fvREMofd4qz$s)8bhEPN}BIxZv{Tw24`M8ZGcGQjaVs%2WJ zwt<>JesV#}QUpnG@rQRwP*jOiIL;C{38kt!_F=%60G^TKIIj2p%4kbhtqoS;>KypA z;%0KWs|$&7Nt)SHtqYDYW~jX>iykew0Hw2}(Hna`ZVcs1B~BSBc>-5$rkM4<n!{z6 zZY|lfwknM8-ZqA7<*bSAJ5_~qRbcf1*<QjVR&<p!a6z~LOMT@<G=P?@Lg9Ke?GW6K zU*QNlkNH$bEp(R|;I>iD0uB#lr1RA191v*$3;)tJ!KOfR6}!P=AO~m$JhTZq0qC(b z7EQO)|EZQi52FVTHHtj{*|J?q@%%u&KEU&-l3jjK*~G3|#D<DpO7ncJUavvU*_F@o ze4#<^t`zhU-5601@2FIiUR7xrV<W0MI%YH^wIWq2I}W$TT64-A_R6#lFIFlQTWzRg zqpCWBeH6DcEA2R}w~S1yP@x)eR~o*8$Dqkkf5i|$ePD64acQk#9`Dp?N$&uhPdp{Q zf?LO4&)jzKk`-km-9OkQ#@yy}>r20I-6h-Sa_iay^}*>)>u<RF%&p94{0pwV)HtY* z%q;d!=RAA-+RYc_uE-TqnL;YJeR}bLNA(4W<P*Qgb^Iu>3@qS(cXd(xFeq=`u)QN@ zJJybw<!By~hk0RoaBzC?_!pRGj!)(ue&O7QzIy!ITS&b=gV)jH&oK#q>npEb`4suh z(FGs&06jnM^Tb;?|M%gkfzE1@s0c)Po(#9kDEV6Thd=mVX3zJZeEV%Oi%t%WTaO*P zl{5tZ=pDz7-QgbvTR~378|;4IJ_FMh>Zb?h8gK>p%8^$9ZwVct4yy<l2Z%a~aSPD5 zs2YG2IQl`Q4CO4?^&C#HSXs9cdViR66(l%p7<NIh-jb<?+NYYaa8lp_?xzceo2&_9 zI9y+`{leK5mHHNA)!15I%qQYDM-CdCK;$rZgI)@=QCU~m<bVrI_i9zCC?>L9XiE&> zBXXgrEy>ADHCxal#d_WhMaz7`Nv#{AA#MZ$*seV%j*#DB?kA8_0pZ+@%cX45ri_sy zP1C7>n<@`Ga0vjU7o}w<RUFFb1`yGwfgtSUl&L!grc)qy$EkaTGEvGg>oK83{vPxP zYBbcQT2UAexxMza&oT<5OH85OT9~qFS{Eu)C57Rhf8G%EDMRNZKv6bz;1hF(DvT*o zB6Tq1*8Hd6uPeG@&6+k3!bS@Um^{sPlr51T#dpSUHP+a9UWRJRri^@O%Fg1%ZhJCf z7JE^wFB4JfL7DhcJq(W%$~^~XUAi)lq%Csd_a`1^Uc-3YjDK*iu~vtbqZl&~BY2p! zKC=TcfK4YU9BYEkB{ai<nl4aWp#24s;H2>w?1{BYF@zWr2pb_b&JR%?1ClA2A5Ii{ zKE5SOFlZg=fw5+;&#GKeEAUdrtg4mOj0XJkEo1W9vcwNo#4_K@@x^?sC&GvZv7qZS zVhswtRh5fUaej?dlp(!2F$XCRMFn63#hhlca1F_tpmDOnH<!&;I8}}qCeMRAryK|o zC5_CA9ooQLIo)3XOiVhgjlsfTBBJPV+N2a&(_hM$i=xZrd-9fU=5hiOI4!9U-z6l4 zUY)CJoWvKsJ~0h*0X`b06z3RQ)c8~;luI)*3y)TUv!J4g>KHH9kP|3~p-h-#>$zNa zl-HKnRA&bbA7Pi`d7SbebVc&;(&R<_bv{{E<KFod^B_6ClO1N?`6l@p>lfJEf!hw; zzW=rZ-~)K9-~$(e55TVrKZ^*zUY_Q!u%%270~hCI_}JH*IsSd-wcbo2;2TfDj<KQp z!cP%H(HBa4@D~*Mh;U5=f3(;qg1>VHZa<Q~=Zgam2ETv(aPjUV!O}0&52mMoap?9# zKf@0`e({T6kUh8G-tiIrE&2iV0&n9{Tv4E_2vlFCx(Fi{qLim}rdyyIP##>w2K}Ut zfw@Dc7$zbP5IV{;)n2F_70f>BkfWJT)X_<&Wh0o99q%q>STM~nJ+ZAtDU{A@ti;O> z)=@u3XKf(qqA`abr{9eIu!UV)F$9-2x;d~G9?l*JQNTI#Vkm5moB1#n(Jlvzj0Bs{ zbt2<RnXcqrKEo<dT*7e)b3#rj1yCqc2|2)gjTzl`G$h7xL<pIn|K)6G5`(i5gEdO? zM(0#9o+Qysr6ALDWkflx<Z&)L>VIXrna<rX9lWChPT3xp%VByU_;xTw^baTo#{}P> zS1{jk6VVXV49@6QJQ??s`5(VuME31S8TFAYuAh@6PJY+j;KWF3t%S<q1TGY=S)7Wv zF#P|^y>v!KlJ=guNL*^*hy5z#R3wNaILI1<c%*X_v4Ub7K?F1#h~}Y1(6GXAKKPfe z>c(~muyz0N@4xwnU3HS>{^1<*r2nH`14DKH;W`uXkD&>`v(Mgo>vf~Q8KR%~ISUF7 zrH3PIA80B^XCKWeX1md^h5mLDdy$69vvdlfGL`&lbYXIQg!SKG3@sXq&>U$!32z4R zf6a{4*KQo1tTAtvM(g$7;}2d+YKCFEI<f;(*u{VOQf7OvH#%0Ro|MOL<37I!c?_5S zyX5gO709!H{G$(7q5q|K-XW{W{iJ@|tFPXM-pc;Vw|!rD^$!1KoB~{+>%?R1KIBNN zh)-4^ms?y0zU3k!*LjbebSmIBJaiO;dCpPQ29(ljh_{jO_dc<K`@7IrzUu!!0yFn_ zoX+;%_W>O|_oYw&qyPEYp~eb+)gH8@IP=rT{NvY=+&7+U9#5KU%tN=u(cp=H_{Jyp z?3tYz9-2kn|B1Iw{0KJe?-7l-8rk<xb$yFwh?00PqO_+6ICmNJ33Sk+fRPQPAqAYZ z#j+PgY8zIbq+QS~C47)r@DMtp0JI1y97pR9?26wayu~1T>=^h}GNg<YX38C)l~5l8 zcm}cy%b-|#7}LhIgX4=zr$8=IpFD&aP4XUwGo$PT>PU<pUoJ$2a-ih~if?2Td8eII zpYmCkgFB!)E(8_02HI&mv^!}KbS_iln~pmm3pz?8au~}nZ(u#q3uf5Kf{-g%=^n|R zNI(?WJ%YzcVG}V6ldozTud|7SC>ov!bC`pmh_qw8YeWPX(VI@cVSZpbCBx5?y}luJ zi$J4ZmxU$7F)@o(Qo=L+O8O}@--4~dDd<KOqQ)#&%yOL0=|(Oph827PlT+o8h^|`# ztK_@uH*);2#-)XHxDw6u;M~YJZA?hkhYHpHsoLNpBbiH7e#sVRElLzZram&>7?6si z$tYi1xo&4;1`s&0Q5J_KO<3V_*3>L>NJ+fmB+}@QoUW--4$#%O88#%4tIfe&mgO`H zv6PU(**KU}5;-vrL~Fi8O@5VVi1~<NUF-#TJp+3?0$^=q!OB<Nbj$e{MWjr14c#y~ z5th4`#@#s$T!dQXhRJ1N^IuM5AUq5}+$n~E=g!9%;+2SHB|aRo6_=G!O04opk4r}p zqH-#GlbRzV6<-L8h}Lz!v|HffE33tPt(MOX_-_KEAIZ`R2^$4{Tov@V1UDkjEcA~G z?9`wpc!q3qCTohKt3ipoCt;b%xEEi?n}!h%PRTMIdhLop_I?$%)%LEBgF0GNykJJt zxkB4T!N#VhG{FR?Iuw;WAXzGxFmqYHMb%9@r|Gl@$~owqZaXO-K@LJLn5^w)%%gIP z?#9tcijz~5jsDVtHJqHnNYQ^f;w|6{oya#b^C5l74~y%P#U%O!oSxCcOTy`ltWTbm z_A*{25)#z4j+v76QDkg~R-~i-X2id!gmwztrOWgo)_I~bd--y7FbkUuBSswUybNEJ zyZt{@wlD7+hK?iai!mw5HOTnHx`W6SB^4{QWLR*{y=ebVN2yCA5t)Z69~w)<2{V#& zO(fi?N;-mAA<ujf<Ei#l#85N>jTmhotq@=~2CNXL10EV!Qb-cEIV85~iX(~3V!$}y zZL5dFbl{WS5wtIi1MnpqQZhhTr`Ru+UeUG7a*|SFVb@Dy-qLVF>*`AOwE5`Lfxgl1 zNo^5$K9LoPbc<tgW-UI@pH0QWX}v7vz~q=N9(wXd*6TVA)kjo{1PVf@65hrb<H5Fr z(Z`blE1*vmtg0*kyK4Z?xa}ZLNLfVSErEFyJX9FX!7mj`^b8_3xv(=9hhjLmJWl%< z;+S9#(9ct|0euiLp}e+7jc>;3b~P2&eZ&$YWLYYVu60Zz>XoX{b)a^_v4Vyx3R((n z3`>Kw_nj;nvdE+P7(8tw)hOW#D&H)NL<)IZ2K^1HA%(bH1PB{ggW3r=J<xP$W1a)! z;iD)8K&L3w1;By;`U&a_f^rg$&B)z=*9T$7loC1g=`)6ff~GH&r?me0=-SJ&N-ioJ z1Yv3pJ{w*`Yd?uVQ+Hg(E2{cfbZD~yZU)zmxft81FD(D3oy+~6>Nx`!%K|5ozNBdy z5r$FKBnyyyOcPPgGw>BLTp<$+uj|1zC1DoDcm)2!OAWoIOZ|a9{RkU|?62X;oeAj$ zjhGSyMTQh<e}Rri3}jZW@nz3M7bl8@1j38ahe3%KWQmOoBnpNfk0#JEYZx3TC{#Ha zhOYdsW%6N3Z9JBdm*-%90Q;wUq)#5MM2l~;NhPWPsT{X3^z}%nQcO==QC_M{PQEnH zB`oNSp<*H>c^@bg-NC-|Q_(F_?y^<YYF~f<`F-?<&2h=SrjX0IpZXL#Xk_KY?gUp< z#mGmPuwbYWrA=(MW~Alp#UVZ!evBP%tp3*Ytg(!XnGOsk*EXwSy?R9=74IW$Ze-?} zzW%;Hzo?#m;>07Yfw3AuFWUdhI5lY&!T)NU$Swbu@c>s*<&z^ad6hS!PW+!n<bO2^ zB`skgw$vGhk>=`eO#L5*f$CYXySf_C)$W6iIE=17E2y8SGfj$t)&V7k^3pK!`*GJ) zH7O1SjFpyFi$$t-P(^`<nTBmKObC2@=N>$w%=w$U@8RqX=#z<`$VQvHCx1gecVqrL z_rP~&Z4P(e=HAn<x;x!-$q};2|8=MuI`=nU2=#@S`@Flo>b=*Fa=EKAkb0OpnXBMY zY`oA2{@gw8)d_C&l@d3jmu~a82XcF@DdX-7tSO7$Q%83^pH0IKq*`_tA1ExiY6uFz zT%HQ>451>9I=`s=AcyXI{ihFn?A6z6(^K`@ipkFpOtO=M{S(vkuitmyPdMhad+&Rl zxp{g!-Aez)r)$*-d>8!YCq75kBNtx+Drf>ZmsO18IL*!B;UJ>y5LG-U7h)&*pTPck z4an+$*oXR(0{KVucwC03wMr6h@To){+d|l&&xyGq)FAXD%LauxAuI%Yg!-{ZB!a}6 zUI5$J!9pWRh=o!}jdXREEcIYCVnLKdW90e-gXSCIh<;YEV4%+I@>6?V9<@7rz1`W} ziFWJ?=Ifvrs@;PXwDTlN&><~aWPjIlBT>=$toQimdgdQu6R*DR?@RdOzK`z0)E@aq z*xMpSW+M?^jCAvnayNPWM$&(*>HpUMUGo^}X9fR_>dXEsH{VREFH>_Oc%I+FadKcc zq42$nqEtZhXHI^WPJWVI4<0=D;K8eccjmO<gO#x6;Di3N!3W)Z@Ijm*eB$3v{FuFr zc>|qgW`Wam7IKYfC!o8!K8@}nPj`K*>w8`Q+V%T@8#o=S8B_qi7`!9vh_X+rmj|Ut zu*1O>An9nvcB~bn6az*JIvQu2pcy`hRtQcj24eBB8B47i4Ul3nkbCr09Tf)0jT2yC z1k$jLy?C4r=fZ0G71VEsWd|psdN<#qGYsq*Cl#pHk4vaA!A=BPKaTZqsX;uw-NNb& z#1K6cL`t`Uy75hP6?0z2=}W6ytYX=4HZBtlp7Ff;=DM*u8XIf^yaI){Ta8jB99}kD z5loToEuFS^_k3fOfz~ZiPP-5t`8dMF{A;30gq4`wQZ>0$-Fj&uEKOUik>V@mfqZ`8 zjOoE_sw(BPAF0?OWSq%F?j~Yf55b`iiI(j5Z>aY;uFI*-DukmdhI+}rgrJv&Ek?=K zgazAK?SHS<pK!KEoPi(f@raEsm^?CpP|J8X!V$3nk@S$8(xb6lPGh2p#M*S;AB5sW zL`zRC?@seho-_6!6+U5;q{Jvumw6*QeT!5GJJW^Up=fxA-M5ls2m9DDK@F+V)ck0V znh(dOi<x>%GcRzxv7I{#>=MzkO;<|Ns7xwSg7==$)0^^1(PY?-^12H=o0b_m=`-2s znVD&xpPO7Vt-=q1L>zQAi3-9>xsoUp_>c()9TU+V%_>C_aOVS8LXMxQ6>GYetmvHV z;!+BpMmBjR-s@g}DB0t{3PQNfibQ$0V1yVJcx>pIlWQny)HJK*rB_rNcBF(0h^OMA zR4(K|mn4X>WDu;0l)J1Ge>m}Z<|Clr?LjBKj|I`$XS=@L^$HMS--J>l6BFGu8)S+E z@~|_NTbL&_G-Ai7Uo+72$~FiQa~Mf5I!(~SGV<}jxx6xBtLPbxb<i9@9v&uLp(fC& z2l}A%UZ=_*4YE*aLp4P@y%B#MhII@j1MWL~TQIc&L;)?4QX%F)R7LEL1s+yE-J$KZ z!~&E@N-)FdOBri<I6pK~2h>1K1zZzYsYov$@jDN-8uaTx74#NxJf($k5)+{IIQVqn z1NU%!RGWqC7Vl+`F9<0T#XmSxlfGjW-D4ayOLuD_0FYtY9_`2tquE0(SPaGncA*=~ z9+?*E(IOfu$?@f?>Lz5^sG4rMz=D-T=-r0LB#_D#vl7DcGiJ_0!DvEGwCix_iX12M z=+PYQOA%NT=n041EETPlQH9DF+o$d{N*}4m45VcO^iI`6GohV#8rhP(R7JcQ7;VW* z<YJpJg=D&=xdV?`k{EI{m38z;<=)DOrk$P2_MYhKcOy!?crFo!_r!}FaU57bn5Sxt zza$YVEBXAHtT1?up)0lp{rQ_}6#1Y?ZTfN;iHxGCJ4Du0OD&3m;xb%m)bL8I*j+Hw zD87pzz6ldpR&1U(1hm#>g_4bCZZg#1X!!W|@+$JrB*Y7%wB!0w(-fjn75}T~_UoS? z&4)x4HM?+W*lrXm8be@;yNs?U<4vhJdnp<WA;%>e5m+fSUmSJksw^-G!>s0VX<p2+ z5f!a^%DqEBRA?)CU<Ptrw7>`l(h0k%Aj^$cMHN;;)2g9hcyo3Cwxz{u!|L)v-E!dL z%P@w^H?FIEq7pf0cx`&9+TCAB4e(MlQQAn9kSb)tsBBCvRoLZTU!+jj#unofk!+=2 z9Ok>-m>P=04G)YiM#*8Aw#8D#YQ9+~Y0ZgPCY%OpC{4`h2rFh)_y)L`W!kzPGY}ey zRpPMK;szSpi&69mukwuC&nmTSG!%<z{1<Ru#tD(2D;^x{I?`!PnK}mq2j-CG-%Vm% zGR&oQLA4E85b~yqLRiIxw}_2|A+}Ha@x(*SZ7l6o+kn=$fSAypu1kRr{UPLa9YMVP z>s{aNdcEtn1R5eiXam_o@Eao&fszvlw2S~AEPG6LNE|ABsHsN@u62?%ct{})2#=Z) z9YPMwJdh#X57ZnGDfYn;bQda5u}mqK(hOw~I3)-c)XY)_5cs?(g|^D$;1NO8Ni3j> z9&SIUB|0|E(V?dR?+Ct{$9KU67F@B{<O6mw&WIp+%6ljk(~t~J!o*QLE`yRiz2?9> z>b1yew=B^j3P6xST>}ENCzn6{1Ivce9_%<6amG~n;N4Xx)#%T+i8#8erkl2*@vLMb z8XvKRD|EdS%4Zj4x&2tCN%&;ExFAZcN0YK;AzQbgMhizwrtBuIr43#ldJYZEt*9mP zzedo@i1U_oD;g(80f&Y%ScV{4$T}vnPLK&AqkuJnUR^97o(|cGe4Ow|SmV@eSYs7c zN89!o+yG_>=*(f32_1jUa8257h|q5)zjwoo0=~k94HG9$=>D~81o1HyIBEo`Dl*#9 zce7dUG^@X`G_g`1d@ObOloZxvoh_<dO&lpK8-8ChrM1N`ZL6jWY_WSg!}jF8QHIGI zg_H#Me@bQ}mH=Z}G8SWQs$5*cF+FKu|5#qRdmI^MHe(ye{Ebh@3=tNSQ6ZNqEU7UG zHExEju)rmeb6%CX)hxJ2#6rJs*+%IutX{J_#)tyubjr+gw!>(;28ID~B{ESM%8?`! zH{zBZ<^EPs5k8gBi5{S~S)%lTcgRS3V2y}>Bjee~y8t&ue_)oCN-Pt>K*^af+Ro`b zr}jWcWbn5Uw$b~c+mC_@iil4mt3QggB1{+>IqyJqM2lEKrwpA<^q2aCgVf$3tf0xg z<bit*+=JNjS+UUM&f&q);WJKex6VtZs{Ju1X|CSX=x+_5an|TcVP7^i+yMG)#cz@q z*RS`VO}I)T<@JuwcohV|ODV^)a;~jAiC%AJu28AA=IgFwrGot1`&f@H054`77XL-a z(7d<niLPfU^&-<s@B$K~va>^LAmR29m5I<IX&@J3l&6MY8{LjU-4KuTBU%JmU>ULz z?>eX+)DFoDaxDrt4(lQN9r%Q)3QV`q15FSv73UEB0bPp%PK9&}eu$DFb`69g=<VH? zg73yb-~seBh$b^|1htslz*^3*L_4L$C&H0kYB47(I~x5f*#R@H#aAIKqNU~f8RUpu zd5&C?$_G}!%Y&4pSvf1ukZQh<Y4JU)!vHcMrF6SD`d%XRB!*Uz)v75)^xS5NF%gT3 zg!;-rA=v6)*YbqAc+PyhKdu2Sf_S;KWJk^&@2{Tjq%I=QrOTw07z_dUz;W!%6^+D@ z*x&f8rPX0^9ANE?w=?0Iz(DtZz&pH@&6-=!9)`?XTBCV8;s6`Y1FlApR~GC2GCNV_ z`<ZYuZvfFvY2*f$$@%LG|LA`ze_al*?E7<1MTsJgm|VRaKMSZ=%*9u&*a*+}#wKII zK^1np#ah<LGOly3*W06LYTNREE+Svns;rbs%k<_4+oNki(7287vS+Ngd)i2dkvum$ zni;)3WM{7PdQ~^Pp`VwFT))Zm^^3;XXBerRk+PNHz<=}@Y_2qxWY~Gg<myJPOFnob z|GD&a@{qsHUq=4MKZCq$`TCdr?JwhxIec;fq!ieHFX5bB@DX=K_*fL_p&%N>FKF%+ z5_8eEx|2tP%*^s|8+*X2WGQhCkYSBX+Gd=GS1&-1W`wuFmRW{(!X|KGj}NVnVGEZq zP;c*!Snz(ni7v?Sg8mV2^v51`7-Q;q#brK28(Zr$uqJ7YiQXfFNR@)z5d-&$&XS~@ z??%v>kBP8O^Hdpbn=;9h$DbnaJ^pF(@u&TB$Tz=p^eFkbe~5g@AM$rIkABHtLq7h_ zx5zb5{p9J&(W6J}*f8(!W=D=+{iJ_8{@IOh2_v6vHT3QnGOD`>Y_XtI54_ejRM~<k zAm#$G1dVZ$uzE3VZ|LjZd}zA4Yin!A=Gm*;8(S<_=C~0ySM#>cmfQ`EZLJ-*OqFJ? zUEKYPecO*KH7jJ9=-*A7_$jDS_$=E3PlyDFwF^Kaz6iYnZ|l0J>q`M&5b=Gi&L9`k zD?{+L;QBi$d|}3-60}42$kU{LL!lTDKP6gl1GomM7^i#?$~Bd^^p{$ul)&3q35ng2 zriiEFtc@1f0cAJ>{VK%3nmBvs+kjftS>T~(fFn`fK|R1YA$DY1<epfOX;yai5yjMp z3Z=z0Knp3jVLNGrHR(q-r?!Y#+1p)6smL}EAb^#Tgt?P^_kya!x=|(^3aiNb;#y^< zS~8ejk|=)cx;wLq>Ll23Ggp-J{Ei2&PTTQZ)Y6o<xwCJ4{QVKcsMOdj!>>p+H^1^V z4w~<ZQ{Tuul2Dyw7-&<+e<i{$h-gkIx0vE&n4w}w<_A|dx2Bk|N&p1n#S*hmpXlP2 z#`Py2{oJxzC9yI=>Y9~sBBA^6jFHC&(X*z6Y9k>O3X7Z94D>O~lJxvkj)?)kJhXGt z8%J1(gX`DeOJ`qt8FFC^ExSaO*BM*(Kl&(HYB-s=Ypx*YO`Mjp+$^et3dORM;f(uv z$WraYr@pSC>R?aG5W`m0BDGz?yJh740~bd+U6WTd#iSj@yn)<1Nf$hoD};}bZZ<|D z@DP9Lp#OD$_2n@#d^wxC(uaV$lzfr%pCb?BIR3<mt~1z+n9EW9k?9)jnu1@Yi?r#} zr&+!O$Qc?SJd*ZlB%1c!WW_d?!U$*v@-h%1-T4OOOc>iSW2p5cmH})9ctY%nqE|ZK zm<M8;7HN!c)25g+iy!}L?asRxVNkyFPL(w{<B2UH)tOzrde(6Wv$z79L=@+%U=aIw z`S4*0xMixw4QqEEh8K;-3~Xn`hC5k;EW#bm;sz*C!sbQCnVp-Rt*MMqL#C3!>346& zgrQ&OIE&K>C|~m&R}m!17Lc{{Ff=sERxApjgF*Yx+-e72K~ynD@>GEi%3i|+scu6Z zUuqkUbQXU)k*pbudH#8Z+vES~g$wY{3tRES=3X#nE&os4o)?I8!OhmJb!6+-<9BaG zdMy0bzdi9c?0&WmOqV_2&kj|qJsJTEC<rpQ#$$;^vIiw2B$j}n0!nmZ_=o;aDcgy8 z(BA2K&>R)>0;*^NZNX}{N}%?bL$Xgim9q-vYc8rLm-Qyb)>-aulZnHz06;c(S#gt` zNXd?xiFsC)Pg;@&$Ienu=c*H$ysjS8lNn>l;?p~v-tMcfN5l%uG;x_ygj)8~PyEGO zV-uwvn@HDtuY6EpTHK^IA_^fpzYM@P79Z(Th{A`U4$H9CIKJA{Wh5SPAgvIh3<Rms z20TYVz>%$d-j%x(^4{ExHeq5L$C*i1B85-*CrtC2_gq0zXYZKm>p6M|b-h7t&=D5t zL(rA>V(OM_$Vw7wY|$HMsov7UumnsDiD6KS=y1V}MqPT8uThQ|#w>#VQwHn{;*BR^ zn}E3u9j1+*LFjNE(>dm2YA8`1o><pAJU5cHh)|kbxl~S&DAW&r0G(c#@VPOLNGRV4 zrBx}5dXr^U4@l>*j=SB(ggxWx#SD^Ph%UPBhKr9s)ib~=yDBm=GYwR+=<@i=$-??j z2sm~y^>i+kOBANY#@AQsvyEZ`LE(%ghZ6QNMsb~-lG&O9I+czjS_!zajIJ1kQbH93 z0k##-3x$kVQtOZ0<{nrW+eef1BuSU-Ovx$Djg3tO^81ud&?Pf@6G<Fv$z$)_#islP ze~!gCVqAX*-_p-8t}1W~A>%N6C>y6)&%hU^AtX9}be2(<CIkr|Of@PJ@QcAi#+b?| zi&Oa!1n=g5kEV7+?K6`j7Z&+dLbfiYJUKGX#APQO4P`IT3s>Z-1LvEO{=|7~77m1| zD-5HZBtvVy$$5m$6QNoS%_cX^8;OjxYCRj5Z5d@e9>Wi?p}}iE^1kh@&V3zWeu!(P zd1FH|lGS5otZlZLkx%)z`+xnZn<l4jB6I#8@=@~r&BuQ}H_y1>Y(ebgS=a{#GzkS> z|EaF7;Rt{;kuKLBD#wPQ($J(}%nsbyNn;`UXG4KzZJo3f+9*h*diStcEJrULyL3Ez zWwv@o^|Mo6wxp<;L?st36i0{aWBIfeRxCHsibl)D*~Sk~n^`@xWYyrz3uMgy#^U0k zYu;)>FSR6HQSFqQsyGR?X-TS%BuiCI0IRa*Bos3Glb`s{{pQ$fzdLykA>6}Pk&86Z zwHVaN;hCkFXduVSP3UL>ILYuB1Hx!g4IQs;uyFk1>2YF#Qj0~!v>2?VGCz2bCs)A& zzyvtChP22xWs?Y=mH$g`ex6I|CW~|pS<GLTw-*KFG*Sy|=OE`n>f<6I+tC~&q;Fu? zDu$#lQ>8UhY@?7(NPK8aACkk0K55DovBV)wiQ}@0ql7}tSBWa0arEtJCv7IL%z_Uv zO6VA4VkT3C9)YM?L7Zo`_dZnNFFRB8>~utk7eW`4;w4Hv6`hfG9Q^PHQMZi70PA1c z5=x|<9oodl06@suiav1Zke&xK@5CgIFh9VY+0}ImdOHO9RWT>b6m%#qC_csv2h%9P zDc@+*qz7nBVvPVzh4N^jOz8o9W*F<4GTtyqR0|WS4u&MWCbm*91pT1H3}<D>qlt`U zx(;i>?aNT0@Nh&=M5=0p<_;1OtcN}*hyo~)zr3JtLYKSed5V<92y6mPx`ky8Yida* zgc4_1`fc~j)x54o5oi`=nMeQW0@=96ILi?2T2)Nw8tU4R-@>UpgdlwRa7Y+g)&$;_ zIvLtM9H}q}?*V{N8<6En3{|RJLl#+hBLqoD)iNt<a(;zmJNavh;VscfZ>nJ|<&2_R zMozTqMiHRq+(d0^d>YkU3LauYca{2lMIG@Zq!;RT)m9xNAux(zAh91+2ZnmzgRK`^ zNPsX>i~~Lf_Kyr8csz8&g?F7{1l>kaneHjo&DE_!4p}+~mLafZNQSL*y%up4QH;jn z_0xfF#|VnV_}^&e9<GB(Qc?+=(n7{W&2R+<kM+;G5UhnrtR0KWWcb*zA0G49`15S) z7=HYD^7ye+bE3l^6NozY;$Rw=Di%t#ZyM+y)gk~15Mx6kJf#!~5}`=$<R|mY%5%?M zne%^i?FWZu3Zz)Q@czQ>_4@6F`_KNuXtg@p$1JR0vSj@dBJ93-w~KBL8%A2aWZ&%V zR7rXBSe5RxeRTcE$ofEk>v}I}dJFgx@>-GiPyH4{-2ixlO%HlTRRa^v7tvk@R>!*c zyl34y@|Rn$3%^etD>qiIY#e>Yzf3yohFh4;eu<1<QMq)nRGry9a|L(v&Rw^3=6+Wa z=YIme!=<zf2C648+vqRSqUqf0B+SDWplE%de&ohsBZMn>0^JFmAI#A~X5*>N-AF2f zkq6d;*AQwZA8mekuBR1=XQGKEXY9PG=kQ;uiL6}A3JqGU^p)#E!j=zi)w116*&6BT ze&4O|(mk4}MesOT|LrDJ0tTr)z4!N6;0uUUKXRkwDlTU^-lYjAVH5<Z%BdFTRQL5- zT#8}p8Nojwq&VH;+{SLVWT>cDx#cQ=iAoGJ0YT1Og-kOf-9x)G5M@SX_=$gl?WjNs zNU#~x(7~YVnxfYo;Z1<2P%|k@c(BeEk6Yr~PB*=4$h#snY7iu$$}H3~>_vGg$eEf* z!&o;2;-;g<?0@_3n*LKG@K()d%%NuQ27uQ73sSx{{}}XE|6e{fKpb|(5&>MmP@|}W zG+dU=7fXaQNAs3sL6joj8yNwDx(s(vhJSudcQK>t3R#x*|JC_cpZ~8APGtGaNI0K7 zJ(DeB%(T6n$rs++K23f5J8C`#U^}SDY|@V0amQgnYvyLt0MsOsT(Cq@1l|K#Pz-&% zxiV%em>cB8uTMO~zK=DKPteuf8tTFg(z_FdE^x5{!a~F&&I1_4W;;eEXfDk8kzzVr z@5`+9k1oW=QrZd6lcP2lFT_7V*ymMp{apz@B6pXH7yHXEE{JKBbOA!Zj&O;@C*V5_ z=KF~!@GO$R=J0R{C}9j(W**}VzZ0E}d51MI_4DAzQ4=s)`EkPT=C$qc6diwjS01Bj zpB_px^ShRd^}G+*hpISOBL9)^W{xN>_9#HLSGNl(ftlaoaq98C<gJ{iCz`&H^CWmP z-j#FE?3#p3fF6OT9z0l76Q*gp4W1}|3n)v(RdwhEJYX3W1Odt5@k1}dw1L_HI)P0c zHG^$bXwaEMPeI?jVY7+)#Cu28s=94vEVn$2j6F79uWdSO4%x^P@PqAIv7*%!r~?EI zS!<gXHi&NQj+Z&^2Y24{1CBZOZ?}soGNsoI;Ksv|a6~Lf+e{=mhhh;1d9esBG^)+T z{hT9BNS?G~W*R4>31x1*wzzYSk#vE6_vX2&Mor>oxmQ1W$IGwZyYs=F3##J(5rrDf zQcwwI>o(^K6M9f7rjRk03H(Zbhi8?ARn!D#ZV+GO;Gd+Wn|*{PwnOaE0iwbW8U>uH z)P;(=T2yBS34Y+DojFBWMIcpaf?+mj6Hc|PHhJ{%t`jI+t2VZI8}7escog-^wQJi; z|NhE?e#ZTmjg1Mj5q)HG`ByG{;y9nW@Ik}LI!LudlBmu1H=FnNC-uH`Ux61(Z1(sQ zLbozite$b<B@ejR$t`T!^;7<g%P)B#&8SLv(>eYV>B!d8Y(pxKW9)P5dj{?NIS0;p z@Nga7Spd2^Fc<id4}o8<2Th=^o(AXX#Ka340)3!#F_;4Mj+{uK9(!eMq3f9y*)c&$ zU7P|nOKDfJR#||6n34_Q^P6R*|M7k%boR66lyU8t)-U1n6F<z1ic0c=BqOm>GNxE7 zfm>=Umlffmjj~*Q1a9zsXFh2xHx7-e@cAt_D0EO@^B(~wbq<oNiP;;davkp6@nx4u zSuD59r&L)eAe5E@hj*anVnQ?0%<^Tut+3M^oGJIYnZa)VCwWqV;~>|kvhm{Vs;wJG zM#Hhe`uJ%Fr$%6W6>_8VI~&#MM$JLCtm8kKVM>faW=H27XB>#k^<AT*8+r?^LgC<s zvE39OhMf3uR}T5uN4mB^vNg($AtzQx5V<Ivyc|6LaWNn$3Ka|a8`!xpa48Tom@+kk zZOFhf_Qx-kOC65n{7K}N04-ND^fmT)`=VX-l58N9qH_jmENva4QFk_y6y{5u7`B82 z5^$*n%91$QfFkc$-{SSRe_*J!-W)CTiH1$?gECXIXr1CnOK}Z|4(JtBE8(tQn9{8R z3KtDQ0a>|=2yZY7v=2+MA!NA9RO^5s?A^D=O;LR&;4MGG{P{g*&r+IM6g(Xf+>N0Q zRQgLF1PwH_p)5k<=&+Z77%;DRr05_|4@Cx00^YSu4y;)+=I!gz_+(5gWD0<24-XE_ zm$9_3I<aKU>Y2%Ap;Aa^1_x$_$pedLo{5+L|4px3hZpm^RL;99hp4Gw7%8_}Z5(Kf zqTubSMj_=o&BCs!-8*Mz8?~JK=B~v(dlnZKr?+mM4({a$^B<UJa)71O1@UK6-w=ub z#aJ79u}DA3p=X|c8n36{`{IiOhYxSZ-@uD(ZvTFNc0Yc|llwpO$RqVbhwAhXC=|hY ze~dBuEuxw0x;CB~qZ(T-P?hI@HA=L#&%3IAhKp#6gCV1TF>E9I=a!6@_VK117P(YR zE2Ro(-Ky8=h~=Vm#O7vaRy1-w7_oY7)iAkssXZ83YELXE%NHU`<Ae5SWOTJMG1n*8 z73MdoTnQ?LfY>mUjzprjw|SsGhN0{XU?aDCeDBVgxjF{$_Jaoxwia4fTu!dI0-s|G z3%EV#A4izSF^(`tXf6VM=thhB)?!i2X?n}X$vMG1-kutpdGU((yz%Xo%cj}@Zl63b zIWaMLVEM@KxRJ4pE3PDWykS_GBfYjYH|PIpZr-+_z9LHt_#girrb`h4WLmjNvq163 z{|}$+`S09y%b&LY`|&6K%Ny&yb3gOQIDT%YZ?{e0=XUyr=Lm6r;s<z+|A8veToB3H zMSK0g>jEnWw;AY35R()G40Y7dr(tauF{=Yk1RAHLzl`92x_3Yb!$4i`Na9oc48FxE zm=@jjWGJtQ2TabpY0th7Z&=E)&4~+2<$dj&{^FXQOV4|d{I0yR9A2qc{4W*&EH8!e zhop@H{7Xi|Gz9VU69}<uA%PbVghe!RvY0SY2gM@Y0G%zB$T#AH%$xjqSDm?T<g!aw zZ5c3fS1n&6Pwu^a{RNNj@n8Sv!NGsN%vDqc0ojn8yZqv+8BtY5v7&vK2y9rht$ZSC zhT*39!iNPx)R5o{uPw`Hm<GUD_>aI>n}rTqq;VDC>IIpY)DaaVs#2y0;|SgtAYlb! zCo=4Hl~D^!H^kWU@Am&{=sQDcSF;C3jlsu@snzk3AN%hwf4uzn(Ju``K-lAd*yexq zbVgJ%@6C`W{KIz-y*LzKUaIbTPd;(FWpS~Q*NGKbuo+{*aP@bdy!mvp_jLaXaWJc8 zuF3?oc@MijkS#4*V++8CjvW9s23Og6JRMU3+*v5_0Yise#6%9v1p+RQb$Fy4FeIn} zL6s!()X^KXWFFldR%Djku=TY2Ka|fRrkAw0uE;ox<Qh|4V}0pY53G&n!#ltA!8ac_ zq`5x-d;X7{HTL#z-f-P><b^b&K!J!oY-czfi29JJv4=xClG}8|jMXnlW`cz&=!&Lj zJ)DoqFF!0skXBM1WD{cQZ}N7hCm?F9s<^j5*Da!+i`I1g`H!u>^9p&+AElqn_Tvwd z%s#SjAKAa}_}+a19=r;9_6_j%<$(=B(`u<w5Jh%9ZkR?^QG82PgpOO6s?TkVNATMX zGVf&YVI}5rkZ^@T!{Rc+b$6610W{39@I|BnegDzJf4MesZc@R2qNSxn)lxXIWVN-d z9j;B5`)(TY{H;|Fst<4H<0X;zS}0dOf3cQ;oBVXLZT9N1DOn<~!4zT?Pf2BHWX%(F z0X6*SisVX8RpF5CqvvW$RaZ-PVa|ffPT)qXX#7#Aj&g!`{Etv2t?jKAJyzJfS-HKL zp=roL|IBr$A^G5+$8xx9N!K#y(<?D+HlT|ywCYY#W*eXMuN#^lSON`5)7f$AmrC{F z<`DIjK)h1{80>xODEcXM@_>h%)JH?JQQ9;Op6p+{_Obc-GuE!%x^^v@)59_N%_5nw zCL$bc4aGvq#`_O{?uH3?MW%ZbAr!L8$Df{`-+Jnh?ep`WaV<;D?$*q3+v@wkav+=- zNT{%wYv$E?`ZL8?Mka-1NdujZ6<reS@z#ep<yLRX;}pS4)JutlKmS}~rHqU|O4Wc~ zR1HB%g33_BSTU6Uvxo!2^9Xa4n%O-B)vmA;j68t68!dL^rVsmX`u|3j{OP(6{m}pE z{xk16OfG%>z(MxF!3$m?nd492hVu~Aw|$b0vwbvAx{JDMQMm@tGPtT}5D$tr{C9M! z(P_v0)0{DYXo7tE7r(q1uB<5w5qD>QHS5fGqj@fD?mDw#_C145T3=DQ_5G7$Uw-k) z>|krfD#N&B(o9$dnt?TlYnM)Zj@g21Ulr*8H0Bpfd0_HVet@hyk6Jph3`c#$f&Z9l z!?cA49w<CplzV`A<JthPhy}_g9P+4GwTf1Ri_}tA&CcDjAz_q05YG-Lk>hu6I*R5H zW>WK5+m17QF5Y(rAo$q6Ej!D_GDFH4t<kNit}`|xM86^ot4T8(9X;44KNoA!-fVC5 ztn()qd12`lAD#K~-{y)n_57Veu_rU151C=nB;XNfp^1iHS!2?OSc+rM_vA+mWNsOD zRf^>q(~l8Uix^4H)B&0l=qp_c<lJ+JI-9UtyM|j9ZjORjfhm^&Q5Pqu2<`b~Z|<7h zwI2$9An*V6Wm~owQ>1IEakL@4bku!*L?A!&-vUD06+t*C;IqHSIe!H2L<na^%qha= z;f$kj^4$oxmxuqE{PWkp?)U#Q`J(?0;B0vR?azPyZ<*KpTl`zdK~j6bKX%6*#2dfh z`CYr7$8+j~j?s_j<ifk%@#V+BQi^o^JBk1FflwcR=M`A19rhLQE4-0f=E_Vhwe=zH zGg8S_jA_7Cs8fuBh$wIY7HuGUa4xs~dcCEm4yHJJ!SW_hb)0KH*PLl^wLLop2Z$r? ze(dV*=k()mQ9~T3=v6tL8JV>ftjYrwA$38jwq2q#xT6=n57&%1ekAC&5WG1t<eMY) zXbDin-X}==d!?AP?gBN+ZuWmxa%KPL`&l-pzrIt~@4G+|3}1g(;<$&HBcQFo*Ygy6 zA?n1nt|!qy{Kc*x<BJeBga4JfZ$TuKLg*v}8~~<l8~?)MXu}xA$aLWTs7EJY=wRu{ zW)!IJ7I_aihH`dnM2Lj4FFK-#kl?dLb5yC<SFAx0;QVw8{-<)AQVcEbbPyi}-g_rp zjzc*xLkg8S?8TfxkOhQ)jYAq7&P3f%EqZ1w<AlKz!*_tZf+AHssz(p)x>?=u=}9>m z)<z%r?ecPS!0HVlZHxuLiowE*Oko8GGMG_yD92&D#21X-aPM}mW)Ug19!XlLq?+En zVzWk*Em2fR;B!tY?io$Ynk7piIFK)DC$fgUCRv8ntMjXJ2+c}PS_p??Qi_c`qLg0A z<q*E(Xq*O3A($QmP7IW@p_~EU9x1K!{e8-SE=JO3#Sb${ZmA4xLpd4OV#o$)Nf9jp z@WSM1#+|Tabf@OV)?_l^zf)z#EH;=-NEu%-Zl!w1N>#?u&}`h%go*QzYr?}B<vM`V zDfKiP`mizE5QiloiV_}ms8NI|P_xNss|If07<U+@X94+?GP5n(Sk7@NV=Yq2M3FD= z9`L%;YOJs?*KU{kY__6$^R5VQI2>h^EvC?PhgXonBB&TusEm;*E{r4w5>JOwD8l7( z#>hn;=jh>NDx8mauHfklXUS-{EtZT>O0Y+dBGD}pLhYraBaAn!n^ULwNe;As1Qz1* zF03L$h=ReD;6T;^m4+(CaInJr9Qa<N`C+UI5Nm?99Rm`3QvEq14wZrYN(RzLKE!`K zYFgp%M^JFW^ZAdn4r&vbP>=uZnxTvE#Jb;4=_#@2>AdUepWO82ZDiBbUoc1f-K5t) zT({7~8BTp<Gd87WqFUly*F_&D#S#=}bl%e)32O?aDybhk)_Zrrzn+7xq6GYl8v7K; zMP`BHBAR7#?~C8{&mvEg&-t6a``z?mR(biwmtI2s_<jB^f7{D1z0~wyy$$m0_b0x@ zUWs}f_y@Wvq#FcE*((LKN68f9AW-!HeosJjU_~2PVr@#hln&bfhXa*C@Bje}4ku6{ z5PgsdLk|ron33{g@w_`mQZ@g_58v@EQTxtNOEaDF3Rf@494kb<SnqmXvZTS?S@0^O zt!V(rRM43ujzZi$=gFKME5tOQg=IP0%WRQLpURJ(U(t*AzjEQHpUh`ozw?*3<!n|_ zHgZC{$Ci+yT%O8uMT@8j6vjzsj7zl|pioe@E9fj2k8|)F$OFR?`kZWDGwCpVAk#as zZE!EE5rY^&=kN$_KqlZak((X%bke<*i*j50Ma#e1|9~Y{PY3(+pCZ#b-XC%e{|K63 zyAP4+Q#=(u-4@kP&EauoInw}G1U1H}(tgTkN#jwlya3P$WeRc{Oon!uqX94AqMmfK z0ALQWY?k_6AVk2a7&*fIQsK9XqU^y|GDWEXcofN~DEtD?^`|o>k*g!yVk0jN=fjgR zB-l8v2$bZ5)vEtd5)my)$?$SHr}@8UT(VPFbw~Jx!flm=hAZf=DvDaMom9fA<plk; z1*ohr+!`4d?~9yLXiCC_jVO|n0H%(A3q2=e3pC$DDdh~J3OVq9<h6W--OuQ#rCb8q zS{vlGv@injN8&Cik8ZV#g<!T|sl&iesVx`>np;^oxf==>5C%u~<giEM;jnhF*o*~> zhzyWVHoRs?UIL5_r=%6r)8V;%FGHMt6e4U}V`MAg&ss5Ze%RgJYAq0QDY?wBE1;n> z<WTMSSvRS?@)3<Rj{p;^cx6dDup$Jg<rNxaCX?=qGD!NdfWRAZGUK$Yu7~eI?bwF) ziVGEWX{#~Hvx}|O2R6vYndx-7S{O&*58bllBEyFeq?HPcfKNThn|qPk6v&F5>Y77$ z&AnX*yKWC;B50}+Ye4`Cf!5er0+J{6N{}G{7pbp@vK-6^x)B5h;%hNf8%HRtbn>&T zljva3F=&uFgi%i+2LHjA(+lS`op%T-A=<<vdIA_7<PHwS;NokymNPc6>Y$`R2$Jni zG!rJ_Ow^gKGkg!@8mUG-gQl#v0%7ufGNT>V80ip3=T^{srrt;)-M^b>2BeurV`hk) z6@2WqlZ9HL5EK1Fkt8Y9@+237FYsx{G#$gg_X9km-bIk3P0vT}g2V3`^8L?{&-{Sp zyc);VJi~2P6O08XPqR_WykeuSdt3ry*QhkEGWx%z>WyXsTRFGdbp59rGfikdcr|7W zF5|d`0$3!&<!q-=aNL}3D2TVvx2Mzz<VmPwW5_(hqNJ)j_b|+!ov;l~{HDue_c5PC zY!3e-+J@l+Dg;Hptf4Ctb+o^G392;I6pSDqMzcKVVWx(eAxuWfBQcvZEH-o;^8!{u zsX<OXfFuTEEsq^F<5FyX`DR92iZLCUZUE793`-5Vq%I3F@%as{@Dh}}4|H?DWicwq zh#~M&$V-%vHGR$5r>|Ouc~HwIkW6GMN@WQdc_9?;MOx1_MtyF6SAFUMUCq_11@+|n zH7|{9PZ+umLRNv!Vx*9zqA130qax*OyWk~IS)D7?3`sE*#e>X#Q&$}oMiUZGyY@py z?n2yh745y&T@27kaYvMQ1?pQq@EcLqhB<^`!>j0>jNZ@!APgS0D5<b0lqvKRZ9di= zcrfT7cid3$Mwh`2=uT9u6v+c27;bSSt&37#5{H_p(|INluWcUzz?~qY421*AD*B2% z1-P&DXgA_6sEsU{3fdl`=zyYNtRLX?v);Mu427$0M|`GY0ZWqM2M2W#;W#}qnSuGW zpF<f9An=^o)|hRlHf$TKtgoa-TU&wLL(hSiM8-IanJ|=ErU9^X7?VcTOWDxHGmAjs zn+NbXW7IN8l7xtM?2&?F2=*KUi3~gO2<t$vUIFjw_8^nAs~fhVPVezuE$PY_Aq*wP z1<k~8^MN>JVr|&tt)S92N@*U_6#EsU4L;w5n#{s|=@n`AE20dMAu27pX?d0y9pc-_ zxQ{^!Ge1w-VQYEP;2z@!rUtmj`A}wg7(L!4V1^+PG`yT<nlO(C8y|bu#^c{4KakX4 zB7supekGw@;19mQ{VPzD!~V~ngeO14k?oK9J&#*n?oZZu3Ns6^J(7{D*K=^s?!^e9 zRV$E~Uy`sjMH2=%?!VnWhQOCf?&UatHxSy$?!BD9?<FDQ-m<UcW`vhs+>7HV^c~f1 zU{|fhSkn6BByxevRM(-HF-3SSU{OWwA~+;nY>W7S7K6|jJf2HY|7CJM$Mt=V;PfZ3 z@JQh}H^jYl$@{st{*BGOC1I=2RX^`Pi%;L@Dxcr;&Yw8-Puvy$_P4ly18+Ei{HzC2 z_p=C|4c<Vzol~$H8l3ge{;kYJbp{jH8b)F;oxrGLL%*27wm=9DX+dFvr@5RNr^*wO z;DRIZ23`(G2BbQ0Z5Tz+m)bCdC{7%FM6pC^D1~Ga-dPoQ`PAm#rMx*<TjHGeApj{L zr3AB%{y-!NQMWgypgslD`@H8BC0=EeN@7GU^R)JeYXNKQJqckXonk}rh{pakP|exF zeGx_~#N7-f35nbtGV{HzQxFik&QU71GiCp0g9u;pi5R)gCEfTQ1}$MVd?Ob^$_oP} z0+@PXWZ|*Dd<X?)MV6QBUa^XF7R0&-<>c^}wJh@fRkU%m^O1dAD8<i33M{axFij;! zrYVJi@A^BCi!3+|ML>_?*}_v!;0yFlRw&al`TuU2M48i$f8i%{!)R|uT)O=Kc9xz0 zTxOZqj*cvhj4b^8wWFi-^JlNU82sOvQ>SuvV~DJ#;XB7S!{$fkJT2X)nYY7G&A{Z* za<?2oy<m5Q?MBrg!r*W4U;7&WYyRxB@rI>0__M3q{X6}CB!+(nkk<E+mj7FF;X~XT z+^$`C``Xw3ykwJoJN(}feTTmfyJG*}0FpiMO}zm=`_n*=@8a_;G*G?`M}3U>h`;98 zG4jMQ|L^zj|Ix)4TjVNom4E#+&pi9=Gr(>B_b!V)$b3D>o>>}bSz<?9r(Pjw<Nw)V zGzN(e4J>9;FBR1_A}#0%;J@&E(UAI3gQxrh&`gxMQ|KZb@0Htu*^6m%{IhyIA&I6G zO9#`hS?uq&!{^`q$xny*oiS+q$A48=KXcCdC0l=n)bAx5(R`Jw<>KVdX!O>vY(L1Q zRg>2rxm!>3N^NFT8Bo+g<`8%MGrH&`%#f4BNek)jemnKashLUsY(tb1vcI`-`IW;L zOw@@IcDIZc3@x0iT$~R7O+MnL(S_80uaZ_KMn>Ur)t6%&X^zRaF`szMr!e|9%mT+g zh`T_B2T^e<lmo>Q<R{wDyeLEi)xe;EL!#3a0AT?UH~Wx>4%&@5ko+)rC|p#m5H)R_ z276IMknTd`HOyYqal=;B^`Ah^Rlh736=hgKXj>Nc=*SsBThY44((u2sn(Jqyk`hM4 zp(xM(Q9!yIir17X@_OHSp1IF8blb6XTT;ElrQFpS$mlspWV|8VNyMj0cb61qJ2Sps zQ3~4;1!Dx&e-73*BUsPvQJ4-UU?;DGB7il~FBMj8CzN9c=o5IpK>!yLs1xgq6$Hb{ z;r=|DJrO{HLF~j#nm!I7*E|ei=!}4G1&_U9Wwq}UXHFoy1+w^z{hyc_-E_&q(y)}f z^1R3IJ@yJ|9Am%#*>rzzE?w>24{rvPVI|?eQ%)qRg&Wy~TDf`mZdIwPo^s8$gF2U~ z9$36`CQ-d@_d@+u|LCi)-hKD?ch^#xYBiIoKJWh=?1$qDg~an2sL_Egax%x>M6Wkw z1yHp)fTEzX6y$4k1vi7~jE6(TBks@>a94rNG29}L-?BTGu1_WE{t5r?6L5Sze%BAa zch5(^R}6*gQ}XFwIlPxWf6bb`ESs9Mrfc=Y*1eC@y~tkDHS?<f^7mi)=!SV=x~62t zp4vAzzn9xPKX;OLA7M8@Hl5pbIXDOv4Ajj9u1~cZ%q661H~=ey`U5EqQbQj#&>@Hn zdLad6f<;Xs2LsIqZ%sV03_u4ueg}#lLg(Yj$4E&Op^Bo1PwJOwH`oPE8TX1|Br9ut z{G5GC8SWBeerPtK=9?7amq-FD8_kQR&quSBo?@xWa}i!mYmwOqtC+KyP!uJ(R$c%M zF{c3|6R(7;I|h0nOJWhoS;I{&3T$nmyo&#t2c&Z?#AgS3<EBu7_5>9P#T5W3+<C~b zqNp(-z~B~&gSU9D$nohCF2;-i*6o%8S1^ZA9*G>Y0V!m#oEdI~Bc~x>ZOMUJCev82 za~gCyQD9BfcZe8x0WzPCD{$7kZJ`s~!MFy&`Zh+5`e=sDA!Y-DBAi{TkJT5pP0TcQ zr)s^eY0vxoTU^P`B-HUn-L(?A@vBR&Q>|`ipi$_k=%@OG2i@!t>U-`&SMe_asqSlC zFTqp!Ye+jiz^enlq{$HA4PX}ztW+wy>B9{S1k`p?n_PrhPNPi__)Hs*3T3>Msl+@S zNu7^0_8Kf@2nCR%7A#mzYY2zo#DVpTqeYK;T|}DDL~G!Yyn{Q$qyZLGV;uSfDgXKZ zmY1bqPZ$cSSmO-12w0C^OLUO^;~^A4&x^T%crR*!b%ZByrXgSx(cE#&8q^%?94;&X z-o}?99DwOWkHFWoY6NsdV;IoKfg8Ae>GC+Lh=4bS`OFICY&fs+?Wolc95g_(sU)1U zBC8{)K#0n%JRe6HwJoEoGCL}&QJ(a1)0ZeQEy<-bVhDu^As|L&I5=HoF~o!bsXm~l z2Y4YHL77%4y)o5Ol$fj|%Mn@Xy-MSm1{>Cm2>Cbwya6l^C?|<JRc`@!UD8qD43y+m z3{i*JS}F`@62pe4WIn5})$;c8zk)F(te8RZz9gV(9ksk#iO12X1ZTslq+G(Fj0bD^ zM32a(zor_FfSg@a1_OUl=A)rEhih7V$r@M~yyGl{M2<n@1sK+BR$MXtQKL{+wThkE z6XFrf8>+`~Nrug*!cmnmBB+24D?<n$8d2-4X`zvl1+*ndjOg~xsNIsrC4$~bjNVAE zfO}Rm;o6)6#w=W>OsKL94Y9>kB24OHoJ~}(To$iVl}{8VHZZ8xF-SCth>v0FfD)%J zU!a7N5SlDW2z7~i0Xa6AB`yj%q9G*PSgtFUGS`-PEv|@)ZQey-3`=Y-V)3PD6eJo# z{zz5;`i(9#(DgCC3LJ3C@G2HPsBH~xxdE3&J;|Ig?lRJWRkoSET!~oBuCNW*?sV2> z0{_Oh*$W_df7<nnu0Mcha;V2Z1tgT+AUcbSrxKUCbi@oty@XWSbSB+UV~G0QJN^&s zfO#kigAV1Fw23m3aPU@cQ4+vR9Y*3dniMb)(*doZ4>KSg3GAL=@&;u(9XbUOP*8ah zK3bSX=zv|s8i)l<>r++u=%5g|-SF-7!Vq|ffpm-Bpa)u@MC?(!l(KF7V&@Ds&H~Js zA%{@aKT3CpN`Tveg22KdGla_oWztYo8=fj;;k8)@dK9M3UUa32@Io)zV=<;VWx{EO zX@bX(<b*^Ir%KzJ6cWwM@qO(0$`t(Q0uca1hnN7PmKmv!=XcdvVH%o}1O|n|bJSn+ zT5@)!kdf;Iig)v=z99kV_oHK+rm&c=QJtcm0Rf_&v9__|EWWT8C~Z`Y2Tm&i2wIed z8pUiHkkX)x7FxtJ=L=GNP|y&bjG571m676dL2&w`Be##ncgMeZR|1vy$9JlOnpVH5 zjUGr5iDcwx3P^k;Q;d^D^+}5O%1Yi(aS!5>DDzgm0XYObHpxYSJ14;jfoAhTOA-{! za8gy`u6HCmCnVq!m(*Sk(!gfa8BgW7`MS40H}2>KyDHeKF$++83<hW?lR+N5kh8{{ zE?jko1)${v1BWKW+l=n28Qa4uMICY1qtw}HAX<ie5tT_80#{-zZd+49rkTYQN`eEQ zGfaJVXQBWs4hB^Vv@%V=wW<go+x3)$tJEhHS2}(G4udNhX8#VF-Yh6NGK>2FR3%sO zue|!|tC_hvN3Iom4TP!#+vZ4+!!g(Oe)#$x0HX0P0!bF7ja3j5gs6be4KwScf{D3A z=N#2GmqQW7WJiK4mHUD04-kku{s7EXyc`O71X`iKdFrB~E*Q$oscPy`hX5o|ARdM> zk0Dxch!BD1fT{<&H$5K=RjSuQp`eF@hE84roccJNPHYO^AD~#^V6iX+Fc*4_(5$H9 zJPgADe(fMW(r`}d(2#AN7gPh8`%tJ78kEwPrXoYUBB3c6RTyNGx7NvOf3_$C2+-j8 zZX37@NaO?70CY>dIR7hQ1Ij?b$rh=di+E6YY{lx7?(lk_Y=**4wZigAP>a_ZSzxu- zP?{lYd@)f*>$!4>=L(x-j<*HZ;MHE3!9{T7hzuNJj@+Yhi9Ly_D#A~}w{e(>00#vk zDRM02vPCZdU@;m8<SIt~74+5nnmI0k35?hayk|;l2j^f8a@bOL_D@+-LLZ;0A~POA ztrF%BW`;dy192^P1u9ArYj8>ej)zCmv80+H%oK7N)CMz{u9i_11Q_Yu0y>I7BF&AA zlA}0*n(JLpJ<tMY2;2UD&fWzuj=R41)jW1)cXoI7HT%$NceUDG?XIM?w37BA%d#vh zjx5WL?KqC(7{_rOV-m-4LSl?DsWBl9A*3nLkaB1mDA1775OSdhS`LRoNI3!8l=e`{ zp(&*;<&c(AN@+<C(dK-9GnSKZ>AmM(X?J#>|C#wee*fR|`&)>Pf<hE3j1z)Q+5G7R z2U{y!p^AU?lLxsTkY;A7f?XiEi)H=2)kbBp0rIO~GDY~woD`jjrVgf%D=ggK#OCYC z31XLxO||K5eC0oe%0#rq!uO-x6d^cCFYJmK0E{jgDMz|5`JvHK(+4C~2>zkoMGnGJ zmH2d=$?zOczWg7A(&-^_Fg40UZttZ~*&af_Eh5#Br=l(o84mW4atY&`C|yNky+J8= zI71#L*6PTeaPt-eE{3QW59B>mGKSs-H;!ayng_&Byd9gGQ<SIa8Tg&rS?Hk;<P1D6 zd}<TtB`r*M)awD8_Md0CC;a~7rfNS71#CZO_rC94C)86_w&|MHJ1YS45C+V?fnF$} zH)$yKN)s@t)i+Y^tHH@vuA<8vzLAxq>`~3V+!T&jw{dmTtuX1wbhVuFHFZJb<?nBL zpQIgWKfgjGqV-Kyr2jl}R&V+j<qS~%=~p@uqO?4QeH4-fdV$`m!z6Gai33!<0M*k0 z?o<iUn36O1VlU<LqyA&EwO=}mly(QFSgRjECQ$XLrCW*{@DG_o&W>A9F5~3aIAo~G zl<xW$AyUF8|4180nkN4$?lQ4y8Uzx+5U2fF$7nDv<S4JGKU%flq}jjynpeHy9NMBC z?eR@O9azf01z($pzvfM`$o&U@!FZ!)2Gpsp&$m2zhu051e1j0a2LUBb+zrkWEPo9r z;q0&d;m1yW>?>Md?-^yP{=)Ohw?FflUQv?(>%Lc$o1uqnFviBbCei>rE*(*5novTv zM3GFm2NSZW;*_=)GA;eKyx-m#&DX6U*IeObjm3EXwa)fjZnsk%3OXUDkeFiPG|)bu zIA64m&xf)NOU>D#-5k=--1YE1&Jln`a<?AOMYGu`!4pzZv*>Of#IHy^F!B3H(3w#c z(9^XpR+vFLH-ZXg8J~nKii7OS0*hStVoC1tfO^^N&da;2pLpO)_iQPZ)cinoIM-`0 zE^gfT&y$yhH(T|LKoI}YA8pvTPknG_r}xCnZe{#?KQwOZbSed9cecL2_nnU{Hs_`? zna1L{zPR_a#9WF_<O$89u7;4C*CX*<Cr=1z7h@#zPaB?Sqe9Cv)9|PgE5W>jhpGU8 z3HQc0<TRP7m`~6W3cJHBgI12*UbuxaMT`;C?-s*ChA5!3%6<AD>sHPG!R%n~Q{VRc zO17`}XOk89&0qS!)z>{3Ft1x4F&j((%h#FK+3Vv6AHMzeUAu1kiW4QyJU-Yq(^hP~ z7;e^s2V$tt=+>Rg5DUfZ!>fG;Nq#~d^~cqyKKp@>sOOF}S56bMW~lMgD@Pv+sZ+N- ze4BpT&Yig^QEx1=^9-Gts1u#FMAz0gMteO#ZFJ~8NaAVfKWT^=W>(3QI<D6Qj7*Lo zkLsvs5yo-5?xv{#<#&sN^&2;3VxtbCwjIuw)0N-*^6!;n`F^{f+*a#G2TL3FDBrkp z<;A|AY}viI5+0Ame)}VvbJwX4<g;30-N;}z3BdYrVSPC?wO(7_3Fb!zy1`Vke<__x zsek$h2N#yE{`~G5{toKC{Z@ny<&(UO=xxi4!vdLU=3Or^B*_?T@(|uyguSGZE}41( zh(j`@kJbL;O*jDj+J{O6k;sb)Nu_O>^3}=Fd7rX#qPL?t<5Lz#)GPE%nE6@JBJuLj z(0{N&Fx61+`QG1FL0HqxL`DAzYZ~~1fH^FVt{!f7eadAM>bvXf_0=yDxvj6)<Acgw zA7fRU)#C-_El*rrRqk5s7`a4%;ItVtpYmJoT=ividInlrFfdK6OUya^PFkxa0E?W0 z`%wSrp|3uAm6;tLPmk@3?s)X8AHF=0pI+I$+#Cp~&DC!%sKs1vexY&Cd}{UEY-9@a z2WDpWEfnbr_>;c);`gxq{UeB8*MsK8*r4C1qHZo=x8ED(s)t-zgW91SOSzK12Lpt3 z4e^6nlHp;iH3L3NWrJL42pWkgX^}2%LeHXpA)L4tv5#<9xxhe>VIDiEo}0KF{{&oR z<FkSO_MTvPWH3jdQ52Z+X!}UcUmVP&lkr$(BT-5CGB0E{wjxuBXgZj*BOBs+aUelf zQDJC;EeSiFU-1=!K`kCXT4#DH;cAqPq)ja<VVv9hQ+wk^I_`rqsoyo`Cr<Q!`9uVS z9wnrjz+;n=EaiKZLq45>u;we*1JhYGPzO!GQi|<hA?Qp@2G$1x;k2WwCCk@vlt5wF z3ZDwMdYgQfQda#_q2NemP|GEErL3)KwHn`r%`K7DeJx<4{GoN#cwl6}^_Bl5`3kc1 z>3({38I5HFf9w`|TXcK$Z6Tm&@tE_c6E49K(vuK8so{$YfOV1}>|Fe+|1!O#FHNt$ zeR}KG>DP6Zw;$WF<DY%KKT>Aa7V2Brntti4WtXQ`-_crHYN@wQEx*uPX|;CjIJQHX z+q?HHpPf5<5AEH1de5G-d-j~#yVtW>{5$mH&w1jl*o36dytS_{Eo`{_dwNwE@o8MR z+<(u+355}#Q}<s$fZcz1b?>tFOa94j2||n=LqqnI^4u-c;I+%H`m2qAK$137ih<)X z+nya&6k_k+?Sx~5F8Oc;3)<26Zlcv}8zghAa^YxP{Sx|uKrHO+ibrjL^-=MW^(+~Z z&0x@HtiG;LO*n&vgi~h$B%7={j`EpX)#{G!Q1PxCFWoYqZq#cZx@BpW^oeD30QJgv zy*|@eK+!hZtd3T!Otsh?Z_UmwPBl8MTq&m<ooUU~>*JNWl`CN;oSK=Noo$UbDvh{R z8Lc*%O00SjQ*_FiulJsEoMJJ~P3KY$u^*M{+<7Ou(!7Bn%+KsYCq9*mMzcA0Uh}YV zuf}G75*h3MK72ymdKKYG<P+*vwxMs-K7>Mavw$awtCA~IiB|;Dfk;F$fT?W>J4a99 ziAc~<cGXH^%|^RG8KM;+xr~fm2_c~@Q9sP930LZZES1HeT~K}1^rpsoYkh{qEqPzq zZvebjjiC^Ot0akmrIxoMKOAq>fRZN*3u6|b!B-!ZTrBWu3+cpVq|w$Y<HL>AU^VKm zqx5<N?aA$S^GhRL3<PjdzN|Uci&fUyz(o3N@-3!{UnAK#lb|IWZz@;K;0R&eHVekH zzEp25ATZlV$xeoRa26Bj!ftZCr9zIsgj6mWs1Qwb2R@OYangA&&Vl@cAX`z6Iy;;~ zbpAB5vxUW04CDU$$>fs5pAoJzl&LG<uh$F6F?K0q6C~`~v%J{2+xy<Y^i`Hh(iqBA z90u-=sCH-{K0<1tn9RN)KnP)!8O&@Gmk(EAfD<R`8mVbHCxws8xLOmQ1oobW6^e@X zhX@E-O`66qmC|NvPz{6gs0I(jmq$vemX!@phP44-yIzodu|9G)k0%@X@sW0J(BHCB zSN0G1hhlN$!$D2UuHa*k)#9cflPZC00X=d_1a^6IYhP7tn^rlZMjU_q%j4mp#qe(8 zh*hHQqglWW!QdQ!$Ig~Og%n}6jjY|8+hW-%+prf3Gld43ZbLIp<pcHVo!R$hXAask z-)yNx^^4C;?Wykemz*3zrMUaysmnj|o!_dCFCO+grH~P|jG1>;PrrZmj`6!)+bMkK z1$&4IR@Jb0?-4`c5>0>&SV_T#Nxgflo2Yk1<5rUZ2vHSCy}O4*e8URCKyhOxq;FHT z&?9Lc^aa|Dmi@xVzUj0L{VK4Z;<NL*e#u;I(-ncqT6IA=pLh29&E2&CZfE_G&|*Tx zKxF9GT)xqq^$$x|vVC#v(`|Y^UK4dK7k}YNqD7uC^j^y!eO$yJ`@sCnGI6nfH9j>L zj~XY8%$6OMkdeZBfO;SaV+M}AUdk-2ki!*u$Ox4XYAk;RU&*NON2~BhC$tLl$4uWs z-xkT&o}e!gwJh^37NAm%HF5;S_<FOsm^{-&XAX(g9-|jz;1wQK3Nc!1``$CYVk?cv zp<5~gMro-rT<N_TgqgZh>V2#C4R3dOsZpsY=L2T%YoRT>c1#~sADSB*n;TpGCHF`9 z#Jeu65iZ<qt)GjJm-lX&NcP?o%G})h%bVA4xUfSxZ>O8<jqLK|mR-wSKQ>o$m#hEt zo$plLHP06I2k=Be?3|K2Tw31E`6Y21>haYFd+JTA?^bU8=}$H5J3IJ?&oNzD?uW<$ zV|cu7$20L7=C0#?_&Z9+ptVstz0B(bM+E|ERFKv*(#HZe&~g*s7c_d5^bsP%-7zV^ zqKe_#S7nl}T&Tt2DPl%jI?KsY`-6?a{_N0}czn}JfB#@(Fz;l)dgRS-$fd42et1Fo z(`>4c8tepu#Z4=7HogqoVHiIh^mVsqth7D1ZBsEA=ydD3Ts_x2RnO<^Ib~-!9O~T; zs)JT6&`A#Y@tlqyv<prFxWIyXaPi3<AGmd8e9y7F=0CT1s5sjDdv&y0A@rLFn;UKr z@z~mX!wnU3Nh}?xR7da2I!;!;xoR#;*l9-1Adq@?c`x6YpxyPg*Wn>Yo<zEkvak2s z>gLtY0_YP|{`HAZKSM;ox!&(&&v~>@{U_?#aWU)K%=;*`!6Yt=b0?q{j4i{|j8u16 zW(`I8#e7)lkaHv5D_g#N<U@FU?~V)%IO;pqNI-eOR(e0ya0$t-o+Ed+aj%+r-p+<V z;5x2bs|Sg;J%!hesy29DKlpV|Xye?wfOIqJ`Wo&9r}p(S8g$UA@Ga4q@JyHK=t%5q zrz-&IDRN`Oz7`~gMIyxn5*;c_!(MR105IOO4!2DD2y`};Mls|rI$hSF7-->ZCJb;b zbxe<K*nGpu*Ie2LG%PYa;AmR1yYC%`KYI8Vg8I}zBO4thvOQnP%#Fr+oyjX2%FO<K z+oQ34?a7@reP;ia+oI8(hqpAFTbjxZTPB<3QuF3AD!jxW7c;ZN<MLS;Nktl`H@xaq zKzA2NcpYz4a=B_1<lxNCoyVIqhi<#!ROiTv`#-zmBh5x<w&mE_tnIXBi+XeA@SbXD zc6@5Swd2t4l0A#zaA$LAe4KolrBZWz>070e<v6D*PU}dnuy0?cbfmRmW3f7l2K_+1 zFuFuNOXs*2+_u-?&$)qkt6hwwqwpYSK*Ybp)%HsKr7-^zkfUI`)LlW^owE?MWc<ja zW~8wp$b{%3(4-S(MNZ>ma0VZ0)m8E$E^solot*8HSRZ;1#y#J~wRB#MC`_i}U&eIE zaK(j|Q<VQwx;mcElP@<&5*I?!K;cyb!Hkmt%U&Tpcd#4E%p^8sHjX4pK5bmpBV?Ew z^<DpGuT^@(Bw_4N`Xcxk8!bJ%VN!WvV4%CnmyZWS)7fwg@2#3|UGKzjBJT@s%{u@- zwh{$zwOGFCmgulKTn8-93LUy;U|0>O2K8n2)k?5`#2+a(GV3ulg+M-wXi+7&El6Uh zc*YpnmGS3-;Xopn-+Zd<#J6M)O($x}ae(=Hf2Ry6(N?7VYmq<}aN$a<Ix~a&gL#QR z8!v?Vw^h=~fm74Lu^kzuKQTPkZ-Yp2acwgew@_38;CjcX(a8F9@xnkI&_QDNU5o_} zhel(ZOI)buHG*;jdsCM=queIlTzk4ro1pm^L(xcxvv_|flM6F5Pb%U6{J!@+(fi8M z+_p;|ylV5LmV4nn%HCtGsioe>m*&+i^ZcGH?3|hFef%H}KPt4?!*sA*8sYj~Am&V^ zhGQ;|DqOyF64AxTWUSrz+ROLca?74wx37NB@)r}%?v?%oftDDHQU}$mcinc&hi<v` zb*mfLTQV)nEG3*>YUYqriV~9S-R}wY{m_MsXb#X%rIXO23u=Fte=^KiO90~OK`w6~ zol}A#%0tqP<RPS&GDnEtC;kh<OL!uW9Em80-+rynSD!C8O9gAvsZNA8S(j#%Z-qzN zNuV~e{>a|KSjfD~O88T&U&<LUppE`bjY=ytNgmTcQ4J6+k%&jz!ARLE#k3-sh>bew zlI=ohIk&LiIpv&RP(SA!G{6hA)W*WOBNaG{-t#2!8ikD8%asE&<ai}$(#g#mp?Dz< z*9B%xqlGyJ_Yqf5M~kVyM+-ZB(~R1_O0n9iOfyWeamciV>qx6AFFmN1MJ_|DRVG3Z zByT1{6MKjdM$~xfjlBn7M1%hNFTJjJ|J%Osg}1%)@yBD?NW`#icyt#IJAwMUl`(R# zWe3Sx3sKs6-~dUXlfhdb`_V^s-o5*bGJ5Kf(?_2^+It))I>UbA0UUBar+gp1tdkqf zRc5kr<%4?>7zoG`Owxacrr)d$<GTKF<!_XK#b+<5I%-a>sZAv1B;Y@^k8pElGA)XD z7dr*RjquaR(X!tWQbfZ-Mi5zK%@c*zqBKZ!C$=8py-P?xW2osxj*%;nXyn%rp{I-+ zfhha14Y|qV9cU7(ZdzPJs%&lD?Y(7G`*dUgddASnj_c&1s-ho6ZWRiL&QY=evLgMf z&804|3*!yqC01IjOcxAf!sN4G283sRa_7-0hNP(ZWw)EMb6W7#-C={ohchj=6F-V+ zaKXe8l(zsZS3J2|9lAKevRfGWv*d`|$p_t&q(d`6#7mwvdO9BhUxaukeGDC{NqRs1 zp9_&H+47uGcu06|o<|-@UVuJS6Jr|_ziV?dgb!t>ycwNKY$zB?c$N;)4DuK>PD(D6 z7UlLWF=0EB=goADF2d5wgU^FkMgggc%dl2UbV`ryTI0SF5(D75y!kHRWu?^L#PNZ2 zf&rZQFwNCSkcU&gnT0jcG;(n0stGWw9f{(x=9nfb1yhfakvSpOQL?D1*f4k$l7Qm& zV+LDds>8#JBE=374&aaH_t|EIP#bJz+yUGNKdWK#@sTKvtiyU%59?tPIj|BmFm2=R zKq({`AV(_WeZcS@&Nt>g8v>M1ixA|GDbJSx?KLcENy%l1Y0lSAh+7R?A;|>UlNDnK zc01N5h=kJu<mvSu%ioWL0dPCGm;A^%_!$wMrW1UihW#Ly`@+7MPKpR(<^2wM|2W+r z$i{j_Wm`HrLdrTj8IbFgsHuhnnEQZh*9UoTBs9m2*@K162YlHWbyM?c^)2my^4y(a zJq<dXJ+yNt-pwyy@T}VS&``)ysW9iPW5rCjd_7|5)$kxV?TUWj?xUc5l7>$4XJaSy z-YV+qsG}y`pJ?xtY(+n7hro^s#g!p6;|~7lzngWNAz<=2yd961kqV`0s5b|7fc)Xu zVMl^t9n4K>3dtX#$500F!md3l&&#{l(6)}x2<ibdX#xO_qn}<2`$B#bx*#oKXmk<U zHEfVZk6M@RkktcKA1?AVC+ViMFExX>3DOR3|KPd2W^nt5C_&_zRDW3WOEd6Pbcz6C zHxEMWjkw&zkiErfB@ZEuZsAR4(Lb>3)`$YZjfbT52=kgvmn7F5{mqZ5j8kb;d9YZ3 z9zy3eA{x3HItZF)uxIb~+5M?Pwm*r#3-)N+A|x9eV!vdYo1sP7Y2-&Tdb58+B1`(o zni9&i1HF@^3aDC!11$eO9CiZqe1DB6#+`vo&DB8K7Y-|UN@3yig`;ExNj9c^UzsD& z5=Bldn~J#Y*L$PaZdI>wm!vVR=yP5hL(IvmUIE+SH{HDIo&=umKo}qpP#u?kGZP6d zsTpFa01Vl1*-0V9V4*=vMI7ruK+>rn?XLSLqvg<OEd*TjrLERFsy4PE*k3cZMnMNN zZBn7Dc#)9NBWO;XECmwAuF9A}TaT+z0x-~am`67m>cb%fVU5mN&?kbv(aG`5rk#_d z`%?@3u=XU@!+uH1OJXC`OnTHeLQ28PfN#>bam-J9BiQ8qn+^)@nDXNPeDVGG3ANEz zNCZAMVrP1Ycc|2=@oop7G&H`DEzrl3-m#8$Jh1xv>*v+viElsN`)+>dGmqY@M3w{D z-gnZ4rgBTTSJ}8x`8`M37@S(){8BdY%!fa!l*cN!oYf2IX0g<2%G|H@WwB$<yZp}- z(P+$?NVeS9{cl5kJqA1}n3JvskXmN9$N1n4?yiC)+3C7`yn9(motOTZD&|h?d&j<_ zVISLT-!Q(jFk@T(jGfbW)-wmQsXdDY-5Pzge&#@D_1_G9Qf@88caAP}a<dK{r!rH$ z|JL0|vClxH9D?HGam)XQ2L8TLKSA*?JOf%I_E|?4F9FLko&h3Bk7whnpLxdH<p&SJ z$#8|rmAI^UyxynK4fMO%M?@dGvmB}prWct=oN_9Og<bH&By&4LDK&vYPUbB7kIMzY z;xc`N^PjqHY`A#yJ54<TF?~9~AS~yCWOsf__Z@yiy1M<1#j^i(Z$EnEm*lHFQmGbC zK463jPn?>`E-^poU&P~v$Uv*)sQ#z)dH9>7Ted9v<45kh_b6Z220(siErAXr3G(6? z*3(U{ZsJ;3FCpefB&2r76r&<u0o68`jGhxgJB1N-?YIx-85PJ&$MIO!Uw-`JRh)UD zq|fZ0)%96f-09exHrbB0)drrZH~h~R53K&BV=I5r8(urMskisyF_pcX{kheDckI9V zE6#|w>WAwsS*+mY=h*X(onz(6|F_+B@4S+G5nZ!y3-Km7`sztIb$AZZaZUk6L;I1i zML0QF1;#$!WmRwRS7F(h6QzYO&<Me!b<cpinp1@hfl5e73ij|RkJZ2|Md98NxQ)Lm z5HZbs9*P)R3XB&uR`PAmD;QM+`nVoIuSo8b+-wSvw^V=nRq<2NaJjyORR?6B2|be3 z{O0CdgQ#{4e<mJoMmk0~SzvH3)38zliH#?x>ivl!_3=Oij-T9HWGK?7bUSA2gZs2% zB#F}j`OM7uVBVik<+_pZP+;Nmz0HM;+8@`+oP;x5BBG~4d{enuUp|&L1x$=&qb+Nl zsrIKT&7l+_n72;u_Vi;O4$}~v{(4X1fwiJ~kgw?ZjDsQ3_Dj8BUxKw`ijeBVCxx*t ze!SulSnm9SdR#Q}o2n+xcF~DKarHr0LtiDzINngM{pd;an*KmgX{mT~PLCwkf4E}h z0|#pwxRTDi6Iy*xW`IsH<(F->pdM$S&jW;h&VMGy)UnWVwg5<YcX3L1eXVaAIyI~< zVCx(ww<Pg)bbt5X<xgp0m-L{|1RIpzj;mLv3s>lAXAGEV_R+zoL|LQM_ogrcjyg^z zWOT>gcGreB*)vBiBREi8e>fae0zAP-Z7VpGX&(*YB=pgYzw)(!b6{tswR!8r*7*G5 z!0k($uid*aVClVQEt^1M8ZH<f3hM9hhiZXLMR41}ul_A`uhUrZwu=^;jw%l+k1d>Z zx09x$P0efYSGXTjt4`WgOVjzFIbvx+AtgkYx0AQTMtXsD6;WGDjn~8JH{JJZ|Mkq- zi2u;FzxUx^sV4!cr@IUne<d=UZ>F(E)&su6FCCvad_z1@^QX<Qx&CatHl17WpV&BC z9g0s3hnk^Z{rc*^+fJG!?J@Pc=l=Mn55M+i(|`Xve&@bp=ZmSEhkO&_=Gyy*Uw$L7 z2+07swIW&oJGK$9Z$A3kU(Q^eO6*_n2S$pVxRZ_d&X#FXaymTl*BMGA{sT3%OV3aV zYH`*Q$l61$RddqApac607lMS+tqs?JM<YEzx;rcZVZ&)8o;hWslAf%Y<cM`$EJT<3 zl2%pL)}njQZLMfPv>%_@rG7}+`lemo-c9c-sl7X1r|Pd$ZdY$t)YCsyPM+MHiN#*| z0n*{l`<&HB)xC?$x9O*s7grxs_dEBUSlpp6f8(3W@l49^f6qG>7w?V>AW!HKVKn0* zd+nF^6TQWw+O67F+WHVJE%Kz>&@{GZ_Y?xeKYB#GCR#Y)NJLy`x@7Xhfa4^_7g8Br zf~FS7L$^b?SIMwsM2gfX@|1Rif8vH8?mICyd&!1Ybjzk!f8xoxiMi3yXz!D?K^y^v zGxT9G^O1hYo{y%Ji45+w^9veCU#$49I6S?mXHwf2(wRViBzIZI=ga%Um#=JB?z!#I zUsmj)V0G+@D_`4r?Ty#XUbB+MLU!3TFZRW^Z$;G6D1!W98uCWOu)|q0j2SglO{gsb zzP9b()NN-5QmIgw{Omq|-8btuCZ&E}eE!AXQ2$z+VEj@)2{CVpC%w=cmsER7IW(of z+{&A~-p=mO7Au(S;k0UvtRN!ux`Tm1;_Y{93_0JW@|`z)YwzdRPX-%}bvr&dyXUFd zR;V%FzI^Bxhe~f#K3jSFbnz|4ZhY(9rAvA{k{R)7u_52UExG(Ub#fel{(WPK^0<{b zlxe4iIoVhr%asF};+u<^E&;Y?BsZv@{w0du_#2xq`>zu>RwhPP=03c5`RB)zS0+<e zrMj6~a!;~&#|g`sR!gS8(jNvzD83YP8u`%h=#`rXL%4Vtk&ThTH#a$1tNQ)b>438* z8LQ;YFnqvHPfxBLW1h1lD{2A~R!+L)D}j;b-wwXx#qIBT;0d*~`Yo;ao*e|s9eGFZ z<E!6t{Xw2ZkMj>iZS*1My7GU`o&2a7SY>zB6}{<m92Y9%9^s%X;M3V~cZ75@B~sa( z;&ocj8Z7jQZ6thrbZHE?@>y}!4-=S3yp!F@LYl;7zq!TQuiW(4kw=hLVp$(3-~x@U zv_sU+=m@6PK~t|0EsmFJuo=W3f>h_`;Z`7(5|P62Wr21*xHM!8BBQJNG^lvGp6}FW z{59*^>lQcb;dc1^K1ANwz_>Xy!a1{hu38eG+4x+5GULQ@>;6hWq*Di5FwWq>6~>Wk zfa0}^qlVqIjj1|@_p110w*(Npj?Xo)4Mr7)bO{HI*`2d<oSh+0XqFp<>@CN(M0d{` zr4)}VcH?L+ju8%w)r^`_>wwi7DgV+rToCOHP!LR)QKQOI4b4d5c8L@Cm5N}Dh~4rD zH_x_byMk_#JfJqrSBaT1U}a*ppZr8gJolXP!t=cso_kI!-rM`ZJ$KyS`_BDJ&Rsly zkJ|gey_BW#JwspEkF8^q__YzNSx#?)Vdu9*st9KEDPi|;hZ3C1Hn0aO{b5WYTM-Q^ zIvClD3ml5E@=H4<BvOuusuwj)r#)>F3fC^H>9>WZ*6E4U36Sr=gnpGq-nzGi)~`>T zO*p~emR+*F`eUVzqc6(WsSmd!V~(*77g8%Yt|jXmVZqm}qlay-fa~7-mugkr-<ey` z$EPr*tNZRY#z*(;86USo$4(pS)c$Pf-=?Pi&1pLN*+%xDKkGac&-#yNi$|w^Ebo31 z!?_}neu)v-06H$L8vNjz>kL7QvP<}yHnCe0<!7s&XNucnMM)+KLFvyIXin!X%A}H< z-52z2n}v|BKD&I)^8S*qqz>ASSzIPN917j72U79rxU-zV0t@~1#kRyOU;mX`i-;mB zJ~bW7S^dTwuBQi<)XLm}Go}5%+xvb2J!-LZC%&in)E93!o6G5i+=(1TIIu;A*mU8D zQU-kpzG4*}`3bE6E?0lw0`FG@j|p`Pxu)Q1qYOQ9{+W(V#}Yg_vy8B~tQ2rNYggC! zVPPy7<})gUBa_pV(adUmZ~&u3QF*%ewVSSd+cmGQjH=qgc(NYN1d{#nJcfvKS2Xph z@HHeCjN3!QDe_|E6uB}iB}^BUAN<5A^g7$O_dcOq*8A94F}P4&w-hl8wK(3sN<cG= zz4cD%&4box2A6PC3HcKWUDfqjc})EiZG=o8%h=^^6z>Q~id+8|WKVAv5GsQn(AEA+ zESO9nFY#1v2ug>`yxr~rS4k)Y%X1eJ`sMCN6(GJYD0tZvF;5DWDf;0J(|8#SC!!i2 zUuyr=R(%jv7-1->W_DP!GnvVh-<LDu8{3PW)<-wiZ`pXuNHDe6+}G;lQ<^W^uI2NM zaA4!05lW?Oe<WzPs)qhVI8v$_+F&9bir?WkaCqsjl#>ZmTmKSf#*S~v6WWzhQ?q7& zDg-inJlnuKYykJ87+NV`aA>7HL9Ex}f4=AHnRGxuf8*qUZ59Xf!^=sOK-K(f<{S70 zr0i_FF*yL_)eU3u;aqWI(8<U9i|4a((y|2Ra)U7=5d$~x#U4HqC&*V87IZVc<f1Ex z#-Cn+4M*veD?q7?{QXx>6LRpW*L~@fs-EuEeahPurS~V-T02fZbM}e<#p1T7)ZMG! zMY;3zywEV=gI*S|9g_?wiZ)G3676GH*o=?$w*UEUuYUDye~yRutn$Uxkox1tAMf4w zGCNa%SocBC&g8<hFy(<h)#;|mhJvNRtPN>k>!znQGfg(yE9O?_l)W$f>I>VZjp4@h zwhd#A##lpH-nKci&0gF#oSIE(xysyJ1*_9ty=PO8epabG%3tr<l@+BjdlE^~rIn|k zl?Sn2I`F1_!$GC23FZ|aO>vX3lv%BnmHn4re)+4fT+ed-mB*B;U-KI0taJ2e;njuu zDP^hmY2|yp?+7L4n_)e3_N?srB=->f+b6U%bNU*#XTpu?ci(i_*Y2iku`X`3$ze#o zHk>qvLD<u3Z3b*N$$nFPq4yilK77|*tJ*!!_U^pv^~%l9sc*RJx$?8mmY?l)|Kiza z&wlygJ7#w%(Usno-FH0vZRL@b-Vc>iUw!cW($e_{SNEL$!TIle=ll<p(3vymcplmc zZ2jX}1a5p7E_^pu+B5ixeGpW-XWWs;oDa1Wo=a3`UE|_dlnGtr7oPw)2oC_=ky+jq zX#mls4>711ml3g}xpI!L4RBrxo4O&)fQs6p>uY=Lf+5$+<(%j%GaT23vlxG6q<2v3 z%OLeeIaCZWj-6$p=<@G|6AK0xWs)=b!pP^DV5%itsH6NgI@yuUYTiiteLiz=CO7n$ zL0ChhV+V|A{!YXgu-o2E_HZ*jG}d(_nJ!xV=9TOHbtSjGRz>_a4jpQ2CdGF;mtH*{ z+<#3frFH80Y&cyB6N{q07l+gl<ixPkSlU0Js*&95djF^dEWa<d%ZiL#I!&yx8p}1e zT=yC!khxr~UX?<f>n9o~YW#+xH>^q~VZ>*ly^PV>S^r?~C*;c}6fF>l7T*HOx}na_ zmbHk_JbHb-UbQL%*@#mcNjQ(hvm<jWd6F;$>Q-dk&N;uT_;tIoVMh{$X5npqGJ2C) zp;)A3-9K1JW2UuoiSREd`9folVN1gA*pB8TQH%>@z-r!@jo_u0NRvw^7_{n#LjGv~ zt*V}z$ZMpTMqi#T=889kBZEsxi#O_TZab7W31HVFiD<n0b`&Mx>+Rm%-1P=cX$Bja zBx#?y(6Dyx7UY4x7d;tpn!fhi^fE`FgNcZdIhmjdTI@n^phMtwk3{5lD!BbA(M=68 zMT<U*^Syp&!psV<LZl7MsgdNevTKt|gWZ6jg#JRTTHYj%r3&`e#Whe`CA1ub*oc`4 zK4u7>h&8!|7_@%Q-XZNqAJ&mj@AE$JJr^6XrC59=2Is1WCap!M(aO$8=1A<OZ&Wss z6Sj!@eIW0K#n>t!f|}XT5q5x2)X68Jrc!#KLf&6Ie+k@$`e(yLlZSlDbBfmcJlY$d zZ&gwMUDyA;*YiE^Zmjxz&-Y$bwyNWpO$=@nGV~SLQqjxv390HQEx?;31C6cfyB+)E z=-+ifl*#^PES$yals%a>qI&6E&M*qbkyG@ClyN5|#FwJ>jLl66eOZVqhcr`P)QiN? z=vAZI&{=J|t2-eZZf@8ok>hQ0@@?yTH`yP5z3(^3S@c`9rnDt3DXs7`AM&+|BAF2_ z3qI4*mT40v1<~ebzeB^WMH3<c_bFCaX<a^Ep`w4K$wXqg(CTheb2jC+x=GBAv^OL} zcBh2HjkTwfHNI`uK{095lo6-*F>}y}E=FQYaXzdNZ$V4c=3{fgnE@Od<D28Uvd>Oy z<=$_;-u-*y8(;r=<yF0D9bneUrY}i06jXi&DNdNa#h7CSN&yn3sEgtC81g7kFS@OP zU0SsU#mU4BHpn&i>-Ttn>buZ0SZZoNB;-OPdacPwyIUtg2oYFP0H3{a5{s{7cVt(J zE7_IKUcGp>U>)9zRmTW5ZL1zK9D~-Q$;ktBm!7*p!t!(-Ji08#9Yhr(Kz3l^(rx7_ zVA-7=JD%CG<9Ak8{&ZzUY%9!7GujYbS09cvu3%?hAfO$PmxMNZ43|gxMGe@&0fb19 z4l<>HE%58w(>?b|d~jssPIVyMF84(%iv7T|@v{HVLnblZz+lveL-BmXHvrUTCD6%~ ziTCyE>3|W4I{M^_ZKeU|Bquq!IQ?16KfDiRq8Yj*Dh8|IT=kNQT2cD@H(#=Jkhq9g zC}o_O%sT@ntrFDmt`wu)aK<073%FSJPwcG3&6A5oydwrD65W7mMYKt4U@+oWgTc&z z5r!aV-}hD+`*3LPV5d!la6DT>%JhRL7M=n*&_@_1n41BIM;2b^-7h|-Jjt9MbCDRN zUv}cW9oR-pOB(88HxD_gW#zhX(YV4Iv=Z|Z4w>Bj6Fys?Ik2qj>yK>u6W{g9eb=k% zfHm9u*Lv^mwGIBM>gbGrobe_!^BeFc&%;3ox8FzZSaZmy40T7acEw2lM25K`N%*Gi zhoRDM2EpSw<-hfQdO}fFKc^VS%D`J_l}md+K2e%hpI`l(b9bqgbLV>BI;R%cP{d(Y z?(u~BSG>oSeJ7yIc)|SN#^leAQGx15>id8E3b}?RtjSvn?zJ*vQO9op@kwZeXt@}s z9*A7ElT-qi{On(T^UwS#I|89lV0Al7<@&8*!o)$_&5tYN`Jx8QloDQ6k~sya;dQEl ztsuvLfqdYyED#!<i;ufIWYarT3|TLH#sVc@+hT=Qzeob7(9TpmL)>#bwG+CUD>~6q zDeAZ~%0JN-e@#oYiElV4b%j2hNcrwiDxNm9l8)#+e8I0+hJ<HEfOlbCSQQys!X6C^ zQoZYLGOMIKx3@A{t`7VTg^}u7HA}u0x*Hit2C7e^>atqgteotmx;MwS#VhZsD4$He zcQo|Ow%%WEi*Hl5R7aB0t8A+{6%N{VME8}Ch5gmSP$oZ?xFiT}M<z7b`w<EeGdxX@ zr{+rlTjdK)g*$=LK+xA8Lyecpsf4W?<I02B?Tf_8_|!3C$<aF+RzaQi4XKX}o*Ufs z(@n#@f7_PqJ){htyI$W`OqN6Gv@aBh5%sPN;6Xlt7ye+(D(b;_G@zMddOV~A*8%xx zS+)1na<ADt41PC0^gE9EL!Clo?DF*o#;js%Q|G}|Me~J80FXT<b0B@wm3MznyG6^m zW1z@P1Ma7m5SJ?#$N)~!mC_YKB&w2DrlTE9n7x0v`yA$x=T`p~gSx5p{^EO#J0+uq zzQb?tFZ7_6Qk@rms=P@#9*iof7e3by!=*$5+Ln|O4ZiT#p$M6NtT6W%ndYBq_rD?@ zN01w)=+$&;JkZb`z_uW3YonVstvd7b%FO(H?`ieOd@nRVuih#tDds)Bj{293FE9Uf zoL+-YC$7noxUE{uM_g>}%vrTo`}L>PXO+SK)O$qv+FN>!JI^TRf2a3#WlJ4l;wj}v zy=dvX%6HY(%$+KZ%a}A7x4%NU$-X>Rkxj&DiSD_am_}gWBko%yl@f+o>$~86?4#ce z;>2W%{X~uo{p=1OzDId_DaxIV_%jb(*n}-|x0Q+loWom;nHz5JE<D-$;pdNB-c`20 z@Wc}@Jki^v<VH{=<N*j(YB^=(6`Q>;D*+p?0*i%0<P_;~NXW{DR_uNA<96%t&M%Ih zT0HyMV`ul?S5X?hZ$9+wLk~Txc1A;u1$C}rjLz#XUvH|YOfWRUbj4q`N_&YO&GT6l ziYa;J`nV&|Wq1HoYtsZuRXb6=SS7ERI1He`jHd++tm6~ouGtY2;+oAxy))K=(+gGF z{lVadm0J&8I`-6yeXf(6a{OC6E~%EsF1_}amFYy{sPd2h^4M#xy7c4*r!+cJOs3zk z^R@RWXUC5h3h^zso+uXgzQ6a)d%xd%u-8+LD}B!&KfZEr@9PgQk5B#m-H-if+?d*T z!-;DBj>Y+X{^m2TF82v_KW$q@9-U?qmAR9gXJrwpcuE?ODON-yiA`kzs^Ma4usAV1 zT+X*Ybqd{jt}s^VAJ9@tr93rM$fZ*gV*|PT$fd`R03?+=|AXEUwRIbSp@q)=nVDQ> z%fg>Nc}I2Bn-9GDGwJbZw2)AL`NB-O>HkEFC|LlXJaFJi_0ES*KBWHA7Y-cwf|ftL zy8np!iDSJH<<F0;UUr@OD2hia9}PoDT_i6BQfGohcHLMlmL6{Z-O`P{x4!p%4=eYp zv0od1`d;PU=IW<z`NzlHYtT>pSpAgxY~S5(>v>A6q;Ww&5O&Zr>(a-YE@^amL_E@j z`y-?tGCB`+fb_abYj%OA;_i0IZMW&2NFA=p9L+W6lsz7`wUx;dCtL{rFqN&z431d_ z5>2~0yg|1HL-7H$&{m*!#pvAnk@|veB_vEqH)2*Cn7R#>W*vl)0N^=+pb2;k;%C%B zMlva4V(9WpB;V1HvaRag(K%(Nes!LtqhQoPr!C)x;bAh7`^e-Hvx0*G^?#U!q}f<# zpxhhI4UEEa>ZC`G<|1~olE^6ou{eh9qy>~vC;(QufiiM5Th6P>!q}C=WIC2ect81+ zYg-$elv4kOjB1P(!%isTR1#Swo2c0Vk{f0lVk1&V2L@`J)?GCmv7%UeAi|=gGu0>6 zFB4%44^l<APYdq{M2^gJRI@11x;0n&qPJ3oo<kxtmh6{iP-qt52Wsl?^!_kh4KG}d z2W!yu?c^t_M55~eF)~&_Um-o`I>0#bdh+@8uwm~0@3yV9xI&p?<*iD~R=C)QYfi!5 z>BDt-T_hR}744PJqkfGxqA^7ZAR6oQ2)&`9$nLLkZSRk`cFL~Up04rR>hG#Q#0ohM zbvPpa1T;0;Um_$VKlpluhyb)6?bf(jj=826sH9kqU$H?n(PWc>S)FV$B*m$4lFkR^ z<a)O=HN{R_u5q0Ne@hX{!R2$;cI`yMR2wTdE-c)*(ojthhPv0DTOMCn7?<xgcfRGI zeE*kj+;QsE9Y~FSp_75PUUSVoz}r}g-}hh2{h3N7(_dD97%Pruj4N-wtr8m^OeP11 zW0l)(z0$~x7Gu50X3E>VZhW)ys+{8t<P*+7@051wr5eFtYG=u)wc9mgsRMwX@xBa1 zqFjc-q$*x~p)am}PJOcPcE;=4Fq5`+sUk`l<_$J44jmbdHYyy{r)z_$+TsMM3dB5j zg(dapl`u%3pl+p#s2^bjU-mJBL@I<ZUXuD75FgzB%8}53ZiZ2hL`bValKX%!r1~5y zKz7)mKW>=mQ2zk&w^kuIczu0vv{cLX=U<ggOa+UP$>dbVDi>3ZJ)FIMDBE8dtk<V^ zu8Wqf<W@`lq+Kb+o6%S;m`Ih9&1i13PcJ26YACr$Q;3&ogm4t}4cLR`Kz2_tnTlE? zPGTZbK{N}Seyck&xVYu=a=_}~v<Qoo4_AV@e5mNeNjePTp)a@+36+-@=jzi<Qwy81 z00Bu}|65fbQ2#sH#u4W1+xy-_rI*H4(on$`7U+ifV8t%<M?9-J;P%6D6<7)BM(8SF z#yIfOHdiDm;-ww`e@;+VE<JN~t9A96OV@teH(uH4TzO-A?N{~_D;-$dXF<Kz&j0_i zU-?L;-YOP5^;D|fDHb~Q3`y$?quETO5SQO9K_$IYa?V`<%NTdDKN@Afw<YI4AQwJ> zo4Ef0Iax09wxm$+APKXKmkzpHa!}d;9-+@qc=^+PgV-Bx>^sdYOZCmU+C?aUjDLD; zj!sL>wxw~rW0OoQ7mueI?>~EvoOYoZx%y%Op3AXI50vrwlY5$`9`0OrsNFtvStqQU z%{?dQWiM&Rb>*c4Y^d7Wv6uf|ar*QX@&&TG(wNE_ghA%W0p#SOtfrcUR3#Vvax_~> zrKWNyf=~v;vrZ`FWN}9opebjHQ?k*gquHtx%G#lf?QjK!u|=99+o@)w|0@UBeJ<sQ zjEK0~S5iN#K7LVuEqp<`TkD$XuCL}M+N*&En@o4x<}>g7>ZWIY`K!vctbFyIti5yN zGk?5M*>caBJD<P%w)6JgXU^Yw=APT$dv<jEjyuNTIK1|lr~G%Je}66G;s0VpxTM1) z8p5o)p@@)-X=xajlz4RK!g3V-Aucne@+g{%DoZg-zw#p_$D5WQNfg8lTsDE&FL(yW z^r-d)l2oPL-MiMXfWC~mn6CXt&!zkii<AQ<A7<<rcyWAU!H*8)nH?GW8S-$1!UNH0 z+V789YB&@EDHv~(Fu-R1Kspi~2!{qDk#x`^51f(9;b{>Ll=n}^Ckw@9G_x+18nhf- zOEqMfP1g<;hmuYZ51X;sS};P~%OE<8a5xztMtrDv?WWVDId`8R3N*U+RPmtFwJgqx z;FrY;p{HcXwyaMSwl{Lqsnl@9CX;o90C`C_=l<~wC~Bf1t3Mp6z+>hbD}%~lF5l_b z>%*v5e6jwZ1wwnKo6ij@z1K(W=zMcvA|{WCzE~tGI<QdbM!q=@u=dw~-UHD7!e2yb z|KE4<JJzP+REN=IR7oy9S?w^^CO!Gs>j|(GFmY?m2rQl_@5oX{U21LqR<2z>f4Dom zX@5IxZCe-4X0q8_dQ%h%K6{K*G-h~WDoN!wQd1K+KF1QrHduBr+}gisxO@2gviezB z&fd6xbBrb%PDN)6$(XK|>bi-<Z!R9qHRI+~g`@-gmDI|VnHbL>+w2Pz`^#-V`uF(e zt8Sc?ClGn9FQ|T6{R5ZoFZR8+?+bm;dUWR^$@saHKk*;+xSul;7yt}|QB4Mb`>8P= z{?CU&G6i(F%e-6|29zN&!qqYy4h8-nj)ZHL-*j!ad+nQ+*M4WNUl|=;xqfEtcO$Hw zxWx;T2NV>4n&rFFw&{5RpDzgZg3kavo!AFF&4}B=#~0iN1w$w(+vE&3n16#lpE$Bd z1n>`4-B^Dh9gSxEp;Ry!@u90zly?p?xks!Z7?)-;5=r>{5kkOB!rcrrNM4j^B-$L@ zz@xZ-ejl0Cyod6II)~0LFP}fuS^HH_G**tx%p6^AG?tIf%p6&1^u9r41%Xr{ft!NS z#37lV{n3gO&4et*Hk&RAtT=q2^e4M1_r-ZRl!-b}7u$|XuxcDNEgt_Af#OMW5vWgs zOICyh;(Yf~RctpYJ5wYi>iEyQ=LPy{s$WpQgpOnj*1W?|XJKYFfB}YG9t+}!t1OsL z;{IW>Hr1KLXA0pd(WQehz|u{G$d`7)oSB+%a2?Tcfy(1jT}`;+YOT=Pw(hqgQFV91 zvXetuAXX;cxMgDB_D%f&(hV#E1dxfo`LeE^u{HaW?7$@v)$Wg;FWceo-ISTm7B=8D z02p{vQ9_Xu^@Z^);M+H}uG_OYr93mVT#FYc;;C9HQyrU1jc%yu3Q9Sp_vY{YDg-4@ zc!Rfn*Xh#w^knZ33CJLS5-CW&6o^{`8>_viQ=4}kn4Gv0(OL9IhAX!WfT7}P0_e>X zxJ#s&OVC>jka>&>U>D*dLEXfl%lu77`82(qlcnYufy%w>uT<4e<*Kb)FCPLtzH$A1 z`}Qpk;Jo$rdugZjn>$Kp^9*afo2RFfgI?1OCe?-6J@wpDwfFwYe0EedMi1X#DXBBr zkfU1neq(lTqXUE)v3PrDr>3TG;2j;EE2Nlj-_>`S@|1cP{ySZ;x_`az@6Z~F8gWfZ zUE`hcX!$v_VM6SnGG~fr9+HSg`ekCWH;T&$x9<GM+qo(scb4<^dfYk2GtO`q-kB^f z9Fe*MXoZ=|mGkD&uSo3)#*(|&l?`o#0xSYA$>#{|!u($-#4Acpw=e9OZaT?#gJ+Q# z4rr~?Y@Q)$_>w!3nf+lP666E?V8SFk=9!ce2yDQbqUr<jNq>O^T`*5!3D^jgZ6oS4 zK=X_wO@g+d1o-6)XX<!HORfu?#OO$x{M*=Ep)9261mu$@Gx1`@FByWO8H{NiOg2E2 zLGOVtBc~VAKUNE<lz3SC*x<21_f*iS0x%0@3L<<58R`t@0%1AYJJUm^FB<i|^}u_U z{5+8o@Fnp1vh4nnl@Erp{y;GjnQ)vzO}UZmMOu<z9!QXX7|&_&_B6aVlKx-<nH;^s zXg5A;g@_`1w{mFn4S;cgJu42GJPeU$c&$}cels>%v`ny3Avu;FiKBS{uoeJdLZ~dn zYi$(#Qi&M~T0r!LDTG(``vu(5NLGSI%m@Ixg1=orEhUpB6zpIcL3T97yp+aJWvX`V zfNvvL=`tRQ`M%9aF|Q(X&ufYD?(4eZ?nOal=#`tU)F|o$Aw-5rU!d^^(a(wM22cti zF6P>pqhpt+U%ugs;gKaCTir=X8GNB=I3YS6VUw>%EH0NbnTq<KWhq;|?^or;{c0_{ zp)j~1Ths72SJdj<3av(Nxb1T<xS7SmVe4Pe&{zT64)orrs6Z*a6)nr^Km47PqHL7% zzF!y}Eqo_8S}%O(r8U)9qUs^yOJYM<f|%3#OSz+S5PLrJM{=hLdm;Q@ZsYx)?wyrf zJj&g@#WPac8E+}|Dso95e9%`}^W%?#51=yCY7c`##~0M-A(X`fZoKygdv8&Gp?A$o z>&hARM|GS}iZi`?epFYoy>HLB*cN}Lo>qTK97zmaULMby5y6OWlT<dM4UyqD4VL{- zvI`RKu=&bmqN}k-mTG7q58ruo>VUGP_ZiTbHygdr>HU7C8|^)9F2<C2vG-5W_x68k z>Qnt+%5T^(JNU*&l%2YI@7tB^hx_vz3a`(XH<Sy%T-du|Z~l?&W7CiIzc=3dNeTGu z%Y3~rgp@g$BNdE>KU44LS*ye*^hv@XI!RTU79NCd;wlm#LC`A+K;i>~u3>I*j|yp2 z%gU8n<)AZhMJBzq+PWHCnZ#(ee^aeCF+Q=bKC-?)Pr{%Zm1D_%y>Lm=$@xkPNoCiL z9cpX9H&P~X>-fo=k5wy|-~~6N%vZ)P)waG$8SCFtMrD@TQqoFjNWeIF@osHOTcJh^ z<Osi{@20-T`<_+8%C*Y-Ra^ZFp4}-;^4PVeJ9&ui183SYx}xMXF|#hpAv3YZV##iH znxifaWCET_O^Sa0BAJxQM?fW~+v55zMBO8qGGeF$*tJP_FPz>a>>9PTHaAc)qL8~N zFA>7Drsebs<q&bSlMF_W7JGYTJ`r9(ivQUgQuV}t$h&zy!>|XN@M-5XPu{xlXs&uy zScfEU!(=3@-bc(fUgNpT3+1~Us+V5^P>Yu)jF)^u*el^pSP+xuB+LkpE`@ell;B<{ zMQC1E5Hq82!QvVsWl2q~Rf1GV!kf}srSgUI-Q(f{Ew3)G*Gyh~1M2pr%2}%r8o~RB zlQkdrBA!DM;Ba%IAursPnng`$w!J!YPo|<S%BC;Pre2-kt>U(&w_j{7(#^Rmjm!$A z&Ee(XR=IcJLS?R9wdNZyjpue7X<_d}AG^4|wj!_Vp60rLzkIJdq<9DSb$EF1ZOh8N zA{#Q7h#Fyi06n6m8MiVK5~aj$l+v1hnCTNw0}wTQTA9d4LRwLLi`O=n;mBy2A<ZY@ zt<aHQ#<$5d)5Nnf8B6puSjbkA*vk;Pa1ad;jhS3Q<nZ}}MmPnhC+cav_f2L#A5qnQ zix6#e+r%TV8%?RrJdDW7mQSq>PCBt7nGIDZkPgLanH-u_Rqf9thXVd|EP@;t$%mcE zf~IT>6dj5~ppd(1YB%77tQf)9%#IWXa2SesqzycH5sAS9#CL&^9kh^Wu(=o793r6= zqc@pq<@04THW1Qs*|a7_GVO-Q2ShkFoCQ}S#%KW|VLkTVkO1Pr+)aLby|_CG9+A!Q zPwP*V2L`A%yn?v@Xs*3ykXmJxDw27hAPmZex#7M207zTDT&5n4r2Gk7>`9(V0#cw% zl%VyU!DcL!i-(3Y{p%8Hz%)ZX!Tc9d2d<hol9uy6tovYwj0)`_Opu80v>85S*e_gJ zOp8a-f_q67@ox|S?bzfNH6w;U5wsGfMR0XM7%QnMiHo;Pf5M+Eks*m^N1ma%r~x0f z2InDvFdOkmC=)6YW9!EO*2$Q)xrBO%?!xo&#UC07U_>Atw-2`DBeSdups)D2ARVa& zi2ne!$$ykLvn)U27=IS33*b-T$rnfo184?OsdZqdZ34vkGsu-!h}xuii?fXoD3Tz* zu0Y3YKf_cG5R2^R>X3U*6tH!KJ2^RI*c9G!-0Z0;L8@^Q*yESQ<KTw{1_`Ld21+*| zx>oOq$K_?@xz%wIVC6-Gq2;*|{SfV<7;Shy3g#*)AD+^n1U-{ILU^`6YE|MS=tOE2 zFR#>0B}X<?i<$}HBqSUsy#_Zg5hekWmm?M$L6T2~bfpxnq#VGIReuqMt8I~{l0+t% zqND)lc{w>W+Mt%n^uUwoYP@KtDsi+!Qjfe0YN`x!t3?hT1H}?C5>W>!wOLspc7mW4 zyZ5I&M3m=2>XlcN7v*hvL;TsLPS=`^RnltmY;o|P-81Ao_qf!(AKBP;EZF&YF`g6k zRLatGnM^Yk&1O>6s4FK^F7@k>w=a&!EX^UhPae}kdzoqFQu9ULfa0RK1WEl;u+)!; z<kUMWQ84;k!CeP|2;PHmy}ms1^Y1dJSBSRlFsr|z@7}%#n9H$h0IOjLFcp?oXz#EK zZ{g0XOhItERgk+Sy}=l2ASNlo4!f9|nF@>)E>f-9aI?CeIkq;Vpvr=hGHJ-XfpUu_ zNgLdqCb3O!dK)46wKO}0_6lJZ8ZR@95b|afAip_62FHw${s*9vju~P7ZOXge5l)GG zp=!I0K)~pIVEGHdTw?PFf79ge(AN1eVlqtTr7lX8KLNBBR50()8~IAA6)Ri{<WM%} z4^+^2hQon?V-j9roAh2nt8FumT99lZwmnWZS>^T{jj+~F)%G6cL4cev{%I)Fhy-Ii z5^a9i44g}DYy`~1hW}je8yR9>7m!Vc>D#}h7y}qcgt7>M5lM=rkebnJa?P`bJ~_XT zaQ0lehyxX%1(9Pl@Eh<~G3zFB3=gtiPbSc1zhQ_r6TNg4o!aMETjOy1VlGFE6BDT> zaOs4*UE3q;%KLiPsqJ6<#nrE<pI%*3;=LazkIGU#w|LhgpWb(6@%Qt0%=4jmL6PhG zSMBS{Um%Njh&>fa=S<%(_I(H~_3!t64;$HfVBTtzOquHyoWEw2^}^vyqGJ(z;3Tci z-t{W2oR;%ACc8}ztXI0SU@sSQoD~k4O;I>ZieHh>H7nA~nBXr2flW83U=c;+dBwr* zdZk$^b2=qS$?7ckpahR&akT`Z-g#L$QV4zpqS%3LgeBtcXu;)Kg(2ke;SSt4LTS#i zzX#wVLAJ;UlaP_9B*>`kCkAj`JQXcQt(fkQ`CmT@@iA(46sM|SAknl)WCPSjV%k*R z-JEQ#n{2k$4Gz}_lzg?CSFU9iV!8;JWeFg}KM*d$Oo=q>`|!j<Yi@deu2Y=q<SNa9 zfkN-s6}6vC_KJzWp6VyVrIKm&Gc`p_Hf_K1Bx;l+Rg`Es+s;C&vnLz3;lwo_az>rS zKV<(xCeumb&$TyxL{*Oz_k~ie`sh@v-e^AFs5Ywg(b2k)1`&q+Px<{Myj1H)2<K9v z8UD^xeW5coKKs;Yt5t0@TaNQdXEc=>b-3$+ahX<9PJ@l{1E_O6dg8~1`ZSr7{u^1| zzuNa_ec$Z+R^Q)3Pg<omU7}TzPZQg5t1Qb>o91)(fD}aomWQh)(^qP8WK!(RB^qfG zv7%{AmK<5KhYuw=?lPxLCefbA_LR4rY^LNh1JRgD(rIAn-IZx~=QJ@x!axsCaf=R} zb+Sdj>P&JXD;;+y`<oqk)+u@7Ic2ilY{{ChhIdiTtaXzSr9G%7*<=Tq0h1GIn^=X< zxnug`qWAmcu<rf-#qFQBvKdV<A7%3^5BA=F{P;~b72a~w4?ewpd-p9rxas#_T2;Ow z6OH%xb;J1j+PeI{?2xK{T_&TSJ^Z`N{5`dQ`Jwynm^wOD*?<4T%lr2)KYYKpb>BnF z?ws&9jQbyeop~i*0(ao${FT1{p&*kd7-*A76?lxh4gj$0F2{|(In4=wzcy^8M%#D? z46{dE#UyNQZI19l>7<YglgKN^bJ{yq+Em0goL4$xf}|0=vb_7U`HJ(T0j1S1mf7V& zUv^iQcyz#nlHTA^1GFtXA`aR@Q))x51Sz-SuuN^>MYKv|$|wS;-15Tw<~<c|-4`DH zvsXy17ekSFZL~iLW`X7>8&qXv>#mVf)g|>G#Cd61RVU;;7Hg}$cZXxKuzX1bG7dkg z^$V&J7%plIusb<dspL{aT$Ptg-{fS_HOm??4T?IDE0)I-31+20IBCavNoWUFGl~Ik z8~rkAyhW{-X*hn|8-<m<LmyR1bCK(Gu;Qy~9m3Gsw|Cr8&+9j+>VX4N^p9n61Do!u z0rw-}-qD@1<9>pmVJ9lOaf0VO;|HYepzPmKtz=wQ^Fus+Xpii2iy{5^%xvyn{|@-0 zToI+O-#@3S&?(-q$rFHISufUc<OlCob$t!LrG7^J5jy<4nchTIjUEI#-jNWRsV?57 zI38AO!!RUd+`<*nWlGrBq0K#qTe%1V&Mts7r_u~`@xztV%V<pKtL~ZZ@TY4CKjL*? zSN0VjO4t%w`l8faRt`aBuL}Zn6po^8Tv3VT8xl#V_iaSJ-nV6SS8>><4Qsx}NH{yN z!;TS-IAjlnS+LssE2#F>*RI#KD(pdZ{rJe>*10W98!z1|%2N$s2cKD6H<c-FSzOqD zY00Orm+WJrFKsBwBh<ID6S?dWTJRCHqP>r^XI*R{p=?7U(t4j7YfAE)TvXXf2Ioio z{zn42Nblp(T;LJi_uVB5*R@<Bow1XKQEoOSCtJdPP(~p=5RRhWEKf`Tb|^gHx3p)J zAE9x-mKpwIeNU5XW0!IR<DJ>JhGGSBj9!7sl);b^a|%igSJO%Jut^#i@y$R*!Xb!f zTWENx>_C~haS2plLioKQB#kM2oy$GeFvCpZLN%c<6EGGhyIhYsW->|3%NY}lKhY>i z;og;u-KN{jaz2>n(mS{h_m-y`mg_xamxx?S8+(uG8<pI=GHkmLdLDC9ewljOHKrev z`9)?5RB4<}d~j1jVHox9oumZVS?(m-DA9CaY;-$Ra|0<B;B`ET@=}LlsxX?;p<sJo z(V=QnO`fkQGZwYkq;6Z2Of1vg|D-9Gx-)>PY!ShfF+RdDSL4Des!B|x%DTv;%FVJz zPKY52bFRwb!pew2&If#h-48!Mb&t|<E}W*TBXZ>yAqPnf?|lBaPcOSxz{Qfbs5ily zqVtBJ=t@*k7TpiAQZdppD*?rlkk*(O4HtBiFQ+ZY70Ix|aV3C4*#uo4yLg06c7a?S zG|Xtkjz#{KJY_F^4wG^RQlP6R)Qpa7t0M~{u(6U+PrQRSI8LaD9N$gHg?v=``J$?) zo|f335TJ)47TC!MZr9a%oyAV?L|7h|-aucaNI5~xtkiW~j(aES<aU-~I9%PKRx0Wa z5tNpp(!dmPiC^8px1#b{TW#5X44NX~!F}OGASc2(xq_dcJYfJ>Bh&)c<k{d%obkSd zPFv7Fh!i5Iv&%OIj4A;+fPQq<yH|fl-LYYHlluAI-(T^%ZD+4qUQ+LueY2|z>gOJR z_U^l%eeZiE-$&nvwP)2DTG$M^eH(o*P+k+yGnw@mAq*p!sj9bGYj&_c!39tH=JD_l z)!rn86YdFbUsxMtG}cKcC~F)vn*?ll`(?|KqcG#{X@bcj*SlskSsGG;E5Lb$a5Jww zQ`WGkdImR^;vgt{JiVseT&^g<_`~d{813j9UAx}obW<{5ayH}M-QXx2&6I4rXH7Oq zOETGohm$KQR{cmQjK4)VcW0!fX6gyMQuG;HluYj$rR)!wk(jN$L5UP1QB-w-IQh94 zLH$4mDUI>yURArqXN;LjHC&!Z=6BgfHta;phG7%3uLWVsgRwfAoFqUwWQC`R?S!T! z)G228BS|Y=EQi4wLQ`jkvx7=Fn%a^v!geAJ>T*~I^W5)GX-3c*?$@e?OS-x8NJG!X zi<*^APg<%H%w*D5G9K5`Rexcpf3WsvTk^Rxi36Xl44VEy3lyF(z${9$p=ptUq%wtq z%`|r;2mOiq^fXd^y{TGh{n~uEc-w{?a1yagX1d22qwAJYR{`8OZ|K_PiZVE@tMlSl z>ksTf6P;+cZE)96EvTY-wDiD0D4w)4nwpx)`FGlQgbWN!ULM1+4OEext83a&CN#Q# zgJBN1;Q;jEzP`J(e^7T20k;cF`)ycfpXmEi-~a4;k(r|D<S%$hKsIS~nY-zHu9nr) zzPnSd*B9`Lr3-kBxO*OroR?%zaBbunLVm3w_5);!o_n$?uvX<EcDNb_*Dsk9%gpQ2 zTi4XwFE6ou(IL}QG03qsXI(d}E0rF8<)u6;56#E)%JCH96z;x_3zQ|VQ!BSF9+64M z)l+X&%%7SDu0pA3x*SVJ@p%l#tJzpOEY29vKG3qVqXUUtJ%A)XH5?8n;t{`{rtOpo z^h?ScE0w?FyiFTf#K!tz9Pfbmr$#mk@sF$<$}7D`lEXGgRVWb&5(`GMiEt>H4237~ zmG+x~P>_VXal@{K7o4F$YIHhS4(3KpYkV{~8d5fl&I0vFIN4+|(ugiBBtxx=UAMc* zI$(?-{-sD%8U$z<4^%>LYuR8a^sSf{P;oRdQi?tZ@MA(<+1WV{oCg{}JDTd`qA45Q zAzLCkl9my=2{i9i(H;*~TBIs~AfiB&^bo3YLapRxa&S;8Ix$gOLOSIHp`ofeV=zmU zKp3+fan*z0q);;Ntu&on+{U&@>2jSq>MuCs2LO|>8o5y@wW^O=t-2MBr&7_}sBA}X zn=ef<c`#iR9kMJqm1szi&}|YvWvihq2qz@nQ|~?r-)W21P%VtxPU-Z0NUrERUVO3d zzi5B0Ch^;^;vszv{?WezH}uDf1;Ogj$CKqMffJrWN_rG*0bNyaM2rjUq~OGM>A*EY zHA$Kq5uYq<cET6Ijpp#ScIoX}|L;!2hzc!*S4k%?IFq{rV!E3|gfTIkk#$ex4L54a zGl#8d&Mpj#mqvi+B;oaahK$5WxCn7x{F&<_==O0Ln>=Xk;t+tr?jR_8&n6!26FmOK z;mL?=quPT57k?-zrp!=exT74QJlCj1kTKa6c@#bnX>hH$2UZ=Dp`Oxk`3dC;s4xsG zpNe+VY8NeUjQ7=}5noh)RaY4p_>~B>j4A@W6H2WneEA_XBG~35B!^P~GxVj5e!o9~ zSpvff>76z8osnvk2z?YNew+s|4gkh4=8-@Ojk%@VlrB*g?gRr)Y%GHOq{U-6Liw|1 z0qlJafJG{n1;{G~2$&)qq$1|0qy1KYmZVC9SZk2W!a<|pN6&9qp;WlA4i74>#2K3$ zSP9FFgvi!{;y)0B-s2@<CK+j~|A68=j)#O238sA+1UIae->=j6tY#5SbCjV#-+#Wo zmk3w`UAIKtsfY2;%eBzgI_UK2v?!2S>Q3B<8z7@Xw#APIP5T*!0IZK|6M(BZW9T1R zSdd*XB~Eo_p^-v2j((ksb178VXxdY5%2IzNlWSs~=hOx_MhDN0(38uxh-Zv#(H(P0 z4~-Ubb<tD1YIF`WxZue2xP$iDe=Lp*C%HQqy5v=rqw#16`vXR(rFzsKm4^qsh8bCJ zmUb@4*b;r^quSThy2}X-c(!=7lMEI3A%00@#FzMJv*rffczZ}i$6h(^>NI2DRGxdG zp~SlFTc0H-^Gz&&q1)}YPb$m3^z^iH*N0|il;sbd{LqKKdE%rxqeM@zs(yg2&WR3) zAANm)sC`w{`-(`J`-o%wVBaVD{s0Zt-y!b|D#OYcJQX=l+wS;SGd{c17QGs66(d!o zNf;#Ac84<dQj{UC9d(nd;%2W=ozQq*Oy8zAnMu?r*?--^;kp8G`GqNIjhIYJbb$~N z#4VPd9aM%K^q~r!VILRCk_$Zm3L!ex4)TxpG;UTyw^*h&?}@w^9`_3Ok-gxQG!Nn( zcjrV3;gMxR_HHN7;7;GNhxyH&Z@m}EtMVS++bAEghfTB{#2ouIyh20Mj)r)w=yBzH zp!JF=jEvrlWJd7+Chkq(<hbg4->ItZs$Q!1s@|r%r?=_u>FJs2?pZY&&5TAPS&~Px zEX%UI30W4hF~+-%F~*q1gd`-Goe)C|ABO;OxVa>d1j2HIFZdGT03jsd5t2vlyGh9M z;F6mKQ0smFr+OqAc=wa{KKFf|-0rEaI_K1>Q|J88fBpSAJDCY`3cM8Xm63fL<C;JA z!#hr&eqFizZV&(<1wrv`1S}HMoZ97plL&)S+@1=A!2Y-4h;%!dDUj=!m5XPRW<^4# z5o$)qg8)~s|AZq^UvMm)!8}FKQ6eT>I@3P|lu5p51>EE5L@Y9wZ$yZe4K9XI-H#?- zN=B=E5+p}>qC(ilN@s*;;|Wfp=Eojox^YvIW+SWzreZ(*?)%@rzJ6w7gTDOD{eI{J z&*aZeFD*`wg;T%^<C4_~7+Dd~B7u}FF&KcURK@Q`;VTt4Kvn-tcP!_c#;$lJ!3XR& zKryUj69Fl}=Eu`uC60x$!$LXA1v^SCwn*;4Y(o;GaX$zf5%dwbeMRtm(lJl?3O*d0 z#f2FdO}7~QIe&)LD+t$OXVCQzSOmsoZ6Xxi-RV@^D*Ezie8utvU)MwNh`;F1CQ@SB zBCdgVhO<`)wiB>!e=eSM17aM;ysV5Cn51PB_g#@F$M!^vF+M6*bmU>y_c1(g_z70l zJpUz964g;jy!(lFw@!cP(Sw8b!|!?GJ%g6^rw1Q>`n2|^p5Kq5KcoKv6k&Dbghb+F z{D~PgE2B`@*=3On*h<8Gf@#URP=9BXk%-tvaN*Te?^~w&*pMsSp2x-_JSYyGvMj|G zffis))0@Sk#RHCe;>%w?o(`t`p@*(ZSBNnRl4Z^f5NPej+`1LmSJ7(Ol~>GNrs>nA znMNYCR9J2phm0il+5jGQ_{TLe#k_9RaiYOK{ws@kU9C;twpE(ewB0)%9@9S+AT!kX z_?N%jh-WpUN*IsUtCX+K?W)BxhMtYpX1DH+JF%1c`ovkp@?NDshW|S>)Y=i+RlVx6 z;#w?D4)9$Qvx{b6WB(2fH?6<BaTA^<TsU0rq3_d32RRZ2bMue%pT_O;H6w2r`MZ&S z)2`J{YcJLw)E?8`to<^10zRYt7seKvB<2<M;XppH3kwYkb^+P~CAjbr-y?=gPODE% z3_ToC0Doxw8zEgdW_lm>o;U+uvLZp=Z{Z-i9*;bHOJY()$BEb~KDHV9;h6GGD|}P; z`QI7K>CbZ8^n&{CQv#<>?_17nA7_X#r#T3ss&An>w8U5hl~!{mBj<S-7$m+SY8Q^- zeB?}8z8CtS>7+9Z2yG3&o9YL{q)yFyeP%LIoa3kpf^V43OggGdasfkmo^o3HBKQ%? zAGEnmPlbf1%m$#3L$$N#G>Cbjr&N*Xg;18MY9g*QnsNtzvjUje)}jfK7ox3inv=y~ zT#pCI5h<JkR29k4ill;ou7qs@Ey6LBFjf?dd^h9sr88Klg)EYB82e%<iN7eB&G7cX zI*C&x%tQd5OQX$1pg3t(>NDarxhI@#<T7(upK`O=Tq9|3h&RYgz0yMWFdkaCT>BMh zqZJO|6dK0C5D$PbER`7rDHXd|5DFZ~ghHcXcx?bA{BiK#!Q!wWx3F3S^kGuRhs1J0 zkn`Dj97^E(gQ?BssUwwEDYaNw(xw{Y)3fDIL7BslOcKPT0(e>k!C|*_komEn>BMTX z5CeWYuLZ&&^Rt&Ez@!GASo}47b_DT3P>0BLV?$gCB5PHTbaw1Zh7Km!vwWlBYeMz; z8GUQ+Jq6!f%nG{p8)LgiQ-+;dNaOa<Dgws1zu<kpr@8}O*l1zrQsv}Aqp>jGXe=(L z1Es=c8SncOrOkLOna=i-5x-N4IOrl~eWTjXg_h>ITbQReVo|?%Tv`##h-m|;e<(XV zBwh@-;fBmeC&CA&6i6CPb_0mIjE|9tAg);itVaBdFh00pOHV8;hTOa66Zy#eyb;L; zv#txescj(c=i~Etxe>cG)z(5gcWASc-v{;@svZVk7w=wX3?FRN;uFJp+>=6@NqD+u zixd@zi1><QJ30jXjbMAxED$v*TRXgM!|j&h6NS`P@}sp>GN%=j(K^Yn*gV)NWQ#`a zXNFZ15kxJ25J%z=FF*@%AA?PVyK-l`zyU5jObU`faDh$|*g(65iFm2&Hezg<jDgkA z+f&8R^3LGk&(gOReRHd`<}U_gjmi$(A4W5q_9s&ZE0uIAb+B4-Q-i<LCqwa+mW)Ow zwf|h}_iCE@da!bN(n(jU2UDqZ<r5QjICd~MT8u^xj^69<ug&?3w@RQKxzR@M!Y|?! zT%&NSiz9nSu2OiCSR+v#BaewCI>Y}LPmEtY{IP5BjF*%|H~oLxihgr#b@X6zs@Pgu zX)V=u<u2!V@K@Dc`2#6V?pSZ_sIHF6ajmt(D_R<StG1FmxP7^{D=){|%U)JXWT#$~ zoqG9r;%g7plDW>kxek9no$WkSPip;3PVu-SWNE|?^=kcx_~1V?@-1yd%L8I}RJ&Ju zgZ2yBQ`#rBKhXXh$-S-bKnFzR=1|;&x<S{5ap`?lHfWZf<Dmo+$axWzJ&sdt&fcN7 zFRTe+^SoNck_bUpJnzi*9yNy!kp?7!9a1c;F&Q95VqWpwAmt44cbuRXR3Co8Md#Lh zyiP(%RS8cu1qT65T?G{qnyMIkbvtQ66~s&^gj?)K9&fD}WYu+PK<G1h0!!X~$qI~U zFU-ZZImwfQJzl%X{b^H?bXRVtZcwYLZ9!xR)iLP}^7Hd}7tY8~$gQiYySQ)iJd7p} z=?VItyg;ux#dFYqX+}~xN=>AXCKa}MeeV=yM0K{!_{)9i{q}oO5`R-P2UJuN11;}V zHx;Xm_ZnsxcyZm4m*Cx7G-C3Q@-2c3qeGiYH75F6y1<1som=%Ccac%`%F~2cWQZ`y z8`)@mH3RD#sD@*(JMgitxGciFLU4R~7|s>q2q2OO*{Lvpqqxx#=|{9NTz_V?Q=huL zfXjsz#cvCra}@L8IJu$Wn*pebz#&7#thmKS!5)PDfQX22n4EETq?wFwMXukunZoIj zs{}{b7HL<5KKIyityhTIRxoY_$8lGL?%8Q{XzTZvo=O{O=qV1E@Yy656<Gn!olPhk z9IT_*Ga<1io;<j4N~na9^u-g|aM;$qg~37)LAe#=)F62?lC<qVcOF+ykny00c!j`# zqk4#u?e7yop!eCwAgOEwJO%O-4st|-<Np~858fm@Z4h;q4Ym}$S00Llgm6nzyo3Ya zP8IOHG|h}1YuH3xp$CjdB8BjD$w?+Qvo3q}T;@2zVyOVY4)2PB=fwymw+evd`9s74 z*~W6y*NUJq)FuJ|?AX>(6H1O6A;?Qgk!$6(gnkg8#+JdZj5>foHb^=6U?Qpo9G8t3 zhnH}8HbgR7GZ784OEU#f!uXJhf;f^gT1`YawlkEDY#T{-1H;5hgkZ<54E_6f)jA|m zVE{<|gWqJ3Byo=IM&l)?MLrR%++Ylg1gQngmmD1<OBh^`l>&oDLRW-q0gS>Dfr+Th z7%!S#l*C*ycdq6hp0*Q6gE*Mtlxa#B%u?gPcmwO36{|+k7*RDQTcjOY-ceaQ)xF7a zCWEy#HwIpj;bicC4U#P&6zaOMW7nMNoOoS}j2whT+6ytZJvbfuz!RZdRgSp49QII# z2IhtLi9Zn@weTlcOEE3K-ygwIlsC!L7c-M-C9pv2B$kIuV=nRHWe#Ix1E@>42ESpE z!bxKwnQ!9W#wg+s7YGD3G*xm70)5!MMW%zJU>b=NX2?Nk_UWJYXA*Wb9LeCzi*7DM zC{L8sew2)^j^+bys+VzN;kigW#=8x~ZIX$*z=e@()2haDkxViY4w5uHls@LbTR6v4 z%w5Bn0CvqJ-LBCL7}{=JZ@H@pbgLDyk(o^Keua5)8cZ;rj-6c}^GCrdLheU?MV*J! zEenBXlo@a6%c(G~dvV;Bi40B{EN=0TgOAmG;Cx_Ri=O|Qeo+5DUTPayCT>uBlWa1| zNrmxK)DXHS=McB~Gql(WNm|u=AmTzUYh)6UO<iGDJP+_fTmwA*oXgsub~nayh2ymy z>D<^xmmm3DS^mbOk#^<k8#|W#9DE>Ct7bFRYDWFfv36qnjQ+aK>GE7Oejk_?(da^{ zySdpdEkp;ekN3-RoNkfIY5(#4@#tK+yRlr&rpb|AJ$Hoc&E;}7Th+e65rH)6y6Dx; z|B3#n{%_#ROZ3Q5g);vWo^&_{Jl2H=dHy3Nz*^|l=B>=U;%<7+8z)S87pmRXSuJL> z#nsN#S}B_?txdUQAR@|RneD&Y|K4AjoqO`hVy2eLjIB*c`T6Yv`tPlF3jOHdebH{I zv%1<TVR}3n?H4+$=eA0nGKdvr-6^Nj9Hq;HhqWUs8wK;WC!f4+Zt&|Dt2{m|%DV?A zPX91CapJjp1f9L&OVCgg(1_3{uk|O4#yn64N+s{j1EO3mdBM*gmrJkcE9JQuy4}uI zmo3Ip?w;<<o^n1{*_`g~Dd$G_95~$KVr;fDvuAU9u#l-#GU}BN|7u^@{-r%x&XyPU zx8t3BcVnYlo{JBDCOYTMgSqH)rEWc$FVpJA;GS|mU9G0GRb5R3IU0OOzU4eTn>_!Y z=^xSmg$Sof5FM^2t{OL)=e<a_<%=`kf|<BvF5^bin{~mj!3zR&?ekWO=QA_pboEEy z+I{O=M^WaaqtWGwiRA)b8qsLcaSH|a++SU|SlGVCX}3^xzNpRLIez*rZ@sxc`29%Q zEle!$Xpc_Wk40mSJ6fQ&_Nl=a?ij!MZErc<)fOUCqph7gTccBvO3`(Sv|jXdOHbk( z)P+MG<NYcYMl2(WUBQHcE5#+xq?Z!6?cMw0_<P>7{r58yJ9kdV|Ju9Oj~`z@qrTq0 z(rPa+w_7W4z30Kicm|)vMadG4{z*6%^$|WseJ)jEfF^H6bz$5Ti$(@MrWlBg242i? zl|<uMS~l8Gm1_CXe6*o8W7)!JWo&v^ueWQuR4t6=qDfN9ow4kbkNosfryg5dbT^ZU zRG=J9w$>*>EtuYObh2}xm$rg)2d<sgKjTY=qS->eUO4iuBZYdtkj45IO~<nZApKh1 zM!B_hww+(-+;P{LvYkF->aVxE>xWyNgI&DZr#Fsvx?A12tzv@T%5$!e>2h=AAWusF zXK}=xT@+u-#Y$$@f~Q0M%}<o>vn8Gg)(zhs^e?#8E~4lV9@ALFyaVT&vBvbproIdZ zGE2TMHtWIPhcAC+>hRbLK+AsSWOR82k2TE<?X~^xE$+l!xW!(HB&hoq)^}Lb?Y?yd zIshz9R!;j0a=BeFChy7LJW~!Bli`hnt7ha3%GV-W<(RNoFAjwJa})YM7@rDg&y?_w zn?gik4g40*loS7ogi=joLzq_pjmmQHzyl9xr~m%%|Neo&d$ez^eEZwqzK=5xEQ`ED z+}(&z7i_0Rg}N>;TAo;V6A1viz%ldCESce4xWvXrfsAK_mW^e5s;G%GWbD1EiuZ)N zE?J%x|F1?-+Mk_6mopP&XA5TPg#efmflRxK!n;~?cTKI$^d{5OxsaGV?Eq@%h0JKs zH{Xd4?ni=$9rdS99Ij3id#lG|cA`|wIFYd+S?b{&!CrU6DZGSYlha|Nnx6@Vf|ZHl z4pA08L#98YapSumDleH4f)1=uAdzfkXAYH8)nvX^9Amgq03f+%N^V6rG8X$d;Q}`X zbHNy}Voqdss}u#hH(ST~9!8BYTOUCJZpFy3zr(MELmBf8cRjn7j1ZR;0qtJK+jsu^ zBVXWMX(O-GKB)bk_J?Y%A&SWIQF4ulA~Hr|jF2I{5V{4eR^kLhMpOdB$47=3H?yb! zHSq1dHPQG9G2oJtZB#9aa{_q?$p_^dR!JO6F>5p=hK@GGH*F{=dJA6weLXqL6gN=S zn7XanPS{c8Ll-<EA>F@l+hM;<PXZR1Y4|*<h!phZiU^oWs-?-E*JGJw*jFX4+!G#| zbQ}+-9&(Zz4jCOaWQ-A#mNK-?H~BFXq7_Y&aT;!Z+k>P!DYxel&8kw1$|F!rhE|De z*r2>x-T*h%Gg4BXRJ{=%MJ&ED!rSqbY5{<ID}An7dQT$Ek<{Rck+?(^C%h^|0CtvB z7EE`LRGy=#mGD=^E+kRh$UpF+Ft$qGlLp`-krXUp0I?P&Z5PhfYa$X2ClLW@5__#( z2>V{CqX!(9=8Xc4Q30-4Du%@KOzsM+49v6e)7+H^v{011o2nojB&;c`3*0&b(ULMg z?76CnbR2sKZ6UsyiKL19SOeabCSl`gN_cST1(h_tNK~KPOP-VyR!EG;Cf>Q@EhITD zl}zVi_(Pxt6=~E*N&xPPISi>pzOnT3Z4d^4?h-!+F)bk(Ald0w38fsFwHZm&gfddF z_=FQ86k}r+sR8`;0vCB?QNZd5xq}n1{edF6;aw|XYUg}mxb}qQ!|)}2Cj2=RB&<-R z0X=MCDPyGRCIV12Lf%S*8WG(XV>+sf6&kY~T0@k%`J5SP^FUlA4h#vLLmr#RJi5;a zAlfprF!4S>N+VKG%aLlx^@sH^?ulX-bc2j=$c*8JOyY6El9kAds6!>BMy8F5!Nc(- z>Ia{I7W}@TZ8d@p6p&u|$U>`vG1YJz0mhJyL#%ieQd*BWN$h0E73z&(wBn737J(#` zexoLmD8TLVnvft&;B?VQ^7ztpI0z+^Nr9IZlBP^tipc}<TDdz<=_C6c7e%r~ZE2E% z-ZHoq;wfrOiV|KpZQy5y^g?G)XiIb_5sR-d!lqL;%`Q?hw9vS~bJW<4CI2Ki(PBE0 z4M@>C1;Qr_5w!~ExX2IDy@*Gh(pPa-ATDG}84^2GDaFYv_RPmdwL-MBV^1Srndz2C zm#$y0*Ve9G%2nFAuJw}XF*CHM?Y1J}WPQfeok%Dh#C^<-+*q)~>7!ud8z#PE;eh_1 zLyg6K&E1dhuCC3sYzb6IZJc=V^3E5X*hmqxz>xj*k!uU>o=?xjqdUiA^P{Oo0=Lp? zdUD4y4n-X^8Fp@TFbK*9z{aEh{>T&=;a)rPv5{|UacxdJ?(thfZRN?;!>?Y*a|JIY zPwjnV6fS;-3cl?U&}c==gsfhmu~J$o@HoS#H>ByJOPs}tSchOW)s<nhkUuh};svw4 zNe}gIypass$2=ay>=o1~Y<EOa@L7c;)2({dJk8}oT2+y-H;iSd)5dg#+)g)QIy;-H z=$Y0bvo(pCQ$6u^J^F)=a$Y4PRQj~p3^}u_R))+&vM<pJ{zYm#P{ex}Ne4!<b}E9V zLe`mD3Yx#1_FZ-QDgzUz#S|s%2#RN#PS6-n|NLtBgR2!34=g8H<piBYeX9r7$ld5I z8Ce0LK(KYy!y(%$B;tUCK#gJ9kmO_Gn5ddq!wxPjtc75;n6f?v<`8)gklOuj!hbDm z#EFnK$|A5?)*yTaj+SbzP1YlUhj2X+DuZgl3Zu+n<v}!pZUT=2*)`B~g&jf6X*tl3 zx8ZrLCvh0Uz7)4(<WKU0dxLF&rRFC)ZOk_QVw-g6z8H?5(Uh!w5(LWvEEw0Imr^tW z<pN6{w>7n{A?HAOecq2=YVGNX<A>JbQytUIiRZGB48@BF`}e*0>g0IN4gi{hUeffv zRyGAxU8(Nq$;R$6E1ZOO2B0={&dDZjSv)yqg4BZT21Qy#6n!{0G|rqYqxJJ>iI(&u zB%ti@J#h3{XvrSPm_7Zu-`EO>a{`n`yu7*U1C05a9WSj0#Oa8DkQlMAK5>PHf!j0v zQz!jAgQ8K*c!t~f1Np1ZLPLcPRv2hnF8Wep&w=WFMu4O+@Dax$ZD|X)J}@O@OxvKG zk?I!~h;T)(qG^sx`R;U#i#4v}dgU{2#!!SUQFa8sk=eB{2JIvwNN|Swtn2q+F^LOK z`(iDoRgjRH_-;0hNv!bz454XXOnu*{pVgkzUl{(pZaimx%lAcdRX=Nf%eck-=3g5h z@%_h1Am+8lLZ34JV`%V@@7F`xtA$ST{|VZEkRyv2)e&T`+1g^w0uY36T&ZjNGw;6R ziT{4b6L)BD9Axi&Vz>Ux9r}ZJ+;PX?Q`-7n8-uF$5!w)%o2Q+Rf!l(8N26}DhO=g6 zF+&pukn;R#>e}PK_|~`n;^UvyMoypBMn3yXZ#=7g`|KO_#^Y~)`{U>S>GWyc9(?EL zwf^9_pC7jQ0_2CgK{!JeAIIyD6`H9K6*kNN^UcL(CDS9Zqj)iq-m%iuQ`g+Qdho>H zxdUUn9)9`Q%Xf{vbMS}Pd~EH8-6wuw?Pl%6*L>?MXI2k>xO1?y@=*DqhgVAPJh6Im zy?^|jtEYufa?cje@B#6#z-OC`a?N=%Mv@|JJfS`MQSJ4E?|<WuKRS5nJ=!7drTPa} z9{K+9{r|jg`O*5|*4rP{o}{|c7yL18`~b~S3>1%Xq^6XAJXOgw@nX#If72h+*=7VD z3MtB3#K(d^>snQ-uAf_ZO#h2l1n&P_M*E<vee7fQwf-|VhhFj=Zese^zNzcqKi4^O zME~m3*%LRM_^03ecC_Dr!~T5!z7yHs>^LW~a(`oF4>l&3`-?|B!hNa>%qMy}e`fo@ z-9Fg!rVqdAzQI$v_h<Oykz{$g@bMG%mALv_UFC1-<JU3%BLT3J|5$%9dO*SE>0q(D zZsax<%{;P*e>v10V+6UsfaQJO&ow-##G{-|v>VkkDe<S*J)Xbc1F$TUUeyU@RxOA- zx-ju-v+4P9oDkP|_6-ol7Um7AvdPFrqiIl$`>M9M@n@6G?#6u9S$XJ4V#aY>vp4Qb z#xDEW>k_l?D>kpGj%lwsdbra2Qn+4u^&4JMbo-G=)L!ccrXKvt<I7`%Uw>#{>Gq|m zt(?8|<_C9`<_~J--JNk%=hpu2JB;fmA3D92-my_|_pa6=Pb|Ljt}T81=*$aGU0Z2i z_H*Ql_F-(!`J8Ix#3)Q;Bx<^TCj8qfb9=f|d$;lnSM3;lISqm`hL%to@1t<8U^%}0 zc;tVKhgk7G><BSZz{hg_x2)WN1aBF+pKZZP9=i9YLuY$)*SAZvOPl>4{sl>b%ehi4 zi21`zh|eEBcjrHA++jqRZIk%iogKMv<dKorlR@QI$++|-;zGX%&0y~r2op%6Y=RdV zp$w`9RC(CV*s`DZVP8d<Q(Go)VEAFXU!*pbXl<M$PVfV}8n2`&B0WWEh#wi^mN?=! z7kQh)Vt6QjrsHy9Nt+k{4pohC@SfHXDODsr`bwaZsxc!96i*zbAtHeYPLfl&>*CO% z+Ftzb{x?1TrUTi2ub1t<;MA$E{!k<rNl#67GMK;J$;mcJxA9fL@BpR#;rC${Cyurv zZg~9QIPy>=AB~U2IjA3~B}%dEY!=T>-dr#d`dr9y+)(ePQzyHP%P-$*>ZOUJS6(?W zx>Oilm|qw@_tyvCa{1`u=**2XpU=<b`Zx76Gucx@&1<QN!!5V%>L)l;*<1BldL(OW z2i|hvV{4CYgx%2MZ3{rqqWN!1NX^lwe)*}R+Wd>=cfWSy&)jyJjhStihoCJ(@6->} z>E7%u3$c78PnVof`{<FQt<vhsdPzU+G@SCr#zqz6Sbg8Vef3Z_bo}WLJbird4R$T3 zl{T}X>Sh(rBfF3XG)hl5(l)N;oh%@TSrU&VL!I{V<HtLt_0^TKoy}(Le@3W^nj5d* zXdO9vr1i~gH@o@T&CapT>j+w>&D951Kdv8q>lSU#-LXWVA;^PHz?bcdhpnBq^@GWJ zvb<6Pctbzem90}ZiBck_2h>H!JkvehM}^CMHy&As33>#7JW3GTZTgf?fbg(i0LQXI z4(WYF#NRUVN@($qLKbIMg+XLi3RCI<&G37X357H*lL*c9?DLeC)DS%blLrbVOrXUK z^PA$+DT)GsbPxlWQA*Fyq$T0|C~9e^54`Hs($c9{9oYVRMW~TT217tqB*LL9Vxtl8 zDWb(_zN~NfuULo|BV;Pde#a>YG<G4?#%nSZ?3AndN+n+%n+j^j6AdSvNQ@KPl%QS| z#L&@LcG|5(it&Xj{2O{XuYY0b)T0OYzglkm=)r@Jo?3b+N%2M!iyHUMgAYmi9dZM0 zw&o6+=5omXVct=9%$p&AEApZGYI-HPT(7P;OU`QjnNX<Oz+xN6d-5zY6d)bM6@*sI z!2Sijv6)wN1T6h$z|tQBr(y!{{MnHuJO=lm^FD-U#tG5<FIKve@6lk$@UED~{ZU8> z6uF10vPqs#D+5~%a4-117GE>SPnjymE}J!{n}E9$+-=Pbk7wZ8o3%sQwV7Pp3iNhw z78aIb^|h<Jy{k4C-S%7};orAuuURin?sRrtU7N1Y+%Ps-Zoe}y@7wWF@<jyNfm-dZ zMAkPxpN}^RbBRv4k<u59emuIFUA9+FKDe@SVuiE|?Q9t=7GHgCU+eHAM~@!+uy51c zc)Xuoa6a5FwaQP{v-NDJp_hHFtYeqYI3U6#OUZPo)hM*Hw*$)BDLgQp?d0D#?IUZr z582Wn2LFp-p3Ptr5qlWZMdB%$j~>wkRm+u$sJ!*iU}N1u4&jey0wWo*2pDL;yr@l? zy%LcLD<H}u(8p9cRby5Qf3Vh{tqPdzL~>#5Lw`HIldvN@)EQr1n+!*jseCFG(LNGv zjIXb^RngX!-SYeg2jkTUkoMn`5{?tm?w_r_x7J0DM)nR)G}hftyL(`^(LK~&`<7!z z$-Eg!y?wm5)mfXXzPHw9w;}=5_<DM#*}8Ie@W~VrSSgAqU-M5gS5hEYxLC#dk~cj? zX2ZpyleJY_6srbPV;oje&i6^WO{@`FGJayQk377v9$jf4Znb7wiOD3nu`*hGS9E=T zZLCM8nCza6S#JI1!}Dv=os(Bgw5BI0l-6r$?Tdr&?lbnR)SAXSUKoqFbH+O^8+_*- z(a6I;ldT&+dd=gHMn-;?zVC&bE(&+1RWM&+rSa0Wq95cPcrNnfmQ294;WIyL>2Ess zKDRXH=qKfSaPGv$o)ahbY@B%Q9eYk}+^KJtoWavhsgTx=r3-^6UwiD>YqijI*A4zT z{jS%&?p<<U-}!SR_jBLt8LMlFdx7`%c14fq@cuIvzKt?@s)Xu^tS<X8r$uLo*+cE1 zoZ&!J;y8i;b>Em{x`@cyEx|<*u_Z(i6%3Zfp_2$ZaF0nT#XPSOO6mW}*axDd-+zsT zI?T5m{MxSqNM%2aceLL(HQ&*Ucp`aICAnk;Q4#Gsx`|_m-?y5MZQ)#N3|_83gf(01 z%oAv?-7Ru(Z)YEYN5_>3(R6)l4G}o7`^!GWqz&Tr4wG5J@Et&;GmJ&FJ%;vD-*JLD z&>Es5viwKwIgRiMgcI`J-+a$WpNZ>9E--e6OfH6=FJ^Ud9XM9>p&<18uE1U);?)gz z-YC;p)2}{z4Q;MTKQcKYYD0G~AlF@|zg0^e*A0BXef!u_<sBfSz`uSN-Z;d(9nr@9 ziA;iAIg1H@!fKKUIYR;w{nrK`8hr4EAN=5k!T;9p-}&D6-l?~~@|D4(3)-VkJfZ%) zfAG0-S^L!H;K4IzwAXJco?qp#_%C>}Es?+JE>?p;`Yei;S%6?gf5CnOJz(d-q$4{H zaL57_d%=Wip`y^?cLgpMuoQ{e7KIEmfOp5%HG}H1N`pdRAu4JU6IvmzUzgjd^1JuG zJCPvgfVtOSI@~acj#zA$U&G069Qksef6NKjW)_?Ed4KDwa^#KL`$EpxyZ1hkOeAL# z)G1%xvgWGI#hKb`_q{tYlT0Mceg2Xg8fz~$tFwW|k<z>MXzN({iG5Ebr-7V`oBPZ{ zI#8ZoXjS`x8#bTdl-zyOS3cG-=jyG6>ALNdqL2S0Ri%=2gF59TDY2It^*Qqxb&|A2 zmD15hpkHk)wM(IN={-t@`YLPXha+W$iu3UHT4^%z<zq-b4RI`($EMy?URxJbbYj|& zabb*|wD188vZvIMU0x}kJi096i145A7B!`amx83gQVYs6b~N?m*v?{d#_?w&#i?9) zWp{t)&9B<G@0B<0=&kO+=c79|b|?oq6(9iJZjF!6p|WKW{Irz<`YI4gnG*Sg%9VeF z6AIVBDlngO_ve$dJJ*Y~qMZaQ^x(qg>1y%hXwi*CVs1jeC6!6pbJ<qY&ZHw|`|`Uk zzx>e~=lj>b^3b7s4z<m5zh#V~0m|ZyB?^5Y-_RVQqw!ycQwTaG(9=b?kC+jNL;zsL zhu5_96MC^;!b!Q2o8GTouWe1Gl1r`|N9e`It#pT9Aof}EJ?&w<m79j_TF~)kuQF{Y zbmt61l#-x*nSPKQs0;Mcv*`5<NrfZtgj8Ao?a<=lA^HC?ZI`=o^aXS6D=yoWeVPAS z0vC?N-$MG}EAL!?C{cB^{ogA$LxK0=HZA;B)YfiYIDB|vY3uO96P^8YC8ydiKeuvh z@VS-F_uFR{HXb~=68Z|UXVvs(+iAoH-`0ggs;`%M2H*LAIsdQBo3Ft;?jb)nwtCr; znF30Tv>H|Q5QvyeB4vYwb>Xe6HHIt+@s*iSfmPJZ24{u;OL^0$!i18!$Ar;8nM!~& z=N#VGKGMWCw|vXdrC|4t?$I$#%hv<py$5q!_SnAhxf>7fNPH-@-dwuU&_1ne=f2ol zU3NA)_FVd2>x%h>E6l;Se|Y9l7{}`T;Ti43#Gy*0p1u4k%b!VU?fqwV9N3zF(ITX7 z=BD}m`$ImoG4b-wBi+ix(H-G*c<_w>1uvexs$k`H?ViO02Nr+OyKLU7CZ;wW#zOSL zasBu8&!9Vr!_RHON#Cj6uRW&Lk|eqHBRY2-OX5B}49E-XL{Tb{+j!MY#5HAGWm#n` z))k|N?o}ztWi>Ga)OCZYAwvm8Q%3A2XjLEt&Aa0aw8wi-10*E>6K}#Oa-<Ff$;vwr zH&heUnI663O-LZUSRbh^DgmPJ;W~MpYOPY85A%~7&iCZr>huL8<HbI!f>M^{F8_Jm z6np2kMLFFE5ySPw%nQw`mV3n0gUmr6&_Ey`$dUT&U|%6*pl3RS6<mA*?>S_{Rv|SD zJc=-LJ+M`fiKTXbPNZTG6xgi{{oH3oJ*aCpYg&4~P}*G{+f_(TB-=MHUG|D;EE_MA zVyIt9^kgHt*F%XGIzmei2K$-Ja>`|2lSm;}IyRCTV8o_>7NxBb)P4<xu&7IGMtd<A z>SZ&R&(DvN6gL((0%=T61pS6dYl!yQO!6mPt5tjw4IDEpq6j1`3C$(?2kbn=iou-6 z2`!ZkT!8iQ0;C)A8)Y|N2y{eM3X~;r0ys}Xi-a2xTbi<3A%4p4Y_=x)xS4T2UI_}0 zJ+TrI7bJPi>&<=pZjA+|=L5dp?O;td=Oo2MGL<^_B<OmsA2=v%er^N|3n<<1DzVb1 zKdGndgfrVVA(o};LKkKEc^nR;JH)5PF)kuu>O`0N5Swh^{NkSx?0>x5h{}|PNKy*| z9p*O%@o`<>2q1i;wO*>0!IdmU=T^)8Y&u)oLUaZy@K`e0caq>!q^tG34n7Y7pg=#0 z-I8$vo{?j~9P=UY7O~ocULpNN+9Ip2pe)J<K^HqeqYh*<A)ZO1LIv!?D=1y^{@Hm| z4O~e9e-w|7e8=qioKQibAmYc1gKE5VL&!<qYNxZWUs)}X004`wPKJPLay{u(<E{1$ z4|Dfq-C0g!M1UYb=g<EG^zpBd=6-ABPe;BBEx=IktwwJ}VFZ!rWA*W-`tZBw<(%>6 zy3hhX(0kUA`V5zqx3~cGn!iw4h$_wP&_EvRR(JR~W~u(zA|5ut=1Y507(gk3nq!%Y z)57*g_T|)YGuoy+vguG=?K>U?-=+-S8kaiSceH32T?LU37D-Ve%KZ~|G7^+LPsHsc zNUs7zN*Rmj#-CKi468EZ>{MpNk5b9P%q**nFN_r+*3o`Y%FxQcqs-rCj^23lMEmr~ zBU!LhgPAK&o^DUveB+hs*Wd@qZaCaapx4S>JkrkaLJyuUC&ABT8mVc6;v^b~x67rY z3tZ&0|5Pddqt~PDQt5~!i2ef6(O$eia|+%cI?yT=jxKGTr4n!}7aL_JQ|Z|9!P6z} z;Nde%j<a;;aCx;<S}h&%ejVYkv|1iqCu_>N?|o0*L+CO`_dNB!`(z6m@)e&&pEHAI z@)pTzD!iKd#I(ePmn!U<nmJy=1aBtJ2)ir-jaSTL$l#g16L82hV}c)+AoM?Dxd0mt z=YUAoMIAQolHcx2BE>K<f0*Q<MG?~mqkQGlpWYcumBSWhdIJ<lKQto~vcG%g&4zYx zv>EY-p<*yoxg>Ce0MR<knc$92vVFr#AHJ#+e9uzLv7DqG30G%2t8>{%99qWQT-Tq) z3<p|l2tqJOlk+GL2kDYGV`k$4av*8nmU9#Ul+~xdn$T_&FS1ZP9x|N*DmuV<>}uMs zhZ-O)XwT~UqYJ#Mtdk__+_&)C>q4Tkz@|_V6iJr#`M=bEkDPNI@^l^>`JItJ8Ts>( zA8KHUh|>-GnOYf)rEH1#-2j*HeEyj*YQ^QTO1zDq)sw=x^LeRb7Bk)gL#IaZH4$BT z0lX<Wq;ZwvLP9inE4(7Ec|2k|LvSeXt|sgRF9gv>4&{x*e+zR-!y+EZwQ)I~hpc22 ztEPHvq3Eq~5nI<9mfi6tH(0cUek`hHWYwcg?h(jHC(v2L_4Dq<8A-b-?2@fO2VVtE zT#{@qOE+#d7d=hhqWpb;+$|1%UXX4=y&?~+-hSoG%$2vVZvXvKDg_Dx`g&SP+shLK zlF5pXmi9LzIeArF@y{MDq=gJ%qffcWtFj97_Re-p`9;J_mo=iJ5phRB4(MN5z>81H z4n8*nshPyEY7s72nxvaIU5~6<n}5x3y+-?(7VYBWPqqM4!uL#HX_9^R%youQzYD1t z*Ls^Ir~3P3e(I2-WHy_O0dOhoLVWj$J61eh<)a4=kRPZXLHT2;cr(*TgwGxI9`VS` z%#oMul1F_yLMJ1h&jt_FJ35LO4N=q5@<3T+48H9h6H)%sc}h2<Ib!}~PWP`G1qqKQ z$|o7BoIHHi8!0LJY!Vln)7P_iYm+4l@~E`|e5(z<_w}d0uKnsOQh3>EFT4&d0C;R; z@E8HT#r5$U1l3xCg(G5;Q*!&Cp>O*aG*9Jidz#<s4ee;XSuANY`s`w5Mz3H<D{JL- zpq+N2a{A~;!zaws+UejQ@DSe!4n8c}hmY&}zntr1M|<w6|NenkzyGuQMn~^SO=Yj+ ze`Q0Hn>N`eKZrl<NXn|ne}q6`()5q7X{pL>S?#Z4gCgJgXFd>qpr~cF-IKw^bMMzb z@W9~*UcbJ+{D#|a|5{rUB8ZLV{P&65{+jj)?N79S(?`&njf^WclgTPXj0voM$|P4z zD9#F;ABI;^fX`1VAm=Z9l&77vAdQH(f^fq4;i+R;pBGBPNqfzCclA6lhBaA(EK@!n zdG+dS`)bg{@TwFTQf#ls(iE~4Tm8lRaBQY=<bd6O9z6UdWiB?yK7XO_Ui2A1;Q`bz zs16MiuS((=P7WPSwmU&#&JVkO>9Y!p?>(DzQ91DpOKx}Lc?D<(wShdIY6NPD_qMk= zEmRlbY8ri|e3NGrKRr+WkQ*RDLG|d`#Q{(yP}p27ganzPY}yp534sPLNvR7i9``f; z$Z!*>PSzP0{99c4goB4ef%XVL4dgc5wkXnk;fy3flRy{mI@H9cVOA2iDN~GB65)hu zj>5<WG+_7%?2+HP5exgnerHS+Yl*682?*Tr$IFT6D1Imejt1?qc&h0XSH{YFs?nSs zj3QmYerI-+Q;ig+G8iS#Ig1vEDT!B7qx1Rk-Fdep4r_s2Jl)F$f`LG3rI>EJQ&&}! zqeR`xy?LZW7}H0hPLwVh6FoEK+V~O$LI%$Z9gKi5VS*@>!_fzK3?hi~&}@7IaSaOx zYxv9JkSHE3@*qYCfrNl2!_EZ54$4GEiVz?k7Qb1%K;(G|!wLISW3d$ES9~(GcplFW zAAmC<e>kC7z<4O#j3UTDIRV5kE*BCxxS*5>Fa+`X@q$r3*Ukl??%{lt(S!N+TTUoh z2LvCn<{6qM%3E&9ZyJRL$D(EgR}=#1w4buGVZ9mp1q2}(fn)?!jl`GSD(r$pc=1Xl zC4r>%3MPo$rV(jD9DH<8@6(emBNHUmo{NDPAxmDlynG{+3Sz;8WO}j|Z!tO=r6Gyh zQLP$UFo{wZF=RBs(}j}gh;XzF`Xjk$7+=Y3Bw2|$W6@a7j*kMbjx!C=D<Q_xCGw~i zh8D~GA@ZC)F~h{M6L541@(Yg_vrFZ~SS+3n;?&7b6i9~COXI1DY=FpOhJgua>WNY` zRgMCjE|b{M?9q70jbIwXtx;`M0<n;s9&<Zvuxup;{25P;`P8Wq=|e~r`zFIdcr;If z%7>@++W~jNNq3Rc@F@+3Q>0k(0h1wN&Rk^%^Un@P8)<lP#8r1%@EV;)61kM*lU9Tg zG5qONq(DrgEE^KNf<WTbZJD3EIdS1)-{8slF_-VeL+Gf9aL0WrNbG+!8`i?<&^v<h zKw*KT4{Al?^+dRpFW=1sLFS>J&;P5@LNq?*Z^$xKFD!|ouO|3zalGQcrXR<L!ohBG zJ$M{H1p?NmwOh5<YVTs-|2_Ry{pI@G*?UGrf5JyFzfm2C)P#n_K$sGv5wunamB&g6 z-4dc-14$l*#G<+&-{N<%xBwml4jEh*CJZqQ;v*NO`Ka)4iz1;(qvHCk>JB+_wj+G! zq|vTI0r99l1YMyH0_=$nMD!x)W(d+1HcXK>(F+Mn#(gfKk;17p6rL4YajyYrvfBNG zCi9Ss{2K06;<AVSN46@Vm9oE>z<qhX(v<00=xpe#7e74QE9vL9TmTuqpaK%nfd&); zB2{L$hjmEU8$B}ph@{B#b6an(q&&mP)5t^cp$RT<mQ#G#z`5v&mr~E`A}8sh_t>?j zxFcfGp&fRBHDQdEGN{R}!ec6qm!^ho09l$LsgKwE@Ej^8OEy7u%i%dT3OISTNcH+f z9R|0|*5ips(hs)A?cUIZ4DvjYM`|LG!-o&*G#OE^jAvEi377~OCKx*;b+{%bCi<>+ zOu=A9Di>^DhEF!R8WRKTX>T|<rFFm-b3-B5F2wrCS)dKU9kOmnXa;6Zz>uV4IJNkH zQIlQDvIC2F(`h(3+j_*+>P~oXU)Wtj8>Z6DpjAl;`VPHFpp8QNLAH?~$P{Rt4D8ml zWMah1Lb7y(iU6uHfWIL3kg%}7zc=jEHM|^x%``EUPT6|G!0l3x<8<qD3I1V`)41Qr zg3=K*<I2IBQ=wWa(x?Vg!Qw=K)$C6da)uSCWpzTHgLUDv0~19qR~wO3opb76Fh)9b z!_49dEu>qsl9MhJ*Z_Yl>JnoUyu6!O+t^r3^ezvCCpWDKQJF$3Adr!CD8}&MDG7`a zksUG~kRXskM30AY-i!qY`|%3*JJhn=F^gVHObYR`=?H%7`*7j}><QR>)*cGLWC_qV zT5*69k`0%^$CVJ$6)OabyCk{yWXp&qa?6#<at`p$)+8)MXjc(PV?0#Zsu)|TMs)`w z22&m!gOxA{2Vg&nmBmX&D+kQ11>M{4IQu0_PKJz<GB)ut*i87ogh8++5;#ALCee&s zRu+%bOkm-%%NC%OV2>nn(F(cWBDrKjZgh9FKT4Q2ck>(N%OWP)!LR6f_H8q-58g=# zs!w8b*tbF?IT0aRJ8P4R!)F(8qY`=8E@1Q`JxDg%RVZs{;i6@**`k5EJ$SnaC<GZJ zXHzu}yMT41nyjKkGkxiFh*nU5ByD27`Dgd-bb$OV(Nff|qpS11*=dCG>n4U~IIvJT z?+BK*6zup~4&m|gi~n)M2$2s2-+z>Lp?1jUv~&z(PP7^~%f3!o&H)rBIZ*J*r?^z2 zM<h#W`8w*>0z#KBi#kA0Cj+Z_yY4J3&9!}vm6e9CJ-4)=eN1ZbEO@ad`NO|Z)f7-( zQD}-Jiqg}}q6^aFqSoPjRcRk}Vu}HtS?98@uP_|-!FS|oP+Wle2<lz69&Mvb<f;z= zP-+JBPz!y;0vTsOv?2eE?Mp78r)=ZHLn)JFqS8J})Q(-Pqe<o@IOb{CJRDNe$$cey z!DaoZJ$(?}sI%1pwOme+x^RCyoj1R!2l8<gtLtW~BpvUk0YE>T=E>k7eW0Ru(%E>P z_ULq}Wv+`*CU_xJ`ZM~I*r;-NxxISi?V#rWA4<ysrDwxpf7woC;i(+_IH`H$8k**9 zUF=ngBG){cEt`ZG5-;wUm{ZA!1<i(ba?FP&1oWI5vIDbyP#UQQ`Ur7^B8u`tZnI5L zIfzkSE-4#<M^I}`k1l(Ajxz6y?U92hph>2Dz{p2K1982edm-8&8OKByOQ*paB5?|^ zS=uj04<5fV4J|+mkKBCCxb6!VJGZ$c$uRdEnmyfc$HEc2*58qFiasM@_-mm^Gm>rC zI5Hz*@ABu@jj<i(tRDIG$e5kT#tm@CY?SPwWW}^2q0V|Z2OOgn9!)wV*$SJnjaJ^s z0EiBtoX|MfU4VIu?%`V4PHs$0?|?fssz(nj0LY-tzAYPEJ+L0OiW$36vAWe=38>JX zR{z>P&Bn&HvpW_|ecX-9Q^nmX_6h+h2)rfg#KEkQDFRdIGhUEPw#Fh$J=nqY$yVK& z9xbd^mS1$mOx6xgpc(+iz%jGQ(P(JVj`$Mb^9KtV<52XaB%p%0<3LSAzNC@wh9?0i zfP-`=V}Xe*<g?P#vsV_z%oO}OSUeDN*!1wt)x%&Gkp&yIs&2<@l5mj<6jm~71NP)k z6vByAf@Fk{v+mOPp6lnAP7$_&c0l<(U$6h3em|VuBHDsk0P$s_@Y-cgCQ{yC#pb{V z$TrRtWHx#1iKxb;^t<lA`D(Wd8fz&zKKYIGUXq5irq_?W=!VWlCLdpHG{&c9_io&B z+tiUvPQQKd+jpHX%~L+Jy#g@fUA7}Z>+$r~(#CaB`(z+lMm?C!Z!N8#a_m!{{^U<s zJOB24{YfQe4E>NRYkFl29g0@#S-Z80R@r@SMGHr?8N<;&_EDUWZ@xJ+_=@hD+G!(l zZSdN}asA)UO`}2i$|rs{`#14kPgE%PX8v|}|7WiE>&mBGa+LfoA*;WvJu8{0w^_fg zVgO;YnEc*1Ob^G~A33kaiZf!DpyKu=I1ca3MSBIjtSaLnrKpks3B%iX7E9tc0Moy4 z3>EO=9pQ#B_+9u(MjVdiBpKTTQ2C<1f|Kd~#h;1+f(HV0MM`=f@1$p@kW47bUg7k; zrsNy>UNtM<xGeYZeV)PNR;mwcIl_|i6Kw<EUU{#F+sBlohhhows$6o@S=FW*LN%fc z$;HuC!zn+#f%gVgjhT!h6l}=ytLdtG4$+HVd>@RdjHmQfy9KUA*1w2GN<Ko)<52c) z;q}z6grp}dgfMAv3u2yxk>HwFOypy@H}B`LjMz8js!z*TBIL}=xDE^lwd9{DUge*Z z^=`m9(MViuhC}aO>NeXq8~%_Ea*8timHY4mL7cp!6p-i;xehaM*E_BqAKf~B!^}%C zv`Qz{ZD1HxDODN8A?<KQsRpEkh_%~|GalF6wVtiNW=lp!_&D|LwZ!;{@UNcR>pC*L z6szEbZe{A#yf5tgXK9;8efmv%t@PH6gzAAI9t*TvqbUbCvZdNfr2vhq{}~k-pWzAb z&>KpnrB!!SN9w`l9jW_EuVn<i-pC879X)=$wOZLae7G*^ZLSRadZCQGaMf?A#MaLR zdF8^d$_4piVn}yXpXBVYXHrU?RVDcn@mQ{@-<msjcz=C5t%d(d$^Hxz119aO@snnx zvR799l|%K<h)t|4&Uc*c(U8BYpj=hGPzP$V<oC8Ft{b22JvfVX?ue?crA~w^NkC8J zi2z0|zocI%?yXekNWm(xgWn%Hq<>cb8S--N8+jEx2AjKD6bNh?ID`d6UYr#~Xk}%H zxZ4nVE^a0OdUHy#9qObw7YQ6=)e<s-_@=H?QpmpG&dSod@bS15YKy~)3cYJM8SUOs zJ%PkWx&&V)j7sWY$gNH0YK{K>RMdzhrZIfHG+n)C|KOujTc=ll;f?p@6M8J<n>=*q z=H>Svs^kBYLgqkJn6$cyy+or0WAk>HC<P!Q6UnkakSdI}+DC5>>ZMez5sL<@+4ZBR zcRu*QPTt0Y25KAhL!dM9l9A`Mpj*c}olFBW<e+{D1kG^TpRUd&df8>z=5RI{2FnS~ zle9JAR1qiXJA-49Y%JBey>1IUA%3jOv1BSRlg}+hT_=hq!#C9o&5zC>nw_%aVceN? zpF4)ohhGx<l7B{D@^y~F#5knLH9X228BgH7=f}y|5+~#N1pkvf$~6|<rq&sJ4g9zE z;A?M{f3vsUcGFGT&);;@ZMWT~cRzHl@SzXs|Mf%9Ud_Kh+_mzu!Pl3T?z)TrwQG01 zY(@62^WSB!{0pp?VU<(Dnr&K(eu?23Pc>^XZ4{TMQ|mu-00f3#TGA%8$)&-&-!}71 z=gO~tYfIPP`7Zq%4-e*^dcXGEgXg|+$L+fIUk3%5Q~ckf-CsiQBi_{`T19#OmUQIm zRb70C0ZEzWV0OsP&N|GU6md?Le*d|zmuGs%@7;ZP_r1q^)0M$L^p3BOKd`sg+xx)y z`tjbk?-{+nr2o=X`ES?nxw_Z8`tIF-Tb>$N<7-#<?z^wIxyh-uaV=iFyLh+EZ?SK5 z@C|wjZ$)xkDA!R10*AIprgD>h2>**p1}ATrR1h~v4<SZ&HVy4}W;Zrsqp8tEHj&=B zaQK$uiL-ak&A#^N(f-~ucTSeip4`;42R6HBUU5grm(a>H`cu{Q6H8}LRa+~|%YneA z9_^esSlBSl#`5V$Hw#<)y1H}h_~!Am$MwM6v3vH@zr7<bMUXimnTou%XUT4*^ep07 z$(q|<jwrq)7lA0D)QS`bN~K$oMKz2_fv5Ix)39N(Il}d;hvRW@eM(DEzNdG>UO}^* zUQ_}EKPZU$g-Vw8Tz)3u<b#QF-fcTTh6U0AS0F))$v~Wq1j+^gR}$>3=G3Mi2U-9! z0|7UYEu<v=Gcua<#}G~>rz(hv;jC63jqWJbi{L(n{ZmuuP>Ewgj0~2uX0X^ogMf}( zi-!|7S*rAFv{5HLKN>CJViF6aLiu(uYa}AksGlfewi4)XI1QR*BsOJ7n`O5Q)NnpX zMpuh`6y0=s^NKY0<>u^Q*#8rnlSqL%ni_9kUn7pZo(RW7K@_UE{ftdsBS5?CeE}mJ z)pC}TmidD3?1;(ymDr45<gLi$ydbE6L5zNm@%mr>nmpy#nrNW@U9U-h=F&(Fv4TGP z|KoepZoM>wLmU;qS#Z*G1@#`I<QC1h16dy`2XZK&ffq3zs4t{va$(xhR@o^#yhoDo znr6v+kB51WY>+<oVcug>cj8V~Pd3`u)mQa8!L%efPEy)e>KqqI9@ZwHlU_C(07MK5 zIx_MfjHq70GxEWaM@K$B@*NFCcGBH@;V@__SBOC{#p})$zd!X#oi0o%ZUaJ=GOl9C z@jDlU57s2<+&GXm!XKr@#qV5PczS|c%qwFRN{F7~D3vzR+w3GUWY1f6nOXll_A_Z< zL7+MCl#>LeEXn4)$L10Zt^&emT{X$1YfLq>TI;2la5C-Grs}n<ek%Ek+spJ(HdXjo zamJRP=}c|A7L-qIy~8@5PL?x2T2XEE^riQ!A=d%`HyH{7VyiTVw%~2JexiV)=s4p^ zEhW~2yla9aTZ~;{<dUhHBqhZ$V16`_A;34BI5_5DD@V$zT%AVoqg}0Sg<@jru)`_b z{F2nfCyw7nJOXf@a4e%aY!`t*tbm0EHDeI78J2Yy%9BZF`#CyA4j#$V3iHi1Y)RQ7 z7{%E5-WH4&Vj+R=jRSpdQAamMUAN<)B&1(qCrn|lBJ2@fb6Kr`iHMJ0CMv{iFew9t zWcL)Io8mW!Wdnti?VtxD!*Rg|m$?e8WHufxp?YFMQcB$1NNktIJ_w(n>t9V4*wMu+ z55@r{ST;^LTHT3;$_{a2plubBpQ@5XgyzT#j2_6YlYiGH|49`hnzc#U3#qkjy#4r_ zEXT7XMbJWZSq8Y;p^D>(rBld~hlu;s6`xAK(d?m#=5KUE>FZ42unxEJs+98aw5o2J zBv<z8aY#L-f1(}@m}>2u{~l}S&qwYY`6IZCS83nXZ({AJ89H1k%xO{>sKoKiH)MR~ zm8>l_$N2V&3FCK(Sw!X}9!!15vz~k9Makqj+%Rv|$6H(i+1^8CAWn3cfbfGC%@_4q zqF(*ywN4MJ4UdGf!em+Ux!?rL1!6)tCDWgeSHjcs4?O^|VIxzj734k6u&AoQ%{_IN z1ZFDdXg1m(e>k3x8vy|4J&0O^vwat-Tdi8}QN0is@0o{pl6%hq9LUK_2ifbZ`W~Xn zNsHdcyT;%^mb^3E1xVEG?rz^pmB$)GzqUK>J=kzO7y5|V;;yS6NQT}!hA+7A8qsa> zupY4C|KqpaP5-;z_Dzx-UCF%=1E_$AjQ}}|znYGkS2lhl7z~nL2yZg6jI%0O)gmo> zKSYoMOebg~15gLcgpz(iR*1Y`n0cIQQ6ri`;Z-0Ps+vC%2#Qjfn#3)TW?h+dX&Mu) zcoT3B4h2yf>>gT$SCB3OrUTHXAG<56UhPiIHX{7XP56?3bQ<LCoJ}mOO(-;Z?&uYi z1I!C-15y;$M!YBmn}Wx|yqmS7qp?^a78|wC{Wm|RZqYwnY*JdZ2$aRd9!WbXi;yOC ze*jzy9;p;WIUWQRNQMnKbTG4`(w=-G+Al;<6+)H~Ih8?1JQ6tJkKvjuiRMG}gme%1 zG>c294Kyw|vpgfRvjBOsS4)?<ALb`@uQ0Hh{s=(0b|xBegFjI3j-lddQ~~eh(KlWM z)!FTFSO^9)k?`>4$<PW1pvFQ8%DjAh4{gz>$k59>#A(1Hl<(J7NxU`L;W>opslU)b zNeLy!067q2f#@)X7lm5N4OCqYDZ@1>$49cft2$73;Y8$Lyg+^%0$HH^AwYj+E=n4k zc)Too!SG*z*lNUg+NEXeCLssVk!dapC6<10NP|=jN!6<3v>ehK6TE@DDTX^$i?QYy zI$d|t)7f-4n{7MEa>%yNNnEkCB)#)m;x2&@aog1vsgc_b`Q%B!BbB)<{ru6U(w(GJ zBJY(}C07;G6Q6By!&byz>Zs?Jw!w3cmPmTfu=4GYk4Sl2d;6KH!p6pUFrnDu7&>Bi zOL2#0L+|1gefa<EeJHu~TZXOw<4A$%7QiY5g%Y}>%=T<EL@+{{kR{c|@jtzolANtj zwu(oqC7UaRu;S4+?W`g#|0INhfBg9;nGJ?^^(8+pDRL!?!nV#WSVCgdvHk^h{21B_ zmKL=L+B^5JYDzJ~P2Xp=y%#SGKCyj_lIeBl=E0>^|IqONz8o|43AKT5CFb`0c_XHO zd8AC1^v6ctFOs1lB8cozY;@Z!;Ox+0>*7x3S#GvBQcwukKDjzn>%yg8GH_lg#i$PV z6wme}tzA08L#{H#o~dL-Z;Pn`G<RXU=E6=*|G~tyH@=|PKXt>k6HE|H;rN_PT-WR0 zx-frhzjxilPvge`qEF($B*TRLyK@jO%J23vGWv|4;Vb2{tEJ`XY0%#M*D1P#vL0?w zcuJp9+Lg<fjKP~QuHq<FkYrJi`RfEXEF!o=;evaUn-v@}BcBmk2e`~A1PQ>NEU5&Z zOV@Ex=1T}c+*j%*3DYBxuk<(uPF_~$c!!lC-z*mi)eq>6{SCscR+g65VUc8QwvSIE zbRcN307@J6#{T-?1Dw~}M_cNx2TWGH8P(&Zw6=@|Qz}i%vL=VR`Vm05L^e791^phw zRQA0FT-F;#o`%0th7$H|kq6M2cpJ154le!Sfkb+*yte%g<V|>U<HE~UhPUlS^8fB# z7l!Q8_PbUNerOSTuS<`OrPGyiMmsCt^6NL!q)U+hwd&|%P7;6|@9}oYjn==KtRnvW z;wURiHUr&XA;HCXd9_!Dv9(aO%hGAoV3{evo>ALhC{=xf69o4W%}}Yzy0VO0fLqt_ zl|sQ#$=sPO`Uzq%N~5xPEn~FAE*2tu_N!iRwtJPX^f@8;zm?C2K(DiWb2rb*-a30T z87y=&Ax_imiIc}BC${R<JsbPR!KV~b&_6San};wUextrMF?p;#xSR8O@6-$(rjC`K z$pVj=7|)TDFvv4#!TC`b03*M^o=O@xQ6r3K=YMeiync`VCF18tG*RmSNi7RUsXb+U z700YNI9`&TieI%bb8I(wDCi?#*GY?8w#$*q<vW&McJEE)dLY+z_0OTdC|~))S8U-| z(0j>23$L?!X6d1OZyFn;<l_2o{>md^?(H9$IR88PjFG{j90u<w3q2VbZ|=a^WW0$W ziVrv71UWL&kIy#~sU9c><Nl1+dE_y80^@aqM<0Fc=N^CUqk}u|zweDdfB)dz;M{#H zE9;Luva#{%)phOdU);B`s+~Ib<g1_k;=#d_T6S}D|09p=SNA3VgZ{MsDNtJWfv0eq zJVJsG%Tykkm#v-<B}v1qo}M|sM*i5IkRfpb!#*tYd*}(qu#}W3TKG};W6zE#21e)= zf5hL2OBw8t3h)lw5w&G$C>t7yk!b-kr@tAHQTNmC!r0iN^JzDmb)QBb<t`LUi|)rU z^#px*mEekpmk}6|{hRX9VtnV-{+C3fgKssLmYVYaU=WSQA_rpla{G;ySD5X!EAR)3 zXxB%pDIDgYc{qj?YGk~!wREzbE-g8qak5#ymP)0C^waFWPCDy+91>&)jz;rHm%cQB zNA@uit!^#f9wn7VX{ps%T57bG2JeZ&K~(L7-Lw5<HM;z}(>H7_uub0(WrJqRNtRD7 zb*^hGeN_zH=Kq9U_DbF`LKFL)q%N18&dohPF2aj9u$oGCt0~GNF(tzxR(`-94Qe6+ za0K|2{*ij_+_Ty7dQM-;;uemBducM@e;v$hG#k8L{WOftGqBaMT<C;%*?NqzjAVk> zZe{EBEEV}a_pJ6r8&0XzX_sv$^c?bWA7Wf;w@YMNSl>7a=M(C~!j(FmlAR8H5%y<g zh_8G8{CD*Kq5mZq4EL%1P-X~|Xed~%Dy$BCyhL1#>M?I(xr#-=6rqA?)EBFdX!EFu znnGHY;HoB(I)R&mN}bnOU`COeLgXQ|D7rO$<MFNH#&v1Tf{TkYcdz%ZKfLNDYsHKt zC%|V&Upsst_?v=oNs8-me#Yl77E24K12=4xM~jBhE>$IDP+Ye(+stg1Gh@3KY6mA` zPQu<1S&!nnsq_W<vjHbN8XbGlfo!$1^>DvEnd|PEY~1#;SFLWg;p~I@bH2`KzKP>! zwoVq)a@FuBS<a=Vp%+I>8?)_zb-WNs2CZ!0GTXT-90q(TY_^_`u0?l563Iw*D@@KK z)~OJvx9DHecd<@UmZOZ4$5o{0!T~!wG5rMg>q-%=lB6{SWnnm6p6H49JqHXFS}=8n zYK%IgtJ0|qUzJ+bta@3;NW8tjDc7K*<D>Ww>%n3&nR81`Hy)Wg?$e_MGHoYgp|8FC zChJM39ztj`f|U%4U67i`Q=PQwj|Ga+*jRG*$^;1kh-r$)#%}E3y<p)#(wdU=75ZN5 z?SWp?js+Y%uPjRso4F?Zb37CGC+B)8f4GhMn1mL3(O*j0VJBq=DJeF)kkwcveGu@e zsW6De)=D=H+@C)_hTl{!ZdZg^i|%MeONbGOqGI#dI{y%kch`=LgKoBm8OpO8Oi`Ji zD&sE$22GNwM)DG&{-lo5U2nh`xoz7TV<n5u8&`N$2%AR@Vf#?+3nAm$oDj&Svcyqy zhybbTh$E>-{Zz?$RnmI_-tDR0Qzz9=T5XVWSQ-<Rp;+yr+bRZmpYl@}k?sD--Bf=( z?!@b-be?py-eTL<{ajkWyCF>}euaFn;G&KBq~i-~zU}^a`(jV~N3EXOnc2AEMFN}} zdBH=koE(cMBL^Ij{{o9-)&m80a5IkgY~7Km3??+vnL<>;wUir9nAtGUk~(h%695eu z5L);L%@76--h($18-+}RIJq#Ey*=wrpil^kfNv)d?(p0UN6ZXvk-Faj3KsXppdj~> zfJ}Tc1F@JzL>q^AsN<p!(}6RXh}GNyZU?JFMDx!G7lZuj_r(D4@FhYal9Yih%i=f5 z1BS`Zj)>!qQ6m(9)-9hsQ%tPy+Z`*-*|D7g6soxM&rQs1hRKLR;^%<h*;{R#Eh6wA z8_(~$LDQqeMF8cClukwvfXxk1;_Evzby#=b;Jf<%t1simzVStT#e+dIX%N<ztk!lr z5ge-o{Tn{TPef>>T9Smf5U_AGh@eZhHP)JD*smwl3MO6BRwlQ`7uXjOamY&^$Hz#J zZG8bectozuCNZ%v6g(aeOxICOfVAQyia8pMWip0QbnqJFqJfK1OtMOnP3=CVD}nEe zS(U?#l^qNO{mC%aCDFE!-V)D#6OcIN=U%Y%mCF{kc;7fNh)xFY48MO+hy}BUuOQJ1 z>ox2@az&azD&C)jDl>J&wtfEmzZ#SJpE5eG)`G+K7zOl-itIBVaYK<AU6Lu!c5soX zE%cec+u0wbh+3!=v9_yHmP$jTwlSo9+X{G5d2LH++=h?vBSWm+HCFhxI)125Rg3JB zHjJhU1Z35rpOd?Tk|I6zNQ2kYCUAmY+tMe9Ek=qV-S#S7@>JX!FLGJTiXcldo)Dwq z#b&)ws(-B2#8Ch;8w||sBRLK!W&Fi(){!-3RoG8rduAd;bOtfz8Pl;U5y08CI>82( zj{7bCcv&J#qt<8)_ke0JJ2y9*t1hKtQBAMcd70$-frtZ>nyZLo3SiJyA~ODxg-j<I z2%}Akx=Sy)>B>SRE#5VTMb>!KP`J%iyMgGAy~WF}JTVoCMW!RgxwM@n1tAg}b4E0O z2#HW)v*c!0Hul$L&$A-I(NKYz!n_9j)St5Ku^5IzwA_BPXuGv|-$pYhy1r<lVg+A_ z`YA%{Rg2_4{@kdQvh=S8wpNlMSJEbh%WiBmL2Oc>hzbZzATHCs)HulxL9HczR_`Z3 zr_GpW-vPp^VWl#`Ai5^O!4`L6U+D18(E~*m*=BTN|BiMf>2pcOzWl~3!f~Vpc7I>U zS-8CyUkHaCF!WCzsUK;joK!vKMABoaV1{I>`~wRO6(?@yvI=6&bo26J#3iv)A~qAw zj-g)krDCB@1dj;9s1kux9Ea*`1&rJFo{l9{f{zh!DsDC%iIN*jCrFYvOP(XxFpC}0 z^8G#TvJT=)pu<%v97UCxoFL&Y#CWG*U4yncGV((su6>m}G4o)8y%^i|dq+M=ls)*1 zNU_YaqUV-2+{wK8T3h__OWQbNKjG4%*xcANy_kca*x*mN^zUf!l6zqg_qw=U?SIlD zKCB+MSiB&#u>Ms=3G!mBbpD_Pkj;k0;ydY`6;(7$0`mohgzrYgNw27QW-)gmW?oqt zZBbb~uLUWh+Es;>96W4RZU)BXumwMN6ET`MisEv355Vkiq=-5@REKljGHx68lZ7t# z_PVKSXV@T3Uqk6JE;;P7Ynr}e7f;KfPhXeQ`frP#R5n(hkHhWLKVG_fNrRUh{x4~J zPCD@8J%<GwNu2*R{eUq>toTT(G{o<Nih4xv0)h6J82J`gB;GPCmM+v<iVBGomP^4e zHH0JL0-RT7ArL_oYvdvYtCL_2fmnmVB9uxIq1CHJb`^_z6O~vb6B~1{En30I{EA)g z)G~#9(KM&a5i{jRv-8Jx^;3&&-&EtKCR?NtoH%=OE1tfruvE$f$#@e3X(^t-YT@RZ zjeuTAB#ZF-vp4S9HF0@3Sb5>y_s%q|dgb1k_TEGwlFlOc?Z4*s&87WUteD-_OP8XC z`0ZBFH+^2e&IpYB2ko$SpY|(8!+3%5%f6297T;sO_xk=%#Navq5&!M}U-3WV|5r0_ zuA473UvGZI{GL^|c36k3d#qPlZ?m4Ve#`p2$X;qxe&idYxq?Jhr`bDY*CH$keDb04 zQT>*H_hBw(@3b2AIWdAOXA}epwF?W6yi4}io!eWq2Xel>OUpaJ!E;+&@j}A9lQX)y z=KZ(?=iTWd8}d3a@AtZW<Q1g^mTq3i@8~@eqKRq&Hr4Ah-x$E!XxI>E#KDx0Vy=nt z@<>9@tK(VSSJi_{oUDY=N?GBoz2~|hS8+yUBodwz04fyo!iTxV@r9fi6ck{7k57<s zg%v=+w}#YFk<@uiv0i*Fb9mS=ra*a6^<5=c%<P$6S8z!jBn0(w(66|7JXEEOw;0BT zk9?ss91H`Hw}--YWM%M~U#RxF;v3P!bSdyZ+s7o+^o|L9`^m?1I8t0FBQ5mjdJ+OB z;x_KVGDzxM&Y%`j3615QaX?8`Mqa(LY63eXXSP4{6!5B0ey%Td<>!Lj5y#^>N6>V; za~zYJOts86)w|MickV(}uJ^m@=5kwAX`#2^9ZQe6IrWI2kQYTnwCc;S{9IqsZw`qE z9GA}9HLFrky&k@|8MsT%$cQi>wukvgCZ*yhtMbr7rRF4jPBDAp4<`FkV|WQ!idl65 zNkpV}`l058%qp4f>ca$(CLwm-T$Xi5D6-_^VRoV6_t;g}Bq`xg+*7VDq6qK=`0Z&R znM#K<;zA!}W=kJL@4^iz!aG*ugauyw?y6mh)I*vD0jt5d_dVHhmKTQ3sm27AVN)D4 zFA*8o+oi=9-5Vj61D*6VfeZjal~}RIaGmPS4Ji+pI<w4vr^`bMxK`B^i#Dr5CFt>< zof{BdsJcJTB&Hqu=`EpUGD%Th#aPN%&{5_H>x}NK679$}F+s`7;iHD=qCtd-v6x}` zOGX_v+}`S~F>PpF#=1)*!<S9AG@gJDQ&cXqei4qndfY?qpn8jb-=iKqunWoG05Pk1 zefP3Ncvb0_hY?(qYAWH7M=7Yw;AaF44R`zWF!)s{9G>_WhJ#799i%XPB^RFoI1`@J ztkO?<E3XtB8s${sS~TgAe3yZ)QKma5L)(=1hTTY(T7TA1#ENcl%h?O70faSP+p<cc zG>w#^+QIQdgc?W_KM}o{@~A#!kT}&;q7Y*$CJ*t3ba)JJhIk+l-gwS8-Hg|OdI#K> ziRF!@H@hJ<oPoZLiN~F6IpX5riEs^WSgk4aQI+BY9|?-el#~8=-do;M8dFtxA)aAI zNG^Hil`e#LNv)wS5@1{gZeDI(?UGp6@t)LcWY~M<XW{i;76|g0+)RzP<o#eSctBL* z33}lyXtUnk7Pu9IW_AgykQamF^)&Jx&&_x*d)rpk(w1YHu$lJzN+GhTA~T`17K~H; z6+-T)c<~d^8M14xiXMeuv~=7s69I6W2%Ut<1ijQuub0EbTvD0T?@~j_UZBfFg8(&( zpl)YF=wSi^+o*DZ!=e#{M0Bj&01X1zZJ7ub96M-@+VN)2U-mU)MKGEICYi>7l0*Z5 z#{}GIfDl{i#3PtQMdMtI0tXLpRjLGHONhWMm}G8`YDG}U{2BaA3F<@>BmEPn5V%uZ zwZ*v%JB=^m<2kTSBGKSMBC!ILg6#$&B4N4d6d+|UqSKtjLqZ2AfR0F<6%rAng?kv% z8Cu{uX<VK~o|ZUY?C26Ks`znI39B@#Ts|hnynoUp9u4UTV~ti8*S2tGjC?-$ozM>i zGsS3Q=u8IPJontLcgbII*5IGqL~i`=`X_x<3ZFL@tMa;a($*3R<_{4ADSR`6yUByv zqsWImC(J#@I~f{diDa+nys*KEL__!}V}ajG2z9N7uZiGAAWh2Ch&@!4;36+d-NApC zbS0>j+!T<XB>KQUMnABn$x!+KFV@~WN|NlZ^R0-;%t#lJ5oscARaRwIWtQvetjem& zYFFK3+RmtF)HBm^Gp!kEBn=V>X&4ER88l*WD;6XCuJ9mqw1^c579P6?5X)khHA2ff z@XmsO!|ua8+|d(o(A2!o_ukCv7H0q0^RlC(!rZv_ckliAU$KeaftOx9+0DVbu|IJG z>=neidIw6AEMWYKM*z!=@pWCW+*Zwy>~s^{o=mzqsL1dZe$R_^q9LX84ft@pBRg_c zg>23k2qU*4NZ^oxAUIPtfGbS5Bd9J&ea`t|d;}_mensLG*v265s1qGp-ivqup&_*u zmv)h}v^AV;(~Op>vp%I)F^TceN>$19nQa-IuOh9YgH1j>1Wx4SLv$MoNEvS=kvIH& zyyL>2BPaA8Z)O7pQSyU2vBm)440dXs^9wi#5tYZs1pLMAh?~#h#UkYqL5ha)*zi6} z0Uk%-MUuhG(Cdceqy#fYB2uaPQ@Mt%oa(JBockqVg!>3|8}mf}@tpa5&@TF|%q6O+ zL}geX`b%Gn%b>3~Go09!^AI@D?BV&B%SVaqkp<dHjL3?y)o4+ZLgqtKae}7-fr~ak zMcPJi9Qp7om`!A+FknC;s-pQE<IfdYYvOqBy-uOv;r~_7sImfP`{+UGmX0S%R@9A+ z$|_&`F%by$I|4vV3VOgiv0y<iG)Rvyyl2fgUkY<dfqGF6i7`X`oEPNs?Lyj#lQuBH z3PuM|As`|y1yzQ$;MZC1#3Lb_dl+_6=F<P<(){B^%6Tpq(V?jVd?BisDnLIIDGMKy zbOQ=Dj8n?NSBiYVq|>4Dpl(Q`OPOLFN>Cmu{R*;PV52Y}E?n#fF_DRa`pH^zB)y=3 z)t5Pf-c%~5qKi?JXyd99Gm)OAT8tBaSngr6<_jgH>D&oe`A#(z>=FX4jRsV<Nc=_3 zANo68^OI3CyWqFB8h$g2-+ww}vy|`TgOVCuWwg@p$(zan?*-}yU9w-)>sXj~Phm9! zym`bY=N(|tna38sQV3%+-2|=ZR&5hjjunOxHUpAsM5&@jq$B}cP?9qqYRiIIj?t?l z+!`at@TYP4!>W!?1-3dB%@074S538u3UT&aoDjfUrjZxfM6$&Iy*~sy8J0po7XO9} zy_!;{88E|P0_t0-0+~#7J^h)*l+})afdqwO0^;6NY62OwnYCk}7!{+tOH`+H7zWt| z&#MNlbBkFy_%Z#WKGxC(ACi7omzy`U{HK49%jIp4XPP$pamz6BM~meD&d(O7xtjDI z+{*TIoxN6?nA|AJ0Faq<v|P)SGa<t4Fd^6$ihF+1FApFL;PRxrj}QQhUQ27<!d4C9 zVFS-R(~5-6N=w~M3#lE>AvU!rX@RhFH39&EK#Z{2ELRi}5!ja#R>n1h)ixu*dO>5o zOs7D^KGf#2VGd^mT11#TB!?euN)u4<OXaulWN1pv7qH4^uUQV)uFkU=q`hjx>^qTL z4zmJOvX-Wn`A`{Z(_&sI8-2<`q-#3J!h&v;hR%k`Oz?B_)}cvSQq53k@U(zvv0@2? z;cI>@d$h($VR{W$M`Kp!f-W=MK;;K0FPbK4-z0uwTuf)nC2SzbP;*$d$f;-`dJ&&U z^jWt816^GZ6q_yW%3u!0H5N)}sB63TxlEsm81D#|atcVM3R4YJZ<<iZl#y(K(#gI} z58L>GY@<t{!e9hO*~qx;!+}xSFUDa$$kw8I6UAKBm<CXvOnULIL8(h8Qb#Y_k`4@C zb3+d0W~8ye!w<`6CPWs*EAT*EO7hfwHOn8%9X&&veb5hmrG=6L4l)IR%GOlq5c@3S zok9mu<vN*4L0!gs9b`ZgC|3&yA}$|`dMe1eU1*g&ER(<+Q6M!KAb=`lLl^{7BJ?&W zkm1h68zvwm+Ay+TRr{z0Ed8`xS_)`|94c|4!u1uL_G^7n!ZO;lV4lc7fF2dhH_^0i zl!|Hwb!UoFevTIXYvDp9Gd1tr9*=2buCaoth6eO%rbkRtCow~0PDW>JE{C1@FJY5( zNYukO;!Eixk}`+xoetvrH6%-x+7!J5tpP=|jpumrsSK5=3rI}Qkc$&T89`YnrAT3n zqzzwT`hwSxhA0NeXq(UZ5QP#EXC^OEDjsTymM#_5F9PWfFB2k6$lQ7S3SnKa3A!@- zd)M1;ZZpJ5skYzpOPTg!cXD;TwpO7>3u~R~W_{zU9y~}@SVY~Z9y7NTyr@I>I~(1> za1sA$lDnqd`C;~1G?wRy7ZhH6?V!snPKTL%*>9T?oGRW+<6L(|**EaP)`=h-svC`s zuX)h@rF|-N^~+STXRlGQ{iU6o&)kJmu;y}+7$Z*mzV-F16Jj6(rYwi0b61WYh_`E* zVtVhMgi&Uz68@MYPG53mef>&;_IY7lejd+WTzp-eY(2;#^xBK-m(gzo>&{1m_~;KQ z;_h6OyL;lg?FUY*U)x_4@&Zg}GKW{;)k^<U{sexRaaIKOcQDT1Jooee$VhvzPs}J- zrhz@<uoUOtFiehNK;*U^WtiEFkL6sB_cQ*)X0R*O85jQD{vFH)`w0PUL}!i-FA?#L z3e+f*6T?c*wgNg&l?{{vk`-4~Q+@zN!{T%vzxtk69~`{;Jy&Oc&wABjaIw*lWnL6t z3QJ45oIxKYt#jRO7+xTh65`=TvQ#WqytY(laO<XNiq`%pjtNWJ7^14KdClfq4?@Df zHVTDK3M(Af9XTvpT1XKMI^SFy&*#w#Y2&U5Uq5aXW7DMNoZ&Mo&~|m>@tj}py1#sI z>%CJb1t{Ko>)?g&1IN$wTAeGs<<+EtcbHDTh;BEYdqNi^WWCW?4Z}-~>VBiK(`s~( z`K6W_QHa-6-VHOm`JHO@(!#>Q@(%8H29K|1dQti5D$3l|ORd%=ynkfwmK0L|RZ=L2 zJ?>i?c=pMl69xR^&8>Lh*~1pLbl4-|eFp@Cuu@6B(JOZDKiGN@{=R%~5<BtpiJjP( z`(5Y1IRB3X;K!VL7za}piGi3QLOSsmjC!!n+}dk<Vc*Uk8tV@wfaL^hM~Ur$k1g!y z@Qem5aORpPOm}#T@Y`y=s>JMu_2%ml*XB#kBsG4x`qh!xkUX(jaAu+5Y!(^;p)Od_ zwB%TAG_!6=7}KxN7Oh-%{n=703@>gZ|J`t5;Mb6ujQLoRxUwce*7C<*!@v66hxS%y zn+zrj7v>t~uPlh{?an?)_IH%foZ$mc-;hLA-WT_b?0IgVjC3*C5#R6lELP+G4rlX9 z%w&53Z%mA3o7nUR%X5Fo#Nz{&VKtPl;f?VNr*87-Gt*nLDAaW1pR>lMlLvQlu!_Tp zElXCMlwf~oE7In}E~cHvo~QegUK~FVUNB3iZ}`N#<iw<_fY)fdnx>g0HapnulljOb zGhf@}u7gotYmIs9R))2;%lix6HlE3wdr6Rh+HODm)(c-Bw~OopdbhlgjdL3}@Ik2; ze4{<lVrpdk4-ej|GP76qTJ6#k`*(JpzEiEJ9$A@hXJ_-!Jf7CwpgFfswhnrC$Iq0* z)|6~i{4jk67RAD{<2-&3BhZ|ON94zO@U<UXT)`H(>km3$blC)wkX7<Ec-Bw0*rH&M zuoSSxq*BR+UFR%ae8-Pecih=agACpA)ZB*{f$$6urTdrGSFg3)u$*6Rpu%wBEf4P; zg`imZ{KEc~)y?Z@+wEUC{#*!|t2D<?{x>dI18D(OPcE(A`*<qVxxSS|(IAwU$xK3h zE+q?>4p=RdftEZR_UDOF^)h$te(Bu3=&?S5PU3TO-#GVOCc5K)xMMYA<FSWjIRp2z zgH6!lB3v*DtyoaFjhPj2%cl;zxtF#gQ)bGUCkZN_6LU{`Wr7aP^t~~tR~fvQM8F!@ z^Zmr!Of~0hVzSW=X>(FBhlbBjeN_$0aN^n$an<w9AxcxZ%6uOBHJhKW$RX6ARmixx zyH^@3exb20rLFP+@A`#789Xwzj%M4n;d#73WllDFem7h#z6xD6tbIzAR<?F=@Pl!= z+iESuQCJQ>qxcl9E6bf?koyo!tyC(0Jcvq5!M|EqXpFFk$c-AGEoOEWH>#sjvG~ED zbbqq|(QvZzNIhN47faP7-@G_*zrbH^=kQiI>`+0k5*EvYn9zEVF@+W_$mCboi@8mr zB2qtU->DUL3bpxkp|t^y?yroB!+fvUXlIM}<0K&eNVXkeK~yA6;_yr}<G13@Qny`g z(g$xSpjjQ}=G&`n=%P$Mhjm&|47Q@}GMY4~4MmsYVzn7S`&5G`3t^$(FI8Rv``PbQ zhONb59oWvls=QmxWs2e8Ui@YlKNLUXeu-P2J2UqabAJK^`4$i)KAFLg6?{rwVZ=y` zmtcp%H87=R9K0C0!HR@3W8Sgo+6&aU5d4&!n&c`LGEAoIl+$8Zs>S}dSxJmxGDiS( z{2r|9ytCJ*HWG`0dJp*;PfkYjj7PYss)1fkb5J2u=g@@40xO@%Gi+-l%bOkB?rUL> zX7SPptKGw(4->r%3qOW4X4QhzhIv~g(%#2qF!U*5n$s_Q=X`ZL-3`j+pqtw0;;`?c z6Bpa~OGw2E_3V|<loXQ=hOE(bcRJu>em%ktJ8HtKLGN9QXg!t%8}X_azONg^QLz}i z^%6FP>>0&4SlDp>Bda{56W)n&CtO0UGE>0H+AQVb`7uF?nL?EHF$oNEFx+|bHw_dX zaiggf8j(O5d&#)mD`ATR0~TMtL4aT3EJPcgeI0j;K;JlqNnU&LgKt<rJY0Xn*MHus zh`NQ!h?wEEIEMpU*u>-o#~T*73)z~g&O<B0B7iCH1u*)nesdLm8>zarz1r*7&mIg{ z&$=k?21^&)YiHMA@B9gV($Zm?`a`GEi(qE;Vmd-k8<)y}F>9}=Q1DQwVDu$H$}Eom zi2Gspopbx(_)nM>?)Mx;k~aIfl~Mr&8g+pJU?braU}lALR@iJLON_U)_zX-6Ho+4F zs|F4YOwI(x1}>%|swuS0mPPa&l+@t$7SM#G+;Knx2-1*m)p|zywQFvUr_k{NJI#sA z1gSG{my)E-;<kdw@h3EZukL{G<FaQT`OXNUI^|&4A5_9Pf?k(mu$yk9IVZZxa5}so zUu(qvH`M0am8~>-2ah@n$<b$UB`Q0x4v}PYNsF=d+SUA0-uX*Ls<8dY*^||JqgaTm z+5PTU?ZAXh#pvc{v-b=y>?C;S!QT&~8=rmY{p*rsIY<ApyXCyeb52&zI<JRGmEXU$ zw^eE-VIeAon}=`0^Jm&$eR};;CN5>7PAeX5KYAXXyP0$T&Z`gitF>BynMAUE*R?aa z-P7)z8^8Q;l258Zks!P~_uLvuA<umW4g=vtiW4H_B=1u*u^hOCVQX{%B^yH~aXnWk z`V}ap6*PNM!o+Zwfbl?MDinuQZvJ2)0mgn~xtZh;b!1aXc#z=P6#ZUWk?KV48fuop zbl88|{Y88o<>yNvTwBmfn~rlYud<h6o%pTQdX->C=;l_Mn}~5PfzOQMc}%E)csy1o zs~s3`Zi>a(ao?J4thE~Ax_J4d)ontG@n!+3QnJ!)U><^Z2X>29+}rj_xX)y6<cS^W zyC1^$%41kQehYp({>$8dcNU#(gzeDBj!}+*4*`6_u+VZR0k9DRZ%wfR3&XcTa6!KH z1+3QNGjKTrx7$E&fOY5@$h}QEWAA1K!h`+cOtW{$*1%Tpt7L;DKwmR6R1<p`N?6#1 zorF^GG1rp;Vq+Q6o0^%JF3dnt<aVmzF@KUVkIje28Cvs8Trk@UwRiS`axxt<Z89I$ zA+BHo&@xRx9^lbhS43RI0*g$gZUikjalaoXFY2q^5&Gr$L$B=4uRO5KVzqQ>zISb< zJ&vld>d-AsB8=|CdKS4WG$&lT02>RyBdnr->>-v7dvV;wdnzp9RPP$Qditr_3jVgB z&6n$9*}@NlNd}>f!`iKRB5ZZ<o^P_k$352FT+l7SQ9b%fd;k}*%fJY`3}A=Fm0Iu8 zQYpzGIt2Ps=)rb^Rk6{c<w`#C@IRhUb=K2gR6g58Kt*gCJcj-fNEF<(uoU&;2!Vr^ zWI0J^qe;~eEcjqBwT-G*DVNsj!}}K-!$Nrw;)~Z`i4{07NSy<nDj>5fr0~@q^eQ*_ zDpz*0W&b}*HY&4F*R5rpd9jN<fBTIGO4lef`k3%a=QvxD_tAE}bGf(mijDSO9c5ZP z9-#^do>!uOvqUV!Yk*S>y63x<UJ)}BuTUs1mAi-COw{D9^VQi_Iae(-M)i${hWIgI z`M?@GIZ-FlHh$n2CsicPzE}Lq#$Ka)zK;{roP*uzFJcJjRkH1K3%JXlKhvx<Qhp&1 zJHK<f18=Q0u9Oy{XG;qqu2S%L=>)mneTy*8R@?8YBk{l$bK<+L><YdJmhM@K77&oQ zUaN#31FD8J$aCxKN#|52Ot6E_bq^`POV=9J-9^Osg<dqc8*OlewSFI_EVPf9d01;w zlBA>=7+p@f=8EV8CSaguF@%+$p2YnD_ouNFe0=VU&?Np2eBDm9h?%stYHf=B2%kUJ zx3}2632}F<ek8KkOr3c%6%CG8nrSC-XXc%BMudhhS=CO<^<d)iNVA&njVd40RK&e~ zq|M6AYRL2Hhto&gU&p#WCg>4x2EG$^;;0#<7tcQW=()vI&?>>gX~ku|P5FyB4#D4q z-{=Fy8_Q7vCQzZYvVn8(wHA6PEx<a}sbGy<AmGX$qEG5!$UrwD^D20Sh5BEX5%3k* zi1EFEm6;c${-TOY>>@$FFagQSz>IhUe~8Pj46!hanYdUZ(u4a`cwFj4#obSQXk#N) zUdUtcpLZ7zU-`;I95w^cL|Sj9UjD&P?BZP2z;~Vi(wmPyzquSjAg03Q&F9~|m~Zu< zDGzWhU0uMWCK+VhMKF2L$PCwim066Cpu_b_2(Fy^baqv~2{QRbF*jX%mx?yYf$^68 z^WVC!asN+voNM4f_YtG*ALC`mhP88u(_-<oL$@E_X$QUc_gUYuq1(iuMnAGXto4QF zXR0`R{oD&Ms@qRYj%TztjFTN<^f(xwUK~G}UeqSe_W3V-Xf%503(wE~jvhW-Svh=o zH2b@L_UyX(e{Hh3IJvgIKK;9Y|NZ;=|I-hAplcAyW|1A4jlEu2(qA~2JP^^|Y$F#; zx0~uqmoW8O!qV<iK}_T{4`7&*LH7d>xW75N@#YJMZ@DoV-FVBP{=V?X%cd$9mX|M> zDlI$rPpfnG$;Exu1}oG9{oP+Y`f*#M{riuW8;hp2fBX-Y37H0>YIpG;Ig9mZeC##d zf8+k7G>vBxiMll>w8KFx7|-zRoL61`vRjk>nHxI~ENx!e-oCWC^uW%IGyTb}FT3pi z<mA?~mk(a|$c6GJgR{f!ix;<t=Zc@KoPXqX2bZ6{H8J*zi|$vtA2pF%=fHAj%s-5( zXOaiF*(RPi;9@z0W9N@>o8P^9Zmp0Ty!6T`%%%2jJh5KeId!(Zcm4Thf3?(_Y|VF; z{?v7EJ^TDJ60J<sS}ddKbMT?>dJFxw>HNat=GLw2I~QL0<Z`d7dc622?)%+8#C|`f z#r2v$#DF@z65~B_=+`ICmw(-V{`hmw-Ohvm@|p2-&ph{xJG%aVJ@d>@TsZpZ$3N~o z|B{zHgLlL0CZFGSU+I2kZjpFqa|8l}xp&er3s)D954Qz7gP|H|7aamX89+ZXML@a^ zTnOi{z}^0$c37)9$@T4r&h<{-c=O@mn{S*v7-c?^trqf?Y~++~{AjY+t^eo^E~Cxp zBT?l1F$4b>Nm4ybt{3;O-`eF9!0FA0cfWo8=r4W*?`qj-E4;CoB#SrrB8q;5^IXW7 ze-O=%^|@EiJq>03ALjns++QK1zK-1Q1I`DXA9eoF`3u@(sZ$UX)>m*3p&*0I5S+#0 zUs`LmwhIg6y3QZok=88qJOx`3H2}+b%dE^MC*S5rGU+bzofdBuA*_f_(n`%fX0RS> z{5UOQr)Tj#t?_(AYD$3UhI-;FEA`qZMjLd{l&z!vW-PWd1qqE4TWCy?W+Ry@s@o>m zO=GgHHwy+)WAm_Ig^VajBq$gdB)OQfD2@t@xBDi&9BNou43#oZz}QHF7Y^Z~q-A%K z#k}$+304Yfo@%7l8kN|pp|))C<a}I^!FlyjHB+}`h;4wFk7n790C`mrR9G3wDKlI! z^Sz4WmY4WLQ}@Eb=FC&hG>Btcp-E8p<iWP{73V5YCi#kN<Iy2(O`_u9!t!Qs55fve zB8#;ev2Ds=S#fp2dE5EZ4_|mRDCbj1tQAEPZj!UJdh*ojE}APCSmml|bWN~@#DKZB zQqFB=!THibK{kk}T<oX6$ytrVL?%{H7(ulXHR@SBPbO`VTW}Y$rwX8cejZuRGRr2y z+QLdDpF3R%)1M%$B?RRfrR0&}-OCD$nJ9LLxL+%s%R~QXptx|=K*OO~px@Cx$!EV5 zkudg_gfRps1O3Z+bu@9Rg-o}PStF(5I7C*%#2zBY)eNjUAA4`)-y)D$?vW@LzyOM1 zK~QK?r$}YLm7?TX7HXE*KX6Gz*9p6Plwxs*B>fy|vmrB=R2+>AsU#w-r;{-Rt;qic zZFB!ec@2MxPJTb{eph|9j=X-@T=;#gQn9ZV{f2fzCQ2xO{?V76IDe%LH<nBbgsrQC zPddf5s5B{F7OqW2-SyWk(HiVj!Q+bkuzaR2)qpstxF{QdzhI+H@FCDW&uR5fI47IQ zVhc<Ye-$Y>9sQ&bRl_nWRqS5bD22u(FaaERE9VxP;e7?n3)RR%4tv1hRk{27gaF;h zV?`KZO}bkzIhDp%lq)*kCJ~()g?Iw3fkqxmVJVcMf((2l1|bUKYq?ZhSVsq_S1b{@ zXxXam6f#k}h*!Syz{$?jqq4du1d32;=v^t3I5_+yglRQO<=2aapug6yNEOH@98*}z zCfJ@UFhB~6#GU{EtJb(u6VkjIB#eaX7J@1Ylf(kaAnK=e^miJ|TKEzuPat#2Wx<Z6 zG08>_FIGy1(k6g+Wt3UOs6wMuv<-?GfUV#I8E7^WM_u|!;z@b#Bg6@gv1$3;^c7G; zVqk<2p6F#(g2M7r-0bB0jh5?W%0bPC<Ak4-S{XNz0>>G?MU>EwJ0D}WdfD6$%>9lN zIPykf@a1`Dd``=s1b}ItpiFHYP$p9NM}T!6LmXBDdsrmgd@wY)Gpmw(RCZWYEH&Pf z>l)b*m|Xa3%A}NS0Rk|x(=%vtv&vI2hh=EpR%%APSaMFf145q4V70~~!)nSJBm93} z8OTHGOb2>6!~4a=wH7y2jf$1f(^tGi?$j_Lc4v4fe;|hMI_|<$z>OhHR^NKvtg{NL zjC1;E1Eb+5pi^82PeZIuu6y*O((f_TLmDg^3}yp9G6SY8;#!7`5jI*qMu+Vl`B&F+ zFf>X>0GEQ)qa~(wA`AUhtr4CV4k6eT&-_?XF9<pZOh6&RQs1c6(82S*A1)B@d76i# zla%^e2jrRt5P_*GrJULb$dek<e?{HGsa7AU)}k6wa#>WVbC9q5{z){9SSkrOjq6Ta z@V?A>zZOMlgwiCOSVO=57=>oa3Grt5k|irz-$e+|kK4`72oeP!n8Hj`;m%pk=Gp~; zXk16Tj&8CKpu)=pRN(~WM?Uy}t>Q&YxyaBp$`WdYcQ&yo1Q*|C<}URmq){c@R(XAM zQ(y3}INC&xsdO}_b<ip=$R!zf7hHFFusYx!0cUU+!h(d4r>NL+pG>5BYO1=}>zVkx zU*P_t`&y_E>sfnlZ!#R${r;Fgz=Ypl=?}+y{o&FN{m{EV^r3hE&=394v(EKrpL*(9 zxBI?>fB!oNPVxnRXMRWd4}9SL53N6J^87jXXWWR$v@y1@!hVtSE+Nids*U!~fB*qQ zvx{MEsnXwD@|<h+OHRFU@#v50m)>WNt>p4n_vpWU{0E)M&pJQy*kf;h?6EI?^wBF< zo%DT2e+#Y^ym&O%aR0UYQ_inAe@2sE;y&hnh5IRQ(OXYHo&K%#pJ#qzMllN&$_$t( z`vVSZ`C(~S=8jd}s59~8nq$BWu{edDinkM(iFTVG%v6(D%}j4IT{WAmjAJ&9NnqCp zd$u`)O^DHia73tz(KcY2u{p4wV0C8_FqNsmv~ETKH?xSFEjm+%+>AV@c&Q6mZk~NO zYl)T^u4#Z0^n7#6R2I>1bAv%n4UTVF8cc<>4#A(Z`GB69TlL8CTh&<Dn{*dMRN5Ca zlbze$V|Z`Kj94Cry?rQ8llATdH5&$pLU=?A%v0SecCZ}=Q|Rtw#Uh-hhxABQ>GhK; znhdg-lH_t{Y*~C$!INznmX%~n%Z{r|Z=0pDW(HLFD6I!TL@G(2V<_E-q-N6Z(O6>r zsMEOcG0LH-=Dxo>IFB`w#z=KC?g+S0wInke8uYwx+PUYmezIxM`hgiEQ}As_qGPEa ziX>*30YUXSRkRJ@TZ{RF^HR8Ni8!y?Hq>Gzg+odeO_!;nj1cD?y4T>p%3=VQMh{Ic z)Aq0{)J?H<(hd2@tn<u}+nq%p^U?7WUEd*gQ-Hfk9iiJq|4w@S;RaEmhyHoDj@PU% zYR=|gk3X;;>UzbQc9D;=GCgHF+71cz(p%$v`55$>JQndju9ZgXxW{dSpaK98Gov7s z1a}t1%t!;AS^;RP?I8#ud%=*?>YYTDu?I9xNTaCJXh<4a7G*TLI`3;5&n{%#X672( zr=8w*J}U9936)5OKoV&fCZPkfegg@xBWsB(TP}XDc}SkzvINW?s>uKYAZvymc+zm# zk>V4^1=wZce=dAOwWvy@qzR@hgBak_){tAK!vRnWDaUQMla;=m&O@7wN?Q9}z-P9q z)C5pk4OF!Hp+|2h%(s~eReAQ-y8#AP5OG2@sDu_XDgTJRGIg@OrfHz;0OLErZdSJ1 zPx@KkY1rh8zyd9~SiDB;fmsse$~q3E2nbB8ZfIt*QZ=j!9>a_!+a55&OyUI@8n<Yw zwx$_}ormfjW<52Z^|D<mNHDGcM8U}U$KO7aVEXTTdaN1X>dl5zO52H`*>c?9(;)&J zzENl`3}C#l=G+XD0PKG{D{$kb)K{FZC7Ym<g<=I;GtXI!%gs1G0SV$batxo#o-3gN zS1Muhl>@Vm>Qy-3Q6rbF1R+dzFeDU3@uizivMBo%h~Edwgo-A<b_ng&kAwL_A@Si^ zLJ6gCrQ5-V2kHtu4)PA4s_7CAwlW126@-rI2LXmm8##h7B(N<>-$b?%jtt~OC(%e& zfn4~#RQH6ci4^1qf~c<{8bE{OrOGGlAYO(ckuW{V;duw;4kJjwqY$+et5>DCK3JJh zN~k(x+yo9px#*ZfG8sa1>a#&!9Vmt>DIM6La3m^;<q5>0i)JnFXa<%fG*Rdi)<Iyc zBH#GQ&V|BsNg`x_dQl_{1Devq_VNG=sJR!#uBTOcNjl`%CNWqk*|@lX!I*_`&9RK% z5LMt7S#<yvg(!t`rTyTk7!HOClmv||cA~1R)=`|g)G$JA{^Xi=&!bmKI=yqSiBd^Q zF7*JqfhvPhQ(N*-h1C=%QI}Cb$}JI5fL=vztLHr88~qpxQS2~R$wua9m=Vx@V68kh z3FIG|D2qzY$Ussv*OZt{$Qm@8a!ntQFE!#bX}7D}$bx!F)K7`dM|h*UdI3^e4U_=} ziZ;a{2a!Nn;3QNSNp8AWE28c|d}D&Q;k37qBTk)H!11qFaN<lQOYoWk$_|yVTrR~5 zkc?>(Dj6Z9GRibD<`JQnCmI~m<aD_a78|rFh2>YJP?mrpQ>>t1#rXS>D!H&2REYJ= zNU39}Z<$!nnL<6t)$_Gl3<N7Ub%ri7gn___|H#_V`@mujfirqNOehRDQ2`1)G#`j^ z+=kBg=`4DcQK$EDlv~T@=A#I+3!nzC+n76HaishJNA;tzvQkHghX8Q%2$+B$0Q_(b zr4AH9egQuuAoPdk7I{%K!x14Lv;csz5=GiUW{yF6Gg|6@3*<Jo6e+k!chC|jV3{GX zM}ZOl&G{VF#08M1g}5!!MAJ3&y1av?h;`Wv2$q*J@c@Asaz^BWs0H6(qWbM3Ks^NW ze2iiYk^W-we~_kAJyRDk3?Q*!oKS`_QZhB{n|4xDRaYO-546EtGa+QAWuTms>V-xC zrZ;eLa1@MIk2+DJb>NMn5%i0TCf*FImOxc7s-ENz@J<Sq=DAOsfyYt0;E>^vk(W3m z4&kC1o;oc+luy0IoFFePeY6XwNiaCV0+L>2hNZJuW)zAYDjb$J5g>)71`Cd#MXkFX z$E$e#KsQZ3{2~IslpGZHGoe?(<SPoQ5wRWuKnMaDe<|f8s#UwCAV+M|YPRBH%9YI) zyf{_Phvix+YSyAo86_eE6eBIM`pF|Twn2!pim7UnY<4=UjRvaOEU5^hppubnrJ!V6 z<#G$!{2FfnV_a=!QOZWgqu3*?YAV$twkI7b&*S)k6Uhr-ij?M{{+O|3sYfHK?pLE# zgu_6Hs8hvm)H17n0&Mk!D_b>HjulMiW^^2iQ1%UH6@dMVG{Z?mM*LH?MB9qu=F$k! zctAqhLNX;Ww6D$F<f6ws=QXbkA*?g28b2u#Dr@rPFQFhzCMsLqqIC9wu7P{%u6L>i zd2(UuV#I*96zzuibEA@o?=v0hw6M9jIO=pbc3KL7!4}ARtp?-g&D`rm16aaL^;9E@ zGVdtCmT%6aQL+3?^QRRs_bQc4?$wTAcndf_ou*Z?pW_R72z*Gf)Qu|en`y?TQt&<~ zTq$QAKwE9bdQ7*d<vckCDBYm5s<(Vesjj=M49pYKsS$duT(~lao?y6^QA5q+yt}1G zl*vh{Ls<jKVY||EWokRE5?RCVYapuC8v;a^Qwqylj__r#ShiV3-pwlHuHNL!VU&e4 zE^D?F!9=2JL<C(l5^x>A8kKj;WulDWYERH2;6(dYKl&ytvL`A~35u7nSr#(Uq5=Wu zfi<${3p9e%EcJ-t($H2aORMy~{!@L-YWA1qa=uI|>MN&<no}qhmys8TMdEpeq{3{2 z;^cIm@rcxCYWlP;%2%K3sm6|erV8pUZNw%SIE?K&4ZQhGpiEElPfzS2aN-L-qkokT zADi!O0$XQWsJg=pM+P7^K>~Qo%7o*4IwhZ1h+mBqg-mnN1Dl&EL!HD%pcFi(!?2EQ z6oC-&XU$AjdL>mFlgMVpHB~UpHE+x-kT}y8^M-n<Jv3e*tWKjvbh6D*FhtRY^)*n= zELBWc!Jt6>{fwtT-<ANMZT6XZlyyx&z#Ih2v;}Lwr$*$Uv`iQvH@rgP4*a`TgJOU< zR!6cytGJaU>#Y`MD%I37F^ZFN15FlW`v4$}y|9{3GG#XeoE6@gQi^VrspiWp?gVEp z6NxE{9`a(50ZK)tlZY%chrEC8#UFP+>(#JWkx%M6vfMsTPvS}L%-mgbm*-xBCde!B z8T}M~(cd=r&bhCi`?|SroBPhW56}H1KIZ<@-0u<z`ES@l3q)LPIg8E!1+_gGxp%>R z8;*K4q7?V4ea@JG*fTQOQMC@)(i<V2-NX4zeK=Wn_I#1xqH1=k+Y`UOyR*k@Y%lut zF&dBN`B-1=Zu_FSA>Ks%;H+fNuh#cR+?j7genRZSQaM&Y5Zwo{1XT=O&C3Z7@EId= zy>E3G2=^o=jQs){t5zRY2AOS4RUp4jD7vMPKy(o79!j6SXsKZ>y)+?&8FA|5;&{8# zufr?4oeR`BHG<aNLy&APR5Em>Z{jv{7Ew8z$jJy{6eTR>Rva!Q*53|l9)Sb^9pJ10 zm6Lu5Ou`!iGsY+}fJE}*9dL-t!m@Cs4t9JCR3&wjw0)5!9_oBTlWL$1L}PYRr$8;L zcvFPh)Bp1z;T0KaHLHb$59T|=VMqV#y<T1aH&8dK{lOD2>+WA!zww&p=-TM$8@8{G zny<OBer3P=vL}8P3-Z#@``!Oke`Bq^aP3{Uo__D$(ddnYYhB#hTGan-*Qv_@xoNBe zn=ygpy;7rq<jJqz1wvadE>U9wy{F3nZaKA#J*pcz-#`=4oFR-dRW~NEq9;>#(^C2a zgbcUscvy{J0q&O2OD=ZbO6TtI;36%JoksojOdOJeps7<>4#LJ71TM4$OE}nP>=M{r z7+uakk)Vz3EUeldSbO&p&0lKNmzF?oo#^P->j#ayPM=5@w#Rp)?|*prc$>g^r|)W< zYWxXPxY~U3-Y@>{6MLJRdnb<m_})LD=_j|A7Ps!FdjfU}R>@+-aHT6_nu>}#bV(D; z8`lsC#_LH#=x@0}Q=2FqOHY37#ZS5;_p{iJ4VZ^>6&q>^KS$o!GD}KM+()TT42m=2 zl5H^jCXvxY7fi2#JKno>{_5f>&;3$AUU>f#ThBX>#drkhx9(cThUMPXqwfa`9W+j# zX$(Z>jURq{wNyi{_s4(w*B`sDb)t-YXX;npGd}`pI{nh*>I>g9y0_OneY)Pecyey= z;t@JS--FK39y-%cVi);+bN_bkH|PEqXxnmL;=IXuuk!=W&pW^4yy!NtA-U{6?*0pO zQhv+*ORwN9d*{5H-j{ga;eE{eHShPmzXP8cr=(8`x#&;%Aes+%FjtuG)&-K`jL16_ z3a4^gG(>iexM=F`$ts5Fk>R;06Eq5pcO#UZ<;~vTk>emeJr=+pIyD)(9h+}0IO7?2 zZ(H66#rfKU`Gr3$7*5kXGlq$1%H#Dm!GrZ?Dt9v?E&JhlC(Y6aqtvKbSn->Dw3%E< zf-T%BDV9^=nS)yfa4Lg4RE3SFqvO11?xpyMIv-aDi$A*Lj&iqYsI98;F)NPNU{{=2 zb8JstTG<Scy7h;=KpMC^V;9ojrkhkS4$Wo`qPDF*JWr3ag;jU_w!Sl(W@*@Jv&xe9 zDaV_!xL|MAx*qHQwgM2?ni2oo41su*Nmb8gZ5bO?LF4fW*if4=mK;iKi063A46}nT z-)9nN+QF}i)lao;lVx!@9A%W;4zukz+Zn9tX5!dVb%uv``^L&UrzM%MZ;x_)#+IJS zRj2SamGxk!%`lnzNGv<Gcd@-So>pWwN{CA>Q1iv@QJq!;e|%JRY_pny$#hK48W_>A z-G&A>NtoPtNn4s_rD3!(VVZa6cuuPUvwPI<Ns^=fodP}eM-9dHr&S*kFqoIS`#|O_ z^BE{umvb}NI<BYr;=BNv%vBM<U!3ykB#^%{_3o@Erh|eH!Ov~4X~ONA-BJGWELA5t zANr>EEc?*DXm(`EC;>o~=Zfp?U@huA*3A?NKvQY41F>g_V+C@)BnBZADyt)U&}+{9 zXakg2^K78eAi+e(Ny}jZ*|0`O*r$L)IcKl%Ioqg^LnjqP{c09rw3}~<3&lkp7G_zj z4Wq!p6UQrT|D5h|RnkK2?0fM7nxj}T{3*}K<-u4^Bw`3}{N6i1;(6s0=u8*xT0sy@ zhHjw(22dvaalne~Rp#M4wMX?->do-l;GVG|ZV~Gy>klqMG#n8oHH~fxYyy~1DFthB zoRwOkjzvU?3b29R-#{aTjJ<55R(-jTV}(L#85+bviS@p|k8cb7fY;%^REl|AN`d3S z_vkW&u%v3i@+Q^zXAb%h{JO>3LC%ZY-D13m%E=9PtBR=(^)B@vc>;c`m#<(4Ar1)~ z4zkUiZ>Riu%-h`0PnWMY)E;PgI7<|fE|jDj9-%@@T^jheqLT~mS5S<H9YwK|V0j+P z3&6*CpYe9_YUQBEboC&giOa)ROop$0-4n~;82L1Q%oZQn%Y({w+U<NZ4_lN_xAQc^ z7jqQ1GeR(&{6g%e_Q8h2O*DSt$;6(R59kblgt$+ri%6HwwbAS?rE*J7c3digIHl6H z<yhS7jPrKBD#1a6{Zk9z`K*?TZ9H4mv(<HIujRu9<%_emUn!%i4+A!V1x>b&a}g&; zF<eA6wP1lI`WEA_LS+lwJ(qH7g9v_FD%HQaK^@Ym<~$p;^EXbM^J6S;@WEi%x0u~K zxQqdh0+PWO^X&dfG23`WI*-`^7M{7m`JPyexnxjEVVIM}iwH;-6v;}d(EM6hc@zdi zv4;OApk4TYyF!P<{&GsS<-n3esm2B&JY&33EmbvEIWgV5G&9C|&*%V?DpqIs<|x!7 z&FTa(WG$c<Muow}Ze`TTt`m>MFjR7tRlo$hm58|_-88B$WvMjo9@L4o)ffh2n|OBW zkQl}i3`=a{Ixrql%2HFAj<|T^uUFcu;%9<i&Vk5TtcZE$p^}4|7p+LwaSMJDvoOXB zciI>O<jOhufLVf(iX)3E@`r}eKnif9gd$G?|5OEnSh$%sS`7eLbt87gX)LoAFu4n@ zfGHDUTrhCkL7|K~8y*mtfll1R$yKghlZzz$@_VTeTLn2ufC*3WP>DfJ`cQ4`J!y4u zzKIA^++5}_{939i9&FkxEtGJ;g%O{G1iYb3(2^pEath`ewnNSYxTOoQyON_VN@u2g zW1KBiXc#lh!O)lqk}eN%1`jB}#w{iREMXWaW&x}0I6eyxt%3p1B+8en2s<i79H8UG zAmt4TF>OGprH%%xhLgi^%fZS{x;|d4tt5koPQpIP)z+$|Zl}ijgPZy4Vp!?q!EB93 zJq;*TXSX*jPI6s^K84g@Vu3R5>SRdB58egKC|u+sHjW-Vfnr-yAuUaCYFTpqmP6Oj zX<nY71i)O>4IHnIj(yOJRb^rMuG7xqCk=WjM6nFcCt%=VQiJuOItzM8jN`OZ>XjK+ z6n$#dA}mKnHf+MZQ19SL9&RgIM4c#wA9y^u)9H;tCzZjr3YQni7)oM~r^7CgOU=@B zFoP!^GoRr-%&)F^nFu(8w!jFIbFR9PWHQZMp({l+wEH2!<!3AtI6eBC!6CMTXcYy` zMh@jI&}@cJ?k2>eX7MQxtIP@~%3y@g1y(;S>RyiE?jd;i$K0Rw=J5ibK)Wx`4d>3y z-3vx=w{xHKkn<|%HO}XOSA+8*iw2$6-pU@FK`VFPpX^K6Kk<?sALo?yvG0K!uo0WH z^)G_0ZEb>+VjS?U>?RZ8MTjLOoK1#<WMUI11N(`THwGCYPS`=AZZXabB<sc3D@FED z=P(wBnL(Y~1O-?Vbz!R0p&V2sdF=UHrVbFxdlW!cTn#bUQssw-PJKTkErk7y?h(Bk z6s(IR*5|IIzbej{TMaW?t_tT{Qf=|rpdf~>=z|g(Wtwq@_V*@rM6&x;dP1$@1JpOt z==G{%^0_nA^>BqEmA%))s9`^uq^V1inLw$irOr>o%VEwJDj}xy%xU%}w-%!$$4ce7 z-^;U%TS3zi?>R-RPfClK=CiBB&&kSv;RG0zexl?ktRMNRQ;Hd8f_((x^>swFHP4Il z#V(=tYLx`e5Y|V?w6NQ1-Do?(Srpf>HOx9OA&6MbM>pSkSlO<(>#a&0WLqARl{zjL ziz)9!RRR;~y0I6Okx}435r8F@LgAq%v}&srS5~r%!A7c*YQJu{c|*%A?%S~C#zk9k zkR_HhVV<3Zi>FqYrLMQO+`q3G?k;sFdE6=FcTNK02VXcU*5O*FiENPb=4lz~l>l@m zU=}$<jDZlx9?ETkqp$`tF~6w5{*Dyl1?C9al-Z+yrqC$ZzJrOeQ#qF`+cM*J^5r74 zqu9u{-0b~TCQq1ko@B1USbO1rpmGK$I<xL>?MGs)@t6|+RHA__)|YT|v(<8bAu3k) z!)P&b2aVmE2}>(nx~v-^*@o+87=a2oTI{v5(Flin1cc4Fz5Pb^aN*iFy#3)aDR^DQ zQ4Fj-*u+)X3TI&)^GQoA#k0!?VtFUkr<TKB!>v9{u=P|c1s@LF0`_B=DOW%Lw43ZU zA|x(yUW3I6%wtLki>ns~)OPhsB%RqscR9&#W-eV{#+)Y{Am7VYTg7O#m2Fg|G>pIn z-=WEmDLg3LYD|P!$mrdoTU~EtlGU>FJL(wsSLqZ2pYGskk5Y_1{)@lno%Ygb;4RK= z!)F-7RY2!19&=u*jU7}+72T7tW&4CL8}z-tdAYQwgecF|KK-82&z$}0!=v6Mck8o% zlaC^tT^53%@aC^OID7P0qtUm*e&0QM{iW;9x1W8-I{^DUslt#{`S9oyXODjByS~-A zw*RZY3a4Xk?xWrZ+(q;Oe-GaP;wYA!3(gJat<JN~*EzrLd<rAszj5c>z>VFuyW;M+ z=iCR~w@_<PerB}?g8&u39r=}EVnc><aKWtP-~!^E3q4v;TG=s-S#LNNWE>z>3n(9b zi*IDkBHfgLOLT8{Fl3?4%zQGDW(fyWr;qz`o^edSus19q96Vy#;NXI<xZt5Kygn7C z+IW9fNj<E@anZc9O{Uwh5`9|%2yoe;*djf7iSMcQI1?tp^k%1bN@?t&?~E^XGL?&T zaZF4fP**vYw+C*3Mq2tfY$K@)=~>U{5p@(-oU7DG-rr%msE+g=HDD*`%Q3qtehlZ5 zH<V)U;o;)We%#ybbI*(3=oHb)`?}1S5~%<#o=ugM<&NCGPlt;^lQtapdV$`Hsdrs> zbQ_ho-N{f=(UNWQDYKK&pB!}3<dh32r~$gMIdRtV&Bx?P{(H)hJDw3kKsTzosV%o+ z#oF)SSaU%Im4pV`r~lI+E6&fRph@I6ncu-FVkrAgxgQ0!`4h|FX&f(s<);Y;G7j2` zZA7_nzvB=pf=6EG)IBdbxt;HgF)r`jGewL%cXALUcv8mpl`KFP#h^u6t?bIpO0^mD zDyS};SeC#!$Ib*^DbGRw0-g6Om(D60SHt~-N*jk;<+rP5#x3U5>8kGS@8~I0Z*#(? zO%HW87sAMNZ{*(g`i?VOfKWvxU62qz>pdcMdOtn6LPS^}@e;H^K2^WR_Q9(wIA#N# zu?<AshP?)ln~>YHJPiiu9DT31zqU9@oaRO}c+Jbs&fZcG8zy(#k3Ijed-&A)`sbbF zE;U}e{P=?C8)23N+h(^!GeXk-;oHaKw-3=}8oc)9O3H8Y#Pjz%Pi3lMSj`-L1YFLd zn-A+9sNJ1EifZD)6rJugwkeLYcTysL!$qe*GDjb>iP^w~esa^o6*H{kHkYhj4tUt} z-q5>$?on<G$e~NO2Y&=jG2oE}G?Yf2H0O-os+Nq9_?RBBDEBrqYa*5l!Sjsqsbq)V zWS>~W?xO}VS3QI(JMp#p@-Xe+bFy`^(>}kjc-U^O)xAP-`>qE!Ht#*No+b+KO7%pp z(;DW}jW`%5YY(ps;jz4QJbBZ@yROs4^w9ZTvXih6GJ@9AMIsS8+0Mz=?i{{#dE?2Y zh5gRLUH$$855Ii##N~rQzIt<e|78o6emM%$`RntYd)8n?FP<&6cNTlE+B@@LE!e;Q z`g1$4xOS#)c-eC=KI?tLyMcE05R2lurn3|;NypYQUuo);RXa5x*c(d=Rz5Ra!}=lt z^VQg2O}mCA!1CP4gpQVm^^9dn&w8Ku?3Qy>7&MpfZI#<O0yaTm`Dod!=Q58vk@K$L z(#=O&#Sk|&?b2eSx1Y^EvA!Pli_10ev9$>?m#{YJ`bnWO6a|vqNG|Mw-8<fm&u)63 z{OnIB9pcqT#l^Bhbf=1vTU7IhgR{>Z;uLQ6Qm3`LnQe56W&GbnNe7LF<<7!l=jm0f zv_VAB<PX{Zl8Em@bn^32HQzeDxUh^c&U^8N7vJrDoA=OM85!Iu;K%}q#vk`#7GSuc z(T+u(waILG!!4I~x7Tl;Z<j0cN$73fxUlBAS9gwnyV$GNH@boU*t7Sud4FExsF<qk zz53eW<69TMa3fV;8Fx>7$ya^TW$y+Sk*^tzZr*%!fAiLBo;rB+J&hOs?_{U7aOIUx z?&q)Edi`MkLf-kA_1E9Jo|HRL<I=(C$tNFQKfJl+cIFc5{oU@r^>*e$=Np|P_U4=J zSGwQs{)qc`-aEW+^!_%rm-^b&kEMP)^;hYI^p*6j^p~eUfQvk7u@jB}`(L0OK^jAC z0{)0NIW+o^*0U1>4%F^Q=r-OJ`mT9IVsii#3K4*+C};S+@UUID@rKjbXZIcqcV{64 z1Snn0ZJzQWt)mm4Wb`RrHRHe^0~Gx`J8If@xSQ-$XMs!g6^A&{9LQiaL^j0Cl<RCO zrDhrd!f~yQ;870+zT$^s^m2S>TBygWKUvQp+^YSGjxqYM;^vyKX$4(q>nztXwpB`G zp4sNvhh%rsG%3k&Nf9JLqt=W-y<$F<f-OM~#GXZQb~>|c(N?y}htrDL=992*G<B_( z?{s2IFMj&5+OXxAJ9`Q3SWg?)@iw6ucwr4Z^-1qI9-g3Kr{<gPw|Qz`@2H!omX-)s zkXaSQJ2yblbxgi$*`3F<f9-IX9Mt)0p3E&xPs<{J2fhuIVoS7nD%lG4Fe=*h+p9O- za2pO~+p2#iJ3HW%z#yo}W|*d_X)Z-rVGyYyq6tW<@6@C_>rAao$B~WdYR`5+7$0tD z*LFHk)bXGhC|BSmHQ0>J?UvXcwetXIaDh!*B{Hy$t5r?2_KnppLIu;edb<EhZfnD( z83ByQrd0<dRJ@&yrru0D3?wXEs}Bq`+1@pcmXu=#;k|7m93xwTt&sB+P83E)L5pw% zKx3)7{s^wC(@tT$G<egFqao@+yR(=&*nDgU*-vbmSv#iLsuh_;@TMwh98F^kL@}16 zlC+GxO+qs%XP#FT)nf(*!YrvIo-Swd5L@OR;*FsX6i}?026kdHq_*nQzB9#1x<(U^ z4|0%>`aZRi&Nx$(Nn#C8n8{*&kbsV%8^S59^_7VJq+152hfy*IwFhFrvN`h&2|!6E zlmk+1pwp+n%rZ4`-V{V9@lT&BU?b)<EA#I}OcDBllZn9d+`@Z_u7(QJ8(==djjdu7 z3Qs_;R-|c+%X{K~2uBg72%Fuv{-JP>fzvVKkAVK+Mr=(qHmc|Ocz!R!DT%n57#J&t zMSx0dwp__1xmu-OLmJQs5-+=0M1ld@1FA>9rChTHTiwq{8O(60o4Kf3YZ3_4FNUpt ztGN?rgy2E>%gB|D+^>WRlz~omrc~fxfaxFl-<<*6i0-hnPGexXg0~l<LWfX|1RF?T zxx(^**CDL09D>eMICa3@SE7&{0UAM3GlZR`B)EbFTr1&^ySxC)0bNtl6f>oZ6@1&% zRN_w7-w4_o3{SM;hU@JwwJx8orHC!@we!pL1q>oL2aiSEo&dvYX`1@cX-Y!!z<-zt z1Wpc0W$aDi3#L<NeUw0n;F2%qQbb74Lnzd-D@5c}I7vvAd~2y1_{9wg2$IH&bC|4# zs=JI}(dS3y9-o0QH8H!!hjRWgw@i42Os*EvII%WiAhm818l1jETRcG3J%`3y_G@tg zKA+7{9C)JmRbuHNYl3M`g=PQfcuyioNaar%jq;Bwv-hS_ZFl?ho_M-1{G0hr&??XA zuPvOg9p`Q0UV-2@a7F0ITGCoMwTT!_5}1_VURhl&2SLU!H(Q$sm2&xfrgnZQxd$<n z<HB2cpn)$gF9@6C`F5-7Y{L7szYLOq9R5~_iNG*PvqZ++)H;>BC2eXL>e67QQ0ND# z-s%9c24DnKw8p?N&g6X76|an9H&Iqgu)<;Z0<vP&!4b~ihYE7~*BAyosVk^RCRZwp z<(;kuNAIh&xsc9oW)W%$l7SalI89i|<NqC%TnA1cNm3caQdCY_z0~FaNP{omin@LP z*(7awNxa0zK@Z#Ql%40oWfZ?*M#IMg%)Ls!)Ip)8m<v(;JDGMKDAWdeYqf@BM75K` zJt3So<zgBKGavP4gfQ4-pnFZk2Y7RnjW~~=HQc6QiA`A<L?XC03cHK*0|a_h9H}U> zwL$~A0zH>{rzasM-l?j@Kz7pgx>Zx0&ecrnqqJQM0!<`tayc7fOH$6~&@GuqYC@Q2 z0G{r=Cj$en+RRr(*yWb+M40mrv-69H0`tKkQVK?eP^+$o2Ns;d3w~wF0Rf6wB_{4O zq7p~y&PFSpiJr->!OG8Pmtgg0^G(VH`rd}d4ZL*#7ZVhinT8#idEPHElyq%D@&O_i zq%<((4<nY0@EVZI5OM||{Gwuuup=2LIHJUoO<zP=**ifp%nNY07_K8H(e!akgk{*J zHW=3XnUlmx!cUt4D92mQrK|bnGu3rW(+M+zZ3C3GICf;39>m0gVp_Hc@sux3D$UDG z3m~Unhe1F&Y6fDTEavnPs}l=qEyOc>!n`KTh!h~R6)ltWBO{6s70_B~V!5BoGl>yH zW`o5n1~X`!(m$nOG_Mc=tamK=<wAviX1(<M4zq;?$jb%uNrN>R?{$T8ow&L&Zl(%8 zHbMadMeHCJSA-%xKNlAAWlRY&xr-;&oiZ0-*)4>4dqLkY?Jq_RiI$wQZ12zBSoPpv zNUfK45nqKhRZ~MVl|_{P$hqtgL?z*w`kJ}P`c)_r%lk{Cd5kwqC#PDKC<toFpj_UC z_3g)NaIujNRq^Y^q?Y|Y=`ihJN+CF*?_g7;q3sYr<x6P5%Rl{2j>tL@zM=d=k5z}M z7Hkq-NxWyKGK?OWx)Of@{RrAv;c(!Y>7foEi<2!uE?ulCg-mqpIInK|Uaeg~RX7!w zTe)DB&?klUk{os+ZlgX$!VEE^6|ot}3JZaoIwxsPD*b)9P;^g>kmZ(3nd%xFi`!$u zN&U~M1XX5;pG(4UiPog!<x*LyqnNB<Qc}$2aJ{NpVhjcMAD3{fCQ)H=j6svn1Vnu5 zcIpI?sjaLNVxv%DGHL-;#0r*KVtPe=)*8Tu@FuNNGnXUEG819w<Z@-y;}Gj=&XIG0 zb<p=pHF+q_5L`7~!`wt>0_=|+^z&E~3Dx7K+Vv<9uZmeNBNaE@@loglBui;}R?8g9 z4lFyYq>BR9T8Q-9e+lD`xd9-ai&pdORg}e2jli{)poL)8&nD76#w3U9En~Wak|Vo3 zor(9-S~^!@7Z)g1me+dqw(GZ3R1QNk#1BZu8`x)1nTU_DI-q7o@7cp)J(gpH8cHGH zkQVV1(Yje{Wvd000(u1&hahI(WSJ}V`cyvyvjC5}SemivxFzf;eC)9RJ&Aky4rU(W za(dBE{T2pgR6r{S5Lv`l0&ps@U$FcsKmuM;S>TC(Bgodu1EgX`!txAWk<p0xCm5ST zn!qFoyCo{82r!aQX*JS>VQpSvr(u_I7X;{Gh_V8U7FK7pfRzY#nKnFQ#lw;V&p`dA zyqJpl{E|$(xMpbs+|<f@m~{MOuyClL5oGzHU^$djFbuL41WU)?$ui|Vco^~@H^7I| zhw;VKocn^gkI(&b>Z5Qntd=c^EK&qGxKN|QYPs=Gx`xWd!qlJP@!P0M*$9T%an_*` zr;dDt6dx$W^OWq`o}eQPf_&bAQ;Q<*{un}f*k7@zKUlBHuwQaPjr(ww(M#H?D%>qp zBGJ~Z($Ru~V~?g{0_8=ZQZg2W1?sQhijXzvXy8t21<9Qy(Mm4tVtc7GH??XHynox@ zK2~x9tKZ&mM(Aep8YY3x+r6FsDdX;Jdmw#1+11)S`P|<wLA~NCf7_R*d~}s{5Gqy_ zJYJ6#u8`)t&|^|_+dJ><CR{-qDEg_P59tgz-5j)*P`ySrFs9E=AsRWb;t?Yw0rxiy z3AN4imWaiZZXbO-I~um<Xw5dRKaktHvzE)8*wAVUB5Cpxul@|oa`@*I<W3k^)G{G7 zrffO}jX0snh_PfO32Dm!(6DXO?b3>)&5&IXt8_MvJSXn{-Vpf(Z9a+C-fmBNaU6C; zs|a0S6VQ)6Bqr*6-<<m>P14tf;xXyzZX8Mxp7WeWz-A%-2RAddL-SCyv_0_tKTBqx z09gd0glu9UN}lP1sSP!)f(tR)Iptc}fcltc91<46)*3OwQ}T9}C-j>fqD<s{_nd16 z=bW5T8P6#?n?as7)_&A8qM_b^#u|55lJJ<wueL0EW<1P67*URS)u=}I0!Z^XBZF@- z9kJxJJ7LrysmXjapv|O&`5?whhJczo5_B0SGlCA8dGAi>yIm?P3CKAI_X-?#ZW#EP z_8U3TN61MeaWbaYFyJK9LX>n2I9wRku5|DXXscGWT|oU5(&14RM>0GH9%f(I`6Ux+ z#8Z&C)XWakR2(B{qt4Lh_AzGz&L>lJGW8M7J`HYd*%W4~&KxFaq|moxaTcFHle#jy z_(9>TY?z2Fu(HIqRd|WkT5T$j1wva4`oS7cO11&LWGxj==r|X-1g({ToduPgW-pYF z$-(5$vI<5awJV;RoXyK$IQk9egmdEPH~wJy(0;^b$<B&jEoH%v0x(pamTJm1>6E<- z?uX&3FcO3ME4itmF7z`uLRU~wM6JqJQcrJZAw?UTn9Ui104N?B4}8jJg<-Y2D&k#V zz!vAFBnPwf><{X_>Cbckx0Ir?*m2ZP$FJ|WR+my~8RL><nu1JizN!ulW;CW5(-m}x zNF_bs?JO(0lWa<oGEpfS!V6NF>Y9${ME>UBq4Xq7mZpv%!Rim?$TuA9g0=!C&Fn;4 zVWiWaO3;riRXAJx?4#)m`%d{u(+Nc1jW$l4K$DJeT$mJ_N**`aBvy7*PMSfg!>l`Q z=SS)6`m>UiTt9uHQ5R~(kETo;WIq&|r>f1`uY64we5P9H2JB7kmpD&Fn|}R5J3(gi zBbE75<!(U44wYsFMc9K}KpKD+y%VM-0OOVIuW7I8mFjCU(&_juNtt<Sx{@GVAvYzn zna_ImW8ZZ21K;v3&ZFOSbWZO{th_YLs<wf9zNZUluqnfwx#sWmiK(CNP2RIaHU*D_ z_Sm=f6)!%w!&QG(k;hUQ(@$sMKd@5IS(`xM$V^q7HPa-f8X8$u$b2>})7(!VDxF?( z;-4*J`o*jf<~7fNW0Q(A<4>>A7hJ1`W;`@^<i0@4%mAXHej$K`3M&g!fUrBdTZ^9L zf$CLLxPcgw&<1t3kXW4=*jeqtCQWiqbU)wGC&D(34*-*iiZCUUz~)U>GGW4ce3lPA zB<`L`$SIqH+}gf&v){jYZChMKxN)<WCZV#VMo^O+hQy#~GUugT`jnITsm?Ie<RwrY za(qFxDbUnS8PO*G2!7N~^`9y6xF1YeC_&1GPMu|XjRN$MdNfF*m}iQHMT7dM>2$?{ zx@+!fx9;BZK9$-{T~56+^}};>QzVs*m@R&`e@$^QT#m}y8f@-v%IxsBw?wv8Vl<rs zNwt~^r>wgob~fdMf`#>VGRsgKCYw0>;ZR7&-f(-*pdEX{CsDsQ2-oy{=Qrq>u(N_` zke{%0^is@mjH27U8K#n|W)L{gx!qHst5duKVTL_Gy<tA%-3aB1k?~J6+Nagv6QP@k zV~*1l^0sN@A{G(CmcepCIJWmj)pIU&<=`WG=3;gTf0q3mmJ5cam@1<rJIeU@FxbWv zowm{8=fN>gxwXD3i*6nXW)awrzk=zHdJ5=^WwxuxDc;co>FbSf8*_{-TF&|Tl)|F- zFk$NXyB3Kt0yt%P2O?yd|2zbz=^|Z8K8L!&gJ*RNstlq`Ab8URVcHW;d&0CQV~q@m z+ZgqiX?!X(a?^?@qgs7zP;6QTR%OTt?2izz7&*e83_~EHM%#N}OBTfzG|(1qFw8ja zTa7i<=I{YH;kV#nAlw2x;dX|uu>%1l&1kao-u}*ccY9(e3@fe~*T-t2!N+VZ8H*_Z z&GIps4s`}HPPqn{<r-`%oS-)|RYW5MF@wIU`87)^WomWM$9bnC1RZozErf{RuxKj? zE9fDl(s;5vnj()z00ZtW_et2(prb^1_H8OB`UnCAvmBwwN{#L5d1bJN%9Bv#*$fe> zxoxwvw8Jo6W!Oc+NyRn8-<hQgSJh)MIcX^y`V2s(&v39b%Mw}%aG-a(t}*iIgJrAt z!02aEvb{R62o+#_obiqqa+7H1AYK`%;IvceEs*x(*&+%`1kXtaN(unoW4#$qAee38 z`-u^%X=JK6oKILISs?KZtCfwt%Wk1CAz3@kVt4$<EP$+j!cwM-B=1sKG<*&oWl*B& zZfKTcbK*0zEgmn@_Nnk1_)@o#sM}v?J*FH<S{xXWc*8H9*gCmc(iQ66>`!KOx0}SB zpK0F`c4_1{cfKGg>%Z3W&v~kH%s#+AVs>3HDVR4x4W|jsCSpEQQvD}`=^u)cl!0fG zh3EzBR-q-z%BB+{Ad~<ER`H~!SiPY**r}%Z8bpjw__3qG+dJOZ?89kQ><wr2TMG5` zX*H>h>2s2C$spSFRE{_wyg?+zGw}J<T5V1EJnHcpZfO9Ss;UKirz-1Hdfi-+y$XSG zq(<KPvjyl07zUNaJcILb3X4pdGU1yGEi^yd1HzlhpVZS{I{G%=+WxjrVBqqE3L!+% zklC;8nFpfQF!RzErlNfGAiFzF6$;7ISAlMcj|z(nS<m;{4+VpUp3~S-fO56PnK9wg zW=F<pv}<P_<NS#rJR{EtfDZ;Rpi+nd$=cLWc`Gl|e<E81K74EIY&+MKCBU=@yDrF6 z&C)>~X_LV%MKc+s#fK|MVw=F6VL*aI8GMQ_89NYu7@<Z&paeXFH)pa`(YVj`o$-Ay zUs-wiePcMNdGQg=YcqpQjd-H`bTB}seq2+?F-B#x1ISe$&3k?zazbWl3tes!kg@ue zYTZdlsTTZ9q55maO+zP=T2E(n;HAV6MR>7vt?5^ot>iA8%A#Ky3pJ5K!1qkYD{lr^ z{7C)oJaaSa{^{H4`)QTT9oGVQ`^LVY4E;=g(-T0U0nxg_fS88{w23Y*a?@PXIlNYp zCiNYk+w25mw~H}_lGC*Hw&JrgXQi9w9)D&(=1jMkhbBKb#z4CkY+JUVN{onUS^N=1 zGf*(j85avyBry#%6;Ro>%6e-*P}cmOG1#){UtS?dv_%W|M`~le7};u>VhwDN5MH>L z<2GOAW81DP^HiOrqSaM%^4~wV?Jc_BGgq72nmd?#(0QqI3v2SXIq!77+<Bk#_0Bgt z-{pMJ`ElppNk0zzUp6uLNMoxKCKU^|N$I%g-TqE}Vr)maXP?LYD0?s0GCtvtP#ylj zc|;Kl<&JG3<<gk3PTmb)ECGEWD@x&v4?lZh&&SWX)z-T|kopJt4M{xY;b;dJ`{K4u zc+5R#S+UsfxaR;J;g-U=={i;wW5J{})tbHpd$O6xY9^@<lBp%}NvWma7Y+Rs`<@cW zjvA1V^A7Dpwr&cbFd88381h%`4ux;14#o)Pyo3MH71(d!-yj5Xfx#;X1hPc+q;AY& zgzeW=XZm(`jAagvJ$83gBz`x2+QtjQ>EQ+v<OF}1W3=i@;)@#PJasmHJg65Jj`2X8 zDP>EDuf0qz$yQgQ{2POM0oM;vH%v7T+HP$z=tMYmdPlKUsBYkgE%*!}?y<mgiq&-3 ziOQQrcC8A|6v~Z%zUC*T<e=Ujw@<%%{mosX={?YRIILW##0SVqN~fY|<d;rIsSrQ* zPOuR9wNwGG9!@=v%&8I1%l+WF=)9M|oO9AUelMyou`B_*$oPv+p}d?Ym^r&ZJ{zxe zTH8&@)v|88wLf3&-rX%W3IRr8SdxXgJeH!!)!~ipok(@vt*@-Qc(o}Pato#Qz4z@` z*Mim6D)zaAu3inRUi`L2RFAVkp?OgBzr40^P{VX|sn9Jnw1E}~vgp=wg)hD^e&=O0 zQ#R(?OO?BE(^bMm5NG|Y<VU{;nuY}$!X_py8xzaqDOv+*olbRGO5H*O$))S#i-AQu zotj6P1M9wAp-tZ-g>~P=J4BP8CJW!ql{!I&{;7m(#XP>7&&j5h-J{g-iCBr_N5YNy zr^pt~0Yr~tDi9%)AZ3BSf*cB$kBR$O)C+?o=ZEtpT+Oxi`{-<k!}_`2(urgcV27LG z|9<<4C0WVV?&<nVZnQ&;GAFm_l+PylE~3|L&?yybxu{(!1gxeN8T92V3&_r#9?m<^ zba%XFzuLVAt#2=fHf_UqRvy41NG64eWsw*JX`HCA(y_nf{i@e&EQ3g);q3-puZXsN zoJad26}hFl-}SeaD}?Lv8^QkiY9_te50?t1QL^0F9A2;EkT2{mBOFEx1GDZD_Sp_b zJ;@3xHW5zpeXOc#@lLtjtq!`GWa$<42z`SXp&|0|LT)_{l5?4xj13Y#);*k{fHtt^ zY2$Q0g0ZO9Ki`c*7C}s+U?34g4*U$=D!@ZbLP9=*9<Ud;^Qc?=I-2$2V&I2`%1Uv& zl%FrwRuys@E$a(&XBp-96T#%GiPZXEv5#SPGOd|%%zmS0ZuBjs?W)5}e(39|o*<Lc zDhzUA4*CSmxa63knX=MZg>HZOIgV(x+}Y`_yo|=0S!^KLq`YUYAs4xX@>bo9)*$qw zqJ1ow1?dnG9~6!_2qd^8jqz4r|INFv3k@>bSoEgpNH)S$_4O}#{Hw6s1y|L6LjsWs zV1PTzC%$YabdtDni&+>{MPmRZ<$9_RC*{`@1aN+_93{0byQg34zWEg~`UrldwO$C( zNP`uIchKQtrR2V)Snl3>{Gl4y9}7b+eA$^R?~{EQQz}>ejtl+MC6E&-H&OaR+&Wmj z_O6O>Ag~H1;rp^H?bK>>rOouo<?73I<cbJrAI0!C-R!ujrEWG^?RR_$@H-2H^TU!m z-5$2rQ<ZKGAuvisY`@x;$&*z{v{pK7(o6)?K8iYA5pS?M9L4#P9A}aOS#vJmPih0; zD-&Z2?Rx(`k20F?=8@gPfhKm?)=rj??p`CtynG3jG}r%dh*k^M(wODe){>r^E_ps1 zel<?VgCRlNrAcDq3|(-4(ftPeL(NUM69y1fDY;`nFLG!#lQn*cw6e9=%v|CEB{tBc ze4lHW1#JT{af~vu9t?2n?L19Th+aIYw=hJ0<jIF<QYL!$cb+(P7pgOvjpv?ucCWY8 zTqJM^U6U#<eDP~Gc8MW@-EiP1x#p-<L@5IwirC!s%l%%AA6n<TJ4?<&v|XtaEOq<z z$#QW8N-|n%ckv43pw8$v<9ci9p5@|BbFEW9cMnsom=7_-50T@eb0EZ=nY%%tONSU2 z;8&RPnYjnA&;14W*RW>Wp1XhU4My%wORVm-q=E>|jEJfa1A?v+32%sc8gDr$V;`Q! zOg=stT8iJY0w$mU|I{nzi7Q{W4HIT}{M^M$&+qPx`8{{lIrr51>ITP~PM>~ieeJ}F zwY4{#O+}-H&9i4t&hLbq*;=VlueJO}cJ%AfsJn6Y%+`V)Ct;(JwEU(&a(``ad-uJU zE<d+3o=kSPpS^bFJ>&82`OWpUH=aKGhSiNtU7b4p#`X1$KWaD6jQ37=n@KrX?zEN* zapNC8(HhmHUogXWegPl-gSj!$#@;peHN=+uS9AYy?tjkxzfRsMgEHLZywZ8K^Q80n z&U4P!IN#&^AI>M8KW8=jCp!UIt#~3<PKs~x+d2kyye4TqA-2XH7qCl(=jpt+)32S; z2>dS-^=lJTLjTSpEPwQN2|ameGI^4GT34%9JQ(_*aY~=DCDkY3oBz~^nj9zNJtof{ zIhj0di)K(U28W}*I5;;PBJw=%%o0lauJ&5s6XZ$3dJNa;9M+3uh@Gc$L!`QgiC&M# z<GqP&KPS9|VK?df{b3&$X8)jm$HlIgX=`B{>&Pi!*Z%(n>_1P(n8?&hg>s6p#27cD zJ(zRR4DvDY&7z~5#N}ENZ=xpXdkJw+QwdtEMV4b6Ii#HA=^C0%sTu}6=~^rWK6GZ$ zW~qH!jvo#y@_gMRlg$LZpR|);6OAeD*JNYASl!4u*+M$R9ZRvciRx3q3t#xNf4n}K zM9PzSFZrUl8ds`OP)@T-qHQ!DBVk5!Y94cE3DCkCI<)l~L@Fv*Wdg>e16D4ui7{b| z3b>*H31f*SLPt%%PSQ*QCrJLe&9+$i``NzmnHc>&qHq`H7v~$qtt`$*AqXvzN%D=r zTotlhA;$IdVNmc1D$Z_(&L^JH-24`cJodPpV4&H@Xb2UY%UCv7Dis{RqWg)4F`<<l z{nh_iZ}?U3J3$lETbzA=<3M_(XeFoptN+B~)BjWk`{>Z|*#-Q0gjJ;42w1YHan~F% zdc5NO`P|>DOZH%$v8sSZWv?#Aty&c$Dn3d3g#g{?Y$<1aU4s%g2)l^SZ6rT9-$6f- zeVESWJOprpAqtuJdsz<Lt5>se{L-ttyKDb2w=Nd*^Kmp!*P?(K#q->kFaT|Yf%=)A zuB)H(xm}z-1V#82NSe_3M7Naf;_pAv`X@v!c0cO=EHv&0c3y{gP(wp1B&gy7CMZm$ z?cFW6k5aX3W9CgmE^epeaead6^&WGx)*r`QGGq6~HI}cw^YY8@zO}!9>)n@Uf1NX< zo6p>J*E2UU?6QAf`0WdW;a#g6YwN3jy}9`n7e4G<*l>Sl_tv|vTzdA={ryMZb>+&t zZtWg@_`)+ccXn<*efQl@>)WUA{%WWAQ$Ka|=}+==ibtRR)aK@=Ogole{4ICa{cAkd z<)Pfyy@2)klm{c4gFiC$t#FBW2ZP$35$li)l94^2s#5_+<Q+;)N^P`##Ia_39PLUD zaMsZoq<~`=D`&pal{t@kdk79lXJ1cK^#=W2$(YcUG3Lg+L_9<$s9N#PrnMJF$w@gQ zm*UJV$*Aywx#hx?WAPQvryOE^lLE~iHWuU%6meU#g+*2}9Tr#)QX!2v5IbHRc@S*Q zh;%q}R7c2m*!Yn#=&d~;Ko#5n<7omuun(qUEF=;(3%(pz5m}&jgsehRnK3VT%CU{x zOnTR}f{RlQH#It)k13Wen|@$xqRL3Zr@T~(<WRcX8BsSq9P256IG<MF7+Y)7=pe&8 zpHK~}qGQ@*va=8B+bW)<s+sb&U+D=4Rj0Z%Nd2X3?PK$XB5YsYmVMIAY&ifEsnOJe zy8u2pYmMY%asaSrE2xgaL7BRNp(F3Hq&F%9(I)?m6x4JQsq}Oo(cx4YvoqQ=Z)E4r zOWc2=5y*e#iHOrGKG7bF&>|b64m{l1C581eAYCrP{ruT$9q0Fjv-1NJcYe`aO-~>| z!danI#GZqhCb_j7<ridsVSYZ2easKsJw(qPMwwggp?y1L^OAv>p<-F`mq29bVfvYp zRBFir9F>pd^d^sVDsJVAvcH~YZ72gvAgBbxo|EGdRYafhmy9JT_?#b0>GWP&^bXuv z(&upcBw>*hH>jJg*kT}cxikU*!#ftkQIa6Bv(1m1Ot0tzSh$9{dt5)M``C2HXNZyG zYXa>xaf4$D(?h5s!;3d9QESZ4{mjww(a%FGv8l>4vwm=gp`%4W87IeLkn5RTc0k%g z;2Yo7BI9_bm(p$Ehud+bFb9LB3v`{!%Xogqiq~XADpaELjVQuH?`{VJVG=5Heo`7x zvE*;=m6P%^-hgcq*ftW$n4jLtEL-L9TveDI_Al?vg;GpQAa7FYbH;^m!<^M1TYY7t z->fzGNWuKU{>X#WrtPLaq@rljr{p5o==A<D`_(f0)hh9U-#+*4b3ZsYhqInO)}tue z?GIoYPC_FrPunY2RQv9%QxjKJa#5TLa<zilDl^#<Jm!rUm2gFmuT2hGQF&q>vNo}G zfY5Rt*3GoD2EKl>FP5ejIq@j!V|?)rF=?~-wIrv%fp7q0irPg`tY}#(*g-3DR!aRW z)@GP{c)Yu}di3q!ZmI2iQ_t_@DtYIv#nJ)>)NVV$bHmCqWH@f8l6+F^muoQUs&0fI zrYPtjlPlL!&3L=JaH6}g)2Lrft@}|Xa5rF*fyQCv!@L+an`hJ2Y-?|;E7!B~z5D6^ zkGV6CkL#)r{oH$J=FYxvnoYB5W+aWZYb49EByWnX*p8AoiQ^?3j<csE5R-&#<Ut5a zLTf@&(o%RVEzm+q2up#I6!KD_@Cp=Y%cJkpPfPnKuca+Zp&=T-@9&%$NjB;KPa2Kx za`y8(zw<l4)lAfxJx>vf2-7*`$%^|1Gg0H&30zRcuE#yilrs@}G#`sC)PdZ}Tncr! z?4c3da@F_d$yK>#g!NF_U%{nI{n8S!7#qqA?Z3#En16ulK&qMI6o&<mS(_t<dtfCn zva}GG7y3y4WL`}o#~wD%H}7;@;kXeBgz?n~7{-p0lFJ+@v&ZfZ$2If8OPQ7tIb3LF zv+R>Sj*s3mWj+_Wyd`-u(N4#QEYWkJ2HZni21Z%VzIdoF5KDx^E?+cXfMtg56bk!- z46ra8PNuM(aplrmUbSVYGLaaJ!+`)_;s?Wy`cvUB!L|GG;)DGGp*Sirf>}7@urWMe zoIH8*<izB)lanVW&DUV76ij4b#=^jigwxU79@`%0RAAcuMA+~Wbs|CN+H$p4oQ&7a zTIJzA$-$%@kV#K9d2e~z*y<bZ-PvScEI{OMlhB}nSP~qw_IFd)O-!DgQe*j)BWpZu ze$p|aVh4-%j@sx`A)~8eT~+6$jWLC-#$ixYMub_?umD?aBMU?uJ4BX;MUI~!B*i{A z?m#frKywgd0WW+f4mw1587>zFL4CQ2>h%21XxxZL!Z>t{M$Bg*jlIrDIUGsDtPb~M zv*xp7m1u4zKX}RT*zwWIgwZVIW^)(**7EqPB5QAsMk4WOI1*FqJpe2e&A&B%pPpRd zxXtl8$B!JpgiU+IxXyUB@j-*=c3MkZ&$YmcKuourq6;HW5~3|4l#vP*g<wOEhk~c- zz=Y@|3+}*_8QM>%08s<tBq|~YIVkhaUE$tlT+n#u5yj4+spIC+)U+I(6&lgsVjZg> zvcbWh=X`V-?8HDF$6+dl+amfD>ex#y>N$)UNzZeQuQ)0zNr&cc0{-M}&<4@RPz)P! z8nl6529(5xs-^MLe$<{oQ_2pR3#AKAYRFpY2bD59ltkwss(SobwL*G>DCtyPG`Cw< zm+gRm9R{(>$Yoergqqbr`&C3Ry-Y!pQjvzLZfROu#C%#jCJJewgqO&45h%kR1KHzk z3HvTK1aUb7;2}k@xe)^o%p_eA|Jrl1neznRDg1R<jixat{Ai^phz6buVwCh)z4_UR zm)*HI?0;`6NJQX3U6_%?8W9os`rfR`3wa^tE%I3QExCY*QS^kg(k=TsKeRlWhc{=0 zr(#6CIUR@^$v`lg3>^(d5<%8u(Aa`cH87(m>Bp;AxFF_;CT7Nxo5P_Nu5<k3DKV(D zz5zz9!N~;Gz$nh_uwALtEff`^@I>$^sEL9T!DCW_5G!i1XeKxMPm@>-2;2q_Zd4Eh z;1fjH&Ja0uQU6fcAY_D4;ovEf2n4bL{FP%$O)8<ED2!1>PT_H3bj8t^-tx#L@+D5d zq)_A;5)d^yG6C{q8T%q)_~`fX6}K=hM8lJ^usTi$f*JAeXqn+c7>96PJDfwbz!S+9 zE=E8i9y=t@gjde#7$Ger661?pB_1e;rXs{8!hS47@QYwv{w~I|7lnJhgo8o86zao~ z8Ogy@jGc7Y^d~v6%g}^#M83tPD(y`s`%?qXi&bgiKqw}EhTPq(x`01;>5a%}XamCm zm&NUkc)f8i_FAGEgCvl+F!u>m%13<dSZB^S`pw79ryY66isJ$00Sph$vdCdR$)Zxx z+1>RSan`4{Dp@P+L44NtGZxMID}B+`hf-)k_9=x!#3q3YT_ovPRxDw?Px9TzfF!4v z_77tmlq%ADS8{Iuu^IUC11-b2d;6&cCcS-A+vT-W&3I}{YIGcE#FS7}>N8_~bi7b- zd((cVxbv-0#t*LumNJ8}aL-bCZ)5q9<wzmC<;dlix5D|*_8kHmqV!?lfJbQED}B}I z(8~M-u1*VSgrqY^SLPBx%+Tn~qWf)|!<P;_Lt+Z=^v;cKIkIKXn|25KLaE^->nh$Z z4_`9O-qLxmEC7$IvZo4bDA`O@X0z-x0xnEBR`vopOWP~EkOYWM)X<?p%sZJ1hx5!Y z9q%x|Y;J>(d%5Fnj_<KI=+R`*Hf?x<;(DJhmBHvK36ks_+6#vk1*!dzdE|E^iIOqn z@Lnde_vsdhXG)N851;dJeR3o_VrWELl1E``L6I1#sHRBq08Fnqc?H?3ol^5qpYVIT z7O*3JWXyLok4~L;`ux(aGI}PFsMDKDqXvY9Q{zA_S;L50kXUt3Ej^y`!Eg*YV|J_a zo<uX%Ty4U5vcs5Lx}vyAjYVQX*2y4#vQVh<dWf-oy+0ezPG`3q9m9q(gjp!WgJ~Xo zbccmXc`VpiJ$Rt8>#j-c^g-OF$6pv28X9jM*;3t8N!7(1(6p+1tHt@k_UiyXS(G^8 zMbv|SlAJ7nxb%3I|6*Q=WUCO_e*X@d>&h7KtIb4G;$sv^Qhs}B&%-;>mcy5UCm!|o zr9oymGli7En4b9U32*Cg^Fw~ZsS#Goa@EeO!i_`2iTG1~yfR`Tjed#8iX=VmI5CdH zzGzNKPP5@8#$<BlYqr=n%DehQ2sXuBGO%^jgDGgz&v4v3P{`w3N&wbQr+5#Q%{CC+ zIs}SAJWRBCg<gSJj#Tgm=?rJycsbyYd-8Br&HQx6VS*z>7V~8|Y$L#A!`lM@2oafS z{ecE!EA9d&j+D^cNE_zi(ArOo{~H{=eVq7)g<L+<-V;%l_9*xFBgfwV&V6HtYuPRR z5nQuo4iwkEYu5dp6h@YPu83HX#-i!T|8`!one3a&CP$g7Ok|3%3+L^xSN3GzS6KT` zM~<~~*nAe+yY0A(b@M^usQdz-WZR7u<JXLPka#?fmdnSD=Zvo!e{KAO@nhmB1kG*c zUh`h_5%YcMk5>o`s<b&o+$vhT&<5J848A}F*nwOX&$PQtSRfqOlph<VcB<($G-Ox> zdO0v8j0e{}94WSbI0~w}C7h*B4~5#$;s!;_2qD7~0!IqARHU9Ja?nf`$_mYJO5oF_ z?O=*%k%E##3ju_aRdrV2n|Y8HBL=2C;RUW&p<)(GDRs9fvI-GJt%RPX%4(cs;)F%W zCf!$6Gt_m83aWJpyr79PIS`7rIK;N@gA({8<8)b5ta{*R8~Gq8@mmY=CxlcgZK>Yq zS|%HtZ-h=;Ckba5c%VoT@>FNf@P{)QwKXMO(%&xeh~wqDu0DhywD*EG+cV1Rm8zjJ zLqk-5=~7snDXOw%${LI}HxrXejxSn9BEnaottOt9lgv)kg+5+?l9D}8LL8&iF8df` zJ-~421;7l$FV#dWH7F}h=>sHfmzeHJFwrDdGoS$lg=Cq129KtyIa9;ww$1lK)xdQ} z8VhZNj&1@Idm%ZZeRdEeA?gp%4}q8qq=D9=9k$oLhi`lsM-V&c7qV}08bq>#)`S?( zv;Gt%gO`|mL~bEkTy7jS8%QxY>{?bTP^u7*6b)5$JH$viT8`qE!xu>6|HSw+m{L#~ z;4L|QvxSLc7a=v#T8ZOimdzDBiQ5$nv&>>)%J6eOgxWFqGD6-^K5(kv=Z#l<c$yF& zFJBP;7D&@8yfF3y3tbq*D8grh-bBV@!Y4Myy@bE<;1>LGG0tXJrfzx+YJ+wXa@h_O z%})X|dNZzF;-!~kXZpKwd}|Y}C$VV96Sg-Vv+p3MV9&7MAM$1&u<^rgxT6tQ=LH<; z;8eg5L&vy{Gc&>v!{d1oLwX`=A>}e3<;;(`%ri#2ZQMj4&G{hBry=xQ+ArI@Z1##m z{C$dvq!~hSR)Dxf^lC+3gnNr9QR71l6=WNn2y`IoLiM_k4Y`fZ4G^(35!-*P>tP8- ziW2EYiiNn4if}Prk72nN3<rWcWG{pa#Y=k-*J+F&`an)phs4{x{g+NxBo9;39m-J# zdGX|dp}aFu@cPC6h}f2t8}xZ%-bjf}(lD;&a13)RF%ZXu9#0UI=r{T%GPtOyELUJ` zIs-TlK?+2@_T-64wk#7BnjIzaK!67w^E+%HRho!L-zdQN9flgR2O>A=4M33xeW6_N z2}0zG>@1iMiNgw>P>t#wX(J^9Us`x`FoUrYPru8tLSkC_4Sy+&ikU08&+zxdUJ8`) zD8qnv{<pAuMQMZKA=sD;O)ljb0-Bh}71;Uv(ax~k72{)Rk2jmLy_wD(7Fu3_7-P>- z2Z<T#a>5mj`Ag6X?1+A2#+!oSlS=w-@WcV8WZeEZ9+LUziSJ{|k(*L@IB6R>2{0A( z6LlhX4@_sj7fGQXZF(RD=PPKkxePB5gae3i9AV&F#N)M%H*%c7^AYSV&*yN+!YDDJ zNoD}%FJs}dI$yP;?tDrhOBsOySaKp#>x1ri`$;D<J{Gy#%Hd%OCq~Sc?Q96J3EMYB zfGZXQCrr1M8B0?pup<C!I#C3RySH#)A!!^%H2m88ULkY9Y~qK&X+{}NB)d@|PA&fC z2u%36BSKuWJXAm#=0KEVdC#9QdXT6sHe4b@Gap@hf3i?an8)OM?JuvrcH)UACXCZx z{<8UaG1>7Yi-nZ&AIW0pJts~~KJkQTSaj=n%Dl$xN2=$=kFo<DG761P#;Y?n%8)Zp zJn=;B<jLaB8+N{l|FtK~{!e~-+r9U6zG0lS=I*(7+ov6p%W)c7Wx+83_h=71mzx}S zI^N(ojYh<$9sgT-L-reZNXDE+woe#o^n*Q;5Bo0<=PWT$=Njn<QR2H#ZT1&1GLIB? zhVGq&f@Tku?MmV4jqO|P(%19adXE-H2GQ5nZ;)}|6J2Nw9`h7d@8)8pIqVjc(pYZ- zHv{}h;g&Q^Uw7-aARQ!=m|y7^(gRhUFo&pwAn{$>INne%-5%Jy+nVEnz_vSHeQGY~ zhlJjG+ikaP1#R7W;I|GOeDc7uV9MMy{+A#U-Gdi2jPqR4AP1fZF{_6!8xBUTD2Ra1 zG>C^N&@Ou~x&kO)x$KOH$3@H0we|%#Zoxz&j^7hca!cCDp^c9@Kt)t|`z&gT{veIG zV;gR-4?KC0${)h*30_y=+ATFM7{n_S`v46Q`Ag>oIY7yu@oypAkP`KzzPAR}tgY0M z7knjB4Dor09U>comd2ZSLfG`7*un!##A6NYe)I0q{GIcBGWht$4Ull{<v-gbJbX@S za?{3rP3uT2z_!pjHbOAW&(&AzeBMhH^_3b6vbMKQ)gj`*NR^>tq^SAA9{2Sud7{Wf zGE~co0-y7vWB`8i6Xpw!U5@)5-!{hJ1wH{4ieqODT+9^Y$T=T`v>c}ZllnaRApngC z0r3zZZf~J5xE3oqW?Y<@B0=ji#)PEgg9ucSAsgT5U+da110&Yn#zFF&bnBi1pm2mF z)S1+`&^P)6-E&TJIZ3*DG^C~^p^?r_bWWagYSu&(0FBw#x{(_qOGd(?LMU)eV$lR8 zHSAW?CBW2)cXNr9G5~8bZ?R5T6G%*vw4Bu<rL4J8ig^%h=rrSXaeK?|gK!FH4HZJk z7C};E8|J-yw{N`h#&-9Po11Q$);FdB07Hn$ISmXBFTxI>+Y5h!oa`Km0_iMMIyT}V z^mF@yC|V1fiQi(_OUMkUF~X?eEQu`xlq?c2#onPnf6`x=?@x`OjZ8C*4Er;Tc|6yk zGWi@hA5_m?Ay&XN66z4V4;upt1^XEu3$sam^O}tU<PXn`O*BDwvHl{so?IB0kcgt9 z<;d<g?V%{h7XUvqmI)AjhO(fz)MgQ{io!94c78*~go5z<Me`H&Bnyg1Y)e5qJC&ms zcS(~td{PN*k@y1mn+iisvN4Gqv~j`e1q~S^8QPm}l+lzDHbz$N=uu%VPe_vD_9E3X zQ9?8@KE{5C8e#5BZ`tyZEMhky(WBuZN@sX2VqPQA2d0BhsBRb?I>j!@d~tX-E~N}1 zDe&GFgtJE5OvG8xZ$JULU<>jc%mhGLTti7Pi!P!rfii+nP6>JfyC~Tbx>;r)o~!XJ zSF){>Gg@S#WqNrF1xxMmnuJjFr-i6Djppj=g-t3~t&{DWei7)To`k-YP6Ch#U-Mvt ztzUFt&V0ezWkntDb9}_{8OQTP5_Jf>4n(gPfZ`1asH@{4Ckg@b_K4wLf2P+#?<C({ z&7c{ccOQnjYejB31L@<6yTYwjTkAgIt*TQmqs{A&<=j06$zfU~1L&4$EsJqvAXFxM z7+aF)D(H_~i9$hT-1vT=+Q(pcV{Q+krfSH?+@w4a7n=1!CLoaJG%_)h6#r|<ARg@S z#TXrm3BB!cXGfBNhr|hTUC<X{x&x6AN12En&ZOdH;toe5UbiQg4Hbh?q9&!rqA77` zCJPBAtUxJ|$b@{!1o~70QHp?KHVT=H#KJK;A7W<G=ihYG`SSNqY)sW;Ui81bIK9k- z{Dn|3>Pye2kf{lAinwii#+?loBFSvXmk$OLc+88?HKdllFwu1I-AU{TPbCudSEKPF z$0n2s+<xMz<s<1*EH;o%_e1Y_YmtQFn<cj5u+!s@Ng(71qS-P<p*9VucR#FoV%&I~ zeObc{7GOD<_0B0;d*h9?_;wGpmcxjc&l`VY+;9A*@lpPN$@nYtm2gMi%p0U{%&9&Q zD+f;N1XK60u6CsjI00ZVXCb9NK$BNNj!1}lr)s_NfWX<#HZt~hi;XAbg$N4Cex?9c zpsvR|QLX9~u7QnYn=2Jw0sEv<6Q<1qs4Bg%R@flBf~2!f`7@NyxtwoWi-nWEkZbXz zBm0IrwaZ&ts{lH!(*WqewC2I`cA<OZuZlUpl98d&qMplstkjlf+6hE@Ql`$Uglj?r zq75TF8dk`Z@CM-IXxdJufz6Ojo`P&$7)^lP!3$V1@{}vZArWQ-N=V$g*wn}+5sOr( zrD<ewsU2H7!uV)U;Uwl$AEThnlO+$;Fm^|tk;DRmW^3n0uyfR^mSl7X%&<O0s&Ke4 zY~C_@^0sJn*-E<R8I1FFzM?b);$=XS!w{zo+gUf}7g@tBH^T1;t5nXx*fO%9_)*?# z_>Z*>2v$}ZI|&?OXhXT=My2E61O25=Q)2%i7c4DY=5ic@vm(|>A|_*RjwKL$!TT@4 z{pezU7AC^-5^D5<rYRhA9kdhKdPOt<S`aB76r`M%c`6l3%{*7zADWCffRwFYTn~vm z4@@<olSRAH=`MPLeX($w&07h#v{;JfOB<yi_AoB75mH;4bco$u_l^|gVW~4bIx(k8 zxnPJm8OskWh%5rUAIU@2D$bs?+x5G0Lzg8L2#7n&c@-@tIudqCpi2t=sAUbXJqt4% zZY|uSj-VIGp{nyDQ+N6yWw_%<22fNr5jKffh61R7xIw7j@RpafQWzl+2r@wYsX=FG zVCKtFRDQ_9nV!7D_d!6W1b9+BNo0_(VAB%<#o2igC0QEA>>i^@rhyw`cnMSj42W!n zHi$5gH=sZGV?Yeoe)vU7Q%t47(};8jge@K)W!Q9bP8E<0%#aME^aA{BM}3ejFw-C+ zDAAwB_auZ2{s5hQp=1@=A|H84<DuN9QsP>P)Hr)h_+{s&hw!+FBACOKCx8Q5R_4hv zEs!wui{!u(O=kj-<Py$IRI?a8fd*lS35DZvMG|3n^+X^i3uk*moykCw8=8go%Q!Qp zBxRLQ4ByNU<uV`)0VAp=TzV#C8t*6<_5|}GE^F9}gybMIgMt#bEIQI$$O9&ffrWV` zGlhYnEJdzZK`tRlu-rSJrdSx|h^a9R4!Gvv5%QS?_C=?ee@JcEA0ZxH3@2@Zwgpqc zt)$n|Fb_;c98Alc*ighY8Ip-Tk&~p%hXNc$aM2pF`*C_oMrj8Pp+h1)74YPS$)*6c zX`^`*_2FDmQsGNB>ZMRjSfux`uxOd6H;G)Cra9pw@OS2?<`>MrL3iUS>?+>FZrD5M zXd$L}IuVw9Lb&!q6j@>yD|k;NsDeec<2Sg$cq5ekNpP^*_CWODef0sEf>ANXU`G`8 zv6dr%RTXLkt2SUYbn&a~hw7UA^A?+!)CRIQKg6)?dGnrRGgaSz@IYPghyXGO$TfK3 zMHdb-K<GUV?Ay1mCM$$D@<|gi#$I}Gi6u?a>|_?26*4)xc>fZNrCo2>2}CX2M_@&? z0LHHx1KJE?drHwT8J)AgHiII9+g^Iz60`LRf-$!9Xw*cCg+dsTB|X|#Tqq4*G$<j+ z+{B@5Hc=@8v|_btjUbXPbc%}G`%|rS+VZab70ar$RKkgB>+ta4#Y4<Q0BxjNoYVN0 z!$&UPV!SgylQ%8IK!%yYVidYL=t&MkV4Hhdhg*p1LRl2&&D=~DF|0T29=iC@A)KQV zC8z-RQ0t1j;SGJok#G#6Cw_zDPf;G{JP6B&v4pE)@W+*~fUKnA5Gg^5Y|xrcP?UoV zJ#J8-O__B*!e7x8^^}@n*#~*NK524B)+#2vh6aKxmt(uQ=t~Q%$Vcs_>LJ8|1|9Vf z`IDaT#(E)?06~2Csi&VhtiH@gRvv%s9p|6_4!+j@#&8wp3(awu;2!@}6SX9#LC|qV zs!GrnUn(A}#Q=>Z1`X&38Nusey^75zK`IS7&ETPc6AvKbAs7>W34$nS5+qjS-g0PV z?J()AcBpRlKJf+3YsqYwUpf5LQ%_xfIbVm@?pS%pV~?HB*E?2>vFe^G$1g0C$D4gq zeT`8z8*s8{IrL5R1+sx)AJ~Eds^#QRGY`WQ{AKY<%wUTP{j%bn@VomL`q=@Tf$DiR z+6V6FUo6Si?z9>Q>y!wz)>Z~U_^A1{E^7(ev|QEY0bc3#>=<DFe;*F!D7FH-SkG`V zZ6;9SaYc)UFf(VOC?H|ySuL{~ql5s%?IkOjSE+P#K+Jlk`AcHpBZfc3ZZluI_Ko~7 zSj8U9nIqXD+tbK8-KAt_K3M{zIx8vT`DD@VIKTADSAOX~`1_Li;fZ<$G}u|Gv|1J8 z--^w(Uu0{wtZ|KL=8Hq6Z0D6PJa_o(ho5___4UKX11;L_KGSiOz(pU!;;Zer#_@#X zzdNwnkJkyMrt~QQCql8o`yt%XBmfMMp$i7O>4Kz%^}K>%MUKjAok)POEo>!-FQ6YN zbD<g~j1{?&3urMZ9Mx3iEOT=<K$mPTby!0ye%wVSw9K%NN)`nJ%BStF&Y45|ub&?~ zv@)OR%UJ!n%=YEg*22k^L9+~e?K^$?^gi|!81Fkrre3vu%lX?zqCLfFD?OfOq^7RF z{`x8Yr_u5NQ#qac;RT-$l$h6N&Q36%R{IgKl$q>fH<-Bg+7lB1OGZiS$!o3s98i66 z<+0O`?E~|hk)2oGecs&BDpDFeZW~uD+<tVs&qxl=54H{;zI14yU5onXFTHW*7DY1| z(-#*j==;{DmWQ`cJUCT0Q5K2I*efdpqDwP&Ojd?vrYCsfG)E6_&qe}^BgripTj>S5 zkg31H{DyhJalYdb?DgI)v)R@55Y@Eq37q|+i|>1Q0OH&3ovifsp}$2vZk<(!q!nlA z<Xp!)-O12X0)AoIsN-ygR~IYklRcBF^!f+%Nu2M2-a$_vvRE}ruSA`Brp>R|<7I!J zm~X>RL9Nq^Ipjhq*@*i@6Ao2RMP(V~y?K%(l7@kY53ehO%qZ$xxOXwNC0%UyVH6*9 zyE{K5%yC#E-;!78by?vIBUA-M2}DlBm93-OB@_`BXnuE~5QGzx$UzASF6itvKhgOt zOP_f`^rM~%ZRCxE4~)H)SqWS#Bw;Y)hcHgWA<zO^PKo^ygb<hsStaCsa;^ZI5DEjk zPC+kbA7LZHnc3`6AcG#PQ~<UFBWV&5;zWo$LgwN@sgmIY1_cZC1`Q}8E`K!%(~Oqh zIC}&56JDT=;8SE@Xw>1@9N{qb^gg8vWB?zRnE%7P7wB*Zdsb;&iK8plBCx;)q!+9f zKOiH=A+0E1h~Qb)d6H`pH?#cJq)Rk;GAV4JmL;>NNENlV+24fa3`>>7TwpxRbA6I) z7a_+fu#y@#e#%^=M{%kzv;sS^>Dl-8)2CNBXE<GO?G84Z3#s~!eX~ay0568qp@^tQ zNl;}*C=AmhZ+oT((ygS3+<2t9llWQB1i1zY5I1aK#u#G5Hk0#1V^<!Wjp0;|pFiUd z$}EIui+G}zz}q-wA{LF%7NcBUc%$F5Yb(128(Sft&jC+N7<5ZPBJr7iJGrM?pJbe2 zTJj4ElX+u*5P(5i4y`{nP-sDWH`<}7e`Nnvmo?;6fR?`F%y-!{UQ|A~#lm*Ualr9y z$NzHtt>YgYKXm-7<ELz<dx&y>p>ZjGk*+dc16JNFS3%69C<G<uIZL1Ztm7?%Ei<YU zpQRIl;b@m{r`J8(6PuQrNX=@K$x$qYE<O-iG?AQ9fFdu{xnFn)5RYo<H$djd2XwYy zeG3Sr0W_dRL5@I+*yOkx>6r<;A1(ueKE7=3?HTnYx9hrJ4bV=Hou^wQ)DSx;8>p&G ze8FkPOj`_pc&^3^Tt`+q6UGCE6g!cgNpK;T>Py!pw<zpv^jM=d8N9y~ag+SH@<T)U z!thWLS0;VYSYKbv7}IYsT`dd^77K%e1>R+11VV|vuRZED{Tw(NJJKxW{ynwY9`T}| z+S!mpp6MN(7S|Jyu2^({K!_v~jfc_itY*?x#M)t(3pG$qcrK?L%Bty16)96B8jR+B zi_lD*-2rW!{jZ%2Me|0<9m^38IGU>voQBI5=}N^&q2m8D82!-cL>7*3>6^RgqPa)` zd4W4u5-vN(G+<i*)`%>(wq115HUhh|Xy9DHvd*K3R?bClgh%MFtn}w%p_Y8bO1W4t z-k*<#I)9q0!(YHzk;jz*^|-zDobivGyud$h*X&?HhNLj~s;nBWSl@_#;qt8XUftFg z)1&$D-q(%hmZBW3>|}v86by&4iFM|QapiZ%mU3hF?JF<gGDc2ptV59xxXc}}Tm7|U ztb`J@D^o6KKy-m}oG|Nj$-^#j&Wi-`?!%s0a&iWw6w2~OJ%z>64b7;poae8(E$S`~ zeyADtl()*WS42Ji&8<|+juNfK!;y=&&0PrUbvxtp;xR>?%n2wXl&oz0>?)1%i(Y+E z5X}ISQ0QnNOzjx#x1(697|s48Wr8Nmmc8M|9=Y0G_C=eYZRFU|Ae<TT5#c%~Lb(RE zAFptH!}ytTh7%*l3<JV&nuUSL+Gu_0OOHSP_{515hBYyP41Ds$wdx#l=BwuOoH1Pv zKenDJEl)?grV%HgV>&7xfLLRbm7d_+jIaHR`TSFNtUY7=_QyIWZ@)dee}87&SRKEP zi|p-|^QAADZ+vRaG{5-N+K-HXe)C&eS04WdBW!Iser4+|_?9?y<}EN>_8@KS(HIJS z$ckfW>TMz69@mFU!pIF7)3SG{)!0QUU=vLV=>39ka^m%0KV)gMM`@%X!EPr6b@Ujz z>$C@kp$*f)Nk2SR@xrQ4OVAf4!-)7m$N;ucDHLNcnGn6gCX4TzKw*TPLkIwHxiB6S zohWxg1#&`h2mActj6a{HoZsPWGkg6=C>02#Lg+_{Wtoz?Lgc}jNWn)R8JlQxltqgr zQIG9@^_a+>_>H)^5EC?hIMEO-9-75R2A;s3!@MgKiq#YI_w5wo&E*I>E;RR<uR|B2 z<`{GAbX)??FIq{7tSQWD2}%comEj%1e@D?wgK-spmzN-IHdaI{a#{qnr{pc8Jkv`d zi4u_~Kl-Q-M@OyOpZ`rx&&KMjS1{=|%~u|7uFRIq{KW2N;-M=-?xFn;mP*GSZqr@U zJau|$!DF60_<HBc$o>{4@|CIDY9c|j%)8?6|D(6#+sbclx%tzN5M$$~_wPplck@N{ zT@%IrnSDdAJ$*HrK*P&-7Ha?S4uVSw|K+xa=eD}d+b^DTtxjGz3?s>18!PX_T-^=a zI&k+hY5Xa6Pet@Xw>yqFu6MlJ@u1`Vj*mND;4P;S#)G|U1g}|oJk(890=TJr(E--u zAx98#**{{+aJZ6_Gt&$RR;T!=NltDzs(_-3>nN@kx+k#pQy6ab`Bamn)MqpGrkqSq z<A_vBR@F|cFbeQvsFKexEO9t23gU-3%=a4-P4ApZF#g>&wQUR)9dr3wQ21@lK4CxA z3;Cu|%euGp!}Kyj*%raZM~Rwc8H3})rcvu#d%n+zqSXV(&&U-b=*1DIrSRmjopW<L zkKJ3#)vtZ%*v_q6cOElFbBSOm<gsCpLPFsbLADsv6D^eY0P;AX2?b*bXXlL37wHRw zumaIQ&c+(v_#gJn;y47dx$`Q{Ko<}9K?T+Fef4HxXrjb65zaJyfrArB6lLwyN6-gq z6x<8VMxQSn_GcQ6?eiI~e3|)$zP?OfdVVZ$jWITkr=-AG_sMnxw^}SToZ-mQgf*8$ z^$;{N-_K?S{pPf)V0|+e%Y~`Y3`7DMkOl{BbcN3R6MpCZkHbUsRkU;CHa?SQrUfIW zAuA*-pD}})tDQ{GJo~J1KY!1@cGts3GjB9M-+A40&l%5|jb}Trd-l0!ue$2F*Y1AP zn`T#=`OZtv8V@}8+;dl6`K&|mtfOka$@~Zu*UiRni6xcsyzxJcmxy%)%_e*niDm-5 ztCU>1WYViL_gaimwa>W}B8x~EIz9BSTuORWe8O=3)TKl%MU$PUsM^Y<O+s`wB&r9O zN){@_Im)g8tnw8nm$;rLfl4pV<q!!8W)<f=`Vvw`926%-t|Bhx<T9jA+yG>nr?M7+ zRxX7@v?xmXqB*25WpTkhlBW`&fkn57nYOwl-bVLQa0`6J8EAeE3CdfoNSGKPIUVTB zQL)+3G{0O*xDLijL{KXI6qgb`Qd5u&AGxVdG;U>x6wxPREd$r!D2iWX!nNRMS#h<B zn3H2GAcKRlZdVT&rW$@m<glytf+Z^LsBE8#OcYncif9G%Fi;S^xW(>T0P04_GL|;? z#zc*7Dv8%*;nyMYqS&-*CF4nh%{SzXw44geA~B$37lGPiClSp<&U|IoiX8LUSV|mD z<cIJ-@-3$q_))y@lZAgN{vxaZ{^2FgOv7Gh{R<(HB@ZiASgZwgDP%{#T)`lsf)b^H zHTWyRVCN^!TOsN)2G*L`$r=P@GkK=lXR?}AY8O}1Jl?r@E9gP43Y0F*<1$O_C=bYe znxe5863zpyRIP<;##Ns>s!HpyN~BHvSaeo#f2DP0-KHRw_G=*&%_vH3^ij3%lUU=L zAsdJC5}zq(cvF+v>}1+&2J9w8))#4?F}L8#AuO@XMBpmq7C!f2=O_3FF}*e_iino> zaiH`Ntj&$xlruFbXXx@CVb*<O)tOBPSB#nrLOd43tynnLpY=zJu9y1uG>QZaEKgt3 zmqx{`WxV7jvLl8S5q3xS-&tXTa9LJ3#F6rq-A;=LV|`9QRZg?Oh{$L=rF&d(hBQhd zIxz&t^=3r6%rn(x##4YsxRnAll9!o4^g<q|C37OeB!MH^PuWi5uTT?(_hv**g8~>C zcc+1f-$?Ox9bia+?HY|!Ga`%*FszKDZ0XWYsuO^b88I<REt1nTGGe)G=0*F*vS?aN z+9S{`8q?As-b&LD8TA7o(l!AX(G(RB*?<<n1DB5i*DmAl)zqSO3qN-O?#YPH@Ar?` zwkROj=5Es%_NMKc$15iY&vq1}J*eoSnuLMeu#E)=^NN;(%hSe&&Q82DQpWd>JG{jg z3V6|GVNe2z0OG*@wBKJzXNn%byU?)vIeqv0wzsATnU)awl~_qdIF`7h&QGXGg*8Gn zQc%9~j&h!P(0mhA$962%92y_#6LEF3-xm<NB`)xFC}PkuXclT<Ms|Ii!JKtQH)HrZ z!sns8c4Tb+#)Bgx2XCC8zkYS3l>f)Mllxn({U_(f4%M8bK^~SZ%KfR`6BE1T&rHGI zh+-6-E0Jy6{0$du*>b@R^W%pHI&-Z9*UrsdyT4V)x%_rC<8)Rp8J)ZKK+DLC@7Xgh zf6^zRDf`X0n@>Sm9_U7OkBV^#pG|TH`lt`RvU{vE2$e>Ua^(l+2Y<3Tbw7%^mp0$N zc8hTeI@^~eSR0}>4y0ZT-m>{pYkm}pJDr`&Vc>~zD$FaWK5sHr6F+9C$(X6^Oxf#? zLY73X7&fl&e9AoC`PBOW7pEWPt&mt(Qf4TTh$REz)?nW_q=MIpy*FZ0&Rs#m402BP z2hhO^$K6q2CgI0`btEm@x6&zgTSLfWQjR&tdGNVp&t=0z97f+2Gah<vydfM1hz8A7 z5Z_|LCmC-DNhglE;0xFdJ-O2|NaI$c^N<Bu6>#z&|4(l7Cm<Tj`gh|Nmfh(1z})_^ zo&Ck~4(Hz1;K2d^(UpHL#bb@&SZ!d$d@DfhS$j3gG)jvz<etjMoXv^){QOvnc=hhK zyE6A_cfPs%=6o!aSV-knKay6~{H)`k<7>u%g30kQWhkc=Itf)w9AU*_ql1vLYV#(< z88a!@vQLMNNw%xA^tHNywijhX?R}~h*-m>Ar}bkQGC<<&&v>0e*Pr3iUUPfIE9B;n ztO&MH+3tBfGr=aW@4MfO|9T<o&1NE~dA-`RlvTBcnJRL<pmiExy=Ku`F)PVD!Hxsq zj<`Qi^rl@$!CX$WKMudh9O_S}N~Kh)Gz8*HPZ`EhP?=@s<FNw9YT+QUq$<fNk5x+i zhgi1|Re3z&Wh3WkUc@fLiu*(9aHu~LuV$MI{r(~``2r!#Sqk`=!d01>55@2!!3~%N znKxj9@r>J*@cOde?ACIi5seOqLqn11P^glOpF(ddSjhTwZchTPEr^cQaT8t>IZ<K# z=l2VjF`ppDh!wFj=l2E6{>D-zk;E_&o+FA4Ztx+IZ#_kSdbW^WD8wt-TruR&djm-{ zs6E6*21UoC#(N>7ancquv0+HKLk}!8Q|zLlm~*cg3k70a2ND>r#X^;(1$h_q@z4xq z$dL#X@rxVS87O*ud0%FNQzPap^-u^?4_^pw45sPWaAQ%3{R-H?mk$IOmXJ9cD<(WB zE?0bkN~q`##X^xx$ej)3RjQObmg*ji#f4=Abvm<_nJb1Wfj})3!seqCh-4#w;LA$2 zfry!j#Bjxd#W8%JK#Cm^UYIX}OVAKWQk*-;MO8)IYJ>tQn6NYp#g|AZl!{1$vVqdx zir@#)<sSk+{4OiZ=ENCx#F5<P9Q}@}qrsVT6mIN{V;kO68q=^Pr-d(Rj~W}-=}pf! zr`i1cZ?3&IcI~ydTzCBV>($lG*Is$$-(Gud{KSb{PhNTD%_mN9bqiNKlXNGqxMHaG zSoIzJZ7G)ex2#|Hm;U>v>;LLGr)7uZb=Ds90!}asjuZHUco^x=lgNMG@A#18qnw>T z?f7GQq%3boOpM-GN_z3*g#a-nUZ6mY97r@PbwQk2bEXnw0=>dzDHEF_mB0@ZngQcu zbtqx@zOo2OD+p4dpR~&@$8Cj!NGW8p64`-9xS^&nTdTN+ao1V+GnR0*h=x*~ZoJHu zEzf4;YjXI8n{Q~9j@|s~tu^GxFeu^Y1guyNf>mhNcq$!3!4aCq7xUJ~%Q>VUSD}qk zAGqvz3+g4_E|q3uv&l<m_TGRUO44U~M=m+?ifsq)t)i3_9eCY&?JJHR-g4f&+daMf zIw66+HZ|O6Paiuz@s*{em&V8c@X(>3UUJEAj*j+^j$Si5`hn5W$3s4MA{MJfLbYX9 zIRJ?|l9?J>778j*%cSa}G!0<O0tqb*Rc2%Gf=)}>tNCoGUNX&8KA#zxJGml^A&=)v z0bj8h%e25DK9u{jiF^oY-`-fL9lI2&#l2#VW!=s??%a&}($YsKCVp_}(CI^mX2-^k zjg7fSMy?vcj8^HFIIb~2Z{7+mGw%49<BRMZu+#KxS2#Q+*ReA*B5aHS#MR2^rc&lW z7scI4Rg^Fh+HOYv2x8q8!Z_B&SsXW%iJ~nRV|7uKmkZo+spn^1D_3!vpNDaQN-18r zB=OXE6iq}tf1%DNNL+!FcwNILQ?_NUwE8X=#!l=7;p=+)Q`;9)HGdErsGyyUCzHnP z+L!YUSdQjw9_B)RaN7`Q4|>qs7mhZP!Hm!FH}Ve)y}R)vPM+VkWp55iU8tHEnjeXU zLh*PA*9V`I2?I6#Gjt`aK94&xl+89HPq&Jlhl{ON(YUjiN`0Z(Mq@it!X2Xc1={pu z977ciAA>L-L+$zrw1C00F&5}<=H^oCQ`i%WPr)6I%N#eu*ZNIX=L^{6{{+k8e%$Vy zZ(MD>#(2bdAKp~|-1rCMmz)F}=63TU^Lq0>^D*;7SR{Yj{J(H5Q&!9RpVkjie5pDY zokyLoalYO8ht5B9^|?;FKIr<q>sziLx*hJ6yXD^LKJ32L{d)J4?vJ@&aDUJJV}yc; zK!6Lp{lTW?BeajGUt$!oji>VH?5C4e{Zu9FYN+5GZu3*gu0E4Qu7sjkzsLU?g+Y&; zRi>(JQaHtw)2p)E3b?@CN9zqET_dH$M{xAI$#|AXrY6z%6el&^2KVf)Y~3L#Kbh** z-I%J*Y@}2j<~^0o@b{}Pa9$;)3VJ&yZLhr>1E(CZs#FR0M)SL!-rO`Ai_87>!C9|% z7|zeHKCQA8Hj2}ufrpum&TVe^<ja*?6(@eb+TMnq6<P-CtT$O|9MCD2_O`{#V_h{= zHDDtYS$8yK>J)vfM_$)0R&KvKc^l1LZwp<KLD!XaTcIkmyY<)CJ42p^<Wpd@Icb`t z!r<)zugrC#+XoHU8xv=Xhq7J?l0ywPO*pFs+OS>9kyD-SShoxp*oj?JahGA#b!lfX zB<wSNo(eIL+H4P{mvgS&(5B)ASe~nzU-laQoF?cs;zj?f$LCVaH03}=bZlgMrUBC` zS+z0+BA*!mRf^h;>VhtPy%CLWZK`!@ayODT7(ixw<H6>%$zOf3QRsSY0tmWmJ*!0^ z=G;f?skNq>fcoZ4x>c|oU%nx<LyRTY3(;A1TR2U)Htkf^aea(sE=bPE;AB!1?iesR zbiiuGrKlox8kDH~KZ({7k|xnTPuVlfBg3m0uk3*OSfWXq?zKJ{!3pdoL#pMLcN~s& zBc&S@**yiRbeb6I2G*rH=y&Qfkml>!1G1L7i);gISx+zX)P6a{Jvq}`F;u*P*I7^F z;?zL`8+Tz3;9gIwv2S;^bkUWd?;b9a#n)>VUcPuC*q^p;AiVYU&K%nMWpAZ*%K=ra z_hJLzq<ih%*a29WXQNDo5@^G~uVUvs%-@Ztz4lU*><4EdJoQe-K_L&-fGz@_M0bEW z)){POkm+k9aZXLP6EJtG#<zq?X&Sc(m1$Xvis5BpIt@P!T~6LOOLBs=tgHwWty}o! z)mMaBYYqx`OqgVY=pFJ{+!sKZB;_eC4)~T*E>?U{t09HSUrzla-yj?{o>Zg=eumXs zl?oA&6op`i^j1P=Y^yr4(2<s2N{g&TRll1+Y$UeskoSf)OqJ$aXpmW=6myt%@&vJ* zsnV0uxD?i*a3WPU<NH?7Uz?56)6@iJc7`(@hVA4g1O{AS!W@S^$yS<^E-rI$=wQ0= zpd?y%qPlaSA=ZNNN=&pIFg?_~Ux?a1+%tGF8OqJ%Nb63=2d<h$M|g1Gj+r#t+||7` z$Z4z>{c$)x@kRp9x5w)I%)%HCb|C7doI4{P{8?G35QibuoT%(Lt@HWcA5pj6r*g*` z95wGS{NM{B1yYfxU**}Ya!b!ut|$3cH`GCiUFC3LqmrIn&f_qwieYuAhb@es0h!dP za4D9aEEE>Xq-q=(NY<l7VQ9or5uy*mTXk7jV4}x?i6`S4j?q3EPX&t)JaGRaiDES( zVwho3dkw>MfDPutsRDv~UqVbR5?j)!Afv&7iUa1H7*L}0z|^7Mfb(y-xePWcW9SFE z&4qjKy=O5wMBpA#vh`ya;zVcN6-9k9GoGO(m83r|W+reK*PfTDH!J*E;wupt`xM=z zu-}&=_56R0p)kyM3zRU~Ka+36JSYHfp_|05Npv5IF%HmhUST3CFy8r+6u|^Z3V~5w z8qR@8X3pb{!iz5qe13?VGo<Ol@k7?`aT|BzU;*o9C1J<*nX?lo{!RC=C9(*tMV^iX zow3A5TNvZq2y4Lk>vApcqy&=w`bG+!qj+{USQ662&82uQVp8M*)u^&)jj)j9Hh=>= zT?5U`cdHVPdN)I+o3+~ta`NEpjI>Tpi@h3Ym83eNJAqf&UTKx}C*8paJPPD&9t_ib zY`uZMQpZNEZ8E7AW*9hAdeq+3a9YCi-l$3C-6v`!b#**sE<Pwa3#zg7R?1Qm2}YVW zs~%-SAMUo9gmM+i1fG}5xg>wL^0Oas_tsu(db5d~gh!it8o&@|(|A!GKjiE-M#BjT z-zuM;W<C8fha2E<Rt}oKUWw`-f@Ue$L@T44YYE+rqM#y*#MM^~mL7+EPjQ}!7sDN? z1MLt7*H_<Pmp0+#wEK`0Zd?ybLYl`zAGZGbtmt$WCsHlq6?g)^(#V`tz^^YtiCFJ| z9DLW%04KOkaz{!C>q($-o?P+b6x?K>NaH>J@sd&0w<ICOv0e@-TNQN=iMj<!@!Z{` z%GzA`rQNhng;2#ea`%Dy_ay2q2^e&sFqmr*AA!GkFKPHy7p9pYP6JQnmQi9zxRTLh ztOZekxKTyGhmV|^c_!cd3ARC5hcWZPwIiJ`8-lgM5Ql0AICv7^*Xc~K*-6p(`B|1S zH|9z&c))Dal*<TjhLHsULn)^F*tyWVqEG>%`7W>k25S9t4+@dCYoNMREkFTxK`ka? zT;2iX@=wESR<}cA56MOm6sp&aG&mb#Sh~e^fqLPbW$k1ZHX#}f<kYhP-#xT)Hagho zSGS)(zy%VVUs%85P*}!Ijk!n37Is)4FyDsG(STzMoWT)g^)p_nMkmXV%nhM?5p$KH zm^kr_W03&gPMCewx95h7;fXEAeQ!74l^%*eGH}cJ?E`4bm&|JQ?mIe7*ZGqZJB?rL z%<n#U>DZx1+iTBc=1a@-SF{eEoF`_{^4%@;&0c8l-raUMyyzpltvs@tS32%>yczq0 z_d7m@iBQZa!=2D9D;Q4dqH8*^PUyoEQq;VBZ~CkY177w*4iK9@a&E$?iXLLQDu*DY z8BoQ~vYbuyBP=vFZldZLT4}-{!<2(O`ZcB<>#az_|AI%x;Y6KJg!<PXn%o|f6A7xS z;$=e}54!db(yp1r*!X&2>=cgKHaBVjf5im)nw*$XD!mr|Q^P1j8<1W8QgZOZ3omS< z#um+buxNoF2_46x0@TDSlSJgieuYg|ZY7{Cwv*zP0gFo5sV*PFJKvV0Td?jUS9w<j zg`7yAH_;p%O!y7oTHE%a8SnSo#t-FNJXUr7$RiOwd=jArQ7tZ%Y-1UsF68%nR;dwN zL~(dPE39p=+9qv5&me?BDx?r<+{!sUPZP}qt%_D7Ll+GRE7yQTgUB(>LsALej_l57 zTK$N|7g}5T`xl3ew`M1@5PN2RE{}8qkws}|30goQAn*#TQ^XKxYbHD_a&F~A?2(B2 zM!_3D3#?@pLkzy{@^TIQ-G+|xv5WbP1-x;=yOW*~H4oP9+6Tc`AsiQxLOsR`wn+_{ zkqpRPmbPG&)JOuvZ-$C$<3J5iFj%&o&5VgWJk%@xp8oz;YoS<bjm&F4?U|2TH(CYw zfmb`8GsIqgL(&YRK@``jmVztIi0wkOJ~zUP1*m#*F=6AbgV{*es0J|AHa3zG76pg$ zvx)#ZRUUP6?H*M%e`9l5TodKJ+_eY?FKB&E+SL;f5-SAQPjhbWE&(NIr7F2qXK|K^ zEH&LoIVbmOll5mz5)BJq%W5G>7UP*C?>@C>&#8AGIr{EX)#~!8cOQKf1`yalTS6Yg z)@Rg(437l-_`67;V<56QAPpl^f2b1iM1+HD6k~C*tG2S9a4POipaS6e9hDO$7Ry!Z z3r2Ayh6OK?XPBk{al@3)4skYyc5ng};EX%cC%&!7*)<SlI>+<goaAx`<p71+96o~r zsj!a*i6RZI=0y869*&jq4~Bxa*u%MeK}<2Qa3!dvr)U!&kd-l-4xtC*wfy0TmEV2p zJx7kb=hW`qr&d>w9Q&P9yE`=nUWn{u=TEua8Ds!z!$f%$@)yQ3L;z6ggVaLJfEWiA z$>FYeA~BzAwodm7IXyK#aEXCzwM{GcLrC`U;OX;03}?_(b$U_(%1=zB0x98n*Kv3% zL+Ey9CQwdb-*B=EI(ZieUF8c&ImkCX3B(jgLC{}kYmsf8g_5Yi`KC=Im+haH6g?gx zk@&%W%}r2E6|Vr_B3D=;>>r{^_Ey7oQuxt|nWsz}Z1$X}O`t2QnzRUop03V_tH83s zU(`G=n$AQdwp4xp{-0czJ9yibuUIZjK!tVQV_osmd#&PH&HSF}NRvkXDxJSIO3z+x z+%?eogR8&u*keZDOV3#QU;4TEr)yhTi|7_Qyyi3bPP)YLM#sCb-;{k%*lJySHn<wt zZmvVVhV*qNAc>Kr2ur66*ImY;+5x(232U3~;zJRyS5}vwB(k=3t6OCbC;BI>4e@y? zqB2o<r4p=TC;D55FF)K8mVg|WB9jBfJq^e^ETpr8${n!bo~)qYT$~^zlj$5jGz`Aa zR>d*Dc{PW~c%RriqpcCBWWu=sVLO>`zpp5Mb`Yzry_-t5lm~aY?eW3E-C`YZTy_(u zQEr042QR+(qCxDl@l-!@pwu^jD;dDws%FJ24ysw`lMRu@bQja9siN51q90Vua&o-^ zm7z=w^p6$x>}{{SZELI=NfMLGn+b9}-u9YPr{)vYSQLGu&hG+Vr4g5Vyg9gwNB~Vr zMT3MXLND6kc)<D%b5-fM_aU!+zcFCE2bRh=thZRdXT9LO38yCoSIsr$+Tr>&*FCN` zxgK+Uz@2yhruzf#r`><;{%7}p;`b|TKjA5QhCN7mQIP0{wrLbla*{c&YHS5zvFXkR zRl+nBUBq*+qk1$cfpe77B)GQs={Hm2V|8*|XpX4~9B|BtunPqfr8X?z(=&v|m=PKV z3q0^B?6o0`q98uR5h~Z>txYmgf+88<Yze-Uk1#a_O2%!XDcLA~h&GG<;JHH_wqbud zgf=5e&a{2Hq0#+0&2MbQX&g;HxAF4Gr15m7OjD{-NWC&@s{U(>ul17D)5&U*@Id`2 zw5<=o`o&~bc&lv~vIOCw-{NcpV;%UEi;9fXD+_&0_>K$#p-ibVDWQ5uA_GQe5l5@- zLcYh*drfqAB1{b26=*I!eATToL$vkmc~ULh%1$<OZUfaM6^%&-d3>@=ASyo4oNCCR zJjd1a_O@5FQbpCfI|_1jR&6R%Rp4a2N{Hr3nf%^xY>cnol=)VAx#}MSB{wEo>@a6( z4dxPro?=(jL6pRxsn_{waG^#(Jv2nmtLy2ygM_ncW}g%cEwn28wz~o(j8!o6CIXkx z)b%MYMor~80MJlc&DxCsFX{1E*OSgBn6Fn<?;4Z1i0k$4W&0?j441g47^GE``XQ{x zQxXk}XfT*_;9f3WR$2lxLgCC>A|CE_tvaJ`_{OJN@2SuSdLS&;2L0arqIVrO8n}y` zetDP{H-*vyM3;J~7+9r>tQ(@1)S{*I9nfwTSmO&YO^yRvjrug}=xorETPB|HU9!H$ zA^L|!;BJpkj;lVf_>rliCP6eW>g~aUUK^s9-H%Od)t(-oq(4bp&<@Bzj1$5ZJ?d>b ztP7<P-s>c-q1N>kxw%nl!lt*P!<?-4pr#8J>$jj0P9AX@y8f{l=Xr$h;2kO<rGC>L zZ&h#DK>I_ABHo97%QX)3hC!V)7)E}#INeGqJ|S_`L~<Zg$48edWpgDJrGagkMuMa9 zkP_@)8Q&_lLyW6Jbh>rAto85d&8u2@F4U_@VqJoIKqM?D5YYM}q7M@9RwkOjo9-|w zqH46)OXNbKU_pIqqzQ^t-8{(a*Q1tL@}E1t;5fnT;CnE)Y!2s4d|F0D4<TI^_@)dr zA`)ZC?toXOWQ6#1VI1_Y)2lXCiG`yAoN=c{ox&#19^&q}&ajur3!F9bM36J6rU!kD z4}J<#gp^B(*GJYeYZ5fgSZ(gn^rG3GS~Rwr+wp6yvD~OQy9OT!xHp6|(8UOBd3xco z&c<~$@&J4wfA}^@rpF;>Krn(uH)B#&ZWp1ll&S!?)K!%c<b$M65QwbZbdu$gR!hWG zqtWd+*G$@0gJy{gOHddA2L;z5SYpCJak6uP<Qf8iN*{%J81DwcVXV19DrJ5jsz&_? znYH<92PD7T3+EhqNT^y)BT%}y_=8A7N`l@XZc>Eq5qHW+4^(!N%Y`m&y-Zb-I`*nW zy#(jH?>*MJsZ=HIe#<}k6RmWb!}&uz5{nwTYLsp!Z#aF6S*JWlc?4E~q*P__zw=LA z@m~s-jPgoODDp)yl9M~t6FLW-r@M!8y()}bm9(2*ouZ%y;U3a1-99N_{?teRW5~2W z25FJ{k>pe_jim!JdU|YC{gM;AOYujp)Y#=bvEBh*LgABN)uOBH6{*{x-bgd)hg2cO z(Kw!PPf|5yl&Ct&kr25QlPR~|#;K%|OMdl_{@?p1UH64juE*K9jHnu^?$DA#66x;I zeZ10$c&J;TRHO>fy^@4djcTEKBe%4_*8u@AJumbJ=UUP&63}82cB`Uq6t8Z0C^f4R zH@<Zx)bYnfr=739!A}?k95sc!Xy)(LdFc%?waLmEmKe1cGgQ*3Ub)>i(*$jGNw3rb zpg9WAWS!6=ss|j<a23#$p6GmXp{{i6Wzf|<|G1Xv*084fATzGgv#R9W!Qkl=J38jN zI2n1lG;y(o1wKpw)nh&Gx+0lVeI+GyuV|8trc|b$Nt4w;QXnh`wYupry;jDe(s{Y# zBQ<nyoyNryO-^-q7zbtyfF$?3KOPN-)1*To9+h7M{{m?g74dQ8x4&i>kHQwiE*x>_ zqv0YkKf*@19Cpe7x50)0+5r(+XH-S&)FewAMUX}V#1j`bFXAdrMqaH=Nvh_WB$A~! zZo19VF%1#OSmnrw^$z8cPC!w)=#o6rFZog3l=phI$q4J*s&bw(M>ye;`pL^tQ5CQ8 z9!X>Ys1?mOqk%JZY|jx-^7-p1;~-TMP$=eoFx)RbSww*omgKS5$Ya~@G9F_PfO8&y zSRw%6rmxA^;l9jmgiGPh*QJi$k6f$!-b0x)nI1ijTnWbUDG<?vp}InoM-S0`x~*T4 zN%}$7jRDZ*s`56zRCU}+PW1!GcdyhyFfI?tfOLmb*D1>s7AQ7LaxWG#vP9&%m$zGl zq*1^8H?I({Y1q9O#)z~^tqU33b3Y%Hw>%U+4on}B^S}>{l_E9aBgNdc2pk%9#W%W& zDzW-jS0eIx*&kRwx~|?^iq~Z$u%b-OcZESkv6UDu4kKu>k^~_P%%QVO<q02n(&|E* zSBVfcRiua>k)cU$X|*a~Q&##ToFr#}fT_xideggJv($Lt^pqqpykJGBEWNi<gYuuR zS|`<FrA;!Yvr?m4ZoAFe)M8bMq>+yrR}<!!bgI`mE)@s5SIhc;cwjVGh7J}PW37u& zc`1Qd;%aDmWs{A|^&f3I9>K^9rF*4!FNNtJxAcp6mu7;{he~4Bd!zq%i_{f#Tg#1f zKy^VHL~Y!hRpWXgfQ~dx`lv2-W8od@F6eej*3!t%IiyU1&`>@<0^{#<DBe;qcJJ`T zn<2&})WZ8z2w$+2#-HjjCG#KIdpoNda1P8U*w~l>>XDAipSmP3BZ@sf1&X+j!Qe{X z#c;aftN}p+jTqmn6(IfY{-_J?^$XG=WUMjcF)0!TChY>c_=mN>ZY|fUTJ_DB{MSD+ zJd}hNZCOnoKu1=XyhApKu#WDjUP@bai=AfY-$Y~z_`u8cnC}VIGXzCJh?%N~iq5Gi z5z(6F%I%EP_4i1Br;Zgddr&5O=2(3t&o~v2O^xlp-R-`8zw@F~e4FM_ajAqz1b+iG zNs6bHYJ}(z?NF@=nX!lfI28czOll8wb$ZF6S}7AA@Z|G=2a%QZNO8f$=P@Zq@JT9K z*Q-aWQlr^j3QT)<F-Js#sRu$*%STs53t54*wiqcbi5;v-xYYbgor~|7C-0LHD9)y8 zV@~Hu8IG}wvZ;iD9DX*Hnj`tn(tMV+oxf=8W6d$=SncpwGc{W@S5I{w5=DD~165bI zHeIKDGdQdv*w{c$Rwj3Xx!jmdec8QNi&;uj@Jj3!c?(YI;vBh`5ti2i5gR?*sE#X1 zKrM`9jY>s6j4H&hwu?vIRs&48ldU+H&Ca7%rugIzpZRn6(jJN4j%CVz<rM;F4{7W- zW+ZN}x)!@WZP1~PLuqw(GgE2hHd|gOw}GbOib;kd3}(_a>>2KCN$@v!<CXeV>{Dje z4tekL#q3viewrwS?&{k!wByb9o$OD9t-FaplGt_Ok)h6;@9^ehccrnh{6+6sq8z-d zZ}-rSw{+7MUlj?NcUjSp@zz!(9~vTp!9$43TfR(asK!^THkT+mM~*GE4iB{wb#(BH z&RFNiLuglwq~=Q_y+`LJeQYSdRB4r#^6-LjYIWvMtm9S~A1Piec(%ys^ofK(NeST1 zRpBN^C%bMM;O)THf}<)%evE;zcO^uI68xq)8Il^Nm3~v@_&6>nWpoS~AM5x_@3S&% zTg<=c+#emUly~ln_y)$}p-4P@((7}@{rN(rV5Bm!NH{v^4OCNOTg#19G!l;u`@@ac z?5t6)S>czSwhq4ZGm$!&g;2!oeBjqGhm3~@vwf}LX%zplob1b$7}9{(2PwYI9T*!( zRYItGVGL$(#oXDLsO9TH`YsG{8#|^i|9@rY_=uP{uDuEh4h$zz$EWjgXJewdZGN<r z$tgR>ZJ)BU&7C*mLMXYADu_MSnHQ}I^E(pj*m14ncKpeF!10vhS;sdW-*@~RZGb*F z4cp<=i%1>@oXl1ldwlo+ib)}i7zNE;At={MNt?;E)s(^<U`jR5R8Oy5E3XGq!gzy_ zX7CqyCj4Ad>H@ita@B(3O*gDH{tiei<@JiBc!3pC@EISFZ~aO^57|}YX2!+)BkA-V zDUj@7wxs-LsjB78I6k^4SlAi5JUBKs>}0qayd~2(sf5|G-YP_?;}(3tu839F45LR9 zs~g?68RPq{5{4_SA{LPQw;ZbaQy%Q4Iidto{)MF-+X)c>k?c#BklI%+X|+g^#MZ_q z>WkeJcsJvilIr&+{nbOQErGQ7*Wu$&1zv&Ge!LoS1#F~EBhhM%qYb(R9>1#v9mr7! zF?*sG3m}YVvy7tq=|g^w!LWW}5IoyY0Z|wBj6qklikmzkdEyjUIIk8fNAqo*448y@ z8Qfj3Pme>}dEyu?+Dqb353@~|+1JiTE796=@sw_oZr=YvSGBMgiXf72XH^MFN@%n< zN)U$&eeFWD9IKsIw0-Vmz++rrY^72N>M<1U{HQhNcE>K=NvUj#nT2|7AtQT8DzNi# z%<Ud){g>~T)cc{E+3(dZOyqBI#SNjr#TU5ZA044>x5kPwQED*xf>KAGN6akQOStEz z)g&bw7%4C1kKKZM!p?MlfG3|?Vu*+ULJLkT2aFFU^4WZ91X|k6Ok}fDnZJX2T%O`B z+kR#!R%^XiH7Ae{{kCK#Bsp%t@nST!JJ2~2%jdHhG9&k$%4XWBBN*0`FEx~?wV;cZ zCp69l?_}7MiYgM)R}IXr*?%+(4(LZ-$<_k!$tEOm7AD3mxP<Z^MkTu3BC0^L3Gy9t zV`u@66?JVmbi%w-D@hh7@#4u3%4QAED8&d^=xV_W{43}dZmwGDvgYc7(WTZlo{?D5 z+^BEz2oD|cnqD(}ySuziVFW5!pOh$@0}2;L$Yd>xr3K11Qe4;LlB{k7QSuxqukueX zD_BZX4P^j~zn4Qfgh3dSUxI}Z+t=?Bjb09XF*zptaajXR5YHLduj9kooyg_lw}z8G zZxCB!VnTT09y?x%x{YXf@S<P8dBN|^$5r?dAJNQko#uzWf>VKq3#X_MBvTPo0|{B- z_l)KXRRUDFykWwL`@DI>%T7+PI}VI?)N)q5b~cHIFz3k7048z%VrB8B-?-4&Y45t` zuElLP5d+CSZ_4AX4BZ|_saSNz<E^W+7NY;kLT%8OZAYSmM2)6$;c&zQ)@0lLu;GLC zfO$WMeonOFjFL#9upf>8MepPp?zT|e=7Jx;*Be?S{25BY{<x7txyJ;gUEcR@zxmfM zDlZk}9(86EgkcxpHXD0v+k+n?Y#s|#gP=JuA?Icez-W)751nzjFb9mI<s1m&`4N(~ zpQZ?32=)d(V62f_<{8B8oqHOS89N@EoS9B#60Yb#0{?mpU^MJac;h3H*<ffe<na^a zCK5Z^Os0s88l(gt=xrRcdx>QnFh6NNkALSW$93#O^^i%-0dq37U{1FI84=K9@v6ZE z^sGhpAm+C6z+<c3MvO&f6ifm_0<Y>L04y?owj2#g8isA-=y~^DIb%#8zi;n(_g^_{ zw2$An4;OdV!gZ)~dy_}SXSO>O+Ied*Fg8`3?*~o)owL>#ABd-YMkpVN6oMIVGJp;i ziZ3x|K8<VZkcIzQd@z_+FoDW>HtsaPV78Clw|DOYSInC2E4aAts`fvkWRjiTof=Dx z6bW1ti8xcU%L_N-+ydMcaDOXNgOqiLGN=}!VH%ji2wW_}L$xt%wn+m@187pQL>{$6 zU!-0HW#B9B5y$t9FB|{jILQs8pw=q`0p%%1OiD?p!G->iKwZcfovkV)%a6A#OFeSE zEb>t4MTrQG4{wbF!9Ic^;&H+);hGJcK?iZj5#k7gpOsKB8;#@%h9rRi!gzYcK)o78 zyNg@cFy0KoQrxbfFVY`{JqOtPGeO+KV3Pp6M+vKhwvb{G^|7u&@Aw=+wG3trK3Q3t zzEm(uG_eTUK*F;T)+oN{gTx4QNrZK;ME1sWNz@48?~iCQSo1^ZaDofx@iT7|cG!+d z%mJb}B*h0dV`w`5+|e=KZhQxQF$~#7;Sd1~9n~MKRzkR;(w1%7p5>R!kT=4{AxtUP zSaD=L7TY&`T{@a9rDMr{W0rW;si71RpGqT^Yxi(78{Z#Gmy)qmzc{;6R;l+G-^Gg9 z5vP*gxNFGWm;jk1(M{|kWd+Ce#`o}-$bRcddvR2TvwY&ed5g(p!Ou|{SNJxuX~Z!I zA*oQT%cqKU!vEr69dzNx7CPdG&ll>CCb9I7#c&JbVg^mtm^fMtl@dvOcqfar@#}b8 zdeHd1qe+AHaIhgL^K$_b5msvXX>U)G))}Y#Q7VV=7{Xrw(GJ`Ladn=<GCVQ7CE%Ma z<r}bRaa|9GAe;r;`uu&wu*aPOTtcr4ok(-rV1L6h8wH$5%2@r4<Cn&3jlU3GS~*&2 z9X&=29U)B{DrFL`yECR$Or$ZXSP}mRFbg1v#G9ay7O+jwvf_x&QI;`8&5K5w#;JHY z5-s@MVY_b<%XhakT1&-?;Sj)+of54`zrYsAgh+(6sbi##BgUs4qDw2XI<;E?B%8p7 zjSo>gt1W3@WA0=H%K;U44ydYgc;zsfMR`YE8K((ip9EYyCf+KUxO4`<gt}98ts%oc zO1!xMb*-z;qS0p@DW+m6`7>^ne~D5iB5gZ$=9^d+SqdL?8)k77m33T12rL>;(+EI; zEyhScQP;f$2^APYpMqrpSlVB?EzSknGvvVsitN^G=EfiQE%Y;M*~y`P=p@BkrDt$n z31sTF0=U4lh_x<Uegaa+?g4<}>E6uuC8yhSxxTGaL*6uwIuDNa$0yJ@ykIy#TXdJq ze@+MU1TM=TyzKI3Fdq=-H0*c6>_tJ)ANQrU*{I&RlUd772J&r}1x-^J4O!XU&Fyd7 zKX=`wyOXKQUvWIQ@T!@qk@+!K5TxD;jofhE<#M)lb1wQTt8M;*`P<?6UB}aoPddJ? zyf%x4_9W|X9O6gZq#=K;)Rhl8_Mm>#uJXLvKx!PuHRCpT{A@!|L5l`UgYyZ4Dz?T| zyQ(i|#ED+nPU3o(Z=5mMX})pBn;<iU8Kn)Ii=0E);AVQ|h}3uHtVh);8Y1M_INlZ0 zllC<GZDYomNjC5tX44v}P**MON>8GtVSEcddzC+&r;7hn{8iyB46qWvSrS77uiu_g zu{OE@IV$)UpW1j%beec}=N3xgD6vw^G1g@e5xQk&U;p<17VG>hwK5Uu{301o96egu zKmW*;kYx)JHiUxARJdG5C}GW$8<_<w+Awp?iZ~tI!6W=cff-x_G@x_kO3MHFRLp2~ z?z-Rt#~I_kx4fRmMi|^{nR7Hj1RK7gYaV(Dg9X#9uvRsD$AeWMMEW0?Z-x8AB7$Up zSa>{`4e;*)^p>3wsQuTUet0gEO6;GAWablpaOBw66AO=CMS8Sb-OG{d^$Ha2%R?u7 z*A#L$)tK3pV*Zn#EY6y(&V8%zS$)xX_|XR;>?ss`G7{f&&BJP4I?nusHDazQ&zi|H z8kObga&$6kjdb3)*m<*YYSG~TTZ}svjZ>XBv&Y2F{JFVoc7VBImTAbqIUZQIfm?U+ zyvO`aqZNr|t7e{5IZi8o0mhGuwQMF7IZ+=e6`Nzt*u=t0bN_=Ytq(u!^PO<}jB;^x z_(Zzp!wPS_a$<P3IB?z81B>N}fyBy#`{z$Q`LGT3s$l-(=8w^duEXsbA=YXee_W1% zXrs&y!*7(xDCyJ;E;-=@G^9;}<0s1mO(@R{pcpEC{v?J%n(w$RQDdv-k1K1xlSm9l z@q->6P9&mH9Ctt-+Qe)&cfV+4Dr=9Jlbyhl{wW@aem43qW~^u@NWAt@mD8A)C@=1c zjmEuo-+b|V#!ou|<C(?9`K86qhpzbSXYspn=EXDLFrNXZjXGvovEoH+YJ?$7rIQI@ zoyIP}kgDhhEJ*+spREf<y&-Bw@)i?r@mgJ}Gw2m!k58oH`d`9rKC|n@f#CFL^dldM zj!p-cuUO_Lm;SI^U%l*`Zv9>^+nikc^?~Vfd3wOOtk$mac~?%pYv$`FmVJv?T<qJG z@LhVTFR{zFdVGHV_^NMLZp3$FHF)6o($et*!PU!xquE`)UBf!p+7EJ4R?YZpT^R7> zqK|L2Znc&i1?H!X4~tjOOZ1Y^vW1ZW(yffh_7@#Nw?+(U6BehpiaT927fcI!dBhBv zDMp0E_)ause~yYnM_g^8glNk-EM-G%Fm4#vw2l7UaBi`Z^CecVK2VG78XesgsU4VD zyxLj`4(Eoq`mEOUbkRDUZV%_2#p$h0U&efLv^+X}+3{V8fo85SJ8;M9$U_f}tllxY z8VOnhX}jE><uqMujhOqI33um(;B<4eTpVso7N4=*xATfi+t%@26Kg+8=az?aq#d0w zLs26;I^9YKo9*e&Nnd$%addScvFrF{InHWFo71bqZy0{4wK_dqEUtYyy=$5vinF6d zpRnnaZ=Qqj=^p$qJq<1PVuoyvd~CtQv;kuI6BjrF&;#XUc|iUPkjp#%NBNuSUYkE! zJII{n%%{@>1L?Jc=F^{_pPye^dhMe8boLwV&R2|Q?z^w^r*i+Ie0_F){<HVrZ$4Pd zclPIN^{nwsz9x{pK(^1#OZLz3e`#r9-e{|`gztFfudR2OKZhe-#ZR%rDBF+^lSH;t zN^^j-EetE6LDACzIJ`!gZ97S1SgV0e@=KjRN_4I?b`QUG{;jV)U|YLpmqtf|(P(gD z_$NO5wVfXjFfg-JEL-;0BPT}w(P#dLuX9za^O?6+cHX{RS-!jZ)>~t-Y$EZ{f0%*$ zaB%tH=Sv5NVv&hM6Yj)6X5a+ha^?%h578|bp825Q5448#g2JDXxJjO>$7x`JU1$<A zLJ-(?{u;0#EZiZ9vYyTGCfLs^tXiX`*F$c4#kqXr%1Y+R(M4;ZXpIz4lzC+>{@f}g zo`jb@@3v3aZu6T1(*u0wSFYQ)@4A)F50*xLFV{Sc>zMM}nz`Q_UF`he!-;G*@!@Y; z#4`RSc;lC6ZZrSgI__vWrt#i{$2x^KP?mx&qX~9&9dE!)XC;9#7DS~`m=WtJ1J8pR zSI}mSM$CU7UA=5yF*x6f&JVnHUweMpcjV3^zUBG(eZGtDydp6_AKf<a+WD&!TUXaE zoL+6WSEoPAA6Ld@&FSd_v$#ngKG3wM4_&$xEDuZ=qrR)}TwT5MYG3E|!Q*!xa__tI zM6^7xJZm5MNweMFzjb!)Zk^A#b?X5N*s5Sf+qn2RwTKTpS2}7BxEj%!fjB2|JUj6{ z9!F6TH(TW{7APCvH69F&cJA)nJsL6|Ts97OJ_wdIF1uso$tQ<Tbl!Mk_?_<@zRtME zD!iCk`(p0J7jx$J%!_L;fR(@Z%roEX1iojqhTk>(&fycJ<l=f+haxM`ZSi9D7FKo# z4v37h%NmeRIgauKcThf)L<X>D%)S#RI)7-yt|yWIdL#DI4~^*R>h!AF?)+=#Ur&#Y zp1yPR&O1kq?-=KG{^;ACr~mxVjf3BY4b=J1k92-!e0uBSj~{>h`0>Z3ZbUg}zGdBL zzQjJ9U=+%B6gn$CQ=W-h<uLAY*_Sa#_-3*AuIXot4;JS;H>4jbztjAY`BG)=tHs~W zJX18M)_&xB=+=tyQ_7PVVt+w-YxK$k%`GJLq+ypEEVY5@YH~Z<pz&necry3WS98WE zI=^LprSrwrRda347#=qNaP1ma{{1h$sM_@!>oeBnj7Nbo)aJygLBvBK?kL!NYQbQ$ z2U}Ooi>~|qi;KHDPmdZ0j{NOsR(5^r)&mb7IPl;*?>}(h{{7bBTR-!qmCl1r<DO;D z1K;}Y>(@^2eelT#S62AiFJmBh;|tan)}?q`6Ie)Ux^q05cFibi5o|VUl&uC2AXD(W z22_}n^ToBV6%)qR=J$&8pHKX~@rkt;Uo@WVykN9XwBGs7migOPE#6kC6xZ%8-c(#F z-nMv}$lR-I3m2O^4t;y^MC-|sCneO;ruvgaJE~IubXw@%UhORTZteXBcvi#W%h&!V zAkwd$7<uwt!{%>0{~vR2A0J0~o(u0YBWc6p6&h=#QM7o-tTfiZY<A7av(h>fW{<Yn zAR&<raxJonREunoV^I}577>+>l&H0_6DM};9)pQROih8fv5ScbK2oX{%7+UCC<F?v z8c1l#M}tEWr{rwB<8$55tYncU|GmHWeI>1ScXnoW=J~ikuKT+0C%rowE&UPy?%nD5 zh3`H{-)+t;es>^&{<<6O+(7;q>W5OZ)-}OGK%>`z-|ovO7~LeFqE(}(-#$I+Y&v%O zSYdYf@G$<;orRvBLg!nfPjB1y%(lX@0{(jbc;wK?NY3u++|=2LTY|+jBCHl}z#T&B zk+W3KanCBhRtdaL5*jR~McsZW6q5Q~EyG_*HCjqd3pXs=<iAX-DNVxo!dQ_5ITUOC z9Iu)esKs=ZFyd-qbjd0^tE%1#)nTWE8~7`gz3g2L-_vjR#d+tC)Fx076|Bc%gP`2j zf-<=0@}=K|_V*$APY}+%HJG<Y*x3<rRmrRI&iCyHwv{h^d@iriR<g6soj;DexhB-@ z^Xv6-L`enY$ICd2SBWqnaF=AQ(l+i=qSBn*1Uj_M{-tx5m2-@&d+KyPQ)myGeN%ge zoe{%nwlmI=quJiR&`@7$(izI(N4zwYwsX(D)R*fG#`P_`59}Z7)6cyW&RCtNPGp^S zC6RjI@p}`h9A;;n3CyVS{R(Gb!%FA{npI5zmZ_Il!3B~O%y}KXj|!taNGTk5Guw7- z%eamsY)zM*8M$)=cKO-TmxZnDzKQIXOlC`V0w#Jo%|_>Pn=3|g6Hw%%)Yp+fA1Z_0 z%58fzB-V!Dwa{7Yjrf~y#^2!o*#{S2;XR-4uZjO5{DSLlR8VheYsEl^rPT&q6K6V3 z(2Da=i9m&l1y1!?(~0d?XK3d$^OoiQ@Rx^$zwWlCv9U)y`1YF_%YO9q=UHEOe0qDL zYiK6c*WWx+Xn$m;C$W7x(KY_4o8PSGbN1bQ`~=Sb6Xw8qj3a=83X(sN<ETLuU?8<n zW|#ln@KJCTbE)=V(EE3l)T~ol$qMS7+h<}!ZXq#~NY`K~4o&zI%)7sL*&C1!Gc!;J z`@KINGG~C-{`&kkg<qrnFF|Cq5#ED{()}8o0ulONvyw1RThR?ce6R54+m82z^gH3^ zsIXOA?X3$=j(Pj0H?jvehS|%-v{Up}YpE1_9V?M||L3jZ{JbyA{rjNGkpV8tx&L7| z*<7A4igI@S96LM5uBYpVBtIW5eMN&M<>1Ooe<QS_Nqqe%Jcw((2v@rjXM_Cn#|YVf zb*(M7BHT4+!dY{L)^xh`9hNH2&I%u$lW@{>T3AzhUN}>9=(-?Z+2z6+b|1HUaNkQ7 z0qUIlHo?-1@v@tc@-2I|&No@urn05;t|we4gY5pH@IB$j(Bc?1&|IAHjWOIxK@<4> z#bPn>^w{(<yO2&zo!+_iapA|FSu{`E_Rw3hJUu^|egx+MR>XC%jxnnso9q2pFY$)J zX9N2JcLnal*OYw%%w^17cnV5Arm-Jvp|A`>JZ0%9lb=V%89mm*WJA^#S#+&%NE!SI zUe%qfJGhIj<Xn-7w-&baqEXl68+s7IwQv&YQ``v-TunDdPA~0Bla}l)d=gx=s@QMT zjME&{B4)vnb74)DD<ny_8bf>4js__lQWGgz4Q4`(lGG@be!XRjno#s~e5-PCPFB-Z z?0GE#`%#aGilj_NbVYa4+-!8nh?JDju`OG~P+FC9p@yy4Pf3)%ttQ}4q-@nTU?t<c z!a6yqrZSEksp}n@3{_OC8hnkgVTGljBAJP1P~Wr-ogpbA%aPK*xTdz%XxwFHBF(C_ z`vfSTw`-aB<7AUINMg{4>@y;#WAFIp=+lxaDM9bEZm{aaZb{V}Gv=;H%T~=4Ui3XD ztI<eJ@iR;Q_}wplTKpg^kXrCB0>~nRjKxHNTf(Py5N<eaXoV+^E@LmeT;&$MCyU;X zRF&OReKPCL&EZc>{!8OTx>&l_QH3*5^QG%%)3dW_3>iL0_KRP~cdW#UHiYwP<w=5X z(Ok@zR_LKi7%T=TZgJU{iQV4yw&Fd3Z@M1l!lkm!zEqJ;dz<B?_g^fORM_q5^4ABf zkXpJfnr35F$qCl*iBNKO?R(CBckv<!i+fQx4tr~PtytJxuo<8OCAvQvg#bLMz9x}R z6nJK}NMWT1J39;a>l)XY)g!YJ9e3tE39IayDM$m?oy0u;yj%JX6hNz+CeJMm>EDV2 zXdilTx&3u<o7fD=3Cl_Ml^ak_*m?>S8;NRxv|kXS9EyN8iz}R%;kf_!%AB267k0XD zzjH8nr1)beY0WJ>yC-qd4Sl?4e!jb}KRnWZ0H)QJ!R&M1`P0tGR&{Vn&hIx*zEuRY z&D;OyklU|e_EHaAXnz>5fRv~US}wHzQkz3?ry;ogR$t!c!q<|aXz4mt75>D#WFs33 zC7n=m-X<KG?Bs3YkHk;FrrnHh!u+dI+54_yHE|~L`3?*UYg1CR7(NjGVb)(FtPWDv z2<0GwyhA`c@CH1SJwW*-lqYf-1LC3rvTWlb0QiJpsc5nwJG<-6?c3jEE9pO000>vt zm_2qVtjI{`4pvE#u&N9XD{5G+4k6Sd%1St7cbTDZg<|R9FjfQ#)gZSbf&g<UrO~J2 z;C@#dJN4|TG0ojSD1Ku5o8FnluQ)dv3XLkUu&5@R&4lVSgcVhl@HJso#q6z;R8<Kp zA5;^j4qPLo0&R*YVM#=Cc@TJ2l@7PKq6>N3`yYAkzW)CEo_l0Jbg8dLcr5{{Xbe44 z>no8K2ED2)u(N{-&@JJN!*x;VH|D~E`G~m6S0ZPeb1wrrSb1-Jp?Sf4ocBW`bm&#k zOa9r&N@!IOUTSJlM66@lB);ALy!C~VHD0=~qkG+%lWg|Q=b!(s@SEu1OT%7U*V}p3 z`xZOR)_GS$AOGh3SH&AJcIz;E*P>U+D&=4ifJH>w$s(<VEda=$Fg?J05d10=fd|1h zfr$bXd7*QcJyo!#IuB203U)}brkp(^Q@y=aDQj@jow9~|Mz-2h)dyk+=+DHTxJt|< zcRjpk+UW_aoiN?*%pUADE{Bgbv}K}aw>=mVRXyjOd)w7yHZv1DG-Dn*WX>Go_B!T! z;989NY3OB=YfaqJ4Af$(p<(eK3j<+Z1DS!utqWEnE!b|;ky{1C8@f?M)#&v247|B< zamCEk)QoyMEJNZQlw{VRdcPVN(DN_k^9u_?M;c~xG|kSYz3w!8yXi|0sS^W@cQsCW z-)mprZY2kj-uE_c*vR`NaNeJXbWOa6aUtNg!JcXHFGr<s92dTVCty0S(In$W<w{jJ z9)(b$vJ-rc{S5ZV_XAm41+o@UDyG4e$oH-SP)RR<d!R<JQU~C&Ubzz55Fg+L<`ljV zRbik>si&ylNcpxwkYaz>+*g8&L@)}yfHWkK)&?AekN~taKER7O!V}n86`*6G-W4*? z@e===ico4s2qPVf1H-2fMIf~ofe(ZYp-{|LF#)s&@X9bpFjG_ojmbpSj$Jqedn`M| zNMT8f<%dK<nk?L%ZZIQ}#z<pQrgbD7q)bp!fmEA}G>S?jV#*cia72@PWdk!u(IrFf zRZWyrL-WaIL{WeLkqs5jZy#wy!UO`6zdi?_pbqoNuQwiGdQ&CFQe~^&CNW*Ad_N0| zk}f>sJ>_~&LSv;6u8De|_WpxKfF@kdF8BVKrGSk!2>IFBq_;DP|7@)E`u(iqj#nOd z;GXZ@&#t?p+`naCGe{blo7d1$@M)W1*^}v}*{!~B4ct&816#$cpol<eIyO5S+rii` zr(+L49Gm_nyH)s{rj?%8G-2hd)3H<WQ?c#NcK$s5YI!XAz8%$1her>E$RE(c+z!Bi z@m0Sq*0tKg%`g*-PBBeS^bY{e(mMz5y{EVf#p3|}SSNW_3!nLYr1!}3)F8|%;hzT~ zlj;yrBJ2}(_p&$31s!bUS^ArBX4yJ|Gv}RgcV2kS-<qB+(iWJ{{1bZSvNSM)xqk!v zt0=EZ0sjq_p+un$+!TyOTY}mFUSMmA-;ls6sA+|p9l6?-!rFW^EIDDR!eO^O+#laM zk|@2{pHGZzWj}<J_wEl%F7{&AL+X#0`pqqgkwiXkj>NZ8|5f6#4d4H9$Z;KO#CL%c z8PH(}LqgKxZ%t8XeN1~yJD9_O%MsD7THR*DP6o*rOEN&9!VbY^LST`%+=>cLRC*Q` zY#V}rmGy1)SOf{>+kq1*7K%<Ie2+<w$O`*24OXQoiiS+qW;$(4SQiyJI%-Ijb*n;b z4152jrj%erzf!rZCy`CZbyZG@u825}S{>0`;XM&8VT4q*$97CDf*IH4HdqOHrz}Pq zQ=J)0Y0!^(&2kCTT-9Qh8OA(s*L6b+cZrfD_9$8f=8Wj{IkKd_VE4?MsYat33UCG# zsm6*<S?L()#GcqYqNH})4Q1W;b?B;kNa-su3c0#N4^fAaz+#X^K}BzB(Jm9Xxu!rX zHeso4wr+B}nVZYx^BGk&?242zmowQ1?{k@M&P#6TdGfG|?i~BcG{O7*(|H#FY0fM< z(p;QAWiQy?C)wE|h7C}WMfprMO&VdTMR^n}01K6dsIM+6F+*B{Wgm}wy|jg!#(3so zIhWmvN#cE>_=AQ?57p-poZ}%nSk3rhW5ptkUzm_C5^`tL4Gj<&jst<=?ZiI>q}W*( z*F(0{H-)Wemmo&+l0{HSR<rHTOPZVX02+v6T;TqQYE1zc#N&c-Faa~pai^R~#1R(H zi$bTXaF1k-*F$@(g)xQ_Vt569gFxcF5=sTI5VQiYk0zKVnJqw_w^WG9!EJ?fl^PA@ zCbFraoKZU7^Lc=T2MI~+5h^<;azX8~(0E_!lTL*-&>jK;V&sPU05cMncyJmh*K+(b zj9J3Hd}?Kd{CarzP`~g7>d5#JAu4=iHA+fQRR>CIDNG`4ouu%mP*Uf#(izyIE44W& zO*q&T*c-!*!siVf5Z4OpAh83rJ{$-+>O<9o+s(N-bGxwBe`X)vVa}QJiS64H^LVj? zu91A^p9^=vZboG%#3d2!2DHIg%4F+e-Z|Gh$664MNyfc%!k0^18FU2y&i6t$KTOA5 zgs4gzxiyT(Z7%F6JnTJTdQZj~>K0V+V;XVHx9AuhpjwdNOU6#Z`g$VHDoVEqU+~T~ zvg8_;#P>ShIr^Sk13TGk!qs#PBPpr?6KP}LI}|$<yD`0qt-kB7D+=rr-aVVJZ+GA! zq}fDhU$_=9%W!_>C)ndgHsJl`jo<PQD)8%Hwl8P^1nL9gVIy=p?;iGvg3yS)<AwB% z@4kjwjzdwwpFhRtS8Ph($d1w%cz?+TZv3sbya<c|h2eUca2Ia~lT~0rT=rM*x?wIC z9u$58yR#99E9_1krU+jPvYL#KOBf0=P+j=ewn~UXyR}|#BaGlGkVj#CVh^l(^@PGO z_?*n-pxw~ixPXYx0t{Q(Y91H8eTr)K3|R$4sv^ph*`7&fB%cZfWBIYn&YtXuX?1m3 zW}mD_BKd5tZ>RmKtQHJ+>iNWEUvCC&B?dkkNC-h-!qphTu;MXrA-553=dtxBC`?@4 z+9m)J0EA6;-3vF~l)PfCb8}($Zl`17%hPNBz)4RggsmHL=7(#-A8qd)WcnLUa!bY@ zq=g{RTj$S0k1W79SC*uaA5#x7IBaDv8h{_>484QXO50&ERC0*~_z5zJ0*(}DBpC&d z`hLYQ6z_gmC|${Tl69%x`(fKY#f${I-Frg83TiQL1r#a$2wP|UA7LS67;yT&q9v0A ze|;51qt-Y;-=Oeba}p|e7J<k#qUpG9l3S-Bw;F(Bp;Q#+wWM4G8&_<B?X3wPg*DQS z-e&FY8}T>TS+N1ui_9+bzK>XQX*Go7w@E(41Dl1*g-^kcY=F=DKFnbF$Ot|o=3I;D z27yTk#FOzrclNc^_OYHSXJq?WXUN%T4D?#TShKS$*Z2-yztCn>wQpVA14|wUjh_DX zje2C;?#En*WTLo)yA#4q5uWAZuNIa<8y+l{*_Pp8Z)O`=JHid+H-LXhgwLnb{Qg70 z@UMmaLF@R^{X?eF6omse=Y4<QK6csuM;|E^9vKvFz)6nc2Xko!j_KydU_L`iX+rlN ze`mG{d-3xI0&9eugu}R6=ql+V!G_Vok|bP?9XrNur0L^5^@VRd_#n;~z}Vc1u?bZ1 zA`#rKl=r0fq;NO=XDM!@T!OLn2qI~I{jSS#rC7uTLU<A5M#EO3OapqYuEnmz?V}1Y z@rrD8WjChL6Y2s-cT3MhshurGXVoHN)35;5*=SMd=#NJG;TwUgbGF}g6T4MSQ}@K? z5VmINJ+i9GyS;xvEZ|qral{vi!czJ;R=x?qleBo`6cr*cpQ)#PC=sYY9eST}WY1)4 zn!tm)fFE+uFIX!F;qF{G2CmHNs}P6{qSTNN03Pk%I&`#9A?_McQ{Ac(O?`8IhuYVx z7Pd$7Y$6!0sqUx<hr?2H#ECSA)~mAGT%oJx*l3@sn}`v26bk8zf)Be2|K_s7@xs_6 z23*mQIy^a@?9Cc`9(^DYG9sdW<fTVS--X>HiPhm5DLfTv)*Gj=6n(-nRV}FY4)m%C zP3s#QHG}#pa}&OxH;H`^e5PJ2#|QltjsmrQutp-wM~6sWwE6)F5IBuTNiD5}8a#vO zDQtl$8q<OEe=FW7)`I_;3Us1>VFnYf3i}0XhT^#n_17<hWkuDah+YQQ!iEP(HboK( ze!<KEC`Jtn_mNh|gX@R}wS`X)AK086(hH(GwL=WY#PR0QpfR*%lOc}j6A5YOw5W*% zeaQP?-NQW_RkJfc*xzMDgmrr7@NlO-)Lf_l;VzlaisSldMZ&fcIBrVp%qNZf2DI&v zZuj)qx?R!P+cVv7S^d*Jy`2>pr;G95-?!ou@i0CdxF+xsK9=DdkrU$sDTKz`q>3Rd zNEj-3t}Q>)`&zt5M3-;>?f10Ck=Q)|^U57qjAxXa{Yyl_pr0vlD;9r%2QK~i%nj@y ze4jp!`h5fwW(~}>C&}1@4d_3eBKb-0{TFN<gbCRcpAr5|=*Nt|1bBM_S`f^@AW+F# zc<@aiXH+)XSCVgFqrA)7AbbmCSJhFWAt33bfY?#jdfIXxPT8H{`im7k!XKsd4_VHZ zp{!$BnXy#PFmxEt|8x6x_PY1a&xK?;^xVU?YbOS4s{5Fc)TXSk2%uYQk8!yYLHYcL z$ioBSS8S`rLN=u{)(h4gdq?<E>B}fF*X;ct;iCaafBb+q^E~zqK@*Ujw+i<FURo^~ zENwu0>-aCZgY*z7bcMmmKUK=_Hk+<#_9gP%t|QxS+2b8^YogCI%e&0@?}XNjY337> zJD#3&rd*aEiS?Ork2ad#cSp>=n13I~gg;^L(0%BzMw(!$rC7D${j2W%tMMk24DWj^ z3iB94DKHtZ*lEa8>{|=#%x22Ni#uTT!(SLo*O^}4_h=x&&I)(=?Ss{fVKvTqKQma= z`<}rzEqwz&uNZh0GP=p%w}l7*5YvmNV?S9ujPDx=$in?ljnF6;G18}K{flrw#QTpF zi?B$FfCl`dx10F3cYT0!Krb)p1n3XSvZPrdY~_A~a5qIP$$Z9c)X(f{;X$^OqzJ=A z5*{pF%XV`8hAja}cu@E|d={ixxp*eM>?GlwW$^n8X;AE@O3w)Y17WT;=(|%6!RU*z zv&C5V3LuO1=m+1~@HH=J-@d?ZS*~^8+_+;S{*H`XP`t$qZP~b)%R3*-Sb?)$hU<nN z0q?=*K!`xAh?Rz$0r&+76H)Ys#!ip&F#YK15@;1Gdlw!b6Mm5}OK0enxT^da;`rV* znQ>cKnN<fK9>J^98G40wfUjTXqy%B1eh`Qp$)2SMpxw$-qe$$+N+GHjpO$2_`ZNK8 zA)4S{K`<>62*gFMleYN6cYk;s^_jh4M}uKH)Hydk9%%+WX_8n<ww96(OYKo%t#_N2 z()E-!7oq<e`wOUDJd3LcB7)L5ch*0w%bFF=><>FCm<LJDKG0NELsu;x7j2I&{rQ;2 zYS;@$%lH@BWC7sP&=~%dB{v7dM1yyVIgNk9T99|F;b99Do<eDpxcS@xdMwV~>tclh z{;bWLtpYolE~beaa@AEd_8{|M6THsxfG9XsC^L;%j0P9H1*p_wTM~>bk!t5WL>Ba; z&aG{zEfqvOM+&wS5xsS_ey3}5Hj~%1SD~Xdr6$@OsbTXOHxnN>$GlIP6A8RF!@`=0 z8Pz3|-&IRrQiXHUs$e*(VT#Dn(xV-$$NOf7IX1=;V<reR?AnaUuk+{d+g?MPycZT~ zGkU%p!KZc+IlrQ*j>1cA9}ut%J<M~=H#U>lkdNi@w;_?=g$a^|nDVZ6;GP$qNw2#| zv<vn}0F)N@V+RoP>c(DRXE+XwtXZJ)n9t{b9gxIN3r|8Tpav?{Cj&@?s60hgTEGAx z&T0#-K2ED_*Fi<VkRlX{69X7`7{Tjq5&l~285!xZvRNxt73>+x%d#y=8B>$>9H7O- z2GvlS^QlB!o!YYrEF?D<+X2tHQXHNcak~ngSXaAKO2!k&7D;FzU%Gm;Il8qw6bffL z<st8u99!=_&~0wt&ab(MYaYfmTLJhA{x$REz~6n<KJ8=as*wi3FM6?SVM+_%;8#69 z{=2Vx2Cb}G;bx_0fM0iLQ?J8Gp1<?D#aQ{m?Y)kXs^J&j_4a!28!VRtCctf}fF^!S z_#4P-vY3I!a6kdJJ<KO41lIEAkt2W<*c<VC?~TuuzS_>#rGypt+#8#X&BytZ_xFv$ z2;4*(-~PA}aV9>KND=<t@p6(Z_TujwD5%7S5%fEThmRlen9_>>=Fy0fFB_MOz_FpD zn>HO?F7+s?wCU)xM+;oGp2E2rpv6_7bOFGUVEi`u<PRP$Rw~gDh^KHyRvR|K^r~x_ zb31JqO~M(3FRtrX*{)G~3#O4;TwtdL)y}_2=d;R;&p-MR#=g3+RUXh-Qq#PrG`Cn( zt*kE-%JCf1ImAEXT8W~UOoMO*woA+qtbMqeTWj&MQ4GTv0xcq(K~(mo$w{HZaVEUe z?Ck1BV#_vP%Gt7CNJHOkVOO&s`ueUGy|IPp^iX*C?kaGmpAjvw0zMkWuh(EzV$8o~ z{wVA$Klv1#X9g-X5H;dY;{`@Fyi`3%;WCV1BzsV>MplCGN|clNS05h>51xGG(eZHq zRNv<Qnf}i4!*`Ckp&UCA+Yzowbyz_oqd5>9fK*w7C8=>Eq#e@@r{JijebLn124T(# zZ#+pS>Ob|$qowB^oTYbnK{YlXnAy#qF?XpMBbdmxOW~1FSg#QkWlusk9V_A9ndz3C z!kCrF&F?i3H6wq)#~W)Q%WSl8ncD{GTXqnnCY?BGlu<x@GzuN@lt2D10TOvzeVeeg zcmKWndlB>rpLqKOKws~vtZS#;q`TXHVrfxKTh4CBax28q?b}C%&zW6@(Paip|E#2X zdQysTd7&nph?>MHHly+Cn$l-N5^*QO2I}R%m=Q%96Lh^l7k&cyD*`K70i%Q>_0S8z z#w(@%er9!cvQs18Q^IQ)4KM1YFY7GTrDNFnbMP^-TO_3SGOQN+2e{kSq{;v*5aXF= zp3#dIfbmJ(GO%@0bX?i-C^e?N?=+z)$Ss2R6s!_!L(+P^Pf;@+dSoN3-l$eLc86r= zQAcjDZAGt^y>AZ~`O$u(U*D)kB$;-0vf0SSlM&l8WCMHF2_ILLK7Bm~Ok?=6jovRd zM)Z!jQb#9&Z64MeZ0{?B#^5L(`d}oRZIARCy`b<#2K&N_ZZ)P1=Me`YN(kg&@4bg( z0I>Hsj{%A?H#o>n^_R^(n0#dGo&S;W8{y}i>jrhoSqMmtMfX=BRB?fzaM#o$CyYLA z$9+e4_UwM+&CdS#tD}h%50A2;!ogU6K+lbs+VG*ivB$f!{acFh{@yMN>{%fYK7UrY z1~?XRUBNpfqqtVmtFI<w;ObAXn}u(!_8#o^9yElsSO05tEsjwz7XJrqfDpw>K~8V+ zH9X3#mhD1tAkSuw3>?XvJp?ldRuBuG?Kr~z%=@25I?ldge>gh~LgjCtrwQFg<gvDv zC34k;^W^>Wh^ufO?|-sC!+A<8%O~R3gmw}y5q<>uqv4v+G8D|AkWH%%HUbKjB8LTz zG_@P#k$6eJeRqEF*yf<PF_@b^xJy65Dje@m?Jig(S(}|H-j(jk-#GxpVQWX%RRfOq zzU<~~Mc3voy8jD0V!5q;CRaL+r9^2!pD7Ip*HK%M4f=WU`{GB?lVRkobOt_#R<<k2 z#VSYO5ktaDIPv7#UWs81<psNdRuZQ%y}E@|FuC?P2G3WK<y;AKj*Kl>bU_qVQ3Z>J z#2&V0%G@z+PVxWj&+IXCiy`hiC|lwlbC;MHn;MH(>@;>)STz*~_cw1d#~gcb%V5g; zD!aUIypP>p`i-c@*8?o*wOF!3oiujrh)qt$cK-Pl>~&-8imere8`n5DuCMsAv9ro@ zoVD-Sfs<WVaMo-d5N^3*%viUvy?x_4!$@z~aIYX-|B3YnM%vp)4y@lu@}L~|BMl9n z8`w2m86o0`UMG087U;M5fu~havcbnzpH6sBkwXbupwPN)JM_}ksya2QvQK$`0r~&b zkVXMLv~OS$D^p<ST@Kp?Ba)M6r8X3{2d;<UP=YmG!kUmTD%TUSrIM_7E+T0Q8D+vB zy~P8y>RWchY=c)1sHVX_Y&X2pAC_gX!q~;-kpXM$&XEz}^M2fRjg}0BO1HDKA=?hQ zAZ}IEL?jrsJeR?tJ?|XBy|2W4$zs0z7G6|Kca2V8!_G#dP`fZAyzWC2VBRk|1Q<zQ z@-fiGTr)Zcm_v)06P*KqG7u8j-~fk6n-h?c7LJ#$LvV`|z?Sf*(i-8xDWZfep40cq z=$vFXm2oV7PH^0tz>@Lf*Br@WXUDxSPQB~mrpCS7fM%8T(-KDp813S@2os}ehrue> zFFT!go8OX4rvpNUn<a*>-)4*VD{`-fTNL85>w`D-#KODo6)aA6OBrXQ`{X+4!u_qh za82cQe?RQ*Wmi;MIX*{7?A+2NojWU>@vfdL7Uu{BK-~Wd$ZNk3{WZ;(;{R>XZq)j4 zVt5RcxGcOkSPBF8NtFQUB0Ip=;oTD|kI*m1{#AA>Xlmu*R5~*?PH-}$g@}B&KN2g6 zYhKHxJP08wn8Pq<kv>2Ugk7O79CohQx@~<l8uR9_U{|j-jFEl&P&MH^JT?dUQoW<2 z29|hXe~{X@f26rNWlq1VuV^kd;LBPx-!kM8J|6r*5VOtJ#LcRA1zoW^qY9r<&%F#R zx%A9{3Loh4D9ARd_nt<g5wq*rn70$?a^oP*PxA4b;1m+S37#m8Z~)ZQ9<3teI|eL) zeF*QPsfv7jx^oy{-fiqwJZ`6XDBQpY?zxlT79yz%u~Dt`QJCl4K7T;mhI1!?C*}g{ zarI4*mk^+2>?^HsuejU<XUK(tpg;m(op~h)>SR3;h*~ZIk5Hl7MZ|!m=c_<pTMAz& z5Uj$A<J#2Zh64vSOipRjT0~akQ&z9MZ=c+2O~uu&@>@MZJB%4_wF*2rp^1$Ra>$H@ zvx!_{+enWT>)$fmDI1M!ow$mh%0FvF|E=?s-^vku7rypzLJ!GGMAQ<x7*VC3yi;)u z#z+6?NT+1vw~Q2An!6Z}WiFpD4~QYsgtl0gH$b5#%sxIK8Cty(4d03fsLm`2fRlpX z$#Z=!s2e~z-O@)98V8XRaSFc0ds1ArxEDoIOV9IA`IC<K1Wh!WDR{}&m3=1Q53fPP zT?YSyBycnc{sa^iaxdaYO9Haey0%TB`d=0_A3!oJ#(-+?l`vEj44^1-*&o_HWc7{| zj%{*)_`F!Ktn`Lm`tXc38w1f%J!R-tCrm#llr~&h%?%5$^_VF(baZI!^jNw-wJ*23 zFqP=Y4O_>MgX8_>QH6C`Mz&o~Ri%O>IW!sBH;}`WJ8%&Y&jwgjEkNHt5J=;CFJpY( zA~=VZYN_OFI@5Bj%34c~5;MyV)*;FS0&J@tM7#;hp!xyC@-9N%b3W~oz2SWTkvZ?L zdd&p>>`dnL0c*&%HXN{$!-<YQGq&DLBs)69`sb9=-Ajn|nt5+L<KVCFzGmZT*$f@< z?lKO9V)8S&v9vp$ar^G`@vQRouYl!6k=JEc9&E)lhOTR|MHpmtiVIi+2E?)}3xn5i zwXk(T{jV+Nu3hFB{oAtaLW=Wf>9gvBw|dmv8QW>T5vTuKsO@0ql(94k{_3UR&Rh<D zInW>YV}Ryc?Sw$U8X5{q$yAmxHn^CWn<&1I3D~3|wvBQ>z9InaLS1k}&&uAVs=6@C zPQp3Ao*Ykny|c;e++mt1SwC0+Uu$OE*TBN}7u57F<+&i~Mu>~~In}!j2i&R^3tc;m zY42B7f8IU#irgUMkFJ?ww0?hAL(aVyzOjMGWgB8y6mQ`HT1X@R@`JWQgfYZwTR82O zR4T|w2pALl&swX1KuO%XdaQkrgz?aVz%6zly(|3tbF#Mz**RnCLb^Cxx*6unaY~tj z{qCXUMJ5~5BuQIP#X=@ycF2kzZDaw*9LYGshjBaJ{cIiGT6lixmY_0_5jyA2ry~G& zQd6qYFU~T3RBX0%QSY4B5o++~ou4ZqVkDR}@7mA-hyiLq@A<s<K>&J(tJPoy)m75{ zxP%Deb}(LoX+%CWR@WF|pF)1^M>QY-tS-{XKBXZmFcSFz8*6;yaeR8K_gC(#!e_j% zMxHLFRkb=!77OWx)~J-w4vtIlS<9M_OYUruC6}&mIky>ZZ27WCGBLXr;cyrSS{p75 zUVU4c?nM>(6<Q^R-GgL3ZV9n<h|X4cpRvL7Wb4_13S{v4Eb}A1@m+g>)>&E6Ep!WC z(@NlHqWMFm>o>CNlOeEn&blFcK6$p!+->eo^orR;=dkF{B{2?J;E(6`ac&by0rV=( zAs{5UO3W#-JeYaPFj^5)3cCn@i244?EF!Ht9hJR-nKkHLgO+;;twss|&VA;Qk-75R z0s~cDKq|aiocEs4{QbN?W~2RcBS*~p0JR06DHq2oMPqzMYyuT2+aRC#cqMxZ>;VES zDLe)}3YQ)LCReQhd%#(1wJ{G{aEX-BY%hBzqE=-a+)LbFtHhfpNexv@r;EwZq^hPh z6-0STX1?%XQ}(PCa$yX4Psr`w^;}d<mA=Au*$u2=M#HF?A?gzUNrMAOWP8_5cO_Z1 z_Y14R+syX+V-$QlaL&V=DM1-qOJQt|NGVNdSr{H5N)V0=*?k+a2HCHj$C7h}!W8%p zu%6%vteX`-;m*0GFCmuiuy+at7>qY#XIHp+&iBc<4x(5btVK=-vbimTz7#jZIDxjh zWs<GKVXqB)|Lon1@-3GSd$$pS$1bm_0cLv+@?s~(#QOuia4lM>*i8%I6s2B4(pDS7 zulNOXl%86EFa+@iRt1p+MZca|kRaUEE!Cvd_@OAq0SE0$ROA4Iu#HV2mqd5Mi6DsW zQ9U!1s-Q*7v}8m@36yZHIh0rB>UOP8*VT!~Y*AHBEo?ZFR2`9BO*Yg_uwAu+J!)9A zEv-f#=t=1Ps@3VH5@sZx2!C`u1ID`<v*Hn?6dNhS=zMEJi3CMEJ)Y0>vHKg$UXZk` za7s^YOR8#BEdN+nXP?<xmFY1wXDHf}?cc=P@;UKCBI9@}tV0TAwd($p_@S8hMejC~ zeF=X{FNN>Mi0~Ejw#ji!xv{vn&9?)Wore=mh+TyE7;B2LQFg28eKzLZy!4Xc<)3;x zVr=iZ;uUP0xBCjV7jr`h1kZcIM}-&4*8_8pwO+&!;lSC1rgw@4tJYa{>2=0RhWAt5 z`<d{<uYbMT`vtaL=XuR+rFVwr7-74|#czn0@f<lWFG(JOxWomKR<H1+8c53}iL_)F z)^c!3;UX!bd!L0Q`gfKNhP^Li(yvqWcgdvXe3#h+)^yH*wW4`HQmXSLkyKwoAx8vq zY2jV$m!Cam9CPD+W&BLs$89Q#Uj(3<Y7t^-Az2xeYDvP^;j-b@BDb0Zx+?sQdY_t& zdUv$T<YVv@oIdYAWcw}E6>cg0#n78b(YfgonVm8Y!fgeAUD#`f#*wKre}tt%Hg6x_ zUn0~k&9!6;z5v!Wh_9TBfKoS{i2#Z#=ODDe<R*?jK^9;xz`O?S1$ur7zzHsDeD)iy zOEV|hbD;wVYI4?u)!3z3<5o`Ee?Z3DMs0d3f8aoVYFaz4O^?I)?wy)$d>I+J$jb#e zgBRMk<^bQ<#F_Y^d){@X*ZCpKj>b!z)4K*xBXWDUT&S~wap2c&Ar5H@3_O^JtSJcw zJyrZ6x^56JK?TOEO8^L$X$k~V*hp;yIhcM?CY654u=U^L4G^#(WHRk3t|*}DiX4$5 zt0JM4X{HQGZB*()VX>-!0dOYjT}@{797^_Ig!Z$-NOP?Sx~R}8X(6i-Wd*CMf+xw$ z#=<Zi5lgR8LqQa(k}?@2Xoet1LWxF7-i8J){U@{>9Vdz5YMdd0J!+&H<fw&%)iMb9 znp73!;bX$1zA0V-8CQ!q>}ufUYcaNvE$<I~p$@Zwv|nXQ9fD%$Sq(i(=~q@g<RJ75 z#~tA$ImIgP2N?Tr$j^l$I_W`Jy|2J9AfwC$;&)VH<Fa=7I9nHXD#*<aKBpYkm590k z?po1_77=BLI(BDgP;PV_S*-~^JUjdUsf{ZHK63tcp;}BqKIj+`)D(5(C6ay1yLdGu zJyZhX18o+37C7VoXm>feVG-4199403vu4oPlF)0zA_BWojXNMFgn%6?7Q>^5$0bnm zLlHZ3=ZoNQM@;R*jv37FK&+D2ec6H>yvtyPbW)XN9g~QRcT@(l{c<mSv=M)iqA9%C z3pubT_5w9jPVD^cVlP3_FA0ON$KD*EJTo`y_WLznRMm-uvdN@zBGQovMs4JI@Y*hP zVH^Hibr*M_LRKzUkXD82E{gpT#Oh+(6FITpWgq7yT|yB@RZ|;6-u*_qP$2~qprVIR z^@Xar7$XVecT{u9ca)BckwhX+)m)NrWFVi>4qp=9MmwzK%zTJJkOF8D!b@+lfPdI) zsr3og1?Z0<T}~iP;$xd8BM}GIR;p+jxb=bvasdUQs~P?%Ck^n4@b`2*vM3gIBdOC& zQaYHH=+>o<gc{MCrH+BTC8~~Yb-9@^3UZX5k7&U}ht+@_nNTE7Pbn>Iv6rPpT$jT} ziVD%NkMRygy4vnSQ0`7>lzPTX-gy5Itcm3F9Wv_bs2Qv3K(<+{pi&_d_k~**Tb`ZJ zEac`Wsf_8}$dg>lMRd?6G+!S>U56E%Yw71o!O8~<hkN&!sVoTcGm=l5koI2-`V>~Q zf}TKS8@ts#Z2lO@C1+GP_w3{O-E1H>WLYOuds2H&jxKn2Y&se}`ND>YI~URfxT@ga z94<Zc3fr_fKd5_8_OV;$y#Mv~Y<eDm13O<rp4ob_J#Z7=p!5(rg=g|oiZDzaUj*7~ zVfVB^X08sRo2nFa5Qu?XE>e~gf&(8!@-e!wyyzXmaQs93qZA8#&;m{%EG%qB0!CXB ziG^Y$#k!qg8SFZ-Mv^*Xsa3iiROFPa?AqDT*DNcc$SM#5&8`}q5(wp#sjE_>h-_b! zO_oE75^4~UP@D}m47c~Plms~&wX?f+XKXzT<ot7){DE8w1sV>9rJCx4NKr}vf3cjw z&J?6v81z3qXuC-@@}cNpyA_c`mS)YsB@Oq5!=Xr67iEm5IyoE^rBGwgtX8CO!bH`V zJ^h)!Y#7B2O-)0FQ&56Q>E~$sx@QHC)?NVwq789@s{=h`bH0legW~Be&?rf?OB2N? zTao02>ZVOVQ53wUzyJs;RF4l<CN@#yfg^{hvAP9~*HqtDMfNDWePnKAWNv}}vAflR zW61ZSX642E#PFfut0D`&ErwqUhLohHrsNLEbO%-BRm~tNfB&(4+Ellr&N$k`;FCH% z<GN6yGi}~Xrz<)e<erbsQE4G9;<`wlR3Qdb*VSGvZ0P%BKBx3KPGT_bx)JTaItQfQ z!6Tjd{6Jy7)Q>0%w+{pVDQ;%}0i+iA0vR;)yU0eNPr$2Kjy+UyrW$2`Pz5vCM3nd; zwE^gdx7$P>4kJeb8G8zUePO!_p3ckZ32i(Y9f#O@sQkivvizdk5o71R^{2~$c;ULz zZYbAns4(yh>cbpme~Kxx1BMk4GFYNp0txoRa{O*7?~G%e92Ed-vHVOV=q(fcr|3Tk zcTY~>7g-YY#O>`L!gu*G5Gkssgl<Pg3(O+^MDh>09<Z7*AMCYwdl7^g!ay|T$l~yy zX(C~ah@T9?mFUa&Mom*&pYPL9n5`NM0c~Ylm1;E`ih6(R{clW-P(zIpbu$QN_WI9K zND+m0i~tS3hiR(1u9<0o$S`!j%(lvnNOR7bIGSZ7!$1OUjZ%#Sq)2ZsJ%<~lT0Nlv zbs_BcHSuc1D<#5y;W@ORXGoFaKX^Y32rvu^BHVy`2PYz}&8d?}6LAvkOK(hpojhI? ze(v27Z}&C>83Ku!9cYh(H21IGNAPBWop^)n)WEgi=1s$EejhkUYY1b8FAR*Cyx_{# z7Ot#esgS5aZW%VVA?*@)4mD8~Q3zhKtRuF4gxvsxv^sK8FeHVMU3~FDt6vRO4G+tj zcySM}60(Bba?d^97Y-l32W7$4mCe!m5bE4|U$}FvFcxiG8LIcbk;e6qoCax2tVeV{ z&VBX_dXnxFdYo>a6EeuOf;ELdzAgeT2UY4ZhGAg<r*5GvQHt*(UIKXzj1eP;?JufY zG^(kO%-A!afq@8C49l=(Mc{NRX4EapiS2p<CI3u~ILjrTl7}eul;)`O>M`YjaZ+`( z9ZEJ70rG^32$J`=bKX~iJ10YTY8QthYC>&pR*%Aq=kbykF%C;W&T1*%OmLWpC>>HK z5f6aJK^IAZGyqApoaKDH5%GcJNDWwdC=p>WYVN6cKsAbq$OA{%eeYLMKkRi`_SSf> zsI%RY)SZ@kdZeYgHK)ZV#UNsVYdAwH2!}$sN>oLqi3+5&Rl=vJ213))YRf7tnKqb1 zx*x2IR<W+9W4$RW^0BcUJ16>Wq=w%2_H)L5A-x_O^J6=AjrAw1Tx6GwjShD=>{Xuj zK2|Qm@!ERnv@+&y$~4Lyg{jQgadmpD^V-vqad#*aX~3o|lJy51S#}269cR4;*TW*t z_xZO`UnzmwjbZRxn$fppgn&oVf@sU4p+PikP#Jxfhuty$Tz~w;+i&cy5Zx^Ya>K`R z=KiN2-DVF?PSYu^X2IL_#xIX0`kxu^-9L(C@okSjz2D3o8>WO9)`!lrn(;;WszB@c zUkJMJJ(^K^P;0Yj%D2@*8X(3EkZLtj!$cAi?4~O3*{U@)_243WuBKWw-ow<YXsl75 zlvk)&92~1YHU0s6bgf$5P}R^NtTeLTRj7s$^5^Z3(Dy&W-Cc>{40iy%+@`~%BFO^S zL#%`s*o2V)X$xnVj4zPZC`he<@O8geujW-lW)~Zx1pgE&kQgECVt^KTubv%M2O}?p zLZL_|>tddTUQ+v`4N-Qu;ojAGd1XBc-L9;!s#&SZ`PKI}cpFuASiL1%z4ASmHa22e zp6cu^2>y_4`Tt#RHKcRP|I@kENXLG6ZZ)N2|G%7D&9kxzhj{D!88(c3cB-ugnE>m0 zF~4W2e5UA=fl<=sVw7xw4@xClg6;3BbAy$fqzF|~37HnV%=g7v%Ab@N<HQ&Grg$^z zPF)IV@F5I(Rlo>CjyndOFF_$X8Hn^(2}nY@60?qsOPH95Ecr6kg)>A>0!fc5l_iDS zdbSy1d8S~37v-u0P&A-$hf^CT_BrsMbHnYOpTb!6o*Y*P)$WvL7(GaKuZietRrsP< zTzs#zc~95iWY`Jy6DYn{VM#OLjCQNu+C)!kb50FOW8LQEn)eTdLA75^!w*;pM^#y@ zsaC8A<`l)~9)+)6jaX$8clAMFDj&w3L81XifT_dFPjYDw*uDiS4BQW`4Z>Ag{s|?} zwX`A*(MF#F8b>sZHi#<=X~g1?s8CR<q+Fp_3Py$=8IO!BLTkfB<HVzz8nJmOCk0WU z)iSDQ!WEM)+tuS;)5CV9r-uD)><$!Sa?(XN0b32lV^)M`EZDc;UHDrzh7?)uJ>Xpl z&ek&r`oj!mZx;KD$D-Z?JGPDFVVOx$+Y&_mA}aGILM)-s5AuY;zWH4xZc&S()n@@z z_2$%0@PG$;hMYkKWjy*qHCr?*sv2=avfZrFGu^F(+2uYvz<UbyRqaii0Plu!4vO1q zk>6GKHc^%tKBh&ybBb0`kzT54L+Qb=7m>P;gdKKi5#>85)*x<nyz5PN4=QZj&a-rj zew{4u)2z$;gvsuANDh^205lUuR!jAIk<m!yBw=Dunj?%3%H@IV1Ph7M9$BTmv=6*e zzKIiPu@^NE6h2IXm*<_0snkXo(QaR#JMVs6{IH!HP7Mlm^uPVl<)1$4Y^V@FEZp5* zz>pqv(s?IL2ZinRAvZLZ3#SV0rNtNiKJCtheQ0b3pk0MW@ygHtXblYGUdZIIQM}7H z#VPLtX|PG|c9S2DynH}FF0)|P)L$atO_M^)1(7>g6&HY>wOk1>slL_4YcvNja8P*! z{s}Ugz+vKbVdS9PV44j_g_}!zmp#(J!bOx=iqyc2tw>U(3Z%pY-SL!;+QR-P)m8i> zRIQ+F88IBDXRLZ5S|O~vfXH7sBz(PLez#nONWq-TqzX}LtX6_ScuFvOD=JWh5+@6V zvU=>%s&HK>#6JrGse_9~Wne;82Cjq3V$k<j$Te^x;T)+*mPGux-0$SCEZY3MHUniS zQ7mvNdkGD<m^eevODRVv7mEs!AN}tS;qG!u3{pP)+!){?rSo4DXT%R+<hCFdL~c0v zd6lrH{d&zUSPDjj_N{9})Q3vD1i9hc3a^itB2~!ECrCtqng-ETsCC%2-h)o#P-|x< z+nq-1t>1pQ&+Pi?kH>NcQ(5pLoi3|?!5G|-tTGLEFY@jb6vhfh6r<0Q#Y<6JrQK6U zL*bZJkQ0gC{hL$btD`69M#T11=O79RUle>t4Vt;Zyke+h`yPWlvQl<9B6s!?k1=pe zyaD+%h|cJ70oGHniADoc#3pIz@X5nNk}HkRzC1fobF6PqF1M#|_~_u^QH)90`-$^E z5Uvo;Ac92v=2o-=44*5b)dCQYT3*`b12oy>;Kk4oSHb@!fQZUCU1$jQJ#D~3y1QsR z7JbYRn_m@!hy$vJ53Azv7TJ!3VwQUGWF+e}SD;!!Ated-XqRWV?smLwY&Y8FV+nDj z$2PrhqqMHwGqPQ}*tFD;+1f$X!m^HpYGDOjE9tR+haL4(j1ZsM-Gt0c*wK0=L=JFa zZbh>vqTVM66Ga88!40LK<b>~*R(3>$HIc0F)1p@cujlQ#7X}Bt53z|p2t$6}rMe>& zNn2tb)k2IR45C#oV={SPH5j}X;Kt?pBJAhh``L@$8P@tsTqDV^L%7DZJR%1#1$DH< zCQ+`Vs#>u2sK#j%f-Bcf=W)*?73+5(2~c>?#Mr5mU|ns39Q+pRs=w<1yJPR(6<05y zD6D^dYsC)<x1)bK1H4v;ORiH&Fcg|i%nzvKHoa1+jEI6^cz+(UvR#%OnvA?8>UN^a z`&Z#RrB?RnOIqoNT0ysD$<FGUHuf}hxe<&s?w@DRJdJBVe=cAMHwu4+D&QR$NmVTn zJ8duu_^M@8hr=eTVKqc9t%Agh=yRe5M-6FV8L*&Rh`Z621igd(Ti;OXkJlR&@xiH% zv98{so~)eG676P>sam0M%EA&-iR{EsZXEQzOg_=yTY}9JR(li9$1POy=pA-4pC5#R z8ZAsiY^S#jI>4H&(`Iy2=iuht&Yabk(L~Xl>v2+Ji{r!BM-pZ=>IlNRq1p-*0)=~p zs0!o;s8Kpe-iKVC3VyxI8k8M76vVzSE`3h;+)(L7!XU&|6Izi*&_lt=#CWJU*RMJ> z{>tN|7IP(v^P>_Dg;ybfdGH1hY8yfnEdaEEl+?GpA7%eHdw(c<f0*85NyWyqvh~8k zs|#Z6h;lggD%AzX?{DtC*ZT}hwP*Vx%9bsW#@-M2z9kk4V&@0b=?|uMAPJ)a<KD-$ zeBZGJeG|kuLhJ}>KS~=k1$ezpA{UVO_BMFwWr$m78gWL<!|}u3KGT17V&v6VN6dTf zVLAR}j=Xx;@XId`n}-jxpTve=dTBUz*!$J6I~+e^9zKB0=8-tb3G%@gb$t!b-FP2K zOkzR+47H*9+Yq>5Wts=5vvpj*t>gI(GgFl2!%m%h8<UUdm~kRw(nB~8+~*pkJAjS> zgR30B*AVM=ihRENdAt_^@qm3?3)2TU2f&V63fMy@pe#Ct#}FGsD(~@M+V(Gxt8YL4 zxN`8IaD%ydvpF(s4&zT~dRs=W{o4p9djIm6aQov`#b27kBa3_B{wmI&4SY?!Nmv6- zMAbJ9d|Q&>ZIbhpJqIwz7kfGa1x*^fv^q4pMkdJy_h6qojmMAG4kubs6Z4;h_sG@f z1BKY(!?6Mj7)jKm=6g-wiFK`_PKO%vpC%^4QXz3zKV%kcW5RFiGVk_+CVUs?b4mL_ zFD?^Jr7!U$Ga~xofh_$;sBQtO79f%(v`#LTDc~572pRP(A~6(+ybe8yDcjPtnk<bV zlpT~B71aWV&xe?s$tkwiGQM;HkWgf*L-}F(0v{N|QR1SB+Pe5cY(}LVB^<7ctTGbL zg464uJ|hf@Y|0wyV|Do<E9G4?V&@E#r6QKrnR1-0W<^plBWJ%8X)$cWcqd}usYOsC zU_`*Skfc=-tFZwGgCG&<8Q%4gY&60ewGZcZ4tqBv%fsk(TO(Ci83VRRqm|B?dN{<S z_FO8JYxn=7dHH;LNW4jmK#SC19>>wwJXQ^HPqr&jSV6LD0#$}5J5Z#D6g~wxs+l7^ z=%`WTc6iTH?Hbe;_<|7?Q>wl{womQJT1wc=Ml`FT8WqLW3fT}Nj`tvv-`AC{&*E6B zZSUQtXn)qe-`po7WR>l5v?9nyh*HR=l|X_I=6hfz_^|V^9;qe+kO^LWyi!MC0wex1 zn2ik8$MGjY+}P|+w#jJlKJR^AZf2hf7o#uDr%Dg<=;jz(H{}ZR8&#;pn{GngN_AuU zs?a)XrMGnh+q8bYcgF^HWAt#%VQLrBugAq&@ltSP-p@5ai@g*Uf{X)JikJZb7Hur( z^WqsVGJub;un5I>*TRN^9w76;R>ay)?>oV;F4q{zc~yNQOaMn1o*p6z(MCDwt-x>y z%hir6qG;M1A#|0*WK9i+!f)UDsK{EoWl0YQlg86?k!~Cw4C9X_ccZRhb+ytc{2?sM zii(=*?sVy?Abx%jj9>||6JZ_RqpF2YoW(tnKE4*V_%vFPJSo(_0^(mS!hS}wHNZ<+ zw}A?+VnrAVNNa#Kfo-C2J+V<V!hq`)F)r(F!%5UBbu{&KI(=HzQjK=xq>{#0AzmEz z&IiM4*pg*Ln$guLh!&KBVWGq8exItwqcz2-T3lK4zN^$|2i8ZDSIWkvq52AlzlQ3@ zW-wc6!DW7}=U)~+B@`iTVGmO!M5J7U;cZz6L;nl=H=!6oS{J*;_P#FMiXsyH{w(ln zRwL$IhX^O~%PIK`8Nbj8RO1fODr`aLkYA+LRlVg5s^f#s;JDhKo_x&MGL#0}R9rQu zF7)pW&CiGS_AjV&bKd6-+3Ziv&2^L94~&V8!u7DZF5wJR(9f1<;!{!ulpvwMaA4kD z00s_?1+me@j=R=#@$_8E?jg&+i~Y$iw==FMoP4IYJz@8|-BxmRY{w3y;lJ{1s6n~- z*;DLw$1)rwQ6XWfhaEo@H?q$jPZ+S)e6Hz*8f(jIA}mQs&a#J^N5wcK*Ta#5q$Jdr zR3!L~R7{eJN`kI*oRDaq2o5fKdVGAI*yL2F3RUw^f{=eYmv+2sitfamJ3;*53%c-k z$Y=UyB<P~fqF+UIxqM#fOir?~NyH^4-^GKcs;OIv+T$Ua3xgC7zlI}t^{5_tG0ITk z+Fe$QwX+lyqx;K|^tLXi^Tg?>*_qy!S6|1vf@9uB)I<4&Q-8nrC_CjX$j&mmVFehP z4rG0RkX0Cqe!jU6t-?)!dtHmDNVO1bg>8o#STZ^l(hq}ZEoQ-0!djkOxIEZ3(tmiM zB7b;xroVrtLb6hp7Ov=#6j=f(A{56GV4dMmLs$-n4`#E=<65Pa{WG(N2L|X!EKVZJ zx`}eaShcGrqK1=URWj6Yq`EO2)lI{DvWw%A|0=c%zv7ab>MYk0JAjN);8iQzDt~)} z!ag@T9Fp9DzHEMQW`=oV^savc-W@*JC48>)=vZ!Ve)kkolJcYPdc!%)vp~h`p%>l@ z-FPKf@Yg~+Zos?(WwM2*zqMg8M9eQd`I~6PKI9#@QF34{!V8!M3T+A2U&2tOTno0K zX`wm5B)~tw*KwdsC`pQ#avB9dQf|6EVc8uq1Eo>0nu`%*ug5j~#C6k5#1gihh=D-< z8-!<HP9?m1t<+0WxWPmr6)<4LU=6%-K*H^l>r*Ff_D*&x9!u>%vcKI-OlIs&Moi6Z z$f*fq$UC3lFJs20ks<bXvBc!A$%L8OcVz#9772ToHja!mvVWI-jRoHyD-B6Xb=CCP z?D#m=&iMuEpU1^8WQ>Z~pzkeH%#?`!umfygIkL({LK3h-0BMl4XqF{jGUg!p@jP1r zRg&D$@MA9@H2UX<`wr&h(W6HS-lvhWie-E5%*12r`aFtPDjz)LZ#v~pOt|CY?4GbR zJl}5|eEG3qKry+QW7Dzpo|I0IzkVprBWp1wa>(B>J4HwNap7&q6Z-_Ne-+rgaj<!l z$Ys3>I*u?y;)0OXLZA`vRx+P!VF-|U3zenud>fd#;7~T%1V=1E5x5~@j1n-@#Gc!e z=sRtu5F^(!{r#EKeThA9dN-pM!QQBMGbPghnC;cH`*wH_c66LB|77r-$?V?UDcrRu z-k0iiGUDKljTIXbd(Pdb3H2yp`I9Jn0mqg8Gn!#9p8m1-kxZr|lM%j}Io)wO1MWZ( z_04}Nyw2@oTqBW@xrYv9q7C*6bl+9%{(E1Eru*9a=3m+)jSbcGPB`JdJxA{u$CGe4 z9erioec|*b{qU;~M4ia!;iLNo6`P(QhoC>pIop0_S!*4U(t^Z<^{sBIB+bq`hsoPN zTz>LakOX~vFuAdi9DL-F!DL}$a?txHO1>f4dAImaVgktKWr#0Y@HH=3U#LP10Fg@T z|2IL!1rtdsGWD^_37KXsQSn;D?9QEKnT&Vt5${k`_)c~#n;qLt|FU*Inapp_TUI{V z*QbJy>o|@1yqHkEI~0jsR(fc71ERFTm%Ka5N8m8;0~QYPkDJctRVSTtT(C@V>AWo- z7j6<S2Cj$NsNfN`usST@Oj=sFsaP~n?)2i)w^`tPz+jU1v$MZ0HhceNcxT!BJnx*r zV4XprW5D6>YDD1u8Y85kc#Q~lb-K(|<{Yw%F<Mt+l>PzM79R|JCNPfG#dqLHf4Pko za=R$wgOmP|SK6lVI^L*u086b6&N=jM6dE~c0U*SVyr3qfkP^g*R105#qH<0&2uq>O zf*l#8{Vb%GU_$e#g96qbO$?p;dH#wS{%c9N9xHCC@lZu`b2TbQE0PzVHe5^Jw-5D0 zjmKh6__C1FTG5QabtGINA%R!fX8^8hNFbISQo|_&W{+I`uqsK0(g-uX5rJ=SBNY-a z7Zmrt$g4gG52^8-rO59b4=arcrBU+EZ8zLO&2E=NgN|Vi_k@CA|5b!+uydX2uo4a` zVnyi`5~vhAQ~`y8wTgQ5>IzW_hHF0%iiaa{6(nIXxxvCZQhufmkp)q_2yj0equ9b? zPGJpZRSWu{1NBV;wHR<g-pIfR(a0^8SVtF<J_?UiY6a}<_snXss)f>Tka(li@yt96 z=CYsuKxsnn`|=lJX*qPmfRXHATPtd^vDH`070IOBEaNX(zh-S(xVqht>(@0$+Z#QY zn|_@G?k<03@9tQ-5Uz8QMj<nUg_{cP&C}j@@(Q?r?NO8$kXQ#Tmz0)tS4U~Q^70$F z&o6>70L=57BI--SyQRqfTEx<?0W+o#^~VB`bC`Ir0qP_Ws$ml2CSeP&#eES!uN9&X zX#`}~_~MUbIW0f{yUG`jB-nA^(%K{?=+SajM2$y0rU^FIcZ%MxWE0ftW^Hj9JJ6iU zi`Y>S2meRH0(RXCl>9d1I#iGawZ-cyq|H-P?)>~)5HpfyU|~DWt`3Un<?Gs^0(Apw zUs4$<@0z)}0dWO!C0$oXhM1ybp$u?E)6P8RFz2EF3~ith*10IzZ7$tWriS;duL`PG zw@Is$=ygzV%em7WXF-A8DAE&VXG`CidxqA-dgd83Qz3TjiH#pI$J{CN=!AJJ0Rs=2 zqNr^`K6zTLiAt*+vBMOuL!W#%HkQY(-fH&xq<OS&BK81rbkH}S#C4hQy{<$Rf)uQe zF3fkdD@F~-q9hmzo0bvQs6!X=7zetD+MN9JRt*Fl^bR_TD<}kyVFBaX0n6}?63$?1 zVYLwNN5#^&LqV)%4*(uZK+pn%L0Vr>xS{kJ)cfZ@>>XU-XW8B<^F-;PZuE<AejttY zsc=in8s4em$6beW$idR1?D=Zm2kf#KHN*+i`v6~I5ORN6yHkD>WnTmsDp-JOSPx-^ zp+hr>h784y{JUtAD%aFWq;SQ>9>9RYx`@w|?&3{uKI3=5oY0E?cqLl87BG^*JK=#C zW{$Wj9WNcnt`6@2zb~)|qHv~1^wzLPUGIB~-EhKkNH!DJ_ATU8H1e1%uTjFs2<$iv zW+c?$>L@6{Nin!=Zr*#>pR`fQ<8~x@uRI7o2(o@05&YrZ>dA&fU^yXmeQoKP=*SM{ zc~AW5@BE%-Y7Iz<|F*UkdJcs>s8hM&^gGwug2OW7Oikg>|5m>07QU5M-2$q-;wt23 zIG_6*eKEyNFJPpRa@JM=a7R^;uu}LJZ4!Y!thEY^qLyS^9cYI%yxIsGssiq4H`Sr` zD=cw<&SLk>!SP$Yb83j)qRgoyZqK=wkMy_-8&vY$FTG@EN5>8y3Ke=j+w=A~)@YJz z(%mu1?Gab?xFhPE;@t*|xngYM;Eea9Twd|Mrno&vvM=R&#<~lknXiqFX6MpK9DZHx zG5L{x|NNYD_bKCyR-Fq-<(w?gfkdM0wbp8@v05MWDgfWQs-?OKb*-=-5Fqp|i6!zp zFhRMUZHi{W@c*$Q9X;UPA!FG_)EE0Y<v~T+r70{Z*JDpPh0&o@YG}0JETHZ(j05)F zA4fw;?V#aZjRaFR1_C-L|Mn3H70+lfx+JQVw6_<=3XW5F1tpmC)BSvW`M&F=(C)49 z%FyosHML|L%uF!Eap8W31ezLZS6r<6@O!S_&*S0-jfy0$h}s}8rAug+QTl}a`z~ML z30=7GQx$Tx409S+uHcSJXMgY2mt!TozGel_^9&$i%c>XatcsN&>kG}nI{1@#6=#!^ zcIV_lR&l^R>iyto-=1D~=xAcHQ~02Jz&m&FC{vFX-QK+$kYq~pj<EH5V3M;ue-vgC z)g30po)%$5JLsr2!0w8(yPi|L8<gj;w#b)Hu;~-tm+#vG=>D6iWj&L4HWYf+yM=8% zaboLM@2CD)@y9x?T}JKgXC{_QBT|MGrAGm`ZdEFw$ttmonm_>papQno`cLHFQDXLt zT10UfHfD8sPmQx%r$YTm0bxJv5gr-{;X~BSqC~wqWPGfdpYO6JCW;tP{h_HIZtKoM zmed2oqdM@Ec}6*<_<mIM!q;*x0=XGMNRmpWjyw^t`j7>}T7=IG0SX(Ez1zlTwSxdF z-tz*$g98KJpU)fpY{L6`G##>7#u9~1aapxC7mGe%kw#620n_{Qesd0cfq^uLy%HST z^V{MgSl)=%<2pFlS<cF(%ONVhDB!NBVw&(g?&wU<762bpV*Q|8TC<c-dv{L}U*gLW ze=JkXwi@;-A%_9VH6zUf?1>`Yv{a%m#7GNi*n%|A2|`vTsnpOcmUx*JuW;s}S&+U^ zT8X^B^i3#-P%Oe{QD2$$l@2~zCcDV~mcgdtElO4huAL%luv$di1X>dW5WHvsql>$7 z;7YX4%uJvFpR3LQ#+fO#PPizY%?n?!Q!2g<Y4H;?8Wlq;{SEfS8xT)0fsoTR>5rwq z0f**F+#}V&Kx#H2BtXa&#9>+h2Ot~@LN=gtp2ksoA-joc1Ca^d2KqLZw~n&QU9~x4 z1uN9I5^wd?jJ>k33(4q%hwhuUcTpAJE!)Sss@k1Yk7Iei)^e-@)ayUaIl^xD1Xh1j z)sXyV?9JXcA6cJ%cvOifbya=4Gg0rGddL~sG1eVS;dt+#ko?xnDiTiaC*H4tppDQR z<FcRgN~o@S6Ev_(ylAQof*e*@vD8yb4-8LucID4_MlK(+OP`}~B(IuF#jmK%-}L~M zlJaz4DOdIc8`lAuk#F<j*hm}bGxh=sYG6Sfm}<13P}-Rkn!qIjXBCQ^ex{~i9fG-v zBD=6mCJ`9I53)SxH0)Mh9u`~1>HbJ}`)lwhxHrOX0>H3%fM|LCRIAdaV4V}5V+B6Y z@65r{dD=Ym1%-d$I}vPy7?AjZW5)`6_vxqgeY-avJGOB*f4TRb`|eZv+xNCdd$r^q zXRzVkdm9FwJxQ%MijDo=-=pkQZ$}}oM|x#hHB_uBAhDk>o}_%fy#+e8cSp2WxA!<3 z6`XRTv&YtZqs!hFm0rin$%&1F2e7VIb4W>8xNpkEUYv)t=7e8AqrAdkErg85sj&(K z9J&+Miw|KS6Bn~WZ$&pY1+fjpC``^76d;&5tth7>-ZxG+G@NdHm8=;Dt`d8Tzdyvg zKzPl2BI-ue^ed{1-eWIM6}>OQ1|ycbBh(}OG!9<px$|@IH!cOI^Fyc^9;l3Cxy&|{ z(;<5Ta|cN!A}&X+t^m^vL{#GAUsdrz*2KAw6ojf4gP2%^O#+5T{>5$9z=p2&XoafT zDN8{)Fc<kRQsl~%9YvB%PjA2F-O*@ebFofCH*?v9ie-l~DHTgQT&V(T)7ZyVEu8GI zs?}&@{6om4>Me{qr&VC`fV-rNMHz5D;CS`4Gg|2Ff`s_rNA1CUPc~w~!OHaHHzto_ zjTgNJi@StFI%<=7zX&^SEap1ld-xjDe=UxRt2urcg(Xke#sxt@bdk7#%%Y_XzNKaD zL||nwh2V$-Wqfq-r!Q=;9)A4I7q*8BJA41}<d$&$=wm0hhBy3UnP^+)_AS_b5nG$s zy-l^10pW#=wCS;*yfhsyoPP74N?)_3{Jqbd90}*|JN*DdNoP7V;y-!+nKV@=D|We& zM9R+r@W+qOR`OSXpp0_9`~wglEL?)2K|&POsEBdFmuI5k19y;zp<9CN77Fo(EC*F< zrsgImv3kj(<4VX~%I%CznNwyLUjpJ_$a*9_H9kL4T)qT^_vHK(JNtHLd}=BV@)yOU zUPK(M1nokMpa8d!@$F=V(*pqhwE*cK1Uk<Xjd_U;q2%~mDbhxd-+vxTJ16IA={z{n zKW5oUaOEh(LD%wk(B*Z=B{>wh7uP~@BBZdPjc6cSS90^17-v=+OlJfSu|RXHhLywp zj2z(TM59pZ$++g6FK$kgx>((Uq#qpKq;UsmHK1mk02cXbf3akjRT0~!%|9MY1Aq(Q zVqyvr2@XPv&lH5`c#Ikvi1P&rnrLE|Vl6NPR}0lrDx!&YG=gDkDbrGwoazQiiQR4Y zcc~Sk32s;jIX$3cC@8xZj2Z2@KCFWxNs0x&3s_o-$SUtES|leraU*ikX}FIyVXXm) zk)mw%YvGYBs7#t2K|&+~wf~p5uK{eMy3+NXku~yIk|lYh5mqv`WXV<{AtkaU+lh!& zI~B39sljdxUK|K(a2m5NNn@H~C+3+#NjFO<>8AXp8@9YcDe0Dw7S^FD>83Qxf77>N z>9Ww$zBIHn+ih8BjWv1Sxg*)mPYdkNOKf>G8qM6fbMLw5=R4oAWn-CCqy=Nehx*HE zwOLkuX1_@hy?Uq3O;|F!a9CtoxL4cMg_1>>PVf^Uzeo+pU<e16&MAgE*CyLrkpHNe zO(ukVL7c9(w5O2<D91xFWFCPhJO8DG7O#?l=!mq5EkKq@n3N8=TdMZw228ROC>O+_ zyOeMS@j2h+VcaF+go-Try`fH@93G5B!t90uwG{c~3bqj>>Rf&0Gpi||UN*U~?i6*a z3dAX(y@Ht7Us@TWA22UK>@q*QWN?sOqMux+|A+n`>wp*f7K$+68E0$te>?q*zee%p zT@UMj;Op4|@p6ng;#ei0O-VsogYSb2Z8FxNYT*yP#aJfqY(27xVYxM_!sj9n_Cz=6 zKiIT2Iz1lCX{@e0hCQ30zgnikWBk8f)BSAk+Yc@7-PpY`Ha;EQ+M$0@3taluSnsB3 zZF}9;@KpGwFuSAoxo+;Gcog+hsu3MA>V0>EaqVi{E!;+g$mF69f|^(%v0x%<g;WgW z=97<%oMIfBX~dgqXJsJYK-9^D;0Odgxf{vmp*^VmW1yeexBB*swTaoj)-|oBHaVUM zjy^kzAJLEKhcB`2&XkH06+;g{`;9@+(x(js^Z`gblRp{KFY@ufLH1H%PsTVvT(I)S zJ(pE2S!`b+tnANSkuz;R^45{fGcO5td$=lf$NE&2*)DspC3etfzA-3ltm3KC`Vy3z zPXy~&jd7YR_%u_&;4$M<V?4~mGE#gJekKF6Xdq?`Pbye?iGz)P^OwvEO0r)dGmG;9 zS+VHy&*$sf#2HO|E0kY7hrprG1jIDC5d2LdoD?Bw*=}-{Q0S1|0RAB?;?pR{x^<pU zkiF=mXy;aFzkkEspH!FUAZb{<E)NOS45~gJAUCO@Um3YnMSNz->9xR;rA>f5RhA}0 z;wt?IEqZ4lz)*vBe<1%$s{f^dS^Rz$P{CfYOX%GFDvE-&-1llT^Xdz?zqvIzd32}# z+OxkqXxJ+AxOfVDGPLf%gkZQ;1Xv5qFr-pu!MsBRF#<8ZaNFfd8w?51%)udw=Rp{N z&xwB_v=#UZ;TFfh<bhCl3xHO@s*DBL@ZZ)7U+5W^581lbrqgS?Y=@-W(8hs;1bDDv z^k;;&;qFLE&aKValJS=Qm@P9nI?$s3C3yrU*Wgk-j#$*k<|4#KoiWT&zKmi#(3l`7 z8i%97{328jacQs=968gJ7dJ*=RurxP`vb-SKEOJ65%Kc@fPWP*Q~WuBXe28%9z2+( z&~za-eLeh$Ms@XtuvTdFd59~nNv#+CA()qEC?!}wpkHA;`a!Idxg`fCGX2xT!8^7m zHVwC#lY<-9wMvN|e{WYz3j3229X{cw)1sYSm_IqPeN4XyCCR1{p^_4Vqr({~b=AgU z{THef%JsFYA>aB5-XA0%gRl{)uJj^Ek5=%7lkI^8(JqkR7|~S9O67VsBGkaOl_9i* z@k<6r@-(0qk5x0uTcTAH%kT>1k$YgGG>rOD?hdqI{sx~KK!GlVM-gMr>yJfP2Xm)) z@5YaQS7c<Q_;W}OCnHYL8;pikv01b$sLuy5ic@r=i1M`Pp@4L#DiKtpvTaOOWd#mX zcq}*QkA(r%TtVkcj}=dbv%(8T93g&1RQ*u|K0q2kXG7_~y&3L%-iLmuMdYikq(p@; z3W_i=Gqjp>3JBCZCpE&3x@ahNOFlWO|4DZV7D@u7aP<L4LxX_PS%*5il5g~%oQgl! zvMn9n-+92PKq2-e$I?F=UdWCh!_XO5eX{*$n`F_eRLO&HJDiE(7%G%$;sbm3C|%he z|HO;&KaUess>*qwbALE7JP5>2$fh121oA&5JK_^*#rEnLY6?nn|Fj)gZ%uZ<Bc~`x z+=E_Jc)rAYPzJl4;)L{+{fM9wh6Pbm{MIvwqb58eatRdwl8H$oicAK8s%G9!!@fht z1S~zg(mcozM-CAVLNR+un*ksA{C~JM*?h)aD`M?YsQ{}Vs;0q@Rs_oJVb?_TeFO20 z!tZrq2m2(E@)v*Eji6N0f4U*Oecje+N*OK8p)%Z$VM`hOMQSA#9+LPEfcHdz#}E-} zqTk9UC_Sj{fCLD!wn?};G--P=B){&L_k`lk-Lma<*{Od`+3pSGrds`@J4Wty9&8`Y zjOK>Lg?9a!V4ux5U{hNi>w;}Q|JtgM{`W~hW$x+T)qSc2P_HbYT|Wf#(@K5jcQnUw z&joyl1caCizNL~%)QmtG4^e7DMF(RWMWLFi+0LE4+75s3&i+K49T<FeFm^P)R^Qhl ziRLc$w0_%~HEi>%0N&h{f9{SuUj2#U2>zt#<2yN<e_KMnRMM2`F9*#KaHjZMyH&r9 zejsO0>8IWThVtj|E`YtP6yrO?Y6(Nk)m1;w(m<{#16q*AH2nTB&k-m>fDFnlPwoJP zjW6c3rT3~~uPBdJ$<Zp|{7@nh>e0X8>voz$>%rmiqSgkIWv9f(wH^d8WF^?5Z4;3t ztGwH(LYr*}zUps)`&M|uG4vCg*A&+7ksPwb`enQPstkZPUlY*QzbLj9n0}DirjQp! zQ?Ay}(?}4FV5v%;5LicfwoRm;NC>7NYC+1q@bNR7n*R|swT}(+rjDSE&jyU9>Yt^i znnZ^z{9FvQXt#+fs_MLps)49L_^Lm_`rP>r=g{jmuNc<uMr+Ob|3*I7t1_rV$#3&b z=v^B0z&P^RyMReqhqa$X0HmK?P*mzoSOX14_M!(Sb{#`c2YBDZN-#4J1mIXCiJ+n& zDU79XgVX~)ULhcs4xb!i#vUqWO4bUM#Uap7y?A9}vU5_7{MqWZkn_+%ltP3+)YRPO z4SkU{*vIk}kZqLMA#Q&Y;oP@{MsfH~@Hs2CM4R8aaWt|qzh+G=95&ha2NTk0;EpzA zIz<lod`Mz*%HNM3k{nJ-I1z4^C%bM**jT8o|ElPr@B2RLwK=_+v5|fS>&QU<%Xr?3 zwDV1ySDt21qIg+&eFDr*qmj`Kld(u-UDalDBE0{f*5-EVS4NNc+Ce3Nypto5BWNA? z_+=7PMxF%f7Sz%VCvXQ?YlSC$`j?Xe11R|s<CrPrK`uc~9*$u!7g$oT(}%)OefgC> zb~Vw1mrR}dUGW$d{zc|~6`D@3t#G!pu0>u*)*zh38C13=`63-$Xb%A5!gCbGfIb2n z2&0c&0WcErT2~LOB_&!XmwG@zfd80CWNdm=SdDyAfyx1KnUuKR8AlCRuXfeuJ9ceP z=eDQ9T`=gJ$Z1Y0;cz5Gd<}Nd=8yKQOD08|FX!)Q^<i~Lr-V=YVv3qvhx`rH!wE~F zSU8~iC{0JJinl2$o@G3uDq(*P-VOyBr@1N{l96p%#!sD!-&x+rN<=P8z(Gz0zkm<{ zLm>gw5i=(oEyXWkqfl{mj62d+8xT5ReVORS*hctI3V+#!%JJihJ~K6S;Lt(+_m1Po z9n5kNZ>HGyku^86F_M{{n$AQv(gwc$1hmy%yE4VU9HX%hx???7A!GnlBBzlI5>oe& zB~@@<pzgZgIn}pqleg7(H&8+Z^g}U<tw`&5a6C7p<}&@m-tAY7&)1YkjdkHWSidW= z&N-oh*JC!G3zLqg2y?yOpfOXV`V`Uvh}DDkc+Nnne<2Z%hodI3Cmv6Xqux&>lG*Bu zt7_agAG7}2_k}MWlBdVIwx^?s&6&xeXv>bSq26fQeVJ(QP%;Vx8EX5`T6h@TVpiz6 zam4hmM3b>Bz~z>#hkc0Nho29VpQe8;{GUjP0H_fD1n^IRgo-?&l>q*s1{PAEs1zn# z3xosY>19wpVAP=uGDA(|fSH``U>F$Q<sTl_?jDW|?e?!*=ie=Fldc+&w<!Z_m0RSs zYvo(K0|Pmvl{I5Lp<uYv7xc+C2yDsLVwZzd{}=-ku-RlXJ?!5#92>q{8#Xp}`7`uo z?=AAc06z`iVxNJBLe!v$*+IY*3}YaALHDKwoK<pMuJYn4@XzW0h~>u^n{)j^E7FJT z4fGvktn>lz(-wa-a%^?<gWbsRoAForV9?WA9)}DtxQ{*1n&5RaTx=MlemtQhjat0I zo-1x5d4=0^1oY28mtCuAYqL}7HHcKCk?MwOT~rj67X<ymbcRA4nFAAPPz`EXK3@%< zHo{-Qf~4qn9WUn!E-qYxuvc>~OMd_G(#AmGllOqycKQI)W`x>vu&{~M0W7(&s`Aed z^=8vZJJ7fOasIVO!C_p@F<_B%w*emC(}1d&#~k;0R$KnAZMHOFTcR(4AEdpCK<Gd0 zp~k$h4vh&2Bl^QDH{H6awG}Tb^^U}4gR2uoF6_PFt<%t!7-i?5t3NOmup$D$N$X=w zFxF9+EA{TPTjK|w(}}bP$sezZT$9k|-le~HkeYQyAAQYv)`5ku`KKq092lcEg&FdU z;)fUoP@7?X5y~4g8R#vn)a3smbR2XpBfiai;9^<R-qX_#HZb}FMlklJx$04fLhU}l zqG6P*2yfH0ZN&}!6LbB^=aB2vj|4z?A@NA7hkOS}h#t*yVCi`bQ-t|Oj!TLl2s!;B zl<2_E8gRK}r`EKBplJ=DRl=b(51o@^0SORK!&K(JS*)@pHt~e;5AZH6!2MC&rUa$} zRts3hxYJpj8XTfYL}lhzcvF``;cjp*HG(xza5&Bl?o|k=jJQ5C<7Hn@iT+%&Wy4TA zulbhh35NnGAab<1Io#dW-m^WFiX>W611(43u%1d~o1<5`te1tGwXF%e3DEq&vRHqD zO~2OK-+kG&hhx$7#kuC}%7Sb$?2a>h(}qtOn7&T(L}20oYHsMtMp=6}Eb`Z*oDuY8 z^QrevO^L&Z4_8B8f3&2(<i?WEV+3NMr&I(t>^%6uXxI@V3%VUbYycJ`$jFBw_og*a zz9*C%iX|sWGf1ouC5!{Ii&5?#DXior#*9wDIgEPQc99Y{Ak3411>%s#6y!YzAYjQ( z!h7idmd&XJ$*pVyWtW&%k#rAo7N;YmX5@q@Aw|ZFtPPo6Bf5ier)*BANt~-8q>x{L zJO)_MaMr?1mKBI%{Rd#_15cFXTONlqS&PK|Hc0^njIt(#*NC@O)32V4?cX2U%EpCp zCo+POLfl4S7-T9VDC1Atz`FAlH8cbVHBOFGL&nQeyMil9@;&+%6yFwM^rw=l8bDjk z5>iV1MAK&y0m#;$f+lEo=0rHE!-<x-AKqWF1*ZUzsw#x8fnfZcHW}F;c|10bHRIG< z(6vXz7<?7gh~R*a3rutpRzV}e3nyih#B1JAOo|*8d^*Cg#lsPRt^+McT>rzsZw_YH z9DQq#{#eUUSPaKHC-2$X)wT8bSO!ow_FCISQvXAom3K*Z9Dj9F_?!C2BRFcP1)2Dr zle;FnkZVA2XBuaxwWs#|+e2le-?tszye{+mHUkzonm}tt$;Hr{C$UANy@VpZfYyN7 z*q<byA~`9APvu<~BjmG;ezL~8hVR^8_zt2slz_thUHFz0zq1x3w<LcJ_avASuxxP- zc79E)i?i3HZx^pgXez?YQl|I3YmzL9pLR`nUa5^#(WCeaUqmgx@;7(}B6q+-Jl&tk zAYcV<T-0fWKlXXLZvk=szY^+%Hf-VCP5yFF^d!LEF#5~U+X2VC>p7er$9w_Dz`KJt zm3|fl&4ZB9FU9w955P{p1fEgiaZvHOQ5YlP@uMmLU*#DgLK%C43Zty=fG6}nTJ*!+ z-7MY0%JnDp!z|4#?AjzRdC|cZ`A`L=vx+TxSGZJv8Q1>1k`wG}>=)#LnLRiATH$0v zg|Bg)*k}iFvs3lT`4<;nI_E`Ew&e7y(f!0rh6}Zcd9C0O5rQBCKtS#wLW49a-YYKo zRCXAZ(Yv}{<+_4Vg}AvRJI+h`QY>L!j$<`^f~k@$Wg=46Q!&7Zx{5^*GyDW+f|!AI zgu<d0@X#E(OoCsX4_`(yqvC<f$VmCYbN@*JnH-)6OuhpkW)p`qBdv_E%*TOB4tl*| zo6Q%BMTA3H8kC^+&;J$ju%173Zpd+)^6ol<Di1gfpz=r&Y79A)TupI$V?4~O+eA4+ zhK;F~I)z^j4CpVkx9h7$;NCsEa+Be+_$BJ_9LHFyA>3Poo0K9ADtv7c%Yd0%S4g`s zJlSUz;Xw&?c59LbS_gaUTs3&8J`dVS^GFsq3E#mirV-;JyUv;Pn<dzsn1yxqc)^sS zG$N{$1P>lPduWaDMev*two(#1wUFM#);P=bC;42x3ygNnBg0zTcvUj8eX>It+&-=) zlrB~V$iS2zS(3MDegH!t0&Z{LFc=OelD_R(kSTB8G3d>;AvY4u;x^7E@ipXfgb)u) zV$48armzw8bkwOJIgBM!ZGuxN)dUX*xIai?g3X!mxIugl1r>**xy;RyAx5fi6Z^*& zTkrZ_TT7%}hQra`9m%O3-R<67q}yi7WTf15I60MkP|791ggz}?qko)To&UKOh_gkh zL|a=T70uy$pf<o4!SLqKMS2lyO=sj>G!+h~rV}}^i6jPCHmU!%{dI8h-=N6s0UsX^ zM%?fMRJEVPosgMYA($zX5^Hk?kqJ0@V^FYQh6zAOm?^Rb&Jd^pI0Qc;h1K90h>1x= z%<xH50tt)wQRo{AZIMriY_~+UKyTgj39E$BN6<GWyyOh}VL~}%pLAOYq>WhHVO_~p z&QLhw3s=RRnjC2EUbBAV2x@JDztIPJJDV+GkEp)*U~C8!7a&x!!C@>TIn(P`fu0E2 zoTwvxTnjrL8dh-yoIM)U0oe{&w_AVh1%lZJP(}~=yvPufMR_t5cETOxP-L$L4}-HF zK!vyxY4ImEj0_L-HV5og&bSXo3KGNYahrYu*eNyL7a2euO*O7L{Wb<QLsMZ{hGaDm z3^<O1X9x)f;0Ug=IepL=WH_{ixAoT$;Cg`tjJas^y#*N-H<45%oHaZWYNA>sBo}pH zZ6IbQ4+1)t>|qsFJbyq?z0sE%qbDR9kE9-jqwC@V1d#DXV&MdJ0=`)nHv#oUdnHYT zh6bJEUs>Q;EUx;G9{?H%R;%obJ7b{4+&Hp+O?PtubaJ>|HICW_KHQlMMF-{2LboBm z6@BDGY3?w(63LNe(4*+K(aE@PM_4;fJ+I1eTj9<%FCGcqI3!SYvOU^26#sMZ0@kJV zXP(tx8?B1_kZ0$lXIy0uq`L=(M@CS5nx3&Q6tUs)X~4k}(Xk^On#5zm!*V+Gf5JX` z*s{-QtKwaZ$E_Vl^0kJCkEe*I4V4cnSSaF+4-F1P`dWN29C)9@Z+&8JO)vVDlkh8x zCuY2Jzd~ykhV4|AWYKKRNaC|wK$4I20IG^6!iR^D;MtW%dF4nT%>H=o$O)dg-GHEH zC!(!9(`2^3D9LGKY%GRnt{YKzcu+ye3X&ZnS3#&7Td5|@IgY#Ms19i9V9_<O9poj3 zLzV^!Y$QTVBlJPZW2C3Ed%_)RG8xMC5B9f)Q^P$@Xry+n-QOK($D@=~-=q&{BRLGG z2>n%*dg0R}4<twWI`glg%a1#oLtO(nq`xhUlO%k;fqVQmFj9KM!5r2tEtk$91_W9i zeAH48O<PT<EeRzo)an;~<txe6t69e&JgyHEbB(A@1NpOz+&HQ{Lb(SQz|Rcd7Pqem z_fGC_c<U*hqlhA-ZSmauBLX-mA&a$%fq@AC<0nvEOdCTtADx1%4;<XO^_8=CA?gVL z`$9_1h1~=<1051bk8`YFU<?&8Xoo+0kOKs@38XHkfwZD$^|$;UDiL?6h7B3v*#*U# z=*ZhC)WvP8#F#OBlK;v3*?UW(Gu;)L1fnuB8M!6GOk<ihMsyYI7)K-?n3#C=>|N02 zsqoljv;(jYZ+CQZW}0~OJED`5QI`8a_X$5y0o&+A<iD|G5VHWW(i*^wxRkFU5f6R_ z;O9sqfS55u02!1}hBe68k_)g4iv>n0*dD<0hOtc4F?29YO36*cnOG=z61RBbmgD-# z<F^d-MkZKdBHlfqTeocx<v=V2nufJG$oUQWzksqVlJ01R#E5H|HeZZ=51CzB2r3Xr z+Qneo>a~3t#3Oy+Pp=L)JJW5vvUHZM+jjhxTaIrVIg<1D_4#v0^uO=+`dg4GAI!yl zS~q(M6dF;@7f<J!<2HOfuD@gw<K5uu!}0{0@A&FAzrSsD+@Fp4Y)Jajx)Y}Ko<3gI zdUM~NqI{>AWCP~#h3G8^Y^j##4a1L)+<)`|Wt`Ao;I(MRQa=H}RiFWgGeV>QtW~R! z$Sy)rgm1|9aNwW2622G;BfP2wK`ft0L~`+@&Fgc-BhDZ^y;7M^xC~T`VnqKJiW+al zEM(s`2-c946&a2sI>2p^hzuvH!h!AWLn)$kOxWbGEv_UI+e2|*b1vu4*_r+<u!&w| z7MO)k8gy=4KRb21_?Xy=Ijdpy>ZA;1AWNzRB1Q2-Wx(p-tgCe*@rR;0^-XFi<xE01 zs&ykhS*nMhsIHy@$Vh5|endx*hX9%p##2K|gw|B+#=uCikR)6zCQPP;s6Vf=Z2lj# z0Q>GJgxkQbz+U~e7EnK*LuHcNBV45d;ZIVVVv=8cM}+nyuE2>*`F-YuIp7u2`cX4W znDmD>$+Bb3Jv9#>CPgZn76Mv#G*?qsSCfnOR%xacSyH4Dt*w+X7}LV~iJHbMu7FY{ zU`?Ue*uRT+!NwxXl;X9#R#zp26>;NM5<L$A9^l&+5v2{y+ds`Go|aADri_N)bc}`{ zJeGbXe{*rK@Err1EZjla`D!@g$bSYe!cF;aD?&$j{)cD>ty7y2cc2{O+2}WOqY(r^ z#{w{ikS63J;p2<JY2h1LPBxI4K(^QzWoQ+k@dS@A{-Qifdgds)ItG|D|2NYo#wIuu z8!pdv$z$Sz0(S(g?IL?bnUF-1DvQP7>&gF^y{f+<1oE%3SM>Tb*d+8D*>y?w$u9jL z^uxyaPKy6m_ytx5BX0pA4U7nkBg`EYJdl+tBD*w*DA=QkKx{~?FVXkx{$a5zKAD(I zbc%g<K5#72cj&=Eu`4kdza`NweQfd`{k({9A}VZ-w8#Swuj`0U-V*QX-rg<dzaEL3 zu6p3A&KUM|bWL{2!i|yqMF_D7$jAI4e2}NG`Xg%$Xck0R;CjV64AeSCFrURqNH0h- zOmldsXfFFn*rAXQslTbFOWA%cpe?C!O>2Q^#a@%vYFaIV-Jy7cRd%ny_6r{Cg0SM^ zTpYrwKTh~zll}<dhYVUuiZP-l=?U>;ym}s7L|nj9Y}*XUi{?;GHpKB7mXg_q=0g5p zKQxJ@bq2r_nx+b|qb>!3fI<Gp<K~_QqcAOd8=|xC?m?#`9)!M7E=yH1@@e7p3gK_u z?-zZ8$#x{e+K`hJNp!V9kb=eCDJI(!>uhd^b8vUhw&UW(pFRHh_21iGW3~6nve{vG z*sB7vNs$Fml2|d{0f4hdS4>{qykaG^6PGJ2TTIzjQ*-BJItqe^z-@MG%^lyn_VdR- zYs|qP!dG*O^XbI!j6PnnhMp6M!U;HlkRNP%zz33s&>?X{b{Q-+3?~l>Bs|Z0$~`6n z{sSIX@U6lRvzSVjp}JbiX>0MPMKSGfaoREf5oq*A1DLc6C{jSd*(J2ISrnUTXPVx$ zh@kG_M}(`Y!am_tKwp0lY*ld6-nTXXd`^^kv57zu>UJ)N2x>Cm1fPA#X3Fixx`r?5 zUu=`)Kq`nbWJ$j)<#LjY4LA@|0a<F>t<Z%vE~j>iTTy?(@Szbt2FNU!VdTLkvlW%y zkW@%)Ykrs-Zf65`4Z*Pjl#Iky5>5{=y=60#-J`%D+1L$OW98BOF_I9%;&@KC=HkLr zEA*$+*%i~QS!e_eIRvZMo_}epuy5w*ljGx0VqU}Ne6M)57(|N}z@Gy|DTm9@+@{fH z=n5i6<q8HaSkC{4@d<Sn7%MD;ol&g#`tLVKSatih<iucNqJ7U~+h7t}=0tkO$V5+% zxh1i7Yi1%b+%>W>IkBHrNAy2zj<O$%ZK-XK@0d(?*|hf1hVA#{?(PXMf{%P?!+6*B z<XTzOLf!hzZ!&&`%d^>bijb!Wlu=Jre!xZo=(y(twT}H_T3GU-8fKbpmz(EKB4YFb zyH0E>1-)b?+zqdOpteoM;0`<yOCJ&!e()9w%c`bQQ&sE&eFmP>*|u7sC!nPvV}fby zgLdTORG1ge$Nmr0;$M?zX?^ZP^(g7JkBavq7HIf$0Al>l`Ex{K?}SGOIZJ=qog=rO z=FZ8+g$DgDR;|}(*|n*}%9U{Etg@`gk~?Q{E)Wa`a*MmQfGNGgvTD|yW6CAgpsV%U zQordu$X5K^SpVn8G^z5$Ib(@`EUsBka2#4r`D%Jby!D(h&RoBi&4P0SoEB9dG~W4> z{;F)c>aKLv>i#O=wSEtK{1d`9=qxdsVZ>fj>xXJcu?{RjwBj>A4VnnWJ>l8F8Ww<z z0MbbKx(I!=OFuupS_`YFq!^EB6Fb)Fm$7eQ&?H;TQrA$wq9mQpwuoN|b;sBdad`Jg zC>R;t*a=8ZTe~u(--KF5sYJUo6^qNFDehmhngaJii2{7hO5tA-pI(l3A+)JBxtHQU z=O3emQ-cu>=P<G20^(G!LSx0+O0E}Z1^58XXa9I>?AB;blq9n)s>ao@+UE?0y%8m( zm`u67V5ha4ok~Pq6m<6CL*cSpZi%#JGzF0^uo5-H_HM~Uo0}t-q?2k~Nw$TqYSn*b zll_YvsuEWdnQr<p+XA;f>7k#)`qvIWJnT_|-s3s?lf*hL{B~#LCqIeo%zu6y-iXib zivH~N$ga!*{UUq^K5*bQwgRtly8X>9RvwFULwlJmzcIfQN9DXy9Q~=#@Ng(0)}V?n zS;%X%2hR8_e5xfl6dnpEGWqL-Wj<g2Y1Dnubzv<#;PdGp)tcF@(Eje%pYr)w*2jxK zk_@J~X{_tSrm0aa2nu?+`L)T%T-b^+I7Avs@k_}paK*Zzl5sn7Aw!nKkx@8uP$dkN z1xJtQ&reMeTKVAc-6N){!M#WJt`km;9@(t_0NvAqYGMgv3*SO2=+sm;(>=Vdy*)Fy zcMv}r-e*RQt)jkPsLspDdZ27q!t^QS`HTP>QQQY>D|x69Eohj}E@GwHyhgp<WpKq6 z{s}*wM-6ro@Ka!eNZUp<E{ljQI^fhFpo@Oos2vR-Cfzha@H{HiUyejZm{sVVS3H`v zF4mtgibpS7{3nY?qrXd%;tz#;u{O&XNr+y-D=9XqWkNl`VfasP#2@PC#Sg{zvKRFl z=8Ed?r2X4M3EG1~bWbrQ@U{@pcd=YhKhlxNC7NjuAES`7=R?k>$fH%%p{Z8z(m5sB zf13UbnEV;~H5>|10t}#_!~uo%NJYYbRDFSV9YvB2>J&KPZ<R#-hsXnRD&9~PFpVe; z1onFWv|>Z)3_tr35*MrDsNf@^qO)(QH{On7KB6;h6E!86_3pRUDY7GAwXhPqfbs>h z6))h@v{*HJLh&r%6nr2@NmcFlW`nxf3jQ!Tm+&-J#d3DD*`A9nSmI3u5$mG4S@7lY z{w#&F7H$(m2m`PSxU9;DDECW@9%+g0h-_w-NLS(gZ;p&Iwj;WkNfZj6Jr|H=j2JNS z1I-8mF%UCxBV+{ze7a@iEAU7oA8{}-vUy~%8!RS#8(?4mS4LVkk0b{9uI@p6%(v&a zb1^LX5>(0q0VhtqloB7Id4a?U#Qf;$r6>rsblwjdF#qz!Rte`N1{3i}51fD|+4s>< z&)T6i^bQzQR8|5wIvj~J_n9r+TxdF?0#4bN=!vWyiVvV5pwFbzyLe(K9*=~P(dCo# zPo8-bg_|?@wu~C(#W_kgc?8;K1J&TE<oMGhaDfc~b8rX?-<BZiFrhGO8{oJw1RTvT zs{T&kequ5~k|ZSuqa-ep^ZDNc^oLS`k<6_f)HFZ&+Vn3RI+TfQ*Z{5@<KqJp6Jtmr zHhhn}=?mI!Bqe^UQ07=WFrhy^j>#V05ZMT2)9{V{yBI6@73Omc7V>I~xrp3~M+?a* zTwl=S-9>vJ`^mvV(J|2qIv6TV$T<gLjY7Ch;};^X@ONq!AOgJB_<^yp1CTm!mEs=~ zoyW(y4e=Ok%Y`Ma$ZhUN=GC<&>!H;(reH||(*a--upr4Mn7{z=L7N9K2htcGAM8O| zB4()ycqz9)>nR=)s4L~*p#~fa`VVsdH8qgQsuu6Ah-P7zAj&|zFCoQ?j0RQihpXQq z<6$7F08kB-`0;_+QM98_7f^j})rY`=2@LWmfKuhHQrHCYBGd>Xefi%4?H}<~C1I2F z0wD8<mYLaQ5MXTwq}v9BbSl!1E16)MSEW!OUO}EB0uiuhH^AH_;I|#Y2NgTyHk+K# zoRv=4Ufq4&{@m(#mtX6N_I=df6Yg(A(M|({GxN5vBs0N%G>?ho?<S9iF&>G_64)tl zK@frpgAr-27=*?Ur2$C@E3!Rk4WZFU%baK(SsxexUmsk(+8S;BMsjZtzdnq5SNbZ9 zqNynW2`G{|GW=Fx%y1};1>PE_t&QvX;ldYC&KiVd1hAlW)@YZJ)wLMUltBE27Kw${ z)YtleU^N<q0R>GLiyJj&{n6F{m3(Y_afD9_@eqJ!80xxp3I#ZXZ*1MV7c>Sq0F2g8 zbLY7q`tDEp7W>k{gZf2d_;=2B7#9TYq1c$p*~V02AF*aoJ81nEt(afp!9yaST_Z2H zQ4PvK>(TWX@kswg9dgckdBCs#lvNw8(4R3XRkD=-!0w3&{i3NU_ANXoaN6w@9~QH~ zn=QtA)xrInQ0|-%h1^EP7=}DFiZ`YZloOF`7%-ER6nObYfD%0D8`4{$ijgYCd0r7S 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 literal 0 HcmV?d00001 diff --git a/config/ded/fonts/fontawesome-regular.ttf b/config/ded/fonts/fontawesome-regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..35acda2fa1196aad98c2adf4378a7611dd713aa3 GIT binary patch literal 165548 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 literal 0 HcmV?d00001 diff --git a/config/ded/scripts/ttf2png.py b/config/ded/scripts/ttf2png.py new file mode 100755 index 00000000..46865cac --- /dev/null +++ b/config/ded/scripts/ttf2png.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python +import sys +import os +import subprocess + +from fontTools.ttLib import TTFont + +TEXTS_DIR = "texts" +IMAGES_DIR = "images" + +TTF_PATH = sys.argv[1] +FONT_SIZE = sys.argv[2] +TTF_NAME, TTF_EXT = os.path.splitext(os.path.basename(TTF_PATH)) + +ttf = TTFont(TTF_PATH, 0, verbose=0, allowVID=0, ignoreDecompileErrors=True, fontNumber=-1) + +for d in [TEXTS_DIR, IMAGES_DIR]: + if not os.path.isdir(d): + os.mkdir(d) + +for x in ttf["cmap"].tables: + for y in x.cmap.items(): + char_unicode = unichr(y[0]) + char_utf8 = char_unicode.encode('utf_8') + char_name = y[1] + f = open(os.path.join(TEXTS_DIR, char_name + '.txt'), 'w') + f.write(char_utf8) + f.close() +ttf.close() + +files = os.listdir(TEXTS_DIR) +for filename in files: + name, ext = os.path.splitext(filename) + input_txt = TEXTS_DIR + "/" + filename + output_png = IMAGES_DIR + "/" + TTF_NAME + "_" + name + "_" + FONT_SIZE + ".png" + subprocess.call(["convert", "-font", TTF_PATH, "-pointsize", FONT_SIZE, "-background", "rgba(0,0,0,0)", "label:@" + input_txt, output_png]) + +print("finished") diff --git a/config/ded/shaders/cursor.frag b/config/ded/shaders/cursor.frag index 3ec4e737..84837b4a 100644 --- a/config/ded/shaders/cursor.frag +++ b/config/ded/shaders/cursor.frag @@ -1,14 +1,42 @@ +/* #version 330 core */ + +/* in vec4 out_color; */ + +/* void main() { */ +/* gl_FragColor = out_color; */ +/* } */ + + #version 330 core -in vec4 out_color; +in vec4 out_color; // Color input for the object. +in vec2 frag_coord; // The coordinate of the current fragment in screen space. + +uniform vec2 light_position; // The position of the light source in screen space. + +out vec4 frag_color; // Output color of the fragment. void main() { - gl_FragColor = out_color; + // Calculate the distance between the fragment and the light source. + float distance_to_light = length(frag_coord - light_position); + + // Define a shadow radius and adjust the shadow intensity. + float shadow_radius = 100.0; + float shadow_intensity = 0.3; // Adjust this value to control the shadow intensity. + + // Calculate the shadow factor based on distance. + float shadow_factor = smoothstep(shadow_radius, shadow_radius + 1.0, distance_to_light); + + // Apply the shadow factor to darken the input color. + vec3 fragment_color = out_color.rgb * (1.0 - shadow_intensity * shadow_factor); + + frag_color = vec4(fragment_color, out_color.a); } -/* // GRADIENT */ + +// GRADIENT /* #version 330 core */ /* in vec2 fragTexCoord; // Texture coordinate, if you're using textures */ @@ -35,3 +63,5 @@ void main() { /* // Output the color */ /* color = vec4(finalColor, 0.7); // Fully opaque */ /* } */ + + diff --git a/config/ded/snippets/#inc b/config/ded/snippets/#inc new file mode 100644 index 00000000..301c1e68 --- /dev/null +++ b/config/ded/snippets/#inc @@ -0,0 +1 @@ +#include <$0> diff --git a/libtree-sitter-json.a b/libtree-sitter-json.a new file mode 100644 index 0000000000000000000000000000000000000000..e59c01e1057d2250f70316a37c24cbc1e011eeba GIT binary patch literal 15898 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 P<<Fx1$NhyVt;_!x)6re? literal 0 HcmV?d00001 diff --git a/src/M-x.c b/src/M-x.c index de8c2819..341cbb9b 100644 --- a/src/M-x.c +++ b/src/M-x.c @@ -6,7 +6,7 @@ #include "emacs.h" #include "lsp.h" -// TODO aliases (lua or lisp we will have an in init file), +// TODO aliases (lua or lisp we will have an init file), // history in program memory, when quitting save it in ~/.config/ded/M-x-history // and load it when opening ded clamp it to max-M-x-history-size or something @@ -90,13 +90,6 @@ void execute_command(struct hashmap *command_map, Editor *editor, const char *in free(input_copy); } - - - - - - - int command_compare(const void *a, const void *b, void *udata) { const Command *cmd_a = a; const Command *cmd_b = b; @@ -114,8 +107,6 @@ uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1) { } - - // UTLITY bool is_number(const char *str) { if (!str || *str == '\0') diff --git a/src/M-x.h b/src/M-x.h index 9d5c3d28..7e3fb1d2 100644 --- a/src/M-x.h +++ b/src/M-x.h @@ -10,8 +10,6 @@ typedef struct { int additional_params_count; // Number of additional parameters needed } Command; - -/* void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *)); */ void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *, const char *params[]), int additional_params_count); void initialize_commands(struct hashmap *command_map); void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name); diff --git a/src/buffer.c b/src/buffer.c index c1a33c9a..db190ad9 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -55,8 +55,10 @@ void editor_kill_buffer(Editor *e) { e->buffer_history_count--; // Update the buffer index to point to the previous buffer, if possible + + + if (e->buffer_index > 0) { - e->buffer_index--; } // If there are still buffers in the history, load the previous one diff --git a/src/clock.c b/src/clock.c new file mode 100644 index 00000000..e4731d4a --- /dev/null +++ b/src/clock.c @@ -0,0 +1,189 @@ +// Clock +#include <stdbool.h> +#include "theme.h" +#include "clock.h" + +const bool digit_patterns[10][5][3] = { + // 0 + { + {1, 1, 1}, + {1, 0, 1}, + {1, 0, 1}, + {1, 0, 1}, + {1, 1, 1} + }, + // 1 + { + {0, 0, 1}, + {0, 0, 1}, + {0, 0, 1}, + {0, 0, 1}, + {0, 0, 1} + }, + // 2 + { + {1, 1, 1}, + {0, 0, 1}, + {1, 1, 1}, + {1, 0, 0}, + {1, 1, 1} + }, + // 3 + { + {1, 1, 1}, + {0, 0, 1}, + {1, 1, 1}, + {0, 0, 1}, + {1, 1, 1} + }, + // 4 + { + {1, 0, 1}, + {1, 0, 1}, + {1, 1, 1}, + {0, 0, 1}, + {0, 0, 1} + }, + // 5 + { + {1, 1, 1}, + {1, 0, 0}, + {1, 1, 1}, + {0, 0, 1}, + {1, 1, 1} + }, + // 6 + { + {1, 1, 1}, + {1, 0, 0}, + {1, 1, 1}, + {1, 0, 1}, + {1, 1, 1} + }, + // 7 + { + {1, 1, 1}, + {0, 0, 1}, + {0, 0, 1}, + {0, 0, 1}, + {0, 0, 1} + }, + // 8 + { + {1, 1, 1}, + {1, 0, 1}, + {1, 1, 1}, + {1, 0, 1}, + {1, 1, 1} + }, + // 9 + { + {1, 1, 1}, + {1, 0, 1}, + {1, 1, 1}, + {0, 0, 1}, + {1, 1, 1} + } +}; + + +Vec2f clockPosition; +float clockScale; +Vec4f clockColor; + +void init_clock() { + clockPosition = vec2f(1860, 31); + clockScale = 3; + clockColor = themes[currentThemeIndex].cursor; +} + + +void render_digit(Simple_Renderer *sr, int digit, Vec2f position, float squareSize, Vec4f color) { + for (int y = 0; y < 5; ++y) { + for (int x = 0; x < 3; ++x) { + if (digit_patterns[digit][y][x]) { + Vec2f segment_position = { + position.x + x * squareSize, + position.y + (4 - y) * squareSize // Flipping the Y-coordinate + }; + simple_renderer_solid_rect(sr, segment_position, vec2f(squareSize, squareSize), color); + } + } + } +} + +void render_colon(Simple_Renderer *sr, Vec2f position, float squareSize, Vec4f color) { + Vec2f top_dot_position = {position.x, position.y + 3.5 * squareSize}; // Flipped Y-coordinate + Vec2f bottom_dot_position = {position.x, position.y + 0.5 * squareSize}; // Flipped Y-coordinate + simple_renderer_solid_rect(sr, top_dot_position, vec2f(squareSize, squareSize), color); // Top dot + simple_renderer_solid_rect(sr, bottom_dot_position, vec2f(squareSize, squareSize), color); // Bottom dot +} + + +/* void render_clock(Simple_Renderer *sr, int hours, int minutes) { */ +/* simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_CURSOR); */ + +/* Vec4f currentClockColor = themes[currentThemeIndex].cursor; */ +/* float digitWidth = 3 * clockScale; // Width of each digit, assuming 3 units wide */ +/* float colonWidth = clockScale; // Assuming colon is 1 unit wide */ +/* float spacing = clockScale; // Spacing between elements */ + +/* // Calculate total width for hours, colon, and minutes */ +/* float totalWidth = (digitWidth * 4) + colonWidth + (spacing * 3); // 4 digits, 1 colon, 3 spaces */ + +/* // Calculate starting X position based on total width to center the clock */ +/* float startX = clockPosition.x - (totalWidth / 2.0); */ + +/* // Adjust positions based on startX */ +/* Vec2f firstHourDigitPos = vec2f(startX, clockPosition.y); */ +/* Vec2f secondHourDigitPos = vec2f(startX + digitWidth + spacing, clockPosition.y); */ +/* Vec2f colonPosition = vec2f(startX + (digitWidth * 2) + (spacing * 2), clockPosition.y); */ +/* Vec2f firstMinuteDigitPos = vec2f(colonPosition.x + colonWidth + spacing, clockPosition.y); */ +/* Vec2f secondMinuteDigitPos = vec2f(firstMinuteDigitPos.x + digitWidth + spacing, clockPosition.y); */ + +/* // Render the digits and colon based on adjusted positions */ +/* render_digit(sr, hours / 10, firstHourDigitPos, clockScale, currentClockColor); */ +/* render_digit(sr, hours % 10, secondHourDigitPos, clockScale, currentClockColor); */ +/* render_colon(sr, colonPosition, clockScale, currentClockColor); */ +/* render_digit(sr, minutes / 10, firstMinuteDigitPos, clockScale, currentClockColor); */ +/* render_digit(sr, minutes % 10, secondMinuteDigitPos, clockScale, currentClockColor); */ + +/* simple_renderer_flush(sr); */ +/* } */ + + +void render_clock(Simple_Renderer *sr, int hours, int minutes) { + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_CURSOR); + + Vec4f currentClockColor = themes[currentThemeIndex].cursor; + float digitWidth = 3 * clockScale; // Width of each digit, assuming 3 units wide + float colonWidth = clockScale; // Assuming colon is 1 unit wide + float spacing = clockScale; // Spacing between elements + float blockMove = 2 * clockScale; // Define the block move distance + + // Adjust starting positions based on the presence of "1" + float hourAdjust = (hours % 10 == 1) ? blockMove : 0; // Adjust if second hour digit is "1" + float minuteAdjust = (minutes / 10 == 1) ? -blockMove : 0; // Adjust if first minute digit is "1" + float secondMinuteAdjust = (minutes % 10 == 1 && minutes / 10 != 1) ? -blockMove : 0; // Adjust if second minute digit is "1" and first is not "1" + + // Calculate total width and starting X position to center the clock + float totalWidth = (digitWidth * 4) + colonWidth + (spacing * 3) + hourAdjust + minuteAdjust; + float startX = clockPosition.x - (totalWidth / 2.0); + + Vec2f firstHourDigitPos = vec2f(startX + hourAdjust, clockPosition.y); // Move first hour digit if needed + Vec2f secondHourDigitPos = vec2f(startX + digitWidth + spacing + hourAdjust, clockPosition.y); + Vec2f colonPosition = vec2f(startX + (digitWidth * 2) + (spacing * 2) + hourAdjust, clockPosition.y); + Vec2f firstMinuteDigitPos = vec2f(colonPosition.x + colonWidth + spacing + minuteAdjust, clockPosition.y); + Vec2f secondMinuteDigitPos = vec2f(firstMinuteDigitPos.x + digitWidth + spacing + secondMinuteAdjust, clockPosition.y); + + // Render the digits and colon based on adjusted positions + render_digit(sr, hours / 10, firstHourDigitPos, clockScale, currentClockColor); + render_digit(sr, hours % 10, secondHourDigitPos, clockScale, currentClockColor); + render_colon(sr, colonPosition, clockScale, currentClockColor); + render_digit(sr, minutes / 10, firstMinuteDigitPos, clockScale, currentClockColor); + render_digit(sr, minutes % 10, secondMinuteDigitPos, clockScale, currentClockColor); + + simple_renderer_flush(sr); +} + + diff --git a/src/clock.h b/src/clock.h new file mode 100644 index 00000000..15151d43 --- /dev/null +++ b/src/clock.h @@ -0,0 +1,16 @@ +#ifndef CLOCK_H +#define CLOCK_H + +#include "common.h" +#include "simple_renderer.h" + +extern Vec2f clockPosition; +extern float clockScale; +extern Vec4f clockColor; + +void render_clock(Simple_Renderer *sr, int hours, int minutes); +void render_digit(Simple_Renderer *sr, int digit, Vec2f position, float squareSize, Vec4f color); +void render_colon(Simple_Renderer *sr, Vec2f position, float squareSize, Vec4f color); +void init_clock(); + +#endif // CLOCK_H diff --git a/src/common.c b/src/common.c index 38772104..3575c3d9 100644 --- a/src/common.c +++ b/src/common.c @@ -164,3 +164,4 @@ Errno type_of_file(const char *file_path, File_Type *ft) #endif return 0; } + diff --git a/src/common.h b/src/common.h index 6daecb14..65d742e2 100644 --- a/src/common.h +++ b/src/common.h @@ -114,4 +114,5 @@ Errno read_entire_dir(const char *dir_path, Files *files); bool is_hex_digit(char c); Vec4f hex_to_vec4f(uint32_t color); + #endif // COMMON_H_ diff --git a/src/editor.c b/src/editor.c index a1feca95..37c439c4 100644 --- a/src/editor.c +++ b/src/editor.c @@ -4,6 +4,7 @@ #include <stdio.h> #include <errno.h> #include <string.h> +#include <limits.h> #include "./editor.h" #include "./common.h" #include "./free_glyph.h" @@ -13,6 +14,8 @@ #include "simple_renderer.h" #include <ctype.h> // For isalnum #include "evil.h" +#include "theme.h" +#include "M-x.h" bool quit = false; @@ -46,13 +49,15 @@ bool ivy = false; bool M_x_active = false; bool evil_command_active = false; -bool BlockInsertCurosr = true; +bool BlockInsertCurosr = false; bool highlightCurrentLineNumberOnInsertMode = true; // the loong way bool helix = false; bool emacs = false; bool automatic_zoom = true; +float fringeWidth = 6.0f; +bool showFringe = true; void set_current_mode() { @@ -65,7 +70,7 @@ void set_current_mode() { } } -EvilMode current_mode = HELIX; +EvilMode current_mode = NORMAL; bool extract_word_under_cursor(Editor *editor, char *word) { // Make a copy of cursor position to avoid modifying the actual cursor @@ -353,39 +358,66 @@ size_t get_position_from_line_column(Editor *e, size_t line, size_t column) { /* return 0; */ /* } */ +/* Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { */ +/* char expanded_file_path[PATH_MAX]; */ +/* expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); */ +/* printf("Loading %s\n", expanded_file_path); */ + +/* e->data.count = 0; */ +/* Errno err = read_entire_file(expanded_file_path, &e->data); */ +/* if (err != 0) return err; */ + +/* // Move cursor to the specified line and column */ +/* e->cursor = get_position_from_line_column(e, line, column); */ + +/* editor_retokenize(e); */ + +/* e->file_path.count = 0; */ +/* sb_append_cstr(&e->file_path, expanded_file_path); */ +/* sb_append_null(&e->file_path); */ + +/* // Add file path to buffer history */ +/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ +/* e->buffer_history[e->buffer_history_count++] = strdup(expanded_file_path); */ +/* } */ +/* return 0; */ +/* } */ + + Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { char expanded_file_path[PATH_MAX]; expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); - printf("Loading %s\n", expanded_file_path); + + printf("[find_file] Requested File: %s\n", file_path); + printf("[find_file] Expanded File Path: %s\n", expanded_file_path); + printf("[find_file] Line: %zu, Column: %zu\n", line, column); e->data.count = 0; Errno err = read_entire_file(expanded_file_path, &e->data); - if (err != 0) return err; + if (err != 0) { + printf("[find_file] Error reading file: %d\n", err); + return err; + } - // Move cursor to the specified line and column e->cursor = get_position_from_line_column(e, line, column); - editor_retokenize(e); e->file_path.count = 0; sb_append_cstr(&e->file_path, expanded_file_path); sb_append_null(&e->file_path); - // Add file path to buffer history if (e->buffer_history_count < MAX_BUFFER_HISTORY) { e->buffer_history[e->buffer_history_count++] = strdup(expanded_file_path); } + printf("[find_file] File loaded and cursor set.\n"); return 0; } - - - size_t editor_cursor_row(const Editor *e) { assert(e->lines.count > 0); @@ -801,6 +833,8 @@ ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos) { } return -1; // No matching parenthesis found } + // if matchParenthesis is false or any other condition not covered above + return -1; } size_t editor_row_from_pos(const Editor *e, size_t pos) { @@ -814,13 +848,14 @@ size_t editor_row_from_pos(const Editor *e, size_t pos) { return e->lines.count - 1; } + //TODO BUG void editor_enter(Editor *e) { if (e->searching) { editor_stop_search_and_mark(e); current_mode = NORMAL; return; - } else if (M_x_active || evil_command_active && e->minibuffer_active) { + } else if ((M_x_active || evil_command_active) && e->minibuffer_active) { sb_append_null(&e->minibuffer_text); // null termination execute_command(e->commands, e, e->minibuffer_text.items); e->minibuffer_text.count = 0; @@ -1238,7 +1273,7 @@ Errno openLocalIncludeFile(Editor *editor, const char *includePath) { snprintf(fullPath, sizeof(fullPath), "%s/%s", directory, includePath); // Load the file using the full path - Errno load_err = find_file(editor, fullPath, 0, 0); + Errno load_err = find_file(editor, fullPath, 10, 10); if (load_err != 0) { fprintf(stderr, "Error loading file %s: %s\n", fullPath, strerror(load_err)); return load_err; @@ -1351,7 +1386,6 @@ void select_region_from_inside_braces(Editor *editor) { // Find the start of the function while (start > 0) { start--; - size_t line_begin = editor->lines.items[start].begin; size_t line_end = editor->lines.items[start].end; // Simple heuristic: a line ending with '{' might be the start of a function @@ -1472,10 +1506,6 @@ void editor_save_and_quit(Editor *e) { quit = true; } - - - - bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { return false; @@ -1507,7 +1537,6 @@ bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) #define MAX_WORD_LENGTH 256 // TODO cycle -// TODO bad match sometimes i invoke it and it does nothing void evil_complete_next(Editor *e) { static char last_word[MAX_WORD_LENGTH] = {0}; @@ -1611,7 +1640,7 @@ Errno editor_goto_line(Editor *editor, const char *params[]) { return 0; } -void get_cursor_position(const Editor *e, int *line, int *character) { +void get_cursor_position(const Editor *e, size_t *line, int *character) { assert(e != NULL && line != NULL && character != NULL); // Get the line number @@ -1727,6 +1756,7 @@ uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1) { int variable_doc_compare(const void *a, const void *b, void *udata) { + (void)udata; // Unfinished avoid compiler warning const VariableDoc *doc = a; const char *key = b; return strcmp(doc->var_name, key); @@ -1798,9 +1828,6 @@ void update_minibuffer_animation(float deltaTime) { } - - - size_t calculate_max_line_length(const Editor *editor) { size_t max_len = 0; for (size_t i = 0; i < editor->lines.count; ++i) { @@ -1813,6 +1840,27 @@ size_t calculate_max_line_length(const Editor *editor) { return max_len; } +float column_to_x(Free_Glyph_Atlas *atlas, int column) { + float whitespace_width = measure_whitespace_width(atlas); + return column * whitespace_width; +} + + +void editor_color_text_range(Editor *editor, size_t start, size_t end, Vec4f new_color) { + for (size_t i = 0; i < editor->tokens.count; ++i) { + Token *token = &editor->tokens.items[i]; + size_t token_start = token->position.x; // Make sure this is the correct way to calculate the start position + size_t token_end = token_start + token->text_len; + + // Check if the token is within the specified range + if (token_start < end && token_end > start) { + token->color = new_color; + } + } +} + + + diff --git a/src/editor.h b/src/editor.h index a51cd0b6..0a97bf3c 100644 --- a/src/editor.h +++ b/src/editor.h @@ -47,6 +47,9 @@ extern bool helix; extern bool emacs; extern bool automatic_zoom; + +extern float fringeWidth; +extern bool showFringe; typedef struct { size_t begin; size_t end; @@ -120,6 +123,10 @@ typedef struct { int buffer_history_count; int buffer_index; + // lsp + int to_clangd_fd; + int from_clangd_fd; + } Editor; Errno editor_save_as(Editor *editor, const char *file_path); @@ -196,12 +203,29 @@ void editor_save_and_quit(Editor *e); void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count); void evil_complete_next(Editor *e); Errno editor_goto_line(Editor *editor, const char *params[]); -void get_cursor_position(const Editor *e, int *line, int *character); +void get_cursor_position(const Editor *e, size_t *line, int *character); void set_current_mode(); size_t calculate_max_line_length(const Editor *editor); + +Vec4f get_color_for_token_kind(Token_Kind kind); +void update_cursor_color(Editor * editor); +/* void update_cursor_color(Editor *editor, Free_Glyph_Atlas *atlas); */ + + + + + + + + + + + + + // UTILITY bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length); size_t editor_row_from_pos(const Editor *e, size_t pos); @@ -211,15 +235,15 @@ bool editor_is_line_whitespaced(Editor *e, size_t row); float measure_whitespace_width(Free_Glyph_Atlas *atlas); float measure_whitespace_height(Free_Glyph_Atlas *atlas); size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); -bool exract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); +bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); bool is_number(const char *str); // Var Documentation typedef struct { - const char *var_name; // Name of the variable - const char *var_type; // Type of the variable (e.g., "int", "float", "bool") - const char *description; // Description of the variable + char *var_name; // Name of the variable + char *var_type; // Type of the variable (e.g., "int", "float", "bool") + char *description; // Description of the variable } VariableDoc; void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1); @@ -232,7 +256,6 @@ int variable_doc_compare(const void *a, const void *b, void *udata); // animation - extern float targetModelineHeight; extern bool isModelineAnimating; extern void update_modeline_animation(); @@ -249,6 +272,8 @@ float easeOutCubic(float x); - +void editor_color_text_range(Editor *editor, size_t start, size_t end, Vec4f new_color); +void adjust_line_number_width(Editor *editor, float *lineNumberWidth); #endif // EDITOR_H_ + diff --git a/src/elix.h b/src/elix.h deleted file mode 100644 index e9cd4f94..00000000 --- a/src/elix.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef HELIX_H -#define HELIX_H - -#include "editor.h" - - - -#endif // HELIX_H diff --git a/src/emacs.c b/src/emacs.c index f084ade3..b487a93a 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -89,19 +89,14 @@ void emacs_backward_kill_word(Editor *e) { void emacs_back_to_indentation(Editor *e) { if (e->cursor >= e->data.count) return; - size_t row = editor_cursor_row(e); size_t line_begin = e->lines.items[row].begin; size_t line_end = e->lines.items[row].end; - - // Find the first non-whitespace character using the utility function size_t first_non_whitespace = find_first_non_whitespace(e->data.items, line_begin, line_end); - - // Move the cursor to the first non-whitespace character e->cursor = first_non_whitespace; } -void emacs_mark_paragraph(Editor *e, bool shift) { +void emacs_mark_paragraph(Editor *e) { if (!e->selection) { // Find the first empty line above size_t row = editor_cursor_row(e); diff --git a/src/emacs.h b/src/emacs.h index e6e113be..0e0b3a5b 100644 --- a/src/emacs.h +++ b/src/emacs.h @@ -6,6 +6,6 @@ void emacs_kill_line(Editor *e); void emacs_backward_kill_word(Editor *e); void emacs_back_to_indentation(Editor *e); -void emacs_mark_paragraph(Editor *e, bool shift); +void emacs_mark_paragraph(Editor *e); #endif // EMACS_H diff --git a/src/evil.c b/src/evil.c index cbe70a81..1e93c23a 100644 --- a/src/evil.c +++ b/src/evil.c @@ -441,12 +441,11 @@ void evil_change_line(Editor *e) { editor_retokenize(e); } -// TODO can't find Capital chars +// TODO can't find Capital chars and chars that require holding shift void evil_find_char(Editor *e, char target) { if (e->searching || e->cursor >= e->data.count) return; size_t row = editor_cursor_row(e); - size_t line_begin = e->lines.items[row].begin; size_t line_end = e->lines.items[row].end; // Start searching from the character right after the cursor position diff --git a/src/file_browser.c b/src/file_browser.c index 14e92930..e5df0176 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -4,6 +4,10 @@ #include "sv.h" #include "editor.h" // only for zoom_factor maybe im bad at programming #include <stdbool.h> +#include <sys/stat.h> + + +bool file_browser = false; static int file_cmp(const void *ap, const void *bp) @@ -34,8 +38,6 @@ Errno fb_open_dir(File_Browser *fb, const char *dir_path) } - - #define PATH_SEP "/" #define PATH_EMPTY "" #define PATH_DOT "." @@ -106,7 +108,6 @@ void normpath(String_View path, String_Builder *result) free(new_comps.items); } - Errno fb_change_dir(File_Browser *fb) { assert(fb->dir_path.count > 0 && "You need to call fb_open_dir() before fb_change_dir()"); @@ -136,8 +137,6 @@ Errno fb_change_dir(File_Browser *fb) return 0; } - - void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr) { Vec2f cursor_pos = vec2f(0, -(float)fb->cursor * FREE_GLYPH_FONT_SIZE); @@ -197,9 +196,9 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl if (target_scale > 3.0f) { target_scale = 3.0f; } else { - offset = cursor_pos.x - w/1/sr->camera_scale; + offset = cursor_pos.x - w/1.0f/sr->camera_scale; if (offset < 0.0f) offset = 0.0f; - target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); + target = vec2f(w/3.0f/sr->camera_scale + offset, cursor_pos.y); } sr->camera_vel = vec2f_mul( @@ -210,9 +209,7 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; } - // dont need the else ? - // the camera is already adjusted - + // TODO // else if !followCursor } } @@ -236,7 +233,6 @@ const char *fb_file_path(File_Browser *fb) return fb->file_path.items; } - // ADDED void extract_file_extension(const char *filename, String_Builder *ext) { const char *dot = strrchr(filename, '.'); @@ -272,3 +268,19 @@ void expand_path(const char *original_path, char *expanded_path, size_t expanded expanded_path[expanded_path_size - 1] = '\0'; } +/* static int is_directory(const char* base_path, const char* file) { */ +/* char full_path[PATH_MAX]; */ +/* snprintf(full_path, PATH_MAX, "%s/%s", base_path, file); */ + +/* struct stat statbuf; */ +/* if (stat(full_path, &statbuf) != 0) { */ +/* return 0; // In case of error, assume it's not a directory */ +/* } */ + +/* return S_ISDIR(statbuf.st_mode); */ +/* } */ + +void toggle_file_browser(){ + file_browser = !file_browser; +} + diff --git a/src/file_browser.h b/src/file_browser.h index 1bcdcc7b..10d38037 100644 --- a/src/file_browser.h +++ b/src/file_browser.h @@ -3,10 +3,9 @@ #include "common.h" #include "free_glyph.h" - #include <SDL2/SDL.h> - #include <stdbool.h> +#include <limits.h> typedef struct { Files files; @@ -14,26 +13,23 @@ typedef struct { String_Builder dir_path; String_Builder file_path; String_Builder file_extension; - // for file creation mode bool is_in_file_creation_mode; char tmp_filename[PATH_MAX]; size_t tmp_filename_len; - } File_Browser; +const char *fb_file_path(File_Browser *fb); Errno fb_open_dir(File_Browser *fb, const char *dir_path); Errno fb_change_dir(File_Browser *fb); void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr); - -const char *fb_file_path(File_Browser *fb); - Errno fb_go_to_parent(File_Browser *fb); // ADDED +extern bool file_browser; + void extract_file_extension(const char *filename, String_Builder *ext); void expand_path(const char *original_path, char *expanded_path, size_t expanded_path_size); - - +void toggle_file_browser(); #endif // FILE_BROWSER_H_ diff --git a/src/free_glyph.h b/src/free_glyph.h index efd11e99..24631e86 100644 --- a/src/free_glyph.h +++ b/src/free_glyph.h @@ -32,7 +32,8 @@ typedef struct { float tx; // x offset of glyph in texture coordinates } Glyph_Metric; -#define GLYPH_METRICS_CAPACITY 128 +/* #define GLYPH_METRICS_CAPACITY 128 */ +#define GLYPH_METRICS_CAPACITY 6400 typedef struct { FT_UInt atlas_width; diff --git a/src/helix.c b/src/helix.c index 2dd09423..09c3e39f 100644 --- a/src/helix.c +++ b/src/helix.c @@ -29,3 +29,77 @@ void helix_mode() { isMinibufferAnimating = true; } +void update_cursor_color(Editor *editor) { + // Check for no text + if (editor == NULL || editor->data.items == NULL || editor->data.count == 0) { + // Handle the error or return with a default color + currentTheme.cursor = themes[currentThemeIndex].notext_cursor; + return; + } + + size_t cursor_pos = editor->cursor; + + // check if cursor is at EOF + if (cursor_pos >= editor->data.count) { + currentTheme.cursor = themes[currentThemeIndex].EOF_cursor; + return; + } + + // Check if the cursor is on a whitespace + if (isspace(editor->data.items[cursor_pos])) { + currentTheme.cursor = themes[currentThemeIndex].cursor; + return; + } + + size_t current_pos = 0; + size_t token_index = 0; // Current token being processed + + while (current_pos < editor->data.count && token_index < editor->tokens.count) { + Token token = editor->tokens.items[token_index]; + size_t token_end = current_pos + token.text_len; + + // Check if the cursor is within the current token + if (cursor_pos >= current_pos && cursor_pos < token_end) { + Vec4f color = get_color_for_token_kind(token.kind); + currentTheme.cursor = color; + return; + } else { + currentTheme.cursor = currentTheme.text; + } + + // Advance to the next token or character + if (cursor_pos < token_end || strncmp(&editor->data.items[current_pos], token.text, token.text_len) == 0) { + current_pos = token_end; // Skip over the token + token_index++; // Move to the next token + } else { + current_pos++; // Move to the next character + } + } +} + + + + +Vec4f get_color_for_token_kind(Token_Kind kind) { + switch (kind) { + case TOKEN_KEYWORD: return currentTheme.logic; + case TOKEN_STRING: return currentTheme.string; + case TOKEN_TYPE: return currentTheme.type; + case TOKEN_PIPE: return currentTheme.pipe; + case TOKEN_TRUE: return currentTheme.truee; + case TOKEN_FALSE: return currentTheme.falsee; + case TOKEN_NULL: return currentTheme.null; + case TOKEN_PREPROC: return currentTheme.hashtag; + case TOKEN_POINTER: return currentTheme.pointer; + case TOKEN_EQUALS: return currentTheme.equals; + case TOKEN_GREATER_THAN: return currentTheme.greater_than; + case TOKEN_LESS_THAN: return currentTheme.less_than; + case TOKEN_EQUALS_EQUALS: return currentTheme.equals_equals; + case TOKEN_COMMENT: return currentTheme.comment; + case TOKEN_ARROW: return currentTheme.arrow; + case TOKEN_FUNCTION_DEFINITION: return currentTheme.function_definition; + case TOKEN_ARRAY_CONTENT: return currentTheme.array_content; + default: return currentTheme.cursor; + } +} + diff --git a/src/helix.h b/src/helix.h index a2f6437a..24d0cd57 100644 --- a/src/helix.h +++ b/src/helix.h @@ -4,5 +4,7 @@ #include "editor.h" void helix_mode(); +void update_cursor_color(Editor *editor); +Vec4f get_color_for_token_kind(Token_Kind kind); #endif // HELIX_H diff --git a/src/lexer.c b/src/lexer.c index bc633058..50a67972 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -5,6 +5,7 @@ #include <stdlib.h> #include "common.h" #include "lexer.h" +#include "theme.h" typedef struct { Token_Kind kind; @@ -626,3 +627,4 @@ Token lexer_next(Lexer *l) token.text_len = 1; return token; } + diff --git a/src/lexer.h b/src/lexer.h index 8edb8260..3a379bc8 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -49,12 +49,15 @@ typedef enum { const char *token_kind_name(Token_Kind kind); + +// TODO add a size_t position typedef struct { Token_Kind kind; const char *text; size_t text_len; Vec2f position; - int nesting_level; // <-- New attribute + int nesting_level; // TODO + Vec4f color; // <-- New attribute } Token; typedef struct { diff --git a/src/lsp.c b/src/lsp.c index 825cf270..90cf65c9 100644 --- a/src/lsp.c +++ b/src/lsp.c @@ -1,188 +1,310 @@ +#include "lsp.h" +#include "common.h" +#include "editor.h" #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/types.h> #include <sys/wait.h> -#include "lsp.h" +#include <pthread.h> #include <json-c/json.h> +#include <limits.h> +#include "common.h" - -int to_ccls[2]; // Pipe for sending data to ccls -int from_ccls[2]; // Pipe for receiving data from ccls +// Global variables +int to_clangd[2]; +int from_clangd[2]; pthread_t receive_thread; +int current_request_id = 1; -const char* project_root = "/home/l/Desktop/test/ded"; +void handle_error(const char *message) { + perror(message); + exit(EXIT_FAILURE); +} -#include "file_browser.h" - -void get_current_file_uri(Editor *e, char *file_uri, size_t uri_size) { - // Assuming that `e->file_path` is a String_Builder containing the full file path - // and `expand_path` is a function that normalizes or expands the path to a full path. - char expanded_path[256]; - expand_path(e->file_path.items, expanded_path, sizeof(expanded_path)); +void start_clangd(Editor *e) { + printf("Starting clangd...\n"); + if (pipe(to_clangd) == -1 || pipe(from_clangd) == -1) { + handle_error("Failed to create pipes"); + } - // Convert the file path to a URI format. This typically involves prefixing with "file://" - // and ensuring the path is correctly encoded for a URI (e.g., spaces are encoded, etc.) - // Here, for simplicity, we're just prefixing with "file://". - snprintf(file_uri, uri_size, "file://%s", expanded_path); + pid_t pid = fork(); + if (pid == -1) { + handle_error("Failed to fork"); + } else if (pid == 0) { // Child process + // Close unused pipe ends + close(to_clangd[1]); + close(from_clangd[0]); + + // Redirect stdin and stdout + dup2(to_clangd[0], STDIN_FILENO); + dup2(from_clangd[1], STDOUT_FILENO); + + execlp("clangd", "clangd", NULL); + handle_error("Failed to start clangd"); + } else { // Parent process + // Close unused pipe ends + close(to_clangd[0]); + close(from_clangd[1]); + + e->to_clangd_fd = to_clangd[1]; + e->from_clangd_fd = from_clangd[0]; + if (pthread_create(&receive_thread, NULL, receive_json_rpc, e) != 0) { + handle_error("Failed to create thread for receive_json_rpc"); + } + } + send_initialize_request(e); } - -/* void start_ccls(const char* project_root) { */ -/* if (pipe(to_ccls) == -1 || pipe(from_ccls) == -1) { */ -/* perror("Failed to create pipes"); */ -/* exit(EXIT_FAILURE); */ -/* } */ - -/* pid_t pid = fork(); */ -/* if (pid == -1) { */ -/* perror("Failed to fork"); */ -/* exit(EXIT_FAILURE); */ -/* } */ - -/* if (pid == 0) { */ -/* dup2(to_ccls[0], STDIN_FILENO); */ -/* dup2(from_ccls[1], STDOUT_FILENO); */ -/* close(to_ccls[0]); */ -/* close(to_ccls[1]); */ -/* close(from_ccls[0]); */ -/* close(from_ccls[1]); */ -/* execlp("ccls", "ccls", NULL); */ -/* perror("Failed to start ccls"); */ -/* exit(EXIT_FAILURE); */ -/* } else { */ -/* close(to_ccls[0]); */ -/* close(from_ccls[1]); */ -/* } */ - -/* // After starting ccls, send initialize message with the project root */ -/* char init_params[1024]; */ -/* snprintf(init_params, sizeof(init_params), */ -/* "{\"processId\": null, \"rootUri\": \"file://%s\", \"capabilities\": {}}", */ -/* project_root); */ -/* send_json_rpc("initialize", init_params); */ -/* pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); */ +/* void shutdown_clangd() { */ +/* send_json_rpc("shutdown", "{}", current_request_id++); */ +/* send_json_rpc("exit", "{}", current_request_id++); */ +/* close(to_clangd[1]); */ +/* pthread_join(receive_thread, NULL); */ +/* wait(NULL); // Wait for clangd to terminate */ /* } */ -void start_ccls() { - char expanded_root[PATH_MAX]; - // Assuming expand_path is a function that expands tildes and relative paths - expand_path(project_root, expanded_root, sizeof(expanded_root)); +void shutdown_clangd(Editor *e) { + send_json_rpc(e->to_clangd_fd, "shutdown", "{}", current_request_id++); + send_json_rpc(e->to_clangd_fd, "exit", "{}", current_request_id++); + close(e->to_clangd_fd); + pthread_join(receive_thread, NULL); + close(e->from_clangd_fd); + wait(NULL); // Wait for clangd to terminate +} + +void send_json_rpc(int fd, const char* method, const char* params, int request_id) { + char message[4096]; + size_t message_length = snprintf(message, sizeof(message), "{\"jsonrpc\": \"2.0\", \"id\": %d, \"method\": \"%s\", \"params\": %s}\n", + request_id, method, params); - if (pipe(to_ccls) == -1 || pipe(from_ccls) == -1) { - perror("Failed to create pipes"); - exit(EXIT_FAILURE); + if (message_length >= sizeof(message)) { + fprintf(stderr, "[send_json_rpc] Error: JSON-RPC message is too long.\n"); + return; } - pid_t pid = fork(); - if (pid == -1) { - perror("Failed to fork"); - exit(EXIT_FAILURE); - } - - if (pid == 0) { - // Child process: Setup pipes and start ccls - dup2(to_ccls[0], STDIN_FILENO); - dup2(from_ccls[1], STDOUT_FILENO); - close(to_ccls[0]); - close(to_ccls[1]); - close(from_ccls[0]); - close(from_ccls[1]); - - execlp("ccls", "ccls", "--log-file=/dev/stderr", NULL); - perror("Failed to start ccls"); - exit(EXIT_FAILURE); + ssize_t bytes_written = write(fd, message, message_length); + if (bytes_written == -1) { + perror("[send_json_rpc] Error sending JSON-RPC"); + } else if ((size_t)bytes_written != message_length) { + fprintf(stderr, "[send_json_rpc] Error: Partial JSON-RPC message sent. Expected %zu bytes, sent %zu bytes.\n", message_length, (size_t)bytes_written); } else { - // Parent process: Close unused pipe ends - close(to_ccls[0]); - close(from_ccls[1]); - } - - // Send initialize message with the expanded project root - char init_params[1024]; - snprintf(init_params, sizeof(init_params), - "{\"processId\": null, \"rootUri\": \"file://%s\", \"capabilities\": {}}", - expanded_root); - send_json_rpc("initialize", init_params); - pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); + printf("[send_json_rpc] Sent %zu bytes: %s\n", (size_t)bytes_written, message); + } } +void parse_lsp_response(const char *response_json, LSPResponse *response) { + json_object *parsed_json = json_tokener_parse(response_json); + json_object *id, *method, *params; + if (json_object_object_get_ex(parsed_json, "id", &id)) { + response->id = json_object_get_int(id); + } -void goto_definition(Editor *e) { - printf("Debug: Entering goto_definition\n"); - - char file_uri[1024]; - int line, character; - get_current_file_uri(e, file_uri, sizeof(file_uri)); - get_cursor_position(e, &line, &character); - - printf("Debug: file_uri = %s, line = %d, character = %d\n", file_uri, line, character); + if (json_object_object_get_ex(parsed_json, "method", &method)) { + response->method = strdup(json_object_get_string(method)); + } - char params[1024]; - snprintf(params, sizeof(params), - "{\"textDocument\": {\"uri\": \"%s\"}, \"position\": {\"line\": %d, \"character\": %d}}", - file_uri, line, character); + if (json_object_object_get_ex(parsed_json, "params", &params)) { + response->params = strdup(json_object_to_json_string(params)); + } - send_json_rpc("textDocument/definition", params); - printf("Debug: JSON-RPC request sent\n"); + json_object_put(parsed_json); } -void send_json_rpc(const char* method, const char* params) { - char message[4096]; - snprintf(message, sizeof(message), "{\"jsonrpc\": \"2.0\", \"method\": \"%s\", \"params\": %s}\n", method, params); - printf("Debug: Sending JSON-RPC: %s\n", message); - - if (write(to_ccls[1], message, strlen(message)) == -1) { - perror("Error sending JSON-RPC"); +void handle_lsp_response(LSPResponse *response, Editor *e) { + printf("[handle_lsp_response] Received response with method: %s\n", response->method); + + if (strcmp(response->method, "textDocument/definition") == 0) { + json_object *parsed_response = json_tokener_parse(response->params); + json_object *locations_array; + + if (json_object_object_get_ex(parsed_response, "result", &locations_array)) { + // Assuming the result is an array of locations (as per LSP specification) + json_object *location = json_object_array_get_idx(locations_array, 0); // Get the first location + if (location) { + json_object *uri_obj, *range_obj, *start_obj, *line_obj, *char_obj; + if (json_object_object_get_ex(location, "uri", &uri_obj) && + json_object_object_get_ex(location, "range", &range_obj) && + json_object_object_get_ex(range_obj, "start", &start_obj) && + json_object_object_get_ex(start_obj, "line", &line_obj) && + json_object_object_get_ex(start_obj, "character", &char_obj)) { + + const char *file_uri = json_object_get_string(uri_obj); + int line = json_object_get_int(line_obj); + int character = json_object_get_int(char_obj); + + char file_path[PATH_MAX]; + convert_uri_to_file_path(file_uri, file_path, sizeof(file_path)); + printf("[handle_lsp_response] Definition found at file: %s, line: %d, character: %d\n", file_path, line, character); + find_file(e, file_path, line, character); + } + } + } + json_object_put(parsed_response); + } else { + printf("[handle_lsp_response] Received non-definition response or method not recognized\n"); } } + void* receive_json_rpc(void* arg) { + Editor *e = (Editor *)arg; + if (e == NULL) { + fprintf(stderr, "[receive_json_rpc] Editor instance is NULL\n"); + return NULL; + } + char buffer[4096]; ssize_t nbytes; - while ((nbytes = read(from_ccls[0], buffer, sizeof(buffer) - 1)) > 0) { - buffer[nbytes] = '\0'; - printf("Received from ccls: %s\n", buffer); // Print the raw response + printf("[receive_json_rpc] Thread started, waiting for responses from clangd...\n"); + + while (1) { + nbytes = read(e->from_clangd_fd, buffer, sizeof(buffer) - 1); + + if (nbytes > 0) { + buffer[nbytes] = '\0'; + printf("[receive_json_rpc] Received %zd bytes from clangd: %s\n", nbytes, buffer); + + LSPResponse response; + parse_lsp_response(buffer, &response); + + if (response.method) { + printf("[receive_json_rpc] Handling response for method: %s\n", response.method); + handle_lsp_response(&response, e); + free(response.method); + free(response.params); + } else { + printf("[receive_json_rpc] No valid method found in response or response parsing failed\n"); + } + } else if (nbytes == 0) { + printf("[receive_json_rpc] EOF reached, clangd might have closed the connection.\n"); + break; + } else { + perror("[receive_json_rpc] Error reading from clangd"); + break; + } + } + + printf("[receive_json_rpc] Thread is exiting.\n"); + return NULL; +} + + + + - struct json_object *parsed_json = json_tokener_parse(buffer); - if (!parsed_json) { - printf("Failed to parse JSON response: %s\n", buffer); - continue; +void convert_uri_to_file_path(const char *uri, char *file_path, size_t file_path_size) { + if (strncmp(uri, "file://", 7) == 0) { + uri += 7; // Skip the "file://" part + char *decoded_uri = url_decode(uri); // Implement url_decode to handle percent-encoding + snprintf(file_path, file_path_size, "%s", decoded_uri); + free(decoded_uri); // Assuming url_decode dynamically allocates memory + } else { + fprintf(stderr, "Invalid URI format\n"); + strncpy(file_path, "", file_path_size); + } +} + +// Example implementation of url_decode (simplified) +char *url_decode(const char *str) { + char *decoded = malloc(strlen(str) + 1); + char *d = decoded; + while (*str) { + if (*str == '%' && *(str + 1) && *(str + 2)) { + char hex[3] = { str[1], str[2], '\0' }; + *d++ = (char)strtol(hex, NULL, 16); + str += 3; + } else { + *d++ = *str++; } + } + *d = '\0'; + return decoded; +} - // Log the entire JSON object for debugging - printf("Parsed JSON response: %s\n", json_object_to_json_string(parsed_json)); - json_object_put(parsed_json); // Free the JSON object +void goto_definition(Editor *e, File_Browser *fb) { + if (!e || !fb) { + fprintf(stderr, "[goto_definition] Error: Editor or File_Browser is NULL\n"); + return; } - if (nbytes == -1) { - perror("Error reading from ccls"); + char file_uri[256]; + get_current_file_uri(e, fb, file_uri, sizeof(file_uri)); + int character; + size_t line; + get_cursor_position(e, &line, &character); + + char params[512]; + int params_length = snprintf(params, sizeof(params), + "{\"textDocument\": {\"uri\": \"%s\"}, \"position\": {\"line\": %zu, \"character\": %d}}", + file_uri, line, character); + + // Check for snprintf error + if (params_length < 0) { + fprintf(stderr, "[goto_definition] Error: Encoding error in snprintf.\n"); + return; } - return NULL; + // Now safe to compare, with casting to match types + if (params_length >= (int)sizeof(params)) { + fprintf(stderr, "[goto_definition] Error: Params string is too long.\n"); + return; + } + + send_json_rpc(e->to_clangd_fd, "textDocument/definition", params, current_request_id++); + printf("[goto_definition] Requested definition at URI: %s, Line: %zu, Character: %d\n", file_uri, line, character); } -void initialize_lsp() { - send_json_rpc("initialize", "{\"capabilities\": {}}"); - pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); +void get_current_file_uri(Editor *e, File_Browser *fb, char *file_uri, size_t uri_size) { + if (!e || !fb || !file_uri) { + fprintf(stderr, "Error: Invalid arguments in get_current_file_uri\n"); + return; + } + + // Directly access the items of the String_Builder + /* char *path = fb->dir_path.items; */ + char *path = fb->file_path.items; + /* char *path = "/home/l/Desktop/test/ded"; */ + + if (path && path[0] != '\0') { // Check if the path is not empty + snprintf(file_uri, uri_size, "file://%s", path); + } else { + fprintf(stderr, "Error: File path is empty in File_Browser\n"); + strncpy(file_uri, "", uri_size); + } } -void shutdown_lsp() { - send_json_rpc("shutdown", "{}"); - send_json_rpc("exit", "{}"); - close(to_ccls[1]); // Close the write-end of the pipe - pthread_join(receive_thread, NULL); // Wait for the receiving thread to finish - int status; - waitpid(-1, &status, 0); // Wait for the ccls process to terminate +void send_initialize_request(Editor *e) { + const char *params = "{" + "\"processId\": null," + "\"rootUri\": \"file://<path_to_your_workspace>\"," + "\"capabilities\": {" + " // Include necessary capabilities" + "}" + "}"; + send_json_rpc(e->to_clangd_fd, "initialize", params, current_request_id++); +} + +void send_initialized_notification(Editor *e) { + send_json_rpc(e->to_clangd_fd, "initialized", "{}", current_request_id++); } -void handle_signal(int sig) { - shutdown_lsp(); - exit(0); // Exit the program +void send_did_open_notification(Editor *e, const char *file_uri, const char *file_content) { + char params[1024]; + snprintf(params, sizeof(params), + "{\"textDocument\": {" + "\"uri\": \"%s\"," + "\"languageId\": \"c\"," + "\"version\": 1," + "\"text\": \"%s\"" + "}}", file_uri, file_content); + send_json_rpc(e->to_clangd_fd, "textDocument/didOpen", params, current_request_id++); } + + diff --git a/src/lsp.h b/src/lsp.h index f6bf0dcb..cb1efebe 100644 --- a/src/lsp.h +++ b/src/lsp.h @@ -1,21 +1,39 @@ #ifndef LSP_H_ #define LSP_H_ -#include "editor.h" +#include "file_browser.h" +#include "editor.h" #include <pthread.h> +// Struct to store LSP response +typedef struct { + int id; + char *method; + char *params; +} LSPResponse; + extern pthread_t receive_thread; -extern const char *project_root; -/* void start_ccls(const char* project_root); */ -void start_ccls(); -void initialize_lsp(); -void handle_signal(int sig); -void send_json_rpc(const char* method, const char* params); + +/* void start_clangd(); */ +void start_clangd(Editor *e); +/* void shutdown_clangd(); */ +void shutdown_clangd(Editor *e); +/* void send_json_rpc(const char* method, const char* params, int request_id); */ +void send_json_rpc(int fd, const char* method, const char* params, int request_id); void* receive_json_rpc(void* arg); -void shutdown_lsp(); +void goto_definition(Editor *e, File_Browser *fb); +void handle_lsp_response(LSPResponse *response, Editor *e); +void convert_uri_to_file_path(const char *uri, char *file_path, size_t file_path_size); +char *url_decode(const char *str); +void get_current_file_uri(Editor *e, File_Browser *fb, char *file_uri, size_t uri_size); +void parse_lsp_response(const char *response_json, LSPResponse *response); + + + -void get_current_file_uri(Editor *e, char *file_uri, size_t uri_size); -void goto_definition(Editor *e); +void send_did_open_notification(Editor *e, const char *file_uri, const char *file_content); +void send_initialize_request(Editor *e); +void send_initialized_notification(Editor * e); -#endif // LPS_H_ +#endif // LSP_H_ diff --git a/src/main.c b/src/main.c index 6daee4c7..4b54264b 100644 --- a/src/main.c +++ b/src/main.c @@ -41,6 +41,8 @@ #include "unistd.h" #include "M-x.h" #include "lsp.h" +#include "treesitter.h" +#include "clock.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) @@ -184,12 +186,12 @@ int main(int argc, char **argv) initialize_shader_paths(); load_snippets_from_directory(); + init_clock(); + // lsp - signal(SIGINT, handle_signal); - start_ccls(/* project_root */); - initialize_lsp(); + start_clangd(&editor); + /* pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); */ - // Define hash seeds (these could be randomly generated for more robustness) uint64_t seed0 = 0x12345678; @@ -372,9 +374,11 @@ int main(int argc, char **argv) break; case SDL_KEYDOWN: - if (handle_evil_find_char(&editor, &event)) { - break; // Skip further processing if the key event was handled - } + if (current_mode == NORMAL) { + if (handle_evil_find_char(&editor, &event)) { + break; // Skip further processing if the key event was handled + } + } if (file_browser) { switch (event.key.keysym.sym) { @@ -698,6 +702,7 @@ int main(int argc, char **argv) } } break; + case SDLK_SEMICOLON: if (event.key.keysym.mod & KMOD_SHIFT) { current_mode = MINIBUFFER; @@ -736,7 +741,9 @@ int main(int argc, char **argv) case SDLK_c: if (event.key.keysym.mod & KMOD_SHIFT) { evil_change_line(&editor); - } + } else if (event.key.keysym.mod & KMOD_CTRL) { + automatic_zoom = !automatic_zoom; + } // Eat up the next SDL_TEXTINPUT event for 'C' SDL_PollEvent(&tmpEvent); @@ -765,6 +772,7 @@ int main(int argc, char **argv) editor.minibuffer_active = false; } + mixSelectionColor = false ; editor_clear_mark(&editor); editor_stop_search(&editor); editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); @@ -811,9 +819,6 @@ int main(int argc, char **argv) case SDLK_o: - if (superDrammtic) { - followCursor = true; - } if (SDL_GetModState() & KMOD_SHIFT) { evil_open_above(&editor); } else { @@ -1014,9 +1019,6 @@ int main(int argc, char **argv) current_mode = INSERT; } - if (superDrammtic){ - followCursor = true; - } editor.last_stroke = SDL_GetTicks(); // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' @@ -1046,9 +1048,6 @@ int main(int argc, char **argv) case SDLK_a: editor.last_stroke = SDL_GetTicks(); - if (superDrammtic){ - followCursor = true; - } if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held editor_move_to_line_end(&editor); } else { @@ -1123,37 +1122,27 @@ int main(int argc, char **argv) } break; - case SDLK_h: - if (event.key.keysym.mod & KMOD_ALT) { - emacs_mark_paragraph(&editor, true); + + case SDLK_j: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if ((event.key.keysym.mod & KMOD_CTRL) && (event.key.keysym.mod & KMOD_ALT)) { + evil_open_above(&editor); + } else if (event.key.keysym.mod & KMOD_CTRL) { + evil_open_below(&editor); + } else if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { + move_camera(&sr, "down", 50.0f); + } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { + evil_join(&editor); + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_down(&editor); } else { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } + editor_move_line_down(&editor); } editor.last_stroke = SDL_GetTicks(); break; - - case SDLK_j: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { - move_camera(&sr, "down", 50.0f); - } else if (event.key.keysym.mod & KMOD_CTRL) { - evil_open_above(&editor); - } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { - evil_join(&editor); - } else if (event.key.keysym.mod & KMOD_ALT) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + case SDLK_k: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { @@ -1161,27 +1150,48 @@ int main(int argc, char **argv) } else if (event.key.keysym.mod & KMOD_CTRL) { emacs_kill_line(&editor); } else if (event.key.keysym.mod & KMOD_ALT) { - editor_move_paragraph_up(&editor); + editor_drag_line_up(&editor); } else if (event.key.keysym.mod & KMOD_SHIFT) { - goto_definition(&editor); + goto_definition(&editor, &fb); } else { editor_move_line_up(&editor); } editor.last_stroke = SDL_GetTicks(); break; + + case SDLK_h: + if (event.key.keysym.mod & KMOD_ALT) { + // If Alt is held, check if char under cursor is { or } and not editor->selection + emacs_mark_paragraph(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + // Toggle mixSelectionColor when Shift is pressed without Ctrl or Alt + mixSelectionColor = (event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_CTRL) && !(event.key.keysym.mod & KMOD_ALT); + } + editor.last_stroke = SDL_GetTicks(); + break; + case SDLK_l: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { showLineNumbers = !showLineNumbers; } else if (event.key.keysym.mod & KMOD_ALT) { - select_region_from_inside_braces(&editor); + select_region_from_inside_braces(&editor); } else { editor_move_char_right(&editor); + // Toggle mixSelectionColor when Shift is pressed without Ctrl or Alt + mixSelectionColor = (event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_CTRL) && !(event.key.keysym.mod & KMOD_ALT); } editor.last_stroke = SDL_GetTicks(); break; + case SDLK_DOWN: if (event.key.keysym.mod & KMOD_ALT) { @@ -1320,7 +1330,16 @@ int main(int argc, char **argv) if (event.key.keysym.mod & KMOD_CTRL) { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); editor_move_char_left(&editor); - } + } else if (event.key.keysym.mod & KMOD_ALT) { + editor_backspace(&editor); + + // Eat up the next SDL_TEXTINPUT event for 'h' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'h')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } + } editor.last_stroke = SDL_GetTicks(); break; @@ -1491,6 +1510,7 @@ int main(int argc, char **argv) SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume } } + editor.last_stroke = SDL_GetTicks(); } break; @@ -1520,10 +1540,6 @@ int main(int argc, char **argv) break; case SDLK_ESCAPE: { - if (superDrammtic){ - followCursor = false; - } - if (editor.searching) { editor_clear_mark(&editor); editor_stop_search(&editor); @@ -1861,9 +1877,6 @@ int main(int argc, char **argv) case SDLK_o: - if (superDrammtic) { - followCursor = true; - } if (SDL_GetModState() & KMOD_SHIFT) { evil_open_above(&editor); } else { @@ -2064,9 +2077,6 @@ int main(int argc, char **argv) current_mode = INSERT; } - if (superDrammtic){ - followCursor = true; - } editor.last_stroke = SDL_GetTicks(); // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' @@ -2096,9 +2106,6 @@ int main(int argc, char **argv) case SDLK_a: editor.last_stroke = SDL_GetTicks(); - if (superDrammtic){ - followCursor = true; - } if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held editor_move_to_line_end(&editor); } else { @@ -2175,7 +2182,7 @@ int main(int argc, char **argv) case SDLK_h: if (event.key.keysym.mod & KMOD_ALT) { - emacs_mark_paragraph(&editor, true); + emacs_mark_paragraph(&editor); } else { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { @@ -2213,7 +2220,7 @@ int main(int argc, char **argv) } else if (event.key.keysym.mod & KMOD_ALT) { editor_move_paragraph_up(&editor); } else if (event.key.keysym.mod & KMOD_SHIFT) { - goto_definition(&editor); + goto_definition(&editor, &fb); } else { editor_move_line_up(&editor); } @@ -2292,17 +2299,6 @@ int main(int argc, char **argv) // additional NORMAL mode keybinds here... } break; - - - - - - - - - - - case MINIBUFFER: switch (event.key.keysym.sym) { @@ -2395,18 +2391,22 @@ int main(int argc, char **argv) if (theme_lerp){ update_theme_interpolation(); } - update_modeline_animation(); update_minibuffer_animation(DELTA_TIME); editor_render(window, &atlas, &sr, &editor); + update_cursor_color(&editor); render_search_text(&atlas, &sr, &editor); + + if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "json") == 0) { + tree(&editor, &fb); + } + - - if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "md") == 0) { - render_markdown(&atlas, &sr, &editor, &fb); - } + if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "md") == 0) { + render_markdown(&atlas, &sr, &editor, &fb); + } @@ -2425,9 +2425,9 @@ int main(int argc, char **argv) SDL_Delay(delta_time_ms - duration); } } - - shutdown_lsp(); - free_snippet_array(&snippets); // TODO + + shutdown_clangd(&editor); + free_snippet_array(&snippets); return 0; } diff --git a/src/render.c b/src/render.c index 55f579d1..9077cabd 100644 --- a/src/render.c +++ b/src/render.c @@ -7,13 +7,23 @@ #include "simple_renderer.h" #include "theme.h" #include <stdbool.h> +#include <time.h> -float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 5; -bool render_whitespaces_on_select = true; -bool lerpTokens = true; +float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 1; +bool render_whitespaces_on_select = false; +bool lerpTokens = true; // TODO +bool mixSelectionColor = true; -// TODO sub-pixel rendering +Vec4f blend_color(Vec4f color1, Vec4f color2, float blendFactor) { + Vec4f result; + result.x = color1.x * (1 - blendFactor) + color2.x * blendFactor; + result.y = color1.y * (1 - blendFactor) + color2.y * blendFactor; + result.z = color1.z * (1 - blendFactor) + color2.z * blendFactor; + result.w = color1.w * (1 - blendFactor) + color2.w * blendFactor; + return result; +} + void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { if (editor->searching) { Vec4f cursorColor = CURRENT_THEME.cursor; @@ -47,10 +57,21 @@ void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed void render_selection(Editor *editor, Simple_Renderer *sr, Free_Glyph_Atlas *atlas) { if (isWave) { simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else if (editor->selection) { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_CURSOR); } else { simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); } + if (editor->selection) { + Vec4f selection_color; + if (mixSelectionColor) { + // If mixSelectionColor is true, blend the cursor and selection colors + selection_color = blend_color(currentTheme.cursor, currentTheme.selection, 0.5); // Adjust blend factor as needed + } else { + selection_color = themes[currentThemeIndex].selection; + } + for (size_t row = 0; row < editor->lines.count; ++row) { size_t select_begin_chr = editor->select_begin; size_t select_end_chr = editor->cursor; @@ -70,15 +91,11 @@ void render_selection(Editor *editor, Simple_Renderer *sr, Free_Glyph_Atlas *atl if (select_begin_chr <= select_end_chr) { Vec2f select_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + line_chr.begin, select_begin_chr - line_chr.begin, - &select_begin_scr); + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + line_chr.begin, select_begin_chr - line_chr.begin, &select_begin_scr); Vec2f select_end_scr = select_begin_scr; // Adjust the range to include the end character - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + select_begin_chr, select_end_chr - select_begin_chr + 1, - &select_end_scr); + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + select_begin_chr, select_end_chr - select_begin_chr + 1, &select_end_scr); // Adjust selection for line numbers if displayed if (showLineNumbers) { @@ -86,15 +103,15 @@ void render_selection(Editor *editor, Simple_Renderer *sr, Free_Glyph_Atlas *atl select_end_scr.x += lineNumberWidth; } - Vec4f selection_color = vec4f(.25, .25, .25, 1); - simple_renderer_solid_rect(sr, select_begin_scr, vec2f(select_end_scr.x - select_begin_scr.x, FREE_GLYPH_FONT_SIZE), selection_color); } } } simple_renderer_flush(sr); } - + + + #include <string.h> // Include string.h for strcmp @@ -201,66 +218,68 @@ void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Edi } - - void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { if (showLineNumbers) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); - } + simple_renderer_set_shader(sr, isWave ? VERTEX_SHADER_WAVE : VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + + adjust_line_number_width(editor, &lineNumberWidth); size_t currentLineNumber = editor_cursor_row(editor); - - // Different colors for line numbers + Vec4f defaultColor = CURRENT_THEME.line_numbers; Vec4f currentLineColor = CURRENT_THEME.current_line_number; - /* if (highlightCurrentLineNumberOnInsertMode) { */ - /* currentLineColor = (current_mode == INSERT) ? CURRENT_THEME.insert_cursor : CURRENT_THEME.current_line_number; */ - /* } */ if (highlightCurrentLineNumberOnInsertMode) { - if (current_mode == INSERT) { - currentLineColor = CURRENT_THEME.insert_cursor; - } else if (current_mode == EMACS) { - currentLineColor = CURRENT_THEME.emacs_cursor; - } else { - currentLineColor = CURRENT_THEME.current_line_number; - } + currentLineColor = (current_mode == INSERT) ? CURRENT_THEME.insert_cursor : + (current_mode == EMACS) ? CURRENT_THEME.emacs_cursor : + CURRENT_THEME.current_line_number; } + int lineNumberFieldWidth; + size_t lineCount = editor->lines.count; - - // Calculate the width needed for the largest line number - int lineNumberFieldWidth = snprintf(NULL, 0, "%zu", editor->lines.count); - - for (size_t i = 0; i < editor->lines.count; ++i) { - char lineNumberStr[12]; // Sufficiently large to hold the formatted number - - // Calculate display line number based on relative number setting - size_t displayLineNumber; - if (relativeLineNumbers) { - displayLineNumber = (i == currentLineNumber) ? currentLineNumber + 1 : abs((int)i - (int)currentLineNumber); - } else { - displayLineNumber = i + 1; - } + // Adjust line number width based on followCursor and line count + if (followCursor || lineCount >= 1000) { + // Adjust width based on current line count + lineNumberFieldWidth = snprintf(NULL, 0, "%zu", lineCount); + } else { + // Fixed width for up to three digits + lineNumberFieldWidth = snprintf(NULL, 0, "%d", 999); + } + + for (size_t i = 0; i < lineCount; ++i) { + char lineNumberStr[12]; - // Format the line number with right justification + size_t displayLineNumber = relativeLineNumbers ? + (i == currentLineNumber) ? currentLineNumber + 1 : abs((int)i - (int)currentLineNumber) : + i + 1; + snprintf(lineNumberStr, sizeof(lineNumberStr), "%*zu", lineNumberFieldWidth, displayLineNumber); Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - - // Decide on the color to use + Vec4f colorToUse = (highlightCurrentLineNumber && i == currentLineNumber) ? currentLineColor : defaultColor; free_glyph_atlas_render_line_sized(atlas, sr, lineNumberStr, strlen(lineNumberStr), &pos, colorToUse); } - + simple_renderer_flush(sr); } } +void adjust_line_number_width(Editor *editor, float *lineNumberWidth) { + size_t lineCount = editor->lines.count; + + if (lineCount < 10) { // Less than 10 lines + *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; + } else if (lineCount < 100) { // 10 to 99 lines + *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; + } else if (lineCount < 1000) { // 100 to 999 lines + *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; + } else { // 1000 lines or more + *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 4; + } +} // TODO /* void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { */ @@ -350,7 +369,7 @@ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed Vec2f circleCenter = {pos.x + (j - line.begin) * char_width + char_width / 2, pos.y + FREE_GLYPH_FONT_SIZE / 2}; Vec4f whitespaceColor = shouldRenderInSelection ? CURRENT_THEME.selected_whitespaces : CURRENT_THEME.whitespace; - + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); simple_renderer_circle(sr, circleCenter, circleRadius, whitespaceColor, circleSegments); } @@ -373,8 +392,13 @@ typedef struct { // TODO calculate properly CHARACTER_WIDTH void render_indentation_lines(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { if (showIndentationLines) { + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } - float LINE_THICKNESS = 4.0f; + float LINE_THICKNESS = 5.0f; BraceInfo braceStack[5000]; // Assuming a max of 5000 nested braces int braceCount = 0; float CHARACTER_WIDTH = measure_whitespace_width(atlas); @@ -432,15 +456,6 @@ void render_indentation_lines(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Edi } } - - - - - - - - - void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { int w, h; @@ -453,6 +468,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer float whitespace_width = measure_whitespace_width(atlas); + // Render hl_line { if (hl_line){ @@ -512,8 +528,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // TODO shader switch - render_indentation_lines(sr, atlas, editor); render_selection(editor, sr, atlas); + render_indentation_lines(sr, atlas, editor); render_whitespaces(atlas, sr, editor); @@ -644,6 +660,229 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer + // Render cursor + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else if (editor->selection) { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_CURSOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + { + if (showLineNumbers) { + cursor_pos.x += lineNumberWidth; + } + + // Constants and Default Settings + float CURSOR_WIDTH; + const Uint32 CURSOR_BLINK_THRESHOLD = 500; + const Uint32 CURSOR_BLINK_PERIOD = 1000; + const Uint32 t = SDL_GetTicks() - editor->last_stroke; + Vec4f CURSOR_COLOR = CURRENT_THEME.cursor; + float BORDER_THICKNESS = 3.0f; + Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); + + sr->verticies_count = 0; + + // If editor has a mark, make the cursor transparent + if (editor->has_mark) { + CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) + } + + // Rendering based on mode + switch (current_mode) { + + case NORMAL: { + float cursor_width; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + cursor_width = whitespace_width; + } + + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } break; + + case HELIX: { + float cursor_width; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + cursor_width = whitespace_width; + } + + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } break; + + + case VISUAL: { + float cursor_width; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + cursor_width = whitespace_width; + } + + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } break; + + case MINIBUFFER: { + // TODO + } break; + + + case EMACS: { + float cursor_width; + CURSOR_COLOR = CURRENT_THEME.emacs_cursor; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && + editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + cursor_width = whitespace_width; + } + + // Implement blinking for EMACS mode + if (t < CURSOR_BLINK_THRESHOLD || + (t / CURSOR_BLINK_PERIOD) % 2 != 0) { + simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } + } break; + + + case INSERT: + CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; + /* CURSOR_COLOR = CURRENT_THEME.cursor; */ + if (BlockInsertCurosr) { + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + CURSOR_WIDTH = next_char_pos.x - cursor_pos.x; + } else { + CURSOR_WIDTH = whitespace_width; + } + } else { + CURSOR_WIDTH = 5.0f; // Thin line + } + // blinking for INSERT mode + if (t < CURSOR_BLINK_THRESHOLD || + (t / CURSOR_BLINK_PERIOD) % 2 != 0) { + simple_renderer_solid_rect( + sr, cursor_pos, + vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } + break; + + /* case VISUAL: { */ + /* float cursor_width; */ + + /* // Check if the cursor is on an actual character or an empty line */ + /* if (editor->cursor < editor->data.count && */ + /* editor->data.items[editor->cursor] != '\n') { */ + /* Vec2f next_char_pos = cursor_pos; */ + /* free_glyph_atlas_measure_line_sized( */ + /* atlas, editor->data.items + editor->cursor, 1, */ + /* &next_char_pos); */ + /* cursor_width = next_char_pos.x - cursor_pos.x; */ + /* } else { */ + /* Vec2f next_char_pos = cursor_pos; */ + /* free_glyph_atlas_measure_line_sized(atlas, "a", 1, */ + /* &next_char_pos); */ + /* cursor_width = next_char_pos.x - cursor_pos.x; */ + /* } */ + + /* // Draw inner rectangle */ + /* simple_renderer_solid_rect( */ + /* sr, */ + /* vec2f(cursor_pos.x + BORDER_THICKNESS, */ + /* cursor_pos.y + BORDER_THICKNESS), */ + /* vec2f(cursor_width - 2 * BORDER_THICKNESS, */ + /* FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), */ + /* INNER_COLOR); */ + + /* // Draw the outline (borders) using the theme's cursor color */ + /* simple_renderer_solid_rect(sr, cursor_pos, */ + /* vec2f(cursor_width, BORDER_THICKNESS), */ + /* CURSOR_COLOR); // Top border */ + /* simple_renderer_solid_rect( */ + /* sr, */ + /* vec2f(cursor_pos.x, */ + /* cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), */ + /* vec2f(cursor_width, BORDER_THICKNESS), */ + /* CURSOR_COLOR); // Bottom border */ + /* simple_renderer_solid_rect( */ + /* sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), */ + /* CURSOR_COLOR); // Left border */ + /* simple_renderer_solid_rect( */ + /* sr, */ + /* vec2f(cursor_pos.x + cursor_width - BORDER_THICKNESS, */ + /* cursor_pos.y), */ + /* vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), */ + /* CURSOR_COLOR); // Right border */ + + /* break; */ + /* } */ + + case VISUAL_LINE: + // Set the cursor width to cover the entire height of the line + CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE; + + // Adjust cursor color for visual distinction. For instance, make it + // slightly transparent + Vec4f TRANSPARENT_CURSOR_COLOR = + vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, + 0.5f); // 50% transparency + + // Render the cursor for the entire line + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), + TRANSPARENT_CURSOR_COLOR); + + // If you'd like to add additional visual cues, consider adding a + // border or some other distinguishing feature. + break; + } + simple_renderer_flush(sr); + } + + + // Render text { @@ -659,7 +898,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer //Vec4f color = vec4fs(1); // TODO match color for open and close Vec4f color = CURRENT_THEME.text; - + // Adjust for line numbers width if they are displayed if (showLineNumbers) { pos.x += lineNumberWidth; @@ -873,7 +1112,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer default: {} } - + free_glyph_atlas_render_line_sized(atlas, sr, token.text, token.text_len, &pos, color); // TODO: the max_line_len should be calculated based on what's visible on the screen right now if (max_line_len < pos.x) max_line_len = pos.x; @@ -881,206 +1120,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } - - - - - // Render cursor - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_CURSOR); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_CURSOR); - } - - { - if (showLineNumbers) { - cursor_pos.x += lineNumberWidth; - } - - // Constants and Default Settings - float CURSOR_WIDTH; - const Uint32 CURSOR_BLINK_THRESHOLD = 500; - const Uint32 CURSOR_BLINK_PERIOD = 1000; - const Uint32 t = SDL_GetTicks() - editor->last_stroke; - Vec4f CURSOR_COLOR = CURRENT_THEME.cursor; - float BORDER_THICKNESS = 3.0f; - Vec4f INNER_COLOR = vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, 0.3); - - sr->verticies_count = 0; - - // If editor has a mark, make the cursor transparent - if (editor->has_mark) { - CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) - } - - // Rendering based on mode - switch (current_mode) { - - case NORMAL: { - float cursor_width; - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - cursor_width = whitespace_width; - } - - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); - } break; - - case HELIX: { - float cursor_width; - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - cursor_width = whitespace_width; - } - - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); - } break; - - - - - case EMACS: { - float cursor_width; - CURSOR_COLOR = CURRENT_THEME.emacs_cursor; - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - cursor_width = whitespace_width; - } - - // Implement blinking for EMACS mode - if (t < CURSOR_BLINK_THRESHOLD || - (t / CURSOR_BLINK_PERIOD) % 2 != 0) { - simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); - } - } break; - - - case INSERT: - CURSOR_COLOR = CURRENT_THEME.insert_cursor; - if (BlockInsertCurosr) { - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); - CURSOR_WIDTH = next_char_pos.x - cursor_pos.x; - } else { - CURSOR_WIDTH = whitespace_width; - } - } else { - CURSOR_WIDTH = 5.0f; // Thin line - } - // blinking for INSERT mode - if (t < CURSOR_BLINK_THRESHOLD || - (t / CURSOR_BLINK_PERIOD) % 2 != 0) { - simple_renderer_solid_rect( - sr, cursor_pos, - vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); - } - break; - - case VISUAL: { - float cursor_width; - - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, 1, - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized(atlas, "a", 1, - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } - - // Draw inner rectangle - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x + BORDER_THICKNESS, - cursor_pos.y + BORDER_THICKNESS), - vec2f(cursor_width - 2 * BORDER_THICKNESS, - FREE_GLYPH_FONT_SIZE - 2 * BORDER_THICKNESS), - INNER_COLOR); - - // Draw the outline (borders) using the theme's cursor color - simple_renderer_solid_rect(sr, cursor_pos, - vec2f(cursor_width, BORDER_THICKNESS), - CURSOR_COLOR); // Top border - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x, - cursor_pos.y + FREE_GLYPH_FONT_SIZE - BORDER_THICKNESS), - vec2f(cursor_width, BORDER_THICKNESS), - CURSOR_COLOR); // Bottom border - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); // Left border - simple_renderer_solid_rect( - sr, - vec2f(cursor_pos.x + cursor_width - BORDER_THICKNESS, - cursor_pos.y), - vec2f(BORDER_THICKNESS, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); // Right border - - break; - } - - case VISUAL_LINE: - // Set the cursor width to cover the entire height of the line - CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE; - - // Adjust cursor color for visual distinction. For instance, make it - // slightly transparent - Vec4f TRANSPARENT_CURSOR_COLOR = - vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, - 0.5f); // 50% transparency - - // Render the cursor for the entire line - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), - TRANSPARENT_CURSOR_COLOR); - - // If you'd like to add additional visual cues, consider adding a - // border or some other distinguishing feature. - break; - } - simple_renderer_flush(sr); - } // Render minibuffer @@ -1105,6 +1145,20 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } + // Render fringe + { + simple_renderer_set_shader(sr, VERTEX_SHADER_FIXED, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, (Vec2f){0.0f, modelineHeight + minibufferHeight}, (Vec2f){fringeWidth, h}, CURRENT_THEME.fringe); + simple_renderer_flush(sr); + } + + // render clock + time_t t = time(NULL); + struct tm *tm = localtime(&t); + int hours = tm->tm_hour; + int minutes = tm->tm_min; + render_clock(sr, hours, minutes); + // Update camera { @@ -1119,9 +1173,15 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } else if (len <= 94) { zoom_factor = 6.0f; } else { - zoom_factor = 7.0f; - if (showLineNumbers) { - zoom_factor += 1; + zoom_factor = 5.0f; + } + + if (showLineNumbers) { + zoom_factor += 1.5f; + } + if (superDrammtic) { + if (current_mode == INSERT) { + zoom_factor -= 1; } } } @@ -1176,15 +1236,21 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer sr->camera_scale = target_scale; } else { - sr->camera_scale = 0.24f; // Set the zoom level to 0.24 + sr->camera_scale = 0.33f; // 0.24 // Static flag to ensure initial camera position is set only once static bool hasSetInitialPosition = false; // If the initial position hasn't been set, set it now if (!hasSetInitialPosition) { - sr->camera_pos.x = 3850.0f; // Set the x-position - sr->camera_pos.y = -2000.0f; // Set the initial y-position + /* sr->camera_pos.x = 2870.0f; // Set the x-position */ + + if (showLineNumbers) { + sr->camera_pos.x = 2855.0f; + } else { + sr->camera_pos.x = 2890.0f; + } + sr->camera_pos.y = -4000.0f; // Set the initial y-position hasSetInitialPosition = true; } else { // Calculate the vertical position of the cursor in world coordinates. @@ -1204,8 +1270,15 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } // Keeping the x-position fixed as per the previous logic - sr->camera_pos.x = 3850.0f; + if (showLineNumbers) { + sr->camera_pos.x = 2855.0f; + } else { + sr->camera_pos.x = 2890.0f; + } } } } } + + + diff --git a/src/render.h b/src/render.h index 2ae277bd..fa23f28f 100644 --- a/src/render.h +++ b/src/render.h @@ -10,10 +10,11 @@ extern float tokenInterpolationProgress; extern float tokenLerpSpeed; extern bool tokenLerp; +extern float lineNumberWidth; +extern bool mixSelectionColor; void update_tokens_interpolation(); - void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor); /* void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); */ @@ -36,4 +37,6 @@ typedef struct { + + #endif // RENDER_H diff --git a/src/theme.c b/src/theme.c index 0c329db9..7a106bd1 100644 --- a/src/theme.c +++ b/src/theme.c @@ -1,6 +1,7 @@ #include "theme.h" #include "common.h" #include "editor.h" +#include <stdbool.h> int currentThemeIndex = 0; int previousThemeIndex = 0; @@ -9,7 +10,7 @@ Theme themes[8]; Theme currentTheme; Theme previousTheme; -bool theme_lerp = true; +bool theme_lerp = false; float theme_lerp_speed = 0.005f; float theme_lerp_treshold = 1.0f; // 0.5 mix themes @@ -22,6 +23,15 @@ Vec4f color_lerp(Vec4f start, Vec4f end, float t) { return result; } +// Function to smoothly transition a color field in the current theme +void transition_color(Vec4f* color_field, Vec4f target_color, float transition_speed) { + if (theme_lerp) { + *color_field = color_lerp(*color_field, target_color, transition_speed); + } else { + *color_field = target_color; + } +} + void switch_to_theme(int *currentThemeIndex, int newIndex) { const int themeCount = sizeof(themes) / sizeof(themes[0]); @@ -47,7 +57,6 @@ void switch_to_theme(int *currentThemeIndex, int newIndex) { } } - void theme_next(int *currentThemeIndex) { previousTheme = currentTheme; // Capture the current interpolated state previousThemeIndex = *currentThemeIndex; @@ -55,8 +64,13 @@ void theme_next(int *currentThemeIndex) { const int themeCount = sizeof(themes) / sizeof(themes[0]); *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; + // Check if the new index is 7; if so, skip it + if (*currentThemeIndex == 7) { + *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; + } + if (!theme_lerp) { - currentTheme = themes[*currentThemeIndex]; + currentTheme = themes[*currentThemeIndex]; } interpolationProgress = 0.0f; // Restart interpolation } @@ -71,6 +85,15 @@ void theme_previous(int *currentThemeIndex) { *currentThemeIndex = themeCount - 1; } + // Check if the new index is 7; if so, skip it + if (*currentThemeIndex == 7) { + *currentThemeIndex -= 1; + if (*currentThemeIndex < 0) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = themeCount - 1; + } + } + if (!theme_lerp) { currentTheme = themes[*currentThemeIndex]; } @@ -78,6 +101,7 @@ void theme_previous(int *currentThemeIndex) { interpolationProgress = 0.0f; // Restart interpolation } + void update_theme_interpolation() { if (theme_lerp && interpolationProgress < theme_lerp_treshold) { interpolationProgress += theme_lerp_speed; @@ -138,7 +162,6 @@ void update_theme_interpolation() { currentTheme.null = color_lerp(startTheme.null, endTheme.null, interpolationProgress); currentTheme.code_block = color_lerp(startTheme.code_block, endTheme.code_block, interpolationProgress); - if (interpolationProgress >= 1.0f) { interpolationProgress = 1.0f; } @@ -152,10 +175,13 @@ void initialize_themes() { // Nature themes[0] = (Theme) { .cursor = hex_to_vec4f(0x658B5FFF), + .notext_cursor = hex_to_vec4f(0x658B5FFF), + .EOF_cursor = hex_to_vec4f(0x658B5FFF), .insert_cursor = hex_to_vec4f(0x514B8EFF), .emacs_cursor = hex_to_vec4f(0x565663FF), .text = hex_to_vec4f(0xC0ACD1FF), .background = hex_to_vec4f(0x090909FF), + .fringe = hex_to_vec4f(0x090909FF), .comment = hex_to_vec4f(0x867892FF), .hashtag = hex_to_vec4f(0x658B5FFF), .logic = hex_to_vec4f(0x658B5FFF), @@ -209,10 +235,13 @@ void initialize_themes() { // DOOM one themes[1] = (Theme) { .cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF + .notext_cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF + .EOF_cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF .insert_cursor = hex_to_vec4f(0x51AFEFFF), .emacs_cursor = hex_to_vec4f(0xECBE7BFF), //#ECBE7B .text = hex_to_vec4f(0xBBC2CFFF), .background = hex_to_vec4f(0x282C34FF), + .fringe = hex_to_vec4f(0x282C34FF), .comment = hex_to_vec4f(0x5B6268FF), .hashtag = hex_to_vec4f(0x51AFEFFF), .logic = hex_to_vec4f(0x51AFEFFF), @@ -266,10 +295,13 @@ void initialize_themes() { // Dracula themes[2] = (Theme){ .cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 + .notext_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 + .EOF_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 .insert_cursor = hex_to_vec4f(0xBD93F9FF), .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), // #F1FA8C .text = hex_to_vec4f(0xF8F8F2FF), .background = hex_to_vec4f(0x282A36FF), + .fringe = hex_to_vec4f(0x282A36FF), .comment = hex_to_vec4f(0x6272A4FF), .hashtag = hex_to_vec4f(0xBD93F9FF), .logic = hex_to_vec4f(0xFF79C6FF), // #FF79C6 @@ -324,10 +356,13 @@ void initialize_themes() { // Palenigh themes[3] = (Theme){ .cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .notext_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .EOF_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA .insert_cursor = hex_to_vec4f(0xC792EAFF), .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), // #FFCB6B .text = hex_to_vec4f(0xEEFFFFFF), .background = hex_to_vec4f(0x292D3EFF), + .fringe = hex_to_vec4f(0x292D3EFF), .comment = hex_to_vec4f(0x676E95FF), .hashtag = hex_to_vec4f(0x89DDFFFF), // #89DDFF .logic = hex_to_vec4f(0x89DDFFFF), @@ -381,10 +416,13 @@ void initialize_themes() { // DOOM city lights themes[4] = (Theme){ .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .notext_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .EOF_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 .text = hex_to_vec4f(0xA0B3C5FF), .background = hex_to_vec4f(0x1D252CFF), + .fringe = hex_to_vec4f(0x1D252CFF), .comment = hex_to_vec4f(0x41505EFF), .hashtag = hex_to_vec4f(0x5EC4FFFF), .logic = hex_to_vec4f(0x5EC4FFFF), @@ -439,10 +477,13 @@ void initialize_themes() { // DOOM molokai themes[5] = (Theme) { .cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 + .notext_cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 + .EOF_cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 .insert_cursor = hex_to_vec4f(0xFB2874FF), .emacs_cursor = hex_to_vec4f(0xE2C770FF), //#E2C770 .text = hex_to_vec4f(0xD6D6D4FF), .background = hex_to_vec4f(0x1C1E1FFF), + .fringe = hex_to_vec4f(0x1C1E1FFF), .comment = hex_to_vec4f(0x555556FF), .hashtag = hex_to_vec4f(0x9C91E4FF), //#9C91E4 .logic = hex_to_vec4f(0xFB2874FF), @@ -497,10 +538,13 @@ void initialize_themes() { // SUNSET themes[6] = (Theme){ .cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .notext_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .EOF_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 .insert_cursor = hex_to_vec4f(0xD46A7DFF), // #D46A7D .emacs_cursor = hex_to_vec4f(0x9A8B6AFF), // #9A8B6A .text = hex_to_vec4f(0xCCCCC5FF), .background = hex_to_vec4f(0x0C0D12FF), + .fringe = hex_to_vec4f(0x0C0D12FF), .comment = hex_to_vec4f(0x8E8E89FF), .hashtag = hex_to_vec4f(0xD9A173FF), .logic = hex_to_vec4f(0xD9A173FF), @@ -555,10 +599,12 @@ void initialize_themes() { // Helix themes[7] = (Theme){ .cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 + .notext_cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 + .EOF_cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 .insert_cursor = hex_to_vec4f(0x5A5977FF), .emacs_cursor = hex_to_vec4f(0x5A5977FF), .text = hex_to_vec4f(0xFFFFFFFF), - .background = hex_to_vec4f(0x3B224CFF), //#3B224C + .fringe = hex_to_vec4f(0x3B224CFF), //#3B224C .comment = hex_to_vec4f(0x697C81FF), .hashtag = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF .logic = hex_to_vec4f(0xECCDBAFF), //#ECCDBA diff --git a/src/theme.h b/src/theme.h index 83326525..369821d1 100644 --- a/src/theme.h +++ b/src/theme.h @@ -6,6 +6,8 @@ typedef struct { Vec4f cursor; + Vec4f notext_cursor; + Vec4f EOF_cursor; Vec4f insert_cursor; Vec4f emacs_cursor; Vec4f text; @@ -58,10 +60,14 @@ typedef struct { Vec4f indentation_line; Vec4f null; Vec4f code_block; + Vec4f fringe; } Theme; #define CURRENT_THEME (currentTheme) // interpolated theme +/* #define CURRENT_THEME (themes[currentThemeIndex]) */ + + extern Theme themes[]; extern Theme currentTheme; // Interpolated theme extern Theme previousTheme; @@ -81,7 +87,7 @@ void theme_previous(int *currentThemeIndex); void update_theme_interpolation(); // Function to handle interpolation Vec4f color_lerp(Vec4f start, Vec4f end, float t); // Function to interpolate colors void switch_to_theme(int *currentThemeIndex, int newIndex); - +void transition_color(Vec4f* color_field, Vec4f target_color, float transition_speed); #endif // THEME_H diff --git a/src/treesitter.c b/src/treesitter.c new file mode 100644 index 00000000..20efb65e --- /dev/null +++ b/src/treesitter.c @@ -0,0 +1,85 @@ +#include <assert.h> +#include <string.h> +#include <stdio.h> +#include <tree_sitter/api.h> +#include "theme.h" +#include "treesitter.h" + +// Declare the `tree_sitter_json` function, which is +// implemented by the `tree-sitter-json` library. +TSLanguage *tree_sitter_json(); + + +void tree(Editor *e, File_Browser *fb) { + // Create a parser. + TSParser *parser = ts_parser_new(); + + // Set the parser's language (JSON in this case). + ts_parser_set_language(parser, tree_sitter_json()); + + + // Build a syntax tree based on the editor data. + TSTree *tree = ts_parser_parse_string( + parser, + NULL, + e->data.items, + strlen(e->data.items) + ); + + // Get the root node of the syntax tree + TSNode root_node = ts_tree_root_node(tree); + + // Update theme colors based on syntax + update_theme_colors_based_on_syntax(root_node, &CURRENT_THEME); + + // Get some child nodes. + TSNode array_node = ts_node_named_child(root_node, 0); + TSNode number_node = ts_node_named_child(array_node, 0); + + /* // Check that the nodes have the expected types. */ + /* assert(strcmp(ts_node_type(root_node), "document") == 0); */ + /* assert(strcmp(ts_node_type(array_node), "array") == 0); */ + /* assert(strcmp(ts_node_type(number_node), "number") == 0); */ + + /* // Check that the nodes have the expected child counts. */ + /* assert(ts_node_child_count(root_node) == 1); */ + /* assert(ts_node_child_count(array_node) == 5); */ + /* assert(ts_node_named_child_count(array_node) == 2); */ + /* assert(ts_node_child_count(number_node) == 0); */ + + // Print the syntax tree as an S-expression. + char *string = ts_node_string(root_node); + printf("Syntax tree: %s\n", string); + + // Free all of the heap-allocated memory. + free(string); + ts_tree_delete(tree); + ts_parser_delete(parser); +} + + + + + +void update_theme_colors_based_on_syntax(TSNode node, Theme *theme) { + if (ts_node_is_null(node)) return; + + const char* node_type = ts_node_type(node); + + // Change theme colors based on node type + if (strcmp(node_type, "string") == 0) { + transition_color(&theme->string, theme->bug, 0.005f); + } else if (strcmp(node_type, "comment") == 0) { + transition_color(&theme->comment, theme->bug, 0.005f); + } else if (strcmp(node_type, "keyword") == 0) { + transition_color(&theme->logic, theme->bug, 0.005f); + } + // ... add more types as needed + + // Recursively update theme colors for child nodes + uint32_t child_count = ts_node_child_count(node); + for (uint32_t i = 0; i < child_count; ++i) { + TSNode child = ts_node_child(node, i); + update_theme_colors_based_on_syntax(child, theme); + } +} diff --git a/src/treesitter.h b/src/treesitter.h new file mode 100644 index 00000000..8aff68e8 --- /dev/null +++ b/src/treesitter.h @@ -0,0 +1,20 @@ + +#ifndef TREESITTER_H +#define TREESITTER_H + +#include "editor.h" +#include "file_browser.h" +#include "theme.h" +#include <tree_sitter/api.h> + + +void tree(Editor *e, File_Browser *fb); +void apply_syntax_highlighting(Editor *editor, TSNode node); +void highlight_node(Editor *editor, TSNode node, Vec4f color); + +void update_theme_colors_based_on_syntax(TSNode node, Theme *theme); + +#endif // TREESITTER_H + + + diff --git a/src/yasnippet.c b/src/yasnippet.c index b2b49801..698c0d1c 100644 --- a/src/yasnippet.c +++ b/src/yasnippet.c @@ -1,7 +1,6 @@ // YANSIPPET #include <dirent.h> -#include "editor.h" #include <errno.h> #include "yasnippet.h" @@ -329,3 +328,5 @@ void activate_snippet(Editor *e) { /* } */ + + diff --git a/src/yasnippet.h b/src/yasnippet.h index c3efacb1..72c3b0a2 100644 --- a/src/yasnippet.h +++ b/src/yasnippet.h @@ -1,6 +1,7 @@ #ifndef YASNIPPET_H_ #define YASNIPPET_H_ +#include "editor.h" // YASNIPPET #define MAX_SNIPPET_KEY_LENGTH 50 diff --git a/test.json b/test.json new file mode 100644 index 00000000..05f9c374 --- /dev/null +++ b/test.json @@ -0,0 +1,28 @@ +{ + "first_name": "John", + "last_name": "Smith", + "is_alive": true, + "age": 27, + "address": { + "street_address": "21 2nd Street", + "city": "New York", + "state": "NY", + "postal_code": "10021-3100" + }, + "phone_numbers": [ + { + "type": "home", + "number": "212 555-1234" + }, + { + "type": "office", + "number": "646 555-4567" + } + ], + "children": [ + "Catherine", + "Thomas", + "Trevor" + ], + "spouse": null +} diff --git a/todo.org b/todo.org index 64564c24..1389c3d2 100644 --- a/todo.org +++ b/todo.org @@ -1,74 +1,33 @@ #+title: Todo -* TODO -every function defined in the code should be callable -while the app is running emacs style M-x [] -** Modeline -show the current EvilMode, file name, info and cool icons -** Minibuffer -to get user input for anything and everything popups are for loosers -** Minimap -code minimap from scratch -** cursor -adjust syze based on overed glyph [x] -** Font -changing font more times than the total number of font you have inside =~/.config/ded/fonts= -make the text disappear [] -** Camera - when animation are false move the camera like in emacs or vim [x] - togglable emacs style camera centering [] -** Shaders -use shaders from =~/.config/ded/shaders= instead [x] -** Lexer -support multi line tokens [] -chech for strings in arrays [] -multi line comments [] -different vertex and fragment shader per token (need batch rendering) [] -different font per token [] -'' [x] -NULL [x] -syntax highlighting for : | || & && [x] -highlight links [x] -** Renderer -batch rendering [] -optional vscode hl_line [] -cchange hl_line color based on mode [] -render_trailing_whitespaces [] -line under links [] -render circles (we need to use a shader for better performance) [/] -** Addresses - showIndentationLines = 5555555792d2 i8 - currentThemeIndex = 555559015340 -** Theme -each theme should have a name not only and index +latest git committs from the dashoard -** Evil -evil-find-char-backward [] -evil-visual-line-mode [] -evil-search-backward [] -splits(maybe) [] -5k should work [] +* Editor -shift + i [x] -evil-change-line(smarter version, don't delete ";") [x] -evil-delete-backward-char [x] -evil-search-word-forward (shift + 8) [x] -shift + 5 [x] -** Bugs -opening a file with ded file.c that contain a -function definition, trow a [1] 35755 segmentation fault (core dumped) -activate_snippet on "if" take two times to activate -also editor_backspace take 3 times to delete [] -** Editor + +when selecting change the color of selected text + +pressing o on includes should spawn a new empty one and move cursor + + +when "/" is pressed in INSERT mode check if the line is empty or whitespaced, +if its either of them add 2 "// " [] + +option to add one space when typing "{" on the right of a closing ")" [] +option to add one space when typing "(" on the right of a keyword [] + +when typing "'" or '"' check if there is a "'" or '"' on the right if so, simply move the cursor to the right once [] + + render line numbers only on buffers with more than ... lerp syntax highlighting in [] -save open buffers on quit and cursor position for each of them -while ded is running keep them into memory, save them on quit to +save open buffers list on quit and cursor position for each of them +while ded is running keep them in memory, save them on quit to ~/.config/ded/buffers [] render whitespaces with error color when there is an error on a line [] @@ -77,7 +36,6 @@ drag function up/down [] dim unfocused splits the smaller they are [] -option to render whitespaces on selection [] theme creator gui where colors update in real time [] @@ -122,15 +80,15 @@ Togglable visibility of new lines[] Togglable indentation lines[] show character under cursor with the same color as the bg[] search should not be case sensitive [] -support multiple marks not just one [] render wavy or normal line under text for errors or whatever [] -most symple emacs style completition (ctrl + n in insert mode)[] use window hight and width dinamicly instead of fixed position when animations are off [] +most symple vim style completion (ctrl + n in insert mode)[/] TODO it should cycle like vim +option to render whitespaces on selection [x] switch true to false or false to true in editor_enter [x] in M-x if the input is a number go to that line in the editor if it exist [x] @@ -142,10 +100,73 @@ mismatched cut and selection [x] Drag lines up/down [x] // TODO drag selection or multiple cursors BUG behaves bad when there are only 2 lines in the editor and you swap them Editor_new_line_down and up should mantain indentation [x] yasnippet [x] TODO -when copying with y do it like vim[x] TODO BUG +when copying with y do it like vim[x] evil join on shift + j [x] Emacs mode [x] Togglable visibility of whitespaces[x] different cursor color based on the mode[x] if editor->has_mark make the cursor trasparent [x] ctrl + backspace should delete an entire word [x] +* Modeline +show the current EvilMode, file name, info and cool icons +* Minibuffer +to get user input for anything and everything popups are for loosers +* Minimap +code minimap from scratch +* cursor +adjust syze based on overed glyph [x] +* Font +changing font more times than the total number of font you have inside =~/.config/ded/fonts= +make the text disappear [] +* Camera + when animation are false move the camera like in emacs or vim [x] + togglable emacs style camera centering [] +* Shaders +use shaders from =~/.config/ded/shaders= instead [x] +* Lexer +support multi line tokens [] +chech for strings in arrays [] +multi line comments [] +different vertex and fragment shader per token (need batch rendering) [] +different font per token [] +'' [x] +NULL [x] +syntax highlighting for : | || & && [x] +highlight links [x] +* Renderer +batch rendering [] +optional vscode hl_line [] +cchange hl_line color based on mode [] +render_trailing_whitespaces [] +line under links [] +render circles (we need to use a shader for better performance) [/] +* Addresses + showIndentationLines = 5555555792d2 i8 + currentThemeIndex = 555559015340 +* Theme +each theme should have a name not only and index +* Evil +evil-find-char-backward [] +evil-visual-line-mode [] +evil-search-backward [] +splits(maybe) [] +5k should work [] + +shift + i [x] +evil-change-line(smarter version, don't delete ";") [x] +evil-delete-backward-char [x] +evil-search-word-forward (shift + 8) [x] +shift + 5 [x] +* Bugs +opening a file with ded file.c that contain a +function definition, trow a [1] 35755 segmentation fault (core dumped) + +activate_snippet on "if" take two times to activate +also editor_backspace take 3 times to delete [] +* Ivy +ivy copy headers [] +ivy find header [] +ivy find-lib [] +* LSP +fuzzy find all the functions from the project root + From e753609a241b36fda1be46149a7f532b958a1203 Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Thu, 15 Feb 2024 01:29:28 +0100 Subject: [PATCH 63/74] removed caches --- .../@usr@include@GL@gl.h | 2103 -- .../@usr@include@GL@gl.h.blob | Bin 12143 -> 0 bytes .../@usr@include@GL@glew.h | 26427 ---------------- .../@usr@include@GL@glew.h.blob | Bin 2269133 -> 0 bytes .../@usr@include@GL@glu.h | 349 - .../@usr@include@GL@glu.h.blob | Bin 58386 -> 0 bytes .../@usr@include@SDL2@SDL.h | 233 - .../@usr@include@SDL2@SDL.h.blob | Bin 19520 -> 0 bytes .../@usr@include@SDL2@SDL_assert.h | 322 - .../@usr@include@SDL2@SDL_assert.h.blob | Bin 20150 -> 0 bytes .../@usr@include@SDL2@SDL_atomic.h | 414 - .../@usr@include@SDL2@SDL_atomic.h.blob | Bin 21421 -> 0 bytes .../@usr@include@SDL2@SDL_audio.h | 1500 - .../@usr@include@SDL2@SDL_audio.h.blob | Bin 74377 -> 0 bytes .../@usr@include@SDL2@SDL_blendmode.h | 198 - .../@usr@include@SDL2@SDL_blendmode.h.blob | Bin 20269 -> 0 bytes .../@usr@include@SDL2@SDL_clipboard.h | 141 - .../@usr@include@SDL2@SDL_clipboard.h.blob | Bin 15383 -> 0 bytes .../@usr@include@SDL2@SDL_config.h | 570 - .../@usr@include@SDL2@SDL_config.h.blob | Bin 29173 -> 0 bytes .../@usr@include@SDL2@SDL_cpuinfo.h | 594 - .../@usr@include@SDL2@SDL_cpuinfo.h.blob | Bin 25766 -> 0 bytes .../@usr@include@SDL2@SDL_endian.h | 348 - .../@usr@include@SDL2@SDL_endian.h.blob | Bin 15422 -> 0 bytes .../@usr@include@SDL2@SDL_error.h | 163 - .../@usr@include@SDL2@SDL_error.h.blob | Bin 16647 -> 0 bytes .../@usr@include@SDL2@SDL_events.h | 1166 - .../@usr@include@SDL2@SDL_events.h.blob | Bin 84151 -> 0 bytes .../@usr@include@SDL2@SDL_filesystem.h | 149 - .../@usr@include@SDL2@SDL_filesystem.h.blob | Bin 16370 -> 0 bytes .../@usr@include@SDL2@SDL_gamecontroller.h | 1074 - ...usr@include@SDL2@SDL_gamecontroller.h.blob | Bin 64711 -> 0 bytes .../@usr@include@SDL2@SDL_gesture.h | 117 - .../@usr@include@SDL2@SDL_gesture.h.blob | Bin 15105 -> 0 bytes .../@usr@include@SDL2@SDL_guid.h | 100 - .../@usr@include@SDL2@SDL_guid.h.blob | Bin 15215 -> 0 bytes .../@usr@include@SDL2@SDL_haptic.h | 1341 - .../@usr@include@SDL2@SDL_haptic.h.blob | Bin 66020 -> 0 bytes .../@usr@include@SDL2@SDL_hidapi.h | 451 - .../@usr@include@SDL2@SDL_hidapi.h.blob | Bin 31535 -> 0 bytes .../@usr@include@SDL2@SDL_hints.h | 2624 -- .../@usr@include@SDL2@SDL_hints.h.blob | Bin 44245 -> 0 bytes .../@usr@include@SDL2@SDL_joystick.h | 1069 - .../@usr@include@SDL2@SDL_joystick.h.blob | Bin 60301 -> 0 bytes .../@usr@include@SDL2@SDL_keyboard.h | 353 - .../@usr@include@SDL2@SDL_keyboard.h.blob | Bin 24061 -> 0 bytes .../@usr@include@SDL2@SDL_keycode.h | 358 - .../@usr@include@SDL2@SDL_keycode.h.blob | Bin 49862 -> 0 bytes .../@usr@include@SDL2@SDL_loadso.h | 115 - .../@usr@include@SDL2@SDL_loadso.h.blob | Bin 14265 -> 0 bytes .../@usr@include@SDL2@SDL_locale.h | 103 - .../@usr@include@SDL2@SDL_locale.h.blob | Bin 14796 -> 0 bytes .../@usr@include@SDL2@SDL_log.h | 404 - .../@usr@include@SDL2@SDL_log.h.blob | Bin 26012 -> 0 bytes .../@usr@include@SDL2@SDL_main.h | 282 - .../@usr@include@SDL2@SDL_main.h.blob | Bin 13254 -> 0 bytes .../@usr@include@SDL2@SDL_messagebox.h | 193 - .../@usr@include@SDL2@SDL_messagebox.h.blob | Bin 20662 -> 0 bytes .../@usr@include@SDL2@SDL_metal.h | 113 - .../@usr@include@SDL2@SDL_metal.h.blob | Bin 14725 -> 0 bytes .../@usr@include@SDL2@SDL_misc.h | 79 - .../@usr@include@SDL2@SDL_misc.h.blob | Bin 13785 -> 0 bytes .../@usr@include@SDL2@SDL_mouse.h | 464 - .../@usr@include@SDL2@SDL_mouse.h.blob | Bin 31165 -> 0 bytes .../@usr@include@SDL2@SDL_mutex.h | 545 - .../@usr@include@SDL2@SDL_mutex.h.blob | Bin 29764 -> 0 bytes .../@usr@include@SDL2@SDL_opengl.h | 2132 -- .../@usr@include@SDL2@SDL_opengl.h.blob | Bin 12231 -> 0 bytes .../@usr@include@SDL2@SDL_pixels.h | 644 - .../@usr@include@SDL2@SDL_pixels.h.blob | Bin 47940 -> 0 bytes .../@usr@include@SDL2@SDL_platform.h | 261 - .../@usr@include@SDL2@SDL_platform.h.blob | Bin 12926 -> 0 bytes .../@usr@include@SDL2@SDL_power.h | 87 - .../@usr@include@SDL2@SDL_power.h.blob | Bin 14615 -> 0 bytes .../@usr@include@SDL2@SDL_quit.h | 58 - .../@usr@include@SDL2@SDL_quit.h.blob | Bin 12421 -> 0 bytes .../@usr@include@SDL2@SDL_rect.h | 376 - .../@usr@include@SDL2@SDL_rect.h.blob | Bin 28601 -> 0 bytes .../@usr@include@SDL2@SDL_render.h | 1924 -- .../@usr@include@SDL2@SDL_render.h.blob | Bin 101643 -> 0 bytes .../@usr@include@SDL2@SDL_rwops.h | 841 - .../@usr@include@SDL2@SDL_rwops.h.blob | Bin 42441 -> 0 bytes .../@usr@include@SDL2@SDL_scancode.h | 438 - .../@usr@include@SDL2@SDL_scancode.h.blob | Bin 38468 -> 0 bytes .../@usr@include@SDL2@SDL_sensor.h | 322 - .../@usr@include@SDL2@SDL_sensor.h.blob | Bin 22017 -> 0 bytes .../@usr@include@SDL2@SDL_shape.h | 155 - .../@usr@include@SDL2@SDL_shape.h.blob | Bin 19648 -> 0 bytes .../@usr@include@SDL2@SDL_stdinc.h | 838 - .../@usr@include@SDL2@SDL_stdinc.h.blob | Bin 59883 -> 0 bytes .../@usr@include@SDL2@SDL_surface.h | 997 - .../@usr@include@SDL2@SDL_surface.h.blob | Bin 55026 -> 0 bytes .../@usr@include@SDL2@SDL_system.h | 623 - .../@usr@include@SDL2@SDL_system.h.blob | Bin 15164 -> 0 bytes .../@usr@include@SDL2@SDL_thread.h | 464 - .../@usr@include@SDL2@SDL_thread.h.blob | Bin 25694 -> 0 bytes .../@usr@include@SDL2@SDL_timer.h | 222 - .../@usr@include@SDL2@SDL_timer.h.blob | Bin 18012 -> 0 bytes .../@usr@include@SDL2@SDL_touch.h | 150 - .../@usr@include@SDL2@SDL_touch.h.blob | Bin 16720 -> 0 bytes .../@usr@include@SDL2@SDL_version.h | 204 - .../@usr@include@SDL2@SDL_version.h.blob | Bin 17022 -> 0 bytes .../@usr@include@SDL2@SDL_video.h | 2178 -- .../@usr@include@SDL2@SDL_video.h.blob | Bin 109320 -> 0 bytes .../@usr@include@SDL2@begin_code.h | 187 - .../@usr@include@SDL2@begin_code.h.blob | Bin 13291 -> 0 bytes .../@usr@include@SDL2@close_code.h | 40 - .../@usr@include@SDL2@close_code.h.blob | Bin 12163 -> 0 bytes .../@usr@include@alloca.h | 40 - .../@usr@include@alloca.h.blob | Bin 12771 -> 0 bytes .../@usr@include@asm-generic@errno-base.h | 40 - ...@usr@include@asm-generic@errno-base.h.blob | Bin 14090 -> 0 bytes .../@usr@include@asm-generic@errno.h | 123 - .../@usr@include@asm-generic@errno.h.blob | Bin 18204 -> 0 bytes .../@usr@include@asm@errno.h | 1 - .../@usr@include@asm@errno.h.blob | Bin 12167 -> 0 bytes .../@usr@include@assert.h | 156 - .../@usr@include@assert.h.blob | Bin 14071 -> 0 bytes .../@usr@include@bits@atomic_wide_counter.h | 35 - ...sr@include@bits@atomic_wide_counter.h.blob | Bin 13145 -> 0 bytes .../@usr@include@bits@byteswap.h | 79 - .../@usr@include@bits@byteswap.h.blob | Bin 13583 -> 0 bytes .../@usr@include@bits@confname.h | 681 - .../@usr@include@bits@confname.h.blob | Bin 69157 -> 0 bytes .../@usr@include@bits@cpu-set.h | 124 - .../@usr@include@bits@cpu-set.h.blob | Bin 14888 -> 0 bytes .../@usr@include@bits@dirent.h | 59 - .../@usr@include@bits@dirent.h.blob | Bin 13195 -> 0 bytes .../@usr@include@bits@dirent_ext.h | 33 - .../@usr@include@bits@dirent_ext.h.blob | Bin 12191 -> 0 bytes .../@usr@include@bits@endian.h | 49 - .../@usr@include@bits@endian.h.blob | Bin 12660 -> 0 bytes .../@usr@include@bits@endianness.h | 11 - .../@usr@include@bits@endianness.h.blob | Bin 12317 -> 0 bytes .../@usr@include@bits@environments.h | 105 - .../@usr@include@bits@environments.h.blob | Bin 13257 -> 0 bytes .../@usr@include@bits@errno.h | 53 - .../@usr@include@bits@errno.h.blob | Bin 12318 -> 0 bytes .../@usr@include@bits@floatn-common.h | 329 - .../@usr@include@bits@floatn-common.h.blob | Bin 16450 -> 0 bytes .../@usr@include@bits@floatn.h | 121 - .../@usr@include@bits@floatn.h.blob | Bin 12673 -> 0 bytes .../@usr@include@bits@flt-eval-method.h | 33 - .../@usr@include@bits@flt-eval-method.h.blob | Bin 12274 -> 0 bytes .../@usr@include@bits@fp-fast.h | 39 - .../@usr@include@bits@fp-fast.h.blob | Bin 12146 -> 0 bytes .../@usr@include@bits@fp-logb.h | 24 - .../@usr@include@bits@fp-logb.h.blob | Bin 12290 -> 0 bytes .../@usr@include@bits@getopt_core.h | 96 - .../@usr@include@bits@getopt_core.h.blob | Bin 14914 -> 0 bytes .../@usr@include@bits@getopt_posix.h | 51 - .../@usr@include@bits@getopt_posix.h.blob | Bin 12294 -> 0 bytes .../@usr@include@bits@libc-header-start.h | 110 - ...@usr@include@bits@libc-header-start.h.blob | Bin 12959 -> 0 bytes .../@usr@include@bits@libm-simd-decl-stubs.h | 332 - ...r@include@bits@libm-simd-decl-stubs.h.blob | Bin 33821 -> 0 bytes .../@usr@include@bits@local_lim.h | 99 - .../@usr@include@bits@local_lim.h.blob | Bin 13619 -> 0 bytes .../@usr@include@bits@long-double.h | 21 - .../@usr@include@bits@long-double.h.blob | Bin 12238 -> 0 bytes .../@usr@include@bits@math-vector.h | 147 - .../@usr@include@bits@math-vector.h.blob | Bin 12176 -> 0 bytes ...@include@bits@mathcalls-helper-functions.h | 45 - ...ude@bits@mathcalls-helper-functions.h.blob | Bin 13421 -> 0 bytes .../@usr@include@bits@mathcalls.h | 436 - .../@usr@include@bits@mathcalls.h.blob | Bin 32352 -> 0 bytes .../@usr@include@bits@posix1_lim.h | 183 - .../@usr@include@bits@posix1_lim.h.blob | Bin 14742 -> 0 bytes .../@usr@include@bits@posix2_lim.h | 90 - .../@usr@include@bits@posix2_lim.h.blob | Bin 13698 -> 0 bytes .../@usr@include@bits@posix_opt.h | 194 - .../@usr@include@bits@posix_opt.h.blob | Bin 17435 -> 0 bytes ...r@include@bits@pthread_stack_min-dynamic.h | 31 - ...lude@bits@pthread_stack_min-dynamic.h.blob | Bin 12155 -> 0 bytes .../@usr@include@bits@pthread_stack_min.h | 20 - ...@usr@include@bits@pthread_stack_min.h.blob | Bin 12200 -> 0 bytes .../@usr@include@bits@pthreadtypes-arch.h | 55 - ...@usr@include@bits@pthreadtypes-arch.h.blob | Bin 13279 -> 0 bytes .../@usr@include@bits@pthreadtypes.h | 121 - .../@usr@include@bits@pthreadtypes.h.blob | Bin 17259 -> 0 bytes .../@usr@include@bits@sched.h | 104 - .../@usr@include@bits@sched.h.blob | Bin 12505 -> 0 bytes .../@usr@include@bits@select.h | 37 - .../@usr@include@bits@select.h.blob | Bin 12560 -> 0 bytes .../@usr@include@bits@setjmp.h | 40 - .../@usr@include@bits@setjmp.h.blob | Bin 12330 -> 0 bytes .../@usr@include@bits@sigaction.h | 83 - .../@usr@include@bits@sigaction.h.blob | Bin 14564 -> 0 bytes .../@usr@include@bits@sigcontext.h | 196 - .../@usr@include@bits@sigcontext.h.blob | Bin 18704 -> 0 bytes .../@usr@include@bits@sigevent-consts.h | 41 - .../@usr@include@bits@sigevent-consts.h.blob | Bin 12952 -> 0 bytes .../@usr@include@bits@siginfo-arch.h | 17 - .../@usr@include@bits@siginfo-arch.h.blob | Bin 12239 -> 0 bytes .../@usr@include@bits@siginfo-consts.h | 216 - .../@usr@include@bits@siginfo-consts.h.blob | Bin 21380 -> 0 bytes .../@usr@include@bits@signal_ext.h | 31 - .../@usr@include@bits@signal_ext.h.blob | Bin 12135 -> 0 bytes .../@usr@include@bits@signum-arch.h | 64 - .../@usr@include@bits@signum-arch.h.blob | Bin 13618 -> 0 bytes .../@usr@include@bits@signum-generic.h | 81 - .../@usr@include@bits@signum-generic.h.blob | Bin 13410 -> 0 bytes .../@usr@include@bits@sigstack.h | 32 - .../@usr@include@bits@sigstack.h.blob | Bin 12335 -> 0 bytes .../@usr@include@bits@sigstksz.h | 33 - .../@usr@include@bits@sigstksz.h.blob | Bin 12137 -> 0 bytes .../@usr@include@bits@sigthread.h | 44 - .../@usr@include@bits@sigthread.h.blob | Bin 13257 -> 0 bytes .../@usr@include@bits@ss_flags.h | 35 - .../@usr@include@bits@ss_flags.h.blob | Bin 12532 -> 0 bytes .../@usr@include@bits@stdint-intn.h | 29 - .../@usr@include@bits@stdint-intn.h.blob | Bin 12737 -> 0 bytes .../@usr@include@bits@stdint-uintn.h | 29 - .../@usr@include@bits@stdint-uintn.h.blob | Bin 12779 -> 0 bytes .../@usr@include@bits@stdio_lim.h | 28 - .../@usr@include@bits@stdio_lim.h.blob | Bin 12277 -> 0 bytes .../@usr@include@bits@stdlib-float.h | 29 - .../@usr@include@bits@stdlib-float.h.blob | Bin 12133 -> 0 bytes .../@usr@include@bits@struct_mutex.h | 63 - .../@usr@include@bits@struct_mutex.h.blob | Bin 13527 -> 0 bytes .../@usr@include@bits@struct_rwlock.h | 65 - .../@usr@include@bits@struct_rwlock.h.blob | Bin 13939 -> 0 bytes .../@usr@include@bits@thread-shared-types.h | 115 - ...sr@include@bits@thread-shared-types.h.blob | Bin 14595 -> 0 bytes .../@usr@include@bits@time.h | 93 - .../@usr@include@bits@time.h.blob | Bin 13272 -> 0 bytes .../@usr@include@bits@time64.h | 36 - .../@usr@include@bits@time64.h.blob | Bin 12322 -> 0 bytes .../@usr@include@bits@timesize.h | 27 - .../@usr@include@bits@timesize.h.blob | Bin 12234 -> 0 bytes .../@usr@include@bits@types.h | 228 - .../@usr@include@bits@types.h.blob | Bin 19604 -> 0 bytes .../@usr@include@bits@types@FILE.h | 9 - .../@usr@include@bits@types@FILE.h.blob | Bin 12395 -> 0 bytes .../@usr@include@bits@types@__FILE.h | 7 - .../@usr@include@bits@types@__FILE.h.blob | Bin 12332 -> 0 bytes .../@usr@include@bits@types@__fpos64_t.h | 16 - .../@usr@include@bits@types@__fpos64_t.h.blob | Bin 13123 -> 0 bytes .../@usr@include@bits@types@__fpos_t.h | 16 - .../@usr@include@bits@types@__fpos_t.h.blob | Bin 13069 -> 0 bytes .../@usr@include@bits@types@__locale_t.h | 43 - .../@usr@include@bits@types@__locale_t.h.blob | Bin 13253 -> 0 bytes .../@usr@include@bits@types@__mbstate_t.h | 23 - ...@usr@include@bits@types@__mbstate_t.h.blob | Bin 12911 -> 0 bytes .../@usr@include@bits@types@__sigset_t.h | 10 - .../@usr@include@bits@types@__sigset_t.h.blob | Bin 12539 -> 0 bytes .../@usr@include@bits@types@__sigval_t.h | 41 - .../@usr@include@bits@types@__sigval_t.h.blob | Bin 12499 -> 0 bytes .../@usr@include@bits@types@clock_t.h | 9 - .../@usr@include@bits@types@clock_t.h.blob | Bin 12372 -> 0 bytes .../@usr@include@bits@types@clockid_t.h | 9 - .../@usr@include@bits@types@clockid_t.h.blob | Bin 12402 -> 0 bytes ...include@bits@types@cookie_io_functions_t.h | 63 - ...de@bits@types@cookie_io_functions_t.h.blob | Bin 14764 -> 0 bytes .../@usr@include@bits@types@locale_t.h | 26 - .../@usr@include@bits@types@locale_t.h.blob | Bin 12429 -> 0 bytes .../@usr@include@bits@types@mbstate_t.h | 8 - .../@usr@include@bits@types@mbstate_t.h.blob | Bin 12421 -> 0 bytes .../@usr@include@bits@types@sig_atomic_t.h | 10 - ...usr@include@bits@types@sig_atomic_t.h.blob | Bin 12497 -> 0 bytes .../@usr@include@bits@types@sigevent_t.h | 48 - .../@usr@include@bits@types@sigevent_t.h.blob | Bin 14365 -> 0 bytes .../@usr@include@bits@types@siginfo_t.h | 151 - .../@usr@include@bits@types@siginfo_t.h.blob | Bin 20823 -> 0 bytes .../@usr@include@bits@types@sigset_t.h | 9 - .../@usr@include@bits@types@sigset_t.h.blob | Bin 12472 -> 0 bytes .../@usr@include@bits@types@sigval_t.h | 18 - .../@usr@include@bits@types@sigval_t.h.blob | Bin 12412 -> 0 bytes .../@usr@include@bits@types@stack_t.h | 33 - .../@usr@include@bits@types@stack_t.h.blob | Bin 12838 -> 0 bytes .../@usr@include@bits@types@struct_FILE.h | 120 - ...@usr@include@bits@types@struct_FILE.h.blob | Bin 16640 -> 0 bytes ...@include@bits@types@struct___jmp_buf_tag.h | 37 - ...ude@bits@types@struct___jmp_buf_tag.h.blob | Bin 12902 -> 0 bytes ...usr@include@bits@types@struct_itimerspec.h | 14 - ...nclude@bits@types@struct_itimerspec.h.blob | Bin 12635 -> 0 bytes ...sr@include@bits@types@struct_sched_param.h | 28 - ...clude@bits@types@struct_sched_param.h.blob | Bin 12429 -> 0 bytes .../@usr@include@bits@types@struct_sigstack.h | 29 - ...@include@bits@types@struct_sigstack.h.blob | Bin 12513 -> 0 bytes .../@usr@include@bits@types@struct_timespec.h | 33 - ...@include@bits@types@struct_timespec.h.blob | Bin 12862 -> 0 bytes .../@usr@include@bits@types@struct_timeval.h | 18 - ...r@include@bits@types@struct_timeval.h.blob | Bin 12678 -> 0 bytes .../@usr@include@bits@types@struct_tm.h | 28 - .../@usr@include@bits@types@struct_tm.h.blob | Bin 13354 -> 0 bytes .../@usr@include@bits@types@time_t.h | 13 - .../@usr@include@bits@types@time_t.h.blob | Bin 12352 -> 0 bytes .../@usr@include@bits@types@timer_t.h | 9 - .../@usr@include@bits@types@timer_t.h.blob | Bin 12389 -> 0 bytes .../@usr@include@bits@types@wint_t.h | 23 - .../@usr@include@bits@types@wint_t.h.blob | Bin 12351 -> 0 bytes .../@usr@include@bits@typesizes.h | 106 - .../@usr@include@bits@typesizes.h.blob | Bin 16140 -> 0 bytes .../@usr@include@bits@uintn-identity.h | 50 - .../@usr@include@bits@uintn-identity.h.blob | Bin 13149 -> 0 bytes .../@usr@include@bits@unistd_ext.h | 50 - .../@usr@include@bits@unistd_ext.h.blob | Bin 12135 -> 0 bytes .../@usr@include@bits@waitflags.h | 39 - .../@usr@include@bits@waitflags.h.blob | Bin 12698 -> 0 bytes .../@usr@include@bits@waitstatus.h | 59 - .../@usr@include@bits@waitstatus.h.blob | Bin 13258 -> 0 bytes .../@usr@include@bits@wchar.h | 49 - .../@usr@include@bits@wchar.h.blob | Bin 12365 -> 0 bytes .../@usr@include@bits@wordsize.h | 17 - .../@usr@include@bits@wordsize.h.blob | Bin 12374 -> 0 bytes .../@usr@include@ctype.h | 329 - .../@usr@include@ctype.h.blob | Bin 24312 -> 0 bytes .../@usr@include@dirent.h | 408 - .../@usr@include@dirent.h.blob | Bin 18651 -> 0 bytes .../@usr@include@endian.h | 72 - .../@usr@include@endian.h.blob | Bin 13582 -> 0 bytes .../@usr@include@errno.h | 55 - .../@usr@include@errno.h.blob | Bin 12553 -> 0 bytes .../@usr@include@features-time64.h | 37 - .../@usr@include@features-time64.h.blob | Bin 12191 -> 0 bytes .../@usr@include@features.h | 530 - .../@usr@include@features.h.blob | Bin 15333 -> 0 bytes .../@usr@include@gnu@stubs-64.h | 17 - .../@usr@include@gnu@stubs-64.h.blob | Bin 12690 -> 0 bytes .../@usr@include@gnu@stubs.h | 14 - .../@usr@include@gnu@stubs.h.blob | Bin 12170 -> 0 bytes .../@usr@include@inttypes.h | 417 - .../@usr@include@inttypes.h.blob | Bin 26817 -> 0 bytes .../@usr@include@libgen.h | 39 - .../@usr@include@libgen.h.blob | Bin 12961 -> 0 bytes .../@usr@include@limits.h | 204 - .../@usr@include@limits.h.blob | Bin 12826 -> 0 bytes .../@usr@include@linux@errno.h | 1 - .../@usr@include@linux@errno.h.blob | Bin 12157 -> 0 bytes .../@usr@include@linux@limits.h | 21 - .../@usr@include@linux@limits.h.blob | Bin 13100 -> 0 bytes .../@usr@include@math.h | 1475 - .../@usr@include@math.h.blob | Bin 23189 -> 0 bytes .../@usr@include@pthread.h | 1348 - .../@usr@include@pthread.h.blob | Bin 61425 -> 0 bytes .../@usr@include@sched.h | 140 - .../@usr@include@sched.h.blob | Bin 15020 -> 0 bytes .../@usr@include@signal.h | 395 - .../@usr@include@signal.h.blob | Bin 23855 -> 0 bytes .../@usr@include@stdc-predef.h | 64 - .../@usr@include@stdc-predef.h.blob | Bin 12652 -> 0 bytes .../@usr@include@stdint.h | 319 - .../@usr@include@stdint.h.blob | Bin 20225 -> 0 bytes .../@usr@include@stdio.h | 969 - .../@usr@include@stdio.h.blob | Bin 49141 -> 0 bytes .../@usr@include@stdlib.h | 1169 - .../@usr@include@stdlib.h.blob | Bin 53214 -> 0 bytes .../@usr@include@string.h | 554 - .../@usr@include@string.h.blob | Bin 29636 -> 0 bytes .../@usr@include@strings.h | 148 - .../@usr@include@strings.h.blob | Bin 16184 -> 0 bytes .../@usr@include@sys@cdefs.h | 723 - .../@usr@include@sys@cdefs.h.blob | Bin 21652 -> 0 bytes .../@usr@include@sys@select.h | 155 - .../@usr@include@sys@select.h.blob | Bin 15822 -> 0 bytes .../@usr@include@sys@types.h | 232 - .../@usr@include@sys@types.h.blob | Bin 18237 -> 0 bytes .../@usr@include@sys@ucontext.h | 262 - .../@usr@include@sys@ucontext.h.blob | Bin 16457 -> 0 bytes .../@usr@include@time.h | 455 - .../@usr@include@time.h.blob | Bin 24637 -> 0 bytes .../@usr@include@tree_sitter@api.h | 982 - .../@usr@include@tree_sitter@api.h.blob | Bin 58835 -> 0 bytes .../@usr@include@unistd.h | 1222 - .../@usr@include@unistd.h.blob | Bin 52437 -> 0 bytes .../@usr@include@wchar.h | 1075 - .../@usr@include@wchar.h.blob | Bin 48556 -> 0 bytes ...ib@clang@16@include@__stddef_max_align_t.h | 27 - ...ang@16@include@__stddef_max_align_t.h.blob | Bin 12694 -> 0 bytes ...usr@lib@clang@16@include@__wmmintrin_aes.h | 140 - ...ib@clang@16@include@__wmmintrin_aes.h.blob | Bin 16754 -> 0 bytes ...@lib@clang@16@include@__wmmintrin_pclmul.h | 48 - ...clang@16@include@__wmmintrin_pclmul.h.blob | Bin 12424 -> 0 bytes .../@usr@lib@clang@16@include@adxintrin.h | 72 - ...@usr@lib@clang@16@include@adxintrin.h.blob | Bin 15267 -> 0 bytes .../@usr@lib@clang@16@include@amxfp16intrin.h | 58 - ...@lib@clang@16@include@amxfp16intrin.h.blob | Bin 12346 -> 0 bytes .../@usr@lib@clang@16@include@amxintrin.h | 524 - ...@usr@lib@clang@16@include@amxintrin.h.blob | Bin 34808 -> 0 bytes .../@usr@lib@clang@16@include@avx2intrin.h | 1148 - ...usr@lib@clang@16@include@avx2intrin.h.blob | Bin 73308 -> 0 bytes ...sr@lib@clang@16@include@avx512bf16intrin.h | 282 - ...b@clang@16@include@avx512bf16intrin.h.blob | Bin 24894 -> 0 bytes ...@lib@clang@16@include@avx512bitalgintrin.h | 83 - ...clang@16@include@avx512bitalgintrin.h.blob | Bin 15570 -> 0 bytes ...@usr@lib@clang@16@include@avx512bwintrin.h | 2024 -- ...lib@clang@16@include@avx512bwintrin.h.blob | Bin 140628 -> 0 bytes ...@usr@lib@clang@16@include@avx512cdintrin.h | 123 - ...lib@clang@16@include@avx512cdintrin.h.blob | Bin 17407 -> 0 bytes ...@usr@lib@clang@16@include@avx512dqintrin.h | 1377 - ...lib@clang@16@include@avx512dqintrin.h.blob | Bin 90143 -> 0 bytes ...@usr@lib@clang@16@include@avx512erintrin.h | 271 - ...lib@clang@16@include@avx512erintrin.h.blob | Bin 26837 -> 0 bytes .../@usr@lib@clang@16@include@avx512fintrin.h | 9765 ------ ...@lib@clang@16@include@avx512fintrin.h.blob | Bin 584649 -> 0 bytes ...sr@lib@clang@16@include@avx512fp16intrin.h | 3346 -- ...b@clang@16@include@avx512fp16intrin.h.blob | Bin 241400 -> 0 bytes ...sr@lib@clang@16@include@avx512ifmaintrin.h | 68 - ...b@clang@16@include@avx512ifmaintrin.h.blob | Bin 15666 -> 0 bytes ...@lib@clang@16@include@avx512ifmavlintrin.h | 105 - ...clang@16@include@avx512ifmavlintrin.h.blob | Bin 18786 -> 0 bytes ...@usr@lib@clang@16@include@avx512pfintrin.h | 97 - ...lib@clang@16@include@avx512pfintrin.h.blob | Bin 17219 -> 0 bytes ...r@lib@clang@16@include@avx512vbmi2intrin.h | 357 - ...@clang@16@include@avx512vbmi2intrin.h.blob | Bin 33314 -> 0 bytes ...sr@lib@clang@16@include@avx512vbmiintrin.h | 105 - ...b@clang@16@include@avx512vbmiintrin.h.blob | Bin 17322 -> 0 bytes ...@lib@clang@16@include@avx512vbmivlintrin.h | 188 - ...clang@16@include@avx512vbmivlintrin.h.blob | Bin 22448 -> 0 bytes ...@lib@clang@16@include@avx512vlbf16intrin.h | 515 - ...clang@16@include@avx512vlbf16intrin.h.blob | Bin 36258 -> 0 bytes ...ib@clang@16@include@avx512vlbitalgintrin.h | 145 - ...ang@16@include@avx512vlbitalgintrin.h.blob | Bin 18854 -> 0 bytes ...sr@lib@clang@16@include@avx512vlbwintrin.h | 3161 -- ...b@clang@16@include@avx512vlbwintrin.h.blob | Bin 235651 -> 0 bytes ...sr@lib@clang@16@include@avx512vlcdintrin.h | 225 - ...b@clang@16@include@avx512vlcdintrin.h.blob | Bin 22432 -> 0 bytes ...sr@lib@clang@16@include@avx512vldqintrin.h | 1167 - ...b@clang@16@include@avx512vldqintrin.h.blob | Bin 83998 -> 0 bytes ...@lib@clang@16@include@avx512vlfp16intrin.h | 2071 -- ...clang@16@include@avx512vlfp16intrin.h.blob | Bin 161564 -> 0 bytes ...@usr@lib@clang@16@include@avx512vlintrin.h | 8431 ----- ...lib@clang@16@include@avx512vlintrin.h.blob | Bin 561510 -> 0 bytes ...lib@clang@16@include@avx512vlvbmi2intrin.h | 689 - ...lang@16@include@avx512vlvbmi2intrin.h.blob | Bin 55023 -> 0 bytes ...@lib@clang@16@include@avx512vlvnniintrin.h | 304 - ...clang@16@include@avx512vlvnniintrin.h.blob | Bin 24166 -> 0 bytes ...ng@16@include@avx512vlvp2intersectintrin.h | 121 - ...@include@avx512vlvp2intersectintrin.h.blob | Bin 16942 -> 0 bytes ...sr@lib@clang@16@include@avx512vnniintrin.h | 115 - ...b@clang@16@include@avx512vnniintrin.h.blob | Bin 18600 -> 0 bytes ...lang@16@include@avx512vp2intersectintrin.h | 77 - ...16@include@avx512vp2intersectintrin.h.blob | Bin 14651 -> 0 bytes ...b@clang@16@include@avx512vpopcntdqintrin.h | 54 - ...ng@16@include@avx512vpopcntdqintrin.h.blob | Bin 14901 -> 0 bytes ...clang@16@include@avx512vpopcntdqvlintrin.h | 91 - ...@16@include@avx512vpopcntdqvlintrin.h.blob | Bin 17361 -> 0 bytes .../@usr@lib@clang@16@include@avxifmaintrin.h | 177 - ...@lib@clang@16@include@avxifmaintrin.h.blob | Bin 18044 -> 0 bytes .../@usr@lib@clang@16@include@avxintrin.h | 5095 --- ...@usr@lib@clang@16@include@avxintrin.h.blob | Bin 184697 -> 0 bytes ...@lib@clang@16@include@avxneconvertintrin.h | 484 - ...clang@16@include@avxneconvertintrin.h.blob | Bin 26503 -> 0 bytes ...r@lib@clang@16@include@avxvnniint8intrin.h | 471 - ...@clang@16@include@avxvnniint8intrin.h.blob | Bin 31235 -> 0 bytes .../@usr@lib@clang@16@include@avxvnniintrin.h | 225 - ...@lib@clang@16@include@avxvnniintrin.h.blob | Bin 22225 -> 0 bytes .../@usr@lib@clang@16@include@bmi2intrin.h | 81 - ...usr@lib@clang@16@include@bmi2intrin.h.blob | Bin 14586 -> 0 bytes .../@usr@lib@clang@16@include@bmiintrin.h | 431 - ...@usr@lib@clang@16@include@bmiintrin.h.blob | Bin 27157 -> 0 bytes .../@usr@lib@clang@16@include@cetintrin.h | 115 - ...@usr@lib@clang@16@include@cetintrin.h.blob | Bin 15061 -> 0 bytes ...@usr@lib@clang@16@include@cldemoteintrin.h | 36 - ...lib@clang@16@include@cldemoteintrin.h.blob | Bin 12846 -> 0 bytes ...sr@lib@clang@16@include@clflushoptintrin.h | 27 - ...b@clang@16@include@clflushoptintrin.h.blob | Bin 12509 -> 0 bytes .../@usr@lib@clang@16@include@clwbintrin.h | 38 - ...usr@lib@clang@16@include@clwbintrin.h.blob | Bin 12854 -> 0 bytes ...usr@lib@clang@16@include@cmpccxaddintrin.h | 70 - ...ib@clang@16@include@cmpccxaddintrin.h.blob | Bin 13977 -> 0 bytes .../@usr@lib@clang@16@include@crc32intrin.h | 100 - ...sr@lib@clang@16@include@crc32intrin.h.blob | Bin 15413 -> 0 bytes .../@usr@lib@clang@16@include@emmintrin.h | 4775 --- ...@usr@lib@clang@16@include@emmintrin.h.blob | Bin 222078 -> 0 bytes .../@usr@lib@clang@16@include@enqcmdintrin.h | 63 - ...r@lib@clang@16@include@enqcmdintrin.h.blob | Bin 13835 -> 0 bytes .../@usr@lib@clang@16@include@f16cintrin.h | 162 - ...usr@lib@clang@16@include@f16cintrin.h.blob | Bin 15532 -> 0 bytes .../@usr@lib@clang@16@include@float.h | 168 - .../@usr@lib@clang@16@include@float.h.blob | Bin 15546 -> 0 bytes .../@usr@lib@clang@16@include@fmaintrin.h | 216 - ...@usr@lib@clang@16@include@fmaintrin.h.blob | Bin 25892 -> 0 bytes .../@usr@lib@clang@16@include@fxsrintrin.h | 91 - ...usr@lib@clang@16@include@fxsrintrin.h.blob | Bin 14538 -> 0 bytes .../@usr@lib@clang@16@include@gfniintrin.h | 194 - ...usr@lib@clang@16@include@gfniintrin.h.blob | Bin 23077 -> 0 bytes .../@usr@lib@clang@16@include@hresetintrin.h | 49 - ...r@lib@clang@16@include@hresetintrin.h.blob | Bin 12935 -> 0 bytes .../@usr@lib@clang@16@include@immintrin.h | 650 - ...@usr@lib@clang@16@include@immintrin.h.blob | Bin 21124 -> 0 bytes .../@usr@lib@clang@16@include@inttypes.h | 97 - .../@usr@lib@clang@16@include@inttypes.h.blob | Bin 12230 -> 0 bytes .../@usr@lib@clang@16@include@invpcidintrin.h | 23 - ...@lib@clang@16@include@invpcidintrin.h.blob | Bin 12460 -> 0 bytes ...usr@lib@clang@16@include@keylockerintrin.h | 530 - ...ib@clang@16@include@keylockerintrin.h.blob | Bin 29407 -> 0 bytes .../@usr@lib@clang@16@include@limits.h | 123 - .../@usr@lib@clang@16@include@limits.h.blob | Bin 13774 -> 0 bytes .../@usr@lib@clang@16@include@lzcntintrin.h | 104 - ...sr@lib@clang@16@include@lzcntintrin.h.blob | Bin 14123 -> 0 bytes .../@usr@lib@clang@16@include@mm_malloc.h | 67 - ...@usr@lib@clang@16@include@mm_malloc.h.blob | Bin 13353 -> 0 bytes .../@usr@lib@clang@16@include@mmintrin.h | 1562 - .../@usr@lib@clang@16@include@mmintrin.h.blob | Bin 79877 -> 0 bytes .../@usr@lib@clang@16@include@movdirintrin.h | 49 - ...r@lib@clang@16@include@movdirintrin.h.blob | Bin 13210 -> 0 bytes .../@usr@lib@clang@16@include@pconfigintrin.h | 40 - ...@lib@clang@16@include@pconfigintrin.h.blob | Bin 12900 -> 0 bytes .../@usr@lib@clang@16@include@pkuintrin.h | 34 - ...@usr@lib@clang@16@include@pkuintrin.h.blob | Bin 12606 -> 0 bytes .../@usr@lib@clang@16@include@pmmintrin.h | 294 - ...@usr@lib@clang@16@include@pmmintrin.h.blob | Bin 22974 -> 0 bytes .../@usr@lib@clang@16@include@popcntintrin.h | 59 - ...r@lib@clang@16@include@popcntintrin.h.blob | Bin 13468 -> 0 bytes .../@usr@lib@clang@16@include@prfchiintrin.h | 61 - ...r@lib@clang@16@include@prfchiintrin.h.blob | Bin 13458 -> 0 bytes .../@usr@lib@clang@16@include@ptwriteintrin.h | 37 - ...@lib@clang@16@include@ptwriteintrin.h.blob | Bin 12742 -> 0 bytes .../@usr@lib@clang@16@include@raointintrin.h | 203 - ...r@lib@clang@16@include@raointintrin.h.blob | Bin 18395 -> 0 bytes .../@usr@lib@clang@16@include@rdseedintrin.h | 42 - ...r@lib@clang@16@include@rdseedintrin.h.blob | Bin 12835 -> 0 bytes .../@usr@lib@clang@16@include@rtmintrin.h | 45 - ...@usr@lib@clang@16@include@rtmintrin.h.blob | Bin 13231 -> 0 bytes ...usr@lib@clang@16@include@serializeintrin.h | 30 - ...ib@clang@16@include@serializeintrin.h.blob | Bin 12402 -> 0 bytes .../@usr@lib@clang@16@include@sgxintrin.h | 60 - ...@usr@lib@clang@16@include@sgxintrin.h.blob | Bin 13565 -> 0 bytes .../@usr@lib@clang@16@include@shaintrin.h | 61 - ...@usr@lib@clang@16@include@shaintrin.h.blob | Bin 14630 -> 0 bytes .../@usr@lib@clang@16@include@smmintrin.h | 2328 -- ...@usr@lib@clang@16@include@smmintrin.h.blob | Bin 55794 -> 0 bytes .../@usr@lib@clang@16@include@stdarg.h | 51 - .../@usr@lib@clang@16@include@stdarg.h.blob | Bin 12335 -> 0 bytes .../@usr@lib@clang@16@include@stdbool.h | 34 - .../@usr@lib@clang@16@include@stdbool.h.blob | Bin 12476 -> 0 bytes .../@usr@lib@clang@16@include@stddef.h | 128 - .../@usr@lib@clang@16@include@stddef.h.blob | Bin 12392 -> 0 bytes .../@usr@lib@clang@16@include@stdint.h | 979 - .../@usr@lib@clang@16@include@stdint.h.blob | Bin 12292 -> 0 bytes .../@usr@lib@clang@16@include@tmmintrin.h | 775 - ...@usr@lib@clang@16@include@tmmintrin.h.blob | Bin 44047 -> 0 bytes ...@usr@lib@clang@16@include@tsxldtrkintrin.h | 56 - ...lib@clang@16@include@tsxldtrkintrin.h.blob | Bin 13480 -> 0 bytes .../@usr@lib@clang@16@include@uintrintrin.h | 157 - ...sr@lib@clang@16@include@uintrintrin.h.blob | Bin 16493 -> 0 bytes .../@usr@lib@clang@16@include@vaesintrin.h | 85 - ...usr@lib@clang@16@include@vaesintrin.h.blob | Bin 15397 -> 0 bytes ...sr@lib@clang@16@include@vpclmulqdqintrin.h | 30 - ...b@clang@16@include@vpclmulqdqintrin.h.blob | Bin 12759 -> 0 bytes .../@usr@lib@clang@16@include@waitpkgintrin.h | 42 - ...@lib@clang@16@include@waitpkgintrin.h.blob | Bin 13144 -> 0 bytes ...@usr@lib@clang@16@include@wbnoinvdintrin.h | 24 - ...lib@clang@16@include@wbnoinvdintrin.h.blob | Bin 12264 -> 0 bytes .../@usr@lib@clang@16@include@wmmintrin.h | 23 - ...@usr@lib@clang@16@include@wmmintrin.h.blob | Bin 12322 -> 0 bytes .../@usr@lib@clang@16@include@x86gprintrin.h | 65 - ...r@lib@clang@16@include@x86gprintrin.h.blob | Bin 12824 -> 0 bytes .../@usr@lib@clang@16@include@xmmintrin.h | 3017 -- ...@usr@lib@clang@16@include@xmmintrin.h.blob | Bin 134054 -> 0 bytes .../@usr@lib@clang@16@include@xsavecintrin.h | 34 - ...r@lib@clang@16@include@xsavecintrin.h.blob | Bin 12847 -> 0 bytes .../@usr@lib@clang@16@include@xsaveintrin.h | 63 - ...sr@lib@clang@16@include@xsaveintrin.h.blob | Bin 13554 -> 0 bytes ...@usr@lib@clang@16@include@xsaveoptintrin.h | 34 - ...lib@clang@16@include@xsaveoptintrin.h.blob | Bin 12855 -> 0 bytes .../@usr@lib@clang@16@include@xsavesintrin.h | 44 - ...r@lib@clang@16@include@xsavesintrin.h.blob | Bin 13331 -> 0 bytes .../@usr@lib@clang@16@include@xtestintrin.h | 27 - ...sr@lib@clang@16@include@xtestintrin.h.blob | Bin 12432 -> 0 bytes .../@home@l@Desktop@test@ded/src@M-x.h | 21 - .../@home@l@Desktop@test@ded/src@M-x.h.blob | Bin 14743 -> 0 bytes .../@home@l@Desktop@test@ded/src@buffer.h | 16 - .../src@buffer.h.blob | Bin 13584 -> 0 bytes .../@home@l@Desktop@test@ded/src@clock.h | 16 - .../@home@l@Desktop@test@ded/src@clock.h.blob | Bin 14097 -> 0 bytes .../@home@l@Desktop@test@ded/src@common.h | 118 - .../src@common.h.blob | Bin 17569 -> 0 bytes .../@home@l@Desktop@test@ded/src@editor.c | 1986 -- .../src@editor.c.blob | Bin 107273 -> 0 bytes .../@home@l@Desktop@test@ded/src@editor.h | 293 - .../src@editor.h.blob | Bin 39953 -> 0 bytes .../@home@l@Desktop@test@ded/src@emacs.h | 11 - .../@home@l@Desktop@test@ded/src@emacs.h.blob | Bin 13015 -> 0 bytes .../@home@l@Desktop@test@ded/src@evil.c | 554 - .../@home@l@Desktop@test@ded/src@evil.c.blob | Bin 36810 -> 0 bytes .../@home@l@Desktop@test@ded/src@evil.h | 29 - .../@home@l@Desktop@test@ded/src@evil.h.blob | Bin 15639 -> 0 bytes .../src@file_browser.h | 41 - .../src@file_browser.h.blob | Bin 15829 -> 0 bytes .../@home@l@Desktop@test@ded/src@free_glyph.h | 54 - .../src@free_glyph.h.blob | Bin 16850 -> 0 bytes .../@home@l@Desktop@test@ded/src@hashmap.h | 50 - .../src@hashmap.h.blob | Bin 20017 -> 0 bytes .../@home@l@Desktop@test@ded/src@helix.c | 105 - .../@home@l@Desktop@test@ded/src@helix.c.blob | Bin 15904 -> 0 bytes .../@home@l@Desktop@test@ded/src@helix.h | 10 - .../@home@l@Desktop@test@ded/src@helix.h.blob | Bin 12864 -> 0 bytes .ccls-cache/@home@l@Desktop@test@ded/src@la.h | 41 - .../@home@l@Desktop@test@ded/src@la.h.blob | Bin 17730 -> 0 bytes .../@home@l@Desktop@test@ded/src@lexer.h | 79 - .../@home@l@Desktop@test@ded/src@lexer.h.blob | Bin 18004 -> 0 bytes .../@home@l@Desktop@test@ded/src@lsp.h | 39 - .../@home@l@Desktop@test@ded/src@lsp.h.blob | Bin 16245 -> 0 bytes .../@home@l@Desktop@test@ded/src@main.c | 2434 -- .../@home@l@Desktop@test@ded/src@main.c.blob | Bin 85372 -> 0 bytes .../@home@l@Desktop@test@ded/src@render.h | 42 - .../src@render.h.blob | Bin 16200 -> 0 bytes .../src@simple_renderer.h | 114 - .../src@simple_renderer.h.blob | Bin 22602 -> 0 bytes .ccls-cache/@home@l@Desktop@test@ded/src@sv.h | 319 - .../@home@l@Desktop@test@ded/src@sv.h.blob | Bin 17919 -> 0 bytes .../@home@l@Desktop@test@ded/src@theme.c | 669 - .../@home@l@Desktop@test@ded/src@theme.c.blob | Bin 39046 -> 0 bytes .../@home@l@Desktop@test@ded/src@theme.h | 93 - .../@home@l@Desktop@test@ded/src@theme.h.blob | Bin 20214 -> 0 bytes .../@home@l@Desktop@test@ded/src@treesitter.h | 20 - .../src@treesitter.h.blob | Bin 13860 -> 0 bytes .../@home@l@Desktop@test@ded/src@yasnippet.h | 30 - .../src@yasnippet.h.blob | Bin 14191 -> 0 bytes 612 files changed, 148460 deletions(-) delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h.blob delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h delete mode 100644 .ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@M-x.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@M-x.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@buffer.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@buffer.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@clock.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@clock.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@common.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@common.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@editor.c delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@editor.c.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@editor.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@editor.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@emacs.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@emacs.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@evil.c delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@evil.c.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@evil.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@evil.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@helix.c delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@helix.c.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@helix.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@helix.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@la.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@la.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@lexer.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@lexer.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@lsp.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@lsp.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@main.c delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@main.c.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@render.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@render.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@sv.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@sv.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@theme.c delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@theme.c.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@theme.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@theme.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h.blob delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h delete mode 100644 .ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h.blob diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h deleted file mode 100644 index 2518dfbb..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h +++ /dev/null @@ -1,2103 +0,0 @@ -/* - * Mesa 3-D graphics library - * - * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. - * Copyright (C) 2009 VMware, Inc. All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - */ - - -#ifndef __gl_h_ -#define __gl_h_ - -/********************************************************************** - * Begin system-specific stuff. - */ - -#if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__) -#define __WIN32__ -#endif - -#if defined(__WIN32__) && !defined(__CYGWIN__) -# if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */ -# define GLAPI __declspec(dllexport) -# elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're building for DLL runtime support */ -# define GLAPI __declspec(dllimport) -# else /* for use with static link lib build of Win32 edition only */ -# define GLAPI extern -# endif -# if defined(__MINGW32__) && defined(GL_NO_STDCALL) || defined(UNDER_CE) /* The generated DLLs by MingW with STDCALL are not compatible with the ones done by Microsoft's compilers */ -# define GLAPIENTRY -# else -# define GLAPIENTRY __stdcall -# endif -#elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native windows opengl32 */ -# define GLAPI extern -# define GLAPIENTRY __stdcall -#elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) -# define GLAPI __attribute__((visibility("default"))) -# define GLAPIENTRY -#endif /* WIN32 && !CYGWIN */ - -/* - * WINDOWS: Include windows.h here to define APIENTRY. - * It is also useful when applications include this file by - * including only glut.h, since glut.h depends on windows.h. - * Applications needing to include windows.h with parms other - * than "WIN32_LEAN_AND_MEAN" may include windows.h before - * glut.h or gl.h. - */ -#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) -#ifndef WIN32_LEAN_AND_MEAN -#define WIN32_LEAN_AND_MEAN 1 -#endif -#include <windows.h> -#endif - -#ifndef GLAPI -#define GLAPI extern -#endif - -#ifndef GLAPIENTRY -#define GLAPIENTRY -#endif - -#ifndef APIENTRY -#define APIENTRY GLAPIENTRY -#endif - -/* "P" suffix to be used for a pointer to a function */ -#ifndef APIENTRYP -#define APIENTRYP APIENTRY * -#endif - -#ifndef GLAPIENTRYP -#define GLAPIENTRYP GLAPIENTRY * -#endif - -/* - * End system-specific stuff. - **********************************************************************/ - - - -#ifdef __cplusplus -extern "C" { -#endif - - - -#define GL_VERSION_1_1 1 -#define GL_VERSION_1_2 1 -#define GL_VERSION_1_3 1 -#define GL_ARB_imaging 1 - - -/* - * Datatypes - */ -typedef unsigned int GLenum; -typedef unsigned char GLboolean; -typedef unsigned int GLbitfield; -typedef void GLvoid; -typedef signed char GLbyte; /* 1-byte signed */ -typedef short GLshort; /* 2-byte signed */ -typedef int GLint; /* 4-byte signed */ -typedef unsigned char GLubyte; /* 1-byte unsigned */ -typedef unsigned short GLushort; /* 2-byte unsigned */ -typedef unsigned int GLuint; /* 4-byte unsigned */ -typedef int GLsizei; /* 4-byte signed */ -typedef float GLfloat; /* single precision float */ -typedef float GLclampf; /* single precision float in [0,1] */ -typedef double GLdouble; /* double precision float */ -typedef double GLclampd; /* double precision float in [0,1] */ - - - -/* - * Constants - */ - -/* Boolean values */ -#define GL_FALSE 0 -#define GL_TRUE 1 - -/* Data types */ -#define GL_BYTE 0x1400 -#define GL_UNSIGNED_BYTE 0x1401 -#define GL_SHORT 0x1402 -#define GL_UNSIGNED_SHORT 0x1403 -#define GL_INT 0x1404 -#define GL_UNSIGNED_INT 0x1405 -#define GL_FLOAT 0x1406 -#define GL_2_BYTES 0x1407 -#define GL_3_BYTES 0x1408 -#define GL_4_BYTES 0x1409 -#define GL_DOUBLE 0x140A - -/* Primitives */ -#define GL_POINTS 0x0000 -#define GL_LINES 0x0001 -#define GL_LINE_LOOP 0x0002 -#define GL_LINE_STRIP 0x0003 -#define GL_TRIANGLES 0x0004 -#define GL_TRIANGLE_STRIP 0x0005 -#define GL_TRIANGLE_FAN 0x0006 -#define GL_QUADS 0x0007 -#define GL_QUAD_STRIP 0x0008 -#define GL_POLYGON 0x0009 - -/* Vertex Arrays */ -#define GL_VERTEX_ARRAY 0x8074 -#define GL_NORMAL_ARRAY 0x8075 -#define GL_COLOR_ARRAY 0x8076 -#define GL_INDEX_ARRAY 0x8077 -#define GL_TEXTURE_COORD_ARRAY 0x8078 -#define GL_EDGE_FLAG_ARRAY 0x8079 -#define GL_VERTEX_ARRAY_SIZE 0x807A -#define GL_VERTEX_ARRAY_TYPE 0x807B -#define GL_VERTEX_ARRAY_STRIDE 0x807C -#define GL_NORMAL_ARRAY_TYPE 0x807E -#define GL_NORMAL_ARRAY_STRIDE 0x807F -#define GL_COLOR_ARRAY_SIZE 0x8081 -#define GL_COLOR_ARRAY_TYPE 0x8082 -#define GL_COLOR_ARRAY_STRIDE 0x8083 -#define GL_INDEX_ARRAY_TYPE 0x8085 -#define GL_INDEX_ARRAY_STRIDE 0x8086 -#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 -#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 -#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A -#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C -#define GL_VERTEX_ARRAY_POINTER 0x808E -#define GL_NORMAL_ARRAY_POINTER 0x808F -#define GL_COLOR_ARRAY_POINTER 0x8090 -#define GL_INDEX_ARRAY_POINTER 0x8091 -#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 -#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 -#define GL_V2F 0x2A20 -#define GL_V3F 0x2A21 -#define GL_C4UB_V2F 0x2A22 -#define GL_C4UB_V3F 0x2A23 -#define GL_C3F_V3F 0x2A24 -#define GL_N3F_V3F 0x2A25 -#define GL_C4F_N3F_V3F 0x2A26 -#define GL_T2F_V3F 0x2A27 -#define GL_T4F_V4F 0x2A28 -#define GL_T2F_C4UB_V3F 0x2A29 -#define GL_T2F_C3F_V3F 0x2A2A -#define GL_T2F_N3F_V3F 0x2A2B -#define GL_T2F_C4F_N3F_V3F 0x2A2C -#define GL_T4F_C4F_N3F_V4F 0x2A2D - -/* Matrix Mode */ -#define GL_MATRIX_MODE 0x0BA0 -#define GL_MODELVIEW 0x1700 -#define GL_PROJECTION 0x1701 -#define GL_TEXTURE 0x1702 - -/* Points */ -#define GL_POINT_SMOOTH 0x0B10 -#define GL_POINT_SIZE 0x0B11 -#define GL_POINT_SIZE_GRANULARITY 0x0B13 -#define GL_POINT_SIZE_RANGE 0x0B12 - -/* Lines */ -#define GL_LINE_SMOOTH 0x0B20 -#define GL_LINE_STIPPLE 0x0B24 -#define GL_LINE_STIPPLE_PATTERN 0x0B25 -#define GL_LINE_STIPPLE_REPEAT 0x0B26 -#define GL_LINE_WIDTH 0x0B21 -#define GL_LINE_WIDTH_GRANULARITY 0x0B23 -#define GL_LINE_WIDTH_RANGE 0x0B22 - -/* Polygons */ -#define GL_POINT 0x1B00 -#define GL_LINE 0x1B01 -#define GL_FILL 0x1B02 -#define GL_CW 0x0900 -#define GL_CCW 0x0901 -#define GL_FRONT 0x0404 -#define GL_BACK 0x0405 -#define GL_POLYGON_MODE 0x0B40 -#define GL_POLYGON_SMOOTH 0x0B41 -#define GL_POLYGON_STIPPLE 0x0B42 -#define GL_EDGE_FLAG 0x0B43 -#define GL_CULL_FACE 0x0B44 -#define GL_CULL_FACE_MODE 0x0B45 -#define GL_FRONT_FACE 0x0B46 -#define GL_POLYGON_OFFSET_FACTOR 0x8038 -#define GL_POLYGON_OFFSET_UNITS 0x2A00 -#define GL_POLYGON_OFFSET_POINT 0x2A01 -#define GL_POLYGON_OFFSET_LINE 0x2A02 -#define GL_POLYGON_OFFSET_FILL 0x8037 - -/* Display Lists */ -#define GL_COMPILE 0x1300 -#define GL_COMPILE_AND_EXECUTE 0x1301 -#define GL_LIST_BASE 0x0B32 -#define GL_LIST_INDEX 0x0B33 -#define GL_LIST_MODE 0x0B30 - -/* Depth buffer */ -#define GL_NEVER 0x0200 -#define GL_LESS 0x0201 -#define GL_EQUAL 0x0202 -#define GL_LEQUAL 0x0203 -#define GL_GREATER 0x0204 -#define GL_NOTEQUAL 0x0205 -#define GL_GEQUAL 0x0206 -#define GL_ALWAYS 0x0207 -#define GL_DEPTH_TEST 0x0B71 -#define GL_DEPTH_BITS 0x0D56 -#define GL_DEPTH_CLEAR_VALUE 0x0B73 -#define GL_DEPTH_FUNC 0x0B74 -#define GL_DEPTH_RANGE 0x0B70 -#define GL_DEPTH_WRITEMASK 0x0B72 -#define GL_DEPTH_COMPONENT 0x1902 - -/* Lighting */ -#define GL_LIGHTING 0x0B50 -#define GL_LIGHT0 0x4000 -#define GL_LIGHT1 0x4001 -#define GL_LIGHT2 0x4002 -#define GL_LIGHT3 0x4003 -#define GL_LIGHT4 0x4004 -#define GL_LIGHT5 0x4005 -#define GL_LIGHT6 0x4006 -#define GL_LIGHT7 0x4007 -#define GL_SPOT_EXPONENT 0x1205 -#define GL_SPOT_CUTOFF 0x1206 -#define GL_CONSTANT_ATTENUATION 0x1207 -#define GL_LINEAR_ATTENUATION 0x1208 -#define GL_QUADRATIC_ATTENUATION 0x1209 -#define GL_AMBIENT 0x1200 -#define GL_DIFFUSE 0x1201 -#define GL_SPECULAR 0x1202 -#define GL_SHININESS 0x1601 -#define GL_EMISSION 0x1600 -#define GL_POSITION 0x1203 -#define GL_SPOT_DIRECTION 0x1204 -#define GL_AMBIENT_AND_DIFFUSE 0x1602 -#define GL_COLOR_INDEXES 0x1603 -#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 -#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 -#define GL_LIGHT_MODEL_AMBIENT 0x0B53 -#define GL_FRONT_AND_BACK 0x0408 -#define GL_SHADE_MODEL 0x0B54 -#define GL_FLAT 0x1D00 -#define GL_SMOOTH 0x1D01 -#define GL_COLOR_MATERIAL 0x0B57 -#define GL_COLOR_MATERIAL_FACE 0x0B55 -#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 -#define GL_NORMALIZE 0x0BA1 - -/* User clipping planes */ -#define GL_CLIP_PLANE0 0x3000 -#define GL_CLIP_PLANE1 0x3001 -#define GL_CLIP_PLANE2 0x3002 -#define GL_CLIP_PLANE3 0x3003 -#define GL_CLIP_PLANE4 0x3004 -#define GL_CLIP_PLANE5 0x3005 - -/* Accumulation buffer */ -#define GL_ACCUM_RED_BITS 0x0D58 -#define GL_ACCUM_GREEN_BITS 0x0D59 -#define GL_ACCUM_BLUE_BITS 0x0D5A -#define GL_ACCUM_ALPHA_BITS 0x0D5B -#define GL_ACCUM_CLEAR_VALUE 0x0B80 -#define GL_ACCUM 0x0100 -#define GL_ADD 0x0104 -#define GL_LOAD 0x0101 -#define GL_MULT 0x0103 -#define GL_RETURN 0x0102 - -/* Alpha testing */ -#define GL_ALPHA_TEST 0x0BC0 -#define GL_ALPHA_TEST_REF 0x0BC2 -#define GL_ALPHA_TEST_FUNC 0x0BC1 - -/* Blending */ -#define GL_BLEND 0x0BE2 -#define GL_BLEND_SRC 0x0BE1 -#define GL_BLEND_DST 0x0BE0 -#define GL_ZERO 0 -#define GL_ONE 1 -#define GL_SRC_COLOR 0x0300 -#define GL_ONE_MINUS_SRC_COLOR 0x0301 -#define GL_SRC_ALPHA 0x0302 -#define GL_ONE_MINUS_SRC_ALPHA 0x0303 -#define GL_DST_ALPHA 0x0304 -#define GL_ONE_MINUS_DST_ALPHA 0x0305 -#define GL_DST_COLOR 0x0306 -#define GL_ONE_MINUS_DST_COLOR 0x0307 -#define GL_SRC_ALPHA_SATURATE 0x0308 - -/* Render Mode */ -#define GL_FEEDBACK 0x1C01 -#define GL_RENDER 0x1C00 -#define GL_SELECT 0x1C02 - -/* Feedback */ -#define GL_2D 0x0600 -#define GL_3D 0x0601 -#define GL_3D_COLOR 0x0602 -#define GL_3D_COLOR_TEXTURE 0x0603 -#define GL_4D_COLOR_TEXTURE 0x0604 -#define GL_POINT_TOKEN 0x0701 -#define GL_LINE_TOKEN 0x0702 -#define GL_LINE_RESET_TOKEN 0x0707 -#define GL_POLYGON_TOKEN 0x0703 -#define GL_BITMAP_TOKEN 0x0704 -#define GL_DRAW_PIXEL_TOKEN 0x0705 -#define GL_COPY_PIXEL_TOKEN 0x0706 -#define GL_PASS_THROUGH_TOKEN 0x0700 -#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 -#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 -#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 - -/* Selection */ -#define GL_SELECTION_BUFFER_POINTER 0x0DF3 -#define GL_SELECTION_BUFFER_SIZE 0x0DF4 - -/* Fog */ -#define GL_FOG 0x0B60 -#define GL_FOG_MODE 0x0B65 -#define GL_FOG_DENSITY 0x0B62 -#define GL_FOG_COLOR 0x0B66 -#define GL_FOG_INDEX 0x0B61 -#define GL_FOG_START 0x0B63 -#define GL_FOG_END 0x0B64 -#define GL_LINEAR 0x2601 -#define GL_EXP 0x0800 -#define GL_EXP2 0x0801 - -/* Logic Ops */ -#define GL_LOGIC_OP 0x0BF1 -#define GL_INDEX_LOGIC_OP 0x0BF1 -#define GL_COLOR_LOGIC_OP 0x0BF2 -#define GL_LOGIC_OP_MODE 0x0BF0 -#define GL_CLEAR 0x1500 -#define GL_SET 0x150F -#define GL_COPY 0x1503 -#define GL_COPY_INVERTED 0x150C -#define GL_NOOP 0x1505 -#define GL_INVERT 0x150A -#define GL_AND 0x1501 -#define GL_NAND 0x150E -#define GL_OR 0x1507 -#define GL_NOR 0x1508 -#define GL_XOR 0x1506 -#define GL_EQUIV 0x1509 -#define GL_AND_REVERSE 0x1502 -#define GL_AND_INVERTED 0x1504 -#define GL_OR_REVERSE 0x150B -#define GL_OR_INVERTED 0x150D - -/* Stencil */ -#define GL_STENCIL_BITS 0x0D57 -#define GL_STENCIL_TEST 0x0B90 -#define GL_STENCIL_CLEAR_VALUE 0x0B91 -#define GL_STENCIL_FUNC 0x0B92 -#define GL_STENCIL_VALUE_MASK 0x0B93 -#define GL_STENCIL_FAIL 0x0B94 -#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 -#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 -#define GL_STENCIL_REF 0x0B97 -#define GL_STENCIL_WRITEMASK 0x0B98 -#define GL_STENCIL_INDEX 0x1901 -#define GL_KEEP 0x1E00 -#define GL_REPLACE 0x1E01 -#define GL_INCR 0x1E02 -#define GL_DECR 0x1E03 - -/* Buffers, Pixel Drawing/Reading */ -#define GL_NONE 0 -#define GL_LEFT 0x0406 -#define GL_RIGHT 0x0407 -/*GL_FRONT 0x0404 */ -/*GL_BACK 0x0405 */ -/*GL_FRONT_AND_BACK 0x0408 */ -#define GL_FRONT_LEFT 0x0400 -#define GL_FRONT_RIGHT 0x0401 -#define GL_BACK_LEFT 0x0402 -#define GL_BACK_RIGHT 0x0403 -#define GL_AUX0 0x0409 -#define GL_AUX1 0x040A -#define GL_AUX2 0x040B -#define GL_AUX3 0x040C -#define GL_COLOR_INDEX 0x1900 -#define GL_RED 0x1903 -#define GL_GREEN 0x1904 -#define GL_BLUE 0x1905 -#define GL_ALPHA 0x1906 -#define GL_LUMINANCE 0x1909 -#define GL_LUMINANCE_ALPHA 0x190A -#define GL_ALPHA_BITS 0x0D55 -#define GL_RED_BITS 0x0D52 -#define GL_GREEN_BITS 0x0D53 -#define GL_BLUE_BITS 0x0D54 -#define GL_INDEX_BITS 0x0D51 -#define GL_SUBPIXEL_BITS 0x0D50 -#define GL_AUX_BUFFERS 0x0C00 -#define GL_READ_BUFFER 0x0C02 -#define GL_DRAW_BUFFER 0x0C01 -#define GL_DOUBLEBUFFER 0x0C32 -#define GL_STEREO 0x0C33 -#define GL_BITMAP 0x1A00 -#define GL_COLOR 0x1800 -#define GL_DEPTH 0x1801 -#define GL_STENCIL 0x1802 -#define GL_DITHER 0x0BD0 -#define GL_RGB 0x1907 -#define GL_RGBA 0x1908 - -/* Implementation limits */ -#define GL_MAX_LIST_NESTING 0x0B31 -#define GL_MAX_EVAL_ORDER 0x0D30 -#define GL_MAX_LIGHTS 0x0D31 -#define GL_MAX_CLIP_PLANES 0x0D32 -#define GL_MAX_TEXTURE_SIZE 0x0D33 -#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 -#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 -#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 -#define GL_MAX_NAME_STACK_DEPTH 0x0D37 -#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 -#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 -#define GL_MAX_VIEWPORT_DIMS 0x0D3A -#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B - -/* Gets */ -#define GL_ATTRIB_STACK_DEPTH 0x0BB0 -#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 -#define GL_COLOR_CLEAR_VALUE 0x0C22 -#define GL_COLOR_WRITEMASK 0x0C23 -#define GL_CURRENT_INDEX 0x0B01 -#define GL_CURRENT_COLOR 0x0B00 -#define GL_CURRENT_NORMAL 0x0B02 -#define GL_CURRENT_RASTER_COLOR 0x0B04 -#define GL_CURRENT_RASTER_DISTANCE 0x0B09 -#define GL_CURRENT_RASTER_INDEX 0x0B05 -#define GL_CURRENT_RASTER_POSITION 0x0B07 -#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 -#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 -#define GL_CURRENT_TEXTURE_COORDS 0x0B03 -#define GL_INDEX_CLEAR_VALUE 0x0C20 -#define GL_INDEX_MODE 0x0C30 -#define GL_INDEX_WRITEMASK 0x0C21 -#define GL_MODELVIEW_MATRIX 0x0BA6 -#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 -#define GL_NAME_STACK_DEPTH 0x0D70 -#define GL_PROJECTION_MATRIX 0x0BA7 -#define GL_PROJECTION_STACK_DEPTH 0x0BA4 -#define GL_RENDER_MODE 0x0C40 -#define GL_RGBA_MODE 0x0C31 -#define GL_TEXTURE_MATRIX 0x0BA8 -#define GL_TEXTURE_STACK_DEPTH 0x0BA5 -#define GL_VIEWPORT 0x0BA2 - -/* Evaluators */ -#define GL_AUTO_NORMAL 0x0D80 -#define GL_MAP1_COLOR_4 0x0D90 -#define GL_MAP1_INDEX 0x0D91 -#define GL_MAP1_NORMAL 0x0D92 -#define GL_MAP1_TEXTURE_COORD_1 0x0D93 -#define GL_MAP1_TEXTURE_COORD_2 0x0D94 -#define GL_MAP1_TEXTURE_COORD_3 0x0D95 -#define GL_MAP1_TEXTURE_COORD_4 0x0D96 -#define GL_MAP1_VERTEX_3 0x0D97 -#define GL_MAP1_VERTEX_4 0x0D98 -#define GL_MAP2_COLOR_4 0x0DB0 -#define GL_MAP2_INDEX 0x0DB1 -#define GL_MAP2_NORMAL 0x0DB2 -#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 -#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 -#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 -#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 -#define GL_MAP2_VERTEX_3 0x0DB7 -#define GL_MAP2_VERTEX_4 0x0DB8 -#define GL_MAP1_GRID_DOMAIN 0x0DD0 -#define GL_MAP1_GRID_SEGMENTS 0x0DD1 -#define GL_MAP2_GRID_DOMAIN 0x0DD2 -#define GL_MAP2_GRID_SEGMENTS 0x0DD3 -#define GL_COEFF 0x0A00 -#define GL_ORDER 0x0A01 -#define GL_DOMAIN 0x0A02 - -/* Hints */ -#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 -#define GL_POINT_SMOOTH_HINT 0x0C51 -#define GL_LINE_SMOOTH_HINT 0x0C52 -#define GL_POLYGON_SMOOTH_HINT 0x0C53 -#define GL_FOG_HINT 0x0C54 -#define GL_DONT_CARE 0x1100 -#define GL_FASTEST 0x1101 -#define GL_NICEST 0x1102 - -/* Scissor box */ -#define GL_SCISSOR_BOX 0x0C10 -#define GL_SCISSOR_TEST 0x0C11 - -/* Pixel Mode / Transfer */ -#define GL_MAP_COLOR 0x0D10 -#define GL_MAP_STENCIL 0x0D11 -#define GL_INDEX_SHIFT 0x0D12 -#define GL_INDEX_OFFSET 0x0D13 -#define GL_RED_SCALE 0x0D14 -#define GL_RED_BIAS 0x0D15 -#define GL_GREEN_SCALE 0x0D18 -#define GL_GREEN_BIAS 0x0D19 -#define GL_BLUE_SCALE 0x0D1A -#define GL_BLUE_BIAS 0x0D1B -#define GL_ALPHA_SCALE 0x0D1C -#define GL_ALPHA_BIAS 0x0D1D -#define GL_DEPTH_SCALE 0x0D1E -#define GL_DEPTH_BIAS 0x0D1F -#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 -#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 -#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 -#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 -#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 -#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 -#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 -#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 -#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 -#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 -#define GL_PIXEL_MAP_S_TO_S 0x0C71 -#define GL_PIXEL_MAP_I_TO_I 0x0C70 -#define GL_PIXEL_MAP_I_TO_R 0x0C72 -#define GL_PIXEL_MAP_I_TO_G 0x0C73 -#define GL_PIXEL_MAP_I_TO_B 0x0C74 -#define GL_PIXEL_MAP_I_TO_A 0x0C75 -#define GL_PIXEL_MAP_R_TO_R 0x0C76 -#define GL_PIXEL_MAP_G_TO_G 0x0C77 -#define GL_PIXEL_MAP_B_TO_B 0x0C78 -#define GL_PIXEL_MAP_A_TO_A 0x0C79 -#define GL_PACK_ALIGNMENT 0x0D05 -#define GL_PACK_LSB_FIRST 0x0D01 -#define GL_PACK_ROW_LENGTH 0x0D02 -#define GL_PACK_SKIP_PIXELS 0x0D04 -#define GL_PACK_SKIP_ROWS 0x0D03 -#define GL_PACK_SWAP_BYTES 0x0D00 -#define GL_UNPACK_ALIGNMENT 0x0CF5 -#define GL_UNPACK_LSB_FIRST 0x0CF1 -#define GL_UNPACK_ROW_LENGTH 0x0CF2 -#define GL_UNPACK_SKIP_PIXELS 0x0CF4 -#define GL_UNPACK_SKIP_ROWS 0x0CF3 -#define GL_UNPACK_SWAP_BYTES 0x0CF0 -#define GL_ZOOM_X 0x0D16 -#define GL_ZOOM_Y 0x0D17 - -/* Texture mapping */ -#define GL_TEXTURE_ENV 0x2300 -#define GL_TEXTURE_ENV_MODE 0x2200 -#define GL_TEXTURE_1D 0x0DE0 -#define GL_TEXTURE_2D 0x0DE1 -#define GL_TEXTURE_WRAP_S 0x2802 -#define GL_TEXTURE_WRAP_T 0x2803 -#define GL_TEXTURE_MAG_FILTER 0x2800 -#define GL_TEXTURE_MIN_FILTER 0x2801 -#define GL_TEXTURE_ENV_COLOR 0x2201 -#define GL_TEXTURE_GEN_S 0x0C60 -#define GL_TEXTURE_GEN_T 0x0C61 -#define GL_TEXTURE_GEN_R 0x0C62 -#define GL_TEXTURE_GEN_Q 0x0C63 -#define GL_TEXTURE_GEN_MODE 0x2500 -#define GL_TEXTURE_BORDER_COLOR 0x1004 -#define GL_TEXTURE_WIDTH 0x1000 -#define GL_TEXTURE_HEIGHT 0x1001 -#define GL_TEXTURE_BORDER 0x1005 -#define GL_TEXTURE_COMPONENTS 0x1003 -#define GL_TEXTURE_RED_SIZE 0x805C -#define GL_TEXTURE_GREEN_SIZE 0x805D -#define GL_TEXTURE_BLUE_SIZE 0x805E -#define GL_TEXTURE_ALPHA_SIZE 0x805F -#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 -#define GL_TEXTURE_INTENSITY_SIZE 0x8061 -#define GL_NEAREST_MIPMAP_NEAREST 0x2700 -#define GL_NEAREST_MIPMAP_LINEAR 0x2702 -#define GL_LINEAR_MIPMAP_NEAREST 0x2701 -#define GL_LINEAR_MIPMAP_LINEAR 0x2703 -#define GL_OBJECT_LINEAR 0x2401 -#define GL_OBJECT_PLANE 0x2501 -#define GL_EYE_LINEAR 0x2400 -#define GL_EYE_PLANE 0x2502 -#define GL_SPHERE_MAP 0x2402 -#define GL_DECAL 0x2101 -#define GL_MODULATE 0x2100 -#define GL_NEAREST 0x2600 -#define GL_REPEAT 0x2901 -#define GL_CLAMP 0x2900 -#define GL_S 0x2000 -#define GL_T 0x2001 -#define GL_R 0x2002 -#define GL_Q 0x2003 - -/* Utility */ -#define GL_VENDOR 0x1F00 -#define GL_RENDERER 0x1F01 -#define GL_VERSION 0x1F02 -#define GL_EXTENSIONS 0x1F03 - -/* Errors */ -#define GL_NO_ERROR 0 -#define GL_INVALID_ENUM 0x0500 -#define GL_INVALID_VALUE 0x0501 -#define GL_INVALID_OPERATION 0x0502 -#define GL_STACK_OVERFLOW 0x0503 -#define GL_STACK_UNDERFLOW 0x0504 -#define GL_OUT_OF_MEMORY 0x0505 - -/* glPush/PopAttrib bits */ -#define GL_CURRENT_BIT 0x00000001 -#define GL_POINT_BIT 0x00000002 -#define GL_LINE_BIT 0x00000004 -#define GL_POLYGON_BIT 0x00000008 -#define GL_POLYGON_STIPPLE_BIT 0x00000010 -#define GL_PIXEL_MODE_BIT 0x00000020 -#define GL_LIGHTING_BIT 0x00000040 -#define GL_FOG_BIT 0x00000080 -#define GL_DEPTH_BUFFER_BIT 0x00000100 -#define GL_ACCUM_BUFFER_BIT 0x00000200 -#define GL_STENCIL_BUFFER_BIT 0x00000400 -#define GL_VIEWPORT_BIT 0x00000800 -#define GL_TRANSFORM_BIT 0x00001000 -#define GL_ENABLE_BIT 0x00002000 -#define GL_COLOR_BUFFER_BIT 0x00004000 -#define GL_HINT_BIT 0x00008000 -#define GL_EVAL_BIT 0x00010000 -#define GL_LIST_BIT 0x00020000 -#define GL_TEXTURE_BIT 0x00040000 -#define GL_SCISSOR_BIT 0x00080000 -#define GL_ALL_ATTRIB_BITS 0xFFFFFFFF - - -/* OpenGL 1.1 */ -#define GL_PROXY_TEXTURE_1D 0x8063 -#define GL_PROXY_TEXTURE_2D 0x8064 -#define GL_TEXTURE_PRIORITY 0x8066 -#define GL_TEXTURE_RESIDENT 0x8067 -#define GL_TEXTURE_BINDING_1D 0x8068 -#define GL_TEXTURE_BINDING_2D 0x8069 -#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 -#define GL_ALPHA4 0x803B -#define GL_ALPHA8 0x803C -#define GL_ALPHA12 0x803D -#define GL_ALPHA16 0x803E -#define GL_LUMINANCE4 0x803F -#define GL_LUMINANCE8 0x8040 -#define GL_LUMINANCE12 0x8041 -#define GL_LUMINANCE16 0x8042 -#define GL_LUMINANCE4_ALPHA4 0x8043 -#define GL_LUMINANCE6_ALPHA2 0x8044 -#define GL_LUMINANCE8_ALPHA8 0x8045 -#define GL_LUMINANCE12_ALPHA4 0x8046 -#define GL_LUMINANCE12_ALPHA12 0x8047 -#define GL_LUMINANCE16_ALPHA16 0x8048 -#define GL_INTENSITY 0x8049 -#define GL_INTENSITY4 0x804A -#define GL_INTENSITY8 0x804B -#define GL_INTENSITY12 0x804C -#define GL_INTENSITY16 0x804D -#define GL_R3_G3_B2 0x2A10 -#define GL_RGB4 0x804F -#define GL_RGB5 0x8050 -#define GL_RGB8 0x8051 -#define GL_RGB10 0x8052 -#define GL_RGB12 0x8053 -#define GL_RGB16 0x8054 -#define GL_RGBA2 0x8055 -#define GL_RGBA4 0x8056 -#define GL_RGB5_A1 0x8057 -#define GL_RGBA8 0x8058 -#define GL_RGB10_A2 0x8059 -#define GL_RGBA12 0x805A -#define GL_RGBA16 0x805B -#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 -#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 -#define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF -#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF - - - -/* - * Miscellaneous - */ - -GLAPI void GLAPIENTRY glClearIndex( GLfloat c ); - -GLAPI void GLAPIENTRY glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); - -GLAPI void GLAPIENTRY glClear( GLbitfield mask ); - -GLAPI void GLAPIENTRY glIndexMask( GLuint mask ); - -GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ); - -GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref ); - -GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor ); - -GLAPI void GLAPIENTRY glLogicOp( GLenum opcode ); - -GLAPI void GLAPIENTRY glCullFace( GLenum mode ); - -GLAPI void GLAPIENTRY glFrontFace( GLenum mode ); - -GLAPI void GLAPIENTRY glPointSize( GLfloat size ); - -GLAPI void GLAPIENTRY glLineWidth( GLfloat width ); - -GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern ); - -GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode ); - -GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units ); - -GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask ); - -GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask ); - -GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag ); - -GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag ); - -GLAPI void GLAPIENTRY glScissor( GLint x, GLint y, GLsizei width, GLsizei height); - -GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble *equation ); - -GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble *equation ); - -GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode ); - -GLAPI void GLAPIENTRY glReadBuffer( GLenum mode ); - -GLAPI void GLAPIENTRY glEnable( GLenum cap ); - -GLAPI void GLAPIENTRY glDisable( GLenum cap ); - -GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap ); - - -GLAPI void GLAPIENTRY glEnableClientState( GLenum cap ); /* 1.1 */ - -GLAPI void GLAPIENTRY glDisableClientState( GLenum cap ); /* 1.1 */ - - -GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params ); - -GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params ); - -GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params ); - -GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params ); - - -GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask ); - -GLAPI void GLAPIENTRY glPopAttrib( void ); - - -GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */ - -GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */ - - -GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode ); - -GLAPI GLenum GLAPIENTRY glGetError( void ); - -GLAPI const GLubyte * GLAPIENTRY glGetString( GLenum name ); - -GLAPI void GLAPIENTRY glFinish( void ); - -GLAPI void GLAPIENTRY glFlush( void ); - -GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode ); - - -/* - * Depth Buffer - */ - -GLAPI void GLAPIENTRY glClearDepth( GLclampd depth ); - -GLAPI void GLAPIENTRY glDepthFunc( GLenum func ); - -GLAPI void GLAPIENTRY glDepthMask( GLboolean flag ); - -GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val ); - - -/* - * Accumulation Buffer - */ - -GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); - -GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value ); - - -/* - * Transformation - */ - -GLAPI void GLAPIENTRY glMatrixMode( GLenum mode ); - -GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right, - GLdouble bottom, GLdouble top, - GLdouble near_val, GLdouble far_val ); - -GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right, - GLdouble bottom, GLdouble top, - GLdouble near_val, GLdouble far_val ); - -GLAPI void GLAPIENTRY glViewport( GLint x, GLint y, - GLsizei width, GLsizei height ); - -GLAPI void GLAPIENTRY glPushMatrix( void ); - -GLAPI void GLAPIENTRY glPopMatrix( void ); - -GLAPI void GLAPIENTRY glLoadIdentity( void ); - -GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m ); -GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m ); - -GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m ); -GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m ); - -GLAPI void GLAPIENTRY glRotated( GLdouble angle, - GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glRotatef( GLfloat angle, - GLfloat x, GLfloat y, GLfloat z ); - -GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z ); - -GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z ); - - -/* - * Display Lists - */ - -GLAPI GLboolean GLAPIENTRY glIsList( GLuint list ); - -GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range ); - -GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range ); - -GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode ); - -GLAPI void GLAPIENTRY glEndList( void ); - -GLAPI void GLAPIENTRY glCallList( GLuint list ); - -GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type, - const GLvoid *lists ); - -GLAPI void GLAPIENTRY glListBase( GLuint base ); - - -/* - * Drawing Functions - */ - -GLAPI void GLAPIENTRY glBegin( GLenum mode ); - -GLAPI void GLAPIENTRY glEnd( void ); - - -GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y ); -GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y ); -GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y ); -GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y ); - -GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z ); -GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z ); -GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z ); - -GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); -GLAPI void GLAPIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); -GLAPI void GLAPIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w ); -GLAPI void GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w ); - -GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glVertex2iv( const GLint *v ); -GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glVertex3iv( const GLint *v ); -GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glVertex4iv( const GLint *v ); -GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v ); - - -GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ); -GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz ); -GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz ); -GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, GLint nz ); -GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz ); - -GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v ); -GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glNormal3iv( const GLint *v ); -GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v ); - - -GLAPI void GLAPIENTRY glIndexd( GLdouble c ); -GLAPI void GLAPIENTRY glIndexf( GLfloat c ); -GLAPI void GLAPIENTRY glIndexi( GLint c ); -GLAPI void GLAPIENTRY glIndexs( GLshort c ); -GLAPI void GLAPIENTRY glIndexub( GLubyte c ); /* 1.1 */ - -GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c ); -GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c ); -GLAPI void GLAPIENTRY glIndexiv( const GLint *c ); -GLAPI void GLAPIENTRY glIndexsv( const GLshort *c ); -GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */ - -GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue ); -GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue ); -GLAPI void GLAPIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue ); -GLAPI void GLAPIENTRY glColor3i( GLint red, GLint green, GLint blue ); -GLAPI void GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue ); -GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue ); -GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue ); -GLAPI void GLAPIENTRY glColor3us( GLushort red, GLushort green, GLushort blue ); - -GLAPI void GLAPIENTRY glColor4b( GLbyte red, GLbyte green, - GLbyte blue, GLbyte alpha ); -GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green, - GLdouble blue, GLdouble alpha ); -GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green, - GLfloat blue, GLfloat alpha ); -GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green, - GLint blue, GLint alpha ); -GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green, - GLshort blue, GLshort alpha ); -GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green, - GLubyte blue, GLubyte alpha ); -GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green, - GLuint blue, GLuint alpha ); -GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green, - GLushort blue, GLushort alpha ); - - -GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v ); -GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glColor3iv( const GLint *v ); -GLAPI void GLAPIENTRY glColor3sv( const GLshort *v ); -GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v ); -GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v ); -GLAPI void GLAPIENTRY glColor3usv( const GLushort *v ); - -GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v ); -GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glColor4iv( const GLint *v ); -GLAPI void GLAPIENTRY glColor4sv( const GLshort *v ); -GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v ); -GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v ); -GLAPI void GLAPIENTRY glColor4usv( const GLushort *v ); - - -GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s ); -GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s ); -GLAPI void GLAPIENTRY glTexCoord1i( GLint s ); -GLAPI void GLAPIENTRY glTexCoord1s( GLshort s ); - -GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t ); -GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t ); -GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t ); -GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t ); - -GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r ); -GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r ); -GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, GLint r ); -GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r ); - -GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); -GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); -GLAPI void GLAPIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q ); -GLAPI void GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q ); - -GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v ); -GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v ); -GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v ); -GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v ); -GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v ); - - -GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y ); -GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y ); -GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y ); -GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y ); - -GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z ); -GLAPI void GLAPIENTRY glRasterPos3i( GLint x, GLint y, GLint z ); -GLAPI void GLAPIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z ); - -GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); -GLAPI void GLAPIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); -GLAPI void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w ); -GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w ); - -GLAPI void GLAPIENTRY glRasterPos2dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v ); -GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v ); -GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v ); -GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v ); - - -GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); -GLAPI void GLAPIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); -GLAPI void GLAPIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ); -GLAPI void GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); - - -GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 ); -GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 ); -GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 ); -GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 ); - - -/* - * Vertex Arrays (1.1) - */ - -GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type, - GLsizei stride, const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride, - const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type, - GLsizei stride, const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride, - const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type, - GLsizei stride, const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, GLvoid **params ); - -GLAPI void GLAPIENTRY glArrayElement( GLint i ); - -GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count ); - -GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count, - GLenum type, const GLvoid *indices ); - -GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride, - const GLvoid *pointer ); - -/* - * Lighting - */ - -GLAPI void GLAPIENTRY glShadeModel( GLenum mode ); - -GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, GLint param ); -GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum pname, - const GLfloat *params ); -GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname, - const GLint *params ); - -GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname, - GLfloat *params ); -GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param ); -GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat *params ); -GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const GLint *params ); - -GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glMateriali( GLenum face, GLenum pname, GLint param ); -GLAPI void GLAPIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params ); -GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params ); - -GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params ); -GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params ); - -GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode ); - - -/* - * Raster functions - */ - -GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor ); - -GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLsizei mapsize, - const GLfloat *values ); -GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLsizei mapsize, - const GLuint *values ); -GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLsizei mapsize, - const GLushort *values ); - -GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values ); -GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values ); -GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values ); - -GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height, - GLfloat xorig, GLfloat yorig, - GLfloat xmove, GLfloat ymove, - const GLubyte *bitmap ); - -GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y, - GLsizei width, GLsizei height, - GLenum format, GLenum type, - GLvoid *pixels ); - -GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height, - GLenum format, GLenum type, - const GLvoid *pixels ); - -GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y, - GLsizei width, GLsizei height, - GLenum type ); - -/* - * Stenciling - */ - -GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask ); - -GLAPI void GLAPIENTRY glStencilMask( GLuint mask ); - -GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass ); - -GLAPI void GLAPIENTRY glClearStencil( GLint s ); - - - -/* - * Texture mapping - */ - -GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param ); -GLAPI void GLAPIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params ); -GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params ); -GLAPI void GLAPIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params ); - -GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params ); -GLAPI void GLAPIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params ); -GLAPI void GLAPIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params ); - - -GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params ); -GLAPI void GLAPIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params ); - -GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ); -GLAPI void GLAPIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params ); - - -GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname, - const GLfloat *params ); -GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname, - const GLint *params ); - -GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target, - GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target, - GLenum pname, GLint *params ); - -GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint level, - GLenum pname, GLfloat *params ); -GLAPI void GLAPIENTRY glGetTexLevelParameteriv( GLenum target, GLint level, - GLenum pname, GLint *params ); - - -GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level, - GLint internalFormat, - GLsizei width, GLint border, - GLenum format, GLenum type, - const GLvoid *pixels ); - -GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level, - GLint internalFormat, - GLsizei width, GLsizei height, - GLint border, GLenum format, GLenum type, - const GLvoid *pixels ); - -GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level, - GLenum format, GLenum type, - GLvoid *pixels ); - - -/* 1.1 functions */ - -GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures ); - -GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint *textures); - -GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture ); - -GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n, - const GLuint *textures, - const GLclampf *priorities ); - -GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n, - const GLuint *textures, - GLboolean *residences ); - -GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture ); - - -GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level, - GLint xoffset, - GLsizei width, GLenum format, - GLenum type, const GLvoid *pixels ); - - -GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level, - GLint xoffset, GLint yoffset, - GLsizei width, GLsizei height, - GLenum format, GLenum type, - const GLvoid *pixels ); - - -GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level, - GLenum internalformat, - GLint x, GLint y, - GLsizei width, GLint border ); - - -GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level, - GLenum internalformat, - GLint x, GLint y, - GLsizei width, GLsizei height, - GLint border ); - - -GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint level, - GLint xoffset, GLint x, GLint y, - GLsizei width ); - - -GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level, - GLint xoffset, GLint yoffset, - GLint x, GLint y, - GLsizei width, GLsizei height ); - - -/* - * Evaluators - */ - -GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2, - GLint stride, - GLint order, const GLdouble *points ); -GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2, - GLint stride, - GLint order, const GLfloat *points ); - -GLAPI void GLAPIENTRY glMap2d( GLenum target, - GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, - GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, - const GLdouble *points ); -GLAPI void GLAPIENTRY glMap2f( GLenum target, - GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, - GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, - const GLfloat *points ); - -GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v ); -GLAPI void GLAPIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v ); -GLAPI void GLAPIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v ); - -GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u ); -GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u ); - -GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u ); -GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u ); - -GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v ); -GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v ); - -GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u ); -GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u ); - -GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 ); -GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 ); - -GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, - GLint vn, GLdouble v1, GLdouble v2 ); -GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2, - GLint vn, GLfloat v1, GLfloat v2 ); - -GLAPI void GLAPIENTRY glEvalPoint1( GLint i ); - -GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j ); - -GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 ); - -GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); - - -/* - * Fog - */ - -GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param ); - -GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params ); - -GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params ); - - -/* - * Selection and Feedback - */ - -GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ); - -GLAPI void GLAPIENTRY glPassThrough( GLfloat token ); - -GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer ); - -GLAPI void GLAPIENTRY glInitNames( void ); - -GLAPI void GLAPIENTRY glLoadName( GLuint name ); - -GLAPI void GLAPIENTRY glPushName( GLuint name ); - -GLAPI void GLAPIENTRY glPopName( void ); - - - -/* - * OpenGL 1.2 - */ - -#define GL_RESCALE_NORMAL 0x803A -#define GL_CLAMP_TO_EDGE 0x812F -#define GL_MAX_ELEMENTS_VERTICES 0x80E8 -#define GL_MAX_ELEMENTS_INDICES 0x80E9 -#define GL_BGR 0x80E0 -#define GL_BGRA 0x80E1 -#define GL_UNSIGNED_BYTE_3_3_2 0x8032 -#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 -#define GL_UNSIGNED_SHORT_5_6_5 0x8363 -#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 -#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 -#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 -#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 -#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 -#define GL_UNSIGNED_INT_8_8_8_8 0x8035 -#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 -#define GL_UNSIGNED_INT_10_10_10_2 0x8036 -#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 -#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 -#define GL_SINGLE_COLOR 0x81F9 -#define GL_SEPARATE_SPECULAR_COLOR 0x81FA -#define GL_TEXTURE_MIN_LOD 0x813A -#define GL_TEXTURE_MAX_LOD 0x813B -#define GL_TEXTURE_BASE_LEVEL 0x813C -#define GL_TEXTURE_MAX_LEVEL 0x813D -#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 -#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 -#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 -#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 -#define GL_ALIASED_POINT_SIZE_RANGE 0x846D -#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E -#define GL_PACK_SKIP_IMAGES 0x806B -#define GL_PACK_IMAGE_HEIGHT 0x806C -#define GL_UNPACK_SKIP_IMAGES 0x806D -#define GL_UNPACK_IMAGE_HEIGHT 0x806E -#define GL_TEXTURE_3D 0x806F -#define GL_PROXY_TEXTURE_3D 0x8070 -#define GL_TEXTURE_DEPTH 0x8071 -#define GL_TEXTURE_WRAP_R 0x8072 -#define GL_MAX_3D_TEXTURE_SIZE 0x8073 -#define GL_TEXTURE_BINDING_3D 0x806A - -GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start, - GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); - -GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level, - GLint internalFormat, - GLsizei width, GLsizei height, - GLsizei depth, GLint border, - GLenum format, GLenum type, - const GLvoid *pixels ); - -GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level, - GLint xoffset, GLint yoffset, - GLint zoffset, GLsizei width, - GLsizei height, GLsizei depth, - GLenum format, - GLenum type, const GLvoid *pixels); - -GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level, - GLint xoffset, GLint yoffset, - GLint zoffset, GLint x, - GLint y, GLsizei width, - GLsizei height ); - -typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); -typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); - - -/* - * GL_ARB_imaging - */ - -#define GL_CONSTANT_COLOR 0x8001 -#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 -#define GL_CONSTANT_ALPHA 0x8003 -#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 -#define GL_COLOR_TABLE 0x80D0 -#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 -#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 -#define GL_PROXY_COLOR_TABLE 0x80D3 -#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 -#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 -#define GL_COLOR_TABLE_SCALE 0x80D6 -#define GL_COLOR_TABLE_BIAS 0x80D7 -#define GL_COLOR_TABLE_FORMAT 0x80D8 -#define GL_COLOR_TABLE_WIDTH 0x80D9 -#define GL_COLOR_TABLE_RED_SIZE 0x80DA -#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB -#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC -#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD -#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE -#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF -#define GL_CONVOLUTION_1D 0x8010 -#define GL_CONVOLUTION_2D 0x8011 -#define GL_SEPARABLE_2D 0x8012 -#define GL_CONVOLUTION_BORDER_MODE 0x8013 -#define GL_CONVOLUTION_FILTER_SCALE 0x8014 -#define GL_CONVOLUTION_FILTER_BIAS 0x8015 -#define GL_REDUCE 0x8016 -#define GL_CONVOLUTION_FORMAT 0x8017 -#define GL_CONVOLUTION_WIDTH 0x8018 -#define GL_CONVOLUTION_HEIGHT 0x8019 -#define GL_MAX_CONVOLUTION_WIDTH 0x801A -#define GL_MAX_CONVOLUTION_HEIGHT 0x801B -#define GL_POST_CONVOLUTION_RED_SCALE 0x801C -#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D -#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E -#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F -#define GL_POST_CONVOLUTION_RED_BIAS 0x8020 -#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 -#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 -#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 -#define GL_CONSTANT_BORDER 0x8151 -#define GL_REPLICATE_BORDER 0x8153 -#define GL_CONVOLUTION_BORDER_COLOR 0x8154 -#define GL_COLOR_MATRIX 0x80B1 -#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 -#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 -#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 -#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 -#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 -#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 -#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 -#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 -#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA -#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB -#define GL_HISTOGRAM 0x8024 -#define GL_PROXY_HISTOGRAM 0x8025 -#define GL_HISTOGRAM_WIDTH 0x8026 -#define GL_HISTOGRAM_FORMAT 0x8027 -#define GL_HISTOGRAM_RED_SIZE 0x8028 -#define GL_HISTOGRAM_GREEN_SIZE 0x8029 -#define GL_HISTOGRAM_BLUE_SIZE 0x802A -#define GL_HISTOGRAM_ALPHA_SIZE 0x802B -#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C -#define GL_HISTOGRAM_SINK 0x802D -#define GL_MINMAX 0x802E -#define GL_MINMAX_FORMAT 0x802F -#define GL_MINMAX_SINK 0x8030 -#define GL_TABLE_TOO_LARGE 0x8031 -#define GL_BLEND_EQUATION 0x8009 -#define GL_MIN 0x8007 -#define GL_MAX 0x8008 -#define GL_FUNC_ADD 0x8006 -#define GL_FUNC_SUBTRACT 0x800A -#define GL_FUNC_REVERSE_SUBTRACT 0x800B -#define GL_BLEND_COLOR 0x8005 - - -GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalformat, - GLsizei width, GLenum format, - GLenum type, const GLvoid *table ); - -GLAPI void GLAPIENTRY glColorSubTable( GLenum target, - GLsizei start, GLsizei count, - GLenum format, GLenum type, - const GLvoid *data ); - -GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum pname, - const GLint *params); - -GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum pname, - const GLfloat *params); - -GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei start, - GLint x, GLint y, GLsizei width ); - -GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum internalformat, - GLint x, GLint y, GLsizei width ); - -GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format, - GLenum type, GLvoid *table ); - -GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname, - GLfloat *params ); - -GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glBlendEquation( GLenum mode ); - -GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green, - GLclampf blue, GLclampf alpha ); - -GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width, - GLenum internalformat, GLboolean sink ); - -GLAPI void GLAPIENTRY glResetHistogram( GLenum target ); - -GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset, - GLenum format, GLenum type, - GLvoid *values ); - -GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname, - GLfloat *params ); - -GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat, - GLboolean sink ); - -GLAPI void GLAPIENTRY glResetMinmax( GLenum target ); - -GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset, - GLenum format, GLenum types, - GLvoid *values ); - -GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname, - GLfloat *params ); - -GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target, - GLenum internalformat, GLsizei width, GLenum format, GLenum type, - const GLvoid *image ); - -GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target, - GLenum internalformat, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid *image ); - -GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum pname, - GLfloat params ); - -GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, GLenum pname, - const GLfloat *params ); - -GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum pname, - GLint params ); - -GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, GLenum pname, - const GLint *params ); - -GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target, - GLenum internalformat, GLint x, GLint y, GLsizei width ); - -GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target, - GLenum internalformat, GLint x, GLint y, GLsizei width, - GLsizei height); - -GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format, - GLenum type, GLvoid *image ); - -GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname, - GLfloat *params ); - -GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target, - GLenum internalformat, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid *row, const GLvoid *column ); - -GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format, - GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); - - - - -/* - * OpenGL 1.3 - */ - -/* multitexture */ -#define GL_TEXTURE0 0x84C0 -#define GL_TEXTURE1 0x84C1 -#define GL_TEXTURE2 0x84C2 -#define GL_TEXTURE3 0x84C3 -#define GL_TEXTURE4 0x84C4 -#define GL_TEXTURE5 0x84C5 -#define GL_TEXTURE6 0x84C6 -#define GL_TEXTURE7 0x84C7 -#define GL_TEXTURE8 0x84C8 -#define GL_TEXTURE9 0x84C9 -#define GL_TEXTURE10 0x84CA -#define GL_TEXTURE11 0x84CB -#define GL_TEXTURE12 0x84CC -#define GL_TEXTURE13 0x84CD -#define GL_TEXTURE14 0x84CE -#define GL_TEXTURE15 0x84CF -#define GL_TEXTURE16 0x84D0 -#define GL_TEXTURE17 0x84D1 -#define GL_TEXTURE18 0x84D2 -#define GL_TEXTURE19 0x84D3 -#define GL_TEXTURE20 0x84D4 -#define GL_TEXTURE21 0x84D5 -#define GL_TEXTURE22 0x84D6 -#define GL_TEXTURE23 0x84D7 -#define GL_TEXTURE24 0x84D8 -#define GL_TEXTURE25 0x84D9 -#define GL_TEXTURE26 0x84DA -#define GL_TEXTURE27 0x84DB -#define GL_TEXTURE28 0x84DC -#define GL_TEXTURE29 0x84DD -#define GL_TEXTURE30 0x84DE -#define GL_TEXTURE31 0x84DF -#define GL_ACTIVE_TEXTURE 0x84E0 -#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 -#define GL_MAX_TEXTURE_UNITS 0x84E2 -/* texture_cube_map */ -#define GL_NORMAL_MAP 0x8511 -#define GL_REFLECTION_MAP 0x8512 -#define GL_TEXTURE_CUBE_MAP 0x8513 -#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A -#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B -#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C -/* texture_compression */ -#define GL_COMPRESSED_ALPHA 0x84E9 -#define GL_COMPRESSED_LUMINANCE 0x84EA -#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB -#define GL_COMPRESSED_INTENSITY 0x84EC -#define GL_COMPRESSED_RGB 0x84ED -#define GL_COMPRESSED_RGBA 0x84EE -#define GL_TEXTURE_COMPRESSION_HINT 0x84EF -#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 -#define GL_TEXTURE_COMPRESSED 0x86A1 -#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 -#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 -/* multisample */ -#define GL_MULTISAMPLE 0x809D -#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E -#define GL_SAMPLE_ALPHA_TO_ONE 0x809F -#define GL_SAMPLE_COVERAGE 0x80A0 -#define GL_SAMPLE_BUFFERS 0x80A8 -#define GL_SAMPLES 0x80A9 -#define GL_SAMPLE_COVERAGE_VALUE 0x80AA -#define GL_SAMPLE_COVERAGE_INVERT 0x80AB -#define GL_MULTISAMPLE_BIT 0x20000000 -/* transpose_matrix */ -#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 -#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 -#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 -#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 -/* texture_env_combine */ -#define GL_COMBINE 0x8570 -#define GL_COMBINE_RGB 0x8571 -#define GL_COMBINE_ALPHA 0x8572 -#define GL_SOURCE0_RGB 0x8580 -#define GL_SOURCE1_RGB 0x8581 -#define GL_SOURCE2_RGB 0x8582 -#define GL_SOURCE0_ALPHA 0x8588 -#define GL_SOURCE1_ALPHA 0x8589 -#define GL_SOURCE2_ALPHA 0x858A -#define GL_OPERAND0_RGB 0x8590 -#define GL_OPERAND1_RGB 0x8591 -#define GL_OPERAND2_RGB 0x8592 -#define GL_OPERAND0_ALPHA 0x8598 -#define GL_OPERAND1_ALPHA 0x8599 -#define GL_OPERAND2_ALPHA 0x859A -#define GL_RGB_SCALE 0x8573 -#define GL_ADD_SIGNED 0x8574 -#define GL_INTERPOLATE 0x8575 -#define GL_SUBTRACT 0x84E7 -#define GL_CONSTANT 0x8576 -#define GL_PRIMARY_COLOR 0x8577 -#define GL_PREVIOUS 0x8578 -/* texture_env_dot3 */ -#define GL_DOT3_RGB 0x86AE -#define GL_DOT3_RGBA 0x86AF -/* texture_border_clamp */ -#define GL_CLAMP_TO_BORDER 0x812D - -GLAPI void GLAPIENTRY glActiveTexture( GLenum texture ); - -GLAPI void GLAPIENTRY glClientActiveTexture( GLenum texture ); - -GLAPI void GLAPIENTRY glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glGetCompressedTexImage( GLenum target, GLint lod, GLvoid *img ); - -GLAPI void GLAPIENTRY glMultiTexCoord1d( GLenum target, GLdouble s ); - -GLAPI void GLAPIENTRY glMultiTexCoord1dv( GLenum target, const GLdouble *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord1f( GLenum target, GLfloat s ); - -GLAPI void GLAPIENTRY glMultiTexCoord1fv( GLenum target, const GLfloat *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord1i( GLenum target, GLint s ); - -GLAPI void GLAPIENTRY glMultiTexCoord1iv( GLenum target, const GLint *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord1s( GLenum target, GLshort s ); - -GLAPI void GLAPIENTRY glMultiTexCoord1sv( GLenum target, const GLshort *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t ); - -GLAPI void GLAPIENTRY glMultiTexCoord2dv( GLenum target, const GLdouble *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t ); - -GLAPI void GLAPIENTRY glMultiTexCoord2fv( GLenum target, const GLfloat *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord2i( GLenum target, GLint s, GLint t ); - -GLAPI void GLAPIENTRY glMultiTexCoord2iv( GLenum target, const GLint *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord2s( GLenum target, GLshort s, GLshort t ); - -GLAPI void GLAPIENTRY glMultiTexCoord2sv( GLenum target, const GLshort *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r ); - -GLAPI void GLAPIENTRY glMultiTexCoord3dv( GLenum target, const GLdouble *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r ); - -GLAPI void GLAPIENTRY glMultiTexCoord3fv( GLenum target, const GLfloat *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r ); - -GLAPI void GLAPIENTRY glMultiTexCoord3iv( GLenum target, const GLint *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r ); - -GLAPI void GLAPIENTRY glMultiTexCoord3sv( GLenum target, const GLshort *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); - -GLAPI void GLAPIENTRY glMultiTexCoord4dv( GLenum target, const GLdouble *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); - -GLAPI void GLAPIENTRY glMultiTexCoord4fv( GLenum target, const GLfloat *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q ); - -GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); - -GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v ); - - -GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] ); - -GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] ); - -GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] ); - -GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] ); - -GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert ); - - -typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture); -typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img); - - - -/* - * GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1) - */ -#ifndef GL_ARB_multitexture -#define GL_ARB_multitexture 1 - -#define GL_TEXTURE0_ARB 0x84C0 -#define GL_TEXTURE1_ARB 0x84C1 -#define GL_TEXTURE2_ARB 0x84C2 -#define GL_TEXTURE3_ARB 0x84C3 -#define GL_TEXTURE4_ARB 0x84C4 -#define GL_TEXTURE5_ARB 0x84C5 -#define GL_TEXTURE6_ARB 0x84C6 -#define GL_TEXTURE7_ARB 0x84C7 -#define GL_TEXTURE8_ARB 0x84C8 -#define GL_TEXTURE9_ARB 0x84C9 -#define GL_TEXTURE10_ARB 0x84CA -#define GL_TEXTURE11_ARB 0x84CB -#define GL_TEXTURE12_ARB 0x84CC -#define GL_TEXTURE13_ARB 0x84CD -#define GL_TEXTURE14_ARB 0x84CE -#define GL_TEXTURE15_ARB 0x84CF -#define GL_TEXTURE16_ARB 0x84D0 -#define GL_TEXTURE17_ARB 0x84D1 -#define GL_TEXTURE18_ARB 0x84D2 -#define GL_TEXTURE19_ARB 0x84D3 -#define GL_TEXTURE20_ARB 0x84D4 -#define GL_TEXTURE21_ARB 0x84D5 -#define GL_TEXTURE22_ARB 0x84D6 -#define GL_TEXTURE23_ARB 0x84D7 -#define GL_TEXTURE24_ARB 0x84D8 -#define GL_TEXTURE25_ARB 0x84D9 -#define GL_TEXTURE26_ARB 0x84DA -#define GL_TEXTURE27_ARB 0x84DB -#define GL_TEXTURE28_ARB 0x84DC -#define GL_TEXTURE29_ARB 0x84DD -#define GL_TEXTURE30_ARB 0x84DE -#define GL_TEXTURE31_ARB 0x84DF -#define GL_ACTIVE_TEXTURE_ARB 0x84E0 -#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 -#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 - -GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture); -GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture); -GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble s); -GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const GLdouble *v); -GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum target, GLfloat s); -GLAPI void GLAPIENTRY glMultiTexCoord1fvARB(GLenum target, const GLfloat *v); -GLAPI void GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s); -GLAPI void GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v); -GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort s); -GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const GLshort *v); -GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t); -GLAPI void GLAPIENTRY glMultiTexCoord2dvARB(GLenum target, const GLdouble *v); -GLAPI void GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t); -GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const GLfloat *v); -GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum target, GLint s, GLint t); -GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v); -GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t); -GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v); -GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r); -GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v); -GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r); -GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v); -GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r); -GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v); -GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r); -GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v); -GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); -GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v); -GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); -GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v); -GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q); -GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v); -GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); -GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v); - -typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture); -typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); - -#endif /* GL_ARB_multitexture */ - - - -/* - * Define this token if you want "old-style" header file behaviour (extensions - * defined in gl.h). Otherwise, extensions will be included from glext.h. - */ -#if defined(GL_GLEXT_LEGACY) - -/* All extensions that used to be here are now found in glext.h */ - -#else /* GL_GLEXT_LEGACY */ - -#include <GL/glext.h> - -#endif /* GL_GLEXT_LEGACY */ - - - -/* - * ???. GL_MESA_packed_depth_stencil - * XXX obsolete - */ -#ifndef GL_MESA_packed_depth_stencil -#define GL_MESA_packed_depth_stencil 1 - -#define GL_DEPTH_STENCIL_MESA 0x8750 -#define GL_UNSIGNED_INT_24_8_MESA 0x8751 -#define GL_UNSIGNED_INT_8_24_REV_MESA 0x8752 -#define GL_UNSIGNED_SHORT_15_1_MESA 0x8753 -#define GL_UNSIGNED_SHORT_1_15_REV_MESA 0x8754 - -#endif /* GL_MESA_packed_depth_stencil */ - - -#ifndef GL_ATI_blend_equation_separate -#define GL_ATI_blend_equation_separate 1 - -#define GL_ALPHA_BLEND_EQUATION_ATI 0x883D - -GLAPI void GLAPIENTRY glBlendEquationSeparateATI( GLenum modeRGB, GLenum modeA ); -typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEATIPROC) (GLenum modeRGB, GLenum modeA); - -#endif /* GL_ATI_blend_equation_separate */ - - -/* GL_OES_EGL_image */ -#if !defined(GL_OES_EGL_image) && !defined(GL_EXT_EGL_image_storage) -typedef void* GLeglImageOES; -#endif - -#ifndef GL_OES_EGL_image -#define GL_OES_EGL_image 1 -#ifdef GL_GLEXT_PROTOTYPES -GLAPI void APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); -GLAPI void APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); -#endif -typedef void (APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); -typedef void (APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); -#endif - - -#ifdef __cplusplus -} -#endif - -#endif /* __gl_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@gl.h.blob deleted file mode 100644 index b0a501afb0fef32babe42d4a9a03f3c463206541..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12143 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 J`1)?Q`#+E4(KY}8 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h deleted file mode 100644 index 234591bb..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h +++ /dev/null @@ -1,26427 +0,0 @@ -/* -** The OpenGL Extension Wrangler Library -** Copyright (C) 2008-2019, Nigel Stewart <nigels[]users sourceforge net> -** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org> -** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org> -** Copyright (C) 2002, Lev Povalahev -** All rights reserved. -** -** Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are met: -** -** * Redistributions of source code must retain the above copyright notice, -** this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright notice, -** this list of conditions and the following disclaimer in the documentation -** and/or other materials provided with the distribution. -** * The name of the author may be used to endorse or promote products -** derived from this software without specific prior written permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF -** THE POSSIBILITY OF SUCH DAMAGE. -*/ - -/* - * Mesa 3-D graphics library - * Version: 7.0 - * - * Copyright (C) 1999-2007 Brian Paul All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN - * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -/* -** Copyright (c) 2007 The Khronos Group Inc. -** -** Permission is hereby granted, free of charge, to any person obtaining a -** copy of this software and/or associated documentation files (the -** "Materials"), to deal in the Materials without restriction, including -** without limitation the rights to use, copy, modify, merge, publish, -** distribute, sublicense, and/or sell copies of the Materials, and to -** permit persons to whom the Materials are furnished to do so, subject to -** the following conditions: -** -** The above copyright notice and this permission notice shall be included -** in all copies or substantial portions of the Materials. -** -** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. -*/ - -#ifndef __glew_h__ -#define __glew_h__ -#define __GLEW_H__ - -#if defined(__gl_h_) || defined(__GL_H__) || defined(_GL_H) || defined(__X_GL_H) -#error gl.h included before glew.h -#endif -#if defined(__gl2_h_) -#error gl2.h included before glew.h -#endif -#if defined(__gltypes_h_) -#error gltypes.h included before glew.h -#endif -#if defined(__REGAL_H__) -#error Regal.h included before glew.h -#endif -#if defined(__glext_h_) || defined(__GLEXT_H_) || defined(__gl_glext_h_) -#error glext.h included before glew.h -#endif -#if defined(__gl_ATI_h_) -#error glATI.h included before glew.h -#endif - -#define __gl_h_ -#define __gl2_h_ -#define __GL_H__ -#define _GL_H -#define __gltypes_h_ -#define __REGAL_H__ -#define __X_GL_H -#define __glext_h_ -#define __GLEXT_H_ -#define __gl_glext_h_ -#define __gl_ATI_h_ - -#if defined(_WIN32) - -/* - * GLEW does not include <windows.h> to avoid name space pollution. - * GL needs GLAPI and GLAPIENTRY, GLU needs APIENTRY, CALLBACK, and wchar_t - * defined properly. - */ -/* <windef.h> and <gl.h>*/ -#ifdef APIENTRY -# ifndef GLAPIENTRY -# define GLAPIENTRY APIENTRY -# endif -# ifndef GLEWAPIENTRY -# define GLEWAPIENTRY APIENTRY -# endif -#else -#define GLEW_APIENTRY_DEFINED -# if defined(__MINGW32__) || defined(__CYGWIN__) || (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__) -# define APIENTRY __stdcall -# ifndef GLAPIENTRY -# define GLAPIENTRY __stdcall -# endif -# ifndef GLEWAPIENTRY -# define GLEWAPIENTRY __stdcall -# endif -# else -# define APIENTRY -# endif -#endif -#ifndef GLAPI -# if defined(__MINGW32__) || defined(__CYGWIN__) -# define GLAPI extern -# endif -#endif -/* <winnt.h> */ -#ifndef CALLBACK -#define GLEW_CALLBACK_DEFINED -# if defined(__MINGW32__) || defined(__CYGWIN__) -# define CALLBACK __attribute__ ((__stdcall__)) -# elif (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS) -# define CALLBACK __stdcall -# else -# define CALLBACK -# endif -#endif -/* <wingdi.h> and <winnt.h> */ -#ifndef WINGDIAPI -#define GLEW_WINGDIAPI_DEFINED -#define WINGDIAPI __declspec(dllimport) -#endif -/* <ctype.h> */ -#if (defined(_MSC_VER) || defined(__BORLANDC__)) && !defined(_WCHAR_T_DEFINED) -typedef unsigned short wchar_t; -# define _WCHAR_T_DEFINED -#endif -/* <stddef.h> */ -#if !defined(_W64) -# if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && defined(_MSC_VER) && _MSC_VER >= 1300 -# define _W64 __w64 -# else -# define _W64 -# endif -#endif -#if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_) && !defined(__MINGW64__) -# ifdef _WIN64 -typedef __int64 ptrdiff_t; -# else -typedef _W64 int ptrdiff_t; -# endif -# define _PTRDIFF_T_DEFINED -# define _PTRDIFF_T_ -#endif - -#ifndef GLAPI -# if defined(__MINGW32__) || defined(__CYGWIN__) -# define GLAPI extern -# else -# define GLAPI WINGDIAPI -# endif -#endif - -/* - * GLEW_STATIC is defined for static library. - * GLEW_BUILD is defined for building the DLL library. - */ - -#ifdef GLEW_STATIC -# define GLEWAPI extern -#else -# ifdef GLEW_BUILD -# define GLEWAPI extern __declspec(dllexport) -# else -# define GLEWAPI extern __declspec(dllimport) -# endif -#endif - -#else /* _UNIX */ - -/* - * Needed for ptrdiff_t in turn needed by VBO. This is defined by ISO - * C. On my system, this amounts to _3 lines_ of included code, all of - * them pretty much harmless. If you know of a way of detecting 32 vs - * 64 _targets_ at compile time you are free to replace this with - * something that's portable. For now, _this_ is the portable solution. - * (mem, 2004-01-04) - */ - -#if defined(__APPLE__) || defined(__linux__) -# if defined(__cplusplus) -# include <cstddef> -# include <cstdint> -# else -# include <stddef.h> -# include <stdint.h> -# endif -#else - -# include <stddef.h> - -/* SGI MIPSPro doesn't like stdint.h in C++ mode */ -/* ID: 3376260 Solaris 9 has inttypes.h, but not stdint.h */ - -# if (defined(__sgi) || defined(__sun)) && !defined(__GNUC__) -# include <inttypes.h> -# else -# include <stdint.h> -# endif -#endif - -#define GLEW_APIENTRY_DEFINED -#define APIENTRY - -/* - * GLEW_STATIC is defined for static library. - */ - -#ifdef GLEW_STATIC -# define GLEWAPI extern -#else -# if defined(__GNUC__) && __GNUC__>=4 -# define GLEWAPI extern __attribute__ ((visibility("default"))) -# elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) -# define GLEWAPI extern __global -# else -# define GLEWAPI extern -# endif -#endif - -/* <glu.h> */ -#ifndef GLAPI -#define GLAPI extern -#endif - -#endif /* _WIN32 */ - -#ifndef GLAPIENTRY -#define GLAPIENTRY -#endif - -#ifndef GLEWAPIENTRY -#define GLEWAPIENTRY -#endif - -#define GLEW_VAR_EXPORT GLEWAPI -#define GLEW_FUN_EXPORT GLEWAPI - -#ifdef __cplusplus -extern "C" { -#endif - -/* ----------------------------- GL_VERSION_1_1 ---------------------------- */ - -#ifndef GL_VERSION_1_1 -#define GL_VERSION_1_1 1 - -typedef unsigned int GLenum; -typedef unsigned int GLbitfield; -typedef unsigned int GLuint; -typedef int GLint; -typedef int GLsizei; -typedef unsigned char GLboolean; -typedef signed char GLbyte; -typedef short GLshort; -typedef unsigned char GLubyte; -typedef unsigned short GLushort; -typedef unsigned long GLulong; -typedef float GLfloat; -typedef float GLclampf; -typedef double GLdouble; -typedef double GLclampd; -typedef void GLvoid; -#if defined(_MSC_VER) && _MSC_VER < 1400 -typedef __int64 GLint64EXT; -typedef unsigned __int64 GLuint64EXT; -#elif defined(_MSC_VER) || defined(__BORLANDC__) -typedef signed long long GLint64EXT; -typedef unsigned long long GLuint64EXT; -#else -# if defined(__MINGW32__) || defined(__CYGWIN__) -#include <inttypes.h> -# endif -typedef int64_t GLint64EXT; -typedef uint64_t GLuint64EXT; -#endif -typedef GLint64EXT GLint64; -typedef GLuint64EXT GLuint64; -typedef struct __GLsync *GLsync; - -typedef char GLchar; - -typedef void *GLeglImageOES; /* GL_EXT_EGL_image_storage */ - -#define GL_ZERO 0 -#define GL_FALSE 0 -#define GL_LOGIC_OP 0x0BF1 -#define GL_NONE 0 -#define GL_TEXTURE_COMPONENTS 0x1003 -#define GL_NO_ERROR 0 -#define GL_POINTS 0x0000 -#define GL_CURRENT_BIT 0x00000001 -#define GL_TRUE 1 -#define GL_ONE 1 -#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 -#define GL_LINES 0x0001 -#define GL_LINE_LOOP 0x0002 -#define GL_POINT_BIT 0x00000002 -#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 -#define GL_LINE_STRIP 0x0003 -#define GL_LINE_BIT 0x00000004 -#define GL_TRIANGLES 0x0004 -#define GL_TRIANGLE_STRIP 0x0005 -#define GL_TRIANGLE_FAN 0x0006 -#define GL_QUADS 0x0007 -#define GL_QUAD_STRIP 0x0008 -#define GL_POLYGON_BIT 0x00000008 -#define GL_POLYGON 0x0009 -#define GL_POLYGON_STIPPLE_BIT 0x00000010 -#define GL_PIXEL_MODE_BIT 0x00000020 -#define GL_LIGHTING_BIT 0x00000040 -#define GL_FOG_BIT 0x00000080 -#define GL_DEPTH_BUFFER_BIT 0x00000100 -#define GL_ACCUM 0x0100 -#define GL_LOAD 0x0101 -#define GL_RETURN 0x0102 -#define GL_MULT 0x0103 -#define GL_ADD 0x0104 -#define GL_NEVER 0x0200 -#define GL_ACCUM_BUFFER_BIT 0x00000200 -#define GL_LESS 0x0201 -#define GL_EQUAL 0x0202 -#define GL_LEQUAL 0x0203 -#define GL_GREATER 0x0204 -#define GL_NOTEQUAL 0x0205 -#define GL_GEQUAL 0x0206 -#define GL_ALWAYS 0x0207 -#define GL_SRC_COLOR 0x0300 -#define GL_ONE_MINUS_SRC_COLOR 0x0301 -#define GL_SRC_ALPHA 0x0302 -#define GL_ONE_MINUS_SRC_ALPHA 0x0303 -#define GL_DST_ALPHA 0x0304 -#define GL_ONE_MINUS_DST_ALPHA 0x0305 -#define GL_DST_COLOR 0x0306 -#define GL_ONE_MINUS_DST_COLOR 0x0307 -#define GL_SRC_ALPHA_SATURATE 0x0308 -#define GL_STENCIL_BUFFER_BIT 0x00000400 -#define GL_FRONT_LEFT 0x0400 -#define GL_FRONT_RIGHT 0x0401 -#define GL_BACK_LEFT 0x0402 -#define GL_BACK_RIGHT 0x0403 -#define GL_FRONT 0x0404 -#define GL_BACK 0x0405 -#define GL_LEFT 0x0406 -#define GL_RIGHT 0x0407 -#define GL_FRONT_AND_BACK 0x0408 -#define GL_AUX0 0x0409 -#define GL_AUX1 0x040A -#define GL_AUX2 0x040B -#define GL_AUX3 0x040C -#define GL_INVALID_ENUM 0x0500 -#define GL_INVALID_VALUE 0x0501 -#define GL_INVALID_OPERATION 0x0502 -#define GL_STACK_OVERFLOW 0x0503 -#define GL_STACK_UNDERFLOW 0x0504 -#define GL_OUT_OF_MEMORY 0x0505 -#define GL_2D 0x0600 -#define GL_3D 0x0601 -#define GL_3D_COLOR 0x0602 -#define GL_3D_COLOR_TEXTURE 0x0603 -#define GL_4D_COLOR_TEXTURE 0x0604 -#define GL_PASS_THROUGH_TOKEN 0x0700 -#define GL_POINT_TOKEN 0x0701 -#define GL_LINE_TOKEN 0x0702 -#define GL_POLYGON_TOKEN 0x0703 -#define GL_BITMAP_TOKEN 0x0704 -#define GL_DRAW_PIXEL_TOKEN 0x0705 -#define GL_COPY_PIXEL_TOKEN 0x0706 -#define GL_LINE_RESET_TOKEN 0x0707 -#define GL_EXP 0x0800 -#define GL_VIEWPORT_BIT 0x00000800 -#define GL_EXP2 0x0801 -#define GL_CW 0x0900 -#define GL_CCW 0x0901 -#define GL_COEFF 0x0A00 -#define GL_ORDER 0x0A01 -#define GL_DOMAIN 0x0A02 -#define GL_CURRENT_COLOR 0x0B00 -#define GL_CURRENT_INDEX 0x0B01 -#define GL_CURRENT_NORMAL 0x0B02 -#define GL_CURRENT_TEXTURE_COORDS 0x0B03 -#define GL_CURRENT_RASTER_COLOR 0x0B04 -#define GL_CURRENT_RASTER_INDEX 0x0B05 -#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 -#define GL_CURRENT_RASTER_POSITION 0x0B07 -#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 -#define GL_CURRENT_RASTER_DISTANCE 0x0B09 -#define GL_POINT_SMOOTH 0x0B10 -#define GL_POINT_SIZE 0x0B11 -#define GL_POINT_SIZE_RANGE 0x0B12 -#define GL_POINT_SIZE_GRANULARITY 0x0B13 -#define GL_LINE_SMOOTH 0x0B20 -#define GL_LINE_WIDTH 0x0B21 -#define GL_LINE_WIDTH_RANGE 0x0B22 -#define GL_LINE_WIDTH_GRANULARITY 0x0B23 -#define GL_LINE_STIPPLE 0x0B24 -#define GL_LINE_STIPPLE_PATTERN 0x0B25 -#define GL_LINE_STIPPLE_REPEAT 0x0B26 -#define GL_LIST_MODE 0x0B30 -#define GL_MAX_LIST_NESTING 0x0B31 -#define GL_LIST_BASE 0x0B32 -#define GL_LIST_INDEX 0x0B33 -#define GL_POLYGON_MODE 0x0B40 -#define GL_POLYGON_SMOOTH 0x0B41 -#define GL_POLYGON_STIPPLE 0x0B42 -#define GL_EDGE_FLAG 0x0B43 -#define GL_CULL_FACE 0x0B44 -#define GL_CULL_FACE_MODE 0x0B45 -#define GL_FRONT_FACE 0x0B46 -#define GL_LIGHTING 0x0B50 -#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 -#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 -#define GL_LIGHT_MODEL_AMBIENT 0x0B53 -#define GL_SHADE_MODEL 0x0B54 -#define GL_COLOR_MATERIAL_FACE 0x0B55 -#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 -#define GL_COLOR_MATERIAL 0x0B57 -#define GL_FOG 0x0B60 -#define GL_FOG_INDEX 0x0B61 -#define GL_FOG_DENSITY 0x0B62 -#define GL_FOG_START 0x0B63 -#define GL_FOG_END 0x0B64 -#define GL_FOG_MODE 0x0B65 -#define GL_FOG_COLOR 0x0B66 -#define GL_DEPTH_RANGE 0x0B70 -#define GL_DEPTH_TEST 0x0B71 -#define GL_DEPTH_WRITEMASK 0x0B72 -#define GL_DEPTH_CLEAR_VALUE 0x0B73 -#define GL_DEPTH_FUNC 0x0B74 -#define GL_ACCUM_CLEAR_VALUE 0x0B80 -#define GL_STENCIL_TEST 0x0B90 -#define GL_STENCIL_CLEAR_VALUE 0x0B91 -#define GL_STENCIL_FUNC 0x0B92 -#define GL_STENCIL_VALUE_MASK 0x0B93 -#define GL_STENCIL_FAIL 0x0B94 -#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 -#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 -#define GL_STENCIL_REF 0x0B97 -#define GL_STENCIL_WRITEMASK 0x0B98 -#define GL_MATRIX_MODE 0x0BA0 -#define GL_NORMALIZE 0x0BA1 -#define GL_VIEWPORT 0x0BA2 -#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 -#define GL_PROJECTION_STACK_DEPTH 0x0BA4 -#define GL_TEXTURE_STACK_DEPTH 0x0BA5 -#define GL_MODELVIEW_MATRIX 0x0BA6 -#define GL_PROJECTION_MATRIX 0x0BA7 -#define GL_TEXTURE_MATRIX 0x0BA8 -#define GL_ATTRIB_STACK_DEPTH 0x0BB0 -#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 -#define GL_ALPHA_TEST 0x0BC0 -#define GL_ALPHA_TEST_FUNC 0x0BC1 -#define GL_ALPHA_TEST_REF 0x0BC2 -#define GL_DITHER 0x0BD0 -#define GL_BLEND_DST 0x0BE0 -#define GL_BLEND_SRC 0x0BE1 -#define GL_BLEND 0x0BE2 -#define GL_LOGIC_OP_MODE 0x0BF0 -#define GL_INDEX_LOGIC_OP 0x0BF1 -#define GL_COLOR_LOGIC_OP 0x0BF2 -#define GL_AUX_BUFFERS 0x0C00 -#define GL_DRAW_BUFFER 0x0C01 -#define GL_READ_BUFFER 0x0C02 -#define GL_SCISSOR_BOX 0x0C10 -#define GL_SCISSOR_TEST 0x0C11 -#define GL_INDEX_CLEAR_VALUE 0x0C20 -#define GL_INDEX_WRITEMASK 0x0C21 -#define GL_COLOR_CLEAR_VALUE 0x0C22 -#define GL_COLOR_WRITEMASK 0x0C23 -#define GL_INDEX_MODE 0x0C30 -#define GL_RGBA_MODE 0x0C31 -#define GL_DOUBLEBUFFER 0x0C32 -#define GL_STEREO 0x0C33 -#define GL_RENDER_MODE 0x0C40 -#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 -#define GL_POINT_SMOOTH_HINT 0x0C51 -#define GL_LINE_SMOOTH_HINT 0x0C52 -#define GL_POLYGON_SMOOTH_HINT 0x0C53 -#define GL_FOG_HINT 0x0C54 -#define GL_TEXTURE_GEN_S 0x0C60 -#define GL_TEXTURE_GEN_T 0x0C61 -#define GL_TEXTURE_GEN_R 0x0C62 -#define GL_TEXTURE_GEN_Q 0x0C63 -#define GL_PIXEL_MAP_I_TO_I 0x0C70 -#define GL_PIXEL_MAP_S_TO_S 0x0C71 -#define GL_PIXEL_MAP_I_TO_R 0x0C72 -#define GL_PIXEL_MAP_I_TO_G 0x0C73 -#define GL_PIXEL_MAP_I_TO_B 0x0C74 -#define GL_PIXEL_MAP_I_TO_A 0x0C75 -#define GL_PIXEL_MAP_R_TO_R 0x0C76 -#define GL_PIXEL_MAP_G_TO_G 0x0C77 -#define GL_PIXEL_MAP_B_TO_B 0x0C78 -#define GL_PIXEL_MAP_A_TO_A 0x0C79 -#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 -#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 -#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 -#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 -#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 -#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 -#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 -#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 -#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 -#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 -#define GL_UNPACK_SWAP_BYTES 0x0CF0 -#define GL_UNPACK_LSB_FIRST 0x0CF1 -#define GL_UNPACK_ROW_LENGTH 0x0CF2 -#define GL_UNPACK_SKIP_ROWS 0x0CF3 -#define GL_UNPACK_SKIP_PIXELS 0x0CF4 -#define GL_UNPACK_ALIGNMENT 0x0CF5 -#define GL_PACK_SWAP_BYTES 0x0D00 -#define GL_PACK_LSB_FIRST 0x0D01 -#define GL_PACK_ROW_LENGTH 0x0D02 -#define GL_PACK_SKIP_ROWS 0x0D03 -#define GL_PACK_SKIP_PIXELS 0x0D04 -#define GL_PACK_ALIGNMENT 0x0D05 -#define GL_MAP_COLOR 0x0D10 -#define GL_MAP_STENCIL 0x0D11 -#define GL_INDEX_SHIFT 0x0D12 -#define GL_INDEX_OFFSET 0x0D13 -#define GL_RED_SCALE 0x0D14 -#define GL_RED_BIAS 0x0D15 -#define GL_ZOOM_X 0x0D16 -#define GL_ZOOM_Y 0x0D17 -#define GL_GREEN_SCALE 0x0D18 -#define GL_GREEN_BIAS 0x0D19 -#define GL_BLUE_SCALE 0x0D1A -#define GL_BLUE_BIAS 0x0D1B -#define GL_ALPHA_SCALE 0x0D1C -#define GL_ALPHA_BIAS 0x0D1D -#define GL_DEPTH_SCALE 0x0D1E -#define GL_DEPTH_BIAS 0x0D1F -#define GL_MAX_EVAL_ORDER 0x0D30 -#define GL_MAX_LIGHTS 0x0D31 -#define GL_MAX_CLIP_PLANES 0x0D32 -#define GL_MAX_TEXTURE_SIZE 0x0D33 -#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 -#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 -#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 -#define GL_MAX_NAME_STACK_DEPTH 0x0D37 -#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 -#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 -#define GL_MAX_VIEWPORT_DIMS 0x0D3A -#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B -#define GL_SUBPIXEL_BITS 0x0D50 -#define GL_INDEX_BITS 0x0D51 -#define GL_RED_BITS 0x0D52 -#define GL_GREEN_BITS 0x0D53 -#define GL_BLUE_BITS 0x0D54 -#define GL_ALPHA_BITS 0x0D55 -#define GL_DEPTH_BITS 0x0D56 -#define GL_STENCIL_BITS 0x0D57 -#define GL_ACCUM_RED_BITS 0x0D58 -#define GL_ACCUM_GREEN_BITS 0x0D59 -#define GL_ACCUM_BLUE_BITS 0x0D5A -#define GL_ACCUM_ALPHA_BITS 0x0D5B -#define GL_NAME_STACK_DEPTH 0x0D70 -#define GL_AUTO_NORMAL 0x0D80 -#define GL_MAP1_COLOR_4 0x0D90 -#define GL_MAP1_INDEX 0x0D91 -#define GL_MAP1_NORMAL 0x0D92 -#define GL_MAP1_TEXTURE_COORD_1 0x0D93 -#define GL_MAP1_TEXTURE_COORD_2 0x0D94 -#define GL_MAP1_TEXTURE_COORD_3 0x0D95 -#define GL_MAP1_TEXTURE_COORD_4 0x0D96 -#define GL_MAP1_VERTEX_3 0x0D97 -#define GL_MAP1_VERTEX_4 0x0D98 -#define GL_MAP2_COLOR_4 0x0DB0 -#define GL_MAP2_INDEX 0x0DB1 -#define GL_MAP2_NORMAL 0x0DB2 -#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 -#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 -#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 -#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 -#define GL_MAP2_VERTEX_3 0x0DB7 -#define GL_MAP2_VERTEX_4 0x0DB8 -#define GL_MAP1_GRID_DOMAIN 0x0DD0 -#define GL_MAP1_GRID_SEGMENTS 0x0DD1 -#define GL_MAP2_GRID_DOMAIN 0x0DD2 -#define GL_MAP2_GRID_SEGMENTS 0x0DD3 -#define GL_TEXTURE_1D 0x0DE0 -#define GL_TEXTURE_2D 0x0DE1 -#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 -#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 -#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 -#define GL_SELECTION_BUFFER_POINTER 0x0DF3 -#define GL_SELECTION_BUFFER_SIZE 0x0DF4 -#define GL_TEXTURE_WIDTH 0x1000 -#define GL_TRANSFORM_BIT 0x00001000 -#define GL_TEXTURE_HEIGHT 0x1001 -#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 -#define GL_TEXTURE_BORDER_COLOR 0x1004 -#define GL_TEXTURE_BORDER 0x1005 -#define GL_DONT_CARE 0x1100 -#define GL_FASTEST 0x1101 -#define GL_NICEST 0x1102 -#define GL_AMBIENT 0x1200 -#define GL_DIFFUSE 0x1201 -#define GL_SPECULAR 0x1202 -#define GL_POSITION 0x1203 -#define GL_SPOT_DIRECTION 0x1204 -#define GL_SPOT_EXPONENT 0x1205 -#define GL_SPOT_CUTOFF 0x1206 -#define GL_CONSTANT_ATTENUATION 0x1207 -#define GL_LINEAR_ATTENUATION 0x1208 -#define GL_QUADRATIC_ATTENUATION 0x1209 -#define GL_COMPILE 0x1300 -#define GL_COMPILE_AND_EXECUTE 0x1301 -#define GL_BYTE 0x1400 -#define GL_UNSIGNED_BYTE 0x1401 -#define GL_SHORT 0x1402 -#define GL_UNSIGNED_SHORT 0x1403 -#define GL_INT 0x1404 -#define GL_UNSIGNED_INT 0x1405 -#define GL_FLOAT 0x1406 -#define GL_2_BYTES 0x1407 -#define GL_3_BYTES 0x1408 -#define GL_4_BYTES 0x1409 -#define GL_DOUBLE 0x140A -#define GL_CLEAR 0x1500 -#define GL_AND 0x1501 -#define GL_AND_REVERSE 0x1502 -#define GL_COPY 0x1503 -#define GL_AND_INVERTED 0x1504 -#define GL_NOOP 0x1505 -#define GL_XOR 0x1506 -#define GL_OR 0x1507 -#define GL_NOR 0x1508 -#define GL_EQUIV 0x1509 -#define GL_INVERT 0x150A -#define GL_OR_REVERSE 0x150B -#define GL_COPY_INVERTED 0x150C -#define GL_OR_INVERTED 0x150D -#define GL_NAND 0x150E -#define GL_SET 0x150F -#define GL_EMISSION 0x1600 -#define GL_SHININESS 0x1601 -#define GL_AMBIENT_AND_DIFFUSE 0x1602 -#define GL_COLOR_INDEXES 0x1603 -#define GL_MODELVIEW 0x1700 -#define GL_PROJECTION 0x1701 -#define GL_TEXTURE 0x1702 -#define GL_COLOR 0x1800 -#define GL_DEPTH 0x1801 -#define GL_STENCIL 0x1802 -#define GL_COLOR_INDEX 0x1900 -#define GL_STENCIL_INDEX 0x1901 -#define GL_DEPTH_COMPONENT 0x1902 -#define GL_RED 0x1903 -#define GL_GREEN 0x1904 -#define GL_BLUE 0x1905 -#define GL_ALPHA 0x1906 -#define GL_RGB 0x1907 -#define GL_RGBA 0x1908 -#define GL_LUMINANCE 0x1909 -#define GL_LUMINANCE_ALPHA 0x190A -#define GL_BITMAP 0x1A00 -#define GL_POINT 0x1B00 -#define GL_LINE 0x1B01 -#define GL_FILL 0x1B02 -#define GL_RENDER 0x1C00 -#define GL_FEEDBACK 0x1C01 -#define GL_SELECT 0x1C02 -#define GL_FLAT 0x1D00 -#define GL_SMOOTH 0x1D01 -#define GL_KEEP 0x1E00 -#define GL_REPLACE 0x1E01 -#define GL_INCR 0x1E02 -#define GL_DECR 0x1E03 -#define GL_VENDOR 0x1F00 -#define GL_RENDERER 0x1F01 -#define GL_VERSION 0x1F02 -#define GL_EXTENSIONS 0x1F03 -#define GL_S 0x2000 -#define GL_ENABLE_BIT 0x00002000 -#define GL_T 0x2001 -#define GL_R 0x2002 -#define GL_Q 0x2003 -#define GL_MODULATE 0x2100 -#define GL_DECAL 0x2101 -#define GL_TEXTURE_ENV_MODE 0x2200 -#define GL_TEXTURE_ENV_COLOR 0x2201 -#define GL_TEXTURE_ENV 0x2300 -#define GL_EYE_LINEAR 0x2400 -#define GL_OBJECT_LINEAR 0x2401 -#define GL_SPHERE_MAP 0x2402 -#define GL_TEXTURE_GEN_MODE 0x2500 -#define GL_OBJECT_PLANE 0x2501 -#define GL_EYE_PLANE 0x2502 -#define GL_NEAREST 0x2600 -#define GL_LINEAR 0x2601 -#define GL_NEAREST_MIPMAP_NEAREST 0x2700 -#define GL_LINEAR_MIPMAP_NEAREST 0x2701 -#define GL_NEAREST_MIPMAP_LINEAR 0x2702 -#define GL_LINEAR_MIPMAP_LINEAR 0x2703 -#define GL_TEXTURE_MAG_FILTER 0x2800 -#define GL_TEXTURE_MIN_FILTER 0x2801 -#define GL_TEXTURE_WRAP_S 0x2802 -#define GL_TEXTURE_WRAP_T 0x2803 -#define GL_CLAMP 0x2900 -#define GL_REPEAT 0x2901 -#define GL_POLYGON_OFFSET_UNITS 0x2A00 -#define GL_POLYGON_OFFSET_POINT 0x2A01 -#define GL_POLYGON_OFFSET_LINE 0x2A02 -#define GL_R3_G3_B2 0x2A10 -#define GL_V2F 0x2A20 -#define GL_V3F 0x2A21 -#define GL_C4UB_V2F 0x2A22 -#define GL_C4UB_V3F 0x2A23 -#define GL_C3F_V3F 0x2A24 -#define GL_N3F_V3F 0x2A25 -#define GL_C4F_N3F_V3F 0x2A26 -#define GL_T2F_V3F 0x2A27 -#define GL_T4F_V4F 0x2A28 -#define GL_T2F_C4UB_V3F 0x2A29 -#define GL_T2F_C3F_V3F 0x2A2A -#define GL_T2F_N3F_V3F 0x2A2B -#define GL_T2F_C4F_N3F_V3F 0x2A2C -#define GL_T4F_C4F_N3F_V4F 0x2A2D -#define GL_CLIP_PLANE0 0x3000 -#define GL_CLIP_PLANE1 0x3001 -#define GL_CLIP_PLANE2 0x3002 -#define GL_CLIP_PLANE3 0x3003 -#define GL_CLIP_PLANE4 0x3004 -#define GL_CLIP_PLANE5 0x3005 -#define GL_LIGHT0 0x4000 -#define GL_COLOR_BUFFER_BIT 0x00004000 -#define GL_LIGHT1 0x4001 -#define GL_LIGHT2 0x4002 -#define GL_LIGHT3 0x4003 -#define GL_LIGHT4 0x4004 -#define GL_LIGHT5 0x4005 -#define GL_LIGHT6 0x4006 -#define GL_LIGHT7 0x4007 -#define GL_HINT_BIT 0x00008000 -#define GL_POLYGON_OFFSET_FILL 0x8037 -#define GL_POLYGON_OFFSET_FACTOR 0x8038 -#define GL_ALPHA4 0x803B -#define GL_ALPHA8 0x803C -#define GL_ALPHA12 0x803D -#define GL_ALPHA16 0x803E -#define GL_LUMINANCE4 0x803F -#define GL_LUMINANCE8 0x8040 -#define GL_LUMINANCE12 0x8041 -#define GL_LUMINANCE16 0x8042 -#define GL_LUMINANCE4_ALPHA4 0x8043 -#define GL_LUMINANCE6_ALPHA2 0x8044 -#define GL_LUMINANCE8_ALPHA8 0x8045 -#define GL_LUMINANCE12_ALPHA4 0x8046 -#define GL_LUMINANCE12_ALPHA12 0x8047 -#define GL_LUMINANCE16_ALPHA16 0x8048 -#define GL_INTENSITY 0x8049 -#define GL_INTENSITY4 0x804A -#define GL_INTENSITY8 0x804B -#define GL_INTENSITY12 0x804C -#define GL_INTENSITY16 0x804D -#define GL_RGB4 0x804F -#define GL_RGB5 0x8050 -#define GL_RGB8 0x8051 -#define GL_RGB10 0x8052 -#define GL_RGB12 0x8053 -#define GL_RGB16 0x8054 -#define GL_RGBA2 0x8055 -#define GL_RGBA4 0x8056 -#define GL_RGB5_A1 0x8057 -#define GL_RGBA8 0x8058 -#define GL_RGB10_A2 0x8059 -#define GL_RGBA12 0x805A -#define GL_RGBA16 0x805B -#define GL_TEXTURE_RED_SIZE 0x805C -#define GL_TEXTURE_GREEN_SIZE 0x805D -#define GL_TEXTURE_BLUE_SIZE 0x805E -#define GL_TEXTURE_ALPHA_SIZE 0x805F -#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 -#define GL_TEXTURE_INTENSITY_SIZE 0x8061 -#define GL_PROXY_TEXTURE_1D 0x8063 -#define GL_PROXY_TEXTURE_2D 0x8064 -#define GL_TEXTURE_PRIORITY 0x8066 -#define GL_TEXTURE_RESIDENT 0x8067 -#define GL_TEXTURE_BINDING_1D 0x8068 -#define GL_TEXTURE_BINDING_2D 0x8069 -#define GL_VERTEX_ARRAY 0x8074 -#define GL_NORMAL_ARRAY 0x8075 -#define GL_COLOR_ARRAY 0x8076 -#define GL_INDEX_ARRAY 0x8077 -#define GL_TEXTURE_COORD_ARRAY 0x8078 -#define GL_EDGE_FLAG_ARRAY 0x8079 -#define GL_VERTEX_ARRAY_SIZE 0x807A -#define GL_VERTEX_ARRAY_TYPE 0x807B -#define GL_VERTEX_ARRAY_STRIDE 0x807C -#define GL_NORMAL_ARRAY_TYPE 0x807E -#define GL_NORMAL_ARRAY_STRIDE 0x807F -#define GL_COLOR_ARRAY_SIZE 0x8081 -#define GL_COLOR_ARRAY_TYPE 0x8082 -#define GL_COLOR_ARRAY_STRIDE 0x8083 -#define GL_INDEX_ARRAY_TYPE 0x8085 -#define GL_INDEX_ARRAY_STRIDE 0x8086 -#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 -#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 -#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A -#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C -#define GL_VERTEX_ARRAY_POINTER 0x808E -#define GL_NORMAL_ARRAY_POINTER 0x808F -#define GL_COLOR_ARRAY_POINTER 0x8090 -#define GL_INDEX_ARRAY_POINTER 0x8091 -#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 -#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 -#define GL_COLOR_INDEX1_EXT 0x80E2 -#define GL_COLOR_INDEX2_EXT 0x80E3 -#define GL_COLOR_INDEX4_EXT 0x80E4 -#define GL_COLOR_INDEX8_EXT 0x80E5 -#define GL_COLOR_INDEX12_EXT 0x80E6 -#define GL_COLOR_INDEX16_EXT 0x80E7 -#define GL_EVAL_BIT 0x00010000 -#define GL_LIST_BIT 0x00020000 -#define GL_TEXTURE_BIT 0x00040000 -#define GL_SCISSOR_BIT 0x00080000 -#define GL_ALL_ATTRIB_BITS 0x000fffff -#define GL_CLIENT_ALL_ATTRIB_BITS 0xffffffff - -GLAPI void GLAPIENTRY glAccum (GLenum op, GLfloat value); -GLAPI void GLAPIENTRY glAlphaFunc (GLenum func, GLclampf ref); -GLAPI GLboolean GLAPIENTRY glAreTexturesResident (GLsizei n, const GLuint *textures, GLboolean *residences); -GLAPI void GLAPIENTRY glArrayElement (GLint i); -GLAPI void GLAPIENTRY glBegin (GLenum mode); -GLAPI void GLAPIENTRY glBindTexture (GLenum target, GLuint texture); -GLAPI void GLAPIENTRY glBitmap (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap); -GLAPI void GLAPIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor); -GLAPI void GLAPIENTRY glCallList (GLuint list); -GLAPI void GLAPIENTRY glCallLists (GLsizei n, GLenum type, const void *lists); -GLAPI void GLAPIENTRY glClear (GLbitfield mask); -GLAPI void GLAPIENTRY glClearAccum (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -GLAPI void GLAPIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); -GLAPI void GLAPIENTRY glClearDepth (GLclampd depth); -GLAPI void GLAPIENTRY glClearIndex (GLfloat c); -GLAPI void GLAPIENTRY glClearStencil (GLint s); -GLAPI void GLAPIENTRY glClipPlane (GLenum plane, const GLdouble *equation); -GLAPI void GLAPIENTRY glColor3b (GLbyte red, GLbyte green, GLbyte blue); -GLAPI void GLAPIENTRY glColor3bv (const GLbyte *v); -GLAPI void GLAPIENTRY glColor3d (GLdouble red, GLdouble green, GLdouble blue); -GLAPI void GLAPIENTRY glColor3dv (const GLdouble *v); -GLAPI void GLAPIENTRY glColor3f (GLfloat red, GLfloat green, GLfloat blue); -GLAPI void GLAPIENTRY glColor3fv (const GLfloat *v); -GLAPI void GLAPIENTRY glColor3i (GLint red, GLint green, GLint blue); -GLAPI void GLAPIENTRY glColor3iv (const GLint *v); -GLAPI void GLAPIENTRY glColor3s (GLshort red, GLshort green, GLshort blue); -GLAPI void GLAPIENTRY glColor3sv (const GLshort *v); -GLAPI void GLAPIENTRY glColor3ub (GLubyte red, GLubyte green, GLubyte blue); -GLAPI void GLAPIENTRY glColor3ubv (const GLubyte *v); -GLAPI void GLAPIENTRY glColor3ui (GLuint red, GLuint green, GLuint blue); -GLAPI void GLAPIENTRY glColor3uiv (const GLuint *v); -GLAPI void GLAPIENTRY glColor3us (GLushort red, GLushort green, GLushort blue); -GLAPI void GLAPIENTRY glColor3usv (const GLushort *v); -GLAPI void GLAPIENTRY glColor4b (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); -GLAPI void GLAPIENTRY glColor4bv (const GLbyte *v); -GLAPI void GLAPIENTRY glColor4d (GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); -GLAPI void GLAPIENTRY glColor4dv (const GLdouble *v); -GLAPI void GLAPIENTRY glColor4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -GLAPI void GLAPIENTRY glColor4fv (const GLfloat *v); -GLAPI void GLAPIENTRY glColor4i (GLint red, GLint green, GLint blue, GLint alpha); -GLAPI void GLAPIENTRY glColor4iv (const GLint *v); -GLAPI void GLAPIENTRY glColor4s (GLshort red, GLshort green, GLshort blue, GLshort alpha); -GLAPI void GLAPIENTRY glColor4sv (const GLshort *v); -GLAPI void GLAPIENTRY glColor4ub (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); -GLAPI void GLAPIENTRY glColor4ubv (const GLubyte *v); -GLAPI void GLAPIENTRY glColor4ui (GLuint red, GLuint green, GLuint blue, GLuint alpha); -GLAPI void GLAPIENTRY glColor4uiv (const GLuint *v); -GLAPI void GLAPIENTRY glColor4us (GLushort red, GLushort green, GLushort blue, GLushort alpha); -GLAPI void GLAPIENTRY glColor4usv (const GLushort *v); -GLAPI void GLAPIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); -GLAPI void GLAPIENTRY glColorMaterial (GLenum face, GLenum mode); -GLAPI void GLAPIENTRY glColorPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); -GLAPI void GLAPIENTRY glCopyPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); -GLAPI void GLAPIENTRY glCopyTexImage1D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border); -GLAPI void GLAPIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); -GLAPI void GLAPIENTRY glCopyTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); -GLAPI void GLAPIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); -GLAPI void GLAPIENTRY glCullFace (GLenum mode); -GLAPI void GLAPIENTRY glDeleteLists (GLuint list, GLsizei range); -GLAPI void GLAPIENTRY glDeleteTextures (GLsizei n, const GLuint *textures); -GLAPI void GLAPIENTRY glDepthFunc (GLenum func); -GLAPI void GLAPIENTRY glDepthMask (GLboolean flag); -GLAPI void GLAPIENTRY glDepthRange (GLclampd zNear, GLclampd zFar); -GLAPI void GLAPIENTRY glDisable (GLenum cap); -GLAPI void GLAPIENTRY glDisableClientState (GLenum array); -GLAPI void GLAPIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count); -GLAPI void GLAPIENTRY glDrawBuffer (GLenum mode); -GLAPI void GLAPIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const void *indices); -GLAPI void GLAPIENTRY glDrawPixels (GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); -GLAPI void GLAPIENTRY glEdgeFlag (GLboolean flag); -GLAPI void GLAPIENTRY glEdgeFlagPointer (GLsizei stride, const void *pointer); -GLAPI void GLAPIENTRY glEdgeFlagv (const GLboolean *flag); -GLAPI void GLAPIENTRY glEnable (GLenum cap); -GLAPI void GLAPIENTRY glEnableClientState (GLenum array); -GLAPI void GLAPIENTRY glEnd (void); -GLAPI void GLAPIENTRY glEndList (void); -GLAPI void GLAPIENTRY glEvalCoord1d (GLdouble u); -GLAPI void GLAPIENTRY glEvalCoord1dv (const GLdouble *u); -GLAPI void GLAPIENTRY glEvalCoord1f (GLfloat u); -GLAPI void GLAPIENTRY glEvalCoord1fv (const GLfloat *u); -GLAPI void GLAPIENTRY glEvalCoord2d (GLdouble u, GLdouble v); -GLAPI void GLAPIENTRY glEvalCoord2dv (const GLdouble *u); -GLAPI void GLAPIENTRY glEvalCoord2f (GLfloat u, GLfloat v); -GLAPI void GLAPIENTRY glEvalCoord2fv (const GLfloat *u); -GLAPI void GLAPIENTRY glEvalMesh1 (GLenum mode, GLint i1, GLint i2); -GLAPI void GLAPIENTRY glEvalMesh2 (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); -GLAPI void GLAPIENTRY glEvalPoint1 (GLint i); -GLAPI void GLAPIENTRY glEvalPoint2 (GLint i, GLint j); -GLAPI void GLAPIENTRY glFeedbackBuffer (GLsizei size, GLenum type, GLfloat *buffer); -GLAPI void GLAPIENTRY glFinish (void); -GLAPI void GLAPIENTRY glFlush (void); -GLAPI void GLAPIENTRY glFogf (GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glFogfv (GLenum pname, const GLfloat *params); -GLAPI void GLAPIENTRY glFogi (GLenum pname, GLint param); -GLAPI void GLAPIENTRY glFogiv (GLenum pname, const GLint *params); -GLAPI void GLAPIENTRY glFrontFace (GLenum mode); -GLAPI void GLAPIENTRY glFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); -GLAPI GLuint GLAPIENTRY glGenLists (GLsizei range); -GLAPI void GLAPIENTRY glGenTextures (GLsizei n, GLuint *textures); -GLAPI void GLAPIENTRY glGetBooleanv (GLenum pname, GLboolean *params); -GLAPI void GLAPIENTRY glGetClipPlane (GLenum plane, GLdouble *equation); -GLAPI void GLAPIENTRY glGetDoublev (GLenum pname, GLdouble *params); -GLAPI GLenum GLAPIENTRY glGetError (void); -GLAPI void GLAPIENTRY glGetFloatv (GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetIntegerv (GLenum pname, GLint *params); -GLAPI void GLAPIENTRY glGetLightfv (GLenum light, GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetLightiv (GLenum light, GLenum pname, GLint *params); -GLAPI void GLAPIENTRY glGetMapdv (GLenum target, GLenum query, GLdouble *v); -GLAPI void GLAPIENTRY glGetMapfv (GLenum target, GLenum query, GLfloat *v); -GLAPI void GLAPIENTRY glGetMapiv (GLenum target, GLenum query, GLint *v); -GLAPI void GLAPIENTRY glGetMaterialfv (GLenum face, GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetMaterialiv (GLenum face, GLenum pname, GLint *params); -GLAPI void GLAPIENTRY glGetPixelMapfv (GLenum map, GLfloat *values); -GLAPI void GLAPIENTRY glGetPixelMapuiv (GLenum map, GLuint *values); -GLAPI void GLAPIENTRY glGetPixelMapusv (GLenum map, GLushort *values); -GLAPI void GLAPIENTRY glGetPointerv (GLenum pname, void* *params); -GLAPI void GLAPIENTRY glGetPolygonStipple (GLubyte *mask); -GLAPI const GLubyte * GLAPIENTRY glGetString (GLenum name); -GLAPI void GLAPIENTRY glGetTexEnvfv (GLenum target, GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetTexEnviv (GLenum target, GLenum pname, GLint *params); -GLAPI void GLAPIENTRY glGetTexGendv (GLenum coord, GLenum pname, GLdouble *params); -GLAPI void GLAPIENTRY glGetTexGenfv (GLenum coord, GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetTexGeniv (GLenum coord, GLenum pname, GLint *params); -GLAPI void GLAPIENTRY glGetTexImage (GLenum target, GLint level, GLenum format, GLenum type, void *pixels); -GLAPI void GLAPIENTRY glGetTexLevelParameterfv (GLenum target, GLint level, GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetTexLevelParameteriv (GLenum target, GLint level, GLenum pname, GLint *params); -GLAPI void GLAPIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params); -GLAPI void GLAPIENTRY glHint (GLenum target, GLenum mode); -GLAPI void GLAPIENTRY glIndexMask (GLuint mask); -GLAPI void GLAPIENTRY glIndexPointer (GLenum type, GLsizei stride, const void *pointer); -GLAPI void GLAPIENTRY glIndexd (GLdouble c); -GLAPI void GLAPIENTRY glIndexdv (const GLdouble *c); -GLAPI void GLAPIENTRY glIndexf (GLfloat c); -GLAPI void GLAPIENTRY glIndexfv (const GLfloat *c); -GLAPI void GLAPIENTRY glIndexi (GLint c); -GLAPI void GLAPIENTRY glIndexiv (const GLint *c); -GLAPI void GLAPIENTRY glIndexs (GLshort c); -GLAPI void GLAPIENTRY glIndexsv (const GLshort *c); -GLAPI void GLAPIENTRY glIndexub (GLubyte c); -GLAPI void GLAPIENTRY glIndexubv (const GLubyte *c); -GLAPI void GLAPIENTRY glInitNames (void); -GLAPI void GLAPIENTRY glInterleavedArrays (GLenum format, GLsizei stride, const void *pointer); -GLAPI GLboolean GLAPIENTRY glIsEnabled (GLenum cap); -GLAPI GLboolean GLAPIENTRY glIsList (GLuint list); -GLAPI GLboolean GLAPIENTRY glIsTexture (GLuint texture); -GLAPI void GLAPIENTRY glLightModelf (GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glLightModelfv (GLenum pname, const GLfloat *params); -GLAPI void GLAPIENTRY glLightModeli (GLenum pname, GLint param); -GLAPI void GLAPIENTRY glLightModeliv (GLenum pname, const GLint *params); -GLAPI void GLAPIENTRY glLightf (GLenum light, GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glLightfv (GLenum light, GLenum pname, const GLfloat *params); -GLAPI void GLAPIENTRY glLighti (GLenum light, GLenum pname, GLint param); -GLAPI void GLAPIENTRY glLightiv (GLenum light, GLenum pname, const GLint *params); -GLAPI void GLAPIENTRY glLineStipple (GLint factor, GLushort pattern); -GLAPI void GLAPIENTRY glLineWidth (GLfloat width); -GLAPI void GLAPIENTRY glListBase (GLuint base); -GLAPI void GLAPIENTRY glLoadIdentity (void); -GLAPI void GLAPIENTRY glLoadMatrixd (const GLdouble *m); -GLAPI void GLAPIENTRY glLoadMatrixf (const GLfloat *m); -GLAPI void GLAPIENTRY glLoadName (GLuint name); -GLAPI void GLAPIENTRY glLogicOp (GLenum opcode); -GLAPI void GLAPIENTRY glMap1d (GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points); -GLAPI void GLAPIENTRY glMap1f (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points); -GLAPI void GLAPIENTRY glMap2d (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points); -GLAPI void GLAPIENTRY glMap2f (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points); -GLAPI void GLAPIENTRY glMapGrid1d (GLint un, GLdouble u1, GLdouble u2); -GLAPI void GLAPIENTRY glMapGrid1f (GLint un, GLfloat u1, GLfloat u2); -GLAPI void GLAPIENTRY glMapGrid2d (GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2); -GLAPI void GLAPIENTRY glMapGrid2f (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); -GLAPI void GLAPIENTRY glMaterialf (GLenum face, GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glMaterialfv (GLenum face, GLenum pname, const GLfloat *params); -GLAPI void GLAPIENTRY glMateriali (GLenum face, GLenum pname, GLint param); -GLAPI void GLAPIENTRY glMaterialiv (GLenum face, GLenum pname, const GLint *params); -GLAPI void GLAPIENTRY glMatrixMode (GLenum mode); -GLAPI void GLAPIENTRY glMultMatrixd (const GLdouble *m); -GLAPI void GLAPIENTRY glMultMatrixf (const GLfloat *m); -GLAPI void GLAPIENTRY glNewList (GLuint list, GLenum mode); -GLAPI void GLAPIENTRY glNormal3b (GLbyte nx, GLbyte ny, GLbyte nz); -GLAPI void GLAPIENTRY glNormal3bv (const GLbyte *v); -GLAPI void GLAPIENTRY glNormal3d (GLdouble nx, GLdouble ny, GLdouble nz); -GLAPI void GLAPIENTRY glNormal3dv (const GLdouble *v); -GLAPI void GLAPIENTRY glNormal3f (GLfloat nx, GLfloat ny, GLfloat nz); -GLAPI void GLAPIENTRY glNormal3fv (const GLfloat *v); -GLAPI void GLAPIENTRY glNormal3i (GLint nx, GLint ny, GLint nz); -GLAPI void GLAPIENTRY glNormal3iv (const GLint *v); -GLAPI void GLAPIENTRY glNormal3s (GLshort nx, GLshort ny, GLshort nz); -GLAPI void GLAPIENTRY glNormal3sv (const GLshort *v); -GLAPI void GLAPIENTRY glNormalPointer (GLenum type, GLsizei stride, const void *pointer); -GLAPI void GLAPIENTRY glOrtho (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); -GLAPI void GLAPIENTRY glPassThrough (GLfloat token); -GLAPI void GLAPIENTRY glPixelMapfv (GLenum map, GLsizei mapsize, const GLfloat *values); -GLAPI void GLAPIENTRY glPixelMapuiv (GLenum map, GLsizei mapsize, const GLuint *values); -GLAPI void GLAPIENTRY glPixelMapusv (GLenum map, GLsizei mapsize, const GLushort *values); -GLAPI void GLAPIENTRY glPixelStoref (GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glPixelStorei (GLenum pname, GLint param); -GLAPI void GLAPIENTRY glPixelTransferf (GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glPixelTransferi (GLenum pname, GLint param); -GLAPI void GLAPIENTRY glPixelZoom (GLfloat xfactor, GLfloat yfactor); -GLAPI void GLAPIENTRY glPointSize (GLfloat size); -GLAPI void GLAPIENTRY glPolygonMode (GLenum face, GLenum mode); -GLAPI void GLAPIENTRY glPolygonOffset (GLfloat factor, GLfloat units); -GLAPI void GLAPIENTRY glPolygonStipple (const GLubyte *mask); -GLAPI void GLAPIENTRY glPopAttrib (void); -GLAPI void GLAPIENTRY glPopClientAttrib (void); -GLAPI void GLAPIENTRY glPopMatrix (void); -GLAPI void GLAPIENTRY glPopName (void); -GLAPI void GLAPIENTRY glPrioritizeTextures (GLsizei n, const GLuint *textures, const GLclampf *priorities); -GLAPI void GLAPIENTRY glPushAttrib (GLbitfield mask); -GLAPI void GLAPIENTRY glPushClientAttrib (GLbitfield mask); -GLAPI void GLAPIENTRY glPushMatrix (void); -GLAPI void GLAPIENTRY glPushName (GLuint name); -GLAPI void GLAPIENTRY glRasterPos2d (GLdouble x, GLdouble y); -GLAPI void GLAPIENTRY glRasterPos2dv (const GLdouble *v); -GLAPI void GLAPIENTRY glRasterPos2f (GLfloat x, GLfloat y); -GLAPI void GLAPIENTRY glRasterPos2fv (const GLfloat *v); -GLAPI void GLAPIENTRY glRasterPos2i (GLint x, GLint y); -GLAPI void GLAPIENTRY glRasterPos2iv (const GLint *v); -GLAPI void GLAPIENTRY glRasterPos2s (GLshort x, GLshort y); -GLAPI void GLAPIENTRY glRasterPos2sv (const GLshort *v); -GLAPI void GLAPIENTRY glRasterPos3d (GLdouble x, GLdouble y, GLdouble z); -GLAPI void GLAPIENTRY glRasterPos3dv (const GLdouble *v); -GLAPI void GLAPIENTRY glRasterPos3f (GLfloat x, GLfloat y, GLfloat z); -GLAPI void GLAPIENTRY glRasterPos3fv (const GLfloat *v); -GLAPI void GLAPIENTRY glRasterPos3i (GLint x, GLint y, GLint z); -GLAPI void GLAPIENTRY glRasterPos3iv (const GLint *v); -GLAPI void GLAPIENTRY glRasterPos3s (GLshort x, GLshort y, GLshort z); -GLAPI void GLAPIENTRY glRasterPos3sv (const GLshort *v); -GLAPI void GLAPIENTRY glRasterPos4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w); -GLAPI void GLAPIENTRY glRasterPos4dv (const GLdouble *v); -GLAPI void GLAPIENTRY glRasterPos4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w); -GLAPI void GLAPIENTRY glRasterPos4fv (const GLfloat *v); -GLAPI void GLAPIENTRY glRasterPos4i (GLint x, GLint y, GLint z, GLint w); -GLAPI void GLAPIENTRY glRasterPos4iv (const GLint *v); -GLAPI void GLAPIENTRY glRasterPos4s (GLshort x, GLshort y, GLshort z, GLshort w); -GLAPI void GLAPIENTRY glRasterPos4sv (const GLshort *v); -GLAPI void GLAPIENTRY glReadBuffer (GLenum mode); -GLAPI void GLAPIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels); -GLAPI void GLAPIENTRY glRectd (GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2); -GLAPI void GLAPIENTRY glRectdv (const GLdouble *v1, const GLdouble *v2); -GLAPI void GLAPIENTRY glRectf (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); -GLAPI void GLAPIENTRY glRectfv (const GLfloat *v1, const GLfloat *v2); -GLAPI void GLAPIENTRY glRecti (GLint x1, GLint y1, GLint x2, GLint y2); -GLAPI void GLAPIENTRY glRectiv (const GLint *v1, const GLint *v2); -GLAPI void GLAPIENTRY glRects (GLshort x1, GLshort y1, GLshort x2, GLshort y2); -GLAPI void GLAPIENTRY glRectsv (const GLshort *v1, const GLshort *v2); -GLAPI GLint GLAPIENTRY glRenderMode (GLenum mode); -GLAPI void GLAPIENTRY glRotated (GLdouble angle, GLdouble x, GLdouble y, GLdouble z); -GLAPI void GLAPIENTRY glRotatef (GLfloat angle, GLfloat x, GLfloat y, GLfloat z); -GLAPI void GLAPIENTRY glScaled (GLdouble x, GLdouble y, GLdouble z); -GLAPI void GLAPIENTRY glScalef (GLfloat x, GLfloat y, GLfloat z); -GLAPI void GLAPIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height); -GLAPI void GLAPIENTRY glSelectBuffer (GLsizei size, GLuint *buffer); -GLAPI void GLAPIENTRY glShadeModel (GLenum mode); -GLAPI void GLAPIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask); -GLAPI void GLAPIENTRY glStencilMask (GLuint mask); -GLAPI void GLAPIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass); -GLAPI void GLAPIENTRY glTexCoord1d (GLdouble s); -GLAPI void GLAPIENTRY glTexCoord1dv (const GLdouble *v); -GLAPI void GLAPIENTRY glTexCoord1f (GLfloat s); -GLAPI void GLAPIENTRY glTexCoord1fv (const GLfloat *v); -GLAPI void GLAPIENTRY glTexCoord1i (GLint s); -GLAPI void GLAPIENTRY glTexCoord1iv (const GLint *v); -GLAPI void GLAPIENTRY glTexCoord1s (GLshort s); -GLAPI void GLAPIENTRY glTexCoord1sv (const GLshort *v); -GLAPI void GLAPIENTRY glTexCoord2d (GLdouble s, GLdouble t); -GLAPI void GLAPIENTRY glTexCoord2dv (const GLdouble *v); -GLAPI void GLAPIENTRY glTexCoord2f (GLfloat s, GLfloat t); -GLAPI void GLAPIENTRY glTexCoord2fv (const GLfloat *v); -GLAPI void GLAPIENTRY glTexCoord2i (GLint s, GLint t); -GLAPI void GLAPIENTRY glTexCoord2iv (const GLint *v); -GLAPI void GLAPIENTRY glTexCoord2s (GLshort s, GLshort t); -GLAPI void GLAPIENTRY glTexCoord2sv (const GLshort *v); -GLAPI void GLAPIENTRY glTexCoord3d (GLdouble s, GLdouble t, GLdouble r); -GLAPI void GLAPIENTRY glTexCoord3dv (const GLdouble *v); -GLAPI void GLAPIENTRY glTexCoord3f (GLfloat s, GLfloat t, GLfloat r); -GLAPI void GLAPIENTRY glTexCoord3fv (const GLfloat *v); -GLAPI void GLAPIENTRY glTexCoord3i (GLint s, GLint t, GLint r); -GLAPI void GLAPIENTRY glTexCoord3iv (const GLint *v); -GLAPI void GLAPIENTRY glTexCoord3s (GLshort s, GLshort t, GLshort r); -GLAPI void GLAPIENTRY glTexCoord3sv (const GLshort *v); -GLAPI void GLAPIENTRY glTexCoord4d (GLdouble s, GLdouble t, GLdouble r, GLdouble q); -GLAPI void GLAPIENTRY glTexCoord4dv (const GLdouble *v); -GLAPI void GLAPIENTRY glTexCoord4f (GLfloat s, GLfloat t, GLfloat r, GLfloat q); -GLAPI void GLAPIENTRY glTexCoord4fv (const GLfloat *v); -GLAPI void GLAPIENTRY glTexCoord4i (GLint s, GLint t, GLint r, GLint q); -GLAPI void GLAPIENTRY glTexCoord4iv (const GLint *v); -GLAPI void GLAPIENTRY glTexCoord4s (GLshort s, GLshort t, GLshort r, GLshort q); -GLAPI void GLAPIENTRY glTexCoord4sv (const GLshort *v); -GLAPI void GLAPIENTRY glTexCoordPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); -GLAPI void GLAPIENTRY glTexEnvf (GLenum target, GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glTexEnvfv (GLenum target, GLenum pname, const GLfloat *params); -GLAPI void GLAPIENTRY glTexEnvi (GLenum target, GLenum pname, GLint param); -GLAPI void GLAPIENTRY glTexEnviv (GLenum target, GLenum pname, const GLint *params); -GLAPI void GLAPIENTRY glTexGend (GLenum coord, GLenum pname, GLdouble param); -GLAPI void GLAPIENTRY glTexGendv (GLenum coord, GLenum pname, const GLdouble *params); -GLAPI void GLAPIENTRY glTexGenf (GLenum coord, GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glTexGenfv (GLenum coord, GLenum pname, const GLfloat *params); -GLAPI void GLAPIENTRY glTexGeni (GLenum coord, GLenum pname, GLint param); -GLAPI void GLAPIENTRY glTexGeniv (GLenum coord, GLenum pname, const GLint *params); -GLAPI void GLAPIENTRY glTexImage1D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels); -GLAPI void GLAPIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); -GLAPI void GLAPIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param); -GLAPI void GLAPIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params); -GLAPI void GLAPIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param); -GLAPI void GLAPIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params); -GLAPI void GLAPIENTRY glTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); -GLAPI void GLAPIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); -GLAPI void GLAPIENTRY glTranslated (GLdouble x, GLdouble y, GLdouble z); -GLAPI void GLAPIENTRY glTranslatef (GLfloat x, GLfloat y, GLfloat z); -GLAPI void GLAPIENTRY glVertex2d (GLdouble x, GLdouble y); -GLAPI void GLAPIENTRY glVertex2dv (const GLdouble *v); -GLAPI void GLAPIENTRY glVertex2f (GLfloat x, GLfloat y); -GLAPI void GLAPIENTRY glVertex2fv (const GLfloat *v); -GLAPI void GLAPIENTRY glVertex2i (GLint x, GLint y); -GLAPI void GLAPIENTRY glVertex2iv (const GLint *v); -GLAPI void GLAPIENTRY glVertex2s (GLshort x, GLshort y); -GLAPI void GLAPIENTRY glVertex2sv (const GLshort *v); -GLAPI void GLAPIENTRY glVertex3d (GLdouble x, GLdouble y, GLdouble z); -GLAPI void GLAPIENTRY glVertex3dv (const GLdouble *v); -GLAPI void GLAPIENTRY glVertex3f (GLfloat x, GLfloat y, GLfloat z); -GLAPI void GLAPIENTRY glVertex3fv (const GLfloat *v); -GLAPI void GLAPIENTRY glVertex3i (GLint x, GLint y, GLint z); -GLAPI void GLAPIENTRY glVertex3iv (const GLint *v); -GLAPI void GLAPIENTRY glVertex3s (GLshort x, GLshort y, GLshort z); -GLAPI void GLAPIENTRY glVertex3sv (const GLshort *v); -GLAPI void GLAPIENTRY glVertex4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w); -GLAPI void GLAPIENTRY glVertex4dv (const GLdouble *v); -GLAPI void GLAPIENTRY glVertex4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w); -GLAPI void GLAPIENTRY glVertex4fv (const GLfloat *v); -GLAPI void GLAPIENTRY glVertex4i (GLint x, GLint y, GLint z, GLint w); -GLAPI void GLAPIENTRY glVertex4iv (const GLint *v); -GLAPI void GLAPIENTRY glVertex4s (GLshort x, GLshort y, GLshort z, GLshort w); -GLAPI void GLAPIENTRY glVertex4sv (const GLshort *v); -GLAPI void GLAPIENTRY glVertexPointer (GLint size, GLenum type, GLsizei stride, const void *pointer); -GLAPI void GLAPIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height); - -#define GLEW_VERSION_1_1 GLEW_GET_VAR(__GLEW_VERSION_1_1) - -#endif /* GL_VERSION_1_1 */ - -/* ---------------------------------- GLU ---------------------------------- */ - -#ifndef GLEW_NO_GLU -# ifdef __APPLE__ -# include <Availability.h> -# if defined(__IPHONE_OS_VERSION_MIN_REQUIRED) -# define GLEW_NO_GLU -# endif -# endif -#endif - -#ifndef GLEW_NO_GLU -/* this is where we can safely include GLU */ -# if defined(__APPLE__) && defined(__MACH__) -# include <OpenGL/glu.h> -# else -# include <GL/glu.h> -# endif -#endif - -/* ----------------------------- GL_VERSION_1_2 ---------------------------- */ - -#ifndef GL_VERSION_1_2 -#define GL_VERSION_1_2 1 - -#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 -#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 -#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 -#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 -#define GL_UNSIGNED_BYTE_3_3_2 0x8032 -#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 -#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 -#define GL_UNSIGNED_INT_8_8_8_8 0x8035 -#define GL_UNSIGNED_INT_10_10_10_2 0x8036 -#define GL_RESCALE_NORMAL 0x803A -#define GL_TEXTURE_BINDING_3D 0x806A -#define GL_PACK_SKIP_IMAGES 0x806B -#define GL_PACK_IMAGE_HEIGHT 0x806C -#define GL_UNPACK_SKIP_IMAGES 0x806D -#define GL_UNPACK_IMAGE_HEIGHT 0x806E -#define GL_TEXTURE_3D 0x806F -#define GL_PROXY_TEXTURE_3D 0x8070 -#define GL_TEXTURE_DEPTH 0x8071 -#define GL_TEXTURE_WRAP_R 0x8072 -#define GL_MAX_3D_TEXTURE_SIZE 0x8073 -#define GL_BGR 0x80E0 -#define GL_BGRA 0x80E1 -#define GL_MAX_ELEMENTS_VERTICES 0x80E8 -#define GL_MAX_ELEMENTS_INDICES 0x80E9 -#define GL_CLAMP_TO_EDGE 0x812F -#define GL_TEXTURE_MIN_LOD 0x813A -#define GL_TEXTURE_MAX_LOD 0x813B -#define GL_TEXTURE_BASE_LEVEL 0x813C -#define GL_TEXTURE_MAX_LEVEL 0x813D -#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 -#define GL_SINGLE_COLOR 0x81F9 -#define GL_SEPARATE_SPECULAR_COLOR 0x81FA -#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 -#define GL_UNSIGNED_SHORT_5_6_5 0x8363 -#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 -#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 -#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 -#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 -#define GL_ALIASED_POINT_SIZE_RANGE 0x846D -#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E - -typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices); -typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); - -#define glCopyTexSubImage3D GLEW_GET_FUN(__glewCopyTexSubImage3D) -#define glDrawRangeElements GLEW_GET_FUN(__glewDrawRangeElements) -#define glTexImage3D GLEW_GET_FUN(__glewTexImage3D) -#define glTexSubImage3D GLEW_GET_FUN(__glewTexSubImage3D) - -#define GLEW_VERSION_1_2 GLEW_GET_VAR(__GLEW_VERSION_1_2) - -#endif /* GL_VERSION_1_2 */ - -/* ---------------------------- GL_VERSION_1_2_1 --------------------------- */ - -#ifndef GL_VERSION_1_2_1 -#define GL_VERSION_1_2_1 1 - -#define GLEW_VERSION_1_2_1 GLEW_GET_VAR(__GLEW_VERSION_1_2_1) - -#endif /* GL_VERSION_1_2_1 */ - -/* ----------------------------- GL_VERSION_1_3 ---------------------------- */ - -#ifndef GL_VERSION_1_3 -#define GL_VERSION_1_3 1 - -#define GL_MULTISAMPLE 0x809D -#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E -#define GL_SAMPLE_ALPHA_TO_ONE 0x809F -#define GL_SAMPLE_COVERAGE 0x80A0 -#define GL_SAMPLE_BUFFERS 0x80A8 -#define GL_SAMPLES 0x80A9 -#define GL_SAMPLE_COVERAGE_VALUE 0x80AA -#define GL_SAMPLE_COVERAGE_INVERT 0x80AB -#define GL_CLAMP_TO_BORDER 0x812D -#define GL_TEXTURE0 0x84C0 -#define GL_TEXTURE1 0x84C1 -#define GL_TEXTURE2 0x84C2 -#define GL_TEXTURE3 0x84C3 -#define GL_TEXTURE4 0x84C4 -#define GL_TEXTURE5 0x84C5 -#define GL_TEXTURE6 0x84C6 -#define GL_TEXTURE7 0x84C7 -#define GL_TEXTURE8 0x84C8 -#define GL_TEXTURE9 0x84C9 -#define GL_TEXTURE10 0x84CA -#define GL_TEXTURE11 0x84CB -#define GL_TEXTURE12 0x84CC -#define GL_TEXTURE13 0x84CD -#define GL_TEXTURE14 0x84CE -#define GL_TEXTURE15 0x84CF -#define GL_TEXTURE16 0x84D0 -#define GL_TEXTURE17 0x84D1 -#define GL_TEXTURE18 0x84D2 -#define GL_TEXTURE19 0x84D3 -#define GL_TEXTURE20 0x84D4 -#define GL_TEXTURE21 0x84D5 -#define GL_TEXTURE22 0x84D6 -#define GL_TEXTURE23 0x84D7 -#define GL_TEXTURE24 0x84D8 -#define GL_TEXTURE25 0x84D9 -#define GL_TEXTURE26 0x84DA -#define GL_TEXTURE27 0x84DB -#define GL_TEXTURE28 0x84DC -#define GL_TEXTURE29 0x84DD -#define GL_TEXTURE30 0x84DE -#define GL_TEXTURE31 0x84DF -#define GL_ACTIVE_TEXTURE 0x84E0 -#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 -#define GL_MAX_TEXTURE_UNITS 0x84E2 -#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 -#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 -#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 -#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 -#define GL_SUBTRACT 0x84E7 -#define GL_COMPRESSED_ALPHA 0x84E9 -#define GL_COMPRESSED_LUMINANCE 0x84EA -#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB -#define GL_COMPRESSED_INTENSITY 0x84EC -#define GL_COMPRESSED_RGB 0x84ED -#define GL_COMPRESSED_RGBA 0x84EE -#define GL_TEXTURE_COMPRESSION_HINT 0x84EF -#define GL_NORMAL_MAP 0x8511 -#define GL_REFLECTION_MAP 0x8512 -#define GL_TEXTURE_CUBE_MAP 0x8513 -#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A -#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B -#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C -#define GL_COMBINE 0x8570 -#define GL_COMBINE_RGB 0x8571 -#define GL_COMBINE_ALPHA 0x8572 -#define GL_RGB_SCALE 0x8573 -#define GL_ADD_SIGNED 0x8574 -#define GL_INTERPOLATE 0x8575 -#define GL_CONSTANT 0x8576 -#define GL_PRIMARY_COLOR 0x8577 -#define GL_PREVIOUS 0x8578 -#define GL_SOURCE0_RGB 0x8580 -#define GL_SOURCE1_RGB 0x8581 -#define GL_SOURCE2_RGB 0x8582 -#define GL_SOURCE0_ALPHA 0x8588 -#define GL_SOURCE1_ALPHA 0x8589 -#define GL_SOURCE2_ALPHA 0x858A -#define GL_OPERAND0_RGB 0x8590 -#define GL_OPERAND1_RGB 0x8591 -#define GL_OPERAND2_RGB 0x8592 -#define GL_OPERAND0_ALPHA 0x8598 -#define GL_OPERAND1_ALPHA 0x8599 -#define GL_OPERAND2_ALPHA 0x859A -#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 -#define GL_TEXTURE_COMPRESSED 0x86A1 -#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 -#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 -#define GL_DOT3_RGB 0x86AE -#define GL_DOT3_RGBA 0x86AF -#define GL_MULTISAMPLE_BIT 0x20000000 - -typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREPROC) (GLenum texture); -typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint lod, void *img); -typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXDPROC) (const GLdouble m[16]); -typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXFPROC) (const GLfloat m[16]); -typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble m[16]); -typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXFPROC) (const GLfloat m[16]); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FPROC) (GLenum target, GLfloat s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IPROC) (GLenum target, GLint s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IVPROC) (GLenum target, const GLint *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SPROC) (GLenum target, GLshort s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IVPROC) (GLenum target, const GLint *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IVPROC) (GLenum target, const GLint *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IVPROC) (GLenum target, const GLint *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v); -typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert); - -#define glActiveTexture GLEW_GET_FUN(__glewActiveTexture) -#define glClientActiveTexture GLEW_GET_FUN(__glewClientActiveTexture) -#define glCompressedTexImage1D GLEW_GET_FUN(__glewCompressedTexImage1D) -#define glCompressedTexImage2D GLEW_GET_FUN(__glewCompressedTexImage2D) -#define glCompressedTexImage3D GLEW_GET_FUN(__glewCompressedTexImage3D) -#define glCompressedTexSubImage1D GLEW_GET_FUN(__glewCompressedTexSubImage1D) -#define glCompressedTexSubImage2D GLEW_GET_FUN(__glewCompressedTexSubImage2D) -#define glCompressedTexSubImage3D GLEW_GET_FUN(__glewCompressedTexSubImage3D) -#define glGetCompressedTexImage GLEW_GET_FUN(__glewGetCompressedTexImage) -#define glLoadTransposeMatrixd GLEW_GET_FUN(__glewLoadTransposeMatrixd) -#define glLoadTransposeMatrixf GLEW_GET_FUN(__glewLoadTransposeMatrixf) -#define glMultTransposeMatrixd GLEW_GET_FUN(__glewMultTransposeMatrixd) -#define glMultTransposeMatrixf GLEW_GET_FUN(__glewMultTransposeMatrixf) -#define glMultiTexCoord1d GLEW_GET_FUN(__glewMultiTexCoord1d) -#define glMultiTexCoord1dv GLEW_GET_FUN(__glewMultiTexCoord1dv) -#define glMultiTexCoord1f GLEW_GET_FUN(__glewMultiTexCoord1f) -#define glMultiTexCoord1fv GLEW_GET_FUN(__glewMultiTexCoord1fv) -#define glMultiTexCoord1i GLEW_GET_FUN(__glewMultiTexCoord1i) -#define glMultiTexCoord1iv GLEW_GET_FUN(__glewMultiTexCoord1iv) -#define glMultiTexCoord1s GLEW_GET_FUN(__glewMultiTexCoord1s) -#define glMultiTexCoord1sv GLEW_GET_FUN(__glewMultiTexCoord1sv) -#define glMultiTexCoord2d GLEW_GET_FUN(__glewMultiTexCoord2d) -#define glMultiTexCoord2dv GLEW_GET_FUN(__glewMultiTexCoord2dv) -#define glMultiTexCoord2f GLEW_GET_FUN(__glewMultiTexCoord2f) -#define glMultiTexCoord2fv GLEW_GET_FUN(__glewMultiTexCoord2fv) -#define glMultiTexCoord2i GLEW_GET_FUN(__glewMultiTexCoord2i) -#define glMultiTexCoord2iv GLEW_GET_FUN(__glewMultiTexCoord2iv) -#define glMultiTexCoord2s GLEW_GET_FUN(__glewMultiTexCoord2s) -#define glMultiTexCoord2sv GLEW_GET_FUN(__glewMultiTexCoord2sv) -#define glMultiTexCoord3d GLEW_GET_FUN(__glewMultiTexCoord3d) -#define glMultiTexCoord3dv GLEW_GET_FUN(__glewMultiTexCoord3dv) -#define glMultiTexCoord3f GLEW_GET_FUN(__glewMultiTexCoord3f) -#define glMultiTexCoord3fv GLEW_GET_FUN(__glewMultiTexCoord3fv) -#define glMultiTexCoord3i GLEW_GET_FUN(__glewMultiTexCoord3i) -#define glMultiTexCoord3iv GLEW_GET_FUN(__glewMultiTexCoord3iv) -#define glMultiTexCoord3s GLEW_GET_FUN(__glewMultiTexCoord3s) -#define glMultiTexCoord3sv GLEW_GET_FUN(__glewMultiTexCoord3sv) -#define glMultiTexCoord4d GLEW_GET_FUN(__glewMultiTexCoord4d) -#define glMultiTexCoord4dv GLEW_GET_FUN(__glewMultiTexCoord4dv) -#define glMultiTexCoord4f GLEW_GET_FUN(__glewMultiTexCoord4f) -#define glMultiTexCoord4fv GLEW_GET_FUN(__glewMultiTexCoord4fv) -#define glMultiTexCoord4i GLEW_GET_FUN(__glewMultiTexCoord4i) -#define glMultiTexCoord4iv GLEW_GET_FUN(__glewMultiTexCoord4iv) -#define glMultiTexCoord4s GLEW_GET_FUN(__glewMultiTexCoord4s) -#define glMultiTexCoord4sv GLEW_GET_FUN(__glewMultiTexCoord4sv) -#define glSampleCoverage GLEW_GET_FUN(__glewSampleCoverage) - -#define GLEW_VERSION_1_3 GLEW_GET_VAR(__GLEW_VERSION_1_3) - -#endif /* GL_VERSION_1_3 */ - -/* ----------------------------- GL_VERSION_1_4 ---------------------------- */ - -#ifndef GL_VERSION_1_4 -#define GL_VERSION_1_4 1 - -#define GL_BLEND_DST_RGB 0x80C8 -#define GL_BLEND_SRC_RGB 0x80C9 -#define GL_BLEND_DST_ALPHA 0x80CA -#define GL_BLEND_SRC_ALPHA 0x80CB -#define GL_POINT_SIZE_MIN 0x8126 -#define GL_POINT_SIZE_MAX 0x8127 -#define GL_POINT_FADE_THRESHOLD_SIZE 0x8128 -#define GL_POINT_DISTANCE_ATTENUATION 0x8129 -#define GL_GENERATE_MIPMAP 0x8191 -#define GL_GENERATE_MIPMAP_HINT 0x8192 -#define GL_DEPTH_COMPONENT16 0x81A5 -#define GL_DEPTH_COMPONENT24 0x81A6 -#define GL_DEPTH_COMPONENT32 0x81A7 -#define GL_MIRRORED_REPEAT 0x8370 -#define GL_FOG_COORDINATE_SOURCE 0x8450 -#define GL_FOG_COORDINATE 0x8451 -#define GL_FRAGMENT_DEPTH 0x8452 -#define GL_CURRENT_FOG_COORDINATE 0x8453 -#define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454 -#define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455 -#define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456 -#define GL_FOG_COORDINATE_ARRAY 0x8457 -#define GL_COLOR_SUM 0x8458 -#define GL_CURRENT_SECONDARY_COLOR 0x8459 -#define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A -#define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B -#define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C -#define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D -#define GL_SECONDARY_COLOR_ARRAY 0x845E -#define GL_MAX_TEXTURE_LOD_BIAS 0x84FD -#define GL_TEXTURE_FILTER_CONTROL 0x8500 -#define GL_TEXTURE_LOD_BIAS 0x8501 -#define GL_INCR_WRAP 0x8507 -#define GL_DECR_WRAP 0x8508 -#define GL_TEXTURE_DEPTH_SIZE 0x884A -#define GL_DEPTH_TEXTURE_MODE 0x884B -#define GL_TEXTURE_COMPARE_MODE 0x884C -#define GL_TEXTURE_COMPARE_FUNC 0x884D -#define GL_COMPARE_R_TO_TEXTURE 0x884E - -typedef void (GLAPIENTRY * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONPROC) (GLenum mode); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); -typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTERPROC) (GLenum type, GLsizei stride, const void *pointer); -typedef void (GLAPIENTRY * PFNGLFOGCOORDDPROC) (GLdouble coord); -typedef void (GLAPIENTRY * PFNGLFOGCOORDDVPROC) (const GLdouble *coord); -typedef void (GLAPIENTRY * PFNGLFOGCOORDFPROC) (GLfloat coord); -typedef void (GLAPIENTRY * PFNGLFOGCOORDFVPROC) (const GLfloat *coord); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const* indices, GLsizei drawcount); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint *params); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BPROC) (GLbyte red, GLbyte green, GLbyte blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BVPROC) (const GLbyte *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DPROC) (GLdouble red, GLdouble green, GLdouble blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DVPROC) (const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FPROC) (GLfloat red, GLfloat green, GLfloat blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FVPROC) (const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IPROC) (GLint red, GLint green, GLint blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IVPROC) (const GLint *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SPROC) (GLshort red, GLshort green, GLshort blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SVPROC) (const GLshort *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBPROC) (GLubyte red, GLubyte green, GLubyte blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBVPROC) (const GLubyte *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIPROC) (GLuint red, GLuint green, GLuint blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIVPROC) (const GLuint *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USPROC) (GLushort red, GLushort green, GLushort blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USVPROC) (const GLushort *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DPROC) (GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVPROC) (const GLdouble *p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FPROC) (GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVPROC) (const GLfloat *p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IPROC) (GLint x, GLint y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVPROC) (const GLint *p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SPROC) (GLshort x, GLshort y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVPROC) (const GLshort *p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DPROC) (GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVPROC) (const GLdouble *p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVPROC) (const GLfloat *p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IPROC) (GLint x, GLint y, GLint z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVPROC) (const GLint *p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SPROC) (GLshort x, GLshort y, GLshort z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVPROC) (const GLshort *p); - -#define glBlendColor GLEW_GET_FUN(__glewBlendColor) -#define glBlendEquation GLEW_GET_FUN(__glewBlendEquation) -#define glBlendFuncSeparate GLEW_GET_FUN(__glewBlendFuncSeparate) -#define glFogCoordPointer GLEW_GET_FUN(__glewFogCoordPointer) -#define glFogCoordd GLEW_GET_FUN(__glewFogCoordd) -#define glFogCoorddv GLEW_GET_FUN(__glewFogCoorddv) -#define glFogCoordf GLEW_GET_FUN(__glewFogCoordf) -#define glFogCoordfv GLEW_GET_FUN(__glewFogCoordfv) -#define glMultiDrawArrays GLEW_GET_FUN(__glewMultiDrawArrays) -#define glMultiDrawElements GLEW_GET_FUN(__glewMultiDrawElements) -#define glPointParameterf GLEW_GET_FUN(__glewPointParameterf) -#define glPointParameterfv GLEW_GET_FUN(__glewPointParameterfv) -#define glPointParameteri GLEW_GET_FUN(__glewPointParameteri) -#define glPointParameteriv GLEW_GET_FUN(__glewPointParameteriv) -#define glSecondaryColor3b GLEW_GET_FUN(__glewSecondaryColor3b) -#define glSecondaryColor3bv GLEW_GET_FUN(__glewSecondaryColor3bv) -#define glSecondaryColor3d GLEW_GET_FUN(__glewSecondaryColor3d) -#define glSecondaryColor3dv GLEW_GET_FUN(__glewSecondaryColor3dv) -#define glSecondaryColor3f GLEW_GET_FUN(__glewSecondaryColor3f) -#define glSecondaryColor3fv GLEW_GET_FUN(__glewSecondaryColor3fv) -#define glSecondaryColor3i GLEW_GET_FUN(__glewSecondaryColor3i) -#define glSecondaryColor3iv GLEW_GET_FUN(__glewSecondaryColor3iv) -#define glSecondaryColor3s GLEW_GET_FUN(__glewSecondaryColor3s) -#define glSecondaryColor3sv GLEW_GET_FUN(__glewSecondaryColor3sv) -#define glSecondaryColor3ub GLEW_GET_FUN(__glewSecondaryColor3ub) -#define glSecondaryColor3ubv GLEW_GET_FUN(__glewSecondaryColor3ubv) -#define glSecondaryColor3ui GLEW_GET_FUN(__glewSecondaryColor3ui) -#define glSecondaryColor3uiv GLEW_GET_FUN(__glewSecondaryColor3uiv) -#define glSecondaryColor3us GLEW_GET_FUN(__glewSecondaryColor3us) -#define glSecondaryColor3usv GLEW_GET_FUN(__glewSecondaryColor3usv) -#define glSecondaryColorPointer GLEW_GET_FUN(__glewSecondaryColorPointer) -#define glWindowPos2d GLEW_GET_FUN(__glewWindowPos2d) -#define glWindowPos2dv GLEW_GET_FUN(__glewWindowPos2dv) -#define glWindowPos2f GLEW_GET_FUN(__glewWindowPos2f) -#define glWindowPos2fv GLEW_GET_FUN(__glewWindowPos2fv) -#define glWindowPos2i GLEW_GET_FUN(__glewWindowPos2i) -#define glWindowPos2iv GLEW_GET_FUN(__glewWindowPos2iv) -#define glWindowPos2s GLEW_GET_FUN(__glewWindowPos2s) -#define glWindowPos2sv GLEW_GET_FUN(__glewWindowPos2sv) -#define glWindowPos3d GLEW_GET_FUN(__glewWindowPos3d) -#define glWindowPos3dv GLEW_GET_FUN(__glewWindowPos3dv) -#define glWindowPos3f GLEW_GET_FUN(__glewWindowPos3f) -#define glWindowPos3fv GLEW_GET_FUN(__glewWindowPos3fv) -#define glWindowPos3i GLEW_GET_FUN(__glewWindowPos3i) -#define glWindowPos3iv GLEW_GET_FUN(__glewWindowPos3iv) -#define glWindowPos3s GLEW_GET_FUN(__glewWindowPos3s) -#define glWindowPos3sv GLEW_GET_FUN(__glewWindowPos3sv) - -#define GLEW_VERSION_1_4 GLEW_GET_VAR(__GLEW_VERSION_1_4) - -#endif /* GL_VERSION_1_4 */ - -/* ----------------------------- GL_VERSION_1_5 ---------------------------- */ - -#ifndef GL_VERSION_1_5 -#define GL_VERSION_1_5 1 - -#define GL_CURRENT_FOG_COORD GL_CURRENT_FOG_COORDINATE -#define GL_FOG_COORD GL_FOG_COORDINATE -#define GL_FOG_COORD_ARRAY GL_FOG_COORDINATE_ARRAY -#define GL_FOG_COORD_ARRAY_BUFFER_BINDING GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING -#define GL_FOG_COORD_ARRAY_POINTER GL_FOG_COORDINATE_ARRAY_POINTER -#define GL_FOG_COORD_ARRAY_STRIDE GL_FOG_COORDINATE_ARRAY_STRIDE -#define GL_FOG_COORD_ARRAY_TYPE GL_FOG_COORDINATE_ARRAY_TYPE -#define GL_FOG_COORD_SRC GL_FOG_COORDINATE_SOURCE -#define GL_SRC0_ALPHA GL_SOURCE0_ALPHA -#define GL_SRC0_RGB GL_SOURCE0_RGB -#define GL_SRC1_ALPHA GL_SOURCE1_ALPHA -#define GL_SRC1_RGB GL_SOURCE1_RGB -#define GL_SRC2_ALPHA GL_SOURCE2_ALPHA -#define GL_SRC2_RGB GL_SOURCE2_RGB -#define GL_BUFFER_SIZE 0x8764 -#define GL_BUFFER_USAGE 0x8765 -#define GL_QUERY_COUNTER_BITS 0x8864 -#define GL_CURRENT_QUERY 0x8865 -#define GL_QUERY_RESULT 0x8866 -#define GL_QUERY_RESULT_AVAILABLE 0x8867 -#define GL_ARRAY_BUFFER 0x8892 -#define GL_ELEMENT_ARRAY_BUFFER 0x8893 -#define GL_ARRAY_BUFFER_BINDING 0x8894 -#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895 -#define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896 -#define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897 -#define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898 -#define GL_INDEX_ARRAY_BUFFER_BINDING 0x8899 -#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A -#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B -#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C -#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D -#define GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E -#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F -#define GL_READ_ONLY 0x88B8 -#define GL_WRITE_ONLY 0x88B9 -#define GL_READ_WRITE 0x88BA -#define GL_BUFFER_ACCESS 0x88BB -#define GL_BUFFER_MAPPED 0x88BC -#define GL_BUFFER_MAP_POINTER 0x88BD -#define GL_STREAM_DRAW 0x88E0 -#define GL_STREAM_READ 0x88E1 -#define GL_STREAM_COPY 0x88E2 -#define GL_STATIC_DRAW 0x88E4 -#define GL_STATIC_READ 0x88E5 -#define GL_STATIC_COPY 0x88E6 -#define GL_DYNAMIC_DRAW 0x88E8 -#define GL_DYNAMIC_READ 0x88E9 -#define GL_DYNAMIC_COPY 0x88EA -#define GL_SAMPLES_PASSED 0x8914 - -typedef ptrdiff_t GLintptr; -typedef ptrdiff_t GLsizeiptr; - -typedef void (GLAPIENTRY * PFNGLBEGINQUERYPROC) (GLenum target, GLuint id); -typedef void (GLAPIENTRY * PFNGLBINDBUFFERPROC) (GLenum target, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLBUFFERDATAPROC) (GLenum target, GLsizeiptr size, const void* data, GLenum usage); -typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const void* data); -typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSPROC) (GLsizei n, const GLuint* buffers); -typedef void (GLAPIENTRY * PFNGLDELETEQUERIESPROC) (GLsizei n, const GLuint* ids); -typedef void (GLAPIENTRY * PFNGLENDQUERYPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLGENBUFFERSPROC) (GLsizei n, GLuint* buffers); -typedef void (GLAPIENTRY * PFNGLGENQUERIESPROC) (GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVPROC) (GLenum target, GLenum pname, void** params); -typedef void (GLAPIENTRY * PFNGLGETBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, void* data); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVPROC) (GLuint id, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVPROC) (GLuint id, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYIVPROC) (GLenum target, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERPROC) (GLuint buffer); -typedef GLboolean (GLAPIENTRY * PFNGLISQUERYPROC) (GLuint id); -typedef void* (GLAPIENTRY * PFNGLMAPBUFFERPROC) (GLenum target, GLenum access); -typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFERPROC) (GLenum target); - -#define glBeginQuery GLEW_GET_FUN(__glewBeginQuery) -#define glBindBuffer GLEW_GET_FUN(__glewBindBuffer) -#define glBufferData GLEW_GET_FUN(__glewBufferData) -#define glBufferSubData GLEW_GET_FUN(__glewBufferSubData) -#define glDeleteBuffers GLEW_GET_FUN(__glewDeleteBuffers) -#define glDeleteQueries GLEW_GET_FUN(__glewDeleteQueries) -#define glEndQuery GLEW_GET_FUN(__glewEndQuery) -#define glGenBuffers GLEW_GET_FUN(__glewGenBuffers) -#define glGenQueries GLEW_GET_FUN(__glewGenQueries) -#define glGetBufferParameteriv GLEW_GET_FUN(__glewGetBufferParameteriv) -#define glGetBufferPointerv GLEW_GET_FUN(__glewGetBufferPointerv) -#define glGetBufferSubData GLEW_GET_FUN(__glewGetBufferSubData) -#define glGetQueryObjectiv GLEW_GET_FUN(__glewGetQueryObjectiv) -#define glGetQueryObjectuiv GLEW_GET_FUN(__glewGetQueryObjectuiv) -#define glGetQueryiv GLEW_GET_FUN(__glewGetQueryiv) -#define glIsBuffer GLEW_GET_FUN(__glewIsBuffer) -#define glIsQuery GLEW_GET_FUN(__glewIsQuery) -#define glMapBuffer GLEW_GET_FUN(__glewMapBuffer) -#define glUnmapBuffer GLEW_GET_FUN(__glewUnmapBuffer) - -#define GLEW_VERSION_1_5 GLEW_GET_VAR(__GLEW_VERSION_1_5) - -#endif /* GL_VERSION_1_5 */ - -/* ----------------------------- GL_VERSION_2_0 ---------------------------- */ - -#ifndef GL_VERSION_2_0 -#define GL_VERSION_2_0 1 - -#define GL_BLEND_EQUATION_RGB GL_BLEND_EQUATION -#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622 -#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623 -#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624 -#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625 -#define GL_CURRENT_VERTEX_ATTRIB 0x8626 -#define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642 -#define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643 -#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645 -#define GL_STENCIL_BACK_FUNC 0x8800 -#define GL_STENCIL_BACK_FAIL 0x8801 -#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802 -#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803 -#define GL_MAX_DRAW_BUFFERS 0x8824 -#define GL_DRAW_BUFFER0 0x8825 -#define GL_DRAW_BUFFER1 0x8826 -#define GL_DRAW_BUFFER2 0x8827 -#define GL_DRAW_BUFFER3 0x8828 -#define GL_DRAW_BUFFER4 0x8829 -#define GL_DRAW_BUFFER5 0x882A -#define GL_DRAW_BUFFER6 0x882B -#define GL_DRAW_BUFFER7 0x882C -#define GL_DRAW_BUFFER8 0x882D -#define GL_DRAW_BUFFER9 0x882E -#define GL_DRAW_BUFFER10 0x882F -#define GL_DRAW_BUFFER11 0x8830 -#define GL_DRAW_BUFFER12 0x8831 -#define GL_DRAW_BUFFER13 0x8832 -#define GL_DRAW_BUFFER14 0x8833 -#define GL_DRAW_BUFFER15 0x8834 -#define GL_BLEND_EQUATION_ALPHA 0x883D -#define GL_POINT_SPRITE 0x8861 -#define GL_COORD_REPLACE 0x8862 -#define GL_MAX_VERTEX_ATTRIBS 0x8869 -#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A -#define GL_MAX_TEXTURE_COORDS 0x8871 -#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872 -#define GL_FRAGMENT_SHADER 0x8B30 -#define GL_VERTEX_SHADER 0x8B31 -#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49 -#define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A -#define GL_MAX_VARYING_FLOATS 0x8B4B -#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C -#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D -#define GL_SHADER_TYPE 0x8B4F -#define GL_FLOAT_VEC2 0x8B50 -#define GL_FLOAT_VEC3 0x8B51 -#define GL_FLOAT_VEC4 0x8B52 -#define GL_INT_VEC2 0x8B53 -#define GL_INT_VEC3 0x8B54 -#define GL_INT_VEC4 0x8B55 -#define GL_BOOL 0x8B56 -#define GL_BOOL_VEC2 0x8B57 -#define GL_BOOL_VEC3 0x8B58 -#define GL_BOOL_VEC4 0x8B59 -#define GL_FLOAT_MAT2 0x8B5A -#define GL_FLOAT_MAT3 0x8B5B -#define GL_FLOAT_MAT4 0x8B5C -#define GL_SAMPLER_1D 0x8B5D -#define GL_SAMPLER_2D 0x8B5E -#define GL_SAMPLER_3D 0x8B5F -#define GL_SAMPLER_CUBE 0x8B60 -#define GL_SAMPLER_1D_SHADOW 0x8B61 -#define GL_SAMPLER_2D_SHADOW 0x8B62 -#define GL_DELETE_STATUS 0x8B80 -#define GL_COMPILE_STATUS 0x8B81 -#define GL_LINK_STATUS 0x8B82 -#define GL_VALIDATE_STATUS 0x8B83 -#define GL_INFO_LOG_LENGTH 0x8B84 -#define GL_ATTACHED_SHADERS 0x8B85 -#define GL_ACTIVE_UNIFORMS 0x8B86 -#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87 -#define GL_SHADER_SOURCE_LENGTH 0x8B88 -#define GL_ACTIVE_ATTRIBUTES 0x8B89 -#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A -#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B -#define GL_SHADING_LANGUAGE_VERSION 0x8B8C -#define GL_CURRENT_PROGRAM 0x8B8D -#define GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0 -#define GL_LOWER_LEFT 0x8CA1 -#define GL_UPPER_LEFT 0x8CA2 -#define GL_STENCIL_BACK_REF 0x8CA3 -#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4 -#define GL_STENCIL_BACK_WRITEMASK 0x8CA5 - -typedef void (GLAPIENTRY * PFNGLATTACHSHADERPROC) (GLuint program, GLuint shader); -typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar* name); -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEPROC) (GLenum modeRGB, GLenum modeAlpha); -typedef void (GLAPIENTRY * PFNGLCOMPILESHADERPROC) (GLuint shader); -typedef GLuint (GLAPIENTRY * PFNGLCREATEPROGRAMPROC) (void); -typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROC) (GLenum type); -typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMPROC) (GLuint program); -typedef void (GLAPIENTRY * PFNGLDELETESHADERPROC) (GLuint shader); -typedef void (GLAPIENTRY * PFNGLDETACHSHADERPROC) (GLuint program, GLuint shader); -typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint index); -typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSPROC) (GLsizei n, const GLenum* bufs); -typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint index); -typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name); -typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name); -typedef void (GLAPIENTRY * PFNGLGETATTACHEDSHADERSPROC) (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders); -typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONPROC) (GLuint program, const GLchar* name); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVPROC) (GLuint program, GLenum pname, GLint* param); -typedef void (GLAPIENTRY * PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog); -typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEPROC) (GLuint obj, GLsizei maxLength, GLsizei* length, GLchar* source); -typedef void (GLAPIENTRY * PFNGLGETSHADERIVPROC) (GLuint shader, GLenum pname, GLint* param); -typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const GLchar* name); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVPROC) (GLuint program, GLint location, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVPROC) (GLuint program, GLint location, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVPROC) (GLuint index, GLenum pname, void** pointer); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVPROC) (GLuint index, GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVPROC) (GLuint index, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVPROC) (GLuint index, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMPROC) (GLuint program); -typedef GLboolean (GLAPIENTRY * PFNGLISSHADERPROC) (GLuint shader); -typedef void (GLAPIENTRY * PFNGLLINKPROGRAMPROC) (GLuint program); -typedef void (GLAPIENTRY * PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar *const* string, const GLint* length); -typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEPROC) (GLenum face, GLenum func, GLint ref, GLuint mask); -typedef void (GLAPIENTRY * PFNGLSTENCILMASKSEPARATEPROC) (GLenum face, GLuint mask); -typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); -typedef void (GLAPIENTRY * PFNGLUNIFORM1FPROC) (GLint location, GLfloat v0); -typedef void (GLAPIENTRY * PFNGLUNIFORM1FVPROC) (GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM1IPROC) (GLint location, GLint v0); -typedef void (GLAPIENTRY * PFNGLUNIFORM1IVPROC) (GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2FPROC) (GLint location, GLfloat v0, GLfloat v1); -typedef void (GLAPIENTRY * PFNGLUNIFORM2FVPROC) (GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2IPROC) (GLint location, GLint v0, GLint v1); -typedef void (GLAPIENTRY * PFNGLUNIFORM2IVPROC) (GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); -typedef void (GLAPIENTRY * PFNGLUNIFORM3FVPROC) (GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3IPROC) (GLint location, GLint v0, GLint v1, GLint v2); -typedef void (GLAPIENTRY * PFNGLUNIFORM3IVPROC) (GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); -typedef void (GLAPIENTRY * PFNGLUNIFORM4FVPROC) (GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4IPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); -typedef void (GLAPIENTRY * PFNGLUNIFORM4IVPROC) (GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUSEPROGRAMPROC) (GLuint program); -typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMPROC) (GLuint program); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DPROC) (GLuint index, GLdouble x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FPROC) (GLuint index, GLfloat x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SPROC) (GLuint index, GLshort x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DPROC) (GLuint index, GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FPROC) (GLuint index, GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SPROC) (GLuint index, GLshort x, GLshort y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SPROC) (GLuint index, GLshort x, GLshort y, GLshort z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NBVPROC) (GLuint index, const GLbyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NIVPROC) (GLuint index, const GLint* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NSVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBVPROC) (GLuint index, const GLubyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUIVPROC) (GLuint index, const GLuint* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUSVPROC) (GLuint index, const GLushort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4BVPROC) (GLuint index, const GLbyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4IVPROC) (GLuint index, const GLint* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVPROC) (GLuint index, const GLubyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UIVPROC) (GLuint index, const GLuint* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4USVPROC) (GLuint index, const GLushort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* pointer); - -#define glAttachShader GLEW_GET_FUN(__glewAttachShader) -#define glBindAttribLocation GLEW_GET_FUN(__glewBindAttribLocation) -#define glBlendEquationSeparate GLEW_GET_FUN(__glewBlendEquationSeparate) -#define glCompileShader GLEW_GET_FUN(__glewCompileShader) -#define glCreateProgram GLEW_GET_FUN(__glewCreateProgram) -#define glCreateShader GLEW_GET_FUN(__glewCreateShader) -#define glDeleteProgram GLEW_GET_FUN(__glewDeleteProgram) -#define glDeleteShader GLEW_GET_FUN(__glewDeleteShader) -#define glDetachShader GLEW_GET_FUN(__glewDetachShader) -#define glDisableVertexAttribArray GLEW_GET_FUN(__glewDisableVertexAttribArray) -#define glDrawBuffers GLEW_GET_FUN(__glewDrawBuffers) -#define glEnableVertexAttribArray GLEW_GET_FUN(__glewEnableVertexAttribArray) -#define glGetActiveAttrib GLEW_GET_FUN(__glewGetActiveAttrib) -#define glGetActiveUniform GLEW_GET_FUN(__glewGetActiveUniform) -#define glGetAttachedShaders GLEW_GET_FUN(__glewGetAttachedShaders) -#define glGetAttribLocation GLEW_GET_FUN(__glewGetAttribLocation) -#define glGetProgramInfoLog GLEW_GET_FUN(__glewGetProgramInfoLog) -#define glGetProgramiv GLEW_GET_FUN(__glewGetProgramiv) -#define glGetShaderInfoLog GLEW_GET_FUN(__glewGetShaderInfoLog) -#define glGetShaderSource GLEW_GET_FUN(__glewGetShaderSource) -#define glGetShaderiv GLEW_GET_FUN(__glewGetShaderiv) -#define glGetUniformLocation GLEW_GET_FUN(__glewGetUniformLocation) -#define glGetUniformfv GLEW_GET_FUN(__glewGetUniformfv) -#define glGetUniformiv GLEW_GET_FUN(__glewGetUniformiv) -#define glGetVertexAttribPointerv GLEW_GET_FUN(__glewGetVertexAttribPointerv) -#define glGetVertexAttribdv GLEW_GET_FUN(__glewGetVertexAttribdv) -#define glGetVertexAttribfv GLEW_GET_FUN(__glewGetVertexAttribfv) -#define glGetVertexAttribiv GLEW_GET_FUN(__glewGetVertexAttribiv) -#define glIsProgram GLEW_GET_FUN(__glewIsProgram) -#define glIsShader GLEW_GET_FUN(__glewIsShader) -#define glLinkProgram GLEW_GET_FUN(__glewLinkProgram) -#define glShaderSource GLEW_GET_FUN(__glewShaderSource) -#define glStencilFuncSeparate GLEW_GET_FUN(__glewStencilFuncSeparate) -#define glStencilMaskSeparate GLEW_GET_FUN(__glewStencilMaskSeparate) -#define glStencilOpSeparate GLEW_GET_FUN(__glewStencilOpSeparate) -#define glUniform1f GLEW_GET_FUN(__glewUniform1f) -#define glUniform1fv GLEW_GET_FUN(__glewUniform1fv) -#define glUniform1i GLEW_GET_FUN(__glewUniform1i) -#define glUniform1iv GLEW_GET_FUN(__glewUniform1iv) -#define glUniform2f GLEW_GET_FUN(__glewUniform2f) -#define glUniform2fv GLEW_GET_FUN(__glewUniform2fv) -#define glUniform2i GLEW_GET_FUN(__glewUniform2i) -#define glUniform2iv GLEW_GET_FUN(__glewUniform2iv) -#define glUniform3f GLEW_GET_FUN(__glewUniform3f) -#define glUniform3fv GLEW_GET_FUN(__glewUniform3fv) -#define glUniform3i GLEW_GET_FUN(__glewUniform3i) -#define glUniform3iv GLEW_GET_FUN(__glewUniform3iv) -#define glUniform4f GLEW_GET_FUN(__glewUniform4f) -#define glUniform4fv GLEW_GET_FUN(__glewUniform4fv) -#define glUniform4i GLEW_GET_FUN(__glewUniform4i) -#define glUniform4iv GLEW_GET_FUN(__glewUniform4iv) -#define glUniformMatrix2fv GLEW_GET_FUN(__glewUniformMatrix2fv) -#define glUniformMatrix3fv GLEW_GET_FUN(__glewUniformMatrix3fv) -#define glUniformMatrix4fv GLEW_GET_FUN(__glewUniformMatrix4fv) -#define glUseProgram GLEW_GET_FUN(__glewUseProgram) -#define glValidateProgram GLEW_GET_FUN(__glewValidateProgram) -#define glVertexAttrib1d GLEW_GET_FUN(__glewVertexAttrib1d) -#define glVertexAttrib1dv GLEW_GET_FUN(__glewVertexAttrib1dv) -#define glVertexAttrib1f GLEW_GET_FUN(__glewVertexAttrib1f) -#define glVertexAttrib1fv GLEW_GET_FUN(__glewVertexAttrib1fv) -#define glVertexAttrib1s GLEW_GET_FUN(__glewVertexAttrib1s) -#define glVertexAttrib1sv GLEW_GET_FUN(__glewVertexAttrib1sv) -#define glVertexAttrib2d GLEW_GET_FUN(__glewVertexAttrib2d) -#define glVertexAttrib2dv GLEW_GET_FUN(__glewVertexAttrib2dv) -#define glVertexAttrib2f GLEW_GET_FUN(__glewVertexAttrib2f) -#define glVertexAttrib2fv GLEW_GET_FUN(__glewVertexAttrib2fv) -#define glVertexAttrib2s GLEW_GET_FUN(__glewVertexAttrib2s) -#define glVertexAttrib2sv GLEW_GET_FUN(__glewVertexAttrib2sv) -#define glVertexAttrib3d GLEW_GET_FUN(__glewVertexAttrib3d) -#define glVertexAttrib3dv GLEW_GET_FUN(__glewVertexAttrib3dv) -#define glVertexAttrib3f GLEW_GET_FUN(__glewVertexAttrib3f) -#define glVertexAttrib3fv GLEW_GET_FUN(__glewVertexAttrib3fv) -#define glVertexAttrib3s GLEW_GET_FUN(__glewVertexAttrib3s) -#define glVertexAttrib3sv GLEW_GET_FUN(__glewVertexAttrib3sv) -#define glVertexAttrib4Nbv GLEW_GET_FUN(__glewVertexAttrib4Nbv) -#define glVertexAttrib4Niv GLEW_GET_FUN(__glewVertexAttrib4Niv) -#define glVertexAttrib4Nsv GLEW_GET_FUN(__glewVertexAttrib4Nsv) -#define glVertexAttrib4Nub GLEW_GET_FUN(__glewVertexAttrib4Nub) -#define glVertexAttrib4Nubv GLEW_GET_FUN(__glewVertexAttrib4Nubv) -#define glVertexAttrib4Nuiv GLEW_GET_FUN(__glewVertexAttrib4Nuiv) -#define glVertexAttrib4Nusv GLEW_GET_FUN(__glewVertexAttrib4Nusv) -#define glVertexAttrib4bv GLEW_GET_FUN(__glewVertexAttrib4bv) -#define glVertexAttrib4d GLEW_GET_FUN(__glewVertexAttrib4d) -#define glVertexAttrib4dv GLEW_GET_FUN(__glewVertexAttrib4dv) -#define glVertexAttrib4f GLEW_GET_FUN(__glewVertexAttrib4f) -#define glVertexAttrib4fv GLEW_GET_FUN(__glewVertexAttrib4fv) -#define glVertexAttrib4iv GLEW_GET_FUN(__glewVertexAttrib4iv) -#define glVertexAttrib4s GLEW_GET_FUN(__glewVertexAttrib4s) -#define glVertexAttrib4sv GLEW_GET_FUN(__glewVertexAttrib4sv) -#define glVertexAttrib4ubv GLEW_GET_FUN(__glewVertexAttrib4ubv) -#define glVertexAttrib4uiv GLEW_GET_FUN(__glewVertexAttrib4uiv) -#define glVertexAttrib4usv GLEW_GET_FUN(__glewVertexAttrib4usv) -#define glVertexAttribPointer GLEW_GET_FUN(__glewVertexAttribPointer) - -#define GLEW_VERSION_2_0 GLEW_GET_VAR(__GLEW_VERSION_2_0) - -#endif /* GL_VERSION_2_0 */ - -/* ----------------------------- GL_VERSION_2_1 ---------------------------- */ - -#ifndef GL_VERSION_2_1 -#define GL_VERSION_2_1 1 - -#define GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F -#define GL_PIXEL_PACK_BUFFER 0x88EB -#define GL_PIXEL_UNPACK_BUFFER 0x88EC -#define GL_PIXEL_PACK_BUFFER_BINDING 0x88ED -#define GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF -#define GL_FLOAT_MAT2x3 0x8B65 -#define GL_FLOAT_MAT2x4 0x8B66 -#define GL_FLOAT_MAT3x2 0x8B67 -#define GL_FLOAT_MAT3x4 0x8B68 -#define GL_FLOAT_MAT4x2 0x8B69 -#define GL_FLOAT_MAT4x3 0x8B6A -#define GL_SRGB 0x8C40 -#define GL_SRGB8 0x8C41 -#define GL_SRGB_ALPHA 0x8C42 -#define GL_SRGB8_ALPHA8 0x8C43 -#define GL_SLUMINANCE_ALPHA 0x8C44 -#define GL_SLUMINANCE8_ALPHA8 0x8C45 -#define GL_SLUMINANCE 0x8C46 -#define GL_SLUMINANCE8 0x8C47 -#define GL_COMPRESSED_SRGB 0x8C48 -#define GL_COMPRESSED_SRGB_ALPHA 0x8C49 -#define GL_COMPRESSED_SLUMINANCE 0x8C4A -#define GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B - -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); - -#define glUniformMatrix2x3fv GLEW_GET_FUN(__glewUniformMatrix2x3fv) -#define glUniformMatrix2x4fv GLEW_GET_FUN(__glewUniformMatrix2x4fv) -#define glUniformMatrix3x2fv GLEW_GET_FUN(__glewUniformMatrix3x2fv) -#define glUniformMatrix3x4fv GLEW_GET_FUN(__glewUniformMatrix3x4fv) -#define glUniformMatrix4x2fv GLEW_GET_FUN(__glewUniformMatrix4x2fv) -#define glUniformMatrix4x3fv GLEW_GET_FUN(__glewUniformMatrix4x3fv) - -#define GLEW_VERSION_2_1 GLEW_GET_VAR(__GLEW_VERSION_2_1) - -#endif /* GL_VERSION_2_1 */ - -/* ----------------------------- GL_VERSION_3_0 ---------------------------- */ - -#ifndef GL_VERSION_3_0 -#define GL_VERSION_3_0 1 - -#define GL_CLIP_DISTANCE0 GL_CLIP_PLANE0 -#define GL_CLIP_DISTANCE1 GL_CLIP_PLANE1 -#define GL_CLIP_DISTANCE2 GL_CLIP_PLANE2 -#define GL_CLIP_DISTANCE3 GL_CLIP_PLANE3 -#define GL_CLIP_DISTANCE4 GL_CLIP_PLANE4 -#define GL_CLIP_DISTANCE5 GL_CLIP_PLANE5 -#define GL_COMPARE_REF_TO_TEXTURE GL_COMPARE_R_TO_TEXTURE_ARB -#define GL_MAX_CLIP_DISTANCES GL_MAX_CLIP_PLANES -#define GL_MAX_VARYING_COMPONENTS GL_MAX_VARYING_FLOATS -#define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x0001 -#define GL_MAJOR_VERSION 0x821B -#define GL_MINOR_VERSION 0x821C -#define GL_NUM_EXTENSIONS 0x821D -#define GL_CONTEXT_FLAGS 0x821E -#define GL_DEPTH_BUFFER 0x8223 -#define GL_STENCIL_BUFFER 0x8224 -#define GL_RGBA32F 0x8814 -#define GL_RGB32F 0x8815 -#define GL_RGBA16F 0x881A -#define GL_RGB16F 0x881B -#define GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD -#define GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF -#define GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904 -#define GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905 -#define GL_CLAMP_VERTEX_COLOR 0x891A -#define GL_CLAMP_FRAGMENT_COLOR 0x891B -#define GL_CLAMP_READ_COLOR 0x891C -#define GL_FIXED_ONLY 0x891D -#define GL_TEXTURE_RED_TYPE 0x8C10 -#define GL_TEXTURE_GREEN_TYPE 0x8C11 -#define GL_TEXTURE_BLUE_TYPE 0x8C12 -#define GL_TEXTURE_ALPHA_TYPE 0x8C13 -#define GL_TEXTURE_LUMINANCE_TYPE 0x8C14 -#define GL_TEXTURE_INTENSITY_TYPE 0x8C15 -#define GL_TEXTURE_DEPTH_TYPE 0x8C16 -#define GL_TEXTURE_1D_ARRAY 0x8C18 -#define GL_PROXY_TEXTURE_1D_ARRAY 0x8C19 -#define GL_TEXTURE_2D_ARRAY 0x8C1A -#define GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B -#define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C -#define GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D -#define GL_R11F_G11F_B10F 0x8C3A -#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B -#define GL_RGB9_E5 0x8C3D -#define GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E -#define GL_TEXTURE_SHARED_SIZE 0x8C3F -#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76 -#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F -#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80 -#define GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83 -#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84 -#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85 -#define GL_PRIMITIVES_GENERATED 0x8C87 -#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88 -#define GL_RASTERIZER_DISCARD 0x8C89 -#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A -#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B -#define GL_INTERLEAVED_ATTRIBS 0x8C8C -#define GL_SEPARATE_ATTRIBS 0x8C8D -#define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E -#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F -#define GL_RGBA32UI 0x8D70 -#define GL_RGB32UI 0x8D71 -#define GL_RGBA16UI 0x8D76 -#define GL_RGB16UI 0x8D77 -#define GL_RGBA8UI 0x8D7C -#define GL_RGB8UI 0x8D7D -#define GL_RGBA32I 0x8D82 -#define GL_RGB32I 0x8D83 -#define GL_RGBA16I 0x8D88 -#define GL_RGB16I 0x8D89 -#define GL_RGBA8I 0x8D8E -#define GL_RGB8I 0x8D8F -#define GL_RED_INTEGER 0x8D94 -#define GL_GREEN_INTEGER 0x8D95 -#define GL_BLUE_INTEGER 0x8D96 -#define GL_ALPHA_INTEGER 0x8D97 -#define GL_RGB_INTEGER 0x8D98 -#define GL_RGBA_INTEGER 0x8D99 -#define GL_BGR_INTEGER 0x8D9A -#define GL_BGRA_INTEGER 0x8D9B -#define GL_SAMPLER_1D_ARRAY 0x8DC0 -#define GL_SAMPLER_2D_ARRAY 0x8DC1 -#define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3 -#define GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4 -#define GL_SAMPLER_CUBE_SHADOW 0x8DC5 -#define GL_UNSIGNED_INT_VEC2 0x8DC6 -#define GL_UNSIGNED_INT_VEC3 0x8DC7 -#define GL_UNSIGNED_INT_VEC4 0x8DC8 -#define GL_INT_SAMPLER_1D 0x8DC9 -#define GL_INT_SAMPLER_2D 0x8DCA -#define GL_INT_SAMPLER_3D 0x8DCB -#define GL_INT_SAMPLER_CUBE 0x8DCC -#define GL_INT_SAMPLER_1D_ARRAY 0x8DCE -#define GL_INT_SAMPLER_2D_ARRAY 0x8DCF -#define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1 -#define GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2 -#define GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3 -#define GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4 -#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6 -#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7 -#define GL_QUERY_WAIT 0x8E13 -#define GL_QUERY_NO_WAIT 0x8E14 -#define GL_QUERY_BY_REGION_WAIT 0x8E15 -#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16 - -typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERPROC) (GLuint id, GLenum mode); -typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKPROC) (GLenum primitiveMode); -typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONPROC) (GLuint program, GLuint colorNumber, const GLchar* name); -typedef void (GLAPIENTRY * PFNGLCLAMPCOLORPROC) (GLenum target, GLenum clamp); -typedef void (GLAPIENTRY * PFNGLCLEARBUFFERFIPROC) (GLenum buffer, GLint drawBuffer, GLfloat depth, GLint stencil); -typedef void (GLAPIENTRY * PFNGLCLEARBUFFERFVPROC) (GLenum buffer, GLint drawBuffer, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLCLEARBUFFERIVPROC) (GLenum buffer, GLint drawBuffer, const GLint* value); -typedef void (GLAPIENTRY * PFNGLCLEARBUFFERUIVPROC) (GLenum buffer, GLint drawBuffer, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLCOLORMASKIPROC) (GLuint buf, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); -typedef void (GLAPIENTRY * PFNGLDISABLEIPROC) (GLenum cap, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEIPROC) (GLenum cap, GLuint index); -typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERPROC) (void); -typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKPROC) (void); -typedef void (GLAPIENTRY * PFNGLGETBOOLEANI_VPROC) (GLenum pname, GLuint index, GLboolean* data); -typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATALOCATIONPROC) (GLuint program, const GLchar* name); -typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGIPROC) (GLenum name, GLuint index); -typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMUIVPROC) (GLuint program, GLint location, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIIVPROC) (GLuint index, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIUIVPROC) (GLuint index, GLenum pname, GLuint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDIPROC) (GLenum cap, GLuint index); -typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, const GLuint* params); -typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSPROC) (GLuint program, GLsizei count, const GLchar *const* varyings, GLenum bufferMode); -typedef void (GLAPIENTRY * PFNGLUNIFORM1UIPROC) (GLint location, GLuint v0); -typedef void (GLAPIENTRY * PFNGLUNIFORM1UIVPROC) (GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2UIPROC) (GLint location, GLuint v0, GLuint v1); -typedef void (GLAPIENTRY * PFNGLUNIFORM2UIVPROC) (GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2); -typedef void (GLAPIENTRY * PFNGLUNIFORM3UIVPROC) (GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); -typedef void (GLAPIENTRY * PFNGLUNIFORM4UIVPROC) (GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IPROC) (GLuint index, GLint v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IVPROC) (GLuint index, const GLint* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIPROC) (GLuint index, GLuint v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIVPROC) (GLuint index, const GLuint* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IPROC) (GLuint index, GLint v0, GLint v1); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IVPROC) (GLuint index, const GLint* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIPROC) (GLuint index, GLuint v0, GLuint v1); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIVPROC) (GLuint index, const GLuint* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IPROC) (GLuint index, GLint v0, GLint v1, GLint v2); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IVPROC) (GLuint index, const GLint* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIPROC) (GLuint index, GLuint v0, GLuint v1, GLuint v2); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIVPROC) (GLuint index, const GLuint* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4BVPROC) (GLuint index, const GLbyte* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IPROC) (GLuint index, GLint v0, GLint v1, GLint v2, GLint v3); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IVPROC) (GLuint index, const GLint* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4SVPROC) (GLuint index, const GLshort* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UBVPROC) (GLuint index, const GLubyte* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIPROC) (GLuint index, GLuint v0, GLuint v1, GLuint v2, GLuint v3); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIVPROC) (GLuint index, const GLuint* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4USVPROC) (GLuint index, const GLushort* v0); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void*pointer); - -#define glBeginConditionalRender GLEW_GET_FUN(__glewBeginConditionalRender) -#define glBeginTransformFeedback GLEW_GET_FUN(__glewBeginTransformFeedback) -#define glBindFragDataLocation GLEW_GET_FUN(__glewBindFragDataLocation) -#define glClampColor GLEW_GET_FUN(__glewClampColor) -#define glClearBufferfi GLEW_GET_FUN(__glewClearBufferfi) -#define glClearBufferfv GLEW_GET_FUN(__glewClearBufferfv) -#define glClearBufferiv GLEW_GET_FUN(__glewClearBufferiv) -#define glClearBufferuiv GLEW_GET_FUN(__glewClearBufferuiv) -#define glColorMaski GLEW_GET_FUN(__glewColorMaski) -#define glDisablei GLEW_GET_FUN(__glewDisablei) -#define glEnablei GLEW_GET_FUN(__glewEnablei) -#define glEndConditionalRender GLEW_GET_FUN(__glewEndConditionalRender) -#define glEndTransformFeedback GLEW_GET_FUN(__glewEndTransformFeedback) -#define glGetBooleani_v GLEW_GET_FUN(__glewGetBooleani_v) -#define glGetFragDataLocation GLEW_GET_FUN(__glewGetFragDataLocation) -#define glGetStringi GLEW_GET_FUN(__glewGetStringi) -#define glGetTexParameterIiv GLEW_GET_FUN(__glewGetTexParameterIiv) -#define glGetTexParameterIuiv GLEW_GET_FUN(__glewGetTexParameterIuiv) -#define glGetTransformFeedbackVarying GLEW_GET_FUN(__glewGetTransformFeedbackVarying) -#define glGetUniformuiv GLEW_GET_FUN(__glewGetUniformuiv) -#define glGetVertexAttribIiv GLEW_GET_FUN(__glewGetVertexAttribIiv) -#define glGetVertexAttribIuiv GLEW_GET_FUN(__glewGetVertexAttribIuiv) -#define glIsEnabledi GLEW_GET_FUN(__glewIsEnabledi) -#define glTexParameterIiv GLEW_GET_FUN(__glewTexParameterIiv) -#define glTexParameterIuiv GLEW_GET_FUN(__glewTexParameterIuiv) -#define glTransformFeedbackVaryings GLEW_GET_FUN(__glewTransformFeedbackVaryings) -#define glUniform1ui GLEW_GET_FUN(__glewUniform1ui) -#define glUniform1uiv GLEW_GET_FUN(__glewUniform1uiv) -#define glUniform2ui GLEW_GET_FUN(__glewUniform2ui) -#define glUniform2uiv GLEW_GET_FUN(__glewUniform2uiv) -#define glUniform3ui GLEW_GET_FUN(__glewUniform3ui) -#define glUniform3uiv GLEW_GET_FUN(__glewUniform3uiv) -#define glUniform4ui GLEW_GET_FUN(__glewUniform4ui) -#define glUniform4uiv GLEW_GET_FUN(__glewUniform4uiv) -#define glVertexAttribI1i GLEW_GET_FUN(__glewVertexAttribI1i) -#define glVertexAttribI1iv GLEW_GET_FUN(__glewVertexAttribI1iv) -#define glVertexAttribI1ui GLEW_GET_FUN(__glewVertexAttribI1ui) -#define glVertexAttribI1uiv GLEW_GET_FUN(__glewVertexAttribI1uiv) -#define glVertexAttribI2i GLEW_GET_FUN(__glewVertexAttribI2i) -#define glVertexAttribI2iv GLEW_GET_FUN(__glewVertexAttribI2iv) -#define glVertexAttribI2ui GLEW_GET_FUN(__glewVertexAttribI2ui) -#define glVertexAttribI2uiv GLEW_GET_FUN(__glewVertexAttribI2uiv) -#define glVertexAttribI3i GLEW_GET_FUN(__glewVertexAttribI3i) -#define glVertexAttribI3iv GLEW_GET_FUN(__glewVertexAttribI3iv) -#define glVertexAttribI3ui GLEW_GET_FUN(__glewVertexAttribI3ui) -#define glVertexAttribI3uiv GLEW_GET_FUN(__glewVertexAttribI3uiv) -#define glVertexAttribI4bv GLEW_GET_FUN(__glewVertexAttribI4bv) -#define glVertexAttribI4i GLEW_GET_FUN(__glewVertexAttribI4i) -#define glVertexAttribI4iv GLEW_GET_FUN(__glewVertexAttribI4iv) -#define glVertexAttribI4sv GLEW_GET_FUN(__glewVertexAttribI4sv) -#define glVertexAttribI4ubv GLEW_GET_FUN(__glewVertexAttribI4ubv) -#define glVertexAttribI4ui GLEW_GET_FUN(__glewVertexAttribI4ui) -#define glVertexAttribI4uiv GLEW_GET_FUN(__glewVertexAttribI4uiv) -#define glVertexAttribI4usv GLEW_GET_FUN(__glewVertexAttribI4usv) -#define glVertexAttribIPointer GLEW_GET_FUN(__glewVertexAttribIPointer) - -#define GLEW_VERSION_3_0 GLEW_GET_VAR(__GLEW_VERSION_3_0) - -#endif /* GL_VERSION_3_0 */ - -/* ----------------------------- GL_VERSION_3_1 ---------------------------- */ - -#ifndef GL_VERSION_3_1 -#define GL_VERSION_3_1 1 - -#define GL_TEXTURE_RECTANGLE 0x84F5 -#define GL_TEXTURE_BINDING_RECTANGLE 0x84F6 -#define GL_PROXY_TEXTURE_RECTANGLE 0x84F7 -#define GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8 -#define GL_SAMPLER_2D_RECT 0x8B63 -#define GL_SAMPLER_2D_RECT_SHADOW 0x8B64 -#define GL_TEXTURE_BUFFER 0x8C2A -#define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B -#define GL_TEXTURE_BINDING_BUFFER 0x8C2C -#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D -#define GL_TEXTURE_BUFFER_FORMAT 0x8C2E -#define GL_SAMPLER_BUFFER 0x8DC2 -#define GL_INT_SAMPLER_2D_RECT 0x8DCD -#define GL_INT_SAMPLER_BUFFER 0x8DD0 -#define GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5 -#define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8 -#define GL_RED_SNORM 0x8F90 -#define GL_RG_SNORM 0x8F91 -#define GL_RGB_SNORM 0x8F92 -#define GL_RGBA_SNORM 0x8F93 -#define GL_R8_SNORM 0x8F94 -#define GL_RG8_SNORM 0x8F95 -#define GL_RGB8_SNORM 0x8F96 -#define GL_RGBA8_SNORM 0x8F97 -#define GL_R16_SNORM 0x8F98 -#define GL_RG16_SNORM 0x8F99 -#define GL_RGB16_SNORM 0x8F9A -#define GL_RGBA16_SNORM 0x8F9B -#define GL_SIGNED_NORMALIZED 0x8F9C -#define GL_PRIMITIVE_RESTART 0x8F9D -#define GL_PRIMITIVE_RESTART_INDEX 0x8F9E -#define GL_BUFFER_ACCESS_FLAGS 0x911F -#define GL_BUFFER_MAP_LENGTH 0x9120 -#define GL_BUFFER_MAP_OFFSET 0x9121 - -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTINDEXPROC) (GLuint buffer); -typedef void (GLAPIENTRY * PFNGLTEXBUFFERPROC) (GLenum target, GLenum internalFormat, GLuint buffer); - -#define glDrawArraysInstanced GLEW_GET_FUN(__glewDrawArraysInstanced) -#define glDrawElementsInstanced GLEW_GET_FUN(__glewDrawElementsInstanced) -#define glPrimitiveRestartIndex GLEW_GET_FUN(__glewPrimitiveRestartIndex) -#define glTexBuffer GLEW_GET_FUN(__glewTexBuffer) - -#define GLEW_VERSION_3_1 GLEW_GET_VAR(__GLEW_VERSION_3_1) - -#endif /* GL_VERSION_3_1 */ - -/* ----------------------------- GL_VERSION_3_2 ---------------------------- */ - -#ifndef GL_VERSION_3_2 -#define GL_VERSION_3_2 1 - -#define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001 -#define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002 -#define GL_LINES_ADJACENCY 0x000A -#define GL_LINE_STRIP_ADJACENCY 0x000B -#define GL_TRIANGLES_ADJACENCY 0x000C -#define GL_TRIANGLE_STRIP_ADJACENCY 0x000D -#define GL_PROGRAM_POINT_SIZE 0x8642 -#define GL_GEOMETRY_VERTICES_OUT 0x8916 -#define GL_GEOMETRY_INPUT_TYPE 0x8917 -#define GL_GEOMETRY_OUTPUT_TYPE 0x8918 -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8 -#define GL_GEOMETRY_SHADER 0x8DD9 -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1 -#define GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122 -#define GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123 -#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124 -#define GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125 -#define GL_CONTEXT_PROFILE_MASK 0x9126 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERI64VPROC) (GLenum target, GLenum value, GLint64 * data); -typedef void (GLAPIENTRY * PFNGLGETINTEGER64I_VPROC) (GLenum pname, GLuint index, GLint64 * data); - -#define glFramebufferTexture GLEW_GET_FUN(__glewFramebufferTexture) -#define glGetBufferParameteri64v GLEW_GET_FUN(__glewGetBufferParameteri64v) -#define glGetInteger64i_v GLEW_GET_FUN(__glewGetInteger64i_v) - -#define GLEW_VERSION_3_2 GLEW_GET_VAR(__GLEW_VERSION_3_2) - -#endif /* GL_VERSION_3_2 */ - -/* ----------------------------- GL_VERSION_3_3 ---------------------------- */ - -#ifndef GL_VERSION_3_3 -#define GL_VERSION_3_3 1 - -#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE -#define GL_RGB10_A2UI 0x906F - -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORPROC) (GLuint index, GLuint divisor); - -#define glVertexAttribDivisor GLEW_GET_FUN(__glewVertexAttribDivisor) - -#define GLEW_VERSION_3_3 GLEW_GET_VAR(__GLEW_VERSION_3_3) - -#endif /* GL_VERSION_3_3 */ - -/* ----------------------------- GL_VERSION_4_0 ---------------------------- */ - -#ifndef GL_VERSION_4_0 -#define GL_VERSION_4_0 1 - -#define GL_SAMPLE_SHADING 0x8C36 -#define GL_MIN_SAMPLE_SHADING_VALUE 0x8C37 -#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5E -#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5F -#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS 0x8F9F -#define GL_TEXTURE_CUBE_MAP_ARRAY 0x9009 -#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY 0x900A -#define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY 0x900B -#define GL_SAMPLER_CUBE_MAP_ARRAY 0x900C -#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW 0x900D -#define GL_INT_SAMPLER_CUBE_MAP_ARRAY 0x900E -#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY 0x900F - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIPROC) (GLuint buf, GLenum mode); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCIPROC) (GLuint buf, GLenum src, GLenum dst); -typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGPROC) (GLclampf value); - -#define glBlendEquationSeparatei GLEW_GET_FUN(__glewBlendEquationSeparatei) -#define glBlendEquationi GLEW_GET_FUN(__glewBlendEquationi) -#define glBlendFuncSeparatei GLEW_GET_FUN(__glewBlendFuncSeparatei) -#define glBlendFunci GLEW_GET_FUN(__glewBlendFunci) -#define glMinSampleShading GLEW_GET_FUN(__glewMinSampleShading) - -#define GLEW_VERSION_4_0 GLEW_GET_VAR(__GLEW_VERSION_4_0) - -#endif /* GL_VERSION_4_0 */ - -/* ----------------------------- GL_VERSION_4_1 ---------------------------- */ - -#ifndef GL_VERSION_4_1 -#define GL_VERSION_4_1 1 - -#define GLEW_VERSION_4_1 GLEW_GET_VAR(__GLEW_VERSION_4_1) - -#endif /* GL_VERSION_4_1 */ - -/* ----------------------------- GL_VERSION_4_2 ---------------------------- */ - -#ifndef GL_VERSION_4_2 -#define GL_VERSION_4_2 1 - -#define GL_TRANSFORM_FEEDBACK_PAUSED 0x8E23 -#define GL_TRANSFORM_FEEDBACK_ACTIVE 0x8E24 -#define GL_COMPRESSED_RGBA_BPTC_UNORM 0x8E8C -#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM 0x8E8D -#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT 0x8E8E -#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT 0x8E8F -#define GL_COPY_READ_BUFFER_BINDING 0x8F36 -#define GL_COPY_WRITE_BUFFER_BINDING 0x8F37 - -#define GLEW_VERSION_4_2 GLEW_GET_VAR(__GLEW_VERSION_4_2) - -#endif /* GL_VERSION_4_2 */ - -/* ----------------------------- GL_VERSION_4_3 ---------------------------- */ - -#ifndef GL_VERSION_4_3 -#define GL_VERSION_4_3 1 - -#define GL_NUM_SHADING_LANGUAGE_VERSIONS 0x82E9 -#define GL_VERTEX_ATTRIB_ARRAY_LONG 0x874E - -#define GLEW_VERSION_4_3 GLEW_GET_VAR(__GLEW_VERSION_4_3) - -#endif /* GL_VERSION_4_3 */ - -/* ----------------------------- GL_VERSION_4_4 ---------------------------- */ - -#ifndef GL_VERSION_4_4 -#define GL_VERSION_4_4 1 - -#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221 -#define GL_MAX_VERTEX_ATTRIB_STRIDE 0x82E5 -#define GL_TEXTURE_BUFFER_BINDING 0x8C2A - -#define GLEW_VERSION_4_4 GLEW_GET_VAR(__GLEW_VERSION_4_4) - -#endif /* GL_VERSION_4_4 */ - -/* ----------------------------- GL_VERSION_4_5 ---------------------------- */ - -#ifndef GL_VERSION_4_5 -#define GL_VERSION_4_5 1 - -#define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT 0x00000004 - -typedef GLenum (GLAPIENTRY * PFNGLGETGRAPHICSRESETSTATUSPROC) (void); -typedef void (GLAPIENTRY * PFNGLGETNCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint lod, GLsizei bufSize, GLvoid *pixels); -typedef void (GLAPIENTRY * PFNGLGETNTEXIMAGEPROC) (GLenum tex, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *pixels); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMDVPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble *params); - -#define glGetGraphicsResetStatus GLEW_GET_FUN(__glewGetGraphicsResetStatus) -#define glGetnCompressedTexImage GLEW_GET_FUN(__glewGetnCompressedTexImage) -#define glGetnTexImage GLEW_GET_FUN(__glewGetnTexImage) -#define glGetnUniformdv GLEW_GET_FUN(__glewGetnUniformdv) - -#define GLEW_VERSION_4_5 GLEW_GET_VAR(__GLEW_VERSION_4_5) - -#endif /* GL_VERSION_4_5 */ - -/* ----------------------------- GL_VERSION_4_6 ---------------------------- */ - -#ifndef GL_VERSION_4_6 -#define GL_VERSION_4_6 1 - -#define GL_CONTEXT_FLAG_NO_ERROR_BIT 0x00000008 -#define GL_PARAMETER_BUFFER 0x80EE -#define GL_PARAMETER_BUFFER_BINDING 0x80EF -#define GL_TRANSFORM_FEEDBACK_OVERFLOW 0x82EC -#define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW 0x82ED -#define GL_VERTICES_SUBMITTED 0x82EE -#define GL_PRIMITIVES_SUBMITTED 0x82EF -#define GL_VERTEX_SHADER_INVOCATIONS 0x82F0 -#define GL_TESS_CONTROL_SHADER_PATCHES 0x82F1 -#define GL_TESS_EVALUATION_SHADER_INVOCATIONS 0x82F2 -#define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED 0x82F3 -#define GL_FRAGMENT_SHADER_INVOCATIONS 0x82F4 -#define GL_COMPUTE_SHADER_INVOCATIONS 0x82F5 -#define GL_CLIPPING_INPUT_PRIMITIVES 0x82F6 -#define GL_CLIPPING_OUTPUT_PRIMITIVES 0x82F7 -#define GL_TEXTURE_MAX_ANISOTROPY 0x84FE -#define GL_MAX_TEXTURE_MAX_ANISOTROPY 0x84FF -#define GL_POLYGON_OFFSET_CLAMP 0x8E1B -#define GL_SHADER_BINARY_FORMAT_SPIR_V 0x9551 -#define GL_SPIR_V_BINARY 0x9552 -#define GL_SPIR_V_EXTENSIONS 0x9553 -#define GL_NUM_SPIR_V_EXTENSIONS 0x9554 - -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC) (GLenum mode, const GLvoid *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC) (GLenum mode, GLenum type, const GLvoid *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLSPECIALIZESHADERPROC) (GLuint shader, const GLchar *pEntryPoint, GLuint numSpecializationConstants, const GLuint *pConstantIndex, const GLuint *pConstantValue); - -#define glMultiDrawArraysIndirectCount GLEW_GET_FUN(__glewMultiDrawArraysIndirectCount) -#define glMultiDrawElementsIndirectCount GLEW_GET_FUN(__glewMultiDrawElementsIndirectCount) -#define glSpecializeShader GLEW_GET_FUN(__glewSpecializeShader) - -#define GLEW_VERSION_4_6 GLEW_GET_VAR(__GLEW_VERSION_4_6) - -#endif /* GL_VERSION_4_6 */ - -/* -------------------------- GL_3DFX_multisample -------------------------- */ - -#ifndef GL_3DFX_multisample -#define GL_3DFX_multisample 1 - -#define GL_MULTISAMPLE_3DFX 0x86B2 -#define GL_SAMPLE_BUFFERS_3DFX 0x86B3 -#define GL_SAMPLES_3DFX 0x86B4 -#define GL_MULTISAMPLE_BIT_3DFX 0x20000000 - -#define GLEW_3DFX_multisample GLEW_GET_VAR(__GLEW_3DFX_multisample) - -#endif /* GL_3DFX_multisample */ - -/* ---------------------------- GL_3DFX_tbuffer ---------------------------- */ - -#ifndef GL_3DFX_tbuffer -#define GL_3DFX_tbuffer 1 - -typedef void (GLAPIENTRY * PFNGLTBUFFERMASK3DFXPROC) (GLuint mask); - -#define glTbufferMask3DFX GLEW_GET_FUN(__glewTbufferMask3DFX) - -#define GLEW_3DFX_tbuffer GLEW_GET_VAR(__GLEW_3DFX_tbuffer) - -#endif /* GL_3DFX_tbuffer */ - -/* -------------------- GL_3DFX_texture_compression_FXT1 ------------------- */ - -#ifndef GL_3DFX_texture_compression_FXT1 -#define GL_3DFX_texture_compression_FXT1 1 - -#define GL_COMPRESSED_RGB_FXT1_3DFX 0x86B0 -#define GL_COMPRESSED_RGBA_FXT1_3DFX 0x86B1 - -#define GLEW_3DFX_texture_compression_FXT1 GLEW_GET_VAR(__GLEW_3DFX_texture_compression_FXT1) - -#endif /* GL_3DFX_texture_compression_FXT1 */ - -/* ----------------------- GL_AMD_blend_minmax_factor ---------------------- */ - -#ifndef GL_AMD_blend_minmax_factor -#define GL_AMD_blend_minmax_factor 1 - -#define GL_FACTOR_MIN_AMD 0x901C -#define GL_FACTOR_MAX_AMD 0x901D - -#define GLEW_AMD_blend_minmax_factor GLEW_GET_VAR(__GLEW_AMD_blend_minmax_factor) - -#endif /* GL_AMD_blend_minmax_factor */ - -/* --------------------- GL_AMD_compressed_3DC_texture --------------------- */ - -#ifndef GL_AMD_compressed_3DC_texture -#define GL_AMD_compressed_3DC_texture 1 - -#define GL_3DC_X_AMD 0x87F9 -#define GL_3DC_XY_AMD 0x87FA - -#define GLEW_AMD_compressed_3DC_texture GLEW_GET_VAR(__GLEW_AMD_compressed_3DC_texture) - -#endif /* GL_AMD_compressed_3DC_texture */ - -/* --------------------- GL_AMD_compressed_ATC_texture --------------------- */ - -#ifndef GL_AMD_compressed_ATC_texture -#define GL_AMD_compressed_ATC_texture 1 - -#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE -#define GL_ATC_RGB_AMD 0x8C92 -#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 - -#define GLEW_AMD_compressed_ATC_texture GLEW_GET_VAR(__GLEW_AMD_compressed_ATC_texture) - -#endif /* GL_AMD_compressed_ATC_texture */ - -/* ----------------------- GL_AMD_conservative_depth ----------------------- */ - -#ifndef GL_AMD_conservative_depth -#define GL_AMD_conservative_depth 1 - -#define GLEW_AMD_conservative_depth GLEW_GET_VAR(__GLEW_AMD_conservative_depth) - -#endif /* GL_AMD_conservative_depth */ - -/* -------------------------- GL_AMD_debug_output -------------------------- */ - -#ifndef GL_AMD_debug_output -#define GL_AMD_debug_output 1 - -#define GL_MAX_DEBUG_MESSAGE_LENGTH_AMD 0x9143 -#define GL_MAX_DEBUG_LOGGED_MESSAGES_AMD 0x9144 -#define GL_DEBUG_LOGGED_MESSAGES_AMD 0x9145 -#define GL_DEBUG_SEVERITY_HIGH_AMD 0x9146 -#define GL_DEBUG_SEVERITY_MEDIUM_AMD 0x9147 -#define GL_DEBUG_SEVERITY_LOW_AMD 0x9148 -#define GL_DEBUG_CATEGORY_API_ERROR_AMD 0x9149 -#define GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD 0x914A -#define GL_DEBUG_CATEGORY_DEPRECATION_AMD 0x914B -#define GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD 0x914C -#define GL_DEBUG_CATEGORY_PERFORMANCE_AMD 0x914D -#define GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD 0x914E -#define GL_DEBUG_CATEGORY_APPLICATION_AMD 0x914F -#define GL_DEBUG_CATEGORY_OTHER_AMD 0x9150 - -typedef void (GLAPIENTRY *GLDEBUGPROCAMD)(GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar* message, void* userParam); - -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACKAMDPROC) (GLDEBUGPROCAMD callback, void *userParam); -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEENABLEAMDPROC) (GLenum category, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled); -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERTAMDPROC) (GLenum category, GLenum severity, GLuint id, GLsizei length, const GLchar* buf); -typedef GLuint (GLAPIENTRY * PFNGLGETDEBUGMESSAGELOGAMDPROC) (GLuint count, GLsizei bufsize, GLenum* categories, GLuint* severities, GLuint* ids, GLsizei* lengths, GLchar* message); - -#define glDebugMessageCallbackAMD GLEW_GET_FUN(__glewDebugMessageCallbackAMD) -#define glDebugMessageEnableAMD GLEW_GET_FUN(__glewDebugMessageEnableAMD) -#define glDebugMessageInsertAMD GLEW_GET_FUN(__glewDebugMessageInsertAMD) -#define glGetDebugMessageLogAMD GLEW_GET_FUN(__glewGetDebugMessageLogAMD) - -#define GLEW_AMD_debug_output GLEW_GET_VAR(__GLEW_AMD_debug_output) - -#endif /* GL_AMD_debug_output */ - -/* ---------------------- GL_AMD_depth_clamp_separate ---------------------- */ - -#ifndef GL_AMD_depth_clamp_separate -#define GL_AMD_depth_clamp_separate 1 - -#define GL_DEPTH_CLAMP_NEAR_AMD 0x901E -#define GL_DEPTH_CLAMP_FAR_AMD 0x901F - -#define GLEW_AMD_depth_clamp_separate GLEW_GET_VAR(__GLEW_AMD_depth_clamp_separate) - -#endif /* GL_AMD_depth_clamp_separate */ - -/* ----------------------- GL_AMD_draw_buffers_blend ----------------------- */ - -#ifndef GL_AMD_draw_buffers_blend -#define GL_AMD_draw_buffers_blend 1 - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONINDEXEDAMDPROC) (GLuint buf, GLenum mode); -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCINDEXEDAMDPROC) (GLuint buf, GLenum src, GLenum dst); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); - -#define glBlendEquationIndexedAMD GLEW_GET_FUN(__glewBlendEquationIndexedAMD) -#define glBlendEquationSeparateIndexedAMD GLEW_GET_FUN(__glewBlendEquationSeparateIndexedAMD) -#define glBlendFuncIndexedAMD GLEW_GET_FUN(__glewBlendFuncIndexedAMD) -#define glBlendFuncSeparateIndexedAMD GLEW_GET_FUN(__glewBlendFuncSeparateIndexedAMD) - -#define GLEW_AMD_draw_buffers_blend GLEW_GET_VAR(__GLEW_AMD_draw_buffers_blend) - -#endif /* GL_AMD_draw_buffers_blend */ - -/* ---------------- GL_AMD_framebuffer_multisample_advanced ---------------- */ - -#ifndef GL_AMD_framebuffer_multisample_advanced -#define GL_AMD_framebuffer_multisample_advanced 1 - -#define GL_RENDERBUFFER_STORAGE_SAMPLES_AMD 0x91B2 -#define GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD 0x91B3 -#define GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD 0x91B4 -#define GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD 0x91B5 -#define GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD 0x91B6 -#define GL_SUPPORTED_MULTISAMPLE_MODES_AMD 0x91B7 - -typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC) (GLuint renderbuffer, GLsizei samples, GLsizei storageSamples, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC) (GLenum target, GLsizei samples, GLsizei storageSamples, GLenum internalformat, GLsizei width, GLsizei height); - -#define glNamedRenderbufferStorageMultisampleAdvancedAMD GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleAdvancedAMD) -#define glRenderbufferStorageMultisampleAdvancedAMD GLEW_GET_FUN(__glewRenderbufferStorageMultisampleAdvancedAMD) - -#define GLEW_AMD_framebuffer_multisample_advanced GLEW_GET_VAR(__GLEW_AMD_framebuffer_multisample_advanced) - -#endif /* GL_AMD_framebuffer_multisample_advanced */ - -/* ------------------ GL_AMD_framebuffer_sample_positions ------------------ */ - -#ifndef GL_AMD_framebuffer_sample_positions -#define GL_AMD_framebuffer_sample_positions 1 - -#define GL_SUBSAMPLE_DISTANCE_AMD 0x883F -#define GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD 0x91AE -#define GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD 0x91AF -#define GL_ALL_PIXELS_AMD 0xFFFFFFFF - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC) (GLenum target, GLuint numsamples, GLuint pixelindex, const GLfloat* values); -typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERFVAMDPROC) (GLenum target, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values); -typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERPARAMETERFVAMDPROC) (GLuint framebuffer, GLenum pname, GLuint numsamples, GLuint pixelindex, GLsizei size, GLfloat* values); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC) (GLuint framebuffer, GLuint numsamples, GLuint pixelindex, const GLfloat* values); - -#define glFramebufferSamplePositionsfvAMD GLEW_GET_FUN(__glewFramebufferSamplePositionsfvAMD) -#define glGetFramebufferParameterfvAMD GLEW_GET_FUN(__glewGetFramebufferParameterfvAMD) -#define glGetNamedFramebufferParameterfvAMD GLEW_GET_FUN(__glewGetNamedFramebufferParameterfvAMD) -#define glNamedFramebufferSamplePositionsfvAMD GLEW_GET_FUN(__glewNamedFramebufferSamplePositionsfvAMD) - -#define GLEW_AMD_framebuffer_sample_positions GLEW_GET_VAR(__GLEW_AMD_framebuffer_sample_positions) - -#endif /* GL_AMD_framebuffer_sample_positions */ - -/* --------------------------- GL_AMD_gcn_shader --------------------------- */ - -#ifndef GL_AMD_gcn_shader -#define GL_AMD_gcn_shader 1 - -#define GLEW_AMD_gcn_shader GLEW_GET_VAR(__GLEW_AMD_gcn_shader) - -#endif /* GL_AMD_gcn_shader */ - -/* ---------------------- GL_AMD_gpu_shader_half_float --------------------- */ - -#ifndef GL_AMD_gpu_shader_half_float -#define GL_AMD_gpu_shader_half_float 1 - -#define GL_FLOAT16_NV 0x8FF8 -#define GL_FLOAT16_VEC2_NV 0x8FF9 -#define GL_FLOAT16_VEC3_NV 0x8FFA -#define GL_FLOAT16_VEC4_NV 0x8FFB -#define GL_FLOAT16_MAT2_AMD 0x91C5 -#define GL_FLOAT16_MAT3_AMD 0x91C6 -#define GL_FLOAT16_MAT4_AMD 0x91C7 -#define GL_FLOAT16_MAT2x3_AMD 0x91C8 -#define GL_FLOAT16_MAT2x4_AMD 0x91C9 -#define GL_FLOAT16_MAT3x2_AMD 0x91CA -#define GL_FLOAT16_MAT3x4_AMD 0x91CB -#define GL_FLOAT16_MAT4x2_AMD 0x91CC -#define GL_FLOAT16_MAT4x3_AMD 0x91CD - -#define GLEW_AMD_gpu_shader_half_float GLEW_GET_VAR(__GLEW_AMD_gpu_shader_half_float) - -#endif /* GL_AMD_gpu_shader_half_float */ - -/* ------------------- GL_AMD_gpu_shader_half_float_fetch ------------------ */ - -#ifndef GL_AMD_gpu_shader_half_float_fetch -#define GL_AMD_gpu_shader_half_float_fetch 1 - -#define GL_FLOAT16_SAMPLER_1D_AMD 0x91CE -#define GL_FLOAT16_SAMPLER_2D_AMD 0x91CF -#define GL_FLOAT16_SAMPLER_3D_AMD 0x91D0 -#define GL_FLOAT16_SAMPLER_CUBE_AMD 0x91D1 -#define GL_FLOAT16_SAMPLER_2D_RECT_AMD 0x91D2 -#define GL_FLOAT16_SAMPLER_1D_ARRAY_AMD 0x91D3 -#define GL_FLOAT16_SAMPLER_2D_ARRAY_AMD 0x91D4 -#define GL_FLOAT16_SAMPLER_CUBE_MAP_ARRAY_AMD 0x91D5 -#define GL_FLOAT16_SAMPLER_BUFFER_AMD 0x91D6 -#define GL_FLOAT16_SAMPLER_2D_MULTISAMPLE_AMD 0x91D7 -#define GL_FLOAT16_SAMPLER_2D_MULTISAMPLE_ARRAY_AMD 0x91D8 -#define GL_FLOAT16_SAMPLER_1D_SHADOW_AMD 0x91D9 -#define GL_FLOAT16_SAMPLER_2D_SHADOW_AMD 0x91DA -#define GL_FLOAT16_SAMPLER_2D_RECT_SHADOW_AMD 0x91DB -#define GL_FLOAT16_SAMPLER_1D_ARRAY_SHADOW_AMD 0x91DC -#define GL_FLOAT16_SAMPLER_2D_ARRAY_SHADOW_AMD 0x91DD -#define GL_FLOAT16_SAMPLER_CUBE_SHADOW_AMD 0x91DE -#define GL_FLOAT16_SAMPLER_CUBE_MAP_ARRAY_SHADOW_AMD 0x91DF -#define GL_FLOAT16_IMAGE_1D_AMD 0x91E0 -#define GL_FLOAT16_IMAGE_2D_AMD 0x91E1 -#define GL_FLOAT16_IMAGE_3D_AMD 0x91E2 -#define GL_FLOAT16_IMAGE_2D_RECT_AMD 0x91E3 -#define GL_FLOAT16_IMAGE_CUBE_AMD 0x91E4 -#define GL_FLOAT16_IMAGE_1D_ARRAY_AMD 0x91E5 -#define GL_FLOAT16_IMAGE_2D_ARRAY_AMD 0x91E6 -#define GL_FLOAT16_IMAGE_CUBE_MAP_ARRAY_AMD 0x91E7 -#define GL_FLOAT16_IMAGE_BUFFER_AMD 0x91E8 -#define GL_FLOAT16_IMAGE_2D_MULTISAMPLE_AMD 0x91E9 -#define GL_FLOAT16_IMAGE_2D_MULTISAMPLE_ARRAY_AMD 0x91EA - -#define GLEW_AMD_gpu_shader_half_float_fetch GLEW_GET_VAR(__GLEW_AMD_gpu_shader_half_float_fetch) - -#endif /* GL_AMD_gpu_shader_half_float_fetch */ - -/* ------------------------ GL_AMD_gpu_shader_int16 ------------------------ */ - -#ifndef GL_AMD_gpu_shader_int16 -#define GL_AMD_gpu_shader_int16 1 - -#define GLEW_AMD_gpu_shader_int16 GLEW_GET_VAR(__GLEW_AMD_gpu_shader_int16) - -#endif /* GL_AMD_gpu_shader_int16 */ - -/* ------------------------ GL_AMD_gpu_shader_int64 ------------------------ */ - -#ifndef GL_AMD_gpu_shader_int64 -#define GL_AMD_gpu_shader_int64 1 - -#define GLEW_AMD_gpu_shader_int64 GLEW_GET_VAR(__GLEW_AMD_gpu_shader_int64) - -#endif /* GL_AMD_gpu_shader_int64 */ - -/* ---------------------- GL_AMD_interleaved_elements ---------------------- */ - -#ifndef GL_AMD_interleaved_elements -#define GL_AMD_interleaved_elements 1 - -#define GL_RED 0x1903 -#define GL_GREEN 0x1904 -#define GL_BLUE 0x1905 -#define GL_ALPHA 0x1906 -#define GL_RG8UI 0x8238 -#define GL_RG16UI 0x823A -#define GL_RGBA8UI 0x8D7C -#define GL_VERTEX_ELEMENT_SWIZZLE_AMD 0x91A4 -#define GL_VERTEX_ID_SWIZZLE_AMD 0x91A5 - -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPARAMETERIAMDPROC) (GLuint index, GLenum pname, GLint param); - -#define glVertexAttribParameteriAMD GLEW_GET_FUN(__glewVertexAttribParameteriAMD) - -#define GLEW_AMD_interleaved_elements GLEW_GET_VAR(__GLEW_AMD_interleaved_elements) - -#endif /* GL_AMD_interleaved_elements */ - -/* ----------------------- GL_AMD_multi_draw_indirect ---------------------- */ - -#ifndef GL_AMD_multi_draw_indirect -#define GL_AMD_multi_draw_indirect 1 - -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC) (GLenum mode, const void *indirect, GLsizei primcount, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei primcount, GLsizei stride); - -#define glMultiDrawArraysIndirectAMD GLEW_GET_FUN(__glewMultiDrawArraysIndirectAMD) -#define glMultiDrawElementsIndirectAMD GLEW_GET_FUN(__glewMultiDrawElementsIndirectAMD) - -#define GLEW_AMD_multi_draw_indirect GLEW_GET_VAR(__GLEW_AMD_multi_draw_indirect) - -#endif /* GL_AMD_multi_draw_indirect */ - -/* ------------------------- GL_AMD_name_gen_delete ------------------------ */ - -#ifndef GL_AMD_name_gen_delete -#define GL_AMD_name_gen_delete 1 - -#define GL_DATA_BUFFER_AMD 0x9151 -#define GL_PERFORMANCE_MONITOR_AMD 0x9152 -#define GL_QUERY_OBJECT_AMD 0x9153 -#define GL_VERTEX_ARRAY_OBJECT_AMD 0x9154 -#define GL_SAMPLER_OBJECT_AMD 0x9155 - -typedef void (GLAPIENTRY * PFNGLDELETENAMESAMDPROC) (GLenum identifier, GLuint num, const GLuint* names); -typedef void (GLAPIENTRY * PFNGLGENNAMESAMDPROC) (GLenum identifier, GLuint num, GLuint* names); -typedef GLboolean (GLAPIENTRY * PFNGLISNAMEAMDPROC) (GLenum identifier, GLuint name); - -#define glDeleteNamesAMD GLEW_GET_FUN(__glewDeleteNamesAMD) -#define glGenNamesAMD GLEW_GET_FUN(__glewGenNamesAMD) -#define glIsNameAMD GLEW_GET_FUN(__glewIsNameAMD) - -#define GLEW_AMD_name_gen_delete GLEW_GET_VAR(__GLEW_AMD_name_gen_delete) - -#endif /* GL_AMD_name_gen_delete */ - -/* ---------------------- GL_AMD_occlusion_query_event --------------------- */ - -#ifndef GL_AMD_occlusion_query_event -#define GL_AMD_occlusion_query_event 1 - -#define GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD 0x00000001 -#define GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD 0x00000002 -#define GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD 0x00000004 -#define GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD 0x00000008 -#define GL_OCCLUSION_QUERY_EVENT_MASK_AMD 0x874F -#define GL_QUERY_ALL_EVENT_BITS_AMD 0xFFFFFFFF - -typedef void (GLAPIENTRY * PFNGLQUERYOBJECTPARAMETERUIAMDPROC) (GLenum target, GLuint id, GLenum pname, GLuint param); - -#define glQueryObjectParameteruiAMD GLEW_GET_FUN(__glewQueryObjectParameteruiAMD) - -#define GLEW_AMD_occlusion_query_event GLEW_GET_VAR(__GLEW_AMD_occlusion_query_event) - -#endif /* GL_AMD_occlusion_query_event */ - -/* ----------------------- GL_AMD_performance_monitor ---------------------- */ - -#ifndef GL_AMD_performance_monitor -#define GL_AMD_performance_monitor 1 - -#define GL_COUNTER_TYPE_AMD 0x8BC0 -#define GL_COUNTER_RANGE_AMD 0x8BC1 -#define GL_UNSIGNED_INT64_AMD 0x8BC2 -#define GL_PERCENTAGE_AMD 0x8BC3 -#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4 -#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5 -#define GL_PERFMON_RESULT_AMD 0x8BC6 - -typedef void (GLAPIENTRY * PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor); -typedef void (GLAPIENTRY * PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint* monitors); -typedef void (GLAPIENTRY * PFNGLENDPERFMONITORAMDPROC) (GLuint monitor); -typedef void (GLAPIENTRY * PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint* monitors); -typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint *bytesWritten); -typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, void *data); -typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, GLchar *counterString); -typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint* numCounters, GLint *maxActiveCounters, GLsizei countersSize, GLuint *counters); -typedef void (GLAPIENTRY * PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei* length, GLchar *groupString); -typedef void (GLAPIENTRY * PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint* numGroups, GLsizei groupsSize, GLuint *groups); -typedef void (GLAPIENTRY * PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList); - -#define glBeginPerfMonitorAMD GLEW_GET_FUN(__glewBeginPerfMonitorAMD) -#define glDeletePerfMonitorsAMD GLEW_GET_FUN(__glewDeletePerfMonitorsAMD) -#define glEndPerfMonitorAMD GLEW_GET_FUN(__glewEndPerfMonitorAMD) -#define glGenPerfMonitorsAMD GLEW_GET_FUN(__glewGenPerfMonitorsAMD) -#define glGetPerfMonitorCounterDataAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterDataAMD) -#define glGetPerfMonitorCounterInfoAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterInfoAMD) -#define glGetPerfMonitorCounterStringAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterStringAMD) -#define glGetPerfMonitorCountersAMD GLEW_GET_FUN(__glewGetPerfMonitorCountersAMD) -#define glGetPerfMonitorGroupStringAMD GLEW_GET_FUN(__glewGetPerfMonitorGroupStringAMD) -#define glGetPerfMonitorGroupsAMD GLEW_GET_FUN(__glewGetPerfMonitorGroupsAMD) -#define glSelectPerfMonitorCountersAMD GLEW_GET_FUN(__glewSelectPerfMonitorCountersAMD) - -#define GLEW_AMD_performance_monitor GLEW_GET_VAR(__GLEW_AMD_performance_monitor) - -#endif /* GL_AMD_performance_monitor */ - -/* -------------------------- GL_AMD_pinned_memory ------------------------- */ - -#ifndef GL_AMD_pinned_memory -#define GL_AMD_pinned_memory 1 - -#define GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD 0x9160 - -#define GLEW_AMD_pinned_memory GLEW_GET_VAR(__GLEW_AMD_pinned_memory) - -#endif /* GL_AMD_pinned_memory */ - -/* ----------------------- GL_AMD_program_binary_Z400 ---------------------- */ - -#ifndef GL_AMD_program_binary_Z400 -#define GL_AMD_program_binary_Z400 1 - -#define GL_Z400_BINARY_AMD 0x8740 - -#define GLEW_AMD_program_binary_Z400 GLEW_GET_VAR(__GLEW_AMD_program_binary_Z400) - -#endif /* GL_AMD_program_binary_Z400 */ - -/* ----------------------- GL_AMD_query_buffer_object ---------------------- */ - -#ifndef GL_AMD_query_buffer_object -#define GL_AMD_query_buffer_object 1 - -#define GL_QUERY_BUFFER_AMD 0x9192 -#define GL_QUERY_BUFFER_BINDING_AMD 0x9193 -#define GL_QUERY_RESULT_NO_WAIT_AMD 0x9194 - -#define GLEW_AMD_query_buffer_object GLEW_GET_VAR(__GLEW_AMD_query_buffer_object) - -#endif /* GL_AMD_query_buffer_object */ - -/* ------------------------ GL_AMD_sample_positions ------------------------ */ - -#ifndef GL_AMD_sample_positions -#define GL_AMD_sample_positions 1 - -#define GL_SUBSAMPLE_DISTANCE_AMD 0x883F - -typedef void (GLAPIENTRY * PFNGLSETMULTISAMPLEFVAMDPROC) (GLenum pname, GLuint index, const GLfloat* val); - -#define glSetMultisamplefvAMD GLEW_GET_FUN(__glewSetMultisamplefvAMD) - -#define GLEW_AMD_sample_positions GLEW_GET_VAR(__GLEW_AMD_sample_positions) - -#endif /* GL_AMD_sample_positions */ - -/* ------------------ GL_AMD_seamless_cubemap_per_texture ------------------ */ - -#ifndef GL_AMD_seamless_cubemap_per_texture -#define GL_AMD_seamless_cubemap_per_texture 1 - -#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F - -#define GLEW_AMD_seamless_cubemap_per_texture GLEW_GET_VAR(__GLEW_AMD_seamless_cubemap_per_texture) - -#endif /* GL_AMD_seamless_cubemap_per_texture */ - -/* -------------------- GL_AMD_shader_atomic_counter_ops ------------------- */ - -#ifndef GL_AMD_shader_atomic_counter_ops -#define GL_AMD_shader_atomic_counter_ops 1 - -#define GLEW_AMD_shader_atomic_counter_ops GLEW_GET_VAR(__GLEW_AMD_shader_atomic_counter_ops) - -#endif /* GL_AMD_shader_atomic_counter_ops */ - -/* -------------------------- GL_AMD_shader_ballot ------------------------- */ - -#ifndef GL_AMD_shader_ballot -#define GL_AMD_shader_ballot 1 - -#define GLEW_AMD_shader_ballot GLEW_GET_VAR(__GLEW_AMD_shader_ballot) - -#endif /* GL_AMD_shader_ballot */ - -/* ---------------- GL_AMD_shader_explicit_vertex_parameter ---------------- */ - -#ifndef GL_AMD_shader_explicit_vertex_parameter -#define GL_AMD_shader_explicit_vertex_parameter 1 - -#define GLEW_AMD_shader_explicit_vertex_parameter GLEW_GET_VAR(__GLEW_AMD_shader_explicit_vertex_parameter) - -#endif /* GL_AMD_shader_explicit_vertex_parameter */ - -/* ------------------- GL_AMD_shader_image_load_store_lod ------------------ */ - -#ifndef GL_AMD_shader_image_load_store_lod -#define GL_AMD_shader_image_load_store_lod 1 - -#define GLEW_AMD_shader_image_load_store_lod GLEW_GET_VAR(__GLEW_AMD_shader_image_load_store_lod) - -#endif /* GL_AMD_shader_image_load_store_lod */ - -/* ---------------------- GL_AMD_shader_stencil_export --------------------- */ - -#ifndef GL_AMD_shader_stencil_export -#define GL_AMD_shader_stencil_export 1 - -#define GLEW_AMD_shader_stencil_export GLEW_GET_VAR(__GLEW_AMD_shader_stencil_export) - -#endif /* GL_AMD_shader_stencil_export */ - -/* ------------------- GL_AMD_shader_stencil_value_export ------------------ */ - -#ifndef GL_AMD_shader_stencil_value_export -#define GL_AMD_shader_stencil_value_export 1 - -#define GLEW_AMD_shader_stencil_value_export GLEW_GET_VAR(__GLEW_AMD_shader_stencil_value_export) - -#endif /* GL_AMD_shader_stencil_value_export */ - -/* ---------------------- GL_AMD_shader_trinary_minmax --------------------- */ - -#ifndef GL_AMD_shader_trinary_minmax -#define GL_AMD_shader_trinary_minmax 1 - -#define GLEW_AMD_shader_trinary_minmax GLEW_GET_VAR(__GLEW_AMD_shader_trinary_minmax) - -#endif /* GL_AMD_shader_trinary_minmax */ - -/* ------------------------- GL_AMD_sparse_texture ------------------------- */ - -#ifndef GL_AMD_sparse_texture -#define GL_AMD_sparse_texture 1 - -#define GL_TEXTURE_STORAGE_SPARSE_BIT_AMD 0x00000001 -#define GL_VIRTUAL_PAGE_SIZE_X_AMD 0x9195 -#define GL_VIRTUAL_PAGE_SIZE_Y_AMD 0x9196 -#define GL_VIRTUAL_PAGE_SIZE_Z_AMD 0x9197 -#define GL_MAX_SPARSE_TEXTURE_SIZE_AMD 0x9198 -#define GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD 0x9199 -#define GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS 0x919A -#define GL_MIN_SPARSE_LEVEL_AMD 0x919B -#define GL_MIN_LOD_WARNING_AMD 0x919C - -typedef void (GLAPIENTRY * PFNGLTEXSTORAGESPARSEAMDPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGESPARSEAMDPROC) (GLuint texture, GLenum target, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLsizei layers, GLbitfield flags); - -#define glTexStorageSparseAMD GLEW_GET_FUN(__glewTexStorageSparseAMD) -#define glTextureStorageSparseAMD GLEW_GET_FUN(__glewTextureStorageSparseAMD) - -#define GLEW_AMD_sparse_texture GLEW_GET_VAR(__GLEW_AMD_sparse_texture) - -#endif /* GL_AMD_sparse_texture */ - -/* ------------------- GL_AMD_stencil_operation_extended ------------------- */ - -#ifndef GL_AMD_stencil_operation_extended -#define GL_AMD_stencil_operation_extended 1 - -#define GL_SET_AMD 0x874A -#define GL_REPLACE_VALUE_AMD 0x874B -#define GL_STENCIL_OP_VALUE_AMD 0x874C -#define GL_STENCIL_BACK_OP_VALUE_AMD 0x874D - -typedef void (GLAPIENTRY * PFNGLSTENCILOPVALUEAMDPROC) (GLenum face, GLuint value); - -#define glStencilOpValueAMD GLEW_GET_FUN(__glewStencilOpValueAMD) - -#define GLEW_AMD_stencil_operation_extended GLEW_GET_VAR(__GLEW_AMD_stencil_operation_extended) - -#endif /* GL_AMD_stencil_operation_extended */ - -/* --------------------- GL_AMD_texture_gather_bias_lod -------------------- */ - -#ifndef GL_AMD_texture_gather_bias_lod -#define GL_AMD_texture_gather_bias_lod 1 - -#define GLEW_AMD_texture_gather_bias_lod GLEW_GET_VAR(__GLEW_AMD_texture_gather_bias_lod) - -#endif /* GL_AMD_texture_gather_bias_lod */ - -/* ------------------------ GL_AMD_texture_texture4 ------------------------ */ - -#ifndef GL_AMD_texture_texture4 -#define GL_AMD_texture_texture4 1 - -#define GLEW_AMD_texture_texture4 GLEW_GET_VAR(__GLEW_AMD_texture_texture4) - -#endif /* GL_AMD_texture_texture4 */ - -/* --------------- GL_AMD_transform_feedback3_lines_triangles -------------- */ - -#ifndef GL_AMD_transform_feedback3_lines_triangles -#define GL_AMD_transform_feedback3_lines_triangles 1 - -#define GLEW_AMD_transform_feedback3_lines_triangles GLEW_GET_VAR(__GLEW_AMD_transform_feedback3_lines_triangles) - -#endif /* GL_AMD_transform_feedback3_lines_triangles */ - -/* ----------------------- GL_AMD_transform_feedback4 ---------------------- */ - -#ifndef GL_AMD_transform_feedback4 -#define GL_AMD_transform_feedback4 1 - -#define GL_STREAM_RASTERIZATION_AMD 0x91A0 - -#define GLEW_AMD_transform_feedback4 GLEW_GET_VAR(__GLEW_AMD_transform_feedback4) - -#endif /* GL_AMD_transform_feedback4 */ - -/* ----------------------- GL_AMD_vertex_shader_layer ---------------------- */ - -#ifndef GL_AMD_vertex_shader_layer -#define GL_AMD_vertex_shader_layer 1 - -#define GLEW_AMD_vertex_shader_layer GLEW_GET_VAR(__GLEW_AMD_vertex_shader_layer) - -#endif /* GL_AMD_vertex_shader_layer */ - -/* -------------------- GL_AMD_vertex_shader_tessellator ------------------- */ - -#ifndef GL_AMD_vertex_shader_tessellator -#define GL_AMD_vertex_shader_tessellator 1 - -#define GL_SAMPLER_BUFFER_AMD 0x9001 -#define GL_INT_SAMPLER_BUFFER_AMD 0x9002 -#define GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD 0x9003 -#define GL_TESSELLATION_MODE_AMD 0x9004 -#define GL_TESSELLATION_FACTOR_AMD 0x9005 -#define GL_DISCRETE_AMD 0x9006 -#define GL_CONTINUOUS_AMD 0x9007 - -typedef void (GLAPIENTRY * PFNGLTESSELLATIONFACTORAMDPROC) (GLfloat factor); -typedef void (GLAPIENTRY * PFNGLTESSELLATIONMODEAMDPROC) (GLenum mode); - -#define glTessellationFactorAMD GLEW_GET_FUN(__glewTessellationFactorAMD) -#define glTessellationModeAMD GLEW_GET_FUN(__glewTessellationModeAMD) - -#define GLEW_AMD_vertex_shader_tessellator GLEW_GET_VAR(__GLEW_AMD_vertex_shader_tessellator) - -#endif /* GL_AMD_vertex_shader_tessellator */ - -/* ------------------ GL_AMD_vertex_shader_viewport_index ------------------ */ - -#ifndef GL_AMD_vertex_shader_viewport_index -#define GL_AMD_vertex_shader_viewport_index 1 - -#define GLEW_AMD_vertex_shader_viewport_index GLEW_GET_VAR(__GLEW_AMD_vertex_shader_viewport_index) - -#endif /* GL_AMD_vertex_shader_viewport_index */ - -/* -------------------- GL_ANDROID_extension_pack_es31a -------------------- */ - -#ifndef GL_ANDROID_extension_pack_es31a -#define GL_ANDROID_extension_pack_es31a 1 - -#define GLEW_ANDROID_extension_pack_es31a GLEW_GET_VAR(__GLEW_ANDROID_extension_pack_es31a) - -#endif /* GL_ANDROID_extension_pack_es31a */ - -/* ------------------------- GL_ANGLE_depth_texture ------------------------ */ - -#ifndef GL_ANGLE_depth_texture -#define GL_ANGLE_depth_texture 1 - -#define GLEW_ANGLE_depth_texture GLEW_GET_VAR(__GLEW_ANGLE_depth_texture) - -#endif /* GL_ANGLE_depth_texture */ - -/* ----------------------- GL_ANGLE_framebuffer_blit ----------------------- */ - -#ifndef GL_ANGLE_framebuffer_blit -#define GL_ANGLE_framebuffer_blit 1 - -#define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6 -#define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8 -#define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9 -#define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA - -typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); - -#define glBlitFramebufferANGLE GLEW_GET_FUN(__glewBlitFramebufferANGLE) - -#define GLEW_ANGLE_framebuffer_blit GLEW_GET_VAR(__GLEW_ANGLE_framebuffer_blit) - -#endif /* GL_ANGLE_framebuffer_blit */ - -/* -------------------- GL_ANGLE_framebuffer_multisample ------------------- */ - -#ifndef GL_ANGLE_framebuffer_multisample -#define GL_ANGLE_framebuffer_multisample 1 - -#define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56 -#define GL_MAX_SAMPLES_ANGLE 0x8D57 - -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); - -#define glRenderbufferStorageMultisampleANGLE GLEW_GET_FUN(__glewRenderbufferStorageMultisampleANGLE) - -#define GLEW_ANGLE_framebuffer_multisample GLEW_GET_VAR(__GLEW_ANGLE_framebuffer_multisample) - -#endif /* GL_ANGLE_framebuffer_multisample */ - -/* ----------------------- GL_ANGLE_instanced_arrays ----------------------- */ - -#ifndef GL_ANGLE_instanced_arrays -#define GL_ANGLE_instanced_arrays 1 - -#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE - -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORANGLEPROC) (GLuint index, GLuint divisor); - -#define glDrawArraysInstancedANGLE GLEW_GET_FUN(__glewDrawArraysInstancedANGLE) -#define glDrawElementsInstancedANGLE GLEW_GET_FUN(__glewDrawElementsInstancedANGLE) -#define glVertexAttribDivisorANGLE GLEW_GET_FUN(__glewVertexAttribDivisorANGLE) - -#define GLEW_ANGLE_instanced_arrays GLEW_GET_VAR(__GLEW_ANGLE_instanced_arrays) - -#endif /* GL_ANGLE_instanced_arrays */ - -/* -------------------- GL_ANGLE_pack_reverse_row_order -------------------- */ - -#ifndef GL_ANGLE_pack_reverse_row_order -#define GL_ANGLE_pack_reverse_row_order 1 - -#define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4 - -#define GLEW_ANGLE_pack_reverse_row_order GLEW_GET_VAR(__GLEW_ANGLE_pack_reverse_row_order) - -#endif /* GL_ANGLE_pack_reverse_row_order */ - -/* ------------------------ GL_ANGLE_program_binary ------------------------ */ - -#ifndef GL_ANGLE_program_binary -#define GL_ANGLE_program_binary 1 - -#define GL_PROGRAM_BINARY_ANGLE 0x93A6 - -#define GLEW_ANGLE_program_binary GLEW_GET_VAR(__GLEW_ANGLE_program_binary) - -#endif /* GL_ANGLE_program_binary */ - -/* ------------------- GL_ANGLE_texture_compression_dxt1 ------------------- */ - -#ifndef GL_ANGLE_texture_compression_dxt1 -#define GL_ANGLE_texture_compression_dxt1 1 - -#define GL_COMPRESSED_RGB_S3TC_DXT1_ANGLE 0x83F0 -#define GL_COMPRESSED_RGBA_S3TC_DXT1_ANGLE 0x83F1 -#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2 -#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3 - -#define GLEW_ANGLE_texture_compression_dxt1 GLEW_GET_VAR(__GLEW_ANGLE_texture_compression_dxt1) - -#endif /* GL_ANGLE_texture_compression_dxt1 */ - -/* ------------------- GL_ANGLE_texture_compression_dxt3 ------------------- */ - -#ifndef GL_ANGLE_texture_compression_dxt3 -#define GL_ANGLE_texture_compression_dxt3 1 - -#define GL_COMPRESSED_RGB_S3TC_DXT1_ANGLE 0x83F0 -#define GL_COMPRESSED_RGBA_S3TC_DXT1_ANGLE 0x83F1 -#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2 -#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3 - -#define GLEW_ANGLE_texture_compression_dxt3 GLEW_GET_VAR(__GLEW_ANGLE_texture_compression_dxt3) - -#endif /* GL_ANGLE_texture_compression_dxt3 */ - -/* ------------------- GL_ANGLE_texture_compression_dxt5 ------------------- */ - -#ifndef GL_ANGLE_texture_compression_dxt5 -#define GL_ANGLE_texture_compression_dxt5 1 - -#define GL_COMPRESSED_RGB_S3TC_DXT1_ANGLE 0x83F0 -#define GL_COMPRESSED_RGBA_S3TC_DXT1_ANGLE 0x83F1 -#define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2 -#define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3 - -#define GLEW_ANGLE_texture_compression_dxt5 GLEW_GET_VAR(__GLEW_ANGLE_texture_compression_dxt5) - -#endif /* GL_ANGLE_texture_compression_dxt5 */ - -/* ------------------------- GL_ANGLE_texture_usage ------------------------ */ - -#ifndef GL_ANGLE_texture_usage -#define GL_ANGLE_texture_usage 1 - -#define GL_TEXTURE_USAGE_ANGLE 0x93A2 -#define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3 - -#define GLEW_ANGLE_texture_usage GLEW_GET_VAR(__GLEW_ANGLE_texture_usage) - -#endif /* GL_ANGLE_texture_usage */ - -/* -------------------------- GL_ANGLE_timer_query ------------------------- */ - -#ifndef GL_ANGLE_timer_query -#define GL_ANGLE_timer_query 1 - -#define GL_QUERY_COUNTER_BITS_ANGLE 0x8864 -#define GL_CURRENT_QUERY_ANGLE 0x8865 -#define GL_QUERY_RESULT_ANGLE 0x8866 -#define GL_QUERY_RESULT_AVAILABLE_ANGLE 0x8867 -#define GL_TIME_ELAPSED_ANGLE 0x88BF -#define GL_TIMESTAMP_ANGLE 0x8E28 - -typedef void (GLAPIENTRY * PFNGLBEGINQUERYANGLEPROC) (GLenum target, GLuint id); -typedef void (GLAPIENTRY * PFNGLDELETEQUERIESANGLEPROC) (GLsizei n, const GLuint* ids); -typedef void (GLAPIENTRY * PFNGLENDQUERYANGLEPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLGENQUERIESANGLEPROC) (GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VANGLEPROC) (GLuint id, GLenum pname, GLint64* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVANGLEPROC) (GLuint id, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VANGLEPROC) (GLuint id, GLenum pname, GLuint64* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVANGLEPROC) (GLuint id, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYIVANGLEPROC) (GLenum target, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISQUERYANGLEPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLQUERYCOUNTERANGLEPROC) (GLuint id, GLenum target); - -#define glBeginQueryANGLE GLEW_GET_FUN(__glewBeginQueryANGLE) -#define glDeleteQueriesANGLE GLEW_GET_FUN(__glewDeleteQueriesANGLE) -#define glEndQueryANGLE GLEW_GET_FUN(__glewEndQueryANGLE) -#define glGenQueriesANGLE GLEW_GET_FUN(__glewGenQueriesANGLE) -#define glGetQueryObjecti64vANGLE GLEW_GET_FUN(__glewGetQueryObjecti64vANGLE) -#define glGetQueryObjectivANGLE GLEW_GET_FUN(__glewGetQueryObjectivANGLE) -#define glGetQueryObjectui64vANGLE GLEW_GET_FUN(__glewGetQueryObjectui64vANGLE) -#define glGetQueryObjectuivANGLE GLEW_GET_FUN(__glewGetQueryObjectuivANGLE) -#define glGetQueryivANGLE GLEW_GET_FUN(__glewGetQueryivANGLE) -#define glIsQueryANGLE GLEW_GET_FUN(__glewIsQueryANGLE) -#define glQueryCounterANGLE GLEW_GET_FUN(__glewQueryCounterANGLE) - -#define GLEW_ANGLE_timer_query GLEW_GET_VAR(__GLEW_ANGLE_timer_query) - -#endif /* GL_ANGLE_timer_query */ - -/* ------------------- GL_ANGLE_translated_shader_source ------------------- */ - -#ifndef GL_ANGLE_translated_shader_source -#define GL_ANGLE_translated_shader_source 1 - -#define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0 - -typedef void (GLAPIENTRY * PFNGLGETTRANSLATEDSHADERSOURCEANGLEPROC) (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source); - -#define glGetTranslatedShaderSourceANGLE GLEW_GET_FUN(__glewGetTranslatedShaderSourceANGLE) - -#define GLEW_ANGLE_translated_shader_source GLEW_GET_VAR(__GLEW_ANGLE_translated_shader_source) - -#endif /* GL_ANGLE_translated_shader_source */ - -/* ----------------------- GL_APPLE_aux_depth_stencil ---------------------- */ - -#ifndef GL_APPLE_aux_depth_stencil -#define GL_APPLE_aux_depth_stencil 1 - -#define GL_AUX_DEPTH_STENCIL_APPLE 0x8A14 - -#define GLEW_APPLE_aux_depth_stencil GLEW_GET_VAR(__GLEW_APPLE_aux_depth_stencil) - -#endif /* GL_APPLE_aux_depth_stencil */ - -/* ------------------------ GL_APPLE_client_storage ------------------------ */ - -#ifndef GL_APPLE_client_storage -#define GL_APPLE_client_storage 1 - -#define GL_UNPACK_CLIENT_STORAGE_APPLE 0x85B2 - -#define GLEW_APPLE_client_storage GLEW_GET_VAR(__GLEW_APPLE_client_storage) - -#endif /* GL_APPLE_client_storage */ - -/* ------------------------- GL_APPLE_clip_distance ------------------------ */ - -#ifndef GL_APPLE_clip_distance -#define GL_APPLE_clip_distance 1 - -#define GL_MAX_CLIP_DISTANCES_APPLE 0x0D32 -#define GL_CLIP_DISTANCE0_APPLE 0x3000 -#define GL_CLIP_DISTANCE1_APPLE 0x3001 -#define GL_CLIP_DISTANCE2_APPLE 0x3002 -#define GL_CLIP_DISTANCE3_APPLE 0x3003 -#define GL_CLIP_DISTANCE4_APPLE 0x3004 -#define GL_CLIP_DISTANCE5_APPLE 0x3005 -#define GL_CLIP_DISTANCE6_APPLE 0x3006 -#define GL_CLIP_DISTANCE7_APPLE 0x3007 - -#define GLEW_APPLE_clip_distance GLEW_GET_VAR(__GLEW_APPLE_clip_distance) - -#endif /* GL_APPLE_clip_distance */ - -/* ------------------- GL_APPLE_color_buffer_packed_float ------------------ */ - -#ifndef GL_APPLE_color_buffer_packed_float -#define GL_APPLE_color_buffer_packed_float 1 - -#define GLEW_APPLE_color_buffer_packed_float GLEW_GET_VAR(__GLEW_APPLE_color_buffer_packed_float) - -#endif /* GL_APPLE_color_buffer_packed_float */ - -/* ---------------------- GL_APPLE_copy_texture_levels --------------------- */ - -#ifndef GL_APPLE_copy_texture_levels -#define GL_APPLE_copy_texture_levels 1 - -typedef void (GLAPIENTRY * PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount); - -#define glCopyTextureLevelsAPPLE GLEW_GET_FUN(__glewCopyTextureLevelsAPPLE) - -#define GLEW_APPLE_copy_texture_levels GLEW_GET_VAR(__GLEW_APPLE_copy_texture_levels) - -#endif /* GL_APPLE_copy_texture_levels */ - -/* ------------------------- GL_APPLE_element_array ------------------------ */ - -#ifndef GL_APPLE_element_array -#define GL_APPLE_element_array 1 - -#define GL_ELEMENT_ARRAY_APPLE 0x8A0C -#define GL_ELEMENT_ARRAY_TYPE_APPLE 0x8A0D -#define GL_ELEMENT_ARRAY_POINTER_APPLE 0x8A0E - -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, GLint first, GLsizei count); -typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count); -typedef void (GLAPIENTRY * PFNGLELEMENTPOINTERAPPLEPROC) (GLenum type, const void *pointer); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, const GLint* first, const GLsizei *count, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, const GLint* first, const GLsizei *count, GLsizei primcount); - -#define glDrawElementArrayAPPLE GLEW_GET_FUN(__glewDrawElementArrayAPPLE) -#define glDrawRangeElementArrayAPPLE GLEW_GET_FUN(__glewDrawRangeElementArrayAPPLE) -#define glElementPointerAPPLE GLEW_GET_FUN(__glewElementPointerAPPLE) -#define glMultiDrawElementArrayAPPLE GLEW_GET_FUN(__glewMultiDrawElementArrayAPPLE) -#define glMultiDrawRangeElementArrayAPPLE GLEW_GET_FUN(__glewMultiDrawRangeElementArrayAPPLE) - -#define GLEW_APPLE_element_array GLEW_GET_VAR(__GLEW_APPLE_element_array) - -#endif /* GL_APPLE_element_array */ - -/* ----------------------------- GL_APPLE_fence ---------------------------- */ - -#ifndef GL_APPLE_fence -#define GL_APPLE_fence 1 - -#define GL_DRAW_PIXELS_APPLE 0x8A0A -#define GL_FENCE_APPLE 0x8A0B - -typedef void (GLAPIENTRY * PFNGLDELETEFENCESAPPLEPROC) (GLsizei n, const GLuint* fences); -typedef void (GLAPIENTRY * PFNGLFINISHFENCEAPPLEPROC) (GLuint fence); -typedef void (GLAPIENTRY * PFNGLFINISHOBJECTAPPLEPROC) (GLenum object, GLint name); -typedef void (GLAPIENTRY * PFNGLGENFENCESAPPLEPROC) (GLsizei n, GLuint* fences); -typedef GLboolean (GLAPIENTRY * PFNGLISFENCEAPPLEPROC) (GLuint fence); -typedef void (GLAPIENTRY * PFNGLSETFENCEAPPLEPROC) (GLuint fence); -typedef GLboolean (GLAPIENTRY * PFNGLTESTFENCEAPPLEPROC) (GLuint fence); -typedef GLboolean (GLAPIENTRY * PFNGLTESTOBJECTAPPLEPROC) (GLenum object, GLuint name); - -#define glDeleteFencesAPPLE GLEW_GET_FUN(__glewDeleteFencesAPPLE) -#define glFinishFenceAPPLE GLEW_GET_FUN(__glewFinishFenceAPPLE) -#define glFinishObjectAPPLE GLEW_GET_FUN(__glewFinishObjectAPPLE) -#define glGenFencesAPPLE GLEW_GET_FUN(__glewGenFencesAPPLE) -#define glIsFenceAPPLE GLEW_GET_FUN(__glewIsFenceAPPLE) -#define glSetFenceAPPLE GLEW_GET_FUN(__glewSetFenceAPPLE) -#define glTestFenceAPPLE GLEW_GET_FUN(__glewTestFenceAPPLE) -#define glTestObjectAPPLE GLEW_GET_FUN(__glewTestObjectAPPLE) - -#define GLEW_APPLE_fence GLEW_GET_VAR(__GLEW_APPLE_fence) - -#endif /* GL_APPLE_fence */ - -/* ------------------------- GL_APPLE_float_pixels ------------------------- */ - -#ifndef GL_APPLE_float_pixels -#define GL_APPLE_float_pixels 1 - -#define GL_HALF_APPLE 0x140B -#define GL_RGBA_FLOAT32_APPLE 0x8814 -#define GL_RGB_FLOAT32_APPLE 0x8815 -#define GL_ALPHA_FLOAT32_APPLE 0x8816 -#define GL_INTENSITY_FLOAT32_APPLE 0x8817 -#define GL_LUMINANCE_FLOAT32_APPLE 0x8818 -#define GL_LUMINANCE_ALPHA_FLOAT32_APPLE 0x8819 -#define GL_RGBA_FLOAT16_APPLE 0x881A -#define GL_RGB_FLOAT16_APPLE 0x881B -#define GL_ALPHA_FLOAT16_APPLE 0x881C -#define GL_INTENSITY_FLOAT16_APPLE 0x881D -#define GL_LUMINANCE_FLOAT16_APPLE 0x881E -#define GL_LUMINANCE_ALPHA_FLOAT16_APPLE 0x881F -#define GL_COLOR_FLOAT_APPLE 0x8A0F - -#define GLEW_APPLE_float_pixels GLEW_GET_VAR(__GLEW_APPLE_float_pixels) - -#endif /* GL_APPLE_float_pixels */ - -/* ---------------------- GL_APPLE_flush_buffer_range ---------------------- */ - -#ifndef GL_APPLE_flush_buffer_range -#define GL_APPLE_flush_buffer_range 1 - -#define GL_BUFFER_SERIALIZED_MODIFY_APPLE 0x8A12 -#define GL_BUFFER_FLUSHING_UNMAP_APPLE 0x8A13 - -typedef void (GLAPIENTRY * PFNGLBUFFERPARAMETERIAPPLEPROC) (GLenum target, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC) (GLenum target, GLintptr offset, GLsizeiptr size); - -#define glBufferParameteriAPPLE GLEW_GET_FUN(__glewBufferParameteriAPPLE) -#define glFlushMappedBufferRangeAPPLE GLEW_GET_FUN(__glewFlushMappedBufferRangeAPPLE) - -#define GLEW_APPLE_flush_buffer_range GLEW_GET_VAR(__GLEW_APPLE_flush_buffer_range) - -#endif /* GL_APPLE_flush_buffer_range */ - -/* -------------------- GL_APPLE_framebuffer_multisample ------------------- */ - -#ifndef GL_APPLE_framebuffer_multisample -#define GL_APPLE_framebuffer_multisample 1 - -#define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6 -#define GL_READ_FRAMEBUFFER_APPLE 0x8CA8 -#define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9 -#define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA -#define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56 -#define GL_MAX_SAMPLES_APPLE 0x8D57 - -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void); - -#define glRenderbufferStorageMultisampleAPPLE GLEW_GET_FUN(__glewRenderbufferStorageMultisampleAPPLE) -#define glResolveMultisampleFramebufferAPPLE GLEW_GET_FUN(__glewResolveMultisampleFramebufferAPPLE) - -#define GLEW_APPLE_framebuffer_multisample GLEW_GET_VAR(__GLEW_APPLE_framebuffer_multisample) - -#endif /* GL_APPLE_framebuffer_multisample */ - -/* ----------------------- GL_APPLE_object_purgeable ----------------------- */ - -#ifndef GL_APPLE_object_purgeable -#define GL_APPLE_object_purgeable 1 - -#define GL_BUFFER_OBJECT_APPLE 0x85B3 -#define GL_RELEASED_APPLE 0x8A19 -#define GL_VOLATILE_APPLE 0x8A1A -#define GL_RETAINED_APPLE 0x8A1B -#define GL_UNDEFINED_APPLE 0x8A1C -#define GL_PURGEABLE_APPLE 0x8A1D - -typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERIVAPPLEPROC) (GLenum objectType, GLuint name, GLenum pname, GLint* params); -typedef GLenum (GLAPIENTRY * PFNGLOBJECTPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option); -typedef GLenum (GLAPIENTRY * PFNGLOBJECTUNPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option); - -#define glGetObjectParameterivAPPLE GLEW_GET_FUN(__glewGetObjectParameterivAPPLE) -#define glObjectPurgeableAPPLE GLEW_GET_FUN(__glewObjectPurgeableAPPLE) -#define glObjectUnpurgeableAPPLE GLEW_GET_FUN(__glewObjectUnpurgeableAPPLE) - -#define GLEW_APPLE_object_purgeable GLEW_GET_VAR(__GLEW_APPLE_object_purgeable) - -#endif /* GL_APPLE_object_purgeable */ - -/* ------------------------- GL_APPLE_pixel_buffer ------------------------- */ - -#ifndef GL_APPLE_pixel_buffer -#define GL_APPLE_pixel_buffer 1 - -#define GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE 0x8A10 - -#define GLEW_APPLE_pixel_buffer GLEW_GET_VAR(__GLEW_APPLE_pixel_buffer) - -#endif /* GL_APPLE_pixel_buffer */ - -/* ---------------------------- GL_APPLE_rgb_422 --------------------------- */ - -#ifndef GL_APPLE_rgb_422 -#define GL_APPLE_rgb_422 1 - -#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA -#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB -#define GL_RGB_422_APPLE 0x8A1F -#define GL_RGB_RAW_422_APPLE 0x8A51 - -#define GLEW_APPLE_rgb_422 GLEW_GET_VAR(__GLEW_APPLE_rgb_422) - -#endif /* GL_APPLE_rgb_422 */ - -/* --------------------------- GL_APPLE_row_bytes -------------------------- */ - -#ifndef GL_APPLE_row_bytes -#define GL_APPLE_row_bytes 1 - -#define GL_PACK_ROW_BYTES_APPLE 0x8A15 -#define GL_UNPACK_ROW_BYTES_APPLE 0x8A16 - -#define GLEW_APPLE_row_bytes GLEW_GET_VAR(__GLEW_APPLE_row_bytes) - -#endif /* GL_APPLE_row_bytes */ - -/* ------------------------ GL_APPLE_specular_vector ----------------------- */ - -#ifndef GL_APPLE_specular_vector -#define GL_APPLE_specular_vector 1 - -#define GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE 0x85B0 - -#define GLEW_APPLE_specular_vector GLEW_GET_VAR(__GLEW_APPLE_specular_vector) - -#endif /* GL_APPLE_specular_vector */ - -/* ----------------------------- GL_APPLE_sync ----------------------------- */ - -#ifndef GL_APPLE_sync -#define GL_APPLE_sync 1 - -#define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001 -#define GL_SYNC_OBJECT_APPLE 0x8A53 -#define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111 -#define GL_OBJECT_TYPE_APPLE 0x9112 -#define GL_SYNC_CONDITION_APPLE 0x9113 -#define GL_SYNC_STATUS_APPLE 0x9114 -#define GL_SYNC_FLAGS_APPLE 0x9115 -#define GL_SYNC_FENCE_APPLE 0x9116 -#define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117 -#define GL_UNSIGNALED_APPLE 0x9118 -#define GL_SIGNALED_APPLE 0x9119 -#define GL_ALREADY_SIGNALED_APPLE 0x911A -#define GL_TIMEOUT_EXPIRED_APPLE 0x911B -#define GL_CONDITION_SATISFIED_APPLE 0x911C -#define GL_WAIT_FAILED_APPLE 0x911D -#define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull - -typedef GLenum (GLAPIENTRY * PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync GLsync, GLbitfield flags, GLuint64 timeout); -typedef void (GLAPIENTRY * PFNGLDELETESYNCAPPLEPROC) (GLsync GLsync); -typedef GLsync (GLAPIENTRY * PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags); -typedef void (GLAPIENTRY * PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64* params); -typedef void (GLAPIENTRY * PFNGLGETSYNCIVAPPLEPROC) (GLsync GLsync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint *values); -typedef GLboolean (GLAPIENTRY * PFNGLISSYNCAPPLEPROC) (GLsync GLsync); -typedef void (GLAPIENTRY * PFNGLWAITSYNCAPPLEPROC) (GLsync GLsync, GLbitfield flags, GLuint64 timeout); - -#define glClientWaitSyncAPPLE GLEW_GET_FUN(__glewClientWaitSyncAPPLE) -#define glDeleteSyncAPPLE GLEW_GET_FUN(__glewDeleteSyncAPPLE) -#define glFenceSyncAPPLE GLEW_GET_FUN(__glewFenceSyncAPPLE) -#define glGetInteger64vAPPLE GLEW_GET_FUN(__glewGetInteger64vAPPLE) -#define glGetSyncivAPPLE GLEW_GET_FUN(__glewGetSyncivAPPLE) -#define glIsSyncAPPLE GLEW_GET_FUN(__glewIsSyncAPPLE) -#define glWaitSyncAPPLE GLEW_GET_FUN(__glewWaitSyncAPPLE) - -#define GLEW_APPLE_sync GLEW_GET_VAR(__GLEW_APPLE_sync) - -#endif /* GL_APPLE_sync */ - -/* -------------------- GL_APPLE_texture_2D_limited_npot ------------------- */ - -#ifndef GL_APPLE_texture_2D_limited_npot -#define GL_APPLE_texture_2D_limited_npot 1 - -#define GLEW_APPLE_texture_2D_limited_npot GLEW_GET_VAR(__GLEW_APPLE_texture_2D_limited_npot) - -#endif /* GL_APPLE_texture_2D_limited_npot */ - -/* -------------------- GL_APPLE_texture_format_BGRA8888 ------------------- */ - -#ifndef GL_APPLE_texture_format_BGRA8888 -#define GL_APPLE_texture_format_BGRA8888 1 - -#define GL_BGRA_EXT 0x80E1 -#define GL_BGRA8_EXT 0x93A1 - -#define GLEW_APPLE_texture_format_BGRA8888 GLEW_GET_VAR(__GLEW_APPLE_texture_format_BGRA8888) - -#endif /* GL_APPLE_texture_format_BGRA8888 */ - -/* ----------------------- GL_APPLE_texture_max_level ---------------------- */ - -#ifndef GL_APPLE_texture_max_level -#define GL_APPLE_texture_max_level 1 - -#define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D - -#define GLEW_APPLE_texture_max_level GLEW_GET_VAR(__GLEW_APPLE_texture_max_level) - -#endif /* GL_APPLE_texture_max_level */ - -/* --------------------- GL_APPLE_texture_packed_float --------------------- */ - -#ifndef GL_APPLE_texture_packed_float -#define GL_APPLE_texture_packed_float 1 - -#define GL_R11F_G11F_B10F_APPLE 0x8C3A -#define GL_UNSIGNED_INT_10F_11F_11F_REV_APPLE 0x8C3B -#define GL_RGB9_E5_APPLE 0x8C3D -#define GL_UNSIGNED_INT_5_9_9_9_REV_APPLE 0x8C3E - -#define GLEW_APPLE_texture_packed_float GLEW_GET_VAR(__GLEW_APPLE_texture_packed_float) - -#endif /* GL_APPLE_texture_packed_float */ - -/* ------------------------- GL_APPLE_texture_range ------------------------ */ - -#ifndef GL_APPLE_texture_range -#define GL_APPLE_texture_range 1 - -#define GL_TEXTURE_RANGE_LENGTH_APPLE 0x85B7 -#define GL_TEXTURE_RANGE_POINTER_APPLE 0x85B8 -#define GL_TEXTURE_STORAGE_HINT_APPLE 0x85BC -#define GL_STORAGE_PRIVATE_APPLE 0x85BD -#define GL_STORAGE_CACHED_APPLE 0x85BE -#define GL_STORAGE_SHARED_APPLE 0x85BF - -typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC) (GLenum target, GLenum pname, void **params); -typedef void (GLAPIENTRY * PFNGLTEXTURERANGEAPPLEPROC) (GLenum target, GLsizei length, void *pointer); - -#define glGetTexParameterPointervAPPLE GLEW_GET_FUN(__glewGetTexParameterPointervAPPLE) -#define glTextureRangeAPPLE GLEW_GET_FUN(__glewTextureRangeAPPLE) - -#define GLEW_APPLE_texture_range GLEW_GET_VAR(__GLEW_APPLE_texture_range) - -#endif /* GL_APPLE_texture_range */ - -/* ------------------------ GL_APPLE_transform_hint ------------------------ */ - -#ifndef GL_APPLE_transform_hint -#define GL_APPLE_transform_hint 1 - -#define GL_TRANSFORM_HINT_APPLE 0x85B1 - -#define GLEW_APPLE_transform_hint GLEW_GET_VAR(__GLEW_APPLE_transform_hint) - -#endif /* GL_APPLE_transform_hint */ - -/* ---------------------- GL_APPLE_vertex_array_object --------------------- */ - -#ifndef GL_APPLE_vertex_array_object -#define GL_APPLE_vertex_array_object 1 - -#define GL_VERTEX_ARRAY_BINDING_APPLE 0x85B5 - -typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYAPPLEPROC) (GLuint array); -typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint* arrays); -typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint* arrays); -typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYAPPLEPROC) (GLuint array); - -#define glBindVertexArrayAPPLE GLEW_GET_FUN(__glewBindVertexArrayAPPLE) -#define glDeleteVertexArraysAPPLE GLEW_GET_FUN(__glewDeleteVertexArraysAPPLE) -#define glGenVertexArraysAPPLE GLEW_GET_FUN(__glewGenVertexArraysAPPLE) -#define glIsVertexArrayAPPLE GLEW_GET_FUN(__glewIsVertexArrayAPPLE) - -#define GLEW_APPLE_vertex_array_object GLEW_GET_VAR(__GLEW_APPLE_vertex_array_object) - -#endif /* GL_APPLE_vertex_array_object */ - -/* ---------------------- GL_APPLE_vertex_array_range ---------------------- */ - -#ifndef GL_APPLE_vertex_array_range -#define GL_APPLE_vertex_array_range 1 - -#define GL_VERTEX_ARRAY_RANGE_APPLE 0x851D -#define GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE 0x851E -#define GL_VERTEX_ARRAY_STORAGE_HINT_APPLE 0x851F -#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_APPLE 0x8520 -#define GL_VERTEX_ARRAY_RANGE_POINTER_APPLE 0x8521 -#define GL_STORAGE_CLIENT_APPLE 0x85B4 -#define GL_STORAGE_CACHED_APPLE 0x85BE -#define GL_STORAGE_SHARED_APPLE 0x85BF - -typedef void (GLAPIENTRY * PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void *pointer); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYPARAMETERIAPPLEPROC) (GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void *pointer); - -#define glFlushVertexArrayRangeAPPLE GLEW_GET_FUN(__glewFlushVertexArrayRangeAPPLE) -#define glVertexArrayParameteriAPPLE GLEW_GET_FUN(__glewVertexArrayParameteriAPPLE) -#define glVertexArrayRangeAPPLE GLEW_GET_FUN(__glewVertexArrayRangeAPPLE) - -#define GLEW_APPLE_vertex_array_range GLEW_GET_VAR(__GLEW_APPLE_vertex_array_range) - -#endif /* GL_APPLE_vertex_array_range */ - -/* ------------------- GL_APPLE_vertex_program_evaluators ------------------ */ - -#ifndef GL_APPLE_vertex_program_evaluators -#define GL_APPLE_vertex_program_evaluators 1 - -#define GL_VERTEX_ATTRIB_MAP1_APPLE 0x8A00 -#define GL_VERTEX_ATTRIB_MAP2_APPLE 0x8A01 -#define GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE 0x8A02 -#define GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE 0x8A03 -#define GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE 0x8A04 -#define GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE 0x8A05 -#define GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE 0x8A06 -#define GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE 0x8A07 -#define GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE 0x8A08 -#define GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE 0x8A09 - -typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname); -typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname); -typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXATTRIBENABLEDAPPLEPROC) (GLuint index, GLenum pname); -typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB1DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble* points); -typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB1FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points); -typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble* points); -typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat* points); - -#define glDisableVertexAttribAPPLE GLEW_GET_FUN(__glewDisableVertexAttribAPPLE) -#define glEnableVertexAttribAPPLE GLEW_GET_FUN(__glewEnableVertexAttribAPPLE) -#define glIsVertexAttribEnabledAPPLE GLEW_GET_FUN(__glewIsVertexAttribEnabledAPPLE) -#define glMapVertexAttrib1dAPPLE GLEW_GET_FUN(__glewMapVertexAttrib1dAPPLE) -#define glMapVertexAttrib1fAPPLE GLEW_GET_FUN(__glewMapVertexAttrib1fAPPLE) -#define glMapVertexAttrib2dAPPLE GLEW_GET_FUN(__glewMapVertexAttrib2dAPPLE) -#define glMapVertexAttrib2fAPPLE GLEW_GET_FUN(__glewMapVertexAttrib2fAPPLE) - -#define GLEW_APPLE_vertex_program_evaluators GLEW_GET_VAR(__GLEW_APPLE_vertex_program_evaluators) - -#endif /* GL_APPLE_vertex_program_evaluators */ - -/* --------------------------- GL_APPLE_ycbcr_422 -------------------------- */ - -#ifndef GL_APPLE_ycbcr_422 -#define GL_APPLE_ycbcr_422 1 - -#define GL_YCBCR_422_APPLE 0x85B9 - -#define GLEW_APPLE_ycbcr_422 GLEW_GET_VAR(__GLEW_APPLE_ycbcr_422) - -#endif /* GL_APPLE_ycbcr_422 */ - -/* ------------------------ GL_ARB_ES2_compatibility ----------------------- */ - -#ifndef GL_ARB_ES2_compatibility -#define GL_ARB_ES2_compatibility 1 - -#define GL_FIXED 0x140C -#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A -#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B -#define GL_RGB565 0x8D62 -#define GL_LOW_FLOAT 0x8DF0 -#define GL_MEDIUM_FLOAT 0x8DF1 -#define GL_HIGH_FLOAT 0x8DF2 -#define GL_LOW_INT 0x8DF3 -#define GL_MEDIUM_INT 0x8DF4 -#define GL_HIGH_INT 0x8DF5 -#define GL_SHADER_BINARY_FORMATS 0x8DF8 -#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9 -#define GL_SHADER_COMPILER 0x8DFA -#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB -#define GL_MAX_VARYING_VECTORS 0x8DFC -#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD - -typedef int GLfixed; - -typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFPROC) (GLclampf d); -typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFPROC) (GLclampf n, GLclampf f); -typedef void (GLAPIENTRY * PFNGLGETSHADERPRECISIONFORMATPROC) (GLenum shadertype, GLenum precisiontype, GLint* range, GLint *precision); -typedef void (GLAPIENTRY * PFNGLRELEASESHADERCOMPILERPROC) (void); -typedef void (GLAPIENTRY * PFNGLSHADERBINARYPROC) (GLsizei count, const GLuint* shaders, GLenum binaryformat, const void*binary, GLsizei length); - -#define glClearDepthf GLEW_GET_FUN(__glewClearDepthf) -#define glDepthRangef GLEW_GET_FUN(__glewDepthRangef) -#define glGetShaderPrecisionFormat GLEW_GET_FUN(__glewGetShaderPrecisionFormat) -#define glReleaseShaderCompiler GLEW_GET_FUN(__glewReleaseShaderCompiler) -#define glShaderBinary GLEW_GET_FUN(__glewShaderBinary) - -#define GLEW_ARB_ES2_compatibility GLEW_GET_VAR(__GLEW_ARB_ES2_compatibility) - -#endif /* GL_ARB_ES2_compatibility */ - -/* ----------------------- GL_ARB_ES3_1_compatibility ---------------------- */ - -#ifndef GL_ARB_ES3_1_compatibility -#define GL_ARB_ES3_1_compatibility 1 - -typedef void (GLAPIENTRY * PFNGLMEMORYBARRIERBYREGIONPROC) (GLbitfield barriers); - -#define glMemoryBarrierByRegion GLEW_GET_FUN(__glewMemoryBarrierByRegion) - -#define GLEW_ARB_ES3_1_compatibility GLEW_GET_VAR(__GLEW_ARB_ES3_1_compatibility) - -#endif /* GL_ARB_ES3_1_compatibility */ - -/* ----------------------- GL_ARB_ES3_2_compatibility ---------------------- */ - -#ifndef GL_ARB_ES3_2_compatibility -#define GL_ARB_ES3_2_compatibility 1 - -#define GL_PRIMITIVE_BOUNDING_BOX_ARB 0x92BE -#define GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB 0x9381 -#define GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB 0x9382 - -typedef void (GLAPIENTRY * PFNGLPRIMITIVEBOUNDINGBOXARBPROC) (GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW); - -#define glPrimitiveBoundingBoxARB GLEW_GET_FUN(__glewPrimitiveBoundingBoxARB) - -#define GLEW_ARB_ES3_2_compatibility GLEW_GET_VAR(__GLEW_ARB_ES3_2_compatibility) - -#endif /* GL_ARB_ES3_2_compatibility */ - -/* ------------------------ GL_ARB_ES3_compatibility ----------------------- */ - -#ifndef GL_ARB_ES3_compatibility -#define GL_ARB_ES3_compatibility 1 - -#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF -#define GL_PRIMITIVE_RESTART_FIXED_INDEX 0x8D69 -#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE 0x8D6A -#define GL_MAX_ELEMENT_INDEX 0x8D6B -#define GL_COMPRESSED_R11_EAC 0x9270 -#define GL_COMPRESSED_SIGNED_R11_EAC 0x9271 -#define GL_COMPRESSED_RG11_EAC 0x9272 -#define GL_COMPRESSED_SIGNED_RG11_EAC 0x9273 -#define GL_COMPRESSED_RGB8_ETC2 0x9274 -#define GL_COMPRESSED_SRGB8_ETC2 0x9275 -#define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9276 -#define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9277 -#define GL_COMPRESSED_RGBA8_ETC2_EAC 0x9278 -#define GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC 0x9279 - -#define GLEW_ARB_ES3_compatibility GLEW_GET_VAR(__GLEW_ARB_ES3_compatibility) - -#endif /* GL_ARB_ES3_compatibility */ - -/* ------------------------ GL_ARB_arrays_of_arrays ------------------------ */ - -#ifndef GL_ARB_arrays_of_arrays -#define GL_ARB_arrays_of_arrays 1 - -#define GLEW_ARB_arrays_of_arrays GLEW_GET_VAR(__GLEW_ARB_arrays_of_arrays) - -#endif /* GL_ARB_arrays_of_arrays */ - -/* -------------------------- GL_ARB_base_instance ------------------------- */ - -#ifndef GL_ARB_base_instance -#define GL_ARB_base_instance 1 - -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount, GLuint baseinstance); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount, GLuint baseinstance); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount, GLint basevertex, GLuint baseinstance); - -#define glDrawArraysInstancedBaseInstance GLEW_GET_FUN(__glewDrawArraysInstancedBaseInstance) -#define glDrawElementsInstancedBaseInstance GLEW_GET_FUN(__glewDrawElementsInstancedBaseInstance) -#define glDrawElementsInstancedBaseVertexBaseInstance GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertexBaseInstance) - -#define GLEW_ARB_base_instance GLEW_GET_VAR(__GLEW_ARB_base_instance) - -#endif /* GL_ARB_base_instance */ - -/* ------------------------ GL_ARB_bindless_texture ------------------------ */ - -#ifndef GL_ARB_bindless_texture -#define GL_ARB_bindless_texture 1 - -#define GL_UNSIGNED_INT64_ARB 0x140F - -typedef GLuint64 (GLAPIENTRY * PFNGLGETIMAGEHANDLEARBPROC) (GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format); -typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTUREHANDLEARBPROC) (GLuint texture); -typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTURESAMPLERHANDLEARBPROC) (GLuint texture, GLuint sampler); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLUI64VARBPROC) (GLuint index, GLenum pname, GLuint64EXT* params); -typedef GLboolean (GLAPIENTRY * PFNGLISIMAGEHANDLERESIDENTARBPROC) (GLuint64 handle); -typedef GLboolean (GLAPIENTRY * PFNGLISTEXTUREHANDLERESIDENTARBPROC) (GLuint64 handle); -typedef void (GLAPIENTRY * PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC) (GLuint64 handle); -typedef void (GLAPIENTRY * PFNGLMAKEIMAGEHANDLERESIDENTARBPROC) (GLuint64 handle, GLenum access); -typedef void (GLAPIENTRY * PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC) (GLuint64 handle); -typedef void (GLAPIENTRY * PFNGLMAKETEXTUREHANDLERESIDENTARBPROC) (GLuint64 handle); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC) (GLuint program, GLint location, GLuint64 value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* values); -typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64ARBPROC) (GLint location, GLuint64 value); -typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64ARBPROC) (GLuint index, GLuint64EXT x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64VARBPROC) (GLuint index, const GLuint64EXT* v); - -#define glGetImageHandleARB GLEW_GET_FUN(__glewGetImageHandleARB) -#define glGetTextureHandleARB GLEW_GET_FUN(__glewGetTextureHandleARB) -#define glGetTextureSamplerHandleARB GLEW_GET_FUN(__glewGetTextureSamplerHandleARB) -#define glGetVertexAttribLui64vARB GLEW_GET_FUN(__glewGetVertexAttribLui64vARB) -#define glIsImageHandleResidentARB GLEW_GET_FUN(__glewIsImageHandleResidentARB) -#define glIsTextureHandleResidentARB GLEW_GET_FUN(__glewIsTextureHandleResidentARB) -#define glMakeImageHandleNonResidentARB GLEW_GET_FUN(__glewMakeImageHandleNonResidentARB) -#define glMakeImageHandleResidentARB GLEW_GET_FUN(__glewMakeImageHandleResidentARB) -#define glMakeTextureHandleNonResidentARB GLEW_GET_FUN(__glewMakeTextureHandleNonResidentARB) -#define glMakeTextureHandleResidentARB GLEW_GET_FUN(__glewMakeTextureHandleResidentARB) -#define glProgramUniformHandleui64ARB GLEW_GET_FUN(__glewProgramUniformHandleui64ARB) -#define glProgramUniformHandleui64vARB GLEW_GET_FUN(__glewProgramUniformHandleui64vARB) -#define glUniformHandleui64ARB GLEW_GET_FUN(__glewUniformHandleui64ARB) -#define glUniformHandleui64vARB GLEW_GET_FUN(__glewUniformHandleui64vARB) -#define glVertexAttribL1ui64ARB GLEW_GET_FUN(__glewVertexAttribL1ui64ARB) -#define glVertexAttribL1ui64vARB GLEW_GET_FUN(__glewVertexAttribL1ui64vARB) - -#define GLEW_ARB_bindless_texture GLEW_GET_VAR(__GLEW_ARB_bindless_texture) - -#endif /* GL_ARB_bindless_texture */ - -/* ----------------------- GL_ARB_blend_func_extended ---------------------- */ - -#ifndef GL_ARB_blend_func_extended -#define GL_ARB_blend_func_extended 1 - -#define GL_SRC1_COLOR 0x88F9 -#define GL_ONE_MINUS_SRC1_COLOR 0x88FA -#define GL_ONE_MINUS_SRC1_ALPHA 0x88FB -#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC - -typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONINDEXEDPROC) (GLuint program, GLuint colorNumber, GLuint index, const GLchar * name); -typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATAINDEXPROC) (GLuint program, const GLchar * name); - -#define glBindFragDataLocationIndexed GLEW_GET_FUN(__glewBindFragDataLocationIndexed) -#define glGetFragDataIndex GLEW_GET_FUN(__glewGetFragDataIndex) - -#define GLEW_ARB_blend_func_extended GLEW_GET_VAR(__GLEW_ARB_blend_func_extended) - -#endif /* GL_ARB_blend_func_extended */ - -/* ------------------------- GL_ARB_buffer_storage ------------------------- */ - -#ifndef GL_ARB_buffer_storage -#define GL_ARB_buffer_storage 1 - -#define GL_MAP_READ_BIT 0x0001 -#define GL_MAP_WRITE_BIT 0x0002 -#define GL_MAP_PERSISTENT_BIT 0x00000040 -#define GL_MAP_COHERENT_BIT 0x00000080 -#define GL_DYNAMIC_STORAGE_BIT 0x0100 -#define GL_CLIENT_STORAGE_BIT 0x0200 -#define GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT 0x00004000 -#define GL_BUFFER_IMMUTABLE_STORAGE 0x821F -#define GL_BUFFER_STORAGE_FLAGS 0x8220 - -typedef void (GLAPIENTRY * PFNGLBUFFERSTORAGEPROC) (GLenum target, GLsizeiptr size, const void *data, GLbitfield flags); - -#define glBufferStorage GLEW_GET_FUN(__glewBufferStorage) - -#define GLEW_ARB_buffer_storage GLEW_GET_VAR(__GLEW_ARB_buffer_storage) - -#endif /* GL_ARB_buffer_storage */ - -/* ---------------------------- GL_ARB_cl_event ---------------------------- */ - -#ifndef GL_ARB_cl_event -#define GL_ARB_cl_event 1 - -#define GL_SYNC_CL_EVENT_ARB 0x8240 -#define GL_SYNC_CL_EVENT_COMPLETE_ARB 0x8241 - -typedef struct _cl_context *cl_context; -typedef struct _cl_event *cl_event; - -typedef GLsync (GLAPIENTRY * PFNGLCREATESYNCFROMCLEVENTARBPROC) (cl_context context, cl_event event, GLbitfield flags); - -#define glCreateSyncFromCLeventARB GLEW_GET_FUN(__glewCreateSyncFromCLeventARB) - -#define GLEW_ARB_cl_event GLEW_GET_VAR(__GLEW_ARB_cl_event) - -#endif /* GL_ARB_cl_event */ - -/* ----------------------- GL_ARB_clear_buffer_object ---------------------- */ - -#ifndef GL_ARB_clear_buffer_object -#define GL_ARB_clear_buffer_object 1 - -typedef void (GLAPIENTRY * PFNGLCLEARBUFFERDATAPROC) (GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCLEARBUFFERSUBDATAPROC) (GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCLEARNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCLEARNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data); - -#define glClearBufferData GLEW_GET_FUN(__glewClearBufferData) -#define glClearBufferSubData GLEW_GET_FUN(__glewClearBufferSubData) -#define glClearNamedBufferDataEXT GLEW_GET_FUN(__glewClearNamedBufferDataEXT) -#define glClearNamedBufferSubDataEXT GLEW_GET_FUN(__glewClearNamedBufferSubDataEXT) - -#define GLEW_ARB_clear_buffer_object GLEW_GET_VAR(__GLEW_ARB_clear_buffer_object) - -#endif /* GL_ARB_clear_buffer_object */ - -/* -------------------------- GL_ARB_clear_texture ------------------------- */ - -#ifndef GL_ARB_clear_texture -#define GL_ARB_clear_texture 1 - -#define GL_CLEAR_TEXTURE 0x9365 - -typedef void (GLAPIENTRY * PFNGLCLEARTEXIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCLEARTEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data); - -#define glClearTexImage GLEW_GET_FUN(__glewClearTexImage) -#define glClearTexSubImage GLEW_GET_FUN(__glewClearTexSubImage) - -#define GLEW_ARB_clear_texture GLEW_GET_VAR(__GLEW_ARB_clear_texture) - -#endif /* GL_ARB_clear_texture */ - -/* -------------------------- GL_ARB_clip_control -------------------------- */ - -#ifndef GL_ARB_clip_control -#define GL_ARB_clip_control 1 - -#define GL_LOWER_LEFT 0x8CA1 -#define GL_UPPER_LEFT 0x8CA2 -#define GL_CLIP_ORIGIN 0x935C -#define GL_CLIP_DEPTH_MODE 0x935D -#define GL_NEGATIVE_ONE_TO_ONE 0x935E -#define GL_ZERO_TO_ONE 0x935F - -typedef void (GLAPIENTRY * PFNGLCLIPCONTROLPROC) (GLenum origin, GLenum depth); - -#define glClipControl GLEW_GET_FUN(__glewClipControl) - -#define GLEW_ARB_clip_control GLEW_GET_VAR(__GLEW_ARB_clip_control) - -#endif /* GL_ARB_clip_control */ - -/* ----------------------- GL_ARB_color_buffer_float ----------------------- */ - -#ifndef GL_ARB_color_buffer_float -#define GL_ARB_color_buffer_float 1 - -#define GL_RGBA_FLOAT_MODE_ARB 0x8820 -#define GL_CLAMP_VERTEX_COLOR_ARB 0x891A -#define GL_CLAMP_FRAGMENT_COLOR_ARB 0x891B -#define GL_CLAMP_READ_COLOR_ARB 0x891C -#define GL_FIXED_ONLY_ARB 0x891D - -typedef void (GLAPIENTRY * PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp); - -#define glClampColorARB GLEW_GET_FUN(__glewClampColorARB) - -#define GLEW_ARB_color_buffer_float GLEW_GET_VAR(__GLEW_ARB_color_buffer_float) - -#endif /* GL_ARB_color_buffer_float */ - -/* -------------------------- GL_ARB_compatibility ------------------------- */ - -#ifndef GL_ARB_compatibility -#define GL_ARB_compatibility 1 - -#define GLEW_ARB_compatibility GLEW_GET_VAR(__GLEW_ARB_compatibility) - -#endif /* GL_ARB_compatibility */ - -/* ---------------- GL_ARB_compressed_texture_pixel_storage ---------------- */ - -#ifndef GL_ARB_compressed_texture_pixel_storage -#define GL_ARB_compressed_texture_pixel_storage 1 - -#define GL_UNPACK_COMPRESSED_BLOCK_WIDTH 0x9127 -#define GL_UNPACK_COMPRESSED_BLOCK_HEIGHT 0x9128 -#define GL_UNPACK_COMPRESSED_BLOCK_DEPTH 0x9129 -#define GL_UNPACK_COMPRESSED_BLOCK_SIZE 0x912A -#define GL_PACK_COMPRESSED_BLOCK_WIDTH 0x912B -#define GL_PACK_COMPRESSED_BLOCK_HEIGHT 0x912C -#define GL_PACK_COMPRESSED_BLOCK_DEPTH 0x912D -#define GL_PACK_COMPRESSED_BLOCK_SIZE 0x912E - -#define GLEW_ARB_compressed_texture_pixel_storage GLEW_GET_VAR(__GLEW_ARB_compressed_texture_pixel_storage) - -#endif /* GL_ARB_compressed_texture_pixel_storage */ - -/* ------------------------- GL_ARB_compute_shader ------------------------- */ - -#ifndef GL_ARB_compute_shader -#define GL_ARB_compute_shader 1 - -#define GL_COMPUTE_SHADER_BIT 0x00000020 -#define GL_MAX_COMPUTE_SHARED_MEMORY_SIZE 0x8262 -#define GL_MAX_COMPUTE_UNIFORM_COMPONENTS 0x8263 -#define GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS 0x8264 -#define GL_MAX_COMPUTE_ATOMIC_COUNTERS 0x8265 -#define GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS 0x8266 -#define GL_COMPUTE_WORK_GROUP_SIZE 0x8267 -#define GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS 0x90EB -#define GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER 0x90EC -#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER 0x90ED -#define GL_DISPATCH_INDIRECT_BUFFER 0x90EE -#define GL_DISPATCH_INDIRECT_BUFFER_BINDING 0x90EF -#define GL_COMPUTE_SHADER 0x91B9 -#define GL_MAX_COMPUTE_UNIFORM_BLOCKS 0x91BB -#define GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS 0x91BC -#define GL_MAX_COMPUTE_IMAGE_UNIFORMS 0x91BD -#define GL_MAX_COMPUTE_WORK_GROUP_COUNT 0x91BE -#define GL_MAX_COMPUTE_WORK_GROUP_SIZE 0x91BF - -typedef void (GLAPIENTRY * PFNGLDISPATCHCOMPUTEPROC) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z); -typedef void (GLAPIENTRY * PFNGLDISPATCHCOMPUTEINDIRECTPROC) (GLintptr indirect); - -#define glDispatchCompute GLEW_GET_FUN(__glewDispatchCompute) -#define glDispatchComputeIndirect GLEW_GET_FUN(__glewDispatchComputeIndirect) - -#define GLEW_ARB_compute_shader GLEW_GET_VAR(__GLEW_ARB_compute_shader) - -#endif /* GL_ARB_compute_shader */ - -/* ------------------- GL_ARB_compute_variable_group_size ------------------ */ - -#ifndef GL_ARB_compute_variable_group_size -#define GL_ARB_compute_variable_group_size 1 - -#define GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB 0x90EB -#define GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB 0x91BF -#define GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB 0x9344 -#define GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB 0x9345 - -typedef void (GLAPIENTRY * PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z, GLuint group_size_x, GLuint group_size_y, GLuint group_size_z); - -#define glDispatchComputeGroupSizeARB GLEW_GET_FUN(__glewDispatchComputeGroupSizeARB) - -#define GLEW_ARB_compute_variable_group_size GLEW_GET_VAR(__GLEW_ARB_compute_variable_group_size) - -#endif /* GL_ARB_compute_variable_group_size */ - -/* ------------------- GL_ARB_conditional_render_inverted ------------------ */ - -#ifndef GL_ARB_conditional_render_inverted -#define GL_ARB_conditional_render_inverted 1 - -#define GL_QUERY_WAIT_INVERTED 0x8E17 -#define GL_QUERY_NO_WAIT_INVERTED 0x8E18 -#define GL_QUERY_BY_REGION_WAIT_INVERTED 0x8E19 -#define GL_QUERY_BY_REGION_NO_WAIT_INVERTED 0x8E1A - -#define GLEW_ARB_conditional_render_inverted GLEW_GET_VAR(__GLEW_ARB_conditional_render_inverted) - -#endif /* GL_ARB_conditional_render_inverted */ - -/* ----------------------- GL_ARB_conservative_depth ----------------------- */ - -#ifndef GL_ARB_conservative_depth -#define GL_ARB_conservative_depth 1 - -#define GLEW_ARB_conservative_depth GLEW_GET_VAR(__GLEW_ARB_conservative_depth) - -#endif /* GL_ARB_conservative_depth */ - -/* --------------------------- GL_ARB_copy_buffer -------------------------- */ - -#ifndef GL_ARB_copy_buffer -#define GL_ARB_copy_buffer 1 - -#define GL_COPY_READ_BUFFER 0x8F36 -#define GL_COPY_WRITE_BUFFER 0x8F37 - -typedef void (GLAPIENTRY * PFNGLCOPYBUFFERSUBDATAPROC) (GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size); - -#define glCopyBufferSubData GLEW_GET_FUN(__glewCopyBufferSubData) - -#define GLEW_ARB_copy_buffer GLEW_GET_VAR(__GLEW_ARB_copy_buffer) - -#endif /* GL_ARB_copy_buffer */ - -/* --------------------------- GL_ARB_copy_image --------------------------- */ - -#ifndef GL_ARB_copy_image -#define GL_ARB_copy_image 1 - -typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATAPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); - -#define glCopyImageSubData GLEW_GET_FUN(__glewCopyImageSubData) - -#define GLEW_ARB_copy_image GLEW_GET_VAR(__GLEW_ARB_copy_image) - -#endif /* GL_ARB_copy_image */ - -/* -------------------------- GL_ARB_cull_distance ------------------------- */ - -#ifndef GL_ARB_cull_distance -#define GL_ARB_cull_distance 1 - -#define GL_MAX_CULL_DISTANCES 0x82F9 -#define GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES 0x82FA - -#define GLEW_ARB_cull_distance GLEW_GET_VAR(__GLEW_ARB_cull_distance) - -#endif /* GL_ARB_cull_distance */ - -/* -------------------------- GL_ARB_debug_output -------------------------- */ - -#ifndef GL_ARB_debug_output -#define GL_ARB_debug_output 1 - -#define GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB 0x8242 -#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB 0x8243 -#define GL_DEBUG_CALLBACK_FUNCTION_ARB 0x8244 -#define GL_DEBUG_CALLBACK_USER_PARAM_ARB 0x8245 -#define GL_DEBUG_SOURCE_API_ARB 0x8246 -#define GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB 0x8247 -#define GL_DEBUG_SOURCE_SHADER_COMPILER_ARB 0x8248 -#define GL_DEBUG_SOURCE_THIRD_PARTY_ARB 0x8249 -#define GL_DEBUG_SOURCE_APPLICATION_ARB 0x824A -#define GL_DEBUG_SOURCE_OTHER_ARB 0x824B -#define GL_DEBUG_TYPE_ERROR_ARB 0x824C -#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB 0x824D -#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB 0x824E -#define GL_DEBUG_TYPE_PORTABILITY_ARB 0x824F -#define GL_DEBUG_TYPE_PERFORMANCE_ARB 0x8250 -#define GL_DEBUG_TYPE_OTHER_ARB 0x8251 -#define GL_MAX_DEBUG_MESSAGE_LENGTH_ARB 0x9143 -#define GL_MAX_DEBUG_LOGGED_MESSAGES_ARB 0x9144 -#define GL_DEBUG_LOGGED_MESSAGES_ARB 0x9145 -#define GL_DEBUG_SEVERITY_HIGH_ARB 0x9146 -#define GL_DEBUG_SEVERITY_MEDIUM_ARB 0x9147 -#define GL_DEBUG_SEVERITY_LOW_ARB 0x9148 - -typedef void (GLAPIENTRY *GLDEBUGPROCARB)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* message, const void* userParam); - -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACKARBPROC) (GLDEBUGPROCARB callback, const void *userParam); -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECONTROLARBPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled); -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERTARBPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* buf); -typedef GLuint (GLAPIENTRY * PFNGLGETDEBUGMESSAGELOGARBPROC) (GLuint count, GLsizei bufSize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, GLchar* messageLog); - -#define glDebugMessageCallbackARB GLEW_GET_FUN(__glewDebugMessageCallbackARB) -#define glDebugMessageControlARB GLEW_GET_FUN(__glewDebugMessageControlARB) -#define glDebugMessageInsertARB GLEW_GET_FUN(__glewDebugMessageInsertARB) -#define glGetDebugMessageLogARB GLEW_GET_FUN(__glewGetDebugMessageLogARB) - -#define GLEW_ARB_debug_output GLEW_GET_VAR(__GLEW_ARB_debug_output) - -#endif /* GL_ARB_debug_output */ - -/* ----------------------- GL_ARB_depth_buffer_float ----------------------- */ - -#ifndef GL_ARB_depth_buffer_float -#define GL_ARB_depth_buffer_float 1 - -#define GL_DEPTH_COMPONENT32F 0x8CAC -#define GL_DEPTH32F_STENCIL8 0x8CAD -#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD - -#define GLEW_ARB_depth_buffer_float GLEW_GET_VAR(__GLEW_ARB_depth_buffer_float) - -#endif /* GL_ARB_depth_buffer_float */ - -/* --------------------------- GL_ARB_depth_clamp -------------------------- */ - -#ifndef GL_ARB_depth_clamp -#define GL_ARB_depth_clamp 1 - -#define GL_DEPTH_CLAMP 0x864F - -#define GLEW_ARB_depth_clamp GLEW_GET_VAR(__GLEW_ARB_depth_clamp) - -#endif /* GL_ARB_depth_clamp */ - -/* -------------------------- GL_ARB_depth_texture ------------------------- */ - -#ifndef GL_ARB_depth_texture -#define GL_ARB_depth_texture 1 - -#define GL_DEPTH_COMPONENT16_ARB 0x81A5 -#define GL_DEPTH_COMPONENT24_ARB 0x81A6 -#define GL_DEPTH_COMPONENT32_ARB 0x81A7 -#define GL_TEXTURE_DEPTH_SIZE_ARB 0x884A -#define GL_DEPTH_TEXTURE_MODE_ARB 0x884B - -#define GLEW_ARB_depth_texture GLEW_GET_VAR(__GLEW_ARB_depth_texture) - -#endif /* GL_ARB_depth_texture */ - -/* ----------------------- GL_ARB_derivative_control ----------------------- */ - -#ifndef GL_ARB_derivative_control -#define GL_ARB_derivative_control 1 - -#define GLEW_ARB_derivative_control GLEW_GET_VAR(__GLEW_ARB_derivative_control) - -#endif /* GL_ARB_derivative_control */ - -/* ----------------------- GL_ARB_direct_state_access ---------------------- */ - -#ifndef GL_ARB_direct_state_access -#define GL_ARB_direct_state_access 1 - -#define GL_TEXTURE_TARGET 0x1006 -#define GL_QUERY_TARGET 0x82EA - -typedef void (GLAPIENTRY * PFNGLBINDTEXTUREUNITPROC) (GLuint unit, GLuint texture); -typedef void (GLAPIENTRY * PFNGLBLITNAMEDFRAMEBUFFERPROC) (GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -typedef GLenum (GLAPIENTRY * PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC) (GLuint framebuffer, GLenum target); -typedef void (GLAPIENTRY * PFNGLCLEARNAMEDBUFFERDATAPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCLEARNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERFIPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil); -typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERFVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERIVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint* value); -typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOPYNAMEDBUFFERSUBDATAPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLCREATEBUFFERSPROC) (GLsizei n, GLuint* buffers); -typedef void (GLAPIENTRY * PFNGLCREATEFRAMEBUFFERSPROC) (GLsizei n, GLuint* framebuffers); -typedef void (GLAPIENTRY * PFNGLCREATEPROGRAMPIPELINESPROC) (GLsizei n, GLuint* pipelines); -typedef void (GLAPIENTRY * PFNGLCREATEQUERIESPROC) (GLenum target, GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLCREATERENDERBUFFERSPROC) (GLsizei n, GLuint* renderbuffers); -typedef void (GLAPIENTRY * PFNGLCREATESAMPLERSPROC) (GLsizei n, GLuint* samplers); -typedef void (GLAPIENTRY * PFNGLCREATETEXTURESPROC) (GLenum target, GLsizei n, GLuint* textures); -typedef void (GLAPIENTRY * PFNGLCREATETRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLCREATEVERTEXARRAYSPROC) (GLsizei n, GLuint* arrays); -typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index); -typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length); -typedef void (GLAPIENTRY * PFNGLGENERATETEXTUREMIPMAPPROC) (GLuint texture); -typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC) (GLuint texture, GLint level, GLsizei bufSize, void *pixels); -typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERI64VPROC) (GLuint buffer, GLenum pname, GLint64* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERIVPROC) (GLuint buffer, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPOINTERVPROC) (GLuint buffer, GLenum pname, void** params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, void *data); -typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC) (GLuint framebuffer, GLenum pname, GLint* param); -typedef void (GLAPIENTRY * PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC) (GLuint renderbuffer, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYBUFFEROBJECTI64VPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLGETQUERYBUFFEROBJECTIVPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLGETQUERYBUFFEROBJECTUI64VPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLGETQUERYBUFFEROBJECTUIVPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels); -typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERFVPROC) (GLuint texture, GLint level, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERIVPROC) (GLuint texture, GLint level, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERFVPROC) (GLuint texture, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIVPROC) (GLuint texture, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKI64_VPROC) (GLuint xfb, GLenum pname, GLuint index, GLint64* param); -typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKI_VPROC) (GLuint xfb, GLenum pname, GLuint index, GLint* param); -typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKIVPROC) (GLuint xfb, GLenum pname, GLint* param); -typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINDEXED64IVPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint64* param); -typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINDEXEDIVPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint* param); -typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYIVPROC) (GLuint vaobj, GLenum pname, GLint* param); -typedef void (GLAPIENTRY * PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC) (GLuint framebuffer, GLsizei numAttachments, const GLenum* attachments); -typedef void (GLAPIENTRY * PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC) (GLuint framebuffer, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void * (GLAPIENTRY * PFNGLMAPNAMEDBUFFERPROC) (GLuint buffer, GLenum access); -typedef void * (GLAPIENTRY * PFNGLMAPNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERDATAPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLenum usage); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSTORAGEPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC) (GLuint framebuffer, GLenum mode); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC) (GLuint framebuffer, GLsizei n, const GLenum* bufs); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC) (GLuint framebuffer, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC) (GLuint framebuffer, GLenum mode); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer); -typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFERPROC) (GLuint texture, GLenum internalformat, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFERRANGEPROC) (GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum pname, const GLuint* params); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFPROC) (GLuint texture, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFVPROC) (GLuint texture, GLenum pname, const GLfloat* param); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIPROC) (GLuint texture, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIVPROC) (GLuint texture, GLenum pname, const GLint* param); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE1DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); -typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC) (GLuint xfb, GLuint index, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC) (GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); -typedef GLboolean (GLAPIENTRY * PFNGLUNMAPNAMEDBUFFERPROC) (GLuint buffer); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYATTRIBBINDINGPROC) (GLuint vaobj, GLuint attribindex, GLuint bindingindex); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYATTRIBFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYATTRIBIFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYATTRIBLFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYBINDINGDIVISORPROC) (GLuint vaobj, GLuint bindingindex, GLuint divisor); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYELEMENTBUFFERPROC) (GLuint vaobj, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXBUFFERPROC) (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXBUFFERSPROC) (GLuint vaobj, GLuint first, GLsizei count, const GLuint* buffers, const GLintptr *offsets, const GLsizei *strides); - -#define glBindTextureUnit GLEW_GET_FUN(__glewBindTextureUnit) -#define glBlitNamedFramebuffer GLEW_GET_FUN(__glewBlitNamedFramebuffer) -#define glCheckNamedFramebufferStatus GLEW_GET_FUN(__glewCheckNamedFramebufferStatus) -#define glClearNamedBufferData GLEW_GET_FUN(__glewClearNamedBufferData) -#define glClearNamedBufferSubData GLEW_GET_FUN(__glewClearNamedBufferSubData) -#define glClearNamedFramebufferfi GLEW_GET_FUN(__glewClearNamedFramebufferfi) -#define glClearNamedFramebufferfv GLEW_GET_FUN(__glewClearNamedFramebufferfv) -#define glClearNamedFramebufferiv GLEW_GET_FUN(__glewClearNamedFramebufferiv) -#define glClearNamedFramebufferuiv GLEW_GET_FUN(__glewClearNamedFramebufferuiv) -#define glCompressedTextureSubImage1D GLEW_GET_FUN(__glewCompressedTextureSubImage1D) -#define glCompressedTextureSubImage2D GLEW_GET_FUN(__glewCompressedTextureSubImage2D) -#define glCompressedTextureSubImage3D GLEW_GET_FUN(__glewCompressedTextureSubImage3D) -#define glCopyNamedBufferSubData GLEW_GET_FUN(__glewCopyNamedBufferSubData) -#define glCopyTextureSubImage1D GLEW_GET_FUN(__glewCopyTextureSubImage1D) -#define glCopyTextureSubImage2D GLEW_GET_FUN(__glewCopyTextureSubImage2D) -#define glCopyTextureSubImage3D GLEW_GET_FUN(__glewCopyTextureSubImage3D) -#define glCreateBuffers GLEW_GET_FUN(__glewCreateBuffers) -#define glCreateFramebuffers GLEW_GET_FUN(__glewCreateFramebuffers) -#define glCreateProgramPipelines GLEW_GET_FUN(__glewCreateProgramPipelines) -#define glCreateQueries GLEW_GET_FUN(__glewCreateQueries) -#define glCreateRenderbuffers GLEW_GET_FUN(__glewCreateRenderbuffers) -#define glCreateSamplers GLEW_GET_FUN(__glewCreateSamplers) -#define glCreateTextures GLEW_GET_FUN(__glewCreateTextures) -#define glCreateTransformFeedbacks GLEW_GET_FUN(__glewCreateTransformFeedbacks) -#define glCreateVertexArrays GLEW_GET_FUN(__glewCreateVertexArrays) -#define glDisableVertexArrayAttrib GLEW_GET_FUN(__glewDisableVertexArrayAttrib) -#define glEnableVertexArrayAttrib GLEW_GET_FUN(__glewEnableVertexArrayAttrib) -#define glFlushMappedNamedBufferRange GLEW_GET_FUN(__glewFlushMappedNamedBufferRange) -#define glGenerateTextureMipmap GLEW_GET_FUN(__glewGenerateTextureMipmap) -#define glGetCompressedTextureImage GLEW_GET_FUN(__glewGetCompressedTextureImage) -#define glGetNamedBufferParameteri64v GLEW_GET_FUN(__glewGetNamedBufferParameteri64v) -#define glGetNamedBufferParameteriv GLEW_GET_FUN(__glewGetNamedBufferParameteriv) -#define glGetNamedBufferPointerv GLEW_GET_FUN(__glewGetNamedBufferPointerv) -#define glGetNamedBufferSubData GLEW_GET_FUN(__glewGetNamedBufferSubData) -#define glGetNamedFramebufferAttachmentParameteriv GLEW_GET_FUN(__glewGetNamedFramebufferAttachmentParameteriv) -#define glGetNamedFramebufferParameteriv GLEW_GET_FUN(__glewGetNamedFramebufferParameteriv) -#define glGetNamedRenderbufferParameteriv GLEW_GET_FUN(__glewGetNamedRenderbufferParameteriv) -#define glGetQueryBufferObjecti64v GLEW_GET_FUN(__glewGetQueryBufferObjecti64v) -#define glGetQueryBufferObjectiv GLEW_GET_FUN(__glewGetQueryBufferObjectiv) -#define glGetQueryBufferObjectui64v GLEW_GET_FUN(__glewGetQueryBufferObjectui64v) -#define glGetQueryBufferObjectuiv GLEW_GET_FUN(__glewGetQueryBufferObjectuiv) -#define glGetTextureImage GLEW_GET_FUN(__glewGetTextureImage) -#define glGetTextureLevelParameterfv GLEW_GET_FUN(__glewGetTextureLevelParameterfv) -#define glGetTextureLevelParameteriv GLEW_GET_FUN(__glewGetTextureLevelParameteriv) -#define glGetTextureParameterIiv GLEW_GET_FUN(__glewGetTextureParameterIiv) -#define glGetTextureParameterIuiv GLEW_GET_FUN(__glewGetTextureParameterIuiv) -#define glGetTextureParameterfv GLEW_GET_FUN(__glewGetTextureParameterfv) -#define glGetTextureParameteriv GLEW_GET_FUN(__glewGetTextureParameteriv) -#define glGetTransformFeedbacki64_v GLEW_GET_FUN(__glewGetTransformFeedbacki64_v) -#define glGetTransformFeedbacki_v GLEW_GET_FUN(__glewGetTransformFeedbacki_v) -#define glGetTransformFeedbackiv GLEW_GET_FUN(__glewGetTransformFeedbackiv) -#define glGetVertexArrayIndexed64iv GLEW_GET_FUN(__glewGetVertexArrayIndexed64iv) -#define glGetVertexArrayIndexediv GLEW_GET_FUN(__glewGetVertexArrayIndexediv) -#define glGetVertexArrayiv GLEW_GET_FUN(__glewGetVertexArrayiv) -#define glInvalidateNamedFramebufferData GLEW_GET_FUN(__glewInvalidateNamedFramebufferData) -#define glInvalidateNamedFramebufferSubData GLEW_GET_FUN(__glewInvalidateNamedFramebufferSubData) -#define glMapNamedBuffer GLEW_GET_FUN(__glewMapNamedBuffer) -#define glMapNamedBufferRange GLEW_GET_FUN(__glewMapNamedBufferRange) -#define glNamedBufferData GLEW_GET_FUN(__glewNamedBufferData) -#define glNamedBufferStorage GLEW_GET_FUN(__glewNamedBufferStorage) -#define glNamedBufferSubData GLEW_GET_FUN(__glewNamedBufferSubData) -#define glNamedFramebufferDrawBuffer GLEW_GET_FUN(__glewNamedFramebufferDrawBuffer) -#define glNamedFramebufferDrawBuffers GLEW_GET_FUN(__glewNamedFramebufferDrawBuffers) -#define glNamedFramebufferParameteri GLEW_GET_FUN(__glewNamedFramebufferParameteri) -#define glNamedFramebufferReadBuffer GLEW_GET_FUN(__glewNamedFramebufferReadBuffer) -#define glNamedFramebufferRenderbuffer GLEW_GET_FUN(__glewNamedFramebufferRenderbuffer) -#define glNamedFramebufferTexture GLEW_GET_FUN(__glewNamedFramebufferTexture) -#define glNamedFramebufferTextureLayer GLEW_GET_FUN(__glewNamedFramebufferTextureLayer) -#define glNamedRenderbufferStorage GLEW_GET_FUN(__glewNamedRenderbufferStorage) -#define glNamedRenderbufferStorageMultisample GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisample) -#define glTextureBuffer GLEW_GET_FUN(__glewTextureBuffer) -#define glTextureBufferRange GLEW_GET_FUN(__glewTextureBufferRange) -#define glTextureParameterIiv GLEW_GET_FUN(__glewTextureParameterIiv) -#define glTextureParameterIuiv GLEW_GET_FUN(__glewTextureParameterIuiv) -#define glTextureParameterf GLEW_GET_FUN(__glewTextureParameterf) -#define glTextureParameterfv GLEW_GET_FUN(__glewTextureParameterfv) -#define glTextureParameteri GLEW_GET_FUN(__glewTextureParameteri) -#define glTextureParameteriv GLEW_GET_FUN(__glewTextureParameteriv) -#define glTextureStorage1D GLEW_GET_FUN(__glewTextureStorage1D) -#define glTextureStorage2D GLEW_GET_FUN(__glewTextureStorage2D) -#define glTextureStorage2DMultisample GLEW_GET_FUN(__glewTextureStorage2DMultisample) -#define glTextureStorage3D GLEW_GET_FUN(__glewTextureStorage3D) -#define glTextureStorage3DMultisample GLEW_GET_FUN(__glewTextureStorage3DMultisample) -#define glTextureSubImage1D GLEW_GET_FUN(__glewTextureSubImage1D) -#define glTextureSubImage2D GLEW_GET_FUN(__glewTextureSubImage2D) -#define glTextureSubImage3D GLEW_GET_FUN(__glewTextureSubImage3D) -#define glTransformFeedbackBufferBase GLEW_GET_FUN(__glewTransformFeedbackBufferBase) -#define glTransformFeedbackBufferRange GLEW_GET_FUN(__glewTransformFeedbackBufferRange) -#define glUnmapNamedBuffer GLEW_GET_FUN(__glewUnmapNamedBuffer) -#define glVertexArrayAttribBinding GLEW_GET_FUN(__glewVertexArrayAttribBinding) -#define glVertexArrayAttribFormat GLEW_GET_FUN(__glewVertexArrayAttribFormat) -#define glVertexArrayAttribIFormat GLEW_GET_FUN(__glewVertexArrayAttribIFormat) -#define glVertexArrayAttribLFormat GLEW_GET_FUN(__glewVertexArrayAttribLFormat) -#define glVertexArrayBindingDivisor GLEW_GET_FUN(__glewVertexArrayBindingDivisor) -#define glVertexArrayElementBuffer GLEW_GET_FUN(__glewVertexArrayElementBuffer) -#define glVertexArrayVertexBuffer GLEW_GET_FUN(__glewVertexArrayVertexBuffer) -#define glVertexArrayVertexBuffers GLEW_GET_FUN(__glewVertexArrayVertexBuffers) - -#define GLEW_ARB_direct_state_access GLEW_GET_VAR(__GLEW_ARB_direct_state_access) - -#endif /* GL_ARB_direct_state_access */ - -/* -------------------------- GL_ARB_draw_buffers -------------------------- */ - -#ifndef GL_ARB_draw_buffers -#define GL_ARB_draw_buffers 1 - -#define GL_MAX_DRAW_BUFFERS_ARB 0x8824 -#define GL_DRAW_BUFFER0_ARB 0x8825 -#define GL_DRAW_BUFFER1_ARB 0x8826 -#define GL_DRAW_BUFFER2_ARB 0x8827 -#define GL_DRAW_BUFFER3_ARB 0x8828 -#define GL_DRAW_BUFFER4_ARB 0x8829 -#define GL_DRAW_BUFFER5_ARB 0x882A -#define GL_DRAW_BUFFER6_ARB 0x882B -#define GL_DRAW_BUFFER7_ARB 0x882C -#define GL_DRAW_BUFFER8_ARB 0x882D -#define GL_DRAW_BUFFER9_ARB 0x882E -#define GL_DRAW_BUFFER10_ARB 0x882F -#define GL_DRAW_BUFFER11_ARB 0x8830 -#define GL_DRAW_BUFFER12_ARB 0x8831 -#define GL_DRAW_BUFFER13_ARB 0x8832 -#define GL_DRAW_BUFFER14_ARB 0x8833 -#define GL_DRAW_BUFFER15_ARB 0x8834 - -typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSARBPROC) (GLsizei n, const GLenum* bufs); - -#define glDrawBuffersARB GLEW_GET_FUN(__glewDrawBuffersARB) - -#define GLEW_ARB_draw_buffers GLEW_GET_VAR(__GLEW_ARB_draw_buffers) - -#endif /* GL_ARB_draw_buffers */ - -/* ----------------------- GL_ARB_draw_buffers_blend ----------------------- */ - -#ifndef GL_ARB_draw_buffers_blend -#define GL_ARB_draw_buffers_blend 1 - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIARBPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIARBPROC) (GLuint buf, GLenum mode); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIARBPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCIARBPROC) (GLuint buf, GLenum src, GLenum dst); - -#define glBlendEquationSeparateiARB GLEW_GET_FUN(__glewBlendEquationSeparateiARB) -#define glBlendEquationiARB GLEW_GET_FUN(__glewBlendEquationiARB) -#define glBlendFuncSeparateiARB GLEW_GET_FUN(__glewBlendFuncSeparateiARB) -#define glBlendFunciARB GLEW_GET_FUN(__glewBlendFunciARB) - -#define GLEW_ARB_draw_buffers_blend GLEW_GET_VAR(__GLEW_ARB_draw_buffers_blend) - -#endif /* GL_ARB_draw_buffers_blend */ - -/* -------------------- GL_ARB_draw_elements_base_vertex ------------------- */ - -#ifndef GL_ARB_draw_elements_base_vertex -#define GL_ARB_draw_elements_base_vertex 1 - -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex); -typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, const GLsizei* count, GLenum type, const void*const *indices, GLsizei drawcount, const GLint *basevertex); - -#define glDrawElementsBaseVertex GLEW_GET_FUN(__glewDrawElementsBaseVertex) -#define glDrawElementsInstancedBaseVertex GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertex) -#define glDrawRangeElementsBaseVertex GLEW_GET_FUN(__glewDrawRangeElementsBaseVertex) -#define glMultiDrawElementsBaseVertex GLEW_GET_FUN(__glewMultiDrawElementsBaseVertex) - -#define GLEW_ARB_draw_elements_base_vertex GLEW_GET_VAR(__GLEW_ARB_draw_elements_base_vertex) - -#endif /* GL_ARB_draw_elements_base_vertex */ - -/* -------------------------- GL_ARB_draw_indirect ------------------------- */ - -#ifndef GL_ARB_draw_indirect -#define GL_ARB_draw_indirect 1 - -#define GL_DRAW_INDIRECT_BUFFER 0x8F3F -#define GL_DRAW_INDIRECT_BUFFER_BINDING 0x8F43 - -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINDIRECTPROC) (GLenum mode, const void *indirect); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void *indirect); - -#define glDrawArraysIndirect GLEW_GET_FUN(__glewDrawArraysIndirect) -#define glDrawElementsIndirect GLEW_GET_FUN(__glewDrawElementsIndirect) - -#define GLEW_ARB_draw_indirect GLEW_GET_VAR(__GLEW_ARB_draw_indirect) - -#endif /* GL_ARB_draw_indirect */ - -/* ------------------------- GL_ARB_draw_instanced ------------------------- */ - -#ifndef GL_ARB_draw_instanced -#define GL_ARB_draw_instanced 1 - -#define GLEW_ARB_draw_instanced GLEW_GET_VAR(__GLEW_ARB_draw_instanced) - -#endif /* GL_ARB_draw_instanced */ - -/* ------------------------ GL_ARB_enhanced_layouts ------------------------ */ - -#ifndef GL_ARB_enhanced_layouts -#define GL_ARB_enhanced_layouts 1 - -#define GL_LOCATION_COMPONENT 0x934A -#define GL_TRANSFORM_FEEDBACK_BUFFER_INDEX 0x934B -#define GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE 0x934C - -#define GLEW_ARB_enhanced_layouts GLEW_GET_VAR(__GLEW_ARB_enhanced_layouts) - -#endif /* GL_ARB_enhanced_layouts */ - -/* -------------------- GL_ARB_explicit_attrib_location -------------------- */ - -#ifndef GL_ARB_explicit_attrib_location -#define GL_ARB_explicit_attrib_location 1 - -#define GLEW_ARB_explicit_attrib_location GLEW_GET_VAR(__GLEW_ARB_explicit_attrib_location) - -#endif /* GL_ARB_explicit_attrib_location */ - -/* -------------------- GL_ARB_explicit_uniform_location ------------------- */ - -#ifndef GL_ARB_explicit_uniform_location -#define GL_ARB_explicit_uniform_location 1 - -#define GL_MAX_UNIFORM_LOCATIONS 0x826E - -#define GLEW_ARB_explicit_uniform_location GLEW_GET_VAR(__GLEW_ARB_explicit_uniform_location) - -#endif /* GL_ARB_explicit_uniform_location */ - -/* ------------------- GL_ARB_fragment_coord_conventions ------------------- */ - -#ifndef GL_ARB_fragment_coord_conventions -#define GL_ARB_fragment_coord_conventions 1 - -#define GLEW_ARB_fragment_coord_conventions GLEW_GET_VAR(__GLEW_ARB_fragment_coord_conventions) - -#endif /* GL_ARB_fragment_coord_conventions */ - -/* --------------------- GL_ARB_fragment_layer_viewport -------------------- */ - -#ifndef GL_ARB_fragment_layer_viewport -#define GL_ARB_fragment_layer_viewport 1 - -#define GLEW_ARB_fragment_layer_viewport GLEW_GET_VAR(__GLEW_ARB_fragment_layer_viewport) - -#endif /* GL_ARB_fragment_layer_viewport */ - -/* ------------------------ GL_ARB_fragment_program ------------------------ */ - -#ifndef GL_ARB_fragment_program -#define GL_ARB_fragment_program 1 - -#define GL_FRAGMENT_PROGRAM_ARB 0x8804 -#define GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805 -#define GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806 -#define GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807 -#define GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808 -#define GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809 -#define GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A -#define GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B -#define GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C -#define GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D -#define GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E -#define GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F -#define GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810 -#define GL_MAX_TEXTURE_COORDS_ARB 0x8871 -#define GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872 - -#define GLEW_ARB_fragment_program GLEW_GET_VAR(__GLEW_ARB_fragment_program) - -#endif /* GL_ARB_fragment_program */ - -/* --------------------- GL_ARB_fragment_program_shadow -------------------- */ - -#ifndef GL_ARB_fragment_program_shadow -#define GL_ARB_fragment_program_shadow 1 - -#define GLEW_ARB_fragment_program_shadow GLEW_GET_VAR(__GLEW_ARB_fragment_program_shadow) - -#endif /* GL_ARB_fragment_program_shadow */ - -/* ------------------------- GL_ARB_fragment_shader ------------------------ */ - -#ifndef GL_ARB_fragment_shader -#define GL_ARB_fragment_shader 1 - -#define GL_FRAGMENT_SHADER_ARB 0x8B30 -#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB 0x8B49 -#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB 0x8B8B - -#define GLEW_ARB_fragment_shader GLEW_GET_VAR(__GLEW_ARB_fragment_shader) - -#endif /* GL_ARB_fragment_shader */ - -/* -------------------- GL_ARB_fragment_shader_interlock ------------------- */ - -#ifndef GL_ARB_fragment_shader_interlock -#define GL_ARB_fragment_shader_interlock 1 - -#define GLEW_ARB_fragment_shader_interlock GLEW_GET_VAR(__GLEW_ARB_fragment_shader_interlock) - -#endif /* GL_ARB_fragment_shader_interlock */ - -/* ------------------- GL_ARB_framebuffer_no_attachments ------------------- */ - -#ifndef GL_ARB_framebuffer_no_attachments -#define GL_ARB_framebuffer_no_attachments 1 - -#define GL_FRAMEBUFFER_DEFAULT_WIDTH 0x9310 -#define GL_FRAMEBUFFER_DEFAULT_HEIGHT 0x9311 -#define GL_FRAMEBUFFER_DEFAULT_LAYERS 0x9312 -#define GL_FRAMEBUFFER_DEFAULT_SAMPLES 0x9313 -#define GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS 0x9314 -#define GL_MAX_FRAMEBUFFER_WIDTH 0x9315 -#define GL_MAX_FRAMEBUFFER_HEIGHT 0x9316 -#define GL_MAX_FRAMEBUFFER_LAYERS 0x9317 -#define GL_MAX_FRAMEBUFFER_SAMPLES 0x9318 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERPARAMETERIPROC) (GLenum target, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERPARAMETERIEXTPROC) (GLuint framebuffer, GLenum pname, GLint param); - -#define glFramebufferParameteri GLEW_GET_FUN(__glewFramebufferParameteri) -#define glGetFramebufferParameteriv GLEW_GET_FUN(__glewGetFramebufferParameteriv) -#define glGetNamedFramebufferParameterivEXT GLEW_GET_FUN(__glewGetNamedFramebufferParameterivEXT) -#define glNamedFramebufferParameteriEXT GLEW_GET_FUN(__glewNamedFramebufferParameteriEXT) - -#define GLEW_ARB_framebuffer_no_attachments GLEW_GET_VAR(__GLEW_ARB_framebuffer_no_attachments) - -#endif /* GL_ARB_framebuffer_no_attachments */ - -/* ----------------------- GL_ARB_framebuffer_object ----------------------- */ - -#ifndef GL_ARB_framebuffer_object -#define GL_ARB_framebuffer_object 1 - -#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506 -#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210 -#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211 -#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212 -#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213 -#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214 -#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215 -#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216 -#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217 -#define GL_FRAMEBUFFER_DEFAULT 0x8218 -#define GL_FRAMEBUFFER_UNDEFINED 0x8219 -#define GL_DEPTH_STENCIL_ATTACHMENT 0x821A -#define GL_INDEX 0x8222 -#define GL_MAX_RENDERBUFFER_SIZE 0x84E8 -#define GL_DEPTH_STENCIL 0x84F9 -#define GL_UNSIGNED_INT_24_8 0x84FA -#define GL_DEPTH24_STENCIL8 0x88F0 -#define GL_TEXTURE_STENCIL_SIZE 0x88F1 -#define GL_UNSIGNED_NORMALIZED 0x8C17 -#define GL_SRGB 0x8C40 -#define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6 -#define GL_FRAMEBUFFER_BINDING 0x8CA6 -#define GL_RENDERBUFFER_BINDING 0x8CA7 -#define GL_READ_FRAMEBUFFER 0x8CA8 -#define GL_DRAW_FRAMEBUFFER 0x8CA9 -#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA -#define GL_RENDERBUFFER_SAMPLES 0x8CAB -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0 -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4 -#define GL_FRAMEBUFFER_COMPLETE 0x8CD5 -#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6 -#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7 -#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB -#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC -#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD -#define GL_MAX_COLOR_ATTACHMENTS 0x8CDF -#define GL_COLOR_ATTACHMENT0 0x8CE0 -#define GL_COLOR_ATTACHMENT1 0x8CE1 -#define GL_COLOR_ATTACHMENT2 0x8CE2 -#define GL_COLOR_ATTACHMENT3 0x8CE3 -#define GL_COLOR_ATTACHMENT4 0x8CE4 -#define GL_COLOR_ATTACHMENT5 0x8CE5 -#define GL_COLOR_ATTACHMENT6 0x8CE6 -#define GL_COLOR_ATTACHMENT7 0x8CE7 -#define GL_COLOR_ATTACHMENT8 0x8CE8 -#define GL_COLOR_ATTACHMENT9 0x8CE9 -#define GL_COLOR_ATTACHMENT10 0x8CEA -#define GL_COLOR_ATTACHMENT11 0x8CEB -#define GL_COLOR_ATTACHMENT12 0x8CEC -#define GL_COLOR_ATTACHMENT13 0x8CED -#define GL_COLOR_ATTACHMENT14 0x8CEE -#define GL_COLOR_ATTACHMENT15 0x8CEF -#define GL_DEPTH_ATTACHMENT 0x8D00 -#define GL_STENCIL_ATTACHMENT 0x8D20 -#define GL_FRAMEBUFFER 0x8D40 -#define GL_RENDERBUFFER 0x8D41 -#define GL_RENDERBUFFER_WIDTH 0x8D42 -#define GL_RENDERBUFFER_HEIGHT 0x8D43 -#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44 -#define GL_STENCIL_INDEX1 0x8D46 -#define GL_STENCIL_INDEX4 0x8D47 -#define GL_STENCIL_INDEX8 0x8D48 -#define GL_STENCIL_INDEX16 0x8D49 -#define GL_RENDERBUFFER_RED_SIZE 0x8D50 -#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51 -#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52 -#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53 -#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54 -#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55 -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56 -#define GL_MAX_SAMPLES 0x8D57 - -typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer); -typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint* framebuffers); -typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSPROC) (GLsizei n, const GLuint* renderbuffers); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint layer); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERPROC) (GLenum target,GLenum attachment, GLuint texture,GLint level,GLint layer); -typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSPROC) (GLsizei n, GLuint* framebuffers); -typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSPROC) (GLsizei n, GLuint* renderbuffers); -typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFERPROC) (GLuint framebuffer); -typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFERPROC) (GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); - -#define glBindFramebuffer GLEW_GET_FUN(__glewBindFramebuffer) -#define glBindRenderbuffer GLEW_GET_FUN(__glewBindRenderbuffer) -#define glBlitFramebuffer GLEW_GET_FUN(__glewBlitFramebuffer) -#define glCheckFramebufferStatus GLEW_GET_FUN(__glewCheckFramebufferStatus) -#define glDeleteFramebuffers GLEW_GET_FUN(__glewDeleteFramebuffers) -#define glDeleteRenderbuffers GLEW_GET_FUN(__glewDeleteRenderbuffers) -#define glFramebufferRenderbuffer GLEW_GET_FUN(__glewFramebufferRenderbuffer) -#define glFramebufferTexture1D GLEW_GET_FUN(__glewFramebufferTexture1D) -#define glFramebufferTexture2D GLEW_GET_FUN(__glewFramebufferTexture2D) -#define glFramebufferTexture3D GLEW_GET_FUN(__glewFramebufferTexture3D) -#define glFramebufferTextureLayer GLEW_GET_FUN(__glewFramebufferTextureLayer) -#define glGenFramebuffers GLEW_GET_FUN(__glewGenFramebuffers) -#define glGenRenderbuffers GLEW_GET_FUN(__glewGenRenderbuffers) -#define glGenerateMipmap GLEW_GET_FUN(__glewGenerateMipmap) -#define glGetFramebufferAttachmentParameteriv GLEW_GET_FUN(__glewGetFramebufferAttachmentParameteriv) -#define glGetRenderbufferParameteriv GLEW_GET_FUN(__glewGetRenderbufferParameteriv) -#define glIsFramebuffer GLEW_GET_FUN(__glewIsFramebuffer) -#define glIsRenderbuffer GLEW_GET_FUN(__glewIsRenderbuffer) -#define glRenderbufferStorage GLEW_GET_FUN(__glewRenderbufferStorage) -#define glRenderbufferStorageMultisample GLEW_GET_FUN(__glewRenderbufferStorageMultisample) - -#define GLEW_ARB_framebuffer_object GLEW_GET_VAR(__GLEW_ARB_framebuffer_object) - -#endif /* GL_ARB_framebuffer_object */ - -/* ------------------------ GL_ARB_framebuffer_sRGB ------------------------ */ - -#ifndef GL_ARB_framebuffer_sRGB -#define GL_ARB_framebuffer_sRGB 1 - -#define GL_FRAMEBUFFER_SRGB 0x8DB9 - -#define GLEW_ARB_framebuffer_sRGB GLEW_GET_VAR(__GLEW_ARB_framebuffer_sRGB) - -#endif /* GL_ARB_framebuffer_sRGB */ - -/* ------------------------ GL_ARB_geometry_shader4 ------------------------ */ - -#ifndef GL_ARB_geometry_shader4 -#define GL_ARB_geometry_shader4 1 - -#define GL_LINES_ADJACENCY_ARB 0xA -#define GL_LINE_STRIP_ADJACENCY_ARB 0xB -#define GL_TRIANGLES_ADJACENCY_ARB 0xC -#define GL_TRIANGLE_STRIP_ADJACENCY_ARB 0xD -#define GL_PROGRAM_POINT_SIZE_ARB 0x8642 -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB 0x8C29 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB 0x8DA8 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB 0x8DA9 -#define GL_GEOMETRY_SHADER_ARB 0x8DD9 -#define GL_GEOMETRY_VERTICES_OUT_ARB 0x8DDA -#define GL_GEOMETRY_INPUT_TYPE_ARB 0x8DDB -#define GL_GEOMETRY_OUTPUT_TYPE_ARB 0x8DDC -#define GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB 0x8DDD -#define GL_MAX_VERTEX_VARYING_COMPONENTS_ARB 0x8DDE -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB 0x8DE1 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREFACEARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIARBPROC) (GLuint program, GLenum pname, GLint value); - -#define glFramebufferTextureARB GLEW_GET_FUN(__glewFramebufferTextureARB) -#define glFramebufferTextureFaceARB GLEW_GET_FUN(__glewFramebufferTextureFaceARB) -#define glFramebufferTextureLayerARB GLEW_GET_FUN(__glewFramebufferTextureLayerARB) -#define glProgramParameteriARB GLEW_GET_FUN(__glewProgramParameteriARB) - -#define GLEW_ARB_geometry_shader4 GLEW_GET_VAR(__GLEW_ARB_geometry_shader4) - -#endif /* GL_ARB_geometry_shader4 */ - -/* ----------------------- GL_ARB_get_program_binary ----------------------- */ - -#ifndef GL_ARB_get_program_binary -#define GL_ARB_get_program_binary 1 - -#define GL_PROGRAM_BINARY_RETRIEVABLE_HINT 0x8257 -#define GL_PROGRAM_BINARY_LENGTH 0x8741 -#define GL_NUM_PROGRAM_BINARY_FORMATS 0x87FE -#define GL_PROGRAM_BINARY_FORMATS 0x87FF - -typedef void (GLAPIENTRY * PFNGLGETPROGRAMBINARYPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLenum *binaryFormat, void*binary); -typedef void (GLAPIENTRY * PFNGLPROGRAMBINARYPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLsizei length); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIPROC) (GLuint program, GLenum pname, GLint value); - -#define glGetProgramBinary GLEW_GET_FUN(__glewGetProgramBinary) -#define glProgramBinary GLEW_GET_FUN(__glewProgramBinary) -#define glProgramParameteri GLEW_GET_FUN(__glewProgramParameteri) - -#define GLEW_ARB_get_program_binary GLEW_GET_VAR(__GLEW_ARB_get_program_binary) - -#endif /* GL_ARB_get_program_binary */ - -/* ---------------------- GL_ARB_get_texture_sub_image --------------------- */ - -#ifndef GL_ARB_get_texture_sub_image -#define GL_ARB_get_texture_sub_image 1 - -typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels); -typedef void (GLAPIENTRY * PFNGLGETTEXTURESUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels); - -#define glGetCompressedTextureSubImage GLEW_GET_FUN(__glewGetCompressedTextureSubImage) -#define glGetTextureSubImage GLEW_GET_FUN(__glewGetTextureSubImage) - -#define GLEW_ARB_get_texture_sub_image GLEW_GET_VAR(__GLEW_ARB_get_texture_sub_image) - -#endif /* GL_ARB_get_texture_sub_image */ - -/* ---------------------------- GL_ARB_gl_spirv ---------------------------- */ - -#ifndef GL_ARB_gl_spirv -#define GL_ARB_gl_spirv 1 - -#define GL_SHADER_BINARY_FORMAT_SPIR_V_ARB 0x9551 -#define GL_SPIR_V_BINARY_ARB 0x9552 - -typedef void (GLAPIENTRY * PFNGLSPECIALIZESHADERARBPROC) (GLuint shader, const GLchar* pEntryPoint, GLuint numSpecializationConstants, const GLuint* pConstantIndex, const GLuint* pConstantValue); - -#define glSpecializeShaderARB GLEW_GET_FUN(__glewSpecializeShaderARB) - -#define GLEW_ARB_gl_spirv GLEW_GET_VAR(__GLEW_ARB_gl_spirv) - -#endif /* GL_ARB_gl_spirv */ - -/* --------------------------- GL_ARB_gpu_shader5 -------------------------- */ - -#ifndef GL_ARB_gpu_shader5 -#define GL_ARB_gpu_shader5 1 - -#define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F -#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A -#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B -#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C -#define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D -#define GL_MAX_VERTEX_STREAMS 0x8E71 - -#define GLEW_ARB_gpu_shader5 GLEW_GET_VAR(__GLEW_ARB_gpu_shader5) - -#endif /* GL_ARB_gpu_shader5 */ - -/* ------------------------- GL_ARB_gpu_shader_fp64 ------------------------ */ - -#ifndef GL_ARB_gpu_shader_fp64 -#define GL_ARB_gpu_shader_fp64 1 - -#define GL_DOUBLE_MAT2 0x8F46 -#define GL_DOUBLE_MAT3 0x8F47 -#define GL_DOUBLE_MAT4 0x8F48 -#define GL_DOUBLE_MAT2x3 0x8F49 -#define GL_DOUBLE_MAT2x4 0x8F4A -#define GL_DOUBLE_MAT3x2 0x8F4B -#define GL_DOUBLE_MAT3x4 0x8F4C -#define GL_DOUBLE_MAT4x2 0x8F4D -#define GL_DOUBLE_MAT4x3 0x8F4E -#define GL_DOUBLE_VEC2 0x8FFC -#define GL_DOUBLE_VEC3 0x8FFD -#define GL_DOUBLE_VEC4 0x8FFE - -typedef void (GLAPIENTRY * PFNGLGETUNIFORMDVPROC) (GLuint program, GLint location, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLUNIFORM1DPROC) (GLint location, GLdouble x); -typedef void (GLAPIENTRY * PFNGLUNIFORM1DVPROC) (GLint location, GLsizei count, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2DPROC) (GLint location, GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLUNIFORM2DVPROC) (GLint location, GLsizei count, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLUNIFORM3DVPROC) (GLint location, GLsizei count, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLUNIFORM4DVPROC) (GLint location, GLsizei count, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); - -#define glGetUniformdv GLEW_GET_FUN(__glewGetUniformdv) -#define glUniform1d GLEW_GET_FUN(__glewUniform1d) -#define glUniform1dv GLEW_GET_FUN(__glewUniform1dv) -#define glUniform2d GLEW_GET_FUN(__glewUniform2d) -#define glUniform2dv GLEW_GET_FUN(__glewUniform2dv) -#define glUniform3d GLEW_GET_FUN(__glewUniform3d) -#define glUniform3dv GLEW_GET_FUN(__glewUniform3dv) -#define glUniform4d GLEW_GET_FUN(__glewUniform4d) -#define glUniform4dv GLEW_GET_FUN(__glewUniform4dv) -#define glUniformMatrix2dv GLEW_GET_FUN(__glewUniformMatrix2dv) -#define glUniformMatrix2x3dv GLEW_GET_FUN(__glewUniformMatrix2x3dv) -#define glUniformMatrix2x4dv GLEW_GET_FUN(__glewUniformMatrix2x4dv) -#define glUniformMatrix3dv GLEW_GET_FUN(__glewUniformMatrix3dv) -#define glUniformMatrix3x2dv GLEW_GET_FUN(__glewUniformMatrix3x2dv) -#define glUniformMatrix3x4dv GLEW_GET_FUN(__glewUniformMatrix3x4dv) -#define glUniformMatrix4dv GLEW_GET_FUN(__glewUniformMatrix4dv) -#define glUniformMatrix4x2dv GLEW_GET_FUN(__glewUniformMatrix4x2dv) -#define glUniformMatrix4x3dv GLEW_GET_FUN(__glewUniformMatrix4x3dv) - -#define GLEW_ARB_gpu_shader_fp64 GLEW_GET_VAR(__GLEW_ARB_gpu_shader_fp64) - -#endif /* GL_ARB_gpu_shader_fp64 */ - -/* ------------------------ GL_ARB_gpu_shader_int64 ------------------------ */ - -#ifndef GL_ARB_gpu_shader_int64 -#define GL_ARB_gpu_shader_int64 1 - -#define GL_INT64_ARB 0x140E -#define GL_UNSIGNED_INT64_ARB 0x140F -#define GL_INT64_VEC2_ARB 0x8FE9 -#define GL_INT64_VEC3_ARB 0x8FEA -#define GL_INT64_VEC4_ARB 0x8FEB -#define GL_UNSIGNED_INT64_VEC2_ARB 0x8FF5 -#define GL_UNSIGNED_INT64_VEC3_ARB 0x8FF6 -#define GL_UNSIGNED_INT64_VEC4_ARB 0x8FF7 - -typedef void (GLAPIENTRY * PFNGLGETUNIFORMI64VARBPROC) (GLuint program, GLint location, GLint64* params); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMUI64VARBPROC) (GLuint program, GLint location, GLuint64* params); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMI64VARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLint64* params); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMUI64VARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint64* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64ARBPROC) (GLuint program, GLint location, GLint64 x); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLint64* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64ARBPROC) (GLuint program, GLint location, GLuint64 x); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64ARBPROC) (GLuint program, GLint location, GLint64 x, GLint64 y); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLint64* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64ARBPROC) (GLuint program, GLint location, GLuint64 x, GLuint64 y); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64ARBPROC) (GLuint program, GLint location, GLint64 x, GLint64 y, GLint64 z); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLint64* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64ARBPROC) (GLuint program, GLint location, GLuint64 x, GLuint64 y, GLuint64 z); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64ARBPROC) (GLuint program, GLint location, GLint64 x, GLint64 y, GLint64 z, GLint64 w); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLint64* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64ARBPROC) (GLuint program, GLint location, GLuint64 x, GLuint64 y, GLuint64 z, GLuint64 w); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM1I64ARBPROC) (GLint location, GLint64 x); -typedef void (GLAPIENTRY * PFNGLUNIFORM1I64VARBPROC) (GLint location, GLsizei count, const GLint64* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64ARBPROC) (GLint location, GLuint64 x); -typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2I64ARBPROC) (GLint location, GLint64 x, GLint64 y); -typedef void (GLAPIENTRY * PFNGLUNIFORM2I64VARBPROC) (GLint location, GLsizei count, const GLint64* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64ARBPROC) (GLint location, GLuint64 x, GLuint64 y); -typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3I64ARBPROC) (GLint location, GLint64 x, GLint64 y, GLint64 z); -typedef void (GLAPIENTRY * PFNGLUNIFORM3I64VARBPROC) (GLint location, GLsizei count, const GLint64* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64ARBPROC) (GLint location, GLuint64 x, GLuint64 y, GLuint64 z); -typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4I64ARBPROC) (GLint location, GLint64 x, GLint64 y, GLint64 z, GLint64 w); -typedef void (GLAPIENTRY * PFNGLUNIFORM4I64VARBPROC) (GLint location, GLsizei count, const GLint64* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64ARBPROC) (GLint location, GLuint64 x, GLuint64 y, GLuint64 z, GLuint64 w); -typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64VARBPROC) (GLint location, GLsizei count, const GLuint64* value); - -#define glGetUniformi64vARB GLEW_GET_FUN(__glewGetUniformi64vARB) -#define glGetUniformui64vARB GLEW_GET_FUN(__glewGetUniformui64vARB) -#define glGetnUniformi64vARB GLEW_GET_FUN(__glewGetnUniformi64vARB) -#define glGetnUniformui64vARB GLEW_GET_FUN(__glewGetnUniformui64vARB) -#define glProgramUniform1i64ARB GLEW_GET_FUN(__glewProgramUniform1i64ARB) -#define glProgramUniform1i64vARB GLEW_GET_FUN(__glewProgramUniform1i64vARB) -#define glProgramUniform1ui64ARB GLEW_GET_FUN(__glewProgramUniform1ui64ARB) -#define glProgramUniform1ui64vARB GLEW_GET_FUN(__glewProgramUniform1ui64vARB) -#define glProgramUniform2i64ARB GLEW_GET_FUN(__glewProgramUniform2i64ARB) -#define glProgramUniform2i64vARB GLEW_GET_FUN(__glewProgramUniform2i64vARB) -#define glProgramUniform2ui64ARB GLEW_GET_FUN(__glewProgramUniform2ui64ARB) -#define glProgramUniform2ui64vARB GLEW_GET_FUN(__glewProgramUniform2ui64vARB) -#define glProgramUniform3i64ARB GLEW_GET_FUN(__glewProgramUniform3i64ARB) -#define glProgramUniform3i64vARB GLEW_GET_FUN(__glewProgramUniform3i64vARB) -#define glProgramUniform3ui64ARB GLEW_GET_FUN(__glewProgramUniform3ui64ARB) -#define glProgramUniform3ui64vARB GLEW_GET_FUN(__glewProgramUniform3ui64vARB) -#define glProgramUniform4i64ARB GLEW_GET_FUN(__glewProgramUniform4i64ARB) -#define glProgramUniform4i64vARB GLEW_GET_FUN(__glewProgramUniform4i64vARB) -#define glProgramUniform4ui64ARB GLEW_GET_FUN(__glewProgramUniform4ui64ARB) -#define glProgramUniform4ui64vARB GLEW_GET_FUN(__glewProgramUniform4ui64vARB) -#define glUniform1i64ARB GLEW_GET_FUN(__glewUniform1i64ARB) -#define glUniform1i64vARB GLEW_GET_FUN(__glewUniform1i64vARB) -#define glUniform1ui64ARB GLEW_GET_FUN(__glewUniform1ui64ARB) -#define glUniform1ui64vARB GLEW_GET_FUN(__glewUniform1ui64vARB) -#define glUniform2i64ARB GLEW_GET_FUN(__glewUniform2i64ARB) -#define glUniform2i64vARB GLEW_GET_FUN(__glewUniform2i64vARB) -#define glUniform2ui64ARB GLEW_GET_FUN(__glewUniform2ui64ARB) -#define glUniform2ui64vARB GLEW_GET_FUN(__glewUniform2ui64vARB) -#define glUniform3i64ARB GLEW_GET_FUN(__glewUniform3i64ARB) -#define glUniform3i64vARB GLEW_GET_FUN(__glewUniform3i64vARB) -#define glUniform3ui64ARB GLEW_GET_FUN(__glewUniform3ui64ARB) -#define glUniform3ui64vARB GLEW_GET_FUN(__glewUniform3ui64vARB) -#define glUniform4i64ARB GLEW_GET_FUN(__glewUniform4i64ARB) -#define glUniform4i64vARB GLEW_GET_FUN(__glewUniform4i64vARB) -#define glUniform4ui64ARB GLEW_GET_FUN(__glewUniform4ui64ARB) -#define glUniform4ui64vARB GLEW_GET_FUN(__glewUniform4ui64vARB) - -#define GLEW_ARB_gpu_shader_int64 GLEW_GET_VAR(__GLEW_ARB_gpu_shader_int64) - -#endif /* GL_ARB_gpu_shader_int64 */ - -/* ------------------------ GL_ARB_half_float_pixel ------------------------ */ - -#ifndef GL_ARB_half_float_pixel -#define GL_ARB_half_float_pixel 1 - -#define GL_HALF_FLOAT_ARB 0x140B - -#define GLEW_ARB_half_float_pixel GLEW_GET_VAR(__GLEW_ARB_half_float_pixel) - -#endif /* GL_ARB_half_float_pixel */ - -/* ------------------------ GL_ARB_half_float_vertex ----------------------- */ - -#ifndef GL_ARB_half_float_vertex -#define GL_ARB_half_float_vertex 1 - -#define GL_HALF_FLOAT 0x140B - -#define GLEW_ARB_half_float_vertex GLEW_GET_VAR(__GLEW_ARB_half_float_vertex) - -#endif /* GL_ARB_half_float_vertex */ - -/* ----------------------------- GL_ARB_imaging ---------------------------- */ - -#ifndef GL_ARB_imaging -#define GL_ARB_imaging 1 - -#define GL_CONSTANT_COLOR 0x8001 -#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 -#define GL_CONSTANT_ALPHA 0x8003 -#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 -#define GL_BLEND_COLOR 0x8005 -#define GL_FUNC_ADD 0x8006 -#define GL_MIN 0x8007 -#define GL_MAX 0x8008 -#define GL_BLEND_EQUATION 0x8009 -#define GL_FUNC_SUBTRACT 0x800A -#define GL_FUNC_REVERSE_SUBTRACT 0x800B -#define GL_CONVOLUTION_1D 0x8010 -#define GL_CONVOLUTION_2D 0x8011 -#define GL_SEPARABLE_2D 0x8012 -#define GL_CONVOLUTION_BORDER_MODE 0x8013 -#define GL_CONVOLUTION_FILTER_SCALE 0x8014 -#define GL_CONVOLUTION_FILTER_BIAS 0x8015 -#define GL_REDUCE 0x8016 -#define GL_CONVOLUTION_FORMAT 0x8017 -#define GL_CONVOLUTION_WIDTH 0x8018 -#define GL_CONVOLUTION_HEIGHT 0x8019 -#define GL_MAX_CONVOLUTION_WIDTH 0x801A -#define GL_MAX_CONVOLUTION_HEIGHT 0x801B -#define GL_POST_CONVOLUTION_RED_SCALE 0x801C -#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D -#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E -#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F -#define GL_POST_CONVOLUTION_RED_BIAS 0x8020 -#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 -#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 -#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 -#define GL_HISTOGRAM 0x8024 -#define GL_PROXY_HISTOGRAM 0x8025 -#define GL_HISTOGRAM_WIDTH 0x8026 -#define GL_HISTOGRAM_FORMAT 0x8027 -#define GL_HISTOGRAM_RED_SIZE 0x8028 -#define GL_HISTOGRAM_GREEN_SIZE 0x8029 -#define GL_HISTOGRAM_BLUE_SIZE 0x802A -#define GL_HISTOGRAM_ALPHA_SIZE 0x802B -#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C -#define GL_HISTOGRAM_SINK 0x802D -#define GL_MINMAX 0x802E -#define GL_MINMAX_FORMAT 0x802F -#define GL_MINMAX_SINK 0x8030 -#define GL_TABLE_TOO_LARGE 0x8031 -#define GL_COLOR_MATRIX 0x80B1 -#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 -#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 -#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 -#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 -#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 -#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 -#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 -#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 -#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA -#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB -#define GL_COLOR_TABLE 0x80D0 -#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 -#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 -#define GL_PROXY_COLOR_TABLE 0x80D3 -#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 -#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 -#define GL_COLOR_TABLE_SCALE 0x80D6 -#define GL_COLOR_TABLE_BIAS 0x80D7 -#define GL_COLOR_TABLE_FORMAT 0x80D8 -#define GL_COLOR_TABLE_WIDTH 0x80D9 -#define GL_COLOR_TABLE_RED_SIZE 0x80DA -#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB -#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC -#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD -#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE -#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF -#define GL_IGNORE_BORDER 0x8150 -#define GL_CONSTANT_BORDER 0x8151 -#define GL_WRAP_BORDER 0x8152 -#define GL_REPLICATE_BORDER 0x8153 -#define GL_CONVOLUTION_BORDER_COLOR 0x8154 - -typedef void (GLAPIENTRY * PFNGLCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *table); -typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params); -typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *image); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *image); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (GLAPIENTRY * PFNGLCOPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLCOPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, void *table); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, void *image); -typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); -typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values); -typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); -typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (GLAPIENTRY * PFNGLGETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum types, void *values); -typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params); -typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (GLAPIENTRY * PFNGLGETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, void *row, void *column, void *span); -typedef void (GLAPIENTRY * PFNGLHISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink); -typedef void (GLAPIENTRY * PFNGLMINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink); -typedef void (GLAPIENTRY * PFNGLRESETHISTOGRAMPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLRESETMINMAXPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLSEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *row, const void *column); - -#define glColorSubTable GLEW_GET_FUN(__glewColorSubTable) -#define glColorTable GLEW_GET_FUN(__glewColorTable) -#define glColorTableParameterfv GLEW_GET_FUN(__glewColorTableParameterfv) -#define glColorTableParameteriv GLEW_GET_FUN(__glewColorTableParameteriv) -#define glConvolutionFilter1D GLEW_GET_FUN(__glewConvolutionFilter1D) -#define glConvolutionFilter2D GLEW_GET_FUN(__glewConvolutionFilter2D) -#define glConvolutionParameterf GLEW_GET_FUN(__glewConvolutionParameterf) -#define glConvolutionParameterfv GLEW_GET_FUN(__glewConvolutionParameterfv) -#define glConvolutionParameteri GLEW_GET_FUN(__glewConvolutionParameteri) -#define glConvolutionParameteriv GLEW_GET_FUN(__glewConvolutionParameteriv) -#define glCopyColorSubTable GLEW_GET_FUN(__glewCopyColorSubTable) -#define glCopyColorTable GLEW_GET_FUN(__glewCopyColorTable) -#define glCopyConvolutionFilter1D GLEW_GET_FUN(__glewCopyConvolutionFilter1D) -#define glCopyConvolutionFilter2D GLEW_GET_FUN(__glewCopyConvolutionFilter2D) -#define glGetColorTable GLEW_GET_FUN(__glewGetColorTable) -#define glGetColorTableParameterfv GLEW_GET_FUN(__glewGetColorTableParameterfv) -#define glGetColorTableParameteriv GLEW_GET_FUN(__glewGetColorTableParameteriv) -#define glGetConvolutionFilter GLEW_GET_FUN(__glewGetConvolutionFilter) -#define glGetConvolutionParameterfv GLEW_GET_FUN(__glewGetConvolutionParameterfv) -#define glGetConvolutionParameteriv GLEW_GET_FUN(__glewGetConvolutionParameteriv) -#define glGetHistogram GLEW_GET_FUN(__glewGetHistogram) -#define glGetHistogramParameterfv GLEW_GET_FUN(__glewGetHistogramParameterfv) -#define glGetHistogramParameteriv GLEW_GET_FUN(__glewGetHistogramParameteriv) -#define glGetMinmax GLEW_GET_FUN(__glewGetMinmax) -#define glGetMinmaxParameterfv GLEW_GET_FUN(__glewGetMinmaxParameterfv) -#define glGetMinmaxParameteriv GLEW_GET_FUN(__glewGetMinmaxParameteriv) -#define glGetSeparableFilter GLEW_GET_FUN(__glewGetSeparableFilter) -#define glHistogram GLEW_GET_FUN(__glewHistogram) -#define glMinmax GLEW_GET_FUN(__glewMinmax) -#define glResetHistogram GLEW_GET_FUN(__glewResetHistogram) -#define glResetMinmax GLEW_GET_FUN(__glewResetMinmax) -#define glSeparableFilter2D GLEW_GET_FUN(__glewSeparableFilter2D) - -#define GLEW_ARB_imaging GLEW_GET_VAR(__GLEW_ARB_imaging) - -#endif /* GL_ARB_imaging */ - -/* ----------------------- GL_ARB_indirect_parameters ---------------------- */ - -#ifndef GL_ARB_indirect_parameters -#define GL_ARB_indirect_parameters 1 - -#define GL_PARAMETER_BUFFER_ARB 0x80EE -#define GL_PARAMETER_BUFFER_BINDING_ARB 0x80EF - -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC) (GLenum mode, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); - -#define glMultiDrawArraysIndirectCountARB GLEW_GET_FUN(__glewMultiDrawArraysIndirectCountARB) -#define glMultiDrawElementsIndirectCountARB GLEW_GET_FUN(__glewMultiDrawElementsIndirectCountARB) - -#define GLEW_ARB_indirect_parameters GLEW_GET_VAR(__GLEW_ARB_indirect_parameters) - -#endif /* GL_ARB_indirect_parameters */ - -/* ------------------------ GL_ARB_instanced_arrays ------------------------ */ - -#ifndef GL_ARB_instanced_arrays -#define GL_ARB_instanced_arrays 1 - -#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB 0x88FE - -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDARBPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDARBPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORARBPROC) (GLuint index, GLuint divisor); - -#define glDrawArraysInstancedARB GLEW_GET_FUN(__glewDrawArraysInstancedARB) -#define glDrawElementsInstancedARB GLEW_GET_FUN(__glewDrawElementsInstancedARB) -#define glVertexAttribDivisorARB GLEW_GET_FUN(__glewVertexAttribDivisorARB) - -#define GLEW_ARB_instanced_arrays GLEW_GET_VAR(__GLEW_ARB_instanced_arrays) - -#endif /* GL_ARB_instanced_arrays */ - -/* ---------------------- GL_ARB_internalformat_query ---------------------- */ - -#ifndef GL_ARB_internalformat_query -#define GL_ARB_internalformat_query 1 - -#define GL_NUM_SAMPLE_COUNTS 0x9380 - -typedef void (GLAPIENTRY * PFNGLGETINTERNALFORMATIVPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params); - -#define glGetInternalformativ GLEW_GET_FUN(__glewGetInternalformativ) - -#define GLEW_ARB_internalformat_query GLEW_GET_VAR(__GLEW_ARB_internalformat_query) - -#endif /* GL_ARB_internalformat_query */ - -/* ---------------------- GL_ARB_internalformat_query2 --------------------- */ - -#ifndef GL_ARB_internalformat_query2 -#define GL_ARB_internalformat_query2 1 - -#define GL_INTERNALFORMAT_SUPPORTED 0x826F -#define GL_INTERNALFORMAT_PREFERRED 0x8270 -#define GL_INTERNALFORMAT_RED_SIZE 0x8271 -#define GL_INTERNALFORMAT_GREEN_SIZE 0x8272 -#define GL_INTERNALFORMAT_BLUE_SIZE 0x8273 -#define GL_INTERNALFORMAT_ALPHA_SIZE 0x8274 -#define GL_INTERNALFORMAT_DEPTH_SIZE 0x8275 -#define GL_INTERNALFORMAT_STENCIL_SIZE 0x8276 -#define GL_INTERNALFORMAT_SHARED_SIZE 0x8277 -#define GL_INTERNALFORMAT_RED_TYPE 0x8278 -#define GL_INTERNALFORMAT_GREEN_TYPE 0x8279 -#define GL_INTERNALFORMAT_BLUE_TYPE 0x827A -#define GL_INTERNALFORMAT_ALPHA_TYPE 0x827B -#define GL_INTERNALFORMAT_DEPTH_TYPE 0x827C -#define GL_INTERNALFORMAT_STENCIL_TYPE 0x827D -#define GL_MAX_WIDTH 0x827E -#define GL_MAX_HEIGHT 0x827F -#define GL_MAX_DEPTH 0x8280 -#define GL_MAX_LAYERS 0x8281 -#define GL_MAX_COMBINED_DIMENSIONS 0x8282 -#define GL_COLOR_COMPONENTS 0x8283 -#define GL_DEPTH_COMPONENTS 0x8284 -#define GL_STENCIL_COMPONENTS 0x8285 -#define GL_COLOR_RENDERABLE 0x8286 -#define GL_DEPTH_RENDERABLE 0x8287 -#define GL_STENCIL_RENDERABLE 0x8288 -#define GL_FRAMEBUFFER_RENDERABLE 0x8289 -#define GL_FRAMEBUFFER_RENDERABLE_LAYERED 0x828A -#define GL_FRAMEBUFFER_BLEND 0x828B -#define GL_READ_PIXELS 0x828C -#define GL_READ_PIXELS_FORMAT 0x828D -#define GL_READ_PIXELS_TYPE 0x828E -#define GL_TEXTURE_IMAGE_FORMAT 0x828F -#define GL_TEXTURE_IMAGE_TYPE 0x8290 -#define GL_GET_TEXTURE_IMAGE_FORMAT 0x8291 -#define GL_GET_TEXTURE_IMAGE_TYPE 0x8292 -#define GL_MIPMAP 0x8293 -#define GL_MANUAL_GENERATE_MIPMAP 0x8294 -#define GL_AUTO_GENERATE_MIPMAP 0x8295 -#define GL_COLOR_ENCODING 0x8296 -#define GL_SRGB_READ 0x8297 -#define GL_SRGB_WRITE 0x8298 -#define GL_SRGB_DECODE_ARB 0x8299 -#define GL_FILTER 0x829A -#define GL_VERTEX_TEXTURE 0x829B -#define GL_TESS_CONTROL_TEXTURE 0x829C -#define GL_TESS_EVALUATION_TEXTURE 0x829D -#define GL_GEOMETRY_TEXTURE 0x829E -#define GL_FRAGMENT_TEXTURE 0x829F -#define GL_COMPUTE_TEXTURE 0x82A0 -#define GL_TEXTURE_SHADOW 0x82A1 -#define GL_TEXTURE_GATHER 0x82A2 -#define GL_TEXTURE_GATHER_SHADOW 0x82A3 -#define GL_SHADER_IMAGE_LOAD 0x82A4 -#define GL_SHADER_IMAGE_STORE 0x82A5 -#define GL_SHADER_IMAGE_ATOMIC 0x82A6 -#define GL_IMAGE_TEXEL_SIZE 0x82A7 -#define GL_IMAGE_COMPATIBILITY_CLASS 0x82A8 -#define GL_IMAGE_PIXEL_FORMAT 0x82A9 -#define GL_IMAGE_PIXEL_TYPE 0x82AA -#define GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST 0x82AC -#define GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST 0x82AD -#define GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE 0x82AE -#define GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE 0x82AF -#define GL_TEXTURE_COMPRESSED_BLOCK_WIDTH 0x82B1 -#define GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT 0x82B2 -#define GL_TEXTURE_COMPRESSED_BLOCK_SIZE 0x82B3 -#define GL_CLEAR_BUFFER 0x82B4 -#define GL_TEXTURE_VIEW 0x82B5 -#define GL_VIEW_COMPATIBILITY_CLASS 0x82B6 -#define GL_FULL_SUPPORT 0x82B7 -#define GL_CAVEAT_SUPPORT 0x82B8 -#define GL_IMAGE_CLASS_4_X_32 0x82B9 -#define GL_IMAGE_CLASS_2_X_32 0x82BA -#define GL_IMAGE_CLASS_1_X_32 0x82BB -#define GL_IMAGE_CLASS_4_X_16 0x82BC -#define GL_IMAGE_CLASS_2_X_16 0x82BD -#define GL_IMAGE_CLASS_1_X_16 0x82BE -#define GL_IMAGE_CLASS_4_X_8 0x82BF -#define GL_IMAGE_CLASS_2_X_8 0x82C0 -#define GL_IMAGE_CLASS_1_X_8 0x82C1 -#define GL_IMAGE_CLASS_11_11_10 0x82C2 -#define GL_IMAGE_CLASS_10_10_10_2 0x82C3 -#define GL_VIEW_CLASS_128_BITS 0x82C4 -#define GL_VIEW_CLASS_96_BITS 0x82C5 -#define GL_VIEW_CLASS_64_BITS 0x82C6 -#define GL_VIEW_CLASS_48_BITS 0x82C7 -#define GL_VIEW_CLASS_32_BITS 0x82C8 -#define GL_VIEW_CLASS_24_BITS 0x82C9 -#define GL_VIEW_CLASS_16_BITS 0x82CA -#define GL_VIEW_CLASS_8_BITS 0x82CB -#define GL_VIEW_CLASS_S3TC_DXT1_RGB 0x82CC -#define GL_VIEW_CLASS_S3TC_DXT1_RGBA 0x82CD -#define GL_VIEW_CLASS_S3TC_DXT3_RGBA 0x82CE -#define GL_VIEW_CLASS_S3TC_DXT5_RGBA 0x82CF -#define GL_VIEW_CLASS_RGTC1_RED 0x82D0 -#define GL_VIEW_CLASS_RGTC2_RG 0x82D1 -#define GL_VIEW_CLASS_BPTC_UNORM 0x82D2 -#define GL_VIEW_CLASS_BPTC_FLOAT 0x82D3 - -typedef void (GLAPIENTRY * PFNGLGETINTERNALFORMATI64VPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64* params); - -#define glGetInternalformati64v GLEW_GET_FUN(__glewGetInternalformati64v) - -#define GLEW_ARB_internalformat_query2 GLEW_GET_VAR(__GLEW_ARB_internalformat_query2) - -#endif /* GL_ARB_internalformat_query2 */ - -/* ----------------------- GL_ARB_invalidate_subdata ----------------------- */ - -#ifndef GL_ARB_invalidate_subdata -#define GL_ARB_invalidate_subdata 1 - -typedef void (GLAPIENTRY * PFNGLINVALIDATEBUFFERDATAPROC) (GLuint buffer); -typedef void (GLAPIENTRY * PFNGLINVALIDATEBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length); -typedef void (GLAPIENTRY * PFNGLINVALIDATEFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum* attachments); -typedef void (GLAPIENTRY * PFNGLINVALIDATESUBFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLINVALIDATETEXIMAGEPROC) (GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLINVALIDATETEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth); - -#define glInvalidateBufferData GLEW_GET_FUN(__glewInvalidateBufferData) -#define glInvalidateBufferSubData GLEW_GET_FUN(__glewInvalidateBufferSubData) -#define glInvalidateFramebuffer GLEW_GET_FUN(__glewInvalidateFramebuffer) -#define glInvalidateSubFramebuffer GLEW_GET_FUN(__glewInvalidateSubFramebuffer) -#define glInvalidateTexImage GLEW_GET_FUN(__glewInvalidateTexImage) -#define glInvalidateTexSubImage GLEW_GET_FUN(__glewInvalidateTexSubImage) - -#define GLEW_ARB_invalidate_subdata GLEW_GET_VAR(__GLEW_ARB_invalidate_subdata) - -#endif /* GL_ARB_invalidate_subdata */ - -/* ---------------------- GL_ARB_map_buffer_alignment ---------------------- */ - -#ifndef GL_ARB_map_buffer_alignment -#define GL_ARB_map_buffer_alignment 1 - -#define GL_MIN_MAP_BUFFER_ALIGNMENT 0x90BC - -#define GLEW_ARB_map_buffer_alignment GLEW_GET_VAR(__GLEW_ARB_map_buffer_alignment) - -#endif /* GL_ARB_map_buffer_alignment */ - -/* ------------------------ GL_ARB_map_buffer_range ------------------------ */ - -#ifndef GL_ARB_map_buffer_range -#define GL_ARB_map_buffer_range 1 - -#define GL_MAP_READ_BIT 0x0001 -#define GL_MAP_WRITE_BIT 0x0002 -#define GL_MAP_INVALIDATE_RANGE_BIT 0x0004 -#define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008 -#define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010 -#define GL_MAP_UNSYNCHRONIZED_BIT 0x0020 - -typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length); -typedef void * (GLAPIENTRY * PFNGLMAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); - -#define glFlushMappedBufferRange GLEW_GET_FUN(__glewFlushMappedBufferRange) -#define glMapBufferRange GLEW_GET_FUN(__glewMapBufferRange) - -#define GLEW_ARB_map_buffer_range GLEW_GET_VAR(__GLEW_ARB_map_buffer_range) - -#endif /* GL_ARB_map_buffer_range */ - -/* ------------------------- GL_ARB_matrix_palette ------------------------- */ - -#ifndef GL_ARB_matrix_palette -#define GL_ARB_matrix_palette 1 - -#define GL_MATRIX_PALETTE_ARB 0x8840 -#define GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841 -#define GL_MAX_PALETTE_MATRICES_ARB 0x8842 -#define GL_CURRENT_PALETTE_MATRIX_ARB 0x8843 -#define GL_MATRIX_INDEX_ARRAY_ARB 0x8844 -#define GL_CURRENT_MATRIX_INDEX_ARB 0x8845 -#define GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846 -#define GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847 -#define GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848 -#define GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849 - -typedef void (GLAPIENTRY * PFNGLCURRENTPALETTEMATRIXARBPROC) (GLint index); -typedef void (GLAPIENTRY * PFNGLMATRIXINDEXPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); -typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUBVARBPROC) (GLint size, GLubyte *indices); -typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUIVARBPROC) (GLint size, GLuint *indices); -typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUSVARBPROC) (GLint size, GLushort *indices); - -#define glCurrentPaletteMatrixARB GLEW_GET_FUN(__glewCurrentPaletteMatrixARB) -#define glMatrixIndexPointerARB GLEW_GET_FUN(__glewMatrixIndexPointerARB) -#define glMatrixIndexubvARB GLEW_GET_FUN(__glewMatrixIndexubvARB) -#define glMatrixIndexuivARB GLEW_GET_FUN(__glewMatrixIndexuivARB) -#define glMatrixIndexusvARB GLEW_GET_FUN(__glewMatrixIndexusvARB) - -#define GLEW_ARB_matrix_palette GLEW_GET_VAR(__GLEW_ARB_matrix_palette) - -#endif /* GL_ARB_matrix_palette */ - -/* --------------------------- GL_ARB_multi_bind --------------------------- */ - -#ifndef GL_ARB_multi_bind -#define GL_ARB_multi_bind 1 - -typedef void (GLAPIENTRY * PFNGLBINDBUFFERSBASEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint* buffers); -typedef void (GLAPIENTRY * PFNGLBINDBUFFERSRANGEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint* buffers, const GLintptr *offsets, const GLsizeiptr *sizes); -typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTURESPROC) (GLuint first, GLsizei count, const GLuint* textures); -typedef void (GLAPIENTRY * PFNGLBINDSAMPLERSPROC) (GLuint first, GLsizei count, const GLuint* samplers); -typedef void (GLAPIENTRY * PFNGLBINDTEXTURESPROC) (GLuint first, GLsizei count, const GLuint* textures); -typedef void (GLAPIENTRY * PFNGLBINDVERTEXBUFFERSPROC) (GLuint first, GLsizei count, const GLuint* buffers, const GLintptr *offsets, const GLsizei *strides); - -#define glBindBuffersBase GLEW_GET_FUN(__glewBindBuffersBase) -#define glBindBuffersRange GLEW_GET_FUN(__glewBindBuffersRange) -#define glBindImageTextures GLEW_GET_FUN(__glewBindImageTextures) -#define glBindSamplers GLEW_GET_FUN(__glewBindSamplers) -#define glBindTextures GLEW_GET_FUN(__glewBindTextures) -#define glBindVertexBuffers GLEW_GET_FUN(__glewBindVertexBuffers) - -#define GLEW_ARB_multi_bind GLEW_GET_VAR(__GLEW_ARB_multi_bind) - -#endif /* GL_ARB_multi_bind */ - -/* ----------------------- GL_ARB_multi_draw_indirect ---------------------- */ - -#ifndef GL_ARB_multi_draw_indirect -#define GL_ARB_multi_draw_indirect 1 - -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTPROC) (GLenum mode, const void *indirect, GLsizei primcount, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei primcount, GLsizei stride); - -#define glMultiDrawArraysIndirect GLEW_GET_FUN(__glewMultiDrawArraysIndirect) -#define glMultiDrawElementsIndirect GLEW_GET_FUN(__glewMultiDrawElementsIndirect) - -#define GLEW_ARB_multi_draw_indirect GLEW_GET_VAR(__GLEW_ARB_multi_draw_indirect) - -#endif /* GL_ARB_multi_draw_indirect */ - -/* --------------------------- GL_ARB_multisample -------------------------- */ - -#ifndef GL_ARB_multisample -#define GL_ARB_multisample 1 - -#define GL_MULTISAMPLE_ARB 0x809D -#define GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809E -#define GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809F -#define GL_SAMPLE_COVERAGE_ARB 0x80A0 -#define GL_SAMPLE_BUFFERS_ARB 0x80A8 -#define GL_SAMPLES_ARB 0x80A9 -#define GL_SAMPLE_COVERAGE_VALUE_ARB 0x80AA -#define GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB -#define GL_MULTISAMPLE_BIT_ARB 0x20000000 - -typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEARBPROC) (GLclampf value, GLboolean invert); - -#define glSampleCoverageARB GLEW_GET_FUN(__glewSampleCoverageARB) - -#define GLEW_ARB_multisample GLEW_GET_VAR(__GLEW_ARB_multisample) - -#endif /* GL_ARB_multisample */ - -/* -------------------------- GL_ARB_multitexture -------------------------- */ - -#ifndef GL_ARB_multitexture -#define GL_ARB_multitexture 1 - -#define GL_TEXTURE0_ARB 0x84C0 -#define GL_TEXTURE1_ARB 0x84C1 -#define GL_TEXTURE2_ARB 0x84C2 -#define GL_TEXTURE3_ARB 0x84C3 -#define GL_TEXTURE4_ARB 0x84C4 -#define GL_TEXTURE5_ARB 0x84C5 -#define GL_TEXTURE6_ARB 0x84C6 -#define GL_TEXTURE7_ARB 0x84C7 -#define GL_TEXTURE8_ARB 0x84C8 -#define GL_TEXTURE9_ARB 0x84C9 -#define GL_TEXTURE10_ARB 0x84CA -#define GL_TEXTURE11_ARB 0x84CB -#define GL_TEXTURE12_ARB 0x84CC -#define GL_TEXTURE13_ARB 0x84CD -#define GL_TEXTURE14_ARB 0x84CE -#define GL_TEXTURE15_ARB 0x84CF -#define GL_TEXTURE16_ARB 0x84D0 -#define GL_TEXTURE17_ARB 0x84D1 -#define GL_TEXTURE18_ARB 0x84D2 -#define GL_TEXTURE19_ARB 0x84D3 -#define GL_TEXTURE20_ARB 0x84D4 -#define GL_TEXTURE21_ARB 0x84D5 -#define GL_TEXTURE22_ARB 0x84D6 -#define GL_TEXTURE23_ARB 0x84D7 -#define GL_TEXTURE24_ARB 0x84D8 -#define GL_TEXTURE25_ARB 0x84D9 -#define GL_TEXTURE26_ARB 0x84DA -#define GL_TEXTURE27_ARB 0x84DB -#define GL_TEXTURE28_ARB 0x84DC -#define GL_TEXTURE29_ARB 0x84DD -#define GL_TEXTURE30_ARB 0x84DE -#define GL_TEXTURE31_ARB 0x84DF -#define GL_ACTIVE_TEXTURE_ARB 0x84E0 -#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 -#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 - -typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum texture); -typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); - -#define glActiveTextureARB GLEW_GET_FUN(__glewActiveTextureARB) -#define glClientActiveTextureARB GLEW_GET_FUN(__glewClientActiveTextureARB) -#define glMultiTexCoord1dARB GLEW_GET_FUN(__glewMultiTexCoord1dARB) -#define glMultiTexCoord1dvARB GLEW_GET_FUN(__glewMultiTexCoord1dvARB) -#define glMultiTexCoord1fARB GLEW_GET_FUN(__glewMultiTexCoord1fARB) -#define glMultiTexCoord1fvARB GLEW_GET_FUN(__glewMultiTexCoord1fvARB) -#define glMultiTexCoord1iARB GLEW_GET_FUN(__glewMultiTexCoord1iARB) -#define glMultiTexCoord1ivARB GLEW_GET_FUN(__glewMultiTexCoord1ivARB) -#define glMultiTexCoord1sARB GLEW_GET_FUN(__glewMultiTexCoord1sARB) -#define glMultiTexCoord1svARB GLEW_GET_FUN(__glewMultiTexCoord1svARB) -#define glMultiTexCoord2dARB GLEW_GET_FUN(__glewMultiTexCoord2dARB) -#define glMultiTexCoord2dvARB GLEW_GET_FUN(__glewMultiTexCoord2dvARB) -#define glMultiTexCoord2fARB GLEW_GET_FUN(__glewMultiTexCoord2fARB) -#define glMultiTexCoord2fvARB GLEW_GET_FUN(__glewMultiTexCoord2fvARB) -#define glMultiTexCoord2iARB GLEW_GET_FUN(__glewMultiTexCoord2iARB) -#define glMultiTexCoord2ivARB GLEW_GET_FUN(__glewMultiTexCoord2ivARB) -#define glMultiTexCoord2sARB GLEW_GET_FUN(__glewMultiTexCoord2sARB) -#define glMultiTexCoord2svARB GLEW_GET_FUN(__glewMultiTexCoord2svARB) -#define glMultiTexCoord3dARB GLEW_GET_FUN(__glewMultiTexCoord3dARB) -#define glMultiTexCoord3dvARB GLEW_GET_FUN(__glewMultiTexCoord3dvARB) -#define glMultiTexCoord3fARB GLEW_GET_FUN(__glewMultiTexCoord3fARB) -#define glMultiTexCoord3fvARB GLEW_GET_FUN(__glewMultiTexCoord3fvARB) -#define glMultiTexCoord3iARB GLEW_GET_FUN(__glewMultiTexCoord3iARB) -#define glMultiTexCoord3ivARB GLEW_GET_FUN(__glewMultiTexCoord3ivARB) -#define glMultiTexCoord3sARB GLEW_GET_FUN(__glewMultiTexCoord3sARB) -#define glMultiTexCoord3svARB GLEW_GET_FUN(__glewMultiTexCoord3svARB) -#define glMultiTexCoord4dARB GLEW_GET_FUN(__glewMultiTexCoord4dARB) -#define glMultiTexCoord4dvARB GLEW_GET_FUN(__glewMultiTexCoord4dvARB) -#define glMultiTexCoord4fARB GLEW_GET_FUN(__glewMultiTexCoord4fARB) -#define glMultiTexCoord4fvARB GLEW_GET_FUN(__glewMultiTexCoord4fvARB) -#define glMultiTexCoord4iARB GLEW_GET_FUN(__glewMultiTexCoord4iARB) -#define glMultiTexCoord4ivARB GLEW_GET_FUN(__glewMultiTexCoord4ivARB) -#define glMultiTexCoord4sARB GLEW_GET_FUN(__glewMultiTexCoord4sARB) -#define glMultiTexCoord4svARB GLEW_GET_FUN(__glewMultiTexCoord4svARB) - -#define GLEW_ARB_multitexture GLEW_GET_VAR(__GLEW_ARB_multitexture) - -#endif /* GL_ARB_multitexture */ - -/* ------------------------- GL_ARB_occlusion_query ------------------------ */ - -#ifndef GL_ARB_occlusion_query -#define GL_ARB_occlusion_query 1 - -#define GL_QUERY_COUNTER_BITS_ARB 0x8864 -#define GL_CURRENT_QUERY_ARB 0x8865 -#define GL_QUERY_RESULT_ARB 0x8866 -#define GL_QUERY_RESULT_AVAILABLE_ARB 0x8867 -#define GL_SAMPLES_PASSED_ARB 0x8914 - -typedef void (GLAPIENTRY * PFNGLBEGINQUERYARBPROC) (GLenum target, GLuint id); -typedef void (GLAPIENTRY * PFNGLDELETEQUERIESARBPROC) (GLsizei n, const GLuint* ids); -typedef void (GLAPIENTRY * PFNGLENDQUERYARBPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLGENQUERIESARBPROC) (GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVARBPROC) (GLuint id, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVARBPROC) (GLuint id, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYIVARBPROC) (GLenum target, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISQUERYARBPROC) (GLuint id); - -#define glBeginQueryARB GLEW_GET_FUN(__glewBeginQueryARB) -#define glDeleteQueriesARB GLEW_GET_FUN(__glewDeleteQueriesARB) -#define glEndQueryARB GLEW_GET_FUN(__glewEndQueryARB) -#define glGenQueriesARB GLEW_GET_FUN(__glewGenQueriesARB) -#define glGetQueryObjectivARB GLEW_GET_FUN(__glewGetQueryObjectivARB) -#define glGetQueryObjectuivARB GLEW_GET_FUN(__glewGetQueryObjectuivARB) -#define glGetQueryivARB GLEW_GET_FUN(__glewGetQueryivARB) -#define glIsQueryARB GLEW_GET_FUN(__glewIsQueryARB) - -#define GLEW_ARB_occlusion_query GLEW_GET_VAR(__GLEW_ARB_occlusion_query) - -#endif /* GL_ARB_occlusion_query */ - -/* ------------------------ GL_ARB_occlusion_query2 ------------------------ */ - -#ifndef GL_ARB_occlusion_query2 -#define GL_ARB_occlusion_query2 1 - -#define GL_ANY_SAMPLES_PASSED 0x8C2F - -#define GLEW_ARB_occlusion_query2 GLEW_GET_VAR(__GLEW_ARB_occlusion_query2) - -#endif /* GL_ARB_occlusion_query2 */ - -/* --------------------- GL_ARB_parallel_shader_compile -------------------- */ - -#ifndef GL_ARB_parallel_shader_compile -#define GL_ARB_parallel_shader_compile 1 - -#define GL_MAX_SHADER_COMPILER_THREADS_ARB 0x91B0 -#define GL_COMPLETION_STATUS_ARB 0x91B1 - -typedef void (GLAPIENTRY * PFNGLMAXSHADERCOMPILERTHREADSARBPROC) (GLuint count); - -#define glMaxShaderCompilerThreadsARB GLEW_GET_FUN(__glewMaxShaderCompilerThreadsARB) - -#define GLEW_ARB_parallel_shader_compile GLEW_GET_VAR(__GLEW_ARB_parallel_shader_compile) - -#endif /* GL_ARB_parallel_shader_compile */ - -/* -------------------- GL_ARB_pipeline_statistics_query ------------------- */ - -#ifndef GL_ARB_pipeline_statistics_query -#define GL_ARB_pipeline_statistics_query 1 - -#define GL_VERTICES_SUBMITTED_ARB 0x82EE -#define GL_PRIMITIVES_SUBMITTED_ARB 0x82EF -#define GL_VERTEX_SHADER_INVOCATIONS_ARB 0x82F0 -#define GL_TESS_CONTROL_SHADER_PATCHES_ARB 0x82F1 -#define GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB 0x82F2 -#define GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB 0x82F3 -#define GL_FRAGMENT_SHADER_INVOCATIONS_ARB 0x82F4 -#define GL_COMPUTE_SHADER_INVOCATIONS_ARB 0x82F5 -#define GL_CLIPPING_INPUT_PRIMITIVES_ARB 0x82F6 -#define GL_CLIPPING_OUTPUT_PRIMITIVES_ARB 0x82F7 -#define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F - -#define GLEW_ARB_pipeline_statistics_query GLEW_GET_VAR(__GLEW_ARB_pipeline_statistics_query) - -#endif /* GL_ARB_pipeline_statistics_query */ - -/* ----------------------- GL_ARB_pixel_buffer_object ---------------------- */ - -#ifndef GL_ARB_pixel_buffer_object -#define GL_ARB_pixel_buffer_object 1 - -#define GL_PIXEL_PACK_BUFFER_ARB 0x88EB -#define GL_PIXEL_UNPACK_BUFFER_ARB 0x88EC -#define GL_PIXEL_PACK_BUFFER_BINDING_ARB 0x88ED -#define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB 0x88EF - -#define GLEW_ARB_pixel_buffer_object GLEW_GET_VAR(__GLEW_ARB_pixel_buffer_object) - -#endif /* GL_ARB_pixel_buffer_object */ - -/* ------------------------ GL_ARB_point_parameters ------------------------ */ - -#ifndef GL_ARB_point_parameters -#define GL_ARB_point_parameters 1 - -#define GL_POINT_SIZE_MIN_ARB 0x8126 -#define GL_POINT_SIZE_MAX_ARB 0x8127 -#define GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128 -#define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129 - -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFARBPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVARBPROC) (GLenum pname, const GLfloat* params); - -#define glPointParameterfARB GLEW_GET_FUN(__glewPointParameterfARB) -#define glPointParameterfvARB GLEW_GET_FUN(__glewPointParameterfvARB) - -#define GLEW_ARB_point_parameters GLEW_GET_VAR(__GLEW_ARB_point_parameters) - -#endif /* GL_ARB_point_parameters */ - -/* -------------------------- GL_ARB_point_sprite -------------------------- */ - -#ifndef GL_ARB_point_sprite -#define GL_ARB_point_sprite 1 - -#define GL_POINT_SPRITE_ARB 0x8861 -#define GL_COORD_REPLACE_ARB 0x8862 - -#define GLEW_ARB_point_sprite GLEW_GET_VAR(__GLEW_ARB_point_sprite) - -#endif /* GL_ARB_point_sprite */ - -/* ---------------------- GL_ARB_polygon_offset_clamp ---------------------- */ - -#ifndef GL_ARB_polygon_offset_clamp -#define GL_ARB_polygon_offset_clamp 1 - -#define GL_POLYGON_OFFSET_CLAMP 0x8E1B - -typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETCLAMPPROC) (GLfloat factor, GLfloat units, GLfloat clamp); - -#define glPolygonOffsetClamp GLEW_GET_FUN(__glewPolygonOffsetClamp) - -#define GLEW_ARB_polygon_offset_clamp GLEW_GET_VAR(__GLEW_ARB_polygon_offset_clamp) - -#endif /* GL_ARB_polygon_offset_clamp */ - -/* ----------------------- GL_ARB_post_depth_coverage ---------------------- */ - -#ifndef GL_ARB_post_depth_coverage -#define GL_ARB_post_depth_coverage 1 - -#define GLEW_ARB_post_depth_coverage GLEW_GET_VAR(__GLEW_ARB_post_depth_coverage) - -#endif /* GL_ARB_post_depth_coverage */ - -/* --------------------- GL_ARB_program_interface_query -------------------- */ - -#ifndef GL_ARB_program_interface_query -#define GL_ARB_program_interface_query 1 - -#define GL_UNIFORM 0x92E1 -#define GL_UNIFORM_BLOCK 0x92E2 -#define GL_PROGRAM_INPUT 0x92E3 -#define GL_PROGRAM_OUTPUT 0x92E4 -#define GL_BUFFER_VARIABLE 0x92E5 -#define GL_SHADER_STORAGE_BLOCK 0x92E6 -#define GL_IS_PER_PATCH 0x92E7 -#define GL_VERTEX_SUBROUTINE 0x92E8 -#define GL_TESS_CONTROL_SUBROUTINE 0x92E9 -#define GL_TESS_EVALUATION_SUBROUTINE 0x92EA -#define GL_GEOMETRY_SUBROUTINE 0x92EB -#define GL_FRAGMENT_SUBROUTINE 0x92EC -#define GL_COMPUTE_SUBROUTINE 0x92ED -#define GL_VERTEX_SUBROUTINE_UNIFORM 0x92EE -#define GL_TESS_CONTROL_SUBROUTINE_UNIFORM 0x92EF -#define GL_TESS_EVALUATION_SUBROUTINE_UNIFORM 0x92F0 -#define GL_GEOMETRY_SUBROUTINE_UNIFORM 0x92F1 -#define GL_FRAGMENT_SUBROUTINE_UNIFORM 0x92F2 -#define GL_COMPUTE_SUBROUTINE_UNIFORM 0x92F3 -#define GL_TRANSFORM_FEEDBACK_VARYING 0x92F4 -#define GL_ACTIVE_RESOURCES 0x92F5 -#define GL_MAX_NAME_LENGTH 0x92F6 -#define GL_MAX_NUM_ACTIVE_VARIABLES 0x92F7 -#define GL_MAX_NUM_COMPATIBLE_SUBROUTINES 0x92F8 -#define GL_NAME_LENGTH 0x92F9 -#define GL_TYPE 0x92FA -#define GL_ARRAY_SIZE 0x92FB -#define GL_OFFSET 0x92FC -#define GL_BLOCK_INDEX 0x92FD -#define GL_ARRAY_STRIDE 0x92FE -#define GL_MATRIX_STRIDE 0x92FF -#define GL_IS_ROW_MAJOR 0x9300 -#define GL_ATOMIC_COUNTER_BUFFER_INDEX 0x9301 -#define GL_BUFFER_BINDING 0x9302 -#define GL_BUFFER_DATA_SIZE 0x9303 -#define GL_NUM_ACTIVE_VARIABLES 0x9304 -#define GL_ACTIVE_VARIABLES 0x9305 -#define GL_REFERENCED_BY_VERTEX_SHADER 0x9306 -#define GL_REFERENCED_BY_TESS_CONTROL_SHADER 0x9307 -#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER 0x9308 -#define GL_REFERENCED_BY_GEOMETRY_SHADER 0x9309 -#define GL_REFERENCED_BY_FRAGMENT_SHADER 0x930A -#define GL_REFERENCED_BY_COMPUTE_SHADER 0x930B -#define GL_TOP_LEVEL_ARRAY_SIZE 0x930C -#define GL_TOP_LEVEL_ARRAY_STRIDE 0x930D -#define GL_LOCATION 0x930E -#define GL_LOCATION_INDEX 0x930F - -typedef void (GLAPIENTRY * PFNGLGETPROGRAMINTERFACEIVPROC) (GLuint program, GLenum programInterface, GLenum pname, GLint* params); -typedef GLuint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCEINDEXPROC) (GLuint program, GLenum programInterface, const GLchar* name); -typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONPROC) (GLuint program, GLenum programInterface, const GLchar* name); -typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC) (GLuint program, GLenum programInterface, const GLchar* name); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMRESOURCENAMEPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei* length, GLchar *name); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMRESOURCEIVPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum* props, GLsizei bufSize, GLsizei *length, GLint *params); - -#define glGetProgramInterfaceiv GLEW_GET_FUN(__glewGetProgramInterfaceiv) -#define glGetProgramResourceIndex GLEW_GET_FUN(__glewGetProgramResourceIndex) -#define glGetProgramResourceLocation GLEW_GET_FUN(__glewGetProgramResourceLocation) -#define glGetProgramResourceLocationIndex GLEW_GET_FUN(__glewGetProgramResourceLocationIndex) -#define glGetProgramResourceName GLEW_GET_FUN(__glewGetProgramResourceName) -#define glGetProgramResourceiv GLEW_GET_FUN(__glewGetProgramResourceiv) - -#define GLEW_ARB_program_interface_query GLEW_GET_VAR(__GLEW_ARB_program_interface_query) - -#endif /* GL_ARB_program_interface_query */ - -/* ------------------------ GL_ARB_provoking_vertex ------------------------ */ - -#ifndef GL_ARB_provoking_vertex -#define GL_ARB_provoking_vertex 1 - -#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C -#define GL_FIRST_VERTEX_CONVENTION 0x8E4D -#define GL_LAST_VERTEX_CONVENTION 0x8E4E -#define GL_PROVOKING_VERTEX 0x8E4F - -typedef void (GLAPIENTRY * PFNGLPROVOKINGVERTEXPROC) (GLenum mode); - -#define glProvokingVertex GLEW_GET_FUN(__glewProvokingVertex) - -#define GLEW_ARB_provoking_vertex GLEW_GET_VAR(__GLEW_ARB_provoking_vertex) - -#endif /* GL_ARB_provoking_vertex */ - -/* ----------------------- GL_ARB_query_buffer_object ---------------------- */ - -#ifndef GL_ARB_query_buffer_object -#define GL_ARB_query_buffer_object 1 - -#define GL_QUERY_BUFFER_BARRIER_BIT 0x00008000 -#define GL_QUERY_BUFFER 0x9192 -#define GL_QUERY_BUFFER_BINDING 0x9193 -#define GL_QUERY_RESULT_NO_WAIT 0x9194 - -#define GLEW_ARB_query_buffer_object GLEW_GET_VAR(__GLEW_ARB_query_buffer_object) - -#endif /* GL_ARB_query_buffer_object */ - -/* ------------------ GL_ARB_robust_buffer_access_behavior ----------------- */ - -#ifndef GL_ARB_robust_buffer_access_behavior -#define GL_ARB_robust_buffer_access_behavior 1 - -#define GLEW_ARB_robust_buffer_access_behavior GLEW_GET_VAR(__GLEW_ARB_robust_buffer_access_behavior) - -#endif /* GL_ARB_robust_buffer_access_behavior */ - -/* --------------------------- GL_ARB_robustness --------------------------- */ - -#ifndef GL_ARB_robustness -#define GL_ARB_robustness 1 - -#define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB 0x00000004 -#define GL_LOSE_CONTEXT_ON_RESET_ARB 0x8252 -#define GL_GUILTY_CONTEXT_RESET_ARB 0x8253 -#define GL_INNOCENT_CONTEXT_RESET_ARB 0x8254 -#define GL_UNKNOWN_CONTEXT_RESET_ARB 0x8255 -#define GL_RESET_NOTIFICATION_STRATEGY_ARB 0x8256 -#define GL_NO_RESET_NOTIFICATION_ARB 0x8261 - -typedef GLenum (GLAPIENTRY * PFNGLGETGRAPHICSRESETSTATUSARBPROC) (void); -typedef void (GLAPIENTRY * PFNGLGETNCOLORTABLEARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table); -typedef void (GLAPIENTRY * PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, GLsizei bufSize, void* img); -typedef void (GLAPIENTRY * PFNGLGETNCONVOLUTIONFILTERARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* image); -typedef void (GLAPIENTRY * PFNGLGETNHISTOGRAMARBPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values); -typedef void (GLAPIENTRY * PFNGLGETNMAPDVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLdouble* v); -typedef void (GLAPIENTRY * PFNGLGETNMAPFVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLfloat* v); -typedef void (GLAPIENTRY * PFNGLGETNMAPIVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLint* v); -typedef void (GLAPIENTRY * PFNGLGETNMINMAXARBPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values); -typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPFVARBPROC) (GLenum map, GLsizei bufSize, GLfloat* values); -typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPUIVARBPROC) (GLenum map, GLsizei bufSize, GLuint* values); -typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPUSVARBPROC) (GLenum map, GLsizei bufSize, GLushort* values); -typedef void (GLAPIENTRY * PFNGLGETNPOLYGONSTIPPLEARBPROC) (GLsizei bufSize, GLubyte* pattern); -typedef void (GLAPIENTRY * PFNGLGETNSEPARABLEFILTERARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, void* row, GLsizei columnBufSize, void*column, void*span); -typedef void (GLAPIENTRY * PFNGLGETNTEXIMAGEARBPROC) (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void* img); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMDVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMFVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMUIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint* params); -typedef void (GLAPIENTRY * PFNGLREADNPIXELSARBPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void* data); - -#define glGetGraphicsResetStatusARB GLEW_GET_FUN(__glewGetGraphicsResetStatusARB) -#define glGetnColorTableARB GLEW_GET_FUN(__glewGetnColorTableARB) -#define glGetnCompressedTexImageARB GLEW_GET_FUN(__glewGetnCompressedTexImageARB) -#define glGetnConvolutionFilterARB GLEW_GET_FUN(__glewGetnConvolutionFilterARB) -#define glGetnHistogramARB GLEW_GET_FUN(__glewGetnHistogramARB) -#define glGetnMapdvARB GLEW_GET_FUN(__glewGetnMapdvARB) -#define glGetnMapfvARB GLEW_GET_FUN(__glewGetnMapfvARB) -#define glGetnMapivARB GLEW_GET_FUN(__glewGetnMapivARB) -#define glGetnMinmaxARB GLEW_GET_FUN(__glewGetnMinmaxARB) -#define glGetnPixelMapfvARB GLEW_GET_FUN(__glewGetnPixelMapfvARB) -#define glGetnPixelMapuivARB GLEW_GET_FUN(__glewGetnPixelMapuivARB) -#define glGetnPixelMapusvARB GLEW_GET_FUN(__glewGetnPixelMapusvARB) -#define glGetnPolygonStippleARB GLEW_GET_FUN(__glewGetnPolygonStippleARB) -#define glGetnSeparableFilterARB GLEW_GET_FUN(__glewGetnSeparableFilterARB) -#define glGetnTexImageARB GLEW_GET_FUN(__glewGetnTexImageARB) -#define glGetnUniformdvARB GLEW_GET_FUN(__glewGetnUniformdvARB) -#define glGetnUniformfvARB GLEW_GET_FUN(__glewGetnUniformfvARB) -#define glGetnUniformivARB GLEW_GET_FUN(__glewGetnUniformivARB) -#define glGetnUniformuivARB GLEW_GET_FUN(__glewGetnUniformuivARB) -#define glReadnPixelsARB GLEW_GET_FUN(__glewReadnPixelsARB) - -#define GLEW_ARB_robustness GLEW_GET_VAR(__GLEW_ARB_robustness) - -#endif /* GL_ARB_robustness */ - -/* ---------------- GL_ARB_robustness_application_isolation ---------------- */ - -#ifndef GL_ARB_robustness_application_isolation -#define GL_ARB_robustness_application_isolation 1 - -#define GLEW_ARB_robustness_application_isolation GLEW_GET_VAR(__GLEW_ARB_robustness_application_isolation) - -#endif /* GL_ARB_robustness_application_isolation */ - -/* ---------------- GL_ARB_robustness_share_group_isolation ---------------- */ - -#ifndef GL_ARB_robustness_share_group_isolation -#define GL_ARB_robustness_share_group_isolation 1 - -#define GLEW_ARB_robustness_share_group_isolation GLEW_GET_VAR(__GLEW_ARB_robustness_share_group_isolation) - -#endif /* GL_ARB_robustness_share_group_isolation */ - -/* ------------------------ GL_ARB_sample_locations ------------------------ */ - -#ifndef GL_ARB_sample_locations -#define GL_ARB_sample_locations 1 - -#define GL_SAMPLE_LOCATION_ARB 0x8E50 -#define GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB 0x933D -#define GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB 0x933E -#define GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB 0x933F -#define GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB 0x9340 -#define GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB 0x9341 -#define GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB 0x9342 -#define GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB 0x9343 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERSAMPLELOCATIONSFVARBPROC) (GLenum target, GLuint start, GLsizei count, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVARBPROC) (GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v); - -#define glFramebufferSampleLocationsfvARB GLEW_GET_FUN(__glewFramebufferSampleLocationsfvARB) -#define glNamedFramebufferSampleLocationsfvARB GLEW_GET_FUN(__glewNamedFramebufferSampleLocationsfvARB) - -#define GLEW_ARB_sample_locations GLEW_GET_VAR(__GLEW_ARB_sample_locations) - -#endif /* GL_ARB_sample_locations */ - -/* ------------------------- GL_ARB_sample_shading ------------------------- */ - -#ifndef GL_ARB_sample_shading -#define GL_ARB_sample_shading 1 - -#define GL_SAMPLE_SHADING_ARB 0x8C36 -#define GL_MIN_SAMPLE_SHADING_VALUE_ARB 0x8C37 - -typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGARBPROC) (GLclampf value); - -#define glMinSampleShadingARB GLEW_GET_FUN(__glewMinSampleShadingARB) - -#define GLEW_ARB_sample_shading GLEW_GET_VAR(__GLEW_ARB_sample_shading) - -#endif /* GL_ARB_sample_shading */ - -/* ------------------------- GL_ARB_sampler_objects ------------------------ */ - -#ifndef GL_ARB_sampler_objects -#define GL_ARB_sampler_objects 1 - -#define GL_SAMPLER_BINDING 0x8919 - -typedef void (GLAPIENTRY * PFNGLBINDSAMPLERPROC) (GLuint unit, GLuint sampler); -typedef void (GLAPIENTRY * PFNGLDELETESAMPLERSPROC) (GLsizei count, const GLuint * samplers); -typedef void (GLAPIENTRY * PFNGLGENSAMPLERSPROC) (GLsizei count, GLuint* samplers); -typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISSAMPLERPROC) (GLuint sampler); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, const GLuint* params); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERFPROC) (GLuint sampler, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIPROC) (GLuint sampler, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, const GLint* params); - -#define glBindSampler GLEW_GET_FUN(__glewBindSampler) -#define glDeleteSamplers GLEW_GET_FUN(__glewDeleteSamplers) -#define glGenSamplers GLEW_GET_FUN(__glewGenSamplers) -#define glGetSamplerParameterIiv GLEW_GET_FUN(__glewGetSamplerParameterIiv) -#define glGetSamplerParameterIuiv GLEW_GET_FUN(__glewGetSamplerParameterIuiv) -#define glGetSamplerParameterfv GLEW_GET_FUN(__glewGetSamplerParameterfv) -#define glGetSamplerParameteriv GLEW_GET_FUN(__glewGetSamplerParameteriv) -#define glIsSampler GLEW_GET_FUN(__glewIsSampler) -#define glSamplerParameterIiv GLEW_GET_FUN(__glewSamplerParameterIiv) -#define glSamplerParameterIuiv GLEW_GET_FUN(__glewSamplerParameterIuiv) -#define glSamplerParameterf GLEW_GET_FUN(__glewSamplerParameterf) -#define glSamplerParameterfv GLEW_GET_FUN(__glewSamplerParameterfv) -#define glSamplerParameteri GLEW_GET_FUN(__glewSamplerParameteri) -#define glSamplerParameteriv GLEW_GET_FUN(__glewSamplerParameteriv) - -#define GLEW_ARB_sampler_objects GLEW_GET_VAR(__GLEW_ARB_sampler_objects) - -#endif /* GL_ARB_sampler_objects */ - -/* ------------------------ GL_ARB_seamless_cube_map ----------------------- */ - -#ifndef GL_ARB_seamless_cube_map -#define GL_ARB_seamless_cube_map 1 - -#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F - -#define GLEW_ARB_seamless_cube_map GLEW_GET_VAR(__GLEW_ARB_seamless_cube_map) - -#endif /* GL_ARB_seamless_cube_map */ - -/* ------------------ GL_ARB_seamless_cubemap_per_texture ------------------ */ - -#ifndef GL_ARB_seamless_cubemap_per_texture -#define GL_ARB_seamless_cubemap_per_texture 1 - -#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F - -#define GLEW_ARB_seamless_cubemap_per_texture GLEW_GET_VAR(__GLEW_ARB_seamless_cubemap_per_texture) - -#endif /* GL_ARB_seamless_cubemap_per_texture */ - -/* --------------------- GL_ARB_separate_shader_objects -------------------- */ - -#ifndef GL_ARB_separate_shader_objects -#define GL_ARB_separate_shader_objects 1 - -#define GL_VERTEX_SHADER_BIT 0x00000001 -#define GL_FRAGMENT_SHADER_BIT 0x00000002 -#define GL_GEOMETRY_SHADER_BIT 0x00000004 -#define GL_TESS_CONTROL_SHADER_BIT 0x00000008 -#define GL_TESS_EVALUATION_SHADER_BIT 0x00000010 -#define GL_PROGRAM_SEPARABLE 0x8258 -#define GL_ACTIVE_PROGRAM 0x8259 -#define GL_PROGRAM_PIPELINE_BINDING 0x825A -#define GL_ALL_SHADER_BITS 0xFFFFFFFF - -typedef void (GLAPIENTRY * PFNGLACTIVESHADERPROGRAMPROC) (GLuint pipeline, GLuint program); -typedef void (GLAPIENTRY * PFNGLBINDPROGRAMPIPELINEPROC) (GLuint pipeline); -typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROGRAMVPROC) (GLenum type, GLsizei count, const GLchar * const * strings); -typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMPIPELINESPROC) (GLsizei n, const GLuint* pipelines); -typedef void (GLAPIENTRY * PFNGLGENPROGRAMPIPELINESPROC) (GLsizei n, GLuint* pipelines); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMPIPELINEINFOLOGPROC) (GLuint pipeline, GLsizei bufSize, GLsizei* length, GLchar *infoLog); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMPIPELINEIVPROC) (GLuint pipeline, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMPIPELINEPROC) (GLuint pipeline); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1DPROC) (GLuint program, GLint location, GLdouble x); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FPROC) (GLuint program, GLint location, GLfloat x); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IPROC) (GLuint program, GLint location, GLint x); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIPROC) (GLuint program, GLint location, GLuint x); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IPROC) (GLuint program, GLint location, GLint x, GLint y); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIPROC) (GLuint program, GLint location, GLuint x, GLuint y); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIPROC) (GLuint program, GLint location, GLuint x, GLuint y, GLuint z); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIPROC) (GLuint program, GLint location, GLuint x, GLuint y, GLuint z, GLuint w); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUSEPROGRAMSTAGESPROC) (GLuint pipeline, GLbitfield stages, GLuint program); -typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMPIPELINEPROC) (GLuint pipeline); - -#define glActiveShaderProgram GLEW_GET_FUN(__glewActiveShaderProgram) -#define glBindProgramPipeline GLEW_GET_FUN(__glewBindProgramPipeline) -#define glCreateShaderProgramv GLEW_GET_FUN(__glewCreateShaderProgramv) -#define glDeleteProgramPipelines GLEW_GET_FUN(__glewDeleteProgramPipelines) -#define glGenProgramPipelines GLEW_GET_FUN(__glewGenProgramPipelines) -#define glGetProgramPipelineInfoLog GLEW_GET_FUN(__glewGetProgramPipelineInfoLog) -#define glGetProgramPipelineiv GLEW_GET_FUN(__glewGetProgramPipelineiv) -#define glIsProgramPipeline GLEW_GET_FUN(__glewIsProgramPipeline) -#define glProgramUniform1d GLEW_GET_FUN(__glewProgramUniform1d) -#define glProgramUniform1dv GLEW_GET_FUN(__glewProgramUniform1dv) -#define glProgramUniform1f GLEW_GET_FUN(__glewProgramUniform1f) -#define glProgramUniform1fv GLEW_GET_FUN(__glewProgramUniform1fv) -#define glProgramUniform1i GLEW_GET_FUN(__glewProgramUniform1i) -#define glProgramUniform1iv GLEW_GET_FUN(__glewProgramUniform1iv) -#define glProgramUniform1ui GLEW_GET_FUN(__glewProgramUniform1ui) -#define glProgramUniform1uiv GLEW_GET_FUN(__glewProgramUniform1uiv) -#define glProgramUniform2d GLEW_GET_FUN(__glewProgramUniform2d) -#define glProgramUniform2dv GLEW_GET_FUN(__glewProgramUniform2dv) -#define glProgramUniform2f GLEW_GET_FUN(__glewProgramUniform2f) -#define glProgramUniform2fv GLEW_GET_FUN(__glewProgramUniform2fv) -#define glProgramUniform2i GLEW_GET_FUN(__glewProgramUniform2i) -#define glProgramUniform2iv GLEW_GET_FUN(__glewProgramUniform2iv) -#define glProgramUniform2ui GLEW_GET_FUN(__glewProgramUniform2ui) -#define glProgramUniform2uiv GLEW_GET_FUN(__glewProgramUniform2uiv) -#define glProgramUniform3d GLEW_GET_FUN(__glewProgramUniform3d) -#define glProgramUniform3dv GLEW_GET_FUN(__glewProgramUniform3dv) -#define glProgramUniform3f GLEW_GET_FUN(__glewProgramUniform3f) -#define glProgramUniform3fv GLEW_GET_FUN(__glewProgramUniform3fv) -#define glProgramUniform3i GLEW_GET_FUN(__glewProgramUniform3i) -#define glProgramUniform3iv GLEW_GET_FUN(__glewProgramUniform3iv) -#define glProgramUniform3ui GLEW_GET_FUN(__glewProgramUniform3ui) -#define glProgramUniform3uiv GLEW_GET_FUN(__glewProgramUniform3uiv) -#define glProgramUniform4d GLEW_GET_FUN(__glewProgramUniform4d) -#define glProgramUniform4dv GLEW_GET_FUN(__glewProgramUniform4dv) -#define glProgramUniform4f GLEW_GET_FUN(__glewProgramUniform4f) -#define glProgramUniform4fv GLEW_GET_FUN(__glewProgramUniform4fv) -#define glProgramUniform4i GLEW_GET_FUN(__glewProgramUniform4i) -#define glProgramUniform4iv GLEW_GET_FUN(__glewProgramUniform4iv) -#define glProgramUniform4ui GLEW_GET_FUN(__glewProgramUniform4ui) -#define glProgramUniform4uiv GLEW_GET_FUN(__glewProgramUniform4uiv) -#define glProgramUniformMatrix2dv GLEW_GET_FUN(__glewProgramUniformMatrix2dv) -#define glProgramUniformMatrix2fv GLEW_GET_FUN(__glewProgramUniformMatrix2fv) -#define glProgramUniformMatrix2x3dv GLEW_GET_FUN(__glewProgramUniformMatrix2x3dv) -#define glProgramUniformMatrix2x3fv GLEW_GET_FUN(__glewProgramUniformMatrix2x3fv) -#define glProgramUniformMatrix2x4dv GLEW_GET_FUN(__glewProgramUniformMatrix2x4dv) -#define glProgramUniformMatrix2x4fv GLEW_GET_FUN(__glewProgramUniformMatrix2x4fv) -#define glProgramUniformMatrix3dv GLEW_GET_FUN(__glewProgramUniformMatrix3dv) -#define glProgramUniformMatrix3fv GLEW_GET_FUN(__glewProgramUniformMatrix3fv) -#define glProgramUniformMatrix3x2dv GLEW_GET_FUN(__glewProgramUniformMatrix3x2dv) -#define glProgramUniformMatrix3x2fv GLEW_GET_FUN(__glewProgramUniformMatrix3x2fv) -#define glProgramUniformMatrix3x4dv GLEW_GET_FUN(__glewProgramUniformMatrix3x4dv) -#define glProgramUniformMatrix3x4fv GLEW_GET_FUN(__glewProgramUniformMatrix3x4fv) -#define glProgramUniformMatrix4dv GLEW_GET_FUN(__glewProgramUniformMatrix4dv) -#define glProgramUniformMatrix4fv GLEW_GET_FUN(__glewProgramUniformMatrix4fv) -#define glProgramUniformMatrix4x2dv GLEW_GET_FUN(__glewProgramUniformMatrix4x2dv) -#define glProgramUniformMatrix4x2fv GLEW_GET_FUN(__glewProgramUniformMatrix4x2fv) -#define glProgramUniformMatrix4x3dv GLEW_GET_FUN(__glewProgramUniformMatrix4x3dv) -#define glProgramUniformMatrix4x3fv GLEW_GET_FUN(__glewProgramUniformMatrix4x3fv) -#define glUseProgramStages GLEW_GET_FUN(__glewUseProgramStages) -#define glValidateProgramPipeline GLEW_GET_FUN(__glewValidateProgramPipeline) - -#define GLEW_ARB_separate_shader_objects GLEW_GET_VAR(__GLEW_ARB_separate_shader_objects) - -#endif /* GL_ARB_separate_shader_objects */ - -/* -------------------- GL_ARB_shader_atomic_counter_ops ------------------- */ - -#ifndef GL_ARB_shader_atomic_counter_ops -#define GL_ARB_shader_atomic_counter_ops 1 - -#define GLEW_ARB_shader_atomic_counter_ops GLEW_GET_VAR(__GLEW_ARB_shader_atomic_counter_ops) - -#endif /* GL_ARB_shader_atomic_counter_ops */ - -/* --------------------- GL_ARB_shader_atomic_counters --------------------- */ - -#ifndef GL_ARB_shader_atomic_counters -#define GL_ARB_shader_atomic_counters 1 - -#define GL_ATOMIC_COUNTER_BUFFER 0x92C0 -#define GL_ATOMIC_COUNTER_BUFFER_BINDING 0x92C1 -#define GL_ATOMIC_COUNTER_BUFFER_START 0x92C2 -#define GL_ATOMIC_COUNTER_BUFFER_SIZE 0x92C3 -#define GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE 0x92C4 -#define GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS 0x92C5 -#define GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES 0x92C6 -#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER 0x92C7 -#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER 0x92C8 -#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER 0x92C9 -#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER 0x92CA -#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER 0x92CB -#define GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS 0x92CC -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS 0x92CD -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS 0x92CE -#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS 0x92CF -#define GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS 0x92D0 -#define GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS 0x92D1 -#define GL_MAX_VERTEX_ATOMIC_COUNTERS 0x92D2 -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS 0x92D3 -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS 0x92D4 -#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS 0x92D5 -#define GL_MAX_FRAGMENT_ATOMIC_COUNTERS 0x92D6 -#define GL_MAX_COMBINED_ATOMIC_COUNTERS 0x92D7 -#define GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE 0x92D8 -#define GL_ACTIVE_ATOMIC_COUNTER_BUFFERS 0x92D9 -#define GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX 0x92DA -#define GL_UNSIGNED_INT_ATOMIC_COUNTER 0x92DB -#define GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS 0x92DC - -typedef void (GLAPIENTRY * PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC) (GLuint program, GLuint bufferIndex, GLenum pname, GLint* params); - -#define glGetActiveAtomicCounterBufferiv GLEW_GET_FUN(__glewGetActiveAtomicCounterBufferiv) - -#define GLEW_ARB_shader_atomic_counters GLEW_GET_VAR(__GLEW_ARB_shader_atomic_counters) - -#endif /* GL_ARB_shader_atomic_counters */ - -/* -------------------------- GL_ARB_shader_ballot ------------------------- */ - -#ifndef GL_ARB_shader_ballot -#define GL_ARB_shader_ballot 1 - -#define GLEW_ARB_shader_ballot GLEW_GET_VAR(__GLEW_ARB_shader_ballot) - -#endif /* GL_ARB_shader_ballot */ - -/* ----------------------- GL_ARB_shader_bit_encoding ---------------------- */ - -#ifndef GL_ARB_shader_bit_encoding -#define GL_ARB_shader_bit_encoding 1 - -#define GLEW_ARB_shader_bit_encoding GLEW_GET_VAR(__GLEW_ARB_shader_bit_encoding) - -#endif /* GL_ARB_shader_bit_encoding */ - -/* -------------------------- GL_ARB_shader_clock -------------------------- */ - -#ifndef GL_ARB_shader_clock -#define GL_ARB_shader_clock 1 - -#define GLEW_ARB_shader_clock GLEW_GET_VAR(__GLEW_ARB_shader_clock) - -#endif /* GL_ARB_shader_clock */ - -/* --------------------- GL_ARB_shader_draw_parameters --------------------- */ - -#ifndef GL_ARB_shader_draw_parameters -#define GL_ARB_shader_draw_parameters 1 - -#define GLEW_ARB_shader_draw_parameters GLEW_GET_VAR(__GLEW_ARB_shader_draw_parameters) - -#endif /* GL_ARB_shader_draw_parameters */ - -/* ------------------------ GL_ARB_shader_group_vote ----------------------- */ - -#ifndef GL_ARB_shader_group_vote -#define GL_ARB_shader_group_vote 1 - -#define GLEW_ARB_shader_group_vote GLEW_GET_VAR(__GLEW_ARB_shader_group_vote) - -#endif /* GL_ARB_shader_group_vote */ - -/* --------------------- GL_ARB_shader_image_load_store -------------------- */ - -#ifndef GL_ARB_shader_image_load_store -#define GL_ARB_shader_image_load_store 1 - -#define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT 0x00000001 -#define GL_ELEMENT_ARRAY_BARRIER_BIT 0x00000002 -#define GL_UNIFORM_BARRIER_BIT 0x00000004 -#define GL_TEXTURE_FETCH_BARRIER_BIT 0x00000008 -#define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT 0x00000020 -#define GL_COMMAND_BARRIER_BIT 0x00000040 -#define GL_PIXEL_BUFFER_BARRIER_BIT 0x00000080 -#define GL_TEXTURE_UPDATE_BARRIER_BIT 0x00000100 -#define GL_BUFFER_UPDATE_BARRIER_BIT 0x00000200 -#define GL_FRAMEBUFFER_BARRIER_BIT 0x00000400 -#define GL_TRANSFORM_FEEDBACK_BARRIER_BIT 0x00000800 -#define GL_ATOMIC_COUNTER_BARRIER_BIT 0x00001000 -#define GL_MAX_IMAGE_UNITS 0x8F38 -#define GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS 0x8F39 -#define GL_IMAGE_BINDING_NAME 0x8F3A -#define GL_IMAGE_BINDING_LEVEL 0x8F3B -#define GL_IMAGE_BINDING_LAYERED 0x8F3C -#define GL_IMAGE_BINDING_LAYER 0x8F3D -#define GL_IMAGE_BINDING_ACCESS 0x8F3E -#define GL_IMAGE_1D 0x904C -#define GL_IMAGE_2D 0x904D -#define GL_IMAGE_3D 0x904E -#define GL_IMAGE_2D_RECT 0x904F -#define GL_IMAGE_CUBE 0x9050 -#define GL_IMAGE_BUFFER 0x9051 -#define GL_IMAGE_1D_ARRAY 0x9052 -#define GL_IMAGE_2D_ARRAY 0x9053 -#define GL_IMAGE_CUBE_MAP_ARRAY 0x9054 -#define GL_IMAGE_2D_MULTISAMPLE 0x9055 -#define GL_IMAGE_2D_MULTISAMPLE_ARRAY 0x9056 -#define GL_INT_IMAGE_1D 0x9057 -#define GL_INT_IMAGE_2D 0x9058 -#define GL_INT_IMAGE_3D 0x9059 -#define GL_INT_IMAGE_2D_RECT 0x905A -#define GL_INT_IMAGE_CUBE 0x905B -#define GL_INT_IMAGE_BUFFER 0x905C -#define GL_INT_IMAGE_1D_ARRAY 0x905D -#define GL_INT_IMAGE_2D_ARRAY 0x905E -#define GL_INT_IMAGE_CUBE_MAP_ARRAY 0x905F -#define GL_INT_IMAGE_2D_MULTISAMPLE 0x9060 -#define GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY 0x9061 -#define GL_UNSIGNED_INT_IMAGE_1D 0x9062 -#define GL_UNSIGNED_INT_IMAGE_2D 0x9063 -#define GL_UNSIGNED_INT_IMAGE_3D 0x9064 -#define GL_UNSIGNED_INT_IMAGE_2D_RECT 0x9065 -#define GL_UNSIGNED_INT_IMAGE_CUBE 0x9066 -#define GL_UNSIGNED_INT_IMAGE_BUFFER 0x9067 -#define GL_UNSIGNED_INT_IMAGE_1D_ARRAY 0x9068 -#define GL_UNSIGNED_INT_IMAGE_2D_ARRAY 0x9069 -#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY 0x906A -#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE 0x906B -#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY 0x906C -#define GL_MAX_IMAGE_SAMPLES 0x906D -#define GL_IMAGE_BINDING_FORMAT 0x906E -#define GL_IMAGE_FORMAT_COMPATIBILITY_TYPE 0x90C7 -#define GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE 0x90C8 -#define GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS 0x90C9 -#define GL_MAX_VERTEX_IMAGE_UNIFORMS 0x90CA -#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS 0x90CB -#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS 0x90CC -#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS 0x90CD -#define GL_MAX_FRAGMENT_IMAGE_UNIFORMS 0x90CE -#define GL_MAX_COMBINED_IMAGE_UNIFORMS 0x90CF -#define GL_ALL_BARRIER_BITS 0xFFFFFFFF - -typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTUREPROC) (GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format); -typedef void (GLAPIENTRY * PFNGLMEMORYBARRIERPROC) (GLbitfield barriers); - -#define glBindImageTexture GLEW_GET_FUN(__glewBindImageTexture) -#define glMemoryBarrier GLEW_GET_FUN(__glewMemoryBarrier) - -#define GLEW_ARB_shader_image_load_store GLEW_GET_VAR(__GLEW_ARB_shader_image_load_store) - -#endif /* GL_ARB_shader_image_load_store */ - -/* ------------------------ GL_ARB_shader_image_size ----------------------- */ - -#ifndef GL_ARB_shader_image_size -#define GL_ARB_shader_image_size 1 - -#define GLEW_ARB_shader_image_size GLEW_GET_VAR(__GLEW_ARB_shader_image_size) - -#endif /* GL_ARB_shader_image_size */ - -/* ------------------------- GL_ARB_shader_objects ------------------------- */ - -#ifndef GL_ARB_shader_objects -#define GL_ARB_shader_objects 1 - -#define GL_PROGRAM_OBJECT_ARB 0x8B40 -#define GL_SHADER_OBJECT_ARB 0x8B48 -#define GL_OBJECT_TYPE_ARB 0x8B4E -#define GL_OBJECT_SUBTYPE_ARB 0x8B4F -#define GL_FLOAT_VEC2_ARB 0x8B50 -#define GL_FLOAT_VEC3_ARB 0x8B51 -#define GL_FLOAT_VEC4_ARB 0x8B52 -#define GL_INT_VEC2_ARB 0x8B53 -#define GL_INT_VEC3_ARB 0x8B54 -#define GL_INT_VEC4_ARB 0x8B55 -#define GL_BOOL_ARB 0x8B56 -#define GL_BOOL_VEC2_ARB 0x8B57 -#define GL_BOOL_VEC3_ARB 0x8B58 -#define GL_BOOL_VEC4_ARB 0x8B59 -#define GL_FLOAT_MAT2_ARB 0x8B5A -#define GL_FLOAT_MAT3_ARB 0x8B5B -#define GL_FLOAT_MAT4_ARB 0x8B5C -#define GL_SAMPLER_1D_ARB 0x8B5D -#define GL_SAMPLER_2D_ARB 0x8B5E -#define GL_SAMPLER_3D_ARB 0x8B5F -#define GL_SAMPLER_CUBE_ARB 0x8B60 -#define GL_SAMPLER_1D_SHADOW_ARB 0x8B61 -#define GL_SAMPLER_2D_SHADOW_ARB 0x8B62 -#define GL_SAMPLER_2D_RECT_ARB 0x8B63 -#define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64 -#define GL_OBJECT_DELETE_STATUS_ARB 0x8B80 -#define GL_OBJECT_COMPILE_STATUS_ARB 0x8B81 -#define GL_OBJECT_LINK_STATUS_ARB 0x8B82 -#define GL_OBJECT_VALIDATE_STATUS_ARB 0x8B83 -#define GL_OBJECT_INFO_LOG_LENGTH_ARB 0x8B84 -#define GL_OBJECT_ATTACHED_OBJECTS_ARB 0x8B85 -#define GL_OBJECT_ACTIVE_UNIFORMS_ARB 0x8B86 -#define GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB 0x8B87 -#define GL_OBJECT_SHADER_SOURCE_LENGTH_ARB 0x8B88 - -typedef char GLcharARB; -typedef unsigned int GLhandleARB; - -typedef void (GLAPIENTRY * PFNGLATTACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB obj); -typedef void (GLAPIENTRY * PFNGLCOMPILESHADERARBPROC) (GLhandleARB shaderObj); -typedef GLhandleARB (GLAPIENTRY * PFNGLCREATEPROGRAMOBJECTARBPROC) (void); -typedef GLhandleARB (GLAPIENTRY * PFNGLCREATESHADEROBJECTARBPROC) (GLenum shaderType); -typedef void (GLAPIENTRY * PFNGLDELETEOBJECTARBPROC) (GLhandleARB obj); -typedef void (GLAPIENTRY * PFNGLDETACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB attachedObj); -typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name); -typedef void (GLAPIENTRY * PFNGLGETATTACHEDOBJECTSARBPROC) (GLhandleARB containerObj, GLsizei maxCount, GLsizei* count, GLhandleARB *obj); -typedef GLhandleARB (GLAPIENTRY * PFNGLGETHANDLEARBPROC) (GLenum pname); -typedef void (GLAPIENTRY * PFNGLGETINFOLOGARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *infoLog); -typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERFVARBPROC) (GLhandleARB obj, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERIVARBPROC) (GLhandleARB obj, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *source); -typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB* name); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVARBPROC) (GLhandleARB programObj, GLint location, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVARBPROC) (GLhandleARB programObj, GLint location, GLint* params); -typedef void (GLAPIENTRY * PFNGLLINKPROGRAMARBPROC) (GLhandleARB programObj); -typedef void (GLAPIENTRY * PFNGLSHADERSOURCEARBPROC) (GLhandleARB shaderObj, GLsizei count, const GLcharARB ** string, const GLint *length); -typedef void (GLAPIENTRY * PFNGLUNIFORM1FARBPROC) (GLint location, GLfloat v0); -typedef void (GLAPIENTRY * PFNGLUNIFORM1FVARBPROC) (GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM1IARBPROC) (GLint location, GLint v0); -typedef void (GLAPIENTRY * PFNGLUNIFORM1IVARBPROC) (GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2FARBPROC) (GLint location, GLfloat v0, GLfloat v1); -typedef void (GLAPIENTRY * PFNGLUNIFORM2FVARBPROC) (GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2IARBPROC) (GLint location, GLint v0, GLint v1); -typedef void (GLAPIENTRY * PFNGLUNIFORM2IVARBPROC) (GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); -typedef void (GLAPIENTRY * PFNGLUNIFORM3FVARBPROC) (GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2); -typedef void (GLAPIENTRY * PFNGLUNIFORM3IVARBPROC) (GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); -typedef void (GLAPIENTRY * PFNGLUNIFORM4FVARBPROC) (GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); -typedef void (GLAPIENTRY * PFNGLUNIFORM4IVARBPROC) (GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUSEPROGRAMOBJECTARBPROC) (GLhandleARB programObj); -typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMARBPROC) (GLhandleARB programObj); - -#define glAttachObjectARB GLEW_GET_FUN(__glewAttachObjectARB) -#define glCompileShaderARB GLEW_GET_FUN(__glewCompileShaderARB) -#define glCreateProgramObjectARB GLEW_GET_FUN(__glewCreateProgramObjectARB) -#define glCreateShaderObjectARB GLEW_GET_FUN(__glewCreateShaderObjectARB) -#define glDeleteObjectARB GLEW_GET_FUN(__glewDeleteObjectARB) -#define glDetachObjectARB GLEW_GET_FUN(__glewDetachObjectARB) -#define glGetActiveUniformARB GLEW_GET_FUN(__glewGetActiveUniformARB) -#define glGetAttachedObjectsARB GLEW_GET_FUN(__glewGetAttachedObjectsARB) -#define glGetHandleARB GLEW_GET_FUN(__glewGetHandleARB) -#define glGetInfoLogARB GLEW_GET_FUN(__glewGetInfoLogARB) -#define glGetObjectParameterfvARB GLEW_GET_FUN(__glewGetObjectParameterfvARB) -#define glGetObjectParameterivARB GLEW_GET_FUN(__glewGetObjectParameterivARB) -#define glGetShaderSourceARB GLEW_GET_FUN(__glewGetShaderSourceARB) -#define glGetUniformLocationARB GLEW_GET_FUN(__glewGetUniformLocationARB) -#define glGetUniformfvARB GLEW_GET_FUN(__glewGetUniformfvARB) -#define glGetUniformivARB GLEW_GET_FUN(__glewGetUniformivARB) -#define glLinkProgramARB GLEW_GET_FUN(__glewLinkProgramARB) -#define glShaderSourceARB GLEW_GET_FUN(__glewShaderSourceARB) -#define glUniform1fARB GLEW_GET_FUN(__glewUniform1fARB) -#define glUniform1fvARB GLEW_GET_FUN(__glewUniform1fvARB) -#define glUniform1iARB GLEW_GET_FUN(__glewUniform1iARB) -#define glUniform1ivARB GLEW_GET_FUN(__glewUniform1ivARB) -#define glUniform2fARB GLEW_GET_FUN(__glewUniform2fARB) -#define glUniform2fvARB GLEW_GET_FUN(__glewUniform2fvARB) -#define glUniform2iARB GLEW_GET_FUN(__glewUniform2iARB) -#define glUniform2ivARB GLEW_GET_FUN(__glewUniform2ivARB) -#define glUniform3fARB GLEW_GET_FUN(__glewUniform3fARB) -#define glUniform3fvARB GLEW_GET_FUN(__glewUniform3fvARB) -#define glUniform3iARB GLEW_GET_FUN(__glewUniform3iARB) -#define glUniform3ivARB GLEW_GET_FUN(__glewUniform3ivARB) -#define glUniform4fARB GLEW_GET_FUN(__glewUniform4fARB) -#define glUniform4fvARB GLEW_GET_FUN(__glewUniform4fvARB) -#define glUniform4iARB GLEW_GET_FUN(__glewUniform4iARB) -#define glUniform4ivARB GLEW_GET_FUN(__glewUniform4ivARB) -#define glUniformMatrix2fvARB GLEW_GET_FUN(__glewUniformMatrix2fvARB) -#define glUniformMatrix3fvARB GLEW_GET_FUN(__glewUniformMatrix3fvARB) -#define glUniformMatrix4fvARB GLEW_GET_FUN(__glewUniformMatrix4fvARB) -#define glUseProgramObjectARB GLEW_GET_FUN(__glewUseProgramObjectARB) -#define glValidateProgramARB GLEW_GET_FUN(__glewValidateProgramARB) - -#define GLEW_ARB_shader_objects GLEW_GET_VAR(__GLEW_ARB_shader_objects) - -#endif /* GL_ARB_shader_objects */ - -/* ------------------------ GL_ARB_shader_precision ------------------------ */ - -#ifndef GL_ARB_shader_precision -#define GL_ARB_shader_precision 1 - -#define GLEW_ARB_shader_precision GLEW_GET_VAR(__GLEW_ARB_shader_precision) - -#endif /* GL_ARB_shader_precision */ - -/* ---------------------- GL_ARB_shader_stencil_export --------------------- */ - -#ifndef GL_ARB_shader_stencil_export -#define GL_ARB_shader_stencil_export 1 - -#define GLEW_ARB_shader_stencil_export GLEW_GET_VAR(__GLEW_ARB_shader_stencil_export) - -#endif /* GL_ARB_shader_stencil_export */ - -/* ------------------ GL_ARB_shader_storage_buffer_object ------------------ */ - -#ifndef GL_ARB_shader_storage_buffer_object -#define GL_ARB_shader_storage_buffer_object 1 - -#define GL_SHADER_STORAGE_BARRIER_BIT 0x2000 -#define GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES 0x8F39 -#define GL_SHADER_STORAGE_BUFFER 0x90D2 -#define GL_SHADER_STORAGE_BUFFER_BINDING 0x90D3 -#define GL_SHADER_STORAGE_BUFFER_START 0x90D4 -#define GL_SHADER_STORAGE_BUFFER_SIZE 0x90D5 -#define GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS 0x90D6 -#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS 0x90D7 -#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS 0x90D8 -#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS 0x90D9 -#define GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS 0x90DA -#define GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS 0x90DB -#define GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS 0x90DC -#define GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS 0x90DD -#define GL_MAX_SHADER_STORAGE_BLOCK_SIZE 0x90DE -#define GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT 0x90DF - -typedef void (GLAPIENTRY * PFNGLSHADERSTORAGEBLOCKBINDINGPROC) (GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding); - -#define glShaderStorageBlockBinding GLEW_GET_FUN(__glewShaderStorageBlockBinding) - -#define GLEW_ARB_shader_storage_buffer_object GLEW_GET_VAR(__GLEW_ARB_shader_storage_buffer_object) - -#endif /* GL_ARB_shader_storage_buffer_object */ - -/* ------------------------ GL_ARB_shader_subroutine ----------------------- */ - -#ifndef GL_ARB_shader_subroutine -#define GL_ARB_shader_subroutine 1 - -#define GL_ACTIVE_SUBROUTINES 0x8DE5 -#define GL_ACTIVE_SUBROUTINE_UNIFORMS 0x8DE6 -#define GL_MAX_SUBROUTINES 0x8DE7 -#define GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS 0x8DE8 -#define GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS 0x8E47 -#define GL_ACTIVE_SUBROUTINE_MAX_LENGTH 0x8E48 -#define GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH 0x8E49 -#define GL_NUM_COMPATIBLE_SUBROUTINES 0x8E4A -#define GL_COMPATIBLE_SUBROUTINES 0x8E4B - -typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINENAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, GLchar *name); -typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, GLchar *name); -typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC) (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint* values); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTAGEIVPROC) (GLuint program, GLenum shadertype, GLenum pname, GLint* values); -typedef GLuint (GLAPIENTRY * PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, GLenum shadertype, const GLchar* name); -typedef GLint (GLAPIENTRY * PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint program, GLenum shadertype, const GLchar* name); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMSUBROUTINEUIVPROC) (GLenum shadertype, GLint location, GLuint* params); -typedef void (GLAPIENTRY * PFNGLUNIFORMSUBROUTINESUIVPROC) (GLenum shadertype, GLsizei count, const GLuint* indices); - -#define glGetActiveSubroutineName GLEW_GET_FUN(__glewGetActiveSubroutineName) -#define glGetActiveSubroutineUniformName GLEW_GET_FUN(__glewGetActiveSubroutineUniformName) -#define glGetActiveSubroutineUniformiv GLEW_GET_FUN(__glewGetActiveSubroutineUniformiv) -#define glGetProgramStageiv GLEW_GET_FUN(__glewGetProgramStageiv) -#define glGetSubroutineIndex GLEW_GET_FUN(__glewGetSubroutineIndex) -#define glGetSubroutineUniformLocation GLEW_GET_FUN(__glewGetSubroutineUniformLocation) -#define glGetUniformSubroutineuiv GLEW_GET_FUN(__glewGetUniformSubroutineuiv) -#define glUniformSubroutinesuiv GLEW_GET_FUN(__glewUniformSubroutinesuiv) - -#define GLEW_ARB_shader_subroutine GLEW_GET_VAR(__GLEW_ARB_shader_subroutine) - -#endif /* GL_ARB_shader_subroutine */ - -/* ------------------ GL_ARB_shader_texture_image_samples ------------------ */ - -#ifndef GL_ARB_shader_texture_image_samples -#define GL_ARB_shader_texture_image_samples 1 - -#define GLEW_ARB_shader_texture_image_samples GLEW_GET_VAR(__GLEW_ARB_shader_texture_image_samples) - -#endif /* GL_ARB_shader_texture_image_samples */ - -/* ----------------------- GL_ARB_shader_texture_lod ----------------------- */ - -#ifndef GL_ARB_shader_texture_lod -#define GL_ARB_shader_texture_lod 1 - -#define GLEW_ARB_shader_texture_lod GLEW_GET_VAR(__GLEW_ARB_shader_texture_lod) - -#endif /* GL_ARB_shader_texture_lod */ - -/* ------------------- GL_ARB_shader_viewport_layer_array ------------------ */ - -#ifndef GL_ARB_shader_viewport_layer_array -#define GL_ARB_shader_viewport_layer_array 1 - -#define GLEW_ARB_shader_viewport_layer_array GLEW_GET_VAR(__GLEW_ARB_shader_viewport_layer_array) - -#endif /* GL_ARB_shader_viewport_layer_array */ - -/* ---------------------- GL_ARB_shading_language_100 ---------------------- */ - -#ifndef GL_ARB_shading_language_100 -#define GL_ARB_shading_language_100 1 - -#define GL_SHADING_LANGUAGE_VERSION_ARB 0x8B8C - -#define GLEW_ARB_shading_language_100 GLEW_GET_VAR(__GLEW_ARB_shading_language_100) - -#endif /* GL_ARB_shading_language_100 */ - -/* -------------------- GL_ARB_shading_language_420pack -------------------- */ - -#ifndef GL_ARB_shading_language_420pack -#define GL_ARB_shading_language_420pack 1 - -#define GLEW_ARB_shading_language_420pack GLEW_GET_VAR(__GLEW_ARB_shading_language_420pack) - -#endif /* GL_ARB_shading_language_420pack */ - -/* -------------------- GL_ARB_shading_language_include -------------------- */ - -#ifndef GL_ARB_shading_language_include -#define GL_ARB_shading_language_include 1 - -#define GL_SHADER_INCLUDE_ARB 0x8DAE -#define GL_NAMED_STRING_LENGTH_ARB 0x8DE9 -#define GL_NAMED_STRING_TYPE_ARB 0x8DEA - -typedef void (GLAPIENTRY * PFNGLCOMPILESHADERINCLUDEARBPROC) (GLuint shader, GLsizei count, const GLchar* const *path, const GLint *length); -typedef void (GLAPIENTRY * PFNGLDELETENAMEDSTRINGARBPROC) (GLint namelen, const GLchar* name); -typedef void (GLAPIENTRY * PFNGLGETNAMEDSTRINGARBPROC) (GLint namelen, const GLchar* name, GLsizei bufSize, GLint *stringlen, GLchar *string); -typedef void (GLAPIENTRY * PFNGLGETNAMEDSTRINGIVARBPROC) (GLint namelen, const GLchar* name, GLenum pname, GLint *params); -typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, const GLchar* name); -typedef void (GLAPIENTRY * PFNGLNAMEDSTRINGARBPROC) (GLenum type, GLint namelen, const GLchar* name, GLint stringlen, const GLchar *string); - -#define glCompileShaderIncludeARB GLEW_GET_FUN(__glewCompileShaderIncludeARB) -#define glDeleteNamedStringARB GLEW_GET_FUN(__glewDeleteNamedStringARB) -#define glGetNamedStringARB GLEW_GET_FUN(__glewGetNamedStringARB) -#define glGetNamedStringivARB GLEW_GET_FUN(__glewGetNamedStringivARB) -#define glIsNamedStringARB GLEW_GET_FUN(__glewIsNamedStringARB) -#define glNamedStringARB GLEW_GET_FUN(__glewNamedStringARB) - -#define GLEW_ARB_shading_language_include GLEW_GET_VAR(__GLEW_ARB_shading_language_include) - -#endif /* GL_ARB_shading_language_include */ - -/* -------------------- GL_ARB_shading_language_packing -------------------- */ - -#ifndef GL_ARB_shading_language_packing -#define GL_ARB_shading_language_packing 1 - -#define GLEW_ARB_shading_language_packing GLEW_GET_VAR(__GLEW_ARB_shading_language_packing) - -#endif /* GL_ARB_shading_language_packing */ - -/* ----------------------------- GL_ARB_shadow ----------------------------- */ - -#ifndef GL_ARB_shadow -#define GL_ARB_shadow 1 - -#define GL_TEXTURE_COMPARE_MODE_ARB 0x884C -#define GL_TEXTURE_COMPARE_FUNC_ARB 0x884D -#define GL_COMPARE_R_TO_TEXTURE_ARB 0x884E - -#define GLEW_ARB_shadow GLEW_GET_VAR(__GLEW_ARB_shadow) - -#endif /* GL_ARB_shadow */ - -/* ------------------------- GL_ARB_shadow_ambient ------------------------- */ - -#ifndef GL_ARB_shadow_ambient -#define GL_ARB_shadow_ambient 1 - -#define GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF - -#define GLEW_ARB_shadow_ambient GLEW_GET_VAR(__GLEW_ARB_shadow_ambient) - -#endif /* GL_ARB_shadow_ambient */ - -/* -------------------------- GL_ARB_sparse_buffer ------------------------- */ - -#ifndef GL_ARB_sparse_buffer -#define GL_ARB_sparse_buffer 1 - -#define GL_SPARSE_STORAGE_BIT_ARB 0x0400 -#define GL_SPARSE_BUFFER_PAGE_SIZE_ARB 0x82F8 - -typedef void (GLAPIENTRY * PFNGLBUFFERPAGECOMMITMENTARBPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLboolean commit); - -#define glBufferPageCommitmentARB GLEW_GET_FUN(__glewBufferPageCommitmentARB) - -#define GLEW_ARB_sparse_buffer GLEW_GET_VAR(__GLEW_ARB_sparse_buffer) - -#endif /* GL_ARB_sparse_buffer */ - -/* ------------------------- GL_ARB_sparse_texture ------------------------- */ - -#ifndef GL_ARB_sparse_texture -#define GL_ARB_sparse_texture 1 - -#define GL_VIRTUAL_PAGE_SIZE_X_ARB 0x9195 -#define GL_VIRTUAL_PAGE_SIZE_Y_ARB 0x9196 -#define GL_VIRTUAL_PAGE_SIZE_Z_ARB 0x9197 -#define GL_MAX_SPARSE_TEXTURE_SIZE_ARB 0x9198 -#define GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB 0x9199 -#define GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB 0x919A -#define GL_TEXTURE_SPARSE_ARB 0x91A6 -#define GL_VIRTUAL_PAGE_SIZE_INDEX_ARB 0x91A7 -#define GL_NUM_VIRTUAL_PAGE_SIZES_ARB 0x91A8 -#define GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB 0x91A9 -#define GL_NUM_SPARSE_LEVELS_ARB 0x91AA - -typedef void (GLAPIENTRY * PFNGLTEXPAGECOMMITMENTARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit); - -#define glTexPageCommitmentARB GLEW_GET_FUN(__glewTexPageCommitmentARB) - -#define GLEW_ARB_sparse_texture GLEW_GET_VAR(__GLEW_ARB_sparse_texture) - -#endif /* GL_ARB_sparse_texture */ - -/* ------------------------- GL_ARB_sparse_texture2 ------------------------ */ - -#ifndef GL_ARB_sparse_texture2 -#define GL_ARB_sparse_texture2 1 - -#define GLEW_ARB_sparse_texture2 GLEW_GET_VAR(__GLEW_ARB_sparse_texture2) - -#endif /* GL_ARB_sparse_texture2 */ - -/* ---------------------- GL_ARB_sparse_texture_clamp ---------------------- */ - -#ifndef GL_ARB_sparse_texture_clamp -#define GL_ARB_sparse_texture_clamp 1 - -#define GLEW_ARB_sparse_texture_clamp GLEW_GET_VAR(__GLEW_ARB_sparse_texture_clamp) - -#endif /* GL_ARB_sparse_texture_clamp */ - -/* ------------------------ GL_ARB_spirv_extensions ------------------------ */ - -#ifndef GL_ARB_spirv_extensions -#define GL_ARB_spirv_extensions 1 - -#define GL_SPIR_V_EXTENSIONS 0x9553 -#define GL_NUM_SPIR_V_EXTENSIONS 0x9554 - -#define GLEW_ARB_spirv_extensions GLEW_GET_VAR(__GLEW_ARB_spirv_extensions) - -#endif /* GL_ARB_spirv_extensions */ - -/* ------------------------ GL_ARB_stencil_texturing ----------------------- */ - -#ifndef GL_ARB_stencil_texturing -#define GL_ARB_stencil_texturing 1 - -#define GL_DEPTH_STENCIL_TEXTURE_MODE 0x90EA - -#define GLEW_ARB_stencil_texturing GLEW_GET_VAR(__GLEW_ARB_stencil_texturing) - -#endif /* GL_ARB_stencil_texturing */ - -/* ------------------------------ GL_ARB_sync ------------------------------ */ - -#ifndef GL_ARB_sync -#define GL_ARB_sync 1 - -#define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001 -#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111 -#define GL_OBJECT_TYPE 0x9112 -#define GL_SYNC_CONDITION 0x9113 -#define GL_SYNC_STATUS 0x9114 -#define GL_SYNC_FLAGS 0x9115 -#define GL_SYNC_FENCE 0x9116 -#define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117 -#define GL_UNSIGNALED 0x9118 -#define GL_SIGNALED 0x9119 -#define GL_ALREADY_SIGNALED 0x911A -#define GL_TIMEOUT_EXPIRED 0x911B -#define GL_CONDITION_SATISFIED 0x911C -#define GL_WAIT_FAILED 0x911D -#define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFFull - -typedef GLenum (GLAPIENTRY * PFNGLCLIENTWAITSYNCPROC) (GLsync GLsync,GLbitfield flags,GLuint64 timeout); -typedef void (GLAPIENTRY * PFNGLDELETESYNCPROC) (GLsync GLsync); -typedef GLsync (GLAPIENTRY * PFNGLFENCESYNCPROC) (GLenum condition,GLbitfield flags); -typedef void (GLAPIENTRY * PFNGLGETINTEGER64VPROC) (GLenum pname, GLint64* params); -typedef void (GLAPIENTRY * PFNGLGETSYNCIVPROC) (GLsync GLsync,GLenum pname,GLsizei bufSize,GLsizei* length, GLint *values); -typedef GLboolean (GLAPIENTRY * PFNGLISSYNCPROC) (GLsync GLsync); -typedef void (GLAPIENTRY * PFNGLWAITSYNCPROC) (GLsync GLsync,GLbitfield flags,GLuint64 timeout); - -#define glClientWaitSync GLEW_GET_FUN(__glewClientWaitSync) -#define glDeleteSync GLEW_GET_FUN(__glewDeleteSync) -#define glFenceSync GLEW_GET_FUN(__glewFenceSync) -#define glGetInteger64v GLEW_GET_FUN(__glewGetInteger64v) -#define glGetSynciv GLEW_GET_FUN(__glewGetSynciv) -#define glIsSync GLEW_GET_FUN(__glewIsSync) -#define glWaitSync GLEW_GET_FUN(__glewWaitSync) - -#define GLEW_ARB_sync GLEW_GET_VAR(__GLEW_ARB_sync) - -#endif /* GL_ARB_sync */ - -/* ----------------------- GL_ARB_tessellation_shader ---------------------- */ - -#ifndef GL_ARB_tessellation_shader -#define GL_ARB_tessellation_shader 1 - -#define GL_PATCHES 0xE -#define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER 0x84F0 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER 0x84F1 -#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS 0x886C -#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS 0x886D -#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E1E -#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E1F -#define GL_PATCH_VERTICES 0x8E72 -#define GL_PATCH_DEFAULT_INNER_LEVEL 0x8E73 -#define GL_PATCH_DEFAULT_OUTER_LEVEL 0x8E74 -#define GL_TESS_CONTROL_OUTPUT_VERTICES 0x8E75 -#define GL_TESS_GEN_MODE 0x8E76 -#define GL_TESS_GEN_SPACING 0x8E77 -#define GL_TESS_GEN_VERTEX_ORDER 0x8E78 -#define GL_TESS_GEN_POINT_MODE 0x8E79 -#define GL_ISOLINES 0x8E7A -#define GL_FRACTIONAL_ODD 0x8E7B -#define GL_FRACTIONAL_EVEN 0x8E7C -#define GL_MAX_PATCH_VERTICES 0x8E7D -#define GL_MAX_TESS_GEN_LEVEL 0x8E7E -#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E7F -#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E80 -#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS 0x8E81 -#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS 0x8E82 -#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS 0x8E83 -#define GL_MAX_TESS_PATCH_COMPONENTS 0x8E84 -#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS 0x8E85 -#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS 0x8E86 -#define GL_TESS_EVALUATION_SHADER 0x8E87 -#define GL_TESS_CONTROL_SHADER 0x8E88 -#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS 0x8E89 -#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS 0x8E8A - -typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERFVPROC) (GLenum pname, const GLfloat* values); -typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERIPROC) (GLenum pname, GLint value); - -#define glPatchParameterfv GLEW_GET_FUN(__glewPatchParameterfv) -#define glPatchParameteri GLEW_GET_FUN(__glewPatchParameteri) - -#define GLEW_ARB_tessellation_shader GLEW_GET_VAR(__GLEW_ARB_tessellation_shader) - -#endif /* GL_ARB_tessellation_shader */ - -/* ------------------------- GL_ARB_texture_barrier ------------------------ */ - -#ifndef GL_ARB_texture_barrier -#define GL_ARB_texture_barrier 1 - -typedef void (GLAPIENTRY * PFNGLTEXTUREBARRIERPROC) (void); - -#define glTextureBarrier GLEW_GET_FUN(__glewTextureBarrier) - -#define GLEW_ARB_texture_barrier GLEW_GET_VAR(__GLEW_ARB_texture_barrier) - -#endif /* GL_ARB_texture_barrier */ - -/* ---------------------- GL_ARB_texture_border_clamp ---------------------- */ - -#ifndef GL_ARB_texture_border_clamp -#define GL_ARB_texture_border_clamp 1 - -#define GL_CLAMP_TO_BORDER_ARB 0x812D - -#define GLEW_ARB_texture_border_clamp GLEW_GET_VAR(__GLEW_ARB_texture_border_clamp) - -#endif /* GL_ARB_texture_border_clamp */ - -/* ---------------------- GL_ARB_texture_buffer_object --------------------- */ - -#ifndef GL_ARB_texture_buffer_object -#define GL_ARB_texture_buffer_object 1 - -#define GL_TEXTURE_BUFFER_ARB 0x8C2A -#define GL_MAX_TEXTURE_BUFFER_SIZE_ARB 0x8C2B -#define GL_TEXTURE_BINDING_BUFFER_ARB 0x8C2C -#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB 0x8C2D -#define GL_TEXTURE_BUFFER_FORMAT_ARB 0x8C2E - -typedef void (GLAPIENTRY * PFNGLTEXBUFFERARBPROC) (GLenum target, GLenum internalformat, GLuint buffer); - -#define glTexBufferARB GLEW_GET_FUN(__glewTexBufferARB) - -#define GLEW_ARB_texture_buffer_object GLEW_GET_VAR(__GLEW_ARB_texture_buffer_object) - -#endif /* GL_ARB_texture_buffer_object */ - -/* ------------------- GL_ARB_texture_buffer_object_rgb32 ------------------ */ - -#ifndef GL_ARB_texture_buffer_object_rgb32 -#define GL_ARB_texture_buffer_object_rgb32 1 - -#define GLEW_ARB_texture_buffer_object_rgb32 GLEW_GET_VAR(__GLEW_ARB_texture_buffer_object_rgb32) - -#endif /* GL_ARB_texture_buffer_object_rgb32 */ - -/* ---------------------- GL_ARB_texture_buffer_range ---------------------- */ - -#ifndef GL_ARB_texture_buffer_range -#define GL_ARB_texture_buffer_range 1 - -#define GL_TEXTURE_BUFFER_OFFSET 0x919D -#define GL_TEXTURE_BUFFER_SIZE 0x919E -#define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT 0x919F - -typedef void (GLAPIENTRY * PFNGLTEXBUFFERRANGEPROC) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); -typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFERRANGEEXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); - -#define glTexBufferRange GLEW_GET_FUN(__glewTexBufferRange) -#define glTextureBufferRangeEXT GLEW_GET_FUN(__glewTextureBufferRangeEXT) - -#define GLEW_ARB_texture_buffer_range GLEW_GET_VAR(__GLEW_ARB_texture_buffer_range) - -#endif /* GL_ARB_texture_buffer_range */ - -/* ----------------------- GL_ARB_texture_compression ---------------------- */ - -#ifndef GL_ARB_texture_compression -#define GL_ARB_texture_compression 1 - -#define GL_COMPRESSED_ALPHA_ARB 0x84E9 -#define GL_COMPRESSED_LUMINANCE_ARB 0x84EA -#define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB -#define GL_COMPRESSED_INTENSITY_ARB 0x84EC -#define GL_COMPRESSED_RGB_ARB 0x84ED -#define GL_COMPRESSED_RGBA_ARB 0x84EE -#define GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF -#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0 -#define GL_TEXTURE_COMPRESSED_ARB 0x86A1 -#define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2 -#define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3 - -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, void *img); - -#define glCompressedTexImage1DARB GLEW_GET_FUN(__glewCompressedTexImage1DARB) -#define glCompressedTexImage2DARB GLEW_GET_FUN(__glewCompressedTexImage2DARB) -#define glCompressedTexImage3DARB GLEW_GET_FUN(__glewCompressedTexImage3DARB) -#define glCompressedTexSubImage1DARB GLEW_GET_FUN(__glewCompressedTexSubImage1DARB) -#define glCompressedTexSubImage2DARB GLEW_GET_FUN(__glewCompressedTexSubImage2DARB) -#define glCompressedTexSubImage3DARB GLEW_GET_FUN(__glewCompressedTexSubImage3DARB) -#define glGetCompressedTexImageARB GLEW_GET_FUN(__glewGetCompressedTexImageARB) - -#define GLEW_ARB_texture_compression GLEW_GET_VAR(__GLEW_ARB_texture_compression) - -#endif /* GL_ARB_texture_compression */ - -/* -------------------- GL_ARB_texture_compression_bptc -------------------- */ - -#ifndef GL_ARB_texture_compression_bptc -#define GL_ARB_texture_compression_bptc 1 - -#define GL_COMPRESSED_RGBA_BPTC_UNORM_ARB 0x8E8C -#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB 0x8E8D -#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB 0x8E8E -#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB 0x8E8F - -#define GLEW_ARB_texture_compression_bptc GLEW_GET_VAR(__GLEW_ARB_texture_compression_bptc) - -#endif /* GL_ARB_texture_compression_bptc */ - -/* -------------------- GL_ARB_texture_compression_rgtc -------------------- */ - -#ifndef GL_ARB_texture_compression_rgtc -#define GL_ARB_texture_compression_rgtc 1 - -#define GL_COMPRESSED_RED_RGTC1 0x8DBB -#define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC -#define GL_COMPRESSED_RG_RGTC2 0x8DBD -#define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE - -#define GLEW_ARB_texture_compression_rgtc GLEW_GET_VAR(__GLEW_ARB_texture_compression_rgtc) - -#endif /* GL_ARB_texture_compression_rgtc */ - -/* ------------------------ GL_ARB_texture_cube_map ------------------------ */ - -#ifndef GL_ARB_texture_cube_map -#define GL_ARB_texture_cube_map 1 - -#define GL_NORMAL_MAP_ARB 0x8511 -#define GL_REFLECTION_MAP_ARB 0x8512 -#define GL_TEXTURE_CUBE_MAP_ARB 0x8513 -#define GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A -#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B -#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851C - -#define GLEW_ARB_texture_cube_map GLEW_GET_VAR(__GLEW_ARB_texture_cube_map) - -#endif /* GL_ARB_texture_cube_map */ - -/* --------------------- GL_ARB_texture_cube_map_array --------------------- */ - -#ifndef GL_ARB_texture_cube_map_array -#define GL_ARB_texture_cube_map_array 1 - -#define GL_TEXTURE_CUBE_MAP_ARRAY_ARB 0x9009 -#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB 0x900A -#define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB 0x900B -#define GL_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900C -#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB 0x900D -#define GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900E -#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900F - -#define GLEW_ARB_texture_cube_map_array GLEW_GET_VAR(__GLEW_ARB_texture_cube_map_array) - -#endif /* GL_ARB_texture_cube_map_array */ - -/* ------------------------- GL_ARB_texture_env_add ------------------------ */ - -#ifndef GL_ARB_texture_env_add -#define GL_ARB_texture_env_add 1 - -#define GLEW_ARB_texture_env_add GLEW_GET_VAR(__GLEW_ARB_texture_env_add) - -#endif /* GL_ARB_texture_env_add */ - -/* ----------------------- GL_ARB_texture_env_combine ---------------------- */ - -#ifndef GL_ARB_texture_env_combine -#define GL_ARB_texture_env_combine 1 - -#define GL_SUBTRACT_ARB 0x84E7 -#define GL_COMBINE_ARB 0x8570 -#define GL_COMBINE_RGB_ARB 0x8571 -#define GL_COMBINE_ALPHA_ARB 0x8572 -#define GL_RGB_SCALE_ARB 0x8573 -#define GL_ADD_SIGNED_ARB 0x8574 -#define GL_INTERPOLATE_ARB 0x8575 -#define GL_CONSTANT_ARB 0x8576 -#define GL_PRIMARY_COLOR_ARB 0x8577 -#define GL_PREVIOUS_ARB 0x8578 -#define GL_SOURCE0_RGB_ARB 0x8580 -#define GL_SOURCE1_RGB_ARB 0x8581 -#define GL_SOURCE2_RGB_ARB 0x8582 -#define GL_SOURCE0_ALPHA_ARB 0x8588 -#define GL_SOURCE1_ALPHA_ARB 0x8589 -#define GL_SOURCE2_ALPHA_ARB 0x858A -#define GL_OPERAND0_RGB_ARB 0x8590 -#define GL_OPERAND1_RGB_ARB 0x8591 -#define GL_OPERAND2_RGB_ARB 0x8592 -#define GL_OPERAND0_ALPHA_ARB 0x8598 -#define GL_OPERAND1_ALPHA_ARB 0x8599 -#define GL_OPERAND2_ALPHA_ARB 0x859A - -#define GLEW_ARB_texture_env_combine GLEW_GET_VAR(__GLEW_ARB_texture_env_combine) - -#endif /* GL_ARB_texture_env_combine */ - -/* ---------------------- GL_ARB_texture_env_crossbar ---------------------- */ - -#ifndef GL_ARB_texture_env_crossbar -#define GL_ARB_texture_env_crossbar 1 - -#define GLEW_ARB_texture_env_crossbar GLEW_GET_VAR(__GLEW_ARB_texture_env_crossbar) - -#endif /* GL_ARB_texture_env_crossbar */ - -/* ------------------------ GL_ARB_texture_env_dot3 ------------------------ */ - -#ifndef GL_ARB_texture_env_dot3 -#define GL_ARB_texture_env_dot3 1 - -#define GL_DOT3_RGB_ARB 0x86AE -#define GL_DOT3_RGBA_ARB 0x86AF - -#define GLEW_ARB_texture_env_dot3 GLEW_GET_VAR(__GLEW_ARB_texture_env_dot3) - -#endif /* GL_ARB_texture_env_dot3 */ - -/* ------------------- GL_ARB_texture_filter_anisotropic ------------------- */ - -#ifndef GL_ARB_texture_filter_anisotropic -#define GL_ARB_texture_filter_anisotropic 1 - -#define GL_TEXTURE_MAX_ANISOTROPY 0x84FE -#define GL_MAX_TEXTURE_MAX_ANISOTROPY 0x84FF - -#define GLEW_ARB_texture_filter_anisotropic GLEW_GET_VAR(__GLEW_ARB_texture_filter_anisotropic) - -#endif /* GL_ARB_texture_filter_anisotropic */ - -/* ---------------------- GL_ARB_texture_filter_minmax --------------------- */ - -#ifndef GL_ARB_texture_filter_minmax -#define GL_ARB_texture_filter_minmax 1 - -#define GL_TEXTURE_REDUCTION_MODE_ARB 0x9366 -#define GL_WEIGHTED_AVERAGE_ARB 0x9367 - -#define GLEW_ARB_texture_filter_minmax GLEW_GET_VAR(__GLEW_ARB_texture_filter_minmax) - -#endif /* GL_ARB_texture_filter_minmax */ - -/* -------------------------- GL_ARB_texture_float ------------------------- */ - -#ifndef GL_ARB_texture_float -#define GL_ARB_texture_float 1 - -#define GL_RGBA32F_ARB 0x8814 -#define GL_RGB32F_ARB 0x8815 -#define GL_ALPHA32F_ARB 0x8816 -#define GL_INTENSITY32F_ARB 0x8817 -#define GL_LUMINANCE32F_ARB 0x8818 -#define GL_LUMINANCE_ALPHA32F_ARB 0x8819 -#define GL_RGBA16F_ARB 0x881A -#define GL_RGB16F_ARB 0x881B -#define GL_ALPHA16F_ARB 0x881C -#define GL_INTENSITY16F_ARB 0x881D -#define GL_LUMINANCE16F_ARB 0x881E -#define GL_LUMINANCE_ALPHA16F_ARB 0x881F -#define GL_TEXTURE_RED_TYPE_ARB 0x8C10 -#define GL_TEXTURE_GREEN_TYPE_ARB 0x8C11 -#define GL_TEXTURE_BLUE_TYPE_ARB 0x8C12 -#define GL_TEXTURE_ALPHA_TYPE_ARB 0x8C13 -#define GL_TEXTURE_LUMINANCE_TYPE_ARB 0x8C14 -#define GL_TEXTURE_INTENSITY_TYPE_ARB 0x8C15 -#define GL_TEXTURE_DEPTH_TYPE_ARB 0x8C16 -#define GL_UNSIGNED_NORMALIZED_ARB 0x8C17 - -#define GLEW_ARB_texture_float GLEW_GET_VAR(__GLEW_ARB_texture_float) - -#endif /* GL_ARB_texture_float */ - -/* ------------------------- GL_ARB_texture_gather ------------------------- */ - -#ifndef GL_ARB_texture_gather -#define GL_ARB_texture_gather 1 - -#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5E -#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5F -#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F - -#define GLEW_ARB_texture_gather GLEW_GET_VAR(__GLEW_ARB_texture_gather) - -#endif /* GL_ARB_texture_gather */ - -/* ------------------ GL_ARB_texture_mirror_clamp_to_edge ------------------ */ - -#ifndef GL_ARB_texture_mirror_clamp_to_edge -#define GL_ARB_texture_mirror_clamp_to_edge 1 - -#define GL_MIRROR_CLAMP_TO_EDGE 0x8743 - -#define GLEW_ARB_texture_mirror_clamp_to_edge GLEW_GET_VAR(__GLEW_ARB_texture_mirror_clamp_to_edge) - -#endif /* GL_ARB_texture_mirror_clamp_to_edge */ - -/* --------------------- GL_ARB_texture_mirrored_repeat -------------------- */ - -#ifndef GL_ARB_texture_mirrored_repeat -#define GL_ARB_texture_mirrored_repeat 1 - -#define GL_MIRRORED_REPEAT_ARB 0x8370 - -#define GLEW_ARB_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_ARB_texture_mirrored_repeat) - -#endif /* GL_ARB_texture_mirrored_repeat */ - -/* ----------------------- GL_ARB_texture_multisample ---------------------- */ - -#ifndef GL_ARB_texture_multisample -#define GL_ARB_texture_multisample 1 - -#define GL_SAMPLE_POSITION 0x8E50 -#define GL_SAMPLE_MASK 0x8E51 -#define GL_SAMPLE_MASK_VALUE 0x8E52 -#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59 -#define GL_TEXTURE_2D_MULTISAMPLE 0x9100 -#define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101 -#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102 -#define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103 -#define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104 -#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105 -#define GL_TEXTURE_SAMPLES 0x9106 -#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107 -#define GL_SAMPLER_2D_MULTISAMPLE 0x9108 -#define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109 -#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A -#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B -#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C -#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D -#define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E -#define GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F -#define GL_MAX_INTEGER_SAMPLES 0x9110 - -typedef void (GLAPIENTRY * PFNGLGETMULTISAMPLEFVPROC) (GLenum pname, GLuint index, GLfloat* val); -typedef void (GLAPIENTRY * PFNGLSAMPLEMASKIPROC) (GLuint index, GLbitfield mask); -typedef void (GLAPIENTRY * PFNGLTEXIMAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); -typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); - -#define glGetMultisamplefv GLEW_GET_FUN(__glewGetMultisamplefv) -#define glSampleMaski GLEW_GET_FUN(__glewSampleMaski) -#define glTexImage2DMultisample GLEW_GET_FUN(__glewTexImage2DMultisample) -#define glTexImage3DMultisample GLEW_GET_FUN(__glewTexImage3DMultisample) - -#define GLEW_ARB_texture_multisample GLEW_GET_VAR(__GLEW_ARB_texture_multisample) - -#endif /* GL_ARB_texture_multisample */ - -/* -------------------- GL_ARB_texture_non_power_of_two -------------------- */ - -#ifndef GL_ARB_texture_non_power_of_two -#define GL_ARB_texture_non_power_of_two 1 - -#define GLEW_ARB_texture_non_power_of_two GLEW_GET_VAR(__GLEW_ARB_texture_non_power_of_two) - -#endif /* GL_ARB_texture_non_power_of_two */ - -/* ---------------------- GL_ARB_texture_query_levels ---------------------- */ - -#ifndef GL_ARB_texture_query_levels -#define GL_ARB_texture_query_levels 1 - -#define GLEW_ARB_texture_query_levels GLEW_GET_VAR(__GLEW_ARB_texture_query_levels) - -#endif /* GL_ARB_texture_query_levels */ - -/* ------------------------ GL_ARB_texture_query_lod ----------------------- */ - -#ifndef GL_ARB_texture_query_lod -#define GL_ARB_texture_query_lod 1 - -#define GLEW_ARB_texture_query_lod GLEW_GET_VAR(__GLEW_ARB_texture_query_lod) - -#endif /* GL_ARB_texture_query_lod */ - -/* ------------------------ GL_ARB_texture_rectangle ----------------------- */ - -#ifndef GL_ARB_texture_rectangle -#define GL_ARB_texture_rectangle 1 - -#define GL_TEXTURE_RECTANGLE_ARB 0x84F5 -#define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6 -#define GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84F7 -#define GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84F8 -#define GL_SAMPLER_2D_RECT_ARB 0x8B63 -#define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64 - -#define GLEW_ARB_texture_rectangle GLEW_GET_VAR(__GLEW_ARB_texture_rectangle) - -#endif /* GL_ARB_texture_rectangle */ - -/* --------------------------- GL_ARB_texture_rg --------------------------- */ - -#ifndef GL_ARB_texture_rg -#define GL_ARB_texture_rg 1 - -#define GL_COMPRESSED_RED 0x8225 -#define GL_COMPRESSED_RG 0x8226 -#define GL_RG 0x8227 -#define GL_RG_INTEGER 0x8228 -#define GL_R8 0x8229 -#define GL_R16 0x822A -#define GL_RG8 0x822B -#define GL_RG16 0x822C -#define GL_R16F 0x822D -#define GL_R32F 0x822E -#define GL_RG16F 0x822F -#define GL_RG32F 0x8230 -#define GL_R8I 0x8231 -#define GL_R8UI 0x8232 -#define GL_R16I 0x8233 -#define GL_R16UI 0x8234 -#define GL_R32I 0x8235 -#define GL_R32UI 0x8236 -#define GL_RG8I 0x8237 -#define GL_RG8UI 0x8238 -#define GL_RG16I 0x8239 -#define GL_RG16UI 0x823A -#define GL_RG32I 0x823B -#define GL_RG32UI 0x823C - -#define GLEW_ARB_texture_rg GLEW_GET_VAR(__GLEW_ARB_texture_rg) - -#endif /* GL_ARB_texture_rg */ - -/* ----------------------- GL_ARB_texture_rgb10_a2ui ----------------------- */ - -#ifndef GL_ARB_texture_rgb10_a2ui -#define GL_ARB_texture_rgb10_a2ui 1 - -#define GL_RGB10_A2UI 0x906F - -#define GLEW_ARB_texture_rgb10_a2ui GLEW_GET_VAR(__GLEW_ARB_texture_rgb10_a2ui) - -#endif /* GL_ARB_texture_rgb10_a2ui */ - -/* ------------------------ GL_ARB_texture_stencil8 ------------------------ */ - -#ifndef GL_ARB_texture_stencil8 -#define GL_ARB_texture_stencil8 1 - -#define GL_STENCIL_INDEX 0x1901 -#define GL_STENCIL_INDEX8 0x8D48 - -#define GLEW_ARB_texture_stencil8 GLEW_GET_VAR(__GLEW_ARB_texture_stencil8) - -#endif /* GL_ARB_texture_stencil8 */ - -/* ------------------------- GL_ARB_texture_storage ------------------------ */ - -#ifndef GL_ARB_texture_storage -#define GL_ARB_texture_storage 1 - -#define GL_TEXTURE_IMMUTABLE_FORMAT 0x912F - -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE1DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE2DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); - -#define glTexStorage1D GLEW_GET_FUN(__glewTexStorage1D) -#define glTexStorage2D GLEW_GET_FUN(__glewTexStorage2D) -#define glTexStorage3D GLEW_GET_FUN(__glewTexStorage3D) - -#define GLEW_ARB_texture_storage GLEW_GET_VAR(__GLEW_ARB_texture_storage) - -#endif /* GL_ARB_texture_storage */ - -/* ------------------- GL_ARB_texture_storage_multisample ------------------ */ - -#ifndef GL_ARB_texture_storage_multisample -#define GL_ARB_texture_storage_multisample 1 - -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DMULTISAMPLEEXTPROC) (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DMULTISAMPLEEXTPROC) (GLuint texture, GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); - -#define glTexStorage2DMultisample GLEW_GET_FUN(__glewTexStorage2DMultisample) -#define glTexStorage3DMultisample GLEW_GET_FUN(__glewTexStorage3DMultisample) -#define glTextureStorage2DMultisampleEXT GLEW_GET_FUN(__glewTextureStorage2DMultisampleEXT) -#define glTextureStorage3DMultisampleEXT GLEW_GET_FUN(__glewTextureStorage3DMultisampleEXT) - -#define GLEW_ARB_texture_storage_multisample GLEW_GET_VAR(__GLEW_ARB_texture_storage_multisample) - -#endif /* GL_ARB_texture_storage_multisample */ - -/* ------------------------- GL_ARB_texture_swizzle ------------------------ */ - -#ifndef GL_ARB_texture_swizzle -#define GL_ARB_texture_swizzle 1 - -#define GL_TEXTURE_SWIZZLE_R 0x8E42 -#define GL_TEXTURE_SWIZZLE_G 0x8E43 -#define GL_TEXTURE_SWIZZLE_B 0x8E44 -#define GL_TEXTURE_SWIZZLE_A 0x8E45 -#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46 - -#define GLEW_ARB_texture_swizzle GLEW_GET_VAR(__GLEW_ARB_texture_swizzle) - -#endif /* GL_ARB_texture_swizzle */ - -/* -------------------------- GL_ARB_texture_view -------------------------- */ - -#ifndef GL_ARB_texture_view -#define GL_ARB_texture_view 1 - -#define GL_TEXTURE_VIEW_MIN_LEVEL 0x82DB -#define GL_TEXTURE_VIEW_NUM_LEVELS 0x82DC -#define GL_TEXTURE_VIEW_MIN_LAYER 0x82DD -#define GL_TEXTURE_VIEW_NUM_LAYERS 0x82DE -#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF - -typedef void (GLAPIENTRY * PFNGLTEXTUREVIEWPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers); - -#define glTextureView GLEW_GET_FUN(__glewTextureView) - -#define GLEW_ARB_texture_view GLEW_GET_VAR(__GLEW_ARB_texture_view) - -#endif /* GL_ARB_texture_view */ - -/* --------------------------- GL_ARB_timer_query -------------------------- */ - -#ifndef GL_ARB_timer_query -#define GL_ARB_timer_query 1 - -#define GL_TIME_ELAPSED 0x88BF -#define GL_TIMESTAMP 0x8E28 - -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VPROC) (GLuint id, GLenum pname, GLint64* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VPROC) (GLuint id, GLenum pname, GLuint64* params); -typedef void (GLAPIENTRY * PFNGLQUERYCOUNTERPROC) (GLuint id, GLenum target); - -#define glGetQueryObjecti64v GLEW_GET_FUN(__glewGetQueryObjecti64v) -#define glGetQueryObjectui64v GLEW_GET_FUN(__glewGetQueryObjectui64v) -#define glQueryCounter GLEW_GET_FUN(__glewQueryCounter) - -#define GLEW_ARB_timer_query GLEW_GET_VAR(__GLEW_ARB_timer_query) - -#endif /* GL_ARB_timer_query */ - -/* ----------------------- GL_ARB_transform_feedback2 ---------------------- */ - -#ifndef GL_ARB_transform_feedback2 -#define GL_ARB_transform_feedback2 1 - -#define GL_TRANSFORM_FEEDBACK 0x8E22 -#define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED 0x8E23 -#define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE 0x8E24 -#define GL_TRANSFORM_FEEDBACK_BINDING 0x8E25 - -typedef void (GLAPIENTRY * PFNGLBINDTRANSFORMFEEDBACKPROC) (GLenum target, GLuint id); -typedef void (GLAPIENTRY * PFNGLDELETETRANSFORMFEEDBACKSPROC) (GLsizei n, const GLuint* ids); -typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKPROC) (GLenum mode, GLuint id); -typedef void (GLAPIENTRY * PFNGLGENTRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint* ids); -typedef GLboolean (GLAPIENTRY * PFNGLISTRANSFORMFEEDBACKPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLPAUSETRANSFORMFEEDBACKPROC) (void); -typedef void (GLAPIENTRY * PFNGLRESUMETRANSFORMFEEDBACKPROC) (void); - -#define glBindTransformFeedback GLEW_GET_FUN(__glewBindTransformFeedback) -#define glDeleteTransformFeedbacks GLEW_GET_FUN(__glewDeleteTransformFeedbacks) -#define glDrawTransformFeedback GLEW_GET_FUN(__glewDrawTransformFeedback) -#define glGenTransformFeedbacks GLEW_GET_FUN(__glewGenTransformFeedbacks) -#define glIsTransformFeedback GLEW_GET_FUN(__glewIsTransformFeedback) -#define glPauseTransformFeedback GLEW_GET_FUN(__glewPauseTransformFeedback) -#define glResumeTransformFeedback GLEW_GET_FUN(__glewResumeTransformFeedback) - -#define GLEW_ARB_transform_feedback2 GLEW_GET_VAR(__GLEW_ARB_transform_feedback2) - -#endif /* GL_ARB_transform_feedback2 */ - -/* ----------------------- GL_ARB_transform_feedback3 ---------------------- */ - -#ifndef GL_ARB_transform_feedback3 -#define GL_ARB_transform_feedback3 1 - -#define GL_MAX_TRANSFORM_FEEDBACK_BUFFERS 0x8E70 -#define GL_MAX_VERTEX_STREAMS 0x8E71 - -typedef void (GLAPIENTRY * PFNGLBEGINQUERYINDEXEDPROC) (GLenum target, GLuint index, GLuint id); -typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC) (GLenum mode, GLuint id, GLuint stream); -typedef void (GLAPIENTRY * PFNGLENDQUERYINDEXEDPROC) (GLenum target, GLuint index); -typedef void (GLAPIENTRY * PFNGLGETQUERYINDEXEDIVPROC) (GLenum target, GLuint index, GLenum pname, GLint* params); - -#define glBeginQueryIndexed GLEW_GET_FUN(__glewBeginQueryIndexed) -#define glDrawTransformFeedbackStream GLEW_GET_FUN(__glewDrawTransformFeedbackStream) -#define glEndQueryIndexed GLEW_GET_FUN(__glewEndQueryIndexed) -#define glGetQueryIndexediv GLEW_GET_FUN(__glewGetQueryIndexediv) - -#define GLEW_ARB_transform_feedback3 GLEW_GET_VAR(__GLEW_ARB_transform_feedback3) - -#endif /* GL_ARB_transform_feedback3 */ - -/* ------------------ GL_ARB_transform_feedback_instanced ------------------ */ - -#ifndef GL_ARB_transform_feedback_instanced -#define GL_ARB_transform_feedback_instanced 1 - -typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC) (GLenum mode, GLuint id, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC) (GLenum mode, GLuint id, GLuint stream, GLsizei primcount); - -#define glDrawTransformFeedbackInstanced GLEW_GET_FUN(__glewDrawTransformFeedbackInstanced) -#define glDrawTransformFeedbackStreamInstanced GLEW_GET_FUN(__glewDrawTransformFeedbackStreamInstanced) - -#define GLEW_ARB_transform_feedback_instanced GLEW_GET_VAR(__GLEW_ARB_transform_feedback_instanced) - -#endif /* GL_ARB_transform_feedback_instanced */ - -/* ---------------- GL_ARB_transform_feedback_overflow_query --------------- */ - -#ifndef GL_ARB_transform_feedback_overflow_query -#define GL_ARB_transform_feedback_overflow_query 1 - -#define GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB 0x82EC -#define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB 0x82ED - -#define GLEW_ARB_transform_feedback_overflow_query GLEW_GET_VAR(__GLEW_ARB_transform_feedback_overflow_query) - -#endif /* GL_ARB_transform_feedback_overflow_query */ - -/* ------------------------ GL_ARB_transpose_matrix ------------------------ */ - -#ifndef GL_ARB_transpose_matrix -#define GL_ARB_transpose_matrix 1 - -#define GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3 -#define GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4 -#define GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5 -#define GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6 - -typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXDARBPROC) (GLdouble m[16]); -typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXFARBPROC) (GLfloat m[16]); -typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXDARBPROC) (GLdouble m[16]); -typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXFARBPROC) (GLfloat m[16]); - -#define glLoadTransposeMatrixdARB GLEW_GET_FUN(__glewLoadTransposeMatrixdARB) -#define glLoadTransposeMatrixfARB GLEW_GET_FUN(__glewLoadTransposeMatrixfARB) -#define glMultTransposeMatrixdARB GLEW_GET_FUN(__glewMultTransposeMatrixdARB) -#define glMultTransposeMatrixfARB GLEW_GET_FUN(__glewMultTransposeMatrixfARB) - -#define GLEW_ARB_transpose_matrix GLEW_GET_VAR(__GLEW_ARB_transpose_matrix) - -#endif /* GL_ARB_transpose_matrix */ - -/* ---------------------- GL_ARB_uniform_buffer_object --------------------- */ - -#ifndef GL_ARB_uniform_buffer_object -#define GL_ARB_uniform_buffer_object 1 - -#define GL_UNIFORM_BUFFER 0x8A11 -#define GL_UNIFORM_BUFFER_BINDING 0x8A28 -#define GL_UNIFORM_BUFFER_START 0x8A29 -#define GL_UNIFORM_BUFFER_SIZE 0x8A2A -#define GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B -#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C -#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D -#define GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E -#define GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F -#define GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30 -#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31 -#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32 -#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33 -#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34 -#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35 -#define GL_ACTIVE_UNIFORM_BLOCKS 0x8A36 -#define GL_UNIFORM_TYPE 0x8A37 -#define GL_UNIFORM_SIZE 0x8A38 -#define GL_UNIFORM_NAME_LENGTH 0x8A39 -#define GL_UNIFORM_BLOCK_INDEX 0x8A3A -#define GL_UNIFORM_OFFSET 0x8A3B -#define GL_UNIFORM_ARRAY_STRIDE 0x8A3C -#define GL_UNIFORM_MATRIX_STRIDE 0x8A3D -#define GL_UNIFORM_IS_ROW_MAJOR 0x8A3E -#define GL_UNIFORM_BLOCK_BINDING 0x8A3F -#define GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40 -#define GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41 -#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42 -#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46 -#define GL_INVALID_INDEX 0xFFFFFFFFu - -typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); -typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC) (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName); -typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMBLOCKIVPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMNAMEPROC) (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformName); -typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMSIVPROC) (GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETINTEGERI_VPROC) (GLenum target, GLuint index, GLint* data); -typedef GLuint (GLAPIENTRY * PFNGLGETUNIFORMBLOCKINDEXPROC) (GLuint program, const GLchar* uniformBlockName); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMINDICESPROC) (GLuint program, GLsizei uniformCount, const GLchar* const * uniformNames, GLuint* uniformIndices); -typedef void (GLAPIENTRY * PFNGLUNIFORMBLOCKBINDINGPROC) (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding); - -#define glBindBufferBase GLEW_GET_FUN(__glewBindBufferBase) -#define glBindBufferRange GLEW_GET_FUN(__glewBindBufferRange) -#define glGetActiveUniformBlockName GLEW_GET_FUN(__glewGetActiveUniformBlockName) -#define glGetActiveUniformBlockiv GLEW_GET_FUN(__glewGetActiveUniformBlockiv) -#define glGetActiveUniformName GLEW_GET_FUN(__glewGetActiveUniformName) -#define glGetActiveUniformsiv GLEW_GET_FUN(__glewGetActiveUniformsiv) -#define glGetIntegeri_v GLEW_GET_FUN(__glewGetIntegeri_v) -#define glGetUniformBlockIndex GLEW_GET_FUN(__glewGetUniformBlockIndex) -#define glGetUniformIndices GLEW_GET_FUN(__glewGetUniformIndices) -#define glUniformBlockBinding GLEW_GET_FUN(__glewUniformBlockBinding) - -#define GLEW_ARB_uniform_buffer_object GLEW_GET_VAR(__GLEW_ARB_uniform_buffer_object) - -#endif /* GL_ARB_uniform_buffer_object */ - -/* ------------------------ GL_ARB_vertex_array_bgra ----------------------- */ - -#ifndef GL_ARB_vertex_array_bgra -#define GL_ARB_vertex_array_bgra 1 - -#define GL_BGRA 0x80E1 - -#define GLEW_ARB_vertex_array_bgra GLEW_GET_VAR(__GLEW_ARB_vertex_array_bgra) - -#endif /* GL_ARB_vertex_array_bgra */ - -/* ----------------------- GL_ARB_vertex_array_object ---------------------- */ - -#ifndef GL_ARB_vertex_array_object -#define GL_ARB_vertex_array_object 1 - -#define GL_VERTEX_ARRAY_BINDING 0x85B5 - -typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYPROC) (GLuint array); -typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint* arrays); -typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSPROC) (GLsizei n, GLuint* arrays); -typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYPROC) (GLuint array); - -#define glBindVertexArray GLEW_GET_FUN(__glewBindVertexArray) -#define glDeleteVertexArrays GLEW_GET_FUN(__glewDeleteVertexArrays) -#define glGenVertexArrays GLEW_GET_FUN(__glewGenVertexArrays) -#define glIsVertexArray GLEW_GET_FUN(__glewIsVertexArray) - -#define GLEW_ARB_vertex_array_object GLEW_GET_VAR(__GLEW_ARB_vertex_array_object) - -#endif /* GL_ARB_vertex_array_object */ - -/* ----------------------- GL_ARB_vertex_attrib_64bit ---------------------- */ - -#ifndef GL_ARB_vertex_attrib_64bit -#define GL_ARB_vertex_attrib_64bit 1 - -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLDVPROC) (GLuint index, GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DPROC) (GLuint index, GLdouble x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DPROC) (GLuint index, GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer); - -#define glGetVertexAttribLdv GLEW_GET_FUN(__glewGetVertexAttribLdv) -#define glVertexAttribL1d GLEW_GET_FUN(__glewVertexAttribL1d) -#define glVertexAttribL1dv GLEW_GET_FUN(__glewVertexAttribL1dv) -#define glVertexAttribL2d GLEW_GET_FUN(__glewVertexAttribL2d) -#define glVertexAttribL2dv GLEW_GET_FUN(__glewVertexAttribL2dv) -#define glVertexAttribL3d GLEW_GET_FUN(__glewVertexAttribL3d) -#define glVertexAttribL3dv GLEW_GET_FUN(__glewVertexAttribL3dv) -#define glVertexAttribL4d GLEW_GET_FUN(__glewVertexAttribL4d) -#define glVertexAttribL4dv GLEW_GET_FUN(__glewVertexAttribL4dv) -#define glVertexAttribLPointer GLEW_GET_FUN(__glewVertexAttribLPointer) - -#define GLEW_ARB_vertex_attrib_64bit GLEW_GET_VAR(__GLEW_ARB_vertex_attrib_64bit) - -#endif /* GL_ARB_vertex_attrib_64bit */ - -/* ---------------------- GL_ARB_vertex_attrib_binding --------------------- */ - -#ifndef GL_ARB_vertex_attrib_binding -#define GL_ARB_vertex_attrib_binding 1 - -#define GL_VERTEX_ATTRIB_BINDING 0x82D4 -#define GL_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D5 -#define GL_VERTEX_BINDING_DIVISOR 0x82D6 -#define GL_VERTEX_BINDING_OFFSET 0x82D7 -#define GL_VERTEX_BINDING_STRIDE 0x82D8 -#define GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D9 -#define GL_MAX_VERTEX_ATTRIB_BINDINGS 0x82DA -#define GL_VERTEX_BINDING_BUFFER 0x8F4F - -typedef void (GLAPIENTRY * PFNGLBINDVERTEXBUFFERPROC) (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYBINDVERTEXBUFFEREXTPROC) (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBBINDINGEXTPROC) (GLuint vaobj, GLuint attribindex, GLuint bindingindex); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBIFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBLFORMATEXTPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXBINDINGDIVISOREXTPROC) (GLuint vaobj, GLuint bindingindex, GLuint divisor); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBBINDINGPROC) (GLuint attribindex, GLuint bindingindex); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); -typedef void (GLAPIENTRY * PFNGLVERTEXBINDINGDIVISORPROC) (GLuint bindingindex, GLuint divisor); - -#define glBindVertexBuffer GLEW_GET_FUN(__glewBindVertexBuffer) -#define glVertexArrayBindVertexBufferEXT GLEW_GET_FUN(__glewVertexArrayBindVertexBufferEXT) -#define glVertexArrayVertexAttribBindingEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribBindingEXT) -#define glVertexArrayVertexAttribFormatEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribFormatEXT) -#define glVertexArrayVertexAttribIFormatEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribIFormatEXT) -#define glVertexArrayVertexAttribLFormatEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribLFormatEXT) -#define glVertexArrayVertexBindingDivisorEXT GLEW_GET_FUN(__glewVertexArrayVertexBindingDivisorEXT) -#define glVertexAttribBinding GLEW_GET_FUN(__glewVertexAttribBinding) -#define glVertexAttribFormat GLEW_GET_FUN(__glewVertexAttribFormat) -#define glVertexAttribIFormat GLEW_GET_FUN(__glewVertexAttribIFormat) -#define glVertexAttribLFormat GLEW_GET_FUN(__glewVertexAttribLFormat) -#define glVertexBindingDivisor GLEW_GET_FUN(__glewVertexBindingDivisor) - -#define GLEW_ARB_vertex_attrib_binding GLEW_GET_VAR(__GLEW_ARB_vertex_attrib_binding) - -#endif /* GL_ARB_vertex_attrib_binding */ - -/* -------------------------- GL_ARB_vertex_blend -------------------------- */ - -#ifndef GL_ARB_vertex_blend -#define GL_ARB_vertex_blend 1 - -#define GL_MODELVIEW0_ARB 0x1700 -#define GL_MODELVIEW1_ARB 0x850A -#define GL_MAX_VERTEX_UNITS_ARB 0x86A4 -#define GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5 -#define GL_WEIGHT_SUM_UNITY_ARB 0x86A6 -#define GL_VERTEX_BLEND_ARB 0x86A7 -#define GL_CURRENT_WEIGHT_ARB 0x86A8 -#define GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9 -#define GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA -#define GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB -#define GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC -#define GL_WEIGHT_ARRAY_ARB 0x86AD -#define GL_MODELVIEW2_ARB 0x8722 -#define GL_MODELVIEW3_ARB 0x8723 -#define GL_MODELVIEW4_ARB 0x8724 -#define GL_MODELVIEW5_ARB 0x8725 -#define GL_MODELVIEW6_ARB 0x8726 -#define GL_MODELVIEW7_ARB 0x8727 -#define GL_MODELVIEW8_ARB 0x8728 -#define GL_MODELVIEW9_ARB 0x8729 -#define GL_MODELVIEW10_ARB 0x872A -#define GL_MODELVIEW11_ARB 0x872B -#define GL_MODELVIEW12_ARB 0x872C -#define GL_MODELVIEW13_ARB 0x872D -#define GL_MODELVIEW14_ARB 0x872E -#define GL_MODELVIEW15_ARB 0x872F -#define GL_MODELVIEW16_ARB 0x8730 -#define GL_MODELVIEW17_ARB 0x8731 -#define GL_MODELVIEW18_ARB 0x8732 -#define GL_MODELVIEW19_ARB 0x8733 -#define GL_MODELVIEW20_ARB 0x8734 -#define GL_MODELVIEW21_ARB 0x8735 -#define GL_MODELVIEW22_ARB 0x8736 -#define GL_MODELVIEW23_ARB 0x8737 -#define GL_MODELVIEW24_ARB 0x8738 -#define GL_MODELVIEW25_ARB 0x8739 -#define GL_MODELVIEW26_ARB 0x873A -#define GL_MODELVIEW27_ARB 0x873B -#define GL_MODELVIEW28_ARB 0x873C -#define GL_MODELVIEW29_ARB 0x873D -#define GL_MODELVIEW30_ARB 0x873E -#define GL_MODELVIEW31_ARB 0x873F - -typedef void (GLAPIENTRY * PFNGLVERTEXBLENDARBPROC) (GLint count); -typedef void (GLAPIENTRY * PFNGLWEIGHTPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); -typedef void (GLAPIENTRY * PFNGLWEIGHTBVARBPROC) (GLint size, GLbyte *weights); -typedef void (GLAPIENTRY * PFNGLWEIGHTDVARBPROC) (GLint size, GLdouble *weights); -typedef void (GLAPIENTRY * PFNGLWEIGHTFVARBPROC) (GLint size, GLfloat *weights); -typedef void (GLAPIENTRY * PFNGLWEIGHTIVARBPROC) (GLint size, GLint *weights); -typedef void (GLAPIENTRY * PFNGLWEIGHTSVARBPROC) (GLint size, GLshort *weights); -typedef void (GLAPIENTRY * PFNGLWEIGHTUBVARBPROC) (GLint size, GLubyte *weights); -typedef void (GLAPIENTRY * PFNGLWEIGHTUIVARBPROC) (GLint size, GLuint *weights); -typedef void (GLAPIENTRY * PFNGLWEIGHTUSVARBPROC) (GLint size, GLushort *weights); - -#define glVertexBlendARB GLEW_GET_FUN(__glewVertexBlendARB) -#define glWeightPointerARB GLEW_GET_FUN(__glewWeightPointerARB) -#define glWeightbvARB GLEW_GET_FUN(__glewWeightbvARB) -#define glWeightdvARB GLEW_GET_FUN(__glewWeightdvARB) -#define glWeightfvARB GLEW_GET_FUN(__glewWeightfvARB) -#define glWeightivARB GLEW_GET_FUN(__glewWeightivARB) -#define glWeightsvARB GLEW_GET_FUN(__glewWeightsvARB) -#define glWeightubvARB GLEW_GET_FUN(__glewWeightubvARB) -#define glWeightuivARB GLEW_GET_FUN(__glewWeightuivARB) -#define glWeightusvARB GLEW_GET_FUN(__glewWeightusvARB) - -#define GLEW_ARB_vertex_blend GLEW_GET_VAR(__GLEW_ARB_vertex_blend) - -#endif /* GL_ARB_vertex_blend */ - -/* ---------------------- GL_ARB_vertex_buffer_object ---------------------- */ - -#ifndef GL_ARB_vertex_buffer_object -#define GL_ARB_vertex_buffer_object 1 - -#define GL_BUFFER_SIZE_ARB 0x8764 -#define GL_BUFFER_USAGE_ARB 0x8765 -#define GL_ARRAY_BUFFER_ARB 0x8892 -#define GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893 -#define GL_ARRAY_BUFFER_BINDING_ARB 0x8894 -#define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895 -#define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896 -#define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897 -#define GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898 -#define GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899 -#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A -#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B -#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C -#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D -#define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E -#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F -#define GL_READ_ONLY_ARB 0x88B8 -#define GL_WRITE_ONLY_ARB 0x88B9 -#define GL_READ_WRITE_ARB 0x88BA -#define GL_BUFFER_ACCESS_ARB 0x88BB -#define GL_BUFFER_MAPPED_ARB 0x88BC -#define GL_BUFFER_MAP_POINTER_ARB 0x88BD -#define GL_STREAM_DRAW_ARB 0x88E0 -#define GL_STREAM_READ_ARB 0x88E1 -#define GL_STREAM_COPY_ARB 0x88E2 -#define GL_STATIC_DRAW_ARB 0x88E4 -#define GL_STATIC_READ_ARB 0x88E5 -#define GL_STATIC_COPY_ARB 0x88E6 -#define GL_DYNAMIC_DRAW_ARB 0x88E8 -#define GL_DYNAMIC_READ_ARB 0x88E9 -#define GL_DYNAMIC_COPY_ARB 0x88EA - -typedef ptrdiff_t GLintptrARB; -typedef ptrdiff_t GLsizeiptrARB; - -typedef void (GLAPIENTRY * PFNGLBINDBUFFERARBPROC) (GLenum target, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLBUFFERDATAARBPROC) (GLenum target, GLsizeiptrARB size, const void *data, GLenum usage); -typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const void *data); -typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSARBPROC) (GLsizei n, const GLuint* buffers); -typedef void (GLAPIENTRY * PFNGLGENBUFFERSARBPROC) (GLsizei n, GLuint* buffers); -typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVARBPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVARBPROC) (GLenum target, GLenum pname, void** params); -typedef void (GLAPIENTRY * PFNGLGETBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, void *data); -typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERARBPROC) (GLuint buffer); -typedef void * (GLAPIENTRY * PFNGLMAPBUFFERARBPROC) (GLenum target, GLenum access); -typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFERARBPROC) (GLenum target); - -#define glBindBufferARB GLEW_GET_FUN(__glewBindBufferARB) -#define glBufferDataARB GLEW_GET_FUN(__glewBufferDataARB) -#define glBufferSubDataARB GLEW_GET_FUN(__glewBufferSubDataARB) -#define glDeleteBuffersARB GLEW_GET_FUN(__glewDeleteBuffersARB) -#define glGenBuffersARB GLEW_GET_FUN(__glewGenBuffersARB) -#define glGetBufferParameterivARB GLEW_GET_FUN(__glewGetBufferParameterivARB) -#define glGetBufferPointervARB GLEW_GET_FUN(__glewGetBufferPointervARB) -#define glGetBufferSubDataARB GLEW_GET_FUN(__glewGetBufferSubDataARB) -#define glIsBufferARB GLEW_GET_FUN(__glewIsBufferARB) -#define glMapBufferARB GLEW_GET_FUN(__glewMapBufferARB) -#define glUnmapBufferARB GLEW_GET_FUN(__glewUnmapBufferARB) - -#define GLEW_ARB_vertex_buffer_object GLEW_GET_VAR(__GLEW_ARB_vertex_buffer_object) - -#endif /* GL_ARB_vertex_buffer_object */ - -/* ------------------------- GL_ARB_vertex_program ------------------------- */ - -#ifndef GL_ARB_vertex_program -#define GL_ARB_vertex_program 1 - -#define GL_COLOR_SUM_ARB 0x8458 -#define GL_VERTEX_PROGRAM_ARB 0x8620 -#define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622 -#define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623 -#define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624 -#define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625 -#define GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626 -#define GL_PROGRAM_LENGTH_ARB 0x8627 -#define GL_PROGRAM_STRING_ARB 0x8628 -#define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E -#define GL_MAX_PROGRAM_MATRICES_ARB 0x862F -#define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640 -#define GL_CURRENT_MATRIX_ARB 0x8641 -#define GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642 -#define GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643 -#define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645 -#define GL_PROGRAM_ERROR_POSITION_ARB 0x864B -#define GL_PROGRAM_BINDING_ARB 0x8677 -#define GL_MAX_VERTEX_ATTRIBS_ARB 0x8869 -#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A -#define GL_PROGRAM_ERROR_STRING_ARB 0x8874 -#define GL_PROGRAM_FORMAT_ASCII_ARB 0x8875 -#define GL_PROGRAM_FORMAT_ARB 0x8876 -#define GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0 -#define GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1 -#define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2 -#define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3 -#define GL_PROGRAM_TEMPORARIES_ARB 0x88A4 -#define GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5 -#define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6 -#define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7 -#define GL_PROGRAM_PARAMETERS_ARB 0x88A8 -#define GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9 -#define GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA -#define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB -#define GL_PROGRAM_ATTRIBS_ARB 0x88AC -#define GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD -#define GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE -#define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF -#define GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0 -#define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1 -#define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2 -#define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3 -#define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4 -#define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5 -#define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6 -#define GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7 -#define GL_MATRIX0_ARB 0x88C0 -#define GL_MATRIX1_ARB 0x88C1 -#define GL_MATRIX2_ARB 0x88C2 -#define GL_MATRIX3_ARB 0x88C3 -#define GL_MATRIX4_ARB 0x88C4 -#define GL_MATRIX5_ARB 0x88C5 -#define GL_MATRIX6_ARB 0x88C6 -#define GL_MATRIX7_ARB 0x88C7 -#define GL_MATRIX8_ARB 0x88C8 -#define GL_MATRIX9_ARB 0x88C9 -#define GL_MATRIX10_ARB 0x88CA -#define GL_MATRIX11_ARB 0x88CB -#define GL_MATRIX12_ARB 0x88CC -#define GL_MATRIX13_ARB 0x88CD -#define GL_MATRIX14_ARB 0x88CE -#define GL_MATRIX15_ARB 0x88CF -#define GL_MATRIX16_ARB 0x88D0 -#define GL_MATRIX17_ARB 0x88D1 -#define GL_MATRIX18_ARB 0x88D2 -#define GL_MATRIX19_ARB 0x88D3 -#define GL_MATRIX20_ARB 0x88D4 -#define GL_MATRIX21_ARB 0x88D5 -#define GL_MATRIX22_ARB 0x88D6 -#define GL_MATRIX23_ARB 0x88D7 -#define GL_MATRIX24_ARB 0x88D8 -#define GL_MATRIX25_ARB 0x88D9 -#define GL_MATRIX26_ARB 0x88DA -#define GL_MATRIX27_ARB 0x88DB -#define GL_MATRIX28_ARB 0x88DC -#define GL_MATRIX29_ARB 0x88DD -#define GL_MATRIX30_ARB 0x88DE -#define GL_MATRIX31_ARB 0x88DF - -typedef void (GLAPIENTRY * PFNGLBINDPROGRAMARBPROC) (GLenum target, GLuint program); -typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMSARBPROC) (GLsizei n, const GLuint* programs); -typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYARBPROC) (GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYARBPROC) (GLuint index); -typedef void (GLAPIENTRY * PFNGLGENPROGRAMSARBPROC) (GLsizei n, GLuint* programs); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMENVPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMENVPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTRINGARBPROC) (GLenum target, GLenum pname, void *string); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVARBPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVARBPROC) (GLuint index, GLenum pname, void** pointer); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVARBPROC) (GLuint index, GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVARBPROC) (GLuint index, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVARBPROC) (GLuint index, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMARBPROC) (GLuint program); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMSTRINGARBPROC) (GLenum target, GLenum format, GLsizei len, const void *string); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DARBPROC) (GLuint index, GLdouble x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVARBPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FARBPROC) (GLuint index, GLfloat x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVARBPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SARBPROC) (GLuint index, GLshort x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVARBPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DARBPROC) (GLuint index, GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVARBPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FARBPROC) (GLuint index, GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVARBPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SARBPROC) (GLuint index, GLshort x, GLshort y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVARBPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVARBPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVARBPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVARBPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NBVARBPROC) (GLuint index, const GLbyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NIVARBPROC) (GLuint index, const GLint* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NSVARBPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBVARBPROC) (GLuint index, const GLubyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUIVARBPROC) (GLuint index, const GLuint* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUSVARBPROC) (GLuint index, const GLushort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4BVARBPROC) (GLuint index, const GLbyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVARBPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVARBPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4IVARBPROC) (GLuint index, const GLint* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVARBPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVARBPROC) (GLuint index, const GLubyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UIVARBPROC) (GLuint index, const GLuint* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4USVARBPROC) (GLuint index, const GLushort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer); - -#define glBindProgramARB GLEW_GET_FUN(__glewBindProgramARB) -#define glDeleteProgramsARB GLEW_GET_FUN(__glewDeleteProgramsARB) -#define glDisableVertexAttribArrayARB GLEW_GET_FUN(__glewDisableVertexAttribArrayARB) -#define glEnableVertexAttribArrayARB GLEW_GET_FUN(__glewEnableVertexAttribArrayARB) -#define glGenProgramsARB GLEW_GET_FUN(__glewGenProgramsARB) -#define glGetProgramEnvParameterdvARB GLEW_GET_FUN(__glewGetProgramEnvParameterdvARB) -#define glGetProgramEnvParameterfvARB GLEW_GET_FUN(__glewGetProgramEnvParameterfvARB) -#define glGetProgramLocalParameterdvARB GLEW_GET_FUN(__glewGetProgramLocalParameterdvARB) -#define glGetProgramLocalParameterfvARB GLEW_GET_FUN(__glewGetProgramLocalParameterfvARB) -#define glGetProgramStringARB GLEW_GET_FUN(__glewGetProgramStringARB) -#define glGetProgramivARB GLEW_GET_FUN(__glewGetProgramivARB) -#define glGetVertexAttribPointervARB GLEW_GET_FUN(__glewGetVertexAttribPointervARB) -#define glGetVertexAttribdvARB GLEW_GET_FUN(__glewGetVertexAttribdvARB) -#define glGetVertexAttribfvARB GLEW_GET_FUN(__glewGetVertexAttribfvARB) -#define glGetVertexAttribivARB GLEW_GET_FUN(__glewGetVertexAttribivARB) -#define glIsProgramARB GLEW_GET_FUN(__glewIsProgramARB) -#define glProgramEnvParameter4dARB GLEW_GET_FUN(__glewProgramEnvParameter4dARB) -#define glProgramEnvParameter4dvARB GLEW_GET_FUN(__glewProgramEnvParameter4dvARB) -#define glProgramEnvParameter4fARB GLEW_GET_FUN(__glewProgramEnvParameter4fARB) -#define glProgramEnvParameter4fvARB GLEW_GET_FUN(__glewProgramEnvParameter4fvARB) -#define glProgramLocalParameter4dARB GLEW_GET_FUN(__glewProgramLocalParameter4dARB) -#define glProgramLocalParameter4dvARB GLEW_GET_FUN(__glewProgramLocalParameter4dvARB) -#define glProgramLocalParameter4fARB GLEW_GET_FUN(__glewProgramLocalParameter4fARB) -#define glProgramLocalParameter4fvARB GLEW_GET_FUN(__glewProgramLocalParameter4fvARB) -#define glProgramStringARB GLEW_GET_FUN(__glewProgramStringARB) -#define glVertexAttrib1dARB GLEW_GET_FUN(__glewVertexAttrib1dARB) -#define glVertexAttrib1dvARB GLEW_GET_FUN(__glewVertexAttrib1dvARB) -#define glVertexAttrib1fARB GLEW_GET_FUN(__glewVertexAttrib1fARB) -#define glVertexAttrib1fvARB GLEW_GET_FUN(__glewVertexAttrib1fvARB) -#define glVertexAttrib1sARB GLEW_GET_FUN(__glewVertexAttrib1sARB) -#define glVertexAttrib1svARB GLEW_GET_FUN(__glewVertexAttrib1svARB) -#define glVertexAttrib2dARB GLEW_GET_FUN(__glewVertexAttrib2dARB) -#define glVertexAttrib2dvARB GLEW_GET_FUN(__glewVertexAttrib2dvARB) -#define glVertexAttrib2fARB GLEW_GET_FUN(__glewVertexAttrib2fARB) -#define glVertexAttrib2fvARB GLEW_GET_FUN(__glewVertexAttrib2fvARB) -#define glVertexAttrib2sARB GLEW_GET_FUN(__glewVertexAttrib2sARB) -#define glVertexAttrib2svARB GLEW_GET_FUN(__glewVertexAttrib2svARB) -#define glVertexAttrib3dARB GLEW_GET_FUN(__glewVertexAttrib3dARB) -#define glVertexAttrib3dvARB GLEW_GET_FUN(__glewVertexAttrib3dvARB) -#define glVertexAttrib3fARB GLEW_GET_FUN(__glewVertexAttrib3fARB) -#define glVertexAttrib3fvARB GLEW_GET_FUN(__glewVertexAttrib3fvARB) -#define glVertexAttrib3sARB GLEW_GET_FUN(__glewVertexAttrib3sARB) -#define glVertexAttrib3svARB GLEW_GET_FUN(__glewVertexAttrib3svARB) -#define glVertexAttrib4NbvARB GLEW_GET_FUN(__glewVertexAttrib4NbvARB) -#define glVertexAttrib4NivARB GLEW_GET_FUN(__glewVertexAttrib4NivARB) -#define glVertexAttrib4NsvARB GLEW_GET_FUN(__glewVertexAttrib4NsvARB) -#define glVertexAttrib4NubARB GLEW_GET_FUN(__glewVertexAttrib4NubARB) -#define glVertexAttrib4NubvARB GLEW_GET_FUN(__glewVertexAttrib4NubvARB) -#define glVertexAttrib4NuivARB GLEW_GET_FUN(__glewVertexAttrib4NuivARB) -#define glVertexAttrib4NusvARB GLEW_GET_FUN(__glewVertexAttrib4NusvARB) -#define glVertexAttrib4bvARB GLEW_GET_FUN(__glewVertexAttrib4bvARB) -#define glVertexAttrib4dARB GLEW_GET_FUN(__glewVertexAttrib4dARB) -#define glVertexAttrib4dvARB GLEW_GET_FUN(__glewVertexAttrib4dvARB) -#define glVertexAttrib4fARB GLEW_GET_FUN(__glewVertexAttrib4fARB) -#define glVertexAttrib4fvARB GLEW_GET_FUN(__glewVertexAttrib4fvARB) -#define glVertexAttrib4ivARB GLEW_GET_FUN(__glewVertexAttrib4ivARB) -#define glVertexAttrib4sARB GLEW_GET_FUN(__glewVertexAttrib4sARB) -#define glVertexAttrib4svARB GLEW_GET_FUN(__glewVertexAttrib4svARB) -#define glVertexAttrib4ubvARB GLEW_GET_FUN(__glewVertexAttrib4ubvARB) -#define glVertexAttrib4uivARB GLEW_GET_FUN(__glewVertexAttrib4uivARB) -#define glVertexAttrib4usvARB GLEW_GET_FUN(__glewVertexAttrib4usvARB) -#define glVertexAttribPointerARB GLEW_GET_FUN(__glewVertexAttribPointerARB) - -#define GLEW_ARB_vertex_program GLEW_GET_VAR(__GLEW_ARB_vertex_program) - -#endif /* GL_ARB_vertex_program */ - -/* -------------------------- GL_ARB_vertex_shader ------------------------- */ - -#ifndef GL_ARB_vertex_shader -#define GL_ARB_vertex_shader 1 - -#define GL_VERTEX_SHADER_ARB 0x8B31 -#define GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB 0x8B4A -#define GL_MAX_VARYING_FLOATS_ARB 0x8B4B -#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C -#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB 0x8B4D -#define GL_OBJECT_ACTIVE_ATTRIBUTES_ARB 0x8B89 -#define GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB 0x8B8A - -typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONARBPROC) (GLhandleARB programObj, GLuint index, const GLcharARB* name); -typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name); -typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB* name); - -#define glBindAttribLocationARB GLEW_GET_FUN(__glewBindAttribLocationARB) -#define glGetActiveAttribARB GLEW_GET_FUN(__glewGetActiveAttribARB) -#define glGetAttribLocationARB GLEW_GET_FUN(__glewGetAttribLocationARB) - -#define GLEW_ARB_vertex_shader GLEW_GET_VAR(__GLEW_ARB_vertex_shader) - -#endif /* GL_ARB_vertex_shader */ - -/* ------------------- GL_ARB_vertex_type_10f_11f_11f_rev ------------------ */ - -#ifndef GL_ARB_vertex_type_10f_11f_11f_rev -#define GL_ARB_vertex_type_10f_11f_11f_rev 1 - -#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B - -#define GLEW_ARB_vertex_type_10f_11f_11f_rev GLEW_GET_VAR(__GLEW_ARB_vertex_type_10f_11f_11f_rev) - -#endif /* GL_ARB_vertex_type_10f_11f_11f_rev */ - -/* ------------------- GL_ARB_vertex_type_2_10_10_10_rev ------------------- */ - -#ifndef GL_ARB_vertex_type_2_10_10_10_rev -#define GL_ARB_vertex_type_2_10_10_10_rev 1 - -#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 -#define GL_INT_2_10_10_10_REV 0x8D9F - -typedef void (GLAPIENTRY * PFNGLCOLORP3UIPROC) (GLenum type, GLuint color); -typedef void (GLAPIENTRY * PFNGLCOLORP3UIVPROC) (GLenum type, const GLuint* color); -typedef void (GLAPIENTRY * PFNGLCOLORP4UIPROC) (GLenum type, GLuint color); -typedef void (GLAPIENTRY * PFNGLCOLORP4UIVPROC) (GLenum type, const GLuint* color); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP1UIPROC) (GLenum texture, GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP1UIVPROC) (GLenum texture, GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP2UIPROC) (GLenum texture, GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP2UIVPROC) (GLenum texture, GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP3UIPROC) (GLenum texture, GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP3UIVPROC) (GLenum texture, GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP4UIPROC) (GLenum texture, GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP4UIVPROC) (GLenum texture, GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLNORMALP3UIPROC) (GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLNORMALP3UIVPROC) (GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORP3UIPROC) (GLenum type, GLuint color); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORP3UIVPROC) (GLenum type, const GLuint* color); -typedef void (GLAPIENTRY * PFNGLTEXCOORDP1UIPROC) (GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLTEXCOORDP1UIVPROC) (GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLTEXCOORDP2UIPROC) (GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLTEXCOORDP2UIVPROC) (GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLTEXCOORDP3UIPROC) (GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLTEXCOORDP3UIVPROC) (GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLTEXCOORDP4UIPROC) (GLenum type, GLuint coords); -typedef void (GLAPIENTRY * PFNGLTEXCOORDP4UIVPROC) (GLenum type, const GLuint* coords); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP1UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP1UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP2UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP2UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP3UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP3UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP4UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP4UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLVERTEXP2UIPROC) (GLenum type, GLuint value); -typedef void (GLAPIENTRY * PFNGLVERTEXP2UIVPROC) (GLenum type, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLVERTEXP3UIPROC) (GLenum type, GLuint value); -typedef void (GLAPIENTRY * PFNGLVERTEXP3UIVPROC) (GLenum type, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLVERTEXP4UIPROC) (GLenum type, GLuint value); -typedef void (GLAPIENTRY * PFNGLVERTEXP4UIVPROC) (GLenum type, const GLuint* value); - -#define glColorP3ui GLEW_GET_FUN(__glewColorP3ui) -#define glColorP3uiv GLEW_GET_FUN(__glewColorP3uiv) -#define glColorP4ui GLEW_GET_FUN(__glewColorP4ui) -#define glColorP4uiv GLEW_GET_FUN(__glewColorP4uiv) -#define glMultiTexCoordP1ui GLEW_GET_FUN(__glewMultiTexCoordP1ui) -#define glMultiTexCoordP1uiv GLEW_GET_FUN(__glewMultiTexCoordP1uiv) -#define glMultiTexCoordP2ui GLEW_GET_FUN(__glewMultiTexCoordP2ui) -#define glMultiTexCoordP2uiv GLEW_GET_FUN(__glewMultiTexCoordP2uiv) -#define glMultiTexCoordP3ui GLEW_GET_FUN(__glewMultiTexCoordP3ui) -#define glMultiTexCoordP3uiv GLEW_GET_FUN(__glewMultiTexCoordP3uiv) -#define glMultiTexCoordP4ui GLEW_GET_FUN(__glewMultiTexCoordP4ui) -#define glMultiTexCoordP4uiv GLEW_GET_FUN(__glewMultiTexCoordP4uiv) -#define glNormalP3ui GLEW_GET_FUN(__glewNormalP3ui) -#define glNormalP3uiv GLEW_GET_FUN(__glewNormalP3uiv) -#define glSecondaryColorP3ui GLEW_GET_FUN(__glewSecondaryColorP3ui) -#define glSecondaryColorP3uiv GLEW_GET_FUN(__glewSecondaryColorP3uiv) -#define glTexCoordP1ui GLEW_GET_FUN(__glewTexCoordP1ui) -#define glTexCoordP1uiv GLEW_GET_FUN(__glewTexCoordP1uiv) -#define glTexCoordP2ui GLEW_GET_FUN(__glewTexCoordP2ui) -#define glTexCoordP2uiv GLEW_GET_FUN(__glewTexCoordP2uiv) -#define glTexCoordP3ui GLEW_GET_FUN(__glewTexCoordP3ui) -#define glTexCoordP3uiv GLEW_GET_FUN(__glewTexCoordP3uiv) -#define glTexCoordP4ui GLEW_GET_FUN(__glewTexCoordP4ui) -#define glTexCoordP4uiv GLEW_GET_FUN(__glewTexCoordP4uiv) -#define glVertexAttribP1ui GLEW_GET_FUN(__glewVertexAttribP1ui) -#define glVertexAttribP1uiv GLEW_GET_FUN(__glewVertexAttribP1uiv) -#define glVertexAttribP2ui GLEW_GET_FUN(__glewVertexAttribP2ui) -#define glVertexAttribP2uiv GLEW_GET_FUN(__glewVertexAttribP2uiv) -#define glVertexAttribP3ui GLEW_GET_FUN(__glewVertexAttribP3ui) -#define glVertexAttribP3uiv GLEW_GET_FUN(__glewVertexAttribP3uiv) -#define glVertexAttribP4ui GLEW_GET_FUN(__glewVertexAttribP4ui) -#define glVertexAttribP4uiv GLEW_GET_FUN(__glewVertexAttribP4uiv) -#define glVertexP2ui GLEW_GET_FUN(__glewVertexP2ui) -#define glVertexP2uiv GLEW_GET_FUN(__glewVertexP2uiv) -#define glVertexP3ui GLEW_GET_FUN(__glewVertexP3ui) -#define glVertexP3uiv GLEW_GET_FUN(__glewVertexP3uiv) -#define glVertexP4ui GLEW_GET_FUN(__glewVertexP4ui) -#define glVertexP4uiv GLEW_GET_FUN(__glewVertexP4uiv) - -#define GLEW_ARB_vertex_type_2_10_10_10_rev GLEW_GET_VAR(__GLEW_ARB_vertex_type_2_10_10_10_rev) - -#endif /* GL_ARB_vertex_type_2_10_10_10_rev */ - -/* ------------------------- GL_ARB_viewport_array ------------------------- */ - -#ifndef GL_ARB_viewport_array -#define GL_ARB_viewport_array 1 - -#define GL_DEPTH_RANGE 0x0B70 -#define GL_VIEWPORT 0x0BA2 -#define GL_SCISSOR_BOX 0x0C10 -#define GL_SCISSOR_TEST 0x0C11 -#define GL_MAX_VIEWPORTS 0x825B -#define GL_VIEWPORT_SUBPIXEL_BITS 0x825C -#define GL_VIEWPORT_BOUNDS_RANGE 0x825D -#define GL_LAYER_PROVOKING_VERTEX 0x825E -#define GL_VIEWPORT_INDEX_PROVOKING_VERTEX 0x825F -#define GL_UNDEFINED_VERTEX 0x8260 -#define GL_FIRST_VERTEX_CONVENTION 0x8E4D -#define GL_LAST_VERTEX_CONVENTION 0x8E4E -#define GL_PROVOKING_VERTEX 0x8E4F - -typedef void (GLAPIENTRY * PFNGLDEPTHRANGEARRAYVPROC) (GLuint first, GLsizei count, const GLclampd * v); -typedef void (GLAPIENTRY * PFNGLDEPTHRANGEINDEXEDPROC) (GLuint index, GLclampd n, GLclampd f); -typedef void (GLAPIENTRY * PFNGLGETDOUBLEI_VPROC) (GLenum target, GLuint index, GLdouble* data); -typedef void (GLAPIENTRY * PFNGLGETFLOATI_VPROC) (GLenum target, GLuint index, GLfloat* data); -typedef void (GLAPIENTRY * PFNGLSCISSORARRAYVPROC) (GLuint first, GLsizei count, const GLint * v); -typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDPROC) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDVPROC) (GLuint index, const GLint * v); -typedef void (GLAPIENTRY * PFNGLVIEWPORTARRAYVPROC) (GLuint first, GLsizei count, const GLfloat * v); -typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h); -typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFVPROC) (GLuint index, const GLfloat * v); - -#define glDepthRangeArrayv GLEW_GET_FUN(__glewDepthRangeArrayv) -#define glDepthRangeIndexed GLEW_GET_FUN(__glewDepthRangeIndexed) -#define glGetDoublei_v GLEW_GET_FUN(__glewGetDoublei_v) -#define glGetFloati_v GLEW_GET_FUN(__glewGetFloati_v) -#define glScissorArrayv GLEW_GET_FUN(__glewScissorArrayv) -#define glScissorIndexed GLEW_GET_FUN(__glewScissorIndexed) -#define glScissorIndexedv GLEW_GET_FUN(__glewScissorIndexedv) -#define glViewportArrayv GLEW_GET_FUN(__glewViewportArrayv) -#define glViewportIndexedf GLEW_GET_FUN(__glewViewportIndexedf) -#define glViewportIndexedfv GLEW_GET_FUN(__glewViewportIndexedfv) - -#define GLEW_ARB_viewport_array GLEW_GET_VAR(__GLEW_ARB_viewport_array) - -#endif /* GL_ARB_viewport_array */ - -/* --------------------------- GL_ARB_window_pos --------------------------- */ - -#ifndef GL_ARB_window_pos -#define GL_ARB_window_pos 1 - -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DARBPROC) (GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVARBPROC) (const GLdouble* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FARBPROC) (GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVARBPROC) (const GLfloat* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IARBPROC) (GLint x, GLint y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVARBPROC) (const GLint* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SARBPROC) (GLshort x, GLshort y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVARBPROC) (const GLshort* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DARBPROC) (GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVARBPROC) (const GLdouble* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FARBPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVARBPROC) (const GLfloat* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IARBPROC) (GLint x, GLint y, GLint z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVARBPROC) (const GLint* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SARBPROC) (GLshort x, GLshort y, GLshort z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVARBPROC) (const GLshort* p); - -#define glWindowPos2dARB GLEW_GET_FUN(__glewWindowPos2dARB) -#define glWindowPos2dvARB GLEW_GET_FUN(__glewWindowPos2dvARB) -#define glWindowPos2fARB GLEW_GET_FUN(__glewWindowPos2fARB) -#define glWindowPos2fvARB GLEW_GET_FUN(__glewWindowPos2fvARB) -#define glWindowPos2iARB GLEW_GET_FUN(__glewWindowPos2iARB) -#define glWindowPos2ivARB GLEW_GET_FUN(__glewWindowPos2ivARB) -#define glWindowPos2sARB GLEW_GET_FUN(__glewWindowPos2sARB) -#define glWindowPos2svARB GLEW_GET_FUN(__glewWindowPos2svARB) -#define glWindowPos3dARB GLEW_GET_FUN(__glewWindowPos3dARB) -#define glWindowPos3dvARB GLEW_GET_FUN(__glewWindowPos3dvARB) -#define glWindowPos3fARB GLEW_GET_FUN(__glewWindowPos3fARB) -#define glWindowPos3fvARB GLEW_GET_FUN(__glewWindowPos3fvARB) -#define glWindowPos3iARB GLEW_GET_FUN(__glewWindowPos3iARB) -#define glWindowPos3ivARB GLEW_GET_FUN(__glewWindowPos3ivARB) -#define glWindowPos3sARB GLEW_GET_FUN(__glewWindowPos3sARB) -#define glWindowPos3svARB GLEW_GET_FUN(__glewWindowPos3svARB) - -#define GLEW_ARB_window_pos GLEW_GET_VAR(__GLEW_ARB_window_pos) - -#endif /* GL_ARB_window_pos */ - -/* ----------------------- GL_ARM_mali_program_binary ---------------------- */ - -#ifndef GL_ARM_mali_program_binary -#define GL_ARM_mali_program_binary 1 - -#define GL_MALI_PROGRAM_BINARY_ARM 0x8F61 - -#define GLEW_ARM_mali_program_binary GLEW_GET_VAR(__GLEW_ARM_mali_program_binary) - -#endif /* GL_ARM_mali_program_binary */ - -/* ----------------------- GL_ARM_mali_shader_binary ----------------------- */ - -#ifndef GL_ARM_mali_shader_binary -#define GL_ARM_mali_shader_binary 1 - -#define GL_MALI_SHADER_BINARY_ARM 0x8F60 - -#define GLEW_ARM_mali_shader_binary GLEW_GET_VAR(__GLEW_ARM_mali_shader_binary) - -#endif /* GL_ARM_mali_shader_binary */ - -/* ------------------------------ GL_ARM_rgba8 ----------------------------- */ - -#ifndef GL_ARM_rgba8 -#define GL_ARM_rgba8 1 - -#define GL_RGBA8_OES 0x8058 - -#define GLEW_ARM_rgba8 GLEW_GET_VAR(__GLEW_ARM_rgba8) - -#endif /* GL_ARM_rgba8 */ - -/* -------------------- GL_ARM_shader_framebuffer_fetch -------------------- */ - -#ifndef GL_ARM_shader_framebuffer_fetch -#define GL_ARM_shader_framebuffer_fetch 1 - -#define GL_FETCH_PER_SAMPLE_ARM 0x8F65 -#define GL_FRAGMENT_SHADER_FRAMEBUFFER_FETCH_MRT_ARM 0x8F66 - -#define GLEW_ARM_shader_framebuffer_fetch GLEW_GET_VAR(__GLEW_ARM_shader_framebuffer_fetch) - -#endif /* GL_ARM_shader_framebuffer_fetch */ - -/* ------------- GL_ARM_shader_framebuffer_fetch_depth_stencil ------------- */ - -#ifndef GL_ARM_shader_framebuffer_fetch_depth_stencil -#define GL_ARM_shader_framebuffer_fetch_depth_stencil 1 - -#define GLEW_ARM_shader_framebuffer_fetch_depth_stencil GLEW_GET_VAR(__GLEW_ARM_shader_framebuffer_fetch_depth_stencil) - -#endif /* GL_ARM_shader_framebuffer_fetch_depth_stencil */ - -/* ---------------- GL_ARM_texture_unnormalized_coordinates ---------------- */ - -#ifndef GL_ARM_texture_unnormalized_coordinates -#define GL_ARM_texture_unnormalized_coordinates 1 - -#define GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM 0x8F6A - -#define GLEW_ARM_texture_unnormalized_coordinates GLEW_GET_VAR(__GLEW_ARM_texture_unnormalized_coordinates) - -#endif /* GL_ARM_texture_unnormalized_coordinates */ - -/* ------------------------- GL_ATIX_point_sprites ------------------------- */ - -#ifndef GL_ATIX_point_sprites -#define GL_ATIX_point_sprites 1 - -#define GL_TEXTURE_POINT_MODE_ATIX 0x60B0 -#define GL_TEXTURE_POINT_ONE_COORD_ATIX 0x60B1 -#define GL_TEXTURE_POINT_SPRITE_ATIX 0x60B2 -#define GL_POINT_SPRITE_CULL_MODE_ATIX 0x60B3 -#define GL_POINT_SPRITE_CULL_CENTER_ATIX 0x60B4 -#define GL_POINT_SPRITE_CULL_CLIP_ATIX 0x60B5 - -#define GLEW_ATIX_point_sprites GLEW_GET_VAR(__GLEW_ATIX_point_sprites) - -#endif /* GL_ATIX_point_sprites */ - -/* ---------------------- GL_ATIX_texture_env_combine3 --------------------- */ - -#ifndef GL_ATIX_texture_env_combine3 -#define GL_ATIX_texture_env_combine3 1 - -#define GL_MODULATE_ADD_ATIX 0x8744 -#define GL_MODULATE_SIGNED_ADD_ATIX 0x8745 -#define GL_MODULATE_SUBTRACT_ATIX 0x8746 - -#define GLEW_ATIX_texture_env_combine3 GLEW_GET_VAR(__GLEW_ATIX_texture_env_combine3) - -#endif /* GL_ATIX_texture_env_combine3 */ - -/* ----------------------- GL_ATIX_texture_env_route ----------------------- */ - -#ifndef GL_ATIX_texture_env_route -#define GL_ATIX_texture_env_route 1 - -#define GL_SECONDARY_COLOR_ATIX 0x8747 -#define GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748 -#define GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749 - -#define GLEW_ATIX_texture_env_route GLEW_GET_VAR(__GLEW_ATIX_texture_env_route) - -#endif /* GL_ATIX_texture_env_route */ - -/* ---------------- GL_ATIX_vertex_shader_output_point_size ---------------- */ - -#ifndef GL_ATIX_vertex_shader_output_point_size -#define GL_ATIX_vertex_shader_output_point_size 1 - -#define GL_OUTPUT_POINT_SIZE_ATIX 0x610E - -#define GLEW_ATIX_vertex_shader_output_point_size GLEW_GET_VAR(__GLEW_ATIX_vertex_shader_output_point_size) - -#endif /* GL_ATIX_vertex_shader_output_point_size */ - -/* -------------------------- GL_ATI_draw_buffers -------------------------- */ - -#ifndef GL_ATI_draw_buffers -#define GL_ATI_draw_buffers 1 - -#define GL_MAX_DRAW_BUFFERS_ATI 0x8824 -#define GL_DRAW_BUFFER0_ATI 0x8825 -#define GL_DRAW_BUFFER1_ATI 0x8826 -#define GL_DRAW_BUFFER2_ATI 0x8827 -#define GL_DRAW_BUFFER3_ATI 0x8828 -#define GL_DRAW_BUFFER4_ATI 0x8829 -#define GL_DRAW_BUFFER5_ATI 0x882A -#define GL_DRAW_BUFFER6_ATI 0x882B -#define GL_DRAW_BUFFER7_ATI 0x882C -#define GL_DRAW_BUFFER8_ATI 0x882D -#define GL_DRAW_BUFFER9_ATI 0x882E -#define GL_DRAW_BUFFER10_ATI 0x882F -#define GL_DRAW_BUFFER11_ATI 0x8830 -#define GL_DRAW_BUFFER12_ATI 0x8831 -#define GL_DRAW_BUFFER13_ATI 0x8832 -#define GL_DRAW_BUFFER14_ATI 0x8833 -#define GL_DRAW_BUFFER15_ATI 0x8834 - -typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSATIPROC) (GLsizei n, const GLenum* bufs); - -#define glDrawBuffersATI GLEW_GET_FUN(__glewDrawBuffersATI) - -#define GLEW_ATI_draw_buffers GLEW_GET_VAR(__GLEW_ATI_draw_buffers) - -#endif /* GL_ATI_draw_buffers */ - -/* -------------------------- GL_ATI_element_array ------------------------- */ - -#ifndef GL_ATI_element_array -#define GL_ATI_element_array 1 - -#define GL_ELEMENT_ARRAY_ATI 0x8768 -#define GL_ELEMENT_ARRAY_TYPE_ATI 0x8769 -#define GL_ELEMENT_ARRAY_POINTER_ATI 0x876A - -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTARRAYATIPROC) (GLenum mode, GLsizei count); -typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTARRAYATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count); -typedef void (GLAPIENTRY * PFNGLELEMENTPOINTERATIPROC) (GLenum type, const void *pointer); - -#define glDrawElementArrayATI GLEW_GET_FUN(__glewDrawElementArrayATI) -#define glDrawRangeElementArrayATI GLEW_GET_FUN(__glewDrawRangeElementArrayATI) -#define glElementPointerATI GLEW_GET_FUN(__glewElementPointerATI) - -#define GLEW_ATI_element_array GLEW_GET_VAR(__GLEW_ATI_element_array) - -#endif /* GL_ATI_element_array */ - -/* ------------------------- GL_ATI_envmap_bumpmap ------------------------- */ - -#ifndef GL_ATI_envmap_bumpmap -#define GL_ATI_envmap_bumpmap 1 - -#define GL_BUMP_ROT_MATRIX_ATI 0x8775 -#define GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776 -#define GL_BUMP_NUM_TEX_UNITS_ATI 0x8777 -#define GL_BUMP_TEX_UNITS_ATI 0x8778 -#define GL_DUDV_ATI 0x8779 -#define GL_DU8DV8_ATI 0x877A -#define GL_BUMP_ENVMAP_ATI 0x877B -#define GL_BUMP_TARGET_ATI 0x877C - -typedef void (GLAPIENTRY * PFNGLGETTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param); -typedef void (GLAPIENTRY * PFNGLGETTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param); -typedef void (GLAPIENTRY * PFNGLTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param); -typedef void (GLAPIENTRY * PFNGLTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param); - -#define glGetTexBumpParameterfvATI GLEW_GET_FUN(__glewGetTexBumpParameterfvATI) -#define glGetTexBumpParameterivATI GLEW_GET_FUN(__glewGetTexBumpParameterivATI) -#define glTexBumpParameterfvATI GLEW_GET_FUN(__glewTexBumpParameterfvATI) -#define glTexBumpParameterivATI GLEW_GET_FUN(__glewTexBumpParameterivATI) - -#define GLEW_ATI_envmap_bumpmap GLEW_GET_VAR(__GLEW_ATI_envmap_bumpmap) - -#endif /* GL_ATI_envmap_bumpmap */ - -/* ------------------------- GL_ATI_fragment_shader ------------------------ */ - -#ifndef GL_ATI_fragment_shader -#define GL_ATI_fragment_shader 1 - -#define GL_2X_BIT_ATI 0x00000001 -#define GL_RED_BIT_ATI 0x00000001 -#define GL_4X_BIT_ATI 0x00000002 -#define GL_COMP_BIT_ATI 0x00000002 -#define GL_GREEN_BIT_ATI 0x00000002 -#define GL_8X_BIT_ATI 0x00000004 -#define GL_BLUE_BIT_ATI 0x00000004 -#define GL_NEGATE_BIT_ATI 0x00000004 -#define GL_BIAS_BIT_ATI 0x00000008 -#define GL_HALF_BIT_ATI 0x00000008 -#define GL_QUARTER_BIT_ATI 0x00000010 -#define GL_EIGHTH_BIT_ATI 0x00000020 -#define GL_SATURATE_BIT_ATI 0x00000040 -#define GL_FRAGMENT_SHADER_ATI 0x8920 -#define GL_REG_0_ATI 0x8921 -#define GL_REG_1_ATI 0x8922 -#define GL_REG_2_ATI 0x8923 -#define GL_REG_3_ATI 0x8924 -#define GL_REG_4_ATI 0x8925 -#define GL_REG_5_ATI 0x8926 -#define GL_CON_0_ATI 0x8941 -#define GL_CON_1_ATI 0x8942 -#define GL_CON_2_ATI 0x8943 -#define GL_CON_3_ATI 0x8944 -#define GL_CON_4_ATI 0x8945 -#define GL_CON_5_ATI 0x8946 -#define GL_CON_6_ATI 0x8947 -#define GL_CON_7_ATI 0x8948 -#define GL_MOV_ATI 0x8961 -#define GL_ADD_ATI 0x8963 -#define GL_MUL_ATI 0x8964 -#define GL_SUB_ATI 0x8965 -#define GL_DOT3_ATI 0x8966 -#define GL_DOT4_ATI 0x8967 -#define GL_MAD_ATI 0x8968 -#define GL_LERP_ATI 0x8969 -#define GL_CND_ATI 0x896A -#define GL_CND0_ATI 0x896B -#define GL_DOT2_ADD_ATI 0x896C -#define GL_SECONDARY_INTERPOLATOR_ATI 0x896D -#define GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E -#define GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F -#define GL_NUM_PASSES_ATI 0x8970 -#define GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971 -#define GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972 -#define GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973 -#define GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974 -#define GL_COLOR_ALPHA_PAIRING_ATI 0x8975 -#define GL_SWIZZLE_STR_ATI 0x8976 -#define GL_SWIZZLE_STQ_ATI 0x8977 -#define GL_SWIZZLE_STR_DR_ATI 0x8978 -#define GL_SWIZZLE_STQ_DQ_ATI 0x8979 -#define GL_SWIZZLE_STRQ_ATI 0x897A -#define GL_SWIZZLE_STRQ_DQ_ATI 0x897B - -typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); -typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); -typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); -typedef void (GLAPIENTRY * PFNGLBEGINFRAGMENTSHADERATIPROC) (void); -typedef void (GLAPIENTRY * PFNGLBINDFRAGMENTSHADERATIPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); -typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); -typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); -typedef void (GLAPIENTRY * PFNGLDELETEFRAGMENTSHADERATIPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLENDFRAGMENTSHADERATIPROC) (void); -typedef GLuint (GLAPIENTRY * PFNGLGENFRAGMENTSHADERSATIPROC) (GLuint range); -typedef void (GLAPIENTRY * PFNGLPASSTEXCOORDATIPROC) (GLuint dst, GLuint coord, GLenum swizzle); -typedef void (GLAPIENTRY * PFNGLSAMPLEMAPATIPROC) (GLuint dst, GLuint interp, GLenum swizzle); -typedef void (GLAPIENTRY * PFNGLSETFRAGMENTSHADERCONSTANTATIPROC) (GLuint dst, const GLfloat* value); - -#define glAlphaFragmentOp1ATI GLEW_GET_FUN(__glewAlphaFragmentOp1ATI) -#define glAlphaFragmentOp2ATI GLEW_GET_FUN(__glewAlphaFragmentOp2ATI) -#define glAlphaFragmentOp3ATI GLEW_GET_FUN(__glewAlphaFragmentOp3ATI) -#define glBeginFragmentShaderATI GLEW_GET_FUN(__glewBeginFragmentShaderATI) -#define glBindFragmentShaderATI GLEW_GET_FUN(__glewBindFragmentShaderATI) -#define glColorFragmentOp1ATI GLEW_GET_FUN(__glewColorFragmentOp1ATI) -#define glColorFragmentOp2ATI GLEW_GET_FUN(__glewColorFragmentOp2ATI) -#define glColorFragmentOp3ATI GLEW_GET_FUN(__glewColorFragmentOp3ATI) -#define glDeleteFragmentShaderATI GLEW_GET_FUN(__glewDeleteFragmentShaderATI) -#define glEndFragmentShaderATI GLEW_GET_FUN(__glewEndFragmentShaderATI) -#define glGenFragmentShadersATI GLEW_GET_FUN(__glewGenFragmentShadersATI) -#define glPassTexCoordATI GLEW_GET_FUN(__glewPassTexCoordATI) -#define glSampleMapATI GLEW_GET_FUN(__glewSampleMapATI) -#define glSetFragmentShaderConstantATI GLEW_GET_FUN(__glewSetFragmentShaderConstantATI) - -#define GLEW_ATI_fragment_shader GLEW_GET_VAR(__GLEW_ATI_fragment_shader) - -#endif /* GL_ATI_fragment_shader */ - -/* ------------------------ GL_ATI_map_object_buffer ----------------------- */ - -#ifndef GL_ATI_map_object_buffer -#define GL_ATI_map_object_buffer 1 - -typedef void * (GLAPIENTRY * PFNGLMAPOBJECTBUFFERATIPROC) (GLuint buffer); -typedef void (GLAPIENTRY * PFNGLUNMAPOBJECTBUFFERATIPROC) (GLuint buffer); - -#define glMapObjectBufferATI GLEW_GET_FUN(__glewMapObjectBufferATI) -#define glUnmapObjectBufferATI GLEW_GET_FUN(__glewUnmapObjectBufferATI) - -#define GLEW_ATI_map_object_buffer GLEW_GET_VAR(__GLEW_ATI_map_object_buffer) - -#endif /* GL_ATI_map_object_buffer */ - -/* ----------------------------- GL_ATI_meminfo ---------------------------- */ - -#ifndef GL_ATI_meminfo -#define GL_ATI_meminfo 1 - -#define GL_VBO_FREE_MEMORY_ATI 0x87FB -#define GL_TEXTURE_FREE_MEMORY_ATI 0x87FC -#define GL_RENDERBUFFER_FREE_MEMORY_ATI 0x87FD - -#define GLEW_ATI_meminfo GLEW_GET_VAR(__GLEW_ATI_meminfo) - -#endif /* GL_ATI_meminfo */ - -/* -------------------------- GL_ATI_pn_triangles -------------------------- */ - -#ifndef GL_ATI_pn_triangles -#define GL_ATI_pn_triangles 1 - -#define GL_PN_TRIANGLES_ATI 0x87F0 -#define GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1 -#define GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2 -#define GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3 -#define GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4 -#define GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5 -#define GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6 -#define GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7 -#define GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8 - -typedef void (GLAPIENTRY * PFNGLPNTRIANGLESFATIPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLPNTRIANGLESIATIPROC) (GLenum pname, GLint param); - -#define glPNTrianglesfATI GLEW_GET_FUN(__glewPNTrianglesfATI) -#define glPNTrianglesiATI GLEW_GET_FUN(__glewPNTrianglesiATI) - -#define GLEW_ATI_pn_triangles GLEW_GET_VAR(__GLEW_ATI_pn_triangles) - -#endif /* GL_ATI_pn_triangles */ - -/* ------------------------ GL_ATI_separate_stencil ------------------------ */ - -#ifndef GL_ATI_separate_stencil -#define GL_ATI_separate_stencil 1 - -#define GL_STENCIL_BACK_FUNC_ATI 0x8800 -#define GL_STENCIL_BACK_FAIL_ATI 0x8801 -#define GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802 -#define GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803 - -typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); - -#define glStencilFuncSeparateATI GLEW_GET_FUN(__glewStencilFuncSeparateATI) -#define glStencilOpSeparateATI GLEW_GET_FUN(__glewStencilOpSeparateATI) - -#define GLEW_ATI_separate_stencil GLEW_GET_VAR(__GLEW_ATI_separate_stencil) - -#endif /* GL_ATI_separate_stencil */ - -/* ----------------------- GL_ATI_shader_texture_lod ----------------------- */ - -#ifndef GL_ATI_shader_texture_lod -#define GL_ATI_shader_texture_lod 1 - -#define GLEW_ATI_shader_texture_lod GLEW_GET_VAR(__GLEW_ATI_shader_texture_lod) - -#endif /* GL_ATI_shader_texture_lod */ - -/* ---------------------- GL_ATI_text_fragment_shader ---------------------- */ - -#ifndef GL_ATI_text_fragment_shader -#define GL_ATI_text_fragment_shader 1 - -#define GL_TEXT_FRAGMENT_SHADER_ATI 0x8200 - -#define GLEW_ATI_text_fragment_shader GLEW_GET_VAR(__GLEW_ATI_text_fragment_shader) - -#endif /* GL_ATI_text_fragment_shader */ - -/* --------------------- GL_ATI_texture_compression_3dc -------------------- */ - -#ifndef GL_ATI_texture_compression_3dc -#define GL_ATI_texture_compression_3dc 1 - -#define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837 - -#define GLEW_ATI_texture_compression_3dc GLEW_GET_VAR(__GLEW_ATI_texture_compression_3dc) - -#endif /* GL_ATI_texture_compression_3dc */ - -/* ---------------------- GL_ATI_texture_env_combine3 ---------------------- */ - -#ifndef GL_ATI_texture_env_combine3 -#define GL_ATI_texture_env_combine3 1 - -#define GL_MODULATE_ADD_ATI 0x8744 -#define GL_MODULATE_SIGNED_ADD_ATI 0x8745 -#define GL_MODULATE_SUBTRACT_ATI 0x8746 - -#define GLEW_ATI_texture_env_combine3 GLEW_GET_VAR(__GLEW_ATI_texture_env_combine3) - -#endif /* GL_ATI_texture_env_combine3 */ - -/* -------------------------- GL_ATI_texture_float ------------------------- */ - -#ifndef GL_ATI_texture_float -#define GL_ATI_texture_float 1 - -#define GL_RGBA_FLOAT32_ATI 0x8814 -#define GL_RGB_FLOAT32_ATI 0x8815 -#define GL_ALPHA_FLOAT32_ATI 0x8816 -#define GL_INTENSITY_FLOAT32_ATI 0x8817 -#define GL_LUMINANCE_FLOAT32_ATI 0x8818 -#define GL_LUMINANCE_ALPHA_FLOAT32_ATI 0x8819 -#define GL_RGBA_FLOAT16_ATI 0x881A -#define GL_RGB_FLOAT16_ATI 0x881B -#define GL_ALPHA_FLOAT16_ATI 0x881C -#define GL_INTENSITY_FLOAT16_ATI 0x881D -#define GL_LUMINANCE_FLOAT16_ATI 0x881E -#define GL_LUMINANCE_ALPHA_FLOAT16_ATI 0x881F - -#define GLEW_ATI_texture_float GLEW_GET_VAR(__GLEW_ATI_texture_float) - -#endif /* GL_ATI_texture_float */ - -/* ----------------------- GL_ATI_texture_mirror_once ---------------------- */ - -#ifndef GL_ATI_texture_mirror_once -#define GL_ATI_texture_mirror_once 1 - -#define GL_MIRROR_CLAMP_ATI 0x8742 -#define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743 - -#define GLEW_ATI_texture_mirror_once GLEW_GET_VAR(__GLEW_ATI_texture_mirror_once) - -#endif /* GL_ATI_texture_mirror_once */ - -/* ----------------------- GL_ATI_vertex_array_object ---------------------- */ - -#ifndef GL_ATI_vertex_array_object -#define GL_ATI_vertex_array_object 1 - -#define GL_STATIC_ATI 0x8760 -#define GL_DYNAMIC_ATI 0x8761 -#define GL_PRESERVE_ATI 0x8762 -#define GL_DISCARD_ATI 0x8763 -#define GL_OBJECT_BUFFER_SIZE_ATI 0x8764 -#define GL_OBJECT_BUFFER_USAGE_ATI 0x8765 -#define GL_ARRAY_OBJECT_BUFFER_ATI 0x8766 -#define GL_ARRAY_OBJECT_OFFSET_ATI 0x8767 - -typedef void (GLAPIENTRY * PFNGLARRAYOBJECTATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); -typedef void (GLAPIENTRY * PFNGLFREEOBJECTBUFFERATIPROC) (GLuint buffer); -typedef void (GLAPIENTRY * PFNGLGETARRAYOBJECTFVATIPROC) (GLenum array, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETARRAYOBJECTIVATIPROC) (GLenum array, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETOBJECTBUFFERFVATIPROC) (GLuint buffer, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETOBJECTBUFFERIVATIPROC) (GLuint buffer, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETVARIANTARRAYOBJECTFVATIPROC) (GLuint id, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETVARIANTARRAYOBJECTIVATIPROC) (GLuint id, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISOBJECTBUFFERATIPROC) (GLuint buffer); -typedef GLuint (GLAPIENTRY * PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, const void *pointer, GLenum usage); -typedef void (GLAPIENTRY * PFNGLUPDATEOBJECTBUFFERATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const void *pointer, GLenum preserve); -typedef void (GLAPIENTRY * PFNGLVARIANTARRAYOBJECTATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); - -#define glArrayObjectATI GLEW_GET_FUN(__glewArrayObjectATI) -#define glFreeObjectBufferATI GLEW_GET_FUN(__glewFreeObjectBufferATI) -#define glGetArrayObjectfvATI GLEW_GET_FUN(__glewGetArrayObjectfvATI) -#define glGetArrayObjectivATI GLEW_GET_FUN(__glewGetArrayObjectivATI) -#define glGetObjectBufferfvATI GLEW_GET_FUN(__glewGetObjectBufferfvATI) -#define glGetObjectBufferivATI GLEW_GET_FUN(__glewGetObjectBufferivATI) -#define glGetVariantArrayObjectfvATI GLEW_GET_FUN(__glewGetVariantArrayObjectfvATI) -#define glGetVariantArrayObjectivATI GLEW_GET_FUN(__glewGetVariantArrayObjectivATI) -#define glIsObjectBufferATI GLEW_GET_FUN(__glewIsObjectBufferATI) -#define glNewObjectBufferATI GLEW_GET_FUN(__glewNewObjectBufferATI) -#define glUpdateObjectBufferATI GLEW_GET_FUN(__glewUpdateObjectBufferATI) -#define glVariantArrayObjectATI GLEW_GET_FUN(__glewVariantArrayObjectATI) - -#define GLEW_ATI_vertex_array_object GLEW_GET_VAR(__GLEW_ATI_vertex_array_object) - -#endif /* GL_ATI_vertex_array_object */ - -/* ------------------- GL_ATI_vertex_attrib_array_object ------------------- */ - -#ifndef GL_ATI_vertex_attrib_array_object -#define GL_ATI_vertex_attrib_array_object 1 - -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC) (GLuint index, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC) (GLuint index, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBARRAYOBJECTATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset); - -#define glGetVertexAttribArrayObjectfvATI GLEW_GET_FUN(__glewGetVertexAttribArrayObjectfvATI) -#define glGetVertexAttribArrayObjectivATI GLEW_GET_FUN(__glewGetVertexAttribArrayObjectivATI) -#define glVertexAttribArrayObjectATI GLEW_GET_FUN(__glewVertexAttribArrayObjectATI) - -#define GLEW_ATI_vertex_attrib_array_object GLEW_GET_VAR(__GLEW_ATI_vertex_attrib_array_object) - -#endif /* GL_ATI_vertex_attrib_array_object */ - -/* ------------------------- GL_ATI_vertex_streams ------------------------- */ - -#ifndef GL_ATI_vertex_streams -#define GL_ATI_vertex_streams 1 - -#define GL_MAX_VERTEX_STREAMS_ATI 0x876B -#define GL_VERTEX_SOURCE_ATI 0x876C -#define GL_VERTEX_STREAM0_ATI 0x876D -#define GL_VERTEX_STREAM1_ATI 0x876E -#define GL_VERTEX_STREAM2_ATI 0x876F -#define GL_VERTEX_STREAM3_ATI 0x8770 -#define GL_VERTEX_STREAM4_ATI 0x8771 -#define GL_VERTEX_STREAM5_ATI 0x8772 -#define GL_VERTEX_STREAM6_ATI 0x8773 -#define GL_VERTEX_STREAM7_ATI 0x8774 - -typedef void (GLAPIENTRY * PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC) (GLenum stream); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3BATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3BVATIPROC) (GLenum stream, const GLbyte *coords); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3IVATIPROC) (GLenum stream, const GLint *coords); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); -typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXBLENDENVFATIPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLVERTEXBLENDENVIATIPROC) (GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1DATIPROC) (GLenum stream, GLdouble x); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1DVATIPROC) (GLenum stream, const GLdouble *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1FATIPROC) (GLenum stream, GLfloat x); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1FVATIPROC) (GLenum stream, const GLfloat *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1IATIPROC) (GLenum stream, GLint x); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1IVATIPROC) (GLenum stream, const GLint *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1SATIPROC) (GLenum stream, GLshort x); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM1SVATIPROC) (GLenum stream, const GLshort *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2DATIPROC) (GLenum stream, GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2DVATIPROC) (GLenum stream, const GLdouble *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2FATIPROC) (GLenum stream, GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2FVATIPROC) (GLenum stream, const GLfloat *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2IATIPROC) (GLenum stream, GLint x, GLint y); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2IVATIPROC) (GLenum stream, const GLint *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2SATIPROC) (GLenum stream, GLshort x, GLshort y); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2SVATIPROC) (GLenum stream, const GLshort *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3IVATIPROC) (GLenum stream, const GLint *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4DVATIPROC) (GLenum stream, const GLdouble *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4FVATIPROC) (GLenum stream, const GLfloat *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4IATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4IVATIPROC) (GLenum stream, const GLint *coords); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4SVATIPROC) (GLenum stream, const GLshort *coords); - -#define glClientActiveVertexStreamATI GLEW_GET_FUN(__glewClientActiveVertexStreamATI) -#define glNormalStream3bATI GLEW_GET_FUN(__glewNormalStream3bATI) -#define glNormalStream3bvATI GLEW_GET_FUN(__glewNormalStream3bvATI) -#define glNormalStream3dATI GLEW_GET_FUN(__glewNormalStream3dATI) -#define glNormalStream3dvATI GLEW_GET_FUN(__glewNormalStream3dvATI) -#define glNormalStream3fATI GLEW_GET_FUN(__glewNormalStream3fATI) -#define glNormalStream3fvATI GLEW_GET_FUN(__glewNormalStream3fvATI) -#define glNormalStream3iATI GLEW_GET_FUN(__glewNormalStream3iATI) -#define glNormalStream3ivATI GLEW_GET_FUN(__glewNormalStream3ivATI) -#define glNormalStream3sATI GLEW_GET_FUN(__glewNormalStream3sATI) -#define glNormalStream3svATI GLEW_GET_FUN(__glewNormalStream3svATI) -#define glVertexBlendEnvfATI GLEW_GET_FUN(__glewVertexBlendEnvfATI) -#define glVertexBlendEnviATI GLEW_GET_FUN(__glewVertexBlendEnviATI) -#define glVertexStream1dATI GLEW_GET_FUN(__glewVertexStream1dATI) -#define glVertexStream1dvATI GLEW_GET_FUN(__glewVertexStream1dvATI) -#define glVertexStream1fATI GLEW_GET_FUN(__glewVertexStream1fATI) -#define glVertexStream1fvATI GLEW_GET_FUN(__glewVertexStream1fvATI) -#define glVertexStream1iATI GLEW_GET_FUN(__glewVertexStream1iATI) -#define glVertexStream1ivATI GLEW_GET_FUN(__glewVertexStream1ivATI) -#define glVertexStream1sATI GLEW_GET_FUN(__glewVertexStream1sATI) -#define glVertexStream1svATI GLEW_GET_FUN(__glewVertexStream1svATI) -#define glVertexStream2dATI GLEW_GET_FUN(__glewVertexStream2dATI) -#define glVertexStream2dvATI GLEW_GET_FUN(__glewVertexStream2dvATI) -#define glVertexStream2fATI GLEW_GET_FUN(__glewVertexStream2fATI) -#define glVertexStream2fvATI GLEW_GET_FUN(__glewVertexStream2fvATI) -#define glVertexStream2iATI GLEW_GET_FUN(__glewVertexStream2iATI) -#define glVertexStream2ivATI GLEW_GET_FUN(__glewVertexStream2ivATI) -#define glVertexStream2sATI GLEW_GET_FUN(__glewVertexStream2sATI) -#define glVertexStream2svATI GLEW_GET_FUN(__glewVertexStream2svATI) -#define glVertexStream3dATI GLEW_GET_FUN(__glewVertexStream3dATI) -#define glVertexStream3dvATI GLEW_GET_FUN(__glewVertexStream3dvATI) -#define glVertexStream3fATI GLEW_GET_FUN(__glewVertexStream3fATI) -#define glVertexStream3fvATI GLEW_GET_FUN(__glewVertexStream3fvATI) -#define glVertexStream3iATI GLEW_GET_FUN(__glewVertexStream3iATI) -#define glVertexStream3ivATI GLEW_GET_FUN(__glewVertexStream3ivATI) -#define glVertexStream3sATI GLEW_GET_FUN(__glewVertexStream3sATI) -#define glVertexStream3svATI GLEW_GET_FUN(__glewVertexStream3svATI) -#define glVertexStream4dATI GLEW_GET_FUN(__glewVertexStream4dATI) -#define glVertexStream4dvATI GLEW_GET_FUN(__glewVertexStream4dvATI) -#define glVertexStream4fATI GLEW_GET_FUN(__glewVertexStream4fATI) -#define glVertexStream4fvATI GLEW_GET_FUN(__glewVertexStream4fvATI) -#define glVertexStream4iATI GLEW_GET_FUN(__glewVertexStream4iATI) -#define glVertexStream4ivATI GLEW_GET_FUN(__glewVertexStream4ivATI) -#define glVertexStream4sATI GLEW_GET_FUN(__glewVertexStream4sATI) -#define glVertexStream4svATI GLEW_GET_FUN(__glewVertexStream4svATI) - -#define GLEW_ATI_vertex_streams GLEW_GET_VAR(__GLEW_ATI_vertex_streams) - -#endif /* GL_ATI_vertex_streams */ - -/* ------------------------- GL_DMP_program_binary ------------------------- */ - -#ifndef GL_DMP_program_binary -#define GL_DMP_program_binary 1 - -#define GL_SMAPHS30_PROGRAM_BINARY_DMP 0x9251 -#define GL_SMAPHS_PROGRAM_BINARY_DMP 0x9252 -#define GL_DMP_PROGRAM_BINARY_DMP 0x9253 - -#define GLEW_DMP_program_binary GLEW_GET_VAR(__GLEW_DMP_program_binary) - -#endif /* GL_DMP_program_binary */ - -/* -------------------------- GL_DMP_shader_binary ------------------------- */ - -#ifndef GL_DMP_shader_binary -#define GL_DMP_shader_binary 1 - -#define GL_SHADER_BINARY_DMP 0x9250 - -#define GLEW_DMP_shader_binary GLEW_GET_VAR(__GLEW_DMP_shader_binary) - -#endif /* GL_DMP_shader_binary */ - -/* --------------------------- GL_EXT_422_pixels --------------------------- */ - -#ifndef GL_EXT_422_pixels -#define GL_EXT_422_pixels 1 - -#define GL_422_EXT 0x80CC -#define GL_422_REV_EXT 0x80CD -#define GL_422_AVERAGE_EXT 0x80CE -#define GL_422_REV_AVERAGE_EXT 0x80CF - -#define GLEW_EXT_422_pixels GLEW_GET_VAR(__GLEW_EXT_422_pixels) - -#endif /* GL_EXT_422_pixels */ - -/* ---------------------------- GL_EXT_Cg_shader --------------------------- */ - -#ifndef GL_EXT_Cg_shader -#define GL_EXT_Cg_shader 1 - -#define GL_CG_VERTEX_SHADER_EXT 0x890E -#define GL_CG_FRAGMENT_SHADER_EXT 0x890F - -#define GLEW_EXT_Cg_shader GLEW_GET_VAR(__GLEW_EXT_Cg_shader) - -#endif /* GL_EXT_Cg_shader */ - -/* ------------------------- GL_EXT_EGL_image_array ------------------------ */ - -#ifndef GL_EXT_EGL_image_array -#define GL_EXT_EGL_image_array 1 - -#define GLEW_EXT_EGL_image_array GLEW_GET_VAR(__GLEW_EXT_EGL_image_array) - -#endif /* GL_EXT_EGL_image_array */ - -/* ------------------ GL_EXT_EGL_image_external_wrap_modes ----------------- */ - -#ifndef GL_EXT_EGL_image_external_wrap_modes -#define GL_EXT_EGL_image_external_wrap_modes 1 - -#define GLEW_EXT_EGL_image_external_wrap_modes GLEW_GET_VAR(__GLEW_EXT_EGL_image_external_wrap_modes) - -#endif /* GL_EXT_EGL_image_external_wrap_modes */ - -/* ------------------------ GL_EXT_EGL_image_storage ----------------------- */ - -#ifndef GL_EXT_EGL_image_storage -#define GL_EXT_EGL_image_storage 1 - -typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETTEXSTORAGEEXTPROC) (GLenum target, GLeglImageOES image, const GLint* attrib_list); -typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETTEXTURESTORAGEEXTPROC) (GLuint texture, GLeglImageOES image, const GLint* attrib_list); - -#define glEGLImageTargetTexStorageEXT GLEW_GET_FUN(__glewEGLImageTargetTexStorageEXT) -#define glEGLImageTargetTextureStorageEXT GLEW_GET_FUN(__glewEGLImageTargetTextureStorageEXT) - -#define GLEW_EXT_EGL_image_storage GLEW_GET_VAR(__GLEW_EXT_EGL_image_storage) - -#endif /* GL_EXT_EGL_image_storage */ - -/* ---------------------------- GL_EXT_EGL_sync ---------------------------- */ - -#ifndef GL_EXT_EGL_sync -#define GL_EXT_EGL_sync 1 - -#define GLEW_EXT_EGL_sync GLEW_GET_VAR(__GLEW_EXT_EGL_sync) - -#endif /* GL_EXT_EGL_sync */ - -/* --------------------------- GL_EXT_YUV_target --------------------------- */ - -#ifndef GL_EXT_YUV_target -#define GL_EXT_YUV_target 1 - -#define GL_SAMPLER_EXTERNAL_2D_Y2Y_EXT 0x8BE7 - -#define GLEW_EXT_YUV_target GLEW_GET_VAR(__GLEW_EXT_YUV_target) - -#endif /* GL_EXT_YUV_target */ - -/* ------------------------------ GL_EXT_abgr ------------------------------ */ - -#ifndef GL_EXT_abgr -#define GL_EXT_abgr 1 - -#define GL_ABGR_EXT 0x8000 - -#define GLEW_EXT_abgr GLEW_GET_VAR(__GLEW_EXT_abgr) - -#endif /* GL_EXT_abgr */ - -/* -------------------------- GL_EXT_base_instance ------------------------- */ - -#ifndef GL_EXT_base_instance -#define GL_EXT_base_instance 1 - -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEEXTPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance); - -#define glDrawArraysInstancedBaseInstanceEXT GLEW_GET_FUN(__glewDrawArraysInstancedBaseInstanceEXT) -#define glDrawElementsInstancedBaseInstanceEXT GLEW_GET_FUN(__glewDrawElementsInstancedBaseInstanceEXT) -#define glDrawElementsInstancedBaseVertexBaseInstanceEXT GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertexBaseInstanceEXT) - -#define GLEW_EXT_base_instance GLEW_GET_VAR(__GLEW_EXT_base_instance) - -#endif /* GL_EXT_base_instance */ - -/* ------------------------------ GL_EXT_bgra ------------------------------ */ - -#ifndef GL_EXT_bgra -#define GL_EXT_bgra 1 - -#define GL_BGR_EXT 0x80E0 -#define GL_BGRA_EXT 0x80E1 - -#define GLEW_EXT_bgra GLEW_GET_VAR(__GLEW_EXT_bgra) - -#endif /* GL_EXT_bgra */ - -/* ------------------------ GL_EXT_bindable_uniform ------------------------ */ - -#ifndef GL_EXT_bindable_uniform -#define GL_EXT_bindable_uniform 1 - -#define GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT 0x8DE2 -#define GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT 0x8DE3 -#define GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT 0x8DE4 -#define GL_MAX_BINDABLE_UNIFORM_SIZE_EXT 0x8DED -#define GL_UNIFORM_BUFFER_EXT 0x8DEE -#define GL_UNIFORM_BUFFER_BINDING_EXT 0x8DEF - -typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMBUFFERSIZEEXTPROC) (GLuint program, GLint location); -typedef GLintptr (GLAPIENTRY * PFNGLGETUNIFORMOFFSETEXTPROC) (GLuint program, GLint location); -typedef void (GLAPIENTRY * PFNGLUNIFORMBUFFEREXTPROC) (GLuint program, GLint location, GLuint buffer); - -#define glGetUniformBufferSizeEXT GLEW_GET_FUN(__glewGetUniformBufferSizeEXT) -#define glGetUniformOffsetEXT GLEW_GET_FUN(__glewGetUniformOffsetEXT) -#define glUniformBufferEXT GLEW_GET_FUN(__glewUniformBufferEXT) - -#define GLEW_EXT_bindable_uniform GLEW_GET_VAR(__GLEW_EXT_bindable_uniform) - -#endif /* GL_EXT_bindable_uniform */ - -/* --------------------------- GL_EXT_blend_color -------------------------- */ - -#ifndef GL_EXT_blend_color -#define GL_EXT_blend_color 1 - -#define GL_CONSTANT_COLOR_EXT 0x8001 -#define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002 -#define GL_CONSTANT_ALPHA_EXT 0x8003 -#define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004 -#define GL_BLEND_COLOR_EXT 0x8005 - -typedef void (GLAPIENTRY * PFNGLBLENDCOLOREXTPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); - -#define glBlendColorEXT GLEW_GET_FUN(__glewBlendColorEXT) - -#define GLEW_EXT_blend_color GLEW_GET_VAR(__GLEW_EXT_blend_color) - -#endif /* GL_EXT_blend_color */ - -/* --------------------- GL_EXT_blend_equation_separate -------------------- */ - -#ifndef GL_EXT_blend_equation_separate -#define GL_EXT_blend_equation_separate 1 - -#define GL_BLEND_EQUATION_RGB_EXT 0x8009 -#define GL_BLEND_EQUATION_ALPHA_EXT 0x883D - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEEXTPROC) (GLenum modeRGB, GLenum modeAlpha); - -#define glBlendEquationSeparateEXT GLEW_GET_FUN(__glewBlendEquationSeparateEXT) - -#define GLEW_EXT_blend_equation_separate GLEW_GET_VAR(__GLEW_EXT_blend_equation_separate) - -#endif /* GL_EXT_blend_equation_separate */ - -/* ----------------------- GL_EXT_blend_func_extended ---------------------- */ - -#ifndef GL_EXT_blend_func_extended -#define GL_EXT_blend_func_extended 1 - -#define GL_SRC_ALPHA_SATURATE_EXT 0x0308 -#define GL_SRC1_ALPHA_EXT 0x8589 -#define GL_SRC1_COLOR_EXT 0x88F9 -#define GL_ONE_MINUS_SRC1_COLOR_EXT 0x88FA -#define GL_ONE_MINUS_SRC1_ALPHA_EXT 0x88FB -#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT 0x88FC -#define GL_LOCATION_INDEX_EXT 0x930F - -typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONINDEXEDEXTPROC) (GLuint program, GLuint colorNumber, GLuint index, const GLchar * name); -typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATAINDEXEXTPROC) (GLuint program, const GLchar * name); -typedef GLint (GLAPIENTRY * PFNGLGETPROGRAMRESOURCELOCATIONINDEXEXTPROC) (GLuint program, GLenum programInterface, const GLchar* name); - -#define glBindFragDataLocationIndexedEXT GLEW_GET_FUN(__glewBindFragDataLocationIndexedEXT) -#define glGetFragDataIndexEXT GLEW_GET_FUN(__glewGetFragDataIndexEXT) -#define glGetProgramResourceLocationIndexEXT GLEW_GET_FUN(__glewGetProgramResourceLocationIndexEXT) - -#define GLEW_EXT_blend_func_extended GLEW_GET_VAR(__GLEW_EXT_blend_func_extended) - -#endif /* GL_EXT_blend_func_extended */ - -/* ----------------------- GL_EXT_blend_func_separate ---------------------- */ - -#ifndef GL_EXT_blend_func_separate -#define GL_EXT_blend_func_separate 1 - -#define GL_BLEND_DST_RGB_EXT 0x80C8 -#define GL_BLEND_SRC_RGB_EXT 0x80C9 -#define GL_BLEND_DST_ALPHA_EXT 0x80CA -#define GL_BLEND_SRC_ALPHA_EXT 0x80CB - -typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); - -#define glBlendFuncSeparateEXT GLEW_GET_FUN(__glewBlendFuncSeparateEXT) - -#define GLEW_EXT_blend_func_separate GLEW_GET_VAR(__GLEW_EXT_blend_func_separate) - -#endif /* GL_EXT_blend_func_separate */ - -/* ------------------------- GL_EXT_blend_logic_op ------------------------- */ - -#ifndef GL_EXT_blend_logic_op -#define GL_EXT_blend_logic_op 1 - -#define GLEW_EXT_blend_logic_op GLEW_GET_VAR(__GLEW_EXT_blend_logic_op) - -#endif /* GL_EXT_blend_logic_op */ - -/* -------------------------- GL_EXT_blend_minmax -------------------------- */ - -#ifndef GL_EXT_blend_minmax -#define GL_EXT_blend_minmax 1 - -#define GL_FUNC_ADD_EXT 0x8006 -#define GL_MIN_EXT 0x8007 -#define GL_MAX_EXT 0x8008 -#define GL_BLEND_EQUATION_EXT 0x8009 - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONEXTPROC) (GLenum mode); - -#define glBlendEquationEXT GLEW_GET_FUN(__glewBlendEquationEXT) - -#define GLEW_EXT_blend_minmax GLEW_GET_VAR(__GLEW_EXT_blend_minmax) - -#endif /* GL_EXT_blend_minmax */ - -/* ------------------------- GL_EXT_blend_subtract ------------------------- */ - -#ifndef GL_EXT_blend_subtract -#define GL_EXT_blend_subtract 1 - -#define GL_FUNC_SUBTRACT_EXT 0x800A -#define GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B - -#define GLEW_EXT_blend_subtract GLEW_GET_VAR(__GLEW_EXT_blend_subtract) - -#endif /* GL_EXT_blend_subtract */ - -/* ------------------------- GL_EXT_buffer_storage ------------------------- */ - -#ifndef GL_EXT_buffer_storage -#define GL_EXT_buffer_storage 1 - -#define GL_MAP_READ_BIT 0x0001 -#define GL_MAP_WRITE_BIT 0x0002 -#define GL_MAP_PERSISTENT_BIT_EXT 0x0040 -#define GL_MAP_COHERENT_BIT_EXT 0x0080 -#define GL_DYNAMIC_STORAGE_BIT_EXT 0x0100 -#define GL_CLIENT_STORAGE_BIT_EXT 0x0200 -#define GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT 0x00004000 -#define GL_BUFFER_IMMUTABLE_STORAGE_EXT 0x821F -#define GL_BUFFER_STORAGE_FLAGS_EXT 0x8220 - -typedef void (GLAPIENTRY * PFNGLBUFFERSTORAGEEXTPROC) (GLenum target, GLsizeiptr size, const void *data, GLbitfield flags); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSTORAGEEXTPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags); - -#define glBufferStorageEXT GLEW_GET_FUN(__glewBufferStorageEXT) -#define glNamedBufferStorageEXT GLEW_GET_FUN(__glewNamedBufferStorageEXT) - -#define GLEW_EXT_buffer_storage GLEW_GET_VAR(__GLEW_EXT_buffer_storage) - -#endif /* GL_EXT_buffer_storage */ - -/* -------------------------- GL_EXT_clear_texture ------------------------- */ - -#ifndef GL_EXT_clear_texture -#define GL_EXT_clear_texture 1 - -typedef void (GLAPIENTRY * PFNGLCLEARTEXIMAGEEXTPROC) (GLuint texture, GLint level, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCLEARTEXSUBIMAGEEXTPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data); - -#define glClearTexImageEXT GLEW_GET_FUN(__glewClearTexImageEXT) -#define glClearTexSubImageEXT GLEW_GET_FUN(__glewClearTexSubImageEXT) - -#define GLEW_EXT_clear_texture GLEW_GET_VAR(__GLEW_EXT_clear_texture) - -#endif /* GL_EXT_clear_texture */ - -/* -------------------------- GL_EXT_clip_control -------------------------- */ - -#ifndef GL_EXT_clip_control -#define GL_EXT_clip_control 1 - -#define GL_LOWER_LEFT_EXT 0x8CA1 -#define GL_UPPER_LEFT_EXT 0x8CA2 -#define GL_CLIP_ORIGIN_EXT 0x935C -#define GL_CLIP_DEPTH_MODE_EXT 0x935D -#define GL_NEGATIVE_ONE_TO_ONE_EXT 0x935E -#define GL_ZERO_TO_ONE_EXT 0x935F - -typedef void (GLAPIENTRY * PFNGLCLIPCONTROLEXTPROC) (GLenum origin, GLenum depth); - -#define glClipControlEXT GLEW_GET_FUN(__glewClipControlEXT) - -#define GLEW_EXT_clip_control GLEW_GET_VAR(__GLEW_EXT_clip_control) - -#endif /* GL_EXT_clip_control */ - -/* ----------------------- GL_EXT_clip_cull_distance ----------------------- */ - -#ifndef GL_EXT_clip_cull_distance -#define GL_EXT_clip_cull_distance 1 - -#define GL_MAX_CLIP_DISTANCES_EXT 0x0D32 -#define GL_CLIP_DISTANCE0_EXT 0x3000 -#define GL_CLIP_DISTANCE1_EXT 0x3001 -#define GL_CLIP_DISTANCE2_EXT 0x3002 -#define GL_CLIP_DISTANCE3_EXT 0x3003 -#define GL_CLIP_DISTANCE4_EXT 0x3004 -#define GL_CLIP_DISTANCE5_EXT 0x3005 -#define GL_CLIP_DISTANCE6_EXT 0x3006 -#define GL_CLIP_DISTANCE7_EXT 0x3007 -#define GL_MAX_CULL_DISTANCES_EXT 0x82F9 -#define GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES_EXT 0x82FA - -#define GLEW_EXT_clip_cull_distance GLEW_GET_VAR(__GLEW_EXT_clip_cull_distance) - -#endif /* GL_EXT_clip_cull_distance */ - -/* ------------------------ GL_EXT_clip_volume_hint ------------------------ */ - -#ifndef GL_EXT_clip_volume_hint -#define GL_EXT_clip_volume_hint 1 - -#define GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0 - -#define GLEW_EXT_clip_volume_hint GLEW_GET_VAR(__GLEW_EXT_clip_volume_hint) - -#endif /* GL_EXT_clip_volume_hint */ - -/* ------------------------------ GL_EXT_cmyka ----------------------------- */ - -#ifndef GL_EXT_cmyka -#define GL_EXT_cmyka 1 - -#define GL_CMYK_EXT 0x800C -#define GL_CMYKA_EXT 0x800D -#define GL_PACK_CMYK_HINT_EXT 0x800E -#define GL_UNPACK_CMYK_HINT_EXT 0x800F - -#define GLEW_EXT_cmyka GLEW_GET_VAR(__GLEW_EXT_cmyka) - -#endif /* GL_EXT_cmyka */ - -/* ----------------------- GL_EXT_color_buffer_float ----------------------- */ - -#ifndef GL_EXT_color_buffer_float -#define GL_EXT_color_buffer_float 1 - -#define GLEW_EXT_color_buffer_float GLEW_GET_VAR(__GLEW_EXT_color_buffer_float) - -#endif /* GL_EXT_color_buffer_float */ - -/* --------------------- GL_EXT_color_buffer_half_float -------------------- */ - -#ifndef GL_EXT_color_buffer_half_float -#define GL_EXT_color_buffer_half_float 1 - -#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211 -#define GL_R16F_EXT 0x822D -#define GL_RG16F_EXT 0x822F -#define GL_RGBA16F_EXT 0x881A -#define GL_RGB16F_EXT 0x881B -#define GL_UNSIGNED_NORMALIZED_EXT 0x8C17 - -#define GLEW_EXT_color_buffer_half_float GLEW_GET_VAR(__GLEW_EXT_color_buffer_half_float) - -#endif /* GL_EXT_color_buffer_half_float */ - -/* ------------------------- GL_EXT_color_subtable ------------------------- */ - -#ifndef GL_EXT_color_subtable -#define GL_EXT_color_subtable 1 - -typedef void (GLAPIENTRY * PFNGLCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLCOPYCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width); - -#define glColorSubTableEXT GLEW_GET_FUN(__glewColorSubTableEXT) -#define glCopyColorSubTableEXT GLEW_GET_FUN(__glewCopyColorSubTableEXT) - -#define GLEW_EXT_color_subtable GLEW_GET_VAR(__GLEW_EXT_color_subtable) - -#endif /* GL_EXT_color_subtable */ - -/* ---------------------- GL_EXT_compiled_vertex_array --------------------- */ - -#ifndef GL_EXT_compiled_vertex_array -#define GL_EXT_compiled_vertex_array 1 - -#define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8 -#define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9 - -typedef void (GLAPIENTRY * PFNGLLOCKARRAYSEXTPROC) (GLint first, GLsizei count); -typedef void (GLAPIENTRY * PFNGLUNLOCKARRAYSEXTPROC) (void); - -#define glLockArraysEXT GLEW_GET_FUN(__glewLockArraysEXT) -#define glUnlockArraysEXT GLEW_GET_FUN(__glewUnlockArraysEXT) - -#define GLEW_EXT_compiled_vertex_array GLEW_GET_VAR(__GLEW_EXT_compiled_vertex_array) - -#endif /* GL_EXT_compiled_vertex_array */ - -/* ---------------- GL_EXT_compressed_ETC1_RGB8_sub_texture ---------------- */ - -#ifndef GL_EXT_compressed_ETC1_RGB8_sub_texture -#define GL_EXT_compressed_ETC1_RGB8_sub_texture 1 - -#define GLEW_EXT_compressed_ETC1_RGB8_sub_texture GLEW_GET_VAR(__GLEW_EXT_compressed_ETC1_RGB8_sub_texture) - -#endif /* GL_EXT_compressed_ETC1_RGB8_sub_texture */ - -/* ----------------------- GL_EXT_conservative_depth ----------------------- */ - -#ifndef GL_EXT_conservative_depth -#define GL_EXT_conservative_depth 1 - -#define GLEW_EXT_conservative_depth GLEW_GET_VAR(__GLEW_EXT_conservative_depth) - -#endif /* GL_EXT_conservative_depth */ - -/* --------------------------- GL_EXT_convolution -------------------------- */ - -#ifndef GL_EXT_convolution -#define GL_EXT_convolution 1 - -#define GL_CONVOLUTION_1D_EXT 0x8010 -#define GL_CONVOLUTION_2D_EXT 0x8011 -#define GL_SEPARABLE_2D_EXT 0x8012 -#define GL_CONVOLUTION_BORDER_MODE_EXT 0x8013 -#define GL_CONVOLUTION_FILTER_SCALE_EXT 0x8014 -#define GL_CONVOLUTION_FILTER_BIAS_EXT 0x8015 -#define GL_REDUCE_EXT 0x8016 -#define GL_CONVOLUTION_FORMAT_EXT 0x8017 -#define GL_CONVOLUTION_WIDTH_EXT 0x8018 -#define GL_CONVOLUTION_HEIGHT_EXT 0x8019 -#define GL_MAX_CONVOLUTION_WIDTH_EXT 0x801A -#define GL_MAX_CONVOLUTION_HEIGHT_EXT 0x801B -#define GL_POST_CONVOLUTION_RED_SCALE_EXT 0x801C -#define GL_POST_CONVOLUTION_GREEN_SCALE_EXT 0x801D -#define GL_POST_CONVOLUTION_BLUE_SCALE_EXT 0x801E -#define GL_POST_CONVOLUTION_ALPHA_SCALE_EXT 0x801F -#define GL_POST_CONVOLUTION_RED_BIAS_EXT 0x8020 -#define GL_POST_CONVOLUTION_GREEN_BIAS_EXT 0x8021 -#define GL_POST_CONVOLUTION_BLUE_BIAS_EXT 0x8022 -#define GL_POST_CONVOLUTION_ALPHA_BIAS_EXT 0x8023 - -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *image); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *image); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, void *image); -typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETSEPARABLEFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, void *row, void *column, void *span); -typedef void (GLAPIENTRY * PFNGLSEPARABLEFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *row, const void *column); - -#define glConvolutionFilter1DEXT GLEW_GET_FUN(__glewConvolutionFilter1DEXT) -#define glConvolutionFilter2DEXT GLEW_GET_FUN(__glewConvolutionFilter2DEXT) -#define glConvolutionParameterfEXT GLEW_GET_FUN(__glewConvolutionParameterfEXT) -#define glConvolutionParameterfvEXT GLEW_GET_FUN(__glewConvolutionParameterfvEXT) -#define glConvolutionParameteriEXT GLEW_GET_FUN(__glewConvolutionParameteriEXT) -#define glConvolutionParameterivEXT GLEW_GET_FUN(__glewConvolutionParameterivEXT) -#define glCopyConvolutionFilter1DEXT GLEW_GET_FUN(__glewCopyConvolutionFilter1DEXT) -#define glCopyConvolutionFilter2DEXT GLEW_GET_FUN(__glewCopyConvolutionFilter2DEXT) -#define glGetConvolutionFilterEXT GLEW_GET_FUN(__glewGetConvolutionFilterEXT) -#define glGetConvolutionParameterfvEXT GLEW_GET_FUN(__glewGetConvolutionParameterfvEXT) -#define glGetConvolutionParameterivEXT GLEW_GET_FUN(__glewGetConvolutionParameterivEXT) -#define glGetSeparableFilterEXT GLEW_GET_FUN(__glewGetSeparableFilterEXT) -#define glSeparableFilter2DEXT GLEW_GET_FUN(__glewSeparableFilter2DEXT) - -#define GLEW_EXT_convolution GLEW_GET_VAR(__GLEW_EXT_convolution) - -#endif /* GL_EXT_convolution */ - -/* ------------------------ GL_EXT_coordinate_frame ------------------------ */ - -#ifndef GL_EXT_coordinate_frame -#define GL_EXT_coordinate_frame 1 - -#define GL_TANGENT_ARRAY_EXT 0x8439 -#define GL_BINORMAL_ARRAY_EXT 0x843A -#define GL_CURRENT_TANGENT_EXT 0x843B -#define GL_CURRENT_BINORMAL_EXT 0x843C -#define GL_TANGENT_ARRAY_TYPE_EXT 0x843E -#define GL_TANGENT_ARRAY_STRIDE_EXT 0x843F -#define GL_BINORMAL_ARRAY_TYPE_EXT 0x8440 -#define GL_BINORMAL_ARRAY_STRIDE_EXT 0x8441 -#define GL_TANGENT_ARRAY_POINTER_EXT 0x8442 -#define GL_BINORMAL_ARRAY_POINTER_EXT 0x8443 -#define GL_MAP1_TANGENT_EXT 0x8444 -#define GL_MAP2_TANGENT_EXT 0x8445 -#define GL_MAP1_BINORMAL_EXT 0x8446 -#define GL_MAP2_BINORMAL_EXT 0x8447 - -typedef void (GLAPIENTRY * PFNGLBINORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, void *pointer); -typedef void (GLAPIENTRY * PFNGLTANGENTPOINTEREXTPROC) (GLenum type, GLsizei stride, void *pointer); - -#define glBinormalPointerEXT GLEW_GET_FUN(__glewBinormalPointerEXT) -#define glTangentPointerEXT GLEW_GET_FUN(__glewTangentPointerEXT) - -#define GLEW_EXT_coordinate_frame GLEW_GET_VAR(__GLEW_EXT_coordinate_frame) - -#endif /* GL_EXT_coordinate_frame */ - -/* --------------------------- GL_EXT_copy_image --------------------------- */ - -#ifndef GL_EXT_copy_image -#define GL_EXT_copy_image 1 - -typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATAEXTPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); - -#define glCopyImageSubDataEXT GLEW_GET_FUN(__glewCopyImageSubDataEXT) - -#define GLEW_EXT_copy_image GLEW_GET_VAR(__GLEW_EXT_copy_image) - -#endif /* GL_EXT_copy_image */ - -/* -------------------------- GL_EXT_copy_texture -------------------------- */ - -#ifndef GL_EXT_copy_texture -#define GL_EXT_copy_texture 1 - -typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE1DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); -typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE2DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); -typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); - -#define glCopyTexImage1DEXT GLEW_GET_FUN(__glewCopyTexImage1DEXT) -#define glCopyTexImage2DEXT GLEW_GET_FUN(__glewCopyTexImage2DEXT) -#define glCopyTexSubImage1DEXT GLEW_GET_FUN(__glewCopyTexSubImage1DEXT) -#define glCopyTexSubImage2DEXT GLEW_GET_FUN(__glewCopyTexSubImage2DEXT) -#define glCopyTexSubImage3DEXT GLEW_GET_FUN(__glewCopyTexSubImage3DEXT) - -#define GLEW_EXT_copy_texture GLEW_GET_VAR(__GLEW_EXT_copy_texture) - -#endif /* GL_EXT_copy_texture */ - -/* --------------------------- GL_EXT_cull_vertex -------------------------- */ - -#ifndef GL_EXT_cull_vertex -#define GL_EXT_cull_vertex 1 - -#define GL_CULL_VERTEX_EXT 0x81AA -#define GL_CULL_VERTEX_EYE_POSITION_EXT 0x81AB -#define GL_CULL_VERTEX_OBJECT_POSITION_EXT 0x81AC - -typedef void (GLAPIENTRY * PFNGLCULLPARAMETERDVEXTPROC) (GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLCULLPARAMETERFVEXTPROC) (GLenum pname, GLfloat* params); - -#define glCullParameterdvEXT GLEW_GET_FUN(__glewCullParameterdvEXT) -#define glCullParameterfvEXT GLEW_GET_FUN(__glewCullParameterfvEXT) - -#define GLEW_EXT_cull_vertex GLEW_GET_VAR(__GLEW_EXT_cull_vertex) - -#endif /* GL_EXT_cull_vertex */ - -/* --------------------------- GL_EXT_debug_label -------------------------- */ - -#ifndef GL_EXT_debug_label -#define GL_EXT_debug_label 1 - -#define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F -#define GL_PROGRAM_OBJECT_EXT 0x8B40 -#define GL_SHADER_OBJECT_EXT 0x8B48 -#define GL_BUFFER_OBJECT_EXT 0x9151 -#define GL_QUERY_OBJECT_EXT 0x9153 -#define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154 - -typedef void (GLAPIENTRY * PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei* length, GLchar *label); -typedef void (GLAPIENTRY * PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar* label); - -#define glGetObjectLabelEXT GLEW_GET_FUN(__glewGetObjectLabelEXT) -#define glLabelObjectEXT GLEW_GET_FUN(__glewLabelObjectEXT) - -#define GLEW_EXT_debug_label GLEW_GET_VAR(__GLEW_EXT_debug_label) - -#endif /* GL_EXT_debug_label */ - -/* -------------------------- GL_EXT_debug_marker -------------------------- */ - -#ifndef GL_EXT_debug_marker -#define GL_EXT_debug_marker 1 - -typedef void (GLAPIENTRY * PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar* marker); -typedef void (GLAPIENTRY * PFNGLPOPGROUPMARKEREXTPROC) (void); -typedef void (GLAPIENTRY * PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar* marker); - -#define glInsertEventMarkerEXT GLEW_GET_FUN(__glewInsertEventMarkerEXT) -#define glPopGroupMarkerEXT GLEW_GET_FUN(__glewPopGroupMarkerEXT) -#define glPushGroupMarkerEXT GLEW_GET_FUN(__glewPushGroupMarkerEXT) - -#define GLEW_EXT_debug_marker GLEW_GET_VAR(__GLEW_EXT_debug_marker) - -#endif /* GL_EXT_debug_marker */ - -/* ------------------------ GL_EXT_depth_bounds_test ----------------------- */ - -#ifndef GL_EXT_depth_bounds_test -#define GL_EXT_depth_bounds_test 1 - -#define GL_DEPTH_BOUNDS_TEST_EXT 0x8890 -#define GL_DEPTH_BOUNDS_EXT 0x8891 - -typedef void (GLAPIENTRY * PFNGLDEPTHBOUNDSEXTPROC) (GLclampd zmin, GLclampd zmax); - -#define glDepthBoundsEXT GLEW_GET_FUN(__glewDepthBoundsEXT) - -#define GLEW_EXT_depth_bounds_test GLEW_GET_VAR(__GLEW_EXT_depth_bounds_test) - -#endif /* GL_EXT_depth_bounds_test */ - -/* --------------------------- GL_EXT_depth_clamp -------------------------- */ - -#ifndef GL_EXT_depth_clamp -#define GL_EXT_depth_clamp 1 - -#define GL_DEPTH_CLAMP_EXT 0x864F - -#define GLEW_EXT_depth_clamp GLEW_GET_VAR(__GLEW_EXT_depth_clamp) - -#endif /* GL_EXT_depth_clamp */ - -/* ----------------------- GL_EXT_direct_state_access ---------------------- */ - -#ifndef GL_EXT_direct_state_access -#define GL_EXT_direct_state_access 1 - -#define GL_PROGRAM_MATRIX_EXT 0x8E2D -#define GL_TRANSPOSE_PROGRAM_MATRIX_EXT 0x8E2E -#define GL_PROGRAM_MATRIX_STACK_DEPTH_EXT 0x8E2F - -typedef void (GLAPIENTRY * PFNGLBINDMULTITEXTUREEXTPROC) (GLenum texunit, GLenum target, GLuint texture); -typedef GLenum (GLAPIENTRY * PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC) (GLuint framebuffer, GLenum target); -typedef void (GLAPIENTRY * PFNGLCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); -typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); -typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLCOPYTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); -typedef void (GLAPIENTRY * PFNGLCOPYTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); -typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index); -typedef void (GLAPIENTRY * PFNGLDISABLECLIENTSTATEIEXTPROC) (GLenum array, GLuint index); -typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC) (GLuint vaobj, GLuint index); -typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYEXTPROC) (GLuint vaobj, GLenum array); -typedef void (GLAPIENTRY * PFNGLENABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLECLIENTSTATEIEXTPROC) (GLenum array, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYATTRIBEXTPROC) (GLuint vaobj, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYEXTPROC) (GLuint vaobj, GLenum array); -typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC) (GLuint framebuffer, GLenum mode); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC) (GLuint framebuffer, GLsizei n, const GLenum* bufs); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERREADBUFFEREXTPROC) (GLuint framebuffer, GLenum mode); -typedef void (GLAPIENTRY * PFNGLGENERATEMULTITEXMIPMAPEXTPROC) (GLenum texunit, GLenum target); -typedef void (GLAPIENTRY * PFNGLGENERATETEXTUREMIPMAPEXTPROC) (GLuint texture, GLenum target); -typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, void *img); -typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, void *img); -typedef void (GLAPIENTRY * PFNGLGETDOUBLEINDEXEDVEXTPROC) (GLenum target, GLuint index, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETDOUBLEI_VEXTPROC) (GLenum pname, GLuint index, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETFLOATINDEXEDVEXTPROC) (GLenum target, GLuint index, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETFLOATI_VEXTPROC) (GLenum pname, GLuint index, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint* param); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, void *pixels); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC) (GLuint buffer, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPOINTERVEXTPROC) (GLuint buffer, GLenum pname, void** params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, void *data); -typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum pname, void *string); -typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMIVEXTPROC) (GLuint program, GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC) (GLuint renderbuffer, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETPOINTERINDEXEDVEXTPROC) (GLenum target, GLuint index, void** params); -typedef void (GLAPIENTRY * PFNGLGETPOINTERI_VEXTPROC) (GLenum pname, GLuint index, void** params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, void *pixels); -typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint* param); -typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINTEGERVEXTPROC) (GLuint vaobj, GLenum pname, GLint* param); -typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC) (GLuint vaobj, GLuint index, GLenum pname, void** param); -typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYPOINTERVEXTPROC) (GLuint vaobj, GLenum pname, void** param); -typedef void * (GLAPIENTRY * PFNGLMAPNAMEDBUFFEREXTPROC) (GLuint buffer, GLenum access); -typedef void * (GLAPIENTRY * PFNGLMAPNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access); -typedef void (GLAPIENTRY * PFNGLMATRIXFRUSTUMEXTPROC) (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f); -typedef void (GLAPIENTRY * PFNGLMATRIXLOADIDENTITYEXTPROC) (GLenum matrixMode); -typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSEDEXTPROC) (GLenum matrixMode, const GLdouble* m); -typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSEFEXTPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXLOADDEXTPROC) (GLenum matrixMode, const GLdouble* m); -typedef void (GLAPIENTRY * PFNGLMATRIXLOADFEXTPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSEDEXTPROC) (GLenum matrixMode, const GLdouble* m); -typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSEFEXTPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXMULTDEXTPROC) (GLenum matrixMode, const GLdouble* m); -typedef void (GLAPIENTRY * PFNGLMATRIXMULTFEXTPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXORTHOEXTPROC) (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f); -typedef void (GLAPIENTRY * PFNGLMATRIXPOPEXTPROC) (GLenum matrixMode); -typedef void (GLAPIENTRY * PFNGLMATRIXPUSHEXTPROC) (GLenum matrixMode); -typedef void (GLAPIENTRY * PFNGLMATRIXROTATEDEXTPROC) (GLenum matrixMode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLMATRIXROTATEFEXTPROC) (GLenum matrixMode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLMATRIXSCALEDEXTPROC) (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLMATRIXSCALEFEXTPROC) (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLMATRIXTRANSLATEDEXTPROC) (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLMATRIXTRANSLATEFEXTPROC) (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLMULTITEXBUFFEREXTPROC) (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDPOINTEREXTPROC) (GLenum texunit, GLint size, GLenum type, GLsizei stride, const void *pointer); -typedef void (GLAPIENTRY * PFNGLMULTITEXENVFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLMULTITEXENVIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLMULTITEXGENDEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble param); -typedef void (GLAPIENTRY * PFNGLMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLdouble* params); -typedef void (GLAPIENTRY * PFNGLMULTITEXGENFEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLMULTITEXGENIEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLuint* params); -typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat* param); -typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* param); -typedef void (GLAPIENTRY * PFNGLMULTITEXRENDERBUFFEREXTPROC) (GLenum texunit, GLenum target, GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLsizeiptr size, const void *data, GLenum usage); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (GLAPIENTRY * PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLdouble* params); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC) (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLint* params); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLuint* params); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint* params); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint* params); -typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum format, GLsizei len, const void *string); -typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC) (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat v0); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint v0); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIEXTPROC) (GLuint program, GLint location, GLuint v0); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask); -typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFEREXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLuint* params); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLfloat* param); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint* param); -typedef void (GLAPIENTRY * PFNGLTEXTURERENDERBUFFEREXTPROC) (GLuint texture, GLenum target, GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); -typedef GLboolean (GLAPIENTRY * PFNGLUNMAPNAMEDBUFFEREXTPROC) (GLuint buffer); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYCOLOROFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYINDEXOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum texunit, GLint size, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYNORMALOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBDIVISOREXTPROC) (GLuint vaobj, GLuint index, GLuint divisor); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset); - -#define glBindMultiTextureEXT GLEW_GET_FUN(__glewBindMultiTextureEXT) -#define glCheckNamedFramebufferStatusEXT GLEW_GET_FUN(__glewCheckNamedFramebufferStatusEXT) -#define glClientAttribDefaultEXT GLEW_GET_FUN(__glewClientAttribDefaultEXT) -#define glCompressedMultiTexImage1DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage1DEXT) -#define glCompressedMultiTexImage2DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage2DEXT) -#define glCompressedMultiTexImage3DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage3DEXT) -#define glCompressedMultiTexSubImage1DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage1DEXT) -#define glCompressedMultiTexSubImage2DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage2DEXT) -#define glCompressedMultiTexSubImage3DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage3DEXT) -#define glCompressedTextureImage1DEXT GLEW_GET_FUN(__glewCompressedTextureImage1DEXT) -#define glCompressedTextureImage2DEXT GLEW_GET_FUN(__glewCompressedTextureImage2DEXT) -#define glCompressedTextureImage3DEXT GLEW_GET_FUN(__glewCompressedTextureImage3DEXT) -#define glCompressedTextureSubImage1DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage1DEXT) -#define glCompressedTextureSubImage2DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage2DEXT) -#define glCompressedTextureSubImage3DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage3DEXT) -#define glCopyMultiTexImage1DEXT GLEW_GET_FUN(__glewCopyMultiTexImage1DEXT) -#define glCopyMultiTexImage2DEXT GLEW_GET_FUN(__glewCopyMultiTexImage2DEXT) -#define glCopyMultiTexSubImage1DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage1DEXT) -#define glCopyMultiTexSubImage2DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage2DEXT) -#define glCopyMultiTexSubImage3DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage3DEXT) -#define glCopyTextureImage1DEXT GLEW_GET_FUN(__glewCopyTextureImage1DEXT) -#define glCopyTextureImage2DEXT GLEW_GET_FUN(__glewCopyTextureImage2DEXT) -#define glCopyTextureSubImage1DEXT GLEW_GET_FUN(__glewCopyTextureSubImage1DEXT) -#define glCopyTextureSubImage2DEXT GLEW_GET_FUN(__glewCopyTextureSubImage2DEXT) -#define glCopyTextureSubImage3DEXT GLEW_GET_FUN(__glewCopyTextureSubImage3DEXT) -#define glDisableClientStateIndexedEXT GLEW_GET_FUN(__glewDisableClientStateIndexedEXT) -#define glDisableClientStateiEXT GLEW_GET_FUN(__glewDisableClientStateiEXT) -#define glDisableVertexArrayAttribEXT GLEW_GET_FUN(__glewDisableVertexArrayAttribEXT) -#define glDisableVertexArrayEXT GLEW_GET_FUN(__glewDisableVertexArrayEXT) -#define glEnableClientStateIndexedEXT GLEW_GET_FUN(__glewEnableClientStateIndexedEXT) -#define glEnableClientStateiEXT GLEW_GET_FUN(__glewEnableClientStateiEXT) -#define glEnableVertexArrayAttribEXT GLEW_GET_FUN(__glewEnableVertexArrayAttribEXT) -#define glEnableVertexArrayEXT GLEW_GET_FUN(__glewEnableVertexArrayEXT) -#define glFlushMappedNamedBufferRangeEXT GLEW_GET_FUN(__glewFlushMappedNamedBufferRangeEXT) -#define glFramebufferDrawBufferEXT GLEW_GET_FUN(__glewFramebufferDrawBufferEXT) -#define glFramebufferDrawBuffersEXT GLEW_GET_FUN(__glewFramebufferDrawBuffersEXT) -#define glFramebufferReadBufferEXT GLEW_GET_FUN(__glewFramebufferReadBufferEXT) -#define glGenerateMultiTexMipmapEXT GLEW_GET_FUN(__glewGenerateMultiTexMipmapEXT) -#define glGenerateTextureMipmapEXT GLEW_GET_FUN(__glewGenerateTextureMipmapEXT) -#define glGetCompressedMultiTexImageEXT GLEW_GET_FUN(__glewGetCompressedMultiTexImageEXT) -#define glGetCompressedTextureImageEXT GLEW_GET_FUN(__glewGetCompressedTextureImageEXT) -#define glGetDoubleIndexedvEXT GLEW_GET_FUN(__glewGetDoubleIndexedvEXT) -#define glGetDoublei_vEXT GLEW_GET_FUN(__glewGetDoublei_vEXT) -#define glGetFloatIndexedvEXT GLEW_GET_FUN(__glewGetFloatIndexedvEXT) -#define glGetFloati_vEXT GLEW_GET_FUN(__glewGetFloati_vEXT) -#define glGetFramebufferParameterivEXT GLEW_GET_FUN(__glewGetFramebufferParameterivEXT) -#define glGetMultiTexEnvfvEXT GLEW_GET_FUN(__glewGetMultiTexEnvfvEXT) -#define glGetMultiTexEnvivEXT GLEW_GET_FUN(__glewGetMultiTexEnvivEXT) -#define glGetMultiTexGendvEXT GLEW_GET_FUN(__glewGetMultiTexGendvEXT) -#define glGetMultiTexGenfvEXT GLEW_GET_FUN(__glewGetMultiTexGenfvEXT) -#define glGetMultiTexGenivEXT GLEW_GET_FUN(__glewGetMultiTexGenivEXT) -#define glGetMultiTexImageEXT GLEW_GET_FUN(__glewGetMultiTexImageEXT) -#define glGetMultiTexLevelParameterfvEXT GLEW_GET_FUN(__glewGetMultiTexLevelParameterfvEXT) -#define glGetMultiTexLevelParameterivEXT GLEW_GET_FUN(__glewGetMultiTexLevelParameterivEXT) -#define glGetMultiTexParameterIivEXT GLEW_GET_FUN(__glewGetMultiTexParameterIivEXT) -#define glGetMultiTexParameterIuivEXT GLEW_GET_FUN(__glewGetMultiTexParameterIuivEXT) -#define glGetMultiTexParameterfvEXT GLEW_GET_FUN(__glewGetMultiTexParameterfvEXT) -#define glGetMultiTexParameterivEXT GLEW_GET_FUN(__glewGetMultiTexParameterivEXT) -#define glGetNamedBufferParameterivEXT GLEW_GET_FUN(__glewGetNamedBufferParameterivEXT) -#define glGetNamedBufferPointervEXT GLEW_GET_FUN(__glewGetNamedBufferPointervEXT) -#define glGetNamedBufferSubDataEXT GLEW_GET_FUN(__glewGetNamedBufferSubDataEXT) -#define glGetNamedFramebufferAttachmentParameterivEXT GLEW_GET_FUN(__glewGetNamedFramebufferAttachmentParameterivEXT) -#define glGetNamedProgramLocalParameterIivEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterIivEXT) -#define glGetNamedProgramLocalParameterIuivEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterIuivEXT) -#define glGetNamedProgramLocalParameterdvEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterdvEXT) -#define glGetNamedProgramLocalParameterfvEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterfvEXT) -#define glGetNamedProgramStringEXT GLEW_GET_FUN(__glewGetNamedProgramStringEXT) -#define glGetNamedProgramivEXT GLEW_GET_FUN(__glewGetNamedProgramivEXT) -#define glGetNamedRenderbufferParameterivEXT GLEW_GET_FUN(__glewGetNamedRenderbufferParameterivEXT) -#define glGetPointerIndexedvEXT GLEW_GET_FUN(__glewGetPointerIndexedvEXT) -#define glGetPointeri_vEXT GLEW_GET_FUN(__glewGetPointeri_vEXT) -#define glGetTextureImageEXT GLEW_GET_FUN(__glewGetTextureImageEXT) -#define glGetTextureLevelParameterfvEXT GLEW_GET_FUN(__glewGetTextureLevelParameterfvEXT) -#define glGetTextureLevelParameterivEXT GLEW_GET_FUN(__glewGetTextureLevelParameterivEXT) -#define glGetTextureParameterIivEXT GLEW_GET_FUN(__glewGetTextureParameterIivEXT) -#define glGetTextureParameterIuivEXT GLEW_GET_FUN(__glewGetTextureParameterIuivEXT) -#define glGetTextureParameterfvEXT GLEW_GET_FUN(__glewGetTextureParameterfvEXT) -#define glGetTextureParameterivEXT GLEW_GET_FUN(__glewGetTextureParameterivEXT) -#define glGetVertexArrayIntegeri_vEXT GLEW_GET_FUN(__glewGetVertexArrayIntegeri_vEXT) -#define glGetVertexArrayIntegervEXT GLEW_GET_FUN(__glewGetVertexArrayIntegervEXT) -#define glGetVertexArrayPointeri_vEXT GLEW_GET_FUN(__glewGetVertexArrayPointeri_vEXT) -#define glGetVertexArrayPointervEXT GLEW_GET_FUN(__glewGetVertexArrayPointervEXT) -#define glMapNamedBufferEXT GLEW_GET_FUN(__glewMapNamedBufferEXT) -#define glMapNamedBufferRangeEXT GLEW_GET_FUN(__glewMapNamedBufferRangeEXT) -#define glMatrixFrustumEXT GLEW_GET_FUN(__glewMatrixFrustumEXT) -#define glMatrixLoadIdentityEXT GLEW_GET_FUN(__glewMatrixLoadIdentityEXT) -#define glMatrixLoadTransposedEXT GLEW_GET_FUN(__glewMatrixLoadTransposedEXT) -#define glMatrixLoadTransposefEXT GLEW_GET_FUN(__glewMatrixLoadTransposefEXT) -#define glMatrixLoaddEXT GLEW_GET_FUN(__glewMatrixLoaddEXT) -#define glMatrixLoadfEXT GLEW_GET_FUN(__glewMatrixLoadfEXT) -#define glMatrixMultTransposedEXT GLEW_GET_FUN(__glewMatrixMultTransposedEXT) -#define glMatrixMultTransposefEXT GLEW_GET_FUN(__glewMatrixMultTransposefEXT) -#define glMatrixMultdEXT GLEW_GET_FUN(__glewMatrixMultdEXT) -#define glMatrixMultfEXT GLEW_GET_FUN(__glewMatrixMultfEXT) -#define glMatrixOrthoEXT GLEW_GET_FUN(__glewMatrixOrthoEXT) -#define glMatrixPopEXT GLEW_GET_FUN(__glewMatrixPopEXT) -#define glMatrixPushEXT GLEW_GET_FUN(__glewMatrixPushEXT) -#define glMatrixRotatedEXT GLEW_GET_FUN(__glewMatrixRotatedEXT) -#define glMatrixRotatefEXT GLEW_GET_FUN(__glewMatrixRotatefEXT) -#define glMatrixScaledEXT GLEW_GET_FUN(__glewMatrixScaledEXT) -#define glMatrixScalefEXT GLEW_GET_FUN(__glewMatrixScalefEXT) -#define glMatrixTranslatedEXT GLEW_GET_FUN(__glewMatrixTranslatedEXT) -#define glMatrixTranslatefEXT GLEW_GET_FUN(__glewMatrixTranslatefEXT) -#define glMultiTexBufferEXT GLEW_GET_FUN(__glewMultiTexBufferEXT) -#define glMultiTexCoordPointerEXT GLEW_GET_FUN(__glewMultiTexCoordPointerEXT) -#define glMultiTexEnvfEXT GLEW_GET_FUN(__glewMultiTexEnvfEXT) -#define glMultiTexEnvfvEXT GLEW_GET_FUN(__glewMultiTexEnvfvEXT) -#define glMultiTexEnviEXT GLEW_GET_FUN(__glewMultiTexEnviEXT) -#define glMultiTexEnvivEXT GLEW_GET_FUN(__glewMultiTexEnvivEXT) -#define glMultiTexGendEXT GLEW_GET_FUN(__glewMultiTexGendEXT) -#define glMultiTexGendvEXT GLEW_GET_FUN(__glewMultiTexGendvEXT) -#define glMultiTexGenfEXT GLEW_GET_FUN(__glewMultiTexGenfEXT) -#define glMultiTexGenfvEXT GLEW_GET_FUN(__glewMultiTexGenfvEXT) -#define glMultiTexGeniEXT GLEW_GET_FUN(__glewMultiTexGeniEXT) -#define glMultiTexGenivEXT GLEW_GET_FUN(__glewMultiTexGenivEXT) -#define glMultiTexImage1DEXT GLEW_GET_FUN(__glewMultiTexImage1DEXT) -#define glMultiTexImage2DEXT GLEW_GET_FUN(__glewMultiTexImage2DEXT) -#define glMultiTexImage3DEXT GLEW_GET_FUN(__glewMultiTexImage3DEXT) -#define glMultiTexParameterIivEXT GLEW_GET_FUN(__glewMultiTexParameterIivEXT) -#define glMultiTexParameterIuivEXT GLEW_GET_FUN(__glewMultiTexParameterIuivEXT) -#define glMultiTexParameterfEXT GLEW_GET_FUN(__glewMultiTexParameterfEXT) -#define glMultiTexParameterfvEXT GLEW_GET_FUN(__glewMultiTexParameterfvEXT) -#define glMultiTexParameteriEXT GLEW_GET_FUN(__glewMultiTexParameteriEXT) -#define glMultiTexParameterivEXT GLEW_GET_FUN(__glewMultiTexParameterivEXT) -#define glMultiTexRenderbufferEXT GLEW_GET_FUN(__glewMultiTexRenderbufferEXT) -#define glMultiTexSubImage1DEXT GLEW_GET_FUN(__glewMultiTexSubImage1DEXT) -#define glMultiTexSubImage2DEXT GLEW_GET_FUN(__glewMultiTexSubImage2DEXT) -#define glMultiTexSubImage3DEXT GLEW_GET_FUN(__glewMultiTexSubImage3DEXT) -#define glNamedBufferDataEXT GLEW_GET_FUN(__glewNamedBufferDataEXT) -#define glNamedBufferSubDataEXT GLEW_GET_FUN(__glewNamedBufferSubDataEXT) -#define glNamedCopyBufferSubDataEXT GLEW_GET_FUN(__glewNamedCopyBufferSubDataEXT) -#define glNamedFramebufferRenderbufferEXT GLEW_GET_FUN(__glewNamedFramebufferRenderbufferEXT) -#define glNamedFramebufferTexture1DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture1DEXT) -#define glNamedFramebufferTexture2DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture2DEXT) -#define glNamedFramebufferTexture3DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture3DEXT) -#define glNamedFramebufferTextureEXT GLEW_GET_FUN(__glewNamedFramebufferTextureEXT) -#define glNamedFramebufferTextureFaceEXT GLEW_GET_FUN(__glewNamedFramebufferTextureFaceEXT) -#define glNamedFramebufferTextureLayerEXT GLEW_GET_FUN(__glewNamedFramebufferTextureLayerEXT) -#define glNamedProgramLocalParameter4dEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4dEXT) -#define glNamedProgramLocalParameter4dvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4dvEXT) -#define glNamedProgramLocalParameter4fEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4fEXT) -#define glNamedProgramLocalParameter4fvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4fvEXT) -#define glNamedProgramLocalParameterI4iEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4iEXT) -#define glNamedProgramLocalParameterI4ivEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4ivEXT) -#define glNamedProgramLocalParameterI4uiEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4uiEXT) -#define glNamedProgramLocalParameterI4uivEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4uivEXT) -#define glNamedProgramLocalParameters4fvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameters4fvEXT) -#define glNamedProgramLocalParametersI4ivEXT GLEW_GET_FUN(__glewNamedProgramLocalParametersI4ivEXT) -#define glNamedProgramLocalParametersI4uivEXT GLEW_GET_FUN(__glewNamedProgramLocalParametersI4uivEXT) -#define glNamedProgramStringEXT GLEW_GET_FUN(__glewNamedProgramStringEXT) -#define glNamedRenderbufferStorageEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageEXT) -#define glNamedRenderbufferStorageMultisampleCoverageEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleCoverageEXT) -#define glNamedRenderbufferStorageMultisampleEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleEXT) -#define glProgramUniform1fEXT GLEW_GET_FUN(__glewProgramUniform1fEXT) -#define glProgramUniform1fvEXT GLEW_GET_FUN(__glewProgramUniform1fvEXT) -#define glProgramUniform1iEXT GLEW_GET_FUN(__glewProgramUniform1iEXT) -#define glProgramUniform1ivEXT GLEW_GET_FUN(__glewProgramUniform1ivEXT) -#define glProgramUniform1uiEXT GLEW_GET_FUN(__glewProgramUniform1uiEXT) -#define glProgramUniform1uivEXT GLEW_GET_FUN(__glewProgramUniform1uivEXT) -#define glProgramUniform2fEXT GLEW_GET_FUN(__glewProgramUniform2fEXT) -#define glProgramUniform2fvEXT GLEW_GET_FUN(__glewProgramUniform2fvEXT) -#define glProgramUniform2iEXT GLEW_GET_FUN(__glewProgramUniform2iEXT) -#define glProgramUniform2ivEXT GLEW_GET_FUN(__glewProgramUniform2ivEXT) -#define glProgramUniform2uiEXT GLEW_GET_FUN(__glewProgramUniform2uiEXT) -#define glProgramUniform2uivEXT GLEW_GET_FUN(__glewProgramUniform2uivEXT) -#define glProgramUniform3fEXT GLEW_GET_FUN(__glewProgramUniform3fEXT) -#define glProgramUniform3fvEXT GLEW_GET_FUN(__glewProgramUniform3fvEXT) -#define glProgramUniform3iEXT GLEW_GET_FUN(__glewProgramUniform3iEXT) -#define glProgramUniform3ivEXT GLEW_GET_FUN(__glewProgramUniform3ivEXT) -#define glProgramUniform3uiEXT GLEW_GET_FUN(__glewProgramUniform3uiEXT) -#define glProgramUniform3uivEXT GLEW_GET_FUN(__glewProgramUniform3uivEXT) -#define glProgramUniform4fEXT GLEW_GET_FUN(__glewProgramUniform4fEXT) -#define glProgramUniform4fvEXT GLEW_GET_FUN(__glewProgramUniform4fvEXT) -#define glProgramUniform4iEXT GLEW_GET_FUN(__glewProgramUniform4iEXT) -#define glProgramUniform4ivEXT GLEW_GET_FUN(__glewProgramUniform4ivEXT) -#define glProgramUniform4uiEXT GLEW_GET_FUN(__glewProgramUniform4uiEXT) -#define glProgramUniform4uivEXT GLEW_GET_FUN(__glewProgramUniform4uivEXT) -#define glProgramUniformMatrix2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2fvEXT) -#define glProgramUniformMatrix2x3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x3fvEXT) -#define glProgramUniformMatrix2x4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x4fvEXT) -#define glProgramUniformMatrix3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3fvEXT) -#define glProgramUniformMatrix3x2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x2fvEXT) -#define glProgramUniformMatrix3x4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x4fvEXT) -#define glProgramUniformMatrix4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4fvEXT) -#define glProgramUniformMatrix4x2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x2fvEXT) -#define glProgramUniformMatrix4x3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x3fvEXT) -#define glPushClientAttribDefaultEXT GLEW_GET_FUN(__glewPushClientAttribDefaultEXT) -#define glTextureBufferEXT GLEW_GET_FUN(__glewTextureBufferEXT) -#define glTextureImage1DEXT GLEW_GET_FUN(__glewTextureImage1DEXT) -#define glTextureImage2DEXT GLEW_GET_FUN(__glewTextureImage2DEXT) -#define glTextureImage3DEXT GLEW_GET_FUN(__glewTextureImage3DEXT) -#define glTextureParameterIivEXT GLEW_GET_FUN(__glewTextureParameterIivEXT) -#define glTextureParameterIuivEXT GLEW_GET_FUN(__glewTextureParameterIuivEXT) -#define glTextureParameterfEXT GLEW_GET_FUN(__glewTextureParameterfEXT) -#define glTextureParameterfvEXT GLEW_GET_FUN(__glewTextureParameterfvEXT) -#define glTextureParameteriEXT GLEW_GET_FUN(__glewTextureParameteriEXT) -#define glTextureParameterivEXT GLEW_GET_FUN(__glewTextureParameterivEXT) -#define glTextureRenderbufferEXT GLEW_GET_FUN(__glewTextureRenderbufferEXT) -#define glTextureSubImage1DEXT GLEW_GET_FUN(__glewTextureSubImage1DEXT) -#define glTextureSubImage2DEXT GLEW_GET_FUN(__glewTextureSubImage2DEXT) -#define glTextureSubImage3DEXT GLEW_GET_FUN(__glewTextureSubImage3DEXT) -#define glUnmapNamedBufferEXT GLEW_GET_FUN(__glewUnmapNamedBufferEXT) -#define glVertexArrayColorOffsetEXT GLEW_GET_FUN(__glewVertexArrayColorOffsetEXT) -#define glVertexArrayEdgeFlagOffsetEXT GLEW_GET_FUN(__glewVertexArrayEdgeFlagOffsetEXT) -#define glVertexArrayFogCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayFogCoordOffsetEXT) -#define glVertexArrayIndexOffsetEXT GLEW_GET_FUN(__glewVertexArrayIndexOffsetEXT) -#define glVertexArrayMultiTexCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayMultiTexCoordOffsetEXT) -#define glVertexArrayNormalOffsetEXT GLEW_GET_FUN(__glewVertexArrayNormalOffsetEXT) -#define glVertexArraySecondaryColorOffsetEXT GLEW_GET_FUN(__glewVertexArraySecondaryColorOffsetEXT) -#define glVertexArrayTexCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayTexCoordOffsetEXT) -#define glVertexArrayVertexAttribDivisorEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribDivisorEXT) -#define glVertexArrayVertexAttribIOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribIOffsetEXT) -#define glVertexArrayVertexAttribOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribOffsetEXT) -#define glVertexArrayVertexOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexOffsetEXT) - -#define GLEW_EXT_direct_state_access GLEW_GET_VAR(__GLEW_EXT_direct_state_access) - -#endif /* GL_EXT_direct_state_access */ - -/* ----------------------- GL_EXT_discard_framebuffer ---------------------- */ - -#ifndef GL_EXT_discard_framebuffer -#define GL_EXT_discard_framebuffer 1 - -#define GL_COLOR_EXT 0x1800 -#define GL_DEPTH_EXT 0x1801 -#define GL_STENCIL_EXT 0x1802 - -typedef void (GLAPIENTRY * PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum* attachments); - -#define glDiscardFramebufferEXT GLEW_GET_FUN(__glewDiscardFramebufferEXT) - -#define GLEW_EXT_discard_framebuffer GLEW_GET_VAR(__GLEW_EXT_discard_framebuffer) - -#endif /* GL_EXT_discard_framebuffer */ - -/* ---------------------- GL_EXT_disjoint_timer_query ---------------------- */ - -#ifndef GL_EXT_disjoint_timer_query -#define GL_EXT_disjoint_timer_query 1 - -#define GL_QUERY_COUNTER_BITS_EXT 0x8864 -#define GL_CURRENT_QUERY_EXT 0x8865 -#define GL_QUERY_RESULT_EXT 0x8866 -#define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867 -#define GL_TIME_ELAPSED_EXT 0x88BF -#define GL_TIMESTAMP_EXT 0x8E28 -#define GL_GPU_DISJOINT_EXT 0x8FBB - -typedef void (GLAPIENTRY * PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id); -typedef void (GLAPIENTRY * PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint* ids); -typedef void (GLAPIENTRY * PFNGLENDQUERYEXTPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLGETINTEGER64VEXTPROC) (GLenum pname, GLint64* data); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVEXTPROC) (GLuint id, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISQUERYEXTPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLQUERYCOUNTEREXTPROC) (GLuint id, GLenum target); - -#define glBeginQueryEXT GLEW_GET_FUN(__glewBeginQueryEXT) -#define glDeleteQueriesEXT GLEW_GET_FUN(__glewDeleteQueriesEXT) -#define glEndQueryEXT GLEW_GET_FUN(__glewEndQueryEXT) -#define glGenQueriesEXT GLEW_GET_FUN(__glewGenQueriesEXT) -#define glGetInteger64vEXT GLEW_GET_FUN(__glewGetInteger64vEXT) -#define glGetQueryObjectivEXT GLEW_GET_FUN(__glewGetQueryObjectivEXT) -#define glGetQueryObjectuivEXT GLEW_GET_FUN(__glewGetQueryObjectuivEXT) -#define glGetQueryivEXT GLEW_GET_FUN(__glewGetQueryivEXT) -#define glIsQueryEXT GLEW_GET_FUN(__glewIsQueryEXT) -#define glQueryCounterEXT GLEW_GET_FUN(__glewQueryCounterEXT) - -#define GLEW_EXT_disjoint_timer_query GLEW_GET_VAR(__GLEW_EXT_disjoint_timer_query) - -#endif /* GL_EXT_disjoint_timer_query */ - -/* -------------------------- GL_EXT_draw_buffers -------------------------- */ - -#ifndef GL_EXT_draw_buffers -#define GL_EXT_draw_buffers 1 - -#define GL_MAX_DRAW_BUFFERS_EXT 0x8824 -#define GL_DRAW_BUFFER0_EXT 0x8825 -#define GL_DRAW_BUFFER1_EXT 0x8826 -#define GL_DRAW_BUFFER2_EXT 0x8827 -#define GL_DRAW_BUFFER3_EXT 0x8828 -#define GL_DRAW_BUFFER4_EXT 0x8829 -#define GL_DRAW_BUFFER5_EXT 0x882A -#define GL_DRAW_BUFFER6_EXT 0x882B -#define GL_DRAW_BUFFER7_EXT 0x882C -#define GL_DRAW_BUFFER8_EXT 0x882D -#define GL_DRAW_BUFFER9_EXT 0x882E -#define GL_DRAW_BUFFER10_EXT 0x882F -#define GL_DRAW_BUFFER11_EXT 0x8830 -#define GL_DRAW_BUFFER12_EXT 0x8831 -#define GL_DRAW_BUFFER13_EXT 0x8832 -#define GL_DRAW_BUFFER14_EXT 0x8833 -#define GL_DRAW_BUFFER15_EXT 0x8834 -#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF -#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0 -#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1 -#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2 -#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3 -#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4 -#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5 -#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6 -#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7 -#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8 -#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9 -#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA -#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB -#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC -#define GL_COLOR_ATTACHMENT13_EXT 0x8CED -#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE -#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF - -typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSEXTPROC) (GLsizei n, const GLenum* bufs); - -#define glDrawBuffersEXT GLEW_GET_FUN(__glewDrawBuffersEXT) - -#define GLEW_EXT_draw_buffers GLEW_GET_VAR(__GLEW_EXT_draw_buffers) - -#endif /* GL_EXT_draw_buffers */ - -/* -------------------------- GL_EXT_draw_buffers2 ------------------------- */ - -#ifndef GL_EXT_draw_buffers2 -#define GL_EXT_draw_buffers2 1 - -typedef void (GLAPIENTRY * PFNGLCOLORMASKINDEXEDEXTPROC) (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); -typedef void (GLAPIENTRY * PFNGLDISABLEINDEXEDEXTPROC) (GLenum target, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEINDEXEDEXTPROC) (GLenum target, GLuint index); -typedef void (GLAPIENTRY * PFNGLGETBOOLEANINDEXEDVEXTPROC) (GLenum value, GLuint index, GLboolean* data); -typedef void (GLAPIENTRY * PFNGLGETINTEGERINDEXEDVEXTPROC) (GLenum value, GLuint index, GLint* data); -typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDINDEXEDEXTPROC) (GLenum target, GLuint index); - -#define glColorMaskIndexedEXT GLEW_GET_FUN(__glewColorMaskIndexedEXT) -#define glDisableIndexedEXT GLEW_GET_FUN(__glewDisableIndexedEXT) -#define glEnableIndexedEXT GLEW_GET_FUN(__glewEnableIndexedEXT) -#define glGetBooleanIndexedvEXT GLEW_GET_FUN(__glewGetBooleanIndexedvEXT) -#define glGetIntegerIndexedvEXT GLEW_GET_FUN(__glewGetIntegerIndexedvEXT) -#define glIsEnabledIndexedEXT GLEW_GET_FUN(__glewIsEnabledIndexedEXT) - -#define GLEW_EXT_draw_buffers2 GLEW_GET_VAR(__GLEW_EXT_draw_buffers2) - -#endif /* GL_EXT_draw_buffers2 */ - -/* ---------------------- GL_EXT_draw_buffers_indexed ---------------------- */ - -#ifndef GL_EXT_draw_buffers_indexed -#define GL_EXT_draw_buffers_indexed 1 - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIEXTPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIEXTPROC) (GLuint buf, GLenum mode); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIEXTPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCIEXTPROC) (GLuint buf, GLenum src, GLenum dst); -typedef void (GLAPIENTRY * PFNGLCOLORMASKIEXTPROC) (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); -typedef void (GLAPIENTRY * PFNGLDISABLEIEXTPROC) (GLenum target, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEIEXTPROC) (GLenum target, GLuint index); -typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDIEXTPROC) (GLenum target, GLuint index); - -#define glBlendEquationSeparateiEXT GLEW_GET_FUN(__glewBlendEquationSeparateiEXT) -#define glBlendEquationiEXT GLEW_GET_FUN(__glewBlendEquationiEXT) -#define glBlendFuncSeparateiEXT GLEW_GET_FUN(__glewBlendFuncSeparateiEXT) -#define glBlendFunciEXT GLEW_GET_FUN(__glewBlendFunciEXT) -#define glColorMaskiEXT GLEW_GET_FUN(__glewColorMaskiEXT) -#define glDisableiEXT GLEW_GET_FUN(__glewDisableiEXT) -#define glEnableiEXT GLEW_GET_FUN(__glewEnableiEXT) -#define glIsEnablediEXT GLEW_GET_FUN(__glewIsEnablediEXT) - -#define GLEW_EXT_draw_buffers_indexed GLEW_GET_VAR(__GLEW_EXT_draw_buffers_indexed) - -#endif /* GL_EXT_draw_buffers_indexed */ - -/* -------------------- GL_EXT_draw_elements_base_vertex ------------------- */ - -#ifndef GL_EXT_draw_elements_base_vertex -#define GL_EXT_draw_elements_base_vertex 1 - -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSBASEVERTEXEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex); -typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSBASEVERTEXEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSBASEVERTEXEXTPROC) (GLenum mode, const GLsizei* count, GLenum type, const void *const *indices, GLsizei primcount, const GLint *basevertex); - -#define glDrawElementsBaseVertexEXT GLEW_GET_FUN(__glewDrawElementsBaseVertexEXT) -#define glDrawElementsInstancedBaseVertexEXT GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertexEXT) -#define glDrawRangeElementsBaseVertexEXT GLEW_GET_FUN(__glewDrawRangeElementsBaseVertexEXT) -#define glMultiDrawElementsBaseVertexEXT GLEW_GET_FUN(__glewMultiDrawElementsBaseVertexEXT) - -#define GLEW_EXT_draw_elements_base_vertex GLEW_GET_VAR(__GLEW_EXT_draw_elements_base_vertex) - -#endif /* GL_EXT_draw_elements_base_vertex */ - -/* ------------------------- GL_EXT_draw_instanced ------------------------- */ - -#ifndef GL_EXT_draw_instanced -#define GL_EXT_draw_instanced 1 - -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDEXTPROC) (GLenum mode, GLint start, GLsizei count, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDEXTPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); - -#define glDrawArraysInstancedEXT GLEW_GET_FUN(__glewDrawArraysInstancedEXT) -#define glDrawElementsInstancedEXT GLEW_GET_FUN(__glewDrawElementsInstancedEXT) - -#define GLEW_EXT_draw_instanced GLEW_GET_VAR(__GLEW_EXT_draw_instanced) - -#endif /* GL_EXT_draw_instanced */ - -/* ----------------------- GL_EXT_draw_range_elements ---------------------- */ - -#ifndef GL_EXT_draw_range_elements -#define GL_EXT_draw_range_elements 1 - -#define GL_MAX_ELEMENTS_VERTICES_EXT 0x80E8 -#define GL_MAX_ELEMENTS_INDICES_EXT 0x80E9 - -typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices); - -#define glDrawRangeElementsEXT GLEW_GET_FUN(__glewDrawRangeElementsEXT) - -#define GLEW_EXT_draw_range_elements GLEW_GET_VAR(__GLEW_EXT_draw_range_elements) - -#endif /* GL_EXT_draw_range_elements */ - -/* --------------------- GL_EXT_draw_transform_feedback -------------------- */ - -#ifndef GL_EXT_draw_transform_feedback -#define GL_EXT_draw_transform_feedback 1 - -typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKEXTPROC) (GLenum mode, GLuint id); -typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDEXTPROC) (GLenum mode, GLuint id, GLsizei instancecount); - -#define glDrawTransformFeedbackEXT GLEW_GET_FUN(__glewDrawTransformFeedbackEXT) -#define glDrawTransformFeedbackInstancedEXT GLEW_GET_FUN(__glewDrawTransformFeedbackInstancedEXT) - -#define GLEW_EXT_draw_transform_feedback GLEW_GET_VAR(__GLEW_EXT_draw_transform_feedback) - -#endif /* GL_EXT_draw_transform_feedback */ - -/* ------------------------- GL_EXT_external_buffer ------------------------ */ - -#ifndef GL_EXT_external_buffer -#define GL_EXT_external_buffer 1 - -typedef void* GLeglClientBufferEXT; - -typedef void (GLAPIENTRY * PFNGLBUFFERSTORAGEEXTERNALEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSTORAGEEXTERNALEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags); - -#define glBufferStorageExternalEXT GLEW_GET_FUN(__glewBufferStorageExternalEXT) -#define glNamedBufferStorageExternalEXT GLEW_GET_FUN(__glewNamedBufferStorageExternalEXT) - -#define GLEW_EXT_external_buffer GLEW_GET_VAR(__GLEW_EXT_external_buffer) - -#endif /* GL_EXT_external_buffer */ - -/* --------------------------- GL_EXT_float_blend -------------------------- */ - -#ifndef GL_EXT_float_blend -#define GL_EXT_float_blend 1 - -#define GLEW_EXT_float_blend GLEW_GET_VAR(__GLEW_EXT_float_blend) - -#endif /* GL_EXT_float_blend */ - -/* ---------------------------- GL_EXT_fog_coord --------------------------- */ - -#ifndef GL_EXT_fog_coord -#define GL_EXT_fog_coord 1 - -#define GL_FOG_COORDINATE_SOURCE_EXT 0x8450 -#define GL_FOG_COORDINATE_EXT 0x8451 -#define GL_FRAGMENT_DEPTH_EXT 0x8452 -#define GL_CURRENT_FOG_COORDINATE_EXT 0x8453 -#define GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454 -#define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455 -#define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456 -#define GL_FOG_COORDINATE_ARRAY_EXT 0x8457 - -typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTEREXTPROC) (GLenum type, GLsizei stride, const void *pointer); -typedef void (GLAPIENTRY * PFNGLFOGCOORDDEXTPROC) (GLdouble coord); -typedef void (GLAPIENTRY * PFNGLFOGCOORDDVEXTPROC) (const GLdouble *coord); -typedef void (GLAPIENTRY * PFNGLFOGCOORDFEXTPROC) (GLfloat coord); -typedef void (GLAPIENTRY * PFNGLFOGCOORDFVEXTPROC) (const GLfloat *coord); - -#define glFogCoordPointerEXT GLEW_GET_FUN(__glewFogCoordPointerEXT) -#define glFogCoorddEXT GLEW_GET_FUN(__glewFogCoorddEXT) -#define glFogCoorddvEXT GLEW_GET_FUN(__glewFogCoorddvEXT) -#define glFogCoordfEXT GLEW_GET_FUN(__glewFogCoordfEXT) -#define glFogCoordfvEXT GLEW_GET_FUN(__glewFogCoordfvEXT) - -#define GLEW_EXT_fog_coord GLEW_GET_VAR(__GLEW_EXT_fog_coord) - -#endif /* GL_EXT_fog_coord */ - -/* --------------------------- GL_EXT_frag_depth --------------------------- */ - -#ifndef GL_EXT_frag_depth -#define GL_EXT_frag_depth 1 - -#define GLEW_EXT_frag_depth GLEW_GET_VAR(__GLEW_EXT_frag_depth) - -#endif /* GL_EXT_frag_depth */ - -/* ------------------------ GL_EXT_fragment_lighting ----------------------- */ - -#ifndef GL_EXT_fragment_lighting -#define GL_EXT_fragment_lighting 1 - -#define GL_FRAGMENT_LIGHTING_EXT 0x8400 -#define GL_FRAGMENT_COLOR_MATERIAL_EXT 0x8401 -#define GL_FRAGMENT_COLOR_MATERIAL_FACE_EXT 0x8402 -#define GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_EXT 0x8403 -#define GL_MAX_FRAGMENT_LIGHTS_EXT 0x8404 -#define GL_MAX_ACTIVE_LIGHTS_EXT 0x8405 -#define GL_CURRENT_RASTER_NORMAL_EXT 0x8406 -#define GL_LIGHT_ENV_MODE_EXT 0x8407 -#define GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_EXT 0x8408 -#define GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_EXT 0x8409 -#define GL_FRAGMENT_LIGHT_MODEL_AMBIENT_EXT 0x840A -#define GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_EXT 0x840B -#define GL_FRAGMENT_LIGHT0_EXT 0x840C -#define GL_FRAGMENT_LIGHT7_EXT 0x8413 - -typedef void (GLAPIENTRY * PFNGLFRAGMENTCOLORMATERIALEXTPROC) (GLenum face, GLenum mode); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFEXTPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFVEXTPROC) (GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIEXTPROC) (GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIVEXTPROC) (GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFEXTPROC) (GLenum light, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFVEXTPROC) (GLenum light, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIEXTPROC) (GLenum light, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIVEXTPROC) (GLenum light, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFEXTPROC) (GLenum face, GLenum pname, const GLfloat param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFVEXTPROC) (GLenum face, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIEXTPROC) (GLenum face, GLenum pname, const GLint param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIVEXTPROC) (GLenum face, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTFVEXTPROC) (GLenum light, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTIVEXTPROC) (GLenum light, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALFVEXTPROC) (GLenum face, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALIVEXTPROC) (GLenum face, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLLIGHTENVIEXTPROC) (GLenum pname, GLint param); - -#define glFragmentColorMaterialEXT GLEW_GET_FUN(__glewFragmentColorMaterialEXT) -#define glFragmentLightModelfEXT GLEW_GET_FUN(__glewFragmentLightModelfEXT) -#define glFragmentLightModelfvEXT GLEW_GET_FUN(__glewFragmentLightModelfvEXT) -#define glFragmentLightModeliEXT GLEW_GET_FUN(__glewFragmentLightModeliEXT) -#define glFragmentLightModelivEXT GLEW_GET_FUN(__glewFragmentLightModelivEXT) -#define glFragmentLightfEXT GLEW_GET_FUN(__glewFragmentLightfEXT) -#define glFragmentLightfvEXT GLEW_GET_FUN(__glewFragmentLightfvEXT) -#define glFragmentLightiEXT GLEW_GET_FUN(__glewFragmentLightiEXT) -#define glFragmentLightivEXT GLEW_GET_FUN(__glewFragmentLightivEXT) -#define glFragmentMaterialfEXT GLEW_GET_FUN(__glewFragmentMaterialfEXT) -#define glFragmentMaterialfvEXT GLEW_GET_FUN(__glewFragmentMaterialfvEXT) -#define glFragmentMaterialiEXT GLEW_GET_FUN(__glewFragmentMaterialiEXT) -#define glFragmentMaterialivEXT GLEW_GET_FUN(__glewFragmentMaterialivEXT) -#define glGetFragmentLightfvEXT GLEW_GET_FUN(__glewGetFragmentLightfvEXT) -#define glGetFragmentLightivEXT GLEW_GET_FUN(__glewGetFragmentLightivEXT) -#define glGetFragmentMaterialfvEXT GLEW_GET_FUN(__glewGetFragmentMaterialfvEXT) -#define glGetFragmentMaterialivEXT GLEW_GET_FUN(__glewGetFragmentMaterialivEXT) -#define glLightEnviEXT GLEW_GET_FUN(__glewLightEnviEXT) - -#define GLEW_EXT_fragment_lighting GLEW_GET_VAR(__GLEW_EXT_fragment_lighting) - -#endif /* GL_EXT_fragment_lighting */ - -/* ------------------------ GL_EXT_framebuffer_blit ------------------------ */ - -#ifndef GL_EXT_framebuffer_blit -#define GL_EXT_framebuffer_blit 1 - -#define GL_DRAW_FRAMEBUFFER_BINDING_EXT 0x8CA6 -#define GL_READ_FRAMEBUFFER_EXT 0x8CA8 -#define GL_DRAW_FRAMEBUFFER_EXT 0x8CA9 -#define GL_READ_FRAMEBUFFER_BINDING_EXT 0x8CAA - -typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFEREXTPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); - -#define glBlitFramebufferEXT GLEW_GET_FUN(__glewBlitFramebufferEXT) - -#define GLEW_EXT_framebuffer_blit GLEW_GET_VAR(__GLEW_EXT_framebuffer_blit) - -#endif /* GL_EXT_framebuffer_blit */ - -/* --------------------- GL_EXT_framebuffer_multisample -------------------- */ - -#ifndef GL_EXT_framebuffer_multisample -#define GL_EXT_framebuffer_multisample 1 - -#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56 -#define GL_MAX_SAMPLES_EXT 0x8D57 - -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); - -#define glRenderbufferStorageMultisampleEXT GLEW_GET_FUN(__glewRenderbufferStorageMultisampleEXT) - -#define GLEW_EXT_framebuffer_multisample GLEW_GET_VAR(__GLEW_EXT_framebuffer_multisample) - -#endif /* GL_EXT_framebuffer_multisample */ - -/* --------------- GL_EXT_framebuffer_multisample_blit_scaled -------------- */ - -#ifndef GL_EXT_framebuffer_multisample_blit_scaled -#define GL_EXT_framebuffer_multisample_blit_scaled 1 - -#define GL_SCALED_RESOLVE_FASTEST_EXT 0x90BA -#define GL_SCALED_RESOLVE_NICEST_EXT 0x90BB - -#define GLEW_EXT_framebuffer_multisample_blit_scaled GLEW_GET_VAR(__GLEW_EXT_framebuffer_multisample_blit_scaled) - -#endif /* GL_EXT_framebuffer_multisample_blit_scaled */ - -/* ----------------------- GL_EXT_framebuffer_object ----------------------- */ - -#ifndef GL_EXT_framebuffer_object -#define GL_EXT_framebuffer_object 1 - -#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506 -#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8 -#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6 -#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7 -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0 -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4 -#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5 -#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6 -#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7 -#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9 -#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA -#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB -#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC -#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD -#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF -#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0 -#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1 -#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2 -#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3 -#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4 -#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5 -#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6 -#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7 -#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8 -#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9 -#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA -#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB -#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC -#define GL_COLOR_ATTACHMENT13_EXT 0x8CED -#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE -#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF -#define GL_DEPTH_ATTACHMENT_EXT 0x8D00 -#define GL_STENCIL_ATTACHMENT_EXT 0x8D20 -#define GL_FRAMEBUFFER_EXT 0x8D40 -#define GL_RENDERBUFFER_EXT 0x8D41 -#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42 -#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43 -#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44 -#define GL_STENCIL_INDEX1_EXT 0x8D46 -#define GL_STENCIL_INDEX4_EXT 0x8D47 -#define GL_STENCIL_INDEX8_EXT 0x8D48 -#define GL_STENCIL_INDEX16_EXT 0x8D49 -#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50 -#define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51 -#define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52 -#define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53 -#define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54 -#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55 - -typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFEREXTPROC) (GLenum target, GLuint framebuffer); -typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFEREXTPROC) (GLenum target, GLuint renderbuffer); -typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSEXTPROC) (GLsizei n, const GLuint* framebuffers); -typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSEXTPROC) (GLsizei n, const GLuint* renderbuffers); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE1DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); -typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSEXTPROC) (GLsizei n, GLuint* framebuffers); -typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSEXTPROC) (GLsizei n, GLuint* renderbuffers); -typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPEXTPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFEREXTPROC) (GLuint framebuffer); -typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFEREXTPROC) (GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); - -#define glBindFramebufferEXT GLEW_GET_FUN(__glewBindFramebufferEXT) -#define glBindRenderbufferEXT GLEW_GET_FUN(__glewBindRenderbufferEXT) -#define glCheckFramebufferStatusEXT GLEW_GET_FUN(__glewCheckFramebufferStatusEXT) -#define glDeleteFramebuffersEXT GLEW_GET_FUN(__glewDeleteFramebuffersEXT) -#define glDeleteRenderbuffersEXT GLEW_GET_FUN(__glewDeleteRenderbuffersEXT) -#define glFramebufferRenderbufferEXT GLEW_GET_FUN(__glewFramebufferRenderbufferEXT) -#define glFramebufferTexture1DEXT GLEW_GET_FUN(__glewFramebufferTexture1DEXT) -#define glFramebufferTexture2DEXT GLEW_GET_FUN(__glewFramebufferTexture2DEXT) -#define glFramebufferTexture3DEXT GLEW_GET_FUN(__glewFramebufferTexture3DEXT) -#define glGenFramebuffersEXT GLEW_GET_FUN(__glewGenFramebuffersEXT) -#define glGenRenderbuffersEXT GLEW_GET_FUN(__glewGenRenderbuffersEXT) -#define glGenerateMipmapEXT GLEW_GET_FUN(__glewGenerateMipmapEXT) -#define glGetFramebufferAttachmentParameterivEXT GLEW_GET_FUN(__glewGetFramebufferAttachmentParameterivEXT) -#define glGetRenderbufferParameterivEXT GLEW_GET_FUN(__glewGetRenderbufferParameterivEXT) -#define glIsFramebufferEXT GLEW_GET_FUN(__glewIsFramebufferEXT) -#define glIsRenderbufferEXT GLEW_GET_FUN(__glewIsRenderbufferEXT) -#define glRenderbufferStorageEXT GLEW_GET_FUN(__glewRenderbufferStorageEXT) - -#define GLEW_EXT_framebuffer_object GLEW_GET_VAR(__GLEW_EXT_framebuffer_object) - -#endif /* GL_EXT_framebuffer_object */ - -/* ------------------------ GL_EXT_framebuffer_sRGB ------------------------ */ - -#ifndef GL_EXT_framebuffer_sRGB -#define GL_EXT_framebuffer_sRGB 1 - -#define GL_FRAMEBUFFER_SRGB_EXT 0x8DB9 -#define GL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x8DBA - -#define GLEW_EXT_framebuffer_sRGB GLEW_GET_VAR(__GLEW_EXT_framebuffer_sRGB) - -#endif /* GL_EXT_framebuffer_sRGB */ - -/* ----------------------- GL_EXT_geometry_point_size ---------------------- */ - -#ifndef GL_EXT_geometry_point_size -#define GL_EXT_geometry_point_size 1 - -#define GL_GEOMETRY_SHADER_BIT_EXT 0x00000004 -#define GL_LINES_ADJACENCY_EXT 0xA -#define GL_LINE_STRIP_ADJACENCY_EXT 0xB -#define GL_TRIANGLES_ADJACENCY_EXT 0xC -#define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD -#define GL_LAYER_PROVOKING_VERTEX_EXT 0x825E -#define GL_UNDEFINED_VERTEX_EXT 0x8260 -#define GL_GEOMETRY_SHADER_INVOCATIONS_EXT 0x887F -#define GL_GEOMETRY_LINKED_VERTICES_OUT_EXT 0x8916 -#define GL_GEOMETRY_LINKED_INPUT_TYPE_EXT 0x8917 -#define GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT 0x8918 -#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT 0x8A2C -#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8A32 -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29 -#define GL_PRIMITIVES_GENERATED_EXT 0x8C87 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8 -#define GL_GEOMETRY_SHADER_EXT 0x8DD9 -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1 -#define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D -#define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E -#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT 0x8E5A -#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT 0x90CD -#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT 0x90D7 -#define GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT 0x9123 -#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT 0x9124 -#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT 0x92CF -#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT 0x92D5 -#define GL_REFERENCED_BY_GEOMETRY_SHADER_EXT 0x9309 -#define GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT 0x9312 -#define GL_MAX_FRAMEBUFFER_LAYERS_EXT 0x9317 - -#define GLEW_EXT_geometry_point_size GLEW_GET_VAR(__GLEW_EXT_geometry_point_size) - -#endif /* GL_EXT_geometry_point_size */ - -/* ------------------------- GL_EXT_geometry_shader ------------------------ */ - -#ifndef GL_EXT_geometry_shader -#define GL_EXT_geometry_shader 1 - -#define GL_GEOMETRY_SHADER_BIT_EXT 0x00000004 -#define GL_LINES_ADJACENCY_EXT 0xA -#define GL_LINE_STRIP_ADJACENCY_EXT 0xB -#define GL_TRIANGLES_ADJACENCY_EXT 0xC -#define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD -#define GL_LAYER_PROVOKING_VERTEX_EXT 0x825E -#define GL_UNDEFINED_VERTEX_EXT 0x8260 -#define GL_GEOMETRY_SHADER_INVOCATIONS_EXT 0x887F -#define GL_GEOMETRY_LINKED_VERTICES_OUT_EXT 0x8916 -#define GL_GEOMETRY_LINKED_INPUT_TYPE_EXT 0x8917 -#define GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT 0x8918 -#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT 0x8A2C -#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8A32 -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29 -#define GL_PRIMITIVES_GENERATED_EXT 0x8C87 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8 -#define GL_GEOMETRY_SHADER_EXT 0x8DD9 -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1 -#define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D -#define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E -#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT 0x8E5A -#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT 0x90CD -#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT 0x90D7 -#define GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT 0x9123 -#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT 0x9124 -#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT 0x92CF -#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT 0x92D5 -#define GL_REFERENCED_BY_GEOMETRY_SHADER_EXT 0x9309 -#define GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT 0x9312 -#define GL_MAX_FRAMEBUFFER_LAYERS_EXT 0x9317 - -#define GLEW_EXT_geometry_shader GLEW_GET_VAR(__GLEW_EXT_geometry_shader) - -#endif /* GL_EXT_geometry_shader */ - -/* ------------------------ GL_EXT_geometry_shader4 ------------------------ */ - -#ifndef GL_EXT_geometry_shader4 -#define GL_EXT_geometry_shader4 1 - -#define GL_LINES_ADJACENCY_EXT 0xA -#define GL_LINE_STRIP_ADJACENCY_EXT 0xB -#define GL_TRIANGLES_ADJACENCY_EXT 0xC -#define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD -#define GL_PROGRAM_POINT_SIZE_EXT 0x8642 -#define GL_MAX_VARYING_COMPONENTS_EXT 0x8B4B -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT 0x8CD4 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT 0x8DA9 -#define GL_GEOMETRY_SHADER_EXT 0x8DD9 -#define GL_GEOMETRY_VERTICES_OUT_EXT 0x8DDA -#define GL_GEOMETRY_INPUT_TYPE_EXT 0x8DDB -#define GL_GEOMETRY_OUTPUT_TYPE_EXT 0x8DDC -#define GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT 0x8DDD -#define GL_MAX_VERTEX_VARYING_COMPONENTS_EXT 0x8DDE -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value); - -#define glFramebufferTextureEXT GLEW_GET_FUN(__glewFramebufferTextureEXT) -#define glFramebufferTextureFaceEXT GLEW_GET_FUN(__glewFramebufferTextureFaceEXT) -#define glProgramParameteriEXT GLEW_GET_FUN(__glewProgramParameteriEXT) - -#define GLEW_EXT_geometry_shader4 GLEW_GET_VAR(__GLEW_EXT_geometry_shader4) - -#endif /* GL_EXT_geometry_shader4 */ - -/* --------------------- GL_EXT_gpu_program_parameters --------------------- */ - -#ifndef GL_EXT_gpu_program_parameters -#define GL_EXT_gpu_program_parameters 1 - -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat* params); - -#define glProgramEnvParameters4fvEXT GLEW_GET_FUN(__glewProgramEnvParameters4fvEXT) -#define glProgramLocalParameters4fvEXT GLEW_GET_FUN(__glewProgramLocalParameters4fvEXT) - -#define GLEW_EXT_gpu_program_parameters GLEW_GET_VAR(__GLEW_EXT_gpu_program_parameters) - -#endif /* GL_EXT_gpu_program_parameters */ - -/* --------------------------- GL_EXT_gpu_shader4 -------------------------- */ - -#ifndef GL_EXT_gpu_shader4 -#define GL_EXT_gpu_shader4 1 - -#define GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT 0x88FD -#define GL_SAMPLER_1D_ARRAY_EXT 0x8DC0 -#define GL_SAMPLER_2D_ARRAY_EXT 0x8DC1 -#define GL_SAMPLER_BUFFER_EXT 0x8DC2 -#define GL_SAMPLER_1D_ARRAY_SHADOW_EXT 0x8DC3 -#define GL_SAMPLER_2D_ARRAY_SHADOW_EXT 0x8DC4 -#define GL_SAMPLER_CUBE_SHADOW_EXT 0x8DC5 -#define GL_UNSIGNED_INT_VEC2_EXT 0x8DC6 -#define GL_UNSIGNED_INT_VEC3_EXT 0x8DC7 -#define GL_UNSIGNED_INT_VEC4_EXT 0x8DC8 -#define GL_INT_SAMPLER_1D_EXT 0x8DC9 -#define GL_INT_SAMPLER_2D_EXT 0x8DCA -#define GL_INT_SAMPLER_3D_EXT 0x8DCB -#define GL_INT_SAMPLER_CUBE_EXT 0x8DCC -#define GL_INT_SAMPLER_2D_RECT_EXT 0x8DCD -#define GL_INT_SAMPLER_1D_ARRAY_EXT 0x8DCE -#define GL_INT_SAMPLER_2D_ARRAY_EXT 0x8DCF -#define GL_INT_SAMPLER_BUFFER_EXT 0x8DD0 -#define GL_UNSIGNED_INT_SAMPLER_1D_EXT 0x8DD1 -#define GL_UNSIGNED_INT_SAMPLER_2D_EXT 0x8DD2 -#define GL_UNSIGNED_INT_SAMPLER_3D_EXT 0x8DD3 -#define GL_UNSIGNED_INT_SAMPLER_CUBE_EXT 0x8DD4 -#define GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT 0x8DD5 -#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT 0x8DD6 -#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT 0x8DD7 -#define GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8 - -typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONEXTPROC) (GLuint program, GLuint color, const GLchar *name); -typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATALOCATIONEXTPROC) (GLuint program, const GLchar *name); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMUIVEXTPROC) (GLuint program, GLint location, GLuint *params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIIVEXTPROC) (GLuint index, GLenum pname, GLint *params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIUIVEXTPROC) (GLuint index, GLenum pname, GLuint *params); -typedef void (GLAPIENTRY * PFNGLUNIFORM1UIEXTPROC) (GLint location, GLuint v0); -typedef void (GLAPIENTRY * PFNGLUNIFORM1UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2UIEXTPROC) (GLint location, GLuint v0, GLuint v1); -typedef void (GLAPIENTRY * PFNGLUNIFORM2UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2); -typedef void (GLAPIENTRY * PFNGLUNIFORM3UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); -typedef void (GLAPIENTRY * PFNGLUNIFORM4UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IEXTPROC) (GLuint index, GLint x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IVEXTPROC) (GLuint index, const GLint *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIEXTPROC) (GLuint index, GLuint x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIVEXTPROC) (GLuint index, const GLuint *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IEXTPROC) (GLuint index, GLint x, GLint y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IVEXTPROC) (GLuint index, const GLint *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIEXTPROC) (GLuint index, GLuint x, GLuint y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIVEXTPROC) (GLuint index, const GLuint *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IEXTPROC) (GLuint index, GLint x, GLint y, GLint z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IVEXTPROC) (GLuint index, const GLint *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIVEXTPROC) (GLuint index, const GLuint *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4BVEXTPROC) (GLuint index, const GLbyte *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IEXTPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IVEXTPROC) (GLuint index, const GLint *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4SVEXTPROC) (GLuint index, const GLshort *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UBVEXTPROC) (GLuint index, const GLubyte *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIVEXTPROC) (GLuint index, const GLuint *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4USVEXTPROC) (GLuint index, const GLushort *v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer); - -#define glBindFragDataLocationEXT GLEW_GET_FUN(__glewBindFragDataLocationEXT) -#define glGetFragDataLocationEXT GLEW_GET_FUN(__glewGetFragDataLocationEXT) -#define glGetUniformuivEXT GLEW_GET_FUN(__glewGetUniformuivEXT) -#define glGetVertexAttribIivEXT GLEW_GET_FUN(__glewGetVertexAttribIivEXT) -#define glGetVertexAttribIuivEXT GLEW_GET_FUN(__glewGetVertexAttribIuivEXT) -#define glUniform1uiEXT GLEW_GET_FUN(__glewUniform1uiEXT) -#define glUniform1uivEXT GLEW_GET_FUN(__glewUniform1uivEXT) -#define glUniform2uiEXT GLEW_GET_FUN(__glewUniform2uiEXT) -#define glUniform2uivEXT GLEW_GET_FUN(__glewUniform2uivEXT) -#define glUniform3uiEXT GLEW_GET_FUN(__glewUniform3uiEXT) -#define glUniform3uivEXT GLEW_GET_FUN(__glewUniform3uivEXT) -#define glUniform4uiEXT GLEW_GET_FUN(__glewUniform4uiEXT) -#define glUniform4uivEXT GLEW_GET_FUN(__glewUniform4uivEXT) -#define glVertexAttribI1iEXT GLEW_GET_FUN(__glewVertexAttribI1iEXT) -#define glVertexAttribI1ivEXT GLEW_GET_FUN(__glewVertexAttribI1ivEXT) -#define glVertexAttribI1uiEXT GLEW_GET_FUN(__glewVertexAttribI1uiEXT) -#define glVertexAttribI1uivEXT GLEW_GET_FUN(__glewVertexAttribI1uivEXT) -#define glVertexAttribI2iEXT GLEW_GET_FUN(__glewVertexAttribI2iEXT) -#define glVertexAttribI2ivEXT GLEW_GET_FUN(__glewVertexAttribI2ivEXT) -#define glVertexAttribI2uiEXT GLEW_GET_FUN(__glewVertexAttribI2uiEXT) -#define glVertexAttribI2uivEXT GLEW_GET_FUN(__glewVertexAttribI2uivEXT) -#define glVertexAttribI3iEXT GLEW_GET_FUN(__glewVertexAttribI3iEXT) -#define glVertexAttribI3ivEXT GLEW_GET_FUN(__glewVertexAttribI3ivEXT) -#define glVertexAttribI3uiEXT GLEW_GET_FUN(__glewVertexAttribI3uiEXT) -#define glVertexAttribI3uivEXT GLEW_GET_FUN(__glewVertexAttribI3uivEXT) -#define glVertexAttribI4bvEXT GLEW_GET_FUN(__glewVertexAttribI4bvEXT) -#define glVertexAttribI4iEXT GLEW_GET_FUN(__glewVertexAttribI4iEXT) -#define glVertexAttribI4ivEXT GLEW_GET_FUN(__glewVertexAttribI4ivEXT) -#define glVertexAttribI4svEXT GLEW_GET_FUN(__glewVertexAttribI4svEXT) -#define glVertexAttribI4ubvEXT GLEW_GET_FUN(__glewVertexAttribI4ubvEXT) -#define glVertexAttribI4uiEXT GLEW_GET_FUN(__glewVertexAttribI4uiEXT) -#define glVertexAttribI4uivEXT GLEW_GET_FUN(__glewVertexAttribI4uivEXT) -#define glVertexAttribI4usvEXT GLEW_GET_FUN(__glewVertexAttribI4usvEXT) -#define glVertexAttribIPointerEXT GLEW_GET_FUN(__glewVertexAttribIPointerEXT) - -#define GLEW_EXT_gpu_shader4 GLEW_GET_VAR(__GLEW_EXT_gpu_shader4) - -#endif /* GL_EXT_gpu_shader4 */ - -/* --------------------------- GL_EXT_gpu_shader5 -------------------------- */ - -#ifndef GL_EXT_gpu_shader5 -#define GL_EXT_gpu_shader5 1 - -#define GLEW_EXT_gpu_shader5 GLEW_GET_VAR(__GLEW_EXT_gpu_shader5) - -#endif /* GL_EXT_gpu_shader5 */ - -/* ---------------------------- GL_EXT_histogram --------------------------- */ - -#ifndef GL_EXT_histogram -#define GL_EXT_histogram 1 - -#define GL_HISTOGRAM_EXT 0x8024 -#define GL_PROXY_HISTOGRAM_EXT 0x8025 -#define GL_HISTOGRAM_WIDTH_EXT 0x8026 -#define GL_HISTOGRAM_FORMAT_EXT 0x8027 -#define GL_HISTOGRAM_RED_SIZE_EXT 0x8028 -#define GL_HISTOGRAM_GREEN_SIZE_EXT 0x8029 -#define GL_HISTOGRAM_BLUE_SIZE_EXT 0x802A -#define GL_HISTOGRAM_ALPHA_SIZE_EXT 0x802B -#define GL_HISTOGRAM_LUMINANCE_SIZE_EXT 0x802C -#define GL_HISTOGRAM_SINK_EXT 0x802D -#define GL_MINMAX_EXT 0x802E -#define GL_MINMAX_FORMAT_EXT 0x802F -#define GL_MINMAX_SINK_EXT 0x8030 - -typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values); -typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETMINMAXEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void *values); -typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLHISTOGRAMEXTPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink); -typedef void (GLAPIENTRY * PFNGLMINMAXEXTPROC) (GLenum target, GLenum internalformat, GLboolean sink); -typedef void (GLAPIENTRY * PFNGLRESETHISTOGRAMEXTPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLRESETMINMAXEXTPROC) (GLenum target); - -#define glGetHistogramEXT GLEW_GET_FUN(__glewGetHistogramEXT) -#define glGetHistogramParameterfvEXT GLEW_GET_FUN(__glewGetHistogramParameterfvEXT) -#define glGetHistogramParameterivEXT GLEW_GET_FUN(__glewGetHistogramParameterivEXT) -#define glGetMinmaxEXT GLEW_GET_FUN(__glewGetMinmaxEXT) -#define glGetMinmaxParameterfvEXT GLEW_GET_FUN(__glewGetMinmaxParameterfvEXT) -#define glGetMinmaxParameterivEXT GLEW_GET_FUN(__glewGetMinmaxParameterivEXT) -#define glHistogramEXT GLEW_GET_FUN(__glewHistogramEXT) -#define glMinmaxEXT GLEW_GET_FUN(__glewMinmaxEXT) -#define glResetHistogramEXT GLEW_GET_FUN(__glewResetHistogramEXT) -#define glResetMinmaxEXT GLEW_GET_FUN(__glewResetMinmaxEXT) - -#define GLEW_EXT_histogram GLEW_GET_VAR(__GLEW_EXT_histogram) - -#endif /* GL_EXT_histogram */ - -/* ----------------------- GL_EXT_index_array_formats ---------------------- */ - -#ifndef GL_EXT_index_array_formats -#define GL_EXT_index_array_formats 1 - -#define GLEW_EXT_index_array_formats GLEW_GET_VAR(__GLEW_EXT_index_array_formats) - -#endif /* GL_EXT_index_array_formats */ - -/* --------------------------- GL_EXT_index_func --------------------------- */ - -#ifndef GL_EXT_index_func -#define GL_EXT_index_func 1 - -typedef void (GLAPIENTRY * PFNGLINDEXFUNCEXTPROC) (GLenum func, GLfloat ref); - -#define glIndexFuncEXT GLEW_GET_FUN(__glewIndexFuncEXT) - -#define GLEW_EXT_index_func GLEW_GET_VAR(__GLEW_EXT_index_func) - -#endif /* GL_EXT_index_func */ - -/* ------------------------- GL_EXT_index_material ------------------------- */ - -#ifndef GL_EXT_index_material -#define GL_EXT_index_material 1 - -typedef void (GLAPIENTRY * PFNGLINDEXMATERIALEXTPROC) (GLenum face, GLenum mode); - -#define glIndexMaterialEXT GLEW_GET_FUN(__glewIndexMaterialEXT) - -#define GLEW_EXT_index_material GLEW_GET_VAR(__GLEW_EXT_index_material) - -#endif /* GL_EXT_index_material */ - -/* -------------------------- GL_EXT_index_texture ------------------------- */ - -#ifndef GL_EXT_index_texture -#define GL_EXT_index_texture 1 - -#define GLEW_EXT_index_texture GLEW_GET_VAR(__GLEW_EXT_index_texture) - -#endif /* GL_EXT_index_texture */ - -/* ------------------------ GL_EXT_instanced_arrays ------------------------ */ - -#ifndef GL_EXT_instanced_arrays -#define GL_EXT_instanced_arrays 1 - -#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_EXT 0x88FE - -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISOREXTPROC) (GLuint index, GLuint divisor); - -#define glVertexAttribDivisorEXT GLEW_GET_FUN(__glewVertexAttribDivisorEXT) - -#define GLEW_EXT_instanced_arrays GLEW_GET_VAR(__GLEW_EXT_instanced_arrays) - -#endif /* GL_EXT_instanced_arrays */ - -/* -------------------------- GL_EXT_light_texture ------------------------- */ - -#ifndef GL_EXT_light_texture -#define GL_EXT_light_texture 1 - -#define GL_FRAGMENT_MATERIAL_EXT 0x8349 -#define GL_FRAGMENT_NORMAL_EXT 0x834A -#define GL_FRAGMENT_COLOR_EXT 0x834C -#define GL_ATTENUATION_EXT 0x834D -#define GL_SHADOW_ATTENUATION_EXT 0x834E -#define GL_TEXTURE_APPLICATION_MODE_EXT 0x834F -#define GL_TEXTURE_LIGHT_EXT 0x8350 -#define GL_TEXTURE_MATERIAL_FACE_EXT 0x8351 -#define GL_TEXTURE_MATERIAL_PARAMETER_EXT 0x8352 - -typedef void (GLAPIENTRY * PFNGLAPPLYTEXTUREEXTPROC) (GLenum mode); -typedef void (GLAPIENTRY * PFNGLTEXTURELIGHTEXTPROC) (GLenum pname); -typedef void (GLAPIENTRY * PFNGLTEXTUREMATERIALEXTPROC) (GLenum face, GLenum mode); - -#define glApplyTextureEXT GLEW_GET_FUN(__glewApplyTextureEXT) -#define glTextureLightEXT GLEW_GET_FUN(__glewTextureLightEXT) -#define glTextureMaterialEXT GLEW_GET_FUN(__glewTextureMaterialEXT) - -#define GLEW_EXT_light_texture GLEW_GET_VAR(__GLEW_EXT_light_texture) - -#endif /* GL_EXT_light_texture */ - -/* ------------------------ GL_EXT_map_buffer_range ------------------------ */ - -#ifndef GL_EXT_map_buffer_range -#define GL_EXT_map_buffer_range 1 - -#define GL_MAP_READ_BIT_EXT 0x0001 -#define GL_MAP_WRITE_BIT_EXT 0x0002 -#define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004 -#define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008 -#define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010 -#define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020 - -typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length); -typedef void * (GLAPIENTRY * PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); - -#define glFlushMappedBufferRangeEXT GLEW_GET_FUN(__glewFlushMappedBufferRangeEXT) -#define glMapBufferRangeEXT GLEW_GET_FUN(__glewMapBufferRangeEXT) - -#define GLEW_EXT_map_buffer_range GLEW_GET_VAR(__GLEW_EXT_map_buffer_range) - -#endif /* GL_EXT_map_buffer_range */ - -/* -------------------------- GL_EXT_memory_object ------------------------- */ - -#ifndef GL_EXT_memory_object -#define GL_EXT_memory_object 1 - -#define GL_UUID_SIZE_EXT 16 -#define GL_TEXTURE_TILING_EXT 0x9580 -#define GL_DEDICATED_MEMORY_OBJECT_EXT 0x9581 -#define GL_NUM_TILING_TYPES_EXT 0x9582 -#define GL_TILING_TYPES_EXT 0x9583 -#define GL_OPTIMAL_TILING_EXT 0x9584 -#define GL_LINEAR_TILING_EXT 0x9585 -#define GL_NUM_DEVICE_UUIDS_EXT 0x9596 -#define GL_DEVICE_UUID_EXT 0x9597 -#define GL_DRIVER_UUID_EXT 0x9598 -#define GL_PROTECTED_MEMORY_OBJECT_EXT 0x959B - -typedef void (GLAPIENTRY * PFNGLBUFFERSTORAGEMEMEXTPROC) (GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLCREATEMEMORYOBJECTSEXTPROC) (GLsizei n, GLuint* memoryObjects); -typedef void (GLAPIENTRY * PFNGLDELETEMEMORYOBJECTSEXTPROC) (GLsizei n, const GLuint* memoryObjects); -typedef void (GLAPIENTRY * PFNGLGETMEMORYOBJECTPARAMETERIVEXTPROC) (GLuint memoryObject, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETUNSIGNEDBYTEI_VEXTPROC) (GLenum target, GLuint index, GLubyte* data); -typedef void (GLAPIENTRY * PFNGLGETUNSIGNEDBYTEVEXTPROC) (GLenum pname, GLubyte* data); -typedef GLboolean (GLAPIENTRY * PFNGLISMEMORYOBJECTEXTPROC) (GLuint memoryObject); -typedef void (GLAPIENTRY * PFNGLMEMORYOBJECTPARAMETERIVEXTPROC) (GLuint memoryObject, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSTORAGEMEMEXTPROC) (GLuint buffer, GLsizeiptr size, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM2DMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGEMEM3DMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM1DEXTPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM2DEXTPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM2DMULTISAMPLEEXTPROC) (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM3DEXTPROC) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGEMEM3DMULTISAMPLEEXTPROC) (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); - -#define glBufferStorageMemEXT GLEW_GET_FUN(__glewBufferStorageMemEXT) -#define glCreateMemoryObjectsEXT GLEW_GET_FUN(__glewCreateMemoryObjectsEXT) -#define glDeleteMemoryObjectsEXT GLEW_GET_FUN(__glewDeleteMemoryObjectsEXT) -#define glGetMemoryObjectParameterivEXT GLEW_GET_FUN(__glewGetMemoryObjectParameterivEXT) -#define glGetUnsignedBytei_vEXT GLEW_GET_FUN(__glewGetUnsignedBytei_vEXT) -#define glGetUnsignedBytevEXT GLEW_GET_FUN(__glewGetUnsignedBytevEXT) -#define glIsMemoryObjectEXT GLEW_GET_FUN(__glewIsMemoryObjectEXT) -#define glMemoryObjectParameterivEXT GLEW_GET_FUN(__glewMemoryObjectParameterivEXT) -#define glNamedBufferStorageMemEXT GLEW_GET_FUN(__glewNamedBufferStorageMemEXT) -#define glTexStorageMem1DEXT GLEW_GET_FUN(__glewTexStorageMem1DEXT) -#define glTexStorageMem2DEXT GLEW_GET_FUN(__glewTexStorageMem2DEXT) -#define glTexStorageMem2DMultisampleEXT GLEW_GET_FUN(__glewTexStorageMem2DMultisampleEXT) -#define glTexStorageMem3DEXT GLEW_GET_FUN(__glewTexStorageMem3DEXT) -#define glTexStorageMem3DMultisampleEXT GLEW_GET_FUN(__glewTexStorageMem3DMultisampleEXT) -#define glTextureStorageMem1DEXT GLEW_GET_FUN(__glewTextureStorageMem1DEXT) -#define glTextureStorageMem2DEXT GLEW_GET_FUN(__glewTextureStorageMem2DEXT) -#define glTextureStorageMem2DMultisampleEXT GLEW_GET_FUN(__glewTextureStorageMem2DMultisampleEXT) -#define glTextureStorageMem3DEXT GLEW_GET_FUN(__glewTextureStorageMem3DEXT) -#define glTextureStorageMem3DMultisampleEXT GLEW_GET_FUN(__glewTextureStorageMem3DMultisampleEXT) - -#define GLEW_EXT_memory_object GLEW_GET_VAR(__GLEW_EXT_memory_object) - -#endif /* GL_EXT_memory_object */ - -/* ------------------------ GL_EXT_memory_object_fd ------------------------ */ - -#ifndef GL_EXT_memory_object_fd -#define GL_EXT_memory_object_fd 1 - -#define GL_HANDLE_TYPE_OPAQUE_FD_EXT 0x9586 - -typedef void (GLAPIENTRY * PFNGLIMPORTMEMORYFDEXTPROC) (GLuint memory, GLuint64 size, GLenum handleType, GLint fd); - -#define glImportMemoryFdEXT GLEW_GET_FUN(__glewImportMemoryFdEXT) - -#define GLEW_EXT_memory_object_fd GLEW_GET_VAR(__GLEW_EXT_memory_object_fd) - -#endif /* GL_EXT_memory_object_fd */ - -/* ----------------------- GL_EXT_memory_object_win32 ---------------------- */ - -#ifndef GL_EXT_memory_object_win32 -#define GL_EXT_memory_object_win32 1 - -#define GL_LUID_SIZE_EXT 8 -#define GL_HANDLE_TYPE_OPAQUE_WIN32_EXT 0x9587 -#define GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT 0x9588 -#define GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT 0x9589 -#define GL_HANDLE_TYPE_D3D12_RESOURCE_EXT 0x958A -#define GL_HANDLE_TYPE_D3D11_IMAGE_EXT 0x958B -#define GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT 0x958C -#define GL_HANDLE_TYPE_D3D12_FENCE_EXT 0x9594 -#define GL_D3D12_FENCE_VALUE_EXT 0x9595 -#define GL_DEVICE_LUID_EXT 0x9599 -#define GL_DEVICE_NODE_MASK_EXT 0x959A - -typedef void (GLAPIENTRY * PFNGLIMPORTMEMORYWIN32HANDLEEXTPROC) (GLuint memory, GLuint64 size, GLenum handleType, void *handle); -typedef void (GLAPIENTRY * PFNGLIMPORTMEMORYWIN32NAMEEXTPROC) (GLuint memory, GLuint64 size, GLenum handleType, const void *name); - -#define glImportMemoryWin32HandleEXT GLEW_GET_FUN(__glewImportMemoryWin32HandleEXT) -#define glImportMemoryWin32NameEXT GLEW_GET_FUN(__glewImportMemoryWin32NameEXT) - -#define GLEW_EXT_memory_object_win32 GLEW_GET_VAR(__GLEW_EXT_memory_object_win32) - -#endif /* GL_EXT_memory_object_win32 */ - -/* ------------------------- GL_EXT_misc_attribute ------------------------- */ - -#ifndef GL_EXT_misc_attribute -#define GL_EXT_misc_attribute 1 - -#define GLEW_EXT_misc_attribute GLEW_GET_VAR(__GLEW_EXT_misc_attribute) - -#endif /* GL_EXT_misc_attribute */ - -/* ------------------------ GL_EXT_multi_draw_arrays ----------------------- */ - -#ifndef GL_EXT_multi_draw_arrays -#define GL_EXT_multi_draw_arrays 1 - -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint* first, const GLsizei *count, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, GLsizei* count, GLenum type, const void *const *indices, GLsizei primcount); - -#define glMultiDrawArraysEXT GLEW_GET_FUN(__glewMultiDrawArraysEXT) -#define glMultiDrawElementsEXT GLEW_GET_FUN(__glewMultiDrawElementsEXT) - -#define GLEW_EXT_multi_draw_arrays GLEW_GET_VAR(__GLEW_EXT_multi_draw_arrays) - -#endif /* GL_EXT_multi_draw_arrays */ - -/* ----------------------- GL_EXT_multi_draw_indirect ---------------------- */ - -#ifndef GL_EXT_multi_draw_indirect -#define GL_EXT_multi_draw_indirect 1 - -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTEXTPROC) (GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTEXTPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride); - -#define glMultiDrawArraysIndirectEXT GLEW_GET_FUN(__glewMultiDrawArraysIndirectEXT) -#define glMultiDrawElementsIndirectEXT GLEW_GET_FUN(__glewMultiDrawElementsIndirectEXT) - -#define GLEW_EXT_multi_draw_indirect GLEW_GET_VAR(__GLEW_EXT_multi_draw_indirect) - -#endif /* GL_EXT_multi_draw_indirect */ - -/* ------------------------ GL_EXT_multiple_textures ----------------------- */ - -#ifndef GL_EXT_multiple_textures -#define GL_EXT_multiple_textures 1 - -#define GLEW_EXT_multiple_textures GLEW_GET_VAR(__GLEW_EXT_multiple_textures) - -#endif /* GL_EXT_multiple_textures */ - -/* --------------------------- GL_EXT_multisample -------------------------- */ - -#ifndef GL_EXT_multisample -#define GL_EXT_multisample 1 - -#define GL_MULTISAMPLE_EXT 0x809D -#define GL_SAMPLE_ALPHA_TO_MASK_EXT 0x809E -#define GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F -#define GL_SAMPLE_MASK_EXT 0x80A0 -#define GL_1PASS_EXT 0x80A1 -#define GL_2PASS_0_EXT 0x80A2 -#define GL_2PASS_1_EXT 0x80A3 -#define GL_4PASS_0_EXT 0x80A4 -#define GL_4PASS_1_EXT 0x80A5 -#define GL_4PASS_2_EXT 0x80A6 -#define GL_4PASS_3_EXT 0x80A7 -#define GL_SAMPLE_BUFFERS_EXT 0x80A8 -#define GL_SAMPLES_EXT 0x80A9 -#define GL_SAMPLE_MASK_VALUE_EXT 0x80AA -#define GL_SAMPLE_MASK_INVERT_EXT 0x80AB -#define GL_SAMPLE_PATTERN_EXT 0x80AC -#define GL_MULTISAMPLE_BIT_EXT 0x20000000 - -typedef void (GLAPIENTRY * PFNGLSAMPLEMASKEXTPROC) (GLclampf value, GLboolean invert); -typedef void (GLAPIENTRY * PFNGLSAMPLEPATTERNEXTPROC) (GLenum pattern); - -#define glSampleMaskEXT GLEW_GET_FUN(__glewSampleMaskEXT) -#define glSamplePatternEXT GLEW_GET_FUN(__glewSamplePatternEXT) - -#define GLEW_EXT_multisample GLEW_GET_VAR(__GLEW_EXT_multisample) - -#endif /* GL_EXT_multisample */ - -/* -------------------- GL_EXT_multisample_compatibility ------------------- */ - -#ifndef GL_EXT_multisample_compatibility -#define GL_EXT_multisample_compatibility 1 - -#define GL_MULTISAMPLE_EXT 0x809D -#define GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F - -#define GLEW_EXT_multisample_compatibility GLEW_GET_VAR(__GLEW_EXT_multisample_compatibility) - -#endif /* GL_EXT_multisample_compatibility */ - -/* ----------------- GL_EXT_multisampled_render_to_texture ----------------- */ - -#ifndef GL_EXT_multisampled_render_to_texture -#define GL_EXT_multisampled_render_to_texture 1 - -#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56 -#define GL_MAX_SAMPLES_EXT 0x8D57 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); - -#define glFramebufferTexture2DMultisampleEXT GLEW_GET_FUN(__glewFramebufferTexture2DMultisampleEXT) - -#define GLEW_EXT_multisampled_render_to_texture GLEW_GET_VAR(__GLEW_EXT_multisampled_render_to_texture) - -#endif /* GL_EXT_multisampled_render_to_texture */ - -/* ----------------- GL_EXT_multisampled_render_to_texture2 ---------------- */ - -#ifndef GL_EXT_multisampled_render_to_texture2 -#define GL_EXT_multisampled_render_to_texture2 1 - -#define GLEW_EXT_multisampled_render_to_texture2 GLEW_GET_VAR(__GLEW_EXT_multisampled_render_to_texture2) - -#endif /* GL_EXT_multisampled_render_to_texture2 */ - -/* --------------------- GL_EXT_multiview_draw_buffers --------------------- */ - -#ifndef GL_EXT_multiview_draw_buffers -#define GL_EXT_multiview_draw_buffers 1 - -#define GL_DRAW_BUFFER_EXT 0x0C01 -#define GL_READ_BUFFER_EXT 0x0C02 -#define GL_COLOR_ATTACHMENT_EXT 0x90F0 -#define GL_MULTIVIEW_EXT 0x90F1 -#define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2 - -typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const GLenum* location, const GLint *indices); -typedef void (GLAPIENTRY * PFNGLGETINTEGERI_VEXTPROC) (GLenum target, GLuint index, GLint* data); -typedef void (GLAPIENTRY * PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src, GLint index); - -#define glDrawBuffersIndexedEXT GLEW_GET_FUN(__glewDrawBuffersIndexedEXT) -#define glGetIntegeri_vEXT GLEW_GET_FUN(__glewGetIntegeri_vEXT) -#define glReadBufferIndexedEXT GLEW_GET_FUN(__glewReadBufferIndexedEXT) - -#define GLEW_EXT_multiview_draw_buffers GLEW_GET_VAR(__GLEW_EXT_multiview_draw_buffers) - -#endif /* GL_EXT_multiview_draw_buffers */ - -/* ------------- GL_EXT_multiview_tessellation_geometry_shader ------------- */ - -#ifndef GL_EXT_multiview_tessellation_geometry_shader -#define GL_EXT_multiview_tessellation_geometry_shader 1 - -#define GLEW_EXT_multiview_tessellation_geometry_shader GLEW_GET_VAR(__GLEW_EXT_multiview_tessellation_geometry_shader) - -#endif /* GL_EXT_multiview_tessellation_geometry_shader */ - -/* ------------------ GL_EXT_multiview_texture_multisample ----------------- */ - -#ifndef GL_EXT_multiview_texture_multisample -#define GL_EXT_multiview_texture_multisample 1 - -#define GLEW_EXT_multiview_texture_multisample GLEW_GET_VAR(__GLEW_EXT_multiview_texture_multisample) - -#endif /* GL_EXT_multiview_texture_multisample */ - -/* ---------------------- GL_EXT_multiview_timer_query --------------------- */ - -#ifndef GL_EXT_multiview_timer_query -#define GL_EXT_multiview_timer_query 1 - -#define GLEW_EXT_multiview_timer_query GLEW_GET_VAR(__GLEW_EXT_multiview_timer_query) - -#endif /* GL_EXT_multiview_timer_query */ - -/* --------------------- GL_EXT_occlusion_query_boolean -------------------- */ - -#ifndef GL_EXT_occlusion_query_boolean -#define GL_EXT_occlusion_query_boolean 1 - -#define GL_CURRENT_QUERY_EXT 0x8865 -#define GL_QUERY_RESULT_EXT 0x8866 -#define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867 -#define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F -#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A - -#define GLEW_EXT_occlusion_query_boolean GLEW_GET_VAR(__GLEW_EXT_occlusion_query_boolean) - -#endif /* GL_EXT_occlusion_query_boolean */ - -/* ---------------------- GL_EXT_packed_depth_stencil ---------------------- */ - -#ifndef GL_EXT_packed_depth_stencil -#define GL_EXT_packed_depth_stencil 1 - -#define GL_DEPTH_STENCIL_EXT 0x84F9 -#define GL_UNSIGNED_INT_24_8_EXT 0x84FA -#define GL_DEPTH24_STENCIL8_EXT 0x88F0 -#define GL_TEXTURE_STENCIL_SIZE_EXT 0x88F1 - -#define GLEW_EXT_packed_depth_stencil GLEW_GET_VAR(__GLEW_EXT_packed_depth_stencil) - -#endif /* GL_EXT_packed_depth_stencil */ - -/* -------------------------- GL_EXT_packed_float -------------------------- */ - -#ifndef GL_EXT_packed_float -#define GL_EXT_packed_float 1 - -#define GL_R11F_G11F_B10F_EXT 0x8C3A -#define GL_UNSIGNED_INT_10F_11F_11F_REV_EXT 0x8C3B -#define GL_RGBA_SIGNED_COMPONENTS_EXT 0x8C3C - -#define GLEW_EXT_packed_float GLEW_GET_VAR(__GLEW_EXT_packed_float) - -#endif /* GL_EXT_packed_float */ - -/* -------------------------- GL_EXT_packed_pixels ------------------------- */ - -#ifndef GL_EXT_packed_pixels -#define GL_EXT_packed_pixels 1 - -#define GL_UNSIGNED_BYTE_3_3_2_EXT 0x8032 -#define GL_UNSIGNED_SHORT_4_4_4_4_EXT 0x8033 -#define GL_UNSIGNED_SHORT_5_5_5_1_EXT 0x8034 -#define GL_UNSIGNED_INT_8_8_8_8_EXT 0x8035 -#define GL_UNSIGNED_INT_10_10_10_2_EXT 0x8036 - -#define GLEW_EXT_packed_pixels GLEW_GET_VAR(__GLEW_EXT_packed_pixels) - -#endif /* GL_EXT_packed_pixels */ - -/* ------------------------ GL_EXT_paletted_texture ------------------------ */ - -#ifndef GL_EXT_paletted_texture -#define GL_EXT_paletted_texture 1 - -#define GL_TEXTURE_1D 0x0DE0 -#define GL_TEXTURE_2D 0x0DE1 -#define GL_PROXY_TEXTURE_1D 0x8063 -#define GL_PROXY_TEXTURE_2D 0x8064 -#define GL_COLOR_TABLE_FORMAT_EXT 0x80D8 -#define GL_COLOR_TABLE_WIDTH_EXT 0x80D9 -#define GL_COLOR_TABLE_RED_SIZE_EXT 0x80DA -#define GL_COLOR_TABLE_GREEN_SIZE_EXT 0x80DB -#define GL_COLOR_TABLE_BLUE_SIZE_EXT 0x80DC -#define GL_COLOR_TABLE_ALPHA_SIZE_EXT 0x80DD -#define GL_COLOR_TABLE_LUMINANCE_SIZE_EXT 0x80DE -#define GL_COLOR_TABLE_INTENSITY_SIZE_EXT 0x80DF -#define GL_COLOR_INDEX1_EXT 0x80E2 -#define GL_COLOR_INDEX2_EXT 0x80E3 -#define GL_COLOR_INDEX4_EXT 0x80E4 -#define GL_COLOR_INDEX8_EXT 0x80E5 -#define GL_COLOR_INDEX12_EXT 0x80E6 -#define GL_COLOR_INDEX16_EXT 0x80E7 -#define GL_TEXTURE_INDEX_SIZE_EXT 0x80ED -#define GL_TEXTURE_CUBE_MAP_ARB 0x8513 -#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B - -typedef void (GLAPIENTRY * PFNGLCOLORTABLEEXTPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const void *data); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEEXTPROC) (GLenum target, GLenum format, GLenum type, void *data); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params); - -#define glColorTableEXT GLEW_GET_FUN(__glewColorTableEXT) -#define glGetColorTableEXT GLEW_GET_FUN(__glewGetColorTableEXT) -#define glGetColorTableParameterfvEXT GLEW_GET_FUN(__glewGetColorTableParameterfvEXT) -#define glGetColorTableParameterivEXT GLEW_GET_FUN(__glewGetColorTableParameterivEXT) - -#define GLEW_EXT_paletted_texture GLEW_GET_VAR(__GLEW_EXT_paletted_texture) - -#endif /* GL_EXT_paletted_texture */ - -/* ----------------------- GL_EXT_pixel_buffer_object ---------------------- */ - -#ifndef GL_EXT_pixel_buffer_object -#define GL_EXT_pixel_buffer_object 1 - -#define GL_PIXEL_PACK_BUFFER_EXT 0x88EB -#define GL_PIXEL_UNPACK_BUFFER_EXT 0x88EC -#define GL_PIXEL_PACK_BUFFER_BINDING_EXT 0x88ED -#define GL_PIXEL_UNPACK_BUFFER_BINDING_EXT 0x88EF - -#define GLEW_EXT_pixel_buffer_object GLEW_GET_VAR(__GLEW_EXT_pixel_buffer_object) - -#endif /* GL_EXT_pixel_buffer_object */ - -/* ------------------------- GL_EXT_pixel_transform ------------------------ */ - -#ifndef GL_EXT_pixel_transform -#define GL_EXT_pixel_transform 1 - -#define GL_PIXEL_TRANSFORM_2D_EXT 0x8330 -#define GL_PIXEL_MAG_FILTER_EXT 0x8331 -#define GL_PIXEL_MIN_FILTER_EXT 0x8332 -#define GL_PIXEL_CUBIC_WEIGHT_EXT 0x8333 -#define GL_CUBIC_EXT 0x8334 -#define GL_AVERAGE_EXT 0x8335 -#define GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8336 -#define GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8337 -#define GL_PIXEL_TRANSFORM_2D_MATRIX_EXT 0x8338 - -typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFEXTPROC) (GLenum target, GLenum pname, const GLfloat param); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIEXTPROC) (GLenum target, GLenum pname, const GLint param); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params); - -#define glGetPixelTransformParameterfvEXT GLEW_GET_FUN(__glewGetPixelTransformParameterfvEXT) -#define glGetPixelTransformParameterivEXT GLEW_GET_FUN(__glewGetPixelTransformParameterivEXT) -#define glPixelTransformParameterfEXT GLEW_GET_FUN(__glewPixelTransformParameterfEXT) -#define glPixelTransformParameterfvEXT GLEW_GET_FUN(__glewPixelTransformParameterfvEXT) -#define glPixelTransformParameteriEXT GLEW_GET_FUN(__glewPixelTransformParameteriEXT) -#define glPixelTransformParameterivEXT GLEW_GET_FUN(__glewPixelTransformParameterivEXT) - -#define GLEW_EXT_pixel_transform GLEW_GET_VAR(__GLEW_EXT_pixel_transform) - -#endif /* GL_EXT_pixel_transform */ - -/* ------------------- GL_EXT_pixel_transform_color_table ------------------ */ - -#ifndef GL_EXT_pixel_transform_color_table -#define GL_EXT_pixel_transform_color_table 1 - -#define GLEW_EXT_pixel_transform_color_table GLEW_GET_VAR(__GLEW_EXT_pixel_transform_color_table) - -#endif /* GL_EXT_pixel_transform_color_table */ - -/* ------------------------ GL_EXT_point_parameters ------------------------ */ - -#ifndef GL_EXT_point_parameters -#define GL_EXT_point_parameters 1 - -#define GL_POINT_SIZE_MIN_EXT 0x8126 -#define GL_POINT_SIZE_MAX_EXT 0x8127 -#define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128 -#define GL_DISTANCE_ATTENUATION_EXT 0x8129 - -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFEXTPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVEXTPROC) (GLenum pname, const GLfloat* params); - -#define glPointParameterfEXT GLEW_GET_FUN(__glewPointParameterfEXT) -#define glPointParameterfvEXT GLEW_GET_FUN(__glewPointParameterfvEXT) - -#define GLEW_EXT_point_parameters GLEW_GET_VAR(__GLEW_EXT_point_parameters) - -#endif /* GL_EXT_point_parameters */ - -/* ------------------------- GL_EXT_polygon_offset ------------------------- */ - -#ifndef GL_EXT_polygon_offset -#define GL_EXT_polygon_offset 1 - -#define GL_POLYGON_OFFSET_EXT 0x8037 -#define GL_POLYGON_OFFSET_FACTOR_EXT 0x8038 -#define GL_POLYGON_OFFSET_BIAS_EXT 0x8039 - -typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETEXTPROC) (GLfloat factor, GLfloat bias); - -#define glPolygonOffsetEXT GLEW_GET_FUN(__glewPolygonOffsetEXT) - -#define GLEW_EXT_polygon_offset GLEW_GET_VAR(__GLEW_EXT_polygon_offset) - -#endif /* GL_EXT_polygon_offset */ - -/* ---------------------- GL_EXT_polygon_offset_clamp ---------------------- */ - -#ifndef GL_EXT_polygon_offset_clamp -#define GL_EXT_polygon_offset_clamp 1 - -#define GL_POLYGON_OFFSET_CLAMP_EXT 0x8E1B - -typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETCLAMPEXTPROC) (GLfloat factor, GLfloat units, GLfloat clamp); - -#define glPolygonOffsetClampEXT GLEW_GET_FUN(__glewPolygonOffsetClampEXT) - -#define GLEW_EXT_polygon_offset_clamp GLEW_GET_VAR(__GLEW_EXT_polygon_offset_clamp) - -#endif /* GL_EXT_polygon_offset_clamp */ - -/* ----------------------- GL_EXT_post_depth_coverage ---------------------- */ - -#ifndef GL_EXT_post_depth_coverage -#define GL_EXT_post_depth_coverage 1 - -#define GLEW_EXT_post_depth_coverage GLEW_GET_VAR(__GLEW_EXT_post_depth_coverage) - -#endif /* GL_EXT_post_depth_coverage */ - -/* --------------------- GL_EXT_primitive_bounding_box --------------------- */ - -#ifndef GL_EXT_primitive_bounding_box -#define GL_EXT_primitive_bounding_box 1 - -#define GL_PRIMITIVE_BOUNDING_BOX_EXT 0x92BE - -typedef void (GLAPIENTRY * PFNGLPRIMITIVEBOUNDINGBOXEXTPROC) (GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW); - -#define glPrimitiveBoundingBoxEXT GLEW_GET_FUN(__glewPrimitiveBoundingBoxEXT) - -#define GLEW_EXT_primitive_bounding_box GLEW_GET_VAR(__GLEW_EXT_primitive_bounding_box) - -#endif /* GL_EXT_primitive_bounding_box */ - -/* ----------------------- GL_EXT_protected_textures ----------------------- */ - -#ifndef GL_EXT_protected_textures -#define GL_EXT_protected_textures 1 - -#define GL_CONTEXT_FLAG_PROTECTED_CONTENT_BIT_EXT 0x00000010 -#define GL_TEXTURE_PROTECTED_EXT 0x8BFA - -#define GLEW_EXT_protected_textures GLEW_GET_VAR(__GLEW_EXT_protected_textures) - -#endif /* GL_EXT_protected_textures */ - -/* ------------------------ GL_EXT_provoking_vertex ------------------------ */ - -#ifndef GL_EXT_provoking_vertex -#define GL_EXT_provoking_vertex 1 - -#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT 0x8E4C -#define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D -#define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E -#define GL_PROVOKING_VERTEX_EXT 0x8E4F - -typedef void (GLAPIENTRY * PFNGLPROVOKINGVERTEXEXTPROC) (GLenum mode); - -#define glProvokingVertexEXT GLEW_GET_FUN(__glewProvokingVertexEXT) - -#define GLEW_EXT_provoking_vertex GLEW_GET_VAR(__GLEW_EXT_provoking_vertex) - -#endif /* GL_EXT_provoking_vertex */ - -/* --------------------------- GL_EXT_pvrtc_sRGB --------------------------- */ - -#ifndef GL_EXT_pvrtc_sRGB -#define GL_EXT_pvrtc_sRGB 1 - -#define GL_COMPRESSED_SRGB_PVRTC_2BPPV1_EXT 0x8A54 -#define GL_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT 0x8A55 -#define GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT 0x8A56 -#define GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT 0x8A57 - -#define GLEW_EXT_pvrtc_sRGB GLEW_GET_VAR(__GLEW_EXT_pvrtc_sRGB) - -#endif /* GL_EXT_pvrtc_sRGB */ - -/* ----------------------- GL_EXT_raster_multisample ----------------------- */ - -#ifndef GL_EXT_raster_multisample -#define GL_EXT_raster_multisample 1 - -#define GL_COLOR_SAMPLES_NV 0x8E20 -#define GL_RASTER_MULTISAMPLE_EXT 0x9327 -#define GL_RASTER_SAMPLES_EXT 0x9328 -#define GL_MAX_RASTER_SAMPLES_EXT 0x9329 -#define GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT 0x932A -#define GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT 0x932B -#define GL_EFFECTIVE_RASTER_SAMPLES_EXT 0x932C -#define GL_DEPTH_SAMPLES_NV 0x932D -#define GL_STENCIL_SAMPLES_NV 0x932E -#define GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV 0x932F -#define GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV 0x9330 -#define GL_COVERAGE_MODULATION_TABLE_NV 0x9331 -#define GL_COVERAGE_MODULATION_NV 0x9332 -#define GL_COVERAGE_MODULATION_TABLE_SIZE_NV 0x9333 - -typedef void (GLAPIENTRY * PFNGLCOVERAGEMODULATIONNVPROC) (GLenum components); -typedef void (GLAPIENTRY * PFNGLCOVERAGEMODULATIONTABLENVPROC) (GLsizei n, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLGETCOVERAGEMODULATIONTABLENVPROC) (GLsizei bufsize, GLfloat* v); -typedef void (GLAPIENTRY * PFNGLRASTERSAMPLESEXTPROC) (GLuint samples, GLboolean fixedsamplelocations); - -#define glCoverageModulationNV GLEW_GET_FUN(__glewCoverageModulationNV) -#define glCoverageModulationTableNV GLEW_GET_FUN(__glewCoverageModulationTableNV) -#define glGetCoverageModulationTableNV GLEW_GET_FUN(__glewGetCoverageModulationTableNV) -#define glRasterSamplesEXT GLEW_GET_FUN(__glewRasterSamplesEXT) - -#define GLEW_EXT_raster_multisample GLEW_GET_VAR(__GLEW_EXT_raster_multisample) - -#endif /* GL_EXT_raster_multisample */ - -/* ------------------------ GL_EXT_read_format_bgra ------------------------ */ - -#ifndef GL_EXT_read_format_bgra -#define GL_EXT_read_format_bgra 1 - -#define GL_BGRA_EXT 0x80E1 -#define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 -#define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 - -#define GLEW_EXT_read_format_bgra GLEW_GET_VAR(__GLEW_EXT_read_format_bgra) - -#endif /* GL_EXT_read_format_bgra */ - -/* -------------------------- GL_EXT_render_snorm -------------------------- */ - -#ifndef GL_EXT_render_snorm -#define GL_EXT_render_snorm 1 - -#define GL_BYTE 0x1400 -#define GL_SHORT 0x1402 -#define GL_R8_SNORM 0x8F94 -#define GL_RG8_SNORM 0x8F95 -#define GL_RGBA8_SNORM 0x8F97 -#define GL_R16_SNORM_EXT 0x8F98 -#define GL_RG16_SNORM_EXT 0x8F99 -#define GL_RGBA16_SNORM_EXT 0x8F9B - -#define GLEW_EXT_render_snorm GLEW_GET_VAR(__GLEW_EXT_render_snorm) - -#endif /* GL_EXT_render_snorm */ - -/* ------------------------- GL_EXT_rescale_normal ------------------------- */ - -#ifndef GL_EXT_rescale_normal -#define GL_EXT_rescale_normal 1 - -#define GL_RESCALE_NORMAL_EXT 0x803A - -#define GLEW_EXT_rescale_normal GLEW_GET_VAR(__GLEW_EXT_rescale_normal) - -#endif /* GL_EXT_rescale_normal */ - -/* --------------------------- GL_EXT_robustness --------------------------- */ - -#ifndef GL_EXT_robustness -#define GL_EXT_robustness 1 - -#define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252 -#define GL_GUILTY_CONTEXT_RESET_EXT 0x8253 -#define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254 -#define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255 -#define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256 -#define GL_NO_RESET_NOTIFICATION_EXT 0x8261 -#define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3 - -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint* params); -typedef void (GLAPIENTRY * PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); - -#define glGetnUniformfvEXT GLEW_GET_FUN(__glewGetnUniformfvEXT) -#define glGetnUniformivEXT GLEW_GET_FUN(__glewGetnUniformivEXT) -#define glReadnPixelsEXT GLEW_GET_FUN(__glewReadnPixelsEXT) - -#define GLEW_EXT_robustness GLEW_GET_VAR(__GLEW_EXT_robustness) - -#endif /* GL_EXT_robustness */ - -/* ------------------------------ GL_EXT_sRGB ------------------------------ */ - -#ifndef GL_EXT_sRGB -#define GL_EXT_sRGB 1 - -#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210 -#define GL_SRGB_EXT 0x8C40 -#define GL_SRGB_ALPHA_EXT 0x8C42 -#define GL_SRGB8_ALPHA8_EXT 0x8C43 - -#define GLEW_EXT_sRGB GLEW_GET_VAR(__GLEW_EXT_sRGB) - -#endif /* GL_EXT_sRGB */ - -/* ----------------------- GL_EXT_sRGB_write_control ----------------------- */ - -#ifndef GL_EXT_sRGB_write_control -#define GL_EXT_sRGB_write_control 1 - -#define GL_FRAMEBUFFER_SRGB_EXT 0x8DB9 - -#define GLEW_EXT_sRGB_write_control GLEW_GET_VAR(__GLEW_EXT_sRGB_write_control) - -#endif /* GL_EXT_sRGB_write_control */ - -/* -------------------------- GL_EXT_scene_marker -------------------------- */ - -#ifndef GL_EXT_scene_marker -#define GL_EXT_scene_marker 1 - -typedef void (GLAPIENTRY * PFNGLBEGINSCENEEXTPROC) (void); -typedef void (GLAPIENTRY * PFNGLENDSCENEEXTPROC) (void); - -#define glBeginSceneEXT GLEW_GET_FUN(__glewBeginSceneEXT) -#define glEndSceneEXT GLEW_GET_FUN(__glewEndSceneEXT) - -#define GLEW_EXT_scene_marker GLEW_GET_VAR(__GLEW_EXT_scene_marker) - -#endif /* GL_EXT_scene_marker */ - -/* ------------------------- GL_EXT_secondary_color ------------------------ */ - -#ifndef GL_EXT_secondary_color -#define GL_EXT_secondary_color 1 - -#define GL_COLOR_SUM_EXT 0x8458 -#define GL_CURRENT_SECONDARY_COLOR_EXT 0x8459 -#define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A -#define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B -#define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C -#define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D -#define GL_SECONDARY_COLOR_ARRAY_EXT 0x845E - -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BEXTPROC) (GLbyte red, GLbyte green, GLbyte blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BVEXTPROC) (const GLbyte *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DEXTPROC) (GLdouble red, GLdouble green, GLdouble blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DVEXTPROC) (const GLdouble *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FEXTPROC) (GLfloat red, GLfloat green, GLfloat blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FVEXTPROC) (const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IEXTPROC) (GLint red, GLint green, GLint blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IVEXTPROC) (const GLint *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SEXTPROC) (GLshort red, GLshort green, GLshort blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SVEXTPROC) (const GLshort *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBEXTPROC) (GLubyte red, GLubyte green, GLubyte blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBVEXTPROC) (const GLubyte *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIEXTPROC) (GLuint red, GLuint green, GLuint blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIVEXTPROC) (const GLuint *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USEXTPROC) (GLushort red, GLushort green, GLushort blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USVEXTPROC) (const GLushort *v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer); - -#define glSecondaryColor3bEXT GLEW_GET_FUN(__glewSecondaryColor3bEXT) -#define glSecondaryColor3bvEXT GLEW_GET_FUN(__glewSecondaryColor3bvEXT) -#define glSecondaryColor3dEXT GLEW_GET_FUN(__glewSecondaryColor3dEXT) -#define glSecondaryColor3dvEXT GLEW_GET_FUN(__glewSecondaryColor3dvEXT) -#define glSecondaryColor3fEXT GLEW_GET_FUN(__glewSecondaryColor3fEXT) -#define glSecondaryColor3fvEXT GLEW_GET_FUN(__glewSecondaryColor3fvEXT) -#define glSecondaryColor3iEXT GLEW_GET_FUN(__glewSecondaryColor3iEXT) -#define glSecondaryColor3ivEXT GLEW_GET_FUN(__glewSecondaryColor3ivEXT) -#define glSecondaryColor3sEXT GLEW_GET_FUN(__glewSecondaryColor3sEXT) -#define glSecondaryColor3svEXT GLEW_GET_FUN(__glewSecondaryColor3svEXT) -#define glSecondaryColor3ubEXT GLEW_GET_FUN(__glewSecondaryColor3ubEXT) -#define glSecondaryColor3ubvEXT GLEW_GET_FUN(__glewSecondaryColor3ubvEXT) -#define glSecondaryColor3uiEXT GLEW_GET_FUN(__glewSecondaryColor3uiEXT) -#define glSecondaryColor3uivEXT GLEW_GET_FUN(__glewSecondaryColor3uivEXT) -#define glSecondaryColor3usEXT GLEW_GET_FUN(__glewSecondaryColor3usEXT) -#define glSecondaryColor3usvEXT GLEW_GET_FUN(__glewSecondaryColor3usvEXT) -#define glSecondaryColorPointerEXT GLEW_GET_FUN(__glewSecondaryColorPointerEXT) - -#define GLEW_EXT_secondary_color GLEW_GET_VAR(__GLEW_EXT_secondary_color) - -#endif /* GL_EXT_secondary_color */ - -/* ---------------------------- GL_EXT_semaphore --------------------------- */ - -#ifndef GL_EXT_semaphore -#define GL_EXT_semaphore 1 - -#define GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT 0x9530 -#define GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT 0x9531 -#define GL_LAYOUT_GENERAL_EXT 0x958D -#define GL_LAYOUT_COLOR_ATTACHMENT_EXT 0x958E -#define GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT 0x958F -#define GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT 0x9590 -#define GL_LAYOUT_SHADER_READ_ONLY_EXT 0x9591 -#define GL_LAYOUT_TRANSFER_SRC_EXT 0x9592 -#define GL_LAYOUT_TRANSFER_DST_EXT 0x9593 - -typedef void (GLAPIENTRY * PFNGLDELETESEMAPHORESEXTPROC) (GLsizei n, const GLuint* semaphores); -typedef void (GLAPIENTRY * PFNGLGENSEMAPHORESEXTPROC) (GLsizei n, GLuint* semaphores); -typedef void (GLAPIENTRY * PFNGLGETSEMAPHOREPARAMETERUI64VEXTPROC) (GLuint semaphore, GLenum pname, GLuint64* params); -typedef GLboolean (GLAPIENTRY * PFNGLISSEMAPHOREEXTPROC) (GLuint semaphore); -typedef void (GLAPIENTRY * PFNGLSEMAPHOREPARAMETERUI64VEXTPROC) (GLuint semaphore, GLenum pname, const GLuint64* params); -typedef void (GLAPIENTRY * PFNGLSIGNALSEMAPHOREEXTPROC) (GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *dstLayouts); -typedef void (GLAPIENTRY * PFNGLWAITSEMAPHOREEXTPROC) (GLuint semaphore, GLuint numBufferBarriers, const GLuint* buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *srcLayouts); - -#define glDeleteSemaphoresEXT GLEW_GET_FUN(__glewDeleteSemaphoresEXT) -#define glGenSemaphoresEXT GLEW_GET_FUN(__glewGenSemaphoresEXT) -#define glGetSemaphoreParameterui64vEXT GLEW_GET_FUN(__glewGetSemaphoreParameterui64vEXT) -#define glIsSemaphoreEXT GLEW_GET_FUN(__glewIsSemaphoreEXT) -#define glSemaphoreParameterui64vEXT GLEW_GET_FUN(__glewSemaphoreParameterui64vEXT) -#define glSignalSemaphoreEXT GLEW_GET_FUN(__glewSignalSemaphoreEXT) -#define glWaitSemaphoreEXT GLEW_GET_FUN(__glewWaitSemaphoreEXT) - -#define GLEW_EXT_semaphore GLEW_GET_VAR(__GLEW_EXT_semaphore) - -#endif /* GL_EXT_semaphore */ - -/* -------------------------- GL_EXT_semaphore_fd -------------------------- */ - -#ifndef GL_EXT_semaphore_fd -#define GL_EXT_semaphore_fd 1 - -typedef void (GLAPIENTRY * PFNGLIMPORTSEMAPHOREFDEXTPROC) (GLuint semaphore, GLenum handleType, GLint fd); - -#define glImportSemaphoreFdEXT GLEW_GET_FUN(__glewImportSemaphoreFdEXT) - -#define GLEW_EXT_semaphore_fd GLEW_GET_VAR(__GLEW_EXT_semaphore_fd) - -#endif /* GL_EXT_semaphore_fd */ - -/* ------------------------- GL_EXT_semaphore_win32 ------------------------ */ - -#ifndef GL_EXT_semaphore_win32 -#define GL_EXT_semaphore_win32 1 - -typedef void (GLAPIENTRY * PFNGLIMPORTSEMAPHOREWIN32HANDLEEXTPROC) (GLuint semaphore, GLenum handleType, void *handle); -typedef void (GLAPIENTRY * PFNGLIMPORTSEMAPHOREWIN32NAMEEXTPROC) (GLuint semaphore, GLenum handleType, const void *name); - -#define glImportSemaphoreWin32HandleEXT GLEW_GET_FUN(__glewImportSemaphoreWin32HandleEXT) -#define glImportSemaphoreWin32NameEXT GLEW_GET_FUN(__glewImportSemaphoreWin32NameEXT) - -#define GLEW_EXT_semaphore_win32 GLEW_GET_VAR(__GLEW_EXT_semaphore_win32) - -#endif /* GL_EXT_semaphore_win32 */ - -/* --------------------- GL_EXT_separate_shader_objects -------------------- */ - -#ifndef GL_EXT_separate_shader_objects -#define GL_EXT_separate_shader_objects 1 - -#define GL_ACTIVE_PROGRAM_EXT 0x8B8D - -typedef void (GLAPIENTRY * PFNGLACTIVEPROGRAMEXTPROC) (GLuint program); -typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROGRAMEXTPROC) (GLenum type, const GLchar* string); -typedef void (GLAPIENTRY * PFNGLUSESHADERPROGRAMEXTPROC) (GLenum type, GLuint program); - -#define glActiveProgramEXT GLEW_GET_FUN(__glewActiveProgramEXT) -#define glCreateShaderProgramEXT GLEW_GET_FUN(__glewCreateShaderProgramEXT) -#define glUseShaderProgramEXT GLEW_GET_FUN(__glewUseShaderProgramEXT) - -#define GLEW_EXT_separate_shader_objects GLEW_GET_VAR(__GLEW_EXT_separate_shader_objects) - -#endif /* GL_EXT_separate_shader_objects */ - -/* --------------------- GL_EXT_separate_specular_color -------------------- */ - -#ifndef GL_EXT_separate_specular_color -#define GL_EXT_separate_specular_color 1 - -#define GL_LIGHT_MODEL_COLOR_CONTROL_EXT 0x81F8 -#define GL_SINGLE_COLOR_EXT 0x81F9 -#define GL_SEPARATE_SPECULAR_COLOR_EXT 0x81FA - -#define GLEW_EXT_separate_specular_color GLEW_GET_VAR(__GLEW_EXT_separate_specular_color) - -#endif /* GL_EXT_separate_specular_color */ - -/* -------------------- GL_EXT_shader_framebuffer_fetch -------------------- */ - -#ifndef GL_EXT_shader_framebuffer_fetch -#define GL_EXT_shader_framebuffer_fetch 1 - -#define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERFETCHBARRIEREXTPROC) (void); - -#define glFramebufferFetchBarrierEXT GLEW_GET_FUN(__glewFramebufferFetchBarrierEXT) - -#define GLEW_EXT_shader_framebuffer_fetch GLEW_GET_VAR(__GLEW_EXT_shader_framebuffer_fetch) - -#endif /* GL_EXT_shader_framebuffer_fetch */ - -/* -------------- GL_EXT_shader_framebuffer_fetch_non_coherent ------------- */ - -#ifndef GL_EXT_shader_framebuffer_fetch_non_coherent -#define GL_EXT_shader_framebuffer_fetch_non_coherent 1 - -#define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52 - -#define GLEW_EXT_shader_framebuffer_fetch_non_coherent GLEW_GET_VAR(__GLEW_EXT_shader_framebuffer_fetch_non_coherent) - -#endif /* GL_EXT_shader_framebuffer_fetch_non_coherent */ - -/* ------------------------ GL_EXT_shader_group_vote ----------------------- */ - -#ifndef GL_EXT_shader_group_vote -#define GL_EXT_shader_group_vote 1 - -#define GLEW_EXT_shader_group_vote GLEW_GET_VAR(__GLEW_EXT_shader_group_vote) - -#endif /* GL_EXT_shader_group_vote */ - -/* ------------------- GL_EXT_shader_image_load_formatted ------------------ */ - -#ifndef GL_EXT_shader_image_load_formatted -#define GL_EXT_shader_image_load_formatted 1 - -#define GLEW_EXT_shader_image_load_formatted GLEW_GET_VAR(__GLEW_EXT_shader_image_load_formatted) - -#endif /* GL_EXT_shader_image_load_formatted */ - -/* --------------------- GL_EXT_shader_image_load_store -------------------- */ - -#ifndef GL_EXT_shader_image_load_store -#define GL_EXT_shader_image_load_store 1 - -#define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT 0x00000001 -#define GL_ELEMENT_ARRAY_BARRIER_BIT_EXT 0x00000002 -#define GL_UNIFORM_BARRIER_BIT_EXT 0x00000004 -#define GL_TEXTURE_FETCH_BARRIER_BIT_EXT 0x00000008 -#define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT 0x00000020 -#define GL_COMMAND_BARRIER_BIT_EXT 0x00000040 -#define GL_PIXEL_BUFFER_BARRIER_BIT_EXT 0x00000080 -#define GL_TEXTURE_UPDATE_BARRIER_BIT_EXT 0x00000100 -#define GL_BUFFER_UPDATE_BARRIER_BIT_EXT 0x00000200 -#define GL_FRAMEBUFFER_BARRIER_BIT_EXT 0x00000400 -#define GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT 0x00000800 -#define GL_ATOMIC_COUNTER_BARRIER_BIT_EXT 0x00001000 -#define GL_MAX_IMAGE_UNITS_EXT 0x8F38 -#define GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT 0x8F39 -#define GL_IMAGE_BINDING_NAME_EXT 0x8F3A -#define GL_IMAGE_BINDING_LEVEL_EXT 0x8F3B -#define GL_IMAGE_BINDING_LAYERED_EXT 0x8F3C -#define GL_IMAGE_BINDING_LAYER_EXT 0x8F3D -#define GL_IMAGE_BINDING_ACCESS_EXT 0x8F3E -#define GL_IMAGE_1D_EXT 0x904C -#define GL_IMAGE_2D_EXT 0x904D -#define GL_IMAGE_3D_EXT 0x904E -#define GL_IMAGE_2D_RECT_EXT 0x904F -#define GL_IMAGE_CUBE_EXT 0x9050 -#define GL_IMAGE_BUFFER_EXT 0x9051 -#define GL_IMAGE_1D_ARRAY_EXT 0x9052 -#define GL_IMAGE_2D_ARRAY_EXT 0x9053 -#define GL_IMAGE_CUBE_MAP_ARRAY_EXT 0x9054 -#define GL_IMAGE_2D_MULTISAMPLE_EXT 0x9055 -#define GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9056 -#define GL_INT_IMAGE_1D_EXT 0x9057 -#define GL_INT_IMAGE_2D_EXT 0x9058 -#define GL_INT_IMAGE_3D_EXT 0x9059 -#define GL_INT_IMAGE_2D_RECT_EXT 0x905A -#define GL_INT_IMAGE_CUBE_EXT 0x905B -#define GL_INT_IMAGE_BUFFER_EXT 0x905C -#define GL_INT_IMAGE_1D_ARRAY_EXT 0x905D -#define GL_INT_IMAGE_2D_ARRAY_EXT 0x905E -#define GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x905F -#define GL_INT_IMAGE_2D_MULTISAMPLE_EXT 0x9060 -#define GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9061 -#define GL_UNSIGNED_INT_IMAGE_1D_EXT 0x9062 -#define GL_UNSIGNED_INT_IMAGE_2D_EXT 0x9063 -#define GL_UNSIGNED_INT_IMAGE_3D_EXT 0x9064 -#define GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT 0x9065 -#define GL_UNSIGNED_INT_IMAGE_CUBE_EXT 0x9066 -#define GL_UNSIGNED_INT_IMAGE_BUFFER_EXT 0x9067 -#define GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT 0x9068 -#define GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT 0x9069 -#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x906A -#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT 0x906B -#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x906C -#define GL_MAX_IMAGE_SAMPLES_EXT 0x906D -#define GL_IMAGE_BINDING_FORMAT_EXT 0x906E -#define GL_ALL_BARRIER_BITS_EXT 0xFFFFFFFF - -typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTUREEXTPROC) (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format); -typedef void (GLAPIENTRY * PFNGLMEMORYBARRIEREXTPROC) (GLbitfield barriers); - -#define glBindImageTextureEXT GLEW_GET_FUN(__glewBindImageTextureEXT) -#define glMemoryBarrierEXT GLEW_GET_FUN(__glewMemoryBarrierEXT) - -#define GLEW_EXT_shader_image_load_store GLEW_GET_VAR(__GLEW_EXT_shader_image_load_store) - -#endif /* GL_EXT_shader_image_load_store */ - -/* ------------------- GL_EXT_shader_implicit_conversions ------------------ */ - -#ifndef GL_EXT_shader_implicit_conversions -#define GL_EXT_shader_implicit_conversions 1 - -#define GLEW_EXT_shader_implicit_conversions GLEW_GET_VAR(__GLEW_EXT_shader_implicit_conversions) - -#endif /* GL_EXT_shader_implicit_conversions */ - -/* ----------------------- GL_EXT_shader_integer_mix ----------------------- */ - -#ifndef GL_EXT_shader_integer_mix -#define GL_EXT_shader_integer_mix 1 - -#define GLEW_EXT_shader_integer_mix GLEW_GET_VAR(__GLEW_EXT_shader_integer_mix) - -#endif /* GL_EXT_shader_integer_mix */ - -/* ------------------------ GL_EXT_shader_io_blocks ------------------------ */ - -#ifndef GL_EXT_shader_io_blocks -#define GL_EXT_shader_io_blocks 1 - -#define GLEW_EXT_shader_io_blocks GLEW_GET_VAR(__GLEW_EXT_shader_io_blocks) - -#endif /* GL_EXT_shader_io_blocks */ - -/* ------------- GL_EXT_shader_non_constant_global_initializers ------------ */ - -#ifndef GL_EXT_shader_non_constant_global_initializers -#define GL_EXT_shader_non_constant_global_initializers 1 - -#define GLEW_EXT_shader_non_constant_global_initializers GLEW_GET_VAR(__GLEW_EXT_shader_non_constant_global_initializers) - -#endif /* GL_EXT_shader_non_constant_global_initializers */ - -/* ------------------- GL_EXT_shader_pixel_local_storage ------------------- */ - -#ifndef GL_EXT_shader_pixel_local_storage -#define GL_EXT_shader_pixel_local_storage 1 - -#define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT 0x8F63 -#define GL_SHADER_PIXEL_LOCAL_STORAGE_EXT 0x8F64 -#define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_SIZE_EXT 0x8F67 - -#define GLEW_EXT_shader_pixel_local_storage GLEW_GET_VAR(__GLEW_EXT_shader_pixel_local_storage) - -#endif /* GL_EXT_shader_pixel_local_storage */ - -/* ------------------- GL_EXT_shader_pixel_local_storage2 ------------------ */ - -#ifndef GL_EXT_shader_pixel_local_storage2 -#define GL_EXT_shader_pixel_local_storage2 1 - -#define GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_FAST_SIZE_EXT 0x9650 -#define GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_SIZE_EXT 0x9651 -#define GL_FRAMEBUFFER_INCOMPLETE_INSUFFICIENT_SHADER_COMBINED_LOCAL_STORAGE_EXT 0x9652 - -typedef void (GLAPIENTRY * PFNGLCLEARPIXELLOCALSTORAGEUIEXTPROC) (GLsizei offset, GLsizei n, const GLuint* values); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERPIXELLOCALSTORAGESIZEEXTPROC) (GLuint target, GLsizei size); -typedef GLsizei (GLAPIENTRY * PFNGLGETFRAMEBUFFERPIXELLOCALSTORAGESIZEEXTPROC) (GLuint target); - -#define glClearPixelLocalStorageuiEXT GLEW_GET_FUN(__glewClearPixelLocalStorageuiEXT) -#define glFramebufferPixelLocalStorageSizeEXT GLEW_GET_FUN(__glewFramebufferPixelLocalStorageSizeEXT) -#define glGetFramebufferPixelLocalStorageSizeEXT GLEW_GET_FUN(__glewGetFramebufferPixelLocalStorageSizeEXT) - -#define GLEW_EXT_shader_pixel_local_storage2 GLEW_GET_VAR(__GLEW_EXT_shader_pixel_local_storage2) - -#endif /* GL_EXT_shader_pixel_local_storage2 */ - -/* ----------------------- GL_EXT_shader_texture_lod ----------------------- */ - -#ifndef GL_EXT_shader_texture_lod -#define GL_EXT_shader_texture_lod 1 - -#define GLEW_EXT_shader_texture_lod GLEW_GET_VAR(__GLEW_EXT_shader_texture_lod) - -#endif /* GL_EXT_shader_texture_lod */ - -/* -------------------------- GL_EXT_shadow_funcs -------------------------- */ - -#ifndef GL_EXT_shadow_funcs -#define GL_EXT_shadow_funcs 1 - -#define GLEW_EXT_shadow_funcs GLEW_GET_VAR(__GLEW_EXT_shadow_funcs) - -#endif /* GL_EXT_shadow_funcs */ - -/* ------------------------- GL_EXT_shadow_samplers ------------------------ */ - -#ifndef GL_EXT_shadow_samplers -#define GL_EXT_shadow_samplers 1 - -#define GL_TEXTURE_COMPARE_MODE_EXT 0x884C -#define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D -#define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E -#define GL_SAMPLER_2D_SHADOW_EXT 0x8B62 - -#define GLEW_EXT_shadow_samplers GLEW_GET_VAR(__GLEW_EXT_shadow_samplers) - -#endif /* GL_EXT_shadow_samplers */ - -/* --------------------- GL_EXT_shared_texture_palette --------------------- */ - -#ifndef GL_EXT_shared_texture_palette -#define GL_EXT_shared_texture_palette 1 - -#define GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB - -#define GLEW_EXT_shared_texture_palette GLEW_GET_VAR(__GLEW_EXT_shared_texture_palette) - -#endif /* GL_EXT_shared_texture_palette */ - -/* ------------------------- GL_EXT_sparse_texture ------------------------- */ - -#ifndef GL_EXT_sparse_texture -#define GL_EXT_sparse_texture 1 - -#define GL_TEXTURE_2D 0x0DE1 -#define GL_TEXTURE_3D 0x806F -#define GL_TEXTURE_CUBE_MAP 0x8513 -#define GL_TEXTURE_2D_ARRAY 0x8C1A -#define GL_TEXTURE_CUBE_MAP_ARRAY_OES 0x9009 -#define GL_VIRTUAL_PAGE_SIZE_X_EXT 0x9195 -#define GL_VIRTUAL_PAGE_SIZE_Y_EXT 0x9196 -#define GL_VIRTUAL_PAGE_SIZE_Z_EXT 0x9197 -#define GL_MAX_SPARSE_TEXTURE_SIZE_EXT 0x9198 -#define GL_MAX_SPARSE_3D_TEXTURE_SIZE_EXT 0x9199 -#define GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_EXT 0x919A -#define GL_TEXTURE_SPARSE_EXT 0x91A6 -#define GL_VIRTUAL_PAGE_SIZE_INDEX_EXT 0x91A7 -#define GL_NUM_VIRTUAL_PAGE_SIZES_EXT 0x91A8 -#define GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_EXT 0x91A9 -#define GL_NUM_SPARSE_LEVELS_EXT 0x91AA - -typedef void (GLAPIENTRY * PFNGLTEXPAGECOMMITMENTEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit); -typedef void (GLAPIENTRY * PFNGLTEXTUREPAGECOMMITMENTEXTPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit); - -#define glTexPageCommitmentEXT GLEW_GET_FUN(__glewTexPageCommitmentEXT) -#define glTexturePageCommitmentEXT GLEW_GET_FUN(__glewTexturePageCommitmentEXT) - -#define GLEW_EXT_sparse_texture GLEW_GET_VAR(__GLEW_EXT_sparse_texture) - -#endif /* GL_EXT_sparse_texture */ - -/* ------------------------- GL_EXT_sparse_texture2 ------------------------ */ - -#ifndef GL_EXT_sparse_texture2 -#define GL_EXT_sparse_texture2 1 - -#define GLEW_EXT_sparse_texture2 GLEW_GET_VAR(__GLEW_EXT_sparse_texture2) - -#endif /* GL_EXT_sparse_texture2 */ - -/* ----------------------- GL_EXT_static_vertex_array ---------------------- */ - -#ifndef GL_EXT_static_vertex_array -#define GL_EXT_static_vertex_array 1 - -#define GLEW_EXT_static_vertex_array GLEW_GET_VAR(__GLEW_EXT_static_vertex_array) - -#endif /* GL_EXT_static_vertex_array */ - -/* ------------------------ GL_EXT_stencil_clear_tag ----------------------- */ - -#ifndef GL_EXT_stencil_clear_tag -#define GL_EXT_stencil_clear_tag 1 - -#define GL_STENCIL_TAG_BITS_EXT 0x88F2 -#define GL_STENCIL_CLEAR_TAG_VALUE_EXT 0x88F3 - -#define GLEW_EXT_stencil_clear_tag GLEW_GET_VAR(__GLEW_EXT_stencil_clear_tag) - -#endif /* GL_EXT_stencil_clear_tag */ - -/* ------------------------ GL_EXT_stencil_two_side ------------------------ */ - -#ifndef GL_EXT_stencil_two_side -#define GL_EXT_stencil_two_side 1 - -#define GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910 -#define GL_ACTIVE_STENCIL_FACE_EXT 0x8911 - -typedef void (GLAPIENTRY * PFNGLACTIVESTENCILFACEEXTPROC) (GLenum face); - -#define glActiveStencilFaceEXT GLEW_GET_FUN(__glewActiveStencilFaceEXT) - -#define GLEW_EXT_stencil_two_side GLEW_GET_VAR(__GLEW_EXT_stencil_two_side) - -#endif /* GL_EXT_stencil_two_side */ - -/* -------------------------- GL_EXT_stencil_wrap -------------------------- */ - -#ifndef GL_EXT_stencil_wrap -#define GL_EXT_stencil_wrap 1 - -#define GL_INCR_WRAP_EXT 0x8507 -#define GL_DECR_WRAP_EXT 0x8508 - -#define GLEW_EXT_stencil_wrap GLEW_GET_VAR(__GLEW_EXT_stencil_wrap) - -#endif /* GL_EXT_stencil_wrap */ - -/* --------------------------- GL_EXT_subtexture --------------------------- */ - -#ifndef GL_EXT_subtexture -#define GL_EXT_subtexture 1 - -typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); - -#define glTexSubImage1DEXT GLEW_GET_FUN(__glewTexSubImage1DEXT) -#define glTexSubImage2DEXT GLEW_GET_FUN(__glewTexSubImage2DEXT) -#define glTexSubImage3DEXT GLEW_GET_FUN(__glewTexSubImage3DEXT) - -#define GLEW_EXT_subtexture GLEW_GET_VAR(__GLEW_EXT_subtexture) - -#endif /* GL_EXT_subtexture */ - -/* --------------------- GL_EXT_tessellation_point_size -------------------- */ - -#ifndef GL_EXT_tessellation_point_size -#define GL_EXT_tessellation_point_size 1 - -#define GL_QUADS_EXT 0x0007 -#define GL_TESS_CONTROL_SHADER_BIT_EXT 0x00000008 -#define GL_PATCHES_EXT 0xE -#define GL_TESS_EVALUATION_SHADER_BIT_EXT 0x00000010 -#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221 -#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT 0x886C -#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT 0x886D -#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E1E -#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E1F -#define GL_PATCH_VERTICES_EXT 0x8E72 -#define GL_TESS_CONTROL_OUTPUT_VERTICES_EXT 0x8E75 -#define GL_TESS_GEN_MODE_EXT 0x8E76 -#define GL_TESS_GEN_SPACING_EXT 0x8E77 -#define GL_TESS_GEN_VERTEX_ORDER_EXT 0x8E78 -#define GL_TESS_GEN_POINT_MODE_EXT 0x8E79 -#define GL_ISOLINES_EXT 0x8E7A -#define GL_FRACTIONAL_ODD_EXT 0x8E7B -#define GL_FRACTIONAL_EVEN_EXT 0x8E7C -#define GL_MAX_PATCH_VERTICES_EXT 0x8E7D -#define GL_MAX_TESS_GEN_LEVEL_EXT 0x8E7E -#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E7F -#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E80 -#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT 0x8E81 -#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT 0x8E82 -#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT 0x8E83 -#define GL_MAX_TESS_PATCH_COMPONENTS_EXT 0x8E84 -#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT 0x8E85 -#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT 0x8E86 -#define GL_TESS_EVALUATION_SHADER_EXT 0x8E87 -#define GL_TESS_CONTROL_SHADER_EXT 0x8E88 -#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT 0x8E89 -#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT 0x8E8A -#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT 0x90CB -#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT 0x90CC -#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT 0x90D8 -#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT 0x90D9 -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT 0x92CD -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT 0x92CE -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT 0x92D3 -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT 0x92D4 -#define GL_IS_PER_PATCH_EXT 0x92E7 -#define GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT 0x9307 -#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT 0x9308 - -typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERIEXTPROC) (GLenum pname, GLint value); - -#define glPatchParameteriEXT GLEW_GET_FUN(__glewPatchParameteriEXT) - -#define GLEW_EXT_tessellation_point_size GLEW_GET_VAR(__GLEW_EXT_tessellation_point_size) - -#endif /* GL_EXT_tessellation_point_size */ - -/* ----------------------- GL_EXT_tessellation_shader ---------------------- */ - -#ifndef GL_EXT_tessellation_shader -#define GL_EXT_tessellation_shader 1 - -#define GL_QUADS_EXT 0x0007 -#define GL_TESS_CONTROL_SHADER_BIT_EXT 0x00000008 -#define GL_PATCHES_EXT 0xE -#define GL_TESS_EVALUATION_SHADER_BIT_EXT 0x00000010 -#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED 0x8221 -#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT 0x886C -#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT 0x886D -#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E1E -#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E1F -#define GL_PATCH_VERTICES_EXT 0x8E72 -#define GL_TESS_CONTROL_OUTPUT_VERTICES_EXT 0x8E75 -#define GL_TESS_GEN_MODE_EXT 0x8E76 -#define GL_TESS_GEN_SPACING_EXT 0x8E77 -#define GL_TESS_GEN_VERTEX_ORDER_EXT 0x8E78 -#define GL_TESS_GEN_POINT_MODE_EXT 0x8E79 -#define GL_ISOLINES_EXT 0x8E7A -#define GL_FRACTIONAL_ODD_EXT 0x8E7B -#define GL_FRACTIONAL_EVEN_EXT 0x8E7C -#define GL_MAX_PATCH_VERTICES_EXT 0x8E7D -#define GL_MAX_TESS_GEN_LEVEL_EXT 0x8E7E -#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT 0x8E7F -#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT 0x8E80 -#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT 0x8E81 -#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT 0x8E82 -#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT 0x8E83 -#define GL_MAX_TESS_PATCH_COMPONENTS_EXT 0x8E84 -#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT 0x8E85 -#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT 0x8E86 -#define GL_TESS_EVALUATION_SHADER_EXT 0x8E87 -#define GL_TESS_CONTROL_SHADER_EXT 0x8E88 -#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT 0x8E89 -#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT 0x8E8A -#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT 0x90CB -#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT 0x90CC -#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT 0x90D8 -#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT 0x90D9 -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT 0x92CD -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT 0x92CE -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT 0x92D3 -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT 0x92D4 -#define GL_IS_PER_PATCH_EXT 0x92E7 -#define GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT 0x9307 -#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT 0x9308 - -#define GLEW_EXT_tessellation_shader GLEW_GET_VAR(__GLEW_EXT_tessellation_shader) - -#endif /* GL_EXT_tessellation_shader */ - -/* ----------------------------- GL_EXT_texture ---------------------------- */ - -#ifndef GL_EXT_texture -#define GL_EXT_texture 1 - -#define GL_ALPHA4_EXT 0x803B -#define GL_ALPHA8_EXT 0x803C -#define GL_ALPHA12_EXT 0x803D -#define GL_ALPHA16_EXT 0x803E -#define GL_LUMINANCE4_EXT 0x803F -#define GL_LUMINANCE8_EXT 0x8040 -#define GL_LUMINANCE12_EXT 0x8041 -#define GL_LUMINANCE16_EXT 0x8042 -#define GL_LUMINANCE4_ALPHA4_EXT 0x8043 -#define GL_LUMINANCE6_ALPHA2_EXT 0x8044 -#define GL_LUMINANCE8_ALPHA8_EXT 0x8045 -#define GL_LUMINANCE12_ALPHA4_EXT 0x8046 -#define GL_LUMINANCE12_ALPHA12_EXT 0x8047 -#define GL_LUMINANCE16_ALPHA16_EXT 0x8048 -#define GL_INTENSITY_EXT 0x8049 -#define GL_INTENSITY4_EXT 0x804A -#define GL_INTENSITY8_EXT 0x804B -#define GL_INTENSITY12_EXT 0x804C -#define GL_INTENSITY16_EXT 0x804D -#define GL_RGB2_EXT 0x804E -#define GL_RGB4_EXT 0x804F -#define GL_RGB5_EXT 0x8050 -#define GL_RGB8_EXT 0x8051 -#define GL_RGB10_EXT 0x8052 -#define GL_RGB12_EXT 0x8053 -#define GL_RGB16_EXT 0x8054 -#define GL_RGBA2_EXT 0x8055 -#define GL_RGBA4_EXT 0x8056 -#define GL_RGB5_A1_EXT 0x8057 -#define GL_RGBA8_EXT 0x8058 -#define GL_RGB10_A2_EXT 0x8059 -#define GL_RGBA12_EXT 0x805A -#define GL_RGBA16_EXT 0x805B -#define GL_TEXTURE_RED_SIZE_EXT 0x805C -#define GL_TEXTURE_GREEN_SIZE_EXT 0x805D -#define GL_TEXTURE_BLUE_SIZE_EXT 0x805E -#define GL_TEXTURE_ALPHA_SIZE_EXT 0x805F -#define GL_TEXTURE_LUMINANCE_SIZE_EXT 0x8060 -#define GL_TEXTURE_INTENSITY_SIZE_EXT 0x8061 -#define GL_REPLACE_EXT 0x8062 -#define GL_PROXY_TEXTURE_1D_EXT 0x8063 -#define GL_PROXY_TEXTURE_2D_EXT 0x8064 - -#define GLEW_EXT_texture GLEW_GET_VAR(__GLEW_EXT_texture) - -#endif /* GL_EXT_texture */ - -/* ---------------------------- GL_EXT_texture3D --------------------------- */ - -#ifndef GL_EXT_texture3D -#define GL_EXT_texture3D 1 - -#define GL_PACK_SKIP_IMAGES_EXT 0x806B -#define GL_PACK_IMAGE_HEIGHT_EXT 0x806C -#define GL_UNPACK_SKIP_IMAGES_EXT 0x806D -#define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E -#define GL_TEXTURE_3D_EXT 0x806F -#define GL_PROXY_TEXTURE_3D_EXT 0x8070 -#define GL_TEXTURE_DEPTH_EXT 0x8071 -#define GL_TEXTURE_WRAP_R_EXT 0x8072 -#define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073 - -typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); - -#define glTexImage3DEXT GLEW_GET_FUN(__glewTexImage3DEXT) - -#define GLEW_EXT_texture3D GLEW_GET_VAR(__GLEW_EXT_texture3D) - -#endif /* GL_EXT_texture3D */ - -/* -------------------------- GL_EXT_texture_array ------------------------- */ - -#ifndef GL_EXT_texture_array -#define GL_EXT_texture_array 1 - -#define GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT 0x884E -#define GL_MAX_ARRAY_TEXTURE_LAYERS_EXT 0x88FF -#define GL_TEXTURE_1D_ARRAY_EXT 0x8C18 -#define GL_PROXY_TEXTURE_1D_ARRAY_EXT 0x8C19 -#define GL_TEXTURE_2D_ARRAY_EXT 0x8C1A -#define GL_PROXY_TEXTURE_2D_ARRAY_EXT 0x8C1B -#define GL_TEXTURE_BINDING_1D_ARRAY_EXT 0x8C1C -#define GL_TEXTURE_BINDING_2D_ARRAY_EXT 0x8C1D - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); - -#define glFramebufferTextureLayerEXT GLEW_GET_FUN(__glewFramebufferTextureLayerEXT) - -#define GLEW_EXT_texture_array GLEW_GET_VAR(__GLEW_EXT_texture_array) - -#endif /* GL_EXT_texture_array */ - -/* ---------------------- GL_EXT_texture_border_clamp ---------------------- */ - -#ifndef GL_EXT_texture_border_clamp -#define GL_EXT_texture_border_clamp 1 - -#define GL_TEXTURE_BORDER_COLOR_EXT 0x1004 -#define GL_CLAMP_TO_BORDER_EXT 0x812D - -typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIIVEXTPROC) (GLuint sampler, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIUIVEXTPROC) (GLuint sampler, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIIVEXTPROC) (GLuint sampler, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIUIVEXTPROC) (GLuint sampler, GLenum pname, const GLuint* params); - -#define glGetSamplerParameterIivEXT GLEW_GET_FUN(__glewGetSamplerParameterIivEXT) -#define glGetSamplerParameterIuivEXT GLEW_GET_FUN(__glewGetSamplerParameterIuivEXT) -#define glSamplerParameterIivEXT GLEW_GET_FUN(__glewSamplerParameterIivEXT) -#define glSamplerParameterIuivEXT GLEW_GET_FUN(__glewSamplerParameterIuivEXT) - -#define GLEW_EXT_texture_border_clamp GLEW_GET_VAR(__GLEW_EXT_texture_border_clamp) - -#endif /* GL_EXT_texture_border_clamp */ - -/* ------------------------- GL_EXT_texture_buffer ------------------------- */ - -#ifndef GL_EXT_texture_buffer -#define GL_EXT_texture_buffer 1 - -#define GL_TEXTURE_BUFFER_BINDING_EXT 0x8C2A -#define GL_TEXTURE_BUFFER_EXT 0x8C2A -#define GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B -#define GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C -#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D -#define GL_SAMPLER_BUFFER_EXT 0x8DC2 -#define GL_INT_SAMPLER_BUFFER_EXT 0x8DD0 -#define GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8 -#define GL_IMAGE_BUFFER_EXT 0x9051 -#define GL_INT_IMAGE_BUFFER_EXT 0x905C -#define GL_UNSIGNED_INT_IMAGE_BUFFER_EXT 0x9067 -#define GL_TEXTURE_BUFFER_OFFSET_EXT 0x919D -#define GL_TEXTURE_BUFFER_SIZE_EXT 0x919E -#define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT 0x919F - -#define GLEW_EXT_texture_buffer GLEW_GET_VAR(__GLEW_EXT_texture_buffer) - -#endif /* GL_EXT_texture_buffer */ - -/* ---------------------- GL_EXT_texture_buffer_object --------------------- */ - -#ifndef GL_EXT_texture_buffer_object -#define GL_EXT_texture_buffer_object 1 - -#define GL_TEXTURE_BUFFER_EXT 0x8C2A -#define GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B -#define GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C -#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D -#define GL_TEXTURE_BUFFER_FORMAT_EXT 0x8C2E - -typedef void (GLAPIENTRY * PFNGLTEXBUFFEREXTPROC) (GLenum target, GLenum internalformat, GLuint buffer); - -#define glTexBufferEXT GLEW_GET_FUN(__glewTexBufferEXT) - -#define GLEW_EXT_texture_buffer_object GLEW_GET_VAR(__GLEW_EXT_texture_buffer_object) - -#endif /* GL_EXT_texture_buffer_object */ - -/* -------------- GL_EXT_texture_compression_astc_decode_mode -------------- */ - -#ifndef GL_EXT_texture_compression_astc_decode_mode -#define GL_EXT_texture_compression_astc_decode_mode 1 - -#define GL_TEXTURE_ASTC_DECODE_PRECISION_EXT 0x8F69 - -#define GLEW_EXT_texture_compression_astc_decode_mode GLEW_GET_VAR(__GLEW_EXT_texture_compression_astc_decode_mode) - -#endif /* GL_EXT_texture_compression_astc_decode_mode */ - -/* ----------- GL_EXT_texture_compression_astc_decode_mode_rgb9e5 ---------- */ - -#ifndef GL_EXT_texture_compression_astc_decode_mode_rgb9e5 -#define GL_EXT_texture_compression_astc_decode_mode_rgb9e5 1 - -#define GL_TEXTURE_ASTC_DECODE_PRECISION_EXT 0x8F69 - -#define GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5 GLEW_GET_VAR(__GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5) - -#endif /* GL_EXT_texture_compression_astc_decode_mode_rgb9e5 */ - -/* -------------------- GL_EXT_texture_compression_bptc -------------------- */ - -#ifndef GL_EXT_texture_compression_bptc -#define GL_EXT_texture_compression_bptc 1 - -#define GL_COMPRESSED_RGBA_BPTC_UNORM_EXT 0x8E8C -#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT 0x8E8D -#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT 0x8E8E -#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT 0x8E8F - -#define GLEW_EXT_texture_compression_bptc GLEW_GET_VAR(__GLEW_EXT_texture_compression_bptc) - -#endif /* GL_EXT_texture_compression_bptc */ - -/* -------------------- GL_EXT_texture_compression_dxt1 -------------------- */ - -#ifndef GL_EXT_texture_compression_dxt1 -#define GL_EXT_texture_compression_dxt1 1 - -#define GLEW_EXT_texture_compression_dxt1 GLEW_GET_VAR(__GLEW_EXT_texture_compression_dxt1) - -#endif /* GL_EXT_texture_compression_dxt1 */ - -/* -------------------- GL_EXT_texture_compression_latc -------------------- */ - -#ifndef GL_EXT_texture_compression_latc -#define GL_EXT_texture_compression_latc 1 - -#define GL_COMPRESSED_LUMINANCE_LATC1_EXT 0x8C70 -#define GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT 0x8C71 -#define GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT 0x8C72 -#define GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT 0x8C73 - -#define GLEW_EXT_texture_compression_latc GLEW_GET_VAR(__GLEW_EXT_texture_compression_latc) - -#endif /* GL_EXT_texture_compression_latc */ - -/* -------------------- GL_EXT_texture_compression_rgtc -------------------- */ - -#ifndef GL_EXT_texture_compression_rgtc -#define GL_EXT_texture_compression_rgtc 1 - -#define GL_COMPRESSED_RED_RGTC1_EXT 0x8DBB -#define GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC -#define GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD -#define GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE - -#define GLEW_EXT_texture_compression_rgtc GLEW_GET_VAR(__GLEW_EXT_texture_compression_rgtc) - -#endif /* GL_EXT_texture_compression_rgtc */ - -/* -------------------- GL_EXT_texture_compression_s3tc -------------------- */ - -#ifndef GL_EXT_texture_compression_s3tc -#define GL_EXT_texture_compression_s3tc 1 - -#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0 -#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1 -#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2 -#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3 - -#define GLEW_EXT_texture_compression_s3tc GLEW_GET_VAR(__GLEW_EXT_texture_compression_s3tc) - -#endif /* GL_EXT_texture_compression_s3tc */ - -/* ------------------ GL_EXT_texture_compression_s3tc_srgb ----------------- */ - -#ifndef GL_EXT_texture_compression_s3tc_srgb -#define GL_EXT_texture_compression_s3tc_srgb 1 - -#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F - -#define GLEW_EXT_texture_compression_s3tc_srgb GLEW_GET_VAR(__GLEW_EXT_texture_compression_s3tc_srgb) - -#endif /* GL_EXT_texture_compression_s3tc_srgb */ - -/* ------------------------ GL_EXT_texture_cube_map ------------------------ */ - -#ifndef GL_EXT_texture_cube_map -#define GL_EXT_texture_cube_map 1 - -#define GL_NORMAL_MAP_EXT 0x8511 -#define GL_REFLECTION_MAP_EXT 0x8512 -#define GL_TEXTURE_CUBE_MAP_EXT 0x8513 -#define GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A -#define GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B -#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C - -#define GLEW_EXT_texture_cube_map GLEW_GET_VAR(__GLEW_EXT_texture_cube_map) - -#endif /* GL_EXT_texture_cube_map */ - -/* --------------------- GL_EXT_texture_cube_map_array --------------------- */ - -#ifndef GL_EXT_texture_cube_map_array -#define GL_EXT_texture_cube_map_array 1 - -#define GL_TEXTURE_CUBE_MAP_ARRAY_EXT 0x9009 -#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT 0x900A -#define GL_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900C -#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT 0x900D -#define GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900E -#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT 0x900F -#define GL_IMAGE_CUBE_MAP_ARRAY_EXT 0x9054 -#define GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x905F -#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x906A - -#define GLEW_EXT_texture_cube_map_array GLEW_GET_VAR(__GLEW_EXT_texture_cube_map_array) - -#endif /* GL_EXT_texture_cube_map_array */ - -/* ----------------------- GL_EXT_texture_edge_clamp ----------------------- */ - -#ifndef GL_EXT_texture_edge_clamp -#define GL_EXT_texture_edge_clamp 1 - -#define GL_CLAMP_TO_EDGE_EXT 0x812F - -#define GLEW_EXT_texture_edge_clamp GLEW_GET_VAR(__GLEW_EXT_texture_edge_clamp) - -#endif /* GL_EXT_texture_edge_clamp */ - -/* --------------------------- GL_EXT_texture_env -------------------------- */ - -#ifndef GL_EXT_texture_env -#define GL_EXT_texture_env 1 - -#define GLEW_EXT_texture_env GLEW_GET_VAR(__GLEW_EXT_texture_env) - -#endif /* GL_EXT_texture_env */ - -/* ------------------------- GL_EXT_texture_env_add ------------------------ */ - -#ifndef GL_EXT_texture_env_add -#define GL_EXT_texture_env_add 1 - -#define GLEW_EXT_texture_env_add GLEW_GET_VAR(__GLEW_EXT_texture_env_add) - -#endif /* GL_EXT_texture_env_add */ - -/* ----------------------- GL_EXT_texture_env_combine ---------------------- */ - -#ifndef GL_EXT_texture_env_combine -#define GL_EXT_texture_env_combine 1 - -#define GL_COMBINE_EXT 0x8570 -#define GL_COMBINE_RGB_EXT 0x8571 -#define GL_COMBINE_ALPHA_EXT 0x8572 -#define GL_RGB_SCALE_EXT 0x8573 -#define GL_ADD_SIGNED_EXT 0x8574 -#define GL_INTERPOLATE_EXT 0x8575 -#define GL_CONSTANT_EXT 0x8576 -#define GL_PRIMARY_COLOR_EXT 0x8577 -#define GL_PREVIOUS_EXT 0x8578 -#define GL_SOURCE0_RGB_EXT 0x8580 -#define GL_SOURCE1_RGB_EXT 0x8581 -#define GL_SOURCE2_RGB_EXT 0x8582 -#define GL_SOURCE0_ALPHA_EXT 0x8588 -#define GL_SOURCE1_ALPHA_EXT 0x8589 -#define GL_SOURCE2_ALPHA_EXT 0x858A -#define GL_OPERAND0_RGB_EXT 0x8590 -#define GL_OPERAND1_RGB_EXT 0x8591 -#define GL_OPERAND2_RGB_EXT 0x8592 -#define GL_OPERAND0_ALPHA_EXT 0x8598 -#define GL_OPERAND1_ALPHA_EXT 0x8599 -#define GL_OPERAND2_ALPHA_EXT 0x859A - -#define GLEW_EXT_texture_env_combine GLEW_GET_VAR(__GLEW_EXT_texture_env_combine) - -#endif /* GL_EXT_texture_env_combine */ - -/* ------------------------ GL_EXT_texture_env_dot3 ------------------------ */ - -#ifndef GL_EXT_texture_env_dot3 -#define GL_EXT_texture_env_dot3 1 - -#define GL_DOT3_RGB_EXT 0x8740 -#define GL_DOT3_RGBA_EXT 0x8741 - -#define GLEW_EXT_texture_env_dot3 GLEW_GET_VAR(__GLEW_EXT_texture_env_dot3) - -#endif /* GL_EXT_texture_env_dot3 */ - -/* ------------------- GL_EXT_texture_filter_anisotropic ------------------- */ - -#ifndef GL_EXT_texture_filter_anisotropic -#define GL_EXT_texture_filter_anisotropic 1 - -#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE -#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF - -#define GLEW_EXT_texture_filter_anisotropic GLEW_GET_VAR(__GLEW_EXT_texture_filter_anisotropic) - -#endif /* GL_EXT_texture_filter_anisotropic */ - -/* ---------------------- GL_EXT_texture_filter_minmax --------------------- */ - -#ifndef GL_EXT_texture_filter_minmax -#define GL_EXT_texture_filter_minmax 1 - -#define GL_TEXTURE_REDUCTION_MODE_EXT 0x9366 -#define GL_WEIGHTED_AVERAGE_EXT 0x9367 - -#define GLEW_EXT_texture_filter_minmax GLEW_GET_VAR(__GLEW_EXT_texture_filter_minmax) - -#endif /* GL_EXT_texture_filter_minmax */ - -/* --------------------- GL_EXT_texture_format_BGRA8888 -------------------- */ - -#ifndef GL_EXT_texture_format_BGRA8888 -#define GL_EXT_texture_format_BGRA8888 1 - -#define GL_BGRA_EXT 0x80E1 - -#define GLEW_EXT_texture_format_BGRA8888 GLEW_GET_VAR(__GLEW_EXT_texture_format_BGRA8888) - -#endif /* GL_EXT_texture_format_BGRA8888 */ - -/* ------------------ GL_EXT_texture_format_sRGB_override ------------------ */ - -#ifndef GL_EXT_texture_format_sRGB_override -#define GL_EXT_texture_format_sRGB_override 1 - -#define GL_TEXTURE_FORMAT_SRGB_OVERRIDE_EXT 0x8FBF - -#define GLEW_EXT_texture_format_sRGB_override GLEW_GET_VAR(__GLEW_EXT_texture_format_sRGB_override) - -#endif /* GL_EXT_texture_format_sRGB_override */ - -/* ------------------------- GL_EXT_texture_integer ------------------------ */ - -#ifndef GL_EXT_texture_integer -#define GL_EXT_texture_integer 1 - -#define GL_RGBA32UI_EXT 0x8D70 -#define GL_RGB32UI_EXT 0x8D71 -#define GL_ALPHA32UI_EXT 0x8D72 -#define GL_INTENSITY32UI_EXT 0x8D73 -#define GL_LUMINANCE32UI_EXT 0x8D74 -#define GL_LUMINANCE_ALPHA32UI_EXT 0x8D75 -#define GL_RGBA16UI_EXT 0x8D76 -#define GL_RGB16UI_EXT 0x8D77 -#define GL_ALPHA16UI_EXT 0x8D78 -#define GL_INTENSITY16UI_EXT 0x8D79 -#define GL_LUMINANCE16UI_EXT 0x8D7A -#define GL_LUMINANCE_ALPHA16UI_EXT 0x8D7B -#define GL_RGBA8UI_EXT 0x8D7C -#define GL_RGB8UI_EXT 0x8D7D -#define GL_ALPHA8UI_EXT 0x8D7E -#define GL_INTENSITY8UI_EXT 0x8D7F -#define GL_LUMINANCE8UI_EXT 0x8D80 -#define GL_LUMINANCE_ALPHA8UI_EXT 0x8D81 -#define GL_RGBA32I_EXT 0x8D82 -#define GL_RGB32I_EXT 0x8D83 -#define GL_ALPHA32I_EXT 0x8D84 -#define GL_INTENSITY32I_EXT 0x8D85 -#define GL_LUMINANCE32I_EXT 0x8D86 -#define GL_LUMINANCE_ALPHA32I_EXT 0x8D87 -#define GL_RGBA16I_EXT 0x8D88 -#define GL_RGB16I_EXT 0x8D89 -#define GL_ALPHA16I_EXT 0x8D8A -#define GL_INTENSITY16I_EXT 0x8D8B -#define GL_LUMINANCE16I_EXT 0x8D8C -#define GL_LUMINANCE_ALPHA16I_EXT 0x8D8D -#define GL_RGBA8I_EXT 0x8D8E -#define GL_RGB8I_EXT 0x8D8F -#define GL_ALPHA8I_EXT 0x8D90 -#define GL_INTENSITY8I_EXT 0x8D91 -#define GL_LUMINANCE8I_EXT 0x8D92 -#define GL_LUMINANCE_ALPHA8I_EXT 0x8D93 -#define GL_RED_INTEGER_EXT 0x8D94 -#define GL_GREEN_INTEGER_EXT 0x8D95 -#define GL_BLUE_INTEGER_EXT 0x8D96 -#define GL_ALPHA_INTEGER_EXT 0x8D97 -#define GL_RGB_INTEGER_EXT 0x8D98 -#define GL_RGBA_INTEGER_EXT 0x8D99 -#define GL_BGR_INTEGER_EXT 0x8D9A -#define GL_BGRA_INTEGER_EXT 0x8D9B -#define GL_LUMINANCE_INTEGER_EXT 0x8D9C -#define GL_LUMINANCE_ALPHA_INTEGER_EXT 0x8D9D -#define GL_RGBA_INTEGER_MODE_EXT 0x8D9E - -typedef void (GLAPIENTRY * PFNGLCLEARCOLORIIEXTPROC) (GLint red, GLint green, GLint blue, GLint alpha); -typedef void (GLAPIENTRY * PFNGLCLEARCOLORIUIEXTPROC) (GLuint red, GLuint green, GLuint blue, GLuint alpha); -typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, GLuint *params); -typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, const GLuint *params); - -#define glClearColorIiEXT GLEW_GET_FUN(__glewClearColorIiEXT) -#define glClearColorIuiEXT GLEW_GET_FUN(__glewClearColorIuiEXT) -#define glGetTexParameterIivEXT GLEW_GET_FUN(__glewGetTexParameterIivEXT) -#define glGetTexParameterIuivEXT GLEW_GET_FUN(__glewGetTexParameterIuivEXT) -#define glTexParameterIivEXT GLEW_GET_FUN(__glewTexParameterIivEXT) -#define glTexParameterIuivEXT GLEW_GET_FUN(__glewTexParameterIuivEXT) - -#define GLEW_EXT_texture_integer GLEW_GET_VAR(__GLEW_EXT_texture_integer) - -#endif /* GL_EXT_texture_integer */ - -/* ------------------------ GL_EXT_texture_lod_bias ------------------------ */ - -#ifndef GL_EXT_texture_lod_bias -#define GL_EXT_texture_lod_bias 1 - -#define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD -#define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500 -#define GL_TEXTURE_LOD_BIAS_EXT 0x8501 - -#define GLEW_EXT_texture_lod_bias GLEW_GET_VAR(__GLEW_EXT_texture_lod_bias) - -#endif /* GL_EXT_texture_lod_bias */ - -/* ---------------------- GL_EXT_texture_mirror_clamp ---------------------- */ - -#ifndef GL_EXT_texture_mirror_clamp -#define GL_EXT_texture_mirror_clamp 1 - -#define GL_MIRROR_CLAMP_EXT 0x8742 -#define GL_MIRROR_CLAMP_TO_EDGE_EXT 0x8743 -#define GL_MIRROR_CLAMP_TO_BORDER_EXT 0x8912 - -#define GLEW_EXT_texture_mirror_clamp GLEW_GET_VAR(__GLEW_EXT_texture_mirror_clamp) - -#endif /* GL_EXT_texture_mirror_clamp */ - -/* ------------------ GL_EXT_texture_mirror_clamp_to_edge ------------------ */ - -#ifndef GL_EXT_texture_mirror_clamp_to_edge -#define GL_EXT_texture_mirror_clamp_to_edge 1 - -#define GL_MIRROR_CLAMP_TO_EDGE_EXT 0x8743 - -#define GLEW_EXT_texture_mirror_clamp_to_edge GLEW_GET_VAR(__GLEW_EXT_texture_mirror_clamp_to_edge) - -#endif /* GL_EXT_texture_mirror_clamp_to_edge */ - -/* ------------------------- GL_EXT_texture_norm16 ------------------------- */ - -#ifndef GL_EXT_texture_norm16 -#define GL_EXT_texture_norm16 1 - -#define GL_RGB16_EXT 0x8054 -#define GL_RGBA16_EXT 0x805B -#define GL_R16_EXT 0x822A -#define GL_RG16_EXT 0x822C -#define GL_R16_SNORM_EXT 0x8F98 -#define GL_RG16_SNORM_EXT 0x8F99 -#define GL_RGB16_SNORM_EXT 0x8F9A -#define GL_RGBA16_SNORM_EXT 0x8F9B - -#define GLEW_EXT_texture_norm16 GLEW_GET_VAR(__GLEW_EXT_texture_norm16) - -#endif /* GL_EXT_texture_norm16 */ - -/* ------------------------- GL_EXT_texture_object ------------------------- */ - -#ifndef GL_EXT_texture_object -#define GL_EXT_texture_object 1 - -#define GL_TEXTURE_PRIORITY_EXT 0x8066 -#define GL_TEXTURE_RESIDENT_EXT 0x8067 -#define GL_TEXTURE_1D_BINDING_EXT 0x8068 -#define GL_TEXTURE_2D_BINDING_EXT 0x8069 -#define GL_TEXTURE_3D_BINDING_EXT 0x806A - -typedef GLboolean (GLAPIENTRY * PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n, const GLuint* textures, GLboolean* residences); -typedef void (GLAPIENTRY * PFNGLBINDTEXTUREEXTPROC) (GLenum target, GLuint texture); -typedef void (GLAPIENTRY * PFNGLDELETETEXTURESEXTPROC) (GLsizei n, const GLuint* textures); -typedef void (GLAPIENTRY * PFNGLGENTEXTURESEXTPROC) (GLsizei n, GLuint* textures); -typedef GLboolean (GLAPIENTRY * PFNGLISTEXTUREEXTPROC) (GLuint texture); -typedef void (GLAPIENTRY * PFNGLPRIORITIZETEXTURESEXTPROC) (GLsizei n, const GLuint* textures, const GLclampf* priorities); - -#define glAreTexturesResidentEXT GLEW_GET_FUN(__glewAreTexturesResidentEXT) -#define glBindTextureEXT GLEW_GET_FUN(__glewBindTextureEXT) -#define glDeleteTexturesEXT GLEW_GET_FUN(__glewDeleteTexturesEXT) -#define glGenTexturesEXT GLEW_GET_FUN(__glewGenTexturesEXT) -#define glIsTextureEXT GLEW_GET_FUN(__glewIsTextureEXT) -#define glPrioritizeTexturesEXT GLEW_GET_FUN(__glewPrioritizeTexturesEXT) - -#define GLEW_EXT_texture_object GLEW_GET_VAR(__GLEW_EXT_texture_object) - -#endif /* GL_EXT_texture_object */ - -/* --------------------- GL_EXT_texture_perturb_normal --------------------- */ - -#ifndef GL_EXT_texture_perturb_normal -#define GL_EXT_texture_perturb_normal 1 - -#define GL_PERTURB_EXT 0x85AE -#define GL_TEXTURE_NORMAL_EXT 0x85AF - -typedef void (GLAPIENTRY * PFNGLTEXTURENORMALEXTPROC) (GLenum mode); - -#define glTextureNormalEXT GLEW_GET_FUN(__glewTextureNormalEXT) - -#define GLEW_EXT_texture_perturb_normal GLEW_GET_VAR(__GLEW_EXT_texture_perturb_normal) - -#endif /* GL_EXT_texture_perturb_normal */ - -/* ------------------------ GL_EXT_texture_query_lod ----------------------- */ - -#ifndef GL_EXT_texture_query_lod -#define GL_EXT_texture_query_lod 1 - -#define GLEW_EXT_texture_query_lod GLEW_GET_VAR(__GLEW_EXT_texture_query_lod) - -#endif /* GL_EXT_texture_query_lod */ - -/* ------------------------ GL_EXT_texture_rectangle ----------------------- */ - -#ifndef GL_EXT_texture_rectangle -#define GL_EXT_texture_rectangle 1 - -#define GL_TEXTURE_RECTANGLE_EXT 0x84F5 -#define GL_TEXTURE_BINDING_RECTANGLE_EXT 0x84F6 -#define GL_PROXY_TEXTURE_RECTANGLE_EXT 0x84F7 -#define GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x84F8 - -#define GLEW_EXT_texture_rectangle GLEW_GET_VAR(__GLEW_EXT_texture_rectangle) - -#endif /* GL_EXT_texture_rectangle */ - -/* --------------------------- GL_EXT_texture_rg --------------------------- */ - -#ifndef GL_EXT_texture_rg -#define GL_EXT_texture_rg 1 - -#define GL_RED_EXT 0x1903 -#define GL_RG_EXT 0x8227 -#define GL_R8_EXT 0x8229 -#define GL_RG8_EXT 0x822B - -#define GLEW_EXT_texture_rg GLEW_GET_VAR(__GLEW_EXT_texture_rg) - -#endif /* GL_EXT_texture_rg */ - -/* -------------------------- GL_EXT_texture_sRGB -------------------------- */ - -#ifndef GL_EXT_texture_sRGB -#define GL_EXT_texture_sRGB 1 - -#define GL_SRGB_EXT 0x8C40 -#define GL_SRGB8_EXT 0x8C41 -#define GL_SRGB_ALPHA_EXT 0x8C42 -#define GL_SRGB8_ALPHA8_EXT 0x8C43 -#define GL_SLUMINANCE_ALPHA_EXT 0x8C44 -#define GL_SLUMINANCE8_ALPHA8_EXT 0x8C45 -#define GL_SLUMINANCE_EXT 0x8C46 -#define GL_SLUMINANCE8_EXT 0x8C47 -#define GL_COMPRESSED_SRGB_EXT 0x8C48 -#define GL_COMPRESSED_SRGB_ALPHA_EXT 0x8C49 -#define GL_COMPRESSED_SLUMINANCE_EXT 0x8C4A -#define GL_COMPRESSED_SLUMINANCE_ALPHA_EXT 0x8C4B -#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F - -#define GLEW_EXT_texture_sRGB GLEW_GET_VAR(__GLEW_EXT_texture_sRGB) - -#endif /* GL_EXT_texture_sRGB */ - -/* ------------------------- GL_EXT_texture_sRGB_R8 ------------------------ */ - -#ifndef GL_EXT_texture_sRGB_R8 -#define GL_EXT_texture_sRGB_R8 1 - -#define GL_SR8_EXT 0x8FBD - -#define GLEW_EXT_texture_sRGB_R8 GLEW_GET_VAR(__GLEW_EXT_texture_sRGB_R8) - -#endif /* GL_EXT_texture_sRGB_R8 */ - -/* ------------------------ GL_EXT_texture_sRGB_RG8 ------------------------ */ - -#ifndef GL_EXT_texture_sRGB_RG8 -#define GL_EXT_texture_sRGB_RG8 1 - -#define GL_SRG8_EXT 0x8FBE - -#define GLEW_EXT_texture_sRGB_RG8 GLEW_GET_VAR(__GLEW_EXT_texture_sRGB_RG8) - -#endif /* GL_EXT_texture_sRGB_RG8 */ - -/* ----------------------- GL_EXT_texture_sRGB_decode ---------------------- */ - -#ifndef GL_EXT_texture_sRGB_decode -#define GL_EXT_texture_sRGB_decode 1 - -#define GL_TEXTURE_SRGB_DECODE_EXT 0x8A48 -#define GL_DECODE_EXT 0x8A49 -#define GL_SKIP_DECODE_EXT 0x8A4A - -#define GLEW_EXT_texture_sRGB_decode GLEW_GET_VAR(__GLEW_EXT_texture_sRGB_decode) - -#endif /* GL_EXT_texture_sRGB_decode */ - -/* ----------------------- GL_EXT_texture_shadow_lod ----------------------- */ - -#ifndef GL_EXT_texture_shadow_lod -#define GL_EXT_texture_shadow_lod 1 - -#define GLEW_EXT_texture_shadow_lod GLEW_GET_VAR(__GLEW_EXT_texture_shadow_lod) - -#endif /* GL_EXT_texture_shadow_lod */ - -/* --------------------- GL_EXT_texture_shared_exponent -------------------- */ - -#ifndef GL_EXT_texture_shared_exponent -#define GL_EXT_texture_shared_exponent 1 - -#define GL_RGB9_E5_EXT 0x8C3D -#define GL_UNSIGNED_INT_5_9_9_9_REV_EXT 0x8C3E -#define GL_TEXTURE_SHARED_SIZE_EXT 0x8C3F - -#define GLEW_EXT_texture_shared_exponent GLEW_GET_VAR(__GLEW_EXT_texture_shared_exponent) - -#endif /* GL_EXT_texture_shared_exponent */ - -/* -------------------------- GL_EXT_texture_snorm ------------------------- */ - -#ifndef GL_EXT_texture_snorm -#define GL_EXT_texture_snorm 1 - -#define GL_RED_SNORM 0x8F90 -#define GL_RG_SNORM 0x8F91 -#define GL_RGB_SNORM 0x8F92 -#define GL_RGBA_SNORM 0x8F93 -#define GL_R8_SNORM 0x8F94 -#define GL_RG8_SNORM 0x8F95 -#define GL_RGB8_SNORM 0x8F96 -#define GL_RGBA8_SNORM 0x8F97 -#define GL_R16_SNORM 0x8F98 -#define GL_RG16_SNORM 0x8F99 -#define GL_RGB16_SNORM 0x8F9A -#define GL_RGBA16_SNORM 0x8F9B -#define GL_SIGNED_NORMALIZED 0x8F9C -#define GL_ALPHA_SNORM 0x9010 -#define GL_LUMINANCE_SNORM 0x9011 -#define GL_LUMINANCE_ALPHA_SNORM 0x9012 -#define GL_INTENSITY_SNORM 0x9013 -#define GL_ALPHA8_SNORM 0x9014 -#define GL_LUMINANCE8_SNORM 0x9015 -#define GL_LUMINANCE8_ALPHA8_SNORM 0x9016 -#define GL_INTENSITY8_SNORM 0x9017 -#define GL_ALPHA16_SNORM 0x9018 -#define GL_LUMINANCE16_SNORM 0x9019 -#define GL_LUMINANCE16_ALPHA16_SNORM 0x901A -#define GL_INTENSITY16_SNORM 0x901B - -#define GLEW_EXT_texture_snorm GLEW_GET_VAR(__GLEW_EXT_texture_snorm) - -#endif /* GL_EXT_texture_snorm */ - -/* ------------------------- GL_EXT_texture_storage ------------------------ */ - -#ifndef GL_EXT_texture_storage -#define GL_EXT_texture_storage 1 - -#define GL_ALPHA8_EXT 0x803C -#define GL_LUMINANCE8_EXT 0x8040 -#define GL_LUMINANCE8_ALPHA8_EXT 0x8045 -#define GL_RGB10_EXT 0x8052 -#define GL_RGB10_A2_EXT 0x8059 -#define GL_R8_EXT 0x8229 -#define GL_RG8_EXT 0x822B -#define GL_R16F_EXT 0x822D -#define GL_R32F_EXT 0x822E -#define GL_RG16F_EXT 0x822F -#define GL_RG32F_EXT 0x8230 -#define GL_RGBA32F_EXT 0x8814 -#define GL_RGB32F_EXT 0x8815 -#define GL_ALPHA32F_EXT 0x8816 -#define GL_LUMINANCE32F_EXT 0x8818 -#define GL_LUMINANCE_ALPHA32F_EXT 0x8819 -#define GL_RGBA16F_EXT 0x881A -#define GL_RGB16F_EXT 0x881B -#define GL_ALPHA16F_EXT 0x881C -#define GL_LUMINANCE16F_EXT 0x881E -#define GL_LUMINANCE_ALPHA16F_EXT 0x881F -#define GL_RGB_RAW_422_APPLE 0x8A51 -#define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F -#define GL_BGRA8_EXT 0x93A1 - -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); - -#define glTexStorage1DEXT GLEW_GET_FUN(__glewTexStorage1DEXT) -#define glTexStorage2DEXT GLEW_GET_FUN(__glewTexStorage2DEXT) -#define glTexStorage3DEXT GLEW_GET_FUN(__glewTexStorage3DEXT) -#define glTextureStorage1DEXT GLEW_GET_FUN(__glewTextureStorage1DEXT) -#define glTextureStorage2DEXT GLEW_GET_FUN(__glewTextureStorage2DEXT) -#define glTextureStorage3DEXT GLEW_GET_FUN(__glewTextureStorage3DEXT) - -#define GLEW_EXT_texture_storage GLEW_GET_VAR(__GLEW_EXT_texture_storage) - -#endif /* GL_EXT_texture_storage */ - -/* ------------------------- GL_EXT_texture_swizzle ------------------------ */ - -#ifndef GL_EXT_texture_swizzle -#define GL_EXT_texture_swizzle 1 - -#define GL_TEXTURE_SWIZZLE_R_EXT 0x8E42 -#define GL_TEXTURE_SWIZZLE_G_EXT 0x8E43 -#define GL_TEXTURE_SWIZZLE_B_EXT 0x8E44 -#define GL_TEXTURE_SWIZZLE_A_EXT 0x8E45 -#define GL_TEXTURE_SWIZZLE_RGBA_EXT 0x8E46 - -#define GLEW_EXT_texture_swizzle GLEW_GET_VAR(__GLEW_EXT_texture_swizzle) - -#endif /* GL_EXT_texture_swizzle */ - -/* ------------------- GL_EXT_texture_type_2_10_10_10_REV ------------------ */ - -#ifndef GL_EXT_texture_type_2_10_10_10_REV -#define GL_EXT_texture_type_2_10_10_10_REV 1 - -#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368 - -#define GLEW_EXT_texture_type_2_10_10_10_REV GLEW_GET_VAR(__GLEW_EXT_texture_type_2_10_10_10_REV) - -#endif /* GL_EXT_texture_type_2_10_10_10_REV */ - -/* -------------------------- GL_EXT_texture_view -------------------------- */ - -#ifndef GL_EXT_texture_view -#define GL_EXT_texture_view 1 - -#define GL_TEXTURE_VIEW_MIN_LEVEL_EXT 0x82DB -#define GL_TEXTURE_VIEW_NUM_LEVELS_EXT 0x82DC -#define GL_TEXTURE_VIEW_MIN_LAYER_EXT 0x82DD -#define GL_TEXTURE_VIEW_NUM_LAYERS_EXT 0x82DE -#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF - -typedef void (GLAPIENTRY * PFNGLTEXTUREVIEWEXTPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers); - -#define glTextureViewEXT GLEW_GET_FUN(__glewTextureViewEXT) - -#define GLEW_EXT_texture_view GLEW_GET_VAR(__GLEW_EXT_texture_view) - -#endif /* GL_EXT_texture_view */ - -/* --------------------------- GL_EXT_timer_query -------------------------- */ - -#ifndef GL_EXT_timer_query -#define GL_EXT_timer_query 1 - -#define GL_TIME_ELAPSED_EXT 0x88BF - -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64EXT *params); -typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VEXTPROC) (GLuint id, GLenum pname, GLuint64EXT *params); - -#define glGetQueryObjecti64vEXT GLEW_GET_FUN(__glewGetQueryObjecti64vEXT) -#define glGetQueryObjectui64vEXT GLEW_GET_FUN(__glewGetQueryObjectui64vEXT) - -#define GLEW_EXT_timer_query GLEW_GET_VAR(__GLEW_EXT_timer_query) - -#endif /* GL_EXT_timer_query */ - -/* ----------------------- GL_EXT_transform_feedback ----------------------- */ - -#ifndef GL_EXT_transform_feedback -#define GL_EXT_transform_feedback 1 - -#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT 0x8C76 -#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT 0x8C7F -#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT 0x8C80 -#define GL_TRANSFORM_FEEDBACK_VARYINGS_EXT 0x8C83 -#define GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT 0x8C84 -#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT 0x8C85 -#define GL_PRIMITIVES_GENERATED_EXT 0x8C87 -#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT 0x8C88 -#define GL_RASTERIZER_DISCARD_EXT 0x8C89 -#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT 0x8C8A -#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT 0x8C8B -#define GL_INTERLEAVED_ATTRIBS_EXT 0x8C8C -#define GL_SEPARATE_ATTRIBS_EXT 0x8C8D -#define GL_TRANSFORM_FEEDBACK_BUFFER_EXT 0x8C8E -#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT 0x8C8F - -typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKEXTPROC) (GLenum primitiveMode); -typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASEEXTPROC) (GLenum target, GLuint index, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSETEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGEEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); -typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKEXTPROC) (void); -typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei *size, GLenum *type, GLchar *name); -typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC) (GLuint program, GLsizei count, const GLchar * const* varyings, GLenum bufferMode); - -#define glBeginTransformFeedbackEXT GLEW_GET_FUN(__glewBeginTransformFeedbackEXT) -#define glBindBufferBaseEXT GLEW_GET_FUN(__glewBindBufferBaseEXT) -#define glBindBufferOffsetEXT GLEW_GET_FUN(__glewBindBufferOffsetEXT) -#define glBindBufferRangeEXT GLEW_GET_FUN(__glewBindBufferRangeEXT) -#define glEndTransformFeedbackEXT GLEW_GET_FUN(__glewEndTransformFeedbackEXT) -#define glGetTransformFeedbackVaryingEXT GLEW_GET_FUN(__glewGetTransformFeedbackVaryingEXT) -#define glTransformFeedbackVaryingsEXT GLEW_GET_FUN(__glewTransformFeedbackVaryingsEXT) - -#define GLEW_EXT_transform_feedback GLEW_GET_VAR(__GLEW_EXT_transform_feedback) - -#endif /* GL_EXT_transform_feedback */ - -/* ------------------------- GL_EXT_unpack_subimage ------------------------ */ - -#ifndef GL_EXT_unpack_subimage -#define GL_EXT_unpack_subimage 1 - -#define GL_UNPACK_ROW_LENGTH_EXT 0x0CF2 -#define GL_UNPACK_SKIP_ROWS_EXT 0x0CF3 -#define GL_UNPACK_SKIP_PIXELS_EXT 0x0CF4 - -#define GLEW_EXT_unpack_subimage GLEW_GET_VAR(__GLEW_EXT_unpack_subimage) - -#endif /* GL_EXT_unpack_subimage */ - -/* -------------------------- GL_EXT_vertex_array -------------------------- */ - -#ifndef GL_EXT_vertex_array -#define GL_EXT_vertex_array 1 - -#define GL_DOUBLE_EXT 0x140A -#define GL_VERTEX_ARRAY_EXT 0x8074 -#define GL_NORMAL_ARRAY_EXT 0x8075 -#define GL_COLOR_ARRAY_EXT 0x8076 -#define GL_INDEX_ARRAY_EXT 0x8077 -#define GL_TEXTURE_COORD_ARRAY_EXT 0x8078 -#define GL_EDGE_FLAG_ARRAY_EXT 0x8079 -#define GL_VERTEX_ARRAY_SIZE_EXT 0x807A -#define GL_VERTEX_ARRAY_TYPE_EXT 0x807B -#define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C -#define GL_VERTEX_ARRAY_COUNT_EXT 0x807D -#define GL_NORMAL_ARRAY_TYPE_EXT 0x807E -#define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F -#define GL_NORMAL_ARRAY_COUNT_EXT 0x8080 -#define GL_COLOR_ARRAY_SIZE_EXT 0x8081 -#define GL_COLOR_ARRAY_TYPE_EXT 0x8082 -#define GL_COLOR_ARRAY_STRIDE_EXT 0x8083 -#define GL_COLOR_ARRAY_COUNT_EXT 0x8084 -#define GL_INDEX_ARRAY_TYPE_EXT 0x8085 -#define GL_INDEX_ARRAY_STRIDE_EXT 0x8086 -#define GL_INDEX_ARRAY_COUNT_EXT 0x8087 -#define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088 -#define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089 -#define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A -#define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B -#define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C -#define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D -#define GL_VERTEX_ARRAY_POINTER_EXT 0x808E -#define GL_NORMAL_ARRAY_POINTER_EXT 0x808F -#define GL_COLOR_ARRAY_POINTER_EXT 0x8090 -#define GL_INDEX_ARRAY_POINTER_EXT 0x8091 -#define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092 -#define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093 - -typedef void (GLAPIENTRY * PFNGLARRAYELEMENTEXTPROC) (GLint i); -typedef void (GLAPIENTRY * PFNGLCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer); -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSEXTPROC) (GLenum mode, GLint first, GLsizei count); -typedef void (GLAPIENTRY * PFNGLEDGEFLAGPOINTEREXTPROC) (GLsizei stride, GLsizei count, const GLboolean* pointer); -typedef void (GLAPIENTRY * PFNGLINDEXPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const void *pointer); -typedef void (GLAPIENTRY * PFNGLNORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const void *pointer); -typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer); -typedef void (GLAPIENTRY * PFNGLVERTEXPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void *pointer); - -#define glArrayElementEXT GLEW_GET_FUN(__glewArrayElementEXT) -#define glColorPointerEXT GLEW_GET_FUN(__glewColorPointerEXT) -#define glDrawArraysEXT GLEW_GET_FUN(__glewDrawArraysEXT) -#define glEdgeFlagPointerEXT GLEW_GET_FUN(__glewEdgeFlagPointerEXT) -#define glIndexPointerEXT GLEW_GET_FUN(__glewIndexPointerEXT) -#define glNormalPointerEXT GLEW_GET_FUN(__glewNormalPointerEXT) -#define glTexCoordPointerEXT GLEW_GET_FUN(__glewTexCoordPointerEXT) -#define glVertexPointerEXT GLEW_GET_FUN(__glewVertexPointerEXT) - -#define GLEW_EXT_vertex_array GLEW_GET_VAR(__GLEW_EXT_vertex_array) - -#endif /* GL_EXT_vertex_array */ - -/* ------------------------ GL_EXT_vertex_array_bgra ----------------------- */ - -#ifndef GL_EXT_vertex_array_bgra -#define GL_EXT_vertex_array_bgra 1 - -#define GL_BGRA 0x80E1 - -#define GLEW_EXT_vertex_array_bgra GLEW_GET_VAR(__GLEW_EXT_vertex_array_bgra) - -#endif /* GL_EXT_vertex_array_bgra */ - -/* ----------------------- GL_EXT_vertex_array_setXXX ---------------------- */ - -#ifndef GL_EXT_vertex_array_setXXX -#define GL_EXT_vertex_array_setXXX 1 - -typedef void (GLAPIENTRY * PFNGLBINDARRAYSETEXTPROC) (const void *arrayset); -typedef const void * (GLAPIENTRY * PFNGLCREATEARRAYSETEXTPROC) (void); -typedef void (GLAPIENTRY * PFNGLDELETEARRAYSETSEXTPROC) (GLsizei n, const void *arrayset[]); - -#define glBindArraySetEXT GLEW_GET_FUN(__glewBindArraySetEXT) -#define glCreateArraySetExt GLEW_GET_FUN(__glewCreateArraySetExt) -#define glDeleteArraySetsEXT GLEW_GET_FUN(__glewDeleteArraySetsEXT) - -#define GLEW_EXT_vertex_array_setXXX GLEW_GET_VAR(__GLEW_EXT_vertex_array_setXXX) - -#endif /* GL_EXT_vertex_array_setXXX */ - -/* ----------------------- GL_EXT_vertex_attrib_64bit ---------------------- */ - -#ifndef GL_EXT_vertex_attrib_64bit -#define GL_EXT_vertex_attrib_64bit 1 - -#define GL_DOUBLE_MAT2_EXT 0x8F46 -#define GL_DOUBLE_MAT3_EXT 0x8F47 -#define GL_DOUBLE_MAT4_EXT 0x8F48 -#define GL_DOUBLE_MAT2x3_EXT 0x8F49 -#define GL_DOUBLE_MAT2x4_EXT 0x8F4A -#define GL_DOUBLE_MAT3x2_EXT 0x8F4B -#define GL_DOUBLE_MAT3x4_EXT 0x8F4C -#define GL_DOUBLE_MAT4x2_EXT 0x8F4D -#define GL_DOUBLE_MAT4x3_EXT 0x8F4E -#define GL_DOUBLE_VEC2_EXT 0x8FFC -#define GL_DOUBLE_VEC3_EXT 0x8FFD -#define GL_DOUBLE_VEC4_EXT 0x8FFE - -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLDVEXTPROC) (GLuint index, GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DEXTPROC) (GLuint index, GLdouble x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DVEXTPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DEXTPROC) (GLuint index, GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DVEXTPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DVEXTPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DVEXTPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer); - -#define glGetVertexAttribLdvEXT GLEW_GET_FUN(__glewGetVertexAttribLdvEXT) -#define glVertexArrayVertexAttribLOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribLOffsetEXT) -#define glVertexAttribL1dEXT GLEW_GET_FUN(__glewVertexAttribL1dEXT) -#define glVertexAttribL1dvEXT GLEW_GET_FUN(__glewVertexAttribL1dvEXT) -#define glVertexAttribL2dEXT GLEW_GET_FUN(__glewVertexAttribL2dEXT) -#define glVertexAttribL2dvEXT GLEW_GET_FUN(__glewVertexAttribL2dvEXT) -#define glVertexAttribL3dEXT GLEW_GET_FUN(__glewVertexAttribL3dEXT) -#define glVertexAttribL3dvEXT GLEW_GET_FUN(__glewVertexAttribL3dvEXT) -#define glVertexAttribL4dEXT GLEW_GET_FUN(__glewVertexAttribL4dEXT) -#define glVertexAttribL4dvEXT GLEW_GET_FUN(__glewVertexAttribL4dvEXT) -#define glVertexAttribLPointerEXT GLEW_GET_FUN(__glewVertexAttribLPointerEXT) - -#define GLEW_EXT_vertex_attrib_64bit GLEW_GET_VAR(__GLEW_EXT_vertex_attrib_64bit) - -#endif /* GL_EXT_vertex_attrib_64bit */ - -/* -------------------------- GL_EXT_vertex_shader ------------------------- */ - -#ifndef GL_EXT_vertex_shader -#define GL_EXT_vertex_shader 1 - -#define GL_VERTEX_SHADER_EXT 0x8780 -#define GL_VERTEX_SHADER_BINDING_EXT 0x8781 -#define GL_OP_INDEX_EXT 0x8782 -#define GL_OP_NEGATE_EXT 0x8783 -#define GL_OP_DOT3_EXT 0x8784 -#define GL_OP_DOT4_EXT 0x8785 -#define GL_OP_MUL_EXT 0x8786 -#define GL_OP_ADD_EXT 0x8787 -#define GL_OP_MADD_EXT 0x8788 -#define GL_OP_FRAC_EXT 0x8789 -#define GL_OP_MAX_EXT 0x878A -#define GL_OP_MIN_EXT 0x878B -#define GL_OP_SET_GE_EXT 0x878C -#define GL_OP_SET_LT_EXT 0x878D -#define GL_OP_CLAMP_EXT 0x878E -#define GL_OP_FLOOR_EXT 0x878F -#define GL_OP_ROUND_EXT 0x8790 -#define GL_OP_EXP_BASE_2_EXT 0x8791 -#define GL_OP_LOG_BASE_2_EXT 0x8792 -#define GL_OP_POWER_EXT 0x8793 -#define GL_OP_RECIP_EXT 0x8794 -#define GL_OP_RECIP_SQRT_EXT 0x8795 -#define GL_OP_SUB_EXT 0x8796 -#define GL_OP_CROSS_PRODUCT_EXT 0x8797 -#define GL_OP_MULTIPLY_MATRIX_EXT 0x8798 -#define GL_OP_MOV_EXT 0x8799 -#define GL_OUTPUT_VERTEX_EXT 0x879A -#define GL_OUTPUT_COLOR0_EXT 0x879B -#define GL_OUTPUT_COLOR1_EXT 0x879C -#define GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D -#define GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E -#define GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F -#define GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0 -#define GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1 -#define GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2 -#define GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3 -#define GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4 -#define GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5 -#define GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6 -#define GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7 -#define GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8 -#define GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9 -#define GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA -#define GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB -#define GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC -#define GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD -#define GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE -#define GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF -#define GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0 -#define GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1 -#define GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2 -#define GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3 -#define GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4 -#define GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5 -#define GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6 -#define GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7 -#define GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8 -#define GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9 -#define GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA -#define GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB -#define GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC -#define GL_OUTPUT_FOG_EXT 0x87BD -#define GL_SCALAR_EXT 0x87BE -#define GL_VECTOR_EXT 0x87BF -#define GL_MATRIX_EXT 0x87C0 -#define GL_VARIANT_EXT 0x87C1 -#define GL_INVARIANT_EXT 0x87C2 -#define GL_LOCAL_CONSTANT_EXT 0x87C3 -#define GL_LOCAL_EXT 0x87C4 -#define GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5 -#define GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6 -#define GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7 -#define GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8 -#define GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9 -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE -#define GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF -#define GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0 -#define GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1 -#define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2 -#define GL_VERTEX_SHADER_LOCALS_EXT 0x87D3 -#define GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4 -#define GL_X_EXT 0x87D5 -#define GL_Y_EXT 0x87D6 -#define GL_Z_EXT 0x87D7 -#define GL_W_EXT 0x87D8 -#define GL_NEGATIVE_X_EXT 0x87D9 -#define GL_NEGATIVE_Y_EXT 0x87DA -#define GL_NEGATIVE_Z_EXT 0x87DB -#define GL_NEGATIVE_W_EXT 0x87DC -#define GL_ZERO_EXT 0x87DD -#define GL_ONE_EXT 0x87DE -#define GL_NEGATIVE_ONE_EXT 0x87DF -#define GL_NORMALIZED_RANGE_EXT 0x87E0 -#define GL_FULL_RANGE_EXT 0x87E1 -#define GL_CURRENT_VERTEX_EXT 0x87E2 -#define GL_MVP_MATRIX_EXT 0x87E3 -#define GL_VARIANT_VALUE_EXT 0x87E4 -#define GL_VARIANT_DATATYPE_EXT 0x87E5 -#define GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6 -#define GL_VARIANT_ARRAY_TYPE_EXT 0x87E7 -#define GL_VARIANT_ARRAY_EXT 0x87E8 -#define GL_VARIANT_ARRAY_POINTER_EXT 0x87E9 -#define GL_INVARIANT_VALUE_EXT 0x87EA -#define GL_INVARIANT_DATATYPE_EXT 0x87EB -#define GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC -#define GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED - -typedef void (GLAPIENTRY * PFNGLBEGINVERTEXSHADEREXTPROC) (void); -typedef GLuint (GLAPIENTRY * PFNGLBINDLIGHTPARAMETEREXTPROC) (GLenum light, GLenum value); -typedef GLuint (GLAPIENTRY * PFNGLBINDMATERIALPARAMETEREXTPROC) (GLenum face, GLenum value); -typedef GLuint (GLAPIENTRY * PFNGLBINDPARAMETEREXTPROC) (GLenum value); -typedef GLuint (GLAPIENTRY * PFNGLBINDTEXGENPARAMETEREXTPROC) (GLenum unit, GLenum coord, GLenum value); -typedef GLuint (GLAPIENTRY * PFNGLBINDTEXTUREUNITPARAMETEREXTPROC) (GLenum unit, GLenum value); -typedef void (GLAPIENTRY * PFNGLBINDVERTEXSHADEREXTPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLDELETEVERTEXSHADEREXTPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLENABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLENDVERTEXSHADEREXTPROC) (void); -typedef void (GLAPIENTRY * PFNGLEXTRACTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num); -typedef GLuint (GLAPIENTRY * PFNGLGENSYMBOLSEXTPROC) (GLenum dataType, GLenum storageType, GLenum range, GLuint components); -typedef GLuint (GLAPIENTRY * PFNGLGENVERTEXSHADERSEXTPROC) (GLuint range); -typedef void (GLAPIENTRY * PFNGLGETINVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (GLAPIENTRY * PFNGLGETINVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data); -typedef void (GLAPIENTRY * PFNGLGETINVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data); -typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (GLAPIENTRY * PFNGLGETVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (GLAPIENTRY * PFNGLGETVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data); -typedef void (GLAPIENTRY * PFNGLGETVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (GLAPIENTRY * PFNGLGETVARIANTPOINTERVEXTPROC) (GLuint id, GLenum value, void **data); -typedef void (GLAPIENTRY * PFNGLINSERTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num); -typedef GLboolean (GLAPIENTRY * PFNGLISVARIANTENABLEDEXTPROC) (GLuint id, GLenum cap); -typedef void (GLAPIENTRY * PFNGLSETINVARIANTEXTPROC) (GLuint id, GLenum type, void *addr); -typedef void (GLAPIENTRY * PFNGLSETLOCALCONSTANTEXTPROC) (GLuint id, GLenum type, void *addr); -typedef void (GLAPIENTRY * PFNGLSHADEROP1EXTPROC) (GLenum op, GLuint res, GLuint arg1); -typedef void (GLAPIENTRY * PFNGLSHADEROP2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2); -typedef void (GLAPIENTRY * PFNGLSHADEROP3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3); -typedef void (GLAPIENTRY * PFNGLSWIZZLEEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); -typedef void (GLAPIENTRY * PFNGLVARIANTPOINTEREXTPROC) (GLuint id, GLenum type, GLuint stride, void *addr); -typedef void (GLAPIENTRY * PFNGLVARIANTBVEXTPROC) (GLuint id, GLbyte *addr); -typedef void (GLAPIENTRY * PFNGLVARIANTDVEXTPROC) (GLuint id, GLdouble *addr); -typedef void (GLAPIENTRY * PFNGLVARIANTFVEXTPROC) (GLuint id, GLfloat *addr); -typedef void (GLAPIENTRY * PFNGLVARIANTIVEXTPROC) (GLuint id, GLint *addr); -typedef void (GLAPIENTRY * PFNGLVARIANTSVEXTPROC) (GLuint id, GLshort *addr); -typedef void (GLAPIENTRY * PFNGLVARIANTUBVEXTPROC) (GLuint id, GLubyte *addr); -typedef void (GLAPIENTRY * PFNGLVARIANTUIVEXTPROC) (GLuint id, GLuint *addr); -typedef void (GLAPIENTRY * PFNGLVARIANTUSVEXTPROC) (GLuint id, GLushort *addr); -typedef void (GLAPIENTRY * PFNGLWRITEMASKEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); - -#define glBeginVertexShaderEXT GLEW_GET_FUN(__glewBeginVertexShaderEXT) -#define glBindLightParameterEXT GLEW_GET_FUN(__glewBindLightParameterEXT) -#define glBindMaterialParameterEXT GLEW_GET_FUN(__glewBindMaterialParameterEXT) -#define glBindParameterEXT GLEW_GET_FUN(__glewBindParameterEXT) -#define glBindTexGenParameterEXT GLEW_GET_FUN(__glewBindTexGenParameterEXT) -#define glBindTextureUnitParameterEXT GLEW_GET_FUN(__glewBindTextureUnitParameterEXT) -#define glBindVertexShaderEXT GLEW_GET_FUN(__glewBindVertexShaderEXT) -#define glDeleteVertexShaderEXT GLEW_GET_FUN(__glewDeleteVertexShaderEXT) -#define glDisableVariantClientStateEXT GLEW_GET_FUN(__glewDisableVariantClientStateEXT) -#define glEnableVariantClientStateEXT GLEW_GET_FUN(__glewEnableVariantClientStateEXT) -#define glEndVertexShaderEXT GLEW_GET_FUN(__glewEndVertexShaderEXT) -#define glExtractComponentEXT GLEW_GET_FUN(__glewExtractComponentEXT) -#define glGenSymbolsEXT GLEW_GET_FUN(__glewGenSymbolsEXT) -#define glGenVertexShadersEXT GLEW_GET_FUN(__glewGenVertexShadersEXT) -#define glGetInvariantBooleanvEXT GLEW_GET_FUN(__glewGetInvariantBooleanvEXT) -#define glGetInvariantFloatvEXT GLEW_GET_FUN(__glewGetInvariantFloatvEXT) -#define glGetInvariantIntegervEXT GLEW_GET_FUN(__glewGetInvariantIntegervEXT) -#define glGetLocalConstantBooleanvEXT GLEW_GET_FUN(__glewGetLocalConstantBooleanvEXT) -#define glGetLocalConstantFloatvEXT GLEW_GET_FUN(__glewGetLocalConstantFloatvEXT) -#define glGetLocalConstantIntegervEXT GLEW_GET_FUN(__glewGetLocalConstantIntegervEXT) -#define glGetVariantBooleanvEXT GLEW_GET_FUN(__glewGetVariantBooleanvEXT) -#define glGetVariantFloatvEXT GLEW_GET_FUN(__glewGetVariantFloatvEXT) -#define glGetVariantIntegervEXT GLEW_GET_FUN(__glewGetVariantIntegervEXT) -#define glGetVariantPointervEXT GLEW_GET_FUN(__glewGetVariantPointervEXT) -#define glInsertComponentEXT GLEW_GET_FUN(__glewInsertComponentEXT) -#define glIsVariantEnabledEXT GLEW_GET_FUN(__glewIsVariantEnabledEXT) -#define glSetInvariantEXT GLEW_GET_FUN(__glewSetInvariantEXT) -#define glSetLocalConstantEXT GLEW_GET_FUN(__glewSetLocalConstantEXT) -#define glShaderOp1EXT GLEW_GET_FUN(__glewShaderOp1EXT) -#define glShaderOp2EXT GLEW_GET_FUN(__glewShaderOp2EXT) -#define glShaderOp3EXT GLEW_GET_FUN(__glewShaderOp3EXT) -#define glSwizzleEXT GLEW_GET_FUN(__glewSwizzleEXT) -#define glVariantPointerEXT GLEW_GET_FUN(__glewVariantPointerEXT) -#define glVariantbvEXT GLEW_GET_FUN(__glewVariantbvEXT) -#define glVariantdvEXT GLEW_GET_FUN(__glewVariantdvEXT) -#define glVariantfvEXT GLEW_GET_FUN(__glewVariantfvEXT) -#define glVariantivEXT GLEW_GET_FUN(__glewVariantivEXT) -#define glVariantsvEXT GLEW_GET_FUN(__glewVariantsvEXT) -#define glVariantubvEXT GLEW_GET_FUN(__glewVariantubvEXT) -#define glVariantuivEXT GLEW_GET_FUN(__glewVariantuivEXT) -#define glVariantusvEXT GLEW_GET_FUN(__glewVariantusvEXT) -#define glWriteMaskEXT GLEW_GET_FUN(__glewWriteMaskEXT) - -#define GLEW_EXT_vertex_shader GLEW_GET_VAR(__GLEW_EXT_vertex_shader) - -#endif /* GL_EXT_vertex_shader */ - -/* ------------------------ GL_EXT_vertex_weighting ------------------------ */ - -#ifndef GL_EXT_vertex_weighting -#define GL_EXT_vertex_weighting 1 - -#define GL_MODELVIEW0_STACK_DEPTH_EXT 0x0BA3 -#define GL_MODELVIEW0_MATRIX_EXT 0x0BA6 -#define GL_MODELVIEW0_EXT 0x1700 -#define GL_MODELVIEW1_STACK_DEPTH_EXT 0x8502 -#define GL_MODELVIEW1_MATRIX_EXT 0x8506 -#define GL_VERTEX_WEIGHTING_EXT 0x8509 -#define GL_MODELVIEW1_EXT 0x850A -#define GL_CURRENT_VERTEX_WEIGHT_EXT 0x850B -#define GL_VERTEX_WEIGHT_ARRAY_EXT 0x850C -#define GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT 0x850D -#define GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT 0x850E -#define GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F -#define GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510 - -typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); -typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTFEXTPROC) (GLfloat weight); -typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTFVEXTPROC) (GLfloat* weight); - -#define glVertexWeightPointerEXT GLEW_GET_FUN(__glewVertexWeightPointerEXT) -#define glVertexWeightfEXT GLEW_GET_FUN(__glewVertexWeightfEXT) -#define glVertexWeightfvEXT GLEW_GET_FUN(__glewVertexWeightfvEXT) - -#define GLEW_EXT_vertex_weighting GLEW_GET_VAR(__GLEW_EXT_vertex_weighting) - -#endif /* GL_EXT_vertex_weighting */ - -/* ------------------------ GL_EXT_win32_keyed_mutex ----------------------- */ - -#ifndef GL_EXT_win32_keyed_mutex -#define GL_EXT_win32_keyed_mutex 1 - -typedef GLboolean (GLAPIENTRY * PFNGLACQUIREKEYEDMUTEXWIN32EXTPROC) (GLuint memory, GLuint64 key, GLuint timeout); -typedef GLboolean (GLAPIENTRY * PFNGLRELEASEKEYEDMUTEXWIN32EXTPROC) (GLuint memory, GLuint64 key); - -#define glAcquireKeyedMutexWin32EXT GLEW_GET_FUN(__glewAcquireKeyedMutexWin32EXT) -#define glReleaseKeyedMutexWin32EXT GLEW_GET_FUN(__glewReleaseKeyedMutexWin32EXT) - -#define GLEW_EXT_win32_keyed_mutex GLEW_GET_VAR(__GLEW_EXT_win32_keyed_mutex) - -#endif /* GL_EXT_win32_keyed_mutex */ - -/* ------------------------ GL_EXT_window_rectangles ----------------------- */ - -#ifndef GL_EXT_window_rectangles -#define GL_EXT_window_rectangles 1 - -#define GL_INCLUSIVE_EXT 0x8F10 -#define GL_EXCLUSIVE_EXT 0x8F11 -#define GL_WINDOW_RECTANGLE_EXT 0x8F12 -#define GL_WINDOW_RECTANGLE_MODE_EXT 0x8F13 -#define GL_MAX_WINDOW_RECTANGLES_EXT 0x8F14 -#define GL_NUM_WINDOW_RECTANGLES_EXT 0x8F15 - -typedef void (GLAPIENTRY * PFNGLWINDOWRECTANGLESEXTPROC) (GLenum mode, GLsizei count, const GLint box[]); - -#define glWindowRectanglesEXT GLEW_GET_FUN(__glewWindowRectanglesEXT) - -#define GLEW_EXT_window_rectangles GLEW_GET_VAR(__GLEW_EXT_window_rectangles) - -#endif /* GL_EXT_window_rectangles */ - -/* ------------------------- GL_EXT_x11_sync_object ------------------------ */ - -#ifndef GL_EXT_x11_sync_object -#define GL_EXT_x11_sync_object 1 - -#define GL_SYNC_X11_FENCE_EXT 0x90E1 - -typedef GLsync (GLAPIENTRY * PFNGLIMPORTSYNCEXTPROC) (GLenum external_sync_type, GLintptr external_sync, GLbitfield flags); - -#define glImportSyncEXT GLEW_GET_FUN(__glewImportSyncEXT) - -#define GLEW_EXT_x11_sync_object GLEW_GET_VAR(__GLEW_EXT_x11_sync_object) - -#endif /* GL_EXT_x11_sync_object */ - -/* ----------------------- GL_FJ_shader_binary_GCCSO ----------------------- */ - -#ifndef GL_FJ_shader_binary_GCCSO -#define GL_FJ_shader_binary_GCCSO 1 - -#define GL_GCCSO_SHADER_BINARY_FJ 0x9260 - -#define GLEW_FJ_shader_binary_GCCSO GLEW_GET_VAR(__GLEW_FJ_shader_binary_GCCSO) - -#endif /* GL_FJ_shader_binary_GCCSO */ - -/* ---------------------- GL_GREMEDY_frame_terminator ---------------------- */ - -#ifndef GL_GREMEDY_frame_terminator -#define GL_GREMEDY_frame_terminator 1 - -typedef void (GLAPIENTRY * PFNGLFRAMETERMINATORGREMEDYPROC) (void); - -#define glFrameTerminatorGREMEDY GLEW_GET_FUN(__glewFrameTerminatorGREMEDY) - -#define GLEW_GREMEDY_frame_terminator GLEW_GET_VAR(__GLEW_GREMEDY_frame_terminator) - -#endif /* GL_GREMEDY_frame_terminator */ - -/* ------------------------ GL_GREMEDY_string_marker ----------------------- */ - -#ifndef GL_GREMEDY_string_marker -#define GL_GREMEDY_string_marker 1 - -typedef void (GLAPIENTRY * PFNGLSTRINGMARKERGREMEDYPROC) (GLsizei len, const void *string); - -#define glStringMarkerGREMEDY GLEW_GET_FUN(__glewStringMarkerGREMEDY) - -#define GLEW_GREMEDY_string_marker GLEW_GET_VAR(__GLEW_GREMEDY_string_marker) - -#endif /* GL_GREMEDY_string_marker */ - -/* --------------------- GL_HP_convolution_border_modes -------------------- */ - -#ifndef GL_HP_convolution_border_modes -#define GL_HP_convolution_border_modes 1 - -#define GLEW_HP_convolution_border_modes GLEW_GET_VAR(__GLEW_HP_convolution_border_modes) - -#endif /* GL_HP_convolution_border_modes */ - -/* ------------------------- GL_HP_image_transform ------------------------- */ - -#ifndef GL_HP_image_transform -#define GL_HP_image_transform 1 - -typedef void (GLAPIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERFHPPROC) (GLenum target, GLenum pname, const GLfloat param); -typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERIHPPROC) (GLenum target, GLenum pname, const GLint param); -typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint* params); - -#define glGetImageTransformParameterfvHP GLEW_GET_FUN(__glewGetImageTransformParameterfvHP) -#define glGetImageTransformParameterivHP GLEW_GET_FUN(__glewGetImageTransformParameterivHP) -#define glImageTransformParameterfHP GLEW_GET_FUN(__glewImageTransformParameterfHP) -#define glImageTransformParameterfvHP GLEW_GET_FUN(__glewImageTransformParameterfvHP) -#define glImageTransformParameteriHP GLEW_GET_FUN(__glewImageTransformParameteriHP) -#define glImageTransformParameterivHP GLEW_GET_FUN(__glewImageTransformParameterivHP) - -#define GLEW_HP_image_transform GLEW_GET_VAR(__GLEW_HP_image_transform) - -#endif /* GL_HP_image_transform */ - -/* -------------------------- GL_HP_occlusion_test ------------------------- */ - -#ifndef GL_HP_occlusion_test -#define GL_HP_occlusion_test 1 - -#define GLEW_HP_occlusion_test GLEW_GET_VAR(__GLEW_HP_occlusion_test) - -#endif /* GL_HP_occlusion_test */ - -/* ------------------------- GL_HP_texture_lighting ------------------------ */ - -#ifndef GL_HP_texture_lighting -#define GL_HP_texture_lighting 1 - -#define GLEW_HP_texture_lighting GLEW_GET_VAR(__GLEW_HP_texture_lighting) - -#endif /* GL_HP_texture_lighting */ - -/* --------------------------- GL_IBM_cull_vertex -------------------------- */ - -#ifndef GL_IBM_cull_vertex -#define GL_IBM_cull_vertex 1 - -#define GL_CULL_VERTEX_IBM 103050 - -#define GLEW_IBM_cull_vertex GLEW_GET_VAR(__GLEW_IBM_cull_vertex) - -#endif /* GL_IBM_cull_vertex */ - -/* ---------------------- GL_IBM_multimode_draw_arrays --------------------- */ - -#ifndef GL_IBM_multimode_draw_arrays -#define GL_IBM_multimode_draw_arrays 1 - -typedef void (GLAPIENTRY * PFNGLMULTIMODEDRAWARRAYSIBMPROC) (const GLenum* mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); -typedef void (GLAPIENTRY * PFNGLMULTIMODEDRAWELEMENTSIBMPROC) (const GLenum* mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei primcount, GLint modestride); - -#define glMultiModeDrawArraysIBM GLEW_GET_FUN(__glewMultiModeDrawArraysIBM) -#define glMultiModeDrawElementsIBM GLEW_GET_FUN(__glewMultiModeDrawElementsIBM) - -#define GLEW_IBM_multimode_draw_arrays GLEW_GET_VAR(__GLEW_IBM_multimode_draw_arrays) - -#endif /* GL_IBM_multimode_draw_arrays */ - -/* ------------------------- GL_IBM_rasterpos_clip ------------------------- */ - -#ifndef GL_IBM_rasterpos_clip -#define GL_IBM_rasterpos_clip 1 - -#define GL_RASTER_POSITION_UNCLIPPED_IBM 103010 - -#define GLEW_IBM_rasterpos_clip GLEW_GET_VAR(__GLEW_IBM_rasterpos_clip) - -#endif /* GL_IBM_rasterpos_clip */ - -/* --------------------------- GL_IBM_static_data -------------------------- */ - -#ifndef GL_IBM_static_data -#define GL_IBM_static_data 1 - -#define GL_ALL_STATIC_DATA_IBM 103060 -#define GL_STATIC_VERTEX_ARRAY_IBM 103061 - -#define GLEW_IBM_static_data GLEW_GET_VAR(__GLEW_IBM_static_data) - -#endif /* GL_IBM_static_data */ - -/* --------------------- GL_IBM_texture_mirrored_repeat -------------------- */ - -#ifndef GL_IBM_texture_mirrored_repeat -#define GL_IBM_texture_mirrored_repeat 1 - -#define GL_MIRRORED_REPEAT_IBM 0x8370 - -#define GLEW_IBM_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_IBM_texture_mirrored_repeat) - -#endif /* GL_IBM_texture_mirrored_repeat */ - -/* ----------------------- GL_IBM_vertex_array_lists ----------------------- */ - -#ifndef GL_IBM_vertex_array_lists -#define GL_IBM_vertex_array_lists 1 - -#define GL_VERTEX_ARRAY_LIST_IBM 103070 -#define GL_NORMAL_ARRAY_LIST_IBM 103071 -#define GL_COLOR_ARRAY_LIST_IBM 103072 -#define GL_INDEX_ARRAY_LIST_IBM 103073 -#define GL_TEXTURE_COORD_ARRAY_LIST_IBM 103074 -#define GL_EDGE_FLAG_ARRAY_LIST_IBM 103075 -#define GL_FOG_COORDINATE_ARRAY_LIST_IBM 103076 -#define GL_SECONDARY_COLOR_ARRAY_LIST_IBM 103077 -#define GL_VERTEX_ARRAY_LIST_STRIDE_IBM 103080 -#define GL_NORMAL_ARRAY_LIST_STRIDE_IBM 103081 -#define GL_COLOR_ARRAY_LIST_STRIDE_IBM 103082 -#define GL_INDEX_ARRAY_LIST_STRIDE_IBM 103083 -#define GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM 103084 -#define GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM 103085 -#define GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM 103086 -#define GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM 103087 - -typedef void (GLAPIENTRY * PFNGLCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void** pointer, GLint ptrstride); -typedef void (GLAPIENTRY * PFNGLEDGEFLAGPOINTERLISTIBMPROC) (GLint stride, const GLboolean ** pointer, GLint ptrstride); -typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void** pointer, GLint ptrstride); -typedef void (GLAPIENTRY * PFNGLINDEXPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void** pointer, GLint ptrstride); -typedef void (GLAPIENTRY * PFNGLNORMALPOINTERLISTIBMPROC) (GLenum type, GLint stride, const void** pointer, GLint ptrstride); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void** pointer, GLint ptrstride); -typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void** pointer, GLint ptrstride); -typedef void (GLAPIENTRY * PFNGLVERTEXPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const void** pointer, GLint ptrstride); - -#define glColorPointerListIBM GLEW_GET_FUN(__glewColorPointerListIBM) -#define glEdgeFlagPointerListIBM GLEW_GET_FUN(__glewEdgeFlagPointerListIBM) -#define glFogCoordPointerListIBM GLEW_GET_FUN(__glewFogCoordPointerListIBM) -#define glIndexPointerListIBM GLEW_GET_FUN(__glewIndexPointerListIBM) -#define glNormalPointerListIBM GLEW_GET_FUN(__glewNormalPointerListIBM) -#define glSecondaryColorPointerListIBM GLEW_GET_FUN(__glewSecondaryColorPointerListIBM) -#define glTexCoordPointerListIBM GLEW_GET_FUN(__glewTexCoordPointerListIBM) -#define glVertexPointerListIBM GLEW_GET_FUN(__glewVertexPointerListIBM) - -#define GLEW_IBM_vertex_array_lists GLEW_GET_VAR(__GLEW_IBM_vertex_array_lists) - -#endif /* GL_IBM_vertex_array_lists */ - -/* ------------------------ GL_IMG_bindless_texture ------------------------ */ - -#ifndef GL_IMG_bindless_texture -#define GL_IMG_bindless_texture 1 - -typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTUREHANDLEIMGPROC) (GLuint texture); -typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTURESAMPLERHANDLEIMGPROC) (GLuint texture, GLuint sampler); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64IMGPROC) (GLuint program, GLint location, GLuint64 value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64VIMGPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* values); -typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64IMGPROC) (GLint location, GLuint64 value); -typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64VIMGPROC) (GLint location, GLsizei count, const GLuint64* value); - -#define glGetTextureHandleIMG GLEW_GET_FUN(__glewGetTextureHandleIMG) -#define glGetTextureSamplerHandleIMG GLEW_GET_FUN(__glewGetTextureSamplerHandleIMG) -#define glProgramUniformHandleui64IMG GLEW_GET_FUN(__glewProgramUniformHandleui64IMG) -#define glProgramUniformHandleui64vIMG GLEW_GET_FUN(__glewProgramUniformHandleui64vIMG) -#define glUniformHandleui64IMG GLEW_GET_FUN(__glewUniformHandleui64IMG) -#define glUniformHandleui64vIMG GLEW_GET_FUN(__glewUniformHandleui64vIMG) - -#define GLEW_IMG_bindless_texture GLEW_GET_VAR(__GLEW_IMG_bindless_texture) - -#endif /* GL_IMG_bindless_texture */ - -/* --------------------- GL_IMG_framebuffer_downsample --------------------- */ - -#ifndef GL_IMG_framebuffer_downsample -#define GL_IMG_framebuffer_downsample 1 - -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_AND_DOWNSAMPLE_IMG 0x913C -#define GL_NUM_DOWNSAMPLE_SCALES_IMG 0x913D -#define GL_DOWNSAMPLE_SCALES_IMG 0x913E -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SCALE_IMG 0x913F - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DDOWNSAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint xscale, GLint yscale); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERDOWNSAMPLEIMGPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer, GLint xscale, GLint yscale); - -#define glFramebufferTexture2DDownsampleIMG GLEW_GET_FUN(__glewFramebufferTexture2DDownsampleIMG) -#define glFramebufferTextureLayerDownsampleIMG GLEW_GET_FUN(__glewFramebufferTextureLayerDownsampleIMG) - -#define GLEW_IMG_framebuffer_downsample GLEW_GET_VAR(__GLEW_IMG_framebuffer_downsample) - -#endif /* GL_IMG_framebuffer_downsample */ - -/* ----------------- GL_IMG_multisampled_render_to_texture ----------------- */ - -#ifndef GL_IMG_multisampled_render_to_texture -#define GL_IMG_multisampled_render_to_texture 1 - -#define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 -#define GL_MAX_SAMPLES_IMG 0x9135 -#define GL_TEXTURE_SAMPLES_IMG 0x9136 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); - -#define glFramebufferTexture2DMultisampleIMG GLEW_GET_FUN(__glewFramebufferTexture2DMultisampleIMG) -#define glRenderbufferStorageMultisampleIMG GLEW_GET_FUN(__glewRenderbufferStorageMultisampleIMG) - -#define GLEW_IMG_multisampled_render_to_texture GLEW_GET_VAR(__GLEW_IMG_multisampled_render_to_texture) - -#endif /* GL_IMG_multisampled_render_to_texture */ - -/* ------------------------- GL_IMG_program_binary ------------------------- */ - -#ifndef GL_IMG_program_binary -#define GL_IMG_program_binary 1 - -#define GL_SGX_PROGRAM_BINARY_IMG 0x9130 - -#define GLEW_IMG_program_binary GLEW_GET_VAR(__GLEW_IMG_program_binary) - -#endif /* GL_IMG_program_binary */ - -/* --------------------------- GL_IMG_read_format -------------------------- */ - -#ifndef GL_IMG_read_format -#define GL_IMG_read_format 1 - -#define GL_BGRA_IMG 0x80E1 -#define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 - -#define GLEW_IMG_read_format GLEW_GET_VAR(__GLEW_IMG_read_format) - -#endif /* GL_IMG_read_format */ - -/* -------------------------- GL_IMG_shader_binary ------------------------- */ - -#ifndef GL_IMG_shader_binary -#define GL_IMG_shader_binary 1 - -#define GL_SGX_BINARY_IMG 0x8C0A - -#define GLEW_IMG_shader_binary GLEW_GET_VAR(__GLEW_IMG_shader_binary) - -#endif /* GL_IMG_shader_binary */ - -/* -------------------- GL_IMG_texture_compression_pvrtc ------------------- */ - -#ifndef GL_IMG_texture_compression_pvrtc -#define GL_IMG_texture_compression_pvrtc 1 - -#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 -#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 -#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 -#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 - -#define GLEW_IMG_texture_compression_pvrtc GLEW_GET_VAR(__GLEW_IMG_texture_compression_pvrtc) - -#endif /* GL_IMG_texture_compression_pvrtc */ - -/* ------------------- GL_IMG_texture_compression_pvrtc2 ------------------- */ - -#ifndef GL_IMG_texture_compression_pvrtc2 -#define GL_IMG_texture_compression_pvrtc2 1 - -#define GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG 0x9137 -#define GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG 0x9138 - -#define GLEW_IMG_texture_compression_pvrtc2 GLEW_GET_VAR(__GLEW_IMG_texture_compression_pvrtc2) - -#endif /* GL_IMG_texture_compression_pvrtc2 */ - -/* --------------- GL_IMG_texture_env_enhanced_fixed_function -------------- */ - -#ifndef GL_IMG_texture_env_enhanced_fixed_function -#define GL_IMG_texture_env_enhanced_fixed_function 1 - -#define GL_DOT3_RGBA_IMG 0x86AF -#define GL_MODULATE_COLOR_IMG 0x8C04 -#define GL_RECIP_ADD_SIGNED_ALPHA_IMG 0x8C05 -#define GL_TEXTURE_ALPHA_MODULATE_IMG 0x8C06 -#define GL_FACTOR_ALPHA_MODULATE_IMG 0x8C07 -#define GL_FRAGMENT_ALPHA_MODULATE_IMG 0x8C08 -#define GL_ADD_BLEND_IMG 0x8C09 - -#define GLEW_IMG_texture_env_enhanced_fixed_function GLEW_GET_VAR(__GLEW_IMG_texture_env_enhanced_fixed_function) - -#endif /* GL_IMG_texture_env_enhanced_fixed_function */ - -/* ---------------------- GL_IMG_texture_filter_cubic ---------------------- */ - -#ifndef GL_IMG_texture_filter_cubic -#define GL_IMG_texture_filter_cubic 1 - -#define GL_CUBIC_IMG 0x9139 -#define GL_CUBIC_MIPMAP_NEAREST_IMG 0x913A -#define GL_CUBIC_MIPMAP_LINEAR_IMG 0x913B - -#define GLEW_IMG_texture_filter_cubic GLEW_GET_VAR(__GLEW_IMG_texture_filter_cubic) - -#endif /* GL_IMG_texture_filter_cubic */ - -/* -------------------------- GL_INGR_color_clamp -------------------------- */ - -#ifndef GL_INGR_color_clamp -#define GL_INGR_color_clamp 1 - -#define GL_RED_MIN_CLAMP_INGR 0x8560 -#define GL_GREEN_MIN_CLAMP_INGR 0x8561 -#define GL_BLUE_MIN_CLAMP_INGR 0x8562 -#define GL_ALPHA_MIN_CLAMP_INGR 0x8563 -#define GL_RED_MAX_CLAMP_INGR 0x8564 -#define GL_GREEN_MAX_CLAMP_INGR 0x8565 -#define GL_BLUE_MAX_CLAMP_INGR 0x8566 -#define GL_ALPHA_MAX_CLAMP_INGR 0x8567 - -#define GLEW_INGR_color_clamp GLEW_GET_VAR(__GLEW_INGR_color_clamp) - -#endif /* GL_INGR_color_clamp */ - -/* ------------------------- GL_INGR_interlace_read ------------------------ */ - -#ifndef GL_INGR_interlace_read -#define GL_INGR_interlace_read 1 - -#define GL_INTERLACE_READ_INGR 0x8568 - -#define GLEW_INGR_interlace_read GLEW_GET_VAR(__GLEW_INGR_interlace_read) - -#endif /* GL_INGR_interlace_read */ - -/* ----------------------- GL_INTEL_blackhole_render ----------------------- */ - -#ifndef GL_INTEL_blackhole_render -#define GL_INTEL_blackhole_render 1 - -#define GL_BLACKHOLE_RENDER_INTEL 0x83FC - -#define GLEW_INTEL_blackhole_render GLEW_GET_VAR(__GLEW_INTEL_blackhole_render) - -#endif /* GL_INTEL_blackhole_render */ - -/* ------------------ GL_INTEL_conservative_rasterization ------------------ */ - -#ifndef GL_INTEL_conservative_rasterization -#define GL_INTEL_conservative_rasterization 1 - -#define GL_CONSERVATIVE_RASTERIZATION_INTEL 0x83FE - -#define GLEW_INTEL_conservative_rasterization GLEW_GET_VAR(__GLEW_INTEL_conservative_rasterization) - -#endif /* GL_INTEL_conservative_rasterization */ - -/* ------------------- GL_INTEL_fragment_shader_ordering ------------------- */ - -#ifndef GL_INTEL_fragment_shader_ordering -#define GL_INTEL_fragment_shader_ordering 1 - -#define GLEW_INTEL_fragment_shader_ordering GLEW_GET_VAR(__GLEW_INTEL_fragment_shader_ordering) - -#endif /* GL_INTEL_fragment_shader_ordering */ - -/* ----------------------- GL_INTEL_framebuffer_CMAA ----------------------- */ - -#ifndef GL_INTEL_framebuffer_CMAA -#define GL_INTEL_framebuffer_CMAA 1 - -#define GLEW_INTEL_framebuffer_CMAA GLEW_GET_VAR(__GLEW_INTEL_framebuffer_CMAA) - -#endif /* GL_INTEL_framebuffer_CMAA */ - -/* -------------------------- GL_INTEL_map_texture ------------------------- */ - -#ifndef GL_INTEL_map_texture -#define GL_INTEL_map_texture 1 - -#define GL_LAYOUT_DEFAULT_INTEL 0 -#define GL_LAYOUT_LINEAR_INTEL 1 -#define GL_LAYOUT_LINEAR_CPU_CACHED_INTEL 2 -#define GL_TEXTURE_MEMORY_LAYOUT_INTEL 0x83FF - -typedef void * (GLAPIENTRY * PFNGLMAPTEXTURE2DINTELPROC) (GLuint texture, GLint level, GLbitfield access, GLint* stride, GLenum *layout); -typedef void (GLAPIENTRY * PFNGLSYNCTEXTUREINTELPROC) (GLuint texture); -typedef void (GLAPIENTRY * PFNGLUNMAPTEXTURE2DINTELPROC) (GLuint texture, GLint level); - -#define glMapTexture2DINTEL GLEW_GET_FUN(__glewMapTexture2DINTEL) -#define glSyncTextureINTEL GLEW_GET_FUN(__glewSyncTextureINTEL) -#define glUnmapTexture2DINTEL GLEW_GET_FUN(__glewUnmapTexture2DINTEL) - -#define GLEW_INTEL_map_texture GLEW_GET_VAR(__GLEW_INTEL_map_texture) - -#endif /* GL_INTEL_map_texture */ - -/* ------------------------ GL_INTEL_parallel_arrays ----------------------- */ - -#ifndef GL_INTEL_parallel_arrays -#define GL_INTEL_parallel_arrays 1 - -#define GL_PARALLEL_ARRAYS_INTEL 0x83F4 -#define GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL 0x83F5 -#define GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL 0x83F6 -#define GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL 0x83F7 -#define GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL 0x83F8 - -typedef void (GLAPIENTRY * PFNGLCOLORPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer); -typedef void (GLAPIENTRY * PFNGLNORMALPOINTERVINTELPROC) (GLenum type, const void** pointer); -typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer); -typedef void (GLAPIENTRY * PFNGLVERTEXPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer); - -#define glColorPointervINTEL GLEW_GET_FUN(__glewColorPointervINTEL) -#define glNormalPointervINTEL GLEW_GET_FUN(__glewNormalPointervINTEL) -#define glTexCoordPointervINTEL GLEW_GET_FUN(__glewTexCoordPointervINTEL) -#define glVertexPointervINTEL GLEW_GET_FUN(__glewVertexPointervINTEL) - -#define GLEW_INTEL_parallel_arrays GLEW_GET_VAR(__GLEW_INTEL_parallel_arrays) - -#endif /* GL_INTEL_parallel_arrays */ - -/* ----------------------- GL_INTEL_performance_query ---------------------- */ - -#ifndef GL_INTEL_performance_query -#define GL_INTEL_performance_query 1 - -#define GL_PERFQUERY_SINGLE_CONTEXT_INTEL 0x0000 -#define GL_PERFQUERY_GLOBAL_CONTEXT_INTEL 0x0001 -#define GL_PERFQUERY_DONOT_FLUSH_INTEL 0x83F9 -#define GL_PERFQUERY_FLUSH_INTEL 0x83FA -#define GL_PERFQUERY_WAIT_INTEL 0x83FB -#define GL_PERFQUERY_COUNTER_EVENT_INTEL 0x94F0 -#define GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL 0x94F1 -#define GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL 0x94F2 -#define GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL 0x94F3 -#define GL_PERFQUERY_COUNTER_RAW_INTEL 0x94F4 -#define GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL 0x94F5 -#define GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL 0x94F8 -#define GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL 0x94F9 -#define GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL 0x94FA -#define GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL 0x94FB -#define GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL 0x94FC -#define GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL 0x94FD -#define GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL 0x94FE -#define GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL 0x94FF -#define GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL 0x9500 - -typedef void (GLAPIENTRY * PFNGLBEGINPERFQUERYINTELPROC) (GLuint queryHandle); -typedef void (GLAPIENTRY * PFNGLCREATEPERFQUERYINTELPROC) (GLuint queryId, GLuint* queryHandle); -typedef void (GLAPIENTRY * PFNGLDELETEPERFQUERYINTELPROC) (GLuint queryHandle); -typedef void (GLAPIENTRY * PFNGLENDPERFQUERYINTELPROC) (GLuint queryHandle); -typedef void (GLAPIENTRY * PFNGLGETFIRSTPERFQUERYIDINTELPROC) (GLuint* queryId); -typedef void (GLAPIENTRY * PFNGLGETNEXTPERFQUERYIDINTELPROC) (GLuint queryId, GLuint* nextQueryId); -typedef void (GLAPIENTRY * PFNGLGETPERFCOUNTERINFOINTELPROC) (GLuint queryId, GLuint counterId, GLuint counterNameLength, GLchar* counterName, GLuint counterDescLength, GLchar *counterDesc, GLuint *counterOffset, GLuint *counterDataSize, GLuint *counterTypeEnum, GLuint *counterDataTypeEnum, GLuint64 *rawCounterMaxValue); -typedef void (GLAPIENTRY * PFNGLGETPERFQUERYDATAINTELPROC) (GLuint queryHandle, GLuint flags, GLsizei dataSize, void *data, GLuint *bytesWritten); -typedef void (GLAPIENTRY * PFNGLGETPERFQUERYIDBYNAMEINTELPROC) (GLchar* queryName, GLuint *queryId); -typedef void (GLAPIENTRY * PFNGLGETPERFQUERYINFOINTELPROC) (GLuint queryId, GLuint queryNameLength, GLchar* queryName, GLuint *dataSize, GLuint *noCounters, GLuint *noInstances, GLuint *capsMask); - -#define glBeginPerfQueryINTEL GLEW_GET_FUN(__glewBeginPerfQueryINTEL) -#define glCreatePerfQueryINTEL GLEW_GET_FUN(__glewCreatePerfQueryINTEL) -#define glDeletePerfQueryINTEL GLEW_GET_FUN(__glewDeletePerfQueryINTEL) -#define glEndPerfQueryINTEL GLEW_GET_FUN(__glewEndPerfQueryINTEL) -#define glGetFirstPerfQueryIdINTEL GLEW_GET_FUN(__glewGetFirstPerfQueryIdINTEL) -#define glGetNextPerfQueryIdINTEL GLEW_GET_FUN(__glewGetNextPerfQueryIdINTEL) -#define glGetPerfCounterInfoINTEL GLEW_GET_FUN(__glewGetPerfCounterInfoINTEL) -#define glGetPerfQueryDataINTEL GLEW_GET_FUN(__glewGetPerfQueryDataINTEL) -#define glGetPerfQueryIdByNameINTEL GLEW_GET_FUN(__glewGetPerfQueryIdByNameINTEL) -#define glGetPerfQueryInfoINTEL GLEW_GET_FUN(__glewGetPerfQueryInfoINTEL) - -#define GLEW_INTEL_performance_query GLEW_GET_VAR(__GLEW_INTEL_performance_query) - -#endif /* GL_INTEL_performance_query */ - -/* ------------------- GL_INTEL_shader_integer_functions2 ------------------ */ - -#ifndef GL_INTEL_shader_integer_functions2 -#define GL_INTEL_shader_integer_functions2 1 - -#define GLEW_INTEL_shader_integer_functions2 GLEW_GET_VAR(__GLEW_INTEL_shader_integer_functions2) - -#endif /* GL_INTEL_shader_integer_functions2 */ - -/* ------------------------ GL_INTEL_texture_scissor ----------------------- */ - -#ifndef GL_INTEL_texture_scissor -#define GL_INTEL_texture_scissor 1 - -typedef void (GLAPIENTRY * PFNGLTEXSCISSORFUNCINTELPROC) (GLenum target, GLenum lfunc, GLenum hfunc); -typedef void (GLAPIENTRY * PFNGLTEXSCISSORINTELPROC) (GLenum target, GLclampf tlow, GLclampf thigh); - -#define glTexScissorFuncINTEL GLEW_GET_FUN(__glewTexScissorFuncINTEL) -#define glTexScissorINTEL GLEW_GET_FUN(__glewTexScissorINTEL) - -#define GLEW_INTEL_texture_scissor GLEW_GET_VAR(__GLEW_INTEL_texture_scissor) - -#endif /* GL_INTEL_texture_scissor */ - -/* --------------------- GL_KHR_blend_equation_advanced -------------------- */ - -#ifndef GL_KHR_blend_equation_advanced -#define GL_KHR_blend_equation_advanced 1 - -#define GL_BLEND_ADVANCED_COHERENT_KHR 0x9285 -#define GL_MULTIPLY_KHR 0x9294 -#define GL_SCREEN_KHR 0x9295 -#define GL_OVERLAY_KHR 0x9296 -#define GL_DARKEN_KHR 0x9297 -#define GL_LIGHTEN_KHR 0x9298 -#define GL_COLORDODGE_KHR 0x9299 -#define GL_COLORBURN_KHR 0x929A -#define GL_HARDLIGHT_KHR 0x929B -#define GL_SOFTLIGHT_KHR 0x929C -#define GL_DIFFERENCE_KHR 0x929E -#define GL_EXCLUSION_KHR 0x92A0 -#define GL_HSL_HUE_KHR 0x92AD -#define GL_HSL_SATURATION_KHR 0x92AE -#define GL_HSL_COLOR_KHR 0x92AF -#define GL_HSL_LUMINOSITY_KHR 0x92B0 - -typedef void (GLAPIENTRY * PFNGLBLENDBARRIERKHRPROC) (void); - -#define glBlendBarrierKHR GLEW_GET_FUN(__glewBlendBarrierKHR) - -#define GLEW_KHR_blend_equation_advanced GLEW_GET_VAR(__GLEW_KHR_blend_equation_advanced) - -#endif /* GL_KHR_blend_equation_advanced */ - -/* ---------------- GL_KHR_blend_equation_advanced_coherent ---------------- */ - -#ifndef GL_KHR_blend_equation_advanced_coherent -#define GL_KHR_blend_equation_advanced_coherent 1 - -#define GLEW_KHR_blend_equation_advanced_coherent GLEW_GET_VAR(__GLEW_KHR_blend_equation_advanced_coherent) - -#endif /* GL_KHR_blend_equation_advanced_coherent */ - -/* ---------------------- GL_KHR_context_flush_control --------------------- */ - -#ifndef GL_KHR_context_flush_control -#define GL_KHR_context_flush_control 1 - -#define GL_CONTEXT_RELEASE_BEHAVIOR 0x82FB -#define GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH 0x82FC - -#define GLEW_KHR_context_flush_control GLEW_GET_VAR(__GLEW_KHR_context_flush_control) - -#endif /* GL_KHR_context_flush_control */ - -/* ------------------------------ GL_KHR_debug ----------------------------- */ - -#ifndef GL_KHR_debug -#define GL_KHR_debug 1 - -#define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002 -#define GL_STACK_OVERFLOW 0x0503 -#define GL_STACK_UNDERFLOW 0x0504 -#define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242 -#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243 -#define GL_DEBUG_CALLBACK_FUNCTION 0x8244 -#define GL_DEBUG_CALLBACK_USER_PARAM 0x8245 -#define GL_DEBUG_SOURCE_API 0x8246 -#define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247 -#define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248 -#define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249 -#define GL_DEBUG_SOURCE_APPLICATION 0x824A -#define GL_DEBUG_SOURCE_OTHER 0x824B -#define GL_DEBUG_TYPE_ERROR 0x824C -#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D -#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E -#define GL_DEBUG_TYPE_PORTABILITY 0x824F -#define GL_DEBUG_TYPE_PERFORMANCE 0x8250 -#define GL_DEBUG_TYPE_OTHER 0x8251 -#define GL_DEBUG_TYPE_MARKER 0x8268 -#define GL_DEBUG_TYPE_PUSH_GROUP 0x8269 -#define GL_DEBUG_TYPE_POP_GROUP 0x826A -#define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B -#define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C -#define GL_DEBUG_GROUP_STACK_DEPTH 0x826D -#define GL_BUFFER 0x82E0 -#define GL_SHADER 0x82E1 -#define GL_PROGRAM 0x82E2 -#define GL_QUERY 0x82E3 -#define GL_PROGRAM_PIPELINE 0x82E4 -#define GL_SAMPLER 0x82E6 -#define GL_DISPLAY_LIST 0x82E7 -#define GL_MAX_LABEL_LENGTH 0x82E8 -#define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143 -#define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144 -#define GL_DEBUG_LOGGED_MESSAGES 0x9145 -#define GL_DEBUG_SEVERITY_HIGH 0x9146 -#define GL_DEBUG_SEVERITY_MEDIUM 0x9147 -#define GL_DEBUG_SEVERITY_LOW 0x9148 -#define GL_DEBUG_OUTPUT 0x92E0 - -typedef void (GLAPIENTRY *GLDEBUGPROC)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* message, const void* userParam); - -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void *userParam); -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled); -typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* buf); -typedef GLuint (GLAPIENTRY * PFNGLGETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufSize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, GLchar* messageLog); -typedef void (GLAPIENTRY * PFNGLGETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei* length, GLchar *label); -typedef void (GLAPIENTRY * PFNGLGETOBJECTPTRLABELPROC) (void* ptr, GLsizei bufSize, GLsizei* length, GLchar *label); -typedef void (GLAPIENTRY * PFNGLOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar* label); -typedef void (GLAPIENTRY * PFNGLOBJECTPTRLABELPROC) (void* ptr, GLsizei length, const GLchar* label); -typedef void (GLAPIENTRY * PFNGLPOPDEBUGGROUPPROC) (void); -typedef void (GLAPIENTRY * PFNGLPUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar * message); - -#define glDebugMessageCallback GLEW_GET_FUN(__glewDebugMessageCallback) -#define glDebugMessageControl GLEW_GET_FUN(__glewDebugMessageControl) -#define glDebugMessageInsert GLEW_GET_FUN(__glewDebugMessageInsert) -#define glGetDebugMessageLog GLEW_GET_FUN(__glewGetDebugMessageLog) -#define glGetObjectLabel GLEW_GET_FUN(__glewGetObjectLabel) -#define glGetObjectPtrLabel GLEW_GET_FUN(__glewGetObjectPtrLabel) -#define glObjectLabel GLEW_GET_FUN(__glewObjectLabel) -#define glObjectPtrLabel GLEW_GET_FUN(__glewObjectPtrLabel) -#define glPopDebugGroup GLEW_GET_FUN(__glewPopDebugGroup) -#define glPushDebugGroup GLEW_GET_FUN(__glewPushDebugGroup) - -#define GLEW_KHR_debug GLEW_GET_VAR(__GLEW_KHR_debug) - -#endif /* GL_KHR_debug */ - -/* ---------------------------- GL_KHR_no_error ---------------------------- */ - -#ifndef GL_KHR_no_error -#define GL_KHR_no_error 1 - -#define GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR 0x00000008 - -#define GLEW_KHR_no_error GLEW_GET_VAR(__GLEW_KHR_no_error) - -#endif /* GL_KHR_no_error */ - -/* --------------------- GL_KHR_parallel_shader_compile -------------------- */ - -#ifndef GL_KHR_parallel_shader_compile -#define GL_KHR_parallel_shader_compile 1 - -#define GL_MAX_SHADER_COMPILER_THREADS_KHR 0x91B0 -#define GL_COMPLETION_STATUS_KHR 0x91B1 - -typedef void (GLAPIENTRY * PFNGLMAXSHADERCOMPILERTHREADSKHRPROC) (GLuint count); - -#define glMaxShaderCompilerThreadsKHR GLEW_GET_FUN(__glewMaxShaderCompilerThreadsKHR) - -#define GLEW_KHR_parallel_shader_compile GLEW_GET_VAR(__GLEW_KHR_parallel_shader_compile) - -#endif /* GL_KHR_parallel_shader_compile */ - -/* ------------------ GL_KHR_robust_buffer_access_behavior ----------------- */ - -#ifndef GL_KHR_robust_buffer_access_behavior -#define GL_KHR_robust_buffer_access_behavior 1 - -#define GLEW_KHR_robust_buffer_access_behavior GLEW_GET_VAR(__GLEW_KHR_robust_buffer_access_behavior) - -#endif /* GL_KHR_robust_buffer_access_behavior */ - -/* --------------------------- GL_KHR_robustness --------------------------- */ - -#ifndef GL_KHR_robustness -#define GL_KHR_robustness 1 - -#define GL_CONTEXT_LOST 0x0507 -#define GL_LOSE_CONTEXT_ON_RESET 0x8252 -#define GL_GUILTY_CONTEXT_RESET 0x8253 -#define GL_INNOCENT_CONTEXT_RESET 0x8254 -#define GL_UNKNOWN_CONTEXT_RESET 0x8255 -#define GL_RESET_NOTIFICATION_STRATEGY 0x8256 -#define GL_NO_RESET_NOTIFICATION 0x8261 -#define GL_CONTEXT_ROBUST_ACCESS 0x90F3 - -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMFVPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMIVPROC) (GLuint program, GLint location, GLsizei bufSize, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETNUNIFORMUIVPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint* params); -typedef void (GLAPIENTRY * PFNGLREADNPIXELSPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); - -#define glGetnUniformfv GLEW_GET_FUN(__glewGetnUniformfv) -#define glGetnUniformiv GLEW_GET_FUN(__glewGetnUniformiv) -#define glGetnUniformuiv GLEW_GET_FUN(__glewGetnUniformuiv) -#define glReadnPixels GLEW_GET_FUN(__glewReadnPixels) - -#define GLEW_KHR_robustness GLEW_GET_VAR(__GLEW_KHR_robustness) - -#endif /* GL_KHR_robustness */ - -/* ------------------------- GL_KHR_shader_subgroup ------------------------ */ - -#ifndef GL_KHR_shader_subgroup -#define GL_KHR_shader_subgroup 1 - -#define GL_SUBGROUP_FEATURE_BASIC_BIT_KHR 0x00000001 -#define GL_SUBGROUP_FEATURE_VOTE_BIT_KHR 0x00000002 -#define GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR 0x00000004 -#define GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR 0x00000008 -#define GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR 0x00000010 -#define GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR 0x00000020 -#define GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR 0x00000040 -#define GL_SUBGROUP_FEATURE_QUAD_BIT_KHR 0x00000080 -#define GL_SUBGROUP_SIZE_KHR 0x9532 -#define GL_SUBGROUP_SUPPORTED_STAGES_KHR 0x9533 -#define GL_SUBGROUP_SUPPORTED_FEATURES_KHR 0x9534 -#define GL_SUBGROUP_QUAD_ALL_STAGES_KHR 0x9535 - -#define GLEW_KHR_shader_subgroup GLEW_GET_VAR(__GLEW_KHR_shader_subgroup) - -#endif /* GL_KHR_shader_subgroup */ - -/* ------------------ GL_KHR_texture_compression_astc_hdr ------------------ */ - -#ifndef GL_KHR_texture_compression_astc_hdr -#define GL_KHR_texture_compression_astc_hdr 1 - -#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0 -#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1 -#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2 -#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3 -#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4 -#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5 -#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6 -#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7 -#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8 -#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9 -#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA -#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB -#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC -#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD -#define GL_COMPRESSED_RGBA_ASTC_3x3x3_OES 0x93C0 -#define GL_COMPRESSED_RGBA_ASTC_4x3x3_OES 0x93C1 -#define GL_COMPRESSED_RGBA_ASTC_4x4x3_OES 0x93C2 -#define GL_COMPRESSED_RGBA_ASTC_4x4x4_OES 0x93C3 -#define GL_COMPRESSED_RGBA_ASTC_5x4x4_OES 0x93C4 -#define GL_COMPRESSED_RGBA_ASTC_5x5x4_OES 0x93C5 -#define GL_COMPRESSED_RGBA_ASTC_5x5x5_OES 0x93C6 -#define GL_COMPRESSED_RGBA_ASTC_6x5x5_OES 0x93C7 -#define GL_COMPRESSED_RGBA_ASTC_6x6x5_OES 0x93C8 -#define GL_COMPRESSED_RGBA_ASTC_6x6x6_OES 0x93C9 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES 0x93E0 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES 0x93E1 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES 0x93E2 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES 0x93E3 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES 0x93E4 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES 0x93E5 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES 0x93E6 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES 0x93E7 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES 0x93E8 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES 0x93E9 - -#define GLEW_KHR_texture_compression_astc_hdr GLEW_GET_VAR(__GLEW_KHR_texture_compression_astc_hdr) - -#endif /* GL_KHR_texture_compression_astc_hdr */ - -/* ------------------ GL_KHR_texture_compression_astc_ldr ------------------ */ - -#ifndef GL_KHR_texture_compression_astc_ldr -#define GL_KHR_texture_compression_astc_ldr 1 - -#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0 -#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1 -#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2 -#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3 -#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4 -#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5 -#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6 -#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7 -#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8 -#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9 -#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA -#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB -#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC -#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD -#define GL_COMPRESSED_RGBA_ASTC_3x3x3_OES 0x93C0 -#define GL_COMPRESSED_RGBA_ASTC_4x3x3_OES 0x93C1 -#define GL_COMPRESSED_RGBA_ASTC_4x4x3_OES 0x93C2 -#define GL_COMPRESSED_RGBA_ASTC_4x4x4_OES 0x93C3 -#define GL_COMPRESSED_RGBA_ASTC_5x4x4_OES 0x93C4 -#define GL_COMPRESSED_RGBA_ASTC_5x5x4_OES 0x93C5 -#define GL_COMPRESSED_RGBA_ASTC_5x5x5_OES 0x93C6 -#define GL_COMPRESSED_RGBA_ASTC_6x5x5_OES 0x93C7 -#define GL_COMPRESSED_RGBA_ASTC_6x6x5_OES 0x93C8 -#define GL_COMPRESSED_RGBA_ASTC_6x6x6_OES 0x93C9 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES 0x93E0 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES 0x93E1 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES 0x93E2 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES 0x93E3 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES 0x93E4 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES 0x93E5 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES 0x93E6 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES 0x93E7 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES 0x93E8 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES 0x93E9 - -#define GLEW_KHR_texture_compression_astc_ldr GLEW_GET_VAR(__GLEW_KHR_texture_compression_astc_ldr) - -#endif /* GL_KHR_texture_compression_astc_ldr */ - -/* --------------- GL_KHR_texture_compression_astc_sliced_3d --------------- */ - -#ifndef GL_KHR_texture_compression_astc_sliced_3d -#define GL_KHR_texture_compression_astc_sliced_3d 1 - -#define GLEW_KHR_texture_compression_astc_sliced_3d GLEW_GET_VAR(__GLEW_KHR_texture_compression_astc_sliced_3d) - -#endif /* GL_KHR_texture_compression_astc_sliced_3d */ - -/* -------------------------- GL_KTX_buffer_region ------------------------- */ - -#ifndef GL_KTX_buffer_region -#define GL_KTX_buffer_region 1 - -#define GL_KTX_FRONT_REGION 0x0 -#define GL_KTX_BACK_REGION 0x1 -#define GL_KTX_Z_REGION 0x2 -#define GL_KTX_STENCIL_REGION 0x3 - -typedef GLuint (GLAPIENTRY * PFNGLBUFFERREGIONENABLEDPROC) (void); -typedef void (GLAPIENTRY * PFNGLDELETEBUFFERREGIONPROC) (GLenum region); -typedef void (GLAPIENTRY * PFNGLDRAWBUFFERREGIONPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest); -typedef GLuint (GLAPIENTRY * PFNGLNEWBUFFERREGIONPROC) (GLenum region); -typedef void (GLAPIENTRY * PFNGLREADBUFFERREGIONPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height); - -#define glBufferRegionEnabled GLEW_GET_FUN(__glewBufferRegionEnabled) -#define glDeleteBufferRegion GLEW_GET_FUN(__glewDeleteBufferRegion) -#define glDrawBufferRegion GLEW_GET_FUN(__glewDrawBufferRegion) -#define glNewBufferRegion GLEW_GET_FUN(__glewNewBufferRegion) -#define glReadBufferRegion GLEW_GET_FUN(__glewReadBufferRegion) - -#define GLEW_KTX_buffer_region GLEW_GET_VAR(__GLEW_KTX_buffer_region) - -#endif /* GL_KTX_buffer_region */ - -/* ------------------------- GL_MESAX_texture_stack ------------------------ */ - -#ifndef GL_MESAX_texture_stack -#define GL_MESAX_texture_stack 1 - -#define GL_TEXTURE_1D_STACK_MESAX 0x8759 -#define GL_TEXTURE_2D_STACK_MESAX 0x875A -#define GL_PROXY_TEXTURE_1D_STACK_MESAX 0x875B -#define GL_PROXY_TEXTURE_2D_STACK_MESAX 0x875C -#define GL_TEXTURE_1D_STACK_BINDING_MESAX 0x875D -#define GL_TEXTURE_2D_STACK_BINDING_MESAX 0x875E - -#define GLEW_MESAX_texture_stack GLEW_GET_VAR(__GLEW_MESAX_texture_stack) - -#endif /* GL_MESAX_texture_stack */ - -/* ----------------------- GL_MESA_framebuffer_flip_y ---------------------- */ - -#ifndef GL_MESA_framebuffer_flip_y -#define GL_MESA_framebuffer_flip_y 1 - -#define GL_FRAMEBUFFER_FLIP_Y_MESA 0x8BBB - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERPARAMETERIMESAPROC) (GLenum target, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERIVMESAPROC) (GLenum target, GLenum pname, GLint* params); - -#define glFramebufferParameteriMESA GLEW_GET_FUN(__glewFramebufferParameteriMESA) -#define glGetFramebufferParameterivMESA GLEW_GET_FUN(__glewGetFramebufferParameterivMESA) - -#define GLEW_MESA_framebuffer_flip_y GLEW_GET_VAR(__GLEW_MESA_framebuffer_flip_y) - -#endif /* GL_MESA_framebuffer_flip_y */ - -/* -------------------------- GL_MESA_pack_invert -------------------------- */ - -#ifndef GL_MESA_pack_invert -#define GL_MESA_pack_invert 1 - -#define GL_PACK_INVERT_MESA 0x8758 - -#define GLEW_MESA_pack_invert GLEW_GET_VAR(__GLEW_MESA_pack_invert) - -#endif /* GL_MESA_pack_invert */ - -/* --------------------- GL_MESA_program_binary_formats -------------------- */ - -#ifndef GL_MESA_program_binary_formats -#define GL_MESA_program_binary_formats 1 - -#define GL_PROGRAM_BINARY_FORMAT_MESA 0x875F - -#define GLEW_MESA_program_binary_formats GLEW_GET_VAR(__GLEW_MESA_program_binary_formats) - -#endif /* GL_MESA_program_binary_formats */ - -/* ------------------------- GL_MESA_resize_buffers ------------------------ */ - -#ifndef GL_MESA_resize_buffers -#define GL_MESA_resize_buffers 1 - -typedef void (GLAPIENTRY * PFNGLRESIZEBUFFERSMESAPROC) (void); - -#define glResizeBuffersMESA GLEW_GET_FUN(__glewResizeBuffersMESA) - -#define GLEW_MESA_resize_buffers GLEW_GET_VAR(__GLEW_MESA_resize_buffers) - -#endif /* GL_MESA_resize_buffers */ - -/* -------------------- GL_MESA_shader_integer_functions ------------------- */ - -#ifndef GL_MESA_shader_integer_functions -#define GL_MESA_shader_integer_functions 1 - -#define GLEW_MESA_shader_integer_functions GLEW_GET_VAR(__GLEW_MESA_shader_integer_functions) - -#endif /* GL_MESA_shader_integer_functions */ - -/* ----------------------- GL_MESA_tile_raster_order ----------------------- */ - -#ifndef GL_MESA_tile_raster_order -#define GL_MESA_tile_raster_order 1 - -#define GLEW_MESA_tile_raster_order GLEW_GET_VAR(__GLEW_MESA_tile_raster_order) - -#endif /* GL_MESA_tile_raster_order */ - -/* --------------------------- GL_MESA_window_pos -------------------------- */ - -#ifndef GL_MESA_window_pos -#define GL_MESA_window_pos 1 - -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DMESAPROC) (GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVMESAPROC) (const GLdouble* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FMESAPROC) (GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVMESAPROC) (const GLfloat* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IMESAPROC) (GLint x, GLint y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVMESAPROC) (const GLint* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SMESAPROC) (GLshort x, GLshort y); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVMESAPROC) (const GLshort* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DMESAPROC) (GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVMESAPROC) (const GLdouble* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FMESAPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVMESAPROC) (const GLfloat* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IMESAPROC) (GLint x, GLint y, GLint z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVMESAPROC) (const GLint* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SMESAPROC) (GLshort x, GLshort y, GLshort z); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVMESAPROC) (const GLshort* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS4DMESAPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS4DVMESAPROC) (const GLdouble* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS4FMESAPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS4FVMESAPROC) (const GLfloat* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS4IMESAPROC) (GLint x, GLint y, GLint z, GLint w); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS4IVMESAPROC) (const GLint* p); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS4SMESAPROC) (GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (GLAPIENTRY * PFNGLWINDOWPOS4SVMESAPROC) (const GLshort* p); - -#define glWindowPos2dMESA GLEW_GET_FUN(__glewWindowPos2dMESA) -#define glWindowPos2dvMESA GLEW_GET_FUN(__glewWindowPos2dvMESA) -#define glWindowPos2fMESA GLEW_GET_FUN(__glewWindowPos2fMESA) -#define glWindowPos2fvMESA GLEW_GET_FUN(__glewWindowPos2fvMESA) -#define glWindowPos2iMESA GLEW_GET_FUN(__glewWindowPos2iMESA) -#define glWindowPos2ivMESA GLEW_GET_FUN(__glewWindowPos2ivMESA) -#define glWindowPos2sMESA GLEW_GET_FUN(__glewWindowPos2sMESA) -#define glWindowPos2svMESA GLEW_GET_FUN(__glewWindowPos2svMESA) -#define glWindowPos3dMESA GLEW_GET_FUN(__glewWindowPos3dMESA) -#define glWindowPos3dvMESA GLEW_GET_FUN(__glewWindowPos3dvMESA) -#define glWindowPos3fMESA GLEW_GET_FUN(__glewWindowPos3fMESA) -#define glWindowPos3fvMESA GLEW_GET_FUN(__glewWindowPos3fvMESA) -#define glWindowPos3iMESA GLEW_GET_FUN(__glewWindowPos3iMESA) -#define glWindowPos3ivMESA GLEW_GET_FUN(__glewWindowPos3ivMESA) -#define glWindowPos3sMESA GLEW_GET_FUN(__glewWindowPos3sMESA) -#define glWindowPos3svMESA GLEW_GET_FUN(__glewWindowPos3svMESA) -#define glWindowPos4dMESA GLEW_GET_FUN(__glewWindowPos4dMESA) -#define glWindowPos4dvMESA GLEW_GET_FUN(__glewWindowPos4dvMESA) -#define glWindowPos4fMESA GLEW_GET_FUN(__glewWindowPos4fMESA) -#define glWindowPos4fvMESA GLEW_GET_FUN(__glewWindowPos4fvMESA) -#define glWindowPos4iMESA GLEW_GET_FUN(__glewWindowPos4iMESA) -#define glWindowPos4ivMESA GLEW_GET_FUN(__glewWindowPos4ivMESA) -#define glWindowPos4sMESA GLEW_GET_FUN(__glewWindowPos4sMESA) -#define glWindowPos4svMESA GLEW_GET_FUN(__glewWindowPos4svMESA) - -#define GLEW_MESA_window_pos GLEW_GET_VAR(__GLEW_MESA_window_pos) - -#endif /* GL_MESA_window_pos */ - -/* ------------------------- GL_MESA_ycbcr_texture ------------------------- */ - -#ifndef GL_MESA_ycbcr_texture -#define GL_MESA_ycbcr_texture 1 - -#define GL_UNSIGNED_SHORT_8_8_MESA 0x85BA -#define GL_UNSIGNED_SHORT_8_8_REV_MESA 0x85BB -#define GL_YCBCR_MESA 0x8757 - -#define GLEW_MESA_ycbcr_texture GLEW_GET_VAR(__GLEW_MESA_ycbcr_texture) - -#endif /* GL_MESA_ycbcr_texture */ - -/* ----------- GL_NVX_blend_equation_advanced_multi_draw_buffers ----------- */ - -#ifndef GL_NVX_blend_equation_advanced_multi_draw_buffers -#define GL_NVX_blend_equation_advanced_multi_draw_buffers 1 - -#define GLEW_NVX_blend_equation_advanced_multi_draw_buffers GLEW_GET_VAR(__GLEW_NVX_blend_equation_advanced_multi_draw_buffers) - -#endif /* GL_NVX_blend_equation_advanced_multi_draw_buffers */ - -/* ----------------------- GL_NVX_conditional_render ----------------------- */ - -#ifndef GL_NVX_conditional_render -#define GL_NVX_conditional_render 1 - -typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERNVXPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERNVXPROC) (void); - -#define glBeginConditionalRenderNVX GLEW_GET_FUN(__glewBeginConditionalRenderNVX) -#define glEndConditionalRenderNVX GLEW_GET_FUN(__glewEndConditionalRenderNVX) - -#define GLEW_NVX_conditional_render GLEW_GET_VAR(__GLEW_NVX_conditional_render) - -#endif /* GL_NVX_conditional_render */ - -/* ------------------------- GL_NVX_gpu_memory_info ------------------------ */ - -#ifndef GL_NVX_gpu_memory_info -#define GL_NVX_gpu_memory_info 1 - -#define GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX 0x9047 -#define GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX 0x9048 -#define GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX 0x9049 -#define GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX 0x904A -#define GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX 0x904B - -#define GLEW_NVX_gpu_memory_info GLEW_GET_VAR(__GLEW_NVX_gpu_memory_info) - -#endif /* GL_NVX_gpu_memory_info */ - -/* ------------------------- GL_NVX_gpu_multicast2 ------------------------- */ - -#ifndef GL_NVX_gpu_multicast2 -#define GL_NVX_gpu_multicast2 1 - -#define GL_UPLOAD_GPU_MASK_NVX 0x954A - -typedef GLsync (GLAPIENTRY * PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint* waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); -typedef GLuint (GLAPIENTRY * PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint* waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); -typedef void (GLAPIENTRY * PFNGLMULTICASTSCISSORARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLint* v); -typedef void (GLAPIENTRY * PFNGLMULTICASTVIEWPORTARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC) (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff); -typedef void (GLAPIENTRY * PFNGLUPLOADGPUMASKNVXPROC) (GLbitfield mask); - -#define glAsyncCopyBufferSubDataNVX GLEW_GET_FUN(__glewAsyncCopyBufferSubDataNVX) -#define glAsyncCopyImageSubDataNVX GLEW_GET_FUN(__glewAsyncCopyImageSubDataNVX) -#define glMulticastScissorArrayvNVX GLEW_GET_FUN(__glewMulticastScissorArrayvNVX) -#define glMulticastViewportArrayvNVX GLEW_GET_FUN(__glewMulticastViewportArrayvNVX) -#define glMulticastViewportPositionWScaleNVX GLEW_GET_FUN(__glewMulticastViewportPositionWScaleNVX) -#define glUploadGpuMaskNVX GLEW_GET_FUN(__glewUploadGpuMaskNVX) - -#define GLEW_NVX_gpu_multicast2 GLEW_GET_VAR(__GLEW_NVX_gpu_multicast2) - -#endif /* GL_NVX_gpu_multicast2 */ - -/* ---------------------- GL_NVX_linked_gpu_multicast ---------------------- */ - -#ifndef GL_NVX_linked_gpu_multicast -#define GL_NVX_linked_gpu_multicast 1 - -#define GL_LGPU_SEPARATE_STORAGE_BIT_NVX 0x0800 -#define GL_MAX_LGPU_GPUS_NVX 0x92BA - -typedef void (GLAPIENTRY * PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); -typedef void (GLAPIENTRY * PFNGLLGPUINTERLOCKNVXPROC) (void); -typedef void (GLAPIENTRY * PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); - -#define glLGPUCopyImageSubDataNVX GLEW_GET_FUN(__glewLGPUCopyImageSubDataNVX) -#define glLGPUInterlockNVX GLEW_GET_FUN(__glewLGPUInterlockNVX) -#define glLGPUNamedBufferSubDataNVX GLEW_GET_FUN(__glewLGPUNamedBufferSubDataNVX) - -#define GLEW_NVX_linked_gpu_multicast GLEW_GET_VAR(__GLEW_NVX_linked_gpu_multicast) - -#endif /* GL_NVX_linked_gpu_multicast */ - -/* ------------------------- GL_NVX_progress_fence ------------------------- */ - -#ifndef GL_NVX_progress_fence -#define GL_NVX_progress_fence 1 - -typedef void (GLAPIENTRY * PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC) (GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64 *fenceValueArray); -typedef void (GLAPIENTRY * PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64 *fenceValueArray); -typedef void (GLAPIENTRY * PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint* semaphoreArray, const GLuint64 *fenceValueArray); - -#define glClientWaitSemaphoreui64NVX GLEW_GET_FUN(__glewClientWaitSemaphoreui64NVX) -#define glSignalSemaphoreui64NVX GLEW_GET_FUN(__glewSignalSemaphoreui64NVX) -#define glWaitSemaphoreui64NVX GLEW_GET_FUN(__glewWaitSemaphoreui64NVX) - -#define GLEW_NVX_progress_fence GLEW_GET_VAR(__GLEW_NVX_progress_fence) - -#endif /* GL_NVX_progress_fence */ - -/* ------------------------ GL_NV_3dvision_settings ------------------------ */ - -#ifndef GL_NV_3dvision_settings -#define GL_NV_3dvision_settings 1 - -#define GL_3DVISION_STEREO_NV 0x90F4 -#define GL_STEREO_SEPARATION_NV 0x90F5 -#define GL_STEREO_CONVERGENCE_NV 0x90F6 -#define GL_STEREO_CUTOFF_NV 0x90F7 -#define GL_STEREO_PROJECTION_NV 0x90F8 -#define GL_STEREO_PROJECTION_PERSPECTIVE_NV 0x90F9 -#define GL_STEREO_PROJECTION_ORTHO_NV 0x90FA - -typedef void (GLAPIENTRY * PFNGLSTEREOPARAMETERFNVPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLSTEREOPARAMETERINVPROC) (GLenum pname, GLint param); - -#define glStereoParameterfNV GLEW_GET_FUN(__glewStereoParameterfNV) -#define glStereoParameteriNV GLEW_GET_FUN(__glewStereoParameteriNV) - -#define GLEW_NV_3dvision_settings GLEW_GET_VAR(__GLEW_NV_3dvision_settings) - -#endif /* GL_NV_3dvision_settings */ - -/* ------------------- GL_NV_EGL_stream_consumer_external ------------------ */ - -#ifndef GL_NV_EGL_stream_consumer_external -#define GL_NV_EGL_stream_consumer_external 1 - -#define GL_TEXTURE_EXTERNAL_OES 0x8D65 -#define GL_SAMPLER_EXTERNAL_OES 0x8D66 -#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 -#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 - -#define GLEW_NV_EGL_stream_consumer_external GLEW_GET_VAR(__GLEW_NV_EGL_stream_consumer_external) - -#endif /* GL_NV_EGL_stream_consumer_external */ - -/* ----------------- GL_NV_alpha_to_coverage_dither_control ---------------- */ - -#ifndef GL_NV_alpha_to_coverage_dither_control -#define GL_NV_alpha_to_coverage_dither_control 1 - -#define GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV 0x92BF -#define GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV 0x934D -#define GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV 0x934E -#define GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV 0x934F - -typedef void (GLAPIENTRY * PFNGLALPHATOCOVERAGEDITHERCONTROLNVPROC) (GLenum mode); - -#define glAlphaToCoverageDitherControlNV GLEW_GET_FUN(__glewAlphaToCoverageDitherControlNV) - -#define GLEW_NV_alpha_to_coverage_dither_control GLEW_GET_VAR(__GLEW_NV_alpha_to_coverage_dither_control) - -#endif /* GL_NV_alpha_to_coverage_dither_control */ - -/* ------------------------------- GL_NV_bgr ------------------------------- */ - -#ifndef GL_NV_bgr -#define GL_NV_bgr 1 - -#define GL_BGR_NV 0x80E0 - -#define GLEW_NV_bgr GLEW_GET_VAR(__GLEW_NV_bgr) - -#endif /* GL_NV_bgr */ - -/* ------------------- GL_NV_bindless_multi_draw_indirect ------------------ */ - -#ifndef GL_NV_bindless_multi_draw_indirect -#define GL_NV_bindless_multi_draw_indirect 1 - -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSNVPROC) (GLenum mode, const void *indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSNVPROC) (GLenum mode, GLenum type, const void *indirect, GLsizei drawCount, GLsizei stride, GLint vertexBufferCount); - -#define glMultiDrawArraysIndirectBindlessNV GLEW_GET_FUN(__glewMultiDrawArraysIndirectBindlessNV) -#define glMultiDrawElementsIndirectBindlessNV GLEW_GET_FUN(__glewMultiDrawElementsIndirectBindlessNV) - -#define GLEW_NV_bindless_multi_draw_indirect GLEW_GET_VAR(__GLEW_NV_bindless_multi_draw_indirect) - -#endif /* GL_NV_bindless_multi_draw_indirect */ - -/* ---------------- GL_NV_bindless_multi_draw_indirect_count --------------- */ - -#ifndef GL_NV_bindless_multi_draw_indirect_count -#define GL_NV_bindless_multi_draw_indirect_count 1 - -typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSCOUNTNVPROC) (GLenum mode, const void *indirect, GLintptr drawCount, GLsizei maxDrawCount, GLsizei stride, GLint vertexBufferCount); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSCOUNTNVPROC) (GLenum mode, GLenum type, const void *indirect, GLintptr drawCount, GLsizei maxDrawCount, GLsizei stride, GLint vertexBufferCount); - -#define glMultiDrawArraysIndirectBindlessCountNV GLEW_GET_FUN(__glewMultiDrawArraysIndirectBindlessCountNV) -#define glMultiDrawElementsIndirectBindlessCountNV GLEW_GET_FUN(__glewMultiDrawElementsIndirectBindlessCountNV) - -#define GLEW_NV_bindless_multi_draw_indirect_count GLEW_GET_VAR(__GLEW_NV_bindless_multi_draw_indirect_count) - -#endif /* GL_NV_bindless_multi_draw_indirect_count */ - -/* ------------------------- GL_NV_bindless_texture ------------------------ */ - -#ifndef GL_NV_bindless_texture -#define GL_NV_bindless_texture 1 - -typedef GLuint64 (GLAPIENTRY * PFNGLGETIMAGEHANDLENVPROC) (GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format); -typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTUREHANDLENVPROC) (GLuint texture); -typedef GLuint64 (GLAPIENTRY * PFNGLGETTEXTURESAMPLERHANDLENVPROC) (GLuint texture, GLuint sampler); -typedef GLboolean (GLAPIENTRY * PFNGLISIMAGEHANDLERESIDENTNVPROC) (GLuint64 handle); -typedef GLboolean (GLAPIENTRY * PFNGLISTEXTUREHANDLERESIDENTNVPROC) (GLuint64 handle); -typedef void (GLAPIENTRY * PFNGLMAKEIMAGEHANDLENONRESIDENTNVPROC) (GLuint64 handle); -typedef void (GLAPIENTRY * PFNGLMAKEIMAGEHANDLERESIDENTNVPROC) (GLuint64 handle, GLenum access); -typedef void (GLAPIENTRY * PFNGLMAKETEXTUREHANDLENONRESIDENTNVPROC) (GLuint64 handle); -typedef void (GLAPIENTRY * PFNGLMAKETEXTUREHANDLERESIDENTNVPROC) (GLuint64 handle); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64NVPROC) (GLuint program, GLint location, GLuint64 value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMHANDLEUI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64* values); -typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64NVPROC) (GLint location, GLuint64 value); -typedef void (GLAPIENTRY * PFNGLUNIFORMHANDLEUI64VNVPROC) (GLint location, GLsizei count, const GLuint64* value); - -#define glGetImageHandleNV GLEW_GET_FUN(__glewGetImageHandleNV) -#define glGetTextureHandleNV GLEW_GET_FUN(__glewGetTextureHandleNV) -#define glGetTextureSamplerHandleNV GLEW_GET_FUN(__glewGetTextureSamplerHandleNV) -#define glIsImageHandleResidentNV GLEW_GET_FUN(__glewIsImageHandleResidentNV) -#define glIsTextureHandleResidentNV GLEW_GET_FUN(__glewIsTextureHandleResidentNV) -#define glMakeImageHandleNonResidentNV GLEW_GET_FUN(__glewMakeImageHandleNonResidentNV) -#define glMakeImageHandleResidentNV GLEW_GET_FUN(__glewMakeImageHandleResidentNV) -#define glMakeTextureHandleNonResidentNV GLEW_GET_FUN(__glewMakeTextureHandleNonResidentNV) -#define glMakeTextureHandleResidentNV GLEW_GET_FUN(__glewMakeTextureHandleResidentNV) -#define glProgramUniformHandleui64NV GLEW_GET_FUN(__glewProgramUniformHandleui64NV) -#define glProgramUniformHandleui64vNV GLEW_GET_FUN(__glewProgramUniformHandleui64vNV) -#define glUniformHandleui64NV GLEW_GET_FUN(__glewUniformHandleui64NV) -#define glUniformHandleui64vNV GLEW_GET_FUN(__glewUniformHandleui64vNV) - -#define GLEW_NV_bindless_texture GLEW_GET_VAR(__GLEW_NV_bindless_texture) - -#endif /* GL_NV_bindless_texture */ - -/* --------------------- GL_NV_blend_equation_advanced --------------------- */ - -#ifndef GL_NV_blend_equation_advanced -#define GL_NV_blend_equation_advanced 1 - -#define GL_XOR_NV 0x1506 -#define GL_RED_NV 0x1903 -#define GL_GREEN_NV 0x1904 -#define GL_BLUE_NV 0x1905 -#define GL_BLEND_PREMULTIPLIED_SRC_NV 0x9280 -#define GL_BLEND_OVERLAP_NV 0x9281 -#define GL_UNCORRELATED_NV 0x9282 -#define GL_DISJOINT_NV 0x9283 -#define GL_CONJOINT_NV 0x9284 -#define GL_BLEND_ADVANCED_COHERENT_NV 0x9285 -#define GL_SRC_NV 0x9286 -#define GL_DST_NV 0x9287 -#define GL_SRC_OVER_NV 0x9288 -#define GL_DST_OVER_NV 0x9289 -#define GL_SRC_IN_NV 0x928A -#define GL_DST_IN_NV 0x928B -#define GL_SRC_OUT_NV 0x928C -#define GL_DST_OUT_NV 0x928D -#define GL_SRC_ATOP_NV 0x928E -#define GL_DST_ATOP_NV 0x928F -#define GL_PLUS_NV 0x9291 -#define GL_PLUS_DARKER_NV 0x9292 -#define GL_MULTIPLY_NV 0x9294 -#define GL_SCREEN_NV 0x9295 -#define GL_OVERLAY_NV 0x9296 -#define GL_DARKEN_NV 0x9297 -#define GL_LIGHTEN_NV 0x9298 -#define GL_COLORDODGE_NV 0x9299 -#define GL_COLORBURN_NV 0x929A -#define GL_HARDLIGHT_NV 0x929B -#define GL_SOFTLIGHT_NV 0x929C -#define GL_DIFFERENCE_NV 0x929E -#define GL_MINUS_NV 0x929F -#define GL_EXCLUSION_NV 0x92A0 -#define GL_CONTRAST_NV 0x92A1 -#define GL_INVERT_RGB_NV 0x92A3 -#define GL_LINEARDODGE_NV 0x92A4 -#define GL_LINEARBURN_NV 0x92A5 -#define GL_VIVIDLIGHT_NV 0x92A6 -#define GL_LINEARLIGHT_NV 0x92A7 -#define GL_PINLIGHT_NV 0x92A8 -#define GL_HARDMIX_NV 0x92A9 -#define GL_HSL_HUE_NV 0x92AD -#define GL_HSL_SATURATION_NV 0x92AE -#define GL_HSL_COLOR_NV 0x92AF -#define GL_HSL_LUMINOSITY_NV 0x92B0 -#define GL_PLUS_CLAMPED_NV 0x92B1 -#define GL_PLUS_CLAMPED_ALPHA_NV 0x92B2 -#define GL_MINUS_CLAMPED_NV 0x92B3 -#define GL_INVERT_OVG_NV 0x92B4 - -typedef void (GLAPIENTRY * PFNGLBLENDBARRIERNVPROC) (void); -typedef void (GLAPIENTRY * PFNGLBLENDPARAMETERINVPROC) (GLenum pname, GLint value); - -#define glBlendBarrierNV GLEW_GET_FUN(__glewBlendBarrierNV) -#define glBlendParameteriNV GLEW_GET_FUN(__glewBlendParameteriNV) - -#define GLEW_NV_blend_equation_advanced GLEW_GET_VAR(__GLEW_NV_blend_equation_advanced) - -#endif /* GL_NV_blend_equation_advanced */ - -/* ----------------- GL_NV_blend_equation_advanced_coherent ---------------- */ - -#ifndef GL_NV_blend_equation_advanced_coherent -#define GL_NV_blend_equation_advanced_coherent 1 - -#define GLEW_NV_blend_equation_advanced_coherent GLEW_GET_VAR(__GLEW_NV_blend_equation_advanced_coherent) - -#endif /* GL_NV_blend_equation_advanced_coherent */ - -/* ----------------------- GL_NV_blend_minmax_factor ----------------------- */ - -#ifndef GL_NV_blend_minmax_factor -#define GL_NV_blend_minmax_factor 1 - -#define GL_FACTOR_MIN_AMD 0x901C -#define GL_FACTOR_MAX_AMD 0x901D - -#define GLEW_NV_blend_minmax_factor GLEW_GET_VAR(__GLEW_NV_blend_minmax_factor) - -#endif /* GL_NV_blend_minmax_factor */ - -/* --------------------------- GL_NV_blend_square -------------------------- */ - -#ifndef GL_NV_blend_square -#define GL_NV_blend_square 1 - -#define GLEW_NV_blend_square GLEW_GET_VAR(__GLEW_NV_blend_square) - -#endif /* GL_NV_blend_square */ - -/* ----------------------- GL_NV_clip_space_w_scaling ---------------------- */ - -#ifndef GL_NV_clip_space_w_scaling -#define GL_NV_clip_space_w_scaling 1 - -#define GL_VIEWPORT_POSITION_W_SCALE_NV 0x937C -#define GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV 0x937D -#define GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV 0x937E - -typedef void (GLAPIENTRY * PFNGLVIEWPORTPOSITIONWSCALENVPROC) (GLuint index, GLfloat xcoeff, GLfloat ycoeff); - -#define glViewportPositionWScaleNV GLEW_GET_FUN(__glewViewportPositionWScaleNV) - -#define GLEW_NV_clip_space_w_scaling GLEW_GET_VAR(__GLEW_NV_clip_space_w_scaling) - -#endif /* GL_NV_clip_space_w_scaling */ - -/* --------------------------- GL_NV_command_list -------------------------- */ - -#ifndef GL_NV_command_list -#define GL_NV_command_list 1 - -#define GL_TERMINATE_SEQUENCE_COMMAND_NV 0x0000 -#define GL_NOP_COMMAND_NV 0x0001 -#define GL_DRAW_ELEMENTS_COMMAND_NV 0x0002 -#define GL_DRAW_ARRAYS_COMMAND_NV 0x0003 -#define GL_DRAW_ELEMENTS_STRIP_COMMAND_NV 0x0004 -#define GL_DRAW_ARRAYS_STRIP_COMMAND_NV 0x0005 -#define GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV 0x0006 -#define GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV 0x0007 -#define GL_ELEMENT_ADDRESS_COMMAND_NV 0x0008 -#define GL_ATTRIBUTE_ADDRESS_COMMAND_NV 0x0009 -#define GL_UNIFORM_ADDRESS_COMMAND_NV 0x000a -#define GL_BLEND_COLOR_COMMAND_NV 0x000b -#define GL_STENCIL_REF_COMMAND_NV 0x000c -#define GL_LINE_WIDTH_COMMAND_NV 0x000d -#define GL_POLYGON_OFFSET_COMMAND_NV 0x000e -#define GL_ALPHA_REF_COMMAND_NV 0x000f -#define GL_VIEWPORT_COMMAND_NV 0x0010 -#define GL_SCISSOR_COMMAND_NV 0x0011 -#define GL_FRONT_FACE_COMMAND_NV 0x0012 - -typedef void (GLAPIENTRY * PFNGLCALLCOMMANDLISTNVPROC) (GLuint list); -typedef void (GLAPIENTRY * PFNGLCOMMANDLISTSEGMENTSNVPROC) (GLuint list, GLuint segments); -typedef void (GLAPIENTRY * PFNGLCOMPILECOMMANDLISTNVPROC) (GLuint list); -typedef void (GLAPIENTRY * PFNGLCREATECOMMANDLISTSNVPROC) (GLsizei n, GLuint* lists); -typedef void (GLAPIENTRY * PFNGLCREATESTATESNVPROC) (GLsizei n, GLuint* states); -typedef void (GLAPIENTRY * PFNGLDELETECOMMANDLISTSNVPROC) (GLsizei n, const GLuint* lists); -typedef void (GLAPIENTRY * PFNGLDELETESTATESNVPROC) (GLsizei n, const GLuint* states); -typedef void (GLAPIENTRY * PFNGLDRAWCOMMANDSADDRESSNVPROC) (GLenum primitiveMode, const GLuint64* indirects, const GLsizei* sizes, GLuint count); -typedef void (GLAPIENTRY * PFNGLDRAWCOMMANDSNVPROC) (GLenum primitiveMode, GLuint buffer, const GLintptr* indirects, const GLsizei* sizes, GLuint count); -typedef void (GLAPIENTRY * PFNGLDRAWCOMMANDSSTATESADDRESSNVPROC) (const GLuint64* indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count); -typedef void (GLAPIENTRY * PFNGLDRAWCOMMANDSSTATESNVPROC) (GLuint buffer, const GLintptr* indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count); -typedef GLuint (GLAPIENTRY * PFNGLGETCOMMANDHEADERNVPROC) (GLenum tokenID, GLuint size); -typedef GLushort (GLAPIENTRY * PFNGLGETSTAGEINDEXNVPROC) (GLenum shadertype); -typedef GLboolean (GLAPIENTRY * PFNGLISCOMMANDLISTNVPROC) (GLuint list); -typedef GLboolean (GLAPIENTRY * PFNGLISSTATENVPROC) (GLuint state); -typedef void (GLAPIENTRY * PFNGLLISTDRAWCOMMANDSSTATESCLIENTNVPROC) (GLuint list, GLuint segment, const void** indirects, const GLsizei* sizes, const GLuint* states, const GLuint* fbos, GLuint count); -typedef void (GLAPIENTRY * PFNGLSTATECAPTURENVPROC) (GLuint state, GLenum mode); - -#define glCallCommandListNV GLEW_GET_FUN(__glewCallCommandListNV) -#define glCommandListSegmentsNV GLEW_GET_FUN(__glewCommandListSegmentsNV) -#define glCompileCommandListNV GLEW_GET_FUN(__glewCompileCommandListNV) -#define glCreateCommandListsNV GLEW_GET_FUN(__glewCreateCommandListsNV) -#define glCreateStatesNV GLEW_GET_FUN(__glewCreateStatesNV) -#define glDeleteCommandListsNV GLEW_GET_FUN(__glewDeleteCommandListsNV) -#define glDeleteStatesNV GLEW_GET_FUN(__glewDeleteStatesNV) -#define glDrawCommandsAddressNV GLEW_GET_FUN(__glewDrawCommandsAddressNV) -#define glDrawCommandsNV GLEW_GET_FUN(__glewDrawCommandsNV) -#define glDrawCommandsStatesAddressNV GLEW_GET_FUN(__glewDrawCommandsStatesAddressNV) -#define glDrawCommandsStatesNV GLEW_GET_FUN(__glewDrawCommandsStatesNV) -#define glGetCommandHeaderNV GLEW_GET_FUN(__glewGetCommandHeaderNV) -#define glGetStageIndexNV GLEW_GET_FUN(__glewGetStageIndexNV) -#define glIsCommandListNV GLEW_GET_FUN(__glewIsCommandListNV) -#define glIsStateNV GLEW_GET_FUN(__glewIsStateNV) -#define glListDrawCommandsStatesClientNV GLEW_GET_FUN(__glewListDrawCommandsStatesClientNV) -#define glStateCaptureNV GLEW_GET_FUN(__glewStateCaptureNV) - -#define GLEW_NV_command_list GLEW_GET_VAR(__GLEW_NV_command_list) - -#endif /* GL_NV_command_list */ - -/* ------------------------- GL_NV_compute_program5 ------------------------ */ - -#ifndef GL_NV_compute_program5 -#define GL_NV_compute_program5 1 - -#define GL_COMPUTE_PROGRAM_NV 0x90FB -#define GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV 0x90FC - -#define GLEW_NV_compute_program5 GLEW_GET_VAR(__GLEW_NV_compute_program5) - -#endif /* GL_NV_compute_program5 */ - -/* -------------------- GL_NV_compute_shader_derivatives ------------------- */ - -#ifndef GL_NV_compute_shader_derivatives -#define GL_NV_compute_shader_derivatives 1 - -#define GLEW_NV_compute_shader_derivatives GLEW_GET_VAR(__GLEW_NV_compute_shader_derivatives) - -#endif /* GL_NV_compute_shader_derivatives */ - -/* ------------------------ GL_NV_conditional_render ----------------------- */ - -#ifndef GL_NV_conditional_render -#define GL_NV_conditional_render 1 - -#define GL_QUERY_WAIT_NV 0x8E13 -#define GL_QUERY_NO_WAIT_NV 0x8E14 -#define GL_QUERY_BY_REGION_WAIT_NV 0x8E15 -#define GL_QUERY_BY_REGION_NO_WAIT_NV 0x8E16 - -typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERNVPROC) (GLuint id, GLenum mode); -typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERNVPROC) (void); - -#define glBeginConditionalRenderNV GLEW_GET_FUN(__glewBeginConditionalRenderNV) -#define glEndConditionalRenderNV GLEW_GET_FUN(__glewEndConditionalRenderNV) - -#define GLEW_NV_conditional_render GLEW_GET_VAR(__GLEW_NV_conditional_render) - -#endif /* GL_NV_conditional_render */ - -/* ----------------------- GL_NV_conservative_raster ----------------------- */ - -#ifndef GL_NV_conservative_raster -#define GL_NV_conservative_raster 1 - -#define GL_CONSERVATIVE_RASTERIZATION_NV 0x9346 -#define GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV 0x9347 -#define GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV 0x9348 -#define GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV 0x9349 - -typedef void (GLAPIENTRY * PFNGLSUBPIXELPRECISIONBIASNVPROC) (GLuint xbits, GLuint ybits); - -#define glSubpixelPrecisionBiasNV GLEW_GET_FUN(__glewSubpixelPrecisionBiasNV) - -#define GLEW_NV_conservative_raster GLEW_GET_VAR(__GLEW_NV_conservative_raster) - -#endif /* GL_NV_conservative_raster */ - -/* -------------------- GL_NV_conservative_raster_dilate ------------------- */ - -#ifndef GL_NV_conservative_raster_dilate -#define GL_NV_conservative_raster_dilate 1 - -#define GL_CONSERVATIVE_RASTER_DILATE_NV 0x9379 -#define GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV 0x937A -#define GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV 0x937B - -typedef void (GLAPIENTRY * PFNGLCONSERVATIVERASTERPARAMETERFNVPROC) (GLenum pname, GLfloat value); - -#define glConservativeRasterParameterfNV GLEW_GET_FUN(__glewConservativeRasterParameterfNV) - -#define GLEW_NV_conservative_raster_dilate GLEW_GET_VAR(__GLEW_NV_conservative_raster_dilate) - -#endif /* GL_NV_conservative_raster_dilate */ - -/* ------------------- GL_NV_conservative_raster_pre_snap ------------------ */ - -#ifndef GL_NV_conservative_raster_pre_snap -#define GL_NV_conservative_raster_pre_snap 1 - -#define GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV 0x9550 - -#define GLEW_NV_conservative_raster_pre_snap GLEW_GET_VAR(__GLEW_NV_conservative_raster_pre_snap) - -#endif /* GL_NV_conservative_raster_pre_snap */ - -/* -------------- GL_NV_conservative_raster_pre_snap_triangles ------------- */ - -#ifndef GL_NV_conservative_raster_pre_snap_triangles -#define GL_NV_conservative_raster_pre_snap_triangles 1 - -#define GL_CONSERVATIVE_RASTER_MODE_NV 0x954D -#define GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV 0x954E -#define GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV 0x954F - -typedef void (GLAPIENTRY * PFNGLCONSERVATIVERASTERPARAMETERINVPROC) (GLenum pname, GLint param); - -#define glConservativeRasterParameteriNV GLEW_GET_FUN(__glewConservativeRasterParameteriNV) - -#define GLEW_NV_conservative_raster_pre_snap_triangles GLEW_GET_VAR(__GLEW_NV_conservative_raster_pre_snap_triangles) - -#endif /* GL_NV_conservative_raster_pre_snap_triangles */ - -/* --------------- GL_NV_conservative_raster_underestimation --------------- */ - -#ifndef GL_NV_conservative_raster_underestimation -#define GL_NV_conservative_raster_underestimation 1 - -#define GLEW_NV_conservative_raster_underestimation GLEW_GET_VAR(__GLEW_NV_conservative_raster_underestimation) - -#endif /* GL_NV_conservative_raster_underestimation */ - -/* --------------------------- GL_NV_copy_buffer --------------------------- */ - -#ifndef GL_NV_copy_buffer -#define GL_NV_copy_buffer 1 - -#define GL_COPY_READ_BUFFER_NV 0x8F36 -#define GL_COPY_WRITE_BUFFER_NV 0x8F37 - -typedef void (GLAPIENTRY * PFNGLCOPYBUFFERSUBDATANVPROC) (GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size); - -#define glCopyBufferSubDataNV GLEW_GET_FUN(__glewCopyBufferSubDataNV) - -#define GLEW_NV_copy_buffer GLEW_GET_VAR(__GLEW_NV_copy_buffer) - -#endif /* GL_NV_copy_buffer */ - -/* ----------------------- GL_NV_copy_depth_to_color ----------------------- */ - -#ifndef GL_NV_copy_depth_to_color -#define GL_NV_copy_depth_to_color 1 - -#define GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E -#define GL_DEPTH_STENCIL_TO_BGRA_NV 0x886F - -#define GLEW_NV_copy_depth_to_color GLEW_GET_VAR(__GLEW_NV_copy_depth_to_color) - -#endif /* GL_NV_copy_depth_to_color */ - -/* ---------------------------- GL_NV_copy_image --------------------------- */ - -#ifndef GL_NV_copy_image -#define GL_NV_copy_image 1 - -typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATANVPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); - -#define glCopyImageSubDataNV GLEW_GET_FUN(__glewCopyImageSubDataNV) - -#define GLEW_NV_copy_image GLEW_GET_VAR(__GLEW_NV_copy_image) - -#endif /* GL_NV_copy_image */ - -/* -------------------------- GL_NV_deep_texture3D ------------------------- */ - -#ifndef GL_NV_deep_texture3D -#define GL_NV_deep_texture3D 1 - -#define GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV 0x90D0 -#define GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV 0x90D1 - -#define GLEW_NV_deep_texture3D GLEW_GET_VAR(__GLEW_NV_deep_texture3D) - -#endif /* GL_NV_deep_texture3D */ - -/* ------------------------ GL_NV_depth_buffer_float ----------------------- */ - -#ifndef GL_NV_depth_buffer_float -#define GL_NV_depth_buffer_float 1 - -#define GL_DEPTH_COMPONENT32F_NV 0x8DAB -#define GL_DEPTH32F_STENCIL8_NV 0x8DAC -#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV 0x8DAD -#define GL_DEPTH_BUFFER_FLOAT_MODE_NV 0x8DAF - -typedef void (GLAPIENTRY * PFNGLCLEARDEPTHDNVPROC) (GLdouble depth); -typedef void (GLAPIENTRY * PFNGLDEPTHBOUNDSDNVPROC) (GLdouble zmin, GLdouble zmax); -typedef void (GLAPIENTRY * PFNGLDEPTHRANGEDNVPROC) (GLdouble zNear, GLdouble zFar); - -#define glClearDepthdNV GLEW_GET_FUN(__glewClearDepthdNV) -#define glDepthBoundsdNV GLEW_GET_FUN(__glewDepthBoundsdNV) -#define glDepthRangedNV GLEW_GET_FUN(__glewDepthRangedNV) - -#define GLEW_NV_depth_buffer_float GLEW_GET_VAR(__GLEW_NV_depth_buffer_float) - -#endif /* GL_NV_depth_buffer_float */ - -/* --------------------------- GL_NV_depth_clamp --------------------------- */ - -#ifndef GL_NV_depth_clamp -#define GL_NV_depth_clamp 1 - -#define GL_DEPTH_CLAMP_NV 0x864F - -#define GLEW_NV_depth_clamp GLEW_GET_VAR(__GLEW_NV_depth_clamp) - -#endif /* GL_NV_depth_clamp */ - -/* ------------------------- GL_NV_depth_nonlinear ------------------------- */ - -#ifndef GL_NV_depth_nonlinear -#define GL_NV_depth_nonlinear 1 - -#define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C - -#define GLEW_NV_depth_nonlinear GLEW_GET_VAR(__GLEW_NV_depth_nonlinear) - -#endif /* GL_NV_depth_nonlinear */ - -/* ---------------------- GL_NV_depth_range_unclamped ---------------------- */ - -#ifndef GL_NV_depth_range_unclamped -#define GL_NV_depth_range_unclamped 1 - -#define GL_SAMPLE_COUNT_BITS_NV 0x8864 -#define GL_CURRENT_SAMPLE_COUNT_QUERY_NV 0x8865 -#define GL_QUERY_RESULT_NV 0x8866 -#define GL_QUERY_RESULT_AVAILABLE_NV 0x8867 -#define GL_SAMPLE_COUNT_NV 0x8914 - -#define GLEW_NV_depth_range_unclamped GLEW_GET_VAR(__GLEW_NV_depth_range_unclamped) - -#endif /* GL_NV_depth_range_unclamped */ - -/* --------------------------- GL_NV_draw_buffers -------------------------- */ - -#ifndef GL_NV_draw_buffers -#define GL_NV_draw_buffers 1 - -#define GL_MAX_DRAW_BUFFERS_NV 0x8824 -#define GL_DRAW_BUFFER0_NV 0x8825 -#define GL_DRAW_BUFFER1_NV 0x8826 -#define GL_DRAW_BUFFER2_NV 0x8827 -#define GL_DRAW_BUFFER3_NV 0x8828 -#define GL_DRAW_BUFFER4_NV 0x8829 -#define GL_DRAW_BUFFER5_NV 0x882A -#define GL_DRAW_BUFFER6_NV 0x882B -#define GL_DRAW_BUFFER7_NV 0x882C -#define GL_DRAW_BUFFER8_NV 0x882D -#define GL_DRAW_BUFFER9_NV 0x882E -#define GL_DRAW_BUFFER10_NV 0x882F -#define GL_DRAW_BUFFER11_NV 0x8830 -#define GL_DRAW_BUFFER12_NV 0x8831 -#define GL_DRAW_BUFFER13_NV 0x8832 -#define GL_DRAW_BUFFER14_NV 0x8833 -#define GL_DRAW_BUFFER15_NV 0x8834 -#define GL_COLOR_ATTACHMENT0_NV 0x8CE0 -#define GL_COLOR_ATTACHMENT1_NV 0x8CE1 -#define GL_COLOR_ATTACHMENT2_NV 0x8CE2 -#define GL_COLOR_ATTACHMENT3_NV 0x8CE3 -#define GL_COLOR_ATTACHMENT4_NV 0x8CE4 -#define GL_COLOR_ATTACHMENT5_NV 0x8CE5 -#define GL_COLOR_ATTACHMENT6_NV 0x8CE6 -#define GL_COLOR_ATTACHMENT7_NV 0x8CE7 -#define GL_COLOR_ATTACHMENT8_NV 0x8CE8 -#define GL_COLOR_ATTACHMENT9_NV 0x8CE9 -#define GL_COLOR_ATTACHMENT10_NV 0x8CEA -#define GL_COLOR_ATTACHMENT11_NV 0x8CEB -#define GL_COLOR_ATTACHMENT12_NV 0x8CEC -#define GL_COLOR_ATTACHMENT13_NV 0x8CED -#define GL_COLOR_ATTACHMENT14_NV 0x8CEE -#define GL_COLOR_ATTACHMENT15_NV 0x8CEF - -typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum* bufs); - -#define glDrawBuffersNV GLEW_GET_FUN(__glewDrawBuffersNV) - -#define GLEW_NV_draw_buffers GLEW_GET_VAR(__GLEW_NV_draw_buffers) - -#endif /* GL_NV_draw_buffers */ - -/* -------------------------- GL_NV_draw_instanced ------------------------- */ - -#ifndef GL_NV_draw_instanced -#define GL_NV_draw_instanced 1 - -typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDNVPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); -typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDNVPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); - -#define glDrawArraysInstancedNV GLEW_GET_FUN(__glewDrawArraysInstancedNV) -#define glDrawElementsInstancedNV GLEW_GET_FUN(__glewDrawElementsInstancedNV) - -#define GLEW_NV_draw_instanced GLEW_GET_VAR(__GLEW_NV_draw_instanced) - -#endif /* GL_NV_draw_instanced */ - -/* --------------------------- GL_NV_draw_texture -------------------------- */ - -#ifndef GL_NV_draw_texture -#define GL_NV_draw_texture 1 - -typedef void (GLAPIENTRY * PFNGLDRAWTEXTURENVPROC) (GLuint texture, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1); - -#define glDrawTextureNV GLEW_GET_FUN(__glewDrawTextureNV) - -#define GLEW_NV_draw_texture GLEW_GET_VAR(__GLEW_NV_draw_texture) - -#endif /* GL_NV_draw_texture */ - -/* ------------------------ GL_NV_draw_vulkan_image ------------------------ */ - -#ifndef GL_NV_draw_vulkan_image -#define GL_NV_draw_vulkan_image 1 - -typedef void (APIENTRY *GLVULKANPROCNV)(void); - -typedef void (GLAPIENTRY * PFNGLDRAWVKIMAGENVPROC) (GLuint64 vkImage, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1); -typedef GLVULKANPROCNV (GLAPIENTRY * PFNGLGETVKPROCADDRNVPROC) (const GLchar* name); -typedef void (GLAPIENTRY * PFNGLSIGNALVKFENCENVPROC) (GLuint64 vkFence); -typedef void (GLAPIENTRY * PFNGLSIGNALVKSEMAPHORENVPROC) (GLuint64 vkSemaphore); -typedef void (GLAPIENTRY * PFNGLWAITVKSEMAPHORENVPROC) (GLuint64 vkSemaphore); - -#define glDrawVkImageNV GLEW_GET_FUN(__glewDrawVkImageNV) -#define glGetVkProcAddrNV GLEW_GET_FUN(__glewGetVkProcAddrNV) -#define glSignalVkFenceNV GLEW_GET_FUN(__glewSignalVkFenceNV) -#define glSignalVkSemaphoreNV GLEW_GET_FUN(__glewSignalVkSemaphoreNV) -#define glWaitVkSemaphoreNV GLEW_GET_FUN(__glewWaitVkSemaphoreNV) - -#define GLEW_NV_draw_vulkan_image GLEW_GET_VAR(__GLEW_NV_draw_vulkan_image) - -#endif /* GL_NV_draw_vulkan_image */ - -/* ---------------------------- GL_NV_evaluators --------------------------- */ - -#ifndef GL_NV_evaluators -#define GL_NV_evaluators 1 - -#define GL_EVAL_2D_NV 0x86C0 -#define GL_EVAL_TRIANGULAR_2D_NV 0x86C1 -#define GL_MAP_TESSELLATION_NV 0x86C2 -#define GL_MAP_ATTRIB_U_ORDER_NV 0x86C3 -#define GL_MAP_ATTRIB_V_ORDER_NV 0x86C4 -#define GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5 -#define GL_EVAL_VERTEX_ATTRIB0_NV 0x86C6 -#define GL_EVAL_VERTEX_ATTRIB1_NV 0x86C7 -#define GL_EVAL_VERTEX_ATTRIB2_NV 0x86C8 -#define GL_EVAL_VERTEX_ATTRIB3_NV 0x86C9 -#define GL_EVAL_VERTEX_ATTRIB4_NV 0x86CA -#define GL_EVAL_VERTEX_ATTRIB5_NV 0x86CB -#define GL_EVAL_VERTEX_ATTRIB6_NV 0x86CC -#define GL_EVAL_VERTEX_ATTRIB7_NV 0x86CD -#define GL_EVAL_VERTEX_ATTRIB8_NV 0x86CE -#define GL_EVAL_VERTEX_ATTRIB9_NV 0x86CF -#define GL_EVAL_VERTEX_ATTRIB10_NV 0x86D0 -#define GL_EVAL_VERTEX_ATTRIB11_NV 0x86D1 -#define GL_EVAL_VERTEX_ATTRIB12_NV 0x86D2 -#define GL_EVAL_VERTEX_ATTRIB13_NV 0x86D3 -#define GL_EVAL_VERTEX_ATTRIB14_NV 0x86D4 -#define GL_EVAL_VERTEX_ATTRIB15_NV 0x86D5 -#define GL_MAX_MAP_TESSELLATION_NV 0x86D6 -#define GL_MAX_RATIONAL_EVAL_ORDER_NV 0x86D7 - -typedef void (GLAPIENTRY * PFNGLEVALMAPSNVPROC) (GLenum target, GLenum mode); -typedef void (GLAPIENTRY * PFNGLGETMAPATTRIBPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETMAPATTRIBPARAMETERIVNVPROC) (GLenum target, GLuint index, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, void *points); -typedef void (GLAPIENTRY * PFNGLGETMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const void *points); -typedef void (GLAPIENTRY * PFNGLMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, const GLint* params); - -#define glEvalMapsNV GLEW_GET_FUN(__glewEvalMapsNV) -#define glGetMapAttribParameterfvNV GLEW_GET_FUN(__glewGetMapAttribParameterfvNV) -#define glGetMapAttribParameterivNV GLEW_GET_FUN(__glewGetMapAttribParameterivNV) -#define glGetMapControlPointsNV GLEW_GET_FUN(__glewGetMapControlPointsNV) -#define glGetMapParameterfvNV GLEW_GET_FUN(__glewGetMapParameterfvNV) -#define glGetMapParameterivNV GLEW_GET_FUN(__glewGetMapParameterivNV) -#define glMapControlPointsNV GLEW_GET_FUN(__glewMapControlPointsNV) -#define glMapParameterfvNV GLEW_GET_FUN(__glewMapParameterfvNV) -#define glMapParameterivNV GLEW_GET_FUN(__glewMapParameterivNV) - -#define GLEW_NV_evaluators GLEW_GET_VAR(__GLEW_NV_evaluators) - -#endif /* GL_NV_evaluators */ - -/* --------------------- GL_NV_explicit_attrib_location -------------------- */ - -#ifndef GL_NV_explicit_attrib_location -#define GL_NV_explicit_attrib_location 1 - -#define GLEW_NV_explicit_attrib_location GLEW_GET_VAR(__GLEW_NV_explicit_attrib_location) - -#endif /* GL_NV_explicit_attrib_location */ - -/* ----------------------- GL_NV_explicit_multisample ---------------------- */ - -#ifndef GL_NV_explicit_multisample -#define GL_NV_explicit_multisample 1 - -#define GL_SAMPLE_POSITION_NV 0x8E50 -#define GL_SAMPLE_MASK_NV 0x8E51 -#define GL_SAMPLE_MASK_VALUE_NV 0x8E52 -#define GL_TEXTURE_BINDING_RENDERBUFFER_NV 0x8E53 -#define GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV 0x8E54 -#define GL_TEXTURE_RENDERBUFFER_NV 0x8E55 -#define GL_SAMPLER_RENDERBUFFER_NV 0x8E56 -#define GL_INT_SAMPLER_RENDERBUFFER_NV 0x8E57 -#define GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV 0x8E58 -#define GL_MAX_SAMPLE_MASK_WORDS_NV 0x8E59 - -typedef void (GLAPIENTRY * PFNGLGETMULTISAMPLEFVNVPROC) (GLenum pname, GLuint index, GLfloat* val); -typedef void (GLAPIENTRY * PFNGLSAMPLEMASKINDEXEDNVPROC) (GLuint index, GLbitfield mask); -typedef void (GLAPIENTRY * PFNGLTEXRENDERBUFFERNVPROC) (GLenum target, GLuint renderbuffer); - -#define glGetMultisamplefvNV GLEW_GET_FUN(__glewGetMultisamplefvNV) -#define glSampleMaskIndexedNV GLEW_GET_FUN(__glewSampleMaskIndexedNV) -#define glTexRenderbufferNV GLEW_GET_FUN(__glewTexRenderbufferNV) - -#define GLEW_NV_explicit_multisample GLEW_GET_VAR(__GLEW_NV_explicit_multisample) - -#endif /* GL_NV_explicit_multisample */ - -/* ---------------------- GL_NV_fbo_color_attachments ---------------------- */ - -#ifndef GL_NV_fbo_color_attachments -#define GL_NV_fbo_color_attachments 1 - -#define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF -#define GL_COLOR_ATTACHMENT0_NV 0x8CE0 -#define GL_COLOR_ATTACHMENT1_NV 0x8CE1 -#define GL_COLOR_ATTACHMENT2_NV 0x8CE2 -#define GL_COLOR_ATTACHMENT3_NV 0x8CE3 -#define GL_COLOR_ATTACHMENT4_NV 0x8CE4 -#define GL_COLOR_ATTACHMENT5_NV 0x8CE5 -#define GL_COLOR_ATTACHMENT6_NV 0x8CE6 -#define GL_COLOR_ATTACHMENT7_NV 0x8CE7 -#define GL_COLOR_ATTACHMENT8_NV 0x8CE8 -#define GL_COLOR_ATTACHMENT9_NV 0x8CE9 -#define GL_COLOR_ATTACHMENT10_NV 0x8CEA -#define GL_COLOR_ATTACHMENT11_NV 0x8CEB -#define GL_COLOR_ATTACHMENT12_NV 0x8CEC -#define GL_COLOR_ATTACHMENT13_NV 0x8CED -#define GL_COLOR_ATTACHMENT14_NV 0x8CEE -#define GL_COLOR_ATTACHMENT15_NV 0x8CEF - -#define GLEW_NV_fbo_color_attachments GLEW_GET_VAR(__GLEW_NV_fbo_color_attachments) - -#endif /* GL_NV_fbo_color_attachments */ - -/* ------------------------------ GL_NV_fence ------------------------------ */ - -#ifndef GL_NV_fence -#define GL_NV_fence 1 - -#define GL_ALL_COMPLETED_NV 0x84F2 -#define GL_FENCE_STATUS_NV 0x84F3 -#define GL_FENCE_CONDITION_NV 0x84F4 - -typedef void (GLAPIENTRY * PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint* fences); -typedef void (GLAPIENTRY * PFNGLFINISHFENCENVPROC) (GLuint fence); -typedef void (GLAPIENTRY * PFNGLGENFENCESNVPROC) (GLsizei n, GLuint* fences); -typedef void (GLAPIENTRY * PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISFENCENVPROC) (GLuint fence); -typedef void (GLAPIENTRY * PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); -typedef GLboolean (GLAPIENTRY * PFNGLTESTFENCENVPROC) (GLuint fence); - -#define glDeleteFencesNV GLEW_GET_FUN(__glewDeleteFencesNV) -#define glFinishFenceNV GLEW_GET_FUN(__glewFinishFenceNV) -#define glGenFencesNV GLEW_GET_FUN(__glewGenFencesNV) -#define glGetFenceivNV GLEW_GET_FUN(__glewGetFenceivNV) -#define glIsFenceNV GLEW_GET_FUN(__glewIsFenceNV) -#define glSetFenceNV GLEW_GET_FUN(__glewSetFenceNV) -#define glTestFenceNV GLEW_GET_FUN(__glewTestFenceNV) - -#define GLEW_NV_fence GLEW_GET_VAR(__GLEW_NV_fence) - -#endif /* GL_NV_fence */ - -/* -------------------------- GL_NV_fill_rectangle ------------------------- */ - -#ifndef GL_NV_fill_rectangle -#define GL_NV_fill_rectangle 1 - -#define GL_FILL_RECTANGLE_NV 0x933C - -#define GLEW_NV_fill_rectangle GLEW_GET_VAR(__GLEW_NV_fill_rectangle) - -#endif /* GL_NV_fill_rectangle */ - -/* --------------------------- GL_NV_float_buffer -------------------------- */ - -#ifndef GL_NV_float_buffer -#define GL_NV_float_buffer 1 - -#define GL_FLOAT_R_NV 0x8880 -#define GL_FLOAT_RG_NV 0x8881 -#define GL_FLOAT_RGB_NV 0x8882 -#define GL_FLOAT_RGBA_NV 0x8883 -#define GL_FLOAT_R16_NV 0x8884 -#define GL_FLOAT_R32_NV 0x8885 -#define GL_FLOAT_RG16_NV 0x8886 -#define GL_FLOAT_RG32_NV 0x8887 -#define GL_FLOAT_RGB16_NV 0x8888 -#define GL_FLOAT_RGB32_NV 0x8889 -#define GL_FLOAT_RGBA16_NV 0x888A -#define GL_FLOAT_RGBA32_NV 0x888B -#define GL_TEXTURE_FLOAT_COMPONENTS_NV 0x888C -#define GL_FLOAT_CLEAR_COLOR_VALUE_NV 0x888D -#define GL_FLOAT_RGBA_MODE_NV 0x888E - -#define GLEW_NV_float_buffer GLEW_GET_VAR(__GLEW_NV_float_buffer) - -#endif /* GL_NV_float_buffer */ - -/* --------------------------- GL_NV_fog_distance -------------------------- */ - -#ifndef GL_NV_fog_distance -#define GL_NV_fog_distance 1 - -#define GL_FOG_DISTANCE_MODE_NV 0x855A -#define GL_EYE_RADIAL_NV 0x855B -#define GL_EYE_PLANE_ABSOLUTE_NV 0x855C - -#define GLEW_NV_fog_distance GLEW_GET_VAR(__GLEW_NV_fog_distance) - -#endif /* GL_NV_fog_distance */ - -/* -------------------- GL_NV_fragment_coverage_to_color ------------------- */ - -#ifndef GL_NV_fragment_coverage_to_color -#define GL_NV_fragment_coverage_to_color 1 - -#define GL_FRAGMENT_COVERAGE_TO_COLOR_NV 0x92DD -#define GL_FRAGMENT_COVERAGE_COLOR_NV 0x92DE - -typedef void (GLAPIENTRY * PFNGLFRAGMENTCOVERAGECOLORNVPROC) (GLuint color); - -#define glFragmentCoverageColorNV GLEW_GET_FUN(__glewFragmentCoverageColorNV) - -#define GLEW_NV_fragment_coverage_to_color GLEW_GET_VAR(__GLEW_NV_fragment_coverage_to_color) - -#endif /* GL_NV_fragment_coverage_to_color */ - -/* ------------------------- GL_NV_fragment_program ------------------------ */ - -#ifndef GL_NV_fragment_program -#define GL_NV_fragment_program 1 - -#define GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868 -#define GL_FRAGMENT_PROGRAM_NV 0x8870 -#define GL_MAX_TEXTURE_COORDS_NV 0x8871 -#define GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872 -#define GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873 -#define GL_PROGRAM_ERROR_STRING_NV 0x8874 - -typedef void (GLAPIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLdouble *params); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLfloat *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, const GLdouble v[]); -typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, const GLfloat v[]); - -#define glGetProgramNamedParameterdvNV GLEW_GET_FUN(__glewGetProgramNamedParameterdvNV) -#define glGetProgramNamedParameterfvNV GLEW_GET_FUN(__glewGetProgramNamedParameterfvNV) -#define glProgramNamedParameter4dNV GLEW_GET_FUN(__glewProgramNamedParameter4dNV) -#define glProgramNamedParameter4dvNV GLEW_GET_FUN(__glewProgramNamedParameter4dvNV) -#define glProgramNamedParameter4fNV GLEW_GET_FUN(__glewProgramNamedParameter4fNV) -#define glProgramNamedParameter4fvNV GLEW_GET_FUN(__glewProgramNamedParameter4fvNV) - -#define GLEW_NV_fragment_program GLEW_GET_VAR(__GLEW_NV_fragment_program) - -#endif /* GL_NV_fragment_program */ - -/* ------------------------ GL_NV_fragment_program2 ------------------------ */ - -#ifndef GL_NV_fragment_program2 -#define GL_NV_fragment_program2 1 - -#define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4 -#define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5 -#define GL_MAX_PROGRAM_IF_DEPTH_NV 0x88F6 -#define GL_MAX_PROGRAM_LOOP_DEPTH_NV 0x88F7 -#define GL_MAX_PROGRAM_LOOP_COUNT_NV 0x88F8 - -#define GLEW_NV_fragment_program2 GLEW_GET_VAR(__GLEW_NV_fragment_program2) - -#endif /* GL_NV_fragment_program2 */ - -/* ------------------------ GL_NV_fragment_program4 ------------------------ */ - -#ifndef GL_NV_fragment_program4 -#define GL_NV_fragment_program4 1 - -#define GLEW_NV_fragment_program4 GLEW_GET_VAR(__GLEW_NV_fragment_program4) - -#endif /* GL_NV_fragment_program4 */ - -/* --------------------- GL_NV_fragment_program_option --------------------- */ - -#ifndef GL_NV_fragment_program_option -#define GL_NV_fragment_program_option 1 - -#define GLEW_NV_fragment_program_option GLEW_GET_VAR(__GLEW_NV_fragment_program_option) - -#endif /* GL_NV_fragment_program_option */ - -/* ------------------- GL_NV_fragment_shader_barycentric ------------------- */ - -#ifndef GL_NV_fragment_shader_barycentric -#define GL_NV_fragment_shader_barycentric 1 - -#define GLEW_NV_fragment_shader_barycentric GLEW_GET_VAR(__GLEW_NV_fragment_shader_barycentric) - -#endif /* GL_NV_fragment_shader_barycentric */ - -/* -------------------- GL_NV_fragment_shader_interlock -------------------- */ - -#ifndef GL_NV_fragment_shader_interlock -#define GL_NV_fragment_shader_interlock 1 - -#define GLEW_NV_fragment_shader_interlock GLEW_GET_VAR(__GLEW_NV_fragment_shader_interlock) - -#endif /* GL_NV_fragment_shader_interlock */ - -/* ------------------------- GL_NV_framebuffer_blit ------------------------ */ - -#ifndef GL_NV_framebuffer_blit -#define GL_NV_framebuffer_blit 1 - -#define GL_DRAW_FRAMEBUFFER_BINDING_NV 0x8CA6 -#define GL_READ_FRAMEBUFFER_NV 0x8CA8 -#define GL_DRAW_FRAMEBUFFER_NV 0x8CA9 -#define GL_READ_FRAMEBUFFER_BINDING_NV 0x8CAA - -typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFERNVPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); - -#define glBlitFramebufferNV GLEW_GET_FUN(__glewBlitFramebufferNV) - -#define GLEW_NV_framebuffer_blit GLEW_GET_VAR(__GLEW_NV_framebuffer_blit) - -#endif /* GL_NV_framebuffer_blit */ - -/* -------------------- GL_NV_framebuffer_mixed_samples -------------------- */ - -#ifndef GL_NV_framebuffer_mixed_samples -#define GL_NV_framebuffer_mixed_samples 1 - -#define GL_COLOR_SAMPLES_NV 0x8E20 -#define GL_RASTER_MULTISAMPLE_EXT 0x9327 -#define GL_RASTER_SAMPLES_EXT 0x9328 -#define GL_MAX_RASTER_SAMPLES_EXT 0x9329 -#define GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT 0x932A -#define GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT 0x932B -#define GL_EFFECTIVE_RASTER_SAMPLES_EXT 0x932C -#define GL_DEPTH_SAMPLES_NV 0x932D -#define GL_STENCIL_SAMPLES_NV 0x932E -#define GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV 0x932F -#define GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV 0x9330 -#define GL_COVERAGE_MODULATION_TABLE_NV 0x9331 -#define GL_COVERAGE_MODULATION_NV 0x9332 -#define GL_COVERAGE_MODULATION_TABLE_SIZE_NV 0x9333 - -#define GLEW_NV_framebuffer_mixed_samples GLEW_GET_VAR(__GLEW_NV_framebuffer_mixed_samples) - -#endif /* GL_NV_framebuffer_mixed_samples */ - -/* --------------------- GL_NV_framebuffer_multisample --------------------- */ - -#ifndef GL_NV_framebuffer_multisample -#define GL_NV_framebuffer_multisample 1 - -#define GL_RENDERBUFFER_SAMPLES_NV 0x8CAB -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV 0x8D56 -#define GL_MAX_SAMPLES_NV 0x8D57 - -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLENVPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); - -#define glRenderbufferStorageMultisampleNV GLEW_GET_FUN(__glewRenderbufferStorageMultisampleNV) - -#define GLEW_NV_framebuffer_multisample GLEW_GET_VAR(__GLEW_NV_framebuffer_multisample) - -#endif /* GL_NV_framebuffer_multisample */ - -/* ----------------- GL_NV_framebuffer_multisample_coverage ---------------- */ - -#ifndef GL_NV_framebuffer_multisample_coverage -#define GL_NV_framebuffer_multisample_coverage 1 - -#define GL_RENDERBUFFER_COVERAGE_SAMPLES_NV 0x8CAB -#define GL_RENDERBUFFER_COLOR_SAMPLES_NV 0x8E10 -#define GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV 0x8E11 -#define GL_MULTISAMPLE_COVERAGE_MODES_NV 0x8E12 - -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height); - -#define glRenderbufferStorageMultisampleCoverageNV GLEW_GET_FUN(__glewRenderbufferStorageMultisampleCoverageNV) - -#define GLEW_NV_framebuffer_multisample_coverage GLEW_GET_VAR(__GLEW_NV_framebuffer_multisample_coverage) - -#endif /* GL_NV_framebuffer_multisample_coverage */ - -/* ----------------------- GL_NV_generate_mipmap_sRGB ---------------------- */ - -#ifndef GL_NV_generate_mipmap_sRGB -#define GL_NV_generate_mipmap_sRGB 1 - -#define GLEW_NV_generate_mipmap_sRGB GLEW_GET_VAR(__GLEW_NV_generate_mipmap_sRGB) - -#endif /* GL_NV_generate_mipmap_sRGB */ - -/* ------------------------ GL_NV_geometry_program4 ------------------------ */ - -#ifndef GL_NV_geometry_program4 -#define GL_NV_geometry_program4 1 - -#define GL_GEOMETRY_PROGRAM_NV 0x8C26 -#define GL_MAX_PROGRAM_OUTPUT_VERTICES_NV 0x8C27 -#define GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV 0x8C28 - -typedef void (GLAPIENTRY * PFNGLPROGRAMVERTEXLIMITNVPROC) (GLenum target, GLint limit); - -#define glProgramVertexLimitNV GLEW_GET_FUN(__glewProgramVertexLimitNV) - -#define GLEW_NV_geometry_program4 GLEW_GET_VAR(__GLEW_NV_geometry_program4) - -#endif /* GL_NV_geometry_program4 */ - -/* ------------------------- GL_NV_geometry_shader4 ------------------------ */ - -#ifndef GL_NV_geometry_shader4 -#define GL_NV_geometry_shader4 1 - -#define GLEW_NV_geometry_shader4 GLEW_GET_VAR(__GLEW_NV_geometry_shader4) - -#endif /* GL_NV_geometry_shader4 */ - -/* ------------------- GL_NV_geometry_shader_passthrough ------------------- */ - -#ifndef GL_NV_geometry_shader_passthrough -#define GL_NV_geometry_shader_passthrough 1 - -#define GLEW_NV_geometry_shader_passthrough GLEW_GET_VAR(__GLEW_NV_geometry_shader_passthrough) - -#endif /* GL_NV_geometry_shader_passthrough */ - -/* -------------------------- GL_NV_gpu_multicast -------------------------- */ - -#ifndef GL_NV_gpu_multicast -#define GL_NV_gpu_multicast 1 - -#define GL_PER_GPU_STORAGE_BIT_NV 0x0800 -#define GL_MULTICAST_GPUS_NV 0x92BA -#define GL_PER_GPU_STORAGE_NV 0x9548 -#define GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9549 -#define GL_RENDER_GPU_MASK_NV 0x9558 - -typedef void (GLAPIENTRY * PFNGLMULTICASTBARRIERNVPROC) (void); -typedef void (GLAPIENTRY * PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -typedef void (GLAPIENTRY * PFNGLMULTICASTBUFFERSUBDATANVPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (GLAPIENTRY * PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -typedef void (GLAPIENTRY * PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); -typedef void (GLAPIENTRY * PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint64* params); -typedef void (GLAPIENTRY * PFNGLMULTICASTGETQUERYOBJECTIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint64* params); -typedef void (GLAPIENTRY * PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGpu, GLbitfield waitGpuMask); -typedef void (GLAPIENTRY * PFNGLRENDERGPUMASKNVPROC) (GLbitfield mask); - -#define glMulticastBarrierNV GLEW_GET_FUN(__glewMulticastBarrierNV) -#define glMulticastBlitFramebufferNV GLEW_GET_FUN(__glewMulticastBlitFramebufferNV) -#define glMulticastBufferSubDataNV GLEW_GET_FUN(__glewMulticastBufferSubDataNV) -#define glMulticastCopyBufferSubDataNV GLEW_GET_FUN(__glewMulticastCopyBufferSubDataNV) -#define glMulticastCopyImageSubDataNV GLEW_GET_FUN(__glewMulticastCopyImageSubDataNV) -#define glMulticastFramebufferSampleLocationsfvNV GLEW_GET_FUN(__glewMulticastFramebufferSampleLocationsfvNV) -#define glMulticastGetQueryObjecti64vNV GLEW_GET_FUN(__glewMulticastGetQueryObjecti64vNV) -#define glMulticastGetQueryObjectivNV GLEW_GET_FUN(__glewMulticastGetQueryObjectivNV) -#define glMulticastGetQueryObjectui64vNV GLEW_GET_FUN(__glewMulticastGetQueryObjectui64vNV) -#define glMulticastGetQueryObjectuivNV GLEW_GET_FUN(__glewMulticastGetQueryObjectuivNV) -#define glMulticastWaitSyncNV GLEW_GET_FUN(__glewMulticastWaitSyncNV) -#define glRenderGpuMaskNV GLEW_GET_FUN(__glewRenderGpuMaskNV) - -#define GLEW_NV_gpu_multicast GLEW_GET_VAR(__GLEW_NV_gpu_multicast) - -#endif /* GL_NV_gpu_multicast */ - -/* --------------------------- GL_NV_gpu_program4 -------------------------- */ - -#ifndef GL_NV_gpu_program4 -#define GL_NV_gpu_program4 1 - -#define GL_MIN_PROGRAM_TEXEL_OFFSET_NV 0x8904 -#define GL_MAX_PROGRAM_TEXEL_OFFSET_NV 0x8905 -#define GL_PROGRAM_ATTRIB_COMPONENTS_NV 0x8906 -#define GL_PROGRAM_RESULT_COMPONENTS_NV 0x8907 -#define GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV 0x8908 -#define GL_MAX_PROGRAM_RESULT_COMPONENTS_NV 0x8909 -#define GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV 0x8DA5 -#define GL_MAX_PROGRAM_GENERIC_RESULTS_NV 0x8DA6 - -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params); - -#define glProgramEnvParameterI4iNV GLEW_GET_FUN(__glewProgramEnvParameterI4iNV) -#define glProgramEnvParameterI4ivNV GLEW_GET_FUN(__glewProgramEnvParameterI4ivNV) -#define glProgramEnvParameterI4uiNV GLEW_GET_FUN(__glewProgramEnvParameterI4uiNV) -#define glProgramEnvParameterI4uivNV GLEW_GET_FUN(__glewProgramEnvParameterI4uivNV) -#define glProgramEnvParametersI4ivNV GLEW_GET_FUN(__glewProgramEnvParametersI4ivNV) -#define glProgramEnvParametersI4uivNV GLEW_GET_FUN(__glewProgramEnvParametersI4uivNV) -#define glProgramLocalParameterI4iNV GLEW_GET_FUN(__glewProgramLocalParameterI4iNV) -#define glProgramLocalParameterI4ivNV GLEW_GET_FUN(__glewProgramLocalParameterI4ivNV) -#define glProgramLocalParameterI4uiNV GLEW_GET_FUN(__glewProgramLocalParameterI4uiNV) -#define glProgramLocalParameterI4uivNV GLEW_GET_FUN(__glewProgramLocalParameterI4uivNV) -#define glProgramLocalParametersI4ivNV GLEW_GET_FUN(__glewProgramLocalParametersI4ivNV) -#define glProgramLocalParametersI4uivNV GLEW_GET_FUN(__glewProgramLocalParametersI4uivNV) - -#define GLEW_NV_gpu_program4 GLEW_GET_VAR(__GLEW_NV_gpu_program4) - -#endif /* GL_NV_gpu_program4 */ - -/* --------------------------- GL_NV_gpu_program5 -------------------------- */ - -#ifndef GL_NV_gpu_program5 -#define GL_NV_gpu_program5 1 - -#define GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV 0x8E5A -#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5B -#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5C -#define GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV 0x8E5D -#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV 0x8E5E -#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV 0x8E5F - -#define GLEW_NV_gpu_program5 GLEW_GET_VAR(__GLEW_NV_gpu_program5) - -#endif /* GL_NV_gpu_program5 */ - -/* -------------------- GL_NV_gpu_program5_mem_extended -------------------- */ - -#ifndef GL_NV_gpu_program5_mem_extended -#define GL_NV_gpu_program5_mem_extended 1 - -#define GLEW_NV_gpu_program5_mem_extended GLEW_GET_VAR(__GLEW_NV_gpu_program5_mem_extended) - -#endif /* GL_NV_gpu_program5_mem_extended */ - -/* ------------------------- GL_NV_gpu_program_fp64 ------------------------ */ - -#ifndef GL_NV_gpu_program_fp64 -#define GL_NV_gpu_program_fp64 1 - -#define GLEW_NV_gpu_program_fp64 GLEW_GET_VAR(__GLEW_NV_gpu_program_fp64) - -#endif /* GL_NV_gpu_program_fp64 */ - -/* --------------------------- GL_NV_gpu_shader5 --------------------------- */ - -#ifndef GL_NV_gpu_shader5 -#define GL_NV_gpu_shader5 1 - -#define GL_INT64_NV 0x140E -#define GL_UNSIGNED_INT64_NV 0x140F -#define GL_INT8_NV 0x8FE0 -#define GL_INT8_VEC2_NV 0x8FE1 -#define GL_INT8_VEC3_NV 0x8FE2 -#define GL_INT8_VEC4_NV 0x8FE3 -#define GL_INT16_NV 0x8FE4 -#define GL_INT16_VEC2_NV 0x8FE5 -#define GL_INT16_VEC3_NV 0x8FE6 -#define GL_INT16_VEC4_NV 0x8FE7 -#define GL_INT64_VEC2_NV 0x8FE9 -#define GL_INT64_VEC3_NV 0x8FEA -#define GL_INT64_VEC4_NV 0x8FEB -#define GL_UNSIGNED_INT8_NV 0x8FEC -#define GL_UNSIGNED_INT8_VEC2_NV 0x8FED -#define GL_UNSIGNED_INT8_VEC3_NV 0x8FEE -#define GL_UNSIGNED_INT8_VEC4_NV 0x8FEF -#define GL_UNSIGNED_INT16_NV 0x8FF0 -#define GL_UNSIGNED_INT16_VEC2_NV 0x8FF1 -#define GL_UNSIGNED_INT16_VEC3_NV 0x8FF2 -#define GL_UNSIGNED_INT16_VEC4_NV 0x8FF3 -#define GL_UNSIGNED_INT64_VEC2_NV 0x8FF5 -#define GL_UNSIGNED_INT64_VEC3_NV 0x8FF6 -#define GL_UNSIGNED_INT64_VEC4_NV 0x8FF7 -#define GL_FLOAT16_NV 0x8FF8 -#define GL_FLOAT16_VEC2_NV 0x8FF9 -#define GL_FLOAT16_VEC3_NV 0x8FFA -#define GL_FLOAT16_VEC4_NV 0x8FFB - -typedef void (GLAPIENTRY * PFNGLGETUNIFORMI64VNVPROC) (GLuint program, GLint location, GLint64EXT* params); -typedef void (GLAPIENTRY * PFNGLGETUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLuint64EXT* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64NVPROC) (GLuint program, GLint location, GLint64EXT x); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM1I64NVPROC) (GLint location, GLint64EXT x); -typedef void (GLAPIENTRY * PFNGLUNIFORM1I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64NVPROC) (GLint location, GLuint64EXT x); -typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y); -typedef void (GLAPIENTRY * PFNGLUNIFORM2I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y); -typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z); -typedef void (GLAPIENTRY * PFNGLUNIFORM3I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z); -typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w); -typedef void (GLAPIENTRY * PFNGLUNIFORM4I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w); -typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); - -#define glGetUniformi64vNV GLEW_GET_FUN(__glewGetUniformi64vNV) -#define glGetUniformui64vNV GLEW_GET_FUN(__glewGetUniformui64vNV) -#define glProgramUniform1i64NV GLEW_GET_FUN(__glewProgramUniform1i64NV) -#define glProgramUniform1i64vNV GLEW_GET_FUN(__glewProgramUniform1i64vNV) -#define glProgramUniform1ui64NV GLEW_GET_FUN(__glewProgramUniform1ui64NV) -#define glProgramUniform1ui64vNV GLEW_GET_FUN(__glewProgramUniform1ui64vNV) -#define glProgramUniform2i64NV GLEW_GET_FUN(__glewProgramUniform2i64NV) -#define glProgramUniform2i64vNV GLEW_GET_FUN(__glewProgramUniform2i64vNV) -#define glProgramUniform2ui64NV GLEW_GET_FUN(__glewProgramUniform2ui64NV) -#define glProgramUniform2ui64vNV GLEW_GET_FUN(__glewProgramUniform2ui64vNV) -#define glProgramUniform3i64NV GLEW_GET_FUN(__glewProgramUniform3i64NV) -#define glProgramUniform3i64vNV GLEW_GET_FUN(__glewProgramUniform3i64vNV) -#define glProgramUniform3ui64NV GLEW_GET_FUN(__glewProgramUniform3ui64NV) -#define glProgramUniform3ui64vNV GLEW_GET_FUN(__glewProgramUniform3ui64vNV) -#define glProgramUniform4i64NV GLEW_GET_FUN(__glewProgramUniform4i64NV) -#define glProgramUniform4i64vNV GLEW_GET_FUN(__glewProgramUniform4i64vNV) -#define glProgramUniform4ui64NV GLEW_GET_FUN(__glewProgramUniform4ui64NV) -#define glProgramUniform4ui64vNV GLEW_GET_FUN(__glewProgramUniform4ui64vNV) -#define glUniform1i64NV GLEW_GET_FUN(__glewUniform1i64NV) -#define glUniform1i64vNV GLEW_GET_FUN(__glewUniform1i64vNV) -#define glUniform1ui64NV GLEW_GET_FUN(__glewUniform1ui64NV) -#define glUniform1ui64vNV GLEW_GET_FUN(__glewUniform1ui64vNV) -#define glUniform2i64NV GLEW_GET_FUN(__glewUniform2i64NV) -#define glUniform2i64vNV GLEW_GET_FUN(__glewUniform2i64vNV) -#define glUniform2ui64NV GLEW_GET_FUN(__glewUniform2ui64NV) -#define glUniform2ui64vNV GLEW_GET_FUN(__glewUniform2ui64vNV) -#define glUniform3i64NV GLEW_GET_FUN(__glewUniform3i64NV) -#define glUniform3i64vNV GLEW_GET_FUN(__glewUniform3i64vNV) -#define glUniform3ui64NV GLEW_GET_FUN(__glewUniform3ui64NV) -#define glUniform3ui64vNV GLEW_GET_FUN(__glewUniform3ui64vNV) -#define glUniform4i64NV GLEW_GET_FUN(__glewUniform4i64NV) -#define glUniform4i64vNV GLEW_GET_FUN(__glewUniform4i64vNV) -#define glUniform4ui64NV GLEW_GET_FUN(__glewUniform4ui64NV) -#define glUniform4ui64vNV GLEW_GET_FUN(__glewUniform4ui64vNV) - -#define GLEW_NV_gpu_shader5 GLEW_GET_VAR(__GLEW_NV_gpu_shader5) - -#endif /* GL_NV_gpu_shader5 */ - -/* ---------------------------- GL_NV_half_float --------------------------- */ - -#ifndef GL_NV_half_float -#define GL_NV_half_float 1 - -#define GL_HALF_FLOAT_NV 0x140B - -typedef unsigned short GLhalf; - -typedef void (GLAPIENTRY * PFNGLCOLOR3HNVPROC) (GLhalf red, GLhalf green, GLhalf blue); -typedef void (GLAPIENTRY * PFNGLCOLOR3HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLCOLOR4HNVPROC) (GLhalf red, GLhalf green, GLhalf blue, GLhalf alpha); -typedef void (GLAPIENTRY * PFNGLCOLOR4HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLFOGCOORDHNVPROC) (GLhalf fog); -typedef void (GLAPIENTRY * PFNGLFOGCOORDHVNVPROC) (const GLhalf* fog); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1HNVPROC) (GLenum target, GLhalf s); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1HVNVPROC) (GLenum target, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2HNVPROC) (GLenum target, GLhalf s, GLhalf t); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2HVNVPROC) (GLenum target, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3HNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3HVNVPROC) (GLenum target, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4HNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r, GLhalf q); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4HVNVPROC) (GLenum target, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLNORMAL3HNVPROC) (GLhalf nx, GLhalf ny, GLhalf nz); -typedef void (GLAPIENTRY * PFNGLNORMAL3HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3HNVPROC) (GLhalf red, GLhalf green, GLhalf blue); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD1HNVPROC) (GLhalf s); -typedef void (GLAPIENTRY * PFNGLTEXCOORD1HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2HNVPROC) (GLhalf s, GLhalf t); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD3HNVPROC) (GLhalf s, GLhalf t, GLhalf r); -typedef void (GLAPIENTRY * PFNGLTEXCOORD3HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD4HNVPROC) (GLhalf s, GLhalf t, GLhalf r, GLhalf q); -typedef void (GLAPIENTRY * PFNGLTEXCOORD4HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEX2HNVPROC) (GLhalf x, GLhalf y); -typedef void (GLAPIENTRY * PFNGLVERTEX2HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEX3HNVPROC) (GLhalf x, GLhalf y, GLhalf z); -typedef void (GLAPIENTRY * PFNGLVERTEX3HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEX4HNVPROC) (GLhalf x, GLhalf y, GLhalf z, GLhalf w); -typedef void (GLAPIENTRY * PFNGLVERTEX4HVNVPROC) (const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1HNVPROC) (GLuint index, GLhalf x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1HVNVPROC) (GLuint index, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2HNVPROC) (GLuint index, GLhalf x, GLhalf y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2HVNVPROC) (GLuint index, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3HNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3HVNVPROC) (GLuint index, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4HNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z, GLhalf w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4HVNVPROC) (GLuint index, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v); -typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTHNVPROC) (GLhalf weight); -typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTHVNVPROC) (const GLhalf* weight); - -#define glColor3hNV GLEW_GET_FUN(__glewColor3hNV) -#define glColor3hvNV GLEW_GET_FUN(__glewColor3hvNV) -#define glColor4hNV GLEW_GET_FUN(__glewColor4hNV) -#define glColor4hvNV GLEW_GET_FUN(__glewColor4hvNV) -#define glFogCoordhNV GLEW_GET_FUN(__glewFogCoordhNV) -#define glFogCoordhvNV GLEW_GET_FUN(__glewFogCoordhvNV) -#define glMultiTexCoord1hNV GLEW_GET_FUN(__glewMultiTexCoord1hNV) -#define glMultiTexCoord1hvNV GLEW_GET_FUN(__glewMultiTexCoord1hvNV) -#define glMultiTexCoord2hNV GLEW_GET_FUN(__glewMultiTexCoord2hNV) -#define glMultiTexCoord2hvNV GLEW_GET_FUN(__glewMultiTexCoord2hvNV) -#define glMultiTexCoord3hNV GLEW_GET_FUN(__glewMultiTexCoord3hNV) -#define glMultiTexCoord3hvNV GLEW_GET_FUN(__glewMultiTexCoord3hvNV) -#define glMultiTexCoord4hNV GLEW_GET_FUN(__glewMultiTexCoord4hNV) -#define glMultiTexCoord4hvNV GLEW_GET_FUN(__glewMultiTexCoord4hvNV) -#define glNormal3hNV GLEW_GET_FUN(__glewNormal3hNV) -#define glNormal3hvNV GLEW_GET_FUN(__glewNormal3hvNV) -#define glSecondaryColor3hNV GLEW_GET_FUN(__glewSecondaryColor3hNV) -#define glSecondaryColor3hvNV GLEW_GET_FUN(__glewSecondaryColor3hvNV) -#define glTexCoord1hNV GLEW_GET_FUN(__glewTexCoord1hNV) -#define glTexCoord1hvNV GLEW_GET_FUN(__glewTexCoord1hvNV) -#define glTexCoord2hNV GLEW_GET_FUN(__glewTexCoord2hNV) -#define glTexCoord2hvNV GLEW_GET_FUN(__glewTexCoord2hvNV) -#define glTexCoord3hNV GLEW_GET_FUN(__glewTexCoord3hNV) -#define glTexCoord3hvNV GLEW_GET_FUN(__glewTexCoord3hvNV) -#define glTexCoord4hNV GLEW_GET_FUN(__glewTexCoord4hNV) -#define glTexCoord4hvNV GLEW_GET_FUN(__glewTexCoord4hvNV) -#define glVertex2hNV GLEW_GET_FUN(__glewVertex2hNV) -#define glVertex2hvNV GLEW_GET_FUN(__glewVertex2hvNV) -#define glVertex3hNV GLEW_GET_FUN(__glewVertex3hNV) -#define glVertex3hvNV GLEW_GET_FUN(__glewVertex3hvNV) -#define glVertex4hNV GLEW_GET_FUN(__glewVertex4hNV) -#define glVertex4hvNV GLEW_GET_FUN(__glewVertex4hvNV) -#define glVertexAttrib1hNV GLEW_GET_FUN(__glewVertexAttrib1hNV) -#define glVertexAttrib1hvNV GLEW_GET_FUN(__glewVertexAttrib1hvNV) -#define glVertexAttrib2hNV GLEW_GET_FUN(__glewVertexAttrib2hNV) -#define glVertexAttrib2hvNV GLEW_GET_FUN(__glewVertexAttrib2hvNV) -#define glVertexAttrib3hNV GLEW_GET_FUN(__glewVertexAttrib3hNV) -#define glVertexAttrib3hvNV GLEW_GET_FUN(__glewVertexAttrib3hvNV) -#define glVertexAttrib4hNV GLEW_GET_FUN(__glewVertexAttrib4hNV) -#define glVertexAttrib4hvNV GLEW_GET_FUN(__glewVertexAttrib4hvNV) -#define glVertexAttribs1hvNV GLEW_GET_FUN(__glewVertexAttribs1hvNV) -#define glVertexAttribs2hvNV GLEW_GET_FUN(__glewVertexAttribs2hvNV) -#define glVertexAttribs3hvNV GLEW_GET_FUN(__glewVertexAttribs3hvNV) -#define glVertexAttribs4hvNV GLEW_GET_FUN(__glewVertexAttribs4hvNV) -#define glVertexWeighthNV GLEW_GET_FUN(__glewVertexWeighthNV) -#define glVertexWeighthvNV GLEW_GET_FUN(__glewVertexWeighthvNV) - -#define GLEW_NV_half_float GLEW_GET_VAR(__GLEW_NV_half_float) - -#endif /* GL_NV_half_float */ - -/* -------------------------- GL_NV_image_formats -------------------------- */ - -#ifndef GL_NV_image_formats -#define GL_NV_image_formats 1 - -#define GLEW_NV_image_formats GLEW_GET_VAR(__GLEW_NV_image_formats) - -#endif /* GL_NV_image_formats */ - -/* ------------------------- GL_NV_instanced_arrays ------------------------ */ - -#ifndef GL_NV_instanced_arrays -#define GL_NV_instanced_arrays 1 - -#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_NV 0x88FE - -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORNVPROC) (GLuint index, GLuint divisor); - -#define glVertexAttribDivisorNV GLEW_GET_FUN(__glewVertexAttribDivisorNV) - -#define GLEW_NV_instanced_arrays GLEW_GET_VAR(__GLEW_NV_instanced_arrays) - -#endif /* GL_NV_instanced_arrays */ - -/* ------------------- GL_NV_internalformat_sample_query ------------------- */ - -#ifndef GL_NV_internalformat_sample_query -#define GL_NV_internalformat_sample_query 1 - -#define GL_MULTISAMPLES_NV 0x9371 -#define GL_SUPERSAMPLE_SCALE_X_NV 0x9372 -#define GL_SUPERSAMPLE_SCALE_Y_NV 0x9373 -#define GL_CONFORMANT_NV 0x9374 - -typedef void (GLAPIENTRY * PFNGLGETINTERNALFORMATSAMPLEIVNVPROC) (GLenum target, GLenum internalformat, GLsizei samples, GLenum pname, GLsizei bufSize, GLint* params); - -#define glGetInternalformatSampleivNV GLEW_GET_FUN(__glewGetInternalformatSampleivNV) - -#define GLEW_NV_internalformat_sample_query GLEW_GET_VAR(__GLEW_NV_internalformat_sample_query) - -#endif /* GL_NV_internalformat_sample_query */ - -/* ------------------------ GL_NV_light_max_exponent ----------------------- */ - -#ifndef GL_NV_light_max_exponent -#define GL_NV_light_max_exponent 1 - -#define GL_MAX_SHININESS_NV 0x8504 -#define GL_MAX_SPOT_EXPONENT_NV 0x8505 - -#define GLEW_NV_light_max_exponent GLEW_GET_VAR(__GLEW_NV_light_max_exponent) - -#endif /* GL_NV_light_max_exponent */ - -/* ------------------------ GL_NV_memory_attachment ------------------------ */ - -#ifndef GL_NV_memory_attachment -#define GL_NV_memory_attachment 1 - -#define GL_ATTACHED_MEMORY_OBJECT_NV 0x95A4 -#define GL_ATTACHED_MEMORY_OFFSET_NV 0x95A5 -#define GL_MEMORY_ATTACHABLE_ALIGNMENT_NV 0x95A6 -#define GL_MEMORY_ATTACHABLE_SIZE_NV 0x95A7 -#define GL_MEMORY_ATTACHABLE_NV 0x95A8 -#define GL_DETACHED_MEMORY_INCARNATION_NV 0x95A9 -#define GL_DETACHED_TEXTURES_NV 0x95AA -#define GL_DETACHED_BUFFERS_NV 0x95AB -#define GL_MAX_DETACHED_TEXTURES_NV 0x95AC -#define GL_MAX_DETACHED_BUFFERS_NV 0x95AD - -typedef void (GLAPIENTRY * PFNGLBUFFERATTACHMEMORYNVPROC) (GLenum target, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLGETMEMORYOBJECTDETACHEDRESOURCESUIVNVPROC) (GLuint memory, GLenum pname, GLint first, GLsizei count, GLuint* params); -typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERATTACHMEMORYNVPROC) (GLuint buffer, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLRESETMEMORYOBJECTPARAMETERNVPROC) (GLuint memory, GLenum pname); -typedef void (GLAPIENTRY * PFNGLTEXATTACHMEMORYNVPROC) (GLenum target, GLuint memory, GLuint64 offset); -typedef void (GLAPIENTRY * PFNGLTEXTUREATTACHMEMORYNVPROC) (GLuint texture, GLuint memory, GLuint64 offset); - -#define glBufferAttachMemoryNV GLEW_GET_FUN(__glewBufferAttachMemoryNV) -#define glGetMemoryObjectDetachedResourcesuivNV GLEW_GET_FUN(__glewGetMemoryObjectDetachedResourcesuivNV) -#define glNamedBufferAttachMemoryNV GLEW_GET_FUN(__glewNamedBufferAttachMemoryNV) -#define glResetMemoryObjectParameterNV GLEW_GET_FUN(__glewResetMemoryObjectParameterNV) -#define glTexAttachMemoryNV GLEW_GET_FUN(__glewTexAttachMemoryNV) -#define glTextureAttachMemoryNV GLEW_GET_FUN(__glewTextureAttachMemoryNV) - -#define GLEW_NV_memory_attachment GLEW_GET_VAR(__GLEW_NV_memory_attachment) - -#endif /* GL_NV_memory_attachment */ - -/* --------------------------- GL_NV_mesh_shader --------------------------- */ - -#ifndef GL_NV_mesh_shader -#define GL_NV_mesh_shader 1 - -#define GL_MESH_SHADER_BIT_NV 0x00000040 -#define GL_TASK_SHADER_BIT_NV 0x00000080 -#define GL_MAX_MESH_UNIFORM_BLOCKS_NV 0x8E60 -#define GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV 0x8E61 -#define GL_MAX_MESH_IMAGE_UNIFORMS_NV 0x8E62 -#define GL_MAX_MESH_UNIFORM_COMPONENTS_NV 0x8E63 -#define GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV 0x8E64 -#define GL_MAX_MESH_ATOMIC_COUNTERS_NV 0x8E65 -#define GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV 0x8E66 -#define GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV 0x8E67 -#define GL_MAX_TASK_UNIFORM_BLOCKS_NV 0x8E68 -#define GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV 0x8E69 -#define GL_MAX_TASK_IMAGE_UNIFORMS_NV 0x8E6A -#define GL_MAX_TASK_UNIFORM_COMPONENTS_NV 0x8E6B -#define GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV 0x8E6C -#define GL_MAX_TASK_ATOMIC_COUNTERS_NV 0x8E6D -#define GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV 0x8E6E -#define GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV 0x8E6F -#define GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV 0x92DF -#define GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV 0x9536 -#define GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV 0x9537 -#define GL_MAX_MESH_OUTPUT_VERTICES_NV 0x9538 -#define GL_MAX_MESH_OUTPUT_PRIMITIVES_NV 0x9539 -#define GL_MAX_TASK_OUTPUT_COUNT_NV 0x953A -#define GL_MAX_MESH_WORK_GROUP_SIZE_NV 0x953B -#define GL_MAX_TASK_WORK_GROUP_SIZE_NV 0x953C -#define GL_MAX_DRAW_MESH_TASKS_COUNT_NV 0x953D -#define GL_MESH_WORK_GROUP_SIZE_NV 0x953E -#define GL_TASK_WORK_GROUP_SIZE_NV 0x953F -#define GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV 0x9543 -#define GL_MAX_MESH_VIEWS_NV 0x9557 -#define GL_MESH_SHADER_NV 0x9559 -#define GL_TASK_SHADER_NV 0x955A -#define GL_MESH_VERTICES_OUT_NV 0x9579 -#define GL_MESH_PRIMITIVES_OUT_NV 0x957A -#define GL_MESH_OUTPUT_TYPE_NV 0x957B -#define GL_MESH_SUBROUTINE_NV 0x957C -#define GL_TASK_SUBROUTINE_NV 0x957D -#define GL_MESH_SUBROUTINE_UNIFORM_NV 0x957E -#define GL_TASK_SUBROUTINE_UNIFORM_NV 0x957F -#define GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV 0x959C -#define GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV 0x959D -#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV 0x959E -#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV 0x959F -#define GL_REFERENCED_BY_MESH_SHADER_NV 0x95A0 -#define GL_REFERENCED_BY_TASK_SHADER_NV 0x95A1 -#define GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV 0x95A2 -#define GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV 0x95A3 - -typedef void (GLAPIENTRY * PFNGLDRAWMESHTASKSINDIRECTNVPROC) (GLintptr indirect); -typedef void (GLAPIENTRY * PFNGLDRAWMESHTASKSNVPROC) (GLuint first, GLuint count); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWMESHTASKSINDIRECTCOUNTNVPROC) (GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLMULTIDRAWMESHTASKSINDIRECTNVPROC) (GLintptr indirect, GLsizei drawcount, GLsizei stride); - -#define glDrawMeshTasksIndirectNV GLEW_GET_FUN(__glewDrawMeshTasksIndirectNV) -#define glDrawMeshTasksNV GLEW_GET_FUN(__glewDrawMeshTasksNV) -#define glMultiDrawMeshTasksIndirectCountNV GLEW_GET_FUN(__glewMultiDrawMeshTasksIndirectCountNV) -#define glMultiDrawMeshTasksIndirectNV GLEW_GET_FUN(__glewMultiDrawMeshTasksIndirectNV) - -#define GLEW_NV_mesh_shader GLEW_GET_VAR(__GLEW_NV_mesh_shader) - -#endif /* GL_NV_mesh_shader */ - -/* ----------------------- GL_NV_multisample_coverage ---------------------- */ - -#ifndef GL_NV_multisample_coverage -#define GL_NV_multisample_coverage 1 - -#define GL_COLOR_SAMPLES_NV 0x8E20 - -#define GLEW_NV_multisample_coverage GLEW_GET_VAR(__GLEW_NV_multisample_coverage) - -#endif /* GL_NV_multisample_coverage */ - -/* --------------------- GL_NV_multisample_filter_hint --------------------- */ - -#ifndef GL_NV_multisample_filter_hint -#define GL_NV_multisample_filter_hint 1 - -#define GL_MULTISAMPLE_FILTER_HINT_NV 0x8534 - -#define GLEW_NV_multisample_filter_hint GLEW_GET_VAR(__GLEW_NV_multisample_filter_hint) - -#endif /* GL_NV_multisample_filter_hint */ - -/* ----------------------- GL_NV_non_square_matrices ----------------------- */ - -#ifndef GL_NV_non_square_matrices -#define GL_NV_non_square_matrices 1 - -#define GL_FLOAT_MAT2x3_NV 0x8B65 -#define GL_FLOAT_MAT2x4_NV 0x8B66 -#define GL_FLOAT_MAT3x2_NV 0x8B67 -#define GL_FLOAT_MAT3x4_NV 0x8B68 -#define GL_FLOAT_MAT4x2_NV 0x8B69 -#define GL_FLOAT_MAT4x3_NV 0x8B6A - -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3FVNVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); - -#define glUniformMatrix2x3fvNV GLEW_GET_FUN(__glewUniformMatrix2x3fvNV) -#define glUniformMatrix2x4fvNV GLEW_GET_FUN(__glewUniformMatrix2x4fvNV) -#define glUniformMatrix3x2fvNV GLEW_GET_FUN(__glewUniformMatrix3x2fvNV) -#define glUniformMatrix3x4fvNV GLEW_GET_FUN(__glewUniformMatrix3x4fvNV) -#define glUniformMatrix4x2fvNV GLEW_GET_FUN(__glewUniformMatrix4x2fvNV) -#define glUniformMatrix4x3fvNV GLEW_GET_FUN(__glewUniformMatrix4x3fvNV) - -#define GLEW_NV_non_square_matrices GLEW_GET_VAR(__GLEW_NV_non_square_matrices) - -#endif /* GL_NV_non_square_matrices */ - -/* ------------------------- GL_NV_occlusion_query ------------------------- */ - -#ifndef GL_NV_occlusion_query -#define GL_NV_occlusion_query 1 - -#define GL_PIXEL_COUNTER_BITS_NV 0x8864 -#define GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865 -#define GL_PIXEL_COUNT_NV 0x8866 -#define GL_PIXEL_COUNT_AVAILABLE_NV 0x8867 - -typedef void (GLAPIENTRY * PFNGLBEGINOCCLUSIONQUERYNVPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLDELETEOCCLUSIONQUERIESNVPROC) (GLsizei n, const GLuint* ids); -typedef void (GLAPIENTRY * PFNGLENDOCCLUSIONQUERYNVPROC) (void); -typedef void (GLAPIENTRY * PFNGLGENOCCLUSIONQUERIESNVPROC) (GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLGETOCCLUSIONQUERYIVNVPROC) (GLuint id, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pname, GLuint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISOCCLUSIONQUERYNVPROC) (GLuint id); - -#define glBeginOcclusionQueryNV GLEW_GET_FUN(__glewBeginOcclusionQueryNV) -#define glDeleteOcclusionQueriesNV GLEW_GET_FUN(__glewDeleteOcclusionQueriesNV) -#define glEndOcclusionQueryNV GLEW_GET_FUN(__glewEndOcclusionQueryNV) -#define glGenOcclusionQueriesNV GLEW_GET_FUN(__glewGenOcclusionQueriesNV) -#define glGetOcclusionQueryivNV GLEW_GET_FUN(__glewGetOcclusionQueryivNV) -#define glGetOcclusionQueryuivNV GLEW_GET_FUN(__glewGetOcclusionQueryuivNV) -#define glIsOcclusionQueryNV GLEW_GET_FUN(__glewIsOcclusionQueryNV) - -#define GLEW_NV_occlusion_query GLEW_GET_VAR(__GLEW_NV_occlusion_query) - -#endif /* GL_NV_occlusion_query */ - -/* -------------------------- GL_NV_pack_subimage -------------------------- */ - -#ifndef GL_NV_pack_subimage -#define GL_NV_pack_subimage 1 - -#define GL_PACK_ROW_LENGTH_NV 0x0D02 -#define GL_PACK_SKIP_ROWS_NV 0x0D03 -#define GL_PACK_SKIP_PIXELS_NV 0x0D04 - -#define GLEW_NV_pack_subimage GLEW_GET_VAR(__GLEW_NV_pack_subimage) - -#endif /* GL_NV_pack_subimage */ - -/* ----------------------- GL_NV_packed_depth_stencil ---------------------- */ - -#ifndef GL_NV_packed_depth_stencil -#define GL_NV_packed_depth_stencil 1 - -#define GL_DEPTH_STENCIL_NV 0x84F9 -#define GL_UNSIGNED_INT_24_8_NV 0x84FA - -#define GLEW_NV_packed_depth_stencil GLEW_GET_VAR(__GLEW_NV_packed_depth_stencil) - -#endif /* GL_NV_packed_depth_stencil */ - -/* --------------------------- GL_NV_packed_float -------------------------- */ - -#ifndef GL_NV_packed_float -#define GL_NV_packed_float 1 - -#define GL_R11F_G11F_B10F_NV 0x8C3A -#define GL_UNSIGNED_INT_10F_11F_11F_REV_NV 0x8C3B - -#define GLEW_NV_packed_float GLEW_GET_VAR(__GLEW_NV_packed_float) - -#endif /* GL_NV_packed_float */ - -/* ----------------------- GL_NV_packed_float_linear ----------------------- */ - -#ifndef GL_NV_packed_float_linear -#define GL_NV_packed_float_linear 1 - -#define GL_R11F_G11F_B10F_NV 0x8C3A -#define GL_UNSIGNED_INT_10F_11F_11F_REV_NV 0x8C3B - -#define GLEW_NV_packed_float_linear GLEW_GET_VAR(__GLEW_NV_packed_float_linear) - -#endif /* GL_NV_packed_float_linear */ - -/* --------------------- GL_NV_parameter_buffer_object --------------------- */ - -#ifndef GL_NV_parameter_buffer_object -#define GL_NV_parameter_buffer_object 1 - -#define GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV 0x8DA0 -#define GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV 0x8DA1 -#define GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV 0x8DA2 -#define GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV 0x8DA3 -#define GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV 0x8DA4 - -typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params); -typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params); - -#define glProgramBufferParametersIivNV GLEW_GET_FUN(__glewProgramBufferParametersIivNV) -#define glProgramBufferParametersIuivNV GLEW_GET_FUN(__glewProgramBufferParametersIuivNV) -#define glProgramBufferParametersfvNV GLEW_GET_FUN(__glewProgramBufferParametersfvNV) - -#define GLEW_NV_parameter_buffer_object GLEW_GET_VAR(__GLEW_NV_parameter_buffer_object) - -#endif /* GL_NV_parameter_buffer_object */ - -/* --------------------- GL_NV_parameter_buffer_object2 -------------------- */ - -#ifndef GL_NV_parameter_buffer_object2 -#define GL_NV_parameter_buffer_object2 1 - -#define GLEW_NV_parameter_buffer_object2 GLEW_GET_VAR(__GLEW_NV_parameter_buffer_object2) - -#endif /* GL_NV_parameter_buffer_object2 */ - -/* -------------------------- GL_NV_path_rendering ------------------------- */ - -#ifndef GL_NV_path_rendering -#define GL_NV_path_rendering 1 - -#define GL_CLOSE_PATH_NV 0x00 -#define GL_BOLD_BIT_NV 0x01 -#define GL_GLYPH_WIDTH_BIT_NV 0x01 -#define GL_GLYPH_HEIGHT_BIT_NV 0x02 -#define GL_ITALIC_BIT_NV 0x02 -#define GL_MOVE_TO_NV 0x02 -#define GL_RELATIVE_MOVE_TO_NV 0x03 -#define GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV 0x04 -#define GL_LINE_TO_NV 0x04 -#define GL_RELATIVE_LINE_TO_NV 0x05 -#define GL_HORIZONTAL_LINE_TO_NV 0x06 -#define GL_RELATIVE_HORIZONTAL_LINE_TO_NV 0x07 -#define GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV 0x08 -#define GL_VERTICAL_LINE_TO_NV 0x08 -#define GL_RELATIVE_VERTICAL_LINE_TO_NV 0x09 -#define GL_QUADRATIC_CURVE_TO_NV 0x0A -#define GL_RELATIVE_QUADRATIC_CURVE_TO_NV 0x0B -#define GL_CUBIC_CURVE_TO_NV 0x0C -#define GL_RELATIVE_CUBIC_CURVE_TO_NV 0x0D -#define GL_SMOOTH_QUADRATIC_CURVE_TO_NV 0x0E -#define GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV 0x0F -#define GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV 0x10 -#define GL_SMOOTH_CUBIC_CURVE_TO_NV 0x10 -#define GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV 0x11 -#define GL_SMALL_CCW_ARC_TO_NV 0x12 -#define GL_RELATIVE_SMALL_CCW_ARC_TO_NV 0x13 -#define GL_SMALL_CW_ARC_TO_NV 0x14 -#define GL_RELATIVE_SMALL_CW_ARC_TO_NV 0x15 -#define GL_LARGE_CCW_ARC_TO_NV 0x16 -#define GL_RELATIVE_LARGE_CCW_ARC_TO_NV 0x17 -#define GL_LARGE_CW_ARC_TO_NV 0x18 -#define GL_RELATIVE_LARGE_CW_ARC_TO_NV 0x19 -#define GL_CONIC_CURVE_TO_NV 0x1A -#define GL_RELATIVE_CONIC_CURVE_TO_NV 0x1B -#define GL_GLYPH_VERTICAL_BEARING_X_BIT_NV 0x20 -#define GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV 0x40 -#define GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV 0x80 -#define GL_ROUNDED_RECT_NV 0xE8 -#define GL_RELATIVE_ROUNDED_RECT_NV 0xE9 -#define GL_ROUNDED_RECT2_NV 0xEA -#define GL_RELATIVE_ROUNDED_RECT2_NV 0xEB -#define GL_ROUNDED_RECT4_NV 0xEC -#define GL_RELATIVE_ROUNDED_RECT4_NV 0xED -#define GL_ROUNDED_RECT8_NV 0xEE -#define GL_RELATIVE_ROUNDED_RECT8_NV 0xEF -#define GL_RESTART_PATH_NV 0xF0 -#define GL_DUP_FIRST_CUBIC_CURVE_TO_NV 0xF2 -#define GL_DUP_LAST_CUBIC_CURVE_TO_NV 0xF4 -#define GL_RECT_NV 0xF6 -#define GL_RELATIVE_RECT_NV 0xF7 -#define GL_CIRCULAR_CCW_ARC_TO_NV 0xF8 -#define GL_CIRCULAR_CW_ARC_TO_NV 0xFA -#define GL_CIRCULAR_TANGENT_ARC_TO_NV 0xFC -#define GL_ARC_TO_NV 0xFE -#define GL_RELATIVE_ARC_TO_NV 0xFF -#define GL_GLYPH_HAS_KERNING_BIT_NV 0x100 -#define GL_PRIMARY_COLOR_NV 0x852C -#define GL_SECONDARY_COLOR_NV 0x852D -#define GL_PRIMARY_COLOR 0x8577 -#define GL_PATH_FORMAT_SVG_NV 0x9070 -#define GL_PATH_FORMAT_PS_NV 0x9071 -#define GL_STANDARD_FONT_NAME_NV 0x9072 -#define GL_SYSTEM_FONT_NAME_NV 0x9073 -#define GL_FILE_NAME_NV 0x9074 -#define GL_PATH_STROKE_WIDTH_NV 0x9075 -#define GL_PATH_END_CAPS_NV 0x9076 -#define GL_PATH_INITIAL_END_CAP_NV 0x9077 -#define GL_PATH_TERMINAL_END_CAP_NV 0x9078 -#define GL_PATH_JOIN_STYLE_NV 0x9079 -#define GL_PATH_MITER_LIMIT_NV 0x907A -#define GL_PATH_DASH_CAPS_NV 0x907B -#define GL_PATH_INITIAL_DASH_CAP_NV 0x907C -#define GL_PATH_TERMINAL_DASH_CAP_NV 0x907D -#define GL_PATH_DASH_OFFSET_NV 0x907E -#define GL_PATH_CLIENT_LENGTH_NV 0x907F -#define GL_PATH_FILL_MODE_NV 0x9080 -#define GL_PATH_FILL_MASK_NV 0x9081 -#define GL_PATH_FILL_COVER_MODE_NV 0x9082 -#define GL_PATH_STROKE_COVER_MODE_NV 0x9083 -#define GL_PATH_STROKE_MASK_NV 0x9084 -#define GL_PATH_STROKE_BOUND_NV 0x9086 -#define GL_COUNT_UP_NV 0x9088 -#define GL_COUNT_DOWN_NV 0x9089 -#define GL_PATH_OBJECT_BOUNDING_BOX_NV 0x908A -#define GL_CONVEX_HULL_NV 0x908B -#define GL_BOUNDING_BOX_NV 0x908D -#define GL_TRANSLATE_X_NV 0x908E -#define GL_TRANSLATE_Y_NV 0x908F -#define GL_TRANSLATE_2D_NV 0x9090 -#define GL_TRANSLATE_3D_NV 0x9091 -#define GL_AFFINE_2D_NV 0x9092 -#define GL_AFFINE_3D_NV 0x9094 -#define GL_TRANSPOSE_AFFINE_2D_NV 0x9096 -#define GL_TRANSPOSE_AFFINE_3D_NV 0x9098 -#define GL_UTF8_NV 0x909A -#define GL_UTF16_NV 0x909B -#define GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV 0x909C -#define GL_PATH_COMMAND_COUNT_NV 0x909D -#define GL_PATH_COORD_COUNT_NV 0x909E -#define GL_PATH_DASH_ARRAY_COUNT_NV 0x909F -#define GL_PATH_COMPUTED_LENGTH_NV 0x90A0 -#define GL_PATH_FILL_BOUNDING_BOX_NV 0x90A1 -#define GL_PATH_STROKE_BOUNDING_BOX_NV 0x90A2 -#define GL_SQUARE_NV 0x90A3 -#define GL_ROUND_NV 0x90A4 -#define GL_TRIANGULAR_NV 0x90A5 -#define GL_BEVEL_NV 0x90A6 -#define GL_MITER_REVERT_NV 0x90A7 -#define GL_MITER_TRUNCATE_NV 0x90A8 -#define GL_SKIP_MISSING_GLYPH_NV 0x90A9 -#define GL_USE_MISSING_GLYPH_NV 0x90AA -#define GL_PATH_ERROR_POSITION_NV 0x90AB -#define GL_PATH_FOG_GEN_MODE_NV 0x90AC -#define GL_ACCUM_ADJACENT_PAIRS_NV 0x90AD -#define GL_ADJACENT_PAIRS_NV 0x90AE -#define GL_FIRST_TO_REST_NV 0x90AF -#define GL_PATH_GEN_MODE_NV 0x90B0 -#define GL_PATH_GEN_COEFF_NV 0x90B1 -#define GL_PATH_GEN_COLOR_FORMAT_NV 0x90B2 -#define GL_PATH_GEN_COMPONENTS_NV 0x90B3 -#define GL_PATH_DASH_OFFSET_RESET_NV 0x90B4 -#define GL_MOVE_TO_RESETS_NV 0x90B5 -#define GL_MOVE_TO_CONTINUES_NV 0x90B6 -#define GL_PATH_STENCIL_FUNC_NV 0x90B7 -#define GL_PATH_STENCIL_REF_NV 0x90B8 -#define GL_PATH_STENCIL_VALUE_MASK_NV 0x90B9 -#define GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV 0x90BD -#define GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV 0x90BE -#define GL_PATH_COVER_DEPTH_FUNC_NV 0x90BF -#define GL_FONT_GLYPHS_AVAILABLE_NV 0x9368 -#define GL_FONT_TARGET_UNAVAILABLE_NV 0x9369 -#define GL_FONT_UNAVAILABLE_NV 0x936A -#define GL_FONT_UNINTELLIGIBLE_NV 0x936B -#define GL_STANDARD_FONT_FORMAT_NV 0x936C -#define GL_FRAGMENT_INPUT_NV 0x936D -#define GL_FONT_X_MIN_BOUNDS_BIT_NV 0x00010000 -#define GL_FONT_Y_MIN_BOUNDS_BIT_NV 0x00020000 -#define GL_FONT_X_MAX_BOUNDS_BIT_NV 0x00040000 -#define GL_FONT_Y_MAX_BOUNDS_BIT_NV 0x00080000 -#define GL_FONT_UNITS_PER_EM_BIT_NV 0x00100000 -#define GL_FONT_ASCENDER_BIT_NV 0x00200000 -#define GL_FONT_DESCENDER_BIT_NV 0x00400000 -#define GL_FONT_HEIGHT_BIT_NV 0x00800000 -#define GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV 0x01000000 -#define GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV 0x02000000 -#define GL_FONT_UNDERLINE_POSITION_BIT_NV 0x04000000 -#define GL_FONT_UNDERLINE_THICKNESS_BIT_NV 0x08000000 -#define GL_FONT_HAS_KERNING_BIT_NV 0x10000000 -#define GL_FONT_NUM_GLYPH_INDICES_BIT_NV 0x20000000 - -typedef void (GLAPIENTRY * PFNGLCOPYPATHNVPROC) (GLuint resultPath, GLuint srcPath); -typedef void (GLAPIENTRY * PFNGLCOVERFILLPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues); -typedef void (GLAPIENTRY * PFNGLCOVERFILLPATHNVPROC) (GLuint path, GLenum coverMode); -typedef void (GLAPIENTRY * PFNGLCOVERSTROKEPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues); -typedef void (GLAPIENTRY * PFNGLCOVERSTROKEPATHNVPROC) (GLuint path, GLenum coverMode); -typedef void (GLAPIENTRY * PFNGLDELETEPATHSNVPROC) (GLuint path, GLsizei range); -typedef GLuint (GLAPIENTRY * PFNGLGENPATHSNVPROC) (GLsizei range); -typedef void (GLAPIENTRY * PFNGLGETPATHCOLORGENFVNVPROC) (GLenum color, GLenum pname, GLfloat* value); -typedef void (GLAPIENTRY * PFNGLGETPATHCOLORGENIVNVPROC) (GLenum color, GLenum pname, GLint* value); -typedef void (GLAPIENTRY * PFNGLGETPATHCOMMANDSNVPROC) (GLuint path, GLubyte* commands); -typedef void (GLAPIENTRY * PFNGLGETPATHCOORDSNVPROC) (GLuint path, GLfloat* coords); -typedef void (GLAPIENTRY * PFNGLGETPATHDASHARRAYNVPROC) (GLuint path, GLfloat* dashArray); -typedef GLfloat (GLAPIENTRY * PFNGLGETPATHLENGTHNVPROC) (GLuint path, GLsizei startSegment, GLsizei numSegments); -typedef void (GLAPIENTRY * PFNGLGETPATHMETRICRANGENVPROC) (GLbitfield metricQueryMask, GLuint firstPathName, GLsizei numPaths, GLsizei stride, GLfloat* metrics); -typedef void (GLAPIENTRY * PFNGLGETPATHMETRICSNVPROC) (GLbitfield metricQueryMask, GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLsizei stride, GLfloat *metrics); -typedef void (GLAPIENTRY * PFNGLGETPATHPARAMETERFVNVPROC) (GLuint path, GLenum pname, GLfloat* value); -typedef void (GLAPIENTRY * PFNGLGETPATHPARAMETERIVNVPROC) (GLuint path, GLenum pname, GLint* value); -typedef void (GLAPIENTRY * PFNGLGETPATHSPACINGNVPROC) (GLenum pathListMode, GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLfloat advanceScale, GLfloat kerningScale, GLenum transformType, GLfloat *returnedSpacing); -typedef void (GLAPIENTRY * PFNGLGETPATHTEXGENFVNVPROC) (GLenum texCoordSet, GLenum pname, GLfloat* value); -typedef void (GLAPIENTRY * PFNGLGETPATHTEXGENIVNVPROC) (GLenum texCoordSet, GLenum pname, GLint* value); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMRESOURCEFVNVPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum* props, GLsizei bufSize, GLsizei *length, GLfloat *params); -typedef void (GLAPIENTRY * PFNGLINTERPOLATEPATHSNVPROC) (GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight); -typedef GLboolean (GLAPIENTRY * PFNGLISPATHNVPROC) (GLuint path); -typedef GLboolean (GLAPIENTRY * PFNGLISPOINTINFILLPATHNVPROC) (GLuint path, GLuint mask, GLfloat x, GLfloat y); -typedef GLboolean (GLAPIENTRY * PFNGLISPOINTINSTROKEPATHNVPROC) (GLuint path, GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLMATRIXLOAD3X2FNVPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXLOAD3X3FNVPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSE3X3FNVPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXMULT3X2FNVPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXMULT3X3FNVPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSE3X3FNVPROC) (GLenum matrixMode, const GLfloat* m); -typedef void (GLAPIENTRY * PFNGLPATHCOLORGENNVPROC) (GLenum color, GLenum genMode, GLenum colorFormat, const GLfloat* coeffs); -typedef void (GLAPIENTRY * PFNGLPATHCOMMANDSNVPROC) (GLuint path, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const void*coords); -typedef void (GLAPIENTRY * PFNGLPATHCOORDSNVPROC) (GLuint path, GLsizei numCoords, GLenum coordType, const void *coords); -typedef void (GLAPIENTRY * PFNGLPATHCOVERDEPTHFUNCNVPROC) (GLenum zfunc); -typedef void (GLAPIENTRY * PFNGLPATHDASHARRAYNVPROC) (GLuint path, GLsizei dashCount, const GLfloat* dashArray); -typedef void (GLAPIENTRY * PFNGLPATHFOGGENNVPROC) (GLenum genMode); -typedef GLenum (GLAPIENTRY * PFNGLPATHGLYPHINDEXARRAYNVPROC) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint firstGlyphIndex, GLsizei numGlyphs, GLuint pathParameterTemplate, GLfloat emScale); -typedef GLenum (GLAPIENTRY * PFNGLPATHGLYPHINDEXRANGENVPROC) (GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint pathParameterTemplate, GLfloat emScale, GLuint baseAndCount[2]); -typedef void (GLAPIENTRY * PFNGLPATHGLYPHRANGENVPROC) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint firstGlyph, GLsizei numGlyphs, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale); -typedef void (GLAPIENTRY * PFNGLPATHGLYPHSNVPROC) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLsizei numGlyphs, GLenum type, const void*charcodes, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale); -typedef GLenum (GLAPIENTRY * PFNGLPATHMEMORYGLYPHINDEXARRAYNVPROC) (GLuint firstPathName, GLenum fontTarget, GLsizeiptr fontSize, const void *fontData, GLsizei faceIndex, GLuint firstGlyphIndex, GLsizei numGlyphs, GLuint pathParameterTemplate, GLfloat emScale); -typedef void (GLAPIENTRY * PFNGLPATHPARAMETERFNVPROC) (GLuint path, GLenum pname, GLfloat value); -typedef void (GLAPIENTRY * PFNGLPATHPARAMETERFVNVPROC) (GLuint path, GLenum pname, const GLfloat* value); -typedef void (GLAPIENTRY * PFNGLPATHPARAMETERINVPROC) (GLuint path, GLenum pname, GLint value); -typedef void (GLAPIENTRY * PFNGLPATHPARAMETERIVNVPROC) (GLuint path, GLenum pname, const GLint* value); -typedef void (GLAPIENTRY * PFNGLPATHSTENCILDEPTHOFFSETNVPROC) (GLfloat factor, GLfloat units); -typedef void (GLAPIENTRY * PFNGLPATHSTENCILFUNCNVPROC) (GLenum func, GLint ref, GLuint mask); -typedef void (GLAPIENTRY * PFNGLPATHSTRINGNVPROC) (GLuint path, GLenum format, GLsizei length, const void *pathString); -typedef void (GLAPIENTRY * PFNGLPATHSUBCOMMANDSNVPROC) (GLuint path, GLsizei commandStart, GLsizei commandsToDelete, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const void*coords); -typedef void (GLAPIENTRY * PFNGLPATHSUBCOORDSNVPROC) (GLuint path, GLsizei coordStart, GLsizei numCoords, GLenum coordType, const void *coords); -typedef void (GLAPIENTRY * PFNGLPATHTEXGENNVPROC) (GLenum texCoordSet, GLenum genMode, GLint components, const GLfloat* coeffs); -typedef GLboolean (GLAPIENTRY * PFNGLPOINTALONGPATHNVPROC) (GLuint path, GLsizei startSegment, GLsizei numSegments, GLfloat distance, GLfloat* x, GLfloat *y, GLfloat *tangentX, GLfloat *tangentY); -typedef void (GLAPIENTRY * PFNGLPROGRAMPATHFRAGMENTINPUTGENNVPROC) (GLuint program, GLint location, GLenum genMode, GLint components, const GLfloat* coeffs); -typedef void (GLAPIENTRY * PFNGLSTENCILFILLPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum transformType, const GLfloat *transformValues); -typedef void (GLAPIENTRY * PFNGLSTENCILFILLPATHNVPROC) (GLuint path, GLenum fillMode, GLuint mask); -typedef void (GLAPIENTRY * PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLint reference, GLuint mask, GLenum transformType, const GLfloat *transformValues); -typedef void (GLAPIENTRY * PFNGLSTENCILSTROKEPATHNVPROC) (GLuint path, GLint reference, GLuint mask); -typedef void (GLAPIENTRY * PFNGLSTENCILTHENCOVERFILLPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum coverMode, GLenum transformType, const GLfloat *transformValues); -typedef void (GLAPIENTRY * PFNGLSTENCILTHENCOVERFILLPATHNVPROC) (GLuint path, GLenum fillMode, GLuint mask, GLenum coverMode); -typedef void (GLAPIENTRY * PFNGLSTENCILTHENCOVERSTROKEPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLint reference, GLuint mask, GLenum coverMode, GLenum transformType, const GLfloat *transformValues); -typedef void (GLAPIENTRY * PFNGLSTENCILTHENCOVERSTROKEPATHNVPROC) (GLuint path, GLint reference, GLuint mask, GLenum coverMode); -typedef void (GLAPIENTRY * PFNGLTRANSFORMPATHNVPROC) (GLuint resultPath, GLuint srcPath, GLenum transformType, const GLfloat* transformValues); -typedef void (GLAPIENTRY * PFNGLWEIGHTPATHSNVPROC) (GLuint resultPath, GLsizei numPaths, const GLuint paths[], const GLfloat weights[]); - -#define glCopyPathNV GLEW_GET_FUN(__glewCopyPathNV) -#define glCoverFillPathInstancedNV GLEW_GET_FUN(__glewCoverFillPathInstancedNV) -#define glCoverFillPathNV GLEW_GET_FUN(__glewCoverFillPathNV) -#define glCoverStrokePathInstancedNV GLEW_GET_FUN(__glewCoverStrokePathInstancedNV) -#define glCoverStrokePathNV GLEW_GET_FUN(__glewCoverStrokePathNV) -#define glDeletePathsNV GLEW_GET_FUN(__glewDeletePathsNV) -#define glGenPathsNV GLEW_GET_FUN(__glewGenPathsNV) -#define glGetPathColorGenfvNV GLEW_GET_FUN(__glewGetPathColorGenfvNV) -#define glGetPathColorGenivNV GLEW_GET_FUN(__glewGetPathColorGenivNV) -#define glGetPathCommandsNV GLEW_GET_FUN(__glewGetPathCommandsNV) -#define glGetPathCoordsNV GLEW_GET_FUN(__glewGetPathCoordsNV) -#define glGetPathDashArrayNV GLEW_GET_FUN(__glewGetPathDashArrayNV) -#define glGetPathLengthNV GLEW_GET_FUN(__glewGetPathLengthNV) -#define glGetPathMetricRangeNV GLEW_GET_FUN(__glewGetPathMetricRangeNV) -#define glGetPathMetricsNV GLEW_GET_FUN(__glewGetPathMetricsNV) -#define glGetPathParameterfvNV GLEW_GET_FUN(__glewGetPathParameterfvNV) -#define glGetPathParameterivNV GLEW_GET_FUN(__glewGetPathParameterivNV) -#define glGetPathSpacingNV GLEW_GET_FUN(__glewGetPathSpacingNV) -#define glGetPathTexGenfvNV GLEW_GET_FUN(__glewGetPathTexGenfvNV) -#define glGetPathTexGenivNV GLEW_GET_FUN(__glewGetPathTexGenivNV) -#define glGetProgramResourcefvNV GLEW_GET_FUN(__glewGetProgramResourcefvNV) -#define glInterpolatePathsNV GLEW_GET_FUN(__glewInterpolatePathsNV) -#define glIsPathNV GLEW_GET_FUN(__glewIsPathNV) -#define glIsPointInFillPathNV GLEW_GET_FUN(__glewIsPointInFillPathNV) -#define glIsPointInStrokePathNV GLEW_GET_FUN(__glewIsPointInStrokePathNV) -#define glMatrixLoad3x2fNV GLEW_GET_FUN(__glewMatrixLoad3x2fNV) -#define glMatrixLoad3x3fNV GLEW_GET_FUN(__glewMatrixLoad3x3fNV) -#define glMatrixLoadTranspose3x3fNV GLEW_GET_FUN(__glewMatrixLoadTranspose3x3fNV) -#define glMatrixMult3x2fNV GLEW_GET_FUN(__glewMatrixMult3x2fNV) -#define glMatrixMult3x3fNV GLEW_GET_FUN(__glewMatrixMult3x3fNV) -#define glMatrixMultTranspose3x3fNV GLEW_GET_FUN(__glewMatrixMultTranspose3x3fNV) -#define glPathColorGenNV GLEW_GET_FUN(__glewPathColorGenNV) -#define glPathCommandsNV GLEW_GET_FUN(__glewPathCommandsNV) -#define glPathCoordsNV GLEW_GET_FUN(__glewPathCoordsNV) -#define glPathCoverDepthFuncNV GLEW_GET_FUN(__glewPathCoverDepthFuncNV) -#define glPathDashArrayNV GLEW_GET_FUN(__glewPathDashArrayNV) -#define glPathFogGenNV GLEW_GET_FUN(__glewPathFogGenNV) -#define glPathGlyphIndexArrayNV GLEW_GET_FUN(__glewPathGlyphIndexArrayNV) -#define glPathGlyphIndexRangeNV GLEW_GET_FUN(__glewPathGlyphIndexRangeNV) -#define glPathGlyphRangeNV GLEW_GET_FUN(__glewPathGlyphRangeNV) -#define glPathGlyphsNV GLEW_GET_FUN(__glewPathGlyphsNV) -#define glPathMemoryGlyphIndexArrayNV GLEW_GET_FUN(__glewPathMemoryGlyphIndexArrayNV) -#define glPathParameterfNV GLEW_GET_FUN(__glewPathParameterfNV) -#define glPathParameterfvNV GLEW_GET_FUN(__glewPathParameterfvNV) -#define glPathParameteriNV GLEW_GET_FUN(__glewPathParameteriNV) -#define glPathParameterivNV GLEW_GET_FUN(__glewPathParameterivNV) -#define glPathStencilDepthOffsetNV GLEW_GET_FUN(__glewPathStencilDepthOffsetNV) -#define glPathStencilFuncNV GLEW_GET_FUN(__glewPathStencilFuncNV) -#define glPathStringNV GLEW_GET_FUN(__glewPathStringNV) -#define glPathSubCommandsNV GLEW_GET_FUN(__glewPathSubCommandsNV) -#define glPathSubCoordsNV GLEW_GET_FUN(__glewPathSubCoordsNV) -#define glPathTexGenNV GLEW_GET_FUN(__glewPathTexGenNV) -#define glPointAlongPathNV GLEW_GET_FUN(__glewPointAlongPathNV) -#define glProgramPathFragmentInputGenNV GLEW_GET_FUN(__glewProgramPathFragmentInputGenNV) -#define glStencilFillPathInstancedNV GLEW_GET_FUN(__glewStencilFillPathInstancedNV) -#define glStencilFillPathNV GLEW_GET_FUN(__glewStencilFillPathNV) -#define glStencilStrokePathInstancedNV GLEW_GET_FUN(__glewStencilStrokePathInstancedNV) -#define glStencilStrokePathNV GLEW_GET_FUN(__glewStencilStrokePathNV) -#define glStencilThenCoverFillPathInstancedNV GLEW_GET_FUN(__glewStencilThenCoverFillPathInstancedNV) -#define glStencilThenCoverFillPathNV GLEW_GET_FUN(__glewStencilThenCoverFillPathNV) -#define glStencilThenCoverStrokePathInstancedNV GLEW_GET_FUN(__glewStencilThenCoverStrokePathInstancedNV) -#define glStencilThenCoverStrokePathNV GLEW_GET_FUN(__glewStencilThenCoverStrokePathNV) -#define glTransformPathNV GLEW_GET_FUN(__glewTransformPathNV) -#define glWeightPathsNV GLEW_GET_FUN(__glewWeightPathsNV) - -#define GLEW_NV_path_rendering GLEW_GET_VAR(__GLEW_NV_path_rendering) - -#endif /* GL_NV_path_rendering */ - -/* -------------------- GL_NV_path_rendering_shared_edge ------------------- */ - -#ifndef GL_NV_path_rendering_shared_edge -#define GL_NV_path_rendering_shared_edge 1 - -#define GL_SHARED_EDGE_NV 0xC0 - -#define GLEW_NV_path_rendering_shared_edge GLEW_GET_VAR(__GLEW_NV_path_rendering_shared_edge) - -#endif /* GL_NV_path_rendering_shared_edge */ - -/* ----------------------- GL_NV_pixel_buffer_object ----------------------- */ - -#ifndef GL_NV_pixel_buffer_object -#define GL_NV_pixel_buffer_object 1 - -#define GL_PIXEL_PACK_BUFFER_NV 0x88EB -#define GL_PIXEL_UNPACK_BUFFER_NV 0x88EC -#define GL_PIXEL_PACK_BUFFER_BINDING_NV 0x88ED -#define GL_PIXEL_UNPACK_BUFFER_BINDING_NV 0x88EF - -#define GLEW_NV_pixel_buffer_object GLEW_GET_VAR(__GLEW_NV_pixel_buffer_object) - -#endif /* GL_NV_pixel_buffer_object */ - -/* ------------------------- GL_NV_pixel_data_range ------------------------ */ - -#ifndef GL_NV_pixel_data_range -#define GL_NV_pixel_data_range 1 - -#define GL_WRITE_PIXEL_DATA_RANGE_NV 0x8878 -#define GL_READ_PIXEL_DATA_RANGE_NV 0x8879 -#define GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV 0x887A -#define GL_READ_PIXEL_DATA_RANGE_LENGTH_NV 0x887B -#define GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV 0x887C -#define GL_READ_PIXEL_DATA_RANGE_POINTER_NV 0x887D - -typedef void (GLAPIENTRY * PFNGLFLUSHPIXELDATARANGENVPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLPIXELDATARANGENVPROC) (GLenum target, GLsizei length, void *pointer); - -#define glFlushPixelDataRangeNV GLEW_GET_FUN(__glewFlushPixelDataRangeNV) -#define glPixelDataRangeNV GLEW_GET_FUN(__glewPixelDataRangeNV) - -#define GLEW_NV_pixel_data_range GLEW_GET_VAR(__GLEW_NV_pixel_data_range) - -#endif /* GL_NV_pixel_data_range */ - -/* ------------------------- GL_NV_platform_binary ------------------------- */ - -#ifndef GL_NV_platform_binary -#define GL_NV_platform_binary 1 - -#define GL_NVIDIA_PLATFORM_BINARY_NV 0x890B - -#define GLEW_NV_platform_binary GLEW_GET_VAR(__GLEW_NV_platform_binary) - -#endif /* GL_NV_platform_binary */ - -/* --------------------------- GL_NV_point_sprite -------------------------- */ - -#ifndef GL_NV_point_sprite -#define GL_NV_point_sprite 1 - -#define GL_POINT_SPRITE_NV 0x8861 -#define GL_COORD_REPLACE_NV 0x8862 -#define GL_POINT_SPRITE_R_MODE_NV 0x8863 - -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERINVPROC) (GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIVNVPROC) (GLenum pname, const GLint* params); - -#define glPointParameteriNV GLEW_GET_FUN(__glewPointParameteriNV) -#define glPointParameterivNV GLEW_GET_FUN(__glewPointParameterivNV) - -#define GLEW_NV_point_sprite GLEW_GET_VAR(__GLEW_NV_point_sprite) - -#endif /* GL_NV_point_sprite */ - -/* --------------------------- GL_NV_polygon_mode -------------------------- */ - -#ifndef GL_NV_polygon_mode -#define GL_NV_polygon_mode 1 - -#define GL_POLYGON_MODE_NV 0x0B40 -#define GL_POINT_NV 0x1B00 -#define GL_LINE_NV 0x1B01 -#define GL_FILL_NV 0x1B02 -#define GL_POLYGON_OFFSET_POINT_NV 0x2A01 -#define GL_POLYGON_OFFSET_LINE_NV 0x2A02 - -typedef void (GLAPIENTRY * PFNGLPOLYGONMODENVPROC) (GLenum face, GLenum mode); - -#define glPolygonModeNV GLEW_GET_FUN(__glewPolygonModeNV) - -#define GLEW_NV_polygon_mode GLEW_GET_VAR(__GLEW_NV_polygon_mode) - -#endif /* GL_NV_polygon_mode */ - -/* -------------------------- GL_NV_present_video -------------------------- */ - -#ifndef GL_NV_present_video -#define GL_NV_present_video 1 - -#define GL_FRAME_NV 0x8E26 -#define GL_FIELDS_NV 0x8E27 -#define GL_CURRENT_TIME_NV 0x8E28 -#define GL_NUM_FILL_STREAMS_NV 0x8E29 -#define GL_PRESENT_TIME_NV 0x8E2A -#define GL_PRESENT_DURATION_NV 0x8E2B - -typedef void (GLAPIENTRY * PFNGLGETVIDEOI64VNVPROC) (GLuint video_slot, GLenum pname, GLint64EXT* params); -typedef void (GLAPIENTRY * PFNGLGETVIDEOIVNVPROC) (GLuint video_slot, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETVIDEOUI64VNVPROC) (GLuint video_slot, GLenum pname, GLuint64EXT* params); -typedef void (GLAPIENTRY * PFNGLGETVIDEOUIVNVPROC) (GLuint video_slot, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLPRESENTFRAMEDUALFILLNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3); -typedef void (GLAPIENTRY * PFNGLPRESENTFRAMEKEYEDNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1); - -#define glGetVideoi64vNV GLEW_GET_FUN(__glewGetVideoi64vNV) -#define glGetVideoivNV GLEW_GET_FUN(__glewGetVideoivNV) -#define glGetVideoui64vNV GLEW_GET_FUN(__glewGetVideoui64vNV) -#define glGetVideouivNV GLEW_GET_FUN(__glewGetVideouivNV) -#define glPresentFrameDualFillNV GLEW_GET_FUN(__glewPresentFrameDualFillNV) -#define glPresentFrameKeyedNV GLEW_GET_FUN(__glewPresentFrameKeyedNV) - -#define GLEW_NV_present_video GLEW_GET_VAR(__GLEW_NV_present_video) - -#endif /* GL_NV_present_video */ - -/* ------------------------ GL_NV_primitive_restart ------------------------ */ - -#ifndef GL_NV_primitive_restart -#define GL_NV_primitive_restart 1 - -#define GL_PRIMITIVE_RESTART_NV 0x8558 -#define GL_PRIMITIVE_RESTART_INDEX_NV 0x8559 - -typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTINDEXNVPROC) (GLuint index); -typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTNVPROC) (void); - -#define glPrimitiveRestartIndexNV GLEW_GET_FUN(__glewPrimitiveRestartIndexNV) -#define glPrimitiveRestartNV GLEW_GET_FUN(__glewPrimitiveRestartNV) - -#define GLEW_NV_primitive_restart GLEW_GET_VAR(__GLEW_NV_primitive_restart) - -#endif /* GL_NV_primitive_restart */ - -/* ------------------------ GL_NV_query_resource_tag ----------------------- */ - -#ifndef GL_NV_query_resource_tag -#define GL_NV_query_resource_tag 1 - -#define GLEW_NV_query_resource_tag GLEW_GET_VAR(__GLEW_NV_query_resource_tag) - -#endif /* GL_NV_query_resource_tag */ - -/* --------------------------- GL_NV_read_buffer --------------------------- */ - -#ifndef GL_NV_read_buffer -#define GL_NV_read_buffer 1 - -#define GL_READ_BUFFER_NV 0x0C02 - -typedef void (GLAPIENTRY * PFNGLREADBUFFERNVPROC) (GLenum mode); - -#define glReadBufferNV GLEW_GET_FUN(__glewReadBufferNV) - -#define GLEW_NV_read_buffer GLEW_GET_VAR(__GLEW_NV_read_buffer) - -#endif /* GL_NV_read_buffer */ - -/* ------------------------ GL_NV_read_buffer_front ------------------------ */ - -#ifndef GL_NV_read_buffer_front -#define GL_NV_read_buffer_front 1 - -#define GL_READ_BUFFER_NV 0x0C02 - -#define GLEW_NV_read_buffer_front GLEW_GET_VAR(__GLEW_NV_read_buffer_front) - -#endif /* GL_NV_read_buffer_front */ - -/* ---------------------------- GL_NV_read_depth --------------------------- */ - -#ifndef GL_NV_read_depth -#define GL_NV_read_depth 1 - -#define GLEW_NV_read_depth GLEW_GET_VAR(__GLEW_NV_read_depth) - -#endif /* GL_NV_read_depth */ - -/* ------------------------ GL_NV_read_depth_stencil ----------------------- */ - -#ifndef GL_NV_read_depth_stencil -#define GL_NV_read_depth_stencil 1 - -#define GLEW_NV_read_depth_stencil GLEW_GET_VAR(__GLEW_NV_read_depth_stencil) - -#endif /* GL_NV_read_depth_stencil */ - -/* --------------------------- GL_NV_read_stencil -------------------------- */ - -#ifndef GL_NV_read_stencil -#define GL_NV_read_stencil 1 - -#define GLEW_NV_read_stencil GLEW_GET_VAR(__GLEW_NV_read_stencil) - -#endif /* GL_NV_read_stencil */ - -/* ------------------------ GL_NV_register_combiners ----------------------- */ - -#ifndef GL_NV_register_combiners -#define GL_NV_register_combiners 1 - -#define GL_REGISTER_COMBINERS_NV 0x8522 -#define GL_VARIABLE_A_NV 0x8523 -#define GL_VARIABLE_B_NV 0x8524 -#define GL_VARIABLE_C_NV 0x8525 -#define GL_VARIABLE_D_NV 0x8526 -#define GL_VARIABLE_E_NV 0x8527 -#define GL_VARIABLE_F_NV 0x8528 -#define GL_VARIABLE_G_NV 0x8529 -#define GL_CONSTANT_COLOR0_NV 0x852A -#define GL_CONSTANT_COLOR1_NV 0x852B -#define GL_PRIMARY_COLOR_NV 0x852C -#define GL_SECONDARY_COLOR_NV 0x852D -#define GL_SPARE0_NV 0x852E -#define GL_SPARE1_NV 0x852F -#define GL_DISCARD_NV 0x8530 -#define GL_E_TIMES_F_NV 0x8531 -#define GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532 -#define GL_UNSIGNED_IDENTITY_NV 0x8536 -#define GL_UNSIGNED_INVERT_NV 0x8537 -#define GL_EXPAND_NORMAL_NV 0x8538 -#define GL_EXPAND_NEGATE_NV 0x8539 -#define GL_HALF_BIAS_NORMAL_NV 0x853A -#define GL_HALF_BIAS_NEGATE_NV 0x853B -#define GL_SIGNED_IDENTITY_NV 0x853C -#define GL_SIGNED_NEGATE_NV 0x853D -#define GL_SCALE_BY_TWO_NV 0x853E -#define GL_SCALE_BY_FOUR_NV 0x853F -#define GL_SCALE_BY_ONE_HALF_NV 0x8540 -#define GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541 -#define GL_COMBINER_INPUT_NV 0x8542 -#define GL_COMBINER_MAPPING_NV 0x8543 -#define GL_COMBINER_COMPONENT_USAGE_NV 0x8544 -#define GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545 -#define GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546 -#define GL_COMBINER_MUX_SUM_NV 0x8547 -#define GL_COMBINER_SCALE_NV 0x8548 -#define GL_COMBINER_BIAS_NV 0x8549 -#define GL_COMBINER_AB_OUTPUT_NV 0x854A -#define GL_COMBINER_CD_OUTPUT_NV 0x854B -#define GL_COMBINER_SUM_OUTPUT_NV 0x854C -#define GL_MAX_GENERAL_COMBINERS_NV 0x854D -#define GL_NUM_GENERAL_COMBINERS_NV 0x854E -#define GL_COLOR_SUM_CLAMP_NV 0x854F -#define GL_COMBINER0_NV 0x8550 -#define GL_COMBINER1_NV 0x8551 -#define GL_COMBINER2_NV 0x8552 -#define GL_COMBINER3_NV 0x8553 -#define GL_COMBINER4_NV 0x8554 -#define GL_COMBINER5_NV 0x8555 -#define GL_COMBINER6_NV 0x8556 -#define GL_COMBINER7_NV 0x8557 - -typedef void (GLAPIENTRY * PFNGLCOMBINERINPUTNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); -typedef void (GLAPIENTRY * PFNGLCOMBINEROUTPUTNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); -typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERFNVPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERFVNVPROC) (GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERINVPROC) (GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERIVNVPROC) (GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLFINALCOMBINERINPUTNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); -typedef void (GLAPIENTRY * PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC) (GLenum variable, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC) (GLenum variable, GLenum pname, GLint* params); - -#define glCombinerInputNV GLEW_GET_FUN(__glewCombinerInputNV) -#define glCombinerOutputNV GLEW_GET_FUN(__glewCombinerOutputNV) -#define glCombinerParameterfNV GLEW_GET_FUN(__glewCombinerParameterfNV) -#define glCombinerParameterfvNV GLEW_GET_FUN(__glewCombinerParameterfvNV) -#define glCombinerParameteriNV GLEW_GET_FUN(__glewCombinerParameteriNV) -#define glCombinerParameterivNV GLEW_GET_FUN(__glewCombinerParameterivNV) -#define glFinalCombinerInputNV GLEW_GET_FUN(__glewFinalCombinerInputNV) -#define glGetCombinerInputParameterfvNV GLEW_GET_FUN(__glewGetCombinerInputParameterfvNV) -#define glGetCombinerInputParameterivNV GLEW_GET_FUN(__glewGetCombinerInputParameterivNV) -#define glGetCombinerOutputParameterfvNV GLEW_GET_FUN(__glewGetCombinerOutputParameterfvNV) -#define glGetCombinerOutputParameterivNV GLEW_GET_FUN(__glewGetCombinerOutputParameterivNV) -#define glGetFinalCombinerInputParameterfvNV GLEW_GET_FUN(__glewGetFinalCombinerInputParameterfvNV) -#define glGetFinalCombinerInputParameterivNV GLEW_GET_FUN(__glewGetFinalCombinerInputParameterivNV) - -#define GLEW_NV_register_combiners GLEW_GET_VAR(__GLEW_NV_register_combiners) - -#endif /* GL_NV_register_combiners */ - -/* ----------------------- GL_NV_register_combiners2 ----------------------- */ - -#ifndef GL_NV_register_combiners2 -#define GL_NV_register_combiners2 1 - -#define GL_PER_STAGE_CONSTANTS_NV 0x8535 - -typedef void (GLAPIENTRY * PFNGLCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, GLfloat* params); - -#define glCombinerStageParameterfvNV GLEW_GET_FUN(__glewCombinerStageParameterfvNV) -#define glGetCombinerStageParameterfvNV GLEW_GET_FUN(__glewGetCombinerStageParameterfvNV) - -#define GLEW_NV_register_combiners2 GLEW_GET_VAR(__GLEW_NV_register_combiners2) - -#endif /* GL_NV_register_combiners2 */ - -/* ------------------- GL_NV_representative_fragment_test ------------------ */ - -#ifndef GL_NV_representative_fragment_test -#define GL_NV_representative_fragment_test 1 - -#define GL_REPRESENTATIVE_FRAGMENT_TEST_NV 0x937F - -#define GLEW_NV_representative_fragment_test GLEW_GET_VAR(__GLEW_NV_representative_fragment_test) - -#endif /* GL_NV_representative_fragment_test */ - -/* ------------------ GL_NV_robustness_video_memory_purge ------------------ */ - -#ifndef GL_NV_robustness_video_memory_purge -#define GL_NV_robustness_video_memory_purge 1 - -#define GL_PURGED_CONTEXT_RESET_NV 0x92BB - -#define GLEW_NV_robustness_video_memory_purge GLEW_GET_VAR(__GLEW_NV_robustness_video_memory_purge) - -#endif /* GL_NV_robustness_video_memory_purge */ - -/* --------------------------- GL_NV_sRGB_formats -------------------------- */ - -#ifndef GL_NV_sRGB_formats -#define GL_NV_sRGB_formats 1 - -#define GL_ETC1_SRGB8_NV 0x88EE -#define GL_SRGB8_NV 0x8C41 -#define GL_SLUMINANCE_ALPHA_NV 0x8C44 -#define GL_SLUMINANCE8_ALPHA8_NV 0x8C45 -#define GL_SLUMINANCE_NV 0x8C46 -#define GL_SLUMINANCE8_NV 0x8C47 -#define GL_COMPRESSED_SRGB_S3TC_DXT1_NV 0x8C4C -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV 0x8C4D -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV 0x8C4E -#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV 0x8C4F - -#define GLEW_NV_sRGB_formats GLEW_GET_VAR(__GLEW_NV_sRGB_formats) - -#endif /* GL_NV_sRGB_formats */ - -/* ------------------------- GL_NV_sample_locations ------------------------ */ - -#ifndef GL_NV_sample_locations -#define GL_NV_sample_locations 1 - -#define GL_SAMPLE_LOCATION_NV 0x8E50 -#define GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV 0x933D -#define GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV 0x933E -#define GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV 0x933F -#define GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV 0x9340 -#define GL_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9341 -#define GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV 0x9342 -#define GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV 0x9343 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLenum target, GLuint start, GLsizei count, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLuint framebuffer, GLuint start, GLsizei count, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLRESOLVEDEPTHVALUESNVPROC) (void); - -#define glFramebufferSampleLocationsfvNV GLEW_GET_FUN(__glewFramebufferSampleLocationsfvNV) -#define glNamedFramebufferSampleLocationsfvNV GLEW_GET_FUN(__glewNamedFramebufferSampleLocationsfvNV) -#define glResolveDepthValuesNV GLEW_GET_FUN(__glewResolveDepthValuesNV) - -#define GLEW_NV_sample_locations GLEW_GET_VAR(__GLEW_NV_sample_locations) - -#endif /* GL_NV_sample_locations */ - -/* ------------------ GL_NV_sample_mask_override_coverage ------------------ */ - -#ifndef GL_NV_sample_mask_override_coverage -#define GL_NV_sample_mask_override_coverage 1 - -#define GLEW_NV_sample_mask_override_coverage GLEW_GET_VAR(__GLEW_NV_sample_mask_override_coverage) - -#endif /* GL_NV_sample_mask_override_coverage */ - -/* ------------------------ GL_NV_scissor_exclusive ------------------------ */ - -#ifndef GL_NV_scissor_exclusive -#define GL_NV_scissor_exclusive 1 - -#define GL_SCISSOR_TEST_EXCLUSIVE_NV 0x9555 -#define GL_SCISSOR_BOX_EXCLUSIVE_NV 0x9556 - -typedef void (GLAPIENTRY * PFNGLSCISSOREXCLUSIVEARRAYVNVPROC) (GLuint first, GLsizei count, const GLint* v); -typedef void (GLAPIENTRY * PFNGLSCISSOREXCLUSIVENVPROC) (GLint x, GLint y, GLsizei width, GLsizei height); - -#define glScissorExclusiveArrayvNV GLEW_GET_FUN(__glewScissorExclusiveArrayvNV) -#define glScissorExclusiveNV GLEW_GET_FUN(__glewScissorExclusiveNV) - -#define GLEW_NV_scissor_exclusive GLEW_GET_VAR(__GLEW_NV_scissor_exclusive) - -#endif /* GL_NV_scissor_exclusive */ - -/* ---------------------- GL_NV_shader_atomic_counters --------------------- */ - -#ifndef GL_NV_shader_atomic_counters -#define GL_NV_shader_atomic_counters 1 - -#define GLEW_NV_shader_atomic_counters GLEW_GET_VAR(__GLEW_NV_shader_atomic_counters) - -#endif /* GL_NV_shader_atomic_counters */ - -/* ----------------------- GL_NV_shader_atomic_float ----------------------- */ - -#ifndef GL_NV_shader_atomic_float -#define GL_NV_shader_atomic_float 1 - -#define GLEW_NV_shader_atomic_float GLEW_GET_VAR(__GLEW_NV_shader_atomic_float) - -#endif /* GL_NV_shader_atomic_float */ - -/* ---------------------- GL_NV_shader_atomic_float64 ---------------------- */ - -#ifndef GL_NV_shader_atomic_float64 -#define GL_NV_shader_atomic_float64 1 - -#define GLEW_NV_shader_atomic_float64 GLEW_GET_VAR(__GLEW_NV_shader_atomic_float64) - -#endif /* GL_NV_shader_atomic_float64 */ - -/* -------------------- GL_NV_shader_atomic_fp16_vector -------------------- */ - -#ifndef GL_NV_shader_atomic_fp16_vector -#define GL_NV_shader_atomic_fp16_vector 1 - -#define GLEW_NV_shader_atomic_fp16_vector GLEW_GET_VAR(__GLEW_NV_shader_atomic_fp16_vector) - -#endif /* GL_NV_shader_atomic_fp16_vector */ - -/* ----------------------- GL_NV_shader_atomic_int64 ----------------------- */ - -#ifndef GL_NV_shader_atomic_int64 -#define GL_NV_shader_atomic_int64 1 - -#define GLEW_NV_shader_atomic_int64 GLEW_GET_VAR(__GLEW_NV_shader_atomic_int64) - -#endif /* GL_NV_shader_atomic_int64 */ - -/* ------------------------ GL_NV_shader_buffer_load ----------------------- */ - -#ifndef GL_NV_shader_buffer_load -#define GL_NV_shader_buffer_load 1 - -#define GL_BUFFER_GPU_ADDRESS_NV 0x8F1D -#define GL_GPU_ADDRESS_NV 0x8F34 -#define GL_MAX_SHADER_BUFFER_ADDRESS_NV 0x8F35 - -typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERUI64VNVPROC) (GLenum target, GLenum pname, GLuint64EXT* params); -typedef void (GLAPIENTRY * PFNGLGETINTEGERUI64VNVPROC) (GLenum value, GLuint64EXT* result); -typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC) (GLuint buffer, GLenum pname, GLuint64EXT* params); -typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERRESIDENTNVPROC) (GLenum target); -typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDBUFFERRESIDENTNVPROC) (GLuint buffer); -typedef void (GLAPIENTRY * PFNGLMAKEBUFFERNONRESIDENTNVPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLMAKEBUFFERRESIDENTNVPROC) (GLenum target, GLenum access); -typedef void (GLAPIENTRY * PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC) (GLuint buffer); -typedef void (GLAPIENTRY * PFNGLMAKENAMEDBUFFERRESIDENTNVPROC) (GLuint buffer, GLenum access); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMUI64NVPROC) (GLuint program, GLint location, GLuint64EXT value); -typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value); -typedef void (GLAPIENTRY * PFNGLUNIFORMUI64NVPROC) (GLint location, GLuint64EXT value); -typedef void (GLAPIENTRY * PFNGLUNIFORMUI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value); - -#define glGetBufferParameterui64vNV GLEW_GET_FUN(__glewGetBufferParameterui64vNV) -#define glGetIntegerui64vNV GLEW_GET_FUN(__glewGetIntegerui64vNV) -#define glGetNamedBufferParameterui64vNV GLEW_GET_FUN(__glewGetNamedBufferParameterui64vNV) -#define glIsBufferResidentNV GLEW_GET_FUN(__glewIsBufferResidentNV) -#define glIsNamedBufferResidentNV GLEW_GET_FUN(__glewIsNamedBufferResidentNV) -#define glMakeBufferNonResidentNV GLEW_GET_FUN(__glewMakeBufferNonResidentNV) -#define glMakeBufferResidentNV GLEW_GET_FUN(__glewMakeBufferResidentNV) -#define glMakeNamedBufferNonResidentNV GLEW_GET_FUN(__glewMakeNamedBufferNonResidentNV) -#define glMakeNamedBufferResidentNV GLEW_GET_FUN(__glewMakeNamedBufferResidentNV) -#define glProgramUniformui64NV GLEW_GET_FUN(__glewProgramUniformui64NV) -#define glProgramUniformui64vNV GLEW_GET_FUN(__glewProgramUniformui64vNV) -#define glUniformui64NV GLEW_GET_FUN(__glewUniformui64NV) -#define glUniformui64vNV GLEW_GET_FUN(__glewUniformui64vNV) - -#define GLEW_NV_shader_buffer_load GLEW_GET_VAR(__GLEW_NV_shader_buffer_load) - -#endif /* GL_NV_shader_buffer_load */ - -/* ---------------- GL_NV_shader_noperspective_interpolation --------------- */ - -#ifndef GL_NV_shader_noperspective_interpolation -#define GL_NV_shader_noperspective_interpolation 1 - -#define GLEW_NV_shader_noperspective_interpolation GLEW_GET_VAR(__GLEW_NV_shader_noperspective_interpolation) - -#endif /* GL_NV_shader_noperspective_interpolation */ - -/* ------------------- GL_NV_shader_storage_buffer_object ------------------ */ - -#ifndef GL_NV_shader_storage_buffer_object -#define GL_NV_shader_storage_buffer_object 1 - -#define GLEW_NV_shader_storage_buffer_object GLEW_GET_VAR(__GLEW_NV_shader_storage_buffer_object) - -#endif /* GL_NV_shader_storage_buffer_object */ - -/* ------------------- GL_NV_shader_subgroup_partitioned ------------------- */ - -#ifndef GL_NV_shader_subgroup_partitioned -#define GL_NV_shader_subgroup_partitioned 1 - -#define GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV 0x00000100 - -#define GLEW_NV_shader_subgroup_partitioned GLEW_GET_VAR(__GLEW_NV_shader_subgroup_partitioned) - -#endif /* GL_NV_shader_subgroup_partitioned */ - -/* --------------------- GL_NV_shader_texture_footprint -------------------- */ - -#ifndef GL_NV_shader_texture_footprint -#define GL_NV_shader_texture_footprint 1 - -#define GLEW_NV_shader_texture_footprint GLEW_GET_VAR(__GLEW_NV_shader_texture_footprint) - -#endif /* GL_NV_shader_texture_footprint */ - -/* ----------------------- GL_NV_shader_thread_group ----------------------- */ - -#ifndef GL_NV_shader_thread_group -#define GL_NV_shader_thread_group 1 - -#define GL_WARP_SIZE_NV 0x9339 -#define GL_WARPS_PER_SM_NV 0x933A -#define GL_SM_COUNT_NV 0x933B - -#define GLEW_NV_shader_thread_group GLEW_GET_VAR(__GLEW_NV_shader_thread_group) - -#endif /* GL_NV_shader_thread_group */ - -/* ---------------------- GL_NV_shader_thread_shuffle ---------------------- */ - -#ifndef GL_NV_shader_thread_shuffle -#define GL_NV_shader_thread_shuffle 1 - -#define GLEW_NV_shader_thread_shuffle GLEW_GET_VAR(__GLEW_NV_shader_thread_shuffle) - -#endif /* GL_NV_shader_thread_shuffle */ - -/* ------------------------ GL_NV_shading_rate_image ----------------------- */ - -#ifndef GL_NV_shading_rate_image -#define GL_NV_shading_rate_image 1 - -#define GL_SHADING_RATE_IMAGE_BINDING_NV 0x955B -#define GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV 0x955C -#define GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV 0x955D -#define GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV 0x955E -#define GL_MAX_COARSE_FRAGMENT_SAMPLES_NV 0x955F -#define GL_SHADING_RATE_IMAGE_NV 0x9563 -#define GL_SHADING_RATE_NO_INVOCATIONS_NV 0x9564 -#define GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV 0x9565 -#define GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV 0x9566 -#define GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV 0x9567 -#define GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV 0x9568 -#define GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV 0x9569 -#define GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV 0x956A -#define GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV 0x956B -#define GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV 0x956C -#define GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV 0x956D -#define GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV 0x956E -#define GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV 0x956F -#define GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV 0x95AE -#define GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV 0x95AF -#define GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV 0x95B0 - -typedef void (GLAPIENTRY * PFNGLBINDSHADINGRATEIMAGENVPROC) (GLuint texture); -typedef void (GLAPIENTRY * PFNGLGETSHADINGRATEIMAGEPALETTENVPROC) (GLuint viewport, GLuint entry, GLenum* rate); -typedef void (GLAPIENTRY * PFNGLGETSHADINGRATESAMPLELOCATIONIVNVPROC) (GLenum rate, GLuint samples, GLuint index, GLint* location); -typedef void (GLAPIENTRY * PFNGLSHADINGRATEIMAGEBARRIERNVPROC) (GLenum order); -typedef void (GLAPIENTRY * PFNGLSHADINGRATEIMAGEPALETTENVPROC) (GLuint viewport, GLuint first, GLsizei count, const GLenum* rates); -typedef void (GLAPIENTRY * PFNGLSHADINGRATESAMPLEORDERCUSTOMNVPROC) (GLenum rate, GLuint samples, const GLint* locations); - -#define glBindShadingRateImageNV GLEW_GET_FUN(__glewBindShadingRateImageNV) -#define glGetShadingRateImagePaletteNV GLEW_GET_FUN(__glewGetShadingRateImagePaletteNV) -#define glGetShadingRateSampleLocationivNV GLEW_GET_FUN(__glewGetShadingRateSampleLocationivNV) -#define glShadingRateImageBarrierNV GLEW_GET_FUN(__glewShadingRateImageBarrierNV) -#define glShadingRateImagePaletteNV GLEW_GET_FUN(__glewShadingRateImagePaletteNV) -#define glShadingRateSampleOrderCustomNV GLEW_GET_FUN(__glewShadingRateSampleOrderCustomNV) - -#define GLEW_NV_shading_rate_image GLEW_GET_VAR(__GLEW_NV_shading_rate_image) - -#endif /* GL_NV_shading_rate_image */ - -/* ---------------------- GL_NV_shadow_samplers_array ---------------------- */ - -#ifndef GL_NV_shadow_samplers_array -#define GL_NV_shadow_samplers_array 1 - -#define GL_SAMPLER_2D_ARRAY_SHADOW_NV 0x8DC4 - -#define GLEW_NV_shadow_samplers_array GLEW_GET_VAR(__GLEW_NV_shadow_samplers_array) - -#endif /* GL_NV_shadow_samplers_array */ - -/* ----------------------- GL_NV_shadow_samplers_cube ---------------------- */ - -#ifndef GL_NV_shadow_samplers_cube -#define GL_NV_shadow_samplers_cube 1 - -#define GL_SAMPLER_CUBE_SHADOW_NV 0x8DC5 - -#define GLEW_NV_shadow_samplers_cube GLEW_GET_VAR(__GLEW_NV_shadow_samplers_cube) - -#endif /* GL_NV_shadow_samplers_cube */ - -/* ---------------------- GL_NV_stereo_view_rendering ---------------------- */ - -#ifndef GL_NV_stereo_view_rendering -#define GL_NV_stereo_view_rendering 1 - -#define GLEW_NV_stereo_view_rendering GLEW_GET_VAR(__GLEW_NV_stereo_view_rendering) - -#endif /* GL_NV_stereo_view_rendering */ - -/* ---------------------- GL_NV_tessellation_program5 ---------------------- */ - -#ifndef GL_NV_tessellation_program5 -#define GL_NV_tessellation_program5 1 - -#define GL_MAX_PROGRAM_PATCH_ATTRIBS_NV 0x86D8 -#define GL_TESS_CONTROL_PROGRAM_NV 0x891E -#define GL_TESS_EVALUATION_PROGRAM_NV 0x891F -#define GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV 0x8C74 -#define GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV 0x8C75 - -#define GLEW_NV_tessellation_program5 GLEW_GET_VAR(__GLEW_NV_tessellation_program5) - -#endif /* GL_NV_tessellation_program5 */ - -/* -------------------------- GL_NV_texgen_emboss -------------------------- */ - -#ifndef GL_NV_texgen_emboss -#define GL_NV_texgen_emboss 1 - -#define GL_EMBOSS_LIGHT_NV 0x855D -#define GL_EMBOSS_CONSTANT_NV 0x855E -#define GL_EMBOSS_MAP_NV 0x855F - -#define GLEW_NV_texgen_emboss GLEW_GET_VAR(__GLEW_NV_texgen_emboss) - -#endif /* GL_NV_texgen_emboss */ - -/* ------------------------ GL_NV_texgen_reflection ------------------------ */ - -#ifndef GL_NV_texgen_reflection -#define GL_NV_texgen_reflection 1 - -#define GL_NORMAL_MAP_NV 0x8511 -#define GL_REFLECTION_MAP_NV 0x8512 - -#define GLEW_NV_texgen_reflection GLEW_GET_VAR(__GLEW_NV_texgen_reflection) - -#endif /* GL_NV_texgen_reflection */ - -/* -------------------------- GL_NV_texture_array -------------------------- */ - -#ifndef GL_NV_texture_array -#define GL_NV_texture_array 1 - -#define GL_UNPACK_SKIP_IMAGES_NV 0x806D -#define GL_UNPACK_IMAGE_HEIGHT_NV 0x806E -#define GL_MAX_ARRAY_TEXTURE_LAYERS_NV 0x88FF -#define GL_TEXTURE_2D_ARRAY_NV 0x8C1A -#define GL_TEXTURE_BINDING_2D_ARRAY_NV 0x8C1D -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_NV 0x8CD4 -#define GL_SAMPLER_2D_ARRAY_NV 0x8DC1 - -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DNVPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DNVPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DNVPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERNVPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); -typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DNVPROC) (GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DNVPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); - -#define glCompressedTexImage3DNV GLEW_GET_FUN(__glewCompressedTexImage3DNV) -#define glCompressedTexSubImage3DNV GLEW_GET_FUN(__glewCompressedTexSubImage3DNV) -#define glCopyTexSubImage3DNV GLEW_GET_FUN(__glewCopyTexSubImage3DNV) -#define glFramebufferTextureLayerNV GLEW_GET_FUN(__glewFramebufferTextureLayerNV) -#define glTexImage3DNV GLEW_GET_FUN(__glewTexImage3DNV) -#define glTexSubImage3DNV GLEW_GET_FUN(__glewTexSubImage3DNV) - -#define GLEW_NV_texture_array GLEW_GET_VAR(__GLEW_NV_texture_array) - -#endif /* GL_NV_texture_array */ - -/* ------------------------- GL_NV_texture_barrier ------------------------- */ - -#ifndef GL_NV_texture_barrier -#define GL_NV_texture_barrier 1 - -typedef void (GLAPIENTRY * PFNGLTEXTUREBARRIERNVPROC) (void); - -#define glTextureBarrierNV GLEW_GET_FUN(__glewTextureBarrierNV) - -#define GLEW_NV_texture_barrier GLEW_GET_VAR(__GLEW_NV_texture_barrier) - -#endif /* GL_NV_texture_barrier */ - -/* ----------------------- GL_NV_texture_border_clamp ---------------------- */ - -#ifndef GL_NV_texture_border_clamp -#define GL_NV_texture_border_clamp 1 - -#define GL_TEXTURE_BORDER_COLOR_NV 0x1004 -#define GL_CLAMP_TO_BORDER_NV 0x812D - -#define GLEW_NV_texture_border_clamp GLEW_GET_VAR(__GLEW_NV_texture_border_clamp) - -#endif /* GL_NV_texture_border_clamp */ - -/* --------------------- GL_NV_texture_compression_latc -------------------- */ - -#ifndef GL_NV_texture_compression_latc -#define GL_NV_texture_compression_latc 1 - -#define GL_COMPRESSED_LUMINANCE_LATC1_NV 0x8C70 -#define GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_NV 0x8C71 -#define GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_NV 0x8C72 -#define GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_NV 0x8C73 - -#define GLEW_NV_texture_compression_latc GLEW_GET_VAR(__GLEW_NV_texture_compression_latc) - -#endif /* GL_NV_texture_compression_latc */ - -/* --------------------- GL_NV_texture_compression_s3tc -------------------- */ - -#ifndef GL_NV_texture_compression_s3tc -#define GL_NV_texture_compression_s3tc 1 - -#define GL_COMPRESSED_RGB_S3TC_DXT1_NV 0x83F0 -#define GL_COMPRESSED_RGBA_S3TC_DXT1_NV 0x83F1 -#define GL_COMPRESSED_RGBA_S3TC_DXT3_NV 0x83F2 -#define GL_COMPRESSED_RGBA_S3TC_DXT5_NV 0x83F3 - -#define GLEW_NV_texture_compression_s3tc GLEW_GET_VAR(__GLEW_NV_texture_compression_s3tc) - -#endif /* GL_NV_texture_compression_s3tc */ - -/* ----------------- GL_NV_texture_compression_s3tc_update ----------------- */ - -#ifndef GL_NV_texture_compression_s3tc_update -#define GL_NV_texture_compression_s3tc_update 1 - -#define GLEW_NV_texture_compression_s3tc_update GLEW_GET_VAR(__GLEW_NV_texture_compression_s3tc_update) - -#endif /* GL_NV_texture_compression_s3tc_update */ - -/* --------------------- GL_NV_texture_compression_vtc --------------------- */ - -#ifndef GL_NV_texture_compression_vtc -#define GL_NV_texture_compression_vtc 1 - -#define GLEW_NV_texture_compression_vtc GLEW_GET_VAR(__GLEW_NV_texture_compression_vtc) - -#endif /* GL_NV_texture_compression_vtc */ - -/* ----------------------- GL_NV_texture_env_combine4 ---------------------- */ - -#ifndef GL_NV_texture_env_combine4 -#define GL_NV_texture_env_combine4 1 - -#define GL_COMBINE4_NV 0x8503 -#define GL_SOURCE3_RGB_NV 0x8583 -#define GL_SOURCE3_ALPHA_NV 0x858B -#define GL_OPERAND3_RGB_NV 0x8593 -#define GL_OPERAND3_ALPHA_NV 0x859B - -#define GLEW_NV_texture_env_combine4 GLEW_GET_VAR(__GLEW_NV_texture_env_combine4) - -#endif /* GL_NV_texture_env_combine4 */ - -/* ---------------------- GL_NV_texture_expand_normal ---------------------- */ - -#ifndef GL_NV_texture_expand_normal -#define GL_NV_texture_expand_normal 1 - -#define GL_TEXTURE_UNSIGNED_REMAP_MODE_NV 0x888F - -#define GLEW_NV_texture_expand_normal GLEW_GET_VAR(__GLEW_NV_texture_expand_normal) - -#endif /* GL_NV_texture_expand_normal */ - -/* ----------------------- GL_NV_texture_multisample ----------------------- */ - -#ifndef GL_NV_texture_multisample -#define GL_NV_texture_multisample 1 - -#define GL_TEXTURE_COVERAGE_SAMPLES_NV 0x9045 -#define GL_TEXTURE_COLOR_SAMPLES_NV 0x9046 - -typedef void (GLAPIENTRY * PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations); -typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations); -typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC) (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations); -typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC) (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations); -typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC) (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations); -typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC) (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations); - -#define glTexImage2DMultisampleCoverageNV GLEW_GET_FUN(__glewTexImage2DMultisampleCoverageNV) -#define glTexImage3DMultisampleCoverageNV GLEW_GET_FUN(__glewTexImage3DMultisampleCoverageNV) -#define glTextureImage2DMultisampleCoverageNV GLEW_GET_FUN(__glewTextureImage2DMultisampleCoverageNV) -#define glTextureImage2DMultisampleNV GLEW_GET_FUN(__glewTextureImage2DMultisampleNV) -#define glTextureImage3DMultisampleCoverageNV GLEW_GET_FUN(__glewTextureImage3DMultisampleCoverageNV) -#define glTextureImage3DMultisampleNV GLEW_GET_FUN(__glewTextureImage3DMultisampleNV) - -#define GLEW_NV_texture_multisample GLEW_GET_VAR(__GLEW_NV_texture_multisample) - -#endif /* GL_NV_texture_multisample */ - -/* ---------------------- GL_NV_texture_npot_2D_mipmap --------------------- */ - -#ifndef GL_NV_texture_npot_2D_mipmap -#define GL_NV_texture_npot_2D_mipmap 1 - -#define GLEW_NV_texture_npot_2D_mipmap GLEW_GET_VAR(__GLEW_NV_texture_npot_2D_mipmap) - -#endif /* GL_NV_texture_npot_2D_mipmap */ - -/* ------------------------ GL_NV_texture_rectangle ------------------------ */ - -#ifndef GL_NV_texture_rectangle -#define GL_NV_texture_rectangle 1 - -#define GL_TEXTURE_RECTANGLE_NV 0x84F5 -#define GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6 -#define GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7 -#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8 - -#define GLEW_NV_texture_rectangle GLEW_GET_VAR(__GLEW_NV_texture_rectangle) - -#endif /* GL_NV_texture_rectangle */ - -/* ------------------- GL_NV_texture_rectangle_compressed ------------------ */ - -#ifndef GL_NV_texture_rectangle_compressed -#define GL_NV_texture_rectangle_compressed 1 - -#define GLEW_NV_texture_rectangle_compressed GLEW_GET_VAR(__GLEW_NV_texture_rectangle_compressed) - -#endif /* GL_NV_texture_rectangle_compressed */ - -/* -------------------------- GL_NV_texture_shader ------------------------- */ - -#ifndef GL_NV_texture_shader -#define GL_NV_texture_shader 1 - -#define GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864C -#define GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864D -#define GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864E -#define GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86D9 -#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA -#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB -#define GL_DSDT_MAG_INTENSITY_NV 0x86DC -#define GL_SHADER_CONSISTENT_NV 0x86DD -#define GL_TEXTURE_SHADER_NV 0x86DE -#define GL_SHADER_OPERATION_NV 0x86DF -#define GL_CULL_MODES_NV 0x86E0 -#define GL_OFFSET_TEXTURE_2D_MATRIX_NV 0x86E1 -#define GL_OFFSET_TEXTURE_MATRIX_NV 0x86E1 -#define GL_OFFSET_TEXTURE_2D_SCALE_NV 0x86E2 -#define GL_OFFSET_TEXTURE_SCALE_NV 0x86E2 -#define GL_OFFSET_TEXTURE_2D_BIAS_NV 0x86E3 -#define GL_OFFSET_TEXTURE_BIAS_NV 0x86E3 -#define GL_PREVIOUS_TEXTURE_INPUT_NV 0x86E4 -#define GL_CONST_EYE_NV 0x86E5 -#define GL_PASS_THROUGH_NV 0x86E6 -#define GL_CULL_FRAGMENT_NV 0x86E7 -#define GL_OFFSET_TEXTURE_2D_NV 0x86E8 -#define GL_DEPENDENT_AR_TEXTURE_2D_NV 0x86E9 -#define GL_DEPENDENT_GB_TEXTURE_2D_NV 0x86EA -#define GL_DOT_PRODUCT_NV 0x86EC -#define GL_DOT_PRODUCT_DEPTH_REPLACE_NV 0x86ED -#define GL_DOT_PRODUCT_TEXTURE_2D_NV 0x86EE -#define GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86F0 -#define GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86F1 -#define GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86F2 -#define GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86F3 -#define GL_HILO_NV 0x86F4 -#define GL_DSDT_NV 0x86F5 -#define GL_DSDT_MAG_NV 0x86F6 -#define GL_DSDT_MAG_VIB_NV 0x86F7 -#define GL_HILO16_NV 0x86F8 -#define GL_SIGNED_HILO_NV 0x86F9 -#define GL_SIGNED_HILO16_NV 0x86FA -#define GL_SIGNED_RGBA_NV 0x86FB -#define GL_SIGNED_RGBA8_NV 0x86FC -#define GL_SIGNED_RGB_NV 0x86FE -#define GL_SIGNED_RGB8_NV 0x86FF -#define GL_SIGNED_LUMINANCE_NV 0x8701 -#define GL_SIGNED_LUMINANCE8_NV 0x8702 -#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703 -#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704 -#define GL_SIGNED_ALPHA_NV 0x8705 -#define GL_SIGNED_ALPHA8_NV 0x8706 -#define GL_SIGNED_INTENSITY_NV 0x8707 -#define GL_SIGNED_INTENSITY8_NV 0x8708 -#define GL_DSDT8_NV 0x8709 -#define GL_DSDT8_MAG8_NV 0x870A -#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B -#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C -#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D -#define GL_HI_SCALE_NV 0x870E -#define GL_LO_SCALE_NV 0x870F -#define GL_DS_SCALE_NV 0x8710 -#define GL_DT_SCALE_NV 0x8711 -#define GL_MAGNITUDE_SCALE_NV 0x8712 -#define GL_VIBRANCE_SCALE_NV 0x8713 -#define GL_HI_BIAS_NV 0x8714 -#define GL_LO_BIAS_NV 0x8715 -#define GL_DS_BIAS_NV 0x8716 -#define GL_DT_BIAS_NV 0x8717 -#define GL_MAGNITUDE_BIAS_NV 0x8718 -#define GL_VIBRANCE_BIAS_NV 0x8719 -#define GL_TEXTURE_BORDER_VALUES_NV 0x871A -#define GL_TEXTURE_HI_SIZE_NV 0x871B -#define GL_TEXTURE_LO_SIZE_NV 0x871C -#define GL_TEXTURE_DS_SIZE_NV 0x871D -#define GL_TEXTURE_DT_SIZE_NV 0x871E -#define GL_TEXTURE_MAG_SIZE_NV 0x871F - -#define GLEW_NV_texture_shader GLEW_GET_VAR(__GLEW_NV_texture_shader) - -#endif /* GL_NV_texture_shader */ - -/* ------------------------- GL_NV_texture_shader2 ------------------------- */ - -#ifndef GL_NV_texture_shader2 -#define GL_NV_texture_shader2 1 - -#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA -#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB -#define GL_DSDT_MAG_INTENSITY_NV 0x86DC -#define GL_DOT_PRODUCT_TEXTURE_3D_NV 0x86EF -#define GL_HILO_NV 0x86F4 -#define GL_DSDT_NV 0x86F5 -#define GL_DSDT_MAG_NV 0x86F6 -#define GL_DSDT_MAG_VIB_NV 0x86F7 -#define GL_HILO16_NV 0x86F8 -#define GL_SIGNED_HILO_NV 0x86F9 -#define GL_SIGNED_HILO16_NV 0x86FA -#define GL_SIGNED_RGBA_NV 0x86FB -#define GL_SIGNED_RGBA8_NV 0x86FC -#define GL_SIGNED_RGB_NV 0x86FE -#define GL_SIGNED_RGB8_NV 0x86FF -#define GL_SIGNED_LUMINANCE_NV 0x8701 -#define GL_SIGNED_LUMINANCE8_NV 0x8702 -#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703 -#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704 -#define GL_SIGNED_ALPHA_NV 0x8705 -#define GL_SIGNED_ALPHA8_NV 0x8706 -#define GL_SIGNED_INTENSITY_NV 0x8707 -#define GL_SIGNED_INTENSITY8_NV 0x8708 -#define GL_DSDT8_NV 0x8709 -#define GL_DSDT8_MAG8_NV 0x870A -#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B -#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C -#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D - -#define GLEW_NV_texture_shader2 GLEW_GET_VAR(__GLEW_NV_texture_shader2) - -#endif /* GL_NV_texture_shader2 */ - -/* ------------------------- GL_NV_texture_shader3 ------------------------- */ - -#ifndef GL_NV_texture_shader3 -#define GL_NV_texture_shader3 1 - -#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV 0x8850 -#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV 0x8851 -#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8852 -#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV 0x8853 -#define GL_OFFSET_HILO_TEXTURE_2D_NV 0x8854 -#define GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV 0x8855 -#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV 0x8856 -#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8857 -#define GL_DEPENDENT_HILO_TEXTURE_2D_NV 0x8858 -#define GL_DEPENDENT_RGB_TEXTURE_3D_NV 0x8859 -#define GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV 0x885A -#define GL_DOT_PRODUCT_PASS_THROUGH_NV 0x885B -#define GL_DOT_PRODUCT_TEXTURE_1D_NV 0x885C -#define GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV 0x885D -#define GL_HILO8_NV 0x885E -#define GL_SIGNED_HILO8_NV 0x885F -#define GL_FORCE_BLUE_TO_ONE_NV 0x8860 - -#define GLEW_NV_texture_shader3 GLEW_GET_VAR(__GLEW_NV_texture_shader3) - -#endif /* GL_NV_texture_shader3 */ - -/* ------------------------ GL_NV_transform_feedback ----------------------- */ - -#ifndef GL_NV_transform_feedback -#define GL_NV_transform_feedback 1 - -#define GL_BACK_PRIMARY_COLOR_NV 0x8C77 -#define GL_BACK_SECONDARY_COLOR_NV 0x8C78 -#define GL_TEXTURE_COORD_NV 0x8C79 -#define GL_CLIP_DISTANCE_NV 0x8C7A -#define GL_VERTEX_ID_NV 0x8C7B -#define GL_PRIMITIVE_ID_NV 0x8C7C -#define GL_GENERIC_ATTRIB_NV 0x8C7D -#define GL_TRANSFORM_FEEDBACK_ATTRIBS_NV 0x8C7E -#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV 0x8C7F -#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV 0x8C80 -#define GL_ACTIVE_VARYINGS_NV 0x8C81 -#define GL_ACTIVE_VARYING_MAX_LENGTH_NV 0x8C82 -#define GL_TRANSFORM_FEEDBACK_VARYINGS_NV 0x8C83 -#define GL_TRANSFORM_FEEDBACK_BUFFER_START_NV 0x8C84 -#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV 0x8C85 -#define GL_TRANSFORM_FEEDBACK_RECORD_NV 0x8C86 -#define GL_PRIMITIVES_GENERATED_NV 0x8C87 -#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV 0x8C88 -#define GL_RASTERIZER_DISCARD_NV 0x8C89 -#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A -#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV 0x8C8B -#define GL_INTERLEAVED_ATTRIBS_NV 0x8C8C -#define GL_SEPARATE_ATTRIBS_NV 0x8C8D -#define GL_TRANSFORM_FEEDBACK_BUFFER_NV 0x8C8E -#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV 0x8C8F - -typedef void (GLAPIENTRY * PFNGLACTIVEVARYINGNVPROC) (GLuint program, const GLchar *name); -typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKNVPROC) (GLenum primitiveMode); -typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASENVPROC) (GLenum target, GLuint index, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSETNVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset); -typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGENVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); -typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKNVPROC) (void); -typedef void (GLAPIENTRY * PFNGLGETACTIVEVARYINGNVPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name); -typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC) (GLuint program, GLuint index, GLint *location); -typedef GLint (GLAPIENTRY * PFNGLGETVARYINGLOCATIONNVPROC) (GLuint program, const GLchar *name); -typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC) (GLuint count, const GLint *attribs, GLenum bufferMode); -typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC) (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode); - -#define glActiveVaryingNV GLEW_GET_FUN(__glewActiveVaryingNV) -#define glBeginTransformFeedbackNV GLEW_GET_FUN(__glewBeginTransformFeedbackNV) -#define glBindBufferBaseNV GLEW_GET_FUN(__glewBindBufferBaseNV) -#define glBindBufferOffsetNV GLEW_GET_FUN(__glewBindBufferOffsetNV) -#define glBindBufferRangeNV GLEW_GET_FUN(__glewBindBufferRangeNV) -#define glEndTransformFeedbackNV GLEW_GET_FUN(__glewEndTransformFeedbackNV) -#define glGetActiveVaryingNV GLEW_GET_FUN(__glewGetActiveVaryingNV) -#define glGetTransformFeedbackVaryingNV GLEW_GET_FUN(__glewGetTransformFeedbackVaryingNV) -#define glGetVaryingLocationNV GLEW_GET_FUN(__glewGetVaryingLocationNV) -#define glTransformFeedbackAttribsNV GLEW_GET_FUN(__glewTransformFeedbackAttribsNV) -#define glTransformFeedbackVaryingsNV GLEW_GET_FUN(__glewTransformFeedbackVaryingsNV) - -#define GLEW_NV_transform_feedback GLEW_GET_VAR(__GLEW_NV_transform_feedback) - -#endif /* GL_NV_transform_feedback */ - -/* ----------------------- GL_NV_transform_feedback2 ----------------------- */ - -#ifndef GL_NV_transform_feedback2 -#define GL_NV_transform_feedback2 1 - -#define GL_TRANSFORM_FEEDBACK_NV 0x8E22 -#define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV 0x8E23 -#define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV 0x8E24 -#define GL_TRANSFORM_FEEDBACK_BINDING_NV 0x8E25 - -typedef void (GLAPIENTRY * PFNGLBINDTRANSFORMFEEDBACKNVPROC) (GLenum target, GLuint id); -typedef void (GLAPIENTRY * PFNGLDELETETRANSFORMFEEDBACKSNVPROC) (GLsizei n, const GLuint* ids); -typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKNVPROC) (GLenum mode, GLuint id); -typedef void (GLAPIENTRY * PFNGLGENTRANSFORMFEEDBACKSNVPROC) (GLsizei n, GLuint* ids); -typedef GLboolean (GLAPIENTRY * PFNGLISTRANSFORMFEEDBACKNVPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLPAUSETRANSFORMFEEDBACKNVPROC) (void); -typedef void (GLAPIENTRY * PFNGLRESUMETRANSFORMFEEDBACKNVPROC) (void); - -#define glBindTransformFeedbackNV GLEW_GET_FUN(__glewBindTransformFeedbackNV) -#define glDeleteTransformFeedbacksNV GLEW_GET_FUN(__glewDeleteTransformFeedbacksNV) -#define glDrawTransformFeedbackNV GLEW_GET_FUN(__glewDrawTransformFeedbackNV) -#define glGenTransformFeedbacksNV GLEW_GET_FUN(__glewGenTransformFeedbacksNV) -#define glIsTransformFeedbackNV GLEW_GET_FUN(__glewIsTransformFeedbackNV) -#define glPauseTransformFeedbackNV GLEW_GET_FUN(__glewPauseTransformFeedbackNV) -#define glResumeTransformFeedbackNV GLEW_GET_FUN(__glewResumeTransformFeedbackNV) - -#define GLEW_NV_transform_feedback2 GLEW_GET_VAR(__GLEW_NV_transform_feedback2) - -#endif /* GL_NV_transform_feedback2 */ - -/* ------------------ GL_NV_uniform_buffer_unified_memory ------------------ */ - -#ifndef GL_NV_uniform_buffer_unified_memory -#define GL_NV_uniform_buffer_unified_memory 1 - -#define GL_UNIFORM_BUFFER_UNIFIED_NV 0x936E -#define GL_UNIFORM_BUFFER_ADDRESS_NV 0x936F -#define GL_UNIFORM_BUFFER_LENGTH_NV 0x9370 - -#define GLEW_NV_uniform_buffer_unified_memory GLEW_GET_VAR(__GLEW_NV_uniform_buffer_unified_memory) - -#endif /* GL_NV_uniform_buffer_unified_memory */ - -/* -------------------------- GL_NV_vdpau_interop -------------------------- */ - -#ifndef GL_NV_vdpau_interop -#define GL_NV_vdpau_interop 1 - -#define GL_SURFACE_STATE_NV 0x86EB -#define GL_SURFACE_REGISTERED_NV 0x86FD -#define GL_SURFACE_MAPPED_NV 0x8700 -#define GL_WRITE_DISCARD_NV 0x88BE - -typedef GLintptr GLvdpauSurfaceNV; - -typedef void (GLAPIENTRY * PFNGLVDPAUFININVPROC) (void); -typedef void (GLAPIENTRY * PFNGLVDPAUGETSURFACEIVNVPROC) (GLvdpauSurfaceNV surface, GLenum pname, GLsizei bufSize, GLsizei* length, GLint *values); -typedef void (GLAPIENTRY * PFNGLVDPAUINITNVPROC) (const void* vdpDevice, const void*getProcAddress); -typedef void (GLAPIENTRY * PFNGLVDPAUISSURFACENVPROC) (GLvdpauSurfaceNV surface); -typedef void (GLAPIENTRY * PFNGLVDPAUMAPSURFACESNVPROC) (GLsizei numSurfaces, const GLvdpauSurfaceNV* surfaces); -typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC) (const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames); -typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTERVIDEOSURFACENVPROC) (const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames); -typedef void (GLAPIENTRY * PFNGLVDPAUSURFACEACCESSNVPROC) (GLvdpauSurfaceNV surface, GLenum access); -typedef void (GLAPIENTRY * PFNGLVDPAUUNMAPSURFACESNVPROC) (GLsizei numSurface, const GLvdpauSurfaceNV* surfaces); -typedef void (GLAPIENTRY * PFNGLVDPAUUNREGISTERSURFACENVPROC) (GLvdpauSurfaceNV surface); - -#define glVDPAUFiniNV GLEW_GET_FUN(__glewVDPAUFiniNV) -#define glVDPAUGetSurfaceivNV GLEW_GET_FUN(__glewVDPAUGetSurfaceivNV) -#define glVDPAUInitNV GLEW_GET_FUN(__glewVDPAUInitNV) -#define glVDPAUIsSurfaceNV GLEW_GET_FUN(__glewVDPAUIsSurfaceNV) -#define glVDPAUMapSurfacesNV GLEW_GET_FUN(__glewVDPAUMapSurfacesNV) -#define glVDPAURegisterOutputSurfaceNV GLEW_GET_FUN(__glewVDPAURegisterOutputSurfaceNV) -#define glVDPAURegisterVideoSurfaceNV GLEW_GET_FUN(__glewVDPAURegisterVideoSurfaceNV) -#define glVDPAUSurfaceAccessNV GLEW_GET_FUN(__glewVDPAUSurfaceAccessNV) -#define glVDPAUUnmapSurfacesNV GLEW_GET_FUN(__glewVDPAUUnmapSurfacesNV) -#define glVDPAUUnregisterSurfaceNV GLEW_GET_FUN(__glewVDPAUUnregisterSurfaceNV) - -#define GLEW_NV_vdpau_interop GLEW_GET_VAR(__GLEW_NV_vdpau_interop) - -#endif /* GL_NV_vdpau_interop */ - -/* -------------------------- GL_NV_vdpau_interop2 ------------------------- */ - -#ifndef GL_NV_vdpau_interop2 -#define GL_NV_vdpau_interop2 1 - -typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTERVIDEOSURFACEWITHPICTURESTRUCTURENVPROC) (const void *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames, GLboolean isFrameStructure); - -#define glVDPAURegisterVideoSurfaceWithPictureStructureNV GLEW_GET_FUN(__glewVDPAURegisterVideoSurfaceWithPictureStructureNV) - -#define GLEW_NV_vdpau_interop2 GLEW_GET_VAR(__GLEW_NV_vdpau_interop2) - -#endif /* GL_NV_vdpau_interop2 */ - -/* ------------------------ GL_NV_vertex_array_range ----------------------- */ - -#ifndef GL_NV_vertex_array_range -#define GL_NV_vertex_array_range 1 - -#define GL_VERTEX_ARRAY_RANGE_NV 0x851D -#define GL_VERTEX_ARRAY_RANGE_LENGTH_NV 0x851E -#define GL_VERTEX_ARRAY_RANGE_VALID_NV 0x851F -#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520 -#define GL_VERTEX_ARRAY_RANGE_POINTER_NV 0x8521 - -typedef void (GLAPIENTRY * PFNGLFLUSHVERTEXARRAYRANGENVPROC) (void); -typedef void (GLAPIENTRY * PFNGLVERTEXARRAYRANGENVPROC) (GLsizei length, void *pointer); - -#define glFlushVertexArrayRangeNV GLEW_GET_FUN(__glewFlushVertexArrayRangeNV) -#define glVertexArrayRangeNV GLEW_GET_FUN(__glewVertexArrayRangeNV) - -#define GLEW_NV_vertex_array_range GLEW_GET_VAR(__GLEW_NV_vertex_array_range) - -#endif /* GL_NV_vertex_array_range */ - -/* ----------------------- GL_NV_vertex_array_range2 ----------------------- */ - -#ifndef GL_NV_vertex_array_range2 -#define GL_NV_vertex_array_range2 1 - -#define GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533 - -#define GLEW_NV_vertex_array_range2 GLEW_GET_VAR(__GLEW_NV_vertex_array_range2) - -#endif /* GL_NV_vertex_array_range2 */ - -/* ------------------- GL_NV_vertex_attrib_integer_64bit ------------------- */ - -#ifndef GL_NV_vertex_attrib_integer_64bit -#define GL_NV_vertex_attrib_integer_64bit 1 - -#define GL_INT64_NV 0x140E -#define GL_UNSIGNED_INT64_NV 0x140F - -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLI64VNVPROC) (GLuint index, GLenum pname, GLint64EXT* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLUI64VNVPROC) (GLuint index, GLenum pname, GLuint64EXT* params); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1I64NVPROC) (GLuint index, GLint64EXT x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1I64VNVPROC) (GLuint index, const GLint64EXT* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64NVPROC) (GLuint index, GLuint64EXT x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64VNVPROC) (GLuint index, const GLuint64EXT* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2I64VNVPROC) (GLuint index, const GLint64EXT* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2UI64VNVPROC) (GLuint index, const GLuint64EXT* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3I64VNVPROC) (GLuint index, const GLint64EXT* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3UI64VNVPROC) (GLuint index, const GLuint64EXT* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4I64VNVPROC) (GLuint index, const GLint64EXT* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4UI64VNVPROC) (GLuint index, const GLuint64EXT* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride); - -#define glGetVertexAttribLi64vNV GLEW_GET_FUN(__glewGetVertexAttribLi64vNV) -#define glGetVertexAttribLui64vNV GLEW_GET_FUN(__glewGetVertexAttribLui64vNV) -#define glVertexAttribL1i64NV GLEW_GET_FUN(__glewVertexAttribL1i64NV) -#define glVertexAttribL1i64vNV GLEW_GET_FUN(__glewVertexAttribL1i64vNV) -#define glVertexAttribL1ui64NV GLEW_GET_FUN(__glewVertexAttribL1ui64NV) -#define glVertexAttribL1ui64vNV GLEW_GET_FUN(__glewVertexAttribL1ui64vNV) -#define glVertexAttribL2i64NV GLEW_GET_FUN(__glewVertexAttribL2i64NV) -#define glVertexAttribL2i64vNV GLEW_GET_FUN(__glewVertexAttribL2i64vNV) -#define glVertexAttribL2ui64NV GLEW_GET_FUN(__glewVertexAttribL2ui64NV) -#define glVertexAttribL2ui64vNV GLEW_GET_FUN(__glewVertexAttribL2ui64vNV) -#define glVertexAttribL3i64NV GLEW_GET_FUN(__glewVertexAttribL3i64NV) -#define glVertexAttribL3i64vNV GLEW_GET_FUN(__glewVertexAttribL3i64vNV) -#define glVertexAttribL3ui64NV GLEW_GET_FUN(__glewVertexAttribL3ui64NV) -#define glVertexAttribL3ui64vNV GLEW_GET_FUN(__glewVertexAttribL3ui64vNV) -#define glVertexAttribL4i64NV GLEW_GET_FUN(__glewVertexAttribL4i64NV) -#define glVertexAttribL4i64vNV GLEW_GET_FUN(__glewVertexAttribL4i64vNV) -#define glVertexAttribL4ui64NV GLEW_GET_FUN(__glewVertexAttribL4ui64NV) -#define glVertexAttribL4ui64vNV GLEW_GET_FUN(__glewVertexAttribL4ui64vNV) -#define glVertexAttribLFormatNV GLEW_GET_FUN(__glewVertexAttribLFormatNV) - -#define GLEW_NV_vertex_attrib_integer_64bit GLEW_GET_VAR(__GLEW_NV_vertex_attrib_integer_64bit) - -#endif /* GL_NV_vertex_attrib_integer_64bit */ - -/* ------------------- GL_NV_vertex_buffer_unified_memory ------------------ */ - -#ifndef GL_NV_vertex_buffer_unified_memory -#define GL_NV_vertex_buffer_unified_memory 1 - -#define GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV 0x8F1E -#define GL_ELEMENT_ARRAY_UNIFIED_NV 0x8F1F -#define GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV 0x8F20 -#define GL_VERTEX_ARRAY_ADDRESS_NV 0x8F21 -#define GL_NORMAL_ARRAY_ADDRESS_NV 0x8F22 -#define GL_COLOR_ARRAY_ADDRESS_NV 0x8F23 -#define GL_INDEX_ARRAY_ADDRESS_NV 0x8F24 -#define GL_TEXTURE_COORD_ARRAY_ADDRESS_NV 0x8F25 -#define GL_EDGE_FLAG_ARRAY_ADDRESS_NV 0x8F26 -#define GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV 0x8F27 -#define GL_FOG_COORD_ARRAY_ADDRESS_NV 0x8F28 -#define GL_ELEMENT_ARRAY_ADDRESS_NV 0x8F29 -#define GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV 0x8F2A -#define GL_VERTEX_ARRAY_LENGTH_NV 0x8F2B -#define GL_NORMAL_ARRAY_LENGTH_NV 0x8F2C -#define GL_COLOR_ARRAY_LENGTH_NV 0x8F2D -#define GL_INDEX_ARRAY_LENGTH_NV 0x8F2E -#define GL_TEXTURE_COORD_ARRAY_LENGTH_NV 0x8F2F -#define GL_EDGE_FLAG_ARRAY_LENGTH_NV 0x8F30 -#define GL_SECONDARY_COLOR_ARRAY_LENGTH_NV 0x8F31 -#define GL_FOG_COORD_ARRAY_LENGTH_NV 0x8F32 -#define GL_ELEMENT_ARRAY_LENGTH_NV 0x8F33 -#define GL_DRAW_INDIRECT_UNIFIED_NV 0x8F40 -#define GL_DRAW_INDIRECT_ADDRESS_NV 0x8F41 -#define GL_DRAW_INDIRECT_LENGTH_NV 0x8F42 - -typedef void (GLAPIENTRY * PFNGLBUFFERADDRESSRANGENVPROC) (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length); -typedef void (GLAPIENTRY * PFNGLCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLEDGEFLAGFORMATNVPROC) (GLsizei stride); -typedef void (GLAPIENTRY * PFNGLFOGCOORDFORMATNVPROC) (GLenum type, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLGETINTEGERUI64I_VNVPROC) (GLenum value, GLuint index, GLuint64EXT result[]); -typedef void (GLAPIENTRY * PFNGLINDEXFORMATNVPROC) (GLenum type, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLNORMALFORMATNVPROC) (GLenum type, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLTEXCOORDFORMATNVPROC) (GLint size, GLenum type, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride); -typedef void (GLAPIENTRY * PFNGLVERTEXFORMATNVPROC) (GLint size, GLenum type, GLsizei stride); - -#define glBufferAddressRangeNV GLEW_GET_FUN(__glewBufferAddressRangeNV) -#define glColorFormatNV GLEW_GET_FUN(__glewColorFormatNV) -#define glEdgeFlagFormatNV GLEW_GET_FUN(__glewEdgeFlagFormatNV) -#define glFogCoordFormatNV GLEW_GET_FUN(__glewFogCoordFormatNV) -#define glGetIntegerui64i_vNV GLEW_GET_FUN(__glewGetIntegerui64i_vNV) -#define glIndexFormatNV GLEW_GET_FUN(__glewIndexFormatNV) -#define glNormalFormatNV GLEW_GET_FUN(__glewNormalFormatNV) -#define glSecondaryColorFormatNV GLEW_GET_FUN(__glewSecondaryColorFormatNV) -#define glTexCoordFormatNV GLEW_GET_FUN(__glewTexCoordFormatNV) -#define glVertexAttribFormatNV GLEW_GET_FUN(__glewVertexAttribFormatNV) -#define glVertexAttribIFormatNV GLEW_GET_FUN(__glewVertexAttribIFormatNV) -#define glVertexFormatNV GLEW_GET_FUN(__glewVertexFormatNV) - -#define GLEW_NV_vertex_buffer_unified_memory GLEW_GET_VAR(__GLEW_NV_vertex_buffer_unified_memory) - -#endif /* GL_NV_vertex_buffer_unified_memory */ - -/* -------------------------- GL_NV_vertex_program ------------------------- */ - -#ifndef GL_NV_vertex_program -#define GL_NV_vertex_program 1 - -#define GL_VERTEX_PROGRAM_NV 0x8620 -#define GL_VERTEX_STATE_PROGRAM_NV 0x8621 -#define GL_ATTRIB_ARRAY_SIZE_NV 0x8623 -#define GL_ATTRIB_ARRAY_STRIDE_NV 0x8624 -#define GL_ATTRIB_ARRAY_TYPE_NV 0x8625 -#define GL_CURRENT_ATTRIB_NV 0x8626 -#define GL_PROGRAM_LENGTH_NV 0x8627 -#define GL_PROGRAM_STRING_NV 0x8628 -#define GL_MODELVIEW_PROJECTION_NV 0x8629 -#define GL_IDENTITY_NV 0x862A -#define GL_INVERSE_NV 0x862B -#define GL_TRANSPOSE_NV 0x862C -#define GL_INVERSE_TRANSPOSE_NV 0x862D -#define GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E -#define GL_MAX_TRACK_MATRICES_NV 0x862F -#define GL_MATRIX0_NV 0x8630 -#define GL_MATRIX1_NV 0x8631 -#define GL_MATRIX2_NV 0x8632 -#define GL_MATRIX3_NV 0x8633 -#define GL_MATRIX4_NV 0x8634 -#define GL_MATRIX5_NV 0x8635 -#define GL_MATRIX6_NV 0x8636 -#define GL_MATRIX7_NV 0x8637 -#define GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640 -#define GL_CURRENT_MATRIX_NV 0x8641 -#define GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642 -#define GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643 -#define GL_PROGRAM_PARAMETER_NV 0x8644 -#define GL_ATTRIB_ARRAY_POINTER_NV 0x8645 -#define GL_PROGRAM_TARGET_NV 0x8646 -#define GL_PROGRAM_RESIDENT_NV 0x8647 -#define GL_TRACK_MATRIX_NV 0x8648 -#define GL_TRACK_MATRIX_TRANSFORM_NV 0x8649 -#define GL_VERTEX_PROGRAM_BINDING_NV 0x864A -#define GL_PROGRAM_ERROR_POSITION_NV 0x864B -#define GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650 -#define GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651 -#define GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652 -#define GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653 -#define GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654 -#define GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655 -#define GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656 -#define GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657 -#define GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658 -#define GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659 -#define GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A -#define GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B -#define GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C -#define GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D -#define GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E -#define GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F -#define GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660 -#define GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661 -#define GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662 -#define GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663 -#define GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664 -#define GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665 -#define GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666 -#define GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667 -#define GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668 -#define GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669 -#define GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A -#define GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B -#define GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C -#define GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D -#define GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E -#define GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F -#define GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670 -#define GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671 -#define GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672 -#define GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673 -#define GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674 -#define GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675 -#define GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676 -#define GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677 -#define GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678 -#define GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679 -#define GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A -#define GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B -#define GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C -#define GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D -#define GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E -#define GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F - -typedef GLboolean (GLAPIENTRY * PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n, const GLuint* ids, GLboolean *residences); -typedef void (GLAPIENTRY * PFNGLBINDPROGRAMNVPROC) (GLenum target, GLuint id); -typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMSNVPROC) (GLsizei n, const GLuint* ids); -typedef void (GLAPIENTRY * PFNGLEXECUTEPROGRAMNVPROC) (GLenum target, GLuint id, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGENPROGRAMSNVPROC) (GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMPARAMETERDVNVPROC) (GLenum target, GLuint index, GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTRINGNVPROC) (GLuint id, GLenum pname, GLubyte* program); -typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVNVPROC) (GLuint id, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTRACKMATRIXIVNVPROC) (GLenum target, GLuint address, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVNVPROC) (GLuint index, GLenum pname, void** pointer); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVNVPROC) (GLuint index, GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVNVPROC) (GLuint index, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVNVPROC) (GLuint index, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMNVPROC) (GLuint id); -typedef void (GLAPIENTRY * PFNGLLOADPROGRAMNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte* program); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4DNVPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4DVNVPROC) (GLenum target, GLuint index, const GLdouble* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4FNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4FVNVPROC) (GLenum target, GLuint index, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERS4DVNVPROC) (GLenum target, GLuint index, GLsizei num, const GLdouble* params); -typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERS4FVNVPROC) (GLenum target, GLuint index, GLsizei num, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLREQUESTRESIDENTPROGRAMSNVPROC) (GLsizei n, GLuint* ids); -typedef void (GLAPIENTRY * PFNGLTRACKMATRIXNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DNVPROC) (GLuint index, GLdouble x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVNVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FNVPROC) (GLuint index, GLfloat x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVNVPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SNVPROC) (GLuint index, GLshort x); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVNVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DNVPROC) (GLuint index, GLdouble x, GLdouble y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVNVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FNVPROC) (GLuint index, GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVNVPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SNVPROC) (GLuint index, GLshort x, GLshort y); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVNVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVNVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVNVPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVNVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVNVPROC) (GLuint index, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVNVPROC) (GLuint index, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVNVPROC) (GLuint index, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVNVPROC) (GLuint index, const GLubyte* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1SVNVPROC) (GLuint index, GLsizei n, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2SVNVPROC) (GLuint index, GLsizei n, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3SVNVPROC) (GLuint index, GLsizei n, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4SVNVPROC) (GLuint index, GLsizei n, const GLshort* v); -typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4UBVNVPROC) (GLuint index, GLsizei n, const GLubyte* v); - -#define glAreProgramsResidentNV GLEW_GET_FUN(__glewAreProgramsResidentNV) -#define glBindProgramNV GLEW_GET_FUN(__glewBindProgramNV) -#define glDeleteProgramsNV GLEW_GET_FUN(__glewDeleteProgramsNV) -#define glExecuteProgramNV GLEW_GET_FUN(__glewExecuteProgramNV) -#define glGenProgramsNV GLEW_GET_FUN(__glewGenProgramsNV) -#define glGetProgramParameterdvNV GLEW_GET_FUN(__glewGetProgramParameterdvNV) -#define glGetProgramParameterfvNV GLEW_GET_FUN(__glewGetProgramParameterfvNV) -#define glGetProgramStringNV GLEW_GET_FUN(__glewGetProgramStringNV) -#define glGetProgramivNV GLEW_GET_FUN(__glewGetProgramivNV) -#define glGetTrackMatrixivNV GLEW_GET_FUN(__glewGetTrackMatrixivNV) -#define glGetVertexAttribPointervNV GLEW_GET_FUN(__glewGetVertexAttribPointervNV) -#define glGetVertexAttribdvNV GLEW_GET_FUN(__glewGetVertexAttribdvNV) -#define glGetVertexAttribfvNV GLEW_GET_FUN(__glewGetVertexAttribfvNV) -#define glGetVertexAttribivNV GLEW_GET_FUN(__glewGetVertexAttribivNV) -#define glIsProgramNV GLEW_GET_FUN(__glewIsProgramNV) -#define glLoadProgramNV GLEW_GET_FUN(__glewLoadProgramNV) -#define glProgramParameter4dNV GLEW_GET_FUN(__glewProgramParameter4dNV) -#define glProgramParameter4dvNV GLEW_GET_FUN(__glewProgramParameter4dvNV) -#define glProgramParameter4fNV GLEW_GET_FUN(__glewProgramParameter4fNV) -#define glProgramParameter4fvNV GLEW_GET_FUN(__glewProgramParameter4fvNV) -#define glProgramParameters4dvNV GLEW_GET_FUN(__glewProgramParameters4dvNV) -#define glProgramParameters4fvNV GLEW_GET_FUN(__glewProgramParameters4fvNV) -#define glRequestResidentProgramsNV GLEW_GET_FUN(__glewRequestResidentProgramsNV) -#define glTrackMatrixNV GLEW_GET_FUN(__glewTrackMatrixNV) -#define glVertexAttrib1dNV GLEW_GET_FUN(__glewVertexAttrib1dNV) -#define glVertexAttrib1dvNV GLEW_GET_FUN(__glewVertexAttrib1dvNV) -#define glVertexAttrib1fNV GLEW_GET_FUN(__glewVertexAttrib1fNV) -#define glVertexAttrib1fvNV GLEW_GET_FUN(__glewVertexAttrib1fvNV) -#define glVertexAttrib1sNV GLEW_GET_FUN(__glewVertexAttrib1sNV) -#define glVertexAttrib1svNV GLEW_GET_FUN(__glewVertexAttrib1svNV) -#define glVertexAttrib2dNV GLEW_GET_FUN(__glewVertexAttrib2dNV) -#define glVertexAttrib2dvNV GLEW_GET_FUN(__glewVertexAttrib2dvNV) -#define glVertexAttrib2fNV GLEW_GET_FUN(__glewVertexAttrib2fNV) -#define glVertexAttrib2fvNV GLEW_GET_FUN(__glewVertexAttrib2fvNV) -#define glVertexAttrib2sNV GLEW_GET_FUN(__glewVertexAttrib2sNV) -#define glVertexAttrib2svNV GLEW_GET_FUN(__glewVertexAttrib2svNV) -#define glVertexAttrib3dNV GLEW_GET_FUN(__glewVertexAttrib3dNV) -#define glVertexAttrib3dvNV GLEW_GET_FUN(__glewVertexAttrib3dvNV) -#define glVertexAttrib3fNV GLEW_GET_FUN(__glewVertexAttrib3fNV) -#define glVertexAttrib3fvNV GLEW_GET_FUN(__glewVertexAttrib3fvNV) -#define glVertexAttrib3sNV GLEW_GET_FUN(__glewVertexAttrib3sNV) -#define glVertexAttrib3svNV GLEW_GET_FUN(__glewVertexAttrib3svNV) -#define glVertexAttrib4dNV GLEW_GET_FUN(__glewVertexAttrib4dNV) -#define glVertexAttrib4dvNV GLEW_GET_FUN(__glewVertexAttrib4dvNV) -#define glVertexAttrib4fNV GLEW_GET_FUN(__glewVertexAttrib4fNV) -#define glVertexAttrib4fvNV GLEW_GET_FUN(__glewVertexAttrib4fvNV) -#define glVertexAttrib4sNV GLEW_GET_FUN(__glewVertexAttrib4sNV) -#define glVertexAttrib4svNV GLEW_GET_FUN(__glewVertexAttrib4svNV) -#define glVertexAttrib4ubNV GLEW_GET_FUN(__glewVertexAttrib4ubNV) -#define glVertexAttrib4ubvNV GLEW_GET_FUN(__glewVertexAttrib4ubvNV) -#define glVertexAttribPointerNV GLEW_GET_FUN(__glewVertexAttribPointerNV) -#define glVertexAttribs1dvNV GLEW_GET_FUN(__glewVertexAttribs1dvNV) -#define glVertexAttribs1fvNV GLEW_GET_FUN(__glewVertexAttribs1fvNV) -#define glVertexAttribs1svNV GLEW_GET_FUN(__glewVertexAttribs1svNV) -#define glVertexAttribs2dvNV GLEW_GET_FUN(__glewVertexAttribs2dvNV) -#define glVertexAttribs2fvNV GLEW_GET_FUN(__glewVertexAttribs2fvNV) -#define glVertexAttribs2svNV GLEW_GET_FUN(__glewVertexAttribs2svNV) -#define glVertexAttribs3dvNV GLEW_GET_FUN(__glewVertexAttribs3dvNV) -#define glVertexAttribs3fvNV GLEW_GET_FUN(__glewVertexAttribs3fvNV) -#define glVertexAttribs3svNV GLEW_GET_FUN(__glewVertexAttribs3svNV) -#define glVertexAttribs4dvNV GLEW_GET_FUN(__glewVertexAttribs4dvNV) -#define glVertexAttribs4fvNV GLEW_GET_FUN(__glewVertexAttribs4fvNV) -#define glVertexAttribs4svNV GLEW_GET_FUN(__glewVertexAttribs4svNV) -#define glVertexAttribs4ubvNV GLEW_GET_FUN(__glewVertexAttribs4ubvNV) - -#define GLEW_NV_vertex_program GLEW_GET_VAR(__GLEW_NV_vertex_program) - -#endif /* GL_NV_vertex_program */ - -/* ------------------------ GL_NV_vertex_program1_1 ------------------------ */ - -#ifndef GL_NV_vertex_program1_1 -#define GL_NV_vertex_program1_1 1 - -#define GLEW_NV_vertex_program1_1 GLEW_GET_VAR(__GLEW_NV_vertex_program1_1) - -#endif /* GL_NV_vertex_program1_1 */ - -/* ------------------------- GL_NV_vertex_program2 ------------------------- */ - -#ifndef GL_NV_vertex_program2 -#define GL_NV_vertex_program2 1 - -#define GLEW_NV_vertex_program2 GLEW_GET_VAR(__GLEW_NV_vertex_program2) - -#endif /* GL_NV_vertex_program2 */ - -/* ---------------------- GL_NV_vertex_program2_option --------------------- */ - -#ifndef GL_NV_vertex_program2_option -#define GL_NV_vertex_program2_option 1 - -#define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4 -#define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5 - -#define GLEW_NV_vertex_program2_option GLEW_GET_VAR(__GLEW_NV_vertex_program2_option) - -#endif /* GL_NV_vertex_program2_option */ - -/* ------------------------- GL_NV_vertex_program3 ------------------------- */ - -#ifndef GL_NV_vertex_program3 -#define GL_NV_vertex_program3 1 - -#define MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C - -#define GLEW_NV_vertex_program3 GLEW_GET_VAR(__GLEW_NV_vertex_program3) - -#endif /* GL_NV_vertex_program3 */ - -/* ------------------------- GL_NV_vertex_program4 ------------------------- */ - -#ifndef GL_NV_vertex_program4 -#define GL_NV_vertex_program4 1 - -#define GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV 0x88FD - -#define GLEW_NV_vertex_program4 GLEW_GET_VAR(__GLEW_NV_vertex_program4) - -#endif /* GL_NV_vertex_program4 */ - -/* -------------------------- GL_NV_video_capture -------------------------- */ - -#ifndef GL_NV_video_capture -#define GL_NV_video_capture 1 - -#define GL_VIDEO_BUFFER_NV 0x9020 -#define GL_VIDEO_BUFFER_BINDING_NV 0x9021 -#define GL_FIELD_UPPER_NV 0x9022 -#define GL_FIELD_LOWER_NV 0x9023 -#define GL_NUM_VIDEO_CAPTURE_STREAMS_NV 0x9024 -#define GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV 0x9025 -#define GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV 0x9026 -#define GL_LAST_VIDEO_CAPTURE_STATUS_NV 0x9027 -#define GL_VIDEO_BUFFER_PITCH_NV 0x9028 -#define GL_VIDEO_COLOR_CONVERSION_MATRIX_NV 0x9029 -#define GL_VIDEO_COLOR_CONVERSION_MAX_NV 0x902A -#define GL_VIDEO_COLOR_CONVERSION_MIN_NV 0x902B -#define GL_VIDEO_COLOR_CONVERSION_OFFSET_NV 0x902C -#define GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV 0x902D -#define GL_PARTIAL_SUCCESS_NV 0x902E -#define GL_SUCCESS_NV 0x902F -#define GL_FAILURE_NV 0x9030 -#define GL_YCBYCR8_422_NV 0x9031 -#define GL_YCBAYCR8A_4224_NV 0x9032 -#define GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV 0x9033 -#define GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV 0x9034 -#define GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV 0x9035 -#define GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV 0x9036 -#define GL_Z4Y12Z4CB12Z4CR12_444_NV 0x9037 -#define GL_VIDEO_CAPTURE_FRAME_WIDTH_NV 0x9038 -#define GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV 0x9039 -#define GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV 0x903A -#define GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV 0x903B -#define GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV 0x903C - -typedef void (GLAPIENTRY * PFNGLBEGINVIDEOCAPTURENVPROC) (GLuint video_capture_slot); -typedef void (GLAPIENTRY * PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLintptrARB offset); -typedef void (GLAPIENTRY * PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture); -typedef void (GLAPIENTRY * PFNGLENDVIDEOCAPTURENVPROC) (GLuint video_capture_slot); -typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble* params); -typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTUREIVNVPROC) (GLuint video_capture_slot, GLenum pname, GLint* params); -typedef GLenum (GLAPIENTRY * PFNGLVIDEOCAPTURENVPROC) (GLuint video_capture_slot, GLuint* sequence_num, GLuint64EXT *capture_time); -typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble* params); -typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint* params); - -#define glBeginVideoCaptureNV GLEW_GET_FUN(__glewBeginVideoCaptureNV) -#define glBindVideoCaptureStreamBufferNV GLEW_GET_FUN(__glewBindVideoCaptureStreamBufferNV) -#define glBindVideoCaptureStreamTextureNV GLEW_GET_FUN(__glewBindVideoCaptureStreamTextureNV) -#define glEndVideoCaptureNV GLEW_GET_FUN(__glewEndVideoCaptureNV) -#define glGetVideoCaptureStreamdvNV GLEW_GET_FUN(__glewGetVideoCaptureStreamdvNV) -#define glGetVideoCaptureStreamfvNV GLEW_GET_FUN(__glewGetVideoCaptureStreamfvNV) -#define glGetVideoCaptureStreamivNV GLEW_GET_FUN(__glewGetVideoCaptureStreamivNV) -#define glGetVideoCaptureivNV GLEW_GET_FUN(__glewGetVideoCaptureivNV) -#define glVideoCaptureNV GLEW_GET_FUN(__glewVideoCaptureNV) -#define glVideoCaptureStreamParameterdvNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterdvNV) -#define glVideoCaptureStreamParameterfvNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterfvNV) -#define glVideoCaptureStreamParameterivNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterivNV) - -#define GLEW_NV_video_capture GLEW_GET_VAR(__GLEW_NV_video_capture) - -#endif /* GL_NV_video_capture */ - -/* -------------------------- GL_NV_viewport_array ------------------------- */ - -#ifndef GL_NV_viewport_array -#define GL_NV_viewport_array 1 - -#define GL_DEPTH_RANGE 0x0B70 -#define GL_VIEWPORT 0x0BA2 -#define GL_SCISSOR_BOX 0x0C10 -#define GL_SCISSOR_TEST 0x0C11 -#define GL_MAX_VIEWPORTS_NV 0x825B -#define GL_VIEWPORT_SUBPIXEL_BITS_NV 0x825C -#define GL_VIEWPORT_BOUNDS_RANGE_NV 0x825D -#define GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV 0x825F - -typedef void (GLAPIENTRY * PFNGLDEPTHRANGEARRAYFVNVPROC) (GLuint first, GLsizei count, const GLfloat * v); -typedef void (GLAPIENTRY * PFNGLDEPTHRANGEINDEXEDFNVPROC) (GLuint index, GLfloat n, GLfloat f); -typedef void (GLAPIENTRY * PFNGLDISABLEINVPROC) (GLenum target, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEINVPROC) (GLenum target, GLuint index); -typedef void (GLAPIENTRY * PFNGLGETFLOATI_VNVPROC) (GLenum target, GLuint index, GLfloat* data); -typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDINVPROC) (GLenum target, GLuint index); -typedef void (GLAPIENTRY * PFNGLSCISSORARRAYVNVPROC) (GLuint first, GLsizei count, const GLint * v); -typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDNVPROC) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDVNVPROC) (GLuint index, const GLint * v); -typedef void (GLAPIENTRY * PFNGLVIEWPORTARRAYVNVPROC) (GLuint first, GLsizei count, const GLfloat * v); -typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h); -typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFVNVPROC) (GLuint index, const GLfloat * v); - -#define glDepthRangeArrayfvNV GLEW_GET_FUN(__glewDepthRangeArrayfvNV) -#define glDepthRangeIndexedfNV GLEW_GET_FUN(__glewDepthRangeIndexedfNV) -#define glDisableiNV GLEW_GET_FUN(__glewDisableiNV) -#define glEnableiNV GLEW_GET_FUN(__glewEnableiNV) -#define glGetFloati_vNV GLEW_GET_FUN(__glewGetFloati_vNV) -#define glIsEnablediNV GLEW_GET_FUN(__glewIsEnablediNV) -#define glScissorArrayvNV GLEW_GET_FUN(__glewScissorArrayvNV) -#define glScissorIndexedNV GLEW_GET_FUN(__glewScissorIndexedNV) -#define glScissorIndexedvNV GLEW_GET_FUN(__glewScissorIndexedvNV) -#define glViewportArrayvNV GLEW_GET_FUN(__glewViewportArrayvNV) -#define glViewportIndexedfNV GLEW_GET_FUN(__glewViewportIndexedfNV) -#define glViewportIndexedfvNV GLEW_GET_FUN(__glewViewportIndexedfvNV) - -#define GLEW_NV_viewport_array GLEW_GET_VAR(__GLEW_NV_viewport_array) - -#endif /* GL_NV_viewport_array */ - -/* ------------------------- GL_NV_viewport_array2 ------------------------- */ - -#ifndef GL_NV_viewport_array2 -#define GL_NV_viewport_array2 1 - -#define GLEW_NV_viewport_array2 GLEW_GET_VAR(__GLEW_NV_viewport_array2) - -#endif /* GL_NV_viewport_array2 */ - -/* ------------------------- GL_NV_viewport_swizzle ------------------------ */ - -#ifndef GL_NV_viewport_swizzle -#define GL_NV_viewport_swizzle 1 - -#define GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV 0x9350 -#define GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV 0x9351 -#define GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV 0x9352 -#define GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV 0x9353 -#define GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV 0x9354 -#define GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV 0x9355 -#define GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV 0x9356 -#define GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV 0x9357 -#define GL_VIEWPORT_SWIZZLE_X_NV 0x9358 -#define GL_VIEWPORT_SWIZZLE_Y_NV 0x9359 -#define GL_VIEWPORT_SWIZZLE_Z_NV 0x935A -#define GL_VIEWPORT_SWIZZLE_W_NV 0x935B - -typedef void (GLAPIENTRY * PFNGLVIEWPORTSWIZZLENVPROC) (GLuint index, GLenum swizzlex, GLenum swizzley, GLenum swizzlez, GLenum swizzlew); - -#define glViewportSwizzleNV GLEW_GET_FUN(__glewViewportSwizzleNV) - -#define GLEW_NV_viewport_swizzle GLEW_GET_VAR(__GLEW_NV_viewport_swizzle) - -#endif /* GL_NV_viewport_swizzle */ - -/* ---------------------------- GL_OES_EGL_image --------------------------- */ - -#ifndef GL_OES_EGL_image -#define GL_OES_EGL_image 1 - -typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); -typedef void (GLAPIENTRY * PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); - -#define glEGLImageTargetRenderbufferStorageOES GLEW_GET_FUN(__glewEGLImageTargetRenderbufferStorageOES) -#define glEGLImageTargetTexture2DOES GLEW_GET_FUN(__glewEGLImageTargetTexture2DOES) - -#define GLEW_OES_EGL_image GLEW_GET_VAR(__GLEW_OES_EGL_image) - -#endif /* GL_OES_EGL_image */ - -/* ----------------------- GL_OES_EGL_image_external ----------------------- */ - -#ifndef GL_OES_EGL_image_external -#define GL_OES_EGL_image_external 1 - -#define GL_TEXTURE_EXTERNAL_OES 0x8D65 -#define GL_SAMPLER_EXTERNAL_OES 0x8D66 -#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 -#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 - -#define GLEW_OES_EGL_image_external GLEW_GET_VAR(__GLEW_OES_EGL_image_external) - -#endif /* GL_OES_EGL_image_external */ - -/* -------------------- GL_OES_EGL_image_external_essl3 -------------------- */ - -#ifndef GL_OES_EGL_image_external_essl3 -#define GL_OES_EGL_image_external_essl3 1 - -#define GLEW_OES_EGL_image_external_essl3 GLEW_GET_VAR(__GLEW_OES_EGL_image_external_essl3) - -#endif /* GL_OES_EGL_image_external_essl3 */ - -/* --------------------- GL_OES_blend_equation_separate -------------------- */ - -#ifndef GL_OES_blend_equation_separate -#define GL_OES_blend_equation_separate 1 - -#define GL_BLEND_EQUATION_RGB_OES 0x8009 -#define GL_BLEND_EQUATION_ALPHA_OES 0x883D - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha); - -#define glBlendEquationSeparateOES GLEW_GET_FUN(__glewBlendEquationSeparateOES) - -#define GLEW_OES_blend_equation_separate GLEW_GET_VAR(__GLEW_OES_blend_equation_separate) - -#endif /* GL_OES_blend_equation_separate */ - -/* ----------------------- GL_OES_blend_func_separate ---------------------- */ - -#ifndef GL_OES_blend_func_separate -#define GL_OES_blend_func_separate 1 - -#define GL_BLEND_DST_RGB_OES 0x80C8 -#define GL_BLEND_SRC_RGB_OES 0x80C9 -#define GL_BLEND_DST_ALPHA_OES 0x80CA -#define GL_BLEND_SRC_ALPHA_OES 0x80CB - -typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); - -#define glBlendFuncSeparateOES GLEW_GET_FUN(__glewBlendFuncSeparateOES) - -#define GLEW_OES_blend_func_separate GLEW_GET_VAR(__GLEW_OES_blend_func_separate) - -#endif /* GL_OES_blend_func_separate */ - -/* ------------------------- GL_OES_blend_subtract ------------------------- */ - -#ifndef GL_OES_blend_subtract -#define GL_OES_blend_subtract 1 - -#define GL_FUNC_ADD_OES 0x8006 -#define GL_BLEND_EQUATION_OES 0x8009 -#define GL_FUNC_SUBTRACT_OES 0x800A -#define GL_FUNC_REVERSE_SUBTRACT_OES 0x800B - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONOESPROC) (GLenum mode); - -#define glBlendEquationOES GLEW_GET_FUN(__glewBlendEquationOES) - -#define GLEW_OES_blend_subtract GLEW_GET_VAR(__GLEW_OES_blend_subtract) - -#endif /* GL_OES_blend_subtract */ - -/* ------------------------ GL_OES_byte_coordinates ------------------------ */ - -#ifndef GL_OES_byte_coordinates -#define GL_OES_byte_coordinates 1 - -#define GLEW_OES_byte_coordinates GLEW_GET_VAR(__GLEW_OES_byte_coordinates) - -#endif /* GL_OES_byte_coordinates */ - -/* ------------------ GL_OES_compressed_ETC1_RGB8_texture ------------------ */ - -#ifndef GL_OES_compressed_ETC1_RGB8_texture -#define GL_OES_compressed_ETC1_RGB8_texture 1 - -#define GL_ETC1_RGB8_OES 0x8D64 - -#define GLEW_OES_compressed_ETC1_RGB8_texture GLEW_GET_VAR(__GLEW_OES_compressed_ETC1_RGB8_texture) - -#endif /* GL_OES_compressed_ETC1_RGB8_texture */ - -/* ------------------- GL_OES_compressed_paletted_texture ------------------ */ - -#ifndef GL_OES_compressed_paletted_texture -#define GL_OES_compressed_paletted_texture 1 - -#define GL_PALETTE4_RGB8_OES 0x8B90 -#define GL_PALETTE4_RGBA8_OES 0x8B91 -#define GL_PALETTE4_R5_G6_B5_OES 0x8B92 -#define GL_PALETTE4_RGBA4_OES 0x8B93 -#define GL_PALETTE4_RGB5_A1_OES 0x8B94 -#define GL_PALETTE8_RGB8_OES 0x8B95 -#define GL_PALETTE8_RGBA8_OES 0x8B96 -#define GL_PALETTE8_R5_G6_B5_OES 0x8B97 -#define GL_PALETTE8_RGBA4_OES 0x8B98 -#define GL_PALETTE8_RGB5_A1_OES 0x8B99 - -#define GLEW_OES_compressed_paletted_texture GLEW_GET_VAR(__GLEW_OES_compressed_paletted_texture) - -#endif /* GL_OES_compressed_paletted_texture */ - -/* --------------------------- GL_OES_copy_image --------------------------- */ - -#ifndef GL_OES_copy_image -#define GL_OES_copy_image 1 - -typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATAOESPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); - -#define glCopyImageSubDataOES GLEW_GET_FUN(__glewCopyImageSubDataOES) - -#define GLEW_OES_copy_image GLEW_GET_VAR(__GLEW_OES_copy_image) - -#endif /* GL_OES_copy_image */ - -/* ----------------------------- GL_OES_depth24 ---------------------------- */ - -#ifndef GL_OES_depth24 -#define GL_OES_depth24 1 - -#define GL_DEPTH_COMPONENT24_OES 0x81A6 - -#define GLEW_OES_depth24 GLEW_GET_VAR(__GLEW_OES_depth24) - -#endif /* GL_OES_depth24 */ - -/* ----------------------------- GL_OES_depth32 ---------------------------- */ - -#ifndef GL_OES_depth32 -#define GL_OES_depth32 1 - -#define GL_DEPTH_COMPONENT32_OES 0x81A7 - -#define GLEW_OES_depth32 GLEW_GET_VAR(__GLEW_OES_depth32) - -#endif /* GL_OES_depth32 */ - -/* -------------------------- GL_OES_depth_texture ------------------------- */ - -#ifndef GL_OES_depth_texture -#define GL_OES_depth_texture 1 - -#define GL_UNSIGNED_SHORT 0x1403 -#define GL_UNSIGNED_INT 0x1405 -#define GL_DEPTH_COMPONENT 0x1902 - -#define GLEW_OES_depth_texture GLEW_GET_VAR(__GLEW_OES_depth_texture) - -#endif /* GL_OES_depth_texture */ - -/* --------------------- GL_OES_depth_texture_cube_map --------------------- */ - -#ifndef GL_OES_depth_texture_cube_map -#define GL_OES_depth_texture_cube_map 1 - -#define GL_UNSIGNED_SHORT 0x1403 -#define GL_UNSIGNED_INT 0x1405 -#define GL_DEPTH_COMPONENT 0x1902 -#define GL_DEPTH_STENCIL_OES 0x84F9 -#define GL_DEPTH24_STENCIL8_OES 0x88F0 - -#define GLEW_OES_depth_texture_cube_map GLEW_GET_VAR(__GLEW_OES_depth_texture_cube_map) - -#endif /* GL_OES_depth_texture_cube_map */ - -/* ---------------------- GL_OES_draw_buffers_indexed ---------------------- */ - -#ifndef GL_OES_draw_buffers_indexed -#define GL_OES_draw_buffers_indexed 1 - -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIOESPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIOESPROC) (GLuint buf, GLenum mode); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIOESPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); -typedef void (GLAPIENTRY * PFNGLBLENDFUNCIOESPROC) (GLuint buf, GLenum src, GLenum dst); -typedef void (GLAPIENTRY * PFNGLCOLORMASKIOESPROC) (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); -typedef void (GLAPIENTRY * PFNGLDISABLEIOESPROC) (GLenum target, GLuint index); -typedef void (GLAPIENTRY * PFNGLENABLEIOESPROC) (GLenum target, GLuint index); -typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDIOESPROC) (GLenum target, GLuint index); - -#define glBlendEquationSeparateiOES GLEW_GET_FUN(__glewBlendEquationSeparateiOES) -#define glBlendEquationiOES GLEW_GET_FUN(__glewBlendEquationiOES) -#define glBlendFuncSeparateiOES GLEW_GET_FUN(__glewBlendFuncSeparateiOES) -#define glBlendFunciOES GLEW_GET_FUN(__glewBlendFunciOES) -#define glColorMaskiOES GLEW_GET_FUN(__glewColorMaskiOES) -#define glDisableiOES GLEW_GET_FUN(__glewDisableiOES) -#define glEnableiOES GLEW_GET_FUN(__glewEnableiOES) -#define glIsEnablediOES GLEW_GET_FUN(__glewIsEnablediOES) - -#define GLEW_OES_draw_buffers_indexed GLEW_GET_VAR(__GLEW_OES_draw_buffers_indexed) - -#endif /* GL_OES_draw_buffers_indexed */ - -/* -------------------------- GL_OES_draw_texture -------------------------- */ - -#ifndef GL_OES_draw_texture -#define GL_OES_draw_texture 1 - -#define GL_TEXTURE_CROP_RECT_OES 0x8B9D - -#define GLEW_OES_draw_texture GLEW_GET_VAR(__GLEW_OES_draw_texture) - -#endif /* GL_OES_draw_texture */ - -/* ----------------------- GL_OES_element_index_uint ----------------------- */ - -#ifndef GL_OES_element_index_uint -#define GL_OES_element_index_uint 1 - -#define GL_UNSIGNED_INT 0x1405 - -#define GLEW_OES_element_index_uint GLEW_GET_VAR(__GLEW_OES_element_index_uint) - -#endif /* GL_OES_element_index_uint */ - -/* --------------------- GL_OES_extended_matrix_palette -------------------- */ - -#ifndef GL_OES_extended_matrix_palette -#define GL_OES_extended_matrix_palette 1 - -#define GLEW_OES_extended_matrix_palette GLEW_GET_VAR(__GLEW_OES_extended_matrix_palette) - -#endif /* GL_OES_extended_matrix_palette */ - -/* ------------------------ GL_OES_fbo_render_mipmap ----------------------- */ - -#ifndef GL_OES_fbo_render_mipmap -#define GL_OES_fbo_render_mipmap 1 - -#define GLEW_OES_fbo_render_mipmap GLEW_GET_VAR(__GLEW_OES_fbo_render_mipmap) - -#endif /* GL_OES_fbo_render_mipmap */ - -/* --------------------- GL_OES_fragment_precision_high -------------------- */ - -#ifndef GL_OES_fragment_precision_high -#define GL_OES_fragment_precision_high 1 - -#define GLEW_OES_fragment_precision_high GLEW_GET_VAR(__GLEW_OES_fragment_precision_high) - -#endif /* GL_OES_fragment_precision_high */ - -/* ----------------------- GL_OES_framebuffer_object ----------------------- */ - -#ifndef GL_OES_framebuffer_object -#define GL_OES_framebuffer_object 1 - -#define GL_NONE_OES 0 -#define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506 -#define GL_RGBA4_OES 0x8056 -#define GL_RGB5_A1_OES 0x8057 -#define GL_DEPTH_COMPONENT16_OES 0x81A5 -#define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8 -#define GL_FRAMEBUFFER_BINDING_OES 0x8CA6 -#define GL_RENDERBUFFER_BINDING_OES 0x8CA7 -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0 -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4 -#define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5 -#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6 -#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7 -#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9 -#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA -#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES 0x8CDB -#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES 0x8CDC -#define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD -#define GL_COLOR_ATTACHMENT0_OES 0x8CE0 -#define GL_DEPTH_ATTACHMENT_OES 0x8D00 -#define GL_STENCIL_ATTACHMENT_OES 0x8D20 -#define GL_FRAMEBUFFER_OES 0x8D40 -#define GL_RENDERBUFFER_OES 0x8D41 -#define GL_RENDERBUFFER_WIDTH_OES 0x8D42 -#define GL_RENDERBUFFER_HEIGHT_OES 0x8D43 -#define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44 -#define GL_STENCIL_INDEX1_OES 0x8D46 -#define GL_STENCIL_INDEX4_OES 0x8D47 -#define GL_STENCIL_INDEX8_OES 0x8D48 -#define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50 -#define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51 -#define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52 -#define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53 -#define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54 -#define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55 -#define GL_RGB565_OES 0x8D62 - -typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer); -typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer); -typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers); -typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers); -typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers); -typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPOESPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params); -typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer); -typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer); -typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); - -#define glBindFramebufferOES GLEW_GET_FUN(__glewBindFramebufferOES) -#define glBindRenderbufferOES GLEW_GET_FUN(__glewBindRenderbufferOES) -#define glCheckFramebufferStatusOES GLEW_GET_FUN(__glewCheckFramebufferStatusOES) -#define glDeleteFramebuffersOES GLEW_GET_FUN(__glewDeleteFramebuffersOES) -#define glDeleteRenderbuffersOES GLEW_GET_FUN(__glewDeleteRenderbuffersOES) -#define glFramebufferRenderbufferOES GLEW_GET_FUN(__glewFramebufferRenderbufferOES) -#define glFramebufferTexture2DOES GLEW_GET_FUN(__glewFramebufferTexture2DOES) -#define glGenFramebuffersOES GLEW_GET_FUN(__glewGenFramebuffersOES) -#define glGenRenderbuffersOES GLEW_GET_FUN(__glewGenRenderbuffersOES) -#define glGenerateMipmapOES GLEW_GET_FUN(__glewGenerateMipmapOES) -#define glGetFramebufferAttachmentParameterivOES GLEW_GET_FUN(__glewGetFramebufferAttachmentParameterivOES) -#define glGetRenderbufferParameterivOES GLEW_GET_FUN(__glewGetRenderbufferParameterivOES) -#define glIsFramebufferOES GLEW_GET_FUN(__glewIsFramebufferOES) -#define glIsRenderbufferOES GLEW_GET_FUN(__glewIsRenderbufferOES) -#define glRenderbufferStorageOES GLEW_GET_FUN(__glewRenderbufferStorageOES) - -#define GLEW_OES_framebuffer_object GLEW_GET_VAR(__GLEW_OES_framebuffer_object) - -#endif /* GL_OES_framebuffer_object */ - -/* ----------------------- GL_OES_geometry_point_size ---------------------- */ - -#ifndef GL_OES_geometry_point_size -#define GL_OES_geometry_point_size 1 - -#define GL_GEOMETRY_SHADER_BIT_OES 0x00000004 -#define GL_LINES_ADJACENCY_OES 0xA -#define GL_LINE_STRIP_ADJACENCY_OES 0xB -#define GL_TRIANGLES_ADJACENCY_OES 0xC -#define GL_TRIANGLE_STRIP_ADJACENCY_OES 0xD -#define GL_LAYER_PROVOKING_VERTEX_OES 0x825E -#define GL_UNDEFINED_VERTEX_OES 0x8260 -#define GL_GEOMETRY_SHADER_INVOCATIONS_OES 0x887F -#define GL_GEOMETRY_LINKED_VERTICES_OUT_OES 0x8916 -#define GL_GEOMETRY_LINKED_INPUT_TYPE_OES 0x8917 -#define GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES 0x8918 -#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES 0x8A2C -#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES 0x8A32 -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES 0x8C29 -#define GL_PRIMITIVES_GENERATED_OES 0x8C87 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES 0x8DA8 -#define GL_GEOMETRY_SHADER_OES 0x8DD9 -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES 0x8DE1 -#define GL_FIRST_VERTEX_CONVENTION_OES 0x8E4D -#define GL_LAST_VERTEX_CONVENTION_OES 0x8E4E -#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES 0x8E5A -#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES 0x90CD -#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES 0x90D7 -#define GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES 0x9123 -#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES 0x9124 -#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES 0x92CF -#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES 0x92D5 -#define GL_REFERENCED_BY_GEOMETRY_SHADER_OES 0x9309 -#define GL_FRAMEBUFFER_DEFAULT_LAYERS_OES 0x9312 -#define GL_MAX_FRAMEBUFFER_LAYERS_OES 0x9317 - -#define GLEW_OES_geometry_point_size GLEW_GET_VAR(__GLEW_OES_geometry_point_size) - -#endif /* GL_OES_geometry_point_size */ - -/* ------------------------- GL_OES_geometry_shader ------------------------ */ - -#ifndef GL_OES_geometry_shader -#define GL_OES_geometry_shader 1 - -#define GL_GEOMETRY_SHADER_BIT_OES 0x00000004 -#define GL_LINES_ADJACENCY_OES 0xA -#define GL_LINE_STRIP_ADJACENCY_OES 0xB -#define GL_TRIANGLES_ADJACENCY_OES 0xC -#define GL_TRIANGLE_STRIP_ADJACENCY_OES 0xD -#define GL_LAYER_PROVOKING_VERTEX_OES 0x825E -#define GL_UNDEFINED_VERTEX_OES 0x8260 -#define GL_GEOMETRY_SHADER_INVOCATIONS_OES 0x887F -#define GL_GEOMETRY_LINKED_VERTICES_OUT_OES 0x8916 -#define GL_GEOMETRY_LINKED_INPUT_TYPE_OES 0x8917 -#define GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES 0x8918 -#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES 0x8A2C -#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES 0x8A32 -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES 0x8C29 -#define GL_PRIMITIVES_GENERATED_OES 0x8C87 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES 0x8DA8 -#define GL_GEOMETRY_SHADER_OES 0x8DD9 -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES 0x8DE1 -#define GL_FIRST_VERTEX_CONVENTION_OES 0x8E4D -#define GL_LAST_VERTEX_CONVENTION_OES 0x8E4E -#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES 0x8E5A -#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES 0x90CD -#define GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES 0x90D7 -#define GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES 0x9123 -#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES 0x9124 -#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES 0x92CF -#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES 0x92D5 -#define GL_REFERENCED_BY_GEOMETRY_SHADER_OES 0x9309 -#define GL_FRAMEBUFFER_DEFAULT_LAYERS_OES 0x9312 -#define GL_MAX_FRAMEBUFFER_LAYERS_OES 0x9317 - -#define GLEW_OES_geometry_shader GLEW_GET_VAR(__GLEW_OES_geometry_shader) - -#endif /* GL_OES_geometry_shader */ - -/* ----------------------- GL_OES_get_program_binary ----------------------- */ - -#ifndef GL_OES_get_program_binary -#define GL_OES_get_program_binary 1 - -#define GL_PROGRAM_BINARY_LENGTH_OES 0x8741 -#define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE -#define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF - -typedef void (GLAPIENTRY * PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLenum *binaryFormat, void*binary); -typedef void (GLAPIENTRY * PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLint length); - -#define glGetProgramBinaryOES GLEW_GET_FUN(__glewGetProgramBinaryOES) -#define glProgramBinaryOES GLEW_GET_FUN(__glewProgramBinaryOES) - -#define GLEW_OES_get_program_binary GLEW_GET_VAR(__GLEW_OES_get_program_binary) - -#endif /* GL_OES_get_program_binary */ - -/* --------------------------- GL_OES_gpu_shader5 -------------------------- */ - -#ifndef GL_OES_gpu_shader5 -#define GL_OES_gpu_shader5 1 - -#define GLEW_OES_gpu_shader5 GLEW_GET_VAR(__GLEW_OES_gpu_shader5) - -#endif /* GL_OES_gpu_shader5 */ - -/* ---------------------------- GL_OES_mapbuffer --------------------------- */ - -#ifndef GL_OES_mapbuffer -#define GL_OES_mapbuffer 1 - -#define GL_WRITE_ONLY_OES 0x88B9 -#define GL_BUFFER_ACCESS_OES 0x88BB -#define GL_BUFFER_MAPPED_OES 0x88BC -#define GL_BUFFER_MAP_POINTER_OES 0x88BD - -typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, void** params); -typedef void * (GLAPIENTRY * PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); -typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFEROESPROC) (GLenum target); - -#define glGetBufferPointervOES GLEW_GET_FUN(__glewGetBufferPointervOES) -#define glMapBufferOES GLEW_GET_FUN(__glewMapBufferOES) -#define glUnmapBufferOES GLEW_GET_FUN(__glewUnmapBufferOES) - -#define GLEW_OES_mapbuffer GLEW_GET_VAR(__GLEW_OES_mapbuffer) - -#endif /* GL_OES_mapbuffer */ - -/* --------------------------- GL_OES_matrix_get --------------------------- */ - -#ifndef GL_OES_matrix_get -#define GL_OES_matrix_get 1 - -#define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898d -#define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898e -#define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898f - -#define GLEW_OES_matrix_get GLEW_GET_VAR(__GLEW_OES_matrix_get) - -#endif /* GL_OES_matrix_get */ - -/* ------------------------- GL_OES_matrix_palette ------------------------- */ - -#ifndef GL_OES_matrix_palette -#define GL_OES_matrix_palette 1 - -#define GL_MAX_VERTEX_UNITS_OES 0x86A4 -#define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9 -#define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA -#define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB -#define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC -#define GL_WEIGHT_ARRAY_OES 0x86AD -#define GL_MATRIX_PALETTE_OES 0x8840 -#define GL_MAX_PALETTE_MATRICES_OES 0x8842 -#define GL_CURRENT_PALETTE_MATRIX_OES 0x8843 -#define GL_MATRIX_INDEX_ARRAY_OES 0x8844 -#define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846 -#define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847 -#define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848 -#define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849 -#define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E -#define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E - -typedef void (GLAPIENTRY * PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint index); -typedef void (GLAPIENTRY * PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); -typedef void (GLAPIENTRY * PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, void *pointer); - -#define glCurrentPaletteMatrixOES GLEW_GET_FUN(__glewCurrentPaletteMatrixOES) -#define glMatrixIndexPointerOES GLEW_GET_FUN(__glewMatrixIndexPointerOES) -#define glWeightPointerOES GLEW_GET_FUN(__glewWeightPointerOES) - -#define GLEW_OES_matrix_palette GLEW_GET_VAR(__GLEW_OES_matrix_palette) - -#endif /* GL_OES_matrix_palette */ - -/* ---------------------- GL_OES_packed_depth_stencil ---------------------- */ - -#ifndef GL_OES_packed_depth_stencil -#define GL_OES_packed_depth_stencil 1 - -#define GL_DEPTH_STENCIL_OES 0x84F9 -#define GL_UNSIGNED_INT_24_8_OES 0x84FA -#define GL_DEPTH24_STENCIL8_OES 0x88F0 - -#define GLEW_OES_packed_depth_stencil GLEW_GET_VAR(__GLEW_OES_packed_depth_stencil) - -#endif /* GL_OES_packed_depth_stencil */ - -/* ------------------------ GL_OES_point_size_array ------------------------ */ - -#ifndef GL_OES_point_size_array -#define GL_OES_point_size_array 1 - -#define GL_POINT_SIZE_ARRAY_TYPE_OES 0x898A -#define GL_POINT_SIZE_ARRAY_STRIDE_OES 0x898B -#define GL_POINT_SIZE_ARRAY_POINTER_OES 0x898C -#define GL_POINT_SIZE_ARRAY_OES 0x8B9C -#define GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES 0x8B9F - -#define GLEW_OES_point_size_array GLEW_GET_VAR(__GLEW_OES_point_size_array) - -#endif /* GL_OES_point_size_array */ - -/* -------------------------- GL_OES_point_sprite -------------------------- */ - -#ifndef GL_OES_point_sprite -#define GL_OES_point_sprite 1 - -#define GL_POINT_SPRITE_OES 0x8861 -#define GL_COORD_REPLACE_OES 0x8862 - -#define GLEW_OES_point_sprite GLEW_GET_VAR(__GLEW_OES_point_sprite) - -#endif /* GL_OES_point_sprite */ - -/* --------------------------- GL_OES_read_format -------------------------- */ - -#ifndef GL_OES_read_format -#define GL_OES_read_format 1 - -#define GL_IMPLEMENTATION_COLOR_READ_TYPE_OES 0x8B9A -#define GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES 0x8B9B - -#define GLEW_OES_read_format GLEW_GET_VAR(__GLEW_OES_read_format) - -#endif /* GL_OES_read_format */ - -/* --------------------- GL_OES_required_internalformat -------------------- */ - -#ifndef GL_OES_required_internalformat -#define GL_OES_required_internalformat 1 - -#define GL_ALPHA8_OES 0x803C -#define GL_LUMINANCE8_OES 0x8040 -#define GL_LUMINANCE4_ALPHA4_OES 0x8043 -#define GL_LUMINANCE8_ALPHA8_OES 0x8045 -#define GL_RGB8_OES 0x8051 -#define GL_RGB10_EXT 0x8052 -#define GL_RGBA4_OES 0x8056 -#define GL_RGB5_A1_OES 0x8057 -#define GL_RGBA8_OES 0x8058 -#define GL_RGB10_A2_EXT 0x8059 -#define GL_DEPTH_COMPONENT16_OES 0x81A5 -#define GL_DEPTH_COMPONENT24_OES 0x81A6 -#define GL_DEPTH_COMPONENT32_OES 0x81A7 -#define GL_DEPTH24_STENCIL8_OES 0x88F0 -#define GL_RGB565_OES 0x8D62 - -#define GLEW_OES_required_internalformat GLEW_GET_VAR(__GLEW_OES_required_internalformat) - -#endif /* GL_OES_required_internalformat */ - -/* --------------------------- GL_OES_rgb8_rgba8 --------------------------- */ - -#ifndef GL_OES_rgb8_rgba8 -#define GL_OES_rgb8_rgba8 1 - -#define GL_RGB8_OES 0x8051 -#define GL_RGBA8_OES 0x8058 - -#define GLEW_OES_rgb8_rgba8 GLEW_GET_VAR(__GLEW_OES_rgb8_rgba8) - -#endif /* GL_OES_rgb8_rgba8 */ - -/* ------------------------- GL_OES_sample_shading ------------------------- */ - -#ifndef GL_OES_sample_shading -#define GL_OES_sample_shading 1 - -#define GL_SAMPLE_SHADING_OES 0x8C36 -#define GL_MIN_SAMPLE_SHADING_VALUE_OES 0x8C37 - -typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGOESPROC) (GLfloat value); - -#define glMinSampleShadingOES GLEW_GET_FUN(__glewMinSampleShadingOES) - -#define GLEW_OES_sample_shading GLEW_GET_VAR(__GLEW_OES_sample_shading) - -#endif /* GL_OES_sample_shading */ - -/* ------------------------ GL_OES_sample_variables ------------------------ */ - -#ifndef GL_OES_sample_variables -#define GL_OES_sample_variables 1 - -#define GLEW_OES_sample_variables GLEW_GET_VAR(__GLEW_OES_sample_variables) - -#endif /* GL_OES_sample_variables */ - -/* ----------------------- GL_OES_shader_image_atomic ---------------------- */ - -#ifndef GL_OES_shader_image_atomic -#define GL_OES_shader_image_atomic 1 - -#define GLEW_OES_shader_image_atomic GLEW_GET_VAR(__GLEW_OES_shader_image_atomic) - -#endif /* GL_OES_shader_image_atomic */ - -/* ------------------------ GL_OES_shader_io_blocks ------------------------ */ - -#ifndef GL_OES_shader_io_blocks -#define GL_OES_shader_io_blocks 1 - -#define GLEW_OES_shader_io_blocks GLEW_GET_VAR(__GLEW_OES_shader_io_blocks) - -#endif /* GL_OES_shader_io_blocks */ - -/* ---------------- GL_OES_shader_multisample_interpolation ---------------- */ - -#ifndef GL_OES_shader_multisample_interpolation -#define GL_OES_shader_multisample_interpolation 1 - -#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES 0x8E5B -#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES 0x8E5C -#define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES 0x8E5D - -#define GLEW_OES_shader_multisample_interpolation GLEW_GET_VAR(__GLEW_OES_shader_multisample_interpolation) - -#endif /* GL_OES_shader_multisample_interpolation */ - -/* ------------------------ GL_OES_single_precision ------------------------ */ - -#ifndef GL_OES_single_precision -#define GL_OES_single_precision 1 - -typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFOESPROC) (GLclampf depth); -typedef void (GLAPIENTRY * PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat* equation); -typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFOESPROC) (GLclampf n, GLclampf f); -typedef void (GLAPIENTRY * PFNGLFRUSTUMFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f); -typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEFOESPROC) (GLenum plane, GLfloat* equation); -typedef void (GLAPIENTRY * PFNGLORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f); - -#define glClearDepthfOES GLEW_GET_FUN(__glewClearDepthfOES) -#define glClipPlanefOES GLEW_GET_FUN(__glewClipPlanefOES) -#define glDepthRangefOES GLEW_GET_FUN(__glewDepthRangefOES) -#define glFrustumfOES GLEW_GET_FUN(__glewFrustumfOES) -#define glGetClipPlanefOES GLEW_GET_FUN(__glewGetClipPlanefOES) -#define glOrthofOES GLEW_GET_FUN(__glewOrthofOES) - -#define GLEW_OES_single_precision GLEW_GET_VAR(__GLEW_OES_single_precision) - -#endif /* GL_OES_single_precision */ - -/* ---------------------- GL_OES_standard_derivatives ---------------------- */ - -#ifndef GL_OES_standard_derivatives -#define GL_OES_standard_derivatives 1 - -#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B - -#define GLEW_OES_standard_derivatives GLEW_GET_VAR(__GLEW_OES_standard_derivatives) - -#endif /* GL_OES_standard_derivatives */ - -/* ---------------------------- GL_OES_stencil1 ---------------------------- */ - -#ifndef GL_OES_stencil1 -#define GL_OES_stencil1 1 - -#define GL_STENCIL_INDEX1_OES 0x8D46 - -#define GLEW_OES_stencil1 GLEW_GET_VAR(__GLEW_OES_stencil1) - -#endif /* GL_OES_stencil1 */ - -/* ---------------------------- GL_OES_stencil4 ---------------------------- */ - -#ifndef GL_OES_stencil4 -#define GL_OES_stencil4 1 - -#define GL_STENCIL_INDEX4_OES 0x8D47 - -#define GLEW_OES_stencil4 GLEW_GET_VAR(__GLEW_OES_stencil4) - -#endif /* GL_OES_stencil4 */ - -/* ---------------------------- GL_OES_stencil8 ---------------------------- */ - -#ifndef GL_OES_stencil8 -#define GL_OES_stencil8 1 - -#define GL_STENCIL_INDEX8_OES 0x8D48 - -#define GLEW_OES_stencil8 GLEW_GET_VAR(__GLEW_OES_stencil8) - -#endif /* GL_OES_stencil8 */ - -/* ----------------------- GL_OES_surfaceless_context ---------------------- */ - -#ifndef GL_OES_surfaceless_context -#define GL_OES_surfaceless_context 1 - -#define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219 - -#define GLEW_OES_surfaceless_context GLEW_GET_VAR(__GLEW_OES_surfaceless_context) - -#endif /* GL_OES_surfaceless_context */ - -/* --------------------- GL_OES_tessellation_point_size -------------------- */ - -#ifndef GL_OES_tessellation_point_size -#define GL_OES_tessellation_point_size 1 - -#define GL_QUADS_OES 0x0007 -#define GL_TESS_CONTROL_SHADER_BIT_OES 0x00000008 -#define GL_PATCHES_OES 0xE -#define GL_TESS_EVALUATION_SHADER_BIT_OES 0x00000010 -#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES 0x8221 -#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES 0x886C -#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES 0x886D -#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES 0x8E1E -#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES 0x8E1F -#define GL_PATCH_VERTICES_OES 0x8E72 -#define GL_TESS_CONTROL_OUTPUT_VERTICES_OES 0x8E75 -#define GL_TESS_GEN_MODE_OES 0x8E76 -#define GL_TESS_GEN_SPACING_OES 0x8E77 -#define GL_TESS_GEN_VERTEX_ORDER_OES 0x8E78 -#define GL_TESS_GEN_POINT_MODE_OES 0x8E79 -#define GL_ISOLINES_OES 0x8E7A -#define GL_FRACTIONAL_ODD_OES 0x8E7B -#define GL_FRACTIONAL_EVEN_OES 0x8E7C -#define GL_MAX_PATCH_VERTICES_OES 0x8E7D -#define GL_MAX_TESS_GEN_LEVEL_OES 0x8E7E -#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES 0x8E7F -#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES 0x8E80 -#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES 0x8E81 -#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES 0x8E82 -#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES 0x8E83 -#define GL_MAX_TESS_PATCH_COMPONENTS_OES 0x8E84 -#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES 0x8E85 -#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES 0x8E86 -#define GL_TESS_EVALUATION_SHADER_OES 0x8E87 -#define GL_TESS_CONTROL_SHADER_OES 0x8E88 -#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES 0x8E89 -#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES 0x8E8A -#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES 0x90CB -#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES 0x90CC -#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES 0x90D8 -#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES 0x90D9 -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES 0x92CD -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES 0x92CE -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES 0x92D3 -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES 0x92D4 -#define GL_IS_PER_PATCH_OES 0x92E7 -#define GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES 0x9307 -#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES 0x9308 - -#define GLEW_OES_tessellation_point_size GLEW_GET_VAR(__GLEW_OES_tessellation_point_size) - -#endif /* GL_OES_tessellation_point_size */ - -/* ----------------------- GL_OES_tessellation_shader ---------------------- */ - -#ifndef GL_OES_tessellation_shader -#define GL_OES_tessellation_shader 1 - -#define GL_QUADS_OES 0x0007 -#define GL_TESS_CONTROL_SHADER_BIT_OES 0x00000008 -#define GL_PATCHES_OES 0xE -#define GL_TESS_EVALUATION_SHADER_BIT_OES 0x00000010 -#define GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES 0x8221 -#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES 0x886C -#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES 0x886D -#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES 0x8E1E -#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES 0x8E1F -#define GL_PATCH_VERTICES_OES 0x8E72 -#define GL_TESS_CONTROL_OUTPUT_VERTICES_OES 0x8E75 -#define GL_TESS_GEN_MODE_OES 0x8E76 -#define GL_TESS_GEN_SPACING_OES 0x8E77 -#define GL_TESS_GEN_VERTEX_ORDER_OES 0x8E78 -#define GL_TESS_GEN_POINT_MODE_OES 0x8E79 -#define GL_ISOLINES_OES 0x8E7A -#define GL_FRACTIONAL_ODD_OES 0x8E7B -#define GL_FRACTIONAL_EVEN_OES 0x8E7C -#define GL_MAX_PATCH_VERTICES_OES 0x8E7D -#define GL_MAX_TESS_GEN_LEVEL_OES 0x8E7E -#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES 0x8E7F -#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES 0x8E80 -#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES 0x8E81 -#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES 0x8E82 -#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES 0x8E83 -#define GL_MAX_TESS_PATCH_COMPONENTS_OES 0x8E84 -#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES 0x8E85 -#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES 0x8E86 -#define GL_TESS_EVALUATION_SHADER_OES 0x8E87 -#define GL_TESS_CONTROL_SHADER_OES 0x8E88 -#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES 0x8E89 -#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES 0x8E8A -#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES 0x90CB -#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES 0x90CC -#define GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES 0x90D8 -#define GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES 0x90D9 -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES 0x92CD -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES 0x92CE -#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES 0x92D3 -#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES 0x92D4 -#define GL_IS_PER_PATCH_OES 0x92E7 -#define GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES 0x9307 -#define GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES 0x9308 - -#define GLEW_OES_tessellation_shader GLEW_GET_VAR(__GLEW_OES_tessellation_shader) - -#endif /* GL_OES_tessellation_shader */ - -/* --------------------------- GL_OES_texture_3D --------------------------- */ - -#ifndef GL_OES_texture_3D -#define GL_OES_texture_3D 1 - -#define GL_TEXTURE_BINDING_3D_OES 0x806A -#define GL_TEXTURE_3D_OES 0x806F -#define GL_TEXTURE_WRAP_R_OES 0x8072 -#define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073 - -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); -typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); -typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); - -#define glCompressedTexImage3DOES GLEW_GET_FUN(__glewCompressedTexImage3DOES) -#define glCompressedTexSubImage3DOES GLEW_GET_FUN(__glewCompressedTexSubImage3DOES) -#define glCopyTexSubImage3DOES GLEW_GET_FUN(__glewCopyTexSubImage3DOES) -#define glFramebufferTexture3DOES GLEW_GET_FUN(__glewFramebufferTexture3DOES) -#define glTexImage3DOES GLEW_GET_FUN(__glewTexImage3DOES) -#define glTexSubImage3DOES GLEW_GET_FUN(__glewTexSubImage3DOES) - -#define GLEW_OES_texture_3D GLEW_GET_VAR(__GLEW_OES_texture_3D) - -#endif /* GL_OES_texture_3D */ - -/* ---------------------- GL_OES_texture_border_clamp ---------------------- */ - -#ifndef GL_OES_texture_border_clamp -#define GL_OES_texture_border_clamp 1 - -#define GL_TEXTURE_BORDER_COLOR_OES 0x1004 -#define GL_CLAMP_TO_BORDER_OES 0x812D - -typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIIVOESPROC) (GLuint sampler, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIUIVOESPROC) (GLuint sampler, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVOESPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVOESPROC) (GLenum target, GLenum pname, GLuint* params); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIIVOESPROC) (GLuint sampler, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIUIVOESPROC) (GLuint sampler, GLenum pname, const GLuint* params); -typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVOESPROC) (GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVOESPROC) (GLenum target, GLenum pname, const GLuint* params); - -#define glGetSamplerParameterIivOES GLEW_GET_FUN(__glewGetSamplerParameterIivOES) -#define glGetSamplerParameterIuivOES GLEW_GET_FUN(__glewGetSamplerParameterIuivOES) -#define glGetTexParameterIivOES GLEW_GET_FUN(__glewGetTexParameterIivOES) -#define glGetTexParameterIuivOES GLEW_GET_FUN(__glewGetTexParameterIuivOES) -#define glSamplerParameterIivOES GLEW_GET_FUN(__glewSamplerParameterIivOES) -#define glSamplerParameterIuivOES GLEW_GET_FUN(__glewSamplerParameterIuivOES) -#define glTexParameterIivOES GLEW_GET_FUN(__glewTexParameterIivOES) -#define glTexParameterIuivOES GLEW_GET_FUN(__glewTexParameterIuivOES) - -#define GLEW_OES_texture_border_clamp GLEW_GET_VAR(__GLEW_OES_texture_border_clamp) - -#endif /* GL_OES_texture_border_clamp */ - -/* ------------------------- GL_OES_texture_buffer ------------------------- */ - -#ifndef GL_OES_texture_buffer -#define GL_OES_texture_buffer 1 - -#define GL_TEXTURE_BUFFER_BINDING_OES 0x8C2A -#define GL_TEXTURE_BUFFER_OES 0x8C2A -#define GL_MAX_TEXTURE_BUFFER_SIZE_OES 0x8C2B -#define GL_TEXTURE_BINDING_BUFFER_OES 0x8C2C -#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_OES 0x8C2D -#define GL_SAMPLER_BUFFER_OES 0x8DC2 -#define GL_INT_SAMPLER_BUFFER_OES 0x8DD0 -#define GL_UNSIGNED_INT_SAMPLER_BUFFER_OES 0x8DD8 -#define GL_IMAGE_BUFFER_OES 0x9051 -#define GL_INT_IMAGE_BUFFER_OES 0x905C -#define GL_UNSIGNED_INT_IMAGE_BUFFER_OES 0x9067 -#define GL_TEXTURE_BUFFER_OFFSET_OES 0x919D -#define GL_TEXTURE_BUFFER_SIZE_OES 0x919E -#define GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_OES 0x919F - -typedef void (GLAPIENTRY * PFNGLTEXBUFFEROESPROC) (GLenum target, GLenum internalformat, GLuint buffer); -typedef void (GLAPIENTRY * PFNGLTEXBUFFERRANGEOESPROC) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); - -#define glTexBufferOES GLEW_GET_FUN(__glewTexBufferOES) -#define glTexBufferRangeOES GLEW_GET_FUN(__glewTexBufferRangeOES) - -#define GLEW_OES_texture_buffer GLEW_GET_VAR(__GLEW_OES_texture_buffer) - -#endif /* GL_OES_texture_buffer */ - -/* -------------------- GL_OES_texture_compression_astc -------------------- */ - -#ifndef GL_OES_texture_compression_astc -#define GL_OES_texture_compression_astc 1 - -#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0 -#define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1 -#define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2 -#define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3 -#define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4 -#define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5 -#define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6 -#define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7 -#define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8 -#define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9 -#define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA -#define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB -#define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC -#define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD -#define GL_COMPRESSED_RGBA_ASTC_3x3x3_OES 0x93C0 -#define GL_COMPRESSED_RGBA_ASTC_4x3x3_OES 0x93C1 -#define GL_COMPRESSED_RGBA_ASTC_4x4x3_OES 0x93C2 -#define GL_COMPRESSED_RGBA_ASTC_4x4x4_OES 0x93C3 -#define GL_COMPRESSED_RGBA_ASTC_5x4x4_OES 0x93C4 -#define GL_COMPRESSED_RGBA_ASTC_5x5x4_OES 0x93C5 -#define GL_COMPRESSED_RGBA_ASTC_5x5x5_OES 0x93C6 -#define GL_COMPRESSED_RGBA_ASTC_6x5x5_OES 0x93C7 -#define GL_COMPRESSED_RGBA_ASTC_6x6x5_OES 0x93C8 -#define GL_COMPRESSED_RGBA_ASTC_6x6x6_OES 0x93C9 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES 0x93E0 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES 0x93E1 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES 0x93E2 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES 0x93E3 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES 0x93E4 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES 0x93E5 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES 0x93E6 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES 0x93E7 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES 0x93E8 -#define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES 0x93E9 - -#define GLEW_OES_texture_compression_astc GLEW_GET_VAR(__GLEW_OES_texture_compression_astc) - -#endif /* GL_OES_texture_compression_astc */ - -/* ------------------------ GL_OES_texture_cube_map ------------------------ */ - -#ifndef GL_OES_texture_cube_map -#define GL_OES_texture_cube_map 1 - -#define GL_TEXTURE_GEN_MODE_OES 0x2500 -#define GL_NORMAL_MAP_OES 0x8511 -#define GL_REFLECTION_MAP_OES 0x8512 -#define GL_TEXTURE_CUBE_MAP_OES 0x8513 -#define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A -#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C -#define GL_TEXTURE_GEN_STR_OES 0x8D60 - -typedef void (GLAPIENTRY * PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed* params); -typedef void (GLAPIENTRY * PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param); -typedef void (GLAPIENTRY * PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed* params); - -#define glGetTexGenfvOES GLEW_GET_FUN(__glewGetTexGenfvOES) -#define glGetTexGenivOES GLEW_GET_FUN(__glewGetTexGenivOES) -#define glGetTexGenxvOES GLEW_GET_FUN(__glewGetTexGenxvOES) -#define glTexGenfOES GLEW_GET_FUN(__glewTexGenfOES) -#define glTexGenfvOES GLEW_GET_FUN(__glewTexGenfvOES) -#define glTexGeniOES GLEW_GET_FUN(__glewTexGeniOES) -#define glTexGenivOES GLEW_GET_FUN(__glewTexGenivOES) -#define glTexGenxOES GLEW_GET_FUN(__glewTexGenxOES) -#define glTexGenxvOES GLEW_GET_FUN(__glewTexGenxvOES) - -#define GLEW_OES_texture_cube_map GLEW_GET_VAR(__GLEW_OES_texture_cube_map) - -#endif /* GL_OES_texture_cube_map */ - -/* --------------------- GL_OES_texture_cube_map_array --------------------- */ - -#ifndef GL_OES_texture_cube_map_array -#define GL_OES_texture_cube_map_array 1 - -#define GL_TEXTURE_CUBE_MAP_ARRAY_OES 0x9009 -#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_OES 0x900A -#define GL_SAMPLER_CUBE_MAP_ARRAY_OES 0x900C -#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_OES 0x900D -#define GL_INT_SAMPLER_CUBE_MAP_ARRAY_OES 0x900E -#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_OES 0x900F -#define GL_IMAGE_CUBE_MAP_ARRAY_OES 0x9054 -#define GL_INT_IMAGE_CUBE_MAP_ARRAY_OES 0x905F -#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_OES 0x906A - -#define GLEW_OES_texture_cube_map_array GLEW_GET_VAR(__GLEW_OES_texture_cube_map_array) - -#endif /* GL_OES_texture_cube_map_array */ - -/* ---------------------- GL_OES_texture_env_crossbar ---------------------- */ - -#ifndef GL_OES_texture_env_crossbar -#define GL_OES_texture_env_crossbar 1 - -#define GLEW_OES_texture_env_crossbar GLEW_GET_VAR(__GLEW_OES_texture_env_crossbar) - -#endif /* GL_OES_texture_env_crossbar */ - -/* --------------------- GL_OES_texture_mirrored_repeat -------------------- */ - -#ifndef GL_OES_texture_mirrored_repeat -#define GL_OES_texture_mirrored_repeat 1 - -#define GL_MIRRORED_REPEAT 0x8370 - -#define GLEW_OES_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_OES_texture_mirrored_repeat) - -#endif /* GL_OES_texture_mirrored_repeat */ - -/* -------------------------- GL_OES_texture_npot -------------------------- */ - -#ifndef GL_OES_texture_npot -#define GL_OES_texture_npot 1 - -#define GLEW_OES_texture_npot GLEW_GET_VAR(__GLEW_OES_texture_npot) - -#endif /* GL_OES_texture_npot */ - -/* ------------------------ GL_OES_texture_stencil8 ------------------------ */ - -#ifndef GL_OES_texture_stencil8 -#define GL_OES_texture_stencil8 1 - -#define GL_STENCIL_INDEX 0x1901 -#define GL_STENCIL_INDEX8 0x8D48 - -#define GLEW_OES_texture_stencil8 GLEW_GET_VAR(__GLEW_OES_texture_stencil8) - -#endif /* GL_OES_texture_stencil8 */ - -/* -------------- GL_OES_texture_storage_multisample_2d_array -------------- */ - -#ifndef GL_OES_texture_storage_multisample_2d_array -#define GL_OES_texture_storage_multisample_2d_array 1 - -#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES 0x9102 -#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES 0x9105 -#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910B -#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910C -#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES 0x910D - -typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DMULTISAMPLEOESPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); - -#define glTexStorage3DMultisampleOES GLEW_GET_FUN(__glewTexStorage3DMultisampleOES) - -#define GLEW_OES_texture_storage_multisample_2d_array GLEW_GET_VAR(__GLEW_OES_texture_storage_multisample_2d_array) - -#endif /* GL_OES_texture_storage_multisample_2d_array */ - -/* -------------------------- GL_OES_texture_view -------------------------- */ - -#ifndef GL_OES_texture_view -#define GL_OES_texture_view 1 - -#define GL_TEXTURE_VIEW_MIN_LEVEL_OES 0x82DB -#define GL_TEXTURE_VIEW_NUM_LEVELS_OES 0x82DC -#define GL_TEXTURE_VIEW_MIN_LAYER_OES 0x82DD -#define GL_TEXTURE_VIEW_NUM_LAYERS_OES 0x82DE -#define GL_TEXTURE_IMMUTABLE_LEVELS 0x82DF - -typedef void (GLAPIENTRY * PFNGLTEXTUREVIEWOESPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers); - -#define glTextureViewOES GLEW_GET_FUN(__glewTextureViewOES) - -#define GLEW_OES_texture_view GLEW_GET_VAR(__GLEW_OES_texture_view) - -#endif /* GL_OES_texture_view */ - -/* ----------------------- GL_OES_vertex_array_object ---------------------- */ - -#ifndef GL_OES_vertex_array_object -#define GL_OES_vertex_array_object 1 - -#define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 - -typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); -typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint* arrays); -typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint* arrays); -typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYOESPROC) (GLuint array); - -#define glBindVertexArrayOES GLEW_GET_FUN(__glewBindVertexArrayOES) -#define glDeleteVertexArraysOES GLEW_GET_FUN(__glewDeleteVertexArraysOES) -#define glGenVertexArraysOES GLEW_GET_FUN(__glewGenVertexArraysOES) -#define glIsVertexArrayOES GLEW_GET_FUN(__glewIsVertexArrayOES) - -#define GLEW_OES_vertex_array_object GLEW_GET_VAR(__GLEW_OES_vertex_array_object) - -#endif /* GL_OES_vertex_array_object */ - -/* ------------------------ GL_OES_vertex_half_float ----------------------- */ - -#ifndef GL_OES_vertex_half_float -#define GL_OES_vertex_half_float 1 - -#define GL_HALF_FLOAT_OES 0x8D61 - -#define GLEW_OES_vertex_half_float GLEW_GET_VAR(__GLEW_OES_vertex_half_float) - -#endif /* GL_OES_vertex_half_float */ - -/* --------------------- GL_OES_vertex_type_10_10_10_2 --------------------- */ - -#ifndef GL_OES_vertex_type_10_10_10_2 -#define GL_OES_vertex_type_10_10_10_2 1 - -#define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6 -#define GL_INT_10_10_10_2_OES 0x8DF7 - -#define GLEW_OES_vertex_type_10_10_10_2 GLEW_GET_VAR(__GLEW_OES_vertex_type_10_10_10_2) - -#endif /* GL_OES_vertex_type_10_10_10_2 */ - -/* ---------------------------- GL_OML_interlace --------------------------- */ - -#ifndef GL_OML_interlace -#define GL_OML_interlace 1 - -#define GL_INTERLACE_OML 0x8980 -#define GL_INTERLACE_READ_OML 0x8981 - -#define GLEW_OML_interlace GLEW_GET_VAR(__GLEW_OML_interlace) - -#endif /* GL_OML_interlace */ - -/* ---------------------------- GL_OML_resample ---------------------------- */ - -#ifndef GL_OML_resample -#define GL_OML_resample 1 - -#define GL_PACK_RESAMPLE_OML 0x8984 -#define GL_UNPACK_RESAMPLE_OML 0x8985 -#define GL_RESAMPLE_REPLICATE_OML 0x8986 -#define GL_RESAMPLE_ZERO_FILL_OML 0x8987 -#define GL_RESAMPLE_AVERAGE_OML 0x8988 -#define GL_RESAMPLE_DECIMATE_OML 0x8989 - -#define GLEW_OML_resample GLEW_GET_VAR(__GLEW_OML_resample) - -#endif /* GL_OML_resample */ - -/* ---------------------------- GL_OML_subsample --------------------------- */ - -#ifndef GL_OML_subsample -#define GL_OML_subsample 1 - -#define GL_FORMAT_SUBSAMPLE_24_24_OML 0x8982 -#define GL_FORMAT_SUBSAMPLE_244_244_OML 0x8983 - -#define GLEW_OML_subsample GLEW_GET_VAR(__GLEW_OML_subsample) - -#endif /* GL_OML_subsample */ - -/* ---------------------------- GL_OVR_multiview --------------------------- */ - -#ifndef GL_OVR_multiview -#define GL_OVR_multiview 1 - -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR 0x9630 -#define GL_MAX_VIEWS_OVR 0x9631 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR 0x9632 -#define GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR 0x9633 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint baseViewIndex, GLsizei numViews); -typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint baseViewIndex, GLsizei numViews); - -#define glFramebufferTextureMultiviewOVR GLEW_GET_FUN(__glewFramebufferTextureMultiviewOVR) -#define glNamedFramebufferTextureMultiviewOVR GLEW_GET_FUN(__glewNamedFramebufferTextureMultiviewOVR) - -#define GLEW_OVR_multiview GLEW_GET_VAR(__GLEW_OVR_multiview) - -#endif /* GL_OVR_multiview */ - -/* --------------------------- GL_OVR_multiview2 --------------------------- */ - -#ifndef GL_OVR_multiview2 -#define GL_OVR_multiview2 1 - -#define GLEW_OVR_multiview2 GLEW_GET_VAR(__GLEW_OVR_multiview2) - -#endif /* GL_OVR_multiview2 */ - -/* ------------ GL_OVR_multiview_multisampled_render_to_texture ------------ */ - -#ifndef GL_OVR_multiview_multisampled_render_to_texture -#define GL_OVR_multiview_multisampled_render_to_texture 1 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREMULTISAMPLEMULTIVIEWOVRPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLsizei samples, GLint baseViewIndex, GLsizei numViews); - -#define glFramebufferTextureMultisampleMultiviewOVR GLEW_GET_FUN(__glewFramebufferTextureMultisampleMultiviewOVR) - -#define GLEW_OVR_multiview_multisampled_render_to_texture GLEW_GET_VAR(__GLEW_OVR_multiview_multisampled_render_to_texture) - -#endif /* GL_OVR_multiview_multisampled_render_to_texture */ - -/* --------------------------- GL_PGI_misc_hints --------------------------- */ - -#ifndef GL_PGI_misc_hints -#define GL_PGI_misc_hints 1 - -#define GL_PREFER_DOUBLEBUFFER_HINT_PGI 107000 -#define GL_CONSERVE_MEMORY_HINT_PGI 107005 -#define GL_RECLAIM_MEMORY_HINT_PGI 107006 -#define GL_NATIVE_GRAPHICS_HANDLE_PGI 107010 -#define GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI 107011 -#define GL_NATIVE_GRAPHICS_END_HINT_PGI 107012 -#define GL_ALWAYS_FAST_HINT_PGI 107020 -#define GL_ALWAYS_SOFT_HINT_PGI 107021 -#define GL_ALLOW_DRAW_OBJ_HINT_PGI 107022 -#define GL_ALLOW_DRAW_WIN_HINT_PGI 107023 -#define GL_ALLOW_DRAW_FRG_HINT_PGI 107024 -#define GL_ALLOW_DRAW_MEM_HINT_PGI 107025 -#define GL_STRICT_DEPTHFUNC_HINT_PGI 107030 -#define GL_STRICT_LIGHTING_HINT_PGI 107031 -#define GL_STRICT_SCISSOR_HINT_PGI 107032 -#define GL_FULL_STIPPLE_HINT_PGI 107033 -#define GL_CLIP_NEAR_HINT_PGI 107040 -#define GL_CLIP_FAR_HINT_PGI 107041 -#define GL_WIDE_LINE_HINT_PGI 107042 -#define GL_BACK_NORMALS_HINT_PGI 107043 - -#define GLEW_PGI_misc_hints GLEW_GET_VAR(__GLEW_PGI_misc_hints) - -#endif /* GL_PGI_misc_hints */ - -/* -------------------------- GL_PGI_vertex_hints -------------------------- */ - -#ifndef GL_PGI_vertex_hints -#define GL_PGI_vertex_hints 1 - -#define GL_VERTEX23_BIT_PGI 0x00000004 -#define GL_VERTEX4_BIT_PGI 0x00000008 -#define GL_COLOR3_BIT_PGI 0x00010000 -#define GL_COLOR4_BIT_PGI 0x00020000 -#define GL_EDGEFLAG_BIT_PGI 0x00040000 -#define GL_INDEX_BIT_PGI 0x00080000 -#define GL_MAT_AMBIENT_BIT_PGI 0x00100000 -#define GL_VERTEX_DATA_HINT_PGI 107050 -#define GL_VERTEX_CONSISTENT_HINT_PGI 107051 -#define GL_MATERIAL_SIDE_HINT_PGI 107052 -#define GL_MAX_VERTEX_HINT_PGI 107053 -#define GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI 0x00200000 -#define GL_MAT_DIFFUSE_BIT_PGI 0x00400000 -#define GL_MAT_EMISSION_BIT_PGI 0x00800000 -#define GL_MAT_COLOR_INDEXES_BIT_PGI 0x01000000 -#define GL_MAT_SHININESS_BIT_PGI 0x02000000 -#define GL_MAT_SPECULAR_BIT_PGI 0x04000000 -#define GL_NORMAL_BIT_PGI 0x08000000 -#define GL_TEXCOORD1_BIT_PGI 0x10000000 -#define GL_TEXCOORD2_BIT_PGI 0x20000000 -#define GL_TEXCOORD3_BIT_PGI 0x40000000 -#define GL_TEXCOORD4_BIT_PGI 0x80000000 - -#define GLEW_PGI_vertex_hints GLEW_GET_VAR(__GLEW_PGI_vertex_hints) - -#endif /* GL_PGI_vertex_hints */ - -/* ----------------------- GL_QCOM_YUV_texture_gather ---------------------- */ - -#ifndef GL_QCOM_YUV_texture_gather -#define GL_QCOM_YUV_texture_gather 1 - -#define GLEW_QCOM_YUV_texture_gather GLEW_GET_VAR(__GLEW_QCOM_YUV_texture_gather) - -#endif /* GL_QCOM_YUV_texture_gather */ - -/* --------------------------- GL_QCOM_alpha_test -------------------------- */ - -#ifndef GL_QCOM_alpha_test -#define GL_QCOM_alpha_test 1 - -#define GL_ALPHA_TEST_QCOM 0x0BC0 -#define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1 -#define GL_ALPHA_TEST_REF_QCOM 0x0BC2 - -typedef void (GLAPIENTRY * PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref); - -#define glAlphaFuncQCOM GLEW_GET_FUN(__glewAlphaFuncQCOM) - -#define GLEW_QCOM_alpha_test GLEW_GET_VAR(__GLEW_QCOM_alpha_test) - -#endif /* GL_QCOM_alpha_test */ - -/* ------------------------ GL_QCOM_binning_control ------------------------ */ - -#ifndef GL_QCOM_binning_control -#define GL_QCOM_binning_control 1 - -#define GL_DONT_CARE 0x1100 -#define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0 -#define GL_CPU_OPTIMIZED_QCOM 0x8FB1 -#define GL_GPU_OPTIMIZED_QCOM 0x8FB2 -#define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3 - -#define GLEW_QCOM_binning_control GLEW_GET_VAR(__GLEW_QCOM_binning_control) - -#endif /* GL_QCOM_binning_control */ - -/* ------------------------- GL_QCOM_driver_control ------------------------ */ - -#ifndef GL_QCOM_driver_control -#define GL_QCOM_driver_control 1 - -typedef void (GLAPIENTRY * PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); -typedef void (GLAPIENTRY * PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); -typedef void (GLAPIENTRY * PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei* length, GLchar *driverControlString); -typedef void (GLAPIENTRY * PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint* num, GLsizei size, GLuint *driverControls); - -#define glDisableDriverControlQCOM GLEW_GET_FUN(__glewDisableDriverControlQCOM) -#define glEnableDriverControlQCOM GLEW_GET_FUN(__glewEnableDriverControlQCOM) -#define glGetDriverControlStringQCOM GLEW_GET_FUN(__glewGetDriverControlStringQCOM) -#define glGetDriverControlsQCOM GLEW_GET_FUN(__glewGetDriverControlsQCOM) - -#define GLEW_QCOM_driver_control GLEW_GET_VAR(__GLEW_QCOM_driver_control) - -#endif /* GL_QCOM_driver_control */ - -/* -------------------------- GL_QCOM_extended_get ------------------------- */ - -#ifndef GL_QCOM_extended_get -#define GL_QCOM_extended_get 1 - -#define GL_TEXTURE_WIDTH_QCOM 0x8BD2 -#define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 -#define GL_TEXTURE_DEPTH_QCOM 0x8BD4 -#define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 -#define GL_TEXTURE_FORMAT_QCOM 0x8BD6 -#define GL_TEXTURE_TYPE_QCOM 0x8BD7 -#define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 -#define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 -#define GL_TEXTURE_TARGET_QCOM 0x8BDA -#define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB -#define GL_STATE_RESTORE 0x8BDC - -typedef void (GLAPIENTRY * PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, void** params); -typedef void (GLAPIENTRY * PFNGLEXTGETBUFFERSQCOMPROC) (GLuint* buffers, GLint maxBuffers, GLint* numBuffers); -typedef void (GLAPIENTRY * PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint* framebuffers, GLint maxFramebuffers, GLint* numFramebuffers); -typedef void (GLAPIENTRY * PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint* renderbuffers, GLint maxRenderbuffers, GLint* numRenderbuffers); -typedef void (GLAPIENTRY * PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, void *texels); -typedef void (GLAPIENTRY * PFNGLEXTGETTEXTURESQCOMPROC) (GLuint* textures, GLint maxTextures, GLint* numTextures); -typedef void (GLAPIENTRY * PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); - -#define glExtGetBufferPointervQCOM GLEW_GET_FUN(__glewExtGetBufferPointervQCOM) -#define glExtGetBuffersQCOM GLEW_GET_FUN(__glewExtGetBuffersQCOM) -#define glExtGetFramebuffersQCOM GLEW_GET_FUN(__glewExtGetFramebuffersQCOM) -#define glExtGetRenderbuffersQCOM GLEW_GET_FUN(__glewExtGetRenderbuffersQCOM) -#define glExtGetTexLevelParameterivQCOM GLEW_GET_FUN(__glewExtGetTexLevelParameterivQCOM) -#define glExtGetTexSubImageQCOM GLEW_GET_FUN(__glewExtGetTexSubImageQCOM) -#define glExtGetTexturesQCOM GLEW_GET_FUN(__glewExtGetTexturesQCOM) -#define glExtTexObjectStateOverrideiQCOM GLEW_GET_FUN(__glewExtTexObjectStateOverrideiQCOM) - -#define GLEW_QCOM_extended_get GLEW_GET_VAR(__GLEW_QCOM_extended_get) - -#endif /* GL_QCOM_extended_get */ - -/* ------------------------- GL_QCOM_extended_get2 ------------------------- */ - -#ifndef GL_QCOM_extended_get2 -#define GL_QCOM_extended_get2 1 - -typedef void (GLAPIENTRY * PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar* source, GLint* length); -typedef void (GLAPIENTRY * PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint* programs, GLint maxPrograms, GLint* numPrograms); -typedef void (GLAPIENTRY * PFNGLEXTGETSHADERSQCOMPROC) (GLuint* shaders, GLint maxShaders, GLint* numShaders); -typedef GLboolean (GLAPIENTRY * PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); - -#define glExtGetProgramBinarySourceQCOM GLEW_GET_FUN(__glewExtGetProgramBinarySourceQCOM) -#define glExtGetProgramsQCOM GLEW_GET_FUN(__glewExtGetProgramsQCOM) -#define glExtGetShadersQCOM GLEW_GET_FUN(__glewExtGetShadersQCOM) -#define glExtIsProgramBinaryQCOM GLEW_GET_FUN(__glewExtIsProgramBinaryQCOM) - -#define GLEW_QCOM_extended_get2 GLEW_GET_VAR(__GLEW_QCOM_extended_get2) - -#endif /* GL_QCOM_extended_get2 */ - -/* ---------------------- GL_QCOM_framebuffer_foveated --------------------- */ - -#ifndef GL_QCOM_framebuffer_foveated -#define GL_QCOM_framebuffer_foveated 1 - -#define GL_FOVEATION_ENABLE_BIT_QCOM 0x1 -#define GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM 0x2 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERFOVEATIONCONFIGQCOMPROC) (GLuint fbo, GLuint numLayers, GLuint focalPointsPerLayer, GLuint requestedFeatures, GLuint* providedFeatures); -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERFOVEATIONPARAMETERSQCOMPROC) (GLuint fbo, GLuint layer, GLuint focalPoint, GLfloat focalX, GLfloat focalY, GLfloat gainX, GLfloat gainY, GLfloat foveaArea); - -#define glFramebufferFoveationConfigQCOM GLEW_GET_FUN(__glewFramebufferFoveationConfigQCOM) -#define glFramebufferFoveationParametersQCOM GLEW_GET_FUN(__glewFramebufferFoveationParametersQCOM) - -#define GLEW_QCOM_framebuffer_foveated GLEW_GET_VAR(__GLEW_QCOM_framebuffer_foveated) - -#endif /* GL_QCOM_framebuffer_foveated */ - -/* ---------------------- GL_QCOM_perfmon_global_mode ---------------------- */ - -#ifndef GL_QCOM_perfmon_global_mode -#define GL_QCOM_perfmon_global_mode 1 - -#define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 - -#define GLEW_QCOM_perfmon_global_mode GLEW_GET_VAR(__GLEW_QCOM_perfmon_global_mode) - -#endif /* GL_QCOM_perfmon_global_mode */ - -/* -------------- GL_QCOM_shader_framebuffer_fetch_noncoherent ------------- */ - -#ifndef GL_QCOM_shader_framebuffer_fetch_noncoherent -#define GL_QCOM_shader_framebuffer_fetch_noncoherent 1 - -#define GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM 0x96A2 - -typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERFETCHBARRIERQCOMPROC) (void); - -#define glFramebufferFetchBarrierQCOM GLEW_GET_FUN(__glewFramebufferFetchBarrierQCOM) - -#define GLEW_QCOM_shader_framebuffer_fetch_noncoherent GLEW_GET_VAR(__GLEW_QCOM_shader_framebuffer_fetch_noncoherent) - -#endif /* GL_QCOM_shader_framebuffer_fetch_noncoherent */ - -/* ----------------- GL_QCOM_shader_framebuffer_fetch_rate ----------------- */ - -#ifndef GL_QCOM_shader_framebuffer_fetch_rate -#define GL_QCOM_shader_framebuffer_fetch_rate 1 - -#define GLEW_QCOM_shader_framebuffer_fetch_rate GLEW_GET_VAR(__GLEW_QCOM_shader_framebuffer_fetch_rate) - -#endif /* GL_QCOM_shader_framebuffer_fetch_rate */ - -/* ------------------------ GL_QCOM_texture_foveated ----------------------- */ - -#ifndef GL_QCOM_texture_foveated -#define GL_QCOM_texture_foveated 1 - -#define GL_FOVEATION_ENABLE_BIT_QCOM 0x1 -#define GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM 0x2 -#define GL_TEXTURE_FOVEATED_FEATURE_BITS_QCOM 0x8BFB -#define GL_TEXTURE_FOVEATED_MIN_PIXEL_DENSITY_QCOM 0x8BFC -#define GL_TEXTURE_FOVEATED_FEATURE_QUERY_QCOM 0x8BFD -#define GL_TEXTURE_FOVEATED_NUM_FOCAL_POINTS_QUERY_QCOM 0x8BFE -#define GL_FRAMEBUFFER_INCOMPLETE_FOVEATION_QCOM 0x8BFF - -typedef void (GLAPIENTRY * PFNGLTEXTUREFOVEATIONPARAMETERSQCOMPROC) (GLuint texture, GLuint layer, GLuint focalPoint, GLfloat focalX, GLfloat focalY, GLfloat gainX, GLfloat gainY, GLfloat foveaArea); - -#define glTextureFoveationParametersQCOM GLEW_GET_FUN(__glewTextureFoveationParametersQCOM) - -#define GLEW_QCOM_texture_foveated GLEW_GET_VAR(__GLEW_QCOM_texture_foveated) - -#endif /* GL_QCOM_texture_foveated */ - -/* --------------- GL_QCOM_texture_foveated_subsampled_layout -------------- */ - -#ifndef GL_QCOM_texture_foveated_subsampled_layout -#define GL_QCOM_texture_foveated_subsampled_layout 1 - -#define GL_FOVEATION_SUBSAMPLED_LAYOUT_METHOD_BIT_QCOM 0x4 -#define GL_MAX_SHADER_SUBSAMPLED_IMAGE_UNITS_QCOM 0x8FA1 - -#define GLEW_QCOM_texture_foveated_subsampled_layout GLEW_GET_VAR(__GLEW_QCOM_texture_foveated_subsampled_layout) - -#endif /* GL_QCOM_texture_foveated_subsampled_layout */ - -/* ------------------------ GL_QCOM_tiled_rendering ------------------------ */ - -#ifndef GL_QCOM_tiled_rendering -#define GL_QCOM_tiled_rendering 1 - -#define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 -#define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 -#define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 -#define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 -#define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 -#define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 -#define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 -#define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 -#define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 -#define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 -#define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 -#define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 -#define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 -#define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 -#define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 -#define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 -#define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 -#define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 -#define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 -#define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 -#define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 -#define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 -#define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 -#define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 -#define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 -#define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 -#define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 -#define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 -#define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 -#define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 -#define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 -#define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 - -typedef void (GLAPIENTRY * PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); -typedef void (GLAPIENTRY * PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); - -#define glEndTilingQCOM GLEW_GET_FUN(__glewEndTilingQCOM) -#define glStartTilingQCOM GLEW_GET_FUN(__glewStartTilingQCOM) - -#define GLEW_QCOM_tiled_rendering GLEW_GET_VAR(__GLEW_QCOM_tiled_rendering) - -#endif /* GL_QCOM_tiled_rendering */ - -/* ---------------------- GL_QCOM_writeonly_rendering ---------------------- */ - -#ifndef GL_QCOM_writeonly_rendering -#define GL_QCOM_writeonly_rendering 1 - -#define GL_WRITEONLY_RENDERING_QCOM 0x8823 - -#define GLEW_QCOM_writeonly_rendering GLEW_GET_VAR(__GLEW_QCOM_writeonly_rendering) - -#endif /* GL_QCOM_writeonly_rendering */ - -/* ---------------------- GL_REGAL_ES1_0_compatibility --------------------- */ - -#ifndef GL_REGAL_ES1_0_compatibility -#define GL_REGAL_ES1_0_compatibility 1 - -typedef int GLclampx; - -typedef void (GLAPIENTRY * PFNGLALPHAFUNCXPROC) (GLenum func, GLclampx ref); -typedef void (GLAPIENTRY * PFNGLCLEARCOLORXPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); -typedef void (GLAPIENTRY * PFNGLCLEARDEPTHXPROC) (GLclampx depth); -typedef void (GLAPIENTRY * PFNGLCOLOR4XPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); -typedef void (GLAPIENTRY * PFNGLDEPTHRANGEXPROC) (GLclampx zNear, GLclampx zFar); -typedef void (GLAPIENTRY * PFNGLFOGXPROC) (GLenum pname, GLfixed param); -typedef void (GLAPIENTRY * PFNGLFOGXVPROC) (GLenum pname, const GLfixed* params); -typedef void (GLAPIENTRY * PFNGLFRUSTUMFPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -typedef void (GLAPIENTRY * PFNGLFRUSTUMXPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -typedef void (GLAPIENTRY * PFNGLLIGHTMODELXPROC) (GLenum pname, GLfixed param); -typedef void (GLAPIENTRY * PFNGLLIGHTMODELXVPROC) (GLenum pname, const GLfixed* params); -typedef void (GLAPIENTRY * PFNGLLIGHTXPROC) (GLenum light, GLenum pname, GLfixed param); -typedef void (GLAPIENTRY * PFNGLLIGHTXVPROC) (GLenum light, GLenum pname, const GLfixed* params); -typedef void (GLAPIENTRY * PFNGLLINEWIDTHXPROC) (GLfixed width); -typedef void (GLAPIENTRY * PFNGLLOADMATRIXXPROC) (const GLfixed* m); -typedef void (GLAPIENTRY * PFNGLMATERIALXPROC) (GLenum face, GLenum pname, GLfixed param); -typedef void (GLAPIENTRY * PFNGLMATERIALXVPROC) (GLenum face, GLenum pname, const GLfixed* params); -typedef void (GLAPIENTRY * PFNGLMULTMATRIXXPROC) (const GLfixed* m); -typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4XPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); -typedef void (GLAPIENTRY * PFNGLNORMAL3XPROC) (GLfixed nx, GLfixed ny, GLfixed nz); -typedef void (GLAPIENTRY * PFNGLORTHOFPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -typedef void (GLAPIENTRY * PFNGLORTHOXPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -typedef void (GLAPIENTRY * PFNGLPOINTSIZEXPROC) (GLfixed size); -typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETXPROC) (GLfixed factor, GLfixed units); -typedef void (GLAPIENTRY * PFNGLROTATEXPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); -typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEXPROC) (GLclampx value, GLboolean invert); -typedef void (GLAPIENTRY * PFNGLSCALEXPROC) (GLfixed x, GLfixed y, GLfixed z); -typedef void (GLAPIENTRY * PFNGLTEXENVXPROC) (GLenum target, GLenum pname, GLfixed param); -typedef void (GLAPIENTRY * PFNGLTEXENVXVPROC) (GLenum target, GLenum pname, const GLfixed* params); -typedef void (GLAPIENTRY * PFNGLTEXPARAMETERXPROC) (GLenum target, GLenum pname, GLfixed param); -typedef void (GLAPIENTRY * PFNGLTRANSLATEXPROC) (GLfixed x, GLfixed y, GLfixed z); - -#define glAlphaFuncx GLEW_GET_FUN(__glewAlphaFuncx) -#define glClearColorx GLEW_GET_FUN(__glewClearColorx) -#define glClearDepthx GLEW_GET_FUN(__glewClearDepthx) -#define glColor4x GLEW_GET_FUN(__glewColor4x) -#define glDepthRangex GLEW_GET_FUN(__glewDepthRangex) -#define glFogx GLEW_GET_FUN(__glewFogx) -#define glFogxv GLEW_GET_FUN(__glewFogxv) -#define glFrustumf GLEW_GET_FUN(__glewFrustumf) -#define glFrustumx GLEW_GET_FUN(__glewFrustumx) -#define glLightModelx GLEW_GET_FUN(__glewLightModelx) -#define glLightModelxv GLEW_GET_FUN(__glewLightModelxv) -#define glLightx GLEW_GET_FUN(__glewLightx) -#define glLightxv GLEW_GET_FUN(__glewLightxv) -#define glLineWidthx GLEW_GET_FUN(__glewLineWidthx) -#define glLoadMatrixx GLEW_GET_FUN(__glewLoadMatrixx) -#define glMaterialx GLEW_GET_FUN(__glewMaterialx) -#define glMaterialxv GLEW_GET_FUN(__glewMaterialxv) -#define glMultMatrixx GLEW_GET_FUN(__glewMultMatrixx) -#define glMultiTexCoord4x GLEW_GET_FUN(__glewMultiTexCoord4x) -#define glNormal3x GLEW_GET_FUN(__glewNormal3x) -#define glOrthof GLEW_GET_FUN(__glewOrthof) -#define glOrthox GLEW_GET_FUN(__glewOrthox) -#define glPointSizex GLEW_GET_FUN(__glewPointSizex) -#define glPolygonOffsetx GLEW_GET_FUN(__glewPolygonOffsetx) -#define glRotatex GLEW_GET_FUN(__glewRotatex) -#define glSampleCoveragex GLEW_GET_FUN(__glewSampleCoveragex) -#define glScalex GLEW_GET_FUN(__glewScalex) -#define glTexEnvx GLEW_GET_FUN(__glewTexEnvx) -#define glTexEnvxv GLEW_GET_FUN(__glewTexEnvxv) -#define glTexParameterx GLEW_GET_FUN(__glewTexParameterx) -#define glTranslatex GLEW_GET_FUN(__glewTranslatex) - -#define GLEW_REGAL_ES1_0_compatibility GLEW_GET_VAR(__GLEW_REGAL_ES1_0_compatibility) - -#endif /* GL_REGAL_ES1_0_compatibility */ - -/* ---------------------- GL_REGAL_ES1_1_compatibility --------------------- */ - -#ifndef GL_REGAL_ES1_1_compatibility -#define GL_REGAL_ES1_1_compatibility 1 - -typedef void (GLAPIENTRY * PFNGLCLIPPLANEFPROC) (GLenum plane, const GLfloat* equation); -typedef void (GLAPIENTRY * PFNGLCLIPPLANEXPROC) (GLenum plane, const GLfixed* equation); -typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEFPROC) (GLenum pname, GLfloat eqn[4]); -typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEXPROC) (GLenum pname, GLfixed eqn[4]); -typedef void (GLAPIENTRY * PFNGLGETFIXEDVPROC) (GLenum pname, GLfixed* params); -typedef void (GLAPIENTRY * PFNGLGETLIGHTXVPROC) (GLenum light, GLenum pname, GLfixed* params); -typedef void (GLAPIENTRY * PFNGLGETMATERIALXVPROC) (GLenum face, GLenum pname, GLfixed* params); -typedef void (GLAPIENTRY * PFNGLGETTEXENVXVPROC) (GLenum env, GLenum pname, GLfixed* params); -typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERXVPROC) (GLenum target, GLenum pname, GLfixed* params); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERXPROC) (GLenum pname, GLfixed param); -typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERXVPROC) (GLenum pname, const GLfixed* params); -typedef void (GLAPIENTRY * PFNGLPOINTSIZEPOINTEROESPROC) (GLenum type, GLsizei stride, const void *pointer); -typedef void (GLAPIENTRY * PFNGLTEXPARAMETERXVPROC) (GLenum target, GLenum pname, const GLfixed* params); - -#define glClipPlanef GLEW_GET_FUN(__glewClipPlanef) -#define glClipPlanex GLEW_GET_FUN(__glewClipPlanex) -#define glGetClipPlanef GLEW_GET_FUN(__glewGetClipPlanef) -#define glGetClipPlanex GLEW_GET_FUN(__glewGetClipPlanex) -#define glGetFixedv GLEW_GET_FUN(__glewGetFixedv) -#define glGetLightxv GLEW_GET_FUN(__glewGetLightxv) -#define glGetMaterialxv GLEW_GET_FUN(__glewGetMaterialxv) -#define glGetTexEnvxv GLEW_GET_FUN(__glewGetTexEnvxv) -#define glGetTexParameterxv GLEW_GET_FUN(__glewGetTexParameterxv) -#define glPointParameterx GLEW_GET_FUN(__glewPointParameterx) -#define glPointParameterxv GLEW_GET_FUN(__glewPointParameterxv) -#define glPointSizePointerOES GLEW_GET_FUN(__glewPointSizePointerOES) -#define glTexParameterxv GLEW_GET_FUN(__glewTexParameterxv) - -#define GLEW_REGAL_ES1_1_compatibility GLEW_GET_VAR(__GLEW_REGAL_ES1_1_compatibility) - -#endif /* GL_REGAL_ES1_1_compatibility */ - -/* ---------------------------- GL_REGAL_enable ---------------------------- */ - -#ifndef GL_REGAL_enable -#define GL_REGAL_enable 1 - -#define GL_ERROR_REGAL 0x9322 -#define GL_DEBUG_REGAL 0x9323 -#define GL_LOG_REGAL 0x9324 -#define GL_EMULATION_REGAL 0x9325 -#define GL_DRIVER_REGAL 0x9326 -#define GL_MISSING_REGAL 0x9360 -#define GL_TRACE_REGAL 0x9361 -#define GL_CACHE_REGAL 0x9362 -#define GL_CODE_REGAL 0x9363 -#define GL_STATISTICS_REGAL 0x9364 - -#define GLEW_REGAL_enable GLEW_GET_VAR(__GLEW_REGAL_enable) - -#endif /* GL_REGAL_enable */ - -/* ------------------------- GL_REGAL_error_string ------------------------- */ - -#ifndef GL_REGAL_error_string -#define GL_REGAL_error_string 1 - -typedef const GLchar* (GLAPIENTRY * PFNGLERRORSTRINGREGALPROC) (GLenum error); - -#define glErrorStringREGAL GLEW_GET_FUN(__glewErrorStringREGAL) - -#define GLEW_REGAL_error_string GLEW_GET_VAR(__GLEW_REGAL_error_string) - -#endif /* GL_REGAL_error_string */ - -/* ------------------------ GL_REGAL_extension_query ----------------------- */ - -#ifndef GL_REGAL_extension_query -#define GL_REGAL_extension_query 1 - -typedef GLboolean (GLAPIENTRY * PFNGLGETEXTENSIONREGALPROC) (const GLchar* ext); -typedef GLboolean (GLAPIENTRY * PFNGLISSUPPORTEDREGALPROC) (const GLchar* ext); - -#define glGetExtensionREGAL GLEW_GET_FUN(__glewGetExtensionREGAL) -#define glIsSupportedREGAL GLEW_GET_FUN(__glewIsSupportedREGAL) - -#define GLEW_REGAL_extension_query GLEW_GET_VAR(__GLEW_REGAL_extension_query) - -#endif /* GL_REGAL_extension_query */ - -/* ------------------------------ GL_REGAL_log ----------------------------- */ - -#ifndef GL_REGAL_log -#define GL_REGAL_log 1 - -#define GL_LOG_ERROR_REGAL 0x9319 -#define GL_LOG_WARNING_REGAL 0x931A -#define GL_LOG_INFO_REGAL 0x931B -#define GL_LOG_APP_REGAL 0x931C -#define GL_LOG_DRIVER_REGAL 0x931D -#define GL_LOG_INTERNAL_REGAL 0x931E -#define GL_LOG_DEBUG_REGAL 0x931F -#define GL_LOG_STATUS_REGAL 0x9320 -#define GL_LOG_HTTP_REGAL 0x9321 - -typedef void (APIENTRY *GLLOGPROCREGAL)(GLenum stream, GLsizei length, const GLchar *message, void *context); - -typedef void (GLAPIENTRY * PFNGLLOGMESSAGECALLBACKREGALPROC) (GLLOGPROCREGAL callback); - -#define glLogMessageCallbackREGAL GLEW_GET_FUN(__glewLogMessageCallbackREGAL) - -#define GLEW_REGAL_log GLEW_GET_VAR(__GLEW_REGAL_log) - -#endif /* GL_REGAL_log */ - -/* ------------------------- GL_REGAL_proc_address ------------------------- */ - -#ifndef GL_REGAL_proc_address -#define GL_REGAL_proc_address 1 - -typedef void * (GLAPIENTRY * PFNGLGETPROCADDRESSREGALPROC) (const GLchar *name); - -#define glGetProcAddressREGAL GLEW_GET_FUN(__glewGetProcAddressREGAL) - -#define GLEW_REGAL_proc_address GLEW_GET_VAR(__GLEW_REGAL_proc_address) - -#endif /* GL_REGAL_proc_address */ - -/* ----------------------- GL_REND_screen_coordinates ---------------------- */ - -#ifndef GL_REND_screen_coordinates -#define GL_REND_screen_coordinates 1 - -#define GL_SCREEN_COORDINATES_REND 0x8490 -#define GL_INVERTED_SCREEN_W_REND 0x8491 - -#define GLEW_REND_screen_coordinates GLEW_GET_VAR(__GLEW_REND_screen_coordinates) - -#endif /* GL_REND_screen_coordinates */ - -/* ------------------------------- GL_S3_s3tc ------------------------------ */ - -#ifndef GL_S3_s3tc -#define GL_S3_s3tc 1 - -#define GL_RGB_S3TC 0x83A0 -#define GL_RGB4_S3TC 0x83A1 -#define GL_RGBA_S3TC 0x83A2 -#define GL_RGBA4_S3TC 0x83A3 -#define GL_RGBA_DXT5_S3TC 0x83A4 -#define GL_RGBA4_DXT5_S3TC 0x83A5 - -#define GLEW_S3_s3tc GLEW_GET_VAR(__GLEW_S3_s3tc) - -#endif /* GL_S3_s3tc */ - -/* ------------------------- GL_SGIS_clip_band_hint ------------------------ */ - -#ifndef GL_SGIS_clip_band_hint -#define GL_SGIS_clip_band_hint 1 - -#define GLEW_SGIS_clip_band_hint GLEW_GET_VAR(__GLEW_SGIS_clip_band_hint) - -#endif /* GL_SGIS_clip_band_hint */ - -/* -------------------------- GL_SGIS_color_range -------------------------- */ - -#ifndef GL_SGIS_color_range -#define GL_SGIS_color_range 1 - -#define GL_EXTENDED_RANGE_SGIS 0x85A5 -#define GL_MIN_RED_SGIS 0x85A6 -#define GL_MAX_RED_SGIS 0x85A7 -#define GL_MIN_GREEN_SGIS 0x85A8 -#define GL_MAX_GREEN_SGIS 0x85A9 -#define GL_MIN_BLUE_SGIS 0x85AA -#define GL_MAX_BLUE_SGIS 0x85AB -#define GL_MIN_ALPHA_SGIS 0x85AC -#define GL_MAX_ALPHA_SGIS 0x85AD - -#define GLEW_SGIS_color_range GLEW_GET_VAR(__GLEW_SGIS_color_range) - -#endif /* GL_SGIS_color_range */ - -/* ------------------------- GL_SGIS_detail_texture ------------------------ */ - -#ifndef GL_SGIS_detail_texture -#define GL_SGIS_detail_texture 1 - -typedef void (GLAPIENTRY * PFNGLDETAILTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat* points); -typedef void (GLAPIENTRY * PFNGLGETDETAILTEXFUNCSGISPROC) (GLenum target, GLfloat* points); - -#define glDetailTexFuncSGIS GLEW_GET_FUN(__glewDetailTexFuncSGIS) -#define glGetDetailTexFuncSGIS GLEW_GET_FUN(__glewGetDetailTexFuncSGIS) - -#define GLEW_SGIS_detail_texture GLEW_GET_VAR(__GLEW_SGIS_detail_texture) - -#endif /* GL_SGIS_detail_texture */ - -/* -------------------------- GL_SGIS_fog_function ------------------------- */ - -#ifndef GL_SGIS_fog_function -#define GL_SGIS_fog_function 1 - -typedef void (GLAPIENTRY * PFNGLFOGFUNCSGISPROC) (GLsizei n, const GLfloat* points); -typedef void (GLAPIENTRY * PFNGLGETFOGFUNCSGISPROC) (GLfloat* points); - -#define glFogFuncSGIS GLEW_GET_FUN(__glewFogFuncSGIS) -#define glGetFogFuncSGIS GLEW_GET_FUN(__glewGetFogFuncSGIS) - -#define GLEW_SGIS_fog_function GLEW_GET_VAR(__GLEW_SGIS_fog_function) - -#endif /* GL_SGIS_fog_function */ - -/* ------------------------ GL_SGIS_generate_mipmap ------------------------ */ - -#ifndef GL_SGIS_generate_mipmap -#define GL_SGIS_generate_mipmap 1 - -#define GL_GENERATE_MIPMAP_SGIS 0x8191 -#define GL_GENERATE_MIPMAP_HINT_SGIS 0x8192 - -#define GLEW_SGIS_generate_mipmap GLEW_GET_VAR(__GLEW_SGIS_generate_mipmap) - -#endif /* GL_SGIS_generate_mipmap */ - -/* -------------------------- GL_SGIS_line_texgen -------------------------- */ - -#ifndef GL_SGIS_line_texgen -#define GL_SGIS_line_texgen 1 - -#define GLEW_SGIS_line_texgen GLEW_GET_VAR(__GLEW_SGIS_line_texgen) - -#endif /* GL_SGIS_line_texgen */ - -/* -------------------------- GL_SGIS_multisample -------------------------- */ - -#ifndef GL_SGIS_multisample -#define GL_SGIS_multisample 1 - -#define GL_MULTISAMPLE_SGIS 0x809D -#define GL_SAMPLE_ALPHA_TO_MASK_SGIS 0x809E -#define GL_SAMPLE_ALPHA_TO_ONE_SGIS 0x809F -#define GL_SAMPLE_MASK_SGIS 0x80A0 -#define GL_1PASS_SGIS 0x80A1 -#define GL_2PASS_0_SGIS 0x80A2 -#define GL_2PASS_1_SGIS 0x80A3 -#define GL_4PASS_0_SGIS 0x80A4 -#define GL_4PASS_1_SGIS 0x80A5 -#define GL_4PASS_2_SGIS 0x80A6 -#define GL_4PASS_3_SGIS 0x80A7 -#define GL_SAMPLE_BUFFERS_SGIS 0x80A8 -#define GL_SAMPLES_SGIS 0x80A9 -#define GL_SAMPLE_MASK_VALUE_SGIS 0x80AA -#define GL_SAMPLE_MASK_INVERT_SGIS 0x80AB -#define GL_SAMPLE_PATTERN_SGIS 0x80AC - -typedef void (GLAPIENTRY * PFNGLSAMPLEMASKSGISPROC) (GLclampf value, GLboolean invert); -typedef void (GLAPIENTRY * PFNGLSAMPLEPATTERNSGISPROC) (GLenum pattern); - -#define glSampleMaskSGIS GLEW_GET_FUN(__glewSampleMaskSGIS) -#define glSamplePatternSGIS GLEW_GET_FUN(__glewSamplePatternSGIS) - -#define GLEW_SGIS_multisample GLEW_GET_VAR(__GLEW_SGIS_multisample) - -#endif /* GL_SGIS_multisample */ - -/* -------------------------- GL_SGIS_multitexture ------------------------- */ - -#ifndef GL_SGIS_multitexture -#define GL_SGIS_multitexture 1 - -#define GL_SELECTED_TEXTURE_SGIS 0x83C0 -#define GL_SELECTED_TEXTURE_COORD_SET_SGIS 0x83C1 -#define GL_SELECTED_TEXTURE_TRANSFORM_SGIS 0x83C2 -#define GL_MAX_TEXTURES_SGIS 0x83C3 -#define GL_MAX_TEXTURE_COORD_SETS_SGIS 0x83C4 -#define GL_TEXTURE_COORD_SET_INTERLEAVE_FACTOR_SGIS 0x83C5 -#define GL_TEXTURE_ENV_COORD_SET_SGIS 0x83C6 -#define GL_TEXTURE0_SGIS 0x83C7 -#define GL_TEXTURE1_SGIS 0x83C8 -#define GL_TEXTURE2_SGIS 0x83C9 -#define GL_TEXTURE3_SGIS 0x83CA - -typedef void (GLAPIENTRY * PFNGLINTERLEAVEDTEXTURECOORDSETSSGISPROC) (GLint factor); -typedef void (GLAPIENTRY * PFNGLSELECTTEXTURECOORDSETSGISPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLSELECTTEXTURESGISPROC) (GLenum target); -typedef void (GLAPIENTRY * PFNGLSELECTTEXTURETRANSFORMSGISPROC) (GLenum target); - -#define glInterleavedTextureCoordSetsSGIS GLEW_GET_FUN(__glewInterleavedTextureCoordSetsSGIS) -#define glSelectTextureCoordSetSGIS GLEW_GET_FUN(__glewSelectTextureCoordSetSGIS) -#define glSelectTextureSGIS GLEW_GET_FUN(__glewSelectTextureSGIS) -#define glSelectTextureTransformSGIS GLEW_GET_FUN(__glewSelectTextureTransformSGIS) - -#define GLEW_SGIS_multitexture GLEW_GET_VAR(__GLEW_SGIS_multitexture) - -#endif /* GL_SGIS_multitexture */ - -/* ------------------------- GL_SGIS_pixel_texture ------------------------- */ - -#ifndef GL_SGIS_pixel_texture -#define GL_SGIS_pixel_texture 1 - -#define GLEW_SGIS_pixel_texture GLEW_GET_VAR(__GLEW_SGIS_pixel_texture) - -#endif /* GL_SGIS_pixel_texture */ - -/* ----------------------- GL_SGIS_point_line_texgen ----------------------- */ - -#ifndef GL_SGIS_point_line_texgen -#define GL_SGIS_point_line_texgen 1 - -#define GL_EYE_DISTANCE_TO_POINT_SGIS 0x81F0 -#define GL_OBJECT_DISTANCE_TO_POINT_SGIS 0x81F1 -#define GL_EYE_DISTANCE_TO_LINE_SGIS 0x81F2 -#define GL_OBJECT_DISTANCE_TO_LINE_SGIS 0x81F3 -#define GL_EYE_POINT_SGIS 0x81F4 -#define GL_OBJECT_POINT_SGIS 0x81F5 -#define GL_EYE_LINE_SGIS 0x81F6 -#define GL_OBJECT_LINE_SGIS 0x81F7 - -#define GLEW_SGIS_point_line_texgen GLEW_GET_VAR(__GLEW_SGIS_point_line_texgen) - -#endif /* GL_SGIS_point_line_texgen */ - -/* ----------------------- GL_SGIS_shared_multisample ---------------------- */ - -#ifndef GL_SGIS_shared_multisample -#define GL_SGIS_shared_multisample 1 - -typedef void (GLAPIENTRY * PFNGLMULTISAMPLESUBRECTPOSSGISPROC) (GLint x, GLint y); - -#define glMultisampleSubRectPosSGIS GLEW_GET_FUN(__glewMultisampleSubRectPosSGIS) - -#define GLEW_SGIS_shared_multisample GLEW_GET_VAR(__GLEW_SGIS_shared_multisample) - -#endif /* GL_SGIS_shared_multisample */ - -/* ------------------------ GL_SGIS_sharpen_texture ------------------------ */ - -#ifndef GL_SGIS_sharpen_texture -#define GL_SGIS_sharpen_texture 1 - -typedef void (GLAPIENTRY * PFNGLGETSHARPENTEXFUNCSGISPROC) (GLenum target, GLfloat* points); -typedef void (GLAPIENTRY * PFNGLSHARPENTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat* points); - -#define glGetSharpenTexFuncSGIS GLEW_GET_FUN(__glewGetSharpenTexFuncSGIS) -#define glSharpenTexFuncSGIS GLEW_GET_FUN(__glewSharpenTexFuncSGIS) - -#define GLEW_SGIS_sharpen_texture GLEW_GET_VAR(__GLEW_SGIS_sharpen_texture) - -#endif /* GL_SGIS_sharpen_texture */ - -/* --------------------------- GL_SGIS_texture4D --------------------------- */ - -#ifndef GL_SGIS_texture4D -#define GL_SGIS_texture4D 1 - -typedef void (GLAPIENTRY * PFNGLTEXIMAGE4DSGISPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLint border, GLenum format, GLenum type, const void *pixels); -typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE4DSGISPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLenum format, GLenum type, const void *pixels); - -#define glTexImage4DSGIS GLEW_GET_FUN(__glewTexImage4DSGIS) -#define glTexSubImage4DSGIS GLEW_GET_FUN(__glewTexSubImage4DSGIS) - -#define GLEW_SGIS_texture4D GLEW_GET_VAR(__GLEW_SGIS_texture4D) - -#endif /* GL_SGIS_texture4D */ - -/* ---------------------- GL_SGIS_texture_border_clamp --------------------- */ - -#ifndef GL_SGIS_texture_border_clamp -#define GL_SGIS_texture_border_clamp 1 - -#define GL_CLAMP_TO_BORDER_SGIS 0x812D - -#define GLEW_SGIS_texture_border_clamp GLEW_GET_VAR(__GLEW_SGIS_texture_border_clamp) - -#endif /* GL_SGIS_texture_border_clamp */ - -/* ----------------------- GL_SGIS_texture_edge_clamp ---------------------- */ - -#ifndef GL_SGIS_texture_edge_clamp -#define GL_SGIS_texture_edge_clamp 1 - -#define GL_CLAMP_TO_EDGE_SGIS 0x812F - -#define GLEW_SGIS_texture_edge_clamp GLEW_GET_VAR(__GLEW_SGIS_texture_edge_clamp) - -#endif /* GL_SGIS_texture_edge_clamp */ - -/* ------------------------ GL_SGIS_texture_filter4 ------------------------ */ - -#ifndef GL_SGIS_texture_filter4 -#define GL_SGIS_texture_filter4 1 - -typedef void (GLAPIENTRY * PFNGLGETTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLfloat* weights); -typedef void (GLAPIENTRY * PFNGLTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLsizei n, const GLfloat* weights); - -#define glGetTexFilterFuncSGIS GLEW_GET_FUN(__glewGetTexFilterFuncSGIS) -#define glTexFilterFuncSGIS GLEW_GET_FUN(__glewTexFilterFuncSGIS) - -#define GLEW_SGIS_texture_filter4 GLEW_GET_VAR(__GLEW_SGIS_texture_filter4) - -#endif /* GL_SGIS_texture_filter4 */ - -/* -------------------------- GL_SGIS_texture_lod -------------------------- */ - -#ifndef GL_SGIS_texture_lod -#define GL_SGIS_texture_lod 1 - -#define GL_TEXTURE_MIN_LOD_SGIS 0x813A -#define GL_TEXTURE_MAX_LOD_SGIS 0x813B -#define GL_TEXTURE_BASE_LEVEL_SGIS 0x813C -#define GL_TEXTURE_MAX_LEVEL_SGIS 0x813D - -#define GLEW_SGIS_texture_lod GLEW_GET_VAR(__GLEW_SGIS_texture_lod) - -#endif /* GL_SGIS_texture_lod */ - -/* ------------------------- GL_SGIS_texture_select ------------------------ */ - -#ifndef GL_SGIS_texture_select -#define GL_SGIS_texture_select 1 - -#define GLEW_SGIS_texture_select GLEW_GET_VAR(__GLEW_SGIS_texture_select) - -#endif /* GL_SGIS_texture_select */ - -/* ----------------------------- GL_SGIX_async ----------------------------- */ - -#ifndef GL_SGIX_async -#define GL_SGIX_async 1 - -#define GL_ASYNC_MARKER_SGIX 0x8329 - -typedef void (GLAPIENTRY * PFNGLASYNCMARKERSGIXPROC) (GLuint marker); -typedef void (GLAPIENTRY * PFNGLDELETEASYNCMARKERSSGIXPROC) (GLuint marker, GLsizei range); -typedef GLint (GLAPIENTRY * PFNGLFINISHASYNCSGIXPROC) (GLuint* markerp); -typedef GLuint (GLAPIENTRY * PFNGLGENASYNCMARKERSSGIXPROC) (GLsizei range); -typedef GLboolean (GLAPIENTRY * PFNGLISASYNCMARKERSGIXPROC) (GLuint marker); -typedef GLint (GLAPIENTRY * PFNGLPOLLASYNCSGIXPROC) (GLuint* markerp); - -#define glAsyncMarkerSGIX GLEW_GET_FUN(__glewAsyncMarkerSGIX) -#define glDeleteAsyncMarkersSGIX GLEW_GET_FUN(__glewDeleteAsyncMarkersSGIX) -#define glFinishAsyncSGIX GLEW_GET_FUN(__glewFinishAsyncSGIX) -#define glGenAsyncMarkersSGIX GLEW_GET_FUN(__glewGenAsyncMarkersSGIX) -#define glIsAsyncMarkerSGIX GLEW_GET_FUN(__glewIsAsyncMarkerSGIX) -#define glPollAsyncSGIX GLEW_GET_FUN(__glewPollAsyncSGIX) - -#define GLEW_SGIX_async GLEW_GET_VAR(__GLEW_SGIX_async) - -#endif /* GL_SGIX_async */ - -/* ------------------------ GL_SGIX_async_histogram ------------------------ */ - -#ifndef GL_SGIX_async_histogram -#define GL_SGIX_async_histogram 1 - -#define GL_ASYNC_HISTOGRAM_SGIX 0x832C -#define GL_MAX_ASYNC_HISTOGRAM_SGIX 0x832D - -#define GLEW_SGIX_async_histogram GLEW_GET_VAR(__GLEW_SGIX_async_histogram) - -#endif /* GL_SGIX_async_histogram */ - -/* -------------------------- GL_SGIX_async_pixel -------------------------- */ - -#ifndef GL_SGIX_async_pixel -#define GL_SGIX_async_pixel 1 - -#define GL_ASYNC_TEX_IMAGE_SGIX 0x835C -#define GL_ASYNC_DRAW_PIXELS_SGIX 0x835D -#define GL_ASYNC_READ_PIXELS_SGIX 0x835E -#define GL_MAX_ASYNC_TEX_IMAGE_SGIX 0x835F -#define GL_MAX_ASYNC_DRAW_PIXELS_SGIX 0x8360 -#define GL_MAX_ASYNC_READ_PIXELS_SGIX 0x8361 - -#define GLEW_SGIX_async_pixel GLEW_GET_VAR(__GLEW_SGIX_async_pixel) - -#endif /* GL_SGIX_async_pixel */ - -/* ----------------------- GL_SGIX_bali_g_instruments ---------------------- */ - -#ifndef GL_SGIX_bali_g_instruments -#define GL_SGIX_bali_g_instruments 1 - -#define GL_BALI_NUM_TRIS_CULLED_INSTRUMENT 0x6080 -#define GL_BALI_NUM_PRIMS_CLIPPED_INSTRUMENT 0x6081 -#define GL_BALI_NUM_PRIMS_REJECT_INSTRUMENT 0x6082 -#define GL_BALI_NUM_PRIMS_CLIP_RESULT_INSTRUMENT 0x6083 - -#define GLEW_SGIX_bali_g_instruments GLEW_GET_VAR(__GLEW_SGIX_bali_g_instruments) - -#endif /* GL_SGIX_bali_g_instruments */ - -/* ----------------------- GL_SGIX_bali_r_instruments ---------------------- */ - -#ifndef GL_SGIX_bali_r_instruments -#define GL_SGIX_bali_r_instruments 1 - -#define GL_BALI_FRAGMENTS_GENERATED_INSTRUMENT 0x6090 -#define GL_BALI_DEPTH_PASS_INSTRUMENT 0x6091 -#define GL_BALI_R_CHIP_COUNT 0x6092 - -#define GLEW_SGIX_bali_r_instruments GLEW_GET_VAR(__GLEW_SGIX_bali_r_instruments) - -#endif /* GL_SGIX_bali_r_instruments */ - -/* --------------------- GL_SGIX_bali_timer_instruments -------------------- */ - -#ifndef GL_SGIX_bali_timer_instruments -#define GL_SGIX_bali_timer_instruments 1 - -#define GLEW_SGIX_bali_timer_instruments GLEW_GET_VAR(__GLEW_SGIX_bali_timer_instruments) - -#endif /* GL_SGIX_bali_timer_instruments */ - -/* ----------------------- GL_SGIX_blend_alpha_minmax ---------------------- */ - -#ifndef GL_SGIX_blend_alpha_minmax -#define GL_SGIX_blend_alpha_minmax 1 - -#define GL_ALPHA_MIN_SGIX 0x8320 -#define GL_ALPHA_MAX_SGIX 0x8321 - -#define GLEW_SGIX_blend_alpha_minmax GLEW_GET_VAR(__GLEW_SGIX_blend_alpha_minmax) - -#endif /* GL_SGIX_blend_alpha_minmax */ - -/* --------------------------- GL_SGIX_blend_cadd -------------------------- */ - -#ifndef GL_SGIX_blend_cadd -#define GL_SGIX_blend_cadd 1 - -#define GL_FUNC_COMPLEX_ADD_EXT 0x601C - -#define GLEW_SGIX_blend_cadd GLEW_GET_VAR(__GLEW_SGIX_blend_cadd) - -#endif /* GL_SGIX_blend_cadd */ - -/* ------------------------ GL_SGIX_blend_cmultiply ------------------------ */ - -#ifndef GL_SGIX_blend_cmultiply -#define GL_SGIX_blend_cmultiply 1 - -#define GL_FUNC_COMPLEX_MULTIPLY_EXT 0x601B - -#define GLEW_SGIX_blend_cmultiply GLEW_GET_VAR(__GLEW_SGIX_blend_cmultiply) - -#endif /* GL_SGIX_blend_cmultiply */ - -/* --------------------- GL_SGIX_calligraphic_fragment --------------------- */ - -#ifndef GL_SGIX_calligraphic_fragment -#define GL_SGIX_calligraphic_fragment 1 - -#define GLEW_SGIX_calligraphic_fragment GLEW_GET_VAR(__GLEW_SGIX_calligraphic_fragment) - -#endif /* GL_SGIX_calligraphic_fragment */ - -/* ---------------------------- GL_SGIX_clipmap ---------------------------- */ - -#ifndef GL_SGIX_clipmap -#define GL_SGIX_clipmap 1 - -#define GLEW_SGIX_clipmap GLEW_GET_VAR(__GLEW_SGIX_clipmap) - -#endif /* GL_SGIX_clipmap */ - -/* --------------------- GL_SGIX_color_matrix_accuracy --------------------- */ - -#ifndef GL_SGIX_color_matrix_accuracy -#define GL_SGIX_color_matrix_accuracy 1 - -#define GL_COLOR_MATRIX_HINT 0x8317 - -#define GLEW_SGIX_color_matrix_accuracy GLEW_GET_VAR(__GLEW_SGIX_color_matrix_accuracy) - -#endif /* GL_SGIX_color_matrix_accuracy */ - -/* --------------------- GL_SGIX_color_table_index_mode -------------------- */ - -#ifndef GL_SGIX_color_table_index_mode -#define GL_SGIX_color_table_index_mode 1 - -#define GLEW_SGIX_color_table_index_mode GLEW_GET_VAR(__GLEW_SGIX_color_table_index_mode) - -#endif /* GL_SGIX_color_table_index_mode */ - -/* ------------------------- GL_SGIX_complex_polar ------------------------- */ - -#ifndef GL_SGIX_complex_polar -#define GL_SGIX_complex_polar 1 - -#define GLEW_SGIX_complex_polar GLEW_GET_VAR(__GLEW_SGIX_complex_polar) - -#endif /* GL_SGIX_complex_polar */ - -/* ---------------------- GL_SGIX_convolution_accuracy --------------------- */ - -#ifndef GL_SGIX_convolution_accuracy -#define GL_SGIX_convolution_accuracy 1 - -#define GL_CONVOLUTION_HINT_SGIX 0x8316 - -#define GLEW_SGIX_convolution_accuracy GLEW_GET_VAR(__GLEW_SGIX_convolution_accuracy) - -#endif /* GL_SGIX_convolution_accuracy */ - -/* ---------------------------- GL_SGIX_cube_map --------------------------- */ - -#ifndef GL_SGIX_cube_map -#define GL_SGIX_cube_map 1 - -#define GL_ENV_MAP_SGIX 0x8340 -#define GL_CUBE_MAP_SGIX 0x8341 -#define GL_CUBE_MAP_ZP_SGIX 0x8342 -#define GL_CUBE_MAP_ZN_SGIX 0x8343 -#define GL_CUBE_MAP_XN_SGIX 0x8344 -#define GL_CUBE_MAP_XP_SGIX 0x8345 -#define GL_CUBE_MAP_YN_SGIX 0x8346 -#define GL_CUBE_MAP_YP_SGIX 0x8347 -#define GL_CUBE_MAP_BINDING_SGIX 0x8348 - -#define GLEW_SGIX_cube_map GLEW_GET_VAR(__GLEW_SGIX_cube_map) - -#endif /* GL_SGIX_cube_map */ - -/* ------------------------ GL_SGIX_cylinder_texgen ------------------------ */ - -#ifndef GL_SGIX_cylinder_texgen -#define GL_SGIX_cylinder_texgen 1 - -#define GLEW_SGIX_cylinder_texgen GLEW_GET_VAR(__GLEW_SGIX_cylinder_texgen) - -#endif /* GL_SGIX_cylinder_texgen */ - -/* ---------------------------- GL_SGIX_datapipe --------------------------- */ - -#ifndef GL_SGIX_datapipe -#define GL_SGIX_datapipe 1 - -#define GL_GEOMETRY_BIT 0x1 -#define GL_IMAGE_BIT 0x2 - -typedef void (GLAPIENTRY * PFNGLADDRESSSPACEPROC) (GLenum space, GLbitfield mask); -typedef GLint (GLAPIENTRY * PFNGLDATAPIPEPROC) (GLenum space); - -#define glAddressSpace GLEW_GET_FUN(__glewAddressSpace) -#define glDataPipe GLEW_GET_FUN(__glewDataPipe) - -#define GLEW_SGIX_datapipe GLEW_GET_VAR(__GLEW_SGIX_datapipe) - -#endif /* GL_SGIX_datapipe */ - -/* --------------------------- GL_SGIX_decimation -------------------------- */ - -#ifndef GL_SGIX_decimation -#define GL_SGIX_decimation 1 - -#define GLEW_SGIX_decimation GLEW_GET_VAR(__GLEW_SGIX_decimation) - -#endif /* GL_SGIX_decimation */ - -/* --------------------- GL_SGIX_depth_pass_instrument --------------------- */ - -#ifndef GL_SGIX_depth_pass_instrument -#define GL_SGIX_depth_pass_instrument 1 - -#define GL_DEPTH_PASS_INSTRUMENT_SGIX 0x8310 -#define GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX 0x8311 -#define GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX 0x8312 - -#define GLEW_SGIX_depth_pass_instrument GLEW_GET_VAR(__GLEW_SGIX_depth_pass_instrument) - -#endif /* GL_SGIX_depth_pass_instrument */ - -/* ------------------------- GL_SGIX_depth_texture ------------------------- */ - -#ifndef GL_SGIX_depth_texture -#define GL_SGIX_depth_texture 1 - -#define GL_DEPTH_COMPONENT16_SGIX 0x81A5 -#define GL_DEPTH_COMPONENT24_SGIX 0x81A6 -#define GL_DEPTH_COMPONENT32_SGIX 0x81A7 - -#define GLEW_SGIX_depth_texture GLEW_GET_VAR(__GLEW_SGIX_depth_texture) - -#endif /* GL_SGIX_depth_texture */ - -/* ------------------------------ GL_SGIX_dvc ------------------------------ */ - -#ifndef GL_SGIX_dvc -#define GL_SGIX_dvc 1 - -#define GLEW_SGIX_dvc GLEW_GET_VAR(__GLEW_SGIX_dvc) - -#endif /* GL_SGIX_dvc */ - -/* -------------------------- GL_SGIX_flush_raster ------------------------- */ - -#ifndef GL_SGIX_flush_raster -#define GL_SGIX_flush_raster 1 - -typedef void (GLAPIENTRY * PFNGLFLUSHRASTERSGIXPROC) (void); - -#define glFlushRasterSGIX GLEW_GET_FUN(__glewFlushRasterSGIX) - -#define GLEW_SGIX_flush_raster GLEW_GET_VAR(__GLEW_SGIX_flush_raster) - -#endif /* GL_SGIX_flush_raster */ - -/* --------------------------- GL_SGIX_fog_blend --------------------------- */ - -#ifndef GL_SGIX_fog_blend -#define GL_SGIX_fog_blend 1 - -#define GL_FOG_BLEND_ALPHA_SGIX 0x81FE -#define GL_FOG_BLEND_COLOR_SGIX 0x81FF - -#define GLEW_SGIX_fog_blend GLEW_GET_VAR(__GLEW_SGIX_fog_blend) - -#endif /* GL_SGIX_fog_blend */ - -/* ---------------------- GL_SGIX_fog_factor_to_alpha ---------------------- */ - -#ifndef GL_SGIX_fog_factor_to_alpha -#define GL_SGIX_fog_factor_to_alpha 1 - -#define GLEW_SGIX_fog_factor_to_alpha GLEW_GET_VAR(__GLEW_SGIX_fog_factor_to_alpha) - -#endif /* GL_SGIX_fog_factor_to_alpha */ - -/* --------------------------- GL_SGIX_fog_layers -------------------------- */ - -#ifndef GL_SGIX_fog_layers -#define GL_SGIX_fog_layers 1 - -#define GL_FOG_TYPE_SGIX 0x8323 -#define GL_UNIFORM_SGIX 0x8324 -#define GL_LAYERED_SGIX 0x8325 -#define GL_FOG_GROUND_PLANE_SGIX 0x8326 -#define GL_FOG_LAYERS_POINTS_SGIX 0x8327 -#define GL_MAX_FOG_LAYERS_POINTS_SGIX 0x8328 - -typedef void (GLAPIENTRY * PFNGLFOGLAYERSSGIXPROC) (GLsizei n, const GLfloat* points); -typedef void (GLAPIENTRY * PFNGLGETFOGLAYERSSGIXPROC) (GLfloat* points); - -#define glFogLayersSGIX GLEW_GET_FUN(__glewFogLayersSGIX) -#define glGetFogLayersSGIX GLEW_GET_FUN(__glewGetFogLayersSGIX) - -#define GLEW_SGIX_fog_layers GLEW_GET_VAR(__GLEW_SGIX_fog_layers) - -#endif /* GL_SGIX_fog_layers */ - -/* --------------------------- GL_SGIX_fog_offset -------------------------- */ - -#ifndef GL_SGIX_fog_offset -#define GL_SGIX_fog_offset 1 - -#define GL_FOG_OFFSET_SGIX 0x8198 -#define GL_FOG_OFFSET_VALUE_SGIX 0x8199 - -#define GLEW_SGIX_fog_offset GLEW_GET_VAR(__GLEW_SGIX_fog_offset) - -#endif /* GL_SGIX_fog_offset */ - -/* --------------------------- GL_SGIX_fog_patchy -------------------------- */ - -#ifndef GL_SGIX_fog_patchy -#define GL_SGIX_fog_patchy 1 - -#define GLEW_SGIX_fog_patchy GLEW_GET_VAR(__GLEW_SGIX_fog_patchy) - -#endif /* GL_SGIX_fog_patchy */ - -/* --------------------------- GL_SGIX_fog_scale --------------------------- */ - -#ifndef GL_SGIX_fog_scale -#define GL_SGIX_fog_scale 1 - -#define GL_FOG_SCALE_SGIX 0x81FC -#define GL_FOG_SCALE_VALUE_SGIX 0x81FD - -#define GLEW_SGIX_fog_scale GLEW_GET_VAR(__GLEW_SGIX_fog_scale) - -#endif /* GL_SGIX_fog_scale */ - -/* -------------------------- GL_SGIX_fog_texture -------------------------- */ - -#ifndef GL_SGIX_fog_texture -#define GL_SGIX_fog_texture 1 - -typedef void (GLAPIENTRY * PFNGLTEXTUREFOGSGIXPROC) (GLenum pname); - -#define glTextureFogSGIX GLEW_GET_FUN(__glewTextureFogSGIX) - -#define GLEW_SGIX_fog_texture GLEW_GET_VAR(__GLEW_SGIX_fog_texture) - -#endif /* GL_SGIX_fog_texture */ - -/* -------------------- GL_SGIX_fragment_lighting_space -------------------- */ - -#ifndef GL_SGIX_fragment_lighting_space -#define GL_SGIX_fragment_lighting_space 1 - -#define GL_EYE_SPACE_SGIX 0x8436 -#define GL_TANGENT_SPACE_SGIX 0x8437 -#define GL_OBJECT_SPACE_SGIX 0x8438 -#define GL_FRAGMENT_LIGHT_SPACE_SGIX 0x843D - -#define GLEW_SGIX_fragment_lighting_space GLEW_GET_VAR(__GLEW_SGIX_fragment_lighting_space) - -#endif /* GL_SGIX_fragment_lighting_space */ - -/* ------------------- GL_SGIX_fragment_specular_lighting ------------------ */ - -#ifndef GL_SGIX_fragment_specular_lighting -#define GL_SGIX_fragment_specular_lighting 1 - -typedef void (GLAPIENTRY * PFNGLFRAGMENTCOLORMATERIALSGIXPROC) (GLenum face, GLenum mode); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFSGIXPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFVSGIXPROC) (GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELISGIXPROC) (GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIVSGIXPROC) (GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFSGIXPROC) (GLenum light, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTISGIXPROC) (GLenum light, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFSGIXPROC) (GLenum face, GLenum pname, const GLfloat param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALISGIXPROC) (GLenum face, GLenum pname, const GLint param); -typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum value, GLfloat* data); -typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum value, GLint* data); -typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, GLfloat* data); -typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, GLint* data); - -#define glFragmentColorMaterialSGIX GLEW_GET_FUN(__glewFragmentColorMaterialSGIX) -#define glFragmentLightModelfSGIX GLEW_GET_FUN(__glewFragmentLightModelfSGIX) -#define glFragmentLightModelfvSGIX GLEW_GET_FUN(__glewFragmentLightModelfvSGIX) -#define glFragmentLightModeliSGIX GLEW_GET_FUN(__glewFragmentLightModeliSGIX) -#define glFragmentLightModelivSGIX GLEW_GET_FUN(__glewFragmentLightModelivSGIX) -#define glFragmentLightfSGIX GLEW_GET_FUN(__glewFragmentLightfSGIX) -#define glFragmentLightfvSGIX GLEW_GET_FUN(__glewFragmentLightfvSGIX) -#define glFragmentLightiSGIX GLEW_GET_FUN(__glewFragmentLightiSGIX) -#define glFragmentLightivSGIX GLEW_GET_FUN(__glewFragmentLightivSGIX) -#define glFragmentMaterialfSGIX GLEW_GET_FUN(__glewFragmentMaterialfSGIX) -#define glFragmentMaterialfvSGIX GLEW_GET_FUN(__glewFragmentMaterialfvSGIX) -#define glFragmentMaterialiSGIX GLEW_GET_FUN(__glewFragmentMaterialiSGIX) -#define glFragmentMaterialivSGIX GLEW_GET_FUN(__glewFragmentMaterialivSGIX) -#define glGetFragmentLightfvSGIX GLEW_GET_FUN(__glewGetFragmentLightfvSGIX) -#define glGetFragmentLightivSGIX GLEW_GET_FUN(__glewGetFragmentLightivSGIX) -#define glGetFragmentMaterialfvSGIX GLEW_GET_FUN(__glewGetFragmentMaterialfvSGIX) -#define glGetFragmentMaterialivSGIX GLEW_GET_FUN(__glewGetFragmentMaterialivSGIX) - -#define GLEW_SGIX_fragment_specular_lighting GLEW_GET_VAR(__GLEW_SGIX_fragment_specular_lighting) - -#endif /* GL_SGIX_fragment_specular_lighting */ - -/* ---------------------- GL_SGIX_fragments_instrument --------------------- */ - -#ifndef GL_SGIX_fragments_instrument -#define GL_SGIX_fragments_instrument 1 - -#define GL_FRAGMENTS_INSTRUMENT_SGIX 0x8313 -#define GL_FRAGMENTS_INSTRUMENT_COUNTERS_SGIX 0x8314 -#define GL_FRAGMENTS_INSTRUMENT_MAX_SGIX 0x8315 - -#define GLEW_SGIX_fragments_instrument GLEW_GET_VAR(__GLEW_SGIX_fragments_instrument) - -#endif /* GL_SGIX_fragments_instrument */ - -/* --------------------------- GL_SGIX_framezoom --------------------------- */ - -#ifndef GL_SGIX_framezoom -#define GL_SGIX_framezoom 1 - -typedef void (GLAPIENTRY * PFNGLFRAMEZOOMSGIXPROC) (GLint factor); - -#define glFrameZoomSGIX GLEW_GET_FUN(__glewFrameZoomSGIX) - -#define GLEW_SGIX_framezoom GLEW_GET_VAR(__GLEW_SGIX_framezoom) - -#endif /* GL_SGIX_framezoom */ - -/* -------------------------- GL_SGIX_icc_texture -------------------------- */ - -#ifndef GL_SGIX_icc_texture -#define GL_SGIX_icc_texture 1 - -#define GL_RGB_ICC_SGIX 0x8460 -#define GL_RGBA_ICC_SGIX 0x8461 -#define GL_ALPHA_ICC_SGIX 0x8462 -#define GL_LUMINANCE_ICC_SGIX 0x8463 -#define GL_INTENSITY_ICC_SGIX 0x8464 -#define GL_LUMINANCE_ALPHA_ICC_SGIX 0x8465 -#define GL_R5_G6_B5_ICC_SGIX 0x8466 -#define GL_R5_G6_B5_A8_ICC_SGIX 0x8467 -#define GL_ALPHA16_ICC_SGIX 0x8468 -#define GL_LUMINANCE16_ICC_SGIX 0x8469 -#define GL_INTENSITY16_ICC_SGIX 0x846A -#define GL_LUMINANCE16_ALPHA8_ICC_SGIX 0x846B - -#define GLEW_SGIX_icc_texture GLEW_GET_VAR(__GLEW_SGIX_icc_texture) - -#endif /* GL_SGIX_icc_texture */ - -/* ------------------------ GL_SGIX_igloo_interface ------------------------ */ - -#ifndef GL_SGIX_igloo_interface -#define GL_SGIX_igloo_interface 1 - -#define GL_IGLOO_FULLSCREEN_SGIX 0x819E -#define GL_IGLOO_VIEWPORT_OFFSET_SGIX 0x819F -#define GL_IGLOO_SWAPTMESH_SGIX 0x81A0 -#define GL_IGLOO_COLORNORMAL_SGIX 0x81A1 -#define GL_IGLOO_IRISGL_MODE_SGIX 0x81A2 -#define GL_IGLOO_LMC_COLOR_SGIX 0x81A3 -#define GL_IGLOO_TMESHMODE_SGIX 0x81A4 -#define GL_LIGHT31 0xBEAD - -typedef void (GLAPIENTRY * PFNGLIGLOOINTERFACESGIXPROC) (GLenum pname, void *param); - -#define glIglooInterfaceSGIX GLEW_GET_FUN(__glewIglooInterfaceSGIX) - -#define GLEW_SGIX_igloo_interface GLEW_GET_VAR(__GLEW_SGIX_igloo_interface) - -#endif /* GL_SGIX_igloo_interface */ - -/* ----------------------- GL_SGIX_image_compression ----------------------- */ - -#ifndef GL_SGIX_image_compression -#define GL_SGIX_image_compression 1 - -#define GLEW_SGIX_image_compression GLEW_GET_VAR(__GLEW_SGIX_image_compression) - -#endif /* GL_SGIX_image_compression */ - -/* ---------------------- GL_SGIX_impact_pixel_texture --------------------- */ - -#ifndef GL_SGIX_impact_pixel_texture -#define GL_SGIX_impact_pixel_texture 1 - -#define GLEW_SGIX_impact_pixel_texture GLEW_GET_VAR(__GLEW_SGIX_impact_pixel_texture) - -#endif /* GL_SGIX_impact_pixel_texture */ - -/* ------------------------ GL_SGIX_instrument_error ----------------------- */ - -#ifndef GL_SGIX_instrument_error -#define GL_SGIX_instrument_error 1 - -#define GLEW_SGIX_instrument_error GLEW_GET_VAR(__GLEW_SGIX_instrument_error) - -#endif /* GL_SGIX_instrument_error */ - -/* --------------------------- GL_SGIX_interlace --------------------------- */ - -#ifndef GL_SGIX_interlace -#define GL_SGIX_interlace 1 - -#define GL_INTERLACE_SGIX 0x8094 - -#define GLEW_SGIX_interlace GLEW_GET_VAR(__GLEW_SGIX_interlace) - -#endif /* GL_SGIX_interlace */ - -/* ------------------------- GL_SGIX_ir_instrument1 ------------------------ */ - -#ifndef GL_SGIX_ir_instrument1 -#define GL_SGIX_ir_instrument1 1 - -#define GLEW_SGIX_ir_instrument1 GLEW_GET_VAR(__GLEW_SGIX_ir_instrument1) - -#endif /* GL_SGIX_ir_instrument1 */ - -/* ----------------------- GL_SGIX_line_quality_hint ----------------------- */ - -#ifndef GL_SGIX_line_quality_hint -#define GL_SGIX_line_quality_hint 1 - -#define GL_LINE_QUALITY_HINT_SGIX 0x835B - -#define GLEW_SGIX_line_quality_hint GLEW_GET_VAR(__GLEW_SGIX_line_quality_hint) - -#endif /* GL_SGIX_line_quality_hint */ - -/* ------------------------- GL_SGIX_list_priority ------------------------- */ - -#ifndef GL_SGIX_list_priority -#define GL_SGIX_list_priority 1 - -#define GLEW_SGIX_list_priority GLEW_GET_VAR(__GLEW_SGIX_list_priority) - -#endif /* GL_SGIX_list_priority */ - -/* ----------------------------- GL_SGIX_mpeg1 ----------------------------- */ - -#ifndef GL_SGIX_mpeg1 -#define GL_SGIX_mpeg1 1 - -typedef void (GLAPIENTRY * PFNGLALLOCMPEGPREDICTORSSGIXPROC) (GLsizei width, GLsizei height, GLsizei n, GLuint* predictors); -typedef void (GLAPIENTRY * PFNGLDELETEMPEGPREDICTORSSGIXPROC) (GLsizei n, GLuint* predictors); -typedef void (GLAPIENTRY * PFNGLGENMPEGPREDICTORSSGIXPROC) (GLsizei n, GLuint* predictors); -typedef void (GLAPIENTRY * PFNGLGETMPEGPARAMETERFVSGIXPROC) (GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETMPEGPARAMETERIVSGIXPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETMPEGPREDICTORSGIXPROC) (GLenum target, GLenum format, GLenum type, void *pixels); -typedef void (GLAPIENTRY * PFNGLGETMPEGQUANTTABLEUBVPROC) (GLenum target, GLubyte* values); -typedef GLboolean (GLAPIENTRY * PFNGLISMPEGPREDICTORSGIXPROC) (GLuint predictor); -typedef void (GLAPIENTRY * PFNGLMPEGPREDICTORSGIXPROC) (GLenum target, GLenum format, GLenum type, void *pixels); -typedef void (GLAPIENTRY * PFNGLMPEGQUANTTABLEUBVPROC) (GLenum target, GLubyte* values); -typedef void (GLAPIENTRY * PFNGLSWAPMPEGPREDICTORSSGIXPROC) (GLenum target0, GLenum target1); - -#define glAllocMPEGPredictorsSGIX GLEW_GET_FUN(__glewAllocMPEGPredictorsSGIX) -#define glDeleteMPEGPredictorsSGIX GLEW_GET_FUN(__glewDeleteMPEGPredictorsSGIX) -#define glGenMPEGPredictorsSGIX GLEW_GET_FUN(__glewGenMPEGPredictorsSGIX) -#define glGetMPEGParameterfvSGIX GLEW_GET_FUN(__glewGetMPEGParameterfvSGIX) -#define glGetMPEGParameterivSGIX GLEW_GET_FUN(__glewGetMPEGParameterivSGIX) -#define glGetMPEGPredictorSGIX GLEW_GET_FUN(__glewGetMPEGPredictorSGIX) -#define glGetMPEGQuantTableubv GLEW_GET_FUN(__glewGetMPEGQuantTableubv) -#define glIsMPEGPredictorSGIX GLEW_GET_FUN(__glewIsMPEGPredictorSGIX) -#define glMPEGPredictorSGIX GLEW_GET_FUN(__glewMPEGPredictorSGIX) -#define glMPEGQuantTableubv GLEW_GET_FUN(__glewMPEGQuantTableubv) -#define glSwapMPEGPredictorsSGIX GLEW_GET_FUN(__glewSwapMPEGPredictorsSGIX) - -#define GLEW_SGIX_mpeg1 GLEW_GET_VAR(__GLEW_SGIX_mpeg1) - -#endif /* GL_SGIX_mpeg1 */ - -/* ----------------------------- GL_SGIX_mpeg2 ----------------------------- */ - -#ifndef GL_SGIX_mpeg2 -#define GL_SGIX_mpeg2 1 - -#define GLEW_SGIX_mpeg2 GLEW_GET_VAR(__GLEW_SGIX_mpeg2) - -#endif /* GL_SGIX_mpeg2 */ - -/* ------------------ GL_SGIX_nonlinear_lighting_pervertex ----------------- */ - -#ifndef GL_SGIX_nonlinear_lighting_pervertex -#define GL_SGIX_nonlinear_lighting_pervertex 1 - -typedef void (GLAPIENTRY * PFNGLGETNONLINLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLint* terms, GLfloat *data); -typedef void (GLAPIENTRY * PFNGLGETNONLINMATERIALFVSGIXPROC) (GLenum face, GLenum pname, GLint* terms, const GLfloat *data); -typedef void (GLAPIENTRY * PFNGLNONLINLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLint terms, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLNONLINMATERIALFVSGIXPROC) (GLenum face, GLenum pname, GLint terms, const GLfloat* params); - -#define glGetNonlinLightfvSGIX GLEW_GET_FUN(__glewGetNonlinLightfvSGIX) -#define glGetNonlinMaterialfvSGIX GLEW_GET_FUN(__glewGetNonlinMaterialfvSGIX) -#define glNonlinLightfvSGIX GLEW_GET_FUN(__glewNonlinLightfvSGIX) -#define glNonlinMaterialfvSGIX GLEW_GET_FUN(__glewNonlinMaterialfvSGIX) - -#define GLEW_SGIX_nonlinear_lighting_pervertex GLEW_GET_VAR(__GLEW_SGIX_nonlinear_lighting_pervertex) - -#endif /* GL_SGIX_nonlinear_lighting_pervertex */ - -/* --------------------------- GL_SGIX_nurbs_eval -------------------------- */ - -#ifndef GL_SGIX_nurbs_eval -#define GL_SGIX_nurbs_eval 1 - -#define GL_MAP1_VERTEX_3_NURBS_SGIX 0x81CB -#define GL_MAP1_VERTEX_4_NURBS_SGIX 0x81CC -#define GL_MAP1_INDEX_NURBS_SGIX 0x81CD -#define GL_MAP1_COLOR_4_NURBS_SGIX 0x81CE -#define GL_MAP1_NORMAL_NURBS_SGIX 0x81CF -#define GL_MAP1_TEXTURE_COORD_1_NURBS_SGIX 0x81E0 -#define GL_MAP1_TEXTURE_COORD_2_NURBS_SGIX 0x81E1 -#define GL_MAP1_TEXTURE_COORD_3_NURBS_SGIX 0x81E2 -#define GL_MAP1_TEXTURE_COORD_4_NURBS_SGIX 0x81E3 -#define GL_MAP2_VERTEX_3_NURBS_SGIX 0x81E4 -#define GL_MAP2_VERTEX_4_NURBS_SGIX 0x81E5 -#define GL_MAP2_INDEX_NURBS_SGIX 0x81E6 -#define GL_MAP2_COLOR_4_NURBS_SGIX 0x81E7 -#define GL_MAP2_NORMAL_NURBS_SGIX 0x81E8 -#define GL_MAP2_TEXTURE_COORD_1_NURBS_SGIX 0x81E9 -#define GL_MAP2_TEXTURE_COORD_2_NURBS_SGIX 0x81EA -#define GL_MAP2_TEXTURE_COORD_3_NURBS_SGIX 0x81EB -#define GL_MAP2_TEXTURE_COORD_4_NURBS_SGIX 0x81EC -#define GL_NURBS_KNOT_COUNT_SGIX 0x81ED -#define GL_NURBS_KNOT_VECTOR_SGIX 0x81EE - -#define GLEW_SGIX_nurbs_eval GLEW_GET_VAR(__GLEW_SGIX_nurbs_eval) - -#endif /* GL_SGIX_nurbs_eval */ - -/* ---------------------- GL_SGIX_occlusion_instrument --------------------- */ - -#ifndef GL_SGIX_occlusion_instrument -#define GL_SGIX_occlusion_instrument 1 - -#define GL_OCCLUSION_INSTRUMENT_SGIX 0x6060 - -#define GLEW_SGIX_occlusion_instrument GLEW_GET_VAR(__GLEW_SGIX_occlusion_instrument) - -#endif /* GL_SGIX_occlusion_instrument */ - -/* ------------------------- GL_SGIX_packed_6bytes ------------------------- */ - -#ifndef GL_SGIX_packed_6bytes -#define GL_SGIX_packed_6bytes 1 - -#define GLEW_SGIX_packed_6bytes GLEW_GET_VAR(__GLEW_SGIX_packed_6bytes) - -#endif /* GL_SGIX_packed_6bytes */ - -/* ------------------------- GL_SGIX_pixel_texture ------------------------- */ - -#ifndef GL_SGIX_pixel_texture -#define GL_SGIX_pixel_texture 1 - -typedef void (GLAPIENTRY * PFNGLPIXELTEXGENSGIXPROC) (GLenum mode); - -#define glPixelTexGenSGIX GLEW_GET_FUN(__glewPixelTexGenSGIX) - -#define GLEW_SGIX_pixel_texture GLEW_GET_VAR(__GLEW_SGIX_pixel_texture) - -#endif /* GL_SGIX_pixel_texture */ - -/* ----------------------- GL_SGIX_pixel_texture_bits ---------------------- */ - -#ifndef GL_SGIX_pixel_texture_bits -#define GL_SGIX_pixel_texture_bits 1 - -#define GLEW_SGIX_pixel_texture_bits GLEW_GET_VAR(__GLEW_SGIX_pixel_texture_bits) - -#endif /* GL_SGIX_pixel_texture_bits */ - -/* ----------------------- GL_SGIX_pixel_texture_lod ----------------------- */ - -#ifndef GL_SGIX_pixel_texture_lod -#define GL_SGIX_pixel_texture_lod 1 - -#define GLEW_SGIX_pixel_texture_lod GLEW_GET_VAR(__GLEW_SGIX_pixel_texture_lod) - -#endif /* GL_SGIX_pixel_texture_lod */ - -/* -------------------------- GL_SGIX_pixel_tiles -------------------------- */ - -#ifndef GL_SGIX_pixel_tiles -#define GL_SGIX_pixel_tiles 1 - -#define GLEW_SGIX_pixel_tiles GLEW_GET_VAR(__GLEW_SGIX_pixel_tiles) - -#endif /* GL_SGIX_pixel_tiles */ - -/* ------------------------- GL_SGIX_polynomial_ffd ------------------------ */ - -#ifndef GL_SGIX_polynomial_ffd -#define GL_SGIX_polynomial_ffd 1 - -#define GL_TEXTURE_DEFORMATION_BIT_SGIX 0x1 -#define GL_GEOMETRY_DEFORMATION_BIT_SGIX 0x2 - -typedef void (GLAPIENTRY * PFNGLDEFORMSGIXPROC) (GLbitfield mask); -typedef void (GLAPIENTRY * PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC) (GLbitfield mask); - -#define glDeformSGIX GLEW_GET_FUN(__glewDeformSGIX) -#define glLoadIdentityDeformationMapSGIX GLEW_GET_FUN(__glewLoadIdentityDeformationMapSGIX) - -#define GLEW_SGIX_polynomial_ffd GLEW_GET_VAR(__GLEW_SGIX_polynomial_ffd) - -#endif /* GL_SGIX_polynomial_ffd */ - -/* --------------------------- GL_SGIX_quad_mesh --------------------------- */ - -#ifndef GL_SGIX_quad_mesh -#define GL_SGIX_quad_mesh 1 - -typedef void (GLAPIENTRY * PFNGLMESHBREADTHSGIXPROC) (GLint breadth); -typedef void (GLAPIENTRY * PFNGLMESHSTRIDESGIXPROC) (GLint stride); - -#define glMeshBreadthSGIX GLEW_GET_FUN(__glewMeshBreadthSGIX) -#define glMeshStrideSGIX GLEW_GET_FUN(__glewMeshStrideSGIX) - -#define GLEW_SGIX_quad_mesh GLEW_GET_VAR(__GLEW_SGIX_quad_mesh) - -#endif /* GL_SGIX_quad_mesh */ - -/* ------------------------ GL_SGIX_reference_plane ------------------------ */ - -#ifndef GL_SGIX_reference_plane -#define GL_SGIX_reference_plane 1 - -typedef void (GLAPIENTRY * PFNGLREFERENCEPLANESGIXPROC) (const GLdouble* equation); - -#define glReferencePlaneSGIX GLEW_GET_FUN(__glewReferencePlaneSGIX) - -#define GLEW_SGIX_reference_plane GLEW_GET_VAR(__GLEW_SGIX_reference_plane) - -#endif /* GL_SGIX_reference_plane */ - -/* ---------------------------- GL_SGIX_resample --------------------------- */ - -#ifndef GL_SGIX_resample -#define GL_SGIX_resample 1 - -#define GL_PACK_RESAMPLE_SGIX 0x842E -#define GL_UNPACK_RESAMPLE_SGIX 0x842F -#define GL_RESAMPLE_DECIMATE_SGIX 0x8430 -#define GL_RESAMPLE_REPLICATE_SGIX 0x8433 -#define GL_RESAMPLE_ZERO_FILL_SGIX 0x8434 - -#define GLEW_SGIX_resample GLEW_GET_VAR(__GLEW_SGIX_resample) - -#endif /* GL_SGIX_resample */ - -/* ------------------------- GL_SGIX_scalebias_hint ------------------------ */ - -#ifndef GL_SGIX_scalebias_hint -#define GL_SGIX_scalebias_hint 1 - -#define GL_SCALEBIAS_HINT_SGIX 0x8322 - -#define GLEW_SGIX_scalebias_hint GLEW_GET_VAR(__GLEW_SGIX_scalebias_hint) - -#endif /* GL_SGIX_scalebias_hint */ - -/* ----------------------------- GL_SGIX_shadow ---------------------------- */ - -#ifndef GL_SGIX_shadow -#define GL_SGIX_shadow 1 - -#define GL_TEXTURE_COMPARE_SGIX 0x819A -#define GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B -#define GL_TEXTURE_LEQUAL_R_SGIX 0x819C -#define GL_TEXTURE_GEQUAL_R_SGIX 0x819D - -#define GLEW_SGIX_shadow GLEW_GET_VAR(__GLEW_SGIX_shadow) - -#endif /* GL_SGIX_shadow */ - -/* ------------------------- GL_SGIX_shadow_ambient ------------------------ */ - -#ifndef GL_SGIX_shadow_ambient -#define GL_SGIX_shadow_ambient 1 - -#define GL_SHADOW_AMBIENT_SGIX 0x80BF - -#define GLEW_SGIX_shadow_ambient GLEW_GET_VAR(__GLEW_SGIX_shadow_ambient) - -#endif /* GL_SGIX_shadow_ambient */ - -/* ------------------------------ GL_SGIX_slim ----------------------------- */ - -#ifndef GL_SGIX_slim -#define GL_SGIX_slim 1 - -#define GL_PACK_MAX_COMPRESSED_SIZE_SGIX 0x831B -#define GL_SLIM8U_SGIX 0x831D -#define GL_SLIM10U_SGIX 0x831E -#define GL_SLIM12S_SGIX 0x831F - -#define GLEW_SGIX_slim GLEW_GET_VAR(__GLEW_SGIX_slim) - -#endif /* GL_SGIX_slim */ - -/* ------------------------ GL_SGIX_spotlight_cutoff ----------------------- */ - -#ifndef GL_SGIX_spotlight_cutoff -#define GL_SGIX_spotlight_cutoff 1 - -#define GL_SPOT_CUTOFF_DELTA_SGIX 0x8193 - -#define GLEW_SGIX_spotlight_cutoff GLEW_GET_VAR(__GLEW_SGIX_spotlight_cutoff) - -#endif /* GL_SGIX_spotlight_cutoff */ - -/* ----------------------------- GL_SGIX_sprite ---------------------------- */ - -#ifndef GL_SGIX_sprite -#define GL_SGIX_sprite 1 - -typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERFSGIXPROC) (GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERFVSGIXPROC) (GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERISGIXPROC) (GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERIVSGIXPROC) (GLenum pname, GLint* params); - -#define glSpriteParameterfSGIX GLEW_GET_FUN(__glewSpriteParameterfSGIX) -#define glSpriteParameterfvSGIX GLEW_GET_FUN(__glewSpriteParameterfvSGIX) -#define glSpriteParameteriSGIX GLEW_GET_FUN(__glewSpriteParameteriSGIX) -#define glSpriteParameterivSGIX GLEW_GET_FUN(__glewSpriteParameterivSGIX) - -#define GLEW_SGIX_sprite GLEW_GET_VAR(__GLEW_SGIX_sprite) - -#endif /* GL_SGIX_sprite */ - -/* -------------------------- GL_SGIX_subdiv_patch ------------------------- */ - -#ifndef GL_SGIX_subdiv_patch -#define GL_SGIX_subdiv_patch 1 - -#define GLEW_SGIX_subdiv_patch GLEW_GET_VAR(__GLEW_SGIX_subdiv_patch) - -#endif /* GL_SGIX_subdiv_patch */ - -/* --------------------------- GL_SGIX_subsample --------------------------- */ - -#ifndef GL_SGIX_subsample -#define GL_SGIX_subsample 1 - -#define GL_PACK_SUBSAMPLE_RATE_SGIX 0x85A0 -#define GL_UNPACK_SUBSAMPLE_RATE_SGIX 0x85A1 -#define GL_PIXEL_SUBSAMPLE_4444_SGIX 0x85A2 -#define GL_PIXEL_SUBSAMPLE_2424_SGIX 0x85A3 -#define GL_PIXEL_SUBSAMPLE_4242_SGIX 0x85A4 - -#define GLEW_SGIX_subsample GLEW_GET_VAR(__GLEW_SGIX_subsample) - -#endif /* GL_SGIX_subsample */ - -/* ----------------------- GL_SGIX_tag_sample_buffer ----------------------- */ - -#ifndef GL_SGIX_tag_sample_buffer -#define GL_SGIX_tag_sample_buffer 1 - -typedef void (GLAPIENTRY * PFNGLTAGSAMPLEBUFFERSGIXPROC) (void); - -#define glTagSampleBufferSGIX GLEW_GET_FUN(__glewTagSampleBufferSGIX) - -#define GLEW_SGIX_tag_sample_buffer GLEW_GET_VAR(__GLEW_SGIX_tag_sample_buffer) - -#endif /* GL_SGIX_tag_sample_buffer */ - -/* ------------------------ GL_SGIX_texture_add_env ------------------------ */ - -#ifndef GL_SGIX_texture_add_env -#define GL_SGIX_texture_add_env 1 - -#define GLEW_SGIX_texture_add_env GLEW_GET_VAR(__GLEW_SGIX_texture_add_env) - -#endif /* GL_SGIX_texture_add_env */ - -/* -------------------- GL_SGIX_texture_coordinate_clamp ------------------- */ - -#ifndef GL_SGIX_texture_coordinate_clamp -#define GL_SGIX_texture_coordinate_clamp 1 - -#define GL_TEXTURE_MAX_CLAMP_S_SGIX 0x8369 -#define GL_TEXTURE_MAX_CLAMP_T_SGIX 0x836A -#define GL_TEXTURE_MAX_CLAMP_R_SGIX 0x836B - -#define GLEW_SGIX_texture_coordinate_clamp GLEW_GET_VAR(__GLEW_SGIX_texture_coordinate_clamp) - -#endif /* GL_SGIX_texture_coordinate_clamp */ - -/* ------------------------ GL_SGIX_texture_lod_bias ----------------------- */ - -#ifndef GL_SGIX_texture_lod_bias -#define GL_SGIX_texture_lod_bias 1 - -#define GLEW_SGIX_texture_lod_bias GLEW_GET_VAR(__GLEW_SGIX_texture_lod_bias) - -#endif /* GL_SGIX_texture_lod_bias */ - -/* ------------------- GL_SGIX_texture_mipmap_anisotropic ------------------ */ - -#ifndef GL_SGIX_texture_mipmap_anisotropic -#define GL_SGIX_texture_mipmap_anisotropic 1 - -#define GL_TEXTURE_MIPMAP_ANISOTROPY_SGIX 0x832E -#define GL_MAX_MIPMAP_ANISOTROPY_SGIX 0x832F - -#define GLEW_SGIX_texture_mipmap_anisotropic GLEW_GET_VAR(__GLEW_SGIX_texture_mipmap_anisotropic) - -#endif /* GL_SGIX_texture_mipmap_anisotropic */ - -/* ---------------------- GL_SGIX_texture_multi_buffer --------------------- */ - -#ifndef GL_SGIX_texture_multi_buffer -#define GL_SGIX_texture_multi_buffer 1 - -#define GL_TEXTURE_MULTI_BUFFER_HINT_SGIX 0x812E - -#define GLEW_SGIX_texture_multi_buffer GLEW_GET_VAR(__GLEW_SGIX_texture_multi_buffer) - -#endif /* GL_SGIX_texture_multi_buffer */ - -/* ------------------------- GL_SGIX_texture_phase ------------------------- */ - -#ifndef GL_SGIX_texture_phase -#define GL_SGIX_texture_phase 1 - -#define GL_PHASE_SGIX 0x832A - -#define GLEW_SGIX_texture_phase GLEW_GET_VAR(__GLEW_SGIX_texture_phase) - -#endif /* GL_SGIX_texture_phase */ - -/* ------------------------- GL_SGIX_texture_range ------------------------- */ - -#ifndef GL_SGIX_texture_range -#define GL_SGIX_texture_range 1 - -#define GL_RGB_SIGNED_SGIX 0x85E0 -#define GL_RGBA_SIGNED_SGIX 0x85E1 -#define GL_ALPHA_SIGNED_SGIX 0x85E2 -#define GL_LUMINANCE_SIGNED_SGIX 0x85E3 -#define GL_INTENSITY_SIGNED_SGIX 0x85E4 -#define GL_LUMINANCE_ALPHA_SIGNED_SGIX 0x85E5 -#define GL_RGB16_SIGNED_SGIX 0x85E6 -#define GL_RGBA16_SIGNED_SGIX 0x85E7 -#define GL_ALPHA16_SIGNED_SGIX 0x85E8 -#define GL_LUMINANCE16_SIGNED_SGIX 0x85E9 -#define GL_INTENSITY16_SIGNED_SGIX 0x85EA -#define GL_LUMINANCE16_ALPHA16_SIGNED_SGIX 0x85EB -#define GL_RGB_EXTENDED_RANGE_SGIX 0x85EC -#define GL_RGBA_EXTENDED_RANGE_SGIX 0x85ED -#define GL_ALPHA_EXTENDED_RANGE_SGIX 0x85EE -#define GL_LUMINANCE_EXTENDED_RANGE_SGIX 0x85EF -#define GL_INTENSITY_EXTENDED_RANGE_SGIX 0x85F0 -#define GL_LUMINANCE_ALPHA_EXTENDED_RANGE_SGIX 0x85F1 -#define GL_RGB16_EXTENDED_RANGE_SGIX 0x85F2 -#define GL_RGBA16_EXTENDED_RANGE_SGIX 0x85F3 -#define GL_ALPHA16_EXTENDED_RANGE_SGIX 0x85F4 -#define GL_LUMINANCE16_EXTENDED_RANGE_SGIX 0x85F5 -#define GL_INTENSITY16_EXTENDED_RANGE_SGIX 0x85F6 -#define GL_LUMINANCE16_ALPHA16_EXTENDED_RANGE_SGIX 0x85F7 -#define GL_MIN_LUMINANCE_SGIS 0x85F8 -#define GL_MAX_LUMINANCE_SGIS 0x85F9 -#define GL_MIN_INTENSITY_SGIS 0x85FA -#define GL_MAX_INTENSITY_SGIS 0x85FB - -#define GLEW_SGIX_texture_range GLEW_GET_VAR(__GLEW_SGIX_texture_range) - -#endif /* GL_SGIX_texture_range */ - -/* ----------------------- GL_SGIX_texture_scale_bias ---------------------- */ - -#ifndef GL_SGIX_texture_scale_bias -#define GL_SGIX_texture_scale_bias 1 - -#define GL_POST_TEXTURE_FILTER_BIAS_SGIX 0x8179 -#define GL_POST_TEXTURE_FILTER_SCALE_SGIX 0x817A -#define GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX 0x817B -#define GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX 0x817C - -#define GLEW_SGIX_texture_scale_bias GLEW_GET_VAR(__GLEW_SGIX_texture_scale_bias) - -#endif /* GL_SGIX_texture_scale_bias */ - -/* ---------------------- GL_SGIX_texture_supersample ---------------------- */ - -#ifndef GL_SGIX_texture_supersample -#define GL_SGIX_texture_supersample 1 - -#define GLEW_SGIX_texture_supersample GLEW_GET_VAR(__GLEW_SGIX_texture_supersample) - -#endif /* GL_SGIX_texture_supersample */ - -/* --------------------------- GL_SGIX_vector_ops -------------------------- */ - -#ifndef GL_SGIX_vector_ops -#define GL_SGIX_vector_ops 1 - -typedef void (GLAPIENTRY * PFNGLGETVECTOROPERATIONSGIXPROC) (GLenum operation); -typedef void (GLAPIENTRY * PFNGLVECTOROPERATIONSGIXPROC) (GLenum operation); - -#define glGetVectorOperationSGIX GLEW_GET_FUN(__glewGetVectorOperationSGIX) -#define glVectorOperationSGIX GLEW_GET_FUN(__glewVectorOperationSGIX) - -#define GLEW_SGIX_vector_ops GLEW_GET_VAR(__GLEW_SGIX_vector_ops) - -#endif /* GL_SGIX_vector_ops */ - -/* ---------------------- GL_SGIX_vertex_array_object ---------------------- */ - -#ifndef GL_SGIX_vertex_array_object -#define GL_SGIX_vertex_array_object 1 - -typedef GLboolean (GLAPIENTRY * PFNGLAREVERTEXARRAYSRESIDENTSGIXPROC) (GLsizei n, const GLuint* arrays, GLboolean* residences); -typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYSGIXPROC) (GLuint array); -typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSSGIXPROC) (GLsizei n, const GLuint* arrays); -typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSSGIXPROC) (GLsizei n, GLuint* arrays); -typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYSGIXPROC) (GLuint array); -typedef void (GLAPIENTRY * PFNGLPRIORITIZEVERTEXARRAYSSGIXPROC) (GLsizei n, const GLuint* arrays, const GLclampf* priorities); - -#define glAreVertexArraysResidentSGIX GLEW_GET_FUN(__glewAreVertexArraysResidentSGIX) -#define glBindVertexArraySGIX GLEW_GET_FUN(__glewBindVertexArraySGIX) -#define glDeleteVertexArraysSGIX GLEW_GET_FUN(__glewDeleteVertexArraysSGIX) -#define glGenVertexArraysSGIX GLEW_GET_FUN(__glewGenVertexArraysSGIX) -#define glIsVertexArraySGIX GLEW_GET_FUN(__glewIsVertexArraySGIX) -#define glPrioritizeVertexArraysSGIX GLEW_GET_FUN(__glewPrioritizeVertexArraysSGIX) - -#define GLEW_SGIX_vertex_array_object GLEW_GET_VAR(__GLEW_SGIX_vertex_array_object) - -#endif /* GL_SGIX_vertex_array_object */ - -/* ------------------------- GL_SGIX_vertex_preclip ------------------------ */ - -#ifndef GL_SGIX_vertex_preclip -#define GL_SGIX_vertex_preclip 1 - -#define GL_VERTEX_PRECLIP_SGIX 0x83EE -#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF - -#define GLEW_SGIX_vertex_preclip GLEW_GET_VAR(__GLEW_SGIX_vertex_preclip) - -#endif /* GL_SGIX_vertex_preclip */ - -/* ---------------------- GL_SGIX_vertex_preclip_hint ---------------------- */ - -#ifndef GL_SGIX_vertex_preclip_hint -#define GL_SGIX_vertex_preclip_hint 1 - -#define GL_VERTEX_PRECLIP_SGIX 0x83EE -#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF - -#define GLEW_SGIX_vertex_preclip_hint GLEW_GET_VAR(__GLEW_SGIX_vertex_preclip_hint) - -#endif /* GL_SGIX_vertex_preclip_hint */ - -/* ----------------------------- GL_SGIX_ycrcb ----------------------------- */ - -#ifndef GL_SGIX_ycrcb -#define GL_SGIX_ycrcb 1 - -#define GLEW_SGIX_ycrcb GLEW_GET_VAR(__GLEW_SGIX_ycrcb) - -#endif /* GL_SGIX_ycrcb */ - -/* ------------------------ GL_SGIX_ycrcb_subsample ------------------------ */ - -#ifndef GL_SGIX_ycrcb_subsample -#define GL_SGIX_ycrcb_subsample 1 - -#define GLEW_SGIX_ycrcb_subsample GLEW_GET_VAR(__GLEW_SGIX_ycrcb_subsample) - -#endif /* GL_SGIX_ycrcb_subsample */ - -/* ----------------------------- GL_SGIX_ycrcba ---------------------------- */ - -#ifndef GL_SGIX_ycrcba -#define GL_SGIX_ycrcba 1 - -#define GL_YCRCB_SGIX 0x8318 -#define GL_YCRCBA_SGIX 0x8319 - -#define GLEW_SGIX_ycrcba GLEW_GET_VAR(__GLEW_SGIX_ycrcba) - -#endif /* GL_SGIX_ycrcba */ - -/* -------------------------- GL_SGI_color_matrix -------------------------- */ - -#ifndef GL_SGI_color_matrix -#define GL_SGI_color_matrix 1 - -#define GL_COLOR_MATRIX_SGI 0x80B1 -#define GL_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B2 -#define GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B3 -#define GL_POST_COLOR_MATRIX_RED_SCALE_SGI 0x80B4 -#define GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI 0x80B5 -#define GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI 0x80B6 -#define GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI 0x80B7 -#define GL_POST_COLOR_MATRIX_RED_BIAS_SGI 0x80B8 -#define GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI 0x80B9 -#define GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI 0x80BA -#define GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI 0x80BB - -#define GLEW_SGI_color_matrix GLEW_GET_VAR(__GLEW_SGI_color_matrix) - -#endif /* GL_SGI_color_matrix */ - -/* --------------------------- GL_SGI_color_table -------------------------- */ - -#ifndef GL_SGI_color_table -#define GL_SGI_color_table 1 - -#define GL_COLOR_TABLE_SGI 0x80D0 -#define GL_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D1 -#define GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D2 -#define GL_PROXY_COLOR_TABLE_SGI 0x80D3 -#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D4 -#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D5 -#define GL_COLOR_TABLE_SCALE_SGI 0x80D6 -#define GL_COLOR_TABLE_BIAS_SGI 0x80D7 -#define GL_COLOR_TABLE_FORMAT_SGI 0x80D8 -#define GL_COLOR_TABLE_WIDTH_SGI 0x80D9 -#define GL_COLOR_TABLE_RED_SIZE_SGI 0x80DA -#define GL_COLOR_TABLE_GREEN_SIZE_SGI 0x80DB -#define GL_COLOR_TABLE_BLUE_SIZE_SGI 0x80DC -#define GL_COLOR_TABLE_ALPHA_SIZE_SGI 0x80DD -#define GL_COLOR_TABLE_LUMINANCE_SIZE_SGI 0x80DE -#define GL_COLOR_TABLE_INTENSITY_SIZE_SGI 0x80DF - -typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void *table); -typedef void (GLAPIENTRY * PFNGLCOPYCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLGETCOLORTABLESGIPROC) (GLenum target, GLenum format, GLenum type, void *table); - -#define glColorTableParameterfvSGI GLEW_GET_FUN(__glewColorTableParameterfvSGI) -#define glColorTableParameterivSGI GLEW_GET_FUN(__glewColorTableParameterivSGI) -#define glColorTableSGI GLEW_GET_FUN(__glewColorTableSGI) -#define glCopyColorTableSGI GLEW_GET_FUN(__glewCopyColorTableSGI) -#define glGetColorTableParameterfvSGI GLEW_GET_FUN(__glewGetColorTableParameterfvSGI) -#define glGetColorTableParameterivSGI GLEW_GET_FUN(__glewGetColorTableParameterivSGI) -#define glGetColorTableSGI GLEW_GET_FUN(__glewGetColorTableSGI) - -#define GLEW_SGI_color_table GLEW_GET_VAR(__GLEW_SGI_color_table) - -#endif /* GL_SGI_color_table */ - -/* ----------------------------- GL_SGI_complex ---------------------------- */ - -#ifndef GL_SGI_complex -#define GL_SGI_complex 1 - -#define GLEW_SGI_complex GLEW_GET_VAR(__GLEW_SGI_complex) - -#endif /* GL_SGI_complex */ - -/* -------------------------- GL_SGI_complex_type -------------------------- */ - -#ifndef GL_SGI_complex_type -#define GL_SGI_complex_type 1 - -#define GL_COMPLEX_UNSIGNED_BYTE_SGI 0x81BD -#define GL_COMPLEX_BYTE_SGI 0x81BE -#define GL_COMPLEX_UNSIGNED_SHORT_SGI 0x81BF -#define GL_COMPLEX_SHORT_SGI 0x81C0 -#define GL_COMPLEX_UNSIGNED_INT_SGI 0x81C1 -#define GL_COMPLEX_INT_SGI 0x81C2 -#define GL_COMPLEX_FLOAT_SGI 0x81C3 - -#define GLEW_SGI_complex_type GLEW_GET_VAR(__GLEW_SGI_complex_type) - -#endif /* GL_SGI_complex_type */ - -/* ------------------------------- GL_SGI_fft ------------------------------ */ - -#ifndef GL_SGI_fft -#define GL_SGI_fft 1 - -#define GL_PIXEL_TRANSFORM_OPERATOR_SGI 0x81C4 -#define GL_CONVOLUTION_SGI 0x81C5 -#define GL_FFT_1D_SGI 0x81C6 -#define GL_PIXEL_TRANSFORM_SGI 0x81C7 -#define GL_MAX_FFT_WIDTH_SGI 0x81C8 - -typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat* params); -typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint* params); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFSGIPROC) (GLenum target, GLenum pname, GLfloat param); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat* params); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERISGIPROC) (GLenum target, GLenum pname, GLint param); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint* params); -typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMSGIPROC) (GLenum target); - -#define glGetPixelTransformParameterfvSGI GLEW_GET_FUN(__glewGetPixelTransformParameterfvSGI) -#define glGetPixelTransformParameterivSGI GLEW_GET_FUN(__glewGetPixelTransformParameterivSGI) -#define glPixelTransformParameterfSGI GLEW_GET_FUN(__glewPixelTransformParameterfSGI) -#define glPixelTransformParameterfvSGI GLEW_GET_FUN(__glewPixelTransformParameterfvSGI) -#define glPixelTransformParameteriSGI GLEW_GET_FUN(__glewPixelTransformParameteriSGI) -#define glPixelTransformParameterivSGI GLEW_GET_FUN(__glewPixelTransformParameterivSGI) -#define glPixelTransformSGI GLEW_GET_FUN(__glewPixelTransformSGI) - -#define GLEW_SGI_fft GLEW_GET_VAR(__GLEW_SGI_fft) - -#endif /* GL_SGI_fft */ - -/* ----------------------- GL_SGI_texture_color_table ---------------------- */ - -#ifndef GL_SGI_texture_color_table -#define GL_SGI_texture_color_table 1 - -#define GL_TEXTURE_COLOR_TABLE_SGI 0x80BC -#define GL_PROXY_TEXTURE_COLOR_TABLE_SGI 0x80BD - -#define GLEW_SGI_texture_color_table GLEW_GET_VAR(__GLEW_SGI_texture_color_table) - -#endif /* GL_SGI_texture_color_table */ - -/* ------------------------- GL_SUNX_constant_data ------------------------- */ - -#ifndef GL_SUNX_constant_data -#define GL_SUNX_constant_data 1 - -#define GL_UNPACK_CONSTANT_DATA_SUNX 0x81D5 -#define GL_TEXTURE_CONSTANT_DATA_SUNX 0x81D6 - -typedef void (GLAPIENTRY * PFNGLFINISHTEXTURESUNXPROC) (void); - -#define glFinishTextureSUNX GLEW_GET_FUN(__glewFinishTextureSUNX) - -#define GLEW_SUNX_constant_data GLEW_GET_VAR(__GLEW_SUNX_constant_data) - -#endif /* GL_SUNX_constant_data */ - -/* -------------------- GL_SUN_convolution_border_modes -------------------- */ - -#ifndef GL_SUN_convolution_border_modes -#define GL_SUN_convolution_border_modes 1 - -#define GL_WRAP_BORDER_SUN 0x81D4 - -#define GLEW_SUN_convolution_border_modes GLEW_GET_VAR(__GLEW_SUN_convolution_border_modes) - -#endif /* GL_SUN_convolution_border_modes */ - -/* -------------------------- GL_SUN_global_alpha -------------------------- */ - -#ifndef GL_SUN_global_alpha -#define GL_SUN_global_alpha 1 - -#define GL_GLOBAL_ALPHA_SUN 0x81D9 -#define GL_GLOBAL_ALPHA_FACTOR_SUN 0x81DA - -typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORBSUNPROC) (GLbyte factor); -typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORDSUNPROC) (GLdouble factor); -typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORFSUNPROC) (GLfloat factor); -typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORISUNPROC) (GLint factor); -typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORSSUNPROC) (GLshort factor); -typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUBSUNPROC) (GLubyte factor); -typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUISUNPROC) (GLuint factor); -typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUSSUNPROC) (GLushort factor); - -#define glGlobalAlphaFactorbSUN GLEW_GET_FUN(__glewGlobalAlphaFactorbSUN) -#define glGlobalAlphaFactordSUN GLEW_GET_FUN(__glewGlobalAlphaFactordSUN) -#define glGlobalAlphaFactorfSUN GLEW_GET_FUN(__glewGlobalAlphaFactorfSUN) -#define glGlobalAlphaFactoriSUN GLEW_GET_FUN(__glewGlobalAlphaFactoriSUN) -#define glGlobalAlphaFactorsSUN GLEW_GET_FUN(__glewGlobalAlphaFactorsSUN) -#define glGlobalAlphaFactorubSUN GLEW_GET_FUN(__glewGlobalAlphaFactorubSUN) -#define glGlobalAlphaFactoruiSUN GLEW_GET_FUN(__glewGlobalAlphaFactoruiSUN) -#define glGlobalAlphaFactorusSUN GLEW_GET_FUN(__glewGlobalAlphaFactorusSUN) - -#define GLEW_SUN_global_alpha GLEW_GET_VAR(__GLEW_SUN_global_alpha) - -#endif /* GL_SUN_global_alpha */ - -/* --------------------------- GL_SUN_mesh_array --------------------------- */ - -#ifndef GL_SUN_mesh_array -#define GL_SUN_mesh_array 1 - -#define GL_QUAD_MESH_SUN 0x8614 -#define GL_TRIANGLE_MESH_SUN 0x8615 - -#define GLEW_SUN_mesh_array GLEW_GET_VAR(__GLEW_SUN_mesh_array) - -#endif /* GL_SUN_mesh_array */ - -/* ------------------------ GL_SUN_read_video_pixels ----------------------- */ - -#ifndef GL_SUN_read_video_pixels -#define GL_SUN_read_video_pixels 1 - -typedef void (GLAPIENTRY * PFNGLREADVIDEOPIXELSSUNPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels); - -#define glReadVideoPixelsSUN GLEW_GET_FUN(__glewReadVideoPixelsSUN) - -#define GLEW_SUN_read_video_pixels GLEW_GET_VAR(__GLEW_SUN_read_video_pixels) - -#endif /* GL_SUN_read_video_pixels */ - -/* --------------------------- GL_SUN_slice_accum -------------------------- */ - -#ifndef GL_SUN_slice_accum -#define GL_SUN_slice_accum 1 - -#define GL_SLICE_ACCUM_SUN 0x85CC - -#define GLEW_SUN_slice_accum GLEW_GET_VAR(__GLEW_SUN_slice_accum) - -#endif /* GL_SUN_slice_accum */ - -/* -------------------------- GL_SUN_triangle_list ------------------------- */ - -#ifndef GL_SUN_triangle_list -#define GL_SUN_triangle_list 1 - -#define GL_RESTART_SUN 0x01 -#define GL_REPLACE_MIDDLE_SUN 0x02 -#define GL_REPLACE_OLDEST_SUN 0x03 -#define GL_TRIANGLE_LIST_SUN 0x81D7 -#define GL_REPLACEMENT_CODE_SUN 0x81D8 -#define GL_REPLACEMENT_CODE_ARRAY_SUN 0x85C0 -#define GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN 0x85C1 -#define GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN 0x85C2 -#define GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN 0x85C3 -#define GL_R1UI_V3F_SUN 0x85C4 -#define GL_R1UI_C4UB_V3F_SUN 0x85C5 -#define GL_R1UI_C3F_V3F_SUN 0x85C6 -#define GL_R1UI_N3F_V3F_SUN 0x85C7 -#define GL_R1UI_C4F_N3F_V3F_SUN 0x85C8 -#define GL_R1UI_T2F_V3F_SUN 0x85C9 -#define GL_R1UI_T2F_N3F_V3F_SUN 0x85CA -#define GL_R1UI_T2F_C4F_N3F_V3F_SUN 0x85CB - -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEPOINTERSUNPROC) (GLenum type, GLsizei stride, const void *pointer); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUBSUNPROC) (GLubyte code); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUBVSUNPROC) (const GLubyte* code); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUISUNPROC) (GLuint code); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVSUNPROC) (const GLuint* code); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUSSUNPROC) (GLushort code); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUSVSUNPROC) (const GLushort* code); - -#define glReplacementCodePointerSUN GLEW_GET_FUN(__glewReplacementCodePointerSUN) -#define glReplacementCodeubSUN GLEW_GET_FUN(__glewReplacementCodeubSUN) -#define glReplacementCodeubvSUN GLEW_GET_FUN(__glewReplacementCodeubvSUN) -#define glReplacementCodeuiSUN GLEW_GET_FUN(__glewReplacementCodeuiSUN) -#define glReplacementCodeuivSUN GLEW_GET_FUN(__glewReplacementCodeuivSUN) -#define glReplacementCodeusSUN GLEW_GET_FUN(__glewReplacementCodeusSUN) -#define glReplacementCodeusvSUN GLEW_GET_FUN(__glewReplacementCodeusvSUN) - -#define GLEW_SUN_triangle_list GLEW_GET_VAR(__GLEW_SUN_triangle_list) - -#endif /* GL_SUN_triangle_list */ - -/* ----------------------------- GL_SUN_vertex ----------------------------- */ - -#ifndef GL_SUN_vertex -#define GL_SUN_vertex 1 - -typedef void (GLAPIENTRY * PFNGLCOLOR3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLCOLOR3FVERTEX3FVSUNPROC) (const GLfloat* c, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* c, const GLfloat *n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX2FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y); -typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX2FVSUNPROC) (const GLubyte* c, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX3FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX3FVSUNPROC) (const GLubyte* c, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLNORMAL3FVERTEX3FSUNPROC) (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *c, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *c, const GLfloat *n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC) (GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC) (const GLuint* rc, const GLubyte *c, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC) (GLuint rc, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC) (const GLfloat* tc, const GLubyte *c, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z); -typedef void (GLAPIENTRY * PFNGLTEXCOORD2FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v); -typedef void (GLAPIENTRY * PFNGLTEXCOORD4FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (GLAPIENTRY * PFNGLTEXCOORD4FVERTEX4FVSUNPROC) (const GLfloat* tc, const GLfloat *v); - -#define glColor3fVertex3fSUN GLEW_GET_FUN(__glewColor3fVertex3fSUN) -#define glColor3fVertex3fvSUN GLEW_GET_FUN(__glewColor3fVertex3fvSUN) -#define glColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewColor4fNormal3fVertex3fSUN) -#define glColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewColor4fNormal3fVertex3fvSUN) -#define glColor4ubVertex2fSUN GLEW_GET_FUN(__glewColor4ubVertex2fSUN) -#define glColor4ubVertex2fvSUN GLEW_GET_FUN(__glewColor4ubVertex2fvSUN) -#define glColor4ubVertex3fSUN GLEW_GET_FUN(__glewColor4ubVertex3fSUN) -#define glColor4ubVertex3fvSUN GLEW_GET_FUN(__glewColor4ubVertex3fvSUN) -#define glNormal3fVertex3fSUN GLEW_GET_FUN(__glewNormal3fVertex3fSUN) -#define glNormal3fVertex3fvSUN GLEW_GET_FUN(__glewNormal3fVertex3fvSUN) -#define glReplacementCodeuiColor3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor3fVertex3fSUN) -#define glReplacementCodeuiColor3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor3fVertex3fvSUN) -#define glReplacementCodeuiColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4fNormal3fVertex3fSUN) -#define glReplacementCodeuiColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4fNormal3fVertex3fvSUN) -#define glReplacementCodeuiColor4ubVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4ubVertex3fSUN) -#define glReplacementCodeuiColor4ubVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4ubVertex3fvSUN) -#define glReplacementCodeuiNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiNormal3fVertex3fSUN) -#define glReplacementCodeuiNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiNormal3fVertex3fvSUN) -#define glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN) -#define glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN) -#define glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN) -#define glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN) -#define glReplacementCodeuiTexCoord2fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fVertex3fSUN) -#define glReplacementCodeuiTexCoord2fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fVertex3fvSUN) -#define glReplacementCodeuiVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiVertex3fSUN) -#define glReplacementCodeuiVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiVertex3fvSUN) -#define glTexCoord2fColor3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor3fVertex3fSUN) -#define glTexCoord2fColor3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor3fVertex3fvSUN) -#define glTexCoord2fColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor4fNormal3fVertex3fSUN) -#define glTexCoord2fColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor4fNormal3fVertex3fvSUN) -#define glTexCoord2fColor4ubVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor4ubVertex3fSUN) -#define glTexCoord2fColor4ubVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor4ubVertex3fvSUN) -#define glTexCoord2fNormal3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fNormal3fVertex3fSUN) -#define glTexCoord2fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fNormal3fVertex3fvSUN) -#define glTexCoord2fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fVertex3fSUN) -#define glTexCoord2fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fVertex3fvSUN) -#define glTexCoord4fColor4fNormal3fVertex4fSUN GLEW_GET_FUN(__glewTexCoord4fColor4fNormal3fVertex4fSUN) -#define glTexCoord4fColor4fNormal3fVertex4fvSUN GLEW_GET_FUN(__glewTexCoord4fColor4fNormal3fVertex4fvSUN) -#define glTexCoord4fVertex4fSUN GLEW_GET_FUN(__glewTexCoord4fVertex4fSUN) -#define glTexCoord4fVertex4fvSUN GLEW_GET_FUN(__glewTexCoord4fVertex4fvSUN) - -#define GLEW_SUN_vertex GLEW_GET_VAR(__GLEW_SUN_vertex) - -#endif /* GL_SUN_vertex */ - -/* -------------------------- GL_VIV_shader_binary ------------------------- */ - -#ifndef GL_VIV_shader_binary -#define GL_VIV_shader_binary 1 - -#define GL_SHADER_BINARY_VIV 0x8FC4 - -#define GLEW_VIV_shader_binary GLEW_GET_VAR(__GLEW_VIV_shader_binary) - -#endif /* GL_VIV_shader_binary */ - -/* -------------------------- GL_WIN_phong_shading ------------------------- */ - -#ifndef GL_WIN_phong_shading -#define GL_WIN_phong_shading 1 - -#define GL_PHONG_WIN 0x80EA -#define GL_PHONG_HINT_WIN 0x80EB - -#define GLEW_WIN_phong_shading GLEW_GET_VAR(__GLEW_WIN_phong_shading) - -#endif /* GL_WIN_phong_shading */ - -/* ------------------------- GL_WIN_scene_markerXXX ------------------------ */ - -#ifndef GL_WIN_scene_markerXXX -#define GL_WIN_scene_markerXXX 1 - -#define GLEW_WIN_scene_markerXXX GLEW_GET_VAR(__GLEW_WIN_scene_markerXXX) - -#endif /* GL_WIN_scene_markerXXX */ - -/* -------------------------- GL_WIN_specular_fog -------------------------- */ - -#ifndef GL_WIN_specular_fog -#define GL_WIN_specular_fog 1 - -#define GL_FOG_SPECULAR_TEXTURE_WIN 0x80EC - -#define GLEW_WIN_specular_fog GLEW_GET_VAR(__GLEW_WIN_specular_fog) - -#endif /* GL_WIN_specular_fog */ - -/* ---------------------------- GL_WIN_swap_hint --------------------------- */ - -#ifndef GL_WIN_swap_hint -#define GL_WIN_swap_hint 1 - -typedef void (GLAPIENTRY * PFNGLADDSWAPHINTRECTWINPROC) (GLint x, GLint y, GLsizei width, GLsizei height); - -#define glAddSwapHintRectWIN GLEW_GET_FUN(__glewAddSwapHintRectWIN) - -#define GLEW_WIN_swap_hint GLEW_GET_VAR(__GLEW_WIN_swap_hint) - -#endif /* GL_WIN_swap_hint */ - -/* ------------------------------------------------------------------------- */ - - - -GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DPROC __glewCopyTexSubImage3D; -GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSPROC __glewDrawRangeElements; -GLEW_FUN_EXPORT PFNGLTEXIMAGE3DPROC __glewTexImage3D; -GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DPROC __glewTexSubImage3D; - -GLEW_FUN_EXPORT PFNGLACTIVETEXTUREPROC __glewActiveTexture; -GLEW_FUN_EXPORT PFNGLCLIENTACTIVETEXTUREPROC __glewClientActiveTexture; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE1DPROC __glewCompressedTexImage1D; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE2DPROC __glewCompressedTexImage2D; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DPROC __glewCompressedTexImage3D; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC __glewCompressedTexSubImage1D; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC __glewCompressedTexSubImage2D; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC __glewCompressedTexSubImage3D; -GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXIMAGEPROC __glewGetCompressedTexImage; -GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXDPROC __glewLoadTransposeMatrixd; -GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXFPROC __glewLoadTransposeMatrixf; -GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXDPROC __glewMultTransposeMatrixd; -GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXFPROC __glewMultTransposeMatrixf; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DPROC __glewMultiTexCoord1d; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DVPROC __glewMultiTexCoord1dv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FPROC __glewMultiTexCoord1f; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FVPROC __glewMultiTexCoord1fv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IPROC __glewMultiTexCoord1i; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IVPROC __glewMultiTexCoord1iv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SPROC __glewMultiTexCoord1s; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SVPROC __glewMultiTexCoord1sv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DPROC __glewMultiTexCoord2d; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DVPROC __glewMultiTexCoord2dv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FPROC __glewMultiTexCoord2f; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FVPROC __glewMultiTexCoord2fv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IPROC __glewMultiTexCoord2i; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IVPROC __glewMultiTexCoord2iv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SPROC __glewMultiTexCoord2s; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SVPROC __glewMultiTexCoord2sv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DPROC __glewMultiTexCoord3d; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DVPROC __glewMultiTexCoord3dv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FPROC __glewMultiTexCoord3f; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FVPROC __glewMultiTexCoord3fv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IPROC __glewMultiTexCoord3i; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IVPROC __glewMultiTexCoord3iv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SPROC __glewMultiTexCoord3s; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SVPROC __glewMultiTexCoord3sv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DPROC __glewMultiTexCoord4d; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DVPROC __glewMultiTexCoord4dv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FPROC __glewMultiTexCoord4f; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FVPROC __glewMultiTexCoord4fv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IPROC __glewMultiTexCoord4i; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IVPROC __glewMultiTexCoord4iv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SPROC __glewMultiTexCoord4s; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SVPROC __glewMultiTexCoord4sv; -GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEPROC __glewSampleCoverage; - -GLEW_FUN_EXPORT PFNGLBLENDCOLORPROC __glewBlendColor; -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONPROC __glewBlendEquation; -GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEPROC __glewBlendFuncSeparate; -GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTERPROC __glewFogCoordPointer; -GLEW_FUN_EXPORT PFNGLFOGCOORDDPROC __glewFogCoordd; -GLEW_FUN_EXPORT PFNGLFOGCOORDDVPROC __glewFogCoorddv; -GLEW_FUN_EXPORT PFNGLFOGCOORDFPROC __glewFogCoordf; -GLEW_FUN_EXPORT PFNGLFOGCOORDFVPROC __glewFogCoordfv; -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSPROC __glewMultiDrawArrays; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSPROC __glewMultiDrawElements; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFPROC __glewPointParameterf; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVPROC __glewPointParameterfv; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIPROC __glewPointParameteri; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIVPROC __glewPointParameteriv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BPROC __glewSecondaryColor3b; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BVPROC __glewSecondaryColor3bv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DPROC __glewSecondaryColor3d; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DVPROC __glewSecondaryColor3dv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FPROC __glewSecondaryColor3f; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FVPROC __glewSecondaryColor3fv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IPROC __glewSecondaryColor3i; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IVPROC __glewSecondaryColor3iv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SPROC __glewSecondaryColor3s; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SVPROC __glewSecondaryColor3sv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBPROC __glewSecondaryColor3ub; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBVPROC __glewSecondaryColor3ubv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIPROC __glewSecondaryColor3ui; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIVPROC __glewSecondaryColor3uiv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USPROC __glewSecondaryColor3us; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USVPROC __glewSecondaryColor3usv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTERPROC __glewSecondaryColorPointer; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2DPROC __glewWindowPos2d; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVPROC __glewWindowPos2dv; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2FPROC __glewWindowPos2f; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVPROC __glewWindowPos2fv; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2IPROC __glewWindowPos2i; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVPROC __glewWindowPos2iv; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2SPROC __glewWindowPos2s; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVPROC __glewWindowPos2sv; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3DPROC __glewWindowPos3d; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVPROC __glewWindowPos3dv; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3FPROC __glewWindowPos3f; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVPROC __glewWindowPos3fv; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3IPROC __glewWindowPos3i; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVPROC __glewWindowPos3iv; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3SPROC __glewWindowPos3s; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVPROC __glewWindowPos3sv; - -GLEW_FUN_EXPORT PFNGLBEGINQUERYPROC __glewBeginQuery; -GLEW_FUN_EXPORT PFNGLBINDBUFFERPROC __glewBindBuffer; -GLEW_FUN_EXPORT PFNGLBUFFERDATAPROC __glewBufferData; -GLEW_FUN_EXPORT PFNGLBUFFERSUBDATAPROC __glewBufferSubData; -GLEW_FUN_EXPORT PFNGLDELETEBUFFERSPROC __glewDeleteBuffers; -GLEW_FUN_EXPORT PFNGLDELETEQUERIESPROC __glewDeleteQueries; -GLEW_FUN_EXPORT PFNGLENDQUERYPROC __glewEndQuery; -GLEW_FUN_EXPORT PFNGLGENBUFFERSPROC __glewGenBuffers; -GLEW_FUN_EXPORT PFNGLGENQUERIESPROC __glewGenQueries; -GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERIVPROC __glewGetBufferParameteriv; -GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVPROC __glewGetBufferPointerv; -GLEW_FUN_EXPORT PFNGLGETBUFFERSUBDATAPROC __glewGetBufferSubData; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVPROC __glewGetQueryObjectiv; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVPROC __glewGetQueryObjectuiv; -GLEW_FUN_EXPORT PFNGLGETQUERYIVPROC __glewGetQueryiv; -GLEW_FUN_EXPORT PFNGLISBUFFERPROC __glewIsBuffer; -GLEW_FUN_EXPORT PFNGLISQUERYPROC __glewIsQuery; -GLEW_FUN_EXPORT PFNGLMAPBUFFERPROC __glewMapBuffer; -GLEW_FUN_EXPORT PFNGLUNMAPBUFFERPROC __glewUnmapBuffer; - -GLEW_FUN_EXPORT PFNGLATTACHSHADERPROC __glewAttachShader; -GLEW_FUN_EXPORT PFNGLBINDATTRIBLOCATIONPROC __glewBindAttribLocation; -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEPROC __glewBlendEquationSeparate; -GLEW_FUN_EXPORT PFNGLCOMPILESHADERPROC __glewCompileShader; -GLEW_FUN_EXPORT PFNGLCREATEPROGRAMPROC __glewCreateProgram; -GLEW_FUN_EXPORT PFNGLCREATESHADERPROC __glewCreateShader; -GLEW_FUN_EXPORT PFNGLDELETEPROGRAMPROC __glewDeleteProgram; -GLEW_FUN_EXPORT PFNGLDELETESHADERPROC __glewDeleteShader; -GLEW_FUN_EXPORT PFNGLDETACHSHADERPROC __glewDetachShader; -GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBARRAYPROC __glewDisableVertexAttribArray; -GLEW_FUN_EXPORT PFNGLDRAWBUFFERSPROC __glewDrawBuffers; -GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBARRAYPROC __glewEnableVertexAttribArray; -GLEW_FUN_EXPORT PFNGLGETACTIVEATTRIBPROC __glewGetActiveAttrib; -GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMPROC __glewGetActiveUniform; -GLEW_FUN_EXPORT PFNGLGETATTACHEDSHADERSPROC __glewGetAttachedShaders; -GLEW_FUN_EXPORT PFNGLGETATTRIBLOCATIONPROC __glewGetAttribLocation; -GLEW_FUN_EXPORT PFNGLGETPROGRAMINFOLOGPROC __glewGetProgramInfoLog; -GLEW_FUN_EXPORT PFNGLGETPROGRAMIVPROC __glewGetProgramiv; -GLEW_FUN_EXPORT PFNGLGETSHADERINFOLOGPROC __glewGetShaderInfoLog; -GLEW_FUN_EXPORT PFNGLGETSHADERSOURCEPROC __glewGetShaderSource; -GLEW_FUN_EXPORT PFNGLGETSHADERIVPROC __glewGetShaderiv; -GLEW_FUN_EXPORT PFNGLGETUNIFORMLOCATIONPROC __glewGetUniformLocation; -GLEW_FUN_EXPORT PFNGLGETUNIFORMFVPROC __glewGetUniformfv; -GLEW_FUN_EXPORT PFNGLGETUNIFORMIVPROC __glewGetUniformiv; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVPROC __glewGetVertexAttribPointerv; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVPROC __glewGetVertexAttribdv; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVPROC __glewGetVertexAttribfv; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVPROC __glewGetVertexAttribiv; -GLEW_FUN_EXPORT PFNGLISPROGRAMPROC __glewIsProgram; -GLEW_FUN_EXPORT PFNGLISSHADERPROC __glewIsShader; -GLEW_FUN_EXPORT PFNGLLINKPROGRAMPROC __glewLinkProgram; -GLEW_FUN_EXPORT PFNGLSHADERSOURCEPROC __glewShaderSource; -GLEW_FUN_EXPORT PFNGLSTENCILFUNCSEPARATEPROC __glewStencilFuncSeparate; -GLEW_FUN_EXPORT PFNGLSTENCILMASKSEPARATEPROC __glewStencilMaskSeparate; -GLEW_FUN_EXPORT PFNGLSTENCILOPSEPARATEPROC __glewStencilOpSeparate; -GLEW_FUN_EXPORT PFNGLUNIFORM1FPROC __glewUniform1f; -GLEW_FUN_EXPORT PFNGLUNIFORM1FVPROC __glewUniform1fv; -GLEW_FUN_EXPORT PFNGLUNIFORM1IPROC __glewUniform1i; -GLEW_FUN_EXPORT PFNGLUNIFORM1IVPROC __glewUniform1iv; -GLEW_FUN_EXPORT PFNGLUNIFORM2FPROC __glewUniform2f; -GLEW_FUN_EXPORT PFNGLUNIFORM2FVPROC __glewUniform2fv; -GLEW_FUN_EXPORT PFNGLUNIFORM2IPROC __glewUniform2i; -GLEW_FUN_EXPORT PFNGLUNIFORM2IVPROC __glewUniform2iv; -GLEW_FUN_EXPORT PFNGLUNIFORM3FPROC __glewUniform3f; -GLEW_FUN_EXPORT PFNGLUNIFORM3FVPROC __glewUniform3fv; -GLEW_FUN_EXPORT PFNGLUNIFORM3IPROC __glewUniform3i; -GLEW_FUN_EXPORT PFNGLUNIFORM3IVPROC __glewUniform3iv; -GLEW_FUN_EXPORT PFNGLUNIFORM4FPROC __glewUniform4f; -GLEW_FUN_EXPORT PFNGLUNIFORM4FVPROC __glewUniform4fv; -GLEW_FUN_EXPORT PFNGLUNIFORM4IPROC __glewUniform4i; -GLEW_FUN_EXPORT PFNGLUNIFORM4IVPROC __glewUniform4iv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2FVPROC __glewUniformMatrix2fv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3FVPROC __glewUniformMatrix3fv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4FVPROC __glewUniformMatrix4fv; -GLEW_FUN_EXPORT PFNGLUSEPROGRAMPROC __glewUseProgram; -GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMPROC __glewValidateProgram; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DPROC __glewVertexAttrib1d; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVPROC __glewVertexAttrib1dv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FPROC __glewVertexAttrib1f; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVPROC __glewVertexAttrib1fv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SPROC __glewVertexAttrib1s; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVPROC __glewVertexAttrib1sv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DPROC __glewVertexAttrib2d; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVPROC __glewVertexAttrib2dv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FPROC __glewVertexAttrib2f; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVPROC __glewVertexAttrib2fv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SPROC __glewVertexAttrib2s; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVPROC __glewVertexAttrib2sv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DPROC __glewVertexAttrib3d; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVPROC __glewVertexAttrib3dv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FPROC __glewVertexAttrib3f; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVPROC __glewVertexAttrib3fv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SPROC __glewVertexAttrib3s; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVPROC __glewVertexAttrib3sv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NBVPROC __glewVertexAttrib4Nbv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NIVPROC __glewVertexAttrib4Niv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NSVPROC __glewVertexAttrib4Nsv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBPROC __glewVertexAttrib4Nub; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBVPROC __glewVertexAttrib4Nubv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUIVPROC __glewVertexAttrib4Nuiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUSVPROC __glewVertexAttrib4Nusv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4BVPROC __glewVertexAttrib4bv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DPROC __glewVertexAttrib4d; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVPROC __glewVertexAttrib4dv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FPROC __glewVertexAttrib4f; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVPROC __glewVertexAttrib4fv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4IVPROC __glewVertexAttrib4iv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SPROC __glewVertexAttrib4s; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVPROC __glewVertexAttrib4sv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVPROC __glewVertexAttrib4ubv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UIVPROC __glewVertexAttrib4uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4USVPROC __glewVertexAttrib4usv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERPROC __glewVertexAttribPointer; - -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3FVPROC __glewUniformMatrix2x3fv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4FVPROC __glewUniformMatrix2x4fv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2FVPROC __glewUniformMatrix3x2fv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4FVPROC __glewUniformMatrix3x4fv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2FVPROC __glewUniformMatrix4x2fv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3FVPROC __glewUniformMatrix4x3fv; - -GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERPROC __glewBeginConditionalRender; -GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKPROC __glewBeginTransformFeedback; -GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONPROC __glewBindFragDataLocation; -GLEW_FUN_EXPORT PFNGLCLAMPCOLORPROC __glewClampColor; -GLEW_FUN_EXPORT PFNGLCLEARBUFFERFIPROC __glewClearBufferfi; -GLEW_FUN_EXPORT PFNGLCLEARBUFFERFVPROC __glewClearBufferfv; -GLEW_FUN_EXPORT PFNGLCLEARBUFFERIVPROC __glewClearBufferiv; -GLEW_FUN_EXPORT PFNGLCLEARBUFFERUIVPROC __glewClearBufferuiv; -GLEW_FUN_EXPORT PFNGLCOLORMASKIPROC __glewColorMaski; -GLEW_FUN_EXPORT PFNGLDISABLEIPROC __glewDisablei; -GLEW_FUN_EXPORT PFNGLENABLEIPROC __glewEnablei; -GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERPROC __glewEndConditionalRender; -GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKPROC __glewEndTransformFeedback; -GLEW_FUN_EXPORT PFNGLGETBOOLEANI_VPROC __glewGetBooleani_v; -GLEW_FUN_EXPORT PFNGLGETFRAGDATALOCATIONPROC __glewGetFragDataLocation; -GLEW_FUN_EXPORT PFNGLGETSTRINGIPROC __glewGetStringi; -GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVPROC __glewGetTexParameterIiv; -GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVPROC __glewGetTexParameterIuiv; -GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGPROC __glewGetTransformFeedbackVarying; -GLEW_FUN_EXPORT PFNGLGETUNIFORMUIVPROC __glewGetUniformuiv; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIIVPROC __glewGetVertexAttribIiv; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIUIVPROC __glewGetVertexAttribIuiv; -GLEW_FUN_EXPORT PFNGLISENABLEDIPROC __glewIsEnabledi; -GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVPROC __glewTexParameterIiv; -GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVPROC __glewTexParameterIuiv; -GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSPROC __glewTransformFeedbackVaryings; -GLEW_FUN_EXPORT PFNGLUNIFORM1UIPROC __glewUniform1ui; -GLEW_FUN_EXPORT PFNGLUNIFORM1UIVPROC __glewUniform1uiv; -GLEW_FUN_EXPORT PFNGLUNIFORM2UIPROC __glewUniform2ui; -GLEW_FUN_EXPORT PFNGLUNIFORM2UIVPROC __glewUniform2uiv; -GLEW_FUN_EXPORT PFNGLUNIFORM3UIPROC __glewUniform3ui; -GLEW_FUN_EXPORT PFNGLUNIFORM3UIVPROC __glewUniform3uiv; -GLEW_FUN_EXPORT PFNGLUNIFORM4UIPROC __glewUniform4ui; -GLEW_FUN_EXPORT PFNGLUNIFORM4UIVPROC __glewUniform4uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IPROC __glewVertexAttribI1i; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IVPROC __glewVertexAttribI1iv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIPROC __glewVertexAttribI1ui; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIVPROC __glewVertexAttribI1uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IPROC __glewVertexAttribI2i; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IVPROC __glewVertexAttribI2iv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIPROC __glewVertexAttribI2ui; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIVPROC __glewVertexAttribI2uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IPROC __glewVertexAttribI3i; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IVPROC __glewVertexAttribI3iv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIPROC __glewVertexAttribI3ui; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIVPROC __glewVertexAttribI3uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4BVPROC __glewVertexAttribI4bv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IPROC __glewVertexAttribI4i; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IVPROC __glewVertexAttribI4iv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4SVPROC __glewVertexAttribI4sv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UBVPROC __glewVertexAttribI4ubv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIPROC __glewVertexAttribI4ui; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIVPROC __glewVertexAttribI4uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4USVPROC __glewVertexAttribI4usv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIPOINTERPROC __glewVertexAttribIPointer; - -GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDPROC __glewDrawArraysInstanced; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDPROC __glewDrawElementsInstanced; -GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTINDEXPROC __glewPrimitiveRestartIndex; -GLEW_FUN_EXPORT PFNGLTEXBUFFERPROC __glewTexBuffer; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREPROC __glewFramebufferTexture; -GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERI64VPROC __glewGetBufferParameteri64v; -GLEW_FUN_EXPORT PFNGLGETINTEGER64I_VPROC __glewGetInteger64i_v; - -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORPROC __glewVertexAttribDivisor; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIPROC __glewBlendEquationSeparatei; -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIPROC __glewBlendEquationi; -GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIPROC __glewBlendFuncSeparatei; -GLEW_FUN_EXPORT PFNGLBLENDFUNCIPROC __glewBlendFunci; -GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGPROC __glewMinSampleShading; - -GLEW_FUN_EXPORT PFNGLGETGRAPHICSRESETSTATUSPROC __glewGetGraphicsResetStatus; -GLEW_FUN_EXPORT PFNGLGETNCOMPRESSEDTEXIMAGEPROC __glewGetnCompressedTexImage; -GLEW_FUN_EXPORT PFNGLGETNTEXIMAGEPROC __glewGetnTexImage; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMDVPROC __glewGetnUniformdv; - -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC __glewMultiDrawArraysIndirectCount; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC __glewMultiDrawElementsIndirectCount; -GLEW_FUN_EXPORT PFNGLSPECIALIZESHADERPROC __glewSpecializeShader; - -GLEW_FUN_EXPORT PFNGLTBUFFERMASK3DFXPROC __glewTbufferMask3DFX; - -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECALLBACKAMDPROC __glewDebugMessageCallbackAMD; -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEENABLEAMDPROC __glewDebugMessageEnableAMD; -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEINSERTAMDPROC __glewDebugMessageInsertAMD; -GLEW_FUN_EXPORT PFNGLGETDEBUGMESSAGELOGAMDPROC __glewGetDebugMessageLogAMD; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONINDEXEDAMDPROC __glewBlendEquationIndexedAMD; -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC __glewBlendEquationSeparateIndexedAMD; -GLEW_FUN_EXPORT PFNGLBLENDFUNCINDEXEDAMDPROC __glewBlendFuncIndexedAMD; -GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC __glewBlendFuncSeparateIndexedAMD; - -GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC __glewNamedRenderbufferStorageMultisampleAdvancedAMD; -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC __glewRenderbufferStorageMultisampleAdvancedAMD; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC __glewFramebufferSamplePositionsfvAMD; -GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERFVAMDPROC __glewGetFramebufferParameterfvAMD; -GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERPARAMETERFVAMDPROC __glewGetNamedFramebufferParameterfvAMD; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC __glewNamedFramebufferSamplePositionsfvAMD; - -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPARAMETERIAMDPROC __glewVertexAttribParameteriAMD; - -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC __glewMultiDrawArraysIndirectAMD; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC __glewMultiDrawElementsIndirectAMD; - -GLEW_FUN_EXPORT PFNGLDELETENAMESAMDPROC __glewDeleteNamesAMD; -GLEW_FUN_EXPORT PFNGLGENNAMESAMDPROC __glewGenNamesAMD; -GLEW_FUN_EXPORT PFNGLISNAMEAMDPROC __glewIsNameAMD; - -GLEW_FUN_EXPORT PFNGLQUERYOBJECTPARAMETERUIAMDPROC __glewQueryObjectParameteruiAMD; - -GLEW_FUN_EXPORT PFNGLBEGINPERFMONITORAMDPROC __glewBeginPerfMonitorAMD; -GLEW_FUN_EXPORT PFNGLDELETEPERFMONITORSAMDPROC __glewDeletePerfMonitorsAMD; -GLEW_FUN_EXPORT PFNGLENDPERFMONITORAMDPROC __glewEndPerfMonitorAMD; -GLEW_FUN_EXPORT PFNGLGENPERFMONITORSAMDPROC __glewGenPerfMonitorsAMD; -GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERDATAAMDPROC __glewGetPerfMonitorCounterDataAMD; -GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERINFOAMDPROC __glewGetPerfMonitorCounterInfoAMD; -GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC __glewGetPerfMonitorCounterStringAMD; -GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERSAMDPROC __glewGetPerfMonitorCountersAMD; -GLEW_FUN_EXPORT PFNGLGETPERFMONITORGROUPSTRINGAMDPROC __glewGetPerfMonitorGroupStringAMD; -GLEW_FUN_EXPORT PFNGLGETPERFMONITORGROUPSAMDPROC __glewGetPerfMonitorGroupsAMD; -GLEW_FUN_EXPORT PFNGLSELECTPERFMONITORCOUNTERSAMDPROC __glewSelectPerfMonitorCountersAMD; - -GLEW_FUN_EXPORT PFNGLSETMULTISAMPLEFVAMDPROC __glewSetMultisamplefvAMD; - -GLEW_FUN_EXPORT PFNGLTEXSTORAGESPARSEAMDPROC __glewTexStorageSparseAMD; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGESPARSEAMDPROC __glewTextureStorageSparseAMD; - -GLEW_FUN_EXPORT PFNGLSTENCILOPVALUEAMDPROC __glewStencilOpValueAMD; - -GLEW_FUN_EXPORT PFNGLTESSELLATIONFACTORAMDPROC __glewTessellationFactorAMD; -GLEW_FUN_EXPORT PFNGLTESSELLATIONMODEAMDPROC __glewTessellationModeAMD; - -GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFERANGLEPROC __glewBlitFramebufferANGLE; - -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC __glewRenderbufferStorageMultisampleANGLE; - -GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDANGLEPROC __glewDrawArraysInstancedANGLE; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDANGLEPROC __glewDrawElementsInstancedANGLE; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORANGLEPROC __glewVertexAttribDivisorANGLE; - -GLEW_FUN_EXPORT PFNGLBEGINQUERYANGLEPROC __glewBeginQueryANGLE; -GLEW_FUN_EXPORT PFNGLDELETEQUERIESANGLEPROC __glewDeleteQueriesANGLE; -GLEW_FUN_EXPORT PFNGLENDQUERYANGLEPROC __glewEndQueryANGLE; -GLEW_FUN_EXPORT PFNGLGENQUERIESANGLEPROC __glewGenQueriesANGLE; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VANGLEPROC __glewGetQueryObjecti64vANGLE; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVANGLEPROC __glewGetQueryObjectivANGLE; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VANGLEPROC __glewGetQueryObjectui64vANGLE; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVANGLEPROC __glewGetQueryObjectuivANGLE; -GLEW_FUN_EXPORT PFNGLGETQUERYIVANGLEPROC __glewGetQueryivANGLE; -GLEW_FUN_EXPORT PFNGLISQUERYANGLEPROC __glewIsQueryANGLE; -GLEW_FUN_EXPORT PFNGLQUERYCOUNTERANGLEPROC __glewQueryCounterANGLE; - -GLEW_FUN_EXPORT PFNGLGETTRANSLATEDSHADERSOURCEANGLEPROC __glewGetTranslatedShaderSourceANGLE; - -GLEW_FUN_EXPORT PFNGLCOPYTEXTURELEVELSAPPLEPROC __glewCopyTextureLevelsAPPLE; - -GLEW_FUN_EXPORT PFNGLDRAWELEMENTARRAYAPPLEPROC __glewDrawElementArrayAPPLE; -GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC __glewDrawRangeElementArrayAPPLE; -GLEW_FUN_EXPORT PFNGLELEMENTPOINTERAPPLEPROC __glewElementPointerAPPLE; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC __glewMultiDrawElementArrayAPPLE; -GLEW_FUN_EXPORT PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC __glewMultiDrawRangeElementArrayAPPLE; - -GLEW_FUN_EXPORT PFNGLDELETEFENCESAPPLEPROC __glewDeleteFencesAPPLE; -GLEW_FUN_EXPORT PFNGLFINISHFENCEAPPLEPROC __glewFinishFenceAPPLE; -GLEW_FUN_EXPORT PFNGLFINISHOBJECTAPPLEPROC __glewFinishObjectAPPLE; -GLEW_FUN_EXPORT PFNGLGENFENCESAPPLEPROC __glewGenFencesAPPLE; -GLEW_FUN_EXPORT PFNGLISFENCEAPPLEPROC __glewIsFenceAPPLE; -GLEW_FUN_EXPORT PFNGLSETFENCEAPPLEPROC __glewSetFenceAPPLE; -GLEW_FUN_EXPORT PFNGLTESTFENCEAPPLEPROC __glewTestFenceAPPLE; -GLEW_FUN_EXPORT PFNGLTESTOBJECTAPPLEPROC __glewTestObjectAPPLE; - -GLEW_FUN_EXPORT PFNGLBUFFERPARAMETERIAPPLEPROC __glewBufferParameteriAPPLE; -GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC __glewFlushMappedBufferRangeAPPLE; - -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC __glewRenderbufferStorageMultisampleAPPLE; -GLEW_FUN_EXPORT PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC __glewResolveMultisampleFramebufferAPPLE; - -GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERIVAPPLEPROC __glewGetObjectParameterivAPPLE; -GLEW_FUN_EXPORT PFNGLOBJECTPURGEABLEAPPLEPROC __glewObjectPurgeableAPPLE; -GLEW_FUN_EXPORT PFNGLOBJECTUNPURGEABLEAPPLEPROC __glewObjectUnpurgeableAPPLE; - -GLEW_FUN_EXPORT PFNGLCLIENTWAITSYNCAPPLEPROC __glewClientWaitSyncAPPLE; -GLEW_FUN_EXPORT PFNGLDELETESYNCAPPLEPROC __glewDeleteSyncAPPLE; -GLEW_FUN_EXPORT PFNGLFENCESYNCAPPLEPROC __glewFenceSyncAPPLE; -GLEW_FUN_EXPORT PFNGLGETINTEGER64VAPPLEPROC __glewGetInteger64vAPPLE; -GLEW_FUN_EXPORT PFNGLGETSYNCIVAPPLEPROC __glewGetSyncivAPPLE; -GLEW_FUN_EXPORT PFNGLISSYNCAPPLEPROC __glewIsSyncAPPLE; -GLEW_FUN_EXPORT PFNGLWAITSYNCAPPLEPROC __glewWaitSyncAPPLE; - -GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC __glewGetTexParameterPointervAPPLE; -GLEW_FUN_EXPORT PFNGLTEXTURERANGEAPPLEPROC __glewTextureRangeAPPLE; - -GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYAPPLEPROC __glewBindVertexArrayAPPLE; -GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSAPPLEPROC __glewDeleteVertexArraysAPPLE; -GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSAPPLEPROC __glewGenVertexArraysAPPLE; -GLEW_FUN_EXPORT PFNGLISVERTEXARRAYAPPLEPROC __glewIsVertexArrayAPPLE; - -GLEW_FUN_EXPORT PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC __glewFlushVertexArrayRangeAPPLE; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYPARAMETERIAPPLEPROC __glewVertexArrayParameteriAPPLE; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYRANGEAPPLEPROC __glewVertexArrayRangeAPPLE; - -GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBAPPLEPROC __glewDisableVertexAttribAPPLE; -GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBAPPLEPROC __glewEnableVertexAttribAPPLE; -GLEW_FUN_EXPORT PFNGLISVERTEXATTRIBENABLEDAPPLEPROC __glewIsVertexAttribEnabledAPPLE; -GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB1DAPPLEPROC __glewMapVertexAttrib1dAPPLE; -GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB1FAPPLEPROC __glewMapVertexAttrib1fAPPLE; -GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB2DAPPLEPROC __glewMapVertexAttrib2dAPPLE; -GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB2FAPPLEPROC __glewMapVertexAttrib2fAPPLE; - -GLEW_FUN_EXPORT PFNGLCLEARDEPTHFPROC __glewClearDepthf; -GLEW_FUN_EXPORT PFNGLDEPTHRANGEFPROC __glewDepthRangef; -GLEW_FUN_EXPORT PFNGLGETSHADERPRECISIONFORMATPROC __glewGetShaderPrecisionFormat; -GLEW_FUN_EXPORT PFNGLRELEASESHADERCOMPILERPROC __glewReleaseShaderCompiler; -GLEW_FUN_EXPORT PFNGLSHADERBINARYPROC __glewShaderBinary; - -GLEW_FUN_EXPORT PFNGLMEMORYBARRIERBYREGIONPROC __glewMemoryBarrierByRegion; - -GLEW_FUN_EXPORT PFNGLPRIMITIVEBOUNDINGBOXARBPROC __glewPrimitiveBoundingBoxARB; - -GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC __glewDrawArraysInstancedBaseInstance; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC __glewDrawElementsInstancedBaseInstance; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC __glewDrawElementsInstancedBaseVertexBaseInstance; - -GLEW_FUN_EXPORT PFNGLGETIMAGEHANDLEARBPROC __glewGetImageHandleARB; -GLEW_FUN_EXPORT PFNGLGETTEXTUREHANDLEARBPROC __glewGetTextureHandleARB; -GLEW_FUN_EXPORT PFNGLGETTEXTURESAMPLERHANDLEARBPROC __glewGetTextureSamplerHandleARB; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLUI64VARBPROC __glewGetVertexAttribLui64vARB; -GLEW_FUN_EXPORT PFNGLISIMAGEHANDLERESIDENTARBPROC __glewIsImageHandleResidentARB; -GLEW_FUN_EXPORT PFNGLISTEXTUREHANDLERESIDENTARBPROC __glewIsTextureHandleResidentARB; -GLEW_FUN_EXPORT PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC __glewMakeImageHandleNonResidentARB; -GLEW_FUN_EXPORT PFNGLMAKEIMAGEHANDLERESIDENTARBPROC __glewMakeImageHandleResidentARB; -GLEW_FUN_EXPORT PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC __glewMakeTextureHandleNonResidentARB; -GLEW_FUN_EXPORT PFNGLMAKETEXTUREHANDLERESIDENTARBPROC __glewMakeTextureHandleResidentARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC __glewProgramUniformHandleui64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC __glewProgramUniformHandleui64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64ARBPROC __glewUniformHandleui64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64VARBPROC __glewUniformHandleui64vARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64ARBPROC __glewVertexAttribL1ui64ARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64VARBPROC __glewVertexAttribL1ui64vARB; - -GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONINDEXEDPROC __glewBindFragDataLocationIndexed; -GLEW_FUN_EXPORT PFNGLGETFRAGDATAINDEXPROC __glewGetFragDataIndex; - -GLEW_FUN_EXPORT PFNGLBUFFERSTORAGEPROC __glewBufferStorage; - -GLEW_FUN_EXPORT PFNGLCREATESYNCFROMCLEVENTARBPROC __glewCreateSyncFromCLeventARB; - -GLEW_FUN_EXPORT PFNGLCLEARBUFFERDATAPROC __glewClearBufferData; -GLEW_FUN_EXPORT PFNGLCLEARBUFFERSUBDATAPROC __glewClearBufferSubData; -GLEW_FUN_EXPORT PFNGLCLEARNAMEDBUFFERDATAEXTPROC __glewClearNamedBufferDataEXT; -GLEW_FUN_EXPORT PFNGLCLEARNAMEDBUFFERSUBDATAEXTPROC __glewClearNamedBufferSubDataEXT; - -GLEW_FUN_EXPORT PFNGLCLEARTEXIMAGEPROC __glewClearTexImage; -GLEW_FUN_EXPORT PFNGLCLEARTEXSUBIMAGEPROC __glewClearTexSubImage; - -GLEW_FUN_EXPORT PFNGLCLIPCONTROLPROC __glewClipControl; - -GLEW_FUN_EXPORT PFNGLCLAMPCOLORARBPROC __glewClampColorARB; - -GLEW_FUN_EXPORT PFNGLDISPATCHCOMPUTEPROC __glewDispatchCompute; -GLEW_FUN_EXPORT PFNGLDISPATCHCOMPUTEINDIRECTPROC __glewDispatchComputeIndirect; - -GLEW_FUN_EXPORT PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC __glewDispatchComputeGroupSizeARB; - -GLEW_FUN_EXPORT PFNGLCOPYBUFFERSUBDATAPROC __glewCopyBufferSubData; - -GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATAPROC __glewCopyImageSubData; - -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECALLBACKARBPROC __glewDebugMessageCallbackARB; -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECONTROLARBPROC __glewDebugMessageControlARB; -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEINSERTARBPROC __glewDebugMessageInsertARB; -GLEW_FUN_EXPORT PFNGLGETDEBUGMESSAGELOGARBPROC __glewGetDebugMessageLogARB; - -GLEW_FUN_EXPORT PFNGLBINDTEXTUREUNITPROC __glewBindTextureUnit; -GLEW_FUN_EXPORT PFNGLBLITNAMEDFRAMEBUFFERPROC __glewBlitNamedFramebuffer; -GLEW_FUN_EXPORT PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC __glewCheckNamedFramebufferStatus; -GLEW_FUN_EXPORT PFNGLCLEARNAMEDBUFFERDATAPROC __glewClearNamedBufferData; -GLEW_FUN_EXPORT PFNGLCLEARNAMEDBUFFERSUBDATAPROC __glewClearNamedBufferSubData; -GLEW_FUN_EXPORT PFNGLCLEARNAMEDFRAMEBUFFERFIPROC __glewClearNamedFramebufferfi; -GLEW_FUN_EXPORT PFNGLCLEARNAMEDFRAMEBUFFERFVPROC __glewClearNamedFramebufferfv; -GLEW_FUN_EXPORT PFNGLCLEARNAMEDFRAMEBUFFERIVPROC __glewClearNamedFramebufferiv; -GLEW_FUN_EXPORT PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC __glewClearNamedFramebufferuiv; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC __glewCompressedTextureSubImage1D; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC __glewCompressedTextureSubImage2D; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC __glewCompressedTextureSubImage3D; -GLEW_FUN_EXPORT PFNGLCOPYNAMEDBUFFERSUBDATAPROC __glewCopyNamedBufferSubData; -GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE1DPROC __glewCopyTextureSubImage1D; -GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE2DPROC __glewCopyTextureSubImage2D; -GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE3DPROC __glewCopyTextureSubImage3D; -GLEW_FUN_EXPORT PFNGLCREATEBUFFERSPROC __glewCreateBuffers; -GLEW_FUN_EXPORT PFNGLCREATEFRAMEBUFFERSPROC __glewCreateFramebuffers; -GLEW_FUN_EXPORT PFNGLCREATEPROGRAMPIPELINESPROC __glewCreateProgramPipelines; -GLEW_FUN_EXPORT PFNGLCREATEQUERIESPROC __glewCreateQueries; -GLEW_FUN_EXPORT PFNGLCREATERENDERBUFFERSPROC __glewCreateRenderbuffers; -GLEW_FUN_EXPORT PFNGLCREATESAMPLERSPROC __glewCreateSamplers; -GLEW_FUN_EXPORT PFNGLCREATETEXTURESPROC __glewCreateTextures; -GLEW_FUN_EXPORT PFNGLCREATETRANSFORMFEEDBACKSPROC __glewCreateTransformFeedbacks; -GLEW_FUN_EXPORT PFNGLCREATEVERTEXARRAYSPROC __glewCreateVertexArrays; -GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYATTRIBPROC __glewDisableVertexArrayAttrib; -GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYATTRIBPROC __glewEnableVertexArrayAttrib; -GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC __glewFlushMappedNamedBufferRange; -GLEW_FUN_EXPORT PFNGLGENERATETEXTUREMIPMAPPROC __glewGenerateTextureMipmap; -GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC __glewGetCompressedTextureImage; -GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERI64VPROC __glewGetNamedBufferParameteri64v; -GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERIVPROC __glewGetNamedBufferParameteriv; -GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPOINTERVPROC __glewGetNamedBufferPointerv; -GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERSUBDATAPROC __glewGetNamedBufferSubData; -GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetNamedFramebufferAttachmentParameteriv; -GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC __glewGetNamedFramebufferParameteriv; -GLEW_FUN_EXPORT PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC __glewGetNamedRenderbufferParameteriv; -GLEW_FUN_EXPORT PFNGLGETQUERYBUFFEROBJECTI64VPROC __glewGetQueryBufferObjecti64v; -GLEW_FUN_EXPORT PFNGLGETQUERYBUFFEROBJECTIVPROC __glewGetQueryBufferObjectiv; -GLEW_FUN_EXPORT PFNGLGETQUERYBUFFEROBJECTUI64VPROC __glewGetQueryBufferObjectui64v; -GLEW_FUN_EXPORT PFNGLGETQUERYBUFFEROBJECTUIVPROC __glewGetQueryBufferObjectuiv; -GLEW_FUN_EXPORT PFNGLGETTEXTUREIMAGEPROC __glewGetTextureImage; -GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERFVPROC __glewGetTextureLevelParameterfv; -GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERIVPROC __glewGetTextureLevelParameteriv; -GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIIVPROC __glewGetTextureParameterIiv; -GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIUIVPROC __glewGetTextureParameterIuiv; -GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERFVPROC __glewGetTextureParameterfv; -GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIVPROC __glewGetTextureParameteriv; -GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKI64_VPROC __glewGetTransformFeedbacki64_v; -GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKI_VPROC __glewGetTransformFeedbacki_v; -GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKIVPROC __glewGetTransformFeedbackiv; -GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINDEXED64IVPROC __glewGetVertexArrayIndexed64iv; -GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINDEXEDIVPROC __glewGetVertexArrayIndexediv; -GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYIVPROC __glewGetVertexArrayiv; -GLEW_FUN_EXPORT PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC __glewInvalidateNamedFramebufferData; -GLEW_FUN_EXPORT PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC __glewInvalidateNamedFramebufferSubData; -GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFERPROC __glewMapNamedBuffer; -GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFERRANGEPROC __glewMapNamedBufferRange; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERDATAPROC __glewNamedBufferData; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSTORAGEPROC __glewNamedBufferStorage; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSUBDATAPROC __glewNamedBufferSubData; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC __glewNamedFramebufferDrawBuffer; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC __glewNamedFramebufferDrawBuffers; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC __glewNamedFramebufferParameteri; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC __glewNamedFramebufferReadBuffer; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC __glewNamedFramebufferRenderbuffer; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREPROC __glewNamedFramebufferTexture; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC __glewNamedFramebufferTextureLayer; -GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEPROC __glewNamedRenderbufferStorage; -GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewNamedRenderbufferStorageMultisample; -GLEW_FUN_EXPORT PFNGLTEXTUREBUFFERPROC __glewTextureBuffer; -GLEW_FUN_EXPORT PFNGLTEXTUREBUFFERRANGEPROC __glewTextureBufferRange; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIIVPROC __glewTextureParameterIiv; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIUIVPROC __glewTextureParameterIuiv; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFPROC __glewTextureParameterf; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFVPROC __glewTextureParameterfv; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIPROC __glewTextureParameteri; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIVPROC __glewTextureParameteriv; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE1DPROC __glewTextureStorage1D; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DPROC __glewTextureStorage2D; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC __glewTextureStorage2DMultisample; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DPROC __glewTextureStorage3D; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC __glewTextureStorage3DMultisample; -GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE1DPROC __glewTextureSubImage1D; -GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE2DPROC __glewTextureSubImage2D; -GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE3DPROC __glewTextureSubImage3D; -GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC __glewTransformFeedbackBufferBase; -GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC __glewTransformFeedbackBufferRange; -GLEW_FUN_EXPORT PFNGLUNMAPNAMEDBUFFERPROC __glewUnmapNamedBuffer; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYATTRIBBINDINGPROC __glewVertexArrayAttribBinding; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYATTRIBFORMATPROC __glewVertexArrayAttribFormat; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYATTRIBIFORMATPROC __glewVertexArrayAttribIFormat; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYATTRIBLFORMATPROC __glewVertexArrayAttribLFormat; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYBINDINGDIVISORPROC __glewVertexArrayBindingDivisor; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYELEMENTBUFFERPROC __glewVertexArrayElementBuffer; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXBUFFERPROC __glewVertexArrayVertexBuffer; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXBUFFERSPROC __glewVertexArrayVertexBuffers; - -GLEW_FUN_EXPORT PFNGLDRAWBUFFERSARBPROC __glewDrawBuffersARB; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIARBPROC __glewBlendEquationSeparateiARB; -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIARBPROC __glewBlendEquationiARB; -GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIARBPROC __glewBlendFuncSeparateiARB; -GLEW_FUN_EXPORT PFNGLBLENDFUNCIARBPROC __glewBlendFunciARB; - -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSBASEVERTEXPROC __glewDrawElementsBaseVertex; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC __glewDrawElementsInstancedBaseVertex; -GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC __glewDrawRangeElementsBaseVertex; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC __glewMultiDrawElementsBaseVertex; - -GLEW_FUN_EXPORT PFNGLDRAWARRAYSINDIRECTPROC __glewDrawArraysIndirect; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINDIRECTPROC __glewDrawElementsIndirect; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERPARAMETERIPROC __glewFramebufferParameteri; -GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERIVPROC __glewGetFramebufferParameteriv; -GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVEXTPROC __glewGetNamedFramebufferParameterivEXT; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERPARAMETERIEXTPROC __glewNamedFramebufferParameteriEXT; - -GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFERPROC __glewBindFramebuffer; -GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFERPROC __glewBindRenderbuffer; -GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFERPROC __glewBlitFramebuffer; -GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSPROC __glewCheckFramebufferStatus; -GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSPROC __glewDeleteFramebuffers; -GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSPROC __glewDeleteRenderbuffers; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFERPROC __glewFramebufferRenderbuffer; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE1DPROC __glewFramebufferTexture1D; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DPROC __glewFramebufferTexture2D; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DPROC __glewFramebufferTexture3D; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERPROC __glewFramebufferTextureLayer; -GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSPROC __glewGenFramebuffers; -GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSPROC __glewGenRenderbuffers; -GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPPROC __glewGenerateMipmap; -GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetFramebufferAttachmentParameteriv; -GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVPROC __glewGetRenderbufferParameteriv; -GLEW_FUN_EXPORT PFNGLISFRAMEBUFFERPROC __glewIsFramebuffer; -GLEW_FUN_EXPORT PFNGLISRENDERBUFFERPROC __glewIsRenderbuffer; -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEPROC __glewRenderbufferStorage; -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewRenderbufferStorageMultisample; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREARBPROC __glewFramebufferTextureARB; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREFACEARBPROC __glewFramebufferTextureFaceARB; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERARBPROC __glewFramebufferTextureLayerARB; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIARBPROC __glewProgramParameteriARB; - -GLEW_FUN_EXPORT PFNGLGETPROGRAMBINARYPROC __glewGetProgramBinary; -GLEW_FUN_EXPORT PFNGLPROGRAMBINARYPROC __glewProgramBinary; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIPROC __glewProgramParameteri; - -GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC __glewGetCompressedTextureSubImage; -GLEW_FUN_EXPORT PFNGLGETTEXTURESUBIMAGEPROC __glewGetTextureSubImage; - -GLEW_FUN_EXPORT PFNGLSPECIALIZESHADERARBPROC __glewSpecializeShaderARB; - -GLEW_FUN_EXPORT PFNGLGETUNIFORMDVPROC __glewGetUniformdv; -GLEW_FUN_EXPORT PFNGLUNIFORM1DPROC __glewUniform1d; -GLEW_FUN_EXPORT PFNGLUNIFORM1DVPROC __glewUniform1dv; -GLEW_FUN_EXPORT PFNGLUNIFORM2DPROC __glewUniform2d; -GLEW_FUN_EXPORT PFNGLUNIFORM2DVPROC __glewUniform2dv; -GLEW_FUN_EXPORT PFNGLUNIFORM3DPROC __glewUniform3d; -GLEW_FUN_EXPORT PFNGLUNIFORM3DVPROC __glewUniform3dv; -GLEW_FUN_EXPORT PFNGLUNIFORM4DPROC __glewUniform4d; -GLEW_FUN_EXPORT PFNGLUNIFORM4DVPROC __glewUniform4dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2DVPROC __glewUniformMatrix2dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3DVPROC __glewUniformMatrix2x3dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4DVPROC __glewUniformMatrix2x4dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3DVPROC __glewUniformMatrix3dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2DVPROC __glewUniformMatrix3x2dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4DVPROC __glewUniformMatrix3x4dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4DVPROC __glewUniformMatrix4dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2DVPROC __glewUniformMatrix4x2dv; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3DVPROC __glewUniformMatrix4x3dv; - -GLEW_FUN_EXPORT PFNGLGETUNIFORMI64VARBPROC __glewGetUniformi64vARB; -GLEW_FUN_EXPORT PFNGLGETUNIFORMUI64VARBPROC __glewGetUniformui64vARB; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMI64VARBPROC __glewGetnUniformi64vARB; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMUI64VARBPROC __glewGetnUniformui64vARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64ARBPROC __glewProgramUniform1i64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64VARBPROC __glewProgramUniform1i64vARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64ARBPROC __glewProgramUniform1ui64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64VARBPROC __glewProgramUniform1ui64vARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64ARBPROC __glewProgramUniform2i64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64VARBPROC __glewProgramUniform2i64vARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64ARBPROC __glewProgramUniform2ui64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64VARBPROC __glewProgramUniform2ui64vARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64ARBPROC __glewProgramUniform3i64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64VARBPROC __glewProgramUniform3i64vARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64ARBPROC __glewProgramUniform3ui64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64VARBPROC __glewProgramUniform3ui64vARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64ARBPROC __glewProgramUniform4i64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64VARBPROC __glewProgramUniform4i64vARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64ARBPROC __glewProgramUniform4ui64ARB; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64VARBPROC __glewProgramUniform4ui64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORM1I64ARBPROC __glewUniform1i64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORM1I64VARBPROC __glewUniform1i64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORM1UI64ARBPROC __glewUniform1ui64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORM1UI64VARBPROC __glewUniform1ui64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORM2I64ARBPROC __glewUniform2i64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORM2I64VARBPROC __glewUniform2i64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORM2UI64ARBPROC __glewUniform2ui64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORM2UI64VARBPROC __glewUniform2ui64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORM3I64ARBPROC __glewUniform3i64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORM3I64VARBPROC __glewUniform3i64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORM3UI64ARBPROC __glewUniform3ui64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORM3UI64VARBPROC __glewUniform3ui64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORM4I64ARBPROC __glewUniform4i64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORM4I64VARBPROC __glewUniform4i64vARB; -GLEW_FUN_EXPORT PFNGLUNIFORM4UI64ARBPROC __glewUniform4ui64ARB; -GLEW_FUN_EXPORT PFNGLUNIFORM4UI64VARBPROC __glewUniform4ui64vARB; - -GLEW_FUN_EXPORT PFNGLCOLORSUBTABLEPROC __glewColorSubTable; -GLEW_FUN_EXPORT PFNGLCOLORTABLEPROC __glewColorTable; -GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERFVPROC __glewColorTableParameterfv; -GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERIVPROC __glewColorTableParameteriv; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER1DPROC __glewConvolutionFilter1D; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER2DPROC __glewConvolutionFilter2D; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFPROC __glewConvolutionParameterf; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFVPROC __glewConvolutionParameterfv; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIPROC __glewConvolutionParameteri; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIVPROC __glewConvolutionParameteriv; -GLEW_FUN_EXPORT PFNGLCOPYCOLORSUBTABLEPROC __glewCopyColorSubTable; -GLEW_FUN_EXPORT PFNGLCOPYCOLORTABLEPROC __glewCopyColorTable; -GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER1DPROC __glewCopyConvolutionFilter1D; -GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER2DPROC __glewCopyConvolutionFilter2D; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPROC __glewGetColorTable; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVPROC __glewGetColorTableParameterfv; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVPROC __glewGetColorTableParameteriv; -GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONFILTERPROC __glewGetConvolutionFilter; -GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERFVPROC __glewGetConvolutionParameterfv; -GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERIVPROC __glewGetConvolutionParameteriv; -GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPROC __glewGetHistogram; -GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERFVPROC __glewGetHistogramParameterfv; -GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERIVPROC __glewGetHistogramParameteriv; -GLEW_FUN_EXPORT PFNGLGETMINMAXPROC __glewGetMinmax; -GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERFVPROC __glewGetMinmaxParameterfv; -GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERIVPROC __glewGetMinmaxParameteriv; -GLEW_FUN_EXPORT PFNGLGETSEPARABLEFILTERPROC __glewGetSeparableFilter; -GLEW_FUN_EXPORT PFNGLHISTOGRAMPROC __glewHistogram; -GLEW_FUN_EXPORT PFNGLMINMAXPROC __glewMinmax; -GLEW_FUN_EXPORT PFNGLRESETHISTOGRAMPROC __glewResetHistogram; -GLEW_FUN_EXPORT PFNGLRESETMINMAXPROC __glewResetMinmax; -GLEW_FUN_EXPORT PFNGLSEPARABLEFILTER2DPROC __glewSeparableFilter2D; - -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC __glewMultiDrawArraysIndirectCountARB; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC __glewMultiDrawElementsIndirectCountARB; - -GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDARBPROC __glewDrawArraysInstancedARB; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDARBPROC __glewDrawElementsInstancedARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORARBPROC __glewVertexAttribDivisorARB; - -GLEW_FUN_EXPORT PFNGLGETINTERNALFORMATIVPROC __glewGetInternalformativ; - -GLEW_FUN_EXPORT PFNGLGETINTERNALFORMATI64VPROC __glewGetInternalformati64v; - -GLEW_FUN_EXPORT PFNGLINVALIDATEBUFFERDATAPROC __glewInvalidateBufferData; -GLEW_FUN_EXPORT PFNGLINVALIDATEBUFFERSUBDATAPROC __glewInvalidateBufferSubData; -GLEW_FUN_EXPORT PFNGLINVALIDATEFRAMEBUFFERPROC __glewInvalidateFramebuffer; -GLEW_FUN_EXPORT PFNGLINVALIDATESUBFRAMEBUFFERPROC __glewInvalidateSubFramebuffer; -GLEW_FUN_EXPORT PFNGLINVALIDATETEXIMAGEPROC __glewInvalidateTexImage; -GLEW_FUN_EXPORT PFNGLINVALIDATETEXSUBIMAGEPROC __glewInvalidateTexSubImage; - -GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEPROC __glewFlushMappedBufferRange; -GLEW_FUN_EXPORT PFNGLMAPBUFFERRANGEPROC __glewMapBufferRange; - -GLEW_FUN_EXPORT PFNGLCURRENTPALETTEMATRIXARBPROC __glewCurrentPaletteMatrixARB; -GLEW_FUN_EXPORT PFNGLMATRIXINDEXPOINTERARBPROC __glewMatrixIndexPointerARB; -GLEW_FUN_EXPORT PFNGLMATRIXINDEXUBVARBPROC __glewMatrixIndexubvARB; -GLEW_FUN_EXPORT PFNGLMATRIXINDEXUIVARBPROC __glewMatrixIndexuivARB; -GLEW_FUN_EXPORT PFNGLMATRIXINDEXUSVARBPROC __glewMatrixIndexusvARB; - -GLEW_FUN_EXPORT PFNGLBINDBUFFERSBASEPROC __glewBindBuffersBase; -GLEW_FUN_EXPORT PFNGLBINDBUFFERSRANGEPROC __glewBindBuffersRange; -GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTURESPROC __glewBindImageTextures; -GLEW_FUN_EXPORT PFNGLBINDSAMPLERSPROC __glewBindSamplers; -GLEW_FUN_EXPORT PFNGLBINDTEXTURESPROC __glewBindTextures; -GLEW_FUN_EXPORT PFNGLBINDVERTEXBUFFERSPROC __glewBindVertexBuffers; - -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTPROC __glewMultiDrawArraysIndirect; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTPROC __glewMultiDrawElementsIndirect; - -GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEARBPROC __glewSampleCoverageARB; - -GLEW_FUN_EXPORT PFNGLACTIVETEXTUREARBPROC __glewActiveTextureARB; -GLEW_FUN_EXPORT PFNGLCLIENTACTIVETEXTUREARBPROC __glewClientActiveTextureARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DARBPROC __glewMultiTexCoord1dARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DVARBPROC __glewMultiTexCoord1dvARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FARBPROC __glewMultiTexCoord1fARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FVARBPROC __glewMultiTexCoord1fvARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IARBPROC __glewMultiTexCoord1iARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IVARBPROC __glewMultiTexCoord1ivARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SARBPROC __glewMultiTexCoord1sARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SVARBPROC __glewMultiTexCoord1svARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DARBPROC __glewMultiTexCoord2dARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DVARBPROC __glewMultiTexCoord2dvARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FARBPROC __glewMultiTexCoord2fARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FVARBPROC __glewMultiTexCoord2fvARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IARBPROC __glewMultiTexCoord2iARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IVARBPROC __glewMultiTexCoord2ivARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SARBPROC __glewMultiTexCoord2sARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SVARBPROC __glewMultiTexCoord2svARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DARBPROC __glewMultiTexCoord3dARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DVARBPROC __glewMultiTexCoord3dvARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FARBPROC __glewMultiTexCoord3fARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FVARBPROC __glewMultiTexCoord3fvARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IARBPROC __glewMultiTexCoord3iARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IVARBPROC __glewMultiTexCoord3ivARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SARBPROC __glewMultiTexCoord3sARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SVARBPROC __glewMultiTexCoord3svARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DARBPROC __glewMultiTexCoord4dARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DVARBPROC __glewMultiTexCoord4dvARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FARBPROC __glewMultiTexCoord4fARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FVARBPROC __glewMultiTexCoord4fvARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IARBPROC __glewMultiTexCoord4iARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IVARBPROC __glewMultiTexCoord4ivARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SARBPROC __glewMultiTexCoord4sARB; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SVARBPROC __glewMultiTexCoord4svARB; - -GLEW_FUN_EXPORT PFNGLBEGINQUERYARBPROC __glewBeginQueryARB; -GLEW_FUN_EXPORT PFNGLDELETEQUERIESARBPROC __glewDeleteQueriesARB; -GLEW_FUN_EXPORT PFNGLENDQUERYARBPROC __glewEndQueryARB; -GLEW_FUN_EXPORT PFNGLGENQUERIESARBPROC __glewGenQueriesARB; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVARBPROC __glewGetQueryObjectivARB; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVARBPROC __glewGetQueryObjectuivARB; -GLEW_FUN_EXPORT PFNGLGETQUERYIVARBPROC __glewGetQueryivARB; -GLEW_FUN_EXPORT PFNGLISQUERYARBPROC __glewIsQueryARB; - -GLEW_FUN_EXPORT PFNGLMAXSHADERCOMPILERTHREADSARBPROC __glewMaxShaderCompilerThreadsARB; - -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFARBPROC __glewPointParameterfARB; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVARBPROC __glewPointParameterfvARB; - -GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETCLAMPPROC __glewPolygonOffsetClamp; - -GLEW_FUN_EXPORT PFNGLGETPROGRAMINTERFACEIVPROC __glewGetProgramInterfaceiv; -GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCEINDEXPROC __glewGetProgramResourceIndex; -GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCELOCATIONPROC __glewGetProgramResourceLocation; -GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC __glewGetProgramResourceLocationIndex; -GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCENAMEPROC __glewGetProgramResourceName; -GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCEIVPROC __glewGetProgramResourceiv; - -GLEW_FUN_EXPORT PFNGLPROVOKINGVERTEXPROC __glewProvokingVertex; - -GLEW_FUN_EXPORT PFNGLGETGRAPHICSRESETSTATUSARBPROC __glewGetGraphicsResetStatusARB; -GLEW_FUN_EXPORT PFNGLGETNCOLORTABLEARBPROC __glewGetnColorTableARB; -GLEW_FUN_EXPORT PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC __glewGetnCompressedTexImageARB; -GLEW_FUN_EXPORT PFNGLGETNCONVOLUTIONFILTERARBPROC __glewGetnConvolutionFilterARB; -GLEW_FUN_EXPORT PFNGLGETNHISTOGRAMARBPROC __glewGetnHistogramARB; -GLEW_FUN_EXPORT PFNGLGETNMAPDVARBPROC __glewGetnMapdvARB; -GLEW_FUN_EXPORT PFNGLGETNMAPFVARBPROC __glewGetnMapfvARB; -GLEW_FUN_EXPORT PFNGLGETNMAPIVARBPROC __glewGetnMapivARB; -GLEW_FUN_EXPORT PFNGLGETNMINMAXARBPROC __glewGetnMinmaxARB; -GLEW_FUN_EXPORT PFNGLGETNPIXELMAPFVARBPROC __glewGetnPixelMapfvARB; -GLEW_FUN_EXPORT PFNGLGETNPIXELMAPUIVARBPROC __glewGetnPixelMapuivARB; -GLEW_FUN_EXPORT PFNGLGETNPIXELMAPUSVARBPROC __glewGetnPixelMapusvARB; -GLEW_FUN_EXPORT PFNGLGETNPOLYGONSTIPPLEARBPROC __glewGetnPolygonStippleARB; -GLEW_FUN_EXPORT PFNGLGETNSEPARABLEFILTERARBPROC __glewGetnSeparableFilterARB; -GLEW_FUN_EXPORT PFNGLGETNTEXIMAGEARBPROC __glewGetnTexImageARB; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMDVARBPROC __glewGetnUniformdvARB; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMFVARBPROC __glewGetnUniformfvARB; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMIVARBPROC __glewGetnUniformivARB; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMUIVARBPROC __glewGetnUniformuivARB; -GLEW_FUN_EXPORT PFNGLREADNPIXELSARBPROC __glewReadnPixelsARB; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERSAMPLELOCATIONSFVARBPROC __glewFramebufferSampleLocationsfvARB; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVARBPROC __glewNamedFramebufferSampleLocationsfvARB; - -GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGARBPROC __glewMinSampleShadingARB; - -GLEW_FUN_EXPORT PFNGLBINDSAMPLERPROC __glewBindSampler; -GLEW_FUN_EXPORT PFNGLDELETESAMPLERSPROC __glewDeleteSamplers; -GLEW_FUN_EXPORT PFNGLGENSAMPLERSPROC __glewGenSamplers; -GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIIVPROC __glewGetSamplerParameterIiv; -GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIUIVPROC __glewGetSamplerParameterIuiv; -GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERFVPROC __glewGetSamplerParameterfv; -GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIVPROC __glewGetSamplerParameteriv; -GLEW_FUN_EXPORT PFNGLISSAMPLERPROC __glewIsSampler; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIIVPROC __glewSamplerParameterIiv; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIUIVPROC __glewSamplerParameterIuiv; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERFPROC __glewSamplerParameterf; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERFVPROC __glewSamplerParameterfv; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIPROC __glewSamplerParameteri; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIVPROC __glewSamplerParameteriv; - -GLEW_FUN_EXPORT PFNGLACTIVESHADERPROGRAMPROC __glewActiveShaderProgram; -GLEW_FUN_EXPORT PFNGLBINDPROGRAMPIPELINEPROC __glewBindProgramPipeline; -GLEW_FUN_EXPORT PFNGLCREATESHADERPROGRAMVPROC __glewCreateShaderProgramv; -GLEW_FUN_EXPORT PFNGLDELETEPROGRAMPIPELINESPROC __glewDeleteProgramPipelines; -GLEW_FUN_EXPORT PFNGLGENPROGRAMPIPELINESPROC __glewGenProgramPipelines; -GLEW_FUN_EXPORT PFNGLGETPROGRAMPIPELINEINFOLOGPROC __glewGetProgramPipelineInfoLog; -GLEW_FUN_EXPORT PFNGLGETPROGRAMPIPELINEIVPROC __glewGetProgramPipelineiv; -GLEW_FUN_EXPORT PFNGLISPROGRAMPIPELINEPROC __glewIsProgramPipeline; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1DPROC __glewProgramUniform1d; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1DVPROC __glewProgramUniform1dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FPROC __glewProgramUniform1f; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FVPROC __glewProgramUniform1fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IPROC __glewProgramUniform1i; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IVPROC __glewProgramUniform1iv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIPROC __glewProgramUniform1ui; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIVPROC __glewProgramUniform1uiv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2DPROC __glewProgramUniform2d; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2DVPROC __glewProgramUniform2dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FPROC __glewProgramUniform2f; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FVPROC __glewProgramUniform2fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IPROC __glewProgramUniform2i; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IVPROC __glewProgramUniform2iv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIPROC __glewProgramUniform2ui; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIVPROC __glewProgramUniform2uiv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3DPROC __glewProgramUniform3d; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3DVPROC __glewProgramUniform3dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FPROC __glewProgramUniform3f; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FVPROC __glewProgramUniform3fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IPROC __glewProgramUniform3i; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IVPROC __glewProgramUniform3iv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIPROC __glewProgramUniform3ui; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIVPROC __glewProgramUniform3uiv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4DPROC __glewProgramUniform4d; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4DVPROC __glewProgramUniform4dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FPROC __glewProgramUniform4f; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FVPROC __glewProgramUniform4fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IPROC __glewProgramUniform4i; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IVPROC __glewProgramUniform4iv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIPROC __glewProgramUniform4ui; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIVPROC __glewProgramUniform4uiv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2DVPROC __glewProgramUniformMatrix2dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2FVPROC __glewProgramUniformMatrix2fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC __glewProgramUniformMatrix2x3dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC __glewProgramUniformMatrix2x3fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC __glewProgramUniformMatrix2x4dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC __glewProgramUniformMatrix2x4fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3DVPROC __glewProgramUniformMatrix3dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3FVPROC __glewProgramUniformMatrix3fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC __glewProgramUniformMatrix3x2dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC __glewProgramUniformMatrix3x2fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC __glewProgramUniformMatrix3x4dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC __glewProgramUniformMatrix3x4fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4DVPROC __glewProgramUniformMatrix4dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4FVPROC __glewProgramUniformMatrix4fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC __glewProgramUniformMatrix4x2dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC __glewProgramUniformMatrix4x2fv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC __glewProgramUniformMatrix4x3dv; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC __glewProgramUniformMatrix4x3fv; -GLEW_FUN_EXPORT PFNGLUSEPROGRAMSTAGESPROC __glewUseProgramStages; -GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMPIPELINEPROC __glewValidateProgramPipeline; - -GLEW_FUN_EXPORT PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC __glewGetActiveAtomicCounterBufferiv; - -GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTUREPROC __glewBindImageTexture; -GLEW_FUN_EXPORT PFNGLMEMORYBARRIERPROC __glewMemoryBarrier; - -GLEW_FUN_EXPORT PFNGLATTACHOBJECTARBPROC __glewAttachObjectARB; -GLEW_FUN_EXPORT PFNGLCOMPILESHADERARBPROC __glewCompileShaderARB; -GLEW_FUN_EXPORT PFNGLCREATEPROGRAMOBJECTARBPROC __glewCreateProgramObjectARB; -GLEW_FUN_EXPORT PFNGLCREATESHADEROBJECTARBPROC __glewCreateShaderObjectARB; -GLEW_FUN_EXPORT PFNGLDELETEOBJECTARBPROC __glewDeleteObjectARB; -GLEW_FUN_EXPORT PFNGLDETACHOBJECTARBPROC __glewDetachObjectARB; -GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMARBPROC __glewGetActiveUniformARB; -GLEW_FUN_EXPORT PFNGLGETATTACHEDOBJECTSARBPROC __glewGetAttachedObjectsARB; -GLEW_FUN_EXPORT PFNGLGETHANDLEARBPROC __glewGetHandleARB; -GLEW_FUN_EXPORT PFNGLGETINFOLOGARBPROC __glewGetInfoLogARB; -GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERFVARBPROC __glewGetObjectParameterfvARB; -GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERIVARBPROC __glewGetObjectParameterivARB; -GLEW_FUN_EXPORT PFNGLGETSHADERSOURCEARBPROC __glewGetShaderSourceARB; -GLEW_FUN_EXPORT PFNGLGETUNIFORMLOCATIONARBPROC __glewGetUniformLocationARB; -GLEW_FUN_EXPORT PFNGLGETUNIFORMFVARBPROC __glewGetUniformfvARB; -GLEW_FUN_EXPORT PFNGLGETUNIFORMIVARBPROC __glewGetUniformivARB; -GLEW_FUN_EXPORT PFNGLLINKPROGRAMARBPROC __glewLinkProgramARB; -GLEW_FUN_EXPORT PFNGLSHADERSOURCEARBPROC __glewShaderSourceARB; -GLEW_FUN_EXPORT PFNGLUNIFORM1FARBPROC __glewUniform1fARB; -GLEW_FUN_EXPORT PFNGLUNIFORM1FVARBPROC __glewUniform1fvARB; -GLEW_FUN_EXPORT PFNGLUNIFORM1IARBPROC __glewUniform1iARB; -GLEW_FUN_EXPORT PFNGLUNIFORM1IVARBPROC __glewUniform1ivARB; -GLEW_FUN_EXPORT PFNGLUNIFORM2FARBPROC __glewUniform2fARB; -GLEW_FUN_EXPORT PFNGLUNIFORM2FVARBPROC __glewUniform2fvARB; -GLEW_FUN_EXPORT PFNGLUNIFORM2IARBPROC __glewUniform2iARB; -GLEW_FUN_EXPORT PFNGLUNIFORM2IVARBPROC __glewUniform2ivARB; -GLEW_FUN_EXPORT PFNGLUNIFORM3FARBPROC __glewUniform3fARB; -GLEW_FUN_EXPORT PFNGLUNIFORM3FVARBPROC __glewUniform3fvARB; -GLEW_FUN_EXPORT PFNGLUNIFORM3IARBPROC __glewUniform3iARB; -GLEW_FUN_EXPORT PFNGLUNIFORM3IVARBPROC __glewUniform3ivARB; -GLEW_FUN_EXPORT PFNGLUNIFORM4FARBPROC __glewUniform4fARB; -GLEW_FUN_EXPORT PFNGLUNIFORM4FVARBPROC __glewUniform4fvARB; -GLEW_FUN_EXPORT PFNGLUNIFORM4IARBPROC __glewUniform4iARB; -GLEW_FUN_EXPORT PFNGLUNIFORM4IVARBPROC __glewUniform4ivARB; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2FVARBPROC __glewUniformMatrix2fvARB; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3FVARBPROC __glewUniformMatrix3fvARB; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4FVARBPROC __glewUniformMatrix4fvARB; -GLEW_FUN_EXPORT PFNGLUSEPROGRAMOBJECTARBPROC __glewUseProgramObjectARB; -GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMARBPROC __glewValidateProgramARB; - -GLEW_FUN_EXPORT PFNGLSHADERSTORAGEBLOCKBINDINGPROC __glewShaderStorageBlockBinding; - -GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINENAMEPROC __glewGetActiveSubroutineName; -GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC __glewGetActiveSubroutineUniformName; -GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC __glewGetActiveSubroutineUniformiv; -GLEW_FUN_EXPORT PFNGLGETPROGRAMSTAGEIVPROC __glewGetProgramStageiv; -GLEW_FUN_EXPORT PFNGLGETSUBROUTINEINDEXPROC __glewGetSubroutineIndex; -GLEW_FUN_EXPORT PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC __glewGetSubroutineUniformLocation; -GLEW_FUN_EXPORT PFNGLGETUNIFORMSUBROUTINEUIVPROC __glewGetUniformSubroutineuiv; -GLEW_FUN_EXPORT PFNGLUNIFORMSUBROUTINESUIVPROC __glewUniformSubroutinesuiv; - -GLEW_FUN_EXPORT PFNGLCOMPILESHADERINCLUDEARBPROC __glewCompileShaderIncludeARB; -GLEW_FUN_EXPORT PFNGLDELETENAMEDSTRINGARBPROC __glewDeleteNamedStringARB; -GLEW_FUN_EXPORT PFNGLGETNAMEDSTRINGARBPROC __glewGetNamedStringARB; -GLEW_FUN_EXPORT PFNGLGETNAMEDSTRINGIVARBPROC __glewGetNamedStringivARB; -GLEW_FUN_EXPORT PFNGLISNAMEDSTRINGARBPROC __glewIsNamedStringARB; -GLEW_FUN_EXPORT PFNGLNAMEDSTRINGARBPROC __glewNamedStringARB; - -GLEW_FUN_EXPORT PFNGLBUFFERPAGECOMMITMENTARBPROC __glewBufferPageCommitmentARB; - -GLEW_FUN_EXPORT PFNGLTEXPAGECOMMITMENTARBPROC __glewTexPageCommitmentARB; - -GLEW_FUN_EXPORT PFNGLCLIENTWAITSYNCPROC __glewClientWaitSync; -GLEW_FUN_EXPORT PFNGLDELETESYNCPROC __glewDeleteSync; -GLEW_FUN_EXPORT PFNGLFENCESYNCPROC __glewFenceSync; -GLEW_FUN_EXPORT PFNGLGETINTEGER64VPROC __glewGetInteger64v; -GLEW_FUN_EXPORT PFNGLGETSYNCIVPROC __glewGetSynciv; -GLEW_FUN_EXPORT PFNGLISSYNCPROC __glewIsSync; -GLEW_FUN_EXPORT PFNGLWAITSYNCPROC __glewWaitSync; - -GLEW_FUN_EXPORT PFNGLPATCHPARAMETERFVPROC __glewPatchParameterfv; -GLEW_FUN_EXPORT PFNGLPATCHPARAMETERIPROC __glewPatchParameteri; - -GLEW_FUN_EXPORT PFNGLTEXTUREBARRIERPROC __glewTextureBarrier; - -GLEW_FUN_EXPORT PFNGLTEXBUFFERARBPROC __glewTexBufferARB; - -GLEW_FUN_EXPORT PFNGLTEXBUFFERRANGEPROC __glewTexBufferRange; -GLEW_FUN_EXPORT PFNGLTEXTUREBUFFERRANGEEXTPROC __glewTextureBufferRangeEXT; - -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE1DARBPROC __glewCompressedTexImage1DARB; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE2DARBPROC __glewCompressedTexImage2DARB; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DARBPROC __glewCompressedTexImage3DARB; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC __glewCompressedTexSubImage1DARB; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC __glewCompressedTexSubImage2DARB; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC __glewCompressedTexSubImage3DARB; -GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXIMAGEARBPROC __glewGetCompressedTexImageARB; - -GLEW_FUN_EXPORT PFNGLGETMULTISAMPLEFVPROC __glewGetMultisamplefv; -GLEW_FUN_EXPORT PFNGLSAMPLEMASKIPROC __glewSampleMaski; -GLEW_FUN_EXPORT PFNGLTEXIMAGE2DMULTISAMPLEPROC __glewTexImage2DMultisample; -GLEW_FUN_EXPORT PFNGLTEXIMAGE3DMULTISAMPLEPROC __glewTexImage3DMultisample; - -GLEW_FUN_EXPORT PFNGLTEXSTORAGE1DPROC __glewTexStorage1D; -GLEW_FUN_EXPORT PFNGLTEXSTORAGE2DPROC __glewTexStorage2D; -GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DPROC __glewTexStorage3D; - -GLEW_FUN_EXPORT PFNGLTEXSTORAGE2DMULTISAMPLEPROC __glewTexStorage2DMultisample; -GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DMULTISAMPLEPROC __glewTexStorage3DMultisample; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DMULTISAMPLEEXTPROC __glewTextureStorage2DMultisampleEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DMULTISAMPLEEXTPROC __glewTextureStorage3DMultisampleEXT; - -GLEW_FUN_EXPORT PFNGLTEXTUREVIEWPROC __glewTextureView; - -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VPROC __glewGetQueryObjecti64v; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VPROC __glewGetQueryObjectui64v; -GLEW_FUN_EXPORT PFNGLQUERYCOUNTERPROC __glewQueryCounter; - -GLEW_FUN_EXPORT PFNGLBINDTRANSFORMFEEDBACKPROC __glewBindTransformFeedback; -GLEW_FUN_EXPORT PFNGLDELETETRANSFORMFEEDBACKSPROC __glewDeleteTransformFeedbacks; -GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKPROC __glewDrawTransformFeedback; -GLEW_FUN_EXPORT PFNGLGENTRANSFORMFEEDBACKSPROC __glewGenTransformFeedbacks; -GLEW_FUN_EXPORT PFNGLISTRANSFORMFEEDBACKPROC __glewIsTransformFeedback; -GLEW_FUN_EXPORT PFNGLPAUSETRANSFORMFEEDBACKPROC __glewPauseTransformFeedback; -GLEW_FUN_EXPORT PFNGLRESUMETRANSFORMFEEDBACKPROC __glewResumeTransformFeedback; - -GLEW_FUN_EXPORT PFNGLBEGINQUERYINDEXEDPROC __glewBeginQueryIndexed; -GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC __glewDrawTransformFeedbackStream; -GLEW_FUN_EXPORT PFNGLENDQUERYINDEXEDPROC __glewEndQueryIndexed; -GLEW_FUN_EXPORT PFNGLGETQUERYINDEXEDIVPROC __glewGetQueryIndexediv; - -GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC __glewDrawTransformFeedbackInstanced; -GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC __glewDrawTransformFeedbackStreamInstanced; - -GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXDARBPROC __glewLoadTransposeMatrixdARB; -GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXFARBPROC __glewLoadTransposeMatrixfARB; -GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXDARBPROC __glewMultTransposeMatrixdARB; -GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXFARBPROC __glewMultTransposeMatrixfARB; - -GLEW_FUN_EXPORT PFNGLBINDBUFFERBASEPROC __glewBindBufferBase; -GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGEPROC __glewBindBufferRange; -GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC __glewGetActiveUniformBlockName; -GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMBLOCKIVPROC __glewGetActiveUniformBlockiv; -GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMNAMEPROC __glewGetActiveUniformName; -GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMSIVPROC __glewGetActiveUniformsiv; -GLEW_FUN_EXPORT PFNGLGETINTEGERI_VPROC __glewGetIntegeri_v; -GLEW_FUN_EXPORT PFNGLGETUNIFORMBLOCKINDEXPROC __glewGetUniformBlockIndex; -GLEW_FUN_EXPORT PFNGLGETUNIFORMINDICESPROC __glewGetUniformIndices; -GLEW_FUN_EXPORT PFNGLUNIFORMBLOCKBINDINGPROC __glewUniformBlockBinding; - -GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYPROC __glewBindVertexArray; -GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSPROC __glewDeleteVertexArrays; -GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSPROC __glewGenVertexArrays; -GLEW_FUN_EXPORT PFNGLISVERTEXARRAYPROC __glewIsVertexArray; - -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLDVPROC __glewGetVertexAttribLdv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DPROC __glewVertexAttribL1d; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DVPROC __glewVertexAttribL1dv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DPROC __glewVertexAttribL2d; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DVPROC __glewVertexAttribL2dv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DPROC __glewVertexAttribL3d; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DVPROC __glewVertexAttribL3dv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DPROC __glewVertexAttribL4d; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DVPROC __glewVertexAttribL4dv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLPOINTERPROC __glewVertexAttribLPointer; - -GLEW_FUN_EXPORT PFNGLBINDVERTEXBUFFERPROC __glewBindVertexBuffer; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYBINDVERTEXBUFFEREXTPROC __glewVertexArrayBindVertexBufferEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBBINDINGEXTPROC __glewVertexArrayVertexAttribBindingEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBFORMATEXTPROC __glewVertexArrayVertexAttribFormatEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBIFORMATEXTPROC __glewVertexArrayVertexAttribIFormatEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBLFORMATEXTPROC __glewVertexArrayVertexAttribLFormatEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXBINDINGDIVISOREXTPROC __glewVertexArrayVertexBindingDivisorEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBBINDINGPROC __glewVertexAttribBinding; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBFORMATPROC __glewVertexAttribFormat; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIFORMATPROC __glewVertexAttribIFormat; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLFORMATPROC __glewVertexAttribLFormat; -GLEW_FUN_EXPORT PFNGLVERTEXBINDINGDIVISORPROC __glewVertexBindingDivisor; - -GLEW_FUN_EXPORT PFNGLVERTEXBLENDARBPROC __glewVertexBlendARB; -GLEW_FUN_EXPORT PFNGLWEIGHTPOINTERARBPROC __glewWeightPointerARB; -GLEW_FUN_EXPORT PFNGLWEIGHTBVARBPROC __glewWeightbvARB; -GLEW_FUN_EXPORT PFNGLWEIGHTDVARBPROC __glewWeightdvARB; -GLEW_FUN_EXPORT PFNGLWEIGHTFVARBPROC __glewWeightfvARB; -GLEW_FUN_EXPORT PFNGLWEIGHTIVARBPROC __glewWeightivARB; -GLEW_FUN_EXPORT PFNGLWEIGHTSVARBPROC __glewWeightsvARB; -GLEW_FUN_EXPORT PFNGLWEIGHTUBVARBPROC __glewWeightubvARB; -GLEW_FUN_EXPORT PFNGLWEIGHTUIVARBPROC __glewWeightuivARB; -GLEW_FUN_EXPORT PFNGLWEIGHTUSVARBPROC __glewWeightusvARB; - -GLEW_FUN_EXPORT PFNGLBINDBUFFERARBPROC __glewBindBufferARB; -GLEW_FUN_EXPORT PFNGLBUFFERDATAARBPROC __glewBufferDataARB; -GLEW_FUN_EXPORT PFNGLBUFFERSUBDATAARBPROC __glewBufferSubDataARB; -GLEW_FUN_EXPORT PFNGLDELETEBUFFERSARBPROC __glewDeleteBuffersARB; -GLEW_FUN_EXPORT PFNGLGENBUFFERSARBPROC __glewGenBuffersARB; -GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERIVARBPROC __glewGetBufferParameterivARB; -GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVARBPROC __glewGetBufferPointervARB; -GLEW_FUN_EXPORT PFNGLGETBUFFERSUBDATAARBPROC __glewGetBufferSubDataARB; -GLEW_FUN_EXPORT PFNGLISBUFFERARBPROC __glewIsBufferARB; -GLEW_FUN_EXPORT PFNGLMAPBUFFERARBPROC __glewMapBufferARB; -GLEW_FUN_EXPORT PFNGLUNMAPBUFFERARBPROC __glewUnmapBufferARB; - -GLEW_FUN_EXPORT PFNGLBINDPROGRAMARBPROC __glewBindProgramARB; -GLEW_FUN_EXPORT PFNGLDELETEPROGRAMSARBPROC __glewDeleteProgramsARB; -GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBARRAYARBPROC __glewDisableVertexAttribArrayARB; -GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBARRAYARBPROC __glewEnableVertexAttribArrayARB; -GLEW_FUN_EXPORT PFNGLGENPROGRAMSARBPROC __glewGenProgramsARB; -GLEW_FUN_EXPORT PFNGLGETPROGRAMENVPARAMETERDVARBPROC __glewGetProgramEnvParameterdvARB; -GLEW_FUN_EXPORT PFNGLGETPROGRAMENVPARAMETERFVARBPROC __glewGetProgramEnvParameterfvARB; -GLEW_FUN_EXPORT PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC __glewGetProgramLocalParameterdvARB; -GLEW_FUN_EXPORT PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC __glewGetProgramLocalParameterfvARB; -GLEW_FUN_EXPORT PFNGLGETPROGRAMSTRINGARBPROC __glewGetProgramStringARB; -GLEW_FUN_EXPORT PFNGLGETPROGRAMIVARBPROC __glewGetProgramivARB; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVARBPROC __glewGetVertexAttribPointervARB; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVARBPROC __glewGetVertexAttribdvARB; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVARBPROC __glewGetVertexAttribfvARB; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVARBPROC __glewGetVertexAttribivARB; -GLEW_FUN_EXPORT PFNGLISPROGRAMARBPROC __glewIsProgramARB; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4DARBPROC __glewProgramEnvParameter4dARB; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4DVARBPROC __glewProgramEnvParameter4dvARB; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4FARBPROC __glewProgramEnvParameter4fARB; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4FVARBPROC __glewProgramEnvParameter4fvARB; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4DARBPROC __glewProgramLocalParameter4dARB; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4DVARBPROC __glewProgramLocalParameter4dvARB; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4FARBPROC __glewProgramLocalParameter4fARB; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4FVARBPROC __glewProgramLocalParameter4fvARB; -GLEW_FUN_EXPORT PFNGLPROGRAMSTRINGARBPROC __glewProgramStringARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DARBPROC __glewVertexAttrib1dARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVARBPROC __glewVertexAttrib1dvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FARBPROC __glewVertexAttrib1fARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVARBPROC __glewVertexAttrib1fvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SARBPROC __glewVertexAttrib1sARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVARBPROC __glewVertexAttrib1svARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DARBPROC __glewVertexAttrib2dARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVARBPROC __glewVertexAttrib2dvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FARBPROC __glewVertexAttrib2fARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVARBPROC __glewVertexAttrib2fvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SARBPROC __glewVertexAttrib2sARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVARBPROC __glewVertexAttrib2svARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DARBPROC __glewVertexAttrib3dARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVARBPROC __glewVertexAttrib3dvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FARBPROC __glewVertexAttrib3fARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVARBPROC __glewVertexAttrib3fvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SARBPROC __glewVertexAttrib3sARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVARBPROC __glewVertexAttrib3svARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NBVARBPROC __glewVertexAttrib4NbvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NIVARBPROC __glewVertexAttrib4NivARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NSVARBPROC __glewVertexAttrib4NsvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBARBPROC __glewVertexAttrib4NubARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBVARBPROC __glewVertexAttrib4NubvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUIVARBPROC __glewVertexAttrib4NuivARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUSVARBPROC __glewVertexAttrib4NusvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4BVARBPROC __glewVertexAttrib4bvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DARBPROC __glewVertexAttrib4dARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVARBPROC __glewVertexAttrib4dvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FARBPROC __glewVertexAttrib4fARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVARBPROC __glewVertexAttrib4fvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4IVARBPROC __glewVertexAttrib4ivARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SARBPROC __glewVertexAttrib4sARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVARBPROC __glewVertexAttrib4svARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVARBPROC __glewVertexAttrib4ubvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UIVARBPROC __glewVertexAttrib4uivARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4USVARBPROC __glewVertexAttrib4usvARB; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERARBPROC __glewVertexAttribPointerARB; - -GLEW_FUN_EXPORT PFNGLBINDATTRIBLOCATIONARBPROC __glewBindAttribLocationARB; -GLEW_FUN_EXPORT PFNGLGETACTIVEATTRIBARBPROC __glewGetActiveAttribARB; -GLEW_FUN_EXPORT PFNGLGETATTRIBLOCATIONARBPROC __glewGetAttribLocationARB; - -GLEW_FUN_EXPORT PFNGLCOLORP3UIPROC __glewColorP3ui; -GLEW_FUN_EXPORT PFNGLCOLORP3UIVPROC __glewColorP3uiv; -GLEW_FUN_EXPORT PFNGLCOLORP4UIPROC __glewColorP4ui; -GLEW_FUN_EXPORT PFNGLCOLORP4UIVPROC __glewColorP4uiv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP1UIPROC __glewMultiTexCoordP1ui; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP1UIVPROC __glewMultiTexCoordP1uiv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP2UIPROC __glewMultiTexCoordP2ui; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP2UIVPROC __glewMultiTexCoordP2uiv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP3UIPROC __glewMultiTexCoordP3ui; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP3UIVPROC __glewMultiTexCoordP3uiv; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP4UIPROC __glewMultiTexCoordP4ui; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP4UIVPROC __glewMultiTexCoordP4uiv; -GLEW_FUN_EXPORT PFNGLNORMALP3UIPROC __glewNormalP3ui; -GLEW_FUN_EXPORT PFNGLNORMALP3UIVPROC __glewNormalP3uiv; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLORP3UIPROC __glewSecondaryColorP3ui; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLORP3UIVPROC __glewSecondaryColorP3uiv; -GLEW_FUN_EXPORT PFNGLTEXCOORDP1UIPROC __glewTexCoordP1ui; -GLEW_FUN_EXPORT PFNGLTEXCOORDP1UIVPROC __glewTexCoordP1uiv; -GLEW_FUN_EXPORT PFNGLTEXCOORDP2UIPROC __glewTexCoordP2ui; -GLEW_FUN_EXPORT PFNGLTEXCOORDP2UIVPROC __glewTexCoordP2uiv; -GLEW_FUN_EXPORT PFNGLTEXCOORDP3UIPROC __glewTexCoordP3ui; -GLEW_FUN_EXPORT PFNGLTEXCOORDP3UIVPROC __glewTexCoordP3uiv; -GLEW_FUN_EXPORT PFNGLTEXCOORDP4UIPROC __glewTexCoordP4ui; -GLEW_FUN_EXPORT PFNGLTEXCOORDP4UIVPROC __glewTexCoordP4uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP1UIPROC __glewVertexAttribP1ui; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP1UIVPROC __glewVertexAttribP1uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP2UIPROC __glewVertexAttribP2ui; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP2UIVPROC __glewVertexAttribP2uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP3UIPROC __glewVertexAttribP3ui; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP3UIVPROC __glewVertexAttribP3uiv; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP4UIPROC __glewVertexAttribP4ui; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP4UIVPROC __glewVertexAttribP4uiv; -GLEW_FUN_EXPORT PFNGLVERTEXP2UIPROC __glewVertexP2ui; -GLEW_FUN_EXPORT PFNGLVERTEXP2UIVPROC __glewVertexP2uiv; -GLEW_FUN_EXPORT PFNGLVERTEXP3UIPROC __glewVertexP3ui; -GLEW_FUN_EXPORT PFNGLVERTEXP3UIVPROC __glewVertexP3uiv; -GLEW_FUN_EXPORT PFNGLVERTEXP4UIPROC __glewVertexP4ui; -GLEW_FUN_EXPORT PFNGLVERTEXP4UIVPROC __glewVertexP4uiv; - -GLEW_FUN_EXPORT PFNGLDEPTHRANGEARRAYVPROC __glewDepthRangeArrayv; -GLEW_FUN_EXPORT PFNGLDEPTHRANGEINDEXEDPROC __glewDepthRangeIndexed; -GLEW_FUN_EXPORT PFNGLGETDOUBLEI_VPROC __glewGetDoublei_v; -GLEW_FUN_EXPORT PFNGLGETFLOATI_VPROC __glewGetFloati_v; -GLEW_FUN_EXPORT PFNGLSCISSORARRAYVPROC __glewScissorArrayv; -GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDPROC __glewScissorIndexed; -GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDVPROC __glewScissorIndexedv; -GLEW_FUN_EXPORT PFNGLVIEWPORTARRAYVPROC __glewViewportArrayv; -GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFPROC __glewViewportIndexedf; -GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFVPROC __glewViewportIndexedfv; - -GLEW_FUN_EXPORT PFNGLWINDOWPOS2DARBPROC __glewWindowPos2dARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVARBPROC __glewWindowPos2dvARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2FARBPROC __glewWindowPos2fARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVARBPROC __glewWindowPos2fvARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2IARBPROC __glewWindowPos2iARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVARBPROC __glewWindowPos2ivARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2SARBPROC __glewWindowPos2sARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVARBPROC __glewWindowPos2svARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3DARBPROC __glewWindowPos3dARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVARBPROC __glewWindowPos3dvARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3FARBPROC __glewWindowPos3fARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVARBPROC __glewWindowPos3fvARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3IARBPROC __glewWindowPos3iARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVARBPROC __glewWindowPos3ivARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3SARBPROC __glewWindowPos3sARB; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVARBPROC __glewWindowPos3svARB; - -GLEW_FUN_EXPORT PFNGLDRAWBUFFERSATIPROC __glewDrawBuffersATI; - -GLEW_FUN_EXPORT PFNGLDRAWELEMENTARRAYATIPROC __glewDrawElementArrayATI; -GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTARRAYATIPROC __glewDrawRangeElementArrayATI; -GLEW_FUN_EXPORT PFNGLELEMENTPOINTERATIPROC __glewElementPointerATI; - -GLEW_FUN_EXPORT PFNGLGETTEXBUMPPARAMETERFVATIPROC __glewGetTexBumpParameterfvATI; -GLEW_FUN_EXPORT PFNGLGETTEXBUMPPARAMETERIVATIPROC __glewGetTexBumpParameterivATI; -GLEW_FUN_EXPORT PFNGLTEXBUMPPARAMETERFVATIPROC __glewTexBumpParameterfvATI; -GLEW_FUN_EXPORT PFNGLTEXBUMPPARAMETERIVATIPROC __glewTexBumpParameterivATI; - -GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP1ATIPROC __glewAlphaFragmentOp1ATI; -GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP2ATIPROC __glewAlphaFragmentOp2ATI; -GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP3ATIPROC __glewAlphaFragmentOp3ATI; -GLEW_FUN_EXPORT PFNGLBEGINFRAGMENTSHADERATIPROC __glewBeginFragmentShaderATI; -GLEW_FUN_EXPORT PFNGLBINDFRAGMENTSHADERATIPROC __glewBindFragmentShaderATI; -GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP1ATIPROC __glewColorFragmentOp1ATI; -GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP2ATIPROC __glewColorFragmentOp2ATI; -GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP3ATIPROC __glewColorFragmentOp3ATI; -GLEW_FUN_EXPORT PFNGLDELETEFRAGMENTSHADERATIPROC __glewDeleteFragmentShaderATI; -GLEW_FUN_EXPORT PFNGLENDFRAGMENTSHADERATIPROC __glewEndFragmentShaderATI; -GLEW_FUN_EXPORT PFNGLGENFRAGMENTSHADERSATIPROC __glewGenFragmentShadersATI; -GLEW_FUN_EXPORT PFNGLPASSTEXCOORDATIPROC __glewPassTexCoordATI; -GLEW_FUN_EXPORT PFNGLSAMPLEMAPATIPROC __glewSampleMapATI; -GLEW_FUN_EXPORT PFNGLSETFRAGMENTSHADERCONSTANTATIPROC __glewSetFragmentShaderConstantATI; - -GLEW_FUN_EXPORT PFNGLMAPOBJECTBUFFERATIPROC __glewMapObjectBufferATI; -GLEW_FUN_EXPORT PFNGLUNMAPOBJECTBUFFERATIPROC __glewUnmapObjectBufferATI; - -GLEW_FUN_EXPORT PFNGLPNTRIANGLESFATIPROC __glewPNTrianglesfATI; -GLEW_FUN_EXPORT PFNGLPNTRIANGLESIATIPROC __glewPNTrianglesiATI; - -GLEW_FUN_EXPORT PFNGLSTENCILFUNCSEPARATEATIPROC __glewStencilFuncSeparateATI; -GLEW_FUN_EXPORT PFNGLSTENCILOPSEPARATEATIPROC __glewStencilOpSeparateATI; - -GLEW_FUN_EXPORT PFNGLARRAYOBJECTATIPROC __glewArrayObjectATI; -GLEW_FUN_EXPORT PFNGLFREEOBJECTBUFFERATIPROC __glewFreeObjectBufferATI; -GLEW_FUN_EXPORT PFNGLGETARRAYOBJECTFVATIPROC __glewGetArrayObjectfvATI; -GLEW_FUN_EXPORT PFNGLGETARRAYOBJECTIVATIPROC __glewGetArrayObjectivATI; -GLEW_FUN_EXPORT PFNGLGETOBJECTBUFFERFVATIPROC __glewGetObjectBufferfvATI; -GLEW_FUN_EXPORT PFNGLGETOBJECTBUFFERIVATIPROC __glewGetObjectBufferivATI; -GLEW_FUN_EXPORT PFNGLGETVARIANTARRAYOBJECTFVATIPROC __glewGetVariantArrayObjectfvATI; -GLEW_FUN_EXPORT PFNGLGETVARIANTARRAYOBJECTIVATIPROC __glewGetVariantArrayObjectivATI; -GLEW_FUN_EXPORT PFNGLISOBJECTBUFFERATIPROC __glewIsObjectBufferATI; -GLEW_FUN_EXPORT PFNGLNEWOBJECTBUFFERATIPROC __glewNewObjectBufferATI; -GLEW_FUN_EXPORT PFNGLUPDATEOBJECTBUFFERATIPROC __glewUpdateObjectBufferATI; -GLEW_FUN_EXPORT PFNGLVARIANTARRAYOBJECTATIPROC __glewVariantArrayObjectATI; - -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC __glewGetVertexAttribArrayObjectfvATI; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC __glewGetVertexAttribArrayObjectivATI; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBARRAYOBJECTATIPROC __glewVertexAttribArrayObjectATI; - -GLEW_FUN_EXPORT PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC __glewClientActiveVertexStreamATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3BATIPROC __glewNormalStream3bATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3BVATIPROC __glewNormalStream3bvATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3DATIPROC __glewNormalStream3dATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3DVATIPROC __glewNormalStream3dvATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3FATIPROC __glewNormalStream3fATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3FVATIPROC __glewNormalStream3fvATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3IATIPROC __glewNormalStream3iATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3IVATIPROC __glewNormalStream3ivATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3SATIPROC __glewNormalStream3sATI; -GLEW_FUN_EXPORT PFNGLNORMALSTREAM3SVATIPROC __glewNormalStream3svATI; -GLEW_FUN_EXPORT PFNGLVERTEXBLENDENVFATIPROC __glewVertexBlendEnvfATI; -GLEW_FUN_EXPORT PFNGLVERTEXBLENDENVIATIPROC __glewVertexBlendEnviATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1DATIPROC __glewVertexStream1dATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1DVATIPROC __glewVertexStream1dvATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1FATIPROC __glewVertexStream1fATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1FVATIPROC __glewVertexStream1fvATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1IATIPROC __glewVertexStream1iATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1IVATIPROC __glewVertexStream1ivATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1SATIPROC __glewVertexStream1sATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM1SVATIPROC __glewVertexStream1svATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2DATIPROC __glewVertexStream2dATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2DVATIPROC __glewVertexStream2dvATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2FATIPROC __glewVertexStream2fATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2FVATIPROC __glewVertexStream2fvATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2IATIPROC __glewVertexStream2iATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2IVATIPROC __glewVertexStream2ivATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2SATIPROC __glewVertexStream2sATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2SVATIPROC __glewVertexStream2svATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3DATIPROC __glewVertexStream3dATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3DVATIPROC __glewVertexStream3dvATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3FATIPROC __glewVertexStream3fATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3FVATIPROC __glewVertexStream3fvATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3IATIPROC __glewVertexStream3iATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3IVATIPROC __glewVertexStream3ivATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3SATIPROC __glewVertexStream3sATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3SVATIPROC __glewVertexStream3svATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4DATIPROC __glewVertexStream4dATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4DVATIPROC __glewVertexStream4dvATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4FATIPROC __glewVertexStream4fATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4FVATIPROC __glewVertexStream4fvATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4IATIPROC __glewVertexStream4iATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4IVATIPROC __glewVertexStream4ivATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4SATIPROC __glewVertexStream4sATI; -GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4SVATIPROC __glewVertexStream4svATI; - -GLEW_FUN_EXPORT PFNGLEGLIMAGETARGETTEXSTORAGEEXTPROC __glewEGLImageTargetTexStorageEXT; -GLEW_FUN_EXPORT PFNGLEGLIMAGETARGETTEXTURESTORAGEEXTPROC __glewEGLImageTargetTextureStorageEXT; - -GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEEXTPROC __glewDrawArraysInstancedBaseInstanceEXT; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEEXTPROC __glewDrawElementsInstancedBaseInstanceEXT; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEEXTPROC __glewDrawElementsInstancedBaseVertexBaseInstanceEXT; - -GLEW_FUN_EXPORT PFNGLGETUNIFORMBUFFERSIZEEXTPROC __glewGetUniformBufferSizeEXT; -GLEW_FUN_EXPORT PFNGLGETUNIFORMOFFSETEXTPROC __glewGetUniformOffsetEXT; -GLEW_FUN_EXPORT PFNGLUNIFORMBUFFEREXTPROC __glewUniformBufferEXT; - -GLEW_FUN_EXPORT PFNGLBLENDCOLOREXTPROC __glewBlendColorEXT; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEEXTPROC __glewBlendEquationSeparateEXT; - -GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONINDEXEDEXTPROC __glewBindFragDataLocationIndexedEXT; -GLEW_FUN_EXPORT PFNGLGETFRAGDATAINDEXEXTPROC __glewGetFragDataIndexEXT; -GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCELOCATIONINDEXEXTPROC __glewGetProgramResourceLocationIndexEXT; - -GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEEXTPROC __glewBlendFuncSeparateEXT; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONEXTPROC __glewBlendEquationEXT; - -GLEW_FUN_EXPORT PFNGLBUFFERSTORAGEEXTPROC __glewBufferStorageEXT; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSTORAGEEXTPROC __glewNamedBufferStorageEXT; - -GLEW_FUN_EXPORT PFNGLCLEARTEXIMAGEEXTPROC __glewClearTexImageEXT; -GLEW_FUN_EXPORT PFNGLCLEARTEXSUBIMAGEEXTPROC __glewClearTexSubImageEXT; - -GLEW_FUN_EXPORT PFNGLCLIPCONTROLEXTPROC __glewClipControlEXT; - -GLEW_FUN_EXPORT PFNGLCOLORSUBTABLEEXTPROC __glewColorSubTableEXT; -GLEW_FUN_EXPORT PFNGLCOPYCOLORSUBTABLEEXTPROC __glewCopyColorSubTableEXT; - -GLEW_FUN_EXPORT PFNGLLOCKARRAYSEXTPROC __glewLockArraysEXT; -GLEW_FUN_EXPORT PFNGLUNLOCKARRAYSEXTPROC __glewUnlockArraysEXT; - -GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER1DEXTPROC __glewConvolutionFilter1DEXT; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER2DEXTPROC __glewConvolutionFilter2DEXT; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFEXTPROC __glewConvolutionParameterfEXT; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFVEXTPROC __glewConvolutionParameterfvEXT; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIEXTPROC __glewConvolutionParameteriEXT; -GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIVEXTPROC __glewConvolutionParameterivEXT; -GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC __glewCopyConvolutionFilter1DEXT; -GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC __glewCopyConvolutionFilter2DEXT; -GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONFILTEREXTPROC __glewGetConvolutionFilterEXT; -GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC __glewGetConvolutionParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC __glewGetConvolutionParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETSEPARABLEFILTEREXTPROC __glewGetSeparableFilterEXT; -GLEW_FUN_EXPORT PFNGLSEPARABLEFILTER2DEXTPROC __glewSeparableFilter2DEXT; - -GLEW_FUN_EXPORT PFNGLBINORMALPOINTEREXTPROC __glewBinormalPointerEXT; -GLEW_FUN_EXPORT PFNGLTANGENTPOINTEREXTPROC __glewTangentPointerEXT; - -GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATAEXTPROC __glewCopyImageSubDataEXT; - -GLEW_FUN_EXPORT PFNGLCOPYTEXIMAGE1DEXTPROC __glewCopyTexImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXIMAGE2DEXTPROC __glewCopyTexImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE1DEXTPROC __glewCopyTexSubImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE2DEXTPROC __glewCopyTexSubImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DEXTPROC __glewCopyTexSubImage3DEXT; - -GLEW_FUN_EXPORT PFNGLCULLPARAMETERDVEXTPROC __glewCullParameterdvEXT; -GLEW_FUN_EXPORT PFNGLCULLPARAMETERFVEXTPROC __glewCullParameterfvEXT; - -GLEW_FUN_EXPORT PFNGLGETOBJECTLABELEXTPROC __glewGetObjectLabelEXT; -GLEW_FUN_EXPORT PFNGLLABELOBJECTEXTPROC __glewLabelObjectEXT; - -GLEW_FUN_EXPORT PFNGLINSERTEVENTMARKEREXTPROC __glewInsertEventMarkerEXT; -GLEW_FUN_EXPORT PFNGLPOPGROUPMARKEREXTPROC __glewPopGroupMarkerEXT; -GLEW_FUN_EXPORT PFNGLPUSHGROUPMARKEREXTPROC __glewPushGroupMarkerEXT; - -GLEW_FUN_EXPORT PFNGLDEPTHBOUNDSEXTPROC __glewDepthBoundsEXT; - -GLEW_FUN_EXPORT PFNGLBINDMULTITEXTUREEXTPROC __glewBindMultiTextureEXT; -GLEW_FUN_EXPORT PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC __glewCheckNamedFramebufferStatusEXT; -GLEW_FUN_EXPORT PFNGLCLIENTATTRIBDEFAULTEXTPROC __glewClientAttribDefaultEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC __glewCompressedMultiTexImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC __glewCompressedMultiTexImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC __glewCompressedMultiTexImage3DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC __glewCompressedMultiTexSubImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC __glewCompressedMultiTexSubImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC __glewCompressedMultiTexSubImage3DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC __glewCompressedTextureImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC __glewCompressedTextureImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC __glewCompressedTextureImage3DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC __glewCompressedTextureSubImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC __glewCompressedTextureSubImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC __glewCompressedTextureSubImage3DEXT; -GLEW_FUN_EXPORT PFNGLCOPYMULTITEXIMAGE1DEXTPROC __glewCopyMultiTexImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOPYMULTITEXIMAGE2DEXTPROC __glewCopyMultiTexImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC __glewCopyMultiTexSubImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC __glewCopyMultiTexSubImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC __glewCopyMultiTexSubImage3DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXTUREIMAGE1DEXTPROC __glewCopyTextureImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXTUREIMAGE2DEXTPROC __glewCopyTextureImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC __glewCopyTextureSubImage1DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC __glewCopyTextureSubImage2DEXT; -GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC __glewCopyTextureSubImage3DEXT; -GLEW_FUN_EXPORT PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC __glewDisableClientStateIndexedEXT; -GLEW_FUN_EXPORT PFNGLDISABLECLIENTSTATEIEXTPROC __glewDisableClientStateiEXT; -GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC __glewDisableVertexArrayAttribEXT; -GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYEXTPROC __glewDisableVertexArrayEXT; -GLEW_FUN_EXPORT PFNGLENABLECLIENTSTATEINDEXEDEXTPROC __glewEnableClientStateIndexedEXT; -GLEW_FUN_EXPORT PFNGLENABLECLIENTSTATEIEXTPROC __glewEnableClientStateiEXT; -GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYATTRIBEXTPROC __glewEnableVertexArrayAttribEXT; -GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYEXTPROC __glewEnableVertexArrayEXT; -GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC __glewFlushMappedNamedBufferRangeEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC __glewFramebufferDrawBufferEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC __glewFramebufferDrawBuffersEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERREADBUFFEREXTPROC __glewFramebufferReadBufferEXT; -GLEW_FUN_EXPORT PFNGLGENERATEMULTITEXMIPMAPEXTPROC __glewGenerateMultiTexMipmapEXT; -GLEW_FUN_EXPORT PFNGLGENERATETEXTUREMIPMAPEXTPROC __glewGenerateTextureMipmapEXT; -GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC __glewGetCompressedMultiTexImageEXT; -GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC __glewGetCompressedTextureImageEXT; -GLEW_FUN_EXPORT PFNGLGETDOUBLEINDEXEDVEXTPROC __glewGetDoubleIndexedvEXT; -GLEW_FUN_EXPORT PFNGLGETDOUBLEI_VEXTPROC __glewGetDoublei_vEXT; -GLEW_FUN_EXPORT PFNGLGETFLOATINDEXEDVEXTPROC __glewGetFloatIndexedvEXT; -GLEW_FUN_EXPORT PFNGLGETFLOATI_VEXTPROC __glewGetFloati_vEXT; -GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC __glewGetFramebufferParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXENVFVEXTPROC __glewGetMultiTexEnvfvEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXENVIVEXTPROC __glewGetMultiTexEnvivEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXGENDVEXTPROC __glewGetMultiTexGendvEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXGENFVEXTPROC __glewGetMultiTexGenfvEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXGENIVEXTPROC __glewGetMultiTexGenivEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXIMAGEEXTPROC __glewGetMultiTexImageEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC __glewGetMultiTexLevelParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC __glewGetMultiTexLevelParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIIVEXTPROC __glewGetMultiTexParameterIivEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIUIVEXTPROC __glewGetMultiTexParameterIuivEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERFVEXTPROC __glewGetMultiTexParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIVEXTPROC __glewGetMultiTexParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC __glewGetNamedBufferParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPOINTERVEXTPROC __glewGetNamedBufferPointervEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERSUBDATAEXTPROC __glewGetNamedBufferSubDataEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetNamedFramebufferAttachmentParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC __glewGetNamedProgramLocalParameterIivEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC __glewGetNamedProgramLocalParameterIuivEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC __glewGetNamedProgramLocalParameterdvEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC __glewGetNamedProgramLocalParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMSTRINGEXTPROC __glewGetNamedProgramStringEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMIVEXTPROC __glewGetNamedProgramivEXT; -GLEW_FUN_EXPORT PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC __glewGetNamedRenderbufferParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETPOINTERINDEXEDVEXTPROC __glewGetPointerIndexedvEXT; -GLEW_FUN_EXPORT PFNGLGETPOINTERI_VEXTPROC __glewGetPointeri_vEXT; -GLEW_FUN_EXPORT PFNGLGETTEXTUREIMAGEEXTPROC __glewGetTextureImageEXT; -GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC __glewGetTextureLevelParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC __glewGetTextureLevelParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIIVEXTPROC __glewGetTextureParameterIivEXT; -GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIUIVEXTPROC __glewGetTextureParameterIuivEXT; -GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERFVEXTPROC __glewGetTextureParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIVEXTPROC __glewGetTextureParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC __glewGetVertexArrayIntegeri_vEXT; -GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINTEGERVEXTPROC __glewGetVertexArrayIntegervEXT; -GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC __glewGetVertexArrayPointeri_vEXT; -GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYPOINTERVEXTPROC __glewGetVertexArrayPointervEXT; -GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFEREXTPROC __glewMapNamedBufferEXT; -GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFERRANGEEXTPROC __glewMapNamedBufferRangeEXT; -GLEW_FUN_EXPORT PFNGLMATRIXFRUSTUMEXTPROC __glewMatrixFrustumEXT; -GLEW_FUN_EXPORT PFNGLMATRIXLOADIDENTITYEXTPROC __glewMatrixLoadIdentityEXT; -GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSEDEXTPROC __glewMatrixLoadTransposedEXT; -GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSEFEXTPROC __glewMatrixLoadTransposefEXT; -GLEW_FUN_EXPORT PFNGLMATRIXLOADDEXTPROC __glewMatrixLoaddEXT; -GLEW_FUN_EXPORT PFNGLMATRIXLOADFEXTPROC __glewMatrixLoadfEXT; -GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSEDEXTPROC __glewMatrixMultTransposedEXT; -GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSEFEXTPROC __glewMatrixMultTransposefEXT; -GLEW_FUN_EXPORT PFNGLMATRIXMULTDEXTPROC __glewMatrixMultdEXT; -GLEW_FUN_EXPORT PFNGLMATRIXMULTFEXTPROC __glewMatrixMultfEXT; -GLEW_FUN_EXPORT PFNGLMATRIXORTHOEXTPROC __glewMatrixOrthoEXT; -GLEW_FUN_EXPORT PFNGLMATRIXPOPEXTPROC __glewMatrixPopEXT; -GLEW_FUN_EXPORT PFNGLMATRIXPUSHEXTPROC __glewMatrixPushEXT; -GLEW_FUN_EXPORT PFNGLMATRIXROTATEDEXTPROC __glewMatrixRotatedEXT; -GLEW_FUN_EXPORT PFNGLMATRIXROTATEFEXTPROC __glewMatrixRotatefEXT; -GLEW_FUN_EXPORT PFNGLMATRIXSCALEDEXTPROC __glewMatrixScaledEXT; -GLEW_FUN_EXPORT PFNGLMATRIXSCALEFEXTPROC __glewMatrixScalefEXT; -GLEW_FUN_EXPORT PFNGLMATRIXTRANSLATEDEXTPROC __glewMatrixTranslatedEXT; -GLEW_FUN_EXPORT PFNGLMATRIXTRANSLATEFEXTPROC __glewMatrixTranslatefEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXBUFFEREXTPROC __glewMultiTexBufferEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORDPOINTEREXTPROC __glewMultiTexCoordPointerEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXENVFEXTPROC __glewMultiTexEnvfEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXENVFVEXTPROC __glewMultiTexEnvfvEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXENVIEXTPROC __glewMultiTexEnviEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXENVIVEXTPROC __glewMultiTexEnvivEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXGENDEXTPROC __glewMultiTexGendEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXGENDVEXTPROC __glewMultiTexGendvEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXGENFEXTPROC __glewMultiTexGenfEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXGENFVEXTPROC __glewMultiTexGenfvEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXGENIEXTPROC __glewMultiTexGeniEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXGENIVEXTPROC __glewMultiTexGenivEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE1DEXTPROC __glewMultiTexImage1DEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE2DEXTPROC __glewMultiTexImage2DEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE3DEXTPROC __glewMultiTexImage3DEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIIVEXTPROC __glewMultiTexParameterIivEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIUIVEXTPROC __glewMultiTexParameterIuivEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERFEXTPROC __glewMultiTexParameterfEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERFVEXTPROC __glewMultiTexParameterfvEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIEXTPROC __glewMultiTexParameteriEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIVEXTPROC __glewMultiTexParameterivEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXRENDERBUFFEREXTPROC __glewMultiTexRenderbufferEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE1DEXTPROC __glewMultiTexSubImage1DEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE2DEXTPROC __glewMultiTexSubImage2DEXT; -GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE3DEXTPROC __glewMultiTexSubImage3DEXT; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERDATAEXTPROC __glewNamedBufferDataEXT; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSUBDATAEXTPROC __glewNamedBufferSubDataEXT; -GLEW_FUN_EXPORT PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC __glewNamedCopyBufferSubDataEXT; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC __glewNamedFramebufferRenderbufferEXT; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC __glewNamedFramebufferTexture1DEXT; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC __glewNamedFramebufferTexture2DEXT; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC __glewNamedFramebufferTexture3DEXT; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC __glewNamedFramebufferTextureEXT; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC __glewNamedFramebufferTextureFaceEXT; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC __glewNamedFramebufferTextureLayerEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC __glewNamedProgramLocalParameter4dEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC __glewNamedProgramLocalParameter4dvEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC __glewNamedProgramLocalParameter4fEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC __glewNamedProgramLocalParameter4fvEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC __glewNamedProgramLocalParameterI4iEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC __glewNamedProgramLocalParameterI4ivEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC __glewNamedProgramLocalParameterI4uiEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC __glewNamedProgramLocalParameterI4uivEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC __glewNamedProgramLocalParameters4fvEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC __glewNamedProgramLocalParametersI4ivEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC __glewNamedProgramLocalParametersI4uivEXT; -GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMSTRINGEXTPROC __glewNamedProgramStringEXT; -GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC __glewNamedRenderbufferStorageEXT; -GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC __glewNamedRenderbufferStorageMultisampleCoverageEXT; -GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewNamedRenderbufferStorageMultisampleEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FEXTPROC __glewProgramUniform1fEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FVEXTPROC __glewProgramUniform1fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IEXTPROC __glewProgramUniform1iEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IVEXTPROC __glewProgramUniform1ivEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIEXTPROC __glewProgramUniform1uiEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIVEXTPROC __glewProgramUniform1uivEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FEXTPROC __glewProgramUniform2fEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FVEXTPROC __glewProgramUniform2fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IEXTPROC __glewProgramUniform2iEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IVEXTPROC __glewProgramUniform2ivEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIEXTPROC __glewProgramUniform2uiEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIVEXTPROC __glewProgramUniform2uivEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FEXTPROC __glewProgramUniform3fEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FVEXTPROC __glewProgramUniform3fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IEXTPROC __glewProgramUniform3iEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IVEXTPROC __glewProgramUniform3ivEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIEXTPROC __glewProgramUniform3uiEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIVEXTPROC __glewProgramUniform3uivEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FEXTPROC __glewProgramUniform4fEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FVEXTPROC __glewProgramUniform4fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IEXTPROC __glewProgramUniform4iEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IVEXTPROC __glewProgramUniform4ivEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIEXTPROC __glewProgramUniform4uiEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIVEXTPROC __glewProgramUniform4uivEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC __glewProgramUniformMatrix2fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC __glewProgramUniformMatrix2x3fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC __glewProgramUniformMatrix2x4fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC __glewProgramUniformMatrix3fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC __glewProgramUniformMatrix3x2fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC __glewProgramUniformMatrix3x4fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC __glewProgramUniformMatrix4fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC __glewProgramUniformMatrix4x2fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC __glewProgramUniformMatrix4x3fvEXT; -GLEW_FUN_EXPORT PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC __glewPushClientAttribDefaultEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREBUFFEREXTPROC __glewTextureBufferEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE1DEXTPROC __glewTextureImage1DEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DEXTPROC __glewTextureImage2DEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DEXTPROC __glewTextureImage3DEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIIVEXTPROC __glewTextureParameterIivEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIUIVEXTPROC __glewTextureParameterIuivEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFEXTPROC __glewTextureParameterfEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFVEXTPROC __glewTextureParameterfvEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIEXTPROC __glewTextureParameteriEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIVEXTPROC __glewTextureParameterivEXT; -GLEW_FUN_EXPORT PFNGLTEXTURERENDERBUFFEREXTPROC __glewTextureRenderbufferEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE1DEXTPROC __glewTextureSubImage1DEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE2DEXTPROC __glewTextureSubImage2DEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE3DEXTPROC __glewTextureSubImage3DEXT; -GLEW_FUN_EXPORT PFNGLUNMAPNAMEDBUFFEREXTPROC __glewUnmapNamedBufferEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYCOLOROFFSETEXTPROC __glewVertexArrayColorOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC __glewVertexArrayEdgeFlagOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC __glewVertexArrayFogCoordOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYINDEXOFFSETEXTPROC __glewVertexArrayIndexOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC __glewVertexArrayMultiTexCoordOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYNORMALOFFSETEXTPROC __glewVertexArrayNormalOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC __glewVertexArraySecondaryColorOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC __glewVertexArrayTexCoordOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBDIVISOREXTPROC __glewVertexArrayVertexAttribDivisorEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC __glewVertexArrayVertexAttribIOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC __glewVertexArrayVertexAttribOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC __glewVertexArrayVertexOffsetEXT; - -GLEW_FUN_EXPORT PFNGLDISCARDFRAMEBUFFEREXTPROC __glewDiscardFramebufferEXT; - -GLEW_FUN_EXPORT PFNGLBEGINQUERYEXTPROC __glewBeginQueryEXT; -GLEW_FUN_EXPORT PFNGLDELETEQUERIESEXTPROC __glewDeleteQueriesEXT; -GLEW_FUN_EXPORT PFNGLENDQUERYEXTPROC __glewEndQueryEXT; -GLEW_FUN_EXPORT PFNGLGENQUERIESEXTPROC __glewGenQueriesEXT; -GLEW_FUN_EXPORT PFNGLGETINTEGER64VEXTPROC __glewGetInteger64vEXT; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVEXTPROC __glewGetQueryObjectivEXT; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVEXTPROC __glewGetQueryObjectuivEXT; -GLEW_FUN_EXPORT PFNGLGETQUERYIVEXTPROC __glewGetQueryivEXT; -GLEW_FUN_EXPORT PFNGLISQUERYEXTPROC __glewIsQueryEXT; -GLEW_FUN_EXPORT PFNGLQUERYCOUNTEREXTPROC __glewQueryCounterEXT; - -GLEW_FUN_EXPORT PFNGLDRAWBUFFERSEXTPROC __glewDrawBuffersEXT; - -GLEW_FUN_EXPORT PFNGLCOLORMASKINDEXEDEXTPROC __glewColorMaskIndexedEXT; -GLEW_FUN_EXPORT PFNGLDISABLEINDEXEDEXTPROC __glewDisableIndexedEXT; -GLEW_FUN_EXPORT PFNGLENABLEINDEXEDEXTPROC __glewEnableIndexedEXT; -GLEW_FUN_EXPORT PFNGLGETBOOLEANINDEXEDVEXTPROC __glewGetBooleanIndexedvEXT; -GLEW_FUN_EXPORT PFNGLGETINTEGERINDEXEDVEXTPROC __glewGetIntegerIndexedvEXT; -GLEW_FUN_EXPORT PFNGLISENABLEDINDEXEDEXTPROC __glewIsEnabledIndexedEXT; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIEXTPROC __glewBlendEquationSeparateiEXT; -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIEXTPROC __glewBlendEquationiEXT; -GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIEXTPROC __glewBlendFuncSeparateiEXT; -GLEW_FUN_EXPORT PFNGLBLENDFUNCIEXTPROC __glewBlendFunciEXT; -GLEW_FUN_EXPORT PFNGLCOLORMASKIEXTPROC __glewColorMaskiEXT; -GLEW_FUN_EXPORT PFNGLDISABLEIEXTPROC __glewDisableiEXT; -GLEW_FUN_EXPORT PFNGLENABLEIEXTPROC __glewEnableiEXT; -GLEW_FUN_EXPORT PFNGLISENABLEDIEXTPROC __glewIsEnablediEXT; - -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSBASEVERTEXEXTPROC __glewDrawElementsBaseVertexEXT; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXEXTPROC __glewDrawElementsInstancedBaseVertexEXT; -GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSBASEVERTEXEXTPROC __glewDrawRangeElementsBaseVertexEXT; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSBASEVERTEXEXTPROC __glewMultiDrawElementsBaseVertexEXT; - -GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDEXTPROC __glewDrawArraysInstancedEXT; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDEXTPROC __glewDrawElementsInstancedEXT; - -GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSEXTPROC __glewDrawRangeElementsEXT; - -GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKEXTPROC __glewDrawTransformFeedbackEXT; -GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDEXTPROC __glewDrawTransformFeedbackInstancedEXT; - -GLEW_FUN_EXPORT PFNGLBUFFERSTORAGEEXTERNALEXTPROC __glewBufferStorageExternalEXT; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSTORAGEEXTERNALEXTPROC __glewNamedBufferStorageExternalEXT; - -GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTEREXTPROC __glewFogCoordPointerEXT; -GLEW_FUN_EXPORT PFNGLFOGCOORDDEXTPROC __glewFogCoorddEXT; -GLEW_FUN_EXPORT PFNGLFOGCOORDDVEXTPROC __glewFogCoorddvEXT; -GLEW_FUN_EXPORT PFNGLFOGCOORDFEXTPROC __glewFogCoordfEXT; -GLEW_FUN_EXPORT PFNGLFOGCOORDFVEXTPROC __glewFogCoordfvEXT; - -GLEW_FUN_EXPORT PFNGLFRAGMENTCOLORMATERIALEXTPROC __glewFragmentColorMaterialEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFEXTPROC __glewFragmentLightModelfEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFVEXTPROC __glewFragmentLightModelfvEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIEXTPROC __glewFragmentLightModeliEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIVEXTPROC __glewFragmentLightModelivEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFEXTPROC __glewFragmentLightfEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFVEXTPROC __glewFragmentLightfvEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIEXTPROC __glewFragmentLightiEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIVEXTPROC __glewFragmentLightivEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFEXTPROC __glewFragmentMaterialfEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFVEXTPROC __glewFragmentMaterialfvEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIEXTPROC __glewFragmentMaterialiEXT; -GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIVEXTPROC __glewFragmentMaterialivEXT; -GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTFVEXTPROC __glewGetFragmentLightfvEXT; -GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTIVEXTPROC __glewGetFragmentLightivEXT; -GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALFVEXTPROC __glewGetFragmentMaterialfvEXT; -GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALIVEXTPROC __glewGetFragmentMaterialivEXT; -GLEW_FUN_EXPORT PFNGLLIGHTENVIEXTPROC __glewLightEnviEXT; - -GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFEREXTPROC __glewBlitFramebufferEXT; - -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewRenderbufferStorageMultisampleEXT; - -GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFEREXTPROC __glewBindFramebufferEXT; -GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFEREXTPROC __glewBindRenderbufferEXT; -GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC __glewCheckFramebufferStatusEXT; -GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSEXTPROC __glewDeleteFramebuffersEXT; -GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSEXTPROC __glewDeleteRenderbuffersEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC __glewFramebufferRenderbufferEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE1DEXTPROC __glewFramebufferTexture1DEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DEXTPROC __glewFramebufferTexture2DEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DEXTPROC __glewFramebufferTexture3DEXT; -GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSEXTPROC __glewGenFramebuffersEXT; -GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSEXTPROC __glewGenRenderbuffersEXT; -GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPEXTPROC __glewGenerateMipmapEXT; -GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetFramebufferAttachmentParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC __glewGetRenderbufferParameterivEXT; -GLEW_FUN_EXPORT PFNGLISFRAMEBUFFEREXTPROC __glewIsFramebufferEXT; -GLEW_FUN_EXPORT PFNGLISRENDERBUFFEREXTPROC __glewIsRenderbufferEXT; -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEEXTPROC __glewRenderbufferStorageEXT; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREEXTPROC __glewFramebufferTextureEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC __glewFramebufferTextureFaceEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIEXTPROC __glewProgramParameteriEXT; - -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERS4FVEXTPROC __glewProgramEnvParameters4fvEXT; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC __glewProgramLocalParameters4fvEXT; - -GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONEXTPROC __glewBindFragDataLocationEXT; -GLEW_FUN_EXPORT PFNGLGETFRAGDATALOCATIONEXTPROC __glewGetFragDataLocationEXT; -GLEW_FUN_EXPORT PFNGLGETUNIFORMUIVEXTPROC __glewGetUniformuivEXT; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIIVEXTPROC __glewGetVertexAttribIivEXT; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIUIVEXTPROC __glewGetVertexAttribIuivEXT; -GLEW_FUN_EXPORT PFNGLUNIFORM1UIEXTPROC __glewUniform1uiEXT; -GLEW_FUN_EXPORT PFNGLUNIFORM1UIVEXTPROC __glewUniform1uivEXT; -GLEW_FUN_EXPORT PFNGLUNIFORM2UIEXTPROC __glewUniform2uiEXT; -GLEW_FUN_EXPORT PFNGLUNIFORM2UIVEXTPROC __glewUniform2uivEXT; -GLEW_FUN_EXPORT PFNGLUNIFORM3UIEXTPROC __glewUniform3uiEXT; -GLEW_FUN_EXPORT PFNGLUNIFORM3UIVEXTPROC __glewUniform3uivEXT; -GLEW_FUN_EXPORT PFNGLUNIFORM4UIEXTPROC __glewUniform4uiEXT; -GLEW_FUN_EXPORT PFNGLUNIFORM4UIVEXTPROC __glewUniform4uivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IEXTPROC __glewVertexAttribI1iEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IVEXTPROC __glewVertexAttribI1ivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIEXTPROC __glewVertexAttribI1uiEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIVEXTPROC __glewVertexAttribI1uivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IEXTPROC __glewVertexAttribI2iEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IVEXTPROC __glewVertexAttribI2ivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIEXTPROC __glewVertexAttribI2uiEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIVEXTPROC __glewVertexAttribI2uivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IEXTPROC __glewVertexAttribI3iEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IVEXTPROC __glewVertexAttribI3ivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIEXTPROC __glewVertexAttribI3uiEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIVEXTPROC __glewVertexAttribI3uivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4BVEXTPROC __glewVertexAttribI4bvEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IEXTPROC __glewVertexAttribI4iEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IVEXTPROC __glewVertexAttribI4ivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4SVEXTPROC __glewVertexAttribI4svEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UBVEXTPROC __glewVertexAttribI4ubvEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIEXTPROC __glewVertexAttribI4uiEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIVEXTPROC __glewVertexAttribI4uivEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4USVEXTPROC __glewVertexAttribI4usvEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIPOINTEREXTPROC __glewVertexAttribIPointerEXT; - -GLEW_FUN_EXPORT PFNGLGETHISTOGRAMEXTPROC __glewGetHistogramEXT; -GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERFVEXTPROC __glewGetHistogramParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERIVEXTPROC __glewGetHistogramParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETMINMAXEXTPROC __glewGetMinmaxEXT; -GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERFVEXTPROC __glewGetMinmaxParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERIVEXTPROC __glewGetMinmaxParameterivEXT; -GLEW_FUN_EXPORT PFNGLHISTOGRAMEXTPROC __glewHistogramEXT; -GLEW_FUN_EXPORT PFNGLMINMAXEXTPROC __glewMinmaxEXT; -GLEW_FUN_EXPORT PFNGLRESETHISTOGRAMEXTPROC __glewResetHistogramEXT; -GLEW_FUN_EXPORT PFNGLRESETMINMAXEXTPROC __glewResetMinmaxEXT; - -GLEW_FUN_EXPORT PFNGLINDEXFUNCEXTPROC __glewIndexFuncEXT; - -GLEW_FUN_EXPORT PFNGLINDEXMATERIALEXTPROC __glewIndexMaterialEXT; - -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISOREXTPROC __glewVertexAttribDivisorEXT; - -GLEW_FUN_EXPORT PFNGLAPPLYTEXTUREEXTPROC __glewApplyTextureEXT; -GLEW_FUN_EXPORT PFNGLTEXTURELIGHTEXTPROC __glewTextureLightEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREMATERIALEXTPROC __glewTextureMaterialEXT; - -GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC __glewFlushMappedBufferRangeEXT; -GLEW_FUN_EXPORT PFNGLMAPBUFFERRANGEEXTPROC __glewMapBufferRangeEXT; - -GLEW_FUN_EXPORT PFNGLBUFFERSTORAGEMEMEXTPROC __glewBufferStorageMemEXT; -GLEW_FUN_EXPORT PFNGLCREATEMEMORYOBJECTSEXTPROC __glewCreateMemoryObjectsEXT; -GLEW_FUN_EXPORT PFNGLDELETEMEMORYOBJECTSEXTPROC __glewDeleteMemoryObjectsEXT; -GLEW_FUN_EXPORT PFNGLGETMEMORYOBJECTPARAMETERIVEXTPROC __glewGetMemoryObjectParameterivEXT; -GLEW_FUN_EXPORT PFNGLGETUNSIGNEDBYTEI_VEXTPROC __glewGetUnsignedBytei_vEXT; -GLEW_FUN_EXPORT PFNGLGETUNSIGNEDBYTEVEXTPROC __glewGetUnsignedBytevEXT; -GLEW_FUN_EXPORT PFNGLISMEMORYOBJECTEXTPROC __glewIsMemoryObjectEXT; -GLEW_FUN_EXPORT PFNGLMEMORYOBJECTPARAMETERIVEXTPROC __glewMemoryObjectParameterivEXT; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSTORAGEMEMEXTPROC __glewNamedBufferStorageMemEXT; -GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM1DEXTPROC __glewTexStorageMem1DEXT; -GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM2DEXTPROC __glewTexStorageMem2DEXT; -GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM2DMULTISAMPLEEXTPROC __glewTexStorageMem2DMultisampleEXT; -GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM3DEXTPROC __glewTexStorageMem3DEXT; -GLEW_FUN_EXPORT PFNGLTEXSTORAGEMEM3DMULTISAMPLEEXTPROC __glewTexStorageMem3DMultisampleEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM1DEXTPROC __glewTextureStorageMem1DEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM2DEXTPROC __glewTextureStorageMem2DEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM2DMULTISAMPLEEXTPROC __glewTextureStorageMem2DMultisampleEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM3DEXTPROC __glewTextureStorageMem3DEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGEMEM3DMULTISAMPLEEXTPROC __glewTextureStorageMem3DMultisampleEXT; - -GLEW_FUN_EXPORT PFNGLIMPORTMEMORYFDEXTPROC __glewImportMemoryFdEXT; - -GLEW_FUN_EXPORT PFNGLIMPORTMEMORYWIN32HANDLEEXTPROC __glewImportMemoryWin32HandleEXT; -GLEW_FUN_EXPORT PFNGLIMPORTMEMORYWIN32NAMEEXTPROC __glewImportMemoryWin32NameEXT; - -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSEXTPROC __glewMultiDrawArraysEXT; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSEXTPROC __glewMultiDrawElementsEXT; - -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTEXTPROC __glewMultiDrawArraysIndirectEXT; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTEXTPROC __glewMultiDrawElementsIndirectEXT; - -GLEW_FUN_EXPORT PFNGLSAMPLEMASKEXTPROC __glewSampleMaskEXT; -GLEW_FUN_EXPORT PFNGLSAMPLEPATTERNEXTPROC __glewSamplePatternEXT; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC __glewFramebufferTexture2DMultisampleEXT; - -GLEW_FUN_EXPORT PFNGLDRAWBUFFERSINDEXEDEXTPROC __glewDrawBuffersIndexedEXT; -GLEW_FUN_EXPORT PFNGLGETINTEGERI_VEXTPROC __glewGetIntegeri_vEXT; -GLEW_FUN_EXPORT PFNGLREADBUFFERINDEXEDEXTPROC __glewReadBufferIndexedEXT; - -GLEW_FUN_EXPORT PFNGLCOLORTABLEEXTPROC __glewColorTableEXT; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLEEXTPROC __glewGetColorTableEXT; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVEXTPROC __glewGetColorTableParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVEXTPROC __glewGetColorTableParameterivEXT; - -GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC __glewGetPixelTransformParameterfvEXT; -GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC __glewGetPixelTransformParameterivEXT; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFEXTPROC __glewPixelTransformParameterfEXT; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC __glewPixelTransformParameterfvEXT; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIEXTPROC __glewPixelTransformParameteriEXT; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC __glewPixelTransformParameterivEXT; - -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFEXTPROC __glewPointParameterfEXT; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVEXTPROC __glewPointParameterfvEXT; - -GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETEXTPROC __glewPolygonOffsetEXT; - -GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETCLAMPEXTPROC __glewPolygonOffsetClampEXT; - -GLEW_FUN_EXPORT PFNGLPRIMITIVEBOUNDINGBOXEXTPROC __glewPrimitiveBoundingBoxEXT; - -GLEW_FUN_EXPORT PFNGLPROVOKINGVERTEXEXTPROC __glewProvokingVertexEXT; - -GLEW_FUN_EXPORT PFNGLCOVERAGEMODULATIONNVPROC __glewCoverageModulationNV; -GLEW_FUN_EXPORT PFNGLCOVERAGEMODULATIONTABLENVPROC __glewCoverageModulationTableNV; -GLEW_FUN_EXPORT PFNGLGETCOVERAGEMODULATIONTABLENVPROC __glewGetCoverageModulationTableNV; -GLEW_FUN_EXPORT PFNGLRASTERSAMPLESEXTPROC __glewRasterSamplesEXT; - -GLEW_FUN_EXPORT PFNGLGETNUNIFORMFVEXTPROC __glewGetnUniformfvEXT; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMIVEXTPROC __glewGetnUniformivEXT; -GLEW_FUN_EXPORT PFNGLREADNPIXELSEXTPROC __glewReadnPixelsEXT; - -GLEW_FUN_EXPORT PFNGLBEGINSCENEEXTPROC __glewBeginSceneEXT; -GLEW_FUN_EXPORT PFNGLENDSCENEEXTPROC __glewEndSceneEXT; - -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BEXTPROC __glewSecondaryColor3bEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BVEXTPROC __glewSecondaryColor3bvEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DEXTPROC __glewSecondaryColor3dEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DVEXTPROC __glewSecondaryColor3dvEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FEXTPROC __glewSecondaryColor3fEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FVEXTPROC __glewSecondaryColor3fvEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IEXTPROC __glewSecondaryColor3iEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IVEXTPROC __glewSecondaryColor3ivEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SEXTPROC __glewSecondaryColor3sEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SVEXTPROC __glewSecondaryColor3svEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBEXTPROC __glewSecondaryColor3ubEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBVEXTPROC __glewSecondaryColor3ubvEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIEXTPROC __glewSecondaryColor3uiEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIVEXTPROC __glewSecondaryColor3uivEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USEXTPROC __glewSecondaryColor3usEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USVEXTPROC __glewSecondaryColor3usvEXT; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTEREXTPROC __glewSecondaryColorPointerEXT; - -GLEW_FUN_EXPORT PFNGLDELETESEMAPHORESEXTPROC __glewDeleteSemaphoresEXT; -GLEW_FUN_EXPORT PFNGLGENSEMAPHORESEXTPROC __glewGenSemaphoresEXT; -GLEW_FUN_EXPORT PFNGLGETSEMAPHOREPARAMETERUI64VEXTPROC __glewGetSemaphoreParameterui64vEXT; -GLEW_FUN_EXPORT PFNGLISSEMAPHOREEXTPROC __glewIsSemaphoreEXT; -GLEW_FUN_EXPORT PFNGLSEMAPHOREPARAMETERUI64VEXTPROC __glewSemaphoreParameterui64vEXT; -GLEW_FUN_EXPORT PFNGLSIGNALSEMAPHOREEXTPROC __glewSignalSemaphoreEXT; -GLEW_FUN_EXPORT PFNGLWAITSEMAPHOREEXTPROC __glewWaitSemaphoreEXT; - -GLEW_FUN_EXPORT PFNGLIMPORTSEMAPHOREFDEXTPROC __glewImportSemaphoreFdEXT; - -GLEW_FUN_EXPORT PFNGLIMPORTSEMAPHOREWIN32HANDLEEXTPROC __glewImportSemaphoreWin32HandleEXT; -GLEW_FUN_EXPORT PFNGLIMPORTSEMAPHOREWIN32NAMEEXTPROC __glewImportSemaphoreWin32NameEXT; - -GLEW_FUN_EXPORT PFNGLACTIVEPROGRAMEXTPROC __glewActiveProgramEXT; -GLEW_FUN_EXPORT PFNGLCREATESHADERPROGRAMEXTPROC __glewCreateShaderProgramEXT; -GLEW_FUN_EXPORT PFNGLUSESHADERPROGRAMEXTPROC __glewUseShaderProgramEXT; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERFETCHBARRIEREXTPROC __glewFramebufferFetchBarrierEXT; - -GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTUREEXTPROC __glewBindImageTextureEXT; -GLEW_FUN_EXPORT PFNGLMEMORYBARRIEREXTPROC __glewMemoryBarrierEXT; - -GLEW_FUN_EXPORT PFNGLCLEARPIXELLOCALSTORAGEUIEXTPROC __glewClearPixelLocalStorageuiEXT; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERPIXELLOCALSTORAGESIZEEXTPROC __glewFramebufferPixelLocalStorageSizeEXT; -GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPIXELLOCALSTORAGESIZEEXTPROC __glewGetFramebufferPixelLocalStorageSizeEXT; - -GLEW_FUN_EXPORT PFNGLTEXPAGECOMMITMENTEXTPROC __glewTexPageCommitmentEXT; -GLEW_FUN_EXPORT PFNGLTEXTUREPAGECOMMITMENTEXTPROC __glewTexturePageCommitmentEXT; - -GLEW_FUN_EXPORT PFNGLACTIVESTENCILFACEEXTPROC __glewActiveStencilFaceEXT; - -GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE1DEXTPROC __glewTexSubImage1DEXT; -GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE2DEXTPROC __glewTexSubImage2DEXT; -GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DEXTPROC __glewTexSubImage3DEXT; - -GLEW_FUN_EXPORT PFNGLPATCHPARAMETERIEXTPROC __glewPatchParameteriEXT; - -GLEW_FUN_EXPORT PFNGLTEXIMAGE3DEXTPROC __glewTexImage3DEXT; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC __glewFramebufferTextureLayerEXT; - -GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIIVEXTPROC __glewGetSamplerParameterIivEXT; -GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIUIVEXTPROC __glewGetSamplerParameterIuivEXT; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIIVEXTPROC __glewSamplerParameterIivEXT; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIUIVEXTPROC __glewSamplerParameterIuivEXT; - -GLEW_FUN_EXPORT PFNGLTEXBUFFEREXTPROC __glewTexBufferEXT; - -GLEW_FUN_EXPORT PFNGLCLEARCOLORIIEXTPROC __glewClearColorIiEXT; -GLEW_FUN_EXPORT PFNGLCLEARCOLORIUIEXTPROC __glewClearColorIuiEXT; -GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVEXTPROC __glewGetTexParameterIivEXT; -GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVEXTPROC __glewGetTexParameterIuivEXT; -GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVEXTPROC __glewTexParameterIivEXT; -GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVEXTPROC __glewTexParameterIuivEXT; - -GLEW_FUN_EXPORT PFNGLARETEXTURESRESIDENTEXTPROC __glewAreTexturesResidentEXT; -GLEW_FUN_EXPORT PFNGLBINDTEXTUREEXTPROC __glewBindTextureEXT; -GLEW_FUN_EXPORT PFNGLDELETETEXTURESEXTPROC __glewDeleteTexturesEXT; -GLEW_FUN_EXPORT PFNGLGENTEXTURESEXTPROC __glewGenTexturesEXT; -GLEW_FUN_EXPORT PFNGLISTEXTUREEXTPROC __glewIsTextureEXT; -GLEW_FUN_EXPORT PFNGLPRIORITIZETEXTURESEXTPROC __glewPrioritizeTexturesEXT; - -GLEW_FUN_EXPORT PFNGLTEXTURENORMALEXTPROC __glewTextureNormalEXT; - -GLEW_FUN_EXPORT PFNGLTEXSTORAGE1DEXTPROC __glewTexStorage1DEXT; -GLEW_FUN_EXPORT PFNGLTEXSTORAGE2DEXTPROC __glewTexStorage2DEXT; -GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DEXTPROC __glewTexStorage3DEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE1DEXTPROC __glewTextureStorage1DEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DEXTPROC __glewTextureStorage2DEXT; -GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DEXTPROC __glewTextureStorage3DEXT; - -GLEW_FUN_EXPORT PFNGLTEXTUREVIEWEXTPROC __glewTextureViewEXT; - -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VEXTPROC __glewGetQueryObjecti64vEXT; -GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VEXTPROC __glewGetQueryObjectui64vEXT; - -GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKEXTPROC __glewBeginTransformFeedbackEXT; -GLEW_FUN_EXPORT PFNGLBINDBUFFERBASEEXTPROC __glewBindBufferBaseEXT; -GLEW_FUN_EXPORT PFNGLBINDBUFFEROFFSETEXTPROC __glewBindBufferOffsetEXT; -GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGEEXTPROC __glewBindBufferRangeEXT; -GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKEXTPROC __glewEndTransformFeedbackEXT; -GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC __glewGetTransformFeedbackVaryingEXT; -GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC __glewTransformFeedbackVaryingsEXT; - -GLEW_FUN_EXPORT PFNGLARRAYELEMENTEXTPROC __glewArrayElementEXT; -GLEW_FUN_EXPORT PFNGLCOLORPOINTEREXTPROC __glewColorPointerEXT; -GLEW_FUN_EXPORT PFNGLDRAWARRAYSEXTPROC __glewDrawArraysEXT; -GLEW_FUN_EXPORT PFNGLEDGEFLAGPOINTEREXTPROC __glewEdgeFlagPointerEXT; -GLEW_FUN_EXPORT PFNGLINDEXPOINTEREXTPROC __glewIndexPointerEXT; -GLEW_FUN_EXPORT PFNGLNORMALPOINTEREXTPROC __glewNormalPointerEXT; -GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTEREXTPROC __glewTexCoordPointerEXT; -GLEW_FUN_EXPORT PFNGLVERTEXPOINTEREXTPROC __glewVertexPointerEXT; - -GLEW_FUN_EXPORT PFNGLBINDARRAYSETEXTPROC __glewBindArraySetEXT; -GLEW_FUN_EXPORT PFNGLCREATEARRAYSETEXTPROC __glewCreateArraySetExt; -GLEW_FUN_EXPORT PFNGLDELETEARRAYSETSEXTPROC __glewDeleteArraySetsEXT; - -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLDVEXTPROC __glewGetVertexAttribLdvEXT; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC __glewVertexArrayVertexAttribLOffsetEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DEXTPROC __glewVertexAttribL1dEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DVEXTPROC __glewVertexAttribL1dvEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DEXTPROC __glewVertexAttribL2dEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DVEXTPROC __glewVertexAttribL2dvEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DEXTPROC __glewVertexAttribL3dEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DVEXTPROC __glewVertexAttribL3dvEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DEXTPROC __glewVertexAttribL4dEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DVEXTPROC __glewVertexAttribL4dvEXT; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLPOINTEREXTPROC __glewVertexAttribLPointerEXT; - -GLEW_FUN_EXPORT PFNGLBEGINVERTEXSHADEREXTPROC __glewBeginVertexShaderEXT; -GLEW_FUN_EXPORT PFNGLBINDLIGHTPARAMETEREXTPROC __glewBindLightParameterEXT; -GLEW_FUN_EXPORT PFNGLBINDMATERIALPARAMETEREXTPROC __glewBindMaterialParameterEXT; -GLEW_FUN_EXPORT PFNGLBINDPARAMETEREXTPROC __glewBindParameterEXT; -GLEW_FUN_EXPORT PFNGLBINDTEXGENPARAMETEREXTPROC __glewBindTexGenParameterEXT; -GLEW_FUN_EXPORT PFNGLBINDTEXTUREUNITPARAMETEREXTPROC __glewBindTextureUnitParameterEXT; -GLEW_FUN_EXPORT PFNGLBINDVERTEXSHADEREXTPROC __glewBindVertexShaderEXT; -GLEW_FUN_EXPORT PFNGLDELETEVERTEXSHADEREXTPROC __glewDeleteVertexShaderEXT; -GLEW_FUN_EXPORT PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC __glewDisableVariantClientStateEXT; -GLEW_FUN_EXPORT PFNGLENABLEVARIANTCLIENTSTATEEXTPROC __glewEnableVariantClientStateEXT; -GLEW_FUN_EXPORT PFNGLENDVERTEXSHADEREXTPROC __glewEndVertexShaderEXT; -GLEW_FUN_EXPORT PFNGLEXTRACTCOMPONENTEXTPROC __glewExtractComponentEXT; -GLEW_FUN_EXPORT PFNGLGENSYMBOLSEXTPROC __glewGenSymbolsEXT; -GLEW_FUN_EXPORT PFNGLGENVERTEXSHADERSEXTPROC __glewGenVertexShadersEXT; -GLEW_FUN_EXPORT PFNGLGETINVARIANTBOOLEANVEXTPROC __glewGetInvariantBooleanvEXT; -GLEW_FUN_EXPORT PFNGLGETINVARIANTFLOATVEXTPROC __glewGetInvariantFloatvEXT; -GLEW_FUN_EXPORT PFNGLGETINVARIANTINTEGERVEXTPROC __glewGetInvariantIntegervEXT; -GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC __glewGetLocalConstantBooleanvEXT; -GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTFLOATVEXTPROC __glewGetLocalConstantFloatvEXT; -GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTINTEGERVEXTPROC __glewGetLocalConstantIntegervEXT; -GLEW_FUN_EXPORT PFNGLGETVARIANTBOOLEANVEXTPROC __glewGetVariantBooleanvEXT; -GLEW_FUN_EXPORT PFNGLGETVARIANTFLOATVEXTPROC __glewGetVariantFloatvEXT; -GLEW_FUN_EXPORT PFNGLGETVARIANTINTEGERVEXTPROC __glewGetVariantIntegervEXT; -GLEW_FUN_EXPORT PFNGLGETVARIANTPOINTERVEXTPROC __glewGetVariantPointervEXT; -GLEW_FUN_EXPORT PFNGLINSERTCOMPONENTEXTPROC __glewInsertComponentEXT; -GLEW_FUN_EXPORT PFNGLISVARIANTENABLEDEXTPROC __glewIsVariantEnabledEXT; -GLEW_FUN_EXPORT PFNGLSETINVARIANTEXTPROC __glewSetInvariantEXT; -GLEW_FUN_EXPORT PFNGLSETLOCALCONSTANTEXTPROC __glewSetLocalConstantEXT; -GLEW_FUN_EXPORT PFNGLSHADEROP1EXTPROC __glewShaderOp1EXT; -GLEW_FUN_EXPORT PFNGLSHADEROP2EXTPROC __glewShaderOp2EXT; -GLEW_FUN_EXPORT PFNGLSHADEROP3EXTPROC __glewShaderOp3EXT; -GLEW_FUN_EXPORT PFNGLSWIZZLEEXTPROC __glewSwizzleEXT; -GLEW_FUN_EXPORT PFNGLVARIANTPOINTEREXTPROC __glewVariantPointerEXT; -GLEW_FUN_EXPORT PFNGLVARIANTBVEXTPROC __glewVariantbvEXT; -GLEW_FUN_EXPORT PFNGLVARIANTDVEXTPROC __glewVariantdvEXT; -GLEW_FUN_EXPORT PFNGLVARIANTFVEXTPROC __glewVariantfvEXT; -GLEW_FUN_EXPORT PFNGLVARIANTIVEXTPROC __glewVariantivEXT; -GLEW_FUN_EXPORT PFNGLVARIANTSVEXTPROC __glewVariantsvEXT; -GLEW_FUN_EXPORT PFNGLVARIANTUBVEXTPROC __glewVariantubvEXT; -GLEW_FUN_EXPORT PFNGLVARIANTUIVEXTPROC __glewVariantuivEXT; -GLEW_FUN_EXPORT PFNGLVARIANTUSVEXTPROC __glewVariantusvEXT; -GLEW_FUN_EXPORT PFNGLWRITEMASKEXTPROC __glewWriteMaskEXT; - -GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTPOINTEREXTPROC __glewVertexWeightPointerEXT; -GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTFEXTPROC __glewVertexWeightfEXT; -GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTFVEXTPROC __glewVertexWeightfvEXT; - -GLEW_FUN_EXPORT PFNGLACQUIREKEYEDMUTEXWIN32EXTPROC __glewAcquireKeyedMutexWin32EXT; -GLEW_FUN_EXPORT PFNGLRELEASEKEYEDMUTEXWIN32EXTPROC __glewReleaseKeyedMutexWin32EXT; - -GLEW_FUN_EXPORT PFNGLWINDOWRECTANGLESEXTPROC __glewWindowRectanglesEXT; - -GLEW_FUN_EXPORT PFNGLIMPORTSYNCEXTPROC __glewImportSyncEXT; - -GLEW_FUN_EXPORT PFNGLFRAMETERMINATORGREMEDYPROC __glewFrameTerminatorGREMEDY; - -GLEW_FUN_EXPORT PFNGLSTRINGMARKERGREMEDYPROC __glewStringMarkerGREMEDY; - -GLEW_FUN_EXPORT PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC __glewGetImageTransformParameterfvHP; -GLEW_FUN_EXPORT PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC __glewGetImageTransformParameterivHP; -GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERFHPPROC __glewImageTransformParameterfHP; -GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERFVHPPROC __glewImageTransformParameterfvHP; -GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERIHPPROC __glewImageTransformParameteriHP; -GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERIVHPPROC __glewImageTransformParameterivHP; - -GLEW_FUN_EXPORT PFNGLMULTIMODEDRAWARRAYSIBMPROC __glewMultiModeDrawArraysIBM; -GLEW_FUN_EXPORT PFNGLMULTIMODEDRAWELEMENTSIBMPROC __glewMultiModeDrawElementsIBM; - -GLEW_FUN_EXPORT PFNGLCOLORPOINTERLISTIBMPROC __glewColorPointerListIBM; -GLEW_FUN_EXPORT PFNGLEDGEFLAGPOINTERLISTIBMPROC __glewEdgeFlagPointerListIBM; -GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTERLISTIBMPROC __glewFogCoordPointerListIBM; -GLEW_FUN_EXPORT PFNGLINDEXPOINTERLISTIBMPROC __glewIndexPointerListIBM; -GLEW_FUN_EXPORT PFNGLNORMALPOINTERLISTIBMPROC __glewNormalPointerListIBM; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTERLISTIBMPROC __glewSecondaryColorPointerListIBM; -GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTERLISTIBMPROC __glewTexCoordPointerListIBM; -GLEW_FUN_EXPORT PFNGLVERTEXPOINTERLISTIBMPROC __glewVertexPointerListIBM; - -GLEW_FUN_EXPORT PFNGLGETTEXTUREHANDLEIMGPROC __glewGetTextureHandleIMG; -GLEW_FUN_EXPORT PFNGLGETTEXTURESAMPLERHANDLEIMGPROC __glewGetTextureSamplerHandleIMG; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64IMGPROC __glewProgramUniformHandleui64IMG; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64VIMGPROC __glewProgramUniformHandleui64vIMG; -GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64IMGPROC __glewUniformHandleui64IMG; -GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64VIMGPROC __glewUniformHandleui64vIMG; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DDOWNSAMPLEIMGPROC __glewFramebufferTexture2DDownsampleIMG; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERDOWNSAMPLEIMGPROC __glewFramebufferTextureLayerDownsampleIMG; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC __glewFramebufferTexture2DMultisampleIMG; -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC __glewRenderbufferStorageMultisampleIMG; - -GLEW_FUN_EXPORT PFNGLMAPTEXTURE2DINTELPROC __glewMapTexture2DINTEL; -GLEW_FUN_EXPORT PFNGLSYNCTEXTUREINTELPROC __glewSyncTextureINTEL; -GLEW_FUN_EXPORT PFNGLUNMAPTEXTURE2DINTELPROC __glewUnmapTexture2DINTEL; - -GLEW_FUN_EXPORT PFNGLCOLORPOINTERVINTELPROC __glewColorPointervINTEL; -GLEW_FUN_EXPORT PFNGLNORMALPOINTERVINTELPROC __glewNormalPointervINTEL; -GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTERVINTELPROC __glewTexCoordPointervINTEL; -GLEW_FUN_EXPORT PFNGLVERTEXPOINTERVINTELPROC __glewVertexPointervINTEL; - -GLEW_FUN_EXPORT PFNGLBEGINPERFQUERYINTELPROC __glewBeginPerfQueryINTEL; -GLEW_FUN_EXPORT PFNGLCREATEPERFQUERYINTELPROC __glewCreatePerfQueryINTEL; -GLEW_FUN_EXPORT PFNGLDELETEPERFQUERYINTELPROC __glewDeletePerfQueryINTEL; -GLEW_FUN_EXPORT PFNGLENDPERFQUERYINTELPROC __glewEndPerfQueryINTEL; -GLEW_FUN_EXPORT PFNGLGETFIRSTPERFQUERYIDINTELPROC __glewGetFirstPerfQueryIdINTEL; -GLEW_FUN_EXPORT PFNGLGETNEXTPERFQUERYIDINTELPROC __glewGetNextPerfQueryIdINTEL; -GLEW_FUN_EXPORT PFNGLGETPERFCOUNTERINFOINTELPROC __glewGetPerfCounterInfoINTEL; -GLEW_FUN_EXPORT PFNGLGETPERFQUERYDATAINTELPROC __glewGetPerfQueryDataINTEL; -GLEW_FUN_EXPORT PFNGLGETPERFQUERYIDBYNAMEINTELPROC __glewGetPerfQueryIdByNameINTEL; -GLEW_FUN_EXPORT PFNGLGETPERFQUERYINFOINTELPROC __glewGetPerfQueryInfoINTEL; - -GLEW_FUN_EXPORT PFNGLTEXSCISSORFUNCINTELPROC __glewTexScissorFuncINTEL; -GLEW_FUN_EXPORT PFNGLTEXSCISSORINTELPROC __glewTexScissorINTEL; - -GLEW_FUN_EXPORT PFNGLBLENDBARRIERKHRPROC __glewBlendBarrierKHR; - -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECALLBACKPROC __glewDebugMessageCallback; -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECONTROLPROC __glewDebugMessageControl; -GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEINSERTPROC __glewDebugMessageInsert; -GLEW_FUN_EXPORT PFNGLGETDEBUGMESSAGELOGPROC __glewGetDebugMessageLog; -GLEW_FUN_EXPORT PFNGLGETOBJECTLABELPROC __glewGetObjectLabel; -GLEW_FUN_EXPORT PFNGLGETOBJECTPTRLABELPROC __glewGetObjectPtrLabel; -GLEW_FUN_EXPORT PFNGLOBJECTLABELPROC __glewObjectLabel; -GLEW_FUN_EXPORT PFNGLOBJECTPTRLABELPROC __glewObjectPtrLabel; -GLEW_FUN_EXPORT PFNGLPOPDEBUGGROUPPROC __glewPopDebugGroup; -GLEW_FUN_EXPORT PFNGLPUSHDEBUGGROUPPROC __glewPushDebugGroup; - -GLEW_FUN_EXPORT PFNGLMAXSHADERCOMPILERTHREADSKHRPROC __glewMaxShaderCompilerThreadsKHR; - -GLEW_FUN_EXPORT PFNGLGETNUNIFORMFVPROC __glewGetnUniformfv; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMIVPROC __glewGetnUniformiv; -GLEW_FUN_EXPORT PFNGLGETNUNIFORMUIVPROC __glewGetnUniformuiv; -GLEW_FUN_EXPORT PFNGLREADNPIXELSPROC __glewReadnPixels; - -GLEW_FUN_EXPORT PFNGLBUFFERREGIONENABLEDPROC __glewBufferRegionEnabled; -GLEW_FUN_EXPORT PFNGLDELETEBUFFERREGIONPROC __glewDeleteBufferRegion; -GLEW_FUN_EXPORT PFNGLDRAWBUFFERREGIONPROC __glewDrawBufferRegion; -GLEW_FUN_EXPORT PFNGLNEWBUFFERREGIONPROC __glewNewBufferRegion; -GLEW_FUN_EXPORT PFNGLREADBUFFERREGIONPROC __glewReadBufferRegion; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERPARAMETERIMESAPROC __glewFramebufferParameteriMESA; -GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERIVMESAPROC __glewGetFramebufferParameterivMESA; - -GLEW_FUN_EXPORT PFNGLRESIZEBUFFERSMESAPROC __glewResizeBuffersMESA; - -GLEW_FUN_EXPORT PFNGLWINDOWPOS2DMESAPROC __glewWindowPos2dMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVMESAPROC __glewWindowPos2dvMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2FMESAPROC __glewWindowPos2fMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVMESAPROC __glewWindowPos2fvMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2IMESAPROC __glewWindowPos2iMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVMESAPROC __glewWindowPos2ivMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2SMESAPROC __glewWindowPos2sMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVMESAPROC __glewWindowPos2svMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3DMESAPROC __glewWindowPos3dMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVMESAPROC __glewWindowPos3dvMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3FMESAPROC __glewWindowPos3fMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVMESAPROC __glewWindowPos3fvMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3IMESAPROC __glewWindowPos3iMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVMESAPROC __glewWindowPos3ivMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3SMESAPROC __glewWindowPos3sMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVMESAPROC __glewWindowPos3svMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS4DMESAPROC __glewWindowPos4dMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS4DVMESAPROC __glewWindowPos4dvMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS4FMESAPROC __glewWindowPos4fMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS4FVMESAPROC __glewWindowPos4fvMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS4IMESAPROC __glewWindowPos4iMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS4IVMESAPROC __glewWindowPos4ivMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS4SMESAPROC __glewWindowPos4sMESA; -GLEW_FUN_EXPORT PFNGLWINDOWPOS4SVMESAPROC __glewWindowPos4svMESA; - -GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERNVXPROC __glewBeginConditionalRenderNVX; -GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERNVXPROC __glewEndConditionalRenderNVX; - -GLEW_FUN_EXPORT PFNGLASYNCCOPYBUFFERSUBDATANVXPROC __glewAsyncCopyBufferSubDataNVX; -GLEW_FUN_EXPORT PFNGLASYNCCOPYIMAGESUBDATANVXPROC __glewAsyncCopyImageSubDataNVX; -GLEW_FUN_EXPORT PFNGLMULTICASTSCISSORARRAYVNVXPROC __glewMulticastScissorArrayvNVX; -GLEW_FUN_EXPORT PFNGLMULTICASTVIEWPORTARRAYVNVXPROC __glewMulticastViewportArrayvNVX; -GLEW_FUN_EXPORT PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC __glewMulticastViewportPositionWScaleNVX; -GLEW_FUN_EXPORT PFNGLUPLOADGPUMASKNVXPROC __glewUploadGpuMaskNVX; - -GLEW_FUN_EXPORT PFNGLLGPUCOPYIMAGESUBDATANVXPROC __glewLGPUCopyImageSubDataNVX; -GLEW_FUN_EXPORT PFNGLLGPUINTERLOCKNVXPROC __glewLGPUInterlockNVX; -GLEW_FUN_EXPORT PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC __glewLGPUNamedBufferSubDataNVX; - -GLEW_FUN_EXPORT PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC __glewClientWaitSemaphoreui64NVX; -GLEW_FUN_EXPORT PFNGLSIGNALSEMAPHOREUI64NVXPROC __glewSignalSemaphoreui64NVX; -GLEW_FUN_EXPORT PFNGLWAITSEMAPHOREUI64NVXPROC __glewWaitSemaphoreui64NVX; - -GLEW_FUN_EXPORT PFNGLSTEREOPARAMETERFNVPROC __glewStereoParameterfNV; -GLEW_FUN_EXPORT PFNGLSTEREOPARAMETERINVPROC __glewStereoParameteriNV; - -GLEW_FUN_EXPORT PFNGLALPHATOCOVERAGEDITHERCONTROLNVPROC __glewAlphaToCoverageDitherControlNV; - -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSNVPROC __glewMultiDrawArraysIndirectBindlessNV; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSNVPROC __glewMultiDrawElementsIndirectBindlessNV; - -GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSCOUNTNVPROC __glewMultiDrawArraysIndirectBindlessCountNV; -GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSCOUNTNVPROC __glewMultiDrawElementsIndirectBindlessCountNV; - -GLEW_FUN_EXPORT PFNGLGETIMAGEHANDLENVPROC __glewGetImageHandleNV; -GLEW_FUN_EXPORT PFNGLGETTEXTUREHANDLENVPROC __glewGetTextureHandleNV; -GLEW_FUN_EXPORT PFNGLGETTEXTURESAMPLERHANDLENVPROC __glewGetTextureSamplerHandleNV; -GLEW_FUN_EXPORT PFNGLISIMAGEHANDLERESIDENTNVPROC __glewIsImageHandleResidentNV; -GLEW_FUN_EXPORT PFNGLISTEXTUREHANDLERESIDENTNVPROC __glewIsTextureHandleResidentNV; -GLEW_FUN_EXPORT PFNGLMAKEIMAGEHANDLENONRESIDENTNVPROC __glewMakeImageHandleNonResidentNV; -GLEW_FUN_EXPORT PFNGLMAKEIMAGEHANDLERESIDENTNVPROC __glewMakeImageHandleResidentNV; -GLEW_FUN_EXPORT PFNGLMAKETEXTUREHANDLENONRESIDENTNVPROC __glewMakeTextureHandleNonResidentNV; -GLEW_FUN_EXPORT PFNGLMAKETEXTUREHANDLERESIDENTNVPROC __glewMakeTextureHandleResidentNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64NVPROC __glewProgramUniformHandleui64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMHANDLEUI64VNVPROC __glewProgramUniformHandleui64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64NVPROC __glewUniformHandleui64NV; -GLEW_FUN_EXPORT PFNGLUNIFORMHANDLEUI64VNVPROC __glewUniformHandleui64vNV; - -GLEW_FUN_EXPORT PFNGLBLENDBARRIERNVPROC __glewBlendBarrierNV; -GLEW_FUN_EXPORT PFNGLBLENDPARAMETERINVPROC __glewBlendParameteriNV; - -GLEW_FUN_EXPORT PFNGLVIEWPORTPOSITIONWSCALENVPROC __glewViewportPositionWScaleNV; - -GLEW_FUN_EXPORT PFNGLCALLCOMMANDLISTNVPROC __glewCallCommandListNV; -GLEW_FUN_EXPORT PFNGLCOMMANDLISTSEGMENTSNVPROC __glewCommandListSegmentsNV; -GLEW_FUN_EXPORT PFNGLCOMPILECOMMANDLISTNVPROC __glewCompileCommandListNV; -GLEW_FUN_EXPORT PFNGLCREATECOMMANDLISTSNVPROC __glewCreateCommandListsNV; -GLEW_FUN_EXPORT PFNGLCREATESTATESNVPROC __glewCreateStatesNV; -GLEW_FUN_EXPORT PFNGLDELETECOMMANDLISTSNVPROC __glewDeleteCommandListsNV; -GLEW_FUN_EXPORT PFNGLDELETESTATESNVPROC __glewDeleteStatesNV; -GLEW_FUN_EXPORT PFNGLDRAWCOMMANDSADDRESSNVPROC __glewDrawCommandsAddressNV; -GLEW_FUN_EXPORT PFNGLDRAWCOMMANDSNVPROC __glewDrawCommandsNV; -GLEW_FUN_EXPORT PFNGLDRAWCOMMANDSSTATESADDRESSNVPROC __glewDrawCommandsStatesAddressNV; -GLEW_FUN_EXPORT PFNGLDRAWCOMMANDSSTATESNVPROC __glewDrawCommandsStatesNV; -GLEW_FUN_EXPORT PFNGLGETCOMMANDHEADERNVPROC __glewGetCommandHeaderNV; -GLEW_FUN_EXPORT PFNGLGETSTAGEINDEXNVPROC __glewGetStageIndexNV; -GLEW_FUN_EXPORT PFNGLISCOMMANDLISTNVPROC __glewIsCommandListNV; -GLEW_FUN_EXPORT PFNGLISSTATENVPROC __glewIsStateNV; -GLEW_FUN_EXPORT PFNGLLISTDRAWCOMMANDSSTATESCLIENTNVPROC __glewListDrawCommandsStatesClientNV; -GLEW_FUN_EXPORT PFNGLSTATECAPTURENVPROC __glewStateCaptureNV; - -GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERNVPROC __glewBeginConditionalRenderNV; -GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERNVPROC __glewEndConditionalRenderNV; - -GLEW_FUN_EXPORT PFNGLSUBPIXELPRECISIONBIASNVPROC __glewSubpixelPrecisionBiasNV; - -GLEW_FUN_EXPORT PFNGLCONSERVATIVERASTERPARAMETERFNVPROC __glewConservativeRasterParameterfNV; - -GLEW_FUN_EXPORT PFNGLCONSERVATIVERASTERPARAMETERINVPROC __glewConservativeRasterParameteriNV; - -GLEW_FUN_EXPORT PFNGLCOPYBUFFERSUBDATANVPROC __glewCopyBufferSubDataNV; - -GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATANVPROC __glewCopyImageSubDataNV; - -GLEW_FUN_EXPORT PFNGLCLEARDEPTHDNVPROC __glewClearDepthdNV; -GLEW_FUN_EXPORT PFNGLDEPTHBOUNDSDNVPROC __glewDepthBoundsdNV; -GLEW_FUN_EXPORT PFNGLDEPTHRANGEDNVPROC __glewDepthRangedNV; - -GLEW_FUN_EXPORT PFNGLDRAWBUFFERSNVPROC __glewDrawBuffersNV; - -GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDNVPROC __glewDrawArraysInstancedNV; -GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDNVPROC __glewDrawElementsInstancedNV; - -GLEW_FUN_EXPORT PFNGLDRAWTEXTURENVPROC __glewDrawTextureNV; - -GLEW_FUN_EXPORT PFNGLDRAWVKIMAGENVPROC __glewDrawVkImageNV; -GLEW_FUN_EXPORT PFNGLGETVKPROCADDRNVPROC __glewGetVkProcAddrNV; -GLEW_FUN_EXPORT PFNGLSIGNALVKFENCENVPROC __glewSignalVkFenceNV; -GLEW_FUN_EXPORT PFNGLSIGNALVKSEMAPHORENVPROC __glewSignalVkSemaphoreNV; -GLEW_FUN_EXPORT PFNGLWAITVKSEMAPHORENVPROC __glewWaitVkSemaphoreNV; - -GLEW_FUN_EXPORT PFNGLEVALMAPSNVPROC __glewEvalMapsNV; -GLEW_FUN_EXPORT PFNGLGETMAPATTRIBPARAMETERFVNVPROC __glewGetMapAttribParameterfvNV; -GLEW_FUN_EXPORT PFNGLGETMAPATTRIBPARAMETERIVNVPROC __glewGetMapAttribParameterivNV; -GLEW_FUN_EXPORT PFNGLGETMAPCONTROLPOINTSNVPROC __glewGetMapControlPointsNV; -GLEW_FUN_EXPORT PFNGLGETMAPPARAMETERFVNVPROC __glewGetMapParameterfvNV; -GLEW_FUN_EXPORT PFNGLGETMAPPARAMETERIVNVPROC __glewGetMapParameterivNV; -GLEW_FUN_EXPORT PFNGLMAPCONTROLPOINTSNVPROC __glewMapControlPointsNV; -GLEW_FUN_EXPORT PFNGLMAPPARAMETERFVNVPROC __glewMapParameterfvNV; -GLEW_FUN_EXPORT PFNGLMAPPARAMETERIVNVPROC __glewMapParameterivNV; - -GLEW_FUN_EXPORT PFNGLGETMULTISAMPLEFVNVPROC __glewGetMultisamplefvNV; -GLEW_FUN_EXPORT PFNGLSAMPLEMASKINDEXEDNVPROC __glewSampleMaskIndexedNV; -GLEW_FUN_EXPORT PFNGLTEXRENDERBUFFERNVPROC __glewTexRenderbufferNV; - -GLEW_FUN_EXPORT PFNGLDELETEFENCESNVPROC __glewDeleteFencesNV; -GLEW_FUN_EXPORT PFNGLFINISHFENCENVPROC __glewFinishFenceNV; -GLEW_FUN_EXPORT PFNGLGENFENCESNVPROC __glewGenFencesNV; -GLEW_FUN_EXPORT PFNGLGETFENCEIVNVPROC __glewGetFenceivNV; -GLEW_FUN_EXPORT PFNGLISFENCENVPROC __glewIsFenceNV; -GLEW_FUN_EXPORT PFNGLSETFENCENVPROC __glewSetFenceNV; -GLEW_FUN_EXPORT PFNGLTESTFENCENVPROC __glewTestFenceNV; - -GLEW_FUN_EXPORT PFNGLFRAGMENTCOVERAGECOLORNVPROC __glewFragmentCoverageColorNV; - -GLEW_FUN_EXPORT PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC __glewGetProgramNamedParameterdvNV; -GLEW_FUN_EXPORT PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC __glewGetProgramNamedParameterfvNV; -GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4DNVPROC __glewProgramNamedParameter4dNV; -GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC __glewProgramNamedParameter4dvNV; -GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4FNVPROC __glewProgramNamedParameter4fNV; -GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC __glewProgramNamedParameter4fvNV; - -GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFERNVPROC __glewBlitFramebufferNV; - -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLENVPROC __glewRenderbufferStorageMultisampleNV; - -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC __glewRenderbufferStorageMultisampleCoverageNV; - -GLEW_FUN_EXPORT PFNGLPROGRAMVERTEXLIMITNVPROC __glewProgramVertexLimitNV; - -GLEW_FUN_EXPORT PFNGLMULTICASTBARRIERNVPROC __glewMulticastBarrierNV; -GLEW_FUN_EXPORT PFNGLMULTICASTBLITFRAMEBUFFERNVPROC __glewMulticastBlitFramebufferNV; -GLEW_FUN_EXPORT PFNGLMULTICASTBUFFERSUBDATANVPROC __glewMulticastBufferSubDataNV; -GLEW_FUN_EXPORT PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC __glewMulticastCopyBufferSubDataNV; -GLEW_FUN_EXPORT PFNGLMULTICASTCOPYIMAGESUBDATANVPROC __glewMulticastCopyImageSubDataNV; -GLEW_FUN_EXPORT PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC __glewMulticastFramebufferSampleLocationsfvNV; -GLEW_FUN_EXPORT PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC __glewMulticastGetQueryObjecti64vNV; -GLEW_FUN_EXPORT PFNGLMULTICASTGETQUERYOBJECTIVNVPROC __glewMulticastGetQueryObjectivNV; -GLEW_FUN_EXPORT PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC __glewMulticastGetQueryObjectui64vNV; -GLEW_FUN_EXPORT PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC __glewMulticastGetQueryObjectuivNV; -GLEW_FUN_EXPORT PFNGLMULTICASTWAITSYNCNVPROC __glewMulticastWaitSyncNV; -GLEW_FUN_EXPORT PFNGLRENDERGPUMASKNVPROC __glewRenderGpuMaskNV; - -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4INVPROC __glewProgramEnvParameterI4iNV; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4IVNVPROC __glewProgramEnvParameterI4ivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4UINVPROC __glewProgramEnvParameterI4uiNV; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4UIVNVPROC __glewProgramEnvParameterI4uivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERSI4IVNVPROC __glewProgramEnvParametersI4ivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC __glewProgramEnvParametersI4uivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4INVPROC __glewProgramLocalParameterI4iNV; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC __glewProgramLocalParameterI4ivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4UINVPROC __glewProgramLocalParameterI4uiNV; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC __glewProgramLocalParameterI4uivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC __glewProgramLocalParametersI4ivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC __glewProgramLocalParametersI4uivNV; - -GLEW_FUN_EXPORT PFNGLGETUNIFORMI64VNVPROC __glewGetUniformi64vNV; -GLEW_FUN_EXPORT PFNGLGETUNIFORMUI64VNVPROC __glewGetUniformui64vNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64NVPROC __glewProgramUniform1i64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64VNVPROC __glewProgramUniform1i64vNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64NVPROC __glewProgramUniform1ui64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64VNVPROC __glewProgramUniform1ui64vNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64NVPROC __glewProgramUniform2i64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64VNVPROC __glewProgramUniform2i64vNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64NVPROC __glewProgramUniform2ui64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64VNVPROC __glewProgramUniform2ui64vNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64NVPROC __glewProgramUniform3i64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64VNVPROC __glewProgramUniform3i64vNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64NVPROC __glewProgramUniform3ui64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64VNVPROC __glewProgramUniform3ui64vNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64NVPROC __glewProgramUniform4i64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64VNVPROC __glewProgramUniform4i64vNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64NVPROC __glewProgramUniform4ui64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64VNVPROC __glewProgramUniform4ui64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORM1I64NVPROC __glewUniform1i64NV; -GLEW_FUN_EXPORT PFNGLUNIFORM1I64VNVPROC __glewUniform1i64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORM1UI64NVPROC __glewUniform1ui64NV; -GLEW_FUN_EXPORT PFNGLUNIFORM1UI64VNVPROC __glewUniform1ui64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORM2I64NVPROC __glewUniform2i64NV; -GLEW_FUN_EXPORT PFNGLUNIFORM2I64VNVPROC __glewUniform2i64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORM2UI64NVPROC __glewUniform2ui64NV; -GLEW_FUN_EXPORT PFNGLUNIFORM2UI64VNVPROC __glewUniform2ui64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORM3I64NVPROC __glewUniform3i64NV; -GLEW_FUN_EXPORT PFNGLUNIFORM3I64VNVPROC __glewUniform3i64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORM3UI64NVPROC __glewUniform3ui64NV; -GLEW_FUN_EXPORT PFNGLUNIFORM3UI64VNVPROC __glewUniform3ui64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORM4I64NVPROC __glewUniform4i64NV; -GLEW_FUN_EXPORT PFNGLUNIFORM4I64VNVPROC __glewUniform4i64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORM4UI64NVPROC __glewUniform4ui64NV; -GLEW_FUN_EXPORT PFNGLUNIFORM4UI64VNVPROC __glewUniform4ui64vNV; - -GLEW_FUN_EXPORT PFNGLCOLOR3HNVPROC __glewColor3hNV; -GLEW_FUN_EXPORT PFNGLCOLOR3HVNVPROC __glewColor3hvNV; -GLEW_FUN_EXPORT PFNGLCOLOR4HNVPROC __glewColor4hNV; -GLEW_FUN_EXPORT PFNGLCOLOR4HVNVPROC __glewColor4hvNV; -GLEW_FUN_EXPORT PFNGLFOGCOORDHNVPROC __glewFogCoordhNV; -GLEW_FUN_EXPORT PFNGLFOGCOORDHVNVPROC __glewFogCoordhvNV; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1HNVPROC __glewMultiTexCoord1hNV; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1HVNVPROC __glewMultiTexCoord1hvNV; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2HNVPROC __glewMultiTexCoord2hNV; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2HVNVPROC __glewMultiTexCoord2hvNV; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3HNVPROC __glewMultiTexCoord3hNV; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3HVNVPROC __glewMultiTexCoord3hvNV; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4HNVPROC __glewMultiTexCoord4hNV; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4HVNVPROC __glewMultiTexCoord4hvNV; -GLEW_FUN_EXPORT PFNGLNORMAL3HNVPROC __glewNormal3hNV; -GLEW_FUN_EXPORT PFNGLNORMAL3HVNVPROC __glewNormal3hvNV; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3HNVPROC __glewSecondaryColor3hNV; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3HVNVPROC __glewSecondaryColor3hvNV; -GLEW_FUN_EXPORT PFNGLTEXCOORD1HNVPROC __glewTexCoord1hNV; -GLEW_FUN_EXPORT PFNGLTEXCOORD1HVNVPROC __glewTexCoord1hvNV; -GLEW_FUN_EXPORT PFNGLTEXCOORD2HNVPROC __glewTexCoord2hNV; -GLEW_FUN_EXPORT PFNGLTEXCOORD2HVNVPROC __glewTexCoord2hvNV; -GLEW_FUN_EXPORT PFNGLTEXCOORD3HNVPROC __glewTexCoord3hNV; -GLEW_FUN_EXPORT PFNGLTEXCOORD3HVNVPROC __glewTexCoord3hvNV; -GLEW_FUN_EXPORT PFNGLTEXCOORD4HNVPROC __glewTexCoord4hNV; -GLEW_FUN_EXPORT PFNGLTEXCOORD4HVNVPROC __glewTexCoord4hvNV; -GLEW_FUN_EXPORT PFNGLVERTEX2HNVPROC __glewVertex2hNV; -GLEW_FUN_EXPORT PFNGLVERTEX2HVNVPROC __glewVertex2hvNV; -GLEW_FUN_EXPORT PFNGLVERTEX3HNVPROC __glewVertex3hNV; -GLEW_FUN_EXPORT PFNGLVERTEX3HVNVPROC __glewVertex3hvNV; -GLEW_FUN_EXPORT PFNGLVERTEX4HNVPROC __glewVertex4hNV; -GLEW_FUN_EXPORT PFNGLVERTEX4HVNVPROC __glewVertex4hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1HNVPROC __glewVertexAttrib1hNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1HVNVPROC __glewVertexAttrib1hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2HNVPROC __glewVertexAttrib2hNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2HVNVPROC __glewVertexAttrib2hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3HNVPROC __glewVertexAttrib3hNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3HVNVPROC __glewVertexAttrib3hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4HNVPROC __glewVertexAttrib4hNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4HVNVPROC __glewVertexAttrib4hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1HVNVPROC __glewVertexAttribs1hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2HVNVPROC __glewVertexAttribs2hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3HVNVPROC __glewVertexAttribs3hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4HVNVPROC __glewVertexAttribs4hvNV; -GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTHNVPROC __glewVertexWeighthNV; -GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTHVNVPROC __glewVertexWeighthvNV; - -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORNVPROC __glewVertexAttribDivisorNV; - -GLEW_FUN_EXPORT PFNGLGETINTERNALFORMATSAMPLEIVNVPROC __glewGetInternalformatSampleivNV; - -GLEW_FUN_EXPORT PFNGLBUFFERATTACHMEMORYNVPROC __glewBufferAttachMemoryNV; -GLEW_FUN_EXPORT PFNGLGETMEMORYOBJECTDETACHEDRESOURCESUIVNVPROC __glewGetMemoryObjectDetachedResourcesuivNV; -GLEW_FUN_EXPORT PFNGLNAMEDBUFFERATTACHMEMORYNVPROC __glewNamedBufferAttachMemoryNV; -GLEW_FUN_EXPORT PFNGLRESETMEMORYOBJECTPARAMETERNVPROC __glewResetMemoryObjectParameterNV; -GLEW_FUN_EXPORT PFNGLTEXATTACHMEMORYNVPROC __glewTexAttachMemoryNV; -GLEW_FUN_EXPORT PFNGLTEXTUREATTACHMEMORYNVPROC __glewTextureAttachMemoryNV; - -GLEW_FUN_EXPORT PFNGLDRAWMESHTASKSINDIRECTNVPROC __glewDrawMeshTasksIndirectNV; -GLEW_FUN_EXPORT PFNGLDRAWMESHTASKSNVPROC __glewDrawMeshTasksNV; -GLEW_FUN_EXPORT PFNGLMULTIDRAWMESHTASKSINDIRECTCOUNTNVPROC __glewMultiDrawMeshTasksIndirectCountNV; -GLEW_FUN_EXPORT PFNGLMULTIDRAWMESHTASKSINDIRECTNVPROC __glewMultiDrawMeshTasksIndirectNV; - -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3FVNVPROC __glewUniformMatrix2x3fvNV; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4FVNVPROC __glewUniformMatrix2x4fvNV; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2FVNVPROC __glewUniformMatrix3x2fvNV; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4FVNVPROC __glewUniformMatrix3x4fvNV; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2FVNVPROC __glewUniformMatrix4x2fvNV; -GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3FVNVPROC __glewUniformMatrix4x3fvNV; - -GLEW_FUN_EXPORT PFNGLBEGINOCCLUSIONQUERYNVPROC __glewBeginOcclusionQueryNV; -GLEW_FUN_EXPORT PFNGLDELETEOCCLUSIONQUERIESNVPROC __glewDeleteOcclusionQueriesNV; -GLEW_FUN_EXPORT PFNGLENDOCCLUSIONQUERYNVPROC __glewEndOcclusionQueryNV; -GLEW_FUN_EXPORT PFNGLGENOCCLUSIONQUERIESNVPROC __glewGenOcclusionQueriesNV; -GLEW_FUN_EXPORT PFNGLGETOCCLUSIONQUERYIVNVPROC __glewGetOcclusionQueryivNV; -GLEW_FUN_EXPORT PFNGLGETOCCLUSIONQUERYUIVNVPROC __glewGetOcclusionQueryuivNV; -GLEW_FUN_EXPORT PFNGLISOCCLUSIONQUERYNVPROC __glewIsOcclusionQueryNV; - -GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC __glewProgramBufferParametersIivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC __glewProgramBufferParametersIuivNV; -GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC __glewProgramBufferParametersfvNV; - -GLEW_FUN_EXPORT PFNGLCOPYPATHNVPROC __glewCopyPathNV; -GLEW_FUN_EXPORT PFNGLCOVERFILLPATHINSTANCEDNVPROC __glewCoverFillPathInstancedNV; -GLEW_FUN_EXPORT PFNGLCOVERFILLPATHNVPROC __glewCoverFillPathNV; -GLEW_FUN_EXPORT PFNGLCOVERSTROKEPATHINSTANCEDNVPROC __glewCoverStrokePathInstancedNV; -GLEW_FUN_EXPORT PFNGLCOVERSTROKEPATHNVPROC __glewCoverStrokePathNV; -GLEW_FUN_EXPORT PFNGLDELETEPATHSNVPROC __glewDeletePathsNV; -GLEW_FUN_EXPORT PFNGLGENPATHSNVPROC __glewGenPathsNV; -GLEW_FUN_EXPORT PFNGLGETPATHCOLORGENFVNVPROC __glewGetPathColorGenfvNV; -GLEW_FUN_EXPORT PFNGLGETPATHCOLORGENIVNVPROC __glewGetPathColorGenivNV; -GLEW_FUN_EXPORT PFNGLGETPATHCOMMANDSNVPROC __glewGetPathCommandsNV; -GLEW_FUN_EXPORT PFNGLGETPATHCOORDSNVPROC __glewGetPathCoordsNV; -GLEW_FUN_EXPORT PFNGLGETPATHDASHARRAYNVPROC __glewGetPathDashArrayNV; -GLEW_FUN_EXPORT PFNGLGETPATHLENGTHNVPROC __glewGetPathLengthNV; -GLEW_FUN_EXPORT PFNGLGETPATHMETRICRANGENVPROC __glewGetPathMetricRangeNV; -GLEW_FUN_EXPORT PFNGLGETPATHMETRICSNVPROC __glewGetPathMetricsNV; -GLEW_FUN_EXPORT PFNGLGETPATHPARAMETERFVNVPROC __glewGetPathParameterfvNV; -GLEW_FUN_EXPORT PFNGLGETPATHPARAMETERIVNVPROC __glewGetPathParameterivNV; -GLEW_FUN_EXPORT PFNGLGETPATHSPACINGNVPROC __glewGetPathSpacingNV; -GLEW_FUN_EXPORT PFNGLGETPATHTEXGENFVNVPROC __glewGetPathTexGenfvNV; -GLEW_FUN_EXPORT PFNGLGETPATHTEXGENIVNVPROC __glewGetPathTexGenivNV; -GLEW_FUN_EXPORT PFNGLGETPROGRAMRESOURCEFVNVPROC __glewGetProgramResourcefvNV; -GLEW_FUN_EXPORT PFNGLINTERPOLATEPATHSNVPROC __glewInterpolatePathsNV; -GLEW_FUN_EXPORT PFNGLISPATHNVPROC __glewIsPathNV; -GLEW_FUN_EXPORT PFNGLISPOINTINFILLPATHNVPROC __glewIsPointInFillPathNV; -GLEW_FUN_EXPORT PFNGLISPOINTINSTROKEPATHNVPROC __glewIsPointInStrokePathNV; -GLEW_FUN_EXPORT PFNGLMATRIXLOAD3X2FNVPROC __glewMatrixLoad3x2fNV; -GLEW_FUN_EXPORT PFNGLMATRIXLOAD3X3FNVPROC __glewMatrixLoad3x3fNV; -GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSE3X3FNVPROC __glewMatrixLoadTranspose3x3fNV; -GLEW_FUN_EXPORT PFNGLMATRIXMULT3X2FNVPROC __glewMatrixMult3x2fNV; -GLEW_FUN_EXPORT PFNGLMATRIXMULT3X3FNVPROC __glewMatrixMult3x3fNV; -GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSE3X3FNVPROC __glewMatrixMultTranspose3x3fNV; -GLEW_FUN_EXPORT PFNGLPATHCOLORGENNVPROC __glewPathColorGenNV; -GLEW_FUN_EXPORT PFNGLPATHCOMMANDSNVPROC __glewPathCommandsNV; -GLEW_FUN_EXPORT PFNGLPATHCOORDSNVPROC __glewPathCoordsNV; -GLEW_FUN_EXPORT PFNGLPATHCOVERDEPTHFUNCNVPROC __glewPathCoverDepthFuncNV; -GLEW_FUN_EXPORT PFNGLPATHDASHARRAYNVPROC __glewPathDashArrayNV; -GLEW_FUN_EXPORT PFNGLPATHFOGGENNVPROC __glewPathFogGenNV; -GLEW_FUN_EXPORT PFNGLPATHGLYPHINDEXARRAYNVPROC __glewPathGlyphIndexArrayNV; -GLEW_FUN_EXPORT PFNGLPATHGLYPHINDEXRANGENVPROC __glewPathGlyphIndexRangeNV; -GLEW_FUN_EXPORT PFNGLPATHGLYPHRANGENVPROC __glewPathGlyphRangeNV; -GLEW_FUN_EXPORT PFNGLPATHGLYPHSNVPROC __glewPathGlyphsNV; -GLEW_FUN_EXPORT PFNGLPATHMEMORYGLYPHINDEXARRAYNVPROC __glewPathMemoryGlyphIndexArrayNV; -GLEW_FUN_EXPORT PFNGLPATHPARAMETERFNVPROC __glewPathParameterfNV; -GLEW_FUN_EXPORT PFNGLPATHPARAMETERFVNVPROC __glewPathParameterfvNV; -GLEW_FUN_EXPORT PFNGLPATHPARAMETERINVPROC __glewPathParameteriNV; -GLEW_FUN_EXPORT PFNGLPATHPARAMETERIVNVPROC __glewPathParameterivNV; -GLEW_FUN_EXPORT PFNGLPATHSTENCILDEPTHOFFSETNVPROC __glewPathStencilDepthOffsetNV; -GLEW_FUN_EXPORT PFNGLPATHSTENCILFUNCNVPROC __glewPathStencilFuncNV; -GLEW_FUN_EXPORT PFNGLPATHSTRINGNVPROC __glewPathStringNV; -GLEW_FUN_EXPORT PFNGLPATHSUBCOMMANDSNVPROC __glewPathSubCommandsNV; -GLEW_FUN_EXPORT PFNGLPATHSUBCOORDSNVPROC __glewPathSubCoordsNV; -GLEW_FUN_EXPORT PFNGLPATHTEXGENNVPROC __glewPathTexGenNV; -GLEW_FUN_EXPORT PFNGLPOINTALONGPATHNVPROC __glewPointAlongPathNV; -GLEW_FUN_EXPORT PFNGLPROGRAMPATHFRAGMENTINPUTGENNVPROC __glewProgramPathFragmentInputGenNV; -GLEW_FUN_EXPORT PFNGLSTENCILFILLPATHINSTANCEDNVPROC __glewStencilFillPathInstancedNV; -GLEW_FUN_EXPORT PFNGLSTENCILFILLPATHNVPROC __glewStencilFillPathNV; -GLEW_FUN_EXPORT PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC __glewStencilStrokePathInstancedNV; -GLEW_FUN_EXPORT PFNGLSTENCILSTROKEPATHNVPROC __glewStencilStrokePathNV; -GLEW_FUN_EXPORT PFNGLSTENCILTHENCOVERFILLPATHINSTANCEDNVPROC __glewStencilThenCoverFillPathInstancedNV; -GLEW_FUN_EXPORT PFNGLSTENCILTHENCOVERFILLPATHNVPROC __glewStencilThenCoverFillPathNV; -GLEW_FUN_EXPORT PFNGLSTENCILTHENCOVERSTROKEPATHINSTANCEDNVPROC __glewStencilThenCoverStrokePathInstancedNV; -GLEW_FUN_EXPORT PFNGLSTENCILTHENCOVERSTROKEPATHNVPROC __glewStencilThenCoverStrokePathNV; -GLEW_FUN_EXPORT PFNGLTRANSFORMPATHNVPROC __glewTransformPathNV; -GLEW_FUN_EXPORT PFNGLWEIGHTPATHSNVPROC __glewWeightPathsNV; - -GLEW_FUN_EXPORT PFNGLFLUSHPIXELDATARANGENVPROC __glewFlushPixelDataRangeNV; -GLEW_FUN_EXPORT PFNGLPIXELDATARANGENVPROC __glewPixelDataRangeNV; - -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERINVPROC __glewPointParameteriNV; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIVNVPROC __glewPointParameterivNV; - -GLEW_FUN_EXPORT PFNGLPOLYGONMODENVPROC __glewPolygonModeNV; - -GLEW_FUN_EXPORT PFNGLGETVIDEOI64VNVPROC __glewGetVideoi64vNV; -GLEW_FUN_EXPORT PFNGLGETVIDEOIVNVPROC __glewGetVideoivNV; -GLEW_FUN_EXPORT PFNGLGETVIDEOUI64VNVPROC __glewGetVideoui64vNV; -GLEW_FUN_EXPORT PFNGLGETVIDEOUIVNVPROC __glewGetVideouivNV; -GLEW_FUN_EXPORT PFNGLPRESENTFRAMEDUALFILLNVPROC __glewPresentFrameDualFillNV; -GLEW_FUN_EXPORT PFNGLPRESENTFRAMEKEYEDNVPROC __glewPresentFrameKeyedNV; - -GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTINDEXNVPROC __glewPrimitiveRestartIndexNV; -GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTNVPROC __glewPrimitiveRestartNV; - -GLEW_FUN_EXPORT PFNGLREADBUFFERNVPROC __glewReadBufferNV; - -GLEW_FUN_EXPORT PFNGLCOMBINERINPUTNVPROC __glewCombinerInputNV; -GLEW_FUN_EXPORT PFNGLCOMBINEROUTPUTNVPROC __glewCombinerOutputNV; -GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERFNVPROC __glewCombinerParameterfNV; -GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERFVNVPROC __glewCombinerParameterfvNV; -GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERINVPROC __glewCombinerParameteriNV; -GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERIVNVPROC __glewCombinerParameterivNV; -GLEW_FUN_EXPORT PFNGLFINALCOMBINERINPUTNVPROC __glewFinalCombinerInputNV; -GLEW_FUN_EXPORT PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC __glewGetCombinerInputParameterfvNV; -GLEW_FUN_EXPORT PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC __glewGetCombinerInputParameterivNV; -GLEW_FUN_EXPORT PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC __glewGetCombinerOutputParameterfvNV; -GLEW_FUN_EXPORT PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC __glewGetCombinerOutputParameterivNV; -GLEW_FUN_EXPORT PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC __glewGetFinalCombinerInputParameterfvNV; -GLEW_FUN_EXPORT PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC __glewGetFinalCombinerInputParameterivNV; - -GLEW_FUN_EXPORT PFNGLCOMBINERSTAGEPARAMETERFVNVPROC __glewCombinerStageParameterfvNV; -GLEW_FUN_EXPORT PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC __glewGetCombinerStageParameterfvNV; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERSAMPLELOCATIONSFVNVPROC __glewFramebufferSampleLocationsfvNV; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVNVPROC __glewNamedFramebufferSampleLocationsfvNV; -GLEW_FUN_EXPORT PFNGLRESOLVEDEPTHVALUESNVPROC __glewResolveDepthValuesNV; - -GLEW_FUN_EXPORT PFNGLSCISSOREXCLUSIVEARRAYVNVPROC __glewScissorExclusiveArrayvNV; -GLEW_FUN_EXPORT PFNGLSCISSOREXCLUSIVENVPROC __glewScissorExclusiveNV; - -GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERUI64VNVPROC __glewGetBufferParameterui64vNV; -GLEW_FUN_EXPORT PFNGLGETINTEGERUI64VNVPROC __glewGetIntegerui64vNV; -GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC __glewGetNamedBufferParameterui64vNV; -GLEW_FUN_EXPORT PFNGLISBUFFERRESIDENTNVPROC __glewIsBufferResidentNV; -GLEW_FUN_EXPORT PFNGLISNAMEDBUFFERRESIDENTNVPROC __glewIsNamedBufferResidentNV; -GLEW_FUN_EXPORT PFNGLMAKEBUFFERNONRESIDENTNVPROC __glewMakeBufferNonResidentNV; -GLEW_FUN_EXPORT PFNGLMAKEBUFFERRESIDENTNVPROC __glewMakeBufferResidentNV; -GLEW_FUN_EXPORT PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC __glewMakeNamedBufferNonResidentNV; -GLEW_FUN_EXPORT PFNGLMAKENAMEDBUFFERRESIDENTNVPROC __glewMakeNamedBufferResidentNV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMUI64NVPROC __glewProgramUniformui64NV; -GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMUI64VNVPROC __glewProgramUniformui64vNV; -GLEW_FUN_EXPORT PFNGLUNIFORMUI64NVPROC __glewUniformui64NV; -GLEW_FUN_EXPORT PFNGLUNIFORMUI64VNVPROC __glewUniformui64vNV; - -GLEW_FUN_EXPORT PFNGLBINDSHADINGRATEIMAGENVPROC __glewBindShadingRateImageNV; -GLEW_FUN_EXPORT PFNGLGETSHADINGRATEIMAGEPALETTENVPROC __glewGetShadingRateImagePaletteNV; -GLEW_FUN_EXPORT PFNGLGETSHADINGRATESAMPLELOCATIONIVNVPROC __glewGetShadingRateSampleLocationivNV; -GLEW_FUN_EXPORT PFNGLSHADINGRATEIMAGEBARRIERNVPROC __glewShadingRateImageBarrierNV; -GLEW_FUN_EXPORT PFNGLSHADINGRATEIMAGEPALETTENVPROC __glewShadingRateImagePaletteNV; -GLEW_FUN_EXPORT PFNGLSHADINGRATESAMPLEORDERCUSTOMNVPROC __glewShadingRateSampleOrderCustomNV; - -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DNVPROC __glewCompressedTexImage3DNV; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DNVPROC __glewCompressedTexSubImage3DNV; -GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DNVPROC __glewCopyTexSubImage3DNV; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERNVPROC __glewFramebufferTextureLayerNV; -GLEW_FUN_EXPORT PFNGLTEXIMAGE3DNVPROC __glewTexImage3DNV; -GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DNVPROC __glewTexSubImage3DNV; - -GLEW_FUN_EXPORT PFNGLTEXTUREBARRIERNVPROC __glewTextureBarrierNV; - -GLEW_FUN_EXPORT PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC __glewTexImage2DMultisampleCoverageNV; -GLEW_FUN_EXPORT PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC __glewTexImage3DMultisampleCoverageNV; -GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC __glewTextureImage2DMultisampleCoverageNV; -GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC __glewTextureImage2DMultisampleNV; -GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC __glewTextureImage3DMultisampleCoverageNV; -GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC __glewTextureImage3DMultisampleNV; - -GLEW_FUN_EXPORT PFNGLACTIVEVARYINGNVPROC __glewActiveVaryingNV; -GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKNVPROC __glewBeginTransformFeedbackNV; -GLEW_FUN_EXPORT PFNGLBINDBUFFERBASENVPROC __glewBindBufferBaseNV; -GLEW_FUN_EXPORT PFNGLBINDBUFFEROFFSETNVPROC __glewBindBufferOffsetNV; -GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGENVPROC __glewBindBufferRangeNV; -GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKNVPROC __glewEndTransformFeedbackNV; -GLEW_FUN_EXPORT PFNGLGETACTIVEVARYINGNVPROC __glewGetActiveVaryingNV; -GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC __glewGetTransformFeedbackVaryingNV; -GLEW_FUN_EXPORT PFNGLGETVARYINGLOCATIONNVPROC __glewGetVaryingLocationNV; -GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC __glewTransformFeedbackAttribsNV; -GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC __glewTransformFeedbackVaryingsNV; - -GLEW_FUN_EXPORT PFNGLBINDTRANSFORMFEEDBACKNVPROC __glewBindTransformFeedbackNV; -GLEW_FUN_EXPORT PFNGLDELETETRANSFORMFEEDBACKSNVPROC __glewDeleteTransformFeedbacksNV; -GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKNVPROC __glewDrawTransformFeedbackNV; -GLEW_FUN_EXPORT PFNGLGENTRANSFORMFEEDBACKSNVPROC __glewGenTransformFeedbacksNV; -GLEW_FUN_EXPORT PFNGLISTRANSFORMFEEDBACKNVPROC __glewIsTransformFeedbackNV; -GLEW_FUN_EXPORT PFNGLPAUSETRANSFORMFEEDBACKNVPROC __glewPauseTransformFeedbackNV; -GLEW_FUN_EXPORT PFNGLRESUMETRANSFORMFEEDBACKNVPROC __glewResumeTransformFeedbackNV; - -GLEW_FUN_EXPORT PFNGLVDPAUFININVPROC __glewVDPAUFiniNV; -GLEW_FUN_EXPORT PFNGLVDPAUGETSURFACEIVNVPROC __glewVDPAUGetSurfaceivNV; -GLEW_FUN_EXPORT PFNGLVDPAUINITNVPROC __glewVDPAUInitNV; -GLEW_FUN_EXPORT PFNGLVDPAUISSURFACENVPROC __glewVDPAUIsSurfaceNV; -GLEW_FUN_EXPORT PFNGLVDPAUMAPSURFACESNVPROC __glewVDPAUMapSurfacesNV; -GLEW_FUN_EXPORT PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC __glewVDPAURegisterOutputSurfaceNV; -GLEW_FUN_EXPORT PFNGLVDPAUREGISTERVIDEOSURFACENVPROC __glewVDPAURegisterVideoSurfaceNV; -GLEW_FUN_EXPORT PFNGLVDPAUSURFACEACCESSNVPROC __glewVDPAUSurfaceAccessNV; -GLEW_FUN_EXPORT PFNGLVDPAUUNMAPSURFACESNVPROC __glewVDPAUUnmapSurfacesNV; -GLEW_FUN_EXPORT PFNGLVDPAUUNREGISTERSURFACENVPROC __glewVDPAUUnregisterSurfaceNV; - -GLEW_FUN_EXPORT PFNGLVDPAUREGISTERVIDEOSURFACEWITHPICTURESTRUCTURENVPROC __glewVDPAURegisterVideoSurfaceWithPictureStructureNV; - -GLEW_FUN_EXPORT PFNGLFLUSHVERTEXARRAYRANGENVPROC __glewFlushVertexArrayRangeNV; -GLEW_FUN_EXPORT PFNGLVERTEXARRAYRANGENVPROC __glewVertexArrayRangeNV; - -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLI64VNVPROC __glewGetVertexAttribLi64vNV; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLUI64VNVPROC __glewGetVertexAttribLui64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1I64NVPROC __glewVertexAttribL1i64NV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1I64VNVPROC __glewVertexAttribL1i64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64NVPROC __glewVertexAttribL1ui64NV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64VNVPROC __glewVertexAttribL1ui64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2I64NVPROC __glewVertexAttribL2i64NV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2I64VNVPROC __glewVertexAttribL2i64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2UI64NVPROC __glewVertexAttribL2ui64NV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2UI64VNVPROC __glewVertexAttribL2ui64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3I64NVPROC __glewVertexAttribL3i64NV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3I64VNVPROC __glewVertexAttribL3i64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3UI64NVPROC __glewVertexAttribL3ui64NV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3UI64VNVPROC __glewVertexAttribL3ui64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4I64NVPROC __glewVertexAttribL4i64NV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4I64VNVPROC __glewVertexAttribL4i64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4UI64NVPROC __glewVertexAttribL4ui64NV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4UI64VNVPROC __glewVertexAttribL4ui64vNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLFORMATNVPROC __glewVertexAttribLFormatNV; - -GLEW_FUN_EXPORT PFNGLBUFFERADDRESSRANGENVPROC __glewBufferAddressRangeNV; -GLEW_FUN_EXPORT PFNGLCOLORFORMATNVPROC __glewColorFormatNV; -GLEW_FUN_EXPORT PFNGLEDGEFLAGFORMATNVPROC __glewEdgeFlagFormatNV; -GLEW_FUN_EXPORT PFNGLFOGCOORDFORMATNVPROC __glewFogCoordFormatNV; -GLEW_FUN_EXPORT PFNGLGETINTEGERUI64I_VNVPROC __glewGetIntegerui64i_vNV; -GLEW_FUN_EXPORT PFNGLINDEXFORMATNVPROC __glewIndexFormatNV; -GLEW_FUN_EXPORT PFNGLNORMALFORMATNVPROC __glewNormalFormatNV; -GLEW_FUN_EXPORT PFNGLSECONDARYCOLORFORMATNVPROC __glewSecondaryColorFormatNV; -GLEW_FUN_EXPORT PFNGLTEXCOORDFORMATNVPROC __glewTexCoordFormatNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBFORMATNVPROC __glewVertexAttribFormatNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIFORMATNVPROC __glewVertexAttribIFormatNV; -GLEW_FUN_EXPORT PFNGLVERTEXFORMATNVPROC __glewVertexFormatNV; - -GLEW_FUN_EXPORT PFNGLAREPROGRAMSRESIDENTNVPROC __glewAreProgramsResidentNV; -GLEW_FUN_EXPORT PFNGLBINDPROGRAMNVPROC __glewBindProgramNV; -GLEW_FUN_EXPORT PFNGLDELETEPROGRAMSNVPROC __glewDeleteProgramsNV; -GLEW_FUN_EXPORT PFNGLEXECUTEPROGRAMNVPROC __glewExecuteProgramNV; -GLEW_FUN_EXPORT PFNGLGENPROGRAMSNVPROC __glewGenProgramsNV; -GLEW_FUN_EXPORT PFNGLGETPROGRAMPARAMETERDVNVPROC __glewGetProgramParameterdvNV; -GLEW_FUN_EXPORT PFNGLGETPROGRAMPARAMETERFVNVPROC __glewGetProgramParameterfvNV; -GLEW_FUN_EXPORT PFNGLGETPROGRAMSTRINGNVPROC __glewGetProgramStringNV; -GLEW_FUN_EXPORT PFNGLGETPROGRAMIVNVPROC __glewGetProgramivNV; -GLEW_FUN_EXPORT PFNGLGETTRACKMATRIXIVNVPROC __glewGetTrackMatrixivNV; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVNVPROC __glewGetVertexAttribPointervNV; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVNVPROC __glewGetVertexAttribdvNV; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVNVPROC __glewGetVertexAttribfvNV; -GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVNVPROC __glewGetVertexAttribivNV; -GLEW_FUN_EXPORT PFNGLISPROGRAMNVPROC __glewIsProgramNV; -GLEW_FUN_EXPORT PFNGLLOADPROGRAMNVPROC __glewLoadProgramNV; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4DNVPROC __glewProgramParameter4dNV; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4DVNVPROC __glewProgramParameter4dvNV; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4FNVPROC __glewProgramParameter4fNV; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4FVNVPROC __glewProgramParameter4fvNV; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERS4DVNVPROC __glewProgramParameters4dvNV; -GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERS4FVNVPROC __glewProgramParameters4fvNV; -GLEW_FUN_EXPORT PFNGLREQUESTRESIDENTPROGRAMSNVPROC __glewRequestResidentProgramsNV; -GLEW_FUN_EXPORT PFNGLTRACKMATRIXNVPROC __glewTrackMatrixNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DNVPROC __glewVertexAttrib1dNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVNVPROC __glewVertexAttrib1dvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FNVPROC __glewVertexAttrib1fNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVNVPROC __glewVertexAttrib1fvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SNVPROC __glewVertexAttrib1sNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVNVPROC __glewVertexAttrib1svNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DNVPROC __glewVertexAttrib2dNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVNVPROC __glewVertexAttrib2dvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FNVPROC __glewVertexAttrib2fNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVNVPROC __glewVertexAttrib2fvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SNVPROC __glewVertexAttrib2sNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVNVPROC __glewVertexAttrib2svNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DNVPROC __glewVertexAttrib3dNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVNVPROC __glewVertexAttrib3dvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FNVPROC __glewVertexAttrib3fNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVNVPROC __glewVertexAttrib3fvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SNVPROC __glewVertexAttrib3sNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVNVPROC __glewVertexAttrib3svNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DNVPROC __glewVertexAttrib4dNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVNVPROC __glewVertexAttrib4dvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FNVPROC __glewVertexAttrib4fNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVNVPROC __glewVertexAttrib4fvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SNVPROC __glewVertexAttrib4sNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVNVPROC __glewVertexAttrib4svNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBNVPROC __glewVertexAttrib4ubNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVNVPROC __glewVertexAttrib4ubvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERNVPROC __glewVertexAttribPointerNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1DVNVPROC __glewVertexAttribs1dvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1FVNVPROC __glewVertexAttribs1fvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1SVNVPROC __glewVertexAttribs1svNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2DVNVPROC __glewVertexAttribs2dvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2FVNVPROC __glewVertexAttribs2fvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2SVNVPROC __glewVertexAttribs2svNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3DVNVPROC __glewVertexAttribs3dvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3FVNVPROC __glewVertexAttribs3fvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3SVNVPROC __glewVertexAttribs3svNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4DVNVPROC __glewVertexAttribs4dvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4FVNVPROC __glewVertexAttribs4fvNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4SVNVPROC __glewVertexAttribs4svNV; -GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4UBVNVPROC __glewVertexAttribs4ubvNV; - -GLEW_FUN_EXPORT PFNGLBEGINVIDEOCAPTURENVPROC __glewBeginVideoCaptureNV; -GLEW_FUN_EXPORT PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC __glewBindVideoCaptureStreamBufferNV; -GLEW_FUN_EXPORT PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC __glewBindVideoCaptureStreamTextureNV; -GLEW_FUN_EXPORT PFNGLENDVIDEOCAPTURENVPROC __glewEndVideoCaptureNV; -GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMDVNVPROC __glewGetVideoCaptureStreamdvNV; -GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMFVNVPROC __glewGetVideoCaptureStreamfvNV; -GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMIVNVPROC __glewGetVideoCaptureStreamivNV; -GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTUREIVNVPROC __glewGetVideoCaptureivNV; -GLEW_FUN_EXPORT PFNGLVIDEOCAPTURENVPROC __glewVideoCaptureNV; -GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC __glewVideoCaptureStreamParameterdvNV; -GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC __glewVideoCaptureStreamParameterfvNV; -GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC __glewVideoCaptureStreamParameterivNV; - -GLEW_FUN_EXPORT PFNGLDEPTHRANGEARRAYFVNVPROC __glewDepthRangeArrayfvNV; -GLEW_FUN_EXPORT PFNGLDEPTHRANGEINDEXEDFNVPROC __glewDepthRangeIndexedfNV; -GLEW_FUN_EXPORT PFNGLDISABLEINVPROC __glewDisableiNV; -GLEW_FUN_EXPORT PFNGLENABLEINVPROC __glewEnableiNV; -GLEW_FUN_EXPORT PFNGLGETFLOATI_VNVPROC __glewGetFloati_vNV; -GLEW_FUN_EXPORT PFNGLISENABLEDINVPROC __glewIsEnablediNV; -GLEW_FUN_EXPORT PFNGLSCISSORARRAYVNVPROC __glewScissorArrayvNV; -GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDNVPROC __glewScissorIndexedNV; -GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDVNVPROC __glewScissorIndexedvNV; -GLEW_FUN_EXPORT PFNGLVIEWPORTARRAYVNVPROC __glewViewportArrayvNV; -GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFNVPROC __glewViewportIndexedfNV; -GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFVNVPROC __glewViewportIndexedfvNV; - -GLEW_FUN_EXPORT PFNGLVIEWPORTSWIZZLENVPROC __glewViewportSwizzleNV; - -GLEW_FUN_EXPORT PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC __glewEGLImageTargetRenderbufferStorageOES; -GLEW_FUN_EXPORT PFNGLEGLIMAGETARGETTEXTURE2DOESPROC __glewEGLImageTargetTexture2DOES; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEOESPROC __glewBlendEquationSeparateOES; - -GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEOESPROC __glewBlendFuncSeparateOES; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONOESPROC __glewBlendEquationOES; - -GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATAOESPROC __glewCopyImageSubDataOES; - -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIOESPROC __glewBlendEquationSeparateiOES; -GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIOESPROC __glewBlendEquationiOES; -GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIOESPROC __glewBlendFuncSeparateiOES; -GLEW_FUN_EXPORT PFNGLBLENDFUNCIOESPROC __glewBlendFunciOES; -GLEW_FUN_EXPORT PFNGLCOLORMASKIOESPROC __glewColorMaskiOES; -GLEW_FUN_EXPORT PFNGLDISABLEIOESPROC __glewDisableiOES; -GLEW_FUN_EXPORT PFNGLENABLEIOESPROC __glewEnableiOES; -GLEW_FUN_EXPORT PFNGLISENABLEDIOESPROC __glewIsEnablediOES; - -GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFEROESPROC __glewBindFramebufferOES; -GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFEROESPROC __glewBindRenderbufferOES; -GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSOESPROC __glewCheckFramebufferStatusOES; -GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSOESPROC __glewDeleteFramebuffersOES; -GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSOESPROC __glewDeleteRenderbuffersOES; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFEROESPROC __glewFramebufferRenderbufferOES; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DOESPROC __glewFramebufferTexture2DOES; -GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSOESPROC __glewGenFramebuffersOES; -GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSOESPROC __glewGenRenderbuffersOES; -GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPOESPROC __glewGenerateMipmapOES; -GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC __glewGetFramebufferAttachmentParameterivOES; -GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVOESPROC __glewGetRenderbufferParameterivOES; -GLEW_FUN_EXPORT PFNGLISFRAMEBUFFEROESPROC __glewIsFramebufferOES; -GLEW_FUN_EXPORT PFNGLISRENDERBUFFEROESPROC __glewIsRenderbufferOES; -GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEOESPROC __glewRenderbufferStorageOES; - -GLEW_FUN_EXPORT PFNGLGETPROGRAMBINARYOESPROC __glewGetProgramBinaryOES; -GLEW_FUN_EXPORT PFNGLPROGRAMBINARYOESPROC __glewProgramBinaryOES; - -GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVOESPROC __glewGetBufferPointervOES; -GLEW_FUN_EXPORT PFNGLMAPBUFFEROESPROC __glewMapBufferOES; -GLEW_FUN_EXPORT PFNGLUNMAPBUFFEROESPROC __glewUnmapBufferOES; - -GLEW_FUN_EXPORT PFNGLCURRENTPALETTEMATRIXOESPROC __glewCurrentPaletteMatrixOES; -GLEW_FUN_EXPORT PFNGLMATRIXINDEXPOINTEROESPROC __glewMatrixIndexPointerOES; -GLEW_FUN_EXPORT PFNGLWEIGHTPOINTEROESPROC __glewWeightPointerOES; - -GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGOESPROC __glewMinSampleShadingOES; - -GLEW_FUN_EXPORT PFNGLCLEARDEPTHFOESPROC __glewClearDepthfOES; -GLEW_FUN_EXPORT PFNGLCLIPPLANEFOESPROC __glewClipPlanefOES; -GLEW_FUN_EXPORT PFNGLDEPTHRANGEFOESPROC __glewDepthRangefOES; -GLEW_FUN_EXPORT PFNGLFRUSTUMFOESPROC __glewFrustumfOES; -GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFOESPROC __glewGetClipPlanefOES; -GLEW_FUN_EXPORT PFNGLORTHOFOESPROC __glewOrthofOES; - -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DOESPROC __glewCompressedTexImage3DOES; -GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC __glewCompressedTexSubImage3DOES; -GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DOESPROC __glewCopyTexSubImage3DOES; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DOESPROC __glewFramebufferTexture3DOES; -GLEW_FUN_EXPORT PFNGLTEXIMAGE3DOESPROC __glewTexImage3DOES; -GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DOESPROC __glewTexSubImage3DOES; - -GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIIVOESPROC __glewGetSamplerParameterIivOES; -GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIUIVOESPROC __glewGetSamplerParameterIuivOES; -GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVOESPROC __glewGetTexParameterIivOES; -GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVOESPROC __glewGetTexParameterIuivOES; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIIVOESPROC __glewSamplerParameterIivOES; -GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIUIVOESPROC __glewSamplerParameterIuivOES; -GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVOESPROC __glewTexParameterIivOES; -GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVOESPROC __glewTexParameterIuivOES; - -GLEW_FUN_EXPORT PFNGLTEXBUFFEROESPROC __glewTexBufferOES; -GLEW_FUN_EXPORT PFNGLTEXBUFFERRANGEOESPROC __glewTexBufferRangeOES; - -GLEW_FUN_EXPORT PFNGLGETTEXGENFVOESPROC __glewGetTexGenfvOES; -GLEW_FUN_EXPORT PFNGLGETTEXGENIVOESPROC __glewGetTexGenivOES; -GLEW_FUN_EXPORT PFNGLGETTEXGENXVOESPROC __glewGetTexGenxvOES; -GLEW_FUN_EXPORT PFNGLTEXGENFOESPROC __glewTexGenfOES; -GLEW_FUN_EXPORT PFNGLTEXGENFVOESPROC __glewTexGenfvOES; -GLEW_FUN_EXPORT PFNGLTEXGENIOESPROC __glewTexGeniOES; -GLEW_FUN_EXPORT PFNGLTEXGENIVOESPROC __glewTexGenivOES; -GLEW_FUN_EXPORT PFNGLTEXGENXOESPROC __glewTexGenxOES; -GLEW_FUN_EXPORT PFNGLTEXGENXVOESPROC __glewTexGenxvOES; - -GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DMULTISAMPLEOESPROC __glewTexStorage3DMultisampleOES; - -GLEW_FUN_EXPORT PFNGLTEXTUREVIEWOESPROC __glewTextureViewOES; - -GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYOESPROC __glewBindVertexArrayOES; -GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSOESPROC __glewDeleteVertexArraysOES; -GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSOESPROC __glewGenVertexArraysOES; -GLEW_FUN_EXPORT PFNGLISVERTEXARRAYOESPROC __glewIsVertexArrayOES; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC __glewFramebufferTextureMultiviewOVR; -GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC __glewNamedFramebufferTextureMultiviewOVR; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREMULTISAMPLEMULTIVIEWOVRPROC __glewFramebufferTextureMultisampleMultiviewOVR; - -GLEW_FUN_EXPORT PFNGLALPHAFUNCQCOMPROC __glewAlphaFuncQCOM; - -GLEW_FUN_EXPORT PFNGLDISABLEDRIVERCONTROLQCOMPROC __glewDisableDriverControlQCOM; -GLEW_FUN_EXPORT PFNGLENABLEDRIVERCONTROLQCOMPROC __glewEnableDriverControlQCOM; -GLEW_FUN_EXPORT PFNGLGETDRIVERCONTROLSTRINGQCOMPROC __glewGetDriverControlStringQCOM; -GLEW_FUN_EXPORT PFNGLGETDRIVERCONTROLSQCOMPROC __glewGetDriverControlsQCOM; - -GLEW_FUN_EXPORT PFNGLEXTGETBUFFERPOINTERVQCOMPROC __glewExtGetBufferPointervQCOM; -GLEW_FUN_EXPORT PFNGLEXTGETBUFFERSQCOMPROC __glewExtGetBuffersQCOM; -GLEW_FUN_EXPORT PFNGLEXTGETFRAMEBUFFERSQCOMPROC __glewExtGetFramebuffersQCOM; -GLEW_FUN_EXPORT PFNGLEXTGETRENDERBUFFERSQCOMPROC __glewExtGetRenderbuffersQCOM; -GLEW_FUN_EXPORT PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC __glewExtGetTexLevelParameterivQCOM; -GLEW_FUN_EXPORT PFNGLEXTGETTEXSUBIMAGEQCOMPROC __glewExtGetTexSubImageQCOM; -GLEW_FUN_EXPORT PFNGLEXTGETTEXTURESQCOMPROC __glewExtGetTexturesQCOM; -GLEW_FUN_EXPORT PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC __glewExtTexObjectStateOverrideiQCOM; - -GLEW_FUN_EXPORT PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC __glewExtGetProgramBinarySourceQCOM; -GLEW_FUN_EXPORT PFNGLEXTGETPROGRAMSQCOMPROC __glewExtGetProgramsQCOM; -GLEW_FUN_EXPORT PFNGLEXTGETSHADERSQCOMPROC __glewExtGetShadersQCOM; -GLEW_FUN_EXPORT PFNGLEXTISPROGRAMBINARYQCOMPROC __glewExtIsProgramBinaryQCOM; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERFOVEATIONCONFIGQCOMPROC __glewFramebufferFoveationConfigQCOM; -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERFOVEATIONPARAMETERSQCOMPROC __glewFramebufferFoveationParametersQCOM; - -GLEW_FUN_EXPORT PFNGLFRAMEBUFFERFETCHBARRIERQCOMPROC __glewFramebufferFetchBarrierQCOM; - -GLEW_FUN_EXPORT PFNGLTEXTUREFOVEATIONPARAMETERSQCOMPROC __glewTextureFoveationParametersQCOM; - -GLEW_FUN_EXPORT PFNGLENDTILINGQCOMPROC __glewEndTilingQCOM; -GLEW_FUN_EXPORT PFNGLSTARTTILINGQCOMPROC __glewStartTilingQCOM; - -GLEW_FUN_EXPORT PFNGLALPHAFUNCXPROC __glewAlphaFuncx; -GLEW_FUN_EXPORT PFNGLCLEARCOLORXPROC __glewClearColorx; -GLEW_FUN_EXPORT PFNGLCLEARDEPTHXPROC __glewClearDepthx; -GLEW_FUN_EXPORT PFNGLCOLOR4XPROC __glewColor4x; -GLEW_FUN_EXPORT PFNGLDEPTHRANGEXPROC __glewDepthRangex; -GLEW_FUN_EXPORT PFNGLFOGXPROC __glewFogx; -GLEW_FUN_EXPORT PFNGLFOGXVPROC __glewFogxv; -GLEW_FUN_EXPORT PFNGLFRUSTUMFPROC __glewFrustumf; -GLEW_FUN_EXPORT PFNGLFRUSTUMXPROC __glewFrustumx; -GLEW_FUN_EXPORT PFNGLLIGHTMODELXPROC __glewLightModelx; -GLEW_FUN_EXPORT PFNGLLIGHTMODELXVPROC __glewLightModelxv; -GLEW_FUN_EXPORT PFNGLLIGHTXPROC __glewLightx; -GLEW_FUN_EXPORT PFNGLLIGHTXVPROC __glewLightxv; -GLEW_FUN_EXPORT PFNGLLINEWIDTHXPROC __glewLineWidthx; -GLEW_FUN_EXPORT PFNGLLOADMATRIXXPROC __glewLoadMatrixx; -GLEW_FUN_EXPORT PFNGLMATERIALXPROC __glewMaterialx; -GLEW_FUN_EXPORT PFNGLMATERIALXVPROC __glewMaterialxv; -GLEW_FUN_EXPORT PFNGLMULTMATRIXXPROC __glewMultMatrixx; -GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4XPROC __glewMultiTexCoord4x; -GLEW_FUN_EXPORT PFNGLNORMAL3XPROC __glewNormal3x; -GLEW_FUN_EXPORT PFNGLORTHOFPROC __glewOrthof; -GLEW_FUN_EXPORT PFNGLORTHOXPROC __glewOrthox; -GLEW_FUN_EXPORT PFNGLPOINTSIZEXPROC __glewPointSizex; -GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETXPROC __glewPolygonOffsetx; -GLEW_FUN_EXPORT PFNGLROTATEXPROC __glewRotatex; -GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEXPROC __glewSampleCoveragex; -GLEW_FUN_EXPORT PFNGLSCALEXPROC __glewScalex; -GLEW_FUN_EXPORT PFNGLTEXENVXPROC __glewTexEnvx; -GLEW_FUN_EXPORT PFNGLTEXENVXVPROC __glewTexEnvxv; -GLEW_FUN_EXPORT PFNGLTEXPARAMETERXPROC __glewTexParameterx; -GLEW_FUN_EXPORT PFNGLTRANSLATEXPROC __glewTranslatex; - -GLEW_FUN_EXPORT PFNGLCLIPPLANEFPROC __glewClipPlanef; -GLEW_FUN_EXPORT PFNGLCLIPPLANEXPROC __glewClipPlanex; -GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFPROC __glewGetClipPlanef; -GLEW_FUN_EXPORT PFNGLGETCLIPPLANEXPROC __glewGetClipPlanex; -GLEW_FUN_EXPORT PFNGLGETFIXEDVPROC __glewGetFixedv; -GLEW_FUN_EXPORT PFNGLGETLIGHTXVPROC __glewGetLightxv; -GLEW_FUN_EXPORT PFNGLGETMATERIALXVPROC __glewGetMaterialxv; -GLEW_FUN_EXPORT PFNGLGETTEXENVXVPROC __glewGetTexEnvxv; -GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERXVPROC __glewGetTexParameterxv; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERXPROC __glewPointParameterx; -GLEW_FUN_EXPORT PFNGLPOINTPARAMETERXVPROC __glewPointParameterxv; -GLEW_FUN_EXPORT PFNGLPOINTSIZEPOINTEROESPROC __glewPointSizePointerOES; -GLEW_FUN_EXPORT PFNGLTEXPARAMETERXVPROC __glewTexParameterxv; - -GLEW_FUN_EXPORT PFNGLERRORSTRINGREGALPROC __glewErrorStringREGAL; - -GLEW_FUN_EXPORT PFNGLGETEXTENSIONREGALPROC __glewGetExtensionREGAL; -GLEW_FUN_EXPORT PFNGLISSUPPORTEDREGALPROC __glewIsSupportedREGAL; - -GLEW_FUN_EXPORT PFNGLLOGMESSAGECALLBACKREGALPROC __glewLogMessageCallbackREGAL; - -GLEW_FUN_EXPORT PFNGLGETPROCADDRESSREGALPROC __glewGetProcAddressREGAL; - -GLEW_FUN_EXPORT PFNGLDETAILTEXFUNCSGISPROC __glewDetailTexFuncSGIS; -GLEW_FUN_EXPORT PFNGLGETDETAILTEXFUNCSGISPROC __glewGetDetailTexFuncSGIS; - -GLEW_FUN_EXPORT PFNGLFOGFUNCSGISPROC __glewFogFuncSGIS; -GLEW_FUN_EXPORT PFNGLGETFOGFUNCSGISPROC __glewGetFogFuncSGIS; - -GLEW_FUN_EXPORT PFNGLSAMPLEMASKSGISPROC __glewSampleMaskSGIS; -GLEW_FUN_EXPORT PFNGLSAMPLEPATTERNSGISPROC __glewSamplePatternSGIS; - -GLEW_FUN_EXPORT PFNGLINTERLEAVEDTEXTURECOORDSETSSGISPROC __glewInterleavedTextureCoordSetsSGIS; -GLEW_FUN_EXPORT PFNGLSELECTTEXTURECOORDSETSGISPROC __glewSelectTextureCoordSetSGIS; -GLEW_FUN_EXPORT PFNGLSELECTTEXTURESGISPROC __glewSelectTextureSGIS; -GLEW_FUN_EXPORT PFNGLSELECTTEXTURETRANSFORMSGISPROC __glewSelectTextureTransformSGIS; - -GLEW_FUN_EXPORT PFNGLMULTISAMPLESUBRECTPOSSGISPROC __glewMultisampleSubRectPosSGIS; - -GLEW_FUN_EXPORT PFNGLGETSHARPENTEXFUNCSGISPROC __glewGetSharpenTexFuncSGIS; -GLEW_FUN_EXPORT PFNGLSHARPENTEXFUNCSGISPROC __glewSharpenTexFuncSGIS; - -GLEW_FUN_EXPORT PFNGLTEXIMAGE4DSGISPROC __glewTexImage4DSGIS; -GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE4DSGISPROC __glewTexSubImage4DSGIS; - -GLEW_FUN_EXPORT PFNGLGETTEXFILTERFUNCSGISPROC __glewGetTexFilterFuncSGIS; -GLEW_FUN_EXPORT PFNGLTEXFILTERFUNCSGISPROC __glewTexFilterFuncSGIS; - -GLEW_FUN_EXPORT PFNGLASYNCMARKERSGIXPROC __glewAsyncMarkerSGIX; -GLEW_FUN_EXPORT PFNGLDELETEASYNCMARKERSSGIXPROC __glewDeleteAsyncMarkersSGIX; -GLEW_FUN_EXPORT PFNGLFINISHASYNCSGIXPROC __glewFinishAsyncSGIX; -GLEW_FUN_EXPORT PFNGLGENASYNCMARKERSSGIXPROC __glewGenAsyncMarkersSGIX; -GLEW_FUN_EXPORT PFNGLISASYNCMARKERSGIXPROC __glewIsAsyncMarkerSGIX; -GLEW_FUN_EXPORT PFNGLPOLLASYNCSGIXPROC __glewPollAsyncSGIX; - -GLEW_FUN_EXPORT PFNGLADDRESSSPACEPROC __glewAddressSpace; -GLEW_FUN_EXPORT PFNGLDATAPIPEPROC __glewDataPipe; - -GLEW_FUN_EXPORT PFNGLFLUSHRASTERSGIXPROC __glewFlushRasterSGIX; - -GLEW_FUN_EXPORT PFNGLFOGLAYERSSGIXPROC __glewFogLayersSGIX; -GLEW_FUN_EXPORT PFNGLGETFOGLAYERSSGIXPROC __glewGetFogLayersSGIX; - -GLEW_FUN_EXPORT PFNGLTEXTUREFOGSGIXPROC __glewTextureFogSGIX; - -GLEW_FUN_EXPORT PFNGLFRAGMENTCOLORMATERIALSGIXPROC __glewFragmentColorMaterialSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFSGIXPROC __glewFragmentLightModelfSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFVSGIXPROC __glewFragmentLightModelfvSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELISGIXPROC __glewFragmentLightModeliSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIVSGIXPROC __glewFragmentLightModelivSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFSGIXPROC __glewFragmentLightfSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFVSGIXPROC __glewFragmentLightfvSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTISGIXPROC __glewFragmentLightiSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIVSGIXPROC __glewFragmentLightivSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFSGIXPROC __glewFragmentMaterialfSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFVSGIXPROC __glewFragmentMaterialfvSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALISGIXPROC __glewFragmentMaterialiSGIX; -GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIVSGIXPROC __glewFragmentMaterialivSGIX; -GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTFVSGIXPROC __glewGetFragmentLightfvSGIX; -GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTIVSGIXPROC __glewGetFragmentLightivSGIX; -GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALFVSGIXPROC __glewGetFragmentMaterialfvSGIX; -GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALIVSGIXPROC __glewGetFragmentMaterialivSGIX; - -GLEW_FUN_EXPORT PFNGLFRAMEZOOMSGIXPROC __glewFrameZoomSGIX; - -GLEW_FUN_EXPORT PFNGLIGLOOINTERFACESGIXPROC __glewIglooInterfaceSGIX; - -GLEW_FUN_EXPORT PFNGLALLOCMPEGPREDICTORSSGIXPROC __glewAllocMPEGPredictorsSGIX; -GLEW_FUN_EXPORT PFNGLDELETEMPEGPREDICTORSSGIXPROC __glewDeleteMPEGPredictorsSGIX; -GLEW_FUN_EXPORT PFNGLGENMPEGPREDICTORSSGIXPROC __glewGenMPEGPredictorsSGIX; -GLEW_FUN_EXPORT PFNGLGETMPEGPARAMETERFVSGIXPROC __glewGetMPEGParameterfvSGIX; -GLEW_FUN_EXPORT PFNGLGETMPEGPARAMETERIVSGIXPROC __glewGetMPEGParameterivSGIX; -GLEW_FUN_EXPORT PFNGLGETMPEGPREDICTORSGIXPROC __glewGetMPEGPredictorSGIX; -GLEW_FUN_EXPORT PFNGLGETMPEGQUANTTABLEUBVPROC __glewGetMPEGQuantTableubv; -GLEW_FUN_EXPORT PFNGLISMPEGPREDICTORSGIXPROC __glewIsMPEGPredictorSGIX; -GLEW_FUN_EXPORT PFNGLMPEGPREDICTORSGIXPROC __glewMPEGPredictorSGIX; -GLEW_FUN_EXPORT PFNGLMPEGQUANTTABLEUBVPROC __glewMPEGQuantTableubv; -GLEW_FUN_EXPORT PFNGLSWAPMPEGPREDICTORSSGIXPROC __glewSwapMPEGPredictorsSGIX; - -GLEW_FUN_EXPORT PFNGLGETNONLINLIGHTFVSGIXPROC __glewGetNonlinLightfvSGIX; -GLEW_FUN_EXPORT PFNGLGETNONLINMATERIALFVSGIXPROC __glewGetNonlinMaterialfvSGIX; -GLEW_FUN_EXPORT PFNGLNONLINLIGHTFVSGIXPROC __glewNonlinLightfvSGIX; -GLEW_FUN_EXPORT PFNGLNONLINMATERIALFVSGIXPROC __glewNonlinMaterialfvSGIX; - -GLEW_FUN_EXPORT PFNGLPIXELTEXGENSGIXPROC __glewPixelTexGenSGIX; - -GLEW_FUN_EXPORT PFNGLDEFORMSGIXPROC __glewDeformSGIX; -GLEW_FUN_EXPORT PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC __glewLoadIdentityDeformationMapSGIX; - -GLEW_FUN_EXPORT PFNGLMESHBREADTHSGIXPROC __glewMeshBreadthSGIX; -GLEW_FUN_EXPORT PFNGLMESHSTRIDESGIXPROC __glewMeshStrideSGIX; - -GLEW_FUN_EXPORT PFNGLREFERENCEPLANESGIXPROC __glewReferencePlaneSGIX; - -GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERFSGIXPROC __glewSpriteParameterfSGIX; -GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERFVSGIXPROC __glewSpriteParameterfvSGIX; -GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERISGIXPROC __glewSpriteParameteriSGIX; -GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERIVSGIXPROC __glewSpriteParameterivSGIX; - -GLEW_FUN_EXPORT PFNGLTAGSAMPLEBUFFERSGIXPROC __glewTagSampleBufferSGIX; - -GLEW_FUN_EXPORT PFNGLGETVECTOROPERATIONSGIXPROC __glewGetVectorOperationSGIX; -GLEW_FUN_EXPORT PFNGLVECTOROPERATIONSGIXPROC __glewVectorOperationSGIX; - -GLEW_FUN_EXPORT PFNGLAREVERTEXARRAYSRESIDENTSGIXPROC __glewAreVertexArraysResidentSGIX; -GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYSGIXPROC __glewBindVertexArraySGIX; -GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSSGIXPROC __glewDeleteVertexArraysSGIX; -GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSSGIXPROC __glewGenVertexArraysSGIX; -GLEW_FUN_EXPORT PFNGLISVERTEXARRAYSGIXPROC __glewIsVertexArraySGIX; -GLEW_FUN_EXPORT PFNGLPRIORITIZEVERTEXARRAYSSGIXPROC __glewPrioritizeVertexArraysSGIX; - -GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERFVSGIPROC __glewColorTableParameterfvSGI; -GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERIVSGIPROC __glewColorTableParameterivSGI; -GLEW_FUN_EXPORT PFNGLCOLORTABLESGIPROC __glewColorTableSGI; -GLEW_FUN_EXPORT PFNGLCOPYCOLORTABLESGIPROC __glewCopyColorTableSGI; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVSGIPROC __glewGetColorTableParameterfvSGI; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVSGIPROC __glewGetColorTableParameterivSGI; -GLEW_FUN_EXPORT PFNGLGETCOLORTABLESGIPROC __glewGetColorTableSGI; - -GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERFVSGIPROC __glewGetPixelTransformParameterfvSGI; -GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERIVSGIPROC __glewGetPixelTransformParameterivSGI; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFSGIPROC __glewPixelTransformParameterfSGI; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFVSGIPROC __glewPixelTransformParameterfvSGI; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERISGIPROC __glewPixelTransformParameteriSGI; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIVSGIPROC __glewPixelTransformParameterivSGI; -GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMSGIPROC __glewPixelTransformSGI; - -GLEW_FUN_EXPORT PFNGLFINISHTEXTURESUNXPROC __glewFinishTextureSUNX; - -GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORBSUNPROC __glewGlobalAlphaFactorbSUN; -GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORDSUNPROC __glewGlobalAlphaFactordSUN; -GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORFSUNPROC __glewGlobalAlphaFactorfSUN; -GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORISUNPROC __glewGlobalAlphaFactoriSUN; -GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORSSUNPROC __glewGlobalAlphaFactorsSUN; -GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUBSUNPROC __glewGlobalAlphaFactorubSUN; -GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUISUNPROC __glewGlobalAlphaFactoruiSUN; -GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUSSUNPROC __glewGlobalAlphaFactorusSUN; - -GLEW_FUN_EXPORT PFNGLREADVIDEOPIXELSSUNPROC __glewReadVideoPixelsSUN; - -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEPOINTERSUNPROC __glewReplacementCodePointerSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUBSUNPROC __glewReplacementCodeubSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUBVSUNPROC __glewReplacementCodeubvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUISUNPROC __glewReplacementCodeuiSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVSUNPROC __glewReplacementCodeuivSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUSSUNPROC __glewReplacementCodeusSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUSVSUNPROC __glewReplacementCodeusvSUN; - -GLEW_FUN_EXPORT PFNGLCOLOR3FVERTEX3FSUNPROC __glewColor3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLCOLOR3FVERTEX3FVSUNPROC __glewColor3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewColor4fNormal3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewColor4fNormal3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX2FSUNPROC __glewColor4ubVertex2fSUN; -GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX2FVSUNPROC __glewColor4ubVertex2fvSUN; -GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX3FSUNPROC __glewColor4ubVertex3fSUN; -GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX3FVSUNPROC __glewColor4ubVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLNORMAL3FVERTEX3FSUNPROC __glewNormal3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLNORMAL3FVERTEX3FVSUNPROC __glewNormal3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC __glewReplacementCodeuiColor3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC __glewReplacementCodeuiColor4ubVertex3fSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC __glewReplacementCodeuiColor4ubVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiNormal3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiNormal3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC __glewReplacementCodeuiVertex3fSUN; -GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC __glewReplacementCodeuiVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC __glewTexCoord2fColor3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC __glewTexCoord2fColor3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC __glewTexCoord2fColor4ubVertex3fSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC __glewTexCoord2fColor4ubVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fNormal3fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fNormal3fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FVERTEX3FSUNPROC __glewTexCoord2fVertex3fSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD2FVERTEX3FVSUNPROC __glewTexCoord2fVertex3fvSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fvSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD4FVERTEX4FSUNPROC __glewTexCoord4fVertex4fSUN; -GLEW_FUN_EXPORT PFNGLTEXCOORD4FVERTEX4FVSUNPROC __glewTexCoord4fVertex4fvSUN; - -GLEW_FUN_EXPORT PFNGLADDSWAPHINTRECTWINPROC __glewAddSwapHintRectWIN; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_1; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2_1; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_3; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_4; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_5; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_2_0; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_2_1; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_0; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_1; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_2; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_3; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_0; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_1; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_2; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_3; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_4; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_5; -GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_6; -GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_tbuffer; -GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_texture_compression_FXT1; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_blend_minmax_factor; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_compressed_3DC_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_compressed_ATC_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_conservative_depth; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_debug_output; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_depth_clamp_separate; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_draw_buffers_blend; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_framebuffer_multisample_advanced; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_framebuffer_sample_positions; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gcn_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gpu_shader_half_float; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gpu_shader_half_float_fetch; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gpu_shader_int16; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_gpu_shader_int64; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_interleaved_elements; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_multi_draw_indirect; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_name_gen_delete; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_occlusion_query_event; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_performance_monitor; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_pinned_memory; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_program_binary_Z400; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_query_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_sample_positions; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_seamless_cubemap_per_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_atomic_counter_ops; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_ballot; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_explicit_vertex_parameter; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_image_load_store_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_stencil_export; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_stencil_value_export; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_trinary_minmax; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_sparse_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_stencil_operation_extended; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_texture_gather_bias_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_texture_texture4; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_transform_feedback3_lines_triangles; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_transform_feedback4; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_vertex_shader_layer; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_vertex_shader_tessellator; -GLEW_VAR_EXPORT GLboolean __GLEW_AMD_vertex_shader_viewport_index; -GLEW_VAR_EXPORT GLboolean __GLEW_ANDROID_extension_pack_es31a; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_depth_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_framebuffer_blit; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_framebuffer_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_instanced_arrays; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_pack_reverse_row_order; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_program_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_texture_compression_dxt1; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_texture_compression_dxt3; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_texture_compression_dxt5; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_texture_usage; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_timer_query; -GLEW_VAR_EXPORT GLboolean __GLEW_ANGLE_translated_shader_source; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_aux_depth_stencil; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_client_storage; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_clip_distance; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_color_buffer_packed_float; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_copy_texture_levels; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_element_array; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_fence; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_float_pixels; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_flush_buffer_range; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_framebuffer_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_object_purgeable; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_pixel_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_rgb_422; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_row_bytes; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_specular_vector; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_sync; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_2D_limited_npot; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_format_BGRA8888; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_max_level; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_packed_float; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_range; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_transform_hint; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_array_object; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_array_range; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_program_evaluators; -GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_ycbcr_422; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES2_compatibility; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES3_1_compatibility; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES3_2_compatibility; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES3_compatibility; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_arrays_of_arrays; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_base_instance; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_bindless_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_blend_func_extended; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_buffer_storage; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_cl_event; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_clear_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_clear_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_clip_control; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_color_buffer_float; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compatibility; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compressed_texture_pixel_storage; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compute_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compute_variable_group_size; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_conditional_render_inverted; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_conservative_depth; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_copy_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_copy_image; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_cull_distance; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_debug_output; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_buffer_float; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_derivative_control; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_direct_state_access; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_buffers; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_buffers_blend; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_elements_base_vertex; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_indirect; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_instanced; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_enhanced_layouts; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_explicit_attrib_location; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_explicit_uniform_location; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_coord_conventions; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_layer_viewport; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_program; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_program_shadow; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_shader_interlock; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_no_attachments; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_sRGB; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_geometry_shader4; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_get_program_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_get_texture_sub_image; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gl_spirv; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader5; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader_fp64; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader_int64; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_half_float_pixel; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_half_float_vertex; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_imaging; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_indirect_parameters; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_instanced_arrays; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_internalformat_query; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_internalformat_query2; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_invalidate_subdata; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_map_buffer_alignment; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_map_buffer_range; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_matrix_palette; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multi_bind; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multi_draw_indirect; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multitexture; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_occlusion_query; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_occlusion_query2; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_parallel_shader_compile; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_pipeline_statistics_query; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_pixel_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_point_parameters; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_point_sprite; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_polygon_offset_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_post_depth_coverage; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_program_interface_query; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_provoking_vertex; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_query_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robust_buffer_access_behavior; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robustness; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robustness_application_isolation; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robustness_share_group_isolation; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sample_locations; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sample_shading; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sampler_objects; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_seamless_cube_map; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_seamless_cubemap_per_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_separate_shader_objects; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_atomic_counter_ops; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_atomic_counters; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_ballot; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_bit_encoding; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_clock; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_draw_parameters; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_group_vote; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_image_load_store; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_image_size; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_objects; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_precision; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_stencil_export; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_storage_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_subroutine; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_texture_image_samples; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_texture_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_viewport_layer_array; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_100; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_420pack; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_include; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_packing; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shadow; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shadow_ambient; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sparse_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sparse_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sparse_texture2; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sparse_texture_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_spirv_extensions; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_stencil_texturing; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sync; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_tessellation_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_barrier; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_border_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_object_rgb32; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_range; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression_bptc; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression_rgtc; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_cube_map; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_cube_map_array; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_add; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_combine; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_crossbar; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_dot3; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_filter_anisotropic; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_filter_minmax; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_float; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_gather; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_mirror_clamp_to_edge; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_mirrored_repeat; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_non_power_of_two; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_query_levels; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_query_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rectangle; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rg; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rgb10_a2ui; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_stencil8; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_storage; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_storage_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_swizzle; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_view; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_timer_query; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback2; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback3; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback_instanced; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback_overflow_query; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transpose_matrix; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_uniform_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_array_bgra; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_array_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_attrib_64bit; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_attrib_binding; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_blend; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_program; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_type_10f_11f_11f_rev; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_type_2_10_10_10_rev; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_viewport_array; -GLEW_VAR_EXPORT GLboolean __GLEW_ARB_window_pos; -GLEW_VAR_EXPORT GLboolean __GLEW_ARM_mali_program_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_ARM_mali_shader_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_ARM_rgba8; -GLEW_VAR_EXPORT GLboolean __GLEW_ARM_shader_framebuffer_fetch; -GLEW_VAR_EXPORT GLboolean __GLEW_ARM_shader_framebuffer_fetch_depth_stencil; -GLEW_VAR_EXPORT GLboolean __GLEW_ARM_texture_unnormalized_coordinates; -GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_point_sprites; -GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_texture_env_combine3; -GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_texture_env_route; -GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_vertex_shader_output_point_size; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_draw_buffers; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_element_array; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_envmap_bumpmap; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_fragment_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_map_object_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_meminfo; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_pn_triangles; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_separate_stencil; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_shader_texture_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_text_fragment_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_compression_3dc; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_env_combine3; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_float; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_mirror_once; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_array_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_attrib_array_object; -GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_streams; -GLEW_VAR_EXPORT GLboolean __GLEW_DMP_program_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_DMP_shader_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_422_pixels; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_Cg_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_EGL_image_array; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_EGL_image_external_wrap_modes; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_EGL_image_storage; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_EGL_sync; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_YUV_target; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_abgr; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_base_instance; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_bgra; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_bindable_uniform; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_color; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_equation_separate; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_func_extended; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_func_separate; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_logic_op; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_minmax; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_subtract; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_buffer_storage; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clear_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clip_control; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clip_cull_distance; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clip_volume_hint; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_cmyka; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_color_buffer_float; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_color_buffer_half_float; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_color_subtable; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_compiled_vertex_array; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_compressed_ETC1_RGB8_sub_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_conservative_depth; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_convolution; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_coordinate_frame; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_copy_image; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_copy_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_cull_vertex; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_debug_label; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_debug_marker; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_depth_bounds_test; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_depth_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_direct_state_access; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_discard_framebuffer; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_disjoint_timer_query; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_buffers; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_buffers2; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_buffers_indexed; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_elements_base_vertex; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_instanced; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_range_elements; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_transform_feedback; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_external_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_float_blend; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_fog_coord; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_frag_depth; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_fragment_lighting; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_blit; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_multisample_blit_scaled; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_sRGB; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_geometry_point_size; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_geometry_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_geometry_shader4; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_program_parameters; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_shader4; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_shader5; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_histogram; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_array_formats; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_func; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_material; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_instanced_arrays; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_light_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_map_buffer_range; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_memory_object; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_memory_object_fd; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_memory_object_win32; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_misc_attribute; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multi_draw_arrays; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multi_draw_indirect; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiple_textures; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisample_compatibility; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisampled_render_to_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisampled_render_to_texture2; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiview_draw_buffers; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiview_tessellation_geometry_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiview_texture_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multiview_timer_query; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_occlusion_query_boolean; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_depth_stencil; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_float; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_pixels; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_paletted_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_transform; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_transform_color_table; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_point_parameters; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_polygon_offset; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_polygon_offset_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_post_depth_coverage; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_primitive_bounding_box; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_protected_textures; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_provoking_vertex; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pvrtc_sRGB; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_raster_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_read_format_bgra; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_render_snorm; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_rescale_normal; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_robustness; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_sRGB; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_sRGB_write_control; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_scene_marker; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_secondary_color; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_semaphore; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_semaphore_fd; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_semaphore_win32; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_separate_shader_objects; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_separate_specular_color; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_framebuffer_fetch; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_framebuffer_fetch_non_coherent; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_group_vote; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_image_load_formatted; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_image_load_store; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_implicit_conversions; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_integer_mix; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_io_blocks; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_non_constant_global_initializers; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_pixel_local_storage; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_pixel_local_storage2; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_texture_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shadow_funcs; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shadow_samplers; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shared_texture_palette; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_sparse_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_sparse_texture2; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_static_vertex_array; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_clear_tag; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_two_side; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_wrap; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_subtexture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_tessellation_point_size; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_tessellation_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture3D; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_array; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_border_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_astc_decode_mode; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_astc_decode_mode_rgb9e5; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_bptc; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_dxt1; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_latc; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_rgtc; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_s3tc; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_s3tc_srgb; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_cube_map; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_cube_map_array; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_edge_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_add; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_combine; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_dot3; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_filter_anisotropic; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_filter_minmax; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_format_BGRA8888; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_format_sRGB_override; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_integer; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_lod_bias; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_mirror_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_mirror_clamp_to_edge; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_norm16; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_object; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_perturb_normal; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_query_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_rectangle; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_rg; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB_R8; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB_RG8; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB_decode; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_shadow_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_shared_exponent; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_snorm; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_storage; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_swizzle; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_type_2_10_10_10_REV; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_view; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_timer_query; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_transform_feedback; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_unpack_subimage; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array_bgra; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array_setXXX; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_attrib_64bit; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_weighting; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_win32_keyed_mutex; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_window_rectangles; -GLEW_VAR_EXPORT GLboolean __GLEW_EXT_x11_sync_object; -GLEW_VAR_EXPORT GLboolean __GLEW_FJ_shader_binary_GCCSO; -GLEW_VAR_EXPORT GLboolean __GLEW_GREMEDY_frame_terminator; -GLEW_VAR_EXPORT GLboolean __GLEW_GREMEDY_string_marker; -GLEW_VAR_EXPORT GLboolean __GLEW_HP_convolution_border_modes; -GLEW_VAR_EXPORT GLboolean __GLEW_HP_image_transform; -GLEW_VAR_EXPORT GLboolean __GLEW_HP_occlusion_test; -GLEW_VAR_EXPORT GLboolean __GLEW_HP_texture_lighting; -GLEW_VAR_EXPORT GLboolean __GLEW_IBM_cull_vertex; -GLEW_VAR_EXPORT GLboolean __GLEW_IBM_multimode_draw_arrays; -GLEW_VAR_EXPORT GLboolean __GLEW_IBM_rasterpos_clip; -GLEW_VAR_EXPORT GLboolean __GLEW_IBM_static_data; -GLEW_VAR_EXPORT GLboolean __GLEW_IBM_texture_mirrored_repeat; -GLEW_VAR_EXPORT GLboolean __GLEW_IBM_vertex_array_lists; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_bindless_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_framebuffer_downsample; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_multisampled_render_to_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_program_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_read_format; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_shader_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_texture_compression_pvrtc; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_texture_compression_pvrtc2; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_texture_env_enhanced_fixed_function; -GLEW_VAR_EXPORT GLboolean __GLEW_IMG_texture_filter_cubic; -GLEW_VAR_EXPORT GLboolean __GLEW_INGR_color_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_INGR_interlace_read; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_blackhole_render; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_conservative_rasterization; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_fragment_shader_ordering; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_framebuffer_CMAA; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_map_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_parallel_arrays; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_performance_query; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_shader_integer_functions2; -GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_texture_scissor; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_blend_equation_advanced; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_blend_equation_advanced_coherent; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_context_flush_control; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_debug; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_no_error; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_parallel_shader_compile; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_robust_buffer_access_behavior; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_robustness; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_shader_subgroup; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_texture_compression_astc_hdr; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_texture_compression_astc_ldr; -GLEW_VAR_EXPORT GLboolean __GLEW_KHR_texture_compression_astc_sliced_3d; -GLEW_VAR_EXPORT GLboolean __GLEW_KTX_buffer_region; -GLEW_VAR_EXPORT GLboolean __GLEW_MESAX_texture_stack; -GLEW_VAR_EXPORT GLboolean __GLEW_MESA_framebuffer_flip_y; -GLEW_VAR_EXPORT GLboolean __GLEW_MESA_pack_invert; -GLEW_VAR_EXPORT GLboolean __GLEW_MESA_program_binary_formats; -GLEW_VAR_EXPORT GLboolean __GLEW_MESA_resize_buffers; -GLEW_VAR_EXPORT GLboolean __GLEW_MESA_shader_integer_functions; -GLEW_VAR_EXPORT GLboolean __GLEW_MESA_tile_raster_order; -GLEW_VAR_EXPORT GLboolean __GLEW_MESA_window_pos; -GLEW_VAR_EXPORT GLboolean __GLEW_MESA_ycbcr_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_NVX_blend_equation_advanced_multi_draw_buffers; -GLEW_VAR_EXPORT GLboolean __GLEW_NVX_conditional_render; -GLEW_VAR_EXPORT GLboolean __GLEW_NVX_gpu_memory_info; -GLEW_VAR_EXPORT GLboolean __GLEW_NVX_gpu_multicast2; -GLEW_VAR_EXPORT GLboolean __GLEW_NVX_linked_gpu_multicast; -GLEW_VAR_EXPORT GLboolean __GLEW_NVX_progress_fence; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_3dvision_settings; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_EGL_stream_consumer_external; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_alpha_to_coverage_dither_control; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_bgr; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_bindless_multi_draw_indirect; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_bindless_multi_draw_indirect_count; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_bindless_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_equation_advanced; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_equation_advanced_coherent; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_minmax_factor; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_square; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_clip_space_w_scaling; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_command_list; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_compute_program5; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_compute_shader_derivatives; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_conditional_render; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster_dilate; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster_pre_snap; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster_pre_snap_triangles; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_conservative_raster_underestimation; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_depth_to_color; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_image; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_deep_texture3D; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_buffer_float; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_nonlinear; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_range_unclamped; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_draw_buffers; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_draw_instanced; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_draw_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_draw_vulkan_image; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_evaluators; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_explicit_attrib_location; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_explicit_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fbo_color_attachments; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fence; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fill_rectangle; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_float_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fog_distance; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_coverage_to_color; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program4; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program_option; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_shader_barycentric; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_shader_interlock; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_blit; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_mixed_samples; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_multisample_coverage; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_generate_mipmap_sRGB; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_program4; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_shader4; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_shader_passthrough; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_multicast; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program4; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program5; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program5_mem_extended; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program_fp64; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_shader5; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_half_float; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_image_formats; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_instanced_arrays; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_internalformat_sample_query; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_light_max_exponent; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_memory_attachment; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_mesh_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_coverage; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_filter_hint; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_non_square_matrices; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_occlusion_query; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_pack_subimage; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_packed_depth_stencil; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_packed_float; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_packed_float_linear; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_parameter_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_parameter_buffer_object2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_path_rendering; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_path_rendering_shared_edge; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_pixel_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_pixel_data_range; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_platform_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_point_sprite; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_polygon_mode; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_present_video; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_primitive_restart; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_query_resource_tag; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_buffer_front; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_depth; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_depth_stencil; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_read_stencil; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_register_combiners; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_register_combiners2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_representative_fragment_test; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_robustness_video_memory_purge; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_sRGB_formats; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_sample_locations; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_sample_mask_override_coverage; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_scissor_exclusive; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_counters; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_float; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_float64; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_fp16_vector; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_atomic_int64; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_buffer_load; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_noperspective_interpolation; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_storage_buffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_subgroup_partitioned; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_texture_footprint; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_thread_group; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_thread_shuffle; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shading_rate_image; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shadow_samplers_array; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_shadow_samplers_cube; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_stereo_view_rendering; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_tessellation_program5; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texgen_emboss; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texgen_reflection; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_array; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_barrier; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_border_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_latc; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_s3tc; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_s3tc_update; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_vtc; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_env_combine4; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_expand_normal; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_npot_2D_mipmap; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_rectangle; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_rectangle_compressed; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader3; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_uniform_buffer_unified_memory; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vdpau_interop; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vdpau_interop2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_array_range; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_array_range2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_attrib_integer_64bit; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_buffer_unified_memory; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program1_1; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program2_option; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program3; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program4; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_video_capture; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_viewport_array; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_viewport_array2; -GLEW_VAR_EXPORT GLboolean __GLEW_NV_viewport_swizzle; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_EGL_image; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_EGL_image_external; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_EGL_image_external_essl3; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_blend_equation_separate; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_blend_func_separate; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_blend_subtract; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_byte_coordinates; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_compressed_ETC1_RGB8_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_compressed_paletted_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_copy_image; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_depth24; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_depth32; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_depth_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_depth_texture_cube_map; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_draw_buffers_indexed; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_draw_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_element_index_uint; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_extended_matrix_palette; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_fbo_render_mipmap; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_fragment_precision_high; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_framebuffer_object; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_geometry_point_size; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_geometry_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_get_program_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_gpu_shader5; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_mapbuffer; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_matrix_get; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_matrix_palette; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_packed_depth_stencil; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_point_size_array; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_point_sprite; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_read_format; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_required_internalformat; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_rgb8_rgba8; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_sample_shading; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_sample_variables; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_shader_image_atomic; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_shader_io_blocks; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_shader_multisample_interpolation; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_single_precision; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_standard_derivatives; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_stencil1; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_stencil4; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_stencil8; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_surfaceless_context; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_tessellation_point_size; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_tessellation_shader; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_3D; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_border_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_compression_astc; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_cube_map; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_cube_map_array; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_env_crossbar; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_mirrored_repeat; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_npot; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_stencil8; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_storage_multisample_2d_array; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_texture_view; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_vertex_array_object; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_vertex_half_float; -GLEW_VAR_EXPORT GLboolean __GLEW_OES_vertex_type_10_10_10_2; -GLEW_VAR_EXPORT GLboolean __GLEW_OML_interlace; -GLEW_VAR_EXPORT GLboolean __GLEW_OML_resample; -GLEW_VAR_EXPORT GLboolean __GLEW_OML_subsample; -GLEW_VAR_EXPORT GLboolean __GLEW_OVR_multiview; -GLEW_VAR_EXPORT GLboolean __GLEW_OVR_multiview2; -GLEW_VAR_EXPORT GLboolean __GLEW_OVR_multiview_multisampled_render_to_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_PGI_misc_hints; -GLEW_VAR_EXPORT GLboolean __GLEW_PGI_vertex_hints; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_YUV_texture_gather; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_alpha_test; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_binning_control; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_driver_control; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_extended_get; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_extended_get2; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_framebuffer_foveated; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_perfmon_global_mode; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_shader_framebuffer_fetch_noncoherent; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_shader_framebuffer_fetch_rate; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_texture_foveated; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_texture_foveated_subsampled_layout; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_tiled_rendering; -GLEW_VAR_EXPORT GLboolean __GLEW_QCOM_writeonly_rendering; -GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_ES1_0_compatibility; -GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_ES1_1_compatibility; -GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_enable; -GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_error_string; -GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_extension_query; -GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_log; -GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_proc_address; -GLEW_VAR_EXPORT GLboolean __GLEW_REND_screen_coordinates; -GLEW_VAR_EXPORT GLboolean __GLEW_S3_s3tc; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_clip_band_hint; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_color_range; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_detail_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_fog_function; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_generate_mipmap; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_line_texgen; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_multitexture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_pixel_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_point_line_texgen; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_shared_multisample; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_sharpen_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture4D; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_border_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_edge_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_filter4; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_select; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async_histogram; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async_pixel; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_bali_g_instruments; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_bali_r_instruments; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_bali_timer_instruments; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_blend_alpha_minmax; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_blend_cadd; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_blend_cmultiply; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_calligraphic_fragment; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_clipmap; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_color_matrix_accuracy; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_color_table_index_mode; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_complex_polar; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_convolution_accuracy; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_cube_map; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_cylinder_texgen; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_datapipe; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_decimation; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_depth_pass_instrument; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_depth_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_dvc; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_flush_raster; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_blend; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_factor_to_alpha; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_layers; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_offset; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_patchy; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_scale; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fragment_lighting_space; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fragment_specular_lighting; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fragments_instrument; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_framezoom; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_icc_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_igloo_interface; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_image_compression; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_impact_pixel_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_instrument_error; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_interlace; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ir_instrument1; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_line_quality_hint; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_list_priority; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_mpeg1; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_mpeg2; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_nonlinear_lighting_pervertex; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_nurbs_eval; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_occlusion_instrument; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_packed_6bytes; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture_bits; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture_lod; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_tiles; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_polynomial_ffd; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_quad_mesh; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_reference_plane; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_resample; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_scalebias_hint; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_shadow; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_shadow_ambient; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_slim; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_spotlight_cutoff; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_sprite; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_subdiv_patch; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_subsample; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_tag_sample_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_add_env; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_coordinate_clamp; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_lod_bias; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_mipmap_anisotropic; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_multi_buffer; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_phase; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_range; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_scale_bias; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_supersample; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vector_ops; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_array_object; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_preclip; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_preclip_hint; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ycrcb; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ycrcb_subsample; -GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ycrcba; -GLEW_VAR_EXPORT GLboolean __GLEW_SGI_color_matrix; -GLEW_VAR_EXPORT GLboolean __GLEW_SGI_color_table; -GLEW_VAR_EXPORT GLboolean __GLEW_SGI_complex; -GLEW_VAR_EXPORT GLboolean __GLEW_SGI_complex_type; -GLEW_VAR_EXPORT GLboolean __GLEW_SGI_fft; -GLEW_VAR_EXPORT GLboolean __GLEW_SGI_texture_color_table; -GLEW_VAR_EXPORT GLboolean __GLEW_SUNX_constant_data; -GLEW_VAR_EXPORT GLboolean __GLEW_SUN_convolution_border_modes; -GLEW_VAR_EXPORT GLboolean __GLEW_SUN_global_alpha; -GLEW_VAR_EXPORT GLboolean __GLEW_SUN_mesh_array; -GLEW_VAR_EXPORT GLboolean __GLEW_SUN_read_video_pixels; -GLEW_VAR_EXPORT GLboolean __GLEW_SUN_slice_accum; -GLEW_VAR_EXPORT GLboolean __GLEW_SUN_triangle_list; -GLEW_VAR_EXPORT GLboolean __GLEW_SUN_vertex; -GLEW_VAR_EXPORT GLboolean __GLEW_VIV_shader_binary; -GLEW_VAR_EXPORT GLboolean __GLEW_WIN_phong_shading; -GLEW_VAR_EXPORT GLboolean __GLEW_WIN_scene_markerXXX; -GLEW_VAR_EXPORT GLboolean __GLEW_WIN_specular_fog; -GLEW_VAR_EXPORT GLboolean __GLEW_WIN_swap_hint; -/* ------------------------------------------------------------------------- */ - -/* error codes */ -#define GLEW_OK 0 -#define GLEW_NO_ERROR 0 -#define GLEW_ERROR_NO_GL_VERSION 1 /* missing GL version */ -#define GLEW_ERROR_GL_VERSION_10_ONLY 2 /* Need at least OpenGL 1.1 */ -#define GLEW_ERROR_GLX_VERSION_11_ONLY 3 /* Need at least GLX 1.2 */ -#define GLEW_ERROR_NO_GLX_DISPLAY 4 /* Need GLX display for GLX support */ - -/* string codes */ -#define GLEW_VERSION 1 -#define GLEW_VERSION_MAJOR 2 -#define GLEW_VERSION_MINOR 3 -#define GLEW_VERSION_MICRO 4 - -/* ------------------------------------------------------------------------- */ - -/* GLEW version info */ - -/* -VERSION 2.2.0 -VERSION_MAJOR 2 -VERSION_MINOR 2 -VERSION_MICRO 0 -*/ - -/* API */ -GLEWAPI GLenum GLEWAPIENTRY glewInit (void); -GLEWAPI GLboolean GLEWAPIENTRY glewIsSupported (const char *name); -#define glewIsExtensionSupported(x) glewIsSupported(x) - -#ifndef GLEW_GET_VAR -#define GLEW_GET_VAR(x) (*(const GLboolean*)&x) -#endif - -#ifndef GLEW_GET_FUN -#define GLEW_GET_FUN(x) x -#endif - -GLEWAPI GLboolean glewExperimental; -GLEWAPI GLboolean GLEWAPIENTRY glewGetExtension (const char *name); -GLEWAPI const GLubyte * GLEWAPIENTRY glewGetErrorString (GLenum error); -GLEWAPI const GLubyte * GLEWAPIENTRY glewGetString (GLenum name); - -#ifdef __cplusplus -} -#endif - -#ifdef GLEW_APIENTRY_DEFINED -#undef GLEW_APIENTRY_DEFINED -#undef APIENTRY -#endif - -#ifdef GLEW_CALLBACK_DEFINED -#undef GLEW_CALLBACK_DEFINED -#undef CALLBACK -#endif - -#ifdef GLEW_WINGDIAPI_DEFINED -#undef GLEW_WINGDIAPI_DEFINED -#undef WINGDIAPI -#endif - -#undef GLAPI -/* #undef GLEWAPI */ - -#endif /* __glew_h__ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glew.h.blob deleted file mode 100644 index e345ba005901d446068d93e780008e8df3e08d75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2269133 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%0AS( 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%0DytQ8&yG8 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%0D?Eye34kk?Bj)=T6~ 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%0AbHY>QnaEClL70bi0o-0QK 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h deleted file mode 100644 index 421f25da..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h +++ /dev/null @@ -1,349 +0,0 @@ -/* - * SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008) - * Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice including the dates of first publication and - * either this permission notice or a reference to - * http://oss.sgi.com/projects/FreeB/ - * shall be included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF - * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * Except as contained in this notice, the name of Silicon Graphics, Inc. - * shall not be used in advertising or otherwise to promote the sale, use or - * other dealings in this Software without prior written authorization from - * Silicon Graphics, Inc. - */ - -#ifndef __glu_h__ -#define __glu_h__ - -#include <GL/gl.h> - -#ifndef GLAPIENTRY -#if defined(_MSC_VER) || defined(__MINGW32__) -#define GLAPIENTRY __stdcall -#else -#define GLAPIENTRY -#endif -#endif - -#ifndef GLAPIENTRYP -#define GLAPIENTRYP GLAPIENTRY * -#endif - -#if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GLU32) -# undef GLAPI -# define GLAPI __declspec(dllexport) -#elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) -/* tag specifying we're building for DLL runtime support */ -# undef GLAPI -# define GLAPI __declspec(dllimport) -#elif !defined(GLAPI) -/* for use with static link lib build of Win32 edition only */ -# define GLAPI extern -#endif /* _STATIC_MESA support */ - -#ifdef __cplusplus -extern "C" { -#endif - -/*************************************************************/ - -/* Extensions */ -#define GLU_EXT_object_space_tess 1 -#define GLU_EXT_nurbs_tessellator 1 - -/* Boolean */ -#define GLU_FALSE 0 -#define GLU_TRUE 1 - -/* Version */ -#define GLU_VERSION_1_1 1 -#define GLU_VERSION_1_2 1 -#define GLU_VERSION_1_3 1 - -/* StringName */ -#define GLU_VERSION 100800 -#define GLU_EXTENSIONS 100801 - -/* ErrorCode */ -#define GLU_INVALID_ENUM 100900 -#define GLU_INVALID_VALUE 100901 -#define GLU_OUT_OF_MEMORY 100902 -#define GLU_INCOMPATIBLE_GL_VERSION 100903 -#define GLU_INVALID_OPERATION 100904 - -/* NurbsDisplay */ -/* GLU_FILL */ -#define GLU_OUTLINE_POLYGON 100240 -#define GLU_OUTLINE_PATCH 100241 - -/* NurbsCallback */ -#define GLU_NURBS_ERROR 100103 -#define GLU_ERROR 100103 -#define GLU_NURBS_BEGIN 100164 -#define GLU_NURBS_BEGIN_EXT 100164 -#define GLU_NURBS_VERTEX 100165 -#define GLU_NURBS_VERTEX_EXT 100165 -#define GLU_NURBS_NORMAL 100166 -#define GLU_NURBS_NORMAL_EXT 100166 -#define GLU_NURBS_COLOR 100167 -#define GLU_NURBS_COLOR_EXT 100167 -#define GLU_NURBS_TEXTURE_COORD 100168 -#define GLU_NURBS_TEX_COORD_EXT 100168 -#define GLU_NURBS_END 100169 -#define GLU_NURBS_END_EXT 100169 -#define GLU_NURBS_BEGIN_DATA 100170 -#define GLU_NURBS_BEGIN_DATA_EXT 100170 -#define GLU_NURBS_VERTEX_DATA 100171 -#define GLU_NURBS_VERTEX_DATA_EXT 100171 -#define GLU_NURBS_NORMAL_DATA 100172 -#define GLU_NURBS_NORMAL_DATA_EXT 100172 -#define GLU_NURBS_COLOR_DATA 100173 -#define GLU_NURBS_COLOR_DATA_EXT 100173 -#define GLU_NURBS_TEXTURE_COORD_DATA 100174 -#define GLU_NURBS_TEX_COORD_DATA_EXT 100174 -#define GLU_NURBS_END_DATA 100175 -#define GLU_NURBS_END_DATA_EXT 100175 - -/* NurbsError */ -#define GLU_NURBS_ERROR1 100251 -#define GLU_NURBS_ERROR2 100252 -#define GLU_NURBS_ERROR3 100253 -#define GLU_NURBS_ERROR4 100254 -#define GLU_NURBS_ERROR5 100255 -#define GLU_NURBS_ERROR6 100256 -#define GLU_NURBS_ERROR7 100257 -#define GLU_NURBS_ERROR8 100258 -#define GLU_NURBS_ERROR9 100259 -#define GLU_NURBS_ERROR10 100260 -#define GLU_NURBS_ERROR11 100261 -#define GLU_NURBS_ERROR12 100262 -#define GLU_NURBS_ERROR13 100263 -#define GLU_NURBS_ERROR14 100264 -#define GLU_NURBS_ERROR15 100265 -#define GLU_NURBS_ERROR16 100266 -#define GLU_NURBS_ERROR17 100267 -#define GLU_NURBS_ERROR18 100268 -#define GLU_NURBS_ERROR19 100269 -#define GLU_NURBS_ERROR20 100270 -#define GLU_NURBS_ERROR21 100271 -#define GLU_NURBS_ERROR22 100272 -#define GLU_NURBS_ERROR23 100273 -#define GLU_NURBS_ERROR24 100274 -#define GLU_NURBS_ERROR25 100275 -#define GLU_NURBS_ERROR26 100276 -#define GLU_NURBS_ERROR27 100277 -#define GLU_NURBS_ERROR28 100278 -#define GLU_NURBS_ERROR29 100279 -#define GLU_NURBS_ERROR30 100280 -#define GLU_NURBS_ERROR31 100281 -#define GLU_NURBS_ERROR32 100282 -#define GLU_NURBS_ERROR33 100283 -#define GLU_NURBS_ERROR34 100284 -#define GLU_NURBS_ERROR35 100285 -#define GLU_NURBS_ERROR36 100286 -#define GLU_NURBS_ERROR37 100287 - -/* NurbsProperty */ -#define GLU_AUTO_LOAD_MATRIX 100200 -#define GLU_CULLING 100201 -#define GLU_SAMPLING_TOLERANCE 100203 -#define GLU_DISPLAY_MODE 100204 -#define GLU_PARAMETRIC_TOLERANCE 100202 -#define GLU_SAMPLING_METHOD 100205 -#define GLU_U_STEP 100206 -#define GLU_V_STEP 100207 -#define GLU_NURBS_MODE 100160 -#define GLU_NURBS_MODE_EXT 100160 -#define GLU_NURBS_TESSELLATOR 100161 -#define GLU_NURBS_TESSELLATOR_EXT 100161 -#define GLU_NURBS_RENDERER 100162 -#define GLU_NURBS_RENDERER_EXT 100162 - -/* NurbsSampling */ -#define GLU_OBJECT_PARAMETRIC_ERROR 100208 -#define GLU_OBJECT_PARAMETRIC_ERROR_EXT 100208 -#define GLU_OBJECT_PATH_LENGTH 100209 -#define GLU_OBJECT_PATH_LENGTH_EXT 100209 -#define GLU_PATH_LENGTH 100215 -#define GLU_PARAMETRIC_ERROR 100216 -#define GLU_DOMAIN_DISTANCE 100217 - -/* NurbsTrim */ -#define GLU_MAP1_TRIM_2 100210 -#define GLU_MAP1_TRIM_3 100211 - -/* QuadricDrawStyle */ -#define GLU_POINT 100010 -#define GLU_LINE 100011 -#define GLU_FILL 100012 -#define GLU_SILHOUETTE 100013 - -/* QuadricCallback */ -/* GLU_ERROR */ - -/* QuadricNormal */ -#define GLU_SMOOTH 100000 -#define GLU_FLAT 100001 -#define GLU_NONE 100002 - -/* QuadricOrientation */ -#define GLU_OUTSIDE 100020 -#define GLU_INSIDE 100021 - -/* TessCallback */ -#define GLU_TESS_BEGIN 100100 -#define GLU_BEGIN 100100 -#define GLU_TESS_VERTEX 100101 -#define GLU_VERTEX 100101 -#define GLU_TESS_END 100102 -#define GLU_END 100102 -#define GLU_TESS_ERROR 100103 -#define GLU_TESS_EDGE_FLAG 100104 -#define GLU_EDGE_FLAG 100104 -#define GLU_TESS_COMBINE 100105 -#define GLU_TESS_BEGIN_DATA 100106 -#define GLU_TESS_VERTEX_DATA 100107 -#define GLU_TESS_END_DATA 100108 -#define GLU_TESS_ERROR_DATA 100109 -#define GLU_TESS_EDGE_FLAG_DATA 100110 -#define GLU_TESS_COMBINE_DATA 100111 - -/* TessContour */ -#define GLU_CW 100120 -#define GLU_CCW 100121 -#define GLU_INTERIOR 100122 -#define GLU_EXTERIOR 100123 -#define GLU_UNKNOWN 100124 - -/* TessProperty */ -#define GLU_TESS_WINDING_RULE 100140 -#define GLU_TESS_BOUNDARY_ONLY 100141 -#define GLU_TESS_TOLERANCE 100142 - -/* TessError */ -#define GLU_TESS_ERROR1 100151 -#define GLU_TESS_ERROR2 100152 -#define GLU_TESS_ERROR3 100153 -#define GLU_TESS_ERROR4 100154 -#define GLU_TESS_ERROR5 100155 -#define GLU_TESS_ERROR6 100156 -#define GLU_TESS_ERROR7 100157 -#define GLU_TESS_ERROR8 100158 -#define GLU_TESS_MISSING_BEGIN_POLYGON 100151 -#define GLU_TESS_MISSING_BEGIN_CONTOUR 100152 -#define GLU_TESS_MISSING_END_POLYGON 100153 -#define GLU_TESS_MISSING_END_CONTOUR 100154 -#define GLU_TESS_COORD_TOO_LARGE 100155 -#define GLU_TESS_NEED_COMBINE_CALLBACK 100156 - -/* TessWinding */ -#define GLU_TESS_WINDING_ODD 100130 -#define GLU_TESS_WINDING_NONZERO 100131 -#define GLU_TESS_WINDING_POSITIVE 100132 -#define GLU_TESS_WINDING_NEGATIVE 100133 -#define GLU_TESS_WINDING_ABS_GEQ_TWO 100134 - -/*************************************************************/ - - -#ifdef __cplusplus -class GLUnurbs; -class GLUquadric; -class GLUtesselator; -#else -typedef struct GLUnurbs GLUnurbs; -typedef struct GLUquadric GLUquadric; -typedef struct GLUtesselator GLUtesselator; -#endif - -typedef GLUnurbs GLUnurbsObj; -typedef GLUquadric GLUquadricObj; -typedef GLUtesselator GLUtesselatorObj; -typedef GLUtesselator GLUtriangulatorObj; - -#define GLU_TESS_MAX_COORD 1.0e150 - -/* Internal convenience typedefs */ -typedef void (GLAPIENTRYP _GLUfuncptr)(void); - -GLAPI void GLAPIENTRY gluBeginCurve (GLUnurbs* nurb); -GLAPI void GLAPIENTRY gluBeginPolygon (GLUtesselator* tess); -GLAPI void GLAPIENTRY gluBeginSurface (GLUnurbs* nurb); -GLAPI void GLAPIENTRY gluBeginTrim (GLUnurbs* nurb); -GLAPI GLint GLAPIENTRY gluBuild1DMipmapLevels (GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data); -GLAPI GLint GLAPIENTRY gluBuild1DMipmaps (GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void *data); -GLAPI GLint GLAPIENTRY gluBuild2DMipmapLevels (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data); -GLAPI GLint GLAPIENTRY gluBuild2DMipmaps (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *data); -GLAPI GLint GLAPIENTRY gluBuild3DMipmapLevels (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data); -GLAPI GLint GLAPIENTRY gluBuild3DMipmaps (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data); -GLAPI GLboolean GLAPIENTRY gluCheckExtension (const GLubyte *extName, const GLubyte *extString); -GLAPI void GLAPIENTRY gluCylinder (GLUquadric* quad, GLdouble base, GLdouble top, GLdouble height, GLint slices, GLint stacks); -GLAPI void GLAPIENTRY gluDeleteNurbsRenderer (GLUnurbs* nurb); -GLAPI void GLAPIENTRY gluDeleteQuadric (GLUquadric* quad); -GLAPI void GLAPIENTRY gluDeleteTess (GLUtesselator* tess); -GLAPI void GLAPIENTRY gluDisk (GLUquadric* quad, GLdouble inner, GLdouble outer, GLint slices, GLint loops); -GLAPI void GLAPIENTRY gluEndCurve (GLUnurbs* nurb); -GLAPI void GLAPIENTRY gluEndPolygon (GLUtesselator* tess); -GLAPI void GLAPIENTRY gluEndSurface (GLUnurbs* nurb); -GLAPI void GLAPIENTRY gluEndTrim (GLUnurbs* nurb); -GLAPI const GLubyte * GLAPIENTRY gluErrorString (GLenum error); -GLAPI void GLAPIENTRY gluGetNurbsProperty (GLUnurbs* nurb, GLenum property, GLfloat* data); -GLAPI const GLubyte * GLAPIENTRY gluGetString (GLenum name); -GLAPI void GLAPIENTRY gluGetTessProperty (GLUtesselator* tess, GLenum which, GLdouble* data); -GLAPI void GLAPIENTRY gluLoadSamplingMatrices (GLUnurbs* nurb, const GLfloat *model, const GLfloat *perspective, const GLint *view); -GLAPI void GLAPIENTRY gluLookAt (GLdouble eyeX, GLdouble eyeY, GLdouble eyeZ, GLdouble centerX, GLdouble centerY, GLdouble centerZ, GLdouble upX, GLdouble upY, GLdouble upZ); -GLAPI GLUnurbs* GLAPIENTRY gluNewNurbsRenderer (void); -GLAPI GLUquadric* GLAPIENTRY gluNewQuadric (void); -GLAPI GLUtesselator* GLAPIENTRY gluNewTess (void); -GLAPI void GLAPIENTRY gluNextContour (GLUtesselator* tess, GLenum type); -GLAPI void GLAPIENTRY gluNurbsCallback (GLUnurbs* nurb, GLenum which, _GLUfuncptr CallBackFunc); -GLAPI void GLAPIENTRY gluNurbsCallbackData (GLUnurbs* nurb, GLvoid* userData); -GLAPI void GLAPIENTRY gluNurbsCallbackDataEXT (GLUnurbs* nurb, GLvoid* userData); -GLAPI void GLAPIENTRY gluNurbsCurve (GLUnurbs* nurb, GLint knotCount, GLfloat *knots, GLint stride, GLfloat *control, GLint order, GLenum type); -GLAPI void GLAPIENTRY gluNurbsProperty (GLUnurbs* nurb, GLenum property, GLfloat value); -GLAPI void GLAPIENTRY gluNurbsSurface (GLUnurbs* nurb, GLint sKnotCount, GLfloat* sKnots, GLint tKnotCount, GLfloat* tKnots, GLint sStride, GLint tStride, GLfloat* control, GLint sOrder, GLint tOrder, GLenum type); -GLAPI void GLAPIENTRY gluOrtho2D (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top); -GLAPI void GLAPIENTRY gluPartialDisk (GLUquadric* quad, GLdouble inner, GLdouble outer, GLint slices, GLint loops, GLdouble start, GLdouble sweep); -GLAPI void GLAPIENTRY gluPerspective (GLdouble fovy, GLdouble aspect, GLdouble zNear, GLdouble zFar); -GLAPI void GLAPIENTRY gluPickMatrix (GLdouble x, GLdouble y, GLdouble delX, GLdouble delY, GLint *viewport); -GLAPI GLint GLAPIENTRY gluProject (GLdouble objX, GLdouble objY, GLdouble objZ, const GLdouble *model, const GLdouble *proj, const GLint *view, GLdouble* winX, GLdouble* winY, GLdouble* winZ); -GLAPI void GLAPIENTRY gluPwlCurve (GLUnurbs* nurb, GLint count, GLfloat* data, GLint stride, GLenum type); -GLAPI void GLAPIENTRY gluQuadricCallback (GLUquadric* quad, GLenum which, _GLUfuncptr CallBackFunc); -GLAPI void GLAPIENTRY gluQuadricDrawStyle (GLUquadric* quad, GLenum draw); -GLAPI void GLAPIENTRY gluQuadricNormals (GLUquadric* quad, GLenum normal); -GLAPI void GLAPIENTRY gluQuadricOrientation (GLUquadric* quad, GLenum orientation); -GLAPI void GLAPIENTRY gluQuadricTexture (GLUquadric* quad, GLboolean texture); -GLAPI GLint GLAPIENTRY gluScaleImage (GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void *dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid* dataOut); -GLAPI void GLAPIENTRY gluSphere (GLUquadric* quad, GLdouble radius, GLint slices, GLint stacks); -GLAPI void GLAPIENTRY gluTessBeginContour (GLUtesselator* tess); -GLAPI void GLAPIENTRY gluTessBeginPolygon (GLUtesselator* tess, GLvoid* data); -GLAPI void GLAPIENTRY gluTessCallback (GLUtesselator* tess, GLenum which, _GLUfuncptr CallBackFunc); -GLAPI void GLAPIENTRY gluTessEndContour (GLUtesselator* tess); -GLAPI void GLAPIENTRY gluTessEndPolygon (GLUtesselator* tess); -GLAPI void GLAPIENTRY gluTessNormal (GLUtesselator* tess, GLdouble valueX, GLdouble valueY, GLdouble valueZ); -GLAPI void GLAPIENTRY gluTessProperty (GLUtesselator* tess, GLenum which, GLdouble data); -GLAPI void GLAPIENTRY gluTessVertex (GLUtesselator* tess, GLdouble *location, GLvoid* data); -GLAPI GLint GLAPIENTRY gluUnProject (GLdouble winX, GLdouble winY, GLdouble winZ, const GLdouble *model, const GLdouble *proj, const GLint *view, GLdouble* objX, GLdouble* objY, GLdouble* objZ); -GLAPI GLint GLAPIENTRY gluUnProject4 (GLdouble winX, GLdouble winY, GLdouble winZ, GLdouble clipW, const GLdouble *model, const GLdouble *proj, const GLint *view, GLdouble nearVal, GLdouble farVal, GLdouble* objX, GLdouble* objY, GLdouble* objZ, GLdouble* objW); - -#ifdef __cplusplus -} -#endif - -#endif /* __glu_h__ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@GL@glu.h.blob deleted file mode 100644 index dbaff761f0663906e1f086463097cd80342785a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58386 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h deleted file mode 100644 index 9ba8f68c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h +++ /dev/null @@ -1,233 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL.h - * - * Main include header for the SDL library - */ - - -#ifndef SDL_h_ -#define SDL_h_ - -#include "SDL_main.h" -#include "SDL_stdinc.h" -#include "SDL_assert.h" -#include "SDL_atomic.h" -#include "SDL_audio.h" -#include "SDL_clipboard.h" -#include "SDL_cpuinfo.h" -#include "SDL_endian.h" -#include "SDL_error.h" -#include "SDL_events.h" -#include "SDL_filesystem.h" -#include "SDL_gamecontroller.h" -#include "SDL_guid.h" -#include "SDL_haptic.h" -#include "SDL_hidapi.h" -#include "SDL_hints.h" -#include "SDL_joystick.h" -#include "SDL_loadso.h" -#include "SDL_log.h" -#include "SDL_messagebox.h" -#include "SDL_metal.h" -#include "SDL_mutex.h" -#include "SDL_power.h" -#include "SDL_render.h" -#include "SDL_rwops.h" -#include "SDL_sensor.h" -#include "SDL_shape.h" -#include "SDL_system.h" -#include "SDL_thread.h" -#include "SDL_timer.h" -#include "SDL_version.h" -#include "SDL_video.h" -#include "SDL_locale.h" -#include "SDL_misc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/* As of version 0.5, SDL is loaded dynamically into the application */ - -/** - * \name SDL_INIT_* - * - * These are the flags which may be passed to SDL_Init(). You should - * specify the subsystems which you will be using in your application. - */ -/* @{ */ -#define SDL_INIT_TIMER 0x00000001u -#define SDL_INIT_AUDIO 0x00000010u -#define SDL_INIT_VIDEO 0x00000020u /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */ -#define SDL_INIT_JOYSTICK 0x00000200u /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */ -#define SDL_INIT_HAPTIC 0x00001000u -#define SDL_INIT_GAMECONTROLLER 0x00002000u /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */ -#define SDL_INIT_EVENTS 0x00004000u -#define SDL_INIT_SENSOR 0x00008000u -#define SDL_INIT_NOPARACHUTE 0x00100000u /**< compatibility; this flag is ignored. */ -#define SDL_INIT_EVERYTHING ( \ - SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_EVENTS | \ - SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER | SDL_INIT_SENSOR \ - ) -/* @} */ - -/** - * Initialize the SDL library. - * - * SDL_Init() simply forwards to calling SDL_InitSubSystem(). Therefore, the - * two may be used interchangeably. Though for readability of your code - * SDL_InitSubSystem() might be preferred. - * - * The file I/O (for example: SDL_RWFromFile) and threading (SDL_CreateThread) - * subsystems are initialized by default. Message boxes - * (SDL_ShowSimpleMessageBox) also attempt to work without initializing the - * video subsystem, in hopes of being useful in showing an error dialog when - * SDL_Init fails. You must specifically initialize other subsystems if you - * use them in your application. - * - * Logging (such as SDL_Log) works without initialization, too. - * - * `flags` may be any of the following OR'd together: - * - * - `SDL_INIT_TIMER`: timer subsystem - * - `SDL_INIT_AUDIO`: audio subsystem - * - `SDL_INIT_VIDEO`: video subsystem; automatically initializes the events - * subsystem - * - `SDL_INIT_JOYSTICK`: joystick subsystem; automatically initializes the - * events subsystem - * - `SDL_INIT_HAPTIC`: haptic (force feedback) subsystem - * - `SDL_INIT_GAMECONTROLLER`: controller subsystem; automatically - * initializes the joystick subsystem - * - `SDL_INIT_EVENTS`: events subsystem - * - `SDL_INIT_EVERYTHING`: all of the above subsystems - * - `SDL_INIT_NOPARACHUTE`: compatibility; this flag is ignored - * - * Subsystem initialization is ref-counted, you must call SDL_QuitSubSystem() - * for each SDL_InitSubSystem() to correctly shutdown a subsystem manually (or - * call SDL_Quit() to force shutdown). If a subsystem is already loaded then - * this call will increase the ref-count and return. - * - * \param flags subsystem initialization flags - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_InitSubSystem - * \sa SDL_Quit - * \sa SDL_SetMainReady - * \sa SDL_WasInit - */ -extern DECLSPEC int SDLCALL SDL_Init(Uint32 flags); - -/** - * Compatibility function to initialize the SDL library. - * - * In SDL2, this function and SDL_Init() are interchangeable. - * - * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Init - * \sa SDL_Quit - * \sa SDL_QuitSubSystem - */ -extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags); - -/** - * Shut down specific SDL subsystems. - * - * If you start a subsystem using a call to that subsystem's init function - * (for example SDL_VideoInit()) instead of SDL_Init() or SDL_InitSubSystem(), - * SDL_QuitSubSystem() and SDL_WasInit() will not work. You will need to use - * that subsystem's quit function (SDL_VideoQuit()) directly instead. But - * generally, you should not be using those functions directly anyhow; use - * SDL_Init() instead. - * - * You still need to call SDL_Quit() even if you close all open subsystems - * with SDL_QuitSubSystem(). - * - * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_InitSubSystem - * \sa SDL_Quit - */ -extern DECLSPEC void SDLCALL SDL_QuitSubSystem(Uint32 flags); - -/** - * Get a mask of the specified subsystems which are currently initialized. - * - * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. - * \returns a mask of all initialized subsystems if `flags` is 0, otherwise it - * returns the initialization status of the specified subsystems. - * - * The return value does not include SDL_INIT_NOPARACHUTE. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Init - * \sa SDL_InitSubSystem - */ -extern DECLSPEC Uint32 SDLCALL SDL_WasInit(Uint32 flags); - -/** - * Clean up all initialized subsystems. - * - * You should call this function even if you have already shutdown each - * initialized subsystem with SDL_QuitSubSystem(). It is safe to call this - * function even in the case of errors in initialization. - * - * If you start a subsystem using a call to that subsystem's init function - * (for example SDL_VideoInit()) instead of SDL_Init() or SDL_InitSubSystem(), - * then you must use that subsystem's quit function (SDL_VideoQuit()) to shut - * it down before calling SDL_Quit(). But generally, you should not be using - * those functions directly anyhow; use SDL_Init() instead. - * - * You can use this function with atexit() to ensure that it is run when your - * application is shutdown, but it is not wise to do this from a library or - * other dynamically loaded code. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Init - * \sa SDL_QuitSubSystem - */ -extern DECLSPEC void SDLCALL SDL_Quit(void); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL.h.blob deleted file mode 100644 index e101eee5f897f53f02432c4ec8a1e66b31aa237f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19520 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h deleted file mode 100644 index 7ce823ec..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h +++ /dev/null @@ -1,322 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_assert_h_ -#define SDL_assert_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -#ifndef SDL_ASSERT_LEVEL -#ifdef SDL_DEFAULT_ASSERT_LEVEL -#define SDL_ASSERT_LEVEL SDL_DEFAULT_ASSERT_LEVEL -#elif defined(_DEBUG) || defined(DEBUG) || \ - (defined(__GNUC__) && !defined(__OPTIMIZE__)) -#define SDL_ASSERT_LEVEL 2 -#else -#define SDL_ASSERT_LEVEL 1 -#endif -#endif /* SDL_ASSERT_LEVEL */ - -/* -These are macros and not first class functions so that the debugger breaks -on the assertion line and not in some random guts of SDL, and so each -assert can have unique static variables associated with it. -*/ - -#if defined(_MSC_VER) -/* Don't include intrin.h here because it contains C++ code */ - extern void __cdecl __debugbreak(void); - #define SDL_TriggerBreakpoint() __debugbreak() -#elif _SDL_HAS_BUILTIN(__builtin_debugtrap) - #define SDL_TriggerBreakpoint() __builtin_debugtrap() -#elif ( (!defined(__NACL__)) && ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))) ) - #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "int $3\n\t" ) -#elif (defined(__GNUC__) || defined(__clang__)) && defined(__riscv) - #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "ebreak\n\t" ) -#elif ( defined(__APPLE__) && (defined(__arm64__) || defined(__aarch64__)) ) /* this might work on other ARM targets, but this is a known quantity... */ - #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "brk #22\n\t" ) -#elif defined(__APPLE__) && defined(__arm__) - #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "bkpt #22\n\t" ) -#elif defined(__386__) && defined(__WATCOMC__) - #define SDL_TriggerBreakpoint() { _asm { int 0x03 } } -#elif defined(HAVE_SIGNAL_H) && !defined(__WATCOMC__) - #include <signal.h> - #define SDL_TriggerBreakpoint() raise(SIGTRAP) -#else - /* How do we trigger breakpoints on this platform? */ - #define SDL_TriggerBreakpoint() -#endif - -#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) /* C99 supports __func__ as a standard. */ -# define SDL_FUNCTION __func__ -#elif ((defined(__GNUC__) && (__GNUC__ >= 2)) || defined(_MSC_VER) || defined (__WATCOMC__)) -# define SDL_FUNCTION __FUNCTION__ -#else -# define SDL_FUNCTION "???" -#endif -#define SDL_FILE __FILE__ -#define SDL_LINE __LINE__ - -/* -sizeof (x) makes the compiler still parse the expression even without -assertions enabled, so the code is always checked at compile time, but -doesn't actually generate code for it, so there are no side effects or -expensive checks at run time, just the constant size of what x WOULD be, -which presumably gets optimized out as unused. -This also solves the problem of... - - int somevalue = blah(); - SDL_assert(somevalue == 1); - -...which would cause compiles to complain that somevalue is unused if we -disable assertions. -*/ - -/* "while (0,0)" fools Microsoft's compiler's /W4 warning level into thinking - this condition isn't constant. And looks like an owl's face! */ -#ifdef _MSC_VER /* stupid /W4 warnings. */ -#define SDL_NULL_WHILE_LOOP_CONDITION (0,0) -#else -#define SDL_NULL_WHILE_LOOP_CONDITION (0) -#endif - -#define SDL_disabled_assert(condition) \ - do { (void) sizeof ((condition)); } while (SDL_NULL_WHILE_LOOP_CONDITION) - -typedef enum -{ - SDL_ASSERTION_RETRY, /**< Retry the assert immediately. */ - SDL_ASSERTION_BREAK, /**< Make the debugger trigger a breakpoint. */ - SDL_ASSERTION_ABORT, /**< Terminate the program. */ - SDL_ASSERTION_IGNORE, /**< Ignore the assert. */ - SDL_ASSERTION_ALWAYS_IGNORE /**< Ignore the assert from now on. */ -} SDL_AssertState; - -typedef struct SDL_AssertData -{ - int always_ignore; - unsigned int trigger_count; - const char *condition; - const char *filename; - int linenum; - const char *function; - const struct SDL_AssertData *next; -} SDL_AssertData; - -/* Never call this directly. Use the SDL_assert* macros. */ -extern DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData *, - const char *, - const char *, int) -#if defined(__clang__) -#if __has_feature(attribute_analyzer_noreturn) -/* this tells Clang's static analysis that we're a custom assert function, - and that the analyzer should assume the condition was always true past this - SDL_assert test. */ - __attribute__((analyzer_noreturn)) -#endif -#endif -; - -/* the do {} while(0) avoids dangling else problems: - if (x) SDL_assert(y); else blah(); - ... without the do/while, the "else" could attach to this macro's "if". - We try to handle just the minimum we need here in a macro...the loop, - the static vars, and break points. The heavy lifting is handled in - SDL_ReportAssertion(), in SDL_assert.c. -*/ -#define SDL_enabled_assert(condition) \ - do { \ - while ( !(condition) ) { \ - static struct SDL_AssertData sdl_assert_data = { 0, 0, #condition, 0, 0, 0, 0 }; \ - const SDL_AssertState sdl_assert_state = SDL_ReportAssertion(&sdl_assert_data, SDL_FUNCTION, SDL_FILE, SDL_LINE); \ - if (sdl_assert_state == SDL_ASSERTION_RETRY) { \ - continue; /* go again. */ \ - } else if (sdl_assert_state == SDL_ASSERTION_BREAK) { \ - SDL_TriggerBreakpoint(); \ - } \ - break; /* not retrying. */ \ - } \ - } while (SDL_NULL_WHILE_LOOP_CONDITION) - -/* Enable various levels of assertions. */ -#if SDL_ASSERT_LEVEL == 0 /* assertions disabled */ -# define SDL_assert(condition) SDL_disabled_assert(condition) -# define SDL_assert_release(condition) SDL_disabled_assert(condition) -# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) -#elif SDL_ASSERT_LEVEL == 1 /* release settings. */ -# define SDL_assert(condition) SDL_disabled_assert(condition) -# define SDL_assert_release(condition) SDL_enabled_assert(condition) -# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) -#elif SDL_ASSERT_LEVEL == 2 /* normal settings. */ -# define SDL_assert(condition) SDL_enabled_assert(condition) -# define SDL_assert_release(condition) SDL_enabled_assert(condition) -# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) -#elif SDL_ASSERT_LEVEL == 3 /* paranoid settings. */ -# define SDL_assert(condition) SDL_enabled_assert(condition) -# define SDL_assert_release(condition) SDL_enabled_assert(condition) -# define SDL_assert_paranoid(condition) SDL_enabled_assert(condition) -#else -# error Unknown assertion level. -#endif - -/* this assertion is never disabled at any level. */ -#define SDL_assert_always(condition) SDL_enabled_assert(condition) - - -/** - * A callback that fires when an SDL assertion fails. - * - * \param data a pointer to the SDL_AssertData structure corresponding to the - * current assertion - * \param userdata what was passed as `userdata` to SDL_SetAssertionHandler() - * \returns an SDL_AssertState value indicating how to handle the failure. - */ -typedef SDL_AssertState (SDLCALL *SDL_AssertionHandler)( - const SDL_AssertData* data, void* userdata); - -/** - * Set an application-defined assertion handler. - * - * This function allows an application to show its own assertion UI and/or - * force the response to an assertion failure. If the application doesn't - * provide this, SDL will try to do the right thing, popping up a - * system-specific GUI dialog, and probably minimizing any fullscreen windows. - * - * This callback may fire from any thread, but it runs wrapped in a mutex, so - * it will only fire from one thread at a time. - * - * This callback is NOT reset to SDL's internal handler upon SDL_Quit()! - * - * \param handler the SDL_AssertionHandler function to call when an assertion - * fails or NULL for the default handler - * \param userdata a pointer that is passed to `handler` - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetAssertionHandler - */ -extern DECLSPEC void SDLCALL SDL_SetAssertionHandler( - SDL_AssertionHandler handler, - void *userdata); - -/** - * Get the default assertion handler. - * - * This returns the function pointer that is called by default when an - * assertion is triggered. This is an internal function provided by SDL, that - * is used for assertions when SDL_SetAssertionHandler() hasn't been used to - * provide a different function. - * - * \returns the default SDL_AssertionHandler that is called when an assert - * triggers. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_GetAssertionHandler - */ -extern DECLSPEC SDL_AssertionHandler SDLCALL SDL_GetDefaultAssertionHandler(void); - -/** - * Get the current assertion handler. - * - * This returns the function pointer that is called when an assertion is - * triggered. This is either the value last passed to - * SDL_SetAssertionHandler(), or if no application-specified function is set, - * is equivalent to calling SDL_GetDefaultAssertionHandler(). - * - * The parameter `puserdata` is a pointer to a void*, which will store the - * "userdata" pointer that was passed to SDL_SetAssertionHandler(). This value - * will always be NULL for the default handler. If you don't care about this - * data, it is safe to pass a NULL pointer to this function to ignore it. - * - * \param puserdata pointer which is filled with the "userdata" pointer that - * was passed to SDL_SetAssertionHandler() - * \returns the SDL_AssertionHandler that is called when an assert triggers. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_SetAssertionHandler - */ -extern DECLSPEC SDL_AssertionHandler SDLCALL SDL_GetAssertionHandler(void **puserdata); - -/** - * Get a list of all assertion failures. - * - * This function gets all assertions triggered since the last call to - * SDL_ResetAssertionReport(), or the start of the program. - * - * The proper way to examine this data looks something like this: - * - * ```c - * const SDL_AssertData *item = SDL_GetAssertionReport(); - * while (item) { - * printf("'%s', %s (%s:%d), triggered %u times, always ignore: %s.\\n", - * item->condition, item->function, item->filename, - * item->linenum, item->trigger_count, - * item->always_ignore ? "yes" : "no"); - * item = item->next; - * } - * ``` - * - * \returns a list of all failed assertions or NULL if the list is empty. This - * memory should not be modified or freed by the application. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ResetAssertionReport - */ -extern DECLSPEC const SDL_AssertData * SDLCALL SDL_GetAssertionReport(void); - -/** - * Clear the list of all assertion failures. - * - * This function will clear the list of all assertions triggered up to that - * point. Immediately following this call, SDL_GetAssertionReport will return - * no items. In addition, any previously-triggered assertions will be reset to - * a trigger_count of zero, and their always_ignore state will be false. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetAssertionReport - */ -extern DECLSPEC void SDLCALL SDL_ResetAssertionReport(void); - - -/* these had wrong naming conventions until 2.0.4. Please update your app! */ -#define SDL_assert_state SDL_AssertState -#define SDL_assert_data SDL_AssertData - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_assert_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_assert.h.blob deleted file mode 100644 index b2d83ac61756ec3169292b1241a71737ec166ab8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20150 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h deleted file mode 100644 index 1dd816a3..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h +++ /dev/null @@ -1,414 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_atomic.h - * - * Atomic operations. - * - * IMPORTANT: - * If you are not an expert in concurrent lockless programming, you should - * only be using the atomic lock and reference counting functions in this - * file. In all other cases you should be protecting your data structures - * with full mutexes. - * - * The list of "safe" functions to use are: - * SDL_AtomicLock() - * SDL_AtomicUnlock() - * SDL_AtomicIncRef() - * SDL_AtomicDecRef() - * - * Seriously, here be dragons! - * ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - * - * You can find out a little more about lockless programming and the - * subtle issues that can arise here: - * http://msdn.microsoft.com/en-us/library/ee418650%28v=vs.85%29.aspx - * - * There's also lots of good information here: - * http://www.1024cores.net/home/lock-free-algorithms - * http://preshing.com/ - * - * These operations may or may not actually be implemented using - * processor specific atomic operations. When possible they are - * implemented as true processor specific atomic operations. When that - * is not possible the are implemented using locks that *do* use the - * available atomic operations. - * - * All of the atomic operations that modify memory are full memory barriers. - */ - -#ifndef SDL_atomic_h_ -#define SDL_atomic_h_ - -#include "SDL_stdinc.h" -#include "SDL_platform.h" - -#include "begin_code.h" - -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \name SDL AtomicLock - * - * The atomic locks are efficient spinlocks using CPU instructions, - * but are vulnerable to starvation and can spin forever if a thread - * holding a lock has been terminated. For this reason you should - * minimize the code executed inside an atomic lock and never do - * expensive things like API or system calls while holding them. - * - * The atomic locks are not safe to lock recursively. - * - * Porting Note: - * The spin lock functions and type are required and can not be - * emulated because they are used in the atomic emulation code. - */ -/* @{ */ - -typedef int SDL_SpinLock; - -/** - * Try to lock a spin lock by setting it to a non-zero value. - * - * ***Please note that spinlocks are dangerous if you don't know what you're - * doing. Please be careful using any sort of spinlock!*** - * - * \param lock a pointer to a lock variable - * \returns SDL_TRUE if the lock succeeded, SDL_FALSE if the lock is already - * held. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AtomicLock - * \sa SDL_AtomicUnlock - */ -extern DECLSPEC SDL_bool SDLCALL SDL_AtomicTryLock(SDL_SpinLock *lock); - -/** - * Lock a spin lock by setting it to a non-zero value. - * - * ***Please note that spinlocks are dangerous if you don't know what you're - * doing. Please be careful using any sort of spinlock!*** - * - * \param lock a pointer to a lock variable - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AtomicTryLock - * \sa SDL_AtomicUnlock - */ -extern DECLSPEC void SDLCALL SDL_AtomicLock(SDL_SpinLock *lock); - -/** - * Unlock a spin lock by setting it to 0. - * - * Always returns immediately. - * - * ***Please note that spinlocks are dangerous if you don't know what you're - * doing. Please be careful using any sort of spinlock!*** - * - * \param lock a pointer to a lock variable - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AtomicLock - * \sa SDL_AtomicTryLock - */ -extern DECLSPEC void SDLCALL SDL_AtomicUnlock(SDL_SpinLock *lock); - -/* @} *//* SDL AtomicLock */ - - -/** - * The compiler barrier prevents the compiler from reordering - * reads and writes to globally visible variables across the call. - */ -#if defined(_MSC_VER) && (_MSC_VER > 1200) && !defined(__clang__) -void _ReadWriteBarrier(void); -#pragma intrinsic(_ReadWriteBarrier) -#define SDL_CompilerBarrier() _ReadWriteBarrier() -#elif (defined(__GNUC__) && !defined(__EMSCRIPTEN__)) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120)) -/* This is correct for all CPUs when using GCC or Solaris Studio 12.1+. */ -#define SDL_CompilerBarrier() __asm__ __volatile__ ("" : : : "memory") -#elif defined(__WATCOMC__) -extern __inline void SDL_CompilerBarrier(void); -#pragma aux SDL_CompilerBarrier = "" parm [] modify exact []; -#else -#define SDL_CompilerBarrier() \ -{ SDL_SpinLock _tmp = 0; SDL_AtomicLock(&_tmp); SDL_AtomicUnlock(&_tmp); } -#endif - -/** - * Memory barriers are designed to prevent reads and writes from being - * reordered by the compiler and being seen out of order on multi-core CPUs. - * - * A typical pattern would be for thread A to write some data and a flag, and - * for thread B to read the flag and get the data. In this case you would - * insert a release barrier between writing the data and the flag, - * guaranteeing that the data write completes no later than the flag is - * written, and you would insert an acquire barrier between reading the flag - * and reading the data, to ensure that all the reads associated with the flag - * have completed. - * - * In this pattern you should always see a release barrier paired with an - * acquire barrier and you should gate the data reads/writes with a single - * flag variable. - * - * For more information on these semantics, take a look at the blog post: - * http://preshing.com/20120913/acquire-and-release-semantics - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC void SDLCALL SDL_MemoryBarrierReleaseFunction(void); -extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void); - -#if defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__)) -#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("lwsync" : : : "memory") -#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("lwsync" : : : "memory") -#elif defined(__GNUC__) && defined(__aarch64__) -#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") -#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") -#elif defined(__GNUC__) && defined(__arm__) -#if 0 /* defined(__LINUX__) || defined(__ANDROID__) */ -/* Information from: - https://chromium.googlesource.com/chromium/chromium/+/trunk/base/atomicops_internals_arm_gcc.h#19 - - The Linux kernel provides a helper function which provides the right code for a memory barrier, - hard-coded at address 0xffff0fa0 -*/ -typedef void (*SDL_KernelMemoryBarrierFunc)(); -#define SDL_MemoryBarrierRelease() ((SDL_KernelMemoryBarrierFunc)0xffff0fa0)() -#define SDL_MemoryBarrierAcquire() ((SDL_KernelMemoryBarrierFunc)0xffff0fa0)() -#elif 0 /* defined(__QNXNTO__) */ -#include <sys/cpuinline.h> - -#define SDL_MemoryBarrierRelease() __cpu_membarrier() -#define SDL_MemoryBarrierAcquire() __cpu_membarrier() -#else -#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) || defined(__ARM_ARCH_8A__) -#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") -#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") -#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__) -#ifdef __thumb__ -/* The mcr instruction isn't available in thumb mode, use real functions */ -#define SDL_MEMORY_BARRIER_USES_FUNCTION -#define SDL_MemoryBarrierRelease() SDL_MemoryBarrierReleaseFunction() -#define SDL_MemoryBarrierAcquire() SDL_MemoryBarrierAcquireFunction() -#else -#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory") -#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory") -#endif /* __thumb__ */ -#else -#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("" : : : "memory") -#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("" : : : "memory") -#endif /* __LINUX__ || __ANDROID__ */ -#endif /* __GNUC__ && __arm__ */ -#else -#if (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120)) -/* This is correct for all CPUs on Solaris when using Solaris Studio 12.1+. */ -#include <mbarrier.h> -#define SDL_MemoryBarrierRelease() __machine_rel_barrier() -#define SDL_MemoryBarrierAcquire() __machine_acq_barrier() -#else -/* This is correct for the x86 and x64 CPUs, and we'll expand this over time. */ -#define SDL_MemoryBarrierRelease() SDL_CompilerBarrier() -#define SDL_MemoryBarrierAcquire() SDL_CompilerBarrier() -#endif -#endif - -/* "REP NOP" is PAUSE, coded for tools that don't know it by that name. */ -#if (defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__)) - #define SDL_CPUPauseInstruction() __asm__ __volatile__("pause\n") /* Some assemblers can't do REP NOP, so go with PAUSE. */ -#elif (defined(__arm__) && defined(__ARM_ARCH) && __ARM_ARCH >= 7) || defined(__aarch64__) - #define SDL_CPUPauseInstruction() __asm__ __volatile__("yield" ::: "memory") -#elif (defined(__powerpc__) || defined(__powerpc64__)) - #define SDL_CPUPauseInstruction() __asm__ __volatile__("or 27,27,27"); -#elif defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_X64)) - #define SDL_CPUPauseInstruction() _mm_pause() /* this is actually "rep nop" and not a SIMD instruction. No inline asm in MSVC x86-64! */ -#elif defined(_MSC_VER) && (defined(_M_ARM) || defined(_M_ARM64)) - #define SDL_CPUPauseInstruction() __yield() -#elif defined(__WATCOMC__) && defined(__386__) - extern __inline void SDL_CPUPauseInstruction(void); - #pragma aux SDL_CPUPauseInstruction = ".686p" ".xmm2" "pause" -#else - #define SDL_CPUPauseInstruction() -#endif - - -/** - * \brief A type representing an atomic integer value. It is a struct - * so people don't accidentally use numeric operations on it. - */ -typedef struct { int value; } SDL_atomic_t; - -/** - * Set an atomic variable to a new value if it is currently an old value. - * - * ***Note: If you don't know what this function is for, you shouldn't use - * it!*** - * - * \param a a pointer to an SDL_atomic_t variable to be modified - * \param oldval the old value - * \param newval the new value - * \returns SDL_TRUE if the atomic variable was set, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AtomicCASPtr - * \sa SDL_AtomicGet - * \sa SDL_AtomicSet - */ -extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCAS(SDL_atomic_t *a, int oldval, int newval); - -/** - * Set an atomic variable to a value. - * - * This function also acts as a full memory barrier. - * - * ***Note: If you don't know what this function is for, you shouldn't use - * it!*** - * - * \param a a pointer to an SDL_atomic_t variable to be modified - * \param v the desired value - * \returns the previous value of the atomic variable. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_AtomicGet - */ -extern DECLSPEC int SDLCALL SDL_AtomicSet(SDL_atomic_t *a, int v); - -/** - * Get the value of an atomic variable. - * - * ***Note: If you don't know what this function is for, you shouldn't use - * it!*** - * - * \param a a pointer to an SDL_atomic_t variable - * \returns the current value of an atomic variable. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_AtomicSet - */ -extern DECLSPEC int SDLCALL SDL_AtomicGet(SDL_atomic_t *a); - -/** - * Add to an atomic variable. - * - * This function also acts as a full memory barrier. - * - * ***Note: If you don't know what this function is for, you shouldn't use - * it!*** - * - * \param a a pointer to an SDL_atomic_t variable to be modified - * \param v the desired value to add - * \returns the previous value of the atomic variable. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_AtomicDecRef - * \sa SDL_AtomicIncRef - */ -extern DECLSPEC int SDLCALL SDL_AtomicAdd(SDL_atomic_t *a, int v); - -/** - * \brief Increment an atomic variable used as a reference count. - */ -#ifndef SDL_AtomicIncRef -#define SDL_AtomicIncRef(a) SDL_AtomicAdd(a, 1) -#endif - -/** - * \brief Decrement an atomic variable used as a reference count. - * - * \return SDL_TRUE if the variable reached zero after decrementing, - * SDL_FALSE otherwise - */ -#ifndef SDL_AtomicDecRef -#define SDL_AtomicDecRef(a) (SDL_AtomicAdd(a, -1) == 1) -#endif - -/** - * Set a pointer to a new value if it is currently an old value. - * - * ***Note: If you don't know what this function is for, you shouldn't use - * it!*** - * - * \param a a pointer to a pointer - * \param oldval the old pointer value - * \param newval the new pointer value - * \returns SDL_TRUE if the pointer was set, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AtomicCAS - * \sa SDL_AtomicGetPtr - * \sa SDL_AtomicSetPtr - */ -extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCASPtr(void **a, void *oldval, void *newval); - -/** - * Set a pointer to a value atomically. - * - * ***Note: If you don't know what this function is for, you shouldn't use - * it!*** - * - * \param a a pointer to a pointer - * \param v the desired pointer value - * \returns the previous value of the pointer. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_AtomicCASPtr - * \sa SDL_AtomicGetPtr - */ -extern DECLSPEC void* SDLCALL SDL_AtomicSetPtr(void **a, void* v); - -/** - * Get the value of a pointer atomically. - * - * ***Note: If you don't know what this function is for, you shouldn't use - * it!*** - * - * \param a a pointer to a pointer - * \returns the current value of a pointer. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_AtomicCASPtr - * \sa SDL_AtomicSetPtr - */ -extern DECLSPEC void* SDLCALL SDL_AtomicGetPtr(void **a); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif - -#include "close_code.h" - -#endif /* SDL_atomic_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_atomic.h.blob deleted file mode 100644 index 6b07c78f19ad3eedd687b56f2f20ce16b54e682b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21421 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h deleted file mode 100644 index ccd35982..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h +++ /dev/null @@ -1,1500 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/* !!! FIXME: several functions in here need Doxygen comments. */ - -/** - * \file SDL_audio.h - * - * Access to the raw audio mixing buffer for the SDL library. - */ - -#ifndef SDL_audio_h_ -#define SDL_audio_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_endian.h" -#include "SDL_mutex.h" -#include "SDL_thread.h" -#include "SDL_rwops.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \brief Audio format flags. - * - * These are what the 16 bits in SDL_AudioFormat currently mean... - * (Unspecified bits are always zero). - * - * \verbatim - ++-----------------------sample is signed if set - || - || ++-----------sample is bigendian if set - || || - || || ++---sample is float if set - || || || - || || || +---sample bit size---+ - || || || | | - 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 - \endverbatim - * - * There are macros in SDL 2.0 and later to query these bits. - */ -typedef Uint16 SDL_AudioFormat; - -/** - * \name Audio flags - */ -/* @{ */ - -#define SDL_AUDIO_MASK_BITSIZE (0xFF) -#define SDL_AUDIO_MASK_DATATYPE (1<<8) -#define SDL_AUDIO_MASK_ENDIAN (1<<12) -#define SDL_AUDIO_MASK_SIGNED (1<<15) -#define SDL_AUDIO_BITSIZE(x) (x & SDL_AUDIO_MASK_BITSIZE) -#define SDL_AUDIO_ISFLOAT(x) (x & SDL_AUDIO_MASK_DATATYPE) -#define SDL_AUDIO_ISBIGENDIAN(x) (x & SDL_AUDIO_MASK_ENDIAN) -#define SDL_AUDIO_ISSIGNED(x) (x & SDL_AUDIO_MASK_SIGNED) -#define SDL_AUDIO_ISINT(x) (!SDL_AUDIO_ISFLOAT(x)) -#define SDL_AUDIO_ISLITTLEENDIAN(x) (!SDL_AUDIO_ISBIGENDIAN(x)) -#define SDL_AUDIO_ISUNSIGNED(x) (!SDL_AUDIO_ISSIGNED(x)) - -/** - * \name Audio format flags - * - * Defaults to LSB byte order. - */ -/* @{ */ -#define AUDIO_U8 0x0008 /**< Unsigned 8-bit samples */ -#define AUDIO_S8 0x8008 /**< Signed 8-bit samples */ -#define AUDIO_U16LSB 0x0010 /**< Unsigned 16-bit samples */ -#define AUDIO_S16LSB 0x8010 /**< Signed 16-bit samples */ -#define AUDIO_U16MSB 0x1010 /**< As above, but big-endian byte order */ -#define AUDIO_S16MSB 0x9010 /**< As above, but big-endian byte order */ -#define AUDIO_U16 AUDIO_U16LSB -#define AUDIO_S16 AUDIO_S16LSB -/* @} */ - -/** - * \name int32 support - */ -/* @{ */ -#define AUDIO_S32LSB 0x8020 /**< 32-bit integer samples */ -#define AUDIO_S32MSB 0x9020 /**< As above, but big-endian byte order */ -#define AUDIO_S32 AUDIO_S32LSB -/* @} */ - -/** - * \name float32 support - */ -/* @{ */ -#define AUDIO_F32LSB 0x8120 /**< 32-bit floating point samples */ -#define AUDIO_F32MSB 0x9120 /**< As above, but big-endian byte order */ -#define AUDIO_F32 AUDIO_F32LSB -/* @} */ - -/** - * \name Native audio byte ordering - */ -/* @{ */ -#if SDL_BYTEORDER == SDL_LIL_ENDIAN -#define AUDIO_U16SYS AUDIO_U16LSB -#define AUDIO_S16SYS AUDIO_S16LSB -#define AUDIO_S32SYS AUDIO_S32LSB -#define AUDIO_F32SYS AUDIO_F32LSB -#else -#define AUDIO_U16SYS AUDIO_U16MSB -#define AUDIO_S16SYS AUDIO_S16MSB -#define AUDIO_S32SYS AUDIO_S32MSB -#define AUDIO_F32SYS AUDIO_F32MSB -#endif -/* @} */ - -/** - * \name Allow change flags - * - * Which audio format changes are allowed when opening a device. - */ -/* @{ */ -#define SDL_AUDIO_ALLOW_FREQUENCY_CHANGE 0x00000001 -#define SDL_AUDIO_ALLOW_FORMAT_CHANGE 0x00000002 -#define SDL_AUDIO_ALLOW_CHANNELS_CHANGE 0x00000004 -#define SDL_AUDIO_ALLOW_SAMPLES_CHANGE 0x00000008 -#define SDL_AUDIO_ALLOW_ANY_CHANGE (SDL_AUDIO_ALLOW_FREQUENCY_CHANGE|SDL_AUDIO_ALLOW_FORMAT_CHANGE|SDL_AUDIO_ALLOW_CHANNELS_CHANGE|SDL_AUDIO_ALLOW_SAMPLES_CHANGE) -/* @} */ - -/* @} *//* Audio flags */ - -/** - * This function is called when the audio device needs more data. - * - * \param userdata An application-specific parameter saved in - * the SDL_AudioSpec structure - * \param stream A pointer to the audio data buffer. - * \param len The length of that buffer in bytes. - * - * Once the callback returns, the buffer will no longer be valid. - * Stereo samples are stored in a LRLRLR ordering. - * - * You can choose to avoid callbacks and use SDL_QueueAudio() instead, if - * you like. Just open your audio device with a NULL callback. - */ -typedef void (SDLCALL * SDL_AudioCallback) (void *userdata, Uint8 * stream, - int len); - -/** - * The calculated values in this structure are calculated by SDL_OpenAudio(). - * - * For multi-channel audio, the default SDL channel mapping is: - * 2: FL FR (stereo) - * 3: FL FR LFE (2.1 surround) - * 4: FL FR BL BR (quad) - * 5: FL FR LFE BL BR (4.1 surround) - * 6: FL FR FC LFE SL SR (5.1 surround - last two can also be BL BR) - * 7: FL FR FC LFE BC SL SR (6.1 surround) - * 8: FL FR FC LFE BL BR SL SR (7.1 surround) - */ -typedef struct SDL_AudioSpec -{ - int freq; /**< DSP frequency -- samples per second */ - SDL_AudioFormat format; /**< Audio data format */ - Uint8 channels; /**< Number of channels: 1 mono, 2 stereo */ - Uint8 silence; /**< Audio buffer silence value (calculated) */ - Uint16 samples; /**< Audio buffer size in sample FRAMES (total samples divided by channel count) */ - Uint16 padding; /**< Necessary for some compile environments */ - Uint32 size; /**< Audio buffer size in bytes (calculated) */ - SDL_AudioCallback callback; /**< Callback that feeds the audio device (NULL to use SDL_QueueAudio()). */ - void *userdata; /**< Userdata passed to callback (ignored for NULL callbacks). */ -} SDL_AudioSpec; - - -struct SDL_AudioCVT; -typedef void (SDLCALL * SDL_AudioFilter) (struct SDL_AudioCVT * cvt, - SDL_AudioFormat format); - -/** - * \brief Upper limit of filters in SDL_AudioCVT - * - * The maximum number of SDL_AudioFilter functions in SDL_AudioCVT is - * currently limited to 9. The SDL_AudioCVT.filters array has 10 pointers, - * one of which is the terminating NULL pointer. - */ -#define SDL_AUDIOCVT_MAX_FILTERS 9 - -/** - * \struct SDL_AudioCVT - * \brief A structure to hold a set of audio conversion filters and buffers. - * - * Note that various parts of the conversion pipeline can take advantage - * of SIMD operations (like SSE2, for example). SDL_AudioCVT doesn't require - * you to pass it aligned data, but can possibly run much faster if you - * set both its (buf) field to a pointer that is aligned to 16 bytes, and its - * (len) field to something that's a multiple of 16, if possible. - */ -#if defined(__GNUC__) && !defined(__CHERI_PURE_CAPABILITY__) -/* This structure is 84 bytes on 32-bit architectures, make sure GCC doesn't - pad it out to 88 bytes to guarantee ABI compatibility between compilers. - This is not a concern on CHERI architectures, where pointers must be stored - at aligned locations otherwise they will become invalid, and thus structs - containing pointers cannot be packed without giving a warning or error. - vvv - The next time we rev the ABI, make sure to size the ints and add padding. -*/ -#define SDL_AUDIOCVT_PACKED __attribute__((packed)) -#else -#define SDL_AUDIOCVT_PACKED -#endif -/* */ -typedef struct SDL_AudioCVT -{ - int needed; /**< Set to 1 if conversion possible */ - SDL_AudioFormat src_format; /**< Source audio format */ - SDL_AudioFormat dst_format; /**< Target audio format */ - double rate_incr; /**< Rate conversion increment */ - Uint8 *buf; /**< Buffer to hold entire audio data */ - int len; /**< Length of original audio buffer */ - int len_cvt; /**< Length of converted audio buffer */ - int len_mult; /**< buffer must be len*len_mult big */ - double len_ratio; /**< Given len, final size is len*len_ratio */ - SDL_AudioFilter filters[SDL_AUDIOCVT_MAX_FILTERS + 1]; /**< NULL-terminated list of filter functions */ - int filter_index; /**< Current audio conversion function */ -} SDL_AUDIOCVT_PACKED SDL_AudioCVT; - - -/* Function prototypes */ - -/** - * \name Driver discovery functions - * - * These functions return the list of built in audio drivers, in the - * order that they are normally initialized by default. - */ -/* @{ */ - -/** - * Use this function to get the number of built-in audio drivers. - * - * This function returns a hardcoded number. This never returns a negative - * value; if there are no drivers compiled into this build of SDL, this - * function returns zero. The presence of a driver in this list does not mean - * it will function, it just means SDL is capable of interacting with that - * interface. For example, a build of SDL might have esound support, but if - * there's no esound server available, SDL's esound driver would fail if used. - * - * By default, SDL tries all drivers, in its preferred order, until one is - * found to be usable. - * - * \returns the number of built-in audio drivers. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetAudioDriver - */ -extern DECLSPEC int SDLCALL SDL_GetNumAudioDrivers(void); - -/** - * Use this function to get the name of a built in audio driver. - * - * The list of audio drivers is given in the order that they are normally - * initialized by default; the drivers that seem more reasonable to choose - * first (as far as the SDL developers believe) are earlier in the list. - * - * The names of drivers are all simple, low-ASCII identifiers, like "alsa", - * "coreaudio" or "xaudio2". These never have Unicode characters, and are not - * meant to be proper names. - * - * \param index the index of the audio driver; the value ranges from 0 to - * SDL_GetNumAudioDrivers() - 1 - * \returns the name of the audio driver at the requested index, or NULL if an - * invalid index was specified. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumAudioDrivers - */ -extern DECLSPEC const char *SDLCALL SDL_GetAudioDriver(int index); -/* @} */ - -/** - * \name Initialization and cleanup - * - * \internal These functions are used internally, and should not be used unless - * you have a specific need to specify the audio driver you want to - * use. You should normally use SDL_Init() or SDL_InitSubSystem(). - */ -/* @{ */ - -/** - * Use this function to initialize a particular audio driver. - * - * This function is used internally, and should not be used unless you have a - * specific need to designate the audio driver you want to use. You should - * normally use SDL_Init() or SDL_InitSubSystem(). - * - * \param driver_name the name of the desired audio driver - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AudioQuit - */ -extern DECLSPEC int SDLCALL SDL_AudioInit(const char *driver_name); - -/** - * Use this function to shut down audio if you initialized it with - * SDL_AudioInit(). - * - * This function is used internally, and should not be used unless you have a - * specific need to specify the audio driver you want to use. You should - * normally use SDL_Quit() or SDL_QuitSubSystem(). - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AudioInit - */ -extern DECLSPEC void SDLCALL SDL_AudioQuit(void); -/* @} */ - -/** - * Get the name of the current audio driver. - * - * The returned string points to internal static memory and thus never becomes - * invalid, even if you quit the audio subsystem and initialize a new driver - * (although such a case would return a different static string from another - * call to this function, of course). As such, you should not modify or free - * the returned string. - * - * \returns the name of the current audio driver or NULL if no driver has been - * initialized. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AudioInit - */ -extern DECLSPEC const char *SDLCALL SDL_GetCurrentAudioDriver(void); - -/** - * This function is a legacy means of opening the audio device. - * - * This function remains for compatibility with SDL 1.2, but also because it's - * slightly easier to use than the new functions in SDL 2.0. The new, more - * powerful, and preferred way to do this is SDL_OpenAudioDevice(). - * - * This function is roughly equivalent to: - * - * ```c - * SDL_OpenAudioDevice(NULL, 0, desired, obtained, SDL_AUDIO_ALLOW_ANY_CHANGE); - * ``` - * - * With two notable exceptions: - * - * - If `obtained` is NULL, we use `desired` (and allow no changes), which - * means desired will be modified to have the correct values for silence, - * etc, and SDL will convert any differences between your app's specific - * request and the hardware behind the scenes. - * - The return value is always success or failure, and not a device ID, which - * means you can only have one device open at a time with this function. - * - * \param desired an SDL_AudioSpec structure representing the desired output - * format. Please refer to the SDL_OpenAudioDevice - * documentation for details on how to prepare this structure. - * \param obtained an SDL_AudioSpec structure filled in with the actual - * parameters, or NULL. - * \returns 0 if successful, placing the actual hardware parameters in the - * structure pointed to by `obtained`. - * - * If `obtained` is NULL, the audio data passed to the callback - * function will be guaranteed to be in the requested format, and - * will be automatically converted to the actual hardware audio - * format if necessary. If `obtained` is NULL, `desired` will have - * fields modified. - * - * This function returns a negative error code on failure to open the - * audio device or failure to set up the audio thread; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CloseAudio - * \sa SDL_LockAudio - * \sa SDL_PauseAudio - * \sa SDL_UnlockAudio - */ -extern DECLSPEC int SDLCALL SDL_OpenAudio(SDL_AudioSpec * desired, - SDL_AudioSpec * obtained); - -/** - * SDL Audio Device IDs. - * - * A successful call to SDL_OpenAudio() is always device id 1, and legacy - * SDL audio APIs assume you want this device ID. SDL_OpenAudioDevice() calls - * always returns devices >= 2 on success. The legacy calls are good both - * for backwards compatibility and when you don't care about multiple, - * specific, or capture devices. - */ -typedef Uint32 SDL_AudioDeviceID; - -/** - * Get the number of built-in audio devices. - * - * This function is only valid after successfully initializing the audio - * subsystem. - * - * Note that audio capture support is not implemented as of SDL 2.0.4, so the - * `iscapture` parameter is for future expansion and should always be zero for - * now. - * - * This function will return -1 if an explicit list of devices can't be - * determined. Returning -1 is not an error. For example, if SDL is set up to - * talk to a remote audio server, it can't list every one available on the - * Internet, but it will still allow a specific host to be specified in - * SDL_OpenAudioDevice(). - * - * In many common cases, when this function returns a value <= 0, it can still - * successfully open the default device (NULL for first argument of - * SDL_OpenAudioDevice()). - * - * This function may trigger a complete redetect of available hardware. It - * should not be called for each iteration of a loop, but rather once at the - * start of a loop: - * - * ```c - * // Don't do this: - * for (int i = 0; i < SDL_GetNumAudioDevices(0); i++) - * - * // do this instead: - * const int count = SDL_GetNumAudioDevices(0); - * for (int i = 0; i < count; ++i) { do_something_here(); } - * ``` - * - * \param iscapture zero to request playback devices, non-zero to request - * recording devices - * \returns the number of available devices exposed by the current driver or - * -1 if an explicit list of devices can't be determined. A return - * value of -1 does not necessarily mean an error condition. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetAudioDeviceName - * \sa SDL_OpenAudioDevice - */ -extern DECLSPEC int SDLCALL SDL_GetNumAudioDevices(int iscapture); - -/** - * Get the human-readable name of a specific audio device. - * - * This function is only valid after successfully initializing the audio - * subsystem. The values returned by this function reflect the latest call to - * SDL_GetNumAudioDevices(); re-call that function to redetect available - * hardware. - * - * The string returned by this function is UTF-8 encoded, read-only, and - * managed internally. You are not to free it. If you need to keep the string - * for any length of time, you should make your own copy of it, as it will be - * invalid next time any of several other SDL functions are called. - * - * \param index the index of the audio device; valid values range from 0 to - * SDL_GetNumAudioDevices() - 1 - * \param iscapture non-zero to query the list of recording devices, zero to - * query the list of output devices. - * \returns the name of the audio device at the requested index, or NULL on - * error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumAudioDevices - * \sa SDL_GetDefaultAudioInfo - */ -extern DECLSPEC const char *SDLCALL SDL_GetAudioDeviceName(int index, - int iscapture); - -/** - * Get the preferred audio format of a specific audio device. - * - * This function is only valid after a successfully initializing the audio - * subsystem. The values returned by this function reflect the latest call to - * SDL_GetNumAudioDevices(); re-call that function to redetect available - * hardware. - * - * `spec` will be filled with the sample rate, sample format, and channel - * count. - * - * \param index the index of the audio device; valid values range from 0 to - * SDL_GetNumAudioDevices() - 1 - * \param iscapture non-zero to query the list of recording devices, zero to - * query the list of output devices. - * \param spec The SDL_AudioSpec to be initialized by this function. - * \returns 0 on success, nonzero on error - * - * \since This function is available since SDL 2.0.16. - * - * \sa SDL_GetNumAudioDevices - * \sa SDL_GetDefaultAudioInfo - */ -extern DECLSPEC int SDLCALL SDL_GetAudioDeviceSpec(int index, - int iscapture, - SDL_AudioSpec *spec); - - -/** - * Get the name and preferred format of the default audio device. - * - * Some (but not all!) platforms have an isolated mechanism to get information - * about the "default" device. This can actually be a completely different - * device that's not in the list you get from SDL_GetAudioDeviceSpec(). It can - * even be a network address! (This is discussed in SDL_OpenAudioDevice().) - * - * As a result, this call is not guaranteed to be performant, as it can query - * the sound server directly every time, unlike the other query functions. You - * should call this function sparingly! - * - * `spec` will be filled with the sample rate, sample format, and channel - * count, if a default device exists on the system. If `name` is provided, - * will be filled with either a dynamically-allocated UTF-8 string or NULL. - * - * \param name A pointer to be filled with the name of the default device (can - * be NULL). Please call SDL_free() when you are done with this - * pointer! - * \param spec The SDL_AudioSpec to be initialized by this function. - * \param iscapture non-zero to query the default recording device, zero to - * query the default output device. - * \returns 0 on success, nonzero on error - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GetAudioDeviceName - * \sa SDL_GetAudioDeviceSpec - * \sa SDL_OpenAudioDevice - */ -extern DECLSPEC int SDLCALL SDL_GetDefaultAudioInfo(char **name, - SDL_AudioSpec *spec, - int iscapture); - - -/** - * Open a specific audio device. - * - * SDL_OpenAudio(), unlike this function, always acts on device ID 1. As such, - * this function will never return a 1 so as not to conflict with the legacy - * function. - * - * Please note that SDL 2.0 before 2.0.5 did not support recording; as such, - * this function would fail if `iscapture` was not zero. Starting with SDL - * 2.0.5, recording is implemented and this value can be non-zero. - * - * Passing in a `device` name of NULL requests the most reasonable default - * (and is equivalent to what SDL_OpenAudio() does to choose a device). The - * `device` name is a UTF-8 string reported by SDL_GetAudioDeviceName(), but - * some drivers allow arbitrary and driver-specific strings, such as a - * hostname/IP address for a remote audio server, or a filename in the - * diskaudio driver. - * - * An opened audio device starts out paused, and should be enabled for playing - * by calling SDL_PauseAudioDevice(devid, 0) when you are ready for your audio - * callback function to be called. Since the audio driver may modify the - * requested size of the audio buffer, you should allocate any local mixing - * buffers after you open the audio device. - * - * The audio callback runs in a separate thread in most cases; you can prevent - * race conditions between your callback and other threads without fully - * pausing playback with SDL_LockAudioDevice(). For more information about the - * callback, see SDL_AudioSpec. - * - * Managing the audio spec via 'desired' and 'obtained': - * - * When filling in the desired audio spec structure: - * - * - `desired->freq` should be the frequency in sample-frames-per-second (Hz). - * - `desired->format` should be the audio format (`AUDIO_S16SYS`, etc). - * - `desired->samples` is the desired size of the audio buffer, in _sample - * frames_ (with stereo output, two samples--left and right--would make a - * single sample frame). This number should be a power of two, and may be - * adjusted by the audio driver to a value more suitable for the hardware. - * Good values seem to range between 512 and 8096 inclusive, depending on - * the application and CPU speed. Smaller values reduce latency, but can - * lead to underflow if the application is doing heavy processing and cannot - * fill the audio buffer in time. Note that the number of sample frames is - * directly related to time by the following formula: `ms = - * (sampleframes*1000)/freq` - * - `desired->size` is the size in _bytes_ of the audio buffer, and is - * calculated by SDL_OpenAudioDevice(). You don't initialize this. - * - `desired->silence` is the value used to set the buffer to silence, and is - * calculated by SDL_OpenAudioDevice(). You don't initialize this. - * - `desired->callback` should be set to a function that will be called when - * the audio device is ready for more data. It is passed a pointer to the - * audio buffer, and the length in bytes of the audio buffer. This function - * usually runs in a separate thread, and so you should protect data - * structures that it accesses by calling SDL_LockAudioDevice() and - * SDL_UnlockAudioDevice() in your code. Alternately, you may pass a NULL - * pointer here, and call SDL_QueueAudio() with some frequency, to queue - * more audio samples to be played (or for capture devices, call - * SDL_DequeueAudio() with some frequency, to obtain audio samples). - * - `desired->userdata` is passed as the first parameter to your callback - * function. If you passed a NULL callback, this value is ignored. - * - * `allowed_changes` can have the following flags OR'd together: - * - * - `SDL_AUDIO_ALLOW_FREQUENCY_CHANGE` - * - `SDL_AUDIO_ALLOW_FORMAT_CHANGE` - * - `SDL_AUDIO_ALLOW_CHANNELS_CHANGE` - * - `SDL_AUDIO_ALLOW_SAMPLES_CHANGE` - * - `SDL_AUDIO_ALLOW_ANY_CHANGE` - * - * These flags specify how SDL should behave when a device cannot offer a - * specific feature. If the application requests a feature that the hardware - * doesn't offer, SDL will always try to get the closest equivalent. - * - * For example, if you ask for float32 audio format, but the sound card only - * supports int16, SDL will set the hardware to int16. If you had set - * SDL_AUDIO_ALLOW_FORMAT_CHANGE, SDL will change the format in the `obtained` - * structure. If that flag was *not* set, SDL will prepare to convert your - * callback's float32 audio to int16 before feeding it to the hardware and - * will keep the originally requested format in the `obtained` structure. - * - * The resulting audio specs, varying depending on hardware and on what - * changes were allowed, will then be written back to `obtained`. - * - * If your application can only handle one specific data format, pass a zero - * for `allowed_changes` and let SDL transparently handle any differences. - * - * \param device a UTF-8 string reported by SDL_GetAudioDeviceName() or a - * driver-specific name as appropriate. NULL requests the most - * reasonable default device. - * \param iscapture non-zero to specify a device should be opened for - * recording, not playback - * \param desired an SDL_AudioSpec structure representing the desired output - * format; see SDL_OpenAudio() for more information - * \param obtained an SDL_AudioSpec structure filled in with the actual output - * format; see SDL_OpenAudio() for more information - * \param allowed_changes 0, or one or more flags OR'd together - * \returns a valid device ID that is > 0 on success or 0 on failure; call - * SDL_GetError() for more information. - * - * For compatibility with SDL 1.2, this will never return 1, since - * SDL reserves that ID for the legacy SDL_OpenAudio() function. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CloseAudioDevice - * \sa SDL_GetAudioDeviceName - * \sa SDL_LockAudioDevice - * \sa SDL_OpenAudio - * \sa SDL_PauseAudioDevice - * \sa SDL_UnlockAudioDevice - */ -extern DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice( - const char *device, - int iscapture, - const SDL_AudioSpec *desired, - SDL_AudioSpec *obtained, - int allowed_changes); - - - -/** - * \name Audio state - * - * Get the current audio state. - */ -/* @{ */ -typedef enum -{ - SDL_AUDIO_STOPPED = 0, - SDL_AUDIO_PLAYING, - SDL_AUDIO_PAUSED -} SDL_AudioStatus; - -/** - * This function is a legacy means of querying the audio device. - * - * New programs might want to use SDL_GetAudioDeviceStatus() instead. This - * function is equivalent to calling... - * - * ```c - * SDL_GetAudioDeviceStatus(1); - * ``` - * - * ...and is only useful if you used the legacy SDL_OpenAudio() function. - * - * \returns the SDL_AudioStatus of the audio device opened by SDL_OpenAudio(). - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetAudioDeviceStatus - */ -extern DECLSPEC SDL_AudioStatus SDLCALL SDL_GetAudioStatus(void); - -/** - * Use this function to get the current audio state of an audio device. - * - * \param dev the ID of an audio device previously opened with - * SDL_OpenAudioDevice() - * \returns the SDL_AudioStatus of the specified audio device. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PauseAudioDevice - */ -extern DECLSPEC SDL_AudioStatus SDLCALL SDL_GetAudioDeviceStatus(SDL_AudioDeviceID dev); -/* @} *//* Audio State */ - -/** - * \name Pause audio functions - * - * These functions pause and unpause the audio callback processing. - * They should be called with a parameter of 0 after opening the audio - * device to start playing sound. This is so you can safely initialize - * data for your callback function after opening the audio device. - * Silence will be written to the audio device during the pause. - */ -/* @{ */ - -/** - * This function is a legacy means of pausing the audio device. - * - * New programs might want to use SDL_PauseAudioDevice() instead. This - * function is equivalent to calling... - * - * ```c - * SDL_PauseAudioDevice(1, pause_on); - * ``` - * - * ...and is only useful if you used the legacy SDL_OpenAudio() function. - * - * \param pause_on non-zero to pause, 0 to unpause - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetAudioStatus - * \sa SDL_PauseAudioDevice - */ -extern DECLSPEC void SDLCALL SDL_PauseAudio(int pause_on); - -/** - * Use this function to pause and unpause audio playback on a specified - * device. - * - * This function pauses and unpauses the audio callback processing for a given - * device. Newly-opened audio devices start in the paused state, so you must - * call this function with **pause_on**=0 after opening the specified audio - * device to start playing sound. This allows you to safely initialize data - * for your callback function after opening the audio device. Silence will be - * written to the audio device while paused, and the audio callback is - * guaranteed to not be called. Pausing one device does not prevent other - * unpaused devices from running their callbacks. - * - * Pausing state does not stack; even if you pause a device several times, a - * single unpause will start the device playing again, and vice versa. This is - * different from how SDL_LockAudioDevice() works. - * - * If you just need to protect a few variables from race conditions vs your - * callback, you shouldn't pause the audio device, as it will lead to dropouts - * in the audio playback. Instead, you should use SDL_LockAudioDevice(). - * - * \param dev a device opened by SDL_OpenAudioDevice() - * \param pause_on non-zero to pause, 0 to unpause - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LockAudioDevice - */ -extern DECLSPEC void SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev, - int pause_on); -/* @} *//* Pause audio functions */ - -/** - * Load the audio data of a WAVE file into memory. - * - * Loading a WAVE file requires `src`, `spec`, `audio_buf` and `audio_len` to - * be valid pointers. The entire data portion of the file is then loaded into - * memory and decoded if necessary. - * - * If `freesrc` is non-zero, the data source gets automatically closed and - * freed before the function returns. - * - * Supported formats are RIFF WAVE files with the formats PCM (8, 16, 24, and - * 32 bits), IEEE Float (32 bits), Microsoft ADPCM and IMA ADPCM (4 bits), and - * A-law and mu-law (8 bits). Other formats are currently unsupported and - * cause an error. - * - * If this function succeeds, the pointer returned by it is equal to `spec` - * and the pointer to the audio data allocated by the function is written to - * `audio_buf` and its length in bytes to `audio_len`. The SDL_AudioSpec - * members `freq`, `channels`, and `format` are set to the values of the audio - * data in the buffer. The `samples` member is set to a sane default and all - * others are set to zero. - * - * It's necessary to use SDL_FreeWAV() to free the audio data returned in - * `audio_buf` when it is no longer used. - * - * Because of the underspecification of the .WAV format, there are many - * problematic files in the wild that cause issues with strict decoders. To - * provide compatibility with these files, this decoder is lenient in regards - * to the truncation of the file, the fact chunk, and the size of the RIFF - * chunk. The hints `SDL_HINT_WAVE_RIFF_CHUNK_SIZE`, - * `SDL_HINT_WAVE_TRUNCATION`, and `SDL_HINT_WAVE_FACT_CHUNK` can be used to - * tune the behavior of the loading process. - * - * Any file that is invalid (due to truncation, corruption, or wrong values in - * the headers), too big, or unsupported causes an error. Additionally, any - * critical I/O error from the data source will terminate the loading process - * with an error. The function returns NULL on error and in all cases (with - * the exception of `src` being NULL), an appropriate error message will be - * set. - * - * It is required that the data source supports seeking. - * - * Example: - * - * ```c - * SDL_LoadWAV_RW(SDL_RWFromFile("sample.wav", "rb"), 1, &spec, &buf, &len); - * ``` - * - * Note that the SDL_LoadWAV macro does this same thing for you, but in a less - * messy way: - * - * ```c - * SDL_LoadWAV("sample.wav", &spec, &buf, &len); - * ``` - * - * \param src The data source for the WAVE data - * \param freesrc If non-zero, SDL will _always_ free the data source - * \param spec An SDL_AudioSpec that will be filled in with the wave file's - * format details - * \param audio_buf A pointer filled with the audio data, allocated by the - * function. - * \param audio_len A pointer filled with the length of the audio data buffer - * in bytes - * \returns This function, if successfully called, returns `spec`, which will - * be filled with the audio data format of the wave source data. - * `audio_buf` will be filled with a pointer to an allocated buffer - * containing the audio data, and `audio_len` is filled with the - * length of that audio buffer in bytes. - * - * This function returns NULL if the .WAV file cannot be opened, uses - * an unknown data format, or is corrupt; call SDL_GetError() for - * more information. - * - * When the application is done with the data returned in - * `audio_buf`, it should call SDL_FreeWAV() to dispose of it. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FreeWAV - * \sa SDL_LoadWAV - */ -extern DECLSPEC SDL_AudioSpec *SDLCALL SDL_LoadWAV_RW(SDL_RWops * src, - int freesrc, - SDL_AudioSpec * spec, - Uint8 ** audio_buf, - Uint32 * audio_len); - -/** - * Loads a WAV from a file. - * Compatibility convenience function. - */ -#define SDL_LoadWAV(file, spec, audio_buf, audio_len) \ - SDL_LoadWAV_RW(SDL_RWFromFile(file, "rb"),1, spec,audio_buf,audio_len) - -/** - * Free data previously allocated with SDL_LoadWAV() or SDL_LoadWAV_RW(). - * - * After a WAVE file has been opened with SDL_LoadWAV() or SDL_LoadWAV_RW() - * its data can eventually be freed with SDL_FreeWAV(). It is safe to call - * this function with a NULL pointer. - * - * \param audio_buf a pointer to the buffer created by SDL_LoadWAV() or - * SDL_LoadWAV_RW() - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LoadWAV - * \sa SDL_LoadWAV_RW - */ -extern DECLSPEC void SDLCALL SDL_FreeWAV(Uint8 * audio_buf); - -/** - * Initialize an SDL_AudioCVT structure for conversion. - * - * Before an SDL_AudioCVT structure can be used to convert audio data it must - * be initialized with source and destination information. - * - * This function will zero out every field of the SDL_AudioCVT, so it must be - * called before the application fills in the final buffer information. - * - * Once this function has returned successfully, and reported that a - * conversion is necessary, the application fills in the rest of the fields in - * SDL_AudioCVT, now that it knows how large a buffer it needs to allocate, - * and then can call SDL_ConvertAudio() to complete the conversion. - * - * \param cvt an SDL_AudioCVT structure filled in with audio conversion - * information - * \param src_format the source format of the audio data; for more info see - * SDL_AudioFormat - * \param src_channels the number of channels in the source - * \param src_rate the frequency (sample-frames-per-second) of the source - * \param dst_format the destination format of the audio data; for more info - * see SDL_AudioFormat - * \param dst_channels the number of channels in the destination - * \param dst_rate the frequency (sample-frames-per-second) of the destination - * \returns 1 if the audio filter is prepared, 0 if no conversion is needed, - * or a negative error code on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ConvertAudio - */ -extern DECLSPEC int SDLCALL SDL_BuildAudioCVT(SDL_AudioCVT * cvt, - SDL_AudioFormat src_format, - Uint8 src_channels, - int src_rate, - SDL_AudioFormat dst_format, - Uint8 dst_channels, - int dst_rate); - -/** - * Convert audio data to a desired audio format. - * - * This function does the actual audio data conversion, after the application - * has called SDL_BuildAudioCVT() to prepare the conversion information and - * then filled in the buffer details. - * - * Once the application has initialized the `cvt` structure using - * SDL_BuildAudioCVT(), allocated an audio buffer and filled it with audio - * data in the source format, this function will convert the buffer, in-place, - * to the desired format. - * - * The data conversion may go through several passes; any given pass may - * possibly temporarily increase the size of the data. For example, SDL might - * expand 16-bit data to 32 bits before resampling to a lower frequency, - * shrinking the data size after having grown it briefly. Since the supplied - * buffer will be both the source and destination, converting as necessary - * in-place, the application must allocate a buffer that will fully contain - * the data during its largest conversion pass. After SDL_BuildAudioCVT() - * returns, the application should set the `cvt->len` field to the size, in - * bytes, of the source data, and allocate a buffer that is `cvt->len * - * cvt->len_mult` bytes long for the `buf` field. - * - * The source data should be copied into this buffer before the call to - * SDL_ConvertAudio(). Upon successful return, this buffer will contain the - * converted audio, and `cvt->len_cvt` will be the size of the converted data, - * in bytes. Any bytes in the buffer past `cvt->len_cvt` are undefined once - * this function returns. - * - * \param cvt an SDL_AudioCVT structure that was previously set up by - * SDL_BuildAudioCVT(). - * \returns 0 if the conversion was completed successfully or a negative error - * code on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BuildAudioCVT - */ -extern DECLSPEC int SDLCALL SDL_ConvertAudio(SDL_AudioCVT * cvt); - -/* SDL_AudioStream is a new audio conversion interface. - The benefits vs SDL_AudioCVT: - - it can handle resampling data in chunks without generating - artifacts, when it doesn't have the complete buffer available. - - it can handle incoming data in any variable size. - - You push data as you have it, and pull it when you need it - */ -/* this is opaque to the outside world. */ -struct _SDL_AudioStream; -typedef struct _SDL_AudioStream SDL_AudioStream; - -/** - * Create a new audio stream. - * - * \param src_format The format of the source audio - * \param src_channels The number of channels of the source audio - * \param src_rate The sampling rate of the source audio - * \param dst_format The format of the desired audio output - * \param dst_channels The number of channels of the desired audio output - * \param dst_rate The sampling rate of the desired audio output - * \returns 0 on success, or -1 on error. - * - * \since This function is available since SDL 2.0.7. - * - * \sa SDL_AudioStreamPut - * \sa SDL_AudioStreamGet - * \sa SDL_AudioStreamAvailable - * \sa SDL_AudioStreamFlush - * \sa SDL_AudioStreamClear - * \sa SDL_FreeAudioStream - */ -extern DECLSPEC SDL_AudioStream * SDLCALL SDL_NewAudioStream(const SDL_AudioFormat src_format, - const Uint8 src_channels, - const int src_rate, - const SDL_AudioFormat dst_format, - const Uint8 dst_channels, - const int dst_rate); - -/** - * Add data to be converted/resampled to the stream. - * - * \param stream The stream the audio data is being added to - * \param buf A pointer to the audio data to add - * \param len The number of bytes to write to the stream - * \returns 0 on success, or -1 on error. - * - * \since This function is available since SDL 2.0.7. - * - * \sa SDL_NewAudioStream - * \sa SDL_AudioStreamGet - * \sa SDL_AudioStreamAvailable - * \sa SDL_AudioStreamFlush - * \sa SDL_AudioStreamClear - * \sa SDL_FreeAudioStream - */ -extern DECLSPEC int SDLCALL SDL_AudioStreamPut(SDL_AudioStream *stream, const void *buf, int len); - -/** - * Get converted/resampled data from the stream - * - * \param stream The stream the audio is being requested from - * \param buf A buffer to fill with audio data - * \param len The maximum number of bytes to fill - * \returns the number of bytes read from the stream, or -1 on error - * - * \since This function is available since SDL 2.0.7. - * - * \sa SDL_NewAudioStream - * \sa SDL_AudioStreamPut - * \sa SDL_AudioStreamAvailable - * \sa SDL_AudioStreamFlush - * \sa SDL_AudioStreamClear - * \sa SDL_FreeAudioStream - */ -extern DECLSPEC int SDLCALL SDL_AudioStreamGet(SDL_AudioStream *stream, void *buf, int len); - -/** - * Get the number of converted/resampled bytes available. - * - * The stream may be buffering data behind the scenes until it has enough to - * resample correctly, so this number might be lower than what you expect, or - * even be zero. Add more data or flush the stream if you need the data now. - * - * \since This function is available since SDL 2.0.7. - * - * \sa SDL_NewAudioStream - * \sa SDL_AudioStreamPut - * \sa SDL_AudioStreamGet - * \sa SDL_AudioStreamFlush - * \sa SDL_AudioStreamClear - * \sa SDL_FreeAudioStream - */ -extern DECLSPEC int SDLCALL SDL_AudioStreamAvailable(SDL_AudioStream *stream); - -/** - * Tell the stream that you're done sending data, and anything being buffered - * should be converted/resampled and made available immediately. - * - * It is legal to add more data to a stream after flushing, but there will be - * audio gaps in the output. Generally this is intended to signal the end of - * input, so the complete output becomes available. - * - * \since This function is available since SDL 2.0.7. - * - * \sa SDL_NewAudioStream - * \sa SDL_AudioStreamPut - * \sa SDL_AudioStreamGet - * \sa SDL_AudioStreamAvailable - * \sa SDL_AudioStreamClear - * \sa SDL_FreeAudioStream - */ -extern DECLSPEC int SDLCALL SDL_AudioStreamFlush(SDL_AudioStream *stream); - -/** - * Clear any pending data in the stream without converting it - * - * \since This function is available since SDL 2.0.7. - * - * \sa SDL_NewAudioStream - * \sa SDL_AudioStreamPut - * \sa SDL_AudioStreamGet - * \sa SDL_AudioStreamAvailable - * \sa SDL_AudioStreamFlush - * \sa SDL_FreeAudioStream - */ -extern DECLSPEC void SDLCALL SDL_AudioStreamClear(SDL_AudioStream *stream); - -/** - * Free an audio stream - * - * \since This function is available since SDL 2.0.7. - * - * \sa SDL_NewAudioStream - * \sa SDL_AudioStreamPut - * \sa SDL_AudioStreamGet - * \sa SDL_AudioStreamAvailable - * \sa SDL_AudioStreamFlush - * \sa SDL_AudioStreamClear - */ -extern DECLSPEC void SDLCALL SDL_FreeAudioStream(SDL_AudioStream *stream); - -#define SDL_MIX_MAXVOLUME 128 - -/** - * This function is a legacy means of mixing audio. - * - * This function is equivalent to calling... - * - * ```c - * SDL_MixAudioFormat(dst, src, format, len, volume); - * ``` - * - * ...where `format` is the obtained format of the audio device from the - * legacy SDL_OpenAudio() function. - * - * \param dst the destination for the mixed audio - * \param src the source audio buffer to be mixed - * \param len the length of the audio buffer in bytes - * \param volume ranges from 0 - 128, and should be set to SDL_MIX_MAXVOLUME - * for full audio volume - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_MixAudioFormat - */ -extern DECLSPEC void SDLCALL SDL_MixAudio(Uint8 * dst, const Uint8 * src, - Uint32 len, int volume); - -/** - * Mix audio data in a specified format. - * - * This takes an audio buffer `src` of `len` bytes of `format` data and mixes - * it into `dst`, performing addition, volume adjustment, and overflow - * clipping. The buffer pointed to by `dst` must also be `len` bytes of - * `format` data. - * - * This is provided for convenience -- you can mix your own audio data. - * - * Do not use this function for mixing together more than two streams of - * sample data. The output from repeated application of this function may be - * distorted by clipping, because there is no accumulator with greater range - * than the input (not to mention this being an inefficient way of doing it). - * - * It is a common misconception that this function is required to write audio - * data to an output stream in an audio callback. While you can do that, - * SDL_MixAudioFormat() is really only needed when you're mixing a single - * audio stream with a volume adjustment. - * - * \param dst the destination for the mixed audio - * \param src the source audio buffer to be mixed - * \param format the SDL_AudioFormat structure representing the desired audio - * format - * \param len the length of the audio buffer in bytes - * \param volume ranges from 0 - 128, and should be set to SDL_MIX_MAXVOLUME - * for full audio volume - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC void SDLCALL SDL_MixAudioFormat(Uint8 * dst, - const Uint8 * src, - SDL_AudioFormat format, - Uint32 len, int volume); - -/** - * Queue more audio on non-callback devices. - * - * If you are looking to retrieve queued audio from a non-callback capture - * device, you want SDL_DequeueAudio() instead. SDL_QueueAudio() will return - * -1 to signify an error if you use it with capture devices. - * - * SDL offers two ways to feed audio to the device: you can either supply a - * callback that SDL triggers with some frequency to obtain more audio (pull - * method), or you can supply no callback, and then SDL will expect you to - * supply data at regular intervals (push method) with this function. - * - * There are no limits on the amount of data you can queue, short of - * exhaustion of address space. Queued data will drain to the device as - * necessary without further intervention from you. If the device needs audio - * but there is not enough queued, it will play silence to make up the - * difference. This means you will have skips in your audio playback if you - * aren't routinely queueing sufficient data. - * - * This function copies the supplied data, so you are safe to free it when the - * function returns. This function is thread-safe, but queueing to the same - * device from two threads at once does not promise which buffer will be - * queued first. - * - * You may not queue audio on a device that is using an application-supplied - * callback; doing so returns an error. You have to use the audio callback or - * queue audio with this function, but not both. - * - * You should not call SDL_LockAudio() on the device before queueing; SDL - * handles locking internally for this function. - * - * Note that SDL2 does not support planar audio. You will need to resample - * from planar audio formats into a non-planar one (see SDL_AudioFormat) - * before queuing audio. - * - * \param dev the device ID to which we will queue audio - * \param data the data to queue to the device for later playback - * \param len the number of bytes (not samples!) to which `data` points - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_ClearQueuedAudio - * \sa SDL_GetQueuedAudioSize - */ -extern DECLSPEC int SDLCALL SDL_QueueAudio(SDL_AudioDeviceID dev, const void *data, Uint32 len); - -/** - * Dequeue more audio on non-callback devices. - * - * If you are looking to queue audio for output on a non-callback playback - * device, you want SDL_QueueAudio() instead. SDL_DequeueAudio() will always - * return 0 if you use it with playback devices. - * - * SDL offers two ways to retrieve audio from a capture device: you can either - * supply a callback that SDL triggers with some frequency as the device - * records more audio data, (push method), or you can supply no callback, and - * then SDL will expect you to retrieve data at regular intervals (pull - * method) with this function. - * - * There are no limits on the amount of data you can queue, short of - * exhaustion of address space. Data from the device will keep queuing as - * necessary without further intervention from you. This means you will - * eventually run out of memory if you aren't routinely dequeueing data. - * - * Capture devices will not queue data when paused; if you are expecting to - * not need captured audio for some length of time, use SDL_PauseAudioDevice() - * to stop the capture device from queueing more data. This can be useful - * during, say, level loading times. When unpaused, capture devices will start - * queueing data from that point, having flushed any capturable data available - * while paused. - * - * This function is thread-safe, but dequeueing from the same device from two - * threads at once does not promise which thread will dequeue data first. - * - * You may not dequeue audio from a device that is using an - * application-supplied callback; doing so returns an error. You have to use - * the audio callback, or dequeue audio with this function, but not both. - * - * You should not call SDL_LockAudio() on the device before dequeueing; SDL - * handles locking internally for this function. - * - * \param dev the device ID from which we will dequeue audio - * \param data a pointer into where audio data should be copied - * \param len the number of bytes (not samples!) to which (data) points - * \returns the number of bytes dequeued, which could be less than requested; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_ClearQueuedAudio - * \sa SDL_GetQueuedAudioSize - */ -extern DECLSPEC Uint32 SDLCALL SDL_DequeueAudio(SDL_AudioDeviceID dev, void *data, Uint32 len); - -/** - * Get the number of bytes of still-queued audio. - * - * For playback devices: this is the number of bytes that have been queued for - * playback with SDL_QueueAudio(), but have not yet been sent to the hardware. - * - * Once we've sent it to the hardware, this function can not decide the exact - * byte boundary of what has been played. It's possible that we just gave the - * hardware several kilobytes right before you called this function, but it - * hasn't played any of it yet, or maybe half of it, etc. - * - * For capture devices, this is the number of bytes that have been captured by - * the device and are waiting for you to dequeue. This number may grow at any - * time, so this only informs of the lower-bound of available data. - * - * You may not queue or dequeue audio on a device that is using an - * application-supplied callback; calling this function on such a device - * always returns 0. You have to use the audio callback or queue audio, but - * not both. - * - * You should not call SDL_LockAudio() on the device before querying; SDL - * handles locking internally for this function. - * - * \param dev the device ID of which we will query queued audio size - * \returns the number of bytes (not samples!) of queued audio. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_ClearQueuedAudio - * \sa SDL_QueueAudio - * \sa SDL_DequeueAudio - */ -extern DECLSPEC Uint32 SDLCALL SDL_GetQueuedAudioSize(SDL_AudioDeviceID dev); - -/** - * Drop any queued audio data waiting to be sent to the hardware. - * - * Immediately after this call, SDL_GetQueuedAudioSize() will return 0. For - * output devices, the hardware will start playing silence if more audio isn't - * queued. For capture devices, the hardware will start filling the empty - * queue with new data if the capture device isn't paused. - * - * This will not prevent playback of queued audio that's already been sent to - * the hardware, as we can not undo that, so expect there to be some fraction - * of a second of audio that might still be heard. This can be useful if you - * want to, say, drop any pending music or any unprocessed microphone input - * during a level change in your game. - * - * You may not queue or dequeue audio on a device that is using an - * application-supplied callback; calling this function on such a device - * always returns 0. You have to use the audio callback or queue audio, but - * not both. - * - * You should not call SDL_LockAudio() on the device before clearing the - * queue; SDL handles locking internally for this function. - * - * This function always succeeds and thus returns void. - * - * \param dev the device ID of which to clear the audio queue - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_GetQueuedAudioSize - * \sa SDL_QueueAudio - * \sa SDL_DequeueAudio - */ -extern DECLSPEC void SDLCALL SDL_ClearQueuedAudio(SDL_AudioDeviceID dev); - - -/** - * \name Audio lock functions - * - * The lock manipulated by these functions protects the callback function. - * During a SDL_LockAudio()/SDL_UnlockAudio() pair, you can be guaranteed that - * the callback function is not running. Do not call these from the callback - * function or you will cause deadlock. - */ -/* @{ */ - -/** - * This function is a legacy means of locking the audio device. - * - * New programs might want to use SDL_LockAudioDevice() instead. This function - * is equivalent to calling... - * - * ```c - * SDL_LockAudioDevice(1); - * ``` - * - * ...and is only useful if you used the legacy SDL_OpenAudio() function. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LockAudioDevice - * \sa SDL_UnlockAudio - * \sa SDL_UnlockAudioDevice - */ -extern DECLSPEC void SDLCALL SDL_LockAudio(void); - -/** - * Use this function to lock out the audio callback function for a specified - * device. - * - * The lock manipulated by these functions protects the audio callback - * function specified in SDL_OpenAudioDevice(). During a - * SDL_LockAudioDevice()/SDL_UnlockAudioDevice() pair, you can be guaranteed - * that the callback function for that device is not running, even if the - * device is not paused. While a device is locked, any other unpaused, - * unlocked devices may still run their callbacks. - * - * Calling this function from inside your audio callback is unnecessary. SDL - * obtains this lock before calling your function, and releases it when the - * function returns. - * - * You should not hold the lock longer than absolutely necessary. If you hold - * it too long, you'll experience dropouts in your audio playback. Ideally, - * your application locks the device, sets a few variables and unlocks again. - * Do not do heavy work while holding the lock for a device. - * - * It is safe to lock the audio device multiple times, as long as you unlock - * it an equivalent number of times. The callback will not run until the - * device has been unlocked completely in this way. If your application fails - * to unlock the device appropriately, your callback will never run, you might - * hear repeating bursts of audio, and SDL_CloseAudioDevice() will probably - * deadlock. - * - * Internally, the audio device lock is a mutex; if you lock from two threads - * at once, not only will you block the audio callback, you'll block the other - * thread. - * - * \param dev the ID of the device to be locked - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_UnlockAudioDevice - */ -extern DECLSPEC void SDLCALL SDL_LockAudioDevice(SDL_AudioDeviceID dev); - -/** - * This function is a legacy means of unlocking the audio device. - * - * New programs might want to use SDL_UnlockAudioDevice() instead. This - * function is equivalent to calling... - * - * ```c - * SDL_UnlockAudioDevice(1); - * ``` - * - * ...and is only useful if you used the legacy SDL_OpenAudio() function. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LockAudio - * \sa SDL_UnlockAudioDevice - */ -extern DECLSPEC void SDLCALL SDL_UnlockAudio(void); - -/** - * Use this function to unlock the audio callback function for a specified - * device. - * - * This function should be paired with a previous SDL_LockAudioDevice() call. - * - * \param dev the ID of the device to be unlocked - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LockAudioDevice - */ -extern DECLSPEC void SDLCALL SDL_UnlockAudioDevice(SDL_AudioDeviceID dev); -/* @} *//* Audio lock functions */ - -/** - * This function is a legacy means of closing the audio device. - * - * This function is equivalent to calling... - * - * ```c - * SDL_CloseAudioDevice(1); - * ``` - * - * ...and is only useful if you used the legacy SDL_OpenAudio() function. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_OpenAudio - */ -extern DECLSPEC void SDLCALL SDL_CloseAudio(void); - -/** - * Use this function to shut down audio processing and close the audio device. - * - * The application should close open audio devices once they are no longer - * needed. Calling this function will wait until the device's audio callback - * is not running, release the audio hardware and then clean up internal - * state. No further audio will play from this device once this function - * returns. - * - * This function may block briefly while pending audio data is played by the - * hardware, so that applications don't drop the last buffer of data they - * supplied. - * - * The device ID is invalid as soon as the device is closed, and is eligible - * for reuse in a new SDL_OpenAudioDevice() call immediately. - * - * \param dev an audio device previously opened with SDL_OpenAudioDevice() - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_OpenAudioDevice - */ -extern DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID dev); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_audio_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_audio.h.blob deleted file mode 100644 index 897cdc0bc161bf8dc2564eda25caf2fbaae9ddcb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74377 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 ZU{r!LRK$9{3G2VftY0^WU!{Wa{{jq1QZWDk diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h deleted file mode 100644 index 4ecbe507..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h +++ /dev/null @@ -1,198 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_blendmode.h - * - * Header file declaring the SDL_BlendMode enumeration - */ - -#ifndef SDL_blendmode_h_ -#define SDL_blendmode_h_ - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \brief The blend mode used in SDL_RenderCopy() and drawing operations. - */ -typedef enum -{ - SDL_BLENDMODE_NONE = 0x00000000, /**< no blending - dstRGBA = srcRGBA */ - SDL_BLENDMODE_BLEND = 0x00000001, /**< alpha blending - dstRGB = (srcRGB * srcA) + (dstRGB * (1-srcA)) - dstA = srcA + (dstA * (1-srcA)) */ - SDL_BLENDMODE_ADD = 0x00000002, /**< additive blending - dstRGB = (srcRGB * srcA) + dstRGB - dstA = dstA */ - SDL_BLENDMODE_MOD = 0x00000004, /**< color modulate - dstRGB = srcRGB * dstRGB - dstA = dstA */ - SDL_BLENDMODE_MUL = 0x00000008, /**< color multiply - dstRGB = (srcRGB * dstRGB) + (dstRGB * (1-srcA)) - dstA = dstA */ - SDL_BLENDMODE_INVALID = 0x7FFFFFFF - - /* Additional custom blend modes can be returned by SDL_ComposeCustomBlendMode() */ - -} SDL_BlendMode; - -/** - * \brief The blend operation used when combining source and destination pixel components - */ -typedef enum -{ - SDL_BLENDOPERATION_ADD = 0x1, /**< dst + src: supported by all renderers */ - SDL_BLENDOPERATION_SUBTRACT = 0x2, /**< dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES */ - SDL_BLENDOPERATION_REV_SUBTRACT = 0x3, /**< src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES */ - SDL_BLENDOPERATION_MINIMUM = 0x4, /**< min(dst, src) : supported by D3D9, D3D11 */ - SDL_BLENDOPERATION_MAXIMUM = 0x5 /**< max(dst, src) : supported by D3D9, D3D11 */ -} SDL_BlendOperation; - -/** - * \brief The normalized factor used to multiply pixel components - */ -typedef enum -{ - SDL_BLENDFACTOR_ZERO = 0x1, /**< 0, 0, 0, 0 */ - SDL_BLENDFACTOR_ONE = 0x2, /**< 1, 1, 1, 1 */ - SDL_BLENDFACTOR_SRC_COLOR = 0x3, /**< srcR, srcG, srcB, srcA */ - SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR = 0x4, /**< 1-srcR, 1-srcG, 1-srcB, 1-srcA */ - SDL_BLENDFACTOR_SRC_ALPHA = 0x5, /**< srcA, srcA, srcA, srcA */ - SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA = 0x6, /**< 1-srcA, 1-srcA, 1-srcA, 1-srcA */ - SDL_BLENDFACTOR_DST_COLOR = 0x7, /**< dstR, dstG, dstB, dstA */ - SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR = 0x8, /**< 1-dstR, 1-dstG, 1-dstB, 1-dstA */ - SDL_BLENDFACTOR_DST_ALPHA = 0x9, /**< dstA, dstA, dstA, dstA */ - SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA = 0xA /**< 1-dstA, 1-dstA, 1-dstA, 1-dstA */ -} SDL_BlendFactor; - -/** - * Compose a custom blend mode for renderers. - * - * The functions SDL_SetRenderDrawBlendMode and SDL_SetTextureBlendMode accept - * the SDL_BlendMode returned by this function if the renderer supports it. - * - * A blend mode controls how the pixels from a drawing operation (source) get - * combined with the pixels from the render target (destination). First, the - * components of the source and destination pixels get multiplied with their - * blend factors. Then, the blend operation takes the two products and - * calculates the result that will get stored in the render target. - * - * Expressed in pseudocode, it would look like this: - * - * ```c - * dstRGB = colorOperation(srcRGB * srcColorFactor, dstRGB * dstColorFactor); - * dstA = alphaOperation(srcA * srcAlphaFactor, dstA * dstAlphaFactor); - * ``` - * - * Where the functions `colorOperation(src, dst)` and `alphaOperation(src, - * dst)` can return one of the following: - * - * - `src + dst` - * - `src - dst` - * - `dst - src` - * - `min(src, dst)` - * - `max(src, dst)` - * - * The red, green, and blue components are always multiplied with the first, - * second, and third components of the SDL_BlendFactor, respectively. The - * fourth component is not used. - * - * The alpha component is always multiplied with the fourth component of the - * SDL_BlendFactor. The other components are not used in the alpha - * calculation. - * - * Support for these blend modes varies for each renderer. To check if a - * specific SDL_BlendMode is supported, create a renderer and pass it to - * either SDL_SetRenderDrawBlendMode or SDL_SetTextureBlendMode. They will - * return with an error if the blend mode is not supported. - * - * This list describes the support of custom blend modes for each renderer in - * SDL 2.0.6. All renderers support the four blend modes listed in the - * SDL_BlendMode enumeration. - * - * - **direct3d**: Supports all operations with all factors. However, some - * factors produce unexpected results with `SDL_BLENDOPERATION_MINIMUM` and - * `SDL_BLENDOPERATION_MAXIMUM`. - * - **direct3d11**: Same as Direct3D 9. - * - **opengl**: Supports the `SDL_BLENDOPERATION_ADD` operation with all - * factors. OpenGL versions 1.1, 1.2, and 1.3 do not work correctly with SDL - * 2.0.6. - * - **opengles**: Supports the `SDL_BLENDOPERATION_ADD` operation with all - * factors. Color and alpha factors need to be the same. OpenGL ES 1 - * implementation specific: May also support `SDL_BLENDOPERATION_SUBTRACT` - * and `SDL_BLENDOPERATION_REV_SUBTRACT`. May support color and alpha - * operations being different from each other. May support color and alpha - * factors being different from each other. - * - **opengles2**: Supports the `SDL_BLENDOPERATION_ADD`, - * `SDL_BLENDOPERATION_SUBTRACT`, `SDL_BLENDOPERATION_REV_SUBTRACT` - * operations with all factors. - * - **psp**: No custom blend mode support. - * - **software**: No custom blend mode support. - * - * Some renderers do not provide an alpha component for the default render - * target. The `SDL_BLENDFACTOR_DST_ALPHA` and - * `SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA` factors do not have an effect in this - * case. - * - * \param srcColorFactor the SDL_BlendFactor applied to the red, green, and - * blue components of the source pixels - * \param dstColorFactor the SDL_BlendFactor applied to the red, green, and - * blue components of the destination pixels - * \param colorOperation the SDL_BlendOperation used to combine the red, - * green, and blue components of the source and - * destination pixels - * \param srcAlphaFactor the SDL_BlendFactor applied to the alpha component of - * the source pixels - * \param dstAlphaFactor the SDL_BlendFactor applied to the alpha component of - * the destination pixels - * \param alphaOperation the SDL_BlendOperation used to combine the alpha - * component of the source and destination pixels - * \returns an SDL_BlendMode that represents the chosen factors and - * operations. - * - * \since This function is available since SDL 2.0.6. - * - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_GetRenderDrawBlendMode - * \sa SDL_SetTextureBlendMode - * \sa SDL_GetTextureBlendMode - */ -extern DECLSPEC SDL_BlendMode SDLCALL SDL_ComposeCustomBlendMode(SDL_BlendFactor srcColorFactor, - SDL_BlendFactor dstColorFactor, - SDL_BlendOperation colorOperation, - SDL_BlendFactor srcAlphaFactor, - SDL_BlendFactor dstAlphaFactor, - SDL_BlendOperation alphaOperation); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_blendmode_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_blendmode.h.blob deleted file mode 100644 index 3ea69febd42aa2a2134638017e88cd046689f4e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20269 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 L4<i`Qgy8=Jx~WlP diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h deleted file mode 100644 index 7c351fbb..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h +++ /dev/null @@ -1,141 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_clipboard.h - * - * Include file for SDL clipboard handling - */ - -#ifndef SDL_clipboard_h_ -#define SDL_clipboard_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/* Function prototypes */ - -/** - * Put UTF-8 text into the clipboard. - * - * \param text the text to store in the clipboard - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetClipboardText - * \sa SDL_HasClipboardText - */ -extern DECLSPEC int SDLCALL SDL_SetClipboardText(const char *text); - -/** - * Get UTF-8 text from the clipboard, which must be freed with SDL_free(). - * - * This functions returns empty string if there was not enough memory left for - * a copy of the clipboard's content. - * - * \returns the clipboard text on success or an empty string on failure; call - * SDL_GetError() for more information. Caller must call SDL_free() - * on the returned pointer when done with it (even if there was an - * error). - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HasClipboardText - * \sa SDL_SetClipboardText - */ -extern DECLSPEC char * SDLCALL SDL_GetClipboardText(void); - -/** - * Query whether the clipboard exists and contains a non-empty text string. - * - * \returns SDL_TRUE if the clipboard has text, or SDL_FALSE if it does not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetClipboardText - * \sa SDL_SetClipboardText - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void); - -/** - * Put UTF-8 text into the primary selection. - * - * \param text the text to store in the primary selection - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.26.0. - * - * \sa SDL_GetPrimarySelectionText - * \sa SDL_HasPrimarySelectionText - */ -extern DECLSPEC int SDLCALL SDL_SetPrimarySelectionText(const char *text); - -/** - * Get UTF-8 text from the primary selection, which must be freed with - * SDL_free(). - * - * This functions returns empty string if there was not enough memory left for - * a copy of the primary selection's content. - * - * \returns the primary selection text on success or an empty string on - * failure; call SDL_GetError() for more information. Caller must - * call SDL_free() on the returned pointer when done with it (even if - * there was an error). - * - * \since This function is available since SDL 2.26.0. - * - * \sa SDL_HasPrimarySelectionText - * \sa SDL_SetPrimarySelectionText - */ -extern DECLSPEC char * SDLCALL SDL_GetPrimarySelectionText(void); - -/** - * Query whether the primary selection exists and contains a non-empty text - * string. - * - * \returns SDL_TRUE if the primary selection has text, or SDL_FALSE if it - * does not. - * - * \since This function is available since SDL 2.26.0. - * - * \sa SDL_GetPrimarySelectionText - * \sa SDL_SetPrimarySelectionText - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasPrimarySelectionText(void); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_clipboard_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_clipboard.h.blob deleted file mode 100644 index be5a11722469002f390f22f6506950098b5a3d3a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15383 zcmd5@Z-^vE6`#4pD95o}6hb(Hv==pd=k?Cs-ex&8#!D{Q7`T{Z?;_%#^wxA&&(v-I zyRPn;*;6zd5{wWqQBk81&<`T{5F{VWH$SL|xqS2wA}ELfQ8b?v!r{5Ts_L$untt6g zNkH5WbGy^8s$RYKd%ySURp0T>e?DkEb*0no^oDUrdqM9W%6GCj>1C8>J&$@lp1Qq| zuxQ2YT;~QP8Z0DgkK=TQMFZPoDRr|r-Ti3e3Y}{wy1ksIJr=n^?$O@)d(N%(`gFh| z$BjL@GE`a`GH$k;$S41N{qz;%NuOoBC!X@2<Ai;lk&HT-m_&;PtlyJ+>7CrrtCDcS zqAZ1-g6I|YsaK6zrB3kS407h78r^rUHwbd^=<u(9^h(2Euxg&-JMt+J&$yv!X_Am+ zL*oIyh0)~plWTr*a-(G@(muj1k!h52Dfzs=3ji3CWd52w^ZIcd2*H}s<Wxz_*<{TL zSZGXUEJw09WUe!29tD@@QASfO+y+da1=Q)M@tCUtt1t8$+~y`Zi~Ly3DiAN-(_%x= zoCE;C`FP-Y>JzteX`8x38nB5_;l-C8HTC3Tp@H7Bhz3-<fgiCJt)#&f_Bk7jNH7C@ z!{|ybV<Ana#M<<yBPJbv=qC@F>g(vp;@p)$)kZd!^b<RX2mSf`BofJ^e%Q8KzRP>A zM}0hGrfrd>xtlqg_n*7hSi00rt1pRe8X~2{)MRcP?=b4H*zxno%~%}qDf3P9m}CU8 z;HUd%TR6&x2$`7y_5C;u=eZu7&a)kU8Qo<bF$h-l(bV>E#w_gs3q(X>K$B_tNY26C zA)UL#7`Cy<hLbpPqpW4m+HXK+o?-xryH*T`#Fc>g{f8bfK`bHxwT@l}R$)Zu2Mur3 zQ;q|M24FfNnK&c>o2l*M1X<=P;XFEP7{j^)3aL2*hEyp;x}a^Zd?fbs`q{h8jq3e? zmN37N(fcXa6R{-~Gc1Dc)}L@7uNqULvPE1cYcPPO97=;XIWkxzy9rNjtQ(q_`;sVy zRFFkBBpX0iwrj|tS|_RR4lyP|rHegAHKuNJm7h}T41(Q6vgdJYXu3=VmxylS?#x%X zP$B61^GgAMoyd%~3q+QgRNA&Zpl0Dj@Vrn*BfDh?^FuNUkTHgDsu;r=ri_*#b_pbZ zvxY%ehZQxFwVuYBkd}PH&8Z9lsAfIRF5~ndqDU4NHHCGc?a*DLl5Imm21wv6D@vfN z`>sL)y0xS=CFtct#_=fE5~=_bo~$v!Aj*4Cwf4E)5K@GPJ({MGw88S#r_I_|A(v(s z!v%`Tk{%@Sdza>;MLSm89<|dbaf2`qE_s&__@N`lgk{MNRso{o9CZXL3VTG9FyJOj zW(TO=i1bo~aHw{xM{QUN=tQN(BY&qRp@7ru0gY(NT;)8wPq@T)&4U^waYCbkO#U^H zNH43<jVL!+q|{pg+fm5wk%Wo8ec`!7W?>{VQnk0nI=GV45seyq!pVrb^Xy%6im1dk z))(OvaN<Z2{ApxzR27%b=DIe|4GABH>io6geWHZ|01FICjLQ_!qqMyCAn;H>CaHOV zMYSz62pTcvyehU;ah;BVk<HXpis|LWaSaNKjLM@R4kFOTwTF~IJ!eC<n*#cDX<guL z#L_qlA&ujRlTvW<v!Sj+LrDr0Rh0}nR0>prP(dHb36gA>g2EC-Hc8b1NE1@c3jF{A zC2VSJh{7v}T%6HKi_Va=)uO0YrNPBR+{!SX$g_(vz6A;XBJhH<onEpH+yR%l;Kw($ z<+e1NJ?^wkS)BlaHLP~h399B7XiPxI$go4{GU;7K4sbvhM@Uhl*Ge!$oYMfR+UDs* zCkHB*z+4fvJdhkorA0N#8B2*A<p*S7PGyLc%m#YT=>~|&M6WD2XG0Yu-rN*sSj}-D z`#b&IcQR5nIojL_vcAe(+YjDtW-bYCH;B1t70q-9QEk!GTv`ci?Al36;k0J>44nz8 zX)KqZvW}zA>yD~E#QeA;{UEa`_{R=uHjMG}GZfDGWL}+BSe*@=qN8R45mj{Dk75>$ z;3QZp=1U`$eBxA`qiF@56MCr)=QLbgb$ir#zcu41D^wv{D^}_a2z14iz@BIGabvYn zCc`4-FLdVNgSjzM<PB&Rz@g3owzIw6h(IIMKw{~HTB^}fZGjXJA=cai5Z!qpF~^_M zL8xa?^UAUd0Te1sqf2hs2EXZ@SH@as`<#UdoDx-bP=xZ>iO;l@Qx&wDLNzAPJ8<JL zjN3{A(eysq*z~Sd-(oX0ELUMCdbEa@3{Z%6N9}Zqnp!kI0KK(9M}@->`d0x|bz)`Q z8j5d#i~+wU)tCy(+Zgo3UdpKkxS4y(XH#j|S)hqKg2obbWet0w8=Qzst{H2z#nJ<| zY~Ek_*v#FK)DKEFAA%Qe5l9Jj=i;>1b@O|WBWPPy*BEW;?h+ocBvGaB^WT5OOrugI zC=2Ka%IDeUPusN8+rqe4(L&2e{7md8<q0(@4fTd1S<xh#aY-XBXM7TPnYd@H0lI{a z4xx)NoI990ptN&chSm$H%3%y?bK!WBqzH%lMbssE(Nk*I)eZb0=fn0%$L^3+*J;zI zC~ch~^NJI>T(8aj)MId+EByb*O}~Xml{=HRbHlt=ALmZJyhR-`U2G9`g{lb)9WXh) zF-R8nT$%sfxmijVV9lL;ZFI$l22Isqn*=2D;}kzH>zOX)%uM3tJY|qadDwg~Ey@s~ zNbPV`UP{~ZTI#?ga52<KZdz4NBd*}1k!>hDl~I^CKc~R5qIo?dh`St(>vD0eVAWm2 z6;!uqwT+@nD%?PWrcO|({0OkSs4PRbgH9`n2b;LId6C3eb%vkj3JE2H+-0flBqSx~ z%|5CFA7Zp#Dxh#GZlf|=Ud|X`L?=|XZH-8nO)6|mRxYXA+UQfMkUpwIKPpI|AEhsR zjWMWtZs5@{&KBy*1u^k>mD8uKu3?$52~|CV8Z5QU0Ll;1IZERon5h?09l?Za2;52w z>3N}d(iXA{<d-BK&nQ$bQZf|Q@oG{U-f<ZP;@tpDdvp+-@{0q$P7AXN2#PEk;)Zuk zIR#NLT1)LOU}Hnqxk!_mQ&G))aK7Yjtr#i>u4*`Z8v4Q5(1tUQXM5BQpnnS2HpXty z$r~(b%xpw{W(GVaSQM5s#9T^hXoYdEZXGnLQ4L}Hk$^Uo_6wCya311hK>M*Q*xToZ z-bdmxEVHAkB#I-ExIx7gO)Yql1@~;S%P0?Y3l+`nFUV*!4+)f=_!Xeyb=knSfux}m zW;c_j5|*dADOI6!Wq_>oawQGd6DAHz5&4P?9gE?gJo=Yk%zZ6OygCBuRLJXqDd*C= zO~-K}m(z|fMdrQsrcf@--vC^>r63kBHpV$L@{N6?0Dy~Q3N>?GZB&{rp4F3VoH8`Q zpfd-T7krl{%;D-m?5k!yZD4t3#4W64xJ#m1f4204xa64EC>K|JabpLiS_iN#-B43k z`bzSvN!F-&;ATv8F&3}Y+%R$73Go(oZNUT(u_zm$T9xcEYJXv-G^;iW^pRCeN~5$L z=c-25#ixpQCtEcEqqe^oDLY28>8KN5sh)I5!5bQ7TB>E)hSyk{M!cCGf}6Uh7A_<3 z-h{cm;%%DRHDHsnvY6>(yoQcQc8VTeI|a7fvNqp@Y4{9*uJG_K_zy0y8Y5GRl;whG zY@3ZibXSmm;J~~nNxH$fKO@@)@oY#{Tkf0p6%C8hV?Z&Wj=|yOqp4jqzBXFmS<GSU zI!@sEx;yaKzXheq_wCNqpBwMHUptJv5pUdi9XQ%~|Dh*4Up{oh{+Z8x=jg#(x84nn zMVdwyc+nAWWXoSZPWVG93rV_rUfxSWU-SaVEstX69qU-uMyK;|PSag$JcO$!np*H- zL1RRWuoOeX5Q|RW)lqJd$g@PD4o5lo!;0d_reTupTH><$plac+96b2hl){_rAR<(` zu=U8j7V{e>hSwbA;1gDyO7YFR&YhR?EIVkGKVD2Ztd@zn;T-Ey>%x$6t2~Zb@H-h1 z77)nDmJ)!at+kc4jg?h7h{(zBqZwumm{dJKk3a9g&!JAIyLb2Aq}$!=>^;%x?7#7k zN1x%}{*_%=UG&(j<6^@Nixeh5as*5cBGw}pHto}L@0Op&A#R@&;1}i&tuW`A)u$i{ zwS+Zh+3=uPO8mKe3^r((gIlHjm2;F|3Lm7@8iUQjm==xVd;oL9ITf58P(QPv)pU@6 zi<4a|ZgAOcTtYzn?|~^#<FFC1umC<hcU`E+g^vk<NkXR3Dvl~Q``|+O9}pk0#Qk{b zuzSVfbNQH1%>qTKCHg%noUufU-#QDDfLdXnY92jY*+*y~^ix&=`z7M;4@LpzBg=~; zFbP=HVwtrpDjTp=HJ1nqWip|;&_&q$ZK1FsCKp8^zmsR(F7NQi0EK`3-nCb@R-ZUg zpb+*Y?bZO~We8pXlESKR&auu-Hvt|W$_+fiEHREpv31$-QNR^el|BY}4#!>L9DHEK z39GY!up&ADZ;q%kFQCh#LdHNt<&Yx8T4C`v9n=uP+CdEt1cunZ{VPjfy5q{Xj!3@P zKD`}vyW5@ZuYspd`4N5o^`8$4Pl;_zv-H`3CGyp*3m~BBc^RW;w-jB7mccP_U>ZyZ zt5|!Qma7Td=olj9Ewb?HED0N%)n*0I8V^d^-MV}0Vz;~1*&2ZvZ+r2LmwtNx4}Mmd z(V$&pwB}o|VH4l#jW_eG45$AA&uUeg`BjUkn48C|Zzq7Jd9`9=Wrivg-#o7ha?o^I zP4pId)x;G<r2&AsxZ1pP)9-dSJDVxs>egr9`7igitA8$VHASSxq$q;|!kQRV`)pC> z)C2y%8Pha9#Ft?uZTeZC2#S328-Lr~e|i73q{#Kt>)YM#dS@L<sssD4{PK6d-MI1i z3nKE(pZyy@|E%qQ_?EAWg9Ws5p?Jwd8Jn6!#V?&BM-CSQ^<@7RUmV!7wpOq2?pb^A z`3_Cfv-z-d^Ud!99k-v_e&*VN>$}^@_A{MpQ2KSW)(s=pFRwo?My&VOA1_8c{DJRg zzxm-;j~4pKe{NV`Uf(#=-CWtc<4kvJZR^aL?)LIFe8X2be6zQ<2jA>J{im&$Up=+* z9&_Z<`g>vI(k6UvEp5T)_R=<d@+A(RdrN!px&Oth7oL0V57zqx!)qitLkDKEZUwV3 VsCDYky0;v@W%Ypk?Cf_z_P;Tk1ls@r diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h deleted file mode 100644 index 3e0f382d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h +++ /dev/null @@ -1,570 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_config_h_ -#define SDL_config_h_ - -/** - * \file SDL_config.h.in - * - * This is a set of defines to configure the SDL features - */ - -/* General platform specific identifiers */ -#include "SDL_platform.h" - -/* C language features */ -/* #undef const */ -/* #undef inline */ -/* #undef volatile */ - -/* C datatypes */ -/* Define SIZEOF_VOIDP for 64/32 architectures */ -#if defined(__LP64__) || defined(_LP64) || defined(_WIN64) -#define SIZEOF_VOIDP 8 -#else -#define SIZEOF_VOIDP 4 -#endif - -#define HAVE_GCC_ATOMICS 1 -/* #undef HAVE_GCC_SYNC_LOCK_TEST_AND_SET */ - -/* Comment this if you want to build without any C library requirements */ -#define HAVE_LIBC 1 -#if HAVE_LIBC - -/* Useful headers */ -#define STDC_HEADERS 1 -#define HAVE_ALLOCA_H 1 -#define HAVE_CTYPE_H 1 -#define HAVE_FLOAT_H 1 -#define HAVE_ICONV_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_LIMITS_H 1 -#define HAVE_MALLOC_H 1 -#define HAVE_MATH_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_SIGNAL_H 1 -#define HAVE_STDARG_H 1 -#define HAVE_STDDEF_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_STDIO_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_STRING_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_WCHAR_H 1 -#define HAVE_LINUX_INPUT_H 1 -/* #undef HAVE_PTHREAD_NP_H */ -#define HAVE_LIBUNWIND_H 1 - -/* C library functions */ -#define HAVE_DLOPEN 1 -#define HAVE_MALLOC 1 -#define HAVE_CALLOC 1 -#define HAVE_REALLOC 1 -#define HAVE_FREE 1 -#define HAVE_ALLOCA 1 -#ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */ -#define HAVE_GETENV 1 -#define HAVE_SETENV 1 -#define HAVE_PUTENV 1 -#define HAVE_UNSETENV 1 -#endif -#define HAVE_QSORT 1 -#define HAVE_BSEARCH 1 -#define HAVE_ABS 1 -#define HAVE_BCOPY 1 -#define HAVE_MEMSET 1 -#define HAVE_MEMCPY 1 -#define HAVE_MEMMOVE 1 -#define HAVE_MEMCMP 1 -#define HAVE_WCSLEN 1 -#define HAVE_WCSLCPY 1 -#define HAVE_WCSLCAT 1 -/* #undef HAVE__WCSDUP */ -#define HAVE_WCSDUP 1 -#define HAVE_WCSSTR 1 -#define HAVE_WCSCMP 1 -#define HAVE_WCSNCMP 1 -#define HAVE_WCSCASECMP 1 -/* #undef HAVE__WCSICMP */ -#define HAVE_WCSNCASECMP 1 -/* #undef HAVE__WCSNICMP */ -#define HAVE_STRLEN 1 -#define HAVE_STRLCPY 1 -#define HAVE_STRLCAT 1 -/* #undef HAVE__STRREV */ -/* #undef HAVE__STRUPR */ -/* #undef HAVE__STRLWR */ -#define HAVE_INDEX 1 -#define HAVE_RINDEX 1 -#define HAVE_STRCHR 1 -#define HAVE_STRRCHR 1 -#define HAVE_STRSTR 1 -#define HAVE_STRTOK_R 1 -/* #undef HAVE_ITOA */ -/* #undef HAVE__LTOA */ -/* #undef HAVE__UITOA */ -/* #undef HAVE__ULTOA */ -#define HAVE_STRTOL 1 -#define HAVE_STRTOUL 1 -/* #undef HAVE__I64TOA */ -/* #undef HAVE__UI64TOA */ -#define HAVE_STRTOLL 1 -#define HAVE_STRTOULL 1 -#define HAVE_STRTOD 1 -#define HAVE_ATOI 1 -#define HAVE_ATOF 1 -#define HAVE_STRCMP 1 -#define HAVE_STRNCMP 1 -/* #undef HAVE__STRICMP */ -#define HAVE_STRCASECMP 1 -/* #undef HAVE__STRNICMP */ -#define HAVE_STRNCASECMP 1 -#define HAVE_STRCASESTR 1 -#define HAVE_SSCANF 1 -#define HAVE_VSSCANF 1 -#define HAVE_VSNPRINTF 1 -#define HAVE_M_PI 1 -#define HAVE_ACOS 1 -#define HAVE_ACOSF 1 -#define HAVE_ASIN 1 -#define HAVE_ASINF 1 -#define HAVE_ATAN 1 -#define HAVE_ATANF 1 -#define HAVE_ATAN2 1 -#define HAVE_ATAN2F 1 -#define HAVE_CEIL 1 -#define HAVE_CEILF 1 -#define HAVE_COPYSIGN 1 -#define HAVE_COPYSIGNF 1 -#define HAVE_COS 1 -#define HAVE_COSF 1 -#define HAVE_EXP 1 -#define HAVE_EXPF 1 -#define HAVE_FABS 1 -#define HAVE_FABSF 1 -#define HAVE_FLOOR 1 -#define HAVE_FLOORF 1 -#define HAVE_FMOD 1 -#define HAVE_FMODF 1 -#define HAVE_LOG 1 -#define HAVE_LOGF 1 -#define HAVE_LOG10 1 -#define HAVE_LOG10F 1 -#define HAVE_LROUND 1 -#define HAVE_LROUNDF 1 -#define HAVE_POW 1 -#define HAVE_POWF 1 -#define HAVE_ROUND 1 -#define HAVE_ROUNDF 1 -#define HAVE_SCALBN 1 -#define HAVE_SCALBNF 1 -#define HAVE_SIN 1 -#define HAVE_SINF 1 -#define HAVE_SQRT 1 -#define HAVE_SQRTF 1 -#define HAVE_TAN 1 -#define HAVE_TANF 1 -#define HAVE_TRUNC 1 -#define HAVE_TRUNCF 1 -#define HAVE_FOPEN64 1 -#define HAVE_FSEEKO 1 -#define HAVE_FSEEKO64 1 -#define HAVE_SIGACTION 1 -#define HAVE_SA_SIGACTION 1 -#define HAVE_SETJMP 1 -#define HAVE_NANOSLEEP 1 -#define HAVE_SYSCONF 1 -/* #undef HAVE_SYSCTLBYNAME */ -#define HAVE_CLOCK_GETTIME 1 -/* #undef HAVE_GETPAGESIZE */ -#define HAVE_MPROTECT 1 -#define HAVE_ICONV 1 -#define HAVE_PTHREAD_SETNAME_NP 1 -/* #undef HAVE_PTHREAD_SET_NAME_NP */ -#define HAVE_SEM_TIMEDWAIT 1 -#define HAVE_GETAUXVAL 1 -/* #undef HAVE_ELF_AUX_INFO */ -#define HAVE_POLL 1 -#define HAVE__EXIT 1 - -#else -#define HAVE_STDARG_H 1 -#define HAVE_STDDEF_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_FLOAT_H 1 -#endif /* HAVE_LIBC */ - -/* #undef HAVE_ALTIVEC_H */ -#define HAVE_DBUS_DBUS_H 1 -#define HAVE_FCITX 1 -#define HAVE_IBUS_IBUS_H 1 -#define HAVE_SYS_INOTIFY_H 1 -#define HAVE_INOTIFY_INIT 1 -#define HAVE_INOTIFY_INIT1 1 -#define HAVE_INOTIFY 1 -#define HAVE_LIBUSB 1 -#define HAVE_O_CLOEXEC 1 - -/* Apple platforms might be building universal binaries, where Intel builds - can use immintrin.h but other architectures can't. */ -#ifdef __APPLE__ -# if defined(__has_include) && (defined(__i386__) || defined(__x86_64)) -# if __has_include(<immintrin.h>) -# define HAVE_IMMINTRIN_H 1 -# endif -# endif -#else /* non-Apple platforms can use the normal CMake check for this. */ -#define HAVE_IMMINTRIN_H 1 -#endif - -#define HAVE_LIBUDEV_H 1 -#define HAVE_LIBSAMPLERATE_H 1 -#define HAVE_LIBDECOR_H 1 - -/* #undef HAVE_D3D_H */ -/* #undef HAVE_D3D11_H */ -/* #undef HAVE_D3D12_H */ -/* #undef HAVE_DDRAW_H */ -/* #undef HAVE_DSOUND_H */ -/* #undef HAVE_DINPUT_H */ -/* #undef HAVE_XINPUT_H */ -/* #undef HAVE_WINDOWS_GAMING_INPUT_H */ -/* #undef HAVE_DXGI_H */ - -/* #undef HAVE_MMDEVICEAPI_H */ -/* #undef HAVE_AUDIOCLIENT_H */ -/* #undef HAVE_TPCSHRD_H */ -/* #undef HAVE_SENSORSAPI_H */ -/* #undef HAVE_ROAPI_H */ -/* #undef HAVE_SHELLSCALINGAPI_H */ - -/* #undef HAVE_XINPUT_GAMEPAD_EX */ -/* #undef HAVE_XINPUT_STATE_EX */ - -/* #undef USE_POSIX_SPAWN */ - -/* SDL internal assertion support */ -#if 0 -/* #undef SDL_DEFAULT_ASSERT_LEVEL */ -#endif - -/* Allow disabling of core subsystems */ -/* #undef SDL_ATOMIC_DISABLED */ -/* #undef SDL_AUDIO_DISABLED */ -/* #undef SDL_CPUINFO_DISABLED */ -/* #undef SDL_EVENTS_DISABLED */ -/* #undef SDL_FILE_DISABLED */ -/* #undef SDL_JOYSTICK_DISABLED */ -/* #undef SDL_HAPTIC_DISABLED */ -/* #undef SDL_HIDAPI_DISABLED */ -/* #undef SDL_SENSOR_DISABLED */ -/* #undef SDL_LOADSO_DISABLED */ -/* #undef SDL_RENDER_DISABLED */ -/* #undef SDL_THREADS_DISABLED */ -/* #undef SDL_TIMERS_DISABLED */ -/* #undef SDL_VIDEO_DISABLED */ -/* #undef SDL_POWER_DISABLED */ -/* #undef SDL_FILESYSTEM_DISABLED */ -/* #undef SDL_LOCALE_DISABLED */ -/* #undef SDL_MISC_DISABLED */ - -/* Enable various audio drivers */ -#define SDL_AUDIO_DRIVER_ALSA 1 -#define SDL_AUDIO_DRIVER_ALSA_DYNAMIC "libasound.so.2" -/* #undef SDL_AUDIO_DRIVER_ANDROID */ -/* #undef SDL_AUDIO_DRIVER_OPENSLES */ -/* #undef SDL_AUDIO_DRIVER_AAUDIO */ -/* #undef SDL_AUDIO_DRIVER_ARTS */ -/* #undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC */ -/* #undef SDL_AUDIO_DRIVER_COREAUDIO */ -#define SDL_AUDIO_DRIVER_DISK 1 -/* #undef SDL_AUDIO_DRIVER_DSOUND */ -#define SDL_AUDIO_DRIVER_DUMMY 1 -/* #undef SDL_AUDIO_DRIVER_EMSCRIPTEN */ -/* #undef SDL_AUDIO_DRIVER_ESD */ -/* #undef SDL_AUDIO_DRIVER_ESD_DYNAMIC */ -/* #undef SDL_AUDIO_DRIVER_FUSIONSOUND */ -/* #undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC */ -/* #undef SDL_AUDIO_DRIVER_HAIKU */ -#define SDL_AUDIO_DRIVER_JACK 1 -#define SDL_AUDIO_DRIVER_JACK_DYNAMIC "libjack.so.0" -/* #undef SDL_AUDIO_DRIVER_NAS */ -/* #undef SDL_AUDIO_DRIVER_NAS_DYNAMIC */ -/* #undef SDL_AUDIO_DRIVER_NETBSD */ -#define SDL_AUDIO_DRIVER_OSS 1 -/* #undef SDL_AUDIO_DRIVER_PAUDIO */ -#define SDL_AUDIO_DRIVER_PIPEWIRE 1 -#define SDL_AUDIO_DRIVER_PIPEWIRE_DYNAMIC "libpipewire-0.3.so.0" -#define SDL_AUDIO_DRIVER_PULSEAUDIO 1 -#define SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC "libpulse-simple.so.0" -/* #undef SDL_AUDIO_DRIVER_QSA */ -/* #undef SDL_AUDIO_DRIVER_SNDIO */ -/* #undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC */ -/* #undef SDL_AUDIO_DRIVER_SUNAUDIO */ -/* #undef SDL_AUDIO_DRIVER_WASAPI */ -/* #undef SDL_AUDIO_DRIVER_WINMM */ -/* #undef SDL_AUDIO_DRIVER_OS2 */ -/* #undef SDL_AUDIO_DRIVER_VITA */ -/* #undef SDL_AUDIO_DRIVER_PSP */ -/* #undef SDL_AUDIO_DRIVER_PS2 */ -/* #undef SDL_AUDIO_DRIVER_N3DS */ - -/* Enable various input drivers */ -#define SDL_INPUT_LINUXEV 1 -#define SDL_INPUT_LINUXKD 1 -/* #undef SDL_INPUT_FBSDKBIO */ -/* #undef SDL_INPUT_WSCONS */ -/* #undef SDL_JOYSTICK_ANDROID */ -/* #undef SDL_JOYSTICK_HAIKU */ -/* #undef SDL_JOYSTICK_WGI */ -/* #undef SDL_JOYSTICK_DINPUT */ -/* #undef SDL_JOYSTICK_XINPUT */ -/* #undef SDL_JOYSTICK_DUMMY */ -/* #undef SDL_JOYSTICK_IOKIT */ -/* #undef SDL_JOYSTICK_MFI */ -#define SDL_JOYSTICK_LINUX 1 -/* #undef SDL_JOYSTICK_OS2 */ -/* #undef SDL_JOYSTICK_USBHID */ -/* #undef SDL_HAVE_MACHINE_JOYSTICK_H */ -#define SDL_JOYSTICK_HIDAPI 1 -/* #undef SDL_JOYSTICK_RAWINPUT */ -/* #undef SDL_JOYSTICK_EMSCRIPTEN */ -#define SDL_JOYSTICK_VIRTUAL 1 -/* #undef SDL_JOYSTICK_VITA */ -/* #undef SDL_JOYSTICK_PSP */ -/* #undef SDL_JOYSTICK_PS2 */ -/* #undef SDL_JOYSTICK_N3DS */ -/* #undef SDL_HAPTIC_DUMMY */ -#define SDL_HAPTIC_LINUX 1 -/* #undef SDL_HAPTIC_IOKIT */ -/* #undef SDL_HAPTIC_DINPUT */ -/* #undef SDL_HAPTIC_XINPUT */ -/* #undef SDL_HAPTIC_ANDROID */ -#define SDL_LIBUSB_DYNAMIC "libusb-1.0.so.0" -#define SDL_UDEV_DYNAMIC "libudev.so.1" - -/* Enable various sensor drivers */ -/* #undef SDL_SENSOR_ANDROID */ -/* #undef SDL_SENSOR_COREMOTION */ -/* #undef SDL_SENSOR_WINDOWS */ -#define SDL_SENSOR_DUMMY 1 -/* #undef SDL_SENSOR_VITA */ -/* #undef SDL_SENSOR_N3DS */ - -/* Enable various shared object loading systems */ -#define SDL_LOADSO_DLOPEN 1 -/* #undef SDL_LOADSO_DUMMY */ -/* #undef SDL_LOADSO_LDG */ -/* #undef SDL_LOADSO_WINDOWS */ -/* #undef SDL_LOADSO_OS2 */ - -/* Enable various threading systems */ -/* #undef SDL_THREAD_GENERIC_COND_SUFFIX */ -#define SDL_THREAD_PTHREAD 1 -#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1 -/* #undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP */ -/* #undef SDL_THREAD_WINDOWS */ -/* #undef SDL_THREAD_OS2 */ -/* #undef SDL_THREAD_VITA */ -/* #undef SDL_THREAD_PSP */ -/* #undef SDL_THREAD_PS2 */ -/* #undef SDL_THREAD_N3DS */ - -/* Enable various timer systems */ -/* #undef SDL_TIMER_HAIKU */ -/* #undef SDL_TIMER_DUMMY */ -#define SDL_TIMER_UNIX 1 -/* #undef SDL_TIMER_WINDOWS */ -/* #undef SDL_TIMER_OS2 */ -/* #undef SDL_TIMER_VITA */ -/* #undef SDL_TIMER_PSP */ -/* #undef SDL_TIMER_PS2 */ -/* #undef SDL_TIMER_N3DS */ - -/* Enable various video drivers */ -/* #undef SDL_VIDEO_DRIVER_ANDROID */ -/* #undef SDL_VIDEO_DRIVER_EMSCRIPTEN */ -/* #undef SDL_VIDEO_DRIVER_HAIKU */ -/* #undef SDL_VIDEO_DRIVER_COCOA */ -/* #undef SDL_VIDEO_DRIVER_UIKIT */ -/* #undef SDL_VIDEO_DRIVER_DIRECTFB */ -/* #undef SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC */ -#define SDL_VIDEO_DRIVER_DUMMY 1 -#define SDL_VIDEO_DRIVER_OFFSCREEN 1 -/* #undef SDL_VIDEO_DRIVER_WINDOWS */ -/* #undef SDL_VIDEO_DRIVER_WINRT */ -#define SDL_VIDEO_DRIVER_WAYLAND 1 -/* #undef SDL_VIDEO_DRIVER_RPI */ -/* #undef SDL_VIDEO_DRIVER_VIVANTE */ -/* #undef SDL_VIDEO_DRIVER_VIVANTE_VDK */ -/* #undef SDL_VIDEO_DRIVER_OS2 */ -/* #undef SDL_VIDEO_DRIVER_QNX */ -/* #undef SDL_VIDEO_DRIVER_RISCOS */ -/* #undef SDL_VIDEO_DRIVER_PSP */ -/* #undef SDL_VIDEO_DRIVER_PS2 */ - -#define SDL_VIDEO_DRIVER_KMSDRM 1 -#define SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC "libdrm.so.2" -#define SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM "libgbm.so.1" - -#define SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH 1 -#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC "libwayland-client.so.0" -#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL "libwayland-egl.so.1" -#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR "libwayland-cursor.so.0" -#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON "libxkbcommon.so.0" -#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR "libdecor-0.so.0" - -#define SDL_VIDEO_DRIVER_X11 1 -#define SDL_VIDEO_DRIVER_X11_DYNAMIC "libX11.so.6" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "libXext.so.6" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR "libXcursor.so.1" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "libXi.so.6" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XFIXES "libXfixes.so.3" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "libXrandr.so.2" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "libXss.so.1" -#define SDL_VIDEO_DRIVER_X11_XCURSOR 1 -#define SDL_VIDEO_DRIVER_X11_XDBE 1 -#define SDL_VIDEO_DRIVER_X11_XINPUT2 1 -#define SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH 1 -#define SDL_VIDEO_DRIVER_X11_XFIXES 1 -#define SDL_VIDEO_DRIVER_X11_XRANDR 1 -#define SDL_VIDEO_DRIVER_X11_XSCRNSAVER 1 -#define SDL_VIDEO_DRIVER_X11_XSHAPE 1 -#define SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1 -#define SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM 1 -/* #undef SDL_VIDEO_DRIVER_VITA */ -/* #undef SDL_VIDEO_DRIVER_N3DS */ - -/* #undef SDL_VIDEO_RENDER_D3D */ -/* #undef SDL_VIDEO_RENDER_D3D11 */ -/* #undef SDL_VIDEO_RENDER_D3D12 */ -#define SDL_VIDEO_RENDER_OGL 1 -/* #undef SDL_VIDEO_RENDER_OGL_ES */ -#define SDL_VIDEO_RENDER_OGL_ES2 1 -/* #undef SDL_VIDEO_RENDER_DIRECTFB */ -/* #undef SDL_VIDEO_RENDER_METAL */ -/* #undef SDL_VIDEO_RENDER_VITA_GXM */ -/* #undef SDL_VIDEO_RENDER_PS2 */ -/* #undef SDL_VIDEO_RENDER_PSP */ - -/* Enable OpenGL support */ -#define SDL_VIDEO_OPENGL 1 -/* #undef SDL_VIDEO_OPENGL_ES */ -#define SDL_VIDEO_OPENGL_ES2 1 -/* #undef SDL_VIDEO_OPENGL_BGL */ -/* #undef SDL_VIDEO_OPENGL_CGL */ -#define SDL_VIDEO_OPENGL_GLX 1 -/* #undef SDL_VIDEO_OPENGL_WGL */ -#define SDL_VIDEO_OPENGL_EGL 1 -/* #undef SDL_VIDEO_OPENGL_OSMESA */ -/* #undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC */ - -/* Enable Vulkan support */ -#define SDL_VIDEO_VULKAN 1 - -/* Enable Metal support */ -/* #undef SDL_VIDEO_METAL */ - -/* Enable system power support */ -/* #undef SDL_POWER_ANDROID */ -#define SDL_POWER_LINUX 1 -/* #undef SDL_POWER_WINDOWS */ -/* #undef SDL_POWER_WINRT */ -/* #undef SDL_POWER_MACOSX */ -/* #undef SDL_POWER_UIKIT */ -/* #undef SDL_POWER_HAIKU */ -/* #undef SDL_POWER_EMSCRIPTEN */ -/* #undef SDL_POWER_HARDWIRED */ -/* #undef SDL_POWER_VITA */ -/* #undef SDL_POWER_PSP */ -/* #undef SDL_POWER_N3DS */ - -/* Enable system filesystem support */ -/* #undef SDL_FILESYSTEM_ANDROID */ -/* #undef SDL_FILESYSTEM_HAIKU */ -/* #undef SDL_FILESYSTEM_COCOA */ -/* #undef SDL_FILESYSTEM_DUMMY */ -/* #undef SDL_FILESYSTEM_RISCOS */ -#define SDL_FILESYSTEM_UNIX 1 -/* #undef SDL_FILESYSTEM_WINDOWS */ -/* #undef SDL_FILESYSTEM_EMSCRIPTEN */ -/* #undef SDL_FILESYSTEM_OS2 */ -/* #undef SDL_FILESYSTEM_VITA */ -/* #undef SDL_FILESYSTEM_PSP */ -/* #undef SDL_FILESYSTEM_PS2 */ -/* #undef SDL_FILESYSTEM_N3DS */ - -/* Enable misc subsystem */ -/* #undef SDL_MISC_DUMMY */ - -/* Enable locale subsystem */ -/* #undef SDL_LOCALE_DUMMY */ - -/* Enable assembly routines */ -/* #undef SDL_ALTIVEC_BLITTERS */ -/* #undef SDL_ARM_SIMD_BLITTERS */ -/* #undef SDL_ARM_NEON_BLITTERS */ - -/* Whether SDL_DYNAMIC_API needs dlopen */ -#define DYNAPI_NEEDS_DLOPEN 1 - -/* Enable dynamic libsamplerate support */ -#define SDL_LIBSAMPLERATE_DYNAMIC "libsamplerate.so.0" - -/* Enable ime support */ -#define SDL_USE_IME 1 - -/* Platform specific definitions */ -/* #undef SDL_IPHONE_KEYBOARD */ -/* #undef SDL_IPHONE_LAUNCHSCREEN */ - -/* #undef SDL_VIDEO_VITA_PIB */ -/* #undef SDL_VIDEO_VITA_PVR */ -/* #undef SDL_VIDEO_VITA_PVR_OGL */ - -#define SDL_HAVE_LIBDECOR_GET_MIN_MAX 1 - -#if !defined(HAVE_STDINT_H) && !defined(_STDINT_H_) -/* Most everything except Visual Studio 2008 and earlier has stdint.h now */ -#if defined(_MSC_VER) && (_MSC_VER < 1600) -typedef signed __int8 int8_t; -typedef unsigned __int8 uint8_t; -typedef signed __int16 int16_t; -typedef unsigned __int16 uint16_t; -typedef signed __int32 int32_t; -typedef unsigned __int32 uint32_t; -typedef signed __int64 int64_t; -typedef unsigned __int64 uint64_t; -#ifndef _UINTPTR_T_DEFINED -#ifdef _WIN64 -typedef unsigned __int64 uintptr_t; -#else -typedef unsigned int uintptr_t; -#endif -#define _UINTPTR_T_DEFINED -#endif -#endif /* Visual Studio 2008 */ -#endif /* !_STDINT_H_ && !HAVE_STDINT_H */ - -#endif /* SDL_config_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_config.h.blob deleted file mode 100644 index e918fb9c2677e3f9ce54f9d322519771799e8c12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29173 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 Gp8pRqr>&|0 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h deleted file mode 100644 index ed5e9791..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h +++ /dev/null @@ -1,594 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_cpuinfo.h - * - * CPU feature detection for SDL. - */ - -#ifndef SDL_cpuinfo_h_ -#define SDL_cpuinfo_h_ - -#include "SDL_stdinc.h" - -/* Need to do this here because intrin.h has C++ code in it */ -/* Visual Studio 2005 has a bug where intrin.h conflicts with winnt.h */ -#if defined(_MSC_VER) && (_MSC_VER >= 1500) && (defined(_M_IX86) || defined(_M_X64)) -#ifdef __clang__ -/* As of Clang 11, '_m_prefetchw' is conflicting with the winnt.h's version, - so we define the needed '_m_prefetch' here as a pseudo-header, until the issue is fixed. */ - -#ifndef __PRFCHWINTRIN_H -#define __PRFCHWINTRIN_H - -static __inline__ void __attribute__((__always_inline__, __nodebug__)) -_m_prefetch(void *__P) -{ - __builtin_prefetch (__P, 0, 3 /* _MM_HINT_T0 */); -} - -#endif /* __PRFCHWINTRIN_H */ -#endif /* __clang__ */ -#include <intrin.h> -#ifndef _WIN64 -#ifndef __MMX__ -#define __MMX__ -#endif -#ifndef __3dNOW__ -#define __3dNOW__ -#endif -#endif -#ifndef __SSE__ -#define __SSE__ -#endif -#ifndef __SSE2__ -#define __SSE2__ -#endif -#ifndef __SSE3__ -#define __SSE3__ -#endif -#elif defined(__MINGW64_VERSION_MAJOR) -#include <intrin.h> -#if !defined(SDL_DISABLE_ARM_NEON_H) && defined(__ARM_NEON) -# include <arm_neon.h> -#endif -#else -/* altivec.h redefining bool causes a number of problems, see bugs 3993 and 4392, so you need to explicitly define SDL_ENABLE_ALTIVEC_H to have it included. */ -#if defined(HAVE_ALTIVEC_H) && defined(__ALTIVEC__) && !defined(__APPLE_ALTIVEC__) && defined(SDL_ENABLE_ALTIVEC_H) -#include <altivec.h> -#endif -#if !defined(SDL_DISABLE_ARM_NEON_H) -# if defined(__ARM_NEON) -# include <arm_neon.h> -# elif defined(__WINDOWS__) || defined(__WINRT__) || defined(__GDK__) -/* Visual Studio doesn't define __ARM_ARCH, but _M_ARM (if set, always 7), and _M_ARM64 (if set, always 1). */ -# if defined(_M_ARM) -# include <armintr.h> -# include <arm_neon.h> -# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */ -# endif -# if defined (_M_ARM64) -# include <arm64intr.h> -# include <arm64_neon.h> -# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */ -# define __ARM_ARCH 8 -# endif -# endif -#endif -#endif /* compiler version */ - -#if defined(__3dNOW__) && !defined(SDL_DISABLE_MM3DNOW_H) -#include <mm3dnow.h> -#endif -#if defined(__loongarch_sx) && !defined(SDL_DISABLE_LSX_H) -#include <lsxintrin.h> -#define __LSX__ -#endif -#if defined(__loongarch_asx) && !defined(SDL_DISABLE_LASX_H) -#include <lasxintrin.h> -#define __LASX__ -#endif -#if defined(HAVE_IMMINTRIN_H) && !defined(SDL_DISABLE_IMMINTRIN_H) -#include <immintrin.h> -#else -#if defined(__MMX__) && !defined(SDL_DISABLE_MMINTRIN_H) -#include <mmintrin.h> -#endif -#if defined(__SSE__) && !defined(SDL_DISABLE_XMMINTRIN_H) -#include <xmmintrin.h> -#endif -#if defined(__SSE2__) && !defined(SDL_DISABLE_EMMINTRIN_H) -#include <emmintrin.h> -#endif -#if defined(__SSE3__) && !defined(SDL_DISABLE_PMMINTRIN_H) -#include <pmmintrin.h> -#endif -#endif /* HAVE_IMMINTRIN_H */ - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/* This is a guess for the cacheline size used for padding. - * Most x86 processors have a 64 byte cache line. - * The 64-bit PowerPC processors have a 128 byte cache line. - * We'll use the larger value to be generally safe. - */ -#define SDL_CACHELINE_SIZE 128 - -/** - * Get the number of CPU cores available. - * - * \returns the total number of logical CPU cores. On CPUs that include - * technologies such as hyperthreading, the number of logical cores - * may be more than the number of physical cores. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_GetCPUCount(void); - -/** - * Determine the L1 cache line size of the CPU. - * - * This is useful for determining multi-threaded structure padding or SIMD - * prefetch sizes. - * - * \returns the L1 cache line size of the CPU, in bytes. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_GetCPUCacheLineSize(void); - -/** - * Determine whether the CPU has the RDTSC instruction. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has the RDTSC instruction or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasRDTSC(void); - -/** - * Determine whether the CPU has AltiVec features. - * - * This always returns false on CPUs that aren't using PowerPC instruction - * sets. - * - * \returns SDL_TRUE if the CPU has AltiVec features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasAltiVec(void); - -/** - * Determine whether the CPU has MMX features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has MMX features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasMMX(void); - -/** - * Determine whether the CPU has 3DNow! features. - * - * This always returns false on CPUs that aren't using AMD instruction sets. - * - * \returns SDL_TRUE if the CPU has 3DNow! features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_Has3DNow(void); - -/** - * Determine whether the CPU has SSE features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has SSE features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE(void); - -/** - * Determine whether the CPU has SSE2 features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has SSE2 features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE2(void); - -/** - * Determine whether the CPU has SSE3 features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has SSE3 features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE3(void); - -/** - * Determine whether the CPU has SSE4.1 features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has SSE4.1 features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE41(void); - -/** - * Determine whether the CPU has SSE4.2 features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has SSE4.2 features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE42(void); - -/** - * Determine whether the CPU has AVX features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has AVX features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX2 - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX(void); - -/** - * Determine whether the CPU has AVX2 features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has AVX2 features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_Has3DNow - * \sa SDL_HasAltiVec - * \sa SDL_HasAVX - * \sa SDL_HasMMX - * \sa SDL_HasRDTSC - * \sa SDL_HasSSE - * \sa SDL_HasSSE2 - * \sa SDL_HasSSE3 - * \sa SDL_HasSSE41 - * \sa SDL_HasSSE42 - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX2(void); - -/** - * Determine whether the CPU has AVX-512F (foundation) features. - * - * This always returns false on CPUs that aren't using Intel instruction sets. - * - * \returns SDL_TRUE if the CPU has AVX-512F features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.9. - * - * \sa SDL_HasAVX - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX512F(void); - -/** - * Determine whether the CPU has ARM SIMD (ARMv6) features. - * - * This is different from ARM NEON, which is a different instruction set. - * - * This always returns false on CPUs that aren't using ARM instruction sets. - * - * \returns SDL_TRUE if the CPU has ARM SIMD features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.12. - * - * \sa SDL_HasNEON - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasARMSIMD(void); - -/** - * Determine whether the CPU has NEON (ARM SIMD) features. - * - * This always returns false on CPUs that aren't using ARM instruction sets. - * - * \returns SDL_TRUE if the CPU has ARM NEON features or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void); - -/** - * Determine whether the CPU has LSX (LOONGARCH SIMD) features. - * - * This always returns false on CPUs that aren't using LOONGARCH instruction - * sets. - * - * \returns SDL_TRUE if the CPU has LOONGARCH LSX features or SDL_FALSE if - * not. - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasLSX(void); - -/** - * Determine whether the CPU has LASX (LOONGARCH SIMD) features. - * - * This always returns false on CPUs that aren't using LOONGARCH instruction - * sets. - * - * \returns SDL_TRUE if the CPU has LOONGARCH LASX features or SDL_FALSE if - * not. - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasLASX(void); - -/** - * Get the amount of RAM configured in the system. - * - * \returns the amount of RAM configured in the system in MiB. - * - * \since This function is available since SDL 2.0.1. - */ -extern DECLSPEC int SDLCALL SDL_GetSystemRAM(void); - -/** - * Report the alignment this system needs for SIMD allocations. - * - * This will return the minimum number of bytes to which a pointer must be - * aligned to be compatible with SIMD instructions on the current machine. For - * example, if the machine supports SSE only, it will return 16, but if it - * supports AVX-512F, it'll return 64 (etc). This only reports values for - * instruction sets SDL knows about, so if your SDL build doesn't have - * SDL_HasAVX512F(), then it might return 16 for the SSE support it sees and - * not 64 for the AVX-512 instructions that exist but SDL doesn't know about. - * Plan accordingly. - * - * \returns the alignment in bytes needed for available, known SIMD - * instructions. - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC size_t SDLCALL SDL_SIMDGetAlignment(void); - -/** - * Allocate memory in a SIMD-friendly way. - * - * This will allocate a block of memory that is suitable for use with SIMD - * instructions. Specifically, it will be properly aligned and padded for the - * system's supported vector instructions. - * - * The memory returned will be padded such that it is safe to read or write an - * incomplete vector at the end of the memory block. This can be useful so you - * don't have to drop back to a scalar fallback at the end of your SIMD - * processing loop to deal with the final elements without overflowing the - * allocated buffer. - * - * You must free this memory with SDL_FreeSIMD(), not free() or SDL_free() or - * delete[], etc. - * - * Note that SDL will only deal with SIMD instruction sets it is aware of; for - * example, SDL 2.0.8 knows that SSE wants 16-byte vectors (SDL_HasSSE()), and - * AVX2 wants 32 bytes (SDL_HasAVX2()), but doesn't know that AVX-512 wants - * 64. To be clear: if you can't decide to use an instruction set with an - * SDL_Has*() function, don't use that instruction set with memory allocated - * through here. - * - * SDL_AllocSIMD(0) will return a non-NULL pointer, assuming the system isn't - * out of memory, but you are not allowed to dereference it (because you only - * own zero bytes of that buffer). - * - * \param len The length, in bytes, of the block to allocate. The actual - * allocated block might be larger due to padding, etc. - * \returns a pointer to the newly-allocated block, NULL if out of memory. - * - * \since This function is available since SDL 2.0.10. - * - * \sa SDL_SIMDGetAlignment - * \sa SDL_SIMDRealloc - * \sa SDL_SIMDFree - */ -extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len); - -/** - * Reallocate memory obtained from SDL_SIMDAlloc - * - * It is not valid to use this function on a pointer from anything but - * SDL_SIMDAlloc(). It can't be used on pointers from malloc, realloc, - * SDL_malloc, memalign, new[], etc. - * - * \param mem The pointer obtained from SDL_SIMDAlloc. This function also - * accepts NULL, at which point this function is the same as - * calling SDL_SIMDAlloc with a NULL pointer. - * \param len The length, in bytes, of the block to allocated. The actual - * allocated block might be larger due to padding, etc. Passing 0 - * will return a non-NULL pointer, assuming the system isn't out of - * memory. - * \returns a pointer to the newly-reallocated block, NULL if out of memory. - * - * \since This function is available since SDL 2.0.14. - * - * \sa SDL_SIMDGetAlignment - * \sa SDL_SIMDAlloc - * \sa SDL_SIMDFree - */ -extern DECLSPEC void * SDLCALL SDL_SIMDRealloc(void *mem, const size_t len); - -/** - * Deallocate memory obtained from SDL_SIMDAlloc - * - * It is not valid to use this function on a pointer from anything but - * SDL_SIMDAlloc() or SDL_SIMDRealloc(). It can't be used on pointers from - * malloc, realloc, SDL_malloc, memalign, new[], etc. - * - * However, SDL_SIMDFree(NULL) is a legal no-op. - * - * The memory pointed to by `ptr` is no longer valid for access upon return, - * and may be returned to the system or reused by a future allocation. The - * pointer passed to this function is no longer safe to dereference once this - * function returns, and should be discarded. - * - * \param ptr The pointer, returned from SDL_SIMDAlloc or SDL_SIMDRealloc, to - * deallocate. NULL is a legal no-op. - * - * \since This function is available since SDL 2.0.10. - * - * \sa SDL_SIMDAlloc - * \sa SDL_SIMDRealloc - */ -extern DECLSPEC void SDLCALL SDL_SIMDFree(void *ptr); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_cpuinfo_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_cpuinfo.h.blob deleted file mode 100644 index 69090063ee09f7ade2428f1c2c37aa34ad99657b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25766 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 J@TZvL{{WgAWt{*3 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h deleted file mode 100644 index 71bc0672..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h +++ /dev/null @@ -1,348 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_endian.h - * - * Functions for reading and writing endian-specific values - */ - -#ifndef SDL_endian_h_ -#define SDL_endian_h_ - -#include "SDL_stdinc.h" - -#if defined(_MSC_VER) && (_MSC_VER >= 1400) -/* As of Clang 11, '_m_prefetchw' is conflicting with the winnt.h's version, - so we define the needed '_m_prefetch' here as a pseudo-header, until the issue is fixed. */ -#ifdef __clang__ -#ifndef __PRFCHWINTRIN_H -#define __PRFCHWINTRIN_H -static __inline__ void __attribute__((__always_inline__, __nodebug__)) -_m_prefetch(void *__P) -{ - __builtin_prefetch(__P, 0, 3 /* _MM_HINT_T0 */); -} -#endif /* __PRFCHWINTRIN_H */ -#endif /* __clang__ */ - -#include <intrin.h> -#endif - -/** - * \name The two types of endianness - */ -/* @{ */ -#define SDL_LIL_ENDIAN 1234 -#define SDL_BIG_ENDIAN 4321 -/* @} */ - -#ifndef SDL_BYTEORDER /* Not defined in SDL_config.h? */ -#ifdef __linux__ -#include <endian.h> -#define SDL_BYTEORDER __BYTE_ORDER -#elif defined(__OpenBSD__) || defined(__DragonFly__) -#include <endian.h> -#define SDL_BYTEORDER BYTE_ORDER -#elif defined(__FreeBSD__) || defined(__NetBSD__) -#include <sys/endian.h> -#define SDL_BYTEORDER BYTE_ORDER -/* predefs from newer gcc and clang versions: */ -#elif defined(__ORDER_LITTLE_ENDIAN__) && defined(__ORDER_BIG_ENDIAN__) && defined(__BYTE_ORDER__) -#if (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) -#define SDL_BYTEORDER SDL_LIL_ENDIAN -#elif (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__) -#define SDL_BYTEORDER SDL_BIG_ENDIAN -#else -#error Unsupported endianness -#endif /**/ -#else -#if defined(__hppa__) || \ - defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \ - (defined(__MIPS__) && defined(__MIPSEB__)) || \ - defined(__ppc__) || defined(__POWERPC__) || defined(__powerpc__) || defined(__PPC__) || \ - defined(__sparc__) -#define SDL_BYTEORDER SDL_BIG_ENDIAN -#else -#define SDL_BYTEORDER SDL_LIL_ENDIAN -#endif -#endif /* __linux__ */ -#endif /* !SDL_BYTEORDER */ - -#ifndef SDL_FLOATWORDORDER /* Not defined in SDL_config.h? */ -/* predefs from newer gcc versions: */ -#if defined(__ORDER_LITTLE_ENDIAN__) && defined(__ORDER_BIG_ENDIAN__) && defined(__FLOAT_WORD_ORDER__) -#if (__FLOAT_WORD_ORDER__ == __ORDER_LITTLE_ENDIAN__) -#define SDL_FLOATWORDORDER SDL_LIL_ENDIAN -#elif (__FLOAT_WORD_ORDER__ == __ORDER_BIG_ENDIAN__) -#define SDL_FLOATWORDORDER SDL_BIG_ENDIAN -#else -#error Unsupported endianness -#endif /**/ -#elif defined(__MAVERICK__) -/* For Maverick, float words are always little-endian. */ -#define SDL_FLOATWORDORDER SDL_LIL_ENDIAN -#elif (defined(__arm__) || defined(__thumb__)) && !defined(__VFP_FP__) && !defined(__ARM_EABI__) -/* For FPA, float words are always big-endian. */ -#define SDL_FLOATWORDORDER SDL_BIG_ENDIAN -#else -/* By default, assume that floats words follow the memory system mode. */ -#define SDL_FLOATWORDORDER SDL_BYTEORDER -#endif /* __FLOAT_WORD_ORDER__ */ -#endif /* !SDL_FLOATWORDORDER */ - - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \file SDL_endian.h - */ - -/* various modern compilers may have builtin swap */ -#if defined(__GNUC__) || defined(__clang__) -# define HAS_BUILTIN_BSWAP16 (_SDL_HAS_BUILTIN(__builtin_bswap16)) || \ - (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8)) -# define HAS_BUILTIN_BSWAP32 (_SDL_HAS_BUILTIN(__builtin_bswap32)) || \ - (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) -# define HAS_BUILTIN_BSWAP64 (_SDL_HAS_BUILTIN(__builtin_bswap64)) || \ - (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) - - /* this one is broken */ -# define HAS_BROKEN_BSWAP (__GNUC__ == 2 && __GNUC_MINOR__ <= 95) -#else -# define HAS_BUILTIN_BSWAP16 0 -# define HAS_BUILTIN_BSWAP32 0 -# define HAS_BUILTIN_BSWAP64 0 -# define HAS_BROKEN_BSWAP 0 -#endif - -#if HAS_BUILTIN_BSWAP16 -#define SDL_Swap16(x) __builtin_bswap16(x) -#elif (defined(_MSC_VER) && (_MSC_VER >= 1400)) && !defined(__ICL) -#pragma intrinsic(_byteswap_ushort) -#define SDL_Swap16(x) _byteswap_ushort(x) -#elif defined(__i386__) && !HAS_BROKEN_BSWAP -SDL_FORCE_INLINE Uint16 -SDL_Swap16(Uint16 x) -{ - __asm__("xchgb %b0,%h0": "=q"(x):"0"(x)); - return x; -} -#elif defined(__x86_64__) -SDL_FORCE_INLINE Uint16 -SDL_Swap16(Uint16 x) -{ - __asm__("xchgb %b0,%h0": "=Q"(x):"0"(x)); - return x; -} -#elif (defined(__powerpc__) || defined(__ppc__)) -SDL_FORCE_INLINE Uint16 -SDL_Swap16(Uint16 x) -{ - int result; - - __asm__("rlwimi %0,%2,8,16,23": "=&r"(result):"0"(x >> 8), "r"(x)); - return (Uint16)result; -} -#elif (defined(__m68k__) && !defined(__mcoldfire__)) -SDL_FORCE_INLINE Uint16 -SDL_Swap16(Uint16 x) -{ - __asm__("rorw #8,%0": "=d"(x): "0"(x):"cc"); - return x; -} -#elif defined(__WATCOMC__) && defined(__386__) -extern __inline Uint16 SDL_Swap16(Uint16); -#pragma aux SDL_Swap16 = \ - "xchg al, ah" \ - parm [ax] \ - modify [ax]; -#else -SDL_FORCE_INLINE Uint16 -SDL_Swap16(Uint16 x) -{ - return SDL_static_cast(Uint16, ((x << 8) | (x >> 8))); -} -#endif - -#if HAS_BUILTIN_BSWAP32 -#define SDL_Swap32(x) __builtin_bswap32(x) -#elif (defined(_MSC_VER) && (_MSC_VER >= 1400)) && !defined(__ICL) -#pragma intrinsic(_byteswap_ulong) -#define SDL_Swap32(x) _byteswap_ulong(x) -#elif defined(__i386__) && !HAS_BROKEN_BSWAP -SDL_FORCE_INLINE Uint32 -SDL_Swap32(Uint32 x) -{ - __asm__("bswap %0": "=r"(x):"0"(x)); - return x; -} -#elif defined(__x86_64__) -SDL_FORCE_INLINE Uint32 -SDL_Swap32(Uint32 x) -{ - __asm__("bswapl %0": "=r"(x):"0"(x)); - return x; -} -#elif (defined(__powerpc__) || defined(__ppc__)) -SDL_FORCE_INLINE Uint32 -SDL_Swap32(Uint32 x) -{ - Uint32 result; - - __asm__("rlwimi %0,%2,24,16,23": "=&r"(result): "0" (x>>24), "r"(x)); - __asm__("rlwimi %0,%2,8,8,15" : "=&r"(result): "0" (result), "r"(x)); - __asm__("rlwimi %0,%2,24,0,7" : "=&r"(result): "0" (result), "r"(x)); - return result; -} -#elif (defined(__m68k__) && !defined(__mcoldfire__)) -SDL_FORCE_INLINE Uint32 -SDL_Swap32(Uint32 x) -{ - __asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0": "=d"(x): "0"(x):"cc"); - return x; -} -#elif defined(__WATCOMC__) && defined(__386__) -extern __inline Uint32 SDL_Swap32(Uint32); -#pragma aux SDL_Swap32 = \ - "bswap eax" \ - parm [eax] \ - modify [eax]; -#else -SDL_FORCE_INLINE Uint32 -SDL_Swap32(Uint32 x) -{ - return SDL_static_cast(Uint32, ((x << 24) | ((x << 8) & 0x00FF0000) | - ((x >> 8) & 0x0000FF00) | (x >> 24))); -} -#endif - -#if HAS_BUILTIN_BSWAP64 -#define SDL_Swap64(x) __builtin_bswap64(x) -#elif (defined(_MSC_VER) && (_MSC_VER >= 1400)) && !defined(__ICL) -#pragma intrinsic(_byteswap_uint64) -#define SDL_Swap64(x) _byteswap_uint64(x) -#elif defined(__i386__) && !HAS_BROKEN_BSWAP -SDL_FORCE_INLINE Uint64 -SDL_Swap64(Uint64 x) -{ - union { - struct { - Uint32 a, b; - } s; - Uint64 u; - } v; - v.u = x; - __asm__("bswapl %0 ; bswapl %1 ; xchgl %0,%1" - : "=r"(v.s.a), "=r"(v.s.b) - : "0" (v.s.a), "1"(v.s.b)); - return v.u; -} -#elif defined(__x86_64__) -SDL_FORCE_INLINE Uint64 -SDL_Swap64(Uint64 x) -{ - __asm__("bswapq %0": "=r"(x):"0"(x)); - return x; -} -#elif defined(__WATCOMC__) && defined(__386__) -extern __inline Uint64 SDL_Swap64(Uint64); -#pragma aux SDL_Swap64 = \ - "bswap eax" \ - "bswap edx" \ - "xchg eax,edx" \ - parm [eax edx] \ - modify [eax edx]; -#else -SDL_FORCE_INLINE Uint64 -SDL_Swap64(Uint64 x) -{ - Uint32 hi, lo; - - /* Separate into high and low 32-bit values and swap them */ - lo = SDL_static_cast(Uint32, x & 0xFFFFFFFF); - x >>= 32; - hi = SDL_static_cast(Uint32, x & 0xFFFFFFFF); - x = SDL_Swap32(lo); - x <<= 32; - x |= SDL_Swap32(hi); - return (x); -} -#endif - - -SDL_FORCE_INLINE float -SDL_SwapFloat(float x) -{ - union { - float f; - Uint32 ui32; - } swapper; - swapper.f = x; - swapper.ui32 = SDL_Swap32(swapper.ui32); - return swapper.f; -} - -/* remove extra macros */ -#undef HAS_BROKEN_BSWAP -#undef HAS_BUILTIN_BSWAP16 -#undef HAS_BUILTIN_BSWAP32 -#undef HAS_BUILTIN_BSWAP64 - -/** - * \name Swap to native - * Byteswap item from the specified endianness to the native endianness. - */ -/* @{ */ -#if SDL_BYTEORDER == SDL_LIL_ENDIAN -#define SDL_SwapLE16(X) (X) -#define SDL_SwapLE32(X) (X) -#define SDL_SwapLE64(X) (X) -#define SDL_SwapFloatLE(X) (X) -#define SDL_SwapBE16(X) SDL_Swap16(X) -#define SDL_SwapBE32(X) SDL_Swap32(X) -#define SDL_SwapBE64(X) SDL_Swap64(X) -#define SDL_SwapFloatBE(X) SDL_SwapFloat(X) -#else -#define SDL_SwapLE16(X) SDL_Swap16(X) -#define SDL_SwapLE32(X) SDL_Swap32(X) -#define SDL_SwapLE64(X) SDL_Swap64(X) -#define SDL_SwapFloatLE(X) SDL_SwapFloat(X) -#define SDL_SwapBE16(X) (X) -#define SDL_SwapBE32(X) (X) -#define SDL_SwapBE64(X) (X) -#define SDL_SwapFloatBE(X) (X) -#endif -/* @} *//* Swap to native */ - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_endian_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_endian.h.blob deleted file mode 100644 index 145d0d540f12f5fd6df0e196d8aa2d23c15975e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15422 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h deleted file mode 100644 index 31c22616..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h +++ /dev/null @@ -1,163 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_error.h - * - * Simple error message routines for SDL. - */ - -#ifndef SDL_error_h_ -#define SDL_error_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/* Public functions */ - - -/** - * Set the SDL error message for the current thread. - * - * Calling this function will replace any previous error message that was set. - * - * This function always returns -1, since SDL frequently uses -1 to signify an - * failing result, leading to this idiom: - * - * ```c - * if (error_code) { - * return SDL_SetError("This operation has failed: %d", error_code); - * } - * ``` - * - * \param fmt a printf()-style message format string - * \param ... additional parameters matching % tokens in the `fmt` string, if - * any - * \returns always -1. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ClearError - * \sa SDL_GetError - */ -extern DECLSPEC int SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); - -/** - * Retrieve a message about the last error that occurred on the current - * thread. - * - * It is possible for multiple errors to occur before calling SDL_GetError(). - * Only the last error is returned. - * - * The message is only applicable when an SDL function has signaled an error. - * You must check the return values of SDL function calls to determine when to - * appropriately call SDL_GetError(). You should *not* use the results of - * SDL_GetError() to decide if an error has occurred! Sometimes SDL will set - * an error string even when reporting success. - * - * SDL will *not* clear the error string for successful API calls. You *must* - * check return values for failure cases before you can assume the error - * string applies. - * - * Error strings are set per-thread, so an error set in a different thread - * will not interfere with the current thread's operation. - * - * The returned string is internally allocated and must not be freed by the - * application. - * - * \returns a message with information about the specific error that occurred, - * or an empty string if there hasn't been an error message set since - * the last call to SDL_ClearError(). The message is only applicable - * when an SDL function has signaled an error. You must check the - * return values of SDL function calls to determine when to - * appropriately call SDL_GetError(). - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ClearError - * \sa SDL_SetError - */ -extern DECLSPEC const char *SDLCALL SDL_GetError(void); - -/** - * Get the last error message that was set for the current thread. - * - * This allows the caller to copy the error string into a provided buffer, but - * otherwise operates exactly the same as SDL_GetError(). - * - * \param errstr A buffer to fill with the last error message that was set for - * the current thread - * \param maxlen The size of the buffer pointed to by the errstr parameter - * \returns the pointer passed in as the `errstr` parameter. - * - * \since This function is available since SDL 2.0.14. - * - * \sa SDL_GetError - */ -extern DECLSPEC char * SDLCALL SDL_GetErrorMsg(char *errstr, int maxlen); - -/** - * Clear any previous error message for this thread. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetError - * \sa SDL_SetError - */ -extern DECLSPEC void SDLCALL SDL_ClearError(void); - -/** - * \name Internal error functions - * - * \internal - * Private error reporting function - used internally. - */ -/* @{ */ -#define SDL_OutOfMemory() SDL_Error(SDL_ENOMEM) -#define SDL_Unsupported() SDL_Error(SDL_UNSUPPORTED) -#define SDL_InvalidParamError(param) SDL_SetError("Parameter '%s' is invalid", (param)) -typedef enum -{ - SDL_ENOMEM, - SDL_EFREAD, - SDL_EFWRITE, - SDL_EFSEEK, - SDL_UNSUPPORTED, - SDL_LASTERROR -} SDL_errorcode; -/* SDL_Error() unconditionally returns -1. */ -extern DECLSPEC int SDLCALL SDL_Error(SDL_errorcode code); -/* @} *//* Internal error functions */ - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_error_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_error.h.blob deleted file mode 100644 index 3aceebb97d44ffa5344275173d9334139ebcc26e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16647 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h deleted file mode 100644 index 9d097031..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h +++ /dev/null @@ -1,1166 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_events.h - * - * Include file for SDL event handling. - */ - -#ifndef SDL_events_h_ -#define SDL_events_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_video.h" -#include "SDL_keyboard.h" -#include "SDL_mouse.h" -#include "SDL_joystick.h" -#include "SDL_gamecontroller.h" -#include "SDL_quit.h" -#include "SDL_gesture.h" -#include "SDL_touch.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/* General keyboard/mouse state definitions */ -#define SDL_RELEASED 0 -#define SDL_PRESSED 1 - -/** - * The types of events that can be delivered. - */ -typedef enum -{ - SDL_FIRSTEVENT = 0, /**< Unused (do not remove) */ - - /* Application events */ - SDL_QUIT = 0x100, /**< User-requested quit */ - - /* These application events have special meaning on iOS, see README-ios.md for details */ - SDL_APP_TERMINATING, /**< The application is being terminated by the OS - Called on iOS in applicationWillTerminate() - Called on Android in onDestroy() - */ - SDL_APP_LOWMEMORY, /**< The application is low on memory, free memory if possible. - Called on iOS in applicationDidReceiveMemoryWarning() - Called on Android in onLowMemory() - */ - SDL_APP_WILLENTERBACKGROUND, /**< The application is about to enter the background - Called on iOS in applicationWillResignActive() - Called on Android in onPause() - */ - SDL_APP_DIDENTERBACKGROUND, /**< The application did enter the background and may not get CPU for some time - Called on iOS in applicationDidEnterBackground() - Called on Android in onPause() - */ - SDL_APP_WILLENTERFOREGROUND, /**< The application is about to enter the foreground - Called on iOS in applicationWillEnterForeground() - Called on Android in onResume() - */ - SDL_APP_DIDENTERFOREGROUND, /**< The application is now interactive - Called on iOS in applicationDidBecomeActive() - Called on Android in onResume() - */ - - SDL_LOCALECHANGED, /**< The user's locale preferences have changed. */ - - /* Display events */ - SDL_DISPLAYEVENT = 0x150, /**< Display state change */ - - /* Window events */ - SDL_WINDOWEVENT = 0x200, /**< Window state change */ - SDL_SYSWMEVENT, /**< System specific event */ - - /* Keyboard events */ - SDL_KEYDOWN = 0x300, /**< Key pressed */ - SDL_KEYUP, /**< Key released */ - SDL_TEXTEDITING, /**< Keyboard text editing (composition) */ - SDL_TEXTINPUT, /**< Keyboard text input */ - SDL_KEYMAPCHANGED, /**< Keymap changed due to a system event such as an - input language or keyboard layout change. - */ - SDL_TEXTEDITING_EXT, /**< Extended keyboard text editing (composition) */ - - /* Mouse events */ - SDL_MOUSEMOTION = 0x400, /**< Mouse moved */ - SDL_MOUSEBUTTONDOWN, /**< Mouse button pressed */ - SDL_MOUSEBUTTONUP, /**< Mouse button released */ - SDL_MOUSEWHEEL, /**< Mouse wheel motion */ - - /* Joystick events */ - SDL_JOYAXISMOTION = 0x600, /**< Joystick axis motion */ - SDL_JOYBALLMOTION, /**< Joystick trackball motion */ - SDL_JOYHATMOTION, /**< Joystick hat position change */ - SDL_JOYBUTTONDOWN, /**< Joystick button pressed */ - SDL_JOYBUTTONUP, /**< Joystick button released */ - SDL_JOYDEVICEADDED, /**< A new joystick has been inserted into the system */ - SDL_JOYDEVICEREMOVED, /**< An opened joystick has been removed */ - SDL_JOYBATTERYUPDATED, /**< Joystick battery level change */ - - /* Game controller events */ - SDL_CONTROLLERAXISMOTION = 0x650, /**< Game controller axis motion */ - SDL_CONTROLLERBUTTONDOWN, /**< Game controller button pressed */ - SDL_CONTROLLERBUTTONUP, /**< Game controller button released */ - SDL_CONTROLLERDEVICEADDED, /**< A new Game controller has been inserted into the system */ - SDL_CONTROLLERDEVICEREMOVED, /**< An opened Game controller has been removed */ - SDL_CONTROLLERDEVICEREMAPPED, /**< The controller mapping was updated */ - SDL_CONTROLLERTOUCHPADDOWN, /**< Game controller touchpad was touched */ - SDL_CONTROLLERTOUCHPADMOTION, /**< Game controller touchpad finger was moved */ - SDL_CONTROLLERTOUCHPADUP, /**< Game controller touchpad finger was lifted */ - SDL_CONTROLLERSENSORUPDATE, /**< Game controller sensor was updated */ - - /* Touch events */ - SDL_FINGERDOWN = 0x700, - SDL_FINGERUP, - SDL_FINGERMOTION, - - /* Gesture events */ - SDL_DOLLARGESTURE = 0x800, - SDL_DOLLARRECORD, - SDL_MULTIGESTURE, - - /* Clipboard events */ - SDL_CLIPBOARDUPDATE = 0x900, /**< The clipboard or primary selection changed */ - - /* Drag and drop events */ - SDL_DROPFILE = 0x1000, /**< The system requests a file open */ - SDL_DROPTEXT, /**< text/plain drag-and-drop event */ - SDL_DROPBEGIN, /**< A new set of drops is beginning (NULL filename) */ - SDL_DROPCOMPLETE, /**< Current set of drops is now complete (NULL filename) */ - - /* Audio hotplug events */ - SDL_AUDIODEVICEADDED = 0x1100, /**< A new audio device is available */ - SDL_AUDIODEVICEREMOVED, /**< An audio device has been removed. */ - - /* Sensor events */ - SDL_SENSORUPDATE = 0x1200, /**< A sensor was updated */ - - /* Render events */ - SDL_RENDER_TARGETS_RESET = 0x2000, /**< The render targets have been reset and their contents need to be updated */ - SDL_RENDER_DEVICE_RESET, /**< The device has been reset and all textures need to be recreated */ - - /* Internal events */ - SDL_POLLSENTINEL = 0x7F00, /**< Signals the end of an event poll cycle */ - - /** Events ::SDL_USEREVENT through ::SDL_LASTEVENT are for your use, - * and should be allocated with SDL_RegisterEvents() - */ - SDL_USEREVENT = 0x8000, - - /** - * This last event is only for bounding internal arrays - */ - SDL_LASTEVENT = 0xFFFF -} SDL_EventType; - -/** - * \brief Fields shared by every event - */ -typedef struct SDL_CommonEvent -{ - Uint32 type; - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ -} SDL_CommonEvent; - -/** - * \brief Display state change event data (event.display.*) - */ -typedef struct SDL_DisplayEvent -{ - Uint32 type; /**< ::SDL_DISPLAYEVENT */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 display; /**< The associated display index */ - Uint8 event; /**< ::SDL_DisplayEventID */ - Uint8 padding1; - Uint8 padding2; - Uint8 padding3; - Sint32 data1; /**< event dependent data */ -} SDL_DisplayEvent; - -/** - * \brief Window state change event data (event.window.*) - */ -typedef struct SDL_WindowEvent -{ - Uint32 type; /**< ::SDL_WINDOWEVENT */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The associated window */ - Uint8 event; /**< ::SDL_WindowEventID */ - Uint8 padding1; - Uint8 padding2; - Uint8 padding3; - Sint32 data1; /**< event dependent data */ - Sint32 data2; /**< event dependent data */ -} SDL_WindowEvent; - -/** - * \brief Keyboard button event structure (event.key.*) - */ -typedef struct SDL_KeyboardEvent -{ - Uint32 type; /**< ::SDL_KEYDOWN or ::SDL_KEYUP */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The window with keyboard focus, if any */ - Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ - Uint8 repeat; /**< Non-zero if this is a key repeat */ - Uint8 padding2; - Uint8 padding3; - SDL_Keysym keysym; /**< The key that was pressed or released */ -} SDL_KeyboardEvent; - -#define SDL_TEXTEDITINGEVENT_TEXT_SIZE (32) -/** - * \brief Keyboard text editing event structure (event.edit.*) - */ -typedef struct SDL_TextEditingEvent -{ - Uint32 type; /**< ::SDL_TEXTEDITING */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The window with keyboard focus, if any */ - char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE]; /**< The editing text */ - Sint32 start; /**< The start cursor of selected editing text */ - Sint32 length; /**< The length of selected editing text */ -} SDL_TextEditingEvent; - -/** - * \brief Extended keyboard text editing event structure (event.editExt.*) when text would be - * truncated if stored in the text buffer SDL_TextEditingEvent - */ -typedef struct SDL_TextEditingExtEvent -{ - Uint32 type; /**< ::SDL_TEXTEDITING_EXT */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The window with keyboard focus, if any */ - char* text; /**< The editing text, which should be freed with SDL_free(), and will not be NULL */ - Sint32 start; /**< The start cursor of selected editing text */ - Sint32 length; /**< The length of selected editing text */ -} SDL_TextEditingExtEvent; - -#define SDL_TEXTINPUTEVENT_TEXT_SIZE (32) -/** - * \brief Keyboard text input event structure (event.text.*) - */ -typedef struct SDL_TextInputEvent -{ - Uint32 type; /**< ::SDL_TEXTINPUT */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The window with keyboard focus, if any */ - char text[SDL_TEXTINPUTEVENT_TEXT_SIZE]; /**< The input text */ -} SDL_TextInputEvent; - -/** - * \brief Mouse motion event structure (event.motion.*) - */ -typedef struct SDL_MouseMotionEvent -{ - Uint32 type; /**< ::SDL_MOUSEMOTION */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The window with mouse focus, if any */ - Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ - Uint32 state; /**< The current button state */ - Sint32 x; /**< X coordinate, relative to window */ - Sint32 y; /**< Y coordinate, relative to window */ - Sint32 xrel; /**< The relative motion in the X direction */ - Sint32 yrel; /**< The relative motion in the Y direction */ -} SDL_MouseMotionEvent; - -/** - * \brief Mouse button event structure (event.button.*) - */ -typedef struct SDL_MouseButtonEvent -{ - Uint32 type; /**< ::SDL_MOUSEBUTTONDOWN or ::SDL_MOUSEBUTTONUP */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The window with mouse focus, if any */ - Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ - Uint8 button; /**< The mouse button index */ - Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ - Uint8 clicks; /**< 1 for single-click, 2 for double-click, etc. */ - Uint8 padding1; - Sint32 x; /**< X coordinate, relative to window */ - Sint32 y; /**< Y coordinate, relative to window */ -} SDL_MouseButtonEvent; - -/** - * \brief Mouse wheel event structure (event.wheel.*) - */ -typedef struct SDL_MouseWheelEvent -{ - Uint32 type; /**< ::SDL_MOUSEWHEEL */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The window with mouse focus, if any */ - Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ - Sint32 x; /**< The amount scrolled horizontally, positive to the right and negative to the left */ - Sint32 y; /**< The amount scrolled vertically, positive away from the user and negative toward the user */ - Uint32 direction; /**< Set to one of the SDL_MOUSEWHEEL_* defines. When FLIPPED the values in X and Y will be opposite. Multiply by -1 to change them back */ - float preciseX; /**< The amount scrolled horizontally, positive to the right and negative to the left, with float precision (added in 2.0.18) */ - float preciseY; /**< The amount scrolled vertically, positive away from the user and negative toward the user, with float precision (added in 2.0.18) */ - Sint32 mouseX; /**< X coordinate, relative to window (added in 2.26.0) */ - Sint32 mouseY; /**< Y coordinate, relative to window (added in 2.26.0) */ -} SDL_MouseWheelEvent; - -/** - * \brief Joystick axis motion event structure (event.jaxis.*) - */ -typedef struct SDL_JoyAxisEvent -{ - Uint32 type; /**< ::SDL_JOYAXISMOTION */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - Uint8 axis; /**< The joystick axis index */ - Uint8 padding1; - Uint8 padding2; - Uint8 padding3; - Sint16 value; /**< The axis value (range: -32768 to 32767) */ - Uint16 padding4; -} SDL_JoyAxisEvent; - -/** - * \brief Joystick trackball motion event structure (event.jball.*) - */ -typedef struct SDL_JoyBallEvent -{ - Uint32 type; /**< ::SDL_JOYBALLMOTION */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - Uint8 ball; /**< The joystick trackball index */ - Uint8 padding1; - Uint8 padding2; - Uint8 padding3; - Sint16 xrel; /**< The relative motion in the X direction */ - Sint16 yrel; /**< The relative motion in the Y direction */ -} SDL_JoyBallEvent; - -/** - * \brief Joystick hat position change event structure (event.jhat.*) - */ -typedef struct SDL_JoyHatEvent -{ - Uint32 type; /**< ::SDL_JOYHATMOTION */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - Uint8 hat; /**< The joystick hat index */ - Uint8 value; /**< The hat position value. - * \sa ::SDL_HAT_LEFTUP ::SDL_HAT_UP ::SDL_HAT_RIGHTUP - * \sa ::SDL_HAT_LEFT ::SDL_HAT_CENTERED ::SDL_HAT_RIGHT - * \sa ::SDL_HAT_LEFTDOWN ::SDL_HAT_DOWN ::SDL_HAT_RIGHTDOWN - * - * Note that zero means the POV is centered. - */ - Uint8 padding1; - Uint8 padding2; -} SDL_JoyHatEvent; - -/** - * \brief Joystick button event structure (event.jbutton.*) - */ -typedef struct SDL_JoyButtonEvent -{ - Uint32 type; /**< ::SDL_JOYBUTTONDOWN or ::SDL_JOYBUTTONUP */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - Uint8 button; /**< The joystick button index */ - Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ - Uint8 padding1; - Uint8 padding2; -} SDL_JoyButtonEvent; - -/** - * \brief Joystick device event structure (event.jdevice.*) - */ -typedef struct SDL_JoyDeviceEvent -{ - Uint32 type; /**< ::SDL_JOYDEVICEADDED or ::SDL_JOYDEVICEREMOVED */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED event */ -} SDL_JoyDeviceEvent; - -/** - * \brief Joysick battery level change event structure (event.jbattery.*) - */ -typedef struct SDL_JoyBatteryEvent -{ - Uint32 type; /**< ::SDL_JOYBATTERYUPDATED */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - SDL_JoystickPowerLevel level; /**< The joystick battery level */ -} SDL_JoyBatteryEvent; - -/** - * \brief Game controller axis motion event structure (event.caxis.*) - */ -typedef struct SDL_ControllerAxisEvent -{ - Uint32 type; /**< ::SDL_CONTROLLERAXISMOTION */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - Uint8 axis; /**< The controller axis (SDL_GameControllerAxis) */ - Uint8 padding1; - Uint8 padding2; - Uint8 padding3; - Sint16 value; /**< The axis value (range: -32768 to 32767) */ - Uint16 padding4; -} SDL_ControllerAxisEvent; - - -/** - * \brief Game controller button event structure (event.cbutton.*) - */ -typedef struct SDL_ControllerButtonEvent -{ - Uint32 type; /**< ::SDL_CONTROLLERBUTTONDOWN or ::SDL_CONTROLLERBUTTONUP */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - Uint8 button; /**< The controller button (SDL_GameControllerButton) */ - Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ - Uint8 padding1; - Uint8 padding2; -} SDL_ControllerButtonEvent; - - -/** - * \brief Controller device event structure (event.cdevice.*) - */ -typedef struct SDL_ControllerDeviceEvent -{ - Uint32 type; /**< ::SDL_CONTROLLERDEVICEADDED, ::SDL_CONTROLLERDEVICEREMOVED, or ::SDL_CONTROLLERDEVICEREMAPPED */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED or REMAPPED event */ -} SDL_ControllerDeviceEvent; - -/** - * \brief Game controller touchpad event structure (event.ctouchpad.*) - */ -typedef struct SDL_ControllerTouchpadEvent -{ - Uint32 type; /**< ::SDL_CONTROLLERTOUCHPADDOWN or ::SDL_CONTROLLERTOUCHPADMOTION or ::SDL_CONTROLLERTOUCHPADUP */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - Sint32 touchpad; /**< The index of the touchpad */ - Sint32 finger; /**< The index of the finger on the touchpad */ - float x; /**< Normalized in the range 0...1 with 0 being on the left */ - float y; /**< Normalized in the range 0...1 with 0 being at the top */ - float pressure; /**< Normalized in the range 0...1 */ -} SDL_ControllerTouchpadEvent; - -/** - * \brief Game controller sensor event structure (event.csensor.*) - */ -typedef struct SDL_ControllerSensorEvent -{ - Uint32 type; /**< ::SDL_CONTROLLERSENSORUPDATE */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_JoystickID which; /**< The joystick instance id */ - Sint32 sensor; /**< The type of the sensor, one of the values of ::SDL_SensorType */ - float data[3]; /**< Up to 3 values from the sensor, as defined in SDL_sensor.h */ - Uint64 timestamp_us; /**< The timestamp of the sensor reading in microseconds, if the hardware provides this information. */ -} SDL_ControllerSensorEvent; - -/** - * \brief Audio device event structure (event.adevice.*) - */ -typedef struct SDL_AudioDeviceEvent -{ - Uint32 type; /**< ::SDL_AUDIODEVICEADDED, or ::SDL_AUDIODEVICEREMOVED */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 which; /**< The audio device index for the ADDED event (valid until next SDL_GetNumAudioDevices() call), SDL_AudioDeviceID for the REMOVED event */ - Uint8 iscapture; /**< zero if an output device, non-zero if a capture device. */ - Uint8 padding1; - Uint8 padding2; - Uint8 padding3; -} SDL_AudioDeviceEvent; - - -/** - * \brief Touch finger event structure (event.tfinger.*) - */ -typedef struct SDL_TouchFingerEvent -{ - Uint32 type; /**< ::SDL_FINGERMOTION or ::SDL_FINGERDOWN or ::SDL_FINGERUP */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_TouchID touchId; /**< The touch device id */ - SDL_FingerID fingerId; - float x; /**< Normalized in the range 0...1 */ - float y; /**< Normalized in the range 0...1 */ - float dx; /**< Normalized in the range -1...1 */ - float dy; /**< Normalized in the range -1...1 */ - float pressure; /**< Normalized in the range 0...1 */ - Uint32 windowID; /**< The window underneath the finger, if any */ -} SDL_TouchFingerEvent; - - -/** - * \brief Multiple Finger Gesture Event (event.mgesture.*) - */ -typedef struct SDL_MultiGestureEvent -{ - Uint32 type; /**< ::SDL_MULTIGESTURE */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_TouchID touchId; /**< The touch device id */ - float dTheta; - float dDist; - float x; - float y; - Uint16 numFingers; - Uint16 padding; -} SDL_MultiGestureEvent; - - -/** - * \brief Dollar Gesture Event (event.dgesture.*) - */ -typedef struct SDL_DollarGestureEvent -{ - Uint32 type; /**< ::SDL_DOLLARGESTURE or ::SDL_DOLLARRECORD */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_TouchID touchId; /**< The touch device id */ - SDL_GestureID gestureId; - Uint32 numFingers; - float error; - float x; /**< Normalized center of gesture */ - float y; /**< Normalized center of gesture */ -} SDL_DollarGestureEvent; - - -/** - * \brief An event used to request a file open by the system (event.drop.*) - * This event is enabled by default, you can disable it with SDL_EventState(). - * \note If this event is enabled, you must free the filename in the event. - */ -typedef struct SDL_DropEvent -{ - Uint32 type; /**< ::SDL_DROPBEGIN or ::SDL_DROPFILE or ::SDL_DROPTEXT or ::SDL_DROPCOMPLETE */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - char *file; /**< The file name, which should be freed with SDL_free(), is NULL on begin/complete */ - Uint32 windowID; /**< The window that was dropped on, if any */ -} SDL_DropEvent; - - -/** - * \brief Sensor event structure (event.sensor.*) - */ -typedef struct SDL_SensorEvent -{ - Uint32 type; /**< ::SDL_SENSORUPDATE */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Sint32 which; /**< The instance ID of the sensor */ - float data[6]; /**< Up to 6 values from the sensor - additional values can be queried using SDL_SensorGetData() */ - Uint64 timestamp_us; /**< The timestamp of the sensor reading in microseconds, if the hardware provides this information. */ -} SDL_SensorEvent; - -/** - * \brief The "quit requested" event - */ -typedef struct SDL_QuitEvent -{ - Uint32 type; /**< ::SDL_QUIT */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ -} SDL_QuitEvent; - -/** - * \brief OS Specific event - */ -typedef struct SDL_OSEvent -{ - Uint32 type; /**< ::SDL_QUIT */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ -} SDL_OSEvent; - -/** - * \brief A user-defined event type (event.user.*) - */ -typedef struct SDL_UserEvent -{ - Uint32 type; /**< ::SDL_USEREVENT through ::SDL_LASTEVENT-1 */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - Uint32 windowID; /**< The associated window if any */ - Sint32 code; /**< User defined event code */ - void *data1; /**< User defined data pointer */ - void *data2; /**< User defined data pointer */ -} SDL_UserEvent; - - -struct SDL_SysWMmsg; -typedef struct SDL_SysWMmsg SDL_SysWMmsg; - -/** - * \brief A video driver dependent system event (event.syswm.*) - * This event is disabled by default, you can enable it with SDL_EventState() - * - * \note If you want to use this event, you should include SDL_syswm.h. - */ -typedef struct SDL_SysWMEvent -{ - Uint32 type; /**< ::SDL_SYSWMEVENT */ - Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ - SDL_SysWMmsg *msg; /**< driver dependent data, defined in SDL_syswm.h */ -} SDL_SysWMEvent; - -/** - * \brief General event structure - */ -typedef union SDL_Event -{ - Uint32 type; /**< Event type, shared with all events */ - SDL_CommonEvent common; /**< Common event data */ - SDL_DisplayEvent display; /**< Display event data */ - SDL_WindowEvent window; /**< Window event data */ - SDL_KeyboardEvent key; /**< Keyboard event data */ - SDL_TextEditingEvent edit; /**< Text editing event data */ - SDL_TextEditingExtEvent editExt; /**< Extended text editing event data */ - SDL_TextInputEvent text; /**< Text input event data */ - SDL_MouseMotionEvent motion; /**< Mouse motion event data */ - SDL_MouseButtonEvent button; /**< Mouse button event data */ - SDL_MouseWheelEvent wheel; /**< Mouse wheel event data */ - SDL_JoyAxisEvent jaxis; /**< Joystick axis event data */ - SDL_JoyBallEvent jball; /**< Joystick ball event data */ - SDL_JoyHatEvent jhat; /**< Joystick hat event data */ - SDL_JoyButtonEvent jbutton; /**< Joystick button event data */ - SDL_JoyDeviceEvent jdevice; /**< Joystick device change event data */ - SDL_JoyBatteryEvent jbattery; /**< Joystick battery event data */ - SDL_ControllerAxisEvent caxis; /**< Game Controller axis event data */ - SDL_ControllerButtonEvent cbutton; /**< Game Controller button event data */ - SDL_ControllerDeviceEvent cdevice; /**< Game Controller device event data */ - SDL_ControllerTouchpadEvent ctouchpad; /**< Game Controller touchpad event data */ - SDL_ControllerSensorEvent csensor; /**< Game Controller sensor event data */ - SDL_AudioDeviceEvent adevice; /**< Audio device event data */ - SDL_SensorEvent sensor; /**< Sensor event data */ - SDL_QuitEvent quit; /**< Quit request event data */ - SDL_UserEvent user; /**< Custom event data */ - SDL_SysWMEvent syswm; /**< System dependent window event data */ - SDL_TouchFingerEvent tfinger; /**< Touch finger event data */ - SDL_MultiGestureEvent mgesture; /**< Gesture event data */ - SDL_DollarGestureEvent dgesture; /**< Gesture event data */ - SDL_DropEvent drop; /**< Drag and drop event data */ - - /* This is necessary for ABI compatibility between Visual C++ and GCC. - Visual C++ will respect the push pack pragma and use 52 bytes (size of - SDL_TextEditingEvent, the largest structure for 32-bit and 64-bit - architectures) for this union, and GCC will use the alignment of the - largest datatype within the union, which is 8 bytes on 64-bit - architectures. - - So... we'll add padding to force the size to be 56 bytes for both. - - On architectures where pointers are 16 bytes, this needs rounding up to - the next multiple of 16, 64, and on architectures where pointers are - even larger the size of SDL_UserEvent will dominate as being 3 pointers. - */ - Uint8 padding[sizeof(void *) <= 8 ? 56 : sizeof(void *) == 16 ? 64 : 3 * sizeof(void *)]; -} SDL_Event; - -/* Make sure we haven't broken binary compatibility */ -SDL_COMPILE_TIME_ASSERT(SDL_Event, sizeof(SDL_Event) == sizeof(((SDL_Event *)NULL)->padding)); - - -/* Function prototypes */ - -/** - * Pump the event loop, gathering events from the input devices. - * - * This function updates the event queue and internal input device state. - * - * **WARNING**: This should only be run in the thread that initialized the - * video subsystem, and for extra safety, you should consider only doing those - * things on the main thread in any case. - * - * SDL_PumpEvents() gathers all the pending input information from devices and - * places it in the event queue. Without calls to SDL_PumpEvents() no events - * would ever be placed on the queue. Often the need for calls to - * SDL_PumpEvents() is hidden from the user since SDL_PollEvent() and - * SDL_WaitEvent() implicitly call SDL_PumpEvents(). However, if you are not - * polling or waiting for events (e.g. you are filtering them), then you must - * call SDL_PumpEvents() to force an event queue update. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PollEvent - * \sa SDL_WaitEvent - */ -extern DECLSPEC void SDLCALL SDL_PumpEvents(void); - -/* @{ */ -typedef enum -{ - SDL_ADDEVENT, - SDL_PEEKEVENT, - SDL_GETEVENT -} SDL_eventaction; - -/** - * Check the event queue for messages and optionally return them. - * - * `action` may be any of the following: - * - * - `SDL_ADDEVENT`: up to `numevents` events will be added to the back of the - * event queue. - * - `SDL_PEEKEVENT`: `numevents` events at the front of the event queue, - * within the specified minimum and maximum type, will be returned to the - * caller and will _not_ be removed from the queue. - * - `SDL_GETEVENT`: up to `numevents` events at the front of the event queue, - * within the specified minimum and maximum type, will be returned to the - * caller and will be removed from the queue. - * - * You may have to call SDL_PumpEvents() before calling this function. - * Otherwise, the events may not be ready to be filtered when you call - * SDL_PeepEvents(). - * - * This function is thread-safe. - * - * \param events destination buffer for the retrieved events - * \param numevents if action is SDL_ADDEVENT, the number of events to add - * back to the event queue; if action is SDL_PEEKEVENT or - * SDL_GETEVENT, the maximum number of events to retrieve - * \param action action to take; see [[#action|Remarks]] for details - * \param minType minimum value of the event type to be considered; - * SDL_FIRSTEVENT is a safe choice - * \param maxType maximum value of the event type to be considered; - * SDL_LASTEVENT is a safe choice - * \returns the number of events actually stored or a negative error code on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PollEvent - * \sa SDL_PumpEvents - * \sa SDL_PushEvent - */ -extern DECLSPEC int SDLCALL SDL_PeepEvents(SDL_Event * events, int numevents, - SDL_eventaction action, - Uint32 minType, Uint32 maxType); -/* @} */ - -/** - * Check for the existence of a certain event type in the event queue. - * - * If you need to check for a range of event types, use SDL_HasEvents() - * instead. - * - * \param type the type of event to be queried; see SDL_EventType for details - * \returns SDL_TRUE if events matching `type` are present, or SDL_FALSE if - * events matching `type` are not present. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HasEvents - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasEvent(Uint32 type); - - -/** - * Check for the existence of certain event types in the event queue. - * - * If you need to check for a single event type, use SDL_HasEvent() instead. - * - * \param minType the low end of event type to be queried, inclusive; see - * SDL_EventType for details - * \param maxType the high end of event type to be queried, inclusive; see - * SDL_EventType for details - * \returns SDL_TRUE if events with type >= `minType` and <= `maxType` are - * present, or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HasEvents - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasEvents(Uint32 minType, Uint32 maxType); - -/** - * Clear events of a specific type from the event queue. - * - * This will unconditionally remove any events from the queue that match - * `type`. If you need to remove a range of event types, use SDL_FlushEvents() - * instead. - * - * It's also normal to just ignore events you don't care about in your event - * loop without calling this function. - * - * This function only affects currently queued events. If you want to make - * sure that all pending OS events are flushed, you can call SDL_PumpEvents() - * on the main thread immediately before the flush call. - * - * \param type the type of event to be cleared; see SDL_EventType for details - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FlushEvents - */ -extern DECLSPEC void SDLCALL SDL_FlushEvent(Uint32 type); - -/** - * Clear events of a range of types from the event queue. - * - * This will unconditionally remove any events from the queue that are in the - * range of `minType` to `maxType`, inclusive. If you need to remove a single - * event type, use SDL_FlushEvent() instead. - * - * It's also normal to just ignore events you don't care about in your event - * loop without calling this function. - * - * This function only affects currently queued events. If you want to make - * sure that all pending OS events are flushed, you can call SDL_PumpEvents() - * on the main thread immediately before the flush call. - * - * \param minType the low end of event type to be cleared, inclusive; see - * SDL_EventType for details - * \param maxType the high end of event type to be cleared, inclusive; see - * SDL_EventType for details - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FlushEvent - */ -extern DECLSPEC void SDLCALL SDL_FlushEvents(Uint32 minType, Uint32 maxType); - -/** - * Poll for currently pending events. - * - * If `event` is not NULL, the next event is removed from the queue and stored - * in the SDL_Event structure pointed to by `event`. The 1 returned refers to - * this event, immediately stored in the SDL Event structure -- not an event - * to follow. - * - * If `event` is NULL, it simply returns 1 if there is an event in the queue, - * but will not remove it from the queue. - * - * As this function may implicitly call SDL_PumpEvents(), you can only call - * this function in the thread that set the video mode. - * - * SDL_PollEvent() is the favored way of receiving system events since it can - * be done from the main loop and does not suspend the main loop while waiting - * on an event to be posted. - * - * The common practice is to fully process the event queue once every frame, - * usually as a first step before updating the game's state: - * - * ```c - * while (game_is_still_running) { - * SDL_Event event; - * while (SDL_PollEvent(&event)) { // poll until all events are handled! - * // decide what to do with this event. - * } - * - * // update game state, draw the current frame - * } - * ``` - * - * \param event the SDL_Event structure to be filled with the next event from - * the queue, or NULL - * \returns 1 if there is a pending event or 0 if there are none available. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetEventFilter - * \sa SDL_PeepEvents - * \sa SDL_PushEvent - * \sa SDL_SetEventFilter - * \sa SDL_WaitEvent - * \sa SDL_WaitEventTimeout - */ -extern DECLSPEC int SDLCALL SDL_PollEvent(SDL_Event * event); - -/** - * Wait indefinitely for the next available event. - * - * If `event` is not NULL, the next event is removed from the queue and stored - * in the SDL_Event structure pointed to by `event`. - * - * As this function may implicitly call SDL_PumpEvents(), you can only call - * this function in the thread that initialized the video subsystem. - * - * \param event the SDL_Event structure to be filled in with the next event - * from the queue, or NULL - * \returns 1 on success or 0 if there was an error while waiting for events; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PollEvent - * \sa SDL_PumpEvents - * \sa SDL_WaitEventTimeout - */ -extern DECLSPEC int SDLCALL SDL_WaitEvent(SDL_Event * event); - -/** - * Wait until the specified timeout (in milliseconds) for the next available - * event. - * - * If `event` is not NULL, the next event is removed from the queue and stored - * in the SDL_Event structure pointed to by `event`. - * - * As this function may implicitly call SDL_PumpEvents(), you can only call - * this function in the thread that initialized the video subsystem. - * - * \param event the SDL_Event structure to be filled in with the next event - * from the queue, or NULL - * \param timeout the maximum number of milliseconds to wait for the next - * available event - * \returns 1 on success or 0 if there was an error while waiting for events; - * call SDL_GetError() for more information. This also returns 0 if - * the timeout elapsed without an event arriving. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PollEvent - * \sa SDL_PumpEvents - * \sa SDL_WaitEvent - */ -extern DECLSPEC int SDLCALL SDL_WaitEventTimeout(SDL_Event * event, - int timeout); - -/** - * Add an event to the event queue. - * - * The event queue can actually be used as a two way communication channel. - * Not only can events be read from the queue, but the user can also push - * their own events onto it. `event` is a pointer to the event structure you - * wish to push onto the queue. The event is copied into the queue, and the - * caller may dispose of the memory pointed to after SDL_PushEvent() returns. - * - * Note: Pushing device input events onto the queue doesn't modify the state - * of the device within SDL. - * - * This function is thread-safe, and can be called from other threads safely. - * - * Note: Events pushed onto the queue with SDL_PushEvent() get passed through - * the event filter but events added with SDL_PeepEvents() do not. - * - * For pushing application-specific events, please use SDL_RegisterEvents() to - * get an event type that does not conflict with other code that also wants - * its own custom event types. - * - * \param event the SDL_Event to be added to the queue - * \returns 1 on success, 0 if the event was filtered, or a negative error - * code on failure; call SDL_GetError() for more information. A - * common reason for error is the event queue being full. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PeepEvents - * \sa SDL_PollEvent - * \sa SDL_RegisterEvents - */ -extern DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event * event); - -/** - * A function pointer used for callbacks that watch the event queue. - * - * \param userdata what was passed as `userdata` to SDL_SetEventFilter() - * or SDL_AddEventWatch, etc - * \param event the event that triggered the callback - * \returns 1 to permit event to be added to the queue, and 0 to disallow - * it. When used with SDL_AddEventWatch, the return value is ignored. - * - * \sa SDL_SetEventFilter - * \sa SDL_AddEventWatch - */ -typedef int (SDLCALL * SDL_EventFilter) (void *userdata, SDL_Event * event); - -/** - * Set up a filter to process all events before they change internal state and - * are posted to the internal event queue. - * - * If the filter function returns 1 when called, then the event will be added - * to the internal queue. If it returns 0, then the event will be dropped from - * the queue, but the internal state will still be updated. This allows - * selective filtering of dynamically arriving events. - * - * **WARNING**: Be very careful of what you do in the event filter function, - * as it may run in a different thread! - * - * On platforms that support it, if the quit event is generated by an - * interrupt signal (e.g. pressing Ctrl-C), it will be delivered to the - * application at the next event poll. - * - * There is one caveat when dealing with the ::SDL_QuitEvent event type. The - * event filter is only called when the window manager desires to close the - * application window. If the event filter returns 1, then the window will be - * closed, otherwise the window will remain open if possible. - * - * Note: Disabled events never make it to the event filter function; see - * SDL_EventState(). - * - * Note: If you just want to inspect events without filtering, you should use - * SDL_AddEventWatch() instead. - * - * Note: Events pushed onto the queue with SDL_PushEvent() get passed through - * the event filter, but events pushed onto the queue with SDL_PeepEvents() do - * not. - * - * \param filter An SDL_EventFilter function to call when an event happens - * \param userdata a pointer that is passed to `filter` - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AddEventWatch - * \sa SDL_EventState - * \sa SDL_GetEventFilter - * \sa SDL_PeepEvents - * \sa SDL_PushEvent - */ -extern DECLSPEC void SDLCALL SDL_SetEventFilter(SDL_EventFilter filter, - void *userdata); - -/** - * Query the current event filter. - * - * This function can be used to "chain" filters, by saving the existing filter - * before replacing it with a function that will call that saved filter. - * - * \param filter the current callback function will be stored here - * \param userdata the pointer that is passed to the current event filter will - * be stored here - * \returns SDL_TRUE on success or SDL_FALSE if there is no event filter set. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetEventFilter - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter * filter, - void **userdata); - -/** - * Add a callback to be triggered when an event is added to the event queue. - * - * `filter` will be called when an event happens, and its return value is - * ignored. - * - * **WARNING**: Be very careful of what you do in the event filter function, - * as it may run in a different thread! - * - * If the quit event is generated by a signal (e.g. SIGINT), it will bypass - * the internal queue and be delivered to the watch callback immediately, and - * arrive at the next event poll. - * - * Note: the callback is called for events posted by the user through - * SDL_PushEvent(), but not for disabled events, nor for events by a filter - * callback set with SDL_SetEventFilter(), nor for events posted by the user - * through SDL_PeepEvents(). - * - * \param filter an SDL_EventFilter function to call when an event happens. - * \param userdata a pointer that is passed to `filter` - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_DelEventWatch - * \sa SDL_SetEventFilter - */ -extern DECLSPEC void SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, - void *userdata); - -/** - * Remove an event watch callback added with SDL_AddEventWatch(). - * - * This function takes the same input as SDL_AddEventWatch() to identify and - * delete the corresponding callback. - * - * \param filter the function originally passed to SDL_AddEventWatch() - * \param userdata the pointer originally passed to SDL_AddEventWatch() - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AddEventWatch - */ -extern DECLSPEC void SDLCALL SDL_DelEventWatch(SDL_EventFilter filter, - void *userdata); - -/** - * Run a specific filter function on the current event queue, removing any - * events for which the filter returns 0. - * - * See SDL_SetEventFilter() for more information. Unlike SDL_SetEventFilter(), - * this function does not change the filter permanently, it only uses the - * supplied filter until this function returns. - * - * \param filter the SDL_EventFilter function to call when an event happens - * \param userdata a pointer that is passed to `filter` - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetEventFilter - * \sa SDL_SetEventFilter - */ -extern DECLSPEC void SDLCALL SDL_FilterEvents(SDL_EventFilter filter, - void *userdata); - -/* @{ */ -#define SDL_QUERY -1 -#define SDL_IGNORE 0 -#define SDL_DISABLE 0 -#define SDL_ENABLE 1 - -/** - * Set the state of processing events by type. - * - * `state` may be any of the following: - * - * - `SDL_QUERY`: returns the current processing state of the specified event - * - `SDL_IGNORE` (aka `SDL_DISABLE`): the event will automatically be dropped - * from the event queue and will not be filtered - * - `SDL_ENABLE`: the event will be processed normally - * - * \param type the type of event; see SDL_EventType for details - * \param state how to process the event - * \returns `SDL_DISABLE` or `SDL_ENABLE`, representing the processing state - * of the event before this function makes any changes to it. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetEventState - */ -extern DECLSPEC Uint8 SDLCALL SDL_EventState(Uint32 type, int state); -/* @} */ -#define SDL_GetEventState(type) SDL_EventState(type, SDL_QUERY) - -/** - * Allocate a set of user-defined events, and return the beginning event - * number for that set of events. - * - * Calling this function with `numevents` <= 0 is an error and will return - * (Uint32)-1. - * - * Note, (Uint32)-1 means the maximum unsigned 32-bit integer value (or - * 0xFFFFFFFF), but is clearer to write. - * - * \param numevents the number of events to be allocated - * \returns the beginning event number, or (Uint32)-1 if there are not enough - * user-defined events left. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PushEvent - */ -extern DECLSPEC Uint32 SDLCALL SDL_RegisterEvents(int numevents); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_events_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_events.h.blob deleted file mode 100644 index bc2e977a718b7a3fbb62604302cb525bbffd2beb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84151 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h deleted file mode 100644 index 4cad657e..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h +++ /dev/null @@ -1,149 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_filesystem.h - * - * \brief Include file for filesystem SDL API functions - */ - -#ifndef SDL_filesystem_h_ -#define SDL_filesystem_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" - -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Get the directory where the application was run from. - * - * This is not necessarily a fast call, so you should call this once near - * startup and save the string if you need it. - * - * **Mac OS X and iOS Specific Functionality**: If the application is in a - * ".app" bundle, this function returns the Resource directory (e.g. - * MyApp.app/Contents/Resources/). This behaviour can be overridden by adding - * a property to the Info.plist file. Adding a string key with the name - * SDL_FILESYSTEM_BASE_DIR_TYPE with a supported value will change the - * behaviour. - * - * Supported values for the SDL_FILESYSTEM_BASE_DIR_TYPE property (Given an - * application in /Applications/SDLApp/MyApp.app): - * - * - `resource`: bundle resource directory (the default). For example: - * `/Applications/SDLApp/MyApp.app/Contents/Resources` - * - `bundle`: the Bundle directory. For example: - * `/Applications/SDLApp/MyApp.app/` - * - `parent`: the containing directory of the bundle. For example: - * `/Applications/SDLApp/` - * - * **Nintendo 3DS Specific Functionality**: This function returns "romfs" - * directory of the application as it is uncommon to store resources outside - * the executable. As such it is not a writable directory. - * - * The returned path is guaranteed to end with a path separator ('\' on - * Windows, '/' on most other platforms). - * - * The pointer returned is owned by the caller. Please call SDL_free() on the - * pointer when done with it. - * - * \returns an absolute path in UTF-8 encoding to the application data - * directory. NULL will be returned on error or when the platform - * doesn't implement this functionality, call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.1. - * - * \sa SDL_GetPrefPath - */ -extern DECLSPEC char *SDLCALL SDL_GetBasePath(void); - -/** - * Get the user-and-app-specific path where files can be written. - * - * Get the "pref dir". This is meant to be where users can write personal - * files (preferences and save games, etc) that are specific to your - * application. This directory is unique per user, per application. - * - * This function will decide the appropriate location in the native - * filesystem, create the directory if necessary, and return a string of the - * absolute path to the directory in UTF-8 encoding. - * - * On Windows, the string might look like: - * - * `C:\\Users\\bob\\AppData\\Roaming\\My Company\\My Program Name\\` - * - * On Linux, the string might look like: - * - * `/home/bob/.local/share/My Program Name/` - * - * On Mac OS X, the string might look like: - * - * `/Users/bob/Library/Application Support/My Program Name/` - * - * You should assume the path returned by this function is the only safe place - * to write files (and that SDL_GetBasePath(), while it might be writable, or - * even the parent of the returned path, isn't where you should be writing - * things). - * - * Both the org and app strings may become part of a directory name, so please - * follow these rules: - * - * - Try to use the same org string (_including case-sensitivity_) for all - * your applications that use this function. - * - Always use a unique app string for each one, and make sure it never - * changes for an app once you've decided on it. - * - Unicode characters are legal, as long as it's UTF-8 encoded, but... - * - ...only use letters, numbers, and spaces. Avoid punctuation like "Game - * Name 2: Bad Guy's Revenge!" ... "Game Name 2" is sufficient. - * - * The returned path is guaranteed to end with a path separator ('\' on - * Windows, '/' on most other platforms). - * - * The pointer returned is owned by the caller. Please call SDL_free() on the - * pointer when done with it. - * - * \param org the name of your organization - * \param app the name of your application - * \returns a UTF-8 string of the user directory in platform-dependent - * notation. NULL if there's a problem (creating directory failed, - * etc.). - * - * \since This function is available since SDL 2.0.1. - * - * \sa SDL_GetBasePath - */ -extern DECLSPEC char *SDLCALL SDL_GetPrefPath(const char *org, const char *app); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_filesystem_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_filesystem.h.blob deleted file mode 100644 index 1c6d9d45c5eeda2849d540bcc319bf0b154944cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16370 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h deleted file mode 100644 index 140054d3..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h +++ /dev/null @@ -1,1074 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_gamecontroller.h - * - * Include file for SDL game controller event handling - */ - -#ifndef SDL_gamecontroller_h_ -#define SDL_gamecontroller_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_rwops.h" -#include "SDL_sensor.h" -#include "SDL_joystick.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \file SDL_gamecontroller.h - * - * In order to use these functions, SDL_Init() must have been called - * with the ::SDL_INIT_GAMECONTROLLER flag. This causes SDL to scan the system - * for game controllers, and load appropriate drivers. - * - * If you would like to receive controller updates while the application - * is in the background, you should set the following hint before calling - * SDL_Init(): SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS - */ - -/** - * The gamecontroller structure used to identify an SDL game controller - */ -struct _SDL_GameController; -typedef struct _SDL_GameController SDL_GameController; - -typedef enum -{ - SDL_CONTROLLER_TYPE_UNKNOWN = 0, - SDL_CONTROLLER_TYPE_XBOX360, - SDL_CONTROLLER_TYPE_XBOXONE, - SDL_CONTROLLER_TYPE_PS3, - SDL_CONTROLLER_TYPE_PS4, - SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_PRO, - SDL_CONTROLLER_TYPE_VIRTUAL, - SDL_CONTROLLER_TYPE_PS5, - SDL_CONTROLLER_TYPE_AMAZON_LUNA, - SDL_CONTROLLER_TYPE_GOOGLE_STADIA, - SDL_CONTROLLER_TYPE_NVIDIA_SHIELD, - SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_LEFT, - SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_RIGHT, - SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_JOYCON_PAIR -} SDL_GameControllerType; - -typedef enum -{ - SDL_CONTROLLER_BINDTYPE_NONE = 0, - SDL_CONTROLLER_BINDTYPE_BUTTON, - SDL_CONTROLLER_BINDTYPE_AXIS, - SDL_CONTROLLER_BINDTYPE_HAT -} SDL_GameControllerBindType; - -/** - * Get the SDL joystick layer binding for this controller button/axis mapping - */ -typedef struct SDL_GameControllerButtonBind -{ - SDL_GameControllerBindType bindType; - union - { - int button; - int axis; - struct { - int hat; - int hat_mask; - } hat; - } value; - -} SDL_GameControllerButtonBind; - - -/** - * To count the number of game controllers in the system for the following: - * - * ```c - * int nJoysticks = SDL_NumJoysticks(); - * int nGameControllers = 0; - * for (int i = 0; i < nJoysticks; i++) { - * if (SDL_IsGameController(i)) { - * nGameControllers++; - * } - * } - * ``` - * - * Using the SDL_HINT_GAMECONTROLLERCONFIG hint or the SDL_GameControllerAddMapping() you can add support for controllers SDL is unaware of or cause an existing controller to have a different binding. The format is: - * guid,name,mappings - * - * Where GUID is the string value from SDL_JoystickGetGUIDString(), name is the human readable string for the device and mappings are controller mappings to joystick ones. - * Under Windows there is a reserved GUID of "xinput" that covers any XInput devices. - * The mapping format for joystick is: - * bX - a joystick button, index X - * hX.Y - hat X with value Y - * aX - axis X of the joystick - * Buttons can be used as a controller axis and vice versa. - * - * This string shows an example of a valid mapping for a controller - * - * ```c - * "03000000341a00003608000000000000,PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7", - * ``` - */ - -/** - * Load a set of Game Controller mappings from a seekable SDL data stream. - * - * You can call this function several times, if needed, to load different - * database files. - * - * If a new mapping is loaded for an already known controller GUID, the later - * version will overwrite the one currently loaded. - * - * Mappings not belonging to the current platform or with no platform field - * specified will be ignored (i.e. mappings for Linux will be ignored in - * Windows, etc). - * - * This function will load the text database entirely in memory before - * processing it, so take this into consideration if you are in a memory - * constrained environment. - * - * \param rw the data stream for the mappings to be added - * \param freerw non-zero to close the stream after being read - * \returns the number of mappings added or -1 on error; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_GameControllerAddMapping - * \sa SDL_GameControllerAddMappingsFromFile - * \sa SDL_GameControllerMappingForGUID - */ -extern DECLSPEC int SDLCALL SDL_GameControllerAddMappingsFromRW(SDL_RWops * rw, int freerw); - -/** - * Load a set of mappings from a file, filtered by the current SDL_GetPlatform() - * - * Convenience macro. - */ -#define SDL_GameControllerAddMappingsFromFile(file) SDL_GameControllerAddMappingsFromRW(SDL_RWFromFile(file, "rb"), 1) - -/** - * Add support for controllers that SDL is unaware of or to cause an existing - * controller to have a different binding. - * - * The mapping string has the format "GUID,name,mapping", where GUID is the - * string value from SDL_JoystickGetGUIDString(), name is the human readable - * string for the device and mappings are controller mappings to joystick - * ones. Under Windows there is a reserved GUID of "xinput" that covers all - * XInput devices. The mapping format for joystick is: {| |bX |a joystick - * button, index X |- |hX.Y |hat X with value Y |- |aX |axis X of the joystick - * |} Buttons can be used as a controller axes and vice versa. - * - * This string shows an example of a valid mapping for a controller: - * - * ```c - * "341a3608000000000000504944564944,Afterglow PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7" - * ``` - * - * \param mappingString the mapping string - * \returns 1 if a new mapping is added, 0 if an existing mapping is updated, - * -1 on error; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerMapping - * \sa SDL_GameControllerMappingForGUID - */ -extern DECLSPEC int SDLCALL SDL_GameControllerAddMapping(const char* mappingString); - -/** - * Get the number of mappings installed. - * - * \returns the number of mappings. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerNumMappings(void); - -/** - * Get the mapping at a particular index. - * - * \returns the mapping string. Must be freed with SDL_free(). Returns NULL if - * the index is out of range. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForIndex(int mapping_index); - -/** - * Get the game controller mapping string for a given GUID. - * - * The returned string must be freed with SDL_free(). - * - * \param guid a structure containing the GUID for which a mapping is desired - * \returns a mapping string or NULL on error; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetDeviceGUID - * \sa SDL_JoystickGetGUID - */ -extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForGUID(SDL_JoystickGUID guid); - -/** - * Get the current mapping of a Game Controller. - * - * The returned string must be freed with SDL_free(). - * - * Details about mappings are discussed with SDL_GameControllerAddMapping(). - * - * \param gamecontroller the game controller you want to get the current - * mapping for - * \returns a string that has the controller's mapping or NULL if no mapping - * is available; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerAddMapping - * \sa SDL_GameControllerMappingForGUID - */ -extern DECLSPEC char * SDLCALL SDL_GameControllerMapping(SDL_GameController *gamecontroller); - -/** - * Check if the given joystick is supported by the game controller interface. - * - * `joystick_index` is the same as the `device_index` passed to - * SDL_JoystickOpen(). - * - * \param joystick_index the device_index of a device, up to - * SDL_NumJoysticks() - * \returns SDL_TRUE if the given joystick is supported by the game controller - * interface, SDL_FALSE if it isn't or it's an invalid index. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerNameForIndex - * \sa SDL_GameControllerOpen - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsGameController(int joystick_index); - -/** - * Get the implementation dependent name for the game controller. - * - * This function can be called before any controllers are opened. - * - * `joystick_index` is the same as the `device_index` passed to - * SDL_JoystickOpen(). - * - * \param joystick_index the device_index of a device, from zero to - * SDL_NumJoysticks()-1 - * \returns the implementation-dependent name for the game controller, or NULL - * if there is no name or the index is invalid. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerName - * \sa SDL_GameControllerOpen - * \sa SDL_IsGameController - */ -extern DECLSPEC const char *SDLCALL SDL_GameControllerNameForIndex(int joystick_index); - -/** - * Get the implementation dependent path for the game controller. - * - * This function can be called before any controllers are opened. - * - * `joystick_index` is the same as the `device_index` passed to - * SDL_JoystickOpen(). - * - * \param joystick_index the device_index of a device, from zero to - * SDL_NumJoysticks()-1 - * \returns the implementation-dependent path for the game controller, or NULL - * if there is no path or the index is invalid. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GameControllerPath - */ -extern DECLSPEC const char *SDLCALL SDL_GameControllerPathForIndex(int joystick_index); - -/** - * Get the type of a game controller. - * - * This can be called before any controllers are opened. - * - * \param joystick_index the device_index of a device, from zero to - * SDL_NumJoysticks()-1 - * \returns the controller type. - * - * \since This function is available since SDL 2.0.12. - */ -extern DECLSPEC SDL_GameControllerType SDLCALL SDL_GameControllerTypeForIndex(int joystick_index); - -/** - * Get the mapping of a game controller. - * - * This can be called before any controllers are opened. - * - * \param joystick_index the device_index of a device, from zero to - * SDL_NumJoysticks()-1 - * \returns the mapping string. Must be freed with SDL_free(). Returns NULL if - * no mapping is available. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC char *SDLCALL SDL_GameControllerMappingForDeviceIndex(int joystick_index); - -/** - * Open a game controller for use. - * - * `joystick_index` is the same as the `device_index` passed to - * SDL_JoystickOpen(). - * - * The index passed as an argument refers to the N'th game controller on the - * system. This index is not the value which will identify this controller in - * future controller events. The joystick's instance id (SDL_JoystickID) will - * be used there instead. - * - * \param joystick_index the device_index of a device, up to - * SDL_NumJoysticks() - * \returns a gamecontroller identifier or NULL if an error occurred; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerClose - * \sa SDL_GameControllerNameForIndex - * \sa SDL_IsGameController - */ -extern DECLSPEC SDL_GameController *SDLCALL SDL_GameControllerOpen(int joystick_index); - -/** - * Get the SDL_GameController associated with an instance id. - * - * \param joyid the instance id to get the SDL_GameController for - * \returns an SDL_GameController on success or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.4. - */ -extern DECLSPEC SDL_GameController *SDLCALL SDL_GameControllerFromInstanceID(SDL_JoystickID joyid); - -/** - * Get the SDL_GameController associated with a player index. - * - * Please note that the player index is _not_ the device index, nor is it the - * instance id! - * - * \param player_index the player index, which is not the device index or the - * instance id! - * \returns the SDL_GameController associated with a player index. - * - * \since This function is available since SDL 2.0.12. - * - * \sa SDL_GameControllerGetPlayerIndex - * \sa SDL_GameControllerSetPlayerIndex - */ -extern DECLSPEC SDL_GameController *SDLCALL SDL_GameControllerFromPlayerIndex(int player_index); - -/** - * Get the implementation-dependent name for an opened game controller. - * - * This is the same name as returned by SDL_GameControllerNameForIndex(), but - * it takes a controller identifier instead of the (unstable) device index. - * - * \param gamecontroller a game controller identifier previously returned by - * SDL_GameControllerOpen() - * \returns the implementation dependent name for the game controller, or NULL - * if there is no name or the identifier passed is invalid. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerNameForIndex - * \sa SDL_GameControllerOpen - */ -extern DECLSPEC const char *SDLCALL SDL_GameControllerName(SDL_GameController *gamecontroller); - -/** - * Get the implementation-dependent path for an opened game controller. - * - * This is the same path as returned by SDL_GameControllerNameForIndex(), but - * it takes a controller identifier instead of the (unstable) device index. - * - * \param gamecontroller a game controller identifier previously returned by - * SDL_GameControllerOpen() - * \returns the implementation dependent path for the game controller, or NULL - * if there is no path or the identifier passed is invalid. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GameControllerPathForIndex - */ -extern DECLSPEC const char *SDLCALL SDL_GameControllerPath(SDL_GameController *gamecontroller); - -/** - * Get the type of this currently opened controller - * - * This is the same name as returned by SDL_GameControllerTypeForIndex(), but - * it takes a controller identifier instead of the (unstable) device index. - * - * \param gamecontroller the game controller object to query. - * \returns the controller type. - * - * \since This function is available since SDL 2.0.12. - */ -extern DECLSPEC SDL_GameControllerType SDLCALL SDL_GameControllerGetType(SDL_GameController *gamecontroller); - -/** - * Get the player index of an opened game controller. - * - * For XInput controllers this returns the XInput user index. - * - * \param gamecontroller the game controller object to query. - * \returns the player index for controller, or -1 if it's not available. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerGetPlayerIndex(SDL_GameController *gamecontroller); - -/** - * Set the player index of an opened game controller. - * - * \param gamecontroller the game controller object to adjust. - * \param player_index Player index to assign to this controller, or -1 to - * clear the player index and turn off player LEDs. - * - * \since This function is available since SDL 2.0.12. - */ -extern DECLSPEC void SDLCALL SDL_GameControllerSetPlayerIndex(SDL_GameController *gamecontroller, int player_index); - -/** - * Get the USB vendor ID of an opened controller, if available. - * - * If the vendor ID isn't available this function returns 0. - * - * \param gamecontroller the game controller object to query. - * \return the USB vendor ID, or zero if unavailable. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetVendor(SDL_GameController *gamecontroller); - -/** - * Get the USB product ID of an opened controller, if available. - * - * If the product ID isn't available this function returns 0. - * - * \param gamecontroller the game controller object to query. - * \return the USB product ID, or zero if unavailable. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProduct(SDL_GameController *gamecontroller); - -/** - * Get the product version of an opened controller, if available. - * - * If the product version isn't available this function returns 0. - * - * \param gamecontroller the game controller object to query. - * \return the USB product version, or zero if unavailable. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProductVersion(SDL_GameController *gamecontroller); - -/** - * Get the firmware version of an opened controller, if available. - * - * If the firmware version isn't available this function returns 0. - * - * \param gamecontroller the game controller object to query. - * \return the controller firmware version, or zero if unavailable. - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetFirmwareVersion(SDL_GameController *gamecontroller); - -/** - * Get the serial number of an opened controller, if available. - * - * Returns the serial number of the controller, or NULL if it is not - * available. - * - * \param gamecontroller the game controller object to query. - * \return the serial number, or NULL if unavailable. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC const char * SDLCALL SDL_GameControllerGetSerial(SDL_GameController *gamecontroller); - -/** - * Check if a controller has been opened and is currently connected. - * - * \param gamecontroller a game controller identifier previously returned by - * SDL_GameControllerOpen() - * \returns SDL_TRUE if the controller has been opened and is currently - * connected, or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerClose - * \sa SDL_GameControllerOpen - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerGetAttached(SDL_GameController *gamecontroller); - -/** - * Get the Joystick ID from a Game Controller. - * - * This function will give you a SDL_Joystick object, which allows you to use - * the SDL_Joystick functions with a SDL_GameController object. This would be - * useful for getting a joystick's position at any given time, even if it - * hasn't moved (moving it would produce an event, which would have the axis' - * value). - * - * The pointer returned is owned by the SDL_GameController. You should not - * call SDL_JoystickClose() on it, for example, since doing so will likely - * cause SDL to crash. - * - * \param gamecontroller the game controller object that you want to get a - * joystick from - * \returns a SDL_Joystick object; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_Joystick *SDLCALL SDL_GameControllerGetJoystick(SDL_GameController *gamecontroller); - -/** - * Query or change current state of Game Controller events. - * - * If controller events are disabled, you must call SDL_GameControllerUpdate() - * yourself and check the state of the controller when you want controller - * information. - * - * Any number can be passed to SDL_GameControllerEventState(), but only -1, 0, - * and 1 will have any effect. Other numbers will just be returned. - * - * \param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE` - * \returns the same value passed to the function, with exception to -1 - * (SDL_QUERY), which will return the current state. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickEventState - */ -extern DECLSPEC int SDLCALL SDL_GameControllerEventState(int state); - -/** - * Manually pump game controller updates if not using the loop. - * - * This function is called automatically by the event loop if events are - * enabled. Under such circumstances, it will not be necessary to call this - * function. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC void SDLCALL SDL_GameControllerUpdate(void); - - -/** - * The list of axes available from a controller - * - * Thumbstick axis values range from SDL_JOYSTICK_AXIS_MIN to SDL_JOYSTICK_AXIS_MAX, - * and are centered within ~8000 of zero, though advanced UI will allow users to set - * or autodetect the dead zone, which varies between controllers. - * - * Trigger axis values range from 0 to SDL_JOYSTICK_AXIS_MAX. - */ -typedef enum -{ - SDL_CONTROLLER_AXIS_INVALID = -1, - SDL_CONTROLLER_AXIS_LEFTX, - SDL_CONTROLLER_AXIS_LEFTY, - SDL_CONTROLLER_AXIS_RIGHTX, - SDL_CONTROLLER_AXIS_RIGHTY, - SDL_CONTROLLER_AXIS_TRIGGERLEFT, - SDL_CONTROLLER_AXIS_TRIGGERRIGHT, - SDL_CONTROLLER_AXIS_MAX -} SDL_GameControllerAxis; - -/** - * Convert a string into SDL_GameControllerAxis enum. - * - * This function is called internally to translate SDL_GameController mapping - * strings for the underlying joystick device into the consistent - * SDL_GameController mapping. You do not normally need to call this function - * unless you are parsing SDL_GameController mappings in your own code. - * - * Note specially that "righttrigger" and "lefttrigger" map to - * `SDL_CONTROLLER_AXIS_TRIGGERRIGHT` and `SDL_CONTROLLER_AXIS_TRIGGERLEFT`, - * respectively. - * - * \param str string representing a SDL_GameController axis - * \returns the SDL_GameControllerAxis enum corresponding to the input string, - * or `SDL_CONTROLLER_AXIS_INVALID` if no match was found. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerGetStringForAxis - */ -extern DECLSPEC SDL_GameControllerAxis SDLCALL SDL_GameControllerGetAxisFromString(const char *str); - -/** - * Convert from an SDL_GameControllerAxis enum to a string. - * - * The caller should not SDL_free() the returned string. - * - * \param axis an enum value for a given SDL_GameControllerAxis - * \returns a string for the given axis, or NULL if an invalid axis is - * specified. The string returned is of the format used by - * SDL_GameController mapping strings. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerGetAxisFromString - */ -extern DECLSPEC const char* SDLCALL SDL_GameControllerGetStringForAxis(SDL_GameControllerAxis axis); - -/** - * Get the SDL joystick layer binding for a controller axis mapping. - * - * \param gamecontroller a game controller - * \param axis an axis enum value (one of the SDL_GameControllerAxis values) - * \returns a SDL_GameControllerButtonBind describing the bind. On failure - * (like the given Controller axis doesn't exist on the device), its - * `.bindType` will be `SDL_CONTROLLER_BINDTYPE_NONE`. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerGetBindForButton - */ -extern DECLSPEC SDL_GameControllerButtonBind SDLCALL -SDL_GameControllerGetBindForAxis(SDL_GameController *gamecontroller, - SDL_GameControllerAxis axis); - -/** - * Query whether a game controller has a given axis. - * - * This merely reports whether the controller's mapping defined this axis, as - * that is all the information SDL has about the physical device. - * - * \param gamecontroller a game controller - * \param axis an axis enum value (an SDL_GameControllerAxis value) - * \returns SDL_TRUE if the controller has this axis, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_bool SDLCALL -SDL_GameControllerHasAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); - -/** - * Get the current state of an axis control on a game controller. - * - * The axis indices start at index 0. - * - * The state is a value ranging from -32768 to 32767. Triggers, however, range - * from 0 to 32767 (they never return a negative value). - * - * \param gamecontroller a game controller - * \param axis an axis index (one of the SDL_GameControllerAxis values) - * \returns axis state (including 0) on success or 0 (also) on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerGetButton - */ -extern DECLSPEC Sint16 SDLCALL -SDL_GameControllerGetAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); - -/** - * The list of buttons available from a controller - */ -typedef enum -{ - SDL_CONTROLLER_BUTTON_INVALID = -1, - SDL_CONTROLLER_BUTTON_A, - SDL_CONTROLLER_BUTTON_B, - SDL_CONTROLLER_BUTTON_X, - SDL_CONTROLLER_BUTTON_Y, - SDL_CONTROLLER_BUTTON_BACK, - SDL_CONTROLLER_BUTTON_GUIDE, - SDL_CONTROLLER_BUTTON_START, - SDL_CONTROLLER_BUTTON_LEFTSTICK, - SDL_CONTROLLER_BUTTON_RIGHTSTICK, - SDL_CONTROLLER_BUTTON_LEFTSHOULDER, - SDL_CONTROLLER_BUTTON_RIGHTSHOULDER, - SDL_CONTROLLER_BUTTON_DPAD_UP, - SDL_CONTROLLER_BUTTON_DPAD_DOWN, - SDL_CONTROLLER_BUTTON_DPAD_LEFT, - SDL_CONTROLLER_BUTTON_DPAD_RIGHT, - SDL_CONTROLLER_BUTTON_MISC1, /* Xbox Series X share button, PS5 microphone button, Nintendo Switch Pro capture button, Amazon Luna microphone button */ - SDL_CONTROLLER_BUTTON_PADDLE1, /* Xbox Elite paddle P1 (upper left, facing the back) */ - SDL_CONTROLLER_BUTTON_PADDLE2, /* Xbox Elite paddle P3 (upper right, facing the back) */ - SDL_CONTROLLER_BUTTON_PADDLE3, /* Xbox Elite paddle P2 (lower left, facing the back) */ - SDL_CONTROLLER_BUTTON_PADDLE4, /* Xbox Elite paddle P4 (lower right, facing the back) */ - SDL_CONTROLLER_BUTTON_TOUCHPAD, /* PS4/PS5 touchpad button */ - SDL_CONTROLLER_BUTTON_MAX -} SDL_GameControllerButton; - -/** - * Convert a string into an SDL_GameControllerButton enum. - * - * This function is called internally to translate SDL_GameController mapping - * strings for the underlying joystick device into the consistent - * SDL_GameController mapping. You do not normally need to call this function - * unless you are parsing SDL_GameController mappings in your own code. - * - * \param str string representing a SDL_GameController axis - * \returns the SDL_GameControllerButton enum corresponding to the input - * string, or `SDL_CONTROLLER_AXIS_INVALID` if no match was found. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_GameControllerButton SDLCALL SDL_GameControllerGetButtonFromString(const char *str); - -/** - * Convert from an SDL_GameControllerButton enum to a string. - * - * The caller should not SDL_free() the returned string. - * - * \param button an enum value for a given SDL_GameControllerButton - * \returns a string for the given button, or NULL if an invalid button is - * specified. The string returned is of the format used by - * SDL_GameController mapping strings. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerGetButtonFromString - */ -extern DECLSPEC const char* SDLCALL SDL_GameControllerGetStringForButton(SDL_GameControllerButton button); - -/** - * Get the SDL joystick layer binding for a controller button mapping. - * - * \param gamecontroller a game controller - * \param button an button enum value (an SDL_GameControllerButton value) - * \returns a SDL_GameControllerButtonBind describing the bind. On failure - * (like the given Controller button doesn't exist on the device), - * its `.bindType` will be `SDL_CONTROLLER_BINDTYPE_NONE`. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerGetBindForAxis - */ -extern DECLSPEC SDL_GameControllerButtonBind SDLCALL -SDL_GameControllerGetBindForButton(SDL_GameController *gamecontroller, - SDL_GameControllerButton button); - -/** - * Query whether a game controller has a given button. - * - * This merely reports whether the controller's mapping defined this button, - * as that is all the information SDL has about the physical device. - * - * \param gamecontroller a game controller - * \param button a button enum value (an SDL_GameControllerButton value) - * \returns SDL_TRUE if the controller has this button, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasButton(SDL_GameController *gamecontroller, - SDL_GameControllerButton button); - -/** - * Get the current state of a button on a game controller. - * - * \param gamecontroller a game controller - * \param button a button index (one of the SDL_GameControllerButton values) - * \returns 1 for pressed state or 0 for not pressed state or error; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerGetAxis - */ -extern DECLSPEC Uint8 SDLCALL SDL_GameControllerGetButton(SDL_GameController *gamecontroller, - SDL_GameControllerButton button); - -/** - * Get the number of touchpads on a game controller. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerGetNumTouchpads(SDL_GameController *gamecontroller); - -/** - * Get the number of supported simultaneous fingers on a touchpad on a game - * controller. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerGetNumTouchpadFingers(SDL_GameController *gamecontroller, int touchpad); - -/** - * Get the current state of a finger on a touchpad on a game controller. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerGetTouchpadFinger(SDL_GameController *gamecontroller, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); - -/** - * Return whether a game controller has a particular sensor. - * - * \param gamecontroller The controller to query - * \param type The type of sensor to query - * \returns SDL_TRUE if the sensor exists, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasSensor(SDL_GameController *gamecontroller, SDL_SensorType type); - -/** - * Set whether data reporting for a game controller sensor is enabled. - * - * \param gamecontroller The controller to update - * \param type The type of sensor to enable/disable - * \param enabled Whether data reporting should be enabled - * \returns 0 or -1 if an error occurred. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerSetSensorEnabled(SDL_GameController *gamecontroller, SDL_SensorType type, SDL_bool enabled); - -/** - * Query whether sensor data reporting is enabled for a game controller. - * - * \param gamecontroller The controller to query - * \param type The type of sensor to query - * \returns SDL_TRUE if the sensor is enabled, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerIsSensorEnabled(SDL_GameController *gamecontroller, SDL_SensorType type); - -/** - * Get the data rate (number of events per second) of a game controller - * sensor. - * - * \param gamecontroller The controller to query - * \param type The type of sensor to query - * \return the data rate, or 0.0f if the data rate is not available. - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC float SDLCALL SDL_GameControllerGetSensorDataRate(SDL_GameController *gamecontroller, SDL_SensorType type); - -/** - * Get the current state of a game controller sensor. - * - * The number of values and interpretation of the data is sensor dependent. - * See SDL_sensor.h for the details for each type of sensor. - * - * \param gamecontroller The controller to query - * \param type The type of sensor to query - * \param data A pointer filled with the current sensor state - * \param num_values The number of values to write to data - * \return 0 or -1 if an error occurred. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerGetSensorData(SDL_GameController *gamecontroller, SDL_SensorType type, float *data, int num_values); - -/** - * Get the current state of a game controller sensor with the timestamp of the - * last update. - * - * The number of values and interpretation of the data is sensor dependent. - * See SDL_sensor.h for the details for each type of sensor. - * - * \param gamecontroller The controller to query - * \param type The type of sensor to query - * \param timestamp A pointer filled with the timestamp in microseconds of the - * current sensor reading if available, or 0 if not - * \param data A pointer filled with the current sensor state - * \param num_values The number of values to write to data - * \return 0 or -1 if an error occurred. - * - * \since This function is available since SDL 2.26.0. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerGetSensorDataWithTimestamp(SDL_GameController *gamecontroller, SDL_SensorType type, Uint64 *timestamp, float *data, int num_values); - -/** - * Start a rumble effect on a game controller. - * - * Each call to this function cancels any previous rumble effect, and calling - * it with 0 intensity stops any rumbling. - * - * \param gamecontroller The controller to vibrate - * \param low_frequency_rumble The intensity of the low frequency (left) - * rumble motor, from 0 to 0xFFFF - * \param high_frequency_rumble The intensity of the high frequency (right) - * rumble motor, from 0 to 0xFFFF - * \param duration_ms The duration of the rumble effect, in milliseconds - * \returns 0, or -1 if rumble isn't supported on this controller - * - * \since This function is available since SDL 2.0.9. - * - * \sa SDL_GameControllerHasRumble - */ -extern DECLSPEC int SDLCALL SDL_GameControllerRumble(SDL_GameController *gamecontroller, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); - -/** - * Start a rumble effect in the game controller's triggers. - * - * Each call to this function cancels any previous trigger rumble effect, and - * calling it with 0 intensity stops any rumbling. - * - * Note that this is rumbling of the _triggers_ and not the game controller as - * a whole. This is currently only supported on Xbox One controllers. If you - * want the (more common) whole-controller rumble, use - * SDL_GameControllerRumble() instead. - * - * \param gamecontroller The controller to vibrate - * \param left_rumble The intensity of the left trigger rumble motor, from 0 - * to 0xFFFF - * \param right_rumble The intensity of the right trigger rumble motor, from 0 - * to 0xFFFF - * \param duration_ms The duration of the rumble effect, in milliseconds - * \returns 0, or -1 if trigger rumble isn't supported on this controller - * - * \since This function is available since SDL 2.0.14. - * - * \sa SDL_GameControllerHasRumbleTriggers - */ -extern DECLSPEC int SDLCALL SDL_GameControllerRumbleTriggers(SDL_GameController *gamecontroller, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); - -/** - * Query whether a game controller has an LED. - * - * \param gamecontroller The controller to query - * \returns SDL_TRUE, or SDL_FALSE if this controller does not have a - * modifiable LED - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasLED(SDL_GameController *gamecontroller); - -/** - * Query whether a game controller has rumble support. - * - * \param gamecontroller The controller to query - * \returns SDL_TRUE, or SDL_FALSE if this controller does not have rumble - * support - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_GameControllerRumble - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasRumble(SDL_GameController *gamecontroller); - -/** - * Query whether a game controller has rumble support on triggers. - * - * \param gamecontroller The controller to query - * \returns SDL_TRUE, or SDL_FALSE if this controller does not have trigger - * rumble support - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_GameControllerRumbleTriggers - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasRumbleTriggers(SDL_GameController *gamecontroller); - -/** - * Update a game controller's LED color. - * - * \param gamecontroller The controller to update - * \param red The intensity of the red LED - * \param green The intensity of the green LED - * \param blue The intensity of the blue LED - * \returns 0, or -1 if this controller does not have a modifiable LED - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerSetLED(SDL_GameController *gamecontroller, Uint8 red, Uint8 green, Uint8 blue); - -/** - * Send a controller specific effect packet - * - * \param gamecontroller The controller to affect - * \param data The data to send to the controller - * \param size The size of the data to send to the controller - * \returns 0, or -1 if this controller or driver doesn't support effect - * packets - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC int SDLCALL SDL_GameControllerSendEffect(SDL_GameController *gamecontroller, const void *data, int size); - -/** - * Close a game controller previously opened with SDL_GameControllerOpen(). - * - * \param gamecontroller a game controller identifier previously returned by - * SDL_GameControllerOpen() - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerOpen - */ -extern DECLSPEC void SDLCALL SDL_GameControllerClose(SDL_GameController *gamecontroller); - -/** - * Return the sfSymbolsName for a given button on a game controller on Apple - * platforms. - * - * \param gamecontroller the controller to query - * \param button a button on the game controller - * \returns the sfSymbolsName or NULL if the name can't be found - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_GameControllerGetAppleSFSymbolsNameForAxis - */ -extern DECLSPEC const char* SDLCALL SDL_GameControllerGetAppleSFSymbolsNameForButton(SDL_GameController *gamecontroller, SDL_GameControllerButton button); - -/** - * Return the sfSymbolsName for a given axis on a game controller on Apple - * platforms. - * - * \param gamecontroller the controller to query - * \param axis an axis on the game controller - * \returns the sfSymbolsName or NULL if the name can't be found - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_GameControllerGetAppleSFSymbolsNameForButton - */ -extern DECLSPEC const char* SDLCALL SDL_GameControllerGetAppleSFSymbolsNameForAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_gamecontroller_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gamecontroller.h.blob deleted file mode 100644 index 499b355af2f3ca6b7f852128806c34a2c55a3ac8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64711 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h deleted file mode 100644 index db70b4dd..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h +++ /dev/null @@ -1,117 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_gesture.h - * - * Include file for SDL gesture event handling. - */ - -#ifndef SDL_gesture_h_ -#define SDL_gesture_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_video.h" - -#include "SDL_touch.h" - - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -typedef Sint64 SDL_GestureID; - -/* Function prototypes */ - -/** - * Begin recording a gesture on a specified touch device or all touch devices. - * - * If the parameter `touchId` is -1 (i.e., all devices), this function will - * always return 1, regardless of whether there actually are any devices. - * - * \param touchId the touch device id, or -1 for all touch devices - * \returns 1 on success or 0 if the specified device could not be found. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetTouchDevice - */ -extern DECLSPEC int SDLCALL SDL_RecordGesture(SDL_TouchID touchId); - - -/** - * Save all currently loaded Dollar Gesture templates. - * - * \param dst a SDL_RWops to save to - * \returns the number of saved templates on success or 0 on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LoadDollarTemplates - * \sa SDL_SaveDollarTemplate - */ -extern DECLSPEC int SDLCALL SDL_SaveAllDollarTemplates(SDL_RWops *dst); - -/** - * Save a currently loaded Dollar Gesture template. - * - * \param gestureId a gesture id - * \param dst a SDL_RWops to save to - * \returns 1 on success or 0 on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LoadDollarTemplates - * \sa SDL_SaveAllDollarTemplates - */ -extern DECLSPEC int SDLCALL SDL_SaveDollarTemplate(SDL_GestureID gestureId,SDL_RWops *dst); - - -/** - * Load Dollar Gesture templates from a file. - * - * \param touchId a touch id - * \param src a SDL_RWops to load from - * \returns the number of loaded templates on success or a negative error code - * (or 0) on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SaveAllDollarTemplates - * \sa SDL_SaveDollarTemplate - */ -extern DECLSPEC int SDLCALL SDL_LoadDollarTemplates(SDL_TouchID touchId, SDL_RWops *src); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_gesture_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_gesture.h.blob deleted file mode 100644 index f32f2bd3ecdb8b81a904131127dafc159ecdbb90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15105 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h deleted file mode 100644 index d964223c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h +++ /dev/null @@ -1,100 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_guid.h - * - * Include file for handling ::SDL_GUID values. - */ - -#ifndef SDL_guid_h_ -#define SDL_guid_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * An SDL_GUID is a 128-bit identifier for an input device that - * identifies that device across runs of SDL programs on the same - * platform. If the device is detached and then re-attached to a - * different port, or if the base system is rebooted, the device - * should still report the same GUID. - * - * GUIDs are as precise as possible but are not guaranteed to - * distinguish physically distinct but equivalent devices. For - * example, two game controllers from the same vendor with the same - * product ID and revision may have the same GUID. - * - * GUIDs may be platform-dependent (i.e., the same device may report - * different GUIDs on different operating systems). - */ -typedef struct { - Uint8 data[16]; -} SDL_GUID; - -/* Function prototypes */ - -/** - * Get an ASCII string representation for a given ::SDL_GUID. - * - * You should supply at least 33 bytes for pszGUID. - * - * \param guid the ::SDL_GUID you wish to convert to string - * \param pszGUID buffer in which to write the ASCII string - * \param cbGUID the size of pszGUID - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GUIDFromString - */ -extern DECLSPEC void SDLCALL SDL_GUIDToString(SDL_GUID guid, char *pszGUID, int cbGUID); - -/** - * Convert a GUID string into a ::SDL_GUID structure. - * - * Performs no error checking. If this function is given a string containing - * an invalid GUID, the function will silently succeed, but the GUID generated - * will not be useful. - * - * \param pchGUID string containing an ASCII representation of a GUID - * \returns a ::SDL_GUID structure. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GUIDToString - */ -extern DECLSPEC SDL_GUID SDLCALL SDL_GUIDFromString(const char *pchGUID); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_guid_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_guid.h.blob deleted file mode 100644 index 8cad47fc3149963a140ac751dce6d925924e0c78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15215 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 Q;O+<Bbw>T^ol;)<U$-^e*#H0l diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h deleted file mode 100644 index 2462a1e4..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h +++ /dev/null @@ -1,1341 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_haptic.h - * - * \brief The SDL haptic subsystem allows you to control haptic (force feedback) - * devices. - * - * The basic usage is as follows: - * - Initialize the subsystem (::SDL_INIT_HAPTIC). - * - Open a haptic device. - * - SDL_HapticOpen() to open from index. - * - SDL_HapticOpenFromJoystick() to open from an existing joystick. - * - Create an effect (::SDL_HapticEffect). - * - Upload the effect with SDL_HapticNewEffect(). - * - Run the effect with SDL_HapticRunEffect(). - * - (optional) Free the effect with SDL_HapticDestroyEffect(). - * - Close the haptic device with SDL_HapticClose(). - * - * \par Simple rumble example: - * \code - * SDL_Haptic *haptic; - * - * // Open the device - * haptic = SDL_HapticOpen( 0 ); - * if (haptic == NULL) - * return -1; - * - * // Initialize simple rumble - * if (SDL_HapticRumbleInit( haptic ) != 0) - * return -1; - * - * // Play effect at 50% strength for 2 seconds - * if (SDL_HapticRumblePlay( haptic, 0.5, 2000 ) != 0) - * return -1; - * SDL_Delay( 2000 ); - * - * // Clean up - * SDL_HapticClose( haptic ); - * \endcode - * - * \par Complete example: - * \code - * int test_haptic( SDL_Joystick * joystick ) { - * SDL_Haptic *haptic; - * SDL_HapticEffect effect; - * int effect_id; - * - * // Open the device - * haptic = SDL_HapticOpenFromJoystick( joystick ); - * if (haptic == NULL) return -1; // Most likely joystick isn't haptic - * - * // See if it can do sine waves - * if ((SDL_HapticQuery(haptic) & SDL_HAPTIC_SINE)==0) { - * SDL_HapticClose(haptic); // No sine effect - * return -1; - * } - * - * // Create the effect - * SDL_memset( &effect, 0, sizeof(SDL_HapticEffect) ); // 0 is safe default - * effect.type = SDL_HAPTIC_SINE; - * effect.periodic.direction.type = SDL_HAPTIC_POLAR; // Polar coordinates - * effect.periodic.direction.dir[0] = 18000; // Force comes from south - * effect.periodic.period = 1000; // 1000 ms - * effect.periodic.magnitude = 20000; // 20000/32767 strength - * effect.periodic.length = 5000; // 5 seconds long - * effect.periodic.attack_length = 1000; // Takes 1 second to get max strength - * effect.periodic.fade_length = 1000; // Takes 1 second to fade away - * - * // Upload the effect - * effect_id = SDL_HapticNewEffect( haptic, &effect ); - * - * // Test the effect - * SDL_HapticRunEffect( haptic, effect_id, 1 ); - * SDL_Delay( 5000); // Wait for the effect to finish - * - * // We destroy the effect, although closing the device also does this - * SDL_HapticDestroyEffect( haptic, effect_id ); - * - * // Close the device - * SDL_HapticClose(haptic); - * - * return 0; // Success - * } - * \endcode - */ - -#ifndef SDL_haptic_h_ -#define SDL_haptic_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_joystick.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -/* FIXME: For SDL 2.1, adjust all the magnitude variables to be Uint16 (0xFFFF). - * - * At the moment the magnitude variables are mixed between signed/unsigned, and - * it is also not made clear that ALL of those variables expect a max of 0x7FFF. - * - * Some platforms may have higher precision than that (Linux FF, Windows XInput) - * so we should fix the inconsistency in favor of higher possible precision, - * adjusting for platforms that use different scales. - * -flibit - */ - -/** - * \typedef SDL_Haptic - * - * \brief The haptic structure used to identify an SDL haptic. - * - * \sa SDL_HapticOpen - * \sa SDL_HapticOpenFromJoystick - * \sa SDL_HapticClose - */ -struct _SDL_Haptic; -typedef struct _SDL_Haptic SDL_Haptic; - - -/** - * \name Haptic features - * - * Different haptic features a device can have. - */ -/* @{ */ - -/** - * \name Haptic effects - */ -/* @{ */ - -/** - * \brief Constant effect supported. - * - * Constant haptic effect. - * - * \sa SDL_HapticCondition - */ -#define SDL_HAPTIC_CONSTANT (1u<<0) - -/** - * \brief Sine wave effect supported. - * - * Periodic haptic effect that simulates sine waves. - * - * \sa SDL_HapticPeriodic - */ -#define SDL_HAPTIC_SINE (1u<<1) - -/** - * \brief Left/Right effect supported. - * - * Haptic effect for direct control over high/low frequency motors. - * - * \sa SDL_HapticLeftRight - * \warning this value was SDL_HAPTIC_SQUARE right before 2.0.0 shipped. Sorry, - * we ran out of bits, and this is important for XInput devices. - */ -#define SDL_HAPTIC_LEFTRIGHT (1u<<2) - -/* !!! FIXME: put this back when we have more bits in 2.1 */ -/* #define SDL_HAPTIC_SQUARE (1<<2) */ - -/** - * \brief Triangle wave effect supported. - * - * Periodic haptic effect that simulates triangular waves. - * - * \sa SDL_HapticPeriodic - */ -#define SDL_HAPTIC_TRIANGLE (1u<<3) - -/** - * \brief Sawtoothup wave effect supported. - * - * Periodic haptic effect that simulates saw tooth up waves. - * - * \sa SDL_HapticPeriodic - */ -#define SDL_HAPTIC_SAWTOOTHUP (1u<<4) - -/** - * \brief Sawtoothdown wave effect supported. - * - * Periodic haptic effect that simulates saw tooth down waves. - * - * \sa SDL_HapticPeriodic - */ -#define SDL_HAPTIC_SAWTOOTHDOWN (1u<<5) - -/** - * \brief Ramp effect supported. - * - * Ramp haptic effect. - * - * \sa SDL_HapticRamp - */ -#define SDL_HAPTIC_RAMP (1u<<6) - -/** - * \brief Spring effect supported - uses axes position. - * - * Condition haptic effect that simulates a spring. Effect is based on the - * axes position. - * - * \sa SDL_HapticCondition - */ -#define SDL_HAPTIC_SPRING (1u<<7) - -/** - * \brief Damper effect supported - uses axes velocity. - * - * Condition haptic effect that simulates dampening. Effect is based on the - * axes velocity. - * - * \sa SDL_HapticCondition - */ -#define SDL_HAPTIC_DAMPER (1u<<8) - -/** - * \brief Inertia effect supported - uses axes acceleration. - * - * Condition haptic effect that simulates inertia. Effect is based on the axes - * acceleration. - * - * \sa SDL_HapticCondition - */ -#define SDL_HAPTIC_INERTIA (1u<<9) - -/** - * \brief Friction effect supported - uses axes movement. - * - * Condition haptic effect that simulates friction. Effect is based on the - * axes movement. - * - * \sa SDL_HapticCondition - */ -#define SDL_HAPTIC_FRICTION (1u<<10) - -/** - * \brief Custom effect is supported. - * - * User defined custom haptic effect. - */ -#define SDL_HAPTIC_CUSTOM (1u<<11) - -/* @} *//* Haptic effects */ - -/* These last few are features the device has, not effects */ - -/** - * \brief Device can set global gain. - * - * Device supports setting the global gain. - * - * \sa SDL_HapticSetGain - */ -#define SDL_HAPTIC_GAIN (1u<<12) - -/** - * \brief Device can set autocenter. - * - * Device supports setting autocenter. - * - * \sa SDL_HapticSetAutocenter - */ -#define SDL_HAPTIC_AUTOCENTER (1u<<13) - -/** - * \brief Device can be queried for effect status. - * - * Device supports querying effect status. - * - * \sa SDL_HapticGetEffectStatus - */ -#define SDL_HAPTIC_STATUS (1u<<14) - -/** - * \brief Device can be paused. - * - * Devices supports being paused. - * - * \sa SDL_HapticPause - * \sa SDL_HapticUnpause - */ -#define SDL_HAPTIC_PAUSE (1u<<15) - - -/** - * \name Direction encodings - */ -/* @{ */ - -/** - * \brief Uses polar coordinates for the direction. - * - * \sa SDL_HapticDirection - */ -#define SDL_HAPTIC_POLAR 0 - -/** - * \brief Uses cartesian coordinates for the direction. - * - * \sa SDL_HapticDirection - */ -#define SDL_HAPTIC_CARTESIAN 1 - -/** - * \brief Uses spherical coordinates for the direction. - * - * \sa SDL_HapticDirection - */ -#define SDL_HAPTIC_SPHERICAL 2 - -/** - * \brief Use this value to play an effect on the steering wheel axis. This - * provides better compatibility across platforms and devices as SDL will guess - * the correct axis. - * \sa SDL_HapticDirection - */ -#define SDL_HAPTIC_STEERING_AXIS 3 - -/* @} *//* Direction encodings */ - -/* @} *//* Haptic features */ - -/* - * Misc defines. - */ - -/** - * \brief Used to play a device an infinite number of times. - * - * \sa SDL_HapticRunEffect - */ -#define SDL_HAPTIC_INFINITY 4294967295U - - -/** - * \brief Structure that represents a haptic direction. - * - * This is the direction where the force comes from, - * instead of the direction in which the force is exerted. - * - * Directions can be specified by: - * - ::SDL_HAPTIC_POLAR : Specified by polar coordinates. - * - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates. - * - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates. - * - * Cardinal directions of the haptic device are relative to the positioning - * of the device. North is considered to be away from the user. - * - * The following diagram represents the cardinal directions: - * \verbatim - .--. - |__| .-------. - |=.| |.-----.| - |--| || || - | | |'-----'| - |__|~')_____(' - [ COMPUTER ] - - - North (0,-1) - ^ - | - | - (-1,0) West <----[ HAPTIC ]----> East (1,0) - | - | - v - South (0,1) - - - [ USER ] - \|||/ - (o o) - ---ooO-(_)-Ooo--- - \endverbatim - * - * If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a - * degree starting north and turning clockwise. ::SDL_HAPTIC_POLAR only uses - * the first \c dir parameter. The cardinal directions would be: - * - North: 0 (0 degrees) - * - East: 9000 (90 degrees) - * - South: 18000 (180 degrees) - * - West: 27000 (270 degrees) - * - * If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions - * (X axis, Y axis and Z axis (with 3 axes)). ::SDL_HAPTIC_CARTESIAN uses - * the first three \c dir parameters. The cardinal directions would be: - * - North: 0,-1, 0 - * - East: 1, 0, 0 - * - South: 0, 1, 0 - * - West: -1, 0, 0 - * - * The Z axis represents the height of the effect if supported, otherwise - * it's unused. In cartesian encoding (1, 2) would be the same as (2, 4), you - * can use any multiple you want, only the direction matters. - * - * If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations. - * The first two \c dir parameters are used. The \c dir parameters are as - * follows (all values are in hundredths of degrees): - * - Degrees from (1, 0) rotated towards (0, 1). - * - Degrees towards (0, 0, 1) (device needs at least 3 axes). - * - * - * Example of force coming from the south with all encodings (force coming - * from the south means the user will have to pull the stick to counteract): - * \code - * SDL_HapticDirection direction; - * - * // Cartesian directions - * direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding. - * direction.dir[0] = 0; // X position - * direction.dir[1] = 1; // Y position - * // Assuming the device has 2 axes, we don't need to specify third parameter. - * - * // Polar directions - * direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding. - * direction.dir[0] = 18000; // Polar only uses first parameter - * - * // Spherical coordinates - * direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding - * direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters. - * \endcode - * - * \sa SDL_HAPTIC_POLAR - * \sa SDL_HAPTIC_CARTESIAN - * \sa SDL_HAPTIC_SPHERICAL - * \sa SDL_HAPTIC_STEERING_AXIS - * \sa SDL_HapticEffect - * \sa SDL_HapticNumAxes - */ -typedef struct SDL_HapticDirection -{ - Uint8 type; /**< The type of encoding. */ - Sint32 dir[3]; /**< The encoded direction. */ -} SDL_HapticDirection; - - -/** - * \brief A structure containing a template for a Constant effect. - * - * This struct is exclusively for the ::SDL_HAPTIC_CONSTANT effect. - * - * A constant effect applies a constant force in the specified direction - * to the joystick. - * - * \sa SDL_HAPTIC_CONSTANT - * \sa SDL_HapticEffect - */ -typedef struct SDL_HapticConstant -{ - /* Header */ - Uint16 type; /**< ::SDL_HAPTIC_CONSTANT */ - SDL_HapticDirection direction; /**< Direction of the effect. */ - - /* Replay */ - Uint32 length; /**< Duration of the effect. */ - Uint16 delay; /**< Delay before starting the effect. */ - - /* Trigger */ - Uint16 button; /**< Button that triggers the effect. */ - Uint16 interval; /**< How soon it can be triggered again after button. */ - - /* Constant */ - Sint16 level; /**< Strength of the constant effect. */ - - /* Envelope */ - Uint16 attack_length; /**< Duration of the attack. */ - Uint16 attack_level; /**< Level at the start of the attack. */ - Uint16 fade_length; /**< Duration of the fade. */ - Uint16 fade_level; /**< Level at the end of the fade. */ -} SDL_HapticConstant; - -/** - * \brief A structure containing a template for a Periodic effect. - * - * The struct handles the following effects: - * - ::SDL_HAPTIC_SINE - * - ::SDL_HAPTIC_LEFTRIGHT - * - ::SDL_HAPTIC_TRIANGLE - * - ::SDL_HAPTIC_SAWTOOTHUP - * - ::SDL_HAPTIC_SAWTOOTHDOWN - * - * A periodic effect consists in a wave-shaped effect that repeats itself - * over time. The type determines the shape of the wave and the parameters - * determine the dimensions of the wave. - * - * Phase is given by hundredth of a degree meaning that giving the phase a value - * of 9000 will displace it 25% of its period. Here are sample values: - * - 0: No phase displacement. - * - 9000: Displaced 25% of its period. - * - 18000: Displaced 50% of its period. - * - 27000: Displaced 75% of its period. - * - 36000: Displaced 100% of its period, same as 0, but 0 is preferred. - * - * Examples: - * \verbatim - SDL_HAPTIC_SINE - __ __ __ __ - / \ / \ / \ / - / \__/ \__/ \__/ - - SDL_HAPTIC_SQUARE - __ __ __ __ __ - | | | | | | | | | | - | |__| |__| |__| |__| | - - SDL_HAPTIC_TRIANGLE - /\ /\ /\ /\ /\ - / \ / \ / \ / \ / - / \/ \/ \/ \/ - - SDL_HAPTIC_SAWTOOTHUP - /| /| /| /| /| /| /| - / | / | / | / | / | / | / | - / |/ |/ |/ |/ |/ |/ | - - SDL_HAPTIC_SAWTOOTHDOWN - \ |\ |\ |\ |\ |\ |\ | - \ | \ | \ | \ | \ | \ | \ | - \| \| \| \| \| \| \| - \endverbatim - * - * \sa SDL_HAPTIC_SINE - * \sa SDL_HAPTIC_LEFTRIGHT - * \sa SDL_HAPTIC_TRIANGLE - * \sa SDL_HAPTIC_SAWTOOTHUP - * \sa SDL_HAPTIC_SAWTOOTHDOWN - * \sa SDL_HapticEffect - */ -typedef struct SDL_HapticPeriodic -{ - /* Header */ - Uint16 type; /**< ::SDL_HAPTIC_SINE, ::SDL_HAPTIC_LEFTRIGHT, - ::SDL_HAPTIC_TRIANGLE, ::SDL_HAPTIC_SAWTOOTHUP or - ::SDL_HAPTIC_SAWTOOTHDOWN */ - SDL_HapticDirection direction; /**< Direction of the effect. */ - - /* Replay */ - Uint32 length; /**< Duration of the effect. */ - Uint16 delay; /**< Delay before starting the effect. */ - - /* Trigger */ - Uint16 button; /**< Button that triggers the effect. */ - Uint16 interval; /**< How soon it can be triggered again after button. */ - - /* Periodic */ - Uint16 period; /**< Period of the wave. */ - Sint16 magnitude; /**< Peak value; if negative, equivalent to 180 degrees extra phase shift. */ - Sint16 offset; /**< Mean value of the wave. */ - Uint16 phase; /**< Positive phase shift given by hundredth of a degree. */ - - /* Envelope */ - Uint16 attack_length; /**< Duration of the attack. */ - Uint16 attack_level; /**< Level at the start of the attack. */ - Uint16 fade_length; /**< Duration of the fade. */ - Uint16 fade_level; /**< Level at the end of the fade. */ -} SDL_HapticPeriodic; - -/** - * \brief A structure containing a template for a Condition effect. - * - * The struct handles the following effects: - * - ::SDL_HAPTIC_SPRING: Effect based on axes position. - * - ::SDL_HAPTIC_DAMPER: Effect based on axes velocity. - * - ::SDL_HAPTIC_INERTIA: Effect based on axes acceleration. - * - ::SDL_HAPTIC_FRICTION: Effect based on axes movement. - * - * Direction is handled by condition internals instead of a direction member. - * The condition effect specific members have three parameters. The first - * refers to the X axis, the second refers to the Y axis and the third - * refers to the Z axis. The right terms refer to the positive side of the - * axis and the left terms refer to the negative side of the axis. Please - * refer to the ::SDL_HapticDirection diagram for which side is positive and - * which is negative. - * - * \sa SDL_HapticDirection - * \sa SDL_HAPTIC_SPRING - * \sa SDL_HAPTIC_DAMPER - * \sa SDL_HAPTIC_INERTIA - * \sa SDL_HAPTIC_FRICTION - * \sa SDL_HapticEffect - */ -typedef struct SDL_HapticCondition -{ - /* Header */ - Uint16 type; /**< ::SDL_HAPTIC_SPRING, ::SDL_HAPTIC_DAMPER, - ::SDL_HAPTIC_INERTIA or ::SDL_HAPTIC_FRICTION */ - SDL_HapticDirection direction; /**< Direction of the effect - Not used ATM. */ - - /* Replay */ - Uint32 length; /**< Duration of the effect. */ - Uint16 delay; /**< Delay before starting the effect. */ - - /* Trigger */ - Uint16 button; /**< Button that triggers the effect. */ - Uint16 interval; /**< How soon it can be triggered again after button. */ - - /* Condition */ - Uint16 right_sat[3]; /**< Level when joystick is to the positive side; max 0xFFFF. */ - Uint16 left_sat[3]; /**< Level when joystick is to the negative side; max 0xFFFF. */ - Sint16 right_coeff[3]; /**< How fast to increase the force towards the positive side. */ - Sint16 left_coeff[3]; /**< How fast to increase the force towards the negative side. */ - Uint16 deadband[3]; /**< Size of the dead zone; max 0xFFFF: whole axis-range when 0-centered. */ - Sint16 center[3]; /**< Position of the dead zone. */ -} SDL_HapticCondition; - -/** - * \brief A structure containing a template for a Ramp effect. - * - * This struct is exclusively for the ::SDL_HAPTIC_RAMP effect. - * - * The ramp effect starts at start strength and ends at end strength. - * It augments in linear fashion. If you use attack and fade with a ramp - * the effects get added to the ramp effect making the effect become - * quadratic instead of linear. - * - * \sa SDL_HAPTIC_RAMP - * \sa SDL_HapticEffect - */ -typedef struct SDL_HapticRamp -{ - /* Header */ - Uint16 type; /**< ::SDL_HAPTIC_RAMP */ - SDL_HapticDirection direction; /**< Direction of the effect. */ - - /* Replay */ - Uint32 length; /**< Duration of the effect. */ - Uint16 delay; /**< Delay before starting the effect. */ - - /* Trigger */ - Uint16 button; /**< Button that triggers the effect. */ - Uint16 interval; /**< How soon it can be triggered again after button. */ - - /* Ramp */ - Sint16 start; /**< Beginning strength level. */ - Sint16 end; /**< Ending strength level. */ - - /* Envelope */ - Uint16 attack_length; /**< Duration of the attack. */ - Uint16 attack_level; /**< Level at the start of the attack. */ - Uint16 fade_length; /**< Duration of the fade. */ - Uint16 fade_level; /**< Level at the end of the fade. */ -} SDL_HapticRamp; - -/** - * \brief A structure containing a template for a Left/Right effect. - * - * This struct is exclusively for the ::SDL_HAPTIC_LEFTRIGHT effect. - * - * The Left/Right effect is used to explicitly control the large and small - * motors, commonly found in modern game controllers. The small (right) motor - * is high frequency, and the large (left) motor is low frequency. - * - * \sa SDL_HAPTIC_LEFTRIGHT - * \sa SDL_HapticEffect - */ -typedef struct SDL_HapticLeftRight -{ - /* Header */ - Uint16 type; /**< ::SDL_HAPTIC_LEFTRIGHT */ - - /* Replay */ - Uint32 length; /**< Duration of the effect in milliseconds. */ - - /* Rumble */ - Uint16 large_magnitude; /**< Control of the large controller motor. */ - Uint16 small_magnitude; /**< Control of the small controller motor. */ -} SDL_HapticLeftRight; - -/** - * \brief A structure containing a template for the ::SDL_HAPTIC_CUSTOM effect. - * - * This struct is exclusively for the ::SDL_HAPTIC_CUSTOM effect. - * - * A custom force feedback effect is much like a periodic effect, where the - * application can define its exact shape. You will have to allocate the - * data yourself. Data should consist of channels * samples Uint16 samples. - * - * If channels is one, the effect is rotated using the defined direction. - * Otherwise it uses the samples in data for the different axes. - * - * \sa SDL_HAPTIC_CUSTOM - * \sa SDL_HapticEffect - */ -typedef struct SDL_HapticCustom -{ - /* Header */ - Uint16 type; /**< ::SDL_HAPTIC_CUSTOM */ - SDL_HapticDirection direction; /**< Direction of the effect. */ - - /* Replay */ - Uint32 length; /**< Duration of the effect. */ - Uint16 delay; /**< Delay before starting the effect. */ - - /* Trigger */ - Uint16 button; /**< Button that triggers the effect. */ - Uint16 interval; /**< How soon it can be triggered again after button. */ - - /* Custom */ - Uint8 channels; /**< Axes to use, minimum of one. */ - Uint16 period; /**< Sample periods. */ - Uint16 samples; /**< Amount of samples. */ - Uint16 *data; /**< Should contain channels*samples items. */ - - /* Envelope */ - Uint16 attack_length; /**< Duration of the attack. */ - Uint16 attack_level; /**< Level at the start of the attack. */ - Uint16 fade_length; /**< Duration of the fade. */ - Uint16 fade_level; /**< Level at the end of the fade. */ -} SDL_HapticCustom; - -/** - * \brief The generic template for any haptic effect. - * - * All values max at 32767 (0x7FFF). Signed values also can be negative. - * Time values unless specified otherwise are in milliseconds. - * - * You can also pass ::SDL_HAPTIC_INFINITY to length instead of a 0-32767 - * value. Neither delay, interval, attack_length nor fade_length support - * ::SDL_HAPTIC_INFINITY. Fade will also not be used since effect never ends. - * - * Additionally, the ::SDL_HAPTIC_RAMP effect does not support a duration of - * ::SDL_HAPTIC_INFINITY. - * - * Button triggers may not be supported on all devices, it is advised to not - * use them if possible. Buttons start at index 1 instead of index 0 like - * the joystick. - * - * If both attack_length and fade_level are 0, the envelope is not used, - * otherwise both values are used. - * - * Common parts: - * \code - * // Replay - All effects have this - * Uint32 length; // Duration of effect (ms). - * Uint16 delay; // Delay before starting effect. - * - * // Trigger - All effects have this - * Uint16 button; // Button that triggers effect. - * Uint16 interval; // How soon before effect can be triggered again. - * - * // Envelope - All effects except condition effects have this - * Uint16 attack_length; // Duration of the attack (ms). - * Uint16 attack_level; // Level at the start of the attack. - * Uint16 fade_length; // Duration of the fade out (ms). - * Uint16 fade_level; // Level at the end of the fade. - * \endcode - * - * - * Here we have an example of a constant effect evolution in time: - * \verbatim - Strength - ^ - | - | effect level --> _________________ - | / \ - | / \ - | / \ - | / \ - | attack_level --> | \ - | | | <--- fade_level - | - +--------------------------------------------------> Time - [--] [---] - attack_length fade_length - - [------------------][-----------------------] - delay length - \endverbatim - * - * Note either the attack_level or the fade_level may be above the actual - * effect level. - * - * \sa SDL_HapticConstant - * \sa SDL_HapticPeriodic - * \sa SDL_HapticCondition - * \sa SDL_HapticRamp - * \sa SDL_HapticLeftRight - * \sa SDL_HapticCustom - */ -typedef union SDL_HapticEffect -{ - /* Common for all force feedback effects */ - Uint16 type; /**< Effect type. */ - SDL_HapticConstant constant; /**< Constant effect. */ - SDL_HapticPeriodic periodic; /**< Periodic effect. */ - SDL_HapticCondition condition; /**< Condition effect. */ - SDL_HapticRamp ramp; /**< Ramp effect. */ - SDL_HapticLeftRight leftright; /**< Left/Right effect. */ - SDL_HapticCustom custom; /**< Custom effect. */ -} SDL_HapticEffect; - - -/* Function prototypes */ - -/** - * Count the number of haptic devices attached to the system. - * - * \returns the number of haptic devices detected on the system or a negative - * error code on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticName - */ -extern DECLSPEC int SDLCALL SDL_NumHaptics(void); - -/** - * Get the implementation dependent name of a haptic device. - * - * This can be called before any joysticks are opened. If no name can be - * found, this function returns NULL. - * - * \param device_index index of the device to query. - * \returns the name of the device or NULL on failure; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_NumHaptics - */ -extern DECLSPEC const char *SDLCALL SDL_HapticName(int device_index); - -/** - * Open a haptic device for use. - * - * The index passed as an argument refers to the N'th haptic device on this - * system. - * - * When opening a haptic device, its gain will be set to maximum and - * autocenter will be disabled. To modify these values use SDL_HapticSetGain() - * and SDL_HapticSetAutocenter(). - * - * \param device_index index of the device to open - * \returns the device identifier or NULL on failure; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticClose - * \sa SDL_HapticIndex - * \sa SDL_HapticOpenFromJoystick - * \sa SDL_HapticOpenFromMouse - * \sa SDL_HapticPause - * \sa SDL_HapticSetAutocenter - * \sa SDL_HapticSetGain - * \sa SDL_HapticStopAll - */ -extern DECLSPEC SDL_Haptic *SDLCALL SDL_HapticOpen(int device_index); - -/** - * Check if the haptic device at the designated index has been opened. - * - * \param device_index the index of the device to query - * \returns 1 if it has been opened, 0 if it hasn't or on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticIndex - * \sa SDL_HapticOpen - */ -extern DECLSPEC int SDLCALL SDL_HapticOpened(int device_index); - -/** - * Get the index of a haptic device. - * - * \param haptic the SDL_Haptic device to query - * \returns the index of the specified haptic device or a negative error code - * on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticOpen - * \sa SDL_HapticOpened - */ -extern DECLSPEC int SDLCALL SDL_HapticIndex(SDL_Haptic * haptic); - -/** - * Query whether or not the current mouse has haptic capabilities. - * - * \returns SDL_TRUE if the mouse is haptic or SDL_FALSE if it isn't. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticOpenFromMouse - */ -extern DECLSPEC int SDLCALL SDL_MouseIsHaptic(void); - -/** - * Try to open a haptic device from the current mouse. - * - * \returns the haptic device identifier or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticOpen - * \sa SDL_MouseIsHaptic - */ -extern DECLSPEC SDL_Haptic *SDLCALL SDL_HapticOpenFromMouse(void); - -/** - * Query if a joystick has haptic features. - * - * \param joystick the SDL_Joystick to test for haptic capabilities - * \returns SDL_TRUE if the joystick is haptic, SDL_FALSE if it isn't, or a - * negative error code on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticOpenFromJoystick - */ -extern DECLSPEC int SDLCALL SDL_JoystickIsHaptic(SDL_Joystick * joystick); - -/** - * Open a haptic device for use from a joystick device. - * - * You must still close the haptic device separately. It will not be closed - * with the joystick. - * - * When opened from a joystick you should first close the haptic device before - * closing the joystick device. If not, on some implementations the haptic - * device will also get unallocated and you'll be unable to use force feedback - * on that device. - * - * \param joystick the SDL_Joystick to create a haptic device from - * \returns a valid haptic device identifier on success or NULL on failure; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticClose - * \sa SDL_HapticOpen - * \sa SDL_JoystickIsHaptic - */ -extern DECLSPEC SDL_Haptic *SDLCALL SDL_HapticOpenFromJoystick(SDL_Joystick * - joystick); - -/** - * Close a haptic device previously opened with SDL_HapticOpen(). - * - * \param haptic the SDL_Haptic device to close - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticOpen - */ -extern DECLSPEC void SDLCALL SDL_HapticClose(SDL_Haptic * haptic); - -/** - * Get the number of effects a haptic device can store. - * - * On some platforms this isn't fully supported, and therefore is an - * approximation. Always check to see if your created effect was actually - * created and do not rely solely on SDL_HapticNumEffects(). - * - * \param haptic the SDL_Haptic device to query - * \returns the number of effects the haptic device can store or a negative - * error code on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticNumEffectsPlaying - * \sa SDL_HapticQuery - */ -extern DECLSPEC int SDLCALL SDL_HapticNumEffects(SDL_Haptic * haptic); - -/** - * Get the number of effects a haptic device can play at the same time. - * - * This is not supported on all platforms, but will always return a value. - * - * \param haptic the SDL_Haptic device to query maximum playing effects - * \returns the number of effects the haptic device can play at the same time - * or a negative error code on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticNumEffects - * \sa SDL_HapticQuery - */ -extern DECLSPEC int SDLCALL SDL_HapticNumEffectsPlaying(SDL_Haptic * haptic); - -/** - * Get the haptic device's supported features in bitwise manner. - * - * \param haptic the SDL_Haptic device to query - * \returns a list of supported haptic features in bitwise manner (OR'd), or 0 - * on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticEffectSupported - * \sa SDL_HapticNumEffects - */ -extern DECLSPEC unsigned int SDLCALL SDL_HapticQuery(SDL_Haptic * haptic); - - -/** - * Get the number of haptic axes the device has. - * - * The number of haptic axes might be useful if working with the - * SDL_HapticDirection effect. - * - * \param haptic the SDL_Haptic device to query - * \returns the number of axes on success or a negative error code on failure; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_HapticNumAxes(SDL_Haptic * haptic); - -/** - * Check to see if an effect is supported by a haptic device. - * - * \param haptic the SDL_Haptic device to query - * \param effect the desired effect to query - * \returns SDL_TRUE if effect is supported, SDL_FALSE if it isn't, or a - * negative error code on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticNewEffect - * \sa SDL_HapticQuery - */ -extern DECLSPEC int SDLCALL SDL_HapticEffectSupported(SDL_Haptic * haptic, - SDL_HapticEffect * - effect); - -/** - * Create a new haptic effect on a specified device. - * - * \param haptic an SDL_Haptic device to create the effect on - * \param effect an SDL_HapticEffect structure containing the properties of - * the effect to create - * \returns the ID of the effect on success or a negative error code on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticDestroyEffect - * \sa SDL_HapticRunEffect - * \sa SDL_HapticUpdateEffect - */ -extern DECLSPEC int SDLCALL SDL_HapticNewEffect(SDL_Haptic * haptic, - SDL_HapticEffect * effect); - -/** - * Update the properties of an effect. - * - * Can be used dynamically, although behavior when dynamically changing - * direction may be strange. Specifically the effect may re-upload itself and - * start playing from the start. You also cannot change the type either when - * running SDL_HapticUpdateEffect(). - * - * \param haptic the SDL_Haptic device that has the effect - * \param effect the identifier of the effect to update - * \param data an SDL_HapticEffect structure containing the new effect - * properties to use - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticDestroyEffect - * \sa SDL_HapticNewEffect - * \sa SDL_HapticRunEffect - */ -extern DECLSPEC int SDLCALL SDL_HapticUpdateEffect(SDL_Haptic * haptic, - int effect, - SDL_HapticEffect * data); - -/** - * Run the haptic effect on its associated haptic device. - * - * To repeat the effect over and over indefinitely, set `iterations` to - * `SDL_HAPTIC_INFINITY`. (Repeats the envelope - attack and fade.) To make - * one instance of the effect last indefinitely (so the effect does not fade), - * set the effect's `length` in its structure/union to `SDL_HAPTIC_INFINITY` - * instead. - * - * \param haptic the SDL_Haptic device to run the effect on - * \param effect the ID of the haptic effect to run - * \param iterations the number of iterations to run the effect; use - * `SDL_HAPTIC_INFINITY` to repeat forever - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticDestroyEffect - * \sa SDL_HapticGetEffectStatus - * \sa SDL_HapticStopEffect - */ -extern DECLSPEC int SDLCALL SDL_HapticRunEffect(SDL_Haptic * haptic, - int effect, - Uint32 iterations); - -/** - * Stop the haptic effect on its associated haptic device. - * - * * - * - * \param haptic the SDL_Haptic device to stop the effect on - * \param effect the ID of the haptic effect to stop - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticDestroyEffect - * \sa SDL_HapticRunEffect - */ -extern DECLSPEC int SDLCALL SDL_HapticStopEffect(SDL_Haptic * haptic, - int effect); - -/** - * Destroy a haptic effect on the device. - * - * This will stop the effect if it's running. Effects are automatically - * destroyed when the device is closed. - * - * \param haptic the SDL_Haptic device to destroy the effect on - * \param effect the ID of the haptic effect to destroy - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticNewEffect - */ -extern DECLSPEC void SDLCALL SDL_HapticDestroyEffect(SDL_Haptic * haptic, - int effect); - -/** - * Get the status of the current effect on the specified haptic device. - * - * Device must support the SDL_HAPTIC_STATUS feature. - * - * \param haptic the SDL_Haptic device to query for the effect status on - * \param effect the ID of the haptic effect to query its status - * \returns 0 if it isn't playing, 1 if it is playing, or a negative error - * code on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticRunEffect - * \sa SDL_HapticStopEffect - */ -extern DECLSPEC int SDLCALL SDL_HapticGetEffectStatus(SDL_Haptic * haptic, - int effect); - -/** - * Set the global gain of the specified haptic device. - * - * Device must support the SDL_HAPTIC_GAIN feature. - * - * The user may specify the maximum gain by setting the environment variable - * `SDL_HAPTIC_GAIN_MAX` which should be between 0 and 100. All calls to - * SDL_HapticSetGain() will scale linearly using `SDL_HAPTIC_GAIN_MAX` as the - * maximum. - * - * \param haptic the SDL_Haptic device to set the gain on - * \param gain value to set the gain to, should be between 0 and 100 (0 - 100) - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticQuery - */ -extern DECLSPEC int SDLCALL SDL_HapticSetGain(SDL_Haptic * haptic, int gain); - -/** - * Set the global autocenter of the device. - * - * Autocenter should be between 0 and 100. Setting it to 0 will disable - * autocentering. - * - * Device must support the SDL_HAPTIC_AUTOCENTER feature. - * - * \param haptic the SDL_Haptic device to set autocentering on - * \param autocenter value to set autocenter to (0-100) - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticQuery - */ -extern DECLSPEC int SDLCALL SDL_HapticSetAutocenter(SDL_Haptic * haptic, - int autocenter); - -/** - * Pause a haptic device. - * - * Device must support the `SDL_HAPTIC_PAUSE` feature. Call - * SDL_HapticUnpause() to resume playback. - * - * Do not modify the effects nor add new ones while the device is paused. That - * can cause all sorts of weird errors. - * - * \param haptic the SDL_Haptic device to pause - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticUnpause - */ -extern DECLSPEC int SDLCALL SDL_HapticPause(SDL_Haptic * haptic); - -/** - * Unpause a haptic device. - * - * Call to unpause after SDL_HapticPause(). - * - * \param haptic the SDL_Haptic device to unpause - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticPause - */ -extern DECLSPEC int SDLCALL SDL_HapticUnpause(SDL_Haptic * haptic); - -/** - * Stop all the currently playing effects on a haptic device. - * - * \param haptic the SDL_Haptic device to stop - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_HapticStopAll(SDL_Haptic * haptic); - -/** - * Check whether rumble is supported on a haptic device. - * - * \param haptic haptic device to check for rumble support - * \returns SDL_TRUE if effect is supported, SDL_FALSE if it isn't, or a - * negative error code on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticRumbleInit - * \sa SDL_HapticRumblePlay - * \sa SDL_HapticRumbleStop - */ -extern DECLSPEC int SDLCALL SDL_HapticRumbleSupported(SDL_Haptic * haptic); - -/** - * Initialize a haptic device for simple rumble playback. - * - * \param haptic the haptic device to initialize for simple rumble playback - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticOpen - * \sa SDL_HapticRumblePlay - * \sa SDL_HapticRumbleStop - * \sa SDL_HapticRumbleSupported - */ -extern DECLSPEC int SDLCALL SDL_HapticRumbleInit(SDL_Haptic * haptic); - -/** - * Run a simple rumble effect on a haptic device. - * - * \param haptic the haptic device to play the rumble effect on - * \param strength strength of the rumble to play as a 0-1 float value - * \param length length of the rumble to play in milliseconds - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticRumbleInit - * \sa SDL_HapticRumbleStop - * \sa SDL_HapticRumbleSupported - */ -extern DECLSPEC int SDLCALL SDL_HapticRumblePlay(SDL_Haptic * haptic, float strength, Uint32 length ); - -/** - * Stop the simple rumble on a haptic device. - * - * \param haptic the haptic device to stop the rumble effect on - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HapticRumbleInit - * \sa SDL_HapticRumblePlay - * \sa SDL_HapticRumbleSupported - */ -extern DECLSPEC int SDLCALL SDL_HapticRumbleStop(SDL_Haptic * haptic); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_haptic_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_haptic.h.blob deleted file mode 100644 index 3373e601d90a2eebffc21768a8301f22ddb1cad8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66020 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h deleted file mode 100644 index 05751003..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h +++ /dev/null @@ -1,451 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_hidapi.h - * - * Header file for SDL HIDAPI functions. - * - * This is an adaptation of the original HIDAPI interface by Alan Ott, - * and includes source code licensed under the following BSD license: - * - Copyright (c) 2010, Alan Ott, Signal 11 Software - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of Signal 11 Software nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - * - * If you would like a version of SDL without this code, you can build SDL - * with SDL_HIDAPI_DISABLED defined to 1. You might want to do this for example - * on iOS or tvOS to avoid a dependency on the CoreBluetooth framework. - */ - -#ifndef SDL_hidapi_h_ -#define SDL_hidapi_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \brief A handle representing an open HID device - */ -struct SDL_hid_device_; -typedef struct SDL_hid_device_ SDL_hid_device; /**< opaque hidapi structure */ - -/** hidapi info structure */ -/** - * \brief Information about a connected HID device - */ -typedef struct SDL_hid_device_info -{ - /** Platform-specific device path */ - char *path; - /** Device Vendor ID */ - unsigned short vendor_id; - /** Device Product ID */ - unsigned short product_id; - /** Serial Number */ - wchar_t *serial_number; - /** Device Release Number in binary-coded decimal, - also known as Device Version Number */ - unsigned short release_number; - /** Manufacturer String */ - wchar_t *manufacturer_string; - /** Product string */ - wchar_t *product_string; - /** Usage Page for this Device/Interface - (Windows/Mac only). */ - unsigned short usage_page; - /** Usage for this Device/Interface - (Windows/Mac only).*/ - unsigned short usage; - /** The USB interface which this logical device - represents. - - * Valid on both Linux implementations in all cases. - * Valid on the Windows implementation only if the device - contains more than one interface. */ - int interface_number; - - /** Additional information about the USB interface. - Valid on libusb and Android implementations. */ - int interface_class; - int interface_subclass; - int interface_protocol; - - /** Pointer to the next device */ - struct SDL_hid_device_info *next; -} SDL_hid_device_info; - - -/** - * Initialize the HIDAPI library. - * - * This function initializes the HIDAPI library. Calling it is not strictly - * necessary, as it will be called automatically by SDL_hid_enumerate() and - * any of the SDL_hid_open_*() functions if it is needed. This function should - * be called at the beginning of execution however, if there is a chance of - * HIDAPI handles being opened by different threads simultaneously. - * - * Each call to this function should have a matching call to SDL_hid_exit() - * - * \returns 0 on success and -1 on error. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_hid_exit - */ -extern DECLSPEC int SDLCALL SDL_hid_init(void); - -/** - * Finalize the HIDAPI library. - * - * This function frees all of the static data associated with HIDAPI. It - * should be called at the end of execution to avoid memory leaks. - * - * \returns 0 on success and -1 on error. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_hid_init - */ -extern DECLSPEC int SDLCALL SDL_hid_exit(void); - -/** - * Check to see if devices may have been added or removed. - * - * Enumerating the HID devices is an expensive operation, so you can call this - * to see if there have been any system device changes since the last call to - * this function. A change in the counter returned doesn't necessarily mean - * that anything has changed, but you can call SDL_hid_enumerate() to get an - * updated device list. - * - * Calling this function for the first time may cause a thread or other system - * resource to be allocated to track device change notifications. - * - * \returns a change counter that is incremented with each potential device - * change, or 0 if device change detection isn't available. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_hid_enumerate - */ -extern DECLSPEC Uint32 SDLCALL SDL_hid_device_change_count(void); - -/** - * Enumerate the HID Devices. - * - * This function returns a linked list of all the HID devices attached to the - * system which match vendor_id and product_id. If `vendor_id` is set to 0 - * then any vendor matches. If `product_id` is set to 0 then any product - * matches. If `vendor_id` and `product_id` are both set to 0, then all HID - * devices will be returned. - * - * \param vendor_id The Vendor ID (VID) of the types of device to open. - * \param product_id The Product ID (PID) of the types of device to open. - * \returns a pointer to a linked list of type SDL_hid_device_info, containing - * information about the HID devices attached to the system, or NULL - * in the case of failure. Free this linked list by calling - * SDL_hid_free_enumeration(). - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_hid_device_change_count - */ -extern DECLSPEC SDL_hid_device_info * SDLCALL SDL_hid_enumerate(unsigned short vendor_id, unsigned short product_id); - -/** - * Free an enumeration Linked List - * - * This function frees a linked list created by SDL_hid_enumerate(). - * - * \param devs Pointer to a list of struct_device returned from - * SDL_hid_enumerate(). - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC void SDLCALL SDL_hid_free_enumeration(SDL_hid_device_info *devs); - -/** - * Open a HID device using a Vendor ID (VID), Product ID (PID) and optionally - * a serial number. - * - * If `serial_number` is NULL, the first device with the specified VID and PID - * is opened. - * - * \param vendor_id The Vendor ID (VID) of the device to open. - * \param product_id The Product ID (PID) of the device to open. - * \param serial_number The Serial Number of the device to open (Optionally - * NULL). - * \returns a pointer to a SDL_hid_device object on success or NULL on - * failure. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC SDL_hid_device * SDLCALL SDL_hid_open(unsigned short vendor_id, unsigned short product_id, const wchar_t *serial_number); - -/** - * Open a HID device by its path name. - * - * The path name be determined by calling SDL_hid_enumerate(), or a - * platform-specific path name can be used (eg: /dev/hidraw0 on Linux). - * - * \param path The path name of the device to open - * \returns a pointer to a SDL_hid_device object on success or NULL on - * failure. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC SDL_hid_device * SDLCALL SDL_hid_open_path(const char *path, int bExclusive /* = false */); - -/** - * Write an Output report to a HID device. - * - * The first byte of `data` must contain the Report ID. For devices which only - * support a single report, this must be set to 0x0. The remaining bytes - * contain the report data. Since the Report ID is mandatory, calls to - * SDL_hid_write() will always contain one more byte than the report contains. - * For example, if a hid report is 16 bytes long, 17 bytes must be passed to - * SDL_hid_write(), the Report ID (or 0x0, for devices with a single report), - * followed by the report data (16 bytes). In this example, the length passed - * in would be 17. - * - * SDL_hid_write() will send the data on the first OUT endpoint, if one - * exists. If it does not, it will send the data through the Control Endpoint - * (Endpoint 0). - * - * \param dev A device handle returned from SDL_hid_open(). - * \param data The data to send, including the report number as the first - * byte. - * \param length The length in bytes of the data to send. - * \returns the actual number of bytes written and -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_write(SDL_hid_device *dev, const unsigned char *data, size_t length); - -/** - * Read an Input report from a HID device with timeout. - * - * Input reports are returned to the host through the INTERRUPT IN endpoint. - * The first byte will contain the Report number if the device uses numbered - * reports. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param data A buffer to put the read data into. - * \param length The number of bytes to read. For devices with multiple - * reports, make sure to read an extra byte for the report - * number. - * \param milliseconds timeout in milliseconds or -1 for blocking wait. - * \returns the actual number of bytes read and -1 on error. If no packet was - * available to be read within the timeout period, this function - * returns 0. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_read_timeout(SDL_hid_device *dev, unsigned char *data, size_t length, int milliseconds); - -/** - * Read an Input report from a HID device. - * - * Input reports are returned to the host through the INTERRUPT IN endpoint. - * The first byte will contain the Report number if the device uses numbered - * reports. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param data A buffer to put the read data into. - * \param length The number of bytes to read. For devices with multiple - * reports, make sure to read an extra byte for the report - * number. - * \returns the actual number of bytes read and -1 on error. If no packet was - * available to be read and the handle is in non-blocking mode, this - * function returns 0. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_read(SDL_hid_device *dev, unsigned char *data, size_t length); - -/** - * Set the device handle to be non-blocking. - * - * In non-blocking mode calls to SDL_hid_read() will return immediately with a - * value of 0 if there is no data to be read. In blocking mode, SDL_hid_read() - * will wait (block) until there is data to read before returning. - * - * Nonblocking can be turned on and off at any time. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param nonblock enable or not the nonblocking reads - 1 to enable - * nonblocking - 0 to disable nonblocking. - * \returns 0 on success and -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_set_nonblocking(SDL_hid_device *dev, int nonblock); - -/** - * Send a Feature report to the device. - * - * Feature reports are sent over the Control endpoint as a Set_Report - * transfer. The first byte of `data` must contain the Report ID. For devices - * which only support a single report, this must be set to 0x0. The remaining - * bytes contain the report data. Since the Report ID is mandatory, calls to - * SDL_hid_send_feature_report() will always contain one more byte than the - * report contains. For example, if a hid report is 16 bytes long, 17 bytes - * must be passed to SDL_hid_send_feature_report(): the Report ID (or 0x0, for - * devices which do not use numbered reports), followed by the report data (16 - * bytes). In this example, the length passed in would be 17. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param data The data to send, including the report number as the first - * byte. - * \param length The length in bytes of the data to send, including the report - * number. - * \returns the actual number of bytes written and -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_send_feature_report(SDL_hid_device *dev, const unsigned char *data, size_t length); - -/** - * Get a feature report from a HID device. - * - * Set the first byte of `data` to the Report ID of the report to be read. - * Make sure to allow space for this extra byte in `data`. Upon return, the - * first byte will still contain the Report ID, and the report data will start - * in data[1]. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param data A buffer to put the read data into, including the Report ID. - * Set the first byte of `data` to the Report ID of the report to - * be read, or set it to zero if your device does not use numbered - * reports. - * \param length The number of bytes to read, including an extra byte for the - * report ID. The buffer can be longer than the actual report. - * \returns the number of bytes read plus one for the report ID (which is - * still in the first byte), or -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_get_feature_report(SDL_hid_device *dev, unsigned char *data, size_t length); - -/** - * Close a HID device. - * - * \param dev A device handle returned from SDL_hid_open(). - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC void SDLCALL SDL_hid_close(SDL_hid_device *dev); - -/** - * Get The Manufacturer String from a HID device. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param string A wide string buffer to put the data into. - * \param maxlen The length of the buffer in multiples of wchar_t. - * \returns 0 on success and -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_get_manufacturer_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen); - -/** - * Get The Product String from a HID device. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param string A wide string buffer to put the data into. - * \param maxlen The length of the buffer in multiples of wchar_t. - * \returns 0 on success and -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_get_product_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen); - -/** - * Get The Serial Number String from a HID device. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param string A wide string buffer to put the data into. - * \param maxlen The length of the buffer in multiples of wchar_t. - * \returns 0 on success and -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_get_serial_number_string(SDL_hid_device *dev, wchar_t *string, size_t maxlen); - -/** - * Get a string from a HID device, based on its string index. - * - * \param dev A device handle returned from SDL_hid_open(). - * \param string_index The index of the string to get. - * \param string A wide string buffer to put the data into. - * \param maxlen The length of the buffer in multiples of wchar_t. - * \returns 0 on success and -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_hid_get_indexed_string(SDL_hid_device *dev, int string_index, wchar_t *string, size_t maxlen); - -/** - * Start or stop a BLE scan on iOS and tvOS to pair Steam Controllers - * - * \param active SDL_TRUE to start the scan, SDL_FALSE to stop the scan - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC void SDLCALL SDL_hid_ble_scan(SDL_bool active); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_hidapi_h_ */ - -/* vi: set sts=4 ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hidapi.h.blob deleted file mode 100644 index 35884d7dd58fb32917fae3830a709e2e2c44a0d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31535 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 F{XcrJ)sg@J diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h deleted file mode 100644 index 00beef51..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h +++ /dev/null @@ -1,2624 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_hints.h - * - * Official documentation for SDL configuration variables - * - * This file contains functions to set and get configuration hints, - * as well as listing each of them alphabetically. - * - * The convention for naming hints is SDL_HINT_X, where "SDL_X" is - * the environment variable that can be used to override the default. - * - * In general these hints are just that - they may or may not be - * supported or applicable on any given platform, but they provide - * a way for an application or user to give the library a hint as - * to how they would like the library to work. - */ - -#ifndef SDL_hints_h_ -#define SDL_hints_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \brief A variable controlling whether the Android / iOS built-in - * accelerometer should be listed as a joystick device. - * - * This variable can be set to the following values: - * "0" - The accelerometer is not listed as a joystick - * "1" - The accelerometer is available as a 3 axis joystick (the default). - */ -#define SDL_HINT_ACCELEROMETER_AS_JOYSTICK "SDL_ACCELEROMETER_AS_JOYSTICK" - -/** - * \brief Specify the behavior of Alt+Tab while the keyboard is grabbed. - * - * By default, SDL emulates Alt+Tab functionality while the keyboard is grabbed - * and your window is full-screen. This prevents the user from getting stuck in - * your application if you've enabled keyboard grab. - * - * The variable can be set to the following values: - * "0" - SDL will not handle Alt+Tab. Your application is responsible - for handling Alt+Tab while the keyboard is grabbed. - * "1" - SDL will minimize your window when Alt+Tab is pressed (default) -*/ -#define SDL_HINT_ALLOW_ALT_TAB_WHILE_GRABBED "SDL_ALLOW_ALT_TAB_WHILE_GRABBED" - -/** - * \brief If set to "0" then never set the top most bit on a SDL Window, even if the video mode expects it. - * This is a debugging aid for developers and not expected to be used by end users. The default is "1" - * - * This variable can be set to the following values: - * "0" - don't allow topmost - * "1" - allow topmost - */ -#define SDL_HINT_ALLOW_TOPMOST "SDL_ALLOW_TOPMOST" - -/** - * \brief Android APK expansion main file version. Should be a string number like "1", "2" etc. - * - * Must be set together with SDL_HINT_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION. - * - * If both hints were set then SDL_RWFromFile() will look into expansion files - * after a given relative path was not found in the internal storage and assets. - * - * By default this hint is not set and the APK expansion files are not searched. - */ -#define SDL_HINT_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION "SDL_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION" - -/** - * \brief Android APK expansion patch file version. Should be a string number like "1", "2" etc. - * - * Must be set together with SDL_HINT_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION. - * - * If both hints were set then SDL_RWFromFile() will look into expansion files - * after a given relative path was not found in the internal storage and assets. - * - * By default this hint is not set and the APK expansion files are not searched. - */ -#define SDL_HINT_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION "SDL_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION" - -/** - * \brief A variable to control whether the event loop will block itself when the app is paused. - * - * The variable can be set to the following values: - * "0" - Non blocking. - * "1" - Blocking. (default) - * - * The value should be set before SDL is initialized. - */ -#define SDL_HINT_ANDROID_BLOCK_ON_PAUSE "SDL_ANDROID_BLOCK_ON_PAUSE" - -/** - * \brief A variable to control whether SDL will pause audio in background - * (Requires SDL_ANDROID_BLOCK_ON_PAUSE as "Non blocking") - * - * The variable can be set to the following values: - * "0" - Non paused. - * "1" - Paused. (default) - * - * The value should be set before SDL is initialized. - */ -#define SDL_HINT_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO "SDL_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO" - -/** - * \brief A variable to control whether we trap the Android back button to handle it manually. - * This is necessary for the right mouse button to work on some Android devices, or - * to be able to trap the back button for use in your code reliably. If set to true, - * the back button will show up as an SDL_KEYDOWN / SDL_KEYUP pair with a keycode of - * SDL_SCANCODE_AC_BACK. - * - * The variable can be set to the following values: - * "0" - Back button will be handled as usual for system. (default) - * "1" - Back button will be trapped, allowing you to handle the key press - * manually. (This will also let right mouse click work on systems - * where the right mouse button functions as back.) - * - * The value of this hint is used at runtime, so it can be changed at any time. - */ -#define SDL_HINT_ANDROID_TRAP_BACK_BUTTON "SDL_ANDROID_TRAP_BACK_BUTTON" - -/** - * \brief Specify an application name. - * - * This hint lets you specify the application name sent to the OS when - * required. For example, this will often appear in volume control applets for - * audio streams, and in lists of applications which are inhibiting the - * screensaver. You should use a string that describes your program ("My Game - * 2: The Revenge") - * - * Setting this to "" or leaving it unset will have SDL use a reasonable - * default: probably the application's name or "SDL Application" if SDL - * doesn't have any better information. - * - * Note that, for audio streams, this can be overridden with - * SDL_HINT_AUDIO_DEVICE_APP_NAME. - * - * On targets where this is not supported, this hint does nothing. - */ -#define SDL_HINT_APP_NAME "SDL_APP_NAME" - -/** - * \brief A variable controlling whether controllers used with the Apple TV - * generate UI events. - * - * When UI events are generated by controller input, the app will be - * backgrounded when the Apple TV remote's menu button is pressed, and when the - * pause or B buttons on gamepads are pressed. - * - * More information about properly making use of controllers for the Apple TV - * can be found here: - * https://developer.apple.com/tvos/human-interface-guidelines/remote-and-controllers/ - * - * This variable can be set to the following values: - * "0" - Controller input does not generate UI events (the default). - * "1" - Controller input generates UI events. - */ -#define SDL_HINT_APPLE_TV_CONTROLLER_UI_EVENTS "SDL_APPLE_TV_CONTROLLER_UI_EVENTS" - -/** - * \brief A variable controlling whether the Apple TV remote's joystick axes - * will automatically match the rotation of the remote. - * - * This variable can be set to the following values: - * "0" - Remote orientation does not affect joystick axes (the default). - * "1" - Joystick axes are based on the orientation of the remote. - */ -#define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION" - -/** - * \brief A variable controlling the audio category on iOS and Mac OS X - * - * This variable can be set to the following values: - * - * "ambient" - Use the AVAudioSessionCategoryAmbient audio category, will be muted by the phone mute switch (default) - * "playback" - Use the AVAudioSessionCategoryPlayback category - * - * For more information, see Apple's documentation: - * https://developer.apple.com/library/content/documentation/Audio/Conceptual/AudioSessionProgrammingGuide/AudioSessionCategoriesandModes/AudioSessionCategoriesandModes.html - */ -#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" - -/** - * \brief Specify an application name for an audio device. - * - * Some audio backends (such as PulseAudio) allow you to describe your audio - * stream. Among other things, this description might show up in a system - * control panel that lets the user adjust the volume on specific audio - * streams instead of using one giant master volume slider. - * - * This hints lets you transmit that information to the OS. The contents of - * this hint are used while opening an audio device. You should use a string - * that describes your program ("My Game 2: The Revenge") - * - * Setting this to "" or leaving it unset will have SDL use a reasonable - * default: this will be the name set with SDL_HINT_APP_NAME, if that hint is - * set. Otherwise, it'll probably the application's name or "SDL Application" - * if SDL doesn't have any better information. - * - * On targets where this is not supported, this hint does nothing. - */ -#define SDL_HINT_AUDIO_DEVICE_APP_NAME "SDL_AUDIO_DEVICE_APP_NAME" - -/** - * \brief Specify an application name for an audio device. - * - * Some audio backends (such as PulseAudio) allow you to describe your audio - * stream. Among other things, this description might show up in a system - * control panel that lets the user adjust the volume on specific audio - * streams instead of using one giant master volume slider. - * - * This hints lets you transmit that information to the OS. The contents of - * this hint are used while opening an audio device. You should use a string - * that describes your what your program is playing ("audio stream" is - * probably sufficient in many cases, but this could be useful for something - * like "team chat" if you have a headset playing VoIP audio separately). - * - * Setting this to "" or leaving it unset will have SDL use a reasonable - * default: "audio stream" or something similar. - * - * On targets where this is not supported, this hint does nothing. - */ -#define SDL_HINT_AUDIO_DEVICE_STREAM_NAME "SDL_AUDIO_DEVICE_STREAM_NAME" - -/** - * \brief Specify an application role for an audio device. - * - * Some audio backends (such as Pipewire) allow you to describe the role of - * your audio stream. Among other things, this description might show up in - * a system control panel or software for displaying and manipulating media - * playback/capture graphs. - * - * This hints lets you transmit that information to the OS. The contents of - * this hint are used while opening an audio device. You should use a string - * that describes your what your program is playing (Game, Music, Movie, - * etc...). - * - * Setting this to "" or leaving it unset will have SDL use a reasonable - * default: "Game" or something similar. - * - * On targets where this is not supported, this hint does nothing. - */ -#define SDL_HINT_AUDIO_DEVICE_STREAM_ROLE "SDL_AUDIO_DEVICE_STREAM_ROLE" - -/** - * \brief A variable controlling speed/quality tradeoff of audio resampling. - * - * If available, SDL can use libsamplerate ( http://www.mega-nerd.com/SRC/ ) - * to handle audio resampling. There are different resampling modes available - * that produce different levels of quality, using more CPU. - * - * If this hint isn't specified to a valid setting, or libsamplerate isn't - * available, SDL will use the default, internal resampling algorithm. - * - * As of SDL 2.26, SDL_ConvertAudio() respects this hint when libsamplerate is available. - * - * This hint is currently only checked at audio subsystem initialization. - * - * This variable can be set to the following values: - * - * "0" or "default" - Use SDL's internal resampling (Default when not set - low quality, fast) - * "1" or "fast" - Use fast, slightly higher quality resampling, if available - * "2" or "medium" - Use medium quality resampling, if available - * "3" or "best" - Use high quality resampling, if available - */ -#define SDL_HINT_AUDIO_RESAMPLING_MODE "SDL_AUDIO_RESAMPLING_MODE" - -/** - * \brief A variable controlling whether SDL updates joystick state when getting input events - * - * This variable can be set to the following values: - * - * "0" - You'll call SDL_JoystickUpdate() manually - * "1" - SDL will automatically call SDL_JoystickUpdate() (default) - * - * This hint can be toggled on and off at runtime. - */ -#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" - -/** - * \brief A variable controlling whether SDL updates sensor state when getting input events - * - * This variable can be set to the following values: - * - * "0" - You'll call SDL_SensorUpdate() manually - * "1" - SDL will automatically call SDL_SensorUpdate() (default) - * - * This hint can be toggled on and off at runtime. - */ -#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" - -/** - * \brief Prevent SDL from using version 4 of the bitmap header when saving BMPs. - * - * The bitmap header version 4 is required for proper alpha channel support and - * SDL will use it when required. Should this not be desired, this hint can - * force the use of the 40 byte header version which is supported everywhere. - * - * The variable can be set to the following values: - * "0" - Surfaces with a colorkey or an alpha channel are saved to a - * 32-bit BMP file with an alpha mask. SDL will use the bitmap - * header version 4 and set the alpha mask accordingly. - * "1" - Surfaces with a colorkey or an alpha channel are saved to a - * 32-bit BMP file without an alpha mask. The alpha channel data - * will be in the file, but applications are going to ignore it. - * - * The default value is "0". - */ -#define SDL_HINT_BMP_SAVE_LEGACY_FORMAT "SDL_BMP_SAVE_LEGACY_FORMAT" - -/** - * \brief Override for SDL_GetDisplayUsableBounds() - * - * If set, this hint will override the expected results for - * SDL_GetDisplayUsableBounds() for display index 0. Generally you don't want - * to do this, but this allows an embedded system to request that some of the - * screen be reserved for other uses when paired with a well-behaved - * application. - * - * The contents of this hint must be 4 comma-separated integers, the first - * is the bounds x, then y, width and height, in that order. - */ -#define SDL_HINT_DISPLAY_USABLE_BOUNDS "SDL_DISPLAY_USABLE_BOUNDS" - -/** - * \brief Disable giving back control to the browser automatically - * when running with asyncify - * - * With -s ASYNCIFY, SDL2 calls emscripten_sleep during operations - * such as refreshing the screen or polling events. - * - * This hint only applies to the emscripten platform - * - * The variable can be set to the following values: - * "0" - Disable emscripten_sleep calls (if you give back browser control manually or use asyncify for other purposes) - * "1" - Enable emscripten_sleep calls (the default) - */ -#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" - -/** - * \brief override the binding element for keyboard inputs for Emscripten builds - * - * This hint only applies to the emscripten platform - * - * The variable can be one of - * "#window" - The javascript window object (this is the default) - * "#document" - The javascript document object - * "#screen" - the javascript window.screen object - * "#canvas" - the WebGL canvas element - * any other string without a leading # sign applies to the element on the page with that ID. - */ -#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" - -/** - * \brief A variable that controls whether the on-screen keyboard should be shown when text input is active - * - * The variable can be set to the following values: - * "0" - Do not show the on-screen keyboard - * "1" - Show the on-screen keyboard - * - * The default value is "1". This hint must be set before text input is activated. - */ -#define SDL_HINT_ENABLE_SCREEN_KEYBOARD "SDL_ENABLE_SCREEN_KEYBOARD" - -/** - * \brief A variable that controls whether Steam Controllers should be exposed using the SDL joystick and game controller APIs - * - * The variable can be set to the following values: - * "0" - Do not scan for Steam Controllers - * "1" - Scan for Steam Controllers (the default) - * - * The default value is "1". This hint must be set before initializing the joystick subsystem. - */ -#define SDL_HINT_ENABLE_STEAM_CONTROLLERS "SDL_ENABLE_STEAM_CONTROLLERS" - -/** - * \brief A variable controlling verbosity of the logging of SDL events pushed onto the internal queue. - * - * This variable can be set to the following values, from least to most verbose: - * - * "0" - Don't log any events (default) - * "1" - Log most events (other than the really spammy ones). - * "2" - Include mouse and finger motion events. - * "3" - Include SDL_SysWMEvent events. - * - * This is generally meant to be used to debug SDL itself, but can be useful - * for application developers that need better visibility into what is going - * on in the event queue. Logged events are sent through SDL_Log(), which - * means by default they appear on stdout on most platforms or maybe - * OutputDebugString() on Windows, and can be funneled by the app with - * SDL_LogSetOutputFunction(), etc. - * - * This hint can be toggled on and off at runtime, if you only need to log - * events for a small subset of program execution. - */ -#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" - -/** - * \brief A variable controlling whether raising the window should be done more forcefully - * - * This variable can be set to the following values: - * "0" - No forcing (the default) - * "1" - Extra level of forcing - * - * At present, this is only an issue under MS Windows, which makes it nearly impossible to - * programmatically move a window to the foreground, for "security" reasons. See - * http://stackoverflow.com/a/34414846 for a discussion. - */ -#define SDL_HINT_FORCE_RAISEWINDOW "SDL_HINT_FORCE_RAISEWINDOW" - -/** - * \brief A variable controlling how 3D acceleration is used to accelerate the SDL screen surface. - * - * SDL can try to accelerate the SDL screen surface by using streaming - * textures with a 3D rendering engine. This variable controls whether and - * how this is done. - * - * This variable can be set to the following values: - * "0" - Disable 3D acceleration - * "1" - Enable 3D acceleration, using the default renderer. - * "X" - Enable 3D acceleration, using X where X is one of the valid rendering drivers. (e.g. "direct3d", "opengl", etc.) - * - * By default SDL tries to make a best guess for each platform whether - * to use acceleration or not. - */ -#define SDL_HINT_FRAMEBUFFER_ACCELERATION "SDL_FRAMEBUFFER_ACCELERATION" - -/** - * \brief A variable that lets you manually hint extra gamecontroller db entries. - * - * The variable should be newline delimited rows of gamecontroller config data, see SDL_gamecontroller.h - * - * This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) - * You can update mappings after the system is initialized with SDL_GameControllerMappingForGUID() and SDL_GameControllerAddMapping() - */ -#define SDL_HINT_GAMECONTROLLERCONFIG "SDL_GAMECONTROLLERCONFIG" - -/** - * \brief A variable that lets you provide a file with extra gamecontroller db entries. - * - * The file should contain lines of gamecontroller config data, see SDL_gamecontroller.h - * - * This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) - * You can update mappings after the system is initialized with SDL_GameControllerMappingForGUID() and SDL_GameControllerAddMapping() - */ -#define SDL_HINT_GAMECONTROLLERCONFIG_FILE "SDL_GAMECONTROLLERCONFIG_FILE" - -/** - * \brief A variable that overrides the automatic controller type detection - * - * The variable should be comma separated entries, in the form: VID/PID=type - * - * The VID and PID should be hexadecimal with exactly 4 digits, e.g. 0x00fd - * - * The type should be one of: - * Xbox360 - * XboxOne - * PS3 - * PS4 - * PS5 - * SwitchPro - * - * This hint affects what driver is used, and must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) - */ -#define SDL_HINT_GAMECONTROLLERTYPE "SDL_GAMECONTROLLERTYPE" - -/** - * \brief A variable containing a list of devices to skip when scanning for game controllers. - * - * The format of the string is a comma separated list of USB VID/PID pairs - * in hexadecimal form, e.g. - * - * 0xAAAA/0xBBBB,0xCCCC/0xDDDD - * - * The variable can also take the form of @file, in which case the named - * file will be loaded and interpreted as the value of the variable. - */ -#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES "SDL_GAMECONTROLLER_IGNORE_DEVICES" - -/** - * \brief If set, all devices will be skipped when scanning for game controllers except for the ones listed in this variable. - * - * The format of the string is a comma separated list of USB VID/PID pairs - * in hexadecimal form, e.g. - * - * 0xAAAA/0xBBBB,0xCCCC/0xDDDD - * - * The variable can also take the form of @file, in which case the named - * file will be loaded and interpreted as the value of the variable. - */ -#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT" - -/** - * \brief If set, game controller face buttons report their values according to their labels instead of their positional layout. - * - * For example, on Nintendo Switch controllers, normally you'd get: - * - * (Y) - * (X) (B) - * (A) - * - * but if this hint is set, you'll get: - * - * (X) - * (Y) (A) - * (B) - * - * The variable can be set to the following values: - * "0" - Report the face buttons by position, as though they were on an Xbox controller. - * "1" - Report the face buttons by label instead of position - * - * The default value is "1". This hint may be set at any time. - */ -#define SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS "SDL_GAMECONTROLLER_USE_BUTTON_LABELS" - -/** - * \brief A variable controlling whether grabbing input grabs the keyboard - * - * This variable can be set to the following values: - * "0" - Grab will affect only the mouse - * "1" - Grab will affect mouse and keyboard - * - * By default SDL will not grab the keyboard so system shortcuts still work. - */ -#define SDL_HINT_GRAB_KEYBOARD "SDL_GRAB_KEYBOARD" - -/** - * \brief A variable containing a list of devices to ignore in SDL_hid_enumerate() - * - * For example, to ignore the Shanwan DS3 controller and any Valve controller, you might - * have the string "0x2563/0x0523,0x28de/0x0000" - */ -#define SDL_HINT_HIDAPI_IGNORE_DEVICES "SDL_HIDAPI_IGNORE_DEVICES" - -/** - * \brief A variable controlling whether the idle timer is disabled on iOS. - * - * When an iOS app does not receive touches for some time, the screen is - * dimmed automatically. For games where the accelerometer is the only input - * this is problematic. This functionality can be disabled by setting this - * hint. - * - * As of SDL 2.0.4, SDL_EnableScreenSaver() and SDL_DisableScreenSaver() - * accomplish the same thing on iOS. They should be preferred over this hint. - * - * This variable can be set to the following values: - * "0" - Enable idle timer - * "1" - Disable idle timer - */ -#define SDL_HINT_IDLE_TIMER_DISABLED "SDL_IOS_IDLE_TIMER_DISABLED" - -/** - * \brief A variable to control whether certain IMEs should handle text editing internally instead of sending SDL_TEXTEDITING events. - * - * The variable can be set to the following values: - * "0" - SDL_TEXTEDITING events are sent, and it is the application's - * responsibility to render the text from these events and - * differentiate it somehow from committed text. (default) - * "1" - If supported by the IME then SDL_TEXTEDITING events are not sent, - * and text that is being composed will be rendered in its own UI. - */ -#define SDL_HINT_IME_INTERNAL_EDITING "SDL_IME_INTERNAL_EDITING" - -/** - * \brief A variable to control whether certain IMEs should show native UI components (such as the Candidate List) instead of suppressing them. - * - * The variable can be set to the following values: - * "0" - Native UI components are not display. (default) - * "1" - Native UI components are displayed. - */ -#define SDL_HINT_IME_SHOW_UI "SDL_IME_SHOW_UI" - -/** - * \brief A variable to control if extended IME text support is enabled. - * If enabled then SDL_TextEditingExtEvent will be issued if the text would be truncated otherwise. - * Additionally SDL_TextInputEvent will be dispatched multiple times so that it is not truncated. - * - * The variable can be set to the following values: - * "0" - Legacy behavior. Text can be truncated, no heap allocations. (default) - * "1" - Modern behavior. - */ -#define SDL_HINT_IME_SUPPORT_EXTENDED_TEXT "SDL_IME_SUPPORT_EXTENDED_TEXT" - -/** - * \brief A variable controlling whether the home indicator bar on iPhone X - * should be hidden. - * - * This variable can be set to the following values: - * "0" - The indicator bar is not hidden (default for windowed applications) - * "1" - The indicator bar is hidden and is shown when the screen is touched (useful for movie playback applications) - * "2" - The indicator bar is dim and the first swipe makes it visible and the second swipe performs the "home" action (default for fullscreen applications) - */ -#define SDL_HINT_IOS_HIDE_HOME_INDICATOR "SDL_IOS_HIDE_HOME_INDICATOR" - -/** - * \brief A variable that lets you enable joystick (and gamecontroller) events even when your app is in the background. - * - * The variable can be set to the following values: - * "0" - Disable joystick & gamecontroller input events when the - * application is in the background. - * "1" - Enable joystick & gamecontroller input events when the - * application is in the background. - * - * The default value is "0". This hint may be set at any time. - */ -#define SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS "SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS" - -/** - * \brief A variable controlling whether the HIDAPI joystick drivers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI drivers are not used - * "1" - HIDAPI drivers are used (the default) - * - * This variable is the default for all drivers, but can be overridden by the hints for specific drivers below. - */ -#define SDL_HINT_JOYSTICK_HIDAPI "SDL_JOYSTICK_HIDAPI" - -/** - * \brief A variable controlling whether the HIDAPI driver for Nintendo GameCube controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_GAMECUBE "SDL_JOYSTICK_HIDAPI_GAMECUBE" - -/** - * \brief A variable controlling whether "low_frequency_rumble" and "high_frequency_rumble" is used to implement - * the GameCube controller's 3 rumble modes, Stop(0), Rumble(1), and StopHard(2) - * this is useful for applications that need full compatibility for things like ADSR envelopes. - * Stop is implemented by setting "low_frequency_rumble" to "0" and "high_frequency_rumble" ">0" - * Rumble is both at any arbitrary value, - * StopHard is implemented by setting both "low_frequency_rumble" and "high_frequency_rumble" to "0" - * - * This variable can be set to the following values: - * "0" - Normal rumble behavior is behavior is used (default) - * "1" - Proper GameCube controller rumble behavior is used - * - */ -#define SDL_HINT_JOYSTICK_GAMECUBE_RUMBLE_BRAKE "SDL_JOYSTICK_GAMECUBE_RUMBLE_BRAKE" - -/** - * \brief A variable controlling whether the HIDAPI driver for Nintendo Switch Joy-Cons should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_JOY_CONS "SDL_JOYSTICK_HIDAPI_JOY_CONS" - -/** - * \brief A variable controlling whether Nintendo Switch Joy-Con controllers will be combined into a single Pro-like controller when using the HIDAPI driver - * - * This variable can be set to the following values: - * "0" - Left and right Joy-Con controllers will not be combined and each will be a mini-gamepad - * "1" - Left and right Joy-Con controllers will be combined into a single controller (the default) - */ -#define SDL_HINT_JOYSTICK_HIDAPI_COMBINE_JOY_CONS "SDL_JOYSTICK_HIDAPI_COMBINE_JOY_CONS" - -/** - * \brief A variable controlling whether Nintendo Switch Joy-Con controllers will be in vertical mode when using the HIDAPI driver - * - * This variable can be set to the following values: - * "0" - Left and right Joy-Con controllers will not be in vertical mode (the default) - * "1" - Left and right Joy-Con controllers will be in vertical mode - * - * This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) - */ -#define SDL_HINT_JOYSTICK_HIDAPI_VERTICAL_JOY_CONS "SDL_JOYSTICK_HIDAPI_VERTICAL_JOY_CONS" - -/** - * \brief A variable controlling whether the HIDAPI driver for Amazon Luna controllers connected via Bluetooth should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_LUNA "SDL_JOYSTICK_HIDAPI_LUNA" - -/** - * \brief A variable controlling whether the HIDAPI driver for Nintendo Online classic controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_NINTENDO_CLASSIC "SDL_JOYSTICK_HIDAPI_NINTENDO_CLASSIC" - -/** - * \brief A variable controlling whether the HIDAPI driver for NVIDIA SHIELD controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_SHIELD "SDL_JOYSTICK_HIDAPI_SHIELD" - -/** - * \brief A variable controlling whether the HIDAPI driver for PS3 controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI on macOS, and "0" on other platforms. - * - * It is not possible to use this driver on Windows, due to limitations in the default drivers - * installed. See https://github.com/ViGEm/DsHidMini for an alternative driver on Windows. - */ -#define SDL_HINT_JOYSTICK_HIDAPI_PS3 "SDL_JOYSTICK_HIDAPI_PS3" - -/** - * \brief A variable controlling whether the HIDAPI driver for PS4 controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_PS4 "SDL_JOYSTICK_HIDAPI_PS4" - -/** - * \brief A variable controlling whether extended input reports should be used for PS4 controllers when using the HIDAPI driver. - * - * This variable can be set to the following values: - * "0" - extended reports are not enabled (the default) - * "1" - extended reports - * - * Extended input reports allow rumble on Bluetooth PS4 controllers, but - * break DirectInput handling for applications that don't use SDL. - * - * Once extended reports are enabled, they can not be disabled without - * power cycling the controller. - * - * For compatibility with applications written for versions of SDL prior - * to the introduction of PS5 controller support, this value will also - * control the state of extended reports on PS5 controllers when the - * SDL_HINT_JOYSTICK_HIDAPI_PS5_RUMBLE hint is not explicitly set. - */ -#define SDL_HINT_JOYSTICK_HIDAPI_PS4_RUMBLE "SDL_JOYSTICK_HIDAPI_PS4_RUMBLE" - -/** - * \brief A variable controlling whether the HIDAPI driver for PS5 controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_PS5 "SDL_JOYSTICK_HIDAPI_PS5" - -/** - * \brief A variable controlling whether the player LEDs should be lit to indicate which player is associated with a PS5 controller. - * - * This variable can be set to the following values: - * "0" - player LEDs are not enabled - * "1" - player LEDs are enabled (the default) - */ -#define SDL_HINT_JOYSTICK_HIDAPI_PS5_PLAYER_LED "SDL_JOYSTICK_HIDAPI_PS5_PLAYER_LED" - -/** - * \brief A variable controlling whether extended input reports should be used for PS5 controllers when using the HIDAPI driver. - * - * This variable can be set to the following values: - * "0" - extended reports are not enabled (the default) - * "1" - extended reports - * - * Extended input reports allow rumble on Bluetooth PS5 controllers, but - * break DirectInput handling for applications that don't use SDL. - * - * Once extended reports are enabled, they can not be disabled without - * power cycling the controller. - * - * For compatibility with applications written for versions of SDL prior - * to the introduction of PS5 controller support, this value defaults to - * the value of SDL_HINT_JOYSTICK_HIDAPI_PS4_RUMBLE. - */ -#define SDL_HINT_JOYSTICK_HIDAPI_PS5_RUMBLE "SDL_JOYSTICK_HIDAPI_PS5_RUMBLE" - -/** - * \brief A variable controlling whether the HIDAPI driver for Google Stadia controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_STADIA "SDL_JOYSTICK_HIDAPI_STADIA" - -/** - * \brief A variable controlling whether the HIDAPI driver for Bluetooth Steam Controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used for Steam Controllers, which requires Bluetooth access - * and may prompt the user for permission on iOS and Android. - * - * The default is "0" - */ -#define SDL_HINT_JOYSTICK_HIDAPI_STEAM "SDL_JOYSTICK_HIDAPI_STEAM" - -/** - * \brief A variable controlling whether the HIDAPI driver for Nintendo Switch controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_SWITCH "SDL_JOYSTICK_HIDAPI_SWITCH" - -/** - * \brief A variable controlling whether the Home button LED should be turned on when a Nintendo Switch Pro controller is opened - * - * This variable can be set to the following values: - * "0" - home button LED is turned off - * "1" - home button LED is turned on - * - * By default the Home button LED state is not changed. This hint can also be set to a floating point value between 0.0 and 1.0 which controls the brightness of the Home button LED. - */ -#define SDL_HINT_JOYSTICK_HIDAPI_SWITCH_HOME_LED "SDL_JOYSTICK_HIDAPI_SWITCH_HOME_LED" - -/** - * \brief A variable controlling whether the Home button LED should be turned on when a Nintendo Switch Joy-Con controller is opened - * - * This variable can be set to the following values: - * "0" - home button LED is turned off - * "1" - home button LED is turned on - * - * By default the Home button LED state is not changed. This hint can also be set to a floating point value between 0.0 and 1.0 which controls the brightness of the Home button LED. - */ -#define SDL_HINT_JOYSTICK_HIDAPI_JOYCON_HOME_LED "SDL_JOYSTICK_HIDAPI_JOYCON_HOME_LED" - -/** - * \brief A variable controlling whether the player LEDs should be lit to indicate which player is associated with a Nintendo Switch controller. - * - * This variable can be set to the following values: - * "0" - player LEDs are not enabled - * "1" - player LEDs are enabled (the default) - */ -#define SDL_HINT_JOYSTICK_HIDAPI_SWITCH_PLAYER_LED "SDL_JOYSTICK_HIDAPI_SWITCH_PLAYER_LED" - -/** - * \brief A variable controlling whether the HIDAPI driver for Nintendo Wii and Wii U controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * This driver doesn't work with the dolphinbar, so the default is SDL_FALSE for now. - */ -#define SDL_HINT_JOYSTICK_HIDAPI_WII "SDL_JOYSTICK_HIDAPI_WII" - -/** - * \brief A variable controlling whether the player LEDs should be lit to indicate which player is associated with a Wii controller. - * - * This variable can be set to the following values: - * "0" - player LEDs are not enabled - * "1" - player LEDs are enabled (the default) - */ -#define SDL_HINT_JOYSTICK_HIDAPI_WII_PLAYER_LED "SDL_JOYSTICK_HIDAPI_WII_PLAYER_LED" - -/** - * \brief A variable controlling whether the HIDAPI driver for XBox controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is "0" on Windows, otherwise the value of SDL_HINT_JOYSTICK_HIDAPI - */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" - -/** - * \brief A variable controlling whether the HIDAPI driver for XBox 360 controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI_XBOX - */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 "SDL_JOYSTICK_HIDAPI_XBOX_360" - -/** - * \brief A variable controlling whether the player LEDs should be lit to indicate which player is associated with an Xbox 360 controller. - * - * This variable can be set to the following values: - * "0" - player LEDs are not enabled - * "1" - player LEDs are enabled (the default) - */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_PLAYER_LED "SDL_JOYSTICK_HIDAPI_XBOX_360_PLAYER_LED" - -/** - * \brief A variable controlling whether the HIDAPI driver for XBox 360 wireless controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 - */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS "SDL_JOYSTICK_HIDAPI_XBOX_360_WIRELESS" - -/** - * \brief A variable controlling whether the HIDAPI driver for XBox One controllers should be used. - * - * This variable can be set to the following values: - * "0" - HIDAPI driver is not used - * "1" - HIDAPI driver is used - * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI_XBOX - */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE "SDL_JOYSTICK_HIDAPI_XBOX_ONE" - -/** - * \brief A variable controlling whether the Home button LED should be turned on when an Xbox One controller is opened - * - * This variable can be set to the following values: - * "0" - home button LED is turned off - * "1" - home button LED is turned on - * - * By default the Home button LED state is not changed. This hint can also be set to a floating point value between 0.0 and 1.0 which controls the brightness of the Home button LED. The default brightness is 0.4. - */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED "SDL_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED" - -/** - * \brief A variable controlling whether the RAWINPUT joystick drivers should be used for better handling XInput-capable devices. - * - * This variable can be set to the following values: - * "0" - RAWINPUT drivers are not used - * "1" - RAWINPUT drivers are used (the default) - */ -#define SDL_HINT_JOYSTICK_RAWINPUT "SDL_JOYSTICK_RAWINPUT" - -/** - * \brief A variable controlling whether the RAWINPUT driver should pull correlated data from XInput. - * - * This variable can be set to the following values: - * "0" - RAWINPUT driver will only use data from raw input APIs - * "1" - RAWINPUT driver will also pull data from XInput, providing - * better trigger axes, guide button presses, and rumble support - * for Xbox controllers - * - * The default is "1". This hint applies to any joysticks opened after setting the hint. - */ -#define SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT" - -/** - * \brief A variable controlling whether the ROG Chakram mice should show up as joysticks - * - * This variable can be set to the following values: - * "0" - ROG Chakram mice do not show up as joysticks (the default) - * "1" - ROG Chakram mice show up as joysticks - */ -#define SDL_HINT_JOYSTICK_ROG_CHAKRAM "SDL_JOYSTICK_ROG_CHAKRAM" - -/** - * \brief A variable controlling whether a separate thread should be used - * for handling joystick detection and raw input messages on Windows - * - * This variable can be set to the following values: - * "0" - A separate thread is not used (the default) - * "1" - A separate thread is used for handling raw input messages - * - */ -#define SDL_HINT_JOYSTICK_THREAD "SDL_JOYSTICK_THREAD" - -/** - * \brief A variable controlling whether Windows.Gaming.Input should be used for controller handling. - * - * This variable can be set to the following values: - * "0" - WGI is not used - * "1" - WGI is used (the default) - */ -#define SDL_HINT_JOYSTICK_WGI "SDL_JOYSTICK_WGI" - -/** - * \brief Determines whether SDL enforces that DRM master is required in order - * to initialize the KMSDRM video backend. - * - * The DRM subsystem has a concept of a "DRM master" which is a DRM client that - * has the ability to set planes, set cursor, etc. When SDL is DRM master, it - * can draw to the screen using the SDL rendering APIs. Without DRM master, SDL - * is still able to process input and query attributes of attached displays, - * but it cannot change display state or draw to the screen directly. - * - * In some cases, it can be useful to have the KMSDRM backend even if it cannot - * be used for rendering. An app may want to use SDL for input processing while - * using another rendering API (such as an MMAL overlay on Raspberry Pi) or - * using its own code to render to DRM overlays that SDL doesn't support. - * - * This hint must be set before initializing the video subsystem. - * - * This variable can be set to the following values: - * "0" - SDL will allow usage of the KMSDRM backend without DRM master - * "1" - SDL Will require DRM master to use the KMSDRM backend (default) - */ -#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER "SDL_KMSDRM_REQUIRE_DRM_MASTER" - -/** - * \brief A comma separated list of devices to open as joysticks - * - * This variable is currently only used by the Linux joystick driver. - */ -#define SDL_HINT_JOYSTICK_DEVICE "SDL_JOYSTICK_DEVICE" - -/** - * \brief A variable controlling whether joysticks on Linux will always treat 'hat' axis inputs (ABS_HAT0X - ABS_HAT3Y) as 8-way digital hats without checking whether they may be analog. - * - * This variable can be set to the following values: - * "0" - Only map hat axis inputs to digital hat outputs if the input axes appear to actually be digital (the default) - * "1" - Always handle the input axes numbered ABS_HAT0X to ABS_HAT3Y as digital hats - */ -#define SDL_HINT_LINUX_DIGITAL_HATS "SDL_LINUX_DIGITAL_HATS" - -/** - * \brief A variable controlling whether digital hats on Linux will apply deadzones to their underlying input axes or use unfiltered values. - * - * This variable can be set to the following values: - * "0" - Return digital hat values based on unfiltered input axis values - * "1" - Return digital hat values with deadzones on the input axes taken into account (the default) - */ -#define SDL_HINT_LINUX_HAT_DEADZONES "SDL_LINUX_HAT_DEADZONES" - -/** - * \brief A variable controlling whether to use the classic /dev/input/js* joystick interface or the newer /dev/input/event* joystick interface on Linux - * - * This variable can be set to the following values: - * "0" - Use /dev/input/event* - * "1" - Use /dev/input/js* - * - * By default the /dev/input/event* interfaces are used - */ -#define SDL_HINT_LINUX_JOYSTICK_CLASSIC "SDL_LINUX_JOYSTICK_CLASSIC" - -/** - * \brief A variable controlling whether joysticks on Linux adhere to their HID-defined deadzones or return unfiltered values. - * - * This variable can be set to the following values: - * "0" - Return unfiltered joystick axis values (the default) - * "1" - Return axis values with deadzones taken into account - */ -#define SDL_HINT_LINUX_JOYSTICK_DEADZONES "SDL_LINUX_JOYSTICK_DEADZONES" - -/** -* \brief When set don't force the SDL app to become a foreground process -* -* This hint only applies to Mac OS X. -* -*/ -#define SDL_HINT_MAC_BACKGROUND_APP "SDL_MAC_BACKGROUND_APP" - -/** - * \brief A variable that determines whether ctrl+click should generate a right-click event on Mac - * - * If present, holding ctrl while left clicking will generate a right click - * event when on Mac. - */ -#define SDL_HINT_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK "SDL_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK" - -/** - * \brief A variable controlling whether dispatching OpenGL context updates should block the dispatching thread until the main thread finishes processing - * - * This variable can be set to the following values: - * "0" - Dispatching OpenGL context updates will block the dispatching thread until the main thread finishes processing (default). - * "1" - Dispatching OpenGL context updates will allow the dispatching thread to continue execution. - * - * Generally you want the default, but if you have OpenGL code in a background thread on a Mac, and the main thread - * hangs because it's waiting for that background thread, but that background thread is also hanging because it's - * waiting for the main thread to do an update, this might fix your issue. - * - * This hint only applies to macOS. - * - * This hint is available since SDL 2.24.0. - * - */ -#define SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH "SDL_MAC_OPENGL_ASYNC_DISPATCH" - -/** - * \brief A variable setting the double click radius, in pixels. - */ -#define SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS "SDL_MOUSE_DOUBLE_CLICK_RADIUS" - -/** - * \brief A variable setting the double click time, in milliseconds. - */ -#define SDL_HINT_MOUSE_DOUBLE_CLICK_TIME "SDL_MOUSE_DOUBLE_CLICK_TIME" - -/** - * \brief Allow mouse click events when clicking to focus an SDL window - * - * This variable can be set to the following values: - * "0" - Ignore mouse clicks that activate a window - * "1" - Generate events for mouse clicks that activate a window - * - * By default SDL will ignore mouse clicks that activate a window - */ -#define SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH "SDL_MOUSE_FOCUS_CLICKTHROUGH" - -/** - * \brief A variable setting the speed scale for mouse motion, in floating point, when the mouse is not in relative mode - */ -#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" - -/** - * \brief A variable controlling whether relative mouse mode constrains the mouse to the center of the window - * - * This variable can be set to the following values: - * "0" - Relative mouse mode constrains the mouse to the window - * "1" - Relative mouse mode constrains the mouse to the center of the window - * - * Constraining to the center of the window works better for FPS games and when the - * application is running over RDP. Constraining to the whole window works better - * for 2D games and increases the chance that the mouse will be in the correct - * position when using high DPI mice. - * - * By default SDL will constrain the mouse to the center of the window - */ -#define SDL_HINT_MOUSE_RELATIVE_MODE_CENTER "SDL_MOUSE_RELATIVE_MODE_CENTER" - -/** - * \brief A variable controlling whether relative mouse mode is implemented using mouse warping - * - * This variable can be set to the following values: - * "0" - Relative mouse mode uses raw input - * "1" - Relative mouse mode uses mouse warping - * - * By default SDL will use raw input for relative mouse mode - */ -#define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" - -/** - * \brief A variable controlling whether relative mouse motion is affected by renderer scaling - * - * This variable can be set to the following values: - * "0" - Relative motion is unaffected by DPI or renderer's logical size - * "1" - Relative motion is scaled according to DPI scaling and logical size - * - * By default relative mouse deltas are affected by DPI and renderer scaling - */ -#define SDL_HINT_MOUSE_RELATIVE_SCALING "SDL_MOUSE_RELATIVE_SCALING" - -/** - * \brief A variable setting the scale for mouse motion, in floating point, when the mouse is in relative mode - */ -#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" - -/** - * \brief A variable controlling whether the system mouse acceleration curve is used for relative mouse motion. - * - * This variable can be set to the following values: - * "0" - Relative mouse motion will be unscaled (the default) - * "1" - Relative mouse motion will be scaled using the system mouse acceleration curve. - * - * If SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE is set, that will override the system speed scale. - */ -#define SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE "SDL_MOUSE_RELATIVE_SYSTEM_SCALE" - -/** - * \brief A variable controlling whether a motion event should be generated for mouse warping in relative mode. - * - * This variable can be set to the following values: - * "0" - Warping the mouse will not generate a motion event in relative mode - * "1" - Warping the mouse will generate a motion event in relative mode - * - * By default warping the mouse will not generate motion events in relative mode. This avoids the application having to filter out large relative motion due to warping. - */ -#define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION "SDL_MOUSE_RELATIVE_WARP_MOTION" - -/** - * \brief A variable controlling whether mouse events should generate synthetic touch events - * - * This variable can be set to the following values: - * "0" - Mouse events will not generate touch events (default for desktop platforms) - * "1" - Mouse events will generate touch events (default for mobile platforms, such as Android and iOS) - */ -#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" - -/** - * \brief A variable controlling whether the mouse is captured while mouse buttons are pressed - * - * This variable can be set to the following values: - * "0" - The mouse is not captured while mouse buttons are pressed - * "1" - The mouse is captured while mouse buttons are pressed - * - * By default the mouse is captured while mouse buttons are pressed so if the mouse is dragged - * outside the window, the application continues to receive mouse events until the button is - * released. - */ -#define SDL_HINT_MOUSE_AUTO_CAPTURE "SDL_MOUSE_AUTO_CAPTURE" - -/** - * \brief Tell SDL not to catch the SIGINT or SIGTERM signals. - * - * This hint only applies to Unix-like platforms, and should set before - * any calls to SDL_Init() - * - * The variable can be set to the following values: - * "0" - SDL will install a SIGINT and SIGTERM handler, and when it - * catches a signal, convert it into an SDL_QUIT event. - * "1" - SDL will not install a signal handler at all. - */ -#define SDL_HINT_NO_SIGNAL_HANDLERS "SDL_NO_SIGNAL_HANDLERS" - -/** - * \brief A variable controlling what driver to use for OpenGL ES contexts. - * - * On some platforms, currently Windows and X11, OpenGL drivers may support - * creating contexts with an OpenGL ES profile. By default SDL uses these - * profiles, when available, otherwise it attempts to load an OpenGL ES - * library, e.g. that provided by the ANGLE project. This variable controls - * whether SDL follows this default behaviour or will always load an - * OpenGL ES library. - * - * Circumstances where this is useful include - * - Testing an app with a particular OpenGL ES implementation, e.g ANGLE, - * or emulator, e.g. those from ARM, Imagination or Qualcomm. - * - Resolving OpenGL ES function addresses at link time by linking with - * the OpenGL ES library instead of querying them at run time with - * SDL_GL_GetProcAddress(). - * - * Caution: for an application to work with the default behaviour across - * different OpenGL drivers it must query the OpenGL ES function - * addresses at run time using SDL_GL_GetProcAddress(). - * - * This variable is ignored on most platforms because OpenGL ES is native - * or not supported. - * - * This variable can be set to the following values: - * "0" - Use ES profile of OpenGL, if available. (Default when not set.) - * "1" - Load OpenGL ES library using the default library names. - * - */ -#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" - -/** - * \brief A variable controlling which orientations are allowed on iOS/Android. - * - * In some circumstances it is necessary to be able to explicitly control - * which UI orientations are allowed. - * - * This variable is a space delimited list of the following values: - * "LandscapeLeft", "LandscapeRight", "Portrait" "PortraitUpsideDown" - */ -#define SDL_HINT_ORIENTATIONS "SDL_IOS_ORIENTATIONS" - -/** - * \brief A variable controlling the use of a sentinel event when polling the event queue - * - * This variable can be set to the following values: - * "0" - Disable poll sentinels - * "1" - Enable poll sentinels - * - * When polling for events, SDL_PumpEvents is used to gather new events from devices. - * If a device keeps producing new events between calls to SDL_PumpEvents, a poll loop will - * become stuck until the new events stop. - * This is most noticeable when moving a high frequency mouse. - * - * By default, poll sentinels are enabled. - */ -#define SDL_HINT_POLL_SENTINEL "SDL_POLL_SENTINEL" - -/** - * \brief Override for SDL_GetPreferredLocales() - * - * If set, this will be favored over anything the OS might report for the - * user's preferred locales. Changing this hint at runtime will not generate - * a SDL_LOCALECHANGED event (but if you can change the hint, you can push - * your own event, if you want). - * - * The format of this hint is a comma-separated list of language and locale, - * combined with an underscore, as is a common format: "en_GB". Locale is - * optional: "en". So you might have a list like this: "en_GB,jp,es_PT" - */ -#define SDL_HINT_PREFERRED_LOCALES "SDL_PREFERRED_LOCALES" - -/** - * \brief A variable describing the content orientation on QtWayland-based platforms. - * - * On QtWayland platforms, windows are rotated client-side to allow for custom - * transitions. In order to correctly position overlays (e.g. volume bar) and - * gestures (e.g. events view, close/minimize gestures), the system needs to - * know in which orientation the application is currently drawing its contents. - * - * This does not cause the window to be rotated or resized, the application - * needs to take care of drawing the content in the right orientation (the - * framebuffer is always in portrait mode). - * - * This variable can be one of the following values: - * "primary" (default), "portrait", "landscape", "inverted-portrait", "inverted-landscape" - * - * Since SDL 2.0.22 this variable accepts a comma-separated list of values above. - */ -#define SDL_HINT_QTWAYLAND_CONTENT_ORIENTATION "SDL_QTWAYLAND_CONTENT_ORIENTATION" - -/** - * \brief Flags to set on QtWayland windows to integrate with the native window manager. - * - * On QtWayland platforms, this hint controls the flags to set on the windows. - * For example, on Sailfish OS "OverridesSystemGestures" disables swipe gestures. - * - * This variable is a space-separated list of the following values (empty = no flags): - * "OverridesSystemGestures", "StaysOnTop", "BypassWindowManager" - */ -#define SDL_HINT_QTWAYLAND_WINDOW_FLAGS "SDL_QTWAYLAND_WINDOW_FLAGS" - -/** - * \brief A variable controlling whether the 2D render API is compatible or efficient. - * - * This variable can be set to the following values: - * - * "0" - Don't use batching to make rendering more efficient. - * "1" - Use batching, but might cause problems if app makes its own direct OpenGL calls. - * - * Up to SDL 2.0.9, the render API would draw immediately when requested. Now - * it batches up draw requests and sends them all to the GPU only when forced - * to (during SDL_RenderPresent, when changing render targets, by updating a - * texture that the batch needs, etc). This is significantly more efficient, - * but it can cause problems for apps that expect to render on top of the - * render API's output. As such, SDL will disable batching if a specific - * render backend is requested (since this might indicate that the app is - * planning to use the underlying graphics API directly). This hint can - * be used to explicitly request batching in this instance. It is a contract - * that you will either never use the underlying graphics API directly, or - * if you do, you will call SDL_RenderFlush() before you do so any current - * batch goes to the GPU before your work begins. Not following this contract - * will result in undefined behavior. - */ -#define SDL_HINT_RENDER_BATCHING "SDL_RENDER_BATCHING" - -/** - * \brief A variable controlling how the 2D render API renders lines - * - * This variable can be set to the following values: - * "0" - Use the default line drawing method (Bresenham's line algorithm as of SDL 2.0.20) - * "1" - Use the driver point API using Bresenham's line algorithm (correct, draws many points) - * "2" - Use the driver line API (occasionally misses line endpoints based on hardware driver quirks, was the default before 2.0.20) - * "3" - Use the driver geometry API (correct, draws thicker diagonal lines) - * - * This variable should be set when the renderer is created. - */ -#define SDL_HINT_RENDER_LINE_METHOD "SDL_RENDER_LINE_METHOD" - -/** - * \brief A variable controlling whether to enable Direct3D 11+'s Debug Layer. - * - * This variable does not have any effect on the Direct3D 9 based renderer. - * - * This variable can be set to the following values: - * "0" - Disable Debug Layer use - * "1" - Enable Debug Layer use - * - * By default, SDL does not use Direct3D Debug Layer. - */ -#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" - -/** - * \brief A variable controlling whether the Direct3D device is initialized for thread-safe operations. - * - * This variable can be set to the following values: - * "0" - Thread-safety is not enabled (faster) - * "1" - Thread-safety is enabled - * - * By default the Direct3D device is created with thread-safety disabled. - */ -#define SDL_HINT_RENDER_DIRECT3D_THREADSAFE "SDL_RENDER_DIRECT3D_THREADSAFE" - -/** - * \brief A variable specifying which render driver to use. - * - * If the application doesn't pick a specific renderer to use, this variable - * specifies the name of the preferred renderer. If the preferred renderer - * can't be initialized, the normal default renderer is used. - * - * This variable is case insensitive and can be set to the following values: - * "direct3d" - * "direct3d11" - * "direct3d12" - * "opengl" - * "opengles2" - * "opengles" - * "metal" - * "software" - * - * The default varies by platform, but it's the first one in the list that - * is available on the current platform. - */ -#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER" - -/** - * \brief A variable controlling the scaling policy for SDL_RenderSetLogicalSize. - * - * This variable can be set to the following values: - * "0" or "letterbox" - Uses letterbox/sidebars to fit the entire rendering on screen - * "1" or "overscan" - Will zoom the rendering so it fills the entire screen, allowing edges to be drawn offscreen - * - * By default letterbox is used - */ -#define SDL_HINT_RENDER_LOGICAL_SIZE_MODE "SDL_RENDER_LOGICAL_SIZE_MODE" - -/** - * \brief A variable controlling whether the OpenGL render driver uses shaders if they are available. - * - * This variable can be set to the following values: - * "0" - Disable shaders - * "1" - Enable shaders - * - * By default shaders are used if OpenGL supports them. - */ -#define SDL_HINT_RENDER_OPENGL_SHADERS "SDL_RENDER_OPENGL_SHADERS" - -/** - * \brief A variable controlling the scaling quality - * - * This variable can be set to the following values: - * "0" or "nearest" - Nearest pixel sampling - * "1" or "linear" - Linear filtering (supported by OpenGL and Direct3D) - * "2" or "best" - Currently this is the same as "linear" - * - * By default nearest pixel sampling is used - */ -#define SDL_HINT_RENDER_SCALE_QUALITY "SDL_RENDER_SCALE_QUALITY" - -/** - * \brief A variable controlling whether updates to the SDL screen surface should be synchronized with the vertical refresh, to avoid tearing. - * - * This variable can be set to the following values: - * "0" - Disable vsync - * "1" - Enable vsync - * - * By default SDL does not sync screen surface updates with vertical refresh. - */ -#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC" - -/** - * \brief A variable controlling whether the Metal render driver select low power device over default one - * - * This variable can be set to the following values: - * "0" - Use the prefered OS device - * "1" - Select a low power one - * - * By default the prefered OS device is used. - */ -#define SDL_HINT_RENDER_METAL_PREFER_LOW_POWER_DEVICE "SDL_RENDER_METAL_PREFER_LOW_POWER_DEVICE" - -/** - * \brief A variable controlling if VSYNC is automatically disable if doesn't reach the enough FPS - * - * This variable can be set to the following values: - * "0" - It will be using VSYNC as defined in the main flag. Default - * "1" - If VSYNC was previously enabled, then it will disable VSYNC if doesn't reach enough speed - * - * By default SDL does not enable the automatic VSYNC - */ -#define SDL_HINT_PS2_DYNAMIC_VSYNC "SDL_PS2_DYNAMIC_VSYNC" - -/** - * \brief A variable to control whether the return key on the soft keyboard - * should hide the soft keyboard on Android and iOS. - * - * The variable can be set to the following values: - * "0" - The return key will be handled as a key event. This is the behaviour of SDL <= 2.0.3. (default) - * "1" - The return key will hide the keyboard. - * - * The value of this hint is used at runtime, so it can be changed at any time. - */ -#define SDL_HINT_RETURN_KEY_HIDES_IME "SDL_RETURN_KEY_HIDES_IME" - -/** - * \brief Tell SDL which Dispmanx layer to use on a Raspberry PI - * - * Also known as Z-order. The variable can take a negative or positive value. - * The default is 10000. - */ -#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" - -/** - * \brief Specify an "activity name" for screensaver inhibition. - * - * Some platforms, notably Linux desktops, list the applications which are - * inhibiting the screensaver or other power-saving features. - * - * This hint lets you specify the "activity name" sent to the OS when - * SDL_DisableScreenSaver() is used (or the screensaver is automatically - * disabled). The contents of this hint are used when the screensaver is - * disabled. You should use a string that describes what your program is doing - * (and, therefore, why the screensaver is disabled). For example, "Playing a - * game" or "Watching a video". - * - * Setting this to "" or leaving it unset will have SDL use a reasonable - * default: "Playing a game" or something similar. - * - * On targets where this is not supported, this hint does nothing. - */ -#define SDL_HINT_SCREENSAVER_INHIBIT_ACTIVITY_NAME "SDL_SCREENSAVER_INHIBIT_ACTIVITY_NAME" - -/** - * \brief Specifies whether SDL_THREAD_PRIORITY_TIME_CRITICAL should be treated as realtime. - * - * On some platforms, like Linux, a realtime priority thread may be subject to restrictions - * that require special handling by the application. This hint exists to let SDL know that - * the app is prepared to handle said restrictions. - * - * On Linux, SDL will apply the following configuration to any thread that becomes realtime: - * * The SCHED_RESET_ON_FORK bit will be set on the scheduling policy, - * * An RLIMIT_RTTIME budget will be configured to the rtkit specified limit. - * * Exceeding this limit will result in the kernel sending SIGKILL to the app, - * * Refer to the man pages for more information. - * - * This variable can be set to the following values: - * "0" - default platform specific behaviour - * "1" - Force SDL_THREAD_PRIORITY_TIME_CRITICAL to a realtime scheduling policy - */ -#define SDL_HINT_THREAD_FORCE_REALTIME_TIME_CRITICAL "SDL_THREAD_FORCE_REALTIME_TIME_CRITICAL" - -/** -* \brief A string specifying additional information to use with SDL_SetThreadPriority. -* -* By default SDL_SetThreadPriority will make appropriate system changes in order to -* apply a thread priority. For example on systems using pthreads the scheduler policy -* is changed automatically to a policy that works well with a given priority. -* Code which has specific requirements can override SDL's default behavior with this hint. -* -* pthread hint values are "current", "other", "fifo" and "rr". -* Currently no other platform hint values are defined but may be in the future. -* -* \note On Linux, the kernel may send SIGKILL to realtime tasks which exceed the distro -* configured execution budget for rtkit. This budget can be queried through RLIMIT_RTTIME -* after calling SDL_SetThreadPriority(). -*/ -#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" - -/** -* \brief A string specifying SDL's threads stack size in bytes or "0" for the backend's default size -* -* Use this hint in case you need to set SDL's threads stack size to other than the default. -* This is specially useful if you build SDL against a non glibc libc library (such as musl) which -* provides a relatively small default thread stack size (a few kilobytes versus the default 8MB glibc uses). -* Support for this hint is currently available only in the pthread, Windows, and PSP backend. -* -* Instead of this hint, in 2.0.9 and later, you can use -* SDL_CreateThreadWithStackSize(). This hint only works with the classic -* SDL_CreateThread(). -*/ -#define SDL_HINT_THREAD_STACK_SIZE "SDL_THREAD_STACK_SIZE" - -/** - * \brief A variable that controls the timer resolution, in milliseconds. - * - * The higher resolution the timer, the more frequently the CPU services - * timer interrupts, and the more precise delays are, but this takes up - * power and CPU time. This hint is only used on Windows. - * - * See this blog post for more information: - * http://randomascii.wordpress.com/2013/07/08/windows-timer-resolution-megawatts-wasted/ - * - * If this variable is set to "0", the system timer resolution is not set. - * - * The default value is "1". This hint may be set at any time. - */ -#define SDL_HINT_TIMER_RESOLUTION "SDL_TIMER_RESOLUTION" - -/** - * \brief A variable controlling whether touch events should generate synthetic mouse events - * - * This variable can be set to the following values: - * "0" - Touch events will not generate mouse events - * "1" - Touch events will generate mouse events - * - * By default SDL will generate mouse events for touch events - */ -#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" - -/** - * \brief A variable controlling which touchpad should generate synthetic mouse events - * - * This variable can be set to the following values: - * "0" - Only front touchpad should generate mouse events. Default - * "1" - Only back touchpad should generate mouse events. - * "2" - Both touchpads should generate mouse events. - * - * By default SDL will generate mouse events for all touch devices - */ -#define SDL_HINT_VITA_TOUCH_MOUSE_DEVICE "SDL_HINT_VITA_TOUCH_MOUSE_DEVICE" - -/** - * \brief A variable controlling whether the Android / tvOS remotes - * should be listed as joystick devices, instead of sending keyboard events. - * - * This variable can be set to the following values: - * "0" - Remotes send enter/escape/arrow key events - * "1" - Remotes are available as 2 axis, 2 button joysticks (the default). - */ -#define SDL_HINT_TV_REMOTE_AS_JOYSTICK "SDL_TV_REMOTE_AS_JOYSTICK" - -/** - * \brief A variable controlling whether the screensaver is enabled. - * - * This variable can be set to the following values: - * "0" - Disable screensaver - * "1" - Enable screensaver - * - * By default SDL will disable the screensaver. - */ -#define SDL_HINT_VIDEO_ALLOW_SCREENSAVER "SDL_VIDEO_ALLOW_SCREENSAVER" - -/** - * \brief Tell the video driver that we only want a double buffer. - * - * By default, most lowlevel 2D APIs will use a triple buffer scheme that - * wastes no CPU time on waiting for vsync after issuing a flip, but - * introduces a frame of latency. On the other hand, using a double buffer - * scheme instead is recommended for cases where low latency is an important - * factor because we save a whole frame of latency. - * We do so by waiting for vsync immediately after issuing a flip, usually just - * after eglSwapBuffers call in the backend's *_SwapWindow function. - * - * Since it's driver-specific, it's only supported where possible and - * implemented. Currently supported the following drivers: - * - * - KMSDRM (kmsdrm) - * - Raspberry Pi (raspberrypi) - */ -#define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" - -/** - * \brief A variable controlling whether the EGL window is allowed to be - * composited as transparent, rather than opaque. - * - * Most window systems will always render windows opaque, even if the surface - * format has an alpha channel. This is not always true, however, so by default - * SDL will try to enforce opaque composition. To override this behavior, you - * can set this hint to "1". - */ -#define SDL_HINT_VIDEO_EGL_ALLOW_TRANSPARENCY "SDL_VIDEO_EGL_ALLOW_TRANSPARENCY" - -/** - * \brief A variable controlling whether the graphics context is externally managed. - * - * This variable can be set to the following values: - * "0" - SDL will manage graphics contexts that are attached to windows. - * "1" - Disable graphics context management on windows. - * - * By default SDL will manage OpenGL contexts in certain situations. For example, on Android the - * context will be automatically saved and restored when pausing the application. Additionally, some - * platforms will assume usage of OpenGL if Vulkan isn't used. Setting this to "1" will prevent this - * behavior, which is desireable when the application manages the graphics context, such as - * an externally managed OpenGL context or attaching a Vulkan surface to the window. - */ -#define SDL_HINT_VIDEO_EXTERNAL_CONTEXT "SDL_VIDEO_EXTERNAL_CONTEXT" - -/** - * \brief If set to 1, then do not allow high-DPI windows. ("Retina" on Mac and iOS) - */ -#define SDL_HINT_VIDEO_HIGHDPI_DISABLED "SDL_VIDEO_HIGHDPI_DISABLED" - -/** - * \brief A variable that dictates policy for fullscreen Spaces on Mac OS X. - * - * This hint only applies to Mac OS X. - * - * The variable can be set to the following values: - * "0" - Disable Spaces support (FULLSCREEN_DESKTOP won't use them and - * SDL_WINDOW_RESIZABLE windows won't offer the "fullscreen" - * button on their titlebars). - * "1" - Enable Spaces support (FULLSCREEN_DESKTOP will use them and - * SDL_WINDOW_RESIZABLE windows will offer the "fullscreen" - * button on their titlebars). - * - * The default value is "1". This hint must be set before any windows are created. - */ -#define SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES "SDL_VIDEO_MAC_FULLSCREEN_SPACES" - -/** - * \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to false. - * \warning Before SDL 2.0.14, this defaulted to true! In 2.0.14, we're - * seeing if "true" causes more problems than it solves in modern times. - * - */ -#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" - -/** - * \brief A variable controlling whether the libdecor Wayland backend is allowed to be used. - * - * This variable can be set to the following values: - * "0" - libdecor use is disabled. - * "1" - libdecor use is enabled (default). - * - * libdecor is used over xdg-shell when xdg-decoration protocol is unavailable. - */ -#define SDL_HINT_VIDEO_WAYLAND_ALLOW_LIBDECOR "SDL_VIDEO_WAYLAND_ALLOW_LIBDECOR" - -/** - * \brief A variable controlling whether the libdecor Wayland backend is preferred over native decrations. - * - * When this hint is set, libdecor will be used to provide window decorations, even if xdg-decoration is - * available. (Note that, by default, libdecor will use xdg-decoration itself if available). - * - * This variable can be set to the following values: - * "0" - libdecor is enabled only if server-side decorations are unavailable. - * "1" - libdecor is always enabled if available. - * - * libdecor is used over xdg-shell when xdg-decoration protocol is unavailable. - */ -#define SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR "SDL_VIDEO_WAYLAND_PREFER_LIBDECOR" - -/** - * \brief A variable controlling whether video mode emulation is enabled under Wayland. - * - * When this hint is set, a standard set of emulated CVT video modes will be exposed for use by the application. - * If it is disabled, the only modes exposed will be the logical desktop size and, in the case of a scaled - * desktop, the native display resolution. - * - * This variable can be set to the following values: - * "0" - Video mode emulation is disabled. - * "1" - Video mode emulation is enabled. - * - * By default video mode emulation is enabled. - */ -#define SDL_HINT_VIDEO_WAYLAND_MODE_EMULATION "SDL_VIDEO_WAYLAND_MODE_EMULATION" - -/** - * \brief Enable or disable mouse pointer warp emulation, needed by some older games. - * - * When this hint is set, any SDL will emulate mouse warps using relative mouse mode. - * This is required for some older games (such as Source engine games), which warp the - * mouse to the centre of the screen rather than using relative mouse motion. Note that - * relative mouse mode may have different mouse acceleration behaviour than pointer warps. - * - * This variable can be set to the following values: - * "0" - All mouse warps fail, as mouse warping is not available under wayland. - * "1" - Some mouse warps will be emulated by forcing relative mouse mode. - * - * If not set, this is automatically enabled unless an application uses relative mouse - * mode directly. - */ -#define SDL_HINT_VIDEO_WAYLAND_EMULATE_MOUSE_WARP "SDL_VIDEO_WAYLAND_EMULATE_MOUSE_WARP" - -/** -* \brief A variable that is the address of another SDL_Window* (as a hex string formatted with "%p"). -* -* If this hint is set before SDL_CreateWindowFrom() and the SDL_Window* it is set to has -* SDL_WINDOW_OPENGL set (and running on WGL only, currently), then two things will occur on the newly -* created SDL_Window: -* -* 1. Its pixel format will be set to the same pixel format as this SDL_Window. This is -* needed for example when sharing an OpenGL context across multiple windows. -* -* 2. The flag SDL_WINDOW_OPENGL will be set on the new window so it can be used for -* OpenGL rendering. -* -* This variable can be set to the following values: -* The address (as a string "%p") of the SDL_Window* that new windows created with SDL_CreateWindowFrom() should -* share a pixel format with. -*/ -#define SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT "SDL_VIDEO_WINDOW_SHARE_PIXEL_FORMAT" - -/** - * \brief When calling SDL_CreateWindowFrom(), make the window compatible with OpenGL. - * - * This variable can be set to the following values: - * "0" - Don't add any graphics flags to the SDL_WindowFlags - * "1" - Add SDL_WINDOW_OPENGL to the SDL_WindowFlags - * - * By default SDL will not make the foreign window compatible with OpenGL. - */ -#define SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL "SDL_VIDEO_FOREIGN_WINDOW_OPENGL" - -/** - * \brief When calling SDL_CreateWindowFrom(), make the window compatible with Vulkan. - * - * This variable can be set to the following values: - * "0" - Don't add any graphics flags to the SDL_WindowFlags - * "1" - Add SDL_WINDOW_VULKAN to the SDL_WindowFlags - * - * By default SDL will not make the foreign window compatible with Vulkan. - */ -#define SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN "SDL_VIDEO_FOREIGN_WINDOW_VULKAN" - -/** -* \brief A variable specifying which shader compiler to preload when using the Chrome ANGLE binaries -* -* SDL has EGL and OpenGL ES2 support on Windows via the ANGLE project. It -* can use two different sets of binaries, those compiled by the user from source -* or those provided by the Chrome browser. In the later case, these binaries require -* that SDL loads a DLL providing the shader compiler. -* -* This variable can be set to the following values: -* "d3dcompiler_46.dll" - default, best for Vista or later. -* "d3dcompiler_43.dll" - for XP support. -* "none" - do not load any library, useful if you compiled ANGLE from source and included the compiler in your binaries. -* -*/ -#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER" - -/** - * \brief A variable controlling whether X11 should use GLX or EGL by default - * - * This variable can be set to the following values: - * "0" - Use GLX - * "1" - Use EGL - * - * By default SDL will use GLX when both are present. - */ -#define SDL_HINT_VIDEO_X11_FORCE_EGL "SDL_VIDEO_X11_FORCE_EGL" - -/** - * \brief A variable controlling whether the X11 _NET_WM_BYPASS_COMPOSITOR hint should be used. - * - * This variable can be set to the following values: - * "0" - Disable _NET_WM_BYPASS_COMPOSITOR - * "1" - Enable _NET_WM_BYPASS_COMPOSITOR - * - * By default SDL will use _NET_WM_BYPASS_COMPOSITOR - * - */ -#define SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR "SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR" - -/** - * \brief A variable controlling whether the X11 _NET_WM_PING protocol should be supported. - * - * This variable can be set to the following values: - * "0" - Disable _NET_WM_PING - * "1" - Enable _NET_WM_PING - * - * By default SDL will use _NET_WM_PING, but for applications that know they - * will not always be able to respond to ping requests in a timely manner they can - * turn it off to avoid the window manager thinking the app is hung. - * The hint is checked in CreateWindow. - */ -#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" - -/** - * \brief A variable forcing the visual ID chosen for new X11 windows - * - */ -#define SDL_HINT_VIDEO_X11_WINDOW_VISUALID "SDL_VIDEO_X11_WINDOW_VISUALID" - -/** - * \brief A no-longer-used variable controlling whether the X11 Xinerama extension should be used. - * - * Before SDL 2.0.24, this would let apps and users disable Xinerama support on X11. - * Now SDL never uses Xinerama, and does not check for this hint at all. - * The preprocessor define is left here for source compatibility. - */ -#define SDL_HINT_VIDEO_X11_XINERAMA "SDL_VIDEO_X11_XINERAMA" - -/** - * \brief A variable controlling whether the X11 XRandR extension should be used. - * - * This variable can be set to the following values: - * "0" - Disable XRandR - * "1" - Enable XRandR - * - * By default SDL will use XRandR. - */ -#define SDL_HINT_VIDEO_X11_XRANDR "SDL_VIDEO_X11_XRANDR" - -/** - * \brief A no-longer-used variable controlling whether the X11 VidMode extension should be used. - * - * Before SDL 2.0.24, this would let apps and users disable XVidMode support on X11. - * Now SDL never uses XVidMode, and does not check for this hint at all. - * The preprocessor define is left here for source compatibility. - */ -#define SDL_HINT_VIDEO_X11_XVIDMODE "SDL_VIDEO_X11_XVIDMODE" - -/** - * \brief Controls how the fact chunk affects the loading of a WAVE file. - * - * The fact chunk stores information about the number of samples of a WAVE - * file. The Standards Update from Microsoft notes that this value can be used - * to 'determine the length of the data in seconds'. This is especially useful - * for compressed formats (for which this is a mandatory chunk) if they produce - * multiple sample frames per block and truncating the block is not allowed. - * The fact chunk can exactly specify how many sample frames there should be - * in this case. - * - * Unfortunately, most application seem to ignore the fact chunk and so SDL - * ignores it by default as well. - * - * This variable can be set to the following values: - * - * "truncate" - Use the number of samples to truncate the wave data if - * the fact chunk is present and valid - * "strict" - Like "truncate", but raise an error if the fact chunk - * is invalid, not present for non-PCM formats, or if the - * data chunk doesn't have that many samples - * "ignorezero" - Like "truncate", but ignore fact chunk if the number of - * samples is zero - * "ignore" - Ignore fact chunk entirely (default) - */ -#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" - -/** - * \brief Controls how the size of the RIFF chunk affects the loading of a WAVE file. - * - * The size of the RIFF chunk (which includes all the sub-chunks of the WAVE - * file) is not always reliable. In case the size is wrong, it's possible to - * just ignore it and step through the chunks until a fixed limit is reached. - * - * Note that files that have trailing data unrelated to the WAVE file or - * corrupt files may slow down the loading process without a reliable boundary. - * By default, SDL stops after 10000 chunks to prevent wasting time. Use the - * environment variable SDL_WAVE_CHUNK_LIMIT to adjust this value. - * - * This variable can be set to the following values: - * - * "force" - Always use the RIFF chunk size as a boundary for the chunk search - * "ignorezero" - Like "force", but a zero size searches up to 4 GiB (default) - * "ignore" - Ignore the RIFF chunk size and always search up to 4 GiB - * "maximum" - Search for chunks until the end of file (not recommended) - */ -#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" - -/** - * \brief Controls how a truncated WAVE file is handled. - * - * A WAVE file is considered truncated if any of the chunks are incomplete or - * the data chunk size is not a multiple of the block size. By default, SDL - * decodes until the first incomplete block, as most applications seem to do. - * - * This variable can be set to the following values: - * - * "verystrict" - Raise an error if the file is truncated - * "strict" - Like "verystrict", but the size of the RIFF chunk is ignored - * "dropframe" - Decode until the first incomplete sample frame - * "dropblock" - Decode until the first incomplete block (default) - */ -#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" - -/** - * \brief Tell SDL not to name threads on Windows with the 0x406D1388 Exception. - * The 0x406D1388 Exception is a trick used to inform Visual Studio of a - * thread's name, but it tends to cause problems with other debuggers, - * and the .NET runtime. Note that SDL 2.0.6 and later will still use - * the (safer) SetThreadDescription API, introduced in the Windows 10 - * Creators Update, if available. - * - * The variable can be set to the following values: - * "0" - SDL will raise the 0x406D1388 Exception to name threads. - * This is the default behavior of SDL <= 2.0.4. - * "1" - SDL will not raise this exception, and threads will be unnamed. (default) - * This is necessary with .NET languages or debuggers that aren't Visual Studio. - */ -#define SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING "SDL_WINDOWS_DISABLE_THREAD_NAMING" - -/** - * \brief Controls whether menus can be opened with their keyboard shortcut (Alt+mnemonic). - * - * If the mnemonics are enabled, then menus can be opened by pressing the Alt - * key and the corresponding mnemonic (for example, Alt+F opens the File menu). - * However, in case an invalid mnemonic is pressed, Windows makes an audible - * beep to convey that nothing happened. This is true even if the window has - * no menu at all! - * - * Because most SDL applications don't have menus, and some want to use the Alt - * key for other purposes, SDL disables mnemonics (and the beeping) by default. - * - * Note: This also affects keyboard events: with mnemonics enabled, when a - * menu is opened from the keyboard, you will not receive a KEYUP event for - * the mnemonic key, and *might* not receive one for Alt. - * - * This variable can be set to the following values: - * "0" - Alt+mnemonic does nothing, no beeping. (default) - * "1" - Alt+mnemonic opens menus, invalid mnemonics produce a beep. - */ -#define SDL_HINT_WINDOWS_ENABLE_MENU_MNEMONICS "SDL_WINDOWS_ENABLE_MENU_MNEMONICS" - -/** - * \brief A variable controlling whether the windows message loop is processed by SDL - * - * This variable can be set to the following values: - * "0" - The window message loop is not run - * "1" - The window message loop is processed in SDL_PumpEvents() - * - * By default SDL will process the windows message loop - */ -#define SDL_HINT_WINDOWS_ENABLE_MESSAGELOOP "SDL_WINDOWS_ENABLE_MESSAGELOOP" - -/** - * \brief Force SDL to use Critical Sections for mutexes on Windows. - * On Windows 7 and newer, Slim Reader/Writer Locks are available. - * They offer better performance, allocate no kernel ressources and - * use less memory. SDL will fall back to Critical Sections on older - * OS versions or if forced to by this hint. - * - * This variable can be set to the following values: - * "0" - Use SRW Locks when available. If not, fall back to Critical Sections. (default) - * "1" - Force the use of Critical Sections in all cases. - * - */ -#define SDL_HINT_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS "SDL_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS" - -/** - * \brief Force SDL to use Kernel Semaphores on Windows. - * Kernel Semaphores are inter-process and require a context - * switch on every interaction. On Windows 8 and newer, the - * WaitOnAddress API is available. Using that and atomics to - * implement semaphores increases performance. - * SDL will fall back to Kernel Objects on older OS versions - * or if forced to by this hint. - * - * This variable can be set to the following values: - * "0" - Use Atomics and WaitOnAddress API when available. If not, fall back to Kernel Objects. (default) - * "1" - Force the use of Kernel Objects in all cases. - * - */ -#define SDL_HINT_WINDOWS_FORCE_SEMAPHORE_KERNEL "SDL_WINDOWS_FORCE_SEMAPHORE_KERNEL" - -/** - * \brief A variable to specify custom icon resource id from RC file on Windows platform - */ -#define SDL_HINT_WINDOWS_INTRESOURCE_ICON "SDL_WINDOWS_INTRESOURCE_ICON" -#define SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL "SDL_WINDOWS_INTRESOURCE_ICON_SMALL" - -/** - * \brief Tell SDL not to generate window-close events for Alt+F4 on Windows. - * - * The variable can be set to the following values: - * "0" - SDL will generate a window-close event when it sees Alt+F4. - * "1" - SDL will only do normal key handling for Alt+F4. - */ -#define SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 "SDL_WINDOWS_NO_CLOSE_ON_ALT_F4" - -/** - * \brief Use the D3D9Ex API introduced in Windows Vista, instead of normal D3D9. - * Direct3D 9Ex contains changes to state management that can eliminate device - * loss errors during scenarios like Alt+Tab or UAC prompts. D3D9Ex may require - * some changes to your application to cope with the new behavior, so this - * is disabled by default. - * - * This hint must be set before initializing the video subsystem. - * - * For more information on Direct3D 9Ex, see: - * - https://docs.microsoft.com/en-us/windows/win32/direct3darticles/graphics-apis-in-windows-vista#direct3d-9ex - * - https://docs.microsoft.com/en-us/windows/win32/direct3darticles/direct3d-9ex-improvements - * - * This variable can be set to the following values: - * "0" - Use the original Direct3D 9 API (default) - * "1" - Use the Direct3D 9Ex API on Vista and later (and fall back if D3D9Ex is unavailable) - * - */ -#define SDL_HINT_WINDOWS_USE_D3D9EX "SDL_WINDOWS_USE_D3D9EX" - -/** - * \brief Controls whether SDL will declare the process to be DPI aware. - * - * This hint must be set before initializing the video subsystem. - * - * The main purpose of declaring DPI awareness is to disable OS bitmap scaling of SDL windows on monitors with - * a DPI scale factor. - * - * This hint is equivalent to requesting DPI awareness via external means (e.g. calling SetProcessDpiAwarenessContext) - * and does not cause SDL to use a virtualized coordinate system, so it will generally give you 1 SDL coordinate = 1 pixel - * even on high-DPI displays. - * - * For more information, see: - * https://docs.microsoft.com/en-us/windows/win32/hidpi/high-dpi-desktop-application-development-on-windows - * - * This variable can be set to the following values: - * "" - Do not change the DPI awareness (default). - * "unaware" - Declare the process as DPI unaware. (Windows 8.1 and later). - * "system" - Request system DPI awareness. (Vista and later). - * "permonitor" - Request per-monitor DPI awareness. (Windows 8.1 and later). - * "permonitorv2" - Request per-monitor V2 DPI awareness. (Windows 10, version 1607 and later). - * The most visible difference from "permonitor" is that window title bar will be scaled - * to the visually correct size when dragging between monitors with different scale factors. - * This is the preferred DPI awareness level. - * - * If the requested DPI awareness is not available on the currently running OS, SDL will try to request the best - * available match. - */ -#define SDL_HINT_WINDOWS_DPI_AWARENESS "SDL_WINDOWS_DPI_AWARENESS" - -/** - * \brief Uses DPI-scaled points as the SDL coordinate system on Windows. - * - * This changes the SDL coordinate system units to be DPI-scaled points, rather than pixels everywhere. - * This means windows will be appropriately sized, even when created on high-DPI displays with scaling. - * - * e.g. requesting a 640x480 window from SDL, on a display with 125% scaling in Windows display settings, - * will create a window with an 800x600 client area (in pixels). - * - * Setting this to "1" implicitly requests process DPI awareness (setting SDL_WINDOWS_DPI_AWARENESS is unnecessary), - * and forces SDL_WINDOW_ALLOW_HIGHDPI on all windows. - * - * This variable can be set to the following values: - * "0" - SDL coordinates equal Windows coordinates. No automatic window resizing when dragging - * between monitors with different scale factors (unless this is performed by - * Windows itself, which is the case when the process is DPI unaware). - * "1" - SDL coordinates are in DPI-scaled points. Automatically resize windows as needed on - * displays with non-100% scale factors. - */ -#define SDL_HINT_WINDOWS_DPI_SCALING "SDL_WINDOWS_DPI_SCALING" - -/** - * \brief A variable controlling whether the window frame and title bar are interactive when the cursor is hidden - * - * This variable can be set to the following values: - * "0" - The window frame is not interactive when the cursor is hidden (no move, resize, etc) - * "1" - The window frame is interactive when the cursor is hidden - * - * By default SDL will allow interaction with the window frame when the cursor is hidden - */ -#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" - -/** -* \brief A variable controlling whether the window is activated when the SDL_ShowWindow function is called -* -* This variable can be set to the following values: -* "0" - The window is activated when the SDL_ShowWindow function is called -* "1" - The window is not activated when the SDL_ShowWindow function is called -* -* By default SDL will activate the window when the SDL_ShowWindow function is called -*/ -#define SDL_HINT_WINDOW_NO_ACTIVATION_WHEN_SHOWN "SDL_WINDOW_NO_ACTIVATION_WHEN_SHOWN" - -/** \brief Allows back-button-press events on Windows Phone to be marked as handled - * - * Windows Phone devices typically feature a Back button. When pressed, - * the OS will emit back-button-press events, which apps are expected to - * handle in an appropriate manner. If apps do not explicitly mark these - * events as 'Handled', then the OS will invoke its default behavior for - * unhandled back-button-press events, which on Windows Phone 8 and 8.1 is to - * terminate the app (and attempt to switch to the previous app, or to the - * device's home screen). - * - * Setting the SDL_HINT_WINRT_HANDLE_BACK_BUTTON hint to "1" will cause SDL - * to mark back-button-press events as Handled, if and when one is sent to - * the app. - * - * Internally, Windows Phone sends back button events as parameters to - * special back-button-press callback functions. Apps that need to respond - * to back-button-press events are expected to register one or more - * callback functions for such, shortly after being launched (during the - * app's initialization phase). After the back button is pressed, the OS - * will invoke these callbacks. If the app's callback(s) do not explicitly - * mark the event as handled by the time they return, or if the app never - * registers one of these callback, the OS will consider the event - * un-handled, and it will apply its default back button behavior (terminate - * the app). - * - * SDL registers its own back-button-press callback with the Windows Phone - * OS. This callback will emit a pair of SDL key-press events (SDL_KEYDOWN - * and SDL_KEYUP), each with a scancode of SDL_SCANCODE_AC_BACK, after which - * it will check the contents of the hint, SDL_HINT_WINRT_HANDLE_BACK_BUTTON. - * If the hint's value is set to "1", the back button event's Handled - * property will get set to 'true'. If the hint's value is set to something - * else, or if it is unset, SDL will leave the event's Handled property - * alone. (By default, the OS sets this property to 'false', to note.) - * - * SDL apps can either set SDL_HINT_WINRT_HANDLE_BACK_BUTTON well before a - * back button is pressed, or can set it in direct-response to a back button - * being pressed. - * - * In order to get notified when a back button is pressed, SDL apps should - * register a callback function with SDL_AddEventWatch(), and have it listen - * for SDL_KEYDOWN events that have a scancode of SDL_SCANCODE_AC_BACK. - * (Alternatively, SDL_KEYUP events can be listened-for. Listening for - * either event type is suitable.) Any value of SDL_HINT_WINRT_HANDLE_BACK_BUTTON - * set by such a callback, will be applied to the OS' current - * back-button-press event. - * - * More details on back button behavior in Windows Phone apps can be found - * at the following page, on Microsoft's developer site: - * http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj247550(v=vs.105).aspx - */ -#define SDL_HINT_WINRT_HANDLE_BACK_BUTTON "SDL_WINRT_HANDLE_BACK_BUTTON" - -/** \brief Label text for a WinRT app's privacy policy link - * - * Network-enabled WinRT apps must include a privacy policy. On Windows 8, 8.1, and RT, - * Microsoft mandates that this policy be available via the Windows Settings charm. - * SDL provides code to add a link there, with its label text being set via the - * optional hint, SDL_HINT_WINRT_PRIVACY_POLICY_LABEL. - * - * Please note that a privacy policy's contents are not set via this hint. A separate - * hint, SDL_HINT_WINRT_PRIVACY_POLICY_URL, is used to link to the actual text of the - * policy. - * - * The contents of this hint should be encoded as a UTF8 string. - * - * The default value is "Privacy Policy". This hint should only be set during app - * initialization, preferably before any calls to SDL_Init(). - * - * For additional information on linking to a privacy policy, see the documentation for - * SDL_HINT_WINRT_PRIVACY_POLICY_URL. - */ -#define SDL_HINT_WINRT_PRIVACY_POLICY_LABEL "SDL_WINRT_PRIVACY_POLICY_LABEL" - -/** - * \brief A URL to a WinRT app's privacy policy - * - * All network-enabled WinRT apps must make a privacy policy available to its - * users. On Windows 8, 8.1, and RT, Microsoft mandates that this policy be - * be available in the Windows Settings charm, as accessed from within the app. - * SDL provides code to add a URL-based link there, which can point to the app's - * privacy policy. - * - * To setup a URL to an app's privacy policy, set SDL_HINT_WINRT_PRIVACY_POLICY_URL - * before calling any SDL_Init() functions. The contents of the hint should - * be a valid URL. For example, "http://www.example.com". - * - * The default value is "", which will prevent SDL from adding a privacy policy - * link to the Settings charm. This hint should only be set during app init. - * - * The label text of an app's "Privacy Policy" link may be customized via another - * hint, SDL_HINT_WINRT_PRIVACY_POLICY_LABEL. - * - * Please note that on Windows Phone, Microsoft does not provide standard UI - * for displaying a privacy policy link, and as such, SDL_HINT_WINRT_PRIVACY_POLICY_URL - * will not get used on that platform. Network-enabled phone apps should display - * their privacy policy through some other, in-app means. - */ -#define SDL_HINT_WINRT_PRIVACY_POLICY_URL "SDL_WINRT_PRIVACY_POLICY_URL" - -/** - * \brief Mark X11 windows as override-redirect. - * - * If set, this _might_ increase framerate at the expense of the desktop - * not working as expected. Override-redirect windows aren't noticed by the - * window manager at all. - * - * You should probably only use this for fullscreen windows, and you probably - * shouldn't even use it for that. But it's here if you want to try! - */ -#define SDL_HINT_X11_FORCE_OVERRIDE_REDIRECT "SDL_X11_FORCE_OVERRIDE_REDIRECT" - -/** - * \brief A variable that lets you disable the detection and use of Xinput gamepad devices - * - * The variable can be set to the following values: - * "0" - Disable XInput detection (only uses direct input) - * "1" - Enable XInput detection (the default) - */ -#define SDL_HINT_XINPUT_ENABLED "SDL_XINPUT_ENABLED" - - /** - * \brief A variable that lets you disable the detection and use of DirectInput gamepad devices - * - * The variable can be set to the following values: - * "0" - Disable DirectInput detection (only uses XInput) - * "1" - Enable DirectInput detection (the default) - */ -#define SDL_HINT_DIRECTINPUT_ENABLED "SDL_DIRECTINPUT_ENABLED" - -/** - * \brief A variable that causes SDL to use the old axis and button mapping for XInput devices. - * - * This hint is for backwards compatibility only and will be removed in SDL 2.1 - * - * The default value is "0". This hint must be set before SDL_Init() - */ -#define SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING "SDL_XINPUT_USE_OLD_JOYSTICK_MAPPING" - -/** - * \brief A variable that causes SDL to not ignore audio "monitors" - * - * This is currently only used for PulseAudio and ignored elsewhere. - * - * By default, SDL ignores audio devices that aren't associated with physical - * hardware. Changing this hint to "1" will expose anything SDL sees that - * appears to be an audio source or sink. This will add "devices" to the list - * that the user probably doesn't want or need, but it can be useful in - * scenarios where you want to hook up SDL to some sort of virtual device, - * etc. - * - * The default value is "0". This hint must be set before SDL_Init(). - * - * This hint is available since SDL 2.0.16. Before then, virtual devices are - * always ignored. - */ -#define SDL_HINT_AUDIO_INCLUDE_MONITORS "SDL_AUDIO_INCLUDE_MONITORS" - -/** - * \brief A variable that forces X11 windows to create as a custom type. - * - * This is currently only used for X11 and ignored elsewhere. - * - * During SDL_CreateWindow, SDL uses the _NET_WM_WINDOW_TYPE X11 property - * to report to the window manager the type of window it wants to create. - * This might be set to various things if SDL_WINDOW_TOOLTIP or - * SDL_WINDOW_POPUP_MENU, etc, were specified. For "normal" windows that - * haven't set a specific type, this hint can be used to specify a custom - * type. For example, a dock window might set this to - * "_NET_WM_WINDOW_TYPE_DOCK". - * - * If not set or set to "", this hint is ignored. This hint must be set - * before the SDL_CreateWindow() call that it is intended to affect. - * - * This hint is available since SDL 2.0.22. - */ -#define SDL_HINT_X11_WINDOW_TYPE "SDL_X11_WINDOW_TYPE" - -/** - * \brief A variable that decides whether to send SDL_QUIT when closing the final window. - * - * By default, SDL sends an SDL_QUIT event when there is only one window - * and it receives an SDL_WINDOWEVENT_CLOSE event, under the assumption most - * apps would also take the loss of this window as a signal to terminate the - * program. - * - * However, it's not unreasonable in some cases to have the program continue - * to live on, perhaps to create new windows later. - * - * Changing this hint to "0" will cause SDL to not send an SDL_QUIT event - * when the final window is requesting to close. Note that in this case, - * there are still other legitimate reasons one might get an SDL_QUIT - * event: choosing "Quit" from the macOS menu bar, sending a SIGINT (ctrl-c) - * on Unix, etc. - * - * The default value is "1". This hint can be changed at any time. - * - * This hint is available since SDL 2.0.22. Before then, you always get - * an SDL_QUIT event when closing the final window. - */ -#define SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE "SDL_QUIT_ON_LAST_WINDOW_CLOSE" - - -/** - * \brief A variable that decides what video backend to use. - * - * By default, SDL will try all available video backends in a reasonable - * order until it finds one that can work, but this hint allows the app - * or user to force a specific target, such as "x11" if, say, you are - * on Wayland but want to try talking to the X server instead. - * - * This functionality has existed since SDL 2.0.0 (indeed, before that) - * but before 2.0.22 this was an environment variable only. In 2.0.22, - * it was upgraded to a full SDL hint, so you can set the environment - * variable as usual or programatically set the hint with SDL_SetHint, - * which won't propagate to child processes. - * - * The default value is unset, in which case SDL will try to figure out - * the best video backend on your behalf. This hint needs to be set - * before SDL_Init() is called to be useful. - * - * This hint is available since SDL 2.0.22. Before then, you could set - * the environment variable to get the same effect. - */ -#define SDL_HINT_VIDEODRIVER "SDL_VIDEODRIVER" - -/** - * \brief A variable that decides what audio backend to use. - * - * By default, SDL will try all available audio backends in a reasonable - * order until it finds one that can work, but this hint allows the app - * or user to force a specific target, such as "alsa" if, say, you are - * on PulseAudio but want to try talking to the lower level instead. - * - * This functionality has existed since SDL 2.0.0 (indeed, before that) - * but before 2.0.22 this was an environment variable only. In 2.0.22, - * it was upgraded to a full SDL hint, so you can set the environment - * variable as usual or programatically set the hint with SDL_SetHint, - * which won't propagate to child processes. - * - * The default value is unset, in which case SDL will try to figure out - * the best audio backend on your behalf. This hint needs to be set - * before SDL_Init() is called to be useful. - * - * This hint is available since SDL 2.0.22. Before then, you could set - * the environment variable to get the same effect. - */ -#define SDL_HINT_AUDIODRIVER "SDL_AUDIODRIVER" - -/** - * \brief A variable that decides what KMSDRM device to use. - * - * Internally, SDL might open something like "/dev/dri/cardNN" to - * access KMSDRM functionality, where "NN" is a device index number. - * - * SDL makes a guess at the best index to use (usually zero), but the - * app or user can set this hint to a number between 0 and 99 to - * force selection. - * - * This hint is available since SDL 2.24.0. - */ -#define SDL_HINT_KMSDRM_DEVICE_INDEX "SDL_KMSDRM_DEVICE_INDEX" - - -/** - * \brief A variable that treats trackpads as touch devices. - * - * On macOS (and possibly other platforms in the future), SDL will report - * touches on a trackpad as mouse input, which is generally what users - * expect from this device; however, these are often actually full - * multitouch-capable touch devices, so it might be preferable to some apps - * to treat them as such. - * - * Setting this hint to true will make the trackpad input report as a - * multitouch device instead of a mouse. The default is false. - * - * Note that most platforms don't support this hint. As of 2.24.0, it - * only supports MacBooks' trackpads on macOS. Others may follow later. - * - * This hint is checked during SDL_Init and can not be changed after. - * - * This hint is available since SDL 2.24.0. - */ -#define SDL_HINT_TRACKPAD_IS_TOUCH_ONLY "SDL_TRACKPAD_IS_TOUCH_ONLY" - - -/** - * \brief An enumeration of hint priorities - */ -typedef enum -{ - SDL_HINT_DEFAULT, - SDL_HINT_NORMAL, - SDL_HINT_OVERRIDE -} SDL_HintPriority; - - -/** - * Set a hint with a specific priority. - * - * The priority controls the behavior when setting a hint that already has a - * value. Hints will replace existing hints of their priority and lower. - * Environment variables are considered to have override priority. - * - * \param name the hint to set - * \param value the value of the hint variable - * \param priority the SDL_HintPriority level for the hint - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetHint - * \sa SDL_SetHint - */ -extern DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, - const char *value, - SDL_HintPriority priority); - -/** - * Set a hint with normal priority. - * - * Hints will not be set if there is an existing override hint or environment - * variable that takes precedence. You can use SDL_SetHintWithPriority() to - * set the hint with override priority instead. - * - * \param name the hint to set - * \param value the value of the hint variable - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetHint - * \sa SDL_SetHintWithPriority - */ -extern DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, - const char *value); - -/** - * Reset a hint to the default value. - * - * This will reset a hint to the value of the environment variable, or NULL if - * the environment isn't set. Callbacks will be called normally with this - * change. - * - * \param name the hint to set - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GetHint - * \sa SDL_SetHint - */ -extern DECLSPEC SDL_bool SDLCALL SDL_ResetHint(const char *name); - -/** - * Reset all hints to the default values. - * - * This will reset all hints to the value of the associated environment - * variable, or NULL if the environment isn't set. Callbacks will be called - * normally with this change. - * - * \since This function is available since SDL 2.26.0. - * - * \sa SDL_GetHint - * \sa SDL_SetHint - * \sa SDL_ResetHint - */ -extern DECLSPEC void SDLCALL SDL_ResetHints(void); - -/** - * Get the value of a hint. - * - * \param name the hint to query - * \returns the string value of a hint or NULL if the hint isn't set. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetHint - * \sa SDL_SetHintWithPriority - */ -extern DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); - -/** - * Get the boolean value of a hint variable. - * - * \param name the name of the hint to get the boolean value from - * \param default_value the value to return if the hint does not exist - * \returns the boolean value of a hint or the provided default value if the - * hint does not exist. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_GetHint - * \sa SDL_SetHint - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GetHintBoolean(const char *name, SDL_bool default_value); - -/** - * Type definition of the hint callback function. - * - * \param userdata what was passed as `userdata` to SDL_AddHintCallback() - * \param name what was passed as `name` to SDL_AddHintCallback() - * \param oldValue the previous hint value - * \param newValue the new value hint is to be set to - */ -typedef void (SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); - -/** - * Add a function to watch a particular hint. - * - * \param name the hint to watch - * \param callback An SDL_HintCallback function that will be called when the - * hint value changes - * \param userdata a pointer to pass to the callback function - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_DelHintCallback - */ -extern DECLSPEC void SDLCALL SDL_AddHintCallback(const char *name, - SDL_HintCallback callback, - void *userdata); - -/** - * Remove a function watching a particular hint. - * - * \param name the hint being watched - * \param callback An SDL_HintCallback function that will be called when the - * hint value changes - * \param userdata a pointer being passed to the callback function - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AddHintCallback - */ -extern DECLSPEC void SDLCALL SDL_DelHintCallback(const char *name, - SDL_HintCallback callback, - void *userdata); - -/** - * Clear all hints. - * - * This function is automatically called during SDL_Quit(), and deletes all - * callbacks without calling them and frees all memory associated with hints. - * If you're calling this from application code you probably want to call - * SDL_ResetHints() instead. - * - * This function will be removed from the API the next time we rev the ABI. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ResetHints - */ -extern DECLSPEC void SDLCALL SDL_ClearHints(void); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_hints_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_hints.h.blob deleted file mode 100644 index 1ff23eed451a796edb20efc4ea8220ae0584ff11..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44245 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 bjN3R3d+;i;cwA>dNysM2N4EuKPs9HQHl)X` diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h deleted file mode 100644 index b9b4f622..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h +++ /dev/null @@ -1,1069 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_joystick.h - * - * Include file for SDL joystick event handling - * - * The term "device_index" identifies currently plugged in joystick devices between 0 and SDL_NumJoysticks(), with the exact joystick - * behind a device_index changing as joysticks are plugged and unplugged. - * - * The term "instance_id" is the current instantiation of a joystick device in the system, if the joystick is removed and then re-inserted - * then it will get a new instance_id, instance_id's are monotonically increasing identifiers of a joystick plugged in. - * - * The term "player_index" is the number assigned to a player on a specific - * controller. For XInput controllers this returns the XInput user index. - * Many joysticks will not be able to supply this information. - * - * The term JoystickGUID is a stable 128-bit identifier for a joystick device that does not change over time, it identifies class of - * the device (a X360 wired controller for example). This identifier is platform dependent. - */ - -#ifndef SDL_joystick_h_ -#define SDL_joystick_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_guid.h" -#include "SDL_mutex.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \file SDL_joystick.h - * - * In order to use these functions, SDL_Init() must have been called - * with the ::SDL_INIT_JOYSTICK flag. This causes SDL to scan the system - * for joysticks, and load appropriate drivers. - * - * If you would like to receive joystick updates while the application - * is in the background, you should set the following hint before calling - * SDL_Init(): SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS - */ - -/** - * The joystick structure used to identify an SDL joystick - */ -#ifdef SDL_THREAD_SAFETY_ANALYSIS -extern SDL_mutex *SDL_joystick_lock; -#endif -struct _SDL_Joystick; -typedef struct _SDL_Joystick SDL_Joystick; - -/* A structure that encodes the stable unique id for a joystick device */ -typedef SDL_GUID SDL_JoystickGUID; - -/** - * This is a unique ID for a joystick for the time it is connected to the system, - * and is never reused for the lifetime of the application. If the joystick is - * disconnected and reconnected, it will get a new ID. - * - * The ID value starts at 0 and increments from there. The value -1 is an invalid ID. - */ -typedef Sint32 SDL_JoystickID; - -typedef enum -{ - SDL_JOYSTICK_TYPE_UNKNOWN, - SDL_JOYSTICK_TYPE_GAMECONTROLLER, - SDL_JOYSTICK_TYPE_WHEEL, - SDL_JOYSTICK_TYPE_ARCADE_STICK, - SDL_JOYSTICK_TYPE_FLIGHT_STICK, - SDL_JOYSTICK_TYPE_DANCE_PAD, - SDL_JOYSTICK_TYPE_GUITAR, - SDL_JOYSTICK_TYPE_DRUM_KIT, - SDL_JOYSTICK_TYPE_ARCADE_PAD, - SDL_JOYSTICK_TYPE_THROTTLE -} SDL_JoystickType; - -typedef enum -{ - SDL_JOYSTICK_POWER_UNKNOWN = -1, - SDL_JOYSTICK_POWER_EMPTY, /* <= 5% */ - SDL_JOYSTICK_POWER_LOW, /* <= 20% */ - SDL_JOYSTICK_POWER_MEDIUM, /* <= 70% */ - SDL_JOYSTICK_POWER_FULL, /* <= 100% */ - SDL_JOYSTICK_POWER_WIRED, - SDL_JOYSTICK_POWER_MAX -} SDL_JoystickPowerLevel; - -/* Set max recognized G-force from accelerometer - See src/joystick/uikit/SDL_sysjoystick.m for notes on why this is needed - */ -#define SDL_IPHONE_MAX_GFORCE 5.0 - - -/* Function prototypes */ - -/** - * Locking for multi-threaded access to the joystick API - * - * If you are using the joystick API or handling events from multiple threads - * you should use these locking functions to protect access to the joysticks. - * - * In particular, you are guaranteed that the joystick list won't change, so - * the API functions that take a joystick index will be valid, and joystick - * and game controller events will not be delivered. - * - * As of SDL 2.26.0, you can take the joystick lock around reinitializing the - * joystick subsystem, to prevent other threads from seeing joysticks in an - * uninitialized state. However, all open joysticks will be closed and SDL - * functions called with them will fail. - * - * \since This function is available since SDL 2.0.7. - */ -extern DECLSPEC void SDLCALL SDL_LockJoysticks(void) SDL_ACQUIRE(SDL_joystick_lock); - - -/** - * Unlocking for multi-threaded access to the joystick API - * - * If you are using the joystick API or handling events from multiple threads - * you should use these locking functions to protect access to the joysticks. - * - * In particular, you are guaranteed that the joystick list won't change, so - * the API functions that take a joystick index will be valid, and joystick - * and game controller events will not be delivered. - * - * \since This function is available since SDL 2.0.7. - */ -extern DECLSPEC void SDLCALL SDL_UnlockJoysticks(void) SDL_RELEASE(SDL_joystick_lock); - -/** - * Count the number of joysticks attached to the system. - * - * \returns the number of attached joysticks on success or a negative error - * code on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickName - * \sa SDL_JoystickPath - * \sa SDL_JoystickOpen - */ -extern DECLSPEC int SDLCALL SDL_NumJoysticks(void); - -/** - * Get the implementation dependent name of a joystick. - * - * This can be called before any joysticks are opened. - * - * \param device_index the index of the joystick to query (the N'th joystick - * on the system) - * \returns the name of the selected joystick. If no name can be found, this - * function returns NULL; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickName - * \sa SDL_JoystickOpen - */ -extern DECLSPEC const char *SDLCALL SDL_JoystickNameForIndex(int device_index); - -/** - * Get the implementation dependent path of a joystick. - * - * This can be called before any joysticks are opened. - * - * \param device_index the index of the joystick to query (the N'th joystick - * on the system) - * \returns the path of the selected joystick. If no path can be found, this - * function returns NULL; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_JoystickPath - * \sa SDL_JoystickOpen - */ -extern DECLSPEC const char *SDLCALL SDL_JoystickPathForIndex(int device_index); - -/** - * Get the player index of a joystick, or -1 if it's not available This can be - * called before any joysticks are opened. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC int SDLCALL SDL_JoystickGetDevicePlayerIndex(int device_index); - -/** - * Get the implementation-dependent GUID for the joystick at a given device - * index. - * - * This function can be called before any joysticks are opened. - * - * \param device_index the index of the joystick to query (the N'th joystick - * on the system - * \returns the GUID of the selected joystick. If called on an invalid index, - * this function returns a zero GUID - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetGUID - * \sa SDL_JoystickGetGUIDString - */ -extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetDeviceGUID(int device_index); - -/** - * Get the USB vendor ID of a joystick, if available. - * - * This can be called before any joysticks are opened. If the vendor ID isn't - * available this function returns 0. - * - * \param device_index the index of the joystick to query (the N'th joystick - * on the system - * \returns the USB vendor ID of the selected joystick. If called on an - * invalid index, this function returns zero - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceVendor(int device_index); - -/** - * Get the USB product ID of a joystick, if available. - * - * This can be called before any joysticks are opened. If the product ID isn't - * available this function returns 0. - * - * \param device_index the index of the joystick to query (the N'th joystick - * on the system - * \returns the USB product ID of the selected joystick. If called on an - * invalid index, this function returns zero - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceProduct(int device_index); - -/** - * Get the product version of a joystick, if available. - * - * This can be called before any joysticks are opened. If the product version - * isn't available this function returns 0. - * - * \param device_index the index of the joystick to query (the N'th joystick - * on the system - * \returns the product version of the selected joystick. If called on an - * invalid index, this function returns zero - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceProductVersion(int device_index); - -/** - * Get the type of a joystick, if available. - * - * This can be called before any joysticks are opened. - * - * \param device_index the index of the joystick to query (the N'th joystick - * on the system - * \returns the SDL_JoystickType of the selected joystick. If called on an - * invalid index, this function returns `SDL_JOYSTICK_TYPE_UNKNOWN` - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetDeviceType(int device_index); - -/** - * Get the instance ID of a joystick. - * - * This can be called before any joysticks are opened. - * - * \param device_index the index of the joystick to query (the N'th joystick - * on the system - * \returns the instance id of the selected joystick. If called on an invalid - * index, this function returns -1. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickGetDeviceInstanceID(int device_index); - -/** - * Open a joystick for use. - * - * The `device_index` argument refers to the N'th joystick presently - * recognized by SDL on the system. It is **NOT** the same as the instance ID - * used to identify the joystick in future events. See - * SDL_JoystickInstanceID() for more details about instance IDs. - * - * The joystick subsystem must be initialized before a joystick can be opened - * for use. - * - * \param device_index the index of the joystick to query - * \returns a joystick identifier or NULL if an error occurred; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickClose - * \sa SDL_JoystickInstanceID - */ -extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickOpen(int device_index); - -/** - * Get the SDL_Joystick associated with an instance id. - * - * \param instance_id the instance id to get the SDL_Joystick for - * \returns an SDL_Joystick on success or NULL on failure; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.4. - */ -extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickFromInstanceID(SDL_JoystickID instance_id); - -/** - * Get the SDL_Joystick associated with a player index. - * - * \param player_index the player index to get the SDL_Joystick for - * \returns an SDL_Joystick on success or NULL on failure; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.12. - */ -extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickFromPlayerIndex(int player_index); - -/** - * Attach a new virtual joystick. - * - * \returns the joystick's device index, or -1 if an error occurred. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_JoystickAttachVirtual(SDL_JoystickType type, - int naxes, - int nbuttons, - int nhats); - -/** - * The structure that defines an extended virtual joystick description - * - * The caller must zero the structure and then initialize the version with `SDL_VIRTUAL_JOYSTICK_DESC_VERSION` before passing it to SDL_JoystickAttachVirtualEx() - * All other elements of this structure are optional and can be left 0. - * - * \sa SDL_JoystickAttachVirtualEx - */ -typedef struct SDL_VirtualJoystickDesc -{ - Uint16 version; /**< `SDL_VIRTUAL_JOYSTICK_DESC_VERSION` */ - Uint16 type; /**< `SDL_JoystickType` */ - Uint16 naxes; /**< the number of axes on this joystick */ - Uint16 nbuttons; /**< the number of buttons on this joystick */ - Uint16 nhats; /**< the number of hats on this joystick */ - Uint16 vendor_id; /**< the USB vendor ID of this joystick */ - Uint16 product_id; /**< the USB product ID of this joystick */ - Uint16 padding; /**< unused */ - Uint32 button_mask; /**< A mask of which buttons are valid for this controller - e.g. (1 << SDL_CONTROLLER_BUTTON_A) */ - Uint32 axis_mask; /**< A mask of which axes are valid for this controller - e.g. (1 << SDL_CONTROLLER_AXIS_LEFTX) */ - const char *name; /**< the name of the joystick */ - - void *userdata; /**< User data pointer passed to callbacks */ - void (SDLCALL *Update)(void *userdata); /**< Called when the joystick state should be updated */ - void (SDLCALL *SetPlayerIndex)(void *userdata, int player_index); /**< Called when the player index is set */ - int (SDLCALL *Rumble)(void *userdata, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble); /**< Implements SDL_JoystickRumble() */ - int (SDLCALL *RumbleTriggers)(void *userdata, Uint16 left_rumble, Uint16 right_rumble); /**< Implements SDL_JoystickRumbleTriggers() */ - int (SDLCALL *SetLED)(void *userdata, Uint8 red, Uint8 green, Uint8 blue); /**< Implements SDL_JoystickSetLED() */ - int (SDLCALL *SendEffect)(void *userdata, const void *data, int size); /**< Implements SDL_JoystickSendEffect() */ - -} SDL_VirtualJoystickDesc; - -/** - * \brief The current version of the SDL_VirtualJoystickDesc structure - */ -#define SDL_VIRTUAL_JOYSTICK_DESC_VERSION 1 - -/** - * Attach a new virtual joystick with extended properties. - * - * \returns the joystick's device index, or -1 if an error occurred. - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC int SDLCALL SDL_JoystickAttachVirtualEx(const SDL_VirtualJoystickDesc *desc); - -/** - * Detach a virtual joystick. - * - * \param device_index a value previously returned from - * SDL_JoystickAttachVirtual() - * \returns 0 on success, or -1 if an error occurred. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_JoystickDetachVirtual(int device_index); - -/** - * Query whether or not the joystick at a given device index is virtual. - * - * \param device_index a joystick device index. - * \returns SDL_TRUE if the joystick is virtual, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_JoystickIsVirtual(int device_index); - -/** - * Set values on an opened, virtual-joystick's axis. - * - * Please note that values set here will not be applied until the next call to - * SDL_JoystickUpdate, which can either be called directly, or can be called - * indirectly through various other SDL APIs, including, but not limited to - * the following: SDL_PollEvent, SDL_PumpEvents, SDL_WaitEventTimeout, - * SDL_WaitEvent. - * - * Note that when sending trigger axes, you should scale the value to the full - * range of Sint16. For example, a trigger at rest would have the value of - * `SDL_JOYSTICK_AXIS_MIN`. - * - * \param joystick the virtual joystick on which to set state. - * \param axis the specific axis on the virtual joystick to set. - * \param value the new value for the specified axis. - * \returns 0 on success, -1 on error. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value); - -/** - * Set values on an opened, virtual-joystick's button. - * - * Please note that values set here will not be applied until the next call to - * SDL_JoystickUpdate, which can either be called directly, or can be called - * indirectly through various other SDL APIs, including, but not limited to - * the following: SDL_PollEvent, SDL_PumpEvents, SDL_WaitEventTimeout, - * SDL_WaitEvent. - * - * \param joystick the virtual joystick on which to set state. - * \param button the specific button on the virtual joystick to set. - * \param value the new value for the specified button. - * \returns 0 on success, -1 on error. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualButton(SDL_Joystick *joystick, int button, Uint8 value); - -/** - * Set values on an opened, virtual-joystick's hat. - * - * Please note that values set here will not be applied until the next call to - * SDL_JoystickUpdate, which can either be called directly, or can be called - * indirectly through various other SDL APIs, including, but not limited to - * the following: SDL_PollEvent, SDL_PumpEvents, SDL_WaitEventTimeout, - * SDL_WaitEvent. - * - * \param joystick the virtual joystick on which to set state. - * \param hat the specific hat on the virtual joystick to set. - * \param value the new value for the specified hat. - * \returns 0 on success, -1 on error. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value); - -/** - * Get the implementation dependent name of a joystick. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the name of the selected joystick. If no name can be found, this - * function returns NULL; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickNameForIndex - * \sa SDL_JoystickOpen - */ -extern DECLSPEC const char *SDLCALL SDL_JoystickName(SDL_Joystick *joystick); - -/** - * Get the implementation dependent path of a joystick. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the path of the selected joystick. If no path can be found, this - * function returns NULL; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_JoystickPathForIndex - */ -extern DECLSPEC const char *SDLCALL SDL_JoystickPath(SDL_Joystick *joystick); - -/** - * Get the player index of an opened joystick. - * - * For XInput controllers this returns the XInput user index. Many joysticks - * will not be able to supply this information. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the player index, or -1 if it's not available. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC int SDLCALL SDL_JoystickGetPlayerIndex(SDL_Joystick *joystick); - -/** - * Set the player index of an opened joystick. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \param player_index Player index to assign to this joystick, or -1 to clear - * the player index and turn off player LEDs. - * - * \since This function is available since SDL 2.0.12. - */ -extern DECLSPEC void SDLCALL SDL_JoystickSetPlayerIndex(SDL_Joystick *joystick, int player_index); - -/** - * Get the implementation-dependent GUID for the joystick. - * - * This function requires an open joystick. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the GUID of the given joystick. If called on an invalid index, - * this function returns a zero GUID; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetDeviceGUID - * \sa SDL_JoystickGetGUIDString - */ -extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUID(SDL_Joystick *joystick); - -/** - * Get the USB vendor ID of an opened joystick, if available. - * - * If the vendor ID isn't available this function returns 0. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the USB vendor ID of the selected joystick, or 0 if unavailable. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetVendor(SDL_Joystick *joystick); - -/** - * Get the USB product ID of an opened joystick, if available. - * - * If the product ID isn't available this function returns 0. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the USB product ID of the selected joystick, or 0 if unavailable. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProduct(SDL_Joystick *joystick); - -/** - * Get the product version of an opened joystick, if available. - * - * If the product version isn't available this function returns 0. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the product version of the selected joystick, or 0 if unavailable. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProductVersion(SDL_Joystick *joystick); - -/** - * Get the firmware version of an opened joystick, if available. - * - * If the firmware version isn't available this function returns 0. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the firmware version of the selected joystick, or 0 if - * unavailable. - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetFirmwareVersion(SDL_Joystick *joystick); - -/** - * Get the serial number of an opened joystick, if available. - * - * Returns the serial number of the joystick, or NULL if it is not available. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the serial number of the selected joystick, or NULL if - * unavailable. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC const char * SDLCALL SDL_JoystickGetSerial(SDL_Joystick *joystick); - -/** - * Get the type of an opened joystick. - * - * \param joystick the SDL_Joystick obtained from SDL_JoystickOpen() - * \returns the SDL_JoystickType of the selected joystick. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetType(SDL_Joystick *joystick); - -/** - * Get an ASCII string representation for a given SDL_JoystickGUID. - * - * You should supply at least 33 bytes for pszGUID. - * - * \param guid the SDL_JoystickGUID you wish to convert to string - * \param pszGUID buffer in which to write the ASCII string - * \param cbGUID the size of pszGUID - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetDeviceGUID - * \sa SDL_JoystickGetGUID - * \sa SDL_JoystickGetGUIDFromString - */ -extern DECLSPEC void SDLCALL SDL_JoystickGetGUIDString(SDL_JoystickGUID guid, char *pszGUID, int cbGUID); - -/** - * Convert a GUID string into a SDL_JoystickGUID structure. - * - * Performs no error checking. If this function is given a string containing - * an invalid GUID, the function will silently succeed, but the GUID generated - * will not be useful. - * - * \param pchGUID string containing an ASCII representation of a GUID - * \returns a SDL_JoystickGUID structure. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetGUIDString - */ -extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUIDFromString(const char *pchGUID); - -/** - * Get the device information encoded in a SDL_JoystickGUID structure - * - * \param guid the SDL_JoystickGUID you wish to get info about - * \param vendor A pointer filled in with the device VID, or 0 if not - * available - * \param product A pointer filled in with the device PID, or 0 if not - * available - * \param version A pointer filled in with the device version, or 0 if not - * available - * \param crc16 A pointer filled in with a CRC used to distinguish different - * products with the same VID/PID, or 0 if not available - * - * \since This function is available since SDL 2.26.0. - * - * \sa SDL_JoystickGetDeviceGUID - */ -extern DECLSPEC void SDLCALL SDL_GetJoystickGUIDInfo(SDL_JoystickGUID guid, Uint16 *vendor, Uint16 *product, Uint16 *version, Uint16 *crc16); - -/** - * Get the status of a specified joystick. - * - * \param joystick the joystick to query - * \returns SDL_TRUE if the joystick has been opened, SDL_FALSE if it has not; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickClose - * \sa SDL_JoystickOpen - */ -extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAttached(SDL_Joystick *joystick); - -/** - * Get the instance ID of an opened joystick. - * - * \param joystick an SDL_Joystick structure containing joystick information - * \returns the instance ID of the specified joystick on success or a negative - * error code on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickOpen - */ -extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickInstanceID(SDL_Joystick *joystick); - -/** - * Get the number of general axis controls on a joystick. - * - * Often, the directional pad on a game controller will either look like 4 - * separate buttons or a POV hat, and not axes, but all of this is up to the - * device and platform. - * - * \param joystick an SDL_Joystick structure containing joystick information - * \returns the number of axis controls/number of axes on success or a - * negative error code on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetAxis - * \sa SDL_JoystickOpen - */ -extern DECLSPEC int SDLCALL SDL_JoystickNumAxes(SDL_Joystick *joystick); - -/** - * Get the number of trackballs on a joystick. - * - * Joystick trackballs have only relative motion events associated with them - * and their state cannot be polled. - * - * Most joysticks do not have trackballs. - * - * \param joystick an SDL_Joystick structure containing joystick information - * \returns the number of trackballs on success or a negative error code on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetBall - */ -extern DECLSPEC int SDLCALL SDL_JoystickNumBalls(SDL_Joystick *joystick); - -/** - * Get the number of POV hats on a joystick. - * - * \param joystick an SDL_Joystick structure containing joystick information - * \returns the number of POV hats on success or a negative error code on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetHat - * \sa SDL_JoystickOpen - */ -extern DECLSPEC int SDLCALL SDL_JoystickNumHats(SDL_Joystick *joystick); - -/** - * Get the number of buttons on a joystick. - * - * \param joystick an SDL_Joystick structure containing joystick information - * \returns the number of buttons on success or a negative error code on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickGetButton - * \sa SDL_JoystickOpen - */ -extern DECLSPEC int SDLCALL SDL_JoystickNumButtons(SDL_Joystick *joystick); - -/** - * Update the current state of the open joysticks. - * - * This is called automatically by the event loop if any joystick events are - * enabled. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickEventState - */ -extern DECLSPEC void SDLCALL SDL_JoystickUpdate(void); - -/** - * Enable/disable joystick event polling. - * - * If joystick events are disabled, you must call SDL_JoystickUpdate() - * yourself and manually check the state of the joystick when you want - * joystick information. - * - * It is recommended that you leave joystick event handling enabled. - * - * **WARNING**: Calling this function may delete all events currently in SDL's - * event queue. - * - * \param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE` - * \returns 1 if enabled, 0 if disabled, or a negative error code on failure; - * call SDL_GetError() for more information. - * - * If `state` is `SDL_QUERY` then the current state is returned, - * otherwise the new processing state is returned. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GameControllerEventState - */ -extern DECLSPEC int SDLCALL SDL_JoystickEventState(int state); - -#define SDL_JOYSTICK_AXIS_MAX 32767 -#define SDL_JOYSTICK_AXIS_MIN -32768 - -/** - * Get the current state of an axis control on a joystick. - * - * SDL makes no promises about what part of the joystick any given axis refers - * to. Your game should have some sort of configuration UI to let users - * specify what each axis should be bound to. Alternately, SDL's higher-level - * Game Controller API makes a great effort to apply order to this lower-level - * interface, so you know that a specific axis is the "left thumb stick," etc. - * - * The value returned by SDL_JoystickGetAxis() is a signed integer (-32768 to - * 32767) representing the current position of the axis. It may be necessary - * to impose certain tolerances on these values to account for jitter. - * - * \param joystick an SDL_Joystick structure containing joystick information - * \param axis the axis to query; the axis indices start at index 0 - * \returns a 16-bit signed integer representing the current position of the - * axis or 0 on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickNumAxes - */ -extern DECLSPEC Sint16 SDLCALL SDL_JoystickGetAxis(SDL_Joystick *joystick, - int axis); - -/** - * Get the initial state of an axis control on a joystick. - * - * The state is a value ranging from -32768 to 32767. - * - * The axis indices start at index 0. - * - * \param joystick an SDL_Joystick structure containing joystick information - * \param axis the axis to query; the axis indices start at index 0 - * \param state Upon return, the initial value is supplied here. - * \return SDL_TRUE if this axis has any initial value, or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAxisInitialState(SDL_Joystick *joystick, - int axis, Sint16 *state); - -/** - * \name Hat positions - */ -/* @{ */ -#define SDL_HAT_CENTERED 0x00 -#define SDL_HAT_UP 0x01 -#define SDL_HAT_RIGHT 0x02 -#define SDL_HAT_DOWN 0x04 -#define SDL_HAT_LEFT 0x08 -#define SDL_HAT_RIGHTUP (SDL_HAT_RIGHT|SDL_HAT_UP) -#define SDL_HAT_RIGHTDOWN (SDL_HAT_RIGHT|SDL_HAT_DOWN) -#define SDL_HAT_LEFTUP (SDL_HAT_LEFT|SDL_HAT_UP) -#define SDL_HAT_LEFTDOWN (SDL_HAT_LEFT|SDL_HAT_DOWN) -/* @} */ - -/** - * Get the current state of a POV hat on a joystick. - * - * The returned value will be one of the following positions: - * - * - `SDL_HAT_CENTERED` - * - `SDL_HAT_UP` - * - `SDL_HAT_RIGHT` - * - `SDL_HAT_DOWN` - * - `SDL_HAT_LEFT` - * - `SDL_HAT_RIGHTUP` - * - `SDL_HAT_RIGHTDOWN` - * - `SDL_HAT_LEFTUP` - * - `SDL_HAT_LEFTDOWN` - * - * \param joystick an SDL_Joystick structure containing joystick information - * \param hat the hat index to get the state from; indices start at index 0 - * \returns the current hat position. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickNumHats - */ -extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetHat(SDL_Joystick *joystick, - int hat); - -/** - * Get the ball axis change since the last poll. - * - * Trackballs can only return relative motion since the last call to - * SDL_JoystickGetBall(), these motion deltas are placed into `dx` and `dy`. - * - * Most joysticks do not have trackballs. - * - * \param joystick the SDL_Joystick to query - * \param ball the ball index to query; ball indices start at index 0 - * \param dx stores the difference in the x axis position since the last poll - * \param dy stores the difference in the y axis position since the last poll - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickNumBalls - */ -extern DECLSPEC int SDLCALL SDL_JoystickGetBall(SDL_Joystick *joystick, - int ball, int *dx, int *dy); - -/** - * Get the current state of a button on a joystick. - * - * \param joystick an SDL_Joystick structure containing joystick information - * \param button the button index to get the state from; indices start at - * index 0 - * \returns 1 if the specified button is pressed, 0 otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickNumButtons - */ -extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetButton(SDL_Joystick *joystick, - int button); - -/** - * Start a rumble effect. - * - * Each call to this function cancels any previous rumble effect, and calling - * it with 0 intensity stops any rumbling. - * - * \param joystick The joystick to vibrate - * \param low_frequency_rumble The intensity of the low frequency (left) - * rumble motor, from 0 to 0xFFFF - * \param high_frequency_rumble The intensity of the high frequency (right) - * rumble motor, from 0 to 0xFFFF - * \param duration_ms The duration of the rumble effect, in milliseconds - * \returns 0, or -1 if rumble isn't supported on this joystick - * - * \since This function is available since SDL 2.0.9. - * - * \sa SDL_JoystickHasRumble - */ -extern DECLSPEC int SDLCALL SDL_JoystickRumble(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); - -/** - * Start a rumble effect in the joystick's triggers - * - * Each call to this function cancels any previous trigger rumble effect, and - * calling it with 0 intensity stops any rumbling. - * - * Note that this is rumbling of the _triggers_ and not the game controller as - * a whole. This is currently only supported on Xbox One controllers. If you - * want the (more common) whole-controller rumble, use SDL_JoystickRumble() - * instead. - * - * \param joystick The joystick to vibrate - * \param left_rumble The intensity of the left trigger rumble motor, from 0 - * to 0xFFFF - * \param right_rumble The intensity of the right trigger rumble motor, from 0 - * to 0xFFFF - * \param duration_ms The duration of the rumble effect, in milliseconds - * \returns 0, or -1 if trigger rumble isn't supported on this joystick - * - * \since This function is available since SDL 2.0.14. - * - * \sa SDL_JoystickHasRumbleTriggers - */ -extern DECLSPEC int SDLCALL SDL_JoystickRumbleTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); - -/** - * Query whether a joystick has an LED. - * - * An example of a joystick LED is the light on the back of a PlayStation 4's - * DualShock 4 controller. - * - * \param joystick The joystick to query - * \return SDL_TRUE if the joystick has a modifiable LED, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_JoystickHasLED(SDL_Joystick *joystick); - -/** - * Query whether a joystick has rumble support. - * - * \param joystick The joystick to query - * \return SDL_TRUE if the joystick has rumble, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_JoystickRumble - */ -extern DECLSPEC SDL_bool SDLCALL SDL_JoystickHasRumble(SDL_Joystick *joystick); - -/** - * Query whether a joystick has rumble support on triggers. - * - * \param joystick The joystick to query - * \return SDL_TRUE if the joystick has trigger rumble, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_JoystickRumbleTriggers - */ -extern DECLSPEC SDL_bool SDLCALL SDL_JoystickHasRumbleTriggers(SDL_Joystick *joystick); - -/** - * Update a joystick's LED color. - * - * An example of a joystick LED is the light on the back of a PlayStation 4's - * DualShock 4 controller. - * - * \param joystick The joystick to update - * \param red The intensity of the red LED - * \param green The intensity of the green LED - * \param blue The intensity of the blue LED - * \returns 0 on success, -1 if this joystick does not have a modifiable LED - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_JoystickSetLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); - -/** - * Send a joystick specific effect packet - * - * \param joystick The joystick to affect - * \param data The data to send to the joystick - * \param size The size of the data to send to the joystick - * \returns 0, or -1 if this joystick or driver doesn't support effect packets - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC int SDLCALL SDL_JoystickSendEffect(SDL_Joystick *joystick, const void *data, int size); - -/** - * Close a joystick previously opened with SDL_JoystickOpen(). - * - * \param joystick The joystick device to close - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_JoystickOpen - */ -extern DECLSPEC void SDLCALL SDL_JoystickClose(SDL_Joystick *joystick); - -/** - * Get the battery level of a joystick as SDL_JoystickPowerLevel. - * - * \param joystick the SDL_Joystick to query - * \returns the current battery level as SDL_JoystickPowerLevel on success or - * `SDL_JOYSTICK_POWER_UNKNOWN` if it is unknown - * - * \since This function is available since SDL 2.0.4. - */ -extern DECLSPEC SDL_JoystickPowerLevel SDLCALL SDL_JoystickCurrentPowerLevel(SDL_Joystick *joystick); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_joystick_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_joystick.h.blob deleted file mode 100644 index f4eaebfbcceda658675f1d7fe3ef092804e1004b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60301 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 H(bE3|e*ZT9 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h deleted file mode 100644 index 86a37ad1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h +++ /dev/null @@ -1,353 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_keyboard.h - * - * Include file for SDL keyboard event handling - */ - -#ifndef SDL_keyboard_h_ -#define SDL_keyboard_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_keycode.h" -#include "SDL_video.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \brief The SDL keysym structure, used in key events. - * - * \note If you are looking for translated character input, see the ::SDL_TEXTINPUT event. - */ -typedef struct SDL_Keysym -{ - SDL_Scancode scancode; /**< SDL physical key code - see ::SDL_Scancode for details */ - SDL_Keycode sym; /**< SDL virtual key code - see ::SDL_Keycode for details */ - Uint16 mod; /**< current key modifiers */ - Uint32 unused; -} SDL_Keysym; - -/* Function prototypes */ - -/** - * Query the window which currently has keyboard focus. - * - * \returns the window with keyboard focus. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_Window * SDLCALL SDL_GetKeyboardFocus(void); - -/** - * Get a snapshot of the current state of the keyboard. - * - * The pointer returned is a pointer to an internal SDL array. It will be - * valid for the whole lifetime of the application and should not be freed by - * the caller. - * - * A array element with a value of 1 means that the key is pressed and a value - * of 0 means that it is not. Indexes into this array are obtained by using - * SDL_Scancode values. - * - * Use SDL_PumpEvents() to update the state array. - * - * This function gives you the current state after all events have been - * processed, so if a key or button has been pressed and released before you - * process events, then the pressed state will never show up in the - * SDL_GetKeyboardState() calls. - * - * Note: This function doesn't take into account whether shift has been - * pressed or not. - * - * \param numkeys if non-NULL, receives the length of the returned array - * \returns a pointer to an array of key states. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PumpEvents - * \sa SDL_ResetKeyboard - */ -extern DECLSPEC const Uint8 *SDLCALL SDL_GetKeyboardState(int *numkeys); - -/** - * Clear the state of the keyboard - * - * This function will generate key up events for all pressed keys. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GetKeyboardState - */ -extern DECLSPEC void SDLCALL SDL_ResetKeyboard(void); - -/** - * Get the current key modifier state for the keyboard. - * - * \returns an OR'd combination of the modifier keys for the keyboard. See - * SDL_Keymod for details. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetKeyboardState - * \sa SDL_SetModState - */ -extern DECLSPEC SDL_Keymod SDLCALL SDL_GetModState(void); - -/** - * Set the current key modifier state for the keyboard. - * - * The inverse of SDL_GetModState(), SDL_SetModState() allows you to impose - * modifier key states on your application. Simply pass your desired modifier - * states into `modstate`. This value may be a bitwise, OR'd combination of - * SDL_Keymod values. - * - * This does not change the keyboard state, only the key modifier flags that - * SDL reports. - * - * \param modstate the desired SDL_Keymod for the keyboard - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetModState - */ -extern DECLSPEC void SDLCALL SDL_SetModState(SDL_Keymod modstate); - -/** - * Get the key code corresponding to the given scancode according to the - * current keyboard layout. - * - * See SDL_Keycode for details. - * - * \param scancode the desired SDL_Scancode to query - * \returns the SDL_Keycode that corresponds to the given SDL_Scancode. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetKeyName - * \sa SDL_GetScancodeFromKey - */ -extern DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromScancode(SDL_Scancode scancode); - -/** - * Get the scancode corresponding to the given key code according to the - * current keyboard layout. - * - * See SDL_Scancode for details. - * - * \param key the desired SDL_Keycode to query - * \returns the SDL_Scancode that corresponds to the given SDL_Keycode. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetKeyFromScancode - * \sa SDL_GetScancodeName - */ -extern DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromKey(SDL_Keycode key); - -/** - * Get a human-readable name for a scancode. - * - * See SDL_Scancode for details. - * - * **Warning**: The returned name is by design not stable across platforms, - * e.g. the name for `SDL_SCANCODE_LGUI` is "Left GUI" under Linux but "Left - * Windows" under Microsoft Windows, and some scancodes like - * `SDL_SCANCODE_NONUSBACKSLASH` don't have any name at all. There are even - * scancodes that share names, e.g. `SDL_SCANCODE_RETURN` and - * `SDL_SCANCODE_RETURN2` (both called "Return"). This function is therefore - * unsuitable for creating a stable cross-platform two-way mapping between - * strings and scancodes. - * - * \param scancode the desired SDL_Scancode to query - * \returns a pointer to the name for the scancode. If the scancode doesn't - * have a name this function returns an empty string (""). - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetScancodeFromKey - * \sa SDL_GetScancodeFromName - */ -extern DECLSPEC const char *SDLCALL SDL_GetScancodeName(SDL_Scancode scancode); - -/** - * Get a scancode from a human-readable name. - * - * \param name the human-readable scancode name - * \returns the SDL_Scancode, or `SDL_SCANCODE_UNKNOWN` if the name wasn't - * recognized; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetKeyFromName - * \sa SDL_GetScancodeFromKey - * \sa SDL_GetScancodeName - */ -extern DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromName(const char *name); - -/** - * Get a human-readable name for a key. - * - * See SDL_Scancode and SDL_Keycode for details. - * - * \param key the desired SDL_Keycode to query - * \returns a pointer to a UTF-8 string that stays valid at least until the - * next call to this function. If you need it around any longer, you - * must copy it. If the key doesn't have a name, this function - * returns an empty string (""). - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetKeyFromName - * \sa SDL_GetKeyFromScancode - * \sa SDL_GetScancodeFromKey - */ -extern DECLSPEC const char *SDLCALL SDL_GetKeyName(SDL_Keycode key); - -/** - * Get a key code from a human-readable name. - * - * \param name the human-readable key name - * \returns key code, or `SDLK_UNKNOWN` if the name wasn't recognized; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetKeyFromScancode - * \sa SDL_GetKeyName - * \sa SDL_GetScancodeFromName - */ -extern DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromName(const char *name); - -/** - * Start accepting Unicode text input events. - * - * This function will start accepting Unicode text input events in the focused - * SDL window, and start emitting SDL_TextInputEvent (SDL_TEXTINPUT) and - * SDL_TextEditingEvent (SDL_TEXTEDITING) events. Please use this function in - * pair with SDL_StopTextInput(). - * - * On some platforms using this function activates the screen keyboard. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetTextInputRect - * \sa SDL_StopTextInput - */ -extern DECLSPEC void SDLCALL SDL_StartTextInput(void); - -/** - * Check whether or not Unicode text input events are enabled. - * - * \returns SDL_TRUE if text input events are enabled else SDL_FALSE. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_StartTextInput - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsTextInputActive(void); - -/** - * Stop receiving any text input events. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_StartTextInput - */ -extern DECLSPEC void SDLCALL SDL_StopTextInput(void); - -/** - * Dismiss the composition window/IME without disabling the subsystem. - * - * \since This function is available since SDL 2.0.22. - * - * \sa SDL_StartTextInput - * \sa SDL_StopTextInput - */ -extern DECLSPEC void SDLCALL SDL_ClearComposition(void); - -/** - * Returns if an IME Composite or Candidate window is currently shown. - * - * \since This function is available since SDL 2.0.22. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsTextInputShown(void); - -/** - * Set the rectangle used to type Unicode text inputs. - * - * To start text input in a given location, this function is intended to be - * called before SDL_StartTextInput, although some platforms support moving - * the rectangle even while text input (and a composition) is active. - * - * Note: If you want to use the system native IME window, try setting hint - * **SDL_HINT_IME_SHOW_UI** to **1**, otherwise this function won't give you - * any feedback. - * - * \param rect the SDL_Rect structure representing the rectangle to receive - * text (ignored if NULL) - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_StartTextInput - */ -extern DECLSPEC void SDLCALL SDL_SetTextInputRect(const SDL_Rect *rect); - -/** - * Check whether the platform has screen keyboard support. - * - * \returns SDL_TRUE if the platform has some screen keyboard support or - * SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_StartTextInput - * \sa SDL_IsScreenKeyboardShown - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasScreenKeyboardSupport(void); - -/** - * Check whether the screen keyboard is shown for given window. - * - * \param window the window for which screen keyboard should be queried - * \returns SDL_TRUE if screen keyboard is shown or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HasScreenKeyboardSupport - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsScreenKeyboardShown(SDL_Window *window); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_keyboard_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keyboard.h.blob deleted file mode 100644 index 60287e94f368e3e04760423f4291e0f766ce719a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24061 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 Bpf&&i diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h deleted file mode 100644 index 71062230..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h +++ /dev/null @@ -1,358 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_keycode.h - * - * Defines constants which identify keyboard keys and modifiers. - */ - -#ifndef SDL_keycode_h_ -#define SDL_keycode_h_ - -#include "SDL_stdinc.h" -#include "SDL_scancode.h" - -/** - * \brief The SDL virtual key representation. - * - * Values of this type are used to represent keyboard keys using the current - * layout of the keyboard. These values include Unicode values representing - * the unmodified character that would be generated by pressing the key, or - * an SDLK_* constant for those keys that do not generate characters. - * - * A special exception is the number keys at the top of the keyboard which - * map to SDLK_0...SDLK_9 on AZERTY layouts. - */ -typedef Sint32 SDL_Keycode; - -#define SDLK_SCANCODE_MASK (1<<30) -#define SDL_SCANCODE_TO_KEYCODE(X) (X | SDLK_SCANCODE_MASK) - -typedef enum -{ - SDLK_UNKNOWN = 0, - - SDLK_RETURN = '\r', - SDLK_ESCAPE = '\x1B', - SDLK_BACKSPACE = '\b', - SDLK_TAB = '\t', - SDLK_SPACE = ' ', - SDLK_EXCLAIM = '!', - SDLK_QUOTEDBL = '"', - SDLK_HASH = '#', - SDLK_PERCENT = '%', - SDLK_DOLLAR = '$', - SDLK_AMPERSAND = '&', - SDLK_QUOTE = '\'', - SDLK_LEFTPAREN = '(', - SDLK_RIGHTPAREN = ')', - SDLK_ASTERISK = '*', - SDLK_PLUS = '+', - SDLK_COMMA = ',', - SDLK_MINUS = '-', - SDLK_PERIOD = '.', - SDLK_SLASH = '/', - SDLK_0 = '0', - SDLK_1 = '1', - SDLK_2 = '2', - SDLK_3 = '3', - SDLK_4 = '4', - SDLK_5 = '5', - SDLK_6 = '6', - SDLK_7 = '7', - SDLK_8 = '8', - SDLK_9 = '9', - SDLK_COLON = ':', - SDLK_SEMICOLON = ';', - SDLK_LESS = '<', - SDLK_EQUALS = '=', - SDLK_GREATER = '>', - SDLK_QUESTION = '?', - SDLK_AT = '@', - - /* - Skip uppercase letters - */ - - SDLK_LEFTBRACKET = '[', - SDLK_BACKSLASH = '\\', - SDLK_RIGHTBRACKET = ']', - SDLK_CARET = '^', - SDLK_UNDERSCORE = '_', - SDLK_BACKQUOTE = '`', - SDLK_a = 'a', - SDLK_b = 'b', - SDLK_c = 'c', - SDLK_d = 'd', - SDLK_e = 'e', - SDLK_f = 'f', - SDLK_g = 'g', - SDLK_h = 'h', - SDLK_i = 'i', - SDLK_j = 'j', - SDLK_k = 'k', - SDLK_l = 'l', - SDLK_m = 'm', - SDLK_n = 'n', - SDLK_o = 'o', - SDLK_p = 'p', - SDLK_q = 'q', - SDLK_r = 'r', - SDLK_s = 's', - SDLK_t = 't', - SDLK_u = 'u', - SDLK_v = 'v', - SDLK_w = 'w', - SDLK_x = 'x', - SDLK_y = 'y', - SDLK_z = 'z', - - SDLK_CAPSLOCK = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CAPSLOCK), - - SDLK_F1 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F1), - SDLK_F2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F2), - SDLK_F3 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F3), - SDLK_F4 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F4), - SDLK_F5 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F5), - SDLK_F6 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F6), - SDLK_F7 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F7), - SDLK_F8 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F8), - SDLK_F9 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F9), - SDLK_F10 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F10), - SDLK_F11 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F11), - SDLK_F12 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F12), - - SDLK_PRINTSCREEN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PRINTSCREEN), - SDLK_SCROLLLOCK = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SCROLLLOCK), - SDLK_PAUSE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAUSE), - SDLK_INSERT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_INSERT), - SDLK_HOME = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_HOME), - SDLK_PAGEUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAGEUP), - SDLK_DELETE = '\x7F', - SDLK_END = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_END), - SDLK_PAGEDOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PAGEDOWN), - SDLK_RIGHT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RIGHT), - SDLK_LEFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LEFT), - SDLK_DOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DOWN), - SDLK_UP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_UP), - - SDLK_NUMLOCKCLEAR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_NUMLOCKCLEAR), - SDLK_KP_DIVIDE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DIVIDE), - SDLK_KP_MULTIPLY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MULTIPLY), - SDLK_KP_MINUS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MINUS), - SDLK_KP_PLUS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PLUS), - SDLK_KP_ENTER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_ENTER), - SDLK_KP_1 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_1), - SDLK_KP_2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_2), - SDLK_KP_3 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_3), - SDLK_KP_4 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_4), - SDLK_KP_5 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_5), - SDLK_KP_6 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_6), - SDLK_KP_7 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_7), - SDLK_KP_8 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_8), - SDLK_KP_9 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_9), - SDLK_KP_0 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_0), - SDLK_KP_PERIOD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PERIOD), - - SDLK_APPLICATION = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APPLICATION), - SDLK_POWER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_POWER), - SDLK_KP_EQUALS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EQUALS), - SDLK_F13 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F13), - SDLK_F14 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F14), - SDLK_F15 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F15), - SDLK_F16 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F16), - SDLK_F17 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F17), - SDLK_F18 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F18), - SDLK_F19 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F19), - SDLK_F20 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F20), - SDLK_F21 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F21), - SDLK_F22 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F22), - SDLK_F23 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F23), - SDLK_F24 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_F24), - SDLK_EXECUTE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EXECUTE), - SDLK_HELP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_HELP), - SDLK_MENU = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MENU), - SDLK_SELECT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SELECT), - SDLK_STOP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_STOP), - SDLK_AGAIN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AGAIN), - SDLK_UNDO = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_UNDO), - SDLK_CUT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CUT), - SDLK_COPY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_COPY), - SDLK_PASTE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PASTE), - SDLK_FIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_FIND), - SDLK_MUTE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MUTE), - SDLK_VOLUMEUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_VOLUMEUP), - SDLK_VOLUMEDOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_VOLUMEDOWN), - SDLK_KP_COMMA = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_COMMA), - SDLK_KP_EQUALSAS400 = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EQUALSAS400), - - SDLK_ALTERASE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_ALTERASE), - SDLK_SYSREQ = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SYSREQ), - SDLK_CANCEL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CANCEL), - SDLK_CLEAR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CLEAR), - SDLK_PRIOR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_PRIOR), - SDLK_RETURN2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RETURN2), - SDLK_SEPARATOR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SEPARATOR), - SDLK_OUT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_OUT), - SDLK_OPER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_OPER), - SDLK_CLEARAGAIN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CLEARAGAIN), - SDLK_CRSEL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CRSEL), - SDLK_EXSEL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EXSEL), - - SDLK_KP_00 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_00), - SDLK_KP_000 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_000), - SDLK_THOUSANDSSEPARATOR = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_THOUSANDSSEPARATOR), - SDLK_DECIMALSEPARATOR = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DECIMALSEPARATOR), - SDLK_CURRENCYUNIT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CURRENCYUNIT), - SDLK_CURRENCYSUBUNIT = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CURRENCYSUBUNIT), - SDLK_KP_LEFTPAREN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LEFTPAREN), - SDLK_KP_RIGHTPAREN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_RIGHTPAREN), - SDLK_KP_LEFTBRACE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LEFTBRACE), - SDLK_KP_RIGHTBRACE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_RIGHTBRACE), - SDLK_KP_TAB = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_TAB), - SDLK_KP_BACKSPACE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_BACKSPACE), - SDLK_KP_A = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_A), - SDLK_KP_B = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_B), - SDLK_KP_C = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_C), - SDLK_KP_D = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_D), - SDLK_KP_E = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_E), - SDLK_KP_F = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_F), - SDLK_KP_XOR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_XOR), - SDLK_KP_POWER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_POWER), - SDLK_KP_PERCENT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PERCENT), - SDLK_KP_LESS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_LESS), - SDLK_KP_GREATER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_GREATER), - SDLK_KP_AMPERSAND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_AMPERSAND), - SDLK_KP_DBLAMPERSAND = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DBLAMPERSAND), - SDLK_KP_VERTICALBAR = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_VERTICALBAR), - SDLK_KP_DBLVERTICALBAR = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DBLVERTICALBAR), - SDLK_KP_COLON = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_COLON), - SDLK_KP_HASH = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_HASH), - SDLK_KP_SPACE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_SPACE), - SDLK_KP_AT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_AT), - SDLK_KP_EXCLAM = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_EXCLAM), - SDLK_KP_MEMSTORE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMSTORE), - SDLK_KP_MEMRECALL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMRECALL), - SDLK_KP_MEMCLEAR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMCLEAR), - SDLK_KP_MEMADD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMADD), - SDLK_KP_MEMSUBTRACT = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMSUBTRACT), - SDLK_KP_MEMMULTIPLY = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMMULTIPLY), - SDLK_KP_MEMDIVIDE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_MEMDIVIDE), - SDLK_KP_PLUSMINUS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_PLUSMINUS), - SDLK_KP_CLEAR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_CLEAR), - SDLK_KP_CLEARENTRY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_CLEARENTRY), - SDLK_KP_BINARY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_BINARY), - SDLK_KP_OCTAL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_OCTAL), - SDLK_KP_DECIMAL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_DECIMAL), - SDLK_KP_HEXADECIMAL = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KP_HEXADECIMAL), - - SDLK_LCTRL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LCTRL), - SDLK_LSHIFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LSHIFT), - SDLK_LALT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LALT), - SDLK_LGUI = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_LGUI), - SDLK_RCTRL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RCTRL), - SDLK_RSHIFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RSHIFT), - SDLK_RALT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RALT), - SDLK_RGUI = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_RGUI), - - SDLK_MODE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MODE), - - SDLK_AUDIONEXT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIONEXT), - SDLK_AUDIOPREV = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOPREV), - SDLK_AUDIOSTOP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOSTOP), - SDLK_AUDIOPLAY = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOPLAY), - SDLK_AUDIOMUTE = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOMUTE), - SDLK_MEDIASELECT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MEDIASELECT), - SDLK_WWW = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_WWW), - SDLK_MAIL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_MAIL), - SDLK_CALCULATOR = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CALCULATOR), - SDLK_COMPUTER = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_COMPUTER), - SDLK_AC_SEARCH = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_SEARCH), - SDLK_AC_HOME = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_HOME), - SDLK_AC_BACK = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_BACK), - SDLK_AC_FORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_FORWARD), - SDLK_AC_STOP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_STOP), - SDLK_AC_REFRESH = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_REFRESH), - SDLK_AC_BOOKMARKS = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AC_BOOKMARKS), - - SDLK_BRIGHTNESSDOWN = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_BRIGHTNESSDOWN), - SDLK_BRIGHTNESSUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_BRIGHTNESSUP), - SDLK_DISPLAYSWITCH = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_DISPLAYSWITCH), - SDLK_KBDILLUMTOGGLE = - SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMTOGGLE), - SDLK_KBDILLUMDOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMDOWN), - SDLK_KBDILLUMUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMUP), - SDLK_EJECT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EJECT), - SDLK_SLEEP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SLEEP), - SDLK_APP1 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP1), - SDLK_APP2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP2), - - SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND), - SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD), - - SDLK_SOFTLEFT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SOFTLEFT), - SDLK_SOFTRIGHT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SOFTRIGHT), - SDLK_CALL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_CALL), - SDLK_ENDCALL = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_ENDCALL) -} SDL_KeyCode; - -/** - * \brief Enumeration of valid key mods (possibly OR'd together). - */ -typedef enum -{ - KMOD_NONE = 0x0000, - KMOD_LSHIFT = 0x0001, - KMOD_RSHIFT = 0x0002, - KMOD_LCTRL = 0x0040, - KMOD_RCTRL = 0x0080, - KMOD_LALT = 0x0100, - KMOD_RALT = 0x0200, - KMOD_LGUI = 0x0400, - KMOD_RGUI = 0x0800, - KMOD_NUM = 0x1000, - KMOD_CAPS = 0x2000, - KMOD_MODE = 0x4000, - KMOD_SCROLL = 0x8000, - - KMOD_CTRL = KMOD_LCTRL | KMOD_RCTRL, - KMOD_SHIFT = KMOD_LSHIFT | KMOD_RSHIFT, - KMOD_ALT = KMOD_LALT | KMOD_RALT, - KMOD_GUI = KMOD_LGUI | KMOD_RGUI, - - KMOD_RESERVED = KMOD_SCROLL /* This is for source-level compatibility with SDL 2.0.0. */ -} SDL_Keymod; - -#endif /* SDL_keycode_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_keycode.h.blob deleted file mode 100644 index 76b143d9a7f09dd3b2982ad1e351cadae98cb988..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49862 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 M5A*BVsEiN!e{Q2EbpQYW diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h deleted file mode 100644 index ca59b681..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h +++ /dev/null @@ -1,115 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_loadso.h - * - * System dependent library loading routines - * - * Some things to keep in mind: - * \li These functions only work on C function names. Other languages may - * have name mangling and intrinsic language support that varies from - * compiler to compiler. - * \li Make sure you declare your function pointers with the same calling - * convention as the actual library function. Your code will crash - * mysteriously if you do not do this. - * \li Avoid namespace collisions. If you load a symbol from the library, - * it is not defined whether or not it goes into the global symbol - * namespace for the application. If it does and it conflicts with - * symbols in your code or other shared libraries, you will not get - * the results you expect. :) - */ - -#ifndef SDL_loadso_h_ -#define SDL_loadso_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Dynamically load a shared object. - * - * \param sofile a system-dependent name of the object file - * \returns an opaque pointer to the object handle or NULL if there was an - * error; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LoadFunction - * \sa SDL_UnloadObject - */ -extern DECLSPEC void *SDLCALL SDL_LoadObject(const char *sofile); - -/** - * Look up the address of the named function in a shared object. - * - * This function pointer is no longer valid after calling SDL_UnloadObject(). - * - * This function can only look up C function names. Other languages may have - * name mangling and intrinsic language support that varies from compiler to - * compiler. - * - * Make sure you declare your function pointers with the same calling - * convention as the actual library function. Your code will crash - * mysteriously if you do not do this. - * - * If the requested function doesn't exist, NULL is returned. - * - * \param handle a valid shared object handle returned by SDL_LoadObject() - * \param name the name of the function to look up - * \returns a pointer to the function or NULL if there was an error; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LoadObject - * \sa SDL_UnloadObject - */ -extern DECLSPEC void *SDLCALL SDL_LoadFunction(void *handle, - const char *name); - -/** - * Unload a shared object from memory. - * - * \param handle a valid shared object handle returned by SDL_LoadObject() - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LoadFunction - * \sa SDL_LoadObject - */ -extern DECLSPEC void SDLCALL SDL_UnloadObject(void *handle); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_loadso_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_loadso.h.blob deleted file mode 100644 index f5d6ba8c6c3bfbe33dd5ad37cae8520737fc012f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14265 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 Ij&^|XKT`{vb^rhX diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h deleted file mode 100644 index 482dbefe..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h +++ /dev/null @@ -1,103 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_locale.h - * - * Include file for SDL locale services - */ - -#ifndef _SDL_locale_h -#define _SDL_locale_h - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -/* *INDENT-OFF* */ -extern "C" { -/* *INDENT-ON* */ -#endif - - -typedef struct SDL_Locale -{ - const char *language; /**< A language name, like "en" for English. */ - const char *country; /**< A country, like "US" for America. Can be NULL. */ -} SDL_Locale; - -/** - * Report the user's preferred locale. - * - * This returns an array of SDL_Locale structs, the final item zeroed out. - * When the caller is done with this array, it should call SDL_free() on the - * returned value; all the memory involved is allocated in a single block, so - * a single SDL_free() will suffice. - * - * Returned language strings are in the format xx, where 'xx' is an ISO-639 - * language specifier (such as "en" for English, "de" for German, etc). - * Country strings are in the format YY, where "YY" is an ISO-3166 country - * code (such as "US" for the United States, "CA" for Canada, etc). Country - * might be NULL if there's no specific guidance on them (so you might get { - * "en", "US" } for American English, but { "en", NULL } means "English - * language, generically"). Language strings are never NULL, except to - * terminate the array. - * - * Please note that not all of these strings are 2 characters; some are three - * or more. - * - * The returned list of locales are in the order of the user's preference. For - * example, a German citizen that is fluent in US English and knows enough - * Japanese to navigate around Tokyo might have a list like: { "de", "en_US", - * "jp", NULL }. Someone from England might prefer British English (where - * "color" is spelled "colour", etc), but will settle for anything like it: { - * "en_GB", "en", NULL }. - * - * This function returns NULL on error, including when the platform does not - * supply this information at all. - * - * This might be a "slow" call that has to query the operating system. It's - * best to ask for this once and save the results. However, this list can - * change, usually because the user has changed a system preference outside of - * your program; SDL will send an SDL_LOCALECHANGED event in this case, if - * possible, and you can call this function again to get an updated copy of - * preferred locales. - * - * \return array of locales, terminated with a locale with a NULL language - * field. Will return NULL on error. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_Locale * SDLCALL SDL_GetPreferredLocales(void); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -/* *INDENT-OFF* */ -} -/* *INDENT-ON* */ -#endif -#include "close_code.h" - -#endif /* _SDL_locale_h */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_locale.h.blob deleted file mode 100644 index 47a43149a9c5d57d61b0dd8ef1dd5a693310f988..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14796 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 VM%;LC^vS0_dE=7$*|{Lg{y%inL(BjG diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h deleted file mode 100644 index da733c40..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h +++ /dev/null @@ -1,404 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_log.h - * - * Simple log messages with categories and priorities. - * - * By default logs are quiet, but if you're debugging SDL you might want: - * - * SDL_LogSetAllPriority(SDL_LOG_PRIORITY_WARN); - * - * Here's where the messages go on different platforms: - * Windows: debug output stream - * Android: log output - * Others: standard error output (stderr) - */ - -#ifndef SDL_log_h_ -#define SDL_log_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - - -/** - * \brief The maximum size of a log message prior to SDL 2.0.24 - * - * As of 2.0.24 there is no limit to the length of SDL log messages. - */ -#define SDL_MAX_LOG_MESSAGE 4096 - -/** - * \brief The predefined log categories - * - * By default the application category is enabled at the INFO level, - * the assert category is enabled at the WARN level, test is enabled - * at the VERBOSE level and all other categories are enabled at the - * CRITICAL level. - */ -typedef enum -{ - SDL_LOG_CATEGORY_APPLICATION, - SDL_LOG_CATEGORY_ERROR, - SDL_LOG_CATEGORY_ASSERT, - SDL_LOG_CATEGORY_SYSTEM, - SDL_LOG_CATEGORY_AUDIO, - SDL_LOG_CATEGORY_VIDEO, - SDL_LOG_CATEGORY_RENDER, - SDL_LOG_CATEGORY_INPUT, - SDL_LOG_CATEGORY_TEST, - - /* Reserved for future SDL library use */ - SDL_LOG_CATEGORY_RESERVED1, - SDL_LOG_CATEGORY_RESERVED2, - SDL_LOG_CATEGORY_RESERVED3, - SDL_LOG_CATEGORY_RESERVED4, - SDL_LOG_CATEGORY_RESERVED5, - SDL_LOG_CATEGORY_RESERVED6, - SDL_LOG_CATEGORY_RESERVED7, - SDL_LOG_CATEGORY_RESERVED8, - SDL_LOG_CATEGORY_RESERVED9, - SDL_LOG_CATEGORY_RESERVED10, - - /* Beyond this point is reserved for application use, e.g. - enum { - MYAPP_CATEGORY_AWESOME1 = SDL_LOG_CATEGORY_CUSTOM, - MYAPP_CATEGORY_AWESOME2, - MYAPP_CATEGORY_AWESOME3, - ... - }; - */ - SDL_LOG_CATEGORY_CUSTOM -} SDL_LogCategory; - -/** - * \brief The predefined log priorities - */ -typedef enum -{ - SDL_LOG_PRIORITY_VERBOSE = 1, - SDL_LOG_PRIORITY_DEBUG, - SDL_LOG_PRIORITY_INFO, - SDL_LOG_PRIORITY_WARN, - SDL_LOG_PRIORITY_ERROR, - SDL_LOG_PRIORITY_CRITICAL, - SDL_NUM_LOG_PRIORITIES -} SDL_LogPriority; - - -/** - * Set the priority of all log categories. - * - * \param priority the SDL_LogPriority to assign - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LogSetPriority - */ -extern DECLSPEC void SDLCALL SDL_LogSetAllPriority(SDL_LogPriority priority); - -/** - * Set the priority of a particular log category. - * - * \param category the category to assign a priority to - * \param priority the SDL_LogPriority to assign - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LogGetPriority - * \sa SDL_LogSetAllPriority - */ -extern DECLSPEC void SDLCALL SDL_LogSetPriority(int category, - SDL_LogPriority priority); - -/** - * Get the priority of a particular log category. - * - * \param category the category to query - * \returns the SDL_LogPriority for the requested category - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LogSetPriority - */ -extern DECLSPEC SDL_LogPriority SDLCALL SDL_LogGetPriority(int category); - -/** - * Reset all priorities to default. - * - * This is called by SDL_Quit(). - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LogSetAllPriority - * \sa SDL_LogSetPriority - */ -extern DECLSPEC void SDLCALL SDL_LogResetPriorities(void); - -/** - * Log a message with SDL_LOG_CATEGORY_APPLICATION and SDL_LOG_PRIORITY_INFO. - * - * = * \param fmt a printf() style message format string - * - * \param ... additional parameters matching % tokens in the `fmt` string, if - * any - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LogCritical - * \sa SDL_LogDebug - * \sa SDL_LogError - * \sa SDL_LogInfo - * \sa SDL_LogMessage - * \sa SDL_LogMessageV - * \sa SDL_LogVerbose - * \sa SDL_LogWarn - */ -extern DECLSPEC void SDLCALL SDL_Log(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); - -/** - * Log a message with SDL_LOG_PRIORITY_VERBOSE. - * - * \param category the category of the message - * \param fmt a printf() style message format string - * \param ... additional parameters matching % tokens in the **fmt** string, - * if any - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Log - * \sa SDL_LogCritical - * \sa SDL_LogDebug - * \sa SDL_LogError - * \sa SDL_LogInfo - * \sa SDL_LogMessage - * \sa SDL_LogMessageV - * \sa SDL_LogWarn - */ -extern DECLSPEC void SDLCALL SDL_LogVerbose(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); - -/** - * Log a message with SDL_LOG_PRIORITY_DEBUG. - * - * \param category the category of the message - * \param fmt a printf() style message format string - * \param ... additional parameters matching % tokens in the **fmt** string, - * if any - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Log - * \sa SDL_LogCritical - * \sa SDL_LogError - * \sa SDL_LogInfo - * \sa SDL_LogMessage - * \sa SDL_LogMessageV - * \sa SDL_LogVerbose - * \sa SDL_LogWarn - */ -extern DECLSPEC void SDLCALL SDL_LogDebug(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); - -/** - * Log a message with SDL_LOG_PRIORITY_INFO. - * - * \param category the category of the message - * \param fmt a printf() style message format string - * \param ... additional parameters matching % tokens in the **fmt** string, - * if any - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Log - * \sa SDL_LogCritical - * \sa SDL_LogDebug - * \sa SDL_LogError - * \sa SDL_LogMessage - * \sa SDL_LogMessageV - * \sa SDL_LogVerbose - * \sa SDL_LogWarn - */ -extern DECLSPEC void SDLCALL SDL_LogInfo(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); - -/** - * Log a message with SDL_LOG_PRIORITY_WARN. - * - * \param category the category of the message - * \param fmt a printf() style message format string - * \param ... additional parameters matching % tokens in the **fmt** string, - * if any - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Log - * \sa SDL_LogCritical - * \sa SDL_LogDebug - * \sa SDL_LogError - * \sa SDL_LogInfo - * \sa SDL_LogMessage - * \sa SDL_LogMessageV - * \sa SDL_LogVerbose - */ -extern DECLSPEC void SDLCALL SDL_LogWarn(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); - -/** - * Log a message with SDL_LOG_PRIORITY_ERROR. - * - * \param category the category of the message - * \param fmt a printf() style message format string - * \param ... additional parameters matching % tokens in the **fmt** string, - * if any - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Log - * \sa SDL_LogCritical - * \sa SDL_LogDebug - * \sa SDL_LogInfo - * \sa SDL_LogMessage - * \sa SDL_LogMessageV - * \sa SDL_LogVerbose - * \sa SDL_LogWarn - */ -extern DECLSPEC void SDLCALL SDL_LogError(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); - -/** - * Log a message with SDL_LOG_PRIORITY_CRITICAL. - * - * \param category the category of the message - * \param fmt a printf() style message format string - * \param ... additional parameters matching % tokens in the **fmt** string, - * if any - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Log - * \sa SDL_LogDebug - * \sa SDL_LogError - * \sa SDL_LogInfo - * \sa SDL_LogMessage - * \sa SDL_LogMessageV - * \sa SDL_LogVerbose - * \sa SDL_LogWarn - */ -extern DECLSPEC void SDLCALL SDL_LogCritical(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); - -/** - * Log a message with the specified category and priority. - * - * \param category the category of the message - * \param priority the priority of the message - * \param fmt a printf() style message format string - * \param ... additional parameters matching % tokens in the **fmt** string, - * if any - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Log - * \sa SDL_LogCritical - * \sa SDL_LogDebug - * \sa SDL_LogError - * \sa SDL_LogInfo - * \sa SDL_LogMessageV - * \sa SDL_LogVerbose - * \sa SDL_LogWarn - */ -extern DECLSPEC void SDLCALL SDL_LogMessage(int category, - SDL_LogPriority priority, - SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(3); - -/** - * Log a message with the specified category and priority. - * - * \param category the category of the message - * \param priority the priority of the message - * \param fmt a printf() style message format string - * \param ap a variable argument list - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Log - * \sa SDL_LogCritical - * \sa SDL_LogDebug - * \sa SDL_LogError - * \sa SDL_LogInfo - * \sa SDL_LogMessage - * \sa SDL_LogVerbose - * \sa SDL_LogWarn - */ -extern DECLSPEC void SDLCALL SDL_LogMessageV(int category, - SDL_LogPriority priority, - const char *fmt, va_list ap); - -/** - * The prototype for the log output callback function. - * - * This function is called by SDL when there is new text to be logged. - * - * \param userdata what was passed as `userdata` to SDL_LogSetOutputFunction() - * \param category the category of the message - * \param priority the priority of the message - * \param message the message being output - */ -typedef void (SDLCALL *SDL_LogOutputFunction)(void *userdata, int category, SDL_LogPriority priority, const char *message); - -/** - * Get the current log output function. - * - * \param callback an SDL_LogOutputFunction filled in with the current log - * callback - * \param userdata a pointer filled in with the pointer that is passed to - * `callback` - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LogSetOutputFunction - */ -extern DECLSPEC void SDLCALL SDL_LogGetOutputFunction(SDL_LogOutputFunction *callback, void **userdata); - -/** - * Replace the default log output function with one of your own. - * - * \param callback an SDL_LogOutputFunction to call instead of the default - * \param userdata a pointer that is passed to `callback` - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LogGetOutputFunction - */ -extern DECLSPEC void SDLCALL SDL_LogSetOutputFunction(SDL_LogOutputFunction callback, void *userdata); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_log_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_log.h.blob deleted file mode 100644 index f61bc3f3e3d2153a1ff78738dbc75cce3ecc0bed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26012 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 DwU!lg diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h deleted file mode 100644 index 5cc8e591..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h +++ /dev/null @@ -1,282 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_main_h_ -#define SDL_main_h_ - -#include "SDL_stdinc.h" - -/** - * \file SDL_main.h - * - * Redefine main() on some platforms so that it is called by SDL. - */ - -#ifndef SDL_MAIN_HANDLED -#if defined(__WIN32__) -/* On Windows SDL provides WinMain(), which parses the command line and passes - the arguments to your main function. - - If you provide your own WinMain(), you may define SDL_MAIN_HANDLED - */ -#define SDL_MAIN_AVAILABLE - -#elif defined(__WINRT__) -/* On WinRT, SDL provides a main function that initializes CoreApplication, - creating an instance of IFrameworkView in the process. - - Please note that #include'ing SDL_main.h is not enough to get a main() - function working. In non-XAML apps, the file, - src/main/winrt/SDL_WinRT_main_NonXAML.cpp, or a copy of it, must be compiled - into the app itself. In XAML apps, the function, SDL_WinRTRunApp must be - called, with a pointer to the Direct3D-hosted XAML control passed in. -*/ -#define SDL_MAIN_NEEDED - -#elif defined(__GDK__) -/* On GDK, SDL provides a main function that initializes the game runtime. - - Please note that #include'ing SDL_main.h is not enough to get a main() - function working. You must either link against SDL2main or, if not possible, - call the SDL_GDKRunApp function from your entry point. -*/ -#define SDL_MAIN_NEEDED - -#elif defined(__IPHONEOS__) -/* On iOS SDL provides a main function that creates an application delegate - and starts the iOS application run loop. - - If you link with SDL dynamically on iOS, the main function can't be in a - shared library, so you need to link with libSDLmain.a, which includes a - stub main function that calls into the shared library to start execution. - - See src/video/uikit/SDL_uikitappdelegate.m for more details. - */ -#define SDL_MAIN_NEEDED - -#elif defined(__ANDROID__) -/* On Android SDL provides a Java class in SDLActivity.java that is the - main activity entry point. - - See docs/README-android.md for more details on extending that class. - */ -#define SDL_MAIN_NEEDED - -/* We need to export SDL_main so it can be launched from Java */ -#define SDLMAIN_DECLSPEC DECLSPEC - -#elif defined(__NACL__) -/* On NACL we use ppapi_simple to set up the application helper code, - then wait for the first PSE_INSTANCE_DIDCHANGEVIEW event before - starting the user main function. - All user code is run in a separate thread by ppapi_simple, thus - allowing for blocking io to take place via nacl_io -*/ -#define SDL_MAIN_NEEDED - -#elif defined(__PSP__) -/* On PSP SDL provides a main function that sets the module info, - activates the GPU and starts the thread required to be able to exit - the software. - - If you provide this yourself, you may define SDL_MAIN_HANDLED - */ -#define SDL_MAIN_AVAILABLE - -#elif defined(__PS2__) -#define SDL_MAIN_AVAILABLE - -#define SDL_PS2_SKIP_IOP_RESET() \ - void reset_IOP(); \ - void reset_IOP() {} - -#elif defined(__3DS__) -/* - On N3DS, SDL provides a main function that sets up the screens - and storage. - - If you provide this yourself, you may define SDL_MAIN_HANDLED -*/ -#define SDL_MAIN_AVAILABLE - -#endif -#endif /* SDL_MAIN_HANDLED */ - -#ifndef SDLMAIN_DECLSPEC -#define SDLMAIN_DECLSPEC -#endif - -/** - * \file SDL_main.h - * - * The application's main() function must be called with C linkage, - * and should be declared like this: - * \code - * #ifdef __cplusplus - * extern "C" - * #endif - * int main(int argc, char *argv[]) - * { - * } - * \endcode - */ - -#if defined(SDL_MAIN_NEEDED) || defined(SDL_MAIN_AVAILABLE) -#define main SDL_main -#endif - -#include "begin_code.h" -#ifdef __cplusplus -extern "C" { -#endif - -/** - * The prototype for the application's main() function - */ -typedef int (*SDL_main_func)(int argc, char *argv[]); -extern SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[]); - - -/** - * Circumvent failure of SDL_Init() when not using SDL_main() as an entry - * point. - * - * This function is defined in SDL_main.h, along with the preprocessor rule to - * redefine main() as SDL_main(). Thus to ensure that your main() function - * will not be changed it is necessary to define SDL_MAIN_HANDLED before - * including SDL.h. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_Init - */ -extern DECLSPEC void SDLCALL SDL_SetMainReady(void); - -#if defined(__WIN32__) || defined(__GDK__) - -/** - * Register a win32 window class for SDL's use. - * - * This can be called to set the application window class at startup. It is - * safe to call this multiple times, as long as every call is eventually - * paired with a call to SDL_UnregisterApp, but a second registration attempt - * while a previous registration is still active will be ignored, other than - * to increment a counter. - * - * Most applications do not need to, and should not, call this directly; SDL - * will call it when initializing the video subsystem. - * - * \param name the window class name, in UTF-8 encoding. If NULL, SDL - * currently uses "SDL_app" but this isn't guaranteed. - * \param style the value to use in WNDCLASSEX::style. If `name` is NULL, SDL - * currently uses `(CS_BYTEALIGNCLIENT | CS_OWNDC)` regardless of - * what is specified here. - * \param hInst the HINSTANCE to use in WNDCLASSEX::hInstance. If zero, SDL - * will use `GetModuleHandle(NULL)` instead. - * \returns 0 on success, -1 on error. SDL_GetError() may have details. - * - * \since This function is available since SDL 2.0.2. - */ -extern DECLSPEC int SDLCALL SDL_RegisterApp(const char *name, Uint32 style, void *hInst); - -/** - * Deregister the win32 window class from an SDL_RegisterApp call. - * - * This can be called to undo the effects of SDL_RegisterApp. - * - * Most applications do not need to, and should not, call this directly; SDL - * will call it when deinitializing the video subsystem. - * - * It is safe to call this multiple times, as long as every call is eventually - * paired with a prior call to SDL_RegisterApp. The window class will only be - * deregistered when the registration counter in SDL_RegisterApp decrements to - * zero through calls to this function. - * - * \since This function is available since SDL 2.0.2. - */ -extern DECLSPEC void SDLCALL SDL_UnregisterApp(void); - -#endif /* defined(__WIN32__) || defined(__GDK__) */ - - -#ifdef __WINRT__ - -/** - * Initialize and launch an SDL/WinRT application. - * - * \param mainFunction the SDL app's C-style main(), an SDL_main_func - * \param reserved reserved for future use; should be NULL - * \returns 0 on success or -1 on failure; call SDL_GetError() to retrieve - * more information on the failure. - * - * \since This function is available since SDL 2.0.3. - */ -extern DECLSPEC int SDLCALL SDL_WinRTRunApp(SDL_main_func mainFunction, void * reserved); - -#endif /* __WINRT__ */ - -#if defined(__IPHONEOS__) - -/** - * Initializes and launches an SDL application. - * - * \param argc The argc parameter from the application's main() function - * \param argv The argv parameter from the application's main() function - * \param mainFunction The SDL app's C-style main(), an SDL_main_func - * \return the return value from mainFunction - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_UIKitRunApp(int argc, char *argv[], SDL_main_func mainFunction); - -#endif /* __IPHONEOS__ */ - -#ifdef __GDK__ - -/** - * Initialize and launch an SDL GDK application. - * - * \param mainFunction the SDL app's C-style main(), an SDL_main_func - * \param reserved reserved for future use; should be NULL - * \returns 0 on success or -1 on failure; call SDL_GetError() to retrieve - * more information on the failure. - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC int SDLCALL SDL_GDKRunApp(SDL_main_func mainFunction, void *reserved); - -/** - * Callback from the application to let the suspend continue. - * - * \since This function is available since SDL 2.28.0. - */ -extern DECLSPEC void SDLCALL SDL_GDKSuspendComplete(void); - -#endif /* __GDK__ */ - -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_main_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_main.h.blob deleted file mode 100644 index 0dba4adfbaac5845c6f43a1b0a1ac0fa9a4b1914..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13254 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 A6951J diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h deleted file mode 100644 index 7896fd12..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h +++ /dev/null @@ -1,193 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_messagebox_h_ -#define SDL_messagebox_h_ - -#include "SDL_stdinc.h" -#include "SDL_video.h" /* For SDL_Window */ - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * SDL_MessageBox flags. If supported will display warning icon, etc. - */ -typedef enum -{ - SDL_MESSAGEBOX_ERROR = 0x00000010, /**< error dialog */ - SDL_MESSAGEBOX_WARNING = 0x00000020, /**< warning dialog */ - SDL_MESSAGEBOX_INFORMATION = 0x00000040, /**< informational dialog */ - SDL_MESSAGEBOX_BUTTONS_LEFT_TO_RIGHT = 0x00000080, /**< buttons placed left to right */ - SDL_MESSAGEBOX_BUTTONS_RIGHT_TO_LEFT = 0x00000100 /**< buttons placed right to left */ -} SDL_MessageBoxFlags; - -/** - * Flags for SDL_MessageBoxButtonData. - */ -typedef enum -{ - SDL_MESSAGEBOX_BUTTON_RETURNKEY_DEFAULT = 0x00000001, /**< Marks the default button when return is hit */ - SDL_MESSAGEBOX_BUTTON_ESCAPEKEY_DEFAULT = 0x00000002 /**< Marks the default button when escape is hit */ -} SDL_MessageBoxButtonFlags; - -/** - * Individual button data. - */ -typedef struct -{ - Uint32 flags; /**< ::SDL_MessageBoxButtonFlags */ - int buttonid; /**< User defined button id (value returned via SDL_ShowMessageBox) */ - const char * text; /**< The UTF-8 button text */ -} SDL_MessageBoxButtonData; - -/** - * RGB value used in a message box color scheme - */ -typedef struct -{ - Uint8 r, g, b; -} SDL_MessageBoxColor; - -typedef enum -{ - SDL_MESSAGEBOX_COLOR_BACKGROUND, - SDL_MESSAGEBOX_COLOR_TEXT, - SDL_MESSAGEBOX_COLOR_BUTTON_BORDER, - SDL_MESSAGEBOX_COLOR_BUTTON_BACKGROUND, - SDL_MESSAGEBOX_COLOR_BUTTON_SELECTED, - SDL_MESSAGEBOX_COLOR_MAX -} SDL_MessageBoxColorType; - -/** - * A set of colors to use for message box dialogs - */ -typedef struct -{ - SDL_MessageBoxColor colors[SDL_MESSAGEBOX_COLOR_MAX]; -} SDL_MessageBoxColorScheme; - -/** - * MessageBox structure containing title, text, window, etc. - */ -typedef struct -{ - Uint32 flags; /**< ::SDL_MessageBoxFlags */ - SDL_Window *window; /**< Parent window, can be NULL */ - const char *title; /**< UTF-8 title */ - const char *message; /**< UTF-8 message text */ - - int numbuttons; - const SDL_MessageBoxButtonData *buttons; - - const SDL_MessageBoxColorScheme *colorScheme; /**< ::SDL_MessageBoxColorScheme, can be NULL to use system settings */ -} SDL_MessageBoxData; - -/** - * Create a modal message box. - * - * If your needs aren't complex, it might be easier to use - * SDL_ShowSimpleMessageBox. - * - * This function should be called on the thread that created the parent - * window, or on the main thread if the messagebox has no parent. It will - * block execution of that thread until the user clicks a button or closes the - * messagebox. - * - * This function may be called at any time, even before SDL_Init(). This makes - * it useful for reporting errors like a failure to create a renderer or - * OpenGL context. - * - * On X11, SDL rolls its own dialog box with X11 primitives instead of a - * formal toolkit like GTK+ or Qt. - * - * Note that if SDL_Init() would fail because there isn't any available video - * target, this function is likely to fail for the same reasons. If this is a - * concern, check the return value from this function and fall back to writing - * to stderr if you can. - * - * \param messageboxdata the SDL_MessageBoxData structure with title, text and - * other options - * \param buttonid the pointer to which user id of hit button should be copied - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ShowSimpleMessageBox - */ -extern DECLSPEC int SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid); - -/** - * Display a simple modal message box. - * - * If your needs aren't complex, this function is preferred over - * SDL_ShowMessageBox. - * - * `flags` may be any of the following: - * - * - `SDL_MESSAGEBOX_ERROR`: error dialog - * - `SDL_MESSAGEBOX_WARNING`: warning dialog - * - `SDL_MESSAGEBOX_INFORMATION`: informational dialog - * - * This function should be called on the thread that created the parent - * window, or on the main thread if the messagebox has no parent. It will - * block execution of that thread until the user clicks a button or closes the - * messagebox. - * - * This function may be called at any time, even before SDL_Init(). This makes - * it useful for reporting errors like a failure to create a renderer or - * OpenGL context. - * - * On X11, SDL rolls its own dialog box with X11 primitives instead of a - * formal toolkit like GTK+ or Qt. - * - * Note that if SDL_Init() would fail because there isn't any available video - * target, this function is likely to fail for the same reasons. If this is a - * concern, check the return value from this function and fall back to writing - * to stderr if you can. - * - * \param flags an SDL_MessageBoxFlags value - * \param title UTF-8 title text - * \param message UTF-8 message text - * \param window the parent window, or NULL for no parent - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ShowMessageBox - */ -extern DECLSPEC int SDLCALL SDL_ShowSimpleMessageBox(Uint32 flags, const char *title, const char *message, SDL_Window *window); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_messagebox_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_messagebox.h.blob deleted file mode 100644 index 81756ddec207d6c5ac27077099a1520fc7d9f0a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20662 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%0D_?8X{i^*cH*uVU^yF;ZeDmx6M4oCQzTH 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h deleted file mode 100644 index f36e3487..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h +++ /dev/null @@ -1,113 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_metal.h - * - * Header file for functions to creating Metal layers and views on SDL windows. - */ - -#ifndef SDL_metal_h_ -#define SDL_metal_h_ - -#include "SDL_video.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \brief A handle to a CAMetalLayer-backed NSView (macOS) or UIView (iOS/tvOS). - * - * \note This can be cast directly to an NSView or UIView. - */ -typedef void *SDL_MetalView; - -/** - * \name Metal support functions - */ -/* @{ */ - -/** - * Create a CAMetalLayer-backed NSView/UIView and attach it to the specified - * window. - * - * On macOS, this does *not* associate a MTLDevice with the CAMetalLayer on - * its own. It is up to user code to do that. - * - * The returned handle can be casted directly to a NSView or UIView. To access - * the backing CAMetalLayer, call SDL_Metal_GetLayer(). - * - * \since This function is available since SDL 2.0.12. - * - * \sa SDL_Metal_DestroyView - * \sa SDL_Metal_GetLayer - */ -extern DECLSPEC SDL_MetalView SDLCALL SDL_Metal_CreateView(SDL_Window * window); - -/** - * Destroy an existing SDL_MetalView object. - * - * This should be called before SDL_DestroyWindow, if SDL_Metal_CreateView was - * called after SDL_CreateWindow. - * - * \since This function is available since SDL 2.0.12. - * - * \sa SDL_Metal_CreateView - */ -extern DECLSPEC void SDLCALL SDL_Metal_DestroyView(SDL_MetalView view); - -/** - * Get a pointer to the backing CAMetalLayer for the given view. - * - * \since This function is available since SDL 2.0.14. - * - * \sa SDL_Metal_CreateView - */ -extern DECLSPEC void *SDLCALL SDL_Metal_GetLayer(SDL_MetalView view); - -/** - * Get the size of a window's underlying drawable in pixels (for use with - * setting viewport, scissor & etc). - * - * \param window SDL_Window from which the drawable size should be queried - * \param w Pointer to variable for storing the width in pixels, may be NULL - * \param h Pointer to variable for storing the height in pixels, may be NULL - * - * \since This function is available since SDL 2.0.14. - * - * \sa SDL_GetWindowSize - * \sa SDL_CreateWindow - */ -extern DECLSPEC void SDLCALL SDL_Metal_GetDrawableSize(SDL_Window* window, int *w, - int *h); - -/* @} *//* Metal support functions */ - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_metal_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_metal.h.blob deleted file mode 100644 index 376b2d3978126fb9bd005b671d48b3f1f22fc52e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14725 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 PwR`q%6F-eDhydfiVUaar diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h deleted file mode 100644 index 13ed9c77..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_misc.h - * - * \brief Include file for SDL API functions that don't fit elsewhere. - */ - -#ifndef SDL_misc_h_ -#define SDL_misc_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" - -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Open a URL/URI in the browser or other appropriate external application. - * - * Open a URL in a separate, system-provided application. How this works will - * vary wildly depending on the platform. This will likely launch what makes - * sense to handle a specific URL's protocol (a web browser for `http://`, - * etc), but it might also be able to launch file managers for directories and - * other things. - * - * What happens when you open a URL varies wildly as well: your game window - * may lose focus (and may or may not lose focus if your game was fullscreen - * or grabbing input at the time). On mobile devices, your app will likely - * move to the background or your process might be paused. Any given platform - * may or may not handle a given URL. - * - * If this is unimplemented (or simply unavailable) for a platform, this will - * fail with an error. A successful result does not mean the URL loaded, just - * that we launched _something_ to handle it (or at least believe we did). - * - * All this to say: this function can be useful, but you should definitely - * test it on every platform you target. - * - * \param url A valid URL/URI to open. Use `file:///full/path/to/file` for - * local files, if supported. - * \returns 0 on success, or -1 on error; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC int SDLCALL SDL_OpenURL(const char *url); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_misc_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_misc.h.blob deleted file mode 100644 index 60af0e8985e95fe2f0490b76ea3f0b4ee8e69331..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13785 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 L^XK610m%Ljvo-vx diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h deleted file mode 100644 index aa075757..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h +++ /dev/null @@ -1,464 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_mouse.h - * - * Include file for SDL mouse event handling. - */ - -#ifndef SDL_mouse_h_ -#define SDL_mouse_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_video.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct SDL_Cursor SDL_Cursor; /**< Implementation dependent */ - -/** - * \brief Cursor types for SDL_CreateSystemCursor(). - */ -typedef enum -{ - SDL_SYSTEM_CURSOR_ARROW, /**< Arrow */ - SDL_SYSTEM_CURSOR_IBEAM, /**< I-beam */ - SDL_SYSTEM_CURSOR_WAIT, /**< Wait */ - SDL_SYSTEM_CURSOR_CROSSHAIR, /**< Crosshair */ - SDL_SYSTEM_CURSOR_WAITARROW, /**< Small wait cursor (or Wait if not available) */ - SDL_SYSTEM_CURSOR_SIZENWSE, /**< Double arrow pointing northwest and southeast */ - SDL_SYSTEM_CURSOR_SIZENESW, /**< Double arrow pointing northeast and southwest */ - SDL_SYSTEM_CURSOR_SIZEWE, /**< Double arrow pointing west and east */ - SDL_SYSTEM_CURSOR_SIZENS, /**< Double arrow pointing north and south */ - SDL_SYSTEM_CURSOR_SIZEALL, /**< Four pointed arrow pointing north, south, east, and west */ - SDL_SYSTEM_CURSOR_NO, /**< Slashed circle or crossbones */ - SDL_SYSTEM_CURSOR_HAND, /**< Hand */ - SDL_NUM_SYSTEM_CURSORS -} SDL_SystemCursor; - -/** - * \brief Scroll direction types for the Scroll event - */ -typedef enum -{ - SDL_MOUSEWHEEL_NORMAL, /**< The scroll direction is normal */ - SDL_MOUSEWHEEL_FLIPPED /**< The scroll direction is flipped / natural */ -} SDL_MouseWheelDirection; - -/* Function prototypes */ - -/** - * Get the window which currently has mouse focus. - * - * \returns the window with mouse focus. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_Window * SDLCALL SDL_GetMouseFocus(void); - -/** - * Retrieve the current state of the mouse. - * - * The current button state is returned as a button bitmask, which can be - * tested using the `SDL_BUTTON(X)` macros (where `X` is generally 1 for the - * left, 2 for middle, 3 for the right button), and `x` and `y` are set to the - * mouse cursor position relative to the focus window. You can pass NULL for - * either `x` or `y`. - * - * \param x the x coordinate of the mouse cursor position relative to the - * focus window - * \param y the y coordinate of the mouse cursor position relative to the - * focus window - * \returns a 32-bit button bitmask of the current button state. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetGlobalMouseState - * \sa SDL_GetRelativeMouseState - * \sa SDL_PumpEvents - */ -extern DECLSPEC Uint32 SDLCALL SDL_GetMouseState(int *x, int *y); - -/** - * Get the current state of the mouse in relation to the desktop. - * - * This works similarly to SDL_GetMouseState(), but the coordinates will be - * reported relative to the top-left of the desktop. This can be useful if you - * need to track the mouse outside of a specific window and SDL_CaptureMouse() - * doesn't fit your needs. For example, it could be useful if you need to - * track the mouse while dragging a window, where coordinates relative to a - * window might not be in sync at all times. - * - * Note: SDL_GetMouseState() returns the mouse position as SDL understands it - * from the last pump of the event queue. This function, however, queries the - * OS for the current mouse position, and as such, might be a slightly less - * efficient function. Unless you know what you're doing and have a good - * reason to use this function, you probably want SDL_GetMouseState() instead. - * - * \param x filled in with the current X coord relative to the desktop; can be - * NULL - * \param y filled in with the current Y coord relative to the desktop; can be - * NULL - * \returns the current button state as a bitmask which can be tested using - * the SDL_BUTTON(X) macros. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_CaptureMouse - */ -extern DECLSPEC Uint32 SDLCALL SDL_GetGlobalMouseState(int *x, int *y); - -/** - * Retrieve the relative state of the mouse. - * - * The current button state is returned as a button bitmask, which can be - * tested using the `SDL_BUTTON(X)` macros (where `X` is generally 1 for the - * left, 2 for middle, 3 for the right button), and `x` and `y` are set to the - * mouse deltas since the last call to SDL_GetRelativeMouseState() or since - * event initialization. You can pass NULL for either `x` or `y`. - * - * \param x a pointer filled with the last recorded x coordinate of the mouse - * \param y a pointer filled with the last recorded y coordinate of the mouse - * \returns a 32-bit button bitmask of the relative button state. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetMouseState - */ -extern DECLSPEC Uint32 SDLCALL SDL_GetRelativeMouseState(int *x, int *y); - -/** - * Move the mouse cursor to the given position within the window. - * - * This function generates a mouse motion event if relative mode is not - * enabled. If relative mode is enabled, you can force mouse events for the - * warp by setting the SDL_HINT_MOUSE_RELATIVE_WARP_MOTION hint. - * - * Note that this function will appear to succeed, but not actually move the - * mouse when used over Microsoft Remote Desktop. - * - * \param window the window to move the mouse into, or NULL for the current - * mouse focus - * \param x the x coordinate within the window - * \param y the y coordinate within the window - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WarpMouseGlobal - */ -extern DECLSPEC void SDLCALL SDL_WarpMouseInWindow(SDL_Window * window, - int x, int y); - -/** - * Move the mouse to the given position in global screen space. - * - * This function generates a mouse motion event. - * - * A failure of this function usually means that it is unsupported by a - * platform. - * - * Note that this function will appear to succeed, but not actually move the - * mouse when used over Microsoft Remote Desktop. - * - * \param x the x coordinate - * \param y the y coordinate - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_WarpMouseInWindow - */ -extern DECLSPEC int SDLCALL SDL_WarpMouseGlobal(int x, int y); - -/** - * Set relative mouse mode. - * - * While the mouse is in relative mode, the cursor is hidden, the mouse - * position is constrained to the window, and SDL will report continuous - * relative mouse motion even if the mouse is at the edge of the window. - * - * This function will flush any pending mouse motion. - * - * \param enabled SDL_TRUE to enable relative mode, SDL_FALSE to disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * If relative mode is not supported, this returns -1. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRelativeMouseMode - */ -extern DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); - -/** - * Capture the mouse and to track input outside an SDL window. - * - * Capturing enables your app to obtain mouse events globally, instead of just - * within your window. Not all video targets support this function. When - * capturing is enabled, the current window will get all mouse events, but - * unlike relative mode, no change is made to the cursor and it is not - * restrained to your window. - * - * This function may also deny mouse input to other windows--both those in - * your application and others on the system--so you should use this function - * sparingly, and in small bursts. For example, you might want to track the - * mouse while the user is dragging something, until the user releases a mouse - * button. It is not recommended that you capture the mouse for long periods - * of time, such as the entire time your app is running. For that, you should - * probably use SDL_SetRelativeMouseMode() or SDL_SetWindowGrab(), depending - * on your goals. - * - * While captured, mouse events still report coordinates relative to the - * current (foreground) window, but those coordinates may be outside the - * bounds of the window (including negative values). Capturing is only allowed - * for the foreground window. If the window loses focus while capturing, the - * capture will be disabled automatically. - * - * While capturing is enabled, the current window will have the - * `SDL_WINDOW_MOUSE_CAPTURE` flag set. - * - * Please note that as of SDL 2.0.22, SDL will attempt to "auto capture" the - * mouse while the user is pressing a button; this is to try and make mouse - * behavior more consistent between platforms, and deal with the common case - * of a user dragging the mouse outside of the window. This means that if you - * are calling SDL_CaptureMouse() only to deal with this situation, you no - * longer have to (although it is safe to do so). If this causes problems for - * your app, you can disable auto capture by setting the - * `SDL_HINT_MOUSE_AUTO_CAPTURE` hint to zero. - * - * \param enabled SDL_TRUE to enable capturing, SDL_FALSE to disable. - * \returns 0 on success or -1 if not supported; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_GetGlobalMouseState - */ -extern DECLSPEC int SDLCALL SDL_CaptureMouse(SDL_bool enabled); - -/** - * Query whether relative mouse mode is enabled. - * - * \returns SDL_TRUE if relative mode is enabled or SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetRelativeMouseMode - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GetRelativeMouseMode(void); - -/** - * Create a cursor using the specified bitmap data and mask (in MSB format). - * - * `mask` has to be in MSB (Most Significant Bit) format. - * - * The cursor width (`w`) must be a multiple of 8 bits. - * - * The cursor is created in black and white according to the following: - * - * - data=0, mask=1: white - * - data=1, mask=1: black - * - data=0, mask=0: transparent - * - data=1, mask=0: inverted color if possible, black if not. - * - * Cursors created with this function must be freed with SDL_FreeCursor(). - * - * If you want to have a color cursor, or create your cursor from an - * SDL_Surface, you should use SDL_CreateColorCursor(). Alternately, you can - * hide the cursor and draw your own as part of your game's rendering, but it - * will be bound to the framerate. - * - * Also, since SDL 2.0.0, SDL_CreateSystemCursor() is available, which - * provides twelve readily available system cursors to pick from. - * - * \param data the color value for each pixel of the cursor - * \param mask the mask value for each pixel of the cursor - * \param w the width of the cursor - * \param h the height of the cursor - * \param hot_x the X-axis location of the upper left corner of the cursor - * relative to the actual mouse position - * \param hot_y the Y-axis location of the upper left corner of the cursor - * relative to the actual mouse position - * \returns a new cursor with the specified parameters on success or NULL on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FreeCursor - * \sa SDL_SetCursor - * \sa SDL_ShowCursor - */ -extern DECLSPEC SDL_Cursor *SDLCALL SDL_CreateCursor(const Uint8 * data, - const Uint8 * mask, - int w, int h, int hot_x, - int hot_y); - -/** - * Create a color cursor. - * - * \param surface an SDL_Surface structure representing the cursor image - * \param hot_x the x position of the cursor hot spot - * \param hot_y the y position of the cursor hot spot - * \returns the new cursor on success or NULL on failure; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateCursor - * \sa SDL_FreeCursor - */ -extern DECLSPEC SDL_Cursor *SDLCALL SDL_CreateColorCursor(SDL_Surface *surface, - int hot_x, - int hot_y); - -/** - * Create a system cursor. - * - * \param id an SDL_SystemCursor enum value - * \returns a cursor on success or NULL on failure; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FreeCursor - */ -extern DECLSPEC SDL_Cursor *SDLCALL SDL_CreateSystemCursor(SDL_SystemCursor id); - -/** - * Set the active cursor. - * - * This function sets the currently active cursor to the specified one. If the - * cursor is currently visible, the change will be immediately represented on - * the display. SDL_SetCursor(NULL) can be used to force cursor redraw, if - * this is desired for any reason. - * - * \param cursor a cursor to make active - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateCursor - * \sa SDL_GetCursor - * \sa SDL_ShowCursor - */ -extern DECLSPEC void SDLCALL SDL_SetCursor(SDL_Cursor * cursor); - -/** - * Get the active cursor. - * - * This function returns a pointer to the current cursor which is owned by the - * library. It is not necessary to free the cursor with SDL_FreeCursor(). - * - * \returns the active cursor or NULL if there is no mouse. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetCursor - */ -extern DECLSPEC SDL_Cursor *SDLCALL SDL_GetCursor(void); - -/** - * Get the default cursor. - * - * You do not have to call SDL_FreeCursor() on the return value, but it is - * safe to do so. - * - * \returns the default cursor on success or NULL on failure. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateSystemCursor - */ -extern DECLSPEC SDL_Cursor *SDLCALL SDL_GetDefaultCursor(void); - -/** - * Free a previously-created cursor. - * - * Use this function to free cursor resources created with SDL_CreateCursor(), - * SDL_CreateColorCursor() or SDL_CreateSystemCursor(). - * - * \param cursor the cursor to free - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateColorCursor - * \sa SDL_CreateCursor - * \sa SDL_CreateSystemCursor - */ -extern DECLSPEC void SDLCALL SDL_FreeCursor(SDL_Cursor * cursor); - -/** - * Toggle whether or not the cursor is shown. - * - * The cursor starts off displayed but can be turned off. Passing `SDL_ENABLE` - * displays the cursor and passing `SDL_DISABLE` hides it. - * - * The current state of the mouse cursor can be queried by passing - * `SDL_QUERY`; either `SDL_DISABLE` or `SDL_ENABLE` will be returned. - * - * \param toggle `SDL_ENABLE` to show the cursor, `SDL_DISABLE` to hide it, - * `SDL_QUERY` to query the current state without changing it. - * \returns `SDL_ENABLE` if the cursor is shown, or `SDL_DISABLE` if the - * cursor is hidden, or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateCursor - * \sa SDL_SetCursor - */ -extern DECLSPEC int SDLCALL SDL_ShowCursor(int toggle); - -/** - * Used as a mask when testing buttons in buttonstate. - * - * - Button 1: Left mouse button - * - Button 2: Middle mouse button - * - Button 3: Right mouse button - */ -#define SDL_BUTTON(X) (1 << ((X)-1)) -#define SDL_BUTTON_LEFT 1 -#define SDL_BUTTON_MIDDLE 2 -#define SDL_BUTTON_RIGHT 3 -#define SDL_BUTTON_X1 4 -#define SDL_BUTTON_X2 5 -#define SDL_BUTTON_LMASK SDL_BUTTON(SDL_BUTTON_LEFT) -#define SDL_BUTTON_MMASK SDL_BUTTON(SDL_BUTTON_MIDDLE) -#define SDL_BUTTON_RMASK SDL_BUTTON(SDL_BUTTON_RIGHT) -#define SDL_BUTTON_X1MASK SDL_BUTTON(SDL_BUTTON_X1) -#define SDL_BUTTON_X2MASK SDL_BUTTON(SDL_BUTTON_X2) - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_mouse_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mouse.h.blob deleted file mode 100644 index 7dc2755b61a6336843f5d6f1199bc0ceb821577e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31165 zcmd^oeVANTndiL$V_QH>7&amx++j6z$FA;lC&UmsflksPt?6{r-628QRNtz)Reh7H zy2ZV>`Xk1`vOO%rWJSjr+L1gyK040qjtM&xM_fllGy;k<exOJmRvpxFW*%i72XU80 zL+|f>&pG#_>Q;3FuK!G+s!r;jd(L~_kKg-o&aJG~URq<^^|+>M-IGq)>MnKfu)IUQ zQ|<OG&+pD#`EJk6b(c-M(v{QB$(77XaY<d%(~f({t`yUG+qH7O<IZkrI)iq$Q}3>M zZns^@m1=pbdu+$<-tMebv@4mMlefAi1(mTrIe)gwSDydbrpIGfvbOJa(^aoKlPPCC z-}J4FPlE(qOLn%K*V5gyF__gX&)5~;#Y)ljaeMz)W1})nc*_)Pc0Q4!8+LaWOEtQ* z^4ov;l_ocXt2H-yMFq>GYhH{}#gek=PsT1JFJWrt>Ym<0wP$0Cl`wxuER{G@)Kq*u zI|~JvHmi%z>G}Dr<CLgl1Jih@s^i%+y_u3-jtv%@&h(wKoy$zyc?%-1ReZ}0I=52H zf?cvQS=X8N#0~5IBHKi4xoXX>6dW3rG@ixNf`_2oEI|Pm*9WiW7R+2I(pKb7S|xji zNVxyhfjFHWO;illOxBP{U9nKHTTsOe7rO7+#VNB?r}#0Zi+;Xcw%ka!R`gp_HVgXv zhlb<i2iD;`wHzyIz~tDJg=)Iw6tj!3(_~Ga%9dNL)|>UZb9t+fY%)<^_--xdXLb(m z9*9k?XbZ?^po^-A>Jb?%=QxLKD`PvELambXZKvWz*cZhyMg*Gho!RXzFsc9xsT(0t z_S5C^Vxou8J^zq*IB}J=iVb5;ycAhpGGZz|V1kOtIuL-Vy2N96xk+o$DW<WEr7XDW zRC5)-#hL@T0nG9O0a))^>Tuc2vBEt4)}go(lO-f_CzuAa*e3gjK)n+smC1n7P|Qr( zoXMCa@JuW>86cIfBH>x}jEQl#Xu&o6KuF<2SOl%s>P^vlezv_ozR+Mjpc3O#pI|*| zKC&$)EXI+<)fQ$vfL8-jCiazfUG2pUmg^xjc$s&Wmg3z=k{dU~C|BzW)}AZb)vRN> z$<CaW86Ly0q~VjGg#K)7xWvU(-9m0M39u4-OIB1G0KJt&3$A5lilx~qgX~&kGA>zR zg9HL*?$F`{OA<=i!r~DFw38fYItRS-<A~d8c|dTIH57!%2@IgcEq0-7PL&ewQ6l6; zhNhSdM9Qd2PR>M(5D#?{XUB|z!UuH5=7jeum|lFSSO)~XdCxwaj3Q)g9Dg(r9O&dB zYc>|}w$cP2n&8>KjFetn$O%nITw1lI=Ln`R+g>sl1U*EYMv`m*jAEtMjo>!xrJGou z>6N=J*R3!Q+Fv{t50QoDTK>WE5@Jq;BJ3aXw=S+NfnWpPC-P~knk$uSrCam2Ca7QH z9n+@mR}UoxiizF5L_s8W#TpZch^ZS#)){z&n5C;OriY+7ywpmUO4f|<o|imp#Q_CE zOBbz*<=QzRymZ#|Sic)27$}KTwJJr95gL>vV!9Q}i=&95n-n`EG`riZ+O)PKe{z02 zeqzTJuB~af9QF$=I+58ko;hXZ7UQ?V6bjfjZdeMYK!{TU;5Q`<o=8g0s&|R4BsXb# zlVy>nZOrd!0Rhkj8<EIiD}fHh`9Olep+?u3NUic9i58>A6}By6aCaJr9CuBsTQEIk zb%;NFi!;V#B?2|M^rU4X>`TMjMHD?6flGaxvR$WAh8s`TIPQf6F^%vm(UiD@48GXt z5_^Fpm`dU$9-!(^x*(XfC~dkTPYM93feYCZd|bI%{e$AO8ho*D&9tByPFqZxNR?tZ zT}<XO?l(EbiQV5q6ADXFFQkCMl&zGz<gqV!V0A0s=KA$nQL7=tM4{B16gveDszENO zU!brQ<AV|zOILsc@_5QLDU@#r!D8J#tAyaU`EXS5LF7`3&zQ)0fSl<vM+1<HO+`Mc zP%?}0p<-PWvVrbJiUu?omDFnS(Gm$W^NYH$7}qixc>hecR>=5fSPN+-PV_AZ&owc; zE$+EkxpO7Qql!{p5iyb4MAxji1Rm$oRo6mN7n51yNQkDBd`V*8OeRR{Ga~w+@skBv zDEVm%@=2F1f6_@#vk^GgW)_RHB-ia?Mi$=UikL{~bhhHyl_?~Q4Z*x(lERZrh&chQ zB#w!aYm;;?xw|L|iLyXTk0ZDcnruU`(paZRoY6J0=6ZkJG}=(kP`dmj<vd<-Q5%td z12qLCbs3;tIzL-6Q7?^Yq7p)bs|k9wGNh78-I`YlsEAKJ7Lg|lC{Z$r?B%d4L7@^m zTa{aL<yPt!U3ti?B`x2x%T;8F!aE2+xxMpUEyAf#wVIi#W1@DDbIN6>RY*X!@t&r& z@rLM|7So{1q1jO>HzuW+QczW-Av;ZEH5ERfy$yz**tuLrnX81Tj%H5ghQJ$uG4wYM zHE{xY(<U)vSN%ktJnnncwTK(eETPsrh58eUw=sStE^vnS!s@uu%9e)GT;qTIy1FeS zrVk-o0mhqLBH$ikYbMh&u3NlRIfb%SxZBZ++*#AB*wv~CeLwusy>U0nBq1!YrVu{Y z7k^p}%hD$1zL*$j#T>s)>v6rR6^FD$X$X*|B2k@4n!>X0&6M&!ZAUgJv{IeGgbq5$ zJ8Y4lw8lC=F<wX{x$MAgF4>+K6p_>~g<P{HYf7zY&6NtJnm5^c(COTy8Sc78v#5YO zlXhNa<UC(1@mqNtyS^m<@9!+M08$~&YOB0qu~MJsWg5fVL_tJ@EmQ2Y27r}#!_20Q z#p;qJr~H3zQ7;t)V9g8u0n-H@#$c*JZL1~IFF0;;z8s8nYt4>3aW#%I@=C4TJTaAF z2ochd9I3tQbc@P+FbQ@gn}J(Es%KR^p+13T$B2!16g$7TPXT~Y@w%>Kvd9zdT1_4h z7*^Mk2^5=c4GT@2Qs@l|G>rh2*nbMTyVSmR;&Kv)W#CB~xMA_+#OyGKk75N&IR@?= zYG<mZYsL=%B+}qbCc(NQK&TLHTKQ?-oQWx8;(&s;EiDqGF~PCH)RaM4JMk(L6r}2? zN0q9mM+N)Bv3nB9%a!t0+3}ZDl`A=B-V1$tl<R?7R_z%})C?NbGU!u8_(7E;*D00i z;>AQ7!NT4IbyFM)#zpO<mB}u_zf_&+I)c<B3Otf3Ud@QcQJAR`9U(}fKJg}G`7*%| z+(JD81d*~J9+PgopHNXStwrolYLiCQS-QypQxhpGK=_Q^0bz;VAgU(GXN*4FTTUbA z$*1#Hu7vt2wrygoNgTWhCu1YWEZ>hCd{RdlSS|&av9=27E#mei#YRYWJhNzJ9gfBW zb4Xko3LDj&o#eI?yH^DOCKyFxcY#4m+@-=M8kZ0`TU$~@-1?AAV4jmEV#?(GJptNW zolXORQRYfFM?}$?Q?&@GC`-jOs8QJ1dx$HU>cYoltZBOarYryH(M6AD(eV-ZO6nh2 zgBmMXtvl^hdAdOGs>@<W--HSi`|Gq)4ZsX2Idr(usi8_ATX&)YU{}~eK-@@nVsC5d zF1zYayLO`YNF2Fzc!}p}$~EjO(7GD97ciI;!ekByeY~7mX(+xbHqs8pVpVY3zjK<F zN5Xla+bo6#a#>ako^d2jWDmBzs6?^!KrC0T=5jM;e#xShNC1mXM1w@C6nadxJ~X4) z8ZZS#VqufalvcS~Sfx66mpnh&k`ger_2Eb^2XRF)@M?-Y7Kp@+K+A$&Ev9X9My1&u zFQ-6|b93vL93vzb9^%WBM`arJ_?i*RkxDiR*Anlj9+CyR))3fY3$^(+SD-$VfU9Kl zmiUL=siv06T~sVURqJ@wFL70HKgfoc3X-|fbhfT<D;4)AEm3p3_Xb&wP!a>gfSeeH zt4onpG(9>h^_j*<2SFO?^K1H&kAM@T@tM1=$=6jBeSPv}RoC0mcsX`r{_MTyH1>#X zhb?=vw&wh^U)Hs=kL%~JTKM#ZTdsa~@X}eN=9XJApa+@lH5W;^v6k95SpE*HVAe{$ z__lq@vGX0;nl<g3hHC~GY#?@~4n~ge>q@0=c4|i6F)EI4OyYor;X4NHY4YGZam+&w z)nPal9>BG50={A(mZ({sMz-b~Hvacgo>}0VF%}Y_RO%Md(My<>hVp8;9D+XswC~xw zdpCVmFzpf@yvM!BaC4S1K52V~O4KliVNRio33qOY4p_9&+qDk=(LJVM2=?!NYmAR3 z2--FLIbYNCv&ZyZcvW?3X?Pvcw1o%nzvt&C?mu;Igr)oJO5T|cSUTj?JZq<ut9b!G zuMGJKK%maklXh;Bn2PNQzcdS0dPbRUGzxTQJwMc4wm(_l?PV`rEpO!QBPCrQ(MD#l ztRt^k$n^dE>PO|W_QDL;_cDK=2)v>(dgh`X-y3UZIt~7u?a(f}3~L*;5W69EVA07n z8ML8n8BT$}<fUOz<IpJ80jl7WV7VWJCFF1A4Y0x_MWL%O#j@!g>QoFf@s*XL;ypUn zu=XO4KSAoeZSVN_@SgVl9TNu51G|oAv`<f3u4PQ@pCE1E6c4I8YxIE2F5Q?aSp~n- z=;gnc?R>rj9bK=k8m?WO^d%`BorYP-8xu1V;&T?C7#r|LCO~5e`C)lvV05H}&XHqT zsN>nfP{^QIzJ?HJmqFHqfXb+%_9PS=l%*`l*>ZU<3^g%3LHfYe7Gs9jJ7eI)x(m>$ z=drZYrqibk^(RV)8hn-qpZ!e_t}NR$*7v3%(K_KOB}q~YHq=*c+)&;dN>0`+g(@5v zKCX>Q*(6*Ysg<h(v_Il$+Oma?+pc<{a@WV-zmWajPtMzPZ2fr*5XG&<30*I0#oJ*) zCqDKc{D+pm`wh~92ukZQk(6}1#9yH%9ooegU#4k<o6vcjMVPVy0;Sn>j!`Ke!tP!` zgCD~;XdRs#RuYG&b!sj!(opwK6I$?`JeZidy`wV~`OYahuDU?j8eWPbVtYrZfP!#V z6x9@j{3c*{dq__pr|l8y>%NTA2*6(0n?95M!PlO9PQdqZee>Dl`b~iE<ACquI!Wn0 ze|Kc=p|7tv7J+ZE`~bcsH<T;9B!q4{H3d5st7b5Zx|>kRt8~5q<||-<`V+`2ISJ&) zoz8Rx7?x$5OCi*7O?S4-7$oP&-W7!rs&=^OASF%kA!Y}DNZCeRE(uAIL49Kc2cFYr zNCtHAJi?v4N;4a?WCWpn%h{uFok#U7cz+bUKdM*2`%gXbkKa4D{jVR8yeAhz>V}&~ zqjorilRfQpfgV9KtP1&WL?x?NuhTU24FOf)EuW@KrS?tYfFWz8_!^6|Bj8KDI-^R9 z>)83iV*uh?z9|)eHm;%^gp>xAYY0h7Qh>Jb10WDWK-}Y6RmX*NQGCTQ9awM5Rfw+$ zWIsT;wIO&fT{tE&MUZ9Xi-D_@o`HNNIt0-S&&4}_a6hvKj^hITi*h7Xn`zfOa1xSf z%--?Qy#urW@m-XA#1Z22&i>tF+$C>&#O$t6i`LbJUZzp8io%_7Op9gbL3t31UCXgx z=wxVk;OqcZk=r|jm&JoF5Do2YVIZbjxg=w-5T{R>f>)~&ldU`n3tUl3p6+>-id*jk zNcRXx*7W`G{tsQS<EIQHXEvRg)b%sknPX7m_6zns{$l@=cQyeK305JDu_lj+=LwCq z^1(t8KTSG*Mut+<L^QQ#&00+pL%<#6Xp|6cWB?$CfEEbrkwc608{sf1BxPNsjv_dc zkYSfmIaQvX=Vp7D31bBrtjYf9Vt7@@kKUpJguqam-J&E!FjTRo6>L$w*EEn9%EPM) zbtcp$3fany%Jb@D|LyFO1J@EFs-~T@aIE7+H+$dj{c@o=yX70-eXQ@Hg$q~Q{OJ$= z^Z$8XIGJGp-LUQg=!OAwH|lpmM^^u8=D&RX?RP&fbtE24k4CYsSy0_u7gPt3@^3Y& z&RZoPd4WiFNU2JAXh$TTz%~gp39LmL>WaHkT-*fmAS|at^8$R518}2d0FFRSdUzaa zhi?+jI3Nng>JXaa>!v}vvZz^#`Ia<P(~vxb>P3R<K!c)b*Q-a*A<9`<iz!SV`bozR zZ+qr_pICUu<9qIT>ao|YW*eE`I*%NBUYma(Y~#DP*nj_fg9qOvZ6gSi_nB^$2OF&H z;}n^JQ#6gW%JWjpAR!ZQdGW=7%OOW5p2FKo@RA<8h=2{rmCD5^YC=>%qH5x1MUII4 z5~68v-w4f;9aKs>T!e249puGMV^$`6Kr&P-#PF<@@bgepkd>MS8z?43S{dLsY4@(d zJ>!|7;k{!6nbCpW{o{i-4P^H9kB;EG@xkFeh-L8Pe=4;H+s+t=!-|IJ!Nh?ulfzQR zVDhF^j-g5pBE=eK#yHl*QIt$(kv~_EW<#0ry=x5FlvX<h-x%c`ZbSaEL>PGpwnjKi zp@$k&E*Ydcok2J%S56*+!sHO|IVuoL;#^f(O+p6TAXn8_`Kw5_+}Ib$|H?DWKyO8! zNiL(~+>z^kst@m7_`{EU^MdsUp53zW-0!&W8Q**IA~uH;n@{9*{e*Us@{y6<@3`iF z-1~=PbusaF?CZgo50P~x#=-{T1ks0iE!af$2~vC))mZ>t6~c9DzK2tTGFk|=UffI( zg3wNnl+!h!A~b@N^%3~SHMGcibZM4i7gS$Ns6@dySo8dp<R}jy&B}lx8dMeJ(x!oD zd5V?~_!e;-NRB9Hm$468mdf#Rh$37IOomKVYK9~p9~c+I@%T|AVs%c{Dkb|6MM1Lc zA|n3^s+5!Xp%cz}%6P(v86^g%at*PL>yl&+h~T54e{^B>VR_jEh?hJEby7s-f*Qej zVk4+`CD~p&oyFg=bUeKP7N!)xOLmT35tG1oAT<;iC5rv&G=@iS1Bd-;C8~Ong+>^d z@=zKA<488V4g^_rdKcF1(qp~GPAt%xG3hw80HHG1wWdv=X`nBJK7xK^s4|tpR4$1l z@0vv%wko1hOOGj_)oI`dJ?s)IANK;kEj&dS;ATqrnP@^wj<Jj<w#YX!M$w{#*co#q z`v?$dCl)!5Ydd)_MKLCJZaXP-oTTa?DFwy12zKd0sJbB4t>M``{OSfTnr0Cz7Q9PU zT@-_|r~ncZ30D)7PYxR7)qU)YZg9;kDkqS#OuSMM5lgV>K>WZzk$=k709m7oi5h1t zQ&g2ZN@QZi!IV<<b}+#zy7<+Ue1}vZ0oFo&LO4U!7#f&G4kitq#F(Y~phcqgDj^xA zTlys)l46j<aZ%pu=rTe$01KT87zF*n!JT|c!E;EEq=$VSNkWcKPvwvwL-m@9wa}oz zqB+Hu22TA+HL<fGvQ5-`Yxt!Y*Z^%K%+|4z$OTD@;(^$Tz}hEBZu<uJ>=@oB{pI%l zk@3Bw0}}=vC?&^=DMnaX$<|5p;4Yz6U>EM?{ej+I&Wr`ACZ5MGSJ_goBvO^iUP*e` z)MO|J<MOmBWnYW#SPA}TlLLnVIb{=2#j29ZT3CY(-RB&Kst@>O52_nwEq~ggC`O(K z^@Nq@Ewcmy8B)M&ekcK?c^27=Neb?Uc1v;+8maUorW{>j>!fU%6|yey1Az|IJ4F?4 z5(|le7%TKd`X$=pfu>+NQChG-RK9DBX~Om@PKxXq^r#J^cC!RUt`#RG=EnAdppJ;5 zm{~a!%kWSabx@WlbCeX|W*AOMMPfZt!l{d)gjz&`sQ$g<!<j%cD0-rG9JXBEiV~%E zsdT*Xx++RUwTUe+qk@v|A>LBV6%;iR^WLCV5(Y%^qRGn*S~gISCilFMUe}k!sp_## zTlVC;kG}LNk=ZWSH=SLs??-049GUHM-u=4r;6>hbYaYEgQvKj69Weoejz)7^s-?&s zFvCFY?#7yhS|%b&D5D!9pHNHk(h)-^T2%>w#%A_|Z?3}2y8fzkEd;?{blS!<?X=`q z9@`~3hoHi_O5b*N6(|0yz@An5QABfdAF)5S<HdKT>!P`_NoRUH7a0J;q-e!r$)buT zO8?{hmw+v>f6@)ISNH;oOvs*aKUMd}!*5Xsa1l^Bg#zIypkWqHm7;mtOai#lo-0M| zg+iAxg1sd&V1~wlJ^kBu4@{)wUBa2lsR)s1BP!^;V{nXnQ>heoh?C|45nR%4tVSrR zB^kFu<~C7=ilrD>SmKR)2S#t6xHibMNyfosSag)sz+ni5z)ukcbxy&_cyE|7@hif@ zPSGJ4A3bP2SWahXT%2w2w1PH*1EOAJ5Xvu$1rzE5M@2-*9tw;J^fg91bT&bjoc(aW zfGE*1q$iZVDpP|k|9{G_uf{|YH)mis+gW)DRPMd!YoGe{SHJKc0V<~eDyQ^ufXXRY z%_+SEtNHf7zV06%c;cIPNvnyM%j$88EhxSN-4$-p#N{M?oIsdhH-Lg`-mrz+;@?GN zrG}Z&&l{5SD&x$6D;yi?C2(yhsB%ycNM^=D4Ypu$uLx?8Ifz1ah*WYe{K!+9Hk(yc zrsfu&SDFjFU7=P|&bNZ|g-j~vb2MXv3pY`r#cx~`>>McIg9T*6M0MO#r}B>FRj%@l z0+Jk#TWRq6)BxA;Lw!gw03b0^5HT_-DUn)+q=-N-NDoX&1#Q>U#(OkQ4WJtgF_AMe zwIUHA#KV-3kT+Y&(WVGxFML=Qve|<mZ8NW_P7>fT!JL3F!J44bgLn>HK$3#rl7P`t zIBff=g6ou7bX+~GVvARaLlg&L@HI;YLu%)x(*T;_vfIgcU;_uS{?zc8s@VkjX`BQR zrBTfiSqt(3ag>0zc|H7i*d!hLz%OEWDXReK*%auh8M}<V6}m)%G7eSvv<P^Dzg-2M z=20*#a`4E}lxY+lCl9?dJ)zhT90-IutKmeT6l6Y}^(E-FO6x;(oq@J+eG`HS15LS` zxnBskLC>XLQ%u80HG;hzI<*s)Wm=4U^D7%UstgJSL=GyCm_QVW#l?9N%24S1jdYfg z<0K&hla>>of@3A}R0%QYWd;?|*ehz7R5N{MYyaxM`j<CduyETi^Zuh}{_M{gDCf4$ z;c(8JHb;9-pB?$=dEZ*?=#i*P;H%iQj$&{-Z(ACKp_`1gdDAyL!A=xx)K}s(4TT}o zau=%kW)u~fc=H{M14}6y36I=J;34NuJgpiunM`WDLk4i#7#iC~MuOaq&JRq`)DwKt z2@oLcoqDtnIUsKgKd47IMm33Tw$FQoxDoe_hfxoHOBDG|`^5A_hfzl9iAF)47U$D! z)HcYLHxV_Ik4Nr;E#!C^DDgliOH>^rn1l`>{WEh^t|yz4NL|1qG!F2oxH*+d^QyM2 zgZ+Z|Ej^pXP3rre@OvIseXshj+f2o{3e{(*v?)hZci}3YQNWWA;Gx*-Ll6K2^K4{0 za5GFOz5+aAK|<o;Qlv#j3_V~89Sf1W5~RT4h8CaW806H>P}LuaBGJu84o?KjgtL&s zXZSQLe11f3X-2CnK~Y62WMmT*IbDB=&LHBv5|yb4*&yl^$6;h>at0C$yvekf7E!MO zs|EMiZL;5@2c52>!U-Wege2TCuw9iExcCvs5)Y_ZE+z#7`%$Jt4T;kM@(p|tQ0#yU zf}^KNuvrbx2ImLm`7^2?QAHCjVA?97QVzAs+f*$H4;u18Lb)FFbBrn;J;q5Lrwkh8 z9xj^-FPpb`xeUYZ#4>?O{JfWPOoB1$M$$rdVBA>xeIgtd<|Ct`_`p<{w2VoMy;O1! z+O6hZ`_twOm_yI7^2r9-9kpHLbsXcsqVV%#bxR050X1Be$VsCU8xS(UQC?iFns>)} z>YIOiQ!9T$F?X<k9k{^|{kT?OLAR-JM$W$Om}=-y<ayQB={_JqK&Cv<@iIM4^ki#j z_d((xMCRc)L2jyP%NPFP!25r7={<M;=LNg(nx{5@?;F=H+_LVeWpDrI=iah#+2{WI z@(*-Bbko9nuYT~8Q&0Zso`w5X?A$W{{giN6XZx@b-lyZB1m3l?*Kt1l-XGu6{=2_0 zhU)U+x;+yP>BC*U)vMPu?CMD^soTy2nu}ct!vk8OL<XS6uQn6-M`5w`o*p5CI!Y`w zHhOQ(llx+k(ior6s#Sve4Q01xN|om@9!0EBSHx_wKujbFzl~kE#w{{sN{t(0VdDDR zIqdUlVy8fH)Fv?nQ2*)lQ&$Yv7VcfR^oh@oePF`h%>mTuO{Wj&`f2U-VFXY+|J~{r z|K^21*xoXLiorkm&FB|~I2hj<iHOARj70hn+i~nu9nFcHDMtmnRu+fgLxu-YRU&XG zrEH29A+r32kHv(*K?(fUOaJz^58wa7FGT`>0A_wb_hIG-VCDz(4}-n;FaO2C4_^4} zRg%5Io_>HfyoI@4M38HR<DuPqoUKF`2KLxd#Rd!ZX!B5p2^2|@$BiDwRPH`RWv7BX z4v`LSqD>W9NJC5BK4r@&i$@hZgDQf+<Mnv3k0TZMDS4O*0hLopQEyo}>*C}fTq5N+ z9V(+h62_@Jpd35>k^nq{iO>e&b^+r6Wbi*i3G8C!+4s}2K9R<S$|Ua$6a_fQTLxnF zFFz59x(6AhF>?ZUfE0Us{F|_NNy_l{Z@uYy?+xEvBb1?v6Sh^Z=2W2!Rl@vL3;*z% zXI@)M6*f?%H2!Dd<2SB+`00&*^cH%G2oIJZF{8&~1taA-Ha0xb)-Jz%wHzQA^w;=8 z4-RF~p(`J+yU*1ZzPN4eXRhhH{uA*j>2C{<e&mkR?|ORmBWl_jWk(sA5^08!lJ^8- z&@9Uuo#8ULwkf=BKUY7y1+6XAS{UqZ*S_%9^Y^OJBa0HO<n@UrmUIyo(7vI4*D}3b zYv0B6y?f>V`qQ6X;QiIFb(&VOI5^GxT1;u+wE@!(qczN}185!KR#m?Vyg!JmNAcZJ z{_YrB$GCM|-;cA;B@o)P?kl_2KJ!NxD?%BP8i20;3+<9i4DFUI%D4qXu7?KT%^0yV z&aI+gi8Mpg`_Aoq^D;fH^}U(b_#cm5Q-0T<UGXQh#t>5oMW*n&7vv59{OJ2XR{PE; z8_4788_oz=r5*eakI+*UL}kMFAht^pJBG6=C?nCM!TfWVMo2c9vAoQMA59-Pcc6Ef z-meYd<Q+8TlmBhw+HXJn$3G=%BY!n3m^xrv()^mX?G?@6zq0>g%)fGA8BM6A#Jox| z8dOSKu>yJ|{=9)c^!Cf!d%;A-<~XHM;h^&dMdHhmXL@BC6sA}9MJaqhkPyC~*Ldiq z(LpaIsBAoM8CH@P4!!2}0~g)%!rv%WiSTEiC@hkGh^8<(rf^};eb$G+`K6*JP(+>6 zSvF#fz_v~lP8<dYfBf*{-Wwmwy-|%#V6nbeqQ&}N?aC|9m&;u^Q5(PFumAVgo}uBi zbBac>^IUz-n8W+LF^~74gS;W~v9Rjh?@t#tU-khtO`ui5ei}8P&nx9!3t##2neS{| zwe~LrIH?oL!KU3gXAYhL{n)5`CtidGtAGKk^mU*^tvf<M{iuzX-WD*NszqX}MQdxr z>Zy2t0I!2*mtmSyfFHCUI7@t4`1;(hzP0AOb<dFiMCB|qG}J%#4qP+-Jun~V>DhRr z*C-(j`*X0ME)VY5v3sC{ru?G560dd3RLj*C$Ve6jYM(!`>YO|OZ#Y0^KN;~Q3A63* zrK#}eY8vrjjQFs=79)z*W;vq!yDwdS*)2oEkr77+Z`d{7WC?tY23=2sK7>IZVlqWb z4f@FCd%yOf4_>i6GU)Dsoiyg<353!m8q(;YF(1U359(bYRJ7EXgCCk$)4%23o#B`m z?xM!w@JJjFW*F@~Mqi)NjxW+Z9n99xV(icAKx({GYg{rxJxW7kOPG+68v-}hf#bRh z$8wZ)KscGBfiD!gpgdXgF{*kMuImVoA>7!Jx-rygYtlik13(4guXP-?K7!YseCv&f z0??K!sE%yYwDl+NVNfgR?qU7Ccpc}vMGSE~h)x9YfBB=&tbBU?wg*GzX7=|;O}?^` z$MPch9NrMs<o!L&?k|DKU((@f@J_9RlHDr1=4E1u09pO)R{eIo?qDLf>NC`qOKe;J zzRH*KPH#9Dl)e>le6cxky-eIAAn6e%PP7zpsu<8vNCr3Ch|n#N!xnIq;9v`20qr2@ z65Lcr3y9$8b3NLH7qUE->m{JpVIDys*x>*o#Rv-Unv8Jf$eFw8ZlK`Zb$8x#_WJ8@ z+p+Udgju64Ac?P$y@dUvf@E`NcAW;hPP3_tR#nRKfw$hW`Rw@*@*~z`H;;`E3}v?O z9UU7U&FmS5f%0JW-y2(uo^{$7_NDM|?HD=R%~3rYPk-RNt(QeM<7xUeZP%=$CDP{u zs~P;R_`4%3p8Cp*UPvnR5OXAgUk@z`e>RZFJ`dtQ&)_Fo3RCX6{S*7UPrc*EG-8~{ zUHyA@VCc@|E3|+fZ5Il-n!dSh^9CZ6J|&@_dCRAM{_GFFp+yMY-9iR@jc5(~M`b|p z$RhXxR`CTEfoN5v2wwQtUp(ghOWUR4?U^BVC0Ia`@rsL>51vCm`#FsIIkp4QQoN}Q zUo!CE{O2xj<iObAI|ud*jP1kl8=7AQk2Y#M`1fV->@fa?GjaN#_8uyDya~U2k1Y)< zf#XR|e{veTQks5s+tq!<OZt?&eBmdj_Vo|{<TJ?=?Hd3Q>zZ8y32$pc0?o&>6B(Mm zv2EifnwUQ2#Of(n0;#n#S}H{-RV)=N)UTK=Ry1L%s$#%IM2jGH9^uou#Nq?`2k{d4 zD^h^tL4G0zQKiTj=uqKYflePlr%!@TA3z7~I?#FUy9+Pf@#B~LWM=FcYtE=WV_?*# zCX8ZPg>usLx3#^ESw)|cRjMdOteTN{etPmWM@*+DPOE5X?H_O6J^cE^-%X~lfA?;X z$RHm#MN&6h1dZ2dJL%lEc!~s-rv$CSo(HK@r$KTRyV63nHnnZqOp>EdrCJ-eUH-)1 z|LyaQ^z7>&q+lh%`soTN>DBh(XXG`#r>%#LpFZWNs$#5sI5C8M_*RH-D>MN_;PXyu zO9%J#=a24x?bWHr8VT7xIy^SEtAB75)NE{V86>U8_9fsGKR@VddT(3rR+@-DC0!Hm zIifv&yXiKLLTl<D9UUfvPM9RPj7c_VV|>_}enekYdfI{9#0_=SFW4UH(De0f>zNMv zlytQJ!DG(;H{SjFMmh$!4fGFzhOQ=;Fn^CWn9f>eS<~0Gt=mW|q)$1rDv1*3XO$XG zot~j?rz@vtB)1>w_|c<Z9RK7~jk72wBoM%tK)^b!pR`WXyW6^Xe)^R2uTSOv=LJ{1 zbSDkW$0IV687$}GX#5m@uV1$Evi4>CE^%D#J`nxWVOZosQ+%m42dORB@$ri%zWkj} zbXhbVKP<Cv*TBGTxLx>kG9`A&4HtL~<0uJW7a?9TK!py*4)JRG_O|W4G$Vb=#i<Q@ zB5v)hgu}VJ<~R<SJ34o_gu~PS^!wl6S9U&HN7c^VgCipYflG~$C9kk>o6%LkKXry8 zn$c}wPqpR}i96bMu;tOGBvBnMU=kH#&&|wnpfy*SJ1j{&_Jh$+e|3G=?|?_apH(9( zMlQczFRm!!eQw1Z-se}$<Nd^n6L>$p;xyjRtT=;rgl;SFqSh+3R&lEjtv+rIqczN} z185!KRu!!(w~nH9lv~HpI>xQzXdUO)DYQ;eYvIPX+~+^}U+=jxAP|jJBb!HdfyS<4 zA872F!~1;KJl;>NJ+TQiwx8Yz8r#p{9rU&1MXgnOFJ9N9)raF~efmzchS3`4)&aB* zaI31X1&tU7^lie6`W-{-7`Kk&>T$k$3L~GQk%Qs~@ms<E$;!zpY0k;Q$*R=TKi}vK zKl!>JzOm8XIFQ&kMn1e*Ac3pK7G$t30*SztGx7_6zM*Xc2NLutwL|@wMNEN<M~a-& z72V=dsU7OkSL#POSb*On$iYTr4mJXdL|d*<JqZ|7y!j*ZJoLOfuZC6+3dTs7KQ_;~ z#QYue@0BFn_k?-JkDfnp0dZ{4-l2GCN{*ZzQ{xqIs)u5_Yum16+n`UmdR6|RA!XG_ zK4&O1+!ME-I7Wg)Vdz*;auUIb+WJ%+A#7!jb{&%9>tsTE9fA_HB}ddVV04Ru;*&>C NGDA-KCy$D5{|^$*J<tFE diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h deleted file mode 100644 index e679d380..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h +++ /dev/null @@ -1,545 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_mutex_h_ -#define SDL_mutex_h_ - -/** - * \file SDL_mutex.h - * - * Functions to provide thread synchronization primitives. - */ - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -/******************************************************************************/ -/* Enable thread safety attributes only with clang. - * The attributes can be safely erased when compiling with other compilers. - */ -#if defined(SDL_THREAD_SAFETY_ANALYSIS) && \ - defined(__clang__) && (!defined(SWIG)) -#define SDL_THREAD_ANNOTATION_ATTRIBUTE__(x) __attribute__((x)) -#else -#define SDL_THREAD_ANNOTATION_ATTRIBUTE__(x) /* no-op */ -#endif - -#define SDL_CAPABILITY(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(capability(x)) - -#define SDL_SCOPED_CAPABILITY \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(scoped_lockable) - -#define SDL_GUARDED_BY(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x)) - -#define SDL_PT_GUARDED_BY(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(pt_guarded_by(x)) - -#define SDL_ACQUIRED_BEFORE(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(acquired_before(x)) - -#define SDL_ACQUIRED_AFTER(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(acquired_after(x)) - -#define SDL_REQUIRES(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(requires_capability(x)) - -#define SDL_REQUIRES_SHARED(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(requires_shared_capability(x)) - -#define SDL_ACQUIRE(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(acquire_capability(x)) - -#define SDL_ACQUIRE_SHARED(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(acquire_shared_capability(x)) - -#define SDL_RELEASE(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(release_capability(x)) - -#define SDL_RELEASE_SHARED(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(release_shared_capability(x)) - -#define SDL_RELEASE_GENERIC(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(release_generic_capability(x)) - -#define SDL_TRY_ACQUIRE(x, y) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_capability(x, y)) - -#define SDL_TRY_ACQUIRE_SHARED(x, y) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_shared_capability(x, y)) - -#define SDL_EXCLUDES(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(locks_excluded(x)) - -#define SDL_ASSERT_CAPABILITY(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(assert_capability(x)) - -#define SDL_ASSERT_SHARED_CAPABILITY(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(assert_shared_capability(x)) - -#define SDL_RETURN_CAPABILITY(x) \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(lock_returned(x)) - -#define SDL_NO_THREAD_SAFETY_ANALYSIS \ - SDL_THREAD_ANNOTATION_ATTRIBUTE__(no_thread_safety_analysis) - -/******************************************************************************/ - - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Synchronization functions which can time out return this value - * if they time out. - */ -#define SDL_MUTEX_TIMEDOUT 1 - -/** - * This is the timeout value which corresponds to never time out. - */ -#define SDL_MUTEX_MAXWAIT (~(Uint32)0) - - -/** - * \name Mutex functions - */ -/* @{ */ - -/* The SDL mutex structure, defined in SDL_sysmutex.c */ -struct SDL_mutex; -typedef struct SDL_mutex SDL_mutex; - -/** - * Create a new mutex. - * - * All newly-created mutexes begin in the _unlocked_ state. - * - * Calls to SDL_LockMutex() will not return while the mutex is locked by - * another thread. See SDL_TryLockMutex() to attempt to lock without blocking. - * - * SDL mutexes are reentrant. - * - * \returns the initialized and unlocked mutex or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_DestroyMutex - * \sa SDL_LockMutex - * \sa SDL_TryLockMutex - * \sa SDL_UnlockMutex - */ -extern DECLSPEC SDL_mutex *SDLCALL SDL_CreateMutex(void); - -/** - * Lock the mutex. - * - * This will block until the mutex is available, which is to say it is in the - * unlocked state and the OS has chosen the caller as the next thread to lock - * it. Of all threads waiting to lock the mutex, only one may do so at a time. - * - * It is legal for the owning thread to lock an already-locked mutex. It must - * unlock it the same number of times before it is actually made available for - * other threads in the system (this is known as a "recursive mutex"). - * - * \param mutex the mutex to lock - * \return 0, or -1 on error. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_LockMutex(SDL_mutex * mutex) SDL_ACQUIRE(mutex); -#define SDL_mutexP(m) SDL_LockMutex(m) - -/** - * Try to lock a mutex without blocking. - * - * This works just like SDL_LockMutex(), but if the mutex is not available, - * this function returns `SDL_MUTEX_TIMEOUT` immediately. - * - * This technique is useful if you need exclusive access to a resource but - * don't want to wait for it, and will return to it to try again later. - * - * \param mutex the mutex to try to lock - * \returns 0, `SDL_MUTEX_TIMEDOUT`, or -1 on error; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateMutex - * \sa SDL_DestroyMutex - * \sa SDL_LockMutex - * \sa SDL_UnlockMutex - */ -extern DECLSPEC int SDLCALL SDL_TryLockMutex(SDL_mutex * mutex) SDL_TRY_ACQUIRE(0, mutex); - -/** - * Unlock the mutex. - * - * It is legal for the owning thread to lock an already-locked mutex. It must - * unlock it the same number of times before it is actually made available for - * other threads in the system (this is known as a "recursive mutex"). - * - * It is an error to unlock a mutex that has not been locked by the current - * thread, and doing so results in undefined behavior. - * - * It is also an error to unlock a mutex that isn't locked at all. - * - * \param mutex the mutex to unlock. - * \returns 0, or -1 on error. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_UnlockMutex(SDL_mutex * mutex) SDL_RELEASE(mutex); -#define SDL_mutexV(m) SDL_UnlockMutex(m) - -/** - * Destroy a mutex created with SDL_CreateMutex(). - * - * This function must be called on any mutex that is no longer needed. Failure - * to destroy a mutex will result in a system memory or resource leak. While - * it is safe to destroy a mutex that is _unlocked_, it is not safe to attempt - * to destroy a locked mutex, and may result in undefined behavior depending - * on the platform. - * - * \param mutex the mutex to destroy - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateMutex - * \sa SDL_LockMutex - * \sa SDL_TryLockMutex - * \sa SDL_UnlockMutex - */ -extern DECLSPEC void SDLCALL SDL_DestroyMutex(SDL_mutex * mutex); - -/* @} *//* Mutex functions */ - - -/** - * \name Semaphore functions - */ -/* @{ */ - -/* The SDL semaphore structure, defined in SDL_syssem.c */ -struct SDL_semaphore; -typedef struct SDL_semaphore SDL_sem; - -/** - * Create a semaphore. - * - * This function creates a new semaphore and initializes it with the value - * `initial_value`. Each wait operation on the semaphore will atomically - * decrement the semaphore value and potentially block if the semaphore value - * is 0. Each post operation will atomically increment the semaphore value and - * wake waiting threads and allow them to retry the wait operation. - * - * \param initial_value the starting value of the semaphore - * \returns a new semaphore or NULL on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_DestroySemaphore - * \sa SDL_SemPost - * \sa SDL_SemTryWait - * \sa SDL_SemValue - * \sa SDL_SemWait - * \sa SDL_SemWaitTimeout - */ -extern DECLSPEC SDL_sem *SDLCALL SDL_CreateSemaphore(Uint32 initial_value); - -/** - * Destroy a semaphore. - * - * It is not safe to destroy a semaphore if there are threads currently - * waiting on it. - * - * \param sem the semaphore to destroy - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateSemaphore - * \sa SDL_SemPost - * \sa SDL_SemTryWait - * \sa SDL_SemValue - * \sa SDL_SemWait - * \sa SDL_SemWaitTimeout - */ -extern DECLSPEC void SDLCALL SDL_DestroySemaphore(SDL_sem * sem); - -/** - * Wait until a semaphore has a positive value and then decrements it. - * - * This function suspends the calling thread until either the semaphore - * pointed to by `sem` has a positive value or the call is interrupted by a - * signal or error. If the call is successful it will atomically decrement the - * semaphore value. - * - * This function is the equivalent of calling SDL_SemWaitTimeout() with a time - * length of `SDL_MUTEX_MAXWAIT`. - * - * \param sem the semaphore wait on - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateSemaphore - * \sa SDL_DestroySemaphore - * \sa SDL_SemPost - * \sa SDL_SemTryWait - * \sa SDL_SemValue - * \sa SDL_SemWait - * \sa SDL_SemWaitTimeout - */ -extern DECLSPEC int SDLCALL SDL_SemWait(SDL_sem * sem); - -/** - * See if a semaphore has a positive value and decrement it if it does. - * - * This function checks to see if the semaphore pointed to by `sem` has a - * positive value and atomically decrements the semaphore value if it does. If - * the semaphore doesn't have a positive value, the function immediately - * returns SDL_MUTEX_TIMEDOUT. - * - * \param sem the semaphore to wait on - * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait would - * block, or a negative error code on failure; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateSemaphore - * \sa SDL_DestroySemaphore - * \sa SDL_SemPost - * \sa SDL_SemValue - * \sa SDL_SemWait - * \sa SDL_SemWaitTimeout - */ -extern DECLSPEC int SDLCALL SDL_SemTryWait(SDL_sem * sem); - -/** - * Wait until a semaphore has a positive value and then decrements it. - * - * This function suspends the calling thread until either the semaphore - * pointed to by `sem` has a positive value, the call is interrupted by a - * signal or error, or the specified time has elapsed. If the call is - * successful it will atomically decrement the semaphore value. - * - * \param sem the semaphore to wait on - * \param timeout the length of the timeout, in milliseconds - * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait does not - * succeed in the allotted time, or a negative error code on failure; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateSemaphore - * \sa SDL_DestroySemaphore - * \sa SDL_SemPost - * \sa SDL_SemTryWait - * \sa SDL_SemValue - * \sa SDL_SemWait - */ -extern DECLSPEC int SDLCALL SDL_SemWaitTimeout(SDL_sem *sem, Uint32 timeout); - -/** - * Atomically increment a semaphore's value and wake waiting threads. - * - * \param sem the semaphore to increment - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateSemaphore - * \sa SDL_DestroySemaphore - * \sa SDL_SemTryWait - * \sa SDL_SemValue - * \sa SDL_SemWait - * \sa SDL_SemWaitTimeout - */ -extern DECLSPEC int SDLCALL SDL_SemPost(SDL_sem * sem); - -/** - * Get the current value of a semaphore. - * - * \param sem the semaphore to query - * \returns the current value of the semaphore. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateSemaphore - */ -extern DECLSPEC Uint32 SDLCALL SDL_SemValue(SDL_sem * sem); - -/* @} *//* Semaphore functions */ - - -/** - * \name Condition variable functions - */ -/* @{ */ - -/* The SDL condition variable structure, defined in SDL_syscond.c */ -struct SDL_cond; -typedef struct SDL_cond SDL_cond; - -/** - * Create a condition variable. - * - * \returns a new condition variable or NULL on failure; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CondBroadcast - * \sa SDL_CondSignal - * \sa SDL_CondWait - * \sa SDL_CondWaitTimeout - * \sa SDL_DestroyCond - */ -extern DECLSPEC SDL_cond *SDLCALL SDL_CreateCond(void); - -/** - * Destroy a condition variable. - * - * \param cond the condition variable to destroy - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CondBroadcast - * \sa SDL_CondSignal - * \sa SDL_CondWait - * \sa SDL_CondWaitTimeout - * \sa SDL_CreateCond - */ -extern DECLSPEC void SDLCALL SDL_DestroyCond(SDL_cond * cond); - -/** - * Restart one of the threads that are waiting on the condition variable. - * - * \param cond the condition variable to signal - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CondBroadcast - * \sa SDL_CondWait - * \sa SDL_CondWaitTimeout - * \sa SDL_CreateCond - * \sa SDL_DestroyCond - */ -extern DECLSPEC int SDLCALL SDL_CondSignal(SDL_cond * cond); - -/** - * Restart all threads that are waiting on the condition variable. - * - * \param cond the condition variable to signal - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CondSignal - * \sa SDL_CondWait - * \sa SDL_CondWaitTimeout - * \sa SDL_CreateCond - * \sa SDL_DestroyCond - */ -extern DECLSPEC int SDLCALL SDL_CondBroadcast(SDL_cond * cond); - -/** - * Wait until a condition variable is signaled. - * - * This function unlocks the specified `mutex` and waits for another thread to - * call SDL_CondSignal() or SDL_CondBroadcast() on the condition variable - * `cond`. Once the condition variable is signaled, the mutex is re-locked and - * the function returns. - * - * The mutex must be locked before calling this function. - * - * This function is the equivalent of calling SDL_CondWaitTimeout() with a - * time length of `SDL_MUTEX_MAXWAIT`. - * - * \param cond the condition variable to wait on - * \param mutex the mutex used to coordinate thread access - * \returns 0 when it is signaled or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CondBroadcast - * \sa SDL_CondSignal - * \sa SDL_CondWaitTimeout - * \sa SDL_CreateCond - * \sa SDL_DestroyCond - */ -extern DECLSPEC int SDLCALL SDL_CondWait(SDL_cond * cond, SDL_mutex * mutex); - -/** - * Wait until a condition variable is signaled or a certain time has passed. - * - * This function unlocks the specified `mutex` and waits for another thread to - * call SDL_CondSignal() or SDL_CondBroadcast() on the condition variable - * `cond`, or for the specified time to elapse. Once the condition variable is - * signaled or the time elapsed, the mutex is re-locked and the function - * returns. - * - * The mutex must be locked before calling this function. - * - * \param cond the condition variable to wait on - * \param mutex the mutex used to coordinate thread access - * \param ms the maximum time to wait, in milliseconds, or `SDL_MUTEX_MAXWAIT` - * to wait indefinitely - * \returns 0 if the condition variable is signaled, `SDL_MUTEX_TIMEDOUT` if - * the condition is not signaled in the allotted time, or a negative - * error code on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CondBroadcast - * \sa SDL_CondSignal - * \sa SDL_CondWait - * \sa SDL_CreateCond - * \sa SDL_DestroyCond - */ -extern DECLSPEC int SDLCALL SDL_CondWaitTimeout(SDL_cond * cond, - SDL_mutex * mutex, Uint32 ms); - -/* @} *//* Condition variable functions */ - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_mutex_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_mutex.h.blob deleted file mode 100644 index b94f10295f5af6fb8c5abf6d46cbc3c87a3f49e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29764 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 X8-ucle8+?rMIKE)ilPWU{Sp5MkI!gh diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h deleted file mode 100644 index 0ba89127..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h +++ /dev/null @@ -1,2132 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_opengl.h - * - * This is a simple file to encapsulate the OpenGL API headers. - */ - -/** - * \def NO_SDL_GLEXT - * - * Define this if you have your own version of glext.h and want to disable the - * version included in SDL_opengl.h. - */ - -#ifndef SDL_opengl_h_ -#define SDL_opengl_h_ - -#include "SDL_config.h" - -#ifndef __IPHONEOS__ /* No OpenGL on iOS. */ - -/* - * Mesa 3-D graphics library - * - * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. - * Copyright (C) 2009 VMware, Inc. All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - */ - - -#ifndef __gl_h_ -#define __gl_h_ - -#if defined(USE_MGL_NAMESPACE) -#include "gl_mangle.h" -#endif - - -/********************************************************************** - * Begin system-specific stuff. - */ - -#if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__) -#define __WIN32__ -#endif - -#if defined(__WIN32__) && !defined(__CYGWIN__) -# if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */ -# define GLAPI __declspec(dllexport) -# elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're building for DLL runtime support */ -# define GLAPI __declspec(dllimport) -# else /* for use with static link lib build of Win32 edition only */ -# define GLAPI extern -# endif /* _STATIC_MESA support */ -# if defined(__MINGW32__) && defined(GL_NO_STDCALL) || defined(UNDER_CE) /* The generated DLLs by MingW with STDCALL are not compatible with the ones done by Microsoft's compilers */ -# define GLAPIENTRY -# else -# define GLAPIENTRY __stdcall -# endif -#elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native windows opengl32 */ -# define GLAPI extern -# define GLAPIENTRY __stdcall -#elif defined(__OS2__) || defined(__EMX__) /* native os/2 opengl */ -# define GLAPI extern -# define GLAPIENTRY _System -# define APIENTRY _System -# if defined(__GNUC__) && !defined(_System) -# define _System -# endif -#elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) -# define GLAPI __attribute__((visibility("default"))) -# define GLAPIENTRY -#endif /* WIN32 && !CYGWIN */ - -/* - * WINDOWS: Include windows.h here to define APIENTRY. - * It is also useful when applications include this file by - * including only glut.h, since glut.h depends on windows.h. - * Applications needing to include windows.h with parms other - * than "WIN32_LEAN_AND_MEAN" may include windows.h before - * glut.h or gl.h. - */ -#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) -#ifndef WIN32_LEAN_AND_MEAN -#define WIN32_LEAN_AND_MEAN 1 -#endif -#ifndef NOMINMAX /* don't define min() and max(). */ -#define NOMINMAX -#endif -#include <windows.h> -#endif - -#ifndef GLAPI -#define GLAPI extern -#endif - -#ifndef GLAPIENTRY -#define GLAPIENTRY -#endif - -#ifndef APIENTRY -#define APIENTRY GLAPIENTRY -#endif - -/* "P" suffix to be used for a pointer to a function */ -#ifndef APIENTRYP -#define APIENTRYP APIENTRY * -#endif - -#ifndef GLAPIENTRYP -#define GLAPIENTRYP GLAPIENTRY * -#endif - -#if defined(PRAGMA_EXPORT_SUPPORTED) -#pragma export on -#endif - -/* - * End system-specific stuff. - **********************************************************************/ - - - -#ifdef __cplusplus -extern "C" { -#endif - - - -#define GL_VERSION_1_1 1 -#define GL_VERSION_1_2 1 -#define GL_VERSION_1_3 1 -#define GL_ARB_imaging 1 - - -/* - * Datatypes - */ -typedef unsigned int GLenum; -typedef unsigned char GLboolean; -typedef unsigned int GLbitfield; -typedef void GLvoid; -typedef signed char GLbyte; /* 1-byte signed */ -typedef short GLshort; /* 2-byte signed */ -typedef int GLint; /* 4-byte signed */ -typedef unsigned char GLubyte; /* 1-byte unsigned */ -typedef unsigned short GLushort; /* 2-byte unsigned */ -typedef unsigned int GLuint; /* 4-byte unsigned */ -typedef int GLsizei; /* 4-byte signed */ -typedef float GLfloat; /* single precision float */ -typedef float GLclampf; /* single precision float in [0,1] */ -typedef double GLdouble; /* double precision float */ -typedef double GLclampd; /* double precision float in [0,1] */ - - - -/* - * Constants - */ - -/* Boolean values */ -#define GL_FALSE 0 -#define GL_TRUE 1 - -/* Data types */ -#define GL_BYTE 0x1400 -#define GL_UNSIGNED_BYTE 0x1401 -#define GL_SHORT 0x1402 -#define GL_UNSIGNED_SHORT 0x1403 -#define GL_INT 0x1404 -#define GL_UNSIGNED_INT 0x1405 -#define GL_FLOAT 0x1406 -#define GL_2_BYTES 0x1407 -#define GL_3_BYTES 0x1408 -#define GL_4_BYTES 0x1409 -#define GL_DOUBLE 0x140A - -/* Primitives */ -#define GL_POINTS 0x0000 -#define GL_LINES 0x0001 -#define GL_LINE_LOOP 0x0002 -#define GL_LINE_STRIP 0x0003 -#define GL_TRIANGLES 0x0004 -#define GL_TRIANGLE_STRIP 0x0005 -#define GL_TRIANGLE_FAN 0x0006 -#define GL_QUADS 0x0007 -#define GL_QUAD_STRIP 0x0008 -#define GL_POLYGON 0x0009 - -/* Vertex Arrays */ -#define GL_VERTEX_ARRAY 0x8074 -#define GL_NORMAL_ARRAY 0x8075 -#define GL_COLOR_ARRAY 0x8076 -#define GL_INDEX_ARRAY 0x8077 -#define GL_TEXTURE_COORD_ARRAY 0x8078 -#define GL_EDGE_FLAG_ARRAY 0x8079 -#define GL_VERTEX_ARRAY_SIZE 0x807A -#define GL_VERTEX_ARRAY_TYPE 0x807B -#define GL_VERTEX_ARRAY_STRIDE 0x807C -#define GL_NORMAL_ARRAY_TYPE 0x807E -#define GL_NORMAL_ARRAY_STRIDE 0x807F -#define GL_COLOR_ARRAY_SIZE 0x8081 -#define GL_COLOR_ARRAY_TYPE 0x8082 -#define GL_COLOR_ARRAY_STRIDE 0x8083 -#define GL_INDEX_ARRAY_TYPE 0x8085 -#define GL_INDEX_ARRAY_STRIDE 0x8086 -#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 -#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 -#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A -#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C -#define GL_VERTEX_ARRAY_POINTER 0x808E -#define GL_NORMAL_ARRAY_POINTER 0x808F -#define GL_COLOR_ARRAY_POINTER 0x8090 -#define GL_INDEX_ARRAY_POINTER 0x8091 -#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 -#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 -#define GL_V2F 0x2A20 -#define GL_V3F 0x2A21 -#define GL_C4UB_V2F 0x2A22 -#define GL_C4UB_V3F 0x2A23 -#define GL_C3F_V3F 0x2A24 -#define GL_N3F_V3F 0x2A25 -#define GL_C4F_N3F_V3F 0x2A26 -#define GL_T2F_V3F 0x2A27 -#define GL_T4F_V4F 0x2A28 -#define GL_T2F_C4UB_V3F 0x2A29 -#define GL_T2F_C3F_V3F 0x2A2A -#define GL_T2F_N3F_V3F 0x2A2B -#define GL_T2F_C4F_N3F_V3F 0x2A2C -#define GL_T4F_C4F_N3F_V4F 0x2A2D - -/* Matrix Mode */ -#define GL_MATRIX_MODE 0x0BA0 -#define GL_MODELVIEW 0x1700 -#define GL_PROJECTION 0x1701 -#define GL_TEXTURE 0x1702 - -/* Points */ -#define GL_POINT_SMOOTH 0x0B10 -#define GL_POINT_SIZE 0x0B11 -#define GL_POINT_SIZE_GRANULARITY 0x0B13 -#define GL_POINT_SIZE_RANGE 0x0B12 - -/* Lines */ -#define GL_LINE_SMOOTH 0x0B20 -#define GL_LINE_STIPPLE 0x0B24 -#define GL_LINE_STIPPLE_PATTERN 0x0B25 -#define GL_LINE_STIPPLE_REPEAT 0x0B26 -#define GL_LINE_WIDTH 0x0B21 -#define GL_LINE_WIDTH_GRANULARITY 0x0B23 -#define GL_LINE_WIDTH_RANGE 0x0B22 - -/* Polygons */ -#define GL_POINT 0x1B00 -#define GL_LINE 0x1B01 -#define GL_FILL 0x1B02 -#define GL_CW 0x0900 -#define GL_CCW 0x0901 -#define GL_FRONT 0x0404 -#define GL_BACK 0x0405 -#define GL_POLYGON_MODE 0x0B40 -#define GL_POLYGON_SMOOTH 0x0B41 -#define GL_POLYGON_STIPPLE 0x0B42 -#define GL_EDGE_FLAG 0x0B43 -#define GL_CULL_FACE 0x0B44 -#define GL_CULL_FACE_MODE 0x0B45 -#define GL_FRONT_FACE 0x0B46 -#define GL_POLYGON_OFFSET_FACTOR 0x8038 -#define GL_POLYGON_OFFSET_UNITS 0x2A00 -#define GL_POLYGON_OFFSET_POINT 0x2A01 -#define GL_POLYGON_OFFSET_LINE 0x2A02 -#define GL_POLYGON_OFFSET_FILL 0x8037 - -/* Display Lists */ -#define GL_COMPILE 0x1300 -#define GL_COMPILE_AND_EXECUTE 0x1301 -#define GL_LIST_BASE 0x0B32 -#define GL_LIST_INDEX 0x0B33 -#define GL_LIST_MODE 0x0B30 - -/* Depth buffer */ -#define GL_NEVER 0x0200 -#define GL_LESS 0x0201 -#define GL_EQUAL 0x0202 -#define GL_LEQUAL 0x0203 -#define GL_GREATER 0x0204 -#define GL_NOTEQUAL 0x0205 -#define GL_GEQUAL 0x0206 -#define GL_ALWAYS 0x0207 -#define GL_DEPTH_TEST 0x0B71 -#define GL_DEPTH_BITS 0x0D56 -#define GL_DEPTH_CLEAR_VALUE 0x0B73 -#define GL_DEPTH_FUNC 0x0B74 -#define GL_DEPTH_RANGE 0x0B70 -#define GL_DEPTH_WRITEMASK 0x0B72 -#define GL_DEPTH_COMPONENT 0x1902 - -/* Lighting */ -#define GL_LIGHTING 0x0B50 -#define GL_LIGHT0 0x4000 -#define GL_LIGHT1 0x4001 -#define GL_LIGHT2 0x4002 -#define GL_LIGHT3 0x4003 -#define GL_LIGHT4 0x4004 -#define GL_LIGHT5 0x4005 -#define GL_LIGHT6 0x4006 -#define GL_LIGHT7 0x4007 -#define GL_SPOT_EXPONENT 0x1205 -#define GL_SPOT_CUTOFF 0x1206 -#define GL_CONSTANT_ATTENUATION 0x1207 -#define GL_LINEAR_ATTENUATION 0x1208 -#define GL_QUADRATIC_ATTENUATION 0x1209 -#define GL_AMBIENT 0x1200 -#define GL_DIFFUSE 0x1201 -#define GL_SPECULAR 0x1202 -#define GL_SHININESS 0x1601 -#define GL_EMISSION 0x1600 -#define GL_POSITION 0x1203 -#define GL_SPOT_DIRECTION 0x1204 -#define GL_AMBIENT_AND_DIFFUSE 0x1602 -#define GL_COLOR_INDEXES 0x1603 -#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 -#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 -#define GL_LIGHT_MODEL_AMBIENT 0x0B53 -#define GL_FRONT_AND_BACK 0x0408 -#define GL_SHADE_MODEL 0x0B54 -#define GL_FLAT 0x1D00 -#define GL_SMOOTH 0x1D01 -#define GL_COLOR_MATERIAL 0x0B57 -#define GL_COLOR_MATERIAL_FACE 0x0B55 -#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 -#define GL_NORMALIZE 0x0BA1 - -/* User clipping planes */ -#define GL_CLIP_PLANE0 0x3000 -#define GL_CLIP_PLANE1 0x3001 -#define GL_CLIP_PLANE2 0x3002 -#define GL_CLIP_PLANE3 0x3003 -#define GL_CLIP_PLANE4 0x3004 -#define GL_CLIP_PLANE5 0x3005 - -/* Accumulation buffer */ -#define GL_ACCUM_RED_BITS 0x0D58 -#define GL_ACCUM_GREEN_BITS 0x0D59 -#define GL_ACCUM_BLUE_BITS 0x0D5A -#define GL_ACCUM_ALPHA_BITS 0x0D5B -#define GL_ACCUM_CLEAR_VALUE 0x0B80 -#define GL_ACCUM 0x0100 -#define GL_ADD 0x0104 -#define GL_LOAD 0x0101 -#define GL_MULT 0x0103 -#define GL_RETURN 0x0102 - -/* Alpha testing */ -#define GL_ALPHA_TEST 0x0BC0 -#define GL_ALPHA_TEST_REF 0x0BC2 -#define GL_ALPHA_TEST_FUNC 0x0BC1 - -/* Blending */ -#define GL_BLEND 0x0BE2 -#define GL_BLEND_SRC 0x0BE1 -#define GL_BLEND_DST 0x0BE0 -#define GL_ZERO 0 -#define GL_ONE 1 -#define GL_SRC_COLOR 0x0300 -#define GL_ONE_MINUS_SRC_COLOR 0x0301 -#define GL_SRC_ALPHA 0x0302 -#define GL_ONE_MINUS_SRC_ALPHA 0x0303 -#define GL_DST_ALPHA 0x0304 -#define GL_ONE_MINUS_DST_ALPHA 0x0305 -#define GL_DST_COLOR 0x0306 -#define GL_ONE_MINUS_DST_COLOR 0x0307 -#define GL_SRC_ALPHA_SATURATE 0x0308 - -/* Render Mode */ -#define GL_FEEDBACK 0x1C01 -#define GL_RENDER 0x1C00 -#define GL_SELECT 0x1C02 - -/* Feedback */ -#define GL_2D 0x0600 -#define GL_3D 0x0601 -#define GL_3D_COLOR 0x0602 -#define GL_3D_COLOR_TEXTURE 0x0603 -#define GL_4D_COLOR_TEXTURE 0x0604 -#define GL_POINT_TOKEN 0x0701 -#define GL_LINE_TOKEN 0x0702 -#define GL_LINE_RESET_TOKEN 0x0707 -#define GL_POLYGON_TOKEN 0x0703 -#define GL_BITMAP_TOKEN 0x0704 -#define GL_DRAW_PIXEL_TOKEN 0x0705 -#define GL_COPY_PIXEL_TOKEN 0x0706 -#define GL_PASS_THROUGH_TOKEN 0x0700 -#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 -#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 -#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 - -/* Selection */ -#define GL_SELECTION_BUFFER_POINTER 0x0DF3 -#define GL_SELECTION_BUFFER_SIZE 0x0DF4 - -/* Fog */ -#define GL_FOG 0x0B60 -#define GL_FOG_MODE 0x0B65 -#define GL_FOG_DENSITY 0x0B62 -#define GL_FOG_COLOR 0x0B66 -#define GL_FOG_INDEX 0x0B61 -#define GL_FOG_START 0x0B63 -#define GL_FOG_END 0x0B64 -#define GL_LINEAR 0x2601 -#define GL_EXP 0x0800 -#define GL_EXP2 0x0801 - -/* Logic Ops */ -#define GL_LOGIC_OP 0x0BF1 -#define GL_INDEX_LOGIC_OP 0x0BF1 -#define GL_COLOR_LOGIC_OP 0x0BF2 -#define GL_LOGIC_OP_MODE 0x0BF0 -#define GL_CLEAR 0x1500 -#define GL_SET 0x150F -#define GL_COPY 0x1503 -#define GL_COPY_INVERTED 0x150C -#define GL_NOOP 0x1505 -#define GL_INVERT 0x150A -#define GL_AND 0x1501 -#define GL_NAND 0x150E -#define GL_OR 0x1507 -#define GL_NOR 0x1508 -#define GL_XOR 0x1506 -#define GL_EQUIV 0x1509 -#define GL_AND_REVERSE 0x1502 -#define GL_AND_INVERTED 0x1504 -#define GL_OR_REVERSE 0x150B -#define GL_OR_INVERTED 0x150D - -/* Stencil */ -#define GL_STENCIL_BITS 0x0D57 -#define GL_STENCIL_TEST 0x0B90 -#define GL_STENCIL_CLEAR_VALUE 0x0B91 -#define GL_STENCIL_FUNC 0x0B92 -#define GL_STENCIL_VALUE_MASK 0x0B93 -#define GL_STENCIL_FAIL 0x0B94 -#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 -#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 -#define GL_STENCIL_REF 0x0B97 -#define GL_STENCIL_WRITEMASK 0x0B98 -#define GL_STENCIL_INDEX 0x1901 -#define GL_KEEP 0x1E00 -#define GL_REPLACE 0x1E01 -#define GL_INCR 0x1E02 -#define GL_DECR 0x1E03 - -/* Buffers, Pixel Drawing/Reading */ -#define GL_NONE 0 -#define GL_LEFT 0x0406 -#define GL_RIGHT 0x0407 -/*GL_FRONT 0x0404 */ -/*GL_BACK 0x0405 */ -/*GL_FRONT_AND_BACK 0x0408 */ -#define GL_FRONT_LEFT 0x0400 -#define GL_FRONT_RIGHT 0x0401 -#define GL_BACK_LEFT 0x0402 -#define GL_BACK_RIGHT 0x0403 -#define GL_AUX0 0x0409 -#define GL_AUX1 0x040A -#define GL_AUX2 0x040B -#define GL_AUX3 0x040C -#define GL_COLOR_INDEX 0x1900 -#define GL_RED 0x1903 -#define GL_GREEN 0x1904 -#define GL_BLUE 0x1905 -#define GL_ALPHA 0x1906 -#define GL_LUMINANCE 0x1909 -#define GL_LUMINANCE_ALPHA 0x190A -#define GL_ALPHA_BITS 0x0D55 -#define GL_RED_BITS 0x0D52 -#define GL_GREEN_BITS 0x0D53 -#define GL_BLUE_BITS 0x0D54 -#define GL_INDEX_BITS 0x0D51 -#define GL_SUBPIXEL_BITS 0x0D50 -#define GL_AUX_BUFFERS 0x0C00 -#define GL_READ_BUFFER 0x0C02 -#define GL_DRAW_BUFFER 0x0C01 -#define GL_DOUBLEBUFFER 0x0C32 -#define GL_STEREO 0x0C33 -#define GL_BITMAP 0x1A00 -#define GL_COLOR 0x1800 -#define GL_DEPTH 0x1801 -#define GL_STENCIL 0x1802 -#define GL_DITHER 0x0BD0 -#define GL_RGB 0x1907 -#define GL_RGBA 0x1908 - -/* Implementation limits */ -#define GL_MAX_LIST_NESTING 0x0B31 -#define GL_MAX_EVAL_ORDER 0x0D30 -#define GL_MAX_LIGHTS 0x0D31 -#define GL_MAX_CLIP_PLANES 0x0D32 -#define GL_MAX_TEXTURE_SIZE 0x0D33 -#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 -#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 -#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 -#define GL_MAX_NAME_STACK_DEPTH 0x0D37 -#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 -#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 -#define GL_MAX_VIEWPORT_DIMS 0x0D3A -#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B - -/* Gets */ -#define GL_ATTRIB_STACK_DEPTH 0x0BB0 -#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 -#define GL_COLOR_CLEAR_VALUE 0x0C22 -#define GL_COLOR_WRITEMASK 0x0C23 -#define GL_CURRENT_INDEX 0x0B01 -#define GL_CURRENT_COLOR 0x0B00 -#define GL_CURRENT_NORMAL 0x0B02 -#define GL_CURRENT_RASTER_COLOR 0x0B04 -#define GL_CURRENT_RASTER_DISTANCE 0x0B09 -#define GL_CURRENT_RASTER_INDEX 0x0B05 -#define GL_CURRENT_RASTER_POSITION 0x0B07 -#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 -#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 -#define GL_CURRENT_TEXTURE_COORDS 0x0B03 -#define GL_INDEX_CLEAR_VALUE 0x0C20 -#define GL_INDEX_MODE 0x0C30 -#define GL_INDEX_WRITEMASK 0x0C21 -#define GL_MODELVIEW_MATRIX 0x0BA6 -#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 -#define GL_NAME_STACK_DEPTH 0x0D70 -#define GL_PROJECTION_MATRIX 0x0BA7 -#define GL_PROJECTION_STACK_DEPTH 0x0BA4 -#define GL_RENDER_MODE 0x0C40 -#define GL_RGBA_MODE 0x0C31 -#define GL_TEXTURE_MATRIX 0x0BA8 -#define GL_TEXTURE_STACK_DEPTH 0x0BA5 -#define GL_VIEWPORT 0x0BA2 - -/* Evaluators */ -#define GL_AUTO_NORMAL 0x0D80 -#define GL_MAP1_COLOR_4 0x0D90 -#define GL_MAP1_INDEX 0x0D91 -#define GL_MAP1_NORMAL 0x0D92 -#define GL_MAP1_TEXTURE_COORD_1 0x0D93 -#define GL_MAP1_TEXTURE_COORD_2 0x0D94 -#define GL_MAP1_TEXTURE_COORD_3 0x0D95 -#define GL_MAP1_TEXTURE_COORD_4 0x0D96 -#define GL_MAP1_VERTEX_3 0x0D97 -#define GL_MAP1_VERTEX_4 0x0D98 -#define GL_MAP2_COLOR_4 0x0DB0 -#define GL_MAP2_INDEX 0x0DB1 -#define GL_MAP2_NORMAL 0x0DB2 -#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 -#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 -#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 -#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 -#define GL_MAP2_VERTEX_3 0x0DB7 -#define GL_MAP2_VERTEX_4 0x0DB8 -#define GL_MAP1_GRID_DOMAIN 0x0DD0 -#define GL_MAP1_GRID_SEGMENTS 0x0DD1 -#define GL_MAP2_GRID_DOMAIN 0x0DD2 -#define GL_MAP2_GRID_SEGMENTS 0x0DD3 -#define GL_COEFF 0x0A00 -#define GL_ORDER 0x0A01 -#define GL_DOMAIN 0x0A02 - -/* Hints */ -#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 -#define GL_POINT_SMOOTH_HINT 0x0C51 -#define GL_LINE_SMOOTH_HINT 0x0C52 -#define GL_POLYGON_SMOOTH_HINT 0x0C53 -#define GL_FOG_HINT 0x0C54 -#define GL_DONT_CARE 0x1100 -#define GL_FASTEST 0x1101 -#define GL_NICEST 0x1102 - -/* Scissor box */ -#define GL_SCISSOR_BOX 0x0C10 -#define GL_SCISSOR_TEST 0x0C11 - -/* Pixel Mode / Transfer */ -#define GL_MAP_COLOR 0x0D10 -#define GL_MAP_STENCIL 0x0D11 -#define GL_INDEX_SHIFT 0x0D12 -#define GL_INDEX_OFFSET 0x0D13 -#define GL_RED_SCALE 0x0D14 -#define GL_RED_BIAS 0x0D15 -#define GL_GREEN_SCALE 0x0D18 -#define GL_GREEN_BIAS 0x0D19 -#define GL_BLUE_SCALE 0x0D1A -#define GL_BLUE_BIAS 0x0D1B -#define GL_ALPHA_SCALE 0x0D1C -#define GL_ALPHA_BIAS 0x0D1D -#define GL_DEPTH_SCALE 0x0D1E -#define GL_DEPTH_BIAS 0x0D1F -#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 -#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 -#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 -#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 -#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 -#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 -#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 -#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 -#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 -#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 -#define GL_PIXEL_MAP_S_TO_S 0x0C71 -#define GL_PIXEL_MAP_I_TO_I 0x0C70 -#define GL_PIXEL_MAP_I_TO_R 0x0C72 -#define GL_PIXEL_MAP_I_TO_G 0x0C73 -#define GL_PIXEL_MAP_I_TO_B 0x0C74 -#define GL_PIXEL_MAP_I_TO_A 0x0C75 -#define GL_PIXEL_MAP_R_TO_R 0x0C76 -#define GL_PIXEL_MAP_G_TO_G 0x0C77 -#define GL_PIXEL_MAP_B_TO_B 0x0C78 -#define GL_PIXEL_MAP_A_TO_A 0x0C79 -#define GL_PACK_ALIGNMENT 0x0D05 -#define GL_PACK_LSB_FIRST 0x0D01 -#define GL_PACK_ROW_LENGTH 0x0D02 -#define GL_PACK_SKIP_PIXELS 0x0D04 -#define GL_PACK_SKIP_ROWS 0x0D03 -#define GL_PACK_SWAP_BYTES 0x0D00 -#define GL_UNPACK_ALIGNMENT 0x0CF5 -#define GL_UNPACK_LSB_FIRST 0x0CF1 -#define GL_UNPACK_ROW_LENGTH 0x0CF2 -#define GL_UNPACK_SKIP_PIXELS 0x0CF4 -#define GL_UNPACK_SKIP_ROWS 0x0CF3 -#define GL_UNPACK_SWAP_BYTES 0x0CF0 -#define GL_ZOOM_X 0x0D16 -#define GL_ZOOM_Y 0x0D17 - -/* Texture mapping */ -#define GL_TEXTURE_ENV 0x2300 -#define GL_TEXTURE_ENV_MODE 0x2200 -#define GL_TEXTURE_1D 0x0DE0 -#define GL_TEXTURE_2D 0x0DE1 -#define GL_TEXTURE_WRAP_S 0x2802 -#define GL_TEXTURE_WRAP_T 0x2803 -#define GL_TEXTURE_MAG_FILTER 0x2800 -#define GL_TEXTURE_MIN_FILTER 0x2801 -#define GL_TEXTURE_ENV_COLOR 0x2201 -#define GL_TEXTURE_GEN_S 0x0C60 -#define GL_TEXTURE_GEN_T 0x0C61 -#define GL_TEXTURE_GEN_R 0x0C62 -#define GL_TEXTURE_GEN_Q 0x0C63 -#define GL_TEXTURE_GEN_MODE 0x2500 -#define GL_TEXTURE_BORDER_COLOR 0x1004 -#define GL_TEXTURE_WIDTH 0x1000 -#define GL_TEXTURE_HEIGHT 0x1001 -#define GL_TEXTURE_BORDER 0x1005 -#define GL_TEXTURE_COMPONENTS 0x1003 -#define GL_TEXTURE_RED_SIZE 0x805C -#define GL_TEXTURE_GREEN_SIZE 0x805D -#define GL_TEXTURE_BLUE_SIZE 0x805E -#define GL_TEXTURE_ALPHA_SIZE 0x805F -#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 -#define GL_TEXTURE_INTENSITY_SIZE 0x8061 -#define GL_NEAREST_MIPMAP_NEAREST 0x2700 -#define GL_NEAREST_MIPMAP_LINEAR 0x2702 -#define GL_LINEAR_MIPMAP_NEAREST 0x2701 -#define GL_LINEAR_MIPMAP_LINEAR 0x2703 -#define GL_OBJECT_LINEAR 0x2401 -#define GL_OBJECT_PLANE 0x2501 -#define GL_EYE_LINEAR 0x2400 -#define GL_EYE_PLANE 0x2502 -#define GL_SPHERE_MAP 0x2402 -#define GL_DECAL 0x2101 -#define GL_MODULATE 0x2100 -#define GL_NEAREST 0x2600 -#define GL_REPEAT 0x2901 -#define GL_CLAMP 0x2900 -#define GL_S 0x2000 -#define GL_T 0x2001 -#define GL_R 0x2002 -#define GL_Q 0x2003 - -/* Utility */ -#define GL_VENDOR 0x1F00 -#define GL_RENDERER 0x1F01 -#define GL_VERSION 0x1F02 -#define GL_EXTENSIONS 0x1F03 - -/* Errors */ -#define GL_NO_ERROR 0 -#define GL_INVALID_ENUM 0x0500 -#define GL_INVALID_VALUE 0x0501 -#define GL_INVALID_OPERATION 0x0502 -#define GL_STACK_OVERFLOW 0x0503 -#define GL_STACK_UNDERFLOW 0x0504 -#define GL_OUT_OF_MEMORY 0x0505 - -/* glPush/PopAttrib bits */ -#define GL_CURRENT_BIT 0x00000001 -#define GL_POINT_BIT 0x00000002 -#define GL_LINE_BIT 0x00000004 -#define GL_POLYGON_BIT 0x00000008 -#define GL_POLYGON_STIPPLE_BIT 0x00000010 -#define GL_PIXEL_MODE_BIT 0x00000020 -#define GL_LIGHTING_BIT 0x00000040 -#define GL_FOG_BIT 0x00000080 -#define GL_DEPTH_BUFFER_BIT 0x00000100 -#define GL_ACCUM_BUFFER_BIT 0x00000200 -#define GL_STENCIL_BUFFER_BIT 0x00000400 -#define GL_VIEWPORT_BIT 0x00000800 -#define GL_TRANSFORM_BIT 0x00001000 -#define GL_ENABLE_BIT 0x00002000 -#define GL_COLOR_BUFFER_BIT 0x00004000 -#define GL_HINT_BIT 0x00008000 -#define GL_EVAL_BIT 0x00010000 -#define GL_LIST_BIT 0x00020000 -#define GL_TEXTURE_BIT 0x00040000 -#define GL_SCISSOR_BIT 0x00080000 -#define GL_ALL_ATTRIB_BITS 0x000FFFFF - - -/* OpenGL 1.1 */ -#define GL_PROXY_TEXTURE_1D 0x8063 -#define GL_PROXY_TEXTURE_2D 0x8064 -#define GL_TEXTURE_PRIORITY 0x8066 -#define GL_TEXTURE_RESIDENT 0x8067 -#define GL_TEXTURE_BINDING_1D 0x8068 -#define GL_TEXTURE_BINDING_2D 0x8069 -#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 -#define GL_ALPHA4 0x803B -#define GL_ALPHA8 0x803C -#define GL_ALPHA12 0x803D -#define GL_ALPHA16 0x803E -#define GL_LUMINANCE4 0x803F -#define GL_LUMINANCE8 0x8040 -#define GL_LUMINANCE12 0x8041 -#define GL_LUMINANCE16 0x8042 -#define GL_LUMINANCE4_ALPHA4 0x8043 -#define GL_LUMINANCE6_ALPHA2 0x8044 -#define GL_LUMINANCE8_ALPHA8 0x8045 -#define GL_LUMINANCE12_ALPHA4 0x8046 -#define GL_LUMINANCE12_ALPHA12 0x8047 -#define GL_LUMINANCE16_ALPHA16 0x8048 -#define GL_INTENSITY 0x8049 -#define GL_INTENSITY4 0x804A -#define GL_INTENSITY8 0x804B -#define GL_INTENSITY12 0x804C -#define GL_INTENSITY16 0x804D -#define GL_R3_G3_B2 0x2A10 -#define GL_RGB4 0x804F -#define GL_RGB5 0x8050 -#define GL_RGB8 0x8051 -#define GL_RGB10 0x8052 -#define GL_RGB12 0x8053 -#define GL_RGB16 0x8054 -#define GL_RGBA2 0x8055 -#define GL_RGBA4 0x8056 -#define GL_RGB5_A1 0x8057 -#define GL_RGBA8 0x8058 -#define GL_RGB10_A2 0x8059 -#define GL_RGBA12 0x805A -#define GL_RGBA16 0x805B -#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 -#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 -#define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF -#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF - - - -/* - * Miscellaneous - */ - -GLAPI void GLAPIENTRY glClearIndex( GLfloat c ); - -GLAPI void GLAPIENTRY glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); - -GLAPI void GLAPIENTRY glClear( GLbitfield mask ); - -GLAPI void GLAPIENTRY glIndexMask( GLuint mask ); - -GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ); - -GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref ); - -GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor ); - -GLAPI void GLAPIENTRY glLogicOp( GLenum opcode ); - -GLAPI void GLAPIENTRY glCullFace( GLenum mode ); - -GLAPI void GLAPIENTRY glFrontFace( GLenum mode ); - -GLAPI void GLAPIENTRY glPointSize( GLfloat size ); - -GLAPI void GLAPIENTRY glLineWidth( GLfloat width ); - -GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern ); - -GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode ); - -GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units ); - -GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask ); - -GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask ); - -GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag ); - -GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag ); - -GLAPI void GLAPIENTRY glScissor( GLint x, GLint y, GLsizei width, GLsizei height); - -GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble *equation ); - -GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble *equation ); - -GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode ); - -GLAPI void GLAPIENTRY glReadBuffer( GLenum mode ); - -GLAPI void GLAPIENTRY glEnable( GLenum cap ); - -GLAPI void GLAPIENTRY glDisable( GLenum cap ); - -GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap ); - - -GLAPI void GLAPIENTRY glEnableClientState( GLenum cap ); /* 1.1 */ - -GLAPI void GLAPIENTRY glDisableClientState( GLenum cap ); /* 1.1 */ - - -GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params ); - -GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params ); - -GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params ); - -GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params ); - - -GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask ); - -GLAPI void GLAPIENTRY glPopAttrib( void ); - - -GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 */ - -GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */ - - -GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode ); - -GLAPI GLenum GLAPIENTRY glGetError( void ); - -GLAPI const GLubyte * GLAPIENTRY glGetString( GLenum name ); - -GLAPI void GLAPIENTRY glFinish( void ); - -GLAPI void GLAPIENTRY glFlush( void ); - -GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode ); - - -/* - * Depth Buffer - */ - -GLAPI void GLAPIENTRY glClearDepth( GLclampd depth ); - -GLAPI void GLAPIENTRY glDepthFunc( GLenum func ); - -GLAPI void GLAPIENTRY glDepthMask( GLboolean flag ); - -GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd far_val ); - - -/* - * Accumulation Buffer - */ - -GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); - -GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value ); - - -/* - * Transformation - */ - -GLAPI void GLAPIENTRY glMatrixMode( GLenum mode ); - -GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right, - GLdouble bottom, GLdouble top, - GLdouble near_val, GLdouble far_val ); - -GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right, - GLdouble bottom, GLdouble top, - GLdouble near_val, GLdouble far_val ); - -GLAPI void GLAPIENTRY glViewport( GLint x, GLint y, - GLsizei width, GLsizei height ); - -GLAPI void GLAPIENTRY glPushMatrix( void ); - -GLAPI void GLAPIENTRY glPopMatrix( void ); - -GLAPI void GLAPIENTRY glLoadIdentity( void ); - -GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m ); -GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m ); - -GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m ); -GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m ); - -GLAPI void GLAPIENTRY glRotated( GLdouble angle, - GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glRotatef( GLfloat angle, - GLfloat x, GLfloat y, GLfloat z ); - -GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z ); - -GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, GLfloat z ); - - -/* - * Display Lists - */ - -GLAPI GLboolean GLAPIENTRY glIsList( GLuint list ); - -GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range ); - -GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range ); - -GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode ); - -GLAPI void GLAPIENTRY glEndList( void ); - -GLAPI void GLAPIENTRY glCallList( GLuint list ); - -GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type, - const GLvoid *lists ); - -GLAPI void GLAPIENTRY glListBase( GLuint base ); - - -/* - * Drawing Functions - */ - -GLAPI void GLAPIENTRY glBegin( GLenum mode ); - -GLAPI void GLAPIENTRY glEnd( void ); - - -GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y ); -GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y ); -GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y ); -GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y ); - -GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z ); -GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z ); -GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z ); - -GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); -GLAPI void GLAPIENTRY glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); -GLAPI void GLAPIENTRY glVertex4i( GLint x, GLint y, GLint z, GLint w ); -GLAPI void GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w ); - -GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glVertex2iv( const GLint *v ); -GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glVertex3iv( const GLint *v ); -GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glVertex4iv( const GLint *v ); -GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v ); - - -GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ); -GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz ); -GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz ); -GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, GLint nz ); -GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort ny, GLshort nz ); - -GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v ); -GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glNormal3iv( const GLint *v ); -GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v ); - - -GLAPI void GLAPIENTRY glIndexd( GLdouble c ); -GLAPI void GLAPIENTRY glIndexf( GLfloat c ); -GLAPI void GLAPIENTRY glIndexi( GLint c ); -GLAPI void GLAPIENTRY glIndexs( GLshort c ); -GLAPI void GLAPIENTRY glIndexub( GLubyte c ); /* 1.1 */ - -GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c ); -GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c ); -GLAPI void GLAPIENTRY glIndexiv( const GLint *c ); -GLAPI void GLAPIENTRY glIndexsv( const GLshort *c ); -GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */ - -GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte blue ); -GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble green, GLdouble blue ); -GLAPI void GLAPIENTRY glColor3f( GLfloat red, GLfloat green, GLfloat blue ); -GLAPI void GLAPIENTRY glColor3i( GLint red, GLint green, GLint blue ); -GLAPI void GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue ); -GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, GLubyte blue ); -GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint green, GLuint blue ); -GLAPI void GLAPIENTRY glColor3us( GLushort red, GLushort green, GLushort blue ); - -GLAPI void GLAPIENTRY glColor4b( GLbyte red, GLbyte green, - GLbyte blue, GLbyte alpha ); -GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green, - GLdouble blue, GLdouble alpha ); -GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green, - GLfloat blue, GLfloat alpha ); -GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green, - GLint blue, GLint alpha ); -GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green, - GLshort blue, GLshort alpha ); -GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green, - GLubyte blue, GLubyte alpha ); -GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green, - GLuint blue, GLuint alpha ); -GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green, - GLushort blue, GLushort alpha ); - - -GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v ); -GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glColor3iv( const GLint *v ); -GLAPI void GLAPIENTRY glColor3sv( const GLshort *v ); -GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v ); -GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v ); -GLAPI void GLAPIENTRY glColor3usv( const GLushort *v ); - -GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v ); -GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glColor4iv( const GLint *v ); -GLAPI void GLAPIENTRY glColor4sv( const GLshort *v ); -GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v ); -GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v ); -GLAPI void GLAPIENTRY glColor4usv( const GLushort *v ); - - -GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s ); -GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s ); -GLAPI void GLAPIENTRY glTexCoord1i( GLint s ); -GLAPI void GLAPIENTRY glTexCoord1s( GLshort s ); - -GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t ); -GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t ); -GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t ); -GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t ); - -GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble r ); -GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, GLfloat r ); -GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, GLint r ); -GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, GLshort r ); - -GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q ); -GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q ); -GLAPI void GLAPIENTRY glTexCoord4i( GLint s, GLint t, GLint r, GLint q ); -GLAPI void GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q ); - -GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v ); -GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v ); -GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v ); -GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v ); -GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v ); - - -GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y ); -GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y ); -GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y ); -GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y ); - -GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, GLdouble z ); -GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, GLfloat y, GLfloat z ); -GLAPI void GLAPIENTRY glRasterPos3i( GLint x, GLint y, GLint z ); -GLAPI void GLAPIENTRY glRasterPos3s( GLshort x, GLshort y, GLshort z ); - -GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w ); -GLAPI void GLAPIENTRY glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); -GLAPI void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w ); -GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w ); - -GLAPI void GLAPIENTRY glRasterPos2dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v ); -GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v ); -GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v ); - -GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v ); -GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v ); -GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v ); -GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v ); - - -GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ); -GLAPI void GLAPIENTRY glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ); -GLAPI void GLAPIENTRY glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ); -GLAPI void GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); - - -GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble *v2 ); -GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const GLfloat *v2 ); -GLAPI void GLAPIENTRY glRectiv( const GLint *v1, const GLint *v2 ); -GLAPI void GLAPIENTRY glRectsv( const GLshort *v1, const GLshort *v2 ); - - -/* - * Vertex Arrays (1.1) - */ - -GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type, - GLsizei stride, const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride, - const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type, - GLsizei stride, const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride, - const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type, - GLsizei stride, const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr ); - -GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, GLvoid **params ); - -GLAPI void GLAPIENTRY glArrayElement( GLint i ); - -GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, GLsizei count ); - -GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count, - GLenum type, const GLvoid *indices ); - -GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei stride, - const GLvoid *pointer ); - -/* - * Lighting - */ - -GLAPI void GLAPIENTRY glShadeModel( GLenum mode ); - -GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, GLint param ); -GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum pname, - const GLfloat *params ); -GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname, - const GLint *params ); - -GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname, - GLfloat *params ); -GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param ); -GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat *params ); -GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const GLint *params ); - -GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glMateriali( GLenum face, GLenum pname, GLint param ); -GLAPI void GLAPIENTRY glMaterialfv( GLenum face, GLenum pname, const GLfloat *params ); -GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const GLint *params ); - -GLAPI void GLAPIENTRY glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params ); -GLAPI void GLAPIENTRY glGetMaterialiv( GLenum face, GLenum pname, GLint *params ); - -GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode ); - - -/* - * Raster functions - */ - -GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor ); - -GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLsizei mapsize, - const GLfloat *values ); -GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLsizei mapsize, - const GLuint *values ); -GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLsizei mapsize, - const GLushort *values ); - -GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values ); -GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values ); -GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values ); - -GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height, - GLfloat xorig, GLfloat yorig, - GLfloat xmove, GLfloat ymove, - const GLubyte *bitmap ); - -GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y, - GLsizei width, GLsizei height, - GLenum format, GLenum type, - GLvoid *pixels ); - -GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height, - GLenum format, GLenum type, - const GLvoid *pixels ); - -GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y, - GLsizei width, GLsizei height, - GLenum type ); - -/* - * Stenciling - */ - -GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint mask ); - -GLAPI void GLAPIENTRY glStencilMask( GLuint mask ); - -GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum zpass ); - -GLAPI void GLAPIENTRY glClearStencil( GLint s ); - - - -/* - * Texture mapping - */ - -GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, GLdouble param ); -GLAPI void GLAPIENTRY glTexGenf( GLenum coord, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glTexGeni( GLenum coord, GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const GLdouble *params ); -GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params ); -GLAPI void GLAPIENTRY glTexGeniv( GLenum coord, GLenum pname, const GLint *params ); - -GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params ); -GLAPI void GLAPIENTRY glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params ); -GLAPI void GLAPIENTRY glGetTexGeniv( GLenum coord, GLenum pname, GLint *params ); - - -GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glTexEnvi( GLenum target, GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params ); -GLAPI void GLAPIENTRY glTexEnviv( GLenum target, GLenum pname, const GLint *params ); - -GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ); -GLAPI void GLAPIENTRY glGetTexEnviv( GLenum target, GLenum pname, GLint *params ); - - -GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, GLfloat param ); -GLAPI void GLAPIENTRY glTexParameteri( GLenum target, GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname, - const GLfloat *params ); -GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname, - const GLint *params ); - -GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target, - GLenum pname, GLfloat *params); -GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target, - GLenum pname, GLint *params ); - -GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint level, - GLenum pname, GLfloat *params ); -GLAPI void GLAPIENTRY glGetTexLevelParameteriv( GLenum target, GLint level, - GLenum pname, GLint *params ); - - -GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level, - GLint internalFormat, - GLsizei width, GLint border, - GLenum format, GLenum type, - const GLvoid *pixels ); - -GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level, - GLint internalFormat, - GLsizei width, GLsizei height, - GLint border, GLenum format, GLenum type, - const GLvoid *pixels ); - -GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level, - GLenum format, GLenum type, - GLvoid *pixels ); - - -/* 1.1 functions */ - -GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures ); - -GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint *textures); - -GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture ); - -GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n, - const GLuint *textures, - const GLclampf *priorities ); - -GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n, - const GLuint *textures, - GLboolean *residences ); - -GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture ); - - -GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level, - GLint xoffset, - GLsizei width, GLenum format, - GLenum type, const GLvoid *pixels ); - - -GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level, - GLint xoffset, GLint yoffset, - GLsizei width, GLsizei height, - GLenum format, GLenum type, - const GLvoid *pixels ); - - -GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level, - GLenum internalformat, - GLint x, GLint y, - GLsizei width, GLint border ); - - -GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level, - GLenum internalformat, - GLint x, GLint y, - GLsizei width, GLsizei height, - GLint border ); - - -GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint level, - GLint xoffset, GLint x, GLint y, - GLsizei width ); - - -GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint level, - GLint xoffset, GLint yoffset, - GLint x, GLint y, - GLsizei width, GLsizei height ); - - -/* - * Evaluators - */ - -GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble u2, - GLint stride, - GLint order, const GLdouble *points ); -GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2, - GLint stride, - GLint order, const GLfloat *points ); - -GLAPI void GLAPIENTRY glMap2d( GLenum target, - GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, - GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, - const GLdouble *points ); -GLAPI void GLAPIENTRY glMap2f( GLenum target, - GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, - GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, - const GLfloat *points ); - -GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, GLdouble *v ); -GLAPI void GLAPIENTRY glGetMapfv( GLenum target, GLenum query, GLfloat *v ); -GLAPI void GLAPIENTRY glGetMapiv( GLenum target, GLenum query, GLint *v ); - -GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u ); -GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u ); - -GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u ); -GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u ); - -GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v ); -GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v ); - -GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u ); -GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u ); - -GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 ); -GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 ); - -GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble u2, - GLint vn, GLdouble v1, GLdouble v2 ); -GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, GLfloat u2, - GLint vn, GLfloat v1, GLfloat v2 ); - -GLAPI void GLAPIENTRY glEvalPoint1( GLint i ); - -GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j ); - -GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 ); - -GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); - - -/* - * Fog - */ - -GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param ); - -GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param ); - -GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params ); - -GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params ); - - -/* - * Selection and Feedback - */ - -GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer ); - -GLAPI void GLAPIENTRY glPassThrough( GLfloat token ); - -GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer ); - -GLAPI void GLAPIENTRY glInitNames( void ); - -GLAPI void GLAPIENTRY glLoadName( GLuint name ); - -GLAPI void GLAPIENTRY glPushName( GLuint name ); - -GLAPI void GLAPIENTRY glPopName( void ); - - - -/* - * OpenGL 1.2 - */ - -#define GL_RESCALE_NORMAL 0x803A -#define GL_CLAMP_TO_EDGE 0x812F -#define GL_MAX_ELEMENTS_VERTICES 0x80E8 -#define GL_MAX_ELEMENTS_INDICES 0x80E9 -#define GL_BGR 0x80E0 -#define GL_BGRA 0x80E1 -#define GL_UNSIGNED_BYTE_3_3_2 0x8032 -#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 -#define GL_UNSIGNED_SHORT_5_6_5 0x8363 -#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 -#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 -#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 -#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 -#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 -#define GL_UNSIGNED_INT_8_8_8_8 0x8035 -#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 -#define GL_UNSIGNED_INT_10_10_10_2 0x8036 -#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 -#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 -#define GL_SINGLE_COLOR 0x81F9 -#define GL_SEPARATE_SPECULAR_COLOR 0x81FA -#define GL_TEXTURE_MIN_LOD 0x813A -#define GL_TEXTURE_MAX_LOD 0x813B -#define GL_TEXTURE_BASE_LEVEL 0x813C -#define GL_TEXTURE_MAX_LEVEL 0x813D -#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 -#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 -#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 -#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 -#define GL_ALIASED_POINT_SIZE_RANGE 0x846D -#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E -#define GL_PACK_SKIP_IMAGES 0x806B -#define GL_PACK_IMAGE_HEIGHT 0x806C -#define GL_UNPACK_SKIP_IMAGES 0x806D -#define GL_UNPACK_IMAGE_HEIGHT 0x806E -#define GL_TEXTURE_3D 0x806F -#define GL_PROXY_TEXTURE_3D 0x8070 -#define GL_TEXTURE_DEPTH 0x8071 -#define GL_TEXTURE_WRAP_R 0x8072 -#define GL_MAX_3D_TEXTURE_SIZE 0x8073 -#define GL_TEXTURE_BINDING_3D 0x806A - -GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start, - GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); - -GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level, - GLint internalFormat, - GLsizei width, GLsizei height, - GLsizei depth, GLint border, - GLenum format, GLenum type, - const GLvoid *pixels ); - -GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level, - GLint xoffset, GLint yoffset, - GLint zoffset, GLsizei width, - GLsizei height, GLsizei depth, - GLenum format, - GLenum type, const GLvoid *pixels); - -GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint level, - GLint xoffset, GLint yoffset, - GLint zoffset, GLint x, - GLint y, GLsizei width, - GLsizei height ); - -typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); -typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); - - -/* - * GL_ARB_imaging - */ - -#define GL_CONSTANT_COLOR 0x8001 -#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 -#define GL_CONSTANT_ALPHA 0x8003 -#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 -#define GL_COLOR_TABLE 0x80D0 -#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 -#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 -#define GL_PROXY_COLOR_TABLE 0x80D3 -#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 -#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 -#define GL_COLOR_TABLE_SCALE 0x80D6 -#define GL_COLOR_TABLE_BIAS 0x80D7 -#define GL_COLOR_TABLE_FORMAT 0x80D8 -#define GL_COLOR_TABLE_WIDTH 0x80D9 -#define GL_COLOR_TABLE_RED_SIZE 0x80DA -#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB -#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC -#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD -#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE -#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF -#define GL_CONVOLUTION_1D 0x8010 -#define GL_CONVOLUTION_2D 0x8011 -#define GL_SEPARABLE_2D 0x8012 -#define GL_CONVOLUTION_BORDER_MODE 0x8013 -#define GL_CONVOLUTION_FILTER_SCALE 0x8014 -#define GL_CONVOLUTION_FILTER_BIAS 0x8015 -#define GL_REDUCE 0x8016 -#define GL_CONVOLUTION_FORMAT 0x8017 -#define GL_CONVOLUTION_WIDTH 0x8018 -#define GL_CONVOLUTION_HEIGHT 0x8019 -#define GL_MAX_CONVOLUTION_WIDTH 0x801A -#define GL_MAX_CONVOLUTION_HEIGHT 0x801B -#define GL_POST_CONVOLUTION_RED_SCALE 0x801C -#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D -#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E -#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F -#define GL_POST_CONVOLUTION_RED_BIAS 0x8020 -#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 -#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 -#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 -#define GL_CONSTANT_BORDER 0x8151 -#define GL_REPLICATE_BORDER 0x8153 -#define GL_CONVOLUTION_BORDER_COLOR 0x8154 -#define GL_COLOR_MATRIX 0x80B1 -#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 -#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 -#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 -#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 -#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 -#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 -#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 -#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 -#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA -#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB -#define GL_HISTOGRAM 0x8024 -#define GL_PROXY_HISTOGRAM 0x8025 -#define GL_HISTOGRAM_WIDTH 0x8026 -#define GL_HISTOGRAM_FORMAT 0x8027 -#define GL_HISTOGRAM_RED_SIZE 0x8028 -#define GL_HISTOGRAM_GREEN_SIZE 0x8029 -#define GL_HISTOGRAM_BLUE_SIZE 0x802A -#define GL_HISTOGRAM_ALPHA_SIZE 0x802B -#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C -#define GL_HISTOGRAM_SINK 0x802D -#define GL_MINMAX 0x802E -#define GL_MINMAX_FORMAT 0x802F -#define GL_MINMAX_SINK 0x8030 -#define GL_TABLE_TOO_LARGE 0x8031 -#define GL_BLEND_EQUATION 0x8009 -#define GL_MIN 0x8007 -#define GL_MAX 0x8008 -#define GL_FUNC_ADD 0x8006 -#define GL_FUNC_SUBTRACT 0x800A -#define GL_FUNC_REVERSE_SUBTRACT 0x800B -#define GL_BLEND_COLOR 0x8005 - - -GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum internalformat, - GLsizei width, GLenum format, - GLenum type, const GLvoid *table ); - -GLAPI void GLAPIENTRY glColorSubTable( GLenum target, - GLsizei start, GLsizei count, - GLenum format, GLenum type, - const GLvoid *data ); - -GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum pname, - const GLint *params); - -GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum pname, - const GLfloat *params); - -GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei start, - GLint x, GLint y, GLsizei width ); - -GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum internalformat, - GLint x, GLint y, GLsizei width ); - -GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format, - GLenum type, GLvoid *table ); - -GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, GLenum pname, - GLfloat *params ); - -GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glBlendEquation( GLenum mode ); - -GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green, - GLclampf blue, GLclampf alpha ); - -GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width, - GLenum internalformat, GLboolean sink ); - -GLAPI void GLAPIENTRY glResetHistogram( GLenum target ); - -GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset, - GLenum format, GLenum type, - GLvoid *values ); - -GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, GLenum pname, - GLfloat *params ); - -GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat, - GLboolean sink ); - -GLAPI void GLAPIENTRY glResetMinmax( GLenum target ); - -GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset, - GLenum format, GLenum types, - GLvoid *values ); - -GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum pname, - GLfloat *params ); - -GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target, - GLenum internalformat, GLsizei width, GLenum format, GLenum type, - const GLvoid *image ); - -GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target, - GLenum internalformat, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid *image ); - -GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum pname, - GLfloat params ); - -GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, GLenum pname, - const GLfloat *params ); - -GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum pname, - GLint params ); - -GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, GLenum pname, - const GLint *params ); - -GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target, - GLenum internalformat, GLint x, GLint y, GLsizei width ); - -GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target, - GLenum internalformat, GLint x, GLint y, GLsizei width, - GLsizei height); - -GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum format, - GLenum type, GLvoid *image ); - -GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, GLenum pname, - GLfloat *params ); - -GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, GLenum pname, - GLint *params ); - -GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target, - GLenum internalformat, GLsizei width, GLsizei height, GLenum format, - GLenum type, const GLvoid *row, const GLvoid *column ); - -GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format, - GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); - - - - -/* - * OpenGL 1.3 - */ - -/* multitexture */ -#define GL_TEXTURE0 0x84C0 -#define GL_TEXTURE1 0x84C1 -#define GL_TEXTURE2 0x84C2 -#define GL_TEXTURE3 0x84C3 -#define GL_TEXTURE4 0x84C4 -#define GL_TEXTURE5 0x84C5 -#define GL_TEXTURE6 0x84C6 -#define GL_TEXTURE7 0x84C7 -#define GL_TEXTURE8 0x84C8 -#define GL_TEXTURE9 0x84C9 -#define GL_TEXTURE10 0x84CA -#define GL_TEXTURE11 0x84CB -#define GL_TEXTURE12 0x84CC -#define GL_TEXTURE13 0x84CD -#define GL_TEXTURE14 0x84CE -#define GL_TEXTURE15 0x84CF -#define GL_TEXTURE16 0x84D0 -#define GL_TEXTURE17 0x84D1 -#define GL_TEXTURE18 0x84D2 -#define GL_TEXTURE19 0x84D3 -#define GL_TEXTURE20 0x84D4 -#define GL_TEXTURE21 0x84D5 -#define GL_TEXTURE22 0x84D6 -#define GL_TEXTURE23 0x84D7 -#define GL_TEXTURE24 0x84D8 -#define GL_TEXTURE25 0x84D9 -#define GL_TEXTURE26 0x84DA -#define GL_TEXTURE27 0x84DB -#define GL_TEXTURE28 0x84DC -#define GL_TEXTURE29 0x84DD -#define GL_TEXTURE30 0x84DE -#define GL_TEXTURE31 0x84DF -#define GL_ACTIVE_TEXTURE 0x84E0 -#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 -#define GL_MAX_TEXTURE_UNITS 0x84E2 -/* texture_cube_map */ -#define GL_NORMAL_MAP 0x8511 -#define GL_REFLECTION_MAP 0x8512 -#define GL_TEXTURE_CUBE_MAP 0x8513 -#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A -#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B -#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C -/* texture_compression */ -#define GL_COMPRESSED_ALPHA 0x84E9 -#define GL_COMPRESSED_LUMINANCE 0x84EA -#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB -#define GL_COMPRESSED_INTENSITY 0x84EC -#define GL_COMPRESSED_RGB 0x84ED -#define GL_COMPRESSED_RGBA 0x84EE -#define GL_TEXTURE_COMPRESSION_HINT 0x84EF -#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 -#define GL_TEXTURE_COMPRESSED 0x86A1 -#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 -#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 -/* multisample */ -#define GL_MULTISAMPLE 0x809D -#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E -#define GL_SAMPLE_ALPHA_TO_ONE 0x809F -#define GL_SAMPLE_COVERAGE 0x80A0 -#define GL_SAMPLE_BUFFERS 0x80A8 -#define GL_SAMPLES 0x80A9 -#define GL_SAMPLE_COVERAGE_VALUE 0x80AA -#define GL_SAMPLE_COVERAGE_INVERT 0x80AB -#define GL_MULTISAMPLE_BIT 0x20000000 -/* transpose_matrix */ -#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 -#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 -#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 -#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 -/* texture_env_combine */ -#define GL_COMBINE 0x8570 -#define GL_COMBINE_RGB 0x8571 -#define GL_COMBINE_ALPHA 0x8572 -#define GL_SOURCE0_RGB 0x8580 -#define GL_SOURCE1_RGB 0x8581 -#define GL_SOURCE2_RGB 0x8582 -#define GL_SOURCE0_ALPHA 0x8588 -#define GL_SOURCE1_ALPHA 0x8589 -#define GL_SOURCE2_ALPHA 0x858A -#define GL_OPERAND0_RGB 0x8590 -#define GL_OPERAND1_RGB 0x8591 -#define GL_OPERAND2_RGB 0x8592 -#define GL_OPERAND0_ALPHA 0x8598 -#define GL_OPERAND1_ALPHA 0x8599 -#define GL_OPERAND2_ALPHA 0x859A -#define GL_RGB_SCALE 0x8573 -#define GL_ADD_SIGNED 0x8574 -#define GL_INTERPOLATE 0x8575 -#define GL_SUBTRACT 0x84E7 -#define GL_CONSTANT 0x8576 -#define GL_PRIMARY_COLOR 0x8577 -#define GL_PREVIOUS 0x8578 -/* texture_env_dot3 */ -#define GL_DOT3_RGB 0x86AE -#define GL_DOT3_RGBA 0x86AF -/* texture_border_clamp */ -#define GL_CLAMP_TO_BORDER 0x812D - -GLAPI void GLAPIENTRY glActiveTexture( GLenum texture ); - -GLAPI void GLAPIENTRY glClientActiveTexture( GLenum texture ); - -GLAPI void GLAPIENTRY glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); - -GLAPI void GLAPIENTRY glGetCompressedTexImage( GLenum target, GLint lod, GLvoid *img ); - -GLAPI void GLAPIENTRY glMultiTexCoord1d( GLenum target, GLdouble s ); - -GLAPI void GLAPIENTRY glMultiTexCoord1dv( GLenum target, const GLdouble *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord1f( GLenum target, GLfloat s ); - -GLAPI void GLAPIENTRY glMultiTexCoord1fv( GLenum target, const GLfloat *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord1i( GLenum target, GLint s ); - -GLAPI void GLAPIENTRY glMultiTexCoord1iv( GLenum target, const GLint *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord1s( GLenum target, GLshort s ); - -GLAPI void GLAPIENTRY glMultiTexCoord1sv( GLenum target, const GLshort *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t ); - -GLAPI void GLAPIENTRY glMultiTexCoord2dv( GLenum target, const GLdouble *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t ); - -GLAPI void GLAPIENTRY glMultiTexCoord2fv( GLenum target, const GLfloat *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord2i( GLenum target, GLint s, GLint t ); - -GLAPI void GLAPIENTRY glMultiTexCoord2iv( GLenum target, const GLint *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord2s( GLenum target, GLshort s, GLshort t ); - -GLAPI void GLAPIENTRY glMultiTexCoord2sv( GLenum target, const GLshort *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r ); - -GLAPI void GLAPIENTRY glMultiTexCoord3dv( GLenum target, const GLdouble *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r ); - -GLAPI void GLAPIENTRY glMultiTexCoord3fv( GLenum target, const GLfloat *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r ); - -GLAPI void GLAPIENTRY glMultiTexCoord3iv( GLenum target, const GLint *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r ); - -GLAPI void GLAPIENTRY glMultiTexCoord3sv( GLenum target, const GLshort *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); - -GLAPI void GLAPIENTRY glMultiTexCoord4dv( GLenum target, const GLdouble *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); - -GLAPI void GLAPIENTRY glMultiTexCoord4fv( GLenum target, const GLfloat *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q ); - -GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint *v ); - -GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); - -GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const GLshort *v ); - - -GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] ); - -GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] ); - -GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] ); - -GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] ); - -GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean invert ); - - -typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture); -typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data); -typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img); - - - -/* - * GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1) - */ -#ifndef GL_ARB_multitexture -#define GL_ARB_multitexture 1 - -#define GL_TEXTURE0_ARB 0x84C0 -#define GL_TEXTURE1_ARB 0x84C1 -#define GL_TEXTURE2_ARB 0x84C2 -#define GL_TEXTURE3_ARB 0x84C3 -#define GL_TEXTURE4_ARB 0x84C4 -#define GL_TEXTURE5_ARB 0x84C5 -#define GL_TEXTURE6_ARB 0x84C6 -#define GL_TEXTURE7_ARB 0x84C7 -#define GL_TEXTURE8_ARB 0x84C8 -#define GL_TEXTURE9_ARB 0x84C9 -#define GL_TEXTURE10_ARB 0x84CA -#define GL_TEXTURE11_ARB 0x84CB -#define GL_TEXTURE12_ARB 0x84CC -#define GL_TEXTURE13_ARB 0x84CD -#define GL_TEXTURE14_ARB 0x84CE -#define GL_TEXTURE15_ARB 0x84CF -#define GL_TEXTURE16_ARB 0x84D0 -#define GL_TEXTURE17_ARB 0x84D1 -#define GL_TEXTURE18_ARB 0x84D2 -#define GL_TEXTURE19_ARB 0x84D3 -#define GL_TEXTURE20_ARB 0x84D4 -#define GL_TEXTURE21_ARB 0x84D5 -#define GL_TEXTURE22_ARB 0x84D6 -#define GL_TEXTURE23_ARB 0x84D7 -#define GL_TEXTURE24_ARB 0x84D8 -#define GL_TEXTURE25_ARB 0x84D9 -#define GL_TEXTURE26_ARB 0x84DA -#define GL_TEXTURE27_ARB 0x84DB -#define GL_TEXTURE28_ARB 0x84DC -#define GL_TEXTURE29_ARB 0x84DD -#define GL_TEXTURE30_ARB 0x84DE -#define GL_TEXTURE31_ARB 0x84DF -#define GL_ACTIVE_TEXTURE_ARB 0x84E0 -#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 -#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 - -GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture); -GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture); -GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble s); -GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const GLdouble *v); -GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum target, GLfloat s); -GLAPI void GLAPIENTRY glMultiTexCoord1fvARB(GLenum target, const GLfloat *v); -GLAPI void GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s); -GLAPI void GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v); -GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort s); -GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const GLshort *v); -GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t); -GLAPI void GLAPIENTRY glMultiTexCoord2dvARB(GLenum target, const GLdouble *v); -GLAPI void GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t); -GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const GLfloat *v); -GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum target, GLint s, GLint t); -GLAPI void GLAPIENTRY glMultiTexCoord2ivARB(GLenum target, const GLint *v); -GLAPI void GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t); -GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const GLshort *v); -GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r); -GLAPI void GLAPIENTRY glMultiTexCoord3dvARB(GLenum target, const GLdouble *v); -GLAPI void GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r); -GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum target, const GLfloat *v); -GLAPI void GLAPIENTRY glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r); -GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const GLint *v); -GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r); -GLAPI void GLAPIENTRY glMultiTexCoord3svARB(GLenum target, const GLshort *v); -GLAPI void GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); -GLAPI void GLAPIENTRY glMultiTexCoord4dvARB(GLenum target, const GLdouble *v); -GLAPI void GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); -GLAPI void GLAPIENTRY glMultiTexCoord4fvARB(GLenum target, const GLfloat *v); -GLAPI void GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q); -GLAPI void GLAPIENTRY glMultiTexCoord4ivARB(GLenum target, const GLint *v); -GLAPI void GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); -GLAPI void GLAPIENTRY glMultiTexCoord4svARB(GLenum target, const GLshort *v); - -typedef void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture); -typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s); -typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); -typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); -typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); -typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); - -#endif /* GL_ARB_multitexture */ - - - -/* - * Define this token if you want "old-style" header file behaviour (extensions - * defined in gl.h). Otherwise, extensions will be included from glext.h. - */ -#if !defined(NO_SDL_GLEXT) && !defined(GL_GLEXT_LEGACY) -#include "SDL_opengl_glext.h" -#endif /* GL_GLEXT_LEGACY */ - - - -/********************************************************************** - * Begin system-specific stuff - */ -#if defined(PRAGMA_EXPORT_SUPPORTED) -#pragma export off -#endif - -/* - * End system-specific stuff - **********************************************************************/ - - -#ifdef __cplusplus -} -#endif - -#endif /* __gl_h_ */ - -#endif /* !__IPHONEOS__ */ - -#endif /* SDL_opengl_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_opengl.h.blob deleted file mode 100644 index 3b090834fa5a17ab76c4e52ee7a27cfe67ebf9f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12231 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 Jd36PZ{|A2R>^1-Z diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h deleted file mode 100644 index 9abd57b4..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h +++ /dev/null @@ -1,644 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_pixels.h - * - * Header for the enumerated pixel format definitions. - */ - -#ifndef SDL_pixels_h_ -#define SDL_pixels_h_ - -#include "SDL_stdinc.h" -#include "SDL_endian.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \name Transparency definitions - * - * These define alpha as the opacity of a surface. - */ -/* @{ */ -#define SDL_ALPHA_OPAQUE 255 -#define SDL_ALPHA_TRANSPARENT 0 -/* @} */ - -/** Pixel type. */ -typedef enum -{ - SDL_PIXELTYPE_UNKNOWN, - SDL_PIXELTYPE_INDEX1, - SDL_PIXELTYPE_INDEX4, - SDL_PIXELTYPE_INDEX8, - SDL_PIXELTYPE_PACKED8, - SDL_PIXELTYPE_PACKED16, - SDL_PIXELTYPE_PACKED32, - SDL_PIXELTYPE_ARRAYU8, - SDL_PIXELTYPE_ARRAYU16, - SDL_PIXELTYPE_ARRAYU32, - SDL_PIXELTYPE_ARRAYF16, - SDL_PIXELTYPE_ARRAYF32 -} SDL_PixelType; - -/** Bitmap pixel order, high bit -> low bit. */ -typedef enum -{ - SDL_BITMAPORDER_NONE, - SDL_BITMAPORDER_4321, - SDL_BITMAPORDER_1234 -} SDL_BitmapOrder; - -/** Packed component order, high bit -> low bit. */ -typedef enum -{ - SDL_PACKEDORDER_NONE, - SDL_PACKEDORDER_XRGB, - SDL_PACKEDORDER_RGBX, - SDL_PACKEDORDER_ARGB, - SDL_PACKEDORDER_RGBA, - SDL_PACKEDORDER_XBGR, - SDL_PACKEDORDER_BGRX, - SDL_PACKEDORDER_ABGR, - SDL_PACKEDORDER_BGRA -} SDL_PackedOrder; - -/** Array component order, low byte -> high byte. */ -/* !!! FIXME: in 2.1, make these not overlap differently with - !!! FIXME: SDL_PACKEDORDER_*, so we can simplify SDL_ISPIXELFORMAT_ALPHA */ -typedef enum -{ - SDL_ARRAYORDER_NONE, - SDL_ARRAYORDER_RGB, - SDL_ARRAYORDER_RGBA, - SDL_ARRAYORDER_ARGB, - SDL_ARRAYORDER_BGR, - SDL_ARRAYORDER_BGRA, - SDL_ARRAYORDER_ABGR -} SDL_ArrayOrder; - -/** Packed component layout. */ -typedef enum -{ - SDL_PACKEDLAYOUT_NONE, - SDL_PACKEDLAYOUT_332, - SDL_PACKEDLAYOUT_4444, - SDL_PACKEDLAYOUT_1555, - SDL_PACKEDLAYOUT_5551, - SDL_PACKEDLAYOUT_565, - SDL_PACKEDLAYOUT_8888, - SDL_PACKEDLAYOUT_2101010, - SDL_PACKEDLAYOUT_1010102 -} SDL_PackedLayout; - -#define SDL_DEFINE_PIXELFOURCC(A, B, C, D) SDL_FOURCC(A, B, C, D) - -#define SDL_DEFINE_PIXELFORMAT(type, order, layout, bits, bytes) \ - ((1 << 28) | ((type) << 24) | ((order) << 20) | ((layout) << 16) | \ - ((bits) << 8) | ((bytes) << 0)) - -#define SDL_PIXELFLAG(X) (((X) >> 28) & 0x0F) -#define SDL_PIXELTYPE(X) (((X) >> 24) & 0x0F) -#define SDL_PIXELORDER(X) (((X) >> 20) & 0x0F) -#define SDL_PIXELLAYOUT(X) (((X) >> 16) & 0x0F) -#define SDL_BITSPERPIXEL(X) (((X) >> 8) & 0xFF) -#define SDL_BYTESPERPIXEL(X) \ - (SDL_ISPIXELFORMAT_FOURCC(X) ? \ - ((((X) == SDL_PIXELFORMAT_YUY2) || \ - ((X) == SDL_PIXELFORMAT_UYVY) || \ - ((X) == SDL_PIXELFORMAT_YVYU)) ? 2 : 1) : (((X) >> 0) & 0xFF)) - -#define SDL_ISPIXELFORMAT_INDEXED(format) \ - (!SDL_ISPIXELFORMAT_FOURCC(format) && \ - ((SDL_PIXELTYPE(format) == SDL_PIXELTYPE_INDEX1) || \ - (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_INDEX4) || \ - (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_INDEX8))) - -#define SDL_ISPIXELFORMAT_PACKED(format) \ - (!SDL_ISPIXELFORMAT_FOURCC(format) && \ - ((SDL_PIXELTYPE(format) == SDL_PIXELTYPE_PACKED8) || \ - (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_PACKED16) || \ - (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_PACKED32))) - -#define SDL_ISPIXELFORMAT_ARRAY(format) \ - (!SDL_ISPIXELFORMAT_FOURCC(format) && \ - ((SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYU8) || \ - (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYU16) || \ - (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYU32) || \ - (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYF16) || \ - (SDL_PIXELTYPE(format) == SDL_PIXELTYPE_ARRAYF32))) - -#define SDL_ISPIXELFORMAT_ALPHA(format) \ - ((SDL_ISPIXELFORMAT_PACKED(format) && \ - ((SDL_PIXELORDER(format) == SDL_PACKEDORDER_ARGB) || \ - (SDL_PIXELORDER(format) == SDL_PACKEDORDER_RGBA) || \ - (SDL_PIXELORDER(format) == SDL_PACKEDORDER_ABGR) || \ - (SDL_PIXELORDER(format) == SDL_PACKEDORDER_BGRA))) || \ - (SDL_ISPIXELFORMAT_ARRAY(format) && \ - ((SDL_PIXELORDER(format) == SDL_ARRAYORDER_ARGB) || \ - (SDL_PIXELORDER(format) == SDL_ARRAYORDER_RGBA) || \ - (SDL_PIXELORDER(format) == SDL_ARRAYORDER_ABGR) || \ - (SDL_PIXELORDER(format) == SDL_ARRAYORDER_BGRA)))) - -/* The flag is set to 1 because 0x1? is not in the printable ASCII range */ -#define SDL_ISPIXELFORMAT_FOURCC(format) \ - ((format) && (SDL_PIXELFLAG(format) != 1)) - -/* Note: If you modify this list, update SDL_GetPixelFormatName() */ -typedef enum -{ - SDL_PIXELFORMAT_UNKNOWN, - SDL_PIXELFORMAT_INDEX1LSB = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX1, SDL_BITMAPORDER_4321, 0, - 1, 0), - SDL_PIXELFORMAT_INDEX1MSB = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX1, SDL_BITMAPORDER_1234, 0, - 1, 0), - SDL_PIXELFORMAT_INDEX4LSB = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX4, SDL_BITMAPORDER_4321, 0, - 4, 0), - SDL_PIXELFORMAT_INDEX4MSB = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX4, SDL_BITMAPORDER_1234, 0, - 4, 0), - SDL_PIXELFORMAT_INDEX8 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_INDEX8, 0, 0, 8, 1), - SDL_PIXELFORMAT_RGB332 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED8, SDL_PACKEDORDER_XRGB, - SDL_PACKEDLAYOUT_332, 8, 1), - SDL_PIXELFORMAT_XRGB4444 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB, - SDL_PACKEDLAYOUT_4444, 12, 2), - SDL_PIXELFORMAT_RGB444 = SDL_PIXELFORMAT_XRGB4444, - SDL_PIXELFORMAT_XBGR4444 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR, - SDL_PACKEDLAYOUT_4444, 12, 2), - SDL_PIXELFORMAT_BGR444 = SDL_PIXELFORMAT_XBGR4444, - SDL_PIXELFORMAT_XRGB1555 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB, - SDL_PACKEDLAYOUT_1555, 15, 2), - SDL_PIXELFORMAT_RGB555 = SDL_PIXELFORMAT_XRGB1555, - SDL_PIXELFORMAT_XBGR1555 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR, - SDL_PACKEDLAYOUT_1555, 15, 2), - SDL_PIXELFORMAT_BGR555 = SDL_PIXELFORMAT_XBGR1555, - SDL_PIXELFORMAT_ARGB4444 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ARGB, - SDL_PACKEDLAYOUT_4444, 16, 2), - SDL_PIXELFORMAT_RGBA4444 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_RGBA, - SDL_PACKEDLAYOUT_4444, 16, 2), - SDL_PIXELFORMAT_ABGR4444 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ABGR, - SDL_PACKEDLAYOUT_4444, 16, 2), - SDL_PIXELFORMAT_BGRA4444 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_BGRA, - SDL_PACKEDLAYOUT_4444, 16, 2), - SDL_PIXELFORMAT_ARGB1555 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ARGB, - SDL_PACKEDLAYOUT_1555, 16, 2), - SDL_PIXELFORMAT_RGBA5551 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_RGBA, - SDL_PACKEDLAYOUT_5551, 16, 2), - SDL_PIXELFORMAT_ABGR1555 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ABGR, - SDL_PACKEDLAYOUT_1555, 16, 2), - SDL_PIXELFORMAT_BGRA5551 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_BGRA, - SDL_PACKEDLAYOUT_5551, 16, 2), - SDL_PIXELFORMAT_RGB565 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB, - SDL_PACKEDLAYOUT_565, 16, 2), - SDL_PIXELFORMAT_BGR565 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR, - SDL_PACKEDLAYOUT_565, 16, 2), - SDL_PIXELFORMAT_RGB24 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_ARRAYU8, SDL_ARRAYORDER_RGB, 0, - 24, 3), - SDL_PIXELFORMAT_BGR24 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_ARRAYU8, SDL_ARRAYORDER_BGR, 0, - 24, 3), - SDL_PIXELFORMAT_XRGB8888 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XRGB, - SDL_PACKEDLAYOUT_8888, 24, 4), - SDL_PIXELFORMAT_RGB888 = SDL_PIXELFORMAT_XRGB8888, - SDL_PIXELFORMAT_RGBX8888 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_RGBX, - SDL_PACKEDLAYOUT_8888, 24, 4), - SDL_PIXELFORMAT_XBGR8888 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XBGR, - SDL_PACKEDLAYOUT_8888, 24, 4), - SDL_PIXELFORMAT_BGR888 = SDL_PIXELFORMAT_XBGR8888, - SDL_PIXELFORMAT_BGRX8888 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_BGRX, - SDL_PACKEDLAYOUT_8888, 24, 4), - SDL_PIXELFORMAT_ARGB8888 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_ARGB, - SDL_PACKEDLAYOUT_8888, 32, 4), - SDL_PIXELFORMAT_RGBA8888 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_RGBA, - SDL_PACKEDLAYOUT_8888, 32, 4), - SDL_PIXELFORMAT_ABGR8888 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_ABGR, - SDL_PACKEDLAYOUT_8888, 32, 4), - SDL_PIXELFORMAT_BGRA8888 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_BGRA, - SDL_PACKEDLAYOUT_8888, 32, 4), - SDL_PIXELFORMAT_ARGB2101010 = - SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_ARGB, - SDL_PACKEDLAYOUT_2101010, 32, 4), - - /* Aliases for RGBA byte arrays of color data, for the current platform */ -#if SDL_BYTEORDER == SDL_BIG_ENDIAN - SDL_PIXELFORMAT_RGBA32 = SDL_PIXELFORMAT_RGBA8888, - SDL_PIXELFORMAT_ARGB32 = SDL_PIXELFORMAT_ARGB8888, - SDL_PIXELFORMAT_BGRA32 = SDL_PIXELFORMAT_BGRA8888, - SDL_PIXELFORMAT_ABGR32 = SDL_PIXELFORMAT_ABGR8888, -#else - SDL_PIXELFORMAT_RGBA32 = SDL_PIXELFORMAT_ABGR8888, - SDL_PIXELFORMAT_ARGB32 = SDL_PIXELFORMAT_BGRA8888, - SDL_PIXELFORMAT_BGRA32 = SDL_PIXELFORMAT_ARGB8888, - SDL_PIXELFORMAT_ABGR32 = SDL_PIXELFORMAT_RGBA8888, -#endif - - SDL_PIXELFORMAT_YV12 = /**< Planar mode: Y + V + U (3 planes) */ - SDL_DEFINE_PIXELFOURCC('Y', 'V', '1', '2'), - SDL_PIXELFORMAT_IYUV = /**< Planar mode: Y + U + V (3 planes) */ - SDL_DEFINE_PIXELFOURCC('I', 'Y', 'U', 'V'), - SDL_PIXELFORMAT_YUY2 = /**< Packed mode: Y0+U0+Y1+V0 (1 plane) */ - SDL_DEFINE_PIXELFOURCC('Y', 'U', 'Y', '2'), - SDL_PIXELFORMAT_UYVY = /**< Packed mode: U0+Y0+V0+Y1 (1 plane) */ - SDL_DEFINE_PIXELFOURCC('U', 'Y', 'V', 'Y'), - SDL_PIXELFORMAT_YVYU = /**< Packed mode: Y0+V0+Y1+U0 (1 plane) */ - SDL_DEFINE_PIXELFOURCC('Y', 'V', 'Y', 'U'), - SDL_PIXELFORMAT_NV12 = /**< Planar mode: Y + U/V interleaved (2 planes) */ - SDL_DEFINE_PIXELFOURCC('N', 'V', '1', '2'), - SDL_PIXELFORMAT_NV21 = /**< Planar mode: Y + V/U interleaved (2 planes) */ - SDL_DEFINE_PIXELFOURCC('N', 'V', '2', '1'), - SDL_PIXELFORMAT_EXTERNAL_OES = /**< Android video texture format */ - SDL_DEFINE_PIXELFOURCC('O', 'E', 'S', ' ') -} SDL_PixelFormatEnum; - -/** - * The bits of this structure can be directly reinterpreted as an integer-packed - * color which uses the SDL_PIXELFORMAT_RGBA32 format (SDL_PIXELFORMAT_ABGR8888 - * on little-endian systems and SDL_PIXELFORMAT_RGBA8888 on big-endian systems). - */ -typedef struct SDL_Color -{ - Uint8 r; - Uint8 g; - Uint8 b; - Uint8 a; -} SDL_Color; -#define SDL_Colour SDL_Color - -typedef struct SDL_Palette -{ - int ncolors; - SDL_Color *colors; - Uint32 version; - int refcount; -} SDL_Palette; - -/** - * \note Everything in the pixel format structure is read-only. - */ -typedef struct SDL_PixelFormat -{ - Uint32 format; - SDL_Palette *palette; - Uint8 BitsPerPixel; - Uint8 BytesPerPixel; - Uint8 padding[2]; - Uint32 Rmask; - Uint32 Gmask; - Uint32 Bmask; - Uint32 Amask; - Uint8 Rloss; - Uint8 Gloss; - Uint8 Bloss; - Uint8 Aloss; - Uint8 Rshift; - Uint8 Gshift; - Uint8 Bshift; - Uint8 Ashift; - int refcount; - struct SDL_PixelFormat *next; -} SDL_PixelFormat; - -/** - * Get the human readable name of a pixel format. - * - * \param format the pixel format to query - * \returns the human readable name of the specified pixel format or - * `SDL_PIXELFORMAT_UNKNOWN` if the format isn't recognized. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC const char* SDLCALL SDL_GetPixelFormatName(Uint32 format); - -/** - * Convert one of the enumerated pixel formats to a bpp value and RGBA masks. - * - * \param format one of the SDL_PixelFormatEnum values - * \param bpp a bits per pixel value; usually 15, 16, or 32 - * \param Rmask a pointer filled in with the red mask for the format - * \param Gmask a pointer filled in with the green mask for the format - * \param Bmask a pointer filled in with the blue mask for the format - * \param Amask a pointer filled in with the alpha mask for the format - * \returns SDL_TRUE on success or SDL_FALSE if the conversion wasn't - * possible; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_MasksToPixelFormatEnum - */ -extern DECLSPEC SDL_bool SDLCALL SDL_PixelFormatEnumToMasks(Uint32 format, - int *bpp, - Uint32 * Rmask, - Uint32 * Gmask, - Uint32 * Bmask, - Uint32 * Amask); - -/** - * Convert a bpp value and RGBA masks to an enumerated pixel format. - * - * This will return `SDL_PIXELFORMAT_UNKNOWN` if the conversion wasn't - * possible. - * - * \param bpp a bits per pixel value; usually 15, 16, or 32 - * \param Rmask the red mask for the format - * \param Gmask the green mask for the format - * \param Bmask the blue mask for the format - * \param Amask the alpha mask for the format - * \returns one of the SDL_PixelFormatEnum values - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_PixelFormatEnumToMasks - */ -extern DECLSPEC Uint32 SDLCALL SDL_MasksToPixelFormatEnum(int bpp, - Uint32 Rmask, - Uint32 Gmask, - Uint32 Bmask, - Uint32 Amask); - -/** - * Create an SDL_PixelFormat structure corresponding to a pixel format. - * - * Returned structure may come from a shared global cache (i.e. not newly - * allocated), and hence should not be modified, especially the palette. Weird - * errors such as `Blit combination not supported` may occur. - * - * \param pixel_format one of the SDL_PixelFormatEnum values - * \returns the new SDL_PixelFormat structure or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FreeFormat - */ -extern DECLSPEC SDL_PixelFormat * SDLCALL SDL_AllocFormat(Uint32 pixel_format); - -/** - * Free an SDL_PixelFormat structure allocated by SDL_AllocFormat(). - * - * \param format the SDL_PixelFormat structure to free - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AllocFormat - */ -extern DECLSPEC void SDLCALL SDL_FreeFormat(SDL_PixelFormat *format); - -/** - * Create a palette structure with the specified number of color entries. - * - * The palette entries are initialized to white. - * - * \param ncolors represents the number of color entries in the color palette - * \returns a new SDL_Palette structure on success or NULL on failure (e.g. if - * there wasn't enough memory); call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FreePalette - */ -extern DECLSPEC SDL_Palette *SDLCALL SDL_AllocPalette(int ncolors); - -/** - * Set the palette for a pixel format structure. - * - * \param format the SDL_PixelFormat structure that will use the palette - * \param palette the SDL_Palette structure that will be used - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AllocPalette - * \sa SDL_FreePalette - */ -extern DECLSPEC int SDLCALL SDL_SetPixelFormatPalette(SDL_PixelFormat * format, - SDL_Palette *palette); - -/** - * Set a range of colors in a palette. - * - * \param palette the SDL_Palette structure to modify - * \param colors an array of SDL_Color structures to copy into the palette - * \param firstcolor the index of the first palette entry to modify - * \param ncolors the number of entries to modify - * \returns 0 on success or a negative error code if not all of the colors - * could be set; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AllocPalette - * \sa SDL_CreateRGBSurface - */ -extern DECLSPEC int SDLCALL SDL_SetPaletteColors(SDL_Palette * palette, - const SDL_Color * colors, - int firstcolor, int ncolors); - -/** - * Free a palette created with SDL_AllocPalette(). - * - * \param palette the SDL_Palette structure to be freed - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AllocPalette - */ -extern DECLSPEC void SDLCALL SDL_FreePalette(SDL_Palette * palette); - -/** - * Map an RGB triple to an opaque pixel value for a given pixel format. - * - * This function maps the RGB color value to the specified pixel format and - * returns the pixel value best approximating the given RGB color value for - * the given pixel format. - * - * If the format has a palette (8-bit) the index of the closest matching color - * in the palette will be returned. - * - * If the specified pixel format has an alpha component it will be returned as - * all 1 bits (fully opaque). - * - * If the pixel format bpp (color depth) is less than 32-bpp then the unused - * upper bits of the return value can safely be ignored (e.g., with a 16-bpp - * format the return value can be assigned to a Uint16, and similarly a Uint8 - * for an 8-bpp format). - * - * \param format an SDL_PixelFormat structure describing the pixel format - * \param r the red component of the pixel in the range 0-255 - * \param g the green component of the pixel in the range 0-255 - * \param b the blue component of the pixel in the range 0-255 - * \returns a pixel value - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRGB - * \sa SDL_GetRGBA - * \sa SDL_MapRGBA - */ -extern DECLSPEC Uint32 SDLCALL SDL_MapRGB(const SDL_PixelFormat * format, - Uint8 r, Uint8 g, Uint8 b); - -/** - * Map an RGBA quadruple to a pixel value for a given pixel format. - * - * This function maps the RGBA color value to the specified pixel format and - * returns the pixel value best approximating the given RGBA color value for - * the given pixel format. - * - * If the specified pixel format has no alpha component the alpha value will - * be ignored (as it will be in formats with a palette). - * - * If the format has a palette (8-bit) the index of the closest matching color - * in the palette will be returned. - * - * If the pixel format bpp (color depth) is less than 32-bpp then the unused - * upper bits of the return value can safely be ignored (e.g., with a 16-bpp - * format the return value can be assigned to a Uint16, and similarly a Uint8 - * for an 8-bpp format). - * - * \param format an SDL_PixelFormat structure describing the format of the - * pixel - * \param r the red component of the pixel in the range 0-255 - * \param g the green component of the pixel in the range 0-255 - * \param b the blue component of the pixel in the range 0-255 - * \param a the alpha component of the pixel in the range 0-255 - * \returns a pixel value - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRGB - * \sa SDL_GetRGBA - * \sa SDL_MapRGB - */ -extern DECLSPEC Uint32 SDLCALL SDL_MapRGBA(const SDL_PixelFormat * format, - Uint8 r, Uint8 g, Uint8 b, - Uint8 a); - -/** - * Get RGB values from a pixel in the specified format. - * - * This function uses the entire 8-bit [0..255] range when converting color - * components from pixel formats with less than 8-bits per RGB component - * (e.g., a completely white pixel in 16-bit RGB565 format would return [0xff, - * 0xff, 0xff] not [0xf8, 0xfc, 0xf8]). - * - * \param pixel a pixel value - * \param format an SDL_PixelFormat structure describing the format of the - * pixel - * \param r a pointer filled in with the red component - * \param g a pointer filled in with the green component - * \param b a pointer filled in with the blue component - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRGBA - * \sa SDL_MapRGB - * \sa SDL_MapRGBA - */ -extern DECLSPEC void SDLCALL SDL_GetRGB(Uint32 pixel, - const SDL_PixelFormat * format, - Uint8 * r, Uint8 * g, Uint8 * b); - -/** - * Get RGBA values from a pixel in the specified format. - * - * This function uses the entire 8-bit [0..255] range when converting color - * components from pixel formats with less than 8-bits per RGB component - * (e.g., a completely white pixel in 16-bit RGB565 format would return [0xff, - * 0xff, 0xff] not [0xf8, 0xfc, 0xf8]). - * - * If the surface has no alpha component, the alpha will be returned as 0xff - * (100% opaque). - * - * \param pixel a pixel value - * \param format an SDL_PixelFormat structure describing the format of the - * pixel - * \param r a pointer filled in with the red component - * \param g a pointer filled in with the green component - * \param b a pointer filled in with the blue component - * \param a a pointer filled in with the alpha component - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRGB - * \sa SDL_MapRGB - * \sa SDL_MapRGBA - */ -extern DECLSPEC void SDLCALL SDL_GetRGBA(Uint32 pixel, - const SDL_PixelFormat * format, - Uint8 * r, Uint8 * g, Uint8 * b, - Uint8 * a); - -/** - * Calculate a 256 entry gamma ramp for a gamma value. - * - * \param gamma a gamma value where 0.0 is black and 1.0 is identity - * \param ramp an array of 256 values filled in with the gamma ramp - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetWindowGammaRamp - */ -extern DECLSPEC void SDLCALL SDL_CalculateGammaRamp(float gamma, Uint16 * ramp); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_pixels_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_pixels.h.blob deleted file mode 100644 index af765e7334755250d5c16c56d0060ab5eff5fa55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47940 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h deleted file mode 100644 index d2a7e052..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h +++ /dev/null @@ -1,261 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_platform.h - * - * Try to get a standard set of platform defines. - */ - -#ifndef SDL_platform_h_ -#define SDL_platform_h_ - -#if defined(_AIX) -#undef __AIX__ -#define __AIX__ 1 -#endif -#if defined(__HAIKU__) -#undef __HAIKU__ -#define __HAIKU__ 1 -#endif -#if defined(bsdi) || defined(__bsdi) || defined(__bsdi__) -#undef __BSDI__ -#define __BSDI__ 1 -#endif -#if defined(_arch_dreamcast) -#undef __DREAMCAST__ -#define __DREAMCAST__ 1 -#endif -#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) -#undef __FREEBSD__ -#define __FREEBSD__ 1 -#endif -#if defined(hpux) || defined(__hpux) || defined(__hpux__) -#undef __HPUX__ -#define __HPUX__ 1 -#endif -#if defined(sgi) || defined(__sgi) || defined(__sgi__) || defined(_SGI_SOURCE) -#undef __IRIX__ -#define __IRIX__ 1 -#endif -#if (defined(linux) || defined(__linux) || defined(__linux__)) -#undef __LINUX__ -#define __LINUX__ 1 -#endif -#if defined(ANDROID) || defined(__ANDROID__) -#undef __ANDROID__ -#undef __LINUX__ /* do we need to do this? */ -#define __ANDROID__ 1 -#endif -#if defined(__NGAGE__) -#undef __NGAGE__ -#define __NGAGE__ 1 -#endif - -#if defined(__APPLE__) -/* lets us know what version of Mac OS X we're compiling on */ -#include <AvailabilityMacros.h> -#include <TargetConditionals.h> - -/* Fix building with older SDKs that don't define these - See this for more information: - https://stackoverflow.com/questions/12132933/preprocessor-macro-for-os-x-targets -*/ -#ifndef TARGET_OS_MACCATALYST -#define TARGET_OS_MACCATALYST 0 -#endif -#ifndef TARGET_OS_IOS -#define TARGET_OS_IOS 0 -#endif -#ifndef TARGET_OS_IPHONE -#define TARGET_OS_IPHONE 0 -#endif -#ifndef TARGET_OS_TV -#define TARGET_OS_TV 0 -#endif -#ifndef TARGET_OS_SIMULATOR -#define TARGET_OS_SIMULATOR 0 -#endif - -#if TARGET_OS_TV -#undef __TVOS__ -#define __TVOS__ 1 -#endif -#if TARGET_OS_IPHONE -/* if compiling for iOS */ -#undef __IPHONEOS__ -#define __IPHONEOS__ 1 -#undef __MACOSX__ -#else -/* if not compiling for iOS */ -#undef __MACOSX__ -#define __MACOSX__ 1 -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1070 -# error SDL for Mac OS X only supports deploying on 10.7 and above. -#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1070 */ -#endif /* TARGET_OS_IPHONE */ -#endif /* defined(__APPLE__) */ - -#if defined(__NetBSD__) -#undef __NETBSD__ -#define __NETBSD__ 1 -#endif -#if defined(__OpenBSD__) -#undef __OPENBSD__ -#define __OPENBSD__ 1 -#endif -#if defined(__OS2__) || defined(__EMX__) -#undef __OS2__ -#define __OS2__ 1 -#endif -#if defined(osf) || defined(__osf) || defined(__osf__) || defined(_OSF_SOURCE) -#undef __OSF__ -#define __OSF__ 1 -#endif -#if defined(__QNXNTO__) -#undef __QNXNTO__ -#define __QNXNTO__ 1 -#endif -#if defined(riscos) || defined(__riscos) || defined(__riscos__) -#undef __RISCOS__ -#define __RISCOS__ 1 -#endif -#if defined(__sun) && defined(__SVR4) -#undef __SOLARIS__ -#define __SOLARIS__ 1 -#endif - -#if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__) -/* Try to find out if we're compiling for WinRT, GDK or non-WinRT/GDK */ -#if defined(_MSC_VER) && defined(__has_include) -#if __has_include(<winapifamily.h>) -#define HAVE_WINAPIFAMILY_H 1 -#else -#define HAVE_WINAPIFAMILY_H 0 -#endif - -/* If _USING_V110_SDK71_ is defined it means we are using the Windows XP toolset. */ -#elif defined(_MSC_VER) && (_MSC_VER >= 1700 && !_USING_V110_SDK71_) /* _MSC_VER == 1700 for Visual Studio 2012 */ -#define HAVE_WINAPIFAMILY_H 1 -#else -#define HAVE_WINAPIFAMILY_H 0 -#endif - -#if HAVE_WINAPIFAMILY_H -#include <winapifamily.h> -#define WINAPI_FAMILY_WINRT (!WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)) -#else -#define WINAPI_FAMILY_WINRT 0 -#endif /* HAVE_WINAPIFAMILY_H */ - -#if WINAPI_FAMILY_WINRT -#undef __WINRT__ -#define __WINRT__ 1 -#elif defined(_GAMING_DESKTOP) /* GDK project configuration always defines _GAMING_XXX */ -#undef __WINGDK__ -#define __WINGDK__ 1 -#elif defined(_GAMING_XBOX_XBOXONE) -#undef __XBOXONE__ -#define __XBOXONE__ 1 -#elif defined(_GAMING_XBOX_SCARLETT) -#undef __XBOXSERIES__ -#define __XBOXSERIES__ 1 -#else -#undef __WINDOWS__ -#define __WINDOWS__ 1 -#endif -#endif /* defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) */ - -#if defined(__WINDOWS__) -#undef __WIN32__ -#define __WIN32__ 1 -#endif -/* This is to support generic "any GDK" separate from a platform-specific GDK */ -#if defined(__WINGDK__) || defined(__XBOXONE__) || defined(__XBOXSERIES__) -#undef __GDK__ -#define __GDK__ 1 -#endif -#if defined(__PSP__) -#undef __PSP__ -#define __PSP__ 1 -#endif -#if defined(PS2) -#define __PS2__ 1 -#endif - -/* The NACL compiler defines __native_client__ and __pnacl__ - * Ref: http://www.chromium.org/nativeclient/pnacl/stability-of-the-pnacl-bitcode-abi - */ -#if defined(__native_client__) -#undef __LINUX__ -#undef __NACL__ -#define __NACL__ 1 -#endif -#if defined(__pnacl__) -#undef __LINUX__ -#undef __PNACL__ -#define __PNACL__ 1 -/* PNACL with newlib supports static linking only */ -#define __SDL_NOGETPROCADDR__ -#endif - -#if defined(__vita__) -#define __VITA__ 1 -#endif - -#if defined(__3DS__) -#undef __3DS__ -#define __3DS__ 1 -#endif - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Get the name of the platform. - * - * Here are the names returned for some (but not all) supported platforms: - * - * - "Windows" - * - "Mac OS X" - * - "Linux" - * - "iOS" - * - "Android" - * - * \returns the name of the platform. If the correct platform name is not - * available, returns a string beginning with the text "Unknown". - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC const char * SDLCALL SDL_GetPlatform (void); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_platform_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_platform.h.blob deleted file mode 100644 index 911be20e4b54adfa108b883d50ea192adada9000..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12926 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h deleted file mode 100644 index 1d75704c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_power_h_ -#define SDL_power_h_ - -/** - * \file SDL_power.h - * - * Header for the SDL power management routines. - */ - -#include "SDL_stdinc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * The basic state for the system's power supply. - */ -typedef enum -{ - SDL_POWERSTATE_UNKNOWN, /**< cannot determine power status */ - SDL_POWERSTATE_ON_BATTERY, /**< Not plugged in, running on the battery */ - SDL_POWERSTATE_NO_BATTERY, /**< Plugged in, no battery available */ - SDL_POWERSTATE_CHARGING, /**< Plugged in, charging battery */ - SDL_POWERSTATE_CHARGED /**< Plugged in, battery charged */ -} SDL_PowerState; - -/** - * Get the current power supply details. - * - * You should never take a battery status as absolute truth. Batteries - * (especially failing batteries) are delicate hardware, and the values - * reported here are best estimates based on what that hardware reports. It's - * not uncommon for older batteries to lose stored power much faster than it - * reports, or completely drain when reporting it has 20 percent left, etc. - * - * Battery status can change at any time; if you are concerned with power - * state, you should call this function frequently, and perhaps ignore changes - * until they seem to be stable for a few seconds. - * - * It's possible a platform can only report battery percentage or time left - * but not both. - * - * \param seconds seconds of battery life left, you can pass a NULL here if - * you don't care, will return -1 if we can't determine a - * value, or we're not running on a battery - * \param percent percentage of battery life left, between 0 and 100, you can - * pass a NULL here if you don't care, will return -1 if we - * can't determine a value, or we're not running on a battery - * \returns an SDL_PowerState enum representing the current battery state. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_PowerState SDLCALL SDL_GetPowerInfo(int *seconds, int *percent); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_power_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_power.h.blob deleted file mode 100644 index deef074b85d7a7d7f783d00477870329d2dfc853..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14615 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h deleted file mode 100644 index d8ceb894..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_quit.h - * - * Include file for SDL quit event handling. - */ - -#ifndef SDL_quit_h_ -#define SDL_quit_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -/** - * \file SDL_quit.h - * - * An ::SDL_QUIT event is generated when the user tries to close the application - * window. If it is ignored or filtered out, the window will remain open. - * If it is not ignored or filtered, it is queued normally and the window - * is allowed to close. When the window is closed, screen updates will - * complete, but have no effect. - * - * SDL_Init() installs signal handlers for SIGINT (keyboard interrupt) - * and SIGTERM (system termination request), if handlers do not already - * exist, that generate ::SDL_QUIT events as well. There is no way - * to determine the cause of an ::SDL_QUIT event, but setting a signal - * handler in your application will override the default generation of - * quit events for that signal. - * - * \sa SDL_Quit() - */ - -/* There are no functions directly affecting the quit event */ - -#define SDL_QuitRequested() \ - (SDL_PumpEvents(), (SDL_PeepEvents(NULL,0,SDL_PEEKEVENT,SDL_QUIT,SDL_QUIT) > 0)) - -#endif /* SDL_quit_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_quit.h.blob deleted file mode 100644 index 4dc385699e6d84f86af33f2108a7340d8e219fa5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12421 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h deleted file mode 100644 index 9611a311..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h +++ /dev/null @@ -1,376 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_rect.h - * - * Header file for SDL_rect definition and management functions. - */ - -#ifndef SDL_rect_h_ -#define SDL_rect_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_pixels.h" -#include "SDL_rwops.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * The structure that defines a point (integer) - * - * \sa SDL_EnclosePoints - * \sa SDL_PointInRect - */ -typedef struct SDL_Point -{ - int x; - int y; -} SDL_Point; - -/** - * The structure that defines a point (floating point) - * - * \sa SDL_EncloseFPoints - * \sa SDL_PointInFRect - */ -typedef struct SDL_FPoint -{ - float x; - float y; -} SDL_FPoint; - - -/** - * A rectangle, with the origin at the upper left (integer). - * - * \sa SDL_RectEmpty - * \sa SDL_RectEquals - * \sa SDL_HasIntersection - * \sa SDL_IntersectRect - * \sa SDL_IntersectRectAndLine - * \sa SDL_UnionRect - * \sa SDL_EnclosePoints - */ -typedef struct SDL_Rect -{ - int x, y; - int w, h; -} SDL_Rect; - - -/** - * A rectangle, with the origin at the upper left (floating point). - * - * \sa SDL_FRectEmpty - * \sa SDL_FRectEquals - * \sa SDL_FRectEqualsEpsilon - * \sa SDL_HasIntersectionF - * \sa SDL_IntersectFRect - * \sa SDL_IntersectFRectAndLine - * \sa SDL_UnionFRect - * \sa SDL_EncloseFPoints - * \sa SDL_PointInFRect - */ -typedef struct SDL_FRect -{ - float x; - float y; - float w; - float h; -} SDL_FRect; - - -/** - * Returns true if point resides inside a rectangle. - */ -SDL_FORCE_INLINE SDL_bool SDL_PointInRect(const SDL_Point *p, const SDL_Rect *r) -{ - return ( (p->x >= r->x) && (p->x < (r->x + r->w)) && - (p->y >= r->y) && (p->y < (r->y + r->h)) ) ? SDL_TRUE : SDL_FALSE; -} - -/** - * Returns true if the rectangle has no area. - */ -SDL_FORCE_INLINE SDL_bool SDL_RectEmpty(const SDL_Rect *r) -{ - return ((!r) || (r->w <= 0) || (r->h <= 0)) ? SDL_TRUE : SDL_FALSE; -} - -/** - * Returns true if the two rectangles are equal. - */ -SDL_FORCE_INLINE SDL_bool SDL_RectEquals(const SDL_Rect *a, const SDL_Rect *b) -{ - return (a && b && (a->x == b->x) && (a->y == b->y) && - (a->w == b->w) && (a->h == b->h)) ? SDL_TRUE : SDL_FALSE; -} - -/** - * Determine whether two rectangles intersect. - * - * If either pointer is NULL the function will return SDL_FALSE. - * - * \param A an SDL_Rect structure representing the first rectangle - * \param B an SDL_Rect structure representing the second rectangle - * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_IntersectRect - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasIntersection(const SDL_Rect * A, - const SDL_Rect * B); - -/** - * Calculate the intersection of two rectangles. - * - * If `result` is NULL then this function will return SDL_FALSE. - * - * \param A an SDL_Rect structure representing the first rectangle - * \param B an SDL_Rect structure representing the second rectangle - * \param result an SDL_Rect structure filled in with the intersection of - * rectangles `A` and `B` - * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HasIntersection - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IntersectRect(const SDL_Rect * A, - const SDL_Rect * B, - SDL_Rect * result); - -/** - * Calculate the union of two rectangles. - * - * \param A an SDL_Rect structure representing the first rectangle - * \param B an SDL_Rect structure representing the second rectangle - * \param result an SDL_Rect structure filled in with the union of rectangles - * `A` and `B` - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC void SDLCALL SDL_UnionRect(const SDL_Rect * A, - const SDL_Rect * B, - SDL_Rect * result); - -/** - * Calculate a minimal rectangle enclosing a set of points. - * - * If `clip` is not NULL then only points inside of the clipping rectangle are - * considered. - * - * \param points an array of SDL_Point structures representing points to be - * enclosed - * \param count the number of structures in the `points` array - * \param clip an SDL_Rect used for clipping or NULL to enclose all points - * \param result an SDL_Rect structure filled in with the minimal enclosing - * rectangle - * \returns SDL_TRUE if any points were enclosed or SDL_FALSE if all the - * points were outside of the clipping rectangle. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_EnclosePoints(const SDL_Point * points, - int count, - const SDL_Rect * clip, - SDL_Rect * result); - -/** - * Calculate the intersection of a rectangle and line segment. - * - * This function is used to clip a line segment to a rectangle. A line segment - * contained entirely within the rectangle or that does not intersect will - * remain unchanged. A line segment that crosses the rectangle at either or - * both ends will be clipped to the boundary of the rectangle and the new - * coordinates saved in `X1`, `Y1`, `X2`, and/or `Y2` as necessary. - * - * \param rect an SDL_Rect structure representing the rectangle to intersect - * \param X1 a pointer to the starting X-coordinate of the line - * \param Y1 a pointer to the starting Y-coordinate of the line - * \param X2 a pointer to the ending X-coordinate of the line - * \param Y2 a pointer to the ending Y-coordinate of the line - * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IntersectRectAndLine(const SDL_Rect * - rect, int *X1, - int *Y1, int *X2, - int *Y2); - - -/* SDL_FRect versions... */ - -/** - * Returns true if point resides inside a rectangle. - */ -SDL_FORCE_INLINE SDL_bool SDL_PointInFRect(const SDL_FPoint *p, const SDL_FRect *r) -{ - return ( (p->x >= r->x) && (p->x < (r->x + r->w)) && - (p->y >= r->y) && (p->y < (r->y + r->h)) ) ? SDL_TRUE : SDL_FALSE; -} - -/** - * Returns true if the rectangle has no area. - */ -SDL_FORCE_INLINE SDL_bool SDL_FRectEmpty(const SDL_FRect *r) -{ - return ((!r) || (r->w <= 0.0f) || (r->h <= 0.0f)) ? SDL_TRUE : SDL_FALSE; -} - -/** - * Returns true if the two rectangles are equal, within some given epsilon. - * - * \since This function is available since SDL 2.0.22. - */ -SDL_FORCE_INLINE SDL_bool SDL_FRectEqualsEpsilon(const SDL_FRect *a, const SDL_FRect *b, const float epsilon) -{ - return (a && b && ((a == b) || - ((SDL_fabsf(a->x - b->x) <= epsilon) && - (SDL_fabsf(a->y - b->y) <= epsilon) && - (SDL_fabsf(a->w - b->w) <= epsilon) && - (SDL_fabsf(a->h - b->h) <= epsilon)))) - ? SDL_TRUE : SDL_FALSE; -} - -/** - * Returns true if the two rectangles are equal, using a default epsilon. - * - * \since This function is available since SDL 2.0.22. - */ -SDL_FORCE_INLINE SDL_bool SDL_FRectEquals(const SDL_FRect *a, const SDL_FRect *b) -{ - return SDL_FRectEqualsEpsilon(a, b, SDL_FLT_EPSILON); -} - -/** - * Determine whether two rectangles intersect with float precision. - * - * If either pointer is NULL the function will return SDL_FALSE. - * - * \param A an SDL_FRect structure representing the first rectangle - * \param B an SDL_FRect structure representing the second rectangle - * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.22. - * - * \sa SDL_IntersectRect - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasIntersectionF(const SDL_FRect * A, - const SDL_FRect * B); - -/** - * Calculate the intersection of two rectangles with float precision. - * - * If `result` is NULL then this function will return SDL_FALSE. - * - * \param A an SDL_FRect structure representing the first rectangle - * \param B an SDL_FRect structure representing the second rectangle - * \param result an SDL_FRect structure filled in with the intersection of - * rectangles `A` and `B` - * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.22. - * - * \sa SDL_HasIntersectionF - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IntersectFRect(const SDL_FRect * A, - const SDL_FRect * B, - SDL_FRect * result); - -/** - * Calculate the union of two rectangles with float precision. - * - * \param A an SDL_FRect structure representing the first rectangle - * \param B an SDL_FRect structure representing the second rectangle - * \param result an SDL_FRect structure filled in with the union of rectangles - * `A` and `B` - * - * \since This function is available since SDL 2.0.22. - */ -extern DECLSPEC void SDLCALL SDL_UnionFRect(const SDL_FRect * A, - const SDL_FRect * B, - SDL_FRect * result); - -/** - * Calculate a minimal rectangle enclosing a set of points with float - * precision. - * - * If `clip` is not NULL then only points inside of the clipping rectangle are - * considered. - * - * \param points an array of SDL_FPoint structures representing points to be - * enclosed - * \param count the number of structures in the `points` array - * \param clip an SDL_FRect used for clipping or NULL to enclose all points - * \param result an SDL_FRect structure filled in with the minimal enclosing - * rectangle - * \returns SDL_TRUE if any points were enclosed or SDL_FALSE if all the - * points were outside of the clipping rectangle. - * - * \since This function is available since SDL 2.0.22. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_EncloseFPoints(const SDL_FPoint * points, - int count, - const SDL_FRect * clip, - SDL_FRect * result); - -/** - * Calculate the intersection of a rectangle and line segment with float - * precision. - * - * This function is used to clip a line segment to a rectangle. A line segment - * contained entirely within the rectangle or that does not intersect will - * remain unchanged. A line segment that crosses the rectangle at either or - * both ends will be clipped to the boundary of the rectangle and the new - * coordinates saved in `X1`, `Y1`, `X2`, and/or `Y2` as necessary. - * - * \param rect an SDL_FRect structure representing the rectangle to intersect - * \param X1 a pointer to the starting X-coordinate of the line - * \param Y1 a pointer to the starting Y-coordinate of the line - * \param X2 a pointer to the ending X-coordinate of the line - * \param Y2 a pointer to the ending Y-coordinate of the line - * \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.22. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IntersectFRectAndLine(const SDL_FRect * - rect, float *X1, - float *Y1, float *X2, - float *Y2); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_rect_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rect.h.blob deleted file mode 100644 index 970897d54c045bbf43c844669db2429e292ab7ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28601 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 AGynhq diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h deleted file mode 100644 index 2d3f0736..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h +++ /dev/null @@ -1,1924 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_render.h - * - * Header file for SDL 2D rendering functions. - * - * This API supports the following features: - * * single pixel points - * * single pixel lines - * * filled rectangles - * * texture images - * - * The primitives may be drawn in opaque, blended, or additive modes. - * - * The texture images may be drawn in opaque, blended, or additive modes. - * They can have an additional color tint or alpha modulation applied to - * them, and may also be stretched with linear interpolation. - * - * This API is designed to accelerate simple 2D operations. You may - * want more functionality such as polygons and particle effects and - * in that case you should use SDL's OpenGL/Direct3D support or one - * of the many good 3D engines. - * - * These functions must be called from the main thread. - * See this bug for details: http://bugzilla.libsdl.org/show_bug.cgi?id=1995 - */ - -#ifndef SDL_render_h_ -#define SDL_render_h_ - -#include "SDL_stdinc.h" -#include "SDL_rect.h" -#include "SDL_video.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Flags used when creating a rendering context - */ -typedef enum -{ - SDL_RENDERER_SOFTWARE = 0x00000001, /**< The renderer is a software fallback */ - SDL_RENDERER_ACCELERATED = 0x00000002, /**< The renderer uses hardware - acceleration */ - SDL_RENDERER_PRESENTVSYNC = 0x00000004, /**< Present is synchronized - with the refresh rate */ - SDL_RENDERER_TARGETTEXTURE = 0x00000008 /**< The renderer supports - rendering to texture */ -} SDL_RendererFlags; - -/** - * Information on the capabilities of a render driver or context. - */ -typedef struct SDL_RendererInfo -{ - const char *name; /**< The name of the renderer */ - Uint32 flags; /**< Supported ::SDL_RendererFlags */ - Uint32 num_texture_formats; /**< The number of available texture formats */ - Uint32 texture_formats[16]; /**< The available texture formats */ - int max_texture_width; /**< The maximum texture width */ - int max_texture_height; /**< The maximum texture height */ -} SDL_RendererInfo; - -/** - * Vertex structure - */ -typedef struct SDL_Vertex -{ - SDL_FPoint position; /**< Vertex position, in SDL_Renderer coordinates */ - SDL_Color color; /**< Vertex color */ - SDL_FPoint tex_coord; /**< Normalized texture coordinates, if needed */ -} SDL_Vertex; - -/** - * The scaling mode for a texture. - */ -typedef enum -{ - SDL_ScaleModeNearest, /**< nearest pixel sampling */ - SDL_ScaleModeLinear, /**< linear filtering */ - SDL_ScaleModeBest /**< anisotropic filtering */ -} SDL_ScaleMode; - -/** - * The access pattern allowed for a texture. - */ -typedef enum -{ - SDL_TEXTUREACCESS_STATIC, /**< Changes rarely, not lockable */ - SDL_TEXTUREACCESS_STREAMING, /**< Changes frequently, lockable */ - SDL_TEXTUREACCESS_TARGET /**< Texture can be used as a render target */ -} SDL_TextureAccess; - -/** - * The texture channel modulation used in SDL_RenderCopy(). - */ -typedef enum -{ - SDL_TEXTUREMODULATE_NONE = 0x00000000, /**< No modulation */ - SDL_TEXTUREMODULATE_COLOR = 0x00000001, /**< srcC = srcC * color */ - SDL_TEXTUREMODULATE_ALPHA = 0x00000002 /**< srcA = srcA * alpha */ -} SDL_TextureModulate; - -/** - * Flip constants for SDL_RenderCopyEx - */ -typedef enum -{ - SDL_FLIP_NONE = 0x00000000, /**< Do not flip */ - SDL_FLIP_HORIZONTAL = 0x00000001, /**< flip horizontally */ - SDL_FLIP_VERTICAL = 0x00000002 /**< flip vertically */ -} SDL_RendererFlip; - -/** - * A structure representing rendering state - */ -struct SDL_Renderer; -typedef struct SDL_Renderer SDL_Renderer; - -/** - * An efficient driver-specific representation of pixel data - */ -struct SDL_Texture; -typedef struct SDL_Texture SDL_Texture; - -/* Function prototypes */ - -/** - * Get the number of 2D rendering drivers available for the current display. - * - * A render driver is a set of code that handles rendering and texture - * management on a particular display. Normally there is only one, but some - * drivers may have several available with different capabilities. - * - * There may be none if SDL was compiled without render support. - * - * \returns a number >= 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRenderer - * \sa SDL_GetRenderDriverInfo - */ -extern DECLSPEC int SDLCALL SDL_GetNumRenderDrivers(void); - -/** - * Get info about a specific 2D rendering driver for the current display. - * - * \param index the index of the driver to query information about - * \param info an SDL_RendererInfo structure to be filled with information on - * the rendering driver - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRenderer - * \sa SDL_GetNumRenderDrivers - */ -extern DECLSPEC int SDLCALL SDL_GetRenderDriverInfo(int index, - SDL_RendererInfo * info); - -/** - * Create a window and default renderer. - * - * \param width the width of the window - * \param height the height of the window - * \param window_flags the flags used to create the window (see - * SDL_CreateWindow()) - * \param window a pointer filled with the window, or NULL on error - * \param renderer a pointer filled with the renderer, or NULL on error - * \returns 0 on success, or -1 on error; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRenderer - * \sa SDL_CreateWindow - */ -extern DECLSPEC int SDLCALL SDL_CreateWindowAndRenderer( - int width, int height, Uint32 window_flags, - SDL_Window **window, SDL_Renderer **renderer); - - -/** - * Create a 2D rendering context for a window. - * - * \param window the window where rendering is displayed - * \param index the index of the rendering driver to initialize, or -1 to - * initialize the first one supporting the requested flags - * \param flags 0, or one or more SDL_RendererFlags OR'd together - * \returns a valid rendering context or NULL if there was an error; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateSoftwareRenderer - * \sa SDL_DestroyRenderer - * \sa SDL_GetNumRenderDrivers - * \sa SDL_GetRendererInfo - */ -extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRenderer(SDL_Window * window, - int index, Uint32 flags); - -/** - * Create a 2D software rendering context for a surface. - * - * Two other API which can be used to create SDL_Renderer: - * SDL_CreateRenderer() and SDL_CreateWindowAndRenderer(). These can _also_ - * create a software renderer, but they are intended to be used with an - * SDL_Window as the final destination and not an SDL_Surface. - * - * \param surface the SDL_Surface structure representing the surface where - * rendering is done - * \returns a valid rendering context or NULL if there was an error; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRenderer - * \sa SDL_CreateWindowRenderer - * \sa SDL_DestroyRenderer - */ -extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateSoftwareRenderer(SDL_Surface * surface); - -/** - * Get the renderer associated with a window. - * - * \param window the window to query - * \returns the rendering context on success or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRenderer - */ -extern DECLSPEC SDL_Renderer * SDLCALL SDL_GetRenderer(SDL_Window * window); - -/** - * Get the window associated with a renderer. - * - * \param renderer the renderer to query - * \returns the window on success or NULL on failure; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.22. - */ -extern DECLSPEC SDL_Window * SDLCALL SDL_RenderGetWindow(SDL_Renderer *renderer); - -/** - * Get information about a rendering context. - * - * \param renderer the rendering context - * \param info an SDL_RendererInfo structure filled with information about the - * current renderer - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRenderer - */ -extern DECLSPEC int SDLCALL SDL_GetRendererInfo(SDL_Renderer * renderer, - SDL_RendererInfo * info); - -/** - * Get the output size in pixels of a rendering context. - * - * Due to high-dpi displays, you might end up with a rendering context that - * has more pixels than the window that contains it, so use this instead of - * SDL_GetWindowSize() to decide how much drawing area you have. - * - * \param renderer the rendering context - * \param w an int filled with the width - * \param h an int filled with the height - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRenderer - */ -extern DECLSPEC int SDLCALL SDL_GetRendererOutputSize(SDL_Renderer * renderer, - int *w, int *h); - -/** - * Create a texture for a rendering context. - * - * You can set the texture scaling method by setting - * `SDL_HINT_RENDER_SCALE_QUALITY` before creating the texture. - * - * \param renderer the rendering context - * \param format one of the enumerated values in SDL_PixelFormatEnum - * \param access one of the enumerated values in SDL_TextureAccess - * \param w the width of the texture in pixels - * \param h the height of the texture in pixels - * \returns a pointer to the created texture or NULL if no rendering context - * was active, the format was unsupported, or the width or height - * were out of range; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateTextureFromSurface - * \sa SDL_DestroyTexture - * \sa SDL_QueryTexture - * \sa SDL_UpdateTexture - */ -extern DECLSPEC SDL_Texture * SDLCALL SDL_CreateTexture(SDL_Renderer * renderer, - Uint32 format, - int access, int w, - int h); - -/** - * Create a texture from an existing surface. - * - * The surface is not modified or freed by this function. - * - * The SDL_TextureAccess hint for the created texture is - * `SDL_TEXTUREACCESS_STATIC`. - * - * The pixel format of the created texture may be different from the pixel - * format of the surface. Use SDL_QueryTexture() to query the pixel format of - * the texture. - * - * \param renderer the rendering context - * \param surface the SDL_Surface structure containing pixel data used to fill - * the texture - * \returns the created texture or NULL on failure; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateTexture - * \sa SDL_DestroyTexture - * \sa SDL_QueryTexture - */ -extern DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureFromSurface(SDL_Renderer * renderer, SDL_Surface * surface); - -/** - * Query the attributes of a texture. - * - * \param texture the texture to query - * \param format a pointer filled in with the raw format of the texture; the - * actual format may differ, but pixel transfers will use this - * format (one of the SDL_PixelFormatEnum values). This argument - * can be NULL if you don't need this information. - * \param access a pointer filled in with the actual access to the texture - * (one of the SDL_TextureAccess values). This argument can be - * NULL if you don't need this information. - * \param w a pointer filled in with the width of the texture in pixels. This - * argument can be NULL if you don't need this information. - * \param h a pointer filled in with the height of the texture in pixels. This - * argument can be NULL if you don't need this information. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateTexture - */ -extern DECLSPEC int SDLCALL SDL_QueryTexture(SDL_Texture * texture, - Uint32 * format, int *access, - int *w, int *h); - -/** - * Set an additional color value multiplied into render copy operations. - * - * When this texture is rendered, during the copy operation each source color - * channel is modulated by the appropriate color value according to the - * following formula: - * - * `srcC = srcC * (color / 255)` - * - * Color modulation is not always supported by the renderer; it will return -1 - * if color modulation is not supported. - * - * \param texture the texture to update - * \param r the red color value multiplied into copy operations - * \param g the green color value multiplied into copy operations - * \param b the blue color value multiplied into copy operations - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetTextureColorMod - * \sa SDL_SetTextureAlphaMod - */ -extern DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture * texture, - Uint8 r, Uint8 g, Uint8 b); - - -/** - * Get the additional color value multiplied into render copy operations. - * - * \param texture the texture to query - * \param r a pointer filled in with the current red color value - * \param g a pointer filled in with the current green color value - * \param b a pointer filled in with the current blue color value - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetTextureAlphaMod - * \sa SDL_SetTextureColorMod - */ -extern DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture * texture, - Uint8 * r, Uint8 * g, - Uint8 * b); - -/** - * Set an additional alpha value multiplied into render copy operations. - * - * When this texture is rendered, during the copy operation the source alpha - * value is modulated by this alpha value according to the following formula: - * - * `srcA = srcA * (alpha / 255)` - * - * Alpha modulation is not always supported by the renderer; it will return -1 - * if alpha modulation is not supported. - * - * \param texture the texture to update - * \param alpha the source alpha value multiplied into copy operations - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetTextureAlphaMod - * \sa SDL_SetTextureColorMod - */ -extern DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture * texture, - Uint8 alpha); - -/** - * Get the additional alpha value multiplied into render copy operations. - * - * \param texture the texture to query - * \param alpha a pointer filled in with the current alpha value - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetTextureColorMod - * \sa SDL_SetTextureAlphaMod - */ -extern DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture * texture, - Uint8 * alpha); - -/** - * Set the blend mode for a texture, used by SDL_RenderCopy(). - * - * If the blend mode is not supported, the closest supported mode is chosen - * and this function returns -1. - * - * \param texture the texture to update - * \param blendMode the SDL_BlendMode to use for texture blending - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetTextureBlendMode - * \sa SDL_RenderCopy - */ -extern DECLSPEC int SDLCALL SDL_SetTextureBlendMode(SDL_Texture * texture, - SDL_BlendMode blendMode); - -/** - * Get the blend mode used for texture copy operations. - * - * \param texture the texture to query - * \param blendMode a pointer filled in with the current SDL_BlendMode - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetTextureBlendMode - */ -extern DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture * texture, - SDL_BlendMode *blendMode); - -/** - * Set the scale mode used for texture scale operations. - * - * If the scale mode is not supported, the closest supported mode is chosen. - * - * \param texture The texture to update. - * \param scaleMode the SDL_ScaleMode to use for texture scaling. - * \returns 0 on success, or -1 if the texture is not valid. - * - * \since This function is available since SDL 2.0.12. - * - * \sa SDL_GetTextureScaleMode - */ -extern DECLSPEC int SDLCALL SDL_SetTextureScaleMode(SDL_Texture * texture, - SDL_ScaleMode scaleMode); - -/** - * Get the scale mode used for texture scale operations. - * - * \param texture the texture to query. - * \param scaleMode a pointer filled in with the current scale mode. - * \return 0 on success, or -1 if the texture is not valid. - * - * \since This function is available since SDL 2.0.12. - * - * \sa SDL_SetTextureScaleMode - */ -extern DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture * texture, - SDL_ScaleMode *scaleMode); - -/** - * Associate a user-specified pointer with a texture. - * - * \param texture the texture to update. - * \param userdata the pointer to associate with the texture. - * \returns 0 on success, or -1 if the texture is not valid. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_GetTextureUserData - */ -extern DECLSPEC int SDLCALL SDL_SetTextureUserData(SDL_Texture * texture, - void *userdata); - -/** - * Get the user-specified pointer associated with a texture - * - * \param texture the texture to query. - * \return the pointer associated with the texture, or NULL if the texture is - * not valid. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_SetTextureUserData - */ -extern DECLSPEC void * SDLCALL SDL_GetTextureUserData(SDL_Texture * texture); - -/** - * Update the given texture rectangle with new pixel data. - * - * The pixel data must be in the pixel format of the texture. Use - * SDL_QueryTexture() to query the pixel format of the texture. - * - * This is a fairly slow function, intended for use with static textures that - * do not change often. - * - * If the texture is intended to be updated often, it is preferred to create - * the texture as streaming and use the locking functions referenced below. - * While this function will work with streaming textures, for optimization - * reasons you may not get the pixels back if you lock the texture afterward. - * - * \param texture the texture to update - * \param rect an SDL_Rect structure representing the area to update, or NULL - * to update the entire texture - * \param pixels the raw pixel data in the format of the texture - * \param pitch the number of bytes in a row of pixel data, including padding - * between lines - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateTexture - * \sa SDL_LockTexture - * \sa SDL_UnlockTexture - */ -extern DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture * texture, - const SDL_Rect * rect, - const void *pixels, int pitch); - -/** - * Update a rectangle within a planar YV12 or IYUV texture with new pixel - * data. - * - * You can use SDL_UpdateTexture() as long as your pixel data is a contiguous - * block of Y and U/V planes in the proper order, but this function is - * available if your pixel data is not contiguous. - * - * \param texture the texture to update - * \param rect a pointer to the rectangle of pixels to update, or NULL to - * update the entire texture - * \param Yplane the raw pixel data for the Y plane - * \param Ypitch the number of bytes between rows of pixel data for the Y - * plane - * \param Uplane the raw pixel data for the U plane - * \param Upitch the number of bytes between rows of pixel data for the U - * plane - * \param Vplane the raw pixel data for the V plane - * \param Vpitch the number of bytes between rows of pixel data for the V - * plane - * \returns 0 on success or -1 if the texture is not valid; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.1. - * - * \sa SDL_UpdateTexture - */ -extern DECLSPEC int SDLCALL SDL_UpdateYUVTexture(SDL_Texture * texture, - const SDL_Rect * rect, - const Uint8 *Yplane, int Ypitch, - const Uint8 *Uplane, int Upitch, - const Uint8 *Vplane, int Vpitch); - -/** - * Update a rectangle within a planar NV12 or NV21 texture with new pixels. - * - * You can use SDL_UpdateTexture() as long as your pixel data is a contiguous - * block of NV12/21 planes in the proper order, but this function is available - * if your pixel data is not contiguous. - * - * \param texture the texture to update - * \param rect a pointer to the rectangle of pixels to update, or NULL to - * update the entire texture. - * \param Yplane the raw pixel data for the Y plane. - * \param Ypitch the number of bytes between rows of pixel data for the Y - * plane. - * \param UVplane the raw pixel data for the UV plane. - * \param UVpitch the number of bytes between rows of pixel data for the UV - * plane. - * \return 0 on success, or -1 if the texture is not valid. - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture * texture, - const SDL_Rect * rect, - const Uint8 *Yplane, int Ypitch, - const Uint8 *UVplane, int UVpitch); - -/** - * Lock a portion of the texture for **write-only** pixel access. - * - * As an optimization, the pixels made available for editing don't necessarily - * contain the old texture data. This is a write-only operation, and if you - * need to keep a copy of the texture data you should do that at the - * application level. - * - * You must use SDL_UnlockTexture() to unlock the pixels and apply any - * changes. - * - * \param texture the texture to lock for access, which was created with - * `SDL_TEXTUREACCESS_STREAMING` - * \param rect an SDL_Rect structure representing the area to lock for access; - * NULL to lock the entire texture - * \param pixels this is filled in with a pointer to the locked pixels, - * appropriately offset by the locked area - * \param pitch this is filled in with the pitch of the locked pixels; the - * pitch is the length of one row in bytes - * \returns 0 on success or a negative error code if the texture is not valid - * or was not created with `SDL_TEXTUREACCESS_STREAMING`; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_UnlockTexture - */ -extern DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture * texture, - const SDL_Rect * rect, - void **pixels, int *pitch); - -/** - * Lock a portion of the texture for **write-only** pixel access, and expose - * it as a SDL surface. - * - * Besides providing an SDL_Surface instead of raw pixel data, this function - * operates like SDL_LockTexture. - * - * As an optimization, the pixels made available for editing don't necessarily - * contain the old texture data. This is a write-only operation, and if you - * need to keep a copy of the texture data you should do that at the - * application level. - * - * You must use SDL_UnlockTexture() to unlock the pixels and apply any - * changes. - * - * The returned surface is freed internally after calling SDL_UnlockTexture() - * or SDL_DestroyTexture(). The caller should not free it. - * - * \param texture the texture to lock for access, which was created with - * `SDL_TEXTUREACCESS_STREAMING` - * \param rect a pointer to the rectangle to lock for access. If the rect is - * NULL, the entire texture will be locked - * \param surface this is filled in with an SDL surface representing the - * locked area - * \returns 0 on success, or -1 if the texture is not valid or was not created - * with `SDL_TEXTUREACCESS_STREAMING` - * - * \since This function is available since SDL 2.0.12. - * - * \sa SDL_LockTexture - * \sa SDL_UnlockTexture - */ -extern DECLSPEC int SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture, - const SDL_Rect *rect, - SDL_Surface **surface); - -/** - * Unlock a texture, uploading the changes to video memory, if needed. - * - * **Warning**: Please note that SDL_LockTexture() is intended to be - * write-only; it will not guarantee the previous contents of the texture will - * be provided. You must fully initialize any area of a texture that you lock - * before unlocking it, as the pixels might otherwise be uninitialized memory. - * - * Which is to say: locking and immediately unlocking a texture can result in - * corrupted textures, depending on the renderer in use. - * - * \param texture a texture locked by SDL_LockTexture() - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LockTexture - */ -extern DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture * texture); - -/** - * Determine whether a renderer supports the use of render targets. - * - * \param renderer the renderer that will be checked - * \returns SDL_TRUE if supported or SDL_FALSE if not. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetRenderTarget - */ -extern DECLSPEC SDL_bool SDLCALL SDL_RenderTargetSupported(SDL_Renderer *renderer); - -/** - * Set a texture as the current rendering target. - * - * Before using this function, you should check the - * `SDL_RENDERER_TARGETTEXTURE` bit in the flags of SDL_RendererInfo to see if - * render targets are supported. - * - * The default render target is the window for which the renderer was created. - * To stop rendering to a texture and render to the window again, call this - * function with a NULL `texture`. - * - * \param renderer the rendering context - * \param texture the targeted texture, which must be created with the - * `SDL_TEXTUREACCESS_TARGET` flag, or NULL to render to the - * window instead of a texture. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRenderTarget - */ -extern DECLSPEC int SDLCALL SDL_SetRenderTarget(SDL_Renderer *renderer, - SDL_Texture *texture); - -/** - * Get the current render target. - * - * The default render target is the window for which the renderer was created, - * and is reported a NULL here. - * - * \param renderer the rendering context - * \returns the current render target or NULL for the default render target. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetRenderTarget - */ -extern DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *renderer); - -/** - * Set a device independent resolution for rendering. - * - * This function uses the viewport and scaling functionality to allow a fixed - * logical resolution for rendering, regardless of the actual output - * resolution. If the actual output resolution doesn't have the same aspect - * ratio the output rendering will be centered within the output display. - * - * If the output display is a window, mouse and touch events in the window - * will be filtered and scaled so they seem to arrive within the logical - * resolution. The SDL_HINT_MOUSE_RELATIVE_SCALING hint controls whether - * relative motion events are also scaled. - * - * If this function results in scaling or subpixel drawing by the rendering - * backend, it will be handled using the appropriate quality hints. - * - * \param renderer the renderer for which resolution should be set - * \param w the width of the logical resolution - * \param h the height of the logical resolution - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderGetLogicalSize - */ -extern DECLSPEC int SDLCALL SDL_RenderSetLogicalSize(SDL_Renderer * renderer, int w, int h); - -/** - * Get device independent resolution for rendering. - * - * When using the main rendering target (eg no target texture is set): this - * may return 0 for `w` and `h` if the SDL_Renderer has never had its logical - * size set by SDL_RenderSetLogicalSize(). Otherwise it returns the logical - * width and height. - * - * When using a target texture: Never return 0 for `w` and `h` at first. Then - * it returns the logical width and height that are set. - * - * \param renderer a rendering context - * \param w an int to be filled with the width - * \param h an int to be filled with the height - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderSetLogicalSize - */ -extern DECLSPEC void SDLCALL SDL_RenderGetLogicalSize(SDL_Renderer * renderer, int *w, int *h); - -/** - * Set whether to force integer scales for resolution-independent rendering. - * - * This function restricts the logical viewport to integer values - that is, - * when a resolution is between two multiples of a logical size, the viewport - * size is rounded down to the lower multiple. - * - * \param renderer the renderer for which integer scaling should be set - * \param enable enable or disable the integer scaling for rendering - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_RenderGetIntegerScale - * \sa SDL_RenderSetLogicalSize - */ -extern DECLSPEC int SDLCALL SDL_RenderSetIntegerScale(SDL_Renderer * renderer, - SDL_bool enable); - -/** - * Get whether integer scales are forced for resolution-independent rendering. - * - * \param renderer the renderer from which integer scaling should be queried - * \returns SDL_TRUE if integer scales are forced or SDL_FALSE if not and on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_RenderSetIntegerScale - */ -extern DECLSPEC SDL_bool SDLCALL SDL_RenderGetIntegerScale(SDL_Renderer * renderer); - -/** - * Set the drawing area for rendering on the current target. - * - * When the window is resized, the viewport is reset to fill the entire new - * window size. - * - * \param renderer the rendering context - * \param rect the SDL_Rect structure representing the drawing area, or NULL - * to set the viewport to the entire target - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderGetViewport - */ -extern DECLSPEC int SDLCALL SDL_RenderSetViewport(SDL_Renderer * renderer, - const SDL_Rect * rect); - -/** - * Get the drawing area for the current target. - * - * \param renderer the rendering context - * \param rect an SDL_Rect structure filled in with the current drawing area - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderSetViewport - */ -extern DECLSPEC void SDLCALL SDL_RenderGetViewport(SDL_Renderer * renderer, - SDL_Rect * rect); - -/** - * Set the clip rectangle for rendering on the specified target. - * - * \param renderer the rendering context for which clip rectangle should be - * set - * \param rect an SDL_Rect structure representing the clip area, relative to - * the viewport, or NULL to disable clipping - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderGetClipRect - * \sa SDL_RenderIsClipEnabled - */ -extern DECLSPEC int SDLCALL SDL_RenderSetClipRect(SDL_Renderer * renderer, - const SDL_Rect * rect); - -/** - * Get the clip rectangle for the current target. - * - * \param renderer the rendering context from which clip rectangle should be - * queried - * \param rect an SDL_Rect structure filled in with the current clipping area - * or an empty rectangle if clipping is disabled - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderIsClipEnabled - * \sa SDL_RenderSetClipRect - */ -extern DECLSPEC void SDLCALL SDL_RenderGetClipRect(SDL_Renderer * renderer, - SDL_Rect * rect); - -/** - * Get whether clipping is enabled on the given renderer. - * - * \param renderer the renderer from which clip state should be queried - * \returns SDL_TRUE if clipping is enabled or SDL_FALSE if not; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_RenderGetClipRect - * \sa SDL_RenderSetClipRect - */ -extern DECLSPEC SDL_bool SDLCALL SDL_RenderIsClipEnabled(SDL_Renderer * renderer); - - -/** - * Set the drawing scale for rendering on the current target. - * - * The drawing coordinates are scaled by the x/y scaling factors before they - * are used by the renderer. This allows resolution independent drawing with a - * single coordinate system. - * - * If this results in scaling or subpixel drawing by the rendering backend, it - * will be handled using the appropriate quality hints. For best results use - * integer scaling factors. - * - * \param renderer a rendering context - * \param scaleX the horizontal scaling factor - * \param scaleY the vertical scaling factor - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderGetScale - * \sa SDL_RenderSetLogicalSize - */ -extern DECLSPEC int SDLCALL SDL_RenderSetScale(SDL_Renderer * renderer, - float scaleX, float scaleY); - -/** - * Get the drawing scale for the current target. - * - * \param renderer the renderer from which drawing scale should be queried - * \param scaleX a pointer filled in with the horizontal scaling factor - * \param scaleY a pointer filled in with the vertical scaling factor - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderSetScale - */ -extern DECLSPEC void SDLCALL SDL_RenderGetScale(SDL_Renderer * renderer, - float *scaleX, float *scaleY); - -/** - * Get logical coordinates of point in renderer when given real coordinates of - * point in window. - * - * Logical coordinates will differ from real coordinates when render is scaled - * and logical renderer size set - * - * \param renderer the renderer from which the logical coordinates should be - * calculated - * \param windowX the real X coordinate in the window - * \param windowY the real Y coordinate in the window - * \param logicalX the pointer filled with the logical x coordinate - * \param logicalY the pointer filled with the logical y coordinate - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_RenderGetScale - * \sa SDL_RenderSetScale - * \sa SDL_RenderGetLogicalSize - * \sa SDL_RenderSetLogicalSize - */ -extern DECLSPEC void SDLCALL SDL_RenderWindowToLogical(SDL_Renderer * renderer, - int windowX, int windowY, - float *logicalX, float *logicalY); - - -/** - * Get real coordinates of point in window when given logical coordinates of - * point in renderer. - * - * Logical coordinates will differ from real coordinates when render is scaled - * and logical renderer size set - * - * \param renderer the renderer from which the window coordinates should be - * calculated - * \param logicalX the logical x coordinate - * \param logicalY the logical y coordinate - * \param windowX the pointer filled with the real X coordinate in the window - * \param windowY the pointer filled with the real Y coordinate in the window - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_RenderGetScale - * \sa SDL_RenderSetScale - * \sa SDL_RenderGetLogicalSize - * \sa SDL_RenderSetLogicalSize - */ -extern DECLSPEC void SDLCALL SDL_RenderLogicalToWindow(SDL_Renderer * renderer, - float logicalX, float logicalY, - int *windowX, int *windowY); - -/** - * Set the color used for drawing operations (Rect, Line and Clear). - * - * Set the color for drawing or filling rectangles, lines, and points, and for - * SDL_RenderClear(). - * - * \param renderer the rendering context - * \param r the red value used to draw on the rendering target - * \param g the green value used to draw on the rendering target - * \param b the blue value used to draw on the rendering target - * \param a the alpha value used to draw on the rendering target; usually - * `SDL_ALPHA_OPAQUE` (255). Use SDL_SetRenderDrawBlendMode to - * specify how the alpha channel is used - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRenderDrawColor - * \sa SDL_RenderClear - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - */ -extern DECLSPEC int SDLCALL SDL_SetRenderDrawColor(SDL_Renderer * renderer, - Uint8 r, Uint8 g, Uint8 b, - Uint8 a); - -/** - * Get the color used for drawing operations (Rect, Line and Clear). - * - * \param renderer the rendering context - * \param r a pointer filled in with the red value used to draw on the - * rendering target - * \param g a pointer filled in with the green value used to draw on the - * rendering target - * \param b a pointer filled in with the blue value used to draw on the - * rendering target - * \param a a pointer filled in with the alpha value used to draw on the - * rendering target; usually `SDL_ALPHA_OPAQUE` (255) - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_GetRenderDrawColor(SDL_Renderer * renderer, - Uint8 * r, Uint8 * g, Uint8 * b, - Uint8 * a); - -/** - * Set the blend mode used for drawing operations (Fill and Line). - * - * If the blend mode is not supported, the closest supported mode is chosen. - * - * \param renderer the rendering context - * \param blendMode the SDL_BlendMode to use for blending - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRenderDrawBlendMode - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - */ -extern DECLSPEC int SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer * renderer, - SDL_BlendMode blendMode); - -/** - * Get the blend mode used for drawing operations. - * - * \param renderer the rendering context - * \param blendMode a pointer filled in with the current SDL_BlendMode - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetRenderDrawBlendMode - */ -extern DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer * renderer, - SDL_BlendMode *blendMode); - -/** - * Clear the current rendering target with the drawing color. - * - * This function clears the entire rendering target, ignoring the viewport and - * the clip rectangle. - * - * \param renderer the rendering context - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer * renderer); - -/** - * Draw a point on the current rendering target. - * - * SDL_RenderDrawPoint() draws a single point. If you want to draw multiple, - * use SDL_RenderDrawPoints() instead. - * - * \param renderer the rendering context - * \param x the x coordinate of the point - * \param y the y coordinate of the point - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - * \sa SDL_RenderPresent - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawPoint(SDL_Renderer * renderer, - int x, int y); - -/** - * Draw multiple points on the current rendering target. - * - * \param renderer the rendering context - * \param points an array of SDL_Point structures that represent the points to - * draw - * \param count the number of points to draw - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - * \sa SDL_RenderPresent - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawPoints(SDL_Renderer * renderer, - const SDL_Point * points, - int count); - -/** - * Draw a line on the current rendering target. - * - * SDL_RenderDrawLine() draws the line to include both end points. If you want - * to draw multiple, connecting lines use SDL_RenderDrawLines() instead. - * - * \param renderer the rendering context - * \param x1 the x coordinate of the start point - * \param y1 the y coordinate of the start point - * \param x2 the x coordinate of the end point - * \param y2 the y coordinate of the end point - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - * \sa SDL_RenderPresent - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawLine(SDL_Renderer * renderer, - int x1, int y1, int x2, int y2); - -/** - * Draw a series of connected lines on the current rendering target. - * - * \param renderer the rendering context - * \param points an array of SDL_Point structures representing points along - * the lines - * \param count the number of points, drawing count-1 lines - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - * \sa SDL_RenderPresent - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawLines(SDL_Renderer * renderer, - const SDL_Point * points, - int count); - -/** - * Draw a rectangle on the current rendering target. - * - * \param renderer the rendering context - * \param rect an SDL_Rect structure representing the rectangle to draw, or - * NULL to outline the entire rendering target - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - * \sa SDL_RenderPresent - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawRect(SDL_Renderer * renderer, - const SDL_Rect * rect); - -/** - * Draw some number of rectangles on the current rendering target. - * - * \param renderer the rendering context - * \param rects an array of SDL_Rect structures representing the rectangles to - * be drawn - * \param count the number of rectangles - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - * \sa SDL_RenderPresent - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawRects(SDL_Renderer * renderer, - const SDL_Rect * rects, - int count); - -/** - * Fill a rectangle on the current rendering target with the drawing color. - * - * The current drawing color is set by SDL_SetRenderDrawColor(), and the - * color's alpha value is ignored unless blending is enabled with the - * appropriate call to SDL_SetRenderDrawBlendMode(). - * - * \param renderer the rendering context - * \param rect the SDL_Rect structure representing the rectangle to fill, or - * NULL for the entire rendering target - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRects - * \sa SDL_RenderPresent - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer * renderer, - const SDL_Rect * rect); - -/** - * Fill some number of rectangles on the current rendering target with the - * drawing color. - * - * \param renderer the rendering context - * \param rects an array of SDL_Rect structures representing the rectangles to - * be filled - * \param count the number of rectangles - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderPresent - */ -extern DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer * renderer, - const SDL_Rect * rects, - int count); - -/** - * Copy a portion of the texture to the current rendering target. - * - * The texture is blended with the destination based on its blend mode set - * with SDL_SetTextureBlendMode(). - * - * The texture color is affected based on its color modulation set by - * SDL_SetTextureColorMod(). - * - * The texture alpha is affected based on its alpha modulation set by - * SDL_SetTextureAlphaMod(). - * - * \param renderer the rendering context - * \param texture the source texture - * \param srcrect the source SDL_Rect structure or NULL for the entire texture - * \param dstrect the destination SDL_Rect structure or NULL for the entire - * rendering target; the texture will be stretched to fill the - * given rectangle - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderCopyEx - * \sa SDL_SetTextureAlphaMod - * \sa SDL_SetTextureBlendMode - * \sa SDL_SetTextureColorMod - */ -extern DECLSPEC int SDLCALL SDL_RenderCopy(SDL_Renderer * renderer, - SDL_Texture * texture, - const SDL_Rect * srcrect, - const SDL_Rect * dstrect); - -/** - * Copy a portion of the texture to the current rendering, with optional - * rotation and flipping. - * - * Copy a portion of the texture to the current rendering target, optionally - * rotating it by angle around the given center and also flipping it - * top-bottom and/or left-right. - * - * The texture is blended with the destination based on its blend mode set - * with SDL_SetTextureBlendMode(). - * - * The texture color is affected based on its color modulation set by - * SDL_SetTextureColorMod(). - * - * The texture alpha is affected based on its alpha modulation set by - * SDL_SetTextureAlphaMod(). - * - * \param renderer the rendering context - * \param texture the source texture - * \param srcrect the source SDL_Rect structure or NULL for the entire texture - * \param dstrect the destination SDL_Rect structure or NULL for the entire - * rendering target - * \param angle an angle in degrees that indicates the rotation that will be - * applied to dstrect, rotating it in a clockwise direction - * \param center a pointer to a point indicating the point around which - * dstrect will be rotated (if NULL, rotation will be done - * around `dstrect.w / 2`, `dstrect.h / 2`) - * \param flip a SDL_RendererFlip value stating which flipping actions should - * be performed on the texture - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderCopy - * \sa SDL_SetTextureAlphaMod - * \sa SDL_SetTextureBlendMode - * \sa SDL_SetTextureColorMod - */ -extern DECLSPEC int SDLCALL SDL_RenderCopyEx(SDL_Renderer * renderer, - SDL_Texture * texture, - const SDL_Rect * srcrect, - const SDL_Rect * dstrect, - const double angle, - const SDL_Point *center, - const SDL_RendererFlip flip); - - -/** - * Draw a point on the current rendering target at subpixel precision. - * - * \param renderer The renderer which should draw a point. - * \param x The x coordinate of the point. - * \param y The y coordinate of the point. - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawPointF(SDL_Renderer * renderer, - float x, float y); - -/** - * Draw multiple points on the current rendering target at subpixel precision. - * - * \param renderer The renderer which should draw multiple points. - * \param points The points to draw - * \param count The number of points to draw - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawPointsF(SDL_Renderer * renderer, - const SDL_FPoint * points, - int count); - -/** - * Draw a line on the current rendering target at subpixel precision. - * - * \param renderer The renderer which should draw a line. - * \param x1 The x coordinate of the start point. - * \param y1 The y coordinate of the start point. - * \param x2 The x coordinate of the end point. - * \param y2 The y coordinate of the end point. - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawLineF(SDL_Renderer * renderer, - float x1, float y1, float x2, float y2); - -/** - * Draw a series of connected lines on the current rendering target at - * subpixel precision. - * - * \param renderer The renderer which should draw multiple lines. - * \param points The points along the lines - * \param count The number of points, drawing count-1 lines - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawLinesF(SDL_Renderer * renderer, - const SDL_FPoint * points, - int count); - -/** - * Draw a rectangle on the current rendering target at subpixel precision. - * - * \param renderer The renderer which should draw a rectangle. - * \param rect A pointer to the destination rectangle, or NULL to outline the - * entire rendering target. - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawRectF(SDL_Renderer * renderer, - const SDL_FRect * rect); - -/** - * Draw some number of rectangles on the current rendering target at subpixel - * precision. - * - * \param renderer The renderer which should draw multiple rectangles. - * \param rects A pointer to an array of destination rectangles. - * \param count The number of rectangles. - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderDrawRectsF(SDL_Renderer * renderer, - const SDL_FRect * rects, - int count); - -/** - * Fill a rectangle on the current rendering target with the drawing color at - * subpixel precision. - * - * \param renderer The renderer which should fill a rectangle. - * \param rect A pointer to the destination rectangle, or NULL for the entire - * rendering target. - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderFillRectF(SDL_Renderer * renderer, - const SDL_FRect * rect); - -/** - * Fill some number of rectangles on the current rendering target with the - * drawing color at subpixel precision. - * - * \param renderer The renderer which should fill multiple rectangles. - * \param rects A pointer to an array of destination rectangles. - * \param count The number of rectangles. - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderFillRectsF(SDL_Renderer * renderer, - const SDL_FRect * rects, - int count); - -/** - * Copy a portion of the texture to the current rendering target at subpixel - * precision. - * - * \param renderer The renderer which should copy parts of a texture. - * \param texture The source texture. - * \param srcrect A pointer to the source rectangle, or NULL for the entire - * texture. - * \param dstrect A pointer to the destination rectangle, or NULL for the - * entire rendering target. - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderCopyF(SDL_Renderer * renderer, - SDL_Texture * texture, - const SDL_Rect * srcrect, - const SDL_FRect * dstrect); - -/** - * Copy a portion of the source texture to the current rendering target, with - * rotation and flipping, at subpixel precision. - * - * \param renderer The renderer which should copy parts of a texture. - * \param texture The source texture. - * \param srcrect A pointer to the source rectangle, or NULL for the entire - * texture. - * \param dstrect A pointer to the destination rectangle, or NULL for the - * entire rendering target. - * \param angle An angle in degrees that indicates the rotation that will be - * applied to dstrect, rotating it in a clockwise direction - * \param center A pointer to a point indicating the point around which - * dstrect will be rotated (if NULL, rotation will be done - * around dstrect.w/2, dstrect.h/2). - * \param flip An SDL_RendererFlip value stating which flipping actions should - * be performed on the texture - * \return 0 on success, or -1 on error - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderCopyExF(SDL_Renderer * renderer, - SDL_Texture * texture, - const SDL_Rect * srcrect, - const SDL_FRect * dstrect, - const double angle, - const SDL_FPoint *center, - const SDL_RendererFlip flip); - -/** - * Render a list of triangles, optionally using a texture and indices into the - * vertex array Color and alpha modulation is done per vertex - * (SDL_SetTextureColorMod and SDL_SetTextureAlphaMod are ignored). - * - * \param renderer The rendering context. - * \param texture (optional) The SDL texture to use. - * \param vertices Vertices. - * \param num_vertices Number of vertices. - * \param indices (optional) An array of integer indices into the 'vertices' - * array, if NULL all vertices will be rendered in sequential - * order. - * \param num_indices Number of indices. - * \return 0 on success, or -1 if the operation is not supported - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_RenderGeometryRaw - * \sa SDL_Vertex - */ -extern DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, - SDL_Texture *texture, - const SDL_Vertex *vertices, int num_vertices, - const int *indices, int num_indices); - -/** - * Render a list of triangles, optionally using a texture and indices into the - * vertex arrays Color and alpha modulation is done per vertex - * (SDL_SetTextureColorMod and SDL_SetTextureAlphaMod are ignored). - * - * \param renderer The rendering context. - * \param texture (optional) The SDL texture to use. - * \param xy Vertex positions - * \param xy_stride Byte size to move from one element to the next element - * \param color Vertex colors (as SDL_Color) - * \param color_stride Byte size to move from one element to the next element - * \param uv Vertex normalized texture coordinates - * \param uv_stride Byte size to move from one element to the next element - * \param num_vertices Number of vertices. - * \param indices (optional) An array of indices into the 'vertices' arrays, - * if NULL all vertices will be rendered in sequential order. - * \param num_indices Number of indices. - * \param size_indices Index size: 1 (byte), 2 (short), 4 (int) - * \return 0 on success, or -1 if the operation is not supported - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_RenderGeometry - * \sa SDL_Vertex - */ -extern DECLSPEC int SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer, - SDL_Texture *texture, - const float *xy, int xy_stride, - const SDL_Color *color, int color_stride, - const float *uv, int uv_stride, - int num_vertices, - const void *indices, int num_indices, int size_indices); - -/** - * Read pixels from the current rendering target to an array of pixels. - * - * **WARNING**: This is a very slow operation, and should not be used - * frequently. If you're using this on the main rendering target, it should be - * called after rendering and before SDL_RenderPresent(). - * - * `pitch` specifies the number of bytes between rows in the destination - * `pixels` data. This allows you to write to a subrectangle or have padded - * rows in the destination. Generally, `pitch` should equal the number of - * pixels per row in the `pixels` data times the number of bytes per pixel, - * but it might contain additional padding (for example, 24bit RGB Windows - * Bitmap data pads all rows to multiples of 4 bytes). - * - * \param renderer the rendering context - * \param rect an SDL_Rect structure representing the area to read, or NULL - * for the entire render target - * \param format an SDL_PixelFormatEnum value of the desired format of the - * pixel data, or 0 to use the format of the rendering target - * \param pixels a pointer to the pixel data to copy into - * \param pitch the pitch of the `pixels` parameter - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_RenderReadPixels(SDL_Renderer * renderer, - const SDL_Rect * rect, - Uint32 format, - void *pixels, int pitch); - -/** - * Update the screen with any rendering performed since the previous call. - * - * SDL's rendering functions operate on a backbuffer; that is, calling a - * rendering function such as SDL_RenderDrawLine() does not directly put a - * line on the screen, but rather updates the backbuffer. As such, you compose - * your entire scene and *present* the composed backbuffer to the screen as a - * complete picture. - * - * Therefore, when using SDL's rendering API, one does all drawing intended - * for the frame, and then calls this function once per frame to present the - * final drawing to the user. - * - * The backbuffer should be considered invalidated after each present; do not - * assume that previous contents will exist between frames. You are strongly - * encouraged to call SDL_RenderClear() to initialize the backbuffer before - * starting each new frame's drawing, even if you plan to overwrite every - * pixel. - * - * \param renderer the rendering context - * - * \threadsafety You may only call this function on the main thread. If this - * happens to work on a background thread on any given platform - * or backend, it's purely by luck and you should not rely on it - * to work next time. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RenderClear - * \sa SDL_RenderDrawLine - * \sa SDL_RenderDrawLines - * \sa SDL_RenderDrawPoint - * \sa SDL_RenderDrawPoints - * \sa SDL_RenderDrawRect - * \sa SDL_RenderDrawRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects - * \sa SDL_SetRenderDrawBlendMode - * \sa SDL_SetRenderDrawColor - */ -extern DECLSPEC void SDLCALL SDL_RenderPresent(SDL_Renderer * renderer); - -/** - * Destroy the specified texture. - * - * Passing NULL or an otherwise invalid texture will set the SDL error message - * to "Invalid texture". - * - * \param texture the texture to destroy - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateTexture - * \sa SDL_CreateTextureFromSurface - */ -extern DECLSPEC void SDLCALL SDL_DestroyTexture(SDL_Texture * texture); - -/** - * Destroy the rendering context for a window and free associated textures. - * - * If `renderer` is NULL, this function will return immediately after setting - * the SDL error message to "Invalid renderer". See SDL_GetError(). - * - * \param renderer the rendering context - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRenderer - */ -extern DECLSPEC void SDLCALL SDL_DestroyRenderer(SDL_Renderer * renderer); - -/** - * Force the rendering context to flush any pending commands to the underlying - * rendering API. - * - * You do not need to (and in fact, shouldn't) call this function unless you - * are planning to call into OpenGL/Direct3D/Metal/whatever directly in - * addition to using an SDL_Renderer. - * - * This is for a very-specific case: if you are using SDL's render API, you - * asked for a specific renderer backend (OpenGL, Direct3D, etc), you set - * SDL_HINT_RENDER_BATCHING to "1", and you plan to make OpenGL/D3D/whatever - * calls in addition to SDL render API calls. If all of this applies, you - * should call SDL_RenderFlush() between calls to SDL's render API and the - * low-level API you're using in cooperation. - * - * In all other cases, you can ignore this function. This is only here to get - * maximum performance out of a specific situation. In all other cases, SDL - * will do the right thing, perhaps at a performance loss. - * - * This function is first available in SDL 2.0.10, and is not needed in 2.0.9 - * and earlier, as earlier versions did not queue rendering commands at all, - * instead flushing them to the OS immediately. - * - * \param renderer the rendering context - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC int SDLCALL SDL_RenderFlush(SDL_Renderer * renderer); - - -/** - * Bind an OpenGL/ES/ES2 texture to the current context. - * - * This is for use with OpenGL instructions when rendering OpenGL primitives - * directly. - * - * If not NULL, `texw` and `texh` will be filled with the width and height - * values suitable for the provided texture. In most cases, both will be 1.0, - * however, on systems that support the GL_ARB_texture_rectangle extension, - * these values will actually be the pixel width and height used to create the - * texture, so this factor needs to be taken into account when providing - * texture coordinates to OpenGL. - * - * You need a renderer to create an SDL_Texture, therefore you can only use - * this function with an implicit OpenGL context from SDL_CreateRenderer(), - * not with your own OpenGL context. If you need control over your OpenGL - * context, you need to write your own texture-loading methods. - * - * Also note that SDL may upload RGB textures as BGR (or vice-versa), and - * re-order the color channels in the shaders phase, so the uploaded texture - * may have swapped color channels. - * - * \param texture the texture to bind to the current OpenGL/ES/ES2 context - * \param texw a pointer to a float value which will be filled with the - * texture width or NULL if you don't need that value - * \param texh a pointer to a float value which will be filled with the - * texture height or NULL if you don't need that value - * \returns 0 on success, or -1 if the operation is not supported; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_MakeCurrent - * \sa SDL_GL_UnbindTexture - */ -extern DECLSPEC int SDLCALL SDL_GL_BindTexture(SDL_Texture *texture, float *texw, float *texh); - -/** - * Unbind an OpenGL/ES/ES2 texture from the current context. - * - * See SDL_GL_BindTexture() for examples on how to use these functions - * - * \param texture the texture to unbind from the current OpenGL/ES/ES2 context - * \returns 0 on success, or -1 if the operation is not supported - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_BindTexture - * \sa SDL_GL_MakeCurrent - */ -extern DECLSPEC int SDLCALL SDL_GL_UnbindTexture(SDL_Texture *texture); - -/** - * Get the CAMetalLayer associated with the given Metal renderer. - * - * This function returns `void *`, so SDL doesn't have to include Metal's - * headers, but it can be safely cast to a `CAMetalLayer *`. - * - * \param renderer The renderer to query - * \returns a `CAMetalLayer *` on success, or NULL if the renderer isn't a - * Metal renderer - * - * \since This function is available since SDL 2.0.8. - * - * \sa SDL_RenderGetMetalCommandEncoder - */ -extern DECLSPEC void *SDLCALL SDL_RenderGetMetalLayer(SDL_Renderer * renderer); - -/** - * Get the Metal command encoder for the current frame - * - * This function returns `void *`, so SDL doesn't have to include Metal's - * headers, but it can be safely cast to an `id<MTLRenderCommandEncoder>`. - * - * Note that as of SDL 2.0.18, this will return NULL if Metal refuses to give - * SDL a drawable to render to, which might happen if the window is - * hidden/minimized/offscreen. This doesn't apply to command encoders for - * render targets, just the window's backbuffer. Check your return values! - * - * \param renderer The renderer to query - * \returns an `id<MTLRenderCommandEncoder>` on success, or NULL if the - * renderer isn't a Metal renderer or there was an error. - * - * \since This function is available since SDL 2.0.8. - * - * \sa SDL_RenderGetMetalLayer - */ -extern DECLSPEC void *SDLCALL SDL_RenderGetMetalCommandEncoder(SDL_Renderer * renderer); - -/** - * Toggle VSync of the given renderer. - * - * \param renderer The renderer to toggle - * \param vsync 1 for on, 0 for off. All other values are reserved - * \returns a 0 int on success, or non-zero on failure - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_RenderSetVSync(SDL_Renderer* renderer, int vsync); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_render_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_render.h.blob deleted file mode 100644 index 1c4ce4a2b2bb09f2d1a713000cd7ca7cfc79ab6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101643 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h deleted file mode 100644 index 8615cb54..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h +++ /dev/null @@ -1,841 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_rwops.h - * - * This file provides a general interface for SDL to read and write - * data streams. It can easily be extended to files, memory, etc. - */ - -#ifndef SDL_rwops_h_ -#define SDL_rwops_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/* RWops Types */ -#define SDL_RWOPS_UNKNOWN 0U /**< Unknown stream type */ -#define SDL_RWOPS_WINFILE 1U /**< Win32 file */ -#define SDL_RWOPS_STDFILE 2U /**< Stdio file */ -#define SDL_RWOPS_JNIFILE 3U /**< Android asset */ -#define SDL_RWOPS_MEMORY 4U /**< Memory stream */ -#define SDL_RWOPS_MEMORY_RO 5U /**< Read-Only memory stream */ - -/** - * This is the read/write operation structure -- very basic. - */ -typedef struct SDL_RWops -{ - /** - * Return the size of the file in this rwops, or -1 if unknown - */ - Sint64 (SDLCALL * size) (struct SDL_RWops * context); - - /** - * Seek to \c offset relative to \c whence, one of stdio's whence values: - * RW_SEEK_SET, RW_SEEK_CUR, RW_SEEK_END - * - * \return the final offset in the data stream, or -1 on error. - */ - Sint64 (SDLCALL * seek) (struct SDL_RWops * context, Sint64 offset, - int whence); - - /** - * Read up to \c maxnum objects each of size \c size from the data - * stream to the area pointed at by \c ptr. - * - * \return the number of objects read, or 0 at error or end of file. - */ - size_t (SDLCALL * read) (struct SDL_RWops * context, void *ptr, - size_t size, size_t maxnum); - - /** - * Write exactly \c num objects each of size \c size from the area - * pointed at by \c ptr to data stream. - * - * \return the number of objects written, or 0 at error or end of file. - */ - size_t (SDLCALL * write) (struct SDL_RWops * context, const void *ptr, - size_t size, size_t num); - - /** - * Close and free an allocated SDL_RWops structure. - * - * \return 0 if successful or -1 on write error when flushing data. - */ - int (SDLCALL * close) (struct SDL_RWops * context); - - Uint32 type; - union - { -#if defined(__ANDROID__) - struct - { - void *asset; - } androidio; -#elif defined(__WIN32__) || defined(__GDK__) - struct - { - SDL_bool append; - void *h; - struct - { - void *data; - size_t size; - size_t left; - } buffer; - } windowsio; -#endif - -#ifdef HAVE_STDIO_H - struct - { - SDL_bool autoclose; - FILE *fp; - } stdio; -#endif - struct - { - Uint8 *base; - Uint8 *here; - Uint8 *stop; - } mem; - struct - { - void *data1; - void *data2; - } unknown; - } hidden; - -} SDL_RWops; - - -/** - * \name RWFrom functions - * - * Functions to create SDL_RWops structures from various data streams. - */ -/* @{ */ - -/** - * Use this function to create a new SDL_RWops structure for reading from - * and/or writing to a named file. - * - * The `mode` string is treated roughly the same as in a call to the C - * library's fopen(), even if SDL doesn't happen to use fopen() behind the - * scenes. - * - * Available `mode` strings: - * - * - "r": Open a file for reading. The file must exist. - * - "w": Create an empty file for writing. If a file with the same name - * already exists its content is erased and the file is treated as a new - * empty file. - * - "a": Append to a file. Writing operations append data at the end of the - * file. The file is created if it does not exist. - * - "r+": Open a file for update both reading and writing. The file must - * exist. - * - "w+": Create an empty file for both reading and writing. If a file with - * the same name already exists its content is erased and the file is - * treated as a new empty file. - * - "a+": Open a file for reading and appending. All writing operations are - * performed at the end of the file, protecting the previous content to be - * overwritten. You can reposition (fseek, rewind) the internal pointer to - * anywhere in the file for reading, but writing operations will move it - * back to the end of file. The file is created if it does not exist. - * - * **NOTE**: In order to open a file as a binary file, a "b" character has to - * be included in the `mode` string. This additional "b" character can either - * be appended at the end of the string (thus making the following compound - * modes: "rb", "wb", "ab", "r+b", "w+b", "a+b") or be inserted between the - * letter and the "+" sign for the mixed modes ("rb+", "wb+", "ab+"). - * Additional characters may follow the sequence, although they should have no - * effect. For example, "t" is sometimes appended to make explicit the file is - * a text file. - * - * This function supports Unicode filenames, but they must be encoded in UTF-8 - * format, regardless of the underlying operating system. - * - * As a fallback, SDL_RWFromFile() will transparently open a matching filename - * in an Android app's `assets`. - * - * Closing the SDL_RWops will close the file handle SDL is holding internally. - * - * \param file a UTF-8 string representing the filename to open - * \param mode an ASCII string representing the mode to be used for opening - * the file. - * \returns a pointer to the SDL_RWops structure that is created, or NULL on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RWclose - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFP - * \sa SDL_RWFromMem - * \sa SDL_RWread - * \sa SDL_RWseek - * \sa SDL_RWtell - * \sa SDL_RWwrite - */ -extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromFile(const char *file, - const char *mode); - -#ifdef HAVE_STDIO_H - -extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromFP(FILE * fp, SDL_bool autoclose); - -#else - -/** - * Use this function to create an SDL_RWops structure from a standard I/O file - * pointer (stdio.h's `FILE*`). - * - * This function is not available on Windows, since files opened in an - * application on that platform cannot be used by a dynamically linked - * library. - * - * On some platforms, the first parameter is a `void*`, on others, it's a - * `FILE*`, depending on what system headers are available to SDL. It is - * always intended to be the `FILE*` type from the C runtime's stdio.h. - * - * \param fp the `FILE*` that feeds the SDL_RWops stream - * \param autoclose SDL_TRUE to close the `FILE*` when closing the SDL_RWops, - * SDL_FALSE to leave the `FILE*` open when the RWops is - * closed - * \returns a pointer to the SDL_RWops structure that is created, or NULL on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RWclose - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFile - * \sa SDL_RWFromMem - * \sa SDL_RWread - * \sa SDL_RWseek - * \sa SDL_RWtell - * \sa SDL_RWwrite - */ -extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromFP(void * fp, - SDL_bool autoclose); -#endif - -/** - * Use this function to prepare a read-write memory buffer for use with - * SDL_RWops. - * - * This function sets up an SDL_RWops struct based on a memory area of a - * certain size, for both read and write access. - * - * This memory buffer is not copied by the RWops; the pointer you provide must - * remain valid until you close the stream. Closing the stream will not free - * the original buffer. - * - * If you need to make sure the RWops never writes to the memory buffer, you - * should use SDL_RWFromConstMem() with a read-only buffer of memory instead. - * - * \param mem a pointer to a buffer to feed an SDL_RWops stream - * \param size the buffer size, in bytes - * \returns a pointer to a new SDL_RWops structure, or NULL if it fails; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RWclose - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFile - * \sa SDL_RWFromFP - * \sa SDL_RWFromMem - * \sa SDL_RWread - * \sa SDL_RWseek - * \sa SDL_RWtell - * \sa SDL_RWwrite - */ -extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromMem(void *mem, int size); - -/** - * Use this function to prepare a read-only memory buffer for use with RWops. - * - * This function sets up an SDL_RWops struct based on a memory area of a - * certain size. It assumes the memory area is not writable. - * - * Attempting to write to this RWops stream will report an error without - * writing to the memory buffer. - * - * This memory buffer is not copied by the RWops; the pointer you provide must - * remain valid until you close the stream. Closing the stream will not free - * the original buffer. - * - * If you need to write to a memory buffer, you should use SDL_RWFromMem() - * with a writable buffer of memory instead. - * - * \param mem a pointer to a read-only buffer to feed an SDL_RWops stream - * \param size the buffer size, in bytes - * \returns a pointer to a new SDL_RWops structure, or NULL if it fails; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RWclose - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFile - * \sa SDL_RWFromFP - * \sa SDL_RWFromMem - * \sa SDL_RWread - * \sa SDL_RWseek - * \sa SDL_RWtell - */ -extern DECLSPEC SDL_RWops *SDLCALL SDL_RWFromConstMem(const void *mem, - int size); - -/* @} *//* RWFrom functions */ - - -/** - * Use this function to allocate an empty, unpopulated SDL_RWops structure. - * - * Applications do not need to use this function unless they are providing - * their own SDL_RWops implementation. If you just need a SDL_RWops to - * read/write a common data source, you should use the built-in - * implementations in SDL, like SDL_RWFromFile() or SDL_RWFromMem(), etc. - * - * You must free the returned pointer with SDL_FreeRW(). Depending on your - * operating system and compiler, there may be a difference between the - * malloc() and free() your program uses and the versions SDL calls - * internally. Trying to mix the two can cause crashing such as segmentation - * faults. Since all SDL_RWops must free themselves when their **close** - * method is called, all SDL_RWops must be allocated through this function, so - * they can all be freed correctly with SDL_FreeRW(). - * - * \returns a pointer to the allocated memory on success, or NULL on failure; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FreeRW - */ -extern DECLSPEC SDL_RWops *SDLCALL SDL_AllocRW(void); - -/** - * Use this function to free an SDL_RWops structure allocated by - * SDL_AllocRW(). - * - * Applications do not need to use this function unless they are providing - * their own SDL_RWops implementation. If you just need a SDL_RWops to - * read/write a common data source, you should use the built-in - * implementations in SDL, like SDL_RWFromFile() or SDL_RWFromMem(), etc, and - * call the **close** method on those SDL_RWops pointers when you are done - * with them. - * - * Only use SDL_FreeRW() on pointers returned by SDL_AllocRW(). The pointer is - * invalid as soon as this function returns. Any extra memory allocated during - * creation of the SDL_RWops is not freed by SDL_FreeRW(); the programmer must - * be responsible for managing that memory in their **close** method. - * - * \param area the SDL_RWops structure to be freed - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AllocRW - */ -extern DECLSPEC void SDLCALL SDL_FreeRW(SDL_RWops * area); - -#define RW_SEEK_SET 0 /**< Seek from the beginning of data */ -#define RW_SEEK_CUR 1 /**< Seek relative to current read point */ -#define RW_SEEK_END 2 /**< Seek relative to the end of data */ - -/** - * Use this function to get the size of the data stream in an SDL_RWops. - * - * Prior to SDL 2.0.10, this function was a macro. - * - * \param context the SDL_RWops to get the size of the data stream from - * \returns the size of the data stream in the SDL_RWops on success, -1 if - * unknown or a negative error code on failure; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC Sint64 SDLCALL SDL_RWsize(SDL_RWops *context); - -/** - * Seek within an SDL_RWops data stream. - * - * This function seeks to byte `offset`, relative to `whence`. - * - * `whence` may be any of the following values: - * - * - `RW_SEEK_SET`: seek from the beginning of data - * - `RW_SEEK_CUR`: seek relative to current read point - * - `RW_SEEK_END`: seek relative to the end of data - * - * If this stream can not seek, it will return -1. - * - * SDL_RWseek() is actually a wrapper function that calls the SDL_RWops's - * `seek` method appropriately, to simplify application development. - * - * Prior to SDL 2.0.10, this function was a macro. - * - * \param context a pointer to an SDL_RWops structure - * \param offset an offset in bytes, relative to **whence** location; can be - * negative - * \param whence any of `RW_SEEK_SET`, `RW_SEEK_CUR`, `RW_SEEK_END` - * \returns the final offset in the data stream after the seek or -1 on error. - * - * \since This function is available since SDL 2.0.10. - * - * \sa SDL_RWclose - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFile - * \sa SDL_RWFromFP - * \sa SDL_RWFromMem - * \sa SDL_RWread - * \sa SDL_RWtell - * \sa SDL_RWwrite - */ -extern DECLSPEC Sint64 SDLCALL SDL_RWseek(SDL_RWops *context, - Sint64 offset, int whence); - -/** - * Determine the current read/write offset in an SDL_RWops data stream. - * - * SDL_RWtell is actually a wrapper function that calls the SDL_RWops's `seek` - * method, with an offset of 0 bytes from `RW_SEEK_CUR`, to simplify - * application development. - * - * Prior to SDL 2.0.10, this function was a macro. - * - * \param context a SDL_RWops data stream object from which to get the current - * offset - * \returns the current offset in the stream, or -1 if the information can not - * be determined. - * - * \since This function is available since SDL 2.0.10. - * - * \sa SDL_RWclose - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFile - * \sa SDL_RWFromFP - * \sa SDL_RWFromMem - * \sa SDL_RWread - * \sa SDL_RWseek - * \sa SDL_RWwrite - */ -extern DECLSPEC Sint64 SDLCALL SDL_RWtell(SDL_RWops *context); - -/** - * Read from a data source. - * - * This function reads up to `maxnum` objects each of size `size` from the - * data source to the area pointed at by `ptr`. This function may read less - * objects than requested. It will return zero when there has been an error or - * the data stream is completely read. - * - * SDL_RWread() is actually a function wrapper that calls the SDL_RWops's - * `read` method appropriately, to simplify application development. - * - * Prior to SDL 2.0.10, this function was a macro. - * - * \param context a pointer to an SDL_RWops structure - * \param ptr a pointer to a buffer to read data into - * \param size the size of each object to read, in bytes - * \param maxnum the maximum number of objects to be read - * \returns the number of objects read, or 0 at error or end of file; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.10. - * - * \sa SDL_RWclose - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFile - * \sa SDL_RWFromFP - * \sa SDL_RWFromMem - * \sa SDL_RWseek - * \sa SDL_RWwrite - */ -extern DECLSPEC size_t SDLCALL SDL_RWread(SDL_RWops *context, - void *ptr, size_t size, - size_t maxnum); - -/** - * Write to an SDL_RWops data stream. - * - * This function writes exactly `num` objects each of size `size` from the - * area pointed at by `ptr` to the stream. If this fails for any reason, it'll - * return less than `num` to demonstrate how far the write progressed. On - * success, it returns `num`. - * - * SDL_RWwrite is actually a function wrapper that calls the SDL_RWops's - * `write` method appropriately, to simplify application development. - * - * Prior to SDL 2.0.10, this function was a macro. - * - * \param context a pointer to an SDL_RWops structure - * \param ptr a pointer to a buffer containing data to write - * \param size the size of an object to write, in bytes - * \param num the number of objects to write - * \returns the number of objects written, which will be less than **num** on - * error; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.10. - * - * \sa SDL_RWclose - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFile - * \sa SDL_RWFromFP - * \sa SDL_RWFromMem - * \sa SDL_RWread - * \sa SDL_RWseek - */ -extern DECLSPEC size_t SDLCALL SDL_RWwrite(SDL_RWops *context, - const void *ptr, size_t size, - size_t num); - -/** - * Close and free an allocated SDL_RWops structure. - * - * SDL_RWclose() closes and cleans up the SDL_RWops stream. It releases any - * resources used by the stream and frees the SDL_RWops itself with - * SDL_FreeRW(). This returns 0 on success, or -1 if the stream failed to - * flush to its output (e.g. to disk). - * - * Note that if this fails to flush the stream to disk, this function reports - * an error, but the SDL_RWops is still invalid once this function returns. - * - * Prior to SDL 2.0.10, this function was a macro. - * - * \param context SDL_RWops structure to close - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.10. - * - * \sa SDL_RWFromConstMem - * \sa SDL_RWFromFile - * \sa SDL_RWFromFP - * \sa SDL_RWFromMem - * \sa SDL_RWread - * \sa SDL_RWseek - * \sa SDL_RWwrite - */ -extern DECLSPEC int SDLCALL SDL_RWclose(SDL_RWops *context); - -/** - * Load all the data from an SDL data stream. - * - * The data is allocated with a zero byte at the end (null terminated) for - * convenience. This extra byte is not included in the value reported via - * `datasize`. - * - * The data should be freed with SDL_free(). - * - * \param src the SDL_RWops to read all available data from - * \param datasize if not NULL, will store the number of bytes read - * \param freesrc if non-zero, calls SDL_RWclose() on `src` before returning - * \returns the data, or NULL if there was an error. - * - * \since This function is available since SDL 2.0.6. - */ -extern DECLSPEC void *SDLCALL SDL_LoadFile_RW(SDL_RWops *src, - size_t *datasize, - int freesrc); - -/** - * Load all the data from a file path. - * - * The data is allocated with a zero byte at the end (null terminated) for - * convenience. This extra byte is not included in the value reported via - * `datasize`. - * - * The data should be freed with SDL_free(). - * - * Prior to SDL 2.0.10, this function was a macro wrapping around - * SDL_LoadFile_RW. - * - * \param file the path to read all available data from - * \param datasize if not NULL, will store the number of bytes read - * \returns the data, or NULL if there was an error. - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC void *SDLCALL SDL_LoadFile(const char *file, size_t *datasize); - -/** - * \name Read endian functions - * - * Read an item of the specified endianness and return in native format. - */ -/* @{ */ - -/** - * Use this function to read a byte from an SDL_RWops. - * - * \param src the SDL_RWops to read from - * \returns the read byte on success or 0 on failure; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WriteU8 - */ -extern DECLSPEC Uint8 SDLCALL SDL_ReadU8(SDL_RWops * src); - -/** - * Use this function to read 16 bits of little-endian data from an SDL_RWops - * and return in native format. - * - * SDL byteswaps the data only if necessary, so the data returned will be in - * the native byte order. - * - * \param src the stream from which to read data - * \returns 16 bits of data in the native byte order of the platform. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ReadBE16 - */ -extern DECLSPEC Uint16 SDLCALL SDL_ReadLE16(SDL_RWops * src); - -/** - * Use this function to read 16 bits of big-endian data from an SDL_RWops and - * return in native format. - * - * SDL byteswaps the data only if necessary, so the data returned will be in - * the native byte order. - * - * \param src the stream from which to read data - * \returns 16 bits of data in the native byte order of the platform. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ReadLE16 - */ -extern DECLSPEC Uint16 SDLCALL SDL_ReadBE16(SDL_RWops * src); - -/** - * Use this function to read 32 bits of little-endian data from an SDL_RWops - * and return in native format. - * - * SDL byteswaps the data only if necessary, so the data returned will be in - * the native byte order. - * - * \param src the stream from which to read data - * \returns 32 bits of data in the native byte order of the platform. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ReadBE32 - */ -extern DECLSPEC Uint32 SDLCALL SDL_ReadLE32(SDL_RWops * src); - -/** - * Use this function to read 32 bits of big-endian data from an SDL_RWops and - * return in native format. - * - * SDL byteswaps the data only if necessary, so the data returned will be in - * the native byte order. - * - * \param src the stream from which to read data - * \returns 32 bits of data in the native byte order of the platform. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ReadLE32 - */ -extern DECLSPEC Uint32 SDLCALL SDL_ReadBE32(SDL_RWops * src); - -/** - * Use this function to read 64 bits of little-endian data from an SDL_RWops - * and return in native format. - * - * SDL byteswaps the data only if necessary, so the data returned will be in - * the native byte order. - * - * \param src the stream from which to read data - * \returns 64 bits of data in the native byte order of the platform. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ReadBE64 - */ -extern DECLSPEC Uint64 SDLCALL SDL_ReadLE64(SDL_RWops * src); - -/** - * Use this function to read 64 bits of big-endian data from an SDL_RWops and - * return in native format. - * - * SDL byteswaps the data only if necessary, so the data returned will be in - * the native byte order. - * - * \param src the stream from which to read data - * \returns 64 bits of data in the native byte order of the platform. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ReadLE64 - */ -extern DECLSPEC Uint64 SDLCALL SDL_ReadBE64(SDL_RWops * src); -/* @} *//* Read endian functions */ - -/** - * \name Write endian functions - * - * Write an item of native format to the specified endianness. - */ -/* @{ */ - -/** - * Use this function to write a byte to an SDL_RWops. - * - * \param dst the SDL_RWops to write to - * \param value the byte value to write - * \returns 1 on success or 0 on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ReadU8 - */ -extern DECLSPEC size_t SDLCALL SDL_WriteU8(SDL_RWops * dst, Uint8 value); - -/** - * Use this function to write 16 bits in native format to a SDL_RWops as - * little-endian data. - * - * SDL byteswaps the data only if necessary, so the application always - * specifies native format, and the data written will be in little-endian - * format. - * - * \param dst the stream to which data will be written - * \param value the data to be written, in native format - * \returns 1 on successful write, 0 on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WriteBE16 - */ -extern DECLSPEC size_t SDLCALL SDL_WriteLE16(SDL_RWops * dst, Uint16 value); - -/** - * Use this function to write 16 bits in native format to a SDL_RWops as - * big-endian data. - * - * SDL byteswaps the data only if necessary, so the application always - * specifies native format, and the data written will be in big-endian format. - * - * \param dst the stream to which data will be written - * \param value the data to be written, in native format - * \returns 1 on successful write, 0 on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WriteLE16 - */ -extern DECLSPEC size_t SDLCALL SDL_WriteBE16(SDL_RWops * dst, Uint16 value); - -/** - * Use this function to write 32 bits in native format to a SDL_RWops as - * little-endian data. - * - * SDL byteswaps the data only if necessary, so the application always - * specifies native format, and the data written will be in little-endian - * format. - * - * \param dst the stream to which data will be written - * \param value the data to be written, in native format - * \returns 1 on successful write, 0 on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WriteBE32 - */ -extern DECLSPEC size_t SDLCALL SDL_WriteLE32(SDL_RWops * dst, Uint32 value); - -/** - * Use this function to write 32 bits in native format to a SDL_RWops as - * big-endian data. - * - * SDL byteswaps the data only if necessary, so the application always - * specifies native format, and the data written will be in big-endian format. - * - * \param dst the stream to which data will be written - * \param value the data to be written, in native format - * \returns 1 on successful write, 0 on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WriteLE32 - */ -extern DECLSPEC size_t SDLCALL SDL_WriteBE32(SDL_RWops * dst, Uint32 value); - -/** - * Use this function to write 64 bits in native format to a SDL_RWops as - * little-endian data. - * - * SDL byteswaps the data only if necessary, so the application always - * specifies native format, and the data written will be in little-endian - * format. - * - * \param dst the stream to which data will be written - * \param value the data to be written, in native format - * \returns 1 on successful write, 0 on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WriteBE64 - */ -extern DECLSPEC size_t SDLCALL SDL_WriteLE64(SDL_RWops * dst, Uint64 value); - -/** - * Use this function to write 64 bits in native format to a SDL_RWops as - * big-endian data. - * - * SDL byteswaps the data only if necessary, so the application always - * specifies native format, and the data written will be in big-endian format. - * - * \param dst the stream to which data will be written - * \param value the data to be written, in native format - * \returns 1 on successful write, 0 on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WriteLE64 - */ -extern DECLSPEC size_t SDLCALL SDL_WriteBE64(SDL_RWops * dst, Uint64 value); -/* @} *//* Write endian functions */ - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_rwops_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_rwops.h.blob deleted file mode 100644 index b30d64c0d54ea750e1fff2715902fd8693005f82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42441 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h deleted file mode 100644 index a960a799..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h +++ /dev/null @@ -1,438 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_scancode.h - * - * Defines keyboard scancodes. - */ - -#ifndef SDL_scancode_h_ -#define SDL_scancode_h_ - -#include "SDL_stdinc.h" - -/** - * \brief The SDL keyboard scancode representation. - * - * Values of this type are used to represent keyboard keys, among other places - * in the \link SDL_Keysym::scancode key.keysym.scancode \endlink field of the - * SDL_Event structure. - * - * The values in this enumeration are based on the USB usage page standard: - * https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf - */ -typedef enum -{ - SDL_SCANCODE_UNKNOWN = 0, - - /** - * \name Usage page 0x07 - * - * These values are from usage page 0x07 (USB keyboard page). - */ - /* @{ */ - - SDL_SCANCODE_A = 4, - SDL_SCANCODE_B = 5, - SDL_SCANCODE_C = 6, - SDL_SCANCODE_D = 7, - SDL_SCANCODE_E = 8, - SDL_SCANCODE_F = 9, - SDL_SCANCODE_G = 10, - SDL_SCANCODE_H = 11, - SDL_SCANCODE_I = 12, - SDL_SCANCODE_J = 13, - SDL_SCANCODE_K = 14, - SDL_SCANCODE_L = 15, - SDL_SCANCODE_M = 16, - SDL_SCANCODE_N = 17, - SDL_SCANCODE_O = 18, - SDL_SCANCODE_P = 19, - SDL_SCANCODE_Q = 20, - SDL_SCANCODE_R = 21, - SDL_SCANCODE_S = 22, - SDL_SCANCODE_T = 23, - SDL_SCANCODE_U = 24, - SDL_SCANCODE_V = 25, - SDL_SCANCODE_W = 26, - SDL_SCANCODE_X = 27, - SDL_SCANCODE_Y = 28, - SDL_SCANCODE_Z = 29, - - SDL_SCANCODE_1 = 30, - SDL_SCANCODE_2 = 31, - SDL_SCANCODE_3 = 32, - SDL_SCANCODE_4 = 33, - SDL_SCANCODE_5 = 34, - SDL_SCANCODE_6 = 35, - SDL_SCANCODE_7 = 36, - SDL_SCANCODE_8 = 37, - SDL_SCANCODE_9 = 38, - SDL_SCANCODE_0 = 39, - - SDL_SCANCODE_RETURN = 40, - SDL_SCANCODE_ESCAPE = 41, - SDL_SCANCODE_BACKSPACE = 42, - SDL_SCANCODE_TAB = 43, - SDL_SCANCODE_SPACE = 44, - - SDL_SCANCODE_MINUS = 45, - SDL_SCANCODE_EQUALS = 46, - SDL_SCANCODE_LEFTBRACKET = 47, - SDL_SCANCODE_RIGHTBRACKET = 48, - SDL_SCANCODE_BACKSLASH = 49, /**< Located at the lower left of the return - * key on ISO keyboards and at the right end - * of the QWERTY row on ANSI keyboards. - * Produces REVERSE SOLIDUS (backslash) and - * VERTICAL LINE in a US layout, REVERSE - * SOLIDUS and VERTICAL LINE in a UK Mac - * layout, NUMBER SIGN and TILDE in a UK - * Windows layout, DOLLAR SIGN and POUND SIGN - * in a Swiss German layout, NUMBER SIGN and - * APOSTROPHE in a German layout, GRAVE - * ACCENT and POUND SIGN in a French Mac - * layout, and ASTERISK and MICRO SIGN in a - * French Windows layout. - */ - SDL_SCANCODE_NONUSHASH = 50, /**< ISO USB keyboards actually use this code - * instead of 49 for the same key, but all - * OSes I've seen treat the two codes - * identically. So, as an implementor, unless - * your keyboard generates both of those - * codes and your OS treats them differently, - * you should generate SDL_SCANCODE_BACKSLASH - * instead of this code. As a user, you - * should not rely on this code because SDL - * will never generate it with most (all?) - * keyboards. - */ - SDL_SCANCODE_SEMICOLON = 51, - SDL_SCANCODE_APOSTROPHE = 52, - SDL_SCANCODE_GRAVE = 53, /**< Located in the top left corner (on both ANSI - * and ISO keyboards). Produces GRAVE ACCENT and - * TILDE in a US Windows layout and in US and UK - * Mac layouts on ANSI keyboards, GRAVE ACCENT - * and NOT SIGN in a UK Windows layout, SECTION - * SIGN and PLUS-MINUS SIGN in US and UK Mac - * layouts on ISO keyboards, SECTION SIGN and - * DEGREE SIGN in a Swiss German layout (Mac: - * only on ISO keyboards), CIRCUMFLEX ACCENT and - * DEGREE SIGN in a German layout (Mac: only on - * ISO keyboards), SUPERSCRIPT TWO and TILDE in a - * French Windows layout, COMMERCIAL AT and - * NUMBER SIGN in a French Mac layout on ISO - * keyboards, and LESS-THAN SIGN and GREATER-THAN - * SIGN in a Swiss German, German, or French Mac - * layout on ANSI keyboards. - */ - SDL_SCANCODE_COMMA = 54, - SDL_SCANCODE_PERIOD = 55, - SDL_SCANCODE_SLASH = 56, - - SDL_SCANCODE_CAPSLOCK = 57, - - SDL_SCANCODE_F1 = 58, - SDL_SCANCODE_F2 = 59, - SDL_SCANCODE_F3 = 60, - SDL_SCANCODE_F4 = 61, - SDL_SCANCODE_F5 = 62, - SDL_SCANCODE_F6 = 63, - SDL_SCANCODE_F7 = 64, - SDL_SCANCODE_F8 = 65, - SDL_SCANCODE_F9 = 66, - SDL_SCANCODE_F10 = 67, - SDL_SCANCODE_F11 = 68, - SDL_SCANCODE_F12 = 69, - - SDL_SCANCODE_PRINTSCREEN = 70, - SDL_SCANCODE_SCROLLLOCK = 71, - SDL_SCANCODE_PAUSE = 72, - SDL_SCANCODE_INSERT = 73, /**< insert on PC, help on some Mac keyboards (but - does send code 73, not 117) */ - SDL_SCANCODE_HOME = 74, - SDL_SCANCODE_PAGEUP = 75, - SDL_SCANCODE_DELETE = 76, - SDL_SCANCODE_END = 77, - SDL_SCANCODE_PAGEDOWN = 78, - SDL_SCANCODE_RIGHT = 79, - SDL_SCANCODE_LEFT = 80, - SDL_SCANCODE_DOWN = 81, - SDL_SCANCODE_UP = 82, - - SDL_SCANCODE_NUMLOCKCLEAR = 83, /**< num lock on PC, clear on Mac keyboards - */ - SDL_SCANCODE_KP_DIVIDE = 84, - SDL_SCANCODE_KP_MULTIPLY = 85, - SDL_SCANCODE_KP_MINUS = 86, - SDL_SCANCODE_KP_PLUS = 87, - SDL_SCANCODE_KP_ENTER = 88, - SDL_SCANCODE_KP_1 = 89, - SDL_SCANCODE_KP_2 = 90, - SDL_SCANCODE_KP_3 = 91, - SDL_SCANCODE_KP_4 = 92, - SDL_SCANCODE_KP_5 = 93, - SDL_SCANCODE_KP_6 = 94, - SDL_SCANCODE_KP_7 = 95, - SDL_SCANCODE_KP_8 = 96, - SDL_SCANCODE_KP_9 = 97, - SDL_SCANCODE_KP_0 = 98, - SDL_SCANCODE_KP_PERIOD = 99, - - SDL_SCANCODE_NONUSBACKSLASH = 100, /**< This is the additional key that ISO - * keyboards have over ANSI ones, - * located between left shift and Y. - * Produces GRAVE ACCENT and TILDE in a - * US or UK Mac layout, REVERSE SOLIDUS - * (backslash) and VERTICAL LINE in a - * US or UK Windows layout, and - * LESS-THAN SIGN and GREATER-THAN SIGN - * in a Swiss German, German, or French - * layout. */ - SDL_SCANCODE_APPLICATION = 101, /**< windows contextual menu, compose */ - SDL_SCANCODE_POWER = 102, /**< The USB document says this is a status flag, - * not a physical key - but some Mac keyboards - * do have a power key. */ - SDL_SCANCODE_KP_EQUALS = 103, - SDL_SCANCODE_F13 = 104, - SDL_SCANCODE_F14 = 105, - SDL_SCANCODE_F15 = 106, - SDL_SCANCODE_F16 = 107, - SDL_SCANCODE_F17 = 108, - SDL_SCANCODE_F18 = 109, - SDL_SCANCODE_F19 = 110, - SDL_SCANCODE_F20 = 111, - SDL_SCANCODE_F21 = 112, - SDL_SCANCODE_F22 = 113, - SDL_SCANCODE_F23 = 114, - SDL_SCANCODE_F24 = 115, - SDL_SCANCODE_EXECUTE = 116, - SDL_SCANCODE_HELP = 117, /**< AL Integrated Help Center */ - SDL_SCANCODE_MENU = 118, /**< Menu (show menu) */ - SDL_SCANCODE_SELECT = 119, - SDL_SCANCODE_STOP = 120, /**< AC Stop */ - SDL_SCANCODE_AGAIN = 121, /**< AC Redo/Repeat */ - SDL_SCANCODE_UNDO = 122, /**< AC Undo */ - SDL_SCANCODE_CUT = 123, /**< AC Cut */ - SDL_SCANCODE_COPY = 124, /**< AC Copy */ - SDL_SCANCODE_PASTE = 125, /**< AC Paste */ - SDL_SCANCODE_FIND = 126, /**< AC Find */ - SDL_SCANCODE_MUTE = 127, - SDL_SCANCODE_VOLUMEUP = 128, - SDL_SCANCODE_VOLUMEDOWN = 129, -/* not sure whether there's a reason to enable these */ -/* SDL_SCANCODE_LOCKINGCAPSLOCK = 130, */ -/* SDL_SCANCODE_LOCKINGNUMLOCK = 131, */ -/* SDL_SCANCODE_LOCKINGSCROLLLOCK = 132, */ - SDL_SCANCODE_KP_COMMA = 133, - SDL_SCANCODE_KP_EQUALSAS400 = 134, - - SDL_SCANCODE_INTERNATIONAL1 = 135, /**< used on Asian keyboards, see - footnotes in USB doc */ - SDL_SCANCODE_INTERNATIONAL2 = 136, - SDL_SCANCODE_INTERNATIONAL3 = 137, /**< Yen */ - SDL_SCANCODE_INTERNATIONAL4 = 138, - SDL_SCANCODE_INTERNATIONAL5 = 139, - SDL_SCANCODE_INTERNATIONAL6 = 140, - SDL_SCANCODE_INTERNATIONAL7 = 141, - SDL_SCANCODE_INTERNATIONAL8 = 142, - SDL_SCANCODE_INTERNATIONAL9 = 143, - SDL_SCANCODE_LANG1 = 144, /**< Hangul/English toggle */ - SDL_SCANCODE_LANG2 = 145, /**< Hanja conversion */ - SDL_SCANCODE_LANG3 = 146, /**< Katakana */ - SDL_SCANCODE_LANG4 = 147, /**< Hiragana */ - SDL_SCANCODE_LANG5 = 148, /**< Zenkaku/Hankaku */ - SDL_SCANCODE_LANG6 = 149, /**< reserved */ - SDL_SCANCODE_LANG7 = 150, /**< reserved */ - SDL_SCANCODE_LANG8 = 151, /**< reserved */ - SDL_SCANCODE_LANG9 = 152, /**< reserved */ - - SDL_SCANCODE_ALTERASE = 153, /**< Erase-Eaze */ - SDL_SCANCODE_SYSREQ = 154, - SDL_SCANCODE_CANCEL = 155, /**< AC Cancel */ - SDL_SCANCODE_CLEAR = 156, - SDL_SCANCODE_PRIOR = 157, - SDL_SCANCODE_RETURN2 = 158, - SDL_SCANCODE_SEPARATOR = 159, - SDL_SCANCODE_OUT = 160, - SDL_SCANCODE_OPER = 161, - SDL_SCANCODE_CLEARAGAIN = 162, - SDL_SCANCODE_CRSEL = 163, - SDL_SCANCODE_EXSEL = 164, - - SDL_SCANCODE_KP_00 = 176, - SDL_SCANCODE_KP_000 = 177, - SDL_SCANCODE_THOUSANDSSEPARATOR = 178, - SDL_SCANCODE_DECIMALSEPARATOR = 179, - SDL_SCANCODE_CURRENCYUNIT = 180, - SDL_SCANCODE_CURRENCYSUBUNIT = 181, - SDL_SCANCODE_KP_LEFTPAREN = 182, - SDL_SCANCODE_KP_RIGHTPAREN = 183, - SDL_SCANCODE_KP_LEFTBRACE = 184, - SDL_SCANCODE_KP_RIGHTBRACE = 185, - SDL_SCANCODE_KP_TAB = 186, - SDL_SCANCODE_KP_BACKSPACE = 187, - SDL_SCANCODE_KP_A = 188, - SDL_SCANCODE_KP_B = 189, - SDL_SCANCODE_KP_C = 190, - SDL_SCANCODE_KP_D = 191, - SDL_SCANCODE_KP_E = 192, - SDL_SCANCODE_KP_F = 193, - SDL_SCANCODE_KP_XOR = 194, - SDL_SCANCODE_KP_POWER = 195, - SDL_SCANCODE_KP_PERCENT = 196, - SDL_SCANCODE_KP_LESS = 197, - SDL_SCANCODE_KP_GREATER = 198, - SDL_SCANCODE_KP_AMPERSAND = 199, - SDL_SCANCODE_KP_DBLAMPERSAND = 200, - SDL_SCANCODE_KP_VERTICALBAR = 201, - SDL_SCANCODE_KP_DBLVERTICALBAR = 202, - SDL_SCANCODE_KP_COLON = 203, - SDL_SCANCODE_KP_HASH = 204, - SDL_SCANCODE_KP_SPACE = 205, - SDL_SCANCODE_KP_AT = 206, - SDL_SCANCODE_KP_EXCLAM = 207, - SDL_SCANCODE_KP_MEMSTORE = 208, - SDL_SCANCODE_KP_MEMRECALL = 209, - SDL_SCANCODE_KP_MEMCLEAR = 210, - SDL_SCANCODE_KP_MEMADD = 211, - SDL_SCANCODE_KP_MEMSUBTRACT = 212, - SDL_SCANCODE_KP_MEMMULTIPLY = 213, - SDL_SCANCODE_KP_MEMDIVIDE = 214, - SDL_SCANCODE_KP_PLUSMINUS = 215, - SDL_SCANCODE_KP_CLEAR = 216, - SDL_SCANCODE_KP_CLEARENTRY = 217, - SDL_SCANCODE_KP_BINARY = 218, - SDL_SCANCODE_KP_OCTAL = 219, - SDL_SCANCODE_KP_DECIMAL = 220, - SDL_SCANCODE_KP_HEXADECIMAL = 221, - - SDL_SCANCODE_LCTRL = 224, - SDL_SCANCODE_LSHIFT = 225, - SDL_SCANCODE_LALT = 226, /**< alt, option */ - SDL_SCANCODE_LGUI = 227, /**< windows, command (apple), meta */ - SDL_SCANCODE_RCTRL = 228, - SDL_SCANCODE_RSHIFT = 229, - SDL_SCANCODE_RALT = 230, /**< alt gr, option */ - SDL_SCANCODE_RGUI = 231, /**< windows, command (apple), meta */ - - SDL_SCANCODE_MODE = 257, /**< I'm not sure if this is really not covered - * by any of the above, but since there's a - * special KMOD_MODE for it I'm adding it here - */ - - /* @} *//* Usage page 0x07 */ - - /** - * \name Usage page 0x0C - * - * These values are mapped from usage page 0x0C (USB consumer page). - * See https://usb.org/sites/default/files/hut1_2.pdf - * - * There are way more keys in the spec than we can represent in the - * current scancode range, so pick the ones that commonly come up in - * real world usage. - */ - /* @{ */ - - SDL_SCANCODE_AUDIONEXT = 258, - SDL_SCANCODE_AUDIOPREV = 259, - SDL_SCANCODE_AUDIOSTOP = 260, - SDL_SCANCODE_AUDIOPLAY = 261, - SDL_SCANCODE_AUDIOMUTE = 262, - SDL_SCANCODE_MEDIASELECT = 263, - SDL_SCANCODE_WWW = 264, /**< AL Internet Browser */ - SDL_SCANCODE_MAIL = 265, - SDL_SCANCODE_CALCULATOR = 266, /**< AL Calculator */ - SDL_SCANCODE_COMPUTER = 267, - SDL_SCANCODE_AC_SEARCH = 268, /**< AC Search */ - SDL_SCANCODE_AC_HOME = 269, /**< AC Home */ - SDL_SCANCODE_AC_BACK = 270, /**< AC Back */ - SDL_SCANCODE_AC_FORWARD = 271, /**< AC Forward */ - SDL_SCANCODE_AC_STOP = 272, /**< AC Stop */ - SDL_SCANCODE_AC_REFRESH = 273, /**< AC Refresh */ - SDL_SCANCODE_AC_BOOKMARKS = 274, /**< AC Bookmarks */ - - /* @} *//* Usage page 0x0C */ - - /** - * \name Walther keys - * - * These are values that Christian Walther added (for mac keyboard?). - */ - /* @{ */ - - SDL_SCANCODE_BRIGHTNESSDOWN = 275, - SDL_SCANCODE_BRIGHTNESSUP = 276, - SDL_SCANCODE_DISPLAYSWITCH = 277, /**< display mirroring/dual display - switch, video mode switch */ - SDL_SCANCODE_KBDILLUMTOGGLE = 278, - SDL_SCANCODE_KBDILLUMDOWN = 279, - SDL_SCANCODE_KBDILLUMUP = 280, - SDL_SCANCODE_EJECT = 281, - SDL_SCANCODE_SLEEP = 282, /**< SC System Sleep */ - - SDL_SCANCODE_APP1 = 283, - SDL_SCANCODE_APP2 = 284, - - /* @} *//* Walther keys */ - - /** - * \name Usage page 0x0C (additional media keys) - * - * These values are mapped from usage page 0x0C (USB consumer page). - */ - /* @{ */ - - SDL_SCANCODE_AUDIOREWIND = 285, - SDL_SCANCODE_AUDIOFASTFORWARD = 286, - - /* @} *//* Usage page 0x0C (additional media keys) */ - - /** - * \name Mobile keys - * - * These are values that are often used on mobile phones. - */ - /* @{ */ - - SDL_SCANCODE_SOFTLEFT = 287, /**< Usually situated below the display on phones and - used as a multi-function feature key for selecting - a software defined function shown on the bottom left - of the display. */ - SDL_SCANCODE_SOFTRIGHT = 288, /**< Usually situated below the display on phones and - used as a multi-function feature key for selecting - a software defined function shown on the bottom right - of the display. */ - SDL_SCANCODE_CALL = 289, /**< Used for accepting phone calls. */ - SDL_SCANCODE_ENDCALL = 290, /**< Used for rejecting phone calls. */ - - /* @} *//* Mobile keys */ - - /* Add any other keys here. */ - - SDL_NUM_SCANCODES = 512 /**< not a key, just marks the number of scancodes - for array bounds */ -} SDL_Scancode; - -#endif /* SDL_scancode_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_scancode.h.blob deleted file mode 100644 index df547ecc5111a9f68afc8d34f92961a2d30348ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38468 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h deleted file mode 100644 index 9ecce44b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h +++ /dev/null @@ -1,322 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_sensor.h - * - * Include file for SDL sensor event handling - * - */ - -#ifndef SDL_sensor_h_ -#define SDL_sensor_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -/* *INDENT-OFF* */ -extern "C" { -/* *INDENT-ON* */ -#endif - -/** - * \brief SDL_sensor.h - * - * In order to use these functions, SDL_Init() must have been called - * with the ::SDL_INIT_SENSOR flag. This causes SDL to scan the system - * for sensors, and load appropriate drivers. - */ - -struct _SDL_Sensor; -typedef struct _SDL_Sensor SDL_Sensor; - -/** - * This is a unique ID for a sensor for the time it is connected to the system, - * and is never reused for the lifetime of the application. - * - * The ID value starts at 0 and increments from there. The value -1 is an invalid ID. - */ -typedef Sint32 SDL_SensorID; - -/* The different sensors defined by SDL - * - * Additional sensors may be available, using platform dependent semantics. - * - * Hare are the additional Android sensors: - * https://developer.android.com/reference/android/hardware/SensorEvent.html#values - */ -typedef enum -{ - SDL_SENSOR_INVALID = -1, /**< Returned for an invalid sensor */ - SDL_SENSOR_UNKNOWN, /**< Unknown sensor type */ - SDL_SENSOR_ACCEL, /**< Accelerometer */ - SDL_SENSOR_GYRO, /**< Gyroscope */ - SDL_SENSOR_ACCEL_L, /**< Accelerometer for left Joy-Con controller and Wii nunchuk */ - SDL_SENSOR_GYRO_L, /**< Gyroscope for left Joy-Con controller */ - SDL_SENSOR_ACCEL_R, /**< Accelerometer for right Joy-Con controller */ - SDL_SENSOR_GYRO_R /**< Gyroscope for right Joy-Con controller */ -} SDL_SensorType; - -/** - * Accelerometer sensor - * - * The accelerometer returns the current acceleration in SI meters per - * second squared. This measurement includes the force of gravity, so - * a device at rest will have an value of SDL_STANDARD_GRAVITY away - * from the center of the earth, which is a positive Y value. - * - * values[0]: Acceleration on the x axis - * values[1]: Acceleration on the y axis - * values[2]: Acceleration on the z axis - * - * For phones held in portrait mode and game controllers held in front of you, - * the axes are defined as follows: - * -X ... +X : left ... right - * -Y ... +Y : bottom ... top - * -Z ... +Z : farther ... closer - * - * The axis data is not changed when the phone is rotated. - * - * \sa SDL_GetDisplayOrientation() - */ -#define SDL_STANDARD_GRAVITY 9.80665f - -/** - * Gyroscope sensor - * - * The gyroscope returns the current rate of rotation in radians per second. - * The rotation is positive in the counter-clockwise direction. That is, - * an observer looking from a positive location on one of the axes would - * see positive rotation on that axis when it appeared to be rotating - * counter-clockwise. - * - * values[0]: Angular speed around the x axis (pitch) - * values[1]: Angular speed around the y axis (yaw) - * values[2]: Angular speed around the z axis (roll) - * - * For phones held in portrait mode and game controllers held in front of you, - * the axes are defined as follows: - * -X ... +X : left ... right - * -Y ... +Y : bottom ... top - * -Z ... +Z : farther ... closer - * - * The axis data is not changed when the phone or controller is rotated. - * - * \sa SDL_GetDisplayOrientation() - */ - -/* Function prototypes */ - -/** - * Locking for multi-threaded access to the sensor API - * - * If you are using the sensor API or handling events from multiple threads - * you should use these locking functions to protect access to the sensors. - * - * In particular, you are guaranteed that the sensor list won't change, so the - * API functions that take a sensor index will be valid, and sensor events - * will not be delivered. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC void SDLCALL SDL_LockSensors(void); -extern DECLSPEC void SDLCALL SDL_UnlockSensors(void); - -/** - * Count the number of sensors attached to the system right now. - * - * \returns the number of sensors detected. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC int SDLCALL SDL_NumSensors(void); - -/** - * Get the implementation dependent name of a sensor. - * - * \param device_index The sensor to obtain name from - * \returns the sensor name, or NULL if `device_index` is out of range. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC const char *SDLCALL SDL_SensorGetDeviceName(int device_index); - -/** - * Get the type of a sensor. - * - * \param device_index The sensor to get the type from - * \returns the SDL_SensorType, or `SDL_SENSOR_INVALID` if `device_index` is - * out of range. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_SensorType SDLCALL SDL_SensorGetDeviceType(int device_index); - -/** - * Get the platform dependent type of a sensor. - * - * \param device_index The sensor to check - * \returns the sensor platform dependent type, or -1 if `device_index` is out - * of range. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC int SDLCALL SDL_SensorGetDeviceNonPortableType(int device_index); - -/** - * Get the instance ID of a sensor. - * - * \param device_index The sensor to get instance id from - * \returns the sensor instance ID, or -1 if `device_index` is out of range. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_SensorID SDLCALL SDL_SensorGetDeviceInstanceID(int device_index); - -/** - * Open a sensor for use. - * - * \param device_index The sensor to open - * \returns an SDL_Sensor sensor object, or NULL if an error occurred. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_Sensor *SDLCALL SDL_SensorOpen(int device_index); - -/** - * Return the SDL_Sensor associated with an instance id. - * - * \param instance_id The sensor from instance id - * \returns an SDL_Sensor object. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_Sensor *SDLCALL SDL_SensorFromInstanceID(SDL_SensorID instance_id); - -/** - * Get the implementation dependent name of a sensor - * - * \param sensor The SDL_Sensor object - * \returns the sensor name, or NULL if `sensor` is NULL. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC const char *SDLCALL SDL_SensorGetName(SDL_Sensor *sensor); - -/** - * Get the type of a sensor. - * - * \param sensor The SDL_Sensor object to inspect - * \returns the SDL_SensorType type, or `SDL_SENSOR_INVALID` if `sensor` is - * NULL. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_SensorType SDLCALL SDL_SensorGetType(SDL_Sensor *sensor); - -/** - * Get the platform dependent type of a sensor. - * - * \param sensor The SDL_Sensor object to inspect - * \returns the sensor platform dependent type, or -1 if `sensor` is NULL. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC int SDLCALL SDL_SensorGetNonPortableType(SDL_Sensor *sensor); - -/** - * Get the instance ID of a sensor. - * - * \param sensor The SDL_Sensor object to inspect - * \returns the sensor instance ID, or -1 if `sensor` is NULL. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_SensorID SDLCALL SDL_SensorGetInstanceID(SDL_Sensor *sensor); - -/** - * Get the current state of an opened sensor. - * - * The number of values and interpretation of the data is sensor dependent. - * - * \param sensor The SDL_Sensor object to query - * \param data A pointer filled with the current sensor state - * \param num_values The number of values to write to data - * \returns 0 or -1 if an error occurred. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC int SDLCALL SDL_SensorGetData(SDL_Sensor *sensor, float *data, int num_values); - -/** - * Get the current state of an opened sensor with the timestamp of the last - * update. - * - * The number of values and interpretation of the data is sensor dependent. - * - * \param sensor The SDL_Sensor object to query - * \param timestamp A pointer filled with the timestamp in microseconds of the - * current sensor reading if available, or 0 if not - * \param data A pointer filled with the current sensor state - * \param num_values The number of values to write to data - * \returns 0 or -1 if an error occurred. - * - * \since This function is available since SDL 2.26.0. - */ -extern DECLSPEC int SDLCALL SDL_SensorGetDataWithTimestamp(SDL_Sensor *sensor, Uint64 *timestamp, float *data, int num_values); - -/** - * Close a sensor previously opened with SDL_SensorOpen(). - * - * \param sensor The SDL_Sensor object to close - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC void SDLCALL SDL_SensorClose(SDL_Sensor *sensor); - -/** - * Update the current state of the open sensors. - * - * This is called automatically by the event loop if sensor events are - * enabled. - * - * This needs to be called from the thread that initialized the sensor - * subsystem. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC void SDLCALL SDL_SensorUpdate(void); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -/* *INDENT-OFF* */ -} -/* *INDENT-ON* */ -#endif -#include "close_code.h" - -#endif /* SDL_sensor_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_sensor.h.blob deleted file mode 100644 index ad971060adb7967e2fe0f97bd1dd94791af37a73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22017 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h deleted file mode 100644 index f66babc0..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h +++ /dev/null @@ -1,155 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_shape_h_ -#define SDL_shape_h_ - -#include "SDL_stdinc.h" -#include "SDL_pixels.h" -#include "SDL_rect.h" -#include "SDL_surface.h" -#include "SDL_video.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** \file SDL_shape.h - * - * Header file for the shaped window API. - */ - -#define SDL_NONSHAPEABLE_WINDOW -1 -#define SDL_INVALID_SHAPE_ARGUMENT -2 -#define SDL_WINDOW_LACKS_SHAPE -3 - -/** - * Create a window that can be shaped with the specified position, dimensions, - * and flags. - * - * \param title The title of the window, in UTF-8 encoding. - * \param x The x position of the window, ::SDL_WINDOWPOS_CENTERED, or - * ::SDL_WINDOWPOS_UNDEFINED. - * \param y The y position of the window, ::SDL_WINDOWPOS_CENTERED, or - * ::SDL_WINDOWPOS_UNDEFINED. - * \param w The width of the window. - * \param h The height of the window. - * \param flags The flags for the window, a mask of SDL_WINDOW_BORDERLESS with - * any of the following: ::SDL_WINDOW_OPENGL, - * ::SDL_WINDOW_INPUT_GRABBED, ::SDL_WINDOW_HIDDEN, - * ::SDL_WINDOW_RESIZABLE, ::SDL_WINDOW_MAXIMIZED, - * ::SDL_WINDOW_MINIMIZED, ::SDL_WINDOW_BORDERLESS is always set, - * and ::SDL_WINDOW_FULLSCREEN is always unset. - * \return the window created, or NULL if window creation failed. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_DestroyWindow - */ -extern DECLSPEC SDL_Window * SDLCALL SDL_CreateShapedWindow(const char *title,unsigned int x,unsigned int y,unsigned int w,unsigned int h,Uint32 flags); - -/** - * Return whether the given window is a shaped window. - * - * \param window The window to query for being shaped. - * \return SDL_TRUE if the window is a window that can be shaped, SDL_FALSE if - * the window is unshaped or NULL. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateShapedWindow - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsShapedWindow(const SDL_Window *window); - -/** \brief An enum denoting the specific type of contents present in an SDL_WindowShapeParams union. */ -typedef enum { - /** \brief The default mode, a binarized alpha cutoff of 1. */ - ShapeModeDefault, - /** \brief A binarized alpha cutoff with a given integer value. */ - ShapeModeBinarizeAlpha, - /** \brief A binarized alpha cutoff with a given integer value, but with the opposite comparison. */ - ShapeModeReverseBinarizeAlpha, - /** \brief A color key is applied. */ - ShapeModeColorKey -} WindowShapeMode; - -#define SDL_SHAPEMODEALPHA(mode) (mode == ShapeModeDefault || mode == ShapeModeBinarizeAlpha || mode == ShapeModeReverseBinarizeAlpha) - -/** \brief A union containing parameters for shaped windows. */ -typedef union { - /** \brief A cutoff alpha value for binarization of the window shape's alpha channel. */ - Uint8 binarizationCutoff; - SDL_Color colorKey; -} SDL_WindowShapeParams; - -/** \brief A struct that tags the SDL_WindowShapeParams union with an enum describing the type of its contents. */ -typedef struct SDL_WindowShapeMode { - /** \brief The mode of these window-shape parameters. */ - WindowShapeMode mode; - /** \brief Window-shape parameters. */ - SDL_WindowShapeParams parameters; -} SDL_WindowShapeMode; - -/** - * Set the shape and parameters of a shaped window. - * - * \param window The shaped window whose parameters should be set. - * \param shape A surface encoding the desired shape for the window. - * \param shape_mode The parameters to set for the shaped window. - * \return 0 on success, SDL_INVALID_SHAPE_ARGUMENT on an invalid shape - * argument, or SDL_NONSHAPEABLE_WINDOW if the SDL_Window given does - * not reference a valid shaped window. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WindowShapeMode - * \sa SDL_GetShapedWindowMode - */ -extern DECLSPEC int SDLCALL SDL_SetWindowShape(SDL_Window *window,SDL_Surface *shape,SDL_WindowShapeMode *shape_mode); - -/** - * Get the shape parameters of a shaped window. - * - * \param window The shaped window whose parameters should be retrieved. - * \param shape_mode An empty shape-mode structure to fill, or NULL to check - * whether the window has a shape. - * \return 0 if the window has a shape and, provided shape_mode was not NULL, - * shape_mode has been filled with the mode data, - * SDL_NONSHAPEABLE_WINDOW if the SDL_Window given is not a shaped - * window, or SDL_WINDOW_LACKS_SHAPE if the SDL_Window given is a - * shapeable window currently lacking a shape. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_WindowShapeMode - * \sa SDL_SetWindowShape - */ -extern DECLSPEC int SDLCALL SDL_GetShapedWindowMode(SDL_Window *window,SDL_WindowShapeMode *shape_mode); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_shape_h_ */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_shape.h.blob deleted file mode 100644 index 4470a1b628ebdac5271dad40c4cf555814e107a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19648 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 O*h{rYMz7vjkN*QgPNW+E diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h deleted file mode 100644 index 182ed86e..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h +++ /dev/null @@ -1,838 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_stdinc.h - * - * This is a general header that includes C language support. - */ - -#ifndef SDL_stdinc_h_ -#define SDL_stdinc_h_ - -#include "SDL_config.h" - -#ifdef HAVE_SYS_TYPES_H -#include <sys/types.h> -#endif -#ifdef HAVE_STDIO_H -#include <stdio.h> -#endif -#if defined(STDC_HEADERS) -# include <stdlib.h> -# include <stddef.h> -# include <stdarg.h> -#else -# if defined(HAVE_STDLIB_H) -# include <stdlib.h> -# elif defined(HAVE_MALLOC_H) -# include <malloc.h> -# endif -# if defined(HAVE_STDDEF_H) -# include <stddef.h> -# endif -# if defined(HAVE_STDARG_H) -# include <stdarg.h> -# endif -#endif -#ifdef HAVE_STRING_H -# if !defined(STDC_HEADERS) && defined(HAVE_MEMORY_H) -# include <memory.h> -# endif -# include <string.h> -#endif -#ifdef HAVE_STRINGS_H -# include <strings.h> -#endif -#ifdef HAVE_WCHAR_H -# include <wchar.h> -#endif -#if defined(HAVE_INTTYPES_H) -# include <inttypes.h> -#elif defined(HAVE_STDINT_H) -# include <stdint.h> -#endif -#ifdef HAVE_CTYPE_H -# include <ctype.h> -#endif -#ifdef HAVE_MATH_H -# if defined(_MSC_VER) -/* Defining _USE_MATH_DEFINES is required to get M_PI to be defined on - Visual Studio. See http://msdn.microsoft.com/en-us/library/4hwaceh6.aspx - for more information. -*/ -# ifndef _USE_MATH_DEFINES -# define _USE_MATH_DEFINES -# endif -# endif -# include <math.h> -#endif -#ifdef HAVE_FLOAT_H -# include <float.h> -#endif -#if defined(HAVE_ALLOCA) && !defined(alloca) -# if defined(HAVE_ALLOCA_H) -# include <alloca.h> -# elif defined(__GNUC__) -# define alloca __builtin_alloca -# elif defined(_MSC_VER) -# include <malloc.h> -# define alloca _alloca -# elif defined(__WATCOMC__) -# include <malloc.h> -# elif defined(__BORLANDC__) -# include <malloc.h> -# elif defined(__DMC__) -# include <stdlib.h> -# elif defined(__AIX__) -#pragma alloca -# elif defined(__MRC__) -void *alloca(unsigned); -# else -char *alloca(); -# endif -#endif - -#ifdef SIZE_MAX -# define SDL_SIZE_MAX SIZE_MAX -#else -# define SDL_SIZE_MAX ((size_t) -1) -#endif - -/** - * Check if the compiler supports a given builtin. - * Supported by virtually all clang versions and recent gcc. Use this - * instead of checking the clang version if possible. - */ -#ifdef __has_builtin -#define _SDL_HAS_BUILTIN(x) __has_builtin(x) -#else -#define _SDL_HAS_BUILTIN(x) 0 -#endif - -/** - * The number of elements in an array. - */ -#define SDL_arraysize(array) (sizeof(array)/sizeof(array[0])) -#define SDL_TABLESIZE(table) SDL_arraysize(table) - -/** - * Macro useful for building other macros with strings in them - * - * e.g. #define LOG_ERROR(X) OutputDebugString(SDL_STRINGIFY_ARG(__FUNCTION__) ": " X "\n") - */ -#define SDL_STRINGIFY_ARG(arg) #arg - -/** - * \name Cast operators - * - * Use proper C++ casts when compiled as C++ to be compatible with the option - * -Wold-style-cast of GCC (and -Werror=old-style-cast in GCC 4.2 and above). - */ -/* @{ */ -#ifdef __cplusplus -#define SDL_reinterpret_cast(type, expression) reinterpret_cast<type>(expression) -#define SDL_static_cast(type, expression) static_cast<type>(expression) -#define SDL_const_cast(type, expression) const_cast<type>(expression) -#else -#define SDL_reinterpret_cast(type, expression) ((type)(expression)) -#define SDL_static_cast(type, expression) ((type)(expression)) -#define SDL_const_cast(type, expression) ((type)(expression)) -#endif -/* @} *//* Cast operators */ - -/* Define a four character code as a Uint32 */ -#define SDL_FOURCC(A, B, C, D) \ - ((SDL_static_cast(Uint32, SDL_static_cast(Uint8, (A))) << 0) | \ - (SDL_static_cast(Uint32, SDL_static_cast(Uint8, (B))) << 8) | \ - (SDL_static_cast(Uint32, SDL_static_cast(Uint8, (C))) << 16) | \ - (SDL_static_cast(Uint32, SDL_static_cast(Uint8, (D))) << 24)) - -/** - * \name Basic data types - */ -/* @{ */ - -#ifdef __CC_ARM -/* ARM's compiler throws warnings if we use an enum: like "SDL_bool x = a < b;" */ -#define SDL_FALSE 0 -#define SDL_TRUE 1 -typedef int SDL_bool; -#else -typedef enum -{ - SDL_FALSE = 0, - SDL_TRUE = 1 -} SDL_bool; -#endif - -/** - * \brief A signed 8-bit integer type. - */ -#define SDL_MAX_SINT8 ((Sint8)0x7F) /* 127 */ -#define SDL_MIN_SINT8 ((Sint8)(~0x7F)) /* -128 */ -typedef int8_t Sint8; -/** - * \brief An unsigned 8-bit integer type. - */ -#define SDL_MAX_UINT8 ((Uint8)0xFF) /* 255 */ -#define SDL_MIN_UINT8 ((Uint8)0x00) /* 0 */ -typedef uint8_t Uint8; -/** - * \brief A signed 16-bit integer type. - */ -#define SDL_MAX_SINT16 ((Sint16)0x7FFF) /* 32767 */ -#define SDL_MIN_SINT16 ((Sint16)(~0x7FFF)) /* -32768 */ -typedef int16_t Sint16; -/** - * \brief An unsigned 16-bit integer type. - */ -#define SDL_MAX_UINT16 ((Uint16)0xFFFF) /* 65535 */ -#define SDL_MIN_UINT16 ((Uint16)0x0000) /* 0 */ -typedef uint16_t Uint16; -/** - * \brief A signed 32-bit integer type. - */ -#define SDL_MAX_SINT32 ((Sint32)0x7FFFFFFF) /* 2147483647 */ -#define SDL_MIN_SINT32 ((Sint32)(~0x7FFFFFFF)) /* -2147483648 */ -typedef int32_t Sint32; -/** - * \brief An unsigned 32-bit integer type. - */ -#define SDL_MAX_UINT32 ((Uint32)0xFFFFFFFFu) /* 4294967295 */ -#define SDL_MIN_UINT32 ((Uint32)0x00000000) /* 0 */ -typedef uint32_t Uint32; - -/** - * \brief A signed 64-bit integer type. - */ -#define SDL_MAX_SINT64 ((Sint64)0x7FFFFFFFFFFFFFFFll) /* 9223372036854775807 */ -#define SDL_MIN_SINT64 ((Sint64)(~0x7FFFFFFFFFFFFFFFll)) /* -9223372036854775808 */ -typedef int64_t Sint64; -/** - * \brief An unsigned 64-bit integer type. - */ -#define SDL_MAX_UINT64 ((Uint64)0xFFFFFFFFFFFFFFFFull) /* 18446744073709551615 */ -#define SDL_MIN_UINT64 ((Uint64)(0x0000000000000000ull)) /* 0 */ -typedef uint64_t Uint64; - -/* @} *//* Basic data types */ - -/** - * \name Floating-point constants - */ -/* @{ */ - -#ifdef FLT_EPSILON -#define SDL_FLT_EPSILON FLT_EPSILON -#else -#define SDL_FLT_EPSILON 1.1920928955078125e-07F /* 0x0.000002p0 */ -#endif - -/* @} *//* Floating-point constants */ - -/* Make sure we have macros for printing width-based integers. - * <stdint.h> should define these but this is not true all platforms. - * (for example win32) */ -#ifndef SDL_PRIs64 -#ifdef PRIs64 -#define SDL_PRIs64 PRIs64 -#elif defined(__WIN32__) || defined(__GDK__) -#define SDL_PRIs64 "I64d" -#elif defined(__LINUX__) && defined(__LP64__) -#define SDL_PRIs64 "ld" -#else -#define SDL_PRIs64 "lld" -#endif -#endif -#ifndef SDL_PRIu64 -#ifdef PRIu64 -#define SDL_PRIu64 PRIu64 -#elif defined(__WIN32__) || defined(__GDK__) -#define SDL_PRIu64 "I64u" -#elif defined(__LINUX__) && defined(__LP64__) -#define SDL_PRIu64 "lu" -#else -#define SDL_PRIu64 "llu" -#endif -#endif -#ifndef SDL_PRIx64 -#ifdef PRIx64 -#define SDL_PRIx64 PRIx64 -#elif defined(__WIN32__) || defined(__GDK__) -#define SDL_PRIx64 "I64x" -#elif defined(__LINUX__) && defined(__LP64__) -#define SDL_PRIx64 "lx" -#else -#define SDL_PRIx64 "llx" -#endif -#endif -#ifndef SDL_PRIX64 -#ifdef PRIX64 -#define SDL_PRIX64 PRIX64 -#elif defined(__WIN32__) || defined(__GDK__) -#define SDL_PRIX64 "I64X" -#elif defined(__LINUX__) && defined(__LP64__) -#define SDL_PRIX64 "lX" -#else -#define SDL_PRIX64 "llX" -#endif -#endif -#ifndef SDL_PRIs32 -#ifdef PRId32 -#define SDL_PRIs32 PRId32 -#else -#define SDL_PRIs32 "d" -#endif -#endif -#ifndef SDL_PRIu32 -#ifdef PRIu32 -#define SDL_PRIu32 PRIu32 -#else -#define SDL_PRIu32 "u" -#endif -#endif -#ifndef SDL_PRIx32 -#ifdef PRIx32 -#define SDL_PRIx32 PRIx32 -#else -#define SDL_PRIx32 "x" -#endif -#endif -#ifndef SDL_PRIX32 -#ifdef PRIX32 -#define SDL_PRIX32 PRIX32 -#else -#define SDL_PRIX32 "X" -#endif -#endif - -/* Annotations to help code analysis tools */ -#ifdef SDL_DISABLE_ANALYZE_MACROS -#define SDL_IN_BYTECAP(x) -#define SDL_INOUT_Z_CAP(x) -#define SDL_OUT_Z_CAP(x) -#define SDL_OUT_CAP(x) -#define SDL_OUT_BYTECAP(x) -#define SDL_OUT_Z_BYTECAP(x) -#define SDL_PRINTF_FORMAT_STRING -#define SDL_SCANF_FORMAT_STRING -#define SDL_PRINTF_VARARG_FUNC( fmtargnumber ) -#define SDL_SCANF_VARARG_FUNC( fmtargnumber ) -#else -#if defined(_MSC_VER) && (_MSC_VER >= 1600) /* VS 2010 and above */ -#include <sal.h> - -#define SDL_IN_BYTECAP(x) _In_bytecount_(x) -#define SDL_INOUT_Z_CAP(x) _Inout_z_cap_(x) -#define SDL_OUT_Z_CAP(x) _Out_z_cap_(x) -#define SDL_OUT_CAP(x) _Out_cap_(x) -#define SDL_OUT_BYTECAP(x) _Out_bytecap_(x) -#define SDL_OUT_Z_BYTECAP(x) _Out_z_bytecap_(x) - -#define SDL_PRINTF_FORMAT_STRING _Printf_format_string_ -#define SDL_SCANF_FORMAT_STRING _Scanf_format_string_impl_ -#else -#define SDL_IN_BYTECAP(x) -#define SDL_INOUT_Z_CAP(x) -#define SDL_OUT_Z_CAP(x) -#define SDL_OUT_CAP(x) -#define SDL_OUT_BYTECAP(x) -#define SDL_OUT_Z_BYTECAP(x) -#define SDL_PRINTF_FORMAT_STRING -#define SDL_SCANF_FORMAT_STRING -#endif -#if defined(__GNUC__) -#define SDL_PRINTF_VARARG_FUNC( fmtargnumber ) __attribute__ (( format( __printf__, fmtargnumber, fmtargnumber+1 ))) -#define SDL_SCANF_VARARG_FUNC( fmtargnumber ) __attribute__ (( format( __scanf__, fmtargnumber, fmtargnumber+1 ))) -#else -#define SDL_PRINTF_VARARG_FUNC( fmtargnumber ) -#define SDL_SCANF_VARARG_FUNC( fmtargnumber ) -#endif -#endif /* SDL_DISABLE_ANALYZE_MACROS */ - -#ifndef SDL_COMPILE_TIME_ASSERT -#if defined(__cplusplus) -#if (__cplusplus >= 201103L) -#define SDL_COMPILE_TIME_ASSERT(name, x) static_assert(x, #x) -#endif -#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L) -#define SDL_COMPILE_TIME_ASSERT(name, x) _Static_assert(x, #x) -#endif -#endif /* !SDL_COMPILE_TIME_ASSERT */ - -#ifndef SDL_COMPILE_TIME_ASSERT -/* universal, but may trigger -Wunused-local-typedefs */ -#define SDL_COMPILE_TIME_ASSERT(name, x) \ - typedef int SDL_compile_time_assert_ ## name[(x) * 2 - 1] -#endif - -/** \cond */ -#ifndef DOXYGEN_SHOULD_IGNORE_THIS -SDL_COMPILE_TIME_ASSERT(uint8, sizeof(Uint8) == 1); -SDL_COMPILE_TIME_ASSERT(sint8, sizeof(Sint8) == 1); -SDL_COMPILE_TIME_ASSERT(uint16, sizeof(Uint16) == 2); -SDL_COMPILE_TIME_ASSERT(sint16, sizeof(Sint16) == 2); -SDL_COMPILE_TIME_ASSERT(uint32, sizeof(Uint32) == 4); -SDL_COMPILE_TIME_ASSERT(sint32, sizeof(Sint32) == 4); -SDL_COMPILE_TIME_ASSERT(uint64, sizeof(Uint64) == 8); -SDL_COMPILE_TIME_ASSERT(sint64, sizeof(Sint64) == 8); -#endif /* DOXYGEN_SHOULD_IGNORE_THIS */ -/** \endcond */ - -/* Check to make sure enums are the size of ints, for structure packing. - For both Watcom C/C++ and Borland C/C++ the compiler option that makes - enums having the size of an int must be enabled. - This is "-b" for Borland C/C++ and "-ei" for Watcom C/C++ (v11). -*/ - -/** \cond */ -#ifndef DOXYGEN_SHOULD_IGNORE_THIS -#if !defined(__ANDROID__) && !defined(__VITA__) && !defined(__3DS__) - /* TODO: include/SDL_stdinc.h:174: error: size of array 'SDL_dummy_enum' is negative */ -typedef enum -{ - DUMMY_ENUM_VALUE -} SDL_DUMMY_ENUM; - -SDL_COMPILE_TIME_ASSERT(enum, sizeof(SDL_DUMMY_ENUM) == sizeof(int)); -#endif -#endif /* DOXYGEN_SHOULD_IGNORE_THIS */ -/** \endcond */ - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef HAVE_ALLOCA -#define SDL_stack_alloc(type, count) (type*)alloca(sizeof(type)*(count)) -#define SDL_stack_free(data) -#else -#define SDL_stack_alloc(type, count) (type*)SDL_malloc(sizeof(type)*(count)) -#define SDL_stack_free(data) SDL_free(data) -#endif - -extern DECLSPEC void *SDLCALL SDL_malloc(size_t size); -extern DECLSPEC void *SDLCALL SDL_calloc(size_t nmemb, size_t size); -extern DECLSPEC void *SDLCALL SDL_realloc(void *mem, size_t size); -extern DECLSPEC void SDLCALL SDL_free(void *mem); - -typedef void *(SDLCALL *SDL_malloc_func)(size_t size); -typedef void *(SDLCALL *SDL_calloc_func)(size_t nmemb, size_t size); -typedef void *(SDLCALL *SDL_realloc_func)(void *mem, size_t size); -typedef void (SDLCALL *SDL_free_func)(void *mem); - -/** - * Get the original set of SDL memory functions - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC void SDLCALL SDL_GetOriginalMemoryFunctions(SDL_malloc_func *malloc_func, - SDL_calloc_func *calloc_func, - SDL_realloc_func *realloc_func, - SDL_free_func *free_func); - -/** - * Get the current set of SDL memory functions - * - * \since This function is available since SDL 2.0.7. - */ -extern DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_func, - SDL_calloc_func *calloc_func, - SDL_realloc_func *realloc_func, - SDL_free_func *free_func); - -/** - * Replace SDL's memory allocation functions with a custom set - * - * \since This function is available since SDL 2.0.7. - */ -extern DECLSPEC int SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, - SDL_calloc_func calloc_func, - SDL_realloc_func realloc_func, - SDL_free_func free_func); - -/** - * Get the number of outstanding (unfreed) allocations - * - * \since This function is available since SDL 2.0.7. - */ -extern DECLSPEC int SDLCALL SDL_GetNumAllocations(void); - -extern DECLSPEC char *SDLCALL SDL_getenv(const char *name); -extern DECLSPEC int SDLCALL SDL_setenv(const char *name, const char *value, int overwrite); - -extern DECLSPEC void SDLCALL SDL_qsort(void *base, size_t nmemb, size_t size, int (SDLCALL *compare) (const void *, const void *)); -extern DECLSPEC void * SDLCALL SDL_bsearch(const void *key, const void *base, size_t nmemb, size_t size, int (SDLCALL *compare) (const void *, const void *)); - -extern DECLSPEC int SDLCALL SDL_abs(int x); - -/* NOTE: these double-evaluate their arguments, so you should never have side effects in the parameters */ -#define SDL_min(x, y) (((x) < (y)) ? (x) : (y)) -#define SDL_max(x, y) (((x) > (y)) ? (x) : (y)) -#define SDL_clamp(x, a, b) (((x) < (a)) ? (a) : (((x) > (b)) ? (b) : (x))) - -extern DECLSPEC int SDLCALL SDL_isalpha(int x); -extern DECLSPEC int SDLCALL SDL_isalnum(int x); -extern DECLSPEC int SDLCALL SDL_isblank(int x); -extern DECLSPEC int SDLCALL SDL_iscntrl(int x); -extern DECLSPEC int SDLCALL SDL_isdigit(int x); -extern DECLSPEC int SDLCALL SDL_isxdigit(int x); -extern DECLSPEC int SDLCALL SDL_ispunct(int x); -extern DECLSPEC int SDLCALL SDL_isspace(int x); -extern DECLSPEC int SDLCALL SDL_isupper(int x); -extern DECLSPEC int SDLCALL SDL_islower(int x); -extern DECLSPEC int SDLCALL SDL_isprint(int x); -extern DECLSPEC int SDLCALL SDL_isgraph(int x); -extern DECLSPEC int SDLCALL SDL_toupper(int x); -extern DECLSPEC int SDLCALL SDL_tolower(int x); - -extern DECLSPEC Uint16 SDLCALL SDL_crc16(Uint16 crc, const void *data, size_t len); -extern DECLSPEC Uint32 SDLCALL SDL_crc32(Uint32 crc, const void *data, size_t len); - -extern DECLSPEC void *SDLCALL SDL_memset(SDL_OUT_BYTECAP(len) void *dst, int c, size_t len); - -#define SDL_zero(x) SDL_memset(&(x), 0, sizeof((x))) -#define SDL_zerop(x) SDL_memset((x), 0, sizeof(*(x))) -#define SDL_zeroa(x) SDL_memset((x), 0, sizeof((x))) - -#define SDL_copyp(dst, src) \ - { SDL_COMPILE_TIME_ASSERT(SDL_copyp, sizeof (*(dst)) == sizeof (*(src))); } \ - SDL_memcpy((dst), (src), sizeof (*(src))) - - -/* Note that memset() is a byte assignment and this is a 32-bit assignment, so they're not directly equivalent. */ -SDL_FORCE_INLINE void SDL_memset4(void *dst, Uint32 val, size_t dwords) -{ -#if defined(__GNUC__) && defined(__i386__) - int u0, u1, u2; - __asm__ __volatile__ ( - "cld \n\t" - "rep ; stosl \n\t" - : "=&D" (u0), "=&a" (u1), "=&c" (u2) - : "0" (dst), "1" (val), "2" (SDL_static_cast(Uint32, dwords)) - : "memory" - ); -#else - size_t _n = (dwords + 3) / 4; - Uint32 *_p = SDL_static_cast(Uint32 *, dst); - Uint32 _val = (val); - if (dwords == 0) { - return; - } - switch (dwords % 4) { - case 0: do { *_p++ = _val; SDL_FALLTHROUGH; - case 3: *_p++ = _val; SDL_FALLTHROUGH; - case 2: *_p++ = _val; SDL_FALLTHROUGH; - case 1: *_p++ = _val; - } while ( --_n ); - } -#endif -} - -extern DECLSPEC void *SDLCALL SDL_memcpy(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len); - -extern DECLSPEC void *SDLCALL SDL_memmove(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len); -extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2, size_t len); - -extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr); -extern DECLSPEC size_t SDLCALL SDL_wcslcpy(SDL_OUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); -extern DECLSPEC size_t SDLCALL SDL_wcslcat(SDL_INOUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); -extern DECLSPEC wchar_t *SDLCALL SDL_wcsdup(const wchar_t *wstr); -extern DECLSPEC wchar_t *SDLCALL SDL_wcsstr(const wchar_t *haystack, const wchar_t *needle); - -extern DECLSPEC int SDLCALL SDL_wcscmp(const wchar_t *str1, const wchar_t *str2); -extern DECLSPEC int SDLCALL SDL_wcsncmp(const wchar_t *str1, const wchar_t *str2, size_t maxlen); -extern DECLSPEC int SDLCALL SDL_wcscasecmp(const wchar_t *str1, const wchar_t *str2); -extern DECLSPEC int SDLCALL SDL_wcsncasecmp(const wchar_t *str1, const wchar_t *str2, size_t len); - -extern DECLSPEC size_t SDLCALL SDL_strlen(const char *str); -extern DECLSPEC size_t SDLCALL SDL_strlcpy(SDL_OUT_Z_CAP(maxlen) char *dst, const char *src, size_t maxlen); -extern DECLSPEC size_t SDLCALL SDL_utf8strlcpy(SDL_OUT_Z_CAP(dst_bytes) char *dst, const char *src, size_t dst_bytes); -extern DECLSPEC size_t SDLCALL SDL_strlcat(SDL_INOUT_Z_CAP(maxlen) char *dst, const char *src, size_t maxlen); -extern DECLSPEC char *SDLCALL SDL_strdup(const char *str); -extern DECLSPEC char *SDLCALL SDL_strrev(char *str); -extern DECLSPEC char *SDLCALL SDL_strupr(char *str); -extern DECLSPEC char *SDLCALL SDL_strlwr(char *str); -extern DECLSPEC char *SDLCALL SDL_strchr(const char *str, int c); -extern DECLSPEC char *SDLCALL SDL_strrchr(const char *str, int c); -extern DECLSPEC char *SDLCALL SDL_strstr(const char *haystack, const char *needle); -extern DECLSPEC char *SDLCALL SDL_strcasestr(const char *haystack, const char *needle); -extern DECLSPEC char *SDLCALL SDL_strtokr(char *s1, const char *s2, char **saveptr); -extern DECLSPEC size_t SDLCALL SDL_utf8strlen(const char *str); -extern DECLSPEC size_t SDLCALL SDL_utf8strnlen(const char *str, size_t bytes); - -extern DECLSPEC char *SDLCALL SDL_itoa(int value, char *str, int radix); -extern DECLSPEC char *SDLCALL SDL_uitoa(unsigned int value, char *str, int radix); -extern DECLSPEC char *SDLCALL SDL_ltoa(long value, char *str, int radix); -extern DECLSPEC char *SDLCALL SDL_ultoa(unsigned long value, char *str, int radix); -extern DECLSPEC char *SDLCALL SDL_lltoa(Sint64 value, char *str, int radix); -extern DECLSPEC char *SDLCALL SDL_ulltoa(Uint64 value, char *str, int radix); - -extern DECLSPEC int SDLCALL SDL_atoi(const char *str); -extern DECLSPEC double SDLCALL SDL_atof(const char *str); -extern DECLSPEC long SDLCALL SDL_strtol(const char *str, char **endp, int base); -extern DECLSPEC unsigned long SDLCALL SDL_strtoul(const char *str, char **endp, int base); -extern DECLSPEC Sint64 SDLCALL SDL_strtoll(const char *str, char **endp, int base); -extern DECLSPEC Uint64 SDLCALL SDL_strtoull(const char *str, char **endp, int base); -extern DECLSPEC double SDLCALL SDL_strtod(const char *str, char **endp); - -extern DECLSPEC int SDLCALL SDL_strcmp(const char *str1, const char *str2); -extern DECLSPEC int SDLCALL SDL_strncmp(const char *str1, const char *str2, size_t maxlen); -extern DECLSPEC int SDLCALL SDL_strcasecmp(const char *str1, const char *str2); -extern DECLSPEC int SDLCALL SDL_strncasecmp(const char *str1, const char *str2, size_t len); - -extern DECLSPEC int SDLCALL SDL_sscanf(const char *text, SDL_SCANF_FORMAT_STRING const char *fmt, ...) SDL_SCANF_VARARG_FUNC(2); -extern DECLSPEC int SDLCALL SDL_vsscanf(const char *text, const char *fmt, va_list ap); -extern DECLSPEC int SDLCALL SDL_snprintf(SDL_OUT_Z_CAP(maxlen) char *text, size_t maxlen, SDL_PRINTF_FORMAT_STRING const char *fmt, ... ) SDL_PRINTF_VARARG_FUNC(3); -extern DECLSPEC int SDLCALL SDL_vsnprintf(SDL_OUT_Z_CAP(maxlen) char *text, size_t maxlen, const char *fmt, va_list ap); -extern DECLSPEC int SDLCALL SDL_asprintf(char **strp, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2); -extern DECLSPEC int SDLCALL SDL_vasprintf(char **strp, const char *fmt, va_list ap); - -#ifndef HAVE_M_PI -#ifndef M_PI -#define M_PI 3.14159265358979323846264338327950288 /**< pi */ -#endif -#endif - -/** - * Use this function to compute arc cosine of `x`. - * - * The definition of `y = acos(x)` is `x = cos(y)`. - * - * Domain: `-1 <= x <= 1` - * - * Range: `0 <= y <= Pi` - * - * \param x floating point value, in radians. - * \returns arc cosine of `x`. - * - * \since This function is available since SDL 2.0.2. - */ -extern DECLSPEC double SDLCALL SDL_acos(double x); -extern DECLSPEC float SDLCALL SDL_acosf(float x); -extern DECLSPEC double SDLCALL SDL_asin(double x); -extern DECLSPEC float SDLCALL SDL_asinf(float x); -extern DECLSPEC double SDLCALL SDL_atan(double x); -extern DECLSPEC float SDLCALL SDL_atanf(float x); -extern DECLSPEC double SDLCALL SDL_atan2(double y, double x); -extern DECLSPEC float SDLCALL SDL_atan2f(float y, float x); -extern DECLSPEC double SDLCALL SDL_ceil(double x); -extern DECLSPEC float SDLCALL SDL_ceilf(float x); -extern DECLSPEC double SDLCALL SDL_copysign(double x, double y); -extern DECLSPEC float SDLCALL SDL_copysignf(float x, float y); -extern DECLSPEC double SDLCALL SDL_cos(double x); -extern DECLSPEC float SDLCALL SDL_cosf(float x); -extern DECLSPEC double SDLCALL SDL_exp(double x); -extern DECLSPEC float SDLCALL SDL_expf(float x); -extern DECLSPEC double SDLCALL SDL_fabs(double x); -extern DECLSPEC float SDLCALL SDL_fabsf(float x); -extern DECLSPEC double SDLCALL SDL_floor(double x); -extern DECLSPEC float SDLCALL SDL_floorf(float x); -extern DECLSPEC double SDLCALL SDL_trunc(double x); -extern DECLSPEC float SDLCALL SDL_truncf(float x); -extern DECLSPEC double SDLCALL SDL_fmod(double x, double y); -extern DECLSPEC float SDLCALL SDL_fmodf(float x, float y); -extern DECLSPEC double SDLCALL SDL_log(double x); -extern DECLSPEC float SDLCALL SDL_logf(float x); -extern DECLSPEC double SDLCALL SDL_log10(double x); -extern DECLSPEC float SDLCALL SDL_log10f(float x); -extern DECLSPEC double SDLCALL SDL_pow(double x, double y); -extern DECLSPEC float SDLCALL SDL_powf(float x, float y); -extern DECLSPEC double SDLCALL SDL_round(double x); -extern DECLSPEC float SDLCALL SDL_roundf(float x); -extern DECLSPEC long SDLCALL SDL_lround(double x); -extern DECLSPEC long SDLCALL SDL_lroundf(float x); -extern DECLSPEC double SDLCALL SDL_scalbn(double x, int n); -extern DECLSPEC float SDLCALL SDL_scalbnf(float x, int n); -extern DECLSPEC double SDLCALL SDL_sin(double x); -extern DECLSPEC float SDLCALL SDL_sinf(float x); -extern DECLSPEC double SDLCALL SDL_sqrt(double x); -extern DECLSPEC float SDLCALL SDL_sqrtf(float x); -extern DECLSPEC double SDLCALL SDL_tan(double x); -extern DECLSPEC float SDLCALL SDL_tanf(float x); - -/* The SDL implementation of iconv() returns these error codes */ -#define SDL_ICONV_ERROR (size_t)-1 -#define SDL_ICONV_E2BIG (size_t)-2 -#define SDL_ICONV_EILSEQ (size_t)-3 -#define SDL_ICONV_EINVAL (size_t)-4 - -/* SDL_iconv_* are now always real symbols/types, not macros or inlined. */ -typedef struct _SDL_iconv_t *SDL_iconv_t; -extern DECLSPEC SDL_iconv_t SDLCALL SDL_iconv_open(const char *tocode, - const char *fromcode); -extern DECLSPEC int SDLCALL SDL_iconv_close(SDL_iconv_t cd); -extern DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf, - size_t * inbytesleft, char **outbuf, - size_t * outbytesleft); - -/** - * This function converts a buffer or string between encodings in one pass, returning a - * string that must be freed with SDL_free() or NULL on error. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC char *SDLCALL SDL_iconv_string(const char *tocode, - const char *fromcode, - const char *inbuf, - size_t inbytesleft); -#define SDL_iconv_utf8_locale(S) SDL_iconv_string("", "UTF-8", S, SDL_strlen(S)+1) -#define SDL_iconv_utf8_ucs2(S) (Uint16 *)SDL_iconv_string("UCS-2-INTERNAL", "UTF-8", S, SDL_strlen(S)+1) -#define SDL_iconv_utf8_ucs4(S) (Uint32 *)SDL_iconv_string("UCS-4-INTERNAL", "UTF-8", S, SDL_strlen(S)+1) -#define SDL_iconv_wchar_utf8(S) SDL_iconv_string("UTF-8", "WCHAR_T", (char *)S, (SDL_wcslen(S)+1)*sizeof(wchar_t)) - -/* force builds using Clang's static analysis tools to use literal C runtime - here, since there are possibly tests that are ineffective otherwise. */ -#if defined(__clang_analyzer__) && !defined(SDL_DISABLE_ANALYZE_MACROS) - -/* The analyzer knows about strlcpy even when the system doesn't provide it */ -#ifndef HAVE_STRLCPY -size_t strlcpy(char* dst, const char* src, size_t size); -#endif - -/* The analyzer knows about strlcat even when the system doesn't provide it */ -#ifndef HAVE_STRLCAT -size_t strlcat(char* dst, const char* src, size_t size); -#endif - -#ifndef HAVE_WCSLCPY -size_t wcslcpy(wchar_t *dst, const wchar_t *src, size_t size); -#endif - -#ifndef HAVE_WCSLCAT -size_t wcslcat(wchar_t *dst, const wchar_t *src, size_t size); -#endif - -/* Starting LLVM 16, the analyser errors out if these functions do not have - their prototype defined (clang-diagnostic-implicit-function-declaration) */ -#include <stdlib.h> -#include <string.h> -#include <stdio.h> - -#define SDL_malloc malloc -#define SDL_calloc calloc -#define SDL_realloc realloc -#define SDL_free free -#define SDL_memset memset -#define SDL_memcpy memcpy -#define SDL_memmove memmove -#define SDL_memcmp memcmp -#define SDL_strlcpy strlcpy -#define SDL_strlcat strlcat -#define SDL_strlen strlen -#define SDL_wcslen wcslen -#define SDL_wcslcpy wcslcpy -#define SDL_wcslcat wcslcat -#define SDL_strdup strdup -#define SDL_wcsdup wcsdup -#define SDL_strchr strchr -#define SDL_strrchr strrchr -#define SDL_strstr strstr -#define SDL_wcsstr wcsstr -#define SDL_strtokr strtok_r -#define SDL_strcmp strcmp -#define SDL_wcscmp wcscmp -#define SDL_strncmp strncmp -#define SDL_wcsncmp wcsncmp -#define SDL_strcasecmp strcasecmp -#define SDL_strncasecmp strncasecmp -#define SDL_sscanf sscanf -#define SDL_vsscanf vsscanf -#define SDL_snprintf snprintf -#define SDL_vsnprintf vsnprintf -#endif - -SDL_FORCE_INLINE void *SDL_memcpy4(SDL_OUT_BYTECAP(dwords*4) void *dst, SDL_IN_BYTECAP(dwords*4) const void *src, size_t dwords) -{ - return SDL_memcpy(dst, src, dwords * 4); -} - -/** - * If a * b would overflow, return -1. Otherwise store a * b via ret - * and return 0. - * - * \since This function is available since SDL 2.24.0. - */ -SDL_FORCE_INLINE int SDL_size_mul_overflow (size_t a, - size_t b, - size_t *ret) -{ - if (a != 0 && b > SDL_SIZE_MAX / a) { - return -1; - } - *ret = a * b; - return 0; -} - -#if _SDL_HAS_BUILTIN(__builtin_mul_overflow) -/* This needs to be wrapped in an inline rather than being a direct #define, - * because __builtin_mul_overflow() is type-generic, but we want to be - * consistent about interpreting a and b as size_t. */ -SDL_FORCE_INLINE int _SDL_size_mul_overflow_builtin (size_t a, - size_t b, - size_t *ret) -{ - return __builtin_mul_overflow(a, b, ret) == 0 ? 0 : -1; -} -#define SDL_size_mul_overflow(a, b, ret) (_SDL_size_mul_overflow_builtin(a, b, ret)) -#endif - -/** - * If a + b would overflow, return -1. Otherwise store a + b via ret - * and return 0. - * - * \since This function is available since SDL 2.24.0. - */ -SDL_FORCE_INLINE int SDL_size_add_overflow (size_t a, - size_t b, - size_t *ret) -{ - if (b > SDL_SIZE_MAX - a) { - return -1; - } - *ret = a + b; - return 0; -} - -#if _SDL_HAS_BUILTIN(__builtin_add_overflow) -/* This needs to be wrapped in an inline rather than being a direct #define, - * the same as the call to __builtin_mul_overflow() above. */ -SDL_FORCE_INLINE int _SDL_size_add_overflow_builtin (size_t a, - size_t b, - size_t *ret) -{ - return __builtin_add_overflow(a, b, ret) == 0 ? 0 : -1; -} -#define SDL_size_add_overflow(a, b, ret) (_SDL_size_add_overflow_builtin(a, b, ret)) -#endif - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_stdinc_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_stdinc.h.blob deleted file mode 100644 index ef182226b1ff9fc65cc22d56df01497a228084d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59883 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 UM5B2GF`Wjv=N?2B0xT*116+>+CjbBd diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h deleted file mode 100644 index d6ee615c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h +++ /dev/null @@ -1,997 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_surface.h - * - * Header file for ::SDL_Surface definition and management functions. - */ - -#ifndef SDL_surface_h_ -#define SDL_surface_h_ - -#include "SDL_stdinc.h" -#include "SDL_pixels.h" -#include "SDL_rect.h" -#include "SDL_blendmode.h" -#include "SDL_rwops.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \name Surface flags - * - * These are the currently supported flags for the ::SDL_Surface. - * - * \internal - * Used internally (read-only). - */ -/* @{ */ -#define SDL_SWSURFACE 0 /**< Just here for compatibility */ -#define SDL_PREALLOC 0x00000001 /**< Surface uses preallocated memory */ -#define SDL_RLEACCEL 0x00000002 /**< Surface is RLE encoded */ -#define SDL_DONTFREE 0x00000004 /**< Surface is referenced internally */ -#define SDL_SIMD_ALIGNED 0x00000008 /**< Surface uses aligned memory */ -/* @} *//* Surface flags */ - -/** - * Evaluates to true if the surface needs to be locked before access. - */ -#define SDL_MUSTLOCK(S) (((S)->flags & SDL_RLEACCEL) != 0) - -typedef struct SDL_BlitMap SDL_BlitMap; /* this is an opaque type. */ - -/** - * \brief A collection of pixels used in software blitting. - * - * \note This structure should be treated as read-only, except for \c pixels, - * which, if not NULL, contains the raw pixel data for the surface. - */ -typedef struct SDL_Surface -{ - Uint32 flags; /**< Read-only */ - SDL_PixelFormat *format; /**< Read-only */ - int w, h; /**< Read-only */ - int pitch; /**< Read-only */ - void *pixels; /**< Read-write */ - - /** Application data associated with the surface */ - void *userdata; /**< Read-write */ - - /** information needed for surfaces requiring locks */ - int locked; /**< Read-only */ - - /** list of BlitMap that hold a reference to this surface */ - void *list_blitmap; /**< Private */ - - /** clipping information */ - SDL_Rect clip_rect; /**< Read-only */ - - /** info for fast blit mapping to other surfaces */ - SDL_BlitMap *map; /**< Private */ - - /** Reference count -- used when freeing surface */ - int refcount; /**< Read-mostly */ -} SDL_Surface; - -/** - * \brief The type of function used for surface blitting functions. - */ -typedef int (SDLCALL *SDL_blit) (struct SDL_Surface * src, SDL_Rect * srcrect, - struct SDL_Surface * dst, SDL_Rect * dstrect); - -/** - * \brief The formula used for converting between YUV and RGB - */ -typedef enum -{ - SDL_YUV_CONVERSION_JPEG, /**< Full range JPEG */ - SDL_YUV_CONVERSION_BT601, /**< BT.601 (the default) */ - SDL_YUV_CONVERSION_BT709, /**< BT.709 */ - SDL_YUV_CONVERSION_AUTOMATIC /**< BT.601 for SD content, BT.709 for HD content */ -} SDL_YUV_CONVERSION_MODE; - -/** - * Allocate a new RGB surface. - * - * If `depth` is 4 or 8 bits, an empty palette is allocated for the surface. - * If `depth` is greater than 8 bits, the pixel format is set using the - * [RGBA]mask parameters. - * - * The [RGBA]mask parameters are the bitmasks used to extract that color from - * a pixel. For instance, `Rmask` being 0xFF000000 means the red data is - * stored in the most significant byte. Using zeros for the RGB masks sets a - * default value, based on the depth. For example: - * - * ```c++ - * SDL_CreateRGBSurface(0,w,h,32,0,0,0,0); - * ``` - * - * However, using zero for the Amask results in an Amask of 0. - * - * By default surfaces with an alpha mask are set up for blending as with: - * - * ```c++ - * SDL_SetSurfaceBlendMode(surface, SDL_BLENDMODE_BLEND) - * ``` - * - * You can change this by calling SDL_SetSurfaceBlendMode() and selecting a - * different `blendMode`. - * - * \param flags the flags are unused and should be set to 0 - * \param width the width of the surface - * \param height the height of the surface - * \param depth the depth of the surface in bits - * \param Rmask the red mask for the pixels - * \param Gmask the green mask for the pixels - * \param Bmask the blue mask for the pixels - * \param Amask the alpha mask for the pixels - * \returns the new SDL_Surface structure that is created or NULL if it fails; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRGBSurfaceFrom - * \sa SDL_CreateRGBSurfaceWithFormat - * \sa SDL_FreeSurface - */ -extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurface - (Uint32 flags, int width, int height, int depth, - Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask); - - -/* !!! FIXME for 2.1: why does this ask for depth? Format provides that. */ - -/** - * Allocate a new RGB surface with a specific pixel format. - * - * This function operates mostly like SDL_CreateRGBSurface(), except instead - * of providing pixel color masks, you provide it with a predefined format - * from SDL_PixelFormatEnum. - * - * \param flags the flags are unused and should be set to 0 - * \param width the width of the surface - * \param height the height of the surface - * \param depth the depth of the surface in bits - * \param format the SDL_PixelFormatEnum for the new surface's pixel format. - * \returns the new SDL_Surface structure that is created or NULL if it fails; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_CreateRGBSurface - * \sa SDL_CreateRGBSurfaceFrom - * \sa SDL_FreeSurface - */ -extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceWithFormat - (Uint32 flags, int width, int height, int depth, Uint32 format); - -/** - * Allocate a new RGB surface with existing pixel data. - * - * This function operates mostly like SDL_CreateRGBSurface(), except it does - * not allocate memory for the pixel data, instead the caller provides an - * existing buffer of data for the surface to use. - * - * No copy is made of the pixel data. Pixel data is not managed automatically; - * you must free the surface before you free the pixel data. - * - * \param pixels a pointer to existing pixel data - * \param width the width of the surface - * \param height the height of the surface - * \param depth the depth of the surface in bits - * \param pitch the pitch of the surface in bytes - * \param Rmask the red mask for the pixels - * \param Gmask the green mask for the pixels - * \param Bmask the blue mask for the pixels - * \param Amask the alpha mask for the pixels - * \returns the new SDL_Surface structure that is created or NULL if it fails; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRGBSurface - * \sa SDL_CreateRGBSurfaceWithFormat - * \sa SDL_FreeSurface - */ -extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceFrom(void *pixels, - int width, - int height, - int depth, - int pitch, - Uint32 Rmask, - Uint32 Gmask, - Uint32 Bmask, - Uint32 Amask); - -/* !!! FIXME for 2.1: why does this ask for depth? Format provides that. */ - -/** - * Allocate a new RGB surface with with a specific pixel format and existing - * pixel data. - * - * This function operates mostly like SDL_CreateRGBSurfaceFrom(), except - * instead of providing pixel color masks, you provide it with a predefined - * format from SDL_PixelFormatEnum. - * - * No copy is made of the pixel data. Pixel data is not managed automatically; - * you must free the surface before you free the pixel data. - * - * \param pixels a pointer to existing pixel data - * \param width the width of the surface - * \param height the height of the surface - * \param depth the depth of the surface in bits - * \param pitch the pitch of the surface in bytes - * \param format the SDL_PixelFormatEnum for the new surface's pixel format. - * \returns the new SDL_Surface structure that is created or NULL if it fails; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_CreateRGBSurfaceFrom - * \sa SDL_CreateRGBSurfaceWithFormat - * \sa SDL_FreeSurface - */ -extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceWithFormatFrom - (void *pixels, int width, int height, int depth, int pitch, Uint32 format); - -/** - * Free an RGB surface. - * - * It is safe to pass NULL to this function. - * - * \param surface the SDL_Surface to free. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateRGBSurface - * \sa SDL_CreateRGBSurfaceFrom - * \sa SDL_LoadBMP - * \sa SDL_LoadBMP_RW - */ -extern DECLSPEC void SDLCALL SDL_FreeSurface(SDL_Surface * surface); - -/** - * Set the palette used by a surface. - * - * A single palette can be shared with many surfaces. - * - * \param surface the SDL_Surface structure to update - * \param palette the SDL_Palette structure to use - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_SetSurfacePalette(SDL_Surface * surface, - SDL_Palette * palette); - -/** - * Set up a surface for directly accessing the pixels. - * - * Between calls to SDL_LockSurface() / SDL_UnlockSurface(), you can write to - * and read from `surface->pixels`, using the pixel format stored in - * `surface->format`. Once you are done accessing the surface, you should use - * SDL_UnlockSurface() to release it. - * - * Not all surfaces require locking. If `SDL_MUSTLOCK(surface)` evaluates to - * 0, then you can read and write to the surface at any time, and the pixel - * format of the surface will not change. - * - * \param surface the SDL_Surface structure to be locked - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_MUSTLOCK - * \sa SDL_UnlockSurface - */ -extern DECLSPEC int SDLCALL SDL_LockSurface(SDL_Surface * surface); - -/** - * Release a surface after directly accessing the pixels. - * - * \param surface the SDL_Surface structure to be unlocked - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LockSurface - */ -extern DECLSPEC void SDLCALL SDL_UnlockSurface(SDL_Surface * surface); - -/** - * Load a BMP image from a seekable SDL data stream. - * - * The new surface should be freed with SDL_FreeSurface(). Not doing so will - * result in a memory leak. - * - * src is an open SDL_RWops buffer, typically loaded with SDL_RWFromFile. - * Alternitavely, you might also use the macro SDL_LoadBMP to load a bitmap - * from a file, convert it to an SDL_Surface and then close the file. - * - * \param src the data stream for the surface - * \param freesrc non-zero to close the stream after being read - * \returns a pointer to a new SDL_Surface structure or NULL if there was an - * error; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FreeSurface - * \sa SDL_RWFromFile - * \sa SDL_LoadBMP - * \sa SDL_SaveBMP_RW - */ -extern DECLSPEC SDL_Surface *SDLCALL SDL_LoadBMP_RW(SDL_RWops * src, - int freesrc); - -/** - * Load a surface from a file. - * - * Convenience macro. - */ -#define SDL_LoadBMP(file) SDL_LoadBMP_RW(SDL_RWFromFile(file, "rb"), 1) - -/** - * Save a surface to a seekable SDL data stream in BMP format. - * - * Surfaces with a 24-bit, 32-bit and paletted 8-bit format get saved in the - * BMP directly. Other RGB formats with 8-bit or higher get converted to a - * 24-bit surface or, if they have an alpha mask or a colorkey, to a 32-bit - * surface before they are saved. YUV and paletted 1-bit and 4-bit formats are - * not supported. - * - * \param surface the SDL_Surface structure containing the image to be saved - * \param dst a data stream to save to - * \param freedst non-zero to close the stream after being written - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_LoadBMP_RW - * \sa SDL_SaveBMP - */ -extern DECLSPEC int SDLCALL SDL_SaveBMP_RW - (SDL_Surface * surface, SDL_RWops * dst, int freedst); - -/** - * Save a surface to a file. - * - * Convenience macro. - */ -#define SDL_SaveBMP(surface, file) \ - SDL_SaveBMP_RW(surface, SDL_RWFromFile(file, "wb"), 1) - -/** - * Set the RLE acceleration hint for a surface. - * - * If RLE is enabled, color key and alpha blending blits are much faster, but - * the surface must be locked before directly accessing the pixels. - * - * \param surface the SDL_Surface structure to optimize - * \param flag 0 to disable, non-zero to enable RLE acceleration - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitSurface - * \sa SDL_LockSurface - * \sa SDL_UnlockSurface - */ -extern DECLSPEC int SDLCALL SDL_SetSurfaceRLE(SDL_Surface * surface, - int flag); - -/** - * Returns whether the surface is RLE enabled - * - * It is safe to pass a NULL `surface` here; it will return SDL_FALSE. - * - * \param surface the SDL_Surface structure to query - * \returns SDL_TRUE if the surface is RLE enabled, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.14. - * - * \sa SDL_SetSurfaceRLE - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasSurfaceRLE(SDL_Surface * surface); - -/** - * Set the color key (transparent pixel) in a surface. - * - * The color key defines a pixel value that will be treated as transparent in - * a blit. For example, one can use this to specify that cyan pixels should be - * considered transparent, and therefore not rendered. - * - * It is a pixel of the format used by the surface, as generated by - * SDL_MapRGB(). - * - * RLE acceleration can substantially speed up blitting of images with large - * horizontal runs of transparent pixels. See SDL_SetSurfaceRLE() for details. - * - * \param surface the SDL_Surface structure to update - * \param flag SDL_TRUE to enable color key, SDL_FALSE to disable color key - * \param key the transparent pixel - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitSurface - * \sa SDL_GetColorKey - */ -extern DECLSPEC int SDLCALL SDL_SetColorKey(SDL_Surface * surface, - int flag, Uint32 key); - -/** - * Returns whether the surface has a color key - * - * It is safe to pass a NULL `surface` here; it will return SDL_FALSE. - * - * \param surface the SDL_Surface structure to query - * \return SDL_TRUE if the surface has a color key, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.9. - * - * \sa SDL_SetColorKey - * \sa SDL_GetColorKey - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasColorKey(SDL_Surface * surface); - -/** - * Get the color key (transparent pixel) for a surface. - * - * The color key is a pixel of the format used by the surface, as generated by - * SDL_MapRGB(). - * - * If the surface doesn't have color key enabled this function returns -1. - * - * \param surface the SDL_Surface structure to query - * \param key a pointer filled in with the transparent pixel - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitSurface - * \sa SDL_SetColorKey - */ -extern DECLSPEC int SDLCALL SDL_GetColorKey(SDL_Surface * surface, - Uint32 * key); - -/** - * Set an additional color value multiplied into blit operations. - * - * When this surface is blitted, during the blit operation each source color - * channel is modulated by the appropriate color value according to the - * following formula: - * - * `srcC = srcC * (color / 255)` - * - * \param surface the SDL_Surface structure to update - * \param r the red color value multiplied into blit operations - * \param g the green color value multiplied into blit operations - * \param b the blue color value multiplied into blit operations - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetSurfaceColorMod - * \sa SDL_SetSurfaceAlphaMod - */ -extern DECLSPEC int SDLCALL SDL_SetSurfaceColorMod(SDL_Surface * surface, - Uint8 r, Uint8 g, Uint8 b); - - -/** - * Get the additional color value multiplied into blit operations. - * - * \param surface the SDL_Surface structure to query - * \param r a pointer filled in with the current red color value - * \param g a pointer filled in with the current green color value - * \param b a pointer filled in with the current blue color value - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetSurfaceAlphaMod - * \sa SDL_SetSurfaceColorMod - */ -extern DECLSPEC int SDLCALL SDL_GetSurfaceColorMod(SDL_Surface * surface, - Uint8 * r, Uint8 * g, - Uint8 * b); - -/** - * Set an additional alpha value used in blit operations. - * - * When this surface is blitted, during the blit operation the source alpha - * value is modulated by this alpha value according to the following formula: - * - * `srcA = srcA * (alpha / 255)` - * - * \param surface the SDL_Surface structure to update - * \param alpha the alpha value multiplied into blit operations - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetSurfaceAlphaMod - * \sa SDL_SetSurfaceColorMod - */ -extern DECLSPEC int SDLCALL SDL_SetSurfaceAlphaMod(SDL_Surface * surface, - Uint8 alpha); - -/** - * Get the additional alpha value used in blit operations. - * - * \param surface the SDL_Surface structure to query - * \param alpha a pointer filled in with the current alpha value - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetSurfaceColorMod - * \sa SDL_SetSurfaceAlphaMod - */ -extern DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface * surface, - Uint8 * alpha); - -/** - * Set the blend mode used for blit operations. - * - * To copy a surface to another surface (or texture) without blending with the - * existing data, the blendmode of the SOURCE surface should be set to - * `SDL_BLENDMODE_NONE`. - * - * \param surface the SDL_Surface structure to update - * \param blendMode the SDL_BlendMode to use for blit blending - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetSurfaceBlendMode - */ -extern DECLSPEC int SDLCALL SDL_SetSurfaceBlendMode(SDL_Surface * surface, - SDL_BlendMode blendMode); - -/** - * Get the blend mode used for blit operations. - * - * \param surface the SDL_Surface structure to query - * \param blendMode a pointer filled in with the current SDL_BlendMode - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetSurfaceBlendMode - */ -extern DECLSPEC int SDLCALL SDL_GetSurfaceBlendMode(SDL_Surface * surface, - SDL_BlendMode *blendMode); - -/** - * Set the clipping rectangle for a surface. - * - * When `surface` is the destination of a blit, only the area within the clip - * rectangle is drawn into. - * - * Note that blits are automatically clipped to the edges of the source and - * destination surfaces. - * - * \param surface the SDL_Surface structure to be clipped - * \param rect the SDL_Rect structure representing the clipping rectangle, or - * NULL to disable clipping - * \returns SDL_TRUE if the rectangle intersects the surface, otherwise - * SDL_FALSE and blits will be completely clipped. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitSurface - * \sa SDL_GetClipRect - */ -extern DECLSPEC SDL_bool SDLCALL SDL_SetClipRect(SDL_Surface * surface, - const SDL_Rect * rect); - -/** - * Get the clipping rectangle for a surface. - * - * When `surface` is the destination of a blit, only the area within the clip - * rectangle is drawn into. - * - * \param surface the SDL_Surface structure representing the surface to be - * clipped - * \param rect an SDL_Rect structure filled in with the clipping rectangle for - * the surface - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitSurface - * \sa SDL_SetClipRect - */ -extern DECLSPEC void SDLCALL SDL_GetClipRect(SDL_Surface * surface, - SDL_Rect * rect); - -/* - * Creates a new surface identical to the existing surface. - * - * The returned surface should be freed with SDL_FreeSurface(). - * - * \param surface the surface to duplicate. - * \returns a copy of the surface, or NULL on failure; call SDL_GetError() for - * more information. - */ -extern DECLSPEC SDL_Surface *SDLCALL SDL_DuplicateSurface(SDL_Surface * surface); - -/** - * Copy an existing surface to a new surface of the specified format. - * - * This function is used to optimize images for faster *repeat* blitting. This - * is accomplished by converting the original and storing the result as a new - * surface. The new, optimized surface can then be used as the source for - * future blits, making them faster. - * - * \param src the existing SDL_Surface structure to convert - * \param fmt the SDL_PixelFormat structure that the new surface is optimized - * for - * \param flags the flags are unused and should be set to 0; this is a - * leftover from SDL 1.2's API - * \returns the new SDL_Surface structure that is created or NULL if it fails; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AllocFormat - * \sa SDL_ConvertSurfaceFormat - * \sa SDL_CreateRGBSurface - */ -extern DECLSPEC SDL_Surface *SDLCALL SDL_ConvertSurface - (SDL_Surface * src, const SDL_PixelFormat * fmt, Uint32 flags); - -/** - * Copy an existing surface to a new surface of the specified format enum. - * - * This function operates just like SDL_ConvertSurface(), but accepts an - * SDL_PixelFormatEnum value instead of an SDL_PixelFormat structure. As such, - * it might be easier to call but it doesn't have access to palette - * information for the destination surface, in case that would be important. - * - * \param src the existing SDL_Surface structure to convert - * \param pixel_format the SDL_PixelFormatEnum that the new surface is - * optimized for - * \param flags the flags are unused and should be set to 0; this is a - * leftover from SDL 1.2's API - * \returns the new SDL_Surface structure that is created or NULL if it fails; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AllocFormat - * \sa SDL_ConvertSurface - * \sa SDL_CreateRGBSurface - */ -extern DECLSPEC SDL_Surface *SDLCALL SDL_ConvertSurfaceFormat - (SDL_Surface * src, Uint32 pixel_format, Uint32 flags); - -/** - * Copy a block of pixels of one format to another format. - * - * \param width the width of the block to copy, in pixels - * \param height the height of the block to copy, in pixels - * \param src_format an SDL_PixelFormatEnum value of the `src` pixels format - * \param src a pointer to the source pixels - * \param src_pitch the pitch of the source pixels, in bytes - * \param dst_format an SDL_PixelFormatEnum value of the `dst` pixels format - * \param dst a pointer to be filled in with new pixel data - * \param dst_pitch the pitch of the destination pixels, in bytes - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_ConvertPixels(int width, int height, - Uint32 src_format, - const void * src, int src_pitch, - Uint32 dst_format, - void * dst, int dst_pitch); - -/** - * Premultiply the alpha on a block of pixels. - * - * This is safe to use with src == dst, but not for other overlapping areas. - * - * This function is currently only implemented for SDL_PIXELFORMAT_ARGB8888. - * - * \param width the width of the block to convert, in pixels - * \param height the height of the block to convert, in pixels - * \param src_format an SDL_PixelFormatEnum value of the `src` pixels format - * \param src a pointer to the source pixels - * \param src_pitch the pitch of the source pixels, in bytes - * \param dst_format an SDL_PixelFormatEnum value of the `dst` pixels format - * \param dst a pointer to be filled in with premultiplied pixel data - * \param dst_pitch the pitch of the destination pixels, in bytes - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_PremultiplyAlpha(int width, int height, - Uint32 src_format, - const void * src, int src_pitch, - Uint32 dst_format, - void * dst, int dst_pitch); - -/** - * Perform a fast fill of a rectangle with a specific color. - * - * `color` should be a pixel of the format used by the surface, and can be - * generated by SDL_MapRGB() or SDL_MapRGBA(). If the color value contains an - * alpha component then the destination is simply filled with that alpha - * information, no blending takes place. - * - * If there is a clip rectangle set on the destination (set via - * SDL_SetClipRect()), then this function will fill based on the intersection - * of the clip rectangle and `rect`. - * - * \param dst the SDL_Surface structure that is the drawing target - * \param rect the SDL_Rect structure representing the rectangle to fill, or - * NULL to fill the entire surface - * \param color the color to fill with - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FillRects - */ -extern DECLSPEC int SDLCALL SDL_FillRect - (SDL_Surface * dst, const SDL_Rect * rect, Uint32 color); - -/** - * Perform a fast fill of a set of rectangles with a specific color. - * - * `color` should be a pixel of the format used by the surface, and can be - * generated by SDL_MapRGB() or SDL_MapRGBA(). If the color value contains an - * alpha component then the destination is simply filled with that alpha - * information, no blending takes place. - * - * If there is a clip rectangle set on the destination (set via - * SDL_SetClipRect()), then this function will fill based on the intersection - * of the clip rectangle and `rect`. - * - * \param dst the SDL_Surface structure that is the drawing target - * \param rects an array of SDL_Rects representing the rectangles to fill. - * \param count the number of rectangles in the array - * \param color the color to fill with - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_FillRect - */ -extern DECLSPEC int SDLCALL SDL_FillRects - (SDL_Surface * dst, const SDL_Rect * rects, int count, Uint32 color); - -/* !!! FIXME: merge this documentation with the wiki */ -/** - * Performs a fast blit from the source surface to the destination surface. - * - * This assumes that the source and destination rectangles are - * the same size. If either \c srcrect or \c dstrect are NULL, the entire - * surface (\c src or \c dst) is copied. The final blit rectangles are saved - * in \c srcrect and \c dstrect after all clipping is performed. - * - * \returns 0 if the blit is successful, otherwise it returns -1. - * - * The blit function should not be called on a locked surface. - * - * The blit semantics for surfaces with and without blending and colorkey - * are defined as follows: - * \verbatim - RGBA->RGB: - Source surface blend mode set to SDL_BLENDMODE_BLEND: - alpha-blend (using the source alpha-channel and per-surface alpha) - SDL_SRCCOLORKEY ignored. - Source surface blend mode set to SDL_BLENDMODE_NONE: - copy RGB. - if SDL_SRCCOLORKEY set, only copy the pixels matching the - RGB values of the source color key, ignoring alpha in the - comparison. - - RGB->RGBA: - Source surface blend mode set to SDL_BLENDMODE_BLEND: - alpha-blend (using the source per-surface alpha) - Source surface blend mode set to SDL_BLENDMODE_NONE: - copy RGB, set destination alpha to source per-surface alpha value. - both: - if SDL_SRCCOLORKEY set, only copy the pixels matching the - source color key. - - RGBA->RGBA: - Source surface blend mode set to SDL_BLENDMODE_BLEND: - alpha-blend (using the source alpha-channel and per-surface alpha) - SDL_SRCCOLORKEY ignored. - Source surface blend mode set to SDL_BLENDMODE_NONE: - copy all of RGBA to the destination. - if SDL_SRCCOLORKEY set, only copy the pixels matching the - RGB values of the source color key, ignoring alpha in the - comparison. - - RGB->RGB: - Source surface blend mode set to SDL_BLENDMODE_BLEND: - alpha-blend (using the source per-surface alpha) - Source surface blend mode set to SDL_BLENDMODE_NONE: - copy RGB. - both: - if SDL_SRCCOLORKEY set, only copy the pixels matching the - source color key. - \endverbatim - * - * You should call SDL_BlitSurface() unless you know exactly how SDL - * blitting works internally and how to use the other blit functions. - */ -#define SDL_BlitSurface SDL_UpperBlit - -/** - * Perform a fast blit from the source surface to the destination surface. - * - * SDL_UpperBlit() has been replaced by SDL_BlitSurface(), which is merely a - * macro for this function with a less confusing name. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitSurface - */ -extern DECLSPEC int SDLCALL SDL_UpperBlit - (SDL_Surface * src, const SDL_Rect * srcrect, - SDL_Surface * dst, SDL_Rect * dstrect); - -/** - * Perform low-level surface blitting only. - * - * This is a semi-private blit function and it performs low-level surface - * blitting, assuming the input rectangles have already been clipped. - * - * Unless you know what you're doing, you should be using SDL_BlitSurface() - * instead. - * - * \param src the SDL_Surface structure to be copied from - * \param srcrect the SDL_Rect structure representing the rectangle to be - * copied, or NULL to copy the entire surface - * \param dst the SDL_Surface structure that is the blit target - * \param dstrect the SDL_Rect structure representing the rectangle that is - * copied into - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitSurface - */ -extern DECLSPEC int SDLCALL SDL_LowerBlit - (SDL_Surface * src, SDL_Rect * srcrect, - SDL_Surface * dst, SDL_Rect * dstrect); - - -/** - * Perform a fast, low quality, stretch blit between two surfaces of the same - * format. - * - * Please use SDL_BlitScaled() instead. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_SoftStretch(SDL_Surface * src, - const SDL_Rect * srcrect, - SDL_Surface * dst, - const SDL_Rect * dstrect); - -/** - * Perform bilinear scaling between two surfaces of the same format, 32BPP. - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC int SDLCALL SDL_SoftStretchLinear(SDL_Surface * src, - const SDL_Rect * srcrect, - SDL_Surface * dst, - const SDL_Rect * dstrect); - - -#define SDL_BlitScaled SDL_UpperBlitScaled - -/** - * Perform a scaled surface copy to a destination surface. - * - * SDL_UpperBlitScaled() has been replaced by SDL_BlitScaled(), which is - * merely a macro for this function with a less confusing name. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitScaled - */ -extern DECLSPEC int SDLCALL SDL_UpperBlitScaled - (SDL_Surface * src, const SDL_Rect * srcrect, - SDL_Surface * dst, SDL_Rect * dstrect); - -/** - * Perform low-level surface scaled blitting only. - * - * This is a semi-private function and it performs low-level surface blitting, - * assuming the input rectangles have already been clipped. - * - * \param src the SDL_Surface structure to be copied from - * \param srcrect the SDL_Rect structure representing the rectangle to be - * copied - * \param dst the SDL_Surface structure that is the blit target - * \param dstrect the SDL_Rect structure representing the rectangle that is - * copied into - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_BlitScaled - */ -extern DECLSPEC int SDLCALL SDL_LowerBlitScaled - (SDL_Surface * src, SDL_Rect * srcrect, - SDL_Surface * dst, SDL_Rect * dstrect); - -/** - * Set the YUV conversion mode - * - * \since This function is available since SDL 2.0.8. - */ -extern DECLSPEC void SDLCALL SDL_SetYUVConversionMode(SDL_YUV_CONVERSION_MODE mode); - -/** - * Get the YUV conversion mode - * - * \since This function is available since SDL 2.0.8. - */ -extern DECLSPEC SDL_YUV_CONVERSION_MODE SDLCALL SDL_GetYUVConversionMode(void); - -/** - * Get the YUV conversion mode, returning the correct mode for the resolution - * when the current conversion mode is SDL_YUV_CONVERSION_AUTOMATIC - * - * \since This function is available since SDL 2.0.8. - */ -extern DECLSPEC SDL_YUV_CONVERSION_MODE SDLCALL SDL_GetYUVConversionModeForResolution(int width, int height); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_surface_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_surface.h.blob deleted file mode 100644 index c8bb55afd7c1699de2ebfde6c3d31b30556479a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55026 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 HgzWzZ$wJqB diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h deleted file mode 100644 index 4b7eaddc..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h +++ /dev/null @@ -1,623 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_system.h - * - * Include file for platform specific SDL API functions - */ - -#ifndef SDL_system_h_ -#define SDL_system_h_ - -#include "SDL_stdinc.h" -#include "SDL_keyboard.h" -#include "SDL_render.h" -#include "SDL_video.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - - -/* Platform specific functions for Windows */ -#if defined(__WIN32__) || defined(__GDK__) - -typedef void (SDLCALL * SDL_WindowsMessageHook)(void *userdata, void *hWnd, unsigned int message, Uint64 wParam, Sint64 lParam); - -/** - * Set a callback for every Windows message, run before TranslateMessage(). - * - * \param callback The SDL_WindowsMessageHook function to call. - * \param userdata a pointer to pass to every iteration of `callback` - * - * \since This function is available since SDL 2.0.4. - */ -extern DECLSPEC void SDLCALL SDL_SetWindowsMessageHook(SDL_WindowsMessageHook callback, void *userdata); - -#endif /* defined(__WIN32__) || defined(__GDK__) */ - -#if defined(__WIN32__) || defined(__WINGDK__) - -/** - * Get the D3D9 adapter index that matches the specified display index. - * - * The returned adapter index can be passed to `IDirect3D9::CreateDevice` and - * controls on which monitor a full screen application will appear. - * - * \param displayIndex the display index for which to get the D3D9 adapter - * index - * \returns the D3D9 adapter index on success or a negative error code on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.1. - */ -extern DECLSPEC int SDLCALL SDL_Direct3D9GetAdapterIndex( int displayIndex ); - -typedef struct IDirect3DDevice9 IDirect3DDevice9; - -/** - * Get the D3D9 device associated with a renderer. - * - * Once you are done using the device, you should release it to avoid a - * resource leak. - * - * \param renderer the renderer from which to get the associated D3D device - * \returns the D3D9 device associated with given renderer or NULL if it is - * not a D3D9 renderer; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.1. - */ -extern DECLSPEC IDirect3DDevice9* SDLCALL SDL_RenderGetD3D9Device(SDL_Renderer * renderer); - -typedef struct ID3D11Device ID3D11Device; - -/** - * Get the D3D11 device associated with a renderer. - * - * Once you are done using the device, you should release it to avoid a - * resource leak. - * - * \param renderer the renderer from which to get the associated D3D11 device - * \returns the D3D11 device associated with given renderer or NULL if it is - * not a D3D11 renderer; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC ID3D11Device* SDLCALL SDL_RenderGetD3D11Device(SDL_Renderer * renderer); - -#endif /* defined(__WIN32__) || defined(__WINGDK__) */ - -#if defined(__WIN32__) || defined(__GDK__) - -typedef struct ID3D12Device ID3D12Device; - -/** - * Get the D3D12 device associated with a renderer. - * - * Once you are done using the device, you should release it to avoid a - * resource leak. - * - * \param renderer the renderer from which to get the associated D3D12 device - * \returns the D3D12 device associated with given renderer or NULL if it is - * not a D3D12 renderer; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC ID3D12Device* SDLCALL SDL_RenderGetD3D12Device(SDL_Renderer* renderer); - -#endif /* defined(__WIN32__) || defined(__GDK__) */ - -#if defined(__WIN32__) || defined(__WINGDK__) - -/** - * Get the DXGI Adapter and Output indices for the specified display index. - * - * The DXGI Adapter and Output indices can be passed to `EnumAdapters` and - * `EnumOutputs` respectively to get the objects required to create a DX10 or - * DX11 device and swap chain. - * - * Before SDL 2.0.4 this function did not return a value. Since SDL 2.0.4 it - * returns an SDL_bool. - * - * \param displayIndex the display index for which to get both indices - * \param adapterIndex a pointer to be filled in with the adapter index - * \param outputIndex a pointer to be filled in with the output index - * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.2. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_DXGIGetOutputInfo( int displayIndex, int *adapterIndex, int *outputIndex ); - -#endif /* defined(__WIN32__) || defined(__WINGDK__) */ - -/* Platform specific functions for Linux */ -#ifdef __LINUX__ - -/** - * Sets the UNIX nice value for a thread. - * - * This uses setpriority() if possible, and RealtimeKit if available. - * - * \param threadID the Unix thread ID to change priority of. - * \param priority The new, Unix-specific, priority value. - * \returns 0 on success, or -1 on error. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC int SDLCALL SDL_LinuxSetThreadPriority(Sint64 threadID, int priority); - -/** - * Sets the priority (not nice level) and scheduling policy for a thread. - * - * This uses setpriority() if possible, and RealtimeKit if available. - * - * \param threadID The Unix thread ID to change priority of. - * \param sdlPriority The new SDL_ThreadPriority value. - * \param schedPolicy The new scheduling policy (SCHED_FIFO, SCHED_RR, - * SCHED_OTHER, etc...) - * \returns 0 on success, or -1 on error. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC int SDLCALL SDL_LinuxSetThreadPriorityAndPolicy(Sint64 threadID, int sdlPriority, int schedPolicy); - -#endif /* __LINUX__ */ - -/* Platform specific functions for iOS */ -#ifdef __IPHONEOS__ - -#define SDL_iOSSetAnimationCallback(window, interval, callback, callbackParam) SDL_iPhoneSetAnimationCallback(window, interval, callback, callbackParam) - -/** - * Use this function to set the animation callback on Apple iOS. - * - * The function prototype for `callback` is: - * - * ```c - * void callback(void* callbackParam); - * ``` - * - * Where its parameter, `callbackParam`, is what was passed as `callbackParam` - * to SDL_iPhoneSetAnimationCallback(). - * - * This function is only available on Apple iOS. - * - * For more information see: - * https://github.com/libsdl-org/SDL/blob/main/docs/README-ios.md - * - * This functions is also accessible using the macro - * SDL_iOSSetAnimationCallback() since SDL 2.0.4. - * - * \param window the window for which the animation callback should be set - * \param interval the number of frames after which **callback** will be - * called - * \param callback the function to call for every frame. - * \param callbackParam a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_iPhoneSetEventPump - */ -extern DECLSPEC int SDLCALL SDL_iPhoneSetAnimationCallback(SDL_Window * window, int interval, void (SDLCALL *callback)(void*), void *callbackParam); - -#define SDL_iOSSetEventPump(enabled) SDL_iPhoneSetEventPump(enabled) - -/** - * Use this function to enable or disable the SDL event pump on Apple iOS. - * - * This function is only available on Apple iOS. - * - * This functions is also accessible using the macro SDL_iOSSetEventPump() - * since SDL 2.0.4. - * - * \param enabled SDL_TRUE to enable the event pump, SDL_FALSE to disable it - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_iPhoneSetAnimationCallback - */ -extern DECLSPEC void SDLCALL SDL_iPhoneSetEventPump(SDL_bool enabled); - -#endif /* __IPHONEOS__ */ - - -/* Platform specific functions for Android */ -#ifdef __ANDROID__ - -/** - * Get the Android Java Native Interface Environment of the current thread. - * - * This is the JNIEnv one needs to access the Java virtual machine from native - * code, and is needed for many Android APIs to be usable from C. - * - * The prototype of the function in SDL's code actually declare a void* return - * type, even if the implementation returns a pointer to a JNIEnv. The - * rationale being that the SDL headers can avoid including jni.h. - * - * \returns a pointer to Java native interface object (JNIEnv) to which the - * current thread is attached, or 0 on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AndroidGetActivity - */ -extern DECLSPEC void * SDLCALL SDL_AndroidGetJNIEnv(void); - -/** - * Retrieve the Java instance of the Android activity class. - * - * The prototype of the function in SDL's code actually declares a void* - * return type, even if the implementation returns a jobject. The rationale - * being that the SDL headers can avoid including jni.h. - * - * The jobject returned by the function is a local reference and must be - * released by the caller. See the PushLocalFrame() and PopLocalFrame() or - * DeleteLocalRef() functions of the Java native interface: - * - * https://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/functions.html - * - * \returns the jobject representing the instance of the Activity class of the - * Android application, or NULL on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AndroidGetJNIEnv - */ -extern DECLSPEC void * SDLCALL SDL_AndroidGetActivity(void); - -/** - * Query Android API level of the current device. - * - * - API level 31: Android 12 - * - API level 30: Android 11 - * - API level 29: Android 10 - * - API level 28: Android 9 - * - API level 27: Android 8.1 - * - API level 26: Android 8.0 - * - API level 25: Android 7.1 - * - API level 24: Android 7.0 - * - API level 23: Android 6.0 - * - API level 22: Android 5.1 - * - API level 21: Android 5.0 - * - API level 20: Android 4.4W - * - API level 19: Android 4.4 - * - API level 18: Android 4.3 - * - API level 17: Android 4.2 - * - API level 16: Android 4.1 - * - API level 15: Android 4.0.3 - * - API level 14: Android 4.0 - * - API level 13: Android 3.2 - * - API level 12: Android 3.1 - * - API level 11: Android 3.0 - * - API level 10: Android 2.3.3 - * - * \returns the Android API level. - * - * \since This function is available since SDL 2.0.12. - */ -extern DECLSPEC int SDLCALL SDL_GetAndroidSDKVersion(void); - -/** - * Query if the application is running on Android TV. - * - * \returns SDL_TRUE if this is Android TV, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.8. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsAndroidTV(void); - -/** - * Query if the application is running on a Chromebook. - * - * \returns SDL_TRUE if this is a Chromebook, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsChromebook(void); - -/** - * Query if the application is running on a Samsung DeX docking station. - * - * \returns SDL_TRUE if this is a DeX docking station, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsDeXMode(void); - -/** - * Trigger the Android system back button behavior. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC void SDLCALL SDL_AndroidBackButton(void); - -/** - See the official Android developer guide for more information: - http://developer.android.com/guide/topics/data/data-storage.html -*/ -#define SDL_ANDROID_EXTERNAL_STORAGE_READ 0x01 -#define SDL_ANDROID_EXTERNAL_STORAGE_WRITE 0x02 - -/** - * Get the path used for internal storage for this application. - * - * This path is unique to your application and cannot be written to by other - * applications. - * - * Your internal storage path is typically: - * `/data/data/your.app.package/files`. - * - * \returns the path used for internal storage or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AndroidGetExternalStorageState - */ -extern DECLSPEC const char * SDLCALL SDL_AndroidGetInternalStoragePath(void); - -/** - * Get the current state of external storage. - * - * The current state of external storage, a bitmask of these values: - * `SDL_ANDROID_EXTERNAL_STORAGE_READ`, `SDL_ANDROID_EXTERNAL_STORAGE_WRITE`. - * - * If external storage is currently unavailable, this will return 0. - * - * \returns the current state of external storage on success or 0 on failure; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AndroidGetExternalStoragePath - */ -extern DECLSPEC int SDLCALL SDL_AndroidGetExternalStorageState(void); - -/** - * Get the path used for external storage for this application. - * - * This path is unique to your application, but is public and can be written - * to by other applications. - * - * Your external storage path is typically: - * `/storage/sdcard0/Android/data/your.app.package/files`. - * - * \returns the path used for external storage for this application on success - * or NULL on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AndroidGetExternalStorageState - */ -extern DECLSPEC const char * SDLCALL SDL_AndroidGetExternalStoragePath(void); - -/** - * Request permissions at runtime. - * - * This blocks the calling thread until the permission is granted or denied. - * - * \param permission The permission to request. - * \returns SDL_TRUE if the permission was granted, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.14. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_AndroidRequestPermission(const char *permission); - -/** - * Shows an Android toast notification. - * - * Toasts are a sort of lightweight notification that are unique to Android. - * - * https://developer.android.com/guide/topics/ui/notifiers/toasts - * - * Shows toast in UI thread. - * - * For the `gravity` parameter, choose a value from here, or -1 if you don't - * have a preference: - * - * https://developer.android.com/reference/android/view/Gravity - * - * \param message text message to be shown - * \param duration 0=short, 1=long - * \param gravity where the notification should appear on the screen. - * \param xoffset set this parameter only when gravity >=0 - * \param yoffset set this parameter only when gravity >=0 - * \returns 0 if success, -1 if any error occurs. - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC int SDLCALL SDL_AndroidShowToast(const char* message, int duration, int gravity, int xoffset, int yoffset); - -/** - * Send a user command to SDLActivity. - * - * Override "boolean onUnhandledMessage(Message msg)" to handle the message. - * - * \param command user command that must be greater or equal to 0x8000 - * \param param user parameter - * - * \since This function is available since SDL 2.0.22. - */ -extern DECLSPEC int SDLCALL SDL_AndroidSendMessage(Uint32 command, int param); - -#endif /* __ANDROID__ */ - -/* Platform specific functions for WinRT */ -#ifdef __WINRT__ - -/** - * \brief WinRT / Windows Phone path types - */ -typedef enum -{ - /** \brief The installed app's root directory. - Files here are likely to be read-only. */ - SDL_WINRT_PATH_INSTALLED_LOCATION, - - /** \brief The app's local data store. Files may be written here */ - SDL_WINRT_PATH_LOCAL_FOLDER, - - /** \brief The app's roaming data store. Unsupported on Windows Phone. - Files written here may be copied to other machines via a network - connection. - */ - SDL_WINRT_PATH_ROAMING_FOLDER, - - /** \brief The app's temporary data store. Unsupported on Windows Phone. - Files written here may be deleted at any time. */ - SDL_WINRT_PATH_TEMP_FOLDER -} SDL_WinRT_Path; - - -/** - * \brief WinRT Device Family - */ -typedef enum -{ - /** \brief Unknown family */ - SDL_WINRT_DEVICEFAMILY_UNKNOWN, - - /** \brief Desktop family*/ - SDL_WINRT_DEVICEFAMILY_DESKTOP, - - /** \brief Mobile family (for example smartphone) */ - SDL_WINRT_DEVICEFAMILY_MOBILE, - - /** \brief XBox family */ - SDL_WINRT_DEVICEFAMILY_XBOX, -} SDL_WinRT_DeviceFamily; - - -/** - * Retrieve a WinRT defined path on the local file system. - * - * Not all paths are available on all versions of Windows. This is especially - * true on Windows Phone. Check the documentation for the given SDL_WinRT_Path - * for more information on which path types are supported where. - * - * Documentation on most app-specific path types on WinRT can be found on - * MSDN, at the URL: - * - * https://msdn.microsoft.com/en-us/library/windows/apps/hh464917.aspx - * - * \param pathType the type of path to retrieve, one of SDL_WinRT_Path - * \returns a UCS-2 string (16-bit, wide-char) containing the path, or NULL if - * the path is not available for any reason; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.3. - * - * \sa SDL_WinRTGetFSPathUTF8 - */ -extern DECLSPEC const wchar_t * SDLCALL SDL_WinRTGetFSPathUNICODE(SDL_WinRT_Path pathType); - -/** - * Retrieve a WinRT defined path on the local file system. - * - * Not all paths are available on all versions of Windows. This is especially - * true on Windows Phone. Check the documentation for the given SDL_WinRT_Path - * for more information on which path types are supported where. - * - * Documentation on most app-specific path types on WinRT can be found on - * MSDN, at the URL: - * - * https://msdn.microsoft.com/en-us/library/windows/apps/hh464917.aspx - * - * \param pathType the type of path to retrieve, one of SDL_WinRT_Path - * \returns a UTF-8 string (8-bit, multi-byte) containing the path, or NULL if - * the path is not available for any reason; call SDL_GetError() for - * more information. - * - * \since This function is available since SDL 2.0.3. - * - * \sa SDL_WinRTGetFSPathUNICODE - */ -extern DECLSPEC const char * SDLCALL SDL_WinRTGetFSPathUTF8(SDL_WinRT_Path pathType); - -/** - * Detects the device family of WinRT platform at runtime. - * - * \returns a value from the SDL_WinRT_DeviceFamily enum. - * - * \since This function is available since SDL 2.0.8. - */ -extern DECLSPEC SDL_WinRT_DeviceFamily SDLCALL SDL_WinRTGetDeviceFamily(); - -#endif /* __WINRT__ */ - -/** - * Query if the current device is a tablet. - * - * If SDL can't determine this, it will return SDL_FALSE. - * - * \returns SDL_TRUE if the device is a tablet, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.9. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsTablet(void); - -/* Functions used by iOS application delegates to notify SDL about state changes */ -extern DECLSPEC void SDLCALL SDL_OnApplicationWillTerminate(void); -extern DECLSPEC void SDLCALL SDL_OnApplicationDidReceiveMemoryWarning(void); -extern DECLSPEC void SDLCALL SDL_OnApplicationWillResignActive(void); -extern DECLSPEC void SDLCALL SDL_OnApplicationDidEnterBackground(void); -extern DECLSPEC void SDLCALL SDL_OnApplicationWillEnterForeground(void); -extern DECLSPEC void SDLCALL SDL_OnApplicationDidBecomeActive(void); -#ifdef __IPHONEOS__ -extern DECLSPEC void SDLCALL SDL_OnApplicationDidChangeStatusBarOrientation(void); -#endif - -/* Functions used only by GDK */ -#if defined(__GDK__) -typedef struct XTaskQueueObject * XTaskQueueHandle; - -/** - * Gets a reference to the global async task queue handle for GDK, - * initializing if needed. - * - * Once you are done with the task queue, you should call - * XTaskQueueCloseHandle to reduce the reference count to avoid a resource - * leak. - * - * \param outTaskQueue a pointer to be filled in with task queue handle. - * \returns 0 if success, -1 if any error occurs. - * - * \since This function is available since SDL 2.24.0. - */ -extern DECLSPEC int SDLCALL SDL_GDKGetTaskQueue(XTaskQueueHandle * outTaskQueue); - -#endif - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_system_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_system.h.blob deleted file mode 100644 index c3bf4d0368bd9a4367ea0eb9840a68f51a8816b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15164 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 V3S{a-?VdaCIa%j_8;3Oz{x3A8#6$o9 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h deleted file mode 100644 index b829bbad..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h +++ /dev/null @@ -1,464 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_thread_h_ -#define SDL_thread_h_ - -/** - * \file SDL_thread.h - * - * Header for the SDL thread management routines. - */ - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -/* Thread synchronization primitives */ -#include "SDL_atomic.h" -#include "SDL_mutex.h" - -#if (defined(__WIN32__) || defined(__GDK__)) && !defined(__WINRT__) -#include <process.h> /* _beginthreadex() and _endthreadex() */ -#endif -#if defined(__OS2__) /* for _beginthread() and _endthread() */ -#ifndef __EMX__ -#include <process.h> -#else -#include <stdlib.h> -#endif -#endif - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/* The SDL thread structure, defined in SDL_thread.c */ -struct SDL_Thread; -typedef struct SDL_Thread SDL_Thread; - -/* The SDL thread ID */ -typedef unsigned long SDL_threadID; - -/* Thread local storage ID, 0 is the invalid ID */ -typedef unsigned int SDL_TLSID; - -/** - * The SDL thread priority. - * - * SDL will make system changes as necessary in order to apply the thread priority. - * Code which attempts to control thread state related to priority should be aware - * that calling SDL_SetThreadPriority may alter such state. - * SDL_HINT_THREAD_PRIORITY_POLICY can be used to control aspects of this behavior. - * - * \note On many systems you require special privileges to set high or time critical priority. - */ -typedef enum { - SDL_THREAD_PRIORITY_LOW, - SDL_THREAD_PRIORITY_NORMAL, - SDL_THREAD_PRIORITY_HIGH, - SDL_THREAD_PRIORITY_TIME_CRITICAL -} SDL_ThreadPriority; - -/** - * The function passed to SDL_CreateThread(). - * - * \param data what was passed as `data` to SDL_CreateThread() - * \returns a value that can be reported through SDL_WaitThread(). - */ -typedef int (SDLCALL * SDL_ThreadFunction) (void *data); - - -#if (defined(__WIN32__) || defined(__GDK__)) && !defined(__WINRT__) -/** - * \file SDL_thread.h - * - * We compile SDL into a DLL. This means, that it's the DLL which - * creates a new thread for the calling process with the SDL_CreateThread() - * API. There is a problem with this, that only the RTL of the SDL2.DLL will - * be initialized for those threads, and not the RTL of the calling - * application! - * - * To solve this, we make a little hack here. - * - * We'll always use the caller's _beginthread() and _endthread() APIs to - * start a new thread. This way, if it's the SDL2.DLL which uses this API, - * then the RTL of SDL2.DLL will be used to create the new thread, and if it's - * the application, then the RTL of the application will be used. - * - * So, in short: - * Always use the _beginthread() and _endthread() of the calling runtime - * library! - */ -#define SDL_PASSED_BEGINTHREAD_ENDTHREAD - -typedef uintptr_t (__cdecl * pfnSDL_CurrentBeginThread) - (void *, unsigned, unsigned (__stdcall *func)(void *), - void * /*arg*/, unsigned, unsigned * /* threadID */); -typedef void (__cdecl * pfnSDL_CurrentEndThread) (unsigned code); - -#ifndef SDL_beginthread -#define SDL_beginthread _beginthreadex -#endif -#ifndef SDL_endthread -#define SDL_endthread _endthreadex -#endif - -extern DECLSPEC SDL_Thread *SDLCALL -SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data, - pfnSDL_CurrentBeginThread pfnBeginThread, - pfnSDL_CurrentEndThread pfnEndThread); - -extern DECLSPEC SDL_Thread *SDLCALL -SDL_CreateThreadWithStackSize(SDL_ThreadFunction fn, - const char *name, const size_t stacksize, void *data, - pfnSDL_CurrentBeginThread pfnBeginThread, - pfnSDL_CurrentEndThread pfnEndThread); - - -#if defined(SDL_CreateThread) && SDL_DYNAMIC_API -#undef SDL_CreateThread -#define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) -#undef SDL_CreateThreadWithStackSize -#define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize_REAL(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) -#else -#define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) -#define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) -#endif - -#elif defined(__OS2__) -/* - * just like the windows case above: We compile SDL2 - * into a dll with Watcom's runtime statically linked. - */ -#define SDL_PASSED_BEGINTHREAD_ENDTHREAD - -typedef int (*pfnSDL_CurrentBeginThread)(void (*func)(void *), void *, unsigned, void * /*arg*/); -typedef void (*pfnSDL_CurrentEndThread)(void); - -#ifndef SDL_beginthread -#define SDL_beginthread _beginthread -#endif -#ifndef SDL_endthread -#define SDL_endthread _endthread -#endif - -extern DECLSPEC SDL_Thread *SDLCALL -SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data, - pfnSDL_CurrentBeginThread pfnBeginThread, - pfnSDL_CurrentEndThread pfnEndThread); -extern DECLSPEC SDL_Thread *SDLCALL -SDL_CreateThreadWithStackSize(SDL_ThreadFunction fn, const char *name, const size_t stacksize, void *data, - pfnSDL_CurrentBeginThread pfnBeginThread, - pfnSDL_CurrentEndThread pfnEndThread); - -#if defined(SDL_CreateThread) && SDL_DYNAMIC_API -#undef SDL_CreateThread -#define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) -#undef SDL_CreateThreadWithStackSize -#define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize_REAL(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) -#else -#define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) -#define SDL_CreateThreadWithStackSize(fn, name, stacksize, data) SDL_CreateThreadWithStackSize(fn, name, stacksize, data, (pfnSDL_CurrentBeginThread)SDL_beginthread, (pfnSDL_CurrentEndThread)SDL_endthread) -#endif - -#else - -/** - * Create a new thread with a default stack size. - * - * This is equivalent to calling: - * - * ```c - * SDL_CreateThreadWithStackSize(fn, name, 0, data); - * ``` - * - * \param fn the SDL_ThreadFunction function to call in the new thread - * \param name the name of the thread - * \param data a pointer that is passed to `fn` - * \returns an opaque pointer to the new thread object on success, NULL if the - * new thread could not be created; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateThreadWithStackSize - * \sa SDL_WaitThread - */ -extern DECLSPEC SDL_Thread *SDLCALL -SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data); - -/** - * Create a new thread with a specific stack size. - * - * SDL makes an attempt to report `name` to the system, so that debuggers can - * display it. Not all platforms support this. - * - * Thread naming is a little complicated: Most systems have very small limits - * for the string length (Haiku has 32 bytes, Linux currently has 16, Visual - * C++ 6.0 has _nine_!), and possibly other arbitrary rules. You'll have to - * see what happens with your system's debugger. The name should be UTF-8 (but - * using the naming limits of C identifiers is a better bet). There are no - * requirements for thread naming conventions, so long as the string is - * null-terminated UTF-8, but these guidelines are helpful in choosing a name: - * - * https://stackoverflow.com/questions/149932/naming-conventions-for-threads - * - * If a system imposes requirements, SDL will try to munge the string for it - * (truncate, etc), but the original string contents will be available from - * SDL_GetThreadName(). - * - * The size (in bytes) of the new stack can be specified. Zero means "use the - * system default" which might be wildly different between platforms. x86 - * Linux generally defaults to eight megabytes, an embedded device might be a - * few kilobytes instead. You generally need to specify a stack that is a - * multiple of the system's page size (in many cases, this is 4 kilobytes, but - * check your system documentation). - * - * In SDL 2.1, stack size will be folded into the original SDL_CreateThread - * function, but for backwards compatibility, this is currently a separate - * function. - * - * \param fn the SDL_ThreadFunction function to call in the new thread - * \param name the name of the thread - * \param stacksize the size, in bytes, to allocate for the new thread stack. - * \param data a pointer that is passed to `fn` - * \returns an opaque pointer to the new thread object on success, NULL if the - * new thread could not be created; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.9. - * - * \sa SDL_WaitThread - */ -extern DECLSPEC SDL_Thread *SDLCALL -SDL_CreateThreadWithStackSize(SDL_ThreadFunction fn, const char *name, const size_t stacksize, void *data); - -#endif - -/** - * Get the thread name as it was specified in SDL_CreateThread(). - * - * This is internal memory, not to be freed by the caller, and remains valid - * until the specified thread is cleaned up by SDL_WaitThread(). - * - * \param thread the thread to query - * \returns a pointer to a UTF-8 string that names the specified thread, or - * NULL if it doesn't have a name. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateThread - */ -extern DECLSPEC const char *SDLCALL SDL_GetThreadName(SDL_Thread *thread); - -/** - * Get the thread identifier for the current thread. - * - * This thread identifier is as reported by the underlying operating system. - * If SDL is running on a platform that does not support threads the return - * value will always be zero. - * - * This function also returns a valid thread ID when called from the main - * thread. - * - * \returns the ID of the current thread. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetThreadID - */ -extern DECLSPEC SDL_threadID SDLCALL SDL_ThreadID(void); - -/** - * Get the thread identifier for the specified thread. - * - * This thread identifier is as reported by the underlying operating system. - * If SDL is running on a platform that does not support threads the return - * value will always be zero. - * - * \param thread the thread to query - * \returns the ID of the specified thread, or the ID of the current thread if - * `thread` is NULL. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ThreadID - */ -extern DECLSPEC SDL_threadID SDLCALL SDL_GetThreadID(SDL_Thread * thread); - -/** - * Set the priority for the current thread. - * - * Note that some platforms will not let you alter the priority (or at least, - * promote the thread to a higher priority) at all, and some require you to be - * an administrator account. Be prepared for this to fail. - * - * \param priority the SDL_ThreadPriority to set - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC int SDLCALL SDL_SetThreadPriority(SDL_ThreadPriority priority); - -/** - * Wait for a thread to finish. - * - * Threads that haven't been detached will remain (as a "zombie") until this - * function cleans them up. Not doing so is a resource leak. - * - * Once a thread has been cleaned up through this function, the SDL_Thread - * that references it becomes invalid and should not be referenced again. As - * such, only one thread may call SDL_WaitThread() on another. - * - * The return code for the thread function is placed in the area pointed to by - * `status`, if `status` is not NULL. - * - * You may not wait on a thread that has been used in a call to - * SDL_DetachThread(). Use either that function or this one, but not both, or - * behavior is undefined. - * - * It is safe to pass a NULL thread to this function; it is a no-op. - * - * Note that the thread pointer is freed by this function and is not valid - * afterward. - * - * \param thread the SDL_Thread pointer that was returned from the - * SDL_CreateThread() call that started this thread - * \param status pointer to an integer that will receive the value returned - * from the thread function by its 'return', or NULL to not - * receive such value back. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateThread - * \sa SDL_DetachThread - */ -extern DECLSPEC void SDLCALL SDL_WaitThread(SDL_Thread * thread, int *status); - -/** - * Let a thread clean up on exit without intervention. - * - * A thread may be "detached" to signify that it should not remain until - * another thread has called SDL_WaitThread() on it. Detaching a thread is - * useful for long-running threads that nothing needs to synchronize with or - * further manage. When a detached thread is done, it simply goes away. - * - * There is no way to recover the return code of a detached thread. If you - * need this, don't detach the thread and instead use SDL_WaitThread(). - * - * Once a thread is detached, you should usually assume the SDL_Thread isn't - * safe to reference again, as it will become invalid immediately upon the - * detached thread's exit, instead of remaining until someone has called - * SDL_WaitThread() to finally clean it up. As such, don't detach the same - * thread more than once. - * - * If a thread has already exited when passed to SDL_DetachThread(), it will - * stop waiting for a call to SDL_WaitThread() and clean up immediately. It is - * not safe to detach a thread that might be used with SDL_WaitThread(). - * - * You may not call SDL_WaitThread() on a thread that has been detached. Use - * either that function or this one, but not both, or behavior is undefined. - * - * It is safe to pass NULL to this function; it is a no-op. - * - * \param thread the SDL_Thread pointer that was returned from the - * SDL_CreateThread() call that started this thread - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_CreateThread - * \sa SDL_WaitThread - */ -extern DECLSPEC void SDLCALL SDL_DetachThread(SDL_Thread * thread); - -/** - * Create a piece of thread-local storage. - * - * This creates an identifier that is globally visible to all threads but - * refers to data that is thread-specific. - * - * \returns the newly created thread local storage identifier or 0 on error. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_TLSGet - * \sa SDL_TLSSet - */ -extern DECLSPEC SDL_TLSID SDLCALL SDL_TLSCreate(void); - -/** - * Get the current thread's value associated with a thread local storage ID. - * - * \param id the thread local storage ID - * \returns the value associated with the ID for the current thread or NULL if - * no value has been set; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_TLSCreate - * \sa SDL_TLSSet - */ -extern DECLSPEC void * SDLCALL SDL_TLSGet(SDL_TLSID id); - -/** - * Set the current thread's value associated with a thread local storage ID. - * - * The function prototype for `destructor` is: - * - * ```c - * void destructor(void *value) - * ``` - * - * where its parameter `value` is what was passed as `value` to SDL_TLSSet(). - * - * \param id the thread local storage ID - * \param value the value to associate with the ID for the current thread - * \param destructor a function called when the thread exits, to free the - * value - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_TLSCreate - * \sa SDL_TLSGet - */ -extern DECLSPEC int SDLCALL SDL_TLSSet(SDL_TLSID id, const void *value, void (SDLCALL *destructor)(void*)); - -/** - * Cleanup all TLS data for this thread. - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC void SDLCALL SDL_TLSCleanup(void); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_thread_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_thread.h.blob deleted file mode 100644 index fdbaf1dcb3c357a12c3abd7320cf6642aa9d558e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25694 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 Z$nst!aQ8tl<j<MPW#g@M{TOS|e*tELDS7|^ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h deleted file mode 100644 index 98f9ad16..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h +++ /dev/null @@ -1,222 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SDL_timer_h_ -#define SDL_timer_h_ - -/** - * \file SDL_timer.h - * - * Header for the SDL time management routines. - */ - -#include "SDL_stdinc.h" -#include "SDL_error.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Get the number of milliseconds since SDL library initialization. - * - * This value wraps if the program runs for more than ~49 days. - * - * This function is not recommended as of SDL 2.0.18; use SDL_GetTicks64() - * instead, where the value doesn't wrap every ~49 days. There are places in - * SDL where we provide a 32-bit timestamp that can not change without - * breaking binary compatibility, though, so this function isn't officially - * deprecated. - * - * \returns an unsigned 32-bit value representing the number of milliseconds - * since the SDL library initialized. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_TICKS_PASSED - */ -extern DECLSPEC Uint32 SDLCALL SDL_GetTicks(void); - -/** - * Get the number of milliseconds since SDL library initialization. - * - * Note that you should not use the SDL_TICKS_PASSED macro with values - * returned by this function, as that macro does clever math to compensate for - * the 32-bit overflow every ~49 days that SDL_GetTicks() suffers from. 64-bit - * values from this function can be safely compared directly. - * - * For example, if you want to wait 100 ms, you could do this: - * - * ```c - * const Uint64 timeout = SDL_GetTicks64() + 100; - * while (SDL_GetTicks64() < timeout) { - * // ... do work until timeout has elapsed - * } - * ``` - * - * \returns an unsigned 64-bit value representing the number of milliseconds - * since the SDL library initialized. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC Uint64 SDLCALL SDL_GetTicks64(void); - -/** - * Compare 32-bit SDL ticks values, and return true if `A` has passed `B`. - * - * This should be used with results from SDL_GetTicks(), as this macro - * attempts to deal with the 32-bit counter wrapping back to zero every ~49 - * days, but should _not_ be used with SDL_GetTicks64(), which does not have - * that problem. - * - * For example, with SDL_GetTicks(), if you want to wait 100 ms, you could - * do this: - * - * ```c - * const Uint32 timeout = SDL_GetTicks() + 100; - * while (!SDL_TICKS_PASSED(SDL_GetTicks(), timeout)) { - * // ... do work until timeout has elapsed - * } - * ``` - * - * Note that this does not handle tick differences greater - * than 2^31 so take care when using the above kind of code - * with large timeout delays (tens of days). - */ -#define SDL_TICKS_PASSED(A, B) ((Sint32)((B) - (A)) <= 0) - -/** - * Get the current value of the high resolution counter. - * - * This function is typically used for profiling. - * - * The counter values are only meaningful relative to each other. Differences - * between values can be converted to times by using - * SDL_GetPerformanceFrequency(). - * - * \returns the current counter value. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetPerformanceFrequency - */ -extern DECLSPEC Uint64 SDLCALL SDL_GetPerformanceCounter(void); - -/** - * Get the count per second of the high resolution counter. - * - * \returns a platform-specific count per second. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetPerformanceCounter - */ -extern DECLSPEC Uint64 SDLCALL SDL_GetPerformanceFrequency(void); - -/** - * Wait a specified number of milliseconds before returning. - * - * This function waits a specified number of milliseconds before returning. It - * waits at least the specified time, but possibly longer due to OS - * scheduling. - * - * \param ms the number of milliseconds to delay - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC void SDLCALL SDL_Delay(Uint32 ms); - -/** - * Function prototype for the timer callback function. - * - * The callback function is passed the current timer interval and returns - * the next timer interval. If the returned value is the same as the one - * passed in, the periodic alarm continues, otherwise a new alarm is - * scheduled. If the callback returns 0, the periodic alarm is cancelled. - */ -typedef Uint32 (SDLCALL * SDL_TimerCallback) (Uint32 interval, void *param); - -/** - * Definition of the timer ID type. - */ -typedef int SDL_TimerID; - -/** - * Call a callback function at a future time. - * - * If you use this function, you must pass `SDL_INIT_TIMER` to SDL_Init(). - * - * The callback function is passed the current timer interval and the user - * supplied parameter from the SDL_AddTimer() call and should return the next - * timer interval. If the value returned from the callback is 0, the timer is - * canceled. - * - * The callback is run on a separate thread. - * - * Timers take into account the amount of time it took to execute the - * callback. For example, if the callback took 250 ms to execute and returned - * 1000 (ms), the timer would only wait another 750 ms before its next - * iteration. - * - * Timing may be inexact due to OS scheduling. Be sure to note the current - * time with SDL_GetTicks() or SDL_GetPerformanceCounter() in case your - * callback needs to adjust for variances. - * - * \param interval the timer delay, in milliseconds, passed to `callback` - * \param callback the SDL_TimerCallback function to call when the specified - * `interval` elapses - * \param param a pointer that is passed to `callback` - * \returns a timer ID or 0 if an error occurs; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RemoveTimer - */ -extern DECLSPEC SDL_TimerID SDLCALL SDL_AddTimer(Uint32 interval, - SDL_TimerCallback callback, - void *param); - -/** - * Remove a timer created with SDL_AddTimer(). - * - * \param id the ID of the timer to remove - * \returns SDL_TRUE if the timer is removed or SDL_FALSE if the timer wasn't - * found. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_AddTimer - */ -extern DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer(SDL_TimerID id); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_timer_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_timer.h.blob deleted file mode 100644 index 6417e11c4de1b360d0efe1c0ca102fbb5cc9d3d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18012 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 NH{Uk9M|{fn{};6Mh3NnQ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h deleted file mode 100644 index c12d4a1c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h +++ /dev/null @@ -1,150 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_touch.h - * - * Include file for SDL touch event handling. - */ - -#ifndef SDL_touch_h_ -#define SDL_touch_h_ - -#include "SDL_stdinc.h" -#include "SDL_error.h" -#include "SDL_video.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -typedef Sint64 SDL_TouchID; -typedef Sint64 SDL_FingerID; - -typedef enum -{ - SDL_TOUCH_DEVICE_INVALID = -1, - SDL_TOUCH_DEVICE_DIRECT, /* touch screen with window-relative coordinates */ - SDL_TOUCH_DEVICE_INDIRECT_ABSOLUTE, /* trackpad with absolute device coordinates */ - SDL_TOUCH_DEVICE_INDIRECT_RELATIVE /* trackpad with screen cursor-relative coordinates */ -} SDL_TouchDeviceType; - -typedef struct SDL_Finger -{ - SDL_FingerID id; - float x; - float y; - float pressure; -} SDL_Finger; - -/* Used as the device ID for mouse events simulated with touch input */ -#define SDL_TOUCH_MOUSEID ((Uint32)-1) - -/* Used as the SDL_TouchID for touch events simulated with mouse input */ -#define SDL_MOUSE_TOUCHID ((Sint64)-1) - - -/** - * Get the number of registered touch devices. - * - * On some platforms SDL first sees the touch device if it was actually used. - * Therefore SDL_GetNumTouchDevices() may return 0 although devices are - * available. After using all devices at least once the number will be - * correct. - * - * This was fixed for Android in SDL 2.0.1. - * - * \returns the number of registered touch devices. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetTouchDevice - */ -extern DECLSPEC int SDLCALL SDL_GetNumTouchDevices(void); - -/** - * Get the touch ID with the given index. - * - * \param index the touch device index - * \returns the touch ID with the given index on success or 0 if the index is - * invalid; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumTouchDevices - */ -extern DECLSPEC SDL_TouchID SDLCALL SDL_GetTouchDevice(int index); - -/** - * Get the touch device name as reported from the driver or NULL if the index - * is invalid. - * - * \since This function is available since SDL 2.0.22. - */ -extern DECLSPEC const char* SDLCALL SDL_GetTouchName(int index); - -/** - * Get the type of the given touch device. - * - * \since This function is available since SDL 2.0.10. - */ -extern DECLSPEC SDL_TouchDeviceType SDLCALL SDL_GetTouchDeviceType(SDL_TouchID touchID); - -/** - * Get the number of active fingers for a given touch device. - * - * \param touchID the ID of a touch device - * \returns the number of active fingers for a given touch device on success - * or 0 on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetTouchFinger - */ -extern DECLSPEC int SDLCALL SDL_GetNumTouchFingers(SDL_TouchID touchID); - -/** - * Get the finger object for specified touch device ID and finger index. - * - * The returned resource is owned by SDL and should not be deallocated. - * - * \param touchID the ID of the requested touch device - * \param index the index of the requested finger - * \returns a pointer to the SDL_Finger object or NULL if no object at the - * given ID and index could be found. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_RecordGesture - */ -extern DECLSPEC SDL_Finger * SDLCALL SDL_GetTouchFinger(SDL_TouchID touchID, int index); - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_touch_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_touch.h.blob deleted file mode 100644 index 7bda64a8a1eeaee5f6eda844f7661e1b5497384e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16720 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h deleted file mode 100644 index 7585eece..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h +++ /dev/null @@ -1,204 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_version.h - * - * This header defines the current SDL version. - */ - -#ifndef SDL_version_h_ -#define SDL_version_h_ - -#include "SDL_stdinc.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Information about the version of SDL in use. - * - * Represents the library's version as three levels: major revision - * (increments with massive changes, additions, and enhancements), - * minor revision (increments with backwards-compatible changes to the - * major revision), and patchlevel (increments with fixes to the minor - * revision). - * - * \sa SDL_VERSION - * \sa SDL_GetVersion - */ -typedef struct SDL_version -{ - Uint8 major; /**< major version */ - Uint8 minor; /**< minor version */ - Uint8 patch; /**< update version */ -} SDL_version; - -/* Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL -*/ -#define SDL_MAJOR_VERSION 2 -#define SDL_MINOR_VERSION 28 -#define SDL_PATCHLEVEL 5 - -/** - * Macro to determine SDL version program was compiled against. - * - * This macro fills in a SDL_version structure with the version of the - * library you compiled against. This is determined by what header the - * compiler uses. Note that if you dynamically linked the library, you might - * have a slightly newer or older version at runtime. That version can be - * determined with SDL_GetVersion(), which, unlike SDL_VERSION(), - * is not a macro. - * - * \param x A pointer to a SDL_version struct to initialize. - * - * \sa SDL_version - * \sa SDL_GetVersion - */ -#define SDL_VERSION(x) \ -{ \ - (x)->major = SDL_MAJOR_VERSION; \ - (x)->minor = SDL_MINOR_VERSION; \ - (x)->patch = SDL_PATCHLEVEL; \ -} - -/* TODO: Remove this whole block in SDL 3 */ -#if SDL_MAJOR_VERSION < 3 -/** - * This macro turns the version numbers into a numeric value: - * \verbatim - (1,2,3) -> (1203) - \endverbatim - * - * This assumes that there will never be more than 100 patchlevels. - * - * In versions higher than 2.9.0, the minor version overflows into - * the thousands digit: for example, 2.23.0 is encoded as 4300, - * and 2.255.99 would be encoded as 25799. - * This macro will not be available in SDL 3.x. - */ -#define SDL_VERSIONNUM(X, Y, Z) \ - ((X)*1000 + (Y)*100 + (Z)) - -/** - * This is the version number macro for the current SDL version. - * - * In versions higher than 2.9.0, the minor version overflows into - * the thousands digit: for example, 2.23.0 is encoded as 4300. - * This macro will not be available in SDL 3.x. - * - * Deprecated, use SDL_VERSION_ATLEAST or SDL_VERSION instead. - */ -#define SDL_COMPILEDVERSION \ - SDL_VERSIONNUM(SDL_MAJOR_VERSION, SDL_MINOR_VERSION, SDL_PATCHLEVEL) -#endif /* SDL_MAJOR_VERSION < 3 */ - -/** - * This macro will evaluate to true if compiled with SDL at least X.Y.Z. - */ -#define SDL_VERSION_ATLEAST(X, Y, Z) \ - ((SDL_MAJOR_VERSION >= X) && \ - (SDL_MAJOR_VERSION > X || SDL_MINOR_VERSION >= Y) && \ - (SDL_MAJOR_VERSION > X || SDL_MINOR_VERSION > Y || SDL_PATCHLEVEL >= Z)) - -/** - * Get the version of SDL that is linked against your program. - * - * If you are linking to SDL dynamically, then it is possible that the current - * version will be different than the version you compiled against. This - * function returns the current version, while SDL_VERSION() is a macro that - * tells you what version you compiled with. - * - * This function may be called safely at any time, even before SDL_Init(). - * - * \param ver the SDL_version structure that contains the version information - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRevision - */ -extern DECLSPEC void SDLCALL SDL_GetVersion(SDL_version * ver); - -/** - * Get the code revision of SDL that is linked against your program. - * - * This value is the revision of the code you are linked with and may be - * different from the code you are compiling with, which is found in the - * constant SDL_REVISION. - * - * The revision is arbitrary string (a hash value) uniquely identifying the - * exact revision of the SDL library in use, and is only useful in comparing - * against other revisions. It is NOT an incrementing number. - * - * If SDL wasn't built from a git repository with the appropriate tools, this - * will return an empty string. - * - * Prior to SDL 2.0.16, before development moved to GitHub, this returned a - * hash for a Mercurial repository. - * - * You shouldn't use this function for anything but logging it for debugging - * purposes. The string is not intended to be reliable in any way. - * - * \returns an arbitrary string, uniquely identifying the exact revision of - * the SDL library in use. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetVersion - */ -extern DECLSPEC const char *SDLCALL SDL_GetRevision(void); - -/** - * Obsolete function, do not use. - * - * When SDL was hosted in a Mercurial repository, and was built carefully, - * this would return the revision number that the build was created from. This - * number was not reliable for several reasons, but more importantly, SDL is - * now hosted in a git repository, which does not offer numbers at all, only - * hashes. This function only ever returns zero now. Don't use it. - * - * Before SDL 2.0.16, this might have returned an unreliable, but non-zero - * number. - * - * \deprecated Use SDL_GetRevision() instead; if SDL was carefully built, it - * will return a git hash. - * - * \returns zero, always, in modern SDL releases. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetRevision - */ -extern SDL_DEPRECATED DECLSPEC int SDLCALL SDL_GetRevisionNumber(void); - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_version_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_version.h.blob deleted file mode 100644 index 5e0c36533b72d0e1f01b5862f1730d75591f3003..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17022 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h deleted file mode 100644 index c8b2d7a0..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h +++ /dev/null @@ -1,2178 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file SDL_video.h - * - * Header file for SDL video functions. - */ - -#ifndef SDL_video_h_ -#define SDL_video_h_ - -#include "SDL_stdinc.h" -#include "SDL_pixels.h" -#include "SDL_rect.h" -#include "SDL_surface.h" - -#include "begin_code.h" -/* Set up for C function definitions, even when using C++ */ -#ifdef __cplusplus -extern "C" { -#endif - -/** - * \brief The structure that defines a display mode - * - * \sa SDL_GetNumDisplayModes() - * \sa SDL_GetDisplayMode() - * \sa SDL_GetDesktopDisplayMode() - * \sa SDL_GetCurrentDisplayMode() - * \sa SDL_GetClosestDisplayMode() - * \sa SDL_SetWindowDisplayMode() - * \sa SDL_GetWindowDisplayMode() - */ -typedef struct -{ - Uint32 format; /**< pixel format */ - int w; /**< width, in screen coordinates */ - int h; /**< height, in screen coordinates */ - int refresh_rate; /**< refresh rate (or zero for unspecified) */ - void *driverdata; /**< driver-specific data, initialize to 0 */ -} SDL_DisplayMode; - -/** - * \brief The type used to identify a window - * - * \sa SDL_CreateWindow() - * \sa SDL_CreateWindowFrom() - * \sa SDL_DestroyWindow() - * \sa SDL_FlashWindow() - * \sa SDL_GetWindowData() - * \sa SDL_GetWindowFlags() - * \sa SDL_GetWindowGrab() - * \sa SDL_GetWindowKeyboardGrab() - * \sa SDL_GetWindowMouseGrab() - * \sa SDL_GetWindowPosition() - * \sa SDL_GetWindowSize() - * \sa SDL_GetWindowTitle() - * \sa SDL_HideWindow() - * \sa SDL_MaximizeWindow() - * \sa SDL_MinimizeWindow() - * \sa SDL_RaiseWindow() - * \sa SDL_RestoreWindow() - * \sa SDL_SetWindowData() - * \sa SDL_SetWindowFullscreen() - * \sa SDL_SetWindowGrab() - * \sa SDL_SetWindowKeyboardGrab() - * \sa SDL_SetWindowMouseGrab() - * \sa SDL_SetWindowIcon() - * \sa SDL_SetWindowPosition() - * \sa SDL_SetWindowSize() - * \sa SDL_SetWindowBordered() - * \sa SDL_SetWindowResizable() - * \sa SDL_SetWindowTitle() - * \sa SDL_ShowWindow() - */ -typedef struct SDL_Window SDL_Window; - -/** - * \brief The flags on a window - * - * \sa SDL_GetWindowFlags() - */ -typedef enum -{ - SDL_WINDOW_FULLSCREEN = 0x00000001, /**< fullscreen window */ - SDL_WINDOW_OPENGL = 0x00000002, /**< window usable with OpenGL context */ - SDL_WINDOW_SHOWN = 0x00000004, /**< window is visible */ - SDL_WINDOW_HIDDEN = 0x00000008, /**< window is not visible */ - SDL_WINDOW_BORDERLESS = 0x00000010, /**< no window decoration */ - SDL_WINDOW_RESIZABLE = 0x00000020, /**< window can be resized */ - SDL_WINDOW_MINIMIZED = 0x00000040, /**< window is minimized */ - SDL_WINDOW_MAXIMIZED = 0x00000080, /**< window is maximized */ - SDL_WINDOW_MOUSE_GRABBED = 0x00000100, /**< window has grabbed mouse input */ - SDL_WINDOW_INPUT_FOCUS = 0x00000200, /**< window has input focus */ - SDL_WINDOW_MOUSE_FOCUS = 0x00000400, /**< window has mouse focus */ - SDL_WINDOW_FULLSCREEN_DESKTOP = ( SDL_WINDOW_FULLSCREEN | 0x00001000 ), - SDL_WINDOW_FOREIGN = 0x00000800, /**< window not created by SDL */ - SDL_WINDOW_ALLOW_HIGHDPI = 0x00002000, /**< window should be created in high-DPI mode if supported. - On macOS NSHighResolutionCapable must be set true in the - application's Info.plist for this to have any effect. */ - SDL_WINDOW_MOUSE_CAPTURE = 0x00004000, /**< window has mouse captured (unrelated to MOUSE_GRABBED) */ - SDL_WINDOW_ALWAYS_ON_TOP = 0x00008000, /**< window should always be above others */ - SDL_WINDOW_SKIP_TASKBAR = 0x00010000, /**< window should not be added to the taskbar */ - SDL_WINDOW_UTILITY = 0x00020000, /**< window should be treated as a utility window */ - SDL_WINDOW_TOOLTIP = 0x00040000, /**< window should be treated as a tooltip */ - SDL_WINDOW_POPUP_MENU = 0x00080000, /**< window should be treated as a popup menu */ - SDL_WINDOW_KEYBOARD_GRABBED = 0x00100000, /**< window has grabbed keyboard input */ - SDL_WINDOW_VULKAN = 0x10000000, /**< window usable for Vulkan surface */ - SDL_WINDOW_METAL = 0x20000000, /**< window usable for Metal view */ - - SDL_WINDOW_INPUT_GRABBED = SDL_WINDOW_MOUSE_GRABBED /**< equivalent to SDL_WINDOW_MOUSE_GRABBED for compatibility */ -} SDL_WindowFlags; - -/** - * \brief Used to indicate that you don't care what the window position is. - */ -#define SDL_WINDOWPOS_UNDEFINED_MASK 0x1FFF0000u -#define SDL_WINDOWPOS_UNDEFINED_DISPLAY(X) (SDL_WINDOWPOS_UNDEFINED_MASK|(X)) -#define SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED_DISPLAY(0) -#define SDL_WINDOWPOS_ISUNDEFINED(X) \ - (((X)&0xFFFF0000) == SDL_WINDOWPOS_UNDEFINED_MASK) - -/** - * \brief Used to indicate that the window position should be centered. - */ -#define SDL_WINDOWPOS_CENTERED_MASK 0x2FFF0000u -#define SDL_WINDOWPOS_CENTERED_DISPLAY(X) (SDL_WINDOWPOS_CENTERED_MASK|(X)) -#define SDL_WINDOWPOS_CENTERED SDL_WINDOWPOS_CENTERED_DISPLAY(0) -#define SDL_WINDOWPOS_ISCENTERED(X) \ - (((X)&0xFFFF0000) == SDL_WINDOWPOS_CENTERED_MASK) - -/** - * \brief Event subtype for window events - */ -typedef enum -{ - SDL_WINDOWEVENT_NONE, /**< Never used */ - SDL_WINDOWEVENT_SHOWN, /**< Window has been shown */ - SDL_WINDOWEVENT_HIDDEN, /**< Window has been hidden */ - SDL_WINDOWEVENT_EXPOSED, /**< Window has been exposed and should be - redrawn */ - SDL_WINDOWEVENT_MOVED, /**< Window has been moved to data1, data2 - */ - SDL_WINDOWEVENT_RESIZED, /**< Window has been resized to data1xdata2 */ - SDL_WINDOWEVENT_SIZE_CHANGED, /**< The window size has changed, either as - a result of an API call or through the - system or user changing the window size. */ - SDL_WINDOWEVENT_MINIMIZED, /**< Window has been minimized */ - SDL_WINDOWEVENT_MAXIMIZED, /**< Window has been maximized */ - SDL_WINDOWEVENT_RESTORED, /**< Window has been restored to normal size - and position */ - SDL_WINDOWEVENT_ENTER, /**< Window has gained mouse focus */ - SDL_WINDOWEVENT_LEAVE, /**< Window has lost mouse focus */ - SDL_WINDOWEVENT_FOCUS_GAINED, /**< Window has gained keyboard focus */ - SDL_WINDOWEVENT_FOCUS_LOST, /**< Window has lost keyboard focus */ - SDL_WINDOWEVENT_CLOSE, /**< The window manager requests that the window be closed */ - SDL_WINDOWEVENT_TAKE_FOCUS, /**< Window is being offered a focus (should SetWindowInputFocus() on itself or a subwindow, or ignore) */ - SDL_WINDOWEVENT_HIT_TEST, /**< Window had a hit test that wasn't SDL_HITTEST_NORMAL. */ - SDL_WINDOWEVENT_ICCPROF_CHANGED,/**< The ICC profile of the window's display has changed. */ - SDL_WINDOWEVENT_DISPLAY_CHANGED /**< Window has been moved to display data1. */ -} SDL_WindowEventID; - -/** - * \brief Event subtype for display events - */ -typedef enum -{ - SDL_DISPLAYEVENT_NONE, /**< Never used */ - SDL_DISPLAYEVENT_ORIENTATION, /**< Display orientation has changed to data1 */ - SDL_DISPLAYEVENT_CONNECTED, /**< Display has been added to the system */ - SDL_DISPLAYEVENT_DISCONNECTED, /**< Display has been removed from the system */ - SDL_DISPLAYEVENT_MOVED /**< Display has changed position */ -} SDL_DisplayEventID; - -/** - * \brief Display orientation - */ -typedef enum -{ - SDL_ORIENTATION_UNKNOWN, /**< The display orientation can't be determined */ - SDL_ORIENTATION_LANDSCAPE, /**< The display is in landscape mode, with the right side up, relative to portrait mode */ - SDL_ORIENTATION_LANDSCAPE_FLIPPED, /**< The display is in landscape mode, with the left side up, relative to portrait mode */ - SDL_ORIENTATION_PORTRAIT, /**< The display is in portrait mode */ - SDL_ORIENTATION_PORTRAIT_FLIPPED /**< The display is in portrait mode, upside down */ -} SDL_DisplayOrientation; - -/** - * \brief Window flash operation - */ -typedef enum -{ - SDL_FLASH_CANCEL, /**< Cancel any window flash state */ - SDL_FLASH_BRIEFLY, /**< Flash the window briefly to get attention */ - SDL_FLASH_UNTIL_FOCUSED /**< Flash the window until it gets focus */ -} SDL_FlashOperation; - -/** - * \brief An opaque handle to an OpenGL context. - */ -typedef void *SDL_GLContext; - -/** - * \brief OpenGL configuration attributes - */ -typedef enum -{ - SDL_GL_RED_SIZE, - SDL_GL_GREEN_SIZE, - SDL_GL_BLUE_SIZE, - SDL_GL_ALPHA_SIZE, - SDL_GL_BUFFER_SIZE, - SDL_GL_DOUBLEBUFFER, - SDL_GL_DEPTH_SIZE, - SDL_GL_STENCIL_SIZE, - SDL_GL_ACCUM_RED_SIZE, - SDL_GL_ACCUM_GREEN_SIZE, - SDL_GL_ACCUM_BLUE_SIZE, - SDL_GL_ACCUM_ALPHA_SIZE, - SDL_GL_STEREO, - SDL_GL_MULTISAMPLEBUFFERS, - SDL_GL_MULTISAMPLESAMPLES, - SDL_GL_ACCELERATED_VISUAL, - SDL_GL_RETAINED_BACKING, - SDL_GL_CONTEXT_MAJOR_VERSION, - SDL_GL_CONTEXT_MINOR_VERSION, - SDL_GL_CONTEXT_EGL, - SDL_GL_CONTEXT_FLAGS, - SDL_GL_CONTEXT_PROFILE_MASK, - SDL_GL_SHARE_WITH_CURRENT_CONTEXT, - SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, - SDL_GL_CONTEXT_RELEASE_BEHAVIOR, - SDL_GL_CONTEXT_RESET_NOTIFICATION, - SDL_GL_CONTEXT_NO_ERROR, - SDL_GL_FLOATBUFFERS -} SDL_GLattr; - -typedef enum -{ - SDL_GL_CONTEXT_PROFILE_CORE = 0x0001, - SDL_GL_CONTEXT_PROFILE_COMPATIBILITY = 0x0002, - SDL_GL_CONTEXT_PROFILE_ES = 0x0004 /**< GLX_CONTEXT_ES2_PROFILE_BIT_EXT */ -} SDL_GLprofile; - -typedef enum -{ - SDL_GL_CONTEXT_DEBUG_FLAG = 0x0001, - SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG = 0x0002, - SDL_GL_CONTEXT_ROBUST_ACCESS_FLAG = 0x0004, - SDL_GL_CONTEXT_RESET_ISOLATION_FLAG = 0x0008 -} SDL_GLcontextFlag; - -typedef enum -{ - SDL_GL_CONTEXT_RELEASE_BEHAVIOR_NONE = 0x0000, - SDL_GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x0001 -} SDL_GLcontextReleaseFlag; - -typedef enum -{ - SDL_GL_CONTEXT_RESET_NO_NOTIFICATION = 0x0000, - SDL_GL_CONTEXT_RESET_LOSE_CONTEXT = 0x0001 -} SDL_GLContextResetNotification; - -/* Function prototypes */ - -/** - * Get the number of video drivers compiled into SDL. - * - * \returns a number >= 1 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetVideoDriver - */ -extern DECLSPEC int SDLCALL SDL_GetNumVideoDrivers(void); - -/** - * Get the name of a built in video driver. - * - * The video drivers are presented in the order in which they are normally - * checked during initialization. - * - * \param index the index of a video driver - * \returns the name of the video driver with the given **index**. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumVideoDrivers - */ -extern DECLSPEC const char *SDLCALL SDL_GetVideoDriver(int index); - -/** - * Initialize the video subsystem, optionally specifying a video driver. - * - * This function initializes the video subsystem, setting up a connection to - * the window manager, etc, and determines the available display modes and - * pixel formats, but does not initialize a window or graphics mode. - * - * If you use this function and you haven't used the SDL_INIT_VIDEO flag with - * either SDL_Init() or SDL_InitSubSystem(), you should call SDL_VideoQuit() - * before calling SDL_Quit(). - * - * It is safe to call this function multiple times. SDL_VideoInit() will call - * SDL_VideoQuit() itself if the video subsystem has already been initialized. - * - * You can use SDL_GetNumVideoDrivers() and SDL_GetVideoDriver() to find a - * specific `driver_name`. - * - * \param driver_name the name of a video driver to initialize, or NULL for - * the default driver - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumVideoDrivers - * \sa SDL_GetVideoDriver - * \sa SDL_InitSubSystem - * \sa SDL_VideoQuit - */ -extern DECLSPEC int SDLCALL SDL_VideoInit(const char *driver_name); - -/** - * Shut down the video subsystem, if initialized with SDL_VideoInit(). - * - * This function closes all windows, and restores the original video mode. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_VideoInit - */ -extern DECLSPEC void SDLCALL SDL_VideoQuit(void); - -/** - * Get the name of the currently initialized video driver. - * - * \returns the name of the current video driver or NULL if no driver has been - * initialized. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumVideoDrivers - * \sa SDL_GetVideoDriver - */ -extern DECLSPEC const char *SDLCALL SDL_GetCurrentVideoDriver(void); - -/** - * Get the number of available video displays. - * - * \returns a number >= 1 or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetDisplayBounds - */ -extern DECLSPEC int SDLCALL SDL_GetNumVideoDisplays(void); - -/** - * Get the name of a display in UTF-8 encoding. - * - * \param displayIndex the index of display from which the name should be - * queried - * \returns the name of a display or NULL for an invalid display index or - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC const char * SDLCALL SDL_GetDisplayName(int displayIndex); - -/** - * Get the desktop area represented by a display. - * - * The primary display (`displayIndex` zero) is always located at 0,0. - * - * \param displayIndex the index of the display to query - * \param rect the SDL_Rect structure filled in with the display bounds - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC int SDLCALL SDL_GetDisplayBounds(int displayIndex, SDL_Rect * rect); - -/** - * Get the usable desktop area represented by a display. - * - * The primary display (`displayIndex` zero) is always located at 0,0. - * - * This is the same area as SDL_GetDisplayBounds() reports, but with portions - * reserved by the system removed. For example, on Apple's macOS, this - * subtracts the area occupied by the menu bar and dock. - * - * Setting a window to be fullscreen generally bypasses these unusable areas, - * so these are good guidelines for the maximum space available to a - * non-fullscreen window. - * - * The parameter `rect` is ignored if it is NULL. - * - * This function also returns -1 if the parameter `displayIndex` is out of - * range. - * - * \param displayIndex the index of the display to query the usable bounds - * from - * \param rect the SDL_Rect structure filled in with the display bounds - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_GetDisplayBounds - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC int SDLCALL SDL_GetDisplayUsableBounds(int displayIndex, SDL_Rect * rect); - -/** - * Get the dots/pixels-per-inch for a display. - * - * Diagonal, horizontal and vertical DPI can all be optionally returned if the - * appropriate parameter is non-NULL. - * - * A failure of this function usually means that either no DPI information is - * available or the `displayIndex` is out of range. - * - * **WARNING**: This reports the DPI that the hardware reports, and it is not - * always reliable! It is almost always better to use SDL_GetWindowSize() to - * find the window size, which might be in logical points instead of pixels, - * and then SDL_GL_GetDrawableSize(), SDL_Vulkan_GetDrawableSize(), - * SDL_Metal_GetDrawableSize(), or SDL_GetRendererOutputSize(), and compare - * the two values to get an actual scaling value between the two. We will be - * rethinking how high-dpi details should be managed in SDL3 to make things - * more consistent, reliable, and clear. - * - * \param displayIndex the index of the display from which DPI information - * should be queried - * \param ddpi a pointer filled in with the diagonal DPI of the display; may - * be NULL - * \param hdpi a pointer filled in with the horizontal DPI of the display; may - * be NULL - * \param vdpi a pointer filled in with the vertical DPI of the display; may - * be NULL - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC int SDLCALL SDL_GetDisplayDPI(int displayIndex, float * ddpi, float * hdpi, float * vdpi); - -/** - * Get the orientation of a display. - * - * \param displayIndex the index of the display to query - * \returns The SDL_DisplayOrientation enum value of the display, or - * `SDL_ORIENTATION_UNKNOWN` if it isn't available. - * - * \since This function is available since SDL 2.0.9. - * - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC SDL_DisplayOrientation SDLCALL SDL_GetDisplayOrientation(int displayIndex); - -/** - * Get the number of available display modes. - * - * The `displayIndex` needs to be in the range from 0 to - * SDL_GetNumVideoDisplays() - 1. - * - * \param displayIndex the index of the display to query - * \returns a number >= 1 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetDisplayMode - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC int SDLCALL SDL_GetNumDisplayModes(int displayIndex); - -/** - * Get information about a specific display mode. - * - * The display modes are sorted in this priority: - * - * - width -> largest to smallest - * - height -> largest to smallest - * - bits per pixel -> more colors to fewer colors - * - packed pixel layout -> largest to smallest - * - refresh rate -> highest to lowest - * - * \param displayIndex the index of the display to query - * \param modeIndex the index of the display mode to query - * \param mode an SDL_DisplayMode structure filled in with the mode at - * `modeIndex` - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetNumDisplayModes - */ -extern DECLSPEC int SDLCALL SDL_GetDisplayMode(int displayIndex, int modeIndex, - SDL_DisplayMode * mode); - -/** - * Get information about the desktop's display mode. - * - * There's a difference between this function and SDL_GetCurrentDisplayMode() - * when SDL runs fullscreen and has changed the resolution. In that case this - * function will return the previous native display mode, and not the current - * display mode. - * - * \param displayIndex the index of the display to query - * \param mode an SDL_DisplayMode structure filled in with the current display - * mode - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetCurrentDisplayMode - * \sa SDL_GetDisplayMode - * \sa SDL_SetWindowDisplayMode - */ -extern DECLSPEC int SDLCALL SDL_GetDesktopDisplayMode(int displayIndex, SDL_DisplayMode * mode); - -/** - * Get information about the current display mode. - * - * There's a difference between this function and SDL_GetDesktopDisplayMode() - * when SDL runs fullscreen and has changed the resolution. In that case this - * function will return the current display mode, and not the previous native - * display mode. - * - * \param displayIndex the index of the display to query - * \param mode an SDL_DisplayMode structure filled in with the current display - * mode - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetDesktopDisplayMode - * \sa SDL_GetDisplayMode - * \sa SDL_GetNumVideoDisplays - * \sa SDL_SetWindowDisplayMode - */ -extern DECLSPEC int SDLCALL SDL_GetCurrentDisplayMode(int displayIndex, SDL_DisplayMode * mode); - - -/** - * Get the closest match to the requested display mode. - * - * The available display modes are scanned and `closest` is filled in with the - * closest mode matching the requested mode and returned. The mode format and - * refresh rate default to the desktop mode if they are set to 0. The modes - * are scanned with size being first priority, format being second priority, - * and finally checking the refresh rate. If all the available modes are too - * small, then NULL is returned. - * - * \param displayIndex the index of the display to query - * \param mode an SDL_DisplayMode structure containing the desired display - * mode - * \param closest an SDL_DisplayMode structure filled in with the closest - * match of the available display modes - * \returns the passed in value `closest` or NULL if no matching video mode - * was available; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetDisplayMode - * \sa SDL_GetNumDisplayModes - */ -extern DECLSPEC SDL_DisplayMode * SDLCALL SDL_GetClosestDisplayMode(int displayIndex, const SDL_DisplayMode * mode, SDL_DisplayMode * closest); - -/** - * Get the index of the display containing a point - * - * \param point the point to query - * \returns the index of the display containing the point or a negative error - * code on failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GetDisplayBounds - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC int SDLCALL SDL_GetPointDisplayIndex(const SDL_Point * point); - -/** - * Get the index of the display primarily containing a rect - * - * \param rect the rect to query - * \returns the index of the display entirely containing the rect or closest - * to the center of the rect on success or a negative error code on - * failure; call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.24.0. - * - * \sa SDL_GetDisplayBounds - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC int SDLCALL SDL_GetRectDisplayIndex(const SDL_Rect * rect); - -/** - * Get the index of the display associated with a window. - * - * \param window the window to query - * \returns the index of the display containing the center of the window on - * success or a negative error code on failure; call SDL_GetError() - * for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetDisplayBounds - * \sa SDL_GetNumVideoDisplays - */ -extern DECLSPEC int SDLCALL SDL_GetWindowDisplayIndex(SDL_Window * window); - -/** - * Set the display mode to use when a window is visible at fullscreen. - * - * This only affects the display mode used when the window is fullscreen. To - * change the window size when the window is not fullscreen, use - * SDL_SetWindowSize(). - * - * \param window the window to affect - * \param mode the SDL_DisplayMode structure representing the mode to use, or - * NULL to use the window's dimensions and the desktop's format - * and refresh rate - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowDisplayMode - * \sa SDL_SetWindowFullscreen - */ -extern DECLSPEC int SDLCALL SDL_SetWindowDisplayMode(SDL_Window * window, - const SDL_DisplayMode * mode); - -/** - * Query the display mode to use when a window is visible at fullscreen. - * - * \param window the window to query - * \param mode an SDL_DisplayMode structure filled in with the fullscreen - * display mode - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetWindowDisplayMode - * \sa SDL_SetWindowFullscreen - */ -extern DECLSPEC int SDLCALL SDL_GetWindowDisplayMode(SDL_Window * window, - SDL_DisplayMode * mode); - -/** - * Get the raw ICC profile data for the screen the window is currently on. - * - * Data returned should be freed with SDL_free. - * - * \param window the window to query - * \param size the size of the ICC profile - * \returns the raw ICC profile data on success or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.18. - */ -extern DECLSPEC void* SDLCALL SDL_GetWindowICCProfile(SDL_Window * window, size_t* size); - -/** - * Get the pixel format associated with the window. - * - * \param window the window to query - * \returns the pixel format of the window on success or - * SDL_PIXELFORMAT_UNKNOWN on failure; call SDL_GetError() for more - * information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC Uint32 SDLCALL SDL_GetWindowPixelFormat(SDL_Window * window); - -/** - * Create a window with the specified position, dimensions, and flags. - * - * `flags` may be any of the following OR'd together: - * - * - `SDL_WINDOW_FULLSCREEN`: fullscreen window - * - `SDL_WINDOW_FULLSCREEN_DESKTOP`: fullscreen window at desktop resolution - * - `SDL_WINDOW_OPENGL`: window usable with an OpenGL context - * - `SDL_WINDOW_VULKAN`: window usable with a Vulkan instance - * - `SDL_WINDOW_METAL`: window usable with a Metal instance - * - `SDL_WINDOW_HIDDEN`: window is not visible - * - `SDL_WINDOW_BORDERLESS`: no window decoration - * - `SDL_WINDOW_RESIZABLE`: window can be resized - * - `SDL_WINDOW_MINIMIZED`: window is minimized - * - `SDL_WINDOW_MAXIMIZED`: window is maximized - * - `SDL_WINDOW_INPUT_GRABBED`: window has grabbed input focus - * - `SDL_WINDOW_ALLOW_HIGHDPI`: window should be created in high-DPI mode if - * supported (>= SDL 2.0.1) - * - * `SDL_WINDOW_SHOWN` is ignored by SDL_CreateWindow(). The SDL_Window is - * implicitly shown if SDL_WINDOW_HIDDEN is not set. `SDL_WINDOW_SHOWN` may be - * queried later using SDL_GetWindowFlags(). - * - * On Apple's macOS, you **must** set the NSHighResolutionCapable Info.plist - * property to YES, otherwise you will not receive a High-DPI OpenGL canvas. - * - * If the window is created with the `SDL_WINDOW_ALLOW_HIGHDPI` flag, its size - * in pixels may differ from its size in screen coordinates on platforms with - * high-DPI support (e.g. iOS and macOS). Use SDL_GetWindowSize() to query the - * client area's size in screen coordinates, and SDL_GL_GetDrawableSize() or - * SDL_GetRendererOutputSize() to query the drawable size in pixels. Note that - * when this flag is set, the drawable size can vary after the window is - * created and should be queried after major window events such as when the - * window is resized or moved between displays. - * - * If the window is set fullscreen, the width and height parameters `w` and - * `h` will not be used. However, invalid size parameters (e.g. too large) may - * still fail. Window size is actually limited to 16384 x 16384 for all - * platforms at window creation. - * - * If the window is created with any of the SDL_WINDOW_OPENGL or - * SDL_WINDOW_VULKAN flags, then the corresponding LoadLibrary function - * (SDL_GL_LoadLibrary or SDL_Vulkan_LoadLibrary) is called and the - * corresponding UnloadLibrary function is called by SDL_DestroyWindow(). - * - * If SDL_WINDOW_VULKAN is specified and there isn't a working Vulkan driver, - * SDL_CreateWindow() will fail because SDL_Vulkan_LoadLibrary() will fail. - * - * If SDL_WINDOW_METAL is specified on an OS that does not support Metal, - * SDL_CreateWindow() will fail. - * - * On non-Apple devices, SDL requires you to either not link to the Vulkan - * loader or link to a dynamic library version. This limitation may be removed - * in a future version of SDL. - * - * \param title the title of the window, in UTF-8 encoding - * \param x the x position of the window, `SDL_WINDOWPOS_CENTERED`, or - * `SDL_WINDOWPOS_UNDEFINED` - * \param y the y position of the window, `SDL_WINDOWPOS_CENTERED`, or - * `SDL_WINDOWPOS_UNDEFINED` - * \param w the width of the window, in screen coordinates - * \param h the height of the window, in screen coordinates - * \param flags 0, or one or more SDL_WindowFlags OR'd together - * \returns the window that was created or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateWindowFrom - * \sa SDL_DestroyWindow - */ -extern DECLSPEC SDL_Window * SDLCALL SDL_CreateWindow(const char *title, - int x, int y, int w, - int h, Uint32 flags); - -/** - * Create an SDL window from an existing native window. - * - * In some cases (e.g. OpenGL) and on some platforms (e.g. Microsoft Windows) - * the hint `SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT` needs to be configured - * before using SDL_CreateWindowFrom(). - * - * \param data a pointer to driver-dependent window creation data, typically - * your native window cast to a void* - * \returns the window that was created or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateWindow - * \sa SDL_DestroyWindow - */ -extern DECLSPEC SDL_Window * SDLCALL SDL_CreateWindowFrom(const void *data); - -/** - * Get the numeric ID of a window. - * - * The numeric ID is what SDL_WindowEvent references, and is necessary to map - * these events to specific SDL_Window objects. - * - * \param window the window to query - * \returns the ID of the window on success or 0 on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowFromID - */ -extern DECLSPEC Uint32 SDLCALL SDL_GetWindowID(SDL_Window * window); - -/** - * Get a window from a stored ID. - * - * The numeric ID is what SDL_WindowEvent references, and is necessary to map - * these events to specific SDL_Window objects. - * - * \param id the ID of the window - * \returns the window associated with `id` or NULL if it doesn't exist; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowID - */ -extern DECLSPEC SDL_Window * SDLCALL SDL_GetWindowFromID(Uint32 id); - -/** - * Get the window flags. - * - * \param window the window to query - * \returns a mask of the SDL_WindowFlags associated with `window` - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateWindow - * \sa SDL_HideWindow - * \sa SDL_MaximizeWindow - * \sa SDL_MinimizeWindow - * \sa SDL_SetWindowFullscreen - * \sa SDL_SetWindowGrab - * \sa SDL_ShowWindow - */ -extern DECLSPEC Uint32 SDLCALL SDL_GetWindowFlags(SDL_Window * window); - -/** - * Set the title of a window. - * - * This string is expected to be in UTF-8 encoding. - * - * \param window the window to change - * \param title the desired window title in UTF-8 format - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowTitle - */ -extern DECLSPEC void SDLCALL SDL_SetWindowTitle(SDL_Window * window, - const char *title); - -/** - * Get the title of a window. - * - * \param window the window to query - * \returns the title of the window in UTF-8 format or "" if there is no - * title. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetWindowTitle - */ -extern DECLSPEC const char *SDLCALL SDL_GetWindowTitle(SDL_Window * window); - -/** - * Set the icon for a window. - * - * \param window the window to change - * \param icon an SDL_Surface structure containing the icon for the window - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC void SDLCALL SDL_SetWindowIcon(SDL_Window * window, - SDL_Surface * icon); - -/** - * Associate an arbitrary named pointer with a window. - * - * `name` is case-sensitive. - * - * \param window the window to associate with the pointer - * \param name the name of the pointer - * \param userdata the associated pointer - * \returns the previous value associated with `name`. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowData - */ -extern DECLSPEC void* SDLCALL SDL_SetWindowData(SDL_Window * window, - const char *name, - void *userdata); - -/** - * Retrieve the data pointer associated with a window. - * - * \param window the window to query - * \param name the name of the pointer - * \returns the value associated with `name`. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetWindowData - */ -extern DECLSPEC void *SDLCALL SDL_GetWindowData(SDL_Window * window, - const char *name); - -/** - * Set the position of a window. - * - * The window coordinate origin is the upper left of the display. - * - * \param window the window to reposition - * \param x the x coordinate of the window in screen coordinates, or - * `SDL_WINDOWPOS_CENTERED` or `SDL_WINDOWPOS_UNDEFINED` - * \param y the y coordinate of the window in screen coordinates, or - * `SDL_WINDOWPOS_CENTERED` or `SDL_WINDOWPOS_UNDEFINED` - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowPosition - */ -extern DECLSPEC void SDLCALL SDL_SetWindowPosition(SDL_Window * window, - int x, int y); - -/** - * Get the position of a window. - * - * If you do not need the value for one of the positions a NULL may be passed - * in the `x` or `y` parameter. - * - * \param window the window to query - * \param x a pointer filled in with the x position of the window, in screen - * coordinates, may be NULL - * \param y a pointer filled in with the y position of the window, in screen - * coordinates, may be NULL - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetWindowPosition - */ -extern DECLSPEC void SDLCALL SDL_GetWindowPosition(SDL_Window * window, - int *x, int *y); - -/** - * Set the size of a window's client area. - * - * The window size in screen coordinates may differ from the size in pixels, - * if the window was created with `SDL_WINDOW_ALLOW_HIGHDPI` on a platform - * with high-dpi support (e.g. iOS or macOS). Use SDL_GL_GetDrawableSize() or - * SDL_GetRendererOutputSize() to get the real client area size in pixels. - * - * Fullscreen windows automatically match the size of the display mode, and - * you should use SDL_SetWindowDisplayMode() to change their size. - * - * \param window the window to change - * \param w the width of the window in pixels, in screen coordinates, must be - * > 0 - * \param h the height of the window in pixels, in screen coordinates, must be - * > 0 - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowSize - * \sa SDL_SetWindowDisplayMode - */ -extern DECLSPEC void SDLCALL SDL_SetWindowSize(SDL_Window * window, int w, - int h); - -/** - * Get the size of a window's client area. - * - * NULL can safely be passed as the `w` or `h` parameter if the width or - * height value is not desired. - * - * The window size in screen coordinates may differ from the size in pixels, - * if the window was created with `SDL_WINDOW_ALLOW_HIGHDPI` on a platform - * with high-dpi support (e.g. iOS or macOS). Use SDL_GL_GetDrawableSize(), - * SDL_Vulkan_GetDrawableSize(), or SDL_GetRendererOutputSize() to get the - * real client area size in pixels. - * - * \param window the window to query the width and height from - * \param w a pointer filled in with the width of the window, in screen - * coordinates, may be NULL - * \param h a pointer filled in with the height of the window, in screen - * coordinates, may be NULL - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_GetDrawableSize - * \sa SDL_Vulkan_GetDrawableSize - * \sa SDL_SetWindowSize - */ -extern DECLSPEC void SDLCALL SDL_GetWindowSize(SDL_Window * window, int *w, - int *h); - -/** - * Get the size of a window's borders (decorations) around the client area. - * - * Note: If this function fails (returns -1), the size values will be - * initialized to 0, 0, 0, 0 (if a non-NULL pointer is provided), as if the - * window in question was borderless. - * - * Note: This function may fail on systems where the window has not yet been - * decorated by the display server (for example, immediately after calling - * SDL_CreateWindow). It is recommended that you wait at least until the - * window has been presented and composited, so that the window system has a - * chance to decorate the window and provide the border dimensions to SDL. - * - * This function also returns -1 if getting the information is not supported. - * - * \param window the window to query the size values of the border - * (decorations) from - * \param top pointer to variable for storing the size of the top border; NULL - * is permitted - * \param left pointer to variable for storing the size of the left border; - * NULL is permitted - * \param bottom pointer to variable for storing the size of the bottom - * border; NULL is permitted - * \param right pointer to variable for storing the size of the right border; - * NULL is permitted - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_GetWindowSize - */ -extern DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window * window, - int *top, int *left, - int *bottom, int *right); - -/** - * Get the size of a window in pixels. - * - * This may differ from SDL_GetWindowSize() if we're rendering to a high-DPI - * drawable, i.e. the window was created with `SDL_WINDOW_ALLOW_HIGHDPI` on a - * platform with high-DPI support (Apple calls this "Retina"), and not - * disabled by the `SDL_HINT_VIDEO_HIGHDPI_DISABLED` hint. - * - * \param window the window from which the drawable size should be queried - * \param w a pointer to variable for storing the width in pixels, may be NULL - * \param h a pointer to variable for storing the height in pixels, may be - * NULL - * - * \since This function is available since SDL 2.26.0. - * - * \sa SDL_CreateWindow - * \sa SDL_GetWindowSize - */ -extern DECLSPEC void SDLCALL SDL_GetWindowSizeInPixels(SDL_Window * window, - int *w, int *h); - -/** - * Set the minimum size of a window's client area. - * - * \param window the window to change - * \param min_w the minimum width of the window in pixels - * \param min_h the minimum height of the window in pixels - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowMinimumSize - * \sa SDL_SetWindowMaximumSize - */ -extern DECLSPEC void SDLCALL SDL_SetWindowMinimumSize(SDL_Window * window, - int min_w, int min_h); - -/** - * Get the minimum size of a window's client area. - * - * \param window the window to query - * \param w a pointer filled in with the minimum width of the window, may be - * NULL - * \param h a pointer filled in with the minimum height of the window, may be - * NULL - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowMaximumSize - * \sa SDL_SetWindowMinimumSize - */ -extern DECLSPEC void SDLCALL SDL_GetWindowMinimumSize(SDL_Window * window, - int *w, int *h); - -/** - * Set the maximum size of a window's client area. - * - * \param window the window to change - * \param max_w the maximum width of the window in pixels - * \param max_h the maximum height of the window in pixels - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowMaximumSize - * \sa SDL_SetWindowMinimumSize - */ -extern DECLSPEC void SDLCALL SDL_SetWindowMaximumSize(SDL_Window * window, - int max_w, int max_h); - -/** - * Get the maximum size of a window's client area. - * - * \param window the window to query - * \param w a pointer filled in with the maximum width of the window, may be - * NULL - * \param h a pointer filled in with the maximum height of the window, may be - * NULL - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowMinimumSize - * \sa SDL_SetWindowMaximumSize - */ -extern DECLSPEC void SDLCALL SDL_GetWindowMaximumSize(SDL_Window * window, - int *w, int *h); - -/** - * Set the border state of a window. - * - * This will add or remove the window's `SDL_WINDOW_BORDERLESS` flag and add - * or remove the border from the actual window. This is a no-op if the - * window's border already matches the requested state. - * - * You can't change the border state of a fullscreen window. - * - * \param window the window of which to change the border state - * \param bordered SDL_FALSE to remove border, SDL_TRUE to add border - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowFlags - */ -extern DECLSPEC void SDLCALL SDL_SetWindowBordered(SDL_Window * window, - SDL_bool bordered); - -/** - * Set the user-resizable state of a window. - * - * This will add or remove the window's `SDL_WINDOW_RESIZABLE` flag and - * allow/disallow user resizing of the window. This is a no-op if the window's - * resizable state already matches the requested state. - * - * You can't change the resizable state of a fullscreen window. - * - * \param window the window of which to change the resizable state - * \param resizable SDL_TRUE to allow resizing, SDL_FALSE to disallow - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_GetWindowFlags - */ -extern DECLSPEC void SDLCALL SDL_SetWindowResizable(SDL_Window * window, - SDL_bool resizable); - -/** - * Set the window to always be above the others. - * - * This will add or remove the window's `SDL_WINDOW_ALWAYS_ON_TOP` flag. This - * will bring the window to the front and keep the window above the rest. - * - * \param window The window of which to change the always on top state - * \param on_top SDL_TRUE to set the window always on top, SDL_FALSE to - * disable - * - * \since This function is available since SDL 2.0.16. - * - * \sa SDL_GetWindowFlags - */ -extern DECLSPEC void SDLCALL SDL_SetWindowAlwaysOnTop(SDL_Window * window, - SDL_bool on_top); - -/** - * Show a window. - * - * \param window the window to show - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_HideWindow - * \sa SDL_RaiseWindow - */ -extern DECLSPEC void SDLCALL SDL_ShowWindow(SDL_Window * window); - -/** - * Hide a window. - * - * \param window the window to hide - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_ShowWindow - */ -extern DECLSPEC void SDLCALL SDL_HideWindow(SDL_Window * window); - -/** - * Raise a window above other windows and set the input focus. - * - * \param window the window to raise - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC void SDLCALL SDL_RaiseWindow(SDL_Window * window); - -/** - * Make a window as large as possible. - * - * \param window the window to maximize - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_MinimizeWindow - * \sa SDL_RestoreWindow - */ -extern DECLSPEC void SDLCALL SDL_MaximizeWindow(SDL_Window * window); - -/** - * Minimize a window to an iconic representation. - * - * \param window the window to minimize - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_MaximizeWindow - * \sa SDL_RestoreWindow - */ -extern DECLSPEC void SDLCALL SDL_MinimizeWindow(SDL_Window * window); - -/** - * Restore the size and position of a minimized or maximized window. - * - * \param window the window to restore - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_MaximizeWindow - * \sa SDL_MinimizeWindow - */ -extern DECLSPEC void SDLCALL SDL_RestoreWindow(SDL_Window * window); - -/** - * Set a window's fullscreen state. - * - * `flags` may be `SDL_WINDOW_FULLSCREEN`, for "real" fullscreen with a - * videomode change; `SDL_WINDOW_FULLSCREEN_DESKTOP` for "fake" fullscreen - * that takes the size of the desktop; and 0 for windowed mode. - * - * \param window the window to change - * \param flags `SDL_WINDOW_FULLSCREEN`, `SDL_WINDOW_FULLSCREEN_DESKTOP` or 0 - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowDisplayMode - * \sa SDL_SetWindowDisplayMode - */ -extern DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window * window, - Uint32 flags); - -/** - * Return whether the window has a surface associated with it. - * - * \returns SDL_TRUE if there is a surface associated with the window, or SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.28.0. - * - * \sa SDL_GetWindowSurface - */ -extern DECLSPEC SDL_bool SDLCALL SDL_HasWindowSurface(SDL_Window *window); - -/** - * Get the SDL surface associated with the window. - * - * A new surface will be created with the optimal format for the window, if - * necessary. This surface will be freed when the window is destroyed. Do not - * free this surface. - * - * This surface will be invalidated if the window is resized. After resizing a - * window this function must be called again to return a valid surface. - * - * You may not combine this with 3D or the rendering API on this window. - * - * This function is affected by `SDL_HINT_FRAMEBUFFER_ACCELERATION`. - * - * \param window the window to query - * \returns the surface associated with the window, or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_DestroyWindowSurface - * \sa SDL_HasWindowSurface - * \sa SDL_UpdateWindowSurface - * \sa SDL_UpdateWindowSurfaceRects - */ -extern DECLSPEC SDL_Surface * SDLCALL SDL_GetWindowSurface(SDL_Window * window); - -/** - * Copy the window surface to the screen. - * - * This is the function you use to reflect any changes to the surface on the - * screen. - * - * This function is equivalent to the SDL 1.2 API SDL_Flip(). - * - * \param window the window to update - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowSurface - * \sa SDL_UpdateWindowSurfaceRects - */ -extern DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window * window); - -/** - * Copy areas of the window surface to the screen. - * - * This is the function you use to reflect changes to portions of the surface - * on the screen. - * - * This function is equivalent to the SDL 1.2 API SDL_UpdateRects(). - * - * \param window the window to update - * \param rects an array of SDL_Rect structures representing areas of the - * surface to copy, in pixels - * \param numrects the number of rectangles - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowSurface - * \sa SDL_UpdateWindowSurface - */ -extern DECLSPEC int SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window * window, - const SDL_Rect * rects, - int numrects); - -/** - * Destroy the surface associated with the window. - * - * \param window the window to update - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.28.0. - * - * \sa SDL_GetWindowSurface - * \sa SDL_HasWindowSurface - */ -extern DECLSPEC int SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); - -/** - * Set a window's input grab mode. - * - * When input is grabbed, the mouse is confined to the window. This function - * will also grab the keyboard if `SDL_HINT_GRAB_KEYBOARD` is set. To grab the - * keyboard without also grabbing the mouse, use SDL_SetWindowKeyboardGrab(). - * - * If the caller enables a grab while another window is currently grabbed, the - * other window loses its grab in favor of the caller's window. - * - * \param window the window for which the input grab mode should be set - * \param grabbed SDL_TRUE to grab input or SDL_FALSE to release input - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetGrabbedWindow - * \sa SDL_GetWindowGrab - */ -extern DECLSPEC void SDLCALL SDL_SetWindowGrab(SDL_Window * window, - SDL_bool grabbed); - -/** - * Set a window's keyboard grab mode. - * - * Keyboard grab enables capture of system keyboard shortcuts like Alt+Tab or - * the Meta/Super key. Note that not all system keyboard shortcuts can be - * captured by applications (one example is Ctrl+Alt+Del on Windows). - * - * This is primarily intended for specialized applications such as VNC clients - * or VM frontends. Normal games should not use keyboard grab. - * - * When keyboard grab is enabled, SDL will continue to handle Alt+Tab when the - * window is full-screen to ensure the user is not trapped in your - * application. If you have a custom keyboard shortcut to exit fullscreen - * mode, you may suppress this behavior with - * `SDL_HINT_ALLOW_ALT_TAB_WHILE_GRABBED`. - * - * If the caller enables a grab while another window is currently grabbed, the - * other window loses its grab in favor of the caller's window. - * - * \param window The window for which the keyboard grab mode should be set. - * \param grabbed This is SDL_TRUE to grab keyboard, and SDL_FALSE to release. - * - * \since This function is available since SDL 2.0.16. - * - * \sa SDL_GetWindowKeyboardGrab - * \sa SDL_SetWindowMouseGrab - * \sa SDL_SetWindowGrab - */ -extern DECLSPEC void SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window * window, - SDL_bool grabbed); - -/** - * Set a window's mouse grab mode. - * - * Mouse grab confines the mouse cursor to the window. - * - * \param window The window for which the mouse grab mode should be set. - * \param grabbed This is SDL_TRUE to grab mouse, and SDL_FALSE to release. - * - * \since This function is available since SDL 2.0.16. - * - * \sa SDL_GetWindowMouseGrab - * \sa SDL_SetWindowKeyboardGrab - * \sa SDL_SetWindowGrab - */ -extern DECLSPEC void SDLCALL SDL_SetWindowMouseGrab(SDL_Window * window, - SDL_bool grabbed); - -/** - * Get a window's input grab mode. - * - * \param window the window to query - * \returns SDL_TRUE if input is grabbed, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetWindowGrab - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowGrab(SDL_Window * window); - -/** - * Get a window's keyboard grab mode. - * - * \param window the window to query - * \returns SDL_TRUE if keyboard is grabbed, and SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.16. - * - * \sa SDL_SetWindowKeyboardGrab - * \sa SDL_GetWindowGrab - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowKeyboardGrab(SDL_Window * window); - -/** - * Get a window's mouse grab mode. - * - * \param window the window to query - * \returns SDL_TRUE if mouse is grabbed, and SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.16. - * - * \sa SDL_SetWindowKeyboardGrab - * \sa SDL_GetWindowGrab - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowMouseGrab(SDL_Window * window); - -/** - * Get the window that currently has an input grab enabled. - * - * \returns the window if input is grabbed or NULL otherwise. - * - * \since This function is available since SDL 2.0.4. - * - * \sa SDL_GetWindowGrab - * \sa SDL_SetWindowGrab - */ -extern DECLSPEC SDL_Window * SDLCALL SDL_GetGrabbedWindow(void); - -/** - * Confines the cursor to the specified area of a window. - * - * Note that this does NOT grab the cursor, it only defines the area a cursor - * is restricted to when the window has mouse focus. - * - * \param window The window that will be associated with the barrier. - * \param rect A rectangle area in window-relative coordinates. If NULL the - * barrier for the specified window will be destroyed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_GetWindowMouseRect - * \sa SDL_SetWindowMouseGrab - */ -extern DECLSPEC int SDLCALL SDL_SetWindowMouseRect(SDL_Window * window, const SDL_Rect * rect); - -/** - * Get the mouse confinement rectangle of a window. - * - * \param window The window to query - * \returns A pointer to the mouse confinement rectangle of a window, or NULL - * if there isn't one. - * - * \since This function is available since SDL 2.0.18. - * - * \sa SDL_SetWindowMouseRect - */ -extern DECLSPEC const SDL_Rect * SDLCALL SDL_GetWindowMouseRect(SDL_Window * window); - -/** - * Set the brightness (gamma multiplier) for a given window's display. - * - * Despite the name and signature, this method sets the brightness of the - * entire display, not an individual window. A window is considered to be - * owned by the display that contains the window's center pixel. (The index of - * this display can be retrieved using SDL_GetWindowDisplayIndex().) The - * brightness set will not follow the window if it is moved to another - * display. - * - * Many platforms will refuse to set the display brightness in modern times. - * You are better off using a shader to adjust gamma during rendering, or - * something similar. - * - * \param window the window used to select the display whose brightness will - * be changed - * \param brightness the brightness (gamma multiplier) value to set where 0.0 - * is completely dark and 1.0 is normal brightness - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowBrightness - * \sa SDL_SetWindowGammaRamp - */ -extern DECLSPEC int SDLCALL SDL_SetWindowBrightness(SDL_Window * window, float brightness); - -/** - * Get the brightness (gamma multiplier) for a given window's display. - * - * Despite the name and signature, this method retrieves the brightness of the - * entire display, not an individual window. A window is considered to be - * owned by the display that contains the window's center pixel. (The index of - * this display can be retrieved using SDL_GetWindowDisplayIndex().) - * - * \param window the window used to select the display whose brightness will - * be queried - * \returns the brightness for the display where 0.0 is completely dark and - * 1.0 is normal brightness. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetWindowBrightness - */ -extern DECLSPEC float SDLCALL SDL_GetWindowBrightness(SDL_Window * window); - -/** - * Set the opacity for a window. - * - * The parameter `opacity` will be clamped internally between 0.0f - * (transparent) and 1.0f (opaque). - * - * This function also returns -1 if setting the opacity isn't supported. - * - * \param window the window which will be made transparent or opaque - * \param opacity the opacity value (0.0f - transparent, 1.0f - opaque) - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_GetWindowOpacity - */ -extern DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window * window, float opacity); - -/** - * Get the opacity of a window. - * - * If transparency isn't supported on this platform, opacity will be reported - * as 1.0f without error. - * - * The parameter `opacity` is ignored if it is NULL. - * - * This function also returns -1 if an invalid window was provided. - * - * \param window the window to get the current opacity value from - * \param out_opacity the float filled in (0.0f - transparent, 1.0f - opaque) - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_SetWindowOpacity - */ -extern DECLSPEC int SDLCALL SDL_GetWindowOpacity(SDL_Window * window, float * out_opacity); - -/** - * Set the window as a modal for another window. - * - * \param modal_window the window that should be set modal - * \param parent_window the parent window for the modal window - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - */ -extern DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window * modal_window, SDL_Window * parent_window); - -/** - * Explicitly set input focus to the window. - * - * You almost certainly want SDL_RaiseWindow() instead of this function. Use - * this with caution, as you might give focus to a window that is completely - * obscured by other windows. - * - * \param window the window that should get the input focus - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.5. - * - * \sa SDL_RaiseWindow - */ -extern DECLSPEC int SDLCALL SDL_SetWindowInputFocus(SDL_Window * window); - -/** - * Set the gamma ramp for the display that owns a given window. - * - * Set the gamma translation table for the red, green, and blue channels of - * the video hardware. Each table is an array of 256 16-bit quantities, - * representing a mapping between the input and output for that channel. The - * input is the index into the array, and the output is the 16-bit gamma value - * at that index, scaled to the output color precision. - * - * Despite the name and signature, this method sets the gamma ramp of the - * entire display, not an individual window. A window is considered to be - * owned by the display that contains the window's center pixel. (The index of - * this display can be retrieved using SDL_GetWindowDisplayIndex().) The gamma - * ramp set will not follow the window if it is moved to another display. - * - * \param window the window used to select the display whose gamma ramp will - * be changed - * \param red a 256 element array of 16-bit quantities representing the - * translation table for the red channel, or NULL - * \param green a 256 element array of 16-bit quantities representing the - * translation table for the green channel, or NULL - * \param blue a 256 element array of 16-bit quantities representing the - * translation table for the blue channel, or NULL - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GetWindowGammaRamp - */ -extern DECLSPEC int SDLCALL SDL_SetWindowGammaRamp(SDL_Window * window, - const Uint16 * red, - const Uint16 * green, - const Uint16 * blue); - -/** - * Get the gamma ramp for a given window's display. - * - * Despite the name and signature, this method retrieves the gamma ramp of the - * entire display, not an individual window. A window is considered to be - * owned by the display that contains the window's center pixel. (The index of - * this display can be retrieved using SDL_GetWindowDisplayIndex().) - * - * \param window the window used to select the display whose gamma ramp will - * be queried - * \param red a 256 element array of 16-bit quantities filled in with the - * translation table for the red channel, or NULL - * \param green a 256 element array of 16-bit quantities filled in with the - * translation table for the green channel, or NULL - * \param blue a 256 element array of 16-bit quantities filled in with the - * translation table for the blue channel, or NULL - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_SetWindowGammaRamp - */ -extern DECLSPEC int SDLCALL SDL_GetWindowGammaRamp(SDL_Window * window, - Uint16 * red, - Uint16 * green, - Uint16 * blue); - -/** - * Possible return values from the SDL_HitTest callback. - * - * \sa SDL_HitTest - */ -typedef enum -{ - SDL_HITTEST_NORMAL, /**< Region is normal. No special properties. */ - SDL_HITTEST_DRAGGABLE, /**< Region can drag entire window. */ - SDL_HITTEST_RESIZE_TOPLEFT, - SDL_HITTEST_RESIZE_TOP, - SDL_HITTEST_RESIZE_TOPRIGHT, - SDL_HITTEST_RESIZE_RIGHT, - SDL_HITTEST_RESIZE_BOTTOMRIGHT, - SDL_HITTEST_RESIZE_BOTTOM, - SDL_HITTEST_RESIZE_BOTTOMLEFT, - SDL_HITTEST_RESIZE_LEFT -} SDL_HitTestResult; - -/** - * Callback used for hit-testing. - * - * \param win the SDL_Window where hit-testing was set on - * \param area an SDL_Point which should be hit-tested - * \param data what was passed as `callback_data` to SDL_SetWindowHitTest() - * \return an SDL_HitTestResult value. - * - * \sa SDL_SetWindowHitTest - */ -typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win, - const SDL_Point *area, - void *data); - -/** - * Provide a callback that decides if a window region has special properties. - * - * Normally windows are dragged and resized by decorations provided by the - * system window manager (a title bar, borders, etc), but for some apps, it - * makes sense to drag them from somewhere else inside the window itself; for - * example, one might have a borderless window that wants to be draggable from - * any part, or simulate its own title bar, etc. - * - * This function lets the app provide a callback that designates pieces of a - * given window as special. This callback is run during event processing if we - * need to tell the OS to treat a region of the window specially; the use of - * this callback is known as "hit testing." - * - * Mouse input may not be delivered to your application if it is within a - * special area; the OS will often apply that input to moving the window or - * resizing the window and not deliver it to the application. - * - * Specifying NULL for a callback disables hit-testing. Hit-testing is - * disabled by default. - * - * Platforms that don't support this functionality will return -1 - * unconditionally, even if you're attempting to disable hit-testing. - * - * Your callback may fire at any time, and its firing does not indicate any - * specific behavior (for example, on Windows, this certainly might fire when - * the OS is deciding whether to drag your window, but it fires for lots of - * other reasons, too, some unrelated to anything you probably care about _and - * when the mouse isn't actually at the location it is testing_). Since this - * can fire at any time, you should try to keep your callback efficient, - * devoid of allocations, etc. - * - * \param window the window to set hit-testing on - * \param callback the function to call when doing a hit-test - * \param callback_data an app-defined void pointer passed to **callback** - * \returns 0 on success or -1 on error (including unsupported); call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.4. - */ -extern DECLSPEC int SDLCALL SDL_SetWindowHitTest(SDL_Window * window, - SDL_HitTest callback, - void *callback_data); - -/** - * Request a window to demand attention from the user. - * - * \param window the window to be flashed - * \param operation the flash operation - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.16. - */ -extern DECLSPEC int SDLCALL SDL_FlashWindow(SDL_Window * window, SDL_FlashOperation operation); - -/** - * Destroy a window. - * - * If `window` is NULL, this function will return immediately after setting - * the SDL error message to "Invalid window". See SDL_GetError(). - * - * \param window the window to destroy - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_CreateWindow - * \sa SDL_CreateWindowFrom - */ -extern DECLSPEC void SDLCALL SDL_DestroyWindow(SDL_Window * window); - - -/** - * Check whether the screensaver is currently enabled. - * - * The screensaver is disabled by default since SDL 2.0.2. Before SDL 2.0.2 - * the screensaver was enabled by default. - * - * The default can also be changed using `SDL_HINT_VIDEO_ALLOW_SCREENSAVER`. - * - * \returns SDL_TRUE if the screensaver is enabled, SDL_FALSE if it is - * disabled. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_DisableScreenSaver - * \sa SDL_EnableScreenSaver - */ -extern DECLSPEC SDL_bool SDLCALL SDL_IsScreenSaverEnabled(void); - -/** - * Allow the screen to be blanked by a screen saver. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_DisableScreenSaver - * \sa SDL_IsScreenSaverEnabled - */ -extern DECLSPEC void SDLCALL SDL_EnableScreenSaver(void); - -/** - * Prevent the screen from being blanked by a screen saver. - * - * If you disable the screensaver, it is automatically re-enabled when SDL - * quits. - * - * The screensaver is disabled by default since SDL 2.0.2. Before SDL 2.0.2 - * the screensaver was enabled by default. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_EnableScreenSaver - * \sa SDL_IsScreenSaverEnabled - */ -extern DECLSPEC void SDLCALL SDL_DisableScreenSaver(void); - - -/** - * \name OpenGL support functions - */ -/* @{ */ - -/** - * Dynamically load an OpenGL library. - * - * This should be done after initializing the video driver, but before - * creating any OpenGL windows. If no OpenGL library is loaded, the default - * library will be loaded upon creation of the first OpenGL window. - * - * If you do this, you need to retrieve all of the GL functions used in your - * program from the dynamic library using SDL_GL_GetProcAddress(). - * - * \param path the platform dependent OpenGL library name, or NULL to open the - * default OpenGL library - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_GetProcAddress - * \sa SDL_GL_UnloadLibrary - */ -extern DECLSPEC int SDLCALL SDL_GL_LoadLibrary(const char *path); - -/** - * Get an OpenGL function by name. - * - * If the GL library is loaded at runtime with SDL_GL_LoadLibrary(), then all - * GL functions must be retrieved this way. Usually this is used to retrieve - * function pointers to OpenGL extensions. - * - * There are some quirks to looking up OpenGL functions that require some - * extra care from the application. If you code carefully, you can handle - * these quirks without any platform-specific code, though: - * - * - On Windows, function pointers are specific to the current GL context; - * this means you need to have created a GL context and made it current - * before calling SDL_GL_GetProcAddress(). If you recreate your context or - * create a second context, you should assume that any existing function - * pointers aren't valid to use with it. This is (currently) a - * Windows-specific limitation, and in practice lots of drivers don't suffer - * this limitation, but it is still the way the wgl API is documented to - * work and you should expect crashes if you don't respect it. Store a copy - * of the function pointers that comes and goes with context lifespan. - * - On X11, function pointers returned by this function are valid for any - * context, and can even be looked up before a context is created at all. - * This means that, for at least some common OpenGL implementations, if you - * look up a function that doesn't exist, you'll get a non-NULL result that - * is _NOT_ safe to call. You must always make sure the function is actually - * available for a given GL context before calling it, by checking for the - * existence of the appropriate extension with SDL_GL_ExtensionSupported(), - * or verifying that the version of OpenGL you're using offers the function - * as core functionality. - * - Some OpenGL drivers, on all platforms, *will* return NULL if a function - * isn't supported, but you can't count on this behavior. Check for - * extensions you use, and if you get a NULL anyway, act as if that - * extension wasn't available. This is probably a bug in the driver, but you - * can code defensively for this scenario anyhow. - * - Just because you're on Linux/Unix, don't assume you'll be using X11. - * Next-gen display servers are waiting to replace it, and may or may not - * make the same promises about function pointers. - * - OpenGL function pointers must be declared `APIENTRY` as in the example - * code. This will ensure the proper calling convention is followed on - * platforms where this matters (Win32) thereby avoiding stack corruption. - * - * \param proc the name of an OpenGL function - * \returns a pointer to the named OpenGL function. The returned pointer - * should be cast to the appropriate function signature. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_ExtensionSupported - * \sa SDL_GL_LoadLibrary - * \sa SDL_GL_UnloadLibrary - */ -extern DECLSPEC void *SDLCALL SDL_GL_GetProcAddress(const char *proc); - -/** - * Unload the OpenGL library previously loaded by SDL_GL_LoadLibrary(). - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_LoadLibrary - */ -extern DECLSPEC void SDLCALL SDL_GL_UnloadLibrary(void); - -/** - * Check if an OpenGL extension is supported for the current context. - * - * This function operates on the current GL context; you must have created a - * context and it must be current before calling this function. Do not assume - * that all contexts you create will have the same set of extensions - * available, or that recreating an existing context will offer the same - * extensions again. - * - * While it's probably not a massive overhead, this function is not an O(1) - * operation. Check the extensions you care about after creating the GL - * context and save that information somewhere instead of calling the function - * every time you need to know. - * - * \param extension the name of the extension to check - * \returns SDL_TRUE if the extension is supported, SDL_FALSE otherwise. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_bool SDLCALL SDL_GL_ExtensionSupported(const char - *extension); - -/** - * Reset all previously set OpenGL context attributes to their default values. - * - * \since This function is available since SDL 2.0.2. - * - * \sa SDL_GL_GetAttribute - * \sa SDL_GL_SetAttribute - */ -extern DECLSPEC void SDLCALL SDL_GL_ResetAttributes(void); - -/** - * Set an OpenGL window attribute before window creation. - * - * This function sets the OpenGL attribute `attr` to `value`. The requested - * attributes should be set before creating an OpenGL window. You should use - * SDL_GL_GetAttribute() to check the values after creating the OpenGL - * context, since the values obtained can differ from the requested ones. - * - * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to set - * \param value the desired value for the attribute - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_GetAttribute - * \sa SDL_GL_ResetAttributes - */ -extern DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); - -/** - * Get the actual value for an attribute from the current context. - * - * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to get - * \param value a pointer filled in with the current value of `attr` - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_ResetAttributes - * \sa SDL_GL_SetAttribute - */ -extern DECLSPEC int SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); - -/** - * Create an OpenGL context for an OpenGL window, and make it current. - * - * Windows users new to OpenGL should note that, for historical reasons, GL - * functions added after OpenGL version 1.1 are not available by default. - * Those functions must be loaded at run-time, either with an OpenGL - * extension-handling library or with SDL_GL_GetProcAddress() and its related - * functions. - * - * SDL_GLContext is an alias for `void *`. It's opaque to the application. - * - * \param window the window to associate with the context - * \returns the OpenGL context associated with `window` or NULL on error; call - * SDL_GetError() for more details. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_DeleteContext - * \sa SDL_GL_MakeCurrent - */ -extern DECLSPEC SDL_GLContext SDLCALL SDL_GL_CreateContext(SDL_Window * - window); - -/** - * Set up an OpenGL context for rendering into an OpenGL window. - * - * The context must have been created with a compatible window. - * - * \param window the window to associate with the context - * \param context the OpenGL context to associate with the window - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_CreateContext - */ -extern DECLSPEC int SDLCALL SDL_GL_MakeCurrent(SDL_Window * window, - SDL_GLContext context); - -/** - * Get the currently active OpenGL window. - * - * \returns the currently active OpenGL window on success or NULL on failure; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC SDL_Window* SDLCALL SDL_GL_GetCurrentWindow(void); - -/** - * Get the currently active OpenGL context. - * - * \returns the currently active OpenGL context or NULL on failure; call - * SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_MakeCurrent - */ -extern DECLSPEC SDL_GLContext SDLCALL SDL_GL_GetCurrentContext(void); - -/** - * Get the size of a window's underlying drawable in pixels. - * - * This returns info useful for calling glViewport(). - * - * This may differ from SDL_GetWindowSize() if we're rendering to a high-DPI - * drawable, i.e. the window was created with `SDL_WINDOW_ALLOW_HIGHDPI` on a - * platform with high-DPI support (Apple calls this "Retina"), and not - * disabled by the `SDL_HINT_VIDEO_HIGHDPI_DISABLED` hint. - * - * \param window the window from which the drawable size should be queried - * \param w a pointer to variable for storing the width in pixels, may be NULL - * \param h a pointer to variable for storing the height in pixels, may be - * NULL - * - * \since This function is available since SDL 2.0.1. - * - * \sa SDL_CreateWindow - * \sa SDL_GetWindowSize - */ -extern DECLSPEC void SDLCALL SDL_GL_GetDrawableSize(SDL_Window * window, int *w, - int *h); - -/** - * Set the swap interval for the current OpenGL context. - * - * Some systems allow specifying -1 for the interval, to enable adaptive - * vsync. Adaptive vsync works the same as vsync, but if you've already missed - * the vertical retrace for a given frame, it swaps buffers immediately, which - * might be less jarring for the user during occasional framerate drops. If an - * application requests adaptive vsync and the system does not support it, - * this function will fail and return -1. In such a case, you should probably - * retry the call with 1 for the interval. - * - * Adaptive vsync is implemented for some glX drivers with - * GLX_EXT_swap_control_tear, and for some Windows drivers with - * WGL_EXT_swap_control_tear. - * - * Read more on the Khronos wiki: - * https://www.khronos.org/opengl/wiki/Swap_Interval#Adaptive_Vsync - * - * \param interval 0 for immediate updates, 1 for updates synchronized with - * the vertical retrace, -1 for adaptive vsync - * \returns 0 on success or -1 if setting the swap interval is not supported; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_GetSwapInterval - */ -extern DECLSPEC int SDLCALL SDL_GL_SetSwapInterval(int interval); - -/** - * Get the swap interval for the current OpenGL context. - * - * If the system can't determine the swap interval, or there isn't a valid - * current context, this function will return 0 as a safe default. - * - * \returns 0 if there is no vertical retrace synchronization, 1 if the buffer - * swap is synchronized with the vertical retrace, and -1 if late - * swaps happen immediately instead of waiting for the next retrace; - * call SDL_GetError() for more information. - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_SetSwapInterval - */ -extern DECLSPEC int SDLCALL SDL_GL_GetSwapInterval(void); - -/** - * Update a window with OpenGL rendering. - * - * This is used with double-buffered OpenGL contexts, which are the default. - * - * On macOS, make sure you bind 0 to the draw framebuffer before swapping the - * window, otherwise nothing will happen. If you aren't using - * glBindFramebuffer(), this is the default and you won't have to do anything - * extra. - * - * \param window the window to change - * - * \since This function is available since SDL 2.0.0. - */ -extern DECLSPEC void SDLCALL SDL_GL_SwapWindow(SDL_Window * window); - -/** - * Delete an OpenGL context. - * - * \param context the OpenGL context to be deleted - * - * \since This function is available since SDL 2.0.0. - * - * \sa SDL_GL_CreateContext - */ -extern DECLSPEC void SDLCALL SDL_GL_DeleteContext(SDL_GLContext context); - -/* @} *//* OpenGL support functions */ - - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* SDL_video_h_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@SDL_video.h.blob deleted file mode 100644 index b322422ce0c14ae94654a44695ac16d15e47b55d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 109320 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 L8(Yg27J2_K|CUk9 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h deleted file mode 100644 index 4142ffeb..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h +++ /dev/null @@ -1,187 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file begin_code.h - * - * This file sets things up for C dynamic library function definitions, - * static inlined functions, and structures aligned at 4-byte alignment. - * If you don't like ugly C preprocessor code, don't look at this file. :) - */ - -/* This shouldn't be nested -- included it around code only. */ -#ifdef SDL_begin_code_h -#error Nested inclusion of begin_code.h -#endif -#define SDL_begin_code_h - -#ifndef SDL_DEPRECATED -# if defined(__GNUC__) && (__GNUC__ >= 4) /* technically, this arrived in gcc 3.1, but oh well. */ -# define SDL_DEPRECATED __attribute__((deprecated)) -# else -# define SDL_DEPRECATED -# endif -#endif - -#ifndef SDL_UNUSED -# ifdef __GNUC__ -# define SDL_UNUSED __attribute__((unused)) -# else -# define SDL_UNUSED -# endif -#endif - -/* Some compilers use a special export keyword */ -#ifndef DECLSPEC -# if defined(__WIN32__) || defined(__WINRT__) || defined(__CYGWIN__) || defined(__GDK__) -# ifdef DLL_EXPORT -# define DECLSPEC __declspec(dllexport) -# else -# define DECLSPEC -# endif -# elif defined(__OS2__) -# ifdef BUILD_SDL -# define DECLSPEC __declspec(dllexport) -# else -# define DECLSPEC -# endif -# else -# if defined(__GNUC__) && __GNUC__ >= 4 -# define DECLSPEC __attribute__ ((visibility("default"))) -# else -# define DECLSPEC -# endif -# endif -#endif - -/* By default SDL uses the C calling convention */ -#ifndef SDLCALL -#if (defined(__WIN32__) || defined(__WINRT__) || defined(__GDK__)) && !defined(__GNUC__) -#define SDLCALL __cdecl -#elif defined(__OS2__) || defined(__EMX__) -#define SDLCALL _System -# if defined (__GNUC__) && !defined(_System) -# define _System /* for old EMX/GCC compat. */ -# endif -#else -#define SDLCALL -#endif -#endif /* SDLCALL */ - -/* Removed DECLSPEC on Symbian OS because SDL cannot be a DLL in EPOC */ -#ifdef __SYMBIAN32__ -#undef DECLSPEC -#define DECLSPEC -#endif /* __SYMBIAN32__ */ - -/* Force structure packing at 4 byte alignment. - This is necessary if the header is included in code which has structure - packing set to an alternate value, say for loading structures from disk. - The packing is reset to the previous value in close_code.h - */ -#if defined(_MSC_VER) || defined(__MWERKS__) || defined(__BORLANDC__) -#ifdef _MSC_VER -#pragma warning(disable: 4103) -#endif -#ifdef __clang__ -#pragma clang diagnostic ignored "-Wpragma-pack" -#endif -#ifdef __BORLANDC__ -#pragma nopackwarning -#endif -#ifdef _WIN64 -/* Use 8-byte alignment on 64-bit architectures, so pointers are aligned */ -#pragma pack(push,8) -#else -#pragma pack(push,4) -#endif -#endif /* Compiler needs structure packing set */ - -#ifndef SDL_INLINE -#if defined(__GNUC__) -#define SDL_INLINE __inline__ -#elif defined(_MSC_VER) || defined(__BORLANDC__) || \ - defined(__DMC__) || defined(__SC__) || \ - defined(__WATCOMC__) || defined(__LCC__) || \ - defined(__DECC) || defined(__CC_ARM) -#define SDL_INLINE __inline -#ifndef __inline__ -#define __inline__ __inline -#endif -#else -#define SDL_INLINE inline -#ifndef __inline__ -#define __inline__ inline -#endif -#endif -#endif /* SDL_INLINE not defined */ - -#ifndef SDL_FORCE_INLINE -#if defined(_MSC_VER) -#define SDL_FORCE_INLINE __forceinline -#elif ( (defined(__GNUC__) && (__GNUC__ >= 4)) || defined(__clang__) ) -#define SDL_FORCE_INLINE __attribute__((always_inline)) static __inline__ -#else -#define SDL_FORCE_INLINE static SDL_INLINE -#endif -#endif /* SDL_FORCE_INLINE not defined */ - -#ifndef SDL_NORETURN -#if defined(__GNUC__) -#define SDL_NORETURN __attribute__((noreturn)) -#elif defined(_MSC_VER) -#define SDL_NORETURN __declspec(noreturn) -#else -#define SDL_NORETURN -#endif -#endif /* SDL_NORETURN not defined */ - -/* Apparently this is needed by several Windows compilers */ -#if !defined(__MACH__) -#ifndef NULL -#ifdef __cplusplus -#define NULL 0 -#else -#define NULL ((void *)0) -#endif -#endif /* NULL */ -#endif /* ! Mac OS X - breaks precompiled headers */ - -#ifndef SDL_FALLTHROUGH -#if (defined(__cplusplus) && __cplusplus >= 201703L) || \ - (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L) -#define SDL_FALLTHROUGH [[fallthrough]] -#else -#if defined(__has_attribute) -#define SDL_HAS_FALLTHROUGH __has_attribute(__fallthrough__) -#else -#define SDL_HAS_FALLTHROUGH 0 -#endif /* __has_attribute */ -#if SDL_HAS_FALLTHROUGH && \ - ((defined(__GNUC__) && __GNUC__ >= 7) || \ - (defined(__clang_major__) && __clang_major__ >= 10)) -#define SDL_FALLTHROUGH __attribute__((__fallthrough__)) -#else -#define SDL_FALLTHROUGH do {} while (0) /* fallthrough */ -#endif /* SDL_HAS_FALLTHROUGH */ -#undef SDL_HAS_FALLTHROUGH -#endif /* C++17 or C2x */ -#endif /* SDL_FALLTHROUGH not defined */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@begin_code.h.blob deleted file mode 100644 index 5d64f6f4bc17d045ad3e54b5b7cbf7b3884e209e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13291 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h deleted file mode 100644 index b5ff3e20..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - Simple DirectMedia Layer - Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org> - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ - -/** - * \file close_code.h - * - * This file reverses the effects of begin_code.h and should be included - * after you finish any function and structure declarations in your headers - */ - -#ifndef SDL_begin_code_h -#error close_code.h included without matching begin_code.h -#endif -#undef SDL_begin_code_h - -/* Reset structure packing at previous byte alignment */ -#if defined(_MSC_VER) || defined(__MWERKS__) || defined(__BORLANDC__) -#ifdef __BORLANDC__ -#pragma nopackwarning -#endif -#pragma pack(pop) -#endif /* Compiler needs structure packing set */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@SDL2@close_code.h.blob deleted file mode 100644 index 171065a22429481533ef89c603b0b3bd09308cb0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12163 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h deleted file mode 100644 index efc71161..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _ALLOCA_H -#define _ALLOCA_H 1 - -#include <features.h> - -#define __need_size_t -#include <stddef.h> - -__BEGIN_DECLS - -/* Remove any previous definition. */ -#undef alloca - -/* Allocate a block that will be freed when the calling function exits. */ -extern void *alloca (size_t __size) __THROW; - -#ifdef __GNUC__ -# define alloca(size) __builtin_alloca (size) -#endif /* GCC. */ - -__END_DECLS - -#endif /* alloca.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@alloca.h.blob deleted file mode 100644 index 767e096c800abd4fd1a29d14fbf802a69a07753f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12771 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 SyTH$>lc&xclfTdDwf_gEf`ilm diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h deleted file mode 100644 index 9653140b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h +++ /dev/null @@ -1,40 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ -#ifndef _ASM_GENERIC_ERRNO_BASE_H -#define _ASM_GENERIC_ERRNO_BASE_H - -#define EPERM 1 /* Operation not permitted */ -#define ENOENT 2 /* No such file or directory */ -#define ESRCH 3 /* No such process */ -#define EINTR 4 /* Interrupted system call */ -#define EIO 5 /* I/O error */ -#define ENXIO 6 /* No such device or address */ -#define E2BIG 7 /* Argument list too long */ -#define ENOEXEC 8 /* Exec format error */ -#define EBADF 9 /* Bad file number */ -#define ECHILD 10 /* No child processes */ -#define EAGAIN 11 /* Try again */ -#define ENOMEM 12 /* Out of memory */ -#define EACCES 13 /* Permission denied */ -#define EFAULT 14 /* Bad address */ -#define ENOTBLK 15 /* Block device required */ -#define EBUSY 16 /* Device or resource busy */ -#define EEXIST 17 /* File exists */ -#define EXDEV 18 /* Cross-device link */ -#define ENODEV 19 /* No such device */ -#define ENOTDIR 20 /* Not a directory */ -#define EISDIR 21 /* Is a directory */ -#define EINVAL 22 /* Invalid argument */ -#define ENFILE 23 /* File table overflow */ -#define EMFILE 24 /* Too many open files */ -#define ENOTTY 25 /* Not a typewriter */ -#define ETXTBSY 26 /* Text file busy */ -#define EFBIG 27 /* File too large */ -#define ENOSPC 28 /* No space left on device */ -#define ESPIPE 29 /* Illegal seek */ -#define EROFS 30 /* Read-only file system */ -#define EMLINK 31 /* Too many links */ -#define EPIPE 32 /* Broken pipe */ -#define EDOM 33 /* Math argument out of domain of func */ -#define ERANGE 34 /* Math result not representable */ - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno-base.h.blob deleted file mode 100644 index 9361f0f031efd3896615d60d78e764798ae897de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14090 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h deleted file mode 100644 index cf9c51ac..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h +++ /dev/null @@ -1,123 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ -#ifndef _ASM_GENERIC_ERRNO_H -#define _ASM_GENERIC_ERRNO_H - -#include <asm-generic/errno-base.h> - -#define EDEADLK 35 /* Resource deadlock would occur */ -#define ENAMETOOLONG 36 /* File name too long */ -#define ENOLCK 37 /* No record locks available */ - -/* - * This error code is special: arch syscall entry code will return - * -ENOSYS if users try to call a syscall that doesn't exist. To keep - * failures of syscalls that really do exist distinguishable from - * failures due to attempts to use a nonexistent syscall, syscall - * implementations should refrain from returning -ENOSYS. - */ -#define ENOSYS 38 /* Invalid system call number */ - -#define ENOTEMPTY 39 /* Directory not empty */ -#define ELOOP 40 /* Too many symbolic links encountered */ -#define EWOULDBLOCK EAGAIN /* Operation would block */ -#define ENOMSG 42 /* No message of desired type */ -#define EIDRM 43 /* Identifier removed */ -#define ECHRNG 44 /* Channel number out of range */ -#define EL2NSYNC 45 /* Level 2 not synchronized */ -#define EL3HLT 46 /* Level 3 halted */ -#define EL3RST 47 /* Level 3 reset */ -#define ELNRNG 48 /* Link number out of range */ -#define EUNATCH 49 /* Protocol driver not attached */ -#define ENOCSI 50 /* No CSI structure available */ -#define EL2HLT 51 /* Level 2 halted */ -#define EBADE 52 /* Invalid exchange */ -#define EBADR 53 /* Invalid request descriptor */ -#define EXFULL 54 /* Exchange full */ -#define ENOANO 55 /* No anode */ -#define EBADRQC 56 /* Invalid request code */ -#define EBADSLT 57 /* Invalid slot */ - -#define EDEADLOCK EDEADLK - -#define EBFONT 59 /* Bad font file format */ -#define ENOSTR 60 /* Device not a stream */ -#define ENODATA 61 /* No data available */ -#define ETIME 62 /* Timer expired */ -#define ENOSR 63 /* Out of streams resources */ -#define ENONET 64 /* Machine is not on the network */ -#define ENOPKG 65 /* Package not installed */ -#define EREMOTE 66 /* Object is remote */ -#define ENOLINK 67 /* Link has been severed */ -#define EADV 68 /* Advertise error */ -#define ESRMNT 69 /* Srmount error */ -#define ECOMM 70 /* Communication error on send */ -#define EPROTO 71 /* Protocol error */ -#define EMULTIHOP 72 /* Multihop attempted */ -#define EDOTDOT 73 /* RFS specific error */ -#define EBADMSG 74 /* Not a data message */ -#define EOVERFLOW 75 /* Value too large for defined data type */ -#define ENOTUNIQ 76 /* Name not unique on network */ -#define EBADFD 77 /* File descriptor in bad state */ -#define EREMCHG 78 /* Remote address changed */ -#define ELIBACC 79 /* Can not access a needed shared library */ -#define ELIBBAD 80 /* Accessing a corrupted shared library */ -#define ELIBSCN 81 /* .lib section in a.out corrupted */ -#define ELIBMAX 82 /* Attempting to link in too many shared libraries */ -#define ELIBEXEC 83 /* Cannot exec a shared library directly */ -#define EILSEQ 84 /* Illegal byte sequence */ -#define ERESTART 85 /* Interrupted system call should be restarted */ -#define ESTRPIPE 86 /* Streams pipe error */ -#define EUSERS 87 /* Too many users */ -#define ENOTSOCK 88 /* Socket operation on non-socket */ -#define EDESTADDRREQ 89 /* Destination address required */ -#define EMSGSIZE 90 /* Message too long */ -#define EPROTOTYPE 91 /* Protocol wrong type for socket */ -#define ENOPROTOOPT 92 /* Protocol not available */ -#define EPROTONOSUPPORT 93 /* Protocol not supported */ -#define ESOCKTNOSUPPORT 94 /* Socket type not supported */ -#define EOPNOTSUPP 95 /* Operation not supported on transport endpoint */ -#define EPFNOSUPPORT 96 /* Protocol family not supported */ -#define EAFNOSUPPORT 97 /* Address family not supported by protocol */ -#define EADDRINUSE 98 /* Address already in use */ -#define EADDRNOTAVAIL 99 /* Cannot assign requested address */ -#define ENETDOWN 100 /* Network is down */ -#define ENETUNREACH 101 /* Network is unreachable */ -#define ENETRESET 102 /* Network dropped connection because of reset */ -#define ECONNABORTED 103 /* Software caused connection abort */ -#define ECONNRESET 104 /* Connection reset by peer */ -#define ENOBUFS 105 /* No buffer space available */ -#define EISCONN 106 /* Transport endpoint is already connected */ -#define ENOTCONN 107 /* Transport endpoint is not connected */ -#define ESHUTDOWN 108 /* Cannot send after transport endpoint shutdown */ -#define ETOOMANYREFS 109 /* Too many references: cannot splice */ -#define ETIMEDOUT 110 /* Connection timed out */ -#define ECONNREFUSED 111 /* Connection refused */ -#define EHOSTDOWN 112 /* Host is down */ -#define EHOSTUNREACH 113 /* No route to host */ -#define EALREADY 114 /* Operation already in progress */ -#define EINPROGRESS 115 /* Operation now in progress */ -#define ESTALE 116 /* Stale file handle */ -#define EUCLEAN 117 /* Structure needs cleaning */ -#define ENOTNAM 118 /* Not a XENIX named type file */ -#define ENAVAIL 119 /* No XENIX semaphores available */ -#define EISNAM 120 /* Is a named type file */ -#define EREMOTEIO 121 /* Remote I/O error */ -#define EDQUOT 122 /* Quota exceeded */ - -#define ENOMEDIUM 123 /* No medium found */ -#define EMEDIUMTYPE 124 /* Wrong medium type */ -#define ECANCELED 125 /* Operation Canceled */ -#define ENOKEY 126 /* Required key not available */ -#define EKEYEXPIRED 127 /* Key has expired */ -#define EKEYREVOKED 128 /* Key has been revoked */ -#define EKEYREJECTED 129 /* Key was rejected by service */ - -/* for robust mutexes */ -#define EOWNERDEAD 130 /* Owner died */ -#define ENOTRECOVERABLE 131 /* State not recoverable */ - -#define ERFKILL 132 /* Operation not possible due to RF-kill */ - -#define EHWPOISON 133 /* Memory page has hardware error */ - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm-generic@errno.h.blob deleted file mode 100644 index 7f562e61a1b9c28c0b8bb6d64463551ed133a0c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18204 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h deleted file mode 100644 index 4c82b503..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/errno.h> diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@asm@errno.h.blob deleted file mode 100644 index 09da8a8fc5bf505fc14350fc04e50fbbaa80e7d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12167 zcmb7KKg{hm75^&M4onP86$3)0X?P#y(_0XNmR3lw?SMcCB!c5OxqhD$=f%#w_j_XK z*nt^|g@KU)AqGZ9q&`+A238i-iRnocj_ufqZ%%yEJKQBF$LH_w{Bd5t`Rr>ifAz`D zD>wN;wk#L<J51ec+2@)momZ^N)j;!>@a|1|^93qM*X$zAPI9>CU6WOOU{uTD;oF-h z-2C^ASMpH}Iq#?#E0+K8ohP?>$r|1jR95WG!_8-3eeL5H5e?N3y?yeZPanrmO0HFI zo~pbk+EQtvS)mP+Kq`2dTV3);ci~jho_VJS&=g2t@SprGI?u`ke?>F$3YF-+CwU`A z^XQ9z|KlecFN0Ob0oSNz#5_}xq~0Vg(TC^(uEO#Btw*<Y|L88EiM5Y$OBWl(A7!7H z4-fz+(qBJQ>8g}c7{Zm&EUR8Be!eXPZzE>WaYW0O)8fP{1}+~v&4xgn3e1`dR+NK0 zDfhxReqV05jrJq&YH7HJSW4IsBqss_@OnI`ai|HMU78a2zyv=V5&rO}pT}}4b5Ij> zHraqm*VG+PNM#M~Vqfv*NW?|pM@Dyanzw9Nkfr2jM{XVc>R&#L#Sht`<w$Ly1|vsD z)_o>qQ(o7T*hoH>ZAx49pmJKV8c&&}E%Y!_UA+5)C*O~b_Ob=>Ezm7P#8WJoQ7P{^ zE4VD`v7?&HPA$y0#4(Eq=D?qpZznLSh77sjfcpN_w%1$_PFMO~Jx8@1I}XW;K3b@U zBc`_l9MBOP0|89^Bg;e41G{>}3Dnr5a4&n>>4eU~ZvbYMLjW6h$rx@4wE^>wufHD$ zvB?C~I^h^Ng%evJLU^N|Dhe<(1ZL5ab3p{y%&Ch5q_0)RdF;|Kk#!perC9?)x)Net zkkVBhjXs~g{oPp6pbtn1{0&Xe$De0%%L*1*1l6`aD*&$*Qlhj|UiY`~0vi;x2A}gy zv8TEjPu{&1N$&Lux>LdXQj!5L<~Eq2V(2b|ngl_pA0l?Ba{W-#0|r<q^<;`}1?VY{ z)&pZjBOZDSvai2(h&}6a(0~A;_tyoUL=a_ty<>prGzB!HfOk4Z+?0BN;KtVwAV!>! z0Et(4-IAj~-tjK9O3tZ>1CdWEAt`|#A#Qch)8WJr@IlV#OsHNpQ8BBC0Gi%P@#i>- zm}Im4$4cN3llSZ)YIswTpdk_z*HfqT@_*Dt0;*b{tQ_I^mMa_#0)^|-j3-xs(R5=D z&26c&jm&eg$@J59M_1`_!d8Il+4Xn`t_#*hEphCrXh-p^dWHlT`o@WH-QQ!aAWE)K zQ=_DyBO*i;P_}n20P~|<_9R3>+dDr>MT=l(S0BIpZx%xaQEk?+jt!jVY#2J3l|<PH zHj^Pf#>k#^jqL(fVX#Qfj;R<Yyxb;q3m3aN>ABJEm%n*6?vQM0nswW3h-bQxv#7Dp ziX0ieW^a!grX{<3YY%FG6ORtUA0y0BQ7F4CdMVExh&r@x5WA~BNF+JL0*7AXIYZ>| zmJf*xNV6_}sI<ODpc&)&y4-eM_HY8sjf;;b3&)$e4LS_X>`aIU5lBO`10&GbWl+x+ zfxhgqr+7Q^L3S+^YCPgB6^wuxG+1aVS%Rs(vPp+hfk==l=p)OZ*M|WFwo#Ok!A(K| zkXBYG1yr$iYr|nWuo0@QX6J;=P?p`Hs8rtI<{@rnc%RrICVD>+3H6@vf*~&)nF?;9 zY%Tcnmr~Vh(3f*hisd{Ch+C{XvKSXB>-_>73RoSXkF0kcIKZTCW=YemubM2+$&xE3 zpuOE@XI47Un~3;C)bapwWUv+uAQv5FYE&&q6SIm)JhFk@SJncCnOT~RF*j5&Qe7=! zk=2R<s((?Ab)m_;?MS&3Xlqxwe(~Y=;>u-%n+mDS&gf!Ih)Ro=W^X01G0pmc!Ppl0 z4CMs<GFD4a+M)=9d*Qkd!yk8KEp*1fKUvH4LE?inw8rDvm1@IiRi&4)%9~<Zt;K<e z3VJF#$-5(rgsXPl8_DBIF=I}E6_h6|RW}AUoZPK_+~A+AIL-=l%C5|?-bA1$4g_?* ztjC+(hA)Ow$=@~AsOD;pOmzdc1~9f2fOc8+&=J^(Mv>^9uqriyDwRlr7_#kMfLYTU ziYxxK4njSHn%A~nNI;>)tb0b=RQN45pN+LkeZ|`z=0H~+9H4yk#?KP%)Ert{sVWI< z2dHdYnQ95l_WRN1_IuTR8)a6pJg1#m)<#~6g2L=QR`VxnYO~sa=v^f`O5C=v$P&=i znUisAIFtu4hWL%4CKk|M%b+v4r*oU|xc2yG3ur5LY;%vWVS@E+WG_^~v$^fMutqAE z-p}k7|HXGME{Uvs(6ZH#y!aBpQn<^PBH7nnUq&8bF*V<3q{Mw7s^fj{THoLP?niMM zwIV@Vz>d&9U#@pjY^}GAabKd1R#f=8(PvOSiy;m5h67o%2D)&`CM;`p7L_&^j;nz7 zp%YT*sf4+My8$JQbsFs#P?1{+Wpj5vSx|(bevi0hoVG@3S*fVSs19kSCwd_Bz1nh$ z3f4LBYMRLHc`5g^io?CG@&7;HtrI}%+}Wq*hHJ|_rHXZXi#lT2Y!P>t8UPD@;r#fn z>34h1*MEAoN=?z9TImO)J3NeFY8AG<Ai9<VJ}(DO&qf{>anHvmc{jG(gXz?U7(rG; ztG}Jj61(+q2;4hvfm;w&u}-=036UKMyQnC<x?WQNz|4C3f)IB(n%DmDAmF@R!v%EL zX)8t1BVF9Uf@Td+DE$#)cP}kR)j`=>;K3NLls83;&olfIE3B6zaJQ{?(UXD1SNy09 z>VUzz7r=#(xt7wIy?%*;5oPFXo6JbyW(AIz`6I*P8hvU73ZpvgqeKt;sBrTey@QHJ zMa5dFcWvc_B$b+L`qJtlEPH-tZfCFx%RtjW`(ZXmgB0STUqodD6W$`><}DQX!tNxM zvODTaFHaW&`9nN-U>mP3q2Xhfqc9%{VA7*6!IVD@_@OLZ3Sb~|T8Ky9jp<y7g3%Ja zzX_WRw$4+T448^aR)g~`b_c;wGH}(#@EOSm@3tAtJXKaPDqw#K7c-GIDDw?VMx3L} z*KxvQgi~XA0nDB<gjOp@ck2+M8kG>#?@VYzYrm^~f_X@hhLzGb>}lSx`{*ghDmyAl z?=TX{8<gC^)Xs}6xJk2HMmx~$YMRqu$^<hX2(+E}C7;7}yTHx>q+t`5ZG)yGw$t1~ zRM=caLFT<YQ^WN{9EYC7ek;RH=Jg+c<zIib_f82rmgXB0D5r)#B#h@3v>i^ex5ov? zdy;G4zqu$k=HCchtCEoB3r9J^B0tg_6&$XH8T8C+u~BNazpD58G;p-Qpq$0?ogdY- zBV0Wgy;jx>2DURJZs9<qDCt)FS?>pP$#HE_Zm#&`<_2Xx2V&d0VI{8hmBrT>tWop8 z&6wF@?C;fR+f#Zb)o#~LNB|j&q5&$EM~`Fr%NcLhU=-LRyPUK}NsV*!BJ1hL(?^s^ zNx-P-FC^{8$Sxg2;q&5IhfKH;qAXA)j@|fBW$TU4vqPW*{pRjA0^d!<>P_FvtgZpK zgtg5KifiZ_{r$AVOG9AdmUa6kEQHSi;0jOg3IE^%Ycn$~iEkIoVmn?8qFO=ufh*d* zAW6lkyr4~mxIQqqmizU4)55}g3?K%?i7?zhT4=HP{pb|WhDR3qI1|tCUH!6&$F{vU G@cTbakJ-5Z diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h deleted file mode 100644 index 62670e4b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h +++ /dev/null @@ -1,156 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.2 Diagnostics <assert.h> - */ - -#ifdef _ASSERT_H - -# undef _ASSERT_H -# undef assert -# undef __ASSERT_VOID_CAST - -# ifdef __USE_GNU -# undef assert_perror -# endif - -#endif /* assert.h */ - -#define _ASSERT_H 1 -#include <features.h> - -#if defined __cplusplus && __GNUC_PREREQ (2,95) -# define __ASSERT_VOID_CAST static_cast<void> -#else -# define __ASSERT_VOID_CAST (void) -#endif - -/* void assert (int expression); - - If NDEBUG is defined, do nothing. - If not, and EXPRESSION is zero, print an error message and abort. */ - -#ifdef NDEBUG - -# define assert(expr) (__ASSERT_VOID_CAST (0)) - -/* void assert_perror (int errnum); - - If NDEBUG is defined, do nothing. If not, and ERRNUM is not zero, print an - error message with the error text for ERRNUM and abort. - (This is a GNU extension.) */ - -# ifdef __USE_GNU -# define assert_perror(errnum) (__ASSERT_VOID_CAST (0)) -# endif - -#else /* Not NDEBUG. */ - -__BEGIN_DECLS - -/* This prints an "Assertion failed" message and aborts. */ -extern void __assert_fail (const char *__assertion, const char *__file, - unsigned int __line, const char *__function) - __THROW __attribute__ ((__noreturn__)); - -/* Likewise, but prints the error text for ERRNUM. */ -extern void __assert_perror_fail (int __errnum, const char *__file, - unsigned int __line, const char *__function) - __THROW __attribute__ ((__noreturn__)); - - -/* The following is not at all used here but needed for standard - compliance. */ -extern void __assert (const char *__assertion, const char *__file, int __line) - __THROW __attribute__ ((__noreturn__)); - - -__END_DECLS - -/* When possible, define assert so that it does not add extra - parentheses around EXPR. Otherwise, those added parentheses would - suppress warnings we'd expect to be detected by gcc's -Wparentheses. */ -# if defined __cplusplus -# if defined __has_builtin -# if __has_builtin (__builtin_FILE) -# define __ASSERT_FILE __builtin_FILE () -# define __ASSERT_LINE __builtin_LINE () -# endif -# endif -# if !defined __ASSERT_FILE -# define __ASSERT_FILE __FILE__ -# define __ASSERT_LINE __LINE__ -# endif -# define assert(expr) \ - (static_cast <bool> (expr) \ - ? void (0) \ - : __assert_fail (#expr, __ASSERT_FILE, __ASSERT_LINE, \ - __ASSERT_FUNCTION)) -# elif !defined __GNUC__ || defined __STRICT_ANSI__ -# define assert(expr) \ - ((expr) \ - ? __ASSERT_VOID_CAST (0) \ - : __assert_fail (#expr, __FILE__, __LINE__, __ASSERT_FUNCTION)) -# else -/* The first occurrence of EXPR is not evaluated due to the sizeof, - but will trigger any pedantic warnings masked by the __extension__ - for the second occurrence. The ternary operator is required to - support function pointers and bit fields in this context, and to - suppress the evaluation of variable length arrays. */ -# define assert(expr) \ - ((void) sizeof ((expr) ? 1 : 0), __extension__ ({ \ - if (expr) \ - ; /* empty */ \ - else \ - __assert_fail (#expr, __FILE__, __LINE__, __ASSERT_FUNCTION); \ - })) -# endif - -# ifdef __USE_GNU -# define assert_perror(errnum) \ - (!(errnum) \ - ? __ASSERT_VOID_CAST (0) \ - : __assert_perror_fail ((errnum), __FILE__, __LINE__, __ASSERT_FUNCTION)) -# endif - -/* Version 2.4 and later of GCC define a magical variable `__PRETTY_FUNCTION__' - which contains the name of the function currently being defined. - This is broken in G++ before version 2.6. - C9x has a similar variable called __func__, but prefer the GCC one since - it demangles C++ function names. */ -# if defined __cplusplus ? __GNUC_PREREQ (2, 6) : __GNUC_PREREQ (2, 4) -# define __ASSERT_FUNCTION __extension__ __PRETTY_FUNCTION__ -# else -# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L -# define __ASSERT_FUNCTION __func__ -# else -# define __ASSERT_FUNCTION ((const char *) 0) -# endif -# endif - -#endif /* NDEBUG. */ - - -#if (defined __USE_ISOC11 \ - && (!defined __STDC_VERSION__ \ - || __STDC_VERSION__ <= 201710L \ - || !__GNUC_PREREQ (13, 0)) \ - && !defined __cplusplus) -# undef static_assert -# define static_assert _Static_assert -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@assert.h.blob deleted file mode 100644 index 8541cd03823846723a52126abd6ec62ae57ee97f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14071 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 ZPAx9d^9a`i?JV>bZfA6ETDYA{`hO#9I@<sM diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h deleted file mode 100644 index 5730e77d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h +++ /dev/null @@ -1,35 +0,0 @@ -/* Monotonically increasing wide counters (at least 62 bits). - Copyright (C) 2016-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_ATOMIC_WIDE_COUNTER_H -#define _BITS_ATOMIC_WIDE_COUNTER_H - -/* Counter that is monotonically increasing (by less than 2**31 per - increment), with a single writer, and an arbitrary number of - readers. */ -typedef union -{ - __extension__ unsigned long long int __value64; - struct - { - unsigned int __low; - unsigned int __high; - } __value32; -} __atomic_wide_counter; - -#endif /* _BITS_ATOMIC_WIDE_COUNTER_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@atomic_wide_counter.h.blob deleted file mode 100644 index 0946319553e6b57d2470aa891c225139ec693d2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13145 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h deleted file mode 100644 index 456dd177..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h +++ /dev/null @@ -1,79 +0,0 @@ -/* Macros and inline functions to swap the order of bytes in integer values. - Copyright (C) 1997-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#if !defined _BYTESWAP_H && !defined _NETINET_IN_H && !defined _ENDIAN_H -# error "Never use <bits/byteswap.h> directly; include <byteswap.h> instead." -#endif - -#ifndef _BITS_BYTESWAP_H -#define _BITS_BYTESWAP_H 1 - -#include <features.h> -#include <bits/types.h> - -/* Swap bytes in 16-bit value. */ -#define __bswap_constant_16(x) \ - ((__uint16_t) ((((x) >> 8) & 0xff) | (((x) & 0xff) << 8))) - -static __inline __uint16_t -__bswap_16 (__uint16_t __bsx) -{ -#if __GNUC_PREREQ (4, 8) - return __builtin_bswap16 (__bsx); -#else - return __bswap_constant_16 (__bsx); -#endif -} - -/* Swap bytes in 32-bit value. */ -#define __bswap_constant_32(x) \ - ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >> 8) \ - | (((x) & 0x0000ff00u) << 8) | (((x) & 0x000000ffu) << 24)) - -static __inline __uint32_t -__bswap_32 (__uint32_t __bsx) -{ -#if __GNUC_PREREQ (4, 3) - return __builtin_bswap32 (__bsx); -#else - return __bswap_constant_32 (__bsx); -#endif -} - -/* Swap bytes in 64-bit value. */ -#define __bswap_constant_64(x) \ - ((((x) & 0xff00000000000000ull) >> 56) \ - | (((x) & 0x00ff000000000000ull) >> 40) \ - | (((x) & 0x0000ff0000000000ull) >> 24) \ - | (((x) & 0x000000ff00000000ull) >> 8) \ - | (((x) & 0x00000000ff000000ull) << 8) \ - | (((x) & 0x0000000000ff0000ull) << 24) \ - | (((x) & 0x000000000000ff00ull) << 40) \ - | (((x) & 0x00000000000000ffull) << 56)) - -__extension__ static __inline __uint64_t -__bswap_64 (__uint64_t __bsx) -{ -#if __GNUC_PREREQ (4, 3) - return __builtin_bswap64 (__bsx); -#else - return __bswap_constant_64 (__bsx); -#endif -} - -#endif /* _BITS_BYTESWAP_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@byteswap.h.blob deleted file mode 100644 index bae5924cacb42b36b97bd532827549c389f5b618..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13583 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h deleted file mode 100644 index d6142640..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h +++ /dev/null @@ -1,681 +0,0 @@ -/* `sysconf', `pathconf', and `confstr' NAME values. Generic version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _UNISTD_H -# error "Never use <bits/confname.h> directly; include <unistd.h> instead." -#endif - -/* Values for the NAME argument to `pathconf' and `fpathconf'. */ -enum - { - _PC_LINK_MAX, -#define _PC_LINK_MAX _PC_LINK_MAX - _PC_MAX_CANON, -#define _PC_MAX_CANON _PC_MAX_CANON - _PC_MAX_INPUT, -#define _PC_MAX_INPUT _PC_MAX_INPUT - _PC_NAME_MAX, -#define _PC_NAME_MAX _PC_NAME_MAX - _PC_PATH_MAX, -#define _PC_PATH_MAX _PC_PATH_MAX - _PC_PIPE_BUF, -#define _PC_PIPE_BUF _PC_PIPE_BUF - _PC_CHOWN_RESTRICTED, -#define _PC_CHOWN_RESTRICTED _PC_CHOWN_RESTRICTED - _PC_NO_TRUNC, -#define _PC_NO_TRUNC _PC_NO_TRUNC - _PC_VDISABLE, -#define _PC_VDISABLE _PC_VDISABLE - _PC_SYNC_IO, -#define _PC_SYNC_IO _PC_SYNC_IO - _PC_ASYNC_IO, -#define _PC_ASYNC_IO _PC_ASYNC_IO - _PC_PRIO_IO, -#define _PC_PRIO_IO _PC_PRIO_IO - _PC_SOCK_MAXBUF, -#define _PC_SOCK_MAXBUF _PC_SOCK_MAXBUF - _PC_FILESIZEBITS, -#define _PC_FILESIZEBITS _PC_FILESIZEBITS - _PC_REC_INCR_XFER_SIZE, -#define _PC_REC_INCR_XFER_SIZE _PC_REC_INCR_XFER_SIZE - _PC_REC_MAX_XFER_SIZE, -#define _PC_REC_MAX_XFER_SIZE _PC_REC_MAX_XFER_SIZE - _PC_REC_MIN_XFER_SIZE, -#define _PC_REC_MIN_XFER_SIZE _PC_REC_MIN_XFER_SIZE - _PC_REC_XFER_ALIGN, -#define _PC_REC_XFER_ALIGN _PC_REC_XFER_ALIGN - _PC_ALLOC_SIZE_MIN, -#define _PC_ALLOC_SIZE_MIN _PC_ALLOC_SIZE_MIN - _PC_SYMLINK_MAX, -#define _PC_SYMLINK_MAX _PC_SYMLINK_MAX - _PC_2_SYMLINKS -#define _PC_2_SYMLINKS _PC_2_SYMLINKS - }; - -/* Values for the argument to `sysconf'. */ -enum - { - _SC_ARG_MAX, -#define _SC_ARG_MAX _SC_ARG_MAX - _SC_CHILD_MAX, -#define _SC_CHILD_MAX _SC_CHILD_MAX - _SC_CLK_TCK, -#define _SC_CLK_TCK _SC_CLK_TCK - _SC_NGROUPS_MAX, -#define _SC_NGROUPS_MAX _SC_NGROUPS_MAX - _SC_OPEN_MAX, -#define _SC_OPEN_MAX _SC_OPEN_MAX - _SC_STREAM_MAX, -#define _SC_STREAM_MAX _SC_STREAM_MAX - _SC_TZNAME_MAX, -#define _SC_TZNAME_MAX _SC_TZNAME_MAX - _SC_JOB_CONTROL, -#define _SC_JOB_CONTROL _SC_JOB_CONTROL - _SC_SAVED_IDS, -#define _SC_SAVED_IDS _SC_SAVED_IDS - _SC_REALTIME_SIGNALS, -#define _SC_REALTIME_SIGNALS _SC_REALTIME_SIGNALS - _SC_PRIORITY_SCHEDULING, -#define _SC_PRIORITY_SCHEDULING _SC_PRIORITY_SCHEDULING - _SC_TIMERS, -#define _SC_TIMERS _SC_TIMERS - _SC_ASYNCHRONOUS_IO, -#define _SC_ASYNCHRONOUS_IO _SC_ASYNCHRONOUS_IO - _SC_PRIORITIZED_IO, -#define _SC_PRIORITIZED_IO _SC_PRIORITIZED_IO - _SC_SYNCHRONIZED_IO, -#define _SC_SYNCHRONIZED_IO _SC_SYNCHRONIZED_IO - _SC_FSYNC, -#define _SC_FSYNC _SC_FSYNC - _SC_MAPPED_FILES, -#define _SC_MAPPED_FILES _SC_MAPPED_FILES - _SC_MEMLOCK, -#define _SC_MEMLOCK _SC_MEMLOCK - _SC_MEMLOCK_RANGE, -#define _SC_MEMLOCK_RANGE _SC_MEMLOCK_RANGE - _SC_MEMORY_PROTECTION, -#define _SC_MEMORY_PROTECTION _SC_MEMORY_PROTECTION - _SC_MESSAGE_PASSING, -#define _SC_MESSAGE_PASSING _SC_MESSAGE_PASSING - _SC_SEMAPHORES, -#define _SC_SEMAPHORES _SC_SEMAPHORES - _SC_SHARED_MEMORY_OBJECTS, -#define _SC_SHARED_MEMORY_OBJECTS _SC_SHARED_MEMORY_OBJECTS - _SC_AIO_LISTIO_MAX, -#define _SC_AIO_LISTIO_MAX _SC_AIO_LISTIO_MAX - _SC_AIO_MAX, -#define _SC_AIO_MAX _SC_AIO_MAX - _SC_AIO_PRIO_DELTA_MAX, -#define _SC_AIO_PRIO_DELTA_MAX _SC_AIO_PRIO_DELTA_MAX - _SC_DELAYTIMER_MAX, -#define _SC_DELAYTIMER_MAX _SC_DELAYTIMER_MAX - _SC_MQ_OPEN_MAX, -#define _SC_MQ_OPEN_MAX _SC_MQ_OPEN_MAX - _SC_MQ_PRIO_MAX, -#define _SC_MQ_PRIO_MAX _SC_MQ_PRIO_MAX - _SC_VERSION, -#define _SC_VERSION _SC_VERSION - _SC_PAGESIZE, -#define _SC_PAGESIZE _SC_PAGESIZE -#define _SC_PAGE_SIZE _SC_PAGESIZE - _SC_RTSIG_MAX, -#define _SC_RTSIG_MAX _SC_RTSIG_MAX - _SC_SEM_NSEMS_MAX, -#define _SC_SEM_NSEMS_MAX _SC_SEM_NSEMS_MAX - _SC_SEM_VALUE_MAX, -#define _SC_SEM_VALUE_MAX _SC_SEM_VALUE_MAX - _SC_SIGQUEUE_MAX, -#define _SC_SIGQUEUE_MAX _SC_SIGQUEUE_MAX - _SC_TIMER_MAX, -#define _SC_TIMER_MAX _SC_TIMER_MAX - - /* Values for the argument to `sysconf' - corresponding to _POSIX2_* symbols. */ - _SC_BC_BASE_MAX, -#define _SC_BC_BASE_MAX _SC_BC_BASE_MAX - _SC_BC_DIM_MAX, -#define _SC_BC_DIM_MAX _SC_BC_DIM_MAX - _SC_BC_SCALE_MAX, -#define _SC_BC_SCALE_MAX _SC_BC_SCALE_MAX - _SC_BC_STRING_MAX, -#define _SC_BC_STRING_MAX _SC_BC_STRING_MAX - _SC_COLL_WEIGHTS_MAX, -#define _SC_COLL_WEIGHTS_MAX _SC_COLL_WEIGHTS_MAX - _SC_EQUIV_CLASS_MAX, -#define _SC_EQUIV_CLASS_MAX _SC_EQUIV_CLASS_MAX - _SC_EXPR_NEST_MAX, -#define _SC_EXPR_NEST_MAX _SC_EXPR_NEST_MAX - _SC_LINE_MAX, -#define _SC_LINE_MAX _SC_LINE_MAX - _SC_RE_DUP_MAX, -#define _SC_RE_DUP_MAX _SC_RE_DUP_MAX - _SC_CHARCLASS_NAME_MAX, -#define _SC_CHARCLASS_NAME_MAX _SC_CHARCLASS_NAME_MAX - - _SC_2_VERSION, -#define _SC_2_VERSION _SC_2_VERSION - _SC_2_C_BIND, -#define _SC_2_C_BIND _SC_2_C_BIND - _SC_2_C_DEV, -#define _SC_2_C_DEV _SC_2_C_DEV - _SC_2_FORT_DEV, -#define _SC_2_FORT_DEV _SC_2_FORT_DEV - _SC_2_FORT_RUN, -#define _SC_2_FORT_RUN _SC_2_FORT_RUN - _SC_2_SW_DEV, -#define _SC_2_SW_DEV _SC_2_SW_DEV - _SC_2_LOCALEDEF, -#define _SC_2_LOCALEDEF _SC_2_LOCALEDEF - - _SC_PII, -#define _SC_PII _SC_PII - _SC_PII_XTI, -#define _SC_PII_XTI _SC_PII_XTI - _SC_PII_SOCKET, -#define _SC_PII_SOCKET _SC_PII_SOCKET - _SC_PII_INTERNET, -#define _SC_PII_INTERNET _SC_PII_INTERNET - _SC_PII_OSI, -#define _SC_PII_OSI _SC_PII_OSI - _SC_POLL, -#define _SC_POLL _SC_POLL - _SC_SELECT, -#define _SC_SELECT _SC_SELECT - _SC_UIO_MAXIOV, -#define _SC_UIO_MAXIOV _SC_UIO_MAXIOV - _SC_IOV_MAX = _SC_UIO_MAXIOV, -#define _SC_IOV_MAX _SC_IOV_MAX - _SC_PII_INTERNET_STREAM, -#define _SC_PII_INTERNET_STREAM _SC_PII_INTERNET_STREAM - _SC_PII_INTERNET_DGRAM, -#define _SC_PII_INTERNET_DGRAM _SC_PII_INTERNET_DGRAM - _SC_PII_OSI_COTS, -#define _SC_PII_OSI_COTS _SC_PII_OSI_COTS - _SC_PII_OSI_CLTS, -#define _SC_PII_OSI_CLTS _SC_PII_OSI_CLTS - _SC_PII_OSI_M, -#define _SC_PII_OSI_M _SC_PII_OSI_M - _SC_T_IOV_MAX, -#define _SC_T_IOV_MAX _SC_T_IOV_MAX - - /* Values according to POSIX 1003.1c (POSIX threads). */ - _SC_THREADS, -#define _SC_THREADS _SC_THREADS - _SC_THREAD_SAFE_FUNCTIONS, -#define _SC_THREAD_SAFE_FUNCTIONS _SC_THREAD_SAFE_FUNCTIONS - _SC_GETGR_R_SIZE_MAX, -#define _SC_GETGR_R_SIZE_MAX _SC_GETGR_R_SIZE_MAX - _SC_GETPW_R_SIZE_MAX, -#define _SC_GETPW_R_SIZE_MAX _SC_GETPW_R_SIZE_MAX - _SC_LOGIN_NAME_MAX, -#define _SC_LOGIN_NAME_MAX _SC_LOGIN_NAME_MAX - _SC_TTY_NAME_MAX, -#define _SC_TTY_NAME_MAX _SC_TTY_NAME_MAX - _SC_THREAD_DESTRUCTOR_ITERATIONS, -#define _SC_THREAD_DESTRUCTOR_ITERATIONS _SC_THREAD_DESTRUCTOR_ITERATIONS - _SC_THREAD_KEYS_MAX, -#define _SC_THREAD_KEYS_MAX _SC_THREAD_KEYS_MAX - _SC_THREAD_STACK_MIN, -#define _SC_THREAD_STACK_MIN _SC_THREAD_STACK_MIN - _SC_THREAD_THREADS_MAX, -#define _SC_THREAD_THREADS_MAX _SC_THREAD_THREADS_MAX - _SC_THREAD_ATTR_STACKADDR, -#define _SC_THREAD_ATTR_STACKADDR _SC_THREAD_ATTR_STACKADDR - _SC_THREAD_ATTR_STACKSIZE, -#define _SC_THREAD_ATTR_STACKSIZE _SC_THREAD_ATTR_STACKSIZE - _SC_THREAD_PRIORITY_SCHEDULING, -#define _SC_THREAD_PRIORITY_SCHEDULING _SC_THREAD_PRIORITY_SCHEDULING - _SC_THREAD_PRIO_INHERIT, -#define _SC_THREAD_PRIO_INHERIT _SC_THREAD_PRIO_INHERIT - _SC_THREAD_PRIO_PROTECT, -#define _SC_THREAD_PRIO_PROTECT _SC_THREAD_PRIO_PROTECT - _SC_THREAD_PROCESS_SHARED, -#define _SC_THREAD_PROCESS_SHARED _SC_THREAD_PROCESS_SHARED - - _SC_NPROCESSORS_CONF, -#define _SC_NPROCESSORS_CONF _SC_NPROCESSORS_CONF - _SC_NPROCESSORS_ONLN, -#define _SC_NPROCESSORS_ONLN _SC_NPROCESSORS_ONLN - _SC_PHYS_PAGES, -#define _SC_PHYS_PAGES _SC_PHYS_PAGES - _SC_AVPHYS_PAGES, -#define _SC_AVPHYS_PAGES _SC_AVPHYS_PAGES - _SC_ATEXIT_MAX, -#define _SC_ATEXIT_MAX _SC_ATEXIT_MAX - _SC_PASS_MAX, -#define _SC_PASS_MAX _SC_PASS_MAX - - _SC_XOPEN_VERSION, -#define _SC_XOPEN_VERSION _SC_XOPEN_VERSION - _SC_XOPEN_XCU_VERSION, -#define _SC_XOPEN_XCU_VERSION _SC_XOPEN_XCU_VERSION - _SC_XOPEN_UNIX, -#define _SC_XOPEN_UNIX _SC_XOPEN_UNIX - _SC_XOPEN_CRYPT, -#define _SC_XOPEN_CRYPT _SC_XOPEN_CRYPT - _SC_XOPEN_ENH_I18N, -#define _SC_XOPEN_ENH_I18N _SC_XOPEN_ENH_I18N - _SC_XOPEN_SHM, -#define _SC_XOPEN_SHM _SC_XOPEN_SHM - - _SC_2_CHAR_TERM, -#define _SC_2_CHAR_TERM _SC_2_CHAR_TERM - _SC_2_C_VERSION, -#define _SC_2_C_VERSION _SC_2_C_VERSION - _SC_2_UPE, -#define _SC_2_UPE _SC_2_UPE - - _SC_XOPEN_XPG2, -#define _SC_XOPEN_XPG2 _SC_XOPEN_XPG2 - _SC_XOPEN_XPG3, -#define _SC_XOPEN_XPG3 _SC_XOPEN_XPG3 - _SC_XOPEN_XPG4, -#define _SC_XOPEN_XPG4 _SC_XOPEN_XPG4 - - _SC_CHAR_BIT, -#define _SC_CHAR_BIT _SC_CHAR_BIT - _SC_CHAR_MAX, -#define _SC_CHAR_MAX _SC_CHAR_MAX - _SC_CHAR_MIN, -#define _SC_CHAR_MIN _SC_CHAR_MIN - _SC_INT_MAX, -#define _SC_INT_MAX _SC_INT_MAX - _SC_INT_MIN, -#define _SC_INT_MIN _SC_INT_MIN - _SC_LONG_BIT, -#define _SC_LONG_BIT _SC_LONG_BIT - _SC_WORD_BIT, -#define _SC_WORD_BIT _SC_WORD_BIT - _SC_MB_LEN_MAX, -#define _SC_MB_LEN_MAX _SC_MB_LEN_MAX - _SC_NZERO, -#define _SC_NZERO _SC_NZERO - _SC_SSIZE_MAX, -#define _SC_SSIZE_MAX _SC_SSIZE_MAX - _SC_SCHAR_MAX, -#define _SC_SCHAR_MAX _SC_SCHAR_MAX - _SC_SCHAR_MIN, -#define _SC_SCHAR_MIN _SC_SCHAR_MIN - _SC_SHRT_MAX, -#define _SC_SHRT_MAX _SC_SHRT_MAX - _SC_SHRT_MIN, -#define _SC_SHRT_MIN _SC_SHRT_MIN - _SC_UCHAR_MAX, -#define _SC_UCHAR_MAX _SC_UCHAR_MAX - _SC_UINT_MAX, -#define _SC_UINT_MAX _SC_UINT_MAX - _SC_ULONG_MAX, -#define _SC_ULONG_MAX _SC_ULONG_MAX - _SC_USHRT_MAX, -#define _SC_USHRT_MAX _SC_USHRT_MAX - - _SC_NL_ARGMAX, -#define _SC_NL_ARGMAX _SC_NL_ARGMAX - _SC_NL_LANGMAX, -#define _SC_NL_LANGMAX _SC_NL_LANGMAX - _SC_NL_MSGMAX, -#define _SC_NL_MSGMAX _SC_NL_MSGMAX - _SC_NL_NMAX, -#define _SC_NL_NMAX _SC_NL_NMAX - _SC_NL_SETMAX, -#define _SC_NL_SETMAX _SC_NL_SETMAX - _SC_NL_TEXTMAX, -#define _SC_NL_TEXTMAX _SC_NL_TEXTMAX - - _SC_XBS5_ILP32_OFF32, -#define _SC_XBS5_ILP32_OFF32 _SC_XBS5_ILP32_OFF32 - _SC_XBS5_ILP32_OFFBIG, -#define _SC_XBS5_ILP32_OFFBIG _SC_XBS5_ILP32_OFFBIG - _SC_XBS5_LP64_OFF64, -#define _SC_XBS5_LP64_OFF64 _SC_XBS5_LP64_OFF64 - _SC_XBS5_LPBIG_OFFBIG, -#define _SC_XBS5_LPBIG_OFFBIG _SC_XBS5_LPBIG_OFFBIG - - _SC_XOPEN_LEGACY, -#define _SC_XOPEN_LEGACY _SC_XOPEN_LEGACY - _SC_XOPEN_REALTIME, -#define _SC_XOPEN_REALTIME _SC_XOPEN_REALTIME - _SC_XOPEN_REALTIME_THREADS, -#define _SC_XOPEN_REALTIME_THREADS _SC_XOPEN_REALTIME_THREADS - - _SC_ADVISORY_INFO, -#define _SC_ADVISORY_INFO _SC_ADVISORY_INFO - _SC_BARRIERS, -#define _SC_BARRIERS _SC_BARRIERS - _SC_BASE, -#define _SC_BASE _SC_BASE - _SC_C_LANG_SUPPORT, -#define _SC_C_LANG_SUPPORT _SC_C_LANG_SUPPORT - _SC_C_LANG_SUPPORT_R, -#define _SC_C_LANG_SUPPORT_R _SC_C_LANG_SUPPORT_R - _SC_CLOCK_SELECTION, -#define _SC_CLOCK_SELECTION _SC_CLOCK_SELECTION - _SC_CPUTIME, -#define _SC_CPUTIME _SC_CPUTIME - _SC_THREAD_CPUTIME, -#define _SC_THREAD_CPUTIME _SC_THREAD_CPUTIME - _SC_DEVICE_IO, -#define _SC_DEVICE_IO _SC_DEVICE_IO - _SC_DEVICE_SPECIFIC, -#define _SC_DEVICE_SPECIFIC _SC_DEVICE_SPECIFIC - _SC_DEVICE_SPECIFIC_R, -#define _SC_DEVICE_SPECIFIC_R _SC_DEVICE_SPECIFIC_R - _SC_FD_MGMT, -#define _SC_FD_MGMT _SC_FD_MGMT - _SC_FIFO, -#define _SC_FIFO _SC_FIFO - _SC_PIPE, -#define _SC_PIPE _SC_PIPE - _SC_FILE_ATTRIBUTES, -#define _SC_FILE_ATTRIBUTES _SC_FILE_ATTRIBUTES - _SC_FILE_LOCKING, -#define _SC_FILE_LOCKING _SC_FILE_LOCKING - _SC_FILE_SYSTEM, -#define _SC_FILE_SYSTEM _SC_FILE_SYSTEM - _SC_MONOTONIC_CLOCK, -#define _SC_MONOTONIC_CLOCK _SC_MONOTONIC_CLOCK - _SC_MULTI_PROCESS, -#define _SC_MULTI_PROCESS _SC_MULTI_PROCESS - _SC_SINGLE_PROCESS, -#define _SC_SINGLE_PROCESS _SC_SINGLE_PROCESS - _SC_NETWORKING, -#define _SC_NETWORKING _SC_NETWORKING - _SC_READER_WRITER_LOCKS, -#define _SC_READER_WRITER_LOCKS _SC_READER_WRITER_LOCKS - _SC_SPIN_LOCKS, -#define _SC_SPIN_LOCKS _SC_SPIN_LOCKS - _SC_REGEXP, -#define _SC_REGEXP _SC_REGEXP - _SC_REGEX_VERSION, -#define _SC_REGEX_VERSION _SC_REGEX_VERSION - _SC_SHELL, -#define _SC_SHELL _SC_SHELL - _SC_SIGNALS, -#define _SC_SIGNALS _SC_SIGNALS - _SC_SPAWN, -#define _SC_SPAWN _SC_SPAWN - _SC_SPORADIC_SERVER, -#define _SC_SPORADIC_SERVER _SC_SPORADIC_SERVER - _SC_THREAD_SPORADIC_SERVER, -#define _SC_THREAD_SPORADIC_SERVER _SC_THREAD_SPORADIC_SERVER - _SC_SYSTEM_DATABASE, -#define _SC_SYSTEM_DATABASE _SC_SYSTEM_DATABASE - _SC_SYSTEM_DATABASE_R, -#define _SC_SYSTEM_DATABASE_R _SC_SYSTEM_DATABASE_R - _SC_TIMEOUTS, -#define _SC_TIMEOUTS _SC_TIMEOUTS - _SC_TYPED_MEMORY_OBJECTS, -#define _SC_TYPED_MEMORY_OBJECTS _SC_TYPED_MEMORY_OBJECTS - _SC_USER_GROUPS, -#define _SC_USER_GROUPS _SC_USER_GROUPS - _SC_USER_GROUPS_R, -#define _SC_USER_GROUPS_R _SC_USER_GROUPS_R - _SC_2_PBS, -#define _SC_2_PBS _SC_2_PBS - _SC_2_PBS_ACCOUNTING, -#define _SC_2_PBS_ACCOUNTING _SC_2_PBS_ACCOUNTING - _SC_2_PBS_LOCATE, -#define _SC_2_PBS_LOCATE _SC_2_PBS_LOCATE - _SC_2_PBS_MESSAGE, -#define _SC_2_PBS_MESSAGE _SC_2_PBS_MESSAGE - _SC_2_PBS_TRACK, -#define _SC_2_PBS_TRACK _SC_2_PBS_TRACK - _SC_SYMLOOP_MAX, -#define _SC_SYMLOOP_MAX _SC_SYMLOOP_MAX - _SC_STREAMS, -#define _SC_STREAMS _SC_STREAMS - _SC_2_PBS_CHECKPOINT, -#define _SC_2_PBS_CHECKPOINT _SC_2_PBS_CHECKPOINT - - _SC_V6_ILP32_OFF32, -#define _SC_V6_ILP32_OFF32 _SC_V6_ILP32_OFF32 - _SC_V6_ILP32_OFFBIG, -#define _SC_V6_ILP32_OFFBIG _SC_V6_ILP32_OFFBIG - _SC_V6_LP64_OFF64, -#define _SC_V6_LP64_OFF64 _SC_V6_LP64_OFF64 - _SC_V6_LPBIG_OFFBIG, -#define _SC_V6_LPBIG_OFFBIG _SC_V6_LPBIG_OFFBIG - - _SC_HOST_NAME_MAX, -#define _SC_HOST_NAME_MAX _SC_HOST_NAME_MAX - _SC_TRACE, -#define _SC_TRACE _SC_TRACE - _SC_TRACE_EVENT_FILTER, -#define _SC_TRACE_EVENT_FILTER _SC_TRACE_EVENT_FILTER - _SC_TRACE_INHERIT, -#define _SC_TRACE_INHERIT _SC_TRACE_INHERIT - _SC_TRACE_LOG, -#define _SC_TRACE_LOG _SC_TRACE_LOG - - _SC_LEVEL1_ICACHE_SIZE, -#define _SC_LEVEL1_ICACHE_SIZE _SC_LEVEL1_ICACHE_SIZE - _SC_LEVEL1_ICACHE_ASSOC, -#define _SC_LEVEL1_ICACHE_ASSOC _SC_LEVEL1_ICACHE_ASSOC - _SC_LEVEL1_ICACHE_LINESIZE, -#define _SC_LEVEL1_ICACHE_LINESIZE _SC_LEVEL1_ICACHE_LINESIZE - _SC_LEVEL1_DCACHE_SIZE, -#define _SC_LEVEL1_DCACHE_SIZE _SC_LEVEL1_DCACHE_SIZE - _SC_LEVEL1_DCACHE_ASSOC, -#define _SC_LEVEL1_DCACHE_ASSOC _SC_LEVEL1_DCACHE_ASSOC - _SC_LEVEL1_DCACHE_LINESIZE, -#define _SC_LEVEL1_DCACHE_LINESIZE _SC_LEVEL1_DCACHE_LINESIZE - _SC_LEVEL2_CACHE_SIZE, -#define _SC_LEVEL2_CACHE_SIZE _SC_LEVEL2_CACHE_SIZE - _SC_LEVEL2_CACHE_ASSOC, -#define _SC_LEVEL2_CACHE_ASSOC _SC_LEVEL2_CACHE_ASSOC - _SC_LEVEL2_CACHE_LINESIZE, -#define _SC_LEVEL2_CACHE_LINESIZE _SC_LEVEL2_CACHE_LINESIZE - _SC_LEVEL3_CACHE_SIZE, -#define _SC_LEVEL3_CACHE_SIZE _SC_LEVEL3_CACHE_SIZE - _SC_LEVEL3_CACHE_ASSOC, -#define _SC_LEVEL3_CACHE_ASSOC _SC_LEVEL3_CACHE_ASSOC - _SC_LEVEL3_CACHE_LINESIZE, -#define _SC_LEVEL3_CACHE_LINESIZE _SC_LEVEL3_CACHE_LINESIZE - _SC_LEVEL4_CACHE_SIZE, -#define _SC_LEVEL4_CACHE_SIZE _SC_LEVEL4_CACHE_SIZE - _SC_LEVEL4_CACHE_ASSOC, -#define _SC_LEVEL4_CACHE_ASSOC _SC_LEVEL4_CACHE_ASSOC - _SC_LEVEL4_CACHE_LINESIZE, -#define _SC_LEVEL4_CACHE_LINESIZE _SC_LEVEL4_CACHE_LINESIZE - /* Leave room here, maybe we need a few more cache levels some day. */ - - _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50, -#define _SC_IPV6 _SC_IPV6 - _SC_RAW_SOCKETS, -#define _SC_RAW_SOCKETS _SC_RAW_SOCKETS - - _SC_V7_ILP32_OFF32, -#define _SC_V7_ILP32_OFF32 _SC_V7_ILP32_OFF32 - _SC_V7_ILP32_OFFBIG, -#define _SC_V7_ILP32_OFFBIG _SC_V7_ILP32_OFFBIG - _SC_V7_LP64_OFF64, -#define _SC_V7_LP64_OFF64 _SC_V7_LP64_OFF64 - _SC_V7_LPBIG_OFFBIG, -#define _SC_V7_LPBIG_OFFBIG _SC_V7_LPBIG_OFFBIG - - _SC_SS_REPL_MAX, -#define _SC_SS_REPL_MAX _SC_SS_REPL_MAX - - _SC_TRACE_EVENT_NAME_MAX, -#define _SC_TRACE_EVENT_NAME_MAX _SC_TRACE_EVENT_NAME_MAX - _SC_TRACE_NAME_MAX, -#define _SC_TRACE_NAME_MAX _SC_TRACE_NAME_MAX - _SC_TRACE_SYS_MAX, -#define _SC_TRACE_SYS_MAX _SC_TRACE_SYS_MAX - _SC_TRACE_USER_EVENT_MAX, -#define _SC_TRACE_USER_EVENT_MAX _SC_TRACE_USER_EVENT_MAX - - _SC_XOPEN_STREAMS, -#define _SC_XOPEN_STREAMS _SC_XOPEN_STREAMS - - _SC_THREAD_ROBUST_PRIO_INHERIT, -#define _SC_THREAD_ROBUST_PRIO_INHERIT _SC_THREAD_ROBUST_PRIO_INHERIT - _SC_THREAD_ROBUST_PRIO_PROTECT, -#define _SC_THREAD_ROBUST_PRIO_PROTECT _SC_THREAD_ROBUST_PRIO_PROTECT - - _SC_MINSIGSTKSZ, -#define _SC_MINSIGSTKSZ _SC_MINSIGSTKSZ - - _SC_SIGSTKSZ -#define _SC_SIGSTKSZ _SC_SIGSTKSZ - }; - -/* Values for the NAME argument to `confstr'. */ -enum - { - _CS_PATH, /* The default search path. */ -#define _CS_PATH _CS_PATH - - _CS_V6_WIDTH_RESTRICTED_ENVS, -#define _CS_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS -#define _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS - - _CS_GNU_LIBC_VERSION, -#define _CS_GNU_LIBC_VERSION _CS_GNU_LIBC_VERSION - _CS_GNU_LIBPTHREAD_VERSION, -#define _CS_GNU_LIBPTHREAD_VERSION _CS_GNU_LIBPTHREAD_VERSION - - _CS_V5_WIDTH_RESTRICTED_ENVS, -#define _CS_V5_WIDTH_RESTRICTED_ENVS _CS_V5_WIDTH_RESTRICTED_ENVS -#define _CS_POSIX_V5_WIDTH_RESTRICTED_ENVS _CS_V5_WIDTH_RESTRICTED_ENVS - - _CS_V7_WIDTH_RESTRICTED_ENVS, -#define _CS_V7_WIDTH_RESTRICTED_ENVS _CS_V7_WIDTH_RESTRICTED_ENVS -#define _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS _CS_V7_WIDTH_RESTRICTED_ENVS - - _CS_LFS_CFLAGS = 1000, -#define _CS_LFS_CFLAGS _CS_LFS_CFLAGS - _CS_LFS_LDFLAGS, -#define _CS_LFS_LDFLAGS _CS_LFS_LDFLAGS - _CS_LFS_LIBS, -#define _CS_LFS_LIBS _CS_LFS_LIBS - _CS_LFS_LINTFLAGS, -#define _CS_LFS_LINTFLAGS _CS_LFS_LINTFLAGS - _CS_LFS64_CFLAGS, -#define _CS_LFS64_CFLAGS _CS_LFS64_CFLAGS - _CS_LFS64_LDFLAGS, -#define _CS_LFS64_LDFLAGS _CS_LFS64_LDFLAGS - _CS_LFS64_LIBS, -#define _CS_LFS64_LIBS _CS_LFS64_LIBS - _CS_LFS64_LINTFLAGS, -#define _CS_LFS64_LINTFLAGS _CS_LFS64_LINTFLAGS - - _CS_XBS5_ILP32_OFF32_CFLAGS = 1100, -#define _CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS - _CS_XBS5_ILP32_OFF32_LDFLAGS, -#define _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS - _CS_XBS5_ILP32_OFF32_LIBS, -#define _CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LIBS - _CS_XBS5_ILP32_OFF32_LINTFLAGS, -#define _CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFF32_LINTFLAGS - _CS_XBS5_ILP32_OFFBIG_CFLAGS, -#define _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS - _CS_XBS5_ILP32_OFFBIG_LDFLAGS, -#define _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS - _CS_XBS5_ILP32_OFFBIG_LIBS, -#define _CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LIBS - _CS_XBS5_ILP32_OFFBIG_LINTFLAGS, -#define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS - _CS_XBS5_LP64_OFF64_CFLAGS, -#define _CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_CFLAGS - _CS_XBS5_LP64_OFF64_LDFLAGS, -#define _CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS - _CS_XBS5_LP64_OFF64_LIBS, -#define _CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LIBS - _CS_XBS5_LP64_OFF64_LINTFLAGS, -#define _CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LP64_OFF64_LINTFLAGS - _CS_XBS5_LPBIG_OFFBIG_CFLAGS, -#define _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS - _CS_XBS5_LPBIG_OFFBIG_LDFLAGS, -#define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS - _CS_XBS5_LPBIG_OFFBIG_LIBS, -#define _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LIBS - _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS, -#define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS - - _CS_POSIX_V6_ILP32_OFF32_CFLAGS, -#define _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS - _CS_POSIX_V6_ILP32_OFF32_LDFLAGS, -#define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS - _CS_POSIX_V6_ILP32_OFF32_LIBS, -#define _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LIBS - _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS, -#define _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS - _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS, -#define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS - _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS, -#define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS - _CS_POSIX_V6_ILP32_OFFBIG_LIBS, -#define _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LIBS - _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS, -#define _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS - _CS_POSIX_V6_LP64_OFF64_CFLAGS, -#define _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS - _CS_POSIX_V6_LP64_OFF64_LDFLAGS, -#define _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS - _CS_POSIX_V6_LP64_OFF64_LIBS, -#define _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LIBS - _CS_POSIX_V6_LP64_OFF64_LINTFLAGS, -#define _CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS - _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS, -#define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS - _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS, -#define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS - _CS_POSIX_V6_LPBIG_OFFBIG_LIBS, -#define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS - _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS, -#define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS - - _CS_POSIX_V7_ILP32_OFF32_CFLAGS, -#define _CS_POSIX_V7_ILP32_OFF32_CFLAGS _CS_POSIX_V7_ILP32_OFF32_CFLAGS - _CS_POSIX_V7_ILP32_OFF32_LDFLAGS, -#define _CS_POSIX_V7_ILP32_OFF32_LDFLAGS _CS_POSIX_V7_ILP32_OFF32_LDFLAGS - _CS_POSIX_V7_ILP32_OFF32_LIBS, -#define _CS_POSIX_V7_ILP32_OFF32_LIBS _CS_POSIX_V7_ILP32_OFF32_LIBS - _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS, -#define _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS - _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS, -#define _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS - _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS, -#define _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS - _CS_POSIX_V7_ILP32_OFFBIG_LIBS, -#define _CS_POSIX_V7_ILP32_OFFBIG_LIBS _CS_POSIX_V7_ILP32_OFFBIG_LIBS - _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS, -#define _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS - _CS_POSIX_V7_LP64_OFF64_CFLAGS, -#define _CS_POSIX_V7_LP64_OFF64_CFLAGS _CS_POSIX_V7_LP64_OFF64_CFLAGS - _CS_POSIX_V7_LP64_OFF64_LDFLAGS, -#define _CS_POSIX_V7_LP64_OFF64_LDFLAGS _CS_POSIX_V7_LP64_OFF64_LDFLAGS - _CS_POSIX_V7_LP64_OFF64_LIBS, -#define _CS_POSIX_V7_LP64_OFF64_LIBS _CS_POSIX_V7_LP64_OFF64_LIBS - _CS_POSIX_V7_LP64_OFF64_LINTFLAGS, -#define _CS_POSIX_V7_LP64_OFF64_LINTFLAGS _CS_POSIX_V7_LP64_OFF64_LINTFLAGS - _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS, -#define _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS - _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS, -#define _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS - _CS_POSIX_V7_LPBIG_OFFBIG_LIBS, -#define _CS_POSIX_V7_LPBIG_OFFBIG_LIBS _CS_POSIX_V7_LPBIG_OFFBIG_LIBS - _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS, -#define _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS - - _CS_V6_ENV, -#define _CS_V6_ENV _CS_V6_ENV - _CS_V7_ENV -#define _CS_V7_ENV _CS_V7_ENV - }; diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@confname.h.blob deleted file mode 100644 index 89c424e5ee8a23b8e259a0749b99e43210d8e045..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 69157 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h deleted file mode 100644 index 16037eae..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h +++ /dev/null @@ -1,124 +0,0 @@ -/* Definition of the cpu_set_t structure used by the POSIX 1003.1b-1993 - scheduling interface. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_CPU_SET_H -#define _BITS_CPU_SET_H 1 - -#ifndef _SCHED_H -# error "Never include <bits/cpu-set.h> directly; use <sched.h> instead." -#endif - -/* Size definition for CPU sets. */ -#define __CPU_SETSIZE 1024 -#define __NCPUBITS (8 * sizeof (__cpu_mask)) - -/* Type for array elements in 'cpu_set_t'. */ -typedef __CPU_MASK_TYPE __cpu_mask; - -/* Basic access functions. */ -#define __CPUELT(cpu) ((cpu) / __NCPUBITS) -#define __CPUMASK(cpu) ((__cpu_mask) 1 << ((cpu) % __NCPUBITS)) - -/* Data structure to describe CPU mask. */ -typedef struct -{ - __cpu_mask __bits[__CPU_SETSIZE / __NCPUBITS]; -} cpu_set_t; - -/* Access functions for CPU masks. */ -#if __GNUC_PREREQ (2, 91) -# define __CPU_ZERO_S(setsize, cpusetp) \ - do __builtin_memset (cpusetp, '\0', setsize); while (0) -#else -# define __CPU_ZERO_S(setsize, cpusetp) \ - do { \ - size_t __i; \ - size_t __imax = (setsize) / sizeof (__cpu_mask); \ - __cpu_mask *__bits = (cpusetp)->__bits; \ - for (__i = 0; __i < __imax; ++__i) \ - __bits[__i] = 0; \ - } while (0) -#endif -#define __CPU_SET_S(cpu, setsize, cpusetp) \ - (__extension__ \ - ({ size_t __cpu = (cpu); \ - __cpu / 8 < (setsize) \ - ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] \ - |= __CPUMASK (__cpu)) \ - : 0; })) -#define __CPU_CLR_S(cpu, setsize, cpusetp) \ - (__extension__ \ - ({ size_t __cpu = (cpu); \ - __cpu / 8 < (setsize) \ - ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] \ - &= ~__CPUMASK (__cpu)) \ - : 0; })) -#define __CPU_ISSET_S(cpu, setsize, cpusetp) \ - (__extension__ \ - ({ size_t __cpu = (cpu); \ - __cpu / 8 < (setsize) \ - ? ((((const __cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] \ - & __CPUMASK (__cpu))) != 0 \ - : 0; })) - -#define __CPU_COUNT_S(setsize, cpusetp) \ - __sched_cpucount (setsize, cpusetp) - -#if __GNUC_PREREQ (2, 91) -# define __CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \ - (__builtin_memcmp (cpusetp1, cpusetp2, setsize) == 0) -#else -# define __CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \ - (__extension__ \ - ({ const __cpu_mask *__arr1 = (cpusetp1)->__bits; \ - const __cpu_mask *__arr2 = (cpusetp2)->__bits; \ - size_t __imax = (setsize) / sizeof (__cpu_mask); \ - size_t __i; \ - for (__i = 0; __i < __imax; ++__i) \ - if (__arr1[__i] != __arr2[__i]) \ - break; \ - __i == __imax; })) -#endif - -#define __CPU_OP_S(setsize, destset, srcset1, srcset2, op) \ - (__extension__ \ - ({ cpu_set_t *__dest = (destset); \ - const __cpu_mask *__arr1 = (srcset1)->__bits; \ - const __cpu_mask *__arr2 = (srcset2)->__bits; \ - size_t __imax = (setsize) / sizeof (__cpu_mask); \ - size_t __i; \ - for (__i = 0; __i < __imax; ++__i) \ - ((__cpu_mask *) __dest->__bits)[__i] = __arr1[__i] op __arr2[__i]; \ - __dest; })) - -#define __CPU_ALLOC_SIZE(count) \ - ((((count) + __NCPUBITS - 1) / __NCPUBITS) * sizeof (__cpu_mask)) -#define __CPU_ALLOC(count) __sched_cpualloc (count) -#define __CPU_FREE(cpuset) __sched_cpufree (cpuset) - -__BEGIN_DECLS - -extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp) - __THROW; -extern cpu_set_t *__sched_cpualloc (size_t __count) __THROW __wur; -extern void __sched_cpufree (cpu_set_t *__set) __THROW; - -__END_DECLS - -#endif /* bits/cpu-set.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@cpu-set.h.blob deleted file mode 100644 index c94b925998056439c79c22a708a0c2d0b0073a6c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14888 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h deleted file mode 100644 index ab34d986..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h +++ /dev/null @@ -1,59 +0,0 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _DIRENT_H -# error "Never use <bits/dirent.h> directly; include <dirent.h> instead." -#endif - -struct dirent - { -#ifndef __USE_FILE_OFFSET64 - __ino_t d_ino; - __off_t d_off; -#else - __ino64_t d_ino; - __off64_t d_off; -#endif - unsigned short int d_reclen; - unsigned char d_type; - char d_name[256]; /* We must not include limits.h! */ - }; - -#ifdef __USE_LARGEFILE64 -struct dirent64 - { - __ino64_t d_ino; - __off64_t d_off; - unsigned short int d_reclen; - unsigned char d_type; - char d_name[256]; /* We must not include limits.h! */ - }; -#endif - -#define d_fileno d_ino /* Backwards compatibility. */ - -#undef _DIRENT_HAVE_D_NAMLEN -#define _DIRENT_HAVE_D_RECLEN -#define _DIRENT_HAVE_D_OFF -#define _DIRENT_HAVE_D_TYPE - -#if defined __OFF_T_MATCHES_OFF64_T && defined __INO_T_MATCHES_INO64_T -/* Inform libc code that these two types are effectively identical. */ -# define _DIRENT_MATCHES_DIRENT64 1 -#else -# define _DIRENT_MATCHES_DIRENT64 0 -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent.h.blob deleted file mode 100644 index 34dae3dac6682bebfe779a6a46919687c10fd816..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13195 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h deleted file mode 100644 index c7d99642..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h +++ /dev/null @@ -1,33 +0,0 @@ -/* System-specific extensions of <dirent.h>. Linux version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _DIRENT_H -# error "Never include <bits/dirent_ext.h> directly; use <dirent.h> instead." -#endif - -__BEGIN_DECLS - -#ifdef __USE_GNU -/* Read from the directory descriptor FD into LENGTH bytes at BUFFER. - Return the number of bytes read on success (0 for end of - directory), and -1 for failure. */ -extern __ssize_t getdents64 (int __fd, void *__buffer, size_t __length) - __THROW __nonnull ((2)); -#endif - -__END_DECLS diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@dirent_ext.h.blob deleted file mode 100644 index 8209b2bb4a11d7d7c62b438acca99d8442e71d91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12191 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 S|M}kN(dy#v>h7y=Ui=@zxz-&3 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h deleted file mode 100644 index b659a003..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Endian macros for string.h functions - Copyright (C) 1992-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _BITS_ENDIAN_H -#define _BITS_ENDIAN_H 1 - -/* Definitions for byte order, according to significance of bytes, - from low addresses to high addresses. The value is what you get by - putting '4' in the most significant byte, '3' in the second most - significant byte, '2' in the second least significant byte, and '1' - in the least significant byte, and then writing down one digit for - each byte, starting with the byte at the lowest address at the left, - and proceeding to the byte with the highest address at the right. */ - -#define __LITTLE_ENDIAN 1234 -#define __BIG_ENDIAN 4321 -#define __PDP_ENDIAN 3412 - -/* This file defines `__BYTE_ORDER' for the particular machine. */ -#include <bits/endianness.h> - -/* Some machines may need to use a different endianness for floating point - values. */ -#ifndef __FLOAT_WORD_ORDER -# define __FLOAT_WORD_ORDER __BYTE_ORDER -#endif - -#if __BYTE_ORDER == __LITTLE_ENDIAN -# define __LONG_LONG_PAIR(HI, LO) LO, HI -#elif __BYTE_ORDER == __BIG_ENDIAN -# define __LONG_LONG_PAIR(HI, LO) HI, LO -#endif - -#endif /* bits/endian.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endian.h.blob deleted file mode 100644 index 6657f826fced547cdcffb0f2608121a6fffacfb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12660 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h deleted file mode 100644 index 962a9ae4..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef _BITS_ENDIANNESS_H -#define _BITS_ENDIANNESS_H 1 - -#ifndef _BITS_ENDIAN_H -# error "Never use <bits/endianness.h> directly; include <endian.h> instead." -#endif - -/* i386/x86_64 are little-endian. */ -#define __BYTE_ORDER __LITTLE_ENDIAN - -#endif /* bits/endianness.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@endianness.h.blob deleted file mode 100644 index 0be0380b22b8d4e07e6b2cd24bb03d1191e67703..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12317 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 G<@SFF5B!1v diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h deleted file mode 100644 index d27243e1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h +++ /dev/null @@ -1,105 +0,0 @@ -/* Copyright (C) 1999-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _UNISTD_H -# error "Never include this file directly. Use <unistd.h> instead" -#endif - -#include <bits/wordsize.h> - -/* This header should define the following symbols under the described - situations. A value `1' means that the model is always supported, - `-1' means it is never supported. Undefined means it cannot be - statically decided. - - _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type - _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type - - _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type - _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type - - The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, - _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, - _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were - used in previous versions of the Unix standard and are available - only for compatibility. -*/ - -#if __WORDSIZE == 64 - -/* Environments with 32-bit wide pointers are optionally provided. - Therefore following macros aren't defined: - # undef _POSIX_V7_ILP32_OFF32 - # undef _POSIX_V7_ILP32_OFFBIG - # undef _POSIX_V6_ILP32_OFF32 - # undef _POSIX_V6_ILP32_OFFBIG - # undef _XBS5_ILP32_OFF32 - # undef _XBS5_ILP32_OFFBIG - and users need to check at runtime. */ - -/* We also have no use (for now) for an environment with bigger pointers - and offsets. */ -# define _POSIX_V7_LPBIG_OFFBIG -1 -# define _POSIX_V6_LPBIG_OFFBIG -1 -# define _XBS5_LPBIG_OFFBIG -1 - -/* By default we have 64-bit wide `long int', pointers and `off_t'. */ -# define _POSIX_V7_LP64_OFF64 1 -# define _POSIX_V6_LP64_OFF64 1 -# define _XBS5_LP64_OFF64 1 - -#else /* __WORDSIZE == 32 */ - -/* We have 32-bit wide `int', `long int' and pointers and all platforms - support LFS. -mx32 has 64-bit wide `off_t'. */ -# define _POSIX_V7_ILP32_OFFBIG 1 -# define _POSIX_V6_ILP32_OFFBIG 1 -# define _XBS5_ILP32_OFFBIG 1 - -# ifndef __x86_64__ -/* -m32 has 32-bit wide `off_t'. */ -# define _POSIX_V7_ILP32_OFF32 1 -# define _POSIX_V6_ILP32_OFF32 1 -# define _XBS5_ILP32_OFF32 1 -# endif - -/* We optionally provide an environment with the above size but an 64-bit - side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ - -/* Environments with 64-bit wide pointers can be provided, - so these macros aren't defined: - # undef _POSIX_V7_LP64_OFF64 - # undef _POSIX_V7_LPBIG_OFFBIG - # undef _POSIX_V6_LP64_OFF64 - # undef _POSIX_V6_LPBIG_OFFBIG - # undef _XBS5_LP64_OFF64 - # undef _XBS5_LPBIG_OFFBIG - and sysconf tests for it at runtime. */ - -#endif /* __WORDSIZE == 32 */ - -#define __ILP32_OFF32_CFLAGS "-m32" -#define __ILP32_OFF32_LDFLAGS "-m32" -#if defined __x86_64__ && defined __ILP32__ -# define __ILP32_OFFBIG_CFLAGS "-mx32" -# define __ILP32_OFFBIG_LDFLAGS "-mx32" -#else -# define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" -# define __ILP32_OFFBIG_LDFLAGS "-m32" -#endif -#define __LP64_OFF64_CFLAGS "-m64" -#define __LP64_OFF64_LDFLAGS "-m64" diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@environments.h.blob deleted file mode 100644 index 061abb6c52b5353bddd1f9285db6b67a60ee8a00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13257 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h deleted file mode 100644 index d3d3a980..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Error constants. Linux specific version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_ERRNO_H -#define _BITS_ERRNO_H 1 - -#if !defined _ERRNO_H -# error "Never include <bits/errno.h> directly; use <errno.h> instead." -#endif - -# include <linux/errno.h> - -/* Older Linux headers do not define these constants. */ -# ifndef ENOTSUP -# define ENOTSUP EOPNOTSUPP -# endif - -# ifndef ECANCELED -# define ECANCELED 125 -# endif - -# ifndef EOWNERDEAD -# define EOWNERDEAD 130 -# endif - -#ifndef ENOTRECOVERABLE -# define ENOTRECOVERABLE 131 -# endif - -# ifndef ERFKILL -# define ERFKILL 132 -# endif - -# ifndef EHWPOISON -# define EHWPOISON 133 -# endif - -#endif /* bits/errno.h. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@errno.h.blob deleted file mode 100644 index a782fcdd30e1412545823afc5b50ad0f7a0343ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12318 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 LD;M?eHOu4w`eglV diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h deleted file mode 100644 index 23306c92..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h +++ /dev/null @@ -1,329 +0,0 @@ -/* Macros to control TS 18661-3 glibc features where the same - definitions are appropriate for all platforms. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_FLOATN_COMMON_H -#define _BITS_FLOATN_COMMON_H - -#include <features.h> -#include <bits/long-double.h> - -/* This header should be included at the bottom of each bits/floatn.h. - It defines the following macros for each _FloatN and _FloatNx type, - where the same definitions, or definitions based only on the macros - in bits/floatn.h, are appropriate for all glibc configurations. */ - -/* Defined to 1 if the current compiler invocation provides a - floating-point type with the right format for this type, and this - glibc includes corresponding *fN or *fNx interfaces for it. */ -#define __HAVE_FLOAT16 0 -#define __HAVE_FLOAT32 1 -#define __HAVE_FLOAT64 1 -#define __HAVE_FLOAT32X 1 -#define __HAVE_FLOAT128X 0 - -/* Defined to 1 if the corresponding __HAVE_<type> macro is 1 and the - type is the first with its format in the sequence of (the default - choices for) float, double, long double, _Float16, _Float32, - _Float64, _Float128, _Float32x, _Float64x, _Float128x for this - glibc; that is, if functions present once per floating-point format - rather than once per type are present for this type. - - All configurations supported by glibc have _Float32 the same format - as float, _Float64 and _Float32x the same format as double, the - _Float64x the same format as either long double or _Float128. No - configurations support _Float128x or, as of GCC 7, have compiler - support for a type meeting the requirements for _Float128x. */ -#define __HAVE_DISTINCT_FLOAT16 __HAVE_FLOAT16 -#define __HAVE_DISTINCT_FLOAT32 0 -#define __HAVE_DISTINCT_FLOAT64 0 -#define __HAVE_DISTINCT_FLOAT32X 0 -#define __HAVE_DISTINCT_FLOAT64X 0 -#define __HAVE_DISTINCT_FLOAT128X __HAVE_FLOAT128X - -/* Defined to 1 if the corresponding _FloatN type is not binary compatible - with the corresponding ISO C type in the current compilation unit as - opposed to __HAVE_DISTINCT_FLOATN, which indicates the default types built - in glibc. */ -#define __HAVE_FLOAT128_UNLIKE_LDBL (__HAVE_DISTINCT_FLOAT128 \ - && __LDBL_MANT_DIG__ != 113) - -/* Defined to 1 if any _FloatN or _FloatNx types that are not - ABI-distinct are however distinct types at the C language level (so - for the purposes of __builtin_types_compatible_p and _Generic). */ -#if __GNUC_PREREQ (7, 0) && !defined __cplusplus -# define __HAVE_FLOATN_NOT_TYPEDEF 1 -#else -# define __HAVE_FLOATN_NOT_TYPEDEF 0 -#endif - -#ifndef __ASSEMBLER__ - -/* Defined to concatenate the literal suffix to be used with _FloatN - or _FloatNx types, if __HAVE_<type> is 1. The corresponding - literal suffixes exist since GCC 7, for C only. */ -# if __HAVE_FLOAT16 -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -/* No corresponding suffix available for this type. */ -# define __f16(x) ((_Float16) x##f) -# else -# define __f16(x) x##f16 -# endif -# endif - -# if __HAVE_FLOAT32 -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# define __f32(x) x##f -# else -# define __f32(x) x##f32 -# endif -# endif - -# if __HAVE_FLOAT64 -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# ifdef __NO_LONG_DOUBLE_MATH -# define __f64(x) x##l -# else -# define __f64(x) x -# endif -# else -# define __f64(x) x##f64 -# endif -# endif - -# if __HAVE_FLOAT32X -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# define __f32x(x) x -# else -# define __f32x(x) x##f32x -# endif -# endif - -# if __HAVE_FLOAT64X -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# if __HAVE_FLOAT64X_LONG_DOUBLE -# define __f64x(x) x##l -# else -# define __f64x(x) __f128 (x) -# endif -# else -# define __f64x(x) x##f64x -# endif -# endif - -# if __HAVE_FLOAT128X -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# error "_Float128X supported but no constant suffix" -# else -# define __f128x(x) x##f128x -# endif -# endif - -/* Defined to a complex type if __HAVE_<type> is 1. */ -# if __HAVE_FLOAT16 -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef _Complex float __cfloat16 __attribute__ ((__mode__ (__HC__))); -# define __CFLOAT16 __cfloat16 -# else -# define __CFLOAT16 _Complex _Float16 -# endif -# endif - -# if __HAVE_FLOAT32 -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# define __CFLOAT32 _Complex float -# else -# define __CFLOAT32 _Complex _Float32 -# endif -# endif - -# if __HAVE_FLOAT64 -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# ifdef __NO_LONG_DOUBLE_MATH -# define __CFLOAT64 _Complex long double -# else -# define __CFLOAT64 _Complex double -# endif -# else -# define __CFLOAT64 _Complex _Float64 -# endif -# endif - -# if __HAVE_FLOAT32X -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# define __CFLOAT32X _Complex double -# else -# define __CFLOAT32X _Complex _Float32x -# endif -# endif - -# if __HAVE_FLOAT64X -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# if __HAVE_FLOAT64X_LONG_DOUBLE -# define __CFLOAT64X _Complex long double -# else -# define __CFLOAT64X __CFLOAT128 -# endif -# else -# define __CFLOAT64X _Complex _Float64x -# endif -# endif - -# if __HAVE_FLOAT128X -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# error "_Float128X supported but no complex type" -# else -# define __CFLOAT128X _Complex _Float128x -# endif -# endif - -/* The remaining of this file provides support for older compilers. */ -# if __HAVE_FLOAT16 - -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef float _Float16 __attribute__ ((__mode__ (__HF__))); -# endif - -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf16() ((_Float16) __builtin_huge_val ()) -# define __builtin_inff16() ((_Float16) __builtin_inf ()) -# define __builtin_nanf16(x) ((_Float16) __builtin_nan (x)) -# define __builtin_nansf16(x) ((_Float16) __builtin_nans (x)) -# endif - -# endif - -# if __HAVE_FLOAT32 - -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef float _Float32; -# endif - -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf32() (__builtin_huge_valf ()) -# define __builtin_inff32() (__builtin_inff ()) -# define __builtin_nanf32(x) (__builtin_nanf (x)) -# define __builtin_nansf32(x) (__builtin_nansf (x)) -# endif - -# endif - -# if __HAVE_FLOAT64 - -/* If double, long double and _Float64 all have the same set of - values, TS 18661-3 requires the usual arithmetic conversions on - long double and _Float64 to produce _Float64. For this to be the - case when building with a compiler without a distinct _Float64 - type, _Float64 must be a typedef for long double, not for - double. */ - -# ifdef __NO_LONG_DOUBLE_MATH - -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef long double _Float64; -# endif - -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf64() (__builtin_huge_vall ()) -# define __builtin_inff64() (__builtin_infl ()) -# define __builtin_nanf64(x) (__builtin_nanl (x)) -# define __builtin_nansf64(x) (__builtin_nansl (x)) -# endif - -# else - -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef double _Float64; -# endif - -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf64() (__builtin_huge_val ()) -# define __builtin_inff64() (__builtin_inf ()) -# define __builtin_nanf64(x) (__builtin_nan (x)) -# define __builtin_nansf64(x) (__builtin_nans (x)) -# endif - -# endif - -# endif - -# if __HAVE_FLOAT32X - -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef double _Float32x; -# endif - -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf32x() (__builtin_huge_val ()) -# define __builtin_inff32x() (__builtin_inf ()) -# define __builtin_nanf32x(x) (__builtin_nan (x)) -# define __builtin_nansf32x(x) (__builtin_nans (x)) -# endif - -# endif - -# if __HAVE_FLOAT64X - -# if __HAVE_FLOAT64X_LONG_DOUBLE - -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef long double _Float64x; -# endif - -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf64x() (__builtin_huge_vall ()) -# define __builtin_inff64x() (__builtin_infl ()) -# define __builtin_nanf64x(x) (__builtin_nanl (x)) -# define __builtin_nansf64x(x) (__builtin_nansl (x)) -# endif - -# else - -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef _Float128 _Float64x; -# endif - -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf64x() (__builtin_huge_valf128 ()) -# define __builtin_inff64x() (__builtin_inff128 ()) -# define __builtin_nanf64x(x) (__builtin_nanf128 (x)) -# define __builtin_nansf64x(x) (__builtin_nansf128 (x)) -# endif - -# endif - -# endif - -# if __HAVE_FLOAT128X - -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -# error "_Float128x supported but no type" -# endif - -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf128x() ((_Float128x) __builtin_huge_val ()) -# define __builtin_inff128x() ((_Float128x) __builtin_inf ()) -# define __builtin_nanf128x(x) ((_Float128x) __builtin_nan (x)) -# define __builtin_nansf128x(x) ((_Float128x) __builtin_nans (x)) -# endif - -# endif - -#endif /* !__ASSEMBLER__. */ - -#endif /* _BITS_FLOATN_COMMON_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn-common.h.blob deleted file mode 100644 index 3f3c90771b9658d0c0334f897fa738f70936be51..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16450 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 b^tRo4K6WPBi~JUP*V)0d==iXP4e$R0dF=Ao diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h deleted file mode 100644 index f7f3d056..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h +++ /dev/null @@ -1,121 +0,0 @@ -/* Macros to control TS 18661-3 glibc features on x86. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_FLOATN_H -#define _BITS_FLOATN_H - -#include <features.h> - -/* Defined to 1 if the current compiler invocation provides a - floating-point type with the IEEE 754 binary128 format, and this - glibc includes corresponding *f128 interfaces for it. The required - libgcc support was added some time after the basic compiler - support, for x86_64 and x86. */ -#if (defined __x86_64__ \ - ? __GNUC_PREREQ (4, 3) \ - : (defined __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) -# define __HAVE_FLOAT128 1 -#else -# define __HAVE_FLOAT128 0 -#endif - -/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct - from the default float, double and long double types in this glibc. */ -#if __HAVE_FLOAT128 -# define __HAVE_DISTINCT_FLOAT128 1 -#else -# define __HAVE_DISTINCT_FLOAT128 0 -#endif - -/* Defined to 1 if the current compiler invocation provides a - floating-point type with the right format for _Float64x, and this - glibc includes corresponding *f64x interfaces for it. */ -#define __HAVE_FLOAT64X 1 - -/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format - of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has - the format of _Float128, which must be different from that of long - double. */ -#define __HAVE_FLOAT64X_LONG_DOUBLE 1 - -#ifndef __ASSEMBLER__ - -/* Defined to concatenate the literal suffix to be used with _Float128 - types, if __HAVE_FLOAT128 is 1. */ -# if __HAVE_FLOAT128 -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -/* The literal suffix f128 exists only since GCC 7.0. */ -# define __f128(x) x##q -# else -# define __f128(x) x##f128 -# endif -# endif - -/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ -# if __HAVE_FLOAT128 -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -/* Add a typedef for older GCC compilers which don't natively support - _Complex _Float128. */ -typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); -# define __CFLOAT128 __cfloat128 -# else -# define __CFLOAT128 _Complex _Float128 -# endif -# endif - -/* The remaining of this file provides support for older compilers. */ -# if __HAVE_FLOAT128 - -/* The type _Float128 exists only since GCC 7.0. */ -# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) -typedef __float128 _Float128; -# endif - -/* __builtin_huge_valf128 doesn't exist before GCC 7.0. */ -# if !__GNUC_PREREQ (7, 0) -# define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) -# endif - -/* Older GCC has only a subset of built-in functions for _Float128 on - x86, and __builtin_infq is not usable in static initializers. - Converting a narrower sNaN to _Float128 produces a quiet NaN, so - attempts to use _Float128 sNaNs will not work properly with older - compilers. */ -# if !__GNUC_PREREQ (7, 0) -# define __builtin_copysignf128 __builtin_copysignq -# define __builtin_fabsf128 __builtin_fabsq -# define __builtin_inff128() ((_Float128) __builtin_inf ()) -# define __builtin_nanf128(x) ((_Float128) __builtin_nan (x)) -# define __builtin_nansf128(x) ((_Float128) __builtin_nans (x)) -# endif - -/* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, - e.g.: __builtin_signbitf128, before GCC 6. However, there has never - been a __builtin_signbitf128 in GCC and the type-generic builtin is - only available since GCC 6. */ -# if !__GNUC_PREREQ (6, 0) -# define __builtin_signbitf128 __signbitf128 -# endif - -# endif - -#endif /* !__ASSEMBLER__. */ - -#include <bits/floatn-common.h> - -#endif /* _BITS_FLOATN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@floatn.h.blob deleted file mode 100644 index cfba6d5784125a59026fcc36eb8581e904ecf528..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12673 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h deleted file mode 100644 index 243cea51..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Define __GLIBC_FLT_EVAL_METHOD. x86 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _MATH_H -# error "Never use <bits/flt-eval-method.h> directly; include <math.h> instead." -#endif - -#ifdef __FLT_EVAL_METHOD__ -# if __FLT_EVAL_METHOD__ == -1 -# define __GLIBC_FLT_EVAL_METHOD 2 -# else -# define __GLIBC_FLT_EVAL_METHOD __FLT_EVAL_METHOD__ -# endif -#elif defined __x86_64__ -# define __GLIBC_FLT_EVAL_METHOD 0 -#else -# define __GLIBC_FLT_EVAL_METHOD 2 -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@flt-eval-method.h.blob deleted file mode 100644 index 745c437bb277eb37cc700a6abd3840f1d51df410..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12274 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 W`@d^9K7ZrQcaCn}zxni?qyGclp6(<7 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h deleted file mode 100644 index a62a803c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h +++ /dev/null @@ -1,39 +0,0 @@ -/* Define FP_FAST_* macros. - Copyright (C) 2016-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _MATH_H -# error "Never use <bits/fp-fast.h> directly; include <math.h> instead." -#endif - -#ifdef __USE_ISOC99 - -/* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} - builtins are supported. */ -# ifdef __FP_FAST_FMA -# define FP_FAST_FMA 1 -# endif - -# ifdef __FP_FAST_FMAF -# define FP_FAST_FMAF 1 -# endif - -# ifdef __FP_FAST_FMAL -# define FP_FAST_FMAL 1 -# endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-fast.h.blob deleted file mode 100644 index 126bf7128fe47f154e3773bb8b9e5fafdfcc8551..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12146 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 VuWY`2|0|mZ_g~$7_5NnF`9Jvu&D8(^ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h deleted file mode 100644 index 1ab2ae57..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _MATH_H -# error "Never use <bits/fp-logb.h> directly; include <math.h> instead." -#endif - -#define __FP_LOGB0_IS_MIN 1 -#define __FP_LOGBNAN_IS_MIN 1 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@fp-logb.h.blob deleted file mode 100644 index 01c848aa3d1d54c9b36d3bea6a14cea640068232..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12290 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 Jp67P0{{#Fo^`8I$ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h deleted file mode 100644 index ce6a3b9b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h +++ /dev/null @@ -1,96 +0,0 @@ -/* Declarations for getopt (basic, portable features only). - Copyright (C) 1989-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library and is also part of gnulib. - Patches to this file should be submitted to both projects. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _GETOPT_CORE_H -#define _GETOPT_CORE_H 1 - -/* This header should not be used directly; include getopt.h or - unistd.h instead. Unlike most bits headers, it does not have - a protective #error, because the guard macro for getopt.h in - gnulib is not fixed. */ - -__BEGIN_DECLS - -/* For communication from 'getopt' to the caller. - When 'getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when 'ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -extern char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to 'getopt'. - - On entry to 'getopt', zero means this is the first call; initialize. - - When 'getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, 'optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -extern int optind; - -/* Callers store zero here to inhibit the error message 'getopt' prints - for unrecognized options. */ - -extern int opterr; - -/* Set to an option character which was unrecognized. */ - -extern int optopt; - -/* Get definitions and prototypes for functions to process the - arguments in ARGV (ARGC of them, minus the program name) for - options given in OPTS. - - Return the option character from OPTS just read. Return -1 when - there are no more options. For unrecognized options, or options - missing arguments, 'optopt' is set to the option letter, and '?' is - returned. - - The OPTS string is a list of characters which are recognized option - letters, optionally followed by colons, specifying that that letter - takes an argument, to be placed in 'optarg'. - - If a letter in OPTS is followed by two colons, its argument is - optional. This behavior is specific to the GNU 'getopt'. - - The argument '--' causes premature termination of argument - scanning, explicitly telling 'getopt' that there are no more - options. - - If OPTS begins with '-', then non-option arguments are treated as - arguments to the option '\1'. This behavior is specific to the GNU - 'getopt'. If OPTS begins with '+', or POSIXLY_CORRECT is set in - the environment, then do not permute arguments. - - For standards compliance, the 'argv' argument has the type - char *const *, but this is inaccurate; if argument permutation is - enabled, the argv array (not the strings it points to) must be - writable. */ - -extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) - __THROW __nonnull ((2, 3)); - -__END_DECLS - -#endif /* getopt_core.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_core.h.blob deleted file mode 100644 index fa72015a8d853d9e776e52af7a9ed505cf8014e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14914 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h deleted file mode 100644 index a7ef2856..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Declarations for getopt (POSIX compatibility shim). - Copyright (C) 1989-2023 Free Software Foundation, Inc. - Unlike the bulk of the getopt implementation, this file is NOT part - of gnulib. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _GETOPT_POSIX_H -#define _GETOPT_POSIX_H 1 - -#if !defined _UNISTD_H && !defined _STDIO_H -#error "Never include getopt_posix.h directly; use unistd.h instead." -#endif - -#include <bits/getopt_core.h> - -__BEGIN_DECLS - -#if defined __USE_POSIX2 && !defined __USE_POSIX_IMPLICITLY \ - && !defined __USE_GNU && !defined _GETOPT_H -/* GNU getopt has more functionality than POSIX getopt. When we are - explicitly conforming to POSIX and not GNU, and getopt.h (which is - not part of POSIX) has not been included, the extra functionality - is disabled. */ -# ifdef __REDIRECT -extern int __REDIRECT_NTH (getopt, (int ___argc, char *const *___argv, - const char *__shortopts), - __posix_getopt); -# else -extern int __posix_getopt (int ___argc, char *const *___argv, - const char *__shortopts) - __THROW __nonnull ((2, 3)); -# define getopt __posix_getopt -# endif -#endif - -__END_DECLS - -#endif /* getopt_posix.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@getopt_posix.h.blob deleted file mode 100644 index ecdd18e468999da669bc36a384063fff71ca1ed1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12294 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 at{*(Qe!5tky!7HrH(${IXN%`2K>UB{L-gJN diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h deleted file mode 100644 index 73af2af9..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h +++ /dev/null @@ -1,110 +0,0 @@ -/* Handle feature test macros at the start of a header. - Copyright (C) 2016-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* This header is internal to glibc and should not be included outside - of glibc headers. Headers including it must define - __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION first. This header - cannot have multiple include guards because ISO C feature test - macros depend on the definition of the macro when an affected - header is included, not when the first system header is - included. */ - -#ifndef __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION -# error "Never include <bits/libc-header-start.h> directly." -#endif - -#undef __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION - -#include <features.h> - -/* ISO/IEC TR 24731-2:2010 defines the __STDC_WANT_LIB_EXT2__ - macro. */ -#undef __GLIBC_USE_LIB_EXT2 -#if (defined __USE_GNU \ - || (defined __STDC_WANT_LIB_EXT2__ && __STDC_WANT_LIB_EXT2__ > 0)) -# define __GLIBC_USE_LIB_EXT2 1 -#else -# define __GLIBC_USE_LIB_EXT2 0 -#endif - -/* ISO/IEC TS 18661-1:2014 defines the __STDC_WANT_IEC_60559_BFP_EXT__ - macro. Most but not all symbols enabled by that macro in TS - 18661-1 are enabled unconditionally in C2X. In C2X, the symbols in - Annex F still require a new feature test macro - __STDC_WANT_IEC_60559_EXT__ instead (C2X does not define - __STDC_WANT_IEC_60559_BFP_EXT__), while a few features from TS - 18661-1 are not included in C2X (and thus should depend on - __STDC_WANT_IEC_60559_BFP_EXT__ even when C2X features are - enabled). - - __GLIBC_USE (IEC_60559_BFP_EXT) controls those features from TS - 18661-1 not included in C2X. - - __GLIBC_USE (IEC_60559_BFP_EXT_C2X) controls those features from TS - 18661-1 that are also included in C2X (with no feature test macro - required in C2X). - - __GLIBC_USE (IEC_60559_EXT) controls those features from TS 18661-1 - that are included in C2X but conditional on - __STDC_WANT_IEC_60559_EXT__. (There are currently no features - conditional on __STDC_WANT_IEC_60559_EXT__ that are not in TS - 18661-1.) */ -#undef __GLIBC_USE_IEC_60559_BFP_EXT -#if defined __USE_GNU || defined __STDC_WANT_IEC_60559_BFP_EXT__ -# define __GLIBC_USE_IEC_60559_BFP_EXT 1 -#else -# define __GLIBC_USE_IEC_60559_BFP_EXT 0 -#endif -#undef __GLIBC_USE_IEC_60559_BFP_EXT_C2X -#if __GLIBC_USE (IEC_60559_BFP_EXT) || __GLIBC_USE (ISOC2X) -# define __GLIBC_USE_IEC_60559_BFP_EXT_C2X 1 -#else -# define __GLIBC_USE_IEC_60559_BFP_EXT_C2X 0 -#endif -#undef __GLIBC_USE_IEC_60559_EXT -#if __GLIBC_USE (IEC_60559_BFP_EXT) || defined __STDC_WANT_IEC_60559_EXT__ -# define __GLIBC_USE_IEC_60559_EXT 1 -#else -# define __GLIBC_USE_IEC_60559_EXT 0 -#endif - -/* ISO/IEC TS 18661-4:2015 defines the - __STDC_WANT_IEC_60559_FUNCS_EXT__ macro. Other than the reduction - functions, the symbols from this TS are enabled unconditionally in - C2X. */ -#undef __GLIBC_USE_IEC_60559_FUNCS_EXT -#if defined __USE_GNU || defined __STDC_WANT_IEC_60559_FUNCS_EXT__ -# define __GLIBC_USE_IEC_60559_FUNCS_EXT 1 -#else -# define __GLIBC_USE_IEC_60559_FUNCS_EXT 0 -#endif -#undef __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X -#if __GLIBC_USE (IEC_60559_FUNCS_EXT) || __GLIBC_USE (ISOC2X) -# define __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X 1 -#else -# define __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X 0 -#endif - -/* ISO/IEC TS 18661-3:2015 defines the - __STDC_WANT_IEC_60559_TYPES_EXT__ macro. */ -#undef __GLIBC_USE_IEC_60559_TYPES_EXT -#if defined __USE_GNU || defined __STDC_WANT_IEC_60559_TYPES_EXT__ -# define __GLIBC_USE_IEC_60559_TYPES_EXT 1 -#else -# define __GLIBC_USE_IEC_60559_TYPES_EXT 0 -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libc-header-start.h.blob deleted file mode 100644 index f054e414690ec1d49764ec42e44a4a7452c02273..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12959 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h deleted file mode 100644 index 2db2819c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h +++ /dev/null @@ -1,332 +0,0 @@ -/* Empty definitions required for __MATHCALL_VEC unfolding in mathcalls.h. - Copyright (C) 2014-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _MATH_H -# error "Never include <bits/libm-simd-decl-stubs.h> directly;\ - include <math.h> instead." -#endif - -/* Needed definitions could be generated with: - for func in $(grep __MATHCALL_VEC math/bits/mathcalls.h |\ - sed -r "s|__MATHCALL_VEC.?\(||; s|,.*||"); do - echo "#define __DECL_SIMD_${func}"; - echo "#define __DECL_SIMD_${func}f"; - echo "#define __DECL_SIMD_${func}l"; - done - */ - -#ifndef _BITS_LIBM_SIMD_DECL_STUBS_H -#define _BITS_LIBM_SIMD_DECL_STUBS_H 1 - -#define __DECL_SIMD_cos -#define __DECL_SIMD_cosf -#define __DECL_SIMD_cosl -#define __DECL_SIMD_cosf16 -#define __DECL_SIMD_cosf32 -#define __DECL_SIMD_cosf64 -#define __DECL_SIMD_cosf128 -#define __DECL_SIMD_cosf32x -#define __DECL_SIMD_cosf64x -#define __DECL_SIMD_cosf128x - -#define __DECL_SIMD_sin -#define __DECL_SIMD_sinf -#define __DECL_SIMD_sinl -#define __DECL_SIMD_sinf16 -#define __DECL_SIMD_sinf32 -#define __DECL_SIMD_sinf64 -#define __DECL_SIMD_sinf128 -#define __DECL_SIMD_sinf32x -#define __DECL_SIMD_sinf64x -#define __DECL_SIMD_sinf128x - -#define __DECL_SIMD_sincos -#define __DECL_SIMD_sincosf -#define __DECL_SIMD_sincosl -#define __DECL_SIMD_sincosf16 -#define __DECL_SIMD_sincosf32 -#define __DECL_SIMD_sincosf64 -#define __DECL_SIMD_sincosf128 -#define __DECL_SIMD_sincosf32x -#define __DECL_SIMD_sincosf64x -#define __DECL_SIMD_sincosf128x - -#define __DECL_SIMD_log -#define __DECL_SIMD_logf -#define __DECL_SIMD_logl -#define __DECL_SIMD_logf16 -#define __DECL_SIMD_logf32 -#define __DECL_SIMD_logf64 -#define __DECL_SIMD_logf128 -#define __DECL_SIMD_logf32x -#define __DECL_SIMD_logf64x -#define __DECL_SIMD_logf128x - -#define __DECL_SIMD_exp -#define __DECL_SIMD_expf -#define __DECL_SIMD_expl -#define __DECL_SIMD_expf16 -#define __DECL_SIMD_expf32 -#define __DECL_SIMD_expf64 -#define __DECL_SIMD_expf128 -#define __DECL_SIMD_expf32x -#define __DECL_SIMD_expf64x -#define __DECL_SIMD_expf128x - -#define __DECL_SIMD_pow -#define __DECL_SIMD_powf -#define __DECL_SIMD_powl -#define __DECL_SIMD_powf16 -#define __DECL_SIMD_powf32 -#define __DECL_SIMD_powf64 -#define __DECL_SIMD_powf128 -#define __DECL_SIMD_powf32x -#define __DECL_SIMD_powf64x -#define __DECL_SIMD_powf128x - -#define __DECL_SIMD_acos -#define __DECL_SIMD_acosf -#define __DECL_SIMD_acosl -#define __DECL_SIMD_acosf16 -#define __DECL_SIMD_acosf32 -#define __DECL_SIMD_acosf64 -#define __DECL_SIMD_acosf128 -#define __DECL_SIMD_acosf32x -#define __DECL_SIMD_acosf64x -#define __DECL_SIMD_acosf128x - -#define __DECL_SIMD_atan -#define __DECL_SIMD_atanf -#define __DECL_SIMD_atanl -#define __DECL_SIMD_atanf16 -#define __DECL_SIMD_atanf32 -#define __DECL_SIMD_atanf64 -#define __DECL_SIMD_atanf128 -#define __DECL_SIMD_atanf32x -#define __DECL_SIMD_atanf64x -#define __DECL_SIMD_atanf128x - -#define __DECL_SIMD_asin -#define __DECL_SIMD_asinf -#define __DECL_SIMD_asinl -#define __DECL_SIMD_asinf16 -#define __DECL_SIMD_asinf32 -#define __DECL_SIMD_asinf64 -#define __DECL_SIMD_asinf128 -#define __DECL_SIMD_asinf32x -#define __DECL_SIMD_asinf64x -#define __DECL_SIMD_asinf128x - -#define __DECL_SIMD_hypot -#define __DECL_SIMD_hypotf -#define __DECL_SIMD_hypotl -#define __DECL_SIMD_hypotf16 -#define __DECL_SIMD_hypotf32 -#define __DECL_SIMD_hypotf64 -#define __DECL_SIMD_hypotf128 -#define __DECL_SIMD_hypotf32x -#define __DECL_SIMD_hypotf64x -#define __DECL_SIMD_hypotf128x - -#define __DECL_SIMD_exp2 -#define __DECL_SIMD_exp2f -#define __DECL_SIMD_exp2l -#define __DECL_SIMD_exp2f16 -#define __DECL_SIMD_exp2f32 -#define __DECL_SIMD_exp2f64 -#define __DECL_SIMD_exp2f128 -#define __DECL_SIMD_exp2f32x -#define __DECL_SIMD_exp2f64x -#define __DECL_SIMD_exp2f128x - -#define __DECL_SIMD_exp10 -#define __DECL_SIMD_exp10f -#define __DECL_SIMD_exp10l -#define __DECL_SIMD_exp10f16 -#define __DECL_SIMD_exp10f32 -#define __DECL_SIMD_exp10f64 -#define __DECL_SIMD_exp10f128 -#define __DECL_SIMD_exp10f32x -#define __DECL_SIMD_exp10f64x -#define __DECL_SIMD_exp10f128x - -#define __DECL_SIMD_cosh -#define __DECL_SIMD_coshf -#define __DECL_SIMD_coshl -#define __DECL_SIMD_coshf16 -#define __DECL_SIMD_coshf32 -#define __DECL_SIMD_coshf64 -#define __DECL_SIMD_coshf128 -#define __DECL_SIMD_coshf32x -#define __DECL_SIMD_coshf64x -#define __DECL_SIMD_coshf128x - -#define __DECL_SIMD_expm1 -#define __DECL_SIMD_expm1f -#define __DECL_SIMD_expm1l -#define __DECL_SIMD_expm1f16 -#define __DECL_SIMD_expm1f32 -#define __DECL_SIMD_expm1f64 -#define __DECL_SIMD_expm1f128 -#define __DECL_SIMD_expm1f32x -#define __DECL_SIMD_expm1f64x -#define __DECL_SIMD_expm1f128x - -#define __DECL_SIMD_sinh -#define __DECL_SIMD_sinhf -#define __DECL_SIMD_sinhl -#define __DECL_SIMD_sinhf16 -#define __DECL_SIMD_sinhf32 -#define __DECL_SIMD_sinhf64 -#define __DECL_SIMD_sinhf128 -#define __DECL_SIMD_sinhf32x -#define __DECL_SIMD_sinhf64x -#define __DECL_SIMD_sinhf128x - -#define __DECL_SIMD_cbrt -#define __DECL_SIMD_cbrtf -#define __DECL_SIMD_cbrtl -#define __DECL_SIMD_cbrtf16 -#define __DECL_SIMD_cbrtf32 -#define __DECL_SIMD_cbrtf64 -#define __DECL_SIMD_cbrtf128 -#define __DECL_SIMD_cbrtf32x -#define __DECL_SIMD_cbrtf64x -#define __DECL_SIMD_cbrtf128x - -#define __DECL_SIMD_atan2 -#define __DECL_SIMD_atan2f -#define __DECL_SIMD_atan2l -#define __DECL_SIMD_atan2f16 -#define __DECL_SIMD_atan2f32 -#define __DECL_SIMD_atan2f64 -#define __DECL_SIMD_atan2f128 -#define __DECL_SIMD_atan2f32x -#define __DECL_SIMD_atan2f64x -#define __DECL_SIMD_atan2f128x - -#define __DECL_SIMD_log10 -#define __DECL_SIMD_log10f -#define __DECL_SIMD_log10l -#define __DECL_SIMD_log10f16 -#define __DECL_SIMD_log10f32 -#define __DECL_SIMD_log10f64 -#define __DECL_SIMD_log10f128 -#define __DECL_SIMD_log10f32x -#define __DECL_SIMD_log10f64x -#define __DECL_SIMD_log10f128x - -#define __DECL_SIMD_log2 -#define __DECL_SIMD_log2f -#define __DECL_SIMD_log2l -#define __DECL_SIMD_log2f16 -#define __DECL_SIMD_log2f32 -#define __DECL_SIMD_log2f64 -#define __DECL_SIMD_log2f128 -#define __DECL_SIMD_log2f32x -#define __DECL_SIMD_log2f64x -#define __DECL_SIMD_log2f128x - -#define __DECL_SIMD_log1p -#define __DECL_SIMD_log1pf -#define __DECL_SIMD_log1pl -#define __DECL_SIMD_log1pf16 -#define __DECL_SIMD_log1pf32 -#define __DECL_SIMD_log1pf64 -#define __DECL_SIMD_log1pf128 -#define __DECL_SIMD_log1pf32x -#define __DECL_SIMD_log1pf64x -#define __DECL_SIMD_log1pf128x - -#define __DECL_SIMD_atanh -#define __DECL_SIMD_atanhf -#define __DECL_SIMD_atanhl -#define __DECL_SIMD_atanhf16 -#define __DECL_SIMD_atanhf32 -#define __DECL_SIMD_atanhf64 -#define __DECL_SIMD_atanhf128 -#define __DECL_SIMD_atanhf32x -#define __DECL_SIMD_atanhf64x -#define __DECL_SIMD_atanhf128x - -#define __DECL_SIMD_acosh -#define __DECL_SIMD_acoshf -#define __DECL_SIMD_acoshl -#define __DECL_SIMD_acoshf16 -#define __DECL_SIMD_acoshf32 -#define __DECL_SIMD_acoshf64 -#define __DECL_SIMD_acoshf128 -#define __DECL_SIMD_acoshf32x -#define __DECL_SIMD_acoshf64x -#define __DECL_SIMD_acoshf128x - -#define __DECL_SIMD_erf -#define __DECL_SIMD_erff -#define __DECL_SIMD_erfl -#define __DECL_SIMD_erff16 -#define __DECL_SIMD_erff32 -#define __DECL_SIMD_erff64 -#define __DECL_SIMD_erff128 -#define __DECL_SIMD_erff32x -#define __DECL_SIMD_erff64x -#define __DECL_SIMD_erff128x - -#define __DECL_SIMD_tanh -#define __DECL_SIMD_tanhf -#define __DECL_SIMD_tanhl -#define __DECL_SIMD_tanhf16 -#define __DECL_SIMD_tanhf32 -#define __DECL_SIMD_tanhf64 -#define __DECL_SIMD_tanhf128 -#define __DECL_SIMD_tanhf32x -#define __DECL_SIMD_tanhf64x -#define __DECL_SIMD_tanhf128x - -#define __DECL_SIMD_asinh -#define __DECL_SIMD_asinhf -#define __DECL_SIMD_asinhl -#define __DECL_SIMD_asinhf16 -#define __DECL_SIMD_asinhf32 -#define __DECL_SIMD_asinhf64 -#define __DECL_SIMD_asinhf128 -#define __DECL_SIMD_asinhf32x -#define __DECL_SIMD_asinhf64x -#define __DECL_SIMD_asinhf128x - -#define __DECL_SIMD_erfc -#define __DECL_SIMD_erfcf -#define __DECL_SIMD_erfcl -#define __DECL_SIMD_erfcf16 -#define __DECL_SIMD_erfcf32 -#define __DECL_SIMD_erfcf64 -#define __DECL_SIMD_erfcf128 -#define __DECL_SIMD_erfcf32x -#define __DECL_SIMD_erfcf64x -#define __DECL_SIMD_erfcf128x - -#define __DECL_SIMD_tan -#define __DECL_SIMD_tanf -#define __DECL_SIMD_tanl -#define __DECL_SIMD_tanf16 -#define __DECL_SIMD_tanf32 -#define __DECL_SIMD_tanf64 -#define __DECL_SIMD_tanf128 -#define __DECL_SIMD_tanf32x -#define __DECL_SIMD_tanf64x -#define __DECL_SIMD_tanf128x -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@libm-simd-decl-stubs.h.blob deleted file mode 100644 index 1da2b397850235d60e30f5415770d3daf814c7b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33821 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h deleted file mode 100644 index 978515dc..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h +++ /dev/null @@ -1,99 +0,0 @@ -/* Minimum guaranteed maximum values for system limits. Linux version. - Copyright (C) 1993-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, see <https://www.gnu.org/licenses/>. */ - -/* The kernel header pollutes the namespace with the NR_OPEN symbol - and defines LINK_MAX although filesystems have different maxima. A - similar thing is true for OPEN_MAX: the limit can be changed at - runtime and therefore the macro must not be defined. Remove this - after including the header if necessary. */ -#ifndef NR_OPEN -# define __undef_NR_OPEN -#endif -#ifndef LINK_MAX -# define __undef_LINK_MAX -#endif -#ifndef OPEN_MAX -# define __undef_OPEN_MAX -#endif -#ifndef ARG_MAX -# define __undef_ARG_MAX -#endif - -/* The kernel sources contain a file with all the needed information. */ -#include <linux/limits.h> - -/* Have to remove NR_OPEN? */ -#ifdef __undef_NR_OPEN -# undef NR_OPEN -# undef __undef_NR_OPEN -#endif -/* Have to remove LINK_MAX? */ -#ifdef __undef_LINK_MAX -# undef LINK_MAX -# undef __undef_LINK_MAX -#endif -/* Have to remove OPEN_MAX? */ -#ifdef __undef_OPEN_MAX -# undef OPEN_MAX -# undef __undef_OPEN_MAX -#endif -/* Have to remove ARG_MAX? */ -#ifdef __undef_ARG_MAX -# undef ARG_MAX -# undef __undef_ARG_MAX -#endif - -/* The number of data keys per process. */ -#define _POSIX_THREAD_KEYS_MAX 128 -/* This is the value this implementation supports. */ -#define PTHREAD_KEYS_MAX 1024 - -/* Controlling the iterations of destructors for thread-specific data. */ -#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 -/* Number of iterations this implementation does. */ -#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS - -/* The number of threads per process. */ -#define _POSIX_THREAD_THREADS_MAX 64 -/* We have no predefined limit on the number of threads. */ -#undef PTHREAD_THREADS_MAX - -/* Maximum amount by which a process can decrease its asynchronous I/O - priority level. */ -#define AIO_PRIO_DELTA_MAX 20 - -/* Arrange for the definition of PTHREAD_STACK_MIN. */ -#include <bits/pthread_stack_min-dynamic.h> - -/* Maximum number of timer expiration overruns. */ -#define DELAYTIMER_MAX 2147483647 - -/* Maximum tty name length. */ -#define TTY_NAME_MAX 32 - -/* Maximum login name length. This is arbitrary. */ -#define LOGIN_NAME_MAX 256 - -/* Maximum host name length. */ -#define HOST_NAME_MAX 64 - -/* Maximum message queue priority level. */ -#define MQ_PRIO_MAX 32768 - -/* Maximum value the semaphore can have. */ -#define SEM_VALUE_MAX (2147483647) diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@local_lim.h.blob deleted file mode 100644 index d488d680928c9ab55a8f15895e6562f62439dc7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13619 zcmb7KYm8(?6`me`n298ImIODT>mY`}vc0|248wpd%Pcbt1M^sBhGiFs*W0)2b{BJB zb06J38=`2U!RRj(qw#@)e>7@*1tcN+%b2+Q5fnm<(U=&C5y8h|vKU!URo$xY>U+An znIAWku5(YF$9Eoe>K>eU=lmP<=O#)M)mG?}s#jek$xa$Z)s!S@wLu!yBzCI4O@qVE z#3hbr2hFiaE1fXjp+U3KpfPdMFy1>lbcc!m9V%6`B(BoH@v;V~ZY{3Xs&&$&f#rk^ za=10|&Nb7IozrNXbT8s7Onz;pPSd2yR+Fk_`Sm2VQ(~ozi6ZrAy~=f|&djM@ZNE!{ zGzLw9^c+3)g2t801P`m3(FQ8f@@lo|Wo)VZ+aLXE$je~WEXFl*iOtp$O;TwR-%eZF z0<J>4d*e*ajb`QynsECtw*<OT<W_vWz6Sv4*wN@cleAF}Lyr*_jK*0-VM4n#%cH)= zOxw;*L!UZUhc*bfJPT41D`FEcUFs359*3Poyl~`u^&xI^qKpP^$hayj8EgoW+a3UL zG#-*Hc5SEUQj@qX;?XV>;fFu@m@a3+Hfk!JSu~*1HQj(3q~Zn_*iUG)ZF>X2*NiUc zQtFeqkIW=LX;bd#OV4iT;;ZOL!_478RYumfbfbzFHtVDHv^kR7b>F0IvX@ky266F_ z>9<81XHII}xw5*XZ7pR};`2n;4-rYx$IJ=C9ZD=3T5c9NDGh_9&wTxPjAsP4;RE$M z3^~e$2pQmj`o81)qg)S8Ptu*_460=oPzY9ZsZTvTV@f-~27%2nppvOv;ye<kMMiGX z0X4=^I0_>tNDVqGzd<r<hz!7SXT-2?I~*{-yM9dvF^dG$I%*r(h1$G6D0riuvMew( z0MqjAu4Q{*Godb?AZ4v$&Le|{(X87fP?}T7kfMZe7npQS+DxA}?pV+jRr-LGz@O15 zedK;Dwzy!LMNn<sZUV`xkSS5xJg%b}yg=dvT7!4_rZ-M?W1gIw)g+gCDcv29M)lB+ z@nX)w3>6~{Do~REgz28f4plCSU8jX5ER;GoMNmlSCXc!?Ay(7di+GYfINj1cD`Jo( z0o&ObEpRS^S9eEu41i8nKr0U9yHwA(CiNhLGhYKhm^dl`46jhvx7!}_j&vbcvKNYY zB9cMng^mq9g5K(&yTgtO@Jdc?PpDq5o#?DI0%&?02|a^n5f*H`|0oEoFu6naw1(G& zgcOjF&@}Iq-oEGvB%rEA#>%0#_i2JB14SYFH0H@d!e|Cr6`I?6QW+9?cH&n_90%M6 z*S`G)y+sztCF#Td7(J)VBD_8{c1NQ{Iab*owNpECJU{bx8@mYn&^J0ZO`{#GQAEiT z)Db8t=!giR!Hsv;7E}Z+(j|$VKvUdXGGWOhT~R%+c%A481)NrCl7Ph25zedB?S$jI z;6VkFFd{*d_Xq`$^o4Ff5<QDZxf!r6f$XXsQKs7?U%gcCpLpTw={B@o?$N1;MvdJ~ z>^5;m*<0om*09aZj+0ZsiEWYK=Mm<pC=MAci6+mr?4;$3W7=F}-H-wR3lut$GX#-C zT3&e&@=&ofqSDF=f<}zwD`H#p;Bf~svR;}bncAM6>Y)Ef2|qF7AOdNeN{iUg_En(T z^#Q%V1JCi+rg0efP{wh@aVj_<R-pYtLx~gQ%@+?klnO+GP(hbCgD7pqATUQ!#g4@} zNhPF$73v<;IDgpugY{<_)Z&zM4KhQ~7Mr3{NrSUR+{*C2&5t<R`vxSq<G>4!fNDz< zxV?nef@dx_)wVbtJQbN(_6`bO4eOm$fhza~<`*zn((E8z#=R?&1Dxa8Nt3nmg%(UB zPlyN2?{Ic(-~*kDr|*bb9+I3LbBn4Zr)|Y*l<V0|os~u+GaJY~Vramav5{J)b3+BQ z8zW1YW;M%#>TlIE*Glc)EX3qapmjy%`uN6iy>fAIJ6@QuiPFFj5tSA#&C*I>W2X|u z1P*nY&rnX#O=GnLrL`<|thYq>!T95jbiK4fz&{nAq^%G?W<%qgbw~ACxz%aY$_H;c z5K%!p^&q4{8xD+xW?mXe<`b)zb5vSEdBVtb$Z-xQ7egU27BE&EVTE4E7MhjfoC4i3 zwn68?dOWn-ki{@B`D2}VlIF-5$?FEp6yQ*2LAI+j_5vH`r5X~Y6AGn9QJDhCvl-d& zNdX(;Gl~)Z<PJhTgPNDOT?n91ViN2+z6pN)n)i$~mih_xBRD0B>L3!zqlX?ev{OB3 z4GY!KhS`A=`hI9?3D|6WX6S6Z(0wyy3Rv!i9UJ9pUeZ9prXq#YDQapq_yF`40v#px zeHe3j(ABY>achWt1IZZhtEU=WKz?b1p4cUwn3L<ZN3QjiVQY+8ZyV-MFuc|5g(}!( zcVPq8FvZeZh0plU9UHhp;_^Yu=0fn|BLYq#u4XJ_UpIPG*@m%I@3zAv?w*|lG>Sy) z`^~5B)5|Cq3EBeEhW2@I_+w(rz0HjKHri-ug`YBg;v^z^N<+ONk}Mk%4Y*`zT27O$ z*GSoQWC73;Ix2)74&mHE#R0{f>r%8|Kt=XLD4S!)6Hkh8s2@jMJIiNEW?3E2^|GX8 zX4-LDcJJ1${}iRH)1r<1M9%j!xt}yB-1;*A|KU#8kVu6)Bh$HI)Tl2>tYUkMI-<YX zvc*lSN?7O%-TAp@G`8nt{dY!IDb;`tANVVyi+rf1sRC>x&raPi#?Q-&({4ufA};yJ zAP+Ks_`x)9Lzp0i!;!qZt{5ioY7@AX9G2Xas0j%Y0Uw2IP1wGQLK~xN3M4Q#ydEIL zU5>`J+*}FRo37ykip#cwqUe?aH!z?nCMcA?4cHx*mZIvQY<c3r7#EahMU3{&@cp@h zds$2Fyw$cMJGS)?08kl{7M9kf00Khn(kiX+%NY%fC_`aeV?+WsF0jT-ZmGuF=qeXT z9o1nT<wY=$Quo5zJE(Y$*C2kFjy09@Lc5XlYI?ub6)Yp#C1Pe!fTf~oLi@ocM{($R z1N|Z@Bbcy;z)f06@rBumDP+f}FHzVT5J+w!lLt2O8YVP+3e)!3Cj^-E=u2?Q&ky*j zEDQ?3Qe-|5*SxFK35bHx481>tO$DaTd6`r>6_v~d=kwgH1VhQdRYMM+ntbrCUx71E zqtYOb2lG?7w$ZdfnGdm~##xK}R1bKJFmEge60@XK(DK7f+&U;!qY{Gp0fRQQ_G7hA za2`tRCaH(KVK?)J*+=A1tg@q`L?TBbaf6bJG&SZ$7TmM(DI-77jny=pzoSuRZrRXw z;#Ytouk!(R1(GyO!Yad)rXc30xjs>0a;1Sxdbvjp*AqGpB?<qMhIH8LCqMk!FZsuH z20PZ-7bZ|n8NCV^$xCS)cfyEoryMUyMtvP8P|nOh1h`x!FJ#|8h8Ya<HN8>6;o_J; z&s-E6r6%K7^(gJc6fH0)XYb6IpWOHvTs<(o3f5Bw=4VFS!ipww?4U58m40BC9HR#1 z?20cOIzj2}1K8$nD2U5_#q+D4tWop8%@~_vjNhv{e&je^yD_$F^GpB{i)I5<Dw#dn z=I?5xS(Q;>jx1u58^v^->kYCVek}jQ(kKZS)%^V=pBV9>qbht-JnoP@Zzz;0D#Nxz zK4Tg7#=DszII(lX*lh$po6yzEzosc%0}d0GH#2BnL*IyY@)@2v1sZNyi#K8DMo<yp z42$F~O<ma*umLtc092T40WUpgp!+&rr#`T&3BPHJh?(1$m-A_aln?R;Y@j7*xx|4e zL?8O;Xbx7!qoSHL2G+^DwNJnYZX~{?EpjHNG5^HG#AO%hTTi@)zVz2O@7mbfw$>Nc zmaMgfQ?PQy)zGxkfJ|!(Q&V%Z6BDI}$`2i!WY5~f#S#!-eC^=*KV3cd^4Zmm<(2h* zHXo2|^p&Zp+KqF-=ydt?p-J|f%Nfo8@pI{o5B>fV+uNu6+3c5W`hTCAx}gR<PL@wz zJIS6$avqO<{lcrSfBV?y7nfESPH(TQEp6sHDPi=LsoKo!O|$bi%+1~e?6%5VAQC)} z=j@*R)HUVlXRmnCvNHG{)V0<(t&I~)>!9`lDOF*qw140JBa{5exs(o;4<5d~bn*6o zy!w|5yBGFvEv;E67gp~pSX*0|o}Rw8C);%(T)kWe!^88gT(~cufBv5@-GBZEYxi0w zHdi)sMK70v_5IAOb<^BDFtN(kHIwW)n=|>wZ@%=Q`?nr+PHf+`xwNooEiP?sZ{Byu z_Qs~Qvc0squ)VUez6JW;BH0=Vr>qkjTPvq5GqciSdGYQ^_Ix~-;;Fw~f9ao({^Am8 z%+;0kdvblI<;KOe(v|zJtWEN#uynOtJpz_qe&y+pe)8)7ep-rp&(i6wL2iR<Q!__u z4Bp4e$G~~;yd@Xy@t?i&=-KWgUl~iYi940FqYW{|_B&oaesYpMAISH6{)w-V&tCT8 z-=(??Z-c@Y*GdQW9RO3Xr!d8Ad6t>t*JnQX;!pn_-6r2y*j&z;6#%T3N>}Z>3T(ih zg4fOEn;C$gCY_%@^WDj30S)S}bY1zn1F$ytubErzH;%rb7T}-K;qu{WSbP8X!{*NY zxBggLn=j9^_jcdAlij=Q?&#L-bJ!u=pps&0rp91>w0!i|N%maKt$5+FmtMW?&G)^f z^A)g^Sg7Hw`-nuwTP`mjpDe*s2Hx&}zVn%vpL_DT1qeDGd5}}K7jnCPL~<>zPSuWp OtZU`9*-7@y5%zy<yLP+) diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h deleted file mode 100644 index 214d4437..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Properties of long double type. ldbl-96 version. - Copyright (C) 2016-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* long double is distinct from double, so there is nothing to - define here. */ -#define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@long-double.h.blob deleted file mode 100644 index 0b535e339966f8ae5811577c9700a4ec29cab121..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12238 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h deleted file mode 100644 index c28a3d21..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h +++ /dev/null @@ -1,147 +0,0 @@ -/* Platform-specific SIMD declarations of math functions. - Copyright (C) 2014-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _MATH_H -# error "Never include <bits/math-vector.h> directly;\ - include <math.h> instead." -#endif - -/* Get default empty definitions for simd declarations. */ -#include <bits/libm-simd-decl-stubs.h> - -#if defined __x86_64__ && defined __FAST_MATH__ -# if defined _OPENMP && _OPENMP >= 201307 -/* OpenMP case. */ -# define __DECL_SIMD_x86_64 _Pragma ("omp declare simd notinbranch") -# elif __GNUC_PREREQ (6,0) -/* W/o OpenMP use GCC 6.* __attribute__ ((__simd__)). */ -# define __DECL_SIMD_x86_64 __attribute__ ((__simd__ ("notinbranch"))) -# endif - -# ifdef __DECL_SIMD_x86_64 -# undef __DECL_SIMD_cos -# define __DECL_SIMD_cos __DECL_SIMD_x86_64 -# undef __DECL_SIMD_cosf -# define __DECL_SIMD_cosf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_sin -# define __DECL_SIMD_sin __DECL_SIMD_x86_64 -# undef __DECL_SIMD_sinf -# define __DECL_SIMD_sinf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_sincos -# define __DECL_SIMD_sincos __DECL_SIMD_x86_64 -# undef __DECL_SIMD_sincosf -# define __DECL_SIMD_sincosf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_log -# define __DECL_SIMD_log __DECL_SIMD_x86_64 -# undef __DECL_SIMD_logf -# define __DECL_SIMD_logf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_exp -# define __DECL_SIMD_exp __DECL_SIMD_x86_64 -# undef __DECL_SIMD_expf -# define __DECL_SIMD_expf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_pow -# define __DECL_SIMD_pow __DECL_SIMD_x86_64 -# undef __DECL_SIMD_powf -# define __DECL_SIMD_powf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_acos -# define __DECL_SIMD_acos __DECL_SIMD_x86_64 -# undef __DECL_SIMD_acosf -# define __DECL_SIMD_acosf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_atan -# define __DECL_SIMD_atan __DECL_SIMD_x86_64 -# undef __DECL_SIMD_atanf -# define __DECL_SIMD_atanf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_asin -# define __DECL_SIMD_asin __DECL_SIMD_x86_64 -# undef __DECL_SIMD_asinf -# define __DECL_SIMD_asinf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_hypot -# define __DECL_SIMD_hypot __DECL_SIMD_x86_64 -# undef __DECL_SIMD_hypotf -# define __DECL_SIMD_hypotf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_exp2 -# define __DECL_SIMD_exp2 __DECL_SIMD_x86_64 -# undef __DECL_SIMD_exp2f -# define __DECL_SIMD_exp2f __DECL_SIMD_x86_64 -# undef __DECL_SIMD_exp10 -# define __DECL_SIMD_exp10 __DECL_SIMD_x86_64 -# undef __DECL_SIMD_exp10f -# define __DECL_SIMD_exp10f __DECL_SIMD_x86_64 -# undef __DECL_SIMD_cosh -# define __DECL_SIMD_cosh __DECL_SIMD_x86_64 -# undef __DECL_SIMD_coshf -# define __DECL_SIMD_coshf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_expm1 -# define __DECL_SIMD_expm1 __DECL_SIMD_x86_64 -# undef __DECL_SIMD_expm1f -# define __DECL_SIMD_expm1f __DECL_SIMD_x86_64 -# undef __DECL_SIMD_sinh -# define __DECL_SIMD_sinh __DECL_SIMD_x86_64 -# undef __DECL_SIMD_sinhf -# define __DECL_SIMD_sinhf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_cbrt -# define __DECL_SIMD_cbrt __DECL_SIMD_x86_64 -# undef __DECL_SIMD_cbrtf -# define __DECL_SIMD_cbrtf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_atan2 -# define __DECL_SIMD_atan2 __DECL_SIMD_x86_64 -# undef __DECL_SIMD_atan2f -# define __DECL_SIMD_atan2f __DECL_SIMD_x86_64 -# undef __DECL_SIMD_log10 -# define __DECL_SIMD_log10 __DECL_SIMD_x86_64 -# undef __DECL_SIMD_log10f -# define __DECL_SIMD_log10f __DECL_SIMD_x86_64 -# undef __DECL_SIMD_log2 -# define __DECL_SIMD_log2 __DECL_SIMD_x86_64 -# undef __DECL_SIMD_log2f -# define __DECL_SIMD_log2f __DECL_SIMD_x86_64 -# undef __DECL_SIMD_log1p -# define __DECL_SIMD_log1p __DECL_SIMD_x86_64 -# undef __DECL_SIMD_log1pf -# define __DECL_SIMD_log1pf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_atanh -# define __DECL_SIMD_atanh __DECL_SIMD_x86_64 -# undef __DECL_SIMD_atanhf -# define __DECL_SIMD_atanhf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_acosh -# define __DECL_SIMD_acosh __DECL_SIMD_x86_64 -# undef __DECL_SIMD_acoshf -# define __DECL_SIMD_acoshf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_erf -# define __DECL_SIMD_erf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_erff -# define __DECL_SIMD_erff __DECL_SIMD_x86_64 -# undef __DECL_SIMD_tanh -# define __DECL_SIMD_tanh __DECL_SIMD_x86_64 -# undef __DECL_SIMD_tanhf -# define __DECL_SIMD_tanhf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_asinh -# define __DECL_SIMD_asinh __DECL_SIMD_x86_64 -# undef __DECL_SIMD_asinhf -# define __DECL_SIMD_asinhf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_erfc -# define __DECL_SIMD_erfc __DECL_SIMD_x86_64 -# undef __DECL_SIMD_erfcf -# define __DECL_SIMD_erfcf __DECL_SIMD_x86_64 -# undef __DECL_SIMD_tan -# define __DECL_SIMD_tan __DECL_SIMD_x86_64 -# undef __DECL_SIMD_tanf -# define __DECL_SIMD_tanf __DECL_SIMD_x86_64 - -# endif -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@math-vector.h.blob deleted file mode 100644 index c6bde2f3447cd4c3ad00661dea934386fde6dfb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12176 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 P`@+LlcE5bM+wJ}jk9*q# diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h deleted file mode 100644 index 20893958..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h +++ /dev/null @@ -1,45 +0,0 @@ -/* Prototype declarations for math classification macros helpers. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* Classify given number. */ -__MATHDECL_ALIAS (int, __fpclassify,, (_Mdouble_ __value), fpclassify) - __attribute__ ((__const__)); - -/* Test for negative number. */ -__MATHDECL_ALIAS (int, __signbit,, (_Mdouble_ __value), signbit) - __attribute__ ((__const__)); - -/* Return 0 if VALUE is finite or NaN, +1 if it - is +Infinity, -1 if it is -Infinity. */ -__MATHDECL_ALIAS (int, __isinf,, (_Mdouble_ __value), isinf) - __attribute__ ((__const__)); - -/* Return nonzero if VALUE is finite and not NaN. Used by isfinite macro. */ -__MATHDECL_ALIAS (int, __finite,, (_Mdouble_ __value), finite) - __attribute__ ((__const__)); - -/* Return nonzero if VALUE is not a number. */ -__MATHDECL_ALIAS (int, __isnan,, (_Mdouble_ __value), isnan) - __attribute__ ((__const__)); - -/* Test equality. */ -__MATHDECL_ALIAS (int, __iseqsig,, (_Mdouble_ __x, _Mdouble_ __y), iseqsig); - -/* Test for signaling NaN. */ -__MATHDECL_ALIAS (int, __issignaling,, (_Mdouble_ __value), issignaling) - __attribute__ ((__const__)); diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls-helper-functions.h.blob deleted file mode 100644 index 40a8b0ea7c9c7e5a5a760d01522b2d115299d4b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13421 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h deleted file mode 100644 index a0388c90..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h +++ /dev/null @@ -1,436 +0,0 @@ -/* Prototype declarations for math functions; helper file for <math.h>. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* NOTE: Because of the special way this file is used by <math.h>, this - file must NOT be protected from multiple inclusion as header files - usually are. - - This file provides prototype declarations for the math functions. - Most functions are declared using the macro: - - __MATHCALL (NAME,[_r], (ARGS...)); - - This means there is a function `NAME' returning `double' and a function - `NAMEf' returning `float'. Each place `_Mdouble_' appears in the - prototype, that is actually `double' in the prototype for `NAME' and - `float' in the prototype for `NAMEf'. Reentrant variant functions are - called `NAME_r' and `NAMEf_r'. - - Functions returning other types like `int' are declared using the macro: - - __MATHDECL (TYPE, NAME,[_r], (ARGS...)); - - This is just like __MATHCALL but for a function returning `TYPE' - instead of `_Mdouble_'. In all of these cases, there is still - both a `NAME' and a `NAMEf' that takes `float' arguments. - - Note that there must be no whitespace before the argument passed for - NAME, to make token pasting work with -traditional. */ - -#ifndef _MATH_H -# error "Never include <bits/mathcalls.h> directly; include <math.h> instead." -#endif - - -/* Trigonometric functions. */ - -/* Arc cosine of X. */ -__MATHCALL_VEC (acos,, (_Mdouble_ __x)); -/* Arc sine of X. */ -__MATHCALL_VEC (asin,, (_Mdouble_ __x)); -/* Arc tangent of X. */ -__MATHCALL_VEC (atan,, (_Mdouble_ __x)); -/* Arc tangent of Y/X. */ -__MATHCALL_VEC (atan2,, (_Mdouble_ __y, _Mdouble_ __x)); - -/* Cosine of X. */ -__MATHCALL_VEC (cos,, (_Mdouble_ __x)); -/* Sine of X. */ -__MATHCALL_VEC (sin,, (_Mdouble_ __x)); -/* Tangent of X. */ -__MATHCALL_VEC (tan,, (_Mdouble_ __x)); - -/* Hyperbolic functions. */ - -/* Hyperbolic cosine of X. */ -__MATHCALL_VEC (cosh,, (_Mdouble_ __x)); -/* Hyperbolic sine of X. */ -__MATHCALL_VEC (sinh,, (_Mdouble_ __x)); -/* Hyperbolic tangent of X. */ -__MATHCALL_VEC (tanh,, (_Mdouble_ __x)); - -#ifdef __USE_GNU -/* Cosine and sine of X. */ -__MATHDECL_VEC (void,sincos,, - (_Mdouble_ __x, _Mdouble_ *__sinx, _Mdouble_ *__cosx)); -#endif - -#if defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 -/* Hyperbolic arc cosine of X. */ -__MATHCALL_VEC (acosh,, (_Mdouble_ __x)); -/* Hyperbolic arc sine of X. */ -__MATHCALL_VEC (asinh,, (_Mdouble_ __x)); -/* Hyperbolic arc tangent of X. */ -__MATHCALL_VEC (atanh,, (_Mdouble_ __x)); -#endif - -/* Exponential and logarithmic functions. */ - -/* Exponential function of X. */ -__MATHCALL_VEC (exp,, (_Mdouble_ __x)); - -/* Break VALUE into a normalized fraction and an integral power of 2. */ -__MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent)); - -/* X times (two to the EXP power). */ -__MATHCALL (ldexp,, (_Mdouble_ __x, int __exponent)); - -/* Natural logarithm of X. */ -__MATHCALL_VEC (log,, (_Mdouble_ __x)); - -/* Base-ten logarithm of X. */ -__MATHCALL_VEC (log10,, (_Mdouble_ __x)); - -/* Break VALUE into integral and fractional parts. */ -__MATHCALL (modf,, (_Mdouble_ __x, _Mdouble_ *__iptr)) __nonnull ((2)); - -#if __GLIBC_USE (IEC_60559_FUNCS_EXT_C2X) -/* Compute exponent to base ten. */ -__MATHCALL_VEC (exp10,, (_Mdouble_ __x)); -#endif - -#if defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 -/* Return exp(X) - 1. */ -__MATHCALL_VEC (expm1,, (_Mdouble_ __x)); - -/* Return log(1 + X). */ -__MATHCALL_VEC (log1p,, (_Mdouble_ __x)); - -/* Return the base 2 signed integral exponent of X. */ -__MATHCALL (logb,, (_Mdouble_ __x)); -#endif - -#ifdef __USE_ISOC99 -/* Compute base-2 exponential of X. */ -__MATHCALL_VEC (exp2,, (_Mdouble_ __x)); - -/* Compute base-2 logarithm of X. */ -__MATHCALL_VEC (log2,, (_Mdouble_ __x)); -#endif - - -/* Power functions. */ - -/* Return X to the Y power. */ -__MATHCALL_VEC (pow,, (_Mdouble_ __x, _Mdouble_ __y)); - -/* Return the square root of X. */ -__MATHCALL (sqrt,, (_Mdouble_ __x)); - -#if defined __USE_XOPEN || defined __USE_ISOC99 -/* Return `sqrt(X*X + Y*Y)'. */ -__MATHCALL_VEC (hypot,, (_Mdouble_ __x, _Mdouble_ __y)); -#endif - -#if defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 -/* Return the cube root of X. */ -__MATHCALL_VEC (cbrt,, (_Mdouble_ __x)); -#endif - - -/* Nearest integer, absolute value, and remainder functions. */ - -/* Smallest integral value not less than X. */ -__MATHCALLX (ceil,, (_Mdouble_ __x), (__const__)); - -/* Absolute value of X. */ -__MATHCALLX (fabs,, (_Mdouble_ __x), (__const__)); - -/* Largest integer not greater than X. */ -__MATHCALLX (floor,, (_Mdouble_ __x), (__const__)); - -/* Floating-point modulo remainder of X/Y. */ -__MATHCALL (fmod,, (_Mdouble_ __x, _Mdouble_ __y)); - -#ifdef __USE_MISC -# if ((!defined __cplusplus \ - || __cplusplus < 201103L /* isinf conflicts with C++11. */ \ - || __MATH_DECLARING_DOUBLE == 0)) /* isinff or isinfl don't. */ \ - && !__MATH_DECLARING_FLOATN -/* Return 0 if VALUE is finite or NaN, +1 if it - is +Infinity, -1 if it is -Infinity. */ -__MATHDECL_ALIAS (int,isinf,, (_Mdouble_ __value), isinf) - __attribute__ ((__const__)); -# endif - -# if !__MATH_DECLARING_FLOATN -/* Return nonzero if VALUE is finite and not NaN. */ -__MATHDECL_ALIAS (int,finite,, (_Mdouble_ __value), finite) - __attribute__ ((__const__)); - -/* Return the remainder of X/Y. */ -__MATHCALL (drem,, (_Mdouble_ __x, _Mdouble_ __y)); - - -/* Return the fractional part of X after dividing out `ilogb (X)'. */ -__MATHCALL (significand,, (_Mdouble_ __x)); -# endif - -#endif /* Use misc. */ - -#ifdef __USE_ISOC99 -/* Return X with its signed changed to Y's. */ -__MATHCALLX (copysign,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); -#endif - -#ifdef __USE_ISOC99 -/* Return representation of qNaN for double type. */ -__MATHCALL (nan,, (const char *__tagb)); -#endif - - -#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) -# if ((!defined __cplusplus \ - || __cplusplus < 201103L /* isnan conflicts with C++11. */ \ - || __MATH_DECLARING_DOUBLE == 0)) /* isnanf or isnanl don't. */ \ - && !__MATH_DECLARING_FLOATN -/* Return nonzero if VALUE is not a number. */ -__MATHDECL_ALIAS (int,isnan,, (_Mdouble_ __value), isnan) - __attribute__ ((__const__)); -# endif -#endif - -#if defined __USE_MISC || (defined __USE_XOPEN && __MATH_DECLARING_DOUBLE) -/* Bessel functions. */ -__MATHCALL (j0,, (_Mdouble_)); -__MATHCALL (j1,, (_Mdouble_)); -__MATHCALL (jn,, (int, _Mdouble_)); -__MATHCALL (y0,, (_Mdouble_)); -__MATHCALL (y1,, (_Mdouble_)); -__MATHCALL (yn,, (int, _Mdouble_)); -#endif - - -#if defined __USE_XOPEN || defined __USE_ISOC99 -/* Error and gamma functions. */ -__MATHCALL_VEC (erf,, (_Mdouble_)); -__MATHCALL_VEC (erfc,, (_Mdouble_)); -__MATHCALL (lgamma,, (_Mdouble_)); -#endif - -#ifdef __USE_ISOC99 -/* True gamma function. */ -__MATHCALL (tgamma,, (_Mdouble_)); -#endif - -#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) -# if !__MATH_DECLARING_FLOATN -/* Obsolete alias for `lgamma'. */ -__MATHCALL (gamma,, (_Mdouble_)); -# endif -#endif - -#ifdef __USE_MISC -/* Reentrant version of lgamma. This function uses the global variable - `signgam'. The reentrant version instead takes a pointer and stores - the value through it. */ -__MATHCALL (lgamma,_r, (_Mdouble_, int *__signgamp)); -#endif - - -#if defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99 -/* Return the integer nearest X in the direction of the - prevailing rounding mode. */ -__MATHCALL (rint,, (_Mdouble_ __x)); - -/* Return X + epsilon if X < Y, X - epsilon if X > Y. */ -__MATHCALL (nextafter,, (_Mdouble_ __x, _Mdouble_ __y)); -# if defined __USE_ISOC99 && !defined __LDBL_COMPAT && !__MATH_DECLARING_FLOATN -__MATHCALL (nexttoward,, (_Mdouble_ __x, long double __y)); -# endif - -# if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN -/* Return X - epsilon. */ -__MATHCALL (nextdown,, (_Mdouble_ __x)); -/* Return X + epsilon. */ -__MATHCALL (nextup,, (_Mdouble_ __x)); -# endif - -/* Return the remainder of integer division X / Y with infinite precision. */ -__MATHCALL (remainder,, (_Mdouble_ __x, _Mdouble_ __y)); - -# ifdef __USE_ISOC99 -/* Return X times (2 to the Nth power). */ -__MATHCALL (scalbn,, (_Mdouble_ __x, int __n)); -# endif - -/* Return the binary exponent of X, which must be nonzero. */ -__MATHDECL (int,ilogb,, (_Mdouble_ __x)); -#endif - -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN -/* Like ilogb, but returning long int. */ -__MATHDECL (long int, llogb,, (_Mdouble_ __x)); -#endif - -#ifdef __USE_ISOC99 -/* Return X times (2 to the Nth power). */ -__MATHCALL (scalbln,, (_Mdouble_ __x, long int __n)); - -/* Round X to integral value in floating-point format using current - rounding direction, but do not raise inexact exception. */ -__MATHCALL (nearbyint,, (_Mdouble_ __x)); - -/* Round X to nearest integral value, rounding halfway cases away from - zero. */ -__MATHCALLX (round,, (_Mdouble_ __x), (__const__)); - -/* Round X to the integral value in floating-point format nearest but - not larger in magnitude. */ -__MATHCALLX (trunc,, (_Mdouble_ __x), (__const__)); - -/* Compute remainder of X and Y and put in *QUO a value with sign of x/y - and magnitude congruent `mod 2^n' to the magnitude of the integral - quotient x/y, with n >= 3. */ -__MATHCALL (remquo,, (_Mdouble_ __x, _Mdouble_ __y, int *__quo)); - - -/* Conversion functions. */ - -/* Round X to nearest integral value according to current rounding - direction. */ -__MATHDECL (long int,lrint,, (_Mdouble_ __x)); -__extension__ -__MATHDECL (long long int,llrint,, (_Mdouble_ __x)); - -/* Round X to nearest integral value, rounding halfway cases away from - zero. */ -__MATHDECL (long int,lround,, (_Mdouble_ __x)); -__extension__ -__MATHDECL (long long int,llround,, (_Mdouble_ __x)); - - -/* Return positive difference between X and Y. */ -__MATHCALL (fdim,, (_Mdouble_ __x, _Mdouble_ __y)); - -# if !__MATH_DECLARING_FLOATN || defined __USE_GNU || !__GLIBC_USE (ISOC2X) -/* Return maximum numeric value from X and Y. */ -__MATHCALLX (fmax,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return minimum numeric value from X and Y. */ -__MATHCALLX (fmin,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); -# endif - -/* Multiply-add function computed as a ternary operation. */ -__MATHCALL (fma,, (_Mdouble_ __x, _Mdouble_ __y, _Mdouble_ __z)); -#endif /* Use ISO C99. */ - -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) || __MATH_DECLARING_FLOATN -/* Round X to nearest integer value, rounding halfway cases to even. */ -__MATHCALLX (roundeven,, (_Mdouble_ __x), (__const__)); - -/* Round X to nearest signed integer value, not raising inexact, with - control of rounding direction and width of result. */ -__MATHDECL (__intmax_t, fromfp,, (_Mdouble_ __x, int __round, - unsigned int __width)); - -/* Round X to nearest unsigned integer value, not raising inexact, - with control of rounding direction and width of result. */ -__MATHDECL (__uintmax_t, ufromfp,, (_Mdouble_ __x, int __round, - unsigned int __width)); - -/* Round X to nearest signed integer value, raising inexact for - non-integers, with control of rounding direction and width of - result. */ -__MATHDECL (__intmax_t, fromfpx,, (_Mdouble_ __x, int __round, - unsigned int __width)); - -/* Round X to nearest unsigned integer value, raising inexact for - non-integers, with control of rounding direction and width of - result. */ -__MATHDECL (__uintmax_t, ufromfpx,, (_Mdouble_ __x, int __round, - unsigned int __width)); - -/* Canonicalize floating-point representation. */ -__MATHDECL_1 (int, canonicalize,, (_Mdouble_ *__cx, const _Mdouble_ *__x)); -#endif - -#if (__GLIBC_USE (IEC_60559_BFP_EXT) \ - || (__MATH_DECLARING_FLOATN \ - && (defined __USE_GNU || !__GLIBC_USE (ISOC2X)))) -/* Return value with maximum magnitude. */ -__MATHCALLX (fmaxmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return value with minimum magnitude. */ -__MATHCALLX (fminmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); -#endif - -#if __GLIBC_USE (ISOC2X) -/* Return maximum value from X and Y. */ -__MATHCALLX (fmaximum,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return minimum value from X and Y. */ -__MATHCALLX (fminimum,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return maximum numeric value from X and Y. */ -__MATHCALLX (fmaximum_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return minimum numeric value from X and Y. */ -__MATHCALLX (fminimum_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return value with maximum magnitude. */ -__MATHCALLX (fmaximum_mag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return value with minimum magnitude. */ -__MATHCALLX (fminimum_mag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return numeric value with maximum magnitude. */ -__MATHCALLX (fmaximum_mag_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); - -/* Return numeric value with minimum magnitude. */ -__MATHCALLX (fminimum_mag_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)); -#endif - -#if __GLIBC_USE (IEC_60559_EXT) || __MATH_DECLARING_FLOATN -/* Total order operation. */ -__MATHDECL_1 (int, totalorder,, (const _Mdouble_ *__x, - const _Mdouble_ *__y)) - __attribute_pure__; - -/* Total order operation on absolute values. */ -__MATHDECL_1 (int, totalordermag,, (const _Mdouble_ *__x, - const _Mdouble_ *__y)) - __attribute_pure__; - -/* Get NaN payload. */ -__MATHCALL (getpayload,, (const _Mdouble_ *__x)); - -/* Set quiet NaN payload. */ -__MATHDECL_1 (int, setpayload,, (_Mdouble_ *__x, _Mdouble_ __payload)); - -/* Set signaling NaN payload. */ -__MATHDECL_1 (int, setpayloadsig,, (_Mdouble_ *__x, _Mdouble_ __payload)); -#endif - -#if (defined __USE_MISC || (defined __USE_XOPEN_EXTENDED \ - && __MATH_DECLARING_DOUBLE \ - && !defined __USE_XOPEN2K8)) \ - && !__MATH_DECLARING_FLOATN -/* Return X times (2 to the Nth power). */ -__MATHCALL (scalb,, (_Mdouble_ __x, _Mdouble_ __n)); -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@mathcalls.h.blob deleted file mode 100644 index ac6195c19baf9923666ba421676295ad532a910f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32352 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 Jzgmzh{~zK6bXoua diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h deleted file mode 100644 index e83d6254..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h +++ /dev/null @@ -1,183 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * POSIX Standard: 2.9.2 Minimum Values Added to <limits.h> - * - * Never include this file directly; use <limits.h> instead. - */ - -#ifndef _BITS_POSIX1_LIM_H -#define _BITS_POSIX1_LIM_H 1 - -#include <bits/wordsize.h> - -/* These are the standard-mandated minimum values. */ - -/* Minimum number of operations in one list I/O call. */ -#define _POSIX_AIO_LISTIO_MAX 2 - -/* Minimal number of outstanding asynchronous I/O operations. */ -#define _POSIX_AIO_MAX 1 - -/* Maximum length of arguments to `execve', including environment. */ -#define _POSIX_ARG_MAX 4096 - -/* Maximum simultaneous processes per real user ID. */ -#ifdef __USE_XOPEN2K -# define _POSIX_CHILD_MAX 25 -#else -# define _POSIX_CHILD_MAX 6 -#endif - -/* Minimal number of timer expiration overruns. */ -#define _POSIX_DELAYTIMER_MAX 32 - -/* Maximum length of a host name (not including the terminating null) - as returned from the GETHOSTNAME function. */ -#define _POSIX_HOST_NAME_MAX 255 - -/* Maximum link count of a file. */ -#define _POSIX_LINK_MAX 8 - -/* Maximum length of login name. */ -#define _POSIX_LOGIN_NAME_MAX 9 - -/* Number of bytes in a terminal canonical input queue. */ -#define _POSIX_MAX_CANON 255 - -/* Number of bytes for which space will be - available in a terminal input queue. */ -#define _POSIX_MAX_INPUT 255 - -/* Maximum number of message queues open for a process. */ -#define _POSIX_MQ_OPEN_MAX 8 - -/* Maximum number of supported message priorities. */ -#define _POSIX_MQ_PRIO_MAX 32 - -/* Number of bytes in a filename. */ -#define _POSIX_NAME_MAX 14 - -/* Number of simultaneous supplementary group IDs per process. */ -#ifdef __USE_XOPEN2K -# define _POSIX_NGROUPS_MAX 8 -#else -# define _POSIX_NGROUPS_MAX 0 -#endif - -/* Number of files one process can have open at once. */ -#ifdef __USE_XOPEN2K -# define _POSIX_OPEN_MAX 20 -#else -# define _POSIX_OPEN_MAX 16 -#endif - -#if !defined __USE_XOPEN2K || defined __USE_GNU -/* Number of descriptors that a process may examine with `pselect' or - `select'. */ -# define _POSIX_FD_SETSIZE _POSIX_OPEN_MAX -#endif - -/* Number of bytes in a pathname. */ -#define _POSIX_PATH_MAX 256 - -/* Number of bytes than can be written atomically to a pipe. */ -#define _POSIX_PIPE_BUF 512 - -/* The number of repeated occurrences of a BRE permitted by the - REGEXEC and REGCOMP functions when using the interval notation. */ -#define _POSIX_RE_DUP_MAX 255 - -/* Minimal number of realtime signals reserved for the application. */ -#define _POSIX_RTSIG_MAX 8 - -/* Number of semaphores a process can have. */ -#define _POSIX_SEM_NSEMS_MAX 256 - -/* Maximal value of a semaphore. */ -#define _POSIX_SEM_VALUE_MAX 32767 - -/* Number of pending realtime signals. */ -#define _POSIX_SIGQUEUE_MAX 32 - -/* Largest value of a `ssize_t'. */ -#define _POSIX_SSIZE_MAX 32767 - -/* Number of streams a process can have open at once. */ -#define _POSIX_STREAM_MAX 8 - -/* The number of bytes in a symbolic link. */ -#define _POSIX_SYMLINK_MAX 255 - -/* The number of symbolic links that can be traversed in the - resolution of a pathname in the absence of a loop. */ -#define _POSIX_SYMLOOP_MAX 8 - -/* Number of timer for a process. */ -#define _POSIX_TIMER_MAX 32 - -/* Maximum number of characters in a tty name. */ -#define _POSIX_TTY_NAME_MAX 9 - -/* Maximum length of a time zone abbreviation (element of 'tzname'). */ -#ifdef __USE_XOPEN2K -# define _POSIX_TZNAME_MAX 6 -#else -# define _POSIX_TZNAME_MAX 3 -#endif - -#if !defined __USE_XOPEN2K || defined __USE_GNU -/* Maximum number of connections that can be queued on a socket. */ -# define _POSIX_QLIMIT 1 - -/* Maximum number of bytes that can be buffered on a socket for send - or receive. */ -# define _POSIX_HIWAT _POSIX_PIPE_BUF - -/* Maximum number of elements in an `iovec' array. */ -# define _POSIX_UIO_MAXIOV 16 -#endif - -/* Maximum clock resolution in nanoseconds. */ -#define _POSIX_CLOCKRES_MIN 20000000 - - -/* Get the implementation-specific values for the above. */ -#include <bits/local_lim.h> - - -#ifndef SSIZE_MAX -/* ssize_t is not formally required to be the signed type - corresponding to size_t, but it is for all configurations supported - by glibc. */ -# if __WORDSIZE == 64 || __WORDSIZE32_SIZE_ULONG -# define SSIZE_MAX LONG_MAX -# else -# define SSIZE_MAX INT_MAX -# endif -#endif - - -/* This value is a guaranteed minimum maximum. - The current maximum can be got from `sysconf'. */ - -#ifndef NGROUPS_MAX -# define NGROUPS_MAX 8 -#endif - -#endif /* bits/posix1_lim.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix1_lim.h.blob deleted file mode 100644 index e03138a19391b86bd639f75de073c78a0765b029..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14742 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 Jhr-It^?x%)xw!xU diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h deleted file mode 100644 index 4cf36263..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h +++ /dev/null @@ -1,90 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * Never include this file directly; include <limits.h> instead. - */ - -#ifndef _BITS_POSIX2_LIM_H -#define _BITS_POSIX2_LIM_H 1 - - -/* The maximum `ibase' and `obase' values allowed by the `bc' utility. */ -#define _POSIX2_BC_BASE_MAX 99 - -/* The maximum number of elements allowed in an array by the `bc' utility. */ -#define _POSIX2_BC_DIM_MAX 2048 - -/* The maximum `scale' value allowed by the `bc' utility. */ -#define _POSIX2_BC_SCALE_MAX 99 - -/* The maximum length of a string constant accepted by the `bc' utility. */ -#define _POSIX2_BC_STRING_MAX 1000 - -/* The maximum number of weights that can be assigned to an entry of - the LC_COLLATE `order' keyword in the locale definition file. */ -#define _POSIX2_COLL_WEIGHTS_MAX 2 - -/* The maximum number of expressions that can be nested - within parentheses by the `expr' utility. */ -#define _POSIX2_EXPR_NEST_MAX 32 - -/* The maximum length, in bytes, of an input line. */ -#define _POSIX2_LINE_MAX 2048 - -/* The maximum number of repeated occurrences of a regular expression - permitted when using the interval notation `\{M,N\}'. */ -#define _POSIX2_RE_DUP_MAX 255 - -/* The maximum number of bytes in a character class name. We have no - fixed limit, 2048 is a high number. */ -#define _POSIX2_CHARCLASS_NAME_MAX 14 - - -/* These values are implementation-specific, - and may vary within the implementation. - Their precise values can be obtained from sysconf. */ - -#ifndef BC_BASE_MAX -#define BC_BASE_MAX _POSIX2_BC_BASE_MAX -#endif -#ifndef BC_DIM_MAX -#define BC_DIM_MAX _POSIX2_BC_DIM_MAX -#endif -#ifndef BC_SCALE_MAX -#define BC_SCALE_MAX _POSIX2_BC_SCALE_MAX -#endif -#ifndef BC_STRING_MAX -#define BC_STRING_MAX _POSIX2_BC_STRING_MAX -#endif -#ifndef COLL_WEIGHTS_MAX -#define COLL_WEIGHTS_MAX 255 -#endif -#ifndef EXPR_NEST_MAX -#define EXPR_NEST_MAX _POSIX2_EXPR_NEST_MAX -#endif -#ifndef LINE_MAX -#define LINE_MAX _POSIX2_LINE_MAX -#endif -#ifndef CHARCLASS_NAME_MAX -#define CHARCLASS_NAME_MAX 2048 -#endif - -/* This value is defined like this in regex.h. */ -#define RE_DUP_MAX (0x7fff) - -#endif /* bits/posix2_lim.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix2_lim.h.blob deleted file mode 100644 index 661fe834e07b38b32fe7a0aaf6de51d9d3c154b1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13698 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h deleted file mode 100644 index 8e3c8fac..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h +++ /dev/null @@ -1,194 +0,0 @@ -/* Define POSIX options for Linux. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, see <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_POSIX_OPT_H -#define _BITS_POSIX_OPT_H 1 - -/* Job control is supported. */ -#define _POSIX_JOB_CONTROL 1 - -/* Processes have a saved set-user-ID and a saved set-group-ID. */ -#define _POSIX_SAVED_IDS 1 - -/* Priority scheduling is not supported with the correct semantics, - but GNU/Linux applications expect that the corresponding interfaces - are available, even though the semantics do not meet the POSIX - requirements. See glibc bug 14829. */ -#define _POSIX_PRIORITY_SCHEDULING 200809L - -/* Synchronizing file data is supported. */ -#define _POSIX_SYNCHRONIZED_IO 200809L - -/* The fsync function is present. */ -#define _POSIX_FSYNC 200809L - -/* Mapping of files to memory is supported. */ -#define _POSIX_MAPPED_FILES 200809L - -/* Locking of all memory is supported. */ -#define _POSIX_MEMLOCK 200809L - -/* Locking of ranges of memory is supported. */ -#define _POSIX_MEMLOCK_RANGE 200809L - -/* Setting of memory protections is supported. */ -#define _POSIX_MEMORY_PROTECTION 200809L - -/* Some filesystems allow all users to change file ownership. */ -#define _POSIX_CHOWN_RESTRICTED 0 - -/* `c_cc' member of 'struct termios' structure can be disabled by - using the value _POSIX_VDISABLE. */ -#define _POSIX_VDISABLE '\0' - -/* Filenames are not silently truncated. */ -#define _POSIX_NO_TRUNC 1 - -/* X/Open realtime support is available. */ -#define _XOPEN_REALTIME 1 - -/* X/Open thread realtime support is available. */ -#define _XOPEN_REALTIME_THREADS 1 - -/* XPG4.2 shared memory is supported. */ -#define _XOPEN_SHM 1 - -/* Tell we have POSIX threads. */ -#define _POSIX_THREADS 200809L - -/* We have the reentrant functions described in POSIX. */ -#define _POSIX_REENTRANT_FUNCTIONS 1 -#define _POSIX_THREAD_SAFE_FUNCTIONS 200809L - -/* We provide priority scheduling for threads. */ -#define _POSIX_THREAD_PRIORITY_SCHEDULING 200809L - -/* We support user-defined stack sizes. */ -#define _POSIX_THREAD_ATTR_STACKSIZE 200809L - -/* We support user-defined stacks. */ -#define _POSIX_THREAD_ATTR_STACKADDR 200809L - -/* We support priority inheritance. */ -#define _POSIX_THREAD_PRIO_INHERIT 200809L - -/* We support priority protection, though only for non-robust - mutexes. */ -#define _POSIX_THREAD_PRIO_PROTECT 200809L - -#ifdef __USE_XOPEN2K8 -/* We support priority inheritance for robust mutexes. */ -# define _POSIX_THREAD_ROBUST_PRIO_INHERIT 200809L - -/* We do not support priority protection for robust mutexes. */ -# define _POSIX_THREAD_ROBUST_PRIO_PROTECT -1 -#endif - -/* We support POSIX.1b semaphores. */ -#define _POSIX_SEMAPHORES 200809L - -/* Real-time signals are supported. */ -#define _POSIX_REALTIME_SIGNALS 200809L - -/* We support asynchronous I/O. */ -#define _POSIX_ASYNCHRONOUS_IO 200809L -#define _POSIX_ASYNC_IO 1 -/* Alternative name for Unix98. */ -#define _LFS_ASYNCHRONOUS_IO 1 -/* Support for prioritization is also available. */ -#define _POSIX_PRIORITIZED_IO 200809L - -/* The LFS support in asynchronous I/O is also available. */ -#define _LFS64_ASYNCHRONOUS_IO 1 - -/* The rest of the LFS is also available. */ -#define _LFS_LARGEFILE 1 -#define _LFS64_LARGEFILE 1 -#define _LFS64_STDIO 1 - -/* POSIX shared memory objects are implemented. */ -#define _POSIX_SHARED_MEMORY_OBJECTS 200809L - -/* CPU-time clocks support needs to be checked at runtime. */ -#define _POSIX_CPUTIME 0 - -/* Clock support in threads must be also checked at runtime. */ -#define _POSIX_THREAD_CPUTIME 0 - -/* GNU libc provides regular expression handling. */ -#define _POSIX_REGEXP 1 - -/* Reader/Writer locks are available. */ -#define _POSIX_READER_WRITER_LOCKS 200809L - -/* We have a POSIX shell. */ -#define _POSIX_SHELL 1 - -/* We support the Timeouts option. */ -#define _POSIX_TIMEOUTS 200809L - -/* We support spinlocks. */ -#define _POSIX_SPIN_LOCKS 200809L - -/* The `spawn' function family is supported. */ -#define _POSIX_SPAWN 200809L - -/* We have POSIX timers. */ -#define _POSIX_TIMERS 200809L - -/* The barrier functions are available. */ -#define _POSIX_BARRIERS 200809L - -/* POSIX message queues are available. */ -#define _POSIX_MESSAGE_PASSING 200809L - -/* Thread process-shared synchronization is supported. */ -#define _POSIX_THREAD_PROCESS_SHARED 200809L - -/* The monotonic clock might be available. */ -#define _POSIX_MONOTONIC_CLOCK 0 - -/* The clock selection interfaces are available. */ -#define _POSIX_CLOCK_SELECTION 200809L - -/* Advisory information interfaces are available. */ -#define _POSIX_ADVISORY_INFO 200809L - -/* IPv6 support is available. */ -#define _POSIX_IPV6 200809L - -/* Raw socket support is available. */ -#define _POSIX_RAW_SOCKETS 200809L - -/* We have at least one terminal. */ -#define _POSIX2_CHAR_TERM 200809L - -/* Neither process nor thread sporadic server interfaces is available. */ -#define _POSIX_SPORADIC_SERVER -1 -#define _POSIX_THREAD_SPORADIC_SERVER -1 - -/* trace.h is not available. */ -#define _POSIX_TRACE -1 -#define _POSIX_TRACE_EVENT_FILTER -1 -#define _POSIX_TRACE_INHERIT -1 -#define _POSIX_TRACE_LOG -1 - -/* Typed memory objects are not available. */ -#define _POSIX_TYPED_MEMORY_OBJECTS -1 - -#endif /* bits/posix_opt.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@posix_opt.h.blob deleted file mode 100644 index c3ee0f2fadf38e43ae6822aaf98f9afac9238478..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17435 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 Qs=B6qN_q;|!b%MB|3D1PJ^%m! diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h deleted file mode 100644 index be0a66b1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Definition of PTHREAD_STACK_MIN, possibly dynamic. - Copyright (C) 2021-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef PTHREAD_STACK_MIN -# if defined __USE_DYNAMIC_STACK_SIZE && __USE_DYNAMIC_STACK_SIZE -# ifndef __ASSEMBLER__ -# define __SC_THREAD_STACK_MIN_VALUE 75 -__BEGIN_DECLS -extern long int __sysconf (int __name) __THROW; -__END_DECLS -# define PTHREAD_STACK_MIN __sysconf (__SC_THREAD_STACK_MIN_VALUE) -# endif -# else -# include <bits/pthread_stack_min.h> -# endif -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min-dynamic.h.blob deleted file mode 100644 index a2b416d2d8cdaba85585f4412c98a3268ecd7080..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12155 zcmb7KJ*?$86}}_dDUgsTpjlBMv}`uaV|kheA=p15&9VgoA&>};<K%jt6X(Uwz4whM zD7T<SqM@LqK!}2p5{aRuqM)TgTTzX~!m%Cu#y2Ov*(Oa+?DO-T?;IcJ_1!1``S|I} z-J@N;mo3Xh{ti=jTK2hSO6L`;ay8JrCA@o+?mj~W>6%TV*-;L6ylb+G4~%L#JbZI? zhuweQc$AN7$azP_Sh4*3?>xK7OV;qNpt53b?suPj`L&N;Mlw`C^!AO>KYCMgt#b2L z<wen!N)ycrZ59clf|t3qC4X`ob|vkJcX|LzLG&g6(chv~txoVLnvqwiM(;n%8!?(! zpZ)tE{<`upcy%0bi)u#9I~8f_UD6W0k6z#=98TYOa#QzDZWESR|Cq3Ju~Yn3_I>#P z063EV`kqQxrIf-5E}UkU>ZRhRn?mq5S}fX*XxVaF9C^hc<YTAV5QI~}thr!CImn}O zAAIe1<x1FSKk}}YX4QbDgbzV;A^?Eb@u0?`CiEQAl)8H+_{pg7`#=6P)>D~{nqafZ z22{JI?s!5g>u`sC#hU{W7r>94?&LIY*)S7J>CX<_2Kw=zKaAB6*`eh~El`7#qb=(` z6S66<+es{v4`rLORz0YkR;<QTX6_3;j8qrzefQbB(bitKpuQ!#IYhj~Y%wb39cKlX zMLl*@bJ?kx`{q1m8NqD$<MQnUN7axa7b~E#Kep|)&_mFbzEdwyE60vQvZAkM=HZO# z{Qw(u#9|<jsefhHP;}3(ZgB)Nwiw*Yo_0E6bBG&|S>+hO;x38dmQV|re|+_W7{n$M zQ166oU>8noeF*SIBUKdOXaHu>l2bth_{^D$6Qr+ICV1@9F_Cv02Bld8L%I@TLy)pn z9gIC6zy0ml&|nW}3F{k~V2|I=<d#(|@(5~eeNsSP3#LS6r@ZcO-~%=&XbnE)mtsqG zGm*S~E7IKC6>O)1_oXBQUd%0+p<?JRgPH^&)DO{esB!&J(>+F5sPyEDZb9g&h}HvR zMI#=1OR}%OwvQw0a?p?fp?B96o>UNJeZ6A<beaO1QQ$irGj7T}U~m&_0Ekg1BtYU5 zUbo~RkZ*hlt&!(c#EHl!m5`J`j}W&y=<cv%0DRCh+7qf*O;o&8BmhlsrT7b+MNG2U z{$rtVz~mi!h#KA$5;Pz|aXocPul`3J5>V6nWaS9kw_M?55F}imW+J&DjHVlNXl_fD ztz;fiZO(?Fvp)FBt6#<~vO_M@&)W?>r)LpcAFBK7XbFK0zDNCZ=&5K&abMjd@I${i z60Z9@tWiY86&eUs6l_G4h~Q>B>jEl5l<8iCC}@h$uToeN?BuHF7yiv+LV=)V4eQvz zsS93K5@qqdh+qJT>{-{?9$^8JS?YF7#Vq3WHoz_%vUAdNW82Sv{W$KQY~ecFw%RVA z<w8cI&ORw}VDy^5J*Sw4?e?uLoB}~SID&tQERL!|*=0#gMQ%^jzIDg6+v<A>3IHr{ z=tN#HL=W%z5JBLfWobmU^%Vro7{9K|ZP$YjM_}Z*G<mVGy*brE|Dl;ZG2$QsZD_V< z1lqm~s@)9e^A3E%+kp?VYoUzeh_g~~K+K^1LQ}~KOwE@~I#dc&f>c3Y*#&yNA3$M? zqKpjgoD>LY;e}E_jceEDAErMWp%!a)O6Uwl+ii+!<sEKb;$DXDi9O;(-zShzZ-Eya z0mGIla0_K?!Jj^#s%?Y5JQbyuJRcOq4c0q_0=0+>%r9WD6#2o2%tqId1DxZ{Nz=6Q zixw;rS4=?jyS|(m_(10(;vG@X1IdxWdNhz+w3Vq*wIEHrR3ze=4fNhLG?>gR3Mkh_ zIo5?H8-^F8x-4m_P{Fdbt4crn@H=r;vcRQ6Dl;v*7!aZ^Ld$OC0plbyDjabyfsbj{ z4-5`<QOwZYpqs{O2`XC@;aFd|?!&B)2eKAAV-TOLWqL31V>UF-<LO$THDQ%E#WZ+} zfru)4EIY}&0~{C^&AfM{=ab^hIe}KtHDTnsa-74(-B8Gl1(FrVdEuP0i)Ljxr$Bcc z2-tjCk5{`5Uks;`zv;}Qn#-J6)USEn2;fU)jvz*C{n&3N@<!rHaICjcH>19?Jrsft zRG4-5v`t}YUNK>s0>{|`cz%=linl!+`5e_d2KmJsKS}gPXPm6%og^>_pt5b{S%qbs z%%J<p>Y#hkN*iMqz&z)Wnaf5|@@eME4ZL0)HBncaDF#4sk+rCB+rrFBK#OK}#=YUl z1K1Zr67xo^puK@XkKbO-4ZU%~oz>K0!{GJ+!z7r*M*cz#JeiBF3vZ-y>4VG;>|cKC z;y%dg2mM#wk(H^Tm2megMY2h|K6gC84C;J!ky7`8sE+r&>tlcO+aJVr)2akDo*keU zzMSNwmbK9~&V7Y;O;PW|?Tv!!nZ;1(qtIwL#xxV3i;%2xtX3ycX>+%@0JMiyNTKHv z4iVg)Hqu<D(FOrkxs^}@H|LWjML3~vQJ0L<fGDji6}1@EKE3FX?#cNIZBA9eJ9}PD z$7{P^D*UYCaD{8)|Ihd81d+OM_Nha_wYi;A#j;mL12ONMh`TlogoS=^dV1URn<M9o zIlWq?LN~QOy$?=zd>GNx0=B&%x|Rce_zf%Fk325oejT6W-Po?5GN+!xC=xQ%FW@ht zv&0xZYyww|YvdMGRjgAEJ^|T&FT2jHqVVc^O#uQkljsXUJmhFz`^|%b=TRB1pu0I+ z7>aJ`a0AnpB|)L`2f*%DS&o{6E^CPgTX<o-DPsJ5AfI!^EIR&RYwq`oo(v?u%|~@m zdyLk-0uDmv21;l4rX>O+x}fuIG9zI%3#Vu?zh#(Fqi?N3;oJ?wCDFrhDO~bK-=OMI zQL$F)O(QlTNu|y;eeU%D%buT@8vra|8Dtu0Kg<|tkV0Jai>Qv^!W#r`-a}zs7=)x! zc0+yX<?%uxzln=HZ?N&zn$qxJ%R!j`0Wj^+kKo8Yoz_EHxKzMU<TTxmq8rOOh=S7+ zy}yA?1|#IDOa@LxHLD@`mb-&us2GH5<s=#D2j8|CoO!COVpPB|6z*UmYtY44JQ=MV zwRJj9cua6=EH8-JO9p7Qa&%V+0oAC6V18$y4XypA_6g2IiZra0wqZ}N4TFrHa;&nW zs`QQ{k-S009ZhY#m4Zt%J2EuIc3ab&{wXH7c~7A2#P9PQuiI&K1|$t*t!$k%ov=O4 z%~XXkR0J{~<+C*0HN-gdBKEf!b~K;=@Js*ti~UnB;m6YaE&}D$$cKdSYXxhEqwMW= zA@E-0+OKX7<;MLhz_lg`X?|vuBTVHZyHUmA7MMZLyi^;NX4|WJua5&q3k<rlc(L*S znRbMG1Y_62d%?l>%!qq9$S6v>#X#1_!Q5C}n|ho3I=MPQIqw75wqaPPYhz{kH70A+ zJ#fusrWo6MHQM%+o=CMhv=b9R#-eP1YUSDEkp4-=yEQlkhQcl<ty5CRx$_|F`A5_L zl1WX#sp+2~?Zn6q9Yf*s>e+xyyb(|qq!Qb%{FAcw#iyAe(1Ct^a~pxrCSvoZUt<<` zdTYwsW(MUo^o#y(n&G7>FmYwNeytVYvj@7u(|h7SxQ$xPOe^Bs1v9IS2ZN|pP=4UR zyp<%WIF=W(DTwPmb7Q$*y*~{se8hlaK%I!g{i~T3tG|j)cs6Tfp^r0oe)Kf@<=e_l Sr|f8c{pfSMFFxMwcK-*9Xw(n@ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h deleted file mode 100644 index 97b52fba..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Definition of PTHREAD_STACK_MIN. Linux version. - Copyright (C) 2021-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* Minimum size for a thread. We are free to choose a reasonable value. */ -#define PTHREAD_STACK_MIN 16384 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthread_stack_min.h.blob deleted file mode 100644 index 07ce8915870101515ba4129f27e413530fe79b72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12200 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 at&2DA+=lmGe(B}&FPQ&tpFO_;ulyg%UEK@- diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h deleted file mode 100644 index 20b3854d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_PTHREADTYPES_ARCH_H -#define _BITS_PTHREADTYPES_ARCH_H 1 - -#include <bits/wordsize.h> - -#ifdef __x86_64__ -# if __WORDSIZE == 64 -# define __SIZEOF_PTHREAD_MUTEX_T 40 -# define __SIZEOF_PTHREAD_ATTR_T 56 -# define __SIZEOF_PTHREAD_RWLOCK_T 56 -# define __SIZEOF_PTHREAD_BARRIER_T 32 -# else -# define __SIZEOF_PTHREAD_MUTEX_T 32 -# define __SIZEOF_PTHREAD_ATTR_T 32 -# define __SIZEOF_PTHREAD_RWLOCK_T 44 -# define __SIZEOF_PTHREAD_BARRIER_T 20 -# endif -#else -# define __SIZEOF_PTHREAD_MUTEX_T 24 -# define __SIZEOF_PTHREAD_ATTR_T 36 -# define __SIZEOF_PTHREAD_RWLOCK_T 32 -# define __SIZEOF_PTHREAD_BARRIER_T 20 -#endif -#define __SIZEOF_PTHREAD_MUTEXATTR_T 4 -#define __SIZEOF_PTHREAD_COND_T 48 -#define __SIZEOF_PTHREAD_CONDATTR_T 4 -#define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 -#define __SIZEOF_PTHREAD_BARRIERATTR_T 4 - -#define __LOCK_ALIGNMENT -#define __ONCE_ALIGNMENT - -#ifndef __x86_64__ -/* Extra attributes for the cleanup functions. */ -# define __cleanup_fct_attribute __attribute__ ((__regparm__ (1))) -#endif - -#endif /* bits/pthreadtypes.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes-arch.h.blob deleted file mode 100644 index 3123993c8da375445a1d0ce83a42bf9423bab504..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13279 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h deleted file mode 100644 index 65464ee8..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h +++ /dev/null @@ -1,121 +0,0 @@ -/* Declaration of common pthread types for all architectures. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_PTHREADTYPES_COMMON_H -# define _BITS_PTHREADTYPES_COMMON_H 1 - -/* For internal mutex and condition variable definitions. */ -#include <bits/thread-shared-types.h> - -/* Thread identifiers. The structure of the attribute type is not - exposed on purpose. */ -typedef unsigned long int pthread_t; - - -/* Data structures for mutex handling. The structure of the attribute - type is not exposed on purpose. */ -typedef union -{ - char __size[__SIZEOF_PTHREAD_MUTEXATTR_T]; - int __align; -} pthread_mutexattr_t; - - -/* Data structure for condition variable handling. The structure of - the attribute type is not exposed on purpose. */ -typedef union -{ - char __size[__SIZEOF_PTHREAD_CONDATTR_T]; - int __align; -} pthread_condattr_t; - - -/* Keys for thread-specific data */ -typedef unsigned int pthread_key_t; - - -/* Once-only execution */ -typedef int __ONCE_ALIGNMENT pthread_once_t; - - -union pthread_attr_t -{ - char __size[__SIZEOF_PTHREAD_ATTR_T]; - long int __align; -}; -#ifndef __have_pthread_attr_t -typedef union pthread_attr_t pthread_attr_t; -# define __have_pthread_attr_t 1 -#endif - - -typedef union -{ - struct __pthread_mutex_s __data; - char __size[__SIZEOF_PTHREAD_MUTEX_T]; - long int __align; -} pthread_mutex_t; - - -typedef union -{ - struct __pthread_cond_s __data; - char __size[__SIZEOF_PTHREAD_COND_T]; - __extension__ long long int __align; -} pthread_cond_t; - - -#if defined __USE_UNIX98 || defined __USE_XOPEN2K -/* Data structure for reader-writer lock variable handling. The - structure of the attribute type is deliberately not exposed. */ -typedef union -{ - struct __pthread_rwlock_arch_t __data; - char __size[__SIZEOF_PTHREAD_RWLOCK_T]; - long int __align; -} pthread_rwlock_t; - -typedef union -{ - char __size[__SIZEOF_PTHREAD_RWLOCKATTR_T]; - long int __align; -} pthread_rwlockattr_t; -#endif - - -#ifdef __USE_XOPEN2K -/* POSIX spinlock data type. */ -typedef volatile int pthread_spinlock_t; - - -/* POSIX barriers data type. The structure of the type is - deliberately not exposed. */ -typedef union -{ - char __size[__SIZEOF_PTHREAD_BARRIER_T]; - long int __align; -} pthread_barrier_t; - -typedef union -{ - char __size[__SIZEOF_PTHREAD_BARRIERATTR_T]; - int __align; -} pthread_barrierattr_t; -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@pthreadtypes.h.blob deleted file mode 100644 index cdca8617b0c07e171a3d412647ec5929c9f6d8f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17259 zcmcgzeQX@Zb>E{-sx31FEgQ1Iu-1|i6#2x{Q4CE<tfVRwNm<H~6!b|cvQ~S0yLW5u z7jO5Dq+GXwfT|JTx^SzeaT_~M?4oF##7PX;YCdd1ZJkPP>Lv}GwuqfJEfN=Tguqr~ z$BuP<GqW>yb33<p`J*NfIpWT~c^|*`dvD&XQquKnSGQh~5>lq<+Iq&yjO+ef;Ch)r z_k&Dc&u9FSma$dS*`!I!G)r{~Z7oeNxTQJMDWvmeN!J3mw6vq?4$^xAiA>oqWlTr2 z%6UC=a6CJd$>{~tQ8YKNZz@XH*UO){!mZJQB@aJA`g2cmX5eSgQ$M39cFqsfKvx1J zge|qqTn5{c**wB_RqaL72})ooEWKjRzQ{?%I>8@Gp={=b8tutu3RW3C>i*uBFE@D^ zyjm`aEi!Z!J@YwDsY`4%C~^<PCR7&h+B{@<n@3_S!Tv#Ead@ZDt?={Q5&&R9^;+-g z2l<@qT4-U!X;_r!`sU)0VwpB4jN48PT-(%?1v9Th$jeTkm)PPsU>c^SE4h-p;FA{y zKc8z7Hq9%Wj^QGy3`;RS1kF_o0N5H2ez|0*S}mk;>K1j&Ttq5->8mGsJ$<xMf!U0* zL8x89aLgF3u)_)VeX~$etp?z8PABUE)7DFM%i{FcD<%$f=W{c>`YbyFx2$2HGADCe z8eZCR3%S;Isu;<YoE>MazvO4Myl#k7rrsApsjLOc<lgKAw>8y`sgH@S9wKx_oiNRH z=S*EOUBxInT41`4U+2Dh9>a`)Hawo&9m7!uWJrSqVeA)dyH)5R=zcKgpB7qKc1%cC z;iEe9#EeP(02??e#sDKz`UuPLwW8i~iv=*F9fLjB)0`m2W)?Rfvpit{jJsG2+p2~E z^Y0s{co3sZ5PFAg1G|_it`7{}!bm9!I2wSd*y^I9THrHcu9zTctwO=m8y&-Wx1d95 z4uBy^3Be(Vv(>L4d#>*O2yZB}2ebtFXbrQ6?uT*<E5><5Xsxm619?T5Qn)tEYi|f% z&`UnF2EXQ;Ry)-VMRH`A)12DHY}YK)%eiVvT+A_;p<)D18fp@NFj(Tm361kghE^02 zmT-0G3MWG7aS=62x~>$gB@dHqN-pw|B{_&lK-K12D;%m|<&4%H1E3QX(6k187x0W5 zXC5#(iZuWPslyT=<`vVh)ruu}hlUUvSxZGR5z(ZwTup@@fp2w$yTgtQ@Jvr`PpDpo z>hq$w1<>^7ee<-KMNqQg{v)C=!{nU4#5KHeNC*H4z8Qp_(mPd+AVFxF7h5^l_O|JZ z$$+gOeHw~ngfI$DIRnjY&QCYVJk_@|da2}KA8dH%0lq~h$kl^;?KXN&$|ATv<mX$X zg$0)RUg)Qar&)H{n$OP*;3s@zK{W$!PShw0m;1s%2$zD50wp-O;m%rtioj($U84HX z6xSZbVad`LN%ib`UFQh}f|f4mj$Se~61;Ry^)bF95o927J>4nb9w7pfy3}=apJx%O zHv+aokeyLI6WR7V4|nqY6E0je+nTn^wRJ3`h0b2|)rzjQ@;Bua)Ub^Vx5FtA#0nw! ztpedfRW!Y^B*sOqsQN{l9MeYf(=ikPSTLazIjsxypq^(D1Rjc(MxnN}f(SE)$|bo? zdhpT$Ffw17=rXoFI@Lk{5$O2DC<YN|qos?w3T<B+s$Ct>>pSoeZxyrTIyRJXG2-wl zI3T8>{Su}UUJy24IO&9|KqW{O;Ug@-3yLLB7^5hymdH7Y5mLkpISXo>-E97W`m-|B z;y_=F(HV+1*;J?%bvSw`_A<P$;v)|Cehd<fcHjj^K(=KZxGf*of@fC8)wWX5cq)n$ zSvx3LL!#b^6{tvDV15CECC(2tWH`En9N-*}PMWBdkF;Ria$mQg`E4!^4Sb+;vG^T@ zo(GasOW31~<hZR+jWR5?z>DIRP-X+YTMP}5Ff>vt^U{Qhsri;AjPshJK=oI0WkU(n z+AJh4oUqm)mFv{Z7+<+CxHZf5(L||Xh$z%nSemJqz{gtJE9r2k<6<V11l_c#mI&7> z3Om*-r29bf#ep=eAgx1u(zYHHUGXs+8t3w2t3E6Ax>-=d!5a@mp`r^p$2FY_92g_b zJarP~6Q#yEj8=p)VdUE6I453ChC*a45L<DG7iuXRX;z|h3gM0=6>M&-$4$EpS`5RI z-`1JOFSN{&ux`Li0S<Kvuw6R8<ft$&Wk`%m5lcnOn$G~xcpj~25h?6?q0fbm!wr=H zD#FFOGq2fkz^X5wH8-?nzHizdoc{>#6RP<5z{g@5r5b3OC84XrR6uiW+l?#sXzIPW z>C`*YS0iI0D6J(F8q#u6qB%!u4?K>XJB6-BBMrc1B!z{GZ5swy7W8XqXR$X3lK{;E zGI<i=6~xyu!m~JCM<(EWRiV%73arw`6t@DCB^b+c{t_Cvh;F$Wyb+g6Q)xWCzw+A+ zmqS=TXvPdkOYz|!uOOE$N^Hm0dI(v8fmH1tBTn5V)ptzKBTen2pF7MKNURbRe7ypV zapPDgPArZ#a_&3A7K$tBCca+qJ-tR&E$9=Ce;Pv4^o_t@wDJMEXp8`wLWiZ$y)K+6 zOmg&y=ej`H2?zmXyHF6@&L>QYa9nRkU9}uei{f?FEW;}M#dx6$T2Zatr`4a2n0Jb1 zK0IsV{o=x}=S{fJMe%=i(ug5aQVqSh6G5vXp6@Hs##I=I`Zh`>cc_f8gfA>^9VvKi zM~+r@t!0&BtyS|;K65(ZLyo2*u=Ol8Fx-;(B+MkumrcHiQ#mxrowD8h$Qd>mNRh~~ zhu%u3V`l1X6S!||Ms7@1Uw3>0ABJpB*}95i=3CbkATTtRZdfP|xiGKk=1jrb+)S(> zxkif^D%_Ib21YMYf)cK;0CwA5YYNQ~ip9hu5*#re6*04RI<Myn9A%E&aTBe0YDwj< z_Jun5MG>u21qg)DbySeX*Df3wg#w9hV>1$@VTCzibW1j{7Cyxau|qgank)|{P3*>( zdq=3AX61F;4ceNwS+1J*Yc;*z>kO8jxu}zAKm?X-O##{uG!rVhmetTN3Uve*4hi5! zJ;da~R3t8C+o&&|yU?Hz-Gq{dXqMGXY52&cVxf-%MA{2qg7bTLbZ2FuQ2|7e;i#L7 zF29aI6r2{*`y<$-VV)e8Nye!{%?t=W=5D5#a2bTE$+42t58k!YaOTOU^SWliWE3uB zIBSH$n|P9w%w>MSC%kB3*jP3YGhNA`WxHi^pTJNp)DX;f5VWDSZ>xQR^N_C=^qh+u z_ITMa)$lY^RM~~9c!VPbc_Um-XsXRCD!4(z^Fvf@+iRNRzmQ>WE~?OWiZAyFujA2l z8b}&uT<PYdNfzVNT%D>glj1-|qg-1J7Y{rR=@R^njJ|+gKhpn`7w~6uF@DUUZ%3e< zqV+6cs4Qk}X~FgIb}aC8NvrSP2+EQBn*bM^WVz_eMz;(jdd_a4;&3IbL(d#lTew<p zzp8t|Ldg^s7@=hAbekX3*k!m>Kz2pE#~h5$jA9S7HNK`gk;yBK1G>IwH3CPMcW%=O zN^Kv&HV#8XT^uXSuRK``-2-=CXo}H(ucq0arY)-ZwnG~-0c5O@4TM@z_Nc^vF+<(T zoB|VKl9SjeamTsZAnV>wgdb1FY64D;|1uI!jPTHr6+WsS4oJuw3}tLp%(hKFP-*tY zuQNl?O4^6pZX?9A3EsT$JDJD@Uo&NKGb7|R;TzsuIKzvlz?l2f=675SK1HA_ae9aR z2Uk-~GZQbN?E)HE^MgU5RZxE5z}zlLYSu!oVQn15gQ8Bxa-ZB24lHQIfMP%$j>GAr zIxCufHyYv@$w;$44&ga5z<vKsWC=^GB=uHbI<)7>o%yv6@)>lgGMq47N2X){oLVZG zdPxle_)J&)TdB7<B}s{Lvb?DyF)x)jN$^v>`S|WPo;|lh{Z#`0^~z?&`{JG1E3vyo zcTfV5-Y@N+Ik<OL4t4S6yc(!7lC(*d4;6KpBsF}#F1v;d{>IN_(_fi~Po8r~d)-=+ z9XF8mMYutSZ$zbpn{?NAB<3V{J=Smc>`l8a{ql3)4b}aJY=823<MThH>Q-EsgusUZ zG6bG^!S_su%$}uGYF(%#{bik!Qo=|X(;W#zGN#dHQn*R^;a9WCH=q0p-Gui%`BtI9 z@%6t1&ujp{pGuw@=t!K9P7Po~{_yS0FI?s3HQ^qw8IQeu>Ak5Bi1&bI5~du?Ao5p` z+Y54Mk~4BgVxKf4W4UviFIq4B@y1_;a`nCw59}Bj`ljjtSVW3L<RocC8b_h3#RrB- zGWrYwPP4duD9Olyaz%yjL!h6Li>d>7hHuevU{}^&3<HbYVdkJkpdprHLVURUa8F0# zaQE>JP-R(l$L!|Q$#dWTs8pT(=6CLT`-$gesXBah-|SzWedHICw4C6Snkld=^o}GA zfp_+G?*rNUx@U;&2Y&vqlRtX&&$mg{8-Ll89q&8(w^H?gju+RTUh#YPFxeebORqmQ z{ouRADp^rzlHqEk`0{=COI=<4$ld7YHuztn`m@j8@uSfxcWq*P)%b8SQKdi?C>Z7k z_WaiWkDQt7o&%%jx?N;+NA+v!cP1Ww<gNdfs@Gn5?%Y#ZC(TT~`pSQ#wvWnn=?<eZ zN6$mJodUyKAPo$xk`7^NlF65@29S;4EUlx_hn!v+=Cq7ht6W0)4e8x8+%wsc=#hFR zkt=D&(c};~kIO7c+6lft(R~8UJ<)xNnEQm(*>ir&%TG(y^78Zl`|5+&Mwz*{zWejP z`102A`@~s>!`qO^b-#mrTi=i;zKjwDuW3k$x?E~ZiIr$~V7+>x<DIfLxi;02SR<_k zz6OdOyzk7PJgr_IBPo3W{jUBeQA2R`Uv3yZazJ)p5*yfH8~JNUBRfWS9O+2xkaiqF zva3th4<5U1;WNJ((g;;S5RiHgNz(TB$3ttn*FebEbgv~LzwOO`-t_tpPhOL%uU-E8 zNy{)YEaW$R>!-he_R;)Xkz~d+5$3W?{Yi3}vP2@gDm#=+JVT$-|1M+ORL|WguQ>DE zvZt%N9=zk?hd%qsA*s6Y`LF)f(Ods(Rb)p3T?O@gK<1c4a1BOc$;OoW5=U1Z-327_ zr2CKC@4xiSTjFpc3mQUN`xS(BT|+D|SkVf&Z-XRkLgpNDSE4G7_Tb69u0-?59Y_vr z=tyjk2B6{rioSN!)$L1(#Dx$=^sfRG)hRAXqwl}s8@e|Dpf+?55I}AD!v4!+JOA^7 z!~)C!MH?o85nK}n_U{66n(v+m!Smf^BG^mrHr77A?mejn7+TWay!J;IUt4V|wP1%_ zT;I#U0Tk*+D%B%>R9_<WL%yR)qe+lym>O<qq{LuqaJ(ZiC=HIINKj%m|Lnzg|KP&N zINhUOwCiXv&ya4vy;qun|C@FlXvW~1U#*PbA|-}Lhk+r6rD4nvR3aq`zPAWr2^jC} zL`}+;&Mkn8Ez)lhFZ}h1=Wo9AsW;9`)raQq>Fv*a`rktLCU*4h*qTf{i*>I1V>w$` zojvo)ogcjG>wm*~0!H(-@>c!E2hYx&|5pD4)J|SIOj&jPRQPvDnL9w&J;^=&9f>h% zPd`$i`m^+<(}xm!J{4m4;(=T27Y=^!j97A*;<Z+d{sLsnB2>R`P1f<`@paH-Nypb= zt7u;sT1AZ%fSNi-l7_)KW8Gr_=dtcRD3Hro*CSPxAHVik<;8R0Fd875F@4ns$Bl2? zbmPmonxWm%Pr~o@XLlu78XzQYsBM4e=%_;eQIvGUx-M8AbOt@|btDr(GU$2chUFlk zy7%$J*{AFk5VP7(Vxo5<3u3$E@%0zF-#%Y^0y2hgAKnVjXsZ?>Xkw}#(F2`hq@n3f z5HUV7K8Dm7PmYgOX`@Kgp`b?h=&W@jiGYkjpWb}zu917Bl_?}>Th}&h&$i^YtV9GD zXO1rK8{E(9+}GQ82y~`|goQWy35y;E$?K8iR96a1P9;-^Ldj1IUjMsKolX9f^TurN z>@-NG?NW2eTdCxeT_>^RlgX2_p=8=(;eN4EFZ_?%Kr0kKWwo*nIZjC`>z*a{(pudr z^!=Uvc-#JDKMg%S88lZKdm8&=wrdu@KAW7~A8Jkeh32m_Z}xTd;kWyeeMiE#X&2qn zW@oj7ZFZ6lwVCoA*I(B_5_&9!JT|&|6u&*19Hnp5)M~l&<myTM?qqV3zH2-G^xe<M z-~Kj-fvMi9eSm@Qr_Npe-Ie!$fqS;CcN=;}JDgTg+Ss`fJ8ENcBaIR*c5S%X@AC26 ze$qc4y7}?`t6zHK^2Y}`rBc1A1EAE!M;^bN{nKkd=ANDGJ$VG4{ouemZ{G6I-j|fI zy@w7e`w!iHVB#a=hmP%^IH>HNnVOoJR_=z^M%Ka*#dLHzX4#FKAq=;yy5;T;^k-J8 zqO&LKws8<*B5~^=isJP4>3s<I)AIDb3k3I+Dr4L-NK<a2YXbXaA~`V~`sG7k`QoR) z{?Lk3ic*AskHQY81Vo@<idiOFAS0W0uG+c11O2%xw25}S5lTdT8Ju_<GaEDFU>4C$ zb~w8W8JJCGcU5V(O$?=H>=;8Cw@h_SVMC{qQ<M+sp+CmQgj<fSK8DeLEP0Hgop#a@ zgZL&~XxGl;$gZPfN2ifpN0UdVSx-;w`oPqd>t}!C(oZ<_*}e9DKp#D9H@Er2Lo~Q{ OmyK<<llB1;-2Vd}BTHof diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h deleted file mode 100644 index 302a5ee5..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h +++ /dev/null @@ -1,104 +0,0 @@ -/* Definitions of constants and data structure for POSIX 1003.1b-1993 - scheduling interface. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SCHED_H -#define _BITS_SCHED_H 1 - -#ifndef _SCHED_H -# error "Never include <bits/sched.h> directly; use <sched.h> instead." -#endif - -/* Scheduling algorithms. */ -#define SCHED_OTHER 0 -#define SCHED_FIFO 1 -#define SCHED_RR 2 -#ifdef __USE_GNU -# define SCHED_BATCH 3 -# define SCHED_ISO 4 -# define SCHED_IDLE 5 -# define SCHED_DEADLINE 6 - -# define SCHED_RESET_ON_FORK 0x40000000 -#endif - -#ifdef __USE_GNU -/* Cloning flags. */ -# define CSIGNAL 0x000000ff /* Signal mask to be sent at exit. */ -# define CLONE_VM 0x00000100 /* Set if VM shared between processes. */ -# define CLONE_FS 0x00000200 /* Set if fs info shared between processes. */ -# define CLONE_FILES 0x00000400 /* Set if open files shared between processes. */ -# define CLONE_SIGHAND 0x00000800 /* Set if signal handlers shared. */ -# define CLONE_PIDFD 0x00001000 /* Set if a pidfd should be placed - in parent. */ -# define CLONE_PTRACE 0x00002000 /* Set if tracing continues on the child. */ -# define CLONE_VFORK 0x00004000 /* Set if the parent wants the child to - wake it up on mm_release. */ -# define CLONE_PARENT 0x00008000 /* Set if we want to have the same - parent as the cloner. */ -# define CLONE_THREAD 0x00010000 /* Set to add to same thread group. */ -# define CLONE_NEWNS 0x00020000 /* Set to create new namespace. */ -# define CLONE_SYSVSEM 0x00040000 /* Set to shared SVID SEM_UNDO semantics. */ -# define CLONE_SETTLS 0x00080000 /* Set TLS info. */ -# define CLONE_PARENT_SETTID 0x00100000 /* Store TID in userlevel buffer - before MM copy. */ -# define CLONE_CHILD_CLEARTID 0x00200000 /* Register exit futex and memory - location to clear. */ -# define CLONE_DETACHED 0x00400000 /* Create clone detached. */ -# define CLONE_UNTRACED 0x00800000 /* Set if the tracing process can't - force CLONE_PTRACE on this clone. */ -# define CLONE_CHILD_SETTID 0x01000000 /* Store TID in userlevel buffer in - the child. */ -# define CLONE_NEWCGROUP 0x02000000 /* New cgroup namespace. */ -# define CLONE_NEWUTS 0x04000000 /* New utsname group. */ -# define CLONE_NEWIPC 0x08000000 /* New ipcs. */ -# define CLONE_NEWUSER 0x10000000 /* New user namespace. */ -# define CLONE_NEWPID 0x20000000 /* New pid namespace. */ -# define CLONE_NEWNET 0x40000000 /* New network namespace. */ -# define CLONE_IO 0x80000000 /* Clone I/O context. */ - -/* cloning flags intersect with CSIGNAL so can be used only with unshare and - clone3 syscalls. */ -#define CLONE_NEWTIME 0x00000080 /* New time namespace */ -#endif - -#include <bits/types/struct_sched_param.h> - -__BEGIN_DECLS - -#ifdef __USE_GNU -/* Clone current process. */ -extern int clone (int (*__fn) (void *__arg), void *__child_stack, - int __flags, void *__arg, ...) __THROW; - -/* Unshare the specified resources. */ -extern int unshare (int __flags) __THROW; - -/* Get index of currently used CPU. */ -extern int sched_getcpu (void) __THROW; - -/* Get currently used CPU and NUMA node. */ -extern int getcpu (unsigned int *, unsigned int *) __THROW; - -/* Switch process to namespace of type NSTYPE indicated by FD. */ -extern int setns (int __fd, int __nstype) __THROW; -#endif - -__END_DECLS - -#endif /* bits/sched.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sched.h.blob deleted file mode 100644 index f6c44b3bfd42e2b2c0cf89cbabe2d8f586f5b86b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12505 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 F{|66&ErI|5 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h deleted file mode 100644 index 061d67ff..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _SYS_SELECT_H -# error "Never use <bits/select.h> directly; include <sys/select.h> instead." -#endif - - -/* We don't use `memset' because this would require a prototype and - the array isn't too big. */ -#define __FD_ZERO(s) \ - do { \ - unsigned int __i; \ - fd_set *__arr = (s); \ - for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i) \ - __FDS_BITS (__arr)[__i] = 0; \ - } while (0) -#define __FD_SET(d, s) \ - ((void) (__FDS_BITS (s)[__FD_ELT(d)] |= __FD_MASK(d))) -#define __FD_CLR(d, s) \ - ((void) (__FDS_BITS (s)[__FD_ELT(d)] &= ~__FD_MASK(d))) -#define __FD_ISSET(d, s) \ - ((__FDS_BITS (s)[__FD_ELT (d)] & __FD_MASK (d)) != 0) diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@select.h.blob deleted file mode 100644 index 53bf099164dec4a234ed97c0d94e2f041af1d1c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12560 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 I1@q?r0bA}sSpWb4 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h deleted file mode 100644 index 353ba1dd..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* Define the machine-dependent type `jmp_buf'. x86-64 version. */ -#ifndef _BITS_SETJMP_H -#define _BITS_SETJMP_H 1 - -#if !defined _SETJMP_H && !defined _PTHREAD_H -# error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." -#endif - -#include <bits/wordsize.h> - -#ifndef _ASM - -# if __WORDSIZE == 64 -typedef long int __jmp_buf[8]; -# elif defined __x86_64__ -__extension__ typedef long long int __jmp_buf[8]; -# else -typedef int __jmp_buf[6]; -# endif - -#endif - -#endif /* bits/setjmp.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@setjmp.h.blob deleted file mode 100644 index 09f4493d01ab7a29e7431e97d319f6a212dcd665..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12330 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 N+9myaI(woI`9IYy0+av% diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h deleted file mode 100644 index 174b487f..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h +++ /dev/null @@ -1,83 +0,0 @@ -/* The proper definitions for Linux's sigaction. - Copyright (C) 1993-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SIGACTION_H -#define _BITS_SIGACTION_H 1 - -#ifndef _SIGNAL_H -# error "Never include <bits/sigaction.h> directly; use <signal.h> instead." -#endif - -/* Structure describing the action to be taken when a signal arrives. */ -struct sigaction - { - /* Signal handler. */ -#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED - union - { - /* Used if SA_SIGINFO is not set. */ - __sighandler_t sa_handler; - /* Used if SA_SIGINFO is set. */ - void (*sa_sigaction) (int, siginfo_t *, void *); - } - __sigaction_handler; -# define sa_handler __sigaction_handler.sa_handler -# define sa_sigaction __sigaction_handler.sa_sigaction -#else - __sighandler_t sa_handler; -#endif - - /* Additional set of signals to be blocked. */ - __sigset_t sa_mask; - - /* Special flags. */ - int sa_flags; - - /* Restore handler. */ - void (*sa_restorer) (void); - }; - -/* Bits in `sa_flags'. */ -#define SA_NOCLDSTOP 1 /* Don't send SIGCHLD when children stop. */ -#define SA_NOCLDWAIT 2 /* Don't create zombie on child death. */ -#define SA_SIGINFO 4 /* Invoke signal-catching function with - three arguments instead of one. */ -#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC -# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ -#endif -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ -# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when - its handler is being executed. */ -# define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ -#endif -#ifdef __USE_MISC -# define SA_INTERRUPT 0x20000000 /* Historical no-op. */ - -/* Some aliases for the SA_ constants. */ -# define SA_NOMASK SA_NODEFER -# define SA_ONESHOT SA_RESETHAND -# define SA_STACK SA_ONSTACK -#endif - -/* Values for the HOW argument to `sigprocmask'. */ -#define SIG_BLOCK 0 /* Block signals. */ -#define SIG_UNBLOCK 1 /* Unblock signals. */ -#define SIG_SETMASK 2 /* Set the set of blocked signals. */ - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigaction.h.blob deleted file mode 100644 index 51a594a140702623a72e519563593372587fdc65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14564 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 XRoC%diivvzpqd+)1L@$pmzwSWurjIE diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h deleted file mode 100644 index e1066870..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h +++ /dev/null @@ -1,196 +0,0 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SIGCONTEXT_H -#define _BITS_SIGCONTEXT_H 1 - -#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H -# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." -#endif - -#include <bits/types.h> - -#define FP_XSTATE_MAGIC1 0x46505853U -#define FP_XSTATE_MAGIC2 0x46505845U -#define FP_XSTATE_MAGIC2_SIZE sizeof (FP_XSTATE_MAGIC2) - -struct _fpx_sw_bytes -{ - __uint32_t magic1; - __uint32_t extended_size; - __uint64_t xstate_bv; - __uint32_t xstate_size; - __uint32_t __glibc_reserved1[7]; -}; - -struct _fpreg -{ - unsigned short significand[4]; - unsigned short exponent; -}; - -struct _fpxreg -{ - unsigned short significand[4]; - unsigned short exponent; - unsigned short __glibc_reserved1[3]; -}; - -struct _xmmreg -{ - __uint32_t element[4]; -}; - - - -#ifndef __x86_64__ - -struct _fpstate -{ - /* Regular FPU environment. */ - __uint32_t cw; - __uint32_t sw; - __uint32_t tag; - __uint32_t ipoff; - __uint32_t cssel; - __uint32_t dataoff; - __uint32_t datasel; - struct _fpreg _st[8]; - unsigned short status; - unsigned short magic; - - /* FXSR FPU environment. */ - __uint32_t _fxsr_env[6]; - __uint32_t mxcsr; - __uint32_t __glibc_reserved1; - struct _fpxreg _fxsr_st[8]; - struct _xmmreg _xmm[8]; - __uint32_t __glibc_reserved2[56]; -}; - -#ifndef sigcontext_struct -/* Kernel headers before 2.1.1 define a struct sigcontext_struct, but - we need sigcontext. Some packages have come to rely on - sigcontext_struct being defined on 32-bit x86, so define this for - their benefit. */ -# define sigcontext_struct sigcontext -#endif - -#define X86_FXSR_MAGIC 0x0000 - -struct sigcontext -{ - unsigned short gs, __gsh; - unsigned short fs, __fsh; - unsigned short es, __esh; - unsigned short ds, __dsh; - unsigned long edi; - unsigned long esi; - unsigned long ebp; - unsigned long esp; - unsigned long ebx; - unsigned long edx; - unsigned long ecx; - unsigned long eax; - unsigned long trapno; - unsigned long err; - unsigned long eip; - unsigned short cs, __csh; - unsigned long eflags; - unsigned long esp_at_signal; - unsigned short ss, __ssh; - struct _fpstate * fpstate; - unsigned long oldmask; - unsigned long cr2; -}; - -#else /* __x86_64__ */ - -struct _fpstate -{ - /* FPU environment matching the 64-bit FXSAVE layout. */ - __uint16_t cwd; - __uint16_t swd; - __uint16_t ftw; - __uint16_t fop; - __uint64_t rip; - __uint64_t rdp; - __uint32_t mxcsr; - __uint32_t mxcr_mask; - struct _fpxreg _st[8]; - struct _xmmreg _xmm[16]; - __uint32_t __glibc_reserved1[24]; -}; - -struct sigcontext -{ - __uint64_t r8; - __uint64_t r9; - __uint64_t r10; - __uint64_t r11; - __uint64_t r12; - __uint64_t r13; - __uint64_t r14; - __uint64_t r15; - __uint64_t rdi; - __uint64_t rsi; - __uint64_t rbp; - __uint64_t rbx; - __uint64_t rdx; - __uint64_t rax; - __uint64_t rcx; - __uint64_t rsp; - __uint64_t rip; - __uint64_t eflags; - unsigned short cs; - unsigned short gs; - unsigned short fs; - unsigned short __pad0; - __uint64_t err; - __uint64_t trapno; - __uint64_t oldmask; - __uint64_t cr2; - __extension__ union - { - struct _fpstate * fpstate; - __uint64_t __fpstate_word; - }; - __uint64_t __reserved1 [8]; -}; - -#endif /* __x86_64__ */ - -struct _xsave_hdr -{ - __uint64_t xstate_bv; - __uint64_t __glibc_reserved1[2]; - __uint64_t __glibc_reserved2[5]; -}; - -struct _ymmh_state -{ - __uint32_t ymmh_space[64]; -}; - -struct _xstate -{ - struct _fpstate fpstate; - struct _xsave_hdr xstate_hdr; - struct _ymmh_state ymmh; -}; - -#endif /* _BITS_SIGCONTEXT_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigcontext.h.blob deleted file mode 100644 index ba04b46f1bb2c50c7c3d4be638e56ed3b5022a85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18704 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h deleted file mode 100644 index ab97c2ea..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h +++ /dev/null @@ -1,41 +0,0 @@ -/* sigevent constants. Linux version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SIGEVENT_CONSTS_H -#define _BITS_SIGEVENT_CONSTS_H 1 - -#if !defined _SIGNAL_H && !defined _AIO_H -#error "Don't include <bits/sigevent-consts.h> directly; use <signal.h> instead." -#endif - -/* `sigev_notify' values. */ -enum -{ - SIGEV_SIGNAL = 0, /* Notify via signal. */ -# define SIGEV_SIGNAL SIGEV_SIGNAL - SIGEV_NONE, /* Other notification: meaningless. */ -# define SIGEV_NONE SIGEV_NONE - SIGEV_THREAD, /* Deliver via thread creation. */ -# define SIGEV_THREAD SIGEV_THREAD - - SIGEV_THREAD_ID = 4 /* Send signal to specific thread. - This is a Linux extension. */ -#define SIGEV_THREAD_ID SIGEV_THREAD_ID -}; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigevent-consts.h.blob deleted file mode 100644 index d5295bb5505973cfd22af322a5736e268fa7bc98..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12952 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 UkN}*5tvhbN<LPbr`<xc?|6!4@vH$=8 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h deleted file mode 100644 index 7688a8d6..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h +++ /dev/null @@ -1,17 +0,0 @@ -/* Architecture-specific adjustments to siginfo_t. x86 version. */ -#ifndef _BITS_SIGINFO_ARCH_H -#define _BITS_SIGINFO_ARCH_H 1 - -#if defined __x86_64__ && __WORDSIZE == 32 -/* si_utime and si_stime must be 4 byte aligned for x32 to match the - kernel. We align siginfo_t to 8 bytes so that si_utime and - si_stime are actually aligned to 8 bytes since their offsets are - multiple of 8 bytes. Note: with some compilers, the alignment - attribute would be ignored if it were put in __SI_CLOCK_T instead - of encapsulated in a typedef. */ -typedef __clock_t __attribute__ ((__aligned__ (4))) __sigchld_clock_t; -# define __SI_ALIGNMENT __attribute__ ((__aligned__ (8))) -# define __SI_CLOCK_T __sigchld_clock_t -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-arch.h.blob deleted file mode 100644 index faf487a6a87099f0ef95ffdd50515ed63ec19d79..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12239 zcmb7KJ**r_5#DDU5LoCU0wN0}bh^8_!4LD~00eiw^N(boB@76G#L&~zv)g_>KX1Bc zcb`Q-gf1XPA|W6|0wDs(2v5SKkX%4OLI84rh>SQ>-96pAy;IXW-e8ld>8_uzzN)UC zHx{4#=lQK?i<3pVYATkB^gSleRnw-5NtG6?NM%RUitzevy7&|oq+ZSvO*Tz;&g*4T z@QzW{beCV7++p#*w@%Vtb}6r^=nIxUe(%9)nzJRZGujmF?bYIwFJAxfSs+8zWow>j z{evetS2ER4WtwGGE)`KMQ+g3EDtMk6Thbe6epga$d96CI6hxo#@BTSh)#wC&*|O&a zs?psC=~DFi(QAMC?Vl!I2Cw!VZc)jIekKD=ol7dBR>1?@g!T3-H%`m;##zJ?;~yQC zI&_NL$~@060RS7)9^X@{B5xX@1xHRZOSO&U+tW<&Dp)Moj;N;MG~4ikLCE`BvCa#} zfLU_Evb<|H(!TJeU*!{FqixUYveB!0EJb_>niBy4JdOw1cO{{_kjB(qF~PT5h2Q+{ z2ce!)Z?yC_>uf-^Tb4DCXk{F3u`l^@O~e841E*U##VgkBiN*A1Yi<I4?T?Q_^?i1z zrl$s|-pRq1Wt)g*nIE^47$mRrDrT*`lqoG(iKooIFI3l4mEF1j;Qe50r<+&b5ZyjR zoW$N@v}w*c%XpKOeN7c_YPsjWeI7H6pf~(pemlZZC1l9K3TW&%Rdp=%5Ok@|<x|wk zzUGju=%YRJaK?0gfDLM5FyP75Ju+)Zx?)GS*nk;x3~rm2)+%DNj~kF#VHv>SE{frb zPy?8c-+UN?SZ4z29ls6i!ilL59^PoAvJ4yzz|1PL&4>V>S#xoMbhSzcj~zND@a~d9 zX;#3HwuG1v#B7yoZO`-D?}UbWdq7KAU(0xV+<rQ@jADUDP;1Mr1o9d&B`Q1Qb$bdg zuuej2@QQDWIn_-^^6X}yxwFgLP6coChIDu_H(-W}q3Q%`5`a)$2FszwwOvV97-6B( zgDdJ0p~oUxc8q09aoHM@edGEnjI7N;O#+0TA6Ix#LFDD}jseiA3ur=t?^MXRG4p`I zb*up(S{<JNkym(Gk+neHaUnED?otsaB9~O6p#*w_u+>3#haElOy`I6IP`yeb!=(ZN zXnG6DpW-Z{lg;!WBZWOC&)H?r@Wzm!011+-p;LPCl3FC7rnS+^;kU22#L2)**gj21 zazq%*x=*3G&1Eu?c|=wz>$=+b;Pn?j4O?W3T&A8>GkQ+PBBnkR7st`!1M7W{`f1%# zQT5`YxIo~CzOf-(wdYu)h>A-z5U42Fh$s=j&2-ioRD>YYod}W86z?9zuq4>lR?pA< zi-m*&K}(jbW*w(Ccu7vA!S^VF9wbf6>ZR!sMj+Ws-I~deMV#Im*qKFkN?NXM`_a#@ zh5eH$Tszw)+vS~{&uG-yTS?Z89`m>36y30$-JHWI5X7}5_*=;0s4A2lmc&@(Rz$8U zdrUhkK8R2NV1Yv?@{}QZIM4eC0uPN#BdV>dAZW(8b!~3j9=zKCBZsBQiTUmIsSf%N z#mtEj2N7sPlNBS-_9am5_JF?Mfe(0F^RB5YDC0Qdj1(LY6KKECR5AiX^JS6_l>(I@ zRnSLffmW?LP}ra-A)P%Zc|sa_As0~Ns;T*h?$3It#fohsIz!R6o1$7dhwF#9m*IV4 zjyS>l5hRpz-~~rOzhw;ELYi9e`_IN|Tc-|BMX@D!2L*A8^-jJ(jp73H3m7Z~esCc( z(Y53N=Xib6)UEue1q;L_6VUulFQ*4S(7A|kN7VB`a-=gJ^&}T;rE63v$TD0i5OK@~ zde0gf3}$8-l<O?-%S@3O!wXUzmb6%?VA;}Er5`?eH>^qqxKuP!Pm2x)gs6+qvKx3n zJ4ufUd)!OlW16%bgF{^qGjuoTrm<Rr%4V5A)@Qc+(Cg!YEQLxK#3!kkS~d7F8ye?+ zd#ukIu*#R&Fn9}rh$_0t>xS2BI53WydFM#SC)tj3JguN>!pL>vIERbdp^zO5L@SQ< z!Y*Y;&B}OAf$rE5u=%haPj(xw7!D<W)|p2x4|8HvzlOR2GX*%*Wx#exaaj|Xmj+05 zK^T=9FBMBRLA2QPq(BexwZxHlngF4ZLEUTGE(B1hFsm<U6@%Zt<vVB1GGFqlg;S!f z4wiI&{MPp)?bHrhQ>oezm>tljs+w3!pl9PZCTHWL?pqr(!tyTd^e8uoQUD4)6&amQ zQCI812cUP9=%{d2!I(=xSEqNzy<zzV2pjMlQcb9!xwJt~>`u<k$#IU}E5q50S??O= zPcXa<{Dm60)pubB-iYPW!^F(^pMCw{3d!gPEn5l6i;oD5guR-{qJ7=*QRN!OR=eAd zn7Wrl*1T<P>-&peemg9+MkQzq*c#gB!{JYCSrcvT+!tu06|_rS+tbOGg_MRy!;-8X z5*>tOl9rX+ibCn@$Pu6&tb7VRY2e(!?Exjubqeh%P?f6&%I55RGNcHH`Z?;7ewZo6 zb)}*dy<Ei?-Ov@;-MZ~pA@7|PFNPDj*)JA;R&coW)$#w^oiakCHk@tj+;D8vCuKHn zZ_z;PH(SKsw0goqU)bI{Teh<!=juN_TBUpgHa+n7PPcp*(9{UFtstswI{dusSGwqV zSj62rF3Ib@nm(8gZHQK6bU1Q%*GXjZ?l*y3$tiO4s!CQ%3m=c{K-s;D!i(cI1qe(J zuMY(AkfV9+Hunndrfax@_OfkcD7vM^4Gd_;1cl140lRZ$Icg5NtRWt3;gRvWi1FPS zexEB$lml`%t#;Ouj)WfopgPDEM(a)i3n6`Jr4n;F6Mzw2(E2u-k+7OkI9SYW>BrjW zQ=^bSs>3`=v@nnI_rk$DsCrZstZLM(shns?A$K)>-|HThE#ERbGZ?|r%PgV&(37LC z5#pd<M0Ergo+5B_9`ftL>?D@5GwMs*Yz`E1n>g~oCSFrY!>2H7p+6zOv`1fpQ~q$k z_hsQw0Zoy^Ks<<UC}$xGPK)&Z8a4?`orf~%ITh8cgy0+Q_KKlm5UPp8XP_UvTP1Mj zDUyOw0rOM1wh6337oYHCuyT<3Dol7xaA+(Kh}lVcXjM&bZyh|UQ4PWTT0<LJ`&sQ1 zoQEV?vb-@3dwgw}eYBKgl^s>3wH%4$4JvMFYUV{2+_RY}qdCycYMSHU(Reqn2(+E} z6`<vHGr&%Oq+t@4Op~S+HmA8gRbg@!fXqdCCk@vVAr760`I3fh^y}aG{69W2AJ;|v znCmZ0pqy%XpD=DMZ*8|}TC<%Gyc0S0b(}@HcK-x$jY*=>-#<1z4DtiJQN`inm_g4x zRvVRO^Q(HRHXTO`47##-I`fm8s)wrwZP&<q-ofU~h<n(}NJ{F_4A;d$UveB9l<O<L zW^#hE+Xt|1!Z1?T#LDn%NY<!(;ATuuG3NJbv}!5cl45pf2PS}wMcDw=%CW~f{#}i8 zt9J^_k!?;Ir^JqPyFu2I4~I`IqndzI<KIu3iIEvP`oibbGXWWR!=ubgMYf&zjAiPL zSD7Kuj(&M|8}SOW2_RHB0?ti)7iW~;P&3=}VU`!C!pLpw^o^K@(F*j((|q7TxX7B! zP$S~n20h>o2ZX3qRBZACpT)qdR?H6Ees*^lML4JddB6q%JG)1FdQE;eIv`cAk@yZx zBXx0db@7>Ni^Y|fAODs8`}t3P{cy4OJGpxE>b-BAy!`YZp8xmnAN@1W-o5{=$Jyii wckh32=TY{~H*ep|?t%F0Uw~$m*X%m>{Q8Z>;^fL}S8iR=|6g6aJb^d<4;(4!wEzGB diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h deleted file mode 100644 index 49f77447..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h +++ /dev/null @@ -1,216 +0,0 @@ -/* siginfo constants. Linux version. - Copyright (C) 1997-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SIGINFO_CONSTS_H -#define _BITS_SIGINFO_CONSTS_H 1 - -#ifndef _SIGNAL_H -#error "Don't include <bits/siginfo-consts.h> directly; use <signal.h> instead." -#endif - -/* Most of these constants are uniform across all architectures, but there - is one exception. */ -#include <bits/siginfo-arch.h> -#ifndef __SI_ASYNCIO_AFTER_SIGIO -# define __SI_ASYNCIO_AFTER_SIGIO 1 -#endif - -/* Values for `si_code'. Positive values are reserved for kernel-generated - signals. */ -enum -{ - SI_ASYNCNL = -60, /* Sent by asynch name lookup completion. */ - SI_DETHREAD = -7, /* Sent by execve killing subsidiary - threads. */ - SI_TKILL, /* Sent by tkill. */ - SI_SIGIO, /* Sent by queued SIGIO. */ -#if __SI_ASYNCIO_AFTER_SIGIO - SI_ASYNCIO, /* Sent by AIO completion. */ - SI_MESGQ, /* Sent by real time mesq state change. */ - SI_TIMER, /* Sent by timer expiration. */ -#else - SI_MESGQ, - SI_TIMER, - SI_ASYNCIO, -#endif - SI_QUEUE, /* Sent by sigqueue. */ - SI_USER, /* Sent by kill, sigsend. */ - SI_KERNEL = 0x80 /* Send by kernel. */ - -#define SI_ASYNCNL SI_ASYNCNL -#define SI_DETHREAD SI_DETHREAD -#define SI_TKILL SI_TKILL -#define SI_SIGIO SI_SIGIO -#define SI_ASYNCIO SI_ASYNCIO -#define SI_MESGQ SI_MESGQ -#define SI_TIMER SI_TIMER -#define SI_ASYNCIO SI_ASYNCIO -#define SI_QUEUE SI_QUEUE -#define SI_USER SI_USER -#define SI_KERNEL SI_KERNEL -}; - - -# if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -/* `si_code' values for SIGILL signal. */ -enum -{ - ILL_ILLOPC = 1, /* Illegal opcode. */ -# define ILL_ILLOPC ILL_ILLOPC - ILL_ILLOPN, /* Illegal operand. */ -# define ILL_ILLOPN ILL_ILLOPN - ILL_ILLADR, /* Illegal addressing mode. */ -# define ILL_ILLADR ILL_ILLADR - ILL_ILLTRP, /* Illegal trap. */ -# define ILL_ILLTRP ILL_ILLTRP - ILL_PRVOPC, /* Privileged opcode. */ -# define ILL_PRVOPC ILL_PRVOPC - ILL_PRVREG, /* Privileged register. */ -# define ILL_PRVREG ILL_PRVREG - ILL_COPROC, /* Coprocessor error. */ -# define ILL_COPROC ILL_COPROC - ILL_BADSTK, /* Internal stack error. */ -# define ILL_BADSTK ILL_BADSTK - ILL_BADIADDR /* Unimplemented instruction address. */ -# define ILL_BADIADDR ILL_BADIADDR -}; - -/* `si_code' values for SIGFPE signal. */ -enum -{ - FPE_INTDIV = 1, /* Integer divide by zero. */ -# define FPE_INTDIV FPE_INTDIV - FPE_INTOVF, /* Integer overflow. */ -# define FPE_INTOVF FPE_INTOVF - FPE_FLTDIV, /* Floating point divide by zero. */ -# define FPE_FLTDIV FPE_FLTDIV - FPE_FLTOVF, /* Floating point overflow. */ -# define FPE_FLTOVF FPE_FLTOVF - FPE_FLTUND, /* Floating point underflow. */ -# define FPE_FLTUND FPE_FLTUND - FPE_FLTRES, /* Floating point inexact result. */ -# define FPE_FLTRES FPE_FLTRES - FPE_FLTINV, /* Floating point invalid operation. */ -# define FPE_FLTINV FPE_FLTINV - FPE_FLTSUB, /* Subscript out of range. */ -# define FPE_FLTSUB FPE_FLTSUB - FPE_FLTUNK = 14, /* Undiagnosed floating-point exception. */ -# define FPE_FLTUNK FPE_FLTUNK - FPE_CONDTRAP /* Trap on condition. */ -# define FPE_CONDTRAP FPE_CONDTRAP -}; - -/* `si_code' values for SIGSEGV signal. */ -enum -{ - SEGV_MAPERR = 1, /* Address not mapped to object. */ -# define SEGV_MAPERR SEGV_MAPERR - SEGV_ACCERR, /* Invalid permissions for mapped object. */ -# define SEGV_ACCERR SEGV_ACCERR - SEGV_BNDERR, /* Bounds checking failure. */ -# define SEGV_BNDERR SEGV_BNDERR - SEGV_PKUERR, /* Protection key checking failure. */ -# define SEGV_PKUERR SEGV_PKUERR - SEGV_ACCADI, /* ADI not enabled for mapped object. */ -# define SEGV_ACCADI SEGV_ACCADI - SEGV_ADIDERR, /* Disrupting MCD error. */ -# define SEGV_ADIDERR SEGV_ADIDERR - SEGV_ADIPERR, /* Precise MCD exception. */ -# define SEGV_ADIPERR SEGV_ADIPERR - SEGV_MTEAERR, /* Asynchronous ARM MTE error. */ -# define SEGV_MTEAERR SEGV_MTEAERR - SEGV_MTESERR /* Synchronous ARM MTE exception. */ -# define SEGV_MTESERR SEGV_MTESERR -}; - -/* `si_code' values for SIGBUS signal. */ -enum -{ - BUS_ADRALN = 1, /* Invalid address alignment. */ -# define BUS_ADRALN BUS_ADRALN - BUS_ADRERR, /* Non-existent physical address. */ -# define BUS_ADRERR BUS_ADRERR - BUS_OBJERR, /* Object specific hardware error. */ -# define BUS_OBJERR BUS_OBJERR - BUS_MCEERR_AR, /* Hardware memory error: action required. */ -# define BUS_MCEERR_AR BUS_MCEERR_AR - BUS_MCEERR_AO /* Hardware memory error: action optional. */ -# define BUS_MCEERR_AO BUS_MCEERR_AO -}; -# endif - -# ifdef __USE_XOPEN_EXTENDED -/* `si_code' values for SIGTRAP signal. */ -enum -{ - TRAP_BRKPT = 1, /* Process breakpoint. */ -# define TRAP_BRKPT TRAP_BRKPT - TRAP_TRACE, /* Process trace trap. */ -# define TRAP_TRACE TRAP_TRACE - TRAP_BRANCH, /* Process taken branch trap. */ -# define TRAP_BRANCH TRAP_BRANCH - TRAP_HWBKPT, /* Hardware breakpoint/watchpoint. */ -# define TRAP_HWBKPT TRAP_HWBKPT - TRAP_UNK /* Undiagnosed trap. */ -# define TRAP_UNK TRAP_UNK -}; -# endif - -# if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -/* `si_code' values for SIGCHLD signal. */ -enum -{ - CLD_EXITED = 1, /* Child has exited. */ -# define CLD_EXITED CLD_EXITED - CLD_KILLED, /* Child was killed. */ -# define CLD_KILLED CLD_KILLED - CLD_DUMPED, /* Child terminated abnormally. */ -# define CLD_DUMPED CLD_DUMPED - CLD_TRAPPED, /* Traced child has trapped. */ -# define CLD_TRAPPED CLD_TRAPPED - CLD_STOPPED, /* Child has stopped. */ -# define CLD_STOPPED CLD_STOPPED - CLD_CONTINUED /* Stopped child has continued. */ -# define CLD_CONTINUED CLD_CONTINUED -}; - -/* `si_code' values for SIGPOLL signal. */ -enum -{ - POLL_IN = 1, /* Data input available. */ -# define POLL_IN POLL_IN - POLL_OUT, /* Output buffers available. */ -# define POLL_OUT POLL_OUT - POLL_MSG, /* Input message available. */ -# define POLL_MSG POLL_MSG - POLL_ERR, /* I/O error. */ -# define POLL_ERR POLL_ERR - POLL_PRI, /* High priority input available. */ -# define POLL_PRI POLL_PRI - POLL_HUP /* Device disconnected. */ -# define POLL_HUP POLL_HUP -}; -# endif - -/* Architectures might also add architecture-specific constants. - These are all considered GNU extensions. */ -#ifdef __USE_GNU -# include <bits/siginfo-consts-arch.h> -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@siginfo-consts.h.blob deleted file mode 100644 index fb37a029f27e76db41ff1bf0697db9d432c4f094..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21380 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 RVEN5-C>zSM;ZyC<^&h0mXL|qu diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h deleted file mode 100644 index ca511ade..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h +++ /dev/null @@ -1,31 +0,0 @@ -/* System-specific extensions of <signal.h>, Linux version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _SIGNAL_H -# error "Never include <bits/signal_ext.h> directly; use <signal.h> instead." -#endif - -#ifdef __USE_GNU - -/* Send SIGNAL to the thread TID in the thread group (process) - identified by TGID. This function behaves like kill, but also - fails with ESRCH if the specified TID does not belong to the - specified thread group. */ -extern int tgkill (__pid_t __tgid, __pid_t __tid, int __signal); - -#endif /* __USE_GNU */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signal_ext.h.blob deleted file mode 100644 index 5a676e72a9f5483a3d7d3d2fb682e9d432c01eda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12135 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 JrH8xS?*IBL%hCV< diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h deleted file mode 100644 index 56d5f0fd..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h +++ /dev/null @@ -1,64 +0,0 @@ -/* Signal number definitions. Linux version. - Copyright (C) 1995-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SIGNUM_ARCH_H -#define _BITS_SIGNUM_ARCH_H 1 - -#ifndef _SIGNAL_H -#error "Never include <bits/signum-arch.h> directly; use <signal.h> instead." -#endif - -/* Adjustments and additions to the signal number constants for - most Linux systems. */ - -#define SIGSTKFLT 16 /* Stack fault (obsolete). */ -#define SIGPWR 30 /* Power failure imminent. */ - -/* Historical signals specified by POSIX. */ -#define SIGBUS 7 /* Bus error. */ -#define SIGSYS 31 /* Bad system call. */ - -/* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ -#define SIGURG 23 /* Urgent data is available at a socket. */ -#define SIGSTOP 19 /* Stop, unblockable. */ -#define SIGTSTP 20 /* Keyboard stop. */ -#define SIGCONT 18 /* Continue. */ -#define SIGCHLD 17 /* Child terminated or stopped. */ -#define SIGTTIN 21 /* Background read from control terminal. */ -#define SIGTTOU 22 /* Background write to control terminal. */ -#define SIGPOLL 29 /* Pollable event occurred (System V). */ -#define SIGXFSZ 25 /* File size limit exceeded. */ -#define SIGXCPU 24 /* CPU time limit exceeded. */ -#define SIGVTALRM 26 /* Virtual timer expired. */ -#define SIGPROF 27 /* Profiling timer expired. */ -#define SIGUSR1 10 /* User-defined signal 1. */ -#define SIGUSR2 12 /* User-defined signal 2. */ - -/* Nonstandard signals found in all modern POSIX systems - (including both BSD and Linux). */ -#define SIGWINCH 28 /* Window size change (4.3 BSD, Sun). */ - -/* Archaic names for compatibility. */ -#define SIGIO SIGPOLL /* I/O now possible (4.2 BSD). */ -#define SIGIOT SIGABRT /* IOT instruction, abort() on a PDP-11. */ -#define SIGCLD SIGCHLD /* Old System V name */ - -#define __SIGRTMIN 32 -#define __SIGRTMAX 64 - -#endif /* <signal.h> included. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-arch.h.blob deleted file mode 100644 index b50293908c821afc908fc7fadf9f5b61f21d49ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13618 zcmb7KZLAzs8QxosaZQB{2!zs-TP&q5-EQw~dntsX?Jc*xaNFD54_XUhoSmKBo!<HC z%<RW)G*SFh6QU#<Ni`C}KQ$1(f+i#w{}3sf5F;@bvHn0nEd8U2hQ!wAoSAcW&d$5D z%b&B!nfE>K_s4n9ZYx~*_vO9k3uA>!({s#<T{&omE0O0{A~TFCHM3R;1Eb>Tmb=3! ze8#YKw=oiEx#I;ZmfI-TtiUuPFIe3-kV4^q+s7)cFsN9rVYg~#W%1zLWTk30ELStU znz^G{xUzZt?0E&oh*o|6h4HU^sajE3VPC_Fra9Fx(j!xg*dY?swyG5_OJ!n8Qq`TV z<wgM{1?YL}#GA^goF^<=qh-}djt<RL8g`3)D*f^KHwGX>tF3^RsBY@)Tc~g<RO0AS zQ~5xP(C+S;n5_E~Q#q1w{V=n*s!{|g{=K>i2k7YjaGGIMt9qWz05eMCNBLf8btg63 za+Jdqa(d)BmZ5d5nhBG)+{g?haGqn<E!)(pf!7IRgq=UH4ltYHw=B2ru~Vfl<>(Nc z>oy#4xIcugpspJ|ljgD8G;OQPSa|NmM^!#UMyMfWX3;=$*QmQz4p&^^vG0dgqpjP0 zj;|;^hKnr63{qfu{F`ly8+z?)^D6r?IwG%Sa7UF&R!G+Uvh6jh!{yYuC%3Ckp0wd= zSTSm5oer6_E~21iMB2>k-2Dn^!JA~CC%UwY2#C~ShUcwVre=9sz2zE_<+))>ed#>L zGXf)cvO1lUqw0u|z7t5>cN}M!>0$IRS_#jPQnp+R!AgEgiAQHlp$8Cfb?yT)nTk*R zjL>MBLrHWX#wY^&o^QBOj?B_-NM^M-18~2~^<hUhxWiny^N8xiED}iVNHU;e>AXHj z_a-f+X;3sAQ*-pLrrXe2EH0fOMXh4SGy4^zXt!aaG)KsgaS7oj$dff}GkGpg?^gwt z@_<X6&tRlHf*y-4&X}SRQrdbqMDogHN)k4SYkv|5W)Pw^_>`FTDAkQwa%#82xsXfB zZrGMz_4I%)=G>W4F(S8&ngl0|R+ZyO;ryU(G^vC|LMN(lGYLJ<qV>QuwT8Xw^CY`% zys26?jzN|LbYo>W!wCy^wLZLKfOoP2S~igHA~oaYiH8i%Yz+rt?8pGfL9yzN-nI!G zVL~osFBIuSB!bHJ3>`g!+Uk(hK~Xxq<Wr%E>Q&c6^(X}ZO>Zr<&d^ze1sm@_G7L+f zTrpRbhBwa>B6vb*MM<ah$yFov1X46Vw{l4Gjuq0$KtjZQ8na|3VKm%U1<h?WEDwl0 zJ#;E&5V%|iTRwSQZINToHKS9`2tB9BBD_A-P7n7MX;`UyQcrE)u$`8Dx^|jyKN6#( zTamv)HHsv7NE(6!g^UCfio5a7T0=!pB3*#!A)4aer#xS>&2C&h*IhEzgaV_L8>VXp zmJu7TT-8JF-x&)^C-HpKZSWo;<0Prjb<I%CB7$$`*jnt_72UU(Y~MJyR_&j7;p)jY zuwCxK$%rPE-3|4&X$;f1$SJI0o7z1}PJt2Iaf07V98R)gnEfR&&vH#YY&!8ZZK`%O zCk4P4EOa7gOo9)gd1*o9p=@a+xfK<Jj2Lll9NTdZ9(0hA)zT!uBzbnLL;n$({KiN- z5x6nRO;bnPS4Oo<IeNMSPyDTI1)l4mjME;+p>RPgqx~X7i323f7Y{lT3M?U1$WQzL zKWYYGn0rxK58`{0Oh_3mRBhBaXVCnE^=B>A;>hgg@Qk7z6D7G43TGc_EdyWYR~!XD z#}n$KxEHQ~l4PE9+aa$7uiThd+k&Y7R+M*S@1kH&QoWNbP#L>meu2S~q6c9zZrwOJ z;2zIznyi)2v|tK&XxeCg2Oq}<KImL*l_IHmBso3c8kI>-A;oG`-PRlGQ3{C2Y~Xvy z(10DrMrtkfG?FpBHnfB(TGKRCf34c8YmwfYh2)tNu=TideSQ9bTDiD$8@3m+iBjJX zk>r*v%|c7iu~GH|6PG&0X5>lerm0#&!fKkl)@yP1!Oo`*S+}FI3Hy{CGirMDH5-j{ zt2?aEO0;e@v}Ew6IwHwvr|No^+s1`4)65GciF~5<a*j+Z<e3<`4!F+I;PFr>9t-4F zoLCFJkj*qJ**OJCG0-7%e?1=9ZHQu+l>CwIJYi#Kj3jjfGX-4gG-SJSZPnE=FI7BI z7$H+?Bvf7?**XIoJSkv9d<HSZp4>pBWk~h%wu^8m64-Q48&014r6unvYb5bQ%kgnb zjH^SOP`<VO;hc7==URh8)zdLMFg(Zc@>&8m8=n|B8_#s#Oqh%>_ri{iauq8nPQj)k zncFF;YBu<Q_htf}1a=&ZxomWGj54i_INu-{!++IOqcX@JZO9wDfQ#qkYV8r<Qe{{h zVb<Hm{0YNbMPH<VUG^5%r;WT=I#T8{{_|hydqU#;p=GNhc<B)VhlrnMwA{XK_^7gt zu~qN2BahuxJ#;PKk6YiTo>^AQC}#<6f!Rj;+&}!uJC<9UDfbhy(NYS(#pDS>-&9i? zX^l9^vLR8QNd~6nDD2v`h&@MU99p=J453pV?j2TqLCMc`5!o-0EIS^`=E(8HlOitl zqp+*Dl9^IIuZCT>TVXT*(2mj6d#`TkTa?sJ)2byma!xPL{ASI<t1q+vUuWt$i8MB+ zpLcH<HtGvQE!*CbhDbMCdi>HV6Bdck-8<FrN4A`(|HjZNB^$881AnRXI3Fr$D&w}k ztw(h)pzq7_q|+@+E#l&wq{Cn|GWQ<wEM3kSs*5Cnr=fv)OL7sKZWw!pbXvg&KPOcz ztlIE$f!xIA(tUumHOY__#3h5h!5Ph9{En6plq4Cu1ZFSU+(W{*;g+MqTBJDSu{@_x z2WNz5^~vg8&(mojWgT(NWv_jjuLrvNwomd9HmQs)7>Heny+=i5{_dhUBY9w~+uUHo zY22NZ!vsk=u_nKAhU6_AqbA$Os7XHgDmWy2hFvoqFB)m!W_x-q?3L@Z)}>qeR@aQj z0U5WHFb#ATY$z0Xw%ykXk~~6%lZ3ko4asvc7Rd|Q5lV;eb@~_*L}JTZ4QiM*h-v)G zrERl+2T<ITNVvc!cXyfb`x$Usa@MU_SA~mR6iUl!>zUh>F;Gq_pv<WxXLT5#r)9|) z2?kRQxK}Ft0oN(xI#VmxOvA=#6fZK0H00p}G^w1dbZn6t@DyOuGxjBB0V!R}@mleN zg7j*VLx}G(*GAVqQfGv#PN+A`s>gfr{IfCE@C}P9+9WG}oFj?2A;IG`HR2l;p3wLJ zk>Axu>WB0HA|ut@)X`DWuX}M`=d<ZDk~D@~<-tia2Id#F6ss6YDNZJ=+=Ir;gX)I@ zg#Ss#>@f6)Zu{VM{=c~#JyzMDM^H`~ybKs|mXtQ=cs?g54KF~3{qZgKa;E+Pj>|=| zJ@(f|uZ0=CA~(r6-h@rG!&$aTXmj+c?nj-#A`1+8vVCU6f73WEyecrcGTM_0=GQ@5 z!xAPmbT>146?S0n7sF=Y?DftYI2`HGfp2p&WZ31l;`vog)}(sy=*0#UqxWit;~Pd- zuZ?WlBoiQF$!tJ!C9+35|1UE_tx_o%5yvsfm6CT;>&>W6olX8dnac^3n*Y~GJ`CdX zL|OO*d)y#N-jH4<p>oI$_=n0Mj88KjFal%O$ZZ5Yc2LDj{wR}q;Tyy(Z)V86Mq>CY z$#^b51?D`U4u0g4?$boNqQg7Me|Vc37?~VIv<qxzt<L;NsZf4!7alc98g{4J2b<^O zQPYekZa+Gd%p!!vkYd1&lEcNPloSL1IGXq~JEJW7IOflVu^S3Ett}L8zG`lK^0zau zKRT^xi?fFomX7Q{Q79C?^kp=omTQjpc8gQH3x%<LrG1;$uytGE>KFj8o_H+y=+^R0 z-v#pQ{1SH73e<R~Sj6xC0}J>xc6aIS^=sI=BSHSfo`2S^yYQC}0djoy==5Qrms03_ zuQ<6EsC!C##@DcQbAnn~y5*7M7vK9CP?r}MCV_cP3X^RWixb!$n<!1(x`wR+bKBd0 zdg;aw*Zm;IoXBEM0COiWcb0Yn6RW`7yS(qmx4F0c5}32|!23dq;_N(^^w|8|98mX` z_O4sQ*6j(qPrv`d9}c{>Z4*$BEzHmK5oKG&;^bYxtduGsid7KZuyg%St&iS$1egyk z?VnpX0^I9TgyYTP<P?y1ly=;<hOJu?vOl?a`RP|b*f0a+6Vu0*`^d5_kY#o)m&zcE zRgm2{@%HC0-2B!5GR&F9ll_?30_GlIZZB;ICRTy@)?L$oe&hX1&jE9B>A{&f<`ij$ z<IUm(V|aaOJs8F+7=C8muk1HBeeVJ7!0gf@^T?yiN3{J5(}y+Y9GivQ#OHBXa_suj z^;2uudQYN&jfWrm;j3GN8*tLG;|n+<?Vi{v7I!gIZzyemXJXxy;9a>Cojv|uX#?=4 z=MMJaVTT)g`Y`)6c2DUZAY&D7{qS>}?Q;*FSqAd*!l6E7>_Bt7fVZi%33ylq(U;G? zc<`IQdFd_S9avuM!^2LoIL=&Tyfh9xtOD=*_Z_})|CPgAfw%azemv|zNT!^PrH#PD zD)4r{^N$1n`FP?9;4Ll9_j?E10;ep7ww1QQ##n`oU)XbP=cV7T{~V*ZG=B`NrlXH- zA%^Y-=Iy21fr(XMK6-5NgR{Z&E-<I(k22p#W3nw^vWUN<bO$i83e4|ZbMckv*S~v8 zq@>xSK+Ytp*`vi>jOBYv_aaeY6^ZKIyAC%WzwhIdj4-#GN*G%p%+$N3v;~B*3c~jv zfBD0|J^A;DtBF%hv%ItflEq1;;H{;tz{Dyr-~IN#p1pYL@)m}<xYVyEwgpV)f1692 lfr(XMe({M1&Ru%;+Rp+rPALkvYzvr7!FQJK1SZx5^ZyT0Mg#x= diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h deleted file mode 100644 index e01b4dc9..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h +++ /dev/null @@ -1,81 +0,0 @@ -/* Signal number constants. Generic template. - Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SIGNUM_GENERIC_H -#define _BITS_SIGNUM_GENERIC_H 1 - -#ifndef _SIGNAL_H -#error "Never include <bits/signum-generic.h> directly; use <signal.h> instead." -#endif - -/* Fake signal functions. */ - -#define SIG_ERR ((__sighandler_t) -1) /* Error return. */ -#define SIG_DFL ((__sighandler_t) 0) /* Default action. */ -#define SIG_IGN ((__sighandler_t) 1) /* Ignore signal. */ - -#ifdef __USE_XOPEN -# define SIG_HOLD ((__sighandler_t) 2) /* Add signal to hold mask. */ -#endif - -/* We define here all the signal names listed in POSIX (1003.1-2008); - as of 1003.1-2013, no additional signals have been added by POSIX. - We also define here signal names that historically exist in every - real-world POSIX variant (e.g. SIGWINCH). - - Signals in the 1-15 range are defined with their historical numbers. - For other signals, we use the BSD numbers. - There are two unallocated signal numbers in the 1-31 range: 7 and 29. - Signal number 0 is reserved for use as kill(pid, 0), to test whether - a process exists without sending it a signal. */ - -/* ISO C99 signals. */ -#define SIGINT 2 /* Interactive attention signal. */ -#define SIGILL 4 /* Illegal instruction. */ -#define SIGABRT 6 /* Abnormal termination. */ -#define SIGFPE 8 /* Erroneous arithmetic operation. */ -#define SIGSEGV 11 /* Invalid access to storage. */ -#define SIGTERM 15 /* Termination request. */ - -/* Historical signals specified by POSIX. */ -#define SIGHUP 1 /* Hangup. */ -#define SIGQUIT 3 /* Quit. */ -#define SIGTRAP 5 /* Trace/breakpoint trap. */ -#define SIGKILL 9 /* Killed. */ -#define SIGPIPE 13 /* Broken pipe. */ -#define SIGALRM 14 /* Alarm clock. */ - -/* Archaic names for compatibility. */ -#define SIGIO SIGPOLL /* I/O now possible (4.2 BSD). */ -#define SIGIOT SIGABRT /* IOT instruction, abort() on a PDP-11. */ -#define SIGCLD SIGCHLD /* Old System V name */ - -/* Not all systems support real-time signals. bits/signum.h indicates - that they are supported by overriding __SIGRTMAX to a value greater - than __SIGRTMIN. These constants give the kernel-level hard limits, - but some real-time signals may be used internally by glibc. Do not - use these constants in application code; use SIGRTMIN and SIGRTMAX - (defined in signal.h) instead. */ - -/* Include system specific bits. */ -#include <bits/signum-arch.h> - -/* Biggest signal number + 1 (including real-time signals). */ -#define _NSIG (__SIGRTMAX + 1) - -#endif /* bits/signum-generic.h. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@signum-generic.h.blob deleted file mode 100644 index 64dad3455da10eeaad837c7507688437f95dda92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13410 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 IcxGz;AL6JNbN~PV diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h deleted file mode 100644 index a089f3ec..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h +++ /dev/null @@ -1,32 +0,0 @@ -/* sigstack, sigaltstack definitions. - Copyright (C) 1998-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SIGSTACK_H -#define _BITS_SIGSTACK_H 1 - -#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H -# error "Never include this file directly. Use <signal.h> instead" -#endif - -/* Minimum stack size for a signal handler. */ -#define MINSIGSTKSZ 2048 - -/* System default stack size. */ -#define SIGSTKSZ 8192 - -#endif /* bits/sigstack.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstack.h.blob deleted file mode 100644 index 3512ae2f494fc9b22036c56a2f985d6af532748e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12335 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 QPS0L?_Ucpm_nPJOe+Tdc`Tzg` diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h deleted file mode 100644 index 2fef2b98..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Definition of MINSIGSTKSZ and SIGSTKSZ. Linux version. - Copyright (C) 2020-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _SIGNAL_H -# error "Never include <bits/sigstksz.h> directly; use <signal.h> instead." -#endif - -#if defined __USE_DYNAMIC_STACK_SIZE && __USE_DYNAMIC_STACK_SIZE -# include <unistd.h> - -/* Default stack size for a signal handler: sysconf (SC_SIGSTKSZ). */ -# undef SIGSTKSZ -# define SIGSTKSZ sysconf (_SC_SIGSTKSZ) - -/* Minimum stack size for a signal handler: SIGSTKSZ. */ -# undef MINSIGSTKSZ -# define MINSIGSTKSZ SIGSTKSZ -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigstksz.h.blob deleted file mode 100644 index 2fb954100e8a5b0d397346b61f3cfb0136a67f97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12137 zcmb7KKg=XI72iO61wtqV)rkV3kjZc#;nOt;k%UA@7g8V)0*S%n@yz-@&v<U^+1>Ay zB4r9{BpM1z3WO*qDUmo@DhgT}l#1#k0?+o?v)*~*oiy9*v;F@3-tRp>&uhC+|MSV? z7rR$>`Chgx7x_C(-D%n9nkk)Etjg6u^Oo@L4Z8b06{Kr6iDpMR-0`l-Dn2l(<#7M) z)f0CAef^buR71`?D#nWCKYZuOO<uBwcLkLddt<-*^s5g)ei6w~ec#)EjQ-I-CD$r9 z|Ejzw+EQtvS)t7)K~(TEx3=VuZo{dhJ@HNtU@3^c;6M3Ww5!z#eu`$~6{^vDPx3~L z=C3dO{SSX#Sqxqs2i&5X5%ZslH1#fNiQY$l;3gbS-+FXY_m6H9mRSFouynCg{89G* z@*V(iB>nX>m99!Dg%Mmh&2H68#ZNbd;BB;7bR5yL<+M2Rib2T7PO~8hr+`^=!HRN_ zN97iL<9Fps*l0iUu9jxkfTe^FL31JifY<S$#-S#34rxl=Jrn$7RQUZLe;(_p%t1}C z*<=H%T~l{Fp_O&G!@lCpfrty>M^1Ngnzw8?6HDpO4%`O%!Jj{f)eqUB<wz}1gOj5p z>pl~*DX-f}ERqjpo3d8jtDIJ>##83p7kU_}F5dnAlkY`Gd)<QimgvqQ;w8>Dqf*{+ zR&ZI=V@EZYojP;hIgeRJFbDp$d^^EWHDt)e4ruI;ZJP-F*l|cj)Vwq0aX$1`0%kg5 zBOIvG|7G`3bkD9HaReo|nA6Lib~<5Ehzd|u<?`F2Dv8jRPz#5DeEt0xq6X)vcfv7n z3MZER19;Im6a_dMU{|!{R1g6^bLQgo=PMETR<TRRMBZ%}6kZMd=L&=kLCRKjF!p@% z_IG1LgFT=n>~Ca(J^nnCIaaaABdE3YNdYx2co3DHvbMj01#D1I_&?)Hv88sINZ!5~ zY3}U`wo}3TQj!5L)fUW94|JD7#Q_lN`)E7VxPGYV9-|{vdU8d#pzBmb>w&SN5%;~N z(AOUB<H))k1RQBX@2)F6sUXVwdOrZ@H03d)z-Bt;)0BC@&nDIY5Ti~=fW#7Bx8xv@ zH9mya$T<~pBJxQkBqh)R#ElGkI-D2)AM}jQgxXXS6>k*@KucRG{v2l!lWexTSSTDY zdB^Ufb~c3s4M<R2PkqqK|51ko)U-ZX7sBx^S2!623D<?0NG=GY>Bbyd*HUFGnMYKc zvtj7055D&DmvIB^kjwPbc0)($S;W?d>e+R)gun*hqkcN{RJ5abRy{-DhpsphuKPQz z4MfEi8VFPrY($iZ;AZ>g0xCk3>0X2=XnE(qQdkn~<f`YF|IK1TfuLm#>)61l3tm<d zW%0d;U;v5iS=ZPeVF8k})a{sxS;XsYfL%Cb=cMPxwhw>(AnuNA;hJq*ZH8yLkkP2K zPl_BEz2<MvDW)B}eRB(^KoAd(;2$HKqpDDLSrSu`+Y_~K-6ia{`ayyM01F&Ck>?E2 z!+SnN5O`==8c}V11wk{$@9T2gb=boZ7&$IYUMw7M?rhM1XlCz&IEX+Sn(Y~Zwl9Nf zcLwzH{(8dOfe*54p^W2*vr=&V%b@*2Q^^WU&6iC&R0>prR6+l;8}xcVfWj6<85!Iy zC=k-Z3#EV>*RD-BOn){)E!OOm&>4!hI~3K*JKX$<dl}Xfdx448Cy-EYffrox!jUO( z3uSA;pI%MXwn1Osc~V=>7X@*H^-iHcE#d;x2^bqie()i)(RJhiw{&xlG_Cxi1&hQL z6VUvwZ)e6i(7A~CMAY*@a%8X`4I~#GWolF{NE2@riFjrMy|0V}%w}d_HpaW5ijnGS z35&c|6j1$(a;ytY=1E5?oFH4f%Jqv6-ij-i1veE^nR(I0h!E8lEzRCb;A5Kg1A|Ll z6f<-u=%%q+g31;}xU?6p`!M_Cfvknj7{n)QnchqMnhlNfc)HeSO<w0sF^$z?Afk#M z%TDs{02jtZGw+?``J|XRC(sJICk#|qu5-A!8~M1gK(gXEFU%>sXjYbU3iQN*fX$cn zc(vQ`#c(S5o9;ZSxtb$W-GG?_T<Qv7yR5qJ2uwpGB>EsMN==YTC6XXUY<*H-M)XGF zN<3|V(8!?fwQUyyC{&nr&uE*1-?`<pvo@Kpc-zA*(NzaWC?CE4vqU>JLu)NnC4t!i zm2E3iErFSQKU$r9FS>7I%mT}E+L=LZ6r~6hW-79{ouaNbgAYLOBGFOdwuLd5fUeG* zjC;fJ4UjS5H>R3cLHi_w-q^jIn}Wx+$NzU$hKmi8+yl&?U^E-~3pMa$Ub-&4k;<j_ zGdsb5@tunYBC8*?Y&9e=J|eIZ?%}0K_I1}sl?NDG&2Jegb?=Glc;CC$_cy=&QCvo? zO3)Ut1GLYV!=Kc)HrmFyFVRLTD*W8oGpL@$l!ivbk*paKU4&$nmbE&GN}I>V1)x22 zLJB>VaPQ#mf|BMsjrI$u%B_U5xjCOKDZ-_Gi@Ic-W=d&Ysi?)M_UTQJbWi3twewq4 z@XnrB(~aDomkK|tIK1ha`2X|WIzgl^oPFxvaBbA5RIzMt(LkIxTg1Ji2EsxYoF3mc z{pQH|`cJP`snCF}5B!7E9Un$CwSa9eh_2;;-<QKq&qf{>alemG@@{O`FQ!u)ViZ|i zj{M7XmYBSUL*UJEjogB&ign7tCm=gg_N=1t>UvE90yD$w3qd^OXkPongM#yP4Oh@T zwk-@rk94?!0nL)2Q27I3cdIN%%|W-d#Di_TFy0g~KHuTbxxz*{B6r(r7d;tB{Jf9q zp!OK8dj%YX%%hdg?Bh%XMs!2x+hj(<ZdT!FGk;_lYoq^Kg~C-G=24=Dc~p4yjn<&* zQBkp0>P=HQAxWj?nttx}0Lz}An41|aU>Rf@Xg|#4Xpll&^oyvD;KCaOZr(#-UznYw zQg%aq>E-c4A%BP`4{YMKrZjx$auDVN0Ze;z5!~{p3w|gImkJn)oCe}ibYnROQE*zK z_cyS~VCp=T$-t?oW;F!ga(7S+6@yT%Ts|ZHU~QYhou|qwMg`1I;n^m#2HkwclhMvm z=Ic1&F~O;^ydY*T8KBk5(Y-nZRHGV#`JI6_wDz0YC%6wO(y&t6hCRJE%szU`vC59B z(mRes@&*-mG_~;|3*Oo6l+j-3HZ{%ZuVjLo_XOHb{0Y$Ux*cF=K+-S?%hpNL3ESJ; znW`|kia_S0JWIp#M2tf(V!xANN3;CLU-{Qx?5A@HKbGbT6DX%fJ|v9aD_A=mWp9rQ zf%hWUzI}5jH|}2nt~E(W^L3*fVUQo$jVcZg#|(PrrP`=8+g{aseH=JiV9=e#^NpX} zv?Dw{7`qnU3l6q-M%=?eMp4o&=CeKy=8@ytpxiw1$<+zUd=6mShGC(ujg{rsn5<Fv zz{{AKVr=i#XxmeIBGu;5PD}t9i?RW#m1mDb`nwwM*5DMFBfFfmPDx$o=0VoekEahP zlbV22(_cs0iIE*ThQjC7vjLfSBcLouC5~PBjAd=bXPF_;fqrvy8-dRzV)Lf2X%^3b zYs%VY2IVz$MSnNV@X{2Rcx7FG2@CMq16|?iJ@FqrV6A4R74hwY8EnUcLDVWJKX75* zN|IC@%L~~Q#Py!JvD~lTn+6s>Vn8vVPQ>B<uQMxFza5?MZ1%`PA7}8q``j0IUwZKB K?%{*oZuftFYs_E( diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h deleted file mode 100644 index 741eb6e5..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Signal handling function for threaded programs. - Copyright (C) 1998-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, see <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SIGTHREAD_H -#define _BITS_SIGTHREAD_H 1 - -#if !defined _SIGNAL_H && !defined _PTHREAD_H -# error "Never include this file directly. Use <signal.h> instead" -#endif - -/* Functions for handling signals. */ -#include <bits/types/__sigset_t.h> - -/* Modify the signal mask for the calling thread. The arguments have - the same meaning as for sigprocmask(2). */ -extern int pthread_sigmask (int __how, - const __sigset_t *__restrict __newmask, - __sigset_t *__restrict __oldmask)__THROW; - -/* Send signal SIGNO to the given thread. */ -extern int pthread_kill (pthread_t __threadid, int __signo) __THROW; - -#ifdef __USE_GNU -/* Queue signal and data to a thread. */ -extern int pthread_sigqueue (pthread_t __threadid, int __signo, - const union sigval __value) __THROW; -#endif - -#endif /* bits/sigthread.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@sigthread.h.blob deleted file mode 100644 index 52359a3a8edfb5077095c2dc3e00cb5de5d09b76..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13257 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 QZn|ZAP5iy%?010t|0=>qc>n+a diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h deleted file mode 100644 index 2027aad1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h +++ /dev/null @@ -1,35 +0,0 @@ -/* ss_flags values for stack_t. Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_SS_FLAGS_H -#define _BITS_SS_FLAGS_H 1 - -#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H -# error "Never include this file directly. Use <signal.h> instead" -#endif - -/* Possible values for `ss_flags'. */ -enum -{ - SS_ONSTACK = 1, -#define SS_ONSTACK SS_ONSTACK - SS_DISABLE -#define SS_DISABLE SS_DISABLE -}; - -#endif /* bits/ss_flags.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@ss_flags.h.blob deleted file mode 100644 index 9eeea68b83c36e6b461ed35ee91ea8d72b6ebaec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12532 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h deleted file mode 100644 index 3d943a8d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Define intN_t types. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_STDINT_INTN_H -#define _BITS_STDINT_INTN_H 1 - -#include <bits/types.h> - -typedef __int8_t int8_t; -typedef __int16_t int16_t; -typedef __int32_t int32_t; -typedef __int64_t int64_t; - -#endif /* bits/stdint-intn.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-intn.h.blob deleted file mode 100644 index c4c34c57908c44d87a19b82cf0ac9ebaac967940..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12737 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 aqkG8DAH4|NpV)lj@Ra=f+~ARP=KlfB?|0$= diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h deleted file mode 100644 index 8f484879..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Define uintN_t types. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_STDINT_UINTN_H -#define _BITS_STDINT_UINTN_H 1 - -#include <bits/types.h> - -typedef __uint8_t uint8_t; -typedef __uint16_t uint16_t; -typedef __uint32_t uint32_t; -typedef __uint64_t uint64_t; - -#endif /* bits/stdint-uintn.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdint-uintn.h.blob deleted file mode 100644 index 03b91461314acbf54af51dfa11addf1c3ec91d9e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12779 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 a<#Z2w{>}s7|G?%07f#9Fj}7k2VEI3TuaE2i diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h deleted file mode 100644 index 4c3f36d7..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h +++ /dev/null @@ -1,28 +0,0 @@ -/* System specific stdio.h definitions. Linux version. - Copyright (C) 2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_STDIO_LIM_H -#define _BITS_STDIO_LIM_H 1 - -#ifndef _STDIO_H -# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead." -#endif - -#define FILENAME_MAX 4096 - -#endif /* bits/stdio_lim.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdio_lim.h.blob deleted file mode 100644 index 1a834ce5539bb8dc9f8b25a989f23e92690af94f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12277 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 XUv-=Y506iP*UcL@Pp|3UGt2A$tP=1< diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h deleted file mode 100644 index b16d0bb7..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Floating-point inline functions for stdlib.h. - Copyright (C) 2012-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _STDLIB_H -# error "Never use <bits/stdlib-float.h> directly; include <stdlib.h> instead." -#endif - -#ifdef __USE_EXTERN_INLINES -__extern_inline double -__NTH (atof (const char *__nptr)) -{ - return strtod (__nptr, (char **) NULL); -} -#endif /* Optimizing and Inlining. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@stdlib-float.h.blob deleted file mode 100644 index d2053a35843c02aaa2ef243bee43b6bbbde3881f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12133 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 NN3ZU_@N~D^{U0`4%UJ*b diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h deleted file mode 100644 index ac1ff8d7..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h +++ /dev/null @@ -1,63 +0,0 @@ -/* x86 internal mutex struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _THREAD_MUTEX_INTERNAL_H -#define _THREAD_MUTEX_INTERNAL_H 1 - -struct __pthread_mutex_s -{ - int __lock; - unsigned int __count; - int __owner; -#ifdef __x86_64__ - unsigned int __nusers; -#endif - /* KIND must stay at this position in the structure to maintain - binary compatibility with static initializers. */ - int __kind; -#ifdef __x86_64__ - short __spins; - short __elision; - __pthread_list_t __list; -# define __PTHREAD_MUTEX_HAVE_PREV 1 -#else - unsigned int __nusers; - __extension__ union - { - struct - { - short __espins; - short __eelision; -# define __spins __elision_data.__espins -# define __elision __elision_data.__eelision - } __elision_data; - __pthread_slist_t __list; - }; -# define __PTHREAD_MUTEX_HAVE_PREV 0 -#endif -}; - -#ifdef __x86_64__ -# define __PTHREAD_MUTEX_INITIALIZER(__kind) \ - 0, 0, 0, 0, __kind, 0, 0, { 0, 0 } -#else -# define __PTHREAD_MUTEX_INITIALIZER(__kind) \ - 0, 0, 0, __kind, 0, { { 0, 0 } } -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_mutex.h.blob deleted file mode 100644 index 5c1cbf263de8518317e8eda4de91b4b10489c61d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13527 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h deleted file mode 100644 index 44ff452e..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h +++ /dev/null @@ -1,65 +0,0 @@ -/* x86 internal rwlock struct definitions. - Copyright (C) 2019-2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _RWLOCK_INTERNAL_H -#define _RWLOCK_INTERNAL_H - -struct __pthread_rwlock_arch_t -{ - unsigned int __readers; - unsigned int __writers; - unsigned int __wrphase_futex; - unsigned int __writers_futex; - unsigned int __pad3; - unsigned int __pad4; -#ifdef __x86_64__ - int __cur_writer; - int __shared; - signed char __rwelision; -# ifdef __ILP32__ - unsigned char __pad1[3]; -# define __PTHREAD_RWLOCK_ELISION_EXTRA 0, { 0, 0, 0 } -# else - unsigned char __pad1[7]; -# define __PTHREAD_RWLOCK_ELISION_EXTRA 0, { 0, 0, 0, 0, 0, 0, 0 } -# endif - unsigned long int __pad2; - /* FLAGS must stay at this position in the structure to maintain - binary compatibility. */ - unsigned int __flags; -#else /* __x86_64__ */ - /* FLAGS must stay at this position in the structure to maintain - binary compatibility. */ - unsigned char __flags; - unsigned char __shared; - signed char __rwelision; - unsigned char __pad2; - int __cur_writer; -#endif -}; - -#ifdef __x86_64__ -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags -#else -# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ - 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@struct_rwlock.h.blob deleted file mode 100644 index 5595bb478ae83b7054a3c1ae562922f16f3659b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13939 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h deleted file mode 100644 index 2de6ff9c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h +++ /dev/null @@ -1,115 +0,0 @@ -/* Common threading primitives definitions for both POSIX and C11. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _THREAD_SHARED_TYPES_H -#define _THREAD_SHARED_TYPES_H 1 - -/* Arch-specific definitions. Each architecture must define the following - macros to define the expected sizes of pthread data types: - - __SIZEOF_PTHREAD_ATTR_T - size of pthread_attr_t. - __SIZEOF_PTHREAD_MUTEX_T - size of pthread_mutex_t. - __SIZEOF_PTHREAD_MUTEXATTR_T - size of pthread_mutexattr_t. - __SIZEOF_PTHREAD_COND_T - size of pthread_cond_t. - __SIZEOF_PTHREAD_CONDATTR_T - size of pthread_condattr_t. - __SIZEOF_PTHREAD_RWLOCK_T - size of pthread_rwlock_t. - __SIZEOF_PTHREAD_RWLOCKATTR_T - size of pthread_rwlockattr_t. - __SIZEOF_PTHREAD_BARRIER_T - size of pthread_barrier_t. - __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t. - - The additional macro defines any constraint for the lock alignment - inside the thread structures: - - __LOCK_ALIGNMENT - for internal lock/futex usage. - - Same idea but for the once locking primitive: - - __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition. */ - -#include <bits/pthreadtypes-arch.h> - -#include <bits/atomic_wide_counter.h> - - -/* Common definition of pthread_mutex_t. */ - -typedef struct __pthread_internal_list -{ - struct __pthread_internal_list *__prev; - struct __pthread_internal_list *__next; -} __pthread_list_t; - -typedef struct __pthread_internal_slist -{ - struct __pthread_internal_slist *__next; -} __pthread_slist_t; - -/* Arch-specific mutex definitions. A generic implementation is provided - by sysdeps/nptl/bits/struct_mutex.h. If required, an architecture - can override it by defining: - - 1. struct __pthread_mutex_s (used on both pthread_mutex_t and mtx_t - definition). It should contains at least the internal members - defined in the generic version. - - 2. __LOCK_ALIGNMENT for any extra attribute for internal lock used with - atomic operations. - - 3. The macro __PTHREAD_MUTEX_INITIALIZER used for static initialization. - It should initialize the mutex internal flag. */ - -#include <bits/struct_mutex.h> - -/* Arch-sepecific read-write lock definitions. A generic implementation is - provided by struct_rwlock.h. If required, an architecture can override it - by defining: - - 1. struct __pthread_rwlock_arch_t (used on pthread_rwlock_t definition). - It should contain at least the internal members defined in the - generic version. - - 2. The macro __PTHREAD_RWLOCK_INITIALIZER used for static initialization. - It should initialize the rwlock internal type. */ - -#include <bits/struct_rwlock.h> - - -/* Common definition of pthread_cond_t. */ - -struct __pthread_cond_s -{ - __atomic_wide_counter __wseq; - __atomic_wide_counter __g1_start; - unsigned int __g_refs[2] __LOCK_ALIGNMENT; - unsigned int __g_size[2]; - unsigned int __g1_orig_size; - unsigned int __wrefs; - unsigned int __g_signals[2]; -}; - -typedef unsigned int __tss_t; -typedef unsigned long int __thrd_t; - -typedef struct -{ - int __data __ONCE_ALIGNMENT; -} __once_flag; - -#define __ONCE_FLAG_INIT { 0 } - -#endif /* _THREAD_SHARED_TYPES_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@thread-shared-types.h.blob deleted file mode 100644 index 285b272713d73959e272ce16b7d6432aa4d6681d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14595 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 F{{wpJ4v+u< diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h deleted file mode 100644 index 1e6662a1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h +++ /dev/null @@ -1,93 +0,0 @@ -/* System-dependent timing definitions. Linux version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * Never include this file directly; use <time.h> instead. - */ - -#ifndef _BITS_TIME_H -#define _BITS_TIME_H 1 - -#include <bits/types.h> - -/* ISO/IEC 9899:1999 7.23.1: Components of time - The macro `CLOCKS_PER_SEC' is an expression with type `clock_t' that is - the number per second of the value returned by the `clock' function. */ -/* CAE XSH, Issue 4, Version 2: <time.h> - The value of CLOCKS_PER_SEC is required to be 1 million on all - XSI-conformant systems. */ -#define CLOCKS_PER_SEC ((__clock_t) 1000000) - -#if (!defined __STRICT_ANSI__ || defined __USE_POSIX) \ - && !defined __USE_XOPEN2K -/* Even though CLOCKS_PER_SEC has such a strange value CLK_TCK - presents the real value for clock ticks per second for the system. */ -extern long int __sysconf (int); -# define CLK_TCK ((__clock_t) __sysconf (2)) /* 2 is _SC_CLK_TCK */ -#endif - -#ifdef __USE_POSIX199309 -/* Identifier for system-wide realtime clock. */ -# define CLOCK_REALTIME 0 -/* Monotonic system-wide clock. */ -# define CLOCK_MONOTONIC 1 -/* High-resolution timer from the CPU. */ -# define CLOCK_PROCESS_CPUTIME_ID 2 -/* Thread-specific CPU-time clock. */ -# define CLOCK_THREAD_CPUTIME_ID 3 -/* Monotonic system-wide clock, not adjusted for frequency scaling. */ -# define CLOCK_MONOTONIC_RAW 4 -/* Identifier for system-wide realtime clock, updated only on ticks. */ -# define CLOCK_REALTIME_COARSE 5 -/* Monotonic system-wide clock, updated only on ticks. */ -# define CLOCK_MONOTONIC_COARSE 6 -/* Monotonic system-wide clock that includes time spent in suspension. */ -# define CLOCK_BOOTTIME 7 -/* Like CLOCK_REALTIME but also wakes suspended system. */ -# define CLOCK_REALTIME_ALARM 8 -/* Like CLOCK_BOOTTIME but also wakes suspended system. */ -# define CLOCK_BOOTTIME_ALARM 9 -/* Like CLOCK_REALTIME but in International Atomic Time. */ -# define CLOCK_TAI 11 - -/* Flag to indicate time is absolute. */ -# define TIMER_ABSTIME 1 -#endif - -#ifdef __USE_GNU -# include <bits/timex.h> - -__BEGIN_DECLS - -/* Tune a POSIX clock. */ -extern int clock_adjtime (__clockid_t __clock_id, struct timex *__utx) __THROW __nonnull((2)); - -#ifdef __USE_TIME_BITS64 -# if defined(__REDIRECT_NTH) -extern int __REDIRECT_NTH (clock_adjtime, (__clockid_t __clock_id, - struct timex *__utx), - __clock_adjtime64) __nonnull((2)); -# else -# define clock_adjtime __clock_adjtime64 -# endif -#endif - -__END_DECLS -#endif /* use GNU */ - -#endif /* bits/time.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time.h.blob deleted file mode 100644 index 921bc6a50aef60e982734cc9d4f18a9fd15cce32..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13272 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 R^AxZ=y>uG90KcUd{tp610owoo diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h deleted file mode 100644 index 723db1ed..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h +++ /dev/null @@ -1,36 +0,0 @@ -/* bits/time64.h -- underlying types for __time64_t. Generic version. - Copyright (C) 2018-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_TYPES_H -# error "Never include <bits/time64.h> directly; use <sys/types.h> instead." -#endif - -#ifndef _BITS_TIME64_H -#define _BITS_TIME64_H 1 - -/* Define __TIME64_T_TYPE so that it is always a 64-bit type. */ - -#if __TIMESIZE == 64 -/* If we already have 64-bit time type then use it. */ -# define __TIME64_T_TYPE __TIME_T_TYPE -#else -/* Define a 64-bit time type alongsize the 32-bit one. */ -# define __TIME64_T_TYPE __SQUAD_TYPE -#endif - -#endif /* bits/time64.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@time64.h.blob deleted file mode 100644 index 00c6a7b9534a491191ecfb609901d4e1f26c1c77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12322 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 Deh&U2 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h deleted file mode 100644 index 5cb04153..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Bit size of the time_t type at glibc build time, x86-64 and x32 case. - Copyright (C) 2018-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#include <bits/wordsize.h> - -#if defined __x86_64__ && defined __ILP32__ -/* For x32, time is 64-bit even though word size is 32-bit. */ -# define __TIMESIZE 64 -#else -/* For others, time size is word size. */ -# define __TIMESIZE __WORDSIZE -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@timesize.h.blob deleted file mode 100644 index 930b5adaa4fe86a328ea212f60b36be0ef561cb8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12234 zcmb7KKg=XI72gjkPzr=1P@p*hicrX8xg+^>1qeaz5}kC%NrZn25`)L%+4X&%@!Z(6 zyWfd|G6gk%8VX7ZgeWK}kvQ5^6o`%nrJ_2C9MAUHyWV-@nKWDMys_V(-}}Ai=XquI z;eS84{d9G)T5n~|)?$5!sVgnpwPs4MOIEH`N7pss&1-b^aVki&StOe6Wp~A!O;+-b zQ7yacZ%pp6`roS;>t1zh-cZq(Z2iui`?uBw+wdl*vShDqS0BE7<GrVm4As}IePZ;F zo)lcGwRx)6d0rPv6U}mM773z)7i(+F`sQWWmDC5`=ngCe(Wm@Je~(tRI>ArA>3NB2 z^!EMrM)c;<r{4eL-zHuLul5~oQN@UPrXo$fOKPIG(F5Fs-QkU!x2pE$Wx^8c9}|`) zc8cH1J}<5T0DIET@2PZINGXiq$Z2+|Rw{nDl?z@+i$&WJEo)BmJuexAyl*t?f^Z6$ z6&EZoI=NTwg|Gg;m<Stfd)`#itQxSC@F8eU1ORXz5327fLXRO$sk>!@AB+lr_|s2f zJ(byL6KpowfNHm?8lKR~I^1Dj@y(8iGvG%~cXFE7tUD1)>CblD2Kt4+JdD*3*`Z}m zEl`7#qb;j86LM3`+es{vcSW7DR$Z$#Em?)9%&9MQ*HfLpb?^S&Xlt)qP~Q^WDMY-) z$zoK>E6#E*^Qv#C=CV;I?mOi%%Lrz}cZ)X@992PvoUMSyeqYyfp@*O=eWjkDR`v~t zWJMpHn1?f__XBLu5Q~98rv8y#L(wgp-C_@BEHSv1Ep2qd<`6d^v(hnu#a$A^HK7(T z|M<#-7{n$MQ166oU>8noeF*SIBbDdiXaHtjlS57f_{^D$6Qr+ICV1@JF_CvS3`(;G zhIA#wh9G6D+8KL3c=KDap}`)|64o~|!5+V#$t|l`<Pp@`>Y#wUMofvy4td?)f)`k) zpf&i2Z;B<=%|!C@^+<DXSFoK5-WHN{crmwNhKiw^3~Ca9P+v#Op~kgcMYkAXq0)mZ znh~L=B3gBf<r{I`T9SR`#x{<u%Rxf|gkH@nJg6XwYQAFtbeaO1QQ$irGj7T}U~m&_ z0Ekg1BtYU7Ue#nLkav6tt&zu6#EHl!m5`J`j}W&y=<cv%0DRCh+7qf*MO3_0Bmhls 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 T(x+c~`D5ny>#OG%@WTHA_@C-? diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h deleted file mode 100644 index a1e18d5a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h +++ /dev/null @@ -1,228 +0,0 @@ -/* bits/types.h -- definitions of __*_t types underlying *_t types. - Copyright (C) 2002-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * Never include this file directly; use <sys/types.h> instead. - */ - -#ifndef _BITS_TYPES_H -#define _BITS_TYPES_H 1 - -#include <features.h> -#include <bits/wordsize.h> -#include <bits/timesize.h> - -/* Convenience types. */ -typedef unsigned char __u_char; -typedef unsigned short int __u_short; -typedef unsigned int __u_int; -typedef unsigned long int __u_long; - -/* Fixed-size types, underlying types depend on word size and compiler. */ -typedef signed char __int8_t; -typedef unsigned char __uint8_t; -typedef signed short int __int16_t; -typedef unsigned short int __uint16_t; -typedef signed int __int32_t; -typedef unsigned int __uint32_t; -#if __WORDSIZE == 64 -typedef signed long int __int64_t; -typedef unsigned long int __uint64_t; -#else -__extension__ typedef signed long long int __int64_t; -__extension__ typedef unsigned long long int __uint64_t; -#endif - -/* Smallest types with at least a given width. */ -typedef __int8_t __int_least8_t; -typedef __uint8_t __uint_least8_t; -typedef __int16_t __int_least16_t; -typedef __uint16_t __uint_least16_t; -typedef __int32_t __int_least32_t; -typedef __uint32_t __uint_least32_t; -typedef __int64_t __int_least64_t; -typedef __uint64_t __uint_least64_t; - -/* quad_t is also 64 bits. */ -#if __WORDSIZE == 64 -typedef long int __quad_t; -typedef unsigned long int __u_quad_t; -#else -__extension__ typedef long long int __quad_t; -__extension__ typedef unsigned long long int __u_quad_t; -#endif - -/* Largest integral types. */ -#if __WORDSIZE == 64 -typedef long int __intmax_t; -typedef unsigned long int __uintmax_t; -#else -__extension__ typedef long long int __intmax_t; -__extension__ typedef unsigned long long int __uintmax_t; -#endif - - -/* The machine-dependent file <bits/typesizes.h> defines __*_T_TYPE - macros for each of the OS types we define below. The definitions - of those macros must use the following macros for underlying types. - We define __S<SIZE>_TYPE and __U<SIZE>_TYPE for the signed and unsigned - variants of each of the following integer types on this machine. - - 16 -- "natural" 16-bit type (always short) - 32 -- "natural" 32-bit type (always int) - 64 -- "natural" 64-bit type (long or long long) - LONG32 -- 32-bit type, traditionally long - QUAD -- 64-bit type, traditionally long long - WORD -- natural type of __WORDSIZE bits (int or long) - LONGWORD -- type of __WORDSIZE bits, traditionally long - - We distinguish WORD/LONGWORD, 32/LONG32, and 64/QUAD so that the - conventional uses of `long' or `long long' type modifiers match the - types we define, even when a less-adorned type would be the same size. - This matters for (somewhat) portably writing printf/scanf formats for - these types, where using the appropriate l or ll format modifiers can - make the typedefs and the formats match up across all GNU platforms. If - we used `long' when it's 64 bits where `long long' is expected, then the - compiler would warn about the formats not matching the argument types, - and the programmer changing them to shut up the compiler would break the - program's portability. - - Here we assume what is presently the case in all the GCC configurations - we support: long long is always 64 bits, long is always word/address size, - and int is always 32 bits. */ - -#define __S16_TYPE short int -#define __U16_TYPE unsigned short int -#define __S32_TYPE int -#define __U32_TYPE unsigned int -#define __SLONGWORD_TYPE long int -#define __ULONGWORD_TYPE unsigned long int -#if __WORDSIZE == 32 -# define __SQUAD_TYPE __int64_t -# define __UQUAD_TYPE __uint64_t -# define __SWORD_TYPE int -# define __UWORD_TYPE unsigned int -# define __SLONG32_TYPE long int -# define __ULONG32_TYPE unsigned long int -# define __S64_TYPE __int64_t -# define __U64_TYPE __uint64_t -/* We want __extension__ before typedef's that use nonstandard base types - such as `long long' in C89 mode. */ -# define __STD_TYPE __extension__ typedef -#elif __WORDSIZE == 64 -# define __SQUAD_TYPE long int -# define __UQUAD_TYPE unsigned long int -# define __SWORD_TYPE long int -# define __UWORD_TYPE unsigned long int -# define __SLONG32_TYPE int -# define __ULONG32_TYPE unsigned int -# define __S64_TYPE long int -# define __U64_TYPE unsigned long int -/* No need to mark the typedef with __extension__. */ -# define __STD_TYPE typedef -#else -# error -#endif -#include <bits/typesizes.h> /* Defines __*_T_TYPE macros. */ -#include <bits/time64.h> /* Defines __TIME*_T_TYPE macros. */ - - -__STD_TYPE __DEV_T_TYPE __dev_t; /* Type of device numbers. */ -__STD_TYPE __UID_T_TYPE __uid_t; /* Type of user identifications. */ -__STD_TYPE __GID_T_TYPE __gid_t; /* Type of group identifications. */ -__STD_TYPE __INO_T_TYPE __ino_t; /* Type of file serial numbers. */ -__STD_TYPE __INO64_T_TYPE __ino64_t; /* Type of file serial numbers (LFS).*/ -__STD_TYPE __MODE_T_TYPE __mode_t; /* Type of file attribute bitmasks. */ -__STD_TYPE __NLINK_T_TYPE __nlink_t; /* Type of file link counts. */ -__STD_TYPE __OFF_T_TYPE __off_t; /* Type of file sizes and offsets. */ -__STD_TYPE __OFF64_T_TYPE __off64_t; /* Type of file sizes and offsets (LFS). */ -__STD_TYPE __PID_T_TYPE __pid_t; /* Type of process identifications. */ -__STD_TYPE __FSID_T_TYPE __fsid_t; /* Type of file system IDs. */ -__STD_TYPE __CLOCK_T_TYPE __clock_t; /* Type of CPU usage counts. */ -__STD_TYPE __RLIM_T_TYPE __rlim_t; /* Type for resource measurement. */ -__STD_TYPE __RLIM64_T_TYPE __rlim64_t; /* Type for resource measurement (LFS). */ -__STD_TYPE __ID_T_TYPE __id_t; /* General type for IDs. */ -__STD_TYPE __TIME_T_TYPE __time_t; /* Seconds since the Epoch. */ -__STD_TYPE __USECONDS_T_TYPE __useconds_t; /* Count of microseconds. */ -__STD_TYPE __SUSECONDS_T_TYPE __suseconds_t; /* Signed count of microseconds. */ -__STD_TYPE __SUSECONDS64_T_TYPE __suseconds64_t; - -__STD_TYPE __DADDR_T_TYPE __daddr_t; /* The type of a disk address. */ -__STD_TYPE __KEY_T_TYPE __key_t; /* Type of an IPC key. */ - -/* Clock ID used in clock and timer functions. */ -__STD_TYPE __CLOCKID_T_TYPE __clockid_t; - -/* Timer ID returned by `timer_create'. */ -__STD_TYPE __TIMER_T_TYPE __timer_t; - -/* Type to represent block size. */ -__STD_TYPE __BLKSIZE_T_TYPE __blksize_t; - -/* Types from the Large File Support interface. */ - -/* Type to count number of disk blocks. */ -__STD_TYPE __BLKCNT_T_TYPE __blkcnt_t; -__STD_TYPE __BLKCNT64_T_TYPE __blkcnt64_t; - -/* Type to count file system blocks. */ -__STD_TYPE __FSBLKCNT_T_TYPE __fsblkcnt_t; -__STD_TYPE __FSBLKCNT64_T_TYPE __fsblkcnt64_t; - -/* Type to count file system nodes. */ -__STD_TYPE __FSFILCNT_T_TYPE __fsfilcnt_t; -__STD_TYPE __FSFILCNT64_T_TYPE __fsfilcnt64_t; - -/* Type of miscellaneous file system fields. */ -__STD_TYPE __FSWORD_T_TYPE __fsword_t; - -__STD_TYPE __SSIZE_T_TYPE __ssize_t; /* Type of a byte count, or error. */ - -/* Signed long type used in system calls. */ -__STD_TYPE __SYSCALL_SLONG_TYPE __syscall_slong_t; -/* Unsigned long type used in system calls. */ -__STD_TYPE __SYSCALL_ULONG_TYPE __syscall_ulong_t; - -/* These few don't really vary by system, they always correspond - to one of the other defined types. */ -typedef __off64_t __loff_t; /* Type of file sizes and offsets (LFS). */ -typedef char *__caddr_t; - -/* Duplicates info from stdint.h but this is used in unistd.h. */ -__STD_TYPE __SWORD_TYPE __intptr_t; - -/* Duplicate info from sys/socket.h. */ -__STD_TYPE __U32_TYPE __socklen_t; - -/* C99: An integer type that can be accessed as an atomic entity, - even in the presence of asynchronous interrupts. - It is not currently necessary for this to be machine-specific. */ -typedef int __sig_atomic_t; - -/* Seconds since the Epoch, visible to user code when time_t is too - narrow only for consistency with the old way of widening too-narrow - types. User code should never use __time64_t. */ -#if __TIMESIZE == 64 && defined __LIBC -# define __time64_t __time_t -#elif __TIMESIZE != 64 -__STD_TYPE __TIME64_T_TYPE __time64_t; -#endif - -#undef __STD_TYPE - -#endif /* bits/types.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types.h.blob deleted file mode 100644 index 270385145d0b4441e9d05cff94ecbacac8856f88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19604 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 C%ZSkc diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h deleted file mode 100644 index f2682632..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef __FILE_defined -#define __FILE_defined 1 - -struct _IO_FILE; - -/* The opaque type of streams. This is the definition used elsewhere. */ -typedef struct _IO_FILE FILE; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@FILE.h.blob deleted file mode 100644 index 02e24403f0efaf8563b4cffbc270ac8d8a0ef219..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12395 zcmb7KPskie6`x5YcvwPC3Myex5LwfiB(5L1i0G~x7P98xDvP3RO?CBj<*WYlbyd&I z7d-4m*n?+55Dy+b$l^ip;zbdR;7L7r@G63=2fY|{v#+YUYNn=N*YtjTd?fVis`uyj ze(%+*esT8Rf8M?SbT*$Yi@Ib>v3!Neb5%D>#iUwhEL+N!E=$6z+jMr73R0~ni6+~+ zJ?GUr$#~1Cs@uyijP5Y||E>A5lkJjMRCF0ze(jZq_m(TR=2c4TjNL9~?|pjl_R~Oy zs>{Ya(fS8ZR$R%Yekzw~TCSubils^~;zb2tEsZV9yJvn^Qto)ATCfyEpYk{V5Ugr+ zf<NiH;~A>agNMtt==7r-e|qQlBQJwjyB4=7XGA}ffu_zSB~eB205@T?`~2N|d2{zH zVu|sO4oej}#cgGtuPy-qThg4~Q>tuL*Fp;poMx74YRPx^Qo+k$v0yu*>XOrR%QFTc z?<&PwFB}7A&IL<XZM~KDg*!i6jf9Oh9k23Quj;WB@gZnV1OV_f9%R?%gziHcQ@3D( z@3aa(|HXGgJ*D1g?QPcCfNHnSD<09xINV}i^7V#@Bj5*4w{nV?tUVBm>CZOY1p0+v zKMK|N*`ex=8lZY72V3S%BI@<(w4KBtd9x~G*2+t{q#4WclsWW;YCEdZS6_Shm0)Y9 zn^)fu-62Gr#KB^;uFpA3d7b86MHR0rdEmZ79y5%fH~i-6<p@XRkReAapt0YU<*Cp^ z(4{(;Pf#nnibJxZj}FYk8PoXzHmHcffG1P;$gCl0!A@?m1v91?+|&)NRK#W<Hz2dj zGJwHd6vHK<1~7m9?CT+jbta(R@!P;IoS6FH;f+QrO~KIs%(NuClnC&dH5VsHSF3dJ z*s)^*@2(k?W(5psONa?U%vQP4_PqP@mqJ6mJ)kA5uVuVFZa<w{MzO#nsI~b{0(lLX z5|!=qy1550uvS8A@B!ZxQ>vSe<k?Gs=FTo}I~BZH)uhFXxdAg&3{@pilK_P3GFT2Z zu4!{xV1$KA_pYc0gdU4%-ZGZ1#bski_QgdJM%Lz_CILdvPb=K3AXfS5jseiA3ur=t z?^MXRG4p`Ib*up(S{<JNkym(Ll8r##aUnED?o$ybB9~O6rUZI~u+>3#haElOy`I6I zP`z>@!=(ZNXnHfrpWrN_lg;!W1BE>%&)H?r@Wzm!011+-zEgVkoLVHHrZv&Z;kPfj z#L2)**gj21azGgCs#`*HyOPOB<`G#gS=&~|2cLQNgRn)m$YttrIicrtEMn?Ic5xal zKCs^RsGl|s6=f$bvI_)$=o?$YRdbFtim13m1A&TyjffHf+)QVkLPZEN-H8whP4WIw z3`>ITZ1w!uKUqj95VT~?D%NspgO{v`H25Aw(1WCIShY4i!T=-(sar7_vWU}L13R_I zUXq4u+rIas7sCF@6t2B(qwVru&Sy00?42YVMo;<Maf)u(&R&|rDG<bsCHVWu;;1T= z9hbyd<O(8-(jL>!vad!c0I<NJ6M4cAJ)Gx#1c8T!r4iNERS+~|+`2ZmZ4cgVfsw<~ z<iz~;`cwz~hhpZ$h=T~Up-I6Aw0#Lwy91yfcHlkUHoUE?63RG^I3ooI#01(eG?k1% z-+Y;*L#03^NEP&vS)frx3kn+)C8V|IBu_{KFRTRAxN>a%q5HEAYO!Lwh|W;7?WU+! z&f)qY?qztNm?KW`egp~m6nMcA&~F(7w~(e5{PH8Q+SaP$Q&DWm{Xs$8!+IxQpayY) z`2`G?0zbHrndn+_fOEV)Y3f#f(1Hcxk_l*j$CuLsALv{}xFhO$AUV<+k9v{|w$e2! z7i1kS6^J-y1HDfS4fJAqq}GM2p^B00WC;trmZnhs(^Z$JitJ}0v2cQHZY$S!AALEj zTn5}!)KX8Bj)sV+wrFW~UIHJ}q-hx(>VlY|D?vAn)e=-TP5rSxwcUqa9}i?MRKg%W zNy$`E<Hu}hoV(qrKCAaSU#I=xEd(N}=yp}ryxPElanQ^=CpkVz_nhNt1zi(Ht|P}e zT-*+Y>{uXLajX~iDLZIZhI0yZ$CiN2$Mtx$+i=COFZq+sJaT<9NBX(}GX*%*rNDMc zc3Baamj+05K^T-8FBMB9LA2QTq(BexwZw^dngF4ZLEUTGE(B1hFsm+T8H3-U<$GsM zGGFqtfm5Qb4wg{fy7jF{JGF<_SgO_pW(Tw`%R1H)=-K$)(b@Q*`_{$`u)I$@J<1KD z6o5icMFyu+)YW?M0q7khIx1Y2Fy<1_)#;saZ&<zoG6wvHR1+#_E^W{gyOXnX^04-} zX9s0CoiOX&!2Ah@w}HP<19$o^?8qCjTzWk*GybPvJi0<M`a#Q<L-OJy0wZCsX3}V1 zcY0L0fw9&8wj-wQC6N_x8r%B*<fmT`%cxNa+5)zL_W5}D6I<3qTRZm|+GquZpKE(s z*|3n(&}dka)kC7Akc`r@k~@(peH}Rfw1bXMp~p3xJGecd#JNtP{Q|0TSwq>JoKJ=n z;ZQ$CUDEY4rMRwC<f4;Be9<i}$o|&t@D$~}Q}C=mk(>Qu;b$3#TVEajzrC7Ah}4F& ziJcoxjrycahwUvIh{I-!*qc^QSm+D8`)BKBa^zh7rzfkFZ@|U}{@&@94+EMSz_t-Y z<#mgnm;Fi?9S@7RTgN4N)s^E1)4mPSiVO}%?(RB?Oy2z_a4R`RZeCT%Drw>4ksT;| zP*Hexx~2eu>EZQ}ARclwuifTe!Tod%SI}Oz4GcxMw77u*&5)o_`3+!qsw_v%L6<ee zgDpHTUKcUGKf@n#g^6-N?xxjF8`6^S0{~P9Szxs86tED|msTn<mootv(FLt<qZtXS z8HIzz+?IZ<jXpIB`J+0_qeKJqD1R>;yo0JoMaIfnO`6Jynq+cc(+|DwVcGB<vonJM zEWOMc+7CTBYHJ~m`bAVnaN#`!Zq7q~U6`H3Qg%XpY3l8fLT(dB9@xZdOlkNOW+U_` z1eo^dOK{5X5BR<;94nwHvLA>C(GBG+M8Rp1-e1EefvIy}COxO3n&l9D!`)snR188j za`+7NgLlgW&OBL?F)Cnw3fDG)HR$3ao(xtFGGB!Wj|ujT<q<JENe`{E?(D6DM>VP; zm|tmVLu)^&eS-6lBx|;+O~W2v8)hF3<yd7$RcS0oB6)*~Tbi19kp=f`X3A&|bd#Fq z_;)nk%>{wB6Tbqqylw{A36L~Q!jf^)w8G{zcc3avt^$y`DDS1=dLqQ36ER=Xu&sXm z8=w69@65+_5kIc<7bZ|nwY*Olx0biI-PVoS&IjI!occP>qFlRw1h~c|QS0v?>kbC_ zf!(O$aB<9_XCA7JO0(%zy;0kiqXh<CSv;Be$xYe8)q}Qc;63kPb7sUn>}4b+)nGpB z;-D`%P7TWS6<<9%LD}yE*fwDpsB2<n_%$SJ)ID%Brl%Owdo@}%l<r72IkY_!K*pkM zfNJH~V-x?b#<|ry1?I>$Cyi5L$GQC=>+#$DCzer7z^U=?C(Xpj3>|&pbLyFZ^t|Cw z=A|Orj(o;4_QnU9A<&k7ZgLxe&n80i`mbpQ*MMWnnq~&&HS~?<yr1F4DKK)&I(`%8 z;Zp!z;pyG;A6#IKW~LEw?SdX`hl4@XDkwj2V4g~nRBTsAvN4FOg4wa$4<Gac3l}k< z7*HqRaQCRks(zmM9!+C)Hk(~}UVr?@-~RreAN*UJ3615#f_jm@_Q=d97y5(L*_}Hd zp1o19Mct5#jxDt8qBgROl=Ajs@kYVr0)9ck1+2m=7?;)60y?5>0nI+!77V@zoXxM@ zxpx1`{Mzi=eb{{V{H^3)zj?s_^56f>ga01sFuQ*JhJLPpK02FUy?*uPe13Iy_2vu~ zym{^RhvxI=|9EHit3STk{MJrYQ=<dR;Dt|o%Km#1K3Uv_m*+R;x31{FcV^GE2JZtd Co*Q2P diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h deleted file mode 100644 index 06dd79bc..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef ____FILE_defined -#define ____FILE_defined 1 - -struct _IO_FILE; -typedef struct _IO_FILE __FILE; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__FILE.h.blob deleted file mode 100644 index ad5c429053f53f9e8938d32b2da892a9c6590371..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12332 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 DPqYRy diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h deleted file mode 100644 index 06a68911..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef _____fpos64_t_defined -#define _____fpos64_t_defined 1 - -#include <bits/types.h> -#include <bits/types/__mbstate_t.h> - -/* The tag name of this struct is _G_fpos64_t to preserve historic - C++ mangled names for functions taking fpos_t and/or fpos64_t - arguments. That name should not be used in new code. */ -typedef struct _G_fpos64_t -{ - __off64_t __pos; - __mbstate_t __state; -} __fpos64_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos64_t.h.blob deleted file mode 100644 index a53a27a8d3386778dcad531a54632b6f64671a3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13123 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 X^$0<58Mu${8(-U#e}8s#EVcU|i}45& diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h deleted file mode 100644 index bb045766..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef _____fpos_t_defined -#define _____fpos_t_defined 1 - -#include <bits/types.h> -#include <bits/types/__mbstate_t.h> - -/* The tag name of this struct is _G_fpos_t to preserve historic - C++ mangled names for functions taking fpos_t arguments. - That name should not be used in new code. */ -typedef struct _G_fpos_t -{ - __off_t __pos; - __mbstate_t __state; -} __fpos_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__fpos_t.h.blob deleted file mode 100644 index 435baf0a09f2d7770bbefc64fef69df9efa037ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13069 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 R$NriA{xSLYwce4`>3`EU{6YW# diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h deleted file mode 100644 index 6b83d380..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h +++ /dev/null @@ -1,43 +0,0 @@ -/* Definition of struct __locale_struct and __locale_t. - Copyright (C) 1997-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_TYPES___LOCALE_T_H -#define _BITS_TYPES___LOCALE_T_H 1 - -/* POSIX.1-2008: the locale_t type, representing a locale context - (implementation-namespace version). This type should be treated - as opaque by applications; some details are exposed for the sake of - efficiency in e.g. ctype functions. */ - -struct __locale_struct -{ - /* Note: LC_ALL is not a valid index into this array. */ - struct __locale_data *__locales[13]; /* 13 = __LC_LAST. */ - - /* To increase the speed of this solution we add some special members. */ - const unsigned short int *__ctype_b; - const int *__ctype_tolower; - const int *__ctype_toupper; - - /* Note: LC_ALL is not a valid index into this array. */ - const char *__names[13]; -}; - -typedef struct __locale_struct *__locale_t; - -#endif /* bits/types/__locale_t.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__locale_t.h.blob deleted file mode 100644 index 4917ff83cff5a64ce983f63eecb7cbcc3994c05b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13253 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 Ndr18Iv~wVk_kVRZL013( diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h deleted file mode 100644 index 1d8a4e28..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef ____mbstate_t_defined -#define ____mbstate_t_defined 1 - -/* Integral type unchanged by default argument promotions that can - hold any value corresponding to members of the extended character - set, as well as at least one value that does not correspond to any - member of the extended character set. */ -#ifndef __WINT_TYPE__ -# define __WINT_TYPE__ unsigned int -#endif - -/* Conversion state information. */ -typedef struct -{ - int __count; - union - { - __WINT_TYPE__ __wch; - char __wchb[4]; - } __value; /* Value so far. */ -} __mbstate_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__mbstate_t.h.blob deleted file mode 100644 index 9165af8741c2d7b25efc0ff19b0f835f95794cdd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12911 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 a)!$%AgrIjGPFy>-cIlA#{j7H&4E29_UA#5` diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h deleted file mode 100644 index e2f18acf..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef ____sigset_t_defined -#define ____sigset_t_defined - -#define _SIGSET_NWORDS (1024 / (8 * sizeof (unsigned long int))) -typedef struct -{ - unsigned long int __val[_SIGSET_NWORDS]; -} __sigset_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigset_t.h.blob deleted file mode 100644 index ccf1a2fdb415674cdc5bf370397914665d36998e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12539 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 D_p3sa diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h deleted file mode 100644 index 520e3821..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h +++ /dev/null @@ -1,41 +0,0 @@ -/* Define __sigval_t. - Copyright (C) 1997-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef ____sigval_t_defined -#define ____sigval_t_defined - -/* Type for data associated with a signal. */ -#ifdef __USE_POSIX199309 -union sigval -{ - int sival_int; - void *sival_ptr; -}; - -typedef union sigval __sigval_t; -#else -union __sigval -{ - int __sival_int; - void *__sival_ptr; -}; - -typedef union __sigval __sigval_t; -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@__sigval_t.h.blob deleted file mode 100644 index dca11135fecab15e458a849be8806a5022d9cee9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12499 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 WZ?G8leCLS^Pu$qmzei_EkN*Rofiao@ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h deleted file mode 100644 index ce97248f..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef __clock_t_defined -#define __clock_t_defined 1 - -#include <bits/types.h> - -/* Returned by `clock'. */ -typedef __clock_t clock_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clock_t.h.blob deleted file mode 100644 index 19e3d18384b25f502d655d5cc68cc3540b5dd585..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12372 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 KelHf+n%nziSQgCy diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h deleted file mode 100644 index b17c7da8..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef __clockid_t_defined -#define __clockid_t_defined 1 - -#include <bits/types.h> - -/* Clock ID used in clock and timer functions. */ -typedef __clockid_t clockid_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@clockid_t.h.blob deleted file mode 100644 index 4723600fbf5f52a0dee413dde5056c7ffbe1bfd8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12402 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 a{eNEp_jrB>WIwria(+Yq-kV)(jvoRzI3|<; diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h deleted file mode 100644 index 61324230..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef __cookie_io_functions_t_defined -#define __cookie_io_functions_t_defined 1 - -#include <bits/types.h> - -/* Functions to do I/O and file management for a stream. */ - -/* Read NBYTES bytes from COOKIE into a buffer pointed to by BUF. - Return number of bytes read. */ -typedef __ssize_t cookie_read_function_t (void *__cookie, char *__buf, - size_t __nbytes); - -/* Write NBYTES bytes pointed to by BUF to COOKIE. Write all NBYTES bytes - unless there is an error. Return number of bytes written. If - there is an error, return 0 and do not write anything. If the file - has been opened for append (__mode.__append set), then set the file - pointer to the end of the file and then do the write; if not, just - write at the current file pointer. */ -typedef __ssize_t cookie_write_function_t (void *__cookie, const char *__buf, - size_t __nbytes); - -/* Move COOKIE's file position to *POS bytes from the - beginning of the file (if W is SEEK_SET), - the current position (if W is SEEK_CUR), - or the end of the file (if W is SEEK_END). - Set *POS to the new file position. - Returns zero if successful, nonzero if not. */ -typedef int cookie_seek_function_t (void *__cookie, __off64_t *__pos, int __w); - -/* Close COOKIE. */ -typedef int cookie_close_function_t (void *__cookie); - -/* The structure with the cookie function pointers. - The tag name of this struct is _IO_cookie_io_functions_t to - preserve historic C++ mangled names for functions taking - cookie_io_functions_t arguments. That name should not be used in - new code. */ -typedef struct _IO_cookie_io_functions_t -{ - cookie_read_function_t *read; /* Read bytes. */ - cookie_write_function_t *write; /* Write bytes. */ - cookie_seek_function_t *seek; /* Seek/tell file position. */ - cookie_close_function_t *close; /* Close file. */ -} cookie_io_functions_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@cookie_io_functions_t.h.blob deleted file mode 100644 index b8502453e56993355aae48562c173300b5ea9645..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14764 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h deleted file mode 100644 index 2de0f6d0..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Definition of locale_t. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_TYPES_LOCALE_T_H -#define _BITS_TYPES_LOCALE_T_H 1 - -#include <bits/types/__locale_t.h> - -typedef __locale_t locale_t; - -#endif /* bits/types/locale_t.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@locale_t.h.blob deleted file mode 100644 index d48ae05af50182fd2d0ab0cdd19e5752262ed10b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12429 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h deleted file mode 100644 index 8d1baa5c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef __mbstate_t_defined -#define __mbstate_t_defined 1 - -#include <bits/types/__mbstate_t.h> - -typedef __mbstate_t mbstate_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@mbstate_t.h.blob deleted file mode 100644 index 6686d8d6f4242bdb8b6710d09f66d647d73938bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12421 zcmb7KJ&Ytr6`r*@q6<zJIIx6u0&$#-+ruqpbvg+lu(3fp;{bsWNN%dDt7q!A`e(bU zXJ$_XkX=ARf<)o~5fLCnKmZb<B@Q7G5P?Jr0dfRFI@w-cRdv;LO~0;bZ?IZzzkc<8 zzxPx9;^M>qym#-(;$*R0*Cktu<!elytGZb#Ce<=$`BJuYSrT5oOc&2mL8{d((qvn= z=e$}aId2(Nb$j{6$rBbIymYecWV_@Q6<yAj-+b-C=`v$0UZu3o*~{z2hqrG%eiG17 zb=jCFTK?ck#+6*^r*fI5WhNC-ELEC`Clx$f8eNum&-|&R-0@1apec|(;otdFz}3hE zztUC5b5x=?9xPX)(~oZa_1Ax#cp0qPwYWwFBl?*PBy}b!iCPB_a1}PYFWfyXn!9Ha zO^kiCTdL3~?kMv-yMzGPlIHlCQsr4)3r#pOnqk${lJ8Da!OMVIa2!!}$!WUfIRlq> zm13<Yjs<4H1xvHG-b(wz=YE+@xQ#X)uZmi8^|2JOAxKUH1mN*_kX>64x_4<z+%*$? zr$zYHZ{7~&l=`5R*I8!+D&4B6ctk2=a2xxQuQo&+1b$$2OQ(3r+5uTiezxJp(bxa* zRw%yD4pn#51gbZ3aAeUWqF!ak^&}>eH(43eR$j^_%~^q`%+MC9?Wjs$|N4Wk21h&D zy!Zy_h9Tl82Fz$(pL3S-IxV`2DqdG|V7?)a8AQ+rem8qHf>8xz$N>k`_uH~O=6Z0t zROj*$s%2MkNLKU_yjKz9T91)|=8~=%{^r0iTaa#!9!=fQN<~!h?f{I+ZDN~niiT!M zsELEWefG^THg$lbO8aBr6iy86`=~`7kfvZih_|#PyOap9nN=6ZJy(LXPuQVh0_(0A zR9pqXXDfqoK}=V<(fYji>X$=By*?l%@Ygh6A9tQk86#L=5meh^Cjpa20Ep7|>Drva z3#^q;@jv35VouT0o;-Ucklg9zb*F+iSxs8JMw@7bLZGSyN(}^|x(wK%$~A34*BB0= z)V(RH5l+WETC|L%D{<Kv?0oUoI`pg&+vGN(=f?%^MG#qWyb%Ddx-KRZU`&NT8dDE| zS^F9SM2q7SAo2<?O0p5iJI;kh$$cu~K;)82)RaK!4?7t2bU4umyq7aL6N*wnWXLKY zfL=D2{1J{KI@wHHF%sCv<T<+x`q)?`D2N2fRo?(Ty`nY}P}Q1fLGZ_yT;gEhDQx?t zJvjo5Rn;w_XU$|Xk$FUxOV+lPvB90EKMp%z8@Wt9EN8Tm4n<6T$S;mZi+8NIJ!+>- zLq*w%i~Ir!KlF_);i@^u`ahIhqK-gGK}ST0AlyvDoI*tiGTo673BB(AQ7o1O+u7>* z{J&WUDB!eY#VXcvYMqy4M4I>>dC&(*-LPt9dW2Ds3{tmZGDHz4w+`&oM)s04T<i9O zpIr~zB2&2bx=nV$dpe)dsIhmFY#2ReZ-*(m4?BBh4yJ$;Hx}UUA<R)xC_5~PG0&}u zT$gtGI?KNifdGgF4xPv&hRES8?>z`OG%k&(w621n8RPic+_tTCy9GoJOOqq>$LnDY z`VYm-AczMMNJEn~BhdCGFu4x`eb`v{@wVY@U6oMA@rW~2F!v?Uexa#k2>RyBBppfx zB0;L4j|_uGty>V-L{UOoJN|e;8d)I|P~*y}wTAA`I;h2p?IJQm(YA-8QaOX`hq#sD zePSk;;QdG>6m!B0COdy*EVzX<wcxkU#cErt4u_o>%l)7rPO;v}7pRe6U@ZarqQDN$ zWyZS}9AG@x10>pl1>}+mXnv>J={*i~E+RY;wLE|vX^lla$OT8~8dV6g3Rwjt4%tBN zBf9|2OmE7%kQ*u($&Z$>z-nm<)j!R;B2{F+;)uBuXbW4pzW>%&!pdcWn~GZMMbW`- z5S11!&CW_-W12KAgP|_)8OjN|X{?r@v}x+6_0)DBnm_KyLa2m+f0B}^b&ZeN&^ULy zV|`X{b-qgbeOefZsG!@ds(H16fpOH#J0m$fN%xrJVFl$0o79PM4kx#}9=jHZRvc@E zeaeoSmGPbeJ+URA^I<)n>^596>`VTvnMbaU=15;RV5a~>T?%NI<d+qJHE0lt&IzMZ z<EdhaB#0)P-W2HFyrwwfPvaoeGpKn@+l2%aO3bPYTE@a}sQKPlv(%ToY+y>X)xiSF z4`2FTq@CJ_)>Nw21a=3sF3URB66lrp-N}{rsQcE+jAD78c6vh_cqs@9y%iZvr>Lp* z;sc_0l;|jNS;Cr2Kv$<v#;sxT2EZ8NH-wr{Kyw#^PVA1(uD`?D<DL!5a5`g!yMg@^ z>|_Ibp$hKw71x0^V!8BYVpjK0zI1RiWaNXEt$^gkR|JN_-ngXEzV7&{asz9t{Ut_B z+)E-W-ZZxLedp)j3d^Vw3EBd-f%f@u`4eMnyseG<6m7JE!q2rnt!!8bX{a|W$m%80 zflDS~S;?KqmA+*h1+)ttpF$67m^-)~P~upp(0&0GxvZgV&dw(TiZImA5tnrRPAM)c z6@}>JI?i-U*JOX0Hk_iob=ExZCvtOM%>69qaG9(9|Bu&;2#{KLHnF+k*s4#;bll#e zju<vu#9p9!z(QZx-8)+~vpwhPKRsHdd;>PU@b^Zyco@LcC~O-+R8hD1yzDt$bUZBL zj*m<7sw<}l)4mPSf{cbEcO{)fHt+rrxNMvPH!rGWm9*jGBRddwP*He(yruwv>E-nS zA?|WCuifEZ!2Na&7tr3JjTA+Xv~dFqnlV73^c#rXxwITr2W4x32V*=^UKcUGpW%mC zVZ0oGyJ@x4hO{KS*GFZLYYf(%05*j5rIkv|<xCKaC_`)8Xhs4zBXGdX9qHHF=u;z* zAJt(WB^uaA`Rm@`9aKCja#q%A)>cl`B$xY|KD4?I%ZBfm-5HF+($lP<{m`4Ewie=` zUqodD6P_aB<}Bp-!tNxNvNP&SQ*RFha)&tZz&2h}Lc<p>8==1pz@$fCf+@cr@O@c0 z6hK2{zYq_+8`9Yj1*1iJe;qanY@Pcu=`j_RtN`a5?Dm48WZ<fa;WLmA-YpZDdGaJ@ zRKWfeu5AKsQ05bs3^)gwufl}K2>ZtJ0GJ)653RE9?5%^3YE(i{ztW)%t^KU_3FaY5 zRxGPc!ye}iyN`x)tg@q`G!`R~yg|t=OwGK=f_pZzWi$ibtfo2sd5kynnn2r$UjbTN zHw)|pKpHk-$uwwMVl&MRM1{>&5M<8Fduq6z2;<O^m=9#wR=@u3PyX{=^UYkuj+y?# z1j?zV_X*>8d2QQm-I(LN;~mMdkKSyQYx7S8u2D(U`m@HmgGGLzH!3(>95d*d$6}+@ zY<^X5)VAelfk8QoM>9XUDLc4&(0Yxm=M8LTM%==lMp9CZ_Os3p`jX?=qFi6`)sq{P z{W%cZ#tkEJjjs&8hG31F2X4mn7Gr*|M$3lM9m!|AwnqZUSQHIVsT_K2;@{OcvwEYz z9@*xkF-mNl+b^;nKJLGqj7kDVjeiztHb!RY=nJ0{&p4#V4IgEmDst?^XDm~1e3Tsm zZRzJ{w-NYmB2=&cnr3tjI3=uUW>8#1-)PSJ9bOy)Be$&6H(@?})&N&{diVGT7g&>- zX-HhVpcmWWVi45|$`1_8b3u}dZFWE#3vsn(b}jeQH~NKz^B6!3h!bGAdo<8u@}to{ zo;8oe_i;L&Pd*-e{5{|meviIbJbU%upFFzxqdUL&%wqI&_31x9T)gwa^HLiV+Sgk) zb#4uK4F6ud@WOLF56|>{{g0DtH?H0O*vZu=_+S41_Pf7ZId(%n{ww*#ojW)6D|fEl zf9B-c;@W-9!AtV~iD7v4_<z~gZvN}{*9R<8kdRj_2ZGz5vVRYybB}M`1@0#|PR^du Lzwa-uG{^q~B2p$J diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h deleted file mode 100644 index 47eaa283..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef __sig_atomic_t_defined -#define __sig_atomic_t_defined 1 - -#include <bits/types.h> - -/* An integral type that can be modified atomically, without the - possibility of a signal arriving in the middle of the operation. */ -typedef __sig_atomic_t sig_atomic_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h.blob deleted file mode 100644 index 982c9572d5399481d31ff5d667e45e1d2741b039..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12497 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h deleted file mode 100644 index e8b28de7..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef __sigevent_t_defined -#define __sigevent_t_defined 1 - -#include <bits/wordsize.h> -#include <bits/types.h> -#include <bits/types/__sigval_t.h> - -#define __SIGEV_MAX_SIZE 64 -#if __WORDSIZE == 64 -# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 4) -#else -# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 3) -#endif - -/* Forward declaration. */ -#ifndef __have_pthread_attr_t -typedef union pthread_attr_t pthread_attr_t; -# define __have_pthread_attr_t 1 -#endif - -/* Structure to transport application-defined values with signals. */ -typedef struct sigevent - { - __sigval_t sigev_value; - int sigev_signo; - int sigev_notify; - - union - { - int _pad[__SIGEV_PAD_SIZE]; - - /* When SIGEV_SIGNAL and SIGEV_THREAD_ID set, LWP ID of the - thread to receive the signal. */ - __pid_t _tid; - - struct - { - void (*_function) (__sigval_t); /* Function to start. */ - pthread_attr_t *_attribute; /* Thread attributes. */ - } _sigev_thread; - } _sigev_un; - } sigevent_t; - -/* POSIX names to access some of the members. */ -#define sigev_notify_function _sigev_un._sigev_thread._function -#define sigev_notify_attributes _sigev_un._sigev_thread._attribute - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h.blob deleted file mode 100644 index 7e129864d20df5dce5ad68b787af65e4bfc5477f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14365 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 G_5Tkb%$NWG diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h deleted file mode 100644 index 43c4e009..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h +++ /dev/null @@ -1,151 +0,0 @@ -#ifndef __siginfo_t_defined -#define __siginfo_t_defined 1 - -#include <bits/wordsize.h> -#include <bits/types.h> -#include <bits/types/__sigval_t.h> - -#define __SI_MAX_SIZE 128 -#if __WORDSIZE == 64 -# define __SI_PAD_SIZE ((__SI_MAX_SIZE / sizeof (int)) - 4) -#else -# define __SI_PAD_SIZE ((__SI_MAX_SIZE / sizeof (int)) - 3) -#endif - -/* Some fields of siginfo_t have architecture-specific variations. */ -#include <bits/siginfo-arch.h> -#ifndef __SI_ALIGNMENT -# define __SI_ALIGNMENT /* nothing */ -#endif -#ifndef __SI_BAND_TYPE -# define __SI_BAND_TYPE long int -#endif -#ifndef __SI_CLOCK_T -# define __SI_CLOCK_T __clock_t -#endif -#ifndef __SI_ERRNO_THEN_CODE -# define __SI_ERRNO_THEN_CODE 1 -#endif -#ifndef __SI_HAVE_SIGSYS -# define __SI_HAVE_SIGSYS 1 -#endif -#ifndef __SI_SIGFAULT_ADDL -# define __SI_SIGFAULT_ADDL /* nothing */ -#endif - -typedef struct - { - int si_signo; /* Signal number. */ -#if __SI_ERRNO_THEN_CODE - int si_errno; /* If non-zero, an errno value associated with - this signal, as defined in <errno.h>. */ - int si_code; /* Signal code. */ -#else - int si_code; - int si_errno; -#endif -#if __WORDSIZE == 64 - int __pad0; /* Explicit padding. */ -#endif - - union - { - int _pad[__SI_PAD_SIZE]; - - /* kill(). */ - struct - { - __pid_t si_pid; /* Sending process ID. */ - __uid_t si_uid; /* Real user ID of sending process. */ - } _kill; - - /* POSIX.1b timers. */ - struct - { - int si_tid; /* Timer ID. */ - int si_overrun; /* Overrun count. */ - __sigval_t si_sigval; /* Signal value. */ - } _timer; - - /* POSIX.1b signals. */ - struct - { - __pid_t si_pid; /* Sending process ID. */ - __uid_t si_uid; /* Real user ID of sending process. */ - __sigval_t si_sigval; /* Signal value. */ - } _rt; - - /* SIGCHLD. */ - struct - { - __pid_t si_pid; /* Which child. */ - __uid_t si_uid; /* Real user ID of sending process. */ - int si_status; /* Exit value or signal. */ - __SI_CLOCK_T si_utime; - __SI_CLOCK_T si_stime; - } _sigchld; - - /* SIGILL, SIGFPE, SIGSEGV, SIGBUS. */ - struct - { - void *si_addr; /* Faulting insn/memory ref. */ - __SI_SIGFAULT_ADDL - short int si_addr_lsb; /* Valid LSB of the reported address. */ - union - { - /* used when si_code=SEGV_BNDERR */ - struct - { - void *_lower; - void *_upper; - } _addr_bnd; - /* used when si_code=SEGV_PKUERR */ - __uint32_t _pkey; - } _bounds; - } _sigfault; - - /* SIGPOLL. */ - struct - { - __SI_BAND_TYPE si_band; /* Band event for SIGPOLL. */ - int si_fd; - } _sigpoll; - - /* SIGSYS. */ -#if __SI_HAVE_SIGSYS - struct - { - void *_call_addr; /* Calling user insn. */ - int _syscall; /* Triggering system call number. */ - unsigned int _arch; /* AUDIT_ARCH_* of syscall. */ - } _sigsys; -#endif - } _sifields; - } siginfo_t __SI_ALIGNMENT; - - -/* X/Open requires some more fields with fixed names. */ -#define si_pid _sifields._kill.si_pid -#define si_uid _sifields._kill.si_uid -#define si_timerid _sifields._timer.si_tid -#define si_overrun _sifields._timer.si_overrun -#define si_status _sifields._sigchld.si_status -#define si_utime _sifields._sigchld.si_utime -#define si_stime _sifields._sigchld.si_stime -#define si_value _sifields._rt.si_sigval -#define si_int _sifields._rt.si_sigval.sival_int -#define si_ptr _sifields._rt.si_sigval.sival_ptr -#define si_addr _sifields._sigfault.si_addr -#define si_addr_lsb _sifields._sigfault.si_addr_lsb -#define si_lower _sifields._sigfault._bounds._addr_bnd._lower -#define si_upper _sifields._sigfault._bounds._addr_bnd._upper -#define si_pkey _sifields._sigfault._bounds._pkey -#define si_band _sifields._sigpoll.si_band -#define si_fd _sifields._sigpoll.si_fd -#if __SI_HAVE_SIGSYS -# define si_call_addr _sifields._sigsys._call_addr -# define si_syscall _sifields._sigsys._syscall -# define si_arch _sifields._sigsys._arch -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h.blob deleted file mode 100644 index a022af0d807c11d0c8564fd0aab9e796b437a3ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20823 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h deleted file mode 100644 index 8b27e911..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef __sigset_t_defined -#define __sigset_t_defined 1 - -#include <bits/types/__sigset_t.h> - -/* A set of signals to be blocked, unblocked, or waited for. */ -typedef __sigset_t sigset_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h.blob deleted file mode 100644 index 3325d9ecb9e01e1fc0d53f3d8835eb3f98d78ec4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12472 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 G#qa;J6+2J> diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h deleted file mode 100644 index a05d7f46..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef __sigval_t_defined -#define __sigval_t_defined - -#include <bits/types/__sigval_t.h> - -/* To avoid sigval_t (not a standard type name) having C++ name - mangling depending on whether the selected standard includes union - sigval, it should not be defined at all when using a standard for - which the sigval name is not reserved; in that case, headers should - not include <bits/types/sigval_t.h> and should use only the - internal __sigval_t name. */ -#ifndef __USE_POSIX199309 -# error "sigval_t defined for standard not including union sigval" -#endif - -typedef __sigval_t sigval_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h.blob deleted file mode 100644 index bdd8d7b907fd489d704d3ce322afdd3f0922b3e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12412 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 X)&9LFS^soCzc#<~l=(fo)Z9J>m|!Fx diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h deleted file mode 100644 index 772ba7e7..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Define stack_t. Linux version. - Copyright (C) 1998-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef __stack_t_defined -#define __stack_t_defined 1 - -#define __need_size_t -#include <stddef.h> - -/* Structure describing a signal stack. */ -typedef struct - { - void *ss_sp; - int ss_flags; - size_t ss_size; - } stack_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h.blob deleted file mode 100644 index cd3b5052a0c4a5df8cf14156f011f2e83f21abb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12838 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 L_lWr2Q*!(tzHO*J diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h deleted file mode 100644 index fc261502..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h +++ /dev/null @@ -1,120 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef __struct_FILE_defined -#define __struct_FILE_defined 1 - -/* Caution: The contents of this file are not part of the official - stdio.h API. However, much of it is part of the official *binary* - interface, and therefore cannot be changed. */ - -#if defined _IO_USE_OLD_IO_FILE && !defined _LIBC -# error "_IO_USE_OLD_IO_FILE should only be defined when building libc itself" -#endif - -#if defined _IO_lock_t_defined && !defined _LIBC -# error "_IO_lock_t_defined should only be defined when building libc itself" -#endif - -#include <bits/types.h> - -struct _IO_FILE; -struct _IO_marker; -struct _IO_codecvt; -struct _IO_wide_data; - -/* During the build of glibc itself, _IO_lock_t will already have been - defined by internal headers. */ -#ifndef _IO_lock_t_defined -typedef void _IO_lock_t; -#endif - -/* The tag name of this struct is _IO_FILE to preserve historic - C++ mangled names for functions taking FILE* arguments. - That name should not be used in new code. */ -struct _IO_FILE -{ - int _flags; /* High-order word is _IO_MAGIC; rest is flags. */ - - /* The following pointers correspond to the C++ streambuf protocol. */ - char *_IO_read_ptr; /* Current read pointer */ - char *_IO_read_end; /* End of get area. */ - char *_IO_read_base; /* Start of putback+get area. */ - char *_IO_write_base; /* Start of put area. */ - char *_IO_write_ptr; /* Current put pointer. */ - char *_IO_write_end; /* End of put area. */ - char *_IO_buf_base; /* Start of reserve area. */ - char *_IO_buf_end; /* End of reserve area. */ - - /* The following fields are used to support backing up and undo. */ - char *_IO_save_base; /* Pointer to start of non-current get area. */ - char *_IO_backup_base; /* Pointer to first valid character of backup area */ - char *_IO_save_end; /* Pointer to end of non-current get area. */ - - struct _IO_marker *_markers; - - struct _IO_FILE *_chain; - - int _fileno; - int _flags2; - __off_t _old_offset; /* This used to be _offset but it's too small. */ - - /* 1+column number of pbase(); 0 is unknown. */ - unsigned short _cur_column; - signed char _vtable_offset; - char _shortbuf[1]; - - _IO_lock_t *_lock; -#ifdef _IO_USE_OLD_IO_FILE -}; - -struct _IO_FILE_complete -{ - struct _IO_FILE _file; -#endif - __off64_t _offset; - /* Wide character stream stuff. */ - struct _IO_codecvt *_codecvt; - struct _IO_wide_data *_wide_data; - struct _IO_FILE *_freeres_list; - void *_freeres_buf; - size_t __pad5; - int _mode; - /* Make sure we don't get into trouble again. */ - char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)]; -}; - -/* These macros are used by bits/stdio.h and internal headers. */ -#define __getc_unlocked_body(_fp) \ - (__glibc_unlikely ((_fp)->_IO_read_ptr >= (_fp)->_IO_read_end) \ - ? __uflow (_fp) : *(unsigned char *) (_fp)->_IO_read_ptr++) - -#define __putc_unlocked_body(_ch, _fp) \ - (__glibc_unlikely ((_fp)->_IO_write_ptr >= (_fp)->_IO_write_end) \ - ? __overflow (_fp, (unsigned char) (_ch)) \ - : (unsigned char) (*(_fp)->_IO_write_ptr++ = (_ch))) - -#define _IO_EOF_SEEN 0x0010 -#define __feof_unlocked_body(_fp) (((_fp)->_flags & _IO_EOF_SEEN) != 0) - -#define _IO_ERR_SEEN 0x0020 -#define __ferror_unlocked_body(_fp) (((_fp)->_flags & _IO_ERR_SEEN) != 0) - -#define _IO_USER_LOCK 0x8000 -/* Many more flag bits are defined internally. */ - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h.blob deleted file mode 100644 index bc47685ffa58ee6280ca8f345ea35645ef4e9536..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16640 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 EAAa<G;s5{u diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h deleted file mode 100644 index 377395c5..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Define struct __jmp_buf_tag. - Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef __jmp_buf_tag_defined -#define __jmp_buf_tag_defined 1 - -#include <bits/setjmp.h> /* Get `__jmp_buf'. */ -#include <bits/types/__sigset_t.h> - -/* Calling environment, plus possibly a saved signal mask. */ -struct __jmp_buf_tag - { - /* NOTE: The machine-dependent definitions of `__sigsetjmp' - assume that a `jmp_buf' begins with a `__jmp_buf' and that - `__mask_was_saved' follows it. Do not move these members - or add others before it. */ - __jmp_buf __jmpbuf; /* Calling environment. */ - int __mask_was_saved; /* Saved the signal mask? */ - __sigset_t __saved_mask; /* Saved signal mask. */ - }; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h.blob deleted file mode 100644 index cce2c13c6611a05f0aad3590309dde18d5550ec3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12902 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h deleted file mode 100644 index 17cc1ac8..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef __itimerspec_defined -#define __itimerspec_defined 1 - -#include <bits/types.h> -#include <bits/types/struct_timespec.h> - -/* POSIX.1b structure for timer start values and intervals. */ -struct itimerspec - { - struct timespec it_interval; - struct timespec it_value; - }; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h.blob deleted file mode 100644 index 4ae6cdf73d540332b450b5859d685dd308a63a83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12635 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h deleted file mode 100644 index 7b080444..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Sched parameter structure. Generic version. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_TYPES_STRUCT_SCHED_PARAM -#define _BITS_TYPES_STRUCT_SCHED_PARAM 1 - -/* Data structure to describe a process' schedulability. */ -struct sched_param -{ - int sched_priority; -}; - -#endif /* bits/types/struct_sched_param.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h.blob deleted file mode 100644 index e61a1485938366bccfeb24599f10aa14ac7748c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12429 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 X#U+m}!#>YG^X#od{r}G7iB|OgM5G|h diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h deleted file mode 100644 index 19242baf..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Define struct sigstack. - Copyright (C) 1998-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef __sigstack_defined -#define __sigstack_defined 1 - -/* Structure describing a signal stack (obsolete). */ -struct sigstack - { - void *ss_sp; /* Signal stack pointer. */ - int ss_onstack; /* Nonzero if executing on this stack. */ - }; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h.blob deleted file mode 100644 index 55de81a66316c955d00f723ec218c9c47f4c1f57..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12513 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h deleted file mode 100644 index 489e8113..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h +++ /dev/null @@ -1,33 +0,0 @@ -/* NB: Include guard matches what <linux/time.h> uses. */ -#ifndef _STRUCT_TIMESPEC -#define _STRUCT_TIMESPEC 1 - -#include <bits/types.h> -#include <bits/endian.h> -#include <bits/types/time_t.h> - -/* POSIX.1b structure for a time value. This is like a `struct timeval' but - has nanoseconds instead of microseconds. */ -struct timespec -{ -#ifdef __USE_TIME_BITS64 - __time64_t tv_sec; /* Seconds. */ -#else - __time_t tv_sec; /* Seconds. */ -#endif -#if __WORDSIZE == 64 \ - || (defined __SYSCALL_WORDSIZE && __SYSCALL_WORDSIZE == 64) \ - || (__TIMESIZE == 32 && !defined __USE_TIME_BITS64) - __syscall_slong_t tv_nsec; /* Nanoseconds. */ -#else -# if __BYTE_ORDER == __BIG_ENDIAN - int: 32; /* Padding. */ - long int tv_nsec; /* Nanoseconds. */ -# else - long int tv_nsec; /* Nanoseconds. */ - int: 32; /* Padding. */ -# endif -#endif -}; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h.blob deleted file mode 100644 index ee78029fce7b0741fb2a9d9ca63b7d3d021c7be2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12862 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 T3V3fH+rEEW{(EL{AZ_-4CF-v< diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h deleted file mode 100644 index 3466137c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef __timeval_defined -#define __timeval_defined 1 - -#include <bits/types.h> - -/* A time value that is accurate to the nearest - microsecond but also has a range of years. */ -struct timeval -{ -#ifdef __USE_TIME_BITS64 - __time64_t tv_sec; /* Seconds. */ - __suseconds64_t tv_usec; /* Microseconds. */ -#else - __time_t tv_sec; /* Seconds. */ - __suseconds_t tv_usec; /* Microseconds. */ -#endif -}; -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h.blob deleted file mode 100644 index aaafce1c098ac33f41e0e7b14f3b6b6244b3b34d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12678 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 Q;f3Mh8TIpMaH^F1Ke&&0EC2ui diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h deleted file mode 100644 index b13b6312..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef __struct_tm_defined -#define __struct_tm_defined 1 - -#include <bits/types.h> - -/* ISO C `broken-down time' structure. */ -struct tm -{ - int tm_sec; /* Seconds. [0-60] (1 leap second) */ - int tm_min; /* Minutes. [0-59] */ - int tm_hour; /* Hours. [0-23] */ - int tm_mday; /* Day. [1-31] */ - int tm_mon; /* Month. [0-11] */ - int tm_year; /* Year - 1900. */ - int tm_wday; /* Day of week. [0-6] */ - int tm_yday; /* Days in year.[0-365] */ - int tm_isdst; /* DST. [-1/0/1]*/ - -# ifdef __USE_MISC - long int tm_gmtoff; /* Seconds east of UTC. */ - const char *tm_zone; /* Timezone abbreviation. */ -# else - long int __tm_gmtoff; /* Seconds east of UTC. */ - const char *__tm_zone; /* Timezone abbreviation. */ -# endif -}; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h.blob deleted file mode 100644 index 1906a4afb0e4dc53d0b4e9daa4e8b08aa7554e5b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13354 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 QYooQj#DAW*_Ib?wAE2W}t^fc4 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h deleted file mode 100644 index 84d67f6a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef __time_t_defined -#define __time_t_defined 1 - -#include <bits/types.h> - -/* Returned by `time'. */ -#ifdef __USE_TIME_BITS64 -typedef __time64_t time_t; -#else -typedef __time_t time_t; -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h.blob deleted file mode 100644 index 740bb260f80b064e3982fb4a3295e6384934a92c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12352 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h deleted file mode 100644 index d71a4130..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef __timer_t_defined -#define __timer_t_defined 1 - -#include <bits/types.h> - -/* Timer ID returned by `timer_create'. */ -typedef __timer_t timer_t; - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h.blob deleted file mode 100644 index e3f1df207a1bced7222146a9c68778ae02273202..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12389 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 Z7w!M^!Nd6(2zzql1USR*#q62p_J6VG8g~Ey diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h deleted file mode 100644 index fbd63dbc..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef __wint_t_defined -#define __wint_t_defined 1 - -/* Some versions of stddef.h provide wint_t, even though neither the - C nor C++ standards, nor POSIX, specifies this. We assume that - stddef.h will define the macro _WINT_T if and only if it provides - wint_t, and conversely, that it will avoid providing wint_t if - _WINT_T is already defined. */ -#ifndef _WINT_T -#define _WINT_T 1 - -/* Integral type unchanged by default argument promotions that can - hold any value corresponding to members of the extended character - set, as well as at least one value that does not correspond to any - member of the extended character set. */ -#ifndef __WINT_TYPE__ -# define __WINT_TYPE__ unsigned int -#endif - -typedef __WINT_TYPE__ wint_t; - -#endif /* _WINT_T */ -#endif /* bits/types/wint_t.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@wint_t.h.blob deleted file mode 100644 index 6cae8947ca05b1afb6e0c4e8de7536f287fd2ca2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12351 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h deleted file mode 100644 index 6b6ec0d2..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h +++ /dev/null @@ -1,106 +0,0 @@ -/* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. - Copyright (C) 2012-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_TYPES_H -# error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." -#endif - -#ifndef _BITS_TYPESIZES_H -#define _BITS_TYPESIZES_H 1 - -/* See <bits/types.h> for the meaning of these macros. This file exists so - that <bits/types.h> need not vary across different GNU platforms. */ - -/* X32 kernel interface is 64-bit. */ -#if defined __x86_64__ && defined __ILP32__ -# define __SYSCALL_SLONG_TYPE __SQUAD_TYPE -# define __SYSCALL_ULONG_TYPE __UQUAD_TYPE -#else -# define __SYSCALL_SLONG_TYPE __SLONGWORD_TYPE -# define __SYSCALL_ULONG_TYPE __ULONGWORD_TYPE -#endif - -#define __DEV_T_TYPE __UQUAD_TYPE -#define __UID_T_TYPE __U32_TYPE -#define __GID_T_TYPE __U32_TYPE -#define __INO_T_TYPE __SYSCALL_ULONG_TYPE -#define __INO64_T_TYPE __UQUAD_TYPE -#define __MODE_T_TYPE __U32_TYPE -#ifdef __x86_64__ -# define __NLINK_T_TYPE __SYSCALL_ULONG_TYPE -# define __FSWORD_T_TYPE __SYSCALL_SLONG_TYPE -#else -# define __NLINK_T_TYPE __UWORD_TYPE -# define __FSWORD_T_TYPE __SWORD_TYPE -#endif -#define __OFF_T_TYPE __SYSCALL_SLONG_TYPE -#define __OFF64_T_TYPE __SQUAD_TYPE -#define __PID_T_TYPE __S32_TYPE -#define __RLIM_T_TYPE __SYSCALL_ULONG_TYPE -#define __RLIM64_T_TYPE __UQUAD_TYPE -#define __BLKCNT_T_TYPE __SYSCALL_SLONG_TYPE -#define __BLKCNT64_T_TYPE __SQUAD_TYPE -#define __FSBLKCNT_T_TYPE __SYSCALL_ULONG_TYPE -#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE -#define __FSFILCNT_T_TYPE __SYSCALL_ULONG_TYPE -#define __FSFILCNT64_T_TYPE __UQUAD_TYPE -#define __ID_T_TYPE __U32_TYPE -#define __CLOCK_T_TYPE __SYSCALL_SLONG_TYPE -#define __TIME_T_TYPE __SYSCALL_SLONG_TYPE -#define __USECONDS_T_TYPE __U32_TYPE -#define __SUSECONDS_T_TYPE __SYSCALL_SLONG_TYPE -#define __SUSECONDS64_T_TYPE __SQUAD_TYPE -#define __DADDR_T_TYPE __S32_TYPE -#define __KEY_T_TYPE __S32_TYPE -#define __CLOCKID_T_TYPE __S32_TYPE -#define __TIMER_T_TYPE void * -#define __BLKSIZE_T_TYPE __SYSCALL_SLONG_TYPE -#define __FSID_T_TYPE struct { int __val[2]; } -#define __SSIZE_T_TYPE __SWORD_TYPE -#define __CPU_MASK_TYPE __SYSCALL_ULONG_TYPE - -#ifdef __x86_64__ -/* Tell the libc code that off_t and off64_t are actually the same type - for all ABI purposes, even if possibly expressed as different base types - for C type-checking purposes. */ -# define __OFF_T_MATCHES_OFF64_T 1 - -/* Same for ino_t and ino64_t. */ -# define __INO_T_MATCHES_INO64_T 1 - -/* And for __rlim_t and __rlim64_t. */ -# define __RLIM_T_MATCHES_RLIM64_T 1 - -/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ -# define __STATFS_MATCHES_STATFS64 1 - -/* And for getitimer, setitimer and rusage */ -# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 -#else -# define __RLIM_T_MATCHES_RLIM64_T 0 - -# define __STATFS_MATCHES_STATFS64 0 - -# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 -#endif - -/* Number of descriptors that can fit in an `fd_set'. */ -#define __FD_SETSIZE 1024 - - -#endif /* bits/typesizes.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h.blob deleted file mode 100644 index 55c1a4d7df67c72a32b9da77d1637cbabb70796c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16140 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 IPX*fiKbf#0JOBUy diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h deleted file mode 100644 index c2d523c5..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h +++ /dev/null @@ -1,50 +0,0 @@ -/* Inline functions to return unsigned integer values unchanged. - Copyright (C) 2017-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#if !defined _NETINET_IN_H && !defined _ENDIAN_H -# error "Never use <bits/uintn-identity.h> directly; include <netinet/in.h> or <endian.h> instead." -#endif - -#ifndef _BITS_UINTN_IDENTITY_H -#define _BITS_UINTN_IDENTITY_H 1 - -#include <bits/types.h> - -/* These inline functions are to ensure the appropriate type - conversions and associated diagnostics from macros that convert to - a given endianness. */ - -static __inline __uint16_t -__uint16_identity (__uint16_t __x) -{ - return __x; -} - -static __inline __uint32_t -__uint32_identity (__uint32_t __x) -{ - return __x; -} - -static __inline __uint64_t -__uint64_identity (__uint64_t __x) -{ - return __x; -} - -#endif /* _BITS_UINTN_IDENTITY_H. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h.blob deleted file mode 100644 index a7bb88bf7859e84d1b2bcbefbb95dccee7b9ddf2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13149 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 K&v=I-{{9bpI{-fb diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h deleted file mode 100644 index c523ef67..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h +++ /dev/null @@ -1,50 +0,0 @@ -/* System-specific extensions of <unistd.h>, Linux version. - Copyright (C) 2019-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _UNISTD_H -# error "Never include <bits/unistd_ext.h> directly; use <unistd.h> instead." -#endif - -#ifdef __USE_GNU - -/* Return the kernel thread ID (TID) of the current thread. The - returned value is not subject to caching. Most Linux system calls - accept a TID in place of a PID. Using the TID to change properties - of a thread that has been created using pthread_create can lead to - undefined behavior (comparable to manipulating file descriptors - directly that have not been created explicitly). Note that a TID - uniquely identifies a thread only while this thread is running; a - TID can be reused once a thread has exited, even if the thread is - not detached and has not been joined. */ -extern __pid_t gettid (void) __THROW; - -#ifdef __has_include -# if __has_include ("linux/close_range.h") -# include "linux/close_range.h" -# endif -#endif -/* Unshare the file descriptor table before closing file descriptors. */ -#ifndef CLOSE_RANGE_UNSHARE -# define CLOSE_RANGE_UNSHARE (1U << 1) -#endif -/* Set the FD_CLOEXEC bit instead of closing the file descriptor. */ -#ifndef CLOSE_RANGE_CLOEXEC -# define CLOSE_RANGE_CLOEXEC (1U << 2) -#endif - -#endif /* __USE_GNU */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h.blob deleted file mode 100644 index 352d12ab3fe23e90707c3af025a674e6a142e5e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12135 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 N!K=GR4|luW{{eo3%gz7* diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h deleted file mode 100644 index 75134278..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h +++ /dev/null @@ -1,39 +0,0 @@ -/* Definitions of flag bits for `waitpid' et al. - Copyright (C) 1992-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#if !defined _SYS_WAIT_H && !defined _STDLIB_H -# error "Never include <bits/waitflags.h> directly; use <sys/wait.h> instead." -#endif - - -/* Bits in the third argument to `waitpid'. */ -#define WNOHANG 1 /* Don't block waiting. */ -#define WUNTRACED 2 /* Report status of stopped children. */ - -/* Bits in the fourth argument to `waitid'. */ -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -# define WSTOPPED 2 /* Report stopped child (same as WUNTRACED). */ -# define WEXITED 4 /* Report dead child. */ -# define WCONTINUED 8 /* Report continued child. */ -# define WNOWAIT 0x01000000 /* Don't reap, just poll status. */ -#endif - -#define __WNOTHREAD 0x20000000 /* Don't wait on children of other threads - in this group */ -#define __WALL 0x40000000 /* Wait for any child. */ -#define __WCLONE 0x80000000 /* Wait for cloned process. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h.blob deleted file mode 100644 index 9e731e63084a565f0230d15a0704fa060f6a0d8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12698 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h deleted file mode 100644 index ec7c076b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h +++ /dev/null @@ -1,59 +0,0 @@ -/* Definitions of status bits for `wait' et al. - Copyright (C) 1992-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#if !defined _SYS_WAIT_H && !defined _STDLIB_H -# error "Never include <bits/waitstatus.h> directly; use <sys/wait.h> instead." -#endif - - -/* Everything extant so far uses these same bits. */ - - -/* If WIFEXITED(STATUS), the low-order 8 bits of the status. */ -#define __WEXITSTATUS(status) (((status) & 0xff00) >> 8) - -/* If WIFSIGNALED(STATUS), the terminating signal. */ -#define __WTERMSIG(status) ((status) & 0x7f) - -/* If WIFSTOPPED(STATUS), the signal that stopped the child. */ -#define __WSTOPSIG(status) __WEXITSTATUS(status) - -/* Nonzero if STATUS indicates normal termination. */ -#define __WIFEXITED(status) (__WTERMSIG(status) == 0) - -/* Nonzero if STATUS indicates termination by a signal. */ -#define __WIFSIGNALED(status) \ - (((signed char) (((status) & 0x7f) + 1) >> 1) > 0) - -/* Nonzero if STATUS indicates the child is stopped. */ -#define __WIFSTOPPED(status) (((status) & 0xff) == 0x7f) - -/* Nonzero if STATUS indicates the child continued after a stop. We only - define this if <bits/waitflags.h> provides the WCONTINUED flag bit. */ -#ifdef WCONTINUED -# define __WIFCONTINUED(status) ((status) == __W_CONTINUED) -#endif - -/* Nonzero if STATUS indicates the child dumped core. */ -#define __WCOREDUMP(status) ((status) & __WCOREFLAG) - -/* Macros for constructing status values. */ -#define __W_EXITCODE(ret, sig) ((ret) << 8 | (sig)) -#define __W_STOPCODE(sig) ((sig) << 8 | 0x7f) -#define __W_CONTINUED 0xffff -#define __WCOREFLAG 0x80 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h.blob deleted file mode 100644 index 7ae1425fcfd8153c8c43072d6574d822c477cc4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13258 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 D&x;7* diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h deleted file mode 100644 index ce951d9b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h +++ /dev/null @@ -1,49 +0,0 @@ -/* wchar_t type related definitions. - Copyright (C) 2000-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _BITS_WCHAR_H -#define _BITS_WCHAR_H 1 - -/* The fallback definitions, for when __WCHAR_MAX__ or __WCHAR_MIN__ - are not defined, give the right value and type as long as both int - and wchar_t are 32-bit types. Adding L'\0' to a constant value - ensures that the type is correct; it is necessary to use (L'\0' + - 0) rather than just L'\0' so that the type in C++ is the promoted - version of wchar_t rather than the distinct wchar_t type itself. - Because wchar_t in preprocessor #if expressions is treated as - intmax_t or uintmax_t, the expression (L'\0' - 1) would have the - wrong value for WCHAR_MAX in such expressions and so cannot be used - to define __WCHAR_MAX in the unsigned case. */ - -#ifdef __WCHAR_MAX__ -# define __WCHAR_MAX __WCHAR_MAX__ -#elif L'\0' - 1 > 0 -# define __WCHAR_MAX (0xffffffffu + L'\0') -#else -# define __WCHAR_MAX (0x7fffffff + L'\0') -#endif - -#ifdef __WCHAR_MIN__ -# define __WCHAR_MIN __WCHAR_MIN__ -#elif L'\0' - 1 > 0 -# define __WCHAR_MIN (L'\0' + 0) -#else -# define __WCHAR_MIN (-__WCHAR_MAX - 1) -#endif - -#endif /* bits/wchar.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h.blob deleted file mode 100644 index b0fd14247c525adf25e7edd855aedafad55c3407..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12365 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 P7oL0J@-zDPs^#&2Yf%bg diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h deleted file mode 100644 index 70f652bc..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h +++ /dev/null @@ -1,17 +0,0 @@ -/* Determine the wordsize from the preprocessor defines. */ - -#if defined __x86_64__ && !defined __ILP32__ -# define __WORDSIZE 64 -#else -# define __WORDSIZE 32 -#define __WORDSIZE32_SIZE_ULONG 0 -#define __WORDSIZE32_PTRDIFF_LONG 0 -#endif - -#ifdef __x86_64__ -# define __WORDSIZE_TIME64_COMPAT32 1 -/* Both x86-64 and x32 use the 64-bit system call interface. */ -# define __SYSCALL_WORDSIZE 64 -#else -# define __WORDSIZE_TIME64_COMPAT32 0 -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h.blob deleted file mode 100644 index 1a5f8586fc6ee5e9776e430cf5243cc6f76e7450..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12374 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 T+^lftE}nb!>=}4owx9nW!}$xJ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h deleted file mode 100644 index e33abe42..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h +++ /dev/null @@ -1,329 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard 7.4: Character handling <ctype.h> - */ - -#ifndef _CTYPE_H -#define _CTYPE_H 1 - -#include <features.h> -#include <bits/types.h> - -__BEGIN_DECLS - -#ifndef _ISbit -/* These are all the characteristics of characters. - If there get to be more than 16 distinct characteristics, - many things must be changed that use `unsigned short int's. - - The characteristics are stored always in network byte order (big - endian). We define the bit value interpretations here dependent on the - machine's byte order. */ - -# include <bits/endian.h> -# if __BYTE_ORDER == __BIG_ENDIAN -# define _ISbit(bit) (1 << (bit)) -# else /* __BYTE_ORDER == __LITTLE_ENDIAN */ -# define _ISbit(bit) ((bit) < 8 ? ((1 << (bit)) << 8) : ((1 << (bit)) >> 8)) -# endif - -enum -{ - _ISupper = _ISbit (0), /* UPPERCASE. */ - _ISlower = _ISbit (1), /* lowercase. */ - _ISalpha = _ISbit (2), /* Alphabetic. */ - _ISdigit = _ISbit (3), /* Numeric. */ - _ISxdigit = _ISbit (4), /* Hexadecimal numeric. */ - _ISspace = _ISbit (5), /* Whitespace. */ - _ISprint = _ISbit (6), /* Printing. */ - _ISgraph = _ISbit (7), /* Graphical. */ - _ISblank = _ISbit (8), /* Blank (usually SPC and TAB). */ - _IScntrl = _ISbit (9), /* Control character. */ - _ISpunct = _ISbit (10), /* Punctuation. */ - _ISalnum = _ISbit (11) /* Alphanumeric. */ -}; -#endif /* ! _ISbit */ - -/* These are defined in ctype-info.c. - The declarations here must match those in localeinfo.h. - - In the thread-specific locale model (see `uselocale' in <locale.h>) - we cannot use global variables for these as was done in the past. - Instead, the following accessor functions return the address of - each variable, which is local to the current thread if multithreaded. - - These point into arrays of 384, so they can be indexed by any `unsigned - char' value [0,255]; by EOF (-1); or by any `signed char' value - [-128,-1). ISO C requires that the ctype functions work for `unsigned - char' values and for EOF; we also support negative `signed char' values - for broken old programs. The case conversion arrays are of `int's - rather than `unsigned char's because tolower (EOF) must be EOF, which - doesn't fit into an `unsigned char'. But today more important is that - the arrays are also used for multi-byte character sets. */ -extern const unsigned short int **__ctype_b_loc (void) - __THROW __attribute__ ((__const__)); -extern const __int32_t **__ctype_tolower_loc (void) - __THROW __attribute__ ((__const__)); -extern const __int32_t **__ctype_toupper_loc (void) - __THROW __attribute__ ((__const__)); - - -#ifndef __cplusplus -# define __isctype(c, type) \ - ((*__ctype_b_loc ())[(int) (c)] & (unsigned short int) type) -#elif defined __USE_EXTERN_INLINES -# define __isctype_f(type) \ - __extern_inline int \ - is##type (int __c) __THROW \ - { \ - return (*__ctype_b_loc ())[(int) (__c)] & (unsigned short int) _IS##type; \ - } -#endif - -#define __isascii(c) (((c) & ~0x7f) == 0) /* If C is a 7 bit value. */ -#define __toascii(c) ((c) & 0x7f) /* Mask off high bits. */ - -#define __exctype(name) extern int name (int) __THROW - -/* The following names are all functions: - int isCHARACTERISTIC(int c); - which return nonzero iff C has CHARACTERISTIC. - For the meaning of the characteristic names, see the `enum' above. */ -__exctype (isalnum); -__exctype (isalpha); -__exctype (iscntrl); -__exctype (isdigit); -__exctype (islower); -__exctype (isgraph); -__exctype (isprint); -__exctype (ispunct); -__exctype (isspace); -__exctype (isupper); -__exctype (isxdigit); - - -/* Return the lowercase version of C. */ -extern int tolower (int __c) __THROW; - -/* Return the uppercase version of C. */ -extern int toupper (int __c) __THROW; - - -/* ISO C99 introduced one new function. */ -#ifdef __USE_ISOC99 -__exctype (isblank); -#endif - -#ifdef __USE_GNU -/* Test C for a set of character classes according to MASK. */ -extern int isctype (int __c, int __mask) __THROW; -#endif - -#if defined __USE_MISC || defined __USE_XOPEN - -/* Return nonzero iff C is in the ASCII set - (i.e., is no more than 7 bits wide). */ -extern int isascii (int __c) __THROW; - -/* Return the part of C that is in the ASCII set - (i.e., the low-order 7 bits of C). */ -extern int toascii (int __c) __THROW; - -/* These are the same as `toupper' and `tolower' except that they do not - check the argument for being in the range of a `char'. */ -__exctype (_toupper); -__exctype (_tolower); -#endif /* Use X/Open or use misc. */ - -/* This code is needed for the optimized mapping functions. */ -#define __tobody(c, f, a, args) \ - (__extension__ \ - ({ int __res; \ - if (sizeof (c) > 1) \ - { \ - if (__builtin_constant_p (c)) \ - { \ - int __c = (c); \ - __res = __c < -128 || __c > 255 ? __c : (a)[__c]; \ - } \ - else \ - __res = f args; \ - } \ - else \ - __res = (a)[(int) (c)]; \ - __res; })) - -#if !defined __NO_CTYPE -# ifdef __isctype_f -__isctype_f (alnum) -__isctype_f (alpha) -__isctype_f (cntrl) -__isctype_f (digit) -__isctype_f (lower) -__isctype_f (graph) -__isctype_f (print) -__isctype_f (punct) -__isctype_f (space) -__isctype_f (upper) -__isctype_f (xdigit) -# ifdef __USE_ISOC99 -__isctype_f (blank) -# endif -# elif defined __isctype -# define isalnum(c) __isctype((c), _ISalnum) -# define isalpha(c) __isctype((c), _ISalpha) -# define iscntrl(c) __isctype((c), _IScntrl) -# define isdigit(c) __isctype((c), _ISdigit) -# define islower(c) __isctype((c), _ISlower) -# define isgraph(c) __isctype((c), _ISgraph) -# define isprint(c) __isctype((c), _ISprint) -# define ispunct(c) __isctype((c), _ISpunct) -# define isspace(c) __isctype((c), _ISspace) -# define isupper(c) __isctype((c), _ISupper) -# define isxdigit(c) __isctype((c), _ISxdigit) -# ifdef __USE_ISOC99 -# define isblank(c) __isctype((c), _ISblank) -# endif -# endif - -# ifdef __USE_EXTERN_INLINES -__extern_inline int -__NTH (tolower (int __c)) -{ - return __c >= -128 && __c < 256 ? (*__ctype_tolower_loc ())[__c] : __c; -} - -__extern_inline int -__NTH (toupper (int __c)) -{ - return __c >= -128 && __c < 256 ? (*__ctype_toupper_loc ())[__c] : __c; -} -# endif - -# if __GNUC__ >= 2 && defined __OPTIMIZE__ && !defined __cplusplus -# define tolower(c) __tobody (c, tolower, *__ctype_tolower_loc (), (c)) -# define toupper(c) __tobody (c, toupper, *__ctype_toupper_loc (), (c)) -# endif /* Optimizing gcc */ - -# if defined __USE_MISC || defined __USE_XOPEN -# define isascii(c) __isascii (c) -# define toascii(c) __toascii (c) - -# define _tolower(c) ((int) (*__ctype_tolower_loc ())[(int) (c)]) -# define _toupper(c) ((int) (*__ctype_toupper_loc ())[(int) (c)]) -# endif - -#endif /* Not __NO_CTYPE. */ - - -#ifdef __USE_XOPEN2K8 -/* POSIX.1-2008 extended locale interface (see locale.h). */ -# include <bits/types/locale_t.h> - -/* These definitions are similar to the ones above but all functions - take as an argument a handle for the locale which shall be used. */ -# define __isctype_l(c, type, locale) \ - ((locale)->__ctype_b[(int) (c)] & (unsigned short int) type) - -# define __exctype_l(name) \ - extern int name (int, locale_t) __THROW - -/* The following names are all functions: - int isCHARACTERISTIC(int c, locale_t *locale); - which return nonzero iff C has CHARACTERISTIC. - For the meaning of the characteristic names, see the `enum' above. */ -__exctype_l (isalnum_l); -__exctype_l (isalpha_l); -__exctype_l (iscntrl_l); -__exctype_l (isdigit_l); -__exctype_l (islower_l); -__exctype_l (isgraph_l); -__exctype_l (isprint_l); -__exctype_l (ispunct_l); -__exctype_l (isspace_l); -__exctype_l (isupper_l); -__exctype_l (isxdigit_l); - -__exctype_l (isblank_l); - - -/* Return the lowercase version of C in locale L. */ -extern int __tolower_l (int __c, locale_t __l) __THROW; -extern int tolower_l (int __c, locale_t __l) __THROW; - -/* Return the uppercase version of C. */ -extern int __toupper_l (int __c, locale_t __l) __THROW; -extern int toupper_l (int __c, locale_t __l) __THROW; - -# if __GNUC__ >= 2 && defined __OPTIMIZE__ && !defined __cplusplus -# define __tolower_l(c, locale) \ - __tobody (c, __tolower_l, (locale)->__ctype_tolower, (c, locale)) -# define __toupper_l(c, locale) \ - __tobody (c, __toupper_l, (locale)->__ctype_toupper, (c, locale)) -# define tolower_l(c, locale) __tolower_l ((c), (locale)) -# define toupper_l(c, locale) __toupper_l ((c), (locale)) -# endif /* Optimizing gcc */ - - -# ifndef __NO_CTYPE -# define __isalnum_l(c,l) __isctype_l((c), _ISalnum, (l)) -# define __isalpha_l(c,l) __isctype_l((c), _ISalpha, (l)) -# define __iscntrl_l(c,l) __isctype_l((c), _IScntrl, (l)) -# define __isdigit_l(c,l) __isctype_l((c), _ISdigit, (l)) -# define __islower_l(c,l) __isctype_l((c), _ISlower, (l)) -# define __isgraph_l(c,l) __isctype_l((c), _ISgraph, (l)) -# define __isprint_l(c,l) __isctype_l((c), _ISprint, (l)) -# define __ispunct_l(c,l) __isctype_l((c), _ISpunct, (l)) -# define __isspace_l(c,l) __isctype_l((c), _ISspace, (l)) -# define __isupper_l(c,l) __isctype_l((c), _ISupper, (l)) -# define __isxdigit_l(c,l) __isctype_l((c), _ISxdigit, (l)) - -# define __isblank_l(c,l) __isctype_l((c), _ISblank, (l)) - -# ifdef __USE_MISC -# define __isascii_l(c,l) ((l), __isascii (c)) -# define __toascii_l(c,l) ((l), __toascii (c)) -# endif - -# define isalnum_l(c,l) __isalnum_l ((c), (l)) -# define isalpha_l(c,l) __isalpha_l ((c), (l)) -# define iscntrl_l(c,l) __iscntrl_l ((c), (l)) -# define isdigit_l(c,l) __isdigit_l ((c), (l)) -# define islower_l(c,l) __islower_l ((c), (l)) -# define isgraph_l(c,l) __isgraph_l ((c), (l)) -# define isprint_l(c,l) __isprint_l ((c), (l)) -# define ispunct_l(c,l) __ispunct_l ((c), (l)) -# define isspace_l(c,l) __isspace_l ((c), (l)) -# define isupper_l(c,l) __isupper_l ((c), (l)) -# define isxdigit_l(c,l) __isxdigit_l ((c), (l)) - -# define isblank_l(c,l) __isblank_l ((c), (l)) - -# ifdef __USE_MISC -# define isascii_l(c,l) __isascii_l ((c), (l)) -# define toascii_l(c,l) __toascii_l ((c), (l)) -# endif - -# endif /* Not __NO_CTYPE. */ - -#endif /* Use POSIX 2008. */ - -__END_DECLS - -#endif /* ctype.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h.blob deleted file mode 100644 index 28e76f166a37c04e449e19e1c436140d16ac745b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24312 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 KQ1O<F>i+?=<$nqQ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h deleted file mode 100644 index 37be2030..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h +++ /dev/null @@ -1,408 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * POSIX Standard: 5.1.2 Directory Operations <dirent.h> - */ - -#ifndef _DIRENT_H -#define _DIRENT_H 1 - -#include <features.h> - -__BEGIN_DECLS - -#include <bits/types.h> - -#ifdef __USE_XOPEN -# ifndef __ino_t_defined -# ifndef __USE_FILE_OFFSET64 -typedef __ino_t ino_t; -# else -typedef __ino64_t ino_t; -# endif -# define __ino_t_defined -# endif -# if defined __USE_LARGEFILE64 && !defined __ino64_t_defined -typedef __ino64_t ino64_t; -# define __ino64_t_defined -# endif -#endif - -/* This file defines `struct dirent'. - - It defines the macro `_DIRENT_HAVE_D_NAMLEN' iff there is a `d_namlen' - member that gives the length of `d_name'. - - It defines the macro `_DIRENT_HAVE_D_RECLEN' iff there is a `d_reclen' - member that gives the size of the entire directory entry. - - It defines the macro `_DIRENT_HAVE_D_OFF' iff there is a `d_off' - member that gives the file offset of the next directory entry. - - It defines the macro `_DIRENT_HAVE_D_TYPE' iff there is a `d_type' - member that gives the type of the file. - */ - -#include <bits/dirent.h> - -#if defined __USE_MISC && !defined d_fileno -# define d_ino d_fileno /* Backward compatibility. */ -#endif - -/* These macros extract size information from a `struct dirent *'. - They may evaluate their argument multiple times, so it must not - have side effects. Each of these may involve a relatively costly - call to `strlen' on some systems, so these values should be cached. - - _D_EXACT_NAMLEN (DP) returns the length of DP->d_name, not including - its terminating null character. - - _D_ALLOC_NAMLEN (DP) returns a size at least (_D_EXACT_NAMLEN (DP) + 1); - that is, the allocation size needed to hold the DP->d_name string. - Use this macro when you don't need the exact length, just an upper bound. - This macro is less likely to require calling `strlen' than _D_EXACT_NAMLEN. - */ - -#ifdef _DIRENT_HAVE_D_NAMLEN -# define _D_EXACT_NAMLEN(d) ((d)->d_namlen) -# define _D_ALLOC_NAMLEN(d) (_D_EXACT_NAMLEN (d) + 1) -#else -# define _D_EXACT_NAMLEN(d) (strlen ((d)->d_name)) -# ifdef _DIRENT_HAVE_D_RECLEN -# define _D_ALLOC_NAMLEN(d) (((char *) (d) + (d)->d_reclen) - &(d)->d_name[0]) -# else -# define _D_ALLOC_NAMLEN(d) (sizeof (d)->d_name > 1 ? sizeof (d)->d_name \ - : _D_EXACT_NAMLEN (d) + 1) -# endif -#endif - - -#ifdef __USE_MISC -/* File types for `d_type'. */ -enum - { - DT_UNKNOWN = 0, -# define DT_UNKNOWN DT_UNKNOWN - DT_FIFO = 1, -# define DT_FIFO DT_FIFO - DT_CHR = 2, -# define DT_CHR DT_CHR - DT_DIR = 4, -# define DT_DIR DT_DIR - DT_BLK = 6, -# define DT_BLK DT_BLK - DT_REG = 8, -# define DT_REG DT_REG - DT_LNK = 10, -# define DT_LNK DT_LNK - DT_SOCK = 12, -# define DT_SOCK DT_SOCK - DT_WHT = 14 -# define DT_WHT DT_WHT - }; - -/* Convert between stat structure types and directory types. */ -# define IFTODT(mode) (((mode) & 0170000) >> 12) -# define DTTOIF(dirtype) ((dirtype) << 12) -#endif - - -/* This is the data type of directory stream objects. - The actual structure is opaque to users. */ -typedef struct __dirstream DIR; - -/* Close the directory stream DIRP. - Return 0 if successful, -1 if not. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int closedir (DIR *__dirp) __nonnull ((1)); - -/* Open a directory stream on NAME. - Return a DIR stream on the directory, or NULL if it could not be opened. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern DIR *opendir (const char *__name) __nonnull ((1)) - __attribute_malloc__ __attr_dealloc (closedir, 1); - -#ifdef __USE_XOPEN2K8 -/* Same as opendir, but open the stream on the file descriptor FD. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern DIR *fdopendir (int __fd) - __attribute_malloc__ __attr_dealloc (closedir, 1); -#endif - -/* Read a directory entry from DIRP. Return a pointer to a `struct - dirent' describing the entry, or NULL for EOF or error. The - storage returned may be overwritten by a later readdir call on the - same DIR stream. - - If the Large File Support API is selected we have to use the - appropriate interface. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -#ifndef __USE_FILE_OFFSET64 -extern struct dirent *readdir (DIR *__dirp) __nonnull ((1)); -#else -# ifdef __REDIRECT -extern struct dirent *__REDIRECT (readdir, (DIR *__dirp), readdir64) - __nonnull ((1)); -# else -# define readdir readdir64 -# endif -#endif - -#ifdef __USE_LARGEFILE64 -extern struct dirent64 *readdir64 (DIR *__dirp) __nonnull ((1)); -#endif - -#ifdef __USE_POSIX -/* Reentrant version of `readdir'. Return in RESULT a pointer to the - next entry. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -# ifndef __USE_FILE_OFFSET64 -extern int readdir_r (DIR *__restrict __dirp, - struct dirent *__restrict __entry, - struct dirent **__restrict __result) - __nonnull ((1, 2, 3)) __attribute_deprecated__; -# else -# ifdef __REDIRECT -extern int __REDIRECT (readdir_r, - (DIR *__restrict __dirp, - struct dirent *__restrict __entry, - struct dirent **__restrict __result), - readdir64_r) - __nonnull ((1, 2, 3)) __attribute_deprecated__; -# else -# define readdir_r readdir64_r -# endif -# endif - -# ifdef __USE_LARGEFILE64 -extern int readdir64_r (DIR *__restrict __dirp, - struct dirent64 *__restrict __entry, - struct dirent64 **__restrict __result) - __nonnull ((1, 2, 3)) __attribute_deprecated__; -# endif -#endif /* POSIX or misc */ - -/* Rewind DIRP to the beginning of the directory. */ -extern void rewinddir (DIR *__dirp) __THROW __nonnull ((1)); - -#if defined __USE_MISC || defined __USE_XOPEN -# include <bits/types.h> - -/* Seek to position POS on DIRP. */ -extern void seekdir (DIR *__dirp, long int __pos) __THROW __nonnull ((1)); - -/* Return the current position of DIRP. */ -extern long int telldir (DIR *__dirp) __THROW __nonnull ((1)); -#endif - -#ifdef __USE_XOPEN2K8 - -/* Return the file descriptor used by DIRP. */ -extern int dirfd (DIR *__dirp) __THROW __nonnull ((1)); - -# if defined __OPTIMIZE__ && defined _DIR_dirfd -# define dirfd(dirp) _DIR_dirfd (dirp) -# endif - -# ifdef __USE_MISC -# ifndef MAXNAMLEN -/* Get the definitions of the POSIX.1 limits. */ -# include <bits/posix1_lim.h> - -/* `MAXNAMLEN' is the BSD name for what POSIX calls `NAME_MAX'. */ -# ifdef NAME_MAX -# define MAXNAMLEN NAME_MAX -# else -# define MAXNAMLEN 255 -# endif -# endif -# endif - -# define __need_size_t -# include <stddef.h> - -/* Scan the directory DIR, calling SELECTOR on each directory entry. - Entries for which SELECT returns nonzero are individually malloc'd, - sorted using qsort with CMP, and collected in a malloc'd array in - *NAMELIST. Returns the number of entries selected, or -1 on error. - - This function is a cancellation point and therefore not marked with - __THROW. */ -# ifndef __USE_FILE_OFFSET64 -extern int scandir (const char *__restrict __dir, - struct dirent ***__restrict __namelist, - int (*__selector) (const struct dirent *), - int (*__cmp) (const struct dirent **, - const struct dirent **)) - __nonnull ((1, 2)); -# else -# ifdef __REDIRECT -extern int __REDIRECT (scandir, - (const char *__restrict __dir, - struct dirent ***__restrict __namelist, - int (*__selector) (const struct dirent *), - int (*__cmp) (const struct dirent **, - const struct dirent **)), - scandir64) __nonnull ((1, 2)); -# else -# define scandir scandir64 -# endif -# endif - -# if defined __USE_GNU && defined __USE_LARGEFILE64 -/* This function is like `scandir' but it uses the 64bit dirent structure. - Please note that the CMP function must now work with struct dirent64 **. */ -extern int scandir64 (const char *__restrict __dir, - struct dirent64 ***__restrict __namelist, - int (*__selector) (const struct dirent64 *), - int (*__cmp) (const struct dirent64 **, - const struct dirent64 **)) - __nonnull ((1, 2)); -# endif - -# ifdef __USE_GNU -/* Similar to `scandir' but a relative DIR name is interpreted relative - to the directory for which DFD is a descriptor. - - This function is a cancellation point and therefore not marked with - __THROW. */ -# ifndef __USE_FILE_OFFSET64 -extern int scandirat (int __dfd, const char *__restrict __dir, - struct dirent ***__restrict __namelist, - int (*__selector) (const struct dirent *), - int (*__cmp) (const struct dirent **, - const struct dirent **)) - __nonnull ((2, 3)); -# else -# ifdef __REDIRECT -extern int __REDIRECT (scandirat, - (int __dfd, const char *__restrict __dir, - struct dirent ***__restrict __namelist, - int (*__selector) (const struct dirent *), - int (*__cmp) (const struct dirent **, - const struct dirent **)), - scandirat64) __nonnull ((2, 3)); -# else -# define scandirat scandirat64 -# endif -# endif - -/* This function is like `scandir' but it uses the 64bit dirent structure. - Please note that the CMP function must now work with struct dirent64 **. */ -extern int scandirat64 (int __dfd, const char *__restrict __dir, - struct dirent64 ***__restrict __namelist, - int (*__selector) (const struct dirent64 *), - int (*__cmp) (const struct dirent64 **, - const struct dirent64 **)) - __nonnull ((2, 3)); -# endif - -/* Function to compare two `struct dirent's alphabetically. */ -# ifndef __USE_FILE_OFFSET64 -extern int alphasort (const struct dirent **__e1, - const struct dirent **__e2) - __THROW __attribute_pure__ __nonnull ((1, 2)); -# else -# ifdef __REDIRECT -extern int __REDIRECT_NTH (alphasort, - (const struct dirent **__e1, - const struct dirent **__e2), - alphasort64) __attribute_pure__ __nonnull ((1, 2)); -# else -# define alphasort alphasort64 -# endif -# endif - -# if defined __USE_GNU && defined __USE_LARGEFILE64 -extern int alphasort64 (const struct dirent64 **__e1, - const struct dirent64 **__e2) - __THROW __attribute_pure__ __nonnull ((1, 2)); -# endif -#endif /* Use XPG7. */ - - -#ifdef __USE_MISC -/* Read directory entries from FD into BUF, reading at most NBYTES. - Reading starts at offset *BASEP, and *BASEP is updated with the new - position after reading. Returns the number of bytes read; zero when at - end of directory; or -1 for errors. */ -# ifndef __USE_FILE_OFFSET64 -extern __ssize_t getdirentries (int __fd, char *__restrict __buf, - size_t __nbytes, - __off_t *__restrict __basep) - __THROW __nonnull ((2, 4)); -# else -# ifdef __REDIRECT -extern __ssize_t __REDIRECT_NTH (getdirentries, - (int __fd, char *__restrict __buf, - size_t __nbytes, - __off64_t *__restrict __basep), - getdirentries64) __nonnull ((2, 4)); -# else -# define getdirentries getdirentries64 -# endif -# endif - -# ifdef __USE_LARGEFILE64 -extern __ssize_t getdirentries64 (int __fd, char *__restrict __buf, - size_t __nbytes, - __off64_t *__restrict __basep) - __THROW __nonnull ((2, 4)); -# endif -#endif /* Use misc. */ - -#ifdef __USE_GNU -/* Function to compare two `struct dirent's by name & version. */ -# ifndef __USE_FILE_OFFSET64 -extern int versionsort (const struct dirent **__e1, - const struct dirent **__e2) - __THROW __attribute_pure__ __nonnull ((1, 2)); -# else -# ifdef __REDIRECT -extern int __REDIRECT_NTH (versionsort, - (const struct dirent **__e1, - const struct dirent **__e2), - versionsort64) - __attribute_pure__ __nonnull ((1, 2)); -# else -# define versionsort versionsort64 -# endif -# endif - -# ifdef __USE_LARGEFILE64 -extern int versionsort64 (const struct dirent64 **__e1, - const struct dirent64 **__e2) - __THROW __attribute_pure__ __nonnull ((1, 2)); -# endif -#endif /* Use GNU. */ - -__END_DECLS - -#include <bits/dirent_ext.h> - -#endif /* dirent.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h.blob deleted file mode 100644 index 7fc6215ca2c152d499924e562c2d2520193ad58b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18651 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h deleted file mode 100644 index ffc66791..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _ENDIAN_H -#define _ENDIAN_H 1 - -#include <features.h> - -/* Get the definitions of __*_ENDIAN, __BYTE_ORDER, and __FLOAT_WORD_ORDER. */ -#include <bits/endian.h> - -#ifdef __USE_MISC -# define LITTLE_ENDIAN __LITTLE_ENDIAN -# define BIG_ENDIAN __BIG_ENDIAN -# define PDP_ENDIAN __PDP_ENDIAN -# define BYTE_ORDER __BYTE_ORDER -#endif - -#if defined __USE_MISC && !defined __ASSEMBLER__ -/* Conversion interfaces. */ -# include <bits/byteswap.h> -# include <bits/uintn-identity.h> - -# if __BYTE_ORDER == __LITTLE_ENDIAN -# define htobe16(x) __bswap_16 (x) -# define htole16(x) __uint16_identity (x) -# define be16toh(x) __bswap_16 (x) -# define le16toh(x) __uint16_identity (x) - -# define htobe32(x) __bswap_32 (x) -# define htole32(x) __uint32_identity (x) -# define be32toh(x) __bswap_32 (x) -# define le32toh(x) __uint32_identity (x) - -# define htobe64(x) __bswap_64 (x) -# define htole64(x) __uint64_identity (x) -# define be64toh(x) __bswap_64 (x) -# define le64toh(x) __uint64_identity (x) - -# else -# define htobe16(x) __uint16_identity (x) -# define htole16(x) __bswap_16 (x) -# define be16toh(x) __uint16_identity (x) -# define le16toh(x) __bswap_16 (x) - -# define htobe32(x) __uint32_identity (x) -# define htole32(x) __bswap_32 (x) -# define be32toh(x) __uint32_identity (x) -# define le32toh(x) __bswap_32 (x) - -# define htobe64(x) __uint64_identity (x) -# define htole64(x) __bswap_64 (x) -# define be64toh(x) __uint64_identity (x) -# define le64toh(x) __bswap_64 (x) -# endif -#endif - -#endif /* endian.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h.blob deleted file mode 100644 index 5118c7b09bf220f049cd15980eae1cb24e67cfa9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13582 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h deleted file mode 100644 index d15d890d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.5 Errors <errno.h> - */ - -#ifndef _ERRNO_H -#define _ERRNO_H 1 - -#include <features.h> - -/* The system-specific definitions of the E* constants, as macros. */ -#include <bits/errno.h> - -/* When included from assembly language, this header only provides the - E* constants. */ -#ifndef __ASSEMBLER__ - -__BEGIN_DECLS - -/* The error code set by various library functions. */ -extern int *__errno_location (void) __THROW __attribute_const__; -# define errno (*__errno_location ()) - -# ifdef __USE_GNU - -/* The full and simple forms of the name with which the program was - invoked. These variables are set up automatically at startup based on - the value of argv[0]. */ -extern char *program_invocation_name; -extern char *program_invocation_short_name; - -#include <bits/types/error_t.h> - -# endif /* __USE_GNU */ - -__END_DECLS - -#endif /* !__ASSEMBLER__ */ -#endif /* errno.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h.blob deleted file mode 100644 index d3027c821b7e335eccd3323e58f7d7dceca55c1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12553 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h deleted file mode 100644 index af9d84da..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Features part to handle 64-bit time_t support. - Copyright (C) 2021-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* We need to know the word size in order to check the time size. */ -#include <bits/wordsize.h> -#include <bits/timesize.h> - -#if defined _TIME_BITS -# if _TIME_BITS == 64 -# if ! defined (_FILE_OFFSET_BITS) || _FILE_OFFSET_BITS != 64 -# error "_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64" -# elif __TIMESIZE == 32 -# define __USE_TIME_BITS64 1 -# endif -# elif _TIME_BITS == 32 -# if __TIMESIZE > 32 -# error "_TIME_BITS=32 is not compatible with __TIMESIZE > 32" -# endif -# else -# error Invalid _TIME_BITS value (can only be 32 or 64-bit) -# endif -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h.blob deleted file mode 100644 index b8c047063b05db3ad8275231729c1880b76802f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12191 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 Y_B`l~<-fM#yT?NhUfq4=;cmD4KMC#OqyPW_ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h deleted file mode 100644 index 7c51b4a2..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h +++ /dev/null @@ -1,530 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _FEATURES_H -#define _FEATURES_H 1 - -/* These are defined by the user (or the compiler) - to specify the desired environment: - - __STRICT_ANSI__ ISO Standard C. - _ISOC99_SOURCE Extensions to ISO C89 from ISO C99. - _ISOC11_SOURCE Extensions to ISO C99 from ISO C11. - _ISOC2X_SOURCE Extensions to ISO C99 from ISO C2X. - __STDC_WANT_LIB_EXT2__ - Extensions to ISO C99 from TR 27431-2:2010. - __STDC_WANT_IEC_60559_BFP_EXT__ - Extensions to ISO C11 from TS 18661-1:2014. - __STDC_WANT_IEC_60559_FUNCS_EXT__ - Extensions to ISO C11 from TS 18661-4:2015. - __STDC_WANT_IEC_60559_TYPES_EXT__ - Extensions to ISO C11 from TS 18661-3:2015. - __STDC_WANT_IEC_60559_EXT__ - ISO C2X interfaces defined only in Annex F. - - _POSIX_SOURCE IEEE Std 1003.1. - _POSIX_C_SOURCE If ==1, like _POSIX_SOURCE; if >=2 add IEEE Std 1003.2; - if >=199309L, add IEEE Std 1003.1b-1993; - if >=199506L, add IEEE Std 1003.1c-1995; - if >=200112L, all of IEEE 1003.1-2004 - if >=200809L, all of IEEE 1003.1-2008 - _XOPEN_SOURCE Includes POSIX and XPG things. Set to 500 if - Single Unix conformance is wanted, to 600 for the - sixth revision, to 700 for the seventh revision. - _XOPEN_SOURCE_EXTENDED XPG things and X/Open Unix extensions. - _LARGEFILE_SOURCE Some more functions for correct standard I/O. - _LARGEFILE64_SOURCE Additional functionality from LFS for large files. - _FILE_OFFSET_BITS=N Select default filesystem interface. - _ATFILE_SOURCE Additional *at interfaces. - _DYNAMIC_STACK_SIZE_SOURCE Select correct (but non compile-time constant) - MINSIGSTKSZ, SIGSTKSZ and PTHREAD_STACK_MIN. - _GNU_SOURCE All of the above, plus GNU extensions. - _DEFAULT_SOURCE The default set of features (taking precedence over - __STRICT_ANSI__). - - _FORTIFY_SOURCE Add security hardening to many library functions. - Set to 1, 2 or 3; 3 performs stricter checks than 2, which - performs stricter checks than 1. - - _REENTRANT, _THREAD_SAFE - Obsolete; equivalent to _POSIX_C_SOURCE=199506L. - - The `-ansi' switch to the GNU C compiler, and standards conformance - options such as `-std=c99', define __STRICT_ANSI__. If none of - these are defined, or if _DEFAULT_SOURCE is defined, the default is - to have _POSIX_SOURCE set to one and _POSIX_C_SOURCE set to - 200809L, as well as enabling miscellaneous functions from BSD and - SVID. If more than one of these are defined, they accumulate. For - example __STRICT_ANSI__, _POSIX_SOURCE and _POSIX_C_SOURCE together - give you ISO C, 1003.1, and 1003.2, but nothing else. - - These are defined by this file and are used by the - header files to decide what to declare or define: - - __GLIBC_USE (F) Define things from feature set F. This is defined - to 1 or 0; the subsequent macros are either defined - or undefined, and those tests should be moved to - __GLIBC_USE. - __USE_ISOC11 Define ISO C11 things. - __USE_ISOC99 Define ISO C99 things. - __USE_ISOC95 Define ISO C90 AMD1 (C95) things. - __USE_ISOCXX11 Define ISO C++11 things. - __USE_POSIX Define IEEE Std 1003.1 things. - __USE_POSIX2 Define IEEE Std 1003.2 things. - __USE_POSIX199309 Define IEEE Std 1003.1, and .1b things. - __USE_POSIX199506 Define IEEE Std 1003.1, .1b, .1c and .1i things. - __USE_XOPEN Define XPG things. - __USE_XOPEN_EXTENDED Define X/Open Unix things. - __USE_UNIX98 Define Single Unix V2 things. - __USE_XOPEN2K Define XPG6 things. - __USE_XOPEN2KXSI Define XPG6 XSI things. - __USE_XOPEN2K8 Define XPG7 things. - __USE_XOPEN2K8XSI Define XPG7 XSI things. - __USE_LARGEFILE Define correct standard I/O things. - __USE_LARGEFILE64 Define LFS things with separate names. - __USE_FILE_OFFSET64 Define 64bit interface as default. - __USE_MISC Define things from 4.3BSD or System V Unix. - __USE_ATFILE Define *at interfaces and AT_* constants for them. - __USE_DYNAMIC_STACK_SIZE Define correct (but non compile-time constant) - MINSIGSTKSZ, SIGSTKSZ and PTHREAD_STACK_MIN. - __USE_GNU Define GNU extensions. - __USE_FORTIFY_LEVEL Additional security measures used, according to level. - - The macros `__GNU_LIBRARY__', `__GLIBC__', and `__GLIBC_MINOR__' are - defined by this file unconditionally. `__GNU_LIBRARY__' is provided - only for compatibility. All new code should use the other symbols - to test for features. - - All macros listed above as possibly being defined by this file are - explicitly undefined if they are not explicitly defined. - Feature-test macros that are not defined by the user or compiler - but are implied by the other feature-test macros defined (or by the - lack of any definitions) are defined by the file. - - ISO C feature test macros depend on the definition of the macro - when an affected header is included, not when the first system - header is included, and so they are handled in - <bits/libc-header-start.h>, which does not have a multiple include - guard. Feature test macros that can be handled from the first - system header included are handled here. */ - - -/* Undefine everything, so we get a clean slate. */ -#undef __USE_ISOC11 -#undef __USE_ISOC99 -#undef __USE_ISOC95 -#undef __USE_ISOCXX11 -#undef __USE_POSIX -#undef __USE_POSIX2 -#undef __USE_POSIX199309 -#undef __USE_POSIX199506 -#undef __USE_XOPEN -#undef __USE_XOPEN_EXTENDED -#undef __USE_UNIX98 -#undef __USE_XOPEN2K -#undef __USE_XOPEN2KXSI -#undef __USE_XOPEN2K8 -#undef __USE_XOPEN2K8XSI -#undef __USE_LARGEFILE -#undef __USE_LARGEFILE64 -#undef __USE_FILE_OFFSET64 -#undef __USE_MISC -#undef __USE_ATFILE -#undef __USE_DYNAMIC_STACK_SIZE -#undef __USE_GNU -#undef __USE_FORTIFY_LEVEL -#undef __KERNEL_STRICT_NAMES -#undef __GLIBC_USE_ISOC2X -#undef __GLIBC_USE_DEPRECATED_GETS -#undef __GLIBC_USE_DEPRECATED_SCANF -#undef __GLIBC_USE_C2X_STRTOL - -/* Suppress kernel-name space pollution unless user expressedly asks - for it. */ -#ifndef _LOOSE_KERNEL_NAMES -# define __KERNEL_STRICT_NAMES -#endif - -/* Convenience macro to test the version of gcc. - Use like this: - #if __GNUC_PREREQ (2,8) - ... code requiring gcc 2.8 or later ... - #endif - Note: only works for GCC 2.0 and later, because __GNUC_MINOR__ was - added in 2.0. */ -#if defined __GNUC__ && defined __GNUC_MINOR__ -# define __GNUC_PREREQ(maj, min) \ - ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) -#else -# define __GNUC_PREREQ(maj, min) 0 -#endif - -/* Similarly for clang. Features added to GCC after version 4.2 may - or may not also be available in clang, and clang's definitions of - __GNUC(_MINOR)__ are fixed at 4 and 2 respectively. Not all such - features can be queried via __has_extension/__has_feature. */ -#if defined __clang_major__ && defined __clang_minor__ -# define __glibc_clang_prereq(maj, min) \ - ((__clang_major__ << 16) + __clang_minor__ >= ((maj) << 16) + (min)) -#else -# define __glibc_clang_prereq(maj, min) 0 -#endif - -/* Whether to use feature set F. */ -#define __GLIBC_USE(F) __GLIBC_USE_ ## F - -/* _BSD_SOURCE and _SVID_SOURCE are deprecated aliases for - _DEFAULT_SOURCE. If _DEFAULT_SOURCE is present we do not - issue a warning; the expectation is that the source is being - transitioned to use the new macro. */ -#if (defined _BSD_SOURCE || defined _SVID_SOURCE) \ - && !defined _DEFAULT_SOURCE -# warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" -# undef _DEFAULT_SOURCE -# define _DEFAULT_SOURCE 1 -#endif - -/* If _GNU_SOURCE was defined by the user, turn on all the other features. */ -#ifdef _GNU_SOURCE -# undef _ISOC95_SOURCE -# define _ISOC95_SOURCE 1 -# undef _ISOC99_SOURCE -# define _ISOC99_SOURCE 1 -# undef _ISOC11_SOURCE -# define _ISOC11_SOURCE 1 -# undef _ISOC2X_SOURCE -# define _ISOC2X_SOURCE 1 -# undef _POSIX_SOURCE -# define _POSIX_SOURCE 1 -# undef _POSIX_C_SOURCE -# define _POSIX_C_SOURCE 200809L -# undef _XOPEN_SOURCE -# define _XOPEN_SOURCE 700 -# undef _XOPEN_SOURCE_EXTENDED -# define _XOPEN_SOURCE_EXTENDED 1 -# undef _LARGEFILE64_SOURCE -# define _LARGEFILE64_SOURCE 1 -# undef _DEFAULT_SOURCE -# define _DEFAULT_SOURCE 1 -# undef _ATFILE_SOURCE -# define _ATFILE_SOURCE 1 -# undef _DYNAMIC_STACK_SIZE_SOURCE -# define _DYNAMIC_STACK_SIZE_SOURCE 1 -#endif - -/* If nothing (other than _GNU_SOURCE and _DEFAULT_SOURCE) is defined, - define _DEFAULT_SOURCE. */ -#if (defined _DEFAULT_SOURCE \ - || (!defined __STRICT_ANSI__ \ - && !defined _ISOC99_SOURCE && !defined _ISOC11_SOURCE \ - && !defined _ISOC2X_SOURCE \ - && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE \ - && !defined _XOPEN_SOURCE)) -# undef _DEFAULT_SOURCE -# define _DEFAULT_SOURCE 1 -#endif - -/* This is to enable the ISO C2X extension. */ -#if (defined _ISOC2X_SOURCE \ - || (defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L)) -# define __GLIBC_USE_ISOC2X 1 -#else -# define __GLIBC_USE_ISOC2X 0 -#endif - -/* This is to enable the ISO C11 extension. */ -#if (defined _ISOC11_SOURCE || defined _ISOC2X_SOURCE \ - || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L)) -# define __USE_ISOC11 1 -#endif - -/* This is to enable the ISO C99 extension. */ -#if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE \ - || defined _ISOC2X_SOURCE \ - || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) -# define __USE_ISOC99 1 -#endif - -/* This is to enable the ISO C90 Amendment 1:1995 extension. */ -#if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE \ - || defined _ISOC2X_SOURCE \ - || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199409L)) -# define __USE_ISOC95 1 -#endif - -#ifdef __cplusplus -/* This is to enable compatibility for ISO C++17. */ -# if __cplusplus >= 201703L -# define __USE_ISOC11 1 -# endif -/* This is to enable compatibility for ISO C++11. - Check the temporary macro for now, too. */ -# if __cplusplus >= 201103L || defined __GXX_EXPERIMENTAL_CXX0X__ -# define __USE_ISOCXX11 1 -# define __USE_ISOC99 1 -# endif -#endif - -/* If none of the ANSI/POSIX macros are defined, or if _DEFAULT_SOURCE - is defined, use POSIX.1-2008 (or another version depending on - _XOPEN_SOURCE). */ -#ifdef _DEFAULT_SOURCE -# if !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE -# define __USE_POSIX_IMPLICITLY 1 -# endif -# undef _POSIX_SOURCE -# define _POSIX_SOURCE 1 -# undef _POSIX_C_SOURCE -# define _POSIX_C_SOURCE 200809L -#endif - -#if ((!defined __STRICT_ANSI__ \ - || (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500)) \ - && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE) -# define _POSIX_SOURCE 1 -# if defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 500 -# define _POSIX_C_SOURCE 2 -# elif defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 600 -# define _POSIX_C_SOURCE 199506L -# elif defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 700 -# define _POSIX_C_SOURCE 200112L -# else -# define _POSIX_C_SOURCE 200809L -# endif -# define __USE_POSIX_IMPLICITLY 1 -#endif - -/* Some C libraries once required _REENTRANT and/or _THREAD_SAFE to be - defined in all multithreaded code. GNU libc has not required this - for many years. We now treat them as compatibility synonyms for - _POSIX_C_SOURCE=199506L, which is the earliest level of POSIX with - comprehensive support for multithreaded code. Using them never - lowers the selected level of POSIX conformance, only raises it. */ -#if ((!defined _POSIX_C_SOURCE || (_POSIX_C_SOURCE - 0) < 199506L) \ - && (defined _REENTRANT || defined _THREAD_SAFE)) -# define _POSIX_SOURCE 1 -# undef _POSIX_C_SOURCE -# define _POSIX_C_SOURCE 199506L -#endif - -#if (defined _POSIX_SOURCE \ - || (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 1) \ - || defined _XOPEN_SOURCE) -# define __USE_POSIX 1 -#endif - -#if defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 2 || defined _XOPEN_SOURCE -# define __USE_POSIX2 1 -#endif - -#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 199309L -# define __USE_POSIX199309 1 -#endif - -#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 199506L -# define __USE_POSIX199506 1 -#endif - -#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 200112L -# define __USE_XOPEN2K 1 -# undef __USE_ISOC95 -# define __USE_ISOC95 1 -# undef __USE_ISOC99 -# define __USE_ISOC99 1 -#endif - -#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 200809L -# define __USE_XOPEN2K8 1 -# undef _ATFILE_SOURCE -# define _ATFILE_SOURCE 1 -#endif - -#ifdef _XOPEN_SOURCE -# define __USE_XOPEN 1 -# if (_XOPEN_SOURCE - 0) >= 500 -# define __USE_XOPEN_EXTENDED 1 -# define __USE_UNIX98 1 -# undef _LARGEFILE_SOURCE -# define _LARGEFILE_SOURCE 1 -# if (_XOPEN_SOURCE - 0) >= 600 -# if (_XOPEN_SOURCE - 0) >= 700 -# define __USE_XOPEN2K8 1 -# define __USE_XOPEN2K8XSI 1 -# endif -# define __USE_XOPEN2K 1 -# define __USE_XOPEN2KXSI 1 -# undef __USE_ISOC95 -# define __USE_ISOC95 1 -# undef __USE_ISOC99 -# define __USE_ISOC99 1 -# endif -# else -# ifdef _XOPEN_SOURCE_EXTENDED -# define __USE_XOPEN_EXTENDED 1 -# endif -# endif -#endif - -#ifdef _LARGEFILE_SOURCE -# define __USE_LARGEFILE 1 -#endif - -#ifdef _LARGEFILE64_SOURCE -# define __USE_LARGEFILE64 1 -#endif - -#if defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64 -# define __USE_FILE_OFFSET64 1 -#endif - -#include <features-time64.h> - -#if defined _DEFAULT_SOURCE -# define __USE_MISC 1 -#endif - -#ifdef _ATFILE_SOURCE -# define __USE_ATFILE 1 -#endif - -#ifdef _DYNAMIC_STACK_SIZE_SOURCE -# define __USE_DYNAMIC_STACK_SIZE 1 -#endif - -#ifdef _GNU_SOURCE -# define __USE_GNU 1 -#endif - -#if defined _FORTIFY_SOURCE && _FORTIFY_SOURCE > 0 -# if !defined __OPTIMIZE__ || __OPTIMIZE__ <= 0 -# warning _FORTIFY_SOURCE requires compiling with optimization (-O) -# elif !__GNUC_PREREQ (4, 1) -# warning _FORTIFY_SOURCE requires GCC 4.1 or later -# elif _FORTIFY_SOURCE > 2 && (__glibc_clang_prereq (9, 0) \ - || __GNUC_PREREQ (12, 0)) - -# if _FORTIFY_SOURCE > 3 -# warning _FORTIFY_SOURCE > 3 is treated like 3 on this platform -# endif -# define __USE_FORTIFY_LEVEL 3 -# elif _FORTIFY_SOURCE > 1 -# if _FORTIFY_SOURCE > 2 -# warning _FORTIFY_SOURCE > 2 is treated like 2 on this platform -# endif -# define __USE_FORTIFY_LEVEL 2 -# else -# define __USE_FORTIFY_LEVEL 1 -# endif -#endif -#ifndef __USE_FORTIFY_LEVEL -# define __USE_FORTIFY_LEVEL 0 -#endif - -/* The function 'gets' existed in C89, but is impossible to use - safely. It has been removed from ISO C11 and ISO C++14. Note: for - compatibility with various implementations of <cstdio>, this test - must consider only the value of __cplusplus when compiling C++. */ -#if defined __cplusplus ? __cplusplus >= 201402L : defined __USE_ISOC11 -# define __GLIBC_USE_DEPRECATED_GETS 0 -#else -# define __GLIBC_USE_DEPRECATED_GETS 1 -#endif - -/* GNU formerly extended the scanf functions with modified format - specifiers %as, %aS, and %a[...] that allocate a buffer for the - input using malloc. This extension conflicts with ISO C99, which - defines %a as a standalone format specifier that reads a floating- - point number; moreover, POSIX.1-2008 provides the same feature - using the modifier letter 'm' instead (%ms, %mS, %m[...]). - - We now follow C99 unless GNU extensions are active and the compiler - is specifically in C89 or C++98 mode (strict or not). For - instance, with GCC, -std=gnu11 will have C99-compliant scanf with - or without -D_GNU_SOURCE, but -std=c89 -D_GNU_SOURCE will have the - old extension. */ -#if (defined __USE_GNU \ - && (defined __cplusplus \ - ? (__cplusplus < 201103L && !defined __GXX_EXPERIMENTAL_CXX0X__) \ - : (!defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L))) -# define __GLIBC_USE_DEPRECATED_SCANF 1 -#else -# define __GLIBC_USE_DEPRECATED_SCANF 0 -#endif - -/* ISO C2X added support for a 0b or 0B prefix on binary constants as - inputs to strtol-family functions (base 0 or 2). This macro is - used to condition redirection in headers to allow that redirection - to be disabled when building those functions, despite _GNU_SOURCE - being defined. */ -#if __GLIBC_USE (ISOC2X) -# define __GLIBC_USE_C2X_STRTOL 1 -#else -# define __GLIBC_USE_C2X_STRTOL 0 -#endif - -/* Get definitions of __STDC_* predefined macros, if the compiler has - not preincluded this header automatically. */ -#include <stdc-predef.h> - -/* This macro indicates that the installed library is the GNU C Library. - For historic reasons the value now is 6 and this will stay from now - on. The use of this variable is deprecated. Use __GLIBC__ and - __GLIBC_MINOR__ now (see below) when you want to test for a specific - GNU C library version and use the values in <gnu/lib-names.h> to get - the sonames of the shared libraries. */ -#undef __GNU_LIBRARY__ -#define __GNU_LIBRARY__ 6 - -/* Major and minor version number of the GNU C library package. Use - these macros to test for features in specific releases. */ -#define __GLIBC__ 2 -#define __GLIBC_MINOR__ 38 - -#define __GLIBC_PREREQ(maj, min) \ - ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) - -/* This is here only because every header file already includes this one. */ -#ifndef __ASSEMBLER__ -# ifndef _SYS_CDEFS_H -# include <sys/cdefs.h> -# endif - -/* If we don't have __REDIRECT, prototypes will be missing if - __USE_FILE_OFFSET64 but not __USE_LARGEFILE[64]. */ -# if defined __USE_FILE_OFFSET64 && !defined __REDIRECT -# define __USE_LARGEFILE 1 -# define __USE_LARGEFILE64 1 -# endif - -#endif /* !ASSEMBLER */ - -/* Decide whether we can define 'extern inline' functions in headers. */ -#if __GNUC_PREREQ (2, 7) && defined __OPTIMIZE__ \ - && !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__ \ - && defined __extern_inline -# define __USE_EXTERN_INLINES 1 -#endif - - -/* This is here only because every header file already includes this one. - Get the definitions of all the appropriate `__stub_FUNCTION' symbols. - <gnu/stubs.h> contains `#define __stub_FUNCTION' when FUNCTION is a stub - that will always return failure (and set errno to ENOSYS). */ -#include <gnu/stubs.h> - - -#endif /* features.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h.blob deleted file mode 100644 index 20c26eb3f91627058a3725641dacfadab741a646..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15333 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 P_ve*;;Lb(|82A4N->#-` diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h deleted file mode 100644 index b7457215..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h +++ /dev/null @@ -1,17 +0,0 @@ -/* This file is automatically generated. - It defines a symbol `__stub_FUNCTION' for each function - in the C library which is a stub, meaning it will fail - every time called, usually setting errno to ENOSYS. */ - -#ifdef _LIBC - #error Applications may not define the macro _LIBC -#endif - -#define __stub___compat_bdflush -#define __stub_chflags -#define __stub_fchflags -#define __stub_gtty -#define __stub_revoke -#define __stub_setlogin -#define __stub_sigreturn -#define __stub_stty diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs-64.h.blob deleted file mode 100644 index 39509a558b3482c822640656f812cb57b3ebf0d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12690 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h deleted file mode 100644 index 70a1ba01..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h +++ /dev/null @@ -1,14 +0,0 @@ -/* This file is automatically generated. - This file selects the right generated file of `__stub_FUNCTION' macros - based on the architecture being compiled for. */ - - -#if !defined __x86_64__ -# include <gnu/stubs-32.h> -#endif -#if defined __x86_64__ && defined __LP64__ -# include <gnu/stubs-64.h> -#endif -#if defined __x86_64__ && defined __ILP32__ -# include <gnu/stubs-x32.h> -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@gnu@stubs.h.blob deleted file mode 100644 index 8066839416fedae162a2a6cacc90ce7beb2f6e9a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12170 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 TWIpk!-KQUZX7|~LyWQ^pMHknW diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h deleted file mode 100644 index 42ecf681..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h +++ /dev/null @@ -1,417 +0,0 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99: 7.8 Format conversion of integer types <inttypes.h> - */ - -#ifndef _INTTYPES_H -#define _INTTYPES_H 1 - -#include <features.h> -/* Get the type definitions. */ -#include <stdint.h> - -/* Get a definition for wchar_t. But we must not define wchar_t itself. */ -#ifndef ____gwchar_t_defined -# ifdef __cplusplus -# define __gwchar_t wchar_t -# elif defined __WCHAR_TYPE__ -typedef __WCHAR_TYPE__ __gwchar_t; -# else -# define __need_wchar_t -# include <stddef.h> -typedef wchar_t __gwchar_t; -# endif -# define ____gwchar_t_defined 1 -#endif - -# if __WORDSIZE == 64 -# define __PRI64_PREFIX "l" -# define __PRIPTR_PREFIX "l" -# else -# define __PRI64_PREFIX "ll" -# define __PRIPTR_PREFIX -# endif - -/* Macros for printing format specifiers. */ - -/* Decimal notation. */ -# define PRId8 "d" -# define PRId16 "d" -# define PRId32 "d" -# define PRId64 __PRI64_PREFIX "d" - -# define PRIdLEAST8 "d" -# define PRIdLEAST16 "d" -# define PRIdLEAST32 "d" -# define PRIdLEAST64 __PRI64_PREFIX "d" - -# define PRIdFAST8 "d" -# define PRIdFAST16 __PRIPTR_PREFIX "d" -# define PRIdFAST32 __PRIPTR_PREFIX "d" -# define PRIdFAST64 __PRI64_PREFIX "d" - - -# define PRIi8 "i" -# define PRIi16 "i" -# define PRIi32 "i" -# define PRIi64 __PRI64_PREFIX "i" - -# define PRIiLEAST8 "i" -# define PRIiLEAST16 "i" -# define PRIiLEAST32 "i" -# define PRIiLEAST64 __PRI64_PREFIX "i" - -# define PRIiFAST8 "i" -# define PRIiFAST16 __PRIPTR_PREFIX "i" -# define PRIiFAST32 __PRIPTR_PREFIX "i" -# define PRIiFAST64 __PRI64_PREFIX "i" - -/* Octal notation. */ -# define PRIo8 "o" -# define PRIo16 "o" -# define PRIo32 "o" -# define PRIo64 __PRI64_PREFIX "o" - -# define PRIoLEAST8 "o" -# define PRIoLEAST16 "o" -# define PRIoLEAST32 "o" -# define PRIoLEAST64 __PRI64_PREFIX "o" - -# define PRIoFAST8 "o" -# define PRIoFAST16 __PRIPTR_PREFIX "o" -# define PRIoFAST32 __PRIPTR_PREFIX "o" -# define PRIoFAST64 __PRI64_PREFIX "o" - -/* Unsigned integers. */ -# define PRIu8 "u" -# define PRIu16 "u" -# define PRIu32 "u" -# define PRIu64 __PRI64_PREFIX "u" - -# define PRIuLEAST8 "u" -# define PRIuLEAST16 "u" -# define PRIuLEAST32 "u" -# define PRIuLEAST64 __PRI64_PREFIX "u" - -# define PRIuFAST8 "u" -# define PRIuFAST16 __PRIPTR_PREFIX "u" -# define PRIuFAST32 __PRIPTR_PREFIX "u" -# define PRIuFAST64 __PRI64_PREFIX "u" - -/* lowercase hexadecimal notation. */ -# define PRIx8 "x" -# define PRIx16 "x" -# define PRIx32 "x" -# define PRIx64 __PRI64_PREFIX "x" - -# define PRIxLEAST8 "x" -# define PRIxLEAST16 "x" -# define PRIxLEAST32 "x" -# define PRIxLEAST64 __PRI64_PREFIX "x" - -# define PRIxFAST8 "x" -# define PRIxFAST16 __PRIPTR_PREFIX "x" -# define PRIxFAST32 __PRIPTR_PREFIX "x" -# define PRIxFAST64 __PRI64_PREFIX "x" - -/* UPPERCASE hexadecimal notation. */ -# define PRIX8 "X" -# define PRIX16 "X" -# define PRIX32 "X" -# define PRIX64 __PRI64_PREFIX "X" - -# define PRIXLEAST8 "X" -# define PRIXLEAST16 "X" -# define PRIXLEAST32 "X" -# define PRIXLEAST64 __PRI64_PREFIX "X" - -# define PRIXFAST8 "X" -# define PRIXFAST16 __PRIPTR_PREFIX "X" -# define PRIXFAST32 __PRIPTR_PREFIX "X" -# define PRIXFAST64 __PRI64_PREFIX "X" - - -/* Macros for printing `intmax_t' and `uintmax_t'. */ -# define PRIdMAX __PRI64_PREFIX "d" -# define PRIiMAX __PRI64_PREFIX "i" -# define PRIoMAX __PRI64_PREFIX "o" -# define PRIuMAX __PRI64_PREFIX "u" -# define PRIxMAX __PRI64_PREFIX "x" -# define PRIXMAX __PRI64_PREFIX "X" - - -/* Macros for printing `intptr_t' and `uintptr_t'. */ -# define PRIdPTR __PRIPTR_PREFIX "d" -# define PRIiPTR __PRIPTR_PREFIX "i" -# define PRIoPTR __PRIPTR_PREFIX "o" -# define PRIuPTR __PRIPTR_PREFIX "u" -# define PRIxPTR __PRIPTR_PREFIX "x" -# define PRIXPTR __PRIPTR_PREFIX "X" - -/* Binary notation. */ -# if __GLIBC_USE (ISOC2X) -# define PRIb8 "b" -# define PRIb16 "b" -# define PRIb32 "b" -# define PRIb64 __PRI64_PREFIX "b" - -# define PRIbLEAST8 "b" -# define PRIbLEAST16 "b" -# define PRIbLEAST32 "b" -# define PRIbLEAST64 __PRI64_PREFIX "b" - -# define PRIbFAST8 "b" -# define PRIbFAST16 __PRIPTR_PREFIX "b" -# define PRIbFAST32 __PRIPTR_PREFIX "b" -# define PRIbFAST64 __PRI64_PREFIX "b" - -# define PRIbMAX __PRI64_PREFIX "b" -# define PRIbPTR __PRIPTR_PREFIX "b" - -# define PRIB8 "B" -# define PRIB16 "B" -# define PRIB32 "B" -# define PRIB64 __PRI64_PREFIX "B" - -# define PRIBLEAST8 "B" -# define PRIBLEAST16 "B" -# define PRIBLEAST32 "B" -# define PRIBLEAST64 __PRI64_PREFIX "B" - -# define PRIBFAST8 "B" -# define PRIBFAST16 __PRIPTR_PREFIX "B" -# define PRIBFAST32 __PRIPTR_PREFIX "B" -# define PRIBFAST64 __PRI64_PREFIX "B" - -# define PRIBMAX __PRI64_PREFIX "B" -# define PRIBPTR __PRIPTR_PREFIX "B" -# endif - - -/* Macros for scanning format specifiers. */ - -/* Signed decimal notation. */ -# define SCNd8 "hhd" -# define SCNd16 "hd" -# define SCNd32 "d" -# define SCNd64 __PRI64_PREFIX "d" - -# define SCNdLEAST8 "hhd" -# define SCNdLEAST16 "hd" -# define SCNdLEAST32 "d" -# define SCNdLEAST64 __PRI64_PREFIX "d" - -# define SCNdFAST8 "hhd" -# define SCNdFAST16 __PRIPTR_PREFIX "d" -# define SCNdFAST32 __PRIPTR_PREFIX "d" -# define SCNdFAST64 __PRI64_PREFIX "d" - -/* Signed decimal notation. */ -# define SCNi8 "hhi" -# define SCNi16 "hi" -# define SCNi32 "i" -# define SCNi64 __PRI64_PREFIX "i" - -# define SCNiLEAST8 "hhi" -# define SCNiLEAST16 "hi" -# define SCNiLEAST32 "i" -# define SCNiLEAST64 __PRI64_PREFIX "i" - -# define SCNiFAST8 "hhi" -# define SCNiFAST16 __PRIPTR_PREFIX "i" -# define SCNiFAST32 __PRIPTR_PREFIX "i" -# define SCNiFAST64 __PRI64_PREFIX "i" - -/* Unsigned decimal notation. */ -# define SCNu8 "hhu" -# define SCNu16 "hu" -# define SCNu32 "u" -# define SCNu64 __PRI64_PREFIX "u" - -# define SCNuLEAST8 "hhu" -# define SCNuLEAST16 "hu" -# define SCNuLEAST32 "u" -# define SCNuLEAST64 __PRI64_PREFIX "u" - -# define SCNuFAST8 "hhu" -# define SCNuFAST16 __PRIPTR_PREFIX "u" -# define SCNuFAST32 __PRIPTR_PREFIX "u" -# define SCNuFAST64 __PRI64_PREFIX "u" - -/* Octal notation. */ -# define SCNo8 "hho" -# define SCNo16 "ho" -# define SCNo32 "o" -# define SCNo64 __PRI64_PREFIX "o" - -# define SCNoLEAST8 "hho" -# define SCNoLEAST16 "ho" -# define SCNoLEAST32 "o" -# define SCNoLEAST64 __PRI64_PREFIX "o" - -# define SCNoFAST8 "hho" -# define SCNoFAST16 __PRIPTR_PREFIX "o" -# define SCNoFAST32 __PRIPTR_PREFIX "o" -# define SCNoFAST64 __PRI64_PREFIX "o" - -/* Hexadecimal notation. */ -# define SCNx8 "hhx" -# define SCNx16 "hx" -# define SCNx32 "x" -# define SCNx64 __PRI64_PREFIX "x" - -# define SCNxLEAST8 "hhx" -# define SCNxLEAST16 "hx" -# define SCNxLEAST32 "x" -# define SCNxLEAST64 __PRI64_PREFIX "x" - -# define SCNxFAST8 "hhx" -# define SCNxFAST16 __PRIPTR_PREFIX "x" -# define SCNxFAST32 __PRIPTR_PREFIX "x" -# define SCNxFAST64 __PRI64_PREFIX "x" - - -/* Macros for scanning `intmax_t' and `uintmax_t'. */ -# define SCNdMAX __PRI64_PREFIX "d" -# define SCNiMAX __PRI64_PREFIX "i" -# define SCNoMAX __PRI64_PREFIX "o" -# define SCNuMAX __PRI64_PREFIX "u" -# define SCNxMAX __PRI64_PREFIX "x" - -/* Macros for scanning `intptr_t' and `uintptr_t'. */ -# define SCNdPTR __PRIPTR_PREFIX "d" -# define SCNiPTR __PRIPTR_PREFIX "i" -# define SCNoPTR __PRIPTR_PREFIX "o" -# define SCNuPTR __PRIPTR_PREFIX "u" -# define SCNxPTR __PRIPTR_PREFIX "x" - - -/* Binary notation. */ -# if __GLIBC_USE (ISOC2X) -# define SCNb8 "hhb" -# define SCNb16 "hb" -# define SCNb32 "b" -# define SCNb64 __PRI64_PREFIX "b" - -# define SCNbLEAST8 "hhb" -# define SCNbLEAST16 "hb" -# define SCNbLEAST32 "b" -# define SCNbLEAST64 __PRI64_PREFIX "b" - -# define SCNbFAST8 "hhb" -# define SCNbFAST16 __PRIPTR_PREFIX "b" -# define SCNbFAST32 __PRIPTR_PREFIX "b" -# define SCNbFAST64 __PRI64_PREFIX "b" - -# define SCNbMAX __PRI64_PREFIX "b" -# define SCNbPTR __PRIPTR_PREFIX "b" -# endif - - -__BEGIN_DECLS - -#if __WORDSIZE == 64 - -/* We have to define the `uintmax_t' type using `ldiv_t'. */ -typedef struct - { - long int quot; /* Quotient. */ - long int rem; /* Remainder. */ - } imaxdiv_t; - -#else - -/* We have to define the `uintmax_t' type using `lldiv_t'. */ -typedef struct - { - __extension__ long long int quot; /* Quotient. */ - __extension__ long long int rem; /* Remainder. */ - } imaxdiv_t; - -#endif - - -/* Compute absolute value of N. */ -extern intmax_t imaxabs (intmax_t __n) __THROW __attribute__ ((__const__)); - -/* Return the `imaxdiv_t' representation of the value of NUMER over DENOM. */ -extern imaxdiv_t imaxdiv (intmax_t __numer, intmax_t __denom) - __THROW __attribute__ ((__const__)); - -/* Like `strtol' but convert to `intmax_t'. */ -extern intmax_t strtoimax (const char *__restrict __nptr, - char **__restrict __endptr, int __base) __THROW; - -/* Like `strtoul' but convert to `uintmax_t'. */ -extern uintmax_t strtoumax (const char *__restrict __nptr, - char ** __restrict __endptr, int __base) __THROW; - -/* Like `wcstol' but convert to `intmax_t'. */ -extern intmax_t wcstoimax (const __gwchar_t *__restrict __nptr, - __gwchar_t **__restrict __endptr, int __base) - __THROW; - -/* Like `wcstoul' but convert to `uintmax_t'. */ -extern uintmax_t wcstoumax (const __gwchar_t *__restrict __nptr, - __gwchar_t ** __restrict __endptr, int __base) - __THROW; - -/* Versions of the above functions that handle '0b' and '0B' prefixes - in base 0 or 2. */ -#if __GLIBC_USE (C2X_STRTOL) -# ifdef __REDIRECT -extern intmax_t __REDIRECT_NTH (strtoimax, (const char *__restrict __nptr, - char **__restrict __endptr, - int __base), __isoc23_strtoimax); -extern uintmax_t __REDIRECT_NTH (strtoumax, (const char *__restrict __nptr, - char **__restrict __endptr, - int __base), __isoc23_strtoumax); -extern intmax_t __REDIRECT_NTH (wcstoimax, - (const __gwchar_t *__restrict __nptr, - __gwchar_t **__restrict __endptr, int __base), - __isoc23_wcstoimax); -extern uintmax_t __REDIRECT_NTH (wcstoumax, - (const __gwchar_t *__restrict __nptr, - __gwchar_t **__restrict __endptr, int __base), - __isoc23_wcstoumax); -# else -extern intmax_t __isoc23_strtoimax (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW; -extern uintmax_t __isoc23_strtoumax (const char *__restrict __nptr, - char ** __restrict __endptr, int __base) - __THROW; -extern intmax_t __isoc23_wcstoimax (const __gwchar_t *__restrict __nptr, - __gwchar_t **__restrict __endptr, - int __base) - __THROW; -extern uintmax_t __isoc23_wcstoumax (const __gwchar_t *__restrict __nptr, - __gwchar_t ** __restrict __endptr, - int __base) - __THROW; -# define strtoimax __isoc23_strtoimax -# define strtoumax __isoc23_strtoumax -# define wcstoimax __isoc23_wcstoimax -# define wcstoumax __isoc23_wcstoumax -# endif -#endif - -__END_DECLS - -#endif /* inttypes.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@inttypes.h.blob deleted file mode 100644 index c9ae8593b49bce91fec90f67d43180aceebd0f60..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26817 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h deleted file mode 100644 index 50a37e99..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _LIBGEN_H -#define _LIBGEN_H 1 - -#include <features.h> - -__BEGIN_DECLS - -/* Return directory part of PATH or "." if none is available. */ -extern char *dirname (char *__path) __THROW; - -/* Return final component of PATH. - - This is the weird XPG version of this function. It sometimes will - modify its argument. Therefore we normally use the GNU version (in - <string.h>) and only if this header is included make the XPG - version available under the real name. */ -extern char *__xpg_basename (char *__path) __THROW; -#define basename __xpg_basename - -__END_DECLS - -#endif /* libgen.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@libgen.h.blob deleted file mode 100644 index 5d8dda3eb41371de59d1e07c962ed926b2dbb653..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12961 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h deleted file mode 100644 index 6f30cbe6..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h +++ /dev/null @@ -1,204 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.10/5.2.4.2.1 Sizes of integer types <limits.h> - */ - -#ifndef _LIBC_LIMITS_H_ -#define _LIBC_LIMITS_H_ 1 - -#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION -#include <bits/libc-header-start.h> - - -/* Maximum length of any multibyte character in any locale. - We define this value here since the gcc header does not define - the correct value. */ -#define MB_LEN_MAX 16 - - -/* If we are not using GNU CC we have to define all the symbols ourself. - Otherwise use gcc's definitions (see below). */ -#if !defined __GNUC__ || __GNUC__ < 2 - -/* We only protect from multiple inclusion here, because all the other - #include's protect themselves, and in GCC 2 we may #include_next through - multiple copies of this file before we get to GCC's. */ -# ifndef _LIMITS_H -# define _LIMITS_H 1 - -#include <bits/wordsize.h> - -/* We don't have #include_next. - Define ANSI <limits.h> for standard 32-bit words. */ - -/* These assume 8-bit `char's, 16-bit `short int's, - and 32-bit `int's and `long int's. */ - -/* Number of bits in a `char'. */ -# define CHAR_BIT 8 - -/* Minimum and maximum values a `signed char' can hold. */ -# define SCHAR_MIN (-128) -# define SCHAR_MAX 127 - -/* Maximum value an `unsigned char' can hold. (Minimum is 0.) */ -# define UCHAR_MAX 255 - -/* Minimum and maximum values a `char' can hold. */ -# ifdef __CHAR_UNSIGNED__ -# define CHAR_MIN 0 -# define CHAR_MAX UCHAR_MAX -# else -# define CHAR_MIN SCHAR_MIN -# define CHAR_MAX SCHAR_MAX -# endif - -/* Minimum and maximum values a `signed short int' can hold. */ -# define SHRT_MIN (-32768) -# define SHRT_MAX 32767 - -/* Maximum value an `unsigned short int' can hold. (Minimum is 0.) */ -# define USHRT_MAX 65535 - -/* Minimum and maximum values a `signed int' can hold. */ -# define INT_MIN (-INT_MAX - 1) -# define INT_MAX 2147483647 - -/* Maximum value an `unsigned int' can hold. (Minimum is 0.) */ -# define UINT_MAX 4294967295U - -/* Minimum and maximum values a `signed long int' can hold. */ -# if __WORDSIZE == 64 -# define LONG_MAX 9223372036854775807L -# else -# define LONG_MAX 2147483647L -# endif -# define LONG_MIN (-LONG_MAX - 1L) - -/* Maximum value an `unsigned long int' can hold. (Minimum is 0.) */ -# if __WORDSIZE == 64 -# define ULONG_MAX 18446744073709551615UL -# else -# define ULONG_MAX 4294967295UL -# endif - -# ifdef __USE_ISOC99 - -/* Minimum and maximum values a `signed long long int' can hold. */ -# define LLONG_MAX 9223372036854775807LL -# define LLONG_MIN (-LLONG_MAX - 1LL) - -/* Maximum value an `unsigned long long int' can hold. (Minimum is 0.) */ -# define ULLONG_MAX 18446744073709551615ULL - -# endif /* ISO C99 */ - -# endif /* limits.h */ -#endif /* GCC 2. */ - -#endif /* !_LIBC_LIMITS_H_ */ - - /* Get the compiler's limits.h, which defines almost all the ISO constants. - - We put this #include_next outside the double inclusion check because - it should be possible to include this file more than once and still get - the definitions from gcc's header. */ -#if defined __GNUC__ && !defined _GCC_LIMITS_H_ -/* `_GCC_LIMITS_H_' is what GCC's file defines. */ -# include_next <limits.h> -#endif - -/* The <limits.h> files in some gcc versions don't define LLONG_MIN, - LLONG_MAX, and ULLONG_MAX. Instead only the values gcc defined for - ages are available. */ -#if defined __USE_ISOC99 && defined __GNUC__ -# ifndef LLONG_MIN -# define LLONG_MIN (-LLONG_MAX-1) -# endif -# ifndef LLONG_MAX -# define LLONG_MAX __LONG_LONG_MAX__ -# endif -# ifndef ULLONG_MAX -# define ULLONG_MAX (LLONG_MAX * 2ULL + 1) -# endif -#endif - -/* The integer width macros are not defined by GCC's <limits.h> before - GCC 7, or if _GNU_SOURCE rather than - __STDC_WANT_IEC_60559_BFP_EXT__ is used to enable this feature. */ -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) -# ifndef CHAR_WIDTH -# define CHAR_WIDTH 8 -# endif -# ifndef SCHAR_WIDTH -# define SCHAR_WIDTH 8 -# endif -# ifndef UCHAR_WIDTH -# define UCHAR_WIDTH 8 -# endif -# ifndef SHRT_WIDTH -# define SHRT_WIDTH 16 -# endif -# ifndef USHRT_WIDTH -# define USHRT_WIDTH 16 -# endif -# ifndef INT_WIDTH -# define INT_WIDTH 32 -# endif -# ifndef UINT_WIDTH -# define UINT_WIDTH 32 -# endif -# ifndef LONG_WIDTH -# define LONG_WIDTH __WORDSIZE -# endif -# ifndef ULONG_WIDTH -# define ULONG_WIDTH __WORDSIZE -# endif -# ifndef LLONG_WIDTH -# define LLONG_WIDTH 64 -# endif -# ifndef ULLONG_WIDTH -# define ULLONG_WIDTH 64 -# endif -#endif /* Use IEC_60559_BFP_EXT. */ - -/* The macros for _Bool are not defined by GCC's <limits.h> before GCC - 11, or if _GNU_SOURCE is defined rather than enabling C2x support - with -std. */ -#if __GLIBC_USE (ISOC2X) -# ifndef BOOL_MAX -# define BOOL_MAX 1 -# endif -# ifndef BOOL_WIDTH -# define BOOL_WIDTH 1 -# endif -#endif - -#ifdef __USE_POSIX -/* POSIX adds things to <limits.h>. */ -# include <bits/posix1_lim.h> -#endif - -#ifdef __USE_POSIX2 -# include <bits/posix2_lim.h> -#endif - -#ifdef __USE_XOPEN -# include <bits/xopen_lim.h> -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@limits.h.blob deleted file mode 100644 index 113460631f731aaa0451f7ae11417a533e93072a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12826 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 Viv8%o3TSiW(2>*o#P6!&^M8;)l%oIu diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h deleted file mode 100644 index 70f2bd34..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm/errno.h> diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@errno.h.blob deleted file mode 100644 index e984661bb002d3b3ae65fe870a35a980e0338c71..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12157 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 IU~b^|f5q(8zyJUM diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h deleted file mode 100644 index c3547f07..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h +++ /dev/null @@ -1,21 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ -#ifndef _LINUX_LIMITS_H -#define _LINUX_LIMITS_H - -#define NR_OPEN 1024 - -#define NGROUPS_MAX 65536 /* supplemental group IDs are available */ -#define ARG_MAX 131072 /* # bytes of args + environ for exec() */ -#define LINK_MAX 127 /* # links a file may have */ -#define MAX_CANON 255 /* size of the canonical input queue */ -#define MAX_INPUT 255 /* size of the type-ahead buffer */ -#define NAME_MAX 255 /* # chars in a file name */ -#define PATH_MAX 4096 /* # chars in a path name including nul */ -#define PIPE_BUF 4096 /* # bytes in atomic write to a pipe */ -#define XATTR_NAME_MAX 255 /* # chars in an extended attribute name */ -#define XATTR_SIZE_MAX 65536 /* size of an extended attribute value (64k) */ -#define XATTR_LIST_MAX 65536 /* size of extended attribute namelist (64k) */ - -#define RTSIG_MAX 32 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@linux@limits.h.blob deleted file mode 100644 index 78d179e43efc7c017961a1be8a2a19a0c83a2783..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13100 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h deleted file mode 100644 index f1363994..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h +++ /dev/null @@ -1,1475 +0,0 @@ -/* Declarations for math functions. - Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.12 Mathematics <math.h> - */ - -#ifndef _MATH_H -#define _MATH_H 1 - -#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION -#include <bits/libc-header-start.h> - -#if defined log && defined __GNUC__ -# warning A macro called log was already defined when <math.h> was included. -# warning This will cause compilation problems. -#endif - -__BEGIN_DECLS - -/* Get definitions of __intmax_t and __uintmax_t. */ -#include <bits/types.h> - -/* Get machine-dependent vector math functions declarations. */ -#include <bits/math-vector.h> - -/* Gather machine dependent type support. */ -#include <bits/floatn.h> - -/* Value returned on overflow. With IEEE 754 floating point, this is - +Infinity, otherwise the largest representable positive value. */ -#if __GNUC_PREREQ (3, 3) -# define HUGE_VAL (__builtin_huge_val ()) -#else -/* This may provoke compiler warnings, and may not be rounded to - +Infinity in all IEEE 754 rounding modes, but is the best that can - be done in ISO C while remaining a constant expression. 10,000 is - greater than the maximum (decimal) exponent for all supported - floating-point formats and widths. */ -# define HUGE_VAL 1e10000 -#endif -#ifdef __USE_ISOC99 -# if __GNUC_PREREQ (3, 3) -# define HUGE_VALF (__builtin_huge_valf ()) -# define HUGE_VALL (__builtin_huge_vall ()) -# else -# define HUGE_VALF 1e10000f -# define HUGE_VALL 1e10000L -# endif -#endif -#if __HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT) -# define HUGE_VAL_F16 (__builtin_huge_valf16 ()) -#endif -#if __HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT) -# define HUGE_VAL_F32 (__builtin_huge_valf32 ()) -#endif -#if __HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT) -# define HUGE_VAL_F64 (__builtin_huge_valf64 ()) -#endif -#if __HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) -# define HUGE_VAL_F128 (__builtin_huge_valf128 ()) -#endif -#if __HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT) -# define HUGE_VAL_F32X (__builtin_huge_valf32x ()) -#endif -#if __HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT) -# define HUGE_VAL_F64X (__builtin_huge_valf64x ()) -#endif -#if __HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT) -# define HUGE_VAL_F128X (__builtin_huge_valf128x ()) -#endif - -#ifdef __USE_ISOC99 -/* IEEE positive infinity. */ -# if __GNUC_PREREQ (3, 3) -# define INFINITY (__builtin_inff ()) -# else -# define INFINITY HUGE_VALF -# endif - -/* IEEE Not A Number. */ -# if __GNUC_PREREQ (3, 3) -# define NAN (__builtin_nanf ("")) -# else -/* This will raise an "invalid" exception outside static initializers, - but is the best that can be done in ISO C while remaining a - constant expression. */ -# define NAN (0.0f / 0.0f) -# endif -#endif /* __USE_ISOC99 */ - -#if __GLIBC_USE (IEC_60559_BFP_EXT) -/* Signaling NaN macros, if supported. */ -# if __GNUC_PREREQ (3, 3) -# define SNANF (__builtin_nansf ("")) -# define SNAN (__builtin_nans ("")) -# define SNANL (__builtin_nansl ("")) -# endif -#endif -#if (__HAVE_FLOAT16 \ - && __GLIBC_USE (IEC_60559_TYPES_EXT) \ - && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) -# define SNANF16 (__builtin_nansf16 ("")) -#endif -#if (__HAVE_FLOAT32 \ - && __GLIBC_USE (IEC_60559_TYPES_EXT) \ - && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) -# define SNANF32 (__builtin_nansf32 ("")) -#endif -#if (__HAVE_FLOAT64 \ - && __GLIBC_USE (IEC_60559_TYPES_EXT) \ - && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) -# define SNANF64 (__builtin_nansf64 ("")) -#endif -#if (__HAVE_FLOAT128 \ - && __GLIBC_USE (IEC_60559_TYPES_EXT) \ - && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) -# define SNANF128 (__builtin_nansf128 ("")) -#endif -#if (__HAVE_FLOAT32X \ - && __GLIBC_USE (IEC_60559_TYPES_EXT) \ - && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) -# define SNANF32X (__builtin_nansf32x ("")) -#endif -#if (__HAVE_FLOAT64X \ - && __GLIBC_USE (IEC_60559_TYPES_EXT) \ - && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) -# define SNANF64X (__builtin_nansf64x ("")) -#endif -#if (__HAVE_FLOAT128X \ - && __GLIBC_USE (IEC_60559_TYPES_EXT) \ - && (defined __USE_GNU || !__GLIBC_USE (ISOC2X))) -# define SNANF128X (__builtin_nansf128x ("")) -#endif - -/* Get __GLIBC_FLT_EVAL_METHOD. */ -#include <bits/flt-eval-method.h> - -#ifdef __USE_ISOC99 -/* Define the following typedefs. - - float_t floating-point type at least as wide as `float' used - to evaluate `float' expressions - double_t floating-point type at least as wide as `double' used - to evaluate `double' expressions -*/ -# if __GLIBC_FLT_EVAL_METHOD == 0 || __GLIBC_FLT_EVAL_METHOD == 16 -typedef float float_t; -typedef double double_t; -# elif __GLIBC_FLT_EVAL_METHOD == 1 -typedef double float_t; -typedef double double_t; -# elif __GLIBC_FLT_EVAL_METHOD == 2 -typedef long double float_t; -typedef long double double_t; -# elif __GLIBC_FLT_EVAL_METHOD == 32 -typedef _Float32 float_t; -typedef double double_t; -# elif __GLIBC_FLT_EVAL_METHOD == 33 -typedef _Float32x float_t; -typedef _Float32x double_t; -# elif __GLIBC_FLT_EVAL_METHOD == 64 -typedef _Float64 float_t; -typedef _Float64 double_t; -# elif __GLIBC_FLT_EVAL_METHOD == 65 -typedef _Float64x float_t; -typedef _Float64x double_t; -# elif __GLIBC_FLT_EVAL_METHOD == 128 -typedef _Float128 float_t; -typedef _Float128 double_t; -# elif __GLIBC_FLT_EVAL_METHOD == 129 -typedef _Float128x float_t; -typedef _Float128x double_t; -# else -# error "Unknown __GLIBC_FLT_EVAL_METHOD" -# endif -#endif - -/* Define macros for the return values of ilogb and llogb, based on - __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. - - FP_ILOGB0 Expands to a value returned by `ilogb (0.0)'. - FP_ILOGBNAN Expands to a value returned by `ilogb (NAN)'. - FP_LLOGB0 Expands to a value returned by `llogb (0.0)'. - FP_LLOGBNAN Expands to a value returned by `llogb (NAN)'. - -*/ - -#include <bits/fp-logb.h> -#ifdef __USE_ISOC99 -# if __FP_LOGB0_IS_MIN -# define FP_ILOGB0 (-2147483647 - 1) -# else -# define FP_ILOGB0 (-2147483647) -# endif -# if __FP_LOGBNAN_IS_MIN -# define FP_ILOGBNAN (-2147483647 - 1) -# else -# define FP_ILOGBNAN 2147483647 -# endif -#endif -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) -# if __WORDSIZE == 32 -# define __FP_LONG_MAX 0x7fffffffL -# else -# define __FP_LONG_MAX 0x7fffffffffffffffL -# endif -# if __FP_LOGB0_IS_MIN -# define FP_LLOGB0 (-__FP_LONG_MAX - 1) -# else -# define FP_LLOGB0 (-__FP_LONG_MAX) -# endif -# if __FP_LOGBNAN_IS_MIN -# define FP_LLOGBNAN (-__FP_LONG_MAX - 1) -# else -# define FP_LLOGBNAN __FP_LONG_MAX -# endif -#endif - -/* Get the architecture specific values describing the floating-point - evaluation. The following symbols will get defined: - - FP_FAST_FMA - FP_FAST_FMAF - FP_FAST_FMAL - If defined it indicates that the `fma' function - generally executes about as fast as a multiply and an add. - This macro is defined only iff the `fma' function is - implemented directly with a hardware multiply-add instructions. -*/ - -#include <bits/fp-fast.h> - -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) -/* Rounding direction macros for fromfp functions. */ -enum - { - FP_INT_UPWARD = -# define FP_INT_UPWARD 0 - FP_INT_UPWARD, - FP_INT_DOWNWARD = -# define FP_INT_DOWNWARD 1 - FP_INT_DOWNWARD, - FP_INT_TOWARDZERO = -# define FP_INT_TOWARDZERO 2 - FP_INT_TOWARDZERO, - FP_INT_TONEARESTFROMZERO = -# define FP_INT_TONEARESTFROMZERO 3 - FP_INT_TONEARESTFROMZERO, - FP_INT_TONEAREST = -# define FP_INT_TONEAREST 4 - FP_INT_TONEAREST, - }; -#endif - -/* The file <bits/mathcalls.h> contains the prototypes for all the - actual math functions. These macros are used for those prototypes, - so we can easily declare each function as both `name' and `__name', - and can declare the float versions `namef' and `__namef'. */ - -#define __SIMD_DECL(function) __CONCAT (__DECL_SIMD_, function) - -#define __MATHCALL_VEC(function, suffix, args) \ - __SIMD_DECL (__MATH_PRECNAME (function, suffix)) \ - __MATHCALL (function, suffix, args) - -#define __MATHDECL_VEC(type, function,suffix, args) \ - __SIMD_DECL (__MATH_PRECNAME (function, suffix)) \ - __MATHDECL(type, function,suffix, args) - -#define __MATHCALL(function,suffix, args) \ - __MATHDECL (_Mdouble_,function,suffix, args) -#define __MATHDECL(type, function,suffix, args) \ - __MATHDECL_1(type, function,suffix, args); \ - __MATHDECL_1(type, __CONCAT(__,function),suffix, args) -#define __MATHCALLX(function,suffix, args, attrib) \ - __MATHDECLX (_Mdouble_,function,suffix, args, attrib) -#define __MATHDECLX(type, function,suffix, args, attrib) \ - __MATHDECL_1(type, function,suffix, args) __attribute__ (attrib); \ - __MATHDECL_1(type, __CONCAT(__,function),suffix, args) __attribute__ (attrib) -#define __MATHDECL_1_IMPL(type, function, suffix, args) \ - extern type __MATH_PRECNAME(function,suffix) args __THROW -#define __MATHDECL_1(type, function, suffix, args) \ - __MATHDECL_1_IMPL(type, function, suffix, args) -/* Ignore the alias by default. The alias is only useful with - redirections. */ -#define __MATHDECL_ALIAS(type, function, suffix, args, alias) \ - __MATHDECL_1(type, function, suffix, args) - -#define __MATHREDIR(type, function, suffix, args, to) \ - extern type __REDIRECT_NTH (__MATH_PRECNAME (function, suffix), args, to) - -#define _Mdouble_ double -#define __MATH_PRECNAME(name,r) __CONCAT(name,r) -#define __MATH_DECLARING_DOUBLE 1 -#define __MATH_DECLARING_FLOATN 0 -#include <bits/mathcalls-helper-functions.h> -#include <bits/mathcalls.h> -#undef _Mdouble_ -#undef __MATH_PRECNAME -#undef __MATH_DECLARING_DOUBLE -#undef __MATH_DECLARING_FLOATN - -#ifdef __USE_ISOC99 - - -/* Include the file of declarations again, this time using `float' - instead of `double' and appending f to each function name. */ - -# define _Mdouble_ float -# define __MATH_PRECNAME(name,r) name##f##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 0 -# include <bits/mathcalls-helper-functions.h> -# include <bits/mathcalls.h> -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN - -# if !(defined __NO_LONG_DOUBLE_MATH && defined _LIBC) \ - || defined __LDBL_COMPAT \ - || defined _LIBC_TEST -# ifdef __LDBL_COMPAT - -# ifdef __USE_ISOC99 -extern float __nldbl_nexttowardf (float __x, long double __y) - __THROW __attribute__ ((__const__)); -# ifdef __REDIRECT_NTH -extern float __REDIRECT_NTH (nexttowardf, (float __x, long double __y), - __nldbl_nexttowardf) - __attribute__ ((__const__)); -extern double __REDIRECT_NTH (nexttoward, (double __x, long double __y), - nextafter) __attribute__ ((__const__)); -extern long double __REDIRECT_NTH (nexttowardl, - (long double __x, long double __y), - nextafter) __attribute__ ((__const__)); -# endif -# endif - -# undef __MATHDECL_1 -# define __MATHDECL_1(type, function,suffix, args) \ - __MATHREDIR(type, function, suffix, args, __CONCAT(function,suffix)) - -# elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# ifdef __REDIRECT_NTH -# ifdef __USE_ISOC99 -extern float __REDIRECT_NTH (nexttowardf, (float __x, long double __y), - __nexttowardf_to_ieee128) - __attribute__ ((__const__)); -extern double __REDIRECT_NTH (nexttoward, (double __x, long double __y), - __nexttoward_to_ieee128) - __attribute__ ((__const__)); - -#define __dremieee128 __remainderieee128 -#define __gammaieee128 __lgammaieee128 - -# endif -# endif - -# undef __MATHDECL_1 -# undef __MATHDECL_ALIAS - -# define __REDIRTO(function, suffix) \ - __ ## function ## ieee128 ## suffix -# define __REDIRTO_ALT(function, suffix) \ - __ ## function ## f128 ## suffix - -# define __MATHDECL_1(type, function, suffix, args) \ - __MATHREDIR (type, function, suffix, args, __REDIRTO (function, suffix)) -# define __MATHDECL_ALIAS(type, function, suffix, args, alias) \ - __MATHREDIR (type, function, suffix, args, __REDIRTO_ALT (alias, suffix)) -# endif - -/* Include the file of declarations again, this time using `long double' - instead of `double' and appending l to each function name. */ - -# define _Mdouble_ long double -# define __MATH_PRECNAME(name,r) name##l##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 0 -# define __MATH_DECLARE_LDOUBLE 1 -# include <bits/mathcalls-helper-functions.h> -# include <bits/mathcalls.h> - -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN - -# if defined __LDBL_COMPAT \ - || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# undef __REDIRTO -# undef __REDIRTO_ALT -# undef __MATHDECL_1 -# undef __MATHDECL_ALIAS -# define __MATHDECL_1(type, function, suffix, args) \ - __MATHDECL_1_IMPL(type, function, suffix, args) -# define __MATHDECL_ALIAS(type, function, suffix, args, alias) \ - __MATHDECL_1(type, function, suffix, args) -# endif -# endif /* !(__NO_LONG_DOUBLE_MATH && _LIBC) || __LDBL_COMPAT */ - -#endif /* Use ISO C99. */ - -/* Include the file of declarations for _FloatN and _FloatNx - types. */ - -#if __HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !defined _LIBC) -# define _Mdouble_ _Float16 -# define __MATH_PRECNAME(name,r) name##f16##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 1 -# if __HAVE_DISTINCT_FLOAT16 -# include <bits/mathcalls-helper-functions.h> -# endif -# if __GLIBC_USE (IEC_60559_TYPES_EXT) -# include <bits/mathcalls.h> -# endif -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN -#endif /* __HAVE_DISTINCT_FLOAT16 || (__HAVE_FLOAT16 && !_LIBC). */ - -#if __HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !defined _LIBC) -# define _Mdouble_ _Float32 -# define __MATH_PRECNAME(name,r) name##f32##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 1 -# if __HAVE_DISTINCT_FLOAT32 -# include <bits/mathcalls-helper-functions.h> -# endif -# if __GLIBC_USE (IEC_60559_TYPES_EXT) -# include <bits/mathcalls.h> -# endif -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN -#endif /* __HAVE_DISTINCT_FLOAT32 || (__HAVE_FLOAT32 && !_LIBC). */ - -#if __HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !defined _LIBC) -# define _Mdouble_ _Float64 -# define __MATH_PRECNAME(name,r) name##f64##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 1 -# if __HAVE_DISTINCT_FLOAT64 -# include <bits/mathcalls-helper-functions.h> -# endif -# if __GLIBC_USE (IEC_60559_TYPES_EXT) -# include <bits/mathcalls.h> -# endif -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN -#endif /* __HAVE_DISTINCT_FLOAT64 || (__HAVE_FLOAT64 && !_LIBC). */ - -#if __HAVE_DISTINCT_FLOAT128 || (__HAVE_FLOAT128 && !defined _LIBC) -# define _Mdouble_ _Float128 -# define __MATH_PRECNAME(name,r) name##f128##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 1 -# if __HAVE_DISTINCT_FLOAT128 -# include <bits/mathcalls-helper-functions.h> -# endif -# if __GLIBC_USE (IEC_60559_TYPES_EXT) -# include <bits/mathcalls.h> -# endif -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN -#endif /* __HAVE_DISTINCT_FLOAT128 || (__HAVE_FLOAT128 && !_LIBC). */ - -#if __HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !defined _LIBC) -# define _Mdouble_ _Float32x -# define __MATH_PRECNAME(name,r) name##f32x##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 1 -# if __HAVE_DISTINCT_FLOAT32X -# include <bits/mathcalls-helper-functions.h> -# endif -# if __GLIBC_USE (IEC_60559_TYPES_EXT) -# include <bits/mathcalls.h> -# endif -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN -#endif /* __HAVE_DISTINCT_FLOAT32X || (__HAVE_FLOAT32X && !_LIBC). */ - -#if __HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !defined _LIBC) -# define _Mdouble_ _Float64x -# define __MATH_PRECNAME(name,r) name##f64x##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 1 -# if __HAVE_DISTINCT_FLOAT64X -# include <bits/mathcalls-helper-functions.h> -# endif -# if __GLIBC_USE (IEC_60559_TYPES_EXT) -# include <bits/mathcalls.h> -# endif -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN -#endif /* __HAVE_DISTINCT_FLOAT64X || (__HAVE_FLOAT64X && !_LIBC). */ - -#if __HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !defined _LIBC) -# define _Mdouble_ _Float128x -# define __MATH_PRECNAME(name,r) name##f128x##r -# define __MATH_DECLARING_DOUBLE 0 -# define __MATH_DECLARING_FLOATN 1 -# if __HAVE_DISTINCT_FLOAT128X -# include <bits/mathcalls-helper-functions.h> -# endif -# if __GLIBC_USE (IEC_60559_TYPES_EXT) -# include <bits/mathcalls.h> -# endif -# undef _Mdouble_ -# undef __MATH_PRECNAME -# undef __MATH_DECLARING_DOUBLE -# undef __MATH_DECLARING_FLOATN -#endif /* __HAVE_DISTINCT_FLOAT128X || (__HAVE_FLOAT128X && !_LIBC). */ - -#undef __MATHDECL_1_IMPL -#undef __MATHDECL_1 -#undef __MATHDECL_ALIAS -#undef __MATHDECL -#undef __MATHCALL - -/* Declare functions returning a narrower type. */ -#define __MATHCALL_NARROW_ARGS_1 (_Marg_ __x) -#define __MATHCALL_NARROW_ARGS_2 (_Marg_ __x, _Marg_ __y) -#define __MATHCALL_NARROW_ARGS_3 (_Marg_ __x, _Marg_ __y, _Marg_ __z) -#define __MATHCALL_NARROW_NORMAL(func, nargs) \ - extern _Mret_ func __MATHCALL_NARROW_ARGS_ ## nargs __THROW -#define __MATHCALL_NARROW_REDIR(func, redir, nargs) \ - extern _Mret_ __REDIRECT_NTH (func, __MATHCALL_NARROW_ARGS_ ## nargs, \ - redir) -#define __MATHCALL_NARROW(func, redir, nargs) \ - __MATHCALL_NARROW_NORMAL (func, nargs) - -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) - -# define _Mret_ float -# define _Marg_ double -# define __MATHCALL_NAME(name) f ## name -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME - -# define _Mret_ float -# define _Marg_ long double -# define __MATHCALL_NAME(name) f ## name ## l -# ifdef __LDBL_COMPAT -# define __MATHCALL_REDIR_NAME(name) f ## name -# define __MATHCALL_REDIR_NAME2(name) f ## name -# undef __MATHCALL_NARROW -# define __MATHCALL_NARROW(func, redir, nargs) \ - __MATHCALL_NARROW_REDIR (func, redir, nargs) -# elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# define __MATHCALL_REDIR_NAME(name) __ ## f32 ## name ## ieee128 -# define __MATHCALL_REDIR_NAME2(name) __ ## f32 ## name ## ieee128 -# undef __MATHCALL_NARROW -# define __MATHCALL_NARROW(func, redir, nargs) \ - __MATHCALL_NARROW_REDIR (func, redir, nargs) -# endif -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# if defined __LDBL_COMPAT \ - || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# undef __MATHCALL_REDIR_NAME -# undef __MATHCALL_REDIR_NAME2 -# undef __MATHCALL_NARROW -# define __MATHCALL_NARROW(func, redir, nargs) \ - __MATHCALL_NARROW_NORMAL (func, nargs) -# endif - -# define _Mret_ double -# define _Marg_ long double -# define __MATHCALL_NAME(name) d ## name ## l -# ifdef __LDBL_COMPAT -# define __MATHCALL_REDIR_NAME(name) __nldbl_d ## name ## l -# define __MATHCALL_REDIR_NAME2(name) name -# undef __MATHCALL_NARROW -# define __MATHCALL_NARROW(func, redir, nargs) \ - __MATHCALL_NARROW_REDIR (func, redir, nargs) -# elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# define __MATHCALL_REDIR_NAME(name) __ ## f64 ## name ## ieee128 -# define __MATHCALL_REDIR_NAME2(name) __ ## f64 ## name ## ieee128 -# undef __MATHCALL_NARROW -# define __MATHCALL_NARROW(func, redir, nargs) \ - __MATHCALL_NARROW_REDIR (func, redir, nargs) -# endif -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# if defined __LDBL_COMPAT \ - || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# undef __MATHCALL_REDIR_NAME -# undef __MATHCALL_REDIR_NAME2 -# undef __MATHCALL_NARROW -# define __MATHCALL_NARROW(func, redir, nargs) \ - __MATHCALL_NARROW_NORMAL (func, nargs) -# endif - -#endif - -#if __GLIBC_USE (IEC_60559_TYPES_EXT) - -# if __HAVE_FLOAT16 && __HAVE_FLOAT32 -# define _Mret_ _Float16 -# define _Marg_ _Float32 -# define __MATHCALL_NAME(name) f16 ## name ## f32 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT16 && __HAVE_FLOAT32X -# define _Mret_ _Float16 -# define _Marg_ _Float32x -# define __MATHCALL_NAME(name) f16 ## name ## f32x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT16 && __HAVE_FLOAT64 -# define _Mret_ _Float16 -# define _Marg_ _Float64 -# define __MATHCALL_NAME(name) f16 ## name ## f64 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT16 && __HAVE_FLOAT64X -# define _Mret_ _Float16 -# define _Marg_ _Float64x -# define __MATHCALL_NAME(name) f16 ## name ## f64x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT16 && __HAVE_FLOAT128 -# define _Mret_ _Float16 -# define _Marg_ _Float128 -# define __MATHCALL_NAME(name) f16 ## name ## f128 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT16 && __HAVE_FLOAT128X -# define _Mret_ _Float16 -# define _Marg_ _Float128x -# define __MATHCALL_NAME(name) f16 ## name ## f128x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32 && __HAVE_FLOAT32X -# define _Mret_ _Float32 -# define _Marg_ _Float32x -# define __MATHCALL_NAME(name) f32 ## name ## f32x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32 && __HAVE_FLOAT64 -# define _Mret_ _Float32 -# define _Marg_ _Float64 -# define __MATHCALL_NAME(name) f32 ## name ## f64 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32 && __HAVE_FLOAT64X -# define _Mret_ _Float32 -# define _Marg_ _Float64x -# define __MATHCALL_NAME(name) f32 ## name ## f64x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32 && __HAVE_FLOAT128 -# define _Mret_ _Float32 -# define _Marg_ _Float128 -# define __MATHCALL_NAME(name) f32 ## name ## f128 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32 && __HAVE_FLOAT128X -# define _Mret_ _Float32 -# define _Marg_ _Float128x -# define __MATHCALL_NAME(name) f32 ## name ## f128x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32X && __HAVE_FLOAT64 -# define _Mret_ _Float32x -# define _Marg_ _Float64 -# define __MATHCALL_NAME(name) f32x ## name ## f64 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32X && __HAVE_FLOAT64X -# define _Mret_ _Float32x -# define _Marg_ _Float64x -# define __MATHCALL_NAME(name) f32x ## name ## f64x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32X && __HAVE_FLOAT128 -# define _Mret_ _Float32x -# define _Marg_ _Float128 -# define __MATHCALL_NAME(name) f32x ## name ## f128 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT32X && __HAVE_FLOAT128X -# define _Mret_ _Float32x -# define _Marg_ _Float128x -# define __MATHCALL_NAME(name) f32x ## name ## f128x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT64 && __HAVE_FLOAT64X -# define _Mret_ _Float64 -# define _Marg_ _Float64x -# define __MATHCALL_NAME(name) f64 ## name ## f64x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT64 && __HAVE_FLOAT128 -# define _Mret_ _Float64 -# define _Marg_ _Float128 -# define __MATHCALL_NAME(name) f64 ## name ## f128 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT64 && __HAVE_FLOAT128X -# define _Mret_ _Float64 -# define _Marg_ _Float128x -# define __MATHCALL_NAME(name) f64 ## name ## f128x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT64X && __HAVE_FLOAT128 -# define _Mret_ _Float64x -# define _Marg_ _Float128 -# define __MATHCALL_NAME(name) f64x ## name ## f128 -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT64X && __HAVE_FLOAT128X -# define _Mret_ _Float64x -# define _Marg_ _Float128x -# define __MATHCALL_NAME(name) f64x ## name ## f128x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -# if __HAVE_FLOAT128 && __HAVE_FLOAT128X -# define _Mret_ _Float128 -# define _Marg_ _Float128x -# define __MATHCALL_NAME(name) f128 ## name ## f128x -# include <bits/mathcalls-narrow.h> -# undef _Mret_ -# undef _Marg_ -# undef __MATHCALL_NAME -# endif - -#endif - -#undef __MATHCALL_NARROW_ARGS_1 -#undef __MATHCALL_NARROW_ARGS_2 -#undef __MATHCALL_NARROW_ARGS_3 -#undef __MATHCALL_NARROW_NORMAL -#undef __MATHCALL_NARROW_REDIR -#undef __MATHCALL_NARROW - -#if defined __USE_MISC || defined __USE_XOPEN -/* This variable is used by `gamma' and `lgamma'. */ -extern int signgam; -#endif - -#if (__HAVE_DISTINCT_FLOAT16 \ - || __HAVE_DISTINCT_FLOAT32 \ - || __HAVE_DISTINCT_FLOAT64 \ - || __HAVE_DISTINCT_FLOAT32X \ - || __HAVE_DISTINCT_FLOAT64X \ - || __HAVE_DISTINCT_FLOAT128X) -# error "Unsupported _FloatN or _FloatNx types for <math.h>." -#endif - -/* Depending on the type of TG_ARG, call an appropriately suffixed - version of FUNC with arguments (including parentheses) ARGS. - Suffixed functions may not exist for long double if it has the same - format as double, or for other types with the same format as float, - double or long double. The behavior is undefined if the argument - does not have a real floating type. The definition may use a - conditional expression, so all suffixed versions of FUNC must - return the same type (FUNC may include a cast if necessary rather - than being a single identifier). */ -#ifdef __NO_LONG_DOUBLE_MATH -# if __HAVE_DISTINCT_FLOAT128 -# error "Distinct _Float128 without distinct long double not supported." -# endif -# define __MATH_TG(TG_ARG, FUNC, ARGS) \ - (sizeof (TG_ARG) == sizeof (float) ? FUNC ## f ARGS : FUNC ARGS) -#elif __HAVE_DISTINCT_FLOAT128 -# if __HAVE_GENERIC_SELECTION -# if __HAVE_FLOATN_NOT_TYPEDEF && __HAVE_FLOAT32 -# define __MATH_TG_F32(FUNC, ARGS) _Float32: FUNC ## f ARGS, -# else -# define __MATH_TG_F32(FUNC, ARGS) -# endif -# if __HAVE_FLOATN_NOT_TYPEDEF && __HAVE_FLOAT64X -# if __HAVE_FLOAT64X_LONG_DOUBLE -# define __MATH_TG_F64X(FUNC, ARGS) _Float64x: FUNC ## l ARGS, -# else -# define __MATH_TG_F64X(FUNC, ARGS) _Float64x: FUNC ## f128 ARGS, -# endif -# else -# define __MATH_TG_F64X(FUNC, ARGS) -# endif -# define __MATH_TG(TG_ARG, FUNC, ARGS) \ - _Generic ((TG_ARG), \ - float: FUNC ## f ARGS, \ - __MATH_TG_F32 (FUNC, ARGS) \ - default: FUNC ARGS, \ - long double: FUNC ## l ARGS, \ - __MATH_TG_F64X (FUNC, ARGS) \ - _Float128: FUNC ## f128 ARGS) -# else -# if __HAVE_FLOATN_NOT_TYPEDEF -# error "Non-typedef _FloatN but no _Generic." -# endif -# define __MATH_TG(TG_ARG, FUNC, ARGS) \ - __builtin_choose_expr \ - (__builtin_types_compatible_p (__typeof (TG_ARG), float), \ - FUNC ## f ARGS, \ - __builtin_choose_expr \ - (__builtin_types_compatible_p (__typeof (TG_ARG), double), \ - FUNC ARGS, \ - __builtin_choose_expr \ - (__builtin_types_compatible_p (__typeof (TG_ARG), long double), \ - FUNC ## l ARGS, \ - FUNC ## f128 ARGS))) -# endif -#else -# define __MATH_TG(TG_ARG, FUNC, ARGS) \ - (sizeof (TG_ARG) == sizeof (float) \ - ? FUNC ## f ARGS \ - : sizeof (TG_ARG) == sizeof (double) \ - ? FUNC ARGS \ - : FUNC ## l ARGS) -#endif - -/* ISO C99 defines some generic macros which work on any data type. */ -#ifdef __USE_ISOC99 - -/* All floating-point numbers can be put in one of these categories. */ -enum - { - FP_NAN = -# define FP_NAN 0 - FP_NAN, - FP_INFINITE = -# define FP_INFINITE 1 - FP_INFINITE, - FP_ZERO = -# define FP_ZERO 2 - FP_ZERO, - FP_SUBNORMAL = -# define FP_SUBNORMAL 3 - FP_SUBNORMAL, - FP_NORMAL = -# define FP_NORMAL 4 - FP_NORMAL - }; - -/* GCC bug 66462 means we cannot use the math builtins with -fsignaling-nan, - so disable builtins if this is enabled. When fixed in a newer GCC, - the __SUPPORT_SNAN__ check may be skipped for those versions. */ - -/* Return number of classification appropriate for X. */ -# if ((__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ - || __glibc_clang_prereq (2,8)) \ - && (!defined __OPTIMIZE_SIZE__ || defined __cplusplus) - /* The check for __cplusplus allows the use of the builtin, even - when optimization for size is on. This is provided for - libstdc++, only to let its configure test work when it is built - with -Os. No further use of this definition of fpclassify is - expected in C++ mode, since libstdc++ provides its own version - of fpclassify in cmath (which undefines fpclassify). */ -# define fpclassify(x) __builtin_fpclassify (FP_NAN, FP_INFINITE, \ - FP_NORMAL, FP_SUBNORMAL, FP_ZERO, x) -# else -# define fpclassify(x) __MATH_TG ((x), __fpclassify, (x)) -# endif - -/* Return nonzero value if sign of X is negative. */ -# if __GNUC_PREREQ (6,0) || __glibc_clang_prereq (3,3) -# define signbit(x) __builtin_signbit (x) -# elif defined __cplusplus - /* In C++ mode, __MATH_TG cannot be used, because it relies on - __builtin_types_compatible_p, which is a C-only builtin. - The check for __cplusplus allows the use of the builtin instead of - __MATH_TG. This is provided for libstdc++, only to let its configure - test work. No further use of this definition of signbit is expected - in C++ mode, since libstdc++ provides its own version of signbit - in cmath (which undefines signbit). */ -# define signbit(x) __builtin_signbitl (x) -# elif __GNUC_PREREQ (4,0) -# define signbit(x) __MATH_TG ((x), __builtin_signbit, (x)) -# else -# define signbit(x) __MATH_TG ((x), __signbit, (x)) -# endif - -/* Return nonzero value if X is not +-Inf or NaN. */ -# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ - || __glibc_clang_prereq (2,8) -# define isfinite(x) __builtin_isfinite (x) -# else -# define isfinite(x) __MATH_TG ((x), __finite, (x)) -# endif - -/* Return nonzero value if X is neither zero, subnormal, Inf, nor NaN. */ -# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ - || __glibc_clang_prereq (2,8) -# define isnormal(x) __builtin_isnormal (x) -# else -# define isnormal(x) (fpclassify (x) == FP_NORMAL) -# endif - -/* Return nonzero value if X is a NaN. We could use `fpclassify' but - we already have this functions `__isnan' and it is faster. */ -# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ - || __glibc_clang_prereq (2,8) -# define isnan(x) __builtin_isnan (x) -# else -# define isnan(x) __MATH_TG ((x), __isnan, (x)) -# endif - -/* Return nonzero value if X is positive or negative infinity. */ -# if __HAVE_DISTINCT_FLOAT128 && !__GNUC_PREREQ (7,0) \ - && !defined __SUPPORT_SNAN__ && !defined __cplusplus \ - && !defined __clang__ - /* Since __builtin_isinf_sign is broken for float128 before GCC 7.0, - use the helper function, __isinff128, with older compilers. This is - only provided for C mode, because in C++ mode, GCC has no support - for __builtin_types_compatible_p (and when in C++ mode, this macro is - not used anyway, because libstdc++ headers undefine it). */ -# define isinf(x) \ - (__builtin_types_compatible_p (__typeof (x), _Float128) \ - ? __isinff128 (x) : __builtin_isinf_sign (x)) -# elif (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \ - || __glibc_clang_prereq (3,7) -# define isinf(x) __builtin_isinf_sign (x) -# else -# define isinf(x) __MATH_TG ((x), __isinf, (x)) -# endif - -/* Bitmasks for the math_errhandling macro. */ -# define MATH_ERRNO 1 /* errno set by math functions. */ -# define MATH_ERREXCEPT 2 /* Exceptions raised by math functions. */ - -/* By default all math functions support both errno and exception handling - (except for soft floating point implementations which may only support - errno handling). If errno handling is disabled, exceptions are still - supported by GLIBC. Set math_errhandling to 0 with -ffast-math (this is - nonconforming but it is more useful than leaving it undefined). */ -# ifdef __FAST_MATH__ -# define math_errhandling 0 -# elif defined __NO_MATH_ERRNO__ -# define math_errhandling (MATH_ERREXCEPT) -# else -# define math_errhandling (MATH_ERRNO | MATH_ERREXCEPT) -# endif - -#endif /* Use ISO C99. */ - -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) -# include <bits/iscanonical.h> - -/* Return nonzero value if X is a signaling NaN. */ -# ifndef __cplusplus -# define issignaling(x) __MATH_TG ((x), __issignaling, (x)) -# else - /* In C++ mode, __MATH_TG cannot be used, because it relies on - __builtin_types_compatible_p, which is a C-only builtin. On the - other hand, overloading provides the means to distinguish between - the floating-point types. The overloading resolution will match - the correct parameter (regardless of type qualifiers (i.e.: const - and volatile)). */ -extern "C++" { -inline int issignaling (float __val) { return __issignalingf (__val); } -inline int issignaling (double __val) { return __issignaling (__val); } -inline int -issignaling (long double __val) -{ -# ifdef __NO_LONG_DOUBLE_MATH - return __issignaling (__val); -# else - return __issignalingl (__val); -# endif -} -# if __HAVE_FLOAT128_UNLIKE_LDBL -/* When using an IEEE 128-bit long double, _Float128 is defined as long double - in C++. */ -inline int issignaling (_Float128 __val) { return __issignalingf128 (__val); } -# endif -} /* extern C++ */ -# endif - -/* Return nonzero value if X is subnormal. */ -# define issubnormal(x) (fpclassify (x) == FP_SUBNORMAL) - -/* Return nonzero value if X is zero. */ -# ifndef __cplusplus -# ifdef __SUPPORT_SNAN__ -# define iszero(x) (fpclassify (x) == FP_ZERO) -# else -# define iszero(x) (((__typeof (x)) (x)) == 0) -# endif -# else /* __cplusplus */ -extern "C++" { -# ifdef __SUPPORT_SNAN__ -inline int -iszero (float __val) -{ - return __fpclassifyf (__val) == FP_ZERO; -} -inline int -iszero (double __val) -{ - return __fpclassify (__val) == FP_ZERO; -} -inline int -iszero (long double __val) -{ -# ifdef __NO_LONG_DOUBLE_MATH - return __fpclassify (__val) == FP_ZERO; -# else - return __fpclassifyl (__val) == FP_ZERO; -# endif -} -# if __HAVE_FLOAT128_UNLIKE_LDBL - /* When using an IEEE 128-bit long double, _Float128 is defined as long double - in C++. */ -inline int -iszero (_Float128 __val) -{ - return __fpclassifyf128 (__val) == FP_ZERO; -} -# endif -# else -template <class __T> inline bool -iszero (__T __val) -{ - return __val == 0; -} -# endif -} /* extern C++ */ -# endif /* __cplusplus */ -#endif /* Use IEC_60559_BFP_EXT. */ - -#ifdef __USE_XOPEN -/* X/Open wants another strange constant. */ -# define MAXFLOAT 3.40282347e+38F -#endif - - -/* Some useful constants. */ -#if defined __USE_MISC || defined __USE_XOPEN -# define M_E 2.7182818284590452354 /* e */ -# define M_LOG2E 1.4426950408889634074 /* log_2 e */ -# define M_LOG10E 0.43429448190325182765 /* log_10 e */ -# define M_LN2 0.69314718055994530942 /* log_e 2 */ -# define M_LN10 2.30258509299404568402 /* log_e 10 */ -# define M_PI 3.14159265358979323846 /* pi */ -# define M_PI_2 1.57079632679489661923 /* pi/2 */ -# define M_PI_4 0.78539816339744830962 /* pi/4 */ -# define M_1_PI 0.31830988618379067154 /* 1/pi */ -# define M_2_PI 0.63661977236758134308 /* 2/pi */ -# define M_2_SQRTPI 1.12837916709551257390 /* 2/sqrt(pi) */ -# define M_SQRT2 1.41421356237309504880 /* sqrt(2) */ -# define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ -#endif - -/* GNU extension to provide float constants with similar names. */ -#ifdef __USE_GNU -# define M_Ef 2.7182818284590452354f /* e */ -# define M_LOG2Ef 1.4426950408889634074f /* log_2 e */ -# define M_LOG10Ef 0.43429448190325182765f /* log_10 e */ -# define M_LN2f 0.69314718055994530942f /* log_e 2 */ -# define M_LN10f 2.30258509299404568402f /* log_e 10 */ -# define M_PIf 3.14159265358979323846f /* pi */ -# define M_PI_2f 1.57079632679489661923f /* pi/2 */ -# define M_PI_4f 0.78539816339744830962f /* pi/4 */ -# define M_1_PIf 0.31830988618379067154f /* 1/pi */ -# define M_2_PIf 0.63661977236758134308f /* 2/pi */ -# define M_2_SQRTPIf 1.12837916709551257390f /* 2/sqrt(pi) */ -# define M_SQRT2f 1.41421356237309504880f /* sqrt(2) */ -# define M_SQRT1_2f 0.70710678118654752440f /* 1/sqrt(2) */ -#endif - -/* The above constants are not adequate for computation using `long double's. - Therefore we provide as an extension constants with similar names as a - GNU extension. Provide enough digits for the 128-bit IEEE quad. */ -#ifdef __USE_GNU -# define M_El 2.718281828459045235360287471352662498L /* e */ -# define M_LOG2El 1.442695040888963407359924681001892137L /* log_2 e */ -# define M_LOG10El 0.434294481903251827651128918916605082L /* log_10 e */ -# define M_LN2l 0.693147180559945309417232121458176568L /* log_e 2 */ -# define M_LN10l 2.302585092994045684017991454684364208L /* log_e 10 */ -# define M_PIl 3.141592653589793238462643383279502884L /* pi */ -# define M_PI_2l 1.570796326794896619231321691639751442L /* pi/2 */ -# define M_PI_4l 0.785398163397448309615660845819875721L /* pi/4 */ -# define M_1_PIl 0.318309886183790671537767526745028724L /* 1/pi */ -# define M_2_PIl 0.636619772367581343075535053490057448L /* 2/pi */ -# define M_2_SQRTPIl 1.128379167095512573896158903121545172L /* 2/sqrt(pi) */ -# define M_SQRT2l 1.414213562373095048801688724209698079L /* sqrt(2) */ -# define M_SQRT1_2l 0.707106781186547524400844362104849039L /* 1/sqrt(2) */ -#endif - -#if __HAVE_FLOAT16 && defined __USE_GNU -# define M_Ef16 __f16 (2.718281828459045235360287471352662498) /* e */ -# define M_LOG2Ef16 __f16 (1.442695040888963407359924681001892137) /* log_2 e */ -# define M_LOG10Ef16 __f16 (0.434294481903251827651128918916605082) /* log_10 e */ -# define M_LN2f16 __f16 (0.693147180559945309417232121458176568) /* log_e 2 */ -# define M_LN10f16 __f16 (2.302585092994045684017991454684364208) /* log_e 10 */ -# define M_PIf16 __f16 (3.141592653589793238462643383279502884) /* pi */ -# define M_PI_2f16 __f16 (1.570796326794896619231321691639751442) /* pi/2 */ -# define M_PI_4f16 __f16 (0.785398163397448309615660845819875721) /* pi/4 */ -# define M_1_PIf16 __f16 (0.318309886183790671537767526745028724) /* 1/pi */ -# define M_2_PIf16 __f16 (0.636619772367581343075535053490057448) /* 2/pi */ -# define M_2_SQRTPIf16 __f16 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ -# define M_SQRT2f16 __f16 (1.414213562373095048801688724209698079) /* sqrt(2) */ -# define M_SQRT1_2f16 __f16 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ -#endif - -#if __HAVE_FLOAT32 && defined __USE_GNU -# define M_Ef32 __f32 (2.718281828459045235360287471352662498) /* e */ -# define M_LOG2Ef32 __f32 (1.442695040888963407359924681001892137) /* log_2 e */ -# define M_LOG10Ef32 __f32 (0.434294481903251827651128918916605082) /* log_10 e */ -# define M_LN2f32 __f32 (0.693147180559945309417232121458176568) /* log_e 2 */ -# define M_LN10f32 __f32 (2.302585092994045684017991454684364208) /* log_e 10 */ -# define M_PIf32 __f32 (3.141592653589793238462643383279502884) /* pi */ -# define M_PI_2f32 __f32 (1.570796326794896619231321691639751442) /* pi/2 */ -# define M_PI_4f32 __f32 (0.785398163397448309615660845819875721) /* pi/4 */ -# define M_1_PIf32 __f32 (0.318309886183790671537767526745028724) /* 1/pi */ -# define M_2_PIf32 __f32 (0.636619772367581343075535053490057448) /* 2/pi */ -# define M_2_SQRTPIf32 __f32 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ -# define M_SQRT2f32 __f32 (1.414213562373095048801688724209698079) /* sqrt(2) */ -# define M_SQRT1_2f32 __f32 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ -#endif - -#if __HAVE_FLOAT64 && defined __USE_GNU -# define M_Ef64 __f64 (2.718281828459045235360287471352662498) /* e */ -# define M_LOG2Ef64 __f64 (1.442695040888963407359924681001892137) /* log_2 e */ -# define M_LOG10Ef64 __f64 (0.434294481903251827651128918916605082) /* log_10 e */ -# define M_LN2f64 __f64 (0.693147180559945309417232121458176568) /* log_e 2 */ -# define M_LN10f64 __f64 (2.302585092994045684017991454684364208) /* log_e 10 */ -# define M_PIf64 __f64 (3.141592653589793238462643383279502884) /* pi */ -# define M_PI_2f64 __f64 (1.570796326794896619231321691639751442) /* pi/2 */ -# define M_PI_4f64 __f64 (0.785398163397448309615660845819875721) /* pi/4 */ -# define M_1_PIf64 __f64 (0.318309886183790671537767526745028724) /* 1/pi */ -# define M_2_PIf64 __f64 (0.636619772367581343075535053490057448) /* 2/pi */ -# define M_2_SQRTPIf64 __f64 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ -# define M_SQRT2f64 __f64 (1.414213562373095048801688724209698079) /* sqrt(2) */ -# define M_SQRT1_2f64 __f64 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ -#endif - -#if __HAVE_FLOAT128 && defined __USE_GNU -# define M_Ef128 __f128 (2.718281828459045235360287471352662498) /* e */ -# define M_LOG2Ef128 __f128 (1.442695040888963407359924681001892137) /* log_2 e */ -# define M_LOG10Ef128 __f128 (0.434294481903251827651128918916605082) /* log_10 e */ -# define M_LN2f128 __f128 (0.693147180559945309417232121458176568) /* log_e 2 */ -# define M_LN10f128 __f128 (2.302585092994045684017991454684364208) /* log_e 10 */ -# define M_PIf128 __f128 (3.141592653589793238462643383279502884) /* pi */ -# define M_PI_2f128 __f128 (1.570796326794896619231321691639751442) /* pi/2 */ -# define M_PI_4f128 __f128 (0.785398163397448309615660845819875721) /* pi/4 */ -# define M_1_PIf128 __f128 (0.318309886183790671537767526745028724) /* 1/pi */ -# define M_2_PIf128 __f128 (0.636619772367581343075535053490057448) /* 2/pi */ -# define M_2_SQRTPIf128 __f128 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ -# define M_SQRT2f128 __f128 (1.414213562373095048801688724209698079) /* sqrt(2) */ -# define M_SQRT1_2f128 __f128 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ -#endif - -#if __HAVE_FLOAT32X && defined __USE_GNU -# define M_Ef32x __f32x (2.718281828459045235360287471352662498) /* e */ -# define M_LOG2Ef32x __f32x (1.442695040888963407359924681001892137) /* log_2 e */ -# define M_LOG10Ef32x __f32x (0.434294481903251827651128918916605082) /* log_10 e */ -# define M_LN2f32x __f32x (0.693147180559945309417232121458176568) /* log_e 2 */ -# define M_LN10f32x __f32x (2.302585092994045684017991454684364208) /* log_e 10 */ -# define M_PIf32x __f32x (3.141592653589793238462643383279502884) /* pi */ -# define M_PI_2f32x __f32x (1.570796326794896619231321691639751442) /* pi/2 */ -# define M_PI_4f32x __f32x (0.785398163397448309615660845819875721) /* pi/4 */ -# define M_1_PIf32x __f32x (0.318309886183790671537767526745028724) /* 1/pi */ -# define M_2_PIf32x __f32x (0.636619772367581343075535053490057448) /* 2/pi */ -# define M_2_SQRTPIf32x __f32x (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ -# define M_SQRT2f32x __f32x (1.414213562373095048801688724209698079) /* sqrt(2) */ -# define M_SQRT1_2f32x __f32x (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ -#endif - -#if __HAVE_FLOAT64X && defined __USE_GNU -# define M_Ef64x __f64x (2.718281828459045235360287471352662498) /* e */ -# define M_LOG2Ef64x __f64x (1.442695040888963407359924681001892137) /* log_2 e */ -# define M_LOG10Ef64x __f64x (0.434294481903251827651128918916605082) /* log_10 e */ -# define M_LN2f64x __f64x (0.693147180559945309417232121458176568) /* log_e 2 */ -# define M_LN10f64x __f64x (2.302585092994045684017991454684364208) /* log_e 10 */ -# define M_PIf64x __f64x (3.141592653589793238462643383279502884) /* pi */ -# define M_PI_2f64x __f64x (1.570796326794896619231321691639751442) /* pi/2 */ -# define M_PI_4f64x __f64x (0.785398163397448309615660845819875721) /* pi/4 */ -# define M_1_PIf64x __f64x (0.318309886183790671537767526745028724) /* 1/pi */ -# define M_2_PIf64x __f64x (0.636619772367581343075535053490057448) /* 2/pi */ -# define M_2_SQRTPIf64x __f64x (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */ -# define M_SQRT2f64x __f64x (1.414213562373095048801688724209698079) /* sqrt(2) */ -# define M_SQRT1_2f64x __f64x (0.707106781186547524400844362104849039) /* 1/sqrt(2) */ -#endif - -#if __HAVE_FLOAT128X && defined __USE_GNU -# error "M_* values needed for _Float128x" -#endif - -#ifdef __USE_ISOC99 -# if __GNUC_PREREQ (3, 1) -/* ISO C99 defines some macros to compare number while taking care for - unordered numbers. Many FPUs provide special instructions to support - these operations. Generic support in GCC for these as builtins went - in 2.97, but not all cpus added their patterns until 3.1. Therefore - we enable the builtins from 3.1 onwards and use a generic implementation - otherwise. */ -# define isgreater(x, y) __builtin_isgreater(x, y) -# define isgreaterequal(x, y) __builtin_isgreaterequal(x, y) -# define isless(x, y) __builtin_isless(x, y) -# define islessequal(x, y) __builtin_islessequal(x, y) -# define islessgreater(x, y) __builtin_islessgreater(x, y) -# define isunordered(x, y) __builtin_isunordered(x, y) -# else -# define isgreater(x, y) \ - (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ - !isunordered (__x, __y) && __x > __y; })) -# define isgreaterequal(x, y) \ - (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ - !isunordered (__x, __y) && __x >= __y; })) -# define isless(x, y) \ - (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ - !isunordered (__x, __y) && __x < __y; })) -# define islessequal(x, y) \ - (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ - !isunordered (__x, __y) && __x <= __y; })) -# define islessgreater(x, y) \ - (__extension__ ({ __typeof__ (x) __x = (x); __typeof__ (y) __y = (y); \ - !isunordered (__x, __y) && __x != __y; })) -/* isunordered must always check both operands first for signaling NaNs. */ -# define isunordered(x, y) \ - (__extension__ ({ __typeof__ (x) __u = (x); __typeof__ (y) __v = (y); \ - __u != __v && (__u != __u || __v != __v); })) -# endif -#endif - -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) -/* An expression whose type has the widest of the evaluation formats - of X and Y (which are of floating-point types). */ -# if __FLT_EVAL_METHOD__ == 2 || __FLT_EVAL_METHOD__ > 64 -# define __MATH_EVAL_FMT2(x, y) ((x) + (y) + 0.0L) -# elif __FLT_EVAL_METHOD__ == 1 || __FLT_EVAL_METHOD__ > 32 -# define __MATH_EVAL_FMT2(x, y) ((x) + (y) + 0.0) -# elif __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == 32 -# define __MATH_EVAL_FMT2(x, y) ((x) + (y) + 0.0f) -# else -# define __MATH_EVAL_FMT2(x, y) ((x) + (y)) -# endif - -/* Return X == Y but raising "invalid" and setting errno if X or Y is - a NaN. */ -# if !defined __cplusplus || (__cplusplus < 201103L && !defined __GNUC__) -# define iseqsig(x, y) \ - __MATH_TG (__MATH_EVAL_FMT2 (x, y), __iseqsig, ((x), (y))) -# else -/* In C++ mode, __MATH_TG cannot be used, because it relies on - __builtin_types_compatible_p, which is a C-only builtin. Moreover, - the comparison macros from ISO C take two floating-point arguments, - which need not have the same type. Choosing what underlying function - to call requires evaluating the formats of the arguments, then - selecting which is wider. The macro __MATH_EVAL_FMT2 provides this - information, however, only the type of the macro expansion is - relevant (actually evaluating the expression would be incorrect). - Thus, the type is used as a template parameter for __iseqsig_type, - which calls the appropriate underlying function. */ -extern "C++" { -template<typename> struct __iseqsig_type; - -template<> struct __iseqsig_type<float> -{ - static int __call (float __x, float __y) throw () - { - return __iseqsigf (__x, __y); - } -}; - -template<> struct __iseqsig_type<double> -{ - static int __call (double __x, double __y) throw () - { - return __iseqsig (__x, __y); - } -}; - -template<> struct __iseqsig_type<long double> -{ - static int __call (long double __x, long double __y) throw () - { -# ifndef __NO_LONG_DOUBLE_MATH - return __iseqsigl (__x, __y); -# else - return __iseqsig (__x, __y); -# endif - } -}; - -# if __HAVE_FLOAT32 && __GNUC_PREREQ (13, 0) -template<> struct __iseqsig_type<_Float32> -{ - static int __call (_Float32 __x, _Float32 __y) throw () - { - return __iseqsigf (__x, __y); - } -}; -# endif - -# if __HAVE_FLOAT64 && __GNUC_PREREQ (13, 0) -template<> struct __iseqsig_type<_Float64> -{ - static int __call (_Float64 __x, _Float64 __y) throw () - { - return __iseqsig (__x, __y); - } -}; -# endif - -# if __HAVE_FLOAT128_UNLIKE_LDBL || (__HAVE_FLOAT128 && __GNUC_PREREQ (13, 0)) - /* When using an IEEE 128-bit long double, _Float128 is defined as long double - in C++. */ -template<> struct __iseqsig_type<_Float128> -{ - static int __call (_Float128 __x, _Float128 __y) throw () - { -# if __HAVE_FLOAT128_UNLIKE_LDBL - return __iseqsigf128 (__x, __y); -# else - return __iseqsigl (__x, __y); -# endif - } -}; -# endif - -# if __HAVE_FLOAT32X && __GNUC_PREREQ (13, 0) -template<> struct __iseqsig_type<_Float32x> -{ - static int __call (_Float32x __x, _Float32x __y) throw () - { - return __iseqsig (__x, __y); - } -}; -# endif - -# if __HAVE_FLOAT64X && __GNUC_PREREQ (13, 0) -template<> struct __iseqsig_type<_Float64x> -{ - static int __call (_Float64x __x, _Float64x __y) throw () - { -# if __HAVE_FLOAT64X_LONG_DOUBLE - return __iseqsigl (__x, __y); -# else - return __iseqsigf128 (__x, __y); -# endif - } -}; -# endif - -template<typename _T1, typename _T2> -inline int -iseqsig (_T1 __x, _T2 __y) throw () -{ -# if __cplusplus >= 201103L - typedef decltype (__MATH_EVAL_FMT2 (__x, __y)) _T3; -# else - typedef __typeof (__MATH_EVAL_FMT2 (__x, __y)) _T3; -# endif - return __iseqsig_type<_T3>::__call (__x, __y); -} - -} /* extern "C++" */ -# endif /* __cplusplus */ - -#endif - -__END_DECLS - - -#endif /* math.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@math.h.blob deleted file mode 100644 index 46970ddabe6658d9caa22889a804385f79a1326b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23189 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h deleted file mode 100644 index 7f654835..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h +++ /dev/null @@ -1,1348 +0,0 @@ -/* Copyright (C) 2002-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _PTHREAD_H -#define _PTHREAD_H 1 - -#include <features.h> -#include <sched.h> -#include <time.h> - -#include <bits/endian.h> -#include <bits/pthreadtypes.h> -#include <bits/setjmp.h> -#include <bits/wordsize.h> -#include <bits/types/struct_timespec.h> -#include <bits/types/__sigset_t.h> -#include <bits/types/struct___jmp_buf_tag.h> -#ifdef __USE_MISC -# include <bits/pthread_stack_min-dynamic.h> -#endif - -/* Detach state. */ -enum -{ - PTHREAD_CREATE_JOINABLE, -#define PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_JOINABLE - PTHREAD_CREATE_DETACHED -#define PTHREAD_CREATE_DETACHED PTHREAD_CREATE_DETACHED -}; - - -/* Mutex types. */ -enum -{ - PTHREAD_MUTEX_TIMED_NP, - PTHREAD_MUTEX_RECURSIVE_NP, - PTHREAD_MUTEX_ERRORCHECK_NP, - PTHREAD_MUTEX_ADAPTIVE_NP -#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 - , - PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP, - PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP, - PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP, - PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL -#endif -#ifdef __USE_GNU - /* For compatibility. */ - , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_TIMED_NP -#endif -}; - - -#ifdef __USE_XOPEN2K -/* Robust mutex or not flags. */ -enum -{ - PTHREAD_MUTEX_STALLED, - PTHREAD_MUTEX_STALLED_NP = PTHREAD_MUTEX_STALLED, - PTHREAD_MUTEX_ROBUST, - PTHREAD_MUTEX_ROBUST_NP = PTHREAD_MUTEX_ROBUST -}; -#endif - - -#if defined __USE_POSIX199506 || defined __USE_UNIX98 -/* Mutex protocols. */ -enum -{ - PTHREAD_PRIO_NONE, - PTHREAD_PRIO_INHERIT, - PTHREAD_PRIO_PROTECT -}; -#endif - - -#define PTHREAD_MUTEX_INITIALIZER \ - { { __PTHREAD_MUTEX_INITIALIZER (PTHREAD_MUTEX_TIMED_NP) } } -#ifdef __USE_GNU -# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \ - { { __PTHREAD_MUTEX_INITIALIZER (PTHREAD_MUTEX_RECURSIVE_NP) } } -# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \ - { { __PTHREAD_MUTEX_INITIALIZER (PTHREAD_MUTEX_ERRORCHECK_NP) } } -# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \ - { { __PTHREAD_MUTEX_INITIALIZER (PTHREAD_MUTEX_ADAPTIVE_NP) } } -#endif - - -/* Read-write lock types. */ -#if defined __USE_UNIX98 || defined __USE_XOPEN2K -enum -{ - PTHREAD_RWLOCK_PREFER_READER_NP, - PTHREAD_RWLOCK_PREFER_WRITER_NP, - PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP, - PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP -}; - - -/* Read-write lock initializers. */ -# define PTHREAD_RWLOCK_INITIALIZER \ - { { __PTHREAD_RWLOCK_INITIALIZER (PTHREAD_RWLOCK_DEFAULT_NP) } } -# ifdef __USE_GNU -# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \ - { { __PTHREAD_RWLOCK_INITIALIZER (PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP) } } -# endif -#endif /* Unix98 or XOpen2K */ - - -/* Scheduler inheritance. */ -enum -{ - PTHREAD_INHERIT_SCHED, -#define PTHREAD_INHERIT_SCHED PTHREAD_INHERIT_SCHED - PTHREAD_EXPLICIT_SCHED -#define PTHREAD_EXPLICIT_SCHED PTHREAD_EXPLICIT_SCHED -}; - - -/* Scope handling. */ -enum -{ - PTHREAD_SCOPE_SYSTEM, -#define PTHREAD_SCOPE_SYSTEM PTHREAD_SCOPE_SYSTEM - PTHREAD_SCOPE_PROCESS -#define PTHREAD_SCOPE_PROCESS PTHREAD_SCOPE_PROCESS -}; - - -/* Process shared or private flag. */ -enum -{ - PTHREAD_PROCESS_PRIVATE, -#define PTHREAD_PROCESS_PRIVATE PTHREAD_PROCESS_PRIVATE - PTHREAD_PROCESS_SHARED -#define PTHREAD_PROCESS_SHARED PTHREAD_PROCESS_SHARED -}; - - - -/* Conditional variable handling. */ -#define PTHREAD_COND_INITIALIZER { { {0}, {0}, {0, 0}, {0, 0}, 0, 0, {0, 0} } } - - -/* Cleanup buffers */ -struct _pthread_cleanup_buffer -{ - void (*__routine) (void *); /* Function to call. */ - void *__arg; /* Its argument. */ - int __canceltype; /* Saved cancellation type. */ - struct _pthread_cleanup_buffer *__prev; /* Chaining of cleanup functions. */ -}; - -/* Cancellation */ -enum -{ - PTHREAD_CANCEL_ENABLE, -#define PTHREAD_CANCEL_ENABLE PTHREAD_CANCEL_ENABLE - PTHREAD_CANCEL_DISABLE -#define PTHREAD_CANCEL_DISABLE PTHREAD_CANCEL_DISABLE -}; -enum -{ - PTHREAD_CANCEL_DEFERRED, -#define PTHREAD_CANCEL_DEFERRED PTHREAD_CANCEL_DEFERRED - PTHREAD_CANCEL_ASYNCHRONOUS -#define PTHREAD_CANCEL_ASYNCHRONOUS PTHREAD_CANCEL_ASYNCHRONOUS -}; -#define PTHREAD_CANCELED ((void *) -1) - - -/* Single execution handling. */ -#define PTHREAD_ONCE_INIT 0 - - -#ifdef __USE_XOPEN2K -/* Value returned by 'pthread_barrier_wait' for one of the threads after - the required number of threads have called this function. - -1 is distinct from 0 and all errno constants */ -# define PTHREAD_BARRIER_SERIAL_THREAD -1 -#endif - - -__BEGIN_DECLS - -/* Create a new thread, starting with execution of START-ROUTINE - getting passed ARG. Creation attributed come from ATTR. The new - handle is stored in *NEWTHREAD. */ -extern int pthread_create (pthread_t *__restrict __newthread, - const pthread_attr_t *__restrict __attr, - void *(*__start_routine) (void *), - void *__restrict __arg) __THROWNL __nonnull ((1, 3)); - -/* Terminate calling thread. - - The registered cleanup handlers are called via exception handling - so we cannot mark this function with __THROW.*/ -extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__)); - -/* Make calling thread wait for termination of the thread TH. The - exit status of the thread is stored in *THREAD_RETURN, if THREAD_RETURN - is not NULL. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int pthread_join (pthread_t __th, void **__thread_return); - -#ifdef __USE_GNU -/* Check whether thread TH has terminated. If yes return the status of - the thread in *THREAD_RETURN, if THREAD_RETURN is not NULL. */ -extern int pthread_tryjoin_np (pthread_t __th, void **__thread_return) __THROW; - -# ifndef __USE_TIME_BITS64 -/* Make calling thread wait for termination of the thread TH, but only - until TIMEOUT. The exit status of the thread is stored in - *THREAD_RETURN, if THREAD_RETURN is not NULL. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return, - const struct timespec *__abstime); - -/* Make calling thread wait for termination of the thread TH, but only - until TIMEOUT measured against the clock specified by CLOCKID. The - exit status of the thread is stored in *THREAD_RETURN, if - THREAD_RETURN is not NULL. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int pthread_clockjoin_np (pthread_t __th, void **__thread_return, - clockid_t __clockid, - const struct timespec *__abstime); -# else -# ifdef __REDIRECT -extern int __REDIRECT (pthread_timedjoin_np, - (pthread_t __th, void **__thread_return, - const struct timespec *__abstime), - __pthread_timedjoin_np64); - -extern int __REDIRECT (pthread_clockjoin_np, - (pthread_t __th, void **__thread_return, - clockid_t __clockid, - const struct timespec *__abstime), - __pthread_clockjoin_np64); -# else -# define pthread_timedjoin_np __pthread_timedjoin_np64 -# define pthread_clockjoin_np __pthread_clockjoin_np64 -# endif -# endif -#endif - -/* Indicate that the thread TH is never to be joined with PTHREAD_JOIN. - The resources of TH will therefore be freed immediately when it - terminates, instead of waiting for another thread to perform PTHREAD_JOIN - on it. */ -extern int pthread_detach (pthread_t __th) __THROW; - - -/* Obtain the identifier of the current thread. */ -extern pthread_t pthread_self (void) __THROW __attribute__ ((__const__)); - -/* Compare two thread identifiers. */ -extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) - __THROW __attribute__ ((__const__)); - - -/* Thread attribute handling. */ - -/* Initialize thread attribute *ATTR with default attributes - (detachstate is PTHREAD_JOINABLE, scheduling policy is SCHED_OTHER, - no user-provided stack). */ -extern int pthread_attr_init (pthread_attr_t *__attr) __THROW __nonnull ((1)); - -/* Destroy thread attribute *ATTR. */ -extern int pthread_attr_destroy (pthread_attr_t *__attr) - __THROW __nonnull ((1)); - -/* Get detach state attribute. */ -extern int pthread_attr_getdetachstate (const pthread_attr_t *__attr, - int *__detachstate) - __THROW __nonnull ((1, 2)); - -/* Set detach state attribute. */ -extern int pthread_attr_setdetachstate (pthread_attr_t *__attr, - int __detachstate) - __THROW __nonnull ((1)); - - -/* Get the size of the guard area created for stack overflow protection. */ -extern int pthread_attr_getguardsize (const pthread_attr_t *__attr, - size_t *__guardsize) - __THROW __nonnull ((1, 2)); - -/* Set the size of the guard area created for stack overflow protection. */ -extern int pthread_attr_setguardsize (pthread_attr_t *__attr, - size_t __guardsize) - __THROW __nonnull ((1)); - - -/* Return in *PARAM the scheduling parameters of *ATTR. */ -extern int pthread_attr_getschedparam (const pthread_attr_t *__restrict __attr, - struct sched_param *__restrict __param) - __THROW __nonnull ((1, 2)); - -/* Set scheduling parameters (priority, etc) in *ATTR according to PARAM. */ -extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr, - const struct sched_param *__restrict - __param) __THROW __nonnull ((1, 2)); - -/* Return in *POLICY the scheduling policy of *ATTR. */ -extern int pthread_attr_getschedpolicy (const pthread_attr_t *__restrict - __attr, int *__restrict __policy) - __THROW __nonnull ((1, 2)); - -/* Set scheduling policy in *ATTR according to POLICY. */ -extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy) - __THROW __nonnull ((1)); - -/* Return in *INHERIT the scheduling inheritance mode of *ATTR. */ -extern int pthread_attr_getinheritsched (const pthread_attr_t *__restrict - __attr, int *__restrict __inherit) - __THROW __nonnull ((1, 2)); - -/* Set scheduling inheritance mode in *ATTR according to INHERIT. */ -extern int pthread_attr_setinheritsched (pthread_attr_t *__attr, - int __inherit) - __THROW __nonnull ((1)); - - -/* Return in *SCOPE the scheduling contention scope of *ATTR. */ -extern int pthread_attr_getscope (const pthread_attr_t *__restrict __attr, - int *__restrict __scope) - __THROW __nonnull ((1, 2)); - -/* Set scheduling contention scope in *ATTR according to SCOPE. */ -extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope) - __THROW __nonnull ((1)); - -/* Return the previously set address for the stack. */ -extern int pthread_attr_getstackaddr (const pthread_attr_t *__restrict - __attr, void **__restrict __stackaddr) - __THROW __nonnull ((1, 2)) __attribute_deprecated__; - -/* Set the starting address of the stack of the thread to be created. - Depending on whether the stack grows up or down the value must either - be higher or lower than all the address in the memory block. The - minimal size of the block must be PTHREAD_STACK_MIN. */ -extern int pthread_attr_setstackaddr (pthread_attr_t *__attr, - void *__stackaddr) - __THROW __nonnull ((1)) __attribute_deprecated__; - -/* Return the currently used minimal stack size. */ -extern int pthread_attr_getstacksize (const pthread_attr_t *__restrict - __attr, size_t *__restrict __stacksize) - __THROW __nonnull ((1, 2)); - -/* Add information about the minimum stack size needed for the thread - to be started. This size must never be less than PTHREAD_STACK_MIN - and must also not exceed the system limits. */ -extern int pthread_attr_setstacksize (pthread_attr_t *__attr, - size_t __stacksize) - __THROW __nonnull ((1)); - -#ifdef __USE_XOPEN2K -/* Return the previously set address for the stack. */ -extern int pthread_attr_getstack (const pthread_attr_t *__restrict __attr, - void **__restrict __stackaddr, - size_t *__restrict __stacksize) - __THROW __nonnull ((1, 2, 3)); - -/* The following two interfaces are intended to replace the last two. They - require setting the address as well as the size since only setting the - address will make the implementation on some architectures impossible. */ -extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr, - size_t __stacksize) __THROW __nonnull ((1)); -#endif - -#ifdef __USE_GNU -/* Thread created with attribute ATTR will be limited to run only on - the processors represented in CPUSET. */ -extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr, - size_t __cpusetsize, - const cpu_set_t *__cpuset) - __THROW __nonnull ((1, 3)); - -/* Get bit set in CPUSET representing the processors threads created with - ATTR can run on. */ -extern int pthread_attr_getaffinity_np (const pthread_attr_t *__attr, - size_t __cpusetsize, - cpu_set_t *__cpuset) - __THROW __nonnull ((1, 3)); - -/* Get the default attributes used by pthread_create in this process. */ -extern int pthread_getattr_default_np (pthread_attr_t *__attr) - __THROW __nonnull ((1)); - -/* Store *SIGMASK as the signal mask for the new thread in *ATTR. */ -extern int pthread_attr_setsigmask_np (pthread_attr_t *__attr, - const __sigset_t *sigmask); - -/* Store the signal mask of *ATTR in *SIGMASK. If there is no signal - mask stored, return PTHREAD_ATTR_NOSIGMASK_NP. Return zero on - success. */ -extern int pthread_attr_getsigmask_np (const pthread_attr_t *__attr, - __sigset_t *sigmask); - -/* Special return value from pthread_attr_getsigmask_np if the signal - mask has not been set. */ -#define PTHREAD_ATTR_NO_SIGMASK_NP (-1) - -/* Set the default attributes to be used by pthread_create in this - process. */ -extern int pthread_setattr_default_np (const pthread_attr_t *__attr) - __THROW __nonnull ((1)); - -/* Initialize thread attribute *ATTR with attributes corresponding to the - already running thread TH. It shall be called on uninitialized ATTR - and destroyed with pthread_attr_destroy when no longer needed. */ -extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr) - __THROW __nonnull ((2)); -#endif - - -/* Functions for scheduling control. */ - -/* Set the scheduling parameters for TARGET_THREAD according to POLICY - and *PARAM. */ -extern int pthread_setschedparam (pthread_t __target_thread, int __policy, - const struct sched_param *__param) - __THROW __nonnull ((3)); - -/* Return in *POLICY and *PARAM the scheduling parameters for TARGET_THREAD. */ -extern int pthread_getschedparam (pthread_t __target_thread, - int *__restrict __policy, - struct sched_param *__restrict __param) - __THROW __nonnull ((2, 3)); - -/* Set the scheduling priority for TARGET_THREAD. */ -extern int pthread_setschedprio (pthread_t __target_thread, int __prio) - __THROW; - - -#ifdef __USE_GNU -/* Get thread name visible in the kernel and its interfaces. */ -extern int pthread_getname_np (pthread_t __target_thread, char *__buf, - size_t __buflen) - __THROW __nonnull ((2)); - -/* Set thread name visible in the kernel and its interfaces. */ -extern int pthread_setname_np (pthread_t __target_thread, const char *__name) - __THROW __nonnull ((2)); -#endif - - -#ifdef __USE_UNIX98 -/* Determine level of concurrency. */ -extern int pthread_getconcurrency (void) __THROW; - -/* Set new concurrency level to LEVEL. */ -extern int pthread_setconcurrency (int __level) __THROW; -#endif - -#ifdef __USE_GNU -extern int pthread_yield (void) __THROW; -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (pthread_yield, (void), sched_yield) - __attribute_deprecated_msg__ ("\ -pthread_yield is deprecated, use sched_yield instead"); -# else -# define pthread_yield sched_yield -# endif - - -/* Limit specified thread TH to run only on the processors represented - in CPUSET. */ -extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize, - const cpu_set_t *__cpuset) - __THROW __nonnull ((3)); - -/* Get bit set in CPUSET representing the processors TH can run on. */ -extern int pthread_getaffinity_np (pthread_t __th, size_t __cpusetsize, - cpu_set_t *__cpuset) - __THROW __nonnull ((3)); -#endif - - -/* Functions for handling initialization. */ - -/* Guarantee that the initialization function INIT_ROUTINE will be called - only once, even if pthread_once is executed several times with the - same ONCE_CONTROL argument. ONCE_CONTROL must point to a static or - extern variable initialized to PTHREAD_ONCE_INIT. - - The initialization functions might throw exception which is why - this function is not marked with __THROW. */ -extern int pthread_once (pthread_once_t *__once_control, - void (*__init_routine) (void)) __nonnull ((1, 2)); - - -/* Functions for handling cancellation. - - Note that these functions are explicitly not marked to not throw an - exception in C++ code. If cancellation is implemented by unwinding - this is necessary to have the compiler generate the unwind information. */ - -/* Set cancellability state of current thread to STATE, returning old - state in *OLDSTATE if OLDSTATE is not NULL. */ -extern int pthread_setcancelstate (int __state, int *__oldstate); - -/* Set cancellation state of current thread to TYPE, returning the old - type in *OLDTYPE if OLDTYPE is not NULL. */ -extern int pthread_setcanceltype (int __type, int *__oldtype); - -/* Cancel THREAD immediately or at the next possibility. */ -extern int pthread_cancel (pthread_t __th); - -/* Test for pending cancellation for the current thread and terminate - the thread as per pthread_exit(PTHREAD_CANCELED) if it has been - cancelled. */ -extern void pthread_testcancel (void); - - -/* Cancellation handling with integration into exception handling. */ - -struct __cancel_jmp_buf_tag -{ - __jmp_buf __cancel_jmp_buf; - int __mask_was_saved; -}; - -typedef struct -{ - struct __cancel_jmp_buf_tag __cancel_jmp_buf[1]; - void *__pad[4]; -} __pthread_unwind_buf_t __attribute__ ((__aligned__)); - -/* No special attributes by default. */ -#ifndef __cleanup_fct_attribute -# define __cleanup_fct_attribute -#endif - - -/* Structure to hold the cleanup handler information. */ -struct __pthread_cleanup_frame -{ - void (*__cancel_routine) (void *); - void *__cancel_arg; - int __do_it; - int __cancel_type; -}; - -#if defined __GNUC__ && defined __EXCEPTIONS -# ifdef __cplusplus -/* Class to handle cancellation handler invocation. */ -class __pthread_cleanup_class -{ - void (*__cancel_routine) (void *); - void *__cancel_arg; - int __do_it; - int __cancel_type; - - public: - __pthread_cleanup_class (void (*__fct) (void *), void *__arg) - : __cancel_routine (__fct), __cancel_arg (__arg), __do_it (1) { } - ~__pthread_cleanup_class () { if (__do_it) __cancel_routine (__cancel_arg); } - void __setdoit (int __newval) { __do_it = __newval; } - void __defer () { pthread_setcanceltype (PTHREAD_CANCEL_DEFERRED, - &__cancel_type); } - void __restore () const { pthread_setcanceltype (__cancel_type, 0); } -}; - -/* Install a cleanup handler: ROUTINE will be called with arguments ARG - when the thread is canceled or calls pthread_exit. ROUTINE will also - be called with arguments ARG when the matching pthread_cleanup_pop - is executed with non-zero EXECUTE argument. - - pthread_cleanup_push and pthread_cleanup_pop are macros and must always - be used in matching pairs at the same nesting level of braces. */ -# define pthread_cleanup_push(routine, arg) \ - do { \ - __pthread_cleanup_class __clframe (routine, arg) - -/* Remove a cleanup handler installed by the matching pthread_cleanup_push. - If EXECUTE is non-zero, the handler function is called. */ -# define pthread_cleanup_pop(execute) \ - __clframe.__setdoit (execute); \ - } while (0) - -# ifdef __USE_GNU -/* Install a cleanup handler as pthread_cleanup_push does, but also - saves the current cancellation type and sets it to deferred - cancellation. */ -# define pthread_cleanup_push_defer_np(routine, arg) \ - do { \ - __pthread_cleanup_class __clframe (routine, arg); \ - __clframe.__defer () - -/* Remove a cleanup handler as pthread_cleanup_pop does, but also - restores the cancellation type that was in effect when the matching - pthread_cleanup_push_defer was called. */ -# define pthread_cleanup_pop_restore_np(execute) \ - __clframe.__restore (); \ - __clframe.__setdoit (execute); \ - } while (0) -# endif -# else -/* Function called to call the cleanup handler. As an extern inline - function the compiler is free to decide inlining the change when - needed or fall back on the copy which must exist somewhere - else. */ -__extern_inline void -__pthread_cleanup_routine (struct __pthread_cleanup_frame *__frame) -{ - if (__frame->__do_it) - __frame->__cancel_routine (__frame->__cancel_arg); -} - -/* Install a cleanup handler: ROUTINE will be called with arguments ARG - when the thread is canceled or calls pthread_exit. ROUTINE will also - be called with arguments ARG when the matching pthread_cleanup_pop - is executed with non-zero EXECUTE argument. - - pthread_cleanup_push and pthread_cleanup_pop are macros and must always - be used in matching pairs at the same nesting level of braces. */ -# define pthread_cleanup_push(routine, arg) \ - do { \ - struct __pthread_cleanup_frame __clframe \ - __attribute__ ((__cleanup__ (__pthread_cleanup_routine))) \ - = { .__cancel_routine = (routine), .__cancel_arg = (arg), \ - .__do_it = 1 }; - -/* Remove a cleanup handler installed by the matching pthread_cleanup_push. - If EXECUTE is non-zero, the handler function is called. */ -# define pthread_cleanup_pop(execute) \ - __clframe.__do_it = (execute); \ - } while (0) - -# ifdef __USE_GNU -/* Install a cleanup handler as pthread_cleanup_push does, but also - saves the current cancellation type and sets it to deferred - cancellation. */ -# define pthread_cleanup_push_defer_np(routine, arg) \ - do { \ - struct __pthread_cleanup_frame __clframe \ - __attribute__ ((__cleanup__ (__pthread_cleanup_routine))) \ - = { .__cancel_routine = (routine), .__cancel_arg = (arg), \ - .__do_it = 1 }; \ - (void) pthread_setcanceltype (PTHREAD_CANCEL_DEFERRED, \ - &__clframe.__cancel_type) - -/* Remove a cleanup handler as pthread_cleanup_pop does, but also - restores the cancellation type that was in effect when the matching - pthread_cleanup_push_defer was called. */ -# define pthread_cleanup_pop_restore_np(execute) \ - (void) pthread_setcanceltype (__clframe.__cancel_type, NULL); \ - __clframe.__do_it = (execute); \ - } while (0) -# endif -# endif -#else -/* Install a cleanup handler: ROUTINE will be called with arguments ARG - when the thread is canceled or calls pthread_exit. ROUTINE will also - be called with arguments ARG when the matching pthread_cleanup_pop - is executed with non-zero EXECUTE argument. - - pthread_cleanup_push and pthread_cleanup_pop are macros and must always - be used in matching pairs at the same nesting level of braces. */ -# define pthread_cleanup_push(routine, arg) \ - do { \ - __pthread_unwind_buf_t __cancel_buf; \ - void (*__cancel_routine) (void *) = (routine); \ - void *__cancel_arg = (arg); \ - int __not_first_call = __sigsetjmp_cancel (__cancel_buf.__cancel_jmp_buf, \ - 0); \ - if (__glibc_unlikely (__not_first_call)) \ - { \ - __cancel_routine (__cancel_arg); \ - __pthread_unwind_next (&__cancel_buf); \ - /* NOTREACHED */ \ - } \ - \ - __pthread_register_cancel (&__cancel_buf); \ - do { -extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf) - __cleanup_fct_attribute; - -/* Remove a cleanup handler installed by the matching pthread_cleanup_push. - If EXECUTE is non-zero, the handler function is called. */ -# define pthread_cleanup_pop(execute) \ - do { } while (0);/* Empty to allow label before pthread_cleanup_pop. */\ - } while (0); \ - __pthread_unregister_cancel (&__cancel_buf); \ - if (execute) \ - __cancel_routine (__cancel_arg); \ - } while (0) -extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf) - __cleanup_fct_attribute; - -# ifdef __USE_GNU -/* Install a cleanup handler as pthread_cleanup_push does, but also - saves the current cancellation type and sets it to deferred - cancellation. */ -# define pthread_cleanup_push_defer_np(routine, arg) \ - do { \ - __pthread_unwind_buf_t __cancel_buf; \ - void (*__cancel_routine) (void *) = (routine); \ - void *__cancel_arg = (arg); \ - int __not_first_call = __sigsetjmp_cancel (__cancel_buf.__cancel_jmp_buf, \ - 0); \ - if (__glibc_unlikely (__not_first_call)) \ - { \ - __cancel_routine (__cancel_arg); \ - __pthread_unwind_next (&__cancel_buf); \ - /* NOTREACHED */ \ - } \ - \ - __pthread_register_cancel_defer (&__cancel_buf); \ - do { -extern void __pthread_register_cancel_defer (__pthread_unwind_buf_t *__buf) - __cleanup_fct_attribute; - -/* Remove a cleanup handler as pthread_cleanup_pop does, but also - restores the cancellation type that was in effect when the matching - pthread_cleanup_push_defer was called. */ -# define pthread_cleanup_pop_restore_np(execute) \ - do { } while (0);/* Empty to allow label before pthread_cleanup_pop. */\ - } while (0); \ - __pthread_unregister_cancel_restore (&__cancel_buf); \ - if (execute) \ - __cancel_routine (__cancel_arg); \ - } while (0) -extern void __pthread_unregister_cancel_restore (__pthread_unwind_buf_t *__buf) - __cleanup_fct_attribute; -# endif - -/* Internal interface to initiate cleanup. */ -extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf) - __cleanup_fct_attribute __attribute__ ((__noreturn__)) -# ifndef SHARED - __attribute__ ((__weak__)) -# endif - ; -#endif - -/* Function used in the macros. Calling __sigsetjmp, with its first - argument declared as an array, results in a -Wstringop-overflow - warning from GCC 11 because struct pthread_unwind_buf is smaller - than jmp_buf. The calls from the macros have __SAVEMASK set to 0, - so nothing beyond the common prefix is used and this warning is a - false positive. Use an alias with its first argument declared to - use the type in the macros if possible to avoid this warning. */ -#if __GNUC_PREREQ (11, 0) -extern int __REDIRECT_NTHNL (__sigsetjmp_cancel, - (struct __cancel_jmp_buf_tag __env[1], - int __savemask), - __sigsetjmp) __attribute_returns_twice__; -#else -# define __sigsetjmp_cancel(env, savemask) \ - __sigsetjmp ((struct __jmp_buf_tag *) (void *) (env), (savemask)) -extern int __sigsetjmp (struct __jmp_buf_tag __env[1], - int __savemask) __THROWNL; -#endif - - -/* Mutex handling. */ - -/* Initialize a mutex. */ -extern int pthread_mutex_init (pthread_mutex_t *__mutex, - const pthread_mutexattr_t *__mutexattr) - __THROW __nonnull ((1)); - -/* Destroy a mutex. */ -extern int pthread_mutex_destroy (pthread_mutex_t *__mutex) - __THROW __nonnull ((1)); - -/* Try locking a mutex. */ -extern int pthread_mutex_trylock (pthread_mutex_t *__mutex) - __THROWNL __nonnull ((1)); - -/* Lock a mutex. */ -extern int pthread_mutex_lock (pthread_mutex_t *__mutex) - __THROWNL __nonnull ((1)); - -#ifdef __USE_XOPEN2K -/* Wait until lock becomes available, or specified time passes. */ -# ifndef __USE_TIME_BITS64 -extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex, - const struct timespec *__restrict - __abstime) __THROWNL __nonnull ((1, 2)); -# else -# ifdef __REDIRECT_NTHNL -extern int __REDIRECT_NTHNL (pthread_mutex_timedlock, - (pthread_mutex_t *__restrict __mutex, - const struct timespec *__restrict __abstime), - __pthread_mutex_timedlock64) __nonnull ((1, 2)); -# else -# define pthread_mutex_timedlock __pthread_mutex_timedlock64 -# endif -# endif -#endif - -#ifdef __USE_GNU -# ifndef __USE_TIME_BITS64 -extern int pthread_mutex_clocklock (pthread_mutex_t *__restrict __mutex, - clockid_t __clockid, - const struct timespec *__restrict - __abstime) __THROWNL __nonnull ((1, 3)); -# else -# ifdef __REDIRECT_NTHNL -extern int __REDIRECT_NTHNL (pthread_mutex_clocklock, - (pthread_mutex_t *__restrict __mutex, - clockid_t __clockid, - const struct timespec *__restrict __abstime), - __pthread_mutex_clocklock64) __nonnull ((1, 3)); -# else -# define pthread_mutex_clocklock __pthread_mutex_clocklock64 -# endif -# endif -#endif - -/* Unlock a mutex. */ -extern int pthread_mutex_unlock (pthread_mutex_t *__mutex) - __THROWNL __nonnull ((1)); - - -/* Get the priority ceiling of MUTEX. */ -extern int pthread_mutex_getprioceiling (const pthread_mutex_t * - __restrict __mutex, - int *__restrict __prioceiling) - __THROW __nonnull ((1, 2)); - -/* Set the priority ceiling of MUTEX to PRIOCEILING, return old - priority ceiling value in *OLD_CEILING. */ -extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex, - int __prioceiling, - int *__restrict __old_ceiling) - __THROW __nonnull ((1, 3)); - - -#ifdef __USE_XOPEN2K8 -/* Declare the state protected by MUTEX as consistent. */ -extern int pthread_mutex_consistent (pthread_mutex_t *__mutex) - __THROW __nonnull ((1)); -# ifdef __USE_GNU -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (pthread_mutex_consistent_np, (pthread_mutex_t *), - pthread_mutex_consistent) __nonnull ((1)) - __attribute_deprecated_msg__ ("\ -pthread_mutex_consistent_np is deprecated, use pthread_mutex_consistent"); -# else -# define pthread_mutex_consistent_np pthread_mutex_consistent -# endif -# endif -#endif - - -/* Functions for handling mutex attributes. */ - -/* Initialize mutex attribute object ATTR with default attributes - (kind is PTHREAD_MUTEX_TIMED_NP). */ -extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr) - __THROW __nonnull ((1)); - -/* Destroy mutex attribute object ATTR. */ -extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr) - __THROW __nonnull ((1)); - -/* Get the process-shared flag of the mutex attribute ATTR. */ -extern int pthread_mutexattr_getpshared (const pthread_mutexattr_t * - __restrict __attr, - int *__restrict __pshared) - __THROW __nonnull ((1, 2)); - -/* Set the process-shared flag of the mutex attribute ATTR. */ -extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr, - int __pshared) - __THROW __nonnull ((1)); - -#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 -/* Return in *KIND the mutex kind attribute in *ATTR. */ -extern int pthread_mutexattr_gettype (const pthread_mutexattr_t *__restrict - __attr, int *__restrict __kind) - __THROW __nonnull ((1, 2)); - -/* Set the mutex kind attribute in *ATTR to KIND (either PTHREAD_MUTEX_NORMAL, - PTHREAD_MUTEX_RECURSIVE, PTHREAD_MUTEX_ERRORCHECK, or - PTHREAD_MUTEX_DEFAULT). */ -extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind) - __THROW __nonnull ((1)); -#endif - -/* Return in *PROTOCOL the mutex protocol attribute in *ATTR. */ -extern int pthread_mutexattr_getprotocol (const pthread_mutexattr_t * - __restrict __attr, - int *__restrict __protocol) - __THROW __nonnull ((1, 2)); - -/* Set the mutex protocol attribute in *ATTR to PROTOCOL (either - PTHREAD_PRIO_NONE, PTHREAD_PRIO_INHERIT, or PTHREAD_PRIO_PROTECT). */ -extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr, - int __protocol) - __THROW __nonnull ((1)); - -/* Return in *PRIOCEILING the mutex prioceiling attribute in *ATTR. */ -extern int pthread_mutexattr_getprioceiling (const pthread_mutexattr_t * - __restrict __attr, - int *__restrict __prioceiling) - __THROW __nonnull ((1, 2)); - -/* Set the mutex prioceiling attribute in *ATTR to PRIOCEILING. */ -extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr, - int __prioceiling) - __THROW __nonnull ((1)); - -#ifdef __USE_XOPEN2K -/* Get the robustness flag of the mutex attribute ATTR. */ -extern int pthread_mutexattr_getrobust (const pthread_mutexattr_t *__attr, - int *__robustness) - __THROW __nonnull ((1, 2)); -# ifdef __USE_GNU -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (pthread_mutexattr_getrobust_np, - (pthread_mutexattr_t *, int *), - pthread_mutexattr_getrobust) __nonnull ((1)) - __attribute_deprecated_msg__ ("\ -pthread_mutexattr_getrobust_np is deprecated, use pthread_mutexattr_getrobust"); -# else -# define pthread_mutexattr_getrobust_np pthread_mutexattr_getrobust -# endif -# endif - -/* Set the robustness flag of the mutex attribute ATTR. */ -extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr, - int __robustness) - __THROW __nonnull ((1)); -# ifdef __USE_GNU -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (pthread_mutexattr_setrobust_np, - (pthread_mutexattr_t *, int), - pthread_mutexattr_setrobust) __nonnull ((1)) - __attribute_deprecated_msg__ ("\ -pthread_mutexattr_setrobust_np is deprecated, use pthread_mutexattr_setrobust"); -# else -# define pthread_mutexattr_setrobust_np pthread_mutexattr_setrobust -# endif -# endif -#endif - -#if defined __USE_UNIX98 || defined __USE_XOPEN2K -/* Functions for handling read-write locks. */ - -/* Initialize read-write lock RWLOCK using attributes ATTR, or use - the default values if later is NULL. */ -extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock, - const pthread_rwlockattr_t *__restrict - __attr) __THROW __nonnull ((1)); - -/* Destroy read-write lock RWLOCK. */ -extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock) - __THROW __nonnull ((1)); - -/* Acquire read lock for RWLOCK. */ -extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock) - __THROWNL __nonnull ((1)); - -/* Try to acquire read lock for RWLOCK. */ -extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock) - __THROWNL __nonnull ((1)); - -# ifdef __USE_XOPEN2K -/* Try to acquire read lock for RWLOCK or return after specified time. */ -# ifndef __USE_TIME_BITS64 -extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock, - const struct timespec *__restrict - __abstime) __THROWNL __nonnull ((1, 2)); -# else -# ifdef __REDIRECT_NTHNL -extern int __REDIRECT_NTHNL (pthread_rwlock_timedrdlock, - (pthread_rwlock_t *__restrict __rwlock, - const struct timespec *__restrict __abstime), - __pthread_rwlock_timedrdlock64) - __nonnull ((1, 2)); -# else -# define pthread_rwlock_timedrdlock __pthread_rwlock_timedrdlock64 -# endif -# endif -# endif - -# ifdef __USE_GNU -# ifndef __USE_TIME_BITS64 -extern int pthread_rwlock_clockrdlock (pthread_rwlock_t *__restrict __rwlock, - clockid_t __clockid, - const struct timespec *__restrict - __abstime) __THROWNL __nonnull ((1, 3)); -# else -# ifdef __REDIRECT_NTHNL -extern int __REDIRECT_NTHNL (pthread_rwlock_clockrdlock, - (pthread_rwlock_t *__restrict __rwlock, - clockid_t __clockid, - const struct timespec *__restrict __abstime), - __pthread_rwlock_clockrdlock64) - __nonnull ((1, 3)); -# else -# define pthread_rwlock_clockrdlock __pthread_rwlock_clockrdlock64 -# endif -# endif -# endif - -/* Acquire write lock for RWLOCK. */ -extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock) - __THROWNL __nonnull ((1)); - -/* Try to acquire write lock for RWLOCK. */ -extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock) - __THROWNL __nonnull ((1)); - -# ifdef __USE_XOPEN2K -/* Try to acquire write lock for RWLOCK or return after specified time. */ -# ifndef __USE_TIME_BITS64 -extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock, - const struct timespec *__restrict - __abstime) __THROWNL __nonnull ((1, 2)); -# else -# ifdef __REDIRECT_NTHNL -extern int __REDIRECT_NTHNL (pthread_rwlock_timedwrlock, - (pthread_rwlock_t *__restrict __rwlock, - const struct timespec *__restrict __abstime), - __pthread_rwlock_timedwrlock64) - __nonnull ((1, 2)); -# else -# define pthread_rwlock_timedwrlock __pthread_rwlock_timedwrlock64 -# endif -# endif -# endif - -# ifdef __USE_GNU -# ifndef __USE_TIME_BITS64 -extern int pthread_rwlock_clockwrlock (pthread_rwlock_t *__restrict __rwlock, - clockid_t __clockid, - const struct timespec *__restrict - __abstime) __THROWNL __nonnull ((1, 3)); - -# else -# ifdef __REDIRECT_NTHNL -extern int __REDIRECT_NTHNL (pthread_rwlock_clockwrlock, - (pthread_rwlock_t *__restrict __rwlock, - clockid_t __clockid, - const struct timespec *__restrict __abstime), - __pthread_rwlock_clockwrlock64) - __nonnull ((1, 3)); -# else -# define pthread_rwlock_clockwrlock __pthread_rwlock_clockwrlock64 -# endif -# endif -# endif - -/* Unlock RWLOCK. */ -extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock) - __THROWNL __nonnull ((1)); - - -/* Functions for handling read-write lock attributes. */ - -/* Initialize attribute object ATTR with default values. */ -extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr) - __THROW __nonnull ((1)); - -/* Destroy attribute object ATTR. */ -extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr) - __THROW __nonnull ((1)); - -/* Return current setting of process-shared attribute of ATTR in PSHARED. */ -extern int pthread_rwlockattr_getpshared (const pthread_rwlockattr_t * - __restrict __attr, - int *__restrict __pshared) - __THROW __nonnull ((1, 2)); - -/* Set process-shared attribute of ATTR to PSHARED. */ -extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr, - int __pshared) - __THROW __nonnull ((1)); - -/* Return current setting of reader/writer preference. */ -extern int pthread_rwlockattr_getkind_np (const pthread_rwlockattr_t * - __restrict __attr, - int *__restrict __pref) - __THROW __nonnull ((1, 2)); - -/* Set reader/write preference. */ -extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr, - int __pref) __THROW __nonnull ((1)); -#endif - - -/* Functions for handling conditional variables. */ - -/* Initialize condition variable COND using attributes ATTR, or use - the default values if later is NULL. */ -extern int pthread_cond_init (pthread_cond_t *__restrict __cond, - const pthread_condattr_t *__restrict __cond_attr) - __THROW __nonnull ((1)); - -/* Destroy condition variable COND. */ -extern int pthread_cond_destroy (pthread_cond_t *__cond) - __THROW __nonnull ((1)); - -/* Wake up one thread waiting for condition variable COND. */ -extern int pthread_cond_signal (pthread_cond_t *__cond) - __THROWNL __nonnull ((1)); - -/* Wake up all threads waiting for condition variables COND. */ -extern int pthread_cond_broadcast (pthread_cond_t *__cond) - __THROWNL __nonnull ((1)); - -/* Wait for condition variable COND to be signaled or broadcast. - MUTEX is assumed to be locked before. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int pthread_cond_wait (pthread_cond_t *__restrict __cond, - pthread_mutex_t *__restrict __mutex) - __nonnull ((1, 2)); - -/* Wait for condition variable COND to be signaled or broadcast until - ABSTIME. MUTEX is assumed to be locked before. ABSTIME is an - absolute time specification; zero is the beginning of the epoch - (00:00:00 GMT, January 1, 1970). - - This function is a cancellation point and therefore not marked with - __THROW. */ -# ifndef __USE_TIME_BITS64 -extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond, - pthread_mutex_t *__restrict __mutex, - const struct timespec *__restrict __abstime) - __nonnull ((1, 2, 3)); -# else -# ifdef __REDIRECT -extern int __REDIRECT (pthread_cond_timedwait, - (pthread_cond_t *__restrict __cond, - pthread_mutex_t *__restrict __mutex, - const struct timespec *__restrict __abstime), - __pthread_cond_timedwait64) - __nonnull ((1, 2, 3)); -# else -# define pthread_cond_timedwait __pthread_cond_timedwait64 -# endif -# endif - -# ifdef __USE_GNU -/* Wait for condition variable COND to be signaled or broadcast until - ABSTIME measured by the specified clock. MUTEX is assumed to be - locked before. CLOCK is the clock to use. ABSTIME is an absolute - time specification against CLOCK's epoch. - - This function is a cancellation point and therefore not marked with - __THROW. */ -# ifndef __USE_TIME_BITS64 -extern int pthread_cond_clockwait (pthread_cond_t *__restrict __cond, - pthread_mutex_t *__restrict __mutex, - __clockid_t __clock_id, - const struct timespec *__restrict __abstime) - __nonnull ((1, 2, 4)); -# else -# ifdef __REDIRECT -extern int __REDIRECT (pthread_cond_clockwait, - (pthread_cond_t *__restrict __cond, - pthread_mutex_t *__restrict __mutex, - __clockid_t __clock_id, - const struct timespec *__restrict __abstime), - __pthread_cond_clockwait64) - __nonnull ((1, 2, 4)); -# else -# define pthread_cond_clockwait __pthread_cond_clockwait64 -# endif -# endif -# endif - -/* Functions for handling condition variable attributes. */ - -/* Initialize condition variable attribute ATTR. */ -extern int pthread_condattr_init (pthread_condattr_t *__attr) - __THROW __nonnull ((1)); - -/* Destroy condition variable attribute ATTR. */ -extern int pthread_condattr_destroy (pthread_condattr_t *__attr) - __THROW __nonnull ((1)); - -/* Get the process-shared flag of the condition variable attribute ATTR. */ -extern int pthread_condattr_getpshared (const pthread_condattr_t * - __restrict __attr, - int *__restrict __pshared) - __THROW __nonnull ((1, 2)); - -/* Set the process-shared flag of the condition variable attribute ATTR. */ -extern int pthread_condattr_setpshared (pthread_condattr_t *__attr, - int __pshared) __THROW __nonnull ((1)); - -#ifdef __USE_XOPEN2K -/* Get the clock selected for the condition variable attribute ATTR. */ -extern int pthread_condattr_getclock (const pthread_condattr_t * - __restrict __attr, - __clockid_t *__restrict __clock_id) - __THROW __nonnull ((1, 2)); - -/* Set the clock selected for the condition variable attribute ATTR. */ -extern int pthread_condattr_setclock (pthread_condattr_t *__attr, - __clockid_t __clock_id) - __THROW __nonnull ((1)); -#endif - - -#ifdef __USE_XOPEN2K -/* Functions to handle spinlocks. */ - -/* Initialize the spinlock LOCK. If PSHARED is nonzero the spinlock can - be shared between different processes. */ -extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared) - __THROW __nonnull ((1)); - -/* Destroy the spinlock LOCK. */ -extern int pthread_spin_destroy (pthread_spinlock_t *__lock) - __THROW __nonnull ((1)); - -/* Wait until spinlock LOCK is retrieved. */ -extern int pthread_spin_lock (pthread_spinlock_t *__lock) - __THROWNL __nonnull ((1)); - -/* Try to lock spinlock LOCK. */ -extern int pthread_spin_trylock (pthread_spinlock_t *__lock) - __THROWNL __nonnull ((1)); - -/* Release spinlock LOCK. */ -extern int pthread_spin_unlock (pthread_spinlock_t *__lock) - __THROWNL __nonnull ((1)); - - -/* Functions to handle barriers. */ - -/* Initialize BARRIER with the attributes in ATTR. The barrier is - opened when COUNT waiters arrived. */ -extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier, - const pthread_barrierattr_t *__restrict - __attr, unsigned int __count) - __THROW __nonnull ((1)); - -/* Destroy a previously dynamically initialized barrier BARRIER. */ -extern int pthread_barrier_destroy (pthread_barrier_t *__barrier) - __THROW __nonnull ((1)); - -/* Wait on barrier BARRIER. */ -extern int pthread_barrier_wait (pthread_barrier_t *__barrier) - __THROWNL __nonnull ((1)); - - -/* Initialize barrier attribute ATTR. */ -extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr) - __THROW __nonnull ((1)); - -/* Destroy previously dynamically initialized barrier attribute ATTR. */ -extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr) - __THROW __nonnull ((1)); - -/* Get the process-shared flag of the barrier attribute ATTR. */ -extern int pthread_barrierattr_getpshared (const pthread_barrierattr_t * - __restrict __attr, - int *__restrict __pshared) - __THROW __nonnull ((1, 2)); - -/* Set the process-shared flag of the barrier attribute ATTR. */ -extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr, - int __pshared) - __THROW __nonnull ((1)); -#endif - - -/* Functions for handling thread-specific data. */ - -/* Create a key value identifying a location in the thread-specific - data area. Each thread maintains a distinct thread-specific data - area. DESTR_FUNCTION, if non-NULL, is called with the value - associated to that key when the key is destroyed. - DESTR_FUNCTION is not called if the value associated is NULL when - the key is destroyed. */ -extern int pthread_key_create (pthread_key_t *__key, - void (*__destr_function) (void *)) - __THROW __nonnull ((1)); - -/* Destroy KEY. */ -extern int pthread_key_delete (pthread_key_t __key) __THROW; - -/* Return current value of the thread-specific data slot identified by KEY. */ -extern void *pthread_getspecific (pthread_key_t __key) __THROW; - -/* Store POINTER in the thread-specific data slot identified by KEY. */ -extern int pthread_setspecific (pthread_key_t __key, - const void *__pointer) - __THROW __attr_access_none (2); - - -#ifdef __USE_XOPEN2K -/* Get ID of CPU-time clock for thread THREAD_ID. */ -extern int pthread_getcpuclockid (pthread_t __thread_id, - __clockid_t *__clock_id) - __THROW __nonnull ((2)); -#endif - - -/* Install handlers to be called when a new process is created with FORK. - The PREPARE handler is called in the parent process just before performing - FORK. The PARENT handler is called in the parent process just after FORK. - The CHILD handler is called in the child process. Each of the three - handlers can be NULL, meaning that no handler needs to be called at that - point. - PTHREAD_ATFORK can be called several times, in which case the PREPARE - handlers are called in LIFO order (last added with PTHREAD_ATFORK, - first called before FORK), and the PARENT and CHILD handlers are called - in FIFO (first added, first called). */ - -extern int pthread_atfork (void (*__prepare) (void), - void (*__parent) (void), - void (*__child) (void)) __THROW; - - -#ifdef __USE_EXTERN_INLINES -/* Optimizations. */ -__extern_inline int -__NTH (pthread_equal (pthread_t __thread1, pthread_t __thread2)) -{ - return __thread1 == __thread2; -} -#endif - -__END_DECLS - -#endif /* pthread.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@pthread.h.blob deleted file mode 100644 index a06eaf00141fec081a6b5d87bd319817871c3655..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61425 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h deleted file mode 100644 index 9b254ae8..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h +++ /dev/null @@ -1,140 +0,0 @@ -/* Definitions for POSIX 1003.1b-1993 (aka POSIX.4) scheduling interface. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _SCHED_H -#define _SCHED_H 1 - -#include <features.h> - -/* Get type definitions. */ -#include <bits/types.h> - -#define __need_size_t -#define __need_NULL -#include <stddef.h> - -#include <bits/types/time_t.h> -#include <bits/types/struct_timespec.h> -#ifndef __USE_XOPEN2K -# include <time.h> -#endif - -#ifndef __pid_t_defined -typedef __pid_t pid_t; -# define __pid_t_defined -#endif - -/* Get system specific constant and data structure definitions. */ -#include <bits/sched.h> -#include <bits/cpu-set.h> - -/* Backward compatibility. */ -#define sched_priority sched_priority -#define __sched_priority sched_priority - - -__BEGIN_DECLS - -/* Set scheduling parameters for a process. */ -extern int sched_setparam (__pid_t __pid, const struct sched_param *__param) - __THROW; - -/* Retrieve scheduling parameters for a particular process. */ -extern int sched_getparam (__pid_t __pid, struct sched_param *__param) __THROW; - -/* Set scheduling algorithm and/or parameters for a process. */ -extern int sched_setscheduler (__pid_t __pid, int __policy, - const struct sched_param *__param) __THROW; - -/* Retrieve scheduling algorithm for a particular purpose. */ -extern int sched_getscheduler (__pid_t __pid) __THROW; - -/* Yield the processor. */ -extern int sched_yield (void) __THROW; - -/* Get maximum priority value for a scheduler. */ -extern int sched_get_priority_max (int __algorithm) __THROW; - -/* Get minimum priority value for a scheduler. */ -extern int sched_get_priority_min (int __algorithm) __THROW; - -/* Get the SCHED_RR interval for the named process. */ -#ifndef __USE_TIME_BITS64 -extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __THROW; -#else -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (sched_rr_get_interval, - (__pid_t __pid, struct timespec *__t), - __sched_rr_get_interval64); -# else -# define sched_rr_get_interval __sched_rr_get_interval64 -# endif -#endif - -#ifdef __USE_GNU -/* Access macros for `cpu_set'. */ -# define CPU_SETSIZE __CPU_SETSIZE -# define CPU_SET(cpu, cpusetp) __CPU_SET_S (cpu, sizeof (cpu_set_t), cpusetp) -# define CPU_CLR(cpu, cpusetp) __CPU_CLR_S (cpu, sizeof (cpu_set_t), cpusetp) -# define CPU_ISSET(cpu, cpusetp) __CPU_ISSET_S (cpu, sizeof (cpu_set_t), \ - cpusetp) -# define CPU_ZERO(cpusetp) __CPU_ZERO_S (sizeof (cpu_set_t), cpusetp) -# define CPU_COUNT(cpusetp) __CPU_COUNT_S (sizeof (cpu_set_t), cpusetp) - -# define CPU_SET_S(cpu, setsize, cpusetp) __CPU_SET_S (cpu, setsize, cpusetp) -# define CPU_CLR_S(cpu, setsize, cpusetp) __CPU_CLR_S (cpu, setsize, cpusetp) -# define CPU_ISSET_S(cpu, setsize, cpusetp) __CPU_ISSET_S (cpu, setsize, \ - cpusetp) -# define CPU_ZERO_S(setsize, cpusetp) __CPU_ZERO_S (setsize, cpusetp) -# define CPU_COUNT_S(setsize, cpusetp) __CPU_COUNT_S (setsize, cpusetp) - -# define CPU_EQUAL(cpusetp1, cpusetp2) \ - __CPU_EQUAL_S (sizeof (cpu_set_t), cpusetp1, cpusetp2) -# define CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \ - __CPU_EQUAL_S (setsize, cpusetp1, cpusetp2) - -# define CPU_AND(destset, srcset1, srcset2) \ - __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, &) -# define CPU_OR(destset, srcset1, srcset2) \ - __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, |) -# define CPU_XOR(destset, srcset1, srcset2) \ - __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, ^) -# define CPU_AND_S(setsize, destset, srcset1, srcset2) \ - __CPU_OP_S (setsize, destset, srcset1, srcset2, &) -# define CPU_OR_S(setsize, destset, srcset1, srcset2) \ - __CPU_OP_S (setsize, destset, srcset1, srcset2, |) -# define CPU_XOR_S(setsize, destset, srcset1, srcset2) \ - __CPU_OP_S (setsize, destset, srcset1, srcset2, ^) - -# define CPU_ALLOC_SIZE(count) __CPU_ALLOC_SIZE (count) -# define CPU_ALLOC(count) __CPU_ALLOC (count) -# define CPU_FREE(cpuset) __CPU_FREE (cpuset) - - -/* Set the CPU affinity for a task */ -extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize, - const cpu_set_t *__cpuset) __THROW; - -/* Get the CPU affinity for a task */ -extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize, - cpu_set_t *__cpuset) __THROW; -#endif - -__END_DECLS - -#endif /* sched.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sched.h.blob deleted file mode 100644 index 8cb7a46d8683cd0e8331e763ccb8e0899523b8e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15020 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 WZjc!u4XbnYxsYx?cgtKDZ~lK$!JtI| diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h deleted file mode 100644 index aff6c060..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h +++ /dev/null @@ -1,395 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.14 Signal handling <signal.h> - */ - -#ifndef _SIGNAL_H -#define _SIGNAL_H - -#include <features.h> - -__BEGIN_DECLS - -#include <bits/types.h> -#include <bits/signum-generic.h> - -#include <bits/types/sig_atomic_t.h> - -#if defined __USE_POSIX -#include <bits/types/sigset_t.h> -#endif - -#if defined __USE_XOPEN || defined __USE_XOPEN2K -# ifndef __pid_t_defined -typedef __pid_t pid_t; -# define __pid_t_defined -#endif -#ifdef __USE_XOPEN -# endif -# ifndef __uid_t_defined -typedef __uid_t uid_t; -# define __uid_t_defined -# endif -#endif /* Unix98 */ - -#ifdef __USE_POSIX199309 -/* We need `struct timespec' later on. */ -# include <bits/types/struct_timespec.h> -#endif - -#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED -# include <bits/types/siginfo_t.h> -# include <bits/siginfo-consts.h> -#endif - -#ifdef __USE_MISC -# include <bits/types/sigval_t.h> -#endif - -#ifdef __USE_POSIX199309 -# include <bits/types/sigevent_t.h> -# include <bits/sigevent-consts.h> -#endif - - -/* Type of a signal handler. */ -typedef void (*__sighandler_t) (int); - -/* The X/Open definition of `signal' specifies the SVID semantic. Use - the additional function `sysv_signal' when X/Open compatibility is - requested. */ -extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler) - __THROW; -#ifdef __USE_GNU -extern __sighandler_t sysv_signal (int __sig, __sighandler_t __handler) - __THROW; -#endif - -/* Set the handler for the signal SIG to HANDLER, returning the old - handler, or SIG_ERR on error. - By default `signal' has the BSD semantic. */ -#ifdef __USE_MISC -extern __sighandler_t signal (int __sig, __sighandler_t __handler) - __THROW; -#else -/* Make sure the used `signal' implementation is the SVID version. */ -# ifdef __REDIRECT_NTH -extern __sighandler_t __REDIRECT_NTH (signal, - (int __sig, __sighandler_t __handler), - __sysv_signal); -# else -# define signal __sysv_signal -# endif -#endif - -#if defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8 -/* The X/Open definition of `signal' conflicts with the BSD version. - So they defined another function `bsd_signal'. */ -extern __sighandler_t bsd_signal (int __sig, __sighandler_t __handler) - __THROW; -#endif - -/* Send signal SIG to process number PID. If PID is zero, - send SIG to all processes in the current process's process group. - If PID is < -1, send SIG to all processes in process group - PID. */ -#ifdef __USE_POSIX -extern int kill (__pid_t __pid, int __sig) __THROW; -#endif /* Use POSIX. */ - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED -/* Send SIG to all processes in process group PGRP. - If PGRP is zero, send SIG to all processes in - the current process's process group. */ -extern int killpg (__pid_t __pgrp, int __sig) __THROW; -#endif /* Use misc || X/Open Unix. */ - -/* Raise signal SIG, i.e., send SIG to yourself. */ -extern int raise (int __sig) __THROW; - -#ifdef __USE_MISC -/* SVID names for the same things. */ -extern __sighandler_t ssignal (int __sig, __sighandler_t __handler) - __THROW; -extern int gsignal (int __sig) __THROW; -#endif /* Use misc. */ - -#ifdef __USE_XOPEN2K8 -/* Print a message describing the meaning of the given signal number. */ -extern void psignal (int __sig, const char *__s); - -/* Print a message describing the meaning of the given signal information. */ -extern void psiginfo (const siginfo_t *__pinfo, const char *__s); -#endif /* POSIX 2008. */ - - - -/* The `sigpause' function in X/Open defines the argument as the - signal number. This requires redirecting to another function - because the default version in glibc uses an old BSD interface. - - This function is a cancellation point and therefore not marked with - __THROW. */ - -#ifdef __USE_XOPEN_EXTENDED -# ifdef __GNUC__ -extern int sigpause (int __sig) __asm__ ("__xpg_sigpause") - __attribute_deprecated_msg__ ("Use the sigsuspend function instead"); -# else -extern int __sigpause (int __sig_or_mask, int __is_sig); -/* Remove a signal from the signal mask and suspend the process. */ -# define sigpause(sig) __sigpause ((sig), 1) -# endif -#endif - - -#ifdef __USE_MISC -/* None of the following functions should be used anymore. They are here - only for compatibility. A single word (`int') is not guaranteed to be - enough to hold a complete signal mask and therefore these functions - simply do not work in many situations. Use `sigprocmask' instead. */ - -/* Compute mask for signal SIG. */ -# define sigmask(sig) \ - __glibc_macro_warning ("sigmask is deprecated") \ - ((int)(1u << ((sig) - 1))) - -/* Block signals in MASK, returning the old mask. */ -extern int sigblock (int __mask) __THROW __attribute_deprecated__; - -/* Set the mask of blocked signals to MASK, returning the old mask. */ -extern int sigsetmask (int __mask) __THROW __attribute_deprecated__; - -/* Return currently selected signal mask. */ -extern int siggetmask (void) __THROW __attribute_deprecated__; -#endif /* Use misc. */ - - -#ifdef __USE_MISC -# define NSIG _NSIG -#endif - -#ifdef __USE_GNU -typedef __sighandler_t sighandler_t; -#endif - -/* 4.4 BSD uses the name `sig_t' for this. */ -#ifdef __USE_MISC -typedef __sighandler_t sig_t; -#endif - -#ifdef __USE_POSIX - -/* Clear all signals from SET. */ -extern int sigemptyset (sigset_t *__set) __THROW __nonnull ((1)); - -/* Set all signals in SET. */ -extern int sigfillset (sigset_t *__set) __THROW __nonnull ((1)); - -/* Add SIGNO to SET. */ -extern int sigaddset (sigset_t *__set, int __signo) __THROW __nonnull ((1)); - -/* Remove SIGNO from SET. */ -extern int sigdelset (sigset_t *__set, int __signo) __THROW __nonnull ((1)); - -/* Return 1 if SIGNO is in SET, 0 if not. */ -extern int sigismember (const sigset_t *__set, int __signo) - __THROW __nonnull ((1)); - -# ifdef __USE_GNU -/* Return non-empty value is SET is not empty. */ -extern int sigisemptyset (const sigset_t *__set) __THROW __nonnull ((1)); - -/* Build new signal set by combining the two inputs set using logical AND. */ -extern int sigandset (sigset_t *__set, const sigset_t *__left, - const sigset_t *__right) __THROW __nonnull ((1, 2, 3)); - -/* Build new signal set by combining the two inputs set using logical OR. */ -extern int sigorset (sigset_t *__set, const sigset_t *__left, - const sigset_t *__right) __THROW __nonnull ((1, 2, 3)); -# endif /* GNU */ - -/* Get the system-specific definitions of `struct sigaction' - and the `SA_*' and `SIG_*'. constants. */ -# include <bits/sigaction.h> - -/* Get and/or change the set of blocked signals. */ -extern int sigprocmask (int __how, const sigset_t *__restrict __set, - sigset_t *__restrict __oset) __THROW; - -/* Change the set of blocked signals to SET, - wait until a signal arrives, and restore the set of blocked signals. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int sigsuspend (const sigset_t *__set) __nonnull ((1)); - -/* Get and/or set the action for signal SIG. */ -extern int sigaction (int __sig, const struct sigaction *__restrict __act, - struct sigaction *__restrict __oact) __THROW; - -/* Put in SET all signals that are blocked and waiting to be delivered. */ -extern int sigpending (sigset_t *__set) __THROW __nonnull ((1)); - - -# ifdef __USE_POSIX199506 -/* Select any of pending signals from SET or wait for any to arrive. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int sigwait (const sigset_t *__restrict __set, int *__restrict __sig) - __nonnull ((1, 2)); -# endif /* Use POSIX 1995. */ - -# ifdef __USE_POSIX199309 -/* Select any of pending signals from SET and place information in INFO. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int sigwaitinfo (const sigset_t *__restrict __set, - siginfo_t *__restrict __info) __nonnull ((1)); - -/* Select any of pending signals from SET and place information in INFO. - Wait the time specified by TIMEOUT if no signal is pending. - - This function is a cancellation point and therefore not marked with - __THROW. */ -# ifndef __USE_TIME_BITS64 -extern int sigtimedwait (const sigset_t *__restrict __set, - siginfo_t *__restrict __info, - const struct timespec *__restrict __timeout) - __nonnull ((1)); -# else -# ifdef __REDIRECT -extern int __REDIRECT (sigtimedwait, - (const sigset_t *__restrict __set, - siginfo_t *__restrict __info, - const struct timespec *__restrict __timeout), - __sigtimedwait64) - __nonnull ((1)); -# else -# define sigtimedwait __sigtimedwait64 -# endif -# endif - -/* Send signal SIG to the process PID. Associate data in VAL with the - signal. */ -extern int sigqueue (__pid_t __pid, int __sig, const union sigval __val) - __THROW; -# endif /* Use POSIX 199306. */ - -#endif /* Use POSIX. */ - -#ifdef __USE_MISC - -/* Get machine-dependent `struct sigcontext' and signal subcodes. */ -# include <bits/sigcontext.h> - -/* Restore the state saved in SCP. */ -extern int sigreturn (struct sigcontext *__scp) __THROW; - -#endif /* Use misc. */ - - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -# define __need_size_t -# include <stddef.h> - -# include <bits/types/stack_t.h> -# if defined __USE_XOPEN || defined __USE_XOPEN2K8 -/* This will define `ucontext_t' and `mcontext_t'. */ -# include <sys/ucontext.h> -# endif -#endif /* Use POSIX.1-2008 or X/Open Unix. */ - -#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC -/* If INTERRUPT is nonzero, make signal SIG interrupt system calls - (causing them to fail with EINTR); if INTERRUPT is zero, make system - calls be restarted after signal SIG. */ -extern int siginterrupt (int __sig, int __interrupt) __THROW - __attribute_deprecated_msg__ ("Use sigaction with SA_RESTART instead"); - -# include <bits/sigstack.h> -# include <bits/sigstksz.h> -# include <bits/ss_flags.h> - -/* Alternate signal handler stack interface. - This interface should always be preferred over `sigstack'. */ -extern int sigaltstack (const stack_t *__restrict __ss, - stack_t *__restrict __oss) __THROW; -#endif /* __USE_XOPEN_EXTENDED || __USE_MISC */ - -#if ((defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ - || defined __USE_MISC) -# include <bits/types/struct_sigstack.h> -#endif - -#if ((defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K) \ - || defined __USE_MISC) -/* Run signals handlers on the stack specified by SS (if not NULL). - If OSS is not NULL, it is filled in with the old signal stack status. - This interface is obsolete and on many platform not implemented. */ -extern int sigstack (struct sigstack *__ss, struct sigstack *__oss) - __THROW __attribute_deprecated__; -#endif - -#ifdef __USE_XOPEN_EXTENDED -/* Simplified interface for signal management. */ - -/* Add SIG to the calling process' signal mask. */ -extern int sighold (int __sig) __THROW - __attribute_deprecated_msg__ ("Use the sigprocmask function instead"); - -/* Remove SIG from the calling process' signal mask. */ -extern int sigrelse (int __sig) __THROW - __attribute_deprecated_msg__ ("Use the sigprocmask function instead"); - -/* Set the disposition of SIG to SIG_IGN. */ -extern int sigignore (int __sig) __THROW - __attribute_deprecated_msg__ ("Use the signal function instead"); - -/* Set the disposition of SIG. */ -extern __sighandler_t sigset (int __sig, __sighandler_t __disp) __THROW - __attribute_deprecated_msg__ - ("Use the signal and sigprocmask functions instead"); -#endif - -#if defined __USE_POSIX199506 || defined __USE_UNIX98 -/* Some of the functions for handling signals in threaded programs must - be defined here. */ -# include <bits/pthreadtypes.h> -# include <bits/sigthread.h> -#endif /* use Unix98 */ - -/* The following functions are used internally in the C library and in - other code which need deep insights. */ - -/* Return number of available real-time signal with highest priority. */ -extern int __libc_current_sigrtmin (void) __THROW; -/* Return number of available real-time signal with lowest priority. */ -extern int __libc_current_sigrtmax (void) __THROW; - -#define SIGRTMIN (__libc_current_sigrtmin ()) -#define SIGRTMAX (__libc_current_sigrtmax ()) - -/* System-specific extensions. */ -#include <bits/signal_ext.h> - -__END_DECLS - -#endif /* not signal.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@signal.h.blob deleted file mode 100644 index 4626e587f35f0dbe27c41aaf179376015fbf5530..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23855 zcmcJ13wRXQeeaA=fU97vV5|^|ohkUU1?U0TCJMnsAdC!Ngd#AKF(1q9?yPoTc4yhy zT|Ml`3NfzY>vvMW9j9$vYKNMXHrN+C4yjwNA-dKzwwu_wCC<HRL{i7NBB8ym<-NcE zIdf)rc8^x-mtK9}><%;Mod5fI&ay=L__yyjol;b#F=oe&MyqkX;p|P@$;Pzdq#Gkf zq|r%*8{@i}Xb3CQ!j_)sp3>0z9y_(yOmx>r%#;yM+o`_mCWN4j*Qt#eC)H>s!d50? zG;UoVSkV|Vy3Ir|Y)6cSnDX(J+R!QAm~gr;$=(qDzBeH=?KIL`r!g3ehn%#YHiBtd z#2advp+-ha<MNdrR6X8nCekTTilL{>t{?eUWjNs@*qt#WQjA&yjons;URA&O-IEhc z23IpFIYm)Jr+1DIQ^AtBo{srm$VtfdUb}onG`W0b8A=#`NGu6IQv@jXKGX*V=+Tpt z!*tS-kZoHuu!L!Bsif_gy(@y28TT#b1E;6$xET)im=Oaa&m_`D${SoxF{7qs1Vbsi z$Kex}JsX-pY~f_aOhj#3)zhUiJOt*t1qGa3ADm1os)zF;Er)K*u*_aU;khHb{CGM9 zsN18NtU-!hcQj#^!HO}Q>%L=lXLYMc@qJ9^<I-l_NEHk#hrf|EnV@IAyv2{cXB}xf z6K0C)G1&()nyk0%?$G3P>P(Zfp?EoJoj#{A95JGDlPTmyI+Y2hgBvymuJ?f!xOwO^ zM^~sKVno4WVcXto8bQ+zMl*?U+O!i+0s9L581o1Oa7U=6jE{=KLW)+9%DyKapG@=+ zx|81P^h>GCBup5q^i=_Qa*yfbgA<M!ldjVPT&F@+(oTjG=`w_Q!hy$%a5HDhRaQ~s zdYEa&J4-kFHI>v|$^s7zpqM%f0-g>_#SsjGo6x>sT<;C)mf4-)<jTFE2uLI$qnI&1 z?sgl9ziGHZ9w%7PDo3l6C3@a(S?ed%qX$@GeH!D@BjAw%F~ocvky0D&b>N{&+@W-= zYrM%7m|&zF#Q*=`OlvA3j3l}88Xx9@E|2!GWhO(mo{~pwru7I5=|nvO50o(7=UYxn zTrw36$7EhfI@)DLqQq;LlV~($7{P9<FUdUV5-sMJEJK@Fx*py;Il?XqRwz1oT7Xq4 zO4f(r)Y5*pT8=!pX_7S*gwXK}pv)9A8rQRyWR4IaBQkG_Uh3w1FO15v!#WZHe?B9H z4v3z@dwBZRM2L#&j(;iN0A#ii$LyDT5i&NGWRxK6>EvFc&zIGf(}XlM!7<ZrI`m;K z%r!wuTC!|-@W97SNA3)~5j+_qNtQT_?nI^$8EnX@pTP2TC*EkJQVGU`+7Ivc=fPZa zjr5-Q6cS6}MOb`@?3-L$Ji&Urm+~o_3|sMxwJ)+yqJGjDJ-V4r?v-VO(&3I&5YnNb zQG$d|-B|h@L`3jex)`E6$b9p!%IT72^z!IA|2@O+P$0DWZX;o&%rF;TeMonhewRql zQxZFAB)VBLSfV5arkgMvzZVgBlVS(CW;g0dlW4o`(OLc^i3P4aZ4>6i`Ei~_OPSs4 z=vgB?8NY>3p{#7>HB<2^5Mq`)_$JBXQdGi5aY!sDxtQ+6;=C4H8EGry0-y^fGLe2m zf`{O|Cqek3($FZyRzwh~#fWveZSzDs)dP?04^3j22cAkd<R58+m4$L80yg3Ln4u%> zt4AGQpy-8ZwySShGi4{@2;*{%W1~<7)+7Crni3n}CST0xq@#cmOhx*NEs#vdQb3q# zQN5nx#gONaO1KcR5aZ$#H906h%ODn~jovaiBWQD=Qmh2S>7|^@n6I-s#y7u=CPb&A zUa0dtkmZ!ya#$=lT2n5zrP9TvPq`)Yg@Uz0mOFU?szfemQlNX}<AV?xlP-4-DAuW* zl%`<5;f`S;`JH$<>gphKvHTFFoQIRsQ;egYlk<V17!|ejZvRrgA;Pl(?@2lXv>5fx zGXB-1i0P3@Lzs_i!62f4FqDY~(|W$)QBIr~8|9H}_m*}3$i<X9Y}pRAjfy&jQf#H6 zS#SwF4%a7B28ueL%%m$Jo0i2A>DXY<tKEY<`=IsZf{a?}dIR#Qj~nTjEibc?IA?k% z%d=dro83XTyXIF!DWW~0gl#6WC>TqUdBG&%Pl9=$<GB^-n&_)eP|nGR^Ue=%3zUsG zoC|rAElE~N`xH`$DIGKy$KwgJ4G|38kUyoG$LXHbM%=i8o&t)xAiQ0Dq%WbPDeBWi zA%v1p<Bck3NS02+Chinar=CVkB2OkDsbr+=Woeg0p`?S2#J+I6oca|~o@dsS$al<m z5>+CP4&0#(*4<Jjoyx1$M5b!%=pBUZc-$_R5>Nwt`GgJdlI)v^DbeM;*-^jNCncX! zP*<d+I+e1T8XwT!5<`~`j>pmFvXIpgWH~puzkxG`{`y^wA3?S=BdyrQINl8R#~$&n zAPfhm(9q4I|AY>$k6%&(duhX~h#Tc>X>&bm<e&Ot(LNEw4=Gy|#w%|Tun~O!C0I7E zo4i$-McXRBrBM#uKHW)}$s|vGzxk&(`NJqf32A|mMfzOa{3*9AlQuE;LusPr3;ZV0 zlX8-V-=#^V!JRBMiHbxrp<7Nny;dYmdyXXvEmX%dp*=S04wDxs<$YaRnlDIEj@t;E zQ?@7O6j9Vq1zkPk_LR!w8n&WV#)*|*v?m<X^IL0$Rg}k_m>F>^at5!Q_>G8(tzDA; znGMl0j+BctS*~uFtkvf@!P4|rDu}{lOXu6Ep2Lz(=xtirot(1dMEnm=8l}7hY~qH$ z$8_!weQv5mZIhOsj@l`Cz3i>DFJt<HxL8LRc_I^^xG;6o5JIG+I1(Gw^<_Hm9uRCj zPUPG?R2?JXaP{#t+lOpHL@^_i#}qg)YF-x&l#5(y*8;eQV7|L1N09HRl@KZg$@K;e zno<WP9iN5nPIas)B}cj}b3C$zONgf+X69@7LSMn8>~roc)ea{0l<wc<m*U{WWNuv` zz*UGgt<v>ubH=BP(gith%UUE>V+i{e6Ck~|w)8DS$Sc*+kFt{JM|qpSzBy9#!dAqH z+vzEF<t$r|IQf`f$aPOGlV-2Mdj=(H>5b_|`azwelx<l>`Jxm@uyBP$-2{icb<sO1 zXR=d>FG;(n2q6JPI1gFJYa*m^-X&|%IRP2=(n+ZD-2&eW3&jYKi*y^}KI!_$aTNvA z%H;l}HudN_yJ6DvsZz|M5I*zW9%9mA5Y+_5rw>2Ojn|{*iPT4ou!a69wrzaWNEe@g zlfIRGmY?<;ylkMGSQa^EG1615xSip<4xUy^F$DPuQf;L6Q%avu4>@|b5wcmrUVd%# zK9XTm7TKk!B)N~2*o|~JcT-c`$ihAw>oT%}Zc0gW`NJ|En`1iCPWcuf_v@^IT@NRX zPFVfKPLmI2)m#Cp=v?`fOh`FD8ru_oJrqOOaT%kBrf*+3dV-yxE5pYSoiIT-rSYD@ zh_yUwQ$2Q)f%60}hD>$@j%zuwe*(p2Bw02ca<nsO<ooEBB94t?137ak+S1X+)T4Sb z-IFq<0Y<vA)j!1}H}MR%9*C|I?s*JmHKUxv-WVsWCrbLWLJqXaF<GOWw)pG`J1BWL z&}}A$5_FlYn1A&<YbkrMGe%vEspo3pcrqOB)gx0Dt?LP3u~Kg!#Y%XOZ25CFf~_7? z&`0Jr$(T~EoXa<|_6)h_D9d63rj|b>$vQ@?>F5PMfgTfx>o+_t^G1~cJHauQiDvvq zdI;fE`06RA5%S)IpFH<8P02RkM98vaM(Wq3Gm?AV9$tADSZ0@X;+-&0ePVD|a`Sfm zA2zTiv`jWcqzly8_BRHlR3ZGJV4kXz3|l>+qOs*vJRLK5TkfG&w_zb91{VW#d_G*f zDxhM*Bc!fA(;D?&9!L88>1Dp7;G&2IpeEmoJP^EERr(6mtv@YYQ#!`ww13NIeVK8h zGZC9`Oi2=woN#DC`JE~q<W}eT?qYxG7!QB3Ke@lm7#4V#Lfuh1s<fFo{;K~+23%kT zTi@ed71DL`)yTNTM@ZGyD=Ws6l68u0U_9#|RJ7ASez*U%K$h(eK|jXto#;J3{5yWX z?0vq4HvVnNdx2x|=Jxn|lEH=N90;NJC1W52Z<BC*)-)-16JDd}lUFK>XDv~d&aP7$ zXSXR|nsu`hniWyZS>I5eoOMijY1UiHy9>wXs>=9h)#~wG_}-_^`fP4fI1>L~k4(P} z-6kWI(BKQSApB7%91Let*y~~Y^z8gVZPqp;i<O$121V&G@LP+728#+ADb0>*dR8|r z9a)@);~N%hacN|7x~27)>6jKXyJOfP(9kHfk!tl}4MmxyDC+otT7zr7N_PsbkfP*{ zR=(T%;)@#}DnN=fGM-HL!Q^Uj&n!<{f<wecnsBO7lord-QyOBX3)s=3DLbxhy?z^j zsktZH{;uiV+<%zOpq{8XQKzaWloM${`}wu6e)Qp;?M;4YSU9dbduusI=$7EjRg|qp zT7w_d=n;_~V#!X#gPOLr&1<*bSO-oJlkmF)Hr%!%Yzjl>vQX@2ul$uVmmzbw=I|0# zJ**tQ6UfxPm)bja;l{asWEhMhRH_wa9f9@$n~BK*?^&7sLiL@GPh)@&)f~D~RSzkL z_5*PIzrFRyWp$x{bODpFwImmz3mE^X(_qdJBelU9_ZKVk=FL`=b`%n6P1oFFQHvN( zIAtQTaN6UB&iDXs5$C#1Y?KJ~;5r1ZROG(B<Ekg$UQ`{-eg4t;E%Psabtc2|z`O&% z@_=$+H?Vx@?JF;8yXWS4e)izl5tEhBP)NzuP*;hqK8@$dhLDqx1=qqOHAf(VBg&C} zz<BZHga7iorJrtaVL->Aym}&nMo=)VIi)-)8W9Y-qZcc6bzsic?Hku?w4Viyv{Q@& z4*rE3@W)}4_rASjhIa1d>vCuQ?Q370KmU$njPilHfmNzHpxizWSY0>mjh0uo|MqD= z<)#xi$Odb<T!34lWz@O$Oeou~nYfHuu9;D7>&Di$Et=_I7}-gkwv3)8>@-8l8rgT$ zG{16P?twAulW%_F)Ex||(>14II;WL4>VVYuulv-Jd-pf(DnKfwn~ss!7=l^_anMsC za)1S94Msy9q>_jb8XByo&(7eqyA=g+H5Xd8{IqjZ^ZN{De@(xps{Km;4S@OnrUxFq z_3yv=<^<wlPA3n)4(`k+Kc95qfk^SJmM!r|tdnbVci;R!4u5CMk)JTAopqf}s@kb^ z5&ORzefS%H+qQY2fKn{W4}KLwbLGI|KGDlZXiJclq1q0Ucf}(RUT%bqA;h>jiqZ;i z1Kn$c;y|)YdE6yQmq@U1v0xyWHZ6B#)2sL2_2Uz*xmRwVckjF3U+_rowSDhA`ay2| zBSz3z%~-9fjw$D3An42kzkcksZ#`Q?(7ue3F=~UsB<&agS9}*JkuZNW?rmnkNHj1A zpM)(O(pC~@9x0M48GJHjhtWpT+BdFm(6qIVV~0)rtWb;SX`OU$``Q2x6Bt~@r!#tv zw%_uToezKFXzoYXKl9IXmL)#OJvi?-cYW!1uieAw8DE6hu}Fn?z^5{Pg-U{2_-6Qn z@AN$%C=k?M)3TD?g;aH?k_BWD^3Vi^ysL{8MqI36wm?yk(4Dd~Nv*xLqrIVOW0c*H z0reXx+po>VD^w99Tz4c^yUG!F8e5l{-OXn!?)l}7&FS3T$LdxbyY~8}jMi*TcA=_f zmFynS_^&Hlet7%6+Wkc|7E<Vw8xc5@tNQf6sZ1`~_`RRy-hTYp&GFQ0*Rs{^8vAlp zwG}&p)vJDRe8*3hX8H?O@8&|uD>|(>n^shF1G%@pxbewfKg<>ytQovQRR@*902cb4 z(pCN3=bwAaU8uwmk+o&XIHAJ%mCGCKd_~y?K6W*3!2xQ78SIH-V;ste(6XB^b(Kb& z<Yv@_;E3nU{W?Zm$04OK)bA$8V6vco15Jeri_Hiukw@t&ttSQ;E+`cDNj;5_W+8il z#H&&UYz60UBTQ&tf9r3a+WPwHgSkKY;HP(eXY?n3$hZ-x3v5u;fU=nsbLnl@zFPm> zXBQQ)6$k?h*mZGAQ=pvOal;d=jWACMhYhRZSxrUm%P%$_|Kx`ox90x(v3JhZfA6xl z8QkHTVHo<bGJF@{9{Stfj<0>r_>LcL1Y00egWG}4mn_)GVnsnpRgru9qQ|=q{-wD+ zH}>FfM_<2l%_#<aq-F%bN0bo)J~!8S)t}A2{xg2yP6i@MMC3t>R0{#T1wpi%f+WHQ z9G^VVqM%hp$1OGd=+(54fp8tr^i&E-hEqqr6N#9E4TN%QHB?n?i@}UNMZmqTQQOV1 zux(5VmZVc|Y&oEmGT?m;ij>GBQhSkAP?lR23~sxjV@oGALd_jo_LJ<NU%coA#*=e3 z=a65VQ_dy8lf#Su;ksY$eg1JjPjH}HCJ~n#TPX|_q_#X@GeD<5x47jO1EUuhpp!Kx z0qCT1G6g{Q{eAky*}wXg;s->YjActavyIt3!mWdMU^V=HVYI>%I5ycE92*t6cR`dw zYFJ)wKzdqk|Gy^Bth#a0soeR${!#kN*L=D<xAf)2wD+!W{R$&vv}P1Z#;9_(4P@Ls z_`-?#7yreRMP$&CheUU=<+%K6&!pX?#>cjFOa~t!IgzxJdXWCGOx4yxh)MX7G4@87 zU8}jki;JKCi&vjn$*{Uma{<h~pj;s4?)=)!*Eek&JL$)Y`rQ#)utc{D5&*$czTNKQ zHa+sh!BYgWgW(%T5A6(NKYR;uboSTZn!f+|Kkm-GH0_xB(=Yr<CbzL}&L6a9p84+# z_wj1P%4)R%v9cPm@)C6cXt+P}WaFono;y=OgS7b5dw;Lu&%&0awDubWPJ^uW8w5^+ ztoA!~c+UfmFPt;I04HeQlvqj%?NeQ|+l^CO*-3I(Zyz}l@;xMQ?kn<jqK1r$ITK2) zXe=BpcO?Jm{-GjwS<Tg57hSaUOm6qLwtWB1Tffb7&hd|x8eE8>_*BMo3W=%y&6<iQ zUOv<1X9+JaYx9Yu+i78SSvX0QBWiRM`ab%<95nhFPlOpqOFMHQ+ZG)9+R$YWR&zaR zgiIP$cyN3wxDsT6tNUK~_m}K%`4QlD6SaR2RVO4-x=&F&WUM&F6E=W7M1;*@a?Egr z8{0N)`TroI@k=j#vFo)<p3VLH(@P)w;d?Ltm~&_bI5b0rf5N9SK2zNW4n6Voox9fk z^BoWRIRu47i#U@^7p6Dd?Ru|>1u$Xck{jE$UEk4hQ~NebC=+&q=ag}MZ(-pCa@{pG z-k3&|Lg1*X4eJ@4OJVhPoD?^Th73=tugAh2i@!jnoexCe`s|lPRctA8g5<35dm-qF z9tAiNRe7CJk^5Zi{Syb0ZLj72&)0LtssFqG70#FzFs6mMm=-W*y}BBVX?@|pMz?>^ z`x`%Fbc=o<5#B3Qhn?CkGF}94ewy3=+;$vSYt~xSvSKRD%OJPx=F>Q%*#9lTV>@FU z{aeE+zYMxDy49oiIYcggw1A&Tz~^hobW$vlWT3BteN^OT&Ajp1(8x>Mavx>x3+y}f zt6y+x1E4m*)F1$AH>;aK?ed&5ykX&2?s2L0nkb~Nf>zPzB|A+P`g>nf1;y0w(Nrn0 z4@SbR2cCNL%mZiJbJZ7hogaJdpPphQ49y#YoewEPgFxM~wRfX`-1nGYP+UrRAH)95 zJPZ>L^*UK{Kmw%4u5^HXM@F=G9L*JsqrqHRLdS-SG(Dn)`n0WEwOZbL(AsVa1QxUE zY73q+TS&8q$chow;jfV@aTmsVi?kwj*SI@(r4K~u_cz6&$80;~*p>lDNbUp(p)lwp zx55qwvXqV;bf=%fxyk*($c43!-~M!OF8ICP&p+|Qi(GZz0R`B>s?QxzfLllbF3!z3 zx-WRm9UV$B%WnO$GJ7`I!v8*vuZmpBx)oTj3D*skDn6sQvXyFX!?RCac=%xaQ879H zoxAUeAJ4euzI_Juo>2^GOyO#&En3jBT1?(&v2yw43zTgbM-kA=lU>O)C~E8Ft*a{3 zR;3j^7W{prQc@wR8Lu(oHK=9;W(Ss3s)5~s+bY%0*`2uW?C4BXsspnJa6hnZAX%v% zuRdN^sUFQE%<nGEdF7JVc`2z&b0u}K*AvQl?J`k&=39rN!I={+R<APhsuZuEmCr)G z#z|?%q14yq7KJLtkN#=vcrjhDqKE$Qp5Xq2`-X%-gc`UGj+sv|4Oz@~CwtQU2oEH_ zrUE`@HLguiiOuSCTyvok*(d($x9?p2bh7}%1kQ7JNS@s&S6(U9EjMS;ukZcAGrxL) zV9fG5;W<$`<f}-pqVsxxCHc8m*m${dK9%tTrbtF-omh6Fxl%pZaB@whI$Srrx>6mf z8^P!4)u#iM>S)Jks8T&U{cKI8dT!M@(0HNY0!AYDxdzvI+|2;>GgOR4+PVf;8>koL zNcjJY8$08-UP$~;!FN+M;F$d(AL4)9{z|%J6=OTcpu*=bKferM{`~1<+NJN`{Tabz zSP}1tL4d65&DSEPD%0$RHs)ln%w7Xj7pY5dHDQgXuX}bd^vz-SG?M1!@}=%T_40Lf ze2%&h*9y!JZ~nNm>*x9bfrH<&$>jl=hK4FsoW~oEH&v*|mE%o>kmnl6knzuB>ps5X zp=DQp#@D(77PDrt9w?3Z1TNL<un`qmT>F8=sdqj+@bC{>)(R~0+@(N6O>q&_pxJ`S zo|zDXrscd4B$6qwP?<K=G(_q>6Y4!vork+msWWlS2jtf_O|P0h`^=0yM3Ln(4x&%M z|45)}PGqu_yRO0oW%*(*+PY+U%i`rvh@teYjt{|Q52-cHYHrbeyUrZByz&^5n~rUp z*LLA`^&-|;VoeYBOmqLxVUz5Q>AhO*;>EP;SFyGBRaL7HcQGYL?DtGg7$=LMMp~IW zmn3&${fV~mib@s6(&m}=ILXB;4oLTkN*iUt0-6jvxf|C*v;e*>x>xw*OAe(L{9?~H zG%V!(Rh<Z(NH?n|cb`l(tHZs+cQvacy(9R1WBwa;&FZ<G=Mv58h20nM7S%@;RUo*V zsjj0$7k8JaRa88JZ^FTHv!ITGGIJ)7Ru8W{ypFIr+;Di^QI3i5$|YkDtvIxX#vWR7 zXpK8|?XkI)C!c>k!{xED4X78%V`E!+d7vV2<*^^~*w5s_?}R*rS1aB%@fYdJiWS7+ z(c4DvBpgRKjNVx!9<gJ^>4J2@0-ADQ#evl{<-n2yt6j2$Z=4cHxV$K?B&~t(WprNz zTExI&&;uI=+G*Ornt^r~wAfDLpuIE`PHZ~i+I3(T!?pRqE?03xSS?<AaM|E08ah}z zxXNAol8(xYfAG=ITiYNmNNT3A9QyZv3G%1v^K+h`UqPQ&y7nNNJ$ZX5;5_w}5WPs1 z&MrI4_=pg(x`_V!{-x!W`xadCT~D)dQ+cT4(Eeui@b<%ZHmgTA9qEU{-lEQ@+zbjU z_STAgsJ9`+eV00r8n}ZoaNEEgo)_h6EV`|Ew6T_F#>36Sn`k29+@>OAMT691Xu^i3 zAO}!KwvR+;(n#A##AT`I+qjxCc^61&ZidsPuo1w;go*E&bngWqPQbf&UHY57x&KW* z&ihm6EA!`rJz_(^!_n1c`v$v%FtnTP4j02uoP2iUOQ9?NAP6D1tqlYzWt<}<U+_?^ zsjgXA!9HEVi>}Aitl(p17u;ElpyRui?u!^J61QTc$F3P;er2p~O!yVCw>OFSJCmLJ z2_UlB{YByzIjV1aOsTFWi?>(UOjD5u2#de!mB0Ju&lcTu4%))JqoT|fJaQjV^K!Aa zvr0o=(ai!2{^PZj9qiHhxq;e+?m((~A_mITFv{J?LO!RK<@L48GurCaS}k9zUR%DH zg`$IV4k8R4obybR%X!gp<(xv-*A?$*(<t-SqsvBxw-#kiKInR7AL=`0;X)R7cBuU* zP?)LUyNm9<>W6Ea$lwe3g^f2bj7&SbGRxp1WfE}3o^P=*`|J8wl1Tcm=wIn-ph#4~ zAD;G7&Er|(Nb?A@MC6*qmM9Y2Vg=;WHH}C+-F|up!8^U|^o}BZ6J7ms)6cb?>!RuB z8qReUO&1xb&$K~<e3w{Rw~o*m8yb6%)*D+l_FzsVxSYdcdp9pB$x5`FtgKu~Oh3Qr z{B~OEeD(S5MN5fR4re|-dFKjRf(D(6zD_%?C{4!q4Rr5{LbS-`qPVc`LVzYAu@4k6 zLzEx#i6_^cWD`+46i*cA5j;Kdyy@xa=`=w*z3X(^MNg!gfZ`^rg?SV`Qfh07H%M?+ z;9_nA-;|54@iJe|ZqYsA;wuiML%l--1bk@s(106AMIBVEE(Ot!w3g=?sBU7oQjEvd zKnC|kEEDCjN4aano$EVU2HCl~v(2UZXPZAa^3c`4tPBPdI5dxjKtB%R!%xo_KB(x0 zI)1G>2Ui`ESNG2K9AZOZat?k<y#{%EGb4cK@XbXW6jgx75Frz{7Y64-QE{kkXeVQ3 z-O$dW6-0$z;8e_r>x5CRtirXPA;62U^)5Ta34&tIVR$<(X7BjEf$rTYqVg}9(gG+g zE|eC?3HR<4aXf*O=c~2YF$ttK%y%w=-&~~L>*BeK?!5|)tD5M%OcJdE1A+T#74%{5 zFN#*87|QzwU`78G5-UE!Nr6kF+JRDuu^ZoYbnlg292e28DP}~VBfzEwHU)ON4EXBn z3j%wddL-^;7r0T;3a+GfFp>;$rlEMLY+IK3%<P72m%Ehcwz@qNU-?5}=!z>CD>thR zXo@s3R`Lc(lh=je=!^cXt8>y`v$AX%4oIkIv_x=OY_$OLZrm5GCN|nV3OwgCynUFZ za>H%IB9;5n{QZwz@y3Q%3fb|Q%~hM{HLG1!UHG)O+mU89yED6|S?yode?zl+d)4iD zKDcHu(5xO>cc>ld?1sarypF6og109+PV7eY)_!sqs<+s17S&s91fOqIy@6S0o6oj2 ztLJx|kD-QZzko3~6jOx@?;zLRxKQ0eU-#hZ#ocCfSJ1h}-7Oe*3mZ3}ZlhzEcs7VT jY|24wqEngIB`+gj2?68X4y2zuFa_#}?<I8aPYC`Wn%`03 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h deleted file mode 100644 index d3cba52c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h +++ /dev/null @@ -1,64 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _STDC_PREDEF_H -#define _STDC_PREDEF_H 1 - -/* This header is separate from features.h so that the compiler can - include it implicitly at the start of every compilation. It must - not itself include <features.h> or any other header that includes - <features.h> because the implicit include comes before any feature - test macros that may be defined in a source file before it first - explicitly includes a system header. GCC knows the name of this - header in order to preinclude it. */ - -/* glibc's intent is to support the IEC 559 math functionality, real - and complex. If the GCC (4.9 and later) predefined macros - specifying compiler intent are available, use them to determine - whether the overall intent is to support these features; otherwise, - presume an older compiler has intent to support these features and - define these macros by default. */ - -#ifdef __GCC_IEC_559 -# if __GCC_IEC_559 > 0 -# define __STDC_IEC_559__ 1 -# define __STDC_IEC_60559_BFP__ 201404L -# endif -#else -# define __STDC_IEC_559__ 1 -# define __STDC_IEC_60559_BFP__ 201404L -#endif - -#ifdef __GCC_IEC_559_COMPLEX -# if __GCC_IEC_559_COMPLEX > 0 -# define __STDC_IEC_559_COMPLEX__ 1 -# define __STDC_IEC_60559_COMPLEX__ 201404L -# endif -#else -# define __STDC_IEC_559_COMPLEX__ 1 -# define __STDC_IEC_60559_COMPLEX__ 201404L -#endif - -/* wchar_t uses Unicode 10.0.0. Version 10.0 of the Unicode Standard is - synchronized with ISO/IEC 10646:2017, fifth edition, plus - the following additions from Amendment 1 to the fifth edition: - - 56 emoji characters - - 285 hentaigana - - 3 additional Zanabazar Square characters */ -#define __STDC_ISO_10646__ 201706L - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdc-predef.h.blob deleted file mode 100644 index da14abbb0564d0aeb8bb72d5cf6ccaf6fb60291a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12652 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h deleted file mode 100644 index 165a201a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h +++ /dev/null @@ -1,319 +0,0 @@ -/* Copyright (C) 1997-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99: 7.18 Integer types <stdint.h> - */ - -#ifndef _STDINT_H -#define _STDINT_H 1 - -#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION -#include <bits/libc-header-start.h> -#include <bits/types.h> -#include <bits/wchar.h> -#include <bits/wordsize.h> - -/* Exact integral types. */ - -/* Signed. */ -#include <bits/stdint-intn.h> - -/* Unsigned. */ -#include <bits/stdint-uintn.h> - - -/* Small types. */ - -/* Signed. */ -typedef __int_least8_t int_least8_t; -typedef __int_least16_t int_least16_t; -typedef __int_least32_t int_least32_t; -typedef __int_least64_t int_least64_t; - -/* Unsigned. */ -typedef __uint_least8_t uint_least8_t; -typedef __uint_least16_t uint_least16_t; -typedef __uint_least32_t uint_least32_t; -typedef __uint_least64_t uint_least64_t; - - -/* Fast types. */ - -/* Signed. */ -typedef signed char int_fast8_t; -#if __WORDSIZE == 64 -typedef long int int_fast16_t; -typedef long int int_fast32_t; -typedef long int int_fast64_t; -#else -typedef int int_fast16_t; -typedef int int_fast32_t; -__extension__ -typedef long long int int_fast64_t; -#endif - -/* Unsigned. */ -typedef unsigned char uint_fast8_t; -#if __WORDSIZE == 64 -typedef unsigned long int uint_fast16_t; -typedef unsigned long int uint_fast32_t; -typedef unsigned long int uint_fast64_t; -#else -typedef unsigned int uint_fast16_t; -typedef unsigned int uint_fast32_t; -__extension__ -typedef unsigned long long int uint_fast64_t; -#endif - - -/* Types for `void *' pointers. */ -#if __WORDSIZE == 64 -# ifndef __intptr_t_defined -typedef long int intptr_t; -# define __intptr_t_defined -# endif -typedef unsigned long int uintptr_t; -#else -# ifndef __intptr_t_defined -typedef int intptr_t; -# define __intptr_t_defined -# endif -typedef unsigned int uintptr_t; -#endif - - -/* Largest integral types. */ -typedef __intmax_t intmax_t; -typedef __uintmax_t uintmax_t; - - -# if __WORDSIZE == 64 -# define __INT64_C(c) c ## L -# define __UINT64_C(c) c ## UL -# else -# define __INT64_C(c) c ## LL -# define __UINT64_C(c) c ## ULL -# endif - -/* Limits of integral types. */ - -/* Minimum of signed integral types. */ -# define INT8_MIN (-128) -# define INT16_MIN (-32767-1) -# define INT32_MIN (-2147483647-1) -# define INT64_MIN (-__INT64_C(9223372036854775807)-1) -/* Maximum of signed integral types. */ -# define INT8_MAX (127) -# define INT16_MAX (32767) -# define INT32_MAX (2147483647) -# define INT64_MAX (__INT64_C(9223372036854775807)) - -/* Maximum of unsigned integral types. */ -# define UINT8_MAX (255) -# define UINT16_MAX (65535) -# define UINT32_MAX (4294967295U) -# define UINT64_MAX (__UINT64_C(18446744073709551615)) - - -/* Minimum of signed integral types having a minimum size. */ -# define INT_LEAST8_MIN (-128) -# define INT_LEAST16_MIN (-32767-1) -# define INT_LEAST32_MIN (-2147483647-1) -# define INT_LEAST64_MIN (-__INT64_C(9223372036854775807)-1) -/* Maximum of signed integral types having a minimum size. */ -# define INT_LEAST8_MAX (127) -# define INT_LEAST16_MAX (32767) -# define INT_LEAST32_MAX (2147483647) -# define INT_LEAST64_MAX (__INT64_C(9223372036854775807)) - -/* Maximum of unsigned integral types having a minimum size. */ -# define UINT_LEAST8_MAX (255) -# define UINT_LEAST16_MAX (65535) -# define UINT_LEAST32_MAX (4294967295U) -# define UINT_LEAST64_MAX (__UINT64_C(18446744073709551615)) - - -/* Minimum of fast signed integral types having a minimum size. */ -# define INT_FAST8_MIN (-128) -# if __WORDSIZE == 64 -# define INT_FAST16_MIN (-9223372036854775807L-1) -# define INT_FAST32_MIN (-9223372036854775807L-1) -# else -# define INT_FAST16_MIN (-2147483647-1) -# define INT_FAST32_MIN (-2147483647-1) -# endif -# define INT_FAST64_MIN (-__INT64_C(9223372036854775807)-1) -/* Maximum of fast signed integral types having a minimum size. */ -# define INT_FAST8_MAX (127) -# if __WORDSIZE == 64 -# define INT_FAST16_MAX (9223372036854775807L) -# define INT_FAST32_MAX (9223372036854775807L) -# else -# define INT_FAST16_MAX (2147483647) -# define INT_FAST32_MAX (2147483647) -# endif -# define INT_FAST64_MAX (__INT64_C(9223372036854775807)) - -/* Maximum of fast unsigned integral types having a minimum size. */ -# define UINT_FAST8_MAX (255) -# if __WORDSIZE == 64 -# define UINT_FAST16_MAX (18446744073709551615UL) -# define UINT_FAST32_MAX (18446744073709551615UL) -# else -# define UINT_FAST16_MAX (4294967295U) -# define UINT_FAST32_MAX (4294967295U) -# endif -# define UINT_FAST64_MAX (__UINT64_C(18446744073709551615)) - - -/* Values to test for integral types holding `void *' pointer. */ -# if __WORDSIZE == 64 -# define INTPTR_MIN (-9223372036854775807L-1) -# define INTPTR_MAX (9223372036854775807L) -# define UINTPTR_MAX (18446744073709551615UL) -# else -# define INTPTR_MIN (-2147483647-1) -# define INTPTR_MAX (2147483647) -# define UINTPTR_MAX (4294967295U) -# endif - - -/* Minimum for largest signed integral type. */ -# define INTMAX_MIN (-__INT64_C(9223372036854775807)-1) -/* Maximum for largest signed integral type. */ -# define INTMAX_MAX (__INT64_C(9223372036854775807)) - -/* Maximum for largest unsigned integral type. */ -# define UINTMAX_MAX (__UINT64_C(18446744073709551615)) - - -/* Limits of other integer types. */ - -/* Limits of `ptrdiff_t' type. */ -# if __WORDSIZE == 64 -# define PTRDIFF_MIN (-9223372036854775807L-1) -# define PTRDIFF_MAX (9223372036854775807L) -# else -# if __WORDSIZE32_PTRDIFF_LONG -# define PTRDIFF_MIN (-2147483647L-1) -# define PTRDIFF_MAX (2147483647L) -# else -# define PTRDIFF_MIN (-2147483647-1) -# define PTRDIFF_MAX (2147483647) -# endif -# endif - -/* Limits of `sig_atomic_t'. */ -# define SIG_ATOMIC_MIN (-2147483647-1) -# define SIG_ATOMIC_MAX (2147483647) - -/* Limit of `size_t' type. */ -# if __WORDSIZE == 64 -# define SIZE_MAX (18446744073709551615UL) -# else -# if __WORDSIZE32_SIZE_ULONG -# define SIZE_MAX (4294967295UL) -# else -# define SIZE_MAX (4294967295U) -# endif -# endif - -/* Limits of `wchar_t'. */ -# ifndef WCHAR_MIN -/* These constants might also be defined in <wchar.h>. */ -# define WCHAR_MIN __WCHAR_MIN -# define WCHAR_MAX __WCHAR_MAX -# endif - -/* Limits of `wint_t'. */ -# define WINT_MIN (0u) -# define WINT_MAX (4294967295u) - -/* Signed. */ -# define INT8_C(c) c -# define INT16_C(c) c -# define INT32_C(c) c -# if __WORDSIZE == 64 -# define INT64_C(c) c ## L -# else -# define INT64_C(c) c ## LL -# endif - -/* Unsigned. */ -# define UINT8_C(c) c -# define UINT16_C(c) c -# define UINT32_C(c) c ## U -# if __WORDSIZE == 64 -# define UINT64_C(c) c ## UL -# else -# define UINT64_C(c) c ## ULL -# endif - -/* Maximal type. */ -# if __WORDSIZE == 64 -# define INTMAX_C(c) c ## L -# define UINTMAX_C(c) c ## UL -# else -# define INTMAX_C(c) c ## LL -# define UINTMAX_C(c) c ## ULL -# endif - -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) - -# define INT8_WIDTH 8 -# define UINT8_WIDTH 8 -# define INT16_WIDTH 16 -# define UINT16_WIDTH 16 -# define INT32_WIDTH 32 -# define UINT32_WIDTH 32 -# define INT64_WIDTH 64 -# define UINT64_WIDTH 64 - -# define INT_LEAST8_WIDTH 8 -# define UINT_LEAST8_WIDTH 8 -# define INT_LEAST16_WIDTH 16 -# define UINT_LEAST16_WIDTH 16 -# define INT_LEAST32_WIDTH 32 -# define UINT_LEAST32_WIDTH 32 -# define INT_LEAST64_WIDTH 64 -# define UINT_LEAST64_WIDTH 64 - -# define INT_FAST8_WIDTH 8 -# define UINT_FAST8_WIDTH 8 -# define INT_FAST16_WIDTH __WORDSIZE -# define UINT_FAST16_WIDTH __WORDSIZE -# define INT_FAST32_WIDTH __WORDSIZE -# define UINT_FAST32_WIDTH __WORDSIZE -# define INT_FAST64_WIDTH 64 -# define UINT_FAST64_WIDTH 64 - -# define INTPTR_WIDTH __WORDSIZE -# define UINTPTR_WIDTH __WORDSIZE - -# define INTMAX_WIDTH 64 -# define UINTMAX_WIDTH 64 - -# define PTRDIFF_WIDTH __WORDSIZE -# define SIG_ATOMIC_WIDTH 32 -# define SIZE_WIDTH __WORDSIZE -# define WCHAR_WIDTH 32 -# define WINT_WIDTH 32 - -#endif - -#endif /* stdint.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdint.h.blob deleted file mode 100644 index 9f970b91292a1ccbe71352217578c27d6af4e7cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20225 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 SfEFCE|Ec~HcEdP}oc{lI<l9F8 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h deleted file mode 100644 index 4cf9f1c0..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h +++ /dev/null @@ -1,969 +0,0 @@ -/* Define ISO C stdio on top of C++ iostreams. - Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.19 Input/output <stdio.h> - */ - -#ifndef _STDIO_H -#define _STDIO_H 1 - -#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION -#include <bits/libc-header-start.h> - -__BEGIN_DECLS - -#define __need_size_t -#define __need_NULL -#include <stddef.h> - -#define __need___va_list -#include <stdarg.h> - -#include <bits/types.h> -#include <bits/types/__fpos_t.h> -#include <bits/types/__fpos64_t.h> -#include <bits/types/__FILE.h> -#include <bits/types/FILE.h> -#include <bits/types/struct_FILE.h> - -#ifdef __USE_MISC -# include <bits/types/cookie_io_functions_t.h> -#endif - -#if defined __USE_XOPEN || defined __USE_XOPEN2K8 -# ifdef __GNUC__ -# ifndef _VA_LIST_DEFINED -typedef __gnuc_va_list va_list; -# define _VA_LIST_DEFINED -# endif -# else -# include <stdarg.h> -# endif -#endif - -#if defined __USE_UNIX98 || defined __USE_XOPEN2K -# ifndef __off_t_defined -# ifndef __USE_FILE_OFFSET64 -typedef __off_t off_t; -# else -typedef __off64_t off_t; -# endif -# define __off_t_defined -# endif -# if defined __USE_LARGEFILE64 && !defined __off64_t_defined -typedef __off64_t off64_t; -# define __off64_t_defined -# endif -#endif - -#ifdef __USE_XOPEN2K8 -# ifndef __ssize_t_defined -typedef __ssize_t ssize_t; -# define __ssize_t_defined -# endif -#endif - -/* The type of the second argument to `fgetpos' and `fsetpos'. */ -#ifndef __USE_FILE_OFFSET64 -typedef __fpos_t fpos_t; -#else -typedef __fpos64_t fpos_t; -#endif -#ifdef __USE_LARGEFILE64 -typedef __fpos64_t fpos64_t; -#endif - -/* The possibilities for the third argument to `setvbuf'. */ -#define _IOFBF 0 /* Fully buffered. */ -#define _IOLBF 1 /* Line buffered. */ -#define _IONBF 2 /* No buffering. */ - - -/* Default buffer size. */ -#define BUFSIZ 8192 - - -/* The value returned by fgetc and similar functions to indicate the - end of the file. */ -#define EOF (-1) - - -/* The possibilities for the third argument to `fseek'. - These values should not be changed. */ -#define SEEK_SET 0 /* Seek from beginning of file. */ -#define SEEK_CUR 1 /* Seek from current position. */ -#define SEEK_END 2 /* Seek from end of file. */ -#ifdef __USE_GNU -# define SEEK_DATA 3 /* Seek to next data. */ -# define SEEK_HOLE 4 /* Seek to next hole. */ -#endif - - -#if defined __USE_MISC || defined __USE_XOPEN -/* Default path prefix for `tempnam' and `tmpnam'. */ -# define P_tmpdir "/tmp" -#endif - -#define L_tmpnam 20 -#define TMP_MAX 238328 - -/* Get the values: - FILENAME_MAX Maximum length of a filename. */ -#include <bits/stdio_lim.h> - -#ifdef __USE_POSIX -# define L_ctermid 9 -# if !defined __USE_XOPEN2K || defined __USE_GNU -# define L_cuserid 9 -# endif -#endif - -#undef FOPEN_MAX -#define FOPEN_MAX 16 - - -#if __GLIBC_USE (ISOC2X) -/* Maximum length of printf output for a NaN. */ -# define _PRINTF_NAN_LEN_MAX 4 -#endif - - -/* Standard streams. */ -extern FILE *stdin; /* Standard input stream. */ -extern FILE *stdout; /* Standard output stream. */ -extern FILE *stderr; /* Standard error output stream. */ -/* C89/C99 say they're macros. Make them happy. */ -#define stdin stdin -#define stdout stdout -#define stderr stderr - -/* Remove file FILENAME. */ -extern int remove (const char *__filename) __THROW; -/* Rename file OLD to NEW. */ -extern int rename (const char *__old, const char *__new) __THROW; - -#ifdef __USE_ATFILE -/* Rename file OLD relative to OLDFD to NEW relative to NEWFD. */ -extern int renameat (int __oldfd, const char *__old, int __newfd, - const char *__new) __THROW; -#endif - -#ifdef __USE_GNU -/* Flags for renameat2. */ -# define RENAME_NOREPLACE (1 << 0) -# define RENAME_EXCHANGE (1 << 1) -# define RENAME_WHITEOUT (1 << 2) - -/* Rename file OLD relative to OLDFD to NEW relative to NEWFD, with - additional flags. */ -extern int renameat2 (int __oldfd, const char *__old, int __newfd, - const char *__new, unsigned int __flags) __THROW; -#endif - -/* Close STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fclose (FILE *__stream) __nonnull ((1)); - -#undef __attr_dealloc_fclose -#define __attr_dealloc_fclose __attr_dealloc (fclose, 1) - -/* Create a temporary file and open it read/write. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -#ifndef __USE_FILE_OFFSET64 -extern FILE *tmpfile (void) - __attribute_malloc__ __attr_dealloc_fclose __wur; -#else -# ifdef __REDIRECT -extern FILE *__REDIRECT (tmpfile, (void), tmpfile64) - __attribute_malloc__ __attr_dealloc_fclose __wur; -# else -# define tmpfile tmpfile64 -# endif -#endif - -#ifdef __USE_LARGEFILE64 -extern FILE *tmpfile64 (void) - __attribute_malloc__ __attr_dealloc_fclose __wur; -#endif - -/* Generate a temporary filename. */ -extern char *tmpnam (char[L_tmpnam]) __THROW __wur; - -#ifdef __USE_MISC -/* This is the reentrant variant of `tmpnam'. The only difference is - that it does not allow S to be NULL. */ -extern char *tmpnam_r (char __s[L_tmpnam]) __THROW __wur; -#endif - - -#if defined __USE_MISC || defined __USE_XOPEN -/* Generate a unique temporary filename using up to five characters of PFX - if it is not NULL. The directory to put this file in is searched for - as follows: First the environment variable "TMPDIR" is checked. - If it contains the name of a writable directory, that directory is used. - If not and if DIR is not NULL, that value is checked. If that fails, - P_tmpdir is tried and finally "/tmp". The storage for the filename - is allocated by `malloc'. */ -extern char *tempnam (const char *__dir, const char *__pfx) - __THROW __attribute_malloc__ __wur __attr_dealloc_free; -#endif - -/* Flush STREAM, or all streams if STREAM is NULL. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fflush (FILE *__stream); - -#ifdef __USE_MISC -/* Faster versions when locking is not required. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern int fflush_unlocked (FILE *__stream); -#endif - -#ifdef __USE_GNU -/* Close all streams. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern int fcloseall (void); -#endif - - -#ifndef __USE_FILE_OFFSET64 -/* Open a file and create a new stream for it. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern FILE *fopen (const char *__restrict __filename, - const char *__restrict __modes) - __attribute_malloc__ __attr_dealloc_fclose __wur; -/* Open a file, replacing an existing stream with it. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern FILE *freopen (const char *__restrict __filename, - const char *__restrict __modes, - FILE *__restrict __stream) __wur __nonnull ((3)); -#else -# ifdef __REDIRECT -extern FILE *__REDIRECT (fopen, (const char *__restrict __filename, - const char *__restrict __modes), fopen64) - __attribute_malloc__ __attr_dealloc_fclose __wur; -extern FILE *__REDIRECT (freopen, (const char *__restrict __filename, - const char *__restrict __modes, - FILE *__restrict __stream), freopen64) - __wur; -# else -# define fopen fopen64 -# define freopen freopen64 -# endif -#endif -#ifdef __USE_LARGEFILE64 -extern FILE *fopen64 (const char *__restrict __filename, - const char *__restrict __modes) - __attribute_malloc__ __attr_dealloc_fclose __wur; -extern FILE *freopen64 (const char *__restrict __filename, - const char *__restrict __modes, - FILE *__restrict __stream) __wur __nonnull ((3)); -#endif - -#ifdef __USE_POSIX -/* Create a new stream that refers to an existing system file descriptor. */ -extern FILE *fdopen (int __fd, const char *__modes) __THROW - __attribute_malloc__ __attr_dealloc_fclose __wur; -#endif - -#ifdef __USE_MISC -/* Create a new stream that refers to the given magic cookie, - and uses the given functions for input and output. */ -extern FILE *fopencookie (void *__restrict __magic_cookie, - const char *__restrict __modes, - cookie_io_functions_t __io_funcs) __THROW - __attribute_malloc__ __attr_dealloc_fclose __wur; -#endif - -#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) -/* Create a new stream that refers to a memory buffer. */ -extern FILE *fmemopen (void *__s, size_t __len, const char *__modes) - __THROW __attribute_malloc__ __attr_dealloc_fclose __wur; - -/* Open a stream that writes into a malloc'd buffer that is expanded as - necessary. *BUFLOC and *SIZELOC are updated with the buffer's location - and the number of characters written on fflush or fclose. */ -extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __THROW - __attribute_malloc__ __attr_dealloc_fclose __wur; - -#ifdef _WCHAR_H -/* Like OPEN_MEMSTREAM, but the stream is wide oriented and produces - a wide character string. Declared here only to add attribute malloc - and only if <wchar.h> has been previously #included. */ -extern __FILE *open_wmemstream (wchar_t **__bufloc, size_t *__sizeloc) __THROW - __attribute_malloc__ __attr_dealloc_fclose; -# endif -#endif - -/* If BUF is NULL, make STREAM unbuffered. - Else make it use buffer BUF, of size BUFSIZ. */ -extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __THROW; -/* Make STREAM use buffering mode MODE. - If BUF is not NULL, use N bytes of it for buffering; - else allocate an internal buffer N bytes long. */ -extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf, - int __modes, size_t __n) __THROW; - -#ifdef __USE_MISC -/* If BUF is NULL, make STREAM unbuffered. - Else make it use SIZE bytes of BUF for buffering. */ -extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf, - size_t __size) __THROW; - -/* Make STREAM line-buffered. */ -extern void setlinebuf (FILE *__stream) __THROW; -#endif - - -/* Write formatted output to STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fprintf (FILE *__restrict __stream, - const char *__restrict __format, ...); -/* Write formatted output to stdout. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int printf (const char *__restrict __format, ...); -/* Write formatted output to S. */ -extern int sprintf (char *__restrict __s, - const char *__restrict __format, ...) __THROWNL; - -/* Write formatted output to S from argument list ARG. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int vfprintf (FILE *__restrict __s, const char *__restrict __format, - __gnuc_va_list __arg); -/* Write formatted output to stdout from argument list ARG. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int vprintf (const char *__restrict __format, __gnuc_va_list __arg); -/* Write formatted output to S from argument list ARG. */ -extern int vsprintf (char *__restrict __s, const char *__restrict __format, - __gnuc_va_list __arg) __THROWNL; - -#if defined __USE_ISOC99 || defined __USE_UNIX98 -/* Maximum chars of output to write in MAXLEN. */ -extern int snprintf (char *__restrict __s, size_t __maxlen, - const char *__restrict __format, ...) - __THROWNL __attribute__ ((__format__ (__printf__, 3, 4))); - -extern int vsnprintf (char *__restrict __s, size_t __maxlen, - const char *__restrict __format, __gnuc_va_list __arg) - __THROWNL __attribute__ ((__format__ (__printf__, 3, 0))); -#endif - -#if defined (__USE_MISC) || __GLIBC_USE (LIB_EXT2) -/* Write formatted output to a string dynamically allocated with `malloc'. - Store the address of the string in *PTR. */ -extern int vasprintf (char **__restrict __ptr, const char *__restrict __f, - __gnuc_va_list __arg) - __THROWNL __attribute__ ((__format__ (__printf__, 2, 0))) __wur; -extern int __asprintf (char **__restrict __ptr, - const char *__restrict __fmt, ...) - __THROWNL __attribute__ ((__format__ (__printf__, 2, 3))) __wur; -extern int asprintf (char **__restrict __ptr, - const char *__restrict __fmt, ...) - __THROWNL __attribute__ ((__format__ (__printf__, 2, 3))) __wur; -#endif - -#ifdef __USE_XOPEN2K8 -/* Write formatted output to a file descriptor. */ -extern int vdprintf (int __fd, const char *__restrict __fmt, - __gnuc_va_list __arg) - __attribute__ ((__format__ (__printf__, 2, 0))); -extern int dprintf (int __fd, const char *__restrict __fmt, ...) - __attribute__ ((__format__ (__printf__, 2, 3))); -#endif - - -/* Read formatted input from STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fscanf (FILE *__restrict __stream, - const char *__restrict __format, ...) __wur; -/* Read formatted input from stdin. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int scanf (const char *__restrict __format, ...) __wur; -/* Read formatted input from S. */ -extern int sscanf (const char *__restrict __s, - const char *__restrict __format, ...) __THROW; - -/* For historical reasons, the C99-compliant versions of the scanf - functions are at alternative names. When __LDBL_COMPAT or - __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI are in effect, this is handled in - bits/stdio-ldbl.h. */ -#include <bits/floatn.h> -#if !__GLIBC_USE (DEPRECATED_SCANF) && !defined __LDBL_COMPAT \ - && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 -# if __GLIBC_USE (C2X_STRTOL) -# ifdef __REDIRECT -extern int __REDIRECT (fscanf, (FILE *__restrict __stream, - const char *__restrict __format, ...), - __isoc23_fscanf) __wur; -extern int __REDIRECT (scanf, (const char *__restrict __format, ...), - __isoc23_scanf) __wur; -extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s, - const char *__restrict __format, ...), - __isoc23_sscanf); -# else -extern int __isoc23_fscanf (FILE *__restrict __stream, - const char *__restrict __format, ...) __wur; -extern int __isoc23_scanf (const char *__restrict __format, ...) __wur; -extern int __isoc23_sscanf (const char *__restrict __s, - const char *__restrict __format, ...) __THROW; -# define fscanf __isoc23_fscanf -# define scanf __isoc23_scanf -# define sscanf __isoc23_sscanf -# endif -# else -# ifdef __REDIRECT -extern int __REDIRECT (fscanf, (FILE *__restrict __stream, - const char *__restrict __format, ...), - __isoc99_fscanf) __wur; -extern int __REDIRECT (scanf, (const char *__restrict __format, ...), - __isoc99_scanf) __wur; -extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s, - const char *__restrict __format, ...), - __isoc99_sscanf); -# else -extern int __isoc99_fscanf (FILE *__restrict __stream, - const char *__restrict __format, ...) __wur; -extern int __isoc99_scanf (const char *__restrict __format, ...) __wur; -extern int __isoc99_sscanf (const char *__restrict __s, - const char *__restrict __format, ...) __THROW; -# define fscanf __isoc99_fscanf -# define scanf __isoc99_scanf -# define sscanf __isoc99_sscanf -# endif -# endif -#endif - -#ifdef __USE_ISOC99 -/* Read formatted input from S into argument list ARG. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int vfscanf (FILE *__restrict __s, const char *__restrict __format, - __gnuc_va_list __arg) - __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; - -/* Read formatted input from stdin into argument list ARG. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int vscanf (const char *__restrict __format, __gnuc_va_list __arg) - __attribute__ ((__format__ (__scanf__, 1, 0))) __wur; - -/* Read formatted input from S into argument list ARG. */ -extern int vsscanf (const char *__restrict __s, - const char *__restrict __format, __gnuc_va_list __arg) - __THROW __attribute__ ((__format__ (__scanf__, 2, 0))); - -/* Same redirection as above for the v*scanf family. */ -# if !__GLIBC_USE (DEPRECATED_SCANF) -# if __GLIBC_USE (C2X_STRTOL) -# if defined __REDIRECT && !defined __LDBL_COMPAT \ - && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 -extern int __REDIRECT (vfscanf, - (FILE *__restrict __s, - const char *__restrict __format, __gnuc_va_list __arg), - __isoc23_vfscanf) - __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; -extern int __REDIRECT (vscanf, (const char *__restrict __format, - __gnuc_va_list __arg), __isoc23_vscanf) - __attribute__ ((__format__ (__scanf__, 1, 0))) __wur; -extern int __REDIRECT_NTH (vsscanf, - (const char *__restrict __s, - const char *__restrict __format, - __gnuc_va_list __arg), __isoc23_vsscanf) - __attribute__ ((__format__ (__scanf__, 2, 0))); -# elif !defined __REDIRECT -extern int __isoc23_vfscanf (FILE *__restrict __s, - const char *__restrict __format, - __gnuc_va_list __arg) __wur; -extern int __isoc23_vscanf (const char *__restrict __format, - __gnuc_va_list __arg) __wur; -extern int __isoc23_vsscanf (const char *__restrict __s, - const char *__restrict __format, - __gnuc_va_list __arg) __THROW; -# define vfscanf __isoc23_vfscanf -# define vscanf __isoc23_vscanf -# define vsscanf __isoc23_vsscanf -# endif -# else -# if defined __REDIRECT && !defined __LDBL_COMPAT \ - && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 -extern int __REDIRECT (vfscanf, - (FILE *__restrict __s, - const char *__restrict __format, __gnuc_va_list __arg), - __isoc99_vfscanf) - __attribute__ ((__format__ (__scanf__, 2, 0))) __wur; -extern int __REDIRECT (vscanf, (const char *__restrict __format, - __gnuc_va_list __arg), __isoc99_vscanf) - __attribute__ ((__format__ (__scanf__, 1, 0))) __wur; -extern int __REDIRECT_NTH (vsscanf, - (const char *__restrict __s, - const char *__restrict __format, - __gnuc_va_list __arg), __isoc99_vsscanf) - __attribute__ ((__format__ (__scanf__, 2, 0))); -# elif !defined __REDIRECT -extern int __isoc99_vfscanf (FILE *__restrict __s, - const char *__restrict __format, - __gnuc_va_list __arg) __wur; -extern int __isoc99_vscanf (const char *__restrict __format, - __gnuc_va_list __arg) __wur; -extern int __isoc99_vsscanf (const char *__restrict __s, - const char *__restrict __format, - __gnuc_va_list __arg) __THROW; -# define vfscanf __isoc99_vfscanf -# define vscanf __isoc99_vscanf -# define vsscanf __isoc99_vsscanf -# endif -# endif -# endif -#endif /* Use ISO C9x. */ - - -/* Read a character from STREAM. - - These functions are possible cancellation points and therefore not - marked with __THROW. */ -extern int fgetc (FILE *__stream); -extern int getc (FILE *__stream); - -/* Read a character from stdin. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int getchar (void); - -#ifdef __USE_POSIX199506 -/* These are defined in POSIX.1:1996. - - These functions are possible cancellation points and therefore not - marked with __THROW. */ -extern int getc_unlocked (FILE *__stream); -extern int getchar_unlocked (void); -#endif /* Use POSIX. */ - -#ifdef __USE_MISC -/* Faster version when locking is not necessary. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern int fgetc_unlocked (FILE *__stream); -#endif /* Use MISC. */ - - -/* Write a character to STREAM. - - These functions are possible cancellation points and therefore not - marked with __THROW. - - These functions is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fputc (int __c, FILE *__stream); -extern int putc (int __c, FILE *__stream); - -/* Write a character to stdout. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int putchar (int __c); - -#ifdef __USE_MISC -/* Faster version when locking is not necessary. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern int fputc_unlocked (int __c, FILE *__stream); -#endif /* Use MISC. */ - -#ifdef __USE_POSIX199506 -/* These are defined in POSIX.1:1996. - - These functions are possible cancellation points and therefore not - marked with __THROW. */ -extern int putc_unlocked (int __c, FILE *__stream); -extern int putchar_unlocked (int __c); -#endif /* Use POSIX. */ - - -#if defined __USE_MISC \ - || (defined __USE_XOPEN && !defined __USE_XOPEN2K) -/* Get a word (int) from STREAM. */ -extern int getw (FILE *__stream); - -/* Write a word (int) to STREAM. */ -extern int putw (int __w, FILE *__stream); -#endif - - -/* Get a newline-terminated string of finite length from STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream) - __wur __fortified_attr_access (__write_only__, 1, 2); - -#if __GLIBC_USE (DEPRECATED_GETS) -/* Get a newline-terminated string from stdin, removing the newline. - - This function is impossible to use safely. It has been officially - removed from ISO C11 and ISO C++14, and we have also removed it - from the _GNU_SOURCE feature list. It remains available when - explicitly using an old ISO C, Unix, or POSIX standard. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern char *gets (char *__s) __wur __attribute_deprecated__; -#endif - -#ifdef __USE_GNU -/* This function does the same as `fgets' but does not lock the stream. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern char *fgets_unlocked (char *__restrict __s, int __n, - FILE *__restrict __stream) __wur - __fortified_attr_access (__write_only__, 1, 2); -#endif - - -#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) -/* Read up to (and including) a DELIMITER from STREAM into *LINEPTR - (and null-terminate it). *LINEPTR is a pointer returned from malloc (or - NULL), pointing to *N characters of space. It is realloc'd as - necessary. Returns the number of characters read (not including the - null terminator), or -1 on error or EOF. - - These functions are not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation they are cancellation points and - therefore not marked with __THROW. */ -extern __ssize_t __getdelim (char **__restrict __lineptr, - size_t *__restrict __n, int __delimiter, - FILE *__restrict __stream) __wur; -extern __ssize_t getdelim (char **__restrict __lineptr, - size_t *__restrict __n, int __delimiter, - FILE *__restrict __stream) __wur; - -/* Like `getdelim', but reads up to a newline. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern __ssize_t getline (char **__restrict __lineptr, - size_t *__restrict __n, - FILE *__restrict __stream) __wur; -#endif - - -/* Write a string to STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fputs (const char *__restrict __s, FILE *__restrict __stream); - -/* Write a string, followed by a newline, to stdout. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int puts (const char *__s); - - -/* Push a character back onto the input buffer of STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int ungetc (int __c, FILE *__stream); - - -/* Read chunks of generic data from STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern size_t fread (void *__restrict __ptr, size_t __size, - size_t __n, FILE *__restrict __stream) __wur; -/* Write chunks of generic data to STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern size_t fwrite (const void *__restrict __ptr, size_t __size, - size_t __n, FILE *__restrict __s); - -#ifdef __USE_GNU -/* This function does the same as `fputs' but does not lock the stream. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern int fputs_unlocked (const char *__restrict __s, - FILE *__restrict __stream); -#endif - -#ifdef __USE_MISC -/* Faster versions when locking is not necessary. - - These functions are not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation they are cancellation points and - therefore not marked with __THROW. */ -extern size_t fread_unlocked (void *__restrict __ptr, size_t __size, - size_t __n, FILE *__restrict __stream) __wur; -extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size, - size_t __n, FILE *__restrict __stream); -#endif - - -/* Seek to a certain position on STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fseek (FILE *__stream, long int __off, int __whence); -/* Return the current position of STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern long int ftell (FILE *__stream) __wur; -/* Rewind to the beginning of STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern void rewind (FILE *__stream); - -/* The Single Unix Specification, Version 2, specifies an alternative, - more adequate interface for the two functions above which deal with - file offset. `long int' is not the right type. These definitions - are originally defined in the Large File Support API. */ - -#if defined __USE_LARGEFILE || defined __USE_XOPEN2K -# ifndef __USE_FILE_OFFSET64 -/* Seek to a certain position on STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fseeko (FILE *__stream, __off_t __off, int __whence); -/* Return the current position of STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern __off_t ftello (FILE *__stream) __wur; -# else -# ifdef __REDIRECT -extern int __REDIRECT (fseeko, - (FILE *__stream, __off64_t __off, int __whence), - fseeko64); -extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64); -# else -# define fseeko fseeko64 -# define ftello ftello64 -# endif -# endif -#endif - -#ifndef __USE_FILE_OFFSET64 -/* Get STREAM's position. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos); -/* Set STREAM's position. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fsetpos (FILE *__stream, const fpos_t *__pos); -#else -# ifdef __REDIRECT -extern int __REDIRECT (fgetpos, (FILE *__restrict __stream, - fpos_t *__restrict __pos), fgetpos64); -extern int __REDIRECT (fsetpos, - (FILE *__stream, const fpos_t *__pos), fsetpos64); -# else -# define fgetpos fgetpos64 -# define fsetpos fsetpos64 -# endif -#endif - -#ifdef __USE_LARGEFILE64 -extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence); -extern __off64_t ftello64 (FILE *__stream) __wur; -extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos); -extern int fsetpos64 (FILE *__stream, const fpos64_t *__pos); -#endif - -/* Clear the error and EOF indicators for STREAM. */ -extern void clearerr (FILE *__stream) __THROW; -/* Return the EOF indicator for STREAM. */ -extern int feof (FILE *__stream) __THROW __wur; -/* Return the error indicator for STREAM. */ -extern int ferror (FILE *__stream) __THROW __wur; - -#ifdef __USE_MISC -/* Faster versions when locking is not required. */ -extern void clearerr_unlocked (FILE *__stream) __THROW; -extern int feof_unlocked (FILE *__stream) __THROW __wur; -extern int ferror_unlocked (FILE *__stream) __THROW __wur; -#endif - - -/* Print a message describing the meaning of the value of errno. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern void perror (const char *__s) __COLD; - - -#ifdef __USE_POSIX -/* Return the system file descriptor for STREAM. */ -extern int fileno (FILE *__stream) __THROW __wur; -#endif /* Use POSIX. */ - -#ifdef __USE_MISC -/* Faster version when locking is not required. */ -extern int fileno_unlocked (FILE *__stream) __THROW __wur; -#endif - - -#ifdef __USE_POSIX2 -/* Close a stream opened by popen and return the status of its child. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int pclose (FILE *__stream); - -/* Create a new stream connected to a pipe running the given command. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern FILE *popen (const char *__command, const char *__modes) - __attribute_malloc__ __attr_dealloc (pclose, 1) __wur; - -#endif - - -#ifdef __USE_POSIX -/* Return the name of the controlling terminal. */ -extern char *ctermid (char *__s) __THROW - __attr_access ((__write_only__, 1)); -#endif /* Use POSIX. */ - - -#if (defined __USE_XOPEN && !defined __USE_XOPEN2K) || defined __USE_GNU -/* Return the name of the current user. */ -extern char *cuserid (char *__s) - __attr_access ((__write_only__, 1)); -#endif /* Use X/Open, but not issue 6. */ - - -#ifdef __USE_GNU -struct obstack; /* See <obstack.h>. */ - -/* Write formatted output to an obstack. */ -extern int obstack_printf (struct obstack *__restrict __obstack, - const char *__restrict __format, ...) - __THROWNL __attribute__ ((__format__ (__printf__, 2, 3))); -extern int obstack_vprintf (struct obstack *__restrict __obstack, - const char *__restrict __format, - __gnuc_va_list __args) - __THROWNL __attribute__ ((__format__ (__printf__, 2, 0))); -#endif /* Use GNU. */ - - -#ifdef __USE_POSIX199506 -/* These are defined in POSIX.1:1996. */ - -/* Acquire ownership of STREAM. */ -extern void flockfile (FILE *__stream) __THROW; - -/* Try to acquire ownership of STREAM but do not block if it is not - possible. */ -extern int ftrylockfile (FILE *__stream) __THROW __wur; - -/* Relinquish the ownership granted for STREAM. */ -extern void funlockfile (FILE *__stream) __THROW; -#endif /* POSIX */ - -#if defined __USE_XOPEN && !defined __USE_XOPEN2K && !defined __USE_GNU -/* X/Open Issues 1-5 required getopt to be declared in this - header. It was removed in Issue 6. GNU follows Issue 6. */ -# include <bits/getopt_posix.h> -#endif - -/* Slow-path routines used by the optimized inline functions in - bits/stdio.h. */ -extern int __uflow (FILE *); -extern int __overflow (FILE *, int); - -#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function -/* Declare all functions from bits/stdio2-decl.h first. */ -# include <bits/stdio2-decl.h> -#endif - -/* The following headers provide asm redirections. These redirections must - appear before the first usage of these functions, e.g. in bits/stdio.h. */ -#if defined __LDBL_COMPAT || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# include <bits/stdio-ldbl.h> -#endif - -/* If we are compiling with optimizing read this file. It contains - several optimizing inline functions and macros. */ -#ifdef __USE_EXTERN_INLINES -# include <bits/stdio.h> -#endif -#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function -/* Now include the function definitions and redirects too. */ -# include <bits/stdio2.h> -#endif - -__END_DECLS - -#endif /* <stdio.h> included. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdio.h.blob deleted file mode 100644 index be7f7151928a1b393dd8645fef951a1d675acac2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49141 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%0AgMDu0m(O?P4xGB@q*VPATa;{Q>-Bmrduf77R->{ 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 Wctxxsd<zQrmfPg)xPm7A5dII~@zsI= diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h deleted file mode 100644 index 631b0cbb..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h +++ /dev/null @@ -1,1169 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - Copyright The GNU Toolchain Authors. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.20 General utilities <stdlib.h> - */ - -#ifndef _STDLIB_H - -#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION -#include <bits/libc-header-start.h> - -/* Get size_t, wchar_t and NULL from <stddef.h>. */ -#define __need_size_t -#define __need_wchar_t -#define __need_NULL -#include <stddef.h> - -__BEGIN_DECLS - -#define _STDLIB_H 1 - -#if (defined __USE_XOPEN || defined __USE_XOPEN2K8) && !defined _SYS_WAIT_H -/* XPG requires a few symbols from <sys/wait.h> being defined. */ -# include <bits/waitflags.h> -# include <bits/waitstatus.h> - -/* Define the macros <sys/wait.h> also would define this way. */ -# define WEXITSTATUS(status) __WEXITSTATUS (status) -# define WTERMSIG(status) __WTERMSIG (status) -# define WSTOPSIG(status) __WSTOPSIG (status) -# define WIFEXITED(status) __WIFEXITED (status) -# define WIFSIGNALED(status) __WIFSIGNALED (status) -# define WIFSTOPPED(status) __WIFSTOPPED (status) -# ifdef __WIFCONTINUED -# define WIFCONTINUED(status) __WIFCONTINUED (status) -# endif -#endif /* X/Open or XPG7 and <sys/wait.h> not included. */ - -/* _FloatN API tests for enablement. */ -#include <bits/floatn.h> - -/* Returned by `div'. */ -typedef struct - { - int quot; /* Quotient. */ - int rem; /* Remainder. */ - } div_t; - -/* Returned by `ldiv'. */ -#ifndef __ldiv_t_defined -typedef struct - { - long int quot; /* Quotient. */ - long int rem; /* Remainder. */ - } ldiv_t; -# define __ldiv_t_defined 1 -#endif - -#if defined __USE_ISOC99 && !defined __lldiv_t_defined -/* Returned by `lldiv'. */ -__extension__ typedef struct - { - long long int quot; /* Quotient. */ - long long int rem; /* Remainder. */ - } lldiv_t; -# define __lldiv_t_defined 1 -#endif - - -/* The largest number rand will return (same as INT_MAX). */ -#define RAND_MAX 2147483647 - - -/* We define these the same for all machines. - Changes from this to the outside world should be done in `_exit'. */ -#define EXIT_FAILURE 1 /* Failing exit status. */ -#define EXIT_SUCCESS 0 /* Successful exit status. */ - - -/* Maximum length of a multibyte character in the current locale. */ -#define MB_CUR_MAX (__ctype_get_mb_cur_max ()) -extern size_t __ctype_get_mb_cur_max (void) __THROW __wur; - - -/* Convert a string to a floating-point number. */ -extern double atof (const char *__nptr) - __THROW __attribute_pure__ __nonnull ((1)) __wur; -/* Convert a string to an integer. */ -extern int atoi (const char *__nptr) - __THROW __attribute_pure__ __nonnull ((1)) __wur; -/* Convert a string to a long integer. */ -extern long int atol (const char *__nptr) - __THROW __attribute_pure__ __nonnull ((1)) __wur; - -#ifdef __USE_ISOC99 -/* Convert a string to a long long integer. */ -__extension__ extern long long int atoll (const char *__nptr) - __THROW __attribute_pure__ __nonnull ((1)) __wur; -#endif - -/* Convert a string to a floating-point number. */ -extern double strtod (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); - -#ifdef __USE_ISOC99 -/* Likewise for `float' and `long double' sizes of floating-point numbers. */ -extern float strtof (const char *__restrict __nptr, - char **__restrict __endptr) __THROW __nonnull ((1)); - -extern long double strtold (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); -#endif - -/* Likewise for '_FloatN' and '_FloatNx'. */ - -#if __HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern _Float16 strtof16 (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); -#endif - -#if __HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern _Float32 strtof32 (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); -#endif - -#if __HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern _Float64 strtof64 (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); -#endif - -#if __HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern _Float128 strtof128 (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); -#endif - -#if __HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern _Float32x strtof32x (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); -#endif - -#if __HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern _Float64x strtof64x (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); -#endif - -#if __HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern _Float128x strtof128x (const char *__restrict __nptr, - char **__restrict __endptr) - __THROW __nonnull ((1)); -#endif - -/* Convert a string to a long integer. */ -extern long int strtol (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW __nonnull ((1)); -/* Convert a string to an unsigned long integer. */ -extern unsigned long int strtoul (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW __nonnull ((1)); - -#ifdef __USE_MISC -/* Convert a string to a quadword integer. */ -__extension__ -extern long long int strtoq (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW __nonnull ((1)); -/* Convert a string to an unsigned quadword integer. */ -__extension__ -extern unsigned long long int strtouq (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW __nonnull ((1)); -#endif /* Use misc. */ - -#ifdef __USE_ISOC99 -/* Convert a string to a quadword integer. */ -__extension__ -extern long long int strtoll (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW __nonnull ((1)); -/* Convert a string to an unsigned quadword integer. */ -__extension__ -extern unsigned long long int strtoull (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW __nonnull ((1)); -#endif /* ISO C99 or use MISC. */ - -/* Versions of the above functions that handle '0b' and '0B' prefixes - in base 0 or 2. */ -#if __GLIBC_USE (C2X_STRTOL) -# ifdef __REDIRECT -extern long int __REDIRECT_NTH (strtol, (const char *__restrict __nptr, - char **__restrict __endptr, - int __base), __isoc23_strtol) - __nonnull ((1)); -extern unsigned long int __REDIRECT_NTH (strtoul, - (const char *__restrict __nptr, - char **__restrict __endptr, - int __base), __isoc23_strtoul) - __nonnull ((1)); -# ifdef __USE_MISC -__extension__ -extern long long int __REDIRECT_NTH (strtoq, (const char *__restrict __nptr, - char **__restrict __endptr, - int __base), __isoc23_strtoll) - __nonnull ((1)); -__extension__ -extern unsigned long long int __REDIRECT_NTH (strtouq, - (const char *__restrict __nptr, - char **__restrict __endptr, - int __base), __isoc23_strtoull) - __nonnull ((1)); -# endif -__extension__ -extern long long int __REDIRECT_NTH (strtoll, (const char *__restrict __nptr, - char **__restrict __endptr, - int __base), __isoc23_strtoll) - __nonnull ((1)); -__extension__ -extern unsigned long long int __REDIRECT_NTH (strtoull, - (const char *__restrict __nptr, - char **__restrict __endptr, - int __base), __isoc23_strtoull) - __nonnull ((1)); -# else -extern long int __isoc23_strtol (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW __nonnull ((1)); -extern unsigned long int __isoc23_strtoul (const char *__restrict __nptr, - char **__restrict __endptr, - int __base) - __THROW __nonnull ((1)); -__extension__ -extern long long int __isoc23_strtoll (const char *__restrict __nptr, - char **__restrict __endptr, int __base) - __THROW __nonnull ((1)); -__extension__ -extern unsigned long long int __isoc23_strtoull (const char *__restrict __nptr, - char **__restrict __endptr, - int __base) - __THROW __nonnull ((1)); -# define strtol __isoc23_strtol -# define strtoul __isoc23_strtoul -# ifdef __USE_MISC -# define strtoq __isoc23_strtoll -# define strtouq __isoc23_strtoull -# endif -# define strtoll __isoc23_strtoll -# define strtoull __isoc23_strtoull -# endif -#endif - -/* Convert a floating-point number to a string. */ -#if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) -extern int strfromd (char *__dest, size_t __size, const char *__format, - double __f) - __THROW __nonnull ((3)); - -extern int strfromf (char *__dest, size_t __size, const char *__format, - float __f) - __THROW __nonnull ((3)); - -extern int strfroml (char *__dest, size_t __size, const char *__format, - long double __f) - __THROW __nonnull ((3)); -#endif - -#if __HAVE_FLOAT16 && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern int strfromf16 (char *__dest, size_t __size, const char * __format, - _Float16 __f) - __THROW __nonnull ((3)); -#endif - -#if __HAVE_FLOAT32 && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern int strfromf32 (char *__dest, size_t __size, const char * __format, - _Float32 __f) - __THROW __nonnull ((3)); -#endif - -#if __HAVE_FLOAT64 && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern int strfromf64 (char *__dest, size_t __size, const char * __format, - _Float64 __f) - __THROW __nonnull ((3)); -#endif - -#if __HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern int strfromf128 (char *__dest, size_t __size, const char * __format, - _Float128 __f) - __THROW __nonnull ((3)); -#endif - -#if __HAVE_FLOAT32X && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern int strfromf32x (char *__dest, size_t __size, const char * __format, - _Float32x __f) - __THROW __nonnull ((3)); -#endif - -#if __HAVE_FLOAT64X && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern int strfromf64x (char *__dest, size_t __size, const char * __format, - _Float64x __f) - __THROW __nonnull ((3)); -#endif - -#if __HAVE_FLOAT128X && __GLIBC_USE (IEC_60559_TYPES_EXT) -extern int strfromf128x (char *__dest, size_t __size, const char * __format, - _Float128x __f) - __THROW __nonnull ((3)); -#endif - - -#ifdef __USE_GNU -/* Parallel versions of the functions above which take the locale to - use as an additional parameter. These are GNU extensions inspired - by the POSIX.1-2008 extended locale API. */ -# include <bits/types/locale_t.h> - -extern long int strtol_l (const char *__restrict __nptr, - char **__restrict __endptr, int __base, - locale_t __loc) __THROW __nonnull ((1, 4)); - -extern unsigned long int strtoul_l (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, locale_t __loc) - __THROW __nonnull ((1, 4)); - -__extension__ -extern long long int strtoll_l (const char *__restrict __nptr, - char **__restrict __endptr, int __base, - locale_t __loc) - __THROW __nonnull ((1, 4)); - -__extension__ -extern unsigned long long int strtoull_l (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, locale_t __loc) - __THROW __nonnull ((1, 4)); - -/* Versions of the above functions that handle '0b' and '0B' prefixes - in base 0 or 2. */ -# if __GLIBC_USE (C2X_STRTOL) -# ifdef __REDIRECT -extern long int __REDIRECT_NTH (strtol_l, (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, locale_t __loc), - __isoc23_strtol_l) - __nonnull ((1, 4)); -extern unsigned long int __REDIRECT_NTH (strtoul_l, - (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, locale_t __loc), - __isoc23_strtoul_l) - __nonnull ((1, 4)); -__extension__ -extern long long int __REDIRECT_NTH (strtoll_l, (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, - locale_t __loc), - __isoc23_strtoll_l) - __nonnull ((1, 4)); -__extension__ -extern unsigned long long int __REDIRECT_NTH (strtoull_l, - (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, locale_t __loc), - __isoc23_strtoull_l) - __nonnull ((1, 4)); -# else -extern long int __isoc23_strtol_l (const char *__restrict __nptr, - char **__restrict __endptr, int __base, - locale_t __loc) __THROW __nonnull ((1, 4)); -extern unsigned long int __isoc23_strtoul_l (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, locale_t __loc) - __THROW __nonnull ((1, 4)); -__extension__ -extern long long int __isoc23_strtoll_l (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, locale_t __loc) - __THROW __nonnull ((1, 4)); -__extension__ -extern unsigned long long int __isoc23_strtoull_l (const char *__restrict __nptr, - char **__restrict __endptr, - int __base, locale_t __loc) - __THROW __nonnull ((1, 4)); -# define strtol_l __isoc23_strtol_l -# define strtoul_l __isoc23_strtoul_l -# define strtoll_l __isoc23_strtoll_l -# define strtoull_l __isoc23_strtoull_l -# endif -# endif - -extern double strtod_l (const char *__restrict __nptr, - char **__restrict __endptr, locale_t __loc) - __THROW __nonnull ((1, 3)); - -extern float strtof_l (const char *__restrict __nptr, - char **__restrict __endptr, locale_t __loc) - __THROW __nonnull ((1, 3)); - -extern long double strtold_l (const char *__restrict __nptr, - char **__restrict __endptr, - locale_t __loc) - __THROW __nonnull ((1, 3)); - -# if __HAVE_FLOAT16 -extern _Float16 strtof16_l (const char *__restrict __nptr, - char **__restrict __endptr, - locale_t __loc) - __THROW __nonnull ((1, 3)); -# endif - -# if __HAVE_FLOAT32 -extern _Float32 strtof32_l (const char *__restrict __nptr, - char **__restrict __endptr, - locale_t __loc) - __THROW __nonnull ((1, 3)); -# endif - -# if __HAVE_FLOAT64 -extern _Float64 strtof64_l (const char *__restrict __nptr, - char **__restrict __endptr, - locale_t __loc) - __THROW __nonnull ((1, 3)); -# endif - -# if __HAVE_FLOAT128 -extern _Float128 strtof128_l (const char *__restrict __nptr, - char **__restrict __endptr, - locale_t __loc) - __THROW __nonnull ((1, 3)); -# endif - -# if __HAVE_FLOAT32X -extern _Float32x strtof32x_l (const char *__restrict __nptr, - char **__restrict __endptr, - locale_t __loc) - __THROW __nonnull ((1, 3)); -# endif - -# if __HAVE_FLOAT64X -extern _Float64x strtof64x_l (const char *__restrict __nptr, - char **__restrict __endptr, - locale_t __loc) - __THROW __nonnull ((1, 3)); -# endif - -# if __HAVE_FLOAT128X -extern _Float128x strtof128x_l (const char *__restrict __nptr, - char **__restrict __endptr, - locale_t __loc) - __THROW __nonnull ((1, 3)); -# endif -#endif /* GNU */ - - -#ifdef __USE_EXTERN_INLINES -__extern_inline int -__NTH (atoi (const char *__nptr)) -{ - return (int) strtol (__nptr, (char **) NULL, 10); -} -__extern_inline long int -__NTH (atol (const char *__nptr)) -{ - return strtol (__nptr, (char **) NULL, 10); -} - -# ifdef __USE_ISOC99 -__extension__ __extern_inline long long int -__NTH (atoll (const char *__nptr)) -{ - return strtoll (__nptr, (char **) NULL, 10); -} -# endif -#endif /* Optimizing and Inlining. */ - - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED -/* Convert N to base 64 using the digits "./0-9A-Za-z", least-significant - digit first. Returns a pointer to static storage overwritten by the - next call. */ -extern char *l64a (long int __n) __THROW __wur; - -/* Read a number from a string S in base 64 as above. */ -extern long int a64l (const char *__s) - __THROW __attribute_pure__ __nonnull ((1)) __wur; - -#endif /* Use misc || extended X/Open. */ - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED -# include <sys/types.h> /* we need int32_t... */ - -/* These are the functions that actually do things. The `random', `srandom', - `initstate' and `setstate' functions are those from BSD Unices. - The `rand' and `srand' functions are required by the ANSI standard. - We provide both interfaces to the same random number generator. */ -/* Return a random long integer between 0 and 2^31-1 inclusive. */ -extern long int random (void) __THROW; - -/* Seed the random number generator with the given number. */ -extern void srandom (unsigned int __seed) __THROW; - -/* Initialize the random number generator to use state buffer STATEBUF, - of length STATELEN, and seed it with SEED. Optimal lengths are 8, 16, - 32, 64, 128 and 256, the bigger the better; values less than 8 will - cause an error and values greater than 256 will be rounded down. */ -extern char *initstate (unsigned int __seed, char *__statebuf, - size_t __statelen) __THROW __nonnull ((2)); - -/* Switch the random number generator to state buffer STATEBUF, - which should have been previously initialized by `initstate'. */ -extern char *setstate (char *__statebuf) __THROW __nonnull ((1)); - - -# ifdef __USE_MISC -/* Reentrant versions of the `random' family of functions. - These functions all use the following data structure to contain - state, rather than global state variables. */ - -struct random_data - { - int32_t *fptr; /* Front pointer. */ - int32_t *rptr; /* Rear pointer. */ - int32_t *state; /* Array of state values. */ - int rand_type; /* Type of random number generator. */ - int rand_deg; /* Degree of random number generator. */ - int rand_sep; /* Distance between front and rear. */ - int32_t *end_ptr; /* Pointer behind state table. */ - }; - -extern int random_r (struct random_data *__restrict __buf, - int32_t *__restrict __result) __THROW __nonnull ((1, 2)); - -extern int srandom_r (unsigned int __seed, struct random_data *__buf) - __THROW __nonnull ((2)); - -extern int initstate_r (unsigned int __seed, char *__restrict __statebuf, - size_t __statelen, - struct random_data *__restrict __buf) - __THROW __nonnull ((2, 4)); - -extern int setstate_r (char *__restrict __statebuf, - struct random_data *__restrict __buf) - __THROW __nonnull ((1, 2)); -# endif /* Use misc. */ -#endif /* Use extended X/Open || misc. */ - - -/* Return a random integer between 0 and RAND_MAX inclusive. */ -extern int rand (void) __THROW; -/* Seed the random number generator with the given number. */ -extern void srand (unsigned int __seed) __THROW; - -#ifdef __USE_POSIX199506 -/* Reentrant interface according to POSIX.1. */ -extern int rand_r (unsigned int *__seed) __THROW; -#endif - - -#if defined __USE_MISC || defined __USE_XOPEN -/* System V style 48-bit random number generator functions. */ - -/* Return non-negative, double-precision floating-point value in [0.0,1.0). */ -extern double drand48 (void) __THROW; -extern double erand48 (unsigned short int __xsubi[3]) __THROW __nonnull ((1)); - -/* Return non-negative, long integer in [0,2^31). */ -extern long int lrand48 (void) __THROW; -extern long int nrand48 (unsigned short int __xsubi[3]) - __THROW __nonnull ((1)); - -/* Return signed, long integers in [-2^31,2^31). */ -extern long int mrand48 (void) __THROW; -extern long int jrand48 (unsigned short int __xsubi[3]) - __THROW __nonnull ((1)); - -/* Seed random number generator. */ -extern void srand48 (long int __seedval) __THROW; -extern unsigned short int *seed48 (unsigned short int __seed16v[3]) - __THROW __nonnull ((1)); -extern void lcong48 (unsigned short int __param[7]) __THROW __nonnull ((1)); - -# ifdef __USE_MISC -/* Data structure for communication with thread safe versions. This - type is to be regarded as opaque. It's only exported because users - have to allocate objects of this type. */ -struct drand48_data - { - unsigned short int __x[3]; /* Current state. */ - unsigned short int __old_x[3]; /* Old state. */ - unsigned short int __c; /* Additive const. in congruential formula. */ - unsigned short int __init; /* Flag for initializing. */ - __extension__ unsigned long long int __a; /* Factor in congruential - formula. */ - }; - -/* Return non-negative, double-precision floating-point value in [0.0,1.0). */ -extern int drand48_r (struct drand48_data *__restrict __buffer, - double *__restrict __result) __THROW __nonnull ((1, 2)); -extern int erand48_r (unsigned short int __xsubi[3], - struct drand48_data *__restrict __buffer, - double *__restrict __result) __THROW __nonnull ((1, 2)); - -/* Return non-negative, long integer in [0,2^31). */ -extern int lrand48_r (struct drand48_data *__restrict __buffer, - long int *__restrict __result) - __THROW __nonnull ((1, 2)); -extern int nrand48_r (unsigned short int __xsubi[3], - struct drand48_data *__restrict __buffer, - long int *__restrict __result) - __THROW __nonnull ((1, 2)); - -/* Return signed, long integers in [-2^31,2^31). */ -extern int mrand48_r (struct drand48_data *__restrict __buffer, - long int *__restrict __result) - __THROW __nonnull ((1, 2)); -extern int jrand48_r (unsigned short int __xsubi[3], - struct drand48_data *__restrict __buffer, - long int *__restrict __result) - __THROW __nonnull ((1, 2)); - -/* Seed random number generator. */ -extern int srand48_r (long int __seedval, struct drand48_data *__buffer) - __THROW __nonnull ((2)); - -extern int seed48_r (unsigned short int __seed16v[3], - struct drand48_data *__buffer) __THROW __nonnull ((1, 2)); - -extern int lcong48_r (unsigned short int __param[7], - struct drand48_data *__buffer) - __THROW __nonnull ((1, 2)); - -/* Return a random integer between zero and 2**32-1 (inclusive). */ -extern __uint32_t arc4random (void) - __THROW __wur; - -/* Fill the buffer with random data. */ -extern void arc4random_buf (void *__buf, size_t __size) - __THROW __nonnull ((1)); - -/* Return a random number between zero (inclusive) and the specified - limit (exclusive). */ -extern __uint32_t arc4random_uniform (__uint32_t __upper_bound) - __THROW __wur; -# endif /* Use misc. */ -#endif /* Use misc or X/Open. */ - -/* Allocate SIZE bytes of memory. */ -extern void *malloc (size_t __size) __THROW __attribute_malloc__ - __attribute_alloc_size__ ((1)) __wur; -/* Allocate NMEMB elements of SIZE bytes each, all initialized to 0. */ -extern void *calloc (size_t __nmemb, size_t __size) - __THROW __attribute_malloc__ __attribute_alloc_size__ ((1, 2)) __wur; - -/* Re-allocate the previously allocated block - in PTR, making the new block SIZE bytes long. */ -/* __attribute_malloc__ is not used, because if realloc returns - the same pointer that was passed to it, aliasing needs to be allowed - between objects pointed by the old and new pointers. */ -extern void *realloc (void *__ptr, size_t __size) - __THROW __attribute_warn_unused_result__ __attribute_alloc_size__ ((2)); - -/* Free a block allocated by `malloc', `realloc' or `calloc'. */ -extern void free (void *__ptr) __THROW; - -#ifdef __USE_MISC -/* Re-allocate the previously allocated block in PTR, making the new - block large enough for NMEMB elements of SIZE bytes each. */ -/* __attribute_malloc__ is not used, because if reallocarray returns - the same pointer that was passed to it, aliasing needs to be allowed - between objects pointed by the old and new pointers. */ -extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) - __THROW __attribute_warn_unused_result__ - __attribute_alloc_size__ ((2, 3)) - __attr_dealloc_free; - -/* Add reallocarray as its own deallocator. */ -extern void *reallocarray (void *__ptr, size_t __nmemb, size_t __size) - __THROW __attr_dealloc (reallocarray, 1); -#endif - -#ifdef __USE_MISC -# include <alloca.h> -#endif /* Use misc. */ - -#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K) \ - || defined __USE_MISC -/* Allocate SIZE bytes on a page boundary. The storage cannot be freed. */ -extern void *valloc (size_t __size) __THROW __attribute_malloc__ - __attribute_alloc_size__ ((1)) __wur; -#endif - -#ifdef __USE_XOPEN2K -/* Allocate memory of SIZE bytes with an alignment of ALIGNMENT. */ -extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size) - __THROW __nonnull ((1)) __wur; -#endif - -#ifdef __USE_ISOC11 -/* ISO C variant of aligned allocation. */ -extern void *aligned_alloc (size_t __alignment, size_t __size) - __THROW __attribute_malloc__ __attribute_alloc_align__ ((1)) - __attribute_alloc_size__ ((2)) __wur; -#endif - -/* Abort execution and generate a core-dump. */ -extern void abort (void) __THROW __attribute__ ((__noreturn__)); - - -/* Register a function to be called when `exit' is called. */ -extern int atexit (void (*__func) (void)) __THROW __nonnull ((1)); - -#if defined __USE_ISOC11 || defined __USE_ISOCXX11 -/* Register a function to be called when `quick_exit' is called. */ -# ifdef __cplusplus -extern "C++" int at_quick_exit (void (*__func) (void)) - __THROW __asm ("at_quick_exit") __nonnull ((1)); -# else -extern int at_quick_exit (void (*__func) (void)) __THROW __nonnull ((1)); -# endif -#endif - -#ifdef __USE_MISC -/* Register a function to be called with the status - given to `exit' and the given argument. */ -extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg) - __THROW __nonnull ((1)); -#endif - -/* Call all functions registered with `atexit' and `on_exit', - in the reverse of the order in which they were registered, - perform stdio cleanup, and terminate program execution with STATUS. */ -extern void exit (int __status) __THROW __attribute__ ((__noreturn__)); - -#if defined __USE_ISOC11 || defined __USE_ISOCXX11 -/* Call all functions registered with `at_quick_exit' in the reverse - of the order in which they were registered and terminate program - execution with STATUS. */ -extern void quick_exit (int __status) __THROW __attribute__ ((__noreturn__)); -#endif - -#ifdef __USE_ISOC99 -/* Terminate the program with STATUS without calling any of the - functions registered with `atexit' or `on_exit'. */ -extern void _Exit (int __status) __THROW __attribute__ ((__noreturn__)); -#endif - - -/* Return the value of envariable NAME, or NULL if it doesn't exist. */ -extern char *getenv (const char *__name) __THROW __nonnull ((1)) __wur; - -#ifdef __USE_GNU -/* This function is similar to the above but returns NULL if the - programs is running with SUID or SGID enabled. */ -extern char *secure_getenv (const char *__name) - __THROW __nonnull ((1)) __wur; -#endif - -#if defined __USE_MISC || defined __USE_XOPEN -/* The SVID says this is in <stdio.h>, but this seems a better place. */ -/* Put STRING, which is of the form "NAME=VALUE", in the environment. - If there is no `=', remove NAME from the environment. */ -extern int putenv (char *__string) __THROW __nonnull ((1)); -#endif - -#ifdef __USE_XOPEN2K -/* Set NAME to VALUE in the environment. - If REPLACE is nonzero, overwrite an existing value. */ -extern int setenv (const char *__name, const char *__value, int __replace) - __THROW __nonnull ((2)); - -/* Remove the variable NAME from the environment. */ -extern int unsetenv (const char *__name) __THROW __nonnull ((1)); -#endif - -#ifdef __USE_MISC -/* The `clearenv' was planned to be added to POSIX.1 but probably - never made it. Nevertheless the POSIX.9 standard (POSIX bindings - for Fortran 77) requires this function. */ -extern int clearenv (void) __THROW; -#endif - - -#if defined __USE_MISC \ - || (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) -/* Generate a unique temporary file name from TEMPLATE. - The last six characters of TEMPLATE must be "XXXXXX"; - they are replaced with a string that makes the file name unique. - Always returns TEMPLATE, it's either a temporary file name or a null - string if it cannot get a unique file name. */ -extern char *mktemp (char *__template) __THROW __nonnull ((1)); -#endif - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -/* Generate a unique temporary file name from TEMPLATE. - The last six characters of TEMPLATE must be "XXXXXX"; - they are replaced with a string that makes the filename unique. - Returns a file descriptor open on the file for reading and writing, - or -1 if it cannot create a uniquely-named file. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -# ifndef __USE_FILE_OFFSET64 -extern int mkstemp (char *__template) __nonnull ((1)) __wur; -# else -# ifdef __REDIRECT -extern int __REDIRECT (mkstemp, (char *__template), mkstemp64) - __nonnull ((1)) __wur; -# else -# define mkstemp mkstemp64 -# endif -# endif -# ifdef __USE_LARGEFILE64 -extern int mkstemp64 (char *__template) __nonnull ((1)) __wur; -# endif -#endif - -#ifdef __USE_MISC -/* Similar to mkstemp, but the template can have a suffix after the - XXXXXX. The length of the suffix is specified in the second - parameter. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -# ifndef __USE_FILE_OFFSET64 -extern int mkstemps (char *__template, int __suffixlen) __nonnull ((1)) __wur; -# else -# ifdef __REDIRECT -extern int __REDIRECT (mkstemps, (char *__template, int __suffixlen), - mkstemps64) __nonnull ((1)) __wur; -# else -# define mkstemps mkstemps64 -# endif -# endif -# ifdef __USE_LARGEFILE64 -extern int mkstemps64 (char *__template, int __suffixlen) - __nonnull ((1)) __wur; -# endif -#endif - -#ifdef __USE_XOPEN2K8 -/* Create a unique temporary directory from TEMPLATE. - The last six characters of TEMPLATE must be "XXXXXX"; - they are replaced with a string that makes the directory name unique. - Returns TEMPLATE, or a null pointer if it cannot get a unique name. - The directory is created mode 700. */ -extern char *mkdtemp (char *__template) __THROW __nonnull ((1)) __wur; -#endif - -#ifdef __USE_GNU -/* Generate a unique temporary file name from TEMPLATE similar to - mkstemp. But allow the caller to pass additional flags which are - used in the open call to create the file.. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -# ifndef __USE_FILE_OFFSET64 -extern int mkostemp (char *__template, int __flags) __nonnull ((1)) __wur; -# else -# ifdef __REDIRECT -extern int __REDIRECT (mkostemp, (char *__template, int __flags), mkostemp64) - __nonnull ((1)) __wur; -# else -# define mkostemp mkostemp64 -# endif -# endif -# ifdef __USE_LARGEFILE64 -extern int mkostemp64 (char *__template, int __flags) __nonnull ((1)) __wur; -# endif - -/* Similar to mkostemp, but the template can have a suffix after the - XXXXXX. The length of the suffix is specified in the second - parameter. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -# ifndef __USE_FILE_OFFSET64 -extern int mkostemps (char *__template, int __suffixlen, int __flags) - __nonnull ((1)) __wur; -# else -# ifdef __REDIRECT -extern int __REDIRECT (mkostemps, (char *__template, int __suffixlen, - int __flags), mkostemps64) - __nonnull ((1)) __wur; -# else -# define mkostemps mkostemps64 -# endif -# endif -# ifdef __USE_LARGEFILE64 -extern int mkostemps64 (char *__template, int __suffixlen, int __flags) - __nonnull ((1)) __wur; -# endif -#endif - - -/* Execute the given line as a shell command. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int system (const char *__command) __wur; - - -#ifdef __USE_GNU -/* Return a malloc'd string containing the canonical absolute name of the - existing named file. */ -extern char *canonicalize_file_name (const char *__name) - __THROW __nonnull ((1)) __attribute_malloc__ - __attr_dealloc_free __wur; -#endif - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED -/* Return the canonical absolute name of file NAME. If RESOLVED is - null, the result is malloc'd; otherwise, if the canonical name is - PATH_MAX chars or more, returns null with `errno' set to - ENAMETOOLONG; if the name fits in fewer than PATH_MAX chars, - returns the name in RESOLVED. */ -extern char *realpath (const char *__restrict __name, - char *__restrict __resolved) __THROW __wur; -#endif - - -/* Shorthand for type of comparison functions. */ -#ifndef __COMPAR_FN_T -# define __COMPAR_FN_T -typedef int (*__compar_fn_t) (const void *, const void *); - -# ifdef __USE_GNU -typedef __compar_fn_t comparison_fn_t; -# endif -#endif -#ifdef __USE_GNU -typedef int (*__compar_d_fn_t) (const void *, const void *, void *); -#endif - -/* Do a binary search for KEY in BASE, which consists of NMEMB elements - of SIZE bytes each, using COMPAR to perform the comparisons. */ -extern void *bsearch (const void *__key, const void *__base, - size_t __nmemb, size_t __size, __compar_fn_t __compar) - __nonnull ((1, 2, 5)) __wur; - -#ifdef __USE_EXTERN_INLINES -# include <bits/stdlib-bsearch.h> -#endif - -/* Sort NMEMB elements of BASE, of SIZE bytes each, - using COMPAR to perform the comparisons. */ -extern void qsort (void *__base, size_t __nmemb, size_t __size, - __compar_fn_t __compar) __nonnull ((1, 4)); -#ifdef __USE_GNU -extern void qsort_r (void *__base, size_t __nmemb, size_t __size, - __compar_d_fn_t __compar, void *__arg) - __nonnull ((1, 4)); -#endif - - -/* Return the absolute value of X. */ -extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; -extern long int labs (long int __x) __THROW __attribute__ ((__const__)) __wur; - -#ifdef __USE_ISOC99 -__extension__ extern long long int llabs (long long int __x) - __THROW __attribute__ ((__const__)) __wur; -#endif - - -/* Return the `div_t', `ldiv_t' or `lldiv_t' representation - of the value of NUMER over DENOM. */ -/* GCC may have built-ins for these someday. */ -extern div_t div (int __numer, int __denom) - __THROW __attribute__ ((__const__)) __wur; -extern ldiv_t ldiv (long int __numer, long int __denom) - __THROW __attribute__ ((__const__)) __wur; - -#ifdef __USE_ISOC99 -__extension__ extern lldiv_t lldiv (long long int __numer, - long long int __denom) - __THROW __attribute__ ((__const__)) __wur; -#endif - - -#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ - || defined __USE_MISC -/* Convert floating point numbers to strings. The returned values are - valid only until another call to the same function. */ - -/* Convert VALUE to a string with NDIGIT digits and return a pointer to - this. Set *DECPT with the position of the decimal character and *SIGN - with the sign of the number. */ -extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt, - int *__restrict __sign) __THROW __nonnull ((3, 4)) __wur; - -/* Convert VALUE to a string rounded to NDIGIT decimal digits. Set *DECPT - with the position of the decimal character and *SIGN with the sign of - the number. */ -extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt, - int *__restrict __sign) __THROW __nonnull ((3, 4)) __wur; - -/* If possible convert VALUE to a string with NDIGIT significant digits. - Otherwise use exponential representation. The resulting string will - be written to BUF. */ -extern char *gcvt (double __value, int __ndigit, char *__buf) - __THROW __nonnull ((3)) __wur; -#endif - -#ifdef __USE_MISC -/* Long double versions of above functions. */ -extern char *qecvt (long double __value, int __ndigit, - int *__restrict __decpt, int *__restrict __sign) - __THROW __nonnull ((3, 4)) __wur; -extern char *qfcvt (long double __value, int __ndigit, - int *__restrict __decpt, int *__restrict __sign) - __THROW __nonnull ((3, 4)) __wur; -extern char *qgcvt (long double __value, int __ndigit, char *__buf) - __THROW __nonnull ((3)) __wur; - - -/* Reentrant version of the functions above which provide their own - buffers. */ -extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt, - int *__restrict __sign, char *__restrict __buf, - size_t __len) __THROW __nonnull ((3, 4, 5)); -extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt, - int *__restrict __sign, char *__restrict __buf, - size_t __len) __THROW __nonnull ((3, 4, 5)); - -extern int qecvt_r (long double __value, int __ndigit, - int *__restrict __decpt, int *__restrict __sign, - char *__restrict __buf, size_t __len) - __THROW __nonnull ((3, 4, 5)); -extern int qfcvt_r (long double __value, int __ndigit, - int *__restrict __decpt, int *__restrict __sign, - char *__restrict __buf, size_t __len) - __THROW __nonnull ((3, 4, 5)); -#endif /* misc */ - - -/* Return the length of the multibyte character - in S, which is no longer than N. */ -extern int mblen (const char *__s, size_t __n) __THROW; -/* Return the length of the given multibyte character, - putting its `wchar_t' representation in *PWC. */ -extern int mbtowc (wchar_t *__restrict __pwc, - const char *__restrict __s, size_t __n) __THROW; -/* Put the multibyte character represented - by WCHAR in S, returning its length. */ -extern int wctomb (char *__s, wchar_t __wchar) __THROW; - - -/* Convert a multibyte string to a wide char string. */ -extern size_t mbstowcs (wchar_t *__restrict __pwcs, - const char *__restrict __s, size_t __n) __THROW - __attr_access ((__read_only__, 2)); -/* Convert a wide char string to multibyte string. */ -extern size_t wcstombs (char *__restrict __s, - const wchar_t *__restrict __pwcs, size_t __n) - __THROW - __fortified_attr_access (__write_only__, 1, 3) - __attr_access ((__read_only__, 2)); - -#ifdef __USE_MISC -/* Determine whether the string value of RESPONSE matches the affirmation - or negative response expression as specified by the LC_MESSAGES category - in the program's current locale. Returns 1 if affirmative, 0 if - negative, and -1 if not matching. */ -extern int rpmatch (const char *__response) __THROW __nonnull ((1)) __wur; -#endif - - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -/* Parse comma separated suboption from *OPTIONP and match against - strings in TOKENS. If found return index and set *VALUEP to - optional value introduced by an equal sign. If the suboption is - not part of TOKENS return in *VALUEP beginning of unknown - suboption. On exit *OPTIONP is set to the beginning of the next - token or at the terminating NUL character. */ -extern int getsubopt (char **__restrict __optionp, - char *const *__restrict __tokens, - char **__restrict __valuep) - __THROW __nonnull ((1, 2, 3)) __wur; -#endif - - -/* X/Open pseudo terminal handling. */ - -#ifdef __USE_XOPEN2KXSI -/* Return a master pseudo-terminal handle. */ -extern int posix_openpt (int __oflag) __wur; -#endif - -#ifdef __USE_XOPEN_EXTENDED -/* The next four functions all take a master pseudo-tty fd and - perform an operation on the associated slave: */ - -/* Chown the slave to the calling user. */ -extern int grantpt (int __fd) __THROW; - -/* Release an internal lock so the slave can be opened. - Call after grantpt(). */ -extern int unlockpt (int __fd) __THROW; - -/* Return the pathname of the pseudo terminal slave associated with - the master FD is open on, or NULL on errors. - The returned storage is good until the next call to this function. */ -extern char *ptsname (int __fd) __THROW __wur; -#endif - -#ifdef __USE_GNU -/* Store at most BUFLEN characters of the pathname of the slave pseudo - terminal associated with the master FD is open on in BUF. - Return 0 on success, otherwise an error number. */ -extern int ptsname_r (int __fd, char *__buf, size_t __buflen) - __THROW __nonnull ((2)) __fortified_attr_access (__write_only__, 2, 3); - -/* Open a master pseudo terminal and return its file descriptor. */ -extern int getpt (void); -#endif - -#ifdef __USE_MISC -/* Put the 1 minute, 5 minute and 15 minute load averages into the first - NELEM elements of LOADAVG. Return the number written (never more than - three, but may be less than NELEM), or -1 if an error occurred. */ -extern int getloadavg (double __loadavg[], int __nelem) - __THROW __nonnull ((1)); -#endif - -#if defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K -/* Return the index into the active-logins file (utmp) for - the controlling terminal. */ -extern int ttyslot (void) __THROW; -#endif - -#include <bits/stdlib-float.h> - -/* Define some macros helping to catch buffer overflows. */ -#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function -# include <bits/stdlib.h> -#endif - -#include <bits/floatn.h> -#if defined __LDBL_COMPAT || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# include <bits/stdlib-ldbl.h> -#endif - -__END_DECLS - -#endif /* stdlib.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@stdlib.h.blob deleted file mode 100644 index e55d6eef3026a7e5f4ce48e5ae16b1e7521b5500..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53214 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h deleted file mode 100644 index c0773d11..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h +++ /dev/null @@ -1,554 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.21 String handling <string.h> - */ - -#ifndef _STRING_H -#define _STRING_H 1 - -#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION -#include <bits/libc-header-start.h> - -__BEGIN_DECLS - -/* Get size_t and NULL from <stddef.h>. */ -#define __need_size_t -#define __need_NULL -#include <stddef.h> - -/* Tell the caller that we provide correct C++ prototypes. */ -#if defined __cplusplus && (__GNUC_PREREQ (4, 4) \ - || __glibc_clang_prereq (3, 5)) -# define __CORRECT_ISO_CPP_STRING_H_PROTO -#endif - - -/* Copy N bytes of SRC to DEST. */ -extern void *memcpy (void *__restrict __dest, const void *__restrict __src, - size_t __n) __THROW __nonnull ((1, 2)); -/* Copy N bytes of SRC to DEST, guaranteeing - correct behavior for overlapping strings. */ -extern void *memmove (void *__dest, const void *__src, size_t __n) - __THROW __nonnull ((1, 2)); - -/* Copy no more than N bytes of SRC to DEST, stopping when C is found. - Return the position in DEST one byte past where C was copied, - or NULL if C was not found in the first N bytes of SRC. */ -#if defined __USE_MISC || defined __USE_XOPEN || __GLIBC_USE (ISOC2X) -extern void *memccpy (void *__restrict __dest, const void *__restrict __src, - int __c, size_t __n) - __THROW __nonnull ((1, 2)) __attr_access ((__write_only__, 1, 4)); -#endif /* Misc || X/Open. */ - - -/* Set N bytes of S to C. */ -extern void *memset (void *__s, int __c, size_t __n) __THROW __nonnull ((1)); - -/* Compare N bytes of S1 and S2. */ -extern int memcmp (const void *__s1, const void *__s2, size_t __n) - __THROW __attribute_pure__ __nonnull ((1, 2)); - -/* Compare N bytes of S1 and S2. Return zero if S1 and S2 are equal. - Return some non-zero value otherwise. - - Essentially __memcmpeq has the exact same semantics as memcmp - except the return value is less constrained. memcmp is always a - correct implementation of __memcmpeq. As well !!memcmp, -memcmp, - or bcmp are correct implementations. - - __memcmpeq is meant to be used by compilers when memcmp return is - only used for its boolean value. - - __memcmpeq is declared only for use by compilers. Programs should - continue to use memcmp. */ -extern int __memcmpeq (const void *__s1, const void *__s2, size_t __n) - __THROW __attribute_pure__ __nonnull ((1, 2)); - -/* Search N bytes of S for C. */ -#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" -{ -extern void *memchr (void *__s, int __c, size_t __n) - __THROW __asm ("memchr") __attribute_pure__ __nonnull ((1)); -extern const void *memchr (const void *__s, int __c, size_t __n) - __THROW __asm ("memchr") __attribute_pure__ __nonnull ((1)); - -# ifdef __OPTIMIZE__ -__extern_always_inline void * -memchr (void *__s, int __c, size_t __n) __THROW -{ - return __builtin_memchr (__s, __c, __n); -} - -__extern_always_inline const void * -memchr (const void *__s, int __c, size_t __n) __THROW -{ - return __builtin_memchr (__s, __c, __n); -} -# endif -} -#else -extern void *memchr (const void *__s, int __c, size_t __n) - __THROW __attribute_pure__ __nonnull ((1)); -#endif - -#ifdef __USE_GNU -/* Search in S for C. This is similar to `memchr' but there is no - length limit. */ -# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" void *rawmemchr (void *__s, int __c) - __THROW __asm ("rawmemchr") __attribute_pure__ __nonnull ((1)); -extern "C++" const void *rawmemchr (const void *__s, int __c) - __THROW __asm ("rawmemchr") __attribute_pure__ __nonnull ((1)); -# else -extern void *rawmemchr (const void *__s, int __c) - __THROW __attribute_pure__ __nonnull ((1)); -# endif - -/* Search N bytes of S for the final occurrence of C. */ -# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" void *memrchr (void *__s, int __c, size_t __n) - __THROW __asm ("memrchr") __attribute_pure__ __nonnull ((1)) - __attr_access ((__read_only__, 1, 3)); -extern "C++" const void *memrchr (const void *__s, int __c, size_t __n) - __THROW __asm ("memrchr") __attribute_pure__ __nonnull ((1)) - __attr_access ((__read_only__, 1, 3)); -# else -extern void *memrchr (const void *__s, int __c, size_t __n) - __THROW __attribute_pure__ __nonnull ((1)) - __attr_access ((__read_only__, 1, 3)); -# endif -#endif - - -/* Copy SRC to DEST. */ -extern char *strcpy (char *__restrict __dest, const char *__restrict __src) - __THROW __nonnull ((1, 2)); -/* Copy no more than N characters of SRC to DEST. */ -extern char *strncpy (char *__restrict __dest, - const char *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)); - -/* Append SRC onto DEST. */ -extern char *strcat (char *__restrict __dest, const char *__restrict __src) - __THROW __nonnull ((1, 2)); -/* Append no more than N characters from SRC onto DEST. */ -extern char *strncat (char *__restrict __dest, const char *__restrict __src, - size_t __n) __THROW __nonnull ((1, 2)); - -/* Compare S1 and S2. */ -extern int strcmp (const char *__s1, const char *__s2) - __THROW __attribute_pure__ __nonnull ((1, 2)); -/* Compare N characters of S1 and S2. */ -extern int strncmp (const char *__s1, const char *__s2, size_t __n) - __THROW __attribute_pure__ __nonnull ((1, 2)); - -/* Compare the collated forms of S1 and S2. */ -extern int strcoll (const char *__s1, const char *__s2) - __THROW __attribute_pure__ __nonnull ((1, 2)); -/* Put a transformation of SRC into no more than N bytes of DEST. */ -extern size_t strxfrm (char *__restrict __dest, - const char *__restrict __src, size_t __n) - __THROW __nonnull ((2)) __attr_access ((__write_only__, 1, 3)); - -#ifdef __USE_XOPEN2K8 -/* POSIX.1-2008 extended locale interface (see locale.h). */ -# include <bits/types/locale_t.h> - -/* Compare the collated forms of S1 and S2, using sorting rules from L. */ -extern int strcoll_l (const char *__s1, const char *__s2, locale_t __l) - __THROW __attribute_pure__ __nonnull ((1, 2, 3)); -/* Put a transformation of SRC into no more than N bytes of DEST, - using sorting rules from L. */ -extern size_t strxfrm_l (char *__dest, const char *__src, size_t __n, - locale_t __l) __THROW __nonnull ((2, 4)) - __attr_access ((__write_only__, 1, 3)); -#endif - -#if (defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 \ - || __GLIBC_USE (LIB_EXT2) || __GLIBC_USE (ISOC2X)) -/* Duplicate S, returning an identical malloc'd string. */ -extern char *strdup (const char *__s) - __THROW __attribute_malloc__ __nonnull ((1)); -#endif - -/* Return a malloc'd copy of at most N bytes of STRING. The - resultant string is terminated even if no null terminator - appears before STRING[N]. */ -#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) || __GLIBC_USE (ISOC2X) -extern char *strndup (const char *__string, size_t __n) - __THROW __attribute_malloc__ __nonnull ((1)); -#endif - -#if defined __USE_GNU && defined __GNUC__ -/* Duplicate S, returning an identical alloca'd string. */ -# define strdupa(s) \ - (__extension__ \ - ({ \ - const char *__old = (s); \ - size_t __len = strlen (__old) + 1; \ - char *__new = (char *) __builtin_alloca (__len); \ - (char *) memcpy (__new, __old, __len); \ - })) - -/* Return an alloca'd copy of at most N bytes of string. */ -# define strndupa(s, n) \ - (__extension__ \ - ({ \ - const char *__old = (s); \ - size_t __len = strnlen (__old, (n)); \ - char *__new = (char *) __builtin_alloca (__len + 1); \ - __new[__len] = '\0'; \ - (char *) memcpy (__new, __old, __len); \ - })) -#endif - -/* Find the first occurrence of C in S. */ -#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" -{ -extern char *strchr (char *__s, int __c) - __THROW __asm ("strchr") __attribute_pure__ __nonnull ((1)); -extern const char *strchr (const char *__s, int __c) - __THROW __asm ("strchr") __attribute_pure__ __nonnull ((1)); - -# ifdef __OPTIMIZE__ -__extern_always_inline char * -strchr (char *__s, int __c) __THROW -{ - return __builtin_strchr (__s, __c); -} - -__extern_always_inline const char * -strchr (const char *__s, int __c) __THROW -{ - return __builtin_strchr (__s, __c); -} -# endif -} -#else -extern char *strchr (const char *__s, int __c) - __THROW __attribute_pure__ __nonnull ((1)); -#endif -/* Find the last occurrence of C in S. */ -#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" -{ -extern char *strrchr (char *__s, int __c) - __THROW __asm ("strrchr") __attribute_pure__ __nonnull ((1)); -extern const char *strrchr (const char *__s, int __c) - __THROW __asm ("strrchr") __attribute_pure__ __nonnull ((1)); - -# ifdef __OPTIMIZE__ -__extern_always_inline char * -strrchr (char *__s, int __c) __THROW -{ - return __builtin_strrchr (__s, __c); -} - -__extern_always_inline const char * -strrchr (const char *__s, int __c) __THROW -{ - return __builtin_strrchr (__s, __c); -} -# endif -} -#else -extern char *strrchr (const char *__s, int __c) - __THROW __attribute_pure__ __nonnull ((1)); -#endif - -#ifdef __USE_MISC -/* This function is similar to `strchr'. But it returns a pointer to - the closing NUL byte in case C is not found in S. */ -# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" char *strchrnul (char *__s, int __c) - __THROW __asm ("strchrnul") __attribute_pure__ __nonnull ((1)); -extern "C++" const char *strchrnul (const char *__s, int __c) - __THROW __asm ("strchrnul") __attribute_pure__ __nonnull ((1)); -# else -extern char *strchrnul (const char *__s, int __c) - __THROW __attribute_pure__ __nonnull ((1)); -# endif -#endif - -/* Return the length of the initial segment of S which - consists entirely of characters not in REJECT. */ -extern size_t strcspn (const char *__s, const char *__reject) - __THROW __attribute_pure__ __nonnull ((1, 2)); -/* Return the length of the initial segment of S which - consists entirely of characters in ACCEPT. */ -extern size_t strspn (const char *__s, const char *__accept) - __THROW __attribute_pure__ __nonnull ((1, 2)); -/* Find the first occurrence in S of any character in ACCEPT. */ -#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" -{ -extern char *strpbrk (char *__s, const char *__accept) - __THROW __asm ("strpbrk") __attribute_pure__ __nonnull ((1, 2)); -extern const char *strpbrk (const char *__s, const char *__accept) - __THROW __asm ("strpbrk") __attribute_pure__ __nonnull ((1, 2)); - -# ifdef __OPTIMIZE__ -__extern_always_inline char * -strpbrk (char *__s, const char *__accept) __THROW -{ - return __builtin_strpbrk (__s, __accept); -} - -__extern_always_inline const char * -strpbrk (const char *__s, const char *__accept) __THROW -{ - return __builtin_strpbrk (__s, __accept); -} -# endif -} -#else -extern char *strpbrk (const char *__s, const char *__accept) - __THROW __attribute_pure__ __nonnull ((1, 2)); -#endif -/* Find the first occurrence of NEEDLE in HAYSTACK. */ -#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" -{ -extern char *strstr (char *__haystack, const char *__needle) - __THROW __asm ("strstr") __attribute_pure__ __nonnull ((1, 2)); -extern const char *strstr (const char *__haystack, const char *__needle) - __THROW __asm ("strstr") __attribute_pure__ __nonnull ((1, 2)); - -# ifdef __OPTIMIZE__ -__extern_always_inline char * -strstr (char *__haystack, const char *__needle) __THROW -{ - return __builtin_strstr (__haystack, __needle); -} - -__extern_always_inline const char * -strstr (const char *__haystack, const char *__needle) __THROW -{ - return __builtin_strstr (__haystack, __needle); -} -# endif -} -#else -extern char *strstr (const char *__haystack, const char *__needle) - __THROW __attribute_pure__ __nonnull ((1, 2)); -#endif - - -/* Divide S into tokens separated by characters in DELIM. */ -extern char *strtok (char *__restrict __s, const char *__restrict __delim) - __THROW __nonnull ((2)); - -/* Divide S into tokens separated by characters in DELIM. Information - passed between calls are stored in SAVE_PTR. */ -extern char *__strtok_r (char *__restrict __s, - const char *__restrict __delim, - char **__restrict __save_ptr) - __THROW __nonnull ((2, 3)); -#ifdef __USE_POSIX -extern char *strtok_r (char *__restrict __s, const char *__restrict __delim, - char **__restrict __save_ptr) - __THROW __nonnull ((2, 3)); -#endif - -#ifdef __USE_MISC -/* Similar to `strstr' but this function ignores the case of both strings. */ -# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" char *strcasestr (char *__haystack, const char *__needle) - __THROW __asm ("strcasestr") __attribute_pure__ __nonnull ((1, 2)); -extern "C++" const char *strcasestr (const char *__haystack, - const char *__needle) - __THROW __asm ("strcasestr") __attribute_pure__ __nonnull ((1, 2)); -# else -extern char *strcasestr (const char *__haystack, const char *__needle) - __THROW __attribute_pure__ __nonnull ((1, 2)); -# endif -#endif - -#ifdef __USE_MISC -/* Find the first occurrence of NEEDLE in HAYSTACK. - NEEDLE is NEEDLELEN bytes long; - HAYSTACK is HAYSTACKLEN bytes long. */ -extern void *memmem (const void *__haystack, size_t __haystacklen, - const void *__needle, size_t __needlelen) - __THROW __attribute_pure__ __nonnull ((1, 3)) - __attr_access ((__read_only__, 1, 2)) - __attr_access ((__read_only__, 3, 4)); - -/* Copy N bytes of SRC to DEST, return pointer to bytes after the - last written byte. */ -extern void *__mempcpy (void *__restrict __dest, - const void *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)); -extern void *mempcpy (void *__restrict __dest, - const void *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)); -#endif - - -/* Return the length of S. */ -extern size_t strlen (const char *__s) - __THROW __attribute_pure__ __nonnull ((1)); - -#ifdef __USE_XOPEN2K8 -/* Find the length of STRING, but scan at most MAXLEN characters. - If no '\0' terminator is found in that many characters, return MAXLEN. */ -extern size_t strnlen (const char *__string, size_t __maxlen) - __THROW __attribute_pure__ __nonnull ((1)); -#endif - - -/* Return a string describing the meaning of the `errno' code in ERRNUM. */ -extern char *strerror (int __errnum) __THROW; -#ifdef __USE_XOPEN2K -/* Reentrant version of `strerror'. - There are 2 flavors of `strerror_r', GNU which returns the string - and may or may not use the supplied temporary buffer and POSIX one - which fills the string into the buffer. - To use the POSIX version, -D_XOPEN_SOURCE=600 or -D_POSIX_C_SOURCE=200112L - without -D_GNU_SOURCE is needed, otherwise the GNU version is - preferred. */ -# if defined __USE_XOPEN2K && !defined __USE_GNU -/* Fill BUF with a string describing the meaning of the `errno' code in - ERRNUM. */ -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (strerror_r, - (int __errnum, char *__buf, size_t __buflen), - __xpg_strerror_r) __nonnull ((2)) - __attr_access ((__write_only__, 2, 3)); -# else -extern int __xpg_strerror_r (int __errnum, char *__buf, size_t __buflen) - __THROW __nonnull ((2)) __attr_access ((__write_only__, 2, 3)); -# define strerror_r __xpg_strerror_r -# endif -# else -/* If a temporary buffer is required, at most BUFLEN bytes of BUF will be - used. */ -extern char *strerror_r (int __errnum, char *__buf, size_t __buflen) - __THROW __nonnull ((2)) __wur __attr_access ((__write_only__, 2, 3)); -# endif - -# ifdef __USE_GNU -/* Return a string describing the meaning of tthe error in ERR. */ -extern const char *strerrordesc_np (int __err) __THROW; -/* Return a string with the error name in ERR. */ -extern const char *strerrorname_np (int __err) __THROW; -# endif -#endif - -#ifdef __USE_XOPEN2K8 -/* Translate error number to string according to the locale L. */ -extern char *strerror_l (int __errnum, locale_t __l) __THROW; -#endif - -#ifdef __USE_MISC -# include <strings.h> - -/* Set N bytes of S to 0. The compiler will not delete a call to this - function, even if S is dead after the call. */ -extern void explicit_bzero (void *__s, size_t __n) __THROW __nonnull ((1)) - __fortified_attr_access (__write_only__, 1, 2); - -/* Return the next DELIM-delimited token from *STRINGP, - terminating it with a '\0', and update *STRINGP to point past it. */ -extern char *strsep (char **__restrict __stringp, - const char *__restrict __delim) - __THROW __nonnull ((1, 2)); -#endif - -#ifdef __USE_XOPEN2K8 -/* Return a string describing the meaning of the signal number in SIG. */ -extern char *strsignal (int __sig) __THROW; - -# ifdef __USE_GNU -/* Return an abbreviation string for the signal number SIG. */ -extern const char *sigabbrev_np (int __sig) __THROW; -/* Return a string describing the meaning of the signal number in SIG, - the result is not translated. */ -extern const char *sigdescr_np (int __sig) __THROW; -# endif - -/* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */ -extern char *__stpcpy (char *__restrict __dest, const char *__restrict __src) - __THROW __nonnull ((1, 2)); -extern char *stpcpy (char *__restrict __dest, const char *__restrict __src) - __THROW __nonnull ((1, 2)); - -/* Copy no more than N characters of SRC to DEST, returning the address of - the last character written into DEST. */ -extern char *__stpncpy (char *__restrict __dest, - const char *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)); -extern char *stpncpy (char *__restrict __dest, - const char *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)); -#endif - -#ifdef __USE_MISC -/* Copy at most N - 1 characters from SRC to DEST. */ -extern size_t strlcpy (char *__restrict __dest, - const char *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)) __attr_access ((__write_only__, 1, 3)); - -/* Append SRC to DEST, possibly with truncation to keep the total size - below N. */ -extern size_t strlcat (char *__restrict __dest, - const char *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)) __attr_access ((__read_write__, 1, 3)); -#endif - -#ifdef __USE_GNU -/* Compare S1 and S2 as strings holding name & indices/version numbers. */ -extern int strverscmp (const char *__s1, const char *__s2) - __THROW __attribute_pure__ __nonnull ((1, 2)); - -/* Sautee STRING briskly. */ -extern char *strfry (char *__string) __THROW __nonnull ((1)); - -/* Frobnicate N bytes of S. */ -extern void *memfrob (void *__s, size_t __n) __THROW __nonnull ((1)) - __attr_access ((__read_write__, 1, 2)); - -# ifndef basename -/* Return the file name within directory of FILENAME. We don't - declare the function if the `basename' macro is available (defined - in <libgen.h>) which makes the XPG version of this function - available. */ -# ifdef __CORRECT_ISO_CPP_STRING_H_PROTO -extern "C++" char *basename (char *__filename) - __THROW __asm ("basename") __nonnull ((1)); -extern "C++" const char *basename (const char *__filename) - __THROW __asm ("basename") __nonnull ((1)); -# else -extern char *basename (const char *__filename) __THROW __nonnull ((1)); -# endif -# endif -#endif - -#if __GNUC_PREREQ (3,4) -# if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function -/* Functions with security checks. */ -# include <bits/string_fortified.h> -# endif -#endif - -__END_DECLS - -#endif /* string.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@string.h.blob deleted file mode 100644 index ba85b9b7fdb26da70bf7cfc61b533051ba9ba731..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29636 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 G<9`5r`1B<J diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h deleted file mode 100644 index 513dbeba..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h +++ /dev/null @@ -1,148 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _STRINGS_H -#define _STRINGS_H 1 - -#include <features.h> -#define __need_size_t -#include <stddef.h> - -/* Tell the caller that we provide correct C++ prototypes. */ -#if defined __cplusplus && __GNUC_PREREQ (4, 4) -# define __CORRECT_ISO_CPP_STRINGS_H_PROTO -#endif - -__BEGIN_DECLS - -#if defined __USE_MISC || !defined __USE_XOPEN2K8 -/* Compare N bytes of S1 and S2 (same as memcmp). */ -extern int bcmp (const void *__s1, const void *__s2, size_t __n) - __THROW __attribute_pure__ __nonnull ((1, 2)); - -/* Copy N bytes of SRC to DEST (like memmove, but args reversed). */ -extern void bcopy (const void *__src, void *__dest, size_t __n) - __THROW __nonnull ((1, 2)); - -/* Set N bytes of S to 0. */ -extern void bzero (void *__s, size_t __n) __THROW __nonnull ((1)); - -/* Find the first occurrence of C in S (same as strchr). */ -# ifdef __CORRECT_ISO_CPP_STRINGS_H_PROTO -extern "C++" -{ -extern char *index (char *__s, int __c) - __THROW __asm ("index") __attribute_pure__ __nonnull ((1)); -extern const char *index (const char *__s, int __c) - __THROW __asm ("index") __attribute_pure__ __nonnull ((1)); - -# if defined __OPTIMIZE__ -__extern_always_inline char * -index (char *__s, int __c) __THROW -{ - return __builtin_index (__s, __c); -} - -__extern_always_inline const char * -index (const char *__s, int __c) __THROW -{ - return __builtin_index (__s, __c); -} -# endif -} -# else -extern char *index (const char *__s, int __c) - __THROW __attribute_pure__ __nonnull ((1)); -# endif - -/* Find the last occurrence of C in S (same as strrchr). */ -# ifdef __CORRECT_ISO_CPP_STRINGS_H_PROTO -extern "C++" -{ -extern char *rindex (char *__s, int __c) - __THROW __asm ("rindex") __attribute_pure__ __nonnull ((1)); -extern const char *rindex (const char *__s, int __c) - __THROW __asm ("rindex") __attribute_pure__ __nonnull ((1)); - -# if defined __OPTIMIZE__ -__extern_always_inline char * -rindex (char *__s, int __c) __THROW -{ - return __builtin_rindex (__s, __c); -} - -__extern_always_inline const char * -rindex (const char *__s, int __c) __THROW -{ - return __builtin_rindex (__s, __c); -} -# endif -} -# else -extern char *rindex (const char *__s, int __c) - __THROW __attribute_pure__ __nonnull ((1)); -# endif -#endif - -#if defined __USE_MISC || !defined __USE_XOPEN2K8 || defined __USE_XOPEN2K8XSI -/* Return the position of the first bit set in I, or 0 if none are set. - The least-significant bit is position 1, the most-significant 32. */ -extern int ffs (int __i) __THROW __attribute_const__; -#endif - -/* The following two functions are non-standard but necessary for non-32 bit - platforms. */ -# ifdef __USE_MISC -extern int ffsl (long int __l) __THROW __attribute_const__; -__extension__ extern int ffsll (long long int __ll) - __THROW __attribute_const__; -# endif - -/* Compare S1 and S2, ignoring case. */ -extern int strcasecmp (const char *__s1, const char *__s2) - __THROW __attribute_pure__ __nonnull ((1, 2)); - -/* Compare no more than N chars of S1 and S2, ignoring case. */ -extern int strncasecmp (const char *__s1, const char *__s2, size_t __n) - __THROW __attribute_pure__ __nonnull ((1, 2)); - -#ifdef __USE_XOPEN2K8 -/* POSIX.1-2008 extended locale interface (see locale.h). */ -# include <bits/types/locale_t.h> - -/* Compare S1 and S2, ignoring case, using collation rules from LOC. */ -extern int strcasecmp_l (const char *__s1, const char *__s2, locale_t __loc) - __THROW __attribute_pure__ __nonnull ((1, 2, 3)); - -/* Compare no more than N chars of S1 and S2, ignoring case, using - collation rules from LOC. */ -extern int strncasecmp_l (const char *__s1, const char *__s2, - size_t __n, locale_t __loc) - __THROW __attribute_pure__ __nonnull ((1, 2, 4)); -#endif - -__END_DECLS - -#if __GNUC_PREREQ (3,4) && __USE_FORTIFY_LEVEL > 0 \ - && defined __fortify_function -/* Functions with security checks. */ -# if defined __USE_MISC || !defined __USE_XOPEN2K8 -# include <bits/strings_fortified.h> -# endif -#endif - -#endif /* strings.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@strings.h.blob deleted file mode 100644 index 82e29e693e67d72100cf6f1155d85ce274f06a2a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16184 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h deleted file mode 100644 index 90c21e27..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h +++ /dev/null @@ -1,723 +0,0 @@ -/* Copyright (C) 1992-2023 Free Software Foundation, Inc. - Copyright The GNU Toolchain Authors. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _SYS_CDEFS_H -#define _SYS_CDEFS_H 1 - -/* We are almost always included from features.h. */ -#ifndef _FEATURES_H -# include <features.h> -#endif - -/* The GNU libc does not support any K&R compilers or the traditional mode - of ISO C compilers anymore. Check for some of the combinations not - supported anymore. */ -#if defined __GNUC__ && !defined __STDC__ && !defined __cplusplus -# error "You need a ISO C or C++ conforming compiler to use the glibc headers" -#endif - -/* Some user header file might have defined this before. */ -#undef __P -#undef __PMT - -/* Compilers that lack __has_attribute may object to - #if defined __has_attribute && __has_attribute (...) - even though they do not need to evaluate the right-hand side of the &&. - Similarly for __has_builtin, etc. */ -#if (defined __has_attribute \ - && (!defined __clang_minor__ \ - || 3 < __clang_major__ + (5 <= __clang_minor__))) -# define __glibc_has_attribute(attr) __has_attribute (attr) -#else -# define __glibc_has_attribute(attr) 0 -#endif -#ifdef __has_builtin -# define __glibc_has_builtin(name) __has_builtin (name) -#else -# define __glibc_has_builtin(name) 0 -#endif -#ifdef __has_extension -# define __glibc_has_extension(ext) __has_extension (ext) -#else -# define __glibc_has_extension(ext) 0 -#endif - -#if defined __GNUC__ || defined __clang__ - -/* All functions, except those with callbacks or those that - synchronize memory, are leaf functions. */ -# if __GNUC_PREREQ (4, 6) && !defined _LIBC -# define __LEAF , __leaf__ -# define __LEAF_ATTR __attribute__ ((__leaf__)) -# else -# define __LEAF -# define __LEAF_ATTR -# endif - -/* GCC can always grok prototypes. For C++ programs we add throw() - to help it optimize the function calls. But this only works with - gcc 2.8.x and egcs. For gcc 3.4 and up we even mark C functions - as non-throwing using a function attribute since programs can use - the -fexceptions options for C code as well. */ -# if !defined __cplusplus \ - && (__GNUC_PREREQ (3, 4) || __glibc_has_attribute (__nothrow__)) -# define __THROW __attribute__ ((__nothrow__ __LEAF)) -# define __THROWNL __attribute__ ((__nothrow__)) -# define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct -# define __NTHNL(fct) __attribute__ ((__nothrow__)) fct -# else -# if defined __cplusplus && (__GNUC_PREREQ (2,8) || __clang_major__ >= 4) -# if __cplusplus >= 201103L -# define __THROW noexcept (true) -# else -# define __THROW throw () -# endif -# define __THROWNL __THROW -# define __NTH(fct) __LEAF_ATTR fct __THROW -# define __NTHNL(fct) fct __THROW -# else -# define __THROW -# define __THROWNL -# define __NTH(fct) fct -# define __NTHNL(fct) fct -# endif -# endif - -# if __GNUC_PREREQ (4, 3) || __glibc_has_attribute (__cold__) -# define __COLD __attribute__ ((__cold__)) -# else -# define __COLD -# endif - -#else /* Not GCC or clang. */ - -# if (defined __cplusplus \ - || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) -# define __inline inline -# else -# define __inline /* No inline functions. */ -# endif - -# define __THROW -# define __THROWNL -# define __NTH(fct) fct -# define __COLD - -#endif /* GCC || clang. */ - -/* These two macros are not used in glibc anymore. They are kept here - only because some other projects expect the macros to be defined. */ -#define __P(args) args -#define __PMT(args) args - -/* For these things, GCC behaves the ANSI way normally, - and the non-ANSI way under -traditional. */ - -#define __CONCAT(x,y) x ## y -#define __STRING(x) #x - -/* This is not a typedef so `const __ptr_t' does the right thing. */ -#define __ptr_t void * - - -/* C++ needs to know that types and declarations are C, not C++. */ -#ifdef __cplusplus -# define __BEGIN_DECLS extern "C" { -# define __END_DECLS } -#else -# define __BEGIN_DECLS -# define __END_DECLS -#endif - - -/* Fortify support. */ -#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) -#define __bos0(ptr) __builtin_object_size (ptr, 0) - -/* Use __builtin_dynamic_object_size at _FORTIFY_SOURCE=3 when available. */ -#if __USE_FORTIFY_LEVEL == 3 && (__glibc_clang_prereq (9, 0) \ - || __GNUC_PREREQ (12, 0)) -# define __glibc_objsize0(__o) __builtin_dynamic_object_size (__o, 0) -# define __glibc_objsize(__o) __builtin_dynamic_object_size (__o, 1) -#else -# define __glibc_objsize0(__o) __bos0 (__o) -# define __glibc_objsize(__o) __bos (__o) -#endif - -#if __USE_FORTIFY_LEVEL > 0 -/* Compile time conditions to choose between the regular, _chk and _chk_warn - variants. These conditions should get evaluated to constant and optimized - away. */ - -#define __glibc_safe_len_cond(__l, __s, __osz) ((__l) <= (__osz) / (__s)) -#define __glibc_unsigned_or_positive(__l) \ - ((__typeof (__l)) 0 < (__typeof (__l)) -1 \ - || (__builtin_constant_p (__l) && (__l) > 0)) - -/* Length is known to be safe at compile time if the __L * __S <= __OBJSZ - condition can be folded to a constant and if it is true, or unknown (-1) */ -#define __glibc_safe_or_unknown_len(__l, __s, __osz) \ - ((__builtin_constant_p (__osz) && (__osz) == (__SIZE_TYPE__) -1) \ - || (__glibc_unsigned_or_positive (__l) \ - && __builtin_constant_p (__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), \ - (__s), (__osz))) \ - && __glibc_safe_len_cond ((__SIZE_TYPE__) (__l), (__s), (__osz)))) - -/* Conversely, we know at compile time that the length is unsafe if the - __L * __S <= __OBJSZ condition can be folded to a constant and if it is - false. */ -#define __glibc_unsafe_len(__l, __s, __osz) \ - (__glibc_unsigned_or_positive (__l) \ - && __builtin_constant_p (__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), \ - __s, __osz)) \ - && !__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), __s, __osz)) - -/* Fortify function f. __f_alias, __f_chk and __f_chk_warn must be - declared. */ - -#define __glibc_fortify(f, __l, __s, __osz, ...) \ - (__glibc_safe_or_unknown_len (__l, __s, __osz) \ - ? __ ## f ## _alias (__VA_ARGS__) \ - : (__glibc_unsafe_len (__l, __s, __osz) \ - ? __ ## f ## _chk_warn (__VA_ARGS__, __osz) \ - : __ ## f ## _chk (__VA_ARGS__, __osz))) - -/* Fortify function f, where object size argument passed to f is the number of - elements and not total size. */ - -#define __glibc_fortify_n(f, __l, __s, __osz, ...) \ - (__glibc_safe_or_unknown_len (__l, __s, __osz) \ - ? __ ## f ## _alias (__VA_ARGS__) \ - : (__glibc_unsafe_len (__l, __s, __osz) \ - ? __ ## f ## _chk_warn (__VA_ARGS__, (__osz) / (__s)) \ - : __ ## f ## _chk (__VA_ARGS__, (__osz) / (__s)))) -#endif - -#if __GNUC_PREREQ (4,3) -# define __warnattr(msg) __attribute__((__warning__ (msg))) -# define __errordecl(name, msg) \ - extern void name (void) __attribute__((__error__ (msg))) -#else -# define __warnattr(msg) -# define __errordecl(name, msg) extern void name (void) -#endif - -/* Support for flexible arrays. - Headers that should use flexible arrays only if they're "real" - (e.g. only if they won't affect sizeof()) should test - #if __glibc_c99_flexarr_available. */ -#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L && !defined __HP_cc -# define __flexarr [] -# define __glibc_c99_flexarr_available 1 -#elif __GNUC_PREREQ (2,97) || defined __clang__ -/* GCC 2.97 and clang support C99 flexible array members as an extension, - even when in C89 mode or compiling C++ (any version). */ -# define __flexarr [] -# define __glibc_c99_flexarr_available 1 -#elif defined __GNUC__ -/* Pre-2.97 GCC did not support C99 flexible arrays but did have - an equivalent extension with slightly different notation. */ -# define __flexarr [0] -# define __glibc_c99_flexarr_available 1 -#else -/* Some other non-C99 compiler. Approximate with [1]. */ -# define __flexarr [1] -# define __glibc_c99_flexarr_available 0 -#endif - - -/* __asm__ ("xyz") is used throughout the headers to rename functions - at the assembly language level. This is wrapped by the __REDIRECT - macro, in order to support compilers that can do this some other - way. When compilers don't support asm-names at all, we have to do - preprocessor tricks instead (which don't have exactly the right - semantics, but it's the best we can do). - - Example: - int __REDIRECT(setpgrp, (__pid_t pid, __pid_t pgrp), setpgid); */ - -#if (defined __GNUC__ && __GNUC__ >= 2) || (__clang_major__ >= 4) - -# define __REDIRECT(name, proto, alias) name proto __asm__ (__ASMNAME (#alias)) -# ifdef __cplusplus -# define __REDIRECT_NTH(name, proto, alias) \ - name proto __THROW __asm__ (__ASMNAME (#alias)) -# define __REDIRECT_NTHNL(name, proto, alias) \ - name proto __THROWNL __asm__ (__ASMNAME (#alias)) -# else -# define __REDIRECT_NTH(name, proto, alias) \ - name proto __asm__ (__ASMNAME (#alias)) __THROW -# define __REDIRECT_NTHNL(name, proto, alias) \ - name proto __asm__ (__ASMNAME (#alias)) __THROWNL -# endif -# define __ASMNAME(cname) __ASMNAME2 (__USER_LABEL_PREFIX__, cname) -# define __ASMNAME2(prefix, cname) __STRING (prefix) cname - -#ifndef __REDIRECT_FORTIFY -#define __REDIRECT_FORTIFY __REDIRECT -#endif - -#ifndef __REDIRECT_FORTIFY_NTH -#define __REDIRECT_FORTIFY_NTH __REDIRECT_NTH -#endif - -/* -#elif __SOME_OTHER_COMPILER__ - -# define __REDIRECT(name, proto, alias) name proto; \ - _Pragma("let " #name " = " #alias) -*/ -#endif - -/* GCC and clang have various useful declarations that can be made with - the '__attribute__' syntax. All of the ways we use this do fine if - they are omitted for compilers that don't understand it. */ -#if !(defined __GNUC__ || defined __clang__) -# define __attribute__(xyz) /* Ignore */ -#endif - -/* At some point during the gcc 2.96 development the `malloc' attribute - for functions was introduced. We don't want to use it unconditionally - (although this would be possible) since it generates warnings. */ -#if __GNUC_PREREQ (2,96) || __glibc_has_attribute (__malloc__) -# define __attribute_malloc__ __attribute__ ((__malloc__)) -#else -# define __attribute_malloc__ /* Ignore */ -#endif - -/* Tell the compiler which arguments to an allocation function - indicate the size of the allocation. */ -#if __GNUC_PREREQ (4, 3) -# define __attribute_alloc_size__(params) \ - __attribute__ ((__alloc_size__ params)) -#else -# define __attribute_alloc_size__(params) /* Ignore. */ -#endif - -/* Tell the compiler which argument to an allocation function - indicates the alignment of the allocation. */ -#if __GNUC_PREREQ (4, 9) || __glibc_has_attribute (__alloc_align__) -# define __attribute_alloc_align__(param) \ - __attribute__ ((__alloc_align__ param)) -#else -# define __attribute_alloc_align__(param) /* Ignore. */ -#endif - -/* At some point during the gcc 2.96 development the `pure' attribute - for functions was introduced. We don't want to use it unconditionally - (although this would be possible) since it generates warnings. */ -#if __GNUC_PREREQ (2,96) || __glibc_has_attribute (__pure__) -# define __attribute_pure__ __attribute__ ((__pure__)) -#else -# define __attribute_pure__ /* Ignore */ -#endif - -/* This declaration tells the compiler that the value is constant. */ -#if __GNUC_PREREQ (2,5) || __glibc_has_attribute (__const__) -# define __attribute_const__ __attribute__ ((__const__)) -#else -# define __attribute_const__ /* Ignore */ -#endif - -#if __GNUC_PREREQ (2,7) || __glibc_has_attribute (__unused__) -# define __attribute_maybe_unused__ __attribute__ ((__unused__)) -#else -# define __attribute_maybe_unused__ /* Ignore */ -#endif - -/* At some point during the gcc 3.1 development the `used' attribute - for functions was introduced. We don't want to use it unconditionally - (although this would be possible) since it generates warnings. */ -#if __GNUC_PREREQ (3,1) || __glibc_has_attribute (__used__) -# define __attribute_used__ __attribute__ ((__used__)) -# define __attribute_noinline__ __attribute__ ((__noinline__)) -#else -# define __attribute_used__ __attribute__ ((__unused__)) -# define __attribute_noinline__ /* Ignore */ -#endif - -/* Since version 3.2, gcc allows marking deprecated functions. */ -#if __GNUC_PREREQ (3,2) || __glibc_has_attribute (__deprecated__) -# define __attribute_deprecated__ __attribute__ ((__deprecated__)) -#else -# define __attribute_deprecated__ /* Ignore */ -#endif - -/* Since version 4.5, gcc also allows one to specify the message printed - when a deprecated function is used. clang claims to be gcc 4.2, but - may also support this feature. */ -#if __GNUC_PREREQ (4,5) \ - || __glibc_has_extension (__attribute_deprecated_with_message__) -# define __attribute_deprecated_msg__(msg) \ - __attribute__ ((__deprecated__ (msg))) -#else -# define __attribute_deprecated_msg__(msg) __attribute_deprecated__ -#endif - -/* At some point during the gcc 2.8 development the `format_arg' attribute - for functions was introduced. We don't want to use it unconditionally - (although this would be possible) since it generates warnings. - If several `format_arg' attributes are given for the same function, in - gcc-3.0 and older, all but the last one are ignored. In newer gccs, - all designated arguments are considered. */ -#if __GNUC_PREREQ (2,8) || __glibc_has_attribute (__format_arg__) -# define __attribute_format_arg__(x) __attribute__ ((__format_arg__ (x))) -#else -# define __attribute_format_arg__(x) /* Ignore */ -#endif - -/* At some point during the gcc 2.97 development the `strfmon' format - attribute for functions was introduced. We don't want to use it - unconditionally (although this would be possible) since it - generates warnings. */ -#if __GNUC_PREREQ (2,97) || __glibc_has_attribute (__format__) -# define __attribute_format_strfmon__(a,b) \ - __attribute__ ((__format__ (__strfmon__, a, b))) -#else -# define __attribute_format_strfmon__(a,b) /* Ignore */ -#endif - -/* The nonnull function attribute marks pointer parameters that - must not be NULL. This has the name __nonnull in glibc, - and __attribute_nonnull__ in files shared with Gnulib to avoid - collision with a different __nonnull in DragonFlyBSD 5.9. */ -#ifndef __attribute_nonnull__ -# if __GNUC_PREREQ (3,3) || __glibc_has_attribute (__nonnull__) -# define __attribute_nonnull__(params) __attribute__ ((__nonnull__ params)) -# else -# define __attribute_nonnull__(params) -# endif -#endif -#ifndef __nonnull -# define __nonnull(params) __attribute_nonnull__ (params) -#endif - -/* The returns_nonnull function attribute marks the return type of the function - as always being non-null. */ -#ifndef __returns_nonnull -# if __GNUC_PREREQ (4, 9) || __glibc_has_attribute (__returns_nonnull__) -# define __returns_nonnull __attribute__ ((__returns_nonnull__)) -# else -# define __returns_nonnull -# endif -#endif - -/* If fortification mode, we warn about unused results of certain - function calls which can lead to problems. */ -#if __GNUC_PREREQ (3,4) || __glibc_has_attribute (__warn_unused_result__) -# define __attribute_warn_unused_result__ \ - __attribute__ ((__warn_unused_result__)) -# if defined __USE_FORTIFY_LEVEL && __USE_FORTIFY_LEVEL > 0 -# define __wur __attribute_warn_unused_result__ -# endif -#else -# define __attribute_warn_unused_result__ /* empty */ -#endif -#ifndef __wur -# define __wur /* Ignore */ -#endif - -/* Forces a function to be always inlined. */ -#if __GNUC_PREREQ (3,2) || __glibc_has_attribute (__always_inline__) -/* The Linux kernel defines __always_inline in stddef.h (283d7573), and - it conflicts with this definition. Therefore undefine it first to - allow either header to be included first. */ -# undef __always_inline -# define __always_inline __inline __attribute__ ((__always_inline__)) -#else -# undef __always_inline -# define __always_inline __inline -#endif - -/* Associate error messages with the source location of the call site rather - than with the source location inside the function. */ -#if __GNUC_PREREQ (4,3) || __glibc_has_attribute (__artificial__) -# define __attribute_artificial__ __attribute__ ((__artificial__)) -#else -# define __attribute_artificial__ /* Ignore */ -#endif - -/* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 - inline semantics, unless -fgnu89-inline is used. Using __GNUC_STDC_INLINE__ - or __GNUC_GNU_INLINE is not a good enough check for gcc because gcc versions - older than 4.3 may define these macros and still not guarantee GNU inlining - semantics. - - clang++ identifies itself as gcc-4.2, but has support for GNU inlining - semantics, that can be checked for by using the __GNUC_STDC_INLINE_ and - __GNUC_GNU_INLINE__ macro definitions. */ -#if (!defined __cplusplus || __GNUC_PREREQ (4,3) \ - || (defined __clang__ && (defined __GNUC_STDC_INLINE__ \ - || defined __GNUC_GNU_INLINE__))) -# if defined __GNUC_STDC_INLINE__ || defined __cplusplus -# define __extern_inline extern __inline __attribute__ ((__gnu_inline__)) -# define __extern_always_inline \ - extern __always_inline __attribute__ ((__gnu_inline__)) -# else -# define __extern_inline extern __inline -# define __extern_always_inline extern __always_inline -# endif -#endif - -#ifdef __extern_always_inline -# define __fortify_function __extern_always_inline __attribute_artificial__ -#endif - -/* GCC 4.3 and above allow passing all anonymous arguments of an - __extern_always_inline function to some other vararg function. */ -#if __GNUC_PREREQ (4,3) -# define __va_arg_pack() __builtin_va_arg_pack () -# define __va_arg_pack_len() __builtin_va_arg_pack_len () -#endif - -/* It is possible to compile containing GCC extensions even if GCC is - run in pedantic mode if the uses are carefully marked using the - `__extension__' keyword. But this is not generally available before - version 2.8. */ -#if !(__GNUC_PREREQ (2,8) || defined __clang__) -# define __extension__ /* Ignore */ -#endif - -/* __restrict is known in EGCS 1.2 and above, and in clang. - It works also in C++ mode (outside of arrays), but only when spelled - as '__restrict', not 'restrict'. */ -#if !(__GNUC_PREREQ (2,92) || __clang_major__ >= 3) -# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L -# define __restrict restrict -# else -# define __restrict /* Ignore */ -# endif -#endif - -/* ISO C99 also allows to declare arrays as non-overlapping. The syntax is - array_name[restrict] - GCC 3.1 and clang support this. - This syntax is not usable in C++ mode. */ -#if (__GNUC_PREREQ (3,1) || __clang_major__ >= 3) && !defined __cplusplus -# define __restrict_arr __restrict -#else -# ifdef __GNUC__ -# define __restrict_arr /* Not supported in old GCC. */ -# else -# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L -# define __restrict_arr restrict -# else -/* Some other non-C99 compiler. */ -# define __restrict_arr /* Not supported. */ -# endif -# endif -#endif - -#if (__GNUC__ >= 3) || __glibc_has_builtin (__builtin_expect) -# define __glibc_unlikely(cond) __builtin_expect ((cond), 0) -# define __glibc_likely(cond) __builtin_expect ((cond), 1) -#else -# define __glibc_unlikely(cond) (cond) -# define __glibc_likely(cond) (cond) -#endif - -#if (!defined _Noreturn \ - && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \ - && !(__GNUC_PREREQ (4,7) \ - || (3 < __clang_major__ + (5 <= __clang_minor__)))) -# if __GNUC_PREREQ (2,8) -# define _Noreturn __attribute__ ((__noreturn__)) -# else -# define _Noreturn -# endif -#endif - -#if __GNUC_PREREQ (8, 0) -/* Describes a char array whose address can safely be passed as the first - argument to strncpy and strncat, as the char array is not necessarily - a NUL-terminated string. */ -# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -#else -# define __attribute_nonstring__ -#endif - -/* Undefine (also defined in libc-symbols.h). */ -#undef __attribute_copy__ -#if __GNUC_PREREQ (9, 0) -/* Copies attributes from the declaration or type referenced by - the argument. */ -# define __attribute_copy__(arg) __attribute__ ((__copy__ (arg))) -#else -# define __attribute_copy__(arg) -#endif - -#if (!defined _Static_assert && !defined __cplusplus \ - && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \ - && (!(__GNUC_PREREQ (4, 6) || __clang_major__ >= 4) \ - || defined __STRICT_ANSI__)) -# define _Static_assert(expr, diagnostic) \ - extern int (*__Static_assert_function (void)) \ - [!!sizeof (struct { int __error_if_negative: (expr) ? 2 : -1; })] -#endif - -/* Gnulib avoids including these, as they don't work on non-glibc or - older glibc platforms. */ -#ifndef __GNULIB_CDEFS -# include <bits/wordsize.h> -# include <bits/long-double.h> -#endif - -#if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# ifdef __REDIRECT - -/* Alias name defined automatically. */ -# define __LDBL_REDIR(name, proto) ... unused__ldbl_redir -# define __LDBL_REDIR_DECL(name) \ - extern __typeof (name) name __asm (__ASMNAME ("__" #name "ieee128")); -# define __REDIRECT_LDBL(name, proto, alias) \ - name proto __asm (__ASMNAME ("__" #alias "ieee128")) - -/* Alias name defined automatically, with leading underscores. */ -# define __LDBL_REDIR2_DECL(name) \ - extern __typeof (__##name) __##name \ - __asm (__ASMNAME ("__" #name "ieee128")); - -/* Alias name defined manually. */ -# define __LDBL_REDIR1(name, proto, alias) ... unused__ldbl_redir1 -# define __LDBL_REDIR1_DECL(name, alias) \ - extern __typeof (name) name __asm (__ASMNAME (#alias)); - -# define __LDBL_REDIR1_NTH(name, proto, alias) \ - __REDIRECT_NTH (name, proto, alias) -# define __REDIRECT_NTH_LDBL(name, proto, alias) \ - __LDBL_REDIR1_NTH (name, proto, __##alias##ieee128) - -/* Unused. */ -# define __LDBL_REDIR_NTH(name, proto) ... unused__ldbl_redir_nth - -# else -_Static_assert (0, "IEEE 128-bits long double requires redirection on this platform"); -# endif -#elif defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH -# define __LDBL_COMPAT 1 -# ifdef __REDIRECT -# define __LDBL_REDIR1(name, proto, alias) __REDIRECT (name, proto, alias) -# define __LDBL_REDIR(name, proto) \ - __LDBL_REDIR1 (name, proto, __nldbl_##name) -# define __LDBL_REDIR1_NTH(name, proto, alias) __REDIRECT_NTH (name, proto, alias) -# define __LDBL_REDIR_NTH(name, proto) \ - __LDBL_REDIR1_NTH (name, proto, __nldbl_##name) -# define __LDBL_REDIR2_DECL(name) \ - extern __typeof (__##name) __##name __asm (__ASMNAME ("__nldbl___" #name)); -# define __LDBL_REDIR1_DECL(name, alias) \ - extern __typeof (name) name __asm (__ASMNAME (#alias)); -# define __LDBL_REDIR_DECL(name) \ - extern __typeof (name) name __asm (__ASMNAME ("__nldbl_" #name)); -# define __REDIRECT_LDBL(name, proto, alias) \ - __LDBL_REDIR1 (name, proto, __nldbl_##alias) -# define __REDIRECT_NTH_LDBL(name, proto, alias) \ - __LDBL_REDIR1_NTH (name, proto, __nldbl_##alias) -# endif -#endif -#if (!defined __LDBL_COMPAT && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0) \ - || !defined __REDIRECT -# define __LDBL_REDIR1(name, proto, alias) name proto -# define __LDBL_REDIR(name, proto) name proto -# define __LDBL_REDIR1_NTH(name, proto, alias) name proto __THROW -# define __LDBL_REDIR_NTH(name, proto) name proto __THROW -# define __LDBL_REDIR2_DECL(name) -# define __LDBL_REDIR_DECL(name) -# ifdef __REDIRECT -# define __REDIRECT_LDBL(name, proto, alias) __REDIRECT (name, proto, alias) -# define __REDIRECT_NTH_LDBL(name, proto, alias) \ - __REDIRECT_NTH (name, proto, alias) -# endif -#endif - -/* __glibc_macro_warning (MESSAGE) issues warning MESSAGE. This is - intended for use in preprocessor macros. - - Note: MESSAGE must be a _single_ string; concatenation of string - literals is not supported. */ -#if __GNUC_PREREQ (4,8) || __glibc_clang_prereq (3,5) -# define __glibc_macro_warning1(message) _Pragma (#message) -# define __glibc_macro_warning(message) \ - __glibc_macro_warning1 (GCC warning message) -#else -# define __glibc_macro_warning(msg) -#endif - -/* Generic selection (ISO C11) is a C-only feature, available in GCC - since version 4.9. Previous versions do not provide generic - selection, even though they might set __STDC_VERSION__ to 201112L, - when in -std=c11 mode. Thus, we must check for !defined __GNUC__ - when testing __STDC_VERSION__ for generic selection support. - On the other hand, Clang also defines __GNUC__, so a clang-specific - check is required to enable the use of generic selection. */ -#if !defined __cplusplus \ - && (__GNUC_PREREQ (4, 9) \ - || __glibc_has_extension (c_generic_selections) \ - || (!defined __GNUC__ && defined __STDC_VERSION__ \ - && __STDC_VERSION__ >= 201112L)) -# define __HAVE_GENERIC_SELECTION 1 -#else -# define __HAVE_GENERIC_SELECTION 0 -#endif - -#if __GNUC_PREREQ (10, 0) -/* Designates a 1-based positional argument ref-index of pointer type - that can be used to access size-index elements of the pointed-to - array according to access mode, or at least one element when - size-index is not provided: - access (access-mode, <ref-index> [, <size-index>]) */ -# define __attr_access(x) __attribute__ ((__access__ x)) -/* For _FORTIFY_SOURCE == 3 we use __builtin_dynamic_object_size, which may - use the access attribute to get object sizes from function definition - arguments, so we can't use them on functions we fortify. Drop the object - size hints for such functions. */ -# if __USE_FORTIFY_LEVEL == 3 -# define __fortified_attr_access(a, o, s) __attribute__ ((__access__ (a, o))) -# else -# define __fortified_attr_access(a, o, s) __attr_access ((a, o, s)) -# endif -# if __GNUC_PREREQ (11, 0) -# define __attr_access_none(argno) __attribute__ ((__access__ (__none__, argno))) -# else -# define __attr_access_none(argno) -# endif -#else -# define __fortified_attr_access(a, o, s) -# define __attr_access(x) -# define __attr_access_none(argno) -#endif - -#if __GNUC_PREREQ (11, 0) -/* Designates dealloc as a function to call to deallocate objects - allocated by the declared function. */ -# define __attr_dealloc(dealloc, argno) \ - __attribute__ ((__malloc__ (dealloc, argno))) -# define __attr_dealloc_free __attr_dealloc (__builtin_free, 1) -#else -# define __attr_dealloc(dealloc, argno) -# define __attr_dealloc_free -#endif - -/* Specify that a function such as setjmp or vfork may return - twice. */ -#if __GNUC_PREREQ (4, 1) -# define __attribute_returns_twice__ __attribute__ ((__returns_twice__)) -#else -# define __attribute_returns_twice__ /* Ignore. */ -#endif - -#endif /* sys/cdefs.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@cdefs.h.blob deleted file mode 100644 index 2f4196ac9c0bf83559bb1353e9978056671d06e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21652 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 a?9Gx|v?uAM4}|>Vc=K@qbp{(^w*UVz5k>_7 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h deleted file mode 100644 index a715c089..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h +++ /dev/null @@ -1,155 +0,0 @@ -/* `fd_set' type and related macros, and `select'/`pselect' declarations. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* POSIX 1003.1g: 6.2 Select from File Descriptor Sets <sys/select.h> */ - -#ifndef _SYS_SELECT_H -#define _SYS_SELECT_H 1 - -#include <features.h> - -/* Get definition of needed basic types. */ -#include <bits/types.h> - -/* Get __FD_* definitions. */ -#include <bits/select.h> - -/* Get sigset_t. */ -#include <bits/types/sigset_t.h> - -/* Get definition of timer specification structures. */ -#include <bits/types/time_t.h> -#include <bits/types/struct_timeval.h> -#ifdef __USE_XOPEN2K -# include <bits/types/struct_timespec.h> -#endif - -#ifndef __suseconds_t_defined -typedef __suseconds_t suseconds_t; -# define __suseconds_t_defined -#endif - - -/* The fd_set member is required to be an array of longs. */ -typedef long int __fd_mask; - -/* Some versions of <linux/posix_types.h> define this macros. */ -#undef __NFDBITS -/* It's easier to assume 8-bit bytes than to get CHAR_BIT. */ -#define __NFDBITS (8 * (int) sizeof (__fd_mask)) -#define __FD_ELT(d) ((d) / __NFDBITS) -#define __FD_MASK(d) ((__fd_mask) (1UL << ((d) % __NFDBITS))) - -/* fd_set for select and pselect. */ -typedef struct - { - /* XPG4.2 requires this member name. Otherwise avoid the name - from the global namespace. */ -#ifdef __USE_XOPEN - __fd_mask fds_bits[__FD_SETSIZE / __NFDBITS]; -# define __FDS_BITS(set) ((set)->fds_bits) -#else - __fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS]; -# define __FDS_BITS(set) ((set)->__fds_bits) -#endif - } fd_set; - -/* Maximum number of file descriptors in `fd_set'. */ -#define FD_SETSIZE __FD_SETSIZE - -#ifdef __USE_MISC -/* Sometimes the fd_set member is assumed to have this type. */ -typedef __fd_mask fd_mask; - -/* Number of bits per word of `fd_set' (some code assumes this is 32). */ -# define NFDBITS __NFDBITS -#endif - - -/* Access macros for `fd_set'. */ -#define FD_SET(fd, fdsetp) __FD_SET (fd, fdsetp) -#define FD_CLR(fd, fdsetp) __FD_CLR (fd, fdsetp) -#define FD_ISSET(fd, fdsetp) __FD_ISSET (fd, fdsetp) -#define FD_ZERO(fdsetp) __FD_ZERO (fdsetp) - - -__BEGIN_DECLS - -/* Check the first NFDS descriptors each in READFDS (if not NULL) for read - readiness, in WRITEFDS (if not NULL) for write readiness, and in EXCEPTFDS - (if not NULL) for exceptional conditions. If TIMEOUT is not NULL, time out - after waiting the interval specified therein. Returns the number of ready - descriptors, or -1 for errors. - - This function is a cancellation point and therefore not marked with - __THROW. */ -#ifndef __USE_TIME_BITS64 -extern int select (int __nfds, fd_set *__restrict __readfds, - fd_set *__restrict __writefds, - fd_set *__restrict __exceptfds, - struct timeval *__restrict __timeout); -#else -# ifdef __REDIRECT -extern int __REDIRECT (select, - (int __nfds, fd_set *__restrict __readfds, - fd_set *__restrict __writefds, - fd_set *__restrict __exceptfds, - struct timeval *__restrict __timeout), - __select64); -# else -# define select __select64 -# endif -#endif - -#ifdef __USE_XOPEN2K -/* Same as above only that the TIMEOUT value is given with higher - resolution and a sigmask which is been set temporarily. This version - should be used. - - This function is a cancellation point and therefore not marked with - __THROW. */ -# ifndef __USE_TIME_BITS64 -extern int pselect (int __nfds, fd_set *__restrict __readfds, - fd_set *__restrict __writefds, - fd_set *__restrict __exceptfds, - const struct timespec *__restrict __timeout, - const __sigset_t *__restrict __sigmask); -# else -# ifdef __REDIRECT -extern int __REDIRECT (pselect, - (int __nfds, fd_set *__restrict __readfds, - fd_set *__restrict __writefds, - fd_set *__restrict __exceptfds, - const struct timespec *__restrict __timeout, - const __sigset_t *__restrict __sigmask), - __pselect64); -# else -# define pselect __pselect64 -# endif -# endif -#endif - - -/* Define some inlines helping to catch common problems. */ -#if __USE_FORTIFY_LEVEL > 0 && defined __GNUC__ -# include <bits/select2.h> -#endif - -__END_DECLS - -#endif /* sys/select.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@select.h.blob deleted file mode 100644 index 2198942fd0bfbecede4cb8af0aa80d9a315e80c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15822 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h deleted file mode 100644 index dbf41711..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h +++ /dev/null @@ -1,232 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * POSIX Standard: 2.6 Primitive System Data Types <sys/types.h> - */ - -#ifndef _SYS_TYPES_H -#define _SYS_TYPES_H 1 - -#include <features.h> - -__BEGIN_DECLS - -#include <bits/types.h> - -#ifdef __USE_MISC -# ifndef __u_char_defined -typedef __u_char u_char; -typedef __u_short u_short; -typedef __u_int u_int; -typedef __u_long u_long; -typedef __quad_t quad_t; -typedef __u_quad_t u_quad_t; -typedef __fsid_t fsid_t; -# define __u_char_defined -# endif -typedef __loff_t loff_t; -#endif - -#ifndef __ino_t_defined -# ifndef __USE_FILE_OFFSET64 -typedef __ino_t ino_t; -# else -typedef __ino64_t ino_t; -# endif -# define __ino_t_defined -#endif -#if defined __USE_LARGEFILE64 && !defined __ino64_t_defined -typedef __ino64_t ino64_t; -# define __ino64_t_defined -#endif - -#ifndef __dev_t_defined -typedef __dev_t dev_t; -# define __dev_t_defined -#endif - -#ifndef __gid_t_defined -typedef __gid_t gid_t; -# define __gid_t_defined -#endif - -#ifndef __mode_t_defined -typedef __mode_t mode_t; -# define __mode_t_defined -#endif - -#ifndef __nlink_t_defined -typedef __nlink_t nlink_t; -# define __nlink_t_defined -#endif - -#ifndef __uid_t_defined -typedef __uid_t uid_t; -# define __uid_t_defined -#endif - -#ifndef __off_t_defined -# ifndef __USE_FILE_OFFSET64 -typedef __off_t off_t; -# else -typedef __off64_t off_t; -# endif -# define __off_t_defined -#endif -#if defined __USE_LARGEFILE64 && !defined __off64_t_defined -typedef __off64_t off64_t; -# define __off64_t_defined -#endif - -#ifndef __pid_t_defined -typedef __pid_t pid_t; -# define __pid_t_defined -#endif - -#if (defined __USE_XOPEN || defined __USE_XOPEN2K8) \ - && !defined __id_t_defined -typedef __id_t id_t; -# define __id_t_defined -#endif - -#ifndef __ssize_t_defined -typedef __ssize_t ssize_t; -# define __ssize_t_defined -#endif - -#ifdef __USE_MISC -# ifndef __daddr_t_defined -typedef __daddr_t daddr_t; -typedef __caddr_t caddr_t; -# define __daddr_t_defined -# endif -#endif - -#if (defined __USE_MISC || defined __USE_XOPEN) && !defined __key_t_defined -typedef __key_t key_t; -# define __key_t_defined -#endif - -#if defined __USE_XOPEN || defined __USE_XOPEN2K8 -# include <bits/types/clock_t.h> -#endif -#include <bits/types/clockid_t.h> -#include <bits/types/time_t.h> -#include <bits/types/timer_t.h> - -#ifdef __USE_XOPEN -# ifndef __useconds_t_defined -typedef __useconds_t useconds_t; -# define __useconds_t_defined -# endif -# ifndef __suseconds_t_defined -typedef __suseconds_t suseconds_t; -# define __suseconds_t_defined -# endif -#endif - -#define __need_size_t -#include <stddef.h> - -#ifdef __USE_MISC -/* Old compatibility names for C types. */ -typedef unsigned long int ulong; -typedef unsigned short int ushort; -typedef unsigned int uint; -#endif - -/* These size-specific names are used by some of the inet code. */ - -#include <bits/stdint-intn.h> - -/* These were defined by ISO C without the first `_'. */ -typedef __uint8_t u_int8_t; -typedef __uint16_t u_int16_t; -typedef __uint32_t u_int32_t; -typedef __uint64_t u_int64_t; - -#if __GNUC_PREREQ (2, 7) -typedef int register_t __attribute__ ((__mode__ (__word__))); -#else -typedef int register_t; -#endif - -/* Some code from BIND tests this macro to see if the types above are - defined. */ -#define __BIT_TYPES_DEFINED__ 1 - - -#ifdef __USE_MISC -/* In BSD <sys/types.h> is expected to define BYTE_ORDER. */ -# include <endian.h> - -/* It also defines `fd_set' and the FD_* macros for `select'. */ -# include <sys/select.h> -#endif /* Use misc. */ - - -#if (defined __USE_UNIX98 || defined __USE_XOPEN2K8) \ - && !defined __blksize_t_defined -typedef __blksize_t blksize_t; -# define __blksize_t_defined -#endif - -/* Types from the Large File Support interface. */ -#ifndef __USE_FILE_OFFSET64 -# ifndef __blkcnt_t_defined -typedef __blkcnt_t blkcnt_t; /* Type to count number of disk blocks. */ -# define __blkcnt_t_defined -# endif -# ifndef __fsblkcnt_t_defined -typedef __fsblkcnt_t fsblkcnt_t; /* Type to count file system blocks. */ -# define __fsblkcnt_t_defined -# endif -# ifndef __fsfilcnt_t_defined -typedef __fsfilcnt_t fsfilcnt_t; /* Type to count file system inodes. */ -# define __fsfilcnt_t_defined -# endif -#else -# ifndef __blkcnt_t_defined -typedef __blkcnt64_t blkcnt_t; /* Type to count number of disk blocks. */ -# define __blkcnt_t_defined -# endif -# ifndef __fsblkcnt_t_defined -typedef __fsblkcnt64_t fsblkcnt_t; /* Type to count file system blocks. */ -# define __fsblkcnt_t_defined -# endif -# ifndef __fsfilcnt_t_defined -typedef __fsfilcnt64_t fsfilcnt_t; /* Type to count file system inodes. */ -# define __fsfilcnt_t_defined -# endif -#endif - -#ifdef __USE_LARGEFILE64 -typedef __blkcnt64_t blkcnt64_t; /* Type to count number of disk blocks. */ -typedef __fsblkcnt64_t fsblkcnt64_t; /* Type to count file system blocks. */ -typedef __fsfilcnt64_t fsfilcnt64_t; /* Type to count file system inodes. */ -#endif - - -/* Now add the thread types. */ -#if defined __USE_POSIX199506 || defined __USE_UNIX98 -# include <bits/pthreadtypes.h> -#endif - -__END_DECLS - -#endif /* sys/types.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@types.h.blob deleted file mode 100644 index 9176a13a2f441934a4a37e453fb0a474372cf31d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18237 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 I=t)riA7!ywKL7v# diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h deleted file mode 100644 index e4bf82db..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h +++ /dev/null @@ -1,262 +0,0 @@ -/* Copyright (C) 2001-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -#ifndef _SYS_UCONTEXT_H -#define _SYS_UCONTEXT_H 1 - -#include <features.h> - -#include <bits/types.h> -#include <bits/types/sigset_t.h> -#include <bits/types/stack_t.h> - - -#ifdef __USE_MISC -# define __ctx(fld) fld -#else -# define __ctx(fld) __ ## fld -#endif - -#ifdef __x86_64__ - -/* Type for general register. */ -__extension__ typedef long long int greg_t; - -/* Number of general registers. */ -#define __NGREG 23 -#ifdef __USE_MISC -# define NGREG __NGREG -#endif - -/* Container for all general registers. */ -typedef greg_t gregset_t[__NGREG]; - -#ifdef __USE_GNU -/* Number of each register in the `gregset_t' array. */ -enum -{ - REG_R8 = 0, -# define REG_R8 REG_R8 - REG_R9, -# define REG_R9 REG_R9 - REG_R10, -# define REG_R10 REG_R10 - REG_R11, -# define REG_R11 REG_R11 - REG_R12, -# define REG_R12 REG_R12 - REG_R13, -# define REG_R13 REG_R13 - REG_R14, -# define REG_R14 REG_R14 - REG_R15, -# define REG_R15 REG_R15 - REG_RDI, -# define REG_RDI REG_RDI - REG_RSI, -# define REG_RSI REG_RSI - REG_RBP, -# define REG_RBP REG_RBP - REG_RBX, -# define REG_RBX REG_RBX - REG_RDX, -# define REG_RDX REG_RDX - REG_RAX, -# define REG_RAX REG_RAX - REG_RCX, -# define REG_RCX REG_RCX - REG_RSP, -# define REG_RSP REG_RSP - REG_RIP, -# define REG_RIP REG_RIP - REG_EFL, -# define REG_EFL REG_EFL - REG_CSGSFS, /* Actually short cs, gs, fs, __pad0. */ -# define REG_CSGSFS REG_CSGSFS - REG_ERR, -# define REG_ERR REG_ERR - REG_TRAPNO, -# define REG_TRAPNO REG_TRAPNO - REG_OLDMASK, -# define REG_OLDMASK REG_OLDMASK - REG_CR2 -# define REG_CR2 REG_CR2 -}; -#endif - -struct _libc_fpxreg -{ - unsigned short int __ctx(significand)[4]; - unsigned short int __ctx(exponent); - unsigned short int __glibc_reserved1[3]; -}; - -struct _libc_xmmreg -{ - __uint32_t __ctx(element)[4]; -}; - -struct _libc_fpstate -{ - /* 64-bit FXSAVE format. */ - __uint16_t __ctx(cwd); - __uint16_t __ctx(swd); - __uint16_t __ctx(ftw); - __uint16_t __ctx(fop); - __uint64_t __ctx(rip); - __uint64_t __ctx(rdp); - __uint32_t __ctx(mxcsr); - __uint32_t __ctx(mxcr_mask); - struct _libc_fpxreg _st[8]; - struct _libc_xmmreg _xmm[16]; - __uint32_t __glibc_reserved1[24]; -}; - -/* Structure to describe FPU registers. */ -typedef struct _libc_fpstate *fpregset_t; - -/* Context to describe whole processor state. */ -typedef struct - { - gregset_t __ctx(gregs); - /* Note that fpregs is a pointer. */ - fpregset_t __ctx(fpregs); - __extension__ unsigned long long __reserved1 [8]; -} mcontext_t; - -/* Userlevel context. */ -typedef struct ucontext_t - { - unsigned long int __ctx(uc_flags); - struct ucontext_t *uc_link; - stack_t uc_stack; - mcontext_t uc_mcontext; - sigset_t uc_sigmask; - struct _libc_fpstate __fpregs_mem; - __extension__ unsigned long long int __ssp[4]; - } ucontext_t; - -#else /* !__x86_64__ */ - -/* Type for general register. */ -typedef int greg_t; - -/* Number of general registers. */ -#define __NGREG 19 -#ifdef __USE_MISC -# define NGREG __NGREG -#endif - -/* Container for all general registers. */ -typedef greg_t gregset_t[__NGREG]; - -#ifdef __USE_GNU -/* Number of each register is the `gregset_t' array. */ -enum -{ - REG_GS = 0, -# define REG_GS REG_GS - REG_FS, -# define REG_FS REG_FS - REG_ES, -# define REG_ES REG_ES - REG_DS, -# define REG_DS REG_DS - REG_EDI, -# define REG_EDI REG_EDI - REG_ESI, -# define REG_ESI REG_ESI - REG_EBP, -# define REG_EBP REG_EBP - REG_ESP, -# define REG_ESP REG_ESP - REG_EBX, -# define REG_EBX REG_EBX - REG_EDX, -# define REG_EDX REG_EDX - REG_ECX, -# define REG_ECX REG_ECX - REG_EAX, -# define REG_EAX REG_EAX - REG_TRAPNO, -# define REG_TRAPNO REG_TRAPNO - REG_ERR, -# define REG_ERR REG_ERR - REG_EIP, -# define REG_EIP REG_EIP - REG_CS, -# define REG_CS REG_CS - REG_EFL, -# define REG_EFL REG_EFL - REG_UESP, -# define REG_UESP REG_UESP - REG_SS -# define REG_SS REG_SS -}; -#endif - -/* Definitions taken from the kernel headers. */ -struct _libc_fpreg -{ - unsigned short int __ctx(significand)[4]; - unsigned short int __ctx(exponent); -}; - -struct _libc_fpstate -{ - unsigned long int __ctx(cw); - unsigned long int __ctx(sw); - unsigned long int __ctx(tag); - unsigned long int __ctx(ipoff); - unsigned long int __ctx(cssel); - unsigned long int __ctx(dataoff); - unsigned long int __ctx(datasel); - struct _libc_fpreg _st[8]; - unsigned long int __ctx(status); -}; - -/* Structure to describe FPU registers. */ -typedef struct _libc_fpstate *fpregset_t; - -/* Context to describe whole processor state. */ -typedef struct - { - gregset_t __ctx(gregs); - /* Due to Linux's history we have to use a pointer here. The SysV/i386 - ABI requires a struct with the values. */ - fpregset_t __ctx(fpregs); - unsigned long int __ctx(oldmask); - unsigned long int __ctx(cr2); - } mcontext_t; - -/* Userlevel context. */ -typedef struct ucontext_t - { - unsigned long int __ctx(uc_flags); - struct ucontext_t *uc_link; - stack_t uc_stack; - mcontext_t uc_mcontext; - sigset_t uc_sigmask; - struct _libc_fpstate __fpregs_mem; - unsigned long int __ssp[4]; - } ucontext_t; - -#endif /* !__x86_64__ */ - -#undef __ctx - -#endif /* sys/ucontext.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@sys@ucontext.h.blob deleted file mode 100644 index cd3d087a9e2c5ff1bf8130a5afb3f8c71ba0b380..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16457 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h deleted file mode 100644 index 859d9668..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h +++ /dev/null @@ -1,455 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.23 Date and time <time.h> - */ - -#ifndef _TIME_H -#define _TIME_H 1 - -#include <features.h> - -#define __need_size_t -#define __need_NULL -#include <stddef.h> - -/* This defines CLOCKS_PER_SEC, which is the number of processor clock - ticks per second, and possibly a number of other constants. */ -#include <bits/time.h> - -/* Many of the typedefs and structs whose official home is this header - may also need to be defined by other headers. */ -#include <bits/types/clock_t.h> -#include <bits/types/time_t.h> -#include <bits/types/struct_tm.h> - -#if defined __USE_POSIX199309 || defined __USE_ISOC11 -# include <bits/types/struct_timespec.h> -#endif - -#ifdef __USE_POSIX199309 -# include <bits/types/clockid_t.h> -# include <bits/types/timer_t.h> -# include <bits/types/struct_itimerspec.h> -struct sigevent; -#endif - -#ifdef __USE_XOPEN2K -# ifndef __pid_t_defined -typedef __pid_t pid_t; -# define __pid_t_defined -# endif -#endif - -#ifdef __USE_XOPEN2K8 -# include <bits/types/locale_t.h> -#endif - -#ifdef __USE_ISOC11 -/* Time base values for timespec_get. */ -# define TIME_UTC 1 -#endif - -__BEGIN_DECLS - -/* Time used by the program so far (user time + system time). - The result / CLOCKS_PER_SEC is program time in seconds. */ -extern clock_t clock (void) __THROW; - -#ifndef __USE_TIME_BITS64 -/* Return the current time and put it in *TIMER if TIMER is not NULL. */ -extern time_t time (time_t *__timer) __THROW; - -/* Return the difference between TIME1 and TIME0. */ -extern double difftime (time_t __time1, time_t __time0) - __THROW __attribute__ ((__const__)); - -/* Return the `time_t' representation of TP and normalize TP. */ -extern time_t mktime (struct tm *__tp) __THROW; -#else -# ifdef __REDIRECT_NTH -extern time_t __REDIRECT_NTH (time, (time_t *__timer), __time64); -extern double __REDIRECT_NTH (difftime, (time_t __time1, time_t __time0), - __difftime64) __attribute__ ((__const__)); -extern time_t __REDIRECT_NTH (mktime, (struct tm *__tp), __mktime64); -# else -# define time __time64 -# define difftime __difftime64 -# define mktime __mktime64 -# endif -#endif - -/* Format TP into S according to FORMAT. - Write no more than MAXSIZE characters and return the number - of characters written, or 0 if it would exceed MAXSIZE. */ -extern size_t strftime (char *__restrict __s, size_t __maxsize, - const char *__restrict __format, - const struct tm *__restrict __tp) - __THROW __nonnull((1, 3, 4)); - -#ifdef __USE_XOPEN -/* Parse S according to FORMAT and store binary time information in TP. - The return value is a pointer to the first unparsed character in S. */ -extern char *strptime (const char *__restrict __s, - const char *__restrict __fmt, struct tm *__tp) - __THROW; -#endif - -#ifdef __USE_XOPEN2K8 -/* Similar to the two functions above but take the information from - the provided locale and not the global locale. */ - -extern size_t strftime_l (char *__restrict __s, size_t __maxsize, - const char *__restrict __format, - const struct tm *__restrict __tp, - locale_t __loc) __THROW; -#endif - -#ifdef __USE_GNU -extern char *strptime_l (const char *__restrict __s, - const char *__restrict __fmt, struct tm *__tp, - locale_t __loc) __THROW; -#endif - - -#ifndef __USE_TIME_BITS64 -/* Return the `struct tm' representation of *TIMER - in Universal Coordinated Time (aka Greenwich Mean Time). */ -extern struct tm *gmtime (const time_t *__timer) __THROW; - -/* Return the `struct tm' representation - of *TIMER in the local timezone. */ -extern struct tm *localtime (const time_t *__timer) __THROW; - -#else -# ifdef __REDIRECT_NTH -extern struct tm*__REDIRECT_NTH (gmtime, (const time_t *__timer), __gmtime64); -extern struct tm *__REDIRECT_NTH (localtime, (const time_t *__timer), - __localtime64); -# else -# define gmtime __gmtime64 -# define localtime __localtime64 -# endif -#endif - - -#if defined __USE_POSIX || __GLIBC_USE (ISOC2X) -# ifndef __USE_TIME_BITS64 -/* Return the `struct tm' representation of *TIMER in UTC, - using *TP to store the result. */ -extern struct tm *gmtime_r (const time_t *__restrict __timer, - struct tm *__restrict __tp) __THROW; - -/* Return the `struct tm' representation of *TIMER in local time, - using *TP to store the result. */ -extern struct tm *localtime_r (const time_t *__restrict __timer, - struct tm *__restrict __tp) __THROW; -# else -# ifdef __REDIRECT_NTH -extern struct tm*__REDIRECT_NTH (gmtime_r, (const time_t *__restrict __timer, - struct tm *__restrict __tp), - __gmtime64_r); - -extern struct tm*__REDIRECT_NTH (localtime_r, (const time_t *__restrict __t, - struct tm *__restrict __tp), - __localtime64_r); -# else -# define gmtime_r __gmtime64_r -# define localtime_r __localtime_r -# endif -# endif -#endif /* POSIX || C2X */ - -/* Return a string of the form "Day Mon dd hh:mm:ss yyyy\n" - that is the representation of TP in this format. */ -extern char *asctime (const struct tm *__tp) __THROW; - -/* Equivalent to `asctime (localtime (timer))'. */ -#ifndef __USE_TIME_BITS64 -extern char *ctime (const time_t *__timer) __THROW; -#else -# ifdef __REDIRECT_NTH -extern char *__REDIRECT_NTH (ctime, (const time_t *__timer), __ctime64); -# else -# define ctime __ctime64 -# endif -#endif - -#ifdef __USE_POSIX -/* Reentrant versions of the above functions. */ - -/* Return in BUF a string of the form "Day Mon dd hh:mm:ss yyyy\n" - that is the representation of TP in this format. */ -extern char *asctime_r (const struct tm *__restrict __tp, - char *__restrict __buf) __THROW; - -/* Equivalent to `asctime_r (localtime_r (timer, *TMP*), buf)'. */ -#ifndef __USE_TIME_BITS64 -extern char *ctime_r (const time_t *__restrict __timer, - char *__restrict __buf) __THROW; -#else -# ifdef __REDIRECT_NTH -extern char *__REDIRECT_NTH (ctime_r, (const time_t *__restrict __timer, - char *__restrict __buf), __ctime64_r); -# else -# define ctime_r __ctime64_r -# endif -#endif - -#endif /* POSIX */ - - -/* Defined in localtime.c. */ -extern char *__tzname[2]; /* Current time zone abbreviations. */ -extern int __daylight; /* If daylight-saving time is ever in use. */ -extern long int __timezone; /* Seconds west of UTC. */ - - -#ifdef __USE_POSIX -/* Same as above. */ -extern char *tzname[2]; - -/* Set time conversion information from the TZ environment variable. - If TZ is not defined, a locale-dependent default is used. */ -extern void tzset (void) __THROW; -#endif - -#if defined __USE_MISC || defined __USE_XOPEN -extern int daylight; -extern long int timezone; -#endif - - -/* Nonzero if YEAR is a leap year (every 4 years, - except every 100th isn't, and every 400th is). */ -#define __isleap(year) \ - ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0)) - - -#if defined __USE_MISC || __GLIBC_USE (ISOC2X) -# ifndef __USE_TIME_BITS64 -/* Like `mktime', but for TP represents Universal Time, not local time. */ -extern time_t timegm (struct tm *__tp) __THROW; -# else -# ifdef __REDIRECT_NTH -extern time_t __REDIRECT_NTH (timegm, (struct tm *__tp), __timegm64); -# else -# define timegm __timegm64 -# endif -# endif -#endif - - -#ifdef __USE_MISC -/* Miscellaneous functions many Unices inherited from the public domain - localtime package. These are included only for compatibility. */ - -#ifndef __USE_TIME_BITS64 -/* Another name for `mktime'. */ -extern time_t timelocal (struct tm *__tp) __THROW; -#else -# ifdef __REDIRECT_NTH -extern time_t __REDIRECT_NTH (timelocal, (struct tm *__tp), __mktime64); -# endif -#endif - -/* Return the number of days in YEAR. */ -extern int dysize (int __year) __THROW __attribute__ ((__const__)); -#endif - - -#ifdef __USE_POSIX199309 -# ifndef __USE_TIME_BITS64 -/* Pause execution for a number of nanoseconds. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int nanosleep (const struct timespec *__requested_time, - struct timespec *__remaining); - -/* Get resolution of clock CLOCK_ID. */ -extern int clock_getres (clockid_t __clock_id, struct timespec *__res) __THROW; - -/* Get current value of clock CLOCK_ID and store it in TP. */ -extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) - __THROW __nonnull((2)); - -/* Set clock CLOCK_ID to value TP. */ -extern int clock_settime (clockid_t __clock_id, const struct timespec *__tp) - __THROW __nonnull((2)); -# else -# ifdef __REDIRECT -extern int __REDIRECT (nanosleep, (const struct timespec *__requested_time, - struct timespec *__remaining), - __nanosleep64); -extern int __REDIRECT_NTH (clock_getres, (clockid_t __clock_id, - struct timespec *__res), - __clock_getres64); -extern int __REDIRECT_NTH (clock_gettime, (clockid_t __clock_id, struct - timespec *__tp), __clock_gettime64) - __nonnull((2)); -extern int __REDIRECT_NTH (clock_settime, (clockid_t __clock_id, const struct - timespec *__tp), __clock_settime64) - __nonnull((2)); -# else -# define nanosleep __nanosleep64 -# define clock_getres __clock_getres64 -# define clock_gettime __clock_gettime64 -# define clock_settime __clock_settime64 -# endif -# endif - - -# ifdef __USE_XOPEN2K -/* High-resolution sleep with the specified clock. - - This function is a cancellation point and therefore not marked with - __THROW. */ -# ifndef __USE_TIME_BITS64 -extern int clock_nanosleep (clockid_t __clock_id, int __flags, - const struct timespec *__req, - struct timespec *__rem); -# else -# ifdef __REDIRECT -extern int __REDIRECT (clock_nanosleep, (clockid_t __clock_id, int __flags, - const struct timespec *__req, - struct timespec *__rem), - __clock_nanosleep_time64); -# else -# define clock_nanosleep __clock_nanosleep_time64 -# endif -# endif - -/* Return clock ID for CPU-time clock. */ -extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __THROW; -# endif - - -/* Create new per-process timer using CLOCK_ID. */ -extern int timer_create (clockid_t __clock_id, - struct sigevent *__restrict __evp, - timer_t *__restrict __timerid) __THROW; - -/* Delete timer TIMERID. */ -extern int timer_delete (timer_t __timerid) __THROW; - -/* Set timer TIMERID to VALUE, returning old value in OVALUE. */ -# ifndef __USE_TIME_BITS64 -extern int timer_settime (timer_t __timerid, int __flags, - const struct itimerspec *__restrict __value, - struct itimerspec *__restrict __ovalue) __THROW; - -/* Get current value of timer TIMERID and store it in VALUE. */ -extern int timer_gettime (timer_t __timerid, struct itimerspec *__value) - __THROW; -# else -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (timer_settime, (timer_t __timerid, int __flags, - const struct itimerspec *__restrict __value, - struct itimerspec *__restrict __ovalue), - __timer_settime64); - -extern int __REDIRECT_NTH (timer_gettime, (timer_t __timerid, - struct itimerspec *__value), - __timer_gettime64); -# else -# define timer_settime __timer_settime64 -# define timer_gettime __timer_gettime64 -# endif -# endif - -/* Get expiration overrun for timer TIMERID. */ -extern int timer_getoverrun (timer_t __timerid) __THROW; -#endif - - -#ifdef __USE_ISOC11 -# ifndef __USE_TIME_BITS64 -/* Set TS to calendar time based in time base BASE. */ -extern int timespec_get (struct timespec *__ts, int __base) - __THROW __nonnull ((1)); -# else -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (timespec_get, (struct timespec *__ts, int __base), - __timespec_get64) __nonnull ((1)); -# else -# define timespec_get __timespec_get64 -# endif -# endif -#endif - - -#if __GLIBC_USE (ISOC2X) -# ifndef __USE_TIME_BITS64 -/* Set TS to resolution of time base BASE. */ -extern int timespec_getres (struct timespec *__ts, int __base) - __THROW; -# else -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (timespec_getres, (struct timespec *__ts, - int __base), - __timespec_getres64); -# else -# define timespec_getres __timespec_getres64 -# endif -# endif -#endif - - -#ifdef __USE_XOPEN_EXTENDED -/* Set to one of the following values to indicate an error. - 1 the DATEMSK environment variable is null or undefined, - 2 the template file cannot be opened for reading, - 3 failed to get file status information, - 4 the template file is not a regular file, - 5 an error is encountered while reading the template file, - 6 memory allication failed (not enough memory available), - 7 there is no line in the template that matches the input, - 8 invalid input specification Example: February 31 or a time is - specified that can not be represented in a time_t (representing - the time in seconds since 00:00:00 UTC, January 1, 1970) */ -extern int getdate_err; - -/* Parse the given string as a date specification and return a value - representing the value. The templates from the file identified by - the environment variable DATEMSK are used. In case of an error - `getdate_err' is set. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern struct tm *getdate (const char *__string); -#endif - -#ifdef __USE_GNU -/* Since `getdate' is not reentrant because of the use of `getdate_err' - and the static buffer to return the result in, we provide a thread-safe - variant. The functionality is the same. The result is returned in - the buffer pointed to by RESBUFP and in case of an error the return - value is != 0 with the same values as given above for `getdate_err'. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern int getdate_r (const char *__restrict __string, - struct tm *__restrict __resbufp); -#endif - -__END_DECLS - -#endif /* time.h. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@time.h.blob deleted file mode 100644 index 6d9c5f338e2b5ec6dc9c5283d442c8e27618c695..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24637 zcmch93w#vSz5fhG!Q2?4#fUM`0b>jyFJg)*6%6FXBL-YT2$-_W&dz4X?8}|mJP-wK zYE$YT+pF^V3$)OOy{)%bThkhEDfLsY&|a{%z21LY@wUZEeYM($Emp7T{J-a%IkPjn zvzy%exu2VlvwPS*bI$Mi{XNdC)xzKY{8sZRK@{r4@u*rKsc%#DK_i~1H&orI530d> zJ*m`3Wi3{x2p1?3IW{n(skOuL<e(NCs10gKRWahp(Um!O5T<Ix`jnom*J4T}6;$gt zw{<nv2h;&A=2zlDwJt3Dtx_64<(i`yqY3&Aq2KjQKr{4u@~vL)_eTS|AsedSAdA>j zBU+%I@>0KSxxK3#9noS&5}ab{DXs6cYgI}UUi<?oE$B&6XIK3|Bt^a|`S-8?YmS>C z)l|}(qmU|-?{pWXTqIH12)n-UW?^XLL(3XNiDk?4a6;un)Dm+Gg>OZ_4~)V9hULWc zd+J6o5RXU5#4MrFr4n&n8)@`Mw5V$_*LJcIk7|m4SPQC9c`9b8NqcfW!whK=)gMU4 zhjn&C!y|zlYEu#^Ef$KCRc%|!BSTOwM__={+k>7;hGZqJ(tPBG)rdAiNO<(|9d0^x zveAIeGw}vb>IOnFEe};x;LP@QZD2@_WEj3n=xm;$Mb)HZT0Z*KA&n}!=(`);<lEk1 z#8V12R9ncdEklXgNPHkLJ)bhQ<e@+`AGi9bUathzkhjY?Wnm;!isA2A*VXRYn$u>J zPl3*9B7BBpF(n=!)KtF~_lHt3#n9q0-61|Fj!{G)8*UG@=E0~CJS1ZUPu&kkqtmG# zO4p4+eU~Sfsh9?5_58}go;PB0IbegBOl`mhQ~niQLs!D;v|9{=jhQf<h$obok%wnn zZve9(LjY=bd2Ki<E7V}lEWIg*5o0k;reVOgVo!zm{g5Z@&mWaX{Bi`MVO)9RAP-4I zM`|YjE+G!6h`<JbkVOhA>3l5dLqw@>wXV*=52(cYWRA@b-;cNuCCp_Op4^5;bYN5# zAbQTV+&9sP8`PwZ4B)?bXJjTpj6m1&CKu(LFWWMdh?WS%<)nAarZ$VfV8m(>dSGkD zsB1Y-<`T(}686F+&)JqJVp+JIPotrvs`>{aqX~+o)l%54S>|fQ*JWjJdV(zyB7xBK zi2<yW#K~F(ux7Y{H6MEbYNBfx2qDLIfIPQop{P6*@wkVpkTRKeMQ^;}P8EqOGExC| zM&r3VcC-!Nrqi`2f>cP>-AlP9Ah!+b+Ai<(lQ<hqGqMP_ZE{c@b>+4BEWv;!=$c_A zMDLjjvjk7p5_toJy?s>Ey}`hq!O}6J$t=Jah^6Y0!v^%)9G)lZ(RwwRj8Pd>y?3uW z6K0mH8n;GgkXmvSp<y6++w|6AE7q31r<{foN+g<!+!nme!~8t&7?w37G3b>KdQR6p z72!D*JbDn}GB=t)`w<abp3bMpI&$CiSNUuyqK>d2S@t{C4Jc4r?SL9nlbXVmR~wLZ zYTsEJw2dU5P-6o$705CYhwH{v-HjrgZerMeX4&;}LL<EGeyGTuCegr^<}GJdoStWU zw5PB~ba_Zsrjs|v6q1)MZ<-0FK#4;P;F~=b_asG8GecrN&4pz>9A(wm@?du!2!JhU z$V7Ij9&~WY+ZqH8Wrs#jYIy|l^ccP_^KF)DCx?N^?$E@i+1r!i4f%(m(!$W&h(L`} z8&+jxceRLi4nub)+LpZyX~}pjiZJeNadZ~yz*?kVo~}eESjiW4I?q`k39jP#6<r`< zgp(kcT2ZZ>WaW?zNLf+{L=fYmx!N2gKT9DN8|p|Nnh~_wrk+%Bfs-%2rHuP!TFJQX z&tnOpnV1(UJ$uW1#vRdVEO??cUu;VnnZ-}OCDZjlq|qyPvIA6>UeKmM|Hvf=t}?1! z1`a6KNkK_c`K%PoHC<ODNPcrKNBTO*Tq5orJtYs2lao}UHpscQA~7lykq6vMxu$Sr z1Krc~2FPNhbCz<i=1G_woHm5Hq~`Y{`uhW^kl&EgEsuQa#M}^zTst?eaYrs{+)5;_ zlg3d-uh5fP&(O@J1Q{!}iKL36&ZRTYm5@z)#S+iCe!pG4`&sru*7sIqC}PyA&`)ht zHNtW4Y8r`iYGk@R%aXb_;J5l~ZbS4WbT|-;Yq22|j9JM%7ZS%4e;RXaSn*sFoz)!W zocDCr`(f38-iX7bkapRuWF@;D;kjc{2G5!CIA^xOgP|4jXH@g(1JnA56*tgRKvCxh z+SLX}V=~&JE=%M}$O<*~tbC3Xk;$~&odVLUCo`teCsmNAW<149(=HE#@|>*3Zd0Q9 z%+JYrT39n;U)Q1uREaD)FhJQ`b4#9dDs5W1Ts1DEcc8?h(RjX;fV9Au<!pgxW#5FE zEL%>y9qHJ*wB#}h(iO?7PCZ3U8XvIUEJyd89F3yQ6+u=<cJ`JA!yAAx?AHx7ZUX7q zjAzBp=dpIUJNEGJ9AVf$gO=_P`cLT5y5!}_;0QVL%8*7rU%IK5w(?Kim~m1>=|jpE zg7bQ}2<QxU0^`q{*AZ0`!n3jz+ZKk<wn`sr<Rf=f)?->C!BXGPePN3`j8c-27N|o= zpEH|3`Ie>HCN#e1nP|BJzedj*^n~h$G*4|XkR?r`43*@BWkVl{1PyZPm}Su1bZoKR z8b{rsu>vJO))}7pf+xw*IKt+P{fUAiiu#$5E2pfUQhr*MNGOuh!}%8-R>E@naLrjo z+0qGXL8~IC`{h%=8q{#OOZ5NCj!+&TW$H}is~e_k_364lJH7Q(gfrQa*@3DJSe`eG zG%p`W%vf_g{wvc)DLVnn-SD@C&hXF$Q(0!4h{#4Lp7gGl?UimzY3?A-*WpecOGR@R zrdAr_2|N6Vx;9Ve-QEO;kGa6jCRJBsIx`>JvR%YFB8nEAKBfS`Nb@>lqPNOD{hDuX z6PWI<c@xOa)Up`$+>+T18Z_Ae<vD){wmZ|gnkPG+%TnO+S~!b&62!E04e!JXs%00r z(^T7^kdw0eoZpiMJ?sVRoB(D*<j~5frH3;vWAt2*$u_S?Vl_&zYcam1-PZQ}mJ(!_ z>gY#B66i<S$G@(7JjqicK{XmTX4I97#O0u#j_FRR+h&>2MpV`_$TCZN&H&O6(m6`T zBaw`J(UV4qu+hWZxP<I=(L2fKvNMP;iTH2^L3|Sq9$p=<TtwrEm!SxGQoxIP&zn%? zTLr!y7BUGS5NS2UUD|ceV<rlr<;net+0>%zY=ucXmGh)51m#ogwh8l`236%KK3(+T z-e@gqo?vZIRU+u0;@HN;jpyPyB<Wh&<@tu&;k_nWiDd>b^O?43MdK-U>R?;7Cxu`? zMob&2{fyEl)I+*Fpa$YJVb8xddLIcz^NQ@Aq$C(ddiag!bOuv1JjlX18|^aEf^J4h zbN<I=Y%zyrq@CVJfDG4Z1G^R=jZRo?ZqQ_tX*K5{6`d=Wk#Q}jXXALnZHIgcePBi% zCb#!4e)S}MhAxjB1LQ#xgi|u#b{M{v&24fxo}k;=isw_NdkBtMIT3#j!=)@m;^Z;M zcnXbt7vG+Q<KS3D&YVrQ=WKQ6Q9WS{CpFIi<GFHV*9@PmiKcM$K={g%o-JTnGkQzd zo}(*rEUQ1u^*|0erfZawBffaf4oZ3-*fv!|7P(Yc6kpw7?I|9djFB$J%yTs*noyJx zIXGk0T1Wto^+W?tsyKQK<$tb*i`5ni`pC>DsZjEjbLmFbt>e~{lzAzEQ1d?~NjpZg z>1YQ&P99Z=g&Ve&*|YL&o8vK-TzC9edI(BVxo*a3gm-Vk&7So%P1Z4BE@Eji<B4mY zcO(X_9$tP3%yY_``y|XZpD^Ic+r2IP!vR)K&!kg$x<DG+?#7@eR|r2Sm}d%-N@O^Y zF*l!y8)20-)edx84GXR@Kn%!nVL1QF!9~u8NG*FNYt-6#9I@xWYj8ab&WmVl)SNrQ z**R*9>t;p>YYVRR_=X1KbO&~Qt|@j<>&i8QM|6_h`KFshTFxv(*`8}ECCVz|`*Teq zWU+^lcjTI4(dFtT4&|EcXfj{gBwSy-S=dn&7Gg!aggcA&3HKL$UU;<lN#VOi&kD~M zy(3Ib3B^-$L}98(ESjps`wFpmssryE#geH3yr=N*yYN1a_j~bv5c58Z_X)gz3-3>h zMGMW9cRauSi_H(MM)N~W#w3`g#4|WQ9xkY24A`GZ)qcOB*U))>KY8qCiBMWPUl2B{ zhSalJGU5_>v@M3iUwV&3rUWrP{V!?F>dozSf-uYc>DOykwTC{j+3fw|OV2L-(@+0F zC=vv5YL8fot4<^%VQQ~fBM9cp3v0iy?rWd=lSL-!3QE<oj>iC^Y8A3t-H<q?QA%TC ziBMKnEC@aoKU0WFGWi<MtV{8b1fP;fUrJisCXY%t#bZ)1D22l-qR|z)E{)=^Keo8g z2+M|~>2!8d#VISgKR9AWbDpfxvx)K)#ssny${<i~&bi<dPv7{)L(fn?CdwwNL~%lx z2!nnjc}5wVv!=(Q-$5%?IyLa5#R&a}Ays2b(5x5|L{2QN#>t}dOYmAzQEKx__}gjk zaIKV0eRa>eo7#PZ1G+oaO-*46ZI%J48mvK!Ix0ZbVqQ;02!FH8f4=;=yN;}U_n7(5 z_h_$PU)R`189h>QWQ8am5sq#Lqu&|4^1bDAzV~1@qXW_Z0WM4aTU>7GX`KmsoBlqs z^!I}KocZq0?ptzJ`JPGHJ6LhBNfZwXhkC%??UzO#f9k;xe=`?*87j0iNAv^Jwrp{x z`YD8dw!}1YBqT?q);ONy)MEH~P*CcDIY?FVpe%LbxwP1@ri7)NR5?b!SVB#)bl>+s ze)|tU_#4W?SjAX_D2@qZ39#^sKVJOCf#9c0I18w6{M36wR6mg_=3EW~gTIp_I?TdP zl;jaIu92A2WzA*Yz`wSw&~43$8fJKGN!Z{Lp}c$^Km?DoL<n-kspT2Namj95Npc`Q zq)LGl07@QYrb*hT#QBI*hLZ6poK}?*$v8P@3R+u8ax5st;<yXn4MgGr$dUmq<aD9A z^zOUsc3=C|fcet?f4liFoxlFA`NGuN6~7Gq>=m=*t>s_)$``K~HqQ?FF0Dykbw8D* zQEot%hA`X=S?<_-eD)9i;WK}*WJv|c0JO>)6TBqOOE{e4G65x(#L+IBO^Hl^H4Xp8 z;DgLRfirBNQx3YfbaheXezf+MCC56}ewz}sp?pJyC~goo^nsxF8}>h`UqA5+H$l-s zLW7OvHbRz{XILd8+6yv(3QUlYH+f<Y2uMkJ;IaKB^QwP$B_+jI?gQlc1YbW$Nshhw z;?XzNJr*g<Qk;ODC84siLIHoG`H#ZkffMUyKSCFsESm&>lfq;Wi++9akxTZM2R>^p zO2Soelo(_c8T$RBsti$=mb&>ue=MLT32q1FQJqM5Tl;DsrGM_{m)^19`1#{>tEssN zJ#)py2t9KVdghAvV9UP9p3Q%i{*Uh1lBF!j`lwj#Tmk#DZ?s^h13>&F<=~;Iw6u(c zOgdj`?b_J7!N0DJ7(N;jDNDMu%mwpX4*lP+|G#bKkLQ1MtgLfl4I{GxWLAhUL%a%8 z*N7xSe&nA9o?Wu`2L~Kv66%tEPA2=89Zd+0OlI_)Dudv3!s7B=N}L^sa!iWTSwst9 zQV<Hv=YRKd@YC-W{)>6@Q?KI8^R0)?zFYQ{zR~)=VLspZpRe@X_mjsMUpv9qPRiF# z@D&hA<a}Uqd~Kx``J=^`15xbAnHzL3b9r3upjZgg;7*5B1xS$&jJx77m72<ZzxvSC z|Ni}j)s)upit**5I4+D2fyVnMpLpr)7cPC4)5yRQq*6%z-vCqsFNlpD6b@N-0$bWF z$qIg#gRn6`Osiv~@21r~b%k3=?*)h=MOlnT;J9gZ-{y7O+a=<qc(@WFhq`-`WluyP z%!i1e9CJt)$53N6QamX&NLq;C*Kj-)2}<gSg4PjV7xF7GSHJz!dk(FB_g(Xe-M3xl zyZV#AHOGGZw_mjUsIbx8w(szV@BK{02dQY4a-~KT6(Ljw(M}wAdtLbVW!o&#G8C~A zKR?fy97f>?TL!`moA3A#59g80Fl`tBgEd<^{#O#jS?2Yf#SJ}!5B}9$^x5sPpMB!G zeU#x7WhcP!3E^ZL7%sp4#O%XMpPKJtn8K#bE(cBrThzI8vs+9YahCbHx1PRe<*~Xu z%+LJ!ofSo&-|{Hk{#4m1p!O-@bT_siy!89mR{d+>SJw7JaV;nryMQ58WVl3_KOY!P zl6|rxNdl}VR)8h$SWLaBXS<}v><68JZFt_BbRG-WA+&8L={1SWINs1=D)30QA~Q|^ z@VGwti4*xwM*2ynqT3#XAqkY|bMwyurq2oIT0rzAziKV}^5=W!SVUX$A#VfG98s@J zLk_W%1;%S@Xj%dKiRakqvhK*fdazavB{mHVphYzQbMhOX{MLfsJV%K-Uw$5vJTIIl z@lW}{16Pc8?^|IJ#Vf0%KZvJn4V5Mcs2+KCPlQV=sW$pGl`rTa@qb+#-RkQ0rQ_`% zy7bR<tEqlqWk0Qw`hk`GVhCIAd}qhxJ&%6pdB>J9ITqI=s+!2ClE4oSNJ;g!6iN*h zN7j@}?oF;K<jEGm2%!<avq^?B;Nz;2V#yaoCtDCf!YtjD9C`%xy28R9S|(XPKP8%! zQ6$C`HG&5ONa~g#&offI0nj8>=z*Y<Aw}inATVTDGs1;_f6rRq#;p*<EOWy<?_c_p zWrLf|H?G<E?fpw1e1J*hN=W2N5emSoFjXe5heR%a>xY}ieOKM(kO&LWsBPgsRo=1N zQv$lBpH3J*ZjDD6>jV&C6N7dTrzH0L?0ZWSul)Q@bI<U7J?Gyv!;HiQAaMaz+5(Wc zKs*c*fBorwi`w_E`((E9Qd9G?Uua-81O#D0(r`m!x!jhisVv^`cJT4SYZtR!XN%=i zv+1t0vFmIxfL)(?^^dQ7_q}_5=_MFq1~Zq8f%21vdLkH})UqrlOEy%=th8jAF3lom znV-64)|;<icjkn7_|*d!%zZNPHX~euxFnhnNFaQXNb;PQzw_v}eXXl5v<PQM8B$OS zu~<uJx1DNP4Rs^?-wjrnbQEIbM%WyzQ3|NWFsdo)bIT~D#QPekKId#O|6_N>(xmzL zzRxv3DExg7C9u1^8^GNyY}^FGPTu(8vo}8bm*WnJ5@M31je^Q0nM}pJeO?j-B06;> zp(U9^SktLq=^8E^c(3v+XHGBtw<0E^5y)snL@t6?0apy996NUBf`U7`ozTOq-hl?h zW=Vs~m9*wg2niVuz_4>b_vcY!3JVEF7nlY2Mju&u&w?+Sn;$s-Uipr*<>vCzuReI< zOH)zvt-fm?e)hR9^)U`w!9lBt8XK>|RJ(WsIQa8|zx!?Fc;y?GFd6kQFG95yi54zI zB<cZKG%!ekQ5tbj{SDxu4oOGph)S{wIAwLBmP)L#Oif}*9Z*RneoTT(J#*g8{!Q&Z z|K|2qf>C@S!XT*_@UvhFXM{Oa7h>naPC!kk(AfcUH;)b(Uv8b);m|!J8M?=Bc<5LQ zRwXQf;~lZu)&OcmHk-wON;_$#pGv3;h=aFo+CraXVmDH&eDSGuKREKv;VaC`e)vw` zpI%sh2@|Lf0`-YEK%hPd)F&PQh3~yqci-`koVnjYA>l0PSMc*6M58n{X<}?8^G7XR zwSYQ={EDsN(X6t=Su0&%imAgAc?<<&RdB#<g*Vo6;^hx`y1-oCRQ|&&i|em5FSzW% z?-f0H`vS9Q*P}&)b3XGU#@tpgx0Qm~Rxr0sBwd-y>-(Sn$|D~?nZ+E$PbkdxJDW9U z4deGaD;MIES#U=A<=&WuX1%Mswy@Ubll6&bZtkqCH#>eVKKIDYhy9Fr6~wC)&{Pl~ z645xFXU?Ac?SH!XqD3FKqK<>2+wTyHi_sThe^=n`g6z`C-r|BOS**a-Tp*%$nvbgn zBUKFJ+Fc-;!k%qYi5<(X<Ljm0&Df8RuMRf_j+3JgWL&@mW~%g6kR)1{W4`(2hrcad z{?@%$zE5r@_SJ%GJr+Md@gLus{N=%e=|%a-yz1OXf7AQ$F*Ch*+Su%oP*sJfM*r-! z$R?s~+ZQ2THsWdnQ<B((s{^A7j4J4;Rcr=;fEG}+9ajXSt+-<=xx>7C&ek<QdHM21 zmXNtcL%t}R*xwa`*ihWCP!t=4hK1Oe8=yGV2etKyl~_hB`t4Jv@BZe}3|;`EloP*! zPG7OLp1Jlr53l_4jdLfMusVx7%L~NE_-_1tR=OPGEhxdhlTS*&Kan1?QIT1%MJgWu z`EwsL-@Nt4W8wDgmz%t)VcKbk9boN_LN+|xXkxpdU9Z~>dUNQNZ6BOpQq!6i0C5TM z&)$T^ivf=G&y;_>{pFoMKlf9@{%n)?tW4gSG<iL3+I?5MzswszcExhZhT;un1>%OP z4NV1NcSH9Lc-_?9Um*I5efWH=Wvr_}9Pb$S6^IAh4sI$CkE}n^TOdw0O|}$>r<zZ} z1kM+q$4sO@#kepsUp@GXyY4!*y)(@UO}Gd%d>~X-a`P~+J5pD6=$peIVOGg|g5q%D zFj;KXL&r~kOniM$dNB$WmSB+QI}L+-B3bG}8{bTx;HMiVHjMC?e<2WW4z5yg(huYA z7r`HTCQZ23V5DNC($R>x0@=V?kjC}E)Z%=#d2)Wp#*>*J6_{B$ka_ja)n`^6`$Dg| z{^I59V_&_0rC=JHVw-xe-DN!uBpFeOf>;4xj)2(3Chr>Bg@3x)%6sqj8H0VQlCGY4 z(Pi>H_Y&U<->L!;B}qkrI8-rI1(PTrlVB3%<9Iz-eh{yR$`9f7Ncj=G9$kDC?mW>k z0lYY|{zNy-W5s!_0Mlr}MG&L<*?%1U%X5vJxJFYkfCkD`7zf%ZtRXJc)NpebsFxQg z#R|+p=~u!9qET#MZ0s}uMK*GBL8RZ!hgUwbH}JV<ZJEKLXsSge$L&ublADuV``8tR zojcpj!t8|0K60Cb8mR*pd<2!!LR@tiEf6EPc4H)oF<f_IR3YxdwGX2<u?iQ7F6}5N z+G%vz199yU;cuPxAs)*i$+@2}XAa4fFd>Y~n3{!K_lP^m_=zbZH#5{(y{vV~vcqX% zkonIbHa;VkwumM-d+tkCGhGV`B_#+KB<Ed^tDi2-EWY1%MYaX+FlI+r=K&k*Sqja~ z5I2dQ9k_bwssXW(jO{4RR^`a(NSMJbke@hX09S(Eyc3ZKV~bnf2hGXNPO%Ns*}lxD zdo#G<5Rr3<esK*zp@;6y0HP;j3Eq2U2RQk~Lh~V^t&K7!i#}u*JL%Fgq=IpVRQUO) zYiU3LIRr@{G~fV4oammQ3{KQc^x9~_gv#Nc-A-5pd^)v6xfbf`2suX*NA4t~99ebb zPCF{Gb$B;1iwtMOEFm;C5qi{BY6n?Iy-4lIpojM<GY`LzG!WxcZdG=ZJK^lRA7eXn zyw0f}6&hA84Ku9H)G$9<wG>07=O(+VijaM@<>*?n`O$et*JhB-kF>ISpSrMc;YGOD z=ryRv7)?e$9v>i%$V2dqM1SzsgCk_`gUts=GDP29`hm~(3|zL-?~kGV>nA5xSibaX z*5X56>G)W@s^qH5S@cyfMMA~deV4yEX#N@pS?NEqRcI{(6!3h-&KMnqt1xdKvSd;} zcHv?c%F@A|mh1U@Z+YqItGE0uy)JU;1IrI|wTN#wy}iCg#1j&8a4p16`~Z;2B1?*> z#c<>(R96$INHwRZ8d8O+wU#J(7MH_njF_>P2oGUluVpp74L*|%gH6FUa(nQiV4Jn! z2fmgpKX>Z`l9RWBP-&<NTrCpINZ$mbYcRq|5k`A4!c!IClqZaix(Nql_+NvC4b<@@ z@;q^gAd0V*zE+7>;k8P^{MAj@|LDMVuM}9Cw8Eeulx3)xe<7BYlvU57ua=T|{^vF| z3)yjuL7aPR)7TEe<yh0$jtmRqS*oL!7K(~cppd-33m1b=R+;o#>gPwfY|oso#Smd= z&Cq(X`B34|`V80N-5(2^7|{*D144B7j_wG#4~c1HlDQSni!1@t%z@lX&XmwfCla0{ z5`JBJ9jAG(3$Hf_cJj_b3pvo_adfU&hcn3)WDmSolCi}fuQEN*+$w63$x;wk#k~Na z{d5f#(Fx-W5a&mYZdvi1gh6>-9l;>v1^aOwpo>+&?=ZHL872Up=s84AV?k*tS-`i( zM<wm6@nuT-=CZpFRy^PFFHWN_?`-buXc0H8-_X}0ZY<n5zeV(Q`}$kN&_$tnE#h$X zaC3_|78pykh~we$p%(E_$Dy7U@o3l4?JeTO_K9$dIN3WHY!Oc`KiSqIo^Cna-6EcA zJlE19p6@=7b&&b>;0j<gS6qb)@PLG9Kd!?VEke*+Bw|-MQXwuf@`>ZP4q&tmNdwvu z81;*NxI!2OAYmM1Vidw1sP{1%fuPW)!)Px)+e<#PizCafh>#)hB(fZ$v<=N0Xoy1f z(~;o~JSTS<<T7rMtGc_WK{j-ESq3@!T0`&q*WCS-pR_jpYa!iY+i}@P7caw(r6r{c zXOY*%mec<A8!x?nm)Y2788QP!P`QirpKodWD2~)hgjVMh4aCIp%tj!I{|zVYYU*{^ zjTrk2WiM3YRd@l$&a-`oeRxH?Ln{ugA)Fj4KC~voCHbjh7EbeMr}&gUa<9^$^jV0> z8<9Cp97iHZGbpIEi8mnYrSivnF&SsrI6u^Lua*_J8MvGXpP;GXiG~x23{H5Ti>lr$ z^Fi8MQ9;w*ZDIp#jfw>Cq##_Ak>&BDK1LL`E2nI!fw5fb)Q(dWxlYxbiewlVKfmA# za^L_KLrzD9v;e5GK-@=xV1c-Uj5CD9PaLz<gacWmC1jP;ji+xQE1WJleS@VaejMPj zyPZ&?PPrQw+gyTkVVto!KW)vk`N^u2jb!ta7oBXhHs^g6M|AZ29r1CVfKyEV?^^uN zy67=G1Vq}$_?bbHw2jG6gsd=nrt}Q#{)}*@TCjT`ZuM}tXF+hhcRWZ)8ecIU%+Lxi zyq$4{-E2jcc{roR+Cg0!#?c-*lEX7_AcRJn7o```ZGTaCu}QGIYw5Jg(TzqDK=Ude z${C+HM%BxjYh!j-kKugRJ4e2B;WyrW%!Ln5bSM%wlaneLhkxWbE{+9f%g!RTI4hj3 z5zMV8iuWG-!>1nd`!$?c$_c<li49KHXI1n8pNsnoC8>&yrE8=nY2`{heo$HI_-t82 zgS3czx_h^jo`?_0)Fn$`Zoe=2y)+B2f4GxppVnhuy!nF!6GP#$%ZPCfmk(DG{?YEK zv^z(Pcivk|i!j|n=b5P_u7zE)I+Zmq`>oK;dl}rsd9}nM<oPw{X@opqb3QXd^4^E{ zjR<3Fac!bHn~hEp#u<3SPfz&*F4wlsd*R@Cu$1%&8gbE77w;uxoZ(~qP}Yrtt~H&< z%z#&kEPN#*<dtYKK(u(TA>)jNc@Hz6cozVm7hol_3hNSYx5Uf)o%!yr0Am%Fa#%l^ zD~BIld6fCB=#{iugtv-8GPbtlk2QP9)gXvTQ>Q)1H1=3~?tySI&fuH(K=VPwWZR^V zFg;l{>C1o!e#YiOMN*A&;BH4CX}40!c0@OfGsxi0;Cuqy3h{5X#LrspT>MQ(Ya6d0 zsyt6~3qX+5r}<|R$v9drYgs&tyrRaSwIJ`lTlDjWy{j6=5frL;8iD%Ii0VT#h*&@$ NA|l3i&!4*K{|EH!_F@14 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h deleted file mode 100644 index edc1c36a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h +++ /dev/null @@ -1,982 +0,0 @@ -#ifndef TREE_SITTER_API_H_ -#define TREE_SITTER_API_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include <stdio.h> -#include <stdlib.h> -#include <stdint.h> -#include <stdbool.h> - -/****************************/ -/* Section - ABI Versioning */ -/****************************/ - -/** - * The latest ABI version that is supported by the current version of the - * library. When Languages are generated by the Tree-sitter CLI, they are - * assigned an ABI version number that corresponds to the current CLI version. - * The Tree-sitter library is generally backwards-compatible with languages - * generated using older CLI versions, but is not forwards-compatible. - */ -#define TREE_SITTER_LANGUAGE_VERSION 14 - -/** - * The earliest ABI version that is supported by the current version of the - * library. - */ -#define TREE_SITTER_MIN_COMPATIBLE_LANGUAGE_VERSION 13 - -/*******************/ -/* Section - Types */ -/*******************/ - -typedef uint16_t TSSymbol; -typedef uint16_t TSFieldId; -typedef struct TSLanguage TSLanguage; -typedef struct TSParser TSParser; -typedef struct TSTree TSTree; -typedef struct TSQuery TSQuery; -typedef struct TSQueryCursor TSQueryCursor; - -typedef enum { - TSInputEncodingUTF8, - TSInputEncodingUTF16, -} TSInputEncoding; - -typedef enum { - TSSymbolTypeRegular, - TSSymbolTypeAnonymous, - TSSymbolTypeAuxiliary, -} TSSymbolType; - -typedef struct { - uint32_t row; - uint32_t column; -} TSPoint; - -typedef struct { - TSPoint start_point; - TSPoint end_point; - uint32_t start_byte; - uint32_t end_byte; -} TSRange; - -typedef struct { - void *payload; - const char *(*read)(void *payload, uint32_t byte_index, TSPoint position, uint32_t *bytes_read); - TSInputEncoding encoding; -} TSInput; - -typedef enum { - TSLogTypeParse, - TSLogTypeLex, -} TSLogType; - -typedef struct { - void *payload; - void (*log)(void *payload, TSLogType, const char *); -} TSLogger; - -typedef struct { - uint32_t start_byte; - uint32_t old_end_byte; - uint32_t new_end_byte; - TSPoint start_point; - TSPoint old_end_point; - TSPoint new_end_point; -} TSInputEdit; - -typedef struct { - uint32_t context[4]; - const void *id; - const TSTree *tree; -} TSNode; - -typedef struct { - const void *tree; - const void *id; - uint32_t context[2]; -} TSTreeCursor; - -typedef struct { - TSNode node; - uint32_t index; -} TSQueryCapture; - -typedef enum { - TSQuantifierZero = 0, // must match the array initialization value - TSQuantifierZeroOrOne, - TSQuantifierZeroOrMore, - TSQuantifierOne, - TSQuantifierOneOrMore, -} TSQuantifier; - -typedef struct { - uint32_t id; - uint16_t pattern_index; - uint16_t capture_count; - const TSQueryCapture *captures; -} TSQueryMatch; - -typedef enum { - TSQueryPredicateStepTypeDone, - TSQueryPredicateStepTypeCapture, - TSQueryPredicateStepTypeString, -} TSQueryPredicateStepType; - -typedef struct { - TSQueryPredicateStepType type; - uint32_t value_id; -} TSQueryPredicateStep; - -typedef enum { - TSQueryErrorNone = 0, - TSQueryErrorSyntax, - TSQueryErrorNodeType, - TSQueryErrorField, - TSQueryErrorCapture, - TSQueryErrorStructure, - TSQueryErrorLanguage, -} TSQueryError; - -/********************/ -/* Section - Parser */ -/********************/ - -/** - * Create a new parser. - */ -TSParser *ts_parser_new(void); - -/** - * Delete the parser, freeing all of the memory that it used. - */ -void ts_parser_delete(TSParser *parser); - -/** - * Set the language that the parser should use for parsing. - * - * Returns a boolean indicating whether or not the language was successfully - * assigned. True means assignment succeeded. False means there was a version - * mismatch: the language was generated with an incompatible version of the - * Tree-sitter CLI. Check the language's version using `ts_language_version` - * and compare it to this library's `TREE_SITTER_LANGUAGE_VERSION` and - * `TREE_SITTER_MIN_COMPATIBLE_LANGUAGE_VERSION` constants. - */ -bool ts_parser_set_language(TSParser *self, const TSLanguage *language); - -/** - * Get the parser's current language. - */ -const TSLanguage *ts_parser_language(const TSParser *self); - -/** - * Set the ranges of text that the parser should include when parsing. - * - * By default, the parser will always include entire documents. This function - * allows you to parse only a *portion* of a document but still return a syntax - * tree whose ranges match up with the document as a whole. You can also pass - * multiple disjoint ranges. - * - * The second and third parameters specify the location and length of an array - * of ranges. The parser does *not* take ownership of these ranges; it copies - * the data, so it doesn't matter how these ranges are allocated. - * - * If `length` is zero, then the entire document will be parsed. Otherwise, - * the given ranges must be ordered from earliest to latest in the document, - * and they must not overlap. That is, the following must hold for all - * `i` < `length - 1`: ranges[i].end_byte <= ranges[i + 1].start_byte - * - * If this requirement is not satisfied, the operation will fail, the ranges - * will not be assigned, and this function will return `false`. On success, - * this function returns `true` - */ -bool ts_parser_set_included_ranges( - TSParser *self, - const TSRange *ranges, - uint32_t length -); - -/** - * Get the ranges of text that the parser will include when parsing. - * - * The returned pointer is owned by the parser. The caller should not free it - * or write to it. The length of the array will be written to the given - * `length` pointer. - */ -const TSRange *ts_parser_included_ranges( - const TSParser *self, - uint32_t *length -); - -/** - * Use the parser to parse some source code and create a syntax tree. - * - * If you are parsing this document for the first time, pass `NULL` for the - * `old_tree` parameter. Otherwise, if you have already parsed an earlier - * version of this document and the document has since been edited, pass the - * previous syntax tree so that the unchanged parts of it can be reused. - * This will save time and memory. For this to work correctly, you must have - * already edited the old syntax tree using the `ts_tree_edit` function in a - * way that exactly matches the source code changes. - * - * The `TSInput` parameter lets you specify how to read the text. It has the - * following three fields: - * 1. `read`: A function to retrieve a chunk of text at a given byte offset - * and (row, column) position. The function should return a pointer to the - * text and write its length to the `bytes_read` pointer. The parser does - * not take ownership of this buffer; it just borrows it until it has - * finished reading it. The function should write a zero value to the - * `bytes_read` pointer to indicate the end of the document. - * 2. `payload`: An arbitrary pointer that will be passed to each invocation - * of the `read` function. - * 3. `encoding`: An indication of how the text is encoded. Either - * `TSInputEncodingUTF8` or `TSInputEncodingUTF16`. - * - * This function returns a syntax tree on success, and `NULL` on failure. There - * are three possible reasons for failure: - * 1. The parser does not have a language assigned. Check for this using the - `ts_parser_language` function. - * 2. Parsing was cancelled due to a timeout that was set by an earlier call to - * the `ts_parser_set_timeout_micros` function. You can resume parsing from - * where the parser left out by calling `ts_parser_parse` again with the - * same arguments. Or you can start parsing from scratch by first calling - * `ts_parser_reset`. - * 3. Parsing was cancelled using a cancellation flag that was set by an - * earlier call to `ts_parser_set_cancellation_flag`. You can resume parsing - * from where the parser left out by calling `ts_parser_parse` again with - * the same arguments. - */ -TSTree *ts_parser_parse( - TSParser *self, - const TSTree *old_tree, - TSInput input -); - -/** - * Use the parser to parse some source code stored in one contiguous buffer. - * The first two parameters are the same as in the `ts_parser_parse` function - * above. The second two parameters indicate the location of the buffer and its - * length in bytes. - */ -TSTree *ts_parser_parse_string( - TSParser *self, - const TSTree *old_tree, - const char *string, - uint32_t length -); - -/** - * Use the parser to parse some source code stored in one contiguous buffer with - * a given encoding. The first four parameters work the same as in the - * `ts_parser_parse_string` method above. The final parameter indicates whether - * the text is encoded as UTF8 or UTF16. - */ -TSTree *ts_parser_parse_string_encoding( - TSParser *self, - const TSTree *old_tree, - const char *string, - uint32_t length, - TSInputEncoding encoding -); - -/** - * Instruct the parser to start the next parse from the beginning. - * - * If the parser previously failed because of a timeout or a cancellation, then - * by default, it will resume where it left off on the next call to - * `ts_parser_parse` or other parsing functions. If you don't want to resume, - * and instead intend to use this parser to parse some other document, you must - * call `ts_parser_reset` first. - */ -void ts_parser_reset(TSParser *self); - -/** - * Set the maximum duration in microseconds that parsing should be allowed to - * take before halting. - * - * If parsing takes longer than this, it will halt early, returning NULL. - * See `ts_parser_parse` for more information. - */ -void ts_parser_set_timeout_micros(TSParser *self, uint64_t timeout); - -/** - * Get the duration in microseconds that parsing is allowed to take. - */ -uint64_t ts_parser_timeout_micros(const TSParser *self); - -/** - * Set the parser's current cancellation flag pointer. - * - * If a non-null pointer is assigned, then the parser will periodically read - * from this pointer during parsing. If it reads a non-zero value, it will - * halt early, returning NULL. See `ts_parser_parse` for more information. - */ -void ts_parser_set_cancellation_flag(TSParser *self, const size_t *flag); - -/** - * Get the parser's current cancellation flag pointer. - */ -const size_t *ts_parser_cancellation_flag(const TSParser *self); - -/** - * Set the logger that a parser should use during parsing. - * - * The parser does not take ownership over the logger payload. If a logger was - * previously assigned, the caller is responsible for releasing any memory - * owned by the previous logger. - */ -void ts_parser_set_logger(TSParser *self, TSLogger logger); - -/** - * Get the parser's current logger. - */ -TSLogger ts_parser_logger(const TSParser *self); - -/** - * Set the file descriptor to which the parser should write debugging graphs - * during parsing. The graphs are formatted in the DOT language. You may want - * to pipe these graphs directly to a `dot(1)` process in order to generate - * SVG output. You can turn off this logging by passing a negative number. - */ -void ts_parser_print_dot_graphs(TSParser *self, int file); - -/******************/ -/* Section - Tree */ -/******************/ - -/** - * Create a shallow copy of the syntax tree. This is very fast. - * - * You need to copy a syntax tree in order to use it on more than one thread at - * a time, as syntax trees are not thread safe. - */ -TSTree *ts_tree_copy(const TSTree *self); - -/** - * Delete the syntax tree, freeing all of the memory that it used. - */ -void ts_tree_delete(TSTree *self); - -/** - * Get the root node of the syntax tree. - */ -TSNode ts_tree_root_node(const TSTree *self); - -/** - * Get the root node of the syntax tree, but with its position - * shifted forward by the given offset. - */ -TSNode ts_tree_root_node_with_offset( - const TSTree *self, - uint32_t offset_bytes, - TSPoint offset_point -); - -/** - * Get the language that was used to parse the syntax tree. - */ -const TSLanguage *ts_tree_language(const TSTree *); - -/** - * Get the array of included ranges that was used to parse the syntax tree. - * - * The returned pointer must be freed by the caller. - */ -TSRange *ts_tree_included_ranges(const TSTree *, uint32_t *length); - -/** - * Edit the syntax tree to keep it in sync with source code that has been - * edited. - * - * You must describe the edit both in terms of byte offsets and in terms of - * (row, column) coordinates. - */ -void ts_tree_edit(TSTree *self, const TSInputEdit *edit); - -/** - * Compare an old edited syntax tree to a new syntax tree representing the same - * document, returning an array of ranges whose syntactic structure has changed. - * - * For this to work correctly, the old syntax tree must have been edited such - * that its ranges match up to the new tree. Generally, you'll want to call - * this function right after calling one of the `ts_parser_parse` functions. - * You need to pass the old tree that was passed to parse, as well as the new - * tree that was returned from that function. - * - * The returned array is allocated using `malloc` and the caller is responsible - * for freeing it using `free`. The length of the array will be written to the - * given `length` pointer. - */ -TSRange *ts_tree_get_changed_ranges( - const TSTree *old_tree, - const TSTree *new_tree, - uint32_t *length -); - -/** - * Write a DOT graph describing the syntax tree to the given file. - */ -void ts_tree_print_dot_graph(const TSTree *, int file_descriptor); - -/******************/ -/* Section - Node */ -/******************/ - -/** - * Get the node's type as a null-terminated string. - */ -const char *ts_node_type(TSNode); - -/** - * Get the node's type as a numerical id. - */ -TSSymbol ts_node_symbol(TSNode); - -/** - * Get the node's start byte. - */ -uint32_t ts_node_start_byte(TSNode); - -/** - * Get the node's start position in terms of rows and columns. - */ -TSPoint ts_node_start_point(TSNode); - -/** - * Get the node's end byte. - */ -uint32_t ts_node_end_byte(TSNode); - -/** - * Get the node's end position in terms of rows and columns. - */ -TSPoint ts_node_end_point(TSNode); - -/** - * Get an S-expression representing the node as a string. - * - * This string is allocated with `malloc` and the caller is responsible for - * freeing it using `free`. - */ -char *ts_node_string(TSNode); - -/** - * Check if the node is null. Functions like `ts_node_child` and - * `ts_node_next_sibling` will return a null node to indicate that no such node - * was found. - */ -bool ts_node_is_null(TSNode); - -/** - * Check if the node is *named*. Named nodes correspond to named rules in the - * grammar, whereas *anonymous* nodes correspond to string literals in the - * grammar. - */ -bool ts_node_is_named(TSNode); - -/** - * Check if the node is *missing*. Missing nodes are inserted by the parser in - * order to recover from certain kinds of syntax errors. - */ -bool ts_node_is_missing(TSNode); - -/** - * Check if the node is *extra*. Extra nodes represent things like comments, - * which are not required the grammar, but can appear anywhere. - */ -bool ts_node_is_extra(TSNode); - -/** - * Check if a syntax node has been edited. - */ -bool ts_node_has_changes(TSNode); - -/** - * Check if the node is a syntax error or contains any syntax errors. - */ -bool ts_node_has_error(TSNode); - -/** - * Get the node's immediate parent. - */ -TSNode ts_node_parent(TSNode); - -/** - * Get the node's child at the given index, where zero represents the first - * child. - */ -TSNode ts_node_child(TSNode, uint32_t); - -/** - * Get the field name for node's child at the given index, where zero represents - * the first child. Returns NULL, if no field is found. - */ -const char *ts_node_field_name_for_child(TSNode, uint32_t); - -/** - * Get the node's number of children. - */ -uint32_t ts_node_child_count(TSNode); - -/** - * Get the node's *named* child at the given index. - * - * See also `ts_node_is_named`. - */ -TSNode ts_node_named_child(TSNode, uint32_t); - -/** - * Get the node's number of *named* children. - * - * See also `ts_node_is_named`. - */ -uint32_t ts_node_named_child_count(TSNode); - -/** - * Get the node's child with the given field name. - */ -TSNode ts_node_child_by_field_name( - TSNode self, - const char *field_name, - uint32_t field_name_length -); - -/** - * Get the node's child with the given numerical field id. - * - * You can convert a field name to an id using the - * `ts_language_field_id_for_name` function. - */ -TSNode ts_node_child_by_field_id(TSNode, TSFieldId); - -/** - * Get the node's next / previous sibling. - */ -TSNode ts_node_next_sibling(TSNode); -TSNode ts_node_prev_sibling(TSNode); - -/** - * Get the node's next / previous *named* sibling. - */ -TSNode ts_node_next_named_sibling(TSNode); -TSNode ts_node_prev_named_sibling(TSNode); - -/** - * Get the node's first child that extends beyond the given byte offset. - */ -TSNode ts_node_first_child_for_byte(TSNode, uint32_t); - -/** - * Get the node's first named child that extends beyond the given byte offset. - */ -TSNode ts_node_first_named_child_for_byte(TSNode, uint32_t); - -/** - * Get the smallest node within this node that spans the given range of bytes - * or (row, column) positions. - */ -TSNode ts_node_descendant_for_byte_range(TSNode, uint32_t, uint32_t); -TSNode ts_node_descendant_for_point_range(TSNode, TSPoint, TSPoint); - -/** - * Get the smallest named node within this node that spans the given range of - * bytes or (row, column) positions. - */ -TSNode ts_node_named_descendant_for_byte_range(TSNode, uint32_t, uint32_t); -TSNode ts_node_named_descendant_for_point_range(TSNode, TSPoint, TSPoint); - -/** - * Edit the node to keep it in-sync with source code that has been edited. - * - * This function is only rarely needed. When you edit a syntax tree with the - * `ts_tree_edit` function, all of the nodes that you retrieve from the tree - * afterward will already reflect the edit. You only need to use `ts_node_edit` - * when you have a `TSNode` instance that you want to keep and continue to use - * after an edit. - */ -void ts_node_edit(TSNode *, const TSInputEdit *); - -/** - * Check if two nodes are identical. - */ -bool ts_node_eq(TSNode, TSNode); - -/************************/ -/* Section - TreeCursor */ -/************************/ - -/** - * Create a new tree cursor starting from the given node. - * - * A tree cursor allows you to walk a syntax tree more efficiently than is - * possible using the `TSNode` functions. It is a mutable object that is always - * on a certain syntax node, and can be moved imperatively to different nodes. - */ -TSTreeCursor ts_tree_cursor_new(TSNode); - -/** - * Delete a tree cursor, freeing all of the memory that it used. - */ -void ts_tree_cursor_delete(TSTreeCursor *); - -/** - * Re-initialize a tree cursor to start at a different node. - */ -void ts_tree_cursor_reset(TSTreeCursor *, TSNode); - -/** - * Get the tree cursor's current node. - */ -TSNode ts_tree_cursor_current_node(const TSTreeCursor *); - -/** - * Get the field name of the tree cursor's current node. - * - * This returns `NULL` if the current node doesn't have a field. - * See also `ts_node_child_by_field_name`. - */ -const char *ts_tree_cursor_current_field_name(const TSTreeCursor *); - -/** - * Get the field id of the tree cursor's current node. - * - * This returns zero if the current node doesn't have a field. - * See also `ts_node_child_by_field_id`, `ts_language_field_id_for_name`. - */ -TSFieldId ts_tree_cursor_current_field_id(const TSTreeCursor *); - -/** - * Move the cursor to the parent of its current node. - * - * This returns `true` if the cursor successfully moved, and returns `false` - * if there was no parent node (the cursor was already on the root node). - */ -bool ts_tree_cursor_goto_parent(TSTreeCursor *); - -/** - * Move the cursor to the next sibling of its current node. - * - * This returns `true` if the cursor successfully moved, and returns `false` - * if there was no next sibling node. - */ -bool ts_tree_cursor_goto_next_sibling(TSTreeCursor *); - -/** - * Move the cursor to the first child of its current node. - * - * This returns `true` if the cursor successfully moved, and returns `false` - * if there were no children. - */ -bool ts_tree_cursor_goto_first_child(TSTreeCursor *); - -/** - * Move the cursor to the first child of its current node that extends beyond - * the given byte offset or point. - * - * This returns the index of the child node if one was found, and returns -1 - * if no such child was found. - */ -int64_t ts_tree_cursor_goto_first_child_for_byte(TSTreeCursor *, uint32_t); -int64_t ts_tree_cursor_goto_first_child_for_point(TSTreeCursor *, TSPoint); - -TSTreeCursor ts_tree_cursor_copy(const TSTreeCursor *); - -/*******************/ -/* Section - Query */ -/*******************/ - -/** - * Create a new query from a string containing one or more S-expression - * patterns. The query is associated with a particular language, and can - * only be run on syntax nodes parsed with that language. - * - * If all of the given patterns are valid, this returns a `TSQuery`. - * If a pattern is invalid, this returns `NULL`, and provides two pieces - * of information about the problem: - * 1. The byte offset of the error is written to the `error_offset` parameter. - * 2. The type of error is written to the `error_type` parameter. - */ -TSQuery *ts_query_new( - const TSLanguage *language, - const char *source, - uint32_t source_len, - uint32_t *error_offset, - TSQueryError *error_type -); - -/** - * Delete a query, freeing all of the memory that it used. - */ -void ts_query_delete(TSQuery *); - -/** - * Get the number of patterns, captures, or string literals in the query. - */ -uint32_t ts_query_pattern_count(const TSQuery *); -uint32_t ts_query_capture_count(const TSQuery *); -uint32_t ts_query_string_count(const TSQuery *); - -/** - * Get the byte offset where the given pattern starts in the query's source. - * - * This can be useful when combining queries by concatenating their source - * code strings. - */ -uint32_t ts_query_start_byte_for_pattern(const TSQuery *, uint32_t); - -/** - * Get all of the predicates for the given pattern in the query. - * - * The predicates are represented as a single array of steps. There are three - * types of steps in this array, which correspond to the three legal values for - * the `type` field: - * - `TSQueryPredicateStepTypeCapture` - Steps with this type represent names - * of captures. Their `value_id` can be used with the - * `ts_query_capture_name_for_id` function to obtain the name of the capture. - * - `TSQueryPredicateStepTypeString` - Steps with this type represent literal - * strings. Their `value_id` can be used with the - * `ts_query_string_value_for_id` function to obtain their string value. - * - `TSQueryPredicateStepTypeDone` - Steps with this type are *sentinels* - * that represent the end of an individual predicate. If a pattern has two - * predicates, then there will be two steps with this `type` in the array. - */ -const TSQueryPredicateStep *ts_query_predicates_for_pattern( - const TSQuery *self, - uint32_t pattern_index, - uint32_t *length -); - -/* - * Check if the given pattern in the query has a single root node. - */ -bool ts_query_is_pattern_rooted(const TSQuery *self, uint32_t pattern_index); - -/* - * Check if the given pattern in the query is 'non local'. - * - * A non-local pattern has multiple root nodes and can match within a - * repeating sequence of nodes, as specified by the grammar. Non-local - * patterns disable certain optimizations that would otherwise be possible - * when executing a query on a specific range of a syntax tree. - */ -bool ts_query_is_pattern_non_local(const TSQuery *self, uint32_t pattern_index); - -/* - * Check if a given pattern is guaranteed to match once a given step is reached. - * The step is specified by its byte offset in the query's source code. - */ -bool ts_query_is_pattern_guaranteed_at_step(const TSQuery *self, uint32_t byte_offset); - -/** - * Get the name and length of one of the query's captures, or one of the - * query's string literals. Each capture and string is associated with a - * numeric id based on the order that it appeared in the query's source. - */ -const char *ts_query_capture_name_for_id( - const TSQuery *, - uint32_t id, - uint32_t *length -); - -/** - * Get the quantifier of the query's captures. Each capture is * associated - * with a numeric id based on the order that it appeared in the query's source. - */ -TSQuantifier ts_query_capture_quantifier_for_id( - const TSQuery *, - uint32_t pattern_id, - uint32_t capture_id -); - -const char *ts_query_string_value_for_id( - const TSQuery *, - uint32_t id, - uint32_t *length -); - -/** - * Disable a certain capture within a query. - * - * This prevents the capture from being returned in matches, and also avoids - * any resource usage associated with recording the capture. Currently, there - * is no way to undo this. - */ -void ts_query_disable_capture(TSQuery *, const char *, uint32_t); - -/** - * Disable a certain pattern within a query. - * - * This prevents the pattern from matching and removes most of the overhead - * associated with the pattern. Currently, there is no way to undo this. - */ -void ts_query_disable_pattern(TSQuery *, uint32_t); - -/** - * Create a new cursor for executing a given query. - * - * The cursor stores the state that is needed to iteratively search - * for matches. To use the query cursor, first call `ts_query_cursor_exec` - * to start running a given query on a given syntax node. Then, there are - * two options for consuming the results of the query: - * 1. Repeatedly call `ts_query_cursor_next_match` to iterate over all of the - * *matches* in the order that they were found. Each match contains the - * index of the pattern that matched, and an array of captures. Because - * multiple patterns can match the same set of nodes, one match may contain - * captures that appear *before* some of the captures from a previous match. - * 2. Repeatedly call `ts_query_cursor_next_capture` to iterate over all of the - * individual *captures* in the order that they appear. This is useful if - * don't care about which pattern matched, and just want a single ordered - * sequence of captures. - * - * If you don't care about consuming all of the results, you can stop calling - * `ts_query_cursor_next_match` or `ts_query_cursor_next_capture` at any point. - * You can then start executing another query on another node by calling - * `ts_query_cursor_exec` again. - */ -TSQueryCursor *ts_query_cursor_new(void); - -/** - * Delete a query cursor, freeing all of the memory that it used. - */ -void ts_query_cursor_delete(TSQueryCursor *); - -/** - * Start running a given query on a given node. - */ -void ts_query_cursor_exec(TSQueryCursor *, const TSQuery *, TSNode); - -/** - * Manage the maximum number of in-progress matches allowed by this query - * cursor. - * - * Query cursors have an optional maximum capacity for storing lists of - * in-progress captures. If this capacity is exceeded, then the - * earliest-starting match will silently be dropped to make room for further - * matches. This maximum capacity is optional — by default, query cursors allow - * any number of pending matches, dynamically allocating new space for them as - * needed as the query is executed. - */ -bool ts_query_cursor_did_exceed_match_limit(const TSQueryCursor *); -uint32_t ts_query_cursor_match_limit(const TSQueryCursor *); -void ts_query_cursor_set_match_limit(TSQueryCursor *, uint32_t); - -/** - * Set the range of bytes or (row, column) positions in which the query - * will be executed. - */ -void ts_query_cursor_set_byte_range(TSQueryCursor *, uint32_t, uint32_t); -void ts_query_cursor_set_point_range(TSQueryCursor *, TSPoint, TSPoint); - -/** - * Advance to the next match of the currently running query. - * - * If there is a match, write it to `*match` and return `true`. - * Otherwise, return `false`. - */ -bool ts_query_cursor_next_match(TSQueryCursor *, TSQueryMatch *match); -void ts_query_cursor_remove_match(TSQueryCursor *, uint32_t id); - -/** - * Advance to the next capture of the currently running query. - * - * If there is a capture, write its match to `*match` and its index within - * the matche's capture list to `*capture_index`. Otherwise, return `false`. - */ -bool ts_query_cursor_next_capture( - TSQueryCursor *, - TSQueryMatch *match, - uint32_t *capture_index -); - -/**********************/ -/* Section - Language */ -/**********************/ - -/** - * Get the number of distinct node types in the language. - */ -uint32_t ts_language_symbol_count(const TSLanguage *); - -/** - * Get a node type string for the given numerical id. - */ -const char *ts_language_symbol_name(const TSLanguage *, TSSymbol); - -/** - * Get the numerical id for the given node type string. - */ -TSSymbol ts_language_symbol_for_name( - const TSLanguage *self, - const char *string, - uint32_t length, - bool is_named -); - -/** - * Get the number of distinct field names in the language. - */ -uint32_t ts_language_field_count(const TSLanguage *); - -/** - * Get the field name string for the given numerical id. - */ -const char *ts_language_field_name_for_id(const TSLanguage *, TSFieldId); - -/** - * Get the numerical id for the given field name string. - */ -TSFieldId ts_language_field_id_for_name(const TSLanguage *, const char *, uint32_t); - -/** - * Check whether the given node type id belongs to named nodes, anonymous nodes, - * or a hidden nodes. - * - * See also `ts_node_is_named`. Hidden nodes are never returned from the API. - */ -TSSymbolType ts_language_symbol_type(const TSLanguage *, TSSymbol); - -/** - * Get the ABI version number for this language. This version number is used - * to ensure that languages were generated by a compatible version of - * Tree-sitter. - * - * See also `ts_parser_set_language`. - */ -uint32_t ts_language_version(const TSLanguage *); - -/**********************************/ -/* Section - Global Configuration */ -/**********************************/ - -/** - * Set the allocation functions used by the library. - * - * By default, Tree-sitter uses the standard libc allocation functions, - * but aborts the process when an allocation fails. This function lets - * you supply alternative allocation functions at runtime. - * - * If you pass `NULL` for any parameter, Tree-sitter will switch back to - * its default implementation of that function. - * - * If you call this function after the library has already been used, then - * you must ensure that either: - * 1. All the existing objects have been freed. - * 2. The new allocator shares its state with the old one, so it is capable - * of freeing memory that was allocated by the old allocator. - */ -void ts_set_allocator( - void *(*new_malloc)(size_t), - void *(*new_calloc)(size_t, size_t), - void *(*new_realloc)(void *, size_t), - void (*new_free)(void *) -); - -#ifdef __cplusplus -} -#endif - -#endif // TREE_SITTER_API_H_ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@tree_sitter@api.h.blob deleted file mode 100644 index 721c0686eac0d7ed97aa401209c5cd865d6bfc91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58835 zcmch=34B!5`8PgyW^fsiMv4$4#t{)n%mNq@*+h0QK!AWzfn+i>Nd_h}ab}VbcP&~_ zQ9-TJDoXij5sF)>ORZ?#_q}dataYioZMBQmc>mw$Im=z<CgA)3y)Pec=6aWNp7We% zf1Y!0sqg!<HuinWXZR{x(yj5zWaYGYc4aQzR+)=ubCt1ptTLO4R<=eGsfwsC5KTr> z&3pA|d1pGaGLdR7k0mnkXfB=Un%H9xzV0%kvOSxrOr)a8_E@}f(X{H(m5uS{M5;cT zj>RileBTcXuX)PxOf=Wk#&^E{VyyE{V<MNWq`TS5`uf(!Y%Y?E*XO7a{b(}LSjl6l z95qJw8fjgXNaZpZDIR?)QTMc?KZXf^>YLjWF;9qQR#!GB+v!%pE4M${!^^;Gd&YZ2 zP4Nib%Q_%cC~1x4S{ygLhtRR=*ioaK+D47(Wh9IrnwFFkDXJ^J-`E8L=!~@OxzB7a z)|gHw>A^gtaZ_#SY+}{u`edTj(U_yVNG{!)h}L%|VsT7)dny;t=!bhF%%(&#Uf-BW zcV@*4Beym7Fm2Jc_C%^FO|5EL>IH{@Jdy+f?wKC4?U|-X)SA-Xz-@^q6RQY>Tkl-% zgfmMWHR~}GH+VwV+>}c60u>`%(0(@2+!0B-2;YHp@mwy^8qe4s>ka;RM}jB1@2>ey z@HKbj((O?uRE=aumrZTu$#iq$p2rzsO73WE?QOK#u54vA7H{%q89Od=nf7R|e#Y$T z>5i@yY#MwPbaoO^PuLoZrqe4E@%lu%zNtMG%_Y*QtPOp3ImQx!Iy|*;YA-UX2^`{T z!E^3ATU+-u^_cW*Ze{ii&r!Cg5@1%(TejhOOH73abdZWL4QOGiZgCsgXiI#LU36j? zdo$p+bXzo)>t)P(-XP3kLIN<|^-9C7kth?)n@7)e5;1XtCw6o<=p_+h{h-O)bEfL+ zfoKqBeQRV@eIyB-iQ#$+NTsW2^5Sm9II!CshicA2LJAeaQ_$O3vmG>^FQ%U89H<@- zphWxhj2@5bk9dm#b6~`Cv`wqB5MFtb((_r#*KMQmLOhd&Y48KzOzw?#qnR92<$zp` zOOHL8OtdwoBN=aH&cqCjkxP|BCxHlaU5@5F2iKNqine$OEYGJUDpGj@y|)={%EaUK z&B?Ad7P6(`7U#?g9wZ?UiLTr;z!HRHW7D2322dv{(DEqcUCt?SdmA1kIL$Q(guu}Z z(90`{rq)PD(&HU9g*-@$6}<(KVya|18i9@AG<7_CM~|A|HJpw<p}m?SS!Yv@2VnHZ zvWYXir3f(_+aGxVYnogc?{XNty-`9Al#os2q^0z&85NY^IkdK3HHYrLHIele2KotM zr_oI235@1cdnJt9#%y^HoEOQqR>m`#6yspTx0gCiWI?&{+=|w{usM|!Vf_$0eb3aQ zCsyO$6Hgs&(PV3T^7Pp09^~iwMrS0EYg_4MD0)7g^_&RLM=?eZAROezmUTTef`il5 zBatkOV(V6Kw3Ljm656xqv$#{BVA9H)<EeNi5fzhH-WbU;edo=fCX#epJk`uLLLQOW zST_~VI;Dt$o0XCUcaNs9^_=EbPeiWDMmplrJ>gQx3o^#WRPBwtzyx&&;XT%)aZga9 zakskbZB|+$*_Kw}f{lsI>xI2B&k0x=XT&|=P*~No0~wRA_B^3g+QE|>RJ($2g?*jr zgtT?49rc**o;)_#7P&ZkgWd!JXrkpU@d!-1a%eIe5!<b6NlP7xOghyH741z;{1lwO za+p@0Y{Cyn!-^To^C^G?Ht@W~4YcK2G60yVs63JpK9CkRd01#nLVvaP6x$%%s~vha z7hly2%uvXpQ%|TA!s(_rmhpas-51CEy--5a-jEmEJKbe(#GTBtoWE;eZ+a_}b9+3! zHEB5k$<bbRkybu=^Mcp}f<_KJs43&w6~X~NI(d;~rstVgj>og{Bn;c0o1<V3tdgX& zM^DT{$VD=YQ7z;gU6KB2N=BNUO*tM>k_~Y0As|4FQMjz#*_tO{k=P#9lLKq@_0a6~ zjqOeKxri0#=xsXjY?IJR4fCfswGtC|G?~s)w8#}8^n}(^?J6t*$I<e(OdJlIW6nHV zf~D-GOFW;guh%Yny|65(eea2EO6JPrn4j|2c&;Vw?LxySZeO)08%kn5(OfTsYEDA* z1hlg;l}@BO;0)#&>Iz9pp43}1M~fBDHW5zk!Bz8qTm*cC%ipWU5m>NTHqQ{rk3o3$ zn2BJ_ZhhRNwV{-uRQY@5&t#kT$Rkp3AYK56tsc^@Jl2(pAQtMNL^TO{szyK68zUtn z^jObP01D946ML9Xo*>Ve@kB41T^<DG`EWdSdbG7S^0SZJLe^dlKbvT6g9j+IgAgd^ zm7Ug$Ic1SnPpq1bATAJ1x3;ExGYKf}J*vmJcb;WUgUO?1i|r^(>zE}6QBcGq&-3&| zH3c<5y?Ko8`EYA1LRd*yb=0#rHiW!^Fb4fPMU4|cPRMwA<LWsP19$2kb<d`T>-Qp# z+kw~;0<#W$c@A(D<+)tg=#7`=mUI06sS{l3A%+hoTN9Yq+x_P!MB1gkSG#V{VaN`I zq^wLvZ{T)CvZ+K{n=pMh{c^EWjWS3u3*sFxpWT6--kRmvCggtWX=phVe}cx7$+pFv zBF%F)gpj2GkZVeM6wA5ns$?ujsm45lR-~g@Xhj-+M?yF#z010sr@i0_a%&oDbFcY{ zg(4jGy#Y7UF5^YL!x~LCCEK$ty*Jt!ZHZVJHM<w3vD1=>McNXYV|ttZcr1a8E<L(? zMpG|>R7_`EZ+^p`!g$$ieZG0?IT3baD<ZO}T3~s;uxjj>=C-|_Ii>%jd(=|e0P8uJ zuaPd~p+>sr#Iz+Nxu$f++h5i#o!*{sDse^ripf*$tvx%Y(hMO$@|+`;moD!ms;)ah z#<3^ira{fdQ&~Yinz9|h+B8Zcwr8CJ0Y-so*Mr_u?#b7xa}A&sIr9ckB+~K*>e;2B z8w6<b1(fIW9iZL4eKz4a9M5K1@OU+xH+WKF3CoAKlO)fwL%6f4UEdbTM4ZWePZ+W- zUSeGVAV`Q3Qn_+Yyf}!_vq6E|UO5u2F~E+-RF^tr?Rl30(ylt<QOP#Mqjb*K@s1~W z(PS*%n$GQ2R4$p0#Ilx7w_{zCWm{rZT*M6W$WlMk4D*8`N11do>9Q9+VFU_Cdyt#L zkZu>TlipZ%FZ4@Wy3+-a>O=_-uZUMqK%>m1BT3}}UeJ5K1TSAY_*yNv0U!}6gWZnV zbv`FZ6iDmE_9wC_N7PxWNi9=7A#1|qv+UM@c|L}z>cRPRz=wBR%i;6H%46|p67f@{ zWE`XMY`h0dI$Cyce$L78UJpvc(j}PHlbW<z)9oUopsCsuLJU7eqz%)4ugoX-L)l1k zyfMuNd+%){_R$ticxiS|P}+oy^xzxM$Ay^M%On+YXdGo^hi<Qo=H6>$G@4r?Fgv}| zdqS>r0J|JQ8j-N_o`t4(n7uh0sEAxSh)m70^)%8GPC8VNaFtBFlU`pk<gbr$;ao3x zY^3TDs8f1gGmL6Wk2cepZsYFs#H&a4RQV>ToY3C`;qs7@X{v2Zw<D167`G?jND9Yc zGv|Zt`E-2mwR&5wGn4RCFrF<Z&)Cayn$~ut9%x*7*wYARpV1q``k8DrlFEzEs(GL! z$DRV^l;TVG7(uc60d4a%<blg`#q!lDtUb|#%os&6_TE;Dwzfs1t0J+zo?0mhz_Fgv zz!NGZJvw@?nNeufNI@J~@FXLpH+RkoWUW{u%O`t<1W4_@Hj*Po9CXx*Pl3l1BISmr zGW}F9-S$wT($gD1B!&>pM332PGr~JI;T)c<l*vm2_5>^&GoEtI^NqHZGKSZ?2<#=x z+H)pMlTQo8l{b4!`G*8nkDSSmD06`V+s?qC=cu55;4ts4kc=if8(q)#M&h}axCqPr zY^DrYs2PKZ0XPmBu5Q^z(PQPPq-ScQT-$L(&%u6<3UHQW=%v7YRdn9JXRSwXa;5fw zUZ0UQ*#3a8Pv7nr1HSH;1ASMRf3H1#)1>apenJFu%;@@DIG3%b8vb@zM)ggJcrqr+ ztw+G3$>zefi>l?#aA}FJfBy=fZ)O}XwZy})jT_^caJnfRLlr4dlne9wVG4L=!-*6> zrP{`eK3`v-&*<J5=#OKvL1#W3Ek2*QYvf7qzkk-^eQFmi>S}FFCmm2_`BFV19`)3; z2V~G1O=V#LF~zmQr6O`%7S_W=dL7B}vT*$rl%|IhS#ByuLmJ~464kXt@IWk#{&)n< z2?RsKDP$GHM8ILuG{zG&x6Hlh`#TQ4{bTc^Pp{s3Zp%jxnHM)STyojik}u3ryDzxp zg_ZB!AjW(-#(a5T7RG!z#(Y)4k1?M!a@N*gJaACV4z_(V<gj}fav7#Z;Htz|SSY6@ zk_V=H6zzz-$^lw4a&e%r`{KY1KzA{qyEt$GpsP9msKrw|cm7c$&;vBC%lDWL!s<u| zR^5c6vDpiqTnL<97?=X6E(BB;237#7S7*NbR_%u$zAI)CAf4VG&veyC+cStC)u#|> zs*l2|#iEH3wTl+ey{UXFTuS)j3v(m6XiK;h{#X>`podo~->XlcZg^FRuW#S6KHrJ4 z4%jQ0_q3pRv>%qw5#19Ppljrja>=f6rX96Espc?)R1pfz<_9uy5L-B+UMmZ;eHKPq zJ<K3b+YJJmhHxYm<2wvPxHFN1%nea5{Ahf5Ry7k&g5|`k4!9dC!t?QbrZbU^mxVKN zU?LT6Xo@7W@dnJd-~8`w4_#Gz@9?wDEAKiY@vA}KZV~jkDiG>k#kgJtT%X1CS@hdi ztA1_#<)e-?n8A%|ie%D?kopY7g9ow|UM&ol_(GuxKHnlKJ@`FBBCjh6gV#o2(FQSb zvb{A`5~ji%uB0bH(%F*0oDm`zxuMQPG8t}+hf$;!g<%@ANVy3EX<|}t!a$k=SAb|v z&)js&_XGDC={b-XDl>9<10Z0_e7<RX6SK$N(p-bg%EDA~OEV3tMv*});yRfwfEdYP z2E*`QZ9r86sOrENP;xbZst(ivsM@2KpLp1myG<uhkfaef5Qv{q8D~lnF_EvrD1ip% znkJqk%7XigFj`o?BgsYq4MMDK0R^I(fpR)o#-e((DU)s$w8g^#^<^-Q4oL6TH0Vo` zI4)$U_9}!ZXgZp};;9&SVsEM<3`P@-P)64U*{9Os&IquQ4!5Ub#6yX!HC2_sN@ZXi zuu=)ER0d+e%Hx+d{o=WX@ApwyAu<!TBjP3__-g5h(p0=tCLv2kP>QoYS5g+X-=tES zbX46e3wu6<>MZe;c+>rq=!T}cM0Q+4s1I8tECEASF|1>NJoBJw#tk%iCX(sG6in#~ zBh(aWPv#(p&?Le!G{N+=m=R?AQ>g2Sfw3E-L|7<NCi1shE(<lb=faW3bVf~LCLKjY z1Iz*S6v2PCmm&#-1;ae?3bZijJR9mtw}-RsZEcWOktC5Adg+Ke-c?Ij!XRbHH1d0e zG^2OhKm*~1d5f#78(6hOQeC))U@w>moM9guGieq=46NG-lMiGNBC#hC5#}U3mFbCr zGO?jc1+Ud7%_h^1z88)(5%x$RNF0Yz8i`R*#a$O91294?$fTI!LASPpppj;PYQTHw zCl2Wv&x{L&M^%JR<PJ!luqD$RPB*SVs4k0EfgEm*2q9Jx3XdkV!uW}IDx^Vlafk$} z3~x}iRNP{ZbTSrBryz^7X_5<IM96Dm@lY85FlHr7>;j~d$HF84R+Gd;Ey*cH+?A{k z^MISredfJIUFQDpK0Wh~@BU?fbN-#5ZC*R4s>EE<eD#+*-n{xyA>E$>r#%%Y1*bg) zPJ5oEd;516U9~&#^Q&Ff2MaosQy`quT#pb=JB&hT)<jIJ`30m^?E(q5k|mwOrNYo6 zqXY_+RL*;Me7^m-(eFHE2FD*>*?-xy9}A$0V007(Y5-IbfGTF7K02ZNxw&gk|EXes z0gVv5NUp@AN+3emKoS!a%1qT@)h?O`Q;k@41Xz`7MYU#*goQ1~&0<<0BQ4|35=;w# zt_6Y7fNTLETM)Pig6WysKW%vIR}a;=3=i0mQkG&BDA)i6n(-LQtboCIn;T`qN>y^4 z6<>Y2sR=TU%#CWFZ)!^%Y?5fwa49(rvay;caVkuQG}$I<4Adjh7g&H-TtV!Uttu{3 zvONLooT-V(l(a6$k2+VDI%5SUMmF7^LAxBLq50eVmoG0)y|ts!{4h1(qo-f`-G^fS z0>Dxrumo5N084?uuYskqgQo9$?Vn!V$1y22h#tb^%*7WGFs0g(p!zz#j)X2qOpbLA zNK@Em3(1S@#*UpNEKd>|Qh`}Lxy)gWU*W4T23TRnNnc9n!U%r?tGIwPCFwrmPN)=A zv;+H@3=|ytAxyK#CDli7P*q$!#4fMCFHnt1;@4mcvR#A4TWGs24fQJxO@0>wyBVGc zGhvnhXG^ewT7>K+Pi<VNJlr77+8PBfVYwF1Oci!;L%2Llm!Kyg@Prs;H%5<0_-iDO zFbru;ijgET;RYcC60ru{N|DV)a#giOQmjEwsIo-KW06t=fJ${jLrXWZp+aJto>9{y z->c|tG>cdw?Zse{h<;`wNg9rjVn1Lgwy}6fz@EkeEQzPZRP{QHY0w2d4uYtrlxQrG zLRPPohQON2nkm8@>LUnom<;eh0);>AAQDZj6=Ap?5p4^SR?Ky#sVV(PR%k`EO{A(! zX*?xpSj{b{RMMLC<e6q6B?IQG|9I!Edxrdbm-+6@#dohd%Xg7^#*n(x?w@+kYeF=9 z;vd`niN6D);S;~F`wKsLyUWY^AM(!wwwOH&&{R5APdYF8Lqq^c&T%%$Nf;6`-HW$L zJ`P7eVeV%*Sp7tJ%qgruCZAuuK}f@zpIib(g5gX$onx;WObg5t6A0leyt8m5gz3RL zeKMf4aYzu7$(SGVaDizw<&eD$AIzmz6yJpBsjfq^YZyn;tXD=o74ftt&R`RXEJYYD zo#}QmDrox1%_E+Kvy@GcQNgyL@QT=?myQdoItfQKtX(fiu`ZZjtHQK$3^VID{R5u- zW8vSnm7CkkuesvpZ;u`!CbZih>hAVW!-RHYLc9H&FrlNyy!1iUUw4nw`b^6Km_Qln z9rhyFE#Xb!0x7f!J$BWE@vta$PbznzV+T&n#R41?ZON;q_N1_q5!XhHkT659Bw%~P zxPr1G?L?L^ZU6#eXx4!t(t%oxkTt^rtk?bhyI=Q{<?=eP@w%VvgMa*Pu`wt2#^1cK z!M2n$R<b}CQ8e;WYFD=W0$P5-KLIVjfR<nIFGtI>8vj`MkNZ|m%5Pc8+a8;S2dkTY z9!)>*pM<8LN7K*y8_;y+Uwq3yzNYvdsX}bJ8Ro6#LMs5MVtLBylA$)nl{K9bdG#;^ zZ5K<qUO?JAa1=x^W;zuSgylU_ON5a^@H4C!7$}Hm!OrICg`o^z6%@;gfF_M}3C$Qp zDuoZ=f5*d%%Hyj@QB$d>W-4K^i&jYYy1ZDDmPjB++mi?!T0@lF9!jU+D}l%03X#bu zIfmJrUbJaL@TPiQI4?F6#37SN|HnyNkmXEHv5eH<y4L3n6%;_SBsm^JPTJ!Y;fz7j zKsvQ$(o_k`GC$mwh{Hb&K^9RlR0dLu{7E>Fa3hJ&@GwM1>$ngcpjsE-;U#*6=Zu6V z1+Bm$%06kZPi6z5K{$XFA?Y5mg@H!)&;UJVf8FQnV_wql!*#E$zVlJ@{x3?0CT?Hx zjrsPLHyf@Ue_x4t*Hf);)Mej(#C-ny(wY4}So>4KkGnwHyZq$d>;h>&!s_PcU)}Sc zwU>VSTSU2O?H<LiNXV&3VRJf%%^DJ!EaHVN3B<fvP*L?iJPdMTEeE4^Q4L)$@f8#- zwDHq+e?j+le<M2Gj!w7xuL3{K*;Y1n<8cqS{g6&c+U51Bc%3?}@%iQ=0>kqmJRvm; z41bv6Cyhg9JszMSj0^*_n~QqpR1AVH-US1bO-MnDb}<X~X`?|Z(J2ClA~GRjk&+-p zXB@qSn?jsNzG@TpX8|P>1*$j8M}_bJ;y+pJ{vl!1k6NzQHehj^zX4d>1}tu4EPnF0 zpZs*%vD1E|Ers4D&V@QM2cSy+&k*JweFN$)K%N)}@q)xX#zRpTs1%3=ij}zrE`zN! zdb~vj7X1Mt7<HH&Yw(+)RX6)7DX<xX-|VME$PvF7RDVyy{qsFNU=f@{=nEm0d{0;r z4g7KPe%bpr%*1^oKi_^~^zVXI+TgUcah$gePFq{x9CX>;x1?jv9i!*>jBk#slYs$o z>w)meJtCZ5gr~$WdXeb=C5(e4fpACXM6wp<Hv;n;{d0i%jlldyKcyDtjcGmm!_6lw z?->mcbKorx1XT5i0P)KI^P$UbnNLU9h*t!bM34-+fbMAfw!}iudZ1@L+Y0M}p7m^o zJosq$-%GElSzWtm2DzTIIVE7{OeuO~4$&4cvWwFa-+%!&Q%~dzkzSDEh1!#hM!61~ zFmqGN8SxAPYML`Gp%+WXv#H@Z5xI*9Ke-~b2<;*Xf>a9>0ii{T{l+d0Z$la1R2p1g zXVpONDkV^)own9LpnI)<A?Rl<5VY1$Y;^DRH_kt1^xUg88)|!4NDjfalps&!v~9(9 z;8YpRBHIVaNZm_45@7Y5G^_`+)(1M!%cS*F4}D|lk3Y)qMY<5K?5)kvgf*C-x>b$` zOga%SfX@PLAgwIvOgjy23k}af@jl0N@*L3c9NUyzUmUYz*;&3@L<mS&h%V*pq!dSf z(@86Zg;Ok;1+CcQ276B}GGP6`NG~peINx8`eZK!x5XAYw#QE$JoOk*0M~$ETa<>Rb zx-Afe1R_RF4$k5C>t{<%_cB;bFkSwB-CgXabpeVle;Wv<Fw=hbpUM`uy5@s<fXpw5 zvv~l4;<d25HG$v~IFQXaNK@G1(0ApCtYAGN4D*;I5Q`LUGYY$JGe!adw;4VhlhO5c zXICD#^y;-6ECg_`u+KY0_8kkSl}-^b^y>#vs)utdhI6c+62Qk|ILG>7ewpRxy?^=7 zf4}kHcKYX5EvHkDsDJ;Vc_ZS-*u}J9zt`yBeXl|3xqAWoy~Ygm^M{j*zS{bW4YRa1 zfJnur3iXtblGPwFk^9V|zZ$+t!5ga%p?1+iN{xm~+1&<PX^>TfoFf;D?D^0v3qn$w z?CFzy7X2c_z+S)XT6nW`3mO@s(Vkwiy~MGdND?VH;$YrM5#gg8Hu?+4(ovKGP(hC~ zOBA9MLuWQjxgJF9xOdojlr9RFwjuWfAEK0?jOZr9l$SyQ2;!|W;jH2cAtu_+7Oct^ zK?jxdZf{djCJPb~R>i}ppA4UZ?#X{=nN2yTkPgToLb8HvRoNmd1~}<d2#nAy4mecE zqXBZ^lc)fUOv$Od8a*i{f=7d{D3VLwl9(^y6G`loQVEx)(z()bF0vBtW+(PP$+jfg zq~g-!8&64|Xd13pmQC$gBo|S+AElXKzESe3CEZC1Sij0Xp-k{lrit9Y1_2>#&}^7A zo)x)s&!djxF~l)@8Gy~^7ehmE3%M}3wAh;n#wjXY$hD3~GD(2VRRu}#IL>6?Pti(Q zNT4?k!<SkBKEjk6PGUzAP!ZhUgorJ|As{Lu=bRtJoQiT93@_A>Xb4YGBSUa{RKqxl z^3xK_D&VVdT|s!lM13`Uba>RV3X8#IX$8B@SmXq&m|PzGF9DQ=o12BMV9y#u#0m}J z_%bszAu-BGl#Po@0(uYV0GVN5Hf7MWU#_Fq{I;u}B0L}A0O1al0m%SBKd#&$;X+W% z^iOZz|IX68=Y3$t-;Nc<cK`NQ<|VU#yJ=v{kMCv6{E^Tj2(LZjdxB!6FR%H<fm3#$ zxkgJ2C{S&e$c3z0XH+}tvxZp`@5Cvy!}4KOs|7EY*duGjDFpYs9>W6^<qtss*fXXI z1cU>~r{Q%GtPBuDLm5K46~+WbA$70mrVwc~nd}BhJIpY_TP#sk%Qh2hCybw+fw2(E zJ7N6n3^V{Qi?;k@<|nyNcWBY73=6kJ7RpX|@{Uxc&Q3Zi*>n;|wIiuRNMSOXIq9M0 zA&FRf<djM*AmO;$2JFPHG&o$b8K;gZ(n#-7G8?O2PzY!4I%Pqhw;OK1OSopMp@mi( zR2H`yT4=Sg8Uvmed-2l0EnhLIR+f6zLSd63q3~5NYs6TQt3g`?L18vkBUV&|K1G5N zK~+HFUEBs+yfIFt>`?x2p&&wIU@H;IMx?xpmS)HcArMm}j76f@4NqKh&oC=yRceRQ zq*=CSS=^;ilajFz$8v~}bYjhHOFeH76m@TBGk7~FVS9iOQ*_|U`){cTu260=DVlmD z?38!rR>iYZZSA?~xQ|#P{*r$TYlkmTf40e_VXur+)|BNR?nH&IvZX}@T~L~UN&`aF zB1>%2T0H5%S2UA=NTJ5*cDNDodX}d!p;*h?!Y{C|po~b^%9|l)DHOIB&7k6wWHPYg zH+LVm^ZP9;k3Z2Ynw_mX<;y`!1p%!yLfz|(At0c2AfR;yS${XwyfgM-bI|Acw4qo> zk&>1t#IaQCIdo{)k|pY?z2yjP!<}sm?LOO}%)!|J>TH9Gd=_r4*}d`QrxpmHw2Pqn zke(OOp3EX@*qo#-9Z@n}kpfbttIbc4UW|}>DusZuRgV(LO{hlL6d;do6NqdR*Nxr( z%O!nJpMB<|E;yO0xfix#8AcB7NW;^z^kfl)2V?{iwL@Mm#UH8GhG<2E=45hPBtO{G z)hR$>R@fqc72$;}cd}tB$|)nC7_kq51ky+pnzMMR5B!uqoVw@(le&*Thw1Qdd8GcF zIWw=Z%yi}^3JkETtg$aBgKXRqU%!4sER^dQf;5Nh{Di&@^R369yzZ>CuRl%@YRc%> zonl`h1)4}1bpRr~@r+m2Pk!iZ2Sf8(?D`nsXwF31T3mo&tWf*B-?QMiHq?j_XQRuL zX%P&h)3o`uVSX1?N6eCBlX!5vg?nm`VLtHEm-cCxI{9z`^UYwcn+;M&Hv{IIjSB$t zg`3I_S@&FFPQfe{nyx6UkzRqgPLP44WJw`)D6ap2azev=?b6B*XWabh!wl4Qq3aOz zzRq{uJOFb_>y!tL!F^}t>BeSwEZ{M?BHCe5(m+foj5CgntE`Svn^a{-lwi@bRov6R zKOD8Gr14=0z)mLvPl!SL+><O7DIB|i)wHbV0-PSwMy6B;bdwwaRbL@ZSK&->bJ(dY zN`5GI;G&`~6323!&_gqnr2`OX<9V1Th>S;3rz^}q0@x0euv2xlml_L#*Rbr!vPE!R zS<hTR3>OAX(=<|wittnso=MvxLcgOA_)o*(5Oty=h@K;@?=}$=%`K?s<3cvNO#|js zmI!K5ph^&k__3-FvK1jxG$~XXQPW(JM{v-P2o6g|(=GK7yjRXfcg6u0P$eN3E}F<I z<Epk{q$<Y9l}!tz)}j~vgqRtK7{E?W6*_7scQo7}_J<MG%+!rAdB{K)WiBFBO(IYg zzd=FDcj*c&1?tK2&ZrU5ovK!F=A%MFY-(>w8em}KfO*;f3_N|@Rh`F}7vH(=+v#)P zKHB_c-M_B=pyk)c3dX)3X4mxw)xKX3#@=j@{XHe^`{IVXp14jiHm43%>WCr$+(A#J z&oW^|##fEV9EC!Nd1{r|j2L_~+cV8jHO+y`(Bpj{&E5CnQ7u2w;ReyAt-Oq6Y&@?D z&s9>UVt}kbC>KIps*1`8i;gs;^6$7WQ9!B6nzTd*4*lj$L;M%atZMR^=HLGM?tkM~ zCj{!gLYVj~4*z`xW%8B(S`6f0gJ1dj{G$$m7@7z5Mz$)eOIHSg?vV~bg`QH5QX6v6 zzLJVnIuc}R$_Np_kfGNK1cfU66s)O0rxkt*)|_h0|Hn0>h7>8urED8G;$1GKA+%RP z0jxirV@CBRxvS*2b14@g$|f6#8bQ1G55{U&nD_e)IarWiR6!5HgRth<yCx2W^FY=l z0`8on2D4EnnfR0<@lgGtNSLZ@nLlkEgS8;n$T^iyW+P2PH{G-*bHM7kf1M}hA!ZbG z$BYp`Nem<$GmtSfYj3_~+VX`p6D1Ami6H-)saF~+lwq`KaybiBW26f3?S?6`1&9ri zwHoCzeOop669D1~gNi1f01!_YQvgKyi?6@=&|^OdU=dNextTl;Ez__mBrfR5sj&sn zC=4F92tx=#TRK3z3W_kyl7FwRoYbefPT-*itX#t&)BuDUV>v+hcJr;~@qPa^L9wzF zsZ`5HzJjygP^j4Fn~h~pq*GWzipOaZMc|M~gGrQch`<S5<4==NH3Fn0;x=?izN#o0 z5i|-uKuR{oqY)wr4x-V#Q$n77DMY-Y5YHU15TTwByhdF(4jPhSh%9VaiUEQ=a4{Kg zqFQ~*$8ygMAPHT-9m>}u=!%Pn7(x=*O2Q)+2-u;y5Za>@ic(%c7Wxy>p9HW&L<`f4 zh(uC1#}q7F3FKt)`54)grQE4?(zPLm&juXN2-P(rC(m>HKbgq!bDlUwis@mnzlJf5 z55wFJGiG6KANbK>hd0+hGT4!la(NNhE(VIGr*&h><PkoIW#~|v%H~qoT?Q(|WGo9& zn&)j;l4?s}K=+owJaEJo$oVaSn*nm?chAr5x_0~-!U7Y^61eO}AP<X|EDGRlj(Xsb z!Gmq70r9SlL+q`DX|p61l3>IZo;dN?&RZU87ECk67~DO@AjfA45Ie=7R95Y;=l|}8 z+vi`dwGqp3C?jkKPAXo@j=p^nVRtAPdXhwCseH7wB0N{TBtir%(m+I5vqG#OVj_}q zu+~Y-OxS7^S`-|nis7)Q7b+RRH&RG)b%{*|y$>RJ->AS?-p5$pH=uRRjc>nv#JblW zc-AEVT&_ia5MTKgWVS<#sxUpd2hx`ycY_$fTAU=uA!GGop;s*4*xrooh?<2Tk`2Y$ zsUA!*pD=aUMG@j2<i!DE5fFeJAs0pwwFr#2qT-l%lj3u235p1D7+E$#yBUz3OQ4~g z2;S3(Q6(s{k*h`Qib+NALW`En3_}VbMq-8DdFdEQ6%jCmye6<QV`Np*DOvW-kX5Kn z5lcZqU4C=zZ+^S=o%F#cndyHfwhuXITfHE&I!sNSLFH$4n3_5xgQ<yMaqY)Lubp>~ zJ<Q3J#$hL!p%uk#DoNG9|7c4yNM&WMLoMYOORZ81SHw|~F+XODH5MX|S;%>_Lf90A z{#pQc#O~c!#+qKd%w@=s8wtS&?6X{<D2}!R=YjSu8DgE0r2}=SES)Ub#}r;Ca5%Qa zadt2bUtn82+ZIU)8(oMQc0GvlsYBFs^|)Hj5<k;nC{1Tqe>w&=-M<EdI%)2dPhXkW zKcE>~iXF0P6^*&Hq7sqzg}~}jvM`ZVR=lAugJNVj!^se&^hkQrRS*zVr3zg{5FbO{ z2X+xSoYn*oeW@@d-VinrTmlvArkJd~5{H(iaqJ%agrc2rE7}4-@kP!K@Wa^87nzY6 zv>H-A0nULA<+2DBwGKgYafQt|7W0lS6~o8^c!t+A?oF@SW8dMa)w8igj!khg4pgfU z+A8)g9Uz!U>Sn#X)xdcd?nfwmaJFDdvAztAG}JDfKD~a??AqGt3+t;-oHujvi8H6y zFPXk@(d_y2*b@sm9+^9PUj5Yhb8Aklojs*`y2l%=pg`p!;@D@#n~Q3G|BIF8?kk^J zyZg@1<}y=n4Q+)TzSXz&GLTl&*q0u<_NTv=d4D^#*o;0oeLX0(p+lif6qg9nu_-l$ z71m*+E-qeDwegd249AY4J5WTm!?z;`IKFO)U0U<fV~4v9Uy(j?o4&Sm2{9kK6L#JY zG=6u%_}#@B<Xw<%yEucqZd~8D4)%R;hEhD_nkyetnV+?|rm8>4UnB`a3I~4C!gx8# zTXSL;f5=+)>`^p8%bqa*0!*+O@~{co6`N9EGz3ck<lvs={A7{mAOLdyMquZb)bEBI zb{D>PBp3HDq_~jX08tqbmD^Si*4PYmOR`x3q2gkjV3vUrh%4H!K2IF55v%gi;Bs2J zsw6@!m_vscc(z~!Kr~Xu)nzXT)hUAuQs<JOpb!GgViJ-<1p{5!3GoNU6ojiB@`x$; z&8E+8ef!ASvFFT*gMPmK=da%KB$MHb#V?{J{6*g@ejxhNr+@ibaNef0mb8u-0=vUK zl<|2iQ<t8+*J^ZbgcJiw6<JdP-QW9KbbiTNiB9z7Sb{Dl0Oe3r|5y>~ZAH0Z-d*+f z<Rc1hxKil(G=dxH0O|QOjNWwMV&LLG1N%I%K0EFk#R&oxI!wAi)xxv;<y><81A?P6 zKJX-{{z*SM!%u?hpY)RrxGDScE8Bjy@-3ZeAV!gk9BsDjU?F`V)$L{EAV;bw2Y-=L zA~e(6qFO;D7&tNp8kOk=oLM0;UUap05i!z@p`IdQI{xv3(YN~rc7$GlsCmH{i}5X= zn*99v=6$cU{8>xpQYAkjo?MzDThN1|mO{pAiE+(<YhXKH<GTi~kGcO7Pt4v>ac3V} zOhr5{!jU~%2_(|OrB+P2b`j^^px9wuQnUds_G0K?LZoPr$dAvkZ~z{oJ<rCG2DKEx z78wy<Hu;hiA)%MW+yM2;)zp5P$d!or3dc%qtCs;ps6oMMFGRQRqJWGF^~6ho)e2*V zm&#3K*+eF!)Ht)E9S&JDVF5;gYQT$SLcFk8gqq7R3aqRqfK<dlc{wckQM#zDDy*mz z@q8LN;?n36Q2;8Jp=Anjm{}+v;g}UmTKd=x$Co&8Bi0$i3L-s1aV=oq9UxauI*%C@ zL84$(#>8pj+|hGkyU-o-=m}s>##%9J3L-^9ycd8dO2>CbAf{LlsTJ_nvQrtyN1&TS z&JB`=Y!if-2L?`Xid9WrqMRm;;UhRffbf@6!n3ImRG`(WNfE0n*>lhG>W2n;3uP!L z>QD$_1yT@8gn&ELHng;-R<e{Oea2c>*yXk?F0HYnxpwAml_4S2kBYRYaxN)ovC4x2 z#S|dplmf5(<DSr-&|#E+kO6V=Ot^tv0c>Iq(AE2*7beaO2o9bCfMVm>qiP9rFFvTj zMN2EVCJ0FqitvG)XyHG$!D0MSE7-C*k;RuB8N<YFN~OBTB;bv3y^>fFX&aRn&~#gx z{X#5IU`c8;#m&61q@gW>?byUjQDz7`Ez$N0YVd+VREEIHeb9PnbkHFyzi2SBbusUH z(knv8RD>I_fG>?~do$64<&Pk=hL>c`mN098KYo^cis`(W05z?Mb-HY3aqWz;4HVw< zxG`!Bw5#A$jYUBcP$3TXNB64Ih>1+fFkGgfBGO+x^O<;v<e{K%wI+}zEDLjw1)_Xf zulcc&3e$-Ya@sx7B~i+EA@_}?hUR#CfKi#~7T@!{)kyhFZk7y9fsSHu(=hWQ^exsT zfw9=JLrEm!43==^3=$qD{3;<MAm{2K8AC;MDw;`WZJp~fLJ`5#ih`0`)Ru^#Qi~D~ zB9e-5EV?JdlIYwPqvWUHO*PYYD{?tCZ{(0g1``C?tV$~9XIM6oNS6MDL;<JOkcj3K zB07<Ye9;w?kEOXqM3jlr8-rpFXlo%WXeh#ctSTI+q_#zcUq)fmJ~9db*qh<lBl2*k zK*G`}oCu`GcqIS75lAf&{#^*9#NE;BUVm@RAIx3mGt2K?_Si#z>om{Wm2A9!$%t#% z()_OAI~Xh9`MQ0avb%2W&o2IPu>G&9;3*6|3M-E{57Sm&|Nhd-qh9F&xP101XRq3j zoyaTf<gnsSm|QzKtQeax^U{5{y!WZHX>H^vQyZ2sCX#eI2_o)GH&4e-WP*gWBQHoq zgj8t>ikrBihC(q)s^#ibFDXv}R2rw~5k$`7Q!Wvg7eOW3;($h0aTJjym(CR=9S8s$ z6maI21xW@wBSl0Q5IevKqax&V(o_mhbObBYZ+=tP^7HX0p81@)`1Ws`oBFQ$m2etP zLU8aTPTZUX1fOJ(AOGdf$z8j5?1mpNEJ}+nc+{5lPP~C}x@xc8W~lIEg##e$bek6| z6e}60h-U4zahgT^7jldOsz~OcgIuDyopP4)GgWN6Nb3`e>j5^T1eCmp^IBA|S6Adq z8l@FNShd+9WW1_$ruF)^CLIct^YOIUQ|dVZ5GxMY5g}<u0B|-TFf&1O{F|R`dj7!G zubBtmddyelube%@y#0u0{%7QQpZvjmV(=qpU)@}AhM24U5bD^^pe4%tVXh8j=DQ%U z?zoZhlArZHSM^G>?zQi*7n4R&6H(kJ^{vp!5ZpAKaQ^<crjzA861BqaQ$vwv9VM;6 z7VR9{RI|)hb^bKl6{ek(8^A^MoiAFUtL7R;7w=0TDMy=0yy+8~7F&XFkj1h_$TcOa zgNzRRjv9jr?qh!S+U@;{pY6EaoOMORt`pwa?^^Ts8~*y>y)EC~YW9!c`_8CCwqIlJ z9(et+|NV272xoL3jF~>zp#0UrnCU}#rVk0c_ullGoB!>Kij&LYv6us4EbX^eA{<@G zdHYKE<&~Vb55IQIW#h*F<wHsUs8za*5`2AL<VB@U?;&95*kuqBk`t%Ikirt+B>`mo zL#9%*Y_$sKyc3K|b~MalV8<{Q-*fnW(L;W8u%PiO2>dF87M@gL<W)ur^62!TOS7kZ zz2RE#fKCi~#`vlzZT`bPP4CORc(b3mkyHe+HzE*x6Fkw{-m0p!!L|767ZNtjkh*fo z1e_!aDiGW-8`uQnFiJ>-1Yt&sFpBtJxp5T~H|-yhCL&UOV3}7Wif>o56ekfzSfSkn z$&U=#`&A3VSYL3D`duP69<AD9i-r+WD+t6FI;mX|of2Ls5@)<kB7D?XCXFu;@eH(* zV}fdvR$-pDXPBy`Ur5}AuJS;~H9fAsoOcyrL?_7^D{>8?#2LcpT{hg}TeM`~3*cyv z4*7jG;1~K&6f@C%ijW`=13z6@y>V<mkPT7U6+jnGrQDi;(c#{Sa5*Aj%XxpK<%onW z4^Y|i^Ba~<sP<<%T<pV2!nP2d#Im$lEG<P@Bm{d@d|cWt(tzX|QYLh`jToO=@6F_u z=c<C_WwdM@xN@AIs-MPzE64Fd*qh$W{dvZ$vB&47<<Ks#&9E6$;XHuIc_a9(J{|@) zJ<QtuVQ|yKTp4owyO*pjx%nTbD)WhFtzPYZC@By92%^^8eC6lqd)Nz6wxF_Wasx-@ zY>~JEF>+i0<}L3RDh%32-q%t1V3=hRC1k4ePA(W2FGq?H&{-xb@TZ7cw9|(L$ar$> zk4Q;us@xV~L)lUOPKhDV4{COM-YIc7NNG6llsFuuG(2z~Na>-mN1i%x^Y89-k&;NA zy0VlUU2vr-Wq!m~rPi+>3Ww-lUr5C6xuA@>{^g*IxuA@>{tf7}`jLefOgehb@0_zH zL=JmmcG)K<Z>mUHxHhnaV%9x1U~~;!57&UvHSn7BlS{uiq;$XSI%F)hf~T9(gE^s! zE2#c~jBRwOjBU}HEw^NMeVhdoT+V|`H+JfwC6GGSfGKmB%A)c{Gz_YvCsAdNKmwW2 zh{q#JgV-*_91Btv?r~Z5RDOeq3q6eHxl^wG<~_Jj?kwtmLMT_m_Jvrkg*sC~szhQ` z{#_BK6*eArBuoLWJ+tiu0tWS)Z(i}YqYJ;d=TdXb<eM*iYg<b{G5Hf=kWVydXM%}f z*@?y#nEVS*+IK+90fVp73Xt6^THOJ>XpzvjFXFqN6(RH(!j5`($z%eOpFrhyxC&k- zD%Ca4lE?zU27y!^FyqOfH(k*qsCuvxVkIs3jbTG12x?ai{A(E8YaBs;4TF1)Bj`u2 zdHJKkTjG8f(E<`7nIw%{!Sv!{qz-ijA*l-S2<r;_224Wuaw{^NDIa9_L5Lv42vDug z;+sT)&@dDggSWs17NDRkCLG1cq>3!<C~6DIgy0S&3`m-=K}w{@7<P<-fNP-A5fPbC znIdJ`iiY4js0%XePS|8?H^r_Y!b}J?g~$sLs#wIA$YO8D8et*vC~A;o!-Dk?H_f4^ zg}h}}Jce<318F758hC;k5r{jJM@yp;jtxZ*#Ma62Y$*wA!h|d#BBKxgi%J>F@Cy<M zPp42IqmTVHgmHKRs2w;^@m0!Ul6ACVN(8#)HXkslbV<4t=qQ_;B1-zG9lcIft*qzx ziRhES<46bO7<ENBrS<l3AH@Sy*+Y&b0Hd~42Lg@=Y$n>;yfF?Uh?k0NiS+RFlPqHp zKv2#%x64tuy~DX|Xir!tcT;XXr#8;+c?JaF(wGB*Bc4G!awVE*jH1*qN^wiEHIXQ% zQZwK{KF6rJDiP695E)9bc($=r5iQwwUsL!1%Q;FKZT(oJY7rELIf!DpexD}}T-wGo zitgBRbMTU#Ou?8W&GPSSlu~Giw#yYe?daGVs6vGaZGr>w99pAiv7@}eGS3Q6hVnaQ z1{Xm}%LtnpDDIvapmkU?p=4(Us7AQ*g;f>nQ{T6d&_k&Q?GK80ksgAui!dN{&%GLJ zLEcWVy8ay8qRmG+e(WJz;wvheW?76@%Zl%Kw4|5iUK9wd6UWN`<+?(fk%h&(SX2i+ zDOPmRp8bsxTJQkrMXY9%1W=uV3WZTecU51)f@5ts{-m2u`S-n-KW}ci>=zHb_2o}y z3vD<63lIkc$P^j?+!gXpwF5?+{N*t(JTOI>LY(u`DQyvb61C=`5F(DYRX?^g<`2kj z8|Hnt{JFTk<E;q-rUaB&!Waga5>R3ZHmWa;Jb2}VKV15tr%Bk;3blUy@@rrmb##>O zB76x&#$pm&<ygr}G+A%0^VF8zL9ihY@>c=KgJ44*<gWwKm92Pc*7<YZ|9!q0fw)P` zW=Dj3up=aJ72$dGf{>vQn)WSJ*$74r1gh+$RtTXulJ;DrEmxrrU=)-_)N<BR&o*Q- z-?amZYR6)%-I$2o25mmJ8xyhHpxpUM)1Uq6ZJ*DXnm0x`XPL;}jFBHi?d)`VLBgl& z5HKB(M#u+}1%<LO-p8Q~dq2`9`6Ngw7M#Iel&Az1$xuCd+Ny!#`BIla95Ftu;e3MO ze8R)|1jG4+hco@=gBLCRS5vK<t^j0j`*^rKRg#tAN=q{-BFkIhQ3a~0;%z^wKs8mo z?Z@26#uL{Jd1#Fjqe$(_rEOHdI}cPyl`>?QsWmS;i^gJ;Qo**IyEW=BG3qaQMdFtj z^_RwEOyZW}l6{~0=VyO%aJaMs9gIFzdN|}{U^7Quz(OLyvdHj1WER<UjeW;&$R}t; z+d|DW%2?9OI%yyw%_XU`*M0Y!h2hV-^O3-X&^8ndv7vx?mq$-7i%KerefglWq_u%t z&`dp)Reufad~KA0#J>i1zBcd`2lE!+GcT`v>d{Ri<SS7C-NABDVu`F}H7!L&R4ES5 z)4Mv_&?8JyLXUKjl(ZqZA#6@`RKEd*wjD}3BgvK4xVTaFbmC1-iD*KEoM2falZ!lu z+$L2nHY3b52mr05AuWR7%_Jf)<#M!ByW9+37-57&-cSYmLZVw$nQk+Z#Xfk%WQcU} z26430y=BP5@^)72*$UWK_=~z%@QSJxnDrI@dBF6#QFnITUUpZj#eIxpTA?LeC(?p) zUrik+t>r2l*Xl5_-8YADVBx3&NqLp65{fa|);;J|U`jtbbQj4I*1%Mopz0h#*cAm! z8hN{qPWqk!M=RBQioU>i0W&dm)FW&D^Xf0nN8kJEuXPpAJZT>AmotZr|Mrh33I&(L zBH<jnpg9oTDvmy1K4Ir;FU?wfm^Ljya6}?Kl#1soHmg*e)uCfIz7UGQLw;J}8v^b_ z{#n5N&g0{6eLrs7Exl2B-Xb$g9uyS;1p3Djl^vMe9e&#2VFx<c;ZLH22Y-L!Q%}F} z;MvyX+QwtsoJ{f&&DspH{TfY`t>ltkBg2UUfhsjEb+)vR5Cj&hRT8wjjLPgn0KloD zq@%b=x|3Wk;uy7}6O6*PugdRx?2Tp>QRwlOK#rI2cuO$e5`PoMyYJI4l$C@Z|3V2> zTU^H#@pq?BtsH^K43M-%I8=pnRE&7<vH-GL6b#D3gtTNj#5?;4=L$tb*#23q<{}_T zIMD;py4W0p>|~ND6wJ|a8GfmUxD4A%KOipi<g%ZaxBU6P7nxtQ6s^8#-50+XBvc7W zT*--vN-#yGaS>4Zz=2QKKK}TiKf6c>KtuRx`P;8we%>1&i$+ZsNo4V`r4PRW^L@is zz&GgU8@2+5ckEkv^^c4tu6}y9D^YFeG64j2=G&9fDib9`+RPEL5e{X9_)QBw6Y!ZF z!Z87#X;cFbC%^mA@GB}#zn1(u7&-hEusmmmsC&<DOfMg_&?6!?p>i*oOobnATfD7& z3+2b~o_f~(kh<?OGF|QtHE*jabp@9rq5n0%XXnz+`+}d}x5hl|weQ|oH@<zBptcb9 z#0c>hIzsS!`mx{h=>EH3{;06%LB+r<uBb9lQkwmf9JWnYh+7M78?Ml6BxS6fR?4AU z_O#QA++qOIi}OM%JI?jtv_%=J!Q%K40kn$n$>dm5jUd72vJsSsWVyx)l^(Lp0BCU? zW|H<d$LFXy1R+IXpte@1fe<g{XPw9KUsX1li8m#&APcfWYy~5VYIsXEwS*t0pA`vZ zIK)Qo)S0Zv(sl|hz!cvkqX-v0!2uD4OQIRF=@KbXUWKLwU?k9~X^V;KU}Dz!X}_2{ z$mcrVy>V^)x`X?FdT@aklf!VZZOx+QTi6(Orei(Aj)5%*U|pnr!SN+N(qFbUjJ@eE zOEIzKaBHaFjX!#D&<OMOy9ae1x#86D=HE9@eE+UdyU!71dl>Z2VZ55_FpTR6-VXZo zzT-oU(?0sKYg{7n#_r<Yq~C0@3kk0Xv<iPyNH?YuxH>-|33mbjKEY2*Fi!x$C-`Zf z&l{g@fBCQ%nqGGS{C}9(0pMCK&p>Z8xVIVTZ3b^uIq2)rUmRGq^CVYq0x_;WDY@s$ zB`JH%ns1ujd6xXQmb_`7U8UwYA0os75p+)r->?uG3*V@u!MncJW<*zGfYtt`KxZ`u zSj~G%|M|L+&t@M#eqX2S6hGZ&SIvV+BKL8C-FHHGn_z>{54RdStAnu+u(o(;8F*-! zzZiWjLto2iwZXW%1hTEae!Ujb)SJrOX5AKNhNbGwyD$3e%Hi8KZ=etb>RC`3AoCK_ zX}f$pUxp0bMFkfX`tkQNEH}ZwkU@XVHMPfYsJ*`3<X53QXd%0NxyJs57(6=}jhtU_ z{$M};uBJx(=GT93-F?eNw+4OYFaOi>b=^Pjo;2AvNHkoy-)XB4**f%CJm>mnmK@!B z<H2W-tfM+Q<l#wY_0+95EXBpB6fsr@SC;`6-)fA`Hj?kCfBKS0UmR6I!<;tl(BxxH z7f#B<j$?qdRT^Fd<r`-foC!>wS#Yi$Q#+^=`#--~{L6{Izi{Pm-!aY8T1(zt`1@;p z=Ag6xvih(q|GG^LEpIZ^fW*uc6+y`vmjy2aQZMpd29pZ|QL{+{G4$5;M)$-1AdbNp z(GjQKWS%zujY`#v6M=KNSX53T|BtV@nEL4ocA=k~uS@iEN7HL>eb;{44(i9Rm*wa$ zKKij5rxC{)L8JSOKoAFY{q(vGZ|u7E*8Zw%JwO%o<pHYyLHw3F&IB{)IO)rXjx!&Z zO&N6IAGgSvq9EyjKp`66=Zzab{%mp8Q69uNRYZ7!pDHxiT+oaLn+xFe66_~ez5HqB zp~27l%=v4~x(ClWbN_CiUlHOLtCv-;uZTA*h&8gv=as&f-CvW)iU;H9BI1h+n2YW_ z<o7o`@b110^MP=+$=wFb2(^sCF%M@se-(~uoOSsZ;#h&R^ZhM2&coSSe*=zHI9u<Z zjH3=`8~xQdVmRCEpM#?jXWRUZI0)(6{V^P8;Y|2{)Y}gKJRD8HRp~R^yZ-sy=o&Sw zb`)FEW|Zu2AlpG-IrNp4^(B&`f8XISblP?wBxyTvT!1#GV1>{WgIa$&P=;eH&YlUB z;uync<8U?uXU_&E;FyKJkN!ur^qi-*^l{D;2}E>)xQ%gI!D&F=X$AE(KLPWe#Sh+4 zetXwDJ~O#&!TPnItv?r4xaKGI`(E>lBY#xTeV(D_N|B_q;RTd85QOaWjYRXgf*hL9 z6=2t5szu!Q>isVHKJnQ^pXSKPnk5^|$G*Jf!TD1^y!|}Y$)658@1?Ex?zc!`P7?$T z0OZT#C@u!(jQU`G0mk90FF;2=J#N7<it0>dV2o`EwiEzSVwbYMIHOQR&Y-i~jL|qI z;cTZd62}Cb-D`}+F%4(CaJGxj9yY2_@-i9Mp1|1?eD;D-iiKM=8L#2&H9p&Ilp%Ob zQ}sUDd!O6;1lK;{YhR+bFS)m`jS58I#^E{PnGr1C;JI)3IpGb_H4`nH+;SffZy*11 zTnqWf;h?D(;dpxPAdve({wX*s^v}St5NBjI9p<OI#Sl@&e!_up;ptk5e+mv_5U~Ld zU8}$cpDO$`a#7qz*D7(XlCOy{E?ukgPs34zGqIyHT{{-nj^%5j1c|PV^UuOji!)&n z(X|u&wKy7ZCf2jlwdok!bRL_qW$4-rJU4@%6Y8I?Rr{CYAO;r2EOc!y7<jHfiL*NY zP#hz1w#*;KQO0K@aYnPc0_?ql#Xt@%=eT9Dy*9P7Ag~I@YB14NA0Phww|DG2%Sr3n z2LippY%mrUECi`9EI5ToeIGON$c#x79(mw6pBdX{|5dYA?sNKN^P0i&&(htWR-9*E z`D$>#Z!UlQPY;?UWo!O+$ow@YcTYCVe|4<=?V_(fIk)>k&1XuQIs3K*BKjgeixfmi z1{TBx8~<wmmCN>j?*8k2=4C&cP&DP2Z~Xc^^Ol*%r55#jcrh4S@z>BxZawsrM*{uw z_)CusOs3BvZU>^PQ-Y@yVVu5G5Cs6IDdZ5R8G7GJKX$3C#zAtj4rEa0KNX0)ef*lD z-`rYwmvb=HTp*9O$W)kHFc$-vTTnv-@tgnoacjw@B`0Tm=DBkV?kFnnQ=^5$mer@X z{k3SptUTaFdw^UvTwDy9VAKR_2B2YI4Xi+btw0fAtD<#3O4Ms{kf0Yk4S_>$rWfr0 z4C@o%=GbFKuKuii_v}0<SQKidW&1y%5tuVd#+B6ijS^o;Ej5k(U^kV#vi{DMthEl1 zsoWxfQ5_hIgP3<gpb7`E=kh=d$2mBw4=lmahO>si92^9AQ(zVj!hAEXHS@J}U@{B@ z%mKa(G7Sd_jV_o9U4dfE%Mr7We)Z*H=bXaxBJBh*?XvV55F#RJ99?iU%&nsfARg$S zG)xb;=Dx;rcQ4thP~g>orX$s0Q4y+%jEZ2z5H#qk7((r7IE2(*`EBa%x^GuLq>GpR z(}UB80PrFshy!Qlu@@Hn<Gadp)~l|yf*=M#pY#KKlY$stHhiq#815TBmb?1P%H#fV z>CAKyb#;JNaMp?xT`WIK6;-R9xpcZ#?|o@Sy!HOAd3)3KUtX{rR@ryH??|?M?<>H8 z|L0Qs{aEjWP?Q}q=o%GeAI#SV;o2a+CiefLcVosF98++XFh<~j;S4=C3CA3qwd0L; ze&cLoA$Db@iC%5Y!$Fh3&KQb=<l!bfw~3#-0cSVx+0Dib?0*STGfy~k;<s0SbI&b= zD(62_nS^#)v5E}vFl>AyS&#&wBnvVQLYY!?<DtL0aMS+wSH&jAwZf#QS4S3%#H%9< zpjzmkq_M!eBeooRc<5E9<fx%~3p|8ayfLO=3<SrRg5&8uzj^Hu-N#qm{<A`#`Nov( z%LlCeO{eyEBFB8O<Dg+RzsVySZVpr<nk_Ewhh~ot9^W6$`i}2U(3lDiBAb28n=T#y z%xQ^4)=b^Ey2!YG*mf<~wOH3O-Bd}Cf(gM1{e#BD;6(hLmYa4#&{z^&g7cGuC*yBj zunvE_J3-@}2Azq0C;H(`Y`;clGhlGe@Mrj}182}u(0FY)&f&8QaCQaGw)<D(*nqR< zKoZ9pe0C1bF2yV>9&m6C+<UN#_&11tjN!$@OYwC2sfR~j{#jkCLR)>k4&18~->_k9 ze&H=mLS)VQ{D^4BaOBW`6{x$)fLt~2>s!`!%AnG@szqvM)EIoyOQ%A7LxuqF#?T={ ztNg}L-_R;*%zX3NZ~MM|)uA7-tPH|rS%`xqpZH`8A#GFOEF72NOzhBwYi8$zpP!oh z>^}=tcY4@0Vx5u7OF&?d!WcGk*kr#k%r|T@cY4q{M|}O;4_?23IxWz<wVHbW6t!=O zwH>_POG2-A(@Symk`1*LnyJ$QYQ2J0z^QiivesCs&GGb>Ob20UKQMY-*>$jMwvOEj z(|^a39dJG#4L&*`XuMSLQW&V{_62d^|GW1Gb?tA^*+85P<g;P0D~GZDS!qneT-D-k zl~IF(EVGHm92_J=rWg%4+HiIf?B0{u7OpWSLtob5S{=^n=*-NWJa>G1xbJkrp7Wpi z^y`f?7kszv$h?`TR=WUMyUbuVps|gks*alFH;(chh2$Mb;Jn9QIb+kacfCuq5zu?r zSYMdiGWVkI?>PAOkNa+oZCwRq^xZ)SI2-=c*#@0GfUlE1;2(;!3j;Mch<Yv#)Z%Et z*%g5T9CUYMU>=S}oNWp;;K<=@OJFGuLcn%t-|Yc1K6eIY-~f8ekM}<~xxUYvhpVwk zZ3tVWmbQ3jtAx(ra1&{t6g+95AA8=N1k(!Rx;p#Kls;=`ZDZ0l=8v0SjV2Z8xd;}V zs<_Q3ICWU@unIh{_(OppIF&g|v6!7x)kHC;29GQ_5(pYvFcg0~f*qid&R{40n*Q2z zQ{$e$@dm3^wYEq8VqbAcO#Wx8n3ClFZSXs``AKq#PwL^!+%W5tGj@$Tqg#)PZ6pjz zH6jN!qIg6Z9)EK1!<7rij4oE)OT1e81E{tBM}{-1f>lroBYjna2`p17Ac0*>9c?-f zciKEMa^r2MU3c^As&OYwGNOSFgc&CT9L2?G)mRZ+5k`Q+w<644sK5wyVQ7!mSXHo! z2C>hEk8kSpcIs!UA2l5sb_l!zWInM0GU9{f;aU(13YscIrLKQI<H#XLj`kZz`i_KQ zmM;@`LdfnUAq$Fb!*L$YF2`^$574#kfea2P9<yun&zCMf?clc+K+b`y5rYRw7mlbH zF~M()@Qs+jU8)JBp$4rl2kR|m^%rN=XU4IU66jzT)4`MeQf%QuUh#AOY8)h4p2ykq zeD;EW4!)6Ehik9Hzk8j1xlh5epZbe&?JGR@6+hPv(cjH}TL30;AV3=N05I<XWY%^c zjI)FJ>`<H?%4fq78W|oSOQ{lPm3+1U(X$1_(B|vYe{pcz!jeL#nZc$ohD>J0l!7Us zs3`^TN=fpJ{mF&rWdHg_&S%y=RQTF$cfa-Zd8V>kZH|@_R~o%a(1F|`-NZk^!$%b# zH9BbAsxGSEB5l!VgT}o4<D)zM&u>VYr>*Et*W7o*IPG+5pHsV>I^L#ZFgg&dKUbpH zgIenbbqR+`#8{u~d{=!TT5TPyzbvdjCvWQXV_yBG`Q9C$Z$EDIJ5TA)7@8M1G+c7o z*pe@N=C9jp58wH(=l-myQV6hPM#D59j-eB~0DJ#Oe_!^87Y{g^giT0?u(ZRg_j1yo z<<J{NTi+d3pSjkFQZqRI@XG$np8eRo@~$HizZ&%ImZ`@DkAol_8yt(jlY*1*_k`dH z_&aURG?4GKYo~1u8jFI9aHTd_i@%G5i}819a4G)Af-(F}1QYn%9&E?op9Ft`zmEqW z$KRKOFXL}_Unt|gtc(xA*&%$^fwK-iTWvJLj3*Mm5!Y_yYvQw3#M5F07M+>KI2=Uc zeGsAS!)Br=e4)DsAsBR!e+kaSj)-(Ej9^gMPY{gr*Wn-?c!EEMBZsr;Xk|LLGTq;S zvx{)8+MmKf#%8tu0vsD~whd?7`0Nj8?+@JGLpXbg&z=M8KgR*5=W+HtpNUT)69nRO z%i=7D|67e~pW)rl_}$NO_Bo$@<zE5TKLdBWVeWQwyfzTH0IW|C^o2*;H$dY!5N8MS z*+85P<g-CI8^mXWaW<IG4#U}Dd^S9gf?%K#RR$K~Ae}Eh&PPx+z<h29oQ1QdzzQ4$ zK~vxy9Asm*1)6Yl;OtDacP6)YA*AhvENwU7+6KP15!W{IwJm|GU_<;5-VoowK_8|f zW5x2;ueo5@HQ#jK^4-Tyxx`z%;VF_!;|s<^E{!jkOmZoxJrkdHP0rKef+D&~Vj$|I zf<eF7eEo0#^ym#bRUs8DtGvAYi_#2vH=uY&0-SS$=fYw?(|4}0*i~XjXhoHaLQMOD zDhzz`g^$f$Q<natVs|YiS@5DOA%KMvnh~4<hir;(hH%J~#1<{9eI&pHuysvef3&V5 zE4o#CET&&Sj$#q2h4?KgE`d@qAHL|r_r87byO;7nVw?jcfqMbc<ltn0G~PE^fTSi% zfE1S>g$h1a@EDZRi+x`#!mNuA0g*vOd(&TUkU^wuKf8M@%|<!NvkGRxH=b2+lHE7H z*j&<l^_M%|y!ueC+!#@c;>>#5Y^;QL2cr+Zu%QS|3oZCuAl&Uox6cLqI7a)r$=TEK zERjT2_1;LCk|Wf8WuPC9Vt(&R5Hrqi7VjxDTNDXcM!VRv0S4iI^!^or5jaNj`&Zz7 zoNE_AwDaHF9=fXb-r*>g<H-?uF|q!~H+XP}8aV@ipMhKl0WXqVr8>JN8d19$C>0?K zc(CU<#z?|-AdVs2fDp7pZWS*cx8Fk#W22>|vUg7SX$6h2q}TQE#PArjx-Ph`j9R4M zy9UA#LLr>YacD3`*toW2+_*%{*MDRX@3s$YFQRv$4vKEwkI2tF`|G>*uRN}4hP}sm zR9!SN46gEp@zzg+KOIVM;aByjd{E`UO6(69K-k|}y|tE}hgVpuU0^Zp>mR=Rl_6Js zRAM)r7si|EYw750n8#%ShcPNRiYJ18<)~GZrKeFxc~^OioaSQez_C0JP^ClU$h#iC zYRRy%JNA_$&yy>Q_~Y;ZYeMf&074kV#yP=rCex_tS3;=FQAMjvX%bb%#Z0K((0Sed zB)y2=8Fa2KWP!44tInCW`MUHA_6f2Qo<JG5$`qu$hKXUwK;x3&C5$rql>jNfUI8S- z5WL-qFC1owrWiRm+h;LEQxKZQxoZ+tZc7$;xQH!9nZABy)K*LX7A7~OzKTqhSrcSu z9&q!y&%C#&iv>ujkRakyA0;D1ev-D_AU7OI#{oD-FhEa(m!A%dlQKl*7kZ`u?1Q!{ zciQM>paOCyVgqAL$uNydwaF&{QdtXu8VOb&8x@WrHi{08vPg>tqhX(TUB%^OC@<_n z3NMco-%9WmR8UT1!hi`pI|$8{nkqgh+ESZf%Bl4dO=%bc>A)JsiO9sSafv1sjqC|G z*qRMU*$0puH}JT@)DUdV!ICvpELqVB$F}u8jF68kq&FF11ayUv-30p(=Q=ztXjf&I zdcX>)4cZ5Q%f*2gN>bDfsH-4o5R|NN;YEc!duYwx64atGalpi3)Dps;!(1&*+gbb3 zf{OObRjSF_UTqXaEQw!7E`m2c0h^CPtL4FR7Qgf>xk|Yu8r6E`8Z85bGN5t6t{jL% zU`yDUBc(EE`|s<A7OlAfU&EHVm)R0<;9~^#D^e8B4$fxkqhATZryG+4FFNaDwBUxD zQV)<3d6#8dWx+D0Li&|$E$sK+BR77sIz!Z_N;OW!=R)Ua=3=ENnk)0ZBgJ4knC3Ck zuWV6yte#9I_mT4TEhPq>S}>KB{?y>qV#!%5vDgb^<|yY<IEF+{<KRZ-@Wx={P}zVg zz@h2kh?I*rqawH>zI6?rpxNpi*vX?nAZp|e!IgiXdr>?+?t7&SSl~iMhz~{qEv0rz ztZx7-sB$tc4PMGrO}`Q=DtfDU%tIFMSg|8R6ue{3j*LqNKe6VV4R@UL%@eZIJmqC+ z2z>96HAGL3079bcvx8?(p}y!>LZ~)v5)j(AyTV8E*uXge-+MR!DIvUv-yoe!(Y*h= zPtW}0yMNi=F5hW&b~>u$JHBMgbtqcSKZB2SJ`-S;#jhX7EZLZH9W;ZvW{^0aO8PK) zB$!SZcmlTqS9zEeXv!p3$QCxW{F<^%*F84mF`lExf{#^bYh1`N^`$h++-c(gKDNOn zJX|;Vx@y7!g5lM!c~UD=RL4S+Qk^TLDC^sHNYQqQ!*<{h=PoHadivL!Pk7|MV!L&8 zV*9E@GJy>%1?5>`NPR={<1xWwcvSQ&=T+^yu3%DzCpO@g!El(-gvhODZM~GnwY6^R zr7rVX#h&c6F{0EpFSPfBatW+*PQ6;lx<nqs;BkbGY2j&1PSb+Z9+Ld~{P(3Z`+czX zr*{6rmp7?;v7VeIAd>Bbhy7ucz*R9ZigLIrU2-R;QEmRG2JWrazW0TZDHVeHd-!xX zcTLFWHC+oAK6}@_c8F%sN*YYYki3hSh+{Cai-Q+4Rno7V2o<(-$!E9mp!Nszg(uOh zOdmR(2Z_{lm8mk}LPn`&y&?@QEzN=grn3afh!O^ys4|T^*)^<(fAm4tIPRNE9dxD^ zw&u~9x*_Gq=-_CkGy0XoduZ?zFaKf4hZhq@oSI~QiWCV;%)A@2y;Ly8?a{AnPkjUg zavbZ6l5yXD`|-%?j20w-+IZsYj0QTtOHBCNTi$HAcKm%MT5yQ<*;F+SwairW2dL#g zATmrMOazfirCP4|&&mZ&|2^%GS_xM}nfrW&_Wzf_&I!(86N-K%uqrMf=N3zcv1K(( zTJ|hW-vERPgnKK(2E{rgAs|<gNe#IubXT6`hQL4sc!Xyuf<4N!RK-0#7)i80wcSu6 zWq0y`lNr^>2D?oz^{q`O$JoVJ3Yq?tv4ruLGDg$6i>y>xpJ>C=2!MksEbC>1m$7ZL zEVxWr)^|PC`bJ&$?ME~wB<qXie~`dbM2d)CAr8T`A_6#48~6gFst8%P;}TZ9FAnw< zkV@ny1AoHoikPWVBCp=R<zH`x=3F8<JWrucgWC)O8Qa@^5X?xxdsgtQ34}8Gl?0>e zjyw_Mw36l(%wyV_7o4Z8Bvt#>)98c)B9$Z&{-S}4nCKBbE|p61@=eu8KD=`m7AQLT zRltl;0DsrAl`Dv80gC)+qx!If*f5XL=rdY_t!#(kSDDG`6XhC22T4CZ@Np(*M5h%g zt134Af@{VUEz4069n=o2Wl}~oyh4s@{+*v~UOT6%#BPZ|F$q&dT(p}a<eQ<AwLcDF z*E|bT<k`R+X^Nb%_R5>Sp8fX&?Kpxo)5ftwrs*5NU=`XuJ$O1pN568`RjrSc!PGAD z%F`MI8)1<2v<AUOz`2XbHr`Ryw$H!keN=1vbju#T%K}neawJOZ6A1SFfY-vKNShs2 za9ER{{w95>6Ga?J6&m(5S<2V5P1fRpiy0kATBym|dFw03c76D-kYpiYWOrc?8<M<3 z^RG(zyC%4XCyRb1V%4XkER&6;mWWV6MbzS0Dpdy64=i;VZihbob;sxvkNLYDGx(Bt z{j7R|#0zigu3;1yh(yz0i5pdAtR|W5aTTm_8%@$3$@<FXkhWhnauw_BRl!x0b<$X9 zdsWfdgQ(AsIV>5lgn1stKkk@=s*Uey`gp4jh(=OhiGc|g(nu|ZC6lSu4)nU0kLB`+ z*~jV_*unA|DSzc-{prp7-&uP1ybnAl?a{(Vxmy&Ngk6)R>RuFrJ$$K`hQ7pp`%A%> z%3N=&jf6dWMY+i=95qZTqWq-B^}hOWi^g54lx)H~c)9Rp7KO;T4Rz@xmFKhGRL-ct zH-BY=Qapt?Ml%Q^-80(Nkjj871b9Rmzd~C3D}NI=@|Axwox389suEvA<C3>%oWp5V zDx9`-;8GqL@{R6rnkqo@#%Z^&5M@C;o3cd6J)^2_$@~5NjY1R?iT6cek^6mBOsNp! zZR&^6Mo7xl5acS(U2;|JYb)CE@_`HC0~bpFtq^VCT<Qu{n(1YYuR|fzI)iNhSt2>X z)w9}2SI>q+T_ROG5Qne;Me0_mO;zdTjk<wA-9U*tQHkY7ovI7-e!tSFL#0*&laZ*} zYH+cGTDsvxy^EGOWFuU@<>BQlyq5=;Tb{3waB5Me9sAbePedWugg@LrxchKv`yGzF zEzac(e3%;W(bF&ej`sxSTs~<ZxxEEUY1Z`t<V6F4Z9E{6*WD%^0JU76W<cyHEOraP zn-r@88ai;SmZ+d&!_~J5TT@lkDHM3fBNVyCa3uNdDg#RyjHC;ZYClEqiI`|CM|qs! zXHhEG<a$3{z2u0(ky|F))h4Z9sU@e`m1I)ap-?HAu{OAtr6v7Jg{n4n6l1b)h^ZnO z6OD@i(PccMiN*>#*DH|(UR240rfH|7M8>@k2g?-vQU=~FF;&?-J7KhSLQ<6S%Z%Ge zK*&i32hH$Hb@drjRqYE9R0WF$!9|#PhVrC=lUQk@{6ZPZsu;4j>8(NUHPXVU0kh-W zH9e}(MMGlWQUx@|eoY71yaUU0$UPNx85NQ`Rk4VE-G$4;pfnB(2waMq12-;JdAS-! zerzg+^6VHKJnB7$VojX8q|~2%TVMF?PyYrd+432LcaLzD;}R%~49B)$8w)M^m6UbR zn5B=cfB2}l-PCe_b`bPB*30N}KNlWFhW4O>K`7nC-+9skQ$?@dtTfD+ggVq2JWNrO zI>R+r_kU43G;#ZiZv?8O8sOb}RVeg92%!i4!ew|6q>FPYgj5wa`ljM>Y=6^4ThGd* z2Yo!8YOe?2V3w10*kw9pA?Ws_Pp{s3Zp%jxIUo=jN*Rn@9~j)dUOFx7ktf5sgkaYx z3;Mj>aQj_7k;-Zavem`~JbqE~bAijgQ1ug1l;pX-?vNG7<wn;~c;<pJ7fhm-QF$@R zR23gWysKI*4HtRe{VBtSni{0eu~i;Xo~W@Yl5~GbzYo{Fvii<P71j0_y+pO`2pnU% zjR!C#ICn)ci)Lr*PWf`sQq`77lh6harL?^PD!w?tv<^~bosr^()**z3b91O%$RuXx z;yc%UJALlkN2`VeE0ND56rD(z-2lCNgETj8fT@6U7d!p3?qAn_(DLhJHAY-aeIvB@ zjfP-qQIh3m>co8`Ki_^~^zXU_3#V;ZUe<;xb;7BrA396oRIMaek+phSrk_dBM~M++ zqh&K#rO}AvJbw9R<5W7AK{mBaihb$47%=3s6#~|wGxZ@@!AU3=DWgo}{QmO`se}2! z`731bcYFCYSKR#V(IfP5T%Lr;t#zXgtlNJb11GAqu9G8E%P(cFnti~2{diW3u}4!e zwoxK<h_#7Ul3L8_`VY6SIQgL0pb)KpKgK6Y_nT}y;(G*tvEGt4{iQRpVIQ4|&qdRj z*!7Oi#7=N@_BG!4n%@wM{OQ_yzYhnUZN%9|KHH45&3yJ1&c5QaZk%=VSpa2SfdIWB z_JgN0@r^_}TZOx;_^zm(>5GMas${ZvM1JKz3w`~JaUu%eekKvAKIh<$Ra?R7FuAK( zB{dX>h{B6iQ&x~#VD;61yz|yQL;k%>@rsA9@~M9a3U68M;x|a=E?-3z`1aCBAkYCE zox@`Z1nTJA)ri`mM&rcAZ3jYy9w=3)DDQJ~o2pUOEm+p6+?oUeZ3y8dj5u>x3L{bc zI96g-m8I%7ERG!vDL7b4K~X`dq@b#9)h}tjAQ8%D@j$#hP?j%=l0+5RRy&gFm$lca RUmk>)2g#R36{CFl{{y1IC=>ty diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h deleted file mode 100644 index 0477527a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h +++ /dev/null @@ -1,1222 +0,0 @@ -/* Copyright (C) 1991-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * POSIX Standard: 2.10 Symbolic Constants <unistd.h> - */ - -#ifndef _UNISTD_H -#define _UNISTD_H 1 - -#include <features.h> - -__BEGIN_DECLS - -/* These may be used to determine what facilities are present at compile time. - Their values can be obtained at run time from `sysconf'. */ - -#ifdef __USE_XOPEN2K8 -/* POSIX Standard approved as ISO/IEC 9945-1 as of September 2008. */ -# define _POSIX_VERSION 200809L -#elif defined __USE_XOPEN2K -/* POSIX Standard approved as ISO/IEC 9945-1 as of December 2001. */ -# define _POSIX_VERSION 200112L -#elif defined __USE_POSIX199506 -/* POSIX Standard approved as ISO/IEC 9945-1 as of June 1995. */ -# define _POSIX_VERSION 199506L -#elif defined __USE_POSIX199309 -/* POSIX Standard approved as ISO/IEC 9945-1 as of September 1993. */ -# define _POSIX_VERSION 199309L -#else -/* POSIX Standard approved as ISO/IEC 9945-1 as of September 1990. */ -# define _POSIX_VERSION 199009L -#endif - -/* These are not #ifdef __USE_POSIX2 because they are - in the theoretically application-owned namespace. */ - -#ifdef __USE_XOPEN2K8 -# define __POSIX2_THIS_VERSION 200809L -/* The utilities on GNU systems also correspond to this version. */ -#elif defined __USE_XOPEN2K -/* The utilities on GNU systems also correspond to this version. */ -# define __POSIX2_THIS_VERSION 200112L -#elif defined __USE_POSIX199506 -/* The utilities on GNU systems also correspond to this version. */ -# define __POSIX2_THIS_VERSION 199506L -#else -/* The utilities on GNU systems also correspond to this version. */ -# define __POSIX2_THIS_VERSION 199209L -#endif - -/* The utilities on GNU systems also correspond to this version. */ -#define _POSIX2_VERSION __POSIX2_THIS_VERSION - -/* This symbol was required until the 2001 edition of POSIX. */ -#define _POSIX2_C_VERSION __POSIX2_THIS_VERSION - -/* If defined, the implementation supports the - C Language Bindings Option. */ -#define _POSIX2_C_BIND __POSIX2_THIS_VERSION - -/* If defined, the implementation supports the - C Language Development Utilities Option. */ -#define _POSIX2_C_DEV __POSIX2_THIS_VERSION - -/* If defined, the implementation supports the - Software Development Utilities Option. */ -#define _POSIX2_SW_DEV __POSIX2_THIS_VERSION - -/* If defined, the implementation supports the - creation of locales with the localedef utility. */ -#define _POSIX2_LOCALEDEF __POSIX2_THIS_VERSION - -/* X/Open version number to which the library conforms. It is selectable. */ -#ifdef __USE_XOPEN2K8 -# define _XOPEN_VERSION 700 -#elif defined __USE_XOPEN2K -# define _XOPEN_VERSION 600 -#elif defined __USE_UNIX98 -# define _XOPEN_VERSION 500 -#else -# define _XOPEN_VERSION 4 -#endif - -/* Commands and utilities from XPG4 are available. */ -#define _XOPEN_XCU_VERSION 4 - -/* We are compatible with the old published standards as well. */ -#define _XOPEN_XPG2 1 -#define _XOPEN_XPG3 1 -#define _XOPEN_XPG4 1 - -/* The X/Open Unix extensions are available. */ -#define _XOPEN_UNIX 1 - -/* The enhanced internationalization capabilities according to XPG4.2 - are present. */ -#define _XOPEN_ENH_I18N 1 - -/* The legacy interfaces are also available. */ -#define _XOPEN_LEGACY 1 - - -/* Get values of POSIX options: - - If these symbols are defined, the corresponding features are - always available. If not, they may be available sometimes. - The current values can be obtained with `sysconf'. - - _POSIX_JOB_CONTROL Job control is supported. - _POSIX_SAVED_IDS Processes have a saved set-user-ID - and a saved set-group-ID. - _POSIX_REALTIME_SIGNALS Real-time, queued signals are supported. - _POSIX_PRIORITY_SCHEDULING Priority scheduling is supported. - _POSIX_TIMERS POSIX.4 clocks and timers are supported. - _POSIX_ASYNCHRONOUS_IO Asynchronous I/O is supported. - _POSIX_PRIORITIZED_IO Prioritized asynchronous I/O is supported. - _POSIX_SYNCHRONIZED_IO Synchronizing file data is supported. - _POSIX_FSYNC The fsync function is present. - _POSIX_MAPPED_FILES Mapping of files to memory is supported. - _POSIX_MEMLOCK Locking of all memory is supported. - _POSIX_MEMLOCK_RANGE Locking of ranges of memory is supported. - _POSIX_MEMORY_PROTECTION Setting of memory protections is supported. - _POSIX_MESSAGE_PASSING POSIX.4 message queues are supported. - _POSIX_SEMAPHORES POSIX.4 counting semaphores are supported. - _POSIX_SHARED_MEMORY_OBJECTS POSIX.4 shared memory objects are supported. - _POSIX_THREADS POSIX.1c pthreads are supported. - _POSIX_THREAD_ATTR_STACKADDR Thread stack address attribute option supported. - _POSIX_THREAD_ATTR_STACKSIZE Thread stack size attribute option supported. - _POSIX_THREAD_SAFE_FUNCTIONS Thread-safe functions are supported. - _POSIX_THREAD_PRIORITY_SCHEDULING - POSIX.1c thread execution scheduling supported. - _POSIX_THREAD_PRIO_INHERIT Thread priority inheritance option supported. - _POSIX_THREAD_PRIO_PROTECT Thread priority protection option supported. - _POSIX_THREAD_PROCESS_SHARED Process-shared synchronization supported. - _POSIX_PII Protocol-independent interfaces are supported. - _POSIX_PII_XTI XTI protocol-indep. interfaces are supported. - _POSIX_PII_SOCKET Socket protocol-indep. interfaces are supported. - _POSIX_PII_INTERNET Internet family of protocols supported. - _POSIX_PII_INTERNET_STREAM Connection-mode Internet protocol supported. - _POSIX_PII_INTERNET_DGRAM Connectionless Internet protocol supported. - _POSIX_PII_OSI ISO/OSI family of protocols supported. - _POSIX_PII_OSI_COTS Connection-mode ISO/OSI service supported. - _POSIX_PII_OSI_CLTS Connectionless ISO/OSI service supported. - _POSIX_POLL Implementation supports `poll' function. - _POSIX_SELECT Implementation supports `select' and `pselect'. - - _XOPEN_REALTIME X/Open realtime support is available. - _XOPEN_REALTIME_THREADS X/Open realtime thread support is available. - _XOPEN_SHM Shared memory interface according to XPG4.2. - - _XBS5_ILP32_OFF32 Implementation provides environment with 32-bit - int, long, pointer, and off_t types. - _XBS5_ILP32_OFFBIG Implementation provides environment with 32-bit - int, long, and pointer and off_t with at least - 64 bits. - _XBS5_LP64_OFF64 Implementation provides environment with 32-bit - int, and 64-bit long, pointer, and off_t types. - _XBS5_LPBIG_OFFBIG Implementation provides environment with at - least 32 bits int and long, pointer, and off_t - with at least 64 bits. - - If any of these symbols is defined as -1, the corresponding option is not - true for any file. If any is defined as other than -1, the corresponding - option is true for all files. If a symbol is not defined at all, the value - for a specific file can be obtained from `pathconf' and `fpathconf'. - - _POSIX_CHOWN_RESTRICTED Only the super user can use `chown' to change - the owner of a file. `chown' can only be used - to change the group ID of a file to a group of - which the calling process is a member. - _POSIX_NO_TRUNC Pathname components longer than - NAME_MAX generate an error. - _POSIX_VDISABLE If defined, if the value of an element of the - `c_cc' member of `struct termios' is - _POSIX_VDISABLE, no character will have the - effect associated with that element. - _POSIX_SYNC_IO Synchronous I/O may be performed. - _POSIX_ASYNC_IO Asynchronous I/O may be performed. - _POSIX_PRIO_IO Prioritized Asynchronous I/O may be performed. - - Support for the Large File Support interface is not generally available. - If it is available the following constants are defined to one. - _LFS64_LARGEFILE Low-level I/O supports large files. - _LFS64_STDIO Standard I/O supports large files. - */ - -#include <bits/posix_opt.h> - -/* Get the environment definitions from Unix98. */ -#if defined __USE_UNIX98 || defined __USE_XOPEN2K -# include <bits/environments.h> -#endif - -/* Standard file descriptors. */ -#define STDIN_FILENO 0 /* Standard input. */ -#define STDOUT_FILENO 1 /* Standard output. */ -#define STDERR_FILENO 2 /* Standard error output. */ - - -/* All functions that are not declared anywhere else. */ - -#include <bits/types.h> - -#ifndef __ssize_t_defined -typedef __ssize_t ssize_t; -# define __ssize_t_defined -#endif - -#define __need_size_t -#define __need_NULL -#include <stddef.h> - -#if defined __USE_XOPEN || defined __USE_XOPEN2K -/* The Single Unix specification says that some more types are - available here. */ -# ifndef __gid_t_defined -typedef __gid_t gid_t; -# define __gid_t_defined -# endif - -# ifndef __uid_t_defined -typedef __uid_t uid_t; -# define __uid_t_defined -# endif - -# ifndef __off_t_defined -# ifndef __USE_FILE_OFFSET64 -typedef __off_t off_t; -# else -typedef __off64_t off_t; -# endif -# define __off_t_defined -# endif -# if defined __USE_LARGEFILE64 && !defined __off64_t_defined -typedef __off64_t off64_t; -# define __off64_t_defined -# endif - -# ifndef __useconds_t_defined -typedef __useconds_t useconds_t; -# define __useconds_t_defined -# endif - -# ifndef __pid_t_defined -typedef __pid_t pid_t; -# define __pid_t_defined -# endif -#endif /* X/Open */ - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K -# ifndef __intptr_t_defined -typedef __intptr_t intptr_t; -# define __intptr_t_defined -# endif -#endif - -#if defined __USE_MISC || defined __USE_XOPEN -# ifndef __socklen_t_defined -typedef __socklen_t socklen_t; -# define __socklen_t_defined -# endif -#endif - -/* Values for the second argument to access. - These may be OR'd together. */ -#define R_OK 4 /* Test for read permission. */ -#define W_OK 2 /* Test for write permission. */ -#define X_OK 1 /* Test for execute permission. */ -#define F_OK 0 /* Test for existence. */ - -/* Test for access to NAME using the real UID and real GID. */ -extern int access (const char *__name, int __type) __THROW __nonnull ((1)); - -#ifdef __USE_GNU -/* Test for access to NAME using the effective UID and GID - (as normal file operations use). */ -extern int euidaccess (const char *__name, int __type) - __THROW __nonnull ((1)); - -/* An alias for `euidaccess', used by some other systems. */ -extern int eaccess (const char *__name, int __type) - __THROW __nonnull ((1)); - -/* Execute program relative to a directory file descriptor. */ -extern int execveat (int __fd, const char *__path, char *const __argv[], - char *const __envp[], int __flags) - __THROW __nonnull ((2, 3)); -#endif - -#ifdef __USE_ATFILE -/* Test for access to FILE relative to the directory FD is open on. - If AT_EACCESS is set in FLAG, then use effective IDs like `eaccess', - otherwise use real IDs like `access'. */ -extern int faccessat (int __fd, const char *__file, int __type, int __flag) - __THROW __nonnull ((2)) __wur; -#endif /* Use GNU. */ - - -/* Values for the WHENCE argument to lseek. */ -#ifndef _STDIO_H /* <stdio.h> has the same definitions. */ -# define SEEK_SET 0 /* Seek from beginning of file. */ -# define SEEK_CUR 1 /* Seek from current position. */ -# define SEEK_END 2 /* Seek from end of file. */ -# ifdef __USE_GNU -# define SEEK_DATA 3 /* Seek to next data. */ -# define SEEK_HOLE 4 /* Seek to next hole. */ -# endif -#endif - -#if defined __USE_MISC && !defined L_SET -/* Old BSD names for the same constants; just for compatibility. */ -# define L_SET SEEK_SET -# define L_INCR SEEK_CUR -# define L_XTND SEEK_END -#endif - - -/* Move FD's file position to OFFSET bytes from the - beginning of the file (if WHENCE is SEEK_SET), - the current position (if WHENCE is SEEK_CUR), - or the end of the file (if WHENCE is SEEK_END). - Return the new file position. */ -#ifndef __USE_FILE_OFFSET64 -extern __off_t lseek (int __fd, __off_t __offset, int __whence) __THROW; -#else -# ifdef __REDIRECT_NTH -extern __off64_t __REDIRECT_NTH (lseek, - (int __fd, __off64_t __offset, int __whence), - lseek64); -# else -# define lseek lseek64 -# endif -#endif -#ifdef __USE_LARGEFILE64 -extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence) - __THROW; -#endif - -/* Close the file descriptor FD. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int close (int __fd); - -#ifdef __USE_MISC -/* Close all open file descriptors greater than or equal to LOWFD. - Negative LOWFD is clamped to 0. */ -extern void closefrom (int __lowfd) __THROW; -#endif - -/* Read NBYTES into BUF from FD. Return the - number read, -1 for errors or 0 for EOF. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern ssize_t read (int __fd, void *__buf, size_t __nbytes) __wur - __fortified_attr_access (__write_only__, 2, 3); - -/* Write N bytes of BUF to FD. Return the number written, or -1. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern ssize_t write (int __fd, const void *__buf, size_t __n) __wur - __attr_access ((__read_only__, 2, 3)); - -#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 -# ifndef __USE_FILE_OFFSET64 -/* Read NBYTES into BUF from FD at the given position OFFSET without - changing the file pointer. Return the number read, -1 for errors - or 0 for EOF. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, - __off_t __offset) __wur - __fortified_attr_access (__write_only__, 2, 3); - -/* Write N bytes of BUF to FD at the given position OFFSET without - changing the file pointer. Return the number written, or -1. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern ssize_t pwrite (int __fd, const void *__buf, size_t __n, - __off_t __offset) __wur - __attr_access ((__read_only__, 2, 3)); - -# else -# ifdef __REDIRECT -extern ssize_t __REDIRECT (pread, (int __fd, void *__buf, size_t __nbytes, - __off64_t __offset), - pread64) __wur - __fortified_attr_access (__write_only__, 2, 3); -extern ssize_t __REDIRECT (pwrite, (int __fd, const void *__buf, - size_t __nbytes, __off64_t __offset), - pwrite64) __wur - __attr_access ((__read_only__, 2, 3)); -# else -# define pread pread64 -# define pwrite pwrite64 -# endif -# endif - -# ifdef __USE_LARGEFILE64 -/* Read NBYTES into BUF from FD at the given position OFFSET without - changing the file pointer. Return the number read, -1 for errors - or 0 for EOF. */ -extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes, - __off64_t __offset) __wur - __fortified_attr_access (__write_only__, 2, 3); -/* Write N bytes of BUF to FD at the given position OFFSET without - changing the file pointer. Return the number written, or -1. */ -extern ssize_t pwrite64 (int __fd, const void *__buf, size_t __n, - __off64_t __offset) __wur - __attr_access ((__read_only__, 2, 3)); -# endif -#endif - -/* Create a one-way communication channel (pipe). - If successful, two file descriptors are stored in PIPEDES; - bytes written on PIPEDES[1] can be read from PIPEDES[0]. - Returns 0 if successful, -1 if not. */ -extern int pipe (int __pipedes[2]) __THROW __wur; - -#ifdef __USE_GNU -/* Same as pipe but apply flags passed in FLAGS to the new file - descriptors. */ -extern int pipe2 (int __pipedes[2], int __flags) __THROW __wur; -#endif - -/* Schedule an alarm. In SECONDS seconds, the process will get a SIGALRM. - If SECONDS is zero, any currently scheduled alarm will be cancelled. - The function returns the number of seconds remaining until the last - alarm scheduled would have signaled, or zero if there wasn't one. - There is no return value to indicate an error, but you can set `errno' - to 0 and check its value after calling `alarm', and this might tell you. - The signal may come late due to processor scheduling. */ -extern unsigned int alarm (unsigned int __seconds) __THROW; - -/* Make the process sleep for SECONDS seconds, or until a signal arrives - and is not ignored. The function returns the number of seconds less - than SECONDS which it actually slept (thus zero if it slept the full time). - If a signal handler does a `longjmp' or modifies the handling of the - SIGALRM signal while inside `sleep' call, the handling of the SIGALRM - signal afterwards is undefined. There is no return value to indicate - error, but if `sleep' returns SECONDS, it probably didn't work. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern unsigned int sleep (unsigned int __seconds); - -#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ - || defined __USE_MISC -/* Set an alarm to go off (generating a SIGALRM signal) in VALUE - microseconds. If INTERVAL is nonzero, when the alarm goes off, the - timer is reset to go off every INTERVAL microseconds thereafter. - Returns the number of microseconds remaining before the alarm. */ -extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval) - __THROW; - -/* Sleep USECONDS microseconds, or until a signal arrives that is not blocked - or ignored. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int usleep (__useconds_t __useconds); -#endif - - -/* Suspend the process until a signal arrives. - This always returns -1 and sets `errno' to EINTR. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int pause (void); - - -/* Change the owner and group of FILE. */ -extern int chown (const char *__file, __uid_t __owner, __gid_t __group) - __THROW __nonnull ((1)) __wur; - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -/* Change the owner and group of the file that FD is open on. */ -extern int fchown (int __fd, __uid_t __owner, __gid_t __group) __THROW __wur; - - -/* Change owner and group of FILE, if it is a symbolic - link the ownership of the symbolic link is changed. */ -extern int lchown (const char *__file, __uid_t __owner, __gid_t __group) - __THROW __nonnull ((1)) __wur; - -#endif /* Use X/Open Unix. */ - -#ifdef __USE_ATFILE -/* Change the owner and group of FILE relative to the directory FD is open - on. */ -extern int fchownat (int __fd, const char *__file, __uid_t __owner, - __gid_t __group, int __flag) - __THROW __nonnull ((2)) __wur; -#endif /* Use GNU. */ - -/* Change the process's working directory to PATH. */ -extern int chdir (const char *__path) __THROW __nonnull ((1)) __wur; - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -/* Change the process's working directory to the one FD is open on. */ -extern int fchdir (int __fd) __THROW __wur; -#endif - -/* Get the pathname of the current working directory, - and put it in SIZE bytes of BUF. Returns NULL if the - directory couldn't be determined or SIZE was too small. - If successful, returns BUF. In GNU, if BUF is NULL, - an array is allocated with `malloc'; the array is SIZE - bytes long, unless SIZE == 0, in which case it is as - big as necessary. */ -extern char *getcwd (char *__buf, size_t __size) __THROW __wur; - -#ifdef __USE_GNU -/* Return a malloc'd string containing the current directory name. - If the environment variable `PWD' is set, and its value is correct, - that value is used. */ -extern char *get_current_dir_name (void) __THROW; -#endif - -#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ - || defined __USE_MISC -/* Put the absolute pathname of the current working directory in BUF. - If successful, return BUF. If not, put an error message in - BUF and return NULL. BUF should be at least PATH_MAX bytes long. */ -extern char *getwd (char *__buf) - __THROW __nonnull ((1)) __attribute_deprecated__ __wur - __attr_access ((__write_only__, 1)); -#endif - - -/* Duplicate FD, returning a new file descriptor on the same file. */ -extern int dup (int __fd) __THROW __wur; - -/* Duplicate FD to FD2, closing FD2 and making it open on the same file. */ -extern int dup2 (int __fd, int __fd2) __THROW; - -#ifdef __USE_GNU -/* Duplicate FD to FD2, closing FD2 and making it open on the same - file while setting flags according to FLAGS. */ -extern int dup3 (int __fd, int __fd2, int __flags) __THROW; -#endif - -/* NULL-terminated array of "NAME=VALUE" environment variables. */ -extern char **__environ; -#ifdef __USE_GNU -extern char **environ; -#endif - - -/* Replace the current process, executing PATH with arguments ARGV and - environment ENVP. ARGV and ENVP are terminated by NULL pointers. */ -extern int execve (const char *__path, char *const __argv[], - char *const __envp[]) __THROW __nonnull ((1, 2)); - -#ifdef __USE_XOPEN2K8 -/* Execute the file FD refers to, overlaying the running program image. - ARGV and ENVP are passed to the new program, as for `execve'. */ -extern int fexecve (int __fd, char *const __argv[], char *const __envp[]) - __THROW __nonnull ((2)); -#endif - - -/* Execute PATH with arguments ARGV and environment from `environ'. */ -extern int execv (const char *__path, char *const __argv[]) - __THROW __nonnull ((1, 2)); - -/* Execute PATH with all arguments after PATH until a NULL pointer, - and the argument after that for environment. */ -extern int execle (const char *__path, const char *__arg, ...) - __THROW __nonnull ((1, 2)); - -/* Execute PATH with all arguments after PATH until - a NULL pointer and environment from `environ'. */ -extern int execl (const char *__path, const char *__arg, ...) - __THROW __nonnull ((1, 2)); - -/* Execute FILE, searching in the `PATH' environment variable if it contains - no slashes, with arguments ARGV and environment from `environ'. */ -extern int execvp (const char *__file, char *const __argv[]) - __THROW __nonnull ((1, 2)); - -/* Execute FILE, searching in the `PATH' environment variable if - it contains no slashes, with all arguments after FILE until a - NULL pointer and environment from `environ'. */ -extern int execlp (const char *__file, const char *__arg, ...) - __THROW __nonnull ((1, 2)); - -#ifdef __USE_GNU -/* Execute FILE, searching in the `PATH' environment variable if it contains - no slashes, with arguments ARGV and environment from `environ'. */ -extern int execvpe (const char *__file, char *const __argv[], - char *const __envp[]) - __THROW __nonnull ((1, 2)); -#endif - - -#if defined __USE_MISC || defined __USE_XOPEN -/* Add INC to priority of the current process. */ -extern int nice (int __inc) __THROW __wur; -#endif - - -/* Terminate program execution with the low-order 8 bits of STATUS. */ -extern void _exit (int __status) __attribute__ ((__noreturn__)); - - -/* Get the `_PC_*' symbols for the NAME argument to `pathconf' and `fpathconf'; - the `_SC_*' symbols for the NAME argument to `sysconf'; - and the `_CS_*' symbols for the NAME argument to `confstr'. */ -#include <bits/confname.h> - -/* Get file-specific configuration information about PATH. */ -extern long int pathconf (const char *__path, int __name) - __THROW __nonnull ((1)); - -/* Get file-specific configuration about descriptor FD. */ -extern long int fpathconf (int __fd, int __name) __THROW; - -/* Get the value of the system variable NAME. */ -extern long int sysconf (int __name) __THROW; - -#ifdef __USE_POSIX2 -/* Get the value of the string-valued system variable NAME. */ -extern size_t confstr (int __name, char *__buf, size_t __len) __THROW - __fortified_attr_access (__write_only__, 2, 3); -#endif - - -/* Get the process ID of the calling process. */ -extern __pid_t getpid (void) __THROW; - -/* Get the process ID of the calling process's parent. */ -extern __pid_t getppid (void) __THROW; - -/* Get the process group ID of the calling process. */ -extern __pid_t getpgrp (void) __THROW; - -/* Get the process group ID of process PID. */ -extern __pid_t __getpgid (__pid_t __pid) __THROW; -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -extern __pid_t getpgid (__pid_t __pid) __THROW; -#endif - - -/* Set the process group ID of the process matching PID to PGID. - If PID is zero, the current process's process group ID is set. - If PGID is zero, the process ID of the process is used. */ -extern int setpgid (__pid_t __pid, __pid_t __pgid) __THROW; - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED -/* Both System V and BSD have `setpgrp' functions, but with different - calling conventions. The BSD function is the same as POSIX.1 `setpgid' - (above). The System V function takes no arguments and puts the calling - process in its on group like `setpgid (0, 0)'. - - New programs should always use `setpgid' instead. - - GNU provides the POSIX.1 function. */ - -/* Set the process group ID of the calling process to its own PID. - This is exactly the same as `setpgid (0, 0)'. */ -extern int setpgrp (void) __THROW; - -#endif /* Use misc or X/Open. */ - -/* Create a new session with the calling process as its leader. - The process group IDs of the session and the calling process - are set to the process ID of the calling process, which is returned. */ -extern __pid_t setsid (void) __THROW; - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 -/* Return the session ID of the given process. */ -extern __pid_t getsid (__pid_t __pid) __THROW; -#endif - -/* Get the real user ID of the calling process. */ -extern __uid_t getuid (void) __THROW; - -/* Get the effective user ID of the calling process. */ -extern __uid_t geteuid (void) __THROW; - -/* Get the real group ID of the calling process. */ -extern __gid_t getgid (void) __THROW; - -/* Get the effective group ID of the calling process. */ -extern __gid_t getegid (void) __THROW; - -/* If SIZE is zero, return the number of supplementary groups - the calling process is in. Otherwise, fill in the group IDs - of its supplementary groups in LIST and return the number written. */ -extern int getgroups (int __size, __gid_t __list[]) __THROW __wur - __fortified_attr_access (__write_only__, 2, 1); -#ifdef __USE_GNU -/* Return nonzero iff the calling process is in group GID. */ -extern int group_member (__gid_t __gid) __THROW; -#endif - -/* Set the user ID of the calling process to UID. - If the calling process is the super-user, set the real - and effective user IDs, and the saved set-user-ID to UID; - if not, the effective user ID is set to UID. */ -extern int setuid (__uid_t __uid) __THROW __wur; - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED -/* Set the real user ID of the calling process to RUID, - and the effective user ID of the calling process to EUID. */ -extern int setreuid (__uid_t __ruid, __uid_t __euid) __THROW __wur; -#endif - -#ifdef __USE_XOPEN2K -/* Set the effective user ID of the calling process to UID. */ -extern int seteuid (__uid_t __uid) __THROW __wur; -#endif /* Use POSIX.1-2001. */ - -/* Set the group ID of the calling process to GID. - If the calling process is the super-user, set the real - and effective group IDs, and the saved set-group-ID to GID; - if not, the effective group ID is set to GID. */ -extern int setgid (__gid_t __gid) __THROW __wur; - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED -/* Set the real group ID of the calling process to RGID, - and the effective group ID of the calling process to EGID. */ -extern int setregid (__gid_t __rgid, __gid_t __egid) __THROW __wur; -#endif - -#ifdef __USE_XOPEN2K -/* Set the effective group ID of the calling process to GID. */ -extern int setegid (__gid_t __gid) __THROW __wur; -#endif /* Use POSIX.1-2001. */ - -#ifdef __USE_GNU -/* Fetch the real user ID, effective user ID, and saved-set user ID, - of the calling process. */ -extern int getresuid (__uid_t *__ruid, __uid_t *__euid, __uid_t *__suid) - __THROW; - -/* Fetch the real group ID, effective group ID, and saved-set group ID, - of the calling process. */ -extern int getresgid (__gid_t *__rgid, __gid_t *__egid, __gid_t *__sgid) - __THROW; - -/* Set the real user ID, effective user ID, and saved-set user ID, - of the calling process to RUID, EUID, and SUID, respectively. */ -extern int setresuid (__uid_t __ruid, __uid_t __euid, __uid_t __suid) - __THROW __wur; - -/* Set the real group ID, effective group ID, and saved-set group ID, - of the calling process to RGID, EGID, and SGID, respectively. */ -extern int setresgid (__gid_t __rgid, __gid_t __egid, __gid_t __sgid) - __THROW __wur; -#endif - - -/* Clone the calling process, creating an exact copy. - Return -1 for errors, 0 to the new process, - and the process ID of the new process to the old process. */ -extern __pid_t fork (void) __THROWNL; - -#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K8) \ - || defined __USE_MISC -/* Clone the calling process, but without copying the whole address space. - The calling process is suspended until the new process exits or is - replaced by a call to `execve'. Return -1 for errors, 0 to the new process, - and the process ID of the new process to the old process. */ -extern __pid_t vfork (void) __THROW; -#endif /* Use misc or XPG < 7. */ - -#ifdef __USE_GNU -/* This is similar to fork, however it does not run the atfork handlers - neither reinitialize any internal locks in multithread case. - Different than fork, _Fork is async-signal-safe. */ -extern __pid_t _Fork (void) __THROW; -#endif - - -/* Return the pathname of the terminal FD is open on, or NULL on errors. - The returned storage is good only until the next call to this function. */ -extern char *ttyname (int __fd) __THROW; - -/* Store at most BUFLEN characters of the pathname of the terminal FD is - open on in BUF. Return 0 on success, otherwise an error number. */ -extern int ttyname_r (int __fd, char *__buf, size_t __buflen) - __THROW __nonnull ((2)) __wur - __fortified_attr_access (__write_only__, 2, 3); - -/* Return 1 if FD is a valid descriptor associated - with a terminal, zero if not. */ -extern int isatty (int __fd) __THROW; - -#ifdef __USE_MISC -/* Return the index into the active-logins file (utmp) for - the controlling terminal. */ -extern int ttyslot (void) __THROW; -#endif - - -/* Make a link to FROM named TO. */ -extern int link (const char *__from, const char *__to) - __THROW __nonnull ((1, 2)) __wur; - -#ifdef __USE_ATFILE -/* Like link but relative paths in TO and FROM are interpreted relative - to FROMFD and TOFD respectively. */ -extern int linkat (int __fromfd, const char *__from, int __tofd, - const char *__to, int __flags) - __THROW __nonnull ((2, 4)) __wur; -#endif - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K -/* Make a symbolic link to FROM named TO. */ -extern int symlink (const char *__from, const char *__to) - __THROW __nonnull ((1, 2)) __wur; - -/* Read the contents of the symbolic link PATH into no more than - LEN bytes of BUF. The contents are not null-terminated. - Returns the number of characters read, or -1 for errors. */ -extern ssize_t readlink (const char *__restrict __path, - char *__restrict __buf, size_t __len) - __THROW __nonnull ((1, 2)) __wur - __fortified_attr_access (__write_only__, 2, 3); - -#endif /* Use POSIX.1-2001. */ - -#ifdef __USE_ATFILE -/* Like symlink but a relative path in TO is interpreted relative to TOFD. */ -extern int symlinkat (const char *__from, int __tofd, - const char *__to) __THROW __nonnull ((1, 3)) __wur; - -/* Like readlink but a relative PATH is interpreted relative to FD. */ -extern ssize_t readlinkat (int __fd, const char *__restrict __path, - char *__restrict __buf, size_t __len) - __THROW __nonnull ((2, 3)) __wur - __fortified_attr_access (__write_only__, 3, 4); -#endif - -/* Remove the link NAME. */ -extern int unlink (const char *__name) __THROW __nonnull ((1)); - -#ifdef __USE_ATFILE -/* Remove the link NAME relative to FD. */ -extern int unlinkat (int __fd, const char *__name, int __flag) - __THROW __nonnull ((2)); -#endif - -/* Remove the directory PATH. */ -extern int rmdir (const char *__path) __THROW __nonnull ((1)); - - -/* Return the foreground process group ID of FD. */ -extern __pid_t tcgetpgrp (int __fd) __THROW; - -/* Set the foreground process group ID of FD set PGRP_ID. */ -extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) __THROW; - - -/* Return the login name of the user. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern char *getlogin (void); -#ifdef __USE_POSIX199506 -/* Return at most NAME_LEN characters of the login name of the user in NAME. - If it cannot be determined or some other error occurred, return the error - code. Otherwise return 0. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int getlogin_r (char *__name, size_t __name_len) __nonnull ((1)) - __fortified_attr_access (__write_only__, 1, 2); -#endif - -#ifdef __USE_MISC -/* Set the login name returned by `getlogin'. */ -extern int setlogin (const char *__name) __THROW __nonnull ((1)); -#endif - - -#ifdef __USE_POSIX2 -/* Get definitions and prototypes for functions to process the - arguments in ARGV (ARGC of them, minus the program name) for - options given in OPTS. */ -# include <bits/getopt_posix.h> -#endif - - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K -/* Put the name of the current host in no more than LEN bytes of NAME. - The result is null-terminated if LEN is large enough for the full - name and the terminator. */ -extern int gethostname (char *__name, size_t __len) __THROW __nonnull ((1)) - __fortified_attr_access (__write_only__, 1, 2); -#endif - - -#if defined __USE_MISC -/* Set the name of the current host to NAME, which is LEN bytes long. - This call is restricted to the super-user. */ -extern int sethostname (const char *__name, size_t __len) - __THROW __nonnull ((1)) __wur __attr_access ((__read_only__, 1, 2)); - -/* Set the current machine's Internet number to ID. - This call is restricted to the super-user. */ -extern int sethostid (long int __id) __THROW __wur; - - -/* Get and set the NIS (aka YP) domain name, if any. - Called just like `gethostname' and `sethostname'. - The NIS domain name is usually the empty string when not using NIS. */ -extern int getdomainname (char *__name, size_t __len) - __THROW __nonnull ((1)) __wur - __fortified_attr_access (__write_only__, 1, 2); -extern int setdomainname (const char *__name, size_t __len) - __THROW __nonnull ((1)) __wur __attr_access ((__read_only__, 1, 2)); - -/* Revoke access permissions to all processes currently communicating - with the control terminal, and then send a SIGHUP signal to the process - group of the control terminal. */ -extern int vhangup (void) __THROW; - -/* Revoke the access of all descriptors currently open on FILE. */ -extern int revoke (const char *__file) __THROW __nonnull ((1)) __wur; - - -/* Enable statistical profiling, writing samples of the PC into at most - SIZE bytes of SAMPLE_BUFFER; every processor clock tick while profiling - is enabled, the system examines the user PC and increments - SAMPLE_BUFFER[((PC - OFFSET) / 2) * SCALE / 65536]. If SCALE is zero, - disable profiling. Returns zero on success, -1 on error. */ -extern int profil (unsigned short int *__sample_buffer, size_t __size, - size_t __offset, unsigned int __scale) - __THROW __nonnull ((1)); - - -/* Turn accounting on if NAME is an existing file. The system will then write - a record for each process as it terminates, to this file. If NAME is NULL, - turn accounting off. This call is restricted to the super-user. */ -extern int acct (const char *__name) __THROW; - - -/* Successive calls return the shells listed in `/etc/shells'. */ -extern char *getusershell (void) __THROW; -extern void endusershell (void) __THROW; /* Discard cached info. */ -extern void setusershell (void) __THROW; /* Rewind and re-read the file. */ - - -/* Put the program in the background, and dissociate from the controlling - terminal. If NOCHDIR is zero, do `chdir ("/")'. If NOCLOSE is zero, - redirects stdin, stdout, and stderr to /dev/null. */ -extern int daemon (int __nochdir, int __noclose) __THROW __wur; -#endif /* Use misc. */ - - -#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) -/* Make PATH be the root directory (the starting point for absolute paths). - This call is restricted to the super-user. */ -extern int chroot (const char *__path) __THROW __nonnull ((1)) __wur; - -/* Prompt with PROMPT and read a string from the terminal without echoing. - Uses /dev/tty if possible; otherwise stderr and stdin. */ -extern char *getpass (const char *__prompt) __nonnull ((1)); -#endif /* Use misc || X/Open. */ - - -/* Make all changes done to FD actually appear on disk. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int fsync (int __fd); - - -#ifdef __USE_GNU -/* Make all changes done to all files on the file system associated - with FD actually appear on disk. */ -extern int syncfs (int __fd) __THROW; -#endif - - -#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED - -/* Return identifier for the current host. */ -extern long int gethostid (void); - -/* Make all changes done to all files actually appear on disk. */ -extern void sync (void) __THROW; - - -# if defined __USE_MISC || !defined __USE_XOPEN2K -/* Return the number of bytes in a page. This is the system's page size, - which is not necessarily the same as the hardware page size. */ -extern int getpagesize (void) __THROW __attribute__ ((__const__)); - - -/* Return the maximum number of file descriptors - the current process could possibly have. */ -extern int getdtablesize (void) __THROW; -# endif - -#endif /* Use misc || X/Open Unix. */ - - -#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 - -/* Truncate FILE to LENGTH bytes. */ -# ifndef __USE_FILE_OFFSET64 -extern int truncate (const char *__file, __off_t __length) - __THROW __nonnull ((1)) __wur; -# else -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (truncate, - (const char *__file, __off64_t __length), - truncate64) __nonnull ((1)) __wur; -# else -# define truncate truncate64 -# endif -# endif -# ifdef __USE_LARGEFILE64 -extern int truncate64 (const char *__file, __off64_t __length) - __THROW __nonnull ((1)) __wur; -# endif - -#endif /* Use X/Open Unix || POSIX 2008. */ - -#if defined __USE_POSIX199309 \ - || defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K - -/* Truncate the file FD is open on to LENGTH bytes. */ -# ifndef __USE_FILE_OFFSET64 -extern int ftruncate (int __fd, __off_t __length) __THROW __wur; -# else -# ifdef __REDIRECT_NTH -extern int __REDIRECT_NTH (ftruncate, (int __fd, __off64_t __length), - ftruncate64) __wur; -# else -# define ftruncate ftruncate64 -# endif -# endif -# ifdef __USE_LARGEFILE64 -extern int ftruncate64 (int __fd, __off64_t __length) __THROW __wur; -# endif - -#endif /* Use POSIX.1b || X/Open Unix || XPG6. */ - - -#if (defined __USE_XOPEN_EXTENDED && !defined __USE_XOPEN2K) \ - || defined __USE_MISC - -/* Set the end of accessible data space (aka "the break") to ADDR. - Returns zero on success and -1 for errors (with errno set). */ -extern int brk (void *__addr) __THROW __wur; - -/* Increase or decrease the end of accessible data space by DELTA bytes. - If successful, returns the address the previous end of data space - (i.e. the beginning of the new space, if DELTA > 0); - returns (void *) -1 for errors (with errno set). */ -extern void *sbrk (intptr_t __delta) __THROW; -#endif - - -#ifdef __USE_MISC -/* Invoke `system call' number SYSNO, passing it the remaining arguments. - This is completely system-dependent, and not often useful. - - In Unix, `syscall' sets `errno' for all errors and most calls return -1 - for errors; in many systems you cannot pass arguments or get return - values for all system calls (`pipe', `fork', and `getppid' typically - among them). - - In Mach, all system calls take normal arguments and always return an - error code (zero for success). */ -extern long int syscall (long int __sysno, ...) __THROW; - -#endif /* Use misc. */ - - -#if (defined __USE_MISC || defined __USE_XOPEN_EXTENDED) && !defined F_LOCK -/* NOTE: These declarations also appear in <fcntl.h>; be sure to keep both - files consistent. Some systems have them there and some here, and some - software depends on the macros being defined without including both. */ - -/* `lockf' is a simpler interface to the locking facilities of `fcntl'. - LEN is always relative to the current file position. - The CMD argument is one of the following. - - This function is a cancellation point and therefore not marked with - __THROW. */ - -# define F_ULOCK 0 /* Unlock a previously locked region. */ -# define F_LOCK 1 /* Lock a region for exclusive use. */ -# define F_TLOCK 2 /* Test and lock a region for exclusive use. */ -# define F_TEST 3 /* Test a region for other processes locks. */ - -# ifndef __USE_FILE_OFFSET64 -extern int lockf (int __fd, int __cmd, __off_t __len) __wur; -# else -# ifdef __REDIRECT -extern int __REDIRECT (lockf, (int __fd, int __cmd, __off64_t __len), - lockf64) __wur; -# else -# define lockf lockf64 -# endif -# endif -# ifdef __USE_LARGEFILE64 -extern int lockf64 (int __fd, int __cmd, __off64_t __len) __wur; -# endif -#endif /* Use misc and F_LOCK not already defined. */ - - -#ifdef __USE_GNU - -/* Evaluate EXPRESSION, and repeat as long as it returns -1 with `errno' - set to EINTR. */ - -# define TEMP_FAILURE_RETRY(expression) \ - (__extension__ \ - ({ long int __result; \ - do __result = (long int) (expression); \ - while (__result == -1L && errno == EINTR); \ - __result; })) - -/* Copy LENGTH bytes from INFD to OUTFD. */ -ssize_t copy_file_range (int __infd, __off64_t *__pinoff, - int __outfd, __off64_t *__poutoff, - size_t __length, unsigned int __flags); -#endif /* __USE_GNU */ - -#if defined __USE_POSIX199309 || defined __USE_UNIX98 -/* Synchronize at least the data part of a file with the underlying - media. */ -extern int fdatasync (int __fildes); -#endif /* Use POSIX199309 */ - -#ifdef __USE_MISC -/* One-way hash PHRASE, returning a string suitable for storage in the - user database. SALT selects the one-way function to use, and - ensures that no two users' hashes are the same, even if they use - the same passphrase. The return value points to static storage - which will be overwritten by the next call to crypt. */ -extern char *crypt (const char *__key, const char *__salt) - __THROW __nonnull ((1, 2)); -#endif - -#ifdef __USE_XOPEN -/* Swab pairs bytes in the first N bytes of the area pointed to by - FROM and copy the result to TO. The value of TO must not be in the - range [FROM - N + 1, FROM - 1]. If N is odd the first byte in FROM - is without partner. */ -extern void swab (const void *__restrict __from, void *__restrict __to, - ssize_t __n) __THROW __nonnull ((1, 2)) - __attr_access ((__read_only__, 1, 3)) - __attr_access ((__write_only__, 2, 3)); -#endif - - -/* Prior to Issue 6, the Single Unix Specification required these - prototypes to appear in this header. They are also found in - <stdio.h>. */ -#if defined __USE_XOPEN && !defined __USE_XOPEN2K -/* Return the name of the controlling terminal. */ -extern char *ctermid (char *__s) __THROW; - -/* Return the name of the current user. */ -extern char *cuserid (char *__s); -#endif - - -/* Unix98 requires this function to be declared here. In other - standards it is in <pthread.h>. */ -#if defined __USE_UNIX98 && !defined __USE_XOPEN2K -extern int pthread_atfork (void (*__prepare) (void), - void (*__parent) (void), - void (*__child) (void)) __THROW; -#endif - -#ifdef __USE_MISC -/* Write LENGTH bytes of randomness starting at BUFFER. Return 0 on - success or -1 on error. */ -int getentropy (void *__buffer, size_t __length) __wur - __attr_access ((__write_only__, 1, 2)); -#endif - -#ifdef __USE_GNU -/* Close all file descriptors in the range FD up to MAX_FD. The flag FLAGS - are define by the CLOSE_RANGE prefix. This function behaves like close - on the range and gaps where the file descriptor is invalid or errors - encountered while closing file descriptors are ignored. Returns 0 on - successor or -1 for failure (and sets errno accordingly). */ -extern int close_range (unsigned int __fd, unsigned int __max_fd, - int __flags) __THROW; -#endif - -/* Define some macros helping to catch buffer overflows. */ -#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function -# include <bits/unistd.h> -#endif - -/* System-specific extensions. */ -#include <bits/unistd_ext.h> - -__END_DECLS - -#endif /* unistd.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@unistd.h.blob deleted file mode 100644 index 5f4f3f34d0563258215071dfcec6377016b118d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52437 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h deleted file mode 100644 index 531b3c83..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h +++ /dev/null @@ -1,1075 +0,0 @@ -/* Copyright (C) 1995-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <https://www.gnu.org/licenses/>. */ - -/* - * ISO C99 Standard: 7.24 - * Extended multibyte and wide character utilities <wchar.h> - */ - -#ifndef _WCHAR_H -#define _WCHAR_H 1 - -#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION -#include <bits/libc-header-start.h> - -/* Gather machine dependent type support. */ -#include <bits/floatn.h> - -#define __need_size_t -#define __need_wchar_t -#define __need_NULL -#include <stddef.h> - -#define __need___va_list -#include <stdarg.h> - -#if defined __USE_XOPEN2K || defined __USE_XOPEN2K8 -# ifdef __GNUC__ -# ifndef _VA_LIST_DEFINED -typedef __gnuc_va_list va_list; -# define _VA_LIST_DEFINED -# endif -# else -# include <stdarg.h> -# endif -#endif - -#include <bits/wchar.h> -#include <bits/types/wint_t.h> -#include <bits/types/mbstate_t.h> -#include <bits/types/__FILE.h> - -#if defined __USE_UNIX98 || defined __USE_XOPEN2K -# include <bits/types/FILE.h> -#endif -#ifdef __USE_XOPEN2K8 -# include <bits/types/locale_t.h> -#endif - -/* Tell the caller that we provide correct C++ prototypes. */ -#if defined __cplusplus && __GNUC_PREREQ (4, 4) -# define __CORRECT_ISO_CPP_WCHAR_H_PROTO -#endif - -#ifndef WCHAR_MIN -/* These constants might also be defined in <inttypes.h>. */ -# define WCHAR_MIN __WCHAR_MIN -# define WCHAR_MAX __WCHAR_MAX -#endif - -#ifndef WEOF -# define WEOF (0xffffffffu) -#endif - -/* All versions of XPG prior to the publication of ISO C99 required - the bulk of <wctype.h>'s declarations to appear in this header - (because <wctype.h> did not exist prior to C99). In POSIX.1-2001 - those declarations were marked as XSI extensions; in -2008 they - were additionally marked as obsolescent. _GNU_SOURCE mode - anticipates the removal of these declarations in the next revision - of POSIX. */ -#if (defined __USE_XOPEN && !defined __USE_GNU \ - && !(defined __USE_XOPEN2K && !defined __USE_XOPEN2KXSI)) -# include <bits/wctype-wchar.h> -#endif - -__BEGIN_DECLS - -/* This incomplete type is defined in <time.h> but needed here because - of `wcsftime'. */ -struct tm; - - -/* Copy SRC to DEST. */ -extern wchar_t *wcscpy (wchar_t *__restrict __dest, - const wchar_t *__restrict __src) - __THROW __nonnull ((1, 2)); - -/* Copy no more than N wide-characters of SRC to DEST. */ -extern wchar_t *wcsncpy (wchar_t *__restrict __dest, - const wchar_t *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)); - -#ifdef __USE_MISC -/* Copy at most N - 1 characters from SRC to DEST. */ -extern size_t wcslcpy (wchar_t *__restrict __dest, - const wchar_t *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)) __attr_access ((__write_only__, 1, 3)); - -/* Append SRC to DEST, possibly with truncation to keep the total size - below N. */ -extern size_t wcslcat (wchar_t *__restrict __dest, - const wchar_t *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)) __attr_access ((__read_write__, 1, 3)); -#endif - -/* Append SRC onto DEST. */ -extern wchar_t *wcscat (wchar_t *__restrict __dest, - const wchar_t *__restrict __src) - __THROW __nonnull ((1, 2)); -/* Append no more than N wide-characters of SRC onto DEST. */ -extern wchar_t *wcsncat (wchar_t *__restrict __dest, - const wchar_t *__restrict __src, size_t __n) - __THROW __nonnull ((1, 2)); - -/* Compare S1 and S2. */ -extern int wcscmp (const wchar_t *__s1, const wchar_t *__s2) - __THROW __attribute_pure__ __nonnull ((1, 2)); -/* Compare N wide-characters of S1 and S2. */ -extern int wcsncmp (const wchar_t *__s1, const wchar_t *__s2, size_t __n) - __THROW __attribute_pure__ __nonnull ((1, 2)); - -#ifdef __USE_XOPEN2K8 -/* Compare S1 and S2, ignoring case. */ -extern int wcscasecmp (const wchar_t *__s1, const wchar_t *__s2) __THROW; - -/* Compare no more than N chars of S1 and S2, ignoring case. */ -extern int wcsncasecmp (const wchar_t *__s1, const wchar_t *__s2, - size_t __n) __THROW; - -/* Similar to the two functions above but take the information from - the provided locale and not the global locale. */ -extern int wcscasecmp_l (const wchar_t *__s1, const wchar_t *__s2, - locale_t __loc) __THROW; - -extern int wcsncasecmp_l (const wchar_t *__s1, const wchar_t *__s2, - size_t __n, locale_t __loc) __THROW; -#endif - -/* Compare S1 and S2, both interpreted as appropriate to the - LC_COLLATE category of the current locale. */ -extern int wcscoll (const wchar_t *__s1, const wchar_t *__s2) __THROW; -/* Transform S2 into array pointed to by S1 such that if wcscmp is - applied to two transformed strings the result is the as applying - `wcscoll' to the original strings. */ -extern size_t wcsxfrm (wchar_t *__restrict __s1, - const wchar_t *__restrict __s2, size_t __n) __THROW; - -#ifdef __USE_XOPEN2K8 -/* Similar to the two functions above but take the information from - the provided locale and not the global locale. */ - -/* Compare S1 and S2, both interpreted as appropriate to the - LC_COLLATE category of the given locale. */ -extern int wcscoll_l (const wchar_t *__s1, const wchar_t *__s2, - locale_t __loc) __THROW; - -/* Transform S2 into array pointed to by S1 such that if wcscmp is - applied to two transformed strings the result is the as applying - `wcscoll' to the original strings. */ -extern size_t wcsxfrm_l (wchar_t *__s1, const wchar_t *__s2, - size_t __n, locale_t __loc) __THROW; - -/* Duplicate S, returning an identical malloc'd string. */ -extern wchar_t *wcsdup (const wchar_t *__s) __THROW - __attribute_malloc__ __attr_dealloc_free; -#endif - -/* Find the first occurrence of WC in WCS. */ -#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO -extern "C++" wchar_t *wcschr (wchar_t *__wcs, wchar_t __wc) - __THROW __asm ("wcschr") __attribute_pure__; -extern "C++" const wchar_t *wcschr (const wchar_t *__wcs, wchar_t __wc) - __THROW __asm ("wcschr") __attribute_pure__; -#else -extern wchar_t *wcschr (const wchar_t *__wcs, wchar_t __wc) - __THROW __attribute_pure__; -#endif -/* Find the last occurrence of WC in WCS. */ -#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO -extern "C++" wchar_t *wcsrchr (wchar_t *__wcs, wchar_t __wc) - __THROW __asm ("wcsrchr") __attribute_pure__; -extern "C++" const wchar_t *wcsrchr (const wchar_t *__wcs, wchar_t __wc) - __THROW __asm ("wcsrchr") __attribute_pure__; -#else -extern wchar_t *wcsrchr (const wchar_t *__wcs, wchar_t __wc) - __THROW __attribute_pure__; -#endif - -#ifdef __USE_GNU -/* This function is similar to `wcschr'. But it returns a pointer to - the closing NUL wide character in case C is not found in S. */ -extern wchar_t *wcschrnul (const wchar_t *__s, wchar_t __wc) - __THROW __attribute_pure__; -#endif - -/* Return the length of the initial segmet of WCS which - consists entirely of wide characters not in REJECT. */ -extern size_t wcscspn (const wchar_t *__wcs, const wchar_t *__reject) - __THROW __attribute_pure__; -/* Return the length of the initial segmet of WCS which - consists entirely of wide characters in ACCEPT. */ -extern size_t wcsspn (const wchar_t *__wcs, const wchar_t *__accept) - __THROW __attribute_pure__; -/* Find the first occurrence in WCS of any character in ACCEPT. */ -#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO -extern "C++" wchar_t *wcspbrk (wchar_t *__wcs, const wchar_t *__accept) - __THROW __asm ("wcspbrk") __attribute_pure__; -extern "C++" const wchar_t *wcspbrk (const wchar_t *__wcs, - const wchar_t *__accept) - __THROW __asm ("wcspbrk") __attribute_pure__; -#else -extern wchar_t *wcspbrk (const wchar_t *__wcs, const wchar_t *__accept) - __THROW __attribute_pure__; -#endif -/* Find the first occurrence of NEEDLE in HAYSTACK. */ -#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO -extern "C++" wchar_t *wcsstr (wchar_t *__haystack, const wchar_t *__needle) - __THROW __asm ("wcsstr") __attribute_pure__; -extern "C++" const wchar_t *wcsstr (const wchar_t *__haystack, - const wchar_t *__needle) - __THROW __asm ("wcsstr") __attribute_pure__; -#else -extern wchar_t *wcsstr (const wchar_t *__haystack, const wchar_t *__needle) - __THROW __attribute_pure__; -#endif - -/* Divide WCS into tokens separated by characters in DELIM. */ -extern wchar_t *wcstok (wchar_t *__restrict __s, - const wchar_t *__restrict __delim, - wchar_t **__restrict __ptr) __THROW; - -/* Return the number of wide characters in S. */ -extern size_t wcslen (const wchar_t *__s) __THROW __attribute_pure__; - -#ifdef __USE_XOPEN -/* Another name for `wcsstr' from XPG4. */ -# ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO -extern "C++" wchar_t *wcswcs (wchar_t *__haystack, const wchar_t *__needle) - __THROW __asm ("wcswcs") __attribute_pure__; -extern "C++" const wchar_t *wcswcs (const wchar_t *__haystack, - const wchar_t *__needle) - __THROW __asm ("wcswcs") __attribute_pure__; -# else -extern wchar_t *wcswcs (const wchar_t *__haystack, const wchar_t *__needle) - __THROW __attribute_pure__; -# endif -#endif - -#ifdef __USE_XOPEN2K8 -/* Return the number of wide characters in S, but at most MAXLEN. */ -extern size_t wcsnlen (const wchar_t *__s, size_t __maxlen) - __THROW __attribute_pure__; -#endif - - -/* Search N wide characters of S for C. */ -#ifdef __CORRECT_ISO_CPP_WCHAR_H_PROTO -extern "C++" wchar_t *wmemchr (wchar_t *__s, wchar_t __c, size_t __n) - __THROW __asm ("wmemchr") __attribute_pure__; -extern "C++" const wchar_t *wmemchr (const wchar_t *__s, wchar_t __c, - size_t __n) - __THROW __asm ("wmemchr") __attribute_pure__; -#else -extern wchar_t *wmemchr (const wchar_t *__s, wchar_t __c, size_t __n) - __THROW __attribute_pure__; -#endif - -/* Compare N wide characters of S1 and S2. */ -extern int wmemcmp (const wchar_t *__s1, const wchar_t *__s2, size_t __n) - __THROW __attribute_pure__; - -/* Copy N wide characters of SRC to DEST. */ -extern wchar_t *wmemcpy (wchar_t *__restrict __s1, - const wchar_t *__restrict __s2, size_t __n) __THROW; - -/* Copy N wide characters of SRC to DEST, guaranteeing - correct behavior for overlapping strings. */ -extern wchar_t *wmemmove (wchar_t *__s1, const wchar_t *__s2, size_t __n) - __THROW; - -/* Set N wide characters of S to C. */ -extern wchar_t *wmemset (wchar_t *__s, wchar_t __c, size_t __n) __THROW; - -#ifdef __USE_GNU -/* Copy N wide characters of SRC to DEST and return pointer to following - wide character. */ -extern wchar_t *wmempcpy (wchar_t *__restrict __s1, - const wchar_t *__restrict __s2, size_t __n) - __THROW; -#endif - - -/* Determine whether C constitutes a valid (one-byte) multibyte - character. */ -extern wint_t btowc (int __c) __THROW; - -/* Determine whether C corresponds to a member of the extended - character set whose multibyte representation is a single byte. */ -extern int wctob (wint_t __c) __THROW; - -/* Determine whether PS points to an object representing the initial - state. */ -extern int mbsinit (const mbstate_t *__ps) __THROW __attribute_pure__; - -/* Write wide character representation of multibyte character pointed - to by S to PWC. */ -extern size_t mbrtowc (wchar_t *__restrict __pwc, - const char *__restrict __s, size_t __n, - mbstate_t *__restrict __p) __THROW; - -/* Write multibyte representation of wide character WC to S. */ -extern size_t wcrtomb (char *__restrict __s, wchar_t __wc, - mbstate_t *__restrict __ps) __THROW; - -/* Return number of bytes in multibyte character pointed to by S. */ -extern size_t __mbrlen (const char *__restrict __s, size_t __n, - mbstate_t *__restrict __ps) __THROW; -extern size_t mbrlen (const char *__restrict __s, size_t __n, - mbstate_t *__restrict __ps) __THROW; - -#ifdef __USE_EXTERN_INLINES -/* Define inline function as optimization. */ - -/* We can use the BTOWC and WCTOB optimizations since we know that all - locales must use ASCII encoding for the values in the ASCII range - and because the wchar_t encoding is always ISO 10646. */ -extern wint_t __btowc_alias (int __c) __asm ("btowc"); -__extern_inline wint_t -__NTH (btowc (int __c)) -{ return (__builtin_constant_p (__c) && __c >= '\0' && __c <= '\x7f' - ? (wint_t) __c : __btowc_alias (__c)); } - -extern int __wctob_alias (wint_t __c) __asm ("wctob"); -__extern_inline int -__NTH (wctob (wint_t __wc)) -{ return (__builtin_constant_p (__wc) && __wc >= L'\0' && __wc <= L'\x7f' - ? (int) __wc : __wctob_alias (__wc)); } - -__extern_inline size_t -__NTH (mbrlen (const char *__restrict __s, size_t __n, - mbstate_t *__restrict __ps)) -{ return (__ps != NULL - ? mbrtowc (NULL, __s, __n, __ps) : __mbrlen (__s, __n, NULL)); } -#endif - -/* Write wide character representation of multibyte character string - SRC to DST. */ -extern size_t mbsrtowcs (wchar_t *__restrict __dst, - const char **__restrict __src, size_t __len, - mbstate_t *__restrict __ps) __THROW; - -/* Write multibyte character representation of wide character string - SRC to DST. */ -extern size_t wcsrtombs (char *__restrict __dst, - const wchar_t **__restrict __src, size_t __len, - mbstate_t *__restrict __ps) __THROW; - - -#ifdef __USE_XOPEN2K8 -/* Write wide character representation of at most NMC bytes of the - multibyte character string SRC to DST. */ -extern size_t mbsnrtowcs (wchar_t *__restrict __dst, - const char **__restrict __src, size_t __nmc, - size_t __len, mbstate_t *__restrict __ps) __THROW; - -/* Write multibyte character representation of at most NWC characters - from the wide character string SRC to DST. */ -extern size_t wcsnrtombs (char *__restrict __dst, - const wchar_t **__restrict __src, - size_t __nwc, size_t __len, - mbstate_t *__restrict __ps) __THROW; -#endif /* use POSIX 2008 */ - - -/* The following functions are extensions found in X/Open CAE. */ -#ifdef __USE_XOPEN -/* Determine number of column positions required for C. */ -extern int wcwidth (wchar_t __c) __THROW; - -/* Determine number of column positions required for first N wide - characters (or fewer if S ends before this) in S. */ -extern int wcswidth (const wchar_t *__s, size_t __n) __THROW; -#endif /* Use X/Open. */ - - -/* Convert initial portion of the wide string NPTR to `double' - representation. */ -extern double wcstod (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; - -#ifdef __USE_ISOC99 -/* Likewise for `float' and `long double' sizes of floating-point numbers. */ -extern float wcstof (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -extern long double wcstold (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -#endif /* C99 */ - -#if __GLIBC_USE (IEC_60559_TYPES_EXT) && __GLIBC_USE (ISOC2X) -/* Likewise for `_FloatN' and `_FloatNx' when support is enabled. */ - -# if __HAVE_FLOAT16 -extern _Float16 wcstof16 (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -# endif - -# if __HAVE_FLOAT32 -extern _Float32 wcstof32 (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -# endif - -# if __HAVE_FLOAT64 -extern _Float64 wcstof64 (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -# endif - -# if __HAVE_FLOAT128 -extern _Float128 wcstof128 (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -# endif - -# if __HAVE_FLOAT32X -extern _Float32x wcstof32x (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -# endif - -# if __HAVE_FLOAT64X -extern _Float64x wcstof64x (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -# endif - -# if __HAVE_FLOAT128X -extern _Float128x wcstof128x (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr) __THROW; -# endif -#endif /* __GLIBC_USE (IEC_60559_TYPES_EXT) && __GLIBC_USE (ISOC2X) */ - - -/* Convert initial portion of wide string NPTR to `long int' - representation. */ -extern long int wcstol (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, int __base) __THROW; - -/* Convert initial portion of wide string NPTR to `unsigned long int' - representation. */ -extern unsigned long int wcstoul (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, int __base) - __THROW; - -#ifdef __USE_ISOC99 -/* Convert initial portion of wide string NPTR to `long long int' - representation. */ -__extension__ -extern long long int wcstoll (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, int __base) - __THROW; - -/* Convert initial portion of wide string NPTR to `unsigned long long int' - representation. */ -__extension__ -extern unsigned long long int wcstoull (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base) __THROW; -#endif /* ISO C99. */ - -#ifdef __USE_GNU -/* Convert initial portion of wide string NPTR to `long long int' - representation. */ -__extension__ -extern long long int wcstoq (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, int __base) - __THROW; - -/* Convert initial portion of wide string NPTR to `unsigned long long int' - representation. */ -__extension__ -extern unsigned long long int wcstouq (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base) __THROW; -#endif /* Use GNU. */ - -/* Versions of the above functions that handle '0b' and '0B' prefixes - in base 0 or 2. */ -#if __GLIBC_USE (C2X_STRTOL) -# ifdef __REDIRECT -extern long int __REDIRECT_NTH (wcstol, (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base), __isoc23_wcstol); -extern unsigned long int __REDIRECT_NTH (wcstoul, - (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base), __isoc23_wcstoul); -__extension__ -extern long long int __REDIRECT_NTH (wcstoll, - (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base), __isoc23_wcstoll); -__extension__ -extern unsigned long long int __REDIRECT_NTH (wcstoull, - (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base), __isoc23_wcstoull); -# ifdef __USE_GNU -__extension__ -extern long long int __REDIRECT_NTH (wcstoq, (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base), __isoc23_wcstoll); -__extension__ -extern unsigned long long int __REDIRECT_NTH (wcstouq, - (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base), __isoc23_wcstoull); -# endif -# else -extern long int __isoc23_wcstol (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, int __base) - __THROW; -extern unsigned long int __isoc23_wcstoul (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base) - __THROW; -__extension__ -extern long long int __isoc23_wcstoll (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base) - __THROW; -__extension__ -extern unsigned long long int __isoc23_wcstoull (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base) - __THROW; -# define wcstol __isoc23_wcstol -# define wcstoul __isoc23_wcstoul -# define wcstoll __isoc23_wcstoll -# define wcstoull __isoc23_wcstoull -# ifdef __USE_GNU -# define wcstoq __isoc23_wcstoll -# define wcstouq __isoc23_wcstoull -# endif -# endif -#endif - -#ifdef __USE_GNU -/* Parallel versions of the functions above which take the locale to - use as an additional parameter. These are GNU extensions inspired - by the POSIX.1-2008 extended locale API. */ -extern long int wcstol_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, int __base, - locale_t __loc) __THROW; - -extern unsigned long int wcstoul_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc) __THROW; - -__extension__ -extern long long int wcstoll_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc) __THROW; - -__extension__ -extern unsigned long long int wcstoull_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc) - __THROW; - -/* Versions of the above functions that handle '0b' and '0B' prefixes - in base 0 or 2. */ -# if __GLIBC_USE (C2X_STRTOL) -# ifdef __REDIRECT -extern long int __REDIRECT_NTH (wcstol_l, (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc), - __isoc23_wcstol_l); -extern unsigned long int __REDIRECT_NTH (wcstoul_l, - (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc), - __isoc23_wcstoul_l); -__extension__ -extern long long int __REDIRECT_NTH (wcstoll_l, - (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc), - __isoc23_wcstoll_l); -__extension__ -extern unsigned long long int __REDIRECT_NTH (wcstoull_l, - (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc), - __isoc23_wcstoull_l); -# else -extern long int __isoc23_wcstol_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, int __base, - locale_t __loc) __THROW; -extern unsigned long int __isoc23_wcstoul_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc) - __THROW; -__extension__ -extern long long int __isoc23_wcstoll_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc) - __THROW; -__extension__ -extern unsigned long long int __isoc23_wcstoull_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - int __base, locale_t __loc) - __THROW; -# define wcstol_l __isoc23_wcstol_l -# define wcstoul_l __isoc23_wcstoul_l -# define wcstoll_l __isoc23_wcstoll_l -# define wcstoull_l __isoc23_wcstoull_l -# endif -# endif - -extern double wcstod_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, locale_t __loc) - __THROW; - -extern float wcstof_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, locale_t __loc) - __THROW; - -extern long double wcstold_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - locale_t __loc) __THROW; - -# if __HAVE_FLOAT16 -extern _Float16 wcstof16_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - locale_t __loc) __THROW; -# endif - -# if __HAVE_FLOAT32 -extern _Float32 wcstof32_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - locale_t __loc) __THROW; -# endif - -# if __HAVE_FLOAT64 -extern _Float64 wcstof64_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - locale_t __loc) __THROW; -# endif - -# if __HAVE_FLOAT128 -extern _Float128 wcstof128_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - locale_t __loc) __THROW; -# endif - -# if __HAVE_FLOAT32X -extern _Float32x wcstof32x_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - locale_t __loc) __THROW; -# endif - -# if __HAVE_FLOAT64X -extern _Float64x wcstof64x_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - locale_t __loc) __THROW; -# endif - -# if __HAVE_FLOAT128X -extern _Float128x wcstof128x_l (const wchar_t *__restrict __nptr, - wchar_t **__restrict __endptr, - locale_t __loc) __THROW; -# endif -#endif /* use GNU */ - - -#ifdef __USE_XOPEN2K8 -/* Copy SRC to DEST, returning the address of the terminating L'\0' in - DEST. */ -extern wchar_t *wcpcpy (wchar_t *__restrict __dest, - const wchar_t *__restrict __src) __THROW; - -/* Copy no more than N characters of SRC to DEST, returning the address of - the last character written into DEST. */ -extern wchar_t *wcpncpy (wchar_t *__restrict __dest, - const wchar_t *__restrict __src, size_t __n) - __THROW; -#endif - - -/* Wide character I/O functions. */ - -#if defined __USE_XOPEN2K8 || __GLIBC_USE (LIB_EXT2) -# ifndef __attr_dealloc_fclose -# if defined __has_builtin -# if __has_builtin (__builtin_fclose) -/* If the attribute macro hasn't been defined yet (by <stdio.h>) and - fclose is a built-in, use it. */ -# define __attr_dealloc_fclose __attr_dealloc (__builtin_fclose, 1) -# endif -# endif -# endif -# ifndef __attr_dealloc_fclose -# define __attr_dealloc_fclose /* empty */ -# endif - -/* Like OPEN_MEMSTREAM, but the stream is wide oriented and produces - a wide character string. */ -extern __FILE *open_wmemstream (wchar_t **__bufloc, size_t *__sizeloc) __THROW - __attribute_malloc__ __attr_dealloc_fclose; -#endif - -#if defined __USE_ISOC95 || defined __USE_UNIX98 - -/* Select orientation for stream. */ -extern int fwide (__FILE *__fp, int __mode) __THROW; - - -/* Write formatted output to STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fwprintf (__FILE *__restrict __stream, - const wchar_t *__restrict __format, ...) - /* __attribute__ ((__format__ (__wprintf__, 2, 3))) */; -/* Write formatted output to stdout. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int wprintf (const wchar_t *__restrict __format, ...) - /* __attribute__ ((__format__ (__wprintf__, 1, 2))) */; -/* Write formatted output of at most N characters to S. */ -extern int swprintf (wchar_t *__restrict __s, size_t __n, - const wchar_t *__restrict __format, ...) - __THROW /* __attribute__ ((__format__ (__wprintf__, 3, 4))) */; - -/* Write formatted output to S from argument list ARG. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int vfwprintf (__FILE *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg) - /* __attribute__ ((__format__ (__wprintf__, 2, 0))) */; -/* Write formatted output to stdout from argument list ARG. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int vwprintf (const wchar_t *__restrict __format, - __gnuc_va_list __arg) - /* __attribute__ ((__format__ (__wprintf__, 1, 0))) */; -/* Write formatted output of at most N character to S from argument - list ARG. */ -extern int vswprintf (wchar_t *__restrict __s, size_t __n, - const wchar_t *__restrict __format, - __gnuc_va_list __arg) - __THROW /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */; - - -/* Read formatted input from STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fwscanf (__FILE *__restrict __stream, - const wchar_t *__restrict __format, ...) - /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; -/* Read formatted input from stdin. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int wscanf (const wchar_t *__restrict __format, ...) - /* __attribute__ ((__format__ (__wscanf__, 1, 2))) */; -/* Read formatted input from S. */ -extern int swscanf (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, ...) - __THROW /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; - -/* For historical reasons, the C99-compliant versions of the scanf - functions are at alternative names. When __LDBL_COMPAT or - __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI are in effect, this is handled in - bits/wchar-ldbl.h. */ -# if !__GLIBC_USE (DEPRECATED_SCANF) && !defined __LDBL_COMPAT \ - && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 -# if __GLIBC_USE (C2X_STRTOL) -# ifdef __REDIRECT -extern int __REDIRECT (fwscanf, (__FILE *__restrict __stream, - const wchar_t *__restrict __format, ...), - __isoc23_fwscanf) - /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; -extern int __REDIRECT (wscanf, (const wchar_t *__restrict __format, ...), - __isoc23_wscanf) - /* __attribute__ ((__format__ (__wscanf__, 1, 2))) */; -extern int __REDIRECT_NTH (swscanf, (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, - ...), __isoc23_swscanf) - /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; -# else -extern int __isoc23_fwscanf (__FILE *__restrict __stream, - const wchar_t *__restrict __format, ...); -extern int __isoc23_wscanf (const wchar_t *__restrict __format, ...); -extern int __isoc23_swscanf (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, ...) - __THROW; -# define fwscanf __isoc23_fwscanf -# define wscanf __isoc23_wscanf -# define swscanf __isoc23_swscanf -# endif -# else -# ifdef __REDIRECT -extern int __REDIRECT (fwscanf, (__FILE *__restrict __stream, - const wchar_t *__restrict __format, ...), - __isoc99_fwscanf) - /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; -extern int __REDIRECT (wscanf, (const wchar_t *__restrict __format, ...), - __isoc99_wscanf) - /* __attribute__ ((__format__ (__wscanf__, 1, 2))) */; -extern int __REDIRECT_NTH (swscanf, (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, - ...), __isoc99_swscanf) - /* __attribute__ ((__format__ (__wscanf__, 2, 3))) */; -# else -extern int __isoc99_fwscanf (__FILE *__restrict __stream, - const wchar_t *__restrict __format, ...); -extern int __isoc99_wscanf (const wchar_t *__restrict __format, ...); -extern int __isoc99_swscanf (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, ...) - __THROW; -# define fwscanf __isoc99_fwscanf -# define wscanf __isoc99_wscanf -# define swscanf __isoc99_swscanf -# endif -# endif -# endif - -#endif /* Use ISO C95, C99 and Unix98. */ - -#ifdef __USE_ISOC99 -/* Read formatted input from S into argument list ARG. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int vfwscanf (__FILE *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg) - /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; -/* Read formatted input from stdin into argument list ARG. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int vwscanf (const wchar_t *__restrict __format, - __gnuc_va_list __arg) - /* __attribute__ ((__format__ (__wscanf__, 1, 0))) */; -/* Read formatted input from S into argument list ARG. */ -extern int vswscanf (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg) - __THROW /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; - -/* Same redirection as above for the v*wscanf family. */ -# if !__GLIBC_USE (DEPRECATED_SCANF) \ - && (!defined __LDBL_COMPAT || !defined __REDIRECT) \ - && (defined __STRICT_ANSI__ || defined __USE_XOPEN2K) \ - && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 -# if __GLIBC_USE (C2X_STRTOL) -# ifdef __REDIRECT -extern int __REDIRECT (vfwscanf, (__FILE *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg), __isoc23_vfwscanf) - /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; -extern int __REDIRECT (vwscanf, (const wchar_t *__restrict __format, - __gnuc_va_list __arg), __isoc23_vwscanf) - /* __attribute__ ((__format__ (__wscanf__, 1, 0))) */; -extern int __REDIRECT_NTH (vswscanf, (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg), __isoc23_vswscanf) - /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; -# else -extern int __isoc23_vfwscanf (__FILE *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg); -extern int __isoc23_vwscanf (const wchar_t *__restrict __format, - __gnuc_va_list __arg); -extern int __isoc23_vswscanf (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg) __THROW; -# define vfwscanf __isoc23_vfwscanf -# define vwscanf __isoc23_vwscanf -# define vswscanf __isoc23_vswscanf -# endif -# else -# ifdef __REDIRECT -extern int __REDIRECT (vfwscanf, (__FILE *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg), __isoc99_vfwscanf) - /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; -extern int __REDIRECT (vwscanf, (const wchar_t *__restrict __format, - __gnuc_va_list __arg), __isoc99_vwscanf) - /* __attribute__ ((__format__ (__wscanf__, 1, 0))) */; -extern int __REDIRECT_NTH (vswscanf, (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg), __isoc99_vswscanf) - /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */; -# else -extern int __isoc99_vfwscanf (__FILE *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg); -extern int __isoc99_vwscanf (const wchar_t *__restrict __format, - __gnuc_va_list __arg); -extern int __isoc99_vswscanf (const wchar_t *__restrict __s, - const wchar_t *__restrict __format, - __gnuc_va_list __arg) __THROW; -# define vfwscanf __isoc99_vfwscanf -# define vwscanf __isoc99_vwscanf -# define vswscanf __isoc99_vswscanf -# endif -# endif -# endif - -#endif /* Use ISO C99. */ - - -/* Read a character from STREAM. - - These functions are possible cancellation points and therefore not - marked with __THROW. */ -extern wint_t fgetwc (__FILE *__stream); -extern wint_t getwc (__FILE *__stream); - -/* Read a character from stdin. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern wint_t getwchar (void); - - -/* Write a character to STREAM. - - These functions are possible cancellation points and therefore not - marked with __THROW. */ -extern wint_t fputwc (wchar_t __wc, __FILE *__stream); -extern wint_t putwc (wchar_t __wc, __FILE *__stream); - -/* Write a character to stdout. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern wint_t putwchar (wchar_t __wc); - - -/* Get a newline-terminated wide character string of finite length - from STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern wchar_t *fgetws (wchar_t *__restrict __ws, int __n, - __FILE *__restrict __stream); - -/* Write a string to STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern int fputws (const wchar_t *__restrict __ws, - __FILE *__restrict __stream); - - -/* Push a character back onto the input buffer of STREAM. - - This function is a possible cancellation point and therefore not - marked with __THROW. */ -extern wint_t ungetwc (wint_t __wc, __FILE *__stream); - - -#ifdef __USE_GNU -/* These are defined to be equivalent to the `char' functions defined - in POSIX.1:1996. - - These functions are not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation they are cancellation points and - therefore not marked with __THROW. */ -extern wint_t getwc_unlocked (__FILE *__stream); -extern wint_t getwchar_unlocked (void); - -/* This is the wide character version of a GNU extension. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern wint_t fgetwc_unlocked (__FILE *__stream); - -/* Faster version when locking is not necessary. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern wint_t fputwc_unlocked (wchar_t __wc, __FILE *__stream); - -/* These are defined to be equivalent to the `char' functions defined - in POSIX.1:1996. - - These functions are not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation they are cancellation points and - therefore not marked with __THROW. */ -extern wint_t putwc_unlocked (wchar_t __wc, __FILE *__stream); -extern wint_t putwchar_unlocked (wchar_t __wc); - - -/* This function does the same as `fgetws' but does not lock the stream. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern wchar_t *fgetws_unlocked (wchar_t *__restrict __ws, int __n, - __FILE *__restrict __stream); - -/* This function does the same as `fputws' but does not lock the stream. - - This function is not part of POSIX and therefore no official - cancellation point. But due to similarity with an POSIX interface - or due to the implementation it is a cancellation point and - therefore not marked with __THROW. */ -extern int fputws_unlocked (const wchar_t *__restrict __ws, - __FILE *__restrict __stream); -#endif - - -/* Format TP into S according to FORMAT. - Write no more than MAXSIZE wide characters and return the number - of wide characters written, or 0 if it would exceed MAXSIZE. */ -extern size_t wcsftime (wchar_t *__restrict __s, size_t __maxsize, - const wchar_t *__restrict __format, - const struct tm *__restrict __tp) __THROW; - -# ifdef __USE_GNU -/* Similar to `wcsftime' but takes the information from - the provided locale and not the global locale. */ -extern size_t wcsftime_l (wchar_t *__restrict __s, size_t __maxsize, - const wchar_t *__restrict __format, - const struct tm *__restrict __tp, - locale_t __loc) __THROW; -# endif - -/* Define some macros helping to catch buffer overflows. */ -#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function -/* Declare all functions from bits/wchar2-decl.h first. */ -# include <bits/wchar2-decl.h> -#endif - -/* The following headers provide asm redirections. These redirections must - appear before the first usage of these functions, e.g. in bits/wchar.h. */ -#if defined __LDBL_COMPAT || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 -# include <bits/wchar-ldbl.h> -#endif - -#if __USE_FORTIFY_LEVEL > 0 && defined __fortify_function -/* Now include the function definitions and redirects too. */ -# include <bits/wchar2.h> -#endif - -__END_DECLS - -#endif /* wchar.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@wchar.h.blob deleted file mode 100644 index ec2c1c00002873a417ab1c600f44dd3762f38d33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48556 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 E594jBKL7v# diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h deleted file mode 100644 index e3b43928..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h +++ /dev/null @@ -1,27 +0,0 @@ -/*===---- __stddef_max_align_t.h - Definition of max_align_t for modules ---=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __CLANG_MAX_ALIGN_T_DEFINED -#define __CLANG_MAX_ALIGN_T_DEFINED - -#if defined(_MSC_VER) -typedef double max_align_t; -#elif defined(__APPLE__) -typedef long double max_align_t; -#else -// Define 'max_align_t' to match the GCC definition. -typedef struct { - long long __clang_max_align_nonce1 - __attribute__((__aligned__(__alignof__(long long)))); - long double __clang_max_align_nonce2 - __attribute__((__aligned__(__alignof__(long double)))); -} max_align_t; -#endif - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__stddef_max_align_t.h.blob deleted file mode 100644 index 3fc79559ff6e96d673939afbc706a48333b37653..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12694 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 Q=PsPPaYp}+PL&=02fqAx+W-In diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h deleted file mode 100644 index 3010b387..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h +++ /dev/null @@ -1,140 +0,0 @@ -/*===---- __wmmintrin_aes.h - AES intrinsics -------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __WMMINTRIN_H -#error "Never use <__wmmintrin_aes.h> directly; include <wmmintrin.h> instead." -#endif - -#ifndef __WMMINTRIN_AES_H -#define __WMMINTRIN_AES_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("aes"), __min_vector_width__(128))) - -/// Performs a single round of AES encryption using the Equivalent -/// Inverse Cipher, transforming the state value from the first source -/// operand using a 128-bit round key value contained in the second source -/// operand, and writes the result to the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VAESENC </c> instruction. -/// -/// \param __V -/// A 128-bit integer vector containing the state value. -/// \param __R -/// A 128-bit integer vector containing the round key value. -/// \returns A 128-bit integer vector containing the encrypted value. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_aesenc_si128(__m128i __V, __m128i __R) -{ - return (__m128i)__builtin_ia32_aesenc128((__v2di)__V, (__v2di)__R); -} - -/// Performs the final round of AES encryption using the Equivalent -/// Inverse Cipher, transforming the state value from the first source -/// operand using a 128-bit round key value contained in the second source -/// operand, and writes the result to the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VAESENCLAST </c> instruction. -/// -/// \param __V -/// A 128-bit integer vector containing the state value. -/// \param __R -/// A 128-bit integer vector containing the round key value. -/// \returns A 128-bit integer vector containing the encrypted value. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_aesenclast_si128(__m128i __V, __m128i __R) -{ - return (__m128i)__builtin_ia32_aesenclast128((__v2di)__V, (__v2di)__R); -} - -/// Performs a single round of AES decryption using the Equivalent -/// Inverse Cipher, transforming the state value from the first source -/// operand using a 128-bit round key value contained in the second source -/// operand, and writes the result to the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VAESDEC </c> instruction. -/// -/// \param __V -/// A 128-bit integer vector containing the state value. -/// \param __R -/// A 128-bit integer vector containing the round key value. -/// \returns A 128-bit integer vector containing the decrypted value. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_aesdec_si128(__m128i __V, __m128i __R) -{ - return (__m128i)__builtin_ia32_aesdec128((__v2di)__V, (__v2di)__R); -} - -/// Performs the final round of AES decryption using the Equivalent -/// Inverse Cipher, transforming the state value from the first source -/// operand using a 128-bit round key value contained in the second source -/// operand, and writes the result to the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VAESDECLAST </c> instruction. -/// -/// \param __V -/// A 128-bit integer vector containing the state value. -/// \param __R -/// A 128-bit integer vector containing the round key value. -/// \returns A 128-bit integer vector containing the decrypted value. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_aesdeclast_si128(__m128i __V, __m128i __R) -{ - return (__m128i)__builtin_ia32_aesdeclast128((__v2di)__V, (__v2di)__R); -} - -/// Applies the AES InvMixColumns() transformation to an expanded key -/// contained in the source operand, and writes the result to the -/// destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VAESIMC </c> instruction. -/// -/// \param __V -/// A 128-bit integer vector containing the expanded key. -/// \returns A 128-bit integer vector containing the transformed value. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_aesimc_si128(__m128i __V) -{ - return (__m128i)__builtin_ia32_aesimc128((__v2di)__V); -} - -/// Generates a round key for AES encryption, operating on 128-bit data -/// specified in the first source operand and using an 8-bit round constant -/// specified by the second source operand, and writes the result to the -/// destination. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_aeskeygenassist_si128(__m128i C, const int R); -/// \endcode -/// -/// This intrinsic corresponds to the <c> AESKEYGENASSIST </c> instruction. -/// -/// \param C -/// A 128-bit integer vector that is used to generate the AES encryption key. -/// \param R -/// An 8-bit round constant used to generate the AES encryption key. -/// \returns A 128-bit round key for AES encryption. -#define _mm_aeskeygenassist_si128(C, R) \ - ((__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))) - -#undef __DEFAULT_FN_ATTRS - -#endif /* __WMMINTRIN_AES_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_aes.h.blob deleted file mode 100644 index b19ffa5553cb6232a7f8f518c8252049fa833160..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16754 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h deleted file mode 100644 index c9a6d50b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h +++ /dev/null @@ -1,48 +0,0 @@ -/*===---- __wmmintrin_pclmul.h - PCMUL intrinsics ---------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __WMMINTRIN_H -#error "Never use <__wmmintrin_pclmul.h> directly; include <wmmintrin.h> instead." -#endif - -#ifndef __WMMINTRIN_PCLMUL_H -#define __WMMINTRIN_PCLMUL_H - -/// Multiplies two 64-bit integer values, which are selected from source -/// operands using the immediate-value operand. The multiplication is a -/// carry-less multiplication, and the 128-bit integer product is stored in -/// the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_clmulepi64_si128(__m128i X, __m128i Y, const int I); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCLMULQDQ </c> instruction. -/// -/// \param X -/// A 128-bit vector of [2 x i64] containing one of the source operands. -/// \param Y -/// A 128-bit vector of [2 x i64] containing one of the source operands. -/// \param I -/// An immediate value specifying which 64-bit values to select from the -/// operands. Bit 0 is used to select a value from operand \a X, and bit -/// 4 is used to select a value from operand \a Y: \n -/// Bit[0]=0 indicates that bits[63:0] of operand \a X are used. \n -/// Bit[0]=1 indicates that bits[127:64] of operand \a X are used. \n -/// Bit[4]=0 indicates that bits[63:0] of operand \a Y are used. \n -/// Bit[4]=1 indicates that bits[127:64] of operand \a Y are used. -/// \returns The 128-bit integer vector containing the result of the carry-less -/// multiplication of the selected 64-bit values. -#define _mm_clmulepi64_si128(X, Y, I) \ - ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \ - (__v2di)(__m128i)(Y), (char)(I))) - -#endif /* __WMMINTRIN_PCLMUL_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@__wmmintrin_pclmul.h.blob deleted file mode 100644 index 8c56f2d33d2b9cdc9602afcfef926098e0caca37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12424 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h deleted file mode 100644 index 72b9ed08..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h +++ /dev/null @@ -1,72 +0,0 @@ -/*===---- adxintrin.h - ADX intrinsics -------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <adxintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __ADXINTRIN_H -#define __ADXINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__)) - -/* Intrinsics that are available only if __ADX__ defined */ -static __inline unsigned char __attribute__((__always_inline__, __nodebug__, __target__("adx"))) -_addcarryx_u32(unsigned char __cf, unsigned int __x, unsigned int __y, - unsigned int *__p) -{ - return __builtin_ia32_addcarryx_u32(__cf, __x, __y, __p); -} - -#ifdef __x86_64__ -static __inline unsigned char __attribute__((__always_inline__, __nodebug__, __target__("adx"))) -_addcarryx_u64(unsigned char __cf, unsigned long long __x, - unsigned long long __y, unsigned long long *__p) -{ - return __builtin_ia32_addcarryx_u64(__cf, __x, __y, __p); -} -#endif - -/* Intrinsics that are also available if __ADX__ undefined */ -static __inline unsigned char __DEFAULT_FN_ATTRS -_addcarry_u32(unsigned char __cf, unsigned int __x, unsigned int __y, - unsigned int *__p) -{ - return __builtin_ia32_addcarryx_u32(__cf, __x, __y, __p); -} - -#ifdef __x86_64__ -static __inline unsigned char __DEFAULT_FN_ATTRS -_addcarry_u64(unsigned char __cf, unsigned long long __x, - unsigned long long __y, unsigned long long *__p) -{ - return __builtin_ia32_addcarryx_u64(__cf, __x, __y, __p); -} -#endif - -static __inline unsigned char __DEFAULT_FN_ATTRS -_subborrow_u32(unsigned char __cf, unsigned int __x, unsigned int __y, - unsigned int *__p) -{ - return __builtin_ia32_subborrow_u32(__cf, __x, __y, __p); -} - -#ifdef __x86_64__ -static __inline unsigned char __DEFAULT_FN_ATTRS -_subborrow_u64(unsigned char __cf, unsigned long long __x, - unsigned long long __y, unsigned long long *__p) -{ - return __builtin_ia32_subborrow_u64(__cf, __x, __y, __p); -} -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif /* __ADXINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@adxintrin.h.blob deleted file mode 100644 index 391126ffb82a5f4cd576a4d284bc2ab8cb3391cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15267 zcmcgyZ;V`36@Rlpl~4+ZTbHss8AYbu(%E5`cDgNPw_CQ`mMkSg!4;Ff-g)!h%<H~? zeecbmtqll4EDe4`qYwen7=qYT5>XREj2H~XARmYyj6oy;4S{|T6oQuV+<V`>Gk4y7 zZ-#{6hmG`|bI<?ZIrrSzsC;zVTzXN-D8-s<>qV<LuLsMa>lH&i2#XcHQVe{pXd}~^ z(3EpD3pv$+NDEEZUpAd;p<?>F7P|h*b%_#`vzs!-df*pLN3-e`y?D#~;#9G$S4~IN z+=@O?Q$EV)j-M82v~a~EU*0=2Eq*DRVNk?hgQBY1<sd|%u7>y!PHLIuBC(}7S>jTW z-7=lf2TOqzdqt2(bb>!>wQg3V8tqvuR;@bzbnz>vUPxdDuhxCJMTU;>w?NR8xx_|c zP52-;q0!nhIc0d0r4&nue{fhF(J4$6`CeXu1ZX0!zsw-4lwH@tgfXX)qdYe-TT`lK z+QMOiI25|Jsi{q~qC?2*PN@5wI4v;^)6&(l?=}O<aP<@Ags^E|-E<5WpUQJ7#fP9d zvLFHb=R;8U4WxBKnx<||x6Bq+;p9^XMLh#7sLE}|)gaZbYB*+!R>a{n_XD%qKvqxU z3r?qWp=s-W7g?JAdc!1vUj6J%qWZi#LbtAwMCDEvL>gYfa;xS3b|R9=jk29)ZLks) zwTf=YOQzcwp<mZRbz$G)Zb3BDjjK<9t~*5-Mb}}P>n@wRYPzaXceK!SouJEo-8e=N z0Smmne0>T=8BifTCrD%8wC#SOhoA@Ha&S~?W!*8MSf!u3%#$M~^8*NQ5Xk`!rtA|r zBhYGkUlC0(V-SNq*VCLZ#bzEi0J9230Frm9Icy`1B+Or~x=~DGTnSR|a4{goM5I6P z^p-|SRl(7an5vChDzd<5)Lc10vR;LQr}sKW@NQLy)*J#t(iTEOkY;Pp!1kQEeoi!$ z+XGs{`Iv^=!{p)GB8mwfky>lC0syZVQc7u~y7s1kLH7d~4L&BPHAr{Ekt}T%G-q~k z+cnGd$}aNd&734Nbd1m`Ku>}s3|EBXq{ex^q19x7C8dsB;luzvEux06>uS|n@d(In z%+<um(i+4dfVAcQ3P&nfWuyPZ0NIHfXh8$K3q{0DGY=3P#~Km@tHTQ*g~c>%)UYHx zEQG|!PASTPh!vIPY6xZoanzAY2Z=o4xt@Yd=w1d2#G?cP7<wy#c~p)fxY)@25mT7w z<g&gZ47_QX5JDydW*ALMAGS4`2~yL%)Xu@h+h!mK15QEbG#tqoU{sxY5r*4xP)Mje z6xc=G_Z{Mc4Ikbwj>t4~_3*Ggz|6@|g!G5Xk^b4j1Iv9c^;5&sEW2(UsT`4{pOmAC z%+Onw4T@6oKpF@sDcC4cLP$3<S*y?ygi2>5D1f23^C>NtEWJg$=eoCb5l|p#g{to8 zzNyjR70M_e`5lWOPZHPDohq3TVoB0fx{e-*D8lr{iLKJiE+WswwjKMyYH@xdjjLl@ z;<((Q;}tD+b}K*)UF+v>hADVpD{USGQy_>93h>jC!=<WddT&cii(Cx_HJe`3N|pU7 z5CFMg!X$E3m*~Mf&m#yp6mN}EZCMAARt!6r);68N{U#u?*qRs_7msgsFn@$PxiQL< z2(-}(H66j&SAcHUmFV3Qc$9Aq({~*k+PFO92o+oq3ow33ONkIf!xt$!DHW&$r6T=A z4)DU74+@hkDj=WUlQ<y7yim5F$Jt5y4?LgMp%;gGD@A8$+El1iE9P+gQSN2nN92kl z@TX*gF-UsB6_ATeOKvM5z2ND!X}!%4dv8T)M|Lg>)|6~^;teVm7ua9GVoC4=3mJ(n z1qZmt<C`WP<zpk5KpyB848O_8;e`)OE|w@!>UjV;<P(o_kP}4V9%WdlDjp?}Fk}P0 z2U;3LW~wT*YqeZA)DVfw3*mIE0A9n@I~t_L2+lKTJ34gJF0mbvjMXeRz-ywO&7jmb z(tgX71IK9v&)4CmCImuy5{$^Q1|g+YReo1j=}3Xkmq*92!h#M?FW7ombLDqun1<`E ze#29gfM!*VwrOH^Nfm9D9oKXka0`r0=*&qBB-9R&aIBD?347FpJDQxFZhGilKedfe zFLdfKHi5*K4^oLf0-JlAY~l#PI$YGp2fD}v)&8>^btfze;HIVmgcT|)4uU19kclh^ zvHroS(hA8!m@N7Fk2mv}qE9?YfTWR;x|hsSl7x~H>&_9)PD{UT%R9~*$o#;xJ-GT& z$ftnv%}rlVnUOlFl~k%Of`x$Q+P0h4=kdaOGI8M@8>z7|v0Uzy9p29hQ4*2@uR3B^ zPN}Q$HUqLZR_Ib<+lJkh1*004EcXV*8vtX-UlD3V1<6Z{^cv3S=<>VM9AXn3Yft?b zxD8k;!A4f_m(;)(e&FiyMp`Z1SRjl0)3ZJALL@(74l|&5<@bI<LEl@{)M2gv{;>hO zsLm5cnz}0}a7@pm^X$Wq-72<Gq7w9ay#X_E??xx>SQ2gQ+z+MGQ`Ca!3}j+^{J_&i zNRvi`f-K(r^n@f4mcyWBRYLs67)xlDR=k7`yKtE>>8&Fj>q6<gAXV9Rp=}OaPXrX< zrap+es2(kf(sk7=!>R|h^h29k4RxN<x(kbYr)E~7Yc`RW7Jj{A!c#7e|Emi|3Xsxp zdTEz|e*3#1P~$VJG!Wgx7NXCm9I&Jet?5$L8#r>T|7(4_6d%BnxA@%Y6b}WMilwb* zq0n%B`6Za2bfj*IO`M&>irlH&$+ykuPKp(Y-FVo8bRlJ(&V|5JV-mP=RRi4#X!`KX z7L@JkC}yR9PXPeK8|fZGdB~-8&4hCWJ1aA}g7gI~W~fvo%^TRd!~sf5-+<g5l-87* zBR!S?kL=)>@wkbZor`%lR*)zQ;7&$u)k8iKU-hLr1T`6~GX-c0;g_heKweygWRxCA zeVba5a2ioqIE;zpyK3oIq7c7-!;;DJV9CTEdj%e;dYV<yZ8scf)n>V<5_Eccx7T@E zdS*+fi-1^Ka+)fPA9x+)yOz~6FG_U;7fwmijd_Tl3k#97k{zJGcy6;tAtr=@hir|N zq%{1#rD5UU1<16QGQllBy5RG+(5nE3$Y{$gL|3GvDGE+Ynf-Cv6kwGcwMmYtQq2qq zKEZCTn3N1cm2mkK^aEbI0C%2Bp`vRREJfihMzBVDc!DQ|lZDC;#e$a+MuTM!Ff&S? zTDDuKPYFD$r5b|y4o+<t?FSm4;64<fs$O=<z@C0K>^?lrly!EgDjvm1N!>`vDNGIc zIt7nsWOYa`bOQ~|=|7I)ZmuC1JLT_s6xYdCx&R;zo3KJMXi{Qwo9j{)HdjKDu_$+_ z;mtwJLq<Y=9-}ug`)yzP$MfVDb18l-<DZQ{JH_<8VAxsQTEFRfL>v!1BkA{(H=5<x z{RxRnOtM`3qeiz5+j+rmsp9Y&ti#M4S6fQ058l<iu<4u91|vP$Iy&I*XzV(?Ct$l` z-s27?cSgB~IZdD;C$^tualkJZ{kGru-Of$ipmgLwZj&&?)FrVZ_$q?6)IIRrg|`@k z&uW_OX<7?a1`ch61W>V3G>~e=(4&$5V;SaF?iAP~)0!ksNxRN<7FmanN57j))dZZH z{-a2;F(OMx-uRe$Bp?xP@GRq0DPj|To07!wadrrruU#|n7$M(Hh~`B<k%_(SB`HgW z87ZzwIlSd)hnEh4DNm=#&s#iwY5-UA@{aHiUZoN%laR1+0WY@2#h}zGXg_da9uy=s zt6A=$O-u2xrqi|D_x3~!3l=ee7*I#RaQ3Ooio}g$l+XB#0-xh>J}a5?l?zs{YJYp} zFHR}fUiJun_%gMe>A>@ao~t`>YjyNW4)0}hYEUniU6`<&YQ401L(fN5Gd6V?aO265 zKdRbF`1cj*zi(7kZ(Nz49?i@sGowS9>y%wXilUs`eq--5zr6nEPyeR<`VREF%&-5u zx1BZe)px)D)cx)E9?1UT^>bDpQC4SwRB1mvJo?)c?H|82s5RG2rCS3b%!zi;f9bXW z|4T>rl2QWQw<z1G?&!jQ|Lo7Gd9Z!-p^Lxu%F9oWwcmXH<iyZ@U)|mQ+@G#G-#Y%C zXPEBq-+Nn##^1dtRd)b$4f+1crxA#CnF(cL-B6~WOi^QO|3CiZ>hn*uzhy1m`O$0h z_qW%Kzc>Htojaaue|P_5PycY}?$gYek@dGfG4}Xt?+<9qCmn}%nY@w*)vr`G4k`P{ zU=x^HkPB-l%)tPeLssDCPy?A3f)Oca8W85W`6X3_OonS1)IbHN-W_kf`lRAltoDBY z_7}763!iCUn!RH82ZzqS)P8Btw!6`Nmm19CKW=qSJz}ppGmyotPa}S#nK5Myl5te| zB8}gp_J*Oo+um^6bN77h@&i+EKhb{qUvK?$`Kk{#w)2;tyUMuvyxq*2U)}ZS?=Pyq zl^N8UPdb33nPFuZbpO0^SwaAL>|DoM=?-95_>MjK&QJgL+}Xdj|9)@oj+gG=er@~S zyWafCu|4m6p*?-(wTGtf`^tln!RMU9_|g5pRT3}7^F9Vi%E|6S@c&;WkseQ{7(OVE z#}DH6@JR9m<+aHXhry<@j>9BJ?hZ<0<We?lSfwbL+1BhGXNS(s%<iAPLpi$|{$<XZ z^H*m$QgL<$dCKT0X52cxbp|tT9o;%Z8Mj&6Fe5WcU<5o>)~&;Qr9&kH^OY7##z`V@ z+tRj!z{hOhe6$TgrvZtd#hlwqy9j5twCi!oxw!2Ba55a?oKj1Rjp8xPUR*35qY6)2 zlUQMfXA*W*T~YFRtafo%aWCN>E$%%<gin?yYrxHtLCW2VxM!>xA9K$v%=nahZfOo1 z&5|pXd*bkfhq))_C%j1Z(j?|)(dOK}E}PjtLtHkKorzpFw>XDg#(<1-_C$C6^m-EA z^`q;f=#E?C*jcBaz50Ti9=z~J1UdKZKXCKD{pwyw+I3gZ5~PsY`H)$2@tTc8<ge1k z{hIeeK{R%Blppt$PGDn8hf61-{3vh3j%HPyz&Cu)FyR|MJRI?jlt(b%x&Qmd$>N!# zkE`nZ?uEHq7Z0cl`_;Jv2X4LvwE1#J?cT3o2@2s-Uxs_9s&3c-|7kVRN}$qlNmVxi zg#*9zDc7s2IzA3ba>>P)Y#zdYA0W1#cjb;N5ADnpb`;?6mK|H*?{zz_gTK4i?4H`0 z;rPoflICr;l_eFL-JgvrG-u^-C>Sts_TK0ZZyzSnAI=U((H~hH!O>?p$T@qWzjpiD zoj3+-vuk(KQW>#Eut)|$oUvEr*!D3Zax6O*iOenLut<hkiJbZAJdv3n&F`euJ-#@O zIa%N0oE<M=RH5ZLW{r^o8(SEQ3M{vj!zIF+os^pucXmE|1GYDt&E7x@ELYCq++j0k zD);RCEa9Hb&PLpG<vGmF#s<!f-Q3Ca{N4HESZcnOKTb1!ygZKi7_4)?UN28fPY_>C zj7~(pnp~X3zG5wpb5e;6dxsAV6YL#c7>=-aWN8F@iM6H#zWl*_g=jjTuSA+IjRW8R E0gbEa?f?J) diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h deleted file mode 100644 index ed798245..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h +++ /dev/null @@ -1,58 +0,0 @@ -/*===------------- amxfp16intrin.h - AMX_FP16 intrinsics -*- C++ -*---------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===------------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <amxfp16intrin.h> directly; use <immintrin.h> instead." -#endif /* __IMMINTRIN_H */ - -#ifndef __AMX_FP16INTRIN_H -#define __AMX_FP16INTRIN_H -#ifdef __x86_64__ - -/// Compute dot-product of FP16 (16-bit) floating-point pairs in tiles \a a -/// and \a b, accumulating the intermediate single-precision (32-bit) -/// floating-point elements with elements in \a dst, and store the 32-bit -/// result back to tile \a dst. -/// -/// \headerfile <immintrin.h> -/// -/// \code -/// void _tile_dpfp16ps (__tile dst, __tile a, __tile b) -/// \endcode -/// -/// \code{.operation} -/// FOR m := 0 TO dst.rows - 1 -/// tmp := dst.row[m] -/// FOR k := 0 TO (a.colsb / 4) - 1 -/// FOR n := 0 TO (dst.colsb / 4) - 1 -/// tmp.fp32[n] += FP32(a.row[m].fp16[2*k+0]) * -/// FP32(b.row[k].fp16[2*n+0]) -/// tmp.fp32[n] += FP32(a.row[m].fp16[2*k+1]) * -/// FP32(b.row[k].fp16[2*n+1]) -/// ENDFOR -/// ENDFOR -/// write_row_and_zero(dst, m, tmp, dst.colsb) -/// ENDFOR -/// zero_upper_rows(dst, dst.rows) -/// zero_tileconfig_start() -/// \endcode -/// -/// This intrinsic corresponds to the \c TDPFP16PS instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param a -/// The 1st source tile. Max size is 1024 Bytes. -/// \param b -/// The 2nd source tile. Max size is 1024 Bytes. -#define _tile_dpfp16ps(dst, a, b) \ - __builtin_ia32_tdpfp16ps(dst, a, b) - -#endif /* __x86_64__ */ -#endif /* __AMX_FP16INTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxfp16intrin.h.blob deleted file mode 100644 index a726744f412482efb377d138842bdf6a6fec5128..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12346 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h deleted file mode 100644 index baa56f5b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h +++ /dev/null @@ -1,524 +0,0 @@ -/*===--------------- amxintrin.h - AMX intrinsics -*- C/C++ -*---------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===------------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <amxintrin.h> directly; include <immintrin.h> instead." -#endif /* __IMMINTRIN_H */ - -#ifndef __AMXINTRIN_H -#define __AMXINTRIN_H -#ifdef __x86_64__ - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS_TILE \ - __attribute__((__always_inline__, __nodebug__, __target__("amx-tile"))) -#define __DEFAULT_FN_ATTRS_INT8 \ - __attribute__((__always_inline__, __nodebug__, __target__("amx-int8"))) -#define __DEFAULT_FN_ATTRS_BF16 \ - __attribute__((__always_inline__, __nodebug__, __target__("amx-bf16"))) -#define __DEFAULT_FN_ATTRS_FP16 \ - __attribute__((__always_inline__, __nodebug__, __target__("amx-fp16"))) - -/// Load tile configuration from a 64-byte memory location specified by -/// "mem_addr". The tile configuration includes the tile type palette, the -/// number of bytes per row, and the number of rows. If the specified -/// palette_id is zero, that signifies the init state for both the tile -/// config and the tile data, and the tiles are zeroed. Any invalid -/// configurations will result in #GP fault. -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> LDTILECFG </c> instruction. -/// -/// \param __config -/// A pointer to 512-bits configuration -static __inline__ void __DEFAULT_FN_ATTRS_TILE -_tile_loadconfig(const void *__config) { - __builtin_ia32_tile_loadconfig(__config); -} - -/// Stores the current tile configuration to a 64-byte memory location -/// specified by "mem_addr". The tile configuration includes the tile type -/// palette, the number of bytes per row, and the number of rows. If tiles -/// are not configured, all zeroes will be stored to memory. -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> STTILECFG </c> instruction. -/// -/// \param __config -/// A pointer to 512-bits configuration -static __inline__ void __DEFAULT_FN_ATTRS_TILE -_tile_storeconfig(void *__config) { - __builtin_ia32_tile_storeconfig(__config); -} - -/// Release the tile configuration to return to the init state, which -/// releases all storage it currently holds. -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILERELEASE </c> instruction. -static __inline__ void __DEFAULT_FN_ATTRS_TILE _tile_release(void) { - __builtin_ia32_tilerelease(); -} - -/// Load tile rows from memory specifieid by "base" address and "stride" into -/// destination tile "dst" using the tile configuration previously configured -/// via "_tile_loadconfig". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILELOADD </c> instruction. -/// -/// \param dst -/// A destination tile. Max size is 1024 Bytes. -/// \param base -/// A pointer to base address. -/// \param stride -/// The stride between the rows' data to be loaded in memory. -#define _tile_loadd(dst, base, stride) \ - __builtin_ia32_tileloadd64((dst), ((const void *)(base)), \ - (__SIZE_TYPE__)(stride)) - -/// Load tile rows from memory specifieid by "base" address and "stride" into -/// destination tile "dst" using the tile configuration previously configured -/// via "_tile_loadconfig". This intrinsic provides a hint to the implementation -/// that the data will likely not be reused in the near future and the data -/// caching can be optimized accordingly. -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILELOADDT1 </c> instruction. -/// -/// \param dst -/// A destination tile. Max size is 1024 Bytes. -/// \param base -/// A pointer to base address. -/// \param stride -/// The stride between the rows' data to be loaded in memory. -#define _tile_stream_loadd(dst, base, stride) \ - __builtin_ia32_tileloaddt164((dst), ((const void *)(base)), \ - (__SIZE_TYPE__)(stride)) - -/// Store the tile specified by "src" to memory specifieid by "base" address and -/// "stride" using the tile configuration previously configured via -/// "_tile_loadconfig". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILESTORED </c> instruction. -/// -/// \param dst -/// A destination tile. Max size is 1024 Bytes. -/// \param base -/// A pointer to base address. -/// \param stride -/// The stride between the rows' data to be stored in memory. -#define _tile_stored(dst, base, stride) \ - __builtin_ia32_tilestored64((dst), ((void *)(base)), (__SIZE_TYPE__)(stride)) - -/// Zero the tile specified by "tdest". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILEZERO </c> instruction. -/// -/// \param tile -/// The destination tile to be zero. Max size is 1024 Bytes. -#define _tile_zero(tile) __builtin_ia32_tilezero((tile)) - -/// Compute dot-product of bytes in tiles with a source/destination accumulator. -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with -/// corresponding signed 8-bit integers in src1, producing 4 intermediate 32-bit -/// results. Sum these 4 results with the corresponding 32-bit integer in "dst", -/// and store the 32-bit result back to tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBSSD </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -#define _tile_dpbssd(dst, src0, src1) \ - __builtin_ia32_tdpbssd((dst), (src0), (src1)) - -/// Compute dot-product of bytes in tiles with a source/destination accumulator. -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with -/// corresponding unsigned 8-bit integers in src1, producing 4 intermediate -/// 32-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in "dst", and store the 32-bit result back to tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBSUD </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -#define _tile_dpbsud(dst, src0, src1) \ - __builtin_ia32_tdpbsud((dst), (src0), (src1)) - -/// Compute dot-product of bytes in tiles with a source/destination accumulator. -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with -/// corresponding signed 8-bit integers in src1, producing 4 intermediate 32-bit -/// results. Sum these 4 results with the corresponding 32-bit integer in "dst", -/// and store the 32-bit result back to tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBUSD </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -#define _tile_dpbusd(dst, src0, src1) \ - __builtin_ia32_tdpbusd((dst), (src0), (src1)) - -/// Compute dot-product of bytes in tiles with a source/destination accumulator. -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with -/// corresponding unsigned 8-bit integers in src1, producing 4 intermediate -/// 32-bit results. Sum these 4 results with the corresponding 32-bit integer in -/// "dst", and store the 32-bit result back to tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBUUD </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -#define _tile_dpbuud(dst, src0, src1) \ - __builtin_ia32_tdpbuud((dst), (src0), (src1)) - -/// Compute dot-product of BF16 (16-bit) floating-point pairs in tiles src0 and -/// src1, accumulating the intermediate single-precision (32-bit) floating-point -/// elements with elements in "dst", and store the 32-bit result back to tile -/// "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBF16PS </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -#define _tile_dpbf16ps(dst, src0, src1) \ - __builtin_ia32_tdpbf16ps((dst), (src0), (src1)) - -/// AMX tile register size can be configured, the maximum size is 16x64=1024 -/// bytes. Since there is no 2D type in llvm IR, we use vector type to -/// represent 2D tile and the fixed size is maximum amx tile register size. -typedef int _tile1024i __attribute__((__vector_size__(1024), __aligned__(64))); - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 -_tile_loadd_internal(unsigned short m, unsigned short n, const void *base, - __SIZE_TYPE__ stride) { - return __builtin_ia32_tileloadd64_internal(m, n, base, - (__SIZE_TYPE__)(stride)); -} - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 -_tile_loaddt1_internal(unsigned short m, unsigned short n, const void *base, - __SIZE_TYPE__ stride) { - return __builtin_ia32_tileloaddt164_internal(m, n, base, - (__SIZE_TYPE__)(stride)); -} - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 -_tile_dpbssd_internal(unsigned short m, unsigned short n, unsigned short k, - _tile1024i dst, _tile1024i src1, _tile1024i src2) { - return __builtin_ia32_tdpbssd_internal(m, n, k, dst, src1, src2); -} - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 -_tile_dpbsud_internal(unsigned short m, unsigned short n, unsigned short k, - _tile1024i dst, _tile1024i src1, _tile1024i src2) { - return __builtin_ia32_tdpbsud_internal(m, n, k, dst, src1, src2); -} - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 -_tile_dpbusd_internal(unsigned short m, unsigned short n, unsigned short k, - _tile1024i dst, _tile1024i src1, _tile1024i src2) { - return __builtin_ia32_tdpbusd_internal(m, n, k, dst, src1, src2); -} - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ _tile1024i __DEFAULT_FN_ATTRS_INT8 -_tile_dpbuud_internal(unsigned short m, unsigned short n, unsigned short k, - _tile1024i dst, _tile1024i src1, _tile1024i src2) { - return __builtin_ia32_tdpbuud_internal(m, n, k, dst, src1, src2); -} - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ void __DEFAULT_FN_ATTRS_INT8 -_tile_stored_internal(unsigned short m, unsigned short n, void *base, - __SIZE_TYPE__ stride, _tile1024i tile) { - return __builtin_ia32_tilestored64_internal(m, n, base, - (__SIZE_TYPE__)(stride), tile); -} - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ _tile1024i __DEFAULT_FN_ATTRS_BF16 -_tile_dpbf16ps_internal(unsigned short m, unsigned short n, unsigned short k, - _tile1024i dst, _tile1024i src1, _tile1024i src2) { - return __builtin_ia32_tdpbf16ps_internal(m, n, k, dst, src1, src2); -} - -/// This is internal intrinsic. C/C++ user should avoid calling it directly. -static __inline__ _tile1024i __DEFAULT_FN_ATTRS_FP16 -_tile_dpfp16ps_internal(unsigned short m, unsigned short n, unsigned short k, - _tile1024i dst, _tile1024i src1, _tile1024i src2) { - return __builtin_ia32_tdpfp16ps_internal(m, n, k, dst, src1, src2); -} - -/// This struct pack the shape and tile data together for user. We suggest -/// initializing the struct as early as possible, because compiler depends -/// on the shape information to do configure. The constant value is preferred -/// for optimization by compiler. -typedef struct __tile1024i_str { - const unsigned short row; - const unsigned short col; - _tile1024i tile; -} __tile1024i; - -/// Load tile rows from memory specifieid by "base" address and "stride" into -/// destination tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILELOADD </c> instruction. -/// -/// \param dst -/// A destination tile. Max size is 1024 Bytes. -/// \param base -/// A pointer to base address. -/// \param stride -/// The stride between the rows' data to be loaded in memory. -__DEFAULT_FN_ATTRS_TILE -static __inline__ void __tile_loadd(__tile1024i *dst, const void *base, - __SIZE_TYPE__ stride) { - dst->tile = _tile_loadd_internal(dst->row, dst->col, base, stride); -} - -/// Load tile rows from memory specifieid by "base" address and "stride" into -/// destination tile "dst". This intrinsic provides a hint to the implementation -/// that the data will likely not be reused in the near future and the data -/// caching can be optimized accordingly. -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILELOADDT1 </c> instruction. -/// -/// \param dst -/// A destination tile. Max size is 1024 Bytes. -/// \param base -/// A pointer to base address. -/// \param stride -/// The stride between the rows' data to be loaded in memory. -__DEFAULT_FN_ATTRS_TILE -static __inline__ void __tile_stream_loadd(__tile1024i *dst, const void *base, - __SIZE_TYPE__ stride) { - dst->tile = _tile_loaddt1_internal(dst->row, dst->col, base, stride); -} - -/// Compute dot-product of bytes in tiles with a source/destination accumulator. -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with -/// corresponding signed 8-bit integers in src1, producing 4 intermediate 32-bit -/// results. Sum these 4 results with the corresponding 32-bit integer in "dst", -/// and store the 32-bit result back to tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBSSD </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -__DEFAULT_FN_ATTRS_INT8 -static __inline__ void __tile_dpbssd(__tile1024i *dst, __tile1024i src0, - __tile1024i src1) { - dst->tile = _tile_dpbssd_internal(src0.row, src1.col, src0.col, dst->tile, - src0.tile, src1.tile); -} - -/// Compute dot-product of bytes in tiles with a source/destination accumulator. -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with -/// corresponding unsigned 8-bit integers in src1, producing 4 intermediate -/// 32-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in "dst", and store the 32-bit result back to tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBSUD </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -__DEFAULT_FN_ATTRS_INT8 -static __inline__ void __tile_dpbsud(__tile1024i *dst, __tile1024i src0, - __tile1024i src1) { - dst->tile = _tile_dpbsud_internal(src0.row, src1.col, src0.col, dst->tile, - src0.tile, src1.tile); -} - -/// Compute dot-product of bytes in tiles with a source/destination accumulator. -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with -/// corresponding signed 8-bit integers in src1, producing 4 intermediate 32-bit -/// results. Sum these 4 results with the corresponding 32-bit integer in "dst", -/// and store the 32-bit result back to tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBUSD </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -__DEFAULT_FN_ATTRS_INT8 -static __inline__ void __tile_dpbusd(__tile1024i *dst, __tile1024i src0, - __tile1024i src1) { - dst->tile = _tile_dpbusd_internal(src0.row, src1.col, src0.col, dst->tile, - src0.tile, src1.tile); -} - -/// Compute dot-product of bytes in tiles with a source/destination accumulator. -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with -/// corresponding unsigned 8-bit integers in src1, producing 4 intermediate -/// 32-bit results. Sum these 4 results with the corresponding 32-bit integer in -/// "dst", and store the 32-bit result back to tile "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBUUD </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -__DEFAULT_FN_ATTRS_INT8 -static __inline__ void __tile_dpbuud(__tile1024i *dst, __tile1024i src0, - __tile1024i src1) { - dst->tile = _tile_dpbuud_internal(src0.row, src1.col, src0.col, dst->tile, - src0.tile, src1.tile); -} - -/// Store the tile specified by "src" to memory specifieid by "base" address and -/// "stride". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILESTORED </c> instruction. -/// -/// \param base -/// A pointer to base address. -/// \param stride -/// The stride between the rows' data to be stored in memory. -__DEFAULT_FN_ATTRS_TILE -static __inline__ void __tile_stored(void *base, __SIZE_TYPE__ stride, - __tile1024i src) { - _tile_stored_internal(src.row, src.col, base, stride, src.tile); -} - -/// Zero the tile specified by "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TILEZERO </c> instruction. -/// -/// \param dst -/// The destination tile to be zero. Max size is 1024 Bytes. -__DEFAULT_FN_ATTRS_TILE -static __inline__ void __tile_zero(__tile1024i *dst) { - dst->tile = __builtin_ia32_tilezero_internal(dst->row, dst->col); -} - -/// Compute dot-product of BF16 (16-bit) floating-point pairs in tiles src0 and -/// src1, accumulating the intermediate single-precision (32-bit) floating-point -/// elements with elements in "dst", and store the 32-bit result back to tile -/// "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPBF16PS </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -__DEFAULT_FN_ATTRS_BF16 -static __inline__ void __tile_dpbf16ps(__tile1024i *dst, __tile1024i src0, - __tile1024i src1) { - dst->tile = _tile_dpbf16ps_internal(src0.row, src1.col, src0.col, dst->tile, - src0.tile, src1.tile); -} - -/// Compute dot-product of FP16 (16-bit) floating-point pairs in tiles src0 and -/// src1, accumulating the intermediate single-precision (32-bit) floating-point -/// elements with elements in "dst", and store the 32-bit result back to tile -/// "dst". -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> TDPFP16PS </c> instruction. -/// -/// \param dst -/// The destination tile. Max size is 1024 Bytes. -/// \param src0 -/// The 1st source tile. Max size is 1024 Bytes. -/// \param src1 -/// The 2nd source tile. Max size is 1024 Bytes. -__DEFAULT_FN_ATTRS_FP16 -static __inline__ void __tile_dpfp16ps(__tile1024i *dst, __tile1024i src0, - __tile1024i src1) { - dst->tile = _tile_dpfp16ps_internal(src0.row, src1.col, src0.col, dst->tile, - src0.tile, src1.tile); -} - -#undef __DEFAULT_FN_ATTRS_TILE -#undef __DEFAULT_FN_ATTRS_INT8 -#undef __DEFAULT_FN_ATTRS_BF16 -#undef __DEFAULT_FN_ATTRS_FP16 - -#endif /* __x86_64__ */ -#endif /* __AMXINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@amxintrin.h.blob deleted file mode 100644 index 31b5cdcd6cfe967de69da1869808dc5102eb3833..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34808 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h deleted file mode 100644 index f8521e7d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h +++ /dev/null @@ -1,1148 +0,0 @@ -/*===---- avx2intrin.h - AVX2 intrinsics -----------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <avx2intrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX2INTRIN_H -#define __AVX2INTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx2"), __min_vector_width__(256))) -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx2"), __min_vector_width__(128))) - -/* SSE4 Multiple Packed Sums of Absolute Difference. */ -#define _mm256_mpsadbw_epu8(X, Y, M) \ - ((__m256i)__builtin_ia32_mpsadbw256((__v32qi)(__m256i)(X), \ - (__v32qi)(__m256i)(Y), (int)(M))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_abs_epi8(__m256i __a) -{ - return (__m256i)__builtin_elementwise_abs((__v32qs)__a); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_abs_epi16(__m256i __a) -{ - return (__m256i)__builtin_elementwise_abs((__v16hi)__a); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_abs_epi32(__m256i __a) -{ - return (__m256i)__builtin_elementwise_abs((__v8si)__a); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_packs_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_packsswb256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_packs_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_packssdw256((__v8si)__a, (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_packus_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_packuswb256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_packus_epi32(__m256i __V1, __m256i __V2) -{ - return (__m256i) __builtin_ia32_packusdw256((__v8si)__V1, (__v8si)__V2); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_add_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)((__v32qu)__a + (__v32qu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_add_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)((__v16hu)__a + (__v16hu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_add_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)((__v8su)__a + (__v8su)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_add_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4du)__a + (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_adds_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_add_sat((__v32qs)__a, (__v32qs)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_adds_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_add_sat((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_adds_epu8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_add_sat((__v32qu)__a, (__v32qu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_adds_epu16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_add_sat((__v16hu)__a, (__v16hu)__b); -} - -#define _mm256_alignr_epi8(a, b, n) \ - ((__m256i)__builtin_ia32_palignr256((__v32qi)(__m256i)(a), \ - (__v32qi)(__m256i)(b), (n))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_and_si256(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4du)__a & (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_andnot_si256(__m256i __a, __m256i __b) -{ - return (__m256i)(~(__v4du)__a & (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_avg_epu8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pavgb256((__v32qi)__a, (__v32qi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_avg_epu16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pavgw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_blendv_epi8(__m256i __V1, __m256i __V2, __m256i __M) -{ - return (__m256i)__builtin_ia32_pblendvb256((__v32qi)__V1, (__v32qi)__V2, - (__v32qi)__M); -} - -#define _mm256_blend_epi16(V1, V2, M) \ - ((__m256i)__builtin_ia32_pblendw256((__v16hi)(__m256i)(V1), \ - (__v16hi)(__m256i)(V2), (int)(M))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cmpeq_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)((__v32qi)__a == (__v32qi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cmpeq_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)((__v16hi)__a == (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cmpeq_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)((__v8si)__a == (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cmpeq_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4di)__a == (__v4di)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cmpgt_epi8(__m256i __a, __m256i __b) -{ - /* This function always performs a signed comparison, but __v32qi is a char - which may be signed or unsigned, so use __v32qs. */ - return (__m256i)((__v32qs)__a > (__v32qs)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cmpgt_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)((__v16hi)__a > (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cmpgt_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)((__v8si)__a > (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cmpgt_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4di)__a > (__v4di)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_hadd_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_phaddw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_hadd_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_phaddd256((__v8si)__a, (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_hadds_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_phaddsw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_hsub_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_phsubw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_hsub_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_phsubd256((__v8si)__a, (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_hsubs_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_phsubsw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maddubs_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pmaddubsw256((__v32qi)__a, (__v32qi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_madd_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pmaddwd256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_max_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_max((__v32qs)__a, (__v32qs)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_max_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_max((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_max_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_max((__v8si)__a, (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_max_epu8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_max((__v32qu)__a, (__v32qu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_max_epu16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_max((__v16hu)__a, (__v16hu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_max_epu32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_max((__v8su)__a, (__v8su)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_min_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_min((__v32qs)__a, (__v32qs)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_min_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_min((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_min_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_min((__v8si)__a, (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_min_epu8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_min((__v32qu)__a, (__v32qu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_min_epu16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_min((__v16hu)__a, (__v16hu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_min_epu32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_min((__v8su)__a, (__v8su)__b); -} - -static __inline__ int __DEFAULT_FN_ATTRS256 -_mm256_movemask_epi8(__m256i __a) -{ - return __builtin_ia32_pmovmskb256((__v32qi)__a); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi8_epi16(__m128i __V) -{ - /* This function always performs a signed extension, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m256i)__builtin_convertvector((__v16qs)__V, __v16hi); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi8_epi32(__m128i __V) -{ - /* This function always performs a signed extension, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3, 4, 5, 6, 7), __v8si); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi8_epi64(__m128i __V) -{ - /* This function always performs a signed extension, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3), __v4di); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi16_epi32(__m128i __V) -{ - return (__m256i)__builtin_convertvector((__v8hi)__V, __v8si); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi16_epi64(__m128i __V) -{ - return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1, 2, 3), __v4di); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi32_epi64(__m128i __V) -{ - return (__m256i)__builtin_convertvector((__v4si)__V, __v4di); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepu8_epi16(__m128i __V) -{ - return (__m256i)__builtin_convertvector((__v16qu)__V, __v16hi); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepu8_epi32(__m128i __V) -{ - return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3, 4, 5, 6, 7), __v8si); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepu8_epi64(__m128i __V) -{ - return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3), __v4di); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepu16_epi32(__m128i __V) -{ - return (__m256i)__builtin_convertvector((__v8hu)__V, __v8si); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepu16_epi64(__m128i __V) -{ - return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1, 2, 3), __v4di); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtepu32_epi64(__m128i __V) -{ - return (__m256i)__builtin_convertvector((__v4su)__V, __v4di); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mul_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pmuldq256((__v8si)__a, (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mulhrs_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pmulhrsw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mulhi_epu16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pmulhuw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mulhi_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pmulhw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mullo_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)((__v16hu)__a * (__v16hu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mullo_epi32 (__m256i __a, __m256i __b) -{ - return (__m256i)((__v8su)__a * (__v8su)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mul_epu32(__m256i __a, __m256i __b) -{ - return __builtin_ia32_pmuludq256((__v8si)__a, (__v8si)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_or_si256(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4du)__a | (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sad_epu8(__m256i __a, __m256i __b) -{ - return __builtin_ia32_psadbw256((__v32qi)__a, (__v32qi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_shuffle_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_pshufb256((__v32qi)__a, (__v32qi)__b); -} - -#define _mm256_shuffle_epi32(a, imm) \ - ((__m256i)__builtin_ia32_pshufd256((__v8si)(__m256i)(a), (int)(imm))) - -#define _mm256_shufflehi_epi16(a, imm) \ - ((__m256i)__builtin_ia32_pshufhw256((__v16hi)(__m256i)(a), (int)(imm))) - -#define _mm256_shufflelo_epi16(a, imm) \ - ((__m256i)__builtin_ia32_pshuflw256((__v16hi)(__m256i)(a), (int)(imm))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sign_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_psignb256((__v32qi)__a, (__v32qi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sign_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_psignw256((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sign_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_psignd256((__v8si)__a, (__v8si)__b); -} - -#define _mm256_slli_si256(a, imm) \ - ((__m256i)__builtin_ia32_pslldqi256_byteshift((__v4di)(__m256i)(a), (int)(imm))) - -#define _mm256_bslli_epi128(a, imm) \ - ((__m256i)__builtin_ia32_pslldqi256_byteshift((__v4di)(__m256i)(a), (int)(imm))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_slli_epi16(__m256i __a, int __count) -{ - return (__m256i)__builtin_ia32_psllwi256((__v16hi)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sll_epi16(__m256i __a, __m128i __count) -{ - return (__m256i)__builtin_ia32_psllw256((__v16hi)__a, (__v8hi)__count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_slli_epi32(__m256i __a, int __count) -{ - return (__m256i)__builtin_ia32_pslldi256((__v8si)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sll_epi32(__m256i __a, __m128i __count) -{ - return (__m256i)__builtin_ia32_pslld256((__v8si)__a, (__v4si)__count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_slli_epi64(__m256i __a, int __count) -{ - return __builtin_ia32_psllqi256((__v4di)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sll_epi64(__m256i __a, __m128i __count) -{ - return __builtin_ia32_psllq256((__v4di)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srai_epi16(__m256i __a, int __count) -{ - return (__m256i)__builtin_ia32_psrawi256((__v16hi)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sra_epi16(__m256i __a, __m128i __count) -{ - return (__m256i)__builtin_ia32_psraw256((__v16hi)__a, (__v8hi)__count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srai_epi32(__m256i __a, int __count) -{ - return (__m256i)__builtin_ia32_psradi256((__v8si)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sra_epi32(__m256i __a, __m128i __count) -{ - return (__m256i)__builtin_ia32_psrad256((__v8si)__a, (__v4si)__count); -} - -#define _mm256_srli_si256(a, imm) \ - ((__m256i)__builtin_ia32_psrldqi256_byteshift((__m256i)(a), (int)(imm))) - -#define _mm256_bsrli_epi128(a, imm) \ - ((__m256i)__builtin_ia32_psrldqi256_byteshift((__m256i)(a), (int)(imm))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srli_epi16(__m256i __a, int __count) -{ - return (__m256i)__builtin_ia32_psrlwi256((__v16hi)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srl_epi16(__m256i __a, __m128i __count) -{ - return (__m256i)__builtin_ia32_psrlw256((__v16hi)__a, (__v8hi)__count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srli_epi32(__m256i __a, int __count) -{ - return (__m256i)__builtin_ia32_psrldi256((__v8si)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srl_epi32(__m256i __a, __m128i __count) -{ - return (__m256i)__builtin_ia32_psrld256((__v8si)__a, (__v4si)__count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srli_epi64(__m256i __a, int __count) -{ - return __builtin_ia32_psrlqi256((__v4di)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srl_epi64(__m256i __a, __m128i __count) -{ - return __builtin_ia32_psrlq256((__v4di)__a, __count); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sub_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)((__v32qu)__a - (__v32qu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sub_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)((__v16hu)__a - (__v16hu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sub_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)((__v8su)__a - (__v8su)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sub_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4du)__a - (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_subs_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_sub_sat((__v32qs)__a, (__v32qs)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_subs_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_sub_sat((__v16hi)__a, (__v16hi)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_subs_epu8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_sub_sat((__v32qu)__a, (__v32qu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_subs_epu16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_elementwise_sub_sat((__v16hu)__a, (__v16hu)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_unpackhi_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_shufflevector((__v32qi)__a, (__v32qi)__b, 8, 32+8, 9, 32+9, 10, 32+10, 11, 32+11, 12, 32+12, 13, 32+13, 14, 32+14, 15, 32+15, 24, 32+24, 25, 32+25, 26, 32+26, 27, 32+27, 28, 32+28, 29, 32+29, 30, 32+30, 31, 32+31); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_unpackhi_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)__b, 4, 16+4, 5, 16+5, 6, 16+6, 7, 16+7, 12, 16+12, 13, 16+13, 14, 16+14, 15, 16+15); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_unpackhi_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)__b, 2, 8+2, 3, 8+3, 6, 8+6, 7, 8+7); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_unpackhi_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_shufflevector((__v4di)__a, (__v4di)__b, 1, 4+1, 3, 4+3); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_unpacklo_epi8(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_shufflevector((__v32qi)__a, (__v32qi)__b, 0, 32+0, 1, 32+1, 2, 32+2, 3, 32+3, 4, 32+4, 5, 32+5, 6, 32+6, 7, 32+7, 16, 32+16, 17, 32+17, 18, 32+18, 19, 32+19, 20, 32+20, 21, 32+21, 22, 32+22, 23, 32+23); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_unpacklo_epi16(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)__b, 0, 16+0, 1, 16+1, 2, 16+2, 3, 16+3, 8, 16+8, 9, 16+9, 10, 16+10, 11, 16+11); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_unpacklo_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)__b, 0, 8+0, 1, 8+1, 4, 8+4, 5, 8+5); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_unpacklo_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_shufflevector((__v4di)__a, (__v4di)__b, 0, 4+0, 2, 4+2); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_xor_si256(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4du)__a ^ (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_stream_load_si256(__m256i const *__V) -{ - typedef __v4di __v4di_aligned __attribute__((aligned(32))); - return (__m256i)__builtin_nontemporal_load((const __v4di_aligned *)__V); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_broadcastss_ps(__m128 __X) -{ - return (__m128)__builtin_shufflevector((__v4sf)__X, (__v4sf)__X, 0, 0, 0, 0); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_broadcastsd_pd(__m128d __a) -{ - return __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 0); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_broadcastss_ps(__m128 __X) -{ - return (__m256)__builtin_shufflevector((__v4sf)__X, (__v4sf)__X, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_broadcastsd_pd(__m128d __X) -{ - return (__m256d)__builtin_shufflevector((__v2df)__X, (__v2df)__X, 0, 0, 0, 0); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcastsi128_si256(__m128i __X) -{ - return (__m256i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 1, 0, 1); -} - -#define _mm_broadcastsi128_si256(X) _mm256_broadcastsi128_si256(X) - -#define _mm_blend_epi32(V1, V2, M) \ - ((__m128i)__builtin_ia32_pblendd128((__v4si)(__m128i)(V1), \ - (__v4si)(__m128i)(V2), (int)(M))) - -#define _mm256_blend_epi32(V1, V2, M) \ - ((__m256i)__builtin_ia32_pblendd256((__v8si)(__m256i)(V1), \ - (__v8si)(__m256i)(V2), (int)(M))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcastb_epi8(__m128i __X) -{ - return (__m256i)__builtin_shufflevector((__v16qi)__X, (__v16qi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcastw_epi16(__m128i __X) -{ - return (__m256i)__builtin_shufflevector((__v8hi)__X, (__v8hi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcastd_epi32(__m128i __X) -{ - return (__m256i)__builtin_shufflevector((__v4si)__X, (__v4si)__X, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcastq_epi64(__m128i __X) -{ - return (__m256i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 0, 0, 0); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_broadcastb_epi8(__m128i __X) -{ - return (__m128i)__builtin_shufflevector((__v16qi)__X, (__v16qi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_broadcastw_epi16(__m128i __X) -{ - return (__m128i)__builtin_shufflevector((__v8hi)__X, (__v8hi)__X, 0, 0, 0, 0, 0, 0, 0, 0); -} - - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_broadcastd_epi32(__m128i __X) -{ - return (__m128i)__builtin_shufflevector((__v4si)__X, (__v4si)__X, 0, 0, 0, 0); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_broadcastq_epi64(__m128i __X) -{ - return (__m128i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 0); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_permutevar8x32_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)__builtin_ia32_permvarsi256((__v8si)__a, (__v8si)__b); -} - -#define _mm256_permute4x64_pd(V, M) \ - ((__m256d)__builtin_ia32_permdf256((__v4df)(__m256d)(V), (int)(M))) - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_permutevar8x32_ps(__m256 __a, __m256i __b) -{ - return (__m256)__builtin_ia32_permvarsf256((__v8sf)__a, (__v8si)__b); -} - -#define _mm256_permute4x64_epi64(V, M) \ - ((__m256i)__builtin_ia32_permdi256((__v4di)(__m256i)(V), (int)(M))) - -#define _mm256_permute2x128_si256(V1, V2, M) \ - ((__m256i)__builtin_ia32_permti256((__m256i)(V1), (__m256i)(V2), (int)(M))) - -#define _mm256_extracti128_si256(V, M) \ - ((__m128i)__builtin_ia32_extract128i256((__v4di)(__m256i)(V), (int)(M))) - -#define _mm256_inserti128_si256(V1, V2, M) \ - ((__m256i)__builtin_ia32_insert128i256((__v4di)(__m256i)(V1), \ - (__v2di)(__m128i)(V2), (int)(M))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskload_epi32(int const *__X, __m256i __M) -{ - return (__m256i)__builtin_ia32_maskloadd256((const __v8si *)__X, (__v8si)__M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskload_epi64(long long const *__X, __m256i __M) -{ - return (__m256i)__builtin_ia32_maskloadq256((const __v4di *)__X, (__v4di)__M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskload_epi32(int const *__X, __m128i __M) -{ - return (__m128i)__builtin_ia32_maskloadd((const __v4si *)__X, (__v4si)__M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskload_epi64(long long const *__X, __m128i __M) -{ - return (__m128i)__builtin_ia32_maskloadq((const __v2di *)__X, (__v2di)__M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_maskstore_epi32(int *__X, __m256i __M, __m256i __Y) -{ - __builtin_ia32_maskstored256((__v8si *)__X, (__v8si)__M, (__v8si)__Y); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_maskstore_epi64(long long *__X, __m256i __M, __m256i __Y) -{ - __builtin_ia32_maskstoreq256((__v4di *)__X, (__v4di)__M, (__v4di)__Y); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_maskstore_epi32(int *__X, __m128i __M, __m128i __Y) -{ - __builtin_ia32_maskstored((__v4si *)__X, (__v4si)__M, (__v4si)__Y); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_maskstore_epi64(long long *__X, __m128i __M, __m128i __Y) -{ - __builtin_ia32_maskstoreq(( __v2di *)__X, (__v2di)__M, (__v2di)__Y); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sllv_epi32(__m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_psllv8si((__v8si)__X, (__v8si)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_sllv_epi32(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_psllv4si((__v4si)__X, (__v4si)__Y); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sllv_epi64(__m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_psllv4di((__v4di)__X, (__v4di)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_sllv_epi64(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_psllv2di((__v2di)__X, (__v2di)__Y); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srav_epi32(__m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_psrav8si((__v8si)__X, (__v8si)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_srav_epi32(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_psrav4si((__v4si)__X, (__v4si)__Y); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srlv_epi32(__m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_psrlv8si((__v8si)__X, (__v8si)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_srlv_epi32(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_psrlv4si((__v4si)__X, (__v4si)__Y); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srlv_epi64(__m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_psrlv4di((__v4di)__X, (__v4di)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_srlv_epi64(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_psrlv2di((__v2di)__X, (__v2di)__Y); -} - -#define _mm_mask_i32gather_pd(a, m, i, mask, s) \ - ((__m128d)__builtin_ia32_gatherd_pd((__v2df)(__m128i)(a), \ - (double const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v2df)(__m128d)(mask), (s))) - -#define _mm256_mask_i32gather_pd(a, m, i, mask, s) \ - ((__m256d)__builtin_ia32_gatherd_pd256((__v4df)(__m256d)(a), \ - (double const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v4df)(__m256d)(mask), (s))) - -#define _mm_mask_i64gather_pd(a, m, i, mask, s) \ - ((__m128d)__builtin_ia32_gatherq_pd((__v2df)(__m128d)(a), \ - (double const *)(m), \ - (__v2di)(__m128i)(i), \ - (__v2df)(__m128d)(mask), (s))) - -#define _mm256_mask_i64gather_pd(a, m, i, mask, s) \ - ((__m256d)__builtin_ia32_gatherq_pd256((__v4df)(__m256d)(a), \ - (double const *)(m), \ - (__v4di)(__m256i)(i), \ - (__v4df)(__m256d)(mask), (s))) - -#define _mm_mask_i32gather_ps(a, m, i, mask, s) \ - ((__m128)__builtin_ia32_gatherd_ps((__v4sf)(__m128)(a), \ - (float const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v4sf)(__m128)(mask), (s))) - -#define _mm256_mask_i32gather_ps(a, m, i, mask, s) \ - ((__m256)__builtin_ia32_gatherd_ps256((__v8sf)(__m256)(a), \ - (float const *)(m), \ - (__v8si)(__m256i)(i), \ - (__v8sf)(__m256)(mask), (s))) - -#define _mm_mask_i64gather_ps(a, m, i, mask, s) \ - ((__m128)__builtin_ia32_gatherq_ps((__v4sf)(__m128)(a), \ - (float const *)(m), \ - (__v2di)(__m128i)(i), \ - (__v4sf)(__m128)(mask), (s))) - -#define _mm256_mask_i64gather_ps(a, m, i, mask, s) \ - ((__m128)__builtin_ia32_gatherq_ps256((__v4sf)(__m128)(a), \ - (float const *)(m), \ - (__v4di)(__m256i)(i), \ - (__v4sf)(__m128)(mask), (s))) - -#define _mm_mask_i32gather_epi32(a, m, i, mask, s) \ - ((__m128i)__builtin_ia32_gatherd_d((__v4si)(__m128i)(a), \ - (int const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v4si)(__m128i)(mask), (s))) - -#define _mm256_mask_i32gather_epi32(a, m, i, mask, s) \ - ((__m256i)__builtin_ia32_gatherd_d256((__v8si)(__m256i)(a), \ - (int const *)(m), \ - (__v8si)(__m256i)(i), \ - (__v8si)(__m256i)(mask), (s))) - -#define _mm_mask_i64gather_epi32(a, m, i, mask, s) \ - ((__m128i)__builtin_ia32_gatherq_d((__v4si)(__m128i)(a), \ - (int const *)(m), \ - (__v2di)(__m128i)(i), \ - (__v4si)(__m128i)(mask), (s))) - -#define _mm256_mask_i64gather_epi32(a, m, i, mask, s) \ - ((__m128i)__builtin_ia32_gatherq_d256((__v4si)(__m128i)(a), \ - (int const *)(m), \ - (__v4di)(__m256i)(i), \ - (__v4si)(__m128i)(mask), (s))) - -#define _mm_mask_i32gather_epi64(a, m, i, mask, s) \ - ((__m128i)__builtin_ia32_gatherd_q((__v2di)(__m128i)(a), \ - (long long const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v2di)(__m128i)(mask), (s))) - -#define _mm256_mask_i32gather_epi64(a, m, i, mask, s) \ - ((__m256i)__builtin_ia32_gatherd_q256((__v4di)(__m256i)(a), \ - (long long const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v4di)(__m256i)(mask), (s))) - -#define _mm_mask_i64gather_epi64(a, m, i, mask, s) \ - ((__m128i)__builtin_ia32_gatherq_q((__v2di)(__m128i)(a), \ - (long long const *)(m), \ - (__v2di)(__m128i)(i), \ - (__v2di)(__m128i)(mask), (s))) - -#define _mm256_mask_i64gather_epi64(a, m, i, mask, s) \ - ((__m256i)__builtin_ia32_gatherq_q256((__v4di)(__m256i)(a), \ - (long long const *)(m), \ - (__v4di)(__m256i)(i), \ - (__v4di)(__m256i)(mask), (s))) - -#define _mm_i32gather_pd(m, i, s) \ - ((__m128d)__builtin_ia32_gatherd_pd((__v2df)_mm_undefined_pd(), \ - (double const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v2df)_mm_cmpeq_pd(_mm_setzero_pd(), \ - _mm_setzero_pd()), \ - (s))) - -#define _mm256_i32gather_pd(m, i, s) \ - ((__m256d)__builtin_ia32_gatherd_pd256((__v4df)_mm256_undefined_pd(), \ - (double const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v4df)_mm256_cmp_pd(_mm256_setzero_pd(), \ - _mm256_setzero_pd(), \ - _CMP_EQ_OQ), \ - (s))) - -#define _mm_i64gather_pd(m, i, s) \ - ((__m128d)__builtin_ia32_gatherq_pd((__v2df)_mm_undefined_pd(), \ - (double const *)(m), \ - (__v2di)(__m128i)(i), \ - (__v2df)_mm_cmpeq_pd(_mm_setzero_pd(), \ - _mm_setzero_pd()), \ - (s))) - -#define _mm256_i64gather_pd(m, i, s) \ - ((__m256d)__builtin_ia32_gatherq_pd256((__v4df)_mm256_undefined_pd(), \ - (double const *)(m), \ - (__v4di)(__m256i)(i), \ - (__v4df)_mm256_cmp_pd(_mm256_setzero_pd(), \ - _mm256_setzero_pd(), \ - _CMP_EQ_OQ), \ - (s))) - -#define _mm_i32gather_ps(m, i, s) \ - ((__m128)__builtin_ia32_gatherd_ps((__v4sf)_mm_undefined_ps(), \ - (float const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ - _mm_setzero_ps()), \ - (s))) - -#define _mm256_i32gather_ps(m, i, s) \ - ((__m256)__builtin_ia32_gatherd_ps256((__v8sf)_mm256_undefined_ps(), \ - (float const *)(m), \ - (__v8si)(__m256i)(i), \ - (__v8sf)_mm256_cmp_ps(_mm256_setzero_ps(), \ - _mm256_setzero_ps(), \ - _CMP_EQ_OQ), \ - (s))) - -#define _mm_i64gather_ps(m, i, s) \ - ((__m128)__builtin_ia32_gatherq_ps((__v4sf)_mm_undefined_ps(), \ - (float const *)(m), \ - (__v2di)(__m128i)(i), \ - (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ - _mm_setzero_ps()), \ - (s))) - -#define _mm256_i64gather_ps(m, i, s) \ - ((__m128)__builtin_ia32_gatherq_ps256((__v4sf)_mm_undefined_ps(), \ - (float const *)(m), \ - (__v4di)(__m256i)(i), \ - (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ - _mm_setzero_ps()), \ - (s))) - -#define _mm_i32gather_epi32(m, i, s) \ - ((__m128i)__builtin_ia32_gatherd_d((__v4si)_mm_undefined_si128(), \ - (int const *)(m), (__v4si)(__m128i)(i), \ - (__v4si)_mm_set1_epi32(-1), (s))) - -#define _mm256_i32gather_epi32(m, i, s) \ - ((__m256i)__builtin_ia32_gatherd_d256((__v8si)_mm256_undefined_si256(), \ - (int const *)(m), (__v8si)(__m256i)(i), \ - (__v8si)_mm256_set1_epi32(-1), (s))) - -#define _mm_i64gather_epi32(m, i, s) \ - ((__m128i)__builtin_ia32_gatherq_d((__v4si)_mm_undefined_si128(), \ - (int const *)(m), (__v2di)(__m128i)(i), \ - (__v4si)_mm_set1_epi32(-1), (s))) - -#define _mm256_i64gather_epi32(m, i, s) \ - ((__m128i)__builtin_ia32_gatherq_d256((__v4si)_mm_undefined_si128(), \ - (int const *)(m), (__v4di)(__m256i)(i), \ - (__v4si)_mm_set1_epi32(-1), (s))) - -#define _mm_i32gather_epi64(m, i, s) \ - ((__m128i)__builtin_ia32_gatherd_q((__v2di)_mm_undefined_si128(), \ - (long long const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v2di)_mm_set1_epi64x(-1), (s))) - -#define _mm256_i32gather_epi64(m, i, s) \ - ((__m256i)__builtin_ia32_gatherd_q256((__v4di)_mm256_undefined_si256(), \ - (long long const *)(m), \ - (__v4si)(__m128i)(i), \ - (__v4di)_mm256_set1_epi64x(-1), (s))) - -#define _mm_i64gather_epi64(m, i, s) \ - ((__m128i)__builtin_ia32_gatherq_q((__v2di)_mm_undefined_si128(), \ - (long long const *)(m), \ - (__v2di)(__m128i)(i), \ - (__v2di)_mm_set1_epi64x(-1), (s))) - -#define _mm256_i64gather_epi64(m, i, s) \ - ((__m256i)__builtin_ia32_gatherq_q256((__v4di)_mm256_undefined_si256(), \ - (long long const *)(m), \ - (__v4di)(__m256i)(i), \ - (__v4di)_mm256_set1_epi64x(-1), (s))) - -#undef __DEFAULT_FN_ATTRS256 -#undef __DEFAULT_FN_ATTRS128 - -#endif /* __AVX2INTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx2intrin.h.blob deleted file mode 100644 index 58751859624358c792de1e8b3ffa68e53884241c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 73308 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 Jntom2e*jsZFkb)w diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h deleted file mode 100644 index a864c1e3..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h +++ /dev/null @@ -1,282 +0,0 @@ -/*===------------ avx512bf16intrin.h - AVX512_BF16 intrinsics --------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512bf16intrin.h> directly; include <immintrin.h> instead." -#endif - -#ifdef __SSE2__ - -#ifndef __AVX512BF16INTRIN_H -#define __AVX512BF16INTRIN_H - -typedef __bf16 __v32bf __attribute__((__vector_size__(64), __aligned__(64))); -typedef __bf16 __m512bh __attribute__((__vector_size__(64), __aligned__(64))); -typedef __bf16 __bfloat16 __attribute__((deprecated("use __bf16 instead"))); - -#define __DEFAULT_FN_ATTRS512 \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512bf16"), \ - __min_vector_width__(512))) -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512bf16"))) - -/// Convert One BF16 Data to One Single Float Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic does not correspond to a specific instruction. -/// -/// \param __A -/// A bfloat data. -/// \returns A float data whose sign field and exponent field keep unchanged, -/// and fraction field is extended to 23 bits. -static __inline__ float __DEFAULT_FN_ATTRS _mm_cvtsbh_ss(__bf16 __A) { - return __builtin_ia32_cvtsbf162ss_32(__A); -} - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [16 x float]. -/// \param __B -/// A 512-bit vector of [16 x float]. -/// \returns A 512-bit vector of [32 x bfloat] whose lower 256 bits come from -/// conversion of __B, and higher 256 bits come from conversion of __A. -static __inline__ __m512bh __DEFAULT_FN_ATTRS512 -_mm512_cvtne2ps_pbh(__m512 __A, __m512 __B) { - return (__m512bh)__builtin_ia32_cvtne2ps2bf16_512((__v16sf) __A, - (__v16sf) __B); -} - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [16 x float]. -/// \param __B -/// A 512-bit vector of [16 x float]. -/// \param __W -/// A 512-bit vector of [32 x bfloat]. -/// \param __U -/// A 32-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A or __B. A 0 means element from __W. -/// \returns A 512-bit vector of [32 x bfloat] whose lower 256 bits come from -/// conversion of __B, and higher 256 bits come from conversion of __A. -static __inline__ __m512bh __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtne2ps_pbh(__m512bh __W, __mmask32 __U, __m512 __A, __m512 __B) { - return (__m512bh)__builtin_ia32_selectpbf_512((__mmask32)__U, - (__v32bf)_mm512_cvtne2ps_pbh(__A, __B), - (__v32bf)__W); -} - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [16 x float]. -/// \param __B -/// A 512-bit vector of [16 x float]. -/// \param __U -/// A 32-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A or __B. A 0 means element is zero. -/// \returns A 512-bit vector of [32 x bfloat] whose lower 256 bits come from -/// conversion of __B, and higher 256 bits come from conversion of __A. -static __inline__ __m512bh __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtne2ps_pbh(__mmask32 __U, __m512 __A, __m512 __B) { - return (__m512bh)__builtin_ia32_selectpbf_512((__mmask32)__U, - (__v32bf)_mm512_cvtne2ps_pbh(__A, __B), - (__v32bf)_mm512_setzero_si512()); -} - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [16 x float]. -/// \returns A 256-bit vector of [16 x bfloat] come from conversion of __A. -static __inline__ __m256bh __DEFAULT_FN_ATTRS512 -_mm512_cvtneps_pbh(__m512 __A) { - return (__m256bh)__builtin_ia32_cvtneps2bf16_512_mask((__v16sf)__A, - (__v16bf)_mm256_undefined_si256(), - (__mmask16)-1); -} - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [16 x float]. -/// \param __W -/// A 256-bit vector of [16 x bfloat]. -/// \param __U -/// A 16-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A. A 0 means element from __W. -/// \returns A 256-bit vector of [16 x bfloat] come from conversion of __A. -static __inline__ __m256bh __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtneps_pbh(__m256bh __W, __mmask16 __U, __m512 __A) { - return (__m256bh)__builtin_ia32_cvtneps2bf16_512_mask((__v16sf)__A, - (__v16bf)__W, - (__mmask16)__U); -} - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [16 x float]. -/// \param __U -/// A 16-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A. A 0 means element is zero. -/// \returns A 256-bit vector of [16 x bfloat] come from conversion of __A. -static __inline__ __m256bh __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtneps_pbh(__mmask16 __U, __m512 __A) { - return (__m256bh)__builtin_ia32_cvtneps2bf16_512_mask((__v16sf)__A, - (__v16bf)_mm256_setzero_si256(), - (__mmask16)__U); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [32 x bfloat]. -/// \param __B -/// A 512-bit vector of [32 x bfloat]. -/// \param __D -/// A 512-bit vector of [16 x float]. -/// \returns A 512-bit vector of [16 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_dpbf16_ps(__m512 __D, __m512bh __A, __m512bh __B) { - return (__m512)__builtin_ia32_dpbf16ps_512((__v16sf) __D, - (__v32bf) __A, - (__v32bf) __B); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [32 x bfloat]. -/// \param __B -/// A 512-bit vector of [32 x bfloat]. -/// \param __D -/// A 512-bit vector of [16 x float]. -/// \param __U -/// A 16-bit mask value specifying what is chosen for each element. -/// A 1 means __A and __B's dot product accumulated with __D. A 0 means __D. -/// \returns A 512-bit vector of [16 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_dpbf16_ps(__m512 __D, __mmask16 __U, __m512bh __A, __m512bh __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_dpbf16_ps(__D, __A, __B), - (__v16sf)__D); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 512-bit vector of [32 x bfloat]. -/// \param __B -/// A 512-bit vector of [32 x bfloat]. -/// \param __D -/// A 512-bit vector of [16 x float]. -/// \param __U -/// A 16-bit mask value specifying what is chosen for each element. -/// A 1 means __A and __B's dot product accumulated with __D. A 0 means 0. -/// \returns A 512-bit vector of [16 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_dpbf16_ps(__mmask16 __U, __m512 __D, __m512bh __A, __m512bh __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_dpbf16_ps(__D, __A, __B), - (__v16sf)_mm512_setzero_si512()); -} - -/// Convert Packed BF16 Data to Packed float Data. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __A -/// A 256-bit vector of [16 x bfloat]. -/// \returns A 512-bit vector of [16 x float] come from conversion of __A -static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_cvtpbh_ps(__m256bh __A) { - return _mm512_castsi512_ps((__m512i)_mm512_slli_epi32( - (__m512i)_mm512_cvtepi16_epi32((__m256i)__A), 16)); -} - -/// Convert Packed BF16 Data to Packed float Data using zeroing mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __U -/// A 16-bit mask. Elements are zeroed out when the corresponding mask -/// bit is not set. -/// \param __A -/// A 256-bit vector of [16 x bfloat]. -/// \returns A 512-bit vector of [16 x float] come from conversion of __A -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtpbh_ps(__mmask16 __U, __m256bh __A) { - return _mm512_castsi512_ps((__m512i)_mm512_slli_epi32( - (__m512i)_mm512_maskz_cvtepi16_epi32((__mmask16)__U, (__m256i)__A), 16)); -} - -/// Convert Packed BF16 Data to Packed float Data using merging mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __S -/// A 512-bit vector of [16 x float]. Elements are copied from __S when -/// the corresponding mask bit is not set. -/// \param __U -/// A 16-bit mask. -/// \param __A -/// A 256-bit vector of [16 x bfloat]. -/// \returns A 512-bit vector of [16 x float] come from conversion of __A -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpbh_ps(__m512 __S, __mmask16 __U, __m256bh __A) { - return _mm512_castsi512_ps((__m512i)_mm512_mask_slli_epi32( - (__m512i)__S, (__mmask16)__U, - (__m512i)_mm512_cvtepi16_epi32((__m256i)__A), 16)); -} - -#undef __DEFAULT_FN_ATTRS -#undef __DEFAULT_FN_ATTRS512 - -#endif -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bf16intrin.h.blob deleted file mode 100644 index 76c3cd7a249b47667f0aa837b57a9220049409db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24894 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h deleted file mode 100644 index d4411d15..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h +++ /dev/null @@ -1,83 +0,0 @@ -/*===------------- avx512bitalgintrin.h - BITALG intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512bitalgintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512BITALGINTRIN_H -#define __AVX512BITALGINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512bitalg"), __min_vector_width__(512))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_popcnt_epi16(__m512i __A) -{ - return (__m512i) __builtin_ia32_vpopcntw_512((__v32hi) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_popcnt_epi16(__m512i __A, __mmask32 __U, __m512i __B) -{ - return (__m512i) __builtin_ia32_selectw_512((__mmask32) __U, - (__v32hi) _mm512_popcnt_epi16(__B), - (__v32hi) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_popcnt_epi16(__mmask32 __U, __m512i __B) -{ - return _mm512_mask_popcnt_epi16((__m512i) _mm512_setzero_si512(), - __U, - __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_popcnt_epi8(__m512i __A) -{ - return (__m512i) __builtin_ia32_vpopcntb_512((__v64qi) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_popcnt_epi8(__m512i __A, __mmask64 __U, __m512i __B) -{ - return (__m512i) __builtin_ia32_selectb_512((__mmask64) __U, - (__v64qi) _mm512_popcnt_epi8(__B), - (__v64qi) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_popcnt_epi8(__mmask64 __U, __m512i __B) -{ - return _mm512_mask_popcnt_epi8((__m512i) _mm512_setzero_si512(), - __U, - __B); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_mm512_mask_bitshuffle_epi64_mask(__mmask64 __U, __m512i __A, __m512i __B) -{ - return (__mmask64) __builtin_ia32_vpshufbitqmb512_mask((__v64qi) __A, - (__v64qi) __B, - __U); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_mm512_bitshuffle_epi64_mask(__m512i __A, __m512i __B) -{ - return _mm512_mask_bitshuffle_epi64_mask((__mmask64) -1, - __A, - __B); -} - - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bitalgintrin.h.blob deleted file mode 100644 index a975c01fab181dc64a02358dbcc085e485f22346..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15570 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h deleted file mode 100644 index aaeb9364..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h +++ /dev/null @@ -1,2024 +0,0 @@ -/*===------------- avx512bwintrin.h - AVX512BW intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512bwintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512BWINTRIN_H -#define __AVX512BWINTRIN_H - -typedef unsigned int __mmask32; -typedef unsigned long long __mmask64; - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512bw"), __min_vector_width__(512))) -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512bw"))) - -static __inline __mmask32 __DEFAULT_FN_ATTRS -_knot_mask32(__mmask32 __M) -{ - return __builtin_ia32_knotsi(__M); -} - -static __inline __mmask64 __DEFAULT_FN_ATTRS -_knot_mask64(__mmask64 __M) -{ - return __builtin_ia32_knotdi(__M); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_kand_mask32(__mmask32 __A, __mmask32 __B) -{ - return (__mmask32)__builtin_ia32_kandsi((__mmask32)__A, (__mmask32)__B); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_kand_mask64(__mmask64 __A, __mmask64 __B) -{ - return (__mmask64)__builtin_ia32_kanddi((__mmask64)__A, (__mmask64)__B); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_kandn_mask32(__mmask32 __A, __mmask32 __B) -{ - return (__mmask32)__builtin_ia32_kandnsi((__mmask32)__A, (__mmask32)__B); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_kandn_mask64(__mmask64 __A, __mmask64 __B) -{ - return (__mmask64)__builtin_ia32_kandndi((__mmask64)__A, (__mmask64)__B); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_kor_mask32(__mmask32 __A, __mmask32 __B) -{ - return (__mmask32)__builtin_ia32_korsi((__mmask32)__A, (__mmask32)__B); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_kor_mask64(__mmask64 __A, __mmask64 __B) -{ - return (__mmask64)__builtin_ia32_kordi((__mmask64)__A, (__mmask64)__B); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_kxnor_mask32(__mmask32 __A, __mmask32 __B) -{ - return (__mmask32)__builtin_ia32_kxnorsi((__mmask32)__A, (__mmask32)__B); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_kxnor_mask64(__mmask64 __A, __mmask64 __B) -{ - return (__mmask64)__builtin_ia32_kxnordi((__mmask64)__A, (__mmask64)__B); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_kxor_mask32(__mmask32 __A, __mmask32 __B) -{ - return (__mmask32)__builtin_ia32_kxorsi((__mmask32)__A, (__mmask32)__B); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_kxor_mask64(__mmask64 __A, __mmask64 __B) -{ - return (__mmask64)__builtin_ia32_kxordi((__mmask64)__A, (__mmask64)__B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortestc_mask32_u8(__mmask32 __A, __mmask32 __B) -{ - return (unsigned char)__builtin_ia32_kortestcsi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortestz_mask32_u8(__mmask32 __A, __mmask32 __B) -{ - return (unsigned char)__builtin_ia32_kortestzsi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortest_mask32_u8(__mmask32 __A, __mmask32 __B, unsigned char *__C) { - *__C = (unsigned char)__builtin_ia32_kortestcsi(__A, __B); - return (unsigned char)__builtin_ia32_kortestzsi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortestc_mask64_u8(__mmask64 __A, __mmask64 __B) -{ - return (unsigned char)__builtin_ia32_kortestcdi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortestz_mask64_u8(__mmask64 __A, __mmask64 __B) -{ - return (unsigned char)__builtin_ia32_kortestzdi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortest_mask64_u8(__mmask64 __A, __mmask64 __B, unsigned char *__C) { - *__C = (unsigned char)__builtin_ia32_kortestcdi(__A, __B); - return (unsigned char)__builtin_ia32_kortestzdi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktestc_mask32_u8(__mmask32 __A, __mmask32 __B) -{ - return (unsigned char)__builtin_ia32_ktestcsi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktestz_mask32_u8(__mmask32 __A, __mmask32 __B) -{ - return (unsigned char)__builtin_ia32_ktestzsi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktest_mask32_u8(__mmask32 __A, __mmask32 __B, unsigned char *__C) { - *__C = (unsigned char)__builtin_ia32_ktestcsi(__A, __B); - return (unsigned char)__builtin_ia32_ktestzsi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktestc_mask64_u8(__mmask64 __A, __mmask64 __B) -{ - return (unsigned char)__builtin_ia32_ktestcdi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktestz_mask64_u8(__mmask64 __A, __mmask64 __B) -{ - return (unsigned char)__builtin_ia32_ktestzdi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktest_mask64_u8(__mmask64 __A, __mmask64 __B, unsigned char *__C) { - *__C = (unsigned char)__builtin_ia32_ktestcdi(__A, __B); - return (unsigned char)__builtin_ia32_ktestzdi(__A, __B); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_kadd_mask32(__mmask32 __A, __mmask32 __B) -{ - return (__mmask32)__builtin_ia32_kaddsi((__mmask32)__A, (__mmask32)__B); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_kadd_mask64(__mmask64 __A, __mmask64 __B) -{ - return (__mmask64)__builtin_ia32_kadddi((__mmask64)__A, (__mmask64)__B); -} - -#define _kshiftli_mask32(A, I) \ - ((__mmask32)__builtin_ia32_kshiftlisi((__mmask32)(A), (unsigned int)(I))) - -#define _kshiftri_mask32(A, I) \ - ((__mmask32)__builtin_ia32_kshiftrisi((__mmask32)(A), (unsigned int)(I))) - -#define _kshiftli_mask64(A, I) \ - ((__mmask64)__builtin_ia32_kshiftlidi((__mmask64)(A), (unsigned int)(I))) - -#define _kshiftri_mask64(A, I) \ - ((__mmask64)__builtin_ia32_kshiftridi((__mmask64)(A), (unsigned int)(I))) - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_cvtmask32_u32(__mmask32 __A) { - return (unsigned int)__builtin_ia32_kmovd((__mmask32)__A); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_cvtmask64_u64(__mmask64 __A) { - return (unsigned long long)__builtin_ia32_kmovq((__mmask64)__A); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_cvtu32_mask32(unsigned int __A) { - return (__mmask32)__builtin_ia32_kmovd((__mmask32)__A); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_cvtu64_mask64(unsigned long long __A) { - return (__mmask64)__builtin_ia32_kmovq((__mmask64)__A); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_load_mask32(__mmask32 *__A) { - return (__mmask32)__builtin_ia32_kmovd(*(__mmask32 *)__A); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_load_mask64(__mmask64 *__A) { - return (__mmask64)__builtin_ia32_kmovq(*(__mmask64 *)__A); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_store_mask32(__mmask32 *__A, __mmask32 __B) { - *(__mmask32 *)__A = __builtin_ia32_kmovd((__mmask32)__B); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_store_mask64(__mmask64 *__A, __mmask64 __B) { - *(__mmask64 *)__A = __builtin_ia32_kmovq((__mmask64)__B); -} - -/* Integer compare */ - -#define _mm512_cmp_epi8_mask(a, b, p) \ - ((__mmask64)__builtin_ia32_cmpb512_mask((__v64qi)(__m512i)(a), \ - (__v64qi)(__m512i)(b), (int)(p), \ - (__mmask64)-1)) - -#define _mm512_mask_cmp_epi8_mask(m, a, b, p) \ - ((__mmask64)__builtin_ia32_cmpb512_mask((__v64qi)(__m512i)(a), \ - (__v64qi)(__m512i)(b), (int)(p), \ - (__mmask64)(m))) - -#define _mm512_cmp_epu8_mask(a, b, p) \ - ((__mmask64)__builtin_ia32_ucmpb512_mask((__v64qi)(__m512i)(a), \ - (__v64qi)(__m512i)(b), (int)(p), \ - (__mmask64)-1)) - -#define _mm512_mask_cmp_epu8_mask(m, a, b, p) \ - ((__mmask64)__builtin_ia32_ucmpb512_mask((__v64qi)(__m512i)(a), \ - (__v64qi)(__m512i)(b), (int)(p), \ - (__mmask64)(m))) - -#define _mm512_cmp_epi16_mask(a, b, p) \ - ((__mmask32)__builtin_ia32_cmpw512_mask((__v32hi)(__m512i)(a), \ - (__v32hi)(__m512i)(b), (int)(p), \ - (__mmask32)-1)) - -#define _mm512_mask_cmp_epi16_mask(m, a, b, p) \ - ((__mmask32)__builtin_ia32_cmpw512_mask((__v32hi)(__m512i)(a), \ - (__v32hi)(__m512i)(b), (int)(p), \ - (__mmask32)(m))) - -#define _mm512_cmp_epu16_mask(a, b, p) \ - ((__mmask32)__builtin_ia32_ucmpw512_mask((__v32hi)(__m512i)(a), \ - (__v32hi)(__m512i)(b), (int)(p), \ - (__mmask32)-1)) - -#define _mm512_mask_cmp_epu16_mask(m, a, b, p) \ - ((__mmask32)__builtin_ia32_ucmpw512_mask((__v32hi)(__m512i)(a), \ - (__v32hi)(__m512i)(b), (int)(p), \ - (__mmask32)(m))) - -#define _mm512_cmpeq_epi8_mask(A, B) \ - _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_EQ) -#define _mm512_mask_cmpeq_epi8_mask(k, A, B) \ - _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm512_cmpge_epi8_mask(A, B) \ - _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_GE) -#define _mm512_mask_cmpge_epi8_mask(k, A, B) \ - _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm512_cmpgt_epi8_mask(A, B) \ - _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_GT) -#define _mm512_mask_cmpgt_epi8_mask(k, A, B) \ - _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm512_cmple_epi8_mask(A, B) \ - _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_LE) -#define _mm512_mask_cmple_epi8_mask(k, A, B) \ - _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm512_cmplt_epi8_mask(A, B) \ - _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_LT) -#define _mm512_mask_cmplt_epi8_mask(k, A, B) \ - _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm512_cmpneq_epi8_mask(A, B) \ - _mm512_cmp_epi8_mask((A), (B), _MM_CMPINT_NE) -#define _mm512_mask_cmpneq_epi8_mask(k, A, B) \ - _mm512_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm512_cmpeq_epu8_mask(A, B) \ - _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_EQ) -#define _mm512_mask_cmpeq_epu8_mask(k, A, B) \ - _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm512_cmpge_epu8_mask(A, B) \ - _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_GE) -#define _mm512_mask_cmpge_epu8_mask(k, A, B) \ - _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm512_cmpgt_epu8_mask(A, B) \ - _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_GT) -#define _mm512_mask_cmpgt_epu8_mask(k, A, B) \ - _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm512_cmple_epu8_mask(A, B) \ - _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_LE) -#define _mm512_mask_cmple_epu8_mask(k, A, B) \ - _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm512_cmplt_epu8_mask(A, B) \ - _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_LT) -#define _mm512_mask_cmplt_epu8_mask(k, A, B) \ - _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm512_cmpneq_epu8_mask(A, B) \ - _mm512_cmp_epu8_mask((A), (B), _MM_CMPINT_NE) -#define _mm512_mask_cmpneq_epu8_mask(k, A, B) \ - _mm512_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm512_cmpeq_epi16_mask(A, B) \ - _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_EQ) -#define _mm512_mask_cmpeq_epi16_mask(k, A, B) \ - _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm512_cmpge_epi16_mask(A, B) \ - _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_GE) -#define _mm512_mask_cmpge_epi16_mask(k, A, B) \ - _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm512_cmpgt_epi16_mask(A, B) \ - _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_GT) -#define _mm512_mask_cmpgt_epi16_mask(k, A, B) \ - _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm512_cmple_epi16_mask(A, B) \ - _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_LE) -#define _mm512_mask_cmple_epi16_mask(k, A, B) \ - _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm512_cmplt_epi16_mask(A, B) \ - _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_LT) -#define _mm512_mask_cmplt_epi16_mask(k, A, B) \ - _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm512_cmpneq_epi16_mask(A, B) \ - _mm512_cmp_epi16_mask((A), (B), _MM_CMPINT_NE) -#define _mm512_mask_cmpneq_epi16_mask(k, A, B) \ - _mm512_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm512_cmpeq_epu16_mask(A, B) \ - _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_EQ) -#define _mm512_mask_cmpeq_epu16_mask(k, A, B) \ - _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm512_cmpge_epu16_mask(A, B) \ - _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_GE) -#define _mm512_mask_cmpge_epu16_mask(k, A, B) \ - _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm512_cmpgt_epu16_mask(A, B) \ - _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_GT) -#define _mm512_mask_cmpgt_epu16_mask(k, A, B) \ - _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm512_cmple_epu16_mask(A, B) \ - _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_LE) -#define _mm512_mask_cmple_epu16_mask(k, A, B) \ - _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm512_cmplt_epu16_mask(A, B) \ - _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_LT) -#define _mm512_mask_cmplt_epu16_mask(k, A, B) \ - _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm512_cmpneq_epu16_mask(A, B) \ - _mm512_cmp_epu16_mask((A), (B), _MM_CMPINT_NE) -#define _mm512_mask_cmpneq_epu16_mask(k, A, B) \ - _mm512_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_NE) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_add_epi8 (__m512i __A, __m512i __B) { - return (__m512i) ((__v64qu) __A + (__v64qu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_add_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_add_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_add_epi8(__mmask64 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_add_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sub_epi8 (__m512i __A, __m512i __B) { - return (__m512i) ((__v64qu) __A - (__v64qu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sub_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_sub_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sub_epi8(__mmask64 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_sub_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_add_epi16 (__m512i __A, __m512i __B) { - return (__m512i) ((__v32hu) __A + (__v32hu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_add_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_add_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_add_epi16(__mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_add_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sub_epi16 (__m512i __A, __m512i __B) { - return (__m512i) ((__v32hu) __A - (__v32hu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sub_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_sub_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sub_epi16(__mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_sub_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mullo_epi16 (__m512i __A, __m512i __B) { - return (__m512i) ((__v32hu) __A * (__v32hu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mullo_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_mullo_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mullo_epi16(__mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_mullo_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_blend_epi8 (__mmask64 __U, __m512i __A, __m512i __W) -{ - return (__m512i) __builtin_ia32_selectb_512 ((__mmask64) __U, - (__v64qi) __W, - (__v64qi) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_blend_epi16 (__mmask32 __U, __m512i __A, __m512i __W) -{ - return (__m512i) __builtin_ia32_selectw_512 ((__mmask32) __U, - (__v32hi) __W, - (__v32hi) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_abs_epi8 (__m512i __A) -{ - return (__m512i)__builtin_elementwise_abs((__v64qs)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_abs_epi8 (__m512i __W, __mmask64 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_abs_epi8(__A), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_abs_epi8 (__mmask64 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_abs_epi8(__A), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_abs_epi16 (__m512i __A) -{ - return (__m512i)__builtin_elementwise_abs((__v32hi)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_abs_epi16 (__m512i __W, __mmask32 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_abs_epi16(__A), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_abs_epi16 (__mmask32 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_abs_epi16(__A), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_packs_epi32(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_packssdw512((__v16si)__A, (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_packs_epi32(__mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_packs_epi32(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_packs_epi32(__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_packs_epi32(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_packs_epi16(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_packsswb512((__v32hi)__A, (__v32hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_packs_epi16(__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_packs_epi16(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_packs_epi16(__mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_packs_epi16(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_packus_epi32(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_packusdw512((__v16si) __A, (__v16si) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_packus_epi32(__mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_packus_epi32(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_packus_epi32(__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_packus_epi32(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_packus_epi16(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_packuswb512((__v32hi) __A, (__v32hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_packus_epi16(__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_packus_epi16(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_packus_epi16(__mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_packus_epi16(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_adds_epi8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_add_sat((__v64qs)__A, (__v64qs)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_adds_epi8 (__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_adds_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_adds_epi8 (__mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_adds_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_adds_epi16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_add_sat((__v32hi)__A, (__v32hi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_adds_epi16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_adds_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_adds_epi16 (__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_adds_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_adds_epu8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_add_sat((__v64qu) __A, (__v64qu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_adds_epu8 (__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_adds_epu8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_adds_epu8 (__mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_adds_epu8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_adds_epu16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_add_sat((__v32hu) __A, (__v32hu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_adds_epu16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_adds_epu16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_adds_epu16 (__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_adds_epu16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_avg_epu8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_pavgb512((__v64qi)__A, (__v64qi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_avg_epu8 (__m512i __W, __mmask64 __U, __m512i __A, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_avg_epu8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_avg_epu8 (__mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_avg_epu8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_avg_epu16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_pavgw512((__v32hi)__A, (__v32hi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_avg_epu16 (__m512i __W, __mmask32 __U, __m512i __A, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_avg_epu16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_avg_epu16 (__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_avg_epu16(__A, __B), - (__v32hi) _mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_max_epi8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_max((__v64qs) __A, (__v64qs) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_epi8 (__mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_max_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_max_epi8 (__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_max_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_max_epi16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_max((__v32hi) __A, (__v32hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_epi16 (__mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_max_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_max_epi16 (__m512i __W, __mmask32 __M, __m512i __A, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_max_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_max_epu8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_max((__v64qu)__A, (__v64qu)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_epu8 (__mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_max_epu8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_max_epu8 (__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_max_epu8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_max_epu16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_max((__v32hu)__A, (__v32hu)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_epu16 (__mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_max_epu16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_max_epu16 (__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_max_epu16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_min_epi8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_min((__v64qs) __A, (__v64qs) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_epi8 (__mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_min_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_min_epi8 (__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_min_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_min_epi16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_min((__v32hi) __A, (__v32hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_epi16 (__mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_min_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_min_epi16 (__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_min_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_min_epu8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_min((__v64qu)__A, (__v64qu)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_epu8 (__mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_min_epu8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_min_epu8 (__m512i __W, __mmask64 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_min_epu8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_min_epu16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_min((__v32hu)__A, (__v32hu)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_epu16 (__mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_min_epu16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_min_epu16 (__m512i __W, __mmask32 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_min_epu16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_shuffle_epi8(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_pshufb512((__v64qi)__A,(__v64qi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_shuffle_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_shuffle_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_shuffle_epi8(__mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_shuffle_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_subs_epi8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_sub_sat((__v64qs)__A, (__v64qs)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_subs_epi8 (__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_subs_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_subs_epi8 (__mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_subs_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_subs_epi16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_sub_sat((__v32hi)__A, (__v32hi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_subs_epi16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_subs_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_subs_epi16 (__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_subs_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_subs_epu8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_sub_sat((__v64qu) __A, (__v64qu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_subs_epu8 (__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_subs_epu8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_subs_epu8 (__mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_subs_epu8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_subs_epu16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_sub_sat((__v32hu) __A, (__v32hu) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_subs_epu16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_subs_epu16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_subs_epu16 (__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_subs_epu16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_permutex2var_epi16(__m512i __A, __m512i __I, __m512i __B) -{ - return (__m512i)__builtin_ia32_vpermi2varhi512((__v32hi)__A, (__v32hi)__I, - (__v32hi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_permutex2var_epi16(__m512i __A, __mmask32 __U, __m512i __I, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512(__U, - (__v32hi)_mm512_permutex2var_epi16(__A, __I, __B), - (__v32hi)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask2_permutex2var_epi16(__m512i __A, __m512i __I, __mmask32 __U, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512(__U, - (__v32hi)_mm512_permutex2var_epi16(__A, __I, __B), - (__v32hi)__I); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutex2var_epi16(__mmask32 __U, __m512i __A, __m512i __I, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512(__U, - (__v32hi)_mm512_permutex2var_epi16(__A, __I, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mulhrs_epi16(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_pmulhrsw512((__v32hi)__A, (__v32hi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mulhrs_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_mulhrs_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mulhrs_epi16(__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_mulhrs_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mulhi_epi16(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_pmulhw512((__v32hi) __A, (__v32hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mulhi_epi16(__m512i __W, __mmask32 __U, __m512i __A, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_mulhi_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mulhi_epi16(__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_mulhi_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mulhi_epu16(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_pmulhuw512((__v32hi) __A, (__v32hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mulhi_epu16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_mulhi_epu16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mulhi_epu16 (__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_mulhi_epu16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maddubs_epi16(__m512i __X, __m512i __Y) { - return (__m512i)__builtin_ia32_pmaddubsw512((__v64qi)__X, (__v64qi)__Y); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_maddubs_epi16(__m512i __W, __mmask32 __U, __m512i __X, - __m512i __Y) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32) __U, - (__v32hi)_mm512_maddubs_epi16(__X, __Y), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_maddubs_epi16(__mmask32 __U, __m512i __X, __m512i __Y) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32) __U, - (__v32hi)_mm512_maddubs_epi16(__X, __Y), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_madd_epi16(__m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_pmaddwd512((__v32hi)__A, (__v32hi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_madd_epi16(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_madd_epi16(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_madd_epi16(__mmask16 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_madd_epi16(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtsepi16_epi8 (__m512i __A) { - return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A, - (__v32qi)_mm256_setzero_si256(), - (__mmask32) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A) { - return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A, - (__v32qi)__O, - __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtsepi16_epi8 (__mmask32 __M, __m512i __A) { - return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A, - (__v32qi) _mm256_setzero_si256(), - __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtusepi16_epi8 (__m512i __A) { - return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A, - (__v32qi) _mm256_setzero_si256(), - (__mmask32) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A) { - return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A, - (__v32qi) __O, - __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtusepi16_epi8 (__mmask32 __M, __m512i __A) { - return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A, - (__v32qi) _mm256_setzero_si256(), - __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi16_epi8 (__m512i __A) { - return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A, - (__v32qi) _mm256_undefined_si256(), - (__mmask32) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A) { - return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A, - (__v32qi) __O, - __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi16_epi8 (__mmask32 __M, __m512i __A) { - return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A, - (__v32qi) _mm256_setzero_si256(), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A) -{ - __builtin_ia32_pmovwb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A) -{ - __builtin_ia32_pmovswb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A) -{ - __builtin_ia32_pmovuswb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_unpackhi_epi8(__m512i __A, __m512i __B) { - return (__m512i)__builtin_shufflevector((__v64qi)__A, (__v64qi)__B, - 8, 64+8, 9, 64+9, - 10, 64+10, 11, 64+11, - 12, 64+12, 13, 64+13, - 14, 64+14, 15, 64+15, - 24, 64+24, 25, 64+25, - 26, 64+26, 27, 64+27, - 28, 64+28, 29, 64+29, - 30, 64+30, 31, 64+31, - 40, 64+40, 41, 64+41, - 42, 64+42, 43, 64+43, - 44, 64+44, 45, 64+45, - 46, 64+46, 47, 64+47, - 56, 64+56, 57, 64+57, - 58, 64+58, 59, 64+59, - 60, 64+60, 61, 64+61, - 62, 64+62, 63, 64+63); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_unpackhi_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_unpackhi_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpackhi_epi8(__mmask64 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_unpackhi_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_unpackhi_epi16(__m512i __A, __m512i __B) { - return (__m512i)__builtin_shufflevector((__v32hi)__A, (__v32hi)__B, - 4, 32+4, 5, 32+5, - 6, 32+6, 7, 32+7, - 12, 32+12, 13, 32+13, - 14, 32+14, 15, 32+15, - 20, 32+20, 21, 32+21, - 22, 32+22, 23, 32+23, - 28, 32+28, 29, 32+29, - 30, 32+30, 31, 32+31); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_unpackhi_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_unpackhi_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpackhi_epi16(__mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_unpackhi_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_unpacklo_epi8(__m512i __A, __m512i __B) { - return (__m512i)__builtin_shufflevector((__v64qi)__A, (__v64qi)__B, - 0, 64+0, 1, 64+1, - 2, 64+2, 3, 64+3, - 4, 64+4, 5, 64+5, - 6, 64+6, 7, 64+7, - 16, 64+16, 17, 64+17, - 18, 64+18, 19, 64+19, - 20, 64+20, 21, 64+21, - 22, 64+22, 23, 64+23, - 32, 64+32, 33, 64+33, - 34, 64+34, 35, 64+35, - 36, 64+36, 37, 64+37, - 38, 64+38, 39, 64+39, - 48, 64+48, 49, 64+49, - 50, 64+50, 51, 64+51, - 52, 64+52, 53, 64+53, - 54, 64+54, 55, 64+55); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_unpacklo_epi8(__m512i __W, __mmask64 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_unpacklo_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpacklo_epi8(__mmask64 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__U, - (__v64qi)_mm512_unpacklo_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_unpacklo_epi16(__m512i __A, __m512i __B) { - return (__m512i)__builtin_shufflevector((__v32hi)__A, (__v32hi)__B, - 0, 32+0, 1, 32+1, - 2, 32+2, 3, 32+3, - 8, 32+8, 9, 32+9, - 10, 32+10, 11, 32+11, - 16, 32+16, 17, 32+17, - 18, 32+18, 19, 32+19, - 24, 32+24, 25, 32+25, - 26, 32+26, 27, 32+27); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_unpacklo_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_unpacklo_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpacklo_epi16(__mmask32 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_unpacklo_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi8_epi16(__m256i __A) -{ - /* This function always performs a signed extension, but __v32qi is a char - which may be signed or unsigned, so use __v32qs. */ - return (__m512i)__builtin_convertvector((__v32qs)__A, __v32hi); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi8_epi16(__m512i __W, __mmask32 __U, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_cvtepi8_epi16(__A), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi8_epi16(__mmask32 __U, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_cvtepi8_epi16(__A), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepu8_epi16(__m256i __A) -{ - return (__m512i)__builtin_convertvector((__v32qu)__A, __v32hi); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu8_epi16(__m512i __W, __mmask32 __U, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_cvtepu8_epi16(__A), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu8_epi16(__mmask32 __U, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_cvtepu8_epi16(__A), - (__v32hi)_mm512_setzero_si512()); -} - - -#define _mm512_shufflehi_epi16(A, imm) \ - ((__m512i)__builtin_ia32_pshufhw512((__v32hi)(__m512i)(A), (int)(imm))) - -#define _mm512_mask_shufflehi_epi16(W, U, A, imm) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_shufflehi_epi16((A), \ - (imm)), \ - (__v32hi)(__m512i)(W))) - -#define _mm512_maskz_shufflehi_epi16(U, A, imm) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_shufflehi_epi16((A), \ - (imm)), \ - (__v32hi)_mm512_setzero_si512())) - -#define _mm512_shufflelo_epi16(A, imm) \ - ((__m512i)__builtin_ia32_pshuflw512((__v32hi)(__m512i)(A), (int)(imm))) - - -#define _mm512_mask_shufflelo_epi16(W, U, A, imm) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_shufflelo_epi16((A), \ - (imm)), \ - (__v32hi)(__m512i)(W))) - - -#define _mm512_maskz_shufflelo_epi16(U, A, imm) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_shufflelo_epi16((A), \ - (imm)), \ - (__v32hi)_mm512_setzero_si512())) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sllv_epi16(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_psllv32hi((__v32hi) __A, (__v32hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sllv_epi16 (__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_sllv_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sllv_epi16(__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_sllv_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sll_epi16(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_psllw512((__v32hi) __A, (__v8hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sll_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_sll_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sll_epi16(__mmask32 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_sll_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_slli_epi16(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_psllwi512((__v32hi)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_slli_epi16(__m512i __W, __mmask32 __U, __m512i __A, - unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_slli_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_slli_epi16(__mmask32 __U, __m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_slli_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -#define _mm512_bslli_epi128(a, imm) \ - ((__m512i)__builtin_ia32_pslldqi512_byteshift((__v8di)(__m512i)(a), (int)(imm))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srlv_epi16(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_psrlv32hi((__v32hi)__A, (__v32hi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srlv_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srlv_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srlv_epi16(__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srlv_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srav_epi16(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_psrav32hi((__v32hi)__A, (__v32hi)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srav_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srav_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srav_epi16(__mmask32 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srav_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sra_epi16(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_psraw512((__v32hi) __A, (__v8hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sra_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_sra_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sra_epi16(__mmask32 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_sra_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srai_epi16(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_psrawi512((__v32hi)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srai_epi16(__m512i __W, __mmask32 __U, __m512i __A, - unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srai_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srai_epi16(__mmask32 __U, __m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srai_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srl_epi16(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_psrlw512((__v32hi) __A, (__v8hi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srl_epi16(__m512i __W, __mmask32 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srl_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srl_epi16(__mmask32 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srl_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srli_epi16(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_psrlwi512((__v32hi)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srli_epi16(__m512i __W, __mmask32 __U, __m512i __A, - unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srli_epi16(__A, __B), - (__v32hi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srli_epi16(__mmask32 __U, __m512i __A, int __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__U, - (__v32hi)_mm512_srli_epi16(__A, (unsigned int)__B), - (__v32hi)_mm512_setzero_si512()); -} - -#define _mm512_bsrli_epi128(a, imm) \ - ((__m512i)__builtin_ia32_psrldqi512_byteshift((__v8di)(__m512i)(a), (int)(imm))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mov_epi16 (__m512i __W, __mmask32 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_selectw_512 ((__mmask32) __U, - (__v32hi) __A, - (__v32hi) __W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mov_epi16 (__mmask32 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_selectw_512 ((__mmask32) __U, - (__v32hi) __A, - (__v32hi) _mm512_setzero_si512 ()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mov_epi8 (__m512i __W, __mmask64 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_selectb_512 ((__mmask64) __U, - (__v64qi) __A, - (__v64qi) __W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mov_epi8 (__mmask64 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_selectb_512 ((__mmask64) __U, - (__v64qi) __A, - (__v64qi) _mm512_setzero_si512 ()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_set1_epi8 (__m512i __O, __mmask64 __M, char __A) -{ - return (__m512i) __builtin_ia32_selectb_512(__M, - (__v64qi)_mm512_set1_epi8(__A), - (__v64qi) __O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_set1_epi8 (__mmask64 __M, char __A) -{ - return (__m512i) __builtin_ia32_selectb_512(__M, - (__v64qi) _mm512_set1_epi8(__A), - (__v64qi) _mm512_setzero_si512()); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS -_mm512_kunpackd (__mmask64 __A, __mmask64 __B) -{ - return (__mmask64) __builtin_ia32_kunpckdi ((__mmask64) __A, - (__mmask64) __B); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS -_mm512_kunpackw (__mmask32 __A, __mmask32 __B) -{ - return (__mmask32) __builtin_ia32_kunpcksi ((__mmask32) __A, - (__mmask32) __B); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_loadu_epi16 (void const *__P) -{ - struct __loadu_epi16 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi16*)__P)->__v; -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_loadu_epi16 (__m512i __W, __mmask32 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_loaddquhi512_mask ((const __v32hi *) __P, - (__v32hi) __W, - (__mmask32) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_loadu_epi16 (__mmask32 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_loaddquhi512_mask ((const __v32hi *) __P, - (__v32hi) - _mm512_setzero_si512 (), - (__mmask32) __U); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_loadu_epi8 (void const *__P) -{ - struct __loadu_epi8 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi8*)__P)->__v; -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_loadu_epi8 (__m512i __W, __mmask64 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_loaddquqi512_mask ((const __v64qi *) __P, - (__v64qi) __W, - (__mmask64) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_loadu_epi8 (__mmask64 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_loaddquqi512_mask ((const __v64qi *) __P, - (__v64qi) - _mm512_setzero_si512 (), - (__mmask64) __U); -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_storeu_epi16 (void *__P, __m512i __A) -{ - struct __storeu_epi16 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi16*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_storeu_epi16 (void *__P, __mmask32 __U, __m512i __A) -{ - __builtin_ia32_storedquhi512_mask ((__v32hi *) __P, - (__v32hi) __A, - (__mmask32) __U); -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_storeu_epi8 (void *__P, __m512i __A) -{ - struct __storeu_epi8 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi8*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_storeu_epi8 (void *__P, __mmask64 __U, __m512i __A) -{ - __builtin_ia32_storedquqi512_mask ((__v64qi *) __P, - (__v64qi) __A, - (__mmask64) __U); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 -_mm512_test_epi8_mask (__m512i __A, __m512i __B) -{ - return _mm512_cmpneq_epi8_mask (_mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 -_mm512_mask_test_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_cmpneq_epi8_mask (__U, _mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 -_mm512_test_epi16_mask (__m512i __A, __m512i __B) -{ - return _mm512_cmpneq_epi16_mask (_mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 -_mm512_mask_test_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_cmpneq_epi16_mask (__U, _mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 -_mm512_testn_epi8_mask (__m512i __A, __m512i __B) -{ - return _mm512_cmpeq_epi8_mask (_mm512_and_epi32 (__A, __B), _mm512_setzero_si512()); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 -_mm512_mask_testn_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_cmpeq_epi8_mask (__U, _mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 -_mm512_testn_epi16_mask (__m512i __A, __m512i __B) -{ - return _mm512_cmpeq_epi16_mask (_mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 -_mm512_mask_testn_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_cmpeq_epi16_mask (__U, _mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask64 __DEFAULT_FN_ATTRS512 -_mm512_movepi8_mask (__m512i __A) -{ - return (__mmask64) __builtin_ia32_cvtb2mask512 ((__v64qi) __A); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS512 -_mm512_movepi16_mask (__m512i __A) -{ - return (__mmask32) __builtin_ia32_cvtw2mask512 ((__v32hi) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_movm_epi8 (__mmask64 __A) -{ - return (__m512i) __builtin_ia32_cvtmask2b512 (__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_movm_epi16 (__mmask32 __A) -{ - return (__m512i) __builtin_ia32_cvtmask2w512 (__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcastb_epi8 (__m128i __A) -{ - return (__m512i)__builtin_shufflevector((__v16qi) __A, (__v16qi) __A, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcastb_epi8 (__m512i __O, __mmask64 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectb_512(__M, - (__v64qi) _mm512_broadcastb_epi8(__A), - (__v64qi) __O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcastb_epi8 (__mmask64 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectb_512(__M, - (__v64qi) _mm512_broadcastb_epi8(__A), - (__v64qi) _mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_set1_epi16 (__m512i __O, __mmask32 __M, short __A) -{ - return (__m512i) __builtin_ia32_selectw_512(__M, - (__v32hi) _mm512_set1_epi16(__A), - (__v32hi) __O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_set1_epi16 (__mmask32 __M, short __A) -{ - return (__m512i) __builtin_ia32_selectw_512(__M, - (__v32hi) _mm512_set1_epi16(__A), - (__v32hi) _mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcastw_epi16 (__m128i __A) -{ - return (__m512i)__builtin_shufflevector((__v8hi) __A, (__v8hi) __A, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcastw_epi16 (__m512i __O, __mmask32 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectw_512(__M, - (__v32hi) _mm512_broadcastw_epi16(__A), - (__v32hi) __O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcastw_epi16 (__mmask32 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectw_512(__M, - (__v32hi) _mm512_broadcastw_epi16(__A), - (__v32hi) _mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_permutexvar_epi16 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_permvarhi512((__v32hi)__B, (__v32hi)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutexvar_epi16 (__mmask32 __M, __m512i __A, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_permutexvar_epi16(__A, __B), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_permutexvar_epi16 (__m512i __W, __mmask32 __M, __m512i __A, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectw_512((__mmask32)__M, - (__v32hi)_mm512_permutexvar_epi16(__A, __B), - (__v32hi)__W); -} - -#define _mm512_alignr_epi8(A, B, N) \ - ((__m512i)__builtin_ia32_palignr512((__v64qi)(__m512i)(A), \ - (__v64qi)(__m512i)(B), (int)(N))) - -#define _mm512_mask_alignr_epi8(W, U, A, B, N) \ - ((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \ - (__v64qi)_mm512_alignr_epi8((A), (B), (int)(N)), \ - (__v64qi)(__m512i)(W))) - -#define _mm512_maskz_alignr_epi8(U, A, B, N) \ - ((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \ - (__v64qi)_mm512_alignr_epi8((A), (B), (int)(N)), \ - (__v64qi)(__m512i)_mm512_setzero_si512())) - -#define _mm512_dbsad_epu8(A, B, imm) \ - ((__m512i)__builtin_ia32_dbpsadbw512((__v64qi)(__m512i)(A), \ - (__v64qi)(__m512i)(B), (int)(imm))) - -#define _mm512_mask_dbsad_epu8(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_dbsad_epu8((A), (B), (imm)), \ - (__v32hi)(__m512i)(W))) - -#define _mm512_maskz_dbsad_epu8(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_dbsad_epu8((A), (B), (imm)), \ - (__v32hi)_mm512_setzero_si512())) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sad_epu8 (__m512i __A, __m512i __B) -{ - return (__m512i) __builtin_ia32_psadbw512 ((__v64qi) __A, - (__v64qi) __B); -} - -#undef __DEFAULT_FN_ATTRS512 -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512bwintrin.h.blob deleted file mode 100644 index d4ff14d56ef69daf26a99bd1be1db9a821eae913..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 140628 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 LGf;n+6f6D@?2m@5 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h deleted file mode 100644 index bfdba84a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h +++ /dev/null @@ -1,123 +0,0 @@ -/*===------------- avx512cdintrin.h - AVX512CD intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512cdintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512CDINTRIN_H -#define __AVX512CDINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512cd"), __min_vector_width__(512))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_conflict_epi64 (__m512i __A) -{ - return (__m512i) __builtin_ia32_vpconflictdi_512 ((__v8di) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_conflict_epi64 (__m512i __W, __mmask8 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_conflict_epi64(__A), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_conflict_epi64 (__mmask8 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_conflict_epi64(__A), - (__v8di)_mm512_setzero_si512 ()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_conflict_epi32 (__m512i __A) -{ - return (__m512i) __builtin_ia32_vpconflictsi_512 ((__v16si) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_conflict_epi32 (__m512i __W, __mmask16 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_conflict_epi32(__A), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_conflict_epi32 (__mmask16 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_conflict_epi32(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_lzcnt_epi32 (__m512i __A) -{ - return (__m512i) __builtin_ia32_vplzcntd_512 ((__v16si) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_lzcnt_epi32 (__m512i __W, __mmask16 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_lzcnt_epi32(__A), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_lzcnt_epi32 (__mmask16 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_lzcnt_epi32(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_lzcnt_epi64 (__m512i __A) -{ - return (__m512i) __builtin_ia32_vplzcntq_512 ((__v8di) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_lzcnt_epi64 (__m512i __W, __mmask8 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_lzcnt_epi64(__A), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_lzcnt_epi64 (__mmask8 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_lzcnt_epi64(__A), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_broadcastmb_epi64 (__mmask8 __A) -{ - return (__m512i) _mm512_set1_epi64((long long) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_broadcastmw_epi32 (__mmask16 __A) -{ - return (__m512i) _mm512_set1_epi32((int) __A); - -} - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512cdintrin.h.blob deleted file mode 100644 index 501de44e3f8b2a5ba0b72217a88192b250cbb8ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17407 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h deleted file mode 100644 index 3ba0a0cf..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h +++ /dev/null @@ -1,1377 +0,0 @@ -/*===---- avx512dqintrin.h - AVX512DQ intrinsics ---------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <avx512dqintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512DQINTRIN_H -#define __AVX512DQINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512dq"), __min_vector_width__(512))) -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512dq"))) - -static __inline __mmask8 __DEFAULT_FN_ATTRS -_knot_mask8(__mmask8 __M) -{ - return __builtin_ia32_knotqi(__M); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS -_kand_mask8(__mmask8 __A, __mmask8 __B) -{ - return (__mmask8)__builtin_ia32_kandqi((__mmask8)__A, (__mmask8)__B); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS -_kandn_mask8(__mmask8 __A, __mmask8 __B) -{ - return (__mmask8)__builtin_ia32_kandnqi((__mmask8)__A, (__mmask8)__B); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS -_kor_mask8(__mmask8 __A, __mmask8 __B) -{ - return (__mmask8)__builtin_ia32_korqi((__mmask8)__A, (__mmask8)__B); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS -_kxnor_mask8(__mmask8 __A, __mmask8 __B) -{ - return (__mmask8)__builtin_ia32_kxnorqi((__mmask8)__A, (__mmask8)__B); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS -_kxor_mask8(__mmask8 __A, __mmask8 __B) -{ - return (__mmask8)__builtin_ia32_kxorqi((__mmask8)__A, (__mmask8)__B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortestc_mask8_u8(__mmask8 __A, __mmask8 __B) -{ - return (unsigned char)__builtin_ia32_kortestcqi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortestz_mask8_u8(__mmask8 __A, __mmask8 __B) -{ - return (unsigned char)__builtin_ia32_kortestzqi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortest_mask8_u8(__mmask8 __A, __mmask8 __B, unsigned char *__C) { - *__C = (unsigned char)__builtin_ia32_kortestcqi(__A, __B); - return (unsigned char)__builtin_ia32_kortestzqi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktestc_mask8_u8(__mmask8 __A, __mmask8 __B) -{ - return (unsigned char)__builtin_ia32_ktestcqi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktestz_mask8_u8(__mmask8 __A, __mmask8 __B) -{ - return (unsigned char)__builtin_ia32_ktestzqi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktest_mask8_u8(__mmask8 __A, __mmask8 __B, unsigned char *__C) { - *__C = (unsigned char)__builtin_ia32_ktestcqi(__A, __B); - return (unsigned char)__builtin_ia32_ktestzqi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktestc_mask16_u8(__mmask16 __A, __mmask16 __B) -{ - return (unsigned char)__builtin_ia32_ktestchi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktestz_mask16_u8(__mmask16 __A, __mmask16 __B) -{ - return (unsigned char)__builtin_ia32_ktestzhi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_ktest_mask16_u8(__mmask16 __A, __mmask16 __B, unsigned char *__C) { - *__C = (unsigned char)__builtin_ia32_ktestchi(__A, __B); - return (unsigned char)__builtin_ia32_ktestzhi(__A, __B); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS -_kadd_mask8(__mmask8 __A, __mmask8 __B) -{ - return (__mmask8)__builtin_ia32_kaddqi((__mmask8)__A, (__mmask8)__B); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_kadd_mask16(__mmask16 __A, __mmask16 __B) -{ - return (__mmask16)__builtin_ia32_kaddhi((__mmask16)__A, (__mmask16)__B); -} - -#define _kshiftli_mask8(A, I) \ - ((__mmask8)__builtin_ia32_kshiftliqi((__mmask8)(A), (unsigned int)(I))) - -#define _kshiftri_mask8(A, I) \ - ((__mmask8)__builtin_ia32_kshiftriqi((__mmask8)(A), (unsigned int)(I))) - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_cvtmask8_u32(__mmask8 __A) { - return (unsigned int)__builtin_ia32_kmovb((__mmask8)__A); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS -_cvtu32_mask8(unsigned int __A) { - return (__mmask8)__builtin_ia32_kmovb((__mmask8)__A); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS -_load_mask8(__mmask8 *__A) { - return (__mmask8)__builtin_ia32_kmovb(*(__mmask8 *)__A); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_store_mask8(__mmask8 *__A, __mmask8 __B) { - *(__mmask8 *)__A = __builtin_ia32_kmovb((__mmask8)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mullo_epi64 (__m512i __A, __m512i __B) { - return (__m512i) ((__v8du) __A * (__v8du) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mullo_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_mullo_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mullo_epi64(__mmask8 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_mullo_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_xor_pd(__m512d __A, __m512d __B) { - return (__m512d)((__v8du)__A ^ (__v8du)__B); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_xor_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_xor_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_xor_pd(__mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_xor_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_xor_ps (__m512 __A, __m512 __B) { - return (__m512)((__v16su)__A ^ (__v16su)__B); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_xor_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_xor_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_xor_ps(__mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_xor_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_or_pd(__m512d __A, __m512d __B) { - return (__m512d)((__v8du)__A | (__v8du)__B); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_or_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_or_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_or_pd(__mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_or_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_or_ps(__m512 __A, __m512 __B) { - return (__m512)((__v16su)__A | (__v16su)__B); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_or_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_or_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_or_ps(__mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_or_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_and_pd(__m512d __A, __m512d __B) { - return (__m512d)((__v8du)__A & (__v8du)__B); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_and_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_and_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_and_pd(__mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_and_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_and_ps(__m512 __A, __m512 __B) { - return (__m512)((__v16su)__A & (__v16su)__B); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_and_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_and_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_and_ps(__mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_and_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_andnot_pd(__m512d __A, __m512d __B) { - return (__m512d)(~(__v8du)__A & (__v8du)__B); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_andnot_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_andnot_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_andnot_pd(__mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_andnot_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_andnot_ps(__m512 __A, __m512 __B) { - return (__m512)(~(__v16su)__A & (__v16su)__B); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_andnot_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_andnot_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_andnot_ps(__mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_andnot_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtpd_epi64 (__m512d __A) { - return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A) { - return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A, - (__v8di) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtpd_epi64 (__mmask8 __U, __m512d __A) { - return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundpd_epi64(A, R) \ - ((__m512i)__builtin_ia32_cvtpd2qq512_mask((__v8df)(__m512d)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundpd_epi64(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvtpd2qq512_mask((__v8df)(__m512d)(A), \ - (__v8di)(__m512i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundpd_epi64(U, A, R) \ - ((__m512i)__builtin_ia32_cvtpd2qq512_mask((__v8df)(__m512d)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtpd_epu64 (__m512d __A) { - return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A) { - return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A, - (__v8di) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtpd_epu64 (__mmask8 __U, __m512d __A) { - return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundpd_epu64(A, R) \ - ((__m512i)__builtin_ia32_cvtpd2uqq512_mask((__v8df)(__m512d)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundpd_epu64(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvtpd2uqq512_mask((__v8df)(__m512d)(A), \ - (__v8di)(__m512i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundpd_epu64(U, A, R) \ - ((__m512i)__builtin_ia32_cvtpd2uqq512_mask((__v8df)(__m512d)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtps_epi64 (__m256 __A) { - return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtps_epi64 (__m512i __W, __mmask8 __U, __m256 __A) { - return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A, - (__v8di) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtps_epi64 (__mmask8 __U, __m256 __A) { - return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundps_epi64(A, R) \ - ((__m512i)__builtin_ia32_cvtps2qq512_mask((__v8sf)(__m256)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundps_epi64(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvtps2qq512_mask((__v8sf)(__m256)(A), \ - (__v8di)(__m512i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundps_epi64(U, A, R) \ - ((__m512i)__builtin_ia32_cvtps2qq512_mask((__v8sf)(__m256)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtps_epu64 (__m256 __A) { - return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtps_epu64 (__m512i __W, __mmask8 __U, __m256 __A) { - return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A, - (__v8di) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtps_epu64 (__mmask8 __U, __m256 __A) { - return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundps_epu64(A, R) \ - ((__m512i)__builtin_ia32_cvtps2uqq512_mask((__v8sf)(__m256)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundps_epu64(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvtps2uqq512_mask((__v8sf)(__m256)(A), \ - (__v8di)(__m512i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundps_epu64(U, A, R) \ - ((__m512i)__builtin_ia32_cvtps2uqq512_mask((__v8sf)(__m256)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_cvtepi64_pd (__m512i __A) { - return (__m512d)__builtin_convertvector((__v8di)__A, __v8df); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_pd (__m512d __W, __mmask8 __U, __m512i __A) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_cvtepi64_pd(__A), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi64_pd (__mmask8 __U, __m512i __A) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_cvtepi64_pd(__A), - (__v8df)_mm512_setzero_pd()); -} - -#define _mm512_cvt_roundepi64_pd(A, R) \ - ((__m512d)__builtin_ia32_cvtqq2pd512_mask((__v8di)(__m512i)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundepi64_pd(W, U, A, R) \ - ((__m512d)__builtin_ia32_cvtqq2pd512_mask((__v8di)(__m512i)(A), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepi64_pd(U, A, R) \ - ((__m512d)__builtin_ia32_cvtqq2pd512_mask((__v8di)(__m512i)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_cvtepi64_ps (__m512i __A) { - return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A, - (__v8sf) _mm256_setzero_ps(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_ps (__m256 __W, __mmask8 __U, __m512i __A) { - return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A, - (__v8sf) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi64_ps (__mmask8 __U, __m512i __A) { - return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A, - (__v8sf) _mm256_setzero_ps(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepi64_ps(A, R) \ - ((__m256)__builtin_ia32_cvtqq2ps512_mask((__v8di)(__m512i)(A), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundepi64_ps(W, U, A, R) \ - ((__m256)__builtin_ia32_cvtqq2ps512_mask((__v8di)(__m512i)(A), \ - (__v8sf)(__m256)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm512_maskz_cvt_roundepi64_ps(U, A, R) \ - ((__m256)__builtin_ia32_cvtqq2ps512_mask((__v8di)(__m512i)(A), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttpd_epi64 (__m512d __A) { - return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A) { - return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A, - (__v8di) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttpd_epi64 (__mmask8 __U, __m512d __A) { - return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundpd_epi64(A, R) \ - ((__m512i)__builtin_ia32_cvttpd2qq512_mask((__v8df)(__m512d)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvtt_roundpd_epi64(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvttpd2qq512_mask((__v8df)(__m512d)(A), \ - (__v8di)(__m512i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundpd_epi64(U, A, R) \ - ((__m512i)__builtin_ia32_cvttpd2qq512_mask((__v8df)(__m512d)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttpd_epu64 (__m512d __A) { - return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A) { - return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A, - (__v8di) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttpd_epu64 (__mmask8 __U, __m512d __A) { - return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundpd_epu64(A, R) \ - ((__m512i)__builtin_ia32_cvttpd2uqq512_mask((__v8df)(__m512d)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvtt_roundpd_epu64(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvttpd2uqq512_mask((__v8df)(__m512d)(A), \ - (__v8di)(__m512i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundpd_epu64(U, A, R) \ - ((__m512i)__builtin_ia32_cvttpd2uqq512_mask((__v8df)(__m512d)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttps_epi64 (__m256 __A) { - return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttps_epi64 (__m512i __W, __mmask8 __U, __m256 __A) { - return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A, - (__v8di) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttps_epi64 (__mmask8 __U, __m256 __A) { - return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundps_epi64(A, R) \ - ((__m512i)__builtin_ia32_cvttps2qq512_mask((__v8sf)(__m256)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvtt_roundps_epi64(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvttps2qq512_mask((__v8sf)(__m256)(A), \ - (__v8di)(__m512i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundps_epi64(U, A, R) \ - ((__m512i)__builtin_ia32_cvttps2qq512_mask((__v8sf)(__m256)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttps_epu64 (__m256 __A) { - return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttps_epu64 (__m512i __W, __mmask8 __U, __m256 __A) { - return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A, - (__v8di) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttps_epu64 (__mmask8 __U, __m256 __A) { - return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundps_epu64(A, R) \ - ((__m512i)__builtin_ia32_cvttps2uqq512_mask((__v8sf)(__m256)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvtt_roundps_epu64(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvttps2uqq512_mask((__v8sf)(__m256)(A), \ - (__v8di)(__m512i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundps_epu64(U, A, R) \ - ((__m512i)__builtin_ia32_cvttps2uqq512_mask((__v8sf)(__m256)(A), \ - (__v8di)_mm512_setzero_si512(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_cvtepu64_pd (__m512i __A) { - return (__m512d)__builtin_convertvector((__v8du)__A, __v8df); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu64_pd (__m512d __W, __mmask8 __U, __m512i __A) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_cvtepu64_pd(__A), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu64_pd (__mmask8 __U, __m512i __A) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_cvtepu64_pd(__A), - (__v8df)_mm512_setzero_pd()); -} - -#define _mm512_cvt_roundepu64_pd(A, R) \ - ((__m512d)__builtin_ia32_cvtuqq2pd512_mask((__v8di)(__m512i)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundepu64_pd(W, U, A, R) \ - ((__m512d)__builtin_ia32_cvtuqq2pd512_mask((__v8di)(__m512i)(A), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_maskz_cvt_roundepu64_pd(U, A, R) \ - ((__m512d)__builtin_ia32_cvtuqq2pd512_mask((__v8di)(__m512i)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_cvtepu64_ps (__m512i __A) { - return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A, - (__v8sf) _mm256_setzero_ps(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu64_ps (__m256 __W, __mmask8 __U, __m512i __A) { - return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A, - (__v8sf) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu64_ps (__mmask8 __U, __m512i __A) { - return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A, - (__v8sf) _mm256_setzero_ps(), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepu64_ps(A, R) \ - ((__m256)__builtin_ia32_cvtuqq2ps512_mask((__v8di)(__m512i)(A), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundepu64_ps(W, U, A, R) \ - ((__m256)__builtin_ia32_cvtuqq2ps512_mask((__v8di)(__m512i)(A), \ - (__v8sf)(__m256)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm512_maskz_cvt_roundepu64_ps(U, A, R) \ - ((__m256)__builtin_ia32_cvtuqq2ps512_mask((__v8di)(__m512i)(A), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_range_pd(A, B, C) \ - ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(C), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_range_pd(W, U, A, B, C) \ - ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(C), \ - (__v8df)(__m512d)(W), (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_range_pd(U, A, B, C) \ - ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(C), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_range_round_pd(A, B, C, R) \ - ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(C), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_range_round_pd(W, U, A, B, C, R) \ - ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(C), \ - (__v8df)(__m512d)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm512_maskz_range_round_pd(U, A, B, C, R) \ - ((__m512d)__builtin_ia32_rangepd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(C), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_range_ps(A, B, C) \ - ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(C), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_range_ps(W, U, A, B, C) \ - ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(C), \ - (__v16sf)(__m512)(W), (__mmask16)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_range_ps(U, A, B, C) \ - ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(C), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_range_round_ps(A, B, C, R) \ - ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(C), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_range_round_ps(W, U, A, B, C, R) \ - ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(C), \ - (__v16sf)(__m512)(W), (__mmask16)(U), \ - (int)(R))) - -#define _mm512_maskz_range_round_ps(U, A, B, C, R) \ - ((__m512)__builtin_ia32_rangeps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(C), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), (int)(R))) - -#define _mm_range_round_ss(A, B, C, R) \ - ((__m128)__builtin_ia32_rangess128_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8) -1, (int)(C),\ - (int)(R))) - -#define _mm_range_ss(A ,B , C) _mm_range_round_ss(A, B, C ,_MM_FROUND_CUR_DIRECTION) - -#define _mm_mask_range_round_ss(W, U, A, B, C, R) \ - ((__m128)__builtin_ia32_rangess128_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W),\ - (__mmask8)(U), (int)(C),\ - (int)(R))) - -#define _mm_mask_range_ss(W , U, A, B, C) _mm_mask_range_round_ss(W, U, A, B, C , _MM_FROUND_CUR_DIRECTION) - -#define _mm_maskz_range_round_ss(U, A, B, C, R) \ - ((__m128)__builtin_ia32_rangess128_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(C),\ - (int)(R))) - -#define _mm_maskz_range_ss(U, A ,B , C) _mm_maskz_range_round_ss(U, A, B, C ,_MM_FROUND_CUR_DIRECTION) - -#define _mm_range_round_sd(A, B, C, R) \ - ((__m128d)__builtin_ia32_rangesd128_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8) -1, (int)(C),\ - (int)(R))) - -#define _mm_range_sd(A ,B , C) _mm_range_round_sd(A, B, C ,_MM_FROUND_CUR_DIRECTION) - -#define _mm_mask_range_round_sd(W, U, A, B, C, R) \ - ((__m128d)__builtin_ia32_rangesd128_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W),\ - (__mmask8)(U), (int)(C),\ - (int)(R))) - -#define _mm_mask_range_sd(W, U, A, B, C) _mm_mask_range_round_sd(W, U, A, B, C ,_MM_FROUND_CUR_DIRECTION) - -#define _mm_maskz_range_round_sd(U, A, B, C, R) \ - ((__m128d)__builtin_ia32_rangesd128_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(C),\ - (int)(R))) - -#define _mm_maskz_range_sd(U, A, B, C) _mm_maskz_range_round_sd(U, A, B, C ,_MM_FROUND_CUR_DIRECTION) - -#define _mm512_reduce_pd(A, B) \ - ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_reduce_pd(W, U, A, B) \ - ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_reduce_pd(U, A, B) \ - ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_reduce_ps(A, B) \ - ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_reduce_ps(W, U, A, B) \ - ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_reduce_ps(U, A, B) \ - ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_reduce_round_pd(A, B, R) \ - ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_reduce_round_pd(W, U, A, B, R) \ - ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_reduce_round_pd(U, A, B, R) \ - ((__m512d)__builtin_ia32_reducepd512_mask((__v8df)(__m512d)(A), (int)(B), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_reduce_round_ps(A, B, R) \ - ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_reduce_round_ps(W, U, A, B, R) \ - ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_reduce_round_ps(U, A, B, R) \ - ((__m512)__builtin_ia32_reduceps512_mask((__v16sf)(__m512)(A), (int)(B), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), (int)(R))) - -#define _mm_reduce_ss(A, B, C) \ - ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), (__mmask8)-1, \ - (int)(C), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_reduce_ss(W, U, A, B, C) \ - ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(C), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_reduce_ss(U, A, B, C) \ - ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(C), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_reduce_round_ss(A, B, C, R) \ - ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), (__mmask8)-1, \ - (int)(C), (int)(R))) - -#define _mm_mask_reduce_round_ss(W, U, A, B, C, R) \ - ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(C), (int)(R))) - -#define _mm_maskz_reduce_round_ss(U, A, B, C, R) \ - ((__m128)__builtin_ia32_reducess_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(C), (int)(R))) - -#define _mm_reduce_sd(A, B, C) \ - ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(C), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_reduce_sd(W, U, A, B, C) \ - ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), (__mmask8)(U), \ - (int)(C), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_reduce_sd(U, A, B, C) \ - ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(C), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_reduce_round_sd(A, B, C, R) \ - ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(C), (int)(R))) - -#define _mm_mask_reduce_round_sd(W, U, A, B, C, R) \ - ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), (__mmask8)(U), \ - (int)(C), (int)(R))) - -#define _mm_maskz_reduce_round_sd(U, A, B, C, R) \ - ((__m128d)__builtin_ia32_reducesd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(C), (int)(R))) - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS512 -_mm512_movepi32_mask (__m512i __A) -{ - return (__mmask16) __builtin_ia32_cvtd2mask512 ((__v16si) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_movm_epi32 (__mmask16 __A) -{ - return (__m512i) __builtin_ia32_cvtmask2d512 (__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_movm_epi64 (__mmask8 __A) -{ - return (__m512i) __builtin_ia32_cvtmask2q512 (__A); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS512 -_mm512_movepi64_mask (__m512i __A) -{ - return (__mmask8) __builtin_ia32_cvtq2mask512 ((__v8di) __A); -} - - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_broadcast_f32x2 (__m128 __A) -{ - return (__m512)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A, - 0, 1, 0, 1, 0, 1, 0, 1, - 0, 1, 0, 1, 0, 1, 0, 1); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_f32x2 (__m512 __O, __mmask16 __M, __m128 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, - (__v16sf)_mm512_broadcast_f32x2(__A), - (__v16sf)__O); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_f32x2 (__mmask16 __M, __m128 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, - (__v16sf)_mm512_broadcast_f32x2(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_broadcast_f32x8(__m256 __A) -{ - return (__m512)__builtin_shufflevector((__v8sf)__A, (__v8sf)__A, - 0, 1, 2, 3, 4, 5, 6, 7, - 0, 1, 2, 3, 4, 5, 6, 7); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_f32x8(__m512 __O, __mmask16 __M, __m256 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, - (__v16sf)_mm512_broadcast_f32x8(__A), - (__v16sf)__O); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_f32x8(__mmask16 __M, __m256 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, - (__v16sf)_mm512_broadcast_f32x8(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_broadcast_f64x2(__m128d __A) -{ - return (__m512d)__builtin_shufflevector((__v2df)__A, (__v2df)__A, - 0, 1, 0, 1, 0, 1, 0, 1); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_f64x2(__m512d __O, __mmask8 __M, __m128d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__M, - (__v8df)_mm512_broadcast_f64x2(__A), - (__v8df)__O); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_f64x2(__mmask8 __M, __m128d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__M, - (__v8df)_mm512_broadcast_f64x2(__A), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcast_i32x2 (__m128i __A) -{ - return (__m512i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, - 0, 1, 0, 1, 0, 1, 0, 1, - 0, 1, 0, 1, 0, 1, 0, 1); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_i32x2 (__m512i __O, __mmask16 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_broadcast_i32x2(__A), - (__v16si)__O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_i32x2 (__mmask16 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_broadcast_i32x2(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcast_i32x8(__m256i __A) -{ - return (__m512i)__builtin_shufflevector((__v8si)__A, (__v8si)__A, - 0, 1, 2, 3, 4, 5, 6, 7, - 0, 1, 2, 3, 4, 5, 6, 7); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_i32x8(__m512i __O, __mmask16 __M, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_broadcast_i32x8(__A), - (__v16si)__O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_i32x8(__mmask16 __M, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_broadcast_i32x8(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcast_i64x2(__m128i __A) -{ - return (__m512i)__builtin_shufflevector((__v2di)__A, (__v2di)__A, - 0, 1, 0, 1, 0, 1, 0, 1); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_i64x2(__m512i __O, __mmask8 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_broadcast_i64x2(__A), - (__v8di)__O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_i64x2(__mmask8 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_broadcast_i64x2(__A), - (__v8di)_mm512_setzero_si512()); -} - -#define _mm512_extractf32x8_ps(A, imm) \ - ((__m256)__builtin_ia32_extractf32x8_mask((__v16sf)(__m512)(A), (int)(imm), \ - (__v8sf)_mm256_undefined_ps(), \ - (__mmask8)-1)) - -#define _mm512_mask_extractf32x8_ps(W, U, A, imm) \ - ((__m256)__builtin_ia32_extractf32x8_mask((__v16sf)(__m512)(A), (int)(imm), \ - (__v8sf)(__m256)(W), \ - (__mmask8)(U))) - -#define _mm512_maskz_extractf32x8_ps(U, A, imm) \ - ((__m256)__builtin_ia32_extractf32x8_mask((__v16sf)(__m512)(A), (int)(imm), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)(U))) - -#define _mm512_extractf64x2_pd(A, imm) \ - ((__m128d)__builtin_ia32_extractf64x2_512_mask((__v8df)(__m512d)(A), \ - (int)(imm), \ - (__v2df)_mm_undefined_pd(), \ - (__mmask8)-1)) - -#define _mm512_mask_extractf64x2_pd(W, U, A, imm) \ - ((__m128d)__builtin_ia32_extractf64x2_512_mask((__v8df)(__m512d)(A), \ - (int)(imm), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U))) - -#define _mm512_maskz_extractf64x2_pd(U, A, imm) \ - ((__m128d)__builtin_ia32_extractf64x2_512_mask((__v8df)(__m512d)(A), \ - (int)(imm), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm512_extracti32x8_epi32(A, imm) \ - ((__m256i)__builtin_ia32_extracti32x8_mask((__v16si)(__m512i)(A), (int)(imm), \ - (__v8si)_mm256_undefined_si256(), \ - (__mmask8)-1)) - -#define _mm512_mask_extracti32x8_epi32(W, U, A, imm) \ - ((__m256i)__builtin_ia32_extracti32x8_mask((__v16si)(__m512i)(A), (int)(imm), \ - (__v8si)(__m256i)(W), \ - (__mmask8)(U))) - -#define _mm512_maskz_extracti32x8_epi32(U, A, imm) \ - ((__m256i)__builtin_ia32_extracti32x8_mask((__v16si)(__m512i)(A), (int)(imm), \ - (__v8si)_mm256_setzero_si256(), \ - (__mmask8)(U))) - -#define _mm512_extracti64x2_epi64(A, imm) \ - ((__m128i)__builtin_ia32_extracti64x2_512_mask((__v8di)(__m512i)(A), \ - (int)(imm), \ - (__v2di)_mm_undefined_si128(), \ - (__mmask8)-1)) - -#define _mm512_mask_extracti64x2_epi64(W, U, A, imm) \ - ((__m128i)__builtin_ia32_extracti64x2_512_mask((__v8di)(__m512i)(A), \ - (int)(imm), \ - (__v2di)(__m128i)(W), \ - (__mmask8)(U))) - -#define _mm512_maskz_extracti64x2_epi64(U, A, imm) \ - ((__m128i)__builtin_ia32_extracti64x2_512_mask((__v8di)(__m512i)(A), \ - (int)(imm), \ - (__v2di)_mm_setzero_si128(), \ - (__mmask8)(U))) - -#define _mm512_insertf32x8(A, B, imm) \ - ((__m512)__builtin_ia32_insertf32x8((__v16sf)(__m512)(A), \ - (__v8sf)(__m256)(B), (int)(imm))) - -#define _mm512_mask_insertf32x8(W, U, A, B, imm) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_insertf32x8((A), (B), (imm)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_insertf32x8(U, A, B, imm) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_insertf32x8((A), (B), (imm)), \ - (__v16sf)_mm512_setzero_ps())) - -#define _mm512_insertf64x2(A, B, imm) \ - ((__m512d)__builtin_ia32_insertf64x2_512((__v8df)(__m512d)(A), \ - (__v2df)(__m128d)(B), (int)(imm))) - -#define _mm512_mask_insertf64x2(W, U, A, B, imm) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_insertf64x2((A), (B), (imm)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_insertf64x2(U, A, B, imm) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_insertf64x2((A), (B), (imm)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_inserti32x8(A, B, imm) \ - ((__m512i)__builtin_ia32_inserti32x8((__v16si)(__m512i)(A), \ - (__v8si)(__m256i)(B), (int)(imm))) - -#define _mm512_mask_inserti32x8(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_inserti32x8((A), (B), (imm)), \ - (__v16si)(__m512i)(W))) - -#define _mm512_maskz_inserti32x8(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_inserti32x8((A), (B), (imm)), \ - (__v16si)_mm512_setzero_si512())) - -#define _mm512_inserti64x2(A, B, imm) \ - ((__m512i)__builtin_ia32_inserti64x2_512((__v8di)(__m512i)(A), \ - (__v2di)(__m128i)(B), (int)(imm))) - -#define _mm512_mask_inserti64x2(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_inserti64x2((A), (B), (imm)), \ - (__v8di)(__m512i)(W))) - -#define _mm512_maskz_inserti64x2(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_inserti64x2((A), (B), (imm)), \ - (__v8di)_mm512_setzero_si512())) - -#define _mm512_mask_fpclass_ps_mask(U, A, imm) \ - ((__mmask16)__builtin_ia32_fpclassps512_mask((__v16sf)(__m512)(A), \ - (int)(imm), (__mmask16)(U))) - -#define _mm512_fpclass_ps_mask(A, imm) \ - ((__mmask16)__builtin_ia32_fpclassps512_mask((__v16sf)(__m512)(A), \ - (int)(imm), (__mmask16)-1)) - -#define _mm512_mask_fpclass_pd_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclasspd512_mask((__v8df)(__m512d)(A), (int)(imm), \ - (__mmask8)(U))) - -#define _mm512_fpclass_pd_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclasspd512_mask((__v8df)(__m512d)(A), (int)(imm), \ - (__mmask8)-1)) - -#define _mm_fpclass_sd_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclasssd_mask((__v2df)(__m128d)(A), (int)(imm), \ - (__mmask8)-1)) - -#define _mm_mask_fpclass_sd_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclasssd_mask((__v2df)(__m128d)(A), (int)(imm), \ - (__mmask8)(U))) - -#define _mm_fpclass_ss_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclassss_mask((__v4sf)(__m128)(A), (int)(imm), \ - (__mmask8)-1)) - -#define _mm_mask_fpclass_ss_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclassss_mask((__v4sf)(__m128)(A), (int)(imm), \ - (__mmask8)(U))) - -#undef __DEFAULT_FN_ATTRS512 -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512dqintrin.h.blob deleted file mode 100644 index 38f5ddc03f2c711e83b7d0f9202e64e9cb25c3c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90143 zcmeFa2YeJ&`!Bw;S(+dq2F1_<#1LW%1Pq~t03n1P5JE8|q>>Grx|;&hM4AYK2%&d) z0cjSRQUw&m0*ZhlAVn!kQ$ayo=YG#Kb7p6DC!56gy}x_k|NZ-MHV<cJ&Uwyro_@;s z8~#3K9{j06Fa)P(XQl>Qf+JI{BW>9^!M0SZEjT4LCD@vm9GsbG&I(F4cqCgAvqqHZ z(ZIs&ypiUt5rHY@ywqe{cHXECCAMI&2MEFW*1TYIR<b2OB{lek$X+4ANvR{uSqaJ6 zDXBr}hQEEirybKglWZH6LwD}o4%6OAGTW@d?5;I9At5u#YD=`GCfHad%A*!@QZV%; zxJ9VaYGP)QIm?!Zp5jqP6-|4D6Mhm#<eO7;G3wSUc!VXN-KzQZ+n<#1GN_uLr{ANr z)I@gAs=<_#Bs0;LuDPM#g@U5zTZE+Lv<P+66QU0rmMkq%cvEygX%rZsFfpg}Hm$al zr0i@9d(eewR8>y4)m#*kU@>QED$_KVXv@wtCnpq|Q&KVH`B}EqJmq0`jG1P(q$VWg zWfxkd7n;A7RKl<&=j5BS(z02t3NN{#Auvz0fB{SA2Wx&_T4J(eNZp~Eo@y}{F%-7E z8?VLF${HG>^qEP6E_Nf*vdnI<B7#f2Z#9o7NVGUHzJ}=1b2f8kYM$ybclf6km}#J^ z?dz*WUy%-5c78H3szPK<lW94Dmh2HprS~(DIJqDx(_L?^qpZQnDXD4tBBQ2-EiXUW zmJrpwS65Bb95)4hQgmt-;ZLY4OU}+7X--WrXD6iPXC>Rr*;!T<`P6!hGy-dIXi^t9 zIw}nk;#7m~*cWDImNxVlbgONob+m3T^RvtlR^3~w?&)hxP6srQl}J3GC{uom>aZrK zr<U48A-YkP4(DX&Bxl*&^jR4<D6<qv0}$W2<>Ac4WMY`J&-K<aF_Q#c>L|^i6>}ol z2Zg<LM=Bu!ga%_KWF{6RBw9c-sk{0LlG`dac&W~W(NK3pDonEt8d5SLGz9MYYAs;> zx!t9cwxddafF<f@&nW%j?J?OR#55Gq?QL3-70Sy+Q|dk|%XLl&UP#Te!Zj%8o0hUz zH#U-?tu&bPekpxVwwQC0vJ><4jX5zhEQT#B5H<-+Xd9)ePPcP8d1=Y%dJ0STX_*vR zE(+b<h^FPGrY4NAjLIP;>+hYe9a%{RnG#4$9$7lVG76TYw9-8Wa3?dMfyvN!Hm$~W z*F9)(Hr8MehK?ctZeB5`WhNF_bl%}ZNS$<uqP`;HLS@NLPK1x3b#-)GM~e!>D|l+! zg!M{Gv}&u;JOHOR#cCd{uSJ-!k^kX>u)>ogQ%7kWUU!^e11DI`HrZ49Q%sgPLAPr; zZY_t>e5To|uMCtYBtMOfq>I8Bk(D0|=Qhb2Sc2pwS~G)F^YXHY27Z6e(7MPH=cd{+ zGRxp|axFskAtkqTZczqSp}j7h3UZPynfaF7lw2M5(|w~b(QL~Zsplx_K5o?=2;E1~ zM;#<I>_(n-0xW_?()lBaRyf6uTkd$tl3FBLPp_M)T7`l^3mlP}m6~TxmIf~{DbY&& z?J|N2lVs<lW{n^p!G%dwqMMa!)oKxrH)HGsiL-+fbIh!7V-{A^`cGuI9DOU%U3NUD zNVG1oi>!$SsmZ0$o9h(ju!XiNi%!8H7Dx&{Os8^PRFYGjO`^MzOHZ_>XG&pOXi6V9 zDgeA-h9@#QRR<4Fd1VBlhg?mgF1Fl)=t>N)SCVbX2hS^nM%J1p{+QA{i|XKi*itEC z)Mp}KlN^|ynh3Wq5Y|q`=xPsK=C=ZKUUpU{%(y<s(NhQz1L1z@iV{5_J6|Mpx=#Tm zh>GqlsvyUfo(F`9ivkn#q&P`YNG?=JvcSe=mX!Zs{#ib3u`RX84bCvyQlq+9ae}j( z`c%gIi4@{!-gm<ZX=PzAgn&wu?wH$RC0nrLDR;Il&*mHzxvSC<C|E-Dd?&>~xr__) z7f38==)i}JMpse}h~rtL$y|9C7fkcGHPr&=x8&+r!Uvv<Mcbk-<)P#f^N6B~lG8NB zY*d;hafG%i%_Cg10q;_h2COocQp?xYri)l&N~tDHL$!niSpS5i{ImpHq9YgLZaDF5 znq;|#_wB5;T*TbTmTW7_C^;n&b+Oeo&74Z0adKczUMhk*&6w%d1aDf;mgqj4kf4P1 z36l50>enC0G>a`T72^|_nQBYV)(^AcIOi9Y=4Z)NH;+h=6K`5Z)J3!~DJ$EYRe*re z#hK?s;`$`Pp>q_qqFX0Yt|f$X`j1OVAt^23*5XK1aEPpnv*Mbk&}}g<5q);H$0d3j z+!)Fxzf3WYbwsH$BHIn*6cE%UK-&eTjLJ$xzEs1Bd=Okrjq;Q`L9!&W$4br=up~Zv z!u@!X8>Pb_y0lHr%1zF6$4=^=I67aZ?pV#4If(isZ7(T^2>~y<agQ9VQj+LpCn6V+ zoSm7O?asurTz88SbKNf9H0z8DZ#u+?rDio$*9<bta=1jBx};`_3~-~1;Oah{nTfQO z1zs9!S)Uq`{(y1?KWbHn7D1YX(T%|Qb5h=0YfJb&m03+FL+-W!`6MJ`HT2T$U=f?! za-xPi+2|ceIs0QBou-5cKe%9N5JvrwpPrDWS`ys)X{Dzg3y_9#%wD)dcT}P^%bb%V zxw6Yv4b+-NLJ4L*wE*t0b27(WwKUp{xPR(8P8vgQX8p;t=A>#>l<sIqN|PmhoQ9-C zHEXjLSyF6ldeMcUIqN7Ql#z`%!Yl<G?sb<<*Z%9GoS6+XSY~-5rHCNCEa)cY%Q+(V zxF%cDEcw=S_mvhVrzbjQ(bQ3qLY;JTiX356d+vrmHN}isTsHm}qSD+bQfWAI+{FQ< zrS7cO1Xp)ecOcZxQ=&9;swgbo7mC6{N92@w<hVUgF4amY4pqqse1+(eKGdiw7q-o@ zB-+xl^Yr6irKa3`v(_l{dbp5h<!6>0Xv%H{L&PQ6;d9Y}ZZhdgBba3@Nx3PgT2r&E z68k8etwC00QOqf&+Y~4;mW+0KP=CmE<(fCHAn3@J=_4pjp1E{Xw@Ha_kZ^HTP`b|- zfOpIKtXa1^y48~6(W}^{^UR2u9Wl9DSI{VHlsmc32|0;*iP{N$T^y|GdTN~`Ah8ge zgt7(FWQ&Fwbt{x;>sBIB8zHQzj5n#IsdeuXLQ3e3{E{UH`6XqZSM!c8ddZfQ)XZ#K znX+t_?8FqS!=|gLuCQf}xhPf20l2WG^2`XhA1o7;mu;~)`HQ+Zf`lPD?8Ygi)Qen* zJCQAeeaXo#bV7(X!j*?!2CF2bv9zVY!j=T+VXylVqINl8SImMl0!&5932x2kYM+x> z6hw35`!lu)L>5^#lZsB&#ViejPr6${O!qMiRSChQ20y%;8HkuCB`_s5*@Ap1reQR_ z(XG4$N@{A>NWM)g@Olr*j-``g=1(fDm6@F{%_1mVt&1VLpT$@ku6>!@C&WY6#1W}U z+2pXhuN%3HoMf|}W!FU|N79ixa-;jWq^8O^F@<?E${JEYS0<;~{kj;1%;|}6JN2jZ zB)v`v=|CuHWVQlJR+`eo6wRqnMJ7taWPFqzPh+}4%ZL0CS{ajC$X<_aeC=aeEa!%f zNo>Uk%qe?b5g1;V(%Zbk>>O%N8F>CkX{+5NE@$K~fpMuzmTb13F*_fLc}>4{5ywPu zDtu;Fv~{0OExT3Eu@&Z-bq$Pe&6d$+TtbtXkEsOKFBj@51g4l#pTf#B*5t%2mwYQ9 z2R3O@TH>2c*=3iQL2<ML-lk!2L6^pg^s81`>yigET`Y@Hc3&+yGbcH@C^4nXLn~_n zNUW|l(8Y>tj{^7WWH?zBq989U$s`fQT{!1RWMxc~mrT0F1VnYe9+EOfltfevA4iV{ zMAjP$mnl!VX|{xADJ8v8o*Y7QUUJJayAk@i32pb})iEy9dL<!C&Wx^J(|sdnq@2TZ zuL9l7nwC7XrLa#r)Rn$?%lZ!!QYA_zJ;L1umZ;Vy26cM{^Mio7tV%N3QkdlQtUDIB zrKd`1x#Dhe!h(+&R1DD3=x}~Z)r%5Wi^}}W>IhW)IL6Ngp^BkuwJdRO^`KD^olgA5 z=E=;--sUV!N2GdVF**j_?46Lw{vyX}9m$q1C#EE0O;Lh5v{g}vpYlvX-vIUkdngP* zZ~9k@kTATS(5aarARtt*Z!;Nig&GC>dw||I84U)5hnU*zm&VQa&rK1pADXl7KvAbt z;=!}uf4!ym{HlU|rzsuRTyfv{P9AR@>wMC~?h{c>z-tDj$Suw~=&ErF5bT?Q$!1dk zaM}du9l}WvgN~fBEzP~0V4%i~91pZE*!Kgc{ieAL79Uy<c<%H#^Q>DWoC()5q$o_6 za4kX=%7r{1s;1mh;I@<~w*=5CnR1iA-8DArr>=JK@Ne55zW2>rpNP$Oo_lwHy}0Uv zeFd;w0m}Wl?9kNTwm<)@igI_FZ$9yDT7!{pkycR-_|iZ-QEn_S8B3HK18Aa5xf@rP z6}BphisY1=X0q6)nHCV`W&@rr!Q#036GyN8t8bJZ5-Dny8?EBGG|qD_Y=&1PHVYH% z`9LS%6ow(S0UAw+8O4yRM~qYUJ}MMnxmNtxq^U>i80|%%Q4wggZK{3g<kLeRFdErM zp>ULGx)^ERUadp>Z@g86J2G|4kN$0T-qyppM3nhxGnBOhETQc050vA9Xgr}j3{bL+ za>dW~*L~`zHPPaY`oA0g_4D9CMtdT#O9aZ5Ui<iuMwTjRgmMxJlYsJ~eVfEx6Z;NT zq0FCihq7a+(>StVKaL$_qz`cFLnGZA&<pZN?|Z4h*K2dta6ZyQfW;6=E;yPbBY*ty zLzSP-7ewlz;7~5v1(^w{IZ!H0GWhV4;%F?`o1xierp6diKR^L80-X-8`thTf>z_#o z7{tW9<uUyXwTjBrP)lNIWl(raO;CRmYN;_GU%92a?`DKuihdZuTe{ojZj)}0ZwYc~ ziRk7~m!lJs3v8)5`B;0EV^w!-AgM=5yE4A@_irxP|1cVGHAgRh2lSVbsYj#O{O9*V z3&ei8;=H6yje39DdZ}Q4XbizMK%BK|ma(gO@c`9$7tHv;9FqFfo26mqjF>dwgETta z70DpMeg~-CF$Mw2+koy7k{)6}2YY7qPH*{(&rDo2Ebzs11>(9M+nc`i>WS8zWEnBn z+jRfnSSJ_6Km;dwchD@w9nAs)K(pgO;yBUl3qU7jn&lne`03~=TjIs<Mj95ra=Kwh zqy0;x1=nmbd4SKjAs>g#A;I|yg<lz8*OT>Ljh^{(b<-oQ^zc=<7MR*{Qoy$uVOgUq zipUpo1C;t0eL<_<fL<Wv1aWNriQYY{ZU_|YF~(3_@nWSn$Ns#1Q9vKnI0}V7ztwov zvM{&JGwvl8laO!{9%c9xltKi1Yar6v7y^_+0kxOubvEV5-j9Ayt}YHrX|yLf=j?64 z-p1GpSDYShzM%{9{NFurp;X)$lW9<s8NLKIQ}D#N1_Qfb8rL8|tz<Tf&!~56SC`-O z#8X4+PYP*q`USCj+B3bD9(npSXR|XiJC5<pYu?K(ZiJTAp>8DRCl!EE%SVIxG-@_L zqvcV1dFXG#>6Yej!CnZ;6zWsv#5Xs07CbP#U3%+`Y2@*e1VFN0Xuc^LZA#7i0t%3u zkL$f4V!%@uzkn`8^Ud^|=lZ~<dFo(hCjKPAeI1>em(BE1LAE)Csh-BnpE4M#u^*FN zFgC~4pA7aBfS-`z8&Enoj031#RzRfQ4;@;&_=k))7M9c~x+f_cbXV4bG8>TI^AYT# zV8G=Ap8Ok-N$&Be>`(o3et2fEz%kNOcbAeLGaBZ7J>8{oiKs4`m~bdvtK0w{Hw31M zuLHUzNSb(mht35_%fF~5rd8f{uG7@#78vb63l?0n#ipxr4GmsQy+T^$CJJu~x>`l- ze(2(_*<la$@Kv-56KhFy7>_zs3v&qdL`TKGkeoH(nl&Ujs{w70C8sE9)!Sd@S$)OW z@E_WbTfJqf*gARAjHmAmI>9C9{UsCU`Bm9G*9A41dDu8|%!qg8!IWCp!%IEPupE_u zP9?G&6#-R~5xdu=VXwm1jElq<uU$EEZq}=3#Z7NMx7z!K51VkrRz}*oJkh+~UKhli z$5_Q?G{n+<U6MIa3kU#emodth1!mMP0lG@#?IA80(72lSkIOoV?;X7L+>j6F_ZD0K z+$8Y!`7yDA{RfQk4^9Iw2PVUYRcNwj$^Hp?_-e*jR^2K^#OTYSCrNdy#ub`-GKe;r zH1{Mx(}{dWF|zFg-@n^zyC62%esIdX)&9Q-_Nh=1Q}q=DXHz}Y6eCRL*C8lsQbAbH zgFxp=SkD3ao=7E#rsEyD3$b5bmd4D;$wSIQmJw1G!+rC&@9!}?R}TTT2d(z`dH4ZD zKpIDwsdA<fnQ(U%VP-fyw{QxUIsocIKAeY`KI+np+mosc5Pv%R?w!J@9>c_gvmdW- zySM@lZYKmLolFbF?8Q4PzIpBFd6gkP*yH$$V^0n0pog*RXy&LSw#31NkbVT(eMAc8 zFrZ_yf~oHL<8a&AlYwGXgX#<S_ZgHa*pCRUaOs-i&)QvG)b{?F^inZna-l{{9#K7! zRk0kzVlQypOJcDH&_OO1Jr2~!cyh>C@$QDlcKSXa{Hu7VuKDNX4~<qXu{o>jTx)i1 z&u+JvIU%KL8C<p<?QJJ6+Xm<Znag69*022jn<;CN7XVpy>XW5m#HGm>o~!wq+s3&f zlj!0w#AQ>lV<CWJNyUx<G*Q-M#t&-_d~@K>bHod89?0*udFK)Fdft-12etcb1E<Tj z!XfK^?UOLs1vTotzOgDjY^VVoY7jQn0eQ-bp-Sl15Yypl^Te;_tZZ9zdUh=VmYl4) zo*nHoeaBA&#gT`!nB`|-*+N!o3KBv#Z^lK$(h2#F*hv<<&`>YoWy8x}Mqz^C6=p02 zvG~M;G5rFc@Zx>%+^D|)%GEDU)3zX`kJOSsIw3nx6)cgEE1oP9avnJW?##RwAK{ka z7MzEhhF@6A9%AL3+&4yq9cV9By?LTvx32A1iwRrTHH_Z!n8A3*a%Yk_ed*j^$A$#_ z%!K@|<?icxVe^G&+Ru1m)#EeVVVjthl9g?9xHNjmc?<SHFmRyY4cig`C|DNtTY>xP zRGT*EdvQbKU)QIlTwKL9XDb+%R>BO@ob3R&lVCBn&7@6(PPZ*XrV0DOEZG|OvLvqN zs-2URJqMaHleoyR2<C91VHu;TN$g<F@9=)VI`Lw>=fsMAdVT+gXia)7Z^6nd=S55N z+6@b~U;I&6lCk7<@ukL#=M30VBVMIJgFm;dzHw_xz8)=|G^isJVdh$&v7A=ZGc3th zN8V&66#Pueo6G<-hg7{$Olg1ajf#6G92fibJhXmA>#wdGk#?fglgM*l<fy%Y!Z%nl z#Wnu=?X1t#PQiYC^pI98CBtoW0_OvLw~~SyPGI&AA~0-@FSx;1V2Q_P0r|_y_2Bgd zjUFvJ{FivJt0nHt6OTrVv1{KQ+b8QKAEVt5?BFNN5F<?AG~1TZtughX848=}JDYqg z^!nf+ye_vWQl_wkk1)?L4`MdgFkkY9|LoB8y14Sp)8f>WqzM^|D@~U<n6Uxl-qjha z>96?U)c%T5P2Q;Q9t|QTRE#E`CVc~%DGGq7$v6}aQ9QI=JUK+e042+MZ%5F^m%rY$ z&0D<kM}Xf4%bz<V*oPy`9<Co|7Z<nd_`|z5FKTgPfsr>BaAVgxxxAFEm2mOr8i=EY z;q>*bBg{6;u45Et8RkgDIX<aU^_`<b-V}eBe<-7P`uH1M4Yqu4URwKZdAGC;$|*0# z=du;ZE`X2SQu4Uv%!17K&71oP_WI!V`X)axPdz~1#P@<YWbSV(duK&Y<c)o~yV(;H zf2*3Q+Za?g$PHaCcTubCnS=!ec?nYtQ=ru+8>X>-3F40SPbc;(x}aG4cAsS*`03;2 zJ#|}P-5H6AM{1x&D9`1PG)oM|h)Dkg6`MD&Bjg+MK}DOPNTTAkI}6)qKmGb5vG9d+ z>nHs=ynuIX+dKZ}jxYOBS2`6EqHaYt$%;x2q{Ho@mKD}wT7}E0B&PoU{(?OO!Wkm? zgVHSkg_4+>#QXOy-XDH8^se~9xMLm@mOpAM4oKcu)4phS9r4VY9ZW}ZmrfO+#z~cn z+?c3z;<3u(J#LMx{(%eKB$X^N0rQYbNG`!e8Ub`hkc*TC$RfK){cFA3^|qzCMX;OU zBANAFq>2-N=;u4Tv2GsQp%_Raos0?RdWCAll$>mevS==>G^|AUyuz@SjiiUz?cLY= z{%TwNKs4T;HEZMXzq*JIMxOm~SkGSbj7(2x%*L9GHFNY-@~}S1Z7b!bJaVC#j1*g) zrYEk9k)IM?GrabcQJ8L+DKWCw*9U$x7LAVP9QDVzt*x%KTXe&vatsJ`fx|abM<#qW zLV89OnlQIWnE_LD7DAIuNNXmACKf<>a%fU9>*N=cI<)^>%zt%h#`gDDZ56k?8TI;K zcbfJW>^aD)=Qzz#$bshj&-pzro`1Ze3(hh@)T#uz7gnlOB|$+@CBZ->m{ds+pb%M= z{My>*PN83L2B!~Co4T~6rVkiaPImM7Th>_t0btle(9(yDEX{Ke&_|@N1u?Jd+O%~G zAIJ?E?Z=RkJ!YIu{*RoqWw3bfa+RdHwG;IfC+I!0C<~4w^_(jja!!diWr8r<8x&MW z2s8vj%>)>lOKPUy(>)K@uHf^f7(Msh?DQ&wUgw?eexq(~j|ath+D<Eqk}X$9!`XRk zdxq3>LcYpYaD}3@9^kEg7sjMZGecNdW1*{|D`qz$4bhUg)M|NT&iw}wRmIPL_pCd< z_T!Dkw^pvnNv}DvIY%uc{rhIWP3%-pi<;z4YebkSd1p1kM#Z598JQG$R+tq*YAl8+ zmI8}`fL^2l^AK-b&c8Ke_lN7mMK@;q_Y}kLiA(DrJ?5PoT$SVY%Y!XH^=o;y^n}gm zgd*nbm&bAP6}B0+A*24DVV6Xzj1CJwj=LWoC4O=$Fy-WTvmY0~&H6aJa<da_jXNwm zrif<^d#1ngT|Ez`e0N%Q>SpEmyqO*`x$KvcH?4Tga*W&^7EuuMJ_YUnlpw+F0k@ao z9&kE)n51%f;*J<RZCX-(r|*0GON)e-VG>3%RvS&c)*@8JY$e!K##+gSWUy9}Ax&cT z6#*56Y2mG36}xY|w0-f&udnk_JMPo6aqi6YVcPZ`lW`+iu;U_My(R5h+fW<Y)zeUi zH6n<<+fru-{;{hzuiN8T-$v1Ouhev@Tdh4<-4y(B<-vH-9h-8q!=59ry0LK5a1x#U z%5a9^VG^&*_;i0-?<GHq<9qd+xjFdUPvTO)+Dm5bF%1<xCk#8Z%d6-k;gsdnB=Nf| zaUI$gwEIqFqCXgOciLywes<+zS)510?{}q#!>?gtMf&C`p{}7WsN-d5APqr>wbLxa zBPv!Cn?APw{LdF(N#kUC^LVXk^AFe5wae(Fq|aHilE}zrNAX$|I(P~94ENx+{bs;K zBAY|}zR{5dx7yzAB>KHQ@5{F)Pt1~9G(NICnnKKK1cMp{g2iqDt1IkYKDLK;u=E%) zxm=7m%rFdN6K5DM;Z*y=AnPFSZ?nZE>l(c3)3Nz$oC>GC4c8{N>#<+kzK&{B<xk}# zxjZzw`O{6%VVfvi*a+wy(q=|6_xVqj)Q%ZFSA4_cjdwQRH#QXPTM#a6(GM4<On>3f zoSbd`E~qIyA$z;-tbimj*@kTJM3x~>qK56AD}I$;`*yLoG5WKWL52%`I5j@4JR|hf zw4#9}H;FVvnfS1d(8$mTcF)`3Begm4iz~lB_<7DUaooijg&t$pw%~2%$BM1ZySM7j zs&F<WX(jdj4}EJN;eg=)yn+3O!wemh*sf{qz*w)1e~RO7#=rOY{=`vYv**s8{`kn; zCgOxo$2FK@oRc9Ov>cowMjfkGY1Mh3Gb&+yf6cZVFMjg&EEg)NGHVX+gkvmwCoG3# zzXqnbM&8L)KsROY<Zky%olO_|3==T*Mblq;$+KA-R<vsszuVWPaR{i!78ApgOD|^} zwfxHEnZ>s-zcFy@V<<=57tlaCadcp4)*|2MF18gt1FEiQH=$}<!QNj8!8KIRXXdMa z+@hw<x)AGvY%*~I0+6ei2hVUGEdZGdXp!tAR`mKPZBkv!B3YU6B}b%C*28UGZ;}>C z?XEws`o-#=_w|s_u#*E3Wg!Y^0zImm^j9**{{HZ+V}V#KdDa5~y+|l}h>Hi`?_lWj zzNdI5dsX%Q4G#SwR{7TxVLdKhg=a0VSJ5n`kv;2Qy6-#eyYM;pikKw8!Bl0iS_(;# zTR#deJ4&-*M*w{$J6DII23L<gb><y$!Qo>m2ZuMv5!XD784|I&_@ux+W6cT%8Q(R7 zzFyXT+Sg6>D6AL`hs2fvRc1?E4U3Pk*{~ThyUFm5B(p*HziU!hZ`c5F(5@qs9(*(R zFY#@ouzN@2N~^>dK7D&pt;?s1g{_vYS~pBax=Wi6$5q<DZ>kH@vQ)saE|XsK6q*{E zdKv{^gTJKLI!8Uoc{=*?2V&a=W4o*tVm{@1t>*ZHOS+tj_Hb!YUr@_3F$Xza2I*Wz za=H}IYFSR7%=`QC24^e3BA$NXo3rLtgOGn;0XbcvFQ<RM_)(O9wJ+h^m9_vA4Cj;- zU|i+SO_CD2_G}=RO_MoUfNX@Ohq&U*(U^)a=6xxSe(h%TSFb*HQw+=Rw{YaUb>HVi z<JwjaH7>o*c0l1A$p`ZH_Y!s+cEcn2z_3>uqbm;sTbzwZxF!lKFHAhvvTu>BM3{nS z3gi>ZCz3b9r{vr<uhkoTts>)KHbDUW6$+IQO8V=0K<#Ax)net9n(c<{Kgac#JPSzr zt2?~(?($N_@K!zMKi2H`@h&KEMrGY6xRl8ADWRpIC9Hmk0gG>#U$*N;QLPsB_f`|T z^gH|L+Z%s9#fhHr+>7HPO;@gHn=IJ}3sc1cx?yivn77c=&=b=TJq%cu#2Pm=K7Zor z{7%iqC;#@&ZPKCoc;5IIF9*+9xTDfCZR5HQn1k}LXwoWCnJA9@hobe6uipdm@1cDC zZa^Q>Kp4ftuRXnOZ=1du;*kl}<C`^k;+BywvQ<|3GFxvy0HboiG+WQmeRpv8!l9O5 zKGMTkqXDJ)rSgQFKEheUStz}44Hp>UJj6l2@4a^O$orE-Yt0pz3wHF26Tb=Bw)Mu( zsV9u*Ea$Yr#Cgkk-H@}>^D*ng$M2b<#aC~DrD(5A1KiKh4+9)y7$6Ps`1!)^;iGGu z7eAlt^L{(8zkBfk{=g@-;>EnVzq@Z-%4?Llc^{#pp(Dr?Zs;sEzi(}|YiHJ6Z7!}F z`N9>yyUTv&&GV34+q}eI%2+uv1Kcfg3HQ8&^@jCOD(ehyNiDV=I_=>0=O3>rM%{k@ zjlVnnbyRB6$Se?(YL*aSe?>3RQlZ=OuC28gI8$FDfE47Ef&M;18$%lqAk5HSLg&ND z?=0ICx%+^aw)}MeS8@l=;RI+`9RI_m%g;JlKIi8D-K<grVUS@^1EUaY7|QVR5bNC< zJYc1*{%NuL@p&IqE}Y~k9(d`yUkVN%$>xahi7+i)oFt!TLab(tjJ${}Aixhz;6GYK z=E+jHq((c#<aHK?5-hu^1k1^3f=3}yJxYipcs8D&Ek7@tODdP=`w5npL=Y@5h9g*B zu}HAIvXWqV`iEe7?H<AMIvIkOA?90Vj3-!*{|J_62npT*?X$roWhP}!#LC5~L&iLK z(Cy&odPL&}k|{+w+oeqCmp=XAD;zN#L9**(!>7^+J~3j^>bf7N_7_K;4`@*-bjB@l z>A=%HKV7zQzmXYCO=QFpQhHO{Jk_Cxt|EO(TCPOlt0R12_yW=7=Y|s!x9|6U^UBgS z1ueujZ#DTUXzA07W#MD_6-Fnf8i`(f{#_3NPA}FzkJ8khDEBAo2$u|((E3Hg6{+?3 zUC({}+lcNL#M@OoZhJnMv|4Wcy5%~x%4Ytl^-Y$`5B5Jg6Q$QWER}AeUzv=S{6zh5 zM7=u#@yKM@x5*TbOae4rjz?CvKhSV>i=%_Z_?<_$WmXLyCw2*Y>6<BDC;k+$OM-Sv zXr`!TSNYEAQQr<||5|4~q%}A@(aqr&md<RAg{y|ENYMOf_=%C!B=${NJEigYA7_ZK zURzXudZT+g#Kn(%lCJtbb4!f$4%xrE!Q!q0Bd=ybg^X~|_;z2;doiqzJA^5b<!+F@ zux1dhY9#?W-d+(<71_7;YgehGp;G$y;u=G}!%+<@E1ONKBaKyEN@Lk;1FkKnwB9(- zb7XXM(<*xCC_K+(lua0Fvuh3#y5`AUERv7#(C`o@;DNzzH%L^R+4JVq7yF+aA})^^ zvj6km{l69S+P%8uc9zFEaZRz`{AD$&?-W=XPUOiyRaT?nxS#g*+xMK4BUYlFC_N)w z(gcLJU^bZHI;0yc3~LXuK{wm0neX5HO{{l5I=s)=y1$F3I=5a@uwhOyHx*T<zZi8Q zer{PDE(cAyZ>XJaa3LdBLE{52xY*Kp(SS9<a<nq+q^W{$le%NYYn7^AeDq=?qu8pT zeZ9x_+M<j|Us4KFLr1#@3O)2!M+kz~w4(fxt`kZSa*a$m^QnU)N*5|5mLL(hz!dhX zfND}tOky+N7cctTCf*e5795H44f%PD`1#_|Q895o<Heb^=3I>J5->ynD-%15T$)s@ z@ze5eH~#D~_6t3ZR%1`gQ_8iT3dDaBh(1ZguLbC7nfM=^x^k;Z<YSk_KT`ZodVU*| zB(@It?Tb^@&tPeaENmJ~G5bL?AbLiK@3_)KUlB-0aG~t`f|A8;Y55Q0x-_WPG>Yp| z0cFT>-4E@z)m!je&39!Jz^71|`sZ7|$Q1B(G;Wc==+i1Mb<RWyZy7E$^MG|;ULchh zt@C;YP(4{yee&CxSNli3wOoARc=wcM8$MKm%|;+jBYB;dys(FmdTh<*nlCrYTH_We zuBu!xbMR&vv=vr2Gz6**X>~&bKuu)kTy<~lrmt>=uN4n@Cwu?PJLIN#N_>0l{I%!q zi8=LZbbGP>wtfPTrw(XVBgxu-@L$1$^6nPI==DL%oT?!%dBK-7;IvOJ3d0;l@ncs& zJ>~c@r0!s`uv1i&_-)0fS6`dgv7QmJJH_vs6}^~tqp3GNhUB~b^iWn9l6$_Gev$T0 z1Ozl@POt3tR$}vuY!F${N8Bc>AA;qDS_I2G1PGS*AQ3F@J!G)hHm}C68RE*idKhVm z$XT=;o+V_b4F<dotv?F`)Ik>Vh)Wl0pSw|QmU!`{7Ef8@-Z6+L?N5#DxH7@th^2_M z98t5L1=E@|wW&wb8Q*2Tx@YrioAr92xLPzlty(p$WOV}qpox|sH@bv2!z>20QqIcX zfA9F!jg8ViNA6AX+x0R6g)vh%eg0r>4Y#dJez{XlP2Wn%S@}W`tB|sN1%SrLV!mkO z<l;UV9af09+GQ4B6u(Lo5YkXsqlen@g$<^>^lpgjG?L_BN<Jt@%CR_E(R{Ef5okPu ztV%~fT?q|AJowhGMlCOHuP7ksqQFb9^&ci4-8CX*dSDp{;}B2g0xOeRWcQ@?E$WE^ z<agFWD%X;Ht^xFxET0`0-g^7ap>KW^H#9tddVb9|M~s*op!osK_GCm?6k+Kh{q9E% zgKkx<+on{cX|cO@cU2h^q|qQ`G$ly80qQLa#E?%%-h6T9r4Plvr*2RFc;?dGqTi*( zBbQu#Oi5>K|M5!4mm{~}OdL14TQ-`ie6otmF_^ETz1L|lX99Xt9?VvG*YAkEyUh|1 z5mQvGN0-qVc~3?q&%NfhaWWT97|5ZFp21Kdhlz?}pj1p`nFnaGOqRq`7kp2xo_bBJ z`h|7K&Gy&Mh?&h=zxl+Pel2AO@fq>{)WfTOdo_JLJ7NKcT0x5^+HfXL5{_+2Nbp0d zR62SJM~{zY1!3O)-VDr6^TTrUX82E9cAiiWW;GkejG@c|)3txGAESM~DHd0fNx*Lo zt}!M-eDL?EIUz4S_i`DV3~@Bcj>_?7Kh&`DFCd-C0z1Rpxz$;->_66iMUn4wR{}U? zv9WS^fO3w3lGm(=4fD-$g#+u!raW8|0L?TF#gz_dvndEydqCSvS-8+Aq)TIQrJ#2m z+s(ez@1xj%mA`k=89>xE2}HjNLQ>KU)22C-H66{R6Is(i)^sB4;P9LKMejy8|1%9U zf~KHl4M9Cb?zJgv-;|B|9`Nyka51`Mf-advmwX_aPjq>);)H3(-kn^tjOev;j5-~L zL1ZC_QKgkN%`j<_GgZP&1MFd@;Xoh^2!xqNV>lv`=YI9ptYuTn*esN0Netd16dXQo zoQ5EVD)xq^G+Z_`I?WV^D+AE0fL<kNHlW!Ay#eSAf>xLYV-_|I&#eTslA!f~))TY= z&;|yHZ+;%|%>D<{x0exhm1w$BjO{9Qrq~lAS6+%*Q0BozzKciMHl%EK5|zz>e7CK# zg+|%mCUWDiY+zKDZa8+K^P>rr*<R%Yh5Asmez;nJM#VxpE=J#FLJY1rK-+P5JKf!j zyL;*GN4WbD-Thne!5-D-c+Oz-#N`dBqR|HzE31Sh0+ozRwkzXqWx87(cdOIgnkcJD zW%)*bY%mVRb7PGexC#JGHulFA4`>PQE}^??aCZ&e-GsZF=<Ze2ca`e9j{2@seYa6| zo67D0gFA%5UEIA(cYnv--|6lHls%xbK9HwArnYD;7VI3$*cr!9493OuOt%4+yET>% zIKsKZDdB(|88RhdSfo&s^r5U0jUr!DEArLv3p~9&L73WgYWtZ4FCQ-uy>6Ylfa|uZ z8)*{id)D{C?|}Mfw0>Uwi6+6@#~aTy@@nLd-_S-;CZUOE6Fk!-wh7p_iLJ>bli=&) zi)WfX)zlZiAx%4*gl3-2@JzG*&0q|g<urpz4e$xTGl5=#s3$Nq5cLFm2IHCF*kIHX zYzsy`AwD5^re&R$z^7%amXRjmdC%wZ%<}`DPr+~A^T4N#ZyO9#o6c?en}m+O9RYXj z+!1hBpRRbfYed%=lhCtq&k+2E_v~X5`ZewcxL<fbz=OO8q3?s*59(zSvV5}ee0H5| zw3Xc|8*Sx!=Ay0K0l8=^H!l}$y<G3*0Fy9r=tPM5WS_}+eyZnGJTtZbRP<}Q&vcZ$ zR_8U;FvD{O%4ZCifp=$n%|;(*hs};Q32#(>qYi#!-#{N1^;k62BrJ|wY%vKdLsoV+ z39I5(0p1+388~l=-;!k#w)t%fGYQ+{w*x*IeiAr;9sf1pv%Y81)9>QH1N<=JA)fy; z{!hS2$oS#HJ9a^c$HmGT3Q@RX0ePd$o63BJAZ%@6g3uIYO{uJl(AeHZ0CnJF^}@x3 zttZNQQdta~<rpCnWiO!Y1uDycuw{@aX5)=)dLs{Ic~n-2Hwx*E(I^{DWpCi!H|X7B zyirVVEJWEtDqDs(meCt4QMQuGcH!M!vbgtxxHGH{pzHvZeS|kYqBoAB>?oC8M$MP$ zxhv?~73$j!Ja>bh`w3+~QJK-`Z8wtGRWkN~TEJ-7A4Az=R8|9fbZZz{e`}$v7M1x! zQ2mV<WgL9a2NzQYAt(!>vet-nS{uR1_O>W%OJ)6xzV?2kDq`_QEWI%VWkaYe9&g0c z8;K}Oq_QHsTSV`U#T#SkjR`25KxLEh#$<Y98p@_o*>b$QoZel7H`dS_>rl3i$~NJR zP4vcAlx?N5qsCrX*}^FK31(D2F)}VWj{Y8}{+>YD2`c-^*x3G)k#WQwQ0NX(=vS2e zN@aiGjX&s(KT-B4l{GW@;usk4raj2ygNxCsg~=0_51>p_e_W6id$uVa7i%}))D~9{ zK!qqPq_S;zZW}$f1BP>l2~q(Et1T|}+&+};V`ZDUa^ruW5nYxniY}{Zbuy<eyI33x z+?4qoCB?36UR3geO4?1?YNEvG{8$>tmS!arqO5mP&Ja>&9F*O0%BfL2J~N2@B6_~s z^73XoSN&!8*>zpaFdY}uZ)^NksJOS|-^TBb_#OD&8NU<1r{YiH_jLSe{GN+Hhu`z@ z=kfa}{t<rvivJ70$nwVHVvq+Q4}uy2YD7?DK#d9V1LQ|gGeFG<>Lg^?I|&7Nw>zNj z1oZ>dkDzoUGSY=2+|2=$Lr@W*B7%NEEk95#KLYxZpq~N#Owdh0Hwp5?_60v9tED-h z<^+WS3L~hmG0Wc9$gJ%kK!XTM0F*$`F^I-7BkS9zfIcPYOF&-|^cA452+BdckV76_ zE}&e3iU1W6Gz!ot2Ce6e%l~#()@6$>OOQpE#h{|gGAhw!qlD`M7SUzWTXb0mAi8dE za9N8Yx-4GMnZ9;eG^^}7R`%UFHmoXJkd&or%GLp8b-1#!Lz%2mW*n4MsIo&-NeC!Q zGL<z{N;*i1j+NzL%BFc`v%hk>gmS)!aukNLiCa1EMmecR*?pmGcvQBXD`!F|XMHHE zoRwvT$_YuzflbOeQ~X#h$8IF$=rrYoKE7hdAWkXz_3p!Js{+cXG0GHjBQ#|Zw{sA- z6%pT7Qrue+nr@}g^w*ZlK8h*67FWjRRk5E_lA)Dul3_fW98XP-N0Z~J$*m8D-Tku8 zl1XK3(rxgB+=gqo>1m$@tu%|Y(tJSk30e+lIYB$1m3EL;+6QPKK_3J9m>>ZTg<uST z7O4WL3PDc*dV-(==%NDBMdJXCBWMbsDFiKrE?P>uXf2?%1Z@VinV=gm#5asVsQDK_ zzYz2g&_jY^5F*D=h#Z5MB8EcbR(aOZU3w&^b5bdh1U?0lha&}~P@+XBc4gJ#T8h#; z!NYup!OjosJZykTNcKqvoZLAXu(`1rR^J?9?r#!oJ~ou+d*!3E`C<7zOhTb&p)Y=8 z3)AsiP&myb90)%E|MkPT58(|Q@jKGiBpi)93ixXKt9?wuwYY15Z~5MWPkTG=HegKE zh2z3I_Q$a%<#F=mo`m1~q=0wro+$IAvJfE>`$A(;))HkcsjQ6<gp_&&%G#o=EtS=S zr&5o6mWJ?D8k&F~4w&=B#r)`S_#)vf=(0z^?}#A(B+Aqta~#0V9*weSDvLG6AWUPv z&0v%brm}eWEb*pZC>xHl;Z!ymgD{!Qz*Lk?rLvi*Zzk0@3uUvYY$@7ZO6@L3*>Wmd zi~815ed|!Rj+Kc!X8vnyM)rv{d;m-F2h=$Z*GxeH@*HV~DO0q0jyeb94#MUgiaUhg zPvSno@3FXJ_`M!?9ltl?Zs7M$+#UShjk}9qOpC_hVo(i0H3+H=s5U`Q0eXs{R)AU& z^gN*F32FzZ9YO5@wI`?(y4#8JC!GOxCa620?gaG!)PtZQh>(X6afbpLN>C!8M1qn4 zB{4`Gdeghpx+(MiC?nBSI!Vbpx@I9+qTM+Q=^^qZ_{zbbN{ZbB3-*I>wFjA&LU%1S zjRUk6NUmi_ZsFp_|El(OixnSr?ANm}ziJsfpwe(|I=~Xn&K>X;T}}~j95vx`!i4MQ zVNuD>E9;n*#PkAwObtJqNIAVpIloKfXN)OlPAR9Qh{{oO%6>=Xd>7>`ExvbES){L= zHz@LrBg#35%JGfLE`5>ju@#k7LCS%y{7hWST%Wm!kmmW#gQlC;c^>pqv1f5(ld#Zd zA<7puUxX-oQQ9IKekUw?9TC6hV%%NfvjTTl_F0K2Y-Re&0!06wt59z5h&Z+*MZTQ` zPdLM@tQ*R@QCT$R8KOylb;sTAbhj_=_NBZ1P}Yyi(omL0W$7qOr?M=RWl>o+YRRTr za&R|??iS!~0o^S^SrL`ZMA=L#n}xDjR5lM~^Qf#CwG>k=^Ko}R-Cc^iOX==%lr5*S zZ7ADDWjj!|gUa@xY!8*~MJ;=&mVLOpkM17E-NSVEW0ZYNW#^&c&kLY2V*7Mlpco?h z7+fq07jajlyOoS-h~+_TMDH=U*j-=5%Dxnz`XRyQXJj-DLRk=%1tX3PHg-l?bKGrC zcSCVEl<tP1ER4!}qpUZT^+j1<DjSHhfm9ZYT4Je|LAX1J?heD<VRSbEWeHSfLz#`r z3Q$%+Wn)k_hRVjGma$aJINTjacPHWQB)U5VWmBkZG0GNG*;14(rLxs1TTNwaP|F&s zWi9TmrMnw(cO%{1jIzyCcF5?5{oahGM~&&Y7)_6ZYR8Fc*Kqe5-Ms^v-XWU)fxCau z-TI~goNvJ_Ze!Tb#wKvH{aM)0XHAT{ekk*!vgc6t9F+y*jbM6X4DODhyW??pJl&my zvPo1n8CGtx3E47OM^9X=z8SbXgYM2k*(@rXi?X>?HXmj4scZ?#mQdMJQy4UA6y9Bq zyUXeB8r)q&ch{k89hGfD*(NI6in6U#_8!XKqq1$NWgFG919x}O-QBpmo9^yI**;b# zHdqohE<EjBzcT7$_g0vl<qadOajqMPF8eVY+woj>;km9p6<wBJI#v(5EE;q@mq~P4 z(C1hm<+3bFbXk5Rx*VqDIG@AiSPs{P4UUuH_-?VzANYLG+$8L7u-hNMp}Qfydp!3b z*}vasKgtjI9soZch&uo;^MLID^35N5eu%pt`+SVMN1~4O$8Y=*I4DOwkD~md&qb79 z^11}y?^4JmXza_Lmr?$s&yOg->T{L-4!sJid^PXtIC!O=*Kqfy&rOuyio6wr-?&?7 z>$c}@lw&0%CLCxIqLNS#t0VnTRtXu%N~Gs1L#I_1*mG6!Tvd9mn&1ncmdQ{xI6c(_ z)P-Lgt_gr1#~Y8+8@2F8EqdcgAqpNZ`hnkgT+G?>#B-kXTmYU6pyvXSNevW&a5qqB zi;GD_5S|O7=UU*o7W7<*5CCtPdAuP)5-#|b_#KUF3ZRyFqb0o&hBw0KjW)=$wh;#7 zZW|#5R}P@Ic&;ry_dKNJc@yY^xj1N06YFmWly#u8aL9N#$yEgIM$p}^xZ9QPMx!j6 z%6g-$H<iVpEQZPkqHG|Q#X>q`O_8X1FzybfyTfpI7~LI?vf->uT-aw$^Or~LyH`f( zRC!BEIHYx(T#MPnWLQeRVb?B=*cz%9`xisO7DpE&G}_>|0in@`$PHka<9^2hACEi^ z_`ctL!1p8X1Gd){{Bbd*To*%JmxlPTG1h+An1rr;{A$$xg}<-)wv1g-d9JSBKAYxs zo)`2G`JOA~@I__KmIrodHOIvq)^Iqi;WWz|g=|(7dDXtd_J-DY>V&zBxT(mjmzrc+ z&}9<(IniYYiKy&wblKSGdg6rWvIgF90)flH1FpM=M3-&)qOy9}Wzn$f5?Ik?t)Zwa z<a1fS=X$=FvUo^Y;G%3X7Wt_{%H}|2os;8`RDMFSawM~In6z@@wQ^F3ayXZ$Y<T5o z;0#>nvksbSeZBS2z3W5QL;f~+Zh#fs<g*Fon|(KfnK#F6hDO?4uz3<98P6@a`<~Bx zxVtTK8+6vT_-)AFZ};4e^3Q!fNBI|CUqDNK(dvuN5DL%ZDF4dmE0mw~Imv#9o`gm` zX*)R)Ghm)y<L<XU-=h3%=d%!*vvFt9)_0!Yq5L<W-%x(9-aX)UFZ3R8yYG1)<qv!w zp!}ilL*Vu>?jfFkSnv?I{ptB9?qUhE4=y}`*|SJo{RxT(1Uxa1=820v_YAb(Go+`z zpjW*}4|)mh0rkM$x_GWGJ=XxwHK6AjLa#QY%tS-z)rO=c8wz6pO~)JFc*C3CcouIw zOK<oJJuo-N^r|oPs;`g-s41RnO3y{W(~ThY5Dh;#n*87x_`xyc2amwr5p*{jceCkk zA?_B^-E(N;9JO%)^<AL)E}`ram0gA>ewi%P72Lf-cdz5_b-Mc#%6_7<rkMV2YGjro z7}MXul$L63?2oyx;VA2ayM5?xEbhkA-FV!Mr@IH?g&rg?^f0{8!{mh?LD>;1JBrEi zqs9o-@(J#KLU+Hw-7o0w36!0nvQ+5!RPw;mq2trZE3=@?LS>n-3YlbEvT-+??%HtI zMt2KQR!BbE(%mZ(Ha>fLY5CQa))*-Nl5Bu$Ues?%+!C<w(zvDgT^+X?ziZ;w;1_EE z8{=Zexd)&g1oa2hpCB`cZzdMY1(ZwBC_tkKnvLgX({l>|Eg)zGpcMq|#B)38x&46l z6LbX75rQrVu^9d&v}=IlZy?vcGN8%?)dW<Npk^R`Gn)Er0jLE*Z2+|)C<YUXF*G!T z0SzW-IH2JK72>%<dTu<R@dQl;G?k!bcy1Xz_b)*IB4`VsEd*T$>s+UB<SwAQ1U&%s zfS?wp6ig`Q0Q;S=Jv%A4vkTBJg7yR2PtXBC2gouR7UXqZxAM)bG7h!cJy%RU&qk{Y z*oY%#mTy?KN}DpPyvKJBG|isKJ<ueVeJ=yP9C?{(mCEq+D$_i5Wg!v}D+_|u29eYT z2~mIspe#jD)}+ZR+|XDjL(Q5MaeNPELep?zI|ZJUmY-RarFC|AAnY4B#kiJK6U0$V zZfzWYVx0-8+yq)@n3j`l!MAA>@IU)E@=MK|VEG??P^g4w{IDMcYwGc(*k;~wk9m8u z#evcylV%ACN%>|AzPOZNPQ+1#a^-T}w1^N3wwkf$;chhZ>(ng3o0bpyvC0CdHt(|j z=V;Y$AQEt_pF=9t#1(<f8w`4}g3W-#>hbZRW>@d!Y_Iy<ai9rDLfdg{&zCzMs_J-2 zkCnUcIVrp<>OQ7esr$^I`8WFyI_Z$0D>~k_LKH~Apl%gL%OrT`!t+O4efq?gG70#w zW0kAi`v9ljJ3Zm2JK`-uOBnJTtESs5mCXAsb(=9xx&Bl03GX+W4{RX~eJAv`Q-${E zH-oxVm@D^t<AWz(etOf}RaHYjI>DS}WncVcd*GcIo@1?fMjrIe&ODEY&CdOoK0lb7 zfO{&r0Ed>1yU{a*4yaY)R28CrlC*Rtk%6@QvkLj12x&L4EH+`FSQv>7gW6S?B-3tt z@8}6Xj+*#_igr$<3vyx_QYmVrv0z!!7XQ`6WBf*g?Kem!SxXSAWrc9C8-qeC<j5qm z-D~nv=BS)1uHy$r^Kqh<notn0GLcC24(Bmq7zc_>sg_H+7|&q}m#bv}5|d$BH|b?b zz=F}w;0mqKV+OUTut@H4$oE$kPW*XBdmScWn-I`#cT7V26#fa5r10L8<$)q7tBA4Q zvK72eB1VY(BN0<7bPNIKl4n7wXNgM~<fm}S;lrk>SreK}SJTW%--2%L?UAIoOSDJ- z=QXopl{=vC9mpgxsAGj<nRE8Fym>Ea!hjlDS&^Bh1X-bBDyOVSL(7NVF-qkU6gJA( z*+4?VCinD(q!BvUh=hbeO)AWhyZY7rcP5<q-13WRz`2E?&61^9A!$Qp$%-^Z-wMIC z`M1nanpQ?6EdG&<Fi!<)N~w^WA#BZ)6>2@us~*`P1~sfOPNrOq$vrcMJacZUigL0I z;)HXfUL=g&s+a#B(#ebqw~?!tr$MQwNxd-0OHnUtx5p<={h{Vt8o}b^(ibd=QY8qM z3ymZrMDK78qtSJsST5OOejsBIY;oa62))!ZLQkTfPm+8wsJ3E+e%=2}*o@fE`|5Cs ztWVr=2`LD-TvCF3S$XgOp%GH#K_;lAsVFKcr=Q2jr**P9lT-nrst}Vfs9J?AS+LHY z>b<Jfsc}72BpaQOT4c*hOqM)j>6;YLOyN#$3v=@H9@Vu)Y&(`S^)#(OLs1AKhewiz zm7J||Gm#Wfs3V1PIYRR5#EIk|D4$=mn$Zux@;X*ZeR6cHSVYlO(=M9&z?Wi>M}-OU zm=rd&JgnKf@paXhC_}<{gAGYb7P7S084{f*{S>Cw2J2+NoMLr8DAW!cVj2+glw`5S z&=6~~<i|e=*d-y?8qq=JrzyjR;fMSIkNa<ciZ@KXKu-qUG!@D8to+^BE>%Ze+peOg z!nl(5%1Hq=!*r<W@?1&W?V=oILMqx(&D}~6EC>JpggyT``58ZQJqwa3+|8_TIb((r zS^EM8;DRX{L&2cSCeGTQ{q^^xI=@<dRYSoURy7j3F0Y25z_kRXhJ^l?js@dr!XB3W zKQ#{DfcoE<SRRN$=ag}1@#DOENplL1s>Z>=>LmL))>1`6eoj{;pj%4N_jF3ELmIT^ z>fh5WjH|IWm-(w`-@(|{@-w!Mdifj_{G522K_^TFvU+*{#rxI$Q=8|?wB&s1prUh5 z&FKl(oZ9~l#LLf;^1nD)>E9wB&&(YH%?_DZW{yE0n|M-|e>PrXemZuNXSBDO#$lz+ zB+6(@TdOBIWwdu9qrH<d+Vg^z{Lx|Sqd)W*nvOwGjHY`(hDMF-Ye{Tfq8~%A{%<y! zPMmEugH_7U+<F<~+ZdJG<cu)r7sYt;-2>d*V#=Ynp;j%La@dAhmu;pDd4Sjkt&H{3 zRKpIeCf{MQVXA>Iip2ZOox|&W9pf8~SNh1WvsG1nlvS)!HM?-O#4b}7s<G9IjZ9tt z%}fx0&nKuRD|}U^+xfPucu8)9ljHM0G)ck5VIaKlffYg_4h$MpAx~B&d~Gnug`w4m z!#q<smIg->xuj*nk;<xNMlN=`LJF>oYV34{akwUdaQtg(I`TCWLpKwPHrR}jbeuts zlYGrKEy8y76{v>qKa<%2(_xGcJUxjIW@4fHOl-Q4Dq;)QV>e3!I1AO!G8LeLSFRO5 zHfie7IuagqDhlU=e9T<s%QIKf0Ra|~pI#tUQv^9LB01-~T4X%ffk_HG=9_w<p8kY} zw1=?2%#MXXqma<xD;DrR*pZ>3uw$kv8k58lJ4zGAeMG)~MM5JN?3hdJ$T#Tek|Q3K z#A8iABZsu!e}GJm;lN`!;la21=~fVnag3GaO4>w_Ay+UM6%3{d_^C;#08Rt?(aBJ~ zI*mpYu#AHIvF4?fI9bXXA*mnTF|6HbSozjNT{NOFtWol?O8Xo5uto!oXhMU3j@1>7 zaIj#wti7eBL6e-&=ma!65gPpKuDWQ1gFV7!_K>z-SY&EM0F4MjgRf9>MI#ha6DmuM zv{orngN6|c(UNebLu$fIV{lCbxAIlqs87~f$~<c@c4h>dIum)N^{btov{nm~4U^HM zQ4QaoCHISt_u|U)4`US8&Gw>tq<yo!WN!Tv`*Z&^w#WNcuK{b`Jk@R%(|Sy6CFG^1 z<R_;l<YmJ=Cs<k3;yO?3^o+w%#>_&O0Pp^)=~_K!S$f?n&4*I-r%lL|GaToUhQqsM zIgN5eJgyZm_gLefm9IXEoVu_&2<k7V9&5tv)ikkLV+MJe_>}24JBBuYY0giz_!x}l zgFxihSROV+n%mg$in=`LL{SD+HcgTB{G&f&yG%c0=cy|060*5S9A$}dEy-z=pK!Hm zdSj`n7L4q0yIp6X%P}NU*oP?cKNp0m+|7SK4CO}lE0Fvv@;MoF+QhTTzwKLcE#u24 z>hmGhjHo&@su4P?D&}OO^#98d5<pCj5_<Pei0a>WV4ui@E(7}~M0W4rwab9+efvl= zhIWsdcDo0gF=UWn;xmR~=P6^JY7+c_4T7w)NTR&dzMSfYVE-NO|L(!Q>d2r+9$c0J zo=bkhXW+<ld^i;ml+`4QWJA=oYUGqZB>VfiO42!$m35>%`NlMq%Yv4&i<8Ui<x`OS zb=G@jLZzG`o0B$`<l0q5-UZq3dUVDBFzB8KpTax)#gE@j>KfC{WdN*<^lnrnZVUGF zsO!83bA=gn*@Le;@R?!y?&z5r?NBRMT}~tGCPyJNjx@N4V3k=jwfRG}`XgKFx)q5+ z<r^qD?M4X?xljLeyril$(+yf<_8BPonFq_iG3dC*blL3qY_71a+1jfwxuI#vsZcFV zQ%a<%Oa4uIv5ae=%1u;CW|lCkST4^%MODfwJ9`LwLCU>ER0bVTh}zvUszvUNzgMb= z$~78ssJ}}0a87nSpz_aD7UlmOYcgHHS}%VVl53H2EW_ZQgm)=MWE}{;&Z8~(nL!&B z(gz(mV_TYgIYILKHR1ARIR2Yu$6q?4FH#fT8nLr01s4mKw<1>AO5yU$@B6NscXm^Z zJeD%c(=d8F4Wn|8`C^^_uNb@ks9FhZQBLV`?+2{Jz^(Ma_l5CW)4o<2!Y^;Ve*V=d zLDiio&eTvz6i?Bi`2Q!APPs{5irCBorDqY%8T6*d4A~6SS{`sQ(L2=$nv;tQyPB9a zB2|hgT^wM?U5Cnt_v`#J4@y-Jc?Xop6U_3@1X44}HI$%ZGJ5>H6uq#ywJ{po3ZyKJ zbi7s{Ic#og48svy;Ru`8_1NC@tyfR9mNc10E8H;_VBhK(in^setYe&__q)c?SYAE> z)jVSjzP#_=U!TjIDS3_Z$~%_q1&6AmZ?4+;k{;>wUB&Ux&b{JcmqfC(XjHperyRPJ zIf67%E90xe^q;L7b*_+mE1FfK{zzZ?(~2Di1uCmX`B$-3W2hwRGNE`g<@}a(02t33 zXCtGNO&OgAE!wYmDEwtn5ud(_Eag7<_ZTq*x|85IH`k_p(qU$uJV2LWVDILngyiP( z0hQMz{F}43jGAmsFSC*~`sFvUG;iye^>+48x)`zK*~sR<85CvY(jNcGjg(poI&R_u z%Y6^>&RwM4ao0gI*Kk+gZ+5%H|9?CpVw6T!MDk?VKbQo|o?SVRQSwD4>N47Oa0bfk z3@I}Pedn=2R%QpgTH?+;@o2O(?3%>4FFu;&D-0)PByI5;?v!!%6JE!OXmg>A_&HO& z8_4($<f+6P*dlTRTW?v$S31^^rxJe>a<D~<<=^=USbFdK3K75~O2&g70~saj)TVg9 zDZS5+o0H$yP5`V$#(S-t@s>`c;Ti9B5a@Lz(0-rP&OdtN#wwLSOWy*P<y1as8xpNQ zL#GmHekQl1TgxQRRu_4ew<55)R$9<fc8(yYm5a079VgvbPS2?n!7he47aQ3^AqFi} z1Uo$Fr7Iu3zw|kWU`tk<Mcs{6-m09&l5hGA@>VU!R~d5I2~ZLu$_fi6{&=TE{%5w_ z45l}GgaAhgIxVw5|4yNb?>ftT+cTyo%^Bes)>w((dS~>`0k6Ji@A}+#BU^^aw8h9v zJd&D&Pex1WQD?*J@(gnkojAkAMZ`<_xw#=OfvH+amoweXctc_hWmO+%jeoSh#-X;D zZ>SCOPk|Xu8Ck}fLEjj8kk7yH0+PefKv8t&Q$tVUz_BNVJQ8&2jDS4loC;}bsJ1W% zM=~wIAn*^*sRpi-JaB_T28FRYa9VB{4V-cC@WE--gdxL+;8&bKV^x)N*9Wt75I3RB zbgS$!h7l~<R>h(vKj^SRPQ$5ZxM8<3qP(*I7Q_9DP}Ba3&;tX>peX`3+(W;g^6Kgu zVGEdi^Nj)W#0<!%$*VctcAXxOY+nhJ-fky*B&Pefw&wAKd~djjy=m5)L4B23Z~nOw zSB`B1ZfzqJ5ywhrN)$P9Y&&5A4hLHXzT?~NrCQXM_Mzn=F+H|<=V>kMqiK&`$EyJy z?3vX&z2%QrVGtlPgSg1tF-9O@kZhxLQg@Vc61yZazhH~<FUBy`()#Bnfw#|(iIou0 z#2uH>hs(k^>W6e%(Kx5L;|ECI4<vb;wsm<jBWaPy)jE&Acz}hmSF1lw1m}20uup+X zp5npu1A|`k;0u=cp|U`eafQ~DPsZ%=WO?>jI+!j?o^729Q$CeUIsXop)K4|Fs^LhJ zYC>D;rgVTwTc_cw0Ton3$OE+or8L@;oOAZJREv7J5a1=@N~db1edOudVZ-@Ln5s3h zsoMMZF5Vx0HuSD5G9f@D1g;Hpi=?wmBAk$U9>_dT$oLOf5n%M{d03^hG~P){DeIu2 z-_#0@egCB#-pT*IXhZG~w?T5~_Mdf6qG5fa$vt6EPsKgC_+o6^=(VkQW{0aN$5vbC zIZmf1%BRF!thjT$_K)?LWYXp6fvd9aP+;9@rzwMaR^W?``Ek=~;p!wWlo=K_ESzy8 z&dCgygeqZp0<)O>#1Mxl43ZbeJPdu<p1p!&D%xvB;4jNxOp5p?${eqD=Id&_5E6I^ z(s~%_M2h~}DsVEz09->+jo;hzzI<!)#4Oip?nT|B$O1=a^wPe5zyJNgc$J@AEB9El z$YC<FHIwCRjdV~s&(=&swq_b-YxrqTQq#~T%1V|HAqRq6APX=%f~derfLkFxYDMu8 zKZeE80ls46UckK&Rs~J~332K`=zX@zf}bFzAkdd9|5#HL7UD>Om2|RDFDC?sLR}7} zB|$?QzZvl89UI@rCMDD)bxafb&a(j82PmWIvOWWjjEmDs@0H5z<%(vw!^)gZYErf9 zhRp*0qsp8#&p+^f-TA(aV9^@UgaCt{Rpx>dwytX!z2z~3GM3!;y_Io`R=VL-t{m+c z-kE);7+i4h#QTlX9+}vp0Omg`4yzn=u$W41b#<R{4mwzH>Ev?pm_xfWUYi&yf6PH6 z_@7?+>>6?W4gLN%MH~zgJf_J(9zOsdR98HTfwI!O)%F&dU>w*RAt}AvIk#Cxf`9J? zFG)U^BKLi;#Hx?H#7g?=NoS4EWyG;xNx0aWtr)D?ilH@I{QI^pLw|L`)hSE?;GniC z+M&Nb`#KwXeg>2Drp6QT!U;HD0!2Ic%g*-+)9MiD&oEpp?fli8m2GQI&#om^qjCRg z7>DEF$u!br(jk;-PVQe#V-ZeR8HZ~4X9ZA=3o)<8T&0j1Cn3vg@vh}uW5gU)ob%B$ z<4zoqxtF~thx0Ud<);^FNg4=~<C;Lfl!+{sL@0H7ygUknv95L#0Gk1pjCFaHk854( zwPNMSrBjNB{gjyVpqyV@=$^J7VeqgS6t2hv|DLrAD_)AYM4<#u6pYfc;^hICnH_Gv z^W3}p>%~>an-B^O4=puK!10yD$@1aAQ#9*;1$;%S7#BO>g`W(mAi!m7cff8khBziM zM2o<l&^^o;Mm4CuaDSgcnGynOYy1%o75oUtPeGFKmwjC+MI)60j%6K#i#g?eS~rNO zk<%_3?C8iRLxbur?y+*?r(!*pw{_B-(tPXxT`6YPKki#g`y{kRtL%c{V0iZ|_azwZ zOIifQpi@ekdE}=fiWmL;%ZIW8P|O$2lt}rO63rKX#@T$q#{EwxS!DD%P5=FP#np(7 zLyl#fz`|k%y)5vwnYHGM%mq98#Yr-wwgPASpB>ED9%su9)@uKAQ_jr*yYtUE;8mu1 zH7;;GT;O=w1(v?<!(HG+V_SUTCj#&DBdw*THBv9ayofm7o=Kf_q;a^D<uJf<7|3#X zP8fD*msin8jvnw>;N+x}(^(ZbFK@cG2d8GAVkU52(xyheKW)8K2ZKLgyZ(@Emvq># zv+a6-DboiuWqNOMK-ZsAlh(<@$cRB<v?|9h@uJ?Woz9bG52ACdu9?68q7?sWu;OWf z&D}BRTO|d^PoQ)RDGzH-W}GC476&2bI1TBPQ;aG3H;C}6iywh3aC=<RDt75h37zFM zk0*jIPnz=KUs#bVP;>Rkn3Lp(;0t7O>i+ATubCgx=B*}Q1ucDgu>)Vuf?q^_(Sxxd z4s`6H#rJss<1CKk-;%_uY%MdH9{FsuG_2)Glh^V{pOuW%><}^H#J?0=Y%NbZ*7Bs& zS{{Dpu!M`+ls$>K_eo5?F`<%9%^j*WhRA_W!^KjA{3K<US`K6!paH;{!cGyz!D$EC zoBV`$=}jip%3hPnrXI+$#SjA0;np!uQvE7+JiKaR5kCJ$E2?qwlZz1>7sKYVZb;un z9OGn>=i|8E`2t(aAgsJF@mR~gMM^h#V6;1OH;oI9Ozxp2!kz(pm`n0)*2m$Mo1IuI zy~)Of59zk7Z8p|8&hE5nhjhoB9c&JPpY-pb0MBdSn99z$q6v5D2>WO!3iN>M-9un` z)hjbT-JjNb$&U^Ucr_<moup(V&IE0%#o)B%G$Y=Fk!OD#*0a|<2L>GZl|?Hl9gCy( zol>!@7p-Pno;F5*wlc_Yp$}f=N}bPKWk+RGQUIR?lxJFVC*@AZJ6*zF`eusPi9hiU zcvz#zCz~c>$fwCe&OReMO|u@2eK2$pF4lCFe?1Y_<Kor+sK#l?V-fDeq9!)v(q|wi zIt}>{IDtdR3FKcRlRH3pULKVpOWPk8nKk@npHCSqD}cwL03Ig=z)zw@1uQLqk>_;B zS*7i9N%})N&lDf3k`Mcp(&CMgTWw6a)ujVZ_xyC(#{E(?#6Qwjr6ZOjl$OW2+fMUP zpUnA$@lU&^wF6_lHZpPo0cu}*^FXTuH10Un+bO|($a08{`&%p5<fPY}*jzc9F*!Xk z&l~yuE`|mT*fy!Iqq|OERO}kpb%KE~j;a_{4R7vf|8!!%q6=2#P0atJ<xU1KFZSM) z&?%IVn^JE|`z`d|)Rd{vJ7V{Zm$ok+`So=*wL8l(aB^&N9BT}p!-<oqoSKo!W;*#N zwB(nVish4RJzMppF5**_ZROd~;k{Y1kbiwcB8r;F=7r58M*&}+aB>og+ZHoF<MO2S z5!>qxtpkqcZn<N^Ks%u%uWsbGxr?ryRAqX)1UKF7lv3H<Vwz0VZa^yM0$~;tvI<zA zxm#K8WR%vcclhcO#J3PVhFvC)(Pke8RX6eV@%*5Dg^hVMcFFHj5aSCRGasbYy_Z8T zvuKQe|4hXneAUOw$d#nG@uAQj5`V19TE%wU4w?Jg%HCPg6J7ZOUuS5KOOjgYYYonO z*BY9N@Vz6JhNymg-UpQnCwZ!x=IU=ypFy;{5#LE2AkY713<f(7$r!?znt$O<^(JTP zZ2#=$ti$-KYI6zc+_YQ^-r-+vaUiXznqXrjjufW8;xGF!M-L}U(E_C{jBQcP=W~7D zZ|C)QFICeV>3%W&$YsHYUS*f%g^U*%y7kUShxZv<_jmanQj=V8%>&Fs8NT>-)ld># zV@5^>UK*J(lD*o&n&095es$tqv0fChhys0l>?KNz?b3{;?A0}fdWWMLR*sZjRVhV$ z5}-3K$udfx2#D7529AgwfQ#8?{&`6??uv>JfqD-?&<_0ZmwovvURLofq2gPTis#?? zlPgdwppIc3Nt@ssy5Z7TbxP^PG#&pqgn~L}=d0;gY1=8ji;$&7`TCUW%q9K&ch9=x zYd_vt)fyk3uKl}`F~awG2TME^l@$ec?v~Y!F*W}*HQscxh_4Hw_%t->Wcf4E?VT** zEI2{4$O)?3v_i#i@6<j9UBL3U%&cqmASKImj~~(KL#LdX)4~LOjaX{ZOwuLg)Nayh z6K(#i+{cG-?Zy*iTCH{jd4?k%><keG9a9!=FKm3_i+w(;voyq{HAeER2TPf^Dmn4U zpVFouwFU;G<U-B=$1;%G!RU=4=<N}S!C+87k90W$pSJvT|5tJc&e4&qHUrv_4#O9* zhe~qXE~_1rDgMn!)jM2I<BPpvxJdr-mwmxk)&cl(&v0DK5#e79SKfzv#iu%F2hDE9 z6c0Xi-Aeg3Ik`)3G<d@YFY^yyDle<nGmb^ZVXT~SkUn{wCLxYb9*5y#$#(udUHN^j zbK3?gw2iDnrSJPi%bKq(G+$fNd`s3fc-5z4^VifBaJ4@yb{P3<_>`gSuO(z8Fs;36 z<O^5)?k@XTg*8`T9S3wIGUH?8GMPJNbz)@ZpCH3KU}xs9DW+{KOxsx5v`OE2ayD(_ zVcN!%X&Za}+i}L{lX+@Ibygh2OudSiX*She*>iJQe(o$+>Q|W0q}3_qnUZ2}vtxLe zT7k0GKf|vAX3Z<m8Ga0^RN-}*kvBB{b$wdO#Z?lu)OIlt0~#nuEB~br*YwdE8G8`U zun!XAKy&`x52+S)E@87}GsPVE8imtRpsmxkvZ&qk*GpT1Z;xJ|kPz85s?)$;0}`V8 zBy<`up#KXRI=kEjs);sRo;fMsmYR^jmYyYA3KK_JF%}k_qn?m}1(XR{*(s?>`6Hx% z*b?(bq}uRo<HUj@j9N-=V`(pXt(vv4UlzZIi6~EbhIqzC2wtIHLn8$5P;dPDhWg?+ zAT$8KA)z7o4T}g%i4ejg!tom!5sBX(5k2r56A^>o*oavC#zn;8Hz^_szv&U__{|E< z!n?LGTU>-NA$&qogfKaDGD@b0PRH-8pjrJRaE3*N>bOE81abIV?FQAZewgia)7nj1 zO0HRurm>e+CB?5*@Ba^H`L$~O2PpF&Xb&udu6yv+B>W>;iZpOn3zE<rS137m(g&SF zU8Erl(!g}(hKA=)&#&3$h$N5dh!Lx{({Yj4hQI7PlUYuaO6!qNSWo!`-)*V01OM1n z8`bcH2;b6C+rKvX^|kBNmi_vt!=H{s)BL;5s&{w*v$_9f^7uAKY?eGeVN1>ymP6#< zXP4h0)z0loa#%7MC4631UP6;PJe3)vsN3(q@pq@cj^ZUIN~AcX?BV*T^^~l^cWIm! zux#kRfh8W-6#LCzR-^h(*H<4-c{qbn7$1h2p-pc*n)8SyDC%G6wZH8XSJY>ttFqXt zr30npyZMtk`EI5`oo2%Ri`Ed(dE8oFuM7^a?7>pq463U5ll=4DI;`@r|3hMxhY=5D zR{1mMPsS?zqvWc0xC_%Yv?~P#U46Q?mjjBFD1<NFQo6Aq#x(Q9=M{4NZ^C7X9Sn|% z?AN`|fd1Y4Bt&b~yz5<|dd=!k&+J#WS;qUbW^FwFR~Lza)bh15ekDzq;;Wu1+AwhS z?A2`Eg@3_arvr@w8qrj3Bd<mwlKayny-60{88V=7Qk6GzJE$FRWxfw*m$5bS%=dP` zzM4PiaKF`Ij6T<~#q$5rg)6X<T310mUtjL6I&7hy=1iBm#+vrJMz*k;K@E%<@_@~( zHRob%mw+MCfT^8~YQjXMLZvLN^tHWdPHMF}*6CKKb-Lfjzr8PObi*%H<DeW+pnHZ3 z)0(O$_(n<9v^P^-&eASf(o$D^Nj)!j`1qgPt$@*#EJK-(;aApKl(y1hF;vB34|aSY zgO)2hSwEco&azFByASY|F_v5bv<YiNrlO5+8##7qm(q@j{vq#V?|*rRK=c(m#%&UE z+JkY$lUZ$uEm45w(8C*%gEvJE<8H>k_xS$AQS$qm(BnY=1Ei_&33EB0{$b9COjBK} zRQ2Mc7aJMzl5C&&L>|5<HUJj|5BSTzH8xahZ0ttHku)21cf(^leV-5hRS);Qz<aN} zKw~e~egc+pKY&T(1LO*fyEvoJW6atXs`q&S(<r(TIoFLs8_6@&O{O$qS(`;SX8ZRP z!|$oyQRo$mP%Tyt)nYNr4Onh-2xhm3(Cl`HwbLxaBPv!?z0b#}u76$f8|v1nEBg)g z)9SN)Apedu-T}GPDs@r8qA_fE@Bw9~t-DKRFJUV6&ikI`ykEB|r;(`lHkY_7%H?by z@P?cpQl&JUj{quVfAb`;>Ll6|B|%@w>ZfzmgPf<MFMpszkfwf3gIMpHKGifxB4o3a zW{hdiyxGBYBzNgli6Cl~6$0i6!8%yHg}?0coUc2ntX9|}(TcW6Tzsj;Q`We53`#AE zKiLKh*hb!qD1F9rxKl0d&_+92Ys)`ODAl5lt{^XYxQYlF>FahyPQ2U*)ik1NewcqK zqj>uG8!9qzUYy-yHcgJs4x1e#k>QQ>H<<0?ANH1-)&$eB2&QA@U|Rb0vU4y!7ze8j zri0ZEy!72K1&5E|7&WVTL{@5wxAXMSpn^ffWrGF}8Y4{)4X!x28W4El)3+DZx_qkG z(RV(fxOvKEau)H0Lnmi(>zu93Su}0U{nVT`qo2lJsKRcTZ0999lEqLx!)=DnM~Iy5 zhP0g=pLT)(v2c`>9Z&I<VFrfTW=aCc_^Pq^N1uOiu27kc!D&U(Sy9!I3aCz-$r<#7 z^7)4b-E6OBzJK#Kr4yv)rPC+Pp=R>)%#F?M<rMw!3`7JYhmT}&!ELKK_uB6K$K+1P zC!%SOgjF971!D0NsZ|fLB#JhJ0td-uZIq^RHgvQB4K#G#P$=2zf3T%W-dresw+1LA zIL=M`_s@dmTN{4B<kb%*cFYrlt|<o{N6&pXJH5)F*X2=Qa|K*p1ET}Ub_9k7%C;kT zN-(n>@tzYa_UZNgAF6k_?N}7ID2Wt#k3~t6j4#ew%o1jYUweAn-Zp(RRPXRO6JNIL zg{wd5mp%AmFkso<>_Zg0kB*!ze!X_h@m^=bHF72|c4fzkIIqN)-7?bi%x@FyUQpa# zw7Q%@4V4h3?SipgRtqtosxadeXd2m+rl^{RG?l00noVpr4ZUgIKeS%fPpx;!*eH%V z1e08F9jSMDrmPF|{?oghnZ&BTL&gR6AFj&dIw%aEYvU_?`PAuJta@5Yi}Dz>Uf?Us zGp~IAdsgh;S5#xEyEMPFScf(at5!Of9_!G~;Qwf_Be~k@#OS{p?Kp)y9$;1v4;Jn) zsG^5O_BYl%j2RNKy7(m6*2$T|w^fU9jU#zFiXC@=wQ;Kbm~jp+X1`8#ZoQ;n!<^z0 zjiz~wnO3Hl<INK#qnS}LgBi`O6>hI<F>n9Jx}&H%%ftOB@(1-JR@O6T69_^2&!6PM zg@Um&HTn+@@^Fa4|0?fFz-zkNwR41+=c0(Y<S|P^-I_uTQBxvns+ekwAR-Y$%#;d$ zsiZ`LR+N%7NVrr}sz{VdwKX(`Kk7H6rhDtBv_0+re&1eupS{=FnMgdh&+YS^lef;= z>#VcZ`sQza%fvx49278|j{_4LsU@f$$eLBDwM&Yb9_`-5o%Lw<>h401ZZp0O>CvIS zmv=1rZPZM`u?)fOkUk;INJH9%3{b)&q3?#ihljQ%Cfwh9+V|GT$ulNS8Xp`mi8W!W zcT-yn=NUgD2GvVv#}Z3*NZ?i<nLbHVM_}SpWWiP2Qf$8WQq+O43Slj*maqzQ)cdoR z{&*mK>d)P6_I<1+)WxEBbF3)d9E;c$u(Xdqgs1aEKB*P;?UT7a%`4UrbE1!VFKn@p z!&VDxE%Z?2%A$Zpluz_Oy{>h2y4ugr{?(fKb_+47TUItT@z<5G^wqbKAA6hgWA~Pv z_(9gHDRsrn24z39>PPvQ*`P^zo!RgT;h5R*3iH&N?LT(gvietUL?}NGf?YlTeADe_ zJ7Nwu8{TYZv<I>RvS?y%J=oA;TD8^DVloZR+K?6@JewgkLOjF<^ADvk+T0^E)}9*n z_-zN7Xg_8vYr=M!DB9#zCKmYFT9y9A;0sYG4hH!TW}!%Em?jjfPi>XDqW!}lj6ktb z)q}J4;sE;TGi@Ub38PYLO17f&oGU^<vqo#+go+j51Kr<;tpGy4+Wo!PlULt~Dbtd! z&oeX4!JhQjdzm+}*uo(i!;8|LorD%?r{Zh;aO9zNR+yK@6?D<;mCaVND|Th|m2Spp zc7%TfZD@~~9cq<I3GSiLk3RYUZ_ZS_f?2{AfrkcIvWTtlC|cR0*y7Qp2BEe52HLw( zL&XVg6WGd0Xp|tG1Ku65o9J-%m1eD-+eX||9%cJTBv}qjW!F+_k5nni`Q-AG6!4s5 zTf6u|t4^?J<$x!on?YSRYk+SmfUqaUMyKGu=$Yf*4xSb?GIY||;E4!~VgQOLs92#Q zia+8V)5l89pmiSWMtE8_cx=G?7LP4>-|n#;@9`e-cu(?3!uw}#pCPV!*zGXhPq>}H z`!^on;NQRV_zv$sdi;p@Ot(z@`wh1nc)#m*7w-=}9^&7hcs#+o?XMypco8a&bmZa) zp;~OEfl4!~1XPL9%P4&CvW42!2CB{I6`)rbHAA~*+^#iHYewyW+A->kcAdFhPoSQR z`UCZ6G#+R?qp3hs8O;Qm$!HbODn^k&k&I%2Vi_d^B{TXQ=yOKLfQ~V`40M^%HK1#Z zZUfzB^e4vmCy%c<3S1Po(l0LuRE|+2<Rvt+((i2n)Phl4ptg+q0`+C|CeWLV{DAxz z1p@^$nhP|S(Gs8~j5Y#oWV97%E2CXNyBHk>I?5;&D3#F}pfikaVthAweD{IwGkOg4 zm{Be01+|<I<F?gz^1zEm?+WC~sD)EoTMMUA__sDrZg|n}?FiJ7QFoy3jQRrgW%MS{ zn~eN`{1}Zxf8)5n0H6Ry!9c-`<^s)Sv;=4gqX?h~M(cpqF^U0-VH5`x$0!~so>3A| z5~D*vhZy-GM(<aw9b)wFj2*MUf1~re3L_v7nd+d591zLA>Bz2;LyQ_q)R3qV-~`7W zCO=KOxbq|)B}u@tT)X5W7S}Muifb5RVSxjSoSMxj46>OEg9NmCsm{!OnIchN|J~8= zMMn_}j9w5OW&G}#=om_Qe{I<Eqx;&Ft)L8B?^E2-YzH&n9kq5y=l4Hp`w1n<4t|_+ z>u&17C1Tj5&#69!jCL8Um}NA|5HWyDftSb~zhY0lQy<004HrUO_1tiEebp?_&Mjnb zL^_C3f>PGMY=sy)2TNng#IB*|J@!rElV_H^9D5;UhHiZ(nX30C;dea4y+Sk`brrNb z*&o7*^pM?2gno6JE3DFnV+Z(+YCSqxEP<gO0);PSH;u6YO}%5Sb`ls;u$&*0qL$B| z+r%@jI!5WY(l<UwxdfVjy^~edCY8gadGONmDvD959$rWHN>8XdJ=vi}sJB)wq4T{9 z^FoGii56>M@PwJIf!x4i^F)81+%uu>+7W2~jvG!4f7FRIBGxK(M49|rGFJphc1`wF zjI4cu`-mu`cP)+T=ihOQ$uqW41mi+Qjl)m~DPZCF3qx=#jDuU(e{JUa+2*Dflx5NL z5S+jqgV#jX!bVsJ5SFyCk??|yw9=JHzg0_cS-iVaEusnWgB`A2(enoLMs`pA-}urM zngVT0=J#R_J1fvRIUH{ls0yx7mH7jq8ctf_%$*17xo7SxZnBz4ce5ecjaSpt;!0Rr z%`OOpb>W=v{^#y5J+UhGklCj4f<EpgBBoy0T)<*e^+sw{ZwpD6YJc?Xd3g1MOF9x! z0|d%dhS}$g3&yWDv-_=#GQ%X-!tf;RK{b+~6*YR^TUd$l7?L#eoi(mw_1YDzX;{HD zzHgGyDJ^v1_q|iGMh$9)n=L{Sl<6uW%5)XMVgidrups1a;gGxQwT+WwZkD3FTQFP$ zWqTpo=p`zvd08eBmi9s~?1f&u7ak?0-`rJi{5R+ZlMa@og+F89#EB73oEU2p!qO>% zSn!8f<_{Sq>s<S6^dqWkrH?IF*L-8Te|POtw^>)z&J<-f^)d{>WFf<H2_w$|W1Umf z6&9<4b_fCLQ?2*0mx?t!tD96cuHL*^bJm%f*Jv(shgwc-N%7MKr{>jOW?f6M6-*>% zKs^R}WYH1MdN~q&M9O$My7nk}f2Y3D_SzVi<IQz+pi6aAeY23;xum+OEd_tnJK`}S z2j!_yUAW@6s2uLO;~F|Xrv^4g!*es54|Wq8t2uLz44WF=sA=YFy2VqKR+~3uowty6 z-jH>`f+BpumVB8l-D^K3D)X=JMk@<xpoma}@k1?2v6)bdH(`k)X5rBAEH2bhrCI4M z?H81$VaSB#jc&X}H{R$5Sn9?HgyqA8HK5Yo?)L*)1(<X*0la#G;MEgA-oR2f6ET{J zJeu_b>zAo}V^bG<H>&>w#S^>Y<;5)jCzz(dQa3kn;PeI`INfp~&Aa$pK|~m|rLfDj zZl<A|X`-8H=mywmj@YJS!lzs4Fj?5jyI$X|D0LUz$SMq;8-bTn3}qUY3Ro;r5PokE zt0U)qFJ?^g7)<qmByO__Pj3=WZ^G09OWbBNrgk$=?X@kn_q^Kl*b?G4LL1R%q>z^8 z;OvtsMxu?yHW^%GGFO8n6j)TffVEwS&xXl+YaX=Ex#roP2G%-Fu-0i{t-#Wp2V&_0 zdFf6yj#ygh>#_O*M8;8YMx5EvD!Ey<iW6;6bM1aCKGIuNnv{H&3$|G@;=m}WFZ`9y zq23o@cAcp<rE;0(SkmTvMvG8uO$#4%qVcPLl_^Gbc+@G9nRedlagfs;E%U{+3#}4w z!LV(k{vrpYmxEg`XTD8nrB;w*^tr2z&TW0?ma;hvyd?^}B}(v?DDW0wiMOoBzpm$! z23anTi+p@%$Y4j_Famy-5yH<h0vY+h5^ordjQr7@kw0<vwTSymN(z55_?%X`uoL28 zokTpW6Y?a0jo}+xSA0iTE-+F0%#5LTJKQ3($$`&Bfm1~ZP89_{2Q2v928f~!EQ&T> zcvOA*OY?rzZ8GEOkZeg`Zf4hzVcJWYfg|a&QC8@Av354_oEoyc!w!H_4=~LVI;16; zxVCrhT*P_eKb0M(S5loVO>i=p1HJfLi?Fn)C9o(Zcu^_`{aLnlMv28{i@FK=#U`O& zY=XE07K{2Jp8t@a|MdMHtN(b=m`YI4DSsY@sKzn{6;`H*n_Z_M>jv0Rjm2UM#10MQ z9qJwHQsUtIW4ECjNe1r2SM3w$cK1Oq0G9Uoeh8QSEL^&My1Jrg?{6yWc9=bnnk1lH zNmd9-#cYQ!Mcl%oi%^3dI>-`bLm6{E99>1vm}pI6rC>Zg8so}GGN0xq%B7-R0=8lT z=UEflqixEIZpn#RcgB6IY)aY=s#iH9AR~yhvW(#w(t*0m?_H*R-1To9Deqr-DA|6P zbOXms0mn=c95V&H5m@4whp{~mvo<#W1IztUVdbx&8<k6`){c*d&ucUUpZY$cREF;; zUrPRa^meh|7GC`Ik=Qr(7&7HvDS}V0JCTTVXp`4C^WUicl%s#}G-TXqjx-ZW*Q}Jz zr+2pQ+wGEvj_@332=tdr;*OYZJA0RSyQ$SzcoQmEI<hkJ&(byG6Q@%YZlLO6XEA$c zIdzB751Q7n;oRIRC9m$UqMJua?IkXj2kls6WoEU49T?i*<EXrt6x9lUF4wn-1?~$* z=F4)H&|pnBE?4EosNjt6o9h^gW`Q4vggh=J<Z-YdU?CyXVBV#%dG|+5mF>Y{A14~t zRAV3N@hU89E)Eg3rHO70ktwe!zM#-fVd0nH8|@C?eBL4p8Iz-tQWs~i>hk?mgc?}Y z98ah8j=d~{&i-T<5Sj&g1+#rcI1jEsNdT4v#8oJ#S1oixBI)S8rbEB{ps(3_{scAl zC!xmvgmncL>v<hM#_Q~3Jmc5O&!t|I^SbpUUZ<Azw~Gw3^)zXjFK!oH2=xnTHJ<;< zv7FcR09Nt<uPLEJR`nQv*3C_!9<zE-c^e9e>ea_^Cr?{A3adk4<8Ld%hC*mo+k6!B zo6p7k=0nw-&&B*s?#gU4qv~hjVs&IXqrC2HMY*6b_P0us$HA%)^d)-~<P84&MCL@& zzEXpVbPSEt<u{^YpfE=%{s1!P0ZVa0zi9bl4}R<0<e&bYanjD#73IX4(Y#4<y4XT1 z7cI?YHd0)^k4K*Xou9H2iV9m0dpbuhwG&gflSMe81WgsHez5%;JNEv5!E_SU9hU1P zstvQ9#233EX(q5E;U>$!CY0kW{u^`mZ=OX$ziP8sA+Sf&Cs9>~=w?ypkWyzS&q7nZ zgj(8(FLn~eZz&k6Hc?=nVg{eGD~iw`+FXt=k$kz!J5AS{$jvPH?z4pNKFi`wSdyD} zENg9dIO(ut+e9~~W6P;TrfOJedQf@Xd{o}b<rDDNgRqdBmGFO+l$vWB!+LlRZ#Z8W zhTdOM#^R5|)Pc<D%UFgJmi!gvaCWgAA8h?%?>qHppK5yoORxP`+t$re7cXz5V)X&) z!)PGTKt_{Mkbkm;N|ek1n!#ue&>Ti<(QYlbiw25j^bycUj1HpRL2maY(3gx(0-a=3 z)LPqC)Y=a{mj)`$s4`GxMoq2tZB4E8z3xEnjM@XWXEeat&^Ew25T6bM8pdc0&=^Lu z(QY=kTL`p}(F&jyjJBZN7H+o#Xa}R+K)V^;vDUTSvC?cj1bWEmcc9-1{q^tH>+}g- zX{AhT#nqzbaNC@%o_Hw|*BR+>z>=$_q_vf;q_r)ysQCArZmsM4WdoB<<&3*?oyFa` z&N%Z6EN!Y1I89Q5OHsePDB7?2TbI>y2l|{WT&Fc0FFyN)zi$v0o9Y)F(ENoDXl_Y7 zTRrJ&|EhwvWN|M?Jq(t+;38aeM$Z`j#@e)_tgi}nt14f`LFi@cG7%I$d9L}`?=QVq zR#`v2-!6Gz@-QOB<Zj8*`SShC_fsP9@V@Ik2Ug8I<M^npF%EM##x5eAtueymz)~d0 z6&u5qFXZZ8Y|^SD|9$RtEFH&WM2uWi5~Y>PB~2SmEVePQ)y8m|HlYbxxGMOycIjIe zZTy$m7{syEbPVVwvv7Em3Si(%Oto}FDjv7A3u0qZ#*0tnd(KQg*7hltkK{6s{uyLC z>sSWCuB7BYMK;G%C#u;($mX;_?6zLxU+xo|TJ5~amT8GYFD<QHV;6t@2}@h16}C(( z-ZHOW{_>TMQ!l<F7S&KY%CwS()Iuau=!u=R8aWm4#Y7CmuP7LOz>)HkKo3dmq9wFn z^Jkp7?Roy<=(k#nuh*Hb_ER<bv^BvqRr@x7$7%}UT%BgFO7r)OSs6OJ)o~6xfoFEI z(h+AuU9_uH57&MFdTiWGDvv=MNN2X5X>x`GFK23;X=U8U>21>~Pb}PJQQh99KOuLL z^r)>LxMx4XJ^O)s0vo%q^+$41e@-r{x!1qlHLs_h=!STk;XIYC0U~(~U_KKYZh)$c zz#<3x6;x$>g{v|S+O{{m-_$t`?c-2A^|;qL7_TsXyb-)1z|uHeQ7OWeD@DBSlkxkH zS$|X&<Io@WcJJZN8lk&~yU+&PENSyDrr_1Lmqb*1Fqnb_iUy*kSH(dwh{JEBfyaRv z081LkHhj8`XCT%k?d!VJTb8!}0L>jV2s~ww;3<R94Y2eB2BVw7+)e4b-}?0I-eIfK zjZQ7SH{c$p!Qbn4Z-`MHeX#5SomsCqA$n`g6XPiKr7eM4R5!IlDwj`Abxjo)CZq+X zQSNHu7c2HQ481?kocfelLoU=u@pWW`NnFg#swV0y@aTF$(_fARI1XetjtP*^MD5PV zg~J|N&bv?Q<hX@Gkf9f1RdPN<Kt#aO7MclpGLz*=?8@3+pO1`G<36k;=u_`lrsQ6l zRw@ePurv;4rjlze`;PRfB>8rDKp4Y^r|;s~ug4NAtnZA>euKQv?`?mEdRvVlkQ#G! zT0%{Ws`a+|Jh>26rrV+jK^(LmZ1wA9k3u53-u<5MM3lc9t(Z6frh!DJ@dc}df;1=V z?Vy-H2e&`{i6gOugWrY=ej5%(2`mxIJP^w~CYHvfc3ioWxp=%_cY01=vqw$l^ff(d z3Qq5`#DzG0<;V3-Z2i8Dn)0F3HSAR_a^QBNQJ%S7LD#h?XjW&ZAV*ar0!tRboQ}{x zG*#nv`k*!aAMZ)f(S#gC$ia|toN>D$lP3XEXj4ja0R^ZKf~#vVe``3_KxmyNGaBqW zx-4>QlmB%jgQciWwp3InTWTFZSR#XEAcJL02D8R|wEJw(j7DPkP#CnN(Ku9=iW8Nk z;^6lJmK+}+!*TI3J1z!w`d5c}TR){bUBu=Lj*mDDCr%6}4#m=dh2vv8G{o&(EbZ0E zwk~0o@>V=9tY;;OMQ1+i;~b`K>|4R{gcK}8Ii#o<Q~$Rv)}viSLuDJ*PF~C$^B#Lq zg7c0?PJV`T`k8ZK3EkJq?N-=Rxq8`-KalH!tRn|GWsd>oDyKwKlb|jWhh&)&ITvOG zQ2Zd(Bz;zsN>&w&$qy-@$`lq;gpO!pD(&%y!!kNmq!L_4Ul0ZD^p(pUKDF3_u|B~? zQErvd?4s%&_UDGWEOBdn-q(!GT7t}43NmX6G6NQ5<^~<ojmyVRZ*wx{CGW6xX3xi4 zy=?J#j*OLf5H_%QJ`rS^$Yi>v=$btVkF0g@ykzRc<J;rKx5tC$082b40fIS!ZIqzy z+s1F-@I;)(Fhohe!ce~w>h4!oSHcp{Ic6PeJ7%TG_g6iJlpA#J!X6Apn4TKzO0#xF zO&=v~J`Jv4V98=SWeu>MvQi0w^~b&*dvsLoK(jeXvyQ;CO1^s<0s_EdPEJ|_Z6~c{ z0yW%eefsD?3$@afMm-L3Ml;u(E()Yp#>zYGfOHBc%2+UTBk?aI)g&UOlgQB>LVLC7 z&VMb~R{31O^&fP+$ewy7>O~U)<(zt@HnfWbNjq?`VZe&G^p$MIJYNJn8`C52tlZHv zDd*E>fazp#v0p-0H1*)ETh~)B|6@gl*|v5@D8gBUBAg-NfyK5i1vy`e<69|-i_V`~ zo}mx?>Ncx7!P$76O<J07>leKa($3EJjaalEIqvIBEJ7x0YlN<A%Mn<se9yOBl6~yV zO7l<Eu|%MFD2kzg@zz1|FR;X{>cKx%kNs0$)tq!^^Hb{#bR#j~6x@oKf~TpM6r5TC zmKg9C`1A`-EDlQFbt-Jxr*wgngSM8Ah*`RbeWqhK0E@lxEm+>S%<}4Ne%*iL(eHPP z*_5>MT)jT3l8{%gPr;`|7PKX#+Y^qaP!cvm5}QJV_G??>(&Qo=7N4)vS=kZ>F_;c% znl7Yiy49PoBnHo-KHXWaPj@+a-PdCdtX?E>Oh+e!nf%e)UaF5FKZ!1d>t-NIduF3b zw<ade1%E7sKhr6pDVo+cebB+CO#;7GQ&tuC89UDGMc@=Q+5VBmRu=kN*`g>e#;B5( zKOR}asZ7?oqHFYPV}GtlPWRJGUN~b8zXRL+|L20s`M&TfSdc1wMLnVF+Jb!dTa&|e z7k4`@7DTKCMQ5{FUXIGTqYrmpUPA4(*poH!P>p_9CaAF|V|b1_l@Dl0EzARW=7wsn zwLBF4D&LjxL1Tq*K*Ny>9>vTZ<@g<;<Juf{PPjjEX=%$X1Br+eETrhk^-xG)sRyVa zzBOjmH8%=*F;P&#vI-)#EPq;J&h!w8IgjLeC4@F;7YPjBw(3amie*F(Ml+OlZ}vti zQ^ip9G?a~0LL;<Xg$p4cdA|`jGSl8C-;-okC;-VS*%u1XZcoakP{1gB`zS6HpdhtS zz@s*0!d(Y+T}R_ktTKh%c{GOKX8e>jRl~6KpQ|1zq0f@5DVOmDVSGV6PYOD%WD)!a D5E#*> diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h deleted file mode 100644 index 1c5a2d2d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h +++ /dev/null @@ -1,271 +0,0 @@ -/*===---- avx512erintrin.h - AVX512ER intrinsics ---------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512erintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512ERINTRIN_H -#define __AVX512ERINTRIN_H - -/* exp2a23 */ -#define _mm512_exp2a23_round_pd(A, R) \ - ((__m512d)__builtin_ia32_exp2pd_mask((__v8df)(__m512d)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_exp2a23_round_pd(S, M, A, R) \ - ((__m512d)__builtin_ia32_exp2pd_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(S), (__mmask8)(M), \ - (int)(R))) - -#define _mm512_maskz_exp2a23_round_pd(M, A, R) \ - ((__m512d)__builtin_ia32_exp2pd_mask((__v8df)(__m512d)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(M), (int)(R))) - -#define _mm512_exp2a23_pd(A) \ - _mm512_exp2a23_round_pd((A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_mask_exp2a23_pd(S, M, A) \ - _mm512_mask_exp2a23_round_pd((S), (M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_maskz_exp2a23_pd(M, A) \ - _mm512_maskz_exp2a23_round_pd((M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_exp2a23_round_ps(A, R) \ - ((__m512)__builtin_ia32_exp2ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_exp2a23_round_ps(S, M, A, R) \ - ((__m512)__builtin_ia32_exp2ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(S), (__mmask16)(M), \ - (int)(R))) - -#define _mm512_maskz_exp2a23_round_ps(M, A, R) \ - ((__m512)__builtin_ia32_exp2ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(M), (int)(R))) - -#define _mm512_exp2a23_ps(A) \ - _mm512_exp2a23_round_ps((A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_mask_exp2a23_ps(S, M, A) \ - _mm512_mask_exp2a23_round_ps((S), (M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_maskz_exp2a23_ps(M, A) \ - _mm512_maskz_exp2a23_round_ps((M), (A), _MM_FROUND_CUR_DIRECTION) - -/* rsqrt28 */ -#define _mm512_rsqrt28_round_pd(A, R) \ - ((__m512d)__builtin_ia32_rsqrt28pd_mask((__v8df)(__m512d)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_rsqrt28_round_pd(S, M, A, R) \ - ((__m512d)__builtin_ia32_rsqrt28pd_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(S), (__mmask8)(M), \ - (int)(R))) - -#define _mm512_maskz_rsqrt28_round_pd(M, A, R) \ - ((__m512d)__builtin_ia32_rsqrt28pd_mask((__v8df)(__m512d)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(M), (int)(R))) - -#define _mm512_rsqrt28_pd(A) \ - _mm512_rsqrt28_round_pd((A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_mask_rsqrt28_pd(S, M, A) \ - _mm512_mask_rsqrt28_round_pd((S), (M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_maskz_rsqrt28_pd(M, A) \ - _mm512_maskz_rsqrt28_round_pd((M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_rsqrt28_round_ps(A, R) \ - ((__m512)__builtin_ia32_rsqrt28ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_rsqrt28_round_ps(S, M, A, R) \ - ((__m512)__builtin_ia32_rsqrt28ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(S), (__mmask16)(M), \ - (int)(R))) - -#define _mm512_maskz_rsqrt28_round_ps(M, A, R) \ - ((__m512)__builtin_ia32_rsqrt28ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(M), (int)(R))) - -#define _mm512_rsqrt28_ps(A) \ - _mm512_rsqrt28_round_ps((A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_mask_rsqrt28_ps(S, M, A) \ - _mm512_mask_rsqrt28_round_ps((S), (M), A, _MM_FROUND_CUR_DIRECTION) - -#define _mm512_maskz_rsqrt28_ps(M, A) \ - _mm512_maskz_rsqrt28_round_ps((M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm_rsqrt28_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_rsqrt28ss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_rsqrt28_round_ss(S, M, A, B, R) \ - ((__m128)__builtin_ia32_rsqrt28ss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(S), \ - (__mmask8)(M), (int)(R))) - -#define _mm_maskz_rsqrt28_round_ss(M, A, B, R) \ - ((__m128)__builtin_ia32_rsqrt28ss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(M), (int)(R))) - -#define _mm_rsqrt28_ss(A, B) \ - _mm_rsqrt28_round_ss((A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_mask_rsqrt28_ss(S, M, A, B) \ - _mm_mask_rsqrt28_round_ss((S), (M), (A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_maskz_rsqrt28_ss(M, A, B) \ - _mm_maskz_rsqrt28_round_ss((M), (A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_rsqrt28_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_rsqrt28sd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_rsqrt28_round_sd(S, M, A, B, R) \ - ((__m128d)__builtin_ia32_rsqrt28sd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(S), \ - (__mmask8)(M), (int)(R))) - -#define _mm_maskz_rsqrt28_round_sd(M, A, B, R) \ - ((__m128d)__builtin_ia32_rsqrt28sd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(M), (int)(R))) - -#define _mm_rsqrt28_sd(A, B) \ - _mm_rsqrt28_round_sd((A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_mask_rsqrt28_sd(S, M, A, B) \ - _mm_mask_rsqrt28_round_sd((S), (M), (A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_maskz_rsqrt28_sd(M, A, B) \ - _mm_maskz_rsqrt28_round_sd((M), (A), (B), _MM_FROUND_CUR_DIRECTION) - -/* rcp28 */ -#define _mm512_rcp28_round_pd(A, R) \ - ((__m512d)__builtin_ia32_rcp28pd_mask((__v8df)(__m512d)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_rcp28_round_pd(S, M, A, R) \ - ((__m512d)__builtin_ia32_rcp28pd_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(S), (__mmask8)(M), \ - (int)(R))) - -#define _mm512_maskz_rcp28_round_pd(M, A, R) \ - ((__m512d)__builtin_ia32_rcp28pd_mask((__v8df)(__m512d)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(M), (int)(R))) - -#define _mm512_rcp28_pd(A) \ - _mm512_rcp28_round_pd((A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_mask_rcp28_pd(S, M, A) \ - _mm512_mask_rcp28_round_pd((S), (M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_maskz_rcp28_pd(M, A) \ - _mm512_maskz_rcp28_round_pd((M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_rcp28_round_ps(A, R) \ - ((__m512)__builtin_ia32_rcp28ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_rcp28_round_ps(S, M, A, R) \ - ((__m512)__builtin_ia32_rcp28ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(S), (__mmask16)(M), \ - (int)(R))) - -#define _mm512_maskz_rcp28_round_ps(M, A, R) \ - ((__m512)__builtin_ia32_rcp28ps_mask((__v16sf)(__m512)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(M), (int)(R))) - -#define _mm512_rcp28_ps(A) \ - _mm512_rcp28_round_ps((A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_mask_rcp28_ps(S, M, A) \ - _mm512_mask_rcp28_round_ps((S), (M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_maskz_rcp28_ps(M, A) \ - _mm512_maskz_rcp28_round_ps((M), (A), _MM_FROUND_CUR_DIRECTION) - -#define _mm_rcp28_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_rcp28ss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_rcp28_round_ss(S, M, A, B, R) \ - ((__m128)__builtin_ia32_rcp28ss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(S), \ - (__mmask8)(M), (int)(R))) - -#define _mm_maskz_rcp28_round_ss(M, A, B, R) \ - ((__m128)__builtin_ia32_rcp28ss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(M), (int)(R))) - -#define _mm_rcp28_ss(A, B) \ - _mm_rcp28_round_ss((A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_mask_rcp28_ss(S, M, A, B) \ - _mm_mask_rcp28_round_ss((S), (M), (A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_maskz_rcp28_ss(M, A, B) \ - _mm_maskz_rcp28_round_ss((M), (A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_rcp28_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_rcp28sd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_rcp28_round_sd(S, M, A, B, R) \ - ((__m128d)__builtin_ia32_rcp28sd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(S), \ - (__mmask8)(M), (int)(R))) - -#define _mm_maskz_rcp28_round_sd(M, A, B, R) \ - ((__m128d)__builtin_ia32_rcp28sd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(M), (int)(R))) - -#define _mm_rcp28_sd(A, B) \ - _mm_rcp28_round_sd((A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_mask_rcp28_sd(S, M, A, B) \ - _mm_mask_rcp28_round_sd((S), (M), (A), (B), _MM_FROUND_CUR_DIRECTION) - -#define _mm_maskz_rcp28_sd(M, A, B) \ - _mm_maskz_rcp28_round_sd((M), (A), (B), _MM_FROUND_CUR_DIRECTION) - -#endif /* __AVX512ERINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512erintrin.h.blob deleted file mode 100644 index 7fa06df19e54834a81c58f32bb738dac587c45e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26837 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 BS3Cd! diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h deleted file mode 100644 index b19d2fb9..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h +++ /dev/null @@ -1,9765 +0,0 @@ -/*===---- avx512fintrin.h - AVX512F intrinsics -----------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512fintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512FINTRIN_H -#define __AVX512FINTRIN_H - -typedef char __v64qi __attribute__((__vector_size__(64))); -typedef short __v32hi __attribute__((__vector_size__(64))); -typedef double __v8df __attribute__((__vector_size__(64))); -typedef float __v16sf __attribute__((__vector_size__(64))); -typedef long long __v8di __attribute__((__vector_size__(64))); -typedef int __v16si __attribute__((__vector_size__(64))); - -/* Unsigned types */ -typedef unsigned char __v64qu __attribute__((__vector_size__(64))); -typedef unsigned short __v32hu __attribute__((__vector_size__(64))); -typedef unsigned long long __v8du __attribute__((__vector_size__(64))); -typedef unsigned int __v16su __attribute__((__vector_size__(64))); - -/* We need an explicitly signed variant for char. Note that this shouldn't - * appear in the interface though. */ -typedef signed char __v64qs __attribute__((__vector_size__(64))); - -typedef float __m512 __attribute__((__vector_size__(64), __aligned__(64))); -typedef double __m512d __attribute__((__vector_size__(64), __aligned__(64))); -typedef long long __m512i __attribute__((__vector_size__(64), __aligned__(64))); - -typedef float __m512_u __attribute__((__vector_size__(64), __aligned__(1))); -typedef double __m512d_u __attribute__((__vector_size__(64), __aligned__(1))); -typedef long long __m512i_u __attribute__((__vector_size__(64), __aligned__(1))); - -typedef unsigned char __mmask8; -typedef unsigned short __mmask16; - -/* Rounding mode macros. */ -#define _MM_FROUND_TO_NEAREST_INT 0x00 -#define _MM_FROUND_TO_NEG_INF 0x01 -#define _MM_FROUND_TO_POS_INF 0x02 -#define _MM_FROUND_TO_ZERO 0x03 -#define _MM_FROUND_CUR_DIRECTION 0x04 - -/* Constants for integer comparison predicates */ -typedef enum { - _MM_CMPINT_EQ, /* Equal */ - _MM_CMPINT_LT, /* Less than */ - _MM_CMPINT_LE, /* Less than or Equal */ - _MM_CMPINT_UNUSED, - _MM_CMPINT_NE, /* Not Equal */ - _MM_CMPINT_NLT, /* Not Less than */ -#define _MM_CMPINT_GE _MM_CMPINT_NLT /* Greater than or Equal */ - _MM_CMPINT_NLE /* Not Less than or Equal */ -#define _MM_CMPINT_GT _MM_CMPINT_NLE /* Greater than */ -} _MM_CMPINT_ENUM; - -typedef enum -{ - _MM_PERM_AAAA = 0x00, _MM_PERM_AAAB = 0x01, _MM_PERM_AAAC = 0x02, - _MM_PERM_AAAD = 0x03, _MM_PERM_AABA = 0x04, _MM_PERM_AABB = 0x05, - _MM_PERM_AABC = 0x06, _MM_PERM_AABD = 0x07, _MM_PERM_AACA = 0x08, - _MM_PERM_AACB = 0x09, _MM_PERM_AACC = 0x0A, _MM_PERM_AACD = 0x0B, - _MM_PERM_AADA = 0x0C, _MM_PERM_AADB = 0x0D, _MM_PERM_AADC = 0x0E, - _MM_PERM_AADD = 0x0F, _MM_PERM_ABAA = 0x10, _MM_PERM_ABAB = 0x11, - _MM_PERM_ABAC = 0x12, _MM_PERM_ABAD = 0x13, _MM_PERM_ABBA = 0x14, - _MM_PERM_ABBB = 0x15, _MM_PERM_ABBC = 0x16, _MM_PERM_ABBD = 0x17, - _MM_PERM_ABCA = 0x18, _MM_PERM_ABCB = 0x19, _MM_PERM_ABCC = 0x1A, - _MM_PERM_ABCD = 0x1B, _MM_PERM_ABDA = 0x1C, _MM_PERM_ABDB = 0x1D, - _MM_PERM_ABDC = 0x1E, _MM_PERM_ABDD = 0x1F, _MM_PERM_ACAA = 0x20, - _MM_PERM_ACAB = 0x21, _MM_PERM_ACAC = 0x22, _MM_PERM_ACAD = 0x23, - _MM_PERM_ACBA = 0x24, _MM_PERM_ACBB = 0x25, _MM_PERM_ACBC = 0x26, - _MM_PERM_ACBD = 0x27, _MM_PERM_ACCA = 0x28, _MM_PERM_ACCB = 0x29, - _MM_PERM_ACCC = 0x2A, _MM_PERM_ACCD = 0x2B, _MM_PERM_ACDA = 0x2C, - _MM_PERM_ACDB = 0x2D, _MM_PERM_ACDC = 0x2E, _MM_PERM_ACDD = 0x2F, - _MM_PERM_ADAA = 0x30, _MM_PERM_ADAB = 0x31, _MM_PERM_ADAC = 0x32, - _MM_PERM_ADAD = 0x33, _MM_PERM_ADBA = 0x34, _MM_PERM_ADBB = 0x35, - _MM_PERM_ADBC = 0x36, _MM_PERM_ADBD = 0x37, _MM_PERM_ADCA = 0x38, - _MM_PERM_ADCB = 0x39, _MM_PERM_ADCC = 0x3A, _MM_PERM_ADCD = 0x3B, - _MM_PERM_ADDA = 0x3C, _MM_PERM_ADDB = 0x3D, _MM_PERM_ADDC = 0x3E, - _MM_PERM_ADDD = 0x3F, _MM_PERM_BAAA = 0x40, _MM_PERM_BAAB = 0x41, - _MM_PERM_BAAC = 0x42, _MM_PERM_BAAD = 0x43, _MM_PERM_BABA = 0x44, - _MM_PERM_BABB = 0x45, _MM_PERM_BABC = 0x46, _MM_PERM_BABD = 0x47, - _MM_PERM_BACA = 0x48, _MM_PERM_BACB = 0x49, _MM_PERM_BACC = 0x4A, - _MM_PERM_BACD = 0x4B, _MM_PERM_BADA = 0x4C, _MM_PERM_BADB = 0x4D, - _MM_PERM_BADC = 0x4E, _MM_PERM_BADD = 0x4F, _MM_PERM_BBAA = 0x50, - _MM_PERM_BBAB = 0x51, _MM_PERM_BBAC = 0x52, _MM_PERM_BBAD = 0x53, - _MM_PERM_BBBA = 0x54, _MM_PERM_BBBB = 0x55, _MM_PERM_BBBC = 0x56, - _MM_PERM_BBBD = 0x57, _MM_PERM_BBCA = 0x58, _MM_PERM_BBCB = 0x59, - _MM_PERM_BBCC = 0x5A, _MM_PERM_BBCD = 0x5B, _MM_PERM_BBDA = 0x5C, - _MM_PERM_BBDB = 0x5D, _MM_PERM_BBDC = 0x5E, _MM_PERM_BBDD = 0x5F, - _MM_PERM_BCAA = 0x60, _MM_PERM_BCAB = 0x61, _MM_PERM_BCAC = 0x62, - _MM_PERM_BCAD = 0x63, _MM_PERM_BCBA = 0x64, _MM_PERM_BCBB = 0x65, - _MM_PERM_BCBC = 0x66, _MM_PERM_BCBD = 0x67, _MM_PERM_BCCA = 0x68, - _MM_PERM_BCCB = 0x69, _MM_PERM_BCCC = 0x6A, _MM_PERM_BCCD = 0x6B, - _MM_PERM_BCDA = 0x6C, _MM_PERM_BCDB = 0x6D, _MM_PERM_BCDC = 0x6E, - _MM_PERM_BCDD = 0x6F, _MM_PERM_BDAA = 0x70, _MM_PERM_BDAB = 0x71, - _MM_PERM_BDAC = 0x72, _MM_PERM_BDAD = 0x73, _MM_PERM_BDBA = 0x74, - _MM_PERM_BDBB = 0x75, _MM_PERM_BDBC = 0x76, _MM_PERM_BDBD = 0x77, - _MM_PERM_BDCA = 0x78, _MM_PERM_BDCB = 0x79, _MM_PERM_BDCC = 0x7A, - _MM_PERM_BDCD = 0x7B, _MM_PERM_BDDA = 0x7C, _MM_PERM_BDDB = 0x7D, - _MM_PERM_BDDC = 0x7E, _MM_PERM_BDDD = 0x7F, _MM_PERM_CAAA = 0x80, - _MM_PERM_CAAB = 0x81, _MM_PERM_CAAC = 0x82, _MM_PERM_CAAD = 0x83, - _MM_PERM_CABA = 0x84, _MM_PERM_CABB = 0x85, _MM_PERM_CABC = 0x86, - _MM_PERM_CABD = 0x87, _MM_PERM_CACA = 0x88, _MM_PERM_CACB = 0x89, - _MM_PERM_CACC = 0x8A, _MM_PERM_CACD = 0x8B, _MM_PERM_CADA = 0x8C, - _MM_PERM_CADB = 0x8D, _MM_PERM_CADC = 0x8E, _MM_PERM_CADD = 0x8F, - _MM_PERM_CBAA = 0x90, _MM_PERM_CBAB = 0x91, _MM_PERM_CBAC = 0x92, - _MM_PERM_CBAD = 0x93, _MM_PERM_CBBA = 0x94, _MM_PERM_CBBB = 0x95, - _MM_PERM_CBBC = 0x96, _MM_PERM_CBBD = 0x97, _MM_PERM_CBCA = 0x98, - _MM_PERM_CBCB = 0x99, _MM_PERM_CBCC = 0x9A, _MM_PERM_CBCD = 0x9B, - _MM_PERM_CBDA = 0x9C, _MM_PERM_CBDB = 0x9D, _MM_PERM_CBDC = 0x9E, - _MM_PERM_CBDD = 0x9F, _MM_PERM_CCAA = 0xA0, _MM_PERM_CCAB = 0xA1, - _MM_PERM_CCAC = 0xA2, _MM_PERM_CCAD = 0xA3, _MM_PERM_CCBA = 0xA4, - _MM_PERM_CCBB = 0xA5, _MM_PERM_CCBC = 0xA6, _MM_PERM_CCBD = 0xA7, - _MM_PERM_CCCA = 0xA8, _MM_PERM_CCCB = 0xA9, _MM_PERM_CCCC = 0xAA, - _MM_PERM_CCCD = 0xAB, _MM_PERM_CCDA = 0xAC, _MM_PERM_CCDB = 0xAD, - _MM_PERM_CCDC = 0xAE, _MM_PERM_CCDD = 0xAF, _MM_PERM_CDAA = 0xB0, - _MM_PERM_CDAB = 0xB1, _MM_PERM_CDAC = 0xB2, _MM_PERM_CDAD = 0xB3, - _MM_PERM_CDBA = 0xB4, _MM_PERM_CDBB = 0xB5, _MM_PERM_CDBC = 0xB6, - _MM_PERM_CDBD = 0xB7, _MM_PERM_CDCA = 0xB8, _MM_PERM_CDCB = 0xB9, - _MM_PERM_CDCC = 0xBA, _MM_PERM_CDCD = 0xBB, _MM_PERM_CDDA = 0xBC, - _MM_PERM_CDDB = 0xBD, _MM_PERM_CDDC = 0xBE, _MM_PERM_CDDD = 0xBF, - _MM_PERM_DAAA = 0xC0, _MM_PERM_DAAB = 0xC1, _MM_PERM_DAAC = 0xC2, - _MM_PERM_DAAD = 0xC3, _MM_PERM_DABA = 0xC4, _MM_PERM_DABB = 0xC5, - _MM_PERM_DABC = 0xC6, _MM_PERM_DABD = 0xC7, _MM_PERM_DACA = 0xC8, - _MM_PERM_DACB = 0xC9, _MM_PERM_DACC = 0xCA, _MM_PERM_DACD = 0xCB, - _MM_PERM_DADA = 0xCC, _MM_PERM_DADB = 0xCD, _MM_PERM_DADC = 0xCE, - _MM_PERM_DADD = 0xCF, _MM_PERM_DBAA = 0xD0, _MM_PERM_DBAB = 0xD1, - _MM_PERM_DBAC = 0xD2, _MM_PERM_DBAD = 0xD3, _MM_PERM_DBBA = 0xD4, - _MM_PERM_DBBB = 0xD5, _MM_PERM_DBBC = 0xD6, _MM_PERM_DBBD = 0xD7, - _MM_PERM_DBCA = 0xD8, _MM_PERM_DBCB = 0xD9, _MM_PERM_DBCC = 0xDA, - _MM_PERM_DBCD = 0xDB, _MM_PERM_DBDA = 0xDC, _MM_PERM_DBDB = 0xDD, - _MM_PERM_DBDC = 0xDE, _MM_PERM_DBDD = 0xDF, _MM_PERM_DCAA = 0xE0, - _MM_PERM_DCAB = 0xE1, _MM_PERM_DCAC = 0xE2, _MM_PERM_DCAD = 0xE3, - _MM_PERM_DCBA = 0xE4, _MM_PERM_DCBB = 0xE5, _MM_PERM_DCBC = 0xE6, - _MM_PERM_DCBD = 0xE7, _MM_PERM_DCCA = 0xE8, _MM_PERM_DCCB = 0xE9, - _MM_PERM_DCCC = 0xEA, _MM_PERM_DCCD = 0xEB, _MM_PERM_DCDA = 0xEC, - _MM_PERM_DCDB = 0xED, _MM_PERM_DCDC = 0xEE, _MM_PERM_DCDD = 0xEF, - _MM_PERM_DDAA = 0xF0, _MM_PERM_DDAB = 0xF1, _MM_PERM_DDAC = 0xF2, - _MM_PERM_DDAD = 0xF3, _MM_PERM_DDBA = 0xF4, _MM_PERM_DDBB = 0xF5, - _MM_PERM_DDBC = 0xF6, _MM_PERM_DDBD = 0xF7, _MM_PERM_DDCA = 0xF8, - _MM_PERM_DDCB = 0xF9, _MM_PERM_DDCC = 0xFA, _MM_PERM_DDCD = 0xFB, - _MM_PERM_DDDA = 0xFC, _MM_PERM_DDDB = 0xFD, _MM_PERM_DDDC = 0xFE, - _MM_PERM_DDDD = 0xFF -} _MM_PERM_ENUM; - -typedef enum -{ - _MM_MANT_NORM_1_2, /* interval [1, 2) */ - _MM_MANT_NORM_p5_2, /* interval [0.5, 2) */ - _MM_MANT_NORM_p5_1, /* interval [0.5, 1) */ - _MM_MANT_NORM_p75_1p5 /* interval [0.75, 1.5) */ -} _MM_MANTISSA_NORM_ENUM; - -typedef enum -{ - _MM_MANT_SIGN_src, /* sign = sign(SRC) */ - _MM_MANT_SIGN_zero, /* sign = 0 */ - _MM_MANT_SIGN_nan /* DEST = NaN if sign(SRC) = 1 */ -} _MM_MANTISSA_SIGN_ENUM; - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512f"), __min_vector_width__(512))) -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512f"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512f"))) - -/* Create vectors with repeated elements */ - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_setzero_si512(void) -{ - return __extension__ (__m512i)(__v8di){ 0, 0, 0, 0, 0, 0, 0, 0 }; -} - -#define _mm512_setzero_epi32 _mm512_setzero_si512 - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_undefined_pd(void) -{ - return (__m512d)__builtin_ia32_undef512(); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_undefined(void) -{ - return (__m512)__builtin_ia32_undef512(); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_undefined_ps(void) -{ - return (__m512)__builtin_ia32_undef512(); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_undefined_epi32(void) -{ - return (__m512i)__builtin_ia32_undef512(); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcastd_epi32 (__m128i __A) -{ - return (__m512i)__builtin_shufflevector((__v4si) __A, (__v4si) __A, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcastd_epi32 (__m512i __O, __mmask16 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512(__M, - (__v16si) _mm512_broadcastd_epi32(__A), - (__v16si) __O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcastd_epi32 (__mmask16 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512(__M, - (__v16si) _mm512_broadcastd_epi32(__A), - (__v16si) _mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcastq_epi64 (__m128i __A) -{ - return (__m512i)__builtin_shufflevector((__v2di) __A, (__v2di) __A, - 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcastq_epi64 (__m512i __O, __mmask8 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512(__M, - (__v8di) _mm512_broadcastq_epi64(__A), - (__v8di) __O); - -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512(__M, - (__v8di) _mm512_broadcastq_epi64(__A), - (__v8di) _mm512_setzero_si512()); -} - - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_setzero_ps(void) -{ - return __extension__ (__m512){ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }; -} - -#define _mm512_setzero _mm512_setzero_ps - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_setzero_pd(void) -{ - return __extension__ (__m512d){ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }; -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_set1_ps(float __w) -{ - return __extension__ (__m512){ __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w }; -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_set1_pd(double __w) -{ - return __extension__ (__m512d){ __w, __w, __w, __w, __w, __w, __w, __w }; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set1_epi8(char __w) -{ - return __extension__ (__m512i)(__v64qi){ - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w }; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set1_epi16(short __w) -{ - return __extension__ (__m512i)(__v32hi){ - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w }; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set1_epi32(int __s) -{ - return __extension__ (__m512i)(__v16si){ - __s, __s, __s, __s, __s, __s, __s, __s, - __s, __s, __s, __s, __s, __s, __s, __s }; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_set1_epi32(__mmask16 __M, int __A) -{ - return (__m512i)__builtin_ia32_selectd_512(__M, - (__v16si)_mm512_set1_epi32(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set1_epi64(long long __d) -{ - return __extension__(__m512i)(__v8di){ __d, __d, __d, __d, __d, __d, __d, __d }; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_set1_epi64(__mmask8 __M, long long __A) -{ - return (__m512i)__builtin_ia32_selectq_512(__M, - (__v8di)_mm512_set1_epi64(__A), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_broadcastss_ps(__m128 __A) -{ - return (__m512)__builtin_shufflevector((__v4sf) __A, (__v4sf) __A, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set4_epi32 (int __A, int __B, int __C, int __D) -{ - return __extension__ (__m512i)(__v16si) - { __D, __C, __B, __A, __D, __C, __B, __A, - __D, __C, __B, __A, __D, __C, __B, __A }; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set4_epi64 (long long __A, long long __B, long long __C, - long long __D) -{ - return __extension__ (__m512i) (__v8di) - { __D, __C, __B, __A, __D, __C, __B, __A }; -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_set4_pd (double __A, double __B, double __C, double __D) -{ - return __extension__ (__m512d) - { __D, __C, __B, __A, __D, __C, __B, __A }; -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_set4_ps (float __A, float __B, float __C, float __D) -{ - return __extension__ (__m512) - { __D, __C, __B, __A, __D, __C, __B, __A, - __D, __C, __B, __A, __D, __C, __B, __A }; -} - -#define _mm512_setr4_epi32(e0,e1,e2,e3) \ - _mm512_set4_epi32((e3),(e2),(e1),(e0)) - -#define _mm512_setr4_epi64(e0,e1,e2,e3) \ - _mm512_set4_epi64((e3),(e2),(e1),(e0)) - -#define _mm512_setr4_pd(e0,e1,e2,e3) \ - _mm512_set4_pd((e3),(e2),(e1),(e0)) - -#define _mm512_setr4_ps(e0,e1,e2,e3) \ - _mm512_set4_ps((e3),(e2),(e1),(e0)) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_broadcastsd_pd(__m128d __A) -{ - return (__m512d)__builtin_shufflevector((__v2df) __A, (__v2df) __A, - 0, 0, 0, 0, 0, 0, 0, 0); -} - -/* Cast between vector types */ - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_castpd256_pd512(__m256d __a) -{ - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, -1, -1, -1, -1); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_castps256_ps512(__m256 __a) -{ - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, - -1, -1, -1, -1, -1, -1, -1, -1); -} - -static __inline __m128d __DEFAULT_FN_ATTRS512 -_mm512_castpd512_pd128(__m512d __a) -{ - return __builtin_shufflevector(__a, __a, 0, 1); -} - -static __inline __m256d __DEFAULT_FN_ATTRS512 -_mm512_castpd512_pd256 (__m512d __A) -{ - return __builtin_shufflevector(__A, __A, 0, 1, 2, 3); -} - -static __inline __m128 __DEFAULT_FN_ATTRS512 -_mm512_castps512_ps128(__m512 __a) -{ - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3); -} - -static __inline __m256 __DEFAULT_FN_ATTRS512 -_mm512_castps512_ps256 (__m512 __A) -{ - return __builtin_shufflevector(__A, __A, 0, 1, 2, 3, 4, 5, 6, 7); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_castpd_ps (__m512d __A) -{ - return (__m512) (__A); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_castpd_si512 (__m512d __A) -{ - return (__m512i) (__A); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_castpd128_pd512 (__m128d __A) -{ - return __builtin_shufflevector( __A, __A, 0, 1, -1, -1, -1, -1, -1, -1); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_castps_pd (__m512 __A) -{ - return (__m512d) (__A); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_castps_si512 (__m512 __A) -{ - return (__m512i) (__A); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_castps128_ps512 (__m128 __A) -{ - return __builtin_shufflevector( __A, __A, 0, 1, 2, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_castsi128_si512 (__m128i __A) -{ - return __builtin_shufflevector( __A, __A, 0, 1, -1, -1, -1, -1, -1, -1); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_castsi256_si512 (__m256i __A) -{ - return __builtin_shufflevector( __A, __A, 0, 1, 2, 3, -1, -1, -1, -1); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_castsi512_ps (__m512i __A) -{ - return (__m512) (__A); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_castsi512_pd (__m512i __A) -{ - return (__m512d) (__A); -} - -static __inline __m128i __DEFAULT_FN_ATTRS512 -_mm512_castsi512_si128 (__m512i __A) -{ - return (__m128i)__builtin_shufflevector(__A, __A , 0, 1); -} - -static __inline __m256i __DEFAULT_FN_ATTRS512 -_mm512_castsi512_si256 (__m512i __A) -{ - return (__m256i)__builtin_shufflevector(__A, __A , 0, 1, 2, 3); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_mm512_int2mask(int __a) -{ - return (__mmask16)__a; -} - -static __inline__ int __DEFAULT_FN_ATTRS -_mm512_mask2int(__mmask16 __a) -{ - return (int)__a; -} - -/// Constructs a 512-bit floating-point vector of [8 x double] from a -/// 128-bit floating-point vector of [2 x double]. The lower 128 bits -/// contain the value of the source vector. The upper 384 bits are set -/// to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 512-bit floating-point vector of [8 x double]. The lower 128 bits -/// contain the value of the parameter. The upper 384 bits are set to zero. -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_zextpd128_pd512(__m128d __a) -{ - return __builtin_shufflevector((__v2df)__a, (__v2df)_mm_setzero_pd(), 0, 1, 2, 3, 2, 3, 2, 3); -} - -/// Constructs a 512-bit floating-point vector of [8 x double] from a -/// 256-bit floating-point vector of [4 x double]. The lower 256 bits -/// contain the value of the source vector. The upper 256 bits are set -/// to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \returns A 512-bit floating-point vector of [8 x double]. The lower 256 bits -/// contain the value of the parameter. The upper 256 bits are set to zero. -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_zextpd256_pd512(__m256d __a) -{ - return __builtin_shufflevector((__v4df)__a, (__v4df)_mm256_setzero_pd(), 0, 1, 2, 3, 4, 5, 6, 7); -} - -/// Constructs a 512-bit floating-point vector of [16 x float] from a -/// 128-bit floating-point vector of [4 x float]. The lower 128 bits contain -/// the value of the source vector. The upper 384 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 512-bit floating-point vector of [16 x float]. The lower 128 bits -/// contain the value of the parameter. The upper 384 bits are set to zero. -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_zextps128_ps512(__m128 __a) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)_mm_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7, 4, 5, 6, 7, 4, 5, 6, 7); -} - -/// Constructs a 512-bit floating-point vector of [16 x float] from a -/// 256-bit floating-point vector of [8 x float]. The lower 256 bits contain -/// the value of the source vector. The upper 256 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \returns A 512-bit floating-point vector of [16 x float]. The lower 256 bits -/// contain the value of the parameter. The upper 256 bits are set to zero. -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_zextps256_ps512(__m256 __a) -{ - return __builtin_shufflevector((__v8sf)__a, (__v8sf)_mm256_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); -} - -/// Constructs a 512-bit integer vector from a 128-bit integer vector. -/// The lower 128 bits contain the value of the source vector. The upper -/// 384 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \returns A 512-bit integer vector. The lower 128 bits contain the value of -/// the parameter. The upper 384 bits are set to zero. -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_zextsi128_si512(__m128i __a) -{ - return __builtin_shufflevector((__v2di)__a, (__v2di)_mm_setzero_si128(), 0, 1, 2, 3, 2, 3, 2, 3); -} - -/// Constructs a 512-bit integer vector from a 256-bit integer vector. -/// The lower 256 bits contain the value of the source vector. The upper -/// 256 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit integer vector. -/// \returns A 512-bit integer vector. The lower 256 bits contain the value of -/// the parameter. The upper 256 bits are set to zero. -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_zextsi256_si512(__m256i __a) -{ - return __builtin_shufflevector((__v4di)__a, (__v4di)_mm256_setzero_si256(), 0, 1, 2, 3, 4, 5, 6, 7); -} - -/* Bitwise operators */ -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_and_epi32(__m512i __a, __m512i __b) -{ - return (__m512i)((__v16su)__a & (__v16su)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_and_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k, - (__v16si) _mm512_and_epi32(__a, __b), - (__v16si) __src); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_and_epi32(__mmask16 __k, __m512i __a, __m512i __b) -{ - return (__m512i) _mm512_mask_and_epi32(_mm512_setzero_si512 (), - __k, __a, __b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_and_epi64(__m512i __a, __m512i __b) -{ - return (__m512i)((__v8du)__a & (__v8du)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_and_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b) -{ - return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __k, - (__v8di) _mm512_and_epi64(__a, __b), - (__v8di) __src); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_and_epi64(__mmask8 __k, __m512i __a, __m512i __b) -{ - return (__m512i) _mm512_mask_and_epi64(_mm512_setzero_si512 (), - __k, __a, __b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_andnot_si512 (__m512i __A, __m512i __B) -{ - return (__m512i)(~(__v8du)__A & (__v8du)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_andnot_epi32 (__m512i __A, __m512i __B) -{ - return (__m512i)(~(__v16su)__A & (__v16su)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_andnot_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_andnot_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_andnot_epi32(__mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)_mm512_mask_andnot_epi32(_mm512_setzero_si512(), - __U, __A, __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_andnot_epi64(__m512i __A, __m512i __B) -{ - return (__m512i)(~(__v8du)__A & (__v8du)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_andnot_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_andnot_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_andnot_epi64(__mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)_mm512_mask_andnot_epi64(_mm512_setzero_si512(), - __U, __A, __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_or_epi32(__m512i __a, __m512i __b) -{ - return (__m512i)((__v16su)__a | (__v16su)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_or_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k, - (__v16si)_mm512_or_epi32(__a, __b), - (__v16si)__src); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_or_epi32(__mmask16 __k, __m512i __a, __m512i __b) -{ - return (__m512i)_mm512_mask_or_epi32(_mm512_setzero_si512(), __k, __a, __b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_or_epi64(__m512i __a, __m512i __b) -{ - return (__m512i)((__v8du)__a | (__v8du)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_or_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__k, - (__v8di)_mm512_or_epi64(__a, __b), - (__v8di)__src); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_or_epi64(__mmask8 __k, __m512i __a, __m512i __b) -{ - return (__m512i)_mm512_mask_or_epi64(_mm512_setzero_si512(), __k, __a, __b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_xor_epi32(__m512i __a, __m512i __b) -{ - return (__m512i)((__v16su)__a ^ (__v16su)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_xor_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k, - (__v16si)_mm512_xor_epi32(__a, __b), - (__v16si)__src); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_xor_epi32(__mmask16 __k, __m512i __a, __m512i __b) -{ - return (__m512i)_mm512_mask_xor_epi32(_mm512_setzero_si512(), __k, __a, __b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_xor_epi64(__m512i __a, __m512i __b) -{ - return (__m512i)((__v8du)__a ^ (__v8du)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_xor_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__k, - (__v8di)_mm512_xor_epi64(__a, __b), - (__v8di)__src); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_xor_epi64(__mmask8 __k, __m512i __a, __m512i __b) -{ - return (__m512i)_mm512_mask_xor_epi64(_mm512_setzero_si512(), __k, __a, __b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_and_si512(__m512i __a, __m512i __b) -{ - return (__m512i)((__v8du)__a & (__v8du)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_or_si512(__m512i __a, __m512i __b) -{ - return (__m512i)((__v8du)__a | (__v8du)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_xor_si512(__m512i __a, __m512i __b) -{ - return (__m512i)((__v8du)__a ^ (__v8du)__b); -} - -/* Arithmetic */ - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_add_pd(__m512d __a, __m512d __b) -{ - return (__m512d)((__v8df)__a + (__v8df)__b); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_add_ps(__m512 __a, __m512 __b) -{ - return (__m512)((__v16sf)__a + (__v16sf)__b); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_mul_pd(__m512d __a, __m512d __b) -{ - return (__m512d)((__v8df)__a * (__v8df)__b); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_mul_ps(__m512 __a, __m512 __b) -{ - return (__m512)((__v16sf)__a * (__v16sf)__b); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_sub_pd(__m512d __a, __m512d __b) -{ - return (__m512d)((__v8df)__a - (__v8df)__b); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_sub_ps(__m512 __a, __m512 __b) -{ - return (__m512)((__v16sf)__a - (__v16sf)__b); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_add_epi64 (__m512i __A, __m512i __B) -{ - return (__m512i) ((__v8du) __A + (__v8du) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_add_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_add_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_add_epi64(__mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_add_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sub_epi64 (__m512i __A, __m512i __B) -{ - return (__m512i) ((__v8du) __A - (__v8du) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sub_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_sub_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sub_epi64(__mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_sub_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_add_epi32 (__m512i __A, __m512i __B) -{ - return (__m512i) ((__v16su) __A + (__v16su) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_add_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_add_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_add_epi32 (__mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_add_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sub_epi32 (__m512i __A, __m512i __B) -{ - return (__m512i) ((__v16su) __A - (__v16su) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sub_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_sub_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_sub_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -#define _mm512_max_round_pd(A, B, R) \ - ((__m512d)__builtin_ia32_maxpd512((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(R))) - -#define _mm512_mask_max_round_pd(W, U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_max_round_pd((A), (B), (R)), \ - (__v8df)(W))) - -#define _mm512_maskz_max_round_pd(U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_max_round_pd((A), (B), (R)), \ - (__v8df)_mm512_setzero_pd())) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_max_pd(__m512d __A, __m512d __B) -{ - return (__m512d) __builtin_ia32_maxpd512((__v8df) __A, (__v8df) __B, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_max_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_max_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_pd (__mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_max_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -#define _mm512_max_round_ps(A, B, R) \ - ((__m512)__builtin_ia32_maxps512((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(R))) - -#define _mm512_mask_max_round_ps(W, U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_max_round_ps((A), (B), (R)), \ - (__v16sf)(W))) - -#define _mm512_maskz_max_round_ps(U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_max_round_ps((A), (B), (R)), \ - (__v16sf)_mm512_setzero_ps())) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_max_ps(__m512 __A, __m512 __B) -{ - return (__m512) __builtin_ia32_maxps512((__v16sf) __A, (__v16sf) __B, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_max_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_max_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_ps (__mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_max_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_max_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { - return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_max_ss(__mmask8 __U,__m128 __A, __m128 __B) { - return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) _mm_setzero_ps (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_max_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_max_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm_maskz_max_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_max_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { - return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_max_sd(__mmask8 __U,__m128d __A, __m128d __B) { - return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) _mm_setzero_pd (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_max_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_max_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_max_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline __m512i -__DEFAULT_FN_ATTRS512 -_mm512_max_epi32(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_max((__v16si)__A, (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_max_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_max_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_epi32 (__mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_max_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_max_epu32(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_max((__v16su)__A, (__v16su)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_max_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_max_epu32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_epu32 (__mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_max_epu32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_max_epi64(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_max((__v8di)__A, (__v8di)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_max_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_max_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_epi64 (__mmask8 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_max_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_max_epu64(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_max((__v8du)__A, (__v8du)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_max_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_max_epu64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_epu64 (__mmask8 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_max_epu64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -#define _mm512_min_round_pd(A, B, R) \ - ((__m512d)__builtin_ia32_minpd512((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(R))) - -#define _mm512_mask_min_round_pd(W, U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_min_round_pd((A), (B), (R)), \ - (__v8df)(W))) - -#define _mm512_maskz_min_round_pd(U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_min_round_pd((A), (B), (R)), \ - (__v8df)_mm512_setzero_pd())) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_min_pd(__m512d __A, __m512d __B) -{ - return (__m512d) __builtin_ia32_minpd512((__v8df) __A, (__v8df) __B, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_min_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_min_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_pd (__mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_min_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -#define _mm512_min_round_ps(A, B, R) \ - ((__m512)__builtin_ia32_minps512((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(R))) - -#define _mm512_mask_min_round_ps(W, U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_min_round_ps((A), (B), (R)), \ - (__v16sf)(W))) - -#define _mm512_maskz_min_round_ps(U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_min_round_ps((A), (B), (R)), \ - (__v16sf)_mm512_setzero_ps())) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_min_ps(__m512 __A, __m512 __B) -{ - return (__m512) __builtin_ia32_minps512((__v16sf) __A, (__v16sf) __B, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_min_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_min_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_ps (__mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_min_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_min_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { - return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_min_ss(__mmask8 __U,__m128 __A, __m128 __B) { - return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) _mm_setzero_ps (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_min_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_min_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm_maskz_min_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_min_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { - return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_min_sd(__mmask8 __U,__m128d __A, __m128d __B) { - return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) _mm_setzero_pd (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_min_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_min_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_min_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline __m512i -__DEFAULT_FN_ATTRS512 -_mm512_min_epi32(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_min((__v16si)__A, (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_min_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_min_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_epi32 (__mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_min_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_min_epu32(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_min((__v16su)__A, (__v16su)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_min_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_min_epu32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_epu32 (__mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_min_epu32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_min_epi64(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_min((__v8di)__A, (__v8di)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_min_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_min_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_epi64 (__mmask8 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_min_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_min_epu64(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_elementwise_min((__v8du)__A, (__v8du)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_min_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_min_epu64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_epu64 (__mmask8 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_min_epu64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mul_epi32(__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_pmuldq512((__v16si)__X, (__v16si) __Y); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mul_epi32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_mul_epi32(__X, __Y), - (__v8di)__W); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mul_epi32(__mmask8 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_mul_epi32(__X, __Y), - (__v8di)_mm512_setzero_si512 ()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mul_epu32(__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_pmuludq512((__v16si)__X, (__v16si)__Y); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mul_epu32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_mul_epu32(__X, __Y), - (__v8di)__W); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mul_epu32(__mmask8 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_mul_epu32(__X, __Y), - (__v8di)_mm512_setzero_si512 ()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mullo_epi32 (__m512i __A, __m512i __B) -{ - return (__m512i) ((__v16su) __A * (__v16su) __B); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mullo_epi32(__mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_mullo_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mullo_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_mullo_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mullox_epi64 (__m512i __A, __m512i __B) { - return (__m512i) ((__v8du) __A * (__v8du) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mullox_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) { - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_mullox_epi64(__A, __B), - (__v8di)__W); -} - -#define _mm512_sqrt_round_pd(A, R) \ - ((__m512d)__builtin_ia32_sqrtpd512((__v8df)(__m512d)(A), (int)(R))) - -#define _mm512_mask_sqrt_round_pd(W, U, A, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_sqrt_round_pd((A), (R)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_sqrt_round_pd(U, A, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_sqrt_round_pd((A), (R)), \ - (__v8df)_mm512_setzero_pd())) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_sqrt_pd(__m512d __A) -{ - return (__m512d)__builtin_ia32_sqrtpd512((__v8df)__A, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_sqrt_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_sqrt_pd(__A), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_sqrt_pd (__mmask8 __U, __m512d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_sqrt_pd(__A), - (__v8df)_mm512_setzero_pd()); -} - -#define _mm512_sqrt_round_ps(A, R) \ - ((__m512)__builtin_ia32_sqrtps512((__v16sf)(__m512)(A), (int)(R))) - -#define _mm512_mask_sqrt_round_ps(W, U, A, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_sqrt_round_ps((A), (R)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_sqrt_round_ps(U, A, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_sqrt_round_ps((A), (R)), \ - (__v16sf)_mm512_setzero_ps())) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_sqrt_ps(__m512 __A) -{ - return (__m512)__builtin_ia32_sqrtps512((__v16sf)__A, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_sqrt_ps(__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_sqrt_ps(__A), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_sqrt_ps( __mmask16 __U, __m512 __A) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_sqrt_ps(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_rsqrt14_pd(__m512d __A) -{ - return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A, - (__v8df) - _mm512_setzero_pd (), - (__mmask8) -1);} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_rsqrt14_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A, - (__v8df) __W, - (__mmask8) __U); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_rsqrt14_pd (__mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A, - (__v8df) - _mm512_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_rsqrt14_ps(__m512 __A) -{ - return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) -1); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_rsqrt14_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A, - (__v16sf) __W, - (__mmask16) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_rsqrt14_ps (__mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_rsqrt14_ss(__m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_rsqrt14_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_rsqrt14_ss (__mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_rsqrt14_sd(__m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_rsqrt14sd_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) - _mm_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_rsqrt14_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_rsqrt14sd_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_rsqrt14_sd (__mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_rsqrt14sd_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_rcp14_pd(__m512d __A) -{ - return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A, - (__v8df) - _mm512_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_rcp14_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A, - (__v8df) __W, - (__mmask8) __U); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_rcp14_pd (__mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A, - (__v8df) - _mm512_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_rcp14_ps(__m512 __A) -{ - return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) -1); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_rcp14_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A, - (__v16sf) __W, - (__mmask16) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_rcp14_ps (__mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_rcp14_ss(__m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_rcp14_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_rcp14_ss (__mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_rcp14_sd(__m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_rcp14sd_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) - _mm_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_rcp14_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_rcp14sd_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_rcp14_sd (__mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_rcp14sd_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_floor_ps(__m512 __A) -{ - return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, - _MM_FROUND_FLOOR, - (__v16sf) __A, (unsigned short)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_floor_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, - _MM_FROUND_FLOOR, - (__v16sf) __W, __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_floor_pd(__m512d __A) -{ - return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, - _MM_FROUND_FLOOR, - (__v8df) __A, (unsigned char)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_floor_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, - _MM_FROUND_FLOOR, - (__v8df) __W, __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_ceil_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, - _MM_FROUND_CEIL, - (__v16sf) __W, __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_ceil_ps(__m512 __A) -{ - return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, - _MM_FROUND_CEIL, - (__v16sf) __A, (unsigned short)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_ceil_pd(__m512d __A) -{ - return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, - _MM_FROUND_CEIL, - (__v8df) __A, (unsigned char)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_ceil_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, - _MM_FROUND_CEIL, - (__v8df) __W, __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_abs_epi64(__m512i __A) -{ - return (__m512i)__builtin_elementwise_abs((__v8di)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_abs_epi64 (__m512i __W, __mmask8 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_abs_epi64(__A), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_abs_epi64 (__mmask8 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_abs_epi64(__A), - (__v8di)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_abs_epi32(__m512i __A) -{ - return (__m512i)__builtin_elementwise_abs((__v16si) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_abs_epi32 (__m512i __W, __mmask16 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_abs_epi32(__A), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_abs_epi32 (__mmask16 __U, __m512i __A) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_abs_epi32(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_add_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { - __A = _mm_add_ss(__A, __B); - return __builtin_ia32_selectss_128(__U, __A, __W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_add_ss(__mmask8 __U,__m128 __A, __m128 __B) { - __A = _mm_add_ss(__A, __B); - return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps()); -} - -#define _mm_add_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_add_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm_maskz_add_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_add_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { - __A = _mm_add_sd(__A, __B); - return __builtin_ia32_selectsd_128(__U, __A, __W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_add_sd(__mmask8 __U,__m128d __A, __m128d __B) { - __A = _mm_add_sd(__A, __B); - return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd()); -} -#define _mm_add_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_add_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_add_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_add_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_add_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_add_pd(__mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_add_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_add_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_add_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_add_ps(__mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_add_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -#define _mm512_add_round_pd(A, B, R) \ - ((__m512d)__builtin_ia32_addpd512((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(R))) - -#define _mm512_mask_add_round_pd(W, U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_add_round_pd((A), (B), (R)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_add_round_pd(U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_add_round_pd((A), (B), (R)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_add_round_ps(A, B, R) \ - ((__m512)__builtin_ia32_addps512((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(R))) - -#define _mm512_mask_add_round_ps(W, U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_add_round_ps((A), (B), (R)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_add_round_ps(U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_add_round_ps((A), (B), (R)), \ - (__v16sf)_mm512_setzero_ps())) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_sub_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { - __A = _mm_sub_ss(__A, __B); - return __builtin_ia32_selectss_128(__U, __A, __W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_sub_ss(__mmask8 __U,__m128 __A, __m128 __B) { - __A = _mm_sub_ss(__A, __B); - return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps()); -} -#define _mm_sub_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_sub_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm_maskz_sub_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_sub_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { - __A = _mm_sub_sd(__A, __B); - return __builtin_ia32_selectsd_128(__U, __A, __W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_sub_sd(__mmask8 __U,__m128d __A, __m128d __B) { - __A = _mm_sub_sd(__A, __B); - return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd()); -} - -#define _mm_sub_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_sub_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_sub_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_sub_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_sub_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_sub_pd(__mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_sub_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_sub_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_sub_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_sub_ps(__mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_sub_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -#define _mm512_sub_round_pd(A, B, R) \ - ((__m512d)__builtin_ia32_subpd512((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(R))) - -#define _mm512_mask_sub_round_pd(W, U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_sub_round_pd((A), (B), (R)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_sub_round_pd(U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_sub_round_pd((A), (B), (R)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_sub_round_ps(A, B, R) \ - ((__m512)__builtin_ia32_subps512((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(R))) - -#define _mm512_mask_sub_round_ps(W, U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_sub_round_ps((A), (B), (R)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_sub_round_ps(U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_sub_round_ps((A), (B), (R)), \ - (__v16sf)_mm512_setzero_ps())) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_mul_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { - __A = _mm_mul_ss(__A, __B); - return __builtin_ia32_selectss_128(__U, __A, __W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_mul_ss(__mmask8 __U,__m128 __A, __m128 __B) { - __A = _mm_mul_ss(__A, __B); - return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps()); -} -#define _mm_mul_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_mul_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm_maskz_mul_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_mul_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { - __A = _mm_mul_sd(__A, __B); - return __builtin_ia32_selectsd_128(__U, __A, __W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_mul_sd(__mmask8 __U,__m128d __A, __m128d __B) { - __A = _mm_mul_sd(__A, __B); - return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd()); -} - -#define _mm_mul_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_mul_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_mul_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_mul_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_mul_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_mul_pd(__mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_mul_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_mul_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_mul_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_mul_ps(__mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_mul_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -#define _mm512_mul_round_pd(A, B, R) \ - ((__m512d)__builtin_ia32_mulpd512((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(R))) - -#define _mm512_mask_mul_round_pd(W, U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_mul_round_pd((A), (B), (R)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_mul_round_pd(U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_mul_round_pd((A), (B), (R)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_mul_round_ps(A, B, R) \ - ((__m512)__builtin_ia32_mulps512((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(R))) - -#define _mm512_mask_mul_round_ps(W, U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_mul_round_ps((A), (B), (R)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_mul_round_ps(U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_mul_round_ps((A), (B), (R)), \ - (__v16sf)_mm512_setzero_ps())) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_div_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) { - __A = _mm_div_ss(__A, __B); - return __builtin_ia32_selectss_128(__U, __A, __W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_div_ss(__mmask8 __U,__m128 __A, __m128 __B) { - __A = _mm_div_ss(__A, __B); - return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps()); -} - -#define _mm_div_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_div_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm_maskz_div_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_div_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) { - __A = _mm_div_sd(__A, __B); - return __builtin_ia32_selectsd_128(__U, __A, __W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_div_sd(__mmask8 __U,__m128d __A, __m128d __B) { - __A = _mm_div_sd(__A, __B); - return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd()); -} - -#define _mm_div_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_div_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_div_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_div_pd(__m512d __a, __m512d __b) -{ - return (__m512d)((__v8df)__a/(__v8df)__b); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_div_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_div_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_div_pd(__mmask8 __U, __m512d __A, __m512d __B) { - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_div_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_div_ps(__m512 __a, __m512 __b) -{ - return (__m512)((__v16sf)__a/(__v16sf)__b); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_div_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_div_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_div_ps(__mmask16 __U, __m512 __A, __m512 __B) { - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_div_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -#define _mm512_div_round_pd(A, B, R) \ - ((__m512d)__builtin_ia32_divpd512((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(R))) - -#define _mm512_mask_div_round_pd(W, U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_div_round_pd((A), (B), (R)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_div_round_pd(U, A, B, R) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_div_round_pd((A), (B), (R)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_div_round_ps(A, B, R) \ - ((__m512)__builtin_ia32_divps512((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(R))) - -#define _mm512_mask_div_round_ps(W, U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_div_round_ps((A), (B), (R)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_div_round_ps(U, A, B, R) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_div_round_ps((A), (B), (R)), \ - (__v16sf)_mm512_setzero_ps())) - -#define _mm512_roundscale_ps(A, B) \ - ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(A), (int)(B), \ - (__v16sf)_mm512_undefined_ps(), \ - (__mmask16)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_roundscale_ps(A, B, C, imm) \ - ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(C), (int)(imm), \ - (__v16sf)(__m512)(A), (__mmask16)(B), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_roundscale_ps(A, B, imm) \ - ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(B), (int)(imm), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(A), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_roundscale_round_ps(A, B, C, imm, R) \ - ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(C), (int)(imm), \ - (__v16sf)(__m512)(A), (__mmask16)(B), \ - (int)(R))) - -#define _mm512_maskz_roundscale_round_ps(A, B, imm, R) \ - ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(B), (int)(imm), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(A), (int)(R))) - -#define _mm512_roundscale_round_ps(A, imm, R) \ - ((__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(A), (int)(imm), \ - (__v16sf)_mm512_undefined_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_roundscale_pd(A, B) \ - ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(A), (int)(B), \ - (__v8df)_mm512_undefined_pd(), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_roundscale_pd(A, B, C, imm) \ - ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(C), (int)(imm), \ - (__v8df)(__m512d)(A), (__mmask8)(B), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_roundscale_pd(A, B, imm) \ - ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(B), (int)(imm), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(A), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_roundscale_round_pd(A, B, C, imm, R) \ - ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(C), (int)(imm), \ - (__v8df)(__m512d)(A), (__mmask8)(B), \ - (int)(R))) - -#define _mm512_maskz_roundscale_round_pd(A, B, imm, R) \ - ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(B), (int)(imm), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(A), (int)(R))) - -#define _mm512_roundscale_round_pd(A, imm, R) \ - ((__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(A), (int)(imm), \ - (__v8df)_mm512_undefined_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_fmadd_round_pd(A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)-1, (int)(R))) - - -#define _mm512_mask_fmadd_round_pd(A, U, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_mask3_fmadd_round_pd(A, B, C, U, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask3((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_maskz_fmadd_round_pd(U, A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_maskz((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_fmsub_round_pd(A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)-1, (int)(R))) - - -#define _mm512_mask_fmsub_round_pd(A, U, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_maskz_fmsub_round_pd(U, A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_maskz((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_fnmadd_round_pd(A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask(-(__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)-1, (int)(R))) - - -#define _mm512_mask3_fnmadd_round_pd(A, B, C, U, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask3(-(__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_maskz_fnmadd_round_pd(U, A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_maskz(-(__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_fnmsub_round_pd(A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask(-(__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)-1, (int)(R))) - - -#define _mm512_maskz_fnmsub_round_pd(U, A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_maskz(-(__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_fmadd_pd(__m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_fmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask3 ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_fmsub_pd(__m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, - (__v8df) __B, - -(__v8df) __C, - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_fmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, - (__v8df) __B, - -(__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A, - (__v8df) __B, - -(__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, - -(__v8df) __B, - (__v8df) __C, - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask3_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask3 (-(__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_fnmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, - -(__v8df) __B, - -(__v8df) __C, - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_fnmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A, - (__v8df) __B, - -(__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fmadd_round_ps(A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)-1, (int)(R))) - - -#define _mm512_mask_fmadd_round_ps(A, U, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_mask3_fmadd_round_ps(A, B, C, U, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask3((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_maskz_fmadd_round_ps(U, A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_maskz((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_fmsub_round_ps(A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)-1, (int)(R))) - - -#define _mm512_mask_fmsub_round_ps(A, U, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_maskz_fmsub_round_ps(U, A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_maskz((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_fnmadd_round_ps(A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ - -(__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)-1, (int)(R))) - - -#define _mm512_mask3_fnmadd_round_ps(A, B, C, U, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask3(-(__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_maskz_fnmadd_round_ps(U, A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_maskz(-(__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_fnmsub_round_ps(A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ - -(__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)-1, (int)(R))) - - -#define _mm512_maskz_fnmsub_round_ps(U, A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_maskz(-(__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_fmadd_ps(__m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_fmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask3 ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_fmsub_ps(__m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, - (__v16sf) __B, - -(__v16sf) __C, - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_fmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, - (__v16sf) __B, - -(__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A, - (__v16sf) __B, - -(__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, - -(__v16sf) __B, - (__v16sf) __C, - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask3_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask3 (-(__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_fnmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, - -(__v16sf) __B, - -(__v16sf) __C, - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_fnmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A, - (__v16sf) __B, - -(__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fmaddsub_round_pd(A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)-1, (int)(R))) - - -#define _mm512_mask_fmaddsub_round_pd(A, U, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_mask3_fmaddsub_round_pd(A, B, C, U, R) \ - ((__m512d)__builtin_ia32_vfmaddsubpd512_mask3((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_maskz_fmaddsub_round_pd(U, A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddsubpd512_maskz((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_fmsubadd_round_pd(A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)-1, (int)(R))) - - -#define _mm512_mask_fmsubadd_round_pd(A, U, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_maskz_fmsubadd_round_pd(U, A, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddsubpd512_maskz((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_fmaddsub_pd(__m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_fmaddsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmaddsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) -{ - return (__m512d) __builtin_ia32_vfmaddsubpd512_mask3 ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmaddsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_fmsubadd_pd(__m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A, - (__v8df) __B, - -(__v8df) __C, - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_fmsubadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A, - (__v8df) __B, - -(__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmsubadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A, - (__v8df) __B, - -(__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fmaddsub_round_ps(A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)-1, (int)(R))) - - -#define _mm512_mask_fmaddsub_round_ps(A, U, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_mask3_fmaddsub_round_ps(A, B, C, U, R) \ - ((__m512)__builtin_ia32_vfmaddsubps512_mask3((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_maskz_fmaddsub_round_ps(U, A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddsubps512_maskz((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_fmsubadd_round_ps(A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)-1, (int)(R))) - - -#define _mm512_mask_fmsubadd_round_ps(A, U, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_maskz_fmsubadd_round_ps(U, A, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddsubps512_maskz((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_fmaddsub_ps(__m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_fmaddsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmaddsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) -{ - return (__m512) __builtin_ia32_vfmaddsubps512_mask3 ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmaddsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_fmsubadd_ps(__m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A, - (__v16sf) __B, - -(__v16sf) __C, - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_fmsubadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A, - (__v16sf) __B, - -(__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmsubadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A, - (__v16sf) __B, - -(__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask3_fmsub_round_pd(A, B, C, U, R) \ - ((__m512d)__builtin_ia32_vfmsubpd512_mask3((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) -{ - return (__m512d)__builtin_ia32_vfmsubpd512_mask3 ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask3_fmsub_round_ps(A, B, C, U, R) \ - ((__m512)__builtin_ia32_vfmsubps512_mask3((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) -{ - return (__m512)__builtin_ia32_vfmsubps512_mask3 ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask3_fmsubadd_round_pd(A, B, C, U, R) \ - ((__m512d)__builtin_ia32_vfmsubaddpd512_mask3((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmsubadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) -{ - return (__m512d)__builtin_ia32_vfmsubaddpd512_mask3 ((__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask3_fmsubadd_round_ps(A, B, C, U, R) \ - ((__m512)__builtin_ia32_vfmsubaddps512_mask3((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmsubadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) -{ - return (__m512)__builtin_ia32_vfmsubaddps512_mask3 ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask_fnmadd_round_pd(A, U, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ - -(__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_fnmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, - -(__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask_fnmadd_round_ps(A, U, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ - -(__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, - -(__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask_fnmsub_round_pd(A, U, B, C, R) \ - ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \ - -(__v8df)(__m512d)(B), \ - -(__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -#define _mm512_mask3_fnmsub_round_pd(A, B, C, U, R) \ - ((__m512d)__builtin_ia32_vfmsubpd512_mask3(-(__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(C), \ - (__mmask8)(U), (int)(R))) - - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_fnmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) -{ - return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A, - -(__v8df) __B, - -(__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) -{ - return (__m512d) __builtin_ia32_vfmsubpd512_mask3 (-(__v8df) __A, - (__v8df) __B, - (__v8df) __C, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask_fnmsub_round_ps(A, U, B, C, R) \ - ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \ - -(__v16sf)(__m512)(B), \ - -(__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -#define _mm512_mask3_fnmsub_round_ps(A, B, C, U, R) \ - ((__m512)__builtin_ia32_vfmsubps512_mask3(-(__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(C), \ - (__mmask16)(U), (int)(R))) - - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_fnmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) -{ - return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A, - -(__v16sf) __B, - -(__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask3_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) -{ - return (__m512) __builtin_ia32_vfmsubps512_mask3 (-(__v16sf) __A, - (__v16sf) __B, - (__v16sf) __C, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - - - -/* Vector permutations */ - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_permutex2var_epi32(__m512i __A, __m512i __I, __m512i __B) -{ - return (__m512i)__builtin_ia32_vpermi2vard512((__v16si)__A, (__v16si) __I, - (__v16si) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_permutex2var_epi32(__m512i __A, __mmask16 __U, __m512i __I, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_permutex2var_epi32(__A, __I, __B), - (__v16si)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask2_permutex2var_epi32(__m512i __A, __m512i __I, __mmask16 __U, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_permutex2var_epi32(__A, __I, __B), - (__v16si)__I); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutex2var_epi32(__mmask16 __U, __m512i __A, __m512i __I, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_permutex2var_epi32(__A, __I, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_permutex2var_epi64(__m512i __A, __m512i __I, __m512i __B) -{ - return (__m512i)__builtin_ia32_vpermi2varq512((__v8di)__A, (__v8di) __I, - (__v8di) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_permutex2var_epi64(__m512i __A, __mmask8 __U, __m512i __I, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_permutex2var_epi64(__A, __I, __B), - (__v8di)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask2_permutex2var_epi64(__m512i __A, __m512i __I, __mmask8 __U, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_permutex2var_epi64(__A, __I, __B), - (__v8di)__I); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_permutex2var_epi64(__A, __I, __B), - (__v8di)_mm512_setzero_si512()); -} - -#define _mm512_alignr_epi64(A, B, I) \ - ((__m512i)__builtin_ia32_alignq512((__v8di)(__m512i)(A), \ - (__v8di)(__m512i)(B), (int)(I))) - -#define _mm512_mask_alignr_epi64(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_alignr_epi64((A), (B), (imm)), \ - (__v8di)(__m512i)(W))) - -#define _mm512_maskz_alignr_epi64(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_alignr_epi64((A), (B), (imm)), \ - (__v8di)_mm512_setzero_si512())) - -#define _mm512_alignr_epi32(A, B, I) \ - ((__m512i)__builtin_ia32_alignd512((__v16si)(__m512i)(A), \ - (__v16si)(__m512i)(B), (int)(I))) - -#define _mm512_mask_alignr_epi32(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_alignr_epi32((A), (B), (imm)), \ - (__v16si)(__m512i)(W))) - -#define _mm512_maskz_alignr_epi32(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_alignr_epi32((A), (B), (imm)), \ - (__v16si)_mm512_setzero_si512())) -/* Vector Extract */ - -#define _mm512_extractf64x4_pd(A, I) \ - ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(I), \ - (__v4df)_mm256_undefined_pd(), \ - (__mmask8)-1)) - -#define _mm512_mask_extractf64x4_pd(W, U, A, imm) \ - ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(imm), \ - (__v4df)(__m256d)(W), \ - (__mmask8)(U))) - -#define _mm512_maskz_extractf64x4_pd(U, A, imm) \ - ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(imm), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm512_extractf32x4_ps(A, I) \ - ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(I), \ - (__v4sf)_mm_undefined_ps(), \ - (__mmask8)-1)) - -#define _mm512_mask_extractf32x4_ps(W, U, A, imm) \ - ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(imm), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U))) - -#define _mm512_maskz_extractf32x4_ps(U, A, imm) \ - ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(imm), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U))) - -/* Vector Blend */ - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_blend_pd(__mmask8 __U, __m512d __A, __m512d __W) -{ - return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U, - (__v8df) __W, - (__v8df) __A); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_blend_ps(__mmask16 __U, __m512 __A, __m512 __W) -{ - return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U, - (__v16sf) __W, - (__v16sf) __A); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_blend_epi64(__mmask8 __U, __m512i __A, __m512i __W) -{ - return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U, - (__v8di) __W, - (__v8di) __A); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_blend_epi32(__mmask16 __U, __m512i __A, __m512i __W) -{ - return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U, - (__v16si) __W, - (__v16si) __A); -} - -/* Compare */ - -#define _mm512_cmp_round_ps_mask(A, B, P, R) \ - ((__mmask16)__builtin_ia32_cmpps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(P), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_cmp_round_ps_mask(U, A, B, P, R) \ - ((__mmask16)__builtin_ia32_cmpps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(P), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_cmp_ps_mask(A, B, P) \ - _mm512_cmp_round_ps_mask((A), (B), (P), _MM_FROUND_CUR_DIRECTION) -#define _mm512_mask_cmp_ps_mask(U, A, B, P) \ - _mm512_mask_cmp_round_ps_mask((U), (A), (B), (P), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_cmpeq_ps_mask(A, B) \ - _mm512_cmp_ps_mask((A), (B), _CMP_EQ_OQ) -#define _mm512_mask_cmpeq_ps_mask(k, A, B) \ - _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_EQ_OQ) - -#define _mm512_cmplt_ps_mask(A, B) \ - _mm512_cmp_ps_mask((A), (B), _CMP_LT_OS) -#define _mm512_mask_cmplt_ps_mask(k, A, B) \ - _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_LT_OS) - -#define _mm512_cmple_ps_mask(A, B) \ - _mm512_cmp_ps_mask((A), (B), _CMP_LE_OS) -#define _mm512_mask_cmple_ps_mask(k, A, B) \ - _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_LE_OS) - -#define _mm512_cmpunord_ps_mask(A, B) \ - _mm512_cmp_ps_mask((A), (B), _CMP_UNORD_Q) -#define _mm512_mask_cmpunord_ps_mask(k, A, B) \ - _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_UNORD_Q) - -#define _mm512_cmpneq_ps_mask(A, B) \ - _mm512_cmp_ps_mask((A), (B), _CMP_NEQ_UQ) -#define _mm512_mask_cmpneq_ps_mask(k, A, B) \ - _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NEQ_UQ) - -#define _mm512_cmpnlt_ps_mask(A, B) \ - _mm512_cmp_ps_mask((A), (B), _CMP_NLT_US) -#define _mm512_mask_cmpnlt_ps_mask(k, A, B) \ - _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NLT_US) - -#define _mm512_cmpnle_ps_mask(A, B) \ - _mm512_cmp_ps_mask((A), (B), _CMP_NLE_US) -#define _mm512_mask_cmpnle_ps_mask(k, A, B) \ - _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NLE_US) - -#define _mm512_cmpord_ps_mask(A, B) \ - _mm512_cmp_ps_mask((A), (B), _CMP_ORD_Q) -#define _mm512_mask_cmpord_ps_mask(k, A, B) \ - _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_ORD_Q) - -#define _mm512_cmp_round_pd_mask(A, B, P, R) \ - ((__mmask8)__builtin_ia32_cmppd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(P), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cmp_round_pd_mask(U, A, B, P, R) \ - ((__mmask8)__builtin_ia32_cmppd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(P), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_cmp_pd_mask(A, B, P) \ - _mm512_cmp_round_pd_mask((A), (B), (P), _MM_FROUND_CUR_DIRECTION) -#define _mm512_mask_cmp_pd_mask(U, A, B, P) \ - _mm512_mask_cmp_round_pd_mask((U), (A), (B), (P), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_cmpeq_pd_mask(A, B) \ - _mm512_cmp_pd_mask((A), (B), _CMP_EQ_OQ) -#define _mm512_mask_cmpeq_pd_mask(k, A, B) \ - _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_EQ_OQ) - -#define _mm512_cmplt_pd_mask(A, B) \ - _mm512_cmp_pd_mask((A), (B), _CMP_LT_OS) -#define _mm512_mask_cmplt_pd_mask(k, A, B) \ - _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_LT_OS) - -#define _mm512_cmple_pd_mask(A, B) \ - _mm512_cmp_pd_mask((A), (B), _CMP_LE_OS) -#define _mm512_mask_cmple_pd_mask(k, A, B) \ - _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_LE_OS) - -#define _mm512_cmpunord_pd_mask(A, B) \ - _mm512_cmp_pd_mask((A), (B), _CMP_UNORD_Q) -#define _mm512_mask_cmpunord_pd_mask(k, A, B) \ - _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_UNORD_Q) - -#define _mm512_cmpneq_pd_mask(A, B) \ - _mm512_cmp_pd_mask((A), (B), _CMP_NEQ_UQ) -#define _mm512_mask_cmpneq_pd_mask(k, A, B) \ - _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NEQ_UQ) - -#define _mm512_cmpnlt_pd_mask(A, B) \ - _mm512_cmp_pd_mask((A), (B), _CMP_NLT_US) -#define _mm512_mask_cmpnlt_pd_mask(k, A, B) \ - _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NLT_US) - -#define _mm512_cmpnle_pd_mask(A, B) \ - _mm512_cmp_pd_mask((A), (B), _CMP_NLE_US) -#define _mm512_mask_cmpnle_pd_mask(k, A, B) \ - _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NLE_US) - -#define _mm512_cmpord_pd_mask(A, B) \ - _mm512_cmp_pd_mask((A), (B), _CMP_ORD_Q) -#define _mm512_mask_cmpord_pd_mask(k, A, B) \ - _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_ORD_Q) - -/* Conversion */ - -#define _mm512_cvtt_roundps_epu32(A, R) \ - ((__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \ - (__v16si)_mm512_undefined_epi32(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_cvtt_roundps_epu32(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \ - (__v16si)(__m512i)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundps_epu32(U, A, R) \ - ((__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \ - (__v16si)_mm512_setzero_si512(), \ - (__mmask16)(U), (int)(R))) - - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttps_epu32(__m512 __A) -{ - return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A, - (__v16si) - _mm512_setzero_si512 (), - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttps_epu32 (__m512i __W, __mmask16 __U, __m512 __A) -{ - return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A, - (__v16si) __W, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttps_epu32 (__mmask16 __U, __m512 __A) -{ - return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A, - (__v16si) _mm512_setzero_si512 (), - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepi32_ps(A, R) \ - ((__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_cvt_roundepi32_ps(W, U, A, R) \ - ((__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepi32_ps(U, A, R) \ - ((__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_cvt_roundepu32_ps(A, R) \ - ((__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_cvt_roundepu32_ps(W, U, A, R) \ - ((__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepu32_ps(U, A, R) \ - ((__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_cvtepu32_ps (__m512i __A) -{ - return (__m512)__builtin_convertvector((__v16su)__A, __v16sf); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu32_ps (__m512 __W, __mmask16 __U, __m512i __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_cvtepu32_ps(__A), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu32_ps (__mmask16 __U, __m512i __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_cvtepu32_ps(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_cvtepi32_pd(__m256i __A) -{ - return (__m512d)__builtin_convertvector((__v8si)__A, __v8df); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32_pd (__m512d __W, __mmask8 __U, __m256i __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, - (__v8df)_mm512_cvtepi32_pd(__A), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi32_pd (__mmask8 __U, __m256i __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, - (__v8df)_mm512_cvtepi32_pd(__A), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_cvtepi32lo_pd(__m512i __A) -{ - return (__m512d) _mm512_cvtepi32_pd(_mm512_castsi512_si256(__A)); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32lo_pd(__m512d __W, __mmask8 __U,__m512i __A) -{ - return (__m512d) _mm512_mask_cvtepi32_pd(__W, __U, _mm512_castsi512_si256(__A)); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_cvtepi32_ps (__m512i __A) -{ - return (__m512)__builtin_convertvector((__v16si)__A, __v16sf); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32_ps (__m512 __W, __mmask16 __U, __m512i __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_cvtepi32_ps(__A), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi32_ps (__mmask16 __U, __m512i __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_cvtepi32_ps(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_cvtepu32_pd(__m256i __A) -{ - return (__m512d)__builtin_convertvector((__v8su)__A, __v8df); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu32_pd (__m512d __W, __mmask8 __U, __m256i __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, - (__v8df)_mm512_cvtepu32_pd(__A), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu32_pd (__mmask8 __U, __m256i __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, - (__v8df)_mm512_cvtepu32_pd(__A), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_cvtepu32lo_pd(__m512i __A) -{ - return (__m512d) _mm512_cvtepu32_pd(_mm512_castsi512_si256(__A)); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U,__m512i __A) -{ - return (__m512d) _mm512_mask_cvtepu32_pd(__W, __U, _mm512_castsi512_si256(__A)); -} - -#define _mm512_cvt_roundpd_ps(A, R) \ - ((__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundpd_ps(W, U, A, R) \ - ((__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \ - (__v8sf)(__m256)(W), (__mmask8)(U), \ - (int)(R))) - -#define _mm512_maskz_cvt_roundpd_ps(U, A, R) \ - ((__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_cvtpd_ps (__m512d __A) -{ - return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A, - (__v8sf) _mm256_undefined_ps (), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpd_ps (__m256 __W, __mmask8 __U, __m512d __A) -{ - return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A, - (__v8sf) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtpd_ps (__mmask8 __U, __m512d __A) -{ - return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A, - (__v8sf) _mm256_setzero_ps (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_cvtpd_pslo (__m512d __A) -{ - return (__m512) __builtin_shufflevector((__v8sf) _mm512_cvtpd_ps(__A), - (__v8sf) _mm256_setzero_ps (), - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpd_pslo (__m512 __W, __mmask8 __U,__m512d __A) -{ - return (__m512) __builtin_shufflevector ( - (__v8sf) _mm512_mask_cvtpd_ps (_mm512_castps512_ps256(__W), - __U, __A), - (__v8sf) _mm256_setzero_ps (), - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); -} - -#define _mm512_cvt_roundps_ph(A, I) \ - ((__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \ - (__v16hi)_mm256_undefined_si256(), \ - (__mmask16)-1)) - -#define _mm512_mask_cvt_roundps_ph(U, W, A, I) \ - ((__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \ - (__v16hi)(__m256i)(U), \ - (__mmask16)(W))) - -#define _mm512_maskz_cvt_roundps_ph(W, A, I) \ - ((__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \ - (__v16hi)_mm256_setzero_si256(), \ - (__mmask16)(W))) - -#define _mm512_cvtps_ph _mm512_cvt_roundps_ph -#define _mm512_mask_cvtps_ph _mm512_mask_cvt_roundps_ph -#define _mm512_maskz_cvtps_ph _mm512_maskz_cvt_roundps_ph - -#define _mm512_cvt_roundph_ps(A, R) \ - ((__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \ - (__v16sf)_mm512_undefined_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_cvt_roundph_ps(W, U, A, R) \ - ((__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundph_ps(U, A, R) \ - ((__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), (int)(R))) - - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_cvtph_ps(__m256i __A) -{ - return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtph_ps (__m512 __W, __mmask16 __U, __m256i __A) -{ - return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A, - (__v16sf) __W, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtph_ps (__mmask16 __U, __m256i __A) -{ - return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A, - (__v16sf) _mm512_setzero_ps (), - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundpd_epi32(A, R) \ - ((__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \ - (__v8si)_mm256_setzero_si256(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvtt_roundpd_epi32(W, U, A, R) \ - ((__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \ - (__v8si)(__m256i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundpd_epi32(U, A, R) \ - ((__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \ - (__v8si)_mm256_setzero_si256(), \ - (__mmask8)(U), (int)(R))) - -static __inline __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvttpd_epi32(__m512d __a) -{ - return (__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df) __a, - (__v8si)_mm256_setzero_si256(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A) -{ - return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A, - (__v8si) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttpd_epi32 (__mmask8 __U, __m512d __A) -{ - return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A, - (__v8si) _mm256_setzero_si256 (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundps_epi32(A, R) \ - ((__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \ - (__v16si)_mm512_setzero_si512(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_cvtt_roundps_epi32(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \ - (__v16si)(__m512i)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundps_epi32(U, A, R) \ - ((__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \ - (__v16si)_mm512_setzero_si512(), \ - (__mmask16)(U), (int)(R))) - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttps_epi32(__m512 __a) -{ - return (__m512i) - __builtin_ia32_cvttps2dq512_mask((__v16sf) __a, - (__v16si) _mm512_setzero_si512 (), - (__mmask16) -1, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttps_epi32 (__m512i __W, __mmask16 __U, __m512 __A) -{ - return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A, - (__v16si) __W, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttps_epi32 (__mmask16 __U, __m512 __A) -{ - return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A, - (__v16si) _mm512_setzero_si512 (), - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundps_epi32(A, R) \ - ((__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \ - (__v16si)_mm512_setzero_si512(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_cvt_roundps_epi32(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \ - (__v16si)(__m512i)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundps_epi32(U, A, R) \ - ((__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \ - (__v16si)_mm512_setzero_si512(), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtps_epi32 (__m512 __A) -{ - return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A, - (__v16si) _mm512_undefined_epi32 (), - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtps_epi32 (__m512i __W, __mmask16 __U, __m512 __A) -{ - return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A, - (__v16si) __W, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtps_epi32 (__mmask16 __U, __m512 __A) -{ - return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A, - (__v16si) - _mm512_setzero_si512 (), - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundpd_epi32(A, R) \ - ((__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \ - (__v8si)_mm256_setzero_si256(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundpd_epi32(W, U, A, R) \ - ((__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \ - (__v8si)(__m256i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundpd_epi32(U, A, R) \ - ((__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \ - (__v8si)_mm256_setzero_si256(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtpd_epi32 (__m512d __A) -{ - return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A, - (__v8si) - _mm256_undefined_si256 (), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A) -{ - return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A, - (__v8si) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtpd_epi32 (__mmask8 __U, __m512d __A) -{ - return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundps_epu32(A, R) \ - ((__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \ - (__v16si)_mm512_setzero_si512(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_cvt_roundps_epu32(W, U, A, R) \ - ((__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \ - (__v16si)(__m512i)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundps_epu32(U, A, R) \ - ((__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \ - (__v16si)_mm512_setzero_si512(), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtps_epu32 ( __m512 __A) -{ - return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,\ - (__v16si)\ - _mm512_undefined_epi32 (), - (__mmask16) -1,\ - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtps_epu32 (__m512i __W, __mmask16 __U, __m512 __A) -{ - return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A, - (__v16si) __W, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtps_epu32 ( __mmask16 __U, __m512 __A) -{ - return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A, - (__v16si) - _mm512_setzero_si512 (), - (__mmask16) __U , - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundpd_epu32(A, R) \ - ((__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \ - (__v8si)_mm256_setzero_si256(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundpd_epu32(W, U, A, R) \ - ((__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \ - (__v8si)(__m256i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundpd_epu32(U, A, R) \ - ((__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \ - (__v8si)_mm256_setzero_si256(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtpd_epu32 (__m512d __A) -{ - return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A, - (__v8si) - _mm256_undefined_si256 (), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A) -{ - return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A, - (__v8si) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtpd_epu32 (__mmask8 __U, __m512d __A) -{ - return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ double __DEFAULT_FN_ATTRS512 -_mm512_cvtsd_f64(__m512d __a) -{ - return __a[0]; -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_cvtss_f32(__m512 __a) -{ - return __a[0]; -} - -/* Unpack and Interleave */ - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_unpackhi_pd(__m512d __a, __m512d __b) -{ - return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b, - 1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_unpackhi_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, - (__v8df)_mm512_unpackhi_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpackhi_pd(__mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, - (__v8df)_mm512_unpackhi_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_unpacklo_pd(__m512d __a, __m512d __b) -{ - return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b, - 0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_unpacklo_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, - (__v8df)_mm512_unpacklo_pd(__A, __B), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpacklo_pd (__mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U, - (__v8df)_mm512_unpacklo_pd(__A, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_unpackhi_ps(__m512 __a, __m512 __b) -{ - return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b, - 2, 18, 3, 19, - 2+4, 18+4, 3+4, 19+4, - 2+8, 18+8, 3+8, 19+8, - 2+12, 18+12, 3+12, 19+12); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_unpackhi_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16) __U, - (__v16sf)_mm512_unpackhi_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpackhi_ps (__mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16) __U, - (__v16sf)_mm512_unpackhi_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_unpacklo_ps(__m512 __a, __m512 __b) -{ - return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b, - 0, 16, 1, 17, - 0+4, 16+4, 1+4, 17+4, - 0+8, 16+8, 1+8, 17+8, - 0+12, 16+12, 1+12, 17+12); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_unpacklo_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16) __U, - (__v16sf)_mm512_unpacklo_ps(__A, __B), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpacklo_ps (__mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16) __U, - (__v16sf)_mm512_unpacklo_ps(__A, __B), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_unpackhi_epi32(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B, - 2, 18, 3, 19, - 2+4, 18+4, 3+4, 19+4, - 2+8, 18+8, 3+8, 19+8, - 2+12, 18+12, 3+12, 19+12); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_unpackhi_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U, - (__v16si)_mm512_unpackhi_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpackhi_epi32(__mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U, - (__v16si)_mm512_unpackhi_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_unpacklo_epi32(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B, - 0, 16, 1, 17, - 0+4, 16+4, 1+4, 17+4, - 0+8, 16+8, 1+8, 17+8, - 0+12, 16+12, 1+12, 17+12); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_unpacklo_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U, - (__v16si)_mm512_unpacklo_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpacklo_epi32(__mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U, - (__v16si)_mm512_unpacklo_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_unpackhi_epi64(__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B, - 1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_unpackhi_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U, - (__v8di)_mm512_unpackhi_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpackhi_epi64(__mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U, - (__v8di)_mm512_unpackhi_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_unpacklo_epi64 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B, - 0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_unpacklo_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U, - (__v8di)_mm512_unpacklo_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_unpacklo_epi64 (__mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U, - (__v8di)_mm512_unpacklo_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - - -/* SIMD load ops */ - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_loadu_si512 (void const *__P) -{ - struct __loadu_si512 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_si512*)__P)->__v; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_loadu_epi32 (void const *__P) -{ - struct __loadu_epi32 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi32*)__P)->__v; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_loadu_epi32 (__m512i __W, __mmask16 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *) __P, - (__v16si) __W, - (__mmask16) __U); -} - - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_loadu_epi32(__mmask16 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *)__P, - (__v16si) - _mm512_setzero_si512 (), - (__mmask16) __U); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_loadu_epi64 (void const *__P) -{ - struct __loadu_epi64 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi64*)__P)->__v; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_loadu_epi64 (__m512i __W, __mmask8 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *) __P, - (__v8di) __W, - (__mmask8) __U); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_loadu_epi64(__mmask8 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *)__P, - (__v8di) - _mm512_setzero_si512 (), - (__mmask8) __U); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_loadu_ps (__m512 __W, __mmask16 __U, void const *__P) -{ - return (__m512) __builtin_ia32_loadups512_mask ((const float *) __P, - (__v16sf) __W, - (__mmask16) __U); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_loadu_ps(__mmask16 __U, void const *__P) -{ - return (__m512) __builtin_ia32_loadups512_mask ((const float *)__P, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) __U); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_loadu_pd (__m512d __W, __mmask8 __U, void const *__P) -{ - return (__m512d) __builtin_ia32_loadupd512_mask ((const double *) __P, - (__v8df) __W, - (__mmask8) __U); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_loadu_pd(__mmask8 __U, void const *__P) -{ - return (__m512d) __builtin_ia32_loadupd512_mask ((const double *)__P, - (__v8df) - _mm512_setzero_pd (), - (__mmask8) __U); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_loadu_pd(void const *__p) -{ - struct __loadu_pd { - __m512d_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_pd*)__p)->__v; -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_loadu_ps(void const *__p) -{ - struct __loadu_ps { - __m512_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_ps*)__p)->__v; -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_load_ps(void const *__p) -{ - return *(const __m512*)__p; -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_load_ps (__m512 __W, __mmask16 __U, void const *__P) -{ - return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *) __P, - (__v16sf) __W, - (__mmask16) __U); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_load_ps(__mmask16 __U, void const *__P) -{ - return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *)__P, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) __U); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_load_pd(void const *__p) -{ - return *(const __m512d*)__p; -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_load_pd (__m512d __W, __mmask8 __U, void const *__P) -{ - return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *) __P, - (__v8df) __W, - (__mmask8) __U); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_load_pd(__mmask8 __U, void const *__P) -{ - return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *)__P, - (__v8df) - _mm512_setzero_pd (), - (__mmask8) __U); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_load_si512 (void const *__P) -{ - return *(const __m512i *) __P; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_load_epi32 (void const *__P) -{ - return *(const __m512i *) __P; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_load_epi64 (void const *__P) -{ - return *(const __m512i *) __P; -} - -/* SIMD store ops */ - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_storeu_epi64 (void *__P, __m512i __A) -{ - struct __storeu_epi64 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi64*)__P)->__v = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_mask_storeu_epi64(void *__P, __mmask8 __U, __m512i __A) -{ - __builtin_ia32_storedqudi512_mask ((long long *)__P, (__v8di) __A, - (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_storeu_si512 (void *__P, __m512i __A) -{ - struct __storeu_si512 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_si512*)__P)->__v = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_storeu_epi32 (void *__P, __m512i __A) -{ - struct __storeu_epi32 { - __m512i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi32*)__P)->__v = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_mask_storeu_epi32(void *__P, __mmask16 __U, __m512i __A) -{ - __builtin_ia32_storedqusi512_mask ((int *)__P, (__v16si) __A, - (__mmask16) __U); -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_mask_storeu_pd(void *__P, __mmask8 __U, __m512d __A) -{ - __builtin_ia32_storeupd512_mask ((double *)__P, (__v8df) __A, (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_storeu_pd(void *__P, __m512d __A) -{ - struct __storeu_pd { - __m512d_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_pd*)__P)->__v = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_mask_storeu_ps(void *__P, __mmask16 __U, __m512 __A) -{ - __builtin_ia32_storeups512_mask ((float *)__P, (__v16sf) __A, - (__mmask16) __U); -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_storeu_ps(void *__P, __m512 __A) -{ - struct __storeu_ps { - __m512_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_ps*)__P)->__v = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_mask_store_pd(void *__P, __mmask8 __U, __m512d __A) -{ - __builtin_ia32_storeapd512_mask ((__v8df *)__P, (__v8df) __A, (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_store_pd(void *__P, __m512d __A) -{ - *(__m512d*)__P = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_mask_store_ps(void *__P, __mmask16 __U, __m512 __A) -{ - __builtin_ia32_storeaps512_mask ((__v16sf *)__P, (__v16sf) __A, - (__mmask16) __U); -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_store_ps(void *__P, __m512 __A) -{ - *(__m512*)__P = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_store_si512 (void *__P, __m512i __A) -{ - *(__m512i *) __P = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_store_epi32 (void *__P, __m512i __A) -{ - *(__m512i *) __P = __A; -} - -static __inline void __DEFAULT_FN_ATTRS512 -_mm512_store_epi64 (void *__P, __m512i __A) -{ - *(__m512i *) __P = __A; -} - -/* Mask ops */ - -static __inline __mmask16 __DEFAULT_FN_ATTRS -_mm512_knot(__mmask16 __M) -{ - return __builtin_ia32_knothi(__M); -} - -/* Integer compare */ - -#define _mm512_cmpeq_epi32_mask(A, B) \ - _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_EQ) -#define _mm512_mask_cmpeq_epi32_mask(k, A, B) \ - _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm512_cmpge_epi32_mask(A, B) \ - _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_GE) -#define _mm512_mask_cmpge_epi32_mask(k, A, B) \ - _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm512_cmpgt_epi32_mask(A, B) \ - _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_GT) -#define _mm512_mask_cmpgt_epi32_mask(k, A, B) \ - _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm512_cmple_epi32_mask(A, B) \ - _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_LE) -#define _mm512_mask_cmple_epi32_mask(k, A, B) \ - _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm512_cmplt_epi32_mask(A, B) \ - _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_LT) -#define _mm512_mask_cmplt_epi32_mask(k, A, B) \ - _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm512_cmpneq_epi32_mask(A, B) \ - _mm512_cmp_epi32_mask((A), (B), _MM_CMPINT_NE) -#define _mm512_mask_cmpneq_epi32_mask(k, A, B) \ - _mm512_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm512_cmpeq_epu32_mask(A, B) \ - _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_EQ) -#define _mm512_mask_cmpeq_epu32_mask(k, A, B) \ - _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm512_cmpge_epu32_mask(A, B) \ - _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_GE) -#define _mm512_mask_cmpge_epu32_mask(k, A, B) \ - _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm512_cmpgt_epu32_mask(A, B) \ - _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_GT) -#define _mm512_mask_cmpgt_epu32_mask(k, A, B) \ - _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm512_cmple_epu32_mask(A, B) \ - _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_LE) -#define _mm512_mask_cmple_epu32_mask(k, A, B) \ - _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm512_cmplt_epu32_mask(A, B) \ - _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_LT) -#define _mm512_mask_cmplt_epu32_mask(k, A, B) \ - _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm512_cmpneq_epu32_mask(A, B) \ - _mm512_cmp_epu32_mask((A), (B), _MM_CMPINT_NE) -#define _mm512_mask_cmpneq_epu32_mask(k, A, B) \ - _mm512_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm512_cmpeq_epi64_mask(A, B) \ - _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_EQ) -#define _mm512_mask_cmpeq_epi64_mask(k, A, B) \ - _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm512_cmpge_epi64_mask(A, B) \ - _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_GE) -#define _mm512_mask_cmpge_epi64_mask(k, A, B) \ - _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm512_cmpgt_epi64_mask(A, B) \ - _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_GT) -#define _mm512_mask_cmpgt_epi64_mask(k, A, B) \ - _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm512_cmple_epi64_mask(A, B) \ - _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_LE) -#define _mm512_mask_cmple_epi64_mask(k, A, B) \ - _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm512_cmplt_epi64_mask(A, B) \ - _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_LT) -#define _mm512_mask_cmplt_epi64_mask(k, A, B) \ - _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm512_cmpneq_epi64_mask(A, B) \ - _mm512_cmp_epi64_mask((A), (B), _MM_CMPINT_NE) -#define _mm512_mask_cmpneq_epi64_mask(k, A, B) \ - _mm512_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm512_cmpeq_epu64_mask(A, B) \ - _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_EQ) -#define _mm512_mask_cmpeq_epu64_mask(k, A, B) \ - _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm512_cmpge_epu64_mask(A, B) \ - _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_GE) -#define _mm512_mask_cmpge_epu64_mask(k, A, B) \ - _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm512_cmpgt_epu64_mask(A, B) \ - _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_GT) -#define _mm512_mask_cmpgt_epu64_mask(k, A, B) \ - _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm512_cmple_epu64_mask(A, B) \ - _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_LE) -#define _mm512_mask_cmple_epu64_mask(k, A, B) \ - _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm512_cmplt_epu64_mask(A, B) \ - _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_LT) -#define _mm512_mask_cmplt_epu64_mask(k, A, B) \ - _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm512_cmpneq_epu64_mask(A, B) \ - _mm512_cmp_epu64_mask((A), (B), _MM_CMPINT_NE) -#define _mm512_mask_cmpneq_epu64_mask(k, A, B) \ - _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_NE) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi8_epi32(__m128i __A) -{ - /* This function always performs a signed extension, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m512i)__builtin_convertvector((__v16qs)__A, __v16si); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi8_epi32(__m512i __W, __mmask16 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_cvtepi8_epi32(__A), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi8_epi32(__mmask16 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_cvtepi8_epi32(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi8_epi64(__m128i __A) -{ - /* This function always performs a signed extension, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__A, (__v16qs)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi8_epi64(__m512i __W, __mmask8 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepi8_epi64(__A), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepi8_epi64(__A), - (__v8di)_mm512_setzero_si512 ()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi32_epi64(__m256i __X) -{ - return (__m512i)__builtin_convertvector((__v8si)__X, __v8di); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32_epi64(__m512i __W, __mmask8 __U, __m256i __X) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepi32_epi64(__X), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi32_epi64(__mmask8 __U, __m256i __X) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepi32_epi64(__X), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi16_epi32(__m256i __A) -{ - return (__m512i)__builtin_convertvector((__v16hi)__A, __v16si); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi16_epi32(__m512i __W, __mmask16 __U, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_cvtepi16_epi32(__A), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi16_epi32(__mmask16 __U, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_cvtepi16_epi32(__A), - (__v16si)_mm512_setzero_si512 ()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi16_epi64(__m128i __A) -{ - return (__m512i)__builtin_convertvector((__v8hi)__A, __v8di); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi16_epi64(__m512i __W, __mmask8 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepi16_epi64(__A), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepi16_epi64(__A), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepu8_epi32(__m128i __A) -{ - return (__m512i)__builtin_convertvector((__v16qu)__A, __v16si); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu8_epi32(__m512i __W, __mmask16 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_cvtepu8_epi32(__A), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu8_epi32(__mmask16 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_cvtepu8_epi32(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepu8_epi64(__m128i __A) -{ - return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__A, (__v16qu)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu8_epi64(__m512i __W, __mmask8 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepu8_epi64(__A), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepu8_epi64(__A), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepu32_epi64(__m256i __X) -{ - return (__m512i)__builtin_convertvector((__v8su)__X, __v8di); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu32_epi64(__m512i __W, __mmask8 __U, __m256i __X) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepu32_epi64(__X), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu32_epi64(__mmask8 __U, __m256i __X) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepu32_epi64(__X), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepu16_epi32(__m256i __A) -{ - return (__m512i)__builtin_convertvector((__v16hu)__A, __v16si); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu16_epi32(__m512i __W, __mmask16 __U, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_cvtepu16_epi32(__A), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu16_epi32(__mmask16 __U, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_cvtepu16_epi32(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtepu16_epi64(__m128i __A) -{ - return (__m512i)__builtin_convertvector((__v8hu)__A, __v8di); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu16_epi64(__m512i __W, __mmask8 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepu16_epi64(__A), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_cvtepu16_epi64(__A), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_rorv_epi32 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_prorvd512((__v16si)__A, (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_rorv_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_rorv_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_rorv_epi64 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_prorvq512((__v8di)__A, (__v8di)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_rorv_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_rorv_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - - - -#define _mm512_cmp_epi32_mask(a, b, p) \ - ((__mmask16)__builtin_ia32_cmpd512_mask((__v16si)(__m512i)(a), \ - (__v16si)(__m512i)(b), (int)(p), \ - (__mmask16)-1)) - -#define _mm512_cmp_epu32_mask(a, b, p) \ - ((__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)(__m512i)(a), \ - (__v16si)(__m512i)(b), (int)(p), \ - (__mmask16)-1)) - -#define _mm512_cmp_epi64_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpq512_mask((__v8di)(__m512i)(a), \ - (__v8di)(__m512i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm512_cmp_epu64_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)(__m512i)(a), \ - (__v8di)(__m512i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm512_mask_cmp_epi32_mask(m, a, b, p) \ - ((__mmask16)__builtin_ia32_cmpd512_mask((__v16si)(__m512i)(a), \ - (__v16si)(__m512i)(b), (int)(p), \ - (__mmask16)(m))) - -#define _mm512_mask_cmp_epu32_mask(m, a, b, p) \ - ((__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)(__m512i)(a), \ - (__v16si)(__m512i)(b), (int)(p), \ - (__mmask16)(m))) - -#define _mm512_mask_cmp_epi64_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpq512_mask((__v8di)(__m512i)(a), \ - (__v8di)(__m512i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm512_mask_cmp_epu64_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)(__m512i)(a), \ - (__v8di)(__m512i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm512_rol_epi32(a, b) \ - ((__m512i)__builtin_ia32_prold512((__v16si)(__m512i)(a), (int)(b))) - -#define _mm512_mask_rol_epi32(W, U, a, b) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_rol_epi32((a), (b)), \ - (__v16si)(__m512i)(W))) - -#define _mm512_maskz_rol_epi32(U, a, b) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_rol_epi32((a), (b)), \ - (__v16si)_mm512_setzero_si512())) - -#define _mm512_rol_epi64(a, b) \ - ((__m512i)__builtin_ia32_prolq512((__v8di)(__m512i)(a), (int)(b))) - -#define _mm512_mask_rol_epi64(W, U, a, b) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_rol_epi64((a), (b)), \ - (__v8di)(__m512i)(W))) - -#define _mm512_maskz_rol_epi64(U, a, b) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_rol_epi64((a), (b)), \ - (__v8di)_mm512_setzero_si512())) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_rolv_epi32 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_prolvd512((__v16si)__A, (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_rolv_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_rolv_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_rolv_epi64 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_prolvq512((__v8di)__A, (__v8di)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_rolv_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_rolv_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -#define _mm512_ror_epi32(A, B) \ - ((__m512i)__builtin_ia32_prord512((__v16si)(__m512i)(A), (int)(B))) - -#define _mm512_mask_ror_epi32(W, U, A, B) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_ror_epi32((A), (B)), \ - (__v16si)(__m512i)(W))) - -#define _mm512_maskz_ror_epi32(U, A, B) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_ror_epi32((A), (B)), \ - (__v16si)_mm512_setzero_si512())) - -#define _mm512_ror_epi64(A, B) \ - ((__m512i)__builtin_ia32_prorq512((__v8di)(__m512i)(A), (int)(B))) - -#define _mm512_mask_ror_epi64(W, U, A, B) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_ror_epi64((A), (B)), \ - (__v8di)(__m512i)(W))) - -#define _mm512_maskz_ror_epi64(U, A, B) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_ror_epi64((A), (B)), \ - (__v8di)_mm512_setzero_si512())) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_slli_epi32(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_pslldi512((__v16si)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_slli_epi32(__m512i __W, __mmask16 __U, __m512i __A, - unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_slli_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_slli_epi32(__mmask16 __U, __m512i __A, unsigned int __B) { - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_slli_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_slli_epi64(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_psllqi512((__v8di)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_slli_epi64(__m512i __W, __mmask8 __U, __m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_slli_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_slli_epi64(__mmask8 __U, __m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_slli_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srli_epi32(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_psrldi512((__v16si)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srli_epi32(__m512i __W, __mmask16 __U, __m512i __A, - unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srli_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srli_epi32(__mmask16 __U, __m512i __A, unsigned int __B) { - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srli_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srli_epi64(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_psrlqi512((__v8di)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srli_epi64(__m512i __W, __mmask8 __U, __m512i __A, - unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srli_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srli_epi64(__mmask8 __U, __m512i __A, - unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srli_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_load_epi32 (__m512i __W, __mmask16 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P, - (__v16si) __W, - (__mmask16) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_load_epi32 (__mmask16 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P, - (__v16si) - _mm512_setzero_si512 (), - (__mmask16) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_store_epi32 (void *__P, __mmask16 __U, __m512i __A) -{ - __builtin_ia32_movdqa32store512_mask ((__v16si *) __P, (__v16si) __A, - (__mmask16) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mov_epi32 (__m512i __W, __mmask16 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U, - (__v16si) __A, - (__v16si) __W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mov_epi32 (__mmask16 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U, - (__v16si) __A, - (__v16si) _mm512_setzero_si512 ()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_mov_epi64 (__m512i __W, __mmask8 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U, - (__v8di) __A, - (__v8di) __W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_mov_epi64 (__mmask8 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U, - (__v8di) __A, - (__v8di) _mm512_setzero_si512 ()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_load_epi64 (__m512i __W, __mmask8 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P, - (__v8di) __W, - (__mmask8) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_load_epi64 (__mmask8 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P, - (__v8di) - _mm512_setzero_si512 (), - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_store_epi64 (void *__P, __mmask8 __U, __m512i __A) -{ - __builtin_ia32_movdqa64store512_mask ((__v8di *) __P, (__v8di) __A, - (__mmask8) __U); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_movedup_pd (__m512d __A) -{ - return (__m512d)__builtin_shufflevector((__v8df)__A, (__v8df)__A, - 0, 0, 2, 2, 4, 4, 6, 6); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_movedup_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_movedup_pd(__A), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_movedup_pd (__mmask8 __U, __m512d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_movedup_pd(__A), - (__v8df)_mm512_setzero_pd()); -} - -#define _mm512_fixupimm_round_pd(A, B, C, imm, R) \ - ((__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8di)(__m512i)(C), (int)(imm), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_fixupimm_round_pd(A, U, B, C, imm, R) \ - ((__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8di)(__m512i)(C), (int)(imm), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_fixupimm_pd(A, B, C, imm) \ - ((__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8di)(__m512i)(C), (int)(imm), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_fixupimm_pd(A, U, B, C, imm) \ - ((__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8di)(__m512i)(C), (int)(imm), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_fixupimm_round_pd(U, A, B, C, imm, R) \ - ((__m512d)__builtin_ia32_fixupimmpd512_maskz((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8di)(__m512i)(C), \ - (int)(imm), (__mmask8)(U), \ - (int)(R))) - -#define _mm512_maskz_fixupimm_pd(U, A, B, C, imm) \ - ((__m512d)__builtin_ia32_fixupimmpd512_maskz((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8di)(__m512i)(C), \ - (int)(imm), (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_fixupimm_round_ps(A, B, C, imm, R) \ - ((__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16si)(__m512i)(C), (int)(imm), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_fixupimm_round_ps(A, U, B, C, imm, R) \ - ((__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16si)(__m512i)(C), (int)(imm), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_fixupimm_ps(A, B, C, imm) \ - ((__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16si)(__m512i)(C), (int)(imm), \ - (__mmask16)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_fixupimm_ps(A, U, B, C, imm) \ - ((__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16si)(__m512i)(C), (int)(imm), \ - (__mmask16)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_fixupimm_round_ps(U, A, B, C, imm, R) \ - ((__m512)__builtin_ia32_fixupimmps512_maskz((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16si)(__m512i)(C), \ - (int)(imm), (__mmask16)(U), \ - (int)(R))) - -#define _mm512_maskz_fixupimm_ps(U, A, B, C, imm) \ - ((__m512)__builtin_ia32_fixupimmps512_maskz((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16si)(__m512i)(C), \ - (int)(imm), (__mmask16)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_fixupimm_round_sd(A, B, C, imm, R) \ - ((__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), (int)(imm), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_fixupimm_round_sd(A, U, B, C, imm, R) \ - ((__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), (int)(imm), \ - (__mmask8)(U), (int)(R))) - -#define _mm_fixupimm_sd(A, B, C, imm) \ - ((__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), (int)(imm), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_fixupimm_sd(A, U, B, C, imm) \ - ((__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), (int)(imm), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_fixupimm_round_sd(U, A, B, C, imm, R) \ - ((__m128d)__builtin_ia32_fixupimmsd_maskz((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), (int)(imm), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_fixupimm_sd(U, A, B, C, imm) \ - ((__m128d)__builtin_ia32_fixupimmsd_maskz((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), (int)(imm), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_fixupimm_round_ss(A, B, C, imm, R) \ - ((__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_fixupimm_round_ss(A, U, B, C, imm, R) \ - ((__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)(U), (int)(R))) - -#define _mm_fixupimm_ss(A, B, C, imm) \ - ((__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_fixupimm_ss(A, U, B, C, imm) \ - ((__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_fixupimm_round_ss(U, A, B, C, imm, R) \ - ((__m128)__builtin_ia32_fixupimmss_maskz((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_fixupimm_ss(U, A, B, C, imm) \ - ((__m128)__builtin_ia32_fixupimmss_maskz((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_getexp_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_getexp_sd (__m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_getexpsd128_round_mask ((__v2df) __A, - (__v2df) __B, (__v2df) _mm_setzero_pd(), (__mmask8) -1, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_getexp_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_getexpsd128_round_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask_getexp_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_getexp_sd (__mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_getexpsd128_round_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) _mm_setzero_pd (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_getexp_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -#define _mm_getexp_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_getexp_ss (__m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A, - (__v4sf) __B, (__v4sf) _mm_setzero_ps(), (__mmask8) -1, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_getexp_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask_getexp_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_getexp_ss (__mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) _mm_setzero_ps (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_getexp_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -#define _mm_getmant_round_sd(A, B, C, D, R) \ - ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (int)(((D)<<2) | (C)), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_getmant_sd(A, B, C, D) \ - ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (int)(((D)<<2) | (C)), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_getmant_sd(W, U, A, B, C, D) \ - ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (int)(((D)<<2) | (C)), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_getmant_round_sd(W, U, A, B, C, D, R) \ - ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (int)(((D)<<2) | (C)), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_getmant_sd(U, A, B, C, D) \ - ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (int)(((D)<<2) | (C)), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_getmant_round_sd(U, A, B, C, D, R) \ - ((__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (int)(((D)<<2) | (C)), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -#define _mm_getmant_round_ss(A, B, C, D, R) \ - ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (int)(((D)<<2) | (C)), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_getmant_ss(A, B, C, D) \ - ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (int)(((D)<<2) | (C)), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_getmant_ss(W, U, A, B, C, D) \ - ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (int)(((D)<<2) | (C)), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_getmant_round_ss(W, U, A, B, C, D, R) \ - ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (int)(((D)<<2) | (C)), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_getmant_ss(U, A, B, C, D) \ - ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (int)(((D)<<2) | (C)), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_getmant_round_ss(U, A, B, C, D, R) \ - ((__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (int)(((D)<<2) | (C)), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_mm512_kmov (__mmask16 __A) -{ - return __A; -} - -#define _mm_comi_round_sd(A, B, P, R) \ - ((int)__builtin_ia32_vcomisd((__v2df)(__m128d)(A), (__v2df)(__m128d)(B), \ - (int)(P), (int)(R))) - -#define _mm_comi_round_ss(A, B, P, R) \ - ((int)__builtin_ia32_vcomiss((__v4sf)(__m128)(A), (__v4sf)(__m128)(B), \ - (int)(P), (int)(R))) - -#ifdef __x86_64__ -#define _mm_cvt_roundsd_si64(A, R) \ - ((long long)__builtin_ia32_vcvtsd2si64((__v2df)(__m128d)(A), (int)(R))) -#endif - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sll_epi32(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_pslld512((__v16si) __A, (__v4si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sll_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_sll_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sll_epi32(__mmask16 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_sll_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sll_epi64(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_psllq512((__v8di)__A, (__v2di)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sll_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_sll_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sll_epi64(__mmask8 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_sll_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sllv_epi32(__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_psllv16si((__v16si)__X, (__v16si)__Y); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sllv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_sllv_epi32(__X, __Y), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sllv_epi32(__mmask16 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_sllv_epi32(__X, __Y), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sllv_epi64(__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_psllv8di((__v8di)__X, (__v8di)__Y); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sllv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_sllv_epi64(__X, __Y), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sllv_epi64(__mmask8 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_sllv_epi64(__X, __Y), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sra_epi32(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_psrad512((__v16si) __A, (__v4si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sra_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_sra_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sra_epi32(__mmask16 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_sra_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_sra_epi64(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_psraq512((__v8di)__A, (__v2di)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_sra_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_sra_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_sra_epi64(__mmask8 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_sra_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srav_epi32(__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_psrav16si((__v16si)__X, (__v16si)__Y); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srav_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srav_epi32(__X, __Y), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srav_epi32(__mmask16 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srav_epi32(__X, __Y), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srav_epi64(__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_psrav8di((__v8di)__X, (__v8di)__Y); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srav_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srav_epi64(__X, __Y), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srav_epi64(__mmask8 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srav_epi64(__X, __Y), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srl_epi32(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_psrld512((__v16si) __A, (__v4si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srl_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srl_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srl_epi32(__mmask16 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srl_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srl_epi64(__m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_psrlq512((__v8di)__A, (__v2di)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srl_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srl_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srl_epi64(__mmask8 __U, __m512i __A, __m128i __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srl_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srlv_epi32(__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_psrlv16si((__v16si)__X, (__v16si)__Y); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srlv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srlv_epi32(__X, __Y), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srlv_epi32(__mmask16 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srlv_epi32(__X, __Y), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srlv_epi64 (__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_psrlv8di((__v8di)__X, (__v8di)__Y); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srlv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srlv_epi64(__X, __Y), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srlv_epi64(__mmask8 __U, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srlv_epi64(__X, __Y), - (__v8di)_mm512_setzero_si512()); -} - -/// \enum _MM_TERNLOG_ENUM -/// A helper to represent the ternary logic operations among vector \a A, -/// \a B and \a C. The representation is passed to \a imm. -typedef enum { - _MM_TERNLOG_A = 0xF0, - _MM_TERNLOG_B = 0xCC, - _MM_TERNLOG_C = 0xAA -} _MM_TERNLOG_ENUM; - -#define _mm512_ternarylogic_epi32(A, B, C, imm) \ - ((__m512i)__builtin_ia32_pternlogd512_mask( \ - (__v16si)(__m512i)(A), (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), \ - (unsigned char)(imm), (__mmask16)-1)) - -#define _mm512_mask_ternarylogic_epi32(A, U, B, C, imm) \ - ((__m512i)__builtin_ia32_pternlogd512_mask( \ - (__v16si)(__m512i)(A), (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), \ - (unsigned char)(imm), (__mmask16)(U))) - -#define _mm512_maskz_ternarylogic_epi32(U, A, B, C, imm) \ - ((__m512i)__builtin_ia32_pternlogd512_maskz( \ - (__v16si)(__m512i)(A), (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), \ - (unsigned char)(imm), (__mmask16)(U))) - -#define _mm512_ternarylogic_epi64(A, B, C, imm) \ - ((__m512i)__builtin_ia32_pternlogq512_mask( \ - (__v8di)(__m512i)(A), (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), \ - (unsigned char)(imm), (__mmask8)-1)) - -#define _mm512_mask_ternarylogic_epi64(A, U, B, C, imm) \ - ((__m512i)__builtin_ia32_pternlogq512_mask( \ - (__v8di)(__m512i)(A), (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm512_maskz_ternarylogic_epi64(U, A, B, C, imm) \ - ((__m512i)__builtin_ia32_pternlogq512_maskz( \ - (__v8di)(__m512i)(A), (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#ifdef __x86_64__ -#define _mm_cvt_roundsd_i64(A, R) \ - ((long long)__builtin_ia32_vcvtsd2si64((__v2df)(__m128d)(A), (int)(R))) -#endif - -#define _mm_cvt_roundsd_si32(A, R) \ - ((int)__builtin_ia32_vcvtsd2si32((__v2df)(__m128d)(A), (int)(R))) - -#define _mm_cvt_roundsd_i32(A, R) \ - ((int)__builtin_ia32_vcvtsd2si32((__v2df)(__m128d)(A), (int)(R))) - -#define _mm_cvt_roundsd_u32(A, R) \ - ((unsigned int)__builtin_ia32_vcvtsd2usi32((__v2df)(__m128d)(A), (int)(R))) - -static __inline__ unsigned __DEFAULT_FN_ATTRS128 -_mm_cvtsd_u32 (__m128d __A) -{ - return (unsigned) __builtin_ia32_vcvtsd2usi32 ((__v2df) __A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvt_roundsd_u64(A, R) \ - ((unsigned long long)__builtin_ia32_vcvtsd2usi64((__v2df)(__m128d)(A), \ - (int)(R))) - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 -_mm_cvtsd_u64 (__m128d __A) -{ - return (unsigned long long) __builtin_ia32_vcvtsd2usi64 ((__v2df) - __A, - _MM_FROUND_CUR_DIRECTION); -} -#endif - -#define _mm_cvt_roundss_si32(A, R) \ - ((int)__builtin_ia32_vcvtss2si32((__v4sf)(__m128)(A), (int)(R))) - -#define _mm_cvt_roundss_i32(A, R) \ - ((int)__builtin_ia32_vcvtss2si32((__v4sf)(__m128)(A), (int)(R))) - -#ifdef __x86_64__ -#define _mm_cvt_roundss_si64(A, R) \ - ((long long)__builtin_ia32_vcvtss2si64((__v4sf)(__m128)(A), (int)(R))) - -#define _mm_cvt_roundss_i64(A, R) \ - ((long long)__builtin_ia32_vcvtss2si64((__v4sf)(__m128)(A), (int)(R))) -#endif - -#define _mm_cvt_roundss_u32(A, R) \ - ((unsigned int)__builtin_ia32_vcvtss2usi32((__v4sf)(__m128)(A), (int)(R))) - -static __inline__ unsigned __DEFAULT_FN_ATTRS128 -_mm_cvtss_u32 (__m128 __A) -{ - return (unsigned) __builtin_ia32_vcvtss2usi32 ((__v4sf) __A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvt_roundss_u64(A, R) \ - ((unsigned long long)__builtin_ia32_vcvtss2usi64((__v4sf)(__m128)(A), \ - (int)(R))) - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 -_mm_cvtss_u64 (__m128 __A) -{ - return (unsigned long long) __builtin_ia32_vcvtss2usi64 ((__v4sf) - __A, - _MM_FROUND_CUR_DIRECTION); -} -#endif - -#define _mm_cvtt_roundsd_i32(A, R) \ - ((int)__builtin_ia32_vcvttsd2si32((__v2df)(__m128d)(A), (int)(R))) - -#define _mm_cvtt_roundsd_si32(A, R) \ - ((int)__builtin_ia32_vcvttsd2si32((__v2df)(__m128d)(A), (int)(R))) - -static __inline__ int __DEFAULT_FN_ATTRS128 -_mm_cvttsd_i32 (__m128d __A) -{ - return (int) __builtin_ia32_vcvttsd2si32 ((__v2df) __A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvtt_roundsd_si64(A, R) \ - ((long long)__builtin_ia32_vcvttsd2si64((__v2df)(__m128d)(A), (int)(R))) - -#define _mm_cvtt_roundsd_i64(A, R) \ - ((long long)__builtin_ia32_vcvttsd2si64((__v2df)(__m128d)(A), (int)(R))) - -static __inline__ long long __DEFAULT_FN_ATTRS128 -_mm_cvttsd_i64 (__m128d __A) -{ - return (long long) __builtin_ia32_vcvttsd2si64 ((__v2df) __A, - _MM_FROUND_CUR_DIRECTION); -} -#endif - -#define _mm_cvtt_roundsd_u32(A, R) \ - ((unsigned int)__builtin_ia32_vcvttsd2usi32((__v2df)(__m128d)(A), (int)(R))) - -static __inline__ unsigned __DEFAULT_FN_ATTRS128 -_mm_cvttsd_u32 (__m128d __A) -{ - return (unsigned) __builtin_ia32_vcvttsd2usi32 ((__v2df) __A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvtt_roundsd_u64(A, R) \ - ((unsigned long long)__builtin_ia32_vcvttsd2usi64((__v2df)(__m128d)(A), \ - (int)(R))) - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 -_mm_cvttsd_u64 (__m128d __A) -{ - return (unsigned long long) __builtin_ia32_vcvttsd2usi64 ((__v2df) - __A, - _MM_FROUND_CUR_DIRECTION); -} -#endif - -#define _mm_cvtt_roundss_i32(A, R) \ - ((int)__builtin_ia32_vcvttss2si32((__v4sf)(__m128)(A), (int)(R))) - -#define _mm_cvtt_roundss_si32(A, R) \ - ((int)__builtin_ia32_vcvttss2si32((__v4sf)(__m128)(A), (int)(R))) - -static __inline__ int __DEFAULT_FN_ATTRS128 -_mm_cvttss_i32 (__m128 __A) -{ - return (int) __builtin_ia32_vcvttss2si32 ((__v4sf) __A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvtt_roundss_i64(A, R) \ - ((long long)__builtin_ia32_vcvttss2si64((__v4sf)(__m128)(A), (int)(R))) - -#define _mm_cvtt_roundss_si64(A, R) \ - ((long long)__builtin_ia32_vcvttss2si64((__v4sf)(__m128)(A), (int)(R))) - -static __inline__ long long __DEFAULT_FN_ATTRS128 -_mm_cvttss_i64 (__m128 __A) -{ - return (long long) __builtin_ia32_vcvttss2si64 ((__v4sf) __A, - _MM_FROUND_CUR_DIRECTION); -} -#endif - -#define _mm_cvtt_roundss_u32(A, R) \ - ((unsigned int)__builtin_ia32_vcvttss2usi32((__v4sf)(__m128)(A), (int)(R))) - -static __inline__ unsigned __DEFAULT_FN_ATTRS128 -_mm_cvttss_u32 (__m128 __A) -{ - return (unsigned) __builtin_ia32_vcvttss2usi32 ((__v4sf) __A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvtt_roundss_u64(A, R) \ - ((unsigned long long)__builtin_ia32_vcvttss2usi64((__v4sf)(__m128)(A), \ - (int)(R))) - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 -_mm_cvttss_u64 (__m128 __A) -{ - return (unsigned long long) __builtin_ia32_vcvttss2usi64 ((__v4sf) - __A, - _MM_FROUND_CUR_DIRECTION); -} -#endif - -#define _mm512_permute_pd(X, C) \ - ((__m512d)__builtin_ia32_vpermilpd512((__v8df)(__m512d)(X), (int)(C))) - -#define _mm512_mask_permute_pd(W, U, X, C) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_permute_pd((X), (C)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_permute_pd(U, X, C) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_permute_pd((X), (C)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_permute_ps(X, C) \ - ((__m512)__builtin_ia32_vpermilps512((__v16sf)(__m512)(X), (int)(C))) - -#define _mm512_mask_permute_ps(W, U, X, C) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_permute_ps((X), (C)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_permute_ps(U, X, C) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_permute_ps((X), (C)), \ - (__v16sf)_mm512_setzero_ps())) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_permutevar_pd(__m512d __A, __m512i __C) -{ - return (__m512d)__builtin_ia32_vpermilvarpd512((__v8df)__A, (__v8di)__C); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_permutevar_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512i __C) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_permutevar_pd(__A, __C), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutevar_pd(__mmask8 __U, __m512d __A, __m512i __C) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_permutevar_pd(__A, __C), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_permutevar_ps(__m512 __A, __m512i __C) -{ - return (__m512)__builtin_ia32_vpermilvarps512((__v16sf)__A, (__v16si)__C); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_permutevar_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512i __C) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_permutevar_ps(__A, __C), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutevar_ps(__mmask16 __U, __m512 __A, __m512i __C) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_permutevar_ps(__A, __C), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline __m512d __DEFAULT_FN_ATTRS512 -_mm512_permutex2var_pd(__m512d __A, __m512i __I, __m512d __B) -{ - return (__m512d)__builtin_ia32_vpermi2varpd512((__v8df)__A, (__v8di)__I, - (__v8df)__B); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_permutex2var_pd(__m512d __A, __mmask8 __U, __m512i __I, __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_permutex2var_pd(__A, __I, __B), - (__v8df)__A); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask2_permutex2var_pd(__m512d __A, __m512i __I, __mmask8 __U, - __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_permutex2var_pd(__A, __I, __B), - (__v8df)(__m512d)__I); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutex2var_pd(__mmask8 __U, __m512d __A, __m512i __I, - __m512d __B) -{ - return (__m512d)__builtin_ia32_selectpd_512(__U, - (__v8df)_mm512_permutex2var_pd(__A, __I, __B), - (__v8df)_mm512_setzero_pd()); -} - -static __inline __m512 __DEFAULT_FN_ATTRS512 -_mm512_permutex2var_ps(__m512 __A, __m512i __I, __m512 __B) -{ - return (__m512)__builtin_ia32_vpermi2varps512((__v16sf)__A, (__v16si)__I, - (__v16sf) __B); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_permutex2var_ps(__m512 __A, __mmask16 __U, __m512i __I, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_permutex2var_ps(__A, __I, __B), - (__v16sf)__A); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask2_permutex2var_ps(__m512 __A, __m512i __I, __mmask16 __U, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_permutex2var_ps(__A, __I, __B), - (__v16sf)(__m512)__I); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutex2var_ps(__mmask16 __U, __m512 __A, __m512i __I, __m512 __B) -{ - return (__m512)__builtin_ia32_selectps_512(__U, - (__v16sf)_mm512_permutex2var_ps(__A, __I, __B), - (__v16sf)_mm512_setzero_ps()); -} - - -#define _mm512_cvtt_roundpd_epu32(A, R) \ - ((__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \ - (__v8si)_mm256_undefined_si256(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvtt_roundpd_epu32(W, U, A, R) \ - ((__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \ - (__v8si)(__m256i)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundpd_epu32(U, A, R) \ - ((__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \ - (__v8si)_mm256_setzero_si256(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvttpd_epu32 (__m512d __A) -{ - return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A, - (__v8si) - _mm256_undefined_si256 (), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A) -{ - return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A, - (__v8si) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttpd_epu32 (__mmask8 __U, __m512d __A) -{ - return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_roundscale_round_sd(A, B, imm, R) \ - ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(imm), \ - (int)(R))) - -#define _mm_roundscale_sd(A, B, imm) \ - ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(imm), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_roundscale_sd(W, U, A, B, imm) \ - ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(imm), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_roundscale_round_sd(W, U, A, B, I, R) \ - ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(I), \ - (int)(R))) - -#define _mm_maskz_roundscale_sd(U, A, B, I) \ - ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(I), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_roundscale_round_sd(U, A, B, I, R) \ - ((__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(I), \ - (int)(R))) - -#define _mm_roundscale_round_ss(A, B, imm, R) \ - ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(imm), \ - (int)(R))) - -#define _mm_roundscale_ss(A, B, imm) \ - ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(imm), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_roundscale_ss(W, U, A, B, I) \ - ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U), (int)(I), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_roundscale_round_ss(W, U, A, B, I, R) \ - ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U), (int)(I), \ - (int)(R))) - -#define _mm_maskz_roundscale_ss(U, A, B, I) \ - ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(I), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_roundscale_round_ss(U, A, B, I, R) \ - ((__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(I), \ - (int)(R))) - -#define _mm512_scalef_round_pd(A, B, R) \ - ((__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)_mm512_undefined_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_scalef_round_pd(W, U, A, B, R) \ - ((__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_scalef_round_pd(U, A, B, R) \ - ((__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_scalef_pd (__m512d __A, __m512d __B) -{ - return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A, - (__v8df) __B, - (__v8df) - _mm512_undefined_pd (), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_scalef_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A, - (__v8df) __B, - (__v8df) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_scalef_pd (__mmask8 __U, __m512d __A, __m512d __B) -{ - return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A, - (__v8df) __B, - (__v8df) - _mm512_setzero_pd (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_scalef_round_ps(A, B, R) \ - ((__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)_mm512_undefined_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_scalef_round_ps(W, U, A, B, R) \ - ((__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_scalef_round_ps(U, A, B, R) \ - ((__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_scalef_ps (__m512 __A, __m512 __B) -{ - return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) - _mm512_undefined_ps (), - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_scalef_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) __W, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_scalef_ps (__mmask16 __U, __m512 __A, __m512 __B) -{ - return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A, - (__v16sf) __B, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_scalef_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_scalef_sd (__m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_scalefsd_round_mask ((__v2df) __A, - (__v2df)( __B), (__v2df) _mm_setzero_pd(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_scalef_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_scalefsd_round_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask_scalef_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_scalef_sd (__mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_scalefsd_round_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) _mm_setzero_pd (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_scalef_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -#define _mm_scalef_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_scalef_ss (__m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_scalefss_round_mask ((__v4sf) __A, - (__v4sf)( __B), (__v4sf) _mm_setzero_ps(), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_scalef_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_scalefss_round_mask ( (__v4sf) __A, - (__v4sf) __B, - (__v4sf) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask_scalef_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_scalef_ss (__mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_scalefss_round_mask ( (__v4sf) __A, - (__v4sf) __B, - (__v4sf) _mm_setzero_ps (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_scalef_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srai_epi32(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_psradi512((__v16si)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srai_epi32(__m512i __W, __mmask16 __U, __m512i __A, - unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srai_epi32(__A, __B), - (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srai_epi32(__mmask16 __U, __m512i __A, - unsigned int __B) { - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U, - (__v16si)_mm512_srai_epi32(__A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_srai_epi64(__m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_psraqi512((__v8di)__A, (int)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_srai_epi64(__m512i __W, __mmask8 __U, __m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srai_epi64(__A, __B), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_srai_epi64(__mmask8 __U, __m512i __A, unsigned int __B) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U, - (__v8di)_mm512_srai_epi64(__A, __B), - (__v8di)_mm512_setzero_si512()); -} - -#define _mm512_shuffle_f32x4(A, B, imm) \ - ((__m512)__builtin_ia32_shuf_f32x4((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(imm))) - -#define _mm512_mask_shuffle_f32x4(W, U, A, B, imm) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_shuffle_f32x4((A), (B), (imm)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_shuffle_f32x4(U, A, B, imm) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_shuffle_f32x4((A), (B), (imm)), \ - (__v16sf)_mm512_setzero_ps())) - -#define _mm512_shuffle_f64x2(A, B, imm) \ - ((__m512d)__builtin_ia32_shuf_f64x2((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(imm))) - -#define _mm512_mask_shuffle_f64x2(W, U, A, B, imm) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_shuffle_f64x2((A), (B), (imm)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_shuffle_f64x2(U, A, B, imm) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_shuffle_f64x2((A), (B), (imm)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_shuffle_i32x4(A, B, imm) \ - ((__m512i)__builtin_ia32_shuf_i32x4((__v16si)(__m512i)(A), \ - (__v16si)(__m512i)(B), (int)(imm))) - -#define _mm512_mask_shuffle_i32x4(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_shuffle_i32x4((A), (B), (imm)), \ - (__v16si)(__m512i)(W))) - -#define _mm512_maskz_shuffle_i32x4(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_shuffle_i32x4((A), (B), (imm)), \ - (__v16si)_mm512_setzero_si512())) - -#define _mm512_shuffle_i64x2(A, B, imm) \ - ((__m512i)__builtin_ia32_shuf_i64x2((__v8di)(__m512i)(A), \ - (__v8di)(__m512i)(B), (int)(imm))) - -#define _mm512_mask_shuffle_i64x2(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_shuffle_i64x2((A), (B), (imm)), \ - (__v8di)(__m512i)(W))) - -#define _mm512_maskz_shuffle_i64x2(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_shuffle_i64x2((A), (B), (imm)), \ - (__v8di)_mm512_setzero_si512())) - -#define _mm512_shuffle_pd(A, B, M) \ - ((__m512d)__builtin_ia32_shufpd512((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(B), (int)(M))) - -#define _mm512_mask_shuffle_pd(W, U, A, B, M) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_shuffle_pd((A), (B), (M)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_shuffle_pd(U, A, B, M) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_shuffle_pd((A), (B), (M)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_shuffle_ps(A, B, M) \ - ((__m512)__builtin_ia32_shufps512((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(B), (int)(M))) - -#define _mm512_mask_shuffle_ps(W, U, A, B, M) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_shuffle_ps((A), (B), (M)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_shuffle_ps(U, A, B, M) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_shuffle_ps((A), (B), (M)), \ - (__v16sf)_mm512_setzero_ps())) - -#define _mm_sqrt_round_sd(A, B, R) \ - ((__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1, (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_sqrt_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_sqrtsd_round_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask_sqrt_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_sqrt_sd (__mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d) __builtin_ia32_sqrtsd_round_mask ( (__v2df) __A, - (__v2df) __B, - (__v2df) _mm_setzero_pd (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_sqrt_round_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -#define _mm_sqrt_round_ss(A, B, R) \ - ((__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1, (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_sqrt_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_sqrtss_round_mask ( (__v4sf) __A, - (__v4sf) __B, - (__v4sf) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask_sqrt_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(W), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_sqrt_ss (__mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128) __builtin_ia32_sqrtss_round_mask ( (__v4sf) __A, - (__v4sf) __B, - (__v4sf) _mm_setzero_ps (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_sqrt_round_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_broadcast_f32x4(__m128 __A) -{ - return (__m512)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A, - 0, 1, 2, 3, 0, 1, 2, 3, - 0, 1, 2, 3, 0, 1, 2, 3); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_f32x4(__m512 __O, __mmask16 __M, __m128 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, - (__v16sf)_mm512_broadcast_f32x4(__A), - (__v16sf)__O); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_f32x4(__mmask16 __M, __m128 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__M, - (__v16sf)_mm512_broadcast_f32x4(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_broadcast_f64x4(__m256d __A) -{ - return (__m512d)__builtin_shufflevector((__v4df)__A, (__v4df)__A, - 0, 1, 2, 3, 0, 1, 2, 3); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_f64x4(__m512d __O, __mmask8 __M, __m256d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__M, - (__v8df)_mm512_broadcast_f64x4(__A), - (__v8df)__O); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_f64x4(__mmask8 __M, __m256d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__M, - (__v8df)_mm512_broadcast_f64x4(__A), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcast_i32x4(__m128i __A) -{ - return (__m512i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, - 0, 1, 2, 3, 0, 1, 2, 3, - 0, 1, 2, 3, 0, 1, 2, 3); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_i32x4(__m512i __O, __mmask16 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_broadcast_i32x4(__A), - (__v16si)__O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_i32x4(__mmask16 __M, __m128i __A) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_broadcast_i32x4(__A), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_broadcast_i64x4(__m256i __A) -{ - return (__m512i)__builtin_shufflevector((__v4di)__A, (__v4di)__A, - 0, 1, 2, 3, 0, 1, 2, 3); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcast_i64x4(__m512i __O, __mmask8 __M, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_broadcast_i64x4(__A), - (__v8di)__O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcast_i64x4(__mmask8 __M, __m256i __A) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_broadcast_i64x4(__A), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcastsd_pd (__m512d __O, __mmask8 __M, __m128d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512(__M, - (__v8df) _mm512_broadcastsd_pd(__A), - (__v8df) __O); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A) -{ - return (__m512d)__builtin_ia32_selectpd_512(__M, - (__v8df) _mm512_broadcastsd_pd(__A), - (__v8df) _mm512_setzero_pd()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_broadcastss_ps (__m512 __O, __mmask16 __M, __m128 __A) -{ - return (__m512)__builtin_ia32_selectps_512(__M, - (__v16sf) _mm512_broadcastss_ps(__A), - (__v16sf) __O); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_broadcastss_ps (__mmask16 __M, __m128 __A) -{ - return (__m512)__builtin_ia32_selectps_512(__M, - (__v16sf) _mm512_broadcastss_ps(__A), - (__v16sf) _mm512_setzero_ps()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtsepi32_epi8 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A, - (__v16qi) _mm_undefined_si128 (), - (__mmask16) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtsepi32_epi8 (__mmask16 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A) -{ - __builtin_ia32_pmovsdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtsepi32_epi16 (__m512i __A) -{ - return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A, - (__v16hi) _mm256_undefined_si256 (), - (__mmask16) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A, - (__v16hi) __O, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtsepi32_epi16 (__mmask16 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A, - (__v16hi) _mm256_setzero_si256 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A) -{ - __builtin_ia32_pmovsdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtsepi64_epi8 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A, - (__v16qi) _mm_undefined_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtsepi64_epi8 (__mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovsqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtsepi64_epi32 (__m512i __A) -{ - return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A, - (__v8si) _mm256_undefined_si256 (), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A, - (__v8si) __O, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtsepi64_epi32 (__mmask8 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A, - (__v8si) _mm256_setzero_si256 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi64_storeu_epi32 (void *__P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovsqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtsepi64_epi16 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A, - (__v8hi) _mm_undefined_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtsepi64_epi16 (__mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovsqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtusepi32_epi8 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A, - (__v16qi) _mm_undefined_si128 (), - (__mmask16) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtusepi32_epi8 (__mmask16 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A) -{ - __builtin_ia32_pmovusdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtusepi32_epi16 (__m512i __A) -{ - return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A, - (__v16hi) _mm256_undefined_si256 (), - (__mmask16) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A, - (__v16hi) __O, - __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtusepi32_epi16 (__mmask16 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A, - (__v16hi) _mm256_setzero_si256 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A) -{ - __builtin_ia32_pmovusdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtusepi64_epi8 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A, - (__v16qi) _mm_undefined_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtusepi64_epi8 (__mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovusqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtusepi64_epi32 (__m512i __A) -{ - return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A, - (__v8si) _mm256_undefined_si256 (), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A, - (__v8si) __O, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtusepi64_epi32 (__mmask8 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A, - (__v8si) _mm256_setzero_si256 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovusqd512mem_mask ((__v8si*) __P, (__v8di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtusepi64_epi16 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A, - (__v8hi) _mm_undefined_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtusepi64_epi16 (__mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtusepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovusqw512mem_mask ((__v8hi*) __P, (__v8di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi32_epi8 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A, - (__v16qi) _mm_undefined_si128 (), - (__mmask16) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi32_epi8 (__mmask16 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A) -{ - __builtin_ia32_pmovdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi32_epi16 (__m512i __A) -{ - return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A, - (__v16hi) _mm256_undefined_si256 (), - (__mmask16) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A, - (__v16hi) __O, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi32_epi16 (__mmask16 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A, - (__v16hi) _mm256_setzero_si256 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32_storeu_epi16 (void * __P, __mmask16 __M, __m512i __A) -{ - __builtin_ia32_pmovdw512mem_mask ((__v16hi *) __P, (__v16si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi64_epi8 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A, - (__v16qi) _mm_undefined_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi64_epi8 (__mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi64_epi32 (__m512i __A) -{ - return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A, - (__v8si) _mm256_undefined_si256 (), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A, - (__v8si) __O, __M); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi64_epi32 (__mmask8 __M, __m512i __A) -{ - return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A, - (__v8si) _mm256_setzero_si256 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_cvtepi64_epi16 (__m512i __A) -{ - return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A, - (__v8hi) _mm_undefined_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi64_epi16 (__mmask8 __M, __m512i __A) -{ - return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A) -{ - __builtin_ia32_pmovqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M); -} - -#define _mm512_extracti32x4_epi32(A, imm) \ - ((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \ - (__v4si)_mm_undefined_si128(), \ - (__mmask8)-1)) - -#define _mm512_mask_extracti32x4_epi32(W, U, A, imm) \ - ((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \ - (__v4si)(__m128i)(W), \ - (__mmask8)(U))) - -#define _mm512_maskz_extracti32x4_epi32(U, A, imm) \ - ((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \ - (__v4si)_mm_setzero_si128(), \ - (__mmask8)(U))) - -#define _mm512_extracti64x4_epi64(A, imm) \ - ((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \ - (__v4di)_mm256_undefined_si256(), \ - (__mmask8)-1)) - -#define _mm512_mask_extracti64x4_epi64(W, U, A, imm) \ - ((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \ - (__v4di)(__m256i)(W), \ - (__mmask8)(U))) - -#define _mm512_maskz_extracti64x4_epi64(U, A, imm) \ - ((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \ - (__v4di)_mm256_setzero_si256(), \ - (__mmask8)(U))) - -#define _mm512_insertf64x4(A, B, imm) \ - ((__m512d)__builtin_ia32_insertf64x4((__v8df)(__m512d)(A), \ - (__v4df)(__m256d)(B), (int)(imm))) - -#define _mm512_mask_insertf64x4(W, U, A, B, imm) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_insertf64x4((A), (B), (imm)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_insertf64x4(U, A, B, imm) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_insertf64x4((A), (B), (imm)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_inserti64x4(A, B, imm) \ - ((__m512i)__builtin_ia32_inserti64x4((__v8di)(__m512i)(A), \ - (__v4di)(__m256i)(B), (int)(imm))) - -#define _mm512_mask_inserti64x4(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_inserti64x4((A), (B), (imm)), \ - (__v8di)(__m512i)(W))) - -#define _mm512_maskz_inserti64x4(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_inserti64x4((A), (B), (imm)), \ - (__v8di)_mm512_setzero_si512())) - -#define _mm512_insertf32x4(A, B, imm) \ - ((__m512)__builtin_ia32_insertf32x4((__v16sf)(__m512)(A), \ - (__v4sf)(__m128)(B), (int)(imm))) - -#define _mm512_mask_insertf32x4(W, U, A, B, imm) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_insertf32x4((A), (B), (imm)), \ - (__v16sf)(__m512)(W))) - -#define _mm512_maskz_insertf32x4(U, A, B, imm) \ - ((__m512)__builtin_ia32_selectps_512((__mmask16)(U), \ - (__v16sf)_mm512_insertf32x4((A), (B), (imm)), \ - (__v16sf)_mm512_setzero_ps())) - -#define _mm512_inserti32x4(A, B, imm) \ - ((__m512i)__builtin_ia32_inserti32x4((__v16si)(__m512i)(A), \ - (__v4si)(__m128i)(B), (int)(imm))) - -#define _mm512_mask_inserti32x4(W, U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_inserti32x4((A), (B), (imm)), \ - (__v16si)(__m512i)(W))) - -#define _mm512_maskz_inserti32x4(U, A, B, imm) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_inserti32x4((A), (B), (imm)), \ - (__v16si)_mm512_setzero_si512())) - -#define _mm512_getmant_round_pd(A, B, C, R) \ - ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8df)_mm512_undefined_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_getmant_round_pd(W, U, A, B, C, R) \ - ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_getmant_round_pd(U, A, B, C, R) \ - ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_getmant_pd(A, B, C) \ - ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_getmant_pd(W, U, A, B, C) \ - ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_getmant_pd(U, A, B, C) \ - ((__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_getmant_round_ps(A, B, C, R) \ - ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ - (int)(((C)<<2) | (B)), \ - (__v16sf)_mm512_undefined_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_getmant_round_ps(W, U, A, B, C, R) \ - ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ - (int)(((C)<<2) | (B)), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_getmant_round_ps(U, A, B, C, R) \ - ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ - (int)(((C)<<2) | (B)), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_getmant_ps(A, B, C) \ - ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ - (int)(((C)<<2)|(B)), \ - (__v16sf)_mm512_undefined_ps(), \ - (__mmask16)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_getmant_ps(W, U, A, B, C) \ - ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ - (int)(((C)<<2)|(B)), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_getmant_ps(U, A, B, C) \ - ((__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \ - (int)(((C)<<2)|(B)), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_getexp_round_pd(A, R) \ - ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \ - (__v8df)_mm512_undefined_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_getexp_round_pd(W, U, A, R) \ - ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_getexp_round_pd(U, A, R) \ - ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_getexp_pd (__m512d __A) -{ - return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A, - (__v8df) _mm512_undefined_pd (), - (__mmask8) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_getexp_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A, - (__v8df) __W, - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_getexp_pd (__mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A, - (__v8df) _mm512_setzero_pd (), - (__mmask8) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_getexp_round_ps(A, R) \ - ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)_mm512_undefined_ps(), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_getexp_round_ps(W, U, A, R) \ - ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)(__m512)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_getexp_round_ps(U, A, R) \ - ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \ - (__v16sf)_mm512_setzero_ps(), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_getexp_ps (__m512 __A) -{ - return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A, - (__v16sf) _mm512_undefined_ps (), - (__mmask16) -1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_getexp_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A, - (__v16sf) __W, - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_getexp_ps (__mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A, - (__v16sf) _mm512_setzero_ps (), - (__mmask16) __U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_i64gather_ps(index, addr, scale) \ - ((__m256)__builtin_ia32_gatherdiv16sf((__v8sf)_mm256_undefined_ps(), \ - (void const *)(addr), \ - (__v8di)(__m512i)(index), (__mmask8)-1, \ - (int)(scale))) - -#define _mm512_mask_i64gather_ps(v1_old, mask, index, addr, scale) \ - ((__m256)__builtin_ia32_gatherdiv16sf((__v8sf)(__m256)(v1_old),\ - (void const *)(addr), \ - (__v8di)(__m512i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm512_i64gather_epi32(index, addr, scale) \ - ((__m256i)__builtin_ia32_gatherdiv16si((__v8si)_mm256_undefined_si256(), \ - (void const *)(addr), \ - (__v8di)(__m512i)(index), \ - (__mmask8)-1, (int)(scale))) - -#define _mm512_mask_i64gather_epi32(v1_old, mask, index, addr, scale) \ - ((__m256i)__builtin_ia32_gatherdiv16si((__v8si)(__m256i)(v1_old), \ - (void const *)(addr), \ - (__v8di)(__m512i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm512_i64gather_pd(index, addr, scale) \ - ((__m512d)__builtin_ia32_gatherdiv8df((__v8df)_mm512_undefined_pd(), \ - (void const *)(addr), \ - (__v8di)(__m512i)(index), (__mmask8)-1, \ - (int)(scale))) - -#define _mm512_mask_i64gather_pd(v1_old, mask, index, addr, scale) \ - ((__m512d)__builtin_ia32_gatherdiv8df((__v8df)(__m512d)(v1_old), \ - (void const *)(addr), \ - (__v8di)(__m512i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm512_i64gather_epi64(index, addr, scale) \ - ((__m512i)__builtin_ia32_gatherdiv8di((__v8di)_mm512_undefined_epi32(), \ - (void const *)(addr), \ - (__v8di)(__m512i)(index), (__mmask8)-1, \ - (int)(scale))) - -#define _mm512_mask_i64gather_epi64(v1_old, mask, index, addr, scale) \ - ((__m512i)__builtin_ia32_gatherdiv8di((__v8di)(__m512i)(v1_old), \ - (void const *)(addr), \ - (__v8di)(__m512i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm512_i32gather_ps(index, addr, scale) \ - ((__m512)__builtin_ia32_gathersiv16sf((__v16sf)_mm512_undefined_ps(), \ - (void const *)(addr), \ - (__v16si)(__m512)(index), \ - (__mmask16)-1, (int)(scale))) - -#define _mm512_mask_i32gather_ps(v1_old, mask, index, addr, scale) \ - ((__m512)__builtin_ia32_gathersiv16sf((__v16sf)(__m512)(v1_old), \ - (void const *)(addr), \ - (__v16si)(__m512)(index), \ - (__mmask16)(mask), (int)(scale))) - -#define _mm512_i32gather_epi32(index, addr, scale) \ - ((__m512i)__builtin_ia32_gathersiv16si((__v16si)_mm512_undefined_epi32(), \ - (void const *)(addr), \ - (__v16si)(__m512i)(index), \ - (__mmask16)-1, (int)(scale))) - -#define _mm512_mask_i32gather_epi32(v1_old, mask, index, addr, scale) \ - ((__m512i)__builtin_ia32_gathersiv16si((__v16si)(__m512i)(v1_old), \ - (void const *)(addr), \ - (__v16si)(__m512i)(index), \ - (__mmask16)(mask), (int)(scale))) - -#define _mm512_i32gather_pd(index, addr, scale) \ - ((__m512d)__builtin_ia32_gathersiv8df((__v8df)_mm512_undefined_pd(), \ - (void const *)(addr), \ - (__v8si)(__m256i)(index), (__mmask8)-1, \ - (int)(scale))) - -#define _mm512_mask_i32gather_pd(v1_old, mask, index, addr, scale) \ - ((__m512d)__builtin_ia32_gathersiv8df((__v8df)(__m512d)(v1_old), \ - (void const *)(addr), \ - (__v8si)(__m256i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm512_i32gather_epi64(index, addr, scale) \ - ((__m512i)__builtin_ia32_gathersiv8di((__v8di)_mm512_undefined_epi32(), \ - (void const *)(addr), \ - (__v8si)(__m256i)(index), (__mmask8)-1, \ - (int)(scale))) - -#define _mm512_mask_i32gather_epi64(v1_old, mask, index, addr, scale) \ - ((__m512i)__builtin_ia32_gathersiv8di((__v8di)(__m512i)(v1_old), \ - (void const *)(addr), \ - (__v8si)(__m256i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm512_i64scatter_ps(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv16sf((void *)(addr), (__mmask8)-1, \ - (__v8di)(__m512i)(index), \ - (__v8sf)(__m256)(v1), (int)(scale)) - -#define _mm512_mask_i64scatter_ps(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv16sf((void *)(addr), (__mmask8)(mask), \ - (__v8di)(__m512i)(index), \ - (__v8sf)(__m256)(v1), (int)(scale)) - -#define _mm512_i64scatter_epi32(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv16si((void *)(addr), (__mmask8)-1, \ - (__v8di)(__m512i)(index), \ - (__v8si)(__m256i)(v1), (int)(scale)) - -#define _mm512_mask_i64scatter_epi32(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv16si((void *)(addr), (__mmask8)(mask), \ - (__v8di)(__m512i)(index), \ - (__v8si)(__m256i)(v1), (int)(scale)) - -#define _mm512_i64scatter_pd(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv8df((void *)(addr), (__mmask8)-1, \ - (__v8di)(__m512i)(index), \ - (__v8df)(__m512d)(v1), (int)(scale)) - -#define _mm512_mask_i64scatter_pd(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv8df((void *)(addr), (__mmask8)(mask), \ - (__v8di)(__m512i)(index), \ - (__v8df)(__m512d)(v1), (int)(scale)) - -#define _mm512_i64scatter_epi64(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv8di((void *)(addr), (__mmask8)-1, \ - (__v8di)(__m512i)(index), \ - (__v8di)(__m512i)(v1), (int)(scale)) - -#define _mm512_mask_i64scatter_epi64(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv8di((void *)(addr), (__mmask8)(mask), \ - (__v8di)(__m512i)(index), \ - (__v8di)(__m512i)(v1), (int)(scale)) - -#define _mm512_i32scatter_ps(addr, index, v1, scale) \ - __builtin_ia32_scattersiv16sf((void *)(addr), (__mmask16)-1, \ - (__v16si)(__m512i)(index), \ - (__v16sf)(__m512)(v1), (int)(scale)) - -#define _mm512_mask_i32scatter_ps(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv16sf((void *)(addr), (__mmask16)(mask), \ - (__v16si)(__m512i)(index), \ - (__v16sf)(__m512)(v1), (int)(scale)) - -#define _mm512_i32scatter_epi32(addr, index, v1, scale) \ - __builtin_ia32_scattersiv16si((void *)(addr), (__mmask16)-1, \ - (__v16si)(__m512i)(index), \ - (__v16si)(__m512i)(v1), (int)(scale)) - -#define _mm512_mask_i32scatter_epi32(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv16si((void *)(addr), (__mmask16)(mask), \ - (__v16si)(__m512i)(index), \ - (__v16si)(__m512i)(v1), (int)(scale)) - -#define _mm512_i32scatter_pd(addr, index, v1, scale) \ - __builtin_ia32_scattersiv8df((void *)(addr), (__mmask8)-1, \ - (__v8si)(__m256i)(index), \ - (__v8df)(__m512d)(v1), (int)(scale)) - -#define _mm512_mask_i32scatter_pd(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv8df((void *)(addr), (__mmask8)(mask), \ - (__v8si)(__m256i)(index), \ - (__v8df)(__m512d)(v1), (int)(scale)) - -#define _mm512_i32scatter_epi64(addr, index, v1, scale) \ - __builtin_ia32_scattersiv8di((void *)(addr), (__mmask8)-1, \ - (__v8si)(__m256i)(index), \ - (__v8di)(__m512i)(v1), (int)(scale)) - -#define _mm512_mask_i32scatter_epi64(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv8di((void *)(addr), (__mmask8)(mask), \ - (__v8si)(__m256i)(index), \ - (__v8di)(__m512i)(v1), (int)(scale)) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return __builtin_ia32_vfmaddss3_mask((__v4sf)__W, - (__v4sf)__A, - (__v4sf)__B, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fmadd_round_ss(A, B, C, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(C), (__mmask8)-1, \ - (int)(R))) - -#define _mm_mask_fmadd_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \ - (__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return __builtin_ia32_vfmaddss3_maskz((__v4sf)__A, - (__v4sf)__B, - (__v4sf)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fmadd_round_ss(U, A, B, C, R) \ - ((__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(C), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fmadd_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U) -{ - return __builtin_ia32_vfmaddss3_mask3((__v4sf)__W, - (__v4sf)__X, - (__v4sf)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fmadd_round_ss(W, X, Y, U, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask3((__v4sf)(__m128)(W), \ - (__v4sf)(__m128)(X), \ - (__v4sf)(__m128)(Y), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return __builtin_ia32_vfmaddss3_mask((__v4sf)__W, - (__v4sf)__A, - -(__v4sf)__B, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fmsub_round_ss(A, B, C, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - -(__v4sf)(__m128)(C), (__mmask8)-1, \ - (int)(R))) - -#define _mm_mask_fmsub_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \ - (__v4sf)(__m128)(A), \ - -(__v4sf)(__m128)(B), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsub_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return __builtin_ia32_vfmaddss3_maskz((__v4sf)__A, - (__v4sf)__B, - -(__v4sf)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fmsub_round_ss(U, A, B, C, R) \ - ((__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - -(__v4sf)(__m128)(C), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsub_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U) -{ - return __builtin_ia32_vfmsubss3_mask3((__v4sf)__W, - (__v4sf)__X, - (__v4sf)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fmsub_round_ss(W, X, Y, U, R) \ - ((__m128)__builtin_ia32_vfmsubss3_mask3((__v4sf)(__m128)(W), \ - (__v4sf)(__m128)(X), \ - (__v4sf)(__m128)(Y), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fnmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return __builtin_ia32_vfmaddss3_mask((__v4sf)__W, - -(__v4sf)__A, - (__v4sf)__B, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fnmadd_round_ss(A, B, C, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(A), \ - -(__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(C), (__mmask8)-1, \ - (int)(R))) - -#define _mm_mask_fnmadd_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \ - -(__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return __builtin_ia32_vfmaddss3_maskz((__v4sf)__A, - -(__v4sf)__B, - (__v4sf)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fnmadd_round_ss(U, A, B, C, R) \ - ((__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \ - -(__v4sf)(__m128)(B), \ - (__v4sf)(__m128)(C), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmadd_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U) -{ - return __builtin_ia32_vfmaddss3_mask3((__v4sf)__W, - -(__v4sf)__X, - (__v4sf)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fnmadd_round_ss(W, X, Y, U, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask3((__v4sf)(__m128)(W), \ - -(__v4sf)(__m128)(X), \ - (__v4sf)(__m128)(Y), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fnmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return __builtin_ia32_vfmaddss3_mask((__v4sf)__W, - -(__v4sf)__A, - -(__v4sf)__B, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fnmsub_round_ss(A, B, C, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(A), \ - -(__v4sf)(__m128)(B), \ - -(__v4sf)(__m128)(C), (__mmask8)-1, \ - (int)(R))) - -#define _mm_mask_fnmsub_round_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \ - -(__v4sf)(__m128)(A), \ - -(__v4sf)(__m128)(B), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmsub_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return __builtin_ia32_vfmaddss3_maskz((__v4sf)__A, - -(__v4sf)__B, - -(__v4sf)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fnmsub_round_ss(U, A, B, C, R) \ - ((__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \ - -(__v4sf)(__m128)(B), \ - -(__v4sf)(__m128)(C), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmsub_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U) -{ - return __builtin_ia32_vfmsubss3_mask3((__v4sf)__W, - -(__v4sf)__X, - (__v4sf)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fnmsub_round_ss(W, X, Y, U, R) \ - ((__m128)__builtin_ia32_vfmsubss3_mask3((__v4sf)(__m128)(W), \ - -(__v4sf)(__m128)(X), \ - (__v4sf)(__m128)(Y), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fmadd_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return __builtin_ia32_vfmaddsd3_mask((__v2df)__W, - (__v2df)__A, - (__v2df)__B, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fmadd_round_sd(A, B, C, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(C), (__mmask8)-1, \ - (int)(R))) - -#define _mm_mask_fmadd_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \ - (__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fmadd_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return __builtin_ia32_vfmaddsd3_maskz((__v2df)__A, - (__v2df)__B, - (__v2df)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fmadd_round_sd(U, A, B, C, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(C), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fmadd_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U) -{ - return __builtin_ia32_vfmaddsd3_mask3((__v2df)__W, - (__v2df)__X, - (__v2df)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fmadd_round_sd(W, X, Y, U, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask3((__v2df)(__m128d)(W), \ - (__v2df)(__m128d)(X), \ - (__v2df)(__m128d)(Y), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fmsub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return __builtin_ia32_vfmaddsd3_mask((__v2df)__W, - (__v2df)__A, - -(__v2df)__B, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fmsub_round_sd(A, B, C, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - -(__v2df)(__m128d)(C), (__mmask8)-1, \ - (int)(R))) - -#define _mm_mask_fmsub_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \ - (__v2df)(__m128d)(A), \ - -(__v2df)(__m128d)(B), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsub_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return __builtin_ia32_vfmaddsd3_maskz((__v2df)__A, - (__v2df)__B, - -(__v2df)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fmsub_round_sd(U, A, B, C, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - -(__v2df)(__m128d)(C), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsub_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U) -{ - return __builtin_ia32_vfmsubsd3_mask3((__v2df)__W, - (__v2df)__X, - (__v2df)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fmsub_round_sd(W, X, Y, U, R) \ - ((__m128d)__builtin_ia32_vfmsubsd3_mask3((__v2df)(__m128d)(W), \ - (__v2df)(__m128d)(X), \ - (__v2df)(__m128d)(Y), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fnmadd_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return __builtin_ia32_vfmaddsd3_mask((__v2df)__W, - -(__v2df)__A, - (__v2df)__B, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fnmadd_round_sd(A, B, C, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(A), \ - -(__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(C), (__mmask8)-1, \ - (int)(R))) - -#define _mm_mask_fnmadd_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \ - -(__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmadd_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return __builtin_ia32_vfmaddsd3_maskz((__v2df)__A, - -(__v2df)__B, - (__v2df)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fnmadd_round_sd(U, A, B, C, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \ - -(__v2df)(__m128d)(B), \ - (__v2df)(__m128d)(C), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmadd_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U) -{ - return __builtin_ia32_vfmaddsd3_mask3((__v2df)__W, - -(__v2df)__X, - (__v2df)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fnmadd_round_sd(W, X, Y, U, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask3((__v2df)(__m128d)(W), \ - -(__v2df)(__m128d)(X), \ - (__v2df)(__m128d)(Y), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fnmsub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return __builtin_ia32_vfmaddsd3_mask((__v2df)__W, - -(__v2df)__A, - -(__v2df)__B, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fnmsub_round_sd(A, B, C, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(A), \ - -(__v2df)(__m128d)(B), \ - -(__v2df)(__m128d)(C), (__mmask8)-1, \ - (int)(R))) - -#define _mm_mask_fnmsub_round_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \ - -(__v2df)(__m128d)(A), \ - -(__v2df)(__m128d)(B), (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmsub_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return __builtin_ia32_vfmaddsd3_maskz((__v2df)__A, - -(__v2df)__B, - -(__v2df)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fnmsub_round_sd(U, A, B, C, R) \ - ((__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \ - -(__v2df)(__m128d)(B), \ - -(__v2df)(__m128d)(C), \ - (__mmask8)(U), \ - (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmsub_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U) -{ - return __builtin_ia32_vfmsubsd3_mask3((__v2df)__W, - -(__v2df)__X, - (__v2df)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fnmsub_round_sd(W, X, Y, U, R) \ - ((__m128d)__builtin_ia32_vfmsubsd3_mask3((__v2df)(__m128d)(W), \ - -(__v2df)(__m128d)(X), \ - (__v2df)(__m128d)(Y), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_permutex_pd(X, C) \ - ((__m512d)__builtin_ia32_permdf512((__v8df)(__m512d)(X), (int)(C))) - -#define _mm512_mask_permutex_pd(W, U, X, C) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_permutex_pd((X), (C)), \ - (__v8df)(__m512d)(W))) - -#define _mm512_maskz_permutex_pd(U, X, C) \ - ((__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \ - (__v8df)_mm512_permutex_pd((X), (C)), \ - (__v8df)_mm512_setzero_pd())) - -#define _mm512_permutex_epi64(X, C) \ - ((__m512i)__builtin_ia32_permdi512((__v8di)(__m512i)(X), (int)(C))) - -#define _mm512_mask_permutex_epi64(W, U, X, C) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_permutex_epi64((X), (C)), \ - (__v8di)(__m512i)(W))) - -#define _mm512_maskz_permutex_epi64(U, X, C) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_permutex_epi64((X), (C)), \ - (__v8di)_mm512_setzero_si512())) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_permutexvar_pd (__m512i __X, __m512d __Y) -{ - return (__m512d)__builtin_ia32_permvardf512((__v8df) __Y, (__v8di) __X); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_permutexvar_pd (__m512d __W, __mmask8 __U, __m512i __X, __m512d __Y) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_permutexvar_pd(__X, __Y), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutexvar_pd (__mmask8 __U, __m512i __X, __m512d __Y) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_permutexvar_pd(__X, __Y), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_permutexvar_epi64 (__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_permvardi512((__v8di)__Y, (__v8di)__X); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutexvar_epi64 (__mmask8 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_permutexvar_epi64(__X, __Y), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_permutexvar_epi64 (__m512i __W, __mmask8 __M, __m512i __X, - __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M, - (__v8di)_mm512_permutexvar_epi64(__X, __Y), - (__v8di)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_permutexvar_ps (__m512i __X, __m512 __Y) -{ - return (__m512)__builtin_ia32_permvarsf512((__v16sf)__Y, (__v16si)__X); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_permutexvar_ps (__m512 __W, __mmask16 __U, __m512i __X, __m512 __Y) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_permutexvar_ps(__X, __Y), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutexvar_ps (__mmask16 __U, __m512i __X, __m512 __Y) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_permutexvar_ps(__X, __Y), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_permutexvar_epi32 (__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_permvarsi512((__v16si)__Y, (__v16si)__X); -} - -#define _mm512_permutevar_epi32 _mm512_permutexvar_epi32 - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_permutexvar_epi32 (__mmask16 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_permutexvar_epi32(__X, __Y), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_permutexvar_epi32 (__m512i __W, __mmask16 __M, __m512i __X, - __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M, - (__v16si)_mm512_permutexvar_epi32(__X, __Y), - (__v16si)__W); -} - -#define _mm512_mask_permutevar_epi32 _mm512_mask_permutexvar_epi32 - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_mm512_kand (__mmask16 __A, __mmask16 __B) -{ - return (__mmask16) __builtin_ia32_kandhi ((__mmask16) __A, (__mmask16) __B); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_mm512_kandn (__mmask16 __A, __mmask16 __B) -{ - return (__mmask16) __builtin_ia32_kandnhi ((__mmask16) __A, (__mmask16) __B); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_mm512_kor (__mmask16 __A, __mmask16 __B) -{ - return (__mmask16) __builtin_ia32_korhi ((__mmask16) __A, (__mmask16) __B); -} - -static __inline__ int __DEFAULT_FN_ATTRS -_mm512_kortestc (__mmask16 __A, __mmask16 __B) -{ - return __builtin_ia32_kortestchi ((__mmask16) __A, (__mmask16) __B); -} - -static __inline__ int __DEFAULT_FN_ATTRS -_mm512_kortestz (__mmask16 __A, __mmask16 __B) -{ - return __builtin_ia32_kortestzhi ((__mmask16) __A, (__mmask16) __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortestc_mask16_u8(__mmask16 __A, __mmask16 __B) -{ - return (unsigned char)__builtin_ia32_kortestchi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortestz_mask16_u8(__mmask16 __A, __mmask16 __B) -{ - return (unsigned char)__builtin_ia32_kortestzhi(__A, __B); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_kortest_mask16_u8(__mmask16 __A, __mmask16 __B, unsigned char *__C) { - *__C = (unsigned char)__builtin_ia32_kortestchi(__A, __B); - return (unsigned char)__builtin_ia32_kortestzhi(__A, __B); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_mm512_kunpackb (__mmask16 __A, __mmask16 __B) -{ - return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_mm512_kxnor (__mmask16 __A, __mmask16 __B) -{ - return (__mmask16) __builtin_ia32_kxnorhi ((__mmask16) __A, (__mmask16) __B); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_mm512_kxor (__mmask16 __A, __mmask16 __B) -{ - return (__mmask16) __builtin_ia32_kxorhi ((__mmask16) __A, (__mmask16) __B); -} - -#define _kand_mask16 _mm512_kand -#define _kandn_mask16 _mm512_kandn -#define _knot_mask16 _mm512_knot -#define _kor_mask16 _mm512_kor -#define _kxnor_mask16 _mm512_kxnor -#define _kxor_mask16 _mm512_kxor - -#define _kshiftli_mask16(A, I) \ - ((__mmask16)__builtin_ia32_kshiftlihi((__mmask16)(A), (unsigned int)(I))) - -#define _kshiftri_mask16(A, I) \ - ((__mmask16)__builtin_ia32_kshiftrihi((__mmask16)(A), (unsigned int)(I))) - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_cvtmask16_u32(__mmask16 __A) { - return (unsigned int)__builtin_ia32_kmovw((__mmask16)__A); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_cvtu32_mask16(unsigned int __A) { - return (__mmask16)__builtin_ia32_kmovw((__mmask16)__A); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS -_load_mask16(__mmask16 *__A) { - return (__mmask16)__builtin_ia32_kmovw(*(__mmask16 *)__A); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_store_mask16(__mmask16 *__A, __mmask16 __B) { - *(__mmask16 *)__A = __builtin_ia32_kmovw((__mmask16)__B); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_stream_si512 (void * __P, __m512i __A) -{ - typedef __v8di __v8di_aligned __attribute__((aligned(64))); - __builtin_nontemporal_store((__v8di_aligned)__A, (__v8di_aligned*)__P); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_stream_load_si512 (void const *__P) -{ - typedef __v8di __v8di_aligned __attribute__((aligned(64))); - return (__m512i) __builtin_nontemporal_load((const __v8di_aligned *)__P); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_stream_pd (void *__P, __m512d __A) -{ - typedef __v8df __v8df_aligned __attribute__((aligned(64))); - __builtin_nontemporal_store((__v8df_aligned)__A, (__v8df_aligned*)__P); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_stream_ps (void *__P, __m512 __A) -{ - typedef __v16sf __v16sf_aligned __attribute__((aligned(64))); - __builtin_nontemporal_store((__v16sf_aligned)__A, (__v16sf_aligned*)__P); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_compress_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A, - (__v8df) __W, - (__mmask8) __U); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_compress_pd (__mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A, - (__v8df) - _mm512_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_compress_epi64 (__m512i __W, __mmask8 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A, - (__v8di) __W, - (__mmask8) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_compress_epi64 (__mmask8 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A, - (__v8di) - _mm512_setzero_si512 (), - (__mmask8) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_compress_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A, - (__v16sf) __W, - (__mmask16) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_compress_ps (__mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A, - (__v16sf) - _mm512_setzero_ps (), - (__mmask16) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_compress_epi32 (__m512i __W, __mmask16 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A, - (__v16si) __W, - (__mmask16) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_compress_epi32 (__mmask16 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A, - (__v16si) - _mm512_setzero_si512 (), - (__mmask16) __U); -} - -#define _mm_cmp_round_ss_mask(X, Y, P, R) \ - ((__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \ - (__v4sf)(__m128)(Y), (int)(P), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_cmp_round_ss_mask(M, X, Y, P, R) \ - ((__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \ - (__v4sf)(__m128)(Y), (int)(P), \ - (__mmask8)(M), (int)(R))) - -#define _mm_cmp_ss_mask(X, Y, P) \ - ((__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \ - (__v4sf)(__m128)(Y), (int)(P), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_cmp_ss_mask(M, X, Y, P) \ - ((__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \ - (__v4sf)(__m128)(Y), (int)(P), \ - (__mmask8)(M), \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_cmp_round_sd_mask(X, Y, P, R) \ - ((__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \ - (__v2df)(__m128d)(Y), (int)(P), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_cmp_round_sd_mask(M, X, Y, P, R) \ - ((__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \ - (__v2df)(__m128d)(Y), (int)(P), \ - (__mmask8)(M), (int)(R))) - -#define _mm_cmp_sd_mask(X, Y, P) \ - ((__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \ - (__v2df)(__m128d)(Y), (int)(P), \ - (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_cmp_sd_mask(M, X, Y, P) \ - ((__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \ - (__v2df)(__m128d)(Y), (int)(P), \ - (__mmask8)(M), \ - _MM_FROUND_CUR_DIRECTION)) - -/* Bit Test */ - -static __inline __mmask16 __DEFAULT_FN_ATTRS512 -_mm512_test_epi32_mask (__m512i __A, __m512i __B) -{ - return _mm512_cmpneq_epi32_mask (_mm512_and_epi32(__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS512 -_mm512_mask_test_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_cmpneq_epi32_mask (__U, _mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline __mmask8 __DEFAULT_FN_ATTRS512 -_mm512_test_epi64_mask (__m512i __A, __m512i __B) -{ - return _mm512_cmpneq_epi64_mask (_mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS512 -_mm512_mask_test_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_cmpneq_epi64_mask (__U, _mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS512 -_mm512_testn_epi32_mask (__m512i __A, __m512i __B) -{ - return _mm512_cmpeq_epi32_mask (_mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS512 -_mm512_mask_testn_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_cmpeq_epi32_mask (__U, _mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS512 -_mm512_testn_epi64_mask (__m512i __A, __m512i __B) -{ - return _mm512_cmpeq_epi64_mask (_mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS512 -_mm512_mask_testn_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_cmpeq_epi64_mask (__U, _mm512_and_epi32 (__A, __B), - _mm512_setzero_si512()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_movehdup_ps (__m512 __A) -{ - return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A, - 1, 1, 3, 3, 5, 5, 7, 7, 9, 9, 11, 11, 13, 13, 15, 15); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_movehdup_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_movehdup_ps(__A), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_movehdup_ps (__mmask16 __U, __m512 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_movehdup_ps(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_moveldup_ps (__m512 __A) -{ - return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A, - 0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_moveldup_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_moveldup_ps(__A), - (__v16sf)__W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_moveldup_ps (__mmask16 __U, __m512 __A) -{ - return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_moveldup_ps(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_move_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return __builtin_ia32_selectss_128(__U, _mm_move_ss(__A, __B), __W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_move_ss (__mmask8 __U, __m128 __A, __m128 __B) -{ - return __builtin_ia32_selectss_128(__U, _mm_move_ss(__A, __B), - _mm_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_move_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return __builtin_ia32_selectsd_128(__U, _mm_move_sd(__A, __B), __W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_move_sd (__mmask8 __U, __m128d __A, __m128d __B) -{ - return __builtin_ia32_selectsd_128(__U, _mm_move_sd(__A, __B), - _mm_setzero_pd()); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_store_ss (float * __W, __mmask8 __U, __m128 __A) -{ - __builtin_ia32_storess128_mask ((__v4sf *)__W, __A, __U & 1); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_store_sd (double * __W, __mmask8 __U, __m128d __A) -{ - __builtin_ia32_storesd128_mask ((__v2df *)__W, __A, __U & 1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_load_ss (__m128 __W, __mmask8 __U, const float* __A) -{ - __m128 src = (__v4sf) __builtin_shufflevector((__v4sf) __W, - (__v4sf)_mm_setzero_ps(), - 0, 4, 4, 4); - - return (__m128) __builtin_ia32_loadss128_mask ((const __v4sf *) __A, src, __U & 1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_load_ss (__mmask8 __U, const float* __A) -{ - return (__m128)__builtin_ia32_loadss128_mask ((const __v4sf *) __A, - (__v4sf) _mm_setzero_ps(), - __U & 1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_load_sd (__m128d __W, __mmask8 __U, const double* __A) -{ - __m128d src = (__v2df) __builtin_shufflevector((__v2df) __W, - (__v2df)_mm_setzero_pd(), - 0, 2); - - return (__m128d) __builtin_ia32_loadsd128_mask ((const __v2df *) __A, src, __U & 1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_load_sd (__mmask8 __U, const double* __A) -{ - return (__m128d) __builtin_ia32_loadsd128_mask ((const __v2df *) __A, - (__v2df) _mm_setzero_pd(), - __U & 1); -} - -#define _mm512_shuffle_epi32(A, I) \ - ((__m512i)__builtin_ia32_pshufd512((__v16si)(__m512i)(A), (int)(I))) - -#define _mm512_mask_shuffle_epi32(W, U, A, I) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_shuffle_epi32((A), (I)), \ - (__v16si)(__m512i)(W))) - -#define _mm512_maskz_shuffle_epi32(U, A, I) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_shuffle_epi32((A), (I)), \ - (__v16si)_mm512_setzero_si512())) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_expand_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A, - (__v8df) __W, - (__mmask8) __U); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_expand_pd (__mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A, - (__v8df) _mm512_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_expand_epi64 (__m512i __W, __mmask8 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A, - (__v8di) __W, - (__mmask8) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_expand_epi64 ( __mmask8 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A, - (__v8di) _mm512_setzero_si512 (), - (__mmask8) __U); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_expandloadu_pd(__m512d __W, __mmask8 __U, void const *__P) -{ - return (__m512d) __builtin_ia32_expandloaddf512_mask ((const __v8df *)__P, - (__v8df) __W, - (__mmask8) __U); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_expandloadu_pd(__mmask8 __U, void const *__P) -{ - return (__m512d) __builtin_ia32_expandloaddf512_mask ((const __v8df *)__P, - (__v8df) _mm512_setzero_pd(), - (__mmask8) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_expandloadu_epi64(__m512i __W, __mmask8 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_expandloaddi512_mask ((const __v8di *)__P, - (__v8di) __W, - (__mmask8) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_expandloadu_epi64(__mmask8 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_expandloaddi512_mask ((const __v8di *)__P, - (__v8di) _mm512_setzero_si512(), - (__mmask8) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_expandloadu_ps(__m512 __W, __mmask16 __U, void const *__P) -{ - return (__m512) __builtin_ia32_expandloadsf512_mask ((const __v16sf *)__P, - (__v16sf) __W, - (__mmask16) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_expandloadu_ps(__mmask16 __U, void const *__P) -{ - return (__m512) __builtin_ia32_expandloadsf512_mask ((const __v16sf *)__P, - (__v16sf) _mm512_setzero_ps(), - (__mmask16) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_expandloadu_epi32(__m512i __W, __mmask16 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_expandloadsi512_mask ((const __v16si *)__P, - (__v16si) __W, - (__mmask16) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_expandloadu_epi32(__mmask16 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_expandloadsi512_mask ((const __v16si *)__P, - (__v16si) _mm512_setzero_si512(), - (__mmask16) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_expand_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A, - (__v16sf) __W, - (__mmask16) __U); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_expand_ps (__mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A, - (__v16sf) _mm512_setzero_ps(), - (__mmask16) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_expand_epi32 (__m512i __W, __mmask16 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A, - (__v16si) __W, - (__mmask16) __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_expand_epi32 (__mmask16 __U, __m512i __A) -{ - return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A, - (__v16si) _mm512_setzero_si512(), - (__mmask16) __U); -} - -#define _mm512_cvt_roundps_pd(A, R) \ - ((__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \ - (__v8df)_mm512_undefined_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm512_mask_cvt_roundps_pd(W, U, A, R) \ - ((__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \ - (__v8df)(__m512d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundps_pd(U, A, R) \ - ((__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \ - (__v8df)_mm512_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_cvtps_pd (__m256 __A) -{ - return (__m512d) __builtin_convertvector((__v8sf)__A, __v8df); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtps_pd (__m512d __W, __mmask8 __U, __m256 __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_cvtps_pd(__A), - (__v8df)__W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtps_pd (__mmask8 __U, __m256 __A) -{ - return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, - (__v8df)_mm512_cvtps_pd(__A), - (__v8df)_mm512_setzero_pd()); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_cvtpslo_pd (__m512 __A) -{ - return (__m512d) _mm512_cvtps_pd(_mm512_castps512_ps256(__A)); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpslo_pd (__m512d __W, __mmask8 __U, __m512 __A) -{ - return (__m512d) _mm512_mask_cvtps_pd(__W, __U, _mm512_castps512_ps256(__A)); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_mov_pd (__m512d __W, __mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U, - (__v8df) __A, - (__v8df) __W); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_mov_pd (__mmask8 __U, __m512d __A) -{ - return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U, - (__v8df) __A, - (__v8df) _mm512_setzero_pd ()); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_mov_ps (__m512 __W, __mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U, - (__v16sf) __A, - (__v16sf) __W); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_mov_ps (__mmask16 __U, __m512 __A) -{ - return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U, - (__v16sf) __A, - (__v16sf) _mm512_setzero_ps ()); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m512d __A) -{ - __builtin_ia32_compressstoredf512_mask ((__v8df *) __P, (__v8df) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m512i __A) -{ - __builtin_ia32_compressstoredi512_mask ((__v8di *) __P, (__v8di) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_compressstoreu_ps (void *__P, __mmask16 __U, __m512 __A) -{ - __builtin_ia32_compressstoresf512_mask ((__v16sf *) __P, (__v16sf) __A, - (__mmask16) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 -_mm512_mask_compressstoreu_epi32 (void *__P, __mmask16 __U, __m512i __A) -{ - __builtin_ia32_compressstoresi512_mask ((__v16si *) __P, (__v16si) __A, - (__mmask16) __U); -} - -#define _mm_cvt_roundsd_ss(A, B, R) \ - ((__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \ - (__v2df)(__m128d)(B), \ - (__v4sf)_mm_undefined_ps(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_cvt_roundsd_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \ - (__v2df)(__m128d)(B), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_cvt_roundsd_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \ - (__v2df)(__m128d)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128d __B) -{ - return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)__A, - (__v2df)__B, - (__v4sf)__W, - (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsd_ss (__mmask8 __U, __m128 __A, __m128d __B) -{ - return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)__A, - (__v2df)__B, - (__v4sf)_mm_setzero_ps(), - (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_cvtss_i32 _mm_cvtss_si32 -#define _mm_cvtsd_i32 _mm_cvtsd_si32 -#define _mm_cvti32_sd _mm_cvtsi32_sd -#define _mm_cvti32_ss _mm_cvtsi32_ss -#ifdef __x86_64__ -#define _mm_cvtss_i64 _mm_cvtss_si64 -#define _mm_cvtsd_i64 _mm_cvtsd_si64 -#define _mm_cvti64_sd _mm_cvtsi64_sd -#define _mm_cvti64_ss _mm_cvtsi64_ss -#endif - -#ifdef __x86_64__ -#define _mm_cvt_roundi64_sd(A, B, R) \ - ((__m128d)__builtin_ia32_cvtsi2sd64((__v2df)(__m128d)(A), (long long)(B), \ - (int)(R))) - -#define _mm_cvt_roundsi64_sd(A, B, R) \ - ((__m128d)__builtin_ia32_cvtsi2sd64((__v2df)(__m128d)(A), (long long)(B), \ - (int)(R))) -#endif - -#define _mm_cvt_roundsi32_ss(A, B, R) \ - ((__m128)__builtin_ia32_cvtsi2ss32((__v4sf)(__m128)(A), (int)(B), (int)(R))) - -#define _mm_cvt_roundi32_ss(A, B, R) \ - ((__m128)__builtin_ia32_cvtsi2ss32((__v4sf)(__m128)(A), (int)(B), (int)(R))) - -#ifdef __x86_64__ -#define _mm_cvt_roundsi64_ss(A, B, R) \ - ((__m128)__builtin_ia32_cvtsi2ss64((__v4sf)(__m128)(A), (long long)(B), \ - (int)(R))) - -#define _mm_cvt_roundi64_ss(A, B, R) \ - ((__m128)__builtin_ia32_cvtsi2ss64((__v4sf)(__m128)(A), (long long)(B), \ - (int)(R))) -#endif - -#define _mm_cvt_roundss_sd(A, B, R) \ - ((__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \ - (__v4sf)(__m128)(B), \ - (__v2df)_mm_undefined_pd(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_cvt_roundss_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \ - (__v4sf)(__m128)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_cvt_roundss_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \ - (__v4sf)(__m128)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_cvtss_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128 __B) -{ - return __builtin_ia32_cvtss2sd_round_mask((__v2df)__A, - (__v4sf)__B, - (__v2df)__W, - (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtss_sd (__mmask8 __U, __m128d __A, __m128 __B) -{ - return __builtin_ia32_cvtss2sd_round_mask((__v2df)__A, - (__v4sf)__B, - (__v2df)_mm_setzero_pd(), - (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_cvtu32_sd (__m128d __A, unsigned __B) -{ - __A[0] = __B; - return __A; -} - -#ifdef __x86_64__ -#define _mm_cvt_roundu64_sd(A, B, R) \ - ((__m128d)__builtin_ia32_cvtusi2sd64((__v2df)(__m128d)(A), \ - (unsigned long long)(B), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_cvtu64_sd (__m128d __A, unsigned long long __B) -{ - __A[0] = __B; - return __A; -} -#endif - -#define _mm_cvt_roundu32_ss(A, B, R) \ - ((__m128)__builtin_ia32_cvtusi2ss32((__v4sf)(__m128)(A), (unsigned int)(B), \ - (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtu32_ss (__m128 __A, unsigned __B) -{ - __A[0] = __B; - return __A; -} - -#ifdef __x86_64__ -#define _mm_cvt_roundu64_ss(A, B, R) \ - ((__m128)__builtin_ia32_cvtusi2ss64((__v4sf)(__m128)(A), \ - (unsigned long long)(B), (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtu64_ss (__m128 __A, unsigned long long __B) -{ - __A[0] = __B; - return __A; -} -#endif - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_set1_epi32 (__m512i __O, __mmask16 __M, int __A) -{ - return (__m512i) __builtin_ia32_selectd_512(__M, - (__v16si) _mm512_set1_epi32(__A), - (__v16si) __O); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_set1_epi64 (__m512i __O, __mmask8 __M, long long __A) -{ - return (__m512i) __builtin_ia32_selectq_512(__M, - (__v8di) _mm512_set1_epi64(__A), - (__v8di) __O); -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set_epi8 (char __e63, char __e62, char __e61, char __e60, char __e59, - char __e58, char __e57, char __e56, char __e55, char __e54, char __e53, - char __e52, char __e51, char __e50, char __e49, char __e48, char __e47, - char __e46, char __e45, char __e44, char __e43, char __e42, char __e41, - char __e40, char __e39, char __e38, char __e37, char __e36, char __e35, - char __e34, char __e33, char __e32, char __e31, char __e30, char __e29, - char __e28, char __e27, char __e26, char __e25, char __e24, char __e23, - char __e22, char __e21, char __e20, char __e19, char __e18, char __e17, - char __e16, char __e15, char __e14, char __e13, char __e12, char __e11, - char __e10, char __e9, char __e8, char __e7, char __e6, char __e5, - char __e4, char __e3, char __e2, char __e1, char __e0) { - - return __extension__ (__m512i)(__v64qi) - {__e0, __e1, __e2, __e3, __e4, __e5, __e6, __e7, - __e8, __e9, __e10, __e11, __e12, __e13, __e14, __e15, - __e16, __e17, __e18, __e19, __e20, __e21, __e22, __e23, - __e24, __e25, __e26, __e27, __e28, __e29, __e30, __e31, - __e32, __e33, __e34, __e35, __e36, __e37, __e38, __e39, - __e40, __e41, __e42, __e43, __e44, __e45, __e46, __e47, - __e48, __e49, __e50, __e51, __e52, __e53, __e54, __e55, - __e56, __e57, __e58, __e59, __e60, __e61, __e62, __e63}; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set_epi16(short __e31, short __e30, short __e29, short __e28, - short __e27, short __e26, short __e25, short __e24, short __e23, - short __e22, short __e21, short __e20, short __e19, short __e18, - short __e17, short __e16, short __e15, short __e14, short __e13, - short __e12, short __e11, short __e10, short __e9, short __e8, - short __e7, short __e6, short __e5, short __e4, short __e3, - short __e2, short __e1, short __e0) { - return __extension__ (__m512i)(__v32hi) - {__e0, __e1, __e2, __e3, __e4, __e5, __e6, __e7, - __e8, __e9, __e10, __e11, __e12, __e13, __e14, __e15, - __e16, __e17, __e18, __e19, __e20, __e21, __e22, __e23, - __e24, __e25, __e26, __e27, __e28, __e29, __e30, __e31 }; -} - -static __inline __m512i __DEFAULT_FN_ATTRS512 -_mm512_set_epi32 (int __A, int __B, int __C, int __D, - int __E, int __F, int __G, int __H, - int __I, int __J, int __K, int __L, - int __M, int __N, int __O, int __P) -{ - return __extension__ (__m512i)(__v16si) - { __P, __O, __N, __M, __L, __K, __J, __I, - __H, __G, __F, __E, __D, __C, __B, __A }; -} - -#define _mm512_setr_epi32(e0,e1,e2,e3,e4,e5,e6,e7, \ - e8,e9,e10,e11,e12,e13,e14,e15) \ - _mm512_set_epi32((e15),(e14),(e13),(e12),(e11),(e10),(e9),(e8),(e7),(e6), \ - (e5),(e4),(e3),(e2),(e1),(e0)) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_set_epi64 (long long __A, long long __B, long long __C, - long long __D, long long __E, long long __F, - long long __G, long long __H) -{ - return __extension__ (__m512i) (__v8di) - { __H, __G, __F, __E, __D, __C, __B, __A }; -} - -#define _mm512_setr_epi64(e0,e1,e2,e3,e4,e5,e6,e7) \ - _mm512_set_epi64((e7),(e6),(e5),(e4),(e3),(e2),(e1),(e0)) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_set_pd (double __A, double __B, double __C, double __D, - double __E, double __F, double __G, double __H) -{ - return __extension__ (__m512d) - { __H, __G, __F, __E, __D, __C, __B, __A }; -} - -#define _mm512_setr_pd(e0,e1,e2,e3,e4,e5,e6,e7) \ - _mm512_set_pd((e7),(e6),(e5),(e4),(e3),(e2),(e1),(e0)) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_set_ps (float __A, float __B, float __C, float __D, - float __E, float __F, float __G, float __H, - float __I, float __J, float __K, float __L, - float __M, float __N, float __O, float __P) -{ - return __extension__ (__m512) - { __P, __O, __N, __M, __L, __K, __J, __I, - __H, __G, __F, __E, __D, __C, __B, __A }; -} - -#define _mm512_setr_ps(e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15) \ - _mm512_set_ps((e15),(e14),(e13),(e12),(e11),(e10),(e9),(e8),(e7),(e6),(e5), \ - (e4),(e3),(e2),(e1),(e0)) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_abs_ps(__m512 __A) -{ - return (__m512)_mm512_and_epi32(_mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ; -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_abs_ps(__m512 __W, __mmask16 __K, __m512 __A) -{ - return (__m512)_mm512_mask_and_epi32((__m512i)__W, __K, _mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ; -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_abs_pd(__m512d __A) -{ - return (__m512d)_mm512_and_epi64(_mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A) ; -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A) -{ - return (__m512d)_mm512_mask_and_epi64((__v8di)__W, __K, _mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A); -} - -/* Vector-reduction arithmetic accepts vectors as inputs and produces scalars as - * outputs. This class of vector operation forms the basis of many scientific - * computations. In vector-reduction arithmetic, the evaluation order is - * independent of the order of the input elements of V. - - * For floating-point intrinsics: - * 1. When using fadd/fmul intrinsics, the order of operations within the - * vector is unspecified (associative math). - * 2. When using fmin/fmax intrinsics, NaN or -0.0 elements within the vector - * produce unspecified results. - - * Used bisection method. At each step, we partition the vector with previous - * step in half, and the operation is performed on its two halves. - * This takes log2(n) steps where n is the number of elements in the vector. - */ - -static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_add_epi64(__m512i __W) { - return __builtin_reduce_add((__v8di)__W); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_mul_epi64(__m512i __W) { - return __builtin_reduce_mul((__v8di)__W); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_and_epi64(__m512i __W) { - return __builtin_reduce_and((__v8di)__W); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_or_epi64(__m512i __W) { - return __builtin_reduce_or((__v8di)__W); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_add_epi64(__mmask8 __M, __m512i __W) { - __W = _mm512_maskz_mov_epi64(__M, __W); - return __builtin_reduce_add((__v8di)__W); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_mul_epi64(__mmask8 __M, __m512i __W) { - __W = _mm512_mask_mov_epi64(_mm512_set1_epi64(1), __M, __W); - return __builtin_reduce_mul((__v8di)__W); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_and_epi64(__mmask8 __M, __m512i __W) { - __W = _mm512_mask_mov_epi64(_mm512_set1_epi64(-1LL), __M, __W); - return __builtin_reduce_and((__v8di)__W); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_or_epi64(__mmask8 __M, __m512i __W) { - __W = _mm512_maskz_mov_epi64(__M, __W); - return __builtin_reduce_or((__v8di)__W); -} - -// -0.0 is used to ignore the start value since it is the neutral value of -// floating point addition. For more information, please refer to -// https://llvm.org/docs/LangRef.html#llvm-vector-reduce-fadd-intrinsic -static __inline__ double __DEFAULT_FN_ATTRS512 _mm512_reduce_add_pd(__m512d __W) { - return __builtin_ia32_reduce_fadd_pd512(-0.0, __W); -} - -static __inline__ double __DEFAULT_FN_ATTRS512 _mm512_reduce_mul_pd(__m512d __W) { - return __builtin_ia32_reduce_fmul_pd512(1.0, __W); -} - -static __inline__ double __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_add_pd(__mmask8 __M, __m512d __W) { - __W = _mm512_maskz_mov_pd(__M, __W); - return __builtin_ia32_reduce_fadd_pd512(-0.0, __W); -} - -static __inline__ double __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_mul_pd(__mmask8 __M, __m512d __W) { - __W = _mm512_mask_mov_pd(_mm512_set1_pd(1.0), __M, __W); - return __builtin_ia32_reduce_fmul_pd512(1.0, __W); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_reduce_add_epi32(__m512i __W) { - return __builtin_reduce_add((__v16si)__W); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_reduce_mul_epi32(__m512i __W) { - return __builtin_reduce_mul((__v16si)__W); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_reduce_and_epi32(__m512i __W) { - return __builtin_reduce_and((__v16si)__W); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_reduce_or_epi32(__m512i __W) { - return __builtin_reduce_or((__v16si)__W); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_add_epi32( __mmask16 __M, __m512i __W) { - __W = _mm512_maskz_mov_epi32(__M, __W); - return __builtin_reduce_add((__v16si)__W); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_mul_epi32( __mmask16 __M, __m512i __W) { - __W = _mm512_mask_mov_epi32(_mm512_set1_epi32(1), __M, __W); - return __builtin_reduce_mul((__v16si)__W); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_and_epi32( __mmask16 __M, __m512i __W) { - __W = _mm512_mask_mov_epi32(_mm512_set1_epi32(-1), __M, __W); - return __builtin_reduce_and((__v16si)__W); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_or_epi32(__mmask16 __M, __m512i __W) { - __W = _mm512_maskz_mov_epi32(__M, __W); - return __builtin_reduce_or((__v16si)__W); -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_reduce_add_ps(__m512 __W) { - return __builtin_ia32_reduce_fadd_ps512(-0.0f, __W); -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_reduce_mul_ps(__m512 __W) { - return __builtin_ia32_reduce_fmul_ps512(1.0f, __W); -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_add_ps(__mmask16 __M, __m512 __W) { - __W = _mm512_maskz_mov_ps(__M, __W); - return __builtin_ia32_reduce_fadd_ps512(-0.0f, __W); -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_mul_ps(__mmask16 __M, __m512 __W) { - __W = _mm512_mask_mov_ps(_mm512_set1_ps(1.0f), __M, __W); - return __builtin_ia32_reduce_fmul_ps512(1.0f, __W); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 -_mm512_reduce_max_epi64(__m512i __V) { - return __builtin_reduce_max((__v8di)__V); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS512 -_mm512_reduce_max_epu64(__m512i __V) { - return __builtin_reduce_max((__v8du)__V); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 -_mm512_reduce_min_epi64(__m512i __V) { - return __builtin_reduce_min((__v8di)__V); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS512 -_mm512_reduce_min_epu64(__m512i __V) { - return __builtin_reduce_min((__v8du)__V); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_max_epi64(__mmask8 __M, __m512i __V) { - __V = _mm512_mask_mov_epi64(_mm512_set1_epi64(-__LONG_LONG_MAX__ - 1LL), __M, __V); - return __builtin_reduce_max((__v8di)__V); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_max_epu64(__mmask8 __M, __m512i __V) { - __V = _mm512_maskz_mov_epi64(__M, __V); - return __builtin_reduce_max((__v8du)__V); -} - -static __inline__ long long __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_min_epi64(__mmask8 __M, __m512i __V) { - __V = _mm512_mask_mov_epi64(_mm512_set1_epi64(__LONG_LONG_MAX__), __M, __V); - return __builtin_reduce_min((__v8di)__V); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_min_epu64(__mmask8 __M, __m512i __V) { - __V = _mm512_mask_mov_epi64(_mm512_set1_epi64(-1LL), __M, __V); - return __builtin_reduce_min((__v8du)__V); -} -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_reduce_max_epi32(__m512i __V) { - return __builtin_reduce_max((__v16si)__V); -} - -static __inline__ unsigned int __DEFAULT_FN_ATTRS512 -_mm512_reduce_max_epu32(__m512i __V) { - return __builtin_reduce_max((__v16su)__V); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_reduce_min_epi32(__m512i __V) { - return __builtin_reduce_min((__v16si)__V); -} - -static __inline__ unsigned int __DEFAULT_FN_ATTRS512 -_mm512_reduce_min_epu32(__m512i __V) { - return __builtin_reduce_min((__v16su)__V); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_max_epi32(__mmask16 __M, __m512i __V) { - __V = _mm512_mask_mov_epi32(_mm512_set1_epi32(-__INT_MAX__ - 1), __M, __V); - return __builtin_reduce_max((__v16si)__V); -} - -static __inline__ unsigned int __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_max_epu32(__mmask16 __M, __m512i __V) { - __V = _mm512_maskz_mov_epi32(__M, __V); - return __builtin_reduce_max((__v16su)__V); -} - -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_min_epi32(__mmask16 __M, __m512i __V) { - __V = _mm512_mask_mov_epi32(_mm512_set1_epi32(__INT_MAX__), __M, __V); - return __builtin_reduce_min((__v16si)__V); -} - -static __inline__ unsigned int __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_min_epu32(__mmask16 __M, __m512i __V) { - __V = _mm512_mask_mov_epi32(_mm512_set1_epi32(-1), __M, __V); - return __builtin_reduce_min((__v16su)__V); -} - -static __inline__ double __DEFAULT_FN_ATTRS512 -_mm512_reduce_max_pd(__m512d __V) { - return __builtin_ia32_reduce_fmax_pd512(__V); -} - -static __inline__ double __DEFAULT_FN_ATTRS512 -_mm512_reduce_min_pd(__m512d __V) { - return __builtin_ia32_reduce_fmin_pd512(__V); -} - -static __inline__ double __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_max_pd(__mmask8 __M, __m512d __V) { - __V = _mm512_mask_mov_pd(_mm512_set1_pd(-__builtin_inf()), __M, __V); - return __builtin_ia32_reduce_fmax_pd512(__V); -} - -static __inline__ double __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_min_pd(__mmask8 __M, __m512d __V) { - __V = _mm512_mask_mov_pd(_mm512_set1_pd(__builtin_inf()), __M, __V); - return __builtin_ia32_reduce_fmin_pd512(__V); -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_reduce_max_ps(__m512 __V) { - return __builtin_ia32_reduce_fmax_ps512(__V); -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_reduce_min_ps(__m512 __V) { - return __builtin_ia32_reduce_fmin_ps512(__V); -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_max_ps(__mmask16 __M, __m512 __V) { - __V = _mm512_mask_mov_ps(_mm512_set1_ps(-__builtin_inff()), __M, __V); - return __builtin_ia32_reduce_fmax_ps512(__V); -} - -static __inline__ float __DEFAULT_FN_ATTRS512 -_mm512_mask_reduce_min_ps(__mmask16 __M, __m512 __V) { - __V = _mm512_mask_mov_ps(_mm512_set1_ps(__builtin_inff()), __M, __V); - return __builtin_ia32_reduce_fmin_ps512(__V); -} - -/// Moves the least significant 32 bits of a vector of [16 x i32] to a -/// 32-bit signed integer value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. -/// -/// \param __A -/// A vector of [16 x i32]. The least significant 32 bits are moved to the -/// destination. -/// \returns A 32-bit signed integer containing the moved value. -static __inline__ int __DEFAULT_FN_ATTRS512 -_mm512_cvtsi512_si32(__m512i __A) { - __v16si __b = (__v16si)__A; - return __b[0]; -} - -/// Loads 8 double-precision (64-bit) floating-point elements stored at memory -/// locations starting at location \a base_addr at packed 32-bit integer indices -/// stored in the lower half of \a vindex scaled by \a scale them in dst. -/// -/// This intrinsic corresponds to the <c> VGATHERDPD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// i := j*64 -/// m := j*32 -/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 -/// dst[i+63:i] := MEM[addr+63:addr] -/// ENDFOR -/// dst[MAX:512] := 0 -/// \endcode -#define _mm512_i32logather_pd(vindex, base_addr, scale) \ - _mm512_i32gather_pd(_mm512_castsi512_si256(vindex), (base_addr), (scale)) - -/// Loads 8 double-precision (64-bit) floating-point elements from memory -/// starting at location \a base_addr at packed 32-bit integer indices stored in -/// the lower half of \a vindex scaled by \a scale into dst using writemask -/// \a mask (elements are copied from \a src when the corresponding mask bit is -/// not set). -/// -/// This intrinsic corresponds to the <c> VGATHERDPD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// i := j*64 -/// m := j*32 -/// IF mask[j] -/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 -/// dst[i+63:i] := MEM[addr+63:addr] -/// ELSE -/// dst[i+63:i] := src[i+63:i] -/// FI -/// ENDFOR -/// dst[MAX:512] := 0 -/// \endcode -#define _mm512_mask_i32logather_pd(src, mask, vindex, base_addr, scale) \ - _mm512_mask_i32gather_pd((src), (mask), _mm512_castsi512_si256(vindex), \ - (base_addr), (scale)) - -/// Loads 8 64-bit integer elements from memory starting at location \a base_addr -/// at packed 32-bit integer indices stored in the lower half of \a vindex -/// scaled by \a scale and stores them in dst. -/// -/// This intrinsic corresponds to the <c> VPGATHERDQ </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// i := j*64 -/// m := j*32 -/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 -/// dst[i+63:i] := MEM[addr+63:addr] -/// ENDFOR -/// dst[MAX:512] := 0 -/// \endcode -#define _mm512_i32logather_epi64(vindex, base_addr, scale) \ - _mm512_i32gather_epi64(_mm512_castsi512_si256(vindex), (base_addr), (scale)) - -/// Loads 8 64-bit integer elements from memory starting at location \a base_addr -/// at packed 32-bit integer indices stored in the lower half of \a vindex -/// scaled by \a scale and stores them in dst using writemask \a mask (elements -/// are copied from \a src when the corresponding mask bit is not set). -/// -/// This intrinsic corresponds to the <c> VPGATHERDQ </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// i := j*64 -/// m := j*32 -/// IF mask[j] -/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 -/// dst[i+63:i] := MEM[addr+63:addr] -/// ELSE -/// dst[i+63:i] := src[i+63:i] -/// FI -/// ENDFOR -/// dst[MAX:512] := 0 -/// \endcode -#define _mm512_mask_i32logather_epi64(src, mask, vindex, base_addr, scale) \ - _mm512_mask_i32gather_epi64((src), (mask), _mm512_castsi512_si256(vindex), \ - (base_addr), (scale)) - -/// Stores 8 packed double-precision (64-bit) floating-point elements in \a v1 -/// and to memory locations starting at location \a base_addr at packed 32-bit -/// integer indices stored in \a vindex scaled by \a scale. -/// -/// This intrinsic corresponds to the <c> VSCATTERDPD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// i := j*64 -/// m := j*32 -/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 -/// MEM[addr+63:addr] := v1[i+63:i] -/// ENDFOR -/// \endcode -#define _mm512_i32loscatter_pd(base_addr, vindex, v1, scale) \ - _mm512_i32scatter_pd((base_addr), _mm512_castsi512_si256(vindex), (v1), (scale)) - -/// Stores 8 packed double-precision (64-bit) floating-point elements in \a v1 -/// to memory locations starting at location \a base_addr at packed 32-bit -/// integer indices stored in \a vindex scaled by \a scale. Only those elements -/// whose corresponding mask bit is set in writemask \a mask are written to -/// memory. -/// -/// This intrinsic corresponds to the <c> VSCATTERDPD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// i := j*64 -/// m := j*32 -/// IF mask[j] -/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 -/// MEM[addr+63:addr] := a[i+63:i] -/// FI -/// ENDFOR -/// \endcode -#define _mm512_mask_i32loscatter_pd(base_addr, mask, vindex, v1, scale) \ - _mm512_mask_i32scatter_pd((base_addr), (mask), \ - _mm512_castsi512_si256(vindex), (v1), (scale)) - -/// Stores 8 packed 64-bit integer elements located in \a v1 and stores them in -/// memory locations starting at location \a base_addr at packed 32-bit integer -/// indices stored in \a vindex scaled by \a scale. -/// -/// This intrinsic corresponds to the <c> VPSCATTERDQ </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// i := j*64 -/// m := j*32 -/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 -/// MEM[addr+63:addr] := a[i+63:i] -/// ENDFOR -/// \endcode -#define _mm512_i32loscatter_epi64(base_addr, vindex, v1, scale) \ - _mm512_i32scatter_epi64((base_addr), \ - _mm512_castsi512_si256(vindex), (v1), (scale)) - -/// Stores 8 packed 64-bit integer elements located in a and stores them in -/// memory locations starting at location \a base_addr at packed 32-bit integer -/// indices stored in \a vindex scaled by scale using writemask \a mask (elements -/// whose corresponding mask bit is not set are not written to memory). -/// -/// This intrinsic corresponds to the <c> VPSCATTERDQ </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// i := j*64 -/// m := j*32 -/// IF mask[j] -/// addr := base_addr + SignExtend64(vindex[m+31:m]) * ZeroExtend64(scale) * 8 -/// MEM[addr+63:addr] := a[i+63:i] -/// FI -/// ENDFOR -/// \endcode -#define _mm512_mask_i32loscatter_epi64(base_addr, mask, vindex, v1, scale) \ - _mm512_mask_i32scatter_epi64((base_addr), (mask), \ - _mm512_castsi512_si256(vindex), (v1), (scale)) - -#undef __DEFAULT_FN_ATTRS512 -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS - -#endif /* __AVX512FINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fintrin.h.blob deleted file mode 100644 index 96c331b91acf2c679b0511bee4d4bab34894b7e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 584649 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 Y4zaP^B4?g0$07kXjAjKUwSp$~f951>^Z)<= diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h deleted file mode 100644 index 5cdc37fd..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h +++ /dev/null @@ -1,3346 +0,0 @@ -/*===----------- avx512fp16intrin.h - AVX512-FP16 intrinsics ---------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512fp16intrin.h> directly; include <immintrin.h> instead." -#endif - -#ifdef __SSE2__ - -#ifndef __AVX512FP16INTRIN_H -#define __AVX512FP16INTRIN_H - -/* Define the default attributes for the functions in this file. */ -typedef _Float16 __v32hf __attribute__((__vector_size__(64), __aligned__(64))); -typedef _Float16 __m512h __attribute__((__vector_size__(64), __aligned__(64))); -typedef _Float16 __m512h_u __attribute__((__vector_size__(64), __aligned__(1))); - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS512 \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \ - __min_vector_width__(512))) -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \ - __min_vector_width__(256))) -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \ - __min_vector_width__(128))) - -static __inline__ _Float16 __DEFAULT_FN_ATTRS512 _mm512_cvtsh_h(__m512h __a) { - return __a[0]; -} - -static __inline __m128h __DEFAULT_FN_ATTRS128 _mm_setzero_ph(void) { - return (__m128h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; -} - -static __inline __m256h __DEFAULT_FN_ATTRS256 _mm256_setzero_ph(void) { - return (__m256h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, - 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_undefined_ph(void) { - return (__m256h)__builtin_ia32_undef256(); -} - -static __inline __m512h __DEFAULT_FN_ATTRS512 _mm512_setzero_ph(void) { - return (__m512h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, - 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, - 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_undefined_ph(void) { - return (__m128h)__builtin_ia32_undef128(); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_undefined_ph(void) { - return (__m512h)__builtin_ia32_undef512(); -} - -static __inline __m512h __DEFAULT_FN_ATTRS512 _mm512_set1_ph(_Float16 __h) { - return (__m512h)(__v32hf){__h, __h, __h, __h, __h, __h, __h, __h, - __h, __h, __h, __h, __h, __h, __h, __h, - __h, __h, __h, __h, __h, __h, __h, __h, - __h, __h, __h, __h, __h, __h, __h, __h}; -} - -static __inline __m512h __DEFAULT_FN_ATTRS512 -_mm512_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4, - _Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8, - _Float16 __h9, _Float16 __h10, _Float16 __h11, _Float16 __h12, - _Float16 __h13, _Float16 __h14, _Float16 __h15, _Float16 __h16, - _Float16 __h17, _Float16 __h18, _Float16 __h19, _Float16 __h20, - _Float16 __h21, _Float16 __h22, _Float16 __h23, _Float16 __h24, - _Float16 __h25, _Float16 __h26, _Float16 __h27, _Float16 __h28, - _Float16 __h29, _Float16 __h30, _Float16 __h31, _Float16 __h32) { - return (__m512h)(__v32hf){__h32, __h31, __h30, __h29, __h28, __h27, __h26, - __h25, __h24, __h23, __h22, __h21, __h20, __h19, - __h18, __h17, __h16, __h15, __h14, __h13, __h12, - __h11, __h10, __h9, __h8, __h7, __h6, __h5, - __h4, __h3, __h2, __h1}; -} - -#define _mm512_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8, h9, h10, h11, h12, h13, \ - h14, h15, h16, h17, h18, h19, h20, h21, h22, h23, h24, \ - h25, h26, h27, h28, h29, h30, h31, h32) \ - _mm512_set_ph((h32), (h31), (h30), (h29), (h28), (h27), (h26), (h25), (h24), \ - (h23), (h22), (h21), (h20), (h19), (h18), (h17), (h16), (h15), \ - (h14), (h13), (h12), (h11), (h10), (h9), (h8), (h7), (h6), \ - (h5), (h4), (h3), (h2), (h1)) - -static __inline __m512h __DEFAULT_FN_ATTRS512 -_mm512_set1_pch(_Float16 _Complex h) { - return (__m512h)_mm512_set1_ps(__builtin_bit_cast(float, h)); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_castph_ps(__m128h __a) { - return (__m128)__a; -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_castph_ps(__m256h __a) { - return (__m256)__a; -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_castph_ps(__m512h __a) { - return (__m512)__a; -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_castph_pd(__m128h __a) { - return (__m128d)__a; -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 _mm256_castph_pd(__m256h __a) { - return (__m256d)__a; -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 _mm512_castph_pd(__m512h __a) { - return (__m512d)__a; -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_castph_si128(__m128h __a) { - return (__m128i)__a; -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_castph_si256(__m256h __a) { - return (__m256i)__a; -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_castph_si512(__m512h __a) { - return (__m512i)__a; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castps_ph(__m128 __a) { - return (__m128h)__a; -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_castps_ph(__m256 __a) { - return (__m256h)__a; -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_castps_ph(__m512 __a) { - return (__m512h)__a; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castpd_ph(__m128d __a) { - return (__m128h)__a; -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_castpd_ph(__m256d __a) { - return (__m256h)__a; -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_castpd_ph(__m512d __a) { - return (__m512h)__a; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castsi128_ph(__m128i __a) { - return (__m128h)__a; -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_castsi256_ph(__m256i __a) { - return (__m256h)__a; -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_castsi512_ph(__m512i __a) { - return (__m512h)__a; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_castph256_ph128(__m256h __a) { - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_castph512_ph128(__m512h __a) { - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_castph512_ph256(__m512h __a) { - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_castph128_ph256(__m128h __a) { - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, -1, -1, -1, - -1, -1, -1, -1, -1); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_castph128_ph512(__m128h __a) { - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_castph256_ph512(__m256h __a) { - return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1); -} - -/// Constructs a 256-bit floating-point vector of [16 x half] from a -/// 128-bit floating-point vector of [8 x half]. The lower 128 bits -/// contain the value of the source vector. The upper 384 bits are set -/// to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x half]. -/// \returns A 512-bit floating-point vector of [16 x half]. The lower 128 bits -/// contain the value of the parameter. The upper 384 bits are set to zero. -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_zextph128_ph256(__m128h __a) { - return __builtin_shufflevector(__a, (__v8hf)_mm_setzero_ph(), 0, 1, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15); -} - -/// Constructs a 512-bit floating-point vector of [32 x half] from a -/// 128-bit floating-point vector of [8 x half]. The lower 128 bits -/// contain the value of the source vector. The upper 384 bits are set -/// to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x half]. -/// \returns A 512-bit floating-point vector of [32 x half]. The lower 128 bits -/// contain the value of the parameter. The upper 384 bits are set to zero. -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_zextph128_ph512(__m128h __a) { - return __builtin_shufflevector( - __a, (__v8hf)_mm_setzero_ph(), 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 14, 15, 8, 9, 10, 11, 12, 13, 14, 15, 8, 9, 10, 11, 12, 13, 14, 15); -} - -/// Constructs a 512-bit floating-point vector of [32 x half] from a -/// 256-bit floating-point vector of [16 x half]. The lower 256 bits -/// contain the value of the source vector. The upper 256 bits are set -/// to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit vector of [16 x half]. -/// \returns A 512-bit floating-point vector of [32 x half]. The lower 256 bits -/// contain the value of the parameter. The upper 256 bits are set to zero. -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_zextph256_ph512(__m256h __a) { - return __builtin_shufflevector(__a, (__v16hf)_mm256_setzero_ph(), 0, 1, 2, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31); -} - -#define _mm_comi_round_sh(A, B, P, R) \ - __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, (int)(P), (int)(R)) - -#define _mm_comi_sh(A, B, pred) \ - _mm_comi_round_sh((A), (B), (pred), _MM_FROUND_CUR_DIRECTION) - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comieq_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_EQ_OS, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comilt_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_LT_OS, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comile_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_LE_OS, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comigt_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_GT_OS, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comige_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_GE_OS, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_comineq_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_NEQ_US, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomieq_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_EQ_OQ, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomilt_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_LT_OQ, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomile_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_LE_OQ, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomigt_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_GT_OQ, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomige_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_GE_OQ, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_ucomineq_sh(__m128h A, - __m128h B) { - return __builtin_ia32_vcomish((__v8hf)A, (__v8hf)B, _CMP_NEQ_UQ, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_add_ph(__m512h __A, - __m512h __B) { - return (__m512h)((__v32hf)__A + (__v32hf)__B); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_add_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512( - (__mmask32)__U, (__v32hf)_mm512_add_ph(__A, __B), (__v32hf)__W); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_add_ph(__mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, - (__v32hf)_mm512_add_ph(__A, __B), - (__v32hf)_mm512_setzero_ph()); -} - -#define _mm512_add_round_ph(A, B, R) \ - ((__m512h)__builtin_ia32_addph512((__v32hf)(__m512h)(A), \ - (__v32hf)(__m512h)(B), (int)(R))) - -#define _mm512_mask_add_round_ph(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_add_round_ph((A), (B), (R)), \ - (__v32hf)(__m512h)(W))) - -#define _mm512_maskz_add_round_ph(U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_add_round_ph((A), (B), (R)), \ - (__v32hf)_mm512_setzero_ph())) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_sub_ph(__m512h __A, - __m512h __B) { - return (__m512h)((__v32hf)__A - (__v32hf)__B); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_sub_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512( - (__mmask32)__U, (__v32hf)_mm512_sub_ph(__A, __B), (__v32hf)__W); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_sub_ph(__mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, - (__v32hf)_mm512_sub_ph(__A, __B), - (__v32hf)_mm512_setzero_ph()); -} - -#define _mm512_sub_round_ph(A, B, R) \ - ((__m512h)__builtin_ia32_subph512((__v32hf)(__m512h)(A), \ - (__v32hf)(__m512h)(B), (int)(R))) - -#define _mm512_mask_sub_round_ph(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_sub_round_ph((A), (B), (R)), \ - (__v32hf)(__m512h)(W))) - -#define _mm512_maskz_sub_round_ph(U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_sub_round_ph((A), (B), (R)), \ - (__v32hf)_mm512_setzero_ph())) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_mul_ph(__m512h __A, - __m512h __B) { - return (__m512h)((__v32hf)__A * (__v32hf)__B); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_mul_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512( - (__mmask32)__U, (__v32hf)_mm512_mul_ph(__A, __B), (__v32hf)__W); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_mul_ph(__mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, - (__v32hf)_mm512_mul_ph(__A, __B), - (__v32hf)_mm512_setzero_ph()); -} - -#define _mm512_mul_round_ph(A, B, R) \ - ((__m512h)__builtin_ia32_mulph512((__v32hf)(__m512h)(A), \ - (__v32hf)(__m512h)(B), (int)(R))) - -#define _mm512_mask_mul_round_ph(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_mul_round_ph((A), (B), (R)), \ - (__v32hf)(__m512h)(W))) - -#define _mm512_maskz_mul_round_ph(U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_mul_round_ph((A), (B), (R)), \ - (__v32hf)_mm512_setzero_ph())) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_div_ph(__m512h __A, - __m512h __B) { - return (__m512h)((__v32hf)__A / (__v32hf)__B); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_div_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512( - (__mmask32)__U, (__v32hf)_mm512_div_ph(__A, __B), (__v32hf)__W); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_div_ph(__mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, - (__v32hf)_mm512_div_ph(__A, __B), - (__v32hf)_mm512_setzero_ph()); -} - -#define _mm512_div_round_ph(A, B, R) \ - ((__m512h)__builtin_ia32_divph512((__v32hf)(__m512h)(A), \ - (__v32hf)(__m512h)(B), (int)(R))) - -#define _mm512_mask_div_round_ph(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_div_round_ph((A), (B), (R)), \ - (__v32hf)(__m512h)(W))) - -#define _mm512_maskz_div_round_ph(U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_div_round_ph((A), (B), (R)), \ - (__v32hf)_mm512_setzero_ph())) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_min_ph(__m512h __A, - __m512h __B) { - return (__m512h)__builtin_ia32_minph512((__v32hf)__A, (__v32hf)__B, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_min_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512( - (__mmask32)__U, (__v32hf)_mm512_min_ph(__A, __B), (__v32hf)__W); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_min_ph(__mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, - (__v32hf)_mm512_min_ph(__A, __B), - (__v32hf)_mm512_setzero_ph()); -} - -#define _mm512_min_round_ph(A, B, R) \ - ((__m512h)__builtin_ia32_minph512((__v32hf)(__m512h)(A), \ - (__v32hf)(__m512h)(B), (int)(R))) - -#define _mm512_mask_min_round_ph(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_min_round_ph((A), (B), (R)), \ - (__v32hf)(__m512h)(W))) - -#define _mm512_maskz_min_round_ph(U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_min_round_ph((A), (B), (R)), \ - (__v32hf)_mm512_setzero_ph())) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_max_ph(__m512h __A, - __m512h __B) { - return (__m512h)__builtin_ia32_maxph512((__v32hf)__A, (__v32hf)__B, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_max_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512( - (__mmask32)__U, (__v32hf)_mm512_max_ph(__A, __B), (__v32hf)__W); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_max_ph(__mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, - (__v32hf)_mm512_max_ph(__A, __B), - (__v32hf)_mm512_setzero_ph()); -} - -#define _mm512_max_round_ph(A, B, R) \ - ((__m512h)__builtin_ia32_maxph512((__v32hf)(__m512h)(A), \ - (__v32hf)(__m512h)(B), (int)(R))) - -#define _mm512_mask_max_round_ph(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_max_round_ph((A), (B), (R)), \ - (__v32hf)(__m512h)(W))) - -#define _mm512_maskz_max_round_ph(U, A, B, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_max_round_ph((A), (B), (R)), \ - (__v32hf)_mm512_setzero_ph())) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_abs_ph(__m512h __A) { - return (__m512h)_mm512_and_epi32(_mm512_set1_epi32(0x7FFF7FFF), (__m512i)__A); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_conj_pch(__m512h __A) { - return (__m512h)_mm512_xor_ps((__m512)__A, _mm512_set1_ps(-0.0f)); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_conj_pch(__m512h __W, __mmask16 __U, __m512h __A) { - return (__m512h)__builtin_ia32_selectps_512( - (__mmask16)__U, (__v16sf)_mm512_conj_pch(__A), (__v16sf)__W); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_conj_pch(__mmask16 __U, __m512h __A) { - return (__m512h)__builtin_ia32_selectps_512((__mmask16)__U, - (__v16sf)_mm512_conj_pch(__A), - (__v16sf)_mm512_setzero_ps()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_add_sh(__m128h __A, - __m128h __B) { - __A[0] += __B[0]; - return __A; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_add_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - __A = _mm_add_sh(__A, __B); - return __builtin_ia32_selectsh_128(__U, __A, __W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_add_sh(__mmask8 __U, - __m128h __A, - __m128h __B) { - __A = _mm_add_sh(__A, __B); - return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph()); -} - -#define _mm_add_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_addsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_add_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_addsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_add_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_addsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sub_sh(__m128h __A, - __m128h __B) { - __A[0] -= __B[0]; - return __A; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sub_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - __A = _mm_sub_sh(__A, __B); - return __builtin_ia32_selectsh_128(__U, __A, __W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sub_sh(__mmask8 __U, - __m128h __A, - __m128h __B) { - __A = _mm_sub_sh(__A, __B); - return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph()); -} - -#define _mm_sub_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_subsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_sub_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_subsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_sub_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_subsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mul_sh(__m128h __A, - __m128h __B) { - __A[0] *= __B[0]; - return __A; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_mul_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - __A = _mm_mul_sh(__A, __B); - return __builtin_ia32_selectsh_128(__U, __A, __W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_mul_sh(__mmask8 __U, - __m128h __A, - __m128h __B) { - __A = _mm_mul_sh(__A, __B); - return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph()); -} - -#define _mm_mul_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_mulsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_mul_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_mulsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_mul_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_mulsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_div_sh(__m128h __A, - __m128h __B) { - __A[0] /= __B[0]; - return __A; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_div_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - __A = _mm_div_sh(__A, __B); - return __builtin_ia32_selectsh_128(__U, __A, __W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_div_sh(__mmask8 __U, - __m128h __A, - __m128h __B) { - __A = _mm_div_sh(__A, __B); - return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph()); -} - -#define _mm_div_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_divsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_div_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_divsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_div_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_divsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_min_sh(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_minsh_round_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_min_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_minsh_round_mask((__v8hf)__A, (__v8hf)__B, - (__v8hf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_min_sh(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_minsh_round_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_min_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_minsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_min_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_minsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_min_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_minsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_max_sh(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_maxsh_round_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_max_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_maxsh_round_mask((__v8hf)__A, (__v8hf)__B, - (__v8hf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_max_sh(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_maxsh_round_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_max_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_maxsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_max_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_maxsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_max_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_maxsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_cmp_round_ph_mask(A, B, P, R) \ - ((__mmask32)__builtin_ia32_cmpph512_mask((__v32hf)(__m512h)(A), \ - (__v32hf)(__m512h)(B), (int)(P), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_mask_cmp_round_ph_mask(U, A, B, P, R) \ - ((__mmask32)__builtin_ia32_cmpph512_mask((__v32hf)(__m512h)(A), \ - (__v32hf)(__m512h)(B), (int)(P), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_cmp_ph_mask(A, B, P) \ - _mm512_cmp_round_ph_mask((A), (B), (P), _MM_FROUND_CUR_DIRECTION) - -#define _mm512_mask_cmp_ph_mask(U, A, B, P) \ - _mm512_mask_cmp_round_ph_mask((U), (A), (B), (P), _MM_FROUND_CUR_DIRECTION) - -#define _mm_cmp_round_sh_mask(X, Y, P, R) \ - ((__mmask8)__builtin_ia32_cmpsh_mask((__v8hf)(__m128h)(X), \ - (__v8hf)(__m128h)(Y), (int)(P), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_cmp_round_sh_mask(M, X, Y, P, R) \ - ((__mmask8)__builtin_ia32_cmpsh_mask((__v8hf)(__m128h)(X), \ - (__v8hf)(__m128h)(Y), (int)(P), \ - (__mmask8)(M), (int)(R))) - -#define _mm_cmp_sh_mask(X, Y, P) \ - ((__mmask8)__builtin_ia32_cmpsh_mask( \ - (__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), (int)(P), (__mmask8)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_cmp_sh_mask(M, X, Y, P) \ - ((__mmask8)__builtin_ia32_cmpsh_mask( \ - (__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), (int)(P), (__mmask8)(M), \ - _MM_FROUND_CUR_DIRECTION)) -// loads with vmovsh: -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_load_sh(void const *__dp) { - struct __mm_load_sh_struct { - _Float16 __u; - } __attribute__((__packed__, __may_alias__)); - _Float16 __u = ((const struct __mm_load_sh_struct *)__dp)->__u; - return (__m128h){__u, 0, 0, 0, 0, 0, 0, 0}; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_load_sh(__m128h __W, __mmask8 __U, const void *__A) { - __m128h src = (__v8hf)__builtin_shufflevector( - (__v8hf)__W, (__v8hf)_mm_setzero_ph(), 0, 8, 8, 8, 8, 8, 8, 8); - - return (__m128h)__builtin_ia32_loadsh128_mask((const __v8hf *)__A, src, __U & 1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_load_sh(__mmask8 __U, const void *__A) { - return (__m128h)__builtin_ia32_loadsh128_mask( - (const __v8hf *)__A, (__v8hf)_mm_setzero_ph(), __U & 1); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_load_ph(void const *__p) { - return *(const __m512h *)__p; -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_load_ph(void const *__p) { - return *(const __m256h *)__p; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_load_ph(void const *__p) { - return *(const __m128h *)__p; -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_loadu_ph(void const *__p) { - struct __loadu_ph { - __m512h_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_ph *)__p)->__v; -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_loadu_ph(void const *__p) { - struct __loadu_ph { - __m256h_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_ph *)__p)->__v; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_loadu_ph(void const *__p) { - struct __loadu_ph { - __m128h_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_ph *)__p)->__v; -} - -// stores with vmovsh: -static __inline__ void __DEFAULT_FN_ATTRS128 _mm_store_sh(void *__dp, - __m128h __a) { - struct __mm_store_sh_struct { - _Float16 __u; - } __attribute__((__packed__, __may_alias__)); - ((struct __mm_store_sh_struct *)__dp)->__u = __a[0]; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 _mm_mask_store_sh(void *__W, - __mmask8 __U, - __m128h __A) { - __builtin_ia32_storesh128_mask((__v8hf *)__W, __A, __U & 1); -} - -static __inline__ void __DEFAULT_FN_ATTRS512 _mm512_store_ph(void *__P, - __m512h __A) { - *(__m512h *)__P = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_store_ph(void *__P, - __m256h __A) { - *(__m256h *)__P = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 _mm_store_ph(void *__P, - __m128h __A) { - *(__m128h *)__P = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS512 _mm512_storeu_ph(void *__P, - __m512h __A) { - struct __storeu_ph { - __m512h_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_ph *)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_storeu_ph(void *__P, - __m256h __A) { - struct __storeu_ph { - __m256h_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_ph *)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 _mm_storeu_ph(void *__P, - __m128h __A) { - struct __storeu_ph { - __m128h_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_ph *)__P)->__v = __A; -} - -// moves with vmovsh: -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_move_sh(__m128h __a, - __m128h __b) { - __a[0] = __b[0]; - return __a; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_move_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return __builtin_ia32_selectsh_128(__U, _mm_move_sh(__A, __B), __W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_move_sh(__mmask8 __U, - __m128h __A, - __m128h __B) { - return __builtin_ia32_selectsh_128(__U, _mm_move_sh(__A, __B), - _mm_setzero_ph()); -} - -// vmovw: -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtsi16_si128(short __a) { - return (__m128i)(__v8hi){__a, 0, 0, 0, 0, 0, 0, 0}; -} - -static __inline__ short __DEFAULT_FN_ATTRS128 _mm_cvtsi128_si16(__m128i __a) { - __v8hi __b = (__v8hi)__a; - return __b[0]; -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_rcp_ph(__m512h __A) { - return (__m512h)__builtin_ia32_rcpph512_mask( - (__v32hf)__A, (__v32hf)_mm512_undefined_ph(), (__mmask32)-1); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_rcp_ph(__m512h __W, __mmask32 __U, __m512h __A) { - return (__m512h)__builtin_ia32_rcpph512_mask((__v32hf)__A, (__v32hf)__W, - (__mmask32)__U); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_rcp_ph(__mmask32 __U, __m512h __A) { - return (__m512h)__builtin_ia32_rcpph512_mask( - (__v32hf)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_rsqrt_ph(__m512h __A) { - return (__m512h)__builtin_ia32_rsqrtph512_mask( - (__v32hf)__A, (__v32hf)_mm512_undefined_ph(), (__mmask32)-1); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_rsqrt_ph(__m512h __W, __mmask32 __U, __m512h __A) { - return (__m512h)__builtin_ia32_rsqrtph512_mask((__v32hf)__A, (__v32hf)__W, - (__mmask32)__U); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_rsqrt_ph(__mmask32 __U, __m512h __A) { - return (__m512h)__builtin_ia32_rsqrtph512_mask( - (__v32hf)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U); -} - -#define _mm512_getmant_ph(A, B, C) \ - ((__m512h)__builtin_ia32_getmantph512_mask( \ - (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), \ - (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_getmant_ph(W, U, A, B, C) \ - ((__m512h)__builtin_ia32_getmantph512_mask( \ - (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), (__v32hf)(__m512h)(W), \ - (__mmask32)(U), _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_getmant_ph(U, A, B, C) \ - ((__m512h)__builtin_ia32_getmantph512_mask( \ - (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), \ - (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_getmant_round_ph(A, B, C, R) \ - ((__m512h)__builtin_ia32_getmantph512_mask( \ - (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), \ - (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, (int)(R))) - -#define _mm512_mask_getmant_round_ph(W, U, A, B, C, R) \ - ((__m512h)__builtin_ia32_getmantph512_mask( \ - (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), (__v32hf)(__m512h)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_getmant_round_ph(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_getmantph512_mask( \ - (__v32hf)(__m512h)(A), (int)(((C) << 2) | (B)), \ - (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_getexp_ph(__m512h __A) { - return (__m512h)__builtin_ia32_getexpph512_mask( - (__v32hf)__A, (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_getexp_ph(__m512h __W, __mmask32 __U, __m512h __A) { - return (__m512h)__builtin_ia32_getexpph512_mask( - (__v32hf)__A, (__v32hf)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_getexp_ph(__mmask32 __U, __m512h __A) { - return (__m512h)__builtin_ia32_getexpph512_mask( - (__v32hf)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_getexp_round_ph(A, R) \ - ((__m512h)__builtin_ia32_getexpph512_mask((__v32hf)(__m512h)(A), \ - (__v32hf)_mm512_undefined_ph(), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_mask_getexp_round_ph(W, U, A, R) \ - ((__m512h)__builtin_ia32_getexpph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(W), (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_getexp_round_ph(U, A, R) \ - ((__m512h)__builtin_ia32_getexpph512_mask((__v32hf)(__m512h)(A), \ - (__v32hf)_mm512_setzero_ph(), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_scalef_ph(__m512h __A, - __m512h __B) { - return (__m512h)__builtin_ia32_scalefph512_mask( - (__v32hf)__A, (__v32hf)__B, (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_scalef_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_scalefph512_mask((__v32hf)__A, (__v32hf)__B, - (__v32hf)__W, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_scalef_ph(__mmask32 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_scalefph512_mask( - (__v32hf)__A, (__v32hf)__B, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_scalef_round_ph(A, B, R) \ - ((__m512h)__builtin_ia32_scalefph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), \ - (__v32hf)_mm512_undefined_ph(), (__mmask32)-1, (int)(R))) - -#define _mm512_mask_scalef_round_ph(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_scalefph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_scalef_round_ph(U, A, B, R) \ - ((__m512h)__builtin_ia32_scalefph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), \ - (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), (int)(R))) - -#define _mm512_roundscale_ph(A, B) \ - ((__m512h)__builtin_ia32_rndscaleph_mask( \ - (__v32hf)(__m512h)(A), (int)(B), (__v32hf)(__m512h)(A), (__mmask32)-1, \ - _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_roundscale_ph(A, B, C, imm) \ - ((__m512h)__builtin_ia32_rndscaleph_mask( \ - (__v32hf)(__m512h)(C), (int)(imm), (__v32hf)(__m512h)(A), \ - (__mmask32)(B), _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_roundscale_ph(A, B, imm) \ - ((__m512h)__builtin_ia32_rndscaleph_mask( \ - (__v32hf)(__m512h)(B), (int)(imm), (__v32hf)_mm512_setzero_ph(), \ - (__mmask32)(A), _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_roundscale_round_ph(A, B, C, imm, R) \ - ((__m512h)__builtin_ia32_rndscaleph_mask((__v32hf)(__m512h)(C), (int)(imm), \ - (__v32hf)(__m512h)(A), \ - (__mmask32)(B), (int)(R))) - -#define _mm512_maskz_roundscale_round_ph(A, B, imm, R) \ - ((__m512h)__builtin_ia32_rndscaleph_mask((__v32hf)(__m512h)(B), (int)(imm), \ - (__v32hf)_mm512_setzero_ph(), \ - (__mmask32)(A), (int)(R))) - -#define _mm512_roundscale_round_ph(A, imm, R) \ - ((__m512h)__builtin_ia32_rndscaleph_mask((__v32hf)(__m512h)(A), (int)(imm), \ - (__v32hf)_mm512_undefined_ph(), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_reduce_ph(A, imm) \ - ((__m512h)__builtin_ia32_reduceph512_mask( \ - (__v32hf)(__m512h)(A), (int)(imm), (__v32hf)_mm512_undefined_ph(), \ - (__mmask32)-1, _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_reduce_ph(W, U, A, imm) \ - ((__m512h)__builtin_ia32_reduceph512_mask( \ - (__v32hf)(__m512h)(A), (int)(imm), (__v32hf)(__m512h)(W), \ - (__mmask32)(U), _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_maskz_reduce_ph(U, A, imm) \ - ((__m512h)__builtin_ia32_reduceph512_mask( \ - (__v32hf)(__m512h)(A), (int)(imm), (__v32hf)_mm512_setzero_ph(), \ - (__mmask32)(U), _MM_FROUND_CUR_DIRECTION)) - -#define _mm512_mask_reduce_round_ph(W, U, A, imm, R) \ - ((__m512h)__builtin_ia32_reduceph512_mask((__v32hf)(__m512h)(A), (int)(imm), \ - (__v32hf)(__m512h)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_reduce_round_ph(U, A, imm, R) \ - ((__m512h)__builtin_ia32_reduceph512_mask((__v32hf)(__m512h)(A), (int)(imm), \ - (__v32hf)_mm512_setzero_ph(), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_reduce_round_ph(A, imm, R) \ - ((__m512h)__builtin_ia32_reduceph512_mask((__v32hf)(__m512h)(A), (int)(imm), \ - (__v32hf)_mm512_undefined_ph(), \ - (__mmask32)-1, (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_rcp_sh(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_rcpsh_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_rcp_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_rcpsh_mask((__v8hf)__A, (__v8hf)__B, - (__v8hf)__W, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_rcp_sh(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_rcpsh_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_rsqrt_sh(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_rsqrtsh_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_rsqrt_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_rsqrtsh_mask((__v8hf)__A, (__v8hf)__B, - (__v8hf)__W, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_rsqrt_sh(__mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_rsqrtsh_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -#define _mm_getmant_round_sh(A, B, C, D, R) \ - ((__m128h)__builtin_ia32_getmantsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ - (__v8hf)_mm_setzero_ph(), (__mmask8)-1, (int)(R))) - -#define _mm_getmant_sh(A, B, C, D) \ - ((__m128h)__builtin_ia32_getmantsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ - (__v8hf)_mm_setzero_ph(), (__mmask8)-1, _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_getmant_sh(W, U, A, B, C, D) \ - ((__m128h)__builtin_ia32_getmantsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ - (__v8hf)(__m128h)(W), (__mmask8)(U), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_getmant_round_sh(W, U, A, B, C, D, R) \ - ((__m128h)__builtin_ia32_getmantsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ - (__v8hf)(__m128h)(W), (__mmask8)(U), (int)(R))) - -#define _mm_maskz_getmant_sh(U, A, B, C, D) \ - ((__m128h)__builtin_ia32_getmantsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ - (__v8hf)_mm_setzero_ph(), (__mmask8)(U), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_getmant_round_sh(U, A, B, C, D, R) \ - ((__m128h)__builtin_ia32_getmantsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (int)(((D) << 2) | (C)), \ - (__v8hf)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) - -#define _mm_getexp_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_getexpsh128_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_getexp_sh(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_getexpsh128_round_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_getexp_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_getexpsh128_round_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask_getexp_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_getexpsh128_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_getexp_sh(__mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_getexpsh128_round_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_getexp_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_getexpsh128_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -#define _mm_scalef_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_scalefsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_scalef_sh(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_scalefsh_round_mask( - (__v8hf)__A, (__v8hf)(__B), (__v8hf)_mm_setzero_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_scalef_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_scalefsh_round_mask((__v8hf)__A, (__v8hf)__B, - (__v8hf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask_scalef_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_scalefsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_scalef_sh(__mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_scalefsh_round_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_scalef_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_scalefsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -#define _mm_roundscale_round_sh(A, B, imm, R) \ - ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(imm), (int)(R))) - -#define _mm_roundscale_sh(A, B, imm) \ - ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(imm), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_roundscale_sh(W, U, A, B, I) \ - ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(I), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_roundscale_round_sh(W, U, A, B, I, R) \ - ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(I), (int)(R))) - -#define _mm_maskz_roundscale_sh(U, A, B, I) \ - ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(I), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_roundscale_round_sh(U, A, B, I, R) \ - ((__m128h)__builtin_ia32_rndscalesh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(I), (int)(R))) - -#define _mm_reduce_sh(A, B, C) \ - ((__m128h)__builtin_ia32_reducesh_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(C), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_mask_reduce_sh(W, U, A, B, C) \ - ((__m128h)__builtin_ia32_reducesh_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(C), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_maskz_reduce_sh(U, A, B, C) \ - ((__m128h)__builtin_ia32_reducesh_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(C), _MM_FROUND_CUR_DIRECTION)) - -#define _mm_reduce_round_sh(A, B, C, R) \ - ((__m128h)__builtin_ia32_reducesh_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(C), (int)(R))) - -#define _mm_mask_reduce_round_sh(W, U, A, B, C, R) \ - ((__m128h)__builtin_ia32_reducesh_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(C), (int)(R))) - -#define _mm_maskz_reduce_round_sh(U, A, B, C, R) \ - ((__m128h)__builtin_ia32_reducesh_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(C), (int)(R))) - -#define _mm512_sqrt_round_ph(A, R) \ - ((__m512h)__builtin_ia32_sqrtph512((__v32hf)(__m512h)(A), (int)(R))) - -#define _mm512_mask_sqrt_round_ph(W, U, A, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_sqrt_round_ph((A), (R)), \ - (__v32hf)(__m512h)(W))) - -#define _mm512_maskz_sqrt_round_ph(U, A, R) \ - ((__m512h)__builtin_ia32_selectph_512( \ - (__mmask32)(U), (__v32hf)_mm512_sqrt_round_ph((A), (R)), \ - (__v32hf)_mm512_setzero_ph())) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_sqrt_ph(__m512h __A) { - return (__m512h)__builtin_ia32_sqrtph512((__v32hf)__A, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_sqrt_ph(__m512h __W, __mmask32 __U, __m512h __A) { - return (__m512h)__builtin_ia32_selectph_512( - (__mmask32)(__U), - (__v32hf)__builtin_ia32_sqrtph512((__A), (_MM_FROUND_CUR_DIRECTION)), - (__v32hf)(__m512h)(__W)); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_sqrt_ph(__mmask32 __U, __m512h __A) { - return (__m512h)__builtin_ia32_selectph_512( - (__mmask32)(__U), - (__v32hf)__builtin_ia32_sqrtph512((__A), (_MM_FROUND_CUR_DIRECTION)), - (__v32hf)_mm512_setzero_ph()); -} - -#define _mm_sqrt_round_sh(A, B, R) \ - ((__m128h)__builtin_ia32_sqrtsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_sqrt_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_sqrtsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_sqrt_round_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_sqrtsh_round_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sqrt_sh(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_sqrtsh_round_mask( - (__v8hf)(__m128h)(__A), (__v8hf)(__m128h)(__B), (__v8hf)_mm_setzero_ph(), - (__mmask8)-1, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sqrt_sh(__m128h __W, - __mmask32 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_sqrtsh_round_mask( - (__v8hf)(__m128h)(__A), (__v8hf)(__m128h)(__B), (__v8hf)(__m128h)(__W), - (__mmask8)(__U), _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sqrt_sh(__mmask32 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_sqrtsh_round_mask( - (__v8hf)(__m128h)(__A), (__v8hf)(__m128h)(__B), (__v8hf)_mm_setzero_ph(), - (__mmask8)(__U), _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask_fpclass_ph_mask(U, A, imm) \ - ((__mmask32)__builtin_ia32_fpclassph512_mask((__v32hf)(__m512h)(A), \ - (int)(imm), (__mmask32)(U))) - -#define _mm512_fpclass_ph_mask(A, imm) \ - ((__mmask32)__builtin_ia32_fpclassph512_mask((__v32hf)(__m512h)(A), \ - (int)(imm), (__mmask32)-1)) - -#define _mm_fpclass_sh_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclasssh_mask((__v8hf)(__m128h)(A), (int)(imm), \ - (__mmask8)-1)) - -#define _mm_mask_fpclass_sh_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclasssh_mask((__v8hf)(__m128h)(A), (int)(imm), \ - (__mmask8)(U))) - -#define _mm512_cvt_roundpd_ph(A, R) \ - ((__m128h)__builtin_ia32_vcvtpd2ph512_mask( \ - (__v8df)(A), (__v8hf)_mm_undefined_ph(), (__mmask8)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundpd_ph(W, U, A, R) \ - ((__m128h)__builtin_ia32_vcvtpd2ph512_mask((__v8df)(A), (__v8hf)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundpd_ph(U, A, R) \ - ((__m128h)__builtin_ia32_vcvtpd2ph512_mask( \ - (__v8df)(A), (__v8hf)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 _mm512_cvtpd_ph(__m512d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph512_mask( - (__v8df)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtpd_ph(__m128h __W, __mmask8 __U, __m512d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph512_mask( - (__v8df)__A, (__v8hf)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtpd_ph(__mmask8 __U, __m512d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph512_mask( - (__v8df)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundph_pd(A, R) \ - ((__m512d)__builtin_ia32_vcvtph2pd512_mask( \ - (__v8hf)(A), (__v8df)_mm512_undefined_pd(), (__mmask8)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundph_pd(W, U, A, R) \ - ((__m512d)__builtin_ia32_vcvtph2pd512_mask((__v8hf)(A), (__v8df)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundph_pd(U, A, R) \ - ((__m512d)__builtin_ia32_vcvtph2pd512_mask( \ - (__v8hf)(A), (__v8df)_mm512_setzero_pd(), (__mmask8)(U), (int)(R))) - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 _mm512_cvtph_pd(__m128h __A) { - return (__m512d)__builtin_ia32_vcvtph2pd512_mask( - (__v8hf)__A, (__v8df)_mm512_setzero_pd(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtph_pd(__m512d __W, __mmask8 __U, __m128h __A) { - return (__m512d)__builtin_ia32_vcvtph2pd512_mask( - (__v8hf)__A, (__v8df)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512d __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtph_pd(__mmask8 __U, __m128h __A) { - return (__m512d)__builtin_ia32_vcvtph2pd512_mask( - (__v8hf)__A, (__v8df)_mm512_setzero_pd(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_cvt_roundsh_ss(A, B, R) \ - ((__m128)__builtin_ia32_vcvtsh2ss_round_mask((__v4sf)(A), (__v8hf)(B), \ - (__v4sf)_mm_undefined_ps(), \ - (__mmask8)(-1), (int)(R))) - -#define _mm_mask_cvt_roundsh_ss(W, U, A, B, R) \ - ((__m128)__builtin_ia32_vcvtsh2ss_round_mask( \ - (__v4sf)(A), (__v8hf)(B), (__v4sf)(W), (__mmask8)(U), (int)(R))) - -#define _mm_maskz_cvt_roundsh_ss(U, A, B, R) \ - ((__m128)__builtin_ia32_vcvtsh2ss_round_mask((__v4sf)(A), (__v8hf)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_cvtsh_ss(__m128 __A, - __m128h __B) { - return (__m128)__builtin_ia32_vcvtsh2ss_round_mask( - (__v4sf)__A, (__v8hf)__B, (__v4sf)_mm_undefined_ps(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_mask_cvtsh_ss(__m128 __W, - __mmask8 __U, - __m128 __A, - __m128h __B) { - return (__m128)__builtin_ia32_vcvtsh2ss_round_mask((__v4sf)__A, (__v8hf)__B, - (__v4sf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_maskz_cvtsh_ss(__mmask8 __U, - __m128 __A, - __m128h __B) { - return (__m128)__builtin_ia32_vcvtsh2ss_round_mask( - (__v4sf)__A, (__v8hf)__B, (__v4sf)_mm_setzero_ps(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_cvt_roundss_sh(A, B, R) \ - ((__m128h)__builtin_ia32_vcvtss2sh_round_mask((__v8hf)(A), (__v4sf)(B), \ - (__v8hf)_mm_undefined_ph(), \ - (__mmask8)(-1), (int)(R))) - -#define _mm_mask_cvt_roundss_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_vcvtss2sh_round_mask( \ - (__v8hf)(A), (__v4sf)(B), (__v8hf)(W), (__mmask8)(U), (int)(R))) - -#define _mm_maskz_cvt_roundss_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_vcvtss2sh_round_mask((__v8hf)(A), (__v4sf)(B), \ - (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtss_sh(__m128h __A, - __m128 __B) { - return (__m128h)__builtin_ia32_vcvtss2sh_round_mask( - (__v8hf)__A, (__v4sf)__B, (__v8hf)_mm_undefined_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_cvtss_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128 __B) { - return (__m128h)__builtin_ia32_vcvtss2sh_round_mask( - (__v8hf)__A, (__v4sf)__B, (__v8hf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_cvtss_sh(__mmask8 __U, - __m128h __A, - __m128 __B) { - return (__m128h)__builtin_ia32_vcvtss2sh_round_mask( - (__v8hf)__A, (__v4sf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_cvt_roundsd_sh(A, B, R) \ - ((__m128h)__builtin_ia32_vcvtsd2sh_round_mask((__v8hf)(A), (__v2df)(B), \ - (__v8hf)_mm_undefined_ph(), \ - (__mmask8)(-1), (int)(R))) - -#define _mm_mask_cvt_roundsd_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_vcvtsd2sh_round_mask( \ - (__v8hf)(A), (__v2df)(B), (__v8hf)(W), (__mmask8)(U), (int)(R))) - -#define _mm_maskz_cvt_roundsd_sh(U, A, B, R) \ - ((__m128h)__builtin_ia32_vcvtsd2sh_round_mask((__v8hf)(A), (__v2df)(B), \ - (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtsd_sh(__m128h __A, - __m128d __B) { - return (__m128h)__builtin_ia32_vcvtsd2sh_round_mask( - (__v8hf)__A, (__v2df)__B, (__v8hf)_mm_undefined_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_cvtsd_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128d __B) { - return (__m128h)__builtin_ia32_vcvtsd2sh_round_mask( - (__v8hf)__A, (__v2df)__B, (__v8hf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsd_sh(__mmask8 __U, __m128h __A, __m128d __B) { - return (__m128h)__builtin_ia32_vcvtsd2sh_round_mask( - (__v8hf)__A, (__v2df)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_cvt_roundsh_sd(A, B, R) \ - ((__m128d)__builtin_ia32_vcvtsh2sd_round_mask((__v2df)(A), (__v8hf)(B), \ - (__v2df)_mm_undefined_pd(), \ - (__mmask8)(-1), (int)(R))) - -#define _mm_mask_cvt_roundsh_sd(W, U, A, B, R) \ - ((__m128d)__builtin_ia32_vcvtsh2sd_round_mask( \ - (__v2df)(A), (__v8hf)(B), (__v2df)(W), (__mmask8)(U), (int)(R))) - -#define _mm_maskz_cvt_roundsh_sd(U, A, B, R) \ - ((__m128d)__builtin_ia32_vcvtsh2sd_round_mask((__v2df)(A), (__v8hf)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_cvtsh_sd(__m128d __A, - __m128h __B) { - return (__m128d)__builtin_ia32_vcvtsh2sd_round_mask( - (__v2df)__A, (__v8hf)__B, (__v2df)_mm_undefined_pd(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_mask_cvtsh_sd(__m128d __W, - __mmask8 __U, - __m128d __A, - __m128h __B) { - return (__m128d)__builtin_ia32_vcvtsh2sd_round_mask( - (__v2df)__A, (__v8hf)__B, (__v2df)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsh_sd(__mmask8 __U, __m128d __A, __m128h __B) { - return (__m128d)__builtin_ia32_vcvtsh2sd_round_mask( - (__v2df)__A, (__v8hf)__B, (__v2df)_mm_setzero_pd(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundph_epi16(A, R) \ - ((__m512i)__builtin_ia32_vcvtph2w512_mask((__v32hf)(A), \ - (__v32hi)_mm512_undefined_epi32(), \ - (__mmask32)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundph_epi16(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2w512_mask((__v32hf)(A), (__v32hi)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundph_epi16(U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2w512_mask((__v32hf)(A), \ - (__v32hi)_mm512_setzero_epi32(), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtph_epi16(__m512h __A) { - return (__m512i)__builtin_ia32_vcvtph2w512_mask( - (__v32hf)__A, (__v32hi)_mm512_setzero_epi32(), (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtph_epi16(__m512i __W, __mmask32 __U, __m512h __A) { - return (__m512i)__builtin_ia32_vcvtph2w512_mask( - (__v32hf)__A, (__v32hi)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtph_epi16(__mmask32 __U, __m512h __A) { - return (__m512i)__builtin_ia32_vcvtph2w512_mask( - (__v32hf)__A, (__v32hi)_mm512_setzero_epi32(), (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundph_epi16(A, R) \ - ((__m512i)__builtin_ia32_vcvttph2w512_mask( \ - (__v32hf)(A), (__v32hi)_mm512_undefined_epi32(), (__mmask32)(-1), \ - (int)(R))) - -#define _mm512_mask_cvtt_roundph_epi16(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2w512_mask((__v32hf)(A), (__v32hi)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundph_epi16(U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2w512_mask((__v32hf)(A), \ - (__v32hi)_mm512_setzero_epi32(), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttph_epi16(__m512h __A) { - return (__m512i)__builtin_ia32_vcvttph2w512_mask( - (__v32hf)__A, (__v32hi)_mm512_setzero_epi32(), (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttph_epi16(__m512i __W, __mmask32 __U, __m512h __A) { - return (__m512i)__builtin_ia32_vcvttph2w512_mask( - (__v32hf)__A, (__v32hi)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttph_epi16(__mmask32 __U, __m512h __A) { - return (__m512i)__builtin_ia32_vcvttph2w512_mask( - (__v32hf)__A, (__v32hi)_mm512_setzero_epi32(), (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepi16_ph(A, R) \ - ((__m512h)__builtin_ia32_vcvtw2ph512_mask((__v32hi)(A), \ - (__v32hf)_mm512_undefined_ph(), \ - (__mmask32)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundepi16_ph(W, U, A, R) \ - ((__m512h)__builtin_ia32_vcvtw2ph512_mask((__v32hi)(A), (__v32hf)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepi16_ph(U, A, R) \ - ((__m512h)__builtin_ia32_vcvtw2ph512_mask( \ - (__v32hi)(A), (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_cvtepi16_ph(__m512i __A) { - return (__m512h)__builtin_ia32_vcvtw2ph512_mask( - (__v32hi)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi16_ph(__m512h __W, __mmask32 __U, __m512i __A) { - return (__m512h)__builtin_ia32_vcvtw2ph512_mask( - (__v32hi)__A, (__v32hf)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi16_ph(__mmask32 __U, __m512i __A) { - return (__m512h)__builtin_ia32_vcvtw2ph512_mask( - (__v32hi)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundph_epu16(A, R) \ - ((__m512i)__builtin_ia32_vcvtph2uw512_mask( \ - (__v32hf)(A), (__v32hu)_mm512_undefined_epi32(), (__mmask32)(-1), \ - (int)(R))) - -#define _mm512_mask_cvt_roundph_epu16(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2uw512_mask((__v32hf)(A), (__v32hu)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundph_epu16(U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2uw512_mask((__v32hf)(A), \ - (__v32hu)_mm512_setzero_epi32(), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtph_epu16(__m512h __A) { - return (__m512i)__builtin_ia32_vcvtph2uw512_mask( - (__v32hf)__A, (__v32hu)_mm512_setzero_epi32(), (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtph_epu16(__m512i __W, __mmask32 __U, __m512h __A) { - return (__m512i)__builtin_ia32_vcvtph2uw512_mask( - (__v32hf)__A, (__v32hu)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtph_epu16(__mmask32 __U, __m512h __A) { - return (__m512i)__builtin_ia32_vcvtph2uw512_mask( - (__v32hf)__A, (__v32hu)_mm512_setzero_epi32(), (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundph_epu16(A, R) \ - ((__m512i)__builtin_ia32_vcvttph2uw512_mask( \ - (__v32hf)(A), (__v32hu)_mm512_undefined_epi32(), (__mmask32)(-1), \ - (int)(R))) - -#define _mm512_mask_cvtt_roundph_epu16(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2uw512_mask((__v32hf)(A), (__v32hu)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundph_epu16(U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2uw512_mask((__v32hf)(A), \ - (__v32hu)_mm512_setzero_epi32(), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttph_epu16(__m512h __A) { - return (__m512i)__builtin_ia32_vcvttph2uw512_mask( - (__v32hf)__A, (__v32hu)_mm512_setzero_epi32(), (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttph_epu16(__m512i __W, __mmask32 __U, __m512h __A) { - return (__m512i)__builtin_ia32_vcvttph2uw512_mask( - (__v32hf)__A, (__v32hu)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttph_epu16(__mmask32 __U, __m512h __A) { - return (__m512i)__builtin_ia32_vcvttph2uw512_mask( - (__v32hf)__A, (__v32hu)_mm512_setzero_epi32(), (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepu16_ph(A, R) \ - ((__m512h)__builtin_ia32_vcvtuw2ph512_mask((__v32hu)(A), \ - (__v32hf)_mm512_undefined_ph(), \ - (__mmask32)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundepu16_ph(W, U, A, R) \ - ((__m512h)__builtin_ia32_vcvtuw2ph512_mask((__v32hu)(A), (__v32hf)(W), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepu16_ph(U, A, R) \ - ((__m512h)__builtin_ia32_vcvtuw2ph512_mask( \ - (__v32hu)(A), (__v32hf)_mm512_setzero_ph(), (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_cvtepu16_ph(__m512i __A) { - return (__m512h)__builtin_ia32_vcvtuw2ph512_mask( - (__v32hu)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu16_ph(__m512h __W, __mmask32 __U, __m512i __A) { - return (__m512h)__builtin_ia32_vcvtuw2ph512_mask( - (__v32hu)__A, (__v32hf)__W, (__mmask32)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu16_ph(__mmask32 __U, __m512i __A) { - return (__m512h)__builtin_ia32_vcvtuw2ph512_mask( - (__v32hu)__A, (__v32hf)_mm512_setzero_ph(), (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundph_epi32(A, R) \ - ((__m512i)__builtin_ia32_vcvtph2dq512_mask( \ - (__v16hf)(A), (__v16si)_mm512_undefined_epi32(), (__mmask16)(-1), \ - (int)(R))) - -#define _mm512_mask_cvt_roundph_epi32(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2dq512_mask((__v16hf)(A), (__v16si)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundph_epi32(U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2dq512_mask((__v16hf)(A), \ - (__v16si)_mm512_setzero_epi32(), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtph_epi32(__m256h __A) { - return (__m512i)__builtin_ia32_vcvtph2dq512_mask( - (__v16hf)__A, (__v16si)_mm512_setzero_epi32(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtph_epi32(__m512i __W, __mmask16 __U, __m256h __A) { - return (__m512i)__builtin_ia32_vcvtph2dq512_mask( - (__v16hf)__A, (__v16si)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtph_epi32(__mmask16 __U, __m256h __A) { - return (__m512i)__builtin_ia32_vcvtph2dq512_mask( - (__v16hf)__A, (__v16si)_mm512_setzero_epi32(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundph_epu32(A, R) \ - ((__m512i)__builtin_ia32_vcvtph2udq512_mask( \ - (__v16hf)(A), (__v16su)_mm512_undefined_epi32(), (__mmask16)(-1), \ - (int)(R))) - -#define _mm512_mask_cvt_roundph_epu32(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2udq512_mask((__v16hf)(A), (__v16su)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundph_epu32(U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2udq512_mask((__v16hf)(A), \ - (__v16su)_mm512_setzero_epi32(), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtph_epu32(__m256h __A) { - return (__m512i)__builtin_ia32_vcvtph2udq512_mask( - (__v16hf)__A, (__v16su)_mm512_setzero_epi32(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtph_epu32(__m512i __W, __mmask16 __U, __m256h __A) { - return (__m512i)__builtin_ia32_vcvtph2udq512_mask( - (__v16hf)__A, (__v16su)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtph_epu32(__mmask16 __U, __m256h __A) { - return (__m512i)__builtin_ia32_vcvtph2udq512_mask( - (__v16hf)__A, (__v16su)_mm512_setzero_epi32(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepi32_ph(A, R) \ - ((__m256h)__builtin_ia32_vcvtdq2ph512_mask((__v16si)(A), \ - (__v16hf)_mm256_undefined_ph(), \ - (__mmask16)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundepi32_ph(W, U, A, R) \ - ((__m256h)__builtin_ia32_vcvtdq2ph512_mask((__v16si)(A), (__v16hf)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepi32_ph(U, A, R) \ - ((__m256h)__builtin_ia32_vcvtdq2ph512_mask( \ - (__v16si)(A), (__v16hf)_mm256_setzero_ph(), (__mmask16)(U), (int)(R))) - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_cvtepi32_ph(__m512i __A) { - return (__m256h)__builtin_ia32_vcvtdq2ph512_mask( - (__v16si)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi32_ph(__m256h __W, __mmask16 __U, __m512i __A) { - return (__m256h)__builtin_ia32_vcvtdq2ph512_mask( - (__v16si)__A, (__v16hf)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi32_ph(__mmask16 __U, __m512i __A) { - return (__m256h)__builtin_ia32_vcvtdq2ph512_mask( - (__v16si)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepu32_ph(A, R) \ - ((__m256h)__builtin_ia32_vcvtudq2ph512_mask((__v16su)(A), \ - (__v16hf)_mm256_undefined_ph(), \ - (__mmask16)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundepu32_ph(W, U, A, R) \ - ((__m256h)__builtin_ia32_vcvtudq2ph512_mask((__v16su)(A), (__v16hf)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepu32_ph(U, A, R) \ - ((__m256h)__builtin_ia32_vcvtudq2ph512_mask( \ - (__v16su)(A), (__v16hf)_mm256_setzero_ph(), (__mmask16)(U), (int)(R))) - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_cvtepu32_ph(__m512i __A) { - return (__m256h)__builtin_ia32_vcvtudq2ph512_mask( - (__v16su)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu32_ph(__m256h __W, __mmask16 __U, __m512i __A) { - return (__m256h)__builtin_ia32_vcvtudq2ph512_mask( - (__v16su)__A, (__v16hf)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu32_ph(__mmask16 __U, __m512i __A) { - return (__m256h)__builtin_ia32_vcvtudq2ph512_mask( - (__v16su)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundph_epi32(A, R) \ - ((__m512i)__builtin_ia32_vcvttph2dq512_mask( \ - (__v16hf)(A), (__v16si)_mm512_undefined_epi32(), (__mmask16)(-1), \ - (int)(R))) - -#define _mm512_mask_cvtt_roundph_epi32(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2dq512_mask((__v16hf)(A), (__v16si)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundph_epi32(U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2dq512_mask((__v16hf)(A), \ - (__v16si)_mm512_setzero_epi32(), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttph_epi32(__m256h __A) { - return (__m512i)__builtin_ia32_vcvttph2dq512_mask( - (__v16hf)__A, (__v16si)_mm512_setzero_epi32(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttph_epi32(__m512i __W, __mmask16 __U, __m256h __A) { - return (__m512i)__builtin_ia32_vcvttph2dq512_mask( - (__v16hf)__A, (__v16si)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttph_epi32(__mmask16 __U, __m256h __A) { - return (__m512i)__builtin_ia32_vcvttph2dq512_mask( - (__v16hf)__A, (__v16si)_mm512_setzero_epi32(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundph_epu32(A, R) \ - ((__m512i)__builtin_ia32_vcvttph2udq512_mask( \ - (__v16hf)(A), (__v16su)_mm512_undefined_epi32(), (__mmask16)(-1), \ - (int)(R))) - -#define _mm512_mask_cvtt_roundph_epu32(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2udq512_mask((__v16hf)(A), (__v16su)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundph_epu32(U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2udq512_mask( \ - (__v16hf)(A), (__v16su)_mm512_setzero_epi32(), (__mmask16)(U), \ - (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttph_epu32(__m256h __A) { - return (__m512i)__builtin_ia32_vcvttph2udq512_mask( - (__v16hf)__A, (__v16su)_mm512_setzero_epi32(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttph_epu32(__m512i __W, __mmask16 __U, __m256h __A) { - return (__m512i)__builtin_ia32_vcvttph2udq512_mask( - (__v16hf)__A, (__v16su)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttph_epu32(__mmask16 __U, __m256h __A) { - return (__m512i)__builtin_ia32_vcvttph2udq512_mask( - (__v16hf)__A, (__v16su)_mm512_setzero_epi32(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepi64_ph(A, R) \ - ((__m128h)__builtin_ia32_vcvtqq2ph512_mask( \ - (__v8di)(A), (__v8hf)_mm_undefined_ph(), (__mmask8)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundepi64_ph(W, U, A, R) \ - ((__m128h)__builtin_ia32_vcvtqq2ph512_mask((__v8di)(A), (__v8hf)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepi64_ph(U, A, R) \ - ((__m128h)__builtin_ia32_vcvtqq2ph512_mask( \ - (__v8di)(A), (__v8hf)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_cvtepi64_ph(__m512i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph512_mask( - (__v8di)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepi64_ph(__m128h __W, __mmask8 __U, __m512i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph512_mask( - (__v8di)__A, (__v8hf)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepi64_ph(__mmask8 __U, __m512i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph512_mask( - (__v8di)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundph_epi64(A, R) \ - ((__m512i)__builtin_ia32_vcvtph2qq512_mask((__v8hf)(A), \ - (__v8di)_mm512_undefined_epi32(), \ - (__mmask8)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundph_epi64(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2qq512_mask((__v8hf)(A), (__v8di)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundph_epi64(U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2qq512_mask( \ - (__v8hf)(A), (__v8di)_mm512_setzero_epi32(), (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtph_epi64(__m128h __A) { - return (__m512i)__builtin_ia32_vcvtph2qq512_mask( - (__v8hf)__A, (__v8di)_mm512_setzero_epi32(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtph_epi64(__m512i __W, __mmask8 __U, __m128h __A) { - return (__m512i)__builtin_ia32_vcvtph2qq512_mask( - (__v8hf)__A, (__v8di)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtph_epi64(__mmask8 __U, __m128h __A) { - return (__m512i)__builtin_ia32_vcvtph2qq512_mask( - (__v8hf)__A, (__v8di)_mm512_setzero_epi32(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundepu64_ph(A, R) \ - ((__m128h)__builtin_ia32_vcvtuqq2ph512_mask( \ - (__v8du)(A), (__v8hf)_mm_undefined_ph(), (__mmask8)(-1), (int)(R))) - -#define _mm512_mask_cvt_roundepu64_ph(W, U, A, R) \ - ((__m128h)__builtin_ia32_vcvtuqq2ph512_mask((__v8du)(A), (__v8hf)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundepu64_ph(U, A, R) \ - ((__m128h)__builtin_ia32_vcvtuqq2ph512_mask( \ - (__v8du)(A), (__v8hf)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_cvtepu64_ph(__m512i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph512_mask( - (__v8du)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtepu64_ph(__m128h __W, __mmask8 __U, __m512i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph512_mask( - (__v8du)__A, (__v8hf)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtepu64_ph(__mmask8 __U, __m512i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph512_mask( - (__v8du)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvt_roundph_epu64(A, R) \ - ((__m512i)__builtin_ia32_vcvtph2uqq512_mask( \ - (__v8hf)(A), (__v8du)_mm512_undefined_epi32(), (__mmask8)(-1), \ - (int)(R))) - -#define _mm512_mask_cvt_roundph_epu64(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2uqq512_mask((__v8hf)(A), (__v8du)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvt_roundph_epu64(U, A, R) \ - ((__m512i)__builtin_ia32_vcvtph2uqq512_mask( \ - (__v8hf)(A), (__v8du)_mm512_setzero_epi32(), (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvtph_epu64(__m128h __A) { - return (__m512i)__builtin_ia32_vcvtph2uqq512_mask( - (__v8hf)__A, (__v8du)_mm512_setzero_epi32(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtph_epu64(__m512i __W, __mmask8 __U, __m128h __A) { - return (__m512i)__builtin_ia32_vcvtph2uqq512_mask( - (__v8hf)__A, (__v8du)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtph_epu64(__mmask8 __U, __m128h __A) { - return (__m512i)__builtin_ia32_vcvtph2uqq512_mask( - (__v8hf)__A, (__v8du)_mm512_setzero_epi32(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundph_epi64(A, R) \ - ((__m512i)__builtin_ia32_vcvttph2qq512_mask( \ - (__v8hf)(A), (__v8di)_mm512_undefined_epi32(), (__mmask8)(-1), \ - (int)(R))) - -#define _mm512_mask_cvtt_roundph_epi64(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2qq512_mask((__v8hf)(A), (__v8di)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundph_epi64(U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2qq512_mask( \ - (__v8hf)(A), (__v8di)_mm512_setzero_epi32(), (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttph_epi64(__m128h __A) { - return (__m512i)__builtin_ia32_vcvttph2qq512_mask( - (__v8hf)__A, (__v8di)_mm512_setzero_epi32(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttph_epi64(__m512i __W, __mmask8 __U, __m128h __A) { - return (__m512i)__builtin_ia32_vcvttph2qq512_mask( - (__v8hf)__A, (__v8di)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttph_epi64(__mmask8 __U, __m128h __A) { - return (__m512i)__builtin_ia32_vcvttph2qq512_mask( - (__v8hf)__A, (__v8di)_mm512_setzero_epi32(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtt_roundph_epu64(A, R) \ - ((__m512i)__builtin_ia32_vcvttph2uqq512_mask( \ - (__v8hf)(A), (__v8du)_mm512_undefined_epi32(), (__mmask8)(-1), \ - (int)(R))) - -#define _mm512_mask_cvtt_roundph_epu64(W, U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2uqq512_mask((__v8hf)(A), (__v8du)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm512_maskz_cvtt_roundph_epu64(U, A, R) \ - ((__m512i)__builtin_ia32_vcvttph2uqq512_mask( \ - (__v8hf)(A), (__v8du)_mm512_setzero_epi32(), (__mmask8)(U), (int)(R))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_cvttph_epu64(__m128h __A) { - return (__m512i)__builtin_ia32_vcvttph2uqq512_mask( - (__v8hf)__A, (__v8du)_mm512_setzero_epi32(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_mask_cvttph_epu64(__m512i __W, __mmask8 __U, __m128h __A) { - return (__m512i)__builtin_ia32_vcvttph2uqq512_mask( - (__v8hf)__A, (__v8du)__W, (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvttph_epu64(__mmask8 __U, __m128h __A) { - return (__m512i)__builtin_ia32_vcvttph2uqq512_mask( - (__v8hf)__A, (__v8du)_mm512_setzero_epi32(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_cvt_roundsh_i32(A, R) \ - ((int)__builtin_ia32_vcvtsh2si32((__v8hf)(A), (int)(R))) - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_cvtsh_i32(__m128h __A) { - return (int)__builtin_ia32_vcvtsh2si32((__v8hf)__A, _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_cvt_roundsh_u32(A, R) \ - ((unsigned int)__builtin_ia32_vcvtsh2usi32((__v8hf)(A), (int)(R))) - -static __inline__ unsigned int __DEFAULT_FN_ATTRS128 -_mm_cvtsh_u32(__m128h __A) { - return (unsigned int)__builtin_ia32_vcvtsh2usi32((__v8hf)__A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvt_roundsh_i64(A, R) \ - ((long long)__builtin_ia32_vcvtsh2si64((__v8hf)(A), (int)(R))) - -static __inline__ long long __DEFAULT_FN_ATTRS128 _mm_cvtsh_i64(__m128h __A) { - return (long long)__builtin_ia32_vcvtsh2si64((__v8hf)__A, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_cvt_roundsh_u64(A, R) \ - ((unsigned long long)__builtin_ia32_vcvtsh2usi64((__v8hf)(A), (int)(R))) - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 -_mm_cvtsh_u64(__m128h __A) { - return (unsigned long long)__builtin_ia32_vcvtsh2usi64( - (__v8hf)__A, _MM_FROUND_CUR_DIRECTION); -} -#endif // __x86_64__ - -#define _mm_cvt_roundu32_sh(A, B, R) \ - ((__m128h)__builtin_ia32_vcvtusi2sh((__v8hf)(A), (unsigned int)(B), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_cvtu32_sh(__m128h __A, unsigned int __B) { - __A[0] = __B; - return __A; -} - -#ifdef __x86_64__ -#define _mm_cvt_roundu64_sh(A, B, R) \ - ((__m128h)__builtin_ia32_vcvtusi642sh((__v8hf)(A), (unsigned long long)(B), \ - (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_cvtu64_sh(__m128h __A, unsigned long long __B) { - __A[0] = __B; - return __A; -} -#endif - -#define _mm_cvt_roundi32_sh(A, B, R) \ - ((__m128h)__builtin_ia32_vcvtsi2sh((__v8hf)(A), (int)(B), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvti32_sh(__m128h __A, - int __B) { - __A[0] = __B; - return __A; -} - -#ifdef __x86_64__ -#define _mm_cvt_roundi64_sh(A, B, R) \ - ((__m128h)__builtin_ia32_vcvtsi642sh((__v8hf)(A), (long long)(B), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvti64_sh(__m128h __A, - long long __B) { - __A[0] = __B; - return __A; -} -#endif - -#define _mm_cvtt_roundsh_i32(A, R) \ - ((int)__builtin_ia32_vcvttsh2si32((__v8hf)(A), (int)(R))) - -static __inline__ int __DEFAULT_FN_ATTRS128 _mm_cvttsh_i32(__m128h __A) { - return (int)__builtin_ia32_vcvttsh2si32((__v8hf)__A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvtt_roundsh_i64(A, R) \ - ((long long)__builtin_ia32_vcvttsh2si64((__v8hf)(A), (int)(R))) - -static __inline__ long long __DEFAULT_FN_ATTRS128 _mm_cvttsh_i64(__m128h __A) { - return (long long)__builtin_ia32_vcvttsh2si64((__v8hf)__A, - _MM_FROUND_CUR_DIRECTION); -} -#endif - -#define _mm_cvtt_roundsh_u32(A, R) \ - ((unsigned int)__builtin_ia32_vcvttsh2usi32((__v8hf)(A), (int)(R))) - -static __inline__ unsigned int __DEFAULT_FN_ATTRS128 -_mm_cvttsh_u32(__m128h __A) { - return (unsigned int)__builtin_ia32_vcvttsh2usi32((__v8hf)__A, - _MM_FROUND_CUR_DIRECTION); -} - -#ifdef __x86_64__ -#define _mm_cvtt_roundsh_u64(A, R) \ - ((unsigned long long)__builtin_ia32_vcvttsh2usi64((__v8hf)(A), (int)(R))) - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS128 -_mm_cvttsh_u64(__m128h __A) { - return (unsigned long long)__builtin_ia32_vcvttsh2usi64( - (__v8hf)__A, _MM_FROUND_CUR_DIRECTION); -} -#endif - -#define _mm512_cvtx_roundph_ps(A, R) \ - ((__m512)__builtin_ia32_vcvtph2psx512_mask((__v16hf)(A), \ - (__v16sf)_mm512_undefined_ps(), \ - (__mmask16)(-1), (int)(R))) - -#define _mm512_mask_cvtx_roundph_ps(W, U, A, R) \ - ((__m512)__builtin_ia32_vcvtph2psx512_mask((__v16hf)(A), (__v16sf)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvtx_roundph_ps(U, A, R) \ - ((__m512)__builtin_ia32_vcvtph2psx512_mask( \ - (__v16hf)(A), (__v16sf)_mm512_setzero_ps(), (__mmask16)(U), (int)(R))) - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_cvtxph_ps(__m256h __A) { - return (__m512)__builtin_ia32_vcvtph2psx512_mask( - (__v16hf)__A, (__v16sf)_mm512_setzero_ps(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtxph_ps(__m512 __W, __mmask16 __U, __m256h __A) { - return (__m512)__builtin_ia32_vcvtph2psx512_mask( - (__v16hf)__A, (__v16sf)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512 __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtxph_ps(__mmask16 __U, __m256h __A) { - return (__m512)__builtin_ia32_vcvtph2psx512_mask( - (__v16hf)__A, (__v16sf)_mm512_setzero_ps(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_cvtx_roundps_ph(A, R) \ - ((__m256h)__builtin_ia32_vcvtps2phx512_mask((__v16sf)(A), \ - (__v16hf)_mm256_undefined_ph(), \ - (__mmask16)(-1), (int)(R))) - -#define _mm512_mask_cvtx_roundps_ph(W, U, A, R) \ - ((__m256h)__builtin_ia32_vcvtps2phx512_mask((__v16sf)(A), (__v16hf)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_cvtx_roundps_ph(U, A, R) \ - ((__m256h)__builtin_ia32_vcvtps2phx512_mask( \ - (__v16sf)(A), (__v16hf)_mm256_setzero_ph(), (__mmask16)(U), (int)(R))) - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 _mm512_cvtxps_ph(__m512 __A) { - return (__m256h)__builtin_ia32_vcvtps2phx512_mask( - (__v16sf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_mask_cvtxps_ph(__m256h __W, __mmask16 __U, __m512 __A) { - return (__m256h)__builtin_ia32_vcvtps2phx512_mask( - (__v16sf)__A, (__v16hf)__W, (__mmask16)__U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS512 -_mm512_maskz_cvtxps_ph(__mmask16 __U, __m512 __A) { - return (__m256h)__builtin_ia32_vcvtps2phx512_mask( - (__v16sf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fmadd_round_ph(A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_mask_fmadd_round_ph(A, U, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_mask3_fmadd_round_ph(A, B, C, U, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask3( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_fmadd_round_ph(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_maskz( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_fmsub_round_ph(A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_mask_fmsub_round_ph(A, U, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_fmsub_round_ph(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_maskz( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_fnmadd_round_ph(A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask( \ - (__v32hf)(__m512h)(A), -(__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_mask3_fnmadd_round_ph(A, B, C, U, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask3( \ - -(__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_fnmadd_round_ph(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_maskz( \ - -(__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_fnmsub_round_ph(A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask( \ - (__v32hf)(__m512h)(A), -(__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_maskz_fnmsub_round_ph(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_maskz( \ - -(__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fmadd_ph(__m512h __A, - __m512h __B, - __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, (__v32hf)__B, - (__v32hf)__C, (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fmadd_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, (__v32hf)__B, - (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmadd_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { - return (__m512h)__builtin_ia32_vfmaddph512_mask3((__v32hf)__A, (__v32hf)__B, - (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmadd_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_maskz((__v32hf)__A, (__v32hf)__B, - (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fmsub_ph(__m512h __A, - __m512h __B, - __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, (__v32hf)__B, - -(__v32hf)__C, (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fmsub_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, (__v32hf)__B, - -(__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmsub_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_maskz( - (__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fnmadd_ph(__m512h __A, - __m512h __B, - __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, -(__v32hf)__B, - (__v32hf)__C, (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask3_fnmadd_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { - return (__m512h)__builtin_ia32_vfmaddph512_mask3(-(__v32hf)__A, (__v32hf)__B, - (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fnmadd_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_maskz(-(__v32hf)__A, (__v32hf)__B, - (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fnmsub_ph(__m512h __A, - __m512h __B, - __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, -(__v32hf)__B, - -(__v32hf)__C, (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fnmsub_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_maskz( - -(__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fmaddsub_round_ph(A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddsubph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_mask_fmaddsub_round_ph(A, U, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddsubph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_mask3_fmaddsub_round_ph(A, B, C, U, R) \ - ((__m512h)__builtin_ia32_vfmaddsubph512_mask3( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_fmaddsub_round_ph(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddsubph512_maskz( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_fmsubadd_round_ph(A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddsubph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)-1, (int)(R))) - -#define _mm512_mask_fmsubadd_round_ph(A, U, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddsubph512_mask( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_maskz_fmsubadd_round_ph(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddsubph512_maskz( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_fmaddsub_ph(__m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddsubph512_mask( - (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fmaddsub_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddsubph512_mask( - (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmaddsub_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { - return (__m512h)__builtin_ia32_vfmaddsubph512_mask3( - (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmaddsub_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddsubph512_maskz( - (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_fmsubadd_ph(__m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddsubph512_mask( - (__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fmsubadd_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddsubph512_mask( - (__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmsubadd_ph(__mmask32 __U, __m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddsubph512_maskz( - (__v32hf)__A, (__v32hf)__B, -(__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask3_fmsub_round_ph(A, B, C, U, R) \ - ((__m512h)__builtin_ia32_vfmsubph512_mask3( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmsub_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { - return (__m512h)__builtin_ia32_vfmsubph512_mask3((__v32hf)__A, (__v32hf)__B, - (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask3_fmsubadd_round_ph(A, B, C, U, R) \ - ((__m512h)__builtin_ia32_vfmsubaddph512_mask3( \ - (__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmsubadd_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { - return (__m512h)__builtin_ia32_vfmsubaddph512_mask3( - (__v32hf)__A, (__v32hf)__B, (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask_fnmadd_round_ph(A, U, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask( \ - (__v32hf)(__m512h)(A), -(__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fnmadd_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, -(__v32hf)__B, - (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_mask_fnmsub_round_ph(A, U, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddph512_mask( \ - (__v32hf)(__m512h)(A), -(__v32hf)(__m512h)(B), -(__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -#define _mm512_mask3_fnmsub_round_ph(A, B, C, U, R) \ - ((__m512h)__builtin_ia32_vfmsubph512_mask3( \ - -(__v32hf)(__m512h)(A), (__v32hf)(__m512h)(B), (__v32hf)(__m512h)(C), \ - (__mmask32)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fnmsub_ph(__m512h __A, __mmask32 __U, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddph512_mask((__v32hf)__A, -(__v32hf)__B, - -(__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask3_fnmsub_ph(__m512h __A, __m512h __B, __m512h __C, __mmask32 __U) { - return (__m512h)__builtin_ia32_vfmsubph512_mask3(-(__v32hf)__A, (__v32hf)__B, - (__v32hf)__C, (__mmask32)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmadd_sh(__m128h __W, - __m128h __A, - __m128h __B) { - return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, (__v8hf)__A, (__v8hf)__B, - (__mmask8)-1, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmadd_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, (__v8hf)__A, (__v8hf)__B, - (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fmadd_round_sh(A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(C), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_fmadd_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ - (__v8hf)(__m128h)(W), (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmadd_sh(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return __builtin_ia32_vfmaddsh3_maskz((__v8hf)__A, (__v8hf)__B, (__v8hf)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fmadd_round_sh(U, A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_maskz( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fmadd_sh(__m128h __W, __m128h __X, __m128h __Y, __mmask8 __U) { - return __builtin_ia32_vfmaddsh3_mask3((__v8hf)__W, (__v8hf)__X, (__v8hf)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fmadd_round_sh(W, X, Y, U, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask3( \ - (__v8hf)(__m128h)(W), (__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmsub_sh(__m128h __W, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_vfmaddsh3_mask((__v8hf)__W, (__v8hf)__A, - -(__v8hf)__B, (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmsub_sh(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_vfmaddsh3_mask((__v8hf)__W, (__v8hf)__A, - -(__v8hf)__B, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fmsub_round_sh(A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), -(__v8hf)(__m128h)(C), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_fmsub_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ - (__v8hf)(__m128h)(W), (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsub_sh(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddsh3_maskz((__v8hf)__A, (__v8hf)__B, - -(__v8hf)__C, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fmsub_round_sh(U, A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_maskz( \ - (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), -(__v8hf)(__m128h)(C), \ - (__mmask8)(U), (int)R)) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsub_sh(__m128h __W, __m128h __X, __m128h __Y, __mmask8 __U) { - return __builtin_ia32_vfmsubsh3_mask3((__v8hf)__W, (__v8hf)__X, (__v8hf)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fmsub_round_sh(W, X, Y, U, R) \ - ((__m128h)__builtin_ia32_vfmsubsh3_mask3( \ - (__v8hf)(__m128h)(W), (__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fnmadd_sh(__m128h __W, - __m128h __A, - __m128h __B) { - return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, -(__v8hf)__A, (__v8hf)__B, - (__mmask8)-1, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fnmadd_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { - return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, -(__v8hf)__A, (__v8hf)__B, - (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fnmadd_round_sh(A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ - (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), (__v8hf)(__m128h)(C), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_fnmadd_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ - (__v8hf)(__m128h)(W), -(__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmadd_sh(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return __builtin_ia32_vfmaddsh3_maskz((__v8hf)__A, -(__v8hf)__B, (__v8hf)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fnmadd_round_sh(U, A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_maskz( \ - (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), (__v8hf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmadd_sh(__m128h __W, __m128h __X, __m128h __Y, __mmask8 __U) { - return __builtin_ia32_vfmaddsh3_mask3((__v8hf)__W, -(__v8hf)__X, (__v8hf)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fnmadd_round_sh(W, X, Y, U, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask3( \ - (__v8hf)(__m128h)(W), -(__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fnmsub_sh(__m128h __W, - __m128h __A, - __m128h __B) { - return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, -(__v8hf)__A, -(__v8hf)__B, - (__mmask8)-1, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fnmsub_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { - return __builtin_ia32_vfmaddsh3_mask((__v8hf)__W, -(__v8hf)__A, -(__v8hf)__B, - (__mmask8)__U, _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fnmsub_round_sh(A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ - (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), -(__v8hf)(__m128h)(C), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_fnmsub_round_sh(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_mask( \ - (__v8hf)(__m128h)(W), -(__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmsub_sh(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return __builtin_ia32_vfmaddsh3_maskz((__v8hf)__A, -(__v8hf)__B, -(__v8hf)__C, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_maskz_fnmsub_round_sh(U, A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddsh3_maskz( \ - (__v8hf)(__m128h)(A), -(__v8hf)(__m128h)(B), -(__v8hf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmsub_sh(__m128h __W, __m128h __X, __m128h __Y, __mmask8 __U) { - return __builtin_ia32_vfmsubsh3_mask3((__v8hf)__W, -(__v8hf)__X, (__v8hf)__Y, - (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_mask3_fnmsub_round_sh(W, X, Y, U, R) \ - ((__m128h)__builtin_ia32_vfmsubsh3_mask3( \ - (__v8hf)(__m128h)(W), -(__v8hf)(__m128h)(X), (__v8hf)(__m128h)(Y), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fcmadd_sch(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfcmaddcsh_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fcmadd_sch(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_vfcmaddcsh_round_mask( - (__v4sf)__A, (__v4sf)(__B), (__v4sf)(__C), __U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fcmadd_sch(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_vfcmaddcsh_maskz((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fcmadd_sch(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_vfcmaddcsh_round_mask3( - (__v4sf)__A, (__v4sf)__B, (__v4sf)__C, __U, _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fcmadd_round_sch(A, B, C, R) \ - ((__m128h)__builtin_ia32_vfcmaddcsh_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_fcmadd_round_sch(A, U, B, C, R) \ - ((__m128h)__builtin_ia32_vfcmaddcsh_round_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_fcmadd_round_sch(U, A, B, C, R) \ - ((__m128h)__builtin_ia32_vfcmaddcsh_maskz( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -#define _mm_mask3_fcmadd_round_sch(A, B, C, U, R) \ - ((__m128h)__builtin_ia32_vfcmaddcsh_round_mask3( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmadd_sch(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddcsh_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fmadd_sch(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddcsh_round_mask( - (__v4sf)__A, (__v4sf)(__B), (__v4sf)(__C), __U, _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmadd_sch(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddcsh_maskz((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fmadd_sch(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_vfmaddcsh_round_mask3( - (__v4sf)__A, (__v4sf)__B, (__v4sf)__C, __U, _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fmadd_round_sch(A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddcsh_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ - (__mmask8)-1, (int)(R))) - -#define _mm_mask_fmadd_round_sch(A, U, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddcsh_round_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_fmadd_round_sch(U, A, B, C, R) \ - ((__m128h)__builtin_ia32_vfmaddcsh_maskz( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -#define _mm_mask3_fmadd_round_sch(A, B, C, U, R) \ - ((__m128h)__builtin_ia32_vfmaddcsh_round_mask3( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(C), \ - (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fcmul_sch(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_vfcmulcsh_mask( - (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_undefined_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fcmul_sch(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_vfcmulcsh_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fcmul_sch(__mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_vfcmulcsh_mask( - (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fcmul_round_sch(A, B, R) \ - ((__m128h)__builtin_ia32_vfcmulcsh_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), \ - (__v4sf)(__m128h)_mm_undefined_ph(), (__mmask8)-1, (int)(R))) - -#define _mm_mask_fcmul_round_sch(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_vfcmulcsh_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_fcmul_round_sch(U, A, B, R) \ - ((__m128h)__builtin_ia32_vfcmulcsh_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), \ - (__v4sf)(__m128h)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmul_sch(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_vfmulcsh_mask( - (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_undefined_ph(), (__mmask8)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmul_sch(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_vfmulcsh_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__W, (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmul_sch(__mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_vfmulcsh_mask( - (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_setzero_ph(), (__mmask8)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm_fmul_round_sch(A, B, R) \ - ((__m128h)__builtin_ia32_vfmulcsh_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), \ - (__v4sf)(__m128h)_mm_undefined_ph(), (__mmask8)-1, (int)(R))) - -#define _mm_mask_fmul_round_sch(W, U, A, B, R) \ - ((__m128h)__builtin_ia32_vfmulcsh_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), (__v4sf)(__m128h)(W), \ - (__mmask8)(U), (int)(R))) - -#define _mm_maskz_fmul_round_sch(U, A, B, R) \ - ((__m128h)__builtin_ia32_vfmulcsh_mask( \ - (__v4sf)(__m128h)(A), (__v4sf)(__m128h)(B), \ - (__v4sf)(__m128h)_mm_setzero_ph(), (__mmask8)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fcmul_pch(__m512h __A, - __m512h __B) { - return (__m512h)__builtin_ia32_vfcmulcph512_mask( - (__v16sf)__A, (__v16sf)__B, (__v16sf)_mm512_undefined_ph(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fcmul_pch(__m512h __W, __mmask16 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_vfcmulcph512_mask((__v16sf)__A, (__v16sf)__B, - (__v16sf)__W, (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fcmul_pch(__mmask16 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_vfcmulcph512_mask( - (__v16sf)__A, (__v16sf)__B, (__v16sf)_mm512_setzero_ph(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fcmul_round_pch(A, B, R) \ - ((__m512h)__builtin_ia32_vfcmulcph512_mask( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), \ - (__v16sf)(__m512h)_mm512_undefined_ph(), (__mmask16)-1, (int)(R))) - -#define _mm512_mask_fcmul_round_pch(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_vfcmulcph512_mask( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_fcmul_round_pch(U, A, B, R) \ - ((__m512h)__builtin_ia32_vfcmulcph512_mask( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), \ - (__v16sf)(__m512h)_mm512_setzero_ph(), (__mmask16)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fmul_pch(__m512h __A, - __m512h __B) { - return (__m512h)__builtin_ia32_vfmulcph512_mask( - (__v16sf)__A, (__v16sf)__B, (__v16sf)_mm512_undefined_ph(), (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fmul_pch(__m512h __W, __mmask16 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_vfmulcph512_mask((__v16sf)__A, (__v16sf)__B, - (__v16sf)__W, (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmul_pch(__mmask16 __U, __m512h __A, __m512h __B) { - return (__m512h)__builtin_ia32_vfmulcph512_mask( - (__v16sf)__A, (__v16sf)__B, (__v16sf)_mm512_setzero_ph(), (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fmul_round_pch(A, B, R) \ - ((__m512h)__builtin_ia32_vfmulcph512_mask( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), \ - (__v16sf)(__m512h)_mm512_undefined_ph(), (__mmask16)-1, (int)(R))) - -#define _mm512_mask_fmul_round_pch(W, U, A, B, R) \ - ((__m512h)__builtin_ia32_vfmulcph512_mask( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(W), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_fmul_round_pch(U, A, B, R) \ - ((__m512h)__builtin_ia32_vfmulcph512_mask( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), \ - (__v16sf)(__m512h)_mm512_setzero_ph(), (__mmask16)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fcmadd_pch(__m512h __A, - __m512h __B, - __m512h __C) { - return (__m512h)__builtin_ia32_vfcmaddcph512_mask3( - (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fcmadd_pch(__m512h __A, __mmask16 __U, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfcmaddcph512_mask( - (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask3_fcmadd_pch(__m512h __A, __m512h __B, __m512h __C, __mmask16 __U) { - return (__m512h)__builtin_ia32_vfcmaddcph512_mask3( - (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fcmadd_pch(__mmask16 __U, __m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfcmaddcph512_maskz( - (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fcmadd_round_pch(A, B, C, R) \ - ((__m512h)__builtin_ia32_vfcmaddcph512_mask3( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_fcmadd_round_pch(A, U, B, C, R) \ - ((__m512h)__builtin_ia32_vfcmaddcph512_mask( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_mask3_fcmadd_round_pch(A, B, C, U, R) \ - ((__m512h)__builtin_ia32_vfcmaddcph512_mask3( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_fcmadd_round_pch(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_vfcmaddcph512_maskz( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ - (__mmask16)(U), (int)(R))) - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_fmadd_pch(__m512h __A, - __m512h __B, - __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddcph512_mask3((__v16sf)__A, (__v16sf)__B, - (__v16sf)__C, (__mmask16)-1, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_fmadd_pch(__m512h __A, __mmask16 __U, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddcph512_mask((__v16sf)__A, (__v16sf)__B, - (__v16sf)__C, (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask3_fmadd_pch(__m512h __A, __m512h __B, __m512h __C, __mmask16 __U) { - return (__m512h)__builtin_ia32_vfmaddcph512_mask3( - (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_maskz_fmadd_pch(__mmask16 __U, __m512h __A, __m512h __B, __m512h __C) { - return (__m512h)__builtin_ia32_vfmaddcph512_maskz( - (__v16sf)__A, (__v16sf)__B, (__v16sf)__C, (__mmask16)__U, - _MM_FROUND_CUR_DIRECTION); -} - -#define _mm512_fmadd_round_pch(A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddcph512_mask3( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ - (__mmask16)-1, (int)(R))) - -#define _mm512_mask_fmadd_round_pch(A, U, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddcph512_mask( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_mask3_fmadd_round_pch(A, B, C, U, R) \ - ((__m512h)__builtin_ia32_vfmaddcph512_mask3( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ - (__mmask16)(U), (int)(R))) - -#define _mm512_maskz_fmadd_round_pch(U, A, B, C, R) \ - ((__m512h)__builtin_ia32_vfmaddcph512_maskz( \ - (__v16sf)(__m512h)(A), (__v16sf)(__m512h)(B), (__v16sf)(__m512h)(C), \ - (__mmask16)(U), (int)(R))) - -static __inline__ _Float16 __DEFAULT_FN_ATTRS512 -_mm512_reduce_add_ph(__m512h __W) { - return __builtin_ia32_reduce_fadd_ph512(-0.0f16, __W); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS512 -_mm512_reduce_mul_ph(__m512h __W) { - return __builtin_ia32_reduce_fmul_ph512(1.0f16, __W); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS512 -_mm512_reduce_max_ph(__m512h __V) { - return __builtin_ia32_reduce_fmax_ph512(__V); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS512 -_mm512_reduce_min_ph(__m512h __V) { - return __builtin_ia32_reduce_fmin_ph512(__V); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_mask_blend_ph(__mmask32 __U, __m512h __A, __m512h __W) { - return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, (__v32hf)__W, - (__v32hf)__A); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_permutex2var_ph(__m512h __A, __m512i __I, __m512h __B) { - return (__m512h)__builtin_ia32_vpermi2varhi512((__v32hi)__A, (__v32hi)__I, - (__v32hi)__B); -} - -static __inline__ __m512h __DEFAULT_FN_ATTRS512 -_mm512_permutexvar_ph(__m512i __A, __m512h __B) { - return (__m512h)__builtin_ia32_permvarhi512((__v32hi)__B, (__v32hi)__A); -} - -// intrinsics below are alias for f*mul_*ch -#define _mm512_mul_pch(A, B) _mm512_fmul_pch(A, B) -#define _mm512_mask_mul_pch(W, U, A, B) _mm512_mask_fmul_pch(W, U, A, B) -#define _mm512_maskz_mul_pch(U, A, B) _mm512_maskz_fmul_pch(U, A, B) -#define _mm512_mul_round_pch(A, B, R) _mm512_fmul_round_pch(A, B, R) -#define _mm512_mask_mul_round_pch(W, U, A, B, R) \ - _mm512_mask_fmul_round_pch(W, U, A, B, R) -#define _mm512_maskz_mul_round_pch(U, A, B, R) \ - _mm512_maskz_fmul_round_pch(U, A, B, R) - -#define _mm512_cmul_pch(A, B) _mm512_fcmul_pch(A, B) -#define _mm512_mask_cmul_pch(W, U, A, B) _mm512_mask_fcmul_pch(W, U, A, B) -#define _mm512_maskz_cmul_pch(U, A, B) _mm512_maskz_fcmul_pch(U, A, B) -#define _mm512_cmul_round_pch(A, B, R) _mm512_fcmul_round_pch(A, B, R) -#define _mm512_mask_cmul_round_pch(W, U, A, B, R) \ - _mm512_mask_fcmul_round_pch(W, U, A, B, R) -#define _mm512_maskz_cmul_round_pch(U, A, B, R) \ - _mm512_maskz_fcmul_round_pch(U, A, B, R) - -#define _mm_mul_sch(A, B) _mm_fmul_sch(A, B) -#define _mm_mask_mul_sch(W, U, A, B) _mm_mask_fmul_sch(W, U, A, B) -#define _mm_maskz_mul_sch(U, A, B) _mm_maskz_fmul_sch(U, A, B) -#define _mm_mul_round_sch(A, B, R) _mm_fmul_round_sch(A, B, R) -#define _mm_mask_mul_round_sch(W, U, A, B, R) \ - _mm_mask_fmul_round_sch(W, U, A, B, R) -#define _mm_maskz_mul_round_sch(U, A, B, R) _mm_maskz_fmul_round_sch(U, A, B, R) - -#define _mm_cmul_sch(A, B) _mm_fcmul_sch(A, B) -#define _mm_mask_cmul_sch(W, U, A, B) _mm_mask_fcmul_sch(W, U, A, B) -#define _mm_maskz_cmul_sch(U, A, B) _mm_maskz_fcmul_sch(U, A, B) -#define _mm_cmul_round_sch(A, B, R) _mm_fcmul_round_sch(A, B, R) -#define _mm_mask_cmul_round_sch(W, U, A, B, R) \ - _mm_mask_fcmul_round_sch(W, U, A, B, R) -#define _mm_maskz_cmul_round_sch(U, A, B, R) \ - _mm_maskz_fcmul_round_sch(U, A, B, R) - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 -#undef __DEFAULT_FN_ATTRS512 - -#endif -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512fp16intrin.h.blob deleted file mode 100644 index 50dd7f508178acd530a9d7d7d1970eecf305aa35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 241400 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h deleted file mode 100644 index 5f7da52f..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h +++ /dev/null @@ -1,68 +0,0 @@ -/*===------------- avx512ifmaintrin.h - IFMA intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512ifmaintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __IFMAINTRIN_H -#define __IFMAINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma"), __min_vector_width__(512))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_madd52hi_epu64 (__m512i __X, __m512i __Y, __m512i __Z) -{ - return (__m512i)__builtin_ia32_vpmadd52huq512((__v8di) __X, (__v8di) __Y, - (__v8di) __Z); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_madd52hi_epu64 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512(__M, - (__v8di)_mm512_madd52hi_epu64(__W, __X, __Y), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_madd52hi_epu64 (__mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z) -{ - return (__m512i)__builtin_ia32_selectq_512(__M, - (__v8di)_mm512_madd52hi_epu64(__X, __Y, __Z), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_madd52lo_epu64 (__m512i __X, __m512i __Y, __m512i __Z) -{ - return (__m512i)__builtin_ia32_vpmadd52luq512((__v8di) __X, (__v8di) __Y, - (__v8di) __Z); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_madd52lo_epu64 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectq_512(__M, - (__v8di)_mm512_madd52lo_epu64(__W, __X, __Y), - (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_madd52lo_epu64 (__mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z) -{ - return (__m512i)__builtin_ia32_selectq_512(__M, - (__v8di)_mm512_madd52lo_epu64(__X, __Y, __Z), - (__v8di)_mm512_setzero_si512()); -} - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmaintrin.h.blob deleted file mode 100644 index d256010bf518d77180fabff7f5fd062dcb53d835..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15666 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h deleted file mode 100644 index 3284ee18..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h +++ /dev/null @@ -1,105 +0,0 @@ -/*===------------- avx512ifmavlintrin.h - IFMA intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512ifmavlintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __IFMAVLINTRIN_H -#define __IFMAVLINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma,avx512vl"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma,avx512vl"), __min_vector_width__(256))) - -#define _mm_madd52hi_epu64(X, Y, Z) \ - ((__m128i)__builtin_ia32_vpmadd52huq128((__v2di)(X), (__v2di)(Y), \ - (__v2di)(Z))) - -#define _mm256_madd52hi_epu64(X, Y, Z) \ - ((__m256i)__builtin_ia32_vpmadd52huq256((__v4di)(X), (__v4di)(Y), \ - (__v4di)(Z))) - -#define _mm_madd52lo_epu64(X, Y, Z) \ - ((__m128i)__builtin_ia32_vpmadd52luq128((__v2di)(X), (__v2di)(Y), \ - (__v2di)(Z))) - -#define _mm256_madd52lo_epu64(X, Y, Z) \ - ((__m256i)__builtin_ia32_vpmadd52luq256((__v4di)(X), (__v4di)(Y), \ - (__v4di)(Z))) - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_madd52hi_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128(__M, - (__v2di)_mm_madd52hi_epu64(__W, __X, __Y), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_madd52hi_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z) -{ - return (__m128i)__builtin_ia32_selectq_128(__M, - (__v2di)_mm_madd52hi_epu64(__X, __Y, __Z), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_madd52hi_epu64 (__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256(__M, - (__v4di)_mm256_madd52hi_epu64(__W, __X, __Y), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_madd52hi_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z) -{ - return (__m256i)__builtin_ia32_selectq_256(__M, - (__v4di)_mm256_madd52hi_epu64(__X, __Y, __Z), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_madd52lo_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128(__M, - (__v2di)_mm_madd52lo_epu64(__W, __X, __Y), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_madd52lo_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z) -{ - return (__m128i)__builtin_ia32_selectq_128(__M, - (__v2di)_mm_madd52lo_epu64(__X, __Y, __Z), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_madd52lo_epu64 (__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256(__M, - (__v4di)_mm256_madd52lo_epu64(__W, __X, __Y), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_madd52lo_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z) -{ - return (__m256i)__builtin_ia32_selectq_256(__M, - (__v4di)_mm256_madd52lo_epu64(__X, __Y, __Z), - (__v4di)_mm256_setzero_si256()); -} - - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512ifmavlintrin.h.blob deleted file mode 100644 index 75960fe35060975ce14f92c6062c9362792c5219..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18786 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h deleted file mode 100644 index b8bcf49c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h +++ /dev/null @@ -1,97 +0,0 @@ -/*===------------- avx512pfintrin.h - PF intrinsics ------------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512pfintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512PFINTRIN_H -#define __AVX512PFINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512pf"))) - -#define _mm512_mask_prefetch_i32gather_pd(index, mask, addr, scale, hint) \ - __builtin_ia32_gatherpfdpd((__mmask8)(mask), (__v8si)(__m256i)(index), \ - (void const *)(addr), (int)(scale), \ - (int)(hint)) - -#define _mm512_prefetch_i32gather_pd(index, addr, scale, hint) \ - __builtin_ia32_gatherpfdpd((__mmask8) -1, (__v8si)(__m256i)(index), \ - (void const *)(addr), (int)(scale), \ - (int)(hint)) - -#define _mm512_mask_prefetch_i32gather_ps(index, mask, addr, scale, hint) \ - __builtin_ia32_gatherpfdps((__mmask16)(mask), \ - (__v16si)(__m512i)(index), (void const *)(addr), \ - (int)(scale), (int)(hint)) - -#define _mm512_prefetch_i32gather_ps(index, addr, scale, hint) \ - __builtin_ia32_gatherpfdps((__mmask16) -1, \ - (__v16si)(__m512i)(index), (void const *)(addr), \ - (int)(scale), (int)(hint)) - -#define _mm512_mask_prefetch_i64gather_pd(index, mask, addr, scale, hint) \ - __builtin_ia32_gatherpfqpd((__mmask8)(mask), (__v8di)(__m512i)(index), \ - (void const *)(addr), (int)(scale), \ - (int)(hint)) - -#define _mm512_prefetch_i64gather_pd(index, addr, scale, hint) \ - __builtin_ia32_gatherpfqpd((__mmask8) -1, (__v8di)(__m512i)(index), \ - (void const *)(addr), (int)(scale), \ - (int)(hint)) - -#define _mm512_mask_prefetch_i64gather_ps(index, mask, addr, scale, hint) \ - __builtin_ia32_gatherpfqps((__mmask8)(mask), (__v8di)(__m512i)(index), \ - (void const *)(addr), (int)(scale), (int)(hint)) - -#define _mm512_prefetch_i64gather_ps(index, addr, scale, hint) \ - __builtin_ia32_gatherpfqps((__mmask8) -1, (__v8di)(__m512i)(index), \ - (void const *)(addr), (int)(scale), (int)(hint)) - -#define _mm512_prefetch_i32scatter_pd(addr, index, scale, hint) \ - __builtin_ia32_scatterpfdpd((__mmask8)-1, (__v8si)(__m256i)(index), \ - (void *)(addr), (int)(scale), \ - (int)(hint)) - -#define _mm512_mask_prefetch_i32scatter_pd(addr, mask, index, scale, hint) \ - __builtin_ia32_scatterpfdpd((__mmask8)(mask), (__v8si)(__m256i)(index), \ - (void *)(addr), (int)(scale), \ - (int)(hint)) - -#define _mm512_prefetch_i32scatter_ps(addr, index, scale, hint) \ - __builtin_ia32_scatterpfdps((__mmask16)-1, (__v16si)(__m512i)(index), \ - (void *)(addr), (int)(scale), (int)(hint)) - -#define _mm512_mask_prefetch_i32scatter_ps(addr, mask, index, scale, hint) \ - __builtin_ia32_scatterpfdps((__mmask16)(mask), \ - (__v16si)(__m512i)(index), (void *)(addr), \ - (int)(scale), (int)(hint)) - -#define _mm512_prefetch_i64scatter_pd(addr, index, scale, hint) \ - __builtin_ia32_scatterpfqpd((__mmask8)-1, (__v8di)(__m512i)(index), \ - (void *)(addr), (int)(scale), \ - (int)(hint)) - -#define _mm512_mask_prefetch_i64scatter_pd(addr, mask, index, scale, hint) \ - __builtin_ia32_scatterpfqpd((__mmask8)(mask), (__v8di)(__m512i)(index), \ - (void *)(addr), (int)(scale), \ - (int)(hint)) - -#define _mm512_prefetch_i64scatter_ps(addr, index, scale, hint) \ - __builtin_ia32_scatterpfqps((__mmask8)-1, (__v8di)(__m512i)(index), \ - (void *)(addr), (int)(scale), (int)(hint)) - -#define _mm512_mask_prefetch_i64scatter_ps(addr, mask, index, scale, hint) \ - __builtin_ia32_scatterpfqps((__mmask8)(mask), (__v8di)(__m512i)(index), \ - (void *)(addr), (int)(scale), (int)(hint)) - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512pfintrin.h.blob deleted file mode 100644 index 349c88c4495cdf8b620b0a266a60363b2c9d9ce4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17219 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h deleted file mode 100644 index 17fa7772..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h +++ /dev/null @@ -1,357 +0,0 @@ -/*===------------- avx512vbmi2intrin.h - VBMI2 intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vbmi2intrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VBMI2INTRIN_H -#define __AVX512VBMI2INTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi2"), __min_vector_width__(512))) - - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_compress_epi16(__m512i __S, __mmask32 __U, __m512i __D) -{ - return (__m512i) __builtin_ia32_compresshi512_mask ((__v32hi) __D, - (__v32hi) __S, - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_compress_epi16(__mmask32 __U, __m512i __D) -{ - return (__m512i) __builtin_ia32_compresshi512_mask ((__v32hi) __D, - (__v32hi) _mm512_setzero_si512(), - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_compress_epi8(__m512i __S, __mmask64 __U, __m512i __D) -{ - return (__m512i) __builtin_ia32_compressqi512_mask ((__v64qi) __D, - (__v64qi) __S, - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_compress_epi8(__mmask64 __U, __m512i __D) -{ - return (__m512i) __builtin_ia32_compressqi512_mask ((__v64qi) __D, - (__v64qi) _mm512_setzero_si512(), - __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_mm512_mask_compressstoreu_epi16(void *__P, __mmask32 __U, __m512i __D) -{ - __builtin_ia32_compressstorehi512_mask ((__v32hi *) __P, (__v32hi) __D, - __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_mm512_mask_compressstoreu_epi8(void *__P, __mmask64 __U, __m512i __D) -{ - __builtin_ia32_compressstoreqi512_mask ((__v64qi *) __P, (__v64qi) __D, - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_expand_epi16(__m512i __S, __mmask32 __U, __m512i __D) -{ - return (__m512i) __builtin_ia32_expandhi512_mask ((__v32hi) __D, - (__v32hi) __S, - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_expand_epi16(__mmask32 __U, __m512i __D) -{ - return (__m512i) __builtin_ia32_expandhi512_mask ((__v32hi) __D, - (__v32hi) _mm512_setzero_si512(), - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_expand_epi8(__m512i __S, __mmask64 __U, __m512i __D) -{ - return (__m512i) __builtin_ia32_expandqi512_mask ((__v64qi) __D, - (__v64qi) __S, - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_expand_epi8(__mmask64 __U, __m512i __D) -{ - return (__m512i) __builtin_ia32_expandqi512_mask ((__v64qi) __D, - (__v64qi) _mm512_setzero_si512(), - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_expandloadu_epi16(__m512i __S, __mmask32 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_expandloadhi512_mask ((const __v32hi *)__P, - (__v32hi) __S, - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_expandloadu_epi16(__mmask32 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_expandloadhi512_mask ((const __v32hi *)__P, - (__v32hi) _mm512_setzero_si512(), - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_expandloadu_epi8(__m512i __S, __mmask64 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_expandloadqi512_mask ((const __v64qi *)__P, - (__v64qi) __S, - __U); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_expandloadu_epi8(__mmask64 __U, void const *__P) -{ - return (__m512i) __builtin_ia32_expandloadqi512_mask ((const __v64qi *)__P, - (__v64qi) _mm512_setzero_si512(), - __U); -} - -#define _mm512_shldi_epi64(A, B, I) \ - ((__m512i)__builtin_ia32_vpshldq512((__v8di)(__m512i)(A), \ - (__v8di)(__m512i)(B), (int)(I))) - -#define _mm512_mask_shldi_epi64(S, U, A, B, I) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_shldi_epi64((A), (B), (I)), \ - (__v8di)(__m512i)(S))) - -#define _mm512_maskz_shldi_epi64(U, A, B, I) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_shldi_epi64((A), (B), (I)), \ - (__v8di)_mm512_setzero_si512())) - -#define _mm512_shldi_epi32(A, B, I) \ - ((__m512i)__builtin_ia32_vpshldd512((__v16si)(__m512i)(A), \ - (__v16si)(__m512i)(B), (int)(I))) - -#define _mm512_mask_shldi_epi32(S, U, A, B, I) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_shldi_epi32((A), (B), (I)), \ - (__v16si)(__m512i)(S))) - -#define _mm512_maskz_shldi_epi32(U, A, B, I) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_shldi_epi32((A), (B), (I)), \ - (__v16si)_mm512_setzero_si512())) - -#define _mm512_shldi_epi16(A, B, I) \ - ((__m512i)__builtin_ia32_vpshldw512((__v32hi)(__m512i)(A), \ - (__v32hi)(__m512i)(B), (int)(I))) - -#define _mm512_mask_shldi_epi16(S, U, A, B, I) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_shldi_epi16((A), (B), (I)), \ - (__v32hi)(__m512i)(S))) - -#define _mm512_maskz_shldi_epi16(U, A, B, I) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_shldi_epi16((A), (B), (I)), \ - (__v32hi)_mm512_setzero_si512())) - -#define _mm512_shrdi_epi64(A, B, I) \ - ((__m512i)__builtin_ia32_vpshrdq512((__v8di)(__m512i)(A), \ - (__v8di)(__m512i)(B), (int)(I))) - -#define _mm512_mask_shrdi_epi64(S, U, A, B, I) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_shrdi_epi64((A), (B), (I)), \ - (__v8di)(__m512i)(S))) - -#define _mm512_maskz_shrdi_epi64(U, A, B, I) \ - ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \ - (__v8di)_mm512_shrdi_epi64((A), (B), (I)), \ - (__v8di)_mm512_setzero_si512())) - -#define _mm512_shrdi_epi32(A, B, I) \ - ((__m512i)__builtin_ia32_vpshrdd512((__v16si)(__m512i)(A), \ - (__v16si)(__m512i)(B), (int)(I))) - -#define _mm512_mask_shrdi_epi32(S, U, A, B, I) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_shrdi_epi32((A), (B), (I)), \ - (__v16si)(__m512i)(S))) - -#define _mm512_maskz_shrdi_epi32(U, A, B, I) \ - ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \ - (__v16si)_mm512_shrdi_epi32((A), (B), (I)), \ - (__v16si)_mm512_setzero_si512())) - -#define _mm512_shrdi_epi16(A, B, I) \ - ((__m512i)__builtin_ia32_vpshrdw512((__v32hi)(__m512i)(A), \ - (__v32hi)(__m512i)(B), (int)(I))) - -#define _mm512_mask_shrdi_epi16(S, U, A, B, I) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_shrdi_epi16((A), (B), (I)), \ - (__v32hi)(__m512i)(S))) - -#define _mm512_maskz_shrdi_epi16(U, A, B, I) \ - ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \ - (__v32hi)_mm512_shrdi_epi16((A), (B), (I)), \ - (__v32hi)_mm512_setzero_si512())) - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_shldv_epi64(__m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_vpshldvq512((__v8di)__A, (__v8di)__B, - (__v8di)__C); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_shldv_epi64(__m512i __A, __mmask8 __U, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_shldv_epi64(__A, __B, __C), - (__v8di)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_shldv_epi64(__mmask8 __U, __m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_shldv_epi64(__A, __B, __C), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_shldv_epi32(__m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_vpshldvd512((__v16si)__A, (__v16si)__B, - (__v16si)__C); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_shldv_epi32(__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_shldv_epi32(__A, __B, __C), - (__v16si)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_shldv_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_shldv_epi32(__A, __B, __C), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_shldv_epi16(__m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_vpshldvw512((__v32hi)__A, (__v32hi)__B, - (__v32hi)__C); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_shldv_epi16(__m512i __A, __mmask32 __U, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectw_512(__U, - (__v32hi)_mm512_shldv_epi16(__A, __B, __C), - (__v32hi)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_shldv_epi16(__mmask32 __U, __m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectw_512(__U, - (__v32hi)_mm512_shldv_epi16(__A, __B, __C), - (__v32hi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_shrdv_epi64(__m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_vpshrdvq512((__v8di)__A, (__v8di)__B, - (__v8di)__C); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_shrdv_epi64(__m512i __A, __mmask8 __U, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_shrdv_epi64(__A, __B, __C), - (__v8di)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_shrdv_epi64(__mmask8 __U, __m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectq_512(__U, - (__v8di)_mm512_shrdv_epi64(__A, __B, __C), - (__v8di)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_shrdv_epi32(__m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_vpshrdvd512((__v16si)__A, (__v16si)__B, - (__v16si)__C); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_shrdv_epi32(__m512i __A, __mmask16 __U, __m512i __B, __m512i __C) -{ - return (__m512i) __builtin_ia32_selectd_512(__U, - (__v16si)_mm512_shrdv_epi32(__A, __B, __C), - (__v16si)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_shrdv_epi32(__mmask16 __U, __m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i) __builtin_ia32_selectd_512(__U, - (__v16si)_mm512_shrdv_epi32(__A, __B, __C), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_shrdv_epi16(__m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_vpshrdvw512((__v32hi)__A, (__v32hi)__B, - (__v32hi)__C); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_shrdv_epi16(__m512i __A, __mmask32 __U, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectw_512(__U, - (__v32hi)_mm512_shrdv_epi16(__A, __B, __C), - (__v32hi)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_shrdv_epi16(__mmask32 __U, __m512i __A, __m512i __B, __m512i __C) -{ - return (__m512i)__builtin_ia32_selectw_512(__U, - (__v32hi)_mm512_shrdv_epi16(__A, __B, __C), - (__v32hi)_mm512_setzero_si512()); -} - - -#undef __DEFAULT_FN_ATTRS - -#endif - diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmi2intrin.h.blob deleted file mode 100644 index 1501a90c0d1653ace811e4a6d4452b33597d0ede..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33314 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 J97am&{{f=r+%5nB diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h deleted file mode 100644 index c0e0f94d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h +++ /dev/null @@ -1,105 +0,0 @@ -/*===------------- avx512vbmiintrin.h - VBMI intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vbmiintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __VBMIINTRIN_H -#define __VBMIINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi"), __min_vector_width__(512))) - - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_permutex2var_epi8(__m512i __A, __m512i __I, __m512i __B) -{ - return (__m512i)__builtin_ia32_vpermi2varqi512((__v64qi)__A, (__v64qi)__I, - (__v64qi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_permutex2var_epi8(__m512i __A, __mmask64 __U, __m512i __I, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512(__U, - (__v64qi)_mm512_permutex2var_epi8(__A, __I, __B), - (__v64qi)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask2_permutex2var_epi8(__m512i __A, __m512i __I, __mmask64 __U, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512(__U, - (__v64qi)_mm512_permutex2var_epi8(__A, __I, __B), - (__v64qi)__I); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_permutex2var_epi8(__mmask64 __U, __m512i __A, __m512i __I, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512(__U, - (__v64qi)_mm512_permutex2var_epi8(__A, __I, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_permutexvar_epi8 (__m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_permvarqi512((__v64qi) __B, (__v64qi) __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_permutexvar_epi8 (__mmask64 __M, __m512i __A, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_permutexvar_epi8(__A, __B), - (__v64qi)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_permutexvar_epi8 (__m512i __W, __mmask64 __M, __m512i __A, - __m512i __B) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_permutexvar_epi8(__A, __B), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_multishift_epi64_epi8(__m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_vpmultishiftqb512((__v64qi)__X, (__v64qi) __Y); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_multishift_epi64_epi8(__m512i __W, __mmask64 __M, __m512i __X, - __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_multishift_epi64_epi8(__X, __Y), - (__v64qi)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_multishift_epi64_epi8(__mmask64 __M, __m512i __X, __m512i __Y) -{ - return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M, - (__v64qi)_mm512_multishift_epi64_epi8(__X, __Y), - (__v64qi)_mm512_setzero_si512()); -} - - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmiintrin.h.blob deleted file mode 100644 index 38ff61d9913fe075ae19c06737a1f1b85d9ae801..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17322 zcmb6=e{dYtdAsrrq+^d`ii8ZvaJD5!GCrMs$dc_!vLx)YC4^)PNk~H0dT(#<ZtcC> z_3qwDR!xSu4nsW(5O6hxQkpbFn`YY76G%d5(o7RFw4rIqOqrym37K{%3DcGgZAc2l zY`^#R-rIY(@AeM=@$Pi{eee7I<9%<vTlny0ZSL;{QHbY^yc*ZzM^yW)W0-MAwVilc zO~-9ZiRWdl(5(m?6kRT48v>0j8`fE^kd37^OH~}hIzLd8f^cn*7%$pZTq`JgF|Ee$ zJu;q%r_`)gkQ5`WcISi-cSRq5nSoK9^Co`si?<K3Pg0s=$I(+eE=l>6?Z}QQIcO6K zs%xn@mL<Ngmr|AUD_X&^KvDojT4Cs6o?wx(MJ>(c=-7BXs~6FuEw5hvZVhD6YSH3L zlu>2$%w{+xD#^=Ej(NZrp|rApUm|1f>kW|v>j#;oz$%51!p~FZ!2y<Kvp!ARNv8}$ zM}PsP;jK)=)>aaduH~7{7;>^><TXWF*3v4NyjXBlivou^W=7LhDP<YUwui9yOQ{-W zQ_P}P$QWo>>PsOy1kPn09I(DW*hMQNE51p?*v+ZBwt`sr@>iBvK5axOOJzpUz~wHR zDQF>FVTF6XZ)@3-tXDZcqjV3>(ekQQ0T#x;TGFtgH+^%GWuHceV-ywas8q=e$&4A( zjckgMlK|M~?YNRwGyDLkl+3Y;iX$aQ$B%M1qRim5RcUZSs$w(6FwSbKq#07CSWq0z zDA*OssLV<@z7fHN)LkJNCj<UowFB3Z%lUjgLxKry=d8WTm9kjSAoRG8D#YXGKcWX9 zP>``jX=)^o@E*33Q|ppg1~D2D*fdO~;DpFb?FOkS?Zq?pqEL^_%L;aw*Y3E7bxGvc zT<uUYKt+>rwx`a@wUi`*qQNnxyu2dGI_S(3m!IxP<w3?%s};j&H>*OSbs*n)1p%8N zOjf&u<azt9VOCHo4{!<lBN!?Vp@(7%Gsb9yD{W@QhEx>Ddt6u<*PD`=00h;tq0oOs zOudm>g)G_I!*EXIqOvQxW~L0;;+JOZ%#i<`LJTSlIH7Z%*^VomX=RigFWGXT%c>{@ z(sP(aGnT4KS^d0;Q|9hyj<u{8gD45e%Gvr1ms!wLnfmn~yc3nfm;(9EVKZ)+c&WUG zYz+>A*r5Rsf}&;ea!Kdl5EEh{{ZQm5A`(=(p~z72*~W!S9Vk+Vr+hLrp%!Iio85{5 zfEG4wYpeV$f`Scq69I;)Po7oJGwo}bCph2<w&s-kp7&kF^8~JFW@zQ0<nx-%PX-ji z>$;F70|_HrD8`{xP1&&;ktf^vxN2Ditb@+?*Vu;F^IX+AlW(AdBv}O4hxEDn-a-va zb<fpP$yD@wQ9qYH$8kR{#<HwA=2>3b#|5{!hTwvNj2tEycf)<M1QmgabOIvV(Bk@! z!hA_rSG?+Z%YUhCLII=2vT8xKG{rMsEG666zXKMePGXp9A&Yy2fRj{&Zb7x#EJFB3 zjxBkf9hXfF$#&t%O>F;!3zsij&F0sKqY=$j_KGc+RHdH2NlrlxTW?PzIR%VZ@)G<3 z&gNWJ6t%h}hFLBr+qt}V=;}>RgrorQ1r0ipRh7dB(LA*v<e^|`<Z??Y2sdKLzFus5 zJ-D?D8JR6j1dNhLXEf+P92KAc_)Y}eD6yO>L)#aFYFFXtl^uB5-%6Tg6!K8U`5uR% z;J6oq_KO=z7@*vI;h^I}0ZR}n+(&o=)5%%DF!rLDY<Z_1nveooNa;}H^0lTJs6Q)0 zEq2tE5T2oEdqlZh5rw0Nd@TdMjE^`BeuyVz8gVZ;&{2|M&aK<H7JTidu-axh)u*Dc zE&YRnp5XOPv_J*y0@DZ>6ES)qCd1bCk^`K|(Mc1v@_`nN0k>5hn%~;nq45oLE;>t* zt9eLrvV}EDlN>_|)u@avXW6Y75R%z|?>Zv@v>6(Z71`amjLGS`C5+LUBti9;QpJqq z$o^y_%$xw5@haEp$q}}4VdqwK!$$L=s*xa<TW)D4S^^y_G1F4vP{-JeyAyQNyjsGA zl_Ywsm%Q!+?aw!4Mt5Q=*e8}(ot(ixW<%p#T&dS*m9?&ArSce!bwn<s%c+8)6-sbm z3^emZNhF_0e$Jt3g}WyVP-`6L_~7NkW4Y}M;l$H|AF_dFB{-+xQnX}{xw;<L>^4X- zESLO-&OCOuZj6-c2Fw)TP$xmQi>1#OWSD+3o=A)kC^Zx+ERb{=fz_TAppiU+sAErT zAZ{<fRWEM4IA-JmtA%q)KFs|pCHIxpkodNiH{q1%RR=GjJh<onkao&<ty-aK$S^xl zjC|e*YYEV#dtc2-ccA-5!UTNT4?8rNWvs+F1)7QkPN!T|qrnGwZy?aQ!1+9kxpe62 z5M{nLynF-682pz_H7tYp3Wj@PCve`>o2@<MSw$I^8kqH#VEzQdTSi}80awt?R+Tow zV(Fe3p4h*9xavX(^9L<k27;GABES&dMT->L*VP|YmSAk<-(7^UdtSB+nrV8i?=ycq z!<JFZ60`+s3EJoC;ZNAM*xE?B?{gb1rtoV>9?LdWHl=Z`;U!r#B&sq=&9v;;D|*^N zmx}?1Cayz6=!^m94$V8Dgy%Yk+b?ig&KpoR8;&QO6yZ?c2)lBzJW~qiRnaqg(awc$ zx~$}6{|>G46h*a@)6(S=Ii?q8el@MZ9WJu}>&Z+=BK6E^hMgPgjrwd`3bwagLsT|f zvUhJv6BZX?<v?%NY}j(7{wsB>6m7t25B#apy?n@|ses#>y6j{Oi+^6GJDn?PY!N5> zkRUG<^R*AA<u(K{5;z=@o9I}`<ed_MJH}ecjk0R11>18U>e&pl6%|EG*RLs%z|ioz z3XpGdZd?=MltF*G#%IvGYzqj=CF%JM3}}K0iVI%?-)$6D<BG%G7AGFw#sT3`5!3uL zd}Xe{R%VhrZnY&-wq*7?pUZ=t<E3@NfagN!(#nb9%NfQQxf^=A4UI_H4KvJaMo7}J zHuouJh#u8p9;KTwkD~X&3=Wq)MNg}F!)a(LryFwG_G@~j)~Q>X+KTGU3<7RRVY1ME zpvjSC=z3MZ$mJ1KnBce@(GcAiW+!1G+dzFWjpZta2oaJzcoVN$Ov8&UCB5`fE}-C) zUq0Z|vQW(cN|EJ(IAdKF&T~;vT1fAY+$IK7=W>~(Ih89;28@q$H)V_q2BxZU_+<D4 z+<XkqJn2|kRdkr2!nF+}4R`Yznq+onBHv*Ho(EWNEUOYTfuydLH;Ue^1NCYyhai3d zxi+-+4Yf~j9<t@Enlf<19=<osK1@a9Rdy~brk5i*al-}o(o};NS#ZyWr;PYO*HF_8 zrsHrDP;*X(wv&Ga=;d`hz>YzZhDlhgcGC2K@oBDtRhV2cPDaT4&~QD$`XK?qZ_=pC z2z_?PPhY~X%7y4Lh2AiMa*E(-z>vMDQ(4P~iOEsJ6OelEx_MrX)L+AKu}Hds-exq4 zFvw@*<}wZ!$13#9LAJTjYU5Sibe1iRTVS|5>#GgEa+5E@)dP|%pgpQ!d}icpn8MhK zTnNl(i5<`-N4-Hgy5cixPEdS0;M>>?0d}#iaDHWzHCH`wGlr%ZjrVFw-c*zoIo+^n z%b5TomYWT@T#@Wi=e-)DR;m=3BYQE4l@fNG^9NaH9xlHy8OjMLHT-QzJTbyUM_Tv@ zd)Of5yg|K;LWPj6@fu4ljE^!yP%Pz6UK7OKn?IXi#Vfx}6SxNCZb<CQ&1+l?^K5yB z7oGw`Zdq&Jgi-g&LAv6HcRByT1y;?-#2}<yK!a^|Fvyh($`2fv8%>gmzMQIp4RdiP zr+Q<#^<(9M1+f^U7+{CV;p9<;6gA&2E&DUtBS!l;<j;cm8^Xp-8(sNd9=UqziQ|{h zy_%*(wE|pUs8M(o9XePoD&^59%vfz0{ugyevvXR;kyKNIcMxDb&`BYs`}QC-1lrpJ z-|oSGdb>z-m4D24348X8h%>^>NRv1%+}|V!Lc|@4eb4Ur$+zEgAKh^EOV{n{`(1bZ z%zfM5{F|8T9(i}+e~0((bHw?n`O9v{TVH7Zt@X(_He72T+9U$5Kz|Asq7MH-9uJ6< z!sLM_aYC3vJT|%Cc<`@3w*S;$KI-1|z(2fj_&cxtk$@R!LVN)?qC6$zPxt$?yRU7( z`TD)#3?Z$;nGNTel5Bkxg$`FLbOb5%fS44L!0b_B+*9Zew|)5D=U=<>tSdaRdi1?N zDa^aCfA^*1a{v6J?&W7YBR}uzzfl}p9J}o1_FEH=y*m843We@?^OcQz|E+XyUH(_O z0`Q$6$nzm_Ko~gGB=!q;A)Yt5XIp>rt*`v}@cr&}egAXD6{3IUe&Vg)AAjNNTYuCv zyg1CVI<h!&$-VxG2mbS`Pwkng;GKvQ%6o{~gKTz-eL`P%lh`X9^8Db__dlKfozd(6 z%6<Ho$zubF7ZYVaKs+KpKx##w?yke1`n%`Pz4)i0ydZ5Qs2&p>PheOYW#eon;0gU= zhtSdAB(@88c%E?X_2H9GZvMir+~>4!zkl=mt~cFJzjx~QE)|nMbt9kq+0;uP`;S+| zt`l7ky3x;XUA;H^e_a*YJp6O}FMg2Rp06vxYV8EUcZXoS9TAs=r6Wz^DM9hv;rSo# zede97f9h-QAN*qf3vcZI_>Jzb9{YI9#b<W@pb3Q<jeEpzYAUtLa|hxfp#nf=UsWvw z-kpGi)mbvMGzzIslw1U16IwRhdE(9$WK-mJ=o8VyHok51fggQm!}nT32_O~tvBKDx zYKO5T$K>T)ile<>>=wGg#xbGCv+<J;?mYfkSAN5NVbjkxT)Wa7b?=Scu()T#hUeVw zzHfbh_#fZBttoLL!P*$f#M9Y*`^68w_|AX#))lD%ujPy9IdP>#hr~9a4RXP)!VXWO z)~gTq{Ogs!eaL<38_(tL`s`=^(0%JOug*SudFK)LMO%ITo3Hf!QjDI6vJ#aG0&(O} z0Z0yDtWjpEj{5hCEkeuQCb3z#+4IyVo_IC>bjwSxxbNQa)WQcdd&k_bX8--qo1S{7 z!%Gbt5U0ppP@JJpWDE2exr)52^56Boz%)#$b!md6Nu8EU5-ftNZn>Ixb+)aDIvkiO zMT-TPK^N3?6rBpag;r{zxA!**^<See8{1~vauKn^>bMjUy9c{ZM8tu?0a%9?hYArf zIh%y1ql=^PeP(IKjEHlKbMSpBxil9MPcNQ^@9qOXo_ge_PyEx3gaHZO^?);R3XW}( z)CoO<H+q6_TSY%Wzpy)sz8jfNbP?1A|Dxy%v=OD=o^zUT@#1EN$(Gi1s}&JjA8dUj zB5qA@h40a!=tM-^KC~UyuAweicMt7`H8GTc_0FL?VLiBXP>1!x!OIbGczk#vB94rY zz&bWQ2J7A9cf)!zcd`WQrIU|G#QBkV5PV@|0akfLhBY;kg4Mn5gTp89UM_BIP{0Ge zeAEP3NctD)xP&WL7)ft&YkQVUBP0+QZZPGOOdpaU+(2Cm)?t^n6@hLd*dF;!U7(i> zru6RS_U1%HY)P~X!8+aowrI(;IAG=G)*TV?*7jTBX<L8W7_3g)#fZ4Ae;a(iz4>-{ z+TPv{Pdf%X#$lc7$V9|lgS+5+XLBb!jkU+%Y4>9H8CXl*;MnoOI6U3gybqrCw)eu* zzC<6;?Hlg{x(AyN!ted<{qXz1;s9U`ZW+7{LZEpFem~lN6n;<kCxLp>NnVVI$8I^+ z2|>|33Qs56C*bMip~>U0PEV%5mzqz)@6+wm@cYb>nJHK=%v_F$vqxs(`&{!JJU!KZ z3Z5>dmn>L6xwHnM)O;F#-$^T;-)PSZTee&$2;$NsOINNnVfZW5Bd<ZV66JOI=}jV4 zv5z`OP@Sb!jGA6rtwLRs9|u&DOlY1!9lg-pjOi{coyN$?rPEh2z0>CD5+IR2-KR%b zot>UtKqw&c0!wdxeIBt&8Yv%jq|9pHVqXfOf@M-H>Ou1$qDq<?A9b{h+L7xhAXIRO z0)yJrwblhv?mn@57B(QU;%_iaHkjy`#v2TFOfwsZT^G9^22_%K0hQJ{qNW*ZW(6Tb zmR#}FG-u8shDo&g^a#Ukm)b5P6!7oMEWPMj6q$t-gi3ldWwUfV)Uk${wK~>3dYucM zrvZu7Paaa+nKlzsoNY5bq}vy6M@S^M_)HR|w2ik-VU+&1DTc|W=*1`~W&4TkNUP+G z;cq}JdTjTxy=Vi7n!U^h;@J8aat2aEeN>{Lmc<tA43HkGoT2rx)^$K7dB#U2E<dw2 z^EjdkvG+Jjb$)Fg>6R31AC)lNQfj$?P$3;%U{SZ0wq5{Kl3RnQyC!yF4}xq|?Lq5Z zNY==&fBVbvw^zR?Nk@(*hiAs8rR0P(JUu;iFBH7?olw5L^LX`Bh{vj$D(lPgd0X;M z@REd%1qFEdG*!%cf540C@ESRk+a3OxZ$}qCJ-~lmFIQyvKg~`KV4w|x0tKn$hAlVr zG@<p{hj7q_<Mzhpp60nB@z$POVQueehc(s{gSEG(7uNoseprw89EEkFX9Cvgo@rQ5 z^_+q=vpJK1V-e|5eSHz<>ejn0q-x037OU#S#RQ5tQVxTtEh8<*v6T`n$63@?r*#!j zN#*iU?<>c7ay*G$8ge@8(&F8Vcc%a~b|N2rI+gloNtzwGXLNL8dTMk+It~_U^DV?a z5jStyyr&7TSZ#t!dN?3Ya|Mar?y2rMEcRgcoEL`s7WSbqB%Q9$GjYmo<J&OLPz9@a zj;=?MXOaHjM<r3z{ZKc~6i^D+SWP9?5-1eNiNQxDRO1tI?9Wg?tNb~!o<LMdUs@?8 z$%x4_Nt|q;hb$+XQF9b!MACQo^oT$7jr3uoLUpb(>cK}2UIA3n5cB8_ObuYILjPLU z>X12v=#l9{kluhkfc+1uewF_XuMH#Bka>iUN>no#9o&U%2(7{{R;$D7!$>uxVe(Ol zl*vm;ocE!dsLK0eYh#EinK${Uq_R$?C(j_N&}y7vsh(UviKvp9m5)j?;^f%m35<GZ k@<bKt%E?axDjCW7s3c%!re|<Hhjyl_o-a%-%xx0?AO470hyVZp diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h deleted file mode 100644 index c5b96ae8..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h +++ /dev/null @@ -1,188 +0,0 @@ -/*===------------- avx512vbmivlintrin.h - VBMI intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vbmivlintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __VBMIVLINTRIN_H -#define __VBMIVLINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi,avx512vl"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi,avx512vl"), __min_vector_width__(256))) - - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_permutex2var_epi8(__m128i __A, __m128i __I, __m128i __B) -{ - return (__m128i)__builtin_ia32_vpermi2varqi128((__v16qi)__A, - (__v16qi)__I, - (__v16qi)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_permutex2var_epi8(__m128i __A, __mmask16 __U, __m128i __I, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128(__U, - (__v16qi)_mm_permutex2var_epi8(__A, __I, __B), - (__v16qi)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask2_permutex2var_epi8(__m128i __A, __m128i __I, __mmask16 __U, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128(__U, - (__v16qi)_mm_permutex2var_epi8(__A, __I, __B), - (__v16qi)__I); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_permutex2var_epi8(__mmask16 __U, __m128i __A, __m128i __I, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128(__U, - (__v16qi)_mm_permutex2var_epi8(__A, __I, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_permutex2var_epi8(__m256i __A, __m256i __I, __m256i __B) -{ - return (__m256i)__builtin_ia32_vpermi2varqi256((__v32qi)__A, (__v32qi)__I, - (__v32qi)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_permutex2var_epi8(__m256i __A, __mmask32 __U, __m256i __I, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256(__U, - (__v32qi)_mm256_permutex2var_epi8(__A, __I, __B), - (__v32qi)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask2_permutex2var_epi8(__m256i __A, __m256i __I, __mmask32 __U, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256(__U, - (__v32qi)_mm256_permutex2var_epi8(__A, __I, __B), - (__v32qi)__I); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutex2var_epi8(__mmask32 __U, __m256i __A, __m256i __I, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256(__U, - (__v32qi)_mm256_permutex2var_epi8(__A, __I, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_permutexvar_epi8 (__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_permvarqi128((__v16qi)__B, (__v16qi)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_permutexvar_epi8 (__mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_permutexvar_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_permutexvar_epi8 (__m128i __W, __mmask16 __M, __m128i __A, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_permutexvar_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_permutexvar_epi8 (__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_permvarqi256((__v32qi) __B, (__v32qi) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutexvar_epi8 (__mmask32 __M, __m256i __A, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_permutexvar_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_permutexvar_epi8 (__m256i __W, __mmask32 __M, __m256i __A, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_permutexvar_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_multishift_epi64_epi8(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_vpmultishiftqb128((__v16qi)__X, (__v16qi)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_multishift_epi64_epi8(__m128i __W, __mmask16 __M, __m128i __X, - __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_multishift_epi64_epi8(__X, __Y), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_multishift_epi64_epi8(__mmask16 __M, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_multishift_epi64_epi8(__X, __Y), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_multishift_epi64_epi8(__m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_vpmultishiftqb256((__v32qi)__X, (__v32qi)__Y); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_multishift_epi64_epi8(__m256i __W, __mmask32 __M, __m256i __X, - __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_multishift_epi64_epi8(__X, __Y), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_multishift_epi64_epi8(__mmask32 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_multishift_epi64_epi8(__X, __Y), - (__v32qi)_mm256_setzero_si256()); -} - - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vbmivlintrin.h.blob deleted file mode 100644 index ec9ffb23145babaabf10693c49ae6e8e36641c45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22448 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h deleted file mode 100644 index f5b8911f..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h +++ /dev/null @@ -1,515 +0,0 @@ -/*===--------- avx512vlbf16intrin.h - AVX512_BF16 intrinsics ---------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vlbf16intrin.h> directly; include <immintrin.h> instead." -#endif - -#ifdef __SSE2__ - -#ifndef __AVX512VLBF16INTRIN_H -#define __AVX512VLBF16INTRIN_H - -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, \ - __target__("avx512vl, avx512bf16"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, \ - __target__("avx512vl, avx512bf16"), __min_vector_width__(256))) - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [4 x float]. -/// \param __B -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from -/// conversion of __B, and higher 64 bits come from conversion of __A. -static __inline__ __m128bh __DEFAULT_FN_ATTRS128 -_mm_cvtne2ps_pbh(__m128 __A, __m128 __B) { - return (__m128bh)__builtin_ia32_cvtne2ps2bf16_128((__v4sf) __A, - (__v4sf) __B); -} - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [4 x float]. -/// \param __B -/// A 128-bit vector of [4 x float]. -/// \param __W -/// A 128-bit vector of [8 x bfloat]. -/// \param __U -/// A 8-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A or __B. A 0 means element from __W. -/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from -/// conversion of __B, and higher 64 bits come from conversion of __A. -static __inline__ __m128bh __DEFAULT_FN_ATTRS128 -_mm_mask_cvtne2ps_pbh(__m128bh __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128bh)__builtin_ia32_selectpbf_128((__mmask8)__U, - (__v8bf)_mm_cvtne2ps_pbh(__A, __B), - (__v8bf)__W); -} - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [4 x float]. -/// \param __B -/// A 128-bit vector of [4 x float]. -/// \param __U -/// A 8-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A or __B. A 0 means element is zero. -/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from -/// conversion of __B, and higher 64 bits come from conversion of __A. -static __inline__ __m128bh __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtne2ps_pbh(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128bh)__builtin_ia32_selectpbf_128((__mmask8)__U, - (__v8bf)_mm_cvtne2ps_pbh(__A, __B), - (__v8bf)_mm_setzero_si128()); -} - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [8 x float]. -/// \param __B -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit vector of [16 x bfloat] whose lower 128 bits come from -/// conversion of __B, and higher 128 bits come from conversion of __A. -static __inline__ __m256bh __DEFAULT_FN_ATTRS256 -_mm256_cvtne2ps_pbh(__m256 __A, __m256 __B) { - return (__m256bh)__builtin_ia32_cvtne2ps2bf16_256((__v8sf) __A, - (__v8sf) __B); -} - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [8 x float]. -/// \param __B -/// A 256-bit vector of [8 x float]. -/// \param __W -/// A 256-bit vector of [16 x bfloat]. -/// \param __U -/// A 16-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A or __B. A 0 means element from __W. -/// \returns A 256-bit vector of [16 x bfloat] whose lower 128 bits come from -/// conversion of __B, and higher 128 bits come from conversion of __A. -static __inline__ __m256bh __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtne2ps_pbh(__m256bh __W, __mmask16 __U, __m256 __A, __m256 __B) { - return (__m256bh)__builtin_ia32_selectpbf_256((__mmask16)__U, - (__v16bf)_mm256_cvtne2ps_pbh(__A, __B), - (__v16bf)__W); -} - -/// Convert Two Packed Single Data to One Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNE2PS2BF16 </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [8 x float]. -/// \param __B -/// A 256-bit vector of [8 x float]. -/// \param __U -/// A 16-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A or __B. A 0 means element is zero. -/// \returns A 256-bit vector of [16 x bfloat] whose lower 128 bits come from -/// conversion of __B, and higher 128 bits come from conversion of __A. -static __inline__ __m256bh __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtne2ps_pbh(__mmask16 __U, __m256 __A, __m256 __B) { - return (__m256bh)__builtin_ia32_selectpbf_256((__mmask16)__U, - (__v16bf)_mm256_cvtne2ps_pbh(__A, __B), - (__v16bf)_mm256_setzero_si256()); -} - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from -/// conversion of __A, and higher 64 bits are 0. -#define _mm_cvtneps_pbh(A) \ - ((__m128bh)__builtin_ia32_vcvtneps2bf16128((__v4sf)(A))) - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [4 x float]. -/// \param __W -/// A 128-bit vector of [8 x bfloat]. -/// \param __U -/// A 4-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A. A 0 means element from __W. -/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from -/// conversion of __A, and higher 64 bits are 0. -static __inline__ __m128bh __DEFAULT_FN_ATTRS128 -_mm_mask_cvtneps_pbh(__m128bh __W, __mmask8 __U, __m128 __A) { - return (__m128bh)__builtin_ia32_cvtneps2bf16_128_mask((__v4sf) __A, - (__v8bf)__W, - (__mmask8)__U); -} - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [4 x float]. -/// \param __U -/// A 4-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A. A 0 means element is zero. -/// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from -/// conversion of __A, and higher 64 bits are 0. -static __inline__ __m128bh __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtneps_pbh(__mmask8 __U, __m128 __A) { - return (__m128bh)__builtin_ia32_cvtneps2bf16_128_mask((__v4sf) __A, - (__v8bf)_mm_setzero_si128(), - (__mmask8)__U); -} - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [8 x float]. -/// \returns A 128-bit vector of [8 x bfloat] comes from conversion of __A. -#define _mm256_cvtneps_pbh(A) \ - ((__m128bh)__builtin_ia32_vcvtneps2bf16256((__v8sf)(A))) - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [8 x float]. -/// \param __W -/// A 256-bit vector of [8 x bfloat]. -/// \param __U -/// A 8-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A. A 0 means element from __W. -/// \returns A 128-bit vector of [8 x bfloat] comes from conversion of __A. -static __inline__ __m128bh __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtneps_pbh(__m128bh __W, __mmask8 __U, __m256 __A) { - return (__m128bh)__builtin_ia32_cvtneps2bf16_256_mask((__v8sf)__A, - (__v8bf)__W, - (__mmask8)__U); -} - -/// Convert Packed Single Data to Packed BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [8 x float]. -/// \param __U -/// A 8-bit mask value specifying what is chosen for each element. -/// A 1 means conversion of __A. A 0 means element is zero. -/// \returns A 128-bit vector of [8 x bfloat] comes from conversion of __A. -static __inline__ __m128bh __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtneps_pbh(__mmask8 __U, __m256 __A) { - return (__m128bh)__builtin_ia32_cvtneps2bf16_256_mask((__v8sf)__A, - (__v8bf)_mm_setzero_si128(), - (__mmask8)__U); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [8 x bfloat]. -/// \param __B -/// A 128-bit vector of [8 x bfloat]. -/// \param __D -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_dpbf16_ps(__m128 __D, __m128bh __A, __m128bh __B) { - return (__m128)__builtin_ia32_dpbf16ps_128((__v4sf)__D, - (__v8bf)__A, - (__v8bf)__B); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [8 x bfloat]. -/// \param __B -/// A 128-bit vector of [8 x bfloat]. -/// \param __D -/// A 128-bit vector of [4 x float]. -/// \param __U -/// A 8-bit mask value specifying what is chosen for each element. -/// A 1 means __A and __B's dot product accumulated with __D. A 0 means __D. -/// \returns A 128-bit vector of [4 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_dpbf16_ps(__m128 __D, __mmask8 __U, __m128bh __A, __m128bh __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_dpbf16_ps(__D, __A, __B), - (__v4sf)__D); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 128-bit vector of [8 x bfloat]. -/// \param __B -/// A 128-bit vector of [8 x bfloat]. -/// \param __D -/// A 128-bit vector of [4 x float]. -/// \param __U -/// A 8-bit mask value specifying what is chosen for each element. -/// A 1 means __A and __B's dot product accumulated with __D. A 0 means 0. -/// \returns A 128-bit vector of [4 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_dpbf16_ps(__mmask8 __U, __m128 __D, __m128bh __A, __m128bh __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_dpbf16_ps(__D, __A, __B), - (__v4sf)_mm_setzero_si128()); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [16 x bfloat]. -/// \param __B -/// A 256-bit vector of [16 x bfloat]. -/// \param __D -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit vector of [8 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_dpbf16_ps(__m256 __D, __m256bh __A, __m256bh __B) { - return (__m256)__builtin_ia32_dpbf16ps_256((__v8sf)__D, - (__v16bf)__A, - (__v16bf)__B); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [16 x bfloat]. -/// \param __B -/// A 256-bit vector of [16 x bfloat]. -/// \param __D -/// A 256-bit vector of [8 x float]. -/// \param __U -/// A 16-bit mask value specifying what is chosen for each element. -/// A 1 means __A and __B's dot product accumulated with __D. A 0 means __D. -/// \returns A 256-bit vector of [8 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_dpbf16_ps(__m256 __D, __mmask8 __U, __m256bh __A, __m256bh __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_dpbf16_ps(__D, __A, __B), - (__v8sf)__D); -} - -/// Dot Product of BF16 Pairs Accumulated into Packed Single Precision. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDPBF16PS </c> instructions. -/// -/// \param __A -/// A 256-bit vector of [16 x bfloat]. -/// \param __B -/// A 256-bit vector of [16 x bfloat]. -/// \param __D -/// A 256-bit vector of [8 x float]. -/// \param __U -/// A 8-bit mask value specifying what is chosen for each element. -/// A 1 means __A and __B's dot product accumulated with __D. A 0 means 0. -/// \returns A 256-bit vector of [8 x float] comes from Dot Product of -/// __A, __B and __D -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_dpbf16_ps(__mmask8 __U, __m256 __D, __m256bh __A, __m256bh __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_dpbf16_ps(__D, __A, __B), - (__v8sf)_mm256_setzero_si256()); -} - -/// Convert One Single float Data to One BF16 Data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTNEPS2BF16 </c> instructions. -/// -/// \param __A -/// A float data. -/// \returns A bf16 data whose sign field and exponent field keep unchanged, -/// and fraction field is truncated to 7 bits. -static __inline__ __bf16 __DEFAULT_FN_ATTRS128 _mm_cvtness_sbh(float __A) { - __v4sf __V = {__A, 0, 0, 0}; - __v8bf __R = __builtin_ia32_cvtneps2bf16_128_mask( - (__v4sf)__V, (__v8bf)_mm_undefined_si128(), (__mmask8)-1); - return (__bf16)__R[0]; -} - -/// Convert Packed BF16 Data to Packed float Data. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __A -/// A 128-bit vector of [4 x bfloat]. -/// \returns A 128-bit vector of [4 x float] come from conversion of __A -static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_cvtpbh_ps(__m128bh __A) { - return _mm_castsi128_ps( - (__m128i)_mm_slli_epi32((__m128i)_mm_cvtepi16_epi32((__m128i)__A), 16)); -} - -/// Convert Packed BF16 Data to Packed float Data. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __A -/// A 128-bit vector of [8 x bfloat]. -/// \returns A 256-bit vector of [8 x float] come from conversion of __A -static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_cvtpbh_ps(__m128bh __A) { - return _mm256_castsi256_ps((__m256i)_mm256_slli_epi32( - (__m256i)_mm256_cvtepi16_epi32((__m128i)__A), 16)); -} - -/// Convert Packed BF16 Data to Packed float Data using zeroing mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __U -/// A 4-bit mask. Elements are zeroed out when the corresponding mask -/// bit is not set. -/// \param __A -/// A 128-bit vector of [4 x bfloat]. -/// \returns A 128-bit vector of [4 x float] come from conversion of __A -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtpbh_ps(__mmask8 __U, __m128bh __A) { - return _mm_castsi128_ps((__m128i)_mm_slli_epi32( - (__m128i)_mm_maskz_cvtepi16_epi32((__mmask8)__U, (__m128i)__A), 16)); -} - -/// Convert Packed BF16 Data to Packed float Data using zeroing mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __U -/// A 8-bit mask. Elements are zeroed out when the corresponding mask -/// bit is not set. -/// \param __A -/// A 128-bit vector of [8 x bfloat]. -/// \returns A 256-bit vector of [8 x float] come from conversion of __A -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtpbh_ps(__mmask8 __U, __m128bh __A) { - return _mm256_castsi256_ps((__m256i)_mm256_slli_epi32( - (__m256i)_mm256_maskz_cvtepi16_epi32((__mmask8)__U, (__m128i)__A), 16)); -} - -/// Convert Packed BF16 Data to Packed float Data using merging mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __S -/// A 128-bit vector of [4 x float]. Elements are copied from __S when -/// the corresponding mask bit is not set. -/// \param __U -/// A 4-bit mask. Elements are zeroed out when the corresponding mask -/// bit is not set. -/// \param __A -/// A 128-bit vector of [4 x bfloat]. -/// \returns A 128-bit vector of [4 x float] come from conversion of __A -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_cvtpbh_ps(__m128 __S, __mmask8 __U, __m128bh __A) { - return _mm_castsi128_ps((__m128i)_mm_mask_slli_epi32( - (__m128i)__S, (__mmask8)__U, (__m128i)_mm_cvtepi16_epi32((__m128i)__A), - 16)); -} - -/// Convert Packed BF16 Data to Packed float Data using merging mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \param __S -/// A 256-bit vector of [8 x float]. Elements are copied from __S when -/// the corresponding mask bit is not set. -/// \param __U -/// A 8-bit mask. Elements are zeroed out when the corresponding mask -/// bit is not set. -/// \param __A -/// A 128-bit vector of [8 x bfloat]. -/// \returns A 256-bit vector of [8 x float] come from conversion of __A -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtpbh_ps(__m256 __S, __mmask8 __U, __m128bh __A) { - return _mm256_castsi256_ps((__m256i)_mm256_mask_slli_epi32( - (__m256i)__S, (__mmask8)__U, (__m256i)_mm256_cvtepi16_epi32((__m128i)__A), - 16)); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbf16intrin.h.blob deleted file mode 100644 index 186187e7d7d36a8a5b7790be7aaca44e0302f358..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36258 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h deleted file mode 100644 index 5154eae1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h +++ /dev/null @@ -1,145 +0,0 @@ -/*===---- avx512vlbitalgintrin.h - BITALG intrinsics -----------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vlbitalgintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VLBITALGINTRIN_H -#define __AVX512VLBITALGINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bitalg"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bitalg"), __min_vector_width__(256))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_popcnt_epi16(__m256i __A) -{ - return (__m256i) __builtin_ia32_vpopcntw_256((__v16hi) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_popcnt_epi16(__m256i __A, __mmask16 __U, __m256i __B) -{ - return (__m256i) __builtin_ia32_selectw_256((__mmask16) __U, - (__v16hi) _mm256_popcnt_epi16(__B), - (__v16hi) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_popcnt_epi16(__mmask16 __U, __m256i __B) -{ - return _mm256_mask_popcnt_epi16((__m256i) _mm256_setzero_si256(), - __U, - __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_popcnt_epi16(__m128i __A) -{ - return (__m128i) __builtin_ia32_vpopcntw_128((__v8hi) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_popcnt_epi16(__m128i __A, __mmask8 __U, __m128i __B) -{ - return (__m128i) __builtin_ia32_selectw_128((__mmask8) __U, - (__v8hi) _mm_popcnt_epi16(__B), - (__v8hi) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_popcnt_epi16(__mmask8 __U, __m128i __B) -{ - return _mm_mask_popcnt_epi16((__m128i) _mm_setzero_si128(), - __U, - __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_popcnt_epi8(__m256i __A) -{ - return (__m256i) __builtin_ia32_vpopcntb_256((__v32qi) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_popcnt_epi8(__m256i __A, __mmask32 __U, __m256i __B) -{ - return (__m256i) __builtin_ia32_selectb_256((__mmask32) __U, - (__v32qi) _mm256_popcnt_epi8(__B), - (__v32qi) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_popcnt_epi8(__mmask32 __U, __m256i __B) -{ - return _mm256_mask_popcnt_epi8((__m256i) _mm256_setzero_si256(), - __U, - __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_popcnt_epi8(__m128i __A) -{ - return (__m128i) __builtin_ia32_vpopcntb_128((__v16qi) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_popcnt_epi8(__m128i __A, __mmask16 __U, __m128i __B) -{ - return (__m128i) __builtin_ia32_selectb_128((__mmask16) __U, - (__v16qi) _mm_popcnt_epi8(__B), - (__v16qi) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_popcnt_epi8(__mmask16 __U, __m128i __B) -{ - return _mm_mask_popcnt_epi8((__m128i) _mm_setzero_si128(), - __U, - __B); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 -_mm256_mask_bitshuffle_epi64_mask(__mmask32 __U, __m256i __A, __m256i __B) -{ - return (__mmask32) __builtin_ia32_vpshufbitqmb256_mask((__v32qi) __A, - (__v32qi) __B, - __U); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 -_mm256_bitshuffle_epi64_mask(__m256i __A, __m256i __B) -{ - return _mm256_mask_bitshuffle_epi64_mask((__mmask32) -1, - __A, - __B); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 -_mm_mask_bitshuffle_epi64_mask(__mmask16 __U, __m128i __A, __m128i __B) -{ - return (__mmask16) __builtin_ia32_vpshufbitqmb128_mask((__v16qi) __A, - (__v16qi) __B, - __U); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 -_mm_bitshuffle_epi64_mask(__m128i __A, __m128i __B) -{ - return _mm_mask_bitshuffle_epi64_mask((__mmask16) -1, - __A, - __B); -} - - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbitalgintrin.h.blob deleted file mode 100644 index ac413527a55df71f51c6ce17a99bc05b7f1b1c03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18854 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 I>NOz!KNj<5(f|Me diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h deleted file mode 100644 index 148af5ab..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h +++ /dev/null @@ -1,3161 +0,0 @@ -/*===---- avx512vlbwintrin.h - AVX512VL and AVX512BW intrinsics ------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <avx512vlbwintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VLBWINTRIN_H -#define __AVX512VLBWINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bw"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bw"), __min_vector_width__(256))) - -/* Integer compare */ - -#define _mm_cmp_epi8_mask(a, b, p) \ - ((__mmask16)__builtin_ia32_cmpb128_mask((__v16qi)(__m128i)(a), \ - (__v16qi)(__m128i)(b), (int)(p), \ - (__mmask16)-1)) - -#define _mm_mask_cmp_epi8_mask(m, a, b, p) \ - ((__mmask16)__builtin_ia32_cmpb128_mask((__v16qi)(__m128i)(a), \ - (__v16qi)(__m128i)(b), (int)(p), \ - (__mmask16)(m))) - -#define _mm_cmp_epu8_mask(a, b, p) \ - ((__mmask16)__builtin_ia32_ucmpb128_mask((__v16qi)(__m128i)(a), \ - (__v16qi)(__m128i)(b), (int)(p), \ - (__mmask16)-1)) - -#define _mm_mask_cmp_epu8_mask(m, a, b, p) \ - ((__mmask16)__builtin_ia32_ucmpb128_mask((__v16qi)(__m128i)(a), \ - (__v16qi)(__m128i)(b), (int)(p), \ - (__mmask16)(m))) - -#define _mm256_cmp_epi8_mask(a, b, p) \ - ((__mmask32)__builtin_ia32_cmpb256_mask((__v32qi)(__m256i)(a), \ - (__v32qi)(__m256i)(b), (int)(p), \ - (__mmask32)-1)) - -#define _mm256_mask_cmp_epi8_mask(m, a, b, p) \ - ((__mmask32)__builtin_ia32_cmpb256_mask((__v32qi)(__m256i)(a), \ - (__v32qi)(__m256i)(b), (int)(p), \ - (__mmask32)(m))) - -#define _mm256_cmp_epu8_mask(a, b, p) \ - ((__mmask32)__builtin_ia32_ucmpb256_mask((__v32qi)(__m256i)(a), \ - (__v32qi)(__m256i)(b), (int)(p), \ - (__mmask32)-1)) - -#define _mm256_mask_cmp_epu8_mask(m, a, b, p) \ - ((__mmask32)__builtin_ia32_ucmpb256_mask((__v32qi)(__m256i)(a), \ - (__v32qi)(__m256i)(b), (int)(p), \ - (__mmask32)(m))) - -#define _mm_cmp_epi16_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpw128_mask((__v8hi)(__m128i)(a), \ - (__v8hi)(__m128i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm_mask_cmp_epi16_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpw128_mask((__v8hi)(__m128i)(a), \ - (__v8hi)(__m128i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm_cmp_epu16_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpw128_mask((__v8hi)(__m128i)(a), \ - (__v8hi)(__m128i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm_mask_cmp_epu16_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpw128_mask((__v8hi)(__m128i)(a), \ - (__v8hi)(__m128i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm256_cmp_epi16_mask(a, b, p) \ - ((__mmask16)__builtin_ia32_cmpw256_mask((__v16hi)(__m256i)(a), \ - (__v16hi)(__m256i)(b), (int)(p), \ - (__mmask16)-1)) - -#define _mm256_mask_cmp_epi16_mask(m, a, b, p) \ - ((__mmask16)__builtin_ia32_cmpw256_mask((__v16hi)(__m256i)(a), \ - (__v16hi)(__m256i)(b), (int)(p), \ - (__mmask16)(m))) - -#define _mm256_cmp_epu16_mask(a, b, p) \ - ((__mmask16)__builtin_ia32_ucmpw256_mask((__v16hi)(__m256i)(a), \ - (__v16hi)(__m256i)(b), (int)(p), \ - (__mmask16)-1)) - -#define _mm256_mask_cmp_epu16_mask(m, a, b, p) \ - ((__mmask16)__builtin_ia32_ucmpw256_mask((__v16hi)(__m256i)(a), \ - (__v16hi)(__m256i)(b), (int)(p), \ - (__mmask16)(m))) - -#define _mm_cmpeq_epi8_mask(A, B) \ - _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_EQ) -#define _mm_mask_cmpeq_epi8_mask(k, A, B) \ - _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm_cmpge_epi8_mask(A, B) \ - _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_GE) -#define _mm_mask_cmpge_epi8_mask(k, A, B) \ - _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm_cmpgt_epi8_mask(A, B) \ - _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_GT) -#define _mm_mask_cmpgt_epi8_mask(k, A, B) \ - _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm_cmple_epi8_mask(A, B) \ - _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_LE) -#define _mm_mask_cmple_epi8_mask(k, A, B) \ - _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm_cmplt_epi8_mask(A, B) \ - _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_LT) -#define _mm_mask_cmplt_epi8_mask(k, A, B) \ - _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm_cmpneq_epi8_mask(A, B) \ - _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_NE) -#define _mm_mask_cmpneq_epi8_mask(k, A, B) \ - _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm256_cmpeq_epi8_mask(A, B) \ - _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_EQ) -#define _mm256_mask_cmpeq_epi8_mask(k, A, B) \ - _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm256_cmpge_epi8_mask(A, B) \ - _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_GE) -#define _mm256_mask_cmpge_epi8_mask(k, A, B) \ - _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm256_cmpgt_epi8_mask(A, B) \ - _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_GT) -#define _mm256_mask_cmpgt_epi8_mask(k, A, B) \ - _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm256_cmple_epi8_mask(A, B) \ - _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_LE) -#define _mm256_mask_cmple_epi8_mask(k, A, B) \ - _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm256_cmplt_epi8_mask(A, B) \ - _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_LT) -#define _mm256_mask_cmplt_epi8_mask(k, A, B) \ - _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm256_cmpneq_epi8_mask(A, B) \ - _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_NE) -#define _mm256_mask_cmpneq_epi8_mask(k, A, B) \ - _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm_cmpeq_epu8_mask(A, B) \ - _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_EQ) -#define _mm_mask_cmpeq_epu8_mask(k, A, B) \ - _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm_cmpge_epu8_mask(A, B) \ - _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_GE) -#define _mm_mask_cmpge_epu8_mask(k, A, B) \ - _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm_cmpgt_epu8_mask(A, B) \ - _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_GT) -#define _mm_mask_cmpgt_epu8_mask(k, A, B) \ - _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm_cmple_epu8_mask(A, B) \ - _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_LE) -#define _mm_mask_cmple_epu8_mask(k, A, B) \ - _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm_cmplt_epu8_mask(A, B) \ - _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_LT) -#define _mm_mask_cmplt_epu8_mask(k, A, B) \ - _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm_cmpneq_epu8_mask(A, B) \ - _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_NE) -#define _mm_mask_cmpneq_epu8_mask(k, A, B) \ - _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm256_cmpeq_epu8_mask(A, B) \ - _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_EQ) -#define _mm256_mask_cmpeq_epu8_mask(k, A, B) \ - _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm256_cmpge_epu8_mask(A, B) \ - _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_GE) -#define _mm256_mask_cmpge_epu8_mask(k, A, B) \ - _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm256_cmpgt_epu8_mask(A, B) \ - _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_GT) -#define _mm256_mask_cmpgt_epu8_mask(k, A, B) \ - _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm256_cmple_epu8_mask(A, B) \ - _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_LE) -#define _mm256_mask_cmple_epu8_mask(k, A, B) \ - _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm256_cmplt_epu8_mask(A, B) \ - _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_LT) -#define _mm256_mask_cmplt_epu8_mask(k, A, B) \ - _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm256_cmpneq_epu8_mask(A, B) \ - _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_NE) -#define _mm256_mask_cmpneq_epu8_mask(k, A, B) \ - _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm_cmpeq_epi16_mask(A, B) \ - _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_EQ) -#define _mm_mask_cmpeq_epi16_mask(k, A, B) \ - _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm_cmpge_epi16_mask(A, B) \ - _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_GE) -#define _mm_mask_cmpge_epi16_mask(k, A, B) \ - _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm_cmpgt_epi16_mask(A, B) \ - _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_GT) -#define _mm_mask_cmpgt_epi16_mask(k, A, B) \ - _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm_cmple_epi16_mask(A, B) \ - _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_LE) -#define _mm_mask_cmple_epi16_mask(k, A, B) \ - _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm_cmplt_epi16_mask(A, B) \ - _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_LT) -#define _mm_mask_cmplt_epi16_mask(k, A, B) \ - _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm_cmpneq_epi16_mask(A, B) \ - _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_NE) -#define _mm_mask_cmpneq_epi16_mask(k, A, B) \ - _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm256_cmpeq_epi16_mask(A, B) \ - _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_EQ) -#define _mm256_mask_cmpeq_epi16_mask(k, A, B) \ - _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm256_cmpge_epi16_mask(A, B) \ - _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_GE) -#define _mm256_mask_cmpge_epi16_mask(k, A, B) \ - _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm256_cmpgt_epi16_mask(A, B) \ - _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_GT) -#define _mm256_mask_cmpgt_epi16_mask(k, A, B) \ - _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm256_cmple_epi16_mask(A, B) \ - _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_LE) -#define _mm256_mask_cmple_epi16_mask(k, A, B) \ - _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm256_cmplt_epi16_mask(A, B) \ - _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_LT) -#define _mm256_mask_cmplt_epi16_mask(k, A, B) \ - _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm256_cmpneq_epi16_mask(A, B) \ - _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_NE) -#define _mm256_mask_cmpneq_epi16_mask(k, A, B) \ - _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm_cmpeq_epu16_mask(A, B) \ - _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_EQ) -#define _mm_mask_cmpeq_epu16_mask(k, A, B) \ - _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm_cmpge_epu16_mask(A, B) \ - _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_GE) -#define _mm_mask_cmpge_epu16_mask(k, A, B) \ - _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm_cmpgt_epu16_mask(A, B) \ - _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_GT) -#define _mm_mask_cmpgt_epu16_mask(k, A, B) \ - _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm_cmple_epu16_mask(A, B) \ - _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_LE) -#define _mm_mask_cmple_epu16_mask(k, A, B) \ - _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm_cmplt_epu16_mask(A, B) \ - _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_LT) -#define _mm_mask_cmplt_epu16_mask(k, A, B) \ - _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm_cmpneq_epu16_mask(A, B) \ - _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_NE) -#define _mm_mask_cmpneq_epu16_mask(k, A, B) \ - _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm256_cmpeq_epu16_mask(A, B) \ - _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_EQ) -#define _mm256_mask_cmpeq_epu16_mask(k, A, B) \ - _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm256_cmpge_epu16_mask(A, B) \ - _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_GE) -#define _mm256_mask_cmpge_epu16_mask(k, A, B) \ - _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm256_cmpgt_epu16_mask(A, B) \ - _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_GT) -#define _mm256_mask_cmpgt_epu16_mask(k, A, B) \ - _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm256_cmple_epu16_mask(A, B) \ - _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_LE) -#define _mm256_mask_cmple_epu16_mask(k, A, B) \ - _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm256_cmplt_epu16_mask(A, B) \ - _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_LT) -#define _mm256_mask_cmplt_epu16_mask(k, A, B) \ - _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm256_cmpneq_epu16_mask(A, B) \ - _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_NE) -#define _mm256_mask_cmpneq_epu16_mask(k, A, B) \ - _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_NE) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_add_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B){ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_add_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_add_epi8(__mmask32 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_add_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_add_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_add_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_add_epi16(__mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_add_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sub_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_sub_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sub_epi8(__mmask32 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_sub_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sub_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_sub_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sub_epi16(__mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_sub_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_add_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_add_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_add_epi8(__mmask16 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_add_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_add_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_add_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_add_epi16(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_add_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sub_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_sub_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sub_epi8(__mmask16 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_sub_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sub_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_sub_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sub_epi16(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_sub_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mullo_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_mullo_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mullo_epi16(__mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_mullo_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mullo_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_mullo_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mullo_epi16(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_mullo_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_blend_epi8 (__mmask16 __U, __m128i __A, __m128i __W) -{ - return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U, - (__v16qi) __W, - (__v16qi) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_blend_epi8 (__mmask32 __U, __m256i __A, __m256i __W) -{ - return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U, - (__v32qi) __W, - (__v32qi) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_blend_epi16 (__mmask8 __U, __m128i __A, __m128i __W) -{ - return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U, - (__v8hi) __W, - (__v8hi) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_blend_epi16 (__mmask16 __U, __m256i __A, __m256i __W) -{ - return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U, - (__v16hi) __W, - (__v16hi) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_abs_epi8(__m128i __W, __mmask16 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_abs_epi8(__A), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_abs_epi8(__mmask16 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_abs_epi8(__A), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_abs_epi8(__m256i __W, __mmask32 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_abs_epi8(__A), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_abs_epi8 (__mmask32 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_abs_epi8(__A), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_abs_epi16(__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_abs_epi16(__A), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_abs_epi16(__mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_abs_epi16(__A), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_abs_epi16(__m256i __W, __mmask16 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_abs_epi16(__A), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_abs_epi16(__mmask16 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_abs_epi16(__A), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_packs_epi32(__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_packs_epi32(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_packs_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_packs_epi32(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_packs_epi32(__mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_packs_epi32(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_packs_epi32(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_packs_epi32(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_packs_epi16(__mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_packs_epi16(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_packs_epi16(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_packs_epi16(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_packs_epi16(__mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_packs_epi16(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_packs_epi16(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_packs_epi16(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_packus_epi32(__mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_packus_epi32(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_packus_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_packus_epi32(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_packus_epi32(__mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_packus_epi32(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_packus_epi32(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_packus_epi32(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_packus_epi16(__mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_packus_epi16(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_packus_epi16(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_packus_epi16(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_packus_epi16(__mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_packus_epi16(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_packus_epi16(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_packus_epi16(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_adds_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_adds_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_adds_epi8(__mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_adds_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_adds_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_adds_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_adds_epi8(__mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_adds_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_adds_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_adds_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_adds_epi16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_adds_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_adds_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_adds_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_adds_epi16(__mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_adds_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_adds_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_adds_epu8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_adds_epu8(__mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_adds_epu8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_adds_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_adds_epu8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_adds_epu8(__mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_adds_epu8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_adds_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_adds_epu16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_adds_epu16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_adds_epu16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_adds_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_adds_epu16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_adds_epu16(__mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_adds_epu16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_avg_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_avg_epu8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_avg_epu8(__mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_avg_epu8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_avg_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_avg_epu8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_avg_epu8(__mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_avg_epu8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_avg_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_avg_epu16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_avg_epu16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_avg_epu16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_avg_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_avg_epu16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_avg_epu16(__mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_avg_epu16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_max_epi8(__mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_max_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_max_epi8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_max_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_epi8(__mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_max_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_max_epi8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_max_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_max_epi16(__mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_max_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_max_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_max_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_epi16(__mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_max_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_max_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_max_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_max_epu8(__mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_max_epu8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_max_epu8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_max_epu8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_epu8 (__mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_max_epu8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_max_epu8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_max_epu8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_max_epu16(__mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_max_epu16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_max_epu16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_max_epu16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_epu16(__mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_max_epu16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_max_epu16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_max_epu16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_min_epi8(__mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_min_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_min_epi8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_min_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_epi8(__mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_min_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_min_epi8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_min_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_min_epi16(__mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_min_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_min_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_min_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_epi16(__mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_min_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_min_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_min_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_min_epu8(__mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_min_epu8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_min_epu8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm_min_epu8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_epu8 (__mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_min_epu8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_min_epu8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M, - (__v32qi)_mm256_min_epu8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_min_epu16(__mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_min_epu16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_min_epu16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_min_epu16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_epu16(__mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_min_epu16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_min_epu16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_min_epu16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_shuffle_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_shuffle_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_shuffle_epi8(__mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_shuffle_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_shuffle_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_shuffle_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_shuffle_epi8(__mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_shuffle_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_subs_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_subs_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_subs_epi8(__mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_subs_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_subs_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_subs_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_subs_epi8(__mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_subs_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_subs_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_subs_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_subs_epi16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_subs_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_subs_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_subs_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_subs_epi16(__mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_subs_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_subs_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_subs_epu8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_subs_epu8(__mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_subs_epu8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_subs_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_subs_epu8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_subs_epu8(__mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_subs_epu8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_subs_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_subs_epu16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_subs_epu16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_subs_epu16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_subs_epu16(__m256i __W, __mmask16 __U, __m256i __A, - __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_subs_epu16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_subs_epu16(__mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_subs_epu16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_permutex2var_epi16(__m128i __A, __m128i __I, __m128i __B) -{ - return (__m128i)__builtin_ia32_vpermi2varhi128((__v8hi)__A, (__v8hi)__I, - (__v8hi) __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_permutex2var_epi16(__m128i __A, __mmask8 __U, __m128i __I, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128(__U, - (__v8hi)_mm_permutex2var_epi16(__A, __I, __B), - (__v8hi)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask2_permutex2var_epi16(__m128i __A, __m128i __I, __mmask8 __U, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128(__U, - (__v8hi)_mm_permutex2var_epi16(__A, __I, __B), - (__v8hi)__I); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_permutex2var_epi16 (__mmask8 __U, __m128i __A, __m128i __I, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128(__U, - (__v8hi)_mm_permutex2var_epi16(__A, __I, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_permutex2var_epi16(__m256i __A, __m256i __I, __m256i __B) -{ - return (__m256i)__builtin_ia32_vpermi2varhi256((__v16hi)__A, (__v16hi)__I, - (__v16hi)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_permutex2var_epi16(__m256i __A, __mmask16 __U, __m256i __I, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256(__U, - (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B), - (__v16hi)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask2_permutex2var_epi16(__m256i __A, __m256i __I, __mmask16 __U, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256(__U, - (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B), - (__v16hi)__I); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutex2var_epi16 (__mmask16 __U, __m256i __A, __m256i __I, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256(__U, - (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_maddubs_epi16(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_maddubs_epi16(__X, __Y), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_maddubs_epi16(__mmask8 __U, __m128i __X, __m128i __Y) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_maddubs_epi16(__X, __Y), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_maddubs_epi16(__m256i __W, __mmask16 __U, __m256i __X, - __m256i __Y) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_maddubs_epi16(__X, __Y), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_maddubs_epi16(__mmask16 __U, __m256i __X, __m256i __Y) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_maddubs_epi16(__X, __Y), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_madd_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_madd_epi16(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_madd_epi16(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_madd_epi16(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_madd_epi16(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_madd_epi16(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_madd_epi16(__mmask8 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_madd_epi16(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtsepi16_epi8 (__m128i __A) { - return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A, - (__v16qi) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) { - return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsepi16_epi8 (__mmask8 __M, __m128i __A) { - return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A, - (__v16qi) _mm_setzero_si128(), - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtsepi16_epi8 (__m256i __A) { - return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A, - (__v16qi) _mm_setzero_si128(), - (__mmask16) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A) { - return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtsepi16_epi8 (__mmask16 __M, __m256i __A) { - return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A, - (__v16qi) _mm_setzero_si128(), - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtusepi16_epi8 (__m128i __A) { - return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A, - (__v16qi) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) { - return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtusepi16_epi8 (__mmask8 __M, __m128i __A) { - return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A, - (__v16qi) _mm_setzero_si128(), - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtusepi16_epi8 (__m256i __A) { - return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A, - (__v16qi) _mm_setzero_si128(), - (__mmask16) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A) { - return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtusepi16_epi8 (__mmask16 __M, __m256i __A) { - return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A, - (__v16qi) _mm_setzero_si128(), - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtepi16_epi8 (__m128i __A) { - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v8hi)__A, __v8qi), - (__v8qi){0, 0, 0, 0, 0, 0, 0, 0}, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) { - return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi16_epi8 (__mmask8 __M, __m128i __A) { - return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A, - (__v16qi) _mm_setzero_si128(), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi16_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovwb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M); -} - - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovswb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovuswb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi16_epi8 (__m256i __A) { - return (__m128i)__builtin_convertvector((__v16hi) __A, __v16qi); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm256_cvtepi16_epi8(__A), - (__v16qi)__O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi16_epi8 (__mmask16 __M, __m256i __A) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M, - (__v16qi)_mm256_cvtepi16_epi8(__A), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi16_storeu_epi8 (void * __P, __mmask16 __M, __m256i __A) -{ - __builtin_ia32_pmovwb256mem_mask ((__v16qi *) __P, (__v16hi) __A, __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask16 __M, __m256i __A) -{ - __builtin_ia32_pmovswb256mem_mask ((__v16qi *) __P, (__v16hi) __A, __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask16 __M, __m256i __A) -{ - __builtin_ia32_pmovuswb256mem_mask ((__v16qi*) __P, (__v16hi) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mulhrs_epi16(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_mulhrs_epi16(__X, __Y), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mulhrs_epi16(__mmask8 __U, __m128i __X, __m128i __Y) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_mulhrs_epi16(__X, __Y), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mulhrs_epi16(__m256i __W, __mmask16 __U, __m256i __X, __m256i __Y) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_mulhrs_epi16(__X, __Y), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mulhrs_epi16(__mmask16 __U, __m256i __X, __m256i __Y) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_mulhrs_epi16(__X, __Y), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mulhi_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_mulhi_epu16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mulhi_epu16(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_mulhi_epu16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mulhi_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_mulhi_epu16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mulhi_epu16(__mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_mulhi_epu16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mulhi_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_mulhi_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mulhi_epi16(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_mulhi_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mulhi_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_mulhi_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mulhi_epi16(__mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_mulhi_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_unpackhi_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_unpackhi_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_unpackhi_epi8(__mmask16 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_unpackhi_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_unpackhi_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_unpackhi_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpackhi_epi8(__mmask32 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_unpackhi_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_unpackhi_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_unpackhi_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_unpackhi_epi16(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_unpackhi_epi16(__A, __B), - (__v8hi) _mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_unpackhi_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_unpackhi_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpackhi_epi16(__mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_unpackhi_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_unpacklo_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_unpacklo_epi8(__A, __B), - (__v16qi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_unpacklo_epi8(__mmask16 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U, - (__v16qi)_mm_unpacklo_epi8(__A, __B), - (__v16qi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_unpacklo_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_unpacklo_epi8(__A, __B), - (__v32qi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpacklo_epi8(__mmask32 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U, - (__v32qi)_mm256_unpacklo_epi8(__A, __B), - (__v32qi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_unpacklo_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_unpacklo_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_unpacklo_epi16(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_unpacklo_epi16(__A, __B), - (__v8hi) _mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_unpacklo_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_unpacklo_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpacklo_epi16(__mmask16 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_unpacklo_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi8_epi16(__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_cvtepi8_epi16(__A), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi8_epi16(__mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_cvtepi8_epi16(__A), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi8_epi16(__m256i __W, __mmask16 __U, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_cvtepi8_epi16(__A), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi8_epi16(__mmask16 __U, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_cvtepi8_epi16(__A), - (__v16hi)_mm256_setzero_si256()); -} - - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepu8_epi16(__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_cvtepu8_epi16(__A), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepu8_epi16(__mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_cvtepu8_epi16(__A), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepu8_epi16(__m256i __W, __mmask16 __U, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_cvtepu8_epi16(__A), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepu8_epi16 (__mmask16 __U, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_cvtepu8_epi16(__A), - (__v16hi)_mm256_setzero_si256()); -} - - -#define _mm_mask_shufflehi_epi16(W, U, A, imm) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_shufflehi_epi16((A), (imm)), \ - (__v8hi)(__m128i)(W))) - -#define _mm_maskz_shufflehi_epi16(U, A, imm) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_shufflehi_epi16((A), (imm)), \ - (__v8hi)_mm_setzero_si128())) - -#define _mm256_mask_shufflehi_epi16(W, U, A, imm) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_shufflehi_epi16((A), (imm)), \ - (__v16hi)(__m256i)(W))) - -#define _mm256_maskz_shufflehi_epi16(U, A, imm) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_shufflehi_epi16((A), (imm)), \ - (__v16hi)_mm256_setzero_si256())) - -#define _mm_mask_shufflelo_epi16(W, U, A, imm) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_shufflelo_epi16((A), (imm)), \ - (__v8hi)(__m128i)(W))) - -#define _mm_maskz_shufflelo_epi16(U, A, imm) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_shufflelo_epi16((A), (imm)), \ - (__v8hi)_mm_setzero_si128())) - -#define _mm256_mask_shufflelo_epi16(W, U, A, imm) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_shufflelo_epi16((A), \ - (imm)), \ - (__v16hi)(__m256i)(W))) - -#define _mm256_maskz_shufflelo_epi16(U, A, imm) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_shufflelo_epi16((A), \ - (imm)), \ - (__v16hi)_mm256_setzero_si256())) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sllv_epi16(__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_psllv16hi((__v16hi)__A, (__v16hi)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sllv_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_sllv_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sllv_epi16(__mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_sllv_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_sllv_epi16(__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_psllv8hi((__v8hi)__A, (__v8hi)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sllv_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_sllv_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sllv_epi16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_sllv_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sll_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_sll_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sll_epi16 (__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_sll_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sll_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_sll_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sll_epi16(__mmask16 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_sll_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_slli_epi16(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_slli_epi16(__A, (int)__B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_slli_epi16(__A, (int)__B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_slli_epi16(__m256i __W, __mmask16 __U, __m256i __A, - unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_slli_epi16(__A, (int)__B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_slli_epi16(__mmask16 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_slli_epi16(__A, (int)__B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srlv_epi16(__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_psrlv16hi((__v16hi)__A, (__v16hi)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srlv_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srlv_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srlv_epi16(__mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srlv_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_srlv_epi16(__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_psrlv8hi((__v8hi)__A, (__v8hi)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srlv_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srlv_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srlv_epi16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srlv_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srav_epi16(__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_psrav16hi((__v16hi)__A, (__v16hi)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srav_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srav_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srav_epi16(__mmask16 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srav_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_srav_epi16(__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_psrav8hi((__v8hi)__A, (__v8hi)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srav_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srav_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srav_epi16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srav_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sra_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_sra_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sra_epi16(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_sra_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sra_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_sra_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sra_epi16(__mmask16 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_sra_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srai_epi16(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srai_epi16(__A, (int)__B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srai_epi16(__mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srai_epi16(__A, (int)__B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srai_epi16(__m256i __W, __mmask16 __U, __m256i __A, - unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srai_epi16(__A, (int)__B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srai_epi16(__mmask16 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srai_epi16(__A, (int)__B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srl_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srl_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srl_epi16 (__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srl_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srl_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srl_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srl_epi16(__mmask16 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srl_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srli_epi16(__m128i __W, __mmask8 __U, __m128i __A, int __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srli_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srli_epi16 (__mmask8 __U, __m128i __A, int __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U, - (__v8hi)_mm_srli_epi16(__A, __B), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srli_epi16(__m256i __W, __mmask16 __U, __m256i __A, int __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srli_epi16(__A, __B), - (__v16hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srli_epi16(__mmask16 __U, __m256i __A, int __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U, - (__v16hi)_mm256_srli_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mov_epi16 (__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U, - (__v8hi) __A, - (__v8hi) __W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mov_epi16 (__mmask8 __U, __m128i __A) -{ - return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U, - (__v8hi) __A, - (__v8hi) _mm_setzero_si128 ()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mov_epi16 (__m256i __W, __mmask16 __U, __m256i __A) -{ - return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U, - (__v16hi) __A, - (__v16hi) __W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mov_epi16 (__mmask16 __U, __m256i __A) -{ - return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U, - (__v16hi) __A, - (__v16hi) _mm256_setzero_si256 ()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mov_epi8 (__m128i __W, __mmask16 __U, __m128i __A) -{ - return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U, - (__v16qi) __A, - (__v16qi) __W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mov_epi8 (__mmask16 __U, __m128i __A) -{ - return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U, - (__v16qi) __A, - (__v16qi) _mm_setzero_si128 ()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mov_epi8 (__m256i __W, __mmask32 __U, __m256i __A) -{ - return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U, - (__v32qi) __A, - (__v32qi) __W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mov_epi8 (__mmask32 __U, __m256i __A) -{ - return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U, - (__v32qi) __A, - (__v32qi) _mm256_setzero_si256 ()); -} - - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_set1_epi8 (__m128i __O, __mmask16 __M, char __A) -{ - return (__m128i) __builtin_ia32_selectb_128(__M, - (__v16qi) _mm_set1_epi8(__A), - (__v16qi) __O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_set1_epi8 (__mmask16 __M, char __A) -{ - return (__m128i) __builtin_ia32_selectb_128(__M, - (__v16qi) _mm_set1_epi8(__A), - (__v16qi) _mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_set1_epi8 (__m256i __O, __mmask32 __M, char __A) -{ - return (__m256i) __builtin_ia32_selectb_256(__M, - (__v32qi) _mm256_set1_epi8(__A), - (__v32qi) __O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_set1_epi8 (__mmask32 __M, char __A) -{ - return (__m256i) __builtin_ia32_selectb_256(__M, - (__v32qi) _mm256_set1_epi8(__A), - (__v32qi) _mm256_setzero_si256()); -} - -static __inline __m128i __DEFAULT_FN_ATTRS128 -_mm_loadu_epi16 (void const *__P) -{ - struct __loadu_epi16 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi16*)__P)->__v; -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_loadu_epi16 (__m128i __W, __mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_loaddquhi128_mask ((const __v8hi *) __P, - (__v8hi) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_loadu_epi16 (__mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_loaddquhi128_mask ((const __v8hi *) __P, - (__v8hi) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline __m256i __DEFAULT_FN_ATTRS256 -_mm256_loadu_epi16 (void const *__P) -{ - struct __loadu_epi16 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi16*)__P)->__v; -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_loadu_epi16 (__m256i __W, __mmask16 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_loaddquhi256_mask ((const __v16hi *) __P, - (__v16hi) __W, - (__mmask16) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_loadu_epi16 (__mmask16 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_loaddquhi256_mask ((const __v16hi *) __P, - (__v16hi) - _mm256_setzero_si256 (), - (__mmask16) __U); -} - -static __inline __m128i __DEFAULT_FN_ATTRS128 -_mm_loadu_epi8 (void const *__P) -{ - struct __loadu_epi8 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi8*)__P)->__v; -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_loadu_epi8 (__m128i __W, __mmask16 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_loaddquqi128_mask ((const __v16qi *) __P, - (__v16qi) __W, - (__mmask16) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_loadu_epi8 (__mmask16 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_loaddquqi128_mask ((const __v16qi *) __P, - (__v16qi) - _mm_setzero_si128 (), - (__mmask16) __U); -} - -static __inline __m256i __DEFAULT_FN_ATTRS256 -_mm256_loadu_epi8 (void const *__P) -{ - struct __loadu_epi8 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi8*)__P)->__v; -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_loadu_epi8 (__m256i __W, __mmask32 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_loaddquqi256_mask ((const __v32qi *) __P, - (__v32qi) __W, - (__mmask32) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_loadu_epi8 (__mmask32 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_loaddquqi256_mask ((const __v32qi *) __P, - (__v32qi) - _mm256_setzero_si256 (), - (__mmask32) __U); -} - -static __inline void __DEFAULT_FN_ATTRS128 -_mm_storeu_epi16 (void *__P, __m128i __A) -{ - struct __storeu_epi16 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi16*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_storeu_epi16 (void *__P, __mmask8 __U, __m128i __A) -{ - __builtin_ia32_storedquhi128_mask ((__v8hi *) __P, - (__v8hi) __A, - (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS256 -_mm256_storeu_epi16 (void *__P, __m256i __A) -{ - struct __storeu_epi16 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi16*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_storeu_epi16 (void *__P, __mmask16 __U, __m256i __A) -{ - __builtin_ia32_storedquhi256_mask ((__v16hi *) __P, - (__v16hi) __A, - (__mmask16) __U); -} - -static __inline void __DEFAULT_FN_ATTRS128 -_mm_storeu_epi8 (void *__P, __m128i __A) -{ - struct __storeu_epi8 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi8*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_storeu_epi8 (void *__P, __mmask16 __U, __m128i __A) -{ - __builtin_ia32_storedquqi128_mask ((__v16qi *) __P, - (__v16qi) __A, - (__mmask16) __U); -} - -static __inline void __DEFAULT_FN_ATTRS256 -_mm256_storeu_epi8 (void *__P, __m256i __A) -{ - struct __storeu_epi8 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi8*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_storeu_epi8 (void *__P, __mmask32 __U, __m256i __A) -{ - __builtin_ia32_storedquqi256_mask ((__v32qi *) __P, - (__v32qi) __A, - (__mmask32) __U); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 -_mm_test_epi8_mask (__m128i __A, __m128i __B) -{ - return _mm_cmpneq_epi8_mask (_mm_and_si128(__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 -_mm_mask_test_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_cmpneq_epi8_mask (__U, _mm_and_si128 (__A, __B), - _mm_setzero_si128()); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 -_mm256_test_epi8_mask (__m256i __A, __m256i __B) -{ - return _mm256_cmpneq_epi8_mask (_mm256_and_si256(__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 -_mm256_mask_test_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_cmpneq_epi8_mask (__U, _mm256_and_si256(__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_test_epi16_mask (__m128i __A, __m128i __B) -{ - return _mm_cmpneq_epi16_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_mask_test_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_cmpneq_epi16_mask (__U, _mm_and_si128 (__A, __B), - _mm_setzero_si128()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 -_mm256_test_epi16_mask (__m256i __A, __m256i __B) -{ - return _mm256_cmpneq_epi16_mask (_mm256_and_si256 (__A, __B), - _mm256_setzero_si256 ()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 -_mm256_mask_test_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_cmpneq_epi16_mask (__U, _mm256_and_si256(__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 -_mm_testn_epi8_mask (__m128i __A, __m128i __B) -{ - return _mm_cmpeq_epi8_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 -_mm_mask_testn_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_cmpeq_epi8_mask (__U, _mm_and_si128 (__A, __B), - _mm_setzero_si128()); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 -_mm256_testn_epi8_mask (__m256i __A, __m256i __B) -{ - return _mm256_cmpeq_epi8_mask (_mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 -_mm256_mask_testn_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_cmpeq_epi8_mask (__U, _mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_testn_epi16_mask (__m128i __A, __m128i __B) -{ - return _mm_cmpeq_epi16_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_mask_testn_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_cmpeq_epi16_mask (__U, _mm_and_si128(__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 -_mm256_testn_epi16_mask (__m256i __A, __m256i __B) -{ - return _mm256_cmpeq_epi16_mask (_mm256_and_si256(__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 -_mm256_mask_testn_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_cmpeq_epi16_mask (__U, _mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 -_mm_movepi8_mask (__m128i __A) -{ - return (__mmask16) __builtin_ia32_cvtb2mask128 ((__v16qi) __A); -} - -static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 -_mm256_movepi8_mask (__m256i __A) -{ - return (__mmask32) __builtin_ia32_cvtb2mask256 ((__v32qi) __A); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_movepi16_mask (__m128i __A) -{ - return (__mmask8) __builtin_ia32_cvtw2mask128 ((__v8hi) __A); -} - -static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 -_mm256_movepi16_mask (__m256i __A) -{ - return (__mmask16) __builtin_ia32_cvtw2mask256 ((__v16hi) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_movm_epi8 (__mmask16 __A) -{ - return (__m128i) __builtin_ia32_cvtmask2b128 (__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_movm_epi8 (__mmask32 __A) -{ - return (__m256i) __builtin_ia32_cvtmask2b256 (__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_movm_epi16 (__mmask8 __A) -{ - return (__m128i) __builtin_ia32_cvtmask2w128 (__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_movm_epi16 (__mmask16 __A) -{ - return (__m256i) __builtin_ia32_cvtmask2w256 (__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_broadcastb_epi8 (__m128i __O, __mmask16 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectb_128(__M, - (__v16qi) _mm_broadcastb_epi8(__A), - (__v16qi) __O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_broadcastb_epi8 (__mmask16 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectb_128(__M, - (__v16qi) _mm_broadcastb_epi8(__A), - (__v16qi) _mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcastb_epi8 (__m256i __O, __mmask32 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectb_256(__M, - (__v32qi) _mm256_broadcastb_epi8(__A), - (__v32qi) __O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcastb_epi8 (__mmask32 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectb_256(__M, - (__v32qi) _mm256_broadcastb_epi8(__A), - (__v32qi) _mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_broadcastw_epi16 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectw_128(__M, - (__v8hi) _mm_broadcastw_epi16(__A), - (__v8hi) __O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_broadcastw_epi16 (__mmask8 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectw_128(__M, - (__v8hi) _mm_broadcastw_epi16(__A), - (__v8hi) _mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcastw_epi16 (__m256i __O, __mmask16 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectw_256(__M, - (__v16hi) _mm256_broadcastw_epi16(__A), - (__v16hi) __O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcastw_epi16 (__mmask16 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectw_256(__M, - (__v16hi) _mm256_broadcastw_epi16(__A), - (__v16hi) _mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_set1_epi16 (__m256i __O, __mmask16 __M, short __A) -{ - return (__m256i) __builtin_ia32_selectw_256 (__M, - (__v16hi) _mm256_set1_epi16(__A), - (__v16hi) __O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_set1_epi16 (__mmask16 __M, short __A) -{ - return (__m256i) __builtin_ia32_selectw_256(__M, - (__v16hi)_mm256_set1_epi16(__A), - (__v16hi) _mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_set1_epi16 (__m128i __O, __mmask8 __M, short __A) -{ - return (__m128i) __builtin_ia32_selectw_128(__M, - (__v8hi) _mm_set1_epi16(__A), - (__v8hi) __O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_set1_epi16 (__mmask8 __M, short __A) -{ - return (__m128i) __builtin_ia32_selectw_128(__M, - (__v8hi) _mm_set1_epi16(__A), - (__v8hi) _mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_permutexvar_epi16 (__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_permvarhi128((__v8hi) __B, (__v8hi) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_permutexvar_epi16 (__mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_permutexvar_epi16(__A, __B), - (__v8hi) _mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_permutexvar_epi16 (__m128i __W, __mmask8 __M, __m128i __A, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M, - (__v8hi)_mm_permutexvar_epi16(__A, __B), - (__v8hi)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_permutexvar_epi16 (__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_permvarhi256((__v16hi) __B, (__v16hi) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutexvar_epi16 (__mmask16 __M, __m256i __A, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_permutexvar_epi16(__A, __B), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_permutexvar_epi16 (__m256i __W, __mmask16 __M, __m256i __A, - __m256i __B) -{ - return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M, - (__v16hi)_mm256_permutexvar_epi16(__A, __B), - (__v16hi)__W); -} - -#define _mm_mask_alignr_epi8(W, U, A, B, N) \ - ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \ - (__v16qi)_mm_alignr_epi8((A), (B), (int)(N)), \ - (__v16qi)(__m128i)(W))) - -#define _mm_maskz_alignr_epi8(U, A, B, N) \ - ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \ - (__v16qi)_mm_alignr_epi8((A), (B), (int)(N)), \ - (__v16qi)_mm_setzero_si128())) - -#define _mm256_mask_alignr_epi8(W, U, A, B, N) \ - ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \ - (__v32qi)_mm256_alignr_epi8((A), (B), (int)(N)), \ - (__v32qi)(__m256i)(W))) - -#define _mm256_maskz_alignr_epi8(U, A, B, N) \ - ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \ - (__v32qi)_mm256_alignr_epi8((A), (B), (int)(N)), \ - (__v32qi)_mm256_setzero_si256())) - -#define _mm_dbsad_epu8(A, B, imm) \ - ((__m128i)__builtin_ia32_dbpsadbw128((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), (int)(imm))) - -#define _mm_mask_dbsad_epu8(W, U, A, B, imm) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_dbsad_epu8((A), (B), (imm)), \ - (__v8hi)(__m128i)(W))) - -#define _mm_maskz_dbsad_epu8(U, A, B, imm) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_dbsad_epu8((A), (B), (imm)), \ - (__v8hi)_mm_setzero_si128())) - -#define _mm256_dbsad_epu8(A, B, imm) \ - ((__m256i)__builtin_ia32_dbpsadbw256((__v32qi)(__m256i)(A), \ - (__v32qi)(__m256i)(B), (int)(imm))) - -#define _mm256_mask_dbsad_epu8(W, U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_dbsad_epu8((A), (B), (imm)), \ - (__v16hi)(__m256i)(W))) - -#define _mm256_maskz_dbsad_epu8(U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_dbsad_epu8((A), (B), (imm)), \ - (__v16hi)_mm256_setzero_si256())) - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_reduce_add_epi16(__m128i __W) { - return __builtin_reduce_add((__v8hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_reduce_mul_epi16(__m128i __W) { - return __builtin_reduce_mul((__v8hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_reduce_and_epi16(__m128i __W) { - return __builtin_reduce_and((__v8hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_reduce_or_epi16(__m128i __W) { - return __builtin_reduce_or((__v8hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_add_epi16( __mmask8 __M, __m128i __W) { - __W = _mm_maskz_mov_epi16(__M, __W); - return __builtin_reduce_add((__v8hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_mul_epi16( __mmask8 __M, __m128i __W) { - __W = _mm_mask_mov_epi16(_mm_set1_epi16(1), __M, __W); - return __builtin_reduce_mul((__v8hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_and_epi16( __mmask8 __M, __m128i __W) { - __W = _mm_mask_mov_epi16(_mm_set1_epi16(-1), __M, __W); - return __builtin_reduce_and((__v8hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_or_epi16(__mmask8 __M, __m128i __W) { - __W = _mm_maskz_mov_epi16(__M, __W); - return __builtin_reduce_or((__v8hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_reduce_max_epi16(__m128i __V) { - return __builtin_reduce_max((__v8hi)__V); -} - -static __inline__ unsigned short __DEFAULT_FN_ATTRS128 -_mm_reduce_max_epu16(__m128i __V) { - return __builtin_reduce_max((__v8hu)__V); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_reduce_min_epi16(__m128i __V) { - return __builtin_reduce_min((__v8hi)__V); -} - -static __inline__ unsigned short __DEFAULT_FN_ATTRS128 -_mm_reduce_min_epu16(__m128i __V) { - return __builtin_reduce_min((__v8hu)__V); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_max_epi16(__mmask16 __M, __m128i __V) { - __V = _mm_mask_mov_epi16(_mm_set1_epi16(-32767-1), __M, __V); - return __builtin_reduce_max((__v8hi)__V); -} - -static __inline__ unsigned short __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_max_epu16(__mmask16 __M, __m128i __V) { - __V = _mm_maskz_mov_epi16(__M, __V); - return __builtin_reduce_max((__v8hu)__V); -} - -static __inline__ short __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_min_epi16(__mmask16 __M, __m128i __V) { - __V = _mm_mask_mov_epi16(_mm_set1_epi16(32767), __M, __V); - return __builtin_reduce_min((__v8hi)__V); -} - -static __inline__ unsigned short __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_min_epu16(__mmask16 __M, __m128i __V) { - __V = _mm_mask_mov_epi16(_mm_set1_epi16(-1), __M, __V); - return __builtin_reduce_min((__v8hu)__V); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_reduce_add_epi16(__m256i __W) { - return __builtin_reduce_add((__v16hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_reduce_mul_epi16(__m256i __W) { - return __builtin_reduce_mul((__v16hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_reduce_and_epi16(__m256i __W) { - return __builtin_reduce_and((__v16hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_reduce_or_epi16(__m256i __W) { - return __builtin_reduce_or((__v16hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_add_epi16( __mmask16 __M, __m256i __W) { - __W = _mm256_maskz_mov_epi16(__M, __W); - return __builtin_reduce_add((__v16hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_mul_epi16( __mmask16 __M, __m256i __W) { - __W = _mm256_mask_mov_epi16(_mm256_set1_epi16(1), __M, __W); - return __builtin_reduce_mul((__v16hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_and_epi16( __mmask16 __M, __m256i __W) { - __W = _mm256_mask_mov_epi16(_mm256_set1_epi16(-1), __M, __W); - return __builtin_reduce_and((__v16hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_or_epi16(__mmask16 __M, __m256i __W) { - __W = _mm256_maskz_mov_epi16(__M, __W); - return __builtin_reduce_or((__v16hi)__W); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_reduce_max_epi16(__m256i __V) { - return __builtin_reduce_max((__v16hi)__V); -} - -static __inline__ unsigned short __DEFAULT_FN_ATTRS256 -_mm256_reduce_max_epu16(__m256i __V) { - return __builtin_reduce_max((__v16hu)__V); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_reduce_min_epi16(__m256i __V) { - return __builtin_reduce_min((__v16hi)__V); -} - -static __inline__ unsigned short __DEFAULT_FN_ATTRS256 -_mm256_reduce_min_epu16(__m256i __V) { - return __builtin_reduce_min((__v16hu)__V); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_max_epi16(__mmask16 __M, __m256i __V) { - __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(-32767-1), __M, __V); - return __builtin_reduce_max((__v16hi)__V); -} - -static __inline__ unsigned short __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_max_epu16(__mmask16 __M, __m256i __V) { - __V = _mm256_maskz_mov_epi16(__M, __V); - return __builtin_reduce_max((__v16hu)__V); -} - -static __inline__ short __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_min_epi16(__mmask16 __M, __m256i __V) { - __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(32767), __M, __V); - return __builtin_reduce_min((__v16hi)__V); -} - -static __inline__ unsigned short __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_min_epu16(__mmask16 __M, __m256i __V) { - __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(-1), __M, __V); - return __builtin_reduce_min((__v16hu)__V); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_reduce_add_epi8(__m128i __W) { - return __builtin_reduce_add((__v16qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_reduce_mul_epi8(__m128i __W) { - return __builtin_reduce_mul((__v16qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_reduce_and_epi8(__m128i __W) { - return __builtin_reduce_and((__v16qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_reduce_or_epi8(__m128i __W) { - return __builtin_reduce_or((__v16qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_add_epi8(__mmask16 __M, __m128i __W) { - __W = _mm_maskz_mov_epi8(__M, __W); - return __builtin_reduce_add((__v16qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_mul_epi8(__mmask16 __M, __m128i __W) { - __W = _mm_mask_mov_epi8(_mm_set1_epi8(1), __M, __W); - return __builtin_reduce_mul((__v16qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_and_epi8(__mmask16 __M, __m128i __W) { - __W = _mm_mask_mov_epi8(_mm_set1_epi8(-1), __M, __W); - return __builtin_reduce_and((__v16qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_or_epi8(__mmask16 __M, __m128i __W) { - __W = _mm_maskz_mov_epi8(__M, __W); - return __builtin_reduce_or((__v16qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_reduce_max_epi8(__m128i __V) { - return __builtin_reduce_max((__v16qs)__V); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS128 -_mm_reduce_max_epu8(__m128i __V) { - return __builtin_reduce_max((__v16qu)__V); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_reduce_min_epi8(__m128i __V) { - return __builtin_reduce_min((__v16qs)__V); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS128 -_mm_reduce_min_epu8(__m128i __V) { - return __builtin_reduce_min((__v16qu)__V); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_max_epi8(__mmask16 __M, __m128i __V) { - __V = _mm_mask_mov_epi8(_mm_set1_epi8(-127-1), __M, __V); - return __builtin_reduce_max((__v16qs)__V); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_max_epu8(__mmask16 __M, __m128i __V) { - __V = _mm_maskz_mov_epi8(__M, __V); - return __builtin_reduce_max((__v16qu)__V); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_min_epi8(__mmask16 __M, __m128i __V) { - __V = _mm_mask_mov_epi8(_mm_set1_epi8(127), __M, __V); - return __builtin_reduce_min((__v16qs)__V); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS128 -_mm_mask_reduce_min_epu8(__mmask16 __M, __m128i __V) { - __V = _mm_mask_mov_epi8(_mm_set1_epi8(-1), __M, __V); - return __builtin_reduce_min((__v16qu)__V); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_reduce_add_epi8(__m256i __W) { - return __builtin_reduce_add((__v32qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_reduce_mul_epi8(__m256i __W) { - return __builtin_reduce_mul((__v32qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_reduce_and_epi8(__m256i __W) { - return __builtin_reduce_and((__v32qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_reduce_or_epi8(__m256i __W) { - return __builtin_reduce_or((__v32qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_add_epi8(__mmask32 __M, __m256i __W) { - __W = _mm256_maskz_mov_epi8(__M, __W); - return __builtin_reduce_add((__v32qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_mul_epi8(__mmask32 __M, __m256i __W) { - __W = _mm256_mask_mov_epi8(_mm256_set1_epi8(1), __M, __W); - return __builtin_reduce_mul((__v32qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_and_epi8(__mmask32 __M, __m256i __W) { - __W = _mm256_mask_mov_epi8(_mm256_set1_epi8(-1), __M, __W); - return __builtin_reduce_and((__v32qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_or_epi8(__mmask32 __M, __m256i __W) { - __W = _mm256_maskz_mov_epi8(__M, __W); - return __builtin_reduce_or((__v32qs)__W); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_reduce_max_epi8(__m256i __V) { - return __builtin_reduce_max((__v32qs)__V); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS256 -_mm256_reduce_max_epu8(__m256i __V) { - return __builtin_reduce_max((__v32qu)__V); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_reduce_min_epi8(__m256i __V) { - return __builtin_reduce_min((__v32qs)__V); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS256 -_mm256_reduce_min_epu8(__m256i __V) { - return __builtin_reduce_min((__v32qu)__V); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_max_epi8(__mmask32 __M, __m256i __V) { - __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(-127-1), __M, __V); - return __builtin_reduce_max((__v32qs)__V); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_max_epu8(__mmask32 __M, __m256i __V) { - __V = _mm256_maskz_mov_epi8(__M, __V); - return __builtin_reduce_max((__v32qu)__V); -} - -static __inline__ signed char __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_min_epi8(__mmask32 __M, __m256i __V) { - __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(127), __M, __V); - return __builtin_reduce_min((__v32qs)__V); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS256 -_mm256_mask_reduce_min_epu8(__mmask32 __M, __m256i __V) { - __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(-1), __M, __V); - return __builtin_reduce_min((__v32qu)__V); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif /* __AVX512VLBWINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlbwintrin.h.blob deleted file mode 100644 index 7b7afa9d43fbedcab547a837ba680cb23970b5d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 235651 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 UvPFOeEI0v`owua2Lwe!=07HEoQUCw| diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h deleted file mode 100644 index cc8b7252..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h +++ /dev/null @@ -1,225 +0,0 @@ -/*===---- avx512vlcdintrin.h - AVX512VL and AVX512CD intrinsics ------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vlcdintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VLCDINTRIN_H -#define __AVX512VLCDINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512cd"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512cd"), __min_vector_width__(256))) - - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_broadcastmb_epi64 (__mmask8 __A) -{ - return (__m128i) _mm_set1_epi64x((long long) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcastmb_epi64 (__mmask8 __A) -{ - return (__m256i) _mm256_set1_epi64x((long long)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_broadcastmw_epi32 (__mmask16 __A) -{ - return (__m128i) _mm_set1_epi32((int)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcastmw_epi32 (__mmask16 __A) -{ - return (__m256i) _mm256_set1_epi32((int)__A); -} - - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_conflict_epi64 (__m128i __A) -{ - return (__m128i) __builtin_ia32_vpconflictdi_128 ((__v2di) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_conflict_epi64 (__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_conflict_epi64(__A), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_conflict_epi64 (__mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_conflict_epi64(__A), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_conflict_epi64 (__m256i __A) -{ - return (__m256i) __builtin_ia32_vpconflictdi_256 ((__v4di) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_conflict_epi64 (__m256i __W, __mmask8 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_conflict_epi64(__A), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_conflict_epi64 (__mmask8 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_conflict_epi64(__A), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_conflict_epi32 (__m128i __A) -{ - return (__m128i) __builtin_ia32_vpconflictsi_128 ((__v4si) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_conflict_epi32 (__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_conflict_epi32(__A), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_conflict_epi32 (__mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_conflict_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_conflict_epi32 (__m256i __A) -{ - return (__m256i) __builtin_ia32_vpconflictsi_256 ((__v8si) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_conflict_epi32 (__m256i __W, __mmask8 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_conflict_epi32(__A), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_conflict_epi32 (__mmask8 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_conflict_epi32(__A), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_lzcnt_epi32 (__m128i __A) -{ - return (__m128i) __builtin_ia32_vplzcntd_128 ((__v4si) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_lzcnt_epi32 (__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_lzcnt_epi32(__A), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_lzcnt_epi32 (__mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_lzcnt_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_lzcnt_epi32 (__m256i __A) -{ - return (__m256i) __builtin_ia32_vplzcntd_256 ((__v8si) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_lzcnt_epi32 (__m256i __W, __mmask8 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_lzcnt_epi32(__A), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_lzcnt_epi32 (__mmask8 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_lzcnt_epi32(__A), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_lzcnt_epi64 (__m128i __A) -{ - return (__m128i) __builtin_ia32_vplzcntq_128 ((__v2di) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_lzcnt_epi64 (__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_lzcnt_epi64(__A), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_lzcnt_epi64 (__mmask8 __U, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_lzcnt_epi64(__A), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_lzcnt_epi64 (__m256i __A) -{ - return (__m256i) __builtin_ia32_vplzcntq_256 ((__v4di) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_lzcnt_epi64 (__m256i __W, __mmask8 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_lzcnt_epi64(__A), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_lzcnt_epi64 (__mmask8 __U, __m256i __A) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_lzcnt_epi64(__A), - (__v4di)_mm256_setzero_si256()); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif /* __AVX512VLCDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlcdintrin.h.blob deleted file mode 100644 index 1ace3955e79a4f0afb5ad5b96189ead328b3c1a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22432 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h deleted file mode 100644 index 713e1a18..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h +++ /dev/null @@ -1,1167 +0,0 @@ -/*===---- avx512vldqintrin.h - AVX512VL and AVX512DQ intrinsics ------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <avx512vldqintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VLDQINTRIN_H -#define __AVX512VLDQINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512dq"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512dq"), __min_vector_width__(256))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mullo_epi64 (__m256i __A, __m256i __B) { - return (__m256i) ((__v4du) __A * (__v4du) __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mullo_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_mullo_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mullo_epi64(__mmask8 __U, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_mullo_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mullo_epi64 (__m128i __A, __m128i __B) { - return (__m128i) ((__v2du) __A * (__v2du) __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mullo_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_mullo_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mullo_epi64(__mmask8 __U, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_mullo_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_andnot_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_andnot_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_andnot_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_andnot_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_andnot_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_andnot_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_andnot_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_andnot_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_andnot_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_andnot_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_andnot_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_andnot_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_andnot_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_andnot_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_andnot_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_andnot_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_and_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_and_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_and_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_and_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_and_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_and_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_and_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_and_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_and_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_and_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_and_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_and_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_and_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_and_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_and_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_and_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_xor_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_xor_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_xor_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_xor_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_xor_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_xor_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_xor_pd (__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_xor_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_xor_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_xor_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_xor_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_xor_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_xor_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_xor_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_xor_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_xor_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_or_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_or_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_or_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_or_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_or_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_or_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_or_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_or_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_or_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_or_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_or_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_or_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_or_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_or_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_or_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_or_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtpd_epi64 (__m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtpd_epi64 (__mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtpd_epi64 (__m256d __A) { - return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A) { - return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtpd_epi64 (__mmask8 __U, __m256d __A) { - return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtpd_epu64 (__m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtpd_epu64 (__mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtpd_epu64 (__m256d __A) { - return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A) { - return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtpd_epu64 (__mmask8 __U, __m256d __A) { - return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtps_epi64 (__m128 __A) { - return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtps_epi64 (__m128i __W, __mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtps_epi64 (__m128 __A) { - return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtps_epi64 (__m256i __W, __mmask8 __U, __m128 __A) { - return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A) { - return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtps_epu64 (__m128 __A) { - return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtps_epu64 (__m128i __W, __mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtps_epu64 (__m128 __A) { - return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtps_epu64 (__m256i __W, __mmask8 __U, __m128 __A) { - return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A) { - return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_cvtepi64_pd (__m128i __A) { - return (__m128d)__builtin_convertvector((__v2di)__A, __v2df); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_pd (__m128d __W, __mmask8 __U, __m128i __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_cvtepi64_pd(__A), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi64_pd (__mmask8 __U, __m128i __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_cvtepi64_pd(__A), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_cvtepi64_pd (__m256i __A) { - return (__m256d)__builtin_convertvector((__v4di)__A, __v4df); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_pd (__m256d __W, __mmask8 __U, __m256i __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_cvtepi64_pd(__A), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi64_pd (__mmask8 __U, __m256i __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_cvtepi64_pd(__A), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtepi64_ps (__m128i __A) { - return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A, - (__v4sf) _mm_setzero_ps(), - (__mmask8) -1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m128i __A) { - return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi64_ps (__mmask8 __U, __m128i __A) { - return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A, - (__v4sf) _mm_setzero_ps(), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS256 -_mm256_cvtepi64_ps (__m256i __A) { - return (__m128)__builtin_convertvector((__v4di)__A, __v4sf); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m256i __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm256_cvtepi64_ps(__A), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi64_ps (__mmask8 __U, __m256i __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm256_cvtepi64_ps(__A), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvttpd_epi64 (__m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttpd_epi64 (__mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttpd_epi64 (__m256d __A) { - return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A) { - return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttpd_epi64 (__mmask8 __U, __m256d __A) { - return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvttpd_epu64 (__m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttpd_epu64 (__mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttpd_epu64 (__m256d __A) { - return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A) { - return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttpd_epu64 (__mmask8 __U, __m256d __A) { - return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvttps_epi64 (__m128 __A) { - return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttps_epi64 (__m128i __W, __mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttps_epi64 (__m128 __A) { - return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttps_epi64 (__m256i __W, __mmask8 __U, __m128 __A) { - return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A) { - return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvttps_epu64 (__m128 __A) { - return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttps_epu64 (__m128i __W, __mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A, - (__v2di) _mm_setzero_si128(), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttps_epu64 (__m128 __A) { - return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttps_epu64 (__m256i __W, __mmask8 __U, __m128 __A) { - return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A) { - return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A, - (__v4di) _mm256_setzero_si256(), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_cvtepu64_pd (__m128i __A) { - return (__m128d)__builtin_convertvector((__v2du)__A, __v2df); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepu64_pd (__m128d __W, __mmask8 __U, __m128i __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_cvtepu64_pd(__A), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepu64_pd (__mmask8 __U, __m128i __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_cvtepu64_pd(__A), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_cvtepu64_pd (__m256i __A) { - return (__m256d)__builtin_convertvector((__v4du)__A, __v4df); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepu64_pd (__m256d __W, __mmask8 __U, __m256i __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_cvtepu64_pd(__A), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepu64_pd (__mmask8 __U, __m256i __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_cvtepu64_pd(__A), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtepu64_ps (__m128i __A) { - return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A, - (__v4sf) _mm_setzero_ps(), - (__mmask8) -1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m128i __A) { - return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepu64_ps (__mmask8 __U, __m128i __A) { - return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A, - (__v4sf) _mm_setzero_ps(), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS256 -_mm256_cvtepu64_ps (__m256i __A) { - return (__m128)__builtin_convertvector((__v4du)__A, __v4sf); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m256i __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm256_cvtepu64_ps(__A), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepu64_ps (__mmask8 __U, __m256i __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm256_cvtepu64_ps(__A), - (__v4sf)_mm_setzero_ps()); -} - -#define _mm_range_pd(A, B, C) \ - ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), (int)(C), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1)) - -#define _mm_mask_range_pd(W, U, A, B, C) \ - ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), (int)(C), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U))) - -#define _mm_maskz_range_pd(U, A, B, C) \ - ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), (int)(C), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm256_range_pd(A, B, C) \ - ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \ - (__v4df)(__m256d)(B), (int)(C), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)-1)) - -#define _mm256_mask_range_pd(W, U, A, B, C) \ - ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \ - (__v4df)(__m256d)(B), (int)(C), \ - (__v4df)(__m256d)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_range_pd(U, A, B, C) \ - ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \ - (__v4df)(__m256d)(B), (int)(C), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm_range_ps(A, B, C) \ - ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), (int)(C), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1)) - -#define _mm_mask_range_ps(W, U, A, B, C) \ - ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), (int)(C), \ - (__v4sf)(__m128)(W), (__mmask8)(U))) - -#define _mm_maskz_range_ps(U, A, B, C) \ - ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), (int)(C), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U))) - -#define _mm256_range_ps(A, B, C) \ - ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \ - (__v8sf)(__m256)(B), (int)(C), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)-1)) - -#define _mm256_mask_range_ps(W, U, A, B, C) \ - ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \ - (__v8sf)(__m256)(B), (int)(C), \ - (__v8sf)(__m256)(W), (__mmask8)(U))) - -#define _mm256_maskz_range_ps(U, A, B, C) \ - ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \ - (__v8sf)(__m256)(B), (int)(C), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)(U))) - -#define _mm_reduce_pd(A, B) \ - ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1)) - -#define _mm_mask_reduce_pd(W, U, A, B) \ - ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U))) - -#define _mm_maskz_reduce_pd(U, A, B) \ - ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm256_reduce_pd(A, B) \ - ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)-1)) - -#define _mm256_mask_reduce_pd(W, U, A, B) \ - ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \ - (__v4df)(__m256d)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_reduce_pd(U, A, B) \ - ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm_reduce_ps(A, B) \ - ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1)) - -#define _mm_mask_reduce_ps(W, U, A, B) \ - ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U))) - -#define _mm_maskz_reduce_ps(U, A, B) \ - ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U))) - -#define _mm256_reduce_ps(A, B) \ - ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)-1)) - -#define _mm256_mask_reduce_ps(W, U, A, B) \ - ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \ - (__v8sf)(__m256)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_reduce_ps(U, A, B) \ - ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)(U))) - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_movepi32_mask (__m128i __A) -{ - return (__mmask8) __builtin_ia32_cvtd2mask128 ((__v4si) __A); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_movepi32_mask (__m256i __A) -{ - return (__mmask8) __builtin_ia32_cvtd2mask256 ((__v8si) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_movm_epi32 (__mmask8 __A) -{ - return (__m128i) __builtin_ia32_cvtmask2d128 (__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_movm_epi32 (__mmask8 __A) -{ - return (__m256i) __builtin_ia32_cvtmask2d256 (__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_movm_epi64 (__mmask8 __A) -{ - return (__m128i) __builtin_ia32_cvtmask2q128 (__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_movm_epi64 (__mmask8 __A) -{ - return (__m256i) __builtin_ia32_cvtmask2q256 (__A); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_movepi64_mask (__m128i __A) -{ - return (__mmask8) __builtin_ia32_cvtq2mask128 ((__v2di) __A); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_movepi64_mask (__m256i __A) -{ - return (__mmask8) __builtin_ia32_cvtq2mask256 ((__v4di) __A); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_broadcast_f32x2 (__m128 __A) -{ - return (__m256)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A, - 0, 1, 0, 1, 0, 1, 0, 1); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcast_f32x2 (__m256 __O, __mmask8 __M, __m128 __A) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__M, - (__v8sf)_mm256_broadcast_f32x2(__A), - (__v8sf)__O); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcast_f32x2 (__mmask8 __M, __m128 __A) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__M, - (__v8sf)_mm256_broadcast_f32x2(__A), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_broadcast_f64x2(__m128d __A) -{ - return (__m256d)__builtin_shufflevector((__v2df)__A, (__v2df)__A, - 0, 1, 0, 1); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcast_f64x2(__m256d __O, __mmask8 __M, __m128d __A) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__M, - (__v4df)_mm256_broadcast_f64x2(__A), - (__v4df)__O); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcast_f64x2 (__mmask8 __M, __m128d __A) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__M, - (__v4df)_mm256_broadcast_f64x2(__A), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_broadcast_i32x2 (__m128i __A) -{ - return (__m128i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, - 0, 1, 0, 1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_broadcast_i32x2 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_broadcast_i32x2(__A), - (__v4si)__O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_broadcast_i32x2(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcast_i32x2 (__m128i __A) -{ - return (__m256i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, - 0, 1, 0, 1, 0, 1, 0, 1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcast_i32x2 (__m256i __O, __mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_broadcast_i32x2(__A), - (__v8si)__O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_broadcast_i32x2(__A), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcast_i64x2(__m128i __A) -{ - return (__m256i)__builtin_shufflevector((__v2di)__A, (__v2di)__A, - 0, 1, 0, 1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcast_i64x2(__m256i __O, __mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_broadcast_i64x2(__A), - (__v4di)__O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcast_i64x2 (__mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_broadcast_i64x2(__A), - (__v4di)_mm256_setzero_si256()); -} - -#define _mm256_extractf64x2_pd(A, imm) \ - ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \ - (int)(imm), \ - (__v2df)_mm_undefined_pd(), \ - (__mmask8)-1)) - -#define _mm256_mask_extractf64x2_pd(W, U, A, imm) \ - ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \ - (int)(imm), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_extractf64x2_pd(U, A, imm) \ - ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \ - (int)(imm), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm256_extracti64x2_epi64(A, imm) \ - ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \ - (int)(imm), \ - (__v2di)_mm_undefined_si128(), \ - (__mmask8)-1)) - -#define _mm256_mask_extracti64x2_epi64(W, U, A, imm) \ - ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \ - (int)(imm), \ - (__v2di)(__m128i)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_extracti64x2_epi64(U, A, imm) \ - ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \ - (int)(imm), \ - (__v2di)_mm_setzero_si128(), \ - (__mmask8)(U))) - -#define _mm256_insertf64x2(A, B, imm) \ - ((__m256d)__builtin_ia32_insertf64x2_256((__v4df)(__m256d)(A), \ - (__v2df)(__m128d)(B), (int)(imm))) - -#define _mm256_mask_insertf64x2(W, U, A, B, imm) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_insertf64x2((A), (B), (imm)), \ - (__v4df)(__m256d)(W))) - -#define _mm256_maskz_insertf64x2(U, A, B, imm) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_insertf64x2((A), (B), (imm)), \ - (__v4df)_mm256_setzero_pd())) - -#define _mm256_inserti64x2(A, B, imm) \ - ((__m256i)__builtin_ia32_inserti64x2_256((__v4di)(__m256i)(A), \ - (__v2di)(__m128i)(B), (int)(imm))) - -#define _mm256_mask_inserti64x2(W, U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_inserti64x2((A), (B), (imm)), \ - (__v4di)(__m256i)(W))) - -#define _mm256_maskz_inserti64x2(U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_inserti64x2((A), (B), (imm)), \ - (__v4di)_mm256_setzero_si256())) - -#define _mm_mask_fpclass_pd_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclasspd128_mask((__v2df)(__m128d)(A), (int)(imm), \ - (__mmask8)(U))) - -#define _mm_fpclass_pd_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclasspd128_mask((__v2df)(__m128d)(A), (int)(imm), \ - (__mmask8)-1)) - -#define _mm256_mask_fpclass_pd_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclasspd256_mask((__v4df)(__m256d)(A), (int)(imm), \ - (__mmask8)(U))) - -#define _mm256_fpclass_pd_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclasspd256_mask((__v4df)(__m256d)(A), (int)(imm), \ - (__mmask8)-1)) - -#define _mm_mask_fpclass_ps_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclassps128_mask((__v4sf)(__m128)(A), (int)(imm), \ - (__mmask8)(U))) - -#define _mm_fpclass_ps_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclassps128_mask((__v4sf)(__m128)(A), (int)(imm), \ - (__mmask8)-1)) - -#define _mm256_mask_fpclass_ps_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclassps256_mask((__v8sf)(__m256)(A), (int)(imm), \ - (__mmask8)(U))) - -#define _mm256_fpclass_ps_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclassps256_mask((__v8sf)(__m256)(A), (int)(imm), \ - (__mmask8)-1)) - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vldqintrin.h.blob deleted file mode 100644 index 525716f8b247a8aab949e7eb1a4e037822a5bc6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83998 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 bu)`x3_r~J6o*l50fh8I2#QxAu+8_FV-L4{W diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h deleted file mode 100644 index d4a7d1b1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h +++ /dev/null @@ -1,2071 +0,0 @@ -/*===---------- avx512vlfp16intrin.h - AVX512-FP16 intrinsics --------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error \ - "Never use <avx512vlfp16intrin.h> directly; include <immintrin.h> instead." -#endif - -#ifdef __SSE2__ - -#ifndef __AVX512VLFP16INTRIN_H -#define __AVX512VLFP16INTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, \ - __target__("avx512fp16, avx512vl"), \ - __min_vector_width__(256))) -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, \ - __target__("avx512fp16, avx512vl"), \ - __min_vector_width__(128))) - -static __inline__ _Float16 __DEFAULT_FN_ATTRS128 _mm_cvtsh_h(__m128h __a) { - return __a[0]; -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS256 _mm256_cvtsh_h(__m256h __a) { - return __a[0]; -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_set_sh(_Float16 __h) { - return __extension__(__m128h){__h, 0, 0, 0, 0, 0, 0, 0}; -} - -static __inline __m128h __DEFAULT_FN_ATTRS128 _mm_set1_ph(_Float16 __h) { - return (__m128h)(__v8hf){__h, __h, __h, __h, __h, __h, __h, __h}; -} - -static __inline __m256h __DEFAULT_FN_ATTRS256 _mm256_set1_ph(_Float16 __h) { - return (__m256h)(__v16hf){__h, __h, __h, __h, __h, __h, __h, __h, - __h, __h, __h, __h, __h, __h, __h, __h}; -} - -static __inline __m128h __DEFAULT_FN_ATTRS128 -_mm_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4, - _Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8) { - return (__m128h)(__v8hf){__h8, __h7, __h6, __h5, __h4, __h3, __h2, __h1}; -} - -static __inline __m256h __DEFAULT_FN_ATTRS256 -_mm256_set1_pch(_Float16 _Complex h) { - return (__m256h)_mm256_set1_ps(__builtin_bit_cast(float, h)); -} - -static __inline __m128h __DEFAULT_FN_ATTRS128 -_mm_set1_pch(_Float16 _Complex h) { - return (__m128h)_mm_set1_ps(__builtin_bit_cast(float, h)); -} - -static __inline __m256h __DEFAULT_FN_ATTRS256 -_mm256_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4, - _Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8, - _Float16 __h9, _Float16 __h10, _Float16 __h11, _Float16 __h12, - _Float16 __h13, _Float16 __h14, _Float16 __h15, _Float16 __h16) { - return (__m256h)(__v16hf){__h16, __h15, __h14, __h13, __h12, __h11, - __h10, __h9, __h8, __h7, __h6, __h5, - __h4, __h3, __h2, __h1}; -} - -#define _mm_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8) \ - _mm_set_ph((h8), (h7), (h6), (h5), (h4), (h3), (h2), (h1)) - -#define _mm256_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8, h9, h10, h11, h12, h13, \ - h14, h15, h16) \ - _mm256_set_ph((h16), (h15), (h14), (h13), (h12), (h11), (h10), (h9), (h8), \ - (h7), (h6), (h5), (h4), (h3), (h2), (h1)) - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_add_ph(__m256h __A, - __m256h __B) { - return (__m256h)((__v16hf)__A + (__v16hf)__B); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_add_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - __U, (__v16hf)_mm256_add_ph(__A, __B), (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_add_ph(__mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - __U, (__v16hf)_mm256_add_ph(__A, __B), (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_add_ph(__m128h __A, - __m128h __B) { - return (__m128h)((__v8hf)__A + (__v8hf)__B); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_add_ph(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_add_ph(__A, __B), - (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_add_ph(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_add_ph(__A, __B), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_sub_ph(__m256h __A, - __m256h __B) { - return (__m256h)((__v16hf)__A - (__v16hf)__B); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_sub_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - __U, (__v16hf)_mm256_sub_ph(__A, __B), (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_sub_ph(__mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - __U, (__v16hf)_mm256_sub_ph(__A, __B), (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sub_ph(__m128h __A, - __m128h __B) { - return (__m128h)((__v8hf)__A - (__v8hf)__B); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sub_ph(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_sub_ph(__A, __B), - (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sub_ph(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_sub_ph(__A, __B), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_mul_ph(__m256h __A, - __m256h __B) { - return (__m256h)((__v16hf)__A * (__v16hf)__B); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_mul_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - __U, (__v16hf)_mm256_mul_ph(__A, __B), (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_mul_ph(__mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - __U, (__v16hf)_mm256_mul_ph(__A, __B), (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mul_ph(__m128h __A, - __m128h __B) { - return (__m128h)((__v8hf)__A * (__v8hf)__B); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_mul_ph(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_mul_ph(__A, __B), - (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_mul_ph(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_mul_ph(__A, __B), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_div_ph(__m256h __A, - __m256h __B) { - return (__m256h)((__v16hf)__A / (__v16hf)__B); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_div_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - __U, (__v16hf)_mm256_div_ph(__A, __B), (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_div_ph(__mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - __U, (__v16hf)_mm256_div_ph(__A, __B), (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_div_ph(__m128h __A, - __m128h __B) { - return (__m128h)((__v8hf)__A / (__v8hf)__B); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_div_ph(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_div_ph(__A, __B), - (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_div_ph(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128(__U, (__v8hf)_mm_div_ph(__A, __B), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_min_ph(__m256h __A, - __m256h __B) { - return (__m256h)__builtin_ia32_minph256((__v16hf)__A, (__v16hf)__B); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_min_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - (__v16hf)__builtin_ia32_minph256((__v16hf)__A, (__v16hf)__B), - (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_ph(__mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - (__v16hf)__builtin_ia32_minph256((__v16hf)__A, (__v16hf)__B), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_min_ph(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_minph128((__v8hf)__A, (__v8hf)__B); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_min_ph(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)__builtin_ia32_minph128((__v8hf)__A, (__v8hf)__B), - (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_min_ph(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)__builtin_ia32_minph128((__v8hf)__A, (__v8hf)__B), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_max_ph(__m256h __A, - __m256h __B) { - return (__m256h)__builtin_ia32_maxph256((__v16hf)__A, (__v16hf)__B); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_max_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - (__v16hf)__builtin_ia32_maxph256((__v16hf)__A, (__v16hf)__B), - (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_ph(__mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - (__v16hf)__builtin_ia32_maxph256((__v16hf)__A, (__v16hf)__B), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_max_ph(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_maxph128((__v8hf)__A, (__v8hf)__B); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_max_ph(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)__builtin_ia32_maxph128((__v8hf)__A, (__v8hf)__B), - (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_max_ph(__mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)__builtin_ia32_maxph128((__v8hf)__A, (__v8hf)__B), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_abs_ph(__m256h __A) { - return (__m256h)_mm256_and_epi32(_mm256_set1_epi32(0x7FFF7FFF), (__m256i)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_abs_ph(__m128h __A) { - return (__m128h)_mm_and_epi32(_mm_set1_epi32(0x7FFF7FFF), (__m128i)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_conj_pch(__m256h __A) { - return (__m256h)_mm256_xor_ps((__m256)__A, _mm256_set1_ps(-0.0f)); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_conj_pch(__m256h __W, __mmask8 __U, __m256h __A) { - return (__m256h)__builtin_ia32_selectps_256( - (__mmask8)__U, (__v8sf)_mm256_conj_pch(__A), (__v8sf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_conj_pch(__mmask8 __U, __m256h __A) { - return (__m256h)__builtin_ia32_selectps_256( - (__mmask8)__U, (__v8sf)_mm256_conj_pch(__A), (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_conj_pch(__m128h __A) { - return (__m128h)_mm_xor_ps((__m128)__A, _mm_set1_ps(-0.0f)); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_conj_pch(__m128h __W, - __mmask8 __U, - __m128h __A) { - return (__m128h)__builtin_ia32_selectps_128( - (__mmask8)__U, (__v4sf)_mm_conj_pch(__A), (__v4sf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_conj_pch(__mmask8 __U, __m128h __A) { - return (__m128h)__builtin_ia32_selectps_128( - (__mmask8)__U, (__v4sf)_mm_conj_pch(__A), (__v4sf)_mm_setzero_ps()); -} - -#define _mm256_cmp_ph_mask(a, b, p) \ - ((__mmask16)__builtin_ia32_cmpph256_mask( \ - (__v16hf)(__m256h)(a), (__v16hf)(__m256h)(b), (int)(p), (__mmask16)-1)) - -#define _mm256_mask_cmp_ph_mask(m, a, b, p) \ - ((__mmask16)__builtin_ia32_cmpph256_mask( \ - (__v16hf)(__m256h)(a), (__v16hf)(__m256h)(b), (int)(p), (__mmask16)(m))) - -#define _mm_cmp_ph_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpph128_mask( \ - (__v8hf)(__m128h)(a), (__v8hf)(__m128h)(b), (int)(p), (__mmask8)-1)) - -#define _mm_mask_cmp_ph_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpph128_mask( \ - (__v8hf)(__m128h)(a), (__v8hf)(__m128h)(b), (int)(p), (__mmask8)(m))) - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_rcp_ph(__m256h __A) { - return (__m256h)__builtin_ia32_rcpph256_mask( - (__v16hf)__A, (__v16hf)_mm256_undefined_ph(), (__mmask16)-1); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_rcp_ph(__m256h __W, __mmask16 __U, __m256h __A) { - return (__m256h)__builtin_ia32_rcpph256_mask((__v16hf)__A, (__v16hf)__W, - (__mmask16)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_rcp_ph(__mmask16 __U, __m256h __A) { - return (__m256h)__builtin_ia32_rcpph256_mask( - (__v16hf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_rcp_ph(__m128h __A) { - return (__m128h)__builtin_ia32_rcpph128_mask( - (__v8hf)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_rcp_ph(__m128h __W, - __mmask8 __U, - __m128h __A) { - return (__m128h)__builtin_ia32_rcpph128_mask((__v8hf)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_rcp_ph(__mmask8 __U, - __m128h __A) { - return (__m128h)__builtin_ia32_rcpph128_mask( - (__v8hf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_rsqrt_ph(__m256h __A) { - return (__m256h)__builtin_ia32_rsqrtph256_mask( - (__v16hf)__A, (__v16hf)_mm256_undefined_ph(), (__mmask16)-1); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_rsqrt_ph(__m256h __W, __mmask16 __U, __m256h __A) { - return (__m256h)__builtin_ia32_rsqrtph256_mask((__v16hf)__A, (__v16hf)__W, - (__mmask16)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_rsqrt_ph(__mmask16 __U, __m256h __A) { - return (__m256h)__builtin_ia32_rsqrtph256_mask( - (__v16hf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_rsqrt_ph(__m128h __A) { - return (__m128h)__builtin_ia32_rsqrtph128_mask( - (__v8hf)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_rsqrt_ph(__m128h __W, - __mmask8 __U, - __m128h __A) { - return (__m128h)__builtin_ia32_rsqrtph128_mask((__v8hf)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_rsqrt_ph(__mmask8 __U, __m128h __A) { - return (__m128h)__builtin_ia32_rsqrtph128_mask( - (__v8hf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_getexp_ph(__m128h __A) { - return (__m128h)__builtin_ia32_getexpph128_mask( - (__v8hf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_getexp_ph(__m128h __W, __mmask8 __U, __m128h __A) { - return (__m128h)__builtin_ia32_getexpph128_mask((__v8hf)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_getexp_ph(__mmask8 __U, __m128h __A) { - return (__m128h)__builtin_ia32_getexpph128_mask( - (__v8hf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_getexp_ph(__m256h __A) { - return (__m256h)__builtin_ia32_getexpph256_mask( - (__v16hf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_getexp_ph(__m256h __W, __mmask16 __U, __m256h __A) { - return (__m256h)__builtin_ia32_getexpph256_mask((__v16hf)__A, (__v16hf)__W, - (__mmask16)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_getexp_ph(__mmask16 __U, __m256h __A) { - return (__m256h)__builtin_ia32_getexpph256_mask( - (__v16hf)__A, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U); -} - -#define _mm_getmant_ph(A, B, C) \ - ((__m128h)__builtin_ia32_getmantph128_mask( \ - (__v8hf)(__m128h)(A), (int)(((C) << 2) | (B)), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1)) - -#define _mm_mask_getmant_ph(W, U, A, B, C) \ - ((__m128h)__builtin_ia32_getmantph128_mask( \ - (__v8hf)(__m128h)(A), (int)(((C) << 2) | (B)), (__v8hf)(__m128h)(W), \ - (__mmask8)(U))) - -#define _mm_maskz_getmant_ph(U, A, B, C) \ - ((__m128h)__builtin_ia32_getmantph128_mask( \ - (__v8hf)(__m128h)(A), (int)(((C) << 2) | (B)), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U))) - -#define _mm256_getmant_ph(A, B, C) \ - ((__m256h)__builtin_ia32_getmantph256_mask( \ - (__v16hf)(__m256h)(A), (int)(((C) << 2) | (B)), \ - (__v16hf)_mm256_setzero_ph(), (__mmask16)-1)) - -#define _mm256_mask_getmant_ph(W, U, A, B, C) \ - ((__m256h)__builtin_ia32_getmantph256_mask( \ - (__v16hf)(__m256h)(A), (int)(((C) << 2) | (B)), (__v16hf)(__m256h)(W), \ - (__mmask16)(U))) - -#define _mm256_maskz_getmant_ph(U, A, B, C) \ - ((__m256h)__builtin_ia32_getmantph256_mask( \ - (__v16hf)(__m256h)(A), (int)(((C) << 2) | (B)), \ - (__v16hf)_mm256_setzero_ph(), (__mmask16)(U))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_scalef_ph(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_scalefph128_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_scalef_ph(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_scalefph128_mask((__v8hf)__A, (__v8hf)__B, - (__v8hf)__W, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_scalef_ph(__mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_scalefph128_mask( - (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_scalef_ph(__m256h __A, - __m256h __B) { - return (__m256h)__builtin_ia32_scalefph256_mask( - (__v16hf)__A, (__v16hf)__B, (__v16hf)_mm256_setzero_ph(), (__mmask16)-1); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_scalef_ph(__m256h __W, __mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_scalefph256_mask((__v16hf)__A, (__v16hf)__B, - (__v16hf)__W, (__mmask16)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_scalef_ph(__mmask16 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_scalefph256_mask( - (__v16hf)__A, (__v16hf)__B, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U); -} - -#define _mm_roundscale_ph(A, imm) \ - ((__m128h)__builtin_ia32_rndscaleph_128_mask( \ - (__v8hf)(__m128h)(A), (int)(imm), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1)) - -#define _mm_mask_roundscale_ph(W, U, A, imm) \ - ((__m128h)__builtin_ia32_rndscaleph_128_mask( \ - (__v8hf)(__m128h)(A), (int)(imm), (__v8hf)(__m128h)(W), (__mmask8)(U))) - -#define _mm_maskz_roundscale_ph(U, A, imm) \ - ((__m128h)__builtin_ia32_rndscaleph_128_mask( \ - (__v8hf)(__m128h)(A), (int)(imm), (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U))) - -#define _mm256_roundscale_ph(A, imm) \ - ((__m256h)__builtin_ia32_rndscaleph_256_mask( \ - (__v16hf)(__m256h)(A), (int)(imm), (__v16hf)_mm256_setzero_ph(), \ - (__mmask16)-1)) - -#define _mm256_mask_roundscale_ph(W, U, A, imm) \ - ((__m256h)__builtin_ia32_rndscaleph_256_mask( \ - (__v16hf)(__m256h)(A), (int)(imm), (__v16hf)(__m256h)(W), \ - (__mmask16)(U))) - -#define _mm256_maskz_roundscale_ph(U, A, imm) \ - ((__m256h)__builtin_ia32_rndscaleph_256_mask( \ - (__v16hf)(__m256h)(A), (int)(imm), (__v16hf)_mm256_setzero_ph(), \ - (__mmask16)(U))) - -#define _mm_reduce_ph(A, imm) \ - ((__m128h)__builtin_ia32_reduceph128_mask((__v8hf)(__m128h)(A), (int)(imm), \ - (__v8hf)_mm_setzero_ph(), \ - (__mmask8)-1)) - -#define _mm_mask_reduce_ph(W, U, A, imm) \ - ((__m128h)__builtin_ia32_reduceph128_mask( \ - (__v8hf)(__m128h)(A), (int)(imm), (__v8hf)(__m128h)(W), (__mmask8)(U))) - -#define _mm_maskz_reduce_ph(U, A, imm) \ - ((__m128h)__builtin_ia32_reduceph128_mask((__v8hf)(__m128h)(A), (int)(imm), \ - (__v8hf)_mm_setzero_ph(), \ - (__mmask8)(U))) - -#define _mm256_reduce_ph(A, imm) \ - ((__m256h)__builtin_ia32_reduceph256_mask((__v16hf)(__m256h)(A), (int)(imm), \ - (__v16hf)_mm256_setzero_ph(), \ - (__mmask16)-1)) - -#define _mm256_mask_reduce_ph(W, U, A, imm) \ - ((__m256h)__builtin_ia32_reduceph256_mask((__v16hf)(__m256h)(A), (int)(imm), \ - (__v16hf)(__m256h)(W), \ - (__mmask16)(U))) - -#define _mm256_maskz_reduce_ph(U, A, imm) \ - ((__m256h)__builtin_ia32_reduceph256_mask((__v16hf)(__m256h)(A), (int)(imm), \ - (__v16hf)_mm256_setzero_ph(), \ - (__mmask16)(U))) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sqrt_ph(__m128h __a) { - return __builtin_ia32_sqrtph((__v8hf)__a); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sqrt_ph(__m128h __W, - __mmask8 __U, - __m128h __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm_sqrt_ph(__A), (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sqrt_ph(__mmask8 __U, - __m128h __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm_sqrt_ph(__A), (__v8hf)_mm_setzero_ph()); -} - -static __inline __m256h __DEFAULT_FN_ATTRS256 _mm256_sqrt_ph(__m256h __a) { - return (__m256h)__builtin_ia32_sqrtph256((__v16hf)__a); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_sqrt_ph(__m256h __W, __mmask16 __U, __m256h __A) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, (__v16hf)_mm256_sqrt_ph(__A), (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_sqrt_ph(__mmask16 __U, __m256h __A) { - return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U, - (__v16hf)_mm256_sqrt_ph(__A), - (__v16hf)_mm256_setzero_ph()); -} - -#define _mm_mask_fpclass_ph_mask(U, A, imm) \ - ((__mmask8)__builtin_ia32_fpclassph128_mask((__v8hf)(__m128h)(A), \ - (int)(imm), (__mmask8)(U))) - -#define _mm_fpclass_ph_mask(A, imm) \ - ((__mmask8)__builtin_ia32_fpclassph128_mask((__v8hf)(__m128h)(A), \ - (int)(imm), (__mmask8)-1)) - -#define _mm256_mask_fpclass_ph_mask(U, A, imm) \ - ((__mmask16)__builtin_ia32_fpclassph256_mask((__v16hf)(__m256h)(A), \ - (int)(imm), (__mmask16)(U))) - -#define _mm256_fpclass_ph_mask(A, imm) \ - ((__mmask16)__builtin_ia32_fpclassph256_mask((__v16hf)(__m256h)(A), \ - (int)(imm), (__mmask16)-1)) - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtpd_ph(__m128d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph128_mask( - (__v2df)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_cvtpd_ph(__m128h __W, - __mmask8 __U, - __m128d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph128_mask((__v2df)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtpd_ph(__mmask8 __U, __m128d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph128_mask( - (__v2df)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 _mm256_cvtpd_ph(__m256d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph256_mask( - (__v4df)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtpd_ph(__m128h __W, __mmask8 __U, __m256d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph256_mask((__v4df)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtpd_ph(__mmask8 __U, __m256d __A) { - return (__m128h)__builtin_ia32_vcvtpd2ph256_mask( - (__v4df)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_cvtph_pd(__m128h __A) { - return (__m128d)__builtin_ia32_vcvtph2pd128_mask( - (__v8hf)__A, (__v2df)_mm_undefined_pd(), (__mmask8)-1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_mask_cvtph_pd(__m128d __W, - __mmask8 __U, - __m128h __A) { - return (__m128d)__builtin_ia32_vcvtph2pd128_mask((__v8hf)__A, (__v2df)__W, - (__mmask8)__U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtph_pd(__mmask8 __U, __m128h __A) { - return (__m128d)__builtin_ia32_vcvtph2pd128_mask( - (__v8hf)__A, (__v2df)_mm_setzero_pd(), (__mmask8)__U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 _mm256_cvtph_pd(__m128h __A) { - return (__m256d)__builtin_ia32_vcvtph2pd256_mask( - (__v8hf)__A, (__v4df)_mm256_undefined_pd(), (__mmask8)-1); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtph_pd(__m256d __W, __mmask8 __U, __m128h __A) { - return (__m256d)__builtin_ia32_vcvtph2pd256_mask((__v8hf)__A, (__v4df)__W, - (__mmask8)__U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtph_pd(__mmask8 __U, __m128h __A) { - return (__m256d)__builtin_ia32_vcvtph2pd256_mask( - (__v8hf)__A, (__v4df)_mm256_setzero_pd(), (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epi16(__m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2w128_mask( - (__v8hf)__A, (__v8hi)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtph_epi16(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2w128_mask((__v8hf)__A, (__v8hi)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtph_epi16(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2w128_mask( - (__v8hf)__A, (__v8hi)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtph_epi16(__m256h __A) { - return (__m256i)__builtin_ia32_vcvtph2w256_mask( - (__v16hf)__A, (__v16hi)_mm256_undefined_si256(), (__mmask16)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtph_epi16(__m256i __W, __mmask16 __U, __m256h __A) { - return (__m256i)__builtin_ia32_vcvtph2w256_mask((__v16hf)__A, (__v16hi)__W, - (__mmask16)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtph_epi16(__mmask16 __U, __m256h __A) { - return (__m256i)__builtin_ia32_vcvtph2w256_mask( - (__v16hf)__A, (__v16hi)_mm256_setzero_si256(), (__mmask16)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epi16(__m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2w128_mask( - (__v8hf)__A, (__v8hi)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttph_epi16(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2w128_mask((__v8hf)__A, (__v8hi)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttph_epi16(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2w128_mask( - (__v8hf)__A, (__v8hi)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttph_epi16(__m256h __A) { - return (__m256i)__builtin_ia32_vcvttph2w256_mask( - (__v16hf)__A, (__v16hi)_mm256_undefined_si256(), (__mmask16)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttph_epi16(__m256i __W, __mmask16 __U, __m256h __A) { - return (__m256i)__builtin_ia32_vcvttph2w256_mask((__v16hf)__A, (__v16hi)__W, - (__mmask16)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttph_epi16(__mmask16 __U, __m256h __A) { - return (__m256i)__builtin_ia32_vcvttph2w256_mask( - (__v16hf)__A, (__v16hi)_mm256_setzero_si256(), (__mmask16)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepi16_ph(__m128i __A) { - return (__m128h) __builtin_convertvector((__v8hi)__A, __v8hf); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi16_ph(__m128h __W, __mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm_cvtepi16_ph(__A), (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi16_ph(__mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm_cvtepi16_ph(__A), (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_cvtepi16_ph(__m256i __A) { - return (__m256h) __builtin_convertvector((__v16hi)__A, __v16hf); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi16_ph(__m256h __W, __mmask16 __U, __m256i __A) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, (__v16hf)_mm256_cvtepi16_ph(__A), (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi16_ph(__mmask16 __U, __m256i __A) { - return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U, - (__v16hf)_mm256_cvtepi16_ph(__A), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epu16(__m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2uw128_mask( - (__v8hf)__A, (__v8hu)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtph_epu16(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2uw128_mask((__v8hf)__A, (__v8hu)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtph_epu16(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2uw128_mask( - (__v8hf)__A, (__v8hu)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtph_epu16(__m256h __A) { - return (__m256i)__builtin_ia32_vcvtph2uw256_mask( - (__v16hf)__A, (__v16hu)_mm256_undefined_si256(), (__mmask16)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtph_epu16(__m256i __W, __mmask16 __U, __m256h __A) { - return (__m256i)__builtin_ia32_vcvtph2uw256_mask((__v16hf)__A, (__v16hu)__W, - (__mmask16)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtph_epu16(__mmask16 __U, __m256h __A) { - return (__m256i)__builtin_ia32_vcvtph2uw256_mask( - (__v16hf)__A, (__v16hu)_mm256_setzero_si256(), (__mmask16)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epu16(__m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2uw128_mask( - (__v8hf)__A, (__v8hu)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttph_epu16(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2uw128_mask((__v8hf)__A, (__v8hu)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttph_epu16(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2uw128_mask( - (__v8hf)__A, (__v8hu)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttph_epu16(__m256h __A) { - return (__m256i)__builtin_ia32_vcvttph2uw256_mask( - (__v16hf)__A, (__v16hu)_mm256_undefined_si256(), (__mmask16)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttph_epu16(__m256i __W, __mmask16 __U, __m256h __A) { - return (__m256i)__builtin_ia32_vcvttph2uw256_mask((__v16hf)__A, (__v16hu)__W, - (__mmask16)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttph_epu16(__mmask16 __U, __m256h __A) { - return (__m256i)__builtin_ia32_vcvttph2uw256_mask( - (__v16hf)__A, (__v16hu)_mm256_setzero_si256(), (__mmask16)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepu16_ph(__m128i __A) { - return (__m128h) __builtin_convertvector((__v8hu)__A, __v8hf); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepu16_ph(__m128h __W, __mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm_cvtepu16_ph(__A), (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepu16_ph(__mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm_cvtepu16_ph(__A), (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_cvtepu16_ph(__m256i __A) { - return (__m256h) __builtin_convertvector((__v16hu)__A, __v16hf); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepu16_ph(__m256h __W, __mmask16 __U, __m256i __A) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, (__v16hf)_mm256_cvtepu16_ph(__A), (__v16hf)__W); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepu16_ph(__mmask16 __U, __m256i __A) { - return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U, - (__v16hf)_mm256_cvtepu16_ph(__A), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epi32(__m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2dq128_mask( - (__v8hf)__A, (__v4si)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtph_epi32(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2dq128_mask((__v8hf)__A, (__v4si)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtph_epi32(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2dq128_mask( - (__v8hf)__A, (__v4si)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtph_epi32(__m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2dq256_mask( - (__v8hf)__A, (__v8si)_mm256_undefined_si256(), (__mmask8)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtph_epi32(__m256i __W, __mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2dq256_mask((__v8hf)__A, (__v8si)__W, - (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtph_epi32(__mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2dq256_mask( - (__v8hf)__A, (__v8si)_mm256_setzero_si256(), (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epu32(__m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2udq128_mask( - (__v8hf)__A, (__v4su)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtph_epu32(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2udq128_mask((__v8hf)__A, (__v4su)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtph_epu32(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2udq128_mask( - (__v8hf)__A, (__v4su)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtph_epu32(__m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2udq256_mask( - (__v8hf)__A, (__v8su)_mm256_undefined_si256(), (__mmask8)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtph_epu32(__m256i __W, __mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2udq256_mask((__v8hf)__A, (__v8su)__W, - (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtph_epu32(__mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2udq256_mask( - (__v8hf)__A, (__v8su)_mm256_setzero_si256(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepi32_ph(__m128i __A) { - return (__m128h)__builtin_ia32_vcvtdq2ph128_mask( - (__v4si)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi32_ph(__m128h __W, __mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_vcvtdq2ph128_mask((__v4si)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi32_ph(__mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_vcvtdq2ph128_mask( - (__v4si)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_cvtepi32_ph(__m256i __A) { - return (__m128h) __builtin_convertvector((__v8si)__A, __v8hf); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi32_ph(__m128h __W, __mmask8 __U, __m256i __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm256_cvtepi32_ph(__A), (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi32_ph(__mmask8 __U, __m256i __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm256_cvtepi32_ph(__A), (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepu32_ph(__m128i __A) { - return (__m128h)__builtin_ia32_vcvtudq2ph128_mask( - (__v4su)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepu32_ph(__m128h __W, __mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_vcvtudq2ph128_mask((__v4su)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepu32_ph(__mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_vcvtudq2ph128_mask( - (__v4su)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_cvtepu32_ph(__m256i __A) { - return (__m128h) __builtin_convertvector((__v8su)__A, __v8hf); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepu32_ph(__m128h __W, __mmask8 __U, __m256i __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm256_cvtepu32_ph(__A), (__v8hf)__W); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepu32_ph(__mmask8 __U, __m256i __A) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, (__v8hf)_mm256_cvtepu32_ph(__A), (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epi32(__m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2dq128_mask( - (__v8hf)__A, (__v4si)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttph_epi32(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2dq128_mask((__v8hf)__A, (__v4si)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttph_epi32(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2dq128_mask( - (__v8hf)__A, (__v4si)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttph_epi32(__m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2dq256_mask( - (__v8hf)__A, (__v8si)_mm256_undefined_si256(), (__mmask8)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttph_epi32(__m256i __W, __mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2dq256_mask((__v8hf)__A, (__v8si)__W, - (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttph_epi32(__mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2dq256_mask( - (__v8hf)__A, (__v8si)_mm256_setzero_si256(), (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epu32(__m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2udq128_mask( - (__v8hf)__A, (__v4su)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttph_epu32(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2udq128_mask((__v8hf)__A, (__v4su)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttph_epu32(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2udq128_mask( - (__v8hf)__A, (__v4su)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttph_epu32(__m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2udq256_mask( - (__v8hf)__A, (__v8su)_mm256_undefined_si256(), (__mmask8)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttph_epu32(__m256i __W, __mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2udq256_mask((__v8hf)__A, (__v8su)__W, - (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttph_epu32(__mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2udq256_mask( - (__v8hf)__A, (__v8su)_mm256_setzero_si256(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepi64_ph(__m128i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph128_mask( - (__v2di)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_ph(__m128h __W, __mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph128_mask((__v2di)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi64_ph(__mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph128_mask( - (__v2di)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_cvtepi64_ph(__m256i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph256_mask( - (__v4di)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_ph(__m128h __W, __mmask8 __U, __m256i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph256_mask((__v4di)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi64_ph(__mmask8 __U, __m256i __A) { - return (__m128h)__builtin_ia32_vcvtqq2ph256_mask( - (__v4di)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epi64(__m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2qq128_mask( - (__v8hf)__A, (__v2di)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtph_epi64(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2qq128_mask((__v8hf)__A, (__v2di)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtph_epi64(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2qq128_mask( - (__v8hf)__A, (__v2di)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtph_epi64(__m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2qq256_mask( - (__v8hf)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtph_epi64(__m256i __W, __mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2qq256_mask((__v8hf)__A, (__v4di)__W, - (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtph_epi64(__mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2qq256_mask( - (__v8hf)__A, (__v4di)_mm256_setzero_si256(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtepu64_ph(__m128i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph128_mask( - (__v2du)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepu64_ph(__m128h __W, __mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph128_mask((__v2du)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepu64_ph(__mmask8 __U, __m128i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph128_mask( - (__v2du)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_cvtepu64_ph(__m256i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph256_mask( - (__v4du)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepu64_ph(__m128h __W, __mmask8 __U, __m256i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph256_mask((__v4du)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepu64_ph(__mmask8 __U, __m256i __A) { - return (__m128h)__builtin_ia32_vcvtuqq2ph256_mask( - (__v4du)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_epu64(__m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2uqq128_mask( - (__v8hf)__A, (__v2du)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtph_epu64(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2uqq128_mask((__v8hf)__A, (__v2du)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtph_epu64(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvtph2uqq128_mask( - (__v8hf)__A, (__v2du)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtph_epu64(__m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2uqq256_mask( - (__v8hf)__A, (__v4du)_mm256_undefined_si256(), (__mmask8)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtph_epu64(__m256i __W, __mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2uqq256_mask((__v8hf)__A, (__v4du)__W, - (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtph_epu64(__mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvtph2uqq256_mask( - (__v8hf)__A, (__v4du)_mm256_setzero_si256(), (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epi64(__m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2qq128_mask( - (__v8hf)__A, (__v2di)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttph_epi64(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2qq128_mask((__v8hf)__A, (__v2di)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttph_epi64(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2qq128_mask( - (__v8hf)__A, (__v2di)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttph_epi64(__m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2qq256_mask( - (__v8hf)__A, (__v4di)_mm256_undefined_si256(), (__mmask8)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttph_epi64(__m256i __W, __mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2qq256_mask((__v8hf)__A, (__v4di)__W, - (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttph_epi64(__mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2qq256_mask( - (__v8hf)__A, (__v4di)_mm256_setzero_si256(), (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvttph_epu64(__m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2uqq128_mask( - (__v8hf)__A, (__v2du)_mm_undefined_si128(), (__mmask8)-1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttph_epu64(__m128i __W, __mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2uqq128_mask((__v8hf)__A, (__v2du)__W, - (__mmask8)__U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttph_epu64(__mmask8 __U, __m128h __A) { - return (__m128i)__builtin_ia32_vcvttph2uqq128_mask( - (__v8hf)__A, (__v2du)_mm_setzero_si128(), (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttph_epu64(__m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2uqq256_mask( - (__v8hf)__A, (__v4du)_mm256_undefined_si256(), (__mmask8)-1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttph_epu64(__m256i __W, __mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2uqq256_mask((__v8hf)__A, (__v4du)__W, - (__mmask8)__U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttph_epu64(__mmask8 __U, __m128h __A) { - return (__m256i)__builtin_ia32_vcvttph2uqq256_mask( - (__v8hf)__A, (__v4du)_mm256_setzero_si256(), (__mmask8)__U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_cvtxph_ps(__m128h __A) { - return (__m128)__builtin_ia32_vcvtph2psx128_mask( - (__v8hf)__A, (__v4sf)_mm_undefined_ps(), (__mmask8)-1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_mask_cvtxph_ps(__m128 __W, - __mmask8 __U, - __m128h __A) { - return (__m128)__builtin_ia32_vcvtph2psx128_mask((__v8hf)__A, (__v4sf)__W, - (__mmask8)__U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtxph_ps(__mmask8 __U, __m128h __A) { - return (__m128)__builtin_ia32_vcvtph2psx128_mask( - (__v8hf)__A, (__v4sf)_mm_setzero_ps(), (__mmask8)__U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_cvtxph_ps(__m128h __A) { - return (__m256)__builtin_ia32_vcvtph2psx256_mask( - (__v8hf)__A, (__v8sf)_mm256_undefined_ps(), (__mmask8)-1); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtxph_ps(__m256 __W, __mmask8 __U, __m128h __A) { - return (__m256)__builtin_ia32_vcvtph2psx256_mask((__v8hf)__A, (__v8sf)__W, - (__mmask8)__U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtxph_ps(__mmask8 __U, __m128h __A) { - return (__m256)__builtin_ia32_vcvtph2psx256_mask( - (__v8hf)__A, (__v8sf)_mm256_setzero_ps(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtxps_ph(__m128 __A) { - return (__m128h)__builtin_ia32_vcvtps2phx128_mask( - (__v4sf)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_cvtxps_ph(__m128h __W, - __mmask8 __U, - __m128 __A) { - return (__m128h)__builtin_ia32_vcvtps2phx128_mask((__v4sf)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtxps_ph(__mmask8 __U, __m128 __A) { - return (__m128h)__builtin_ia32_vcvtps2phx128_mask( - (__v4sf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 _mm256_cvtxps_ph(__m256 __A) { - return (__m128h)__builtin_ia32_vcvtps2phx256_mask( - (__v8sf)__A, (__v8hf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtxps_ph(__m128h __W, __mmask8 __U, __m256 __A) { - return (__m128h)__builtin_ia32_vcvtps2phx256_mask((__v8sf)__A, (__v8hf)__W, - (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtxps_ph(__mmask8 __U, __m256 __A) { - return (__m128h)__builtin_ia32_vcvtps2phx256_mask( - (__v8sf)__A, (__v8hf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmadd_ph(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, - (__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmadd_ph(__m128h __A, - __mmask8 __U, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fmadd_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmadd_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmsub_ph(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, - -(__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmsub_ph(__m128h __A, - __mmask8 __U, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, _mm_fmsub_ph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsub_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, _mm_fmsub_ph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmadd_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph(-(__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmadd_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph(-(__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmsub_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph(-(__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fmadd_ph(__m256h __A, - __m256h __B, - __m256h __C) { - return (__m256h)__builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, - (__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fmadd_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), - (__v16hf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmadd_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), - (__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmadd_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fmsub_ph(__m256h __A, - __m256h __B, - __m256h __C) { - return (__m256h)__builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, - -(__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fmsub_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), - (__v16hf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmsub_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask3_fnmadd_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256(-(__v16hf)__A, (__v16hf)__B, (__v16hf)__C), - (__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fnmadd_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256(-(__v16hf)__A, (__v16hf)__B, (__v16hf)__C), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fnmsub_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256(-(__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmaddsub_ph(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, - (__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fmaddsub_ph(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fmaddsub_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmaddsub_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, (__v8hf)__C), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmsubadd_ph(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, - -(__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fmsubadd_ph(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), - (__v8hf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsubadd_ph(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), - (__v8hf)_mm_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_fmaddsub_ph(__m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, - (__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fmaddsub_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), - (__v16hf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmaddsub_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), - (__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmaddsub_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, (__v16hf)__C), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_fmsubadd_ph(__m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, - -(__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fmsubadd_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), - (__v16hf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmsubadd_ph(__mmask16 __U, __m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), - (__v16hf)_mm256_setzero_ph()); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsub_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph((__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), - (__v8hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmsub_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), - (__v16hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsubadd_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddsubph((__v8hf)__A, (__v8hf)__B, -(__v8hf)__C), - (__v8hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmsubadd_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddsubph256((__v16hf)__A, (__v16hf)__B, -(__v16hf)__C), - (__v16hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fnmadd_ph(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, - (__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fnmadd_ph(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, (__v8hf)__C), - (__v8hf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fnmadd_ph(__m256h __A, - __m256h __B, - __m256h __C) { - return (__m256h)__builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, - (__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fnmadd_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, (__v16hf)__C), - (__v16hf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fnmsub_ph(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, - -(__v8hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fnmsub_ph(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, -(__v8hf)__C), - (__v8hf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmsub_ph(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_selectph_128( - (__mmask8)__U, - __builtin_ia32_vfmaddph((__v8hf)__A, -(__v8hf)__B, -(__v8hf)__C), - (__v8hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fnmsub_ph(__m256h __A, - __m256h __B, - __m256h __C) { - return (__m256h)__builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, - -(__v16hf)__C); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fnmsub_ph(__m256h __A, __mmask16 __U, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, -(__v16hf)__C), - (__v16hf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask3_fnmsub_ph(__m256h __A, __m256h __B, __m256h __C, __mmask16 __U) { - return (__m256h)__builtin_ia32_selectph_256( - (__mmask16)__U, - __builtin_ia32_vfmaddph256((__v16hf)__A, -(__v16hf)__B, -(__v16hf)__C), - (__v16hf)__C); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fcmul_pch(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_vfcmulcph128_mask( - (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fcmul_pch(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_vfcmulcph128_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__W, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fcmul_pch(__mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_vfcmulcph128_mask( - (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS128 _mm256_fcmul_pch(__m256h __A, - __m256h __B) { - return (__m256h)__builtin_ia32_vfcmulcph256_mask( - (__v8sf)__A, (__v8sf)__B, (__v8sf)_mm256_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fcmul_pch(__m256h __W, __mmask8 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_vfcmulcph256_mask((__v8sf)__A, (__v8sf)__B, - (__v8sf)__W, (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fcmul_pch(__mmask8 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_vfcmulcph256_mask( - (__v8sf)__A, (__v8sf)__B, (__v8sf)_mm256_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fcmadd_pch(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfcmaddcph128_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fcmadd_pch(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectps_128( - __U, - __builtin_ia32_vfcmaddcph128_mask((__v4sf)__A, (__v4sf)(__m128h)__B, - (__v4sf)__C, (__mmask8)__U), - (__v4sf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fcmadd_pch(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_vfcmaddcph128_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fcmadd_pch(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_vfcmaddcph128_maskz( - (__v4sf)__A, (__v4sf)__B, (__v4sf)__C, (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fcmadd_pch(__m256h __A, - __m256h __B, - __m256h __C) { - return (__m256h)__builtin_ia32_vfcmaddcph256_mask((__v8sf)__A, (__v8sf)__B, - (__v8sf)__C, (__mmask8)-1); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fcmadd_pch(__m256h __A, __mmask8 __U, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectps_256( - __U, - __builtin_ia32_vfcmaddcph256_mask((__v8sf)__A, (__v8sf)__B, (__v8sf)__C, - (__mmask8)__U), - (__v8sf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask3_fcmadd_pch(__m256h __A, __m256h __B, __m256h __C, __mmask8 __U) { - return (__m256h)__builtin_ia32_vfcmaddcph256_mask((__v8sf)__A, (__v8sf)__B, - (__v8sf)__C, (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fcmadd_pch(__mmask8 __U, __m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_vfcmaddcph256_maskz( - (__v8sf)__A, (__v8sf)__B, (__v8sf)__C, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmul_pch(__m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_vfmulcph128_mask( - (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_fmul_pch(__m128h __W, - __mmask8 __U, - __m128h __A, - __m128h __B) { - return (__m128h)__builtin_ia32_vfmulcph128_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__W, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmul_pch(__mmask8 __U, __m128h __A, __m128h __B) { - return (__m128h)__builtin_ia32_vfmulcph128_mask( - (__v4sf)__A, (__v4sf)__B, (__v4sf)_mm_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fmul_pch(__m256h __A, - __m256h __B) { - return (__m256h)__builtin_ia32_vfmulcph256_mask( - (__v8sf)__A, (__v8sf)__B, (__v8sf)_mm256_undefined_ph(), (__mmask8)-1); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fmul_pch(__m256h __W, __mmask8 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_vfmulcph256_mask((__v8sf)__A, (__v8sf)__B, - (__v8sf)__W, (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmul_pch(__mmask8 __U, __m256h __A, __m256h __B) { - return (__m256h)__builtin_ia32_vfmulcph256_mask( - (__v8sf)__A, (__v8sf)__B, (__v8sf)_mm256_setzero_ph(), (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_fmadd_pch(__m128h __A, - __m128h __B, - __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddcph128_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)-1); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask_fmadd_pch(__m128h __A, __mmask8 __U, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_selectps_128( - __U, - __builtin_ia32_vfmaddcph128_mask((__v4sf)__A, (__v4sf)__B, (__v4sf)__C, - (__mmask8)__U), - (__v4sf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_mask3_fmadd_pch(__m128h __A, __m128h __B, __m128h __C, __mmask8 __U) { - return (__m128h)__builtin_ia32_vfmaddcph128_mask((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_maskz_fmadd_pch(__mmask8 __U, __m128h __A, __m128h __B, __m128h __C) { - return (__m128h)__builtin_ia32_vfmaddcph128_maskz((__v4sf)__A, (__v4sf)__B, - (__v4sf)__C, (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_fmadd_pch(__m256h __A, - __m256h __B, - __m256h __C) { - return (__m256h)__builtin_ia32_vfmaddcph256_mask((__v8sf)__A, (__v8sf)__B, - (__v8sf)__C, (__mmask8)-1); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_fmadd_pch(__m256h __A, __mmask8 __U, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_selectps_256( - __U, - __builtin_ia32_vfmaddcph256_mask((__v8sf)__A, (__v8sf)__B, (__v8sf)__C, - (__mmask8)__U), - (__v8sf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmadd_pch(__m256h __A, __m256h __B, __m256h __C, __mmask8 __U) { - return (__m256h)__builtin_ia32_vfmaddcph256_mask((__v8sf)__A, (__v8sf)__B, - (__v8sf)__C, (__mmask8)__U); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmadd_pch(__mmask8 __U, __m256h __A, __m256h __B, __m256h __C) { - return (__m256h)__builtin_ia32_vfmaddcph256_maskz((__v8sf)__A, (__v8sf)__B, - (__v8sf)__C, (__mmask8)__U); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_blend_ph(__mmask8 __U, - __m128h __A, - __m128h __W) { - return (__m128h)__builtin_ia32_selectph_128((__mmask8)__U, (__v8hf)__W, - (__v8hf)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_mask_blend_ph(__mmask16 __U, __m256h __A, __m256h __W) { - return (__m256h)__builtin_ia32_selectph_256((__mmask16)__U, (__v16hf)__W, - (__v16hf)__A); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_permutex2var_ph(__m128h __A, __m128i __I, __m128h __B) { - return (__m128h)__builtin_ia32_vpermi2varhi128((__v8hi)__A, (__v8hi)__I, - (__v8hi)__B); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_permutex2var_ph(__m256h __A, __m256i __I, __m256h __B) { - return (__m256h)__builtin_ia32_vpermi2varhi256((__v16hi)__A, (__v16hi)__I, - (__v16hi)__B); -} - -static __inline__ __m128h __DEFAULT_FN_ATTRS128 -_mm_permutexvar_ph(__m128i __A, __m128h __B) { - return (__m128h)__builtin_ia32_permvarhi128((__v8hi)__B, (__v8hi)__A); -} - -static __inline__ __m256h __DEFAULT_FN_ATTRS256 -_mm256_permutexvar_ph(__m256i __A, __m256h __B) { - return (__m256h)__builtin_ia32_permvarhi256((__v16hi)__B, (__v16hi)__A); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS256 -_mm256_reduce_add_ph(__m256h __W) { - return __builtin_ia32_reduce_fadd_ph256(-0.0f16, __W); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS256 -_mm256_reduce_mul_ph(__m256h __W) { - return __builtin_ia32_reduce_fmul_ph256(1.0f16, __W); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS256 -_mm256_reduce_max_ph(__m256h __V) { - return __builtin_ia32_reduce_fmax_ph256(__V); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS256 -_mm256_reduce_min_ph(__m256h __V) { - return __builtin_ia32_reduce_fmin_ph256(__V); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS128 -_mm_reduce_add_ph(__m128h __W) { - return __builtin_ia32_reduce_fadd_ph128(-0.0f16, __W); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS128 -_mm_reduce_mul_ph(__m128h __W) { - return __builtin_ia32_reduce_fmul_ph128(1.0f16, __W); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS128 -_mm_reduce_max_ph(__m128h __V) { - return __builtin_ia32_reduce_fmax_ph128(__V); -} - -static __inline__ _Float16 __DEFAULT_FN_ATTRS128 -_mm_reduce_min_ph(__m128h __V) { - return __builtin_ia32_reduce_fmin_ph128(__V); -} - -// intrinsics below are alias for f*mul_*ch -#define _mm_mul_pch(A, B) _mm_fmul_pch(A, B) -#define _mm_mask_mul_pch(W, U, A, B) _mm_mask_fmul_pch(W, U, A, B) -#define _mm_maskz_mul_pch(U, A, B) _mm_maskz_fmul_pch(U, A, B) -#define _mm256_mul_pch(A, B) _mm256_fmul_pch(A, B) -#define _mm256_mask_mul_pch(W, U, A, B) _mm256_mask_fmul_pch(W, U, A, B) -#define _mm256_maskz_mul_pch(U, A, B) _mm256_maskz_fmul_pch(U, A, B) - -#define _mm_cmul_pch(A, B) _mm_fcmul_pch(A, B) -#define _mm_mask_cmul_pch(W, U, A, B) _mm_mask_fcmul_pch(W, U, A, B) -#define _mm_maskz_cmul_pch(U, A, B) _mm_maskz_fcmul_pch(U, A, B) -#define _mm256_cmul_pch(A, B) _mm256_fcmul_pch(A, B) -#define _mm256_mask_cmul_pch(W, U, A, B) _mm256_mask_fcmul_pch(W, U, A, B) -#define _mm256_maskz_cmul_pch(U, A, B) _mm256_maskz_fcmul_pch(U, A, B) - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlfp16intrin.h.blob deleted file mode 100644 index a46730a25edd3977a6c24e9e7847370d5b7d9283..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 161564 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h deleted file mode 100644 index 3e8355f1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h +++ /dev/null @@ -1,8431 +0,0 @@ -/*===---- avx512vlintrin.h - AVX512VL intrinsics ---------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <avx512vlintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VLINTRIN_H -#define __AVX512VLINTRIN_H - -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl"), __min_vector_width__(256))) - -typedef short __v2hi __attribute__((__vector_size__(4))); -typedef char __v4qi __attribute__((__vector_size__(4))); -typedef char __v2qi __attribute__((__vector_size__(2))); - -/* Integer compare */ - -#define _mm_cmpeq_epi32_mask(A, B) \ - _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_EQ) -#define _mm_mask_cmpeq_epi32_mask(k, A, B) \ - _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm_cmpge_epi32_mask(A, B) \ - _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_GE) -#define _mm_mask_cmpge_epi32_mask(k, A, B) \ - _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm_cmpgt_epi32_mask(A, B) \ - _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_GT) -#define _mm_mask_cmpgt_epi32_mask(k, A, B) \ - _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm_cmple_epi32_mask(A, B) \ - _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_LE) -#define _mm_mask_cmple_epi32_mask(k, A, B) \ - _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm_cmplt_epi32_mask(A, B) \ - _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_LT) -#define _mm_mask_cmplt_epi32_mask(k, A, B) \ - _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm_cmpneq_epi32_mask(A, B) \ - _mm_cmp_epi32_mask((A), (B), _MM_CMPINT_NE) -#define _mm_mask_cmpneq_epi32_mask(k, A, B) \ - _mm_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm256_cmpeq_epi32_mask(A, B) \ - _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_EQ) -#define _mm256_mask_cmpeq_epi32_mask(k, A, B) \ - _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm256_cmpge_epi32_mask(A, B) \ - _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_GE) -#define _mm256_mask_cmpge_epi32_mask(k, A, B) \ - _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm256_cmpgt_epi32_mask(A, B) \ - _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_GT) -#define _mm256_mask_cmpgt_epi32_mask(k, A, B) \ - _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm256_cmple_epi32_mask(A, B) \ - _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_LE) -#define _mm256_mask_cmple_epi32_mask(k, A, B) \ - _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm256_cmplt_epi32_mask(A, B) \ - _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_LT) -#define _mm256_mask_cmplt_epi32_mask(k, A, B) \ - _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm256_cmpneq_epi32_mask(A, B) \ - _mm256_cmp_epi32_mask((A), (B), _MM_CMPINT_NE) -#define _mm256_mask_cmpneq_epi32_mask(k, A, B) \ - _mm256_mask_cmp_epi32_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm_cmpeq_epu32_mask(A, B) \ - _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_EQ) -#define _mm_mask_cmpeq_epu32_mask(k, A, B) \ - _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm_cmpge_epu32_mask(A, B) \ - _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_GE) -#define _mm_mask_cmpge_epu32_mask(k, A, B) \ - _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm_cmpgt_epu32_mask(A, B) \ - _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_GT) -#define _mm_mask_cmpgt_epu32_mask(k, A, B) \ - _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm_cmple_epu32_mask(A, B) \ - _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_LE) -#define _mm_mask_cmple_epu32_mask(k, A, B) \ - _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm_cmplt_epu32_mask(A, B) \ - _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_LT) -#define _mm_mask_cmplt_epu32_mask(k, A, B) \ - _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm_cmpneq_epu32_mask(A, B) \ - _mm_cmp_epu32_mask((A), (B), _MM_CMPINT_NE) -#define _mm_mask_cmpneq_epu32_mask(k, A, B) \ - _mm_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm256_cmpeq_epu32_mask(A, B) \ - _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_EQ) -#define _mm256_mask_cmpeq_epu32_mask(k, A, B) \ - _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm256_cmpge_epu32_mask(A, B) \ - _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_GE) -#define _mm256_mask_cmpge_epu32_mask(k, A, B) \ - _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm256_cmpgt_epu32_mask(A, B) \ - _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_GT) -#define _mm256_mask_cmpgt_epu32_mask(k, A, B) \ - _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm256_cmple_epu32_mask(A, B) \ - _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_LE) -#define _mm256_mask_cmple_epu32_mask(k, A, B) \ - _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm256_cmplt_epu32_mask(A, B) \ - _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_LT) -#define _mm256_mask_cmplt_epu32_mask(k, A, B) \ - _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm256_cmpneq_epu32_mask(A, B) \ - _mm256_cmp_epu32_mask((A), (B), _MM_CMPINT_NE) -#define _mm256_mask_cmpneq_epu32_mask(k, A, B) \ - _mm256_mask_cmp_epu32_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm_cmpeq_epi64_mask(A, B) \ - _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_EQ) -#define _mm_mask_cmpeq_epi64_mask(k, A, B) \ - _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm_cmpge_epi64_mask(A, B) \ - _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_GE) -#define _mm_mask_cmpge_epi64_mask(k, A, B) \ - _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm_cmpgt_epi64_mask(A, B) \ - _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_GT) -#define _mm_mask_cmpgt_epi64_mask(k, A, B) \ - _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm_cmple_epi64_mask(A, B) \ - _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_LE) -#define _mm_mask_cmple_epi64_mask(k, A, B) \ - _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm_cmplt_epi64_mask(A, B) \ - _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_LT) -#define _mm_mask_cmplt_epi64_mask(k, A, B) \ - _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm_cmpneq_epi64_mask(A, B) \ - _mm_cmp_epi64_mask((A), (B), _MM_CMPINT_NE) -#define _mm_mask_cmpneq_epi64_mask(k, A, B) \ - _mm_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm256_cmpeq_epi64_mask(A, B) \ - _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_EQ) -#define _mm256_mask_cmpeq_epi64_mask(k, A, B) \ - _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm256_cmpge_epi64_mask(A, B) \ - _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_GE) -#define _mm256_mask_cmpge_epi64_mask(k, A, B) \ - _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm256_cmpgt_epi64_mask(A, B) \ - _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_GT) -#define _mm256_mask_cmpgt_epi64_mask(k, A, B) \ - _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm256_cmple_epi64_mask(A, B) \ - _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_LE) -#define _mm256_mask_cmple_epi64_mask(k, A, B) \ - _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm256_cmplt_epi64_mask(A, B) \ - _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_LT) -#define _mm256_mask_cmplt_epi64_mask(k, A, B) \ - _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm256_cmpneq_epi64_mask(A, B) \ - _mm256_cmp_epi64_mask((A), (B), _MM_CMPINT_NE) -#define _mm256_mask_cmpneq_epi64_mask(k, A, B) \ - _mm256_mask_cmp_epi64_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm_cmpeq_epu64_mask(A, B) \ - _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_EQ) -#define _mm_mask_cmpeq_epu64_mask(k, A, B) \ - _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm_cmpge_epu64_mask(A, B) \ - _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_GE) -#define _mm_mask_cmpge_epu64_mask(k, A, B) \ - _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm_cmpgt_epu64_mask(A, B) \ - _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_GT) -#define _mm_mask_cmpgt_epu64_mask(k, A, B) \ - _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm_cmple_epu64_mask(A, B) \ - _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_LE) -#define _mm_mask_cmple_epu64_mask(k, A, B) \ - _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm_cmplt_epu64_mask(A, B) \ - _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_LT) -#define _mm_mask_cmplt_epu64_mask(k, A, B) \ - _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm_cmpneq_epu64_mask(A, B) \ - _mm_cmp_epu64_mask((A), (B), _MM_CMPINT_NE) -#define _mm_mask_cmpneq_epu64_mask(k, A, B) \ - _mm_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_NE) - -#define _mm256_cmpeq_epu64_mask(A, B) \ - _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_EQ) -#define _mm256_mask_cmpeq_epu64_mask(k, A, B) \ - _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_EQ) -#define _mm256_cmpge_epu64_mask(A, B) \ - _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_GE) -#define _mm256_mask_cmpge_epu64_mask(k, A, B) \ - _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GE) -#define _mm256_cmpgt_epu64_mask(A, B) \ - _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_GT) -#define _mm256_mask_cmpgt_epu64_mask(k, A, B) \ - _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_GT) -#define _mm256_cmple_epu64_mask(A, B) \ - _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_LE) -#define _mm256_mask_cmple_epu64_mask(k, A, B) \ - _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LE) -#define _mm256_cmplt_epu64_mask(A, B) \ - _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_LT) -#define _mm256_mask_cmplt_epu64_mask(k, A, B) \ - _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_LT) -#define _mm256_cmpneq_epu64_mask(A, B) \ - _mm256_cmp_epu64_mask((A), (B), _MM_CMPINT_NE) -#define _mm256_mask_cmpneq_epu64_mask(k, A, B) \ - _mm256_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_NE) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_add_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_add_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_add_epi32(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_add_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_add_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_add_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_add_epi64(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_add_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sub_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_sub_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sub_epi32(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_sub_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sub_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_sub_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sub_epi64(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_sub_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_add_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_add_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_add_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_add_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_add_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_add_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_add_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_add_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sub_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_sub_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sub_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_sub_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sub_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_sub_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sub_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_sub_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mul_epi32(__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_mul_epi32(__X, __Y), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mul_epi32(__mmask8 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_mul_epi32(__X, __Y), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mul_epi32(__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_mul_epi32(__X, __Y), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mul_epi32(__mmask8 __M, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_mul_epi32(__X, __Y), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mul_epu32(__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_mul_epu32(__X, __Y), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mul_epu32(__mmask8 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_mul_epu32(__X, __Y), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mul_epu32(__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_mul_epu32(__X, __Y), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mul_epu32(__mmask8 __M, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_mul_epu32(__X, __Y), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mullo_epi32(__mmask8 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_mullo_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mullo_epi32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_mullo_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mullo_epi32(__mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_mullo_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mullo_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_mullo_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_and_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)((__v8su)__a & (__v8su)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_and_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_and_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_and_epi32(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)_mm256_mask_and_epi32(_mm256_setzero_si256(), __U, __A, __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_and_epi32(__m128i __a, __m128i __b) -{ - return (__m128i)((__v4su)__a & (__v4su)__b); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_and_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_and_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_and_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)_mm_mask_and_epi32(_mm_setzero_si128(), __U, __A, __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_andnot_epi32(__m256i __A, __m256i __B) -{ - return (__m256i)(~(__v8su)__A & (__v8su)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_andnot_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_andnot_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_andnot_epi32(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)_mm256_mask_andnot_epi32(_mm256_setzero_si256(), - __U, __A, __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_andnot_epi32(__m128i __A, __m128i __B) -{ - return (__m128i)(~(__v4su)__A & (__v4su)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_andnot_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_andnot_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_andnot_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)_mm_mask_andnot_epi32(_mm_setzero_si128(), __U, __A, __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_or_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)((__v8su)__a | (__v8su)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_or_epi32 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_or_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_or_epi32(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)_mm256_mask_or_epi32(_mm256_setzero_si256(), __U, __A, __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_or_epi32(__m128i __a, __m128i __b) -{ - return (__m128i)((__v4su)__a | (__v4su)__b); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_or_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_or_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_or_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)_mm_mask_or_epi32(_mm_setzero_si128(), __U, __A, __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_xor_epi32(__m256i __a, __m256i __b) -{ - return (__m256i)((__v8su)__a ^ (__v8su)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_xor_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_xor_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_xor_epi32(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)_mm256_mask_xor_epi32(_mm256_setzero_si256(), __U, __A, __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_xor_epi32(__m128i __a, __m128i __b) -{ - return (__m128i)((__v4su)__a ^ (__v4su)__b); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_xor_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_xor_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_xor_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)_mm_mask_xor_epi32(_mm_setzero_si128(), __U, __A, __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_and_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4du)__a & (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_and_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_and_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_and_epi64(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)_mm256_mask_and_epi64(_mm256_setzero_si256(), __U, __A, __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_and_epi64(__m128i __a, __m128i __b) -{ - return (__m128i)((__v2du)__a & (__v2du)__b); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_and_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_and_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_and_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)_mm_mask_and_epi64(_mm_setzero_si128(), __U, __A, __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_andnot_epi64(__m256i __A, __m256i __B) -{ - return (__m256i)(~(__v4du)__A & (__v4du)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_andnot_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_andnot_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_andnot_epi64(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)_mm256_mask_andnot_epi64(_mm256_setzero_si256(), - __U, __A, __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_andnot_epi64(__m128i __A, __m128i __B) -{ - return (__m128i)(~(__v2du)__A & (__v2du)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_andnot_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_andnot_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_andnot_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)_mm_mask_andnot_epi64(_mm_setzero_si128(), __U, __A, __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_or_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4du)__a | (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_or_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_or_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_or_epi64(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)_mm256_mask_or_epi64(_mm256_setzero_si256(), __U, __A, __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_or_epi64(__m128i __a, __m128i __b) -{ - return (__m128i)((__v2du)__a | (__v2du)__b); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_or_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_or_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_or_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)_mm_mask_or_epi64(_mm_setzero_si128(), __U, __A, __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_xor_epi64(__m256i __a, __m256i __b) -{ - return (__m256i)((__v4du)__a ^ (__v4du)__b); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_xor_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_xor_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_xor_epi64(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)_mm256_mask_xor_epi64(_mm256_setzero_si256(), __U, __A, __B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_xor_epi64(__m128i __a, __m128i __b) -{ - return (__m128i)((__v2du)__a ^ (__v2du)__b); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_xor_epi64(__m128i __W, __mmask8 __U, __m128i __A, - __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_xor_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_xor_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)_mm_mask_xor_epi64(_mm_setzero_si128(), __U, __A, __B); -} - -#define _mm_cmp_epi32_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpd128_mask((__v4si)(__m128i)(a), \ - (__v4si)(__m128i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm_mask_cmp_epi32_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpd128_mask((__v4si)(__m128i)(a), \ - (__v4si)(__m128i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm_cmp_epu32_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)(__m128i)(a), \ - (__v4si)(__m128i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm_mask_cmp_epu32_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)(__m128i)(a), \ - (__v4si)(__m128i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm256_cmp_epi32_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpd256_mask((__v8si)(__m256i)(a), \ - (__v8si)(__m256i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm256_mask_cmp_epi32_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpd256_mask((__v8si)(__m256i)(a), \ - (__v8si)(__m256i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm256_cmp_epu32_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)(__m256i)(a), \ - (__v8si)(__m256i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm256_mask_cmp_epu32_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)(__m256i)(a), \ - (__v8si)(__m256i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm_cmp_epi64_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpq128_mask((__v2di)(__m128i)(a), \ - (__v2di)(__m128i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm_mask_cmp_epi64_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpq128_mask((__v2di)(__m128i)(a), \ - (__v2di)(__m128i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm_cmp_epu64_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)(__m128i)(a), \ - (__v2di)(__m128i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm_mask_cmp_epu64_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)(__m128i)(a), \ - (__v2di)(__m128i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm256_cmp_epi64_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpq256_mask((__v4di)(__m256i)(a), \ - (__v4di)(__m256i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm256_mask_cmp_epi64_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpq256_mask((__v4di)(__m256i)(a), \ - (__v4di)(__m256i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm256_cmp_epu64_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)(__m256i)(a), \ - (__v4di)(__m256i)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm256_mask_cmp_epu64_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)(__m256i)(a), \ - (__v4di)(__m256i)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm256_cmp_ps_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpps256_mask((__v8sf)(__m256)(a), \ - (__v8sf)(__m256)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm256_mask_cmp_ps_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpps256_mask((__v8sf)(__m256)(a), \ - (__v8sf)(__m256)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm256_cmp_pd_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmppd256_mask((__v4df)(__m256d)(a), \ - (__v4df)(__m256d)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm256_mask_cmp_pd_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmppd256_mask((__v4df)(__m256d)(a), \ - (__v4df)(__m256d)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm_cmp_ps_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmpps128_mask((__v4sf)(__m128)(a), \ - (__v4sf)(__m128)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm_mask_cmp_ps_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmpps128_mask((__v4sf)(__m128)(a), \ - (__v4sf)(__m128)(b), (int)(p), \ - (__mmask8)(m))) - -#define _mm_cmp_pd_mask(a, b, p) \ - ((__mmask8)__builtin_ia32_cmppd128_mask((__v2df)(__m128d)(a), \ - (__v2df)(__m128d)(b), (int)(p), \ - (__mmask8)-1)) - -#define _mm_mask_cmp_pd_mask(m, a, b, p) \ - ((__mmask8)__builtin_ia32_cmppd128_mask((__v2df)(__m128d)(a), \ - (__v2df)(__m128d)(b), (int)(p), \ - (__mmask8)(m))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fmadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - (__v2df) __B, - (__v2df) __C), - (__v2df) __A); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fmadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - (__v2df) __B, - (__v2df) __C), - (__v2df) __C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fmadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - (__v2df) __B, - (__v2df) __C), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fmsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - (__v2df) __B, - -(__v2df) __C), - (__v2df) __A); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - (__v2df) __B, - -(__v2df) __C), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd (-(__v2df) __A, - (__v2df) __B, - (__v2df) __C), - (__v2df) __C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd (-(__v2df) __A, - (__v2df) __B, - (__v2df) __C), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd (-(__v2df) __A, - (__v2df) __B, - -(__v2df) __C), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_fmadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - (__v4df) __B, - (__v4df) __C), - (__v4df) __A); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - (__v4df) __B, - (__v4df) __C), - (__v4df) __C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - (__v4df) __B, - (__v4df) __C), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_fmsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - (__v4df) __B, - -(__v4df) __C), - (__v4df) __A); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - (__v4df) __B, - -(__v4df) __C), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask3_fnmadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 (-(__v4df) __A, - (__v4df) __B, - (__v4df) __C), - (__v4df) __C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_fnmadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 (-(__v4df) __A, - (__v4df) __B, - (__v4df) __C), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_fnmsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 (-(__v4df) __A, - (__v4df) __B, - -(__v4df) __C), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fmadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __C), - (__v4sf) __A); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fmadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __C), - (__v4sf) __C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fmadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __C), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fmsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - (__v4sf) __B, - -(__v4sf) __C), - (__v4sf) __A); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - (__v4sf) __B, - -(__v4sf) __C), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps (-(__v4sf) __A, - (__v4sf) __B, - (__v4sf) __C), - (__v4sf) __C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps (-(__v4sf) __A, - (__v4sf) __B, - (__v4sf) __C), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fnmsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps (-(__v4sf) __A, - (__v4sf) __B, - -(__v4sf) __C), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_fmadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) __C), - (__v8sf) __A); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) __C), - (__v8sf) __C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) __C), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_fmsub_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - (__v8sf) __B, - -(__v8sf) __C), - (__v8sf) __A); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - (__v8sf) __B, - -(__v8sf) __C), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask3_fnmadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 (-(__v8sf) __A, - (__v8sf) __B, - (__v8sf) __C), - (__v8sf) __C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_fnmadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 (-(__v8sf) __A, - (__v8sf) __B, - (__v8sf) __C), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_fnmsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 (-(__v8sf) __A, - (__v8sf) __B, - -(__v8sf) __C), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fmaddsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddsubpd ((__v2df) __A, - (__v2df) __B, - (__v2df) __C), - (__v2df) __A); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fmaddsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddsubpd ((__v2df) __A, - (__v2df) __B, - (__v2df) __C), - (__v2df) __C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fmaddsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddsubpd ((__v2df) __A, - (__v2df) __B, - (__v2df) __C), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fmsubadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddsubpd ((__v2df) __A, - (__v2df) __B, - -(__v2df) __C), - (__v2df) __A); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsubadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddsubpd ((__v2df) __A, - (__v2df) __B, - -(__v2df) __C), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_fmaddsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, - (__v4df) __B, - (__v4df) __C), - (__v4df) __A); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmaddsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, - (__v4df) __B, - (__v4df) __C), - (__v4df) __C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmaddsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, - (__v4df) __B, - (__v4df) __C), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_fmsubadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, - (__v4df) __B, - -(__v4df) __C), - (__v4df) __A); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmsubadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, - (__v4df) __B, - -(__v4df) __C), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fmaddsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddsubps ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __C), - (__v4sf) __A); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fmaddsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddsubps ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __C), - (__v4sf) __C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fmaddsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddsubps ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __C), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fmsubadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddsubps ((__v4sf) __A, - (__v4sf) __B, - -(__v4sf) __C), - (__v4sf) __A); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_fmsubadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddsubps ((__v4sf) __A, - (__v4sf) __B, - -(__v4sf) __C), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_fmaddsub_ps(__m256 __A, __mmask8 __U, __m256 __B, - __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) __C), - (__v8sf) __A); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmaddsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) __C), - (__v8sf) __C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmaddsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) __C), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_fmsubadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, - (__v8sf) __B, - -(__v8sf) __C), - (__v8sf) __A); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_fmsubadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, - (__v8sf) __B, - -(__v8sf) __C), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - (__v2df) __B, - -(__v2df) __C), - (__v2df) __C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - (__v4df) __B, - -(__v4df) __C), - (__v4df) __C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - (__v4sf) __B, - -(__v4sf) __C), - (__v4sf) __C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - (__v8sf) __B, - -(__v8sf) __C), - (__v8sf) __C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsubadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddsubpd ((__v2df) __A, - (__v2df) __B, - -(__v2df) __C), - (__v2df) __C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmsubadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddsubpd256 ((__v4df) __A, - (__v4df) __B, - -(__v4df) __C), - (__v4df) __C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fmsubadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddsubps ((__v4sf) __A, - (__v4sf) __B, - -(__v4sf) __C), - (__v4sf) __C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask3_fmsubadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddsubps256 ((__v8sf) __A, - (__v8sf) __B, - -(__v8sf) __C), - (__v8sf) __C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fnmadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - -(__v2df) __B, - (__v2df) __C), - (__v2df) __A); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_fnmadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - -(__v4df) __B, - (__v4df) __C), - (__v4df) __A); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fnmadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - -(__v4sf) __B, - (__v4sf) __C), - (__v4sf) __A); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_fnmadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - -(__v8sf) __B, - (__v8sf) __C), - (__v8sf) __A); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_fnmsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - -(__v2df) __B, - -(__v2df) __C), - (__v2df) __A); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U) -{ - return (__m128d) __builtin_ia32_selectpd_128((__mmask8) __U, - __builtin_ia32_vfmaddpd ((__v2df) __A, - -(__v2df) __B, - -(__v2df) __C), - (__v2df) __C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_fnmsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - -(__v4df) __B, - -(__v4df) __C), - (__v4df) __A); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask3_fnmsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U) -{ - return (__m256d) __builtin_ia32_selectpd_256((__mmask8) __U, - __builtin_ia32_vfmaddpd256 ((__v4df) __A, - -(__v4df) __B, - -(__v4df) __C), - (__v4df) __C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_fnmsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - -(__v4sf) __B, - -(__v4sf) __C), - (__v4sf) __A); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask3_fnmsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U) -{ - return (__m128) __builtin_ia32_selectps_128((__mmask8) __U, - __builtin_ia32_vfmaddps ((__v4sf) __A, - -(__v4sf) __B, - -(__v4sf) __C), - (__v4sf) __C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_fnmsub_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - -(__v8sf) __B, - -(__v8sf) __C), - (__v8sf) __A); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask3_fnmsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U) -{ - return (__m256) __builtin_ia32_selectps_256((__mmask8) __U, - __builtin_ia32_vfmaddps256 ((__v8sf) __A, - -(__v8sf) __B, - -(__v8sf) __C), - (__v8sf) __C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_add_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_add_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_add_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_add_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_add_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_add_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_add_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_add_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_add_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_add_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_add_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_add_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_add_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_add_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_add_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_add_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_blend_epi32 (__mmask8 __U, __m128i __A, __m128i __W) { - return (__m128i) __builtin_ia32_selectd_128 ((__mmask8) __U, - (__v4si) __W, - (__v4si) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_blend_epi32 (__mmask8 __U, __m256i __A, __m256i __W) { - return (__m256i) __builtin_ia32_selectd_256 ((__mmask8) __U, - (__v8si) __W, - (__v8si) __A); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_blend_pd (__mmask8 __U, __m128d __A, __m128d __W) { - return (__m128d) __builtin_ia32_selectpd_128 ((__mmask8) __U, - (__v2df) __W, - (__v2df) __A); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_blend_pd (__mmask8 __U, __m256d __A, __m256d __W) { - return (__m256d) __builtin_ia32_selectpd_256 ((__mmask8) __U, - (__v4df) __W, - (__v4df) __A); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_blend_ps (__mmask8 __U, __m128 __A, __m128 __W) { - return (__m128) __builtin_ia32_selectps_128 ((__mmask8) __U, - (__v4sf) __W, - (__v4sf) __A); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_blend_ps (__mmask8 __U, __m256 __A, __m256 __W) { - return (__m256) __builtin_ia32_selectps_256 ((__mmask8) __U, - (__v8sf) __W, - (__v8sf) __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_blend_epi64 (__mmask8 __U, __m128i __A, __m128i __W) { - return (__m128i) __builtin_ia32_selectq_128 ((__mmask8) __U, - (__v2di) __W, - (__v2di) __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_blend_epi64 (__mmask8 __U, __m256i __A, __m256i __W) { - return (__m256i) __builtin_ia32_selectq_256 ((__mmask8) __U, - (__v4di) __W, - (__v4di) __A); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_compress_pd (__m128d __W, __mmask8 __U, __m128d __A) { - return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_compress_pd (__mmask8 __U, __m128d __A) { - return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A, - (__v2df) - _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_compress_pd (__m256d __W, __mmask8 __U, __m256d __A) { - return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A, - (__v4df) __W, - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_compress_pd (__mmask8 __U, __m256d __A) { - return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_compress_epi64 (__m128i __W, __mmask8 __U, __m128i __A) { - return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_compress_epi64 (__mmask8 __U, __m128i __A) { - return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A, - (__v2di) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_compress_epi64 (__m256i __W, __mmask8 __U, __m256i __A) { - return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_compress_epi64 (__mmask8 __U, __m256i __A) { - return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A, - (__v4di) - _mm256_setzero_si256 (), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_compress_ps (__m128 __W, __mmask8 __U, __m128 __A) { - return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_compress_ps (__mmask8 __U, __m128 __A) { - return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_compress_ps (__m256 __W, __mmask8 __U, __m256 __A) { - return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_compress_ps (__mmask8 __U, __m256 __A) { - return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_compress_epi32 (__m128i __W, __mmask8 __U, __m128i __A) { - return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_compress_epi32 (__mmask8 __U, __m128i __A) { - return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_compress_epi32 (__m256i __W, __mmask8 __U, __m256i __A) { - return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A, - (__v8si) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_compress_epi32 (__mmask8 __U, __m256i __A) { - return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m128d __A) { - __builtin_ia32_compressstoredf128_mask ((__v2df *) __P, - (__v2df) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m256d __A) { - __builtin_ia32_compressstoredf256_mask ((__v4df *) __P, - (__v4df) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m128i __A) { - __builtin_ia32_compressstoredi128_mask ((__v2di *) __P, - (__v2di) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m256i __A) { - __builtin_ia32_compressstoredi256_mask ((__v4di *) __P, - (__v4di) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m128 __A) { - __builtin_ia32_compressstoresf128_mask ((__v4sf *) __P, - (__v4sf) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m256 __A) { - __builtin_ia32_compressstoresf256_mask ((__v8sf *) __P, - (__v8sf) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m128i __A) { - __builtin_ia32_compressstoresi128_mask ((__v4si *) __P, - (__v4si) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m256i __A) { - __builtin_ia32_compressstoresi256_mask ((__v8si *) __P, - (__v8si) __A, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi32_pd (__m128d __W, __mmask8 __U, __m128i __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8) __U, - (__v2df)_mm_cvtepi32_pd(__A), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8) __U, - (__v2df)_mm_cvtepi32_pd(__A), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi32_pd (__m256d __W, __mmask8 __U, __m128i __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8) __U, - (__v4df)_mm256_cvtepi32_pd(__A), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8) __U, - (__v4df)_mm256_cvtepi32_pd(__A), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi32_ps (__m128 __W, __mmask8 __U, __m128i __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_cvtepi32_ps(__A), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi32_ps (__mmask8 __U, __m128i __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_cvtepi32_ps(__A), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi32_ps (__m256 __W, __mmask8 __U, __m256i __A) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_cvtepi32_ps(__A), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi32_ps (__mmask8 __U, __m256i __A) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_cvtepi32_ps(__A), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtpd_epi32 (__mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm256_cvtpd_epi32(__A), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtpd_epi32 (__mmask8 __U, __m256d __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm256_cvtpd_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m128d __A) { - return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtpd_ps (__mmask8 __U, __m128d __A) { - return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m256d __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm256_cvtpd_ps(__A), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtpd_ps (__mmask8 __U, __m256d __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm256_cvtpd_ps(__A), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtpd_epu32 (__m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtpd_epu32 (__mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtpd_epu32 (__m256d __A) { - return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A) { - return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtpd_epu32 (__mmask8 __U, __m256d __A) { - return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtps_epi32 (__m128i __W, __mmask8 __U, __m128 __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtps_epi32(__A), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtps_epi32 (__mmask8 __U, __m128 __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtps_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtps_epi32 (__m256i __W, __mmask8 __U, __m256 __A) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtps_epi32(__A), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtps_epi32 (__mmask8 __U, __m256 __A) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtps_epi32(__A), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_cvtps_pd (__m128d __W, __mmask8 __U, __m128 __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_cvtps_pd(__A), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtps_pd (__mmask8 __U, __m128 __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_cvtps_pd(__A), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtps_pd (__m256d __W, __mmask8 __U, __m128 __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_cvtps_pd(__A), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtps_pd (__mmask8 __U, __m128 __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_cvtps_pd(__A), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtps_epu32 (__m128 __A) { - return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtps_epu32 (__m128i __W, __mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtps_epu32 (__mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvtps_epu32 (__m256 __A) { - return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtps_epu32 (__m256i __W, __mmask8 __U, __m256 __A) { - return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A, - (__v8si) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtps_epu32 (__mmask8 __U, __m256 __A) { - return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttpd_epi32 (__mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm256_cvttpd_epi32(__A), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttpd_epi32 (__mmask8 __U, __m256d __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm256_cvttpd_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvttpd_epu32 (__m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttpd_epu32 (__mmask8 __U, __m128d __A) { - return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvttpd_epu32 (__m256d __A) { - return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A) { - return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttpd_epu32 (__mmask8 __U, __m256d __A) { - return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttps_epi32 (__m128i __W, __mmask8 __U, __m128 __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvttps_epi32(__A), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttps_epi32 (__mmask8 __U, __m128 __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvttps_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttps_epi32 (__m256i __W, __mmask8 __U, __m256 __A) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvttps_epi32(__A), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttps_epi32 (__mmask8 __U, __m256 __A) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvttps_epi32(__A), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvttps_epu32 (__m128 __A) { - return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvttps_epu32 (__m128i __W, __mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvttps_epu32 (__mmask8 __U, __m128 __A) { - return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_cvttps_epu32 (__m256 __A) { - return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) -1); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvttps_epu32 (__m256i __W, __mmask8 __U, __m256 __A) { - return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A, - (__v8si) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvttps_epu32 (__mmask8 __U, __m256 __A) { - return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_cvtepu32_pd (__m128i __A) { - return (__m128d) __builtin_convertvector( - __builtin_shufflevector((__v4su)__A, (__v4su)__A, 0, 1), __v2df); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepu32_pd (__m128d __W, __mmask8 __U, __m128i __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8) __U, - (__v2df)_mm_cvtepu32_pd(__A), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8) __U, - (__v2df)_mm_cvtepu32_pd(__A), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_cvtepu32_pd (__m128i __A) { - return (__m256d)__builtin_convertvector((__v4su)__A, __v4df); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepu32_pd (__m256d __W, __mmask8 __U, __m128i __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8) __U, - (__v4df)_mm256_cvtepu32_pd(__A), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8) __U, - (__v4df)_mm256_cvtepu32_pd(__A), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtepu32_ps (__m128i __A) { - return (__m128)__builtin_convertvector((__v4su)__A, __v4sf); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepu32_ps (__m128 __W, __mmask8 __U, __m128i __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_cvtepu32_ps(__A), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepu32_ps (__mmask8 __U, __m128i __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_cvtepu32_ps(__A), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_cvtepu32_ps (__m256i __A) { - return (__m256)__builtin_convertvector((__v8su)__A, __v8sf); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepu32_ps (__m256 __W, __mmask8 __U, __m256i __A) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_cvtepu32_ps(__A), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepu32_ps (__mmask8 __U, __m256i __A) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_cvtepu32_ps(__A), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_div_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_div_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_div_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_div_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_div_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_div_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_div_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_div_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_div_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_div_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_div_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_div_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_div_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_div_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_div_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_div_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_expand_pd (__m128d __W, __mmask8 __U, __m128d __A) { - return (__m128d) __builtin_ia32_expanddf128_mask ((__v2df) __A, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_expand_pd (__mmask8 __U, __m128d __A) { - return (__m128d) __builtin_ia32_expanddf128_mask ((__v2df) __A, - (__v2df) - _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_expand_pd (__m256d __W, __mmask8 __U, __m256d __A) { - return (__m256d) __builtin_ia32_expanddf256_mask ((__v4df) __A, - (__v4df) __W, - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_expand_pd (__mmask8 __U, __m256d __A) { - return (__m256d) __builtin_ia32_expanddf256_mask ((__v4df) __A, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_expand_epi64 (__m128i __W, __mmask8 __U, __m128i __A) { - return (__m128i) __builtin_ia32_expanddi128_mask ((__v2di) __A, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_expand_epi64 (__mmask8 __U, __m128i __A) { - return (__m128i) __builtin_ia32_expanddi128_mask ((__v2di) __A, - (__v2di) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_expand_epi64 (__m256i __W, __mmask8 __U, __m256i __A) { - return (__m256i) __builtin_ia32_expanddi256_mask ((__v4di) __A, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_expand_epi64 (__mmask8 __U, __m256i __A) { - return (__m256i) __builtin_ia32_expanddi256_mask ((__v4di) __A, - (__v4di) - _mm256_setzero_si256 (), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_expandloadu_pd (__m128d __W, __mmask8 __U, void const *__P) { - return (__m128d) __builtin_ia32_expandloaddf128_mask ((const __v2df *) __P, - (__v2df) __W, - (__mmask8) - __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_expandloadu_pd (__mmask8 __U, void const *__P) { - return (__m128d) __builtin_ia32_expandloaddf128_mask ((const __v2df *) __P, - (__v2df) - _mm_setzero_pd (), - (__mmask8) - __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_expandloadu_pd (__m256d __W, __mmask8 __U, void const *__P) { - return (__m256d) __builtin_ia32_expandloaddf256_mask ((const __v4df *) __P, - (__v4df) __W, - (__mmask8) - __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_expandloadu_pd (__mmask8 __U, void const *__P) { - return (__m256d) __builtin_ia32_expandloaddf256_mask ((const __v4df *) __P, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_expandloadu_epi64 (__m128i __W, __mmask8 __U, void const *__P) { - return (__m128i) __builtin_ia32_expandloaddi128_mask ((const __v2di *) __P, - (__v2di) __W, - (__mmask8) - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P) { - return (__m128i) __builtin_ia32_expandloaddi128_mask ((const __v2di *) __P, - (__v2di) - _mm_setzero_si128 (), - (__mmask8) - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_expandloadu_epi64 (__m256i __W, __mmask8 __U, - void const *__P) { - return (__m256i) __builtin_ia32_expandloaddi256_mask ((const __v4di *) __P, - (__v4di) __W, - (__mmask8) - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P) { - return (__m256i) __builtin_ia32_expandloaddi256_mask ((const __v4di *) __P, - (__v4di) - _mm256_setzero_si256 (), - (__mmask8) - __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_expandloadu_ps (__m128 __W, __mmask8 __U, void const *__P) { - return (__m128) __builtin_ia32_expandloadsf128_mask ((const __v4sf *) __P, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_expandloadu_ps (__mmask8 __U, void const *__P) { - return (__m128) __builtin_ia32_expandloadsf128_mask ((const __v4sf *) __P, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) - __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_expandloadu_ps (__m256 __W, __mmask8 __U, void const *__P) { - return (__m256) __builtin_ia32_expandloadsf256_mask ((const __v8sf *) __P, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_expandloadu_ps (__mmask8 __U, void const *__P) { - return (__m256) __builtin_ia32_expandloadsf256_mask ((const __v8sf *) __P, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_expandloadu_epi32 (__m128i __W, __mmask8 __U, void const *__P) { - return (__m128i) __builtin_ia32_expandloadsi128_mask ((const __v4si *) __P, - (__v4si) __W, - (__mmask8) - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P) { - return (__m128i) __builtin_ia32_expandloadsi128_mask ((const __v4si *) __P, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_expandloadu_epi32 (__m256i __W, __mmask8 __U, - void const *__P) { - return (__m256i) __builtin_ia32_expandloadsi256_mask ((const __v8si *) __P, - (__v8si) __W, - (__mmask8) - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P) { - return (__m256i) __builtin_ia32_expandloadsi256_mask ((const __v8si *) __P, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) - __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_expand_ps (__m128 __W, __mmask8 __U, __m128 __A) { - return (__m128) __builtin_ia32_expandsf128_mask ((__v4sf) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_expand_ps (__mmask8 __U, __m128 __A) { - return (__m128) __builtin_ia32_expandsf128_mask ((__v4sf) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_expand_ps (__m256 __W, __mmask8 __U, __m256 __A) { - return (__m256) __builtin_ia32_expandsf256_mask ((__v8sf) __A, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_expand_ps (__mmask8 __U, __m256 __A) { - return (__m256) __builtin_ia32_expandsf256_mask ((__v8sf) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_expand_epi32 (__m128i __W, __mmask8 __U, __m128i __A) { - return (__m128i) __builtin_ia32_expandsi128_mask ((__v4si) __A, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_expand_epi32 (__mmask8 __U, __m128i __A) { - return (__m128i) __builtin_ia32_expandsi128_mask ((__v4si) __A, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_expand_epi32 (__m256i __W, __mmask8 __U, __m256i __A) { - return (__m256i) __builtin_ia32_expandsi256_mask ((__v8si) __A, - (__v8si) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_expand_epi32 (__mmask8 __U, __m256i __A) { - return (__m256i) __builtin_ia32_expandsi256_mask ((__v8si) __A, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_getexp_pd (__m128d __A) { - return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A, - (__v2df) - _mm_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_getexp_pd (__m128d __W, __mmask8 __U, __m128d __A) { - return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_getexp_pd (__mmask8 __U, __m128d __A) { - return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A, - (__v2df) - _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_getexp_pd (__m256d __A) { - return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_getexp_pd (__m256d __W, __mmask8 __U, __m256d __A) { - return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A, - (__v4df) __W, - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_getexp_pd (__mmask8 __U, __m256d __A) { - return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_getexp_ps (__m128 __A) { - return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_getexp_ps (__m128 __W, __mmask8 __U, __m128 __A) { - return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_getexp_ps (__mmask8 __U, __m128 __A) { - return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_getexp_ps (__m256 __A) { - return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_getexp_ps (__m256 __W, __mmask8 __U, __m256 __A) { - return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_getexp_ps (__mmask8 __U, __m256 __A) { - return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_max_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_max_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_max_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_max_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_max_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_max_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_max_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_max_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_max_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_max_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_max_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_max_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_max_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_max_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_min_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_min_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_min_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_min_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_min_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_min_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_min_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_min_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_min_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_min_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_min_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_min_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_min_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_min_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_mul_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_mul_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_mul_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_mul_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_mul_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_mul_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_mul_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_mul_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_mul_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_mul_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_mul_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_mul_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_mul_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_mul_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_mul_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_mul_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_abs_epi32(__m128i __W, __mmask8 __U, __m128i __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_abs_epi32(__A), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_abs_epi32(__mmask8 __U, __m128i __A) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_abs_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_abs_epi32(__m256i __W, __mmask8 __U, __m256i __A) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_abs_epi32(__A), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_abs_epi32(__mmask8 __U, __m256i __A) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_abs_epi32(__A), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_abs_epi64 (__m128i __A) { - return (__m128i)__builtin_elementwise_abs((__v2di)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_abs_epi64 (__m128i __W, __mmask8 __U, __m128i __A) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_abs_epi64(__A), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_abs_epi64 (__mmask8 __U, __m128i __A) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_abs_epi64(__A), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_abs_epi64 (__m256i __A) { - return (__m256i)__builtin_elementwise_abs((__v4di)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_abs_epi64 (__m256i __W, __mmask8 __U, __m256i __A) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_abs_epi64(__A), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_abs_epi64 (__mmask8 __U, __m256i __A) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_abs_epi64(__A), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_max_epi32(__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_max_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_max_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_max_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_epi32(__mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_max_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_max_epi32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_max_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_max_epi64 (__m128i __A, __m128i __B) { - return (__m128i)__builtin_elementwise_max((__v2di)__A, (__v2di)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_max_epi64 (__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_max_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_max_epi64 (__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_max_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_max_epi64 (__m256i __A, __m256i __B) { - return (__m256i)__builtin_elementwise_max((__v4di)__A, (__v4di)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_epi64 (__mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_max_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_max_epi64 (__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_max_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_max_epu32(__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_max_epu32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_max_epu32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_max_epu32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_epu32(__mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_max_epu32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_max_epu32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_max_epu32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_max_epu64 (__m128i __A, __m128i __B) { - return (__m128i)__builtin_elementwise_max((__v2du)__A, (__v2du)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_max_epu64 (__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_max_epu64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_max_epu64 (__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_max_epu64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_max_epu64 (__m256i __A, __m256i __B) { - return (__m256i)__builtin_elementwise_max((__v4du)__A, (__v4du)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_max_epu64 (__mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_max_epu64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_max_epu64 (__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_max_epu64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_min_epi32(__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_min_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_min_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_min_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_epi32(__mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_min_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_min_epi32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_min_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_min_epi64 (__m128i __A, __m128i __B) { - return (__m128i)__builtin_elementwise_min((__v2di)__A, (__v2di)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_min_epi64 (__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_min_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_min_epi64 (__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_min_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_min_epi64 (__m256i __A, __m256i __B) { - return (__m256i)__builtin_elementwise_min((__v4di)__A, (__v4di)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_min_epi64 (__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_min_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_epi64 (__mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_min_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_min_epu32(__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_min_epu32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_min_epu32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm_min_epu32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_epu32(__mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_min_epu32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_min_epu32(__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_min_epu32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_min_epu64 (__m128i __A, __m128i __B) { - return (__m128i)__builtin_elementwise_min((__v2du)__A, (__v2du)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_min_epu64 (__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_min_epu64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_min_epu64 (__mmask8 __M, __m128i __A, __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__M, - (__v2di)_mm_min_epu64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_min_epu64 (__m256i __A, __m256i __B) { - return (__m256i)__builtin_elementwise_min((__v4du)__A, (__v4du)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_min_epu64 (__m256i __W, __mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_min_epu64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_min_epu64 (__mmask8 __M, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_min_epu64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -#define _mm_roundscale_pd(A, imm) \ - ((__m128d)__builtin_ia32_rndscalepd_128_mask((__v2df)(__m128d)(A), \ - (int)(imm), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1)) - - -#define _mm_mask_roundscale_pd(W, U, A, imm) \ - ((__m128d)__builtin_ia32_rndscalepd_128_mask((__v2df)(__m128d)(A), \ - (int)(imm), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U))) - - -#define _mm_maskz_roundscale_pd(U, A, imm) \ - ((__m128d)__builtin_ia32_rndscalepd_128_mask((__v2df)(__m128d)(A), \ - (int)(imm), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U))) - - -#define _mm256_roundscale_pd(A, imm) \ - ((__m256d)__builtin_ia32_rndscalepd_256_mask((__v4df)(__m256d)(A), \ - (int)(imm), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)-1)) - - -#define _mm256_mask_roundscale_pd(W, U, A, imm) \ - ((__m256d)__builtin_ia32_rndscalepd_256_mask((__v4df)(__m256d)(A), \ - (int)(imm), \ - (__v4df)(__m256d)(W), \ - (__mmask8)(U))) - - -#define _mm256_maskz_roundscale_pd(U, A, imm) \ - ((__m256d)__builtin_ia32_rndscalepd_256_mask((__v4df)(__m256d)(A), \ - (int)(imm), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm_roundscale_ps(A, imm) \ - ((__m128)__builtin_ia32_rndscaleps_128_mask((__v4sf)(__m128)(A), (int)(imm), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1)) - - -#define _mm_mask_roundscale_ps(W, U, A, imm) \ - ((__m128)__builtin_ia32_rndscaleps_128_mask((__v4sf)(__m128)(A), (int)(imm), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U))) - - -#define _mm_maskz_roundscale_ps(U, A, imm) \ - ((__m128)__builtin_ia32_rndscaleps_128_mask((__v4sf)(__m128)(A), (int)(imm), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U))) - -#define _mm256_roundscale_ps(A, imm) \ - ((__m256)__builtin_ia32_rndscaleps_256_mask((__v8sf)(__m256)(A), (int)(imm), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)-1)) - -#define _mm256_mask_roundscale_ps(W, U, A, imm) \ - ((__m256)__builtin_ia32_rndscaleps_256_mask((__v8sf)(__m256)(A), (int)(imm), \ - (__v8sf)(__m256)(W), \ - (__mmask8)(U))) - - -#define _mm256_maskz_roundscale_ps(U, A, imm) \ - ((__m256)__builtin_ia32_rndscaleps_256_mask((__v8sf)(__m256)(A), (int)(imm), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)(U))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_scalef_pd (__m128d __A, __m128d __B) { - return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) - _mm_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_scalef_pd (__m128d __W, __mmask8 __U, __m128d __A, - __m128d __B) { - return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_scalef_pd (__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A, - (__v2df) __B, - (__v2df) - _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_scalef_pd (__m256d __A, __m256d __B) { - return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A, - (__v4df) __B, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_scalef_pd (__m256d __W, __mmask8 __U, __m256d __A, - __m256d __B) { - return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A, - (__v4df) __B, - (__v4df) __W, - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_scalef_pd (__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A, - (__v4df) __B, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_scalef_ps (__m128 __A, __m128 __B) { - return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_scalef_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_scalef_ps (__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A, - (__v4sf) __B, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_scalef_ps (__m256 __A, __m256 __B) { - return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_scalef_ps (__m256 __W, __mmask8 __U, __m256 __A, - __m256 __B) { - return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_scalef_ps (__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A, - (__v8sf) __B, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -#define _mm_i64scatter_pd(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv2df((void *)(addr), (__mmask8)-1, \ - (__v2di)(__m128i)(index), \ - (__v2df)(__m128d)(v1), (int)(scale)) - -#define _mm_mask_i64scatter_pd(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv2df((void *)(addr), (__mmask8)(mask), \ - (__v2di)(__m128i)(index), \ - (__v2df)(__m128d)(v1), (int)(scale)) - -#define _mm_i64scatter_epi64(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv2di((void *)(addr), (__mmask8)-1, \ - (__v2di)(__m128i)(index), \ - (__v2di)(__m128i)(v1), (int)(scale)) - -#define _mm_mask_i64scatter_epi64(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv2di((void *)(addr), (__mmask8)(mask), \ - (__v2di)(__m128i)(index), \ - (__v2di)(__m128i)(v1), (int)(scale)) - -#define _mm256_i64scatter_pd(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv4df((void *)(addr), (__mmask8)-1, \ - (__v4di)(__m256i)(index), \ - (__v4df)(__m256d)(v1), (int)(scale)) - -#define _mm256_mask_i64scatter_pd(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv4df((void *)(addr), (__mmask8)(mask), \ - (__v4di)(__m256i)(index), \ - (__v4df)(__m256d)(v1), (int)(scale)) - -#define _mm256_i64scatter_epi64(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv4di((void *)(addr), (__mmask8)-1, \ - (__v4di)(__m256i)(index), \ - (__v4di)(__m256i)(v1), (int)(scale)) - -#define _mm256_mask_i64scatter_epi64(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv4di((void *)(addr), (__mmask8)(mask), \ - (__v4di)(__m256i)(index), \ - (__v4di)(__m256i)(v1), (int)(scale)) - -#define _mm_i64scatter_ps(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv4sf((void *)(addr), (__mmask8)-1, \ - (__v2di)(__m128i)(index), (__v4sf)(__m128)(v1), \ - (int)(scale)) - -#define _mm_mask_i64scatter_ps(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv4sf((void *)(addr), (__mmask8)(mask), \ - (__v2di)(__m128i)(index), (__v4sf)(__m128)(v1), \ - (int)(scale)) - -#define _mm_i64scatter_epi32(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv4si((void *)(addr), (__mmask8)-1, \ - (__v2di)(__m128i)(index), \ - (__v4si)(__m128i)(v1), (int)(scale)) - -#define _mm_mask_i64scatter_epi32(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv4si((void *)(addr), (__mmask8)(mask), \ - (__v2di)(__m128i)(index), \ - (__v4si)(__m128i)(v1), (int)(scale)) - -#define _mm256_i64scatter_ps(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv8sf((void *)(addr), (__mmask8)-1, \ - (__v4di)(__m256i)(index), (__v4sf)(__m128)(v1), \ - (int)(scale)) - -#define _mm256_mask_i64scatter_ps(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv8sf((void *)(addr), (__mmask8)(mask), \ - (__v4di)(__m256i)(index), (__v4sf)(__m128)(v1), \ - (int)(scale)) - -#define _mm256_i64scatter_epi32(addr, index, v1, scale) \ - __builtin_ia32_scatterdiv8si((void *)(addr), (__mmask8)-1, \ - (__v4di)(__m256i)(index), \ - (__v4si)(__m128i)(v1), (int)(scale)) - -#define _mm256_mask_i64scatter_epi32(addr, mask, index, v1, scale) \ - __builtin_ia32_scatterdiv8si((void *)(addr), (__mmask8)(mask), \ - (__v4di)(__m256i)(index), \ - (__v4si)(__m128i)(v1), (int)(scale)) - -#define _mm_i32scatter_pd(addr, index, v1, scale) \ - __builtin_ia32_scattersiv2df((void *)(addr), (__mmask8)-1, \ - (__v4si)(__m128i)(index), \ - (__v2df)(__m128d)(v1), (int)(scale)) - -#define _mm_mask_i32scatter_pd(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv2df((void *)(addr), (__mmask8)(mask), \ - (__v4si)(__m128i)(index), \ - (__v2df)(__m128d)(v1), (int)(scale)) - -#define _mm_i32scatter_epi64(addr, index, v1, scale) \ - __builtin_ia32_scattersiv2di((void *)(addr), (__mmask8)-1, \ - (__v4si)(__m128i)(index), \ - (__v2di)(__m128i)(v1), (int)(scale)) - -#define _mm_mask_i32scatter_epi64(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv2di((void *)(addr), (__mmask8)(mask), \ - (__v4si)(__m128i)(index), \ - (__v2di)(__m128i)(v1), (int)(scale)) - -#define _mm256_i32scatter_pd(addr, index, v1, scale) \ - __builtin_ia32_scattersiv4df((void *)(addr), (__mmask8)-1, \ - (__v4si)(__m128i)(index), \ - (__v4df)(__m256d)(v1), (int)(scale)) - -#define _mm256_mask_i32scatter_pd(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv4df((void *)(addr), (__mmask8)(mask), \ - (__v4si)(__m128i)(index), \ - (__v4df)(__m256d)(v1), (int)(scale)) - -#define _mm256_i32scatter_epi64(addr, index, v1, scale) \ - __builtin_ia32_scattersiv4di((void *)(addr), (__mmask8)-1, \ - (__v4si)(__m128i)(index), \ - (__v4di)(__m256i)(v1), (int)(scale)) - -#define _mm256_mask_i32scatter_epi64(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv4di((void *)(addr), (__mmask8)(mask), \ - (__v4si)(__m128i)(index), \ - (__v4di)(__m256i)(v1), (int)(scale)) - -#define _mm_i32scatter_ps(addr, index, v1, scale) \ - __builtin_ia32_scattersiv4sf((void *)(addr), (__mmask8)-1, \ - (__v4si)(__m128i)(index), (__v4sf)(__m128)(v1), \ - (int)(scale)) - -#define _mm_mask_i32scatter_ps(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv4sf((void *)(addr), (__mmask8)(mask), \ - (__v4si)(__m128i)(index), (__v4sf)(__m128)(v1), \ - (int)(scale)) - -#define _mm_i32scatter_epi32(addr, index, v1, scale) \ - __builtin_ia32_scattersiv4si((void *)(addr), (__mmask8)-1, \ - (__v4si)(__m128i)(index), \ - (__v4si)(__m128i)(v1), (int)(scale)) - -#define _mm_mask_i32scatter_epi32(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv4si((void *)(addr), (__mmask8)(mask), \ - (__v4si)(__m128i)(index), \ - (__v4si)(__m128i)(v1), (int)(scale)) - -#define _mm256_i32scatter_ps(addr, index, v1, scale) \ - __builtin_ia32_scattersiv8sf((void *)(addr), (__mmask8)-1, \ - (__v8si)(__m256i)(index), (__v8sf)(__m256)(v1), \ - (int)(scale)) - -#define _mm256_mask_i32scatter_ps(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv8sf((void *)(addr), (__mmask8)(mask), \ - (__v8si)(__m256i)(index), (__v8sf)(__m256)(v1), \ - (int)(scale)) - -#define _mm256_i32scatter_epi32(addr, index, v1, scale) \ - __builtin_ia32_scattersiv8si((void *)(addr), (__mmask8)-1, \ - (__v8si)(__m256i)(index), \ - (__v8si)(__m256i)(v1), (int)(scale)) - -#define _mm256_mask_i32scatter_epi32(addr, mask, index, v1, scale) \ - __builtin_ia32_scattersiv8si((void *)(addr), (__mmask8)(mask), \ - (__v8si)(__m256i)(index), \ - (__v8si)(__m256i)(v1), (int)(scale)) - - static __inline__ __m128d __DEFAULT_FN_ATTRS128 - _mm_mask_sqrt_pd(__m128d __W, __mmask8 __U, __m128d __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_sqrt_pd(__A), - (__v2df)__W); - } - - static __inline__ __m128d __DEFAULT_FN_ATTRS128 - _mm_maskz_sqrt_pd(__mmask8 __U, __m128d __A) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_sqrt_pd(__A), - (__v2df)_mm_setzero_pd()); - } - - static __inline__ __m256d __DEFAULT_FN_ATTRS256 - _mm256_mask_sqrt_pd(__m256d __W, __mmask8 __U, __m256d __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_sqrt_pd(__A), - (__v4df)__W); - } - - static __inline__ __m256d __DEFAULT_FN_ATTRS256 - _mm256_maskz_sqrt_pd(__mmask8 __U, __m256d __A) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_sqrt_pd(__A), - (__v4df)_mm256_setzero_pd()); - } - - static __inline__ __m128 __DEFAULT_FN_ATTRS128 - _mm_mask_sqrt_ps(__m128 __W, __mmask8 __U, __m128 __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_sqrt_ps(__A), - (__v4sf)__W); - } - - static __inline__ __m128 __DEFAULT_FN_ATTRS128 - _mm_maskz_sqrt_ps(__mmask8 __U, __m128 __A) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_sqrt_ps(__A), - (__v4sf)_mm_setzero_ps()); - } - - static __inline__ __m256 __DEFAULT_FN_ATTRS256 - _mm256_mask_sqrt_ps(__m256 __W, __mmask8 __U, __m256 __A) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_sqrt_ps(__A), - (__v8sf)__W); - } - - static __inline__ __m256 __DEFAULT_FN_ATTRS256 - _mm256_maskz_sqrt_ps(__mmask8 __U, __m256 __A) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_sqrt_ps(__A), - (__v8sf)_mm256_setzero_ps()); - } - - static __inline__ __m128d __DEFAULT_FN_ATTRS128 - _mm_mask_sub_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_sub_pd(__A, __B), - (__v2df)__W); - } - - static __inline__ __m128d __DEFAULT_FN_ATTRS128 - _mm_maskz_sub_pd(__mmask8 __U, __m128d __A, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_sub_pd(__A, __B), - (__v2df)_mm_setzero_pd()); - } - - static __inline__ __m256d __DEFAULT_FN_ATTRS256 - _mm256_mask_sub_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_sub_pd(__A, __B), - (__v4df)__W); - } - - static __inline__ __m256d __DEFAULT_FN_ATTRS256 - _mm256_maskz_sub_pd(__mmask8 __U, __m256d __A, __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_sub_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); - } - - static __inline__ __m128 __DEFAULT_FN_ATTRS128 - _mm_mask_sub_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_sub_ps(__A, __B), - (__v4sf)__W); - } - - static __inline__ __m128 __DEFAULT_FN_ATTRS128 - _mm_maskz_sub_ps(__mmask8 __U, __m128 __A, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_sub_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); - } - - static __inline__ __m256 __DEFAULT_FN_ATTRS256 - _mm256_mask_sub_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_sub_ps(__A, __B), - (__v8sf)__W); - } - - static __inline__ __m256 __DEFAULT_FN_ATTRS256 - _mm256_maskz_sub_ps(__mmask8 __U, __m256 __A, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_sub_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_permutex2var_epi32(__m128i __A, __m128i __I, __m128i __B) { - return (__m128i)__builtin_ia32_vpermi2vard128((__v4si) __A, (__v4si)__I, - (__v4si)__B); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_permutex2var_epi32(__m128i __A, __mmask8 __U, __m128i __I, - __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_permutex2var_epi32(__A, __I, __B), - (__v4si)__A); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask2_permutex2var_epi32(__m128i __A, __m128i __I, __mmask8 __U, - __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_permutex2var_epi32(__A, __I, __B), - (__v4si)__I); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_permutex2var_epi32(__mmask8 __U, __m128i __A, __m128i __I, - __m128i __B) { - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_permutex2var_epi32(__A, __I, __B), - (__v4si)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_permutex2var_epi32(__m256i __A, __m256i __I, __m256i __B) { - return (__m256i)__builtin_ia32_vpermi2vard256((__v8si)__A, (__v8si) __I, - (__v8si) __B); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_permutex2var_epi32(__m256i __A, __mmask8 __U, __m256i __I, - __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_permutex2var_epi32(__A, __I, __B), - (__v8si)__A); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask2_permutex2var_epi32(__m256i __A, __m256i __I, __mmask8 __U, - __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_permutex2var_epi32(__A, __I, __B), - (__v8si)__I); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_permutex2var_epi32(__mmask8 __U, __m256i __A, __m256i __I, - __m256i __B) { - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_permutex2var_epi32(__A, __I, __B), - (__v8si)_mm256_setzero_si256()); - } - - static __inline__ __m128d __DEFAULT_FN_ATTRS128 - _mm_permutex2var_pd(__m128d __A, __m128i __I, __m128d __B) { - return (__m128d)__builtin_ia32_vpermi2varpd128((__v2df)__A, (__v2di)__I, - (__v2df)__B); - } - - static __inline__ __m128d __DEFAULT_FN_ATTRS128 - _mm_mask_permutex2var_pd(__m128d __A, __mmask8 __U, __m128i __I, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128(__U, - (__v2df)_mm_permutex2var_pd(__A, __I, __B), - (__v2df)__A); - } - - static __inline__ __m128d __DEFAULT_FN_ATTRS128 - _mm_mask2_permutex2var_pd(__m128d __A, __m128i __I, __mmask8 __U, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128(__U, - (__v2df)_mm_permutex2var_pd(__A, __I, __B), - (__v2df)(__m128d)__I); - } - - static __inline__ __m128d __DEFAULT_FN_ATTRS128 - _mm_maskz_permutex2var_pd(__mmask8 __U, __m128d __A, __m128i __I, __m128d __B) { - return (__m128d)__builtin_ia32_selectpd_128(__U, - (__v2df)_mm_permutex2var_pd(__A, __I, __B), - (__v2df)_mm_setzero_pd()); - } - - static __inline__ __m256d __DEFAULT_FN_ATTRS256 - _mm256_permutex2var_pd(__m256d __A, __m256i __I, __m256d __B) { - return (__m256d)__builtin_ia32_vpermi2varpd256((__v4df)__A, (__v4di)__I, - (__v4df)__B); - } - - static __inline__ __m256d __DEFAULT_FN_ATTRS256 - _mm256_mask_permutex2var_pd(__m256d __A, __mmask8 __U, __m256i __I, - __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256(__U, - (__v4df)_mm256_permutex2var_pd(__A, __I, __B), - (__v4df)__A); - } - - static __inline__ __m256d __DEFAULT_FN_ATTRS256 - _mm256_mask2_permutex2var_pd(__m256d __A, __m256i __I, __mmask8 __U, - __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256(__U, - (__v4df)_mm256_permutex2var_pd(__A, __I, __B), - (__v4df)(__m256d)__I); - } - - static __inline__ __m256d __DEFAULT_FN_ATTRS256 - _mm256_maskz_permutex2var_pd(__mmask8 __U, __m256d __A, __m256i __I, - __m256d __B) { - return (__m256d)__builtin_ia32_selectpd_256(__U, - (__v4df)_mm256_permutex2var_pd(__A, __I, __B), - (__v4df)_mm256_setzero_pd()); - } - - static __inline__ __m128 __DEFAULT_FN_ATTRS128 - _mm_permutex2var_ps(__m128 __A, __m128i __I, __m128 __B) { - return (__m128)__builtin_ia32_vpermi2varps128((__v4sf)__A, (__v4si)__I, - (__v4sf)__B); - } - - static __inline__ __m128 __DEFAULT_FN_ATTRS128 - _mm_mask_permutex2var_ps(__m128 __A, __mmask8 __U, __m128i __I, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128(__U, - (__v4sf)_mm_permutex2var_ps(__A, __I, __B), - (__v4sf)__A); - } - - static __inline__ __m128 __DEFAULT_FN_ATTRS128 - _mm_mask2_permutex2var_ps(__m128 __A, __m128i __I, __mmask8 __U, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128(__U, - (__v4sf)_mm_permutex2var_ps(__A, __I, __B), - (__v4sf)(__m128)__I); - } - - static __inline__ __m128 __DEFAULT_FN_ATTRS128 - _mm_maskz_permutex2var_ps(__mmask8 __U, __m128 __A, __m128i __I, __m128 __B) { - return (__m128)__builtin_ia32_selectps_128(__U, - (__v4sf)_mm_permutex2var_ps(__A, __I, __B), - (__v4sf)_mm_setzero_ps()); - } - - static __inline__ __m256 __DEFAULT_FN_ATTRS256 - _mm256_permutex2var_ps(__m256 __A, __m256i __I, __m256 __B) { - return (__m256)__builtin_ia32_vpermi2varps256((__v8sf)__A, (__v8si)__I, - (__v8sf) __B); - } - - static __inline__ __m256 __DEFAULT_FN_ATTRS256 - _mm256_mask_permutex2var_ps(__m256 __A, __mmask8 __U, __m256i __I, __m256 __B) { - return (__m256)__builtin_ia32_selectps_256(__U, - (__v8sf)_mm256_permutex2var_ps(__A, __I, __B), - (__v8sf)__A); - } - - static __inline__ __m256 __DEFAULT_FN_ATTRS256 - _mm256_mask2_permutex2var_ps(__m256 __A, __m256i __I, __mmask8 __U, - __m256 __B) { - return (__m256)__builtin_ia32_selectps_256(__U, - (__v8sf)_mm256_permutex2var_ps(__A, __I, __B), - (__v8sf)(__m256)__I); - } - - static __inline__ __m256 __DEFAULT_FN_ATTRS256 - _mm256_maskz_permutex2var_ps(__mmask8 __U, __m256 __A, __m256i __I, - __m256 __B) { - return (__m256)__builtin_ia32_selectps_256(__U, - (__v8sf)_mm256_permutex2var_ps(__A, __I, __B), - (__v8sf)_mm256_setzero_ps()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_permutex2var_epi64(__m128i __A, __m128i __I, __m128i __B) { - return (__m128i)__builtin_ia32_vpermi2varq128((__v2di)__A, (__v2di)__I, - (__v2di)__B); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_permutex2var_epi64(__m128i __A, __mmask8 __U, __m128i __I, - __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_permutex2var_epi64(__A, __I, __B), - (__v2di)__A); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask2_permutex2var_epi64(__m128i __A, __m128i __I, __mmask8 __U, - __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_permutex2var_epi64(__A, __I, __B), - (__v2di)__I); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_permutex2var_epi64(__mmask8 __U, __m128i __A, __m128i __I, - __m128i __B) { - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_permutex2var_epi64(__A, __I, __B), - (__v2di)_mm_setzero_si128()); - } - - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_permutex2var_epi64(__m256i __A, __m256i __I, __m256i __B) { - return (__m256i)__builtin_ia32_vpermi2varq256((__v4di)__A, (__v4di) __I, - (__v4di) __B); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_permutex2var_epi64(__m256i __A, __mmask8 __U, __m256i __I, - __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_permutex2var_epi64(__A, __I, __B), - (__v4di)__A); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask2_permutex2var_epi64(__m256i __A, __m256i __I, __mmask8 __U, - __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_permutex2var_epi64(__A, __I, __B), - (__v4di)__I); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_permutex2var_epi64(__mmask8 __U, __m256i __A, __m256i __I, - __m256i __B) { - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_permutex2var_epi64(__A, __I, __B), - (__v4di)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepi8_epi32(__m128i __W, __mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtepi8_epi32(__A), - (__v4si)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepi8_epi32(__mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtepi8_epi32(__A), - (__v4si)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepi8_epi32 (__m256i __W, __mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtepi8_epi32(__A), - (__v8si)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepi8_epi32 (__mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtepi8_epi32(__A), - (__v8si)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepi8_epi64(__m128i __W, __mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepi8_epi64(__A), - (__v2di)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepi8_epi64(__A), - (__v2di)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepi8_epi64(__m256i __W, __mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepi8_epi64(__A), - (__v4di)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepi8_epi64(__A), - (__v4di)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepi32_epi64(__m128i __W, __mmask8 __U, __m128i __X) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepi32_epi64(__X), - (__v2di)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepi32_epi64(__mmask8 __U, __m128i __X) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepi32_epi64(__X), - (__v2di)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepi32_epi64(__m256i __W, __mmask8 __U, __m128i __X) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepi32_epi64(__X), - (__v4di)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepi32_epi64(__mmask8 __U, __m128i __X) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepi32_epi64(__X), - (__v4di)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepi16_epi32(__m128i __W, __mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtepi16_epi32(__A), - (__v4si)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepi16_epi32(__mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtepi16_epi32(__A), - (__v4si)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepi16_epi32(__m256i __W, __mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtepi16_epi32(__A), - (__v8si)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepi16_epi32 (__mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtepi16_epi32(__A), - (__v8si)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepi16_epi64(__m128i __W, __mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepi16_epi64(__A), - (__v2di)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepi16_epi64(__A), - (__v2di)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepi16_epi64(__m256i __W, __mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepi16_epi64(__A), - (__v4di)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepi16_epi64(__A), - (__v4di)_mm256_setzero_si256()); - } - - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepu8_epi32(__m128i __W, __mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtepu8_epi32(__A), - (__v4si)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepu8_epi32(__mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtepu8_epi32(__A), - (__v4si)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepu8_epi32(__m256i __W, __mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtepu8_epi32(__A), - (__v8si)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepu8_epi32(__mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtepu8_epi32(__A), - (__v8si)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepu8_epi64(__m128i __W, __mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepu8_epi64(__A), - (__v2di)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepu8_epi64(__A), - (__v2di)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepu8_epi64(__m256i __W, __mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepu8_epi64(__A), - (__v4di)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepu8_epi64(__A), - (__v4di)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepu32_epi64(__m128i __W, __mmask8 __U, __m128i __X) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepu32_epi64(__X), - (__v2di)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepu32_epi64(__mmask8 __U, __m128i __X) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepu32_epi64(__X), - (__v2di)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepu32_epi64(__m256i __W, __mmask8 __U, __m128i __X) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepu32_epi64(__X), - (__v4di)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepu32_epi64(__mmask8 __U, __m128i __X) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepu32_epi64(__X), - (__v4di)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepu16_epi32(__m128i __W, __mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtepu16_epi32(__A), - (__v4si)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepu16_epi32(__mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_cvtepu16_epi32(__A), - (__v4si)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepu16_epi32(__m256i __W, __mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtepu16_epi32(__A), - (__v8si)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepu16_epi32(__mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_cvtepu16_epi32(__A), - (__v8si)_mm256_setzero_si256()); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_mask_cvtepu16_epi64(__m128i __W, __mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepu16_epi64(__A), - (__v2di)__W); - } - - static __inline__ __m128i __DEFAULT_FN_ATTRS128 - _mm_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A) - { - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_cvtepu16_epi64(__A), - (__v2di)_mm_setzero_si128()); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_mask_cvtepu16_epi64(__m256i __W, __mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepu16_epi64(__A), - (__v4di)__W); - } - - static __inline__ __m256i __DEFAULT_FN_ATTRS256 - _mm256_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A) - { - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_cvtepu16_epi64(__A), - (__v4di)_mm256_setzero_si256()); - } - - -#define _mm_rol_epi32(a, b) \ - ((__m128i)__builtin_ia32_prold128((__v4si)(__m128i)(a), (int)(b))) - -#define _mm_mask_rol_epi32(w, u, a, b) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(u), \ - (__v4si)_mm_rol_epi32((a), (b)), \ - (__v4si)(__m128i)(w))) - -#define _mm_maskz_rol_epi32(u, a, b) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(u), \ - (__v4si)_mm_rol_epi32((a), (b)), \ - (__v4si)_mm_setzero_si128())) - -#define _mm256_rol_epi32(a, b) \ - ((__m256i)__builtin_ia32_prold256((__v8si)(__m256i)(a), (int)(b))) - -#define _mm256_mask_rol_epi32(w, u, a, b) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(u), \ - (__v8si)_mm256_rol_epi32((a), (b)), \ - (__v8si)(__m256i)(w))) - -#define _mm256_maskz_rol_epi32(u, a, b) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(u), \ - (__v8si)_mm256_rol_epi32((a), (b)), \ - (__v8si)_mm256_setzero_si256())) - -#define _mm_rol_epi64(a, b) \ - ((__m128i)__builtin_ia32_prolq128((__v2di)(__m128i)(a), (int)(b))) - -#define _mm_mask_rol_epi64(w, u, a, b) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(u), \ - (__v2di)_mm_rol_epi64((a), (b)), \ - (__v2di)(__m128i)(w))) - -#define _mm_maskz_rol_epi64(u, a, b) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(u), \ - (__v2di)_mm_rol_epi64((a), (b)), \ - (__v2di)_mm_setzero_si128())) - -#define _mm256_rol_epi64(a, b) \ - ((__m256i)__builtin_ia32_prolq256((__v4di)(__m256i)(a), (int)(b))) - -#define _mm256_mask_rol_epi64(w, u, a, b) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(u), \ - (__v4di)_mm256_rol_epi64((a), (b)), \ - (__v4di)(__m256i)(w))) - -#define _mm256_maskz_rol_epi64(u, a, b) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(u), \ - (__v4di)_mm256_rol_epi64((a), (b)), \ - (__v4di)_mm256_setzero_si256())) - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_rolv_epi32 (__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_prolvd128((__v4si)__A, (__v4si)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_rolv_epi32 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_rolv_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_rolv_epi32 (__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_rolv_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_rolv_epi32 (__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_prolvd256((__v8si)__A, (__v8si)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_rolv_epi32 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_rolv_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_rolv_epi32 (__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_rolv_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_rolv_epi64 (__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_prolvq128((__v2di)__A, (__v2di)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_rolv_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_rolv_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_rolv_epi64 (__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_rolv_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_rolv_epi64 (__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_prolvq256((__v4di)__A, (__v4di)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_rolv_epi64 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_rolv_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_rolv_epi64 (__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_rolv_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -#define _mm_ror_epi32(a, b) \ - ((__m128i)__builtin_ia32_prord128((__v4si)(__m128i)(a), (int)(b))) - -#define _mm_mask_ror_epi32(w, u, a, b) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(u), \ - (__v4si)_mm_ror_epi32((a), (b)), \ - (__v4si)(__m128i)(w))) - -#define _mm_maskz_ror_epi32(u, a, b) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(u), \ - (__v4si)_mm_ror_epi32((a), (b)), \ - (__v4si)_mm_setzero_si128())) - -#define _mm256_ror_epi32(a, b) \ - ((__m256i)__builtin_ia32_prord256((__v8si)(__m256i)(a), (int)(b))) - -#define _mm256_mask_ror_epi32(w, u, a, b) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(u), \ - (__v8si)_mm256_ror_epi32((a), (b)), \ - (__v8si)(__m256i)(w))) - -#define _mm256_maskz_ror_epi32(u, a, b) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(u), \ - (__v8si)_mm256_ror_epi32((a), (b)), \ - (__v8si)_mm256_setzero_si256())) - -#define _mm_ror_epi64(a, b) \ - ((__m128i)__builtin_ia32_prorq128((__v2di)(__m128i)(a), (int)(b))) - -#define _mm_mask_ror_epi64(w, u, a, b) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(u), \ - (__v2di)_mm_ror_epi64((a), (b)), \ - (__v2di)(__m128i)(w))) - -#define _mm_maskz_ror_epi64(u, a, b) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(u), \ - (__v2di)_mm_ror_epi64((a), (b)), \ - (__v2di)_mm_setzero_si128())) - -#define _mm256_ror_epi64(a, b) \ - ((__m256i)__builtin_ia32_prorq256((__v4di)(__m256i)(a), (int)(b))) - -#define _mm256_mask_ror_epi64(w, u, a, b) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(u), \ - (__v4di)_mm256_ror_epi64((a), (b)), \ - (__v4di)(__m256i)(w))) - -#define _mm256_maskz_ror_epi64(u, a, b) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(u), \ - (__v4di)_mm256_ror_epi64((a), (b)), \ - (__v4di)_mm256_setzero_si256())) - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sll_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_sll_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sll_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_sll_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sll_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_sll_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sll_epi32(__mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_sll_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_slli_epi32(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_slli_epi32(__A, (int)__B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_slli_epi32(__mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_slli_epi32(__A, (int)__B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_slli_epi32(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_slli_epi32(__A, (int)__B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_slli_epi32(__mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_slli_epi32(__A, (int)__B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sll_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_sll_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sll_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_sll_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sll_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_sll_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sll_epi64(__mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_sll_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_slli_epi64(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_slli_epi64(__A, (int)__B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_slli_epi64(__mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_slli_epi64(__A, (int)__B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_slli_epi64(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_slli_epi64(__A, (int)__B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_slli_epi64(__mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_slli_epi64(__A, (int)__B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_rorv_epi32 (__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_prorvd128((__v4si)__A, (__v4si)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_rorv_epi32 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_rorv_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_rorv_epi32 (__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_rorv_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_rorv_epi32 (__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_prorvd256((__v8si)__A, (__v8si)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_rorv_epi32 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_rorv_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_rorv_epi32 (__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_rorv_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_rorv_epi64 (__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_prorvq128((__v2di)__A, (__v2di)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_rorv_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_rorv_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_rorv_epi64 (__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_rorv_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_rorv_epi64 (__m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_prorvq256((__v4di)__A, (__v4di)__B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_rorv_epi64 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_rorv_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_rorv_epi64 (__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_rorv_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sllv_epi64(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_sllv_epi64(__X, __Y), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sllv_epi64(__mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_sllv_epi64(__X, __Y), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sllv_epi64(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_sllv_epi64(__X, __Y), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sllv_epi64(__mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_sllv_epi64(__X, __Y), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sllv_epi32(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_sllv_epi32(__X, __Y), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sllv_epi32(__mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_sllv_epi32(__X, __Y), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sllv_epi32(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_sllv_epi32(__X, __Y), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sllv_epi32(__mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_sllv_epi32(__X, __Y), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srlv_epi64(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_srlv_epi64(__X, __Y), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srlv_epi64(__mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_srlv_epi64(__X, __Y), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srlv_epi64(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_srlv_epi64(__X, __Y), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srlv_epi64(__mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_srlv_epi64(__X, __Y), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srlv_epi32(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srlv_epi32(__X, __Y), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srlv_epi32(__mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srlv_epi32(__X, __Y), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srlv_epi32(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srlv_epi32(__X, __Y), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srlv_epi32(__mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srlv_epi32(__X, __Y), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srl_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srl_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srl_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srl_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srl_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srl_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srl_epi32(__mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srl_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srli_epi32(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srli_epi32(__A, (int)__B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srli_epi32(__mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srli_epi32(__A, (int)__B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srli_epi32(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srli_epi32(__A, (int)__B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srli_epi32(__mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srli_epi32(__A, (int)__B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srl_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_srl_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srl_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_srl_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srl_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_srl_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srl_epi64(__mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_srl_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srli_epi64(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_srli_epi64(__A, (int)__B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srli_epi64(__mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_srli_epi64(__A, (int)__B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srli_epi64(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_srli_epi64(__A, (int)__B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srli_epi64(__mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_srli_epi64(__A, (int)__B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srav_epi32(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srav_epi32(__X, __Y), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srav_epi32(__mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srav_epi32(__X, __Y), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srav_epi32(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srav_epi32(__X, __Y), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srav_epi32(__mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srav_epi32(__X, __Y), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_srav_epi64(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_psravq128((__v2di)__X, (__v2di)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srav_epi64(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_srav_epi64(__X, __Y), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srav_epi64(__mmask8 __U, __m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_srav_epi64(__X, __Y), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srav_epi64(__m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_psravq256((__v4di)__X, (__v4di) __Y); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srav_epi64(__m256i __W, __mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_srav_epi64(__X, __Y), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srav_epi64 (__mmask8 __U, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_srav_epi64(__X, __Y), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mov_epi32 (__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i) __builtin_ia32_selectd_128 ((__mmask8) __U, - (__v4si) __A, - (__v4si) __W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mov_epi32 (__mmask8 __U, __m128i __A) -{ - return (__m128i) __builtin_ia32_selectd_128 ((__mmask8) __U, - (__v4si) __A, - (__v4si) _mm_setzero_si128 ()); -} - - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mov_epi32 (__m256i __W, __mmask8 __U, __m256i __A) -{ - return (__m256i) __builtin_ia32_selectd_256 ((__mmask8) __U, - (__v8si) __A, - (__v8si) __W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mov_epi32 (__mmask8 __U, __m256i __A) -{ - return (__m256i) __builtin_ia32_selectd_256 ((__mmask8) __U, - (__v8si) __A, - (__v8si) _mm256_setzero_si256 ()); -} - -static __inline __m128i __DEFAULT_FN_ATTRS128 -_mm_load_epi32 (void const *__P) -{ - return *(const __m128i *) __P; -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_load_epi32 (__m128i __W, __mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_movdqa32load128_mask ((const __v4si *) __P, - (__v4si) __W, - (__mmask8) - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_load_epi32 (__mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_movdqa32load128_mask ((const __v4si *) __P, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) - __U); -} - -static __inline __m256i __DEFAULT_FN_ATTRS256 -_mm256_load_epi32 (void const *__P) -{ - return *(const __m256i *) __P; -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_load_epi32 (__m256i __W, __mmask8 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_movdqa32load256_mask ((const __v8si *) __P, - (__v8si) __W, - (__mmask8) - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_load_epi32 (__mmask8 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_movdqa32load256_mask ((const __v8si *) __P, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) - __U); -} - -static __inline void __DEFAULT_FN_ATTRS128 -_mm_store_epi32 (void *__P, __m128i __A) -{ - *(__m128i *) __P = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_store_epi32 (void *__P, __mmask8 __U, __m128i __A) -{ - __builtin_ia32_movdqa32store128_mask ((__v4si *) __P, - (__v4si) __A, - (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS256 -_mm256_store_epi32 (void *__P, __m256i __A) -{ - *(__m256i *) __P = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_store_epi32 (void *__P, __mmask8 __U, __m256i __A) -{ - __builtin_ia32_movdqa32store256_mask ((__v8si *) __P, - (__v8si) __A, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_mov_epi64 (__m128i __W, __mmask8 __U, __m128i __A) -{ - return (__m128i) __builtin_ia32_selectq_128 ((__mmask8) __U, - (__v2di) __A, - (__v2di) __W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_mov_epi64 (__mmask8 __U, __m128i __A) -{ - return (__m128i) __builtin_ia32_selectq_128 ((__mmask8) __U, - (__v2di) __A, - (__v2di) _mm_setzero_si128 ()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_mov_epi64 (__m256i __W, __mmask8 __U, __m256i __A) -{ - return (__m256i) __builtin_ia32_selectq_256 ((__mmask8) __U, - (__v4di) __A, - (__v4di) __W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_mov_epi64 (__mmask8 __U, __m256i __A) -{ - return (__m256i) __builtin_ia32_selectq_256 ((__mmask8) __U, - (__v4di) __A, - (__v4di) _mm256_setzero_si256 ()); -} - -static __inline __m128i __DEFAULT_FN_ATTRS128 -_mm_load_epi64 (void const *__P) -{ - return *(const __m128i *) __P; -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_load_epi64 (__m128i __W, __mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_movdqa64load128_mask ((const __v2di *) __P, - (__v2di) __W, - (__mmask8) - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_load_epi64 (__mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_movdqa64load128_mask ((const __v2di *) __P, - (__v2di) - _mm_setzero_si128 (), - (__mmask8) - __U); -} - -static __inline __m256i __DEFAULT_FN_ATTRS256 -_mm256_load_epi64 (void const *__P) -{ - return *(const __m256i *) __P; -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_load_epi64 (__m256i __W, __mmask8 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_movdqa64load256_mask ((const __v4di *) __P, - (__v4di) __W, - (__mmask8) - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_load_epi64 (__mmask8 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_movdqa64load256_mask ((const __v4di *) __P, - (__v4di) - _mm256_setzero_si256 (), - (__mmask8) - __U); -} - -static __inline void __DEFAULT_FN_ATTRS128 -_mm_store_epi64 (void *__P, __m128i __A) -{ - *(__m128i *) __P = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_store_epi64 (void *__P, __mmask8 __U, __m128i __A) -{ - __builtin_ia32_movdqa64store128_mask ((__v2di *) __P, - (__v2di) __A, - (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS256 -_mm256_store_epi64 (void *__P, __m256i __A) -{ - *(__m256i *) __P = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_store_epi64 (void *__P, __mmask8 __U, __m256i __A) -{ - __builtin_ia32_movdqa64store256_mask ((__v4di *) __P, - (__v4di) __A, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_movedup_pd (__m128d __W, __mmask8 __U, __m128d __A) -{ - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_movedup_pd(__A), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_movedup_pd (__mmask8 __U, __m128d __A) -{ - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_movedup_pd(__A), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_movedup_pd (__m256d __W, __mmask8 __U, __m256d __A) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_movedup_pd(__A), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_movedup_pd (__mmask8 __U, __m256d __A) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_movedup_pd(__A), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_set1_epi32(__m128i __O, __mmask8 __M, int __A) -{ - return (__m128i)__builtin_ia32_selectd_128(__M, - (__v4si) _mm_set1_epi32(__A), - (__v4si)__O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_set1_epi32( __mmask8 __M, int __A) -{ - return (__m128i)__builtin_ia32_selectd_128(__M, - (__v4si) _mm_set1_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_set1_epi32(__m256i __O, __mmask8 __M, int __A) -{ - return (__m256i)__builtin_ia32_selectd_256(__M, - (__v8si) _mm256_set1_epi32(__A), - (__v8si)__O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_set1_epi32( __mmask8 __M, int __A) -{ - return (__m256i)__builtin_ia32_selectd_256(__M, - (__v8si) _mm256_set1_epi32(__A), - (__v8si)_mm256_setzero_si256()); -} - - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_set1_epi64 (__m128i __O, __mmask8 __M, long long __A) -{ - return (__m128i) __builtin_ia32_selectq_128(__M, - (__v2di) _mm_set1_epi64x(__A), - (__v2di) __O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_set1_epi64 (__mmask8 __M, long long __A) -{ - return (__m128i) __builtin_ia32_selectq_128(__M, - (__v2di) _mm_set1_epi64x(__A), - (__v2di) _mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_set1_epi64 (__m256i __O, __mmask8 __M, long long __A) -{ - return (__m256i) __builtin_ia32_selectq_256(__M, - (__v4di) _mm256_set1_epi64x(__A), - (__v4di) __O) ; -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_set1_epi64 (__mmask8 __M, long long __A) -{ - return (__m256i) __builtin_ia32_selectq_256(__M, - (__v4di) _mm256_set1_epi64x(__A), - (__v4di) _mm256_setzero_si256()); -} - -#define _mm_fixupimm_pd(A, B, C, imm) \ - ((__m128d)__builtin_ia32_fixupimmpd128_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), (int)(imm), \ - (__mmask8)-1)) - -#define _mm_mask_fixupimm_pd(A, U, B, C, imm) \ - ((__m128d)__builtin_ia32_fixupimmpd128_mask((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), (int)(imm), \ - (__mmask8)(U))) - -#define _mm_maskz_fixupimm_pd(U, A, B, C, imm) \ - ((__m128d)__builtin_ia32_fixupimmpd128_maskz((__v2df)(__m128d)(A), \ - (__v2df)(__m128d)(B), \ - (__v2di)(__m128i)(C), \ - (int)(imm), (__mmask8)(U))) - -#define _mm256_fixupimm_pd(A, B, C, imm) \ - ((__m256d)__builtin_ia32_fixupimmpd256_mask((__v4df)(__m256d)(A), \ - (__v4df)(__m256d)(B), \ - (__v4di)(__m256i)(C), (int)(imm), \ - (__mmask8)-1)) - -#define _mm256_mask_fixupimm_pd(A, U, B, C, imm) \ - ((__m256d)__builtin_ia32_fixupimmpd256_mask((__v4df)(__m256d)(A), \ - (__v4df)(__m256d)(B), \ - (__v4di)(__m256i)(C), (int)(imm), \ - (__mmask8)(U))) - -#define _mm256_maskz_fixupimm_pd(U, A, B, C, imm) \ - ((__m256d)__builtin_ia32_fixupimmpd256_maskz((__v4df)(__m256d)(A), \ - (__v4df)(__m256d)(B), \ - (__v4di)(__m256i)(C), \ - (int)(imm), (__mmask8)(U))) - -#define _mm_fixupimm_ps(A, B, C, imm) \ - ((__m128)__builtin_ia32_fixupimmps128_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)-1)) - -#define _mm_mask_fixupimm_ps(A, U, B, C, imm) \ - ((__m128)__builtin_ia32_fixupimmps128_mask((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)(U))) - -#define _mm_maskz_fixupimm_ps(U, A, B, C, imm) \ - ((__m128)__builtin_ia32_fixupimmps128_maskz((__v4sf)(__m128)(A), \ - (__v4sf)(__m128)(B), \ - (__v4si)(__m128i)(C), (int)(imm), \ - (__mmask8)(U))) - -#define _mm256_fixupimm_ps(A, B, C, imm) \ - ((__m256)__builtin_ia32_fixupimmps256_mask((__v8sf)(__m256)(A), \ - (__v8sf)(__m256)(B), \ - (__v8si)(__m256i)(C), (int)(imm), \ - (__mmask8)-1)) - -#define _mm256_mask_fixupimm_ps(A, U, B, C, imm) \ - ((__m256)__builtin_ia32_fixupimmps256_mask((__v8sf)(__m256)(A), \ - (__v8sf)(__m256)(B), \ - (__v8si)(__m256i)(C), (int)(imm), \ - (__mmask8)(U))) - -#define _mm256_maskz_fixupimm_ps(U, A, B, C, imm) \ - ((__m256)__builtin_ia32_fixupimmps256_maskz((__v8sf)(__m256)(A), \ - (__v8sf)(__m256)(B), \ - (__v8si)(__m256i)(C), (int)(imm), \ - (__mmask8)(U))) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_load_pd (__m128d __W, __mmask8 __U, void const *__P) -{ - return (__m128d) __builtin_ia32_loadapd128_mask ((const __v2df *) __P, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_load_pd (__mmask8 __U, void const *__P) -{ - return (__m128d) __builtin_ia32_loadapd128_mask ((const __v2df *) __P, - (__v2df) - _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_load_pd (__m256d __W, __mmask8 __U, void const *__P) -{ - return (__m256d) __builtin_ia32_loadapd256_mask ((const __v4df *) __P, - (__v4df) __W, - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_load_pd (__mmask8 __U, void const *__P) -{ - return (__m256d) __builtin_ia32_loadapd256_mask ((const __v4df *) __P, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_load_ps (__m128 __W, __mmask8 __U, void const *__P) -{ - return (__m128) __builtin_ia32_loadaps128_mask ((const __v4sf *) __P, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_load_ps (__mmask8 __U, void const *__P) -{ - return (__m128) __builtin_ia32_loadaps128_mask ((const __v4sf *) __P, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_load_ps (__m256 __W, __mmask8 __U, void const *__P) -{ - return (__m256) __builtin_ia32_loadaps256_mask ((const __v8sf *) __P, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_load_ps (__mmask8 __U, void const *__P) -{ - return (__m256) __builtin_ia32_loadaps256_mask ((const __v8sf *) __P, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -static __inline __m128i __DEFAULT_FN_ATTRS128 -_mm_loadu_epi64 (void const *__P) -{ - struct __loadu_epi64 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi64*)__P)->__v; -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_loadu_epi64 (__m128i __W, __mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_loaddqudi128_mask ((const __v2di *) __P, - (__v2di) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_loadu_epi64 (__mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_loaddqudi128_mask ((const __v2di *) __P, - (__v2di) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline __m256i __DEFAULT_FN_ATTRS256 -_mm256_loadu_epi64 (void const *__P) -{ - struct __loadu_epi64 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi64*)__P)->__v; -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_loadu_epi64 (__m256i __W, __mmask8 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_loaddqudi256_mask ((const __v4di *) __P, - (__v4di) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_loadu_epi64 (__mmask8 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_loaddqudi256_mask ((const __v4di *) __P, - (__v4di) - _mm256_setzero_si256 (), - (__mmask8) __U); -} - -static __inline __m128i __DEFAULT_FN_ATTRS128 -_mm_loadu_epi32 (void const *__P) -{ - struct __loadu_epi32 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi32*)__P)->__v; -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_loadu_epi32 (__m128i __W, __mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_loaddqusi128_mask ((const __v4si *) __P, - (__v4si) __W, - (__mmask8) __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_loadu_epi32 (__mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_loaddqusi128_mask ((const __v4si *) __P, - (__v4si) - _mm_setzero_si128 (), - (__mmask8) __U); -} - -static __inline __m256i __DEFAULT_FN_ATTRS256 -_mm256_loadu_epi32 (void const *__P) -{ - struct __loadu_epi32 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_epi32*)__P)->__v; -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_loadu_epi32 (__m256i __W, __mmask8 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_loaddqusi256_mask ((const __v8si *) __P, - (__v8si) __W, - (__mmask8) __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_loadu_epi32 (__mmask8 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_loaddqusi256_mask ((const __v8si *) __P, - (__v8si) - _mm256_setzero_si256 (), - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_loadu_pd (__m128d __W, __mmask8 __U, void const *__P) -{ - return (__m128d) __builtin_ia32_loadupd128_mask ((const __v2df *) __P, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_loadu_pd (__mmask8 __U, void const *__P) -{ - return (__m128d) __builtin_ia32_loadupd128_mask ((const __v2df *) __P, - (__v2df) - _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_loadu_pd (__m256d __W, __mmask8 __U, void const *__P) -{ - return (__m256d) __builtin_ia32_loadupd256_mask ((const __v4df *) __P, - (__v4df) __W, - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_loadu_pd (__mmask8 __U, void const *__P) -{ - return (__m256d) __builtin_ia32_loadupd256_mask ((const __v4df *) __P, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_loadu_ps (__m128 __W, __mmask8 __U, void const *__P) -{ - return (__m128) __builtin_ia32_loadups128_mask ((const __v4sf *) __P, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_loadu_ps (__mmask8 __U, void const *__P) -{ - return (__m128) __builtin_ia32_loadups128_mask ((const __v4sf *) __P, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_loadu_ps (__m256 __W, __mmask8 __U, void const *__P) -{ - return (__m256) __builtin_ia32_loadups256_mask ((const __v8sf *) __P, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_loadu_ps (__mmask8 __U, void const *__P) -{ - return (__m256) __builtin_ia32_loadups256_mask ((const __v8sf *) __P, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_store_pd (void *__P, __mmask8 __U, __m128d __A) -{ - __builtin_ia32_storeapd128_mask ((__v2df *) __P, - (__v2df) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_store_pd (void *__P, __mmask8 __U, __m256d __A) -{ - __builtin_ia32_storeapd256_mask ((__v4df *) __P, - (__v4df) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_store_ps (void *__P, __mmask8 __U, __m128 __A) -{ - __builtin_ia32_storeaps128_mask ((__v4sf *) __P, - (__v4sf) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_store_ps (void *__P, __mmask8 __U, __m256 __A) -{ - __builtin_ia32_storeaps256_mask ((__v8sf *) __P, - (__v8sf) __A, - (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS128 -_mm_storeu_epi64 (void *__P, __m128i __A) -{ - struct __storeu_epi64 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi64*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_storeu_epi64 (void *__P, __mmask8 __U, __m128i __A) -{ - __builtin_ia32_storedqudi128_mask ((__v2di *) __P, - (__v2di) __A, - (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS256 -_mm256_storeu_epi64 (void *__P, __m256i __A) -{ - struct __storeu_epi64 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi64*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_storeu_epi64 (void *__P, __mmask8 __U, __m256i __A) -{ - __builtin_ia32_storedqudi256_mask ((__v4di *) __P, - (__v4di) __A, - (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS128 -_mm_storeu_epi32 (void *__P, __m128i __A) -{ - struct __storeu_epi32 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi32*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_storeu_epi32 (void *__P, __mmask8 __U, __m128i __A) -{ - __builtin_ia32_storedqusi128_mask ((__v4si *) __P, - (__v4si) __A, - (__mmask8) __U); -} - -static __inline void __DEFAULT_FN_ATTRS256 -_mm256_storeu_epi32 (void *__P, __m256i __A) -{ - struct __storeu_epi32 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_epi32*)__P)->__v = __A; -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_storeu_epi32 (void *__P, __mmask8 __U, __m256i __A) -{ - __builtin_ia32_storedqusi256_mask ((__v8si *) __P, - (__v8si) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_storeu_pd (void *__P, __mmask8 __U, __m128d __A) -{ - __builtin_ia32_storeupd128_mask ((__v2df *) __P, - (__v2df) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_storeu_pd (void *__P, __mmask8 __U, __m256d __A) -{ - __builtin_ia32_storeupd256_mask ((__v4df *) __P, - (__v4df) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_storeu_ps (void *__P, __mmask8 __U, __m128 __A) -{ - __builtin_ia32_storeups128_mask ((__v4sf *) __P, - (__v4sf) __A, - (__mmask8) __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_storeu_ps (void *__P, __mmask8 __U, __m256 __A) -{ - __builtin_ia32_storeups256_mask ((__v8sf *) __P, - (__v8sf) __A, - (__mmask8) __U); -} - - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_unpackhi_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_unpackhi_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_unpackhi_pd(__mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_unpackhi_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_unpackhi_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_unpackhi_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpackhi_pd(__mmask8 __U, __m256d __A, __m256d __B) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_unpackhi_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_unpackhi_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_unpackhi_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_unpackhi_ps(__mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_unpackhi_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_unpackhi_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_unpackhi_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpackhi_ps(__mmask8 __U, __m256 __A, __m256 __B) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_unpackhi_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_unpacklo_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_unpacklo_pd(__A, __B), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_unpacklo_pd(__mmask8 __U, __m128d __A, __m128d __B) -{ - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_unpacklo_pd(__A, __B), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_unpacklo_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_unpacklo_pd(__A, __B), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpacklo_pd(__mmask8 __U, __m256d __A, __m256d __B) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_unpacklo_pd(__A, __B), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_unpacklo_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_unpacklo_ps(__A, __B), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_unpacklo_ps(__mmask8 __U, __m128 __A, __m128 __B) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_unpacklo_ps(__A, __B), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_unpacklo_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_unpacklo_ps(__A, __B), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpacklo_ps(__mmask8 __U, __m256 __A, __m256 __B) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_unpacklo_ps(__A, __B), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_rcp14_pd (__m128d __A) -{ - return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A, - (__v2df) - _mm_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_rcp14_pd (__m128d __W, __mmask8 __U, __m128d __A) -{ - return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_rcp14_pd (__mmask8 __U, __m128d __A) -{ - return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A, - (__v2df) - _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_rcp14_pd (__m256d __A) -{ - return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_rcp14_pd (__m256d __W, __mmask8 __U, __m256d __A) -{ - return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A, - (__v4df) __W, - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_rcp14_pd (__mmask8 __U, __m256d __A) -{ - return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_rcp14_ps (__m128 __A) -{ - return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_rcp14_ps (__m128 __W, __mmask8 __U, __m128 __A) -{ - return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_rcp14_ps (__mmask8 __U, __m128 __A) -{ - return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_rcp14_ps (__m256 __A) -{ - return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_rcp14_ps (__m256 __W, __mmask8 __U, __m256 __A) -{ - return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_rcp14_ps (__mmask8 __U, __m256 __A) -{ - return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -#define _mm_mask_permute_pd(W, U, X, C) \ - ((__m128d)__builtin_ia32_selectpd_128((__mmask8)(U), \ - (__v2df)_mm_permute_pd((X), (C)), \ - (__v2df)(__m128d)(W))) - -#define _mm_maskz_permute_pd(U, X, C) \ - ((__m128d)__builtin_ia32_selectpd_128((__mmask8)(U), \ - (__v2df)_mm_permute_pd((X), (C)), \ - (__v2df)_mm_setzero_pd())) - -#define _mm256_mask_permute_pd(W, U, X, C) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_permute_pd((X), (C)), \ - (__v4df)(__m256d)(W))) - -#define _mm256_maskz_permute_pd(U, X, C) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_permute_pd((X), (C)), \ - (__v4df)_mm256_setzero_pd())) - -#define _mm_mask_permute_ps(W, U, X, C) \ - ((__m128)__builtin_ia32_selectps_128((__mmask8)(U), \ - (__v4sf)_mm_permute_ps((X), (C)), \ - (__v4sf)(__m128)(W))) - -#define _mm_maskz_permute_ps(U, X, C) \ - ((__m128)__builtin_ia32_selectps_128((__mmask8)(U), \ - (__v4sf)_mm_permute_ps((X), (C)), \ - (__v4sf)_mm_setzero_ps())) - -#define _mm256_mask_permute_ps(W, U, X, C) \ - ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ - (__v8sf)_mm256_permute_ps((X), (C)), \ - (__v8sf)(__m256)(W))) - -#define _mm256_maskz_permute_ps(U, X, C) \ - ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ - (__v8sf)_mm256_permute_ps((X), (C)), \ - (__v8sf)_mm256_setzero_ps())) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_permutevar_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128i __C) -{ - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_permutevar_pd(__A, __C), - (__v2df)__W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_permutevar_pd(__mmask8 __U, __m128d __A, __m128i __C) -{ - return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U, - (__v2df)_mm_permutevar_pd(__A, __C), - (__v2df)_mm_setzero_pd()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_permutevar_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256i __C) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_permutevar_pd(__A, __C), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutevar_pd(__mmask8 __U, __m256d __A, __m256i __C) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_permutevar_pd(__A, __C), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_permutevar_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128i __C) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_permutevar_ps(__A, __C), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_permutevar_ps(__mmask8 __U, __m128 __A, __m128i __C) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_permutevar_ps(__A, __C), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_permutevar_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256i __C) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_permutevar_ps(__A, __C), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutevar_ps(__mmask8 __U, __m256 __A, __m256i __C) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_permutevar_ps(__A, __C), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_test_epi32_mask (__m128i __A, __m128i __B) -{ - return _mm_cmpneq_epi32_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_mask_test_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_cmpneq_epi32_mask (__U, _mm_and_si128 (__A, __B), - _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_test_epi32_mask (__m256i __A, __m256i __B) -{ - return _mm256_cmpneq_epi32_mask (_mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_mask_test_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_cmpneq_epi32_mask (__U, _mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_test_epi64_mask (__m128i __A, __m128i __B) -{ - return _mm_cmpneq_epi64_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_mask_test_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_cmpneq_epi64_mask (__U, _mm_and_si128 (__A, __B), - _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_test_epi64_mask (__m256i __A, __m256i __B) -{ - return _mm256_cmpneq_epi64_mask (_mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_mask_test_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_cmpneq_epi64_mask (__U, _mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_testn_epi32_mask (__m128i __A, __m128i __B) -{ - return _mm_cmpeq_epi32_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_mask_testn_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_cmpeq_epi32_mask (__U, _mm_and_si128 (__A, __B), - _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_testn_epi32_mask (__m256i __A, __m256i __B) -{ - return _mm256_cmpeq_epi32_mask (_mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_mask_testn_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_cmpeq_epi32_mask (__U, _mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_testn_epi64_mask (__m128i __A, __m128i __B) -{ - return _mm_cmpeq_epi64_mask (_mm_and_si128 (__A, __B), _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 -_mm_mask_testn_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_cmpeq_epi64_mask (__U, _mm_and_si128 (__A, __B), - _mm_setzero_si128()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_testn_epi64_mask (__m256i __A, __m256i __B) -{ - return _mm256_cmpeq_epi64_mask (_mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __mmask8 __DEFAULT_FN_ATTRS256 -_mm256_mask_testn_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_cmpeq_epi64_mask (__U, _mm256_and_si256 (__A, __B), - _mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_unpackhi_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_unpackhi_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_unpackhi_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_unpackhi_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_unpackhi_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_unpackhi_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpackhi_epi32(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_unpackhi_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_unpackhi_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_unpackhi_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_unpackhi_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_unpackhi_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_unpackhi_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_unpackhi_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpackhi_epi64(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_unpackhi_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_unpacklo_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_unpacklo_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_unpacklo_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_unpacklo_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_unpacklo_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_unpacklo_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpacklo_epi32(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_unpacklo_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_unpacklo_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_unpacklo_epi64(__A, __B), - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_unpacklo_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, - (__v2di)_mm_unpacklo_epi64(__A, __B), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_unpacklo_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_unpacklo_epi64(__A, __B), - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_unpacklo_epi64(__mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, - (__v4di)_mm256_unpacklo_epi64(__A, __B), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sra_epi32(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_sra_epi32(__A, __B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sra_epi32(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_sra_epi32(__A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sra_epi32(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_sra_epi32(__A, __B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sra_epi32(__mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_sra_epi32(__A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srai_epi32(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srai_epi32(__A, (int)__B), - (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srai_epi32(__mmask8 __U, __m128i __A, unsigned int __B) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, - (__v4si)_mm_srai_epi32(__A, (int)__B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srai_epi32(__m256i __W, __mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srai_epi32(__A, (int)__B), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srai_epi32(__mmask8 __U, __m256i __A, unsigned int __B) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U, - (__v8si)_mm256_srai_epi32(__A, (int)__B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_sra_epi64(__m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_psraq128((__v2di)__A, (__v2di)__B); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_sra_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, \ - (__v2di)_mm_sra_epi64(__A, __B), \ - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_sra_epi64(__mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, \ - (__v2di)_mm_sra_epi64(__A, __B), \ - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_sra_epi64(__m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_psraq256((__v4di) __A, (__v2di) __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_sra_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, \ - (__v4di)_mm256_sra_epi64(__A, __B), \ - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_sra_epi64(__mmask8 __U, __m256i __A, __m128i __B) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, \ - (__v4di)_mm256_sra_epi64(__A, __B), \ - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_srai_epi64(__m128i __A, unsigned int __imm) -{ - return (__m128i)__builtin_ia32_psraqi128((__v2di)__A, (int)__imm); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_srai_epi64(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __imm) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, \ - (__v2di)_mm_srai_epi64(__A, __imm), \ - (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_srai_epi64(__mmask8 __U, __m128i __A, unsigned int __imm) -{ - return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U, \ - (__v2di)_mm_srai_epi64(__A, __imm), \ - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_srai_epi64(__m256i __A, unsigned int __imm) -{ - return (__m256i)__builtin_ia32_psraqi256((__v4di)__A, (int)__imm); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_srai_epi64(__m256i __W, __mmask8 __U, __m256i __A, - unsigned int __imm) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, \ - (__v4di)_mm256_srai_epi64(__A, __imm), \ - (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_srai_epi64(__mmask8 __U, __m256i __A, unsigned int __imm) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U, \ - (__v4di)_mm256_srai_epi64(__A, __imm), \ - (__v4di)_mm256_setzero_si256()); -} - -#define _mm_ternarylogic_epi32(A, B, C, imm) \ - ((__m128i)__builtin_ia32_pternlogd128_mask( \ - (__v4si)(__m128i)(A), (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), \ - (unsigned char)(imm), (__mmask8)-1)) - -#define _mm_mask_ternarylogic_epi32(A, U, B, C, imm) \ - ((__m128i)__builtin_ia32_pternlogd128_mask( \ - (__v4si)(__m128i)(A), (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm_maskz_ternarylogic_epi32(U, A, B, C, imm) \ - ((__m128i)__builtin_ia32_pternlogd128_maskz( \ - (__v4si)(__m128i)(A), (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm256_ternarylogic_epi32(A, B, C, imm) \ - ((__m256i)__builtin_ia32_pternlogd256_mask( \ - (__v8si)(__m256i)(A), (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), \ - (unsigned char)(imm), (__mmask8)-1)) - -#define _mm256_mask_ternarylogic_epi32(A, U, B, C, imm) \ - ((__m256i)__builtin_ia32_pternlogd256_mask( \ - (__v8si)(__m256i)(A), (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm256_maskz_ternarylogic_epi32(U, A, B, C, imm) \ - ((__m256i)__builtin_ia32_pternlogd256_maskz( \ - (__v8si)(__m256i)(A), (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm_ternarylogic_epi64(A, B, C, imm) \ - ((__m128i)__builtin_ia32_pternlogq128_mask( \ - (__v2di)(__m128i)(A), (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), \ - (unsigned char)(imm), (__mmask8)-1)) - -#define _mm_mask_ternarylogic_epi64(A, U, B, C, imm) \ - ((__m128i)__builtin_ia32_pternlogq128_mask( \ - (__v2di)(__m128i)(A), (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm_maskz_ternarylogic_epi64(U, A, B, C, imm) \ - ((__m128i)__builtin_ia32_pternlogq128_maskz( \ - (__v2di)(__m128i)(A), (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm256_ternarylogic_epi64(A, B, C, imm) \ - ((__m256i)__builtin_ia32_pternlogq256_mask( \ - (__v4di)(__m256i)(A), (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), \ - (unsigned char)(imm), (__mmask8)-1)) - -#define _mm256_mask_ternarylogic_epi64(A, U, B, C, imm) \ - ((__m256i)__builtin_ia32_pternlogq256_mask( \ - (__v4di)(__m256i)(A), (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm256_maskz_ternarylogic_epi64(U, A, B, C, imm) \ - ((__m256i)__builtin_ia32_pternlogq256_maskz( \ - (__v4di)(__m256i)(A), (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), \ - (unsigned char)(imm), (__mmask8)(U))) - -#define _mm256_shuffle_f32x4(A, B, imm) \ - ((__m256)__builtin_ia32_shuf_f32x4_256((__v8sf)(__m256)(A), \ - (__v8sf)(__m256)(B), (int)(imm))) - -#define _mm256_mask_shuffle_f32x4(W, U, A, B, imm) \ - ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ - (__v8sf)_mm256_shuffle_f32x4((A), (B), (imm)), \ - (__v8sf)(__m256)(W))) - -#define _mm256_maskz_shuffle_f32x4(U, A, B, imm) \ - ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ - (__v8sf)_mm256_shuffle_f32x4((A), (B), (imm)), \ - (__v8sf)_mm256_setzero_ps())) - -#define _mm256_shuffle_f64x2(A, B, imm) \ - ((__m256d)__builtin_ia32_shuf_f64x2_256((__v4df)(__m256d)(A), \ - (__v4df)(__m256d)(B), (int)(imm))) - -#define _mm256_mask_shuffle_f64x2(W, U, A, B, imm) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_shuffle_f64x2((A), (B), (imm)), \ - (__v4df)(__m256d)(W))) - -#define _mm256_maskz_shuffle_f64x2(U, A, B, imm) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_shuffle_f64x2((A), (B), (imm)), \ - (__v4df)_mm256_setzero_pd())) - -#define _mm256_shuffle_i32x4(A, B, imm) \ - ((__m256i)__builtin_ia32_shuf_i32x4_256((__v8si)(__m256i)(A), \ - (__v8si)(__m256i)(B), (int)(imm))) - -#define _mm256_mask_shuffle_i32x4(W, U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_shuffle_i32x4((A), (B), (imm)), \ - (__v8si)(__m256i)(W))) - -#define _mm256_maskz_shuffle_i32x4(U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_shuffle_i32x4((A), (B), (imm)), \ - (__v8si)_mm256_setzero_si256())) - -#define _mm256_shuffle_i64x2(A, B, imm) \ - ((__m256i)__builtin_ia32_shuf_i64x2_256((__v4di)(__m256i)(A), \ - (__v4di)(__m256i)(B), (int)(imm))) - -#define _mm256_mask_shuffle_i64x2(W, U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_shuffle_i64x2((A), (B), (imm)), \ - (__v4di)(__m256i)(W))) - - -#define _mm256_maskz_shuffle_i64x2(U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_shuffle_i64x2((A), (B), (imm)), \ - (__v4di)_mm256_setzero_si256())) - -#define _mm_mask_shuffle_pd(W, U, A, B, M) \ - ((__m128d)__builtin_ia32_selectpd_128((__mmask8)(U), \ - (__v2df)_mm_shuffle_pd((A), (B), (M)), \ - (__v2df)(__m128d)(W))) - -#define _mm_maskz_shuffle_pd(U, A, B, M) \ - ((__m128d)__builtin_ia32_selectpd_128((__mmask8)(U), \ - (__v2df)_mm_shuffle_pd((A), (B), (M)), \ - (__v2df)_mm_setzero_pd())) - -#define _mm256_mask_shuffle_pd(W, U, A, B, M) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_shuffle_pd((A), (B), (M)), \ - (__v4df)(__m256d)(W))) - -#define _mm256_maskz_shuffle_pd(U, A, B, M) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_shuffle_pd((A), (B), (M)), \ - (__v4df)_mm256_setzero_pd())) - -#define _mm_mask_shuffle_ps(W, U, A, B, M) \ - ((__m128)__builtin_ia32_selectps_128((__mmask8)(U), \ - (__v4sf)_mm_shuffle_ps((A), (B), (M)), \ - (__v4sf)(__m128)(W))) - -#define _mm_maskz_shuffle_ps(U, A, B, M) \ - ((__m128)__builtin_ia32_selectps_128((__mmask8)(U), \ - (__v4sf)_mm_shuffle_ps((A), (B), (M)), \ - (__v4sf)_mm_setzero_ps())) - -#define _mm256_mask_shuffle_ps(W, U, A, B, M) \ - ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ - (__v8sf)_mm256_shuffle_ps((A), (B), (M)), \ - (__v8sf)(__m256)(W))) - -#define _mm256_maskz_shuffle_ps(U, A, B, M) \ - ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ - (__v8sf)_mm256_shuffle_ps((A), (B), (M)), \ - (__v8sf)_mm256_setzero_ps())) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_rsqrt14_pd (__m128d __A) -{ - return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A, - (__v2df) - _mm_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_rsqrt14_pd (__m128d __W, __mmask8 __U, __m128d __A) -{ - return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A, - (__v2df) __W, - (__mmask8) __U); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_rsqrt14_pd (__mmask8 __U, __m128d __A) -{ - return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A, - (__v2df) - _mm_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_rsqrt14_pd (__m256d __A) -{ - return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) -1); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_rsqrt14_pd (__m256d __W, __mmask8 __U, __m256d __A) -{ - return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A, - (__v4df) __W, - (__mmask8) __U); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_rsqrt14_pd (__mmask8 __U, __m256d __A) -{ - return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A, - (__v4df) - _mm256_setzero_pd (), - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_rsqrt14_ps (__m128 __A) -{ - return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_rsqrt14_ps (__m128 __W, __mmask8 __U, __m128 __A) -{ - return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_rsqrt14_ps (__mmask8 __U, __m128 __A) -{ - return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_rsqrt14_ps (__m256 __A) -{ - return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) -1); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_rsqrt14_ps (__m256 __W, __mmask8 __U, __m256 __A) -{ - return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_rsqrt14_ps (__mmask8 __U, __m256 __A) -{ - return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_broadcast_f32x4(__m128 __A) -{ - return (__m256)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A, - 0, 1, 2, 3, 0, 1, 2, 3); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcast_f32x4(__m256 __O, __mmask8 __M, __m128 __A) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__M, - (__v8sf)_mm256_broadcast_f32x4(__A), - (__v8sf)__O); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcast_f32x4 (__mmask8 __M, __m128 __A) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__M, - (__v8sf)_mm256_broadcast_f32x4(__A), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_broadcast_i32x4(__m128i __A) -{ - return (__m256i)__builtin_shufflevector((__v4si)__A, (__v4si)__A, - 0, 1, 2, 3, 0, 1, 2, 3); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcast_i32x4(__m256i __O, __mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_broadcast_i32x4(__A), - (__v8si)__O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcast_i32x4(__mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_broadcast_i32x4(__A), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcastsd_pd (__m256d __O, __mmask8 __M, __m128d __A) -{ - return (__m256d)__builtin_ia32_selectpd_256(__M, - (__v4df) _mm256_broadcastsd_pd(__A), - (__v4df) __O); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A) -{ - return (__m256d)__builtin_ia32_selectpd_256(__M, - (__v4df) _mm256_broadcastsd_pd(__A), - (__v4df) _mm256_setzero_pd()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_broadcastss_ps (__m128 __O, __mmask8 __M, __m128 __A) -{ - return (__m128)__builtin_ia32_selectps_128(__M, - (__v4sf) _mm_broadcastss_ps(__A), - (__v4sf) __O); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_broadcastss_ps (__mmask8 __M, __m128 __A) -{ - return (__m128)__builtin_ia32_selectps_128(__M, - (__v4sf) _mm_broadcastss_ps(__A), - (__v4sf) _mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcastss_ps (__m256 __O, __mmask8 __M, __m128 __A) -{ - return (__m256)__builtin_ia32_selectps_256(__M, - (__v8sf) _mm256_broadcastss_ps(__A), - (__v8sf) __O); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcastss_ps (__mmask8 __M, __m128 __A) -{ - return (__m256)__builtin_ia32_selectps_256(__M, - (__v8sf) _mm256_broadcastss_ps(__A), - (__v8sf) _mm256_setzero_ps()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_broadcastd_epi32 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectd_128(__M, - (__v4si) _mm_broadcastd_epi32(__A), - (__v4si) __O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectd_128(__M, - (__v4si) _mm_broadcastd_epi32(__A), - (__v4si) _mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcastd_epi32 (__m256i __O, __mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectd_256(__M, - (__v8si) _mm256_broadcastd_epi32(__A), - (__v8si) __O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectd_256(__M, - (__v8si) _mm256_broadcastd_epi32(__A), - (__v8si) _mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_broadcastq_epi64 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectq_128(__M, - (__v2di) _mm_broadcastq_epi64(__A), - (__v2di) __O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A) -{ - return (__m128i)__builtin_ia32_selectq_128(__M, - (__v2di) _mm_broadcastq_epi64(__A), - (__v2di) _mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_broadcastq_epi64 (__m256i __O, __mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectq_256(__M, - (__v4di) _mm256_broadcastq_epi64(__A), - (__v4di) __O); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A) -{ - return (__m256i)__builtin_ia32_selectq_256(__M, - (__v4di) _mm256_broadcastq_epi64(__A), - (__v4di) _mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtsepi32_epi8 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A, - (__v16qi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsepi32_epi8 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovsdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtsepi32_epi8 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A, - (__v16qi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtsepi32_epi8 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovsdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtsepi32_epi16 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A, - (__v8hi)_mm_setzero_si128 (), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A, - (__v8hi)__O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsepi32_epi16 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovsdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtsepi32_epi16 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A, - (__v8hi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtsepi32_epi16 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovsdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtsepi64_epi8 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A, - (__v16qi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsepi64_epi8 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovsqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtsepi64_epi8 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A, - (__v16qi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtsepi64_epi8 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovsqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtsepi64_epi32 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A, - (__v4si)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A, - (__v4si) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsepi64_epi32 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A, - (__v4si) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovsqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtsepi64_epi32 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A, - (__v4si)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A, - (__v4si)__O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtsepi64_epi32 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A, - (__v4si) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovsqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtsepi64_epi16 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A, - (__v8hi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtsepi64_epi16 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovsqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtsepi64_epi16 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A, - (__v8hi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtsepi64_epi16 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovsqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtusepi32_epi8 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A, - (__v16qi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtusepi32_epi8 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovusdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtusepi32_epi8 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A, - (__v16qi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtusepi32_epi8 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovusdb256mem_mask ((__v16qi*) __P, (__v8si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtusepi32_epi16 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A, - (__v8hi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtusepi32_epi16 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovusdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtusepi32_epi16 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A, - (__v8hi) _mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtusepi32_epi16 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovusdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtusepi64_epi8 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A, - (__v16qi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtusepi64_epi8 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovusqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtusepi64_epi8 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A, - (__v16qi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A, - (__v16qi) __O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtusepi64_epi8 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovusqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtusepi64_epi32 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A, - (__v4si)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A, - (__v4si) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtusepi64_epi32 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A, - (__v4si) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovusqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtusepi64_epi32 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A, - (__v4si)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A, - (__v4si) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtusepi64_epi32 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A, - (__v4si) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovusqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtusepi64_epi16 (__m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A, - (__v8hi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtusepi64_epi16 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovusqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtusepi64_epi16 (__m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A, - (__v8hi)_mm_undefined_si128(), - (__mmask8) -1); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtusepi64_epi16 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovusqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtepi32_epi8 (__m128i __A) -{ - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v4si)__A, __v4qi), (__v4qi){0, 0, 0, 0}, 0, 1, - 2, 3, 4, 5, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi32_epi8 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A, - (__v16qi) - _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi32_epi8 (__m256i __A) -{ - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v8si)__A, __v8qi), - (__v8qi){0, 0, 0, 0, 0, 0, 0, 0}, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi32_epi8 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtepi32_epi16 (__m128i __A) -{ - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v4si)__A, __v4hi), (__v4hi){0, 0, 0, 0}, 0, 1, - 2, 3, 4, 5, 6, 7); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi32_epi16 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi32_epi16 (__m256i __A) -{ - return (__m128i)__builtin_convertvector((__v8si)__A, __v8hi); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi32_epi16 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtepi64_epi8 (__m128i __A) -{ - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v2di)__A, __v2qi), (__v2qi){0, 0}, 0, 1, 2, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi64_epi8 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi64_epi8 (__m256i __A) -{ - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v4di)__A, __v4qi), (__v4qi){0, 0, 0, 0}, 0, 1, - 2, 3, 4, 5, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A, - (__v16qi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi64_epi8 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A, - (__v16qi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtepi64_epi32 (__m128i __A) -{ - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v2di)__A, __v2si), (__v2si){0, 0}, 0, 1, 2, 3); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A, - (__v4si) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi64_epi32 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A, - (__v4si) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi64_epi32 (__m256i __A) -{ - return (__m128i)__builtin_convertvector((__v4di)__A, __v4si); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm256_cvtepi64_epi32(__A), - (__v4si)__O); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi64_epi32 (__mmask8 __M, __m256i __A) -{ - return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M, - (__v4si)_mm256_cvtepi64_epi32(__A), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_cvtepi64_epi16 (__m128i __A) -{ - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v2di)__A, __v2hi), (__v2hi){0, 0}, 0, 1, 2, 3, - 3, 3, 3, 3); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A, - (__v8hi)__O, - __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtepi64_epi16 (__mmask8 __M, __m128i __A) -{ - return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A) -{ - __builtin_ia32_pmovqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_cvtepi64_epi16 (__m256i __A) -{ - return (__m128i)__builtin_shufflevector( - __builtin_convertvector((__v4di)__A, __v4hi), (__v4hi){0, 0, 0, 0}, 0, 1, - 2, 3, 4, 5, 6, 7); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A, - (__v8hi) __O, __M); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtepi64_epi16 (__mmask8 __M, __m256i __A) -{ - return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A, - (__v8hi) _mm_setzero_si128 (), - __M); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A) -{ - __builtin_ia32_pmovqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M); -} - -#define _mm256_extractf32x4_ps(A, imm) \ - ((__m128)__builtin_ia32_extractf32x4_256_mask((__v8sf)(__m256)(A), \ - (int)(imm), \ - (__v4sf)_mm_undefined_ps(), \ - (__mmask8)-1)) - -#define _mm256_mask_extractf32x4_ps(W, U, A, imm) \ - ((__m128)__builtin_ia32_extractf32x4_256_mask((__v8sf)(__m256)(A), \ - (int)(imm), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_extractf32x4_ps(U, A, imm) \ - ((__m128)__builtin_ia32_extractf32x4_256_mask((__v8sf)(__m256)(A), \ - (int)(imm), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U))) - -#define _mm256_extracti32x4_epi32(A, imm) \ - ((__m128i)__builtin_ia32_extracti32x4_256_mask((__v8si)(__m256i)(A), \ - (int)(imm), \ - (__v4si)_mm_undefined_si128(), \ - (__mmask8)-1)) - -#define _mm256_mask_extracti32x4_epi32(W, U, A, imm) \ - ((__m128i)__builtin_ia32_extracti32x4_256_mask((__v8si)(__m256i)(A), \ - (int)(imm), \ - (__v4si)(__m128i)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_extracti32x4_epi32(U, A, imm) \ - ((__m128i)__builtin_ia32_extracti32x4_256_mask((__v8si)(__m256i)(A), \ - (int)(imm), \ - (__v4si)_mm_setzero_si128(), \ - (__mmask8)(U))) - -#define _mm256_insertf32x4(A, B, imm) \ - ((__m256)__builtin_ia32_insertf32x4_256((__v8sf)(__m256)(A), \ - (__v4sf)(__m128)(B), (int)(imm))) - -#define _mm256_mask_insertf32x4(W, U, A, B, imm) \ - ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ - (__v8sf)_mm256_insertf32x4((A), (B), (imm)), \ - (__v8sf)(__m256)(W))) - -#define _mm256_maskz_insertf32x4(U, A, B, imm) \ - ((__m256)__builtin_ia32_selectps_256((__mmask8)(U), \ - (__v8sf)_mm256_insertf32x4((A), (B), (imm)), \ - (__v8sf)_mm256_setzero_ps())) - -#define _mm256_inserti32x4(A, B, imm) \ - ((__m256i)__builtin_ia32_inserti32x4_256((__v8si)(__m256i)(A), \ - (__v4si)(__m128i)(B), (int)(imm))) - -#define _mm256_mask_inserti32x4(W, U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_inserti32x4((A), (B), (imm)), \ - (__v8si)(__m256i)(W))) - -#define _mm256_maskz_inserti32x4(U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_inserti32x4((A), (B), (imm)), \ - (__v8si)_mm256_setzero_si256())) - -#define _mm_getmant_pd(A, B, C) \ - ((__m128d)__builtin_ia32_getmantpd128_mask((__v2df)(__m128d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)-1)) - -#define _mm_mask_getmant_pd(W, U, A, B, C) \ - ((__m128d)__builtin_ia32_getmantpd128_mask((__v2df)(__m128d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v2df)(__m128d)(W), \ - (__mmask8)(U))) - -#define _mm_maskz_getmant_pd(U, A, B, C) \ - ((__m128d)__builtin_ia32_getmantpd128_mask((__v2df)(__m128d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v2df)_mm_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm256_getmant_pd(A, B, C) \ - ((__m256d)__builtin_ia32_getmantpd256_mask((__v4df)(__m256d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)-1)) - -#define _mm256_mask_getmant_pd(W, U, A, B, C) \ - ((__m256d)__builtin_ia32_getmantpd256_mask((__v4df)(__m256d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v4df)(__m256d)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_getmant_pd(U, A, B, C) \ - ((__m256d)__builtin_ia32_getmantpd256_mask((__v4df)(__m256d)(A), \ - (int)(((C)<<2) | (B)), \ - (__v4df)_mm256_setzero_pd(), \ - (__mmask8)(U))) - -#define _mm_getmant_ps(A, B, C) \ - ((__m128)__builtin_ia32_getmantps128_mask((__v4sf)(__m128)(A), \ - (int)(((C)<<2) | (B)), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)-1)) - -#define _mm_mask_getmant_ps(W, U, A, B, C) \ - ((__m128)__builtin_ia32_getmantps128_mask((__v4sf)(__m128)(A), \ - (int)(((C)<<2) | (B)), \ - (__v4sf)(__m128)(W), \ - (__mmask8)(U))) - -#define _mm_maskz_getmant_ps(U, A, B, C) \ - ((__m128)__builtin_ia32_getmantps128_mask((__v4sf)(__m128)(A), \ - (int)(((C)<<2) | (B)), \ - (__v4sf)_mm_setzero_ps(), \ - (__mmask8)(U))) - -#define _mm256_getmant_ps(A, B, C) \ - ((__m256)__builtin_ia32_getmantps256_mask((__v8sf)(__m256)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)-1)) - -#define _mm256_mask_getmant_ps(W, U, A, B, C) \ - ((__m256)__builtin_ia32_getmantps256_mask((__v8sf)(__m256)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8sf)(__m256)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_getmant_ps(U, A, B, C) \ - ((__m256)__builtin_ia32_getmantps256_mask((__v8sf)(__m256)(A), \ - (int)(((C)<<2) | (B)), \ - (__v8sf)_mm256_setzero_ps(), \ - (__mmask8)(U))) - -#define _mm_mmask_i64gather_pd(v1_old, mask, index, addr, scale) \ - ((__m128d)__builtin_ia32_gather3div2df((__v2df)(__m128d)(v1_old), \ - (void const *)(addr), \ - (__v2di)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm_mmask_i64gather_epi64(v1_old, mask, index, addr, scale) \ - ((__m128i)__builtin_ia32_gather3div2di((__v2di)(__m128i)(v1_old), \ - (void const *)(addr), \ - (__v2di)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_mmask_i64gather_pd(v1_old, mask, index, addr, scale) \ - ((__m256d)__builtin_ia32_gather3div4df((__v4df)(__m256d)(v1_old), \ - (void const *)(addr), \ - (__v4di)(__m256i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_mmask_i64gather_epi64(v1_old, mask, index, addr, scale) \ - ((__m256i)__builtin_ia32_gather3div4di((__v4di)(__m256i)(v1_old), \ - (void const *)(addr), \ - (__v4di)(__m256i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm_mmask_i64gather_ps(v1_old, mask, index, addr, scale) \ - ((__m128)__builtin_ia32_gather3div4sf((__v4sf)(__m128)(v1_old), \ - (void const *)(addr), \ - (__v2di)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm_mmask_i64gather_epi32(v1_old, mask, index, addr, scale) \ - ((__m128i)__builtin_ia32_gather3div4si((__v4si)(__m128i)(v1_old), \ - (void const *)(addr), \ - (__v2di)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_mmask_i64gather_ps(v1_old, mask, index, addr, scale) \ - ((__m128)__builtin_ia32_gather3div8sf((__v4sf)(__m128)(v1_old), \ - (void const *)(addr), \ - (__v4di)(__m256i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_mmask_i64gather_epi32(v1_old, mask, index, addr, scale) \ - ((__m128i)__builtin_ia32_gather3div8si((__v4si)(__m128i)(v1_old), \ - (void const *)(addr), \ - (__v4di)(__m256i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm_mmask_i32gather_pd(v1_old, mask, index, addr, scale) \ - ((__m128d)__builtin_ia32_gather3siv2df((__v2df)(__m128d)(v1_old), \ - (void const *)(addr), \ - (__v4si)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm_mmask_i32gather_epi64(v1_old, mask, index, addr, scale) \ - ((__m128i)__builtin_ia32_gather3siv2di((__v2di)(__m128i)(v1_old), \ - (void const *)(addr), \ - (__v4si)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_mmask_i32gather_pd(v1_old, mask, index, addr, scale) \ - ((__m256d)__builtin_ia32_gather3siv4df((__v4df)(__m256d)(v1_old), \ - (void const *)(addr), \ - (__v4si)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_mmask_i32gather_epi64(v1_old, mask, index, addr, scale) \ - ((__m256i)__builtin_ia32_gather3siv4di((__v4di)(__m256i)(v1_old), \ - (void const *)(addr), \ - (__v4si)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm_mmask_i32gather_ps(v1_old, mask, index, addr, scale) \ - ((__m128)__builtin_ia32_gather3siv4sf((__v4sf)(__m128)(v1_old), \ - (void const *)(addr), \ - (__v4si)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm_mmask_i32gather_epi32(v1_old, mask, index, addr, scale) \ - ((__m128i)__builtin_ia32_gather3siv4si((__v4si)(__m128i)(v1_old), \ - (void const *)(addr), \ - (__v4si)(__m128i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_mmask_i32gather_ps(v1_old, mask, index, addr, scale) \ - ((__m256)__builtin_ia32_gather3siv8sf((__v8sf)(__m256)(v1_old), \ - (void const *)(addr), \ - (__v8si)(__m256i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_mmask_i32gather_epi32(v1_old, mask, index, addr, scale) \ - ((__m256i)__builtin_ia32_gather3siv8si((__v8si)(__m256i)(v1_old), \ - (void const *)(addr), \ - (__v8si)(__m256i)(index), \ - (__mmask8)(mask), (int)(scale))) - -#define _mm256_permutex_pd(X, C) \ - ((__m256d)__builtin_ia32_permdf256((__v4df)(__m256d)(X), (int)(C))) - -#define _mm256_mask_permutex_pd(W, U, X, C) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_permutex_pd((X), (C)), \ - (__v4df)(__m256d)(W))) - -#define _mm256_maskz_permutex_pd(U, X, C) \ - ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \ - (__v4df)_mm256_permutex_pd((X), (C)), \ - (__v4df)_mm256_setzero_pd())) - -#define _mm256_permutex_epi64(X, C) \ - ((__m256i)__builtin_ia32_permdi256((__v4di)(__m256i)(X), (int)(C))) - -#define _mm256_mask_permutex_epi64(W, U, X, C) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_permutex_epi64((X), (C)), \ - (__v4di)(__m256i)(W))) - -#define _mm256_maskz_permutex_epi64(U, X, C) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_permutex_epi64((X), (C)), \ - (__v4di)_mm256_setzero_si256())) - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_permutexvar_pd (__m256i __X, __m256d __Y) -{ - return (__m256d)__builtin_ia32_permvardf256((__v4df)__Y, (__v4di)__X); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_permutexvar_pd (__m256d __W, __mmask8 __U, __m256i __X, - __m256d __Y) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_permutexvar_pd(__X, __Y), - (__v4df)__W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutexvar_pd (__mmask8 __U, __m256i __X, __m256d __Y) -{ - return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U, - (__v4df)_mm256_permutexvar_pd(__X, __Y), - (__v4df)_mm256_setzero_pd()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_permutexvar_epi64 ( __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_permvardi256((__v4di) __Y, (__v4di) __X); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutexvar_epi64 (__mmask8 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_permutexvar_epi64(__X, __Y), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_permutexvar_epi64 (__m256i __W, __mmask8 __M, __m256i __X, - __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M, - (__v4di)_mm256_permutexvar_epi64(__X, __Y), - (__v4di)__W); -} - -#define _mm256_permutexvar_ps(A, B) _mm256_permutevar8x32_ps((B), (A)) - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_permutexvar_ps(__m256 __W, __mmask8 __U, __m256i __X, __m256 __Y) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_permutexvar_ps(__X, __Y), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutexvar_ps(__mmask8 __U, __m256i __X, __m256 __Y) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_permutexvar_ps(__X, __Y), - (__v8sf)_mm256_setzero_ps()); -} - -#define _mm256_permutexvar_epi32(A, B) _mm256_permutevar8x32_epi32((B), (A)) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_permutexvar_epi32(__m256i __W, __mmask8 __M, __m256i __X, - __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_permutexvar_epi32(__X, __Y), - (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_permutexvar_epi32(__mmask8 __M, __m256i __X, __m256i __Y) -{ - return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M, - (__v8si)_mm256_permutexvar_epi32(__X, __Y), - (__v8si)_mm256_setzero_si256()); -} - -#define _mm_alignr_epi32(A, B, imm) \ - ((__m128i)__builtin_ia32_alignd128((__v4si)(__m128i)(A), \ - (__v4si)(__m128i)(B), (int)(imm))) - -#define _mm_mask_alignr_epi32(W, U, A, B, imm) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ - (__v4si)_mm_alignr_epi32((A), (B), (imm)), \ - (__v4si)(__m128i)(W))) - -#define _mm_maskz_alignr_epi32(U, A, B, imm) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ - (__v4si)_mm_alignr_epi32((A), (B), (imm)), \ - (__v4si)_mm_setzero_si128())) - -#define _mm256_alignr_epi32(A, B, imm) \ - ((__m256i)__builtin_ia32_alignd256((__v8si)(__m256i)(A), \ - (__v8si)(__m256i)(B), (int)(imm))) - -#define _mm256_mask_alignr_epi32(W, U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_alignr_epi32((A), (B), (imm)), \ - (__v8si)(__m256i)(W))) - -#define _mm256_maskz_alignr_epi32(U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_alignr_epi32((A), (B), (imm)), \ - (__v8si)_mm256_setzero_si256())) - -#define _mm_alignr_epi64(A, B, imm) \ - ((__m128i)__builtin_ia32_alignq128((__v2di)(__m128i)(A), \ - (__v2di)(__m128i)(B), (int)(imm))) - -#define _mm_mask_alignr_epi64(W, U, A, B, imm) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ - (__v2di)_mm_alignr_epi64((A), (B), (imm)), \ - (__v2di)(__m128i)(W))) - -#define _mm_maskz_alignr_epi64(U, A, B, imm) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ - (__v2di)_mm_alignr_epi64((A), (B), (imm)), \ - (__v2di)_mm_setzero_si128())) - -#define _mm256_alignr_epi64(A, B, imm) \ - ((__m256i)__builtin_ia32_alignq256((__v4di)(__m256i)(A), \ - (__v4di)(__m256i)(B), (int)(imm))) - -#define _mm256_mask_alignr_epi64(W, U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_alignr_epi64((A), (B), (imm)), \ - (__v4di)(__m256i)(W))) - -#define _mm256_maskz_alignr_epi64(U, A, B, imm) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_alignr_epi64((A), (B), (imm)), \ - (__v4di)_mm256_setzero_si256())) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_movehdup_ps (__m128 __W, __mmask8 __U, __m128 __A) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_movehdup_ps(__A), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_movehdup_ps (__mmask8 __U, __m128 __A) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_movehdup_ps(__A), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_movehdup_ps (__m256 __W, __mmask8 __U, __m256 __A) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_movehdup_ps(__A), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_movehdup_ps (__mmask8 __U, __m256 __A) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_movehdup_ps(__A), - (__v8sf)_mm256_setzero_ps()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_moveldup_ps (__m128 __W, __mmask8 __U, __m128 __A) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_moveldup_ps(__A), - (__v4sf)__W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_moveldup_ps (__mmask8 __U, __m128 __A) -{ - return (__m128)__builtin_ia32_selectps_128((__mmask8)__U, - (__v4sf)_mm_moveldup_ps(__A), - (__v4sf)_mm_setzero_ps()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_moveldup_ps (__m256 __W, __mmask8 __U, __m256 __A) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_moveldup_ps(__A), - (__v8sf)__W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_moveldup_ps (__mmask8 __U, __m256 __A) -{ - return (__m256)__builtin_ia32_selectps_256((__mmask8)__U, - (__v8sf)_mm256_moveldup_ps(__A), - (__v8sf)_mm256_setzero_ps()); -} - -#define _mm256_mask_shuffle_epi32(W, U, A, I) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_shuffle_epi32((A), (I)), \ - (__v8si)(__m256i)(W))) - -#define _mm256_maskz_shuffle_epi32(U, A, I) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_shuffle_epi32((A), (I)), \ - (__v8si)_mm256_setzero_si256())) - -#define _mm_mask_shuffle_epi32(W, U, A, I) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ - (__v4si)_mm_shuffle_epi32((A), (I)), \ - (__v4si)(__m128i)(W))) - -#define _mm_maskz_shuffle_epi32(U, A, I) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ - (__v4si)_mm_shuffle_epi32((A), (I)), \ - (__v4si)_mm_setzero_si128())) - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_mask_mov_pd (__m128d __W, __mmask8 __U, __m128d __A) -{ - return (__m128d) __builtin_ia32_selectpd_128 ((__mmask8) __U, - (__v2df) __A, - (__v2df) __W); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_maskz_mov_pd (__mmask8 __U, __m128d __A) -{ - return (__m128d) __builtin_ia32_selectpd_128 ((__mmask8) __U, - (__v2df) __A, - (__v2df) _mm_setzero_pd ()); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_mask_mov_pd (__m256d __W, __mmask8 __U, __m256d __A) -{ - return (__m256d) __builtin_ia32_selectpd_256 ((__mmask8) __U, - (__v4df) __A, - (__v4df) __W); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_maskz_mov_pd (__mmask8 __U, __m256d __A) -{ - return (__m256d) __builtin_ia32_selectpd_256 ((__mmask8) __U, - (__v4df) __A, - (__v4df) _mm256_setzero_pd ()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_mov_ps (__m128 __W, __mmask8 __U, __m128 __A) -{ - return (__m128) __builtin_ia32_selectps_128 ((__mmask8) __U, - (__v4sf) __A, - (__v4sf) __W); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_mov_ps (__mmask8 __U, __m128 __A) -{ - return (__m128) __builtin_ia32_selectps_128 ((__mmask8) __U, - (__v4sf) __A, - (__v4sf) _mm_setzero_ps ()); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_mov_ps (__m256 __W, __mmask8 __U, __m256 __A) -{ - return (__m256) __builtin_ia32_selectps_256 ((__mmask8) __U, - (__v8sf) __A, - (__v8sf) __W); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_mov_ps (__mmask8 __U, __m256 __A) -{ - return (__m256) __builtin_ia32_selectps_256 ((__mmask8) __U, - (__v8sf) __A, - (__v8sf) _mm256_setzero_ps ()); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_mask_cvtph_ps (__m128 __W, __mmask8 __U, __m128i __A) -{ - return (__m128) __builtin_ia32_vcvtph2ps_mask ((__v8hi) __A, - (__v4sf) __W, - (__mmask8) __U); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_maskz_cvtph_ps (__mmask8 __U, __m128i __A) -{ - return (__m128) __builtin_ia32_vcvtph2ps_mask ((__v8hi) __A, - (__v4sf) - _mm_setzero_ps (), - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_mask_cvtph_ps (__m256 __W, __mmask8 __U, __m128i __A) -{ - return (__m256) __builtin_ia32_vcvtph2ps256_mask ((__v8hi) __A, - (__v8sf) __W, - (__mmask8) __U); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_maskz_cvtph_ps (__mmask8 __U, __m128i __A) -{ - return (__m256) __builtin_ia32_vcvtph2ps256_mask ((__v8hi) __A, - (__v8sf) - _mm256_setzero_ps (), - (__mmask8) __U); -} - -#define _mm_mask_cvt_roundps_ph(W, U, A, I) \ - ((__m128i)__builtin_ia32_vcvtps2ph_mask((__v4sf)(__m128)(A), (int)(I), \ - (__v8hi)(__m128i)(W), \ - (__mmask8)(U))) - -#define _mm_maskz_cvt_roundps_ph(U, A, I) \ - ((__m128i)__builtin_ia32_vcvtps2ph_mask((__v4sf)(__m128)(A), (int)(I), \ - (__v8hi)_mm_setzero_si128(), \ - (__mmask8)(U))) - -#define _mm_mask_cvtps_ph _mm_mask_cvt_roundps_ph -#define _mm_maskz_cvtps_ph _mm_maskz_cvt_roundps_ph - -#define _mm256_mask_cvt_roundps_ph(W, U, A, I) \ - ((__m128i)__builtin_ia32_vcvtps2ph256_mask((__v8sf)(__m256)(A), (int)(I), \ - (__v8hi)(__m128i)(W), \ - (__mmask8)(U))) - -#define _mm256_maskz_cvt_roundps_ph(U, A, I) \ - ((__m128i)__builtin_ia32_vcvtps2ph256_mask((__v8sf)(__m256)(A), (int)(I), \ - (__v8hi)_mm_setzero_si128(), \ - (__mmask8)(U))) - -#define _mm256_mask_cvtps_ph _mm256_mask_cvt_roundps_ph -#define _mm256_maskz_cvtps_ph _mm256_maskz_cvt_roundps_ph - - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif /* __AVX512VLINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlintrin.h.blob deleted file mode 100644 index b769bfa84534c7f28e044cbd7e6914ec549b4293..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 561510 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%0DRc87E^aaz`ps$%`f@U(U0j**B0rUgY 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h deleted file mode 100644 index fac1f232..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h +++ /dev/null @@ -1,689 +0,0 @@ -/*===------------- avx512vlvbmi2intrin.h - VBMI2 intrinsics -----------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vlvbmi2intrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VLVBMI2INTRIN_H -#define __AVX512VLVBMI2INTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vbmi2"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vbmi2"), __min_vector_width__(256))) - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_compress_epi16(__m128i __S, __mmask8 __U, __m128i __D) -{ - return (__m128i) __builtin_ia32_compresshi128_mask ((__v8hi) __D, - (__v8hi) __S, - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_compress_epi16(__mmask8 __U, __m128i __D) -{ - return (__m128i) __builtin_ia32_compresshi128_mask ((__v8hi) __D, - (__v8hi) _mm_setzero_si128(), - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_compress_epi8(__m128i __S, __mmask16 __U, __m128i __D) -{ - return (__m128i) __builtin_ia32_compressqi128_mask ((__v16qi) __D, - (__v16qi) __S, - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_compress_epi8(__mmask16 __U, __m128i __D) -{ - return (__m128i) __builtin_ia32_compressqi128_mask ((__v16qi) __D, - (__v16qi) _mm_setzero_si128(), - __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_compressstoreu_epi16(void *__P, __mmask8 __U, __m128i __D) -{ - __builtin_ia32_compressstorehi128_mask ((__v8hi *) __P, (__v8hi) __D, - __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_mask_compressstoreu_epi8(void *__P, __mmask16 __U, __m128i __D) -{ - __builtin_ia32_compressstoreqi128_mask ((__v16qi *) __P, (__v16qi) __D, - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_expand_epi16(__m128i __S, __mmask8 __U, __m128i __D) -{ - return (__m128i) __builtin_ia32_expandhi128_mask ((__v8hi) __D, - (__v8hi) __S, - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_expand_epi16(__mmask8 __U, __m128i __D) -{ - return (__m128i) __builtin_ia32_expandhi128_mask ((__v8hi) __D, - (__v8hi) _mm_setzero_si128(), - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_expand_epi8(__m128i __S, __mmask16 __U, __m128i __D) -{ - return (__m128i) __builtin_ia32_expandqi128_mask ((__v16qi) __D, - (__v16qi) __S, - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_expand_epi8(__mmask16 __U, __m128i __D) -{ - return (__m128i) __builtin_ia32_expandqi128_mask ((__v16qi) __D, - (__v16qi) _mm_setzero_si128(), - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_expandloadu_epi16(__m128i __S, __mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_expandloadhi128_mask ((const __v8hi *)__P, - (__v8hi) __S, - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_expandloadu_epi16(__mmask8 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_expandloadhi128_mask ((const __v8hi *)__P, - (__v8hi) _mm_setzero_si128(), - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_expandloadu_epi8(__m128i __S, __mmask16 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_expandloadqi128_mask ((const __v16qi *)__P, - (__v16qi) __S, - __U); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_expandloadu_epi8(__mmask16 __U, void const *__P) -{ - return (__m128i) __builtin_ia32_expandloadqi128_mask ((const __v16qi *)__P, - (__v16qi) _mm_setzero_si128(), - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_compress_epi16(__m256i __S, __mmask16 __U, __m256i __D) -{ - return (__m256i) __builtin_ia32_compresshi256_mask ((__v16hi) __D, - (__v16hi) __S, - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_compress_epi16(__mmask16 __U, __m256i __D) -{ - return (__m256i) __builtin_ia32_compresshi256_mask ((__v16hi) __D, - (__v16hi) _mm256_setzero_si256(), - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_compress_epi8(__m256i __S, __mmask32 __U, __m256i __D) -{ - return (__m256i) __builtin_ia32_compressqi256_mask ((__v32qi) __D, - (__v32qi) __S, - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_compress_epi8(__mmask32 __U, __m256i __D) -{ - return (__m256i) __builtin_ia32_compressqi256_mask ((__v32qi) __D, - (__v32qi) _mm256_setzero_si256(), - __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_compressstoreu_epi16(void *__P, __mmask16 __U, __m256i __D) -{ - __builtin_ia32_compressstorehi256_mask ((__v16hi *) __P, (__v16hi) __D, - __U); -} - -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_mask_compressstoreu_epi8(void *__P, __mmask32 __U, __m256i __D) -{ - __builtin_ia32_compressstoreqi256_mask ((__v32qi *) __P, (__v32qi) __D, - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_expand_epi16(__m256i __S, __mmask16 __U, __m256i __D) -{ - return (__m256i) __builtin_ia32_expandhi256_mask ((__v16hi) __D, - (__v16hi) __S, - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_expand_epi16(__mmask16 __U, __m256i __D) -{ - return (__m256i) __builtin_ia32_expandhi256_mask ((__v16hi) __D, - (__v16hi) _mm256_setzero_si256(), - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_expand_epi8(__m256i __S, __mmask32 __U, __m256i __D) -{ - return (__m256i) __builtin_ia32_expandqi256_mask ((__v32qi) __D, - (__v32qi) __S, - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_expand_epi8(__mmask32 __U, __m256i __D) -{ - return (__m256i) __builtin_ia32_expandqi256_mask ((__v32qi) __D, - (__v32qi) _mm256_setzero_si256(), - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_expandloadu_epi16(__m256i __S, __mmask16 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_expandloadhi256_mask ((const __v16hi *)__P, - (__v16hi) __S, - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_expandloadu_epi16(__mmask16 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_expandloadhi256_mask ((const __v16hi *)__P, - (__v16hi) _mm256_setzero_si256(), - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_expandloadu_epi8(__m256i __S, __mmask32 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_expandloadqi256_mask ((const __v32qi *)__P, - (__v32qi) __S, - __U); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_expandloadu_epi8(__mmask32 __U, void const *__P) -{ - return (__m256i) __builtin_ia32_expandloadqi256_mask ((const __v32qi *)__P, - (__v32qi) _mm256_setzero_si256(), - __U); -} - -#define _mm256_shldi_epi64(A, B, I) \ - ((__m256i)__builtin_ia32_vpshldq256((__v4di)(__m256i)(A), \ - (__v4di)(__m256i)(B), (int)(I))) - -#define _mm256_mask_shldi_epi64(S, U, A, B, I) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_shldi_epi64((A), (B), (I)), \ - (__v4di)(__m256i)(S))) - -#define _mm256_maskz_shldi_epi64(U, A, B, I) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_shldi_epi64((A), (B), (I)), \ - (__v4di)_mm256_setzero_si256())) - -#define _mm_shldi_epi64(A, B, I) \ - ((__m128i)__builtin_ia32_vpshldq128((__v2di)(__m128i)(A), \ - (__v2di)(__m128i)(B), (int)(I))) - -#define _mm_mask_shldi_epi64(S, U, A, B, I) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ - (__v2di)_mm_shldi_epi64((A), (B), (I)), \ - (__v2di)(__m128i)(S))) - -#define _mm_maskz_shldi_epi64(U, A, B, I) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ - (__v2di)_mm_shldi_epi64((A), (B), (I)), \ - (__v2di)_mm_setzero_si128())) - -#define _mm256_shldi_epi32(A, B, I) \ - ((__m256i)__builtin_ia32_vpshldd256((__v8si)(__m256i)(A), \ - (__v8si)(__m256i)(B), (int)(I))) - -#define _mm256_mask_shldi_epi32(S, U, A, B, I) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_shldi_epi32((A), (B), (I)), \ - (__v8si)(__m256i)(S))) - -#define _mm256_maskz_shldi_epi32(U, A, B, I) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_shldi_epi32((A), (B), (I)), \ - (__v8si)_mm256_setzero_si256())) - -#define _mm_shldi_epi32(A, B, I) \ - ((__m128i)__builtin_ia32_vpshldd128((__v4si)(__m128i)(A), \ - (__v4si)(__m128i)(B), (int)(I))) - -#define _mm_mask_shldi_epi32(S, U, A, B, I) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ - (__v4si)_mm_shldi_epi32((A), (B), (I)), \ - (__v4si)(__m128i)(S))) - -#define _mm_maskz_shldi_epi32(U, A, B, I) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ - (__v4si)_mm_shldi_epi32((A), (B), (I)), \ - (__v4si)_mm_setzero_si128())) - -#define _mm256_shldi_epi16(A, B, I) \ - ((__m256i)__builtin_ia32_vpshldw256((__v16hi)(__m256i)(A), \ - (__v16hi)(__m256i)(B), (int)(I))) - -#define _mm256_mask_shldi_epi16(S, U, A, B, I) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_shldi_epi16((A), (B), (I)), \ - (__v16hi)(__m256i)(S))) - -#define _mm256_maskz_shldi_epi16(U, A, B, I) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_shldi_epi16((A), (B), (I)), \ - (__v16hi)_mm256_setzero_si256())) - -#define _mm_shldi_epi16(A, B, I) \ - ((__m128i)__builtin_ia32_vpshldw128((__v8hi)(__m128i)(A), \ - (__v8hi)(__m128i)(B), (int)(I))) - -#define _mm_mask_shldi_epi16(S, U, A, B, I) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_shldi_epi16((A), (B), (I)), \ - (__v8hi)(__m128i)(S))) - -#define _mm_maskz_shldi_epi16(U, A, B, I) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_shldi_epi16((A), (B), (I)), \ - (__v8hi)_mm_setzero_si128())) - -#define _mm256_shrdi_epi64(A, B, I) \ - ((__m256i)__builtin_ia32_vpshrdq256((__v4di)(__m256i)(A), \ - (__v4di)(__m256i)(B), (int)(I))) - -#define _mm256_mask_shrdi_epi64(S, U, A, B, I) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_shrdi_epi64((A), (B), (I)), \ - (__v4di)(__m256i)(S))) - -#define _mm256_maskz_shrdi_epi64(U, A, B, I) \ - ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \ - (__v4di)_mm256_shrdi_epi64((A), (B), (I)), \ - (__v4di)_mm256_setzero_si256())) - -#define _mm_shrdi_epi64(A, B, I) \ - ((__m128i)__builtin_ia32_vpshrdq128((__v2di)(__m128i)(A), \ - (__v2di)(__m128i)(B), (int)(I))) - -#define _mm_mask_shrdi_epi64(S, U, A, B, I) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ - (__v2di)_mm_shrdi_epi64((A), (B), (I)), \ - (__v2di)(__m128i)(S))) - -#define _mm_maskz_shrdi_epi64(U, A, B, I) \ - ((__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \ - (__v2di)_mm_shrdi_epi64((A), (B), (I)), \ - (__v2di)_mm_setzero_si128())) - -#define _mm256_shrdi_epi32(A, B, I) \ - ((__m256i)__builtin_ia32_vpshrdd256((__v8si)(__m256i)(A), \ - (__v8si)(__m256i)(B), (int)(I))) - -#define _mm256_mask_shrdi_epi32(S, U, A, B, I) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_shrdi_epi32((A), (B), (I)), \ - (__v8si)(__m256i)(S))) - -#define _mm256_maskz_shrdi_epi32(U, A, B, I) \ - ((__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \ - (__v8si)_mm256_shrdi_epi32((A), (B), (I)), \ - (__v8si)_mm256_setzero_si256())) - -#define _mm_shrdi_epi32(A, B, I) \ - ((__m128i)__builtin_ia32_vpshrdd128((__v4si)(__m128i)(A), \ - (__v4si)(__m128i)(B), (int)(I))) - -#define _mm_mask_shrdi_epi32(S, U, A, B, I) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ - (__v4si)_mm_shrdi_epi32((A), (B), (I)), \ - (__v4si)(__m128i)(S))) - -#define _mm_maskz_shrdi_epi32(U, A, B, I) \ - ((__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \ - (__v4si)_mm_shrdi_epi32((A), (B), (I)), \ - (__v4si)_mm_setzero_si128())) - -#define _mm256_shrdi_epi16(A, B, I) \ - ((__m256i)__builtin_ia32_vpshrdw256((__v16hi)(__m256i)(A), \ - (__v16hi)(__m256i)(B), (int)(I))) - -#define _mm256_mask_shrdi_epi16(S, U, A, B, I) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_shrdi_epi16((A), (B), (I)), \ - (__v16hi)(__m256i)(S))) - -#define _mm256_maskz_shrdi_epi16(U, A, B, I) \ - ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \ - (__v16hi)_mm256_shrdi_epi16((A), (B), (I)), \ - (__v16hi)_mm256_setzero_si256())) - -#define _mm_shrdi_epi16(A, B, I) \ - ((__m128i)__builtin_ia32_vpshrdw128((__v8hi)(__m128i)(A), \ - (__v8hi)(__m128i)(B), (int)(I))) - -#define _mm_mask_shrdi_epi16(S, U, A, B, I) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_shrdi_epi16((A), (B), (I)), \ - (__v8hi)(__m128i)(S))) - -#define _mm_maskz_shrdi_epi16(U, A, B, I) \ - ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \ - (__v8hi)_mm_shrdi_epi16((A), (B), (I)), \ - (__v8hi)_mm_setzero_si128())) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_shldv_epi64(__m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_vpshldvq256((__v4di)__A, (__v4di)__B, - (__v4di)__C); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_shldv_epi64(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_shldv_epi64(__A, __B, __C), - (__v4di)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_shldv_epi64(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_shldv_epi64(__A, __B, __C), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_shldv_epi64(__m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_vpshldvq128((__v2di)__A, (__v2di)__B, - (__v2di)__C); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_shldv_epi64(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_shldv_epi64(__A, __B, __C), - (__v2di)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_shldv_epi64(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_shldv_epi64(__A, __B, __C), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_shldv_epi32(__m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_vpshldvd256((__v8si)__A, (__v8si)__B, - (__v8si)__C); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_shldv_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_shldv_epi32(__A, __B, __C), - (__v8si)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_shldv_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_shldv_epi32(__A, __B, __C), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_shldv_epi32(__m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_vpshldvd128((__v4si)__A, (__v4si)__B, - (__v4si)__C); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_shldv_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_shldv_epi32(__A, __B, __C), - (__v4si)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_shldv_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_shldv_epi32(__A, __B, __C), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_shldv_epi16(__m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_vpshldvw256((__v16hi)__A, (__v16hi)__B, - (__v16hi)__C); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_shldv_epi16(__m256i __A, __mmask16 __U, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectw_256(__U, - (__v16hi)_mm256_shldv_epi16(__A, __B, __C), - (__v16hi)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_shldv_epi16(__mmask16 __U, __m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectw_256(__U, - (__v16hi)_mm256_shldv_epi16(__A, __B, __C), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_shldv_epi16(__m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_vpshldvw128((__v8hi)__A, (__v8hi)__B, - (__v8hi)__C); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_shldv_epi16(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectw_128(__U, - (__v8hi)_mm_shldv_epi16(__A, __B, __C), - (__v8hi)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_shldv_epi16(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectw_128(__U, - (__v8hi)_mm_shldv_epi16(__A, __B, __C), - (__v8hi)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_shrdv_epi64(__m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_vpshrdvq256((__v4di)__A, (__v4di)__B, - (__v4di)__C); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_shrdv_epi64(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_shrdv_epi64(__A, __B, __C), - (__v4di)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_shrdv_epi64(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectq_256(__U, - (__v4di)_mm256_shrdv_epi64(__A, __B, __C), - (__v4di)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_shrdv_epi64(__m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_vpshrdvq128((__v2di)__A, (__v2di)__B, - (__v2di)__C); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_shrdv_epi64(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_shrdv_epi64(__A, __B, __C), - (__v2di)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_shrdv_epi64(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectq_128(__U, - (__v2di)_mm_shrdv_epi64(__A, __B, __C), - (__v2di)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_shrdv_epi32(__m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_vpshrdvd256((__v8si)__A, (__v8si)__B, - (__v8si)__C); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_shrdv_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_shrdv_epi32(__A, __B, __C), - (__v8si)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_shrdv_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_shrdv_epi32(__A, __B, __C), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_shrdv_epi32(__m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_vpshrdvd128((__v4si)__A, (__v4si)__B, - (__v4si)__C); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_shrdv_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_shrdv_epi32(__A, __B, __C), - (__v4si)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_shrdv_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_shrdv_epi32(__A, __B, __C), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_shrdv_epi16(__m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_vpshrdvw256((__v16hi)__A, (__v16hi)__B, - (__v16hi)__C); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_shrdv_epi16(__m256i __A, __mmask16 __U, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectw_256(__U, - (__v16hi)_mm256_shrdv_epi16(__A, __B, __C), - (__v16hi)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_shrdv_epi16(__mmask16 __U, __m256i __A, __m256i __B, __m256i __C) -{ - return (__m256i)__builtin_ia32_selectw_256(__U, - (__v16hi)_mm256_shrdv_epi16(__A, __B, __C), - (__v16hi)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_shrdv_epi16(__m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_vpshrdvw128((__v8hi)__A, (__v8hi)__B, - (__v8hi)__C); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_shrdv_epi16(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectw_128(__U, - (__v8hi)_mm_shrdv_epi16(__A, __B, __C), - (__v8hi)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_shrdv_epi16(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C) -{ - return (__m128i)__builtin_ia32_selectw_128(__U, - (__v8hi)_mm_shrdv_epi16(__A, __B, __C), - (__v8hi)_mm_setzero_si128()); -} - - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvbmi2intrin.h.blob deleted file mode 100644 index 979732aa8626eab680ef64b9fd9909bc5f66c9f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55023 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h deleted file mode 100644 index 8bc0694e..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h +++ /dev/null @@ -1,304 +0,0 @@ -/*===------------- avx512vlvnniintrin.h - VNNI intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vlvnniintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VLVNNIINTRIN_H -#define __AVX512VLVNNIINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vnni"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vnni"), __min_vector_width__(256))) - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with -/// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed -/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in \a S, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPBUSD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := Signed(ZeroExtend16(A.byte[4*j]) * SignExtend16(B.byte[4*j])) -/// tmp2.word := Signed(ZeroExtend16(A.byte[4*j+1]) * SignExtend16(B.byte[4*j+1])) -/// tmp3.word := Signed(ZeroExtend16(A.byte[4*j+2]) * SignExtend16(B.byte[4*j+2])) -/// tmp4.word := Signed(ZeroExtend16(A.byte[4*j+3]) * SignExtend16(B.byte[4*j+3])) -/// DST.dword[j] := S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// DST[MAX:256] := 0 -/// \endcode -#define _mm256_dpbusd_epi32(S, A, B) \ - ((__m256i)__builtin_ia32_vpdpbusd256((__v8si)(S), (__v8si)(A), (__v8si)(B))) - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with -/// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed -/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in \a S using signed saturation, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPBUSDS </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := Signed(ZeroExtend16(A.byte[4*j]) * SignExtend16(B.byte[4*j])) -/// tmp2.word := Signed(ZeroExtend16(A.byte[4*j+1]) * SignExtend16(B.byte[4*j+1])) -/// tmp3.word := Signed(ZeroExtend16(A.byte[4*j+2]) * SignExtend16(B.byte[4*j+2])) -/// tmp4.word := Signed(ZeroExtend16(A.byte[4*j+3]) * SignExtend16(B.byte[4*j+3])) -/// DST.dword[j] := Saturate32(S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// DST[MAX:256] := 0 -/// \endcode -#define _mm256_dpbusds_epi32(S, A, B) \ - ((__m256i)__builtin_ia32_vpdpbusds256((__v8si)(S), (__v8si)(A), (__v8si)(B))) - -/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a A with -/// corresponding 16-bit integers in \a B, producing 2 intermediate signed 32-bit -/// results. Sum these 2 results with the corresponding 32-bit integer in \a S, -/// and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPWSSD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.dword := SignExtend32(A.word[2*j]) * SignExtend32(B.word[2*j]) -/// tmp2.dword := SignExtend32(A.word[2*j+1]) * SignExtend32(B.word[2*j+1]) -/// DST.dword[j] := S.dword[j] + tmp1 + tmp2 -/// ENDFOR -/// DST[MAX:256] := 0 -/// \endcode -#define _mm256_dpwssd_epi32(S, A, B) \ - ((__m256i)__builtin_ia32_vpdpwssd256((__v8si)(S), (__v8si)(A), (__v8si)(B))) - -/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a A with -/// corresponding 16-bit integers in \a B, producing 2 intermediate signed 32-bit -/// results. Sum these 2 results with the corresponding 32-bit integer in \a S -/// using signed saturation, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPWSSDS </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.dword := SignExtend32(A.word[2*j]) * SignExtend32(B.word[2*j]) -/// tmp2.dword := SignExtend32(A.word[2*j+1]) * SignExtend32(B.word[2*j+1]) -/// DST.dword[j] := Saturate32(S.dword[j] + tmp1 + tmp2) -/// ENDFOR -/// DST[MAX:256] := 0 -/// \endcode -#define _mm256_dpwssds_epi32(S, A, B) \ - ((__m256i)__builtin_ia32_vpdpwssds256((__v8si)(S), (__v8si)(A), (__v8si)(B))) - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with -/// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed -/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in \a S, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPBUSD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := Signed(ZeroExtend16(A.byte[4*j]) * SignExtend16(B.byte[4*j])) -/// tmp2.word := Signed(ZeroExtend16(A.byte[4*j+1]) * SignExtend16(B.byte[4*j+1])) -/// tmp3.word := Signed(ZeroExtend16(A.byte[4*j+2]) * SignExtend16(B.byte[4*j+2])) -/// tmp4.word := Signed(ZeroExtend16(A.byte[4*j+3]) * SignExtend16(B.byte[4*j+3])) -/// DST.dword[j] := S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// DST[MAX:128] := 0 -/// \endcode -#define _mm_dpbusd_epi32(S, A, B) \ - ((__m128i)__builtin_ia32_vpdpbusd128((__v4si)(S), (__v4si)(A), (__v4si)(B))) - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with -/// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed -/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in \a S using signed saturation, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPBUSDS </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := Signed(ZeroExtend16(A.byte[4*j]) * SignExtend16(B.byte[4*j])) -/// tmp2.word := Signed(ZeroExtend16(A.byte[4*j+1]) * SignExtend16(B.byte[4*j+1])) -/// tmp3.word := Signed(ZeroExtend16(A.byte[4*j+2]) * SignExtend16(B.byte[4*j+2])) -/// tmp4.word := Signed(ZeroExtend16(A.byte[4*j+3]) * SignExtend16(B.byte[4*j+3])) -/// DST.dword[j] := Saturate32(S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// DST[MAX:128] := 0 -/// \endcode -#define _mm_dpbusds_epi32(S, A, B) \ - ((__m128i)__builtin_ia32_vpdpbusds128((__v4si)(S), (__v4si)(A), (__v4si)(B))) - -/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a A with -/// corresponding 16-bit integers in \a B, producing 2 intermediate signed 32-bit -/// results. Sum these 2 results with the corresponding 32-bit integer in \a S, -/// and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPWSSD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.dword := SignExtend32(A.word[2*j]) * SignExtend32(B.word[2*j]) -/// tmp2.dword := SignExtend32(A.word[2*j+1]) * SignExtend32(B.word[2*j+1]) -/// DST.dword[j] := S.dword[j] + tmp1 + tmp2 -/// ENDFOR -/// DST[MAX:128] := 0 -/// \endcode -#define _mm_dpwssd_epi32(S, A, B) \ - ((__m128i)__builtin_ia32_vpdpwssd128((__v4si)(S), (__v4si)(A), (__v4si)(B))) - -/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a A with -/// corresponding 16-bit integers in \a B, producing 2 intermediate signed 32-bit -/// results. Sum these 2 results with the corresponding 32-bit integer in \a S -/// using signed saturation, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPWSSDS </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.dword := SignExtend32(A.word[2*j]) * SignExtend32(B.word[2*j]) -/// tmp2.dword := SignExtend32(A.word[2*j+1]) * SignExtend32(B.word[2*j+1]) -/// DST.dword[j] := Saturate32(S.dword[j] + tmp1 + tmp2) -/// ENDFOR -/// DST[MAX:128] := 0 -/// \endcode -#define _mm_dpwssds_epi32(S, A, B) \ - ((__m128i)__builtin_ia32_vpdpwssds128((__v4si)(S), (__v4si)(A), (__v4si)(B))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_dpbusd_epi32(__m256i __S, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_dpbusd_epi32(__S, __A, __B), - (__v8si)__S); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_dpbusd_epi32(__mmask8 __U, __m256i __S, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_dpbusd_epi32(__S, __A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_dpbusds_epi32(__m256i __S, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_dpbusds_epi32(__S, __A, __B), - (__v8si)__S); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_dpbusds_epi32(__mmask8 __U, __m256i __S, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_dpbusds_epi32(__S, __A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_dpwssd_epi32(__m256i __S, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_dpwssd_epi32(__S, __A, __B), - (__v8si)__S); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_dpwssd_epi32(__mmask8 __U, __m256i __S, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_dpwssd_epi32(__S, __A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_dpwssds_epi32(__m256i __S, __mmask8 __U, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_dpwssds_epi32(__S, __A, __B), - (__v8si)__S); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_dpwssds_epi32(__mmask8 __U, __m256i __S, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_selectd_256(__U, - (__v8si)_mm256_dpwssds_epi32(__S, __A, __B), - (__v8si)_mm256_setzero_si256()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_dpbusd_epi32(__m128i __S, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_dpbusd_epi32(__S, __A, __B), - (__v4si)__S); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_dpbusd_epi32(__mmask8 __U, __m128i __S, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_dpbusd_epi32(__S, __A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_dpbusds_epi32(__m128i __S, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_dpbusds_epi32(__S, __A, __B), - (__v4si)__S); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_dpbusds_epi32(__mmask8 __U, __m128i __S, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_dpbusds_epi32(__S, __A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_dpwssd_epi32(__m128i __S, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_dpwssd_epi32(__S, __A, __B), - (__v4si)__S); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_dpwssd_epi32(__mmask8 __U, __m128i __S, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_dpwssd_epi32(__S, __A, __B), - (__v4si)_mm_setzero_si128()); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_dpwssds_epi32(__m128i __S, __mmask8 __U, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_dpwssds_epi32(__S, __A, __B), - (__v4si)__S); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_dpwssds_epi32(__mmask8 __U, __m128i __S, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_selectd_128(__U, - (__v4si)_mm_dpwssds_epi32(__S, __A, __B), - (__v4si)_mm_setzero_si128()); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvnniintrin.h.blob deleted file mode 100644 index dcb0020db79a2eb591787045200644c1d3f2b56d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24166 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h deleted file mode 100644 index 3e0815e5..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h +++ /dev/null @@ -1,121 +0,0 @@ -/*===------ avx512vlvp2intersectintrin.h - VL VP2INTERSECT intrinsics ------=== - * - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vlvp2intersectintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef _AVX512VLVP2INTERSECT_H -#define _AVX512VLVP2INTERSECT_H - -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vp2intersect"), \ - __min_vector_width__(128))) - -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vp2intersect"), \ - __min_vector_width__(256))) -/// Store, in an even/odd pair of mask registers, the indicators of the -/// locations of value matches between dwords in operands __a and __b. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VP2INTERSECTD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x i32]. -/// \param __b -/// A 256-bit vector of [8 x i32] -/// \param __m0 -/// A pointer point to 8-bit mask -/// \param __m1 -/// A pointer point to 8-bit mask -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_2intersect_epi32(__m256i __a, __m256i __b, __mmask8 *__m0, __mmask8 *__m1) { - __builtin_ia32_vp2intersect_d_256((__v8si)__a, (__v8si)__b, __m0, __m1); -} - -/// Store, in an even/odd pair of mask registers, the indicators of the -/// locations of value matches between quadwords in operands __a and __b. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VP2INTERSECTQ </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x i64]. -/// \param __b -/// A 256-bit vector of [4 x i64] -/// \param __m0 -/// A pointer point to 8-bit mask -/// \param __m1 -/// A pointer point to 8-bit mask -static __inline__ void __DEFAULT_FN_ATTRS256 -_mm256_2intersect_epi64(__m256i __a, __m256i __b, __mmask8 *__m0, __mmask8 *__m1) { - __builtin_ia32_vp2intersect_q_256((__v4di)__a, (__v4di)__b, __m0, __m1); -} - -/// Store, in an even/odd pair of mask registers, the indicators of the -/// locations of value matches between dwords in operands __a and __b. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VP2INTERSECTD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x i32]. -/// \param __b -/// A 128-bit vector of [4 x i32] -/// \param __m0 -/// A pointer point to 8-bit mask -/// \param __m1 -/// A pointer point to 8-bit mask -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_2intersect_epi32(__m128i __a, __m128i __b, __mmask8 *__m0, __mmask8 *__m1) { - __builtin_ia32_vp2intersect_d_128((__v4si)__a, (__v4si)__b, __m0, __m1); -} - -/// Store, in an even/odd pair of mask registers, the indicators of the -/// locations of value matches between quadwords in operands __a and __b. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VP2INTERSECTQ </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x i64]. -/// \param __b -/// A 128-bit vector of [2 x i64] -/// \param __m0 -/// A pointer point to 8-bit mask -/// \param __m1 -/// A pointer point to 8-bit mask -static __inline__ void __DEFAULT_FN_ATTRS128 -_mm_2intersect_epi64(__m128i __a, __m128i __b, __mmask8 *__m0, __mmask8 *__m1) { - __builtin_ia32_vp2intersect_q_128((__v2di)__a, (__v2di)__b, __m0, __m1); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vlvp2intersectintrin.h.blob deleted file mode 100644 index 6bb3237048ad28e91f1bb77f416d331f1ea509de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16942 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h deleted file mode 100644 index 9935a119..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h +++ /dev/null @@ -1,115 +0,0 @@ -/*===------------- avx512vnniintrin.h - VNNI intrinsics ------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vnniintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VNNIINTRIN_H -#define __AVX512VNNIINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vnni"), __min_vector_width__(512))) - - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_dpbusd_epi32(__m512i __S, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_vpdpbusd512((__v16si)__S, (__v16si)__A, - (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_dpbusd_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_dpbusd_epi32(__S, __A, __B), - (__v16si)__S); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_dpbusd_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_dpbusd_epi32(__S, __A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_dpbusds_epi32(__m512i __S, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_vpdpbusds512((__v16si)__S, (__v16si)__A, - (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_dpbusds_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_dpbusds_epi32(__S, __A, __B), - (__v16si)__S); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_dpbusds_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_dpbusds_epi32(__S, __A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_dpwssd_epi32(__m512i __S, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_vpdpwssd512((__v16si)__S, (__v16si)__A, - (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_dpwssd_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_dpwssd_epi32(__S, __A, __B), - (__v16si)__S); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_dpwssd_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_dpwssd_epi32(__S, __A, __B), - (__v16si)_mm512_setzero_si512()); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_dpwssds_epi32(__m512i __S, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_vpdpwssds512((__v16si)__S, (__v16si)__A, - (__v16si)__B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_dpwssds_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_dpwssds_epi32(__S, __A, __B), - (__v16si)__S); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_dpwssds_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) -{ - return (__m512i)__builtin_ia32_selectd_512(__U, - (__v16si)_mm512_dpwssds_epi32(__S, __A, __B), - (__v16si)_mm512_setzero_si512()); -} - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vnniintrin.h.blob deleted file mode 100644 index 9b1af5094c8c4d74c4239e6105b936e166c62487..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18600 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h deleted file mode 100644 index 5d3cb48c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h +++ /dev/null @@ -1,77 +0,0 @@ -/*===------- avx512vpintersectintrin.h - VP2INTERSECT intrinsics ------------=== - * - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avx512vp2intersect.h> directly; include <immintrin.h> instead." -#endif - -#ifndef _AVX512VP2INTERSECT_H -#define _AVX512VP2INTERSECT_H - -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512vp2intersect"), \ - __min_vector_width__(512))) - -/// Store, in an even/odd pair of mask registers, the indicators of the -/// locations of value matches between dwords in operands __a and __b. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VP2INTERSECTD </c> instruction. -/// -/// \param __a -/// A 512-bit vector of [16 x i32]. -/// \param __b -/// A 512-bit vector of [16 x i32] -/// \param __m0 -/// A pointer point to 16-bit mask -/// \param __m1 -/// A pointer point to 16-bit mask -static __inline__ void __DEFAULT_FN_ATTRS -_mm512_2intersect_epi32(__m512i __a, __m512i __b, __mmask16 *__m0, __mmask16 *__m1) { - __builtin_ia32_vp2intersect_d_512((__v16si)__a, (__v16si)__b, __m0, __m1); -} - -/// Store, in an even/odd pair of mask registers, the indicators of the -/// locations of value matches between quadwords in operands __a and __b. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VP2INTERSECTQ </c> instruction. -/// -/// \param __a -/// A 512-bit vector of [8 x i64]. -/// \param __b -/// A 512-bit vector of [8 x i64] -/// \param __m0 -/// A pointer point to 8-bit mask -/// \param __m1 -/// A pointer point to 8-bit mask -static __inline__ void __DEFAULT_FN_ATTRS -_mm512_2intersect_epi64(__m512i __a, __m512i __b, __mmask8 *__m0, __mmask8 *__m1) { - __builtin_ia32_vp2intersect_q_512((__v8di)__a, (__v8di)__b, __m0, __m1); -} - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vp2intersectintrin.h.blob deleted file mode 100644 index 5ba1fd36a446cbe697fe8a92600711e7566f95fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14651 zcmcgzTZ|-C8Ll2iVwMeTHi(xHtRRwQnV#P1S%=ZUvg_{lu;T*44x7z_)Sj+7-F=w4 zZJp}NjD&0mflVOMhmC<mkSIZe2_ZhHiHVn(AfoZX5FdOnK50yl_@I$+8~<~v&gni~ ze^)m?Fb};mUH>`%?fWn1KehX<4_;?yerHvzS|<u<&95D!d^3&WT1t6Z^Qc$jiCYT@ z3m0AMGS??zdnVFqKT0-P*sgjkp>7%_TenT*V7<Rksdaf$W1;JJJz6_;>}0*xq-_>D zZsgI$j`hKf_Qlr?8aLgF<&%HEwQ4?TvXs}vQ(kkNpvhB`QYRIgXi}dwYf_im(u(Fv zf&mND1T+OwVHJa)lnFkZc9(gmL~AE&ZNDoX?Rn#s-%eNzR_!LZMlDLjGj2$#OcIc^ zV?4lB=ncNGRBy#gD<zsp`v|v$rco3t`MkLW0O*r=I!~T@%_#B(VZmr}t2p9pP<MP5 z7@HaFNE!vqb^6Ss;PP&m(nJ%N0kg$?>NJz6&$9&wUTRKon;Umo*owri8cQWM1j&gH z0Gy5o-c4G>9lEqk+z$2GK#1`2j~+DT<bqLK>nx%Hm9E_iS&3BA;2HKgYxjsh27JTl z8C}W(nv9T@$xnMsI(qld?>5EP(UC@7R{~WV*<jg<tA5mOPS=x2B=?#@nYMh3*IbXb z@Q@j`MVfTo)M=bJdE8*FWYglyL^lc%MKQ9O8%3LpIxKQp-Ox>06!H=Cjpi|#5d_1t z&7&nbss#};wgc+>eh^G^Jvg1Gn|vG9vKul8R`k(`dU(cEb^rz;kr>d)R6UY=aJNIJ zvgm^vvnU)#u^Xl(I%~f{GV`(wAaPfU;efajFn_-JP7}l;5>V@CHo%1uSsygKQBOGz z7#e`-1Z3b4A8eMXizi4`tAz9DxM2+Iwkee66f$I1LZl1Ibmcvv&s#^2n2KtBKuXwO z&}e-WKM`9}FvB9Kwygn&<TX80x;~4W5lPJQiEf#PzduVU6K-2MXo#tlkdTDDpN3Va zEC8i+%b-Jf$4SfWU}*=X&Ls^CX}QcVt%Opi?Qg|0RqnStrhl?X5}{1o&FKOwV>MgT z>poyil)<VCSt~X3W|?}BhwF%oOO~)!Kzcs1#_-KBpzw5}Lc@<-0+rruSWxc3QNtDw zH>g1^!p*G=p`dm3INQc^fe0DdMHB?qQMF08jJCB52`M0fvo!B_-q~?8B%rFrrTJg8 z4;aToT2o}*mH<{E?Au|t1}$onS0{uN;X#ciNhocw@13X2MmIw)O&<zo=p1w0W?9}l zKOHUFvD)^ioqDnB2VMWXcOHQsx}r~58gF9l9!kzpN1&vjBO-(WH`yOMkk^e!S0sc( zYdd^Yh9#d4vKsiAH>sIWz-iSs4QayM%z4!&;S%2k4{DG^F%8?Y(icD?y_|(^NV%Cs zl-vT?PKN9niJ8#t;b(T6U63q4L)|7ey+b-3(WtQpob;$W&E6`fh_-9x;4C=>oY>0} z{3^0JDvC?T`<61#bqMbS*<owNyQ?Gx02UbZ6WbJ#Ls?#X5c1H6EVpRHsC~28&N}I& z4;k4kO^Qsj7iTl*B2p^PeK?4~c5byp2{dn2sCFYjAMK-ay!BWTg#nat9C4Bgj(JsR zqR>#11bGW3gASzvkswsiM{<KW?Ia+uL{XI_*=a{7q=FTiJ_JfIX^J7btS;2zlnzQ{ zhN7J@MWs>(7Y}hO!+IhQD#m&gw^>eZ%>pkt$Z3{k;P$z!1wX!~thOcT_}Qjx%VE3k z*RkG77pQ_?U<v`_A;S*JWzxG@a)8sgI4_EZywHLf<ed62-I~0e7~4SS;+q^%%R`bQ ziL|Irat13=qgp;`n_C$qDzkyyQ;z;(Gcg$Jn!BNb5pQY<Gpyz~Q2m`|x8<Z{IMFC` zC(yRC%60DUFPoK1g4^{YF6KgGqd-(zv@|O#fsNg2oKQHL89qaIf^HhCB`B@q=)<{_ zbsu7X+>tFmty1t$HK1uH!Vk;PIClrr`mEgQtnK9EGZToYp#5eTv9JfnzUk++Vb0NM z1>F+{rxVU;IC(bOQEgv|B$*Y4AzNrxiqi&^V?sdZ@p?S5+sNBeKQH;?17VZ{Z%>Vp zyl%i`01kByWV@=j6%v?w8c0+~EtDEfRTfA-5oD9k`(hL?D5m&RItc9rP~~OYg}4zV zrr~)vD1+aq=0ju6q&{as45!4bI%Emu!ovL}?bHxjlR`BjFgtLgAc)FZ0x{uUnmFMu zbl*am0+v-7cjQ3U@R9)v@wjk0MNKURAJ||9B@O}@R{7A?3C_4RvU~%{81QSR8dE@d z^@5(*6<s#%HfxW1Hd2P2878(pns6Aw8umgJ9EcmOF_f0Y(w$W~sek?Uv5O!nAGB;O z2wr?dAStp77N@kYn?7*t!PsheXHh2Z7U3a_<E-_4?z{JyWmJj;Z2|2;`#e7UDce?h zTNw8pw9zsOKa<GiF*Q>f>WwVPiXqXMOD3k}ln;C_6_<+BE7wC2oI6-{Kq=34DcUcf zA_oza&6(p#CPg^Z&mu1A<};;oSzW*7cX_9L)4tmw!@IN5Q<P3H9p>dHa>=jE{nTS{ zcPsq=mqx23k!J3U%gzncMtz(+#r76;#Avfcvink<u+RmA)s=QUv*%R(cc)e<-GEIV z+iRm|`OrvHD&uLI*e7W#O7QctraIqcW)WBWs2~r!!Q_K!-i8Q43Wp<g16>t?JYoK) znZVuRq~xYW<uv3Od^EBRVMi(o^QPAnNMK@kJw}MT9F1$mTnjjyuHgb^S7rr8QI;8Q zU_et$P$+#5usbU)L)AgIm5B%2xS+f!Vr+PZAI%lg%SLjSt+o@BgqYX(s0_S=rFA7h z1|f0vlvd^Ci~&Y;!_2m&5ed6VfsM@+OFh;`pGtxBQ61({ehl*{eY<O{LB(@@j|NdX z(^Srnh{uODebnk2mN6U9Y-Uh^rKV{^`ynPrN#y$@SDzE>Cz!B~z)e|5?+de&vXGsj zzQj>~Od!QXB@b-kg&J1nV(}sXCOx_cPWkx(Uzde(0Yr+-2jYfzO}Y%CV6>9nU%;jc zQ|G))>YR#7)&l3t+^q#e$w2D~hfhO3SQ}K~%;Qx(>iRH0g=-r_8+7vtmNa%YB0n_) z9wW>f%dy0)C^fW#sGHq7XjG#Tg8HF=HnjFLwNG#!;-pQRk!;w@_lDU=>@uvfqoTxF zjzr=HC0B4o=#?>wnN=R>W@?(t--gj<?ht4@@hiZLyBuIwAxXm|tU5Vq;-bRj$^cnW zF}R*Eai~b-`!KXGmY=@<@2|>N<Vx(=6z_>ZITiFeVANh(+oT`GlAU(EBAND%TZVFB z{t3X92Jj>C7Gu<fLB63kDmYvmQ|OtCVx!b__NpGI{e+<f2Hn};p7F(*pbJ+ILa&1L zw1MTB5x20W;Vuaa^I7Ewamg`lP%f_cqKOlfAs@iDbVEU0=_{FE&18+52X4m16l3;Y z%?)DL9T0D3*XEf3A{M>YMx|2OqZf-(2XhUmDhQO6S+!AMj-17$G)mcVZaBz#=wkk& zWT_-z)bh6=<-|x19d+ST;z@_(7bzNLnyQ5Dgx6Rmt@toA1UGS)XKo|#*@UTH{x(hF z8gP=Z@OEy`NAnuGBHqkrc;zXu<d${vO_+vH2QY?*cb@;?0&8MqN)pvBh{3iw7(}&# z@&gBE1lcIH>-U>uv}F)aJ2V^1eQPZrSSXJ{iU9^j4p)yxw3zsgXpU#GM^*Q60?$_E zlh&tq&+Qy~<>r5$`S11@#l0GHZ5G1y1+{w-^K2&w!1K;9tQ{J&m4o}>{dD-A*^WaN z;6we<lz#+-Z?4+=;p+oqe=pr+-FV|-rC~J|=PJjoJLarY(0<Yd;AxZ4774o+d7d2; zme^6t7CYGqyiX68@d;nB!A3ypF&FNQ5-up<n_Xf;A>U>dUqF@bQdpS6`<&cv(zH)$ zXrJ#APre-`IKc}d2?;$eqzAU3rPEy8wd;ZGI$zxW+qc5xMfvW~u3Z})#$lzX=^QKs zuQ37=;z;a~MpCL<-9z^2uhvi8wQ>C3Q^${P++*KbgRg*I-pGnUFL02jP{DSWZQDm| zFkuzEV`p8skpBKvdtifszqU9eZcZg0(gp`I;#k}p(ZrVj3K>@=BVo@G;-#s?mNmcg zlllF>{MBIP@ts#6-Sg|~-uUa{j_vH8|HD;RJ+))8zcm+sdgp7_?urFJJD>gD4I8)J zaQPLpB5Aok9Z5?oV^GS!$gxzn>VTys>)=O*rH>X!$No<sft3JB%k|liq^U>HF$qdb zD<1|+Bh&&+Pdt6%-Ol>iw|DlwdE($5{afDNdF{pD@BPK<oAJ&k{_~H$S3H@#n1ktK zJJ0^?dFO|p|I@P~OT)QX#7znz*o4l{arOanvbce_9k#_6kaBGCYt-5&T3=gy+yp=J zm+S+Uta{A4bZNJMtN3|Oe9Wz_ubrN+ta)qkd}U{C!~fS+-`V($V%vq7Z->;g#ef=w z2xNY<78dr1wc<x?GFOa>xrWzB=PQlJ8kb<(!|tU&zVwafo>1FP(MF(LsROYr6@h<& ze{X4pGwYE@u9UoU_SW3;`tq6i%5rNNSneE5`1a9tx1*S89bgKdh)tvtODopm;@;71 z=8Eo^t9$j{e5L+){b|_v@^^2)=PUj06>8%tTFm4VSv|lhhC&!r3YloWexQB`WLvL; z>Wu>p_`R{-fZuoN)TI0+lgN^F_0=D@tV-kQ#`EvbN!L8D{rx_GqOx{z?VGzRI_JS^ zRp+cddoCAC4>uZe>48Q=TO(U~X6->(s$i^boO8bB8o{~#?fMI1IhgYW?IpQ<`Kjeg zuv~?Mx%_~YFW;^|DwlipN5__5SiT6$RagxLZ{~v6&(_b$rR()`rr^uH<%eOZ%IZ1i zyn-u>4H_4u+Fs+rn8hAmdkj{qz#cLtit*vPv>5nm%wo%Dm(RgcRab^fmCTK^4Jk7? zbxh{9WNiRT=imGK%eA+*f8aRBjyI0ncXGpN+~pkE*tqu;p!$Z-LDmqhO!2Ax0F=H0 zc8T97TinSSAjc8SO9=1oG`nr_2mA#u`oU{>kZZ2bk31s>p6hQ~kh?-<AN>KP;C}<= znF{`!SlWT*fGG%QfWvirt~)pfpY|DR2TJH=ON&eQ9<Cf;JPx1hSFYC&10XK@{w?)S jJ$ceOa{3Ic8*MV2J3!0*T1%Xua_ydLzceR5B@gR=b)5L> diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h deleted file mode 100644 index bb435e62..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h +++ /dev/null @@ -1,54 +0,0 @@ -/*===----- avx512vpopcntdqintrin.h - AVX512VPOPCNTDQ intrinsics-------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error \ - "Never use <avx512vpopcntdqintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VPOPCNTDQINTRIN_H -#define __AVX512VPOPCNTDQINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512vpopcntdq"), __min_vector_width__(512))) - -static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_popcnt_epi64(__m512i __A) { - return (__m512i)__builtin_ia32_vpopcntq_512((__v8di)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_popcnt_epi64(__m512i __W, __mmask8 __U, __m512i __A) { - return (__m512i)__builtin_ia32_selectq_512( - (__mmask8)__U, (__v8di)_mm512_popcnt_epi64(__A), (__v8di)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_popcnt_epi64(__mmask8 __U, __m512i __A) { - return _mm512_mask_popcnt_epi64((__m512i)_mm512_setzero_si512(), __U, __A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_popcnt_epi32(__m512i __A) { - return (__m512i)__builtin_ia32_vpopcntd_512((__v16si)__A); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_mask_popcnt_epi32(__m512i __W, __mmask16 __U, __m512i __A) { - return (__m512i)__builtin_ia32_selectd_512( - (__mmask16)__U, (__v16si)_mm512_popcnt_epi32(__A), (__v16si)__W); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS -_mm512_maskz_popcnt_epi32(__mmask16 __U, __m512i __A) { - return _mm512_mask_popcnt_epi32((__m512i)_mm512_setzero_si512(), __U, __A); -} - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqintrin.h.blob deleted file mode 100644 index d63133916b9d6c09923d788883a777eb69966afc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14901 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 YXc&yy{n-U%R46D5Bp9deoC5Fv7mhI(00000 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h deleted file mode 100644 index a3cb9b6b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h +++ /dev/null @@ -1,91 +0,0 @@ -/*===---- avx512vpopcntdqintrin.h - AVX512VPOPCNTDQ intrinsics -------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error \ - "Never use <avx512vpopcntdqvlintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVX512VPOPCNTDQVLINTRIN_H -#define __AVX512VPOPCNTDQVLINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512vpopcntdq,avx512vl"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, __target__("avx512vpopcntdq,avx512vl"), __min_vector_width__(256))) - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_popcnt_epi64(__m128i __A) { - return (__m128i)__builtin_ia32_vpopcntq_128((__v2di)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_popcnt_epi64(__m128i __W, __mmask8 __U, __m128i __A) { - return (__m128i)__builtin_ia32_selectq_128( - (__mmask8)__U, (__v2di)_mm_popcnt_epi64(__A), (__v2di)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_popcnt_epi64(__mmask8 __U, __m128i __A) { - return _mm_mask_popcnt_epi64((__m128i)_mm_setzero_si128(), __U, __A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_popcnt_epi32(__m128i __A) { - return (__m128i)__builtin_ia32_vpopcntd_128((__v4si)__A); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_mask_popcnt_epi32(__m128i __W, __mmask8 __U, __m128i __A) { - return (__m128i)__builtin_ia32_selectd_128( - (__mmask8)__U, (__v4si)_mm_popcnt_epi32(__A), (__v4si)__W); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_maskz_popcnt_epi32(__mmask8 __U, __m128i __A) { - return _mm_mask_popcnt_epi32((__m128i)_mm_setzero_si128(), __U, __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_popcnt_epi64(__m256i __A) { - return (__m256i)__builtin_ia32_vpopcntq_256((__v4di)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_popcnt_epi64(__m256i __W, __mmask8 __U, __m256i __A) { - return (__m256i)__builtin_ia32_selectq_256( - (__mmask8)__U, (__v4di)_mm256_popcnt_epi64(__A), (__v4di)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_popcnt_epi64(__mmask8 __U, __m256i __A) { - return _mm256_mask_popcnt_epi64((__m256i)_mm256_setzero_si256(), __U, __A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_popcnt_epi32(__m256i __A) { - return (__m256i)__builtin_ia32_vpopcntd_256((__v8si)__A); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_mask_popcnt_epi32(__m256i __W, __mmask8 __U, __m256i __A) { - return (__m256i)__builtin_ia32_selectd_256( - (__mmask8)__U, (__v8si)_mm256_popcnt_epi32(__A), (__v8si)__W); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_maskz_popcnt_epi32(__mmask8 __U, __m256i __A) { - return _mm256_mask_popcnt_epi32((__m256i)_mm256_setzero_si256(), __U, __A); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avx512vpopcntdqvlintrin.h.blob deleted file mode 100644 index 127229571fa36a01ef2f34a7d420c74a1cacb4cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17361 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 VK~ANjge?ilzs{2J({Zrm{{a97R=)rM diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h deleted file mode 100644 index 5c782d2a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h +++ /dev/null @@ -1,177 +0,0 @@ -/*===----------------- avxifmaintrin.h - IFMA intrinsics -------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <avxifmaintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVXIFMAINTRIN_H -#define __AVXIFMAINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, __target__("avxifma"), \ - __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, __target__("avxifma"), \ - __min_vector_width__(256))) - -// must vex-encoding - -/// Multiply packed unsigned 52-bit integers in each 64-bit element of \a __Y -/// and \a __Z to form a 104-bit intermediate result. Add the high 52-bit -/// unsigned integer from the intermediate result with the corresponding -/// unsigned 64-bit integer in \a __X, and store the results in \a dst. -/// -/// \headerfile <immintrin.h> -/// -/// \code -/// __m128i -/// _mm_madd52hi_avx_epu64 (__m128i __X, __m128i __Y, __m128i __Z) -/// \endcode -/// -/// This intrinsic corresponds to the \c VPMADD52HUQ instruction. -/// -/// \return -/// return __m128i dst. -/// \param __X -/// A 128-bit vector of [2 x i64] -/// \param __Y -/// A 128-bit vector of [2 x i64] -/// \param __Z -/// A 128-bit vector of [2 x i64] -/// -/// \code{.operation} -/// FOR j := 0 to 1 -/// i := j*64 -/// tmp[127:0] := ZeroExtend64(__Y[i+51:i]) * ZeroExtend64(__Z[i+51:i]) -/// dst[i+63:i] := __X[i+63:i] + ZeroExtend64(tmp[103:52]) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_madd52hi_avx_epu64(__m128i __X, __m128i __Y, __m128i __Z) { - return (__m128i)__builtin_ia32_vpmadd52huq128((__v2di)__X, (__v2di)__Y, - (__v2di)__Z); -} - -/// Multiply packed unsigned 52-bit integers in each 64-bit element of \a __Y -/// and \a __Z to form a 104-bit intermediate result. Add the high 52-bit -/// unsigned integer from the intermediate result with the corresponding -/// unsigned 64-bit integer in \a __X, and store the results in \a dst. -/// -/// \headerfile <immintrin.h> -/// -/// \code -/// __m256i -/// _mm256_madd52hi_avx_epu64 (__m256i __X, __m256i __Y, __m256i __Z) -/// \endcode -/// -/// This intrinsic corresponds to the \c VPMADD52HUQ instruction. -/// -/// \return -/// return __m256i dst. -/// \param __X -/// A 256-bit vector of [4 x i64] -/// \param __Y -/// A 256-bit vector of [4 x i64] -/// \param __Z -/// A 256-bit vector of [4 x i64] -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// i := j*64 -/// tmp[127:0] := ZeroExtend64(__Y[i+51:i]) * ZeroExtend64(__Z[i+51:i]) -/// dst[i+63:i] := __X[i+63:i] + ZeroExtend64(tmp[103:52]) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_madd52hi_avx_epu64(__m256i __X, __m256i __Y, __m256i __Z) { - return (__m256i)__builtin_ia32_vpmadd52huq256((__v4di)__X, (__v4di)__Y, - (__v4di)__Z); -} - -/// Multiply packed unsigned 52-bit integers in each 64-bit element of \a __Y -/// and \a __Z to form a 104-bit intermediate result. Add the low 52-bit -/// unsigned integer from the intermediate result with the corresponding -/// unsigned 64-bit integer in \a __X, and store the results in \a dst. -/// -/// \headerfile <immintrin.h> -/// -/// \code -/// __m128i -/// _mm_madd52lo_avx_epu64 (__m128i __X, __m128i __Y, __m128i __Z) -/// \endcode -/// -/// This intrinsic corresponds to the \c VPMADD52LUQ instruction. -/// -/// \return -/// return __m128i dst. -/// \param __X -/// A 128-bit vector of [2 x i64] -/// \param __Y -/// A 128-bit vector of [2 x i64] -/// \param __Z -/// A 128-bit vector of [2 x i64] -/// -/// \code{.operation} -/// FOR j := 0 to 1 -/// i := j*64 -/// tmp[127:0] := ZeroExtend64(__Y[i+51:i]) * ZeroExtend64(__Z[i+51:i]) -/// dst[i+63:i] := __X[i+63:i] + ZeroExtend64(tmp[51:0]) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_madd52lo_avx_epu64(__m128i __X, __m128i __Y, __m128i __Z) { - return (__m128i)__builtin_ia32_vpmadd52luq128((__v2di)__X, (__v2di)__Y, - (__v2di)__Z); -} - -/// Multiply packed unsigned 52-bit integers in each 64-bit element of \a __Y -/// and \a __Z to form a 104-bit intermediate result. Add the low 52-bit -/// unsigned integer from the intermediate result with the corresponding -/// unsigned 64-bit integer in \a __X, and store the results in \a dst. -/// -/// \headerfile <immintrin.h> -/// -/// \code -/// __m256i -/// _mm256_madd52lo_avx_epu64 (__m256i __X, __m256i __Y, __m256i __Z) -/// \endcode -/// -/// This intrinsic corresponds to the \c VPMADD52LUQ instruction. -/// -/// \return -/// return __m256i dst. -/// \param __X -/// A 256-bit vector of [4 x i64] -/// \param __Y -/// A 256-bit vector of [4 x i64] -/// \param __Z -/// A 256-bit vector of [4 x i64] -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// i := j*64 -/// tmp[127:0] := ZeroExtend64(__Y[i+51:i]) * ZeroExtend64(__Z[i+51:i]) -/// dst[i+63:i] := __X[i+63:i] + ZeroExtend64(tmp[51:0]) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_madd52lo_avx_epu64(__m256i __X, __m256i __Y, __m256i __Z) { - return (__m256i)__builtin_ia32_vpmadd52luq256((__v4di)__X, (__v4di)__Y, - (__v4di)__Z); -} -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif // __AVXIFMAINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxifmaintrin.h.blob deleted file mode 100644 index 59b2a8cb138c63791dbd4c922b88017c21c1d556..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18044 zcmeHPYm8jiU7vM~RS%YN!HQ77^x{Uvj~$P9yk6{CC+RjD$Bt|#q)xPUoV|NrGjqN7 z<$Lcu)-@H#vnE))1ffk;sgHc1-VF^8p(6DIQUM_~NhO336(v-KO0-2)g?I>>kPN?b z?mcJb%sq4GmJ(5+%!l#Joc}rh_w(HK;nG_#+bge>W=hqT?^;!-x@<-3u^&`pD~hY8 zWmcomsJfc%9W_e#7>?#O3xQU;ez<OX&5CJ<mJ$2m#{Cm9l-``3skWoAYI}y$Hm&N1 zme1F!y4AEj)$mR0Xsh(r`;}*37GR8cBcLn)_T7`>if+eIm8?cpRdw|!)?!PI$srun zvGpqDr8>93v1)G5_Tmtn0+dKaz(;Aqo7!yKrj(*b&R3gGn=I}7tKa+5gw2p@JCt+O zur#t336wICxLVv27UV2+dMD;;jbLsehZ8Cvq83jS3PVNL^$i$6R|}@&jAB#weTM*M zghr1F{K)RrRL6FO!vu6%?7Oz1c5Tyw%G+LSg&a7~FdMdGse0&lqh!OeZGD2;jG%3M z4WFFKZ7D~Fpj>lcfYa?EYKINY7^*an+?M6oJwn1uf3Paj84*NH&NJ}_DRs?;XXj8w z1)kV`WH&pSGiLaL&=a`WcCBy(ERTMxV^c-%`Qyh#^0{}!e%qji%7rYTYy=g@Z|c+e z)TkwQbT^ONXd|i`rqz(U%&08lux-TZnRDkK7Em+VIQcZtjhYC97&*-F{dL<?ZC`D) zJtMY#FB%cwXdI&vfgrr1Ka>-r8t{;@6QsKDy6!a9L+Mex9^H^~+4gKWt8{6EJ$b}r zasUEPqc*^UDO;jvL`KV+ilPfPiZC4bf#JnDJafGvn3+igpmvvQ!>(pfgZb)_3!)Jd zPmoH7qX8CMqxpfGw^UQA3PHm#Rafh&ngf|7?8*Zq%T+{q*0^8<={7B-<`@w&Ng-4P zdAvp)!q0afS`r!M{D4ZFPhdDd3?K0=N|+!KDYuPYgy5Bllv3E#uY(#kSYd?H;QQR^ z6v=KxlMC|#<%}=RyW!Y@?rWhunNwp%#)!QNauSR%-VlzHG8cpmqa_PiQs`6^UM8UD zX|xeqmfCbS0vcowD=ks8i4T$>pc(7a2~J6H^v3jx0oF+pXvILhi^YhW#~va$(KQT& zki#7yXN%o%wT>g%!&FF_9J-=B5HY86d_zNxAeK5(?7+wkp3^DdMD}WEk$98<fTGuo z>>KhZLY$4(9~pwVO|DxTLcyD72{9}ovg5Q;dVOFdmLO#<$juxay=zDEV89`gI*n*D z6EK=yyNcpgk17*9PmA2D6^0&_!NJ#mSuBwg%eCTbZh@MUMG=}G%<I#wg)5fJUMi<f zU^s5uxo%#Un4fe<SF___T~;Vc!6T_6q@dtYLWE#$w6a!_5d=?XAX<c?c({~jOODk` zvgdogV~GI;N~<(2&kAiLQC>yYB5L0m4RRy#1IugD8X;pOBd+UNkr+i7-Ndlf#Imbe zU=!YMeteHuKheZB<ZWWPJcQ#OEfsbz(mIwgP2Mb~kb-StzDP`g5<5wNKPfp}N{V5P zr^GzXwX~?^CT-e+c`+vhz!q#&A~!4v9Zd3EgNQ@f)F`EvWe};yuyYgNPHOP5i-;_y zCI-gQldcZ+M{LoKQEo(_#;CL`4P{>i*>1$pM=S8u-a2;ZdoI$r+~Oz{8pI09FR3e0 zfVB9cPA7!|NpKbE5<MV@TOkOhR#ef#q)*}jDI*2lL5_1L%|A$e)<!OltzHhzNZJWf zDOF71WKk|<?AK_EBka$yghmnbLJP=I<{7sW(OmHPd-HNz7>{>Fc}ET#1*ayfop^%E z=mql&43-2rFqKj5Ccy!HJn1w^DW5691n|gmQ2b6ljtqQIxi}(5spJvlw2(@a2RQ*1 z$x#hQYl=q+AS|+h?kPh9au^w@wZ+q<glXo~6edVbRgwKwz1>h_Z8!_bQzu{>N#<I6 z?1N(FqQ-4FencipV?#tKwbIngqy!lol_0dx)CoG1o`h;zmP@3ts><7XHK{(x`Eo@z zoVa2^KNZ)CTfV%_M&aD<O{=p~soPC89lVK#C?&M3d%o>;&@g6-c_t(lPt;+|;bBF3 zCPuCk+BrFRG89V20=XF{k;2erGsQ}FP9en@YT$W1A5W|{STamgexaTxYEJc$G;d(0 zfTm7Gw5ymKo`!j;V2Ml#nN-7}@*K(02-xIF0U6>Gh$;G{3X*C@DqdQ4NeoH~Y<brW zH_!Y=IUfqE5c`qs2Ivx#?2rVMpPzj?r<@v^)+AT;HOvkS-*x@Gl7P&{=O)g^Gu1a? zCS%J(w<DumK}&*Bkf}(fJC%x>3_f7J8Aq1_yDr9D4yrnWSuTwv-XIvme#KBD5=bv? zq#ZkhOXlQa?qO>qX;>{V>+N9vgyF3qFDZjPau+rxjXYnvP@yyammeIvLZbAcWNW~A z<s$+LkzCEFxpm$2QDp~XtKn@&9=RJ@<k>-xl)j&Q;Yl%#Qj$;>SRItl<HMi4W2v@@ za9@`eT0-Kt2|r;JSYk+%Y9k4<WJolol8IqCj(Uz6lk3QgK{M0gE_BUD-(e>WN`9=1 zrS*c8WY<U9EbLD-D59w^Lax?MXG;0B8cxG$N3HxryGBbJ-nxx;QCvDL+e|xhiZ4(7 zmTBYGm+1d%XBs(yG*M@e*EdWX^+l1IEpMfY7%jH6<ffGeEa`^c$%ST6SaU4@8&k6s zFTf@b{JGGRcqoLajM)Z`7B~D*-Y@f$uD5M5iL-N<lY4D<a$}m7A%u`jbHwhhD>;*Q zjs&-olY$#3HL|=YF&}Q(0<j|*#Wtts6a+9bydDFTt6b{W3^^xoI9-zym|V7H7?q+- z>;?mxY=Dx&cVN3kVQncp(qn1hksX|2o+L4Q*u#&;3aVuxxYJTw4YW`b9{`Zj5Vd4s zoe_|j5V^F9EA(<kFh=QtiEMK{5~opug~J$1KGv45Qi6D^j(L<5U>?Qqg@rv*@(jnc zTt6-}m2-T}jD|UVRO;L;1G{G>GlPs-a+oH{4>CClea9KA7o{{pgf)q|F$wW=F+0g~ z*#h|`@VjFKF(fQ_$R=Ksh{mHZ9fv$ZAfsNo30;2L;PbRFP5=p!=|Ei2t_YWyD1??% z`xCRNVCtNvNgh+Blr^Ay8oN1RQZT4$Lh~umhrMnEJ&##2EyKb56xTKaH`2o=NK!ai z@cdYGco|??SdIl|2FXp!_1np<1Gj1^g<#(!rj63RQ2B&@DAJmi?$d%j|7^@Y0>hSN zb}1=A5+fykBLz>wRKbfZ+_TXsBW>sk70vn2(Qq-hG?bn4E5IbK(*bq`K^l{=%H*J# z0Ml-6gj7tf1S4Zw9zx@KLbO8$LZ76ux@7xP2fq2|^x?W3IqKvI6QolD&mD%H#kmc; zen8Q2#WRp;Psb%zPQ*XKa4AcUPo97D+Zf~vd`k((#j%B&IZL(_+A5yagSZ>o(gY(t z*||~hksG&-s|UhYMtWSpv}cq{n8QSd=4IxyOb_IeW7?pcT=Dr6Cn!Taux+Y_47pTS zG`@<#S}GpgjFBlu@mkGr1H<TPW?|K)kpLbmjRsPxSoG-RKUc%V%7ubCa^jOzD0%JN zaFBKF+4K?1TuLC+{O2d>#E1?ZdE#T_QH7*&gIgJg%0WBfF&60#BQ%Z|t_uvOs~2@m z`CvliEq#<Ga|bA;lqpvl)TBFt^>l!jAOCW$SSMeDaocG@AadVMgCB0MCb}gBVYLF8 zYKv1rDObon=$6OSkY}@T%Sz^KAAKa9Krk&JW&ni{l-be<WfLD4O%0TsQQ?IdG0@V? z?$VF$**W;k)!+Ws7k~0^pC=b(wxQS_?jtM(PovjPEZB<bl7BHYHO&(>$5)|X)e71R z^9MPEx-vTiS1*r#xpJs9J6oICDs9zv%-k*g&W_TBwiDZdv!Mi#q-82?5ACjp4<~9B zkP7s%)x>xW9~4V7TFSya{T(-u<W5}i8_HD;=q{Hv&rCjEQDR>q0|iA>=8h%c<e1P! zj>7Zw3UmRiN0lYhR3K-?@w+LyGDn}{RT`o1QXt6*O4p8CbP*3V;?TgyBbHusct}bs zI}0pOS|J}oY=q+3qT3UKD31Uz@sw7%d^LGKfILp1oE~X}AHWjHIptK|<%t?m3aX@h z6+<d|WcgCdCRC8}BZBUSY(+$-L{?V~<*COnEG;jesGWcEX91hUIx>p}VWEY;0`SVa zlYhAtP>!zBE*ihBly@&FFe0kQq=z7Ce0pB#DfYtrGi45WxiI9FX^@G~K716<_k^%( z-}|}pna7?`t||5Vm1Bgt<K^8p`Eu>>!hCsm>;_NI)qbXa>>2Xg6)W@~#w6V{shwYb z+CFk(u5LebNI5*dc7?B%cY|$wTR09#atb)-Uyq3U2s)g2?3qL5hc7OJurk?uVQHlf zInm9>xRy$#dj|JE{%w2i`Op60;M%dZk2w!K^uEC_{mG?AKh;_J_tKu35?+J)<M*Eb z#@9dn*BLLKtDU4?Ji&#N<<y1KFNq7MU#JVu&h$(D*&Q>tO27Dy3;#eaOr%O&SfUQ< zzXkNcEu;K4_%FpT@n8Ht?!Ps;{}zIz{+kCm)qm%HIQ<tqN&NTrfg_)K_2WPN4}-t| zbo0IIr_^r`J{kYW%kO&b%U@vryZFkhukASao_@xE5fH|*aLfLmWns0XA`7pU^dAlv zZrRP&|Ccm8s*<-m4WE4{4gYVZ;kjeS>nCbO6Y=~1QvJ#&es^|baPv3cc=b<z{Hxy@ ztS-H<OL^^uFEU5Id(YoJvg^-2ioaeOE2j||MicR<$&kV=S)QJV>!msp@u|}N?|AVK zR!kFtk7VLeeZ1Y7xR47|gLo$s7pSBsxiBOs$;HqA)a?1cIq)kF4&La0-ud3;&ol>L zI)3ff{^*-8{c7sMI|tSBzy7{{>Ww+l^y7{NmAn?CN76AxRMms<)})KUle0I-5A%pe z<fGp>NXDq>FTLg=yy%DI4O`|-yY$?1dq}lTUjIejcCG1a-p-k|n`_VRoY8a*pSSgG z@_ut0zr3iwh|h!Dy?^=V@9lYEwjepRLgdtB<SgooK)85w5y(&Lr}24H-z4uhH}T7D z{Wc-z%6F8d&))v6|0qaKA?eUz1H`kJNQJzJcy<jYhufT%sJwdLYHjC?I<I~Z?-$jp zcyFm4h<X3oft@pV@4JiDt@$miZe85M>Q-wDtK0jxu{!wAw>EyG_TeMHP>{Pq!luDJ z%iUy4984}4%ct%;1^Vkp>!<O4w*C~}^?CrU?Oz1_x9+=z)&9{wR{LlBSncb5tZwe# z#OjanzHvCcxl-D<Z&#@_v(?-B$eTN;G(N(0{3h&m=EdN}&Yl_Gdk(i=W?NUcOuF^r zmML!CzO()7*jhgKkGsGAPw$OYb?K><b7w9rox6DHiE|g#v(WN^_rb-IkyB=IX79ee zs9DK-X+Rp?!8gvo@|7>YYx9n(E<b!`>B;k#)H4^=rAwEd_z=7u0EdUCNdT1Z`*pRf zWZhqLy4pshCZjS{B@-_XBO1NkOupbxJn#n?hztiXE+bEW9XK@0Fp~qvUJxk$_lPv6 z;J+1!Ti6PA5JDjRckg?5eFxruVugy}o>TLuRzEOvYyKAAKezXDCqIAyk+v5jWkjl( z{saAGq8S*(GB<6i)XiX%D7CTvTK_M;@Zi_7@<ij2FHZoBF;d{`|Cu~NZ6eS8`}RYg z`}f_O%5!yo6_UI=e;4mB?R|;Jlht%XOJ`1^_EhR52q<Gtq6Hd}Cu{JAs$fpiU+J$> zRh;dwj;Z3#CUFv$kFs0qD|NaR?mo74@y;UI%HrgZ;FZ(>)MfQif)&y5QPDNmf;B=g zOMXMFjMsWt?~$ztFFldq)4^%7mBp{&R))3yK%JT$qSTn#Ee4BZD=VLe1T!(It168p z2;5__WbMux;gxmHL#&M8e%Pl3BjSw_d^@;Ju(C1Q5Gx~iYk7-`329+WOxwXWw*EIc CKu!Gs diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h deleted file mode 100644 index ee31569c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h +++ /dev/null @@ -1,5095 +0,0 @@ -/*===---- avxintrin.h - AVX intrinsics -------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <avxintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVXINTRIN_H -#define __AVXINTRIN_H - -typedef double __v4df __attribute__ ((__vector_size__ (32))); -typedef float __v8sf __attribute__ ((__vector_size__ (32))); -typedef long long __v4di __attribute__ ((__vector_size__ (32))); -typedef int __v8si __attribute__ ((__vector_size__ (32))); -typedef short __v16hi __attribute__ ((__vector_size__ (32))); -typedef char __v32qi __attribute__ ((__vector_size__ (32))); - -/* Unsigned types */ -typedef unsigned long long __v4du __attribute__ ((__vector_size__ (32))); -typedef unsigned int __v8su __attribute__ ((__vector_size__ (32))); -typedef unsigned short __v16hu __attribute__ ((__vector_size__ (32))); -typedef unsigned char __v32qu __attribute__ ((__vector_size__ (32))); - -/* We need an explicitly signed variant for char. Note that this shouldn't - * appear in the interface though. */ -typedef signed char __v32qs __attribute__((__vector_size__(32))); - -typedef float __m256 __attribute__ ((__vector_size__ (32), __aligned__(32))); -typedef double __m256d __attribute__((__vector_size__(32), __aligned__(32))); -typedef long long __m256i __attribute__((__vector_size__(32), __aligned__(32))); - -typedef float __m256_u __attribute__ ((__vector_size__ (32), __aligned__(1))); -typedef double __m256d_u __attribute__((__vector_size__(32), __aligned__(1))); -typedef long long __m256i_u __attribute__((__vector_size__(32), __aligned__(1))); - -#ifdef __SSE2__ -/* Both _Float16 and __bf16 require SSE2 being enabled. */ -typedef _Float16 __v16hf __attribute__((__vector_size__(32), __aligned__(32))); -typedef _Float16 __m256h __attribute__((__vector_size__(32), __aligned__(32))); -typedef _Float16 __m256h_u __attribute__((__vector_size__(32), __aligned__(1))); - -typedef __bf16 __v16bf __attribute__((__vector_size__(32), __aligned__(32))); -typedef __bf16 __m256bh __attribute__((__vector_size__(32), __aligned__(32))); -#endif - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx"), __min_vector_width__(256))) -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx"), __min_vector_width__(128))) - -/* Arithmetic */ -/// Adds two 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// \returns A 256-bit vector of [4 x double] containing the sums of both -/// operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_add_pd(__m256d __a, __m256d __b) -{ - return (__m256d)((__v4df)__a+(__v4df)__b); -} - -/// Adds two 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// \returns A 256-bit vector of [8 x float] containing the sums of both -/// operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_add_ps(__m256 __a, __m256 __b) -{ - return (__m256)((__v8sf)__a+(__v8sf)__b); -} - -/// Subtracts two 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSUBPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing the minuend. -/// \param __b -/// A 256-bit vector of [4 x double] containing the subtrahend. -/// \returns A 256-bit vector of [4 x double] containing the differences between -/// both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_sub_pd(__m256d __a, __m256d __b) -{ - return (__m256d)((__v4df)__a-(__v4df)__b); -} - -/// Subtracts two 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSUBPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing the minuend. -/// \param __b -/// A 256-bit vector of [8 x float] containing the subtrahend. -/// \returns A 256-bit vector of [8 x float] containing the differences between -/// both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_sub_ps(__m256 __a, __m256 __b) -{ - return (__m256)((__v8sf)__a-(__v8sf)__b); -} - -/// Adds the even-indexed values and subtracts the odd-indexed values of -/// two 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDSUBPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing the left source operand. -/// \param __b -/// A 256-bit vector of [4 x double] containing the right source operand. -/// \returns A 256-bit vector of [4 x double] containing the alternating sums -/// and differences between both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_addsub_pd(__m256d __a, __m256d __b) -{ - return (__m256d)__builtin_ia32_addsubpd256((__v4df)__a, (__v4df)__b); -} - -/// Adds the even-indexed values and subtracts the odd-indexed values of -/// two 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDSUBPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing the left source operand. -/// \param __b -/// A 256-bit vector of [8 x float] containing the right source operand. -/// \returns A 256-bit vector of [8 x float] containing the alternating sums and -/// differences between both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_addsub_ps(__m256 __a, __m256 __b) -{ - return (__m256)__builtin_ia32_addsubps256((__v8sf)__a, (__v8sf)__b); -} - -/// Divides two 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDIVPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing the dividend. -/// \param __b -/// A 256-bit vector of [4 x double] containing the divisor. -/// \returns A 256-bit vector of [4 x double] containing the quotients of both -/// operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_div_pd(__m256d __a, __m256d __b) -{ - return (__m256d)((__v4df)__a/(__v4df)__b); -} - -/// Divides two 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDIVPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing the dividend. -/// \param __b -/// A 256-bit vector of [8 x float] containing the divisor. -/// \returns A 256-bit vector of [8 x float] containing the quotients of both -/// operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_div_ps(__m256 __a, __m256 __b) -{ - return (__m256)((__v8sf)__a/(__v8sf)__b); -} - -/// Compares two 256-bit vectors of [4 x double] and returns the greater -/// of each pair of values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMAXPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the operands. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the operands. -/// \returns A 256-bit vector of [4 x double] containing the maximum values -/// between both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_max_pd(__m256d __a, __m256d __b) -{ - return (__m256d)__builtin_ia32_maxpd256((__v4df)__a, (__v4df)__b); -} - -/// Compares two 256-bit vectors of [8 x float] and returns the greater -/// of each pair of values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMAXPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the operands. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the operands. -/// \returns A 256-bit vector of [8 x float] containing the maximum values -/// between both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_max_ps(__m256 __a, __m256 __b) -{ - return (__m256)__builtin_ia32_maxps256((__v8sf)__a, (__v8sf)__b); -} - -/// Compares two 256-bit vectors of [4 x double] and returns the lesser -/// of each pair of values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMINPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the operands. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the operands. -/// \returns A 256-bit vector of [4 x double] containing the minimum values -/// between both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_min_pd(__m256d __a, __m256d __b) -{ - return (__m256d)__builtin_ia32_minpd256((__v4df)__a, (__v4df)__b); -} - -/// Compares two 256-bit vectors of [8 x float] and returns the lesser -/// of each pair of values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMINPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the operands. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the operands. -/// \returns A 256-bit vector of [8 x float] containing the minimum values -/// between both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_min_ps(__m256 __a, __m256 __b) -{ - return (__m256)__builtin_ia32_minps256((__v8sf)__a, (__v8sf)__b); -} - -/// Multiplies two 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMULPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the operands. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the operands. -/// \returns A 256-bit vector of [4 x double] containing the products of both -/// operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_mul_pd(__m256d __a, __m256d __b) -{ - return (__m256d)((__v4df)__a * (__v4df)__b); -} - -/// Multiplies two 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMULPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the operands. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the operands. -/// \returns A 256-bit vector of [8 x float] containing the products of both -/// operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_mul_ps(__m256 __a, __m256 __b) -{ - return (__m256)((__v8sf)__a * (__v8sf)__b); -} - -/// Calculates the square roots of the values in a 256-bit vector of -/// [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSQRTPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \returns A 256-bit vector of [4 x double] containing the square roots of the -/// values in the operand. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_sqrt_pd(__m256d __a) -{ - return (__m256d)__builtin_ia32_sqrtpd256((__v4df)__a); -} - -/// Calculates the square roots of the values in a 256-bit vector of -/// [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSQRTPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit vector of [8 x float] containing the square roots of the -/// values in the operand. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_sqrt_ps(__m256 __a) -{ - return (__m256)__builtin_ia32_sqrtps256((__v8sf)__a); -} - -/// Calculates the reciprocal square roots of the values in a 256-bit -/// vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VRSQRTPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit vector of [8 x float] containing the reciprocal square -/// roots of the values in the operand. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_rsqrt_ps(__m256 __a) -{ - return (__m256)__builtin_ia32_rsqrtps256((__v8sf)__a); -} - -/// Calculates the reciprocals of the values in a 256-bit vector of -/// [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VRCPPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit vector of [8 x float] containing the reciprocals of the -/// values in the operand. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_rcp_ps(__m256 __a) -{ - return (__m256)__builtin_ia32_rcpps256((__v8sf)__a); -} - -/// Rounds the values in a 256-bit vector of [4 x double] as specified -/// by the byte operand. The source values are rounded to integer values and -/// returned as 64-bit double-precision floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_round_pd(__m256d V, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPD </c> instruction. -/// -/// \param V -/// A 256-bit vector of [4 x double]. -/// \param M -/// An integer value that specifies the rounding operation. \n -/// Bits [7:4] are reserved. \n -/// Bit [3] is a precision exception value: \n -/// 0: A normal PE exception is used. \n -/// 1: The PE field is not updated. \n -/// Bit [2] is the rounding control source: \n -/// 0: Use bits [1:0] of \a M. \n -/// 1: Use the current MXCSR setting. \n -/// Bits [1:0] contain the rounding control definition: \n -/// 00: Nearest. \n -/// 01: Downward (toward negative infinity). \n -/// 10: Upward (toward positive infinity). \n -/// 11: Truncated. -/// \returns A 256-bit vector of [4 x double] containing the rounded values. -#define _mm256_round_pd(V, M) \ - ((__m256d)__builtin_ia32_roundpd256((__v4df)(__m256d)(V), (M))) - -/// Rounds the values stored in a 256-bit vector of [8 x float] as -/// specified by the byte operand. The source values are rounded to integer -/// values and returned as floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_round_ps(__m256 V, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPS </c> instruction. -/// -/// \param V -/// A 256-bit vector of [8 x float]. -/// \param M -/// An integer value that specifies the rounding operation. \n -/// Bits [7:4] are reserved. \n -/// Bit [3] is a precision exception value: \n -/// 0: A normal PE exception is used. \n -/// 1: The PE field is not updated. \n -/// Bit [2] is the rounding control source: \n -/// 0: Use bits [1:0] of \a M. \n -/// 1: Use the current MXCSR setting. \n -/// Bits [1:0] contain the rounding control definition: \n -/// 00: Nearest. \n -/// 01: Downward (toward negative infinity). \n -/// 10: Upward (toward positive infinity). \n -/// 11: Truncated. -/// \returns A 256-bit vector of [8 x float] containing the rounded values. -#define _mm256_round_ps(V, M) \ - ((__m256)__builtin_ia32_roundps256((__v8sf)(__m256)(V), (M))) - -/// Rounds up the values stored in a 256-bit vector of [4 x double]. The -/// source values are rounded up to integer values and returned as 64-bit -/// double-precision floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_ceil_pd(__m256d V); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPD </c> instruction. -/// -/// \param V -/// A 256-bit vector of [4 x double]. -/// \returns A 256-bit vector of [4 x double] containing the rounded up values. -#define _mm256_ceil_pd(V) _mm256_round_pd((V), _MM_FROUND_CEIL) - -/// Rounds down the values stored in a 256-bit vector of [4 x double]. -/// The source values are rounded down to integer values and returned as -/// 64-bit double-precision floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_floor_pd(__m256d V); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPD </c> instruction. -/// -/// \param V -/// A 256-bit vector of [4 x double]. -/// \returns A 256-bit vector of [4 x double] containing the rounded down -/// values. -#define _mm256_floor_pd(V) _mm256_round_pd((V), _MM_FROUND_FLOOR) - -/// Rounds up the values stored in a 256-bit vector of [8 x float]. The -/// source values are rounded up to integer values and returned as -/// floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_ceil_ps(__m256 V); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPS </c> instruction. -/// -/// \param V -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit vector of [8 x float] containing the rounded up values. -#define _mm256_ceil_ps(V) _mm256_round_ps((V), _MM_FROUND_CEIL) - -/// Rounds down the values stored in a 256-bit vector of [8 x float]. The -/// source values are rounded down to integer values and returned as -/// floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_floor_ps(__m256 V); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPS </c> instruction. -/// -/// \param V -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit vector of [8 x float] containing the rounded down values. -#define _mm256_floor_ps(V) _mm256_round_ps((V), _MM_FROUND_FLOOR) - -/* Logical */ -/// Performs a bitwise AND of two 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VANDPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// \returns A 256-bit vector of [4 x double] containing the bitwise AND of the -/// values between both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_and_pd(__m256d __a, __m256d __b) -{ - return (__m256d)((__v4du)__a & (__v4du)__b); -} - -/// Performs a bitwise AND of two 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VANDPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// \returns A 256-bit vector of [8 x float] containing the bitwise AND of the -/// values between both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_and_ps(__m256 __a, __m256 __b) -{ - return (__m256)((__v8su)__a & (__v8su)__b); -} - -/// Performs a bitwise AND of two 256-bit vectors of [4 x double], using -/// the one's complement of the values contained in the first source operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VANDNPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing the left source operand. The -/// one's complement of this value is used in the bitwise AND. -/// \param __b -/// A 256-bit vector of [4 x double] containing the right source operand. -/// \returns A 256-bit vector of [4 x double] containing the bitwise AND of the -/// values of the second operand and the one's complement of the first -/// operand. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_andnot_pd(__m256d __a, __m256d __b) -{ - return (__m256d)(~(__v4du)__a & (__v4du)__b); -} - -/// Performs a bitwise AND of two 256-bit vectors of [8 x float], using -/// the one's complement of the values contained in the first source operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VANDNPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing the left source operand. The -/// one's complement of this value is used in the bitwise AND. -/// \param __b -/// A 256-bit vector of [8 x float] containing the right source operand. -/// \returns A 256-bit vector of [8 x float] containing the bitwise AND of the -/// values of the second operand and the one's complement of the first -/// operand. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_andnot_ps(__m256 __a, __m256 __b) -{ - return (__m256)(~(__v8su)__a & (__v8su)__b); -} - -/// Performs a bitwise OR of two 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VORPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// \returns A 256-bit vector of [4 x double] containing the bitwise OR of the -/// values between both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_or_pd(__m256d __a, __m256d __b) -{ - return (__m256d)((__v4du)__a | (__v4du)__b); -} - -/// Performs a bitwise OR of two 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VORPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// \returns A 256-bit vector of [8 x float] containing the bitwise OR of the -/// values between both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_or_ps(__m256 __a, __m256 __b) -{ - return (__m256)((__v8su)__a | (__v8su)__b); -} - -/// Performs a bitwise XOR of two 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// \returns A 256-bit vector of [4 x double] containing the bitwise XOR of the -/// values between both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_xor_pd(__m256d __a, __m256d __b) -{ - return (__m256d)((__v4du)__a ^ (__v4du)__b); -} - -/// Performs a bitwise XOR of two 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// \returns A 256-bit vector of [8 x float] containing the bitwise XOR of the -/// values between both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_xor_ps(__m256 __a, __m256 __b) -{ - return (__m256)((__v8su)__a ^ (__v8su)__b); -} - -/* Horizontal arithmetic */ -/// Horizontally adds the adjacent pairs of values contained in two -/// 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VHADDPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// The horizontal sums of the values are returned in the even-indexed -/// elements of a vector of [4 x double]. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// The horizontal sums of the values are returned in the odd-indexed -/// elements of a vector of [4 x double]. -/// \returns A 256-bit vector of [4 x double] containing the horizontal sums of -/// both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_hadd_pd(__m256d __a, __m256d __b) -{ - return (__m256d)__builtin_ia32_haddpd256((__v4df)__a, (__v4df)__b); -} - -/// Horizontally adds the adjacent pairs of values contained in two -/// 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VHADDPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// The horizontal sums of the values are returned in the elements with -/// index 0, 1, 4, 5 of a vector of [8 x float]. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// The horizontal sums of the values are returned in the elements with -/// index 2, 3, 6, 7 of a vector of [8 x float]. -/// \returns A 256-bit vector of [8 x float] containing the horizontal sums of -/// both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_hadd_ps(__m256 __a, __m256 __b) -{ - return (__m256)__builtin_ia32_haddps256((__v8sf)__a, (__v8sf)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in two -/// 256-bit vectors of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VHSUBPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// The horizontal differences between the values are returned in the -/// even-indexed elements of a vector of [4 x double]. -/// \param __b -/// A 256-bit vector of [4 x double] containing one of the source operands. -/// The horizontal differences between the values are returned in the -/// odd-indexed elements of a vector of [4 x double]. -/// \returns A 256-bit vector of [4 x double] containing the horizontal -/// differences of both operands. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_hsub_pd(__m256d __a, __m256d __b) -{ - return (__m256d)__builtin_ia32_hsubpd256((__v4df)__a, (__v4df)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in two -/// 256-bit vectors of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VHSUBPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// The horizontal differences between the values are returned in the -/// elements with index 0, 1, 4, 5 of a vector of [8 x float]. -/// \param __b -/// A 256-bit vector of [8 x float] containing one of the source operands. -/// The horizontal differences between the values are returned in the -/// elements with index 2, 3, 6, 7 of a vector of [8 x float]. -/// \returns A 256-bit vector of [8 x float] containing the horizontal -/// differences of both operands. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_hsub_ps(__m256 __a, __m256 __b) -{ - return (__m256)__builtin_ia32_hsubps256((__v8sf)__a, (__v8sf)__b); -} - -/* Vector permutations */ -/// Copies the values in a 128-bit vector of [2 x double] as specified -/// by the 128-bit integer vector operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPERMILPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __c -/// A 128-bit integer vector operand specifying how the values are to be -/// copied. \n -/// Bit [1]: \n -/// 0: Bits [63:0] of the source are copied to bits [63:0] of the returned -/// vector. \n -/// 1: Bits [127:64] of the source are copied to bits [63:0] of the -/// returned vector. \n -/// Bit [65]: \n -/// 0: Bits [63:0] of the source are copied to bits [127:64] of the -/// returned vector. \n -/// 1: Bits [127:64] of the source are copied to bits [127:64] of the -/// returned vector. -/// \returns A 128-bit vector of [2 x double] containing the copied values. -static __inline __m128d __DEFAULT_FN_ATTRS128 -_mm_permutevar_pd(__m128d __a, __m128i __c) -{ - return (__m128d)__builtin_ia32_vpermilvarpd((__v2df)__a, (__v2di)__c); -} - -/// Copies the values in a 256-bit vector of [4 x double] as specified -/// by the 256-bit integer vector operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPERMILPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \param __c -/// A 256-bit integer vector operand specifying how the values are to be -/// copied. \n -/// Bit [1]: \n -/// 0: Bits [63:0] of the source are copied to bits [63:0] of the returned -/// vector. \n -/// 1: Bits [127:64] of the source are copied to bits [63:0] of the -/// returned vector. \n -/// Bit [65]: \n -/// 0: Bits [63:0] of the source are copied to bits [127:64] of the -/// returned vector. \n -/// 1: Bits [127:64] of the source are copied to bits [127:64] of the -/// returned vector. \n -/// Bit [129]: \n -/// 0: Bits [191:128] of the source are copied to bits [191:128] of the -/// returned vector. \n -/// 1: Bits [255:192] of the source are copied to bits [191:128] of the -/// returned vector. \n -/// Bit [193]: \n -/// 0: Bits [191:128] of the source are copied to bits [255:192] of the -/// returned vector. \n -/// 1: Bits [255:192] of the source are copied to bits [255:192] of the -/// returned vector. -/// \returns A 256-bit vector of [4 x double] containing the copied values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_permutevar_pd(__m256d __a, __m256i __c) -{ - return (__m256d)__builtin_ia32_vpermilvarpd256((__v4df)__a, (__v4di)__c); -} - -/// Copies the values stored in a 128-bit vector of [4 x float] as -/// specified by the 128-bit integer vector operand. -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPERMILPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __c -/// A 128-bit integer vector operand specifying how the values are to be -/// copied. \n -/// Bits [1:0]: \n -/// 00: Bits [31:0] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// Bits [33:32]: \n -/// 00: Bits [31:0] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// Bits [65:64]: \n -/// 00: Bits [31:0] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// Bits [97:96]: \n -/// 00: Bits [31:0] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [127:96] of the -/// returned vector. -/// \returns A 128-bit vector of [4 x float] containing the copied values. -static __inline __m128 __DEFAULT_FN_ATTRS128 -_mm_permutevar_ps(__m128 __a, __m128i __c) -{ - return (__m128)__builtin_ia32_vpermilvarps((__v4sf)__a, (__v4si)__c); -} - -/// Copies the values stored in a 256-bit vector of [8 x float] as -/// specified by the 256-bit integer vector operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPERMILPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \param __c -/// A 256-bit integer vector operand specifying how the values are to be -/// copied. \n -/// Bits [1:0]: \n -/// 00: Bits [31:0] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// Bits [33:32]: \n -/// 00: Bits [31:0] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// Bits [65:64]: \n -/// 00: Bits [31:0] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// Bits [97:96]: \n -/// 00: Bits [31:0] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// Bits [129:128]: \n -/// 00: Bits [159:128] of the source are copied to bits [159:128] of the -/// returned vector. \n -/// 01: Bits [191:160] of the source are copied to bits [159:128] of the -/// returned vector. \n -/// 10: Bits [223:192] of the source are copied to bits [159:128] of the -/// returned vector. \n -/// 11: Bits [255:224] of the source are copied to bits [159:128] of the -/// returned vector. \n -/// Bits [161:160]: \n -/// 00: Bits [159:128] of the source are copied to bits [191:160] of the -/// returned vector. \n -/// 01: Bits [191:160] of the source are copied to bits [191:160] of the -/// returned vector. \n -/// 10: Bits [223:192] of the source are copied to bits [191:160] of the -/// returned vector. \n -/// 11: Bits [255:224] of the source are copied to bits [191:160] of the -/// returned vector. \n -/// Bits [193:192]: \n -/// 00: Bits [159:128] of the source are copied to bits [223:192] of the -/// returned vector. \n -/// 01: Bits [191:160] of the source are copied to bits [223:192] of the -/// returned vector. \n -/// 10: Bits [223:192] of the source are copied to bits [223:192] of the -/// returned vector. \n -/// 11: Bits [255:224] of the source are copied to bits [223:192] of the -/// returned vector. \n -/// Bits [225:224]: \n -/// 00: Bits [159:128] of the source are copied to bits [255:224] of the -/// returned vector. \n -/// 01: Bits [191:160] of the source are copied to bits [255:224] of the -/// returned vector. \n -/// 10: Bits [223:192] of the source are copied to bits [255:224] of the -/// returned vector. \n -/// 11: Bits [255:224] of the source are copied to bits [255:224] of the -/// returned vector. -/// \returns A 256-bit vector of [8 x float] containing the copied values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_permutevar_ps(__m256 __a, __m256i __c) -{ - return (__m256)__builtin_ia32_vpermilvarps256((__v8sf)__a, (__v8si)__c); -} - -/// Copies the values in a 128-bit vector of [2 x double] as specified -/// by the immediate integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_permute_pd(__m128d A, const int C); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPERMILPD </c> instruction. -/// -/// \param A -/// A 128-bit vector of [2 x double]. -/// \param C -/// An immediate integer operand specifying how the values are to be -/// copied. \n -/// Bit [0]: \n -/// 0: Bits [63:0] of the source are copied to bits [63:0] of the returned -/// vector. \n -/// 1: Bits [127:64] of the source are copied to bits [63:0] of the -/// returned vector. \n -/// Bit [1]: \n -/// 0: Bits [63:0] of the source are copied to bits [127:64] of the -/// returned vector. \n -/// 1: Bits [127:64] of the source are copied to bits [127:64] of the -/// returned vector. -/// \returns A 128-bit vector of [2 x double] containing the copied values. -#define _mm_permute_pd(A, C) \ - ((__m128d)__builtin_ia32_vpermilpd((__v2df)(__m128d)(A), (int)(C))) - -/// Copies the values in a 256-bit vector of [4 x double] as specified by -/// the immediate integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_permute_pd(__m256d A, const int C); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPERMILPD </c> instruction. -/// -/// \param A -/// A 256-bit vector of [4 x double]. -/// \param C -/// An immediate integer operand specifying how the values are to be -/// copied. \n -/// Bit [0]: \n -/// 0: Bits [63:0] of the source are copied to bits [63:0] of the returned -/// vector. \n -/// 1: Bits [127:64] of the source are copied to bits [63:0] of the -/// returned vector. \n -/// Bit [1]: \n -/// 0: Bits [63:0] of the source are copied to bits [127:64] of the -/// returned vector. \n -/// 1: Bits [127:64] of the source are copied to bits [127:64] of the -/// returned vector. \n -/// Bit [2]: \n -/// 0: Bits [191:128] of the source are copied to bits [191:128] of the -/// returned vector. \n -/// 1: Bits [255:192] of the source are copied to bits [191:128] of the -/// returned vector. \n -/// Bit [3]: \n -/// 0: Bits [191:128] of the source are copied to bits [255:192] of the -/// returned vector. \n -/// 1: Bits [255:192] of the source are copied to bits [255:192] of the -/// returned vector. -/// \returns A 256-bit vector of [4 x double] containing the copied values. -#define _mm256_permute_pd(A, C) \ - ((__m256d)__builtin_ia32_vpermilpd256((__v4df)(__m256d)(A), (int)(C))) - -/// Copies the values in a 128-bit vector of [4 x float] as specified by -/// the immediate integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_permute_ps(__m128 A, const int C); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPERMILPS </c> instruction. -/// -/// \param A -/// A 128-bit vector of [4 x float]. -/// \param C -/// An immediate integer operand specifying how the values are to be -/// copied. \n -/// Bits [1:0]: \n -/// 00: Bits [31:0] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// Bits [3:2]: \n -/// 00: Bits [31:0] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// Bits [5:4]: \n -/// 00: Bits [31:0] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// Bits [7:6]: \n -/// 00: Bits [31:0] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [127:96] of the -/// returned vector. -/// \returns A 128-bit vector of [4 x float] containing the copied values. -#define _mm_permute_ps(A, C) \ - ((__m128)__builtin_ia32_vpermilps((__v4sf)(__m128)(A), (int)(C))) - -/// Copies the values in a 256-bit vector of [8 x float] as specified by -/// the immediate integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_permute_ps(__m256 A, const int C); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPERMILPS </c> instruction. -/// -/// \param A -/// A 256-bit vector of [8 x float]. -/// \param C -/// An immediate integer operand specifying how the values are to be -/// copied. \n -/// Bits [1:0]: \n -/// 00: Bits [31:0] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [31:0] of the -/// returned vector. \n -/// Bits [3:2]: \n -/// 00: Bits [31:0] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [63:32] of the -/// returned vector. \n -/// Bits [5:4]: \n -/// 00: Bits [31:0] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [95:64] of the -/// returned vector. \n -/// Bits [7:6]: \n -/// 00: Bits [31:0] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 01: Bits [63:32] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 10: Bits [95:64] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// 11: Bits [127:96] of the source are copied to bits [127:96] of the -/// returned vector. \n -/// Bits [1:0]: \n -/// 00: Bits [159:128] of the source are copied to bits [159:128] of the -/// returned vector. \n -/// 01: Bits [191:160] of the source are copied to bits [159:128] of the -/// returned vector. \n -/// 10: Bits [223:192] of the source are copied to bits [159:128] of the -/// returned vector. \n -/// 11: Bits [255:224] of the source are copied to bits [159:128] of the -/// returned vector. \n -/// Bits [3:2]: \n -/// 00: Bits [159:128] of the source are copied to bits [191:160] of the -/// returned vector. \n -/// 01: Bits [191:160] of the source are copied to bits [191:160] of the -/// returned vector. \n -/// 10: Bits [223:192] of the source are copied to bits [191:160] of the -/// returned vector. \n -/// 11: Bits [255:224] of the source are copied to bits [191:160] of the -/// returned vector. \n -/// Bits [5:4]: \n -/// 00: Bits [159:128] of the source are copied to bits [223:192] of the -/// returned vector. \n -/// 01: Bits [191:160] of the source are copied to bits [223:192] of the -/// returned vector. \n -/// 10: Bits [223:192] of the source are copied to bits [223:192] of the -/// returned vector. \n -/// 11: Bits [255:224] of the source are copied to bits [223:192] of the -/// returned vector. \n -/// Bits [7:6]: \n -/// 00: Bits [159:128] of the source are copied to bits [255:224] of the -/// returned vector. \n -/// 01: Bits [191:160] of the source are copied to bits [255:224] of the -/// returned vector. \n -/// 10: Bits [223:192] of the source are copied to bits [255:224] of the -/// returned vector. \n -/// 11: Bits [255:224] of the source are copied to bits [255:224] of the -/// returned vector. -/// \returns A 256-bit vector of [8 x float] containing the copied values. -#define _mm256_permute_ps(A, C) \ - ((__m256)__builtin_ia32_vpermilps256((__v8sf)(__m256)(A), (int)(C))) - -/// Permutes 128-bit data values stored in two 256-bit vectors of -/// [4 x double], as specified by the immediate integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_permute2f128_pd(__m256d V1, __m256d V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPERM2F128 </c> instruction. -/// -/// \param V1 -/// A 256-bit vector of [4 x double]. -/// \param V2 -/// A 256-bit vector of [4 x double. -/// \param M -/// An immediate integer operand specifying how the values are to be -/// permuted. \n -/// Bits [1:0]: \n -/// 00: Bits [127:0] of operand \a V1 are copied to bits [127:0] of the -/// destination. \n -/// 01: Bits [255:128] of operand \a V1 are copied to bits [127:0] of the -/// destination. \n -/// 10: Bits [127:0] of operand \a V2 are copied to bits [127:0] of the -/// destination. \n -/// 11: Bits [255:128] of operand \a V2 are copied to bits [127:0] of the -/// destination. \n -/// Bits [5:4]: \n -/// 00: Bits [127:0] of operand \a V1 are copied to bits [255:128] of the -/// destination. \n -/// 01: Bits [255:128] of operand \a V1 are copied to bits [255:128] of the -/// destination. \n -/// 10: Bits [127:0] of operand \a V2 are copied to bits [255:128] of the -/// destination. \n -/// 11: Bits [255:128] of operand \a V2 are copied to bits [255:128] of the -/// destination. -/// \returns A 256-bit vector of [4 x double] containing the copied values. -#define _mm256_permute2f128_pd(V1, V2, M) \ - ((__m256d)__builtin_ia32_vperm2f128_pd256((__v4df)(__m256d)(V1), \ - (__v4df)(__m256d)(V2), (int)(M))) - -/// Permutes 128-bit data values stored in two 256-bit vectors of -/// [8 x float], as specified by the immediate integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_permute2f128_ps(__m256 V1, __m256 V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPERM2F128 </c> instruction. -/// -/// \param V1 -/// A 256-bit vector of [8 x float]. -/// \param V2 -/// A 256-bit vector of [8 x float]. -/// \param M -/// An immediate integer operand specifying how the values are to be -/// permuted. \n -/// Bits [1:0]: \n -/// 00: Bits [127:0] of operand \a V1 are copied to bits [127:0] of the -/// destination. \n -/// 01: Bits [255:128] of operand \a V1 are copied to bits [127:0] of the -/// destination. \n -/// 10: Bits [127:0] of operand \a V2 are copied to bits [127:0] of the -/// destination. \n -/// 11: Bits [255:128] of operand \a V2 are copied to bits [127:0] of the -/// destination. \n -/// Bits [5:4]: \n -/// 00: Bits [127:0] of operand \a V1 are copied to bits [255:128] of the -/// destination. \n -/// 01: Bits [255:128] of operand \a V1 are copied to bits [255:128] of the -/// destination. \n -/// 10: Bits [127:0] of operand \a V2 are copied to bits [255:128] of the -/// destination. \n -/// 11: Bits [255:128] of operand \a V2 are copied to bits [255:128] of the -/// destination. -/// \returns A 256-bit vector of [8 x float] containing the copied values. -#define _mm256_permute2f128_ps(V1, V2, M) \ - ((__m256)__builtin_ia32_vperm2f128_ps256((__v8sf)(__m256)(V1), \ - (__v8sf)(__m256)(V2), (int)(M))) - -/// Permutes 128-bit data values stored in two 256-bit integer vectors, -/// as specified by the immediate integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256i _mm256_permute2f128_si256(__m256i V1, __m256i V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPERM2F128 </c> instruction. -/// -/// \param V1 -/// A 256-bit integer vector. -/// \param V2 -/// A 256-bit integer vector. -/// \param M -/// An immediate integer operand specifying how the values are to be copied. -/// Bits [1:0]: \n -/// 00: Bits [127:0] of operand \a V1 are copied to bits [127:0] of the -/// destination. \n -/// 01: Bits [255:128] of operand \a V1 are copied to bits [127:0] of the -/// destination. \n -/// 10: Bits [127:0] of operand \a V2 are copied to bits [127:0] of the -/// destination. \n -/// 11: Bits [255:128] of operand \a V2 are copied to bits [127:0] of the -/// destination. \n -/// Bits [5:4]: \n -/// 00: Bits [127:0] of operand \a V1 are copied to bits [255:128] of the -/// destination. \n -/// 01: Bits [255:128] of operand \a V1 are copied to bits [255:128] of the -/// destination. \n -/// 10: Bits [127:0] of operand \a V2 are copied to bits [255:128] of the -/// destination. \n -/// 11: Bits [255:128] of operand \a V2 are copied to bits [255:128] of the -/// destination. -/// \returns A 256-bit integer vector containing the copied values. -#define _mm256_permute2f128_si256(V1, V2, M) \ - ((__m256i)__builtin_ia32_vperm2f128_si256((__v8si)(__m256i)(V1), \ - (__v8si)(__m256i)(V2), (int)(M))) - -/* Vector Blend */ -/// Merges 64-bit double-precision data values stored in either of the -/// two 256-bit vectors of [4 x double], as specified by the immediate -/// integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_blend_pd(__m256d V1, __m256d V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VBLENDPD </c> instruction. -/// -/// \param V1 -/// A 256-bit vector of [4 x double]. -/// \param V2 -/// A 256-bit vector of [4 x double]. -/// \param M -/// An immediate integer operand, with mask bits [3:0] specifying how the -/// values are to be copied. The position of the mask bit corresponds to the -/// index of a copied value. When a mask bit is 0, the corresponding 64-bit -/// element in operand \a V1 is copied to the same position in the -/// destination. When a mask bit is 1, the corresponding 64-bit element in -/// operand \a V2 is copied to the same position in the destination. -/// \returns A 256-bit vector of [4 x double] containing the copied values. -#define _mm256_blend_pd(V1, V2, M) \ - ((__m256d)__builtin_ia32_blendpd256((__v4df)(__m256d)(V1), \ - (__v4df)(__m256d)(V2), (int)(M))) - -/// Merges 32-bit single-precision data values stored in either of the -/// two 256-bit vectors of [8 x float], as specified by the immediate -/// integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_blend_ps(__m256 V1, __m256 V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VBLENDPS </c> instruction. -/// -/// \param V1 -/// A 256-bit vector of [8 x float]. -/// \param V2 -/// A 256-bit vector of [8 x float]. -/// \param M -/// An immediate integer operand, with mask bits [7:0] specifying how the -/// values are to be copied. The position of the mask bit corresponds to the -/// index of a copied value. When a mask bit is 0, the corresponding 32-bit -/// element in operand \a V1 is copied to the same position in the -/// destination. When a mask bit is 1, the corresponding 32-bit element in -/// operand \a V2 is copied to the same position in the destination. -/// \returns A 256-bit vector of [8 x float] containing the copied values. -#define _mm256_blend_ps(V1, V2, M) \ - ((__m256)__builtin_ia32_blendps256((__v8sf)(__m256)(V1), \ - (__v8sf)(__m256)(V2), (int)(M))) - -/// Merges 64-bit double-precision data values stored in either of the -/// two 256-bit vectors of [4 x double], as specified by the 256-bit vector -/// operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBLENDVPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \param __b -/// A 256-bit vector of [4 x double]. -/// \param __c -/// A 256-bit vector operand, with mask bits 255, 191, 127, and 63 specifying -/// how the values are to be copied. The position of the mask bit corresponds -/// to the most significant bit of a copied value. When a mask bit is 0, the -/// corresponding 64-bit element in operand \a __a is copied to the same -/// position in the destination. When a mask bit is 1, the corresponding -/// 64-bit element in operand \a __b is copied to the same position in the -/// destination. -/// \returns A 256-bit vector of [4 x double] containing the copied values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_blendv_pd(__m256d __a, __m256d __b, __m256d __c) -{ - return (__m256d)__builtin_ia32_blendvpd256( - (__v4df)__a, (__v4df)__b, (__v4df)__c); -} - -/// Merges 32-bit single-precision data values stored in either of the -/// two 256-bit vectors of [8 x float], as specified by the 256-bit vector -/// operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBLENDVPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \param __b -/// A 256-bit vector of [8 x float]. -/// \param __c -/// A 256-bit vector operand, with mask bits 255, 223, 191, 159, 127, 95, 63, -/// and 31 specifying how the values are to be copied. The position of the -/// mask bit corresponds to the most significant bit of a copied value. When -/// a mask bit is 0, the corresponding 32-bit element in operand \a __a is -/// copied to the same position in the destination. When a mask bit is 1, the -/// corresponding 32-bit element in operand \a __b is copied to the same -/// position in the destination. -/// \returns A 256-bit vector of [8 x float] containing the copied values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c) -{ - return (__m256)__builtin_ia32_blendvps256( - (__v8sf)__a, (__v8sf)__b, (__v8sf)__c); -} - -/* Vector Dot Product */ -/// Computes two dot products in parallel, using the lower and upper -/// halves of two [8 x float] vectors as input to the two computations, and -/// returning the two dot products in the lower and upper halves of the -/// [8 x float] result. -/// -/// The immediate integer operand controls which input elements will -/// contribute to the dot product, and where the final results are returned. -/// In general, for each dot product, the four corresponding elements of the -/// input vectors are multiplied; the first two and second two products are -/// summed, then the two sums are added to form the final result. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_dp_ps(__m256 V1, __m256 V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VDPPS </c> instruction. -/// -/// \param V1 -/// A vector of [8 x float] values, treated as two [4 x float] vectors. -/// \param V2 -/// A vector of [8 x float] values, treated as two [4 x float] vectors. -/// \param M -/// An immediate integer argument. Bits [7:4] determine which elements of -/// the input vectors are used, with bit [4] corresponding to the lowest -/// element and bit [7] corresponding to the highest element of each [4 x -/// float] subvector. If a bit is set, the corresponding elements from the -/// two input vectors are used as an input for dot product; otherwise that -/// input is treated as zero. Bits [3:0] determine which elements of the -/// result will receive a copy of the final dot product, with bit [0] -/// corresponding to the lowest element and bit [3] corresponding to the -/// highest element of each [4 x float] subvector. If a bit is set, the dot -/// product is returned in the corresponding element; otherwise that element -/// is set to zero. The bitmask is applied in the same way to each of the -/// two parallel dot product computations. -/// \returns A 256-bit vector of [8 x float] containing the two dot products. -#define _mm256_dp_ps(V1, V2, M) \ - ((__m256)__builtin_ia32_dpps256((__v8sf)(__m256)(V1), \ - (__v8sf)(__m256)(V2), (M))) - -/* Vector shuffle */ -/// Selects 8 float values from the 256-bit operands of [8 x float], as -/// specified by the immediate value operand. -/// -/// The four selected elements in each operand are copied to the destination -/// according to the bits specified in the immediate operand. The selected -/// elements from the first 256-bit operand are copied to bits [63:0] and -/// bits [191:128] of the destination, and the selected elements from the -/// second 256-bit operand are copied to bits [127:64] and bits [255:192] of -/// the destination. For example, if bits [7:0] of the immediate operand -/// contain a value of 0xFF, the 256-bit destination vector would contain the -/// following values: b[7], b[7], a[7], a[7], b[3], b[3], a[3], a[3]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_shuffle_ps(__m256 a, __m256 b, const int mask); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VSHUFPS </c> instruction. -/// -/// \param a -/// A 256-bit vector of [8 x float]. The four selected elements in this -/// operand are copied to bits [63:0] and bits [191:128] in the destination, -/// according to the bits specified in the immediate operand. -/// \param b -/// A 256-bit vector of [8 x float]. The four selected elements in this -/// operand are copied to bits [127:64] and bits [255:192] in the -/// destination, according to the bits specified in the immediate operand. -/// \param mask -/// An immediate value containing an 8-bit value specifying which elements to -/// copy from \a a and \a b \n. -/// Bits [3:0] specify the values copied from operand \a a. \n -/// Bits [7:4] specify the values copied from operand \a b. \n -/// The destinations within the 256-bit destination are assigned values as -/// follows, according to the bit value assignments described below: \n -/// Bits [1:0] are used to assign values to bits [31:0] and [159:128] in the -/// destination. \n -/// Bits [3:2] are used to assign values to bits [63:32] and [191:160] in the -/// destination. \n -/// Bits [5:4] are used to assign values to bits [95:64] and [223:192] in the -/// destination. \n -/// Bits [7:6] are used to assign values to bits [127:96] and [255:224] in -/// the destination. \n -/// Bit value assignments: \n -/// 00: Bits [31:0] and [159:128] are copied from the selected operand. \n -/// 01: Bits [63:32] and [191:160] are copied from the selected operand. \n -/// 10: Bits [95:64] and [223:192] are copied from the selected operand. \n -/// 11: Bits [127:96] and [255:224] are copied from the selected operand. \n -/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. -/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form -/// <c>[b6, b4, b2, b0]</c>. -/// \returns A 256-bit vector of [8 x float] containing the shuffled values. -#define _mm256_shuffle_ps(a, b, mask) \ - ((__m256)__builtin_ia32_shufps256((__v8sf)(__m256)(a), \ - (__v8sf)(__m256)(b), (int)(mask))) - -/// Selects four double-precision values from the 256-bit operands of -/// [4 x double], as specified by the immediate value operand. -/// -/// The selected elements from the first 256-bit operand are copied to bits -/// [63:0] and bits [191:128] in the destination, and the selected elements -/// from the second 256-bit operand are copied to bits [127:64] and bits -/// [255:192] in the destination. For example, if bits [3:0] of the immediate -/// operand contain a value of 0xF, the 256-bit destination vector would -/// contain the following values: b[3], a[3], b[1], a[1]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_shuffle_pd(__m256d a, __m256d b, const int mask); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VSHUFPD </c> instruction. -/// -/// \param a -/// A 256-bit vector of [4 x double]. -/// \param b -/// A 256-bit vector of [4 x double]. -/// \param mask -/// An immediate value containing 8-bit values specifying which elements to -/// copy from \a a and \a b: \n -/// Bit [0]=0: Bits [63:0] are copied from \a a to bits [63:0] of the -/// destination. \n -/// Bit [0]=1: Bits [127:64] are copied from \a a to bits [63:0] of the -/// destination. \n -/// Bit [1]=0: Bits [63:0] are copied from \a b to bits [127:64] of the -/// destination. \n -/// Bit [1]=1: Bits [127:64] are copied from \a b to bits [127:64] of the -/// destination. \n -/// Bit [2]=0: Bits [191:128] are copied from \a a to bits [191:128] of the -/// destination. \n -/// Bit [2]=1: Bits [255:192] are copied from \a a to bits [191:128] of the -/// destination. \n -/// Bit [3]=0: Bits [191:128] are copied from \a b to bits [255:192] of the -/// destination. \n -/// Bit [3]=1: Bits [255:192] are copied from \a b to bits [255:192] of the -/// destination. -/// \returns A 256-bit vector of [4 x double] containing the shuffled values. -#define _mm256_shuffle_pd(a, b, mask) \ - ((__m256d)__builtin_ia32_shufpd256((__v4df)(__m256d)(a), \ - (__v4df)(__m256d)(b), (int)(mask))) - -/* Compare */ -#define _CMP_EQ_OQ 0x00 /* Equal (ordered, non-signaling) */ -#define _CMP_LT_OS 0x01 /* Less-than (ordered, signaling) */ -#define _CMP_LE_OS 0x02 /* Less-than-or-equal (ordered, signaling) */ -#define _CMP_UNORD_Q 0x03 /* Unordered (non-signaling) */ -#define _CMP_NEQ_UQ 0x04 /* Not-equal (unordered, non-signaling) */ -#define _CMP_NLT_US 0x05 /* Not-less-than (unordered, signaling) */ -#define _CMP_NLE_US 0x06 /* Not-less-than-or-equal (unordered, signaling) */ -#define _CMP_ORD_Q 0x07 /* Ordered (non-signaling) */ -#define _CMP_EQ_UQ 0x08 /* Equal (unordered, non-signaling) */ -#define _CMP_NGE_US 0x09 /* Not-greater-than-or-equal (unordered, signaling) */ -#define _CMP_NGT_US 0x0a /* Not-greater-than (unordered, signaling) */ -#define _CMP_FALSE_OQ 0x0b /* False (ordered, non-signaling) */ -#define _CMP_NEQ_OQ 0x0c /* Not-equal (ordered, non-signaling) */ -#define _CMP_GE_OS 0x0d /* Greater-than-or-equal (ordered, signaling) */ -#define _CMP_GT_OS 0x0e /* Greater-than (ordered, signaling) */ -#define _CMP_TRUE_UQ 0x0f /* True (unordered, non-signaling) */ -#define _CMP_EQ_OS 0x10 /* Equal (ordered, signaling) */ -#define _CMP_LT_OQ 0x11 /* Less-than (ordered, non-signaling) */ -#define _CMP_LE_OQ 0x12 /* Less-than-or-equal (ordered, non-signaling) */ -#define _CMP_UNORD_S 0x13 /* Unordered (signaling) */ -#define _CMP_NEQ_US 0x14 /* Not-equal (unordered, signaling) */ -#define _CMP_NLT_UQ 0x15 /* Not-less-than (unordered, non-signaling) */ -#define _CMP_NLE_UQ 0x16 /* Not-less-than-or-equal (unordered, non-signaling) */ -#define _CMP_ORD_S 0x17 /* Ordered (signaling) */ -#define _CMP_EQ_US 0x18 /* Equal (unordered, signaling) */ -#define _CMP_NGE_UQ 0x19 /* Not-greater-than-or-equal (unordered, non-signaling) */ -#define _CMP_NGT_UQ 0x1a /* Not-greater-than (unordered, non-signaling) */ -#define _CMP_FALSE_OS 0x1b /* False (ordered, signaling) */ -#define _CMP_NEQ_OS 0x1c /* Not-equal (ordered, signaling) */ -#define _CMP_GE_OQ 0x1d /* Greater-than-or-equal (ordered, non-signaling) */ -#define _CMP_GT_OQ 0x1e /* Greater-than (ordered, non-signaling) */ -#define _CMP_TRUE_US 0x1f /* True (unordered, signaling) */ - -/// Compares each of the corresponding double-precision values of two -/// 128-bit vectors of [2 x double], using the operation specified by the -/// immediate integer operand. -/// -/// Returns a [2 x double] vector consisting of two doubles corresponding to -/// the two comparison results: zero if the comparison is false, and all 1's -/// if the comparison is true. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_cmp_pd(__m128d a, __m128d b, const int c); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCMPPD </c> instruction. -/// -/// \param a -/// A 128-bit vector of [2 x double]. -/// \param b -/// A 128-bit vector of [2 x double]. -/// \param c -/// An immediate integer operand, with bits [4:0] specifying which comparison -/// operation to use: \n -/// 0x00: Equal (ordered, non-signaling) \n -/// 0x01: Less-than (ordered, signaling) \n -/// 0x02: Less-than-or-equal (ordered, signaling) \n -/// 0x03: Unordered (non-signaling) \n -/// 0x04: Not-equal (unordered, non-signaling) \n -/// 0x05: Not-less-than (unordered, signaling) \n -/// 0x06: Not-less-than-or-equal (unordered, signaling) \n -/// 0x07: Ordered (non-signaling) \n -/// 0x08: Equal (unordered, non-signaling) \n -/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n -/// 0x0A: Not-greater-than (unordered, signaling) \n -/// 0x0B: False (ordered, non-signaling) \n -/// 0x0C: Not-equal (ordered, non-signaling) \n -/// 0x0D: Greater-than-or-equal (ordered, signaling) \n -/// 0x0E: Greater-than (ordered, signaling) \n -/// 0x0F: True (unordered, non-signaling) \n -/// 0x10: Equal (ordered, signaling) \n -/// 0x11: Less-than (ordered, non-signaling) \n -/// 0x12: Less-than-or-equal (ordered, non-signaling) \n -/// 0x13: Unordered (signaling) \n -/// 0x14: Not-equal (unordered, signaling) \n -/// 0x15: Not-less-than (unordered, non-signaling) \n -/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n -/// 0x17: Ordered (signaling) \n -/// 0x18: Equal (unordered, signaling) \n -/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n -/// 0x1A: Not-greater-than (unordered, non-signaling) \n -/// 0x1B: False (ordered, signaling) \n -/// 0x1C: Not-equal (ordered, signaling) \n -/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n -/// 0x1E: Greater-than (ordered, non-signaling) \n -/// 0x1F: True (unordered, signaling) -/// \returns A 128-bit vector of [2 x double] containing the comparison results. -#define _mm_cmp_pd(a, b, c) \ - ((__m128d)__builtin_ia32_cmppd((__v2df)(__m128d)(a), \ - (__v2df)(__m128d)(b), (c))) - -/// Compares each of the corresponding values of two 128-bit vectors of -/// [4 x float], using the operation specified by the immediate integer -/// operand. -/// -/// Returns a [4 x float] vector consisting of four floats corresponding to -/// the four comparison results: zero if the comparison is false, and all 1's -/// if the comparison is true. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_cmp_ps(__m128 a, __m128 b, const int c); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCMPPS </c> instruction. -/// -/// \param a -/// A 128-bit vector of [4 x float]. -/// \param b -/// A 128-bit vector of [4 x float]. -/// \param c -/// An immediate integer operand, with bits [4:0] specifying which comparison -/// operation to use: \n -/// 0x00: Equal (ordered, non-signaling) \n -/// 0x01: Less-than (ordered, signaling) \n -/// 0x02: Less-than-or-equal (ordered, signaling) \n -/// 0x03: Unordered (non-signaling) \n -/// 0x04: Not-equal (unordered, non-signaling) \n -/// 0x05: Not-less-than (unordered, signaling) \n -/// 0x06: Not-less-than-or-equal (unordered, signaling) \n -/// 0x07: Ordered (non-signaling) \n -/// 0x08: Equal (unordered, non-signaling) \n -/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n -/// 0x0A: Not-greater-than (unordered, signaling) \n -/// 0x0B: False (ordered, non-signaling) \n -/// 0x0C: Not-equal (ordered, non-signaling) \n -/// 0x0D: Greater-than-or-equal (ordered, signaling) \n -/// 0x0E: Greater-than (ordered, signaling) \n -/// 0x0F: True (unordered, non-signaling) \n -/// 0x10: Equal (ordered, signaling) \n -/// 0x11: Less-than (ordered, non-signaling) \n -/// 0x12: Less-than-or-equal (ordered, non-signaling) \n -/// 0x13: Unordered (signaling) \n -/// 0x14: Not-equal (unordered, signaling) \n -/// 0x15: Not-less-than (unordered, non-signaling) \n -/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n -/// 0x17: Ordered (signaling) \n -/// 0x18: Equal (unordered, signaling) \n -/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n -/// 0x1A: Not-greater-than (unordered, non-signaling) \n -/// 0x1B: False (ordered, signaling) \n -/// 0x1C: Not-equal (ordered, signaling) \n -/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n -/// 0x1E: Greater-than (ordered, non-signaling) \n -/// 0x1F: True (unordered, signaling) -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -#define _mm_cmp_ps(a, b, c) \ - ((__m128)__builtin_ia32_cmpps((__v4sf)(__m128)(a), \ - (__v4sf)(__m128)(b), (c))) - -/// Compares each of the corresponding double-precision values of two -/// 256-bit vectors of [4 x double], using the operation specified by the -/// immediate integer operand. -/// -/// Returns a [4 x double] vector consisting of four doubles corresponding to -/// the four comparison results: zero if the comparison is false, and all 1's -/// if the comparison is true. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_cmp_pd(__m256d a, __m256d b, const int c); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCMPPD </c> instruction. -/// -/// \param a -/// A 256-bit vector of [4 x double]. -/// \param b -/// A 256-bit vector of [4 x double]. -/// \param c -/// An immediate integer operand, with bits [4:0] specifying which comparison -/// operation to use: \n -/// 0x00: Equal (ordered, non-signaling) \n -/// 0x01: Less-than (ordered, signaling) \n -/// 0x02: Less-than-or-equal (ordered, signaling) \n -/// 0x03: Unordered (non-signaling) \n -/// 0x04: Not-equal (unordered, non-signaling) \n -/// 0x05: Not-less-than (unordered, signaling) \n -/// 0x06: Not-less-than-or-equal (unordered, signaling) \n -/// 0x07: Ordered (non-signaling) \n -/// 0x08: Equal (unordered, non-signaling) \n -/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n -/// 0x0A: Not-greater-than (unordered, signaling) \n -/// 0x0B: False (ordered, non-signaling) \n -/// 0x0C: Not-equal (ordered, non-signaling) \n -/// 0x0D: Greater-than-or-equal (ordered, signaling) \n -/// 0x0E: Greater-than (ordered, signaling) \n -/// 0x0F: True (unordered, non-signaling) \n -/// 0x10: Equal (ordered, signaling) \n -/// 0x11: Less-than (ordered, non-signaling) \n -/// 0x12: Less-than-or-equal (ordered, non-signaling) \n -/// 0x13: Unordered (signaling) \n -/// 0x14: Not-equal (unordered, signaling) \n -/// 0x15: Not-less-than (unordered, non-signaling) \n -/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n -/// 0x17: Ordered (signaling) \n -/// 0x18: Equal (unordered, signaling) \n -/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n -/// 0x1A: Not-greater-than (unordered, non-signaling) \n -/// 0x1B: False (ordered, signaling) \n -/// 0x1C: Not-equal (ordered, signaling) \n -/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n -/// 0x1E: Greater-than (ordered, non-signaling) \n -/// 0x1F: True (unordered, signaling) -/// \returns A 256-bit vector of [4 x double] containing the comparison results. -#define _mm256_cmp_pd(a, b, c) \ - ((__m256d)__builtin_ia32_cmppd256((__v4df)(__m256d)(a), \ - (__v4df)(__m256d)(b), (c))) - -/// Compares each of the corresponding values of two 256-bit vectors of -/// [8 x float], using the operation specified by the immediate integer -/// operand. -/// -/// Returns a [8 x float] vector consisting of eight floats corresponding to -/// the eight comparison results: zero if the comparison is false, and all -/// 1's if the comparison is true. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_cmp_ps(__m256 a, __m256 b, const int c); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCMPPS </c> instruction. -/// -/// \param a -/// A 256-bit vector of [8 x float]. -/// \param b -/// A 256-bit vector of [8 x float]. -/// \param c -/// An immediate integer operand, with bits [4:0] specifying which comparison -/// operation to use: \n -/// 0x00: Equal (ordered, non-signaling) \n -/// 0x01: Less-than (ordered, signaling) \n -/// 0x02: Less-than-or-equal (ordered, signaling) \n -/// 0x03: Unordered (non-signaling) \n -/// 0x04: Not-equal (unordered, non-signaling) \n -/// 0x05: Not-less-than (unordered, signaling) \n -/// 0x06: Not-less-than-or-equal (unordered, signaling) \n -/// 0x07: Ordered (non-signaling) \n -/// 0x08: Equal (unordered, non-signaling) \n -/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n -/// 0x0A: Not-greater-than (unordered, signaling) \n -/// 0x0B: False (ordered, non-signaling) \n -/// 0x0C: Not-equal (ordered, non-signaling) \n -/// 0x0D: Greater-than-or-equal (ordered, signaling) \n -/// 0x0E: Greater-than (ordered, signaling) \n -/// 0x0F: True (unordered, non-signaling) \n -/// 0x10: Equal (ordered, signaling) \n -/// 0x11: Less-than (ordered, non-signaling) \n -/// 0x12: Less-than-or-equal (ordered, non-signaling) \n -/// 0x13: Unordered (signaling) \n -/// 0x14: Not-equal (unordered, signaling) \n -/// 0x15: Not-less-than (unordered, non-signaling) \n -/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n -/// 0x17: Ordered (signaling) \n -/// 0x18: Equal (unordered, signaling) \n -/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n -/// 0x1A: Not-greater-than (unordered, non-signaling) \n -/// 0x1B: False (ordered, signaling) \n -/// 0x1C: Not-equal (ordered, signaling) \n -/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n -/// 0x1E: Greater-than (ordered, non-signaling) \n -/// 0x1F: True (unordered, signaling) -/// \returns A 256-bit vector of [8 x float] containing the comparison results. -#define _mm256_cmp_ps(a, b, c) \ - ((__m256)__builtin_ia32_cmpps256((__v8sf)(__m256)(a), \ - (__v8sf)(__m256)(b), (c))) - -/// Compares each of the corresponding scalar double-precision values of -/// two 128-bit vectors of [2 x double], using the operation specified by the -/// immediate integer operand. -/// -/// If the result is true, all 64 bits of the destination vector are set; -/// otherwise they are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_cmp_sd(__m128d a, __m128d b, const int c); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCMPSD </c> instruction. -/// -/// \param a -/// A 128-bit vector of [2 x double]. -/// \param b -/// A 128-bit vector of [2 x double]. -/// \param c -/// An immediate integer operand, with bits [4:0] specifying which comparison -/// operation to use: \n -/// 0x00: Equal (ordered, non-signaling) \n -/// 0x01: Less-than (ordered, signaling) \n -/// 0x02: Less-than-or-equal (ordered, signaling) \n -/// 0x03: Unordered (non-signaling) \n -/// 0x04: Not-equal (unordered, non-signaling) \n -/// 0x05: Not-less-than (unordered, signaling) \n -/// 0x06: Not-less-than-or-equal (unordered, signaling) \n -/// 0x07: Ordered (non-signaling) \n -/// 0x08: Equal (unordered, non-signaling) \n -/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n -/// 0x0A: Not-greater-than (unordered, signaling) \n -/// 0x0B: False (ordered, non-signaling) \n -/// 0x0C: Not-equal (ordered, non-signaling) \n -/// 0x0D: Greater-than-or-equal (ordered, signaling) \n -/// 0x0E: Greater-than (ordered, signaling) \n -/// 0x0F: True (unordered, non-signaling) \n -/// 0x10: Equal (ordered, signaling) \n -/// 0x11: Less-than (ordered, non-signaling) \n -/// 0x12: Less-than-or-equal (ordered, non-signaling) \n -/// 0x13: Unordered (signaling) \n -/// 0x14: Not-equal (unordered, signaling) \n -/// 0x15: Not-less-than (unordered, non-signaling) \n -/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n -/// 0x17: Ordered (signaling) \n -/// 0x18: Equal (unordered, signaling) \n -/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n -/// 0x1A: Not-greater-than (unordered, non-signaling) \n -/// 0x1B: False (ordered, signaling) \n -/// 0x1C: Not-equal (ordered, signaling) \n -/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n -/// 0x1E: Greater-than (ordered, non-signaling) \n -/// 0x1F: True (unordered, signaling) -/// \returns A 128-bit vector of [2 x double] containing the comparison results. -#define _mm_cmp_sd(a, b, c) \ - ((__m128d)__builtin_ia32_cmpsd((__v2df)(__m128d)(a), \ - (__v2df)(__m128d)(b), (c))) - -/// Compares each of the corresponding scalar values of two 128-bit -/// vectors of [4 x float], using the operation specified by the immediate -/// integer operand. -/// -/// If the result is true, all 32 bits of the destination vector are set; -/// otherwise they are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_cmp_ss(__m128 a, __m128 b, const int c); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCMPSS </c> instruction. -/// -/// \param a -/// A 128-bit vector of [4 x float]. -/// \param b -/// A 128-bit vector of [4 x float]. -/// \param c -/// An immediate integer operand, with bits [4:0] specifying which comparison -/// operation to use: \n -/// 0x00: Equal (ordered, non-signaling) \n -/// 0x01: Less-than (ordered, signaling) \n -/// 0x02: Less-than-or-equal (ordered, signaling) \n -/// 0x03: Unordered (non-signaling) \n -/// 0x04: Not-equal (unordered, non-signaling) \n -/// 0x05: Not-less-than (unordered, signaling) \n -/// 0x06: Not-less-than-or-equal (unordered, signaling) \n -/// 0x07: Ordered (non-signaling) \n -/// 0x08: Equal (unordered, non-signaling) \n -/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n -/// 0x0A: Not-greater-than (unordered, signaling) \n -/// 0x0B: False (ordered, non-signaling) \n -/// 0x0C: Not-equal (ordered, non-signaling) \n -/// 0x0D: Greater-than-or-equal (ordered, signaling) \n -/// 0x0E: Greater-than (ordered, signaling) \n -/// 0x0F: True (unordered, non-signaling) \n -/// 0x10: Equal (ordered, signaling) \n -/// 0x11: Less-than (ordered, non-signaling) \n -/// 0x12: Less-than-or-equal (ordered, non-signaling) \n -/// 0x13: Unordered (signaling) \n -/// 0x14: Not-equal (unordered, signaling) \n -/// 0x15: Not-less-than (unordered, non-signaling) \n -/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n -/// 0x17: Ordered (signaling) \n -/// 0x18: Equal (unordered, signaling) \n -/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n -/// 0x1A: Not-greater-than (unordered, non-signaling) \n -/// 0x1B: False (ordered, signaling) \n -/// 0x1C: Not-equal (ordered, signaling) \n -/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n -/// 0x1E: Greater-than (ordered, non-signaling) \n -/// 0x1F: True (unordered, signaling) -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -#define _mm_cmp_ss(a, b, c) \ - ((__m128)__builtin_ia32_cmpss((__v4sf)(__m128)(a), \ - (__v4sf)(__m128)(b), (c))) - -/// Takes a [8 x i32] vector and returns the vector element value -/// indexed by the immediate constant operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm256_extract_epi32(__m256i X, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128+COMPOSITE </c> -/// instruction. -/// -/// \param X -/// A 256-bit vector of [8 x i32]. -/// \param N -/// An immediate integer operand with bits [2:0] determining which vector -/// element is extracted and returned. -/// \returns A 32-bit integer containing the extracted 32 bits of extended -/// packed data. -#define _mm256_extract_epi32(X, N) \ - ((int)__builtin_ia32_vec_ext_v8si((__v8si)(__m256i)(X), (int)(N))) - -/// Takes a [16 x i16] vector and returns the vector element value -/// indexed by the immediate constant operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm256_extract_epi16(__m256i X, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128+COMPOSITE </c> -/// instruction. -/// -/// \param X -/// A 256-bit integer vector of [16 x i16]. -/// \param N -/// An immediate integer operand with bits [3:0] determining which vector -/// element is extracted and returned. -/// \returns A 32-bit integer containing the extracted 16 bits of zero extended -/// packed data. -#define _mm256_extract_epi16(X, N) \ - ((int)(unsigned short)__builtin_ia32_vec_ext_v16hi((__v16hi)(__m256i)(X), \ - (int)(N))) - -/// Takes a [32 x i8] vector and returns the vector element value -/// indexed by the immediate constant operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm256_extract_epi8(__m256i X, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128+COMPOSITE </c> -/// instruction. -/// -/// \param X -/// A 256-bit integer vector of [32 x i8]. -/// \param N -/// An immediate integer operand with bits [4:0] determining which vector -/// element is extracted and returned. -/// \returns A 32-bit integer containing the extracted 8 bits of zero extended -/// packed data. -#define _mm256_extract_epi8(X, N) \ - ((int)(unsigned char)__builtin_ia32_vec_ext_v32qi((__v32qi)(__m256i)(X), \ - (int)(N))) - -#ifdef __x86_64__ -/// Takes a [4 x i64] vector and returns the vector element value -/// indexed by the immediate constant operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// long long _mm256_extract_epi64(__m256i X, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128+COMPOSITE </c> -/// instruction. -/// -/// \param X -/// A 256-bit integer vector of [4 x i64]. -/// \param N -/// An immediate integer operand with bits [1:0] determining which vector -/// element is extracted and returned. -/// \returns A 64-bit integer containing the extracted 64 bits of extended -/// packed data. -#define _mm256_extract_epi64(X, N) \ - ((long long)__builtin_ia32_vec_ext_v4di((__v4di)(__m256i)(X), (int)(N))) -#endif - -/// Takes a [8 x i32] vector and replaces the vector element value -/// indexed by the immediate constant operand by a new value. Returns the -/// modified vector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256i _mm256_insert_epi32(__m256i X, int I, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VINSERTF128+COMPOSITE </c> -/// instruction. -/// -/// \param X -/// A vector of [8 x i32] to be used by the insert operation. -/// \param I -/// An integer value. The replacement value for the insert operation. -/// \param N -/// An immediate integer specifying the index of the vector element to be -/// replaced. -/// \returns A copy of vector \a X, after replacing its element indexed by -/// \a N with \a I. -#define _mm256_insert_epi32(X, I, N) \ - ((__m256i)__builtin_ia32_vec_set_v8si((__v8si)(__m256i)(X), \ - (int)(I), (int)(N))) - - -/// Takes a [16 x i16] vector and replaces the vector element value -/// indexed by the immediate constant operand with a new value. Returns the -/// modified vector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256i _mm256_insert_epi16(__m256i X, int I, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VINSERTF128+COMPOSITE </c> -/// instruction. -/// -/// \param X -/// A vector of [16 x i16] to be used by the insert operation. -/// \param I -/// An i16 integer value. The replacement value for the insert operation. -/// \param N -/// An immediate integer specifying the index of the vector element to be -/// replaced. -/// \returns A copy of vector \a X, after replacing its element indexed by -/// \a N with \a I. -#define _mm256_insert_epi16(X, I, N) \ - ((__m256i)__builtin_ia32_vec_set_v16hi((__v16hi)(__m256i)(X), \ - (int)(I), (int)(N))) - -/// Takes a [32 x i8] vector and replaces the vector element value -/// indexed by the immediate constant operand with a new value. Returns the -/// modified vector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256i _mm256_insert_epi8(__m256i X, int I, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VINSERTF128+COMPOSITE </c> -/// instruction. -/// -/// \param X -/// A vector of [32 x i8] to be used by the insert operation. -/// \param I -/// An i8 integer value. The replacement value for the insert operation. -/// \param N -/// An immediate integer specifying the index of the vector element to be -/// replaced. -/// \returns A copy of vector \a X, after replacing its element indexed by -/// \a N with \a I. -#define _mm256_insert_epi8(X, I, N) \ - ((__m256i)__builtin_ia32_vec_set_v32qi((__v32qi)(__m256i)(X), \ - (int)(I), (int)(N))) - -#ifdef __x86_64__ -/// Takes a [4 x i64] vector and replaces the vector element value -/// indexed by the immediate constant operand with a new value. Returns the -/// modified vector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256i _mm256_insert_epi64(__m256i X, int I, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VINSERTF128+COMPOSITE </c> -/// instruction. -/// -/// \param X -/// A vector of [4 x i64] to be used by the insert operation. -/// \param I -/// A 64-bit integer value. The replacement value for the insert operation. -/// \param N -/// An immediate integer specifying the index of the vector element to be -/// replaced. -/// \returns A copy of vector \a X, after replacing its element indexed by -/// \a N with \a I. -#define _mm256_insert_epi64(X, I, N) \ - ((__m256i)__builtin_ia32_vec_set_v4di((__v4di)(__m256i)(X), \ - (long long)(I), (int)(N))) -#endif - -/* Conversion */ -/// Converts a vector of [4 x i32] into a vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTDQ2PD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector of [4 x i32]. -/// \returns A 256-bit vector of [4 x double] containing the converted values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_cvtepi32_pd(__m128i __a) -{ - return (__m256d)__builtin_convertvector((__v4si)__a, __v4df); -} - -/// Converts a vector of [8 x i32] into a vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTDQ2PS </c> instruction. -/// -/// \param __a -/// A 256-bit integer vector. -/// \returns A 256-bit vector of [8 x float] containing the converted values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_cvtepi32_ps(__m256i __a) -{ - return (__m256)__builtin_convertvector((__v8si)__a, __v8sf); -} - -/// Converts a 256-bit vector of [4 x double] into a 128-bit vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPD2PS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \returns A 128-bit vector of [4 x float] containing the converted values. -static __inline __m128 __DEFAULT_FN_ATTRS -_mm256_cvtpd_ps(__m256d __a) -{ - return (__m128)__builtin_ia32_cvtpd2ps256((__v4df) __a); -} - -/// Converts a vector of [8 x float] into a vector of [8 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPS2DQ </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit integer vector containing the converted values. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_cvtps_epi32(__m256 __a) -{ - return (__m256i)__builtin_ia32_cvtps2dq256((__v8sf) __a); -} - -/// Converts a 128-bit vector of [4 x float] into a 256-bit vector of [4 -/// x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPS2PD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 256-bit vector of [4 x double] containing the converted values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_cvtps_pd(__m128 __a) -{ - return (__m256d)__builtin_convertvector((__v4sf)__a, __v4df); -} - -/// Converts a 256-bit vector of [4 x double] into a 128-bit vector of [4 -/// x i32], truncating the result by rounding towards zero when it is -/// inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTPD2DQ </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \returns A 128-bit integer vector containing the converted values. -static __inline __m128i __DEFAULT_FN_ATTRS -_mm256_cvttpd_epi32(__m256d __a) -{ - return (__m128i)__builtin_ia32_cvttpd2dq256((__v4df) __a); -} - -/// Converts a 256-bit vector of [4 x double] into a 128-bit vector of [4 -/// x i32]. When a conversion is inexact, the value returned is rounded -/// according to the rounding control bits in the MXCSR register. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPD2DQ </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \returns A 128-bit integer vector containing the converted values. -static __inline __m128i __DEFAULT_FN_ATTRS -_mm256_cvtpd_epi32(__m256d __a) -{ - return (__m128i)__builtin_ia32_cvtpd2dq256((__v4df) __a); -} - -/// Converts a vector of [8 x float] into a vector of [8 x i32], -/// truncating the result by rounding towards zero when it is inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTPS2DQ </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \returns A 256-bit integer vector containing the converted values. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_cvttps_epi32(__m256 __a) -{ - return (__m256i)__builtin_ia32_cvttps2dq256((__v8sf) __a); -} - -/// Returns the first element of the input vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \returns A 64 bit double containing the first element of the input vector. -static __inline double __DEFAULT_FN_ATTRS -_mm256_cvtsd_f64(__m256d __a) -{ - return __a[0]; -} - -/// Returns the first element of the input vector of [8 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x i32]. -/// \returns A 32 bit integer containing the first element of the input vector. -static __inline int __DEFAULT_FN_ATTRS -_mm256_cvtsi256_si32(__m256i __a) -{ - __v8si __b = (__v8si)__a; - return __b[0]; -} - -/// Returns the first element of the input vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \returns A 32 bit float containing the first element of the input vector. -static __inline float __DEFAULT_FN_ATTRS -_mm256_cvtss_f32(__m256 __a) -{ - return __a[0]; -} - -/* Vector replicate */ -/// Moves and duplicates odd-indexed values from a 256-bit vector of -/// [8 x float] to float values in a 256-bit vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSHDUP </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. \n -/// Bits [255:224] of \a __a are written to bits [255:224] and [223:192] of -/// the return value. \n -/// Bits [191:160] of \a __a are written to bits [191:160] and [159:128] of -/// the return value. \n -/// Bits [127:96] of \a __a are written to bits [127:96] and [95:64] of the -/// return value. \n -/// Bits [63:32] of \a __a are written to bits [63:32] and [31:0] of the -/// return value. -/// \returns A 256-bit vector of [8 x float] containing the moved and duplicated -/// values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_movehdup_ps(__m256 __a) -{ - return __builtin_shufflevector((__v8sf)__a, (__v8sf)__a, 1, 1, 3, 3, 5, 5, 7, 7); -} - -/// Moves and duplicates even-indexed values from a 256-bit vector of -/// [8 x float] to float values in a 256-bit vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSLDUP </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. \n -/// Bits [223:192] of \a __a are written to bits [255:224] and [223:192] of -/// the return value. \n -/// Bits [159:128] of \a __a are written to bits [191:160] and [159:128] of -/// the return value. \n -/// Bits [95:64] of \a __a are written to bits [127:96] and [95:64] of the -/// return value. \n -/// Bits [31:0] of \a __a are written to bits [63:32] and [31:0] of the -/// return value. -/// \returns A 256-bit vector of [8 x float] containing the moved and duplicated -/// values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_moveldup_ps(__m256 __a) -{ - return __builtin_shufflevector((__v8sf)__a, (__v8sf)__a, 0, 0, 2, 2, 4, 4, 6, 6); -} - -/// Moves and duplicates double-precision floating point values from a -/// 256-bit vector of [4 x double] to double-precision values in a 256-bit -/// vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDDUP </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. \n -/// Bits [63:0] of \a __a are written to bits [127:64] and [63:0] of the -/// return value. \n -/// Bits [191:128] of \a __a are written to bits [255:192] and [191:128] of -/// the return value. -/// \returns A 256-bit vector of [4 x double] containing the moved and -/// duplicated values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_movedup_pd(__m256d __a) -{ - return __builtin_shufflevector((__v4df)__a, (__v4df)__a, 0, 0, 2, 2); -} - -/* Unpack and Interleave */ -/// Unpacks the odd-indexed vector elements from two 256-bit vectors of -/// [4 x double] and interleaves them into a 256-bit vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKHPD </c> instruction. -/// -/// \param __a -/// A 256-bit floating-point vector of [4 x double]. \n -/// Bits [127:64] are written to bits [63:0] of the return value. \n -/// Bits [255:192] are written to bits [191:128] of the return value. \n -/// \param __b -/// A 256-bit floating-point vector of [4 x double]. \n -/// Bits [127:64] are written to bits [127:64] of the return value. \n -/// Bits [255:192] are written to bits [255:192] of the return value. \n -/// \returns A 256-bit vector of [4 x double] containing the interleaved values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_unpackhi_pd(__m256d __a, __m256d __b) -{ - return __builtin_shufflevector((__v4df)__a, (__v4df)__b, 1, 5, 1+2, 5+2); -} - -/// Unpacks the even-indexed vector elements from two 256-bit vectors of -/// [4 x double] and interleaves them into a 256-bit vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPD </c> instruction. -/// -/// \param __a -/// A 256-bit floating-point vector of [4 x double]. \n -/// Bits [63:0] are written to bits [63:0] of the return value. \n -/// Bits [191:128] are written to bits [191:128] of the return value. -/// \param __b -/// A 256-bit floating-point vector of [4 x double]. \n -/// Bits [63:0] are written to bits [127:64] of the return value. \n -/// Bits [191:128] are written to bits [255:192] of the return value. \n -/// \returns A 256-bit vector of [4 x double] containing the interleaved values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_unpacklo_pd(__m256d __a, __m256d __b) -{ - return __builtin_shufflevector((__v4df)__a, (__v4df)__b, 0, 4, 0+2, 4+2); -} - -/// Unpacks the 32-bit vector elements 2, 3, 6 and 7 from each of the -/// two 256-bit vectors of [8 x float] and interleaves them into a 256-bit -/// vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKHPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. \n -/// Bits [95:64] are written to bits [31:0] of the return value. \n -/// Bits [127:96] are written to bits [95:64] of the return value. \n -/// Bits [223:192] are written to bits [159:128] of the return value. \n -/// Bits [255:224] are written to bits [223:192] of the return value. -/// \param __b -/// A 256-bit vector of [8 x float]. \n -/// Bits [95:64] are written to bits [63:32] of the return value. \n -/// Bits [127:96] are written to bits [127:96] of the return value. \n -/// Bits [223:192] are written to bits [191:160] of the return value. \n -/// Bits [255:224] are written to bits [255:224] of the return value. -/// \returns A 256-bit vector of [8 x float] containing the interleaved values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_unpackhi_ps(__m256 __a, __m256 __b) -{ - return __builtin_shufflevector((__v8sf)__a, (__v8sf)__b, 2, 10, 2+1, 10+1, 6, 14, 6+1, 14+1); -} - -/// Unpacks the 32-bit vector elements 0, 1, 4 and 5 from each of the -/// two 256-bit vectors of [8 x float] and interleaves them into a 256-bit -/// vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. \n -/// Bits [31:0] are written to bits [31:0] of the return value. \n -/// Bits [63:32] are written to bits [95:64] of the return value. \n -/// Bits [159:128] are written to bits [159:128] of the return value. \n -/// Bits [191:160] are written to bits [223:192] of the return value. -/// \param __b -/// A 256-bit vector of [8 x float]. \n -/// Bits [31:0] are written to bits [63:32] of the return value. \n -/// Bits [63:32] are written to bits [127:96] of the return value. \n -/// Bits [159:128] are written to bits [191:160] of the return value. \n -/// Bits [191:160] are written to bits [255:224] of the return value. -/// \returns A 256-bit vector of [8 x float] containing the interleaved values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_unpacklo_ps(__m256 __a, __m256 __b) -{ - return __builtin_shufflevector((__v8sf)__a, (__v8sf)__b, 0, 8, 0+1, 8+1, 4, 12, 4+1, 12+1); -} - -/* Bit Test */ -/// Given two 128-bit floating-point vectors of [2 x double], perform an -/// element-by-element comparison of the double-precision element in the -/// first source vector and the corresponding element in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of double-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of double-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the ZF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns the ZF flag in the EFLAGS register. -static __inline int __DEFAULT_FN_ATTRS128 -_mm_testz_pd(__m128d __a, __m128d __b) -{ - return __builtin_ia32_vtestzpd((__v2df)__a, (__v2df)__b); -} - -/// Given two 128-bit floating-point vectors of [2 x double], perform an -/// element-by-element comparison of the double-precision element in the -/// first source vector and the corresponding element in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of double-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of double-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the CF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns the CF flag in the EFLAGS register. -static __inline int __DEFAULT_FN_ATTRS128 -_mm_testc_pd(__m128d __a, __m128d __b) -{ - return __builtin_ia32_vtestcpd((__v2df)__a, (__v2df)__b); -} - -/// Given two 128-bit floating-point vectors of [2 x double], perform an -/// element-by-element comparison of the double-precision element in the -/// first source vector and the corresponding element in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of double-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of double-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, -/// otherwise it returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. -static __inline int __DEFAULT_FN_ATTRS128 -_mm_testnzc_pd(__m128d __a, __m128d __b) -{ - return __builtin_ia32_vtestnzcpd((__v2df)__a, (__v2df)__b); -} - -/// Given two 128-bit floating-point vectors of [4 x float], perform an -/// element-by-element comparison of the single-precision element in the -/// first source vector and the corresponding element in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of single-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of single-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the ZF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns the ZF flag. -static __inline int __DEFAULT_FN_ATTRS128 -_mm_testz_ps(__m128 __a, __m128 __b) -{ - return __builtin_ia32_vtestzps((__v4sf)__a, (__v4sf)__b); -} - -/// Given two 128-bit floating-point vectors of [4 x float], perform an -/// element-by-element comparison of the single-precision element in the -/// first source vector and the corresponding element in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of single-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of single-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the CF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns the CF flag. -static __inline int __DEFAULT_FN_ATTRS128 -_mm_testc_ps(__m128 __a, __m128 __b) -{ - return __builtin_ia32_vtestcps((__v4sf)__a, (__v4sf)__b); -} - -/// Given two 128-bit floating-point vectors of [4 x float], perform an -/// element-by-element comparison of the single-precision element in the -/// first source vector and the corresponding element in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of single-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of single-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, -/// otherwise it returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. -static __inline int __DEFAULT_FN_ATTRS128 -_mm_testnzc_ps(__m128 __a, __m128 __b) -{ - return __builtin_ia32_vtestnzcps((__v4sf)__a, (__v4sf)__b); -} - -/// Given two 256-bit floating-point vectors of [4 x double], perform an -/// element-by-element comparison of the double-precision elements in the -/// first source vector and the corresponding elements in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of double-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of double-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the ZF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \param __b -/// A 256-bit vector of [4 x double]. -/// \returns the ZF flag. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testz_pd(__m256d __a, __m256d __b) -{ - return __builtin_ia32_vtestzpd256((__v4df)__a, (__v4df)__b); -} - -/// Given two 256-bit floating-point vectors of [4 x double], perform an -/// element-by-element comparison of the double-precision elements in the -/// first source vector and the corresponding elements in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of double-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of double-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the CF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \param __b -/// A 256-bit vector of [4 x double]. -/// \returns the CF flag. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testc_pd(__m256d __a, __m256d __b) -{ - return __builtin_ia32_vtestcpd256((__v4df)__a, (__v4df)__b); -} - -/// Given two 256-bit floating-point vectors of [4 x double], perform an -/// element-by-element comparison of the double-precision elements in the -/// first source vector and the corresponding elements in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of double-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of double-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, -/// otherwise it returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double]. -/// \param __b -/// A 256-bit vector of [4 x double]. -/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testnzc_pd(__m256d __a, __m256d __b) -{ - return __builtin_ia32_vtestnzcpd256((__v4df)__a, (__v4df)__b); -} - -/// Given two 256-bit floating-point vectors of [8 x float], perform an -/// element-by-element comparison of the single-precision element in the -/// first source vector and the corresponding element in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of single-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of single-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the ZF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \param __b -/// A 256-bit vector of [8 x float]. -/// \returns the ZF flag. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testz_ps(__m256 __a, __m256 __b) -{ - return __builtin_ia32_vtestzps256((__v8sf)__a, (__v8sf)__b); -} - -/// Given two 256-bit floating-point vectors of [8 x float], perform an -/// element-by-element comparison of the single-precision element in the -/// first source vector and the corresponding element in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of single-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of single-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the CF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \param __b -/// A 256-bit vector of [8 x float]. -/// \returns the CF flag. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testc_ps(__m256 __a, __m256 __b) -{ - return __builtin_ia32_vtestcps256((__v8sf)__a, (__v8sf)__b); -} - -/// Given two 256-bit floating-point vectors of [8 x float], perform an -/// element-by-element comparison of the single-precision elements in the -/// first source vector and the corresponding elements in the second source -/// vector. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of single-precision elements where the -/// sign-bits of both elements are 1, the ZF flag is set to 0. Otherwise the -/// ZF flag is set to 1. \n -/// If there is at least one pair of single-precision elements where the -/// sign-bit of the first element is 0 and the sign-bit of the second element -/// is 1, the CF flag is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, -/// otherwise it returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VTESTPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float]. -/// \param __b -/// A 256-bit vector of [8 x float]. -/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testnzc_ps(__m256 __a, __m256 __b) -{ - return __builtin_ia32_vtestnzcps256((__v8sf)__a, (__v8sf)__b); -} - -/// Given two 256-bit integer vectors, perform a bit-by-bit comparison -/// of the two source vectors. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of bits where both bits are 1, the ZF flag -/// is set to 0. Otherwise the ZF flag is set to 1. \n -/// If there is at least one pair of bits where the bit from the first source -/// vector is 0 and the bit from the second source vector is 1, the CF flag -/// is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the ZF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPTEST </c> instruction. -/// -/// \param __a -/// A 256-bit integer vector. -/// \param __b -/// A 256-bit integer vector. -/// \returns the ZF flag. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testz_si256(__m256i __a, __m256i __b) -{ - return __builtin_ia32_ptestz256((__v4di)__a, (__v4di)__b); -} - -/// Given two 256-bit integer vectors, perform a bit-by-bit comparison -/// of the two source vectors. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of bits where both bits are 1, the ZF flag -/// is set to 0. Otherwise the ZF flag is set to 1. \n -/// If there is at least one pair of bits where the bit from the first source -/// vector is 0 and the bit from the second source vector is 1, the CF flag -/// is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns the value of the CF flag. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPTEST </c> instruction. -/// -/// \param __a -/// A 256-bit integer vector. -/// \param __b -/// A 256-bit integer vector. -/// \returns the CF flag. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testc_si256(__m256i __a, __m256i __b) -{ - return __builtin_ia32_ptestc256((__v4di)__a, (__v4di)__b); -} - -/// Given two 256-bit integer vectors, perform a bit-by-bit comparison -/// of the two source vectors. -/// -/// The EFLAGS register is updated as follows: \n -/// If there is at least one pair of bits where both bits are 1, the ZF flag -/// is set to 0. Otherwise the ZF flag is set to 1. \n -/// If there is at least one pair of bits where the bit from the first source -/// vector is 0 and the bit from the second source vector is 1, the CF flag -/// is set to 0. Otherwise the CF flag is set to 1. \n -/// This intrinsic returns 1 if both the ZF and CF flags are set to 0, -/// otherwise it returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPTEST </c> instruction. -/// -/// \param __a -/// A 256-bit integer vector. -/// \param __b -/// A 256-bit integer vector. -/// \returns 1 if both the ZF and CF flags are set to 0, otherwise returns 0. -static __inline int __DEFAULT_FN_ATTRS -_mm256_testnzc_si256(__m256i __a, __m256i __b) -{ - return __builtin_ia32_ptestnzc256((__v4di)__a, (__v4di)__b); -} - -/* Vector extract sign mask */ -/// Extracts the sign bits of double-precision floating point elements -/// in a 256-bit vector of [4 x double] and writes them to the lower order -/// bits of the return value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVMSKPD </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [4 x double] containing the double-precision -/// floating point values with sign bits to be extracted. -/// \returns The sign bits from the operand, written to bits [3:0]. -static __inline int __DEFAULT_FN_ATTRS -_mm256_movemask_pd(__m256d __a) -{ - return __builtin_ia32_movmskpd256((__v4df)__a); -} - -/// Extracts the sign bits of single-precision floating point elements -/// in a 256-bit vector of [8 x float] and writes them to the lower order -/// bits of the return value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVMSKPS </c> instruction. -/// -/// \param __a -/// A 256-bit vector of [8 x float] containing the single-precision floating -/// point values with sign bits to be extracted. -/// \returns The sign bits from the operand, written to bits [7:0]. -static __inline int __DEFAULT_FN_ATTRS -_mm256_movemask_ps(__m256 __a) -{ - return __builtin_ia32_movmskps256((__v8sf)__a); -} - -/* Vector __zero */ -/// Zeroes the contents of all XMM or YMM registers. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VZEROALL </c> instruction. -static __inline void __attribute__((__always_inline__, __nodebug__, __target__("avx"))) -_mm256_zeroall(void) -{ - __builtin_ia32_vzeroall(); -} - -/// Zeroes the upper 128 bits (bits 255:128) of all YMM registers. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VZEROUPPER </c> instruction. -static __inline void __attribute__((__always_inline__, __nodebug__, __target__("avx"))) -_mm256_zeroupper(void) -{ - __builtin_ia32_vzeroupper(); -} - -/* Vector load with broadcast */ -/// Loads a scalar single-precision floating point value from the -/// specified address pointed to by \a __a and broadcasts it to the elements -/// of a [4 x float] vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBROADCASTSS </c> instruction. -/// -/// \param __a -/// The single-precision floating point value to be broadcast. -/// \returns A 128-bit vector of [4 x float] whose 32-bit elements are set -/// equal to the broadcast value. -static __inline __m128 __DEFAULT_FN_ATTRS128 -_mm_broadcast_ss(float const *__a) -{ - float __f = *__a; - return __extension__ (__m128)(__v4sf){ __f, __f, __f, __f }; -} - -/// Loads a scalar double-precision floating point value from the -/// specified address pointed to by \a __a and broadcasts it to the elements -/// of a [4 x double] vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBROADCASTSD </c> instruction. -/// -/// \param __a -/// The double-precision floating point value to be broadcast. -/// \returns A 256-bit vector of [4 x double] whose 64-bit elements are set -/// equal to the broadcast value. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_broadcast_sd(double const *__a) -{ - double __d = *__a; - return __extension__ (__m256d)(__v4df){ __d, __d, __d, __d }; -} - -/// Loads a scalar single-precision floating point value from the -/// specified address pointed to by \a __a and broadcasts it to the elements -/// of a [8 x float] vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBROADCASTSS </c> instruction. -/// -/// \param __a -/// The single-precision floating point value to be broadcast. -/// \returns A 256-bit vector of [8 x float] whose 32-bit elements are set -/// equal to the broadcast value. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_broadcast_ss(float const *__a) -{ - float __f = *__a; - return __extension__ (__m256)(__v8sf){ __f, __f, __f, __f, __f, __f, __f, __f }; -} - -/// Loads the data from a 128-bit vector of [2 x double] from the -/// specified address pointed to by \a __a and broadcasts it to 128-bit -/// elements in a 256-bit vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBROADCASTF128 </c> instruction. -/// -/// \param __a -/// The 128-bit vector of [2 x double] to be broadcast. -/// \returns A 256-bit vector of [4 x double] whose 128-bit elements are set -/// equal to the broadcast value. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_broadcast_pd(__m128d const *__a) -{ - __m128d __b = _mm_loadu_pd((const double *)__a); - return (__m256d)__builtin_shufflevector((__v2df)__b, (__v2df)__b, - 0, 1, 0, 1); -} - -/// Loads the data from a 128-bit vector of [4 x float] from the -/// specified address pointed to by \a __a and broadcasts it to 128-bit -/// elements in a 256-bit vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBROADCASTF128 </c> instruction. -/// -/// \param __a -/// The 128-bit vector of [4 x float] to be broadcast. -/// \returns A 256-bit vector of [8 x float] whose 128-bit elements are set -/// equal to the broadcast value. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_broadcast_ps(__m128 const *__a) -{ - __m128 __b = _mm_loadu_ps((const float *)__a); - return (__m256)__builtin_shufflevector((__v4sf)__b, (__v4sf)__b, - 0, 1, 2, 3, 0, 1, 2, 3); -} - -/* SIMD load ops */ -/// Loads 4 double-precision floating point values from a 32-byte aligned -/// memory location pointed to by \a __p into a vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPD </c> instruction. -/// -/// \param __p -/// A 32-byte aligned pointer to a memory location containing -/// double-precision floating point values. -/// \returns A 256-bit vector of [4 x double] containing the moved values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_load_pd(double const *__p) -{ - return *(const __m256d *)__p; -} - -/// Loads 8 single-precision floating point values from a 32-byte aligned -/// memory location pointed to by \a __p into a vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPS </c> instruction. -/// -/// \param __p -/// A 32-byte aligned pointer to a memory location containing float values. -/// \returns A 256-bit vector of [8 x float] containing the moved values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_load_ps(float const *__p) -{ - return *(const __m256 *)__p; -} - -/// Loads 4 double-precision floating point values from an unaligned -/// memory location pointed to by \a __p into a vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPD </c> instruction. -/// -/// \param __p -/// A pointer to a memory location containing double-precision floating -/// point values. -/// \returns A 256-bit vector of [4 x double] containing the moved values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_loadu_pd(double const *__p) -{ - struct __loadu_pd { - __m256d_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_pd*)__p)->__v; -} - -/// Loads 8 single-precision floating point values from an unaligned -/// memory location pointed to by \a __p into a vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPS </c> instruction. -/// -/// \param __p -/// A pointer to a memory location containing single-precision floating -/// point values. -/// \returns A 256-bit vector of [8 x float] containing the moved values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_loadu_ps(float const *__p) -{ - struct __loadu_ps { - __m256_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_ps*)__p)->__v; -} - -/// Loads 256 bits of integer data from a 32-byte aligned memory -/// location pointed to by \a __p into elements of a 256-bit integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDQA </c> instruction. -/// -/// \param __p -/// A 32-byte aligned pointer to a 256-bit integer vector containing integer -/// values. -/// \returns A 256-bit integer vector containing the moved values. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_load_si256(__m256i const *__p) -{ - return *__p; -} - -/// Loads 256 bits of integer data from an unaligned memory location -/// pointed to by \a __p into a 256-bit integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDQU </c> instruction. -/// -/// \param __p -/// A pointer to a 256-bit integer vector containing integer values. -/// \returns A 256-bit integer vector containing the moved values. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_loadu_si256(__m256i_u const *__p) -{ - struct __loadu_si256 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_si256*)__p)->__v; -} - -/// Loads 256 bits of integer data from an unaligned memory location -/// pointed to by \a __p into a 256-bit integer vector. This intrinsic may -/// perform better than \c _mm256_loadu_si256 when the data crosses a cache -/// line boundary. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VLDDQU </c> instruction. -/// -/// \param __p -/// A pointer to a 256-bit integer vector containing integer values. -/// \returns A 256-bit integer vector containing the moved values. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_lddqu_si256(__m256i_u const *__p) -{ - return (__m256i)__builtin_ia32_lddqu256((char const *)__p); -} - -/* SIMD store ops */ -/// Stores double-precision floating point values from a 256-bit vector -/// of [4 x double] to a 32-byte aligned memory location pointed to by -/// \a __p. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPD </c> instruction. -/// -/// \param __p -/// A 32-byte aligned pointer to a memory location that will receive the -/// double-precision floaing point values. -/// \param __a -/// A 256-bit vector of [4 x double] containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_store_pd(double *__p, __m256d __a) -{ - *(__m256d *)__p = __a; -} - -/// Stores single-precision floating point values from a 256-bit vector -/// of [8 x float] to a 32-byte aligned memory location pointed to by \a __p. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPS </c> instruction. -/// -/// \param __p -/// A 32-byte aligned pointer to a memory location that will receive the -/// float values. -/// \param __a -/// A 256-bit vector of [8 x float] containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_store_ps(float *__p, __m256 __a) -{ - *(__m256 *)__p = __a; -} - -/// Stores double-precision floating point values from a 256-bit vector -/// of [4 x double] to an unaligned memory location pointed to by \a __p. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPD </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the double-precision -/// floating point values. -/// \param __a -/// A 256-bit vector of [4 x double] containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_storeu_pd(double *__p, __m256d __a) -{ - struct __storeu_pd { - __m256d_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_pd*)__p)->__v = __a; -} - -/// Stores single-precision floating point values from a 256-bit vector -/// of [8 x float] to an unaligned memory location pointed to by \a __p. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPS </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the float values. -/// \param __a -/// A 256-bit vector of [8 x float] containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_storeu_ps(float *__p, __m256 __a) -{ - struct __storeu_ps { - __m256_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_ps*)__p)->__v = __a; -} - -/// Stores integer values from a 256-bit integer vector to a 32-byte -/// aligned memory location pointed to by \a __p. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDQA </c> instruction. -/// -/// \param __p -/// A 32-byte aligned pointer to a memory location that will receive the -/// integer values. -/// \param __a -/// A 256-bit integer vector containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_store_si256(__m256i *__p, __m256i __a) -{ - *__p = __a; -} - -/// Stores integer values from a 256-bit integer vector to an unaligned -/// memory location pointed to by \a __p. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDQU </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the integer values. -/// \param __a -/// A 256-bit integer vector containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_storeu_si256(__m256i_u *__p, __m256i __a) -{ - struct __storeu_si256 { - __m256i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_si256*)__p)->__v = __a; -} - -/* Conditional load ops */ -/// Conditionally loads double-precision floating point elements from a -/// memory location pointed to by \a __p into a 128-bit vector of -/// [2 x double], depending on the mask bits associated with each data -/// element. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVPD </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that contains the double-precision -/// floating point values. -/// \param __m -/// A 128-bit integer vector containing the mask. The most significant bit of -/// each data element represents the mask bits. If a mask bit is zero, the -/// corresponding value in the memory location is not loaded and the -/// corresponding field in the return value is set to zero. -/// \returns A 128-bit vector of [2 x double] containing the loaded values. -static __inline __m128d __DEFAULT_FN_ATTRS128 -_mm_maskload_pd(double const *__p, __m128i __m) -{ - return (__m128d)__builtin_ia32_maskloadpd((const __v2df *)__p, (__v2di)__m); -} - -/// Conditionally loads double-precision floating point elements from a -/// memory location pointed to by \a __p into a 256-bit vector of -/// [4 x double], depending on the mask bits associated with each data -/// element. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVPD </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that contains the double-precision -/// floating point values. -/// \param __m -/// A 256-bit integer vector of [4 x quadword] containing the mask. The most -/// significant bit of each quadword element represents the mask bits. If a -/// mask bit is zero, the corresponding value in the memory location is not -/// loaded and the corresponding field in the return value is set to zero. -/// \returns A 256-bit vector of [4 x double] containing the loaded values. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_maskload_pd(double const *__p, __m256i __m) -{ - return (__m256d)__builtin_ia32_maskloadpd256((const __v4df *)__p, - (__v4di)__m); -} - -/// Conditionally loads single-precision floating point elements from a -/// memory location pointed to by \a __p into a 128-bit vector of -/// [4 x float], depending on the mask bits associated with each data -/// element. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVPS </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that contains the single-precision -/// floating point values. -/// \param __m -/// A 128-bit integer vector containing the mask. The most significant bit of -/// each data element represents the mask bits. If a mask bit is zero, the -/// corresponding value in the memory location is not loaded and the -/// corresponding field in the return value is set to zero. -/// \returns A 128-bit vector of [4 x float] containing the loaded values. -static __inline __m128 __DEFAULT_FN_ATTRS128 -_mm_maskload_ps(float const *__p, __m128i __m) -{ - return (__m128)__builtin_ia32_maskloadps((const __v4sf *)__p, (__v4si)__m); -} - -/// Conditionally loads single-precision floating point elements from a -/// memory location pointed to by \a __p into a 256-bit vector of -/// [8 x float], depending on the mask bits associated with each data -/// element. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVPS </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that contains the single-precision -/// floating point values. -/// \param __m -/// A 256-bit integer vector of [8 x dword] containing the mask. The most -/// significant bit of each dword element represents the mask bits. If a mask -/// bit is zero, the corresponding value in the memory location is not loaded -/// and the corresponding field in the return value is set to zero. -/// \returns A 256-bit vector of [8 x float] containing the loaded values. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_maskload_ps(float const *__p, __m256i __m) -{ - return (__m256)__builtin_ia32_maskloadps256((const __v8sf *)__p, (__v8si)__m); -} - -/* Conditional store ops */ -/// Moves single-precision floating point values from a 256-bit vector -/// of [8 x float] to a memory location pointed to by \a __p, according to -/// the specified mask. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVPS </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the float values. -/// \param __m -/// A 256-bit integer vector of [8 x dword] containing the mask. The most -/// significant bit of each dword element in the mask vector represents the -/// mask bits. If a mask bit is zero, the corresponding value from vector -/// \a __a is not stored and the corresponding field in the memory location -/// pointed to by \a __p is not changed. -/// \param __a -/// A 256-bit vector of [8 x float] containing the values to be stored. -static __inline void __DEFAULT_FN_ATTRS -_mm256_maskstore_ps(float *__p, __m256i __m, __m256 __a) -{ - __builtin_ia32_maskstoreps256((__v8sf *)__p, (__v8si)__m, (__v8sf)__a); -} - -/// Moves double-precision values from a 128-bit vector of [2 x double] -/// to a memory location pointed to by \a __p, according to the specified -/// mask. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVPD </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the float values. -/// \param __m -/// A 128-bit integer vector containing the mask. The most significant bit of -/// each field in the mask vector represents the mask bits. If a mask bit is -/// zero, the corresponding value from vector \a __a is not stored and the -/// corresponding field in the memory location pointed to by \a __p is not -/// changed. -/// \param __a -/// A 128-bit vector of [2 x double] containing the values to be stored. -static __inline void __DEFAULT_FN_ATTRS128 -_mm_maskstore_pd(double *__p, __m128i __m, __m128d __a) -{ - __builtin_ia32_maskstorepd((__v2df *)__p, (__v2di)__m, (__v2df)__a); -} - -/// Moves double-precision values from a 256-bit vector of [4 x double] -/// to a memory location pointed to by \a __p, according to the specified -/// mask. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVPD </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the float values. -/// \param __m -/// A 256-bit integer vector of [4 x quadword] containing the mask. The most -/// significant bit of each quadword element in the mask vector represents -/// the mask bits. If a mask bit is zero, the corresponding value from vector -/// __a is not stored and the corresponding field in the memory location -/// pointed to by \a __p is not changed. -/// \param __a -/// A 256-bit vector of [4 x double] containing the values to be stored. -static __inline void __DEFAULT_FN_ATTRS -_mm256_maskstore_pd(double *__p, __m256i __m, __m256d __a) -{ - __builtin_ia32_maskstorepd256((__v4df *)__p, (__v4di)__m, (__v4df)__a); -} - -/// Moves single-precision floating point values from a 128-bit vector -/// of [4 x float] to a memory location pointed to by \a __p, according to -/// the specified mask. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVPS </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the float values. -/// \param __m -/// A 128-bit integer vector containing the mask. The most significant bit of -/// each field in the mask vector represents the mask bits. If a mask bit is -/// zero, the corresponding value from vector __a is not stored and the -/// corresponding field in the memory location pointed to by \a __p is not -/// changed. -/// \param __a -/// A 128-bit vector of [4 x float] containing the values to be stored. -static __inline void __DEFAULT_FN_ATTRS128 -_mm_maskstore_ps(float *__p, __m128i __m, __m128 __a) -{ - __builtin_ia32_maskstoreps((__v4sf *)__p, (__v4si)__m, (__v4sf)__a); -} - -/* Cacheability support ops */ -/// Moves integer data from a 256-bit integer vector to a 32-byte -/// aligned memory location. To minimize caching, the data is flagged as -/// non-temporal (unlikely to be used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVNTDQ </c> instruction. -/// -/// \param __a -/// A pointer to a 32-byte aligned memory location that will receive the -/// integer values. -/// \param __b -/// A 256-bit integer vector containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_stream_si256(__m256i *__a, __m256i __b) -{ - typedef __v4di __v4di_aligned __attribute__((aligned(32))); - __builtin_nontemporal_store((__v4di_aligned)__b, (__v4di_aligned*)__a); -} - -/// Moves double-precision values from a 256-bit vector of [4 x double] -/// to a 32-byte aligned memory location. To minimize caching, the data is -/// flagged as non-temporal (unlikely to be used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVNTPD </c> instruction. -/// -/// \param __a -/// A pointer to a 32-byte aligned memory location that will receive the -/// double-precision floating-point values. -/// \param __b -/// A 256-bit vector of [4 x double] containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_stream_pd(double *__a, __m256d __b) -{ - typedef __v4df __v4df_aligned __attribute__((aligned(32))); - __builtin_nontemporal_store((__v4df_aligned)__b, (__v4df_aligned*)__a); -} - -/// Moves single-precision floating point values from a 256-bit vector -/// of [8 x float] to a 32-byte aligned memory location. To minimize -/// caching, the data is flagged as non-temporal (unlikely to be used again -/// soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVNTPS </c> instruction. -/// -/// \param __p -/// A pointer to a 32-byte aligned memory location that will receive the -/// single-precision floating point values. -/// \param __a -/// A 256-bit vector of [8 x float] containing the values to be moved. -static __inline void __DEFAULT_FN_ATTRS -_mm256_stream_ps(float *__p, __m256 __a) -{ - typedef __v8sf __v8sf_aligned __attribute__((aligned(32))); - __builtin_nontemporal_store((__v8sf_aligned)__a, (__v8sf_aligned*)__p); -} - -/* Create vectors */ -/// Create a 256-bit vector of [4 x double] with undefined values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \returns A 256-bit vector of [4 x double] containing undefined values. -static __inline__ __m256d __DEFAULT_FN_ATTRS -_mm256_undefined_pd(void) -{ - return (__m256d)__builtin_ia32_undef256(); -} - -/// Create a 256-bit vector of [8 x float] with undefined values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \returns A 256-bit vector of [8 x float] containing undefined values. -static __inline__ __m256 __DEFAULT_FN_ATTRS -_mm256_undefined_ps(void) -{ - return (__m256)__builtin_ia32_undef256(); -} - -/// Create a 256-bit integer vector with undefined values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \returns A 256-bit integer vector containing undefined values. -static __inline__ __m256i __DEFAULT_FN_ATTRS -_mm256_undefined_si256(void) -{ - return (__m256i)__builtin_ia32_undef256(); -} - -/// Constructs a 256-bit floating-point vector of [4 x double] -/// initialized with the specified double-precision floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPD+VINSERTF128 </c> -/// instruction. -/// -/// \param __a -/// A double-precision floating-point value used to initialize bits [255:192] -/// of the result. -/// \param __b -/// A double-precision floating-point value used to initialize bits [191:128] -/// of the result. -/// \param __c -/// A double-precision floating-point value used to initialize bits [127:64] -/// of the result. -/// \param __d -/// A double-precision floating-point value used to initialize bits [63:0] -/// of the result. -/// \returns An initialized 256-bit floating-point vector of [4 x double]. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_set_pd(double __a, double __b, double __c, double __d) -{ - return __extension__ (__m256d){ __d, __c, __b, __a }; -} - -/// Constructs a 256-bit floating-point vector of [8 x float] initialized -/// with the specified single-precision floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __a -/// A single-precision floating-point value used to initialize bits [255:224] -/// of the result. -/// \param __b -/// A single-precision floating-point value used to initialize bits [223:192] -/// of the result. -/// \param __c -/// A single-precision floating-point value used to initialize bits [191:160] -/// of the result. -/// \param __d -/// A single-precision floating-point value used to initialize bits [159:128] -/// of the result. -/// \param __e -/// A single-precision floating-point value used to initialize bits [127:96] -/// of the result. -/// \param __f -/// A single-precision floating-point value used to initialize bits [95:64] -/// of the result. -/// \param __g -/// A single-precision floating-point value used to initialize bits [63:32] -/// of the result. -/// \param __h -/// A single-precision floating-point value used to initialize bits [31:0] -/// of the result. -/// \returns An initialized 256-bit floating-point vector of [8 x float]. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_set_ps(float __a, float __b, float __c, float __d, - float __e, float __f, float __g, float __h) -{ - return __extension__ (__m256){ __h, __g, __f, __e, __d, __c, __b, __a }; -} - -/// Constructs a 256-bit integer vector initialized with the specified -/// 32-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __i0 -/// A 32-bit integral value used to initialize bits [255:224] of the result. -/// \param __i1 -/// A 32-bit integral value used to initialize bits [223:192] of the result. -/// \param __i2 -/// A 32-bit integral value used to initialize bits [191:160] of the result. -/// \param __i3 -/// A 32-bit integral value used to initialize bits [159:128] of the result. -/// \param __i4 -/// A 32-bit integral value used to initialize bits [127:96] of the result. -/// \param __i5 -/// A 32-bit integral value used to initialize bits [95:64] of the result. -/// \param __i6 -/// A 32-bit integral value used to initialize bits [63:32] of the result. -/// \param __i7 -/// A 32-bit integral value used to initialize bits [31:0] of the result. -/// \returns An initialized 256-bit integer vector. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set_epi32(int __i0, int __i1, int __i2, int __i3, - int __i4, int __i5, int __i6, int __i7) -{ - return __extension__ (__m256i)(__v8si){ __i7, __i6, __i5, __i4, __i3, __i2, __i1, __i0 }; -} - -/// Constructs a 256-bit integer vector initialized with the specified -/// 16-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __w15 -/// A 16-bit integral value used to initialize bits [255:240] of the result. -/// \param __w14 -/// A 16-bit integral value used to initialize bits [239:224] of the result. -/// \param __w13 -/// A 16-bit integral value used to initialize bits [223:208] of the result. -/// \param __w12 -/// A 16-bit integral value used to initialize bits [207:192] of the result. -/// \param __w11 -/// A 16-bit integral value used to initialize bits [191:176] of the result. -/// \param __w10 -/// A 16-bit integral value used to initialize bits [175:160] of the result. -/// \param __w09 -/// A 16-bit integral value used to initialize bits [159:144] of the result. -/// \param __w08 -/// A 16-bit integral value used to initialize bits [143:128] of the result. -/// \param __w07 -/// A 16-bit integral value used to initialize bits [127:112] of the result. -/// \param __w06 -/// A 16-bit integral value used to initialize bits [111:96] of the result. -/// \param __w05 -/// A 16-bit integral value used to initialize bits [95:80] of the result. -/// \param __w04 -/// A 16-bit integral value used to initialize bits [79:64] of the result. -/// \param __w03 -/// A 16-bit integral value used to initialize bits [63:48] of the result. -/// \param __w02 -/// A 16-bit integral value used to initialize bits [47:32] of the result. -/// \param __w01 -/// A 16-bit integral value used to initialize bits [31:16] of the result. -/// \param __w00 -/// A 16-bit integral value used to initialize bits [15:0] of the result. -/// \returns An initialized 256-bit integer vector. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set_epi16(short __w15, short __w14, short __w13, short __w12, - short __w11, short __w10, short __w09, short __w08, - short __w07, short __w06, short __w05, short __w04, - short __w03, short __w02, short __w01, short __w00) -{ - return __extension__ (__m256i)(__v16hi){ __w00, __w01, __w02, __w03, __w04, __w05, __w06, - __w07, __w08, __w09, __w10, __w11, __w12, __w13, __w14, __w15 }; -} - -/// Constructs a 256-bit integer vector initialized with the specified -/// 8-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __b31 -/// An 8-bit integral value used to initialize bits [255:248] of the result. -/// \param __b30 -/// An 8-bit integral value used to initialize bits [247:240] of the result. -/// \param __b29 -/// An 8-bit integral value used to initialize bits [239:232] of the result. -/// \param __b28 -/// An 8-bit integral value used to initialize bits [231:224] of the result. -/// \param __b27 -/// An 8-bit integral value used to initialize bits [223:216] of the result. -/// \param __b26 -/// An 8-bit integral value used to initialize bits [215:208] of the result. -/// \param __b25 -/// An 8-bit integral value used to initialize bits [207:200] of the result. -/// \param __b24 -/// An 8-bit integral value used to initialize bits [199:192] of the result. -/// \param __b23 -/// An 8-bit integral value used to initialize bits [191:184] of the result. -/// \param __b22 -/// An 8-bit integral value used to initialize bits [183:176] of the result. -/// \param __b21 -/// An 8-bit integral value used to initialize bits [175:168] of the result. -/// \param __b20 -/// An 8-bit integral value used to initialize bits [167:160] of the result. -/// \param __b19 -/// An 8-bit integral value used to initialize bits [159:152] of the result. -/// \param __b18 -/// An 8-bit integral value used to initialize bits [151:144] of the result. -/// \param __b17 -/// An 8-bit integral value used to initialize bits [143:136] of the result. -/// \param __b16 -/// An 8-bit integral value used to initialize bits [135:128] of the result. -/// \param __b15 -/// An 8-bit integral value used to initialize bits [127:120] of the result. -/// \param __b14 -/// An 8-bit integral value used to initialize bits [119:112] of the result. -/// \param __b13 -/// An 8-bit integral value used to initialize bits [111:104] of the result. -/// \param __b12 -/// An 8-bit integral value used to initialize bits [103:96] of the result. -/// \param __b11 -/// An 8-bit integral value used to initialize bits [95:88] of the result. -/// \param __b10 -/// An 8-bit integral value used to initialize bits [87:80] of the result. -/// \param __b09 -/// An 8-bit integral value used to initialize bits [79:72] of the result. -/// \param __b08 -/// An 8-bit integral value used to initialize bits [71:64] of the result. -/// \param __b07 -/// An 8-bit integral value used to initialize bits [63:56] of the result. -/// \param __b06 -/// An 8-bit integral value used to initialize bits [55:48] of the result. -/// \param __b05 -/// An 8-bit integral value used to initialize bits [47:40] of the result. -/// \param __b04 -/// An 8-bit integral value used to initialize bits [39:32] of the result. -/// \param __b03 -/// An 8-bit integral value used to initialize bits [31:24] of the result. -/// \param __b02 -/// An 8-bit integral value used to initialize bits [23:16] of the result. -/// \param __b01 -/// An 8-bit integral value used to initialize bits [15:8] of the result. -/// \param __b00 -/// An 8-bit integral value used to initialize bits [7:0] of the result. -/// \returns An initialized 256-bit integer vector. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set_epi8(char __b31, char __b30, char __b29, char __b28, - char __b27, char __b26, char __b25, char __b24, - char __b23, char __b22, char __b21, char __b20, - char __b19, char __b18, char __b17, char __b16, - char __b15, char __b14, char __b13, char __b12, - char __b11, char __b10, char __b09, char __b08, - char __b07, char __b06, char __b05, char __b04, - char __b03, char __b02, char __b01, char __b00) -{ - return __extension__ (__m256i)(__v32qi){ - __b00, __b01, __b02, __b03, __b04, __b05, __b06, __b07, - __b08, __b09, __b10, __b11, __b12, __b13, __b14, __b15, - __b16, __b17, __b18, __b19, __b20, __b21, __b22, __b23, - __b24, __b25, __b26, __b27, __b28, __b29, __b30, __b31 - }; -} - -/// Constructs a 256-bit integer vector initialized with the specified -/// 64-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKLQDQ+VINSERTF128 </c> -/// instruction. -/// -/// \param __a -/// A 64-bit integral value used to initialize bits [255:192] of the result. -/// \param __b -/// A 64-bit integral value used to initialize bits [191:128] of the result. -/// \param __c -/// A 64-bit integral value used to initialize bits [127:64] of the result. -/// \param __d -/// A 64-bit integral value used to initialize bits [63:0] of the result. -/// \returns An initialized 256-bit integer vector. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set_epi64x(long long __a, long long __b, long long __c, long long __d) -{ - return __extension__ (__m256i)(__v4di){ __d, __c, __b, __a }; -} - -/* Create vectors with elements in reverse order */ -/// Constructs a 256-bit floating-point vector of [4 x double], -/// initialized in reverse order with the specified double-precision -/// floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPD+VINSERTF128 </c> -/// instruction. -/// -/// \param __a -/// A double-precision floating-point value used to initialize bits [63:0] -/// of the result. -/// \param __b -/// A double-precision floating-point value used to initialize bits [127:64] -/// of the result. -/// \param __c -/// A double-precision floating-point value used to initialize bits [191:128] -/// of the result. -/// \param __d -/// A double-precision floating-point value used to initialize bits [255:192] -/// of the result. -/// \returns An initialized 256-bit floating-point vector of [4 x double]. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_setr_pd(double __a, double __b, double __c, double __d) -{ - return _mm256_set_pd(__d, __c, __b, __a); -} - -/// Constructs a 256-bit floating-point vector of [8 x float], -/// initialized in reverse order with the specified single-precision -/// float-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __a -/// A single-precision floating-point value used to initialize bits [31:0] -/// of the result. -/// \param __b -/// A single-precision floating-point value used to initialize bits [63:32] -/// of the result. -/// \param __c -/// A single-precision floating-point value used to initialize bits [95:64] -/// of the result. -/// \param __d -/// A single-precision floating-point value used to initialize bits [127:96] -/// of the result. -/// \param __e -/// A single-precision floating-point value used to initialize bits [159:128] -/// of the result. -/// \param __f -/// A single-precision floating-point value used to initialize bits [191:160] -/// of the result. -/// \param __g -/// A single-precision floating-point value used to initialize bits [223:192] -/// of the result. -/// \param __h -/// A single-precision floating-point value used to initialize bits [255:224] -/// of the result. -/// \returns An initialized 256-bit floating-point vector of [8 x float]. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_setr_ps(float __a, float __b, float __c, float __d, - float __e, float __f, float __g, float __h) -{ - return _mm256_set_ps(__h, __g, __f, __e, __d, __c, __b, __a); -} - -/// Constructs a 256-bit integer vector, initialized in reverse order -/// with the specified 32-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __i0 -/// A 32-bit integral value used to initialize bits [31:0] of the result. -/// \param __i1 -/// A 32-bit integral value used to initialize bits [63:32] of the result. -/// \param __i2 -/// A 32-bit integral value used to initialize bits [95:64] of the result. -/// \param __i3 -/// A 32-bit integral value used to initialize bits [127:96] of the result. -/// \param __i4 -/// A 32-bit integral value used to initialize bits [159:128] of the result. -/// \param __i5 -/// A 32-bit integral value used to initialize bits [191:160] of the result. -/// \param __i6 -/// A 32-bit integral value used to initialize bits [223:192] of the result. -/// \param __i7 -/// A 32-bit integral value used to initialize bits [255:224] of the result. -/// \returns An initialized 256-bit integer vector. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_setr_epi32(int __i0, int __i1, int __i2, int __i3, - int __i4, int __i5, int __i6, int __i7) -{ - return _mm256_set_epi32(__i7, __i6, __i5, __i4, __i3, __i2, __i1, __i0); -} - -/// Constructs a 256-bit integer vector, initialized in reverse order -/// with the specified 16-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __w15 -/// A 16-bit integral value used to initialize bits [15:0] of the result. -/// \param __w14 -/// A 16-bit integral value used to initialize bits [31:16] of the result. -/// \param __w13 -/// A 16-bit integral value used to initialize bits [47:32] of the result. -/// \param __w12 -/// A 16-bit integral value used to initialize bits [63:48] of the result. -/// \param __w11 -/// A 16-bit integral value used to initialize bits [79:64] of the result. -/// \param __w10 -/// A 16-bit integral value used to initialize bits [95:80] of the result. -/// \param __w09 -/// A 16-bit integral value used to initialize bits [111:96] of the result. -/// \param __w08 -/// A 16-bit integral value used to initialize bits [127:112] of the result. -/// \param __w07 -/// A 16-bit integral value used to initialize bits [143:128] of the result. -/// \param __w06 -/// A 16-bit integral value used to initialize bits [159:144] of the result. -/// \param __w05 -/// A 16-bit integral value used to initialize bits [175:160] of the result. -/// \param __w04 -/// A 16-bit integral value used to initialize bits [191:176] of the result. -/// \param __w03 -/// A 16-bit integral value used to initialize bits [207:192] of the result. -/// \param __w02 -/// A 16-bit integral value used to initialize bits [223:208] of the result. -/// \param __w01 -/// A 16-bit integral value used to initialize bits [239:224] of the result. -/// \param __w00 -/// A 16-bit integral value used to initialize bits [255:240] of the result. -/// \returns An initialized 256-bit integer vector. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_setr_epi16(short __w15, short __w14, short __w13, short __w12, - short __w11, short __w10, short __w09, short __w08, - short __w07, short __w06, short __w05, short __w04, - short __w03, short __w02, short __w01, short __w00) -{ - return _mm256_set_epi16(__w00, __w01, __w02, __w03, - __w04, __w05, __w06, __w07, - __w08, __w09, __w10, __w11, - __w12, __w13, __w14, __w15); -} - -/// Constructs a 256-bit integer vector, initialized in reverse order -/// with the specified 8-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __b31 -/// An 8-bit integral value used to initialize bits [7:0] of the result. -/// \param __b30 -/// An 8-bit integral value used to initialize bits [15:8] of the result. -/// \param __b29 -/// An 8-bit integral value used to initialize bits [23:16] of the result. -/// \param __b28 -/// An 8-bit integral value used to initialize bits [31:24] of the result. -/// \param __b27 -/// An 8-bit integral value used to initialize bits [39:32] of the result. -/// \param __b26 -/// An 8-bit integral value used to initialize bits [47:40] of the result. -/// \param __b25 -/// An 8-bit integral value used to initialize bits [55:48] of the result. -/// \param __b24 -/// An 8-bit integral value used to initialize bits [63:56] of the result. -/// \param __b23 -/// An 8-bit integral value used to initialize bits [71:64] of the result. -/// \param __b22 -/// An 8-bit integral value used to initialize bits [79:72] of the result. -/// \param __b21 -/// An 8-bit integral value used to initialize bits [87:80] of the result. -/// \param __b20 -/// An 8-bit integral value used to initialize bits [95:88] of the result. -/// \param __b19 -/// An 8-bit integral value used to initialize bits [103:96] of the result. -/// \param __b18 -/// An 8-bit integral value used to initialize bits [111:104] of the result. -/// \param __b17 -/// An 8-bit integral value used to initialize bits [119:112] of the result. -/// \param __b16 -/// An 8-bit integral value used to initialize bits [127:120] of the result. -/// \param __b15 -/// An 8-bit integral value used to initialize bits [135:128] of the result. -/// \param __b14 -/// An 8-bit integral value used to initialize bits [143:136] of the result. -/// \param __b13 -/// An 8-bit integral value used to initialize bits [151:144] of the result. -/// \param __b12 -/// An 8-bit integral value used to initialize bits [159:152] of the result. -/// \param __b11 -/// An 8-bit integral value used to initialize bits [167:160] of the result. -/// \param __b10 -/// An 8-bit integral value used to initialize bits [175:168] of the result. -/// \param __b09 -/// An 8-bit integral value used to initialize bits [183:176] of the result. -/// \param __b08 -/// An 8-bit integral value used to initialize bits [191:184] of the result. -/// \param __b07 -/// An 8-bit integral value used to initialize bits [199:192] of the result. -/// \param __b06 -/// An 8-bit integral value used to initialize bits [207:200] of the result. -/// \param __b05 -/// An 8-bit integral value used to initialize bits [215:208] of the result. -/// \param __b04 -/// An 8-bit integral value used to initialize bits [223:216] of the result. -/// \param __b03 -/// An 8-bit integral value used to initialize bits [231:224] of the result. -/// \param __b02 -/// An 8-bit integral value used to initialize bits [239:232] of the result. -/// \param __b01 -/// An 8-bit integral value used to initialize bits [247:240] of the result. -/// \param __b00 -/// An 8-bit integral value used to initialize bits [255:248] of the result. -/// \returns An initialized 256-bit integer vector. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_setr_epi8(char __b31, char __b30, char __b29, char __b28, - char __b27, char __b26, char __b25, char __b24, - char __b23, char __b22, char __b21, char __b20, - char __b19, char __b18, char __b17, char __b16, - char __b15, char __b14, char __b13, char __b12, - char __b11, char __b10, char __b09, char __b08, - char __b07, char __b06, char __b05, char __b04, - char __b03, char __b02, char __b01, char __b00) -{ - return _mm256_set_epi8(__b00, __b01, __b02, __b03, __b04, __b05, __b06, __b07, - __b08, __b09, __b10, __b11, __b12, __b13, __b14, __b15, - __b16, __b17, __b18, __b19, __b20, __b21, __b22, __b23, - __b24, __b25, __b26, __b27, __b28, __b29, __b30, __b31); -} - -/// Constructs a 256-bit integer vector, initialized in reverse order -/// with the specified 64-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKLQDQ+VINSERTF128 </c> -/// instruction. -/// -/// \param __a -/// A 64-bit integral value used to initialize bits [63:0] of the result. -/// \param __b -/// A 64-bit integral value used to initialize bits [127:64] of the result. -/// \param __c -/// A 64-bit integral value used to initialize bits [191:128] of the result. -/// \param __d -/// A 64-bit integral value used to initialize bits [255:192] of the result. -/// \returns An initialized 256-bit integer vector. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_setr_epi64x(long long __a, long long __b, long long __c, long long __d) -{ - return _mm256_set_epi64x(__d, __c, __b, __a); -} - -/* Create vectors with repeated elements */ -/// Constructs a 256-bit floating-point vector of [4 x double], with each -/// of the four double-precision floating-point vector elements set to the -/// specified double-precision floating-point value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDDUP+VINSERTF128 </c> instruction. -/// -/// \param __w -/// A double-precision floating-point value used to initialize each vector -/// element of the result. -/// \returns An initialized 256-bit floating-point vector of [4 x double]. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_set1_pd(double __w) -{ - return _mm256_set_pd(__w, __w, __w, __w); -} - -/// Constructs a 256-bit floating-point vector of [8 x float], with each -/// of the eight single-precision floating-point vector elements set to the -/// specified single-precision floating-point value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPERMILPS+VINSERTF128 </c> -/// instruction. -/// -/// \param __w -/// A single-precision floating-point value used to initialize each vector -/// element of the result. -/// \returns An initialized 256-bit floating-point vector of [8 x float]. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_set1_ps(float __w) -{ - return _mm256_set_ps(__w, __w, __w, __w, __w, __w, __w, __w); -} - -/// Constructs a 256-bit integer vector of [8 x i32], with each of the -/// 32-bit integral vector elements set to the specified 32-bit integral -/// value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPERMILPS+VINSERTF128 </c> -/// instruction. -/// -/// \param __i -/// A 32-bit integral value used to initialize each vector element of the -/// result. -/// \returns An initialized 256-bit integer vector of [8 x i32]. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set1_epi32(int __i) -{ - return _mm256_set_epi32(__i, __i, __i, __i, __i, __i, __i, __i); -} - -/// Constructs a 256-bit integer vector of [16 x i16], with each of the -/// 16-bit integral vector elements set to the specified 16-bit integral -/// value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSHUFB+VINSERTF128 </c> instruction. -/// -/// \param __w -/// A 16-bit integral value used to initialize each vector element of the -/// result. -/// \returns An initialized 256-bit integer vector of [16 x i16]. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set1_epi16(short __w) -{ - return _mm256_set_epi16(__w, __w, __w, __w, __w, __w, __w, __w, - __w, __w, __w, __w, __w, __w, __w, __w); -} - -/// Constructs a 256-bit integer vector of [32 x i8], with each of the -/// 8-bit integral vector elements set to the specified 8-bit integral value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSHUFB+VINSERTF128 </c> instruction. -/// -/// \param __b -/// An 8-bit integral value used to initialize each vector element of the -/// result. -/// \returns An initialized 256-bit integer vector of [32 x i8]. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set1_epi8(char __b) -{ - return _mm256_set_epi8(__b, __b, __b, __b, __b, __b, __b, __b, - __b, __b, __b, __b, __b, __b, __b, __b, - __b, __b, __b, __b, __b, __b, __b, __b, - __b, __b, __b, __b, __b, __b, __b, __b); -} - -/// Constructs a 256-bit integer vector of [4 x i64], with each of the -/// 64-bit integral vector elements set to the specified 64-bit integral -/// value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDDUP+VINSERTF128 </c> instruction. -/// -/// \param __q -/// A 64-bit integral value used to initialize each vector element of the -/// result. -/// \returns An initialized 256-bit integer vector of [4 x i64]. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set1_epi64x(long long __q) -{ - return _mm256_set_epi64x(__q, __q, __q, __q); -} - -/* Create __zeroed vectors */ -/// Constructs a 256-bit floating-point vector of [4 x double] with all -/// vector elements initialized to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPS </c> instruction. -/// -/// \returns A 256-bit vector of [4 x double] with all elements set to zero. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_setzero_pd(void) -{ - return __extension__ (__m256d){ 0.0, 0.0, 0.0, 0.0 }; -} - -/// Constructs a 256-bit floating-point vector of [8 x float] with all -/// vector elements initialized to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPS </c> instruction. -/// -/// \returns A 256-bit vector of [8 x float] with all elements set to zero. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_setzero_ps(void) -{ - return __extension__ (__m256){ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }; -} - -/// Constructs a 256-bit integer vector initialized to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPS </c> instruction. -/// -/// \returns A 256-bit integer vector initialized to zero. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_setzero_si256(void) -{ - return __extension__ (__m256i)(__v4di){ 0, 0, 0, 0 }; -} - -/* Cast between vector types */ -/// Casts a 256-bit floating-point vector of [4 x double] into a 256-bit -/// floating-point vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit floating-point vector of [4 x double]. -/// \returns A 256-bit floating-point vector of [8 x float] containing the same -/// bitwise pattern as the parameter. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_castpd_ps(__m256d __a) -{ - return (__m256)__a; -} - -/// Casts a 256-bit floating-point vector of [4 x double] into a 256-bit -/// integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit floating-point vector of [4 x double]. -/// \returns A 256-bit integer vector containing the same bitwise pattern as the -/// parameter. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_castpd_si256(__m256d __a) -{ - return (__m256i)__a; -} - -/// Casts a 256-bit floating-point vector of [8 x float] into a 256-bit -/// floating-point vector of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit floating-point vector of [8 x float]. -/// \returns A 256-bit floating-point vector of [4 x double] containing the same -/// bitwise pattern as the parameter. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_castps_pd(__m256 __a) -{ - return (__m256d)__a; -} - -/// Casts a 256-bit floating-point vector of [8 x float] into a 256-bit -/// integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit floating-point vector of [8 x float]. -/// \returns A 256-bit integer vector containing the same bitwise pattern as the -/// parameter. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_castps_si256(__m256 __a) -{ - return (__m256i)__a; -} - -/// Casts a 256-bit integer vector into a 256-bit floating-point vector -/// of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit integer vector. -/// \returns A 256-bit floating-point vector of [8 x float] containing the same -/// bitwise pattern as the parameter. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_castsi256_ps(__m256i __a) -{ - return (__m256)__a; -} - -/// Casts a 256-bit integer vector into a 256-bit floating-point vector -/// of [4 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit integer vector. -/// \returns A 256-bit floating-point vector of [4 x double] containing the same -/// bitwise pattern as the parameter. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_castsi256_pd(__m256i __a) -{ - return (__m256d)__a; -} - -/// Returns the lower 128 bits of a 256-bit floating-point vector of -/// [4 x double] as a 128-bit floating-point vector of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit floating-point vector of [4 x double]. -/// \returns A 128-bit floating-point vector of [2 x double] containing the -/// lower 128 bits of the parameter. -static __inline __m128d __DEFAULT_FN_ATTRS -_mm256_castpd256_pd128(__m256d __a) -{ - return __builtin_shufflevector((__v4df)__a, (__v4df)__a, 0, 1); -} - -/// Returns the lower 128 bits of a 256-bit floating-point vector of -/// [8 x float] as a 128-bit floating-point vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit floating-point vector of [8 x float]. -/// \returns A 128-bit floating-point vector of [4 x float] containing the -/// lower 128 bits of the parameter. -static __inline __m128 __DEFAULT_FN_ATTRS -_mm256_castps256_ps128(__m256 __a) -{ - return __builtin_shufflevector((__v8sf)__a, (__v8sf)__a, 0, 1, 2, 3); -} - -/// Truncates a 256-bit integer vector into a 128-bit integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 256-bit integer vector. -/// \returns A 128-bit integer vector containing the lower 128 bits of the -/// parameter. -static __inline __m128i __DEFAULT_FN_ATTRS -_mm256_castsi256_si128(__m256i __a) -{ - return __builtin_shufflevector((__v4di)__a, (__v4di)__a, 0, 1); -} - -/// Constructs a 256-bit floating-point vector of [4 x double] from a -/// 128-bit floating-point vector of [2 x double]. -/// -/// The lower 128 bits contain the value of the source vector. The contents -/// of the upper 128 bits are undefined. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 256-bit floating-point vector of [4 x double]. The lower 128 bits -/// contain the value of the parameter. The contents of the upper 128 bits -/// are undefined. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_castpd128_pd256(__m128d __a) -{ - return __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 1, -1, -1); -} - -/// Constructs a 256-bit floating-point vector of [8 x float] from a -/// 128-bit floating-point vector of [4 x float]. -/// -/// The lower 128 bits contain the value of the source vector. The contents -/// of the upper 128 bits are undefined. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 256-bit floating-point vector of [8 x float]. The lower 128 bits -/// contain the value of the parameter. The contents of the upper 128 bits -/// are undefined. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_castps128_ps256(__m128 __a) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 1, 2, 3, -1, -1, -1, -1); -} - -/// Constructs a 256-bit integer vector from a 128-bit integer vector. -/// -/// The lower 128 bits contain the value of the source vector. The contents -/// of the upper 128 bits are undefined. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \returns A 256-bit integer vector. The lower 128 bits contain the value of -/// the parameter. The contents of the upper 128 bits are undefined. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_castsi128_si256(__m128i __a) -{ - return __builtin_shufflevector((__v2di)__a, (__v2di)__a, 0, 1, -1, -1); -} - -/// Constructs a 256-bit floating-point vector of [4 x double] from a -/// 128-bit floating-point vector of [2 x double]. The lower 128 bits -/// contain the value of the source vector. The upper 128 bits are set -/// to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 256-bit floating-point vector of [4 x double]. The lower 128 bits -/// contain the value of the parameter. The upper 128 bits are set to zero. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_zextpd128_pd256(__m128d __a) -{ - return __builtin_shufflevector((__v2df)__a, (__v2df)_mm_setzero_pd(), 0, 1, 2, 3); -} - -/// Constructs a 256-bit floating-point vector of [8 x float] from a -/// 128-bit floating-point vector of [4 x float]. The lower 128 bits contain -/// the value of the source vector. The upper 128 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 256-bit floating-point vector of [8 x float]. The lower 128 bits -/// contain the value of the parameter. The upper 128 bits are set to zero. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_zextps128_ps256(__m128 __a) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)_mm_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7); -} - -/// Constructs a 256-bit integer vector from a 128-bit integer vector. -/// The lower 128 bits contain the value of the source vector. The upper -/// 128 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \returns A 256-bit integer vector. The lower 128 bits contain the value of -/// the parameter. The upper 128 bits are set to zero. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_zextsi128_si256(__m128i __a) -{ - return __builtin_shufflevector((__v2di)__a, (__v2di)_mm_setzero_si128(), 0, 1, 2, 3); -} - -/* - Vector insert. - We use macros rather than inlines because we only want to accept - invocations where the immediate M is a constant expression. -*/ -/// Constructs a new 256-bit vector of [8 x float] by first duplicating -/// a 256-bit vector of [8 x float] given in the first parameter, and then -/// replacing either the upper or the lower 128 bits with the contents of a -/// 128-bit vector of [4 x float] in the second parameter. -/// -/// The immediate integer parameter determines between the upper or the lower -/// 128 bits. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256 _mm256_insertf128_ps(__m256 V1, __m128 V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param V1 -/// A 256-bit vector of [8 x float]. This vector is copied to the result -/// first, and then either the upper or the lower 128 bits of the result will -/// be replaced by the contents of \a V2. -/// \param V2 -/// A 128-bit vector of [4 x float]. The contents of this parameter are -/// written to either the upper or the lower 128 bits of the result depending -/// on the value of parameter \a M. -/// \param M -/// An immediate integer. The least significant bit determines how the values -/// from the two parameters are interleaved: \n -/// If bit [0] of \a M is 0, \a V2 are copied to bits [127:0] of the result, -/// and bits [255:128] of \a V1 are copied to bits [255:128] of the -/// result. \n -/// If bit [0] of \a M is 1, \a V2 are copied to bits [255:128] of the -/// result, and bits [127:0] of \a V1 are copied to bits [127:0] of the -/// result. -/// \returns A 256-bit vector of [8 x float] containing the interleaved values. -#define _mm256_insertf128_ps(V1, V2, M) \ - ((__m256)__builtin_ia32_vinsertf128_ps256((__v8sf)(__m256)(V1), \ - (__v4sf)(__m128)(V2), (int)(M))) - -/// Constructs a new 256-bit vector of [4 x double] by first duplicating -/// a 256-bit vector of [4 x double] given in the first parameter, and then -/// replacing either the upper or the lower 128 bits with the contents of a -/// 128-bit vector of [2 x double] in the second parameter. -/// -/// The immediate integer parameter determines between the upper or the lower -/// 128 bits. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256d _mm256_insertf128_pd(__m256d V1, __m128d V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param V1 -/// A 256-bit vector of [4 x double]. This vector is copied to the result -/// first, and then either the upper or the lower 128 bits of the result will -/// be replaced by the contents of \a V2. -/// \param V2 -/// A 128-bit vector of [2 x double]. The contents of this parameter are -/// written to either the upper or the lower 128 bits of the result depending -/// on the value of parameter \a M. -/// \param M -/// An immediate integer. The least significant bit determines how the values -/// from the two parameters are interleaved: \n -/// If bit [0] of \a M is 0, \a V2 are copied to bits [127:0] of the result, -/// and bits [255:128] of \a V1 are copied to bits [255:128] of the -/// result. \n -/// If bit [0] of \a M is 1, \a V2 are copied to bits [255:128] of the -/// result, and bits [127:0] of \a V1 are copied to bits [127:0] of the -/// result. -/// \returns A 256-bit vector of [4 x double] containing the interleaved values. -#define _mm256_insertf128_pd(V1, V2, M) \ - ((__m256d)__builtin_ia32_vinsertf128_pd256((__v4df)(__m256d)(V1), \ - (__v2df)(__m128d)(V2), (int)(M))) - -/// Constructs a new 256-bit integer vector by first duplicating a -/// 256-bit integer vector given in the first parameter, and then replacing -/// either the upper or the lower 128 bits with the contents of a 128-bit -/// integer vector in the second parameter. -/// -/// The immediate integer parameter determines between the upper or the lower -/// 128 bits. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m256i _mm256_insertf128_si256(__m256i V1, __m128i V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param V1 -/// A 256-bit integer vector. This vector is copied to the result first, and -/// then either the upper or the lower 128 bits of the result will be -/// replaced by the contents of \a V2. -/// \param V2 -/// A 128-bit integer vector. The contents of this parameter are written to -/// either the upper or the lower 128 bits of the result depending on the -/// value of parameter \a M. -/// \param M -/// An immediate integer. The least significant bit determines how the values -/// from the two parameters are interleaved: \n -/// If bit [0] of \a M is 0, \a V2 are copied to bits [127:0] of the result, -/// and bits [255:128] of \a V1 are copied to bits [255:128] of the -/// result. \n -/// If bit [0] of \a M is 1, \a V2 are copied to bits [255:128] of the -/// result, and bits [127:0] of \a V1 are copied to bits [127:0] of the -/// result. -/// \returns A 256-bit integer vector containing the interleaved values. -#define _mm256_insertf128_si256(V1, V2, M) \ - ((__m256i)__builtin_ia32_vinsertf128_si256((__v8si)(__m256i)(V1), \ - (__v4si)(__m128i)(V2), (int)(M))) - -/* - Vector extract. - We use macros rather than inlines because we only want to accept - invocations where the immediate M is a constant expression. -*/ -/// Extracts either the upper or the lower 128 bits from a 256-bit vector -/// of [8 x float], as determined by the immediate integer parameter, and -/// returns the extracted bits as a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm256_extractf128_ps(__m256 V, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction. -/// -/// \param V -/// A 256-bit vector of [8 x float]. -/// \param M -/// An immediate integer. The least significant bit determines which bits are -/// extracted from the first parameter: \n -/// If bit [0] of \a M is 0, bits [127:0] of \a V are copied to the -/// result. \n -/// If bit [0] of \a M is 1, bits [255:128] of \a V are copied to the result. -/// \returns A 128-bit vector of [4 x float] containing the extracted bits. -#define _mm256_extractf128_ps(V, M) \ - ((__m128)__builtin_ia32_vextractf128_ps256((__v8sf)(__m256)(V), (int)(M))) - -/// Extracts either the upper or the lower 128 bits from a 256-bit vector -/// of [4 x double], as determined by the immediate integer parameter, and -/// returns the extracted bits as a 128-bit vector of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm256_extractf128_pd(__m256d V, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction. -/// -/// \param V -/// A 256-bit vector of [4 x double]. -/// \param M -/// An immediate integer. The least significant bit determines which bits are -/// extracted from the first parameter: \n -/// If bit [0] of \a M is 0, bits [127:0] of \a V are copied to the -/// result. \n -/// If bit [0] of \a M is 1, bits [255:128] of \a V are copied to the result. -/// \returns A 128-bit vector of [2 x double] containing the extracted bits. -#define _mm256_extractf128_pd(V, M) \ - ((__m128d)__builtin_ia32_vextractf128_pd256((__v4df)(__m256d)(V), (int)(M))) - -/// Extracts either the upper or the lower 128 bits from a 256-bit -/// integer vector, as determined by the immediate integer parameter, and -/// returns the extracted bits as a 128-bit integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm256_extractf128_si256(__m256i V, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction. -/// -/// \param V -/// A 256-bit integer vector. -/// \param M -/// An immediate integer. The least significant bit determines which bits are -/// extracted from the first parameter: \n -/// If bit [0] of \a M is 0, bits [127:0] of \a V are copied to the -/// result. \n -/// If bit [0] of \a M is 1, bits [255:128] of \a V are copied to the result. -/// \returns A 128-bit integer vector containing the extracted bits. -#define _mm256_extractf128_si256(V, M) \ - ((__m128i)__builtin_ia32_vextractf128_si256((__v8si)(__m256i)(V), (int)(M))) - -/// Constructs a 256-bit floating-point vector of [8 x float] by -/// concatenating two 128-bit floating-point vectors of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param __hi -/// A 128-bit floating-point vector of [4 x float] to be copied to the upper -/// 128 bits of the result. -/// \param __lo -/// A 128-bit floating-point vector of [4 x float] to be copied to the lower -/// 128 bits of the result. -/// \returns A 256-bit floating-point vector of [8 x float] containing the -/// concatenated result. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_set_m128 (__m128 __hi, __m128 __lo) -{ - return (__m256) __builtin_shufflevector((__v4sf)__lo, (__v4sf)__hi, 0, 1, 2, 3, 4, 5, 6, 7); -} - -/// Constructs a 256-bit floating-point vector of [4 x double] by -/// concatenating two 128-bit floating-point vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param __hi -/// A 128-bit floating-point vector of [2 x double] to be copied to the upper -/// 128 bits of the result. -/// \param __lo -/// A 128-bit floating-point vector of [2 x double] to be copied to the lower -/// 128 bits of the result. -/// \returns A 256-bit floating-point vector of [4 x double] containing the -/// concatenated result. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_set_m128d (__m128d __hi, __m128d __lo) -{ - return (__m256d) __builtin_shufflevector((__v2df)__lo, (__v2df)__hi, 0, 1, 2, 3); -} - -/// Constructs a 256-bit integer vector by concatenating two 128-bit -/// integer vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param __hi -/// A 128-bit integer vector to be copied to the upper 128 bits of the -/// result. -/// \param __lo -/// A 128-bit integer vector to be copied to the lower 128 bits of the -/// result. -/// \returns A 256-bit integer vector containing the concatenated result. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_set_m128i (__m128i __hi, __m128i __lo) -{ - return (__m256i) __builtin_shufflevector((__v2di)__lo, (__v2di)__hi, 0, 1, 2, 3); -} - -/// Constructs a 256-bit floating-point vector of [8 x float] by -/// concatenating two 128-bit floating-point vectors of [4 x float]. This is -/// similar to _mm256_set_m128, but the order of the input parameters is -/// swapped. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param __lo -/// A 128-bit floating-point vector of [4 x float] to be copied to the lower -/// 128 bits of the result. -/// \param __hi -/// A 128-bit floating-point vector of [4 x float] to be copied to the upper -/// 128 bits of the result. -/// \returns A 256-bit floating-point vector of [8 x float] containing the -/// concatenated result. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_setr_m128 (__m128 __lo, __m128 __hi) -{ - return _mm256_set_m128(__hi, __lo); -} - -/// Constructs a 256-bit floating-point vector of [4 x double] by -/// concatenating two 128-bit floating-point vectors of [2 x double]. This is -/// similar to _mm256_set_m128d, but the order of the input parameters is -/// swapped. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param __lo -/// A 128-bit floating-point vector of [2 x double] to be copied to the lower -/// 128 bits of the result. -/// \param __hi -/// A 128-bit floating-point vector of [2 x double] to be copied to the upper -/// 128 bits of the result. -/// \returns A 256-bit floating-point vector of [4 x double] containing the -/// concatenated result. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_setr_m128d (__m128d __lo, __m128d __hi) -{ - return (__m256d)_mm256_set_m128d(__hi, __lo); -} - -/// Constructs a 256-bit integer vector by concatenating two 128-bit -/// integer vectors. This is similar to _mm256_set_m128i, but the order of -/// the input parameters is swapped. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VINSERTF128 </c> instruction. -/// -/// \param __lo -/// A 128-bit integer vector to be copied to the lower 128 bits of the -/// result. -/// \param __hi -/// A 128-bit integer vector to be copied to the upper 128 bits of the -/// result. -/// \returns A 256-bit integer vector containing the concatenated result. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_setr_m128i (__m128i __lo, __m128i __hi) -{ - return (__m256i)_mm256_set_m128i(__hi, __lo); -} - -/* SIMD load ops (unaligned) */ -/// Loads two 128-bit floating-point vectors of [4 x float] from -/// unaligned memory locations and constructs a 256-bit floating-point vector -/// of [8 x float] by concatenating the two 128-bit vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to load instructions followed by the -/// <c> VINSERTF128 </c> instruction. -/// -/// \param __addr_hi -/// A pointer to a 128-bit memory location containing 4 consecutive -/// single-precision floating-point values. These values are to be copied to -/// bits[255:128] of the result. The address of the memory location does not -/// have to be aligned. -/// \param __addr_lo -/// A pointer to a 128-bit memory location containing 4 consecutive -/// single-precision floating-point values. These values are to be copied to -/// bits[127:0] of the result. The address of the memory location does not -/// have to be aligned. -/// \returns A 256-bit floating-point vector of [8 x float] containing the -/// concatenated result. -static __inline __m256 __DEFAULT_FN_ATTRS -_mm256_loadu2_m128(float const *__addr_hi, float const *__addr_lo) -{ - return _mm256_set_m128(_mm_loadu_ps(__addr_hi), _mm_loadu_ps(__addr_lo)); -} - -/// Loads two 128-bit floating-point vectors of [2 x double] from -/// unaligned memory locations and constructs a 256-bit floating-point vector -/// of [4 x double] by concatenating the two 128-bit vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to load instructions followed by the -/// <c> VINSERTF128 </c> instruction. -/// -/// \param __addr_hi -/// A pointer to a 128-bit memory location containing two consecutive -/// double-precision floating-point values. These values are to be copied to -/// bits[255:128] of the result. The address of the memory location does not -/// have to be aligned. -/// \param __addr_lo -/// A pointer to a 128-bit memory location containing two consecutive -/// double-precision floating-point values. These values are to be copied to -/// bits[127:0] of the result. The address of the memory location does not -/// have to be aligned. -/// \returns A 256-bit floating-point vector of [4 x double] containing the -/// concatenated result. -static __inline __m256d __DEFAULT_FN_ATTRS -_mm256_loadu2_m128d(double const *__addr_hi, double const *__addr_lo) -{ - return _mm256_set_m128d(_mm_loadu_pd(__addr_hi), _mm_loadu_pd(__addr_lo)); -} - -/// Loads two 128-bit integer vectors from unaligned memory locations and -/// constructs a 256-bit integer vector by concatenating the two 128-bit -/// vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to load instructions followed by the -/// <c> VINSERTF128 </c> instruction. -/// -/// \param __addr_hi -/// A pointer to a 128-bit memory location containing a 128-bit integer -/// vector. This vector is to be copied to bits[255:128] of the result. The -/// address of the memory location does not have to be aligned. -/// \param __addr_lo -/// A pointer to a 128-bit memory location containing a 128-bit integer -/// vector. This vector is to be copied to bits[127:0] of the result. The -/// address of the memory location does not have to be aligned. -/// \returns A 256-bit integer vector containing the concatenated result. -static __inline __m256i __DEFAULT_FN_ATTRS -_mm256_loadu2_m128i(__m128i_u const *__addr_hi, __m128i_u const *__addr_lo) -{ - return _mm256_set_m128i(_mm_loadu_si128(__addr_hi), _mm_loadu_si128(__addr_lo)); -} - -/* SIMD store ops (unaligned) */ -/// Stores the upper and lower 128 bits of a 256-bit floating-point -/// vector of [8 x float] into two different unaligned memory locations. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction and the -/// store instructions. -/// -/// \param __addr_hi -/// A pointer to a 128-bit memory location. Bits[255:128] of \a __a are to be -/// copied to this memory location. The address of this memory location does -/// not have to be aligned. -/// \param __addr_lo -/// A pointer to a 128-bit memory location. Bits[127:0] of \a __a are to be -/// copied to this memory location. The address of this memory location does -/// not have to be aligned. -/// \param __a -/// A 256-bit floating-point vector of [8 x float]. -static __inline void __DEFAULT_FN_ATTRS -_mm256_storeu2_m128(float *__addr_hi, float *__addr_lo, __m256 __a) -{ - __m128 __v128; - - __v128 = _mm256_castps256_ps128(__a); - _mm_storeu_ps(__addr_lo, __v128); - __v128 = _mm256_extractf128_ps(__a, 1); - _mm_storeu_ps(__addr_hi, __v128); -} - -/// Stores the upper and lower 128 bits of a 256-bit floating-point -/// vector of [4 x double] into two different unaligned memory locations. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction and the -/// store instructions. -/// -/// \param __addr_hi -/// A pointer to a 128-bit memory location. Bits[255:128] of \a __a are to be -/// copied to this memory location. The address of this memory location does -/// not have to be aligned. -/// \param __addr_lo -/// A pointer to a 128-bit memory location. Bits[127:0] of \a __a are to be -/// copied to this memory location. The address of this memory location does -/// not have to be aligned. -/// \param __a -/// A 256-bit floating-point vector of [4 x double]. -static __inline void __DEFAULT_FN_ATTRS -_mm256_storeu2_m128d(double *__addr_hi, double *__addr_lo, __m256d __a) -{ - __m128d __v128; - - __v128 = _mm256_castpd256_pd128(__a); - _mm_storeu_pd(__addr_lo, __v128); - __v128 = _mm256_extractf128_pd(__a, 1); - _mm_storeu_pd(__addr_hi, __v128); -} - -/// Stores the upper and lower 128 bits of a 256-bit integer vector into -/// two different unaligned memory locations. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VEXTRACTF128 </c> instruction and the -/// store instructions. -/// -/// \param __addr_hi -/// A pointer to a 128-bit memory location. Bits[255:128] of \a __a are to be -/// copied to this memory location. The address of this memory location does -/// not have to be aligned. -/// \param __addr_lo -/// A pointer to a 128-bit memory location. Bits[127:0] of \a __a are to be -/// copied to this memory location. The address of this memory location does -/// not have to be aligned. -/// \param __a -/// A 256-bit integer vector. -static __inline void __DEFAULT_FN_ATTRS -_mm256_storeu2_m128i(__m128i_u *__addr_hi, __m128i_u *__addr_lo, __m256i __a) -{ - __m128i __v128; - - __v128 = _mm256_castsi256_si128(__a); - _mm_storeu_si128(__addr_lo, __v128); - __v128 = _mm256_extractf128_si256(__a, 1); - _mm_storeu_si128(__addr_hi, __v128); -} - -#undef __DEFAULT_FN_ATTRS -#undef __DEFAULT_FN_ATTRS128 - -#endif /* __AVXINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxintrin.h.blob deleted file mode 100644 index b3d4df303ae5333317b3caec8dda7e2c2881694b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 184697 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 B!_)u( diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h deleted file mode 100644 index 1bef1c89..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h +++ /dev/null @@ -1,484 +0,0 @@ -/*===-------------- avxneconvertintrin.h - AVXNECONVERT --------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error \ - "Never use <avxneconvertintrin.h> directly; include <immintrin.h> instead." -#endif // __IMMINTRIN_H - -#ifdef __SSE2__ - -#ifndef __AVXNECONVERTINTRIN_H -#define __AVXNECONVERTINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, __target__("avxneconvert"), \ - __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, __target__("avxneconvert"), \ - __min_vector_width__(256))) - -/// Convert scalar BF16 (16-bit) floating-point element -/// stored at memory locations starting at location \a __A to a -/// single-precision (32-bit) floating-point, broadcast it to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_bcstnebf16_ps(const void *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VBCSTNEBF162PS instruction. -/// -/// \param __A -/// A pointer to a 16-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns -/// A 128-bit vector of [4 x float]. -/// -/// \code{.operation} -/// b := Convert_BF16_To_FP32(MEM[__A+15:__A]) -/// FOR j := 0 to 3 -/// m := j*32 -/// dst[m+31:m] := b -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_bcstnebf16_ps(const void *__A) { - return (__m128)__builtin_ia32_vbcstnebf162ps128((const __bf16 *)__A); -} - -/// Convert scalar BF16 (16-bit) floating-point element -/// stored at memory locations starting at location \a __A to a -/// single-precision (32-bit) floating-point, broadcast it to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_bcstnebf16_ps(const void *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VBCSTNEBF162PS instruction. -/// -/// \param __A -/// A pointer to a 16-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns -/// A 256-bit vector of [8 x float]. -/// -/// \code{.operation} -/// b := Convert_BF16_To_FP32(MEM[__A+15:__A]) -/// FOR j := 0 to 7 -/// m := j*32 -/// dst[m+31:m] := b -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_bcstnebf16_ps(const void *__A) { - return (__m256)__builtin_ia32_vbcstnebf162ps256((const __bf16 *)__A); -} - -/// Convert scalar half-precision (16-bit) floating-point element -/// stored at memory locations starting at location \a __A to a -/// single-precision (32-bit) floating-point, broadcast it to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_bcstnesh_ps(const void *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VBCSTNESH2PS instruction. -/// -/// \param __A -/// A pointer to a 16-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns -/// A 128-bit vector of [4 x float]. -/// -/// \code{.operation} -/// b := Convert_FP16_To_FP32(MEM[__A+15:__A]) -/// FOR j := 0 to 3 -/// m := j*32 -/// dst[m+31:m] := b -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_bcstnesh_ps(const void *__A) { - return (__m128)__builtin_ia32_vbcstnesh2ps128((const _Float16 *)__A); -} - -/// Convert scalar half-precision (16-bit) floating-point element -/// stored at memory locations starting at location \a __A to a -/// single-precision (32-bit) floating-point, broadcast it to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_bcstnesh_ps(const void *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VBCSTNESH2PS instruction. -/// -/// \param __A -/// A pointer to a 16-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns -/// A 256-bit vector of [8 x float]. -/// -/// \code{.operation} -/// b := Convert_FP16_To_FP32(MEM[__A+15:__A]) -/// FOR j := 0 to 7 -/// m := j*32 -/// dst[m+31:m] := b -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_bcstnesh_ps(const void *__A) { - return (__m256)__builtin_ia32_vbcstnesh2ps256((const _Float16 *)__A); -} - -/// Convert packed BF16 (16-bit) floating-point even-indexed elements -/// stored at memory locations starting at location \a __A to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_cvtneebf16_ps(const __m128bh *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEEBF162PS instruction. -/// -/// \param __A -/// A pointer to a 128-bit memory location containing 8 consecutive -/// BF16 (16-bit) floating-point values. -/// \returns -/// A 128-bit vector of [4 x float]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// k := j*2 -/// i := k*16 -/// m := j*32 -/// dst[m+31:m] := Convert_BF16_To_FP32(MEM[__A+i+15:__A+i]) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtneebf16_ps(const __m128bh *__A) { - return (__m128)__builtin_ia32_vcvtneebf162ps128((const __v8bf *)__A); -} - -/// Convert packed BF16 (16-bit) floating-point even-indexed elements -/// stored at memory locations starting at location \a __A to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_cvtneebf16_ps(const __m256bh *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEEBF162PS instruction. -/// -/// \param __A -/// A pointer to a 256-bit memory location containing 16 consecutive -/// BF16 (16-bit) floating-point values. -/// \returns -/// A 256-bit vector of [8 x float]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// k := j*2 -/// i := k*16 -/// m := j*32 -/// dst[m+31:m] := Convert_BF16_To_FP32(MEM[__A+i+15:__A+i]) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_cvtneebf16_ps(const __m256bh *__A) { - return (__m256)__builtin_ia32_vcvtneebf162ps256((const __v16bf *)__A); -} - -/// Convert packed half-precision (16-bit) floating-point even-indexed elements -/// stored at memory locations starting at location \a __A to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_cvtneeph_ps(const __m128h *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEEPH2PS instruction. -/// -/// \param __A -/// A pointer to a 128-bit memory location containing 8 consecutive -/// half-precision (16-bit) floating-point values. -/// \returns -/// A 128-bit vector of [4 x float]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// k := j*2 -/// i := k*16 -/// m := j*32 -/// dst[m+31:m] := Convert_FP16_To_FP32(MEM[__A+i+15:__A+i]) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtneeph_ps(const __m128h *__A) { - return (__m128)__builtin_ia32_vcvtneeph2ps128((const __v8hf *)__A); -} - -/// Convert packed half-precision (16-bit) floating-point even-indexed elements -/// stored at memory locations starting at location \a __A to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_cvtneeph_ps(const __m256h *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEEPH2PS instruction. -/// -/// \param __A -/// A pointer to a 256-bit memory location containing 16 consecutive -/// half-precision (16-bit) floating-point values. -/// \returns -/// A 256-bit vector of [8 x float]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// k := j*2 -/// i := k*16 -/// m := j*32 -/// dst[m+31:m] := Convert_FP16_To_FP32(MEM[__A+i+15:__A+i]) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_cvtneeph_ps(const __m256h *__A) { - return (__m256)__builtin_ia32_vcvtneeph2ps256((const __v16hf *)__A); -} - -/// Convert packed BF16 (16-bit) floating-point odd-indexed elements -/// stored at memory locations starting at location \a __A to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_cvtneobf16_ps(const __m128bh *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEOBF162PS instruction. -/// -/// \param __A -/// A pointer to a 128-bit memory location containing 8 consecutive -/// BF16 (16-bit) floating-point values. -/// \returns -/// A 128-bit vector of [4 x float]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// k := j*2+1 -/// i := k*16 -/// m := j*32 -/// dst[m+31:m] := Convert_BF16_To_FP32(MEM[__A+i+15:__A+i]) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtneobf16_ps(const __m128bh *__A) { - return (__m128)__builtin_ia32_vcvtneobf162ps128((const __v8bf *)__A); -} - -/// Convert packed BF16 (16-bit) floating-point odd-indexed elements -/// stored at memory locations starting at location \a __A to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_cvtneobf16_ps(const __m256bh *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEOBF162PS instruction. -/// -/// \param __A -/// A pointer to a 256-bit memory location containing 16 consecutive -/// BF16 (16-bit) floating-point values. -/// \returns -/// A 256-bit vector of [8 x float]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// k := j*2+1 -/// i := k*16 -/// m := j*32 -/// dst[m+31:m] := Convert_BF16_To_FP32(MEM[__A+i+15:__A+i]) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_cvtneobf16_ps(const __m256bh *__A) { - return (__m256)__builtin_ia32_vcvtneobf162ps256((const __v16bf *)__A); -} - -/// Convert packed half-precision (16-bit) floating-point odd-indexed elements -/// stored at memory locations starting at location \a __A to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_cvtneoph_ps(const __m128h *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEOPH2PS instruction. -/// -/// \param __A -/// A pointer to a 128-bit memory location containing 8 consecutive -/// half-precision (16-bit) floating-point values. -/// \returns -/// A 128-bit vector of [4 x float]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// k := j*2+1 -/// i := k*16 -/// m := j*32 -/// dst[m+31:m] := Convert_FP16_To_FP32(MEM[__A+i+15:__A+i]) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtneoph_ps(const __m128h *__A) { - return (__m128)__builtin_ia32_vcvtneoph2ps128((const __v8hf *)__A); -} - -/// Convert packed half-precision (16-bit) floating-point odd-indexed elements -/// stored at memory locations starting at location \a __A to packed -/// single-precision (32-bit) floating-point elements, and store the results in -/// \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_cvtneoph_ps(const __m256h *__A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEOPH2PS instruction. -/// -/// \param __A -/// A pointer to a 256-bit memory location containing 16 consecutive -/// half-precision (16-bit) floating-point values. -/// \returns -/// A 256-bit vector of [8 x float]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// k := j*2+1 -/// i := k*16 -/// m := j*32 -/// dst[m+31:m] := Convert_FP16_To_FP32(MEM[__A+i+15:__A+i]) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_cvtneoph_ps(const __m256h *__A) { - return (__m256)__builtin_ia32_vcvtneoph2ps256((const __v16hf *)__A); -} - -/// Convert packed single-precision (32-bit) floating-point elements in \a __A -/// to packed BF16 (16-bit) floating-point elements, and store the results in \a -/// dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_cvtneps_avx_pbh(__m128 __A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEPS2BF16 instruction. -/// -/// \param __A -/// A 128-bit vector of [4 x float]. -/// \returns -/// A 128-bit vector of [8 x bfloat]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// dst.word[j] := Convert_FP32_To_BF16(__A.fp32[j]) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128bh __DEFAULT_FN_ATTRS128 -_mm_cvtneps_avx_pbh(__m128 __A) { - return (__m128bh)__builtin_ia32_vcvtneps2bf16128((__v4sf)__A); -} - -/// Convert packed single-precision (32-bit) floating-point elements in \a __A -/// to packed BF16 (16-bit) floating-point elements, and store the results in \a -/// dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_cvtneps_avx_pbh(__m256 __A); -/// \endcode -/// -/// This intrinsic corresponds to the \c VCVTNEPS2BF16 instruction. -/// -/// \param __A -/// A 256-bit vector of [8 x float]. -/// \returns -/// A 128-bit vector of [8 x bfloat]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// dst.word[j] := Convert_FP32_To_BF16(a.fp32[j]) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128bh __DEFAULT_FN_ATTRS256 -_mm256_cvtneps_avx_pbh(__m256 __A) { - return (__m128bh)__builtin_ia32_vcvtneps2bf16256((__v8sf)__A); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif // __AVXNECONVERTINTRIN_H -#endif // __SSE2__ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxneconvertintrin.h.blob deleted file mode 100644 index 1817fea11767a3736f2c4826edca74c06d5f2c4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26503 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h deleted file mode 100644 index b0b6cb85..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h +++ /dev/null @@ -1,471 +0,0 @@ -/*===-------- avxvnniint8intrin.h - AVXVNNIINT8 intrinsics -----------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error \ - "Never use <avxvnniint8intrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVXVNNIINT8INTRIN_H -#define __AVXVNNIINT8INTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, __target__("avxvnniint8"), \ - __min_vector_width__(256))) -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, __target__("avxvnniint8"), \ - __min_vector_width__(128))) - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_dpbssd_epi32(__m128i __W, __m128i __A, __m128i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 128-bit vector of [16 x char]. -/// \param __B -/// A 128-bit vector of [16 x char]. -/// \returns -/// A 128-bit vector of [4 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := SignExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j]) -/// tmp2.word := SignExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1]) -/// tmp3.word := SignExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2]) -/// tmp4.word := SignExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3]) -/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbssd_epi32(__m128i __W, - __m128i __A, - __m128i __B) { - return (__m128i)__builtin_ia32_vpdpbssd128((__v4si)__W, (__v4si)__A, - (__v4si)__B); -} - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_dpbssd_epi32(__m256i __W, __m256i __A, __m256i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 256-bit vector of [32 x char]. -/// \param __B -/// A 256-bit vector of [32 x char]. -/// \returns -/// A 256-bit vector of [8 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := SignExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j]) -/// tmp2.word := SignExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1]) -/// tmp3.word := SignExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2]) -/// tmp4.word := SignExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3]) -/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpbssd_epi32(__m256i __W, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_vpdpbssd256((__v8si)__W, (__v8si)__A, - (__v8si)__B); -} - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W with signed saturation, and store the packed -/// 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_dpbssds_epi32( __m128i __W, __m128i __A, __m128i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 128-bit vector of [16 x char]. -/// \param __B -/// A 128-bit vector of [16 x char]. -/// \returns -/// A 128-bit vector of [4 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := SignExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j]) -/// tmp2.word := SignExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1]) -/// tmp3.word := SignExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2]) -/// tmp4.word := SignExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3]) -/// dst.dword[j] := SIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbssds_epi32(__m128i __W, - __m128i __A, - __m128i __B) { - return (__m128i)__builtin_ia32_vpdpbssds128((__v4si)__W, (__v4si)__A, - (__v4si)__B); -} - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W with signed saturation, and store the packed -/// 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_dpbssds_epi32(__m256i __W, __m256i __A, __m256i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 256-bit vector of [32 x char]. -/// \param __B -/// A 256-bit vector of [32 x char]. -/// \returns -/// A 256-bit vector of [8 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := SignExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j]) -/// tmp2.word := SignExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1]) -/// tmp3.word := SignExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2]) -/// tmp4.word := SignExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3]) -/// dst.dword[j] := SIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpbssds_epi32(__m256i __W, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_vpdpbssds256((__v8si)__W, (__v8si)__A, - (__v8si)__B); -} - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_dpbsud_epi32(__m128i __W, __m128i __A, __m128i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 128-bit vector of [16 x char]. -/// \param __B -/// A 128-bit vector of [16 x unsigned char]. -/// \returns -/// A 128-bit vector of [4 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := Signed(SignExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j])) -/// tmp2.word := Signed(SignExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1])) -/// tmp3.word := Signed(SignExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2])) -/// tmp4.word := Signed(SignExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3])) -/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbsud_epi32(__m128i __W, - __m128i __A, - __m128i __B) { - return (__m128i)__builtin_ia32_vpdpbsud128((__v4si)__W, (__v4si)__A, - (__v4si)__B); -} - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_dpbsud_epi32(__m256i __W, __m256i __A, __m256i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 256-bit vector of [32 x char]. -/// \param __B -/// A 256-bit vector of [32 x unsigned char]. -/// \returns -/// A 256-bit vector of [8 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := Signed(SignExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j])) -/// tmp2.word := Signed(SignExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1])) -/// tmp3.word := Signed(SignExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2])) -/// tmp4.word := Signed(SignExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3])) -/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpbsud_epi32(__m256i __W, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_vpdpbsud256((__v8si)__W, (__v8si)__A, - (__v8si)__B); -} - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W with signed saturation, and store the packed -/// 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_dpbsuds_epi32( __m128i __W, __m128i __A, __m128i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 128-bit vector of [16 x char]. -/// \param __B -/// A 128-bit vector of [16 x unsigned char]. -/// \returns -/// A 128-bit vector of [4 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := Signed(SignExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j])) -/// tmp2.word := Signed(SignExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1])) -/// tmp3.word := Signed(SignExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2])) -/// tmp4.word := Signed(SignExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3])) -/// dst.dword[j] := SIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbsuds_epi32(__m128i __W, - __m128i __A, - __m128i __B) { - return (__m128i)__builtin_ia32_vpdpbsuds128((__v4si)__W, (__v4si)__A, - (__v4si)__B); -} - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W with signed saturation, and store the packed -/// 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_dpbsuds_epi32(__m256i __W, __m256i __A, __m256i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 256-bit vector of [32 x char]. -/// \param __B -/// A 256-bit vector of [32 x unsigned char]. -/// \returns -/// A 256-bit vector of [8 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := Signed(SignExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j])) -/// tmp2.word := Signed(SignExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1])) -/// tmp3.word := Signed(SignExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2])) -/// tmp4.word := Signed(SignExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3])) -/// dst.dword[j] := SIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpbsuds_epi32(__m256i __W, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_vpdpbsuds256((__v8si)__W, (__v8si)__A, - (__v8si)__B); -} - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with -/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_dpbuud_epi32(__m128i __W, __m128i __A, __m128i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 128-bit vector of [16 x unsigned char]. -/// \param __B -/// A 128-bit vector of [16 x unsigned char]. -/// \returns -/// A 128-bit vector of [4 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := ZeroExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j]) -/// tmp2.word := ZeroExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1]) -/// tmp3.word := ZeroExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2]) -/// tmp4.word := ZeroExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3]) -/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbuud_epi32(__m128i __W, - __m128i __A, - __m128i __B) { - return (__m128i)__builtin_ia32_vpdpbuud128((__v4si)__W, (__v4si)__A, - (__v4si)__B); -} - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with -/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_dpbuud_epi32(__m256i __W, __m256i __A, __m256i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBSSD instruction. -/// -/// \param __A -/// A 256-bit vector of [32 x unsigned char]. -/// \param __B -/// A 256-bit vector of [32 x unsigned char]. -/// \returns -/// A 256-bit vector of [8 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := ZeroExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j]) -/// tmp2.word := ZeroExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1]) -/// tmp3.word := ZeroExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2]) -/// tmp4.word := ZeroExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3]) -/// dst.dword[j] := __W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpbuud_epi32(__m256i __W, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_vpdpbuud256((__v8si)__W, (__v8si)__A, - (__v8si)__B); -} - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with -/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W with signed saturation, and store the packed -/// 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm_dpbuuds_epi32( __m128i __W, __m128i __A, __m128i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBUUDS instruction. -/// -/// \param __A -/// A 128-bit vector of [16 x unsigned char]. -/// \param __B -/// A 128-bit vector of [16 x unsigned char]. -/// \returns -/// A 128-bit vector of [4 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := ZeroExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j]) -/// tmp2.word := ZeroExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1]) -/// tmp3.word := ZeroExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2]) -/// tmp4.word := ZeroExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3]) -/// dst.dword[j] := UNSIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// dst[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpbuuds_epi32(__m128i __W, - __m128i __A, - __m128i __B) { - return (__m128i)__builtin_ia32_vpdpbuuds128((__v4si)__W, (__v4si)__A, - (__v4si)__B); -} - -/// Multiply groups of 4 adjacent pairs of signed 8-bit integers in \a __A with -/// corresponding unsigned 8-bit integers in \a __B, producing 4 intermediate -/// signed 16-bit results. Sum these 4 results with the corresponding -/// 32-bit integer in \a __W with signed saturation, and store the packed -/// 32-bit results in \a dst. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// _mm256_dpbuuds_epi32(__m256i __W, __m256i __A, __m256i __B); -/// \endcode -/// -/// This intrinsic corresponds to the \c VPDPBUUDS instruction. -/// -/// \param __A -/// A 256-bit vector of [32 x unsigned char]. -/// \param __B -/// A 256-bit vector of [32 x unsigned char]. -/// \returns -/// A 256-bit vector of [8 x int]. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := ZeroExtend16(__A.byte[4*j]) * ZeroExtend16(__B.byte[4*j]) -/// tmp2.word := ZeroExtend16(__A.byte[4*j+1]) * ZeroExtend16(__B.byte[4*j+1]) -/// tmp3.word := ZeroExtend16(__A.byte[4*j+2]) * ZeroExtend16(__B.byte[4*j+2]) -/// tmp4.word := ZeroExtend16(__A.byte[4*j+3]) * ZeroExtend16(__B.byte[4*j+3]) -/// dst.dword[j] := UNSIGNED_DWORD_SATURATE(__W.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// dst[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpbuuds_epi32(__m256i __W, __m256i __A, __m256i __B) { - return (__m256i)__builtin_ia32_vpdpbuuds256((__v8si)__W, (__v8si)__A, - (__v8si)__B); -} -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif // __AVXVNNIINT8INTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniint8intrin.h.blob deleted file mode 100644 index 7c8a3a67944570a83617eb3c2e7d90342c04998c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31235 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 I7yRS@0W!zRdH?_b diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h deleted file mode 100644 index b7de562b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h +++ /dev/null @@ -1,225 +0,0 @@ -/*===--------------- avxvnniintrin.h - VNNI intrinsics --------------------=== - * - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <avxvnniintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __AVXVNNIINTRIN_H -#define __AVXVNNIINTRIN_H - -/* Below intrinsics defined in avx512vlvnniintrin.h can be used for AVXVNNI */ -/// \fn __m256i _mm256_dpbusd_epi32(__m256i __S, __m256i __A, __m256i __B) -/// \fn __m256i _mm256_dpbusds_epi32(__m256i __S, __m256i __A, __m256i __B) -/// \fn __m256i _mm256_dpwssd_epi32(__m256i __S, __m256i __A, __m256i __B) -/// \fn __m256i _mm256_dpwssds_epi32(__m256i __S, __m256i __A, __m256i __B) -/// \fn __m128i _mm_dpbusd_epi32(__m128i __S, __m128i __A, __m128i __B) -/// \fn __m128i _mm_dpbusds_epi32(__m128i __S, __m128i __A, __m128i __B) -/// \fn __m128i _mm_dpwssd_epi32(__m128i __S, __m128i __A, __m128i __B) -/// \fn __m128i _mm_dpwssds_epi32(__m128i __S, __m128i __A, __m128i __B) - -/* Intrinsics with _avx_ prefix are for compatibility with msvc. */ -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avxvnni"), __min_vector_width__(256))) -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avxvnni"), __min_vector_width__(128))) - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with -/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate signed -/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in \a __S, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPBUSD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := Signed(ZeroExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j])) -/// tmp2.word := Signed(ZeroExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1])) -/// tmp3.word := Signed(ZeroExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2])) -/// tmp4.word := Signed(ZeroExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3])) -/// DST.dword[j] := __S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// DST[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpbusd_avx_epi32(__m256i __S, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_vpdpbusd256((__v8si)__S, (__v8si)__A, (__v8si)__B); -} - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with -/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate signed -/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in \a __S using signed saturation, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPBUSDS </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.word := Signed(ZeroExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j])) -/// tmp2.word := Signed(ZeroExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1])) -/// tmp3.word := Signed(ZeroExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2])) -/// tmp4.word := Signed(ZeroExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3])) -/// DST.dword[j] := Saturate32(__S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// DST[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpbusds_avx_epi32(__m256i __S, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_vpdpbusds256((__v8si)__S, (__v8si)__A, (__v8si)__B); -} - -/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with -/// corresponding 16-bit integers in \a __B, producing 2 intermediate signed 32-bit -/// results. Sum these 2 results with the corresponding 32-bit integer in \a __S, -/// and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPWSSD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.dword := SignExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j]) -/// tmp2.dword := SignExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1]) -/// DST.dword[j] := __S.dword[j] + tmp1 + tmp2 -/// ENDFOR -/// DST[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpwssd_avx_epi32(__m256i __S, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_vpdpwssd256((__v8si)__S, (__v8si)__A, (__v8si)__B); -} - -/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with -/// corresponding 16-bit integers in \a __B, producing 2 intermediate signed 32-bit -/// results. Sum these 2 results with the corresponding 32-bit integer in \a __S -/// using signed saturation, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPWSSDS </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 7 -/// tmp1.dword := SignExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j]) -/// tmp2.dword := SignExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1]) -/// DST.dword[j] := Saturate32(__S.dword[j] + tmp1 + tmp2) -/// ENDFOR -/// DST[MAX:256] := 0 -/// \endcode -static __inline__ __m256i __DEFAULT_FN_ATTRS256 -_mm256_dpwssds_avx_epi32(__m256i __S, __m256i __A, __m256i __B) -{ - return (__m256i)__builtin_ia32_vpdpwssds256((__v8si)__S, (__v8si)__A, (__v8si)__B); -} - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with -/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate signed -/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in \a __S, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPBUSD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := Signed(ZeroExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j])) -/// tmp2.word := Signed(ZeroExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1])) -/// tmp3.word := Signed(ZeroExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2])) -/// tmp4.word := Signed(ZeroExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3])) -/// DST.dword[j] := __S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4 -/// ENDFOR -/// DST[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_dpbusd_avx_epi32(__m128i __S, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_vpdpbusd128((__v4si)__S, (__v4si)__A, (__v4si)__B); -} - -/// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a __A with -/// corresponding signed 8-bit integers in \a __B, producing 4 intermediate signed -/// 16-bit results. Sum these 4 results with the corresponding 32-bit integer -/// in \a __S using signed saturation, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPBUSDS </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.word := Signed(ZeroExtend16(__A.byte[4*j]) * SignExtend16(__B.byte[4*j])) -/// tmp2.word := Signed(ZeroExtend16(__A.byte[4*j+1]) * SignExtend16(__B.byte[4*j+1])) -/// tmp3.word := Signed(ZeroExtend16(__A.byte[4*j+2]) * SignExtend16(__B.byte[4*j+2])) -/// tmp4.word := Signed(ZeroExtend16(__A.byte[4*j+3]) * SignExtend16(__B.byte[4*j+3])) -/// DST.dword[j] := Saturate32(__S.dword[j] + tmp1 + tmp2 + tmp3 + tmp4) -/// ENDFOR -/// DST[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_dpbusds_avx_epi32(__m128i __S, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_vpdpbusds128((__v4si)__S, (__v4si)__A, (__v4si)__B); -} - -/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with -/// corresponding 16-bit integers in \a __B, producing 2 intermediate signed 32-bit -/// results. Sum these 2 results with the corresponding 32-bit integer in \a __S, -/// and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPWSSD </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.dword := SignExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j]) -/// tmp2.dword := SignExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1]) -/// DST.dword[j] := __S.dword[j] + tmp1 + tmp2 -/// ENDFOR -/// DST[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_dpwssd_avx_epi32(__m128i __S, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_vpdpwssd128((__v4si)__S, (__v4si)__A, (__v4si)__B); -} - -/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with -/// corresponding 16-bit integers in \a __B, producing 2 intermediate signed 32-bit -/// results. Sum these 2 results with the corresponding 32-bit integer in \a __S -/// using signed saturation, and store the packed 32-bit results in DST. -/// -/// This intrinsic corresponds to the <c> VPDPWSSDS </c> instructions. -/// -/// \code{.operation} -/// FOR j := 0 to 3 -/// tmp1.dword := SignExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j]) -/// tmp2.dword := SignExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1]) -/// DST.dword[j] := Saturate32(__S.dword[j] + tmp1 + tmp2) -/// ENDFOR -/// DST[MAX:128] := 0 -/// \endcode -static __inline__ __m128i __DEFAULT_FN_ATTRS128 -_mm_dpwssds_avx_epi32(__m128i __S, __m128i __A, __m128i __B) -{ - return (__m128i)__builtin_ia32_vpdpwssds128((__v4si)__S, (__v4si)__A, (__v4si)__B); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif // __AVXVNNIINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@avxvnniintrin.h.blob deleted file mode 100644 index d024a5ff31647ca35f33c07b2a5e893b05d7588d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22225 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h deleted file mode 100644 index 0b56aed5..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h +++ /dev/null @@ -1,81 +0,0 @@ -/*===---- bmi2intrin.h - BMI2 intrinsics -----------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <bmi2intrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __BMI2INTRIN_H -#define __BMI2INTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("bmi2"))) - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_bzhi_u32(unsigned int __X, unsigned int __Y) -{ - return __builtin_ia32_bzhi_si(__X, __Y); -} - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_pdep_u32(unsigned int __X, unsigned int __Y) -{ - return __builtin_ia32_pdep_si(__X, __Y); -} - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_pext_u32(unsigned int __X, unsigned int __Y) -{ - return __builtin_ia32_pext_si(__X, __Y); -} - -#ifdef __x86_64__ - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_bzhi_u64(unsigned long long __X, unsigned long long __Y) -{ - return __builtin_ia32_bzhi_di(__X, __Y); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_pdep_u64(unsigned long long __X, unsigned long long __Y) -{ - return __builtin_ia32_pdep_di(__X, __Y); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_pext_u64(unsigned long long __X, unsigned long long __Y) -{ - return __builtin_ia32_pext_di(__X, __Y); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_mulx_u64 (unsigned long long __X, unsigned long long __Y, - unsigned long long *__P) -{ - unsigned __int128 __res = (unsigned __int128) __X * __Y; - *__P = (unsigned long long) (__res >> 64); - return (unsigned long long) __res; -} - -#else /* !__x86_64__ */ - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_mulx_u32 (unsigned int __X, unsigned int __Y, unsigned int *__P) -{ - unsigned long long __res = (unsigned long long) __X * __Y; - *__P = (unsigned int) (__res >> 32); - return (unsigned int) __res; -} - -#endif /* !__x86_64__ */ - -#undef __DEFAULT_FN_ATTRS - -#endif /* __BMI2INTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmi2intrin.h.blob deleted file mode 100644 index 377aa23585d3062d8dc74ec3b620c12838b5ca32..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14586 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h deleted file mode 100644 index ffb94bea..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h +++ /dev/null @@ -1,431 +0,0 @@ -/*===---- bmiintrin.h - BMI intrinsics -------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <bmiintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __BMIINTRIN_H -#define __BMIINTRIN_H - -/* Allow using the tzcnt intrinsics even for non-BMI targets. Since the TZCNT - instruction behaves as BSF on non-BMI targets, there is code that expects - to use it as a potentially faster version of BSF. */ -#define __RELAXED_FN_ATTRS __attribute__((__always_inline__, __nodebug__)) - -#define _tzcnt_u16(a) (__tzcnt_u16((a))) - -/// Counts the number of trailing zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> TZCNT </c> instruction. -/// -/// \param __X -/// An unsigned 16-bit integer whose trailing zeros are to be counted. -/// \returns An unsigned 16-bit integer containing the number of trailing zero -/// bits in the operand. -static __inline__ unsigned short __RELAXED_FN_ATTRS -__tzcnt_u16(unsigned short __X) -{ - return __builtin_ia32_tzcnt_u16(__X); -} - -/// Counts the number of trailing zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> TZCNT </c> instruction. -/// -/// \param __X -/// An unsigned 32-bit integer whose trailing zeros are to be counted. -/// \returns An unsigned 32-bit integer containing the number of trailing zero -/// bits in the operand. -/// \see _mm_tzcnt_32 -static __inline__ unsigned int __RELAXED_FN_ATTRS -__tzcnt_u32(unsigned int __X) -{ - return __builtin_ia32_tzcnt_u32(__X); -} - -/// Counts the number of trailing zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> TZCNT </c> instruction. -/// -/// \param __X -/// An unsigned 32-bit integer whose trailing zeros are to be counted. -/// \returns An 32-bit integer containing the number of trailing zero bits in -/// the operand. -/// \see __tzcnt_u32 -static __inline__ int __RELAXED_FN_ATTRS -_mm_tzcnt_32(unsigned int __X) -{ - return (int)__builtin_ia32_tzcnt_u32(__X); -} - -#define _tzcnt_u32(a) (__tzcnt_u32((a))) - -#ifdef __x86_64__ - -/// Counts the number of trailing zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> TZCNT </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer whose trailing zeros are to be counted. -/// \returns An unsigned 64-bit integer containing the number of trailing zero -/// bits in the operand. -/// \see _mm_tzcnt_64 -static __inline__ unsigned long long __RELAXED_FN_ATTRS -__tzcnt_u64(unsigned long long __X) -{ - return __builtin_ia32_tzcnt_u64(__X); -} - -/// Counts the number of trailing zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> TZCNT </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer whose trailing zeros are to be counted. -/// \returns An 64-bit integer containing the number of trailing zero bits in -/// the operand. -/// \see __tzcnt_u64 -static __inline__ long long __RELAXED_FN_ATTRS -_mm_tzcnt_64(unsigned long long __X) -{ - return (long long)__builtin_ia32_tzcnt_u64(__X); -} - -#define _tzcnt_u64(a) (__tzcnt_u64((a))) - -#endif /* __x86_64__ */ - -#undef __RELAXED_FN_ATTRS - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__BMI__) - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("bmi"))) - -#define _andn_u32(a, b) (__andn_u32((a), (b))) - -/* _bextr_u32 != __bextr_u32 */ -#define _blsi_u32(a) (__blsi_u32((a))) - -#define _blsmsk_u32(a) (__blsmsk_u32((a))) - -#define _blsr_u32(a) (__blsr_u32((a))) - -/// Performs a bitwise AND of the second operand with the one's -/// complement of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> ANDN </c> instruction. -/// -/// \param __X -/// An unsigned integer containing one of the operands. -/// \param __Y -/// An unsigned integer containing one of the operands. -/// \returns An unsigned integer containing the bitwise AND of the second -/// operand with the one's complement of the first operand. -static __inline__ unsigned int __DEFAULT_FN_ATTRS -__andn_u32(unsigned int __X, unsigned int __Y) -{ - return ~__X & __Y; -} - -/* AMD-specified, double-leading-underscore version of BEXTR */ -/// Extracts the specified bits from the first operand and returns them -/// in the least significant bits of the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BEXTR </c> instruction. -/// -/// \param __X -/// An unsigned integer whose bits are to be extracted. -/// \param __Y -/// An unsigned integer used to specify which bits are extracted. Bits [7:0] -/// specify the index of the least significant bit. Bits [15:8] specify the -/// number of bits to be extracted. -/// \returns An unsigned integer whose least significant bits contain the -/// extracted bits. -/// \see _bextr_u32 -static __inline__ unsigned int __DEFAULT_FN_ATTRS -__bextr_u32(unsigned int __X, unsigned int __Y) -{ - return __builtin_ia32_bextr_u32(__X, __Y); -} - -/* Intel-specified, single-leading-underscore version of BEXTR */ -/// Extracts the specified bits from the first operand and returns them -/// in the least significant bits of the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BEXTR </c> instruction. -/// -/// \param __X -/// An unsigned integer whose bits are to be extracted. -/// \param __Y -/// An unsigned integer used to specify the index of the least significant -/// bit for the bits to be extracted. Bits [7:0] specify the index. -/// \param __Z -/// An unsigned integer used to specify the number of bits to be extracted. -/// Bits [7:0] specify the number of bits. -/// \returns An unsigned integer whose least significant bits contain the -/// extracted bits. -/// \see __bextr_u32 -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_bextr_u32(unsigned int __X, unsigned int __Y, unsigned int __Z) -{ - return __builtin_ia32_bextr_u32 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8))); -} - -/* Intel-specified, single-leading-underscore version of BEXTR2 */ -/// Extracts the specified bits from the first operand and returns them -/// in the least significant bits of the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BEXTR </c> instruction. -/// -/// \param __X -/// An unsigned integer whose bits are to be extracted. -/// \param __Y -/// An unsigned integer used to specify which bits are extracted. Bits [7:0] -/// specify the index of the least significant bit. Bits [15:8] specify the -/// number of bits to be extracted. -/// \returns An unsigned integer whose least significant bits contain the -/// extracted bits. -/// \see __bextr_u32 -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_bextr2_u32(unsigned int __X, unsigned int __Y) { - return __builtin_ia32_bextr_u32(__X, __Y); -} - -/// Clears all bits in the source except for the least significant bit -/// containing a value of 1 and returns the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BLSI </c> instruction. -/// -/// \param __X -/// An unsigned integer whose bits are to be cleared. -/// \returns An unsigned integer containing the result of clearing the bits from -/// the source operand. -static __inline__ unsigned int __DEFAULT_FN_ATTRS -__blsi_u32(unsigned int __X) -{ - return __X & -__X; -} - -/// Creates a mask whose bits are set to 1, using bit 0 up to and -/// including the least significant bit that is set to 1 in the source -/// operand and returns the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BLSMSK </c> instruction. -/// -/// \param __X -/// An unsigned integer used to create the mask. -/// \returns An unsigned integer containing the newly created mask. -static __inline__ unsigned int __DEFAULT_FN_ATTRS -__blsmsk_u32(unsigned int __X) -{ - return __X ^ (__X - 1); -} - -/// Clears the least significant bit that is set to 1 in the source -/// operand and returns the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BLSR </c> instruction. -/// -/// \param __X -/// An unsigned integer containing the operand to be cleared. -/// \returns An unsigned integer containing the result of clearing the source -/// operand. -static __inline__ unsigned int __DEFAULT_FN_ATTRS -__blsr_u32(unsigned int __X) -{ - return __X & (__X - 1); -} - -#ifdef __x86_64__ - -#define _andn_u64(a, b) (__andn_u64((a), (b))) - -/* _bextr_u64 != __bextr_u64 */ -#define _blsi_u64(a) (__blsi_u64((a))) - -#define _blsmsk_u64(a) (__blsmsk_u64((a))) - -#define _blsr_u64(a) (__blsr_u64((a))) - -/// Performs a bitwise AND of the second operand with the one's -/// complement of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> ANDN </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer containing one of the operands. -/// \param __Y -/// An unsigned 64-bit integer containing one of the operands. -/// \returns An unsigned 64-bit integer containing the bitwise AND of the second -/// operand with the one's complement of the first operand. -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -__andn_u64 (unsigned long long __X, unsigned long long __Y) -{ - return ~__X & __Y; -} - -/* AMD-specified, double-leading-underscore version of BEXTR */ -/// Extracts the specified bits from the first operand and returns them -/// in the least significant bits of the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BEXTR </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer whose bits are to be extracted. -/// \param __Y -/// An unsigned 64-bit integer used to specify which bits are extracted. Bits -/// [7:0] specify the index of the least significant bit. Bits [15:8] specify -/// the number of bits to be extracted. -/// \returns An unsigned 64-bit integer whose least significant bits contain the -/// extracted bits. -/// \see _bextr_u64 -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -__bextr_u64(unsigned long long __X, unsigned long long __Y) -{ - return __builtin_ia32_bextr_u64(__X, __Y); -} - -/* Intel-specified, single-leading-underscore version of BEXTR */ -/// Extracts the specified bits from the first operand and returns them -/// in the least significant bits of the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BEXTR </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer whose bits are to be extracted. -/// \param __Y -/// An unsigned integer used to specify the index of the least significant -/// bit for the bits to be extracted. Bits [7:0] specify the index. -/// \param __Z -/// An unsigned integer used to specify the number of bits to be extracted. -/// Bits [7:0] specify the number of bits. -/// \returns An unsigned 64-bit integer whose least significant bits contain the -/// extracted bits. -/// \see __bextr_u64 -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_bextr_u64(unsigned long long __X, unsigned int __Y, unsigned int __Z) -{ - return __builtin_ia32_bextr_u64 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8))); -} - -/* Intel-specified, single-leading-underscore version of BEXTR2 */ -/// Extracts the specified bits from the first operand and returns them -/// in the least significant bits of the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BEXTR </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer whose bits are to be extracted. -/// \param __Y -/// An unsigned 64-bit integer used to specify which bits are extracted. Bits -/// [7:0] specify the index of the least significant bit. Bits [15:8] specify -/// the number of bits to be extracted. -/// \returns An unsigned 64-bit integer whose least significant bits contain the -/// extracted bits. -/// \see __bextr_u64 -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_bextr2_u64(unsigned long long __X, unsigned long long __Y) { - return __builtin_ia32_bextr_u64(__X, __Y); -} - -/// Clears all bits in the source except for the least significant bit -/// containing a value of 1 and returns the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BLSI </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer whose bits are to be cleared. -/// \returns An unsigned 64-bit integer containing the result of clearing the -/// bits from the source operand. -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -__blsi_u64(unsigned long long __X) -{ - return __X & -__X; -} - -/// Creates a mask whose bits are set to 1, using bit 0 up to and -/// including the least significant bit that is set to 1 in the source -/// operand and returns the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BLSMSK </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer used to create the mask. -/// \returns An unsigned 64-bit integer containing the newly created mask. -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -__blsmsk_u64(unsigned long long __X) -{ - return __X ^ (__X - 1); -} - -/// Clears the least significant bit that is set to 1 in the source -/// operand and returns the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> BLSR </c> instruction. -/// -/// \param __X -/// An unsigned 64-bit integer containing the operand to be cleared. -/// \returns An unsigned 64-bit integer containing the result of clearing the -/// source operand. -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -__blsr_u64(unsigned long long __X) -{ - return __X & (__X - 1); -} - -#endif /* __x86_64__ */ - -#undef __DEFAULT_FN_ATTRS - -#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ - || defined(__BMI__) */ - -#endif /* __BMIINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@bmiintrin.h.blob deleted file mode 100644 index 7ec7cd7fb196ac4e5405da911b4701861cbfc593..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27157 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 D&9nG~ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h deleted file mode 100644 index a68df5b1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h +++ /dev/null @@ -1,115 +0,0 @@ -/*===---- cetintrin.h - CET intrinsic --------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <cetintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __CETINTRIN_H -#define __CETINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("shstk"))) - -static __inline__ void __DEFAULT_FN_ATTRS _incsspd(int __a) { - __builtin_ia32_incsspd((unsigned int)__a); -} - -#ifdef __x86_64__ -static __inline__ void __DEFAULT_FN_ATTRS _incsspq(unsigned long long __a) { - __builtin_ia32_incsspq(__a); -} -#endif /* __x86_64__ */ - -#ifdef __x86_64__ -static __inline__ void __DEFAULT_FN_ATTRS _inc_ssp(unsigned int __a) { - __builtin_ia32_incsspq(__a); -} -#else /* __x86_64__ */ -static __inline__ void __DEFAULT_FN_ATTRS _inc_ssp(unsigned int __a) { - __builtin_ia32_incsspd(__a); -} -#endif /* __x86_64__ */ - -static __inline__ unsigned int __DEFAULT_FN_ATTRS _rdsspd(unsigned int __a) { - return __builtin_ia32_rdsspd(__a); -} - -static __inline__ unsigned int __DEFAULT_FN_ATTRS _rdsspd_i32(void) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wuninitialized" - unsigned int t; - return __builtin_ia32_rdsspd(t); -#pragma clang diagnostic pop -} - -#ifdef __x86_64__ -static __inline__ unsigned long long __DEFAULT_FN_ATTRS _rdsspq(unsigned long long __a) { - return __builtin_ia32_rdsspq(__a); -} - -static __inline__ unsigned long long __DEFAULT_FN_ATTRS _rdsspq_i64(void) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wuninitialized" - unsigned long long t; - return __builtin_ia32_rdsspq(t); -#pragma clang diagnostic pop -} -#endif /* __x86_64__ */ - -#ifdef __x86_64__ -static __inline__ unsigned long long __DEFAULT_FN_ATTRS _get_ssp(void) { - return __builtin_ia32_rdsspq(0); -} -#else /* __x86_64__ */ -static __inline__ unsigned int __DEFAULT_FN_ATTRS _get_ssp(void) { - return __builtin_ia32_rdsspd(0); -} -#endif /* __x86_64__ */ - -static __inline__ void __DEFAULT_FN_ATTRS _saveprevssp(void) { - __builtin_ia32_saveprevssp(); -} - -static __inline__ void __DEFAULT_FN_ATTRS _rstorssp(void * __p) { - __builtin_ia32_rstorssp(__p); -} - -static __inline__ void __DEFAULT_FN_ATTRS _wrssd(unsigned int __a, void * __p) { - __builtin_ia32_wrssd(__a, __p); -} - -#ifdef __x86_64__ -static __inline__ void __DEFAULT_FN_ATTRS _wrssq(unsigned long long __a, void * __p) { - __builtin_ia32_wrssq(__a, __p); -} -#endif /* __x86_64__ */ - -static __inline__ void __DEFAULT_FN_ATTRS _wrussd(unsigned int __a, void * __p) { - __builtin_ia32_wrussd(__a, __p); -} - -#ifdef __x86_64__ -static __inline__ void __DEFAULT_FN_ATTRS _wrussq(unsigned long long __a, void * __p) { - __builtin_ia32_wrussq(__a, __p); -} -#endif /* __x86_64__ */ - -static __inline__ void __DEFAULT_FN_ATTRS _setssbsy(void) { - __builtin_ia32_setssbsy(); -} - -static __inline__ void __DEFAULT_FN_ATTRS _clrssbsy(void * __p) { - __builtin_ia32_clrssbsy(__p); -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* __CETINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cetintrin.h.blob deleted file mode 100644 index af6c250b5298023be4aa8d2b88420874ac168659..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15061 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 H2gv;oM;TI4 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h deleted file mode 100644 index cfb951c1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h +++ /dev/null @@ -1,36 +0,0 @@ -/*===---- cldemoteintrin.h - CLDEMOTE intrinsic ----------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <cldemoteintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __CLDEMOTEINTRIN_H -#define __CLDEMOTEINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("cldemote"))) - -/// Hint to hardware that the cache line that contains \p __P should be demoted -/// from the cache closest to the processor core to a level more distant from -/// the processor core. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CLDEMOTE </c> instruction. -static __inline__ void __DEFAULT_FN_ATTRS -_cldemote(const void * __P) { - __builtin_ia32_cldemote(__P); -} - -#define _mm_cldemote(p) _cldemote(p) -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cldemoteintrin.h.blob deleted file mode 100644 index cc9bed3caf876af302fbd05612d4e69b960f01c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12846 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h deleted file mode 100644 index 060eb36f..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h +++ /dev/null @@ -1,27 +0,0 @@ -/*===---- clflushoptintrin.h - CLFLUSHOPT intrinsic ------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <clflushoptintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __CLFLUSHOPTINTRIN_H -#define __CLFLUSHOPTINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("clflushopt"))) - -static __inline__ void __DEFAULT_FN_ATTRS -_mm_clflushopt(void const * __m) { - __builtin_ia32_clflushopt(__m); -} - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clflushoptintrin.h.blob deleted file mode 100644 index 46248ba37185eef88f08ad952cb4c75d15952c4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12509 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 O9y_|Xt^TUDNB;*&raOZG diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h deleted file mode 100644 index 3360d203..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h +++ /dev/null @@ -1,38 +0,0 @@ -/*===---- clwbintrin.h - CLWB intrinsic ------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <clwbintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __CLWBINTRIN_H -#define __CLWBINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("clwb"))) - -/// Writes back to memory the cache line (if modified) that contains the -/// linear address specified in \a __p from any level of the cache hierarchy in -/// the cache coherence domain -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> CLWB </c> instruction. -/// -/// \param __p -/// A pointer to the memory location used to identify the cache line to be -/// written back. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_clwb(void const *__p) { - __builtin_ia32_clwb(__p); -} - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@clwbintrin.h.blob deleted file mode 100644 index 95550f75537c11e9fc49c8b5f7f59710d77450de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12854 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 Bv=IOR diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h deleted file mode 100644 index 69574989..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h +++ /dev/null @@ -1,70 +0,0 @@ -/*===--------------- cmpccxaddintrin.h - CMPCCXADD intrinsics--------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __X86GPRINTRIN_H -#error \ - "Never use <cmpccxaddintrin.h> directly; include <x86gprintrin.h> instead." -#endif // __X86GPRINTRIN_H - -#ifndef __CMPCCXADDINTRIN_H -#define __CMPCCXADDINTRIN_H -#ifdef __x86_64__ - -typedef enum { - _CMPCCX_O, /* Overflow. */ - _CMPCCX_NO, /* No overflow. */ - _CMPCCX_B, /* Below. */ - _CMPCCX_NB, /* Not below. */ - _CMPCCX_Z, /* Zero. */ - _CMPCCX_NZ, /* Not zero. */ - _CMPCCX_BE, /* Below or equal. */ - _CMPCCX_NBE, /* Neither below nor equal. */ - _CMPCCX_S, /* Sign. */ - _CMPCCX_NS, /* No sign. */ - _CMPCCX_P, /* Parity. */ - _CMPCCX_NP, /* No parity. */ - _CMPCCX_L, /* Less. */ - _CMPCCX_NL, /* Not less. */ - _CMPCCX_LE, /* Less or equal. */ - _CMPCCX_NLE, /* Neither less nor equal. */ -} _CMPCCX_ENUM; - -/// Compares the value from the memory __A with the value of __B. If the -/// specified condition __D is met, then add the third operand __C to the -/// __A and write it into __A, else the value of __A is unchanged. The return -/// value is the original value of __A. -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the \c CMPCCXADD instructions. -/// -/// \param __A -/// __A pointer specifying the memory address. -/// -/// \param __B -/// A integer operand. -/// -/// \param __C -/// A integer operand. -/// -/// \param __D -/// The specified condition. -/// -/// \returns a integer which is the original value of first operand. - -#define _cmpccxadd_epi32(__A, __B, __C, __D) \ - ((int)(__builtin_ia32_cmpccxadd32((void *)(__A), (int)(__B), (int)(__C), \ - (int)(__D)))) - -#define _cmpccxadd_epi64(__A, __B, __C, __D) \ - ((long long)(__builtin_ia32_cmpccxadd64((void *)(__A), (long long)(__B), \ - (long long)(__C), (int)(__D)))) - -#endif // __x86_64__ -#endif // __CMPCCXADDINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@cmpccxaddintrin.h.blob deleted file mode 100644 index e89dd6b819081496e70160155a92e7ff12ee9224..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13977 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h deleted file mode 100644 index a0bd99d1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h +++ /dev/null @@ -1,100 +0,0 @@ -/*===---- crc32intrin.h - SSE4.2 Accumulate CRC32 intrinsics ---------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __CRC32INTRIN_H -#define __CRC32INTRIN_H - -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("crc32"))) - -/// Adds the unsigned integer operand to the CRC-32C checksum of the -/// unsigned char operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CRC32B </c> instruction. -/// -/// \param __C -/// An unsigned integer operand to add to the CRC-32C checksum of operand -/// \a __D. -/// \param __D -/// An unsigned 8-bit integer operand used to compute the CRC-32C checksum. -/// \returns The result of adding operand \a __C to the CRC-32C checksum of -/// operand \a __D. -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_mm_crc32_u8(unsigned int __C, unsigned char __D) -{ - return __builtin_ia32_crc32qi(__C, __D); -} - -/// Adds the unsigned integer operand to the CRC-32C checksum of the -/// unsigned short operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CRC32W </c> instruction. -/// -/// \param __C -/// An unsigned integer operand to add to the CRC-32C checksum of operand -/// \a __D. -/// \param __D -/// An unsigned 16-bit integer operand used to compute the CRC-32C checksum. -/// \returns The result of adding operand \a __C to the CRC-32C checksum of -/// operand \a __D. -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_mm_crc32_u16(unsigned int __C, unsigned short __D) -{ - return __builtin_ia32_crc32hi(__C, __D); -} - -/// Adds the first unsigned integer operand to the CRC-32C checksum of -/// the second unsigned integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CRC32L </c> instruction. -/// -/// \param __C -/// An unsigned integer operand to add to the CRC-32C checksum of operand -/// \a __D. -/// \param __D -/// An unsigned 32-bit integer operand used to compute the CRC-32C checksum. -/// \returns The result of adding operand \a __C to the CRC-32C checksum of -/// operand \a __D. -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_mm_crc32_u32(unsigned int __C, unsigned int __D) -{ - return __builtin_ia32_crc32si(__C, __D); -} - -#ifdef __x86_64__ -/// Adds the unsigned integer operand to the CRC-32C checksum of the -/// unsigned 64-bit integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CRC32Q </c> instruction. -/// -/// \param __C -/// An unsigned integer operand to add to the CRC-32C checksum of operand -/// \a __D. -/// \param __D -/// An unsigned 64-bit integer operand used to compute the CRC-32C checksum. -/// \returns The result of adding operand \a __C to the CRC-32C checksum of -/// operand \a __D. -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_mm_crc32_u64(unsigned long long __C, unsigned long long __D) -{ - return __builtin_ia32_crc32di(__C, __D); -} -#endif /* __x86_64__ */ - -#undef __DEFAULT_FN_ATTRS - -#endif /* __CRC32INTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@crc32intrin.h.blob deleted file mode 100644 index 4bb51d3ac7df99bcaf8f5d2e11075eee75d25b4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15413 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 Mi-#BZFPG5zAK{nqJ^%m! diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h deleted file mode 100644 index 064d9749..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h +++ /dev/null @@ -1,4775 +0,0 @@ -/*===---- emmintrin.h - SSE2 intrinsics ------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __EMMINTRIN_H -#define __EMMINTRIN_H - -#if !defined(__i386__) && !defined(__x86_64__) -#error "This header is only meant to be used on x86 and x64 architecture" -#endif - -#include <xmmintrin.h> - -typedef double __m128d __attribute__((__vector_size__(16), __aligned__(16))); -typedef long long __m128i __attribute__((__vector_size__(16), __aligned__(16))); - -typedef double __m128d_u __attribute__((__vector_size__(16), __aligned__(1))); -typedef long long __m128i_u - __attribute__((__vector_size__(16), __aligned__(1))); - -/* Type defines. */ -typedef double __v2df __attribute__((__vector_size__(16))); -typedef long long __v2di __attribute__((__vector_size__(16))); -typedef short __v8hi __attribute__((__vector_size__(16))); -typedef char __v16qi __attribute__((__vector_size__(16))); - -/* Unsigned types */ -typedef unsigned long long __v2du __attribute__((__vector_size__(16))); -typedef unsigned short __v8hu __attribute__((__vector_size__(16))); -typedef unsigned char __v16qu __attribute__((__vector_size__(16))); - -/* We need an explicitly signed variant for char. Note that this shouldn't - * appear in the interface though. */ -typedef signed char __v16qs __attribute__((__vector_size__(16))); - -#ifdef __SSE2__ -/* Both _Float16 and __bf16 require SSE2 being enabled. */ -typedef _Float16 __v8hf __attribute__((__vector_size__(16), __aligned__(16))); -typedef _Float16 __m128h __attribute__((__vector_size__(16), __aligned__(16))); -typedef _Float16 __m128h_u __attribute__((__vector_size__(16), __aligned__(1))); - -typedef __bf16 __v8bf __attribute__((__vector_size__(16), __aligned__(16))); -typedef __bf16 __m128bh __attribute__((__vector_size__(16), __aligned__(16))); -#endif - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("sse2"), \ - __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS_MMX \ - __attribute__((__always_inline__, __nodebug__, __target__("mmx,sse2"), \ - __min_vector_width__(64))) - -/// Adds lower double-precision values in both operands and returns the -/// sum in the lower 64 bits of the result. The upper 64 bits of the result -/// are copied from the upper double-precision value of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDSD / ADDSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the -/// sum of the lower 64 bits of both operands. The upper 64 bits are copied -/// from the upper 64 bits of the first source operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_add_sd(__m128d __a, - __m128d __b) { - __a[0] += __b[0]; - return __a; -} - -/// Adds two 128-bit vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDPD / ADDPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \returns A 128-bit vector of [2 x double] containing the sums of both -/// operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_add_pd(__m128d __a, - __m128d __b) { - return (__m128d)((__v2df)__a + (__v2df)__b); -} - -/// Subtracts the lower double-precision value of the second operand -/// from the lower double-precision value of the first operand and returns -/// the difference in the lower 64 bits of the result. The upper 64 bits of -/// the result are copied from the upper double-precision value of the first -/// operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSUBSD / SUBSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing the minuend. -/// \param __b -/// A 128-bit vector of [2 x double] containing the subtrahend. -/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the -/// difference of the lower 64 bits of both operands. The upper 64 bits are -/// copied from the upper 64 bits of the first source operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sub_sd(__m128d __a, - __m128d __b) { - __a[0] -= __b[0]; - return __a; -} - -/// Subtracts two 128-bit vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSUBPD / SUBPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing the minuend. -/// \param __b -/// A 128-bit vector of [2 x double] containing the subtrahend. -/// \returns A 128-bit vector of [2 x double] containing the differences between -/// both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sub_pd(__m128d __a, - __m128d __b) { - return (__m128d)((__v2df)__a - (__v2df)__b); -} - -/// Multiplies lower double-precision values in both operands and returns -/// the product in the lower 64 bits of the result. The upper 64 bits of the -/// result are copied from the upper double-precision value of the first -/// operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMULSD / MULSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the -/// product of the lower 64 bits of both operands. The upper 64 bits are -/// copied from the upper 64 bits of the first source operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_mul_sd(__m128d __a, - __m128d __b) { - __a[0] *= __b[0]; - return __a; -} - -/// Multiplies two 128-bit vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMULPD / MULPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the operands. -/// \returns A 128-bit vector of [2 x double] containing the products of both -/// operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_mul_pd(__m128d __a, - __m128d __b) { - return (__m128d)((__v2df)__a * (__v2df)__b); -} - -/// Divides the lower double-precision value of the first operand by the -/// lower double-precision value of the second operand and returns the -/// quotient in the lower 64 bits of the result. The upper 64 bits of the -/// result are copied from the upper double-precision value of the first -/// operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDIVSD / DIVSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing the dividend. -/// \param __b -/// A 128-bit vector of [2 x double] containing divisor. -/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the -/// quotient of the lower 64 bits of both operands. The upper 64 bits are -/// copied from the upper 64 bits of the first source operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_div_sd(__m128d __a, - __m128d __b) { - __a[0] /= __b[0]; - return __a; -} - -/// Performs an element-by-element division of two 128-bit vectors of -/// [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDIVPD / DIVPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing the dividend. -/// \param __b -/// A 128-bit vector of [2 x double] containing the divisor. -/// \returns A 128-bit vector of [2 x double] containing the quotients of both -/// operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_div_pd(__m128d __a, - __m128d __b) { - return (__m128d)((__v2df)__a / (__v2df)__b); -} - -/// Calculates the square root of the lower double-precision value of -/// the second operand and returns it in the lower 64 bits of the result. -/// The upper 64 bits of the result are copied from the upper -/// double-precision value of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSQRTSD / SQRTSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the operands. The -/// upper 64 bits of this operand are copied to the upper 64 bits of the -/// result. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the operands. The -/// square root is calculated using the lower 64 bits of this operand. -/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the -/// square root of the lower 64 bits of operand \a __b, and whose upper 64 -/// bits are copied from the upper 64 bits of operand \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sqrt_sd(__m128d __a, - __m128d __b) { - __m128d __c = __builtin_ia32_sqrtsd((__v2df)__b); - return __extension__(__m128d){__c[0], __a[1]}; -} - -/// Calculates the square root of the each of two values stored in a -/// 128-bit vector of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSQRTPD / SQRTPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector of [2 x double] containing the square roots of the -/// values in the operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sqrt_pd(__m128d __a) { - return __builtin_ia32_sqrtpd((__v2df)__a); -} - -/// Compares lower 64-bit double-precision values of both operands, and -/// returns the lesser of the pair of values in the lower 64-bits of the -/// result. The upper 64 bits of the result are copied from the upper -/// double-precision value of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMINSD / MINSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the operands. The -/// lower 64 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the operands. The -/// lower 64 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the -/// minimum value between both operands. The upper 64 bits are copied from -/// the upper 64 bits of the first source operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_min_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_minsd((__v2df)__a, (__v2df)__b); -} - -/// Performs element-by-element comparison of the two 128-bit vectors of -/// [2 x double] and returns the vector containing the lesser of each pair of -/// values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMINPD / MINPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the operands. -/// \returns A 128-bit vector of [2 x double] containing the minimum values -/// between both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_min_pd(__m128d __a, - __m128d __b) { - return __builtin_ia32_minpd((__v2df)__a, (__v2df)__b); -} - -/// Compares lower 64-bit double-precision values of both operands, and -/// returns the greater of the pair of values in the lower 64-bits of the -/// result. The upper 64 bits of the result are copied from the upper -/// double-precision value of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMAXSD / MAXSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the operands. The -/// lower 64 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the operands. The -/// lower 64 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the -/// maximum value between both operands. The upper 64 bits are copied from -/// the upper 64 bits of the first source operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_max_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_maxsd((__v2df)__a, (__v2df)__b); -} - -/// Performs element-by-element comparison of the two 128-bit vectors of -/// [2 x double] and returns the vector containing the greater of each pair -/// of values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMAXPD / MAXPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the operands. -/// \returns A 128-bit vector of [2 x double] containing the maximum values -/// between both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_max_pd(__m128d __a, - __m128d __b) { - return __builtin_ia32_maxpd((__v2df)__a, (__v2df)__b); -} - -/// Performs a bitwise AND of two 128-bit vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPAND / PAND </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \returns A 128-bit vector of [2 x double] containing the bitwise AND of the -/// values between both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_and_pd(__m128d __a, - __m128d __b) { - return (__m128d)((__v2du)__a & (__v2du)__b); -} - -/// Performs a bitwise AND of two 128-bit vectors of [2 x double], using -/// the one's complement of the values contained in the first source operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPANDN / PANDN </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing the left source operand. The -/// one's complement of this value is used in the bitwise AND. -/// \param __b -/// A 128-bit vector of [2 x double] containing the right source operand. -/// \returns A 128-bit vector of [2 x double] containing the bitwise AND of the -/// values in the second operand and the one's complement of the first -/// operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_andnot_pd(__m128d __a, - __m128d __b) { - return (__m128d)(~(__v2du)__a & (__v2du)__b); -} - -/// Performs a bitwise OR of two 128-bit vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPOR / POR </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \returns A 128-bit vector of [2 x double] containing the bitwise OR of the -/// values between both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_or_pd(__m128d __a, - __m128d __b) { - return (__m128d)((__v2du)__a | (__v2du)__b); -} - -/// Performs a bitwise XOR of two 128-bit vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPXOR / PXOR </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// \returns A 128-bit vector of [2 x double] containing the bitwise XOR of the -/// values between both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_xor_pd(__m128d __a, - __m128d __b) { - return (__m128d)((__v2du)__a ^ (__v2du)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] for equality. Each comparison yields 0x0 -/// for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPEQPD / CMPEQPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpeq_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpeqpd((__v2df)__a, (__v2df)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are less than those in the second operand. Each comparison -/// yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLTPD / CMPLTPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmplt_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpltpd((__v2df)__a, (__v2df)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are less than or equal to those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLEPD / CMPLEPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmple_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmplepd((__v2df)__a, (__v2df)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are greater than those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLTPD / CMPLTPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpgt_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpltpd((__v2df)__b, (__v2df)__a); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are greater than or equal to those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLEPD / CMPLEPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpge_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmplepd((__v2df)__b, (__v2df)__a); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are ordered with respect to those in the second operand. -/// -/// A pair of double-precision values are "ordered" with respect to each -/// other if neither value is a NaN. Each comparison yields 0x0 for false, -/// 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPORDPD / CMPORDPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpord_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpordpd((__v2df)__a, (__v2df)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are unordered with respect to those in the second operand. -/// -/// A pair of double-precision values are "unordered" with respect to each -/// other if one or both values are NaN. Each comparison yields 0x0 for -/// false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPUNORDPD / CMPUNORDPD </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpunord_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpunordpd((__v2df)__a, (__v2df)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are unequal to those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNEQPD / CMPNEQPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpneq_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpneqpd((__v2df)__a, (__v2df)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are not less than those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLTPD / CMPNLTPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnlt_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpnltpd((__v2df)__a, (__v2df)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are not less than or equal to those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLEPD / CMPNLEPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnle_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpnlepd((__v2df)__a, (__v2df)__b); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are not greater than those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLTPD / CMPNLTPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpngt_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpnltpd((__v2df)__b, (__v2df)__a); -} - -/// Compares each of the corresponding double-precision values of the -/// 128-bit vectors of [2 x double] to determine if the values in the first -/// operand are not greater than or equal to those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLEPD / CMPNLEPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \param __b -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector containing the comparison results. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnge_pd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpnlepd((__v2df)__b, (__v2df)__a); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] for equality. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPEQSD / CMPEQSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpeq_sd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpeqsd((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is less than the corresponding value in -/// the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLTSD / CMPLTSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmplt_sd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpltsd((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is less than or equal to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLESD / CMPLESD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmple_sd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmplesd((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is greater than the corresponding value -/// in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLTSD / CMPLTSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpgt_sd(__m128d __a, - __m128d __b) { - __m128d __c = __builtin_ia32_cmpltsd((__v2df)__b, (__v2df)__a); - return __extension__(__m128d){__c[0], __a[1]}; -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is greater than or equal to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLESD / CMPLESD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpge_sd(__m128d __a, - __m128d __b) { - __m128d __c = __builtin_ia32_cmplesd((__v2df)__b, (__v2df)__a); - return __extension__(__m128d){__c[0], __a[1]}; -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is "ordered" with respect to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. A pair -/// of double-precision values are "ordered" with respect to each other if -/// neither value is a NaN. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPORDSD / CMPORDSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpord_sd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpordsd((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is "unordered" with respect to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. A pair -/// of double-precision values are "unordered" with respect to each other if -/// one or both values are NaN. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPUNORDSD / CMPUNORDSD </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpunord_sd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpunordsd((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is unequal to the corresponding value in -/// the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNEQSD / CMPNEQSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpneq_sd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpneqsd((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is not less than the corresponding -/// value in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLTSD / CMPNLTSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnlt_sd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpnltsd((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is not less than or equal to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLESD / CMPNLESD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnle_sd(__m128d __a, - __m128d __b) { - return (__m128d)__builtin_ia32_cmpnlesd((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is not greater than the corresponding -/// value in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLTSD / CMPNLTSD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpngt_sd(__m128d __a, - __m128d __b) { - __m128d __c = __builtin_ia32_cmpnltsd((__v2df)__b, (__v2df)__a); - return __extension__(__m128d){__c[0], __a[1]}; -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is not greater than or equal to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0x0 for false, 0xFFFFFFFFFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLESD / CMPNLESD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns A 128-bit vector. The lower 64 bits contains the comparison -/// results. The upper 64 bits are copied from the upper 64 bits of \a __a. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cmpnge_sd(__m128d __a, - __m128d __b) { - __m128d __c = __builtin_ia32_cmpnlesd((__v2df)__b, (__v2df)__a); - return __extension__(__m128d){__c[0], __a[1]}; -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] for equality. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two -/// lower double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_comieq_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_comisdeq((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is less than the corresponding value in -/// the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two -/// lower double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_comilt_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_comisdlt((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is less than or equal to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two -/// lower double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_comile_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_comisdle((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is greater than the corresponding value -/// in the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two -/// lower double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_comigt_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_comisdgt((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is greater than or equal to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two -/// lower double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_comige_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_comisdge((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is unequal to the corresponding value in -/// the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two -/// lower double-precision values is NaN, 1 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISD / COMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 1 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_comineq_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_comisdneq((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] for equality. The -/// comparison yields 0 for false, 1 for true. -/// -/// If either of the two lower double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomieq_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_ucomisdeq((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is less than the corresponding value in -/// the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two lower -/// double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomilt_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_ucomisdlt((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is less than or equal to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two lower -/// double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomile_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_ucomisdle((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is greater than the corresponding value -/// in the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two lower -/// double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomigt_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_ucomisdgt((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is greater than or equal to the -/// corresponding value in the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two -/// lower double-precision values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison results. If either of the two -/// lower double-precision values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomige_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_ucomisdge((__v2df)__a, (__v2df)__b); -} - -/// Compares the lower double-precision floating-point values in each of -/// the two 128-bit floating-point vectors of [2 x double] to determine if -/// the value in the first parameter is unequal to the corresponding value in -/// the second parameter. -/// -/// The comparison yields 0 for false, 1 for true. If either of the two lower -/// double-precision values is NaN, 1 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISD / UCOMISD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __b. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision value is -/// compared to the lower double-precision value of \a __a. -/// \returns An integer containing the comparison result. If either of the two -/// lower double-precision values is NaN, 1 is returned. -static __inline__ int __DEFAULT_FN_ATTRS _mm_ucomineq_sd(__m128d __a, - __m128d __b) { - return __builtin_ia32_ucomisdneq((__v2df)__a, (__v2df)__b); -} - -/// Converts the two double-precision floating-point elements of a -/// 128-bit vector of [2 x double] into two single-precision floating-point -/// values, returned in the lower 64 bits of a 128-bit vector of [4 x float]. -/// The upper 64 bits of the result vector are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPD2PS / CVTPD2PS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector of [4 x float] whose lower 64 bits contain the -/// converted values. The upper 64 bits are set to zero. -static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtpd_ps(__m128d __a) { - return __builtin_ia32_cvtpd2ps((__v2df)__a); -} - -/// Converts the lower two single-precision floating-point elements of a -/// 128-bit vector of [4 x float] into two double-precision floating-point -/// values, returned in a 128-bit vector of [2 x double]. The upper two -/// elements of the input vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPS2PD / CVTPS2PD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower two single-precision -/// floating-point elements are converted to double-precision values. The -/// upper two elements are unused. -/// \returns A 128-bit vector of [2 x double] containing the converted values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtps_pd(__m128 __a) { - return (__m128d) __builtin_convertvector( - __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 1), __v2df); -} - -/// Converts the lower two integer elements of a 128-bit vector of -/// [4 x i32] into two double-precision floating-point values, returned in a -/// 128-bit vector of [2 x double]. -/// -/// The upper two elements of the input vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTDQ2PD / CVTDQ2PD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector of [4 x i32]. The lower two integer elements are -/// converted to double-precision values. -/// -/// The upper two elements are unused. -/// \returns A 128-bit vector of [2 x double] containing the converted values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtepi32_pd(__m128i __a) { - return (__m128d) __builtin_convertvector( - __builtin_shufflevector((__v4si)__a, (__v4si)__a, 0, 1), __v2df); -} - -/// Converts the two double-precision floating-point elements of a -/// 128-bit vector of [2 x double] into two signed 32-bit integer values, -/// returned in the lower 64 bits of a 128-bit vector of [4 x i32]. The upper -/// 64 bits of the result vector are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPD2DQ / CVTPD2DQ </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector of [4 x i32] whose lower 64 bits contain the -/// converted values. The upper 64 bits are set to zero. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtpd_epi32(__m128d __a) { - return __builtin_ia32_cvtpd2dq((__v2df)__a); -} - -/// Converts the low-order element of a 128-bit vector of [2 x double] -/// into a 32-bit signed integer value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSD2SI / CVTSD2SI </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower 64 bits are used in the -/// conversion. -/// \returns A 32-bit signed integer containing the converted value. -static __inline__ int __DEFAULT_FN_ATTRS _mm_cvtsd_si32(__m128d __a) { - return __builtin_ia32_cvtsd2si((__v2df)__a); -} - -/// Converts the lower double-precision floating-point element of a -/// 128-bit vector of [2 x double], in the second parameter, into a -/// single-precision floating-point value, returned in the lower 32 bits of a -/// 128-bit vector of [4 x float]. The upper 96 bits of the result vector are -/// copied from the upper 96 bits of the first parameter. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSD2SS / CVTSD2SS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The upper 96 bits of this parameter are -/// copied to the upper 96 bits of the result. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower double-precision -/// floating-point element is used in the conversion. -/// \returns A 128-bit vector of [4 x float]. The lower 32 bits contain the -/// converted value from the second parameter. The upper 96 bits are copied -/// from the upper 96 bits of the first parameter. -static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtsd_ss(__m128 __a, - __m128d __b) { - return (__m128)__builtin_ia32_cvtsd2ss((__v4sf)__a, (__v2df)__b); -} - -/// Converts a 32-bit signed integer value, in the second parameter, into -/// a double-precision floating-point value, returned in the lower 64 bits of -/// a 128-bit vector of [2 x double]. The upper 64 bits of the result vector -/// are copied from the upper 64 bits of the first parameter. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSI2SD / CVTSI2SD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The upper 64 bits of this parameter are -/// copied to the upper 64 bits of the result. -/// \param __b -/// A 32-bit signed integer containing the value to be converted. -/// \returns A 128-bit vector of [2 x double]. The lower 64 bits contain the -/// converted value from the second parameter. The upper 64 bits are copied -/// from the upper 64 bits of the first parameter. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtsi32_sd(__m128d __a, - int __b) { - __a[0] = __b; - return __a; -} - -/// Converts the lower single-precision floating-point element of a -/// 128-bit vector of [4 x float], in the second parameter, into a -/// double-precision floating-point value, returned in the lower 64 bits of -/// a 128-bit vector of [2 x double]. The upper 64 bits of the result vector -/// are copied from the upper 64 bits of the first parameter. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSS2SD / CVTSS2SD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The upper 64 bits of this parameter are -/// copied to the upper 64 bits of the result. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower single-precision -/// floating-point element is used in the conversion. -/// \returns A 128-bit vector of [2 x double]. The lower 64 bits contain the -/// converted value from the second parameter. The upper 64 bits are copied -/// from the upper 64 bits of the first parameter. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtss_sd(__m128d __a, - __m128 __b) { - __a[0] = __b[0]; - return __a; -} - -/// Converts the two double-precision floating-point elements of a -/// 128-bit vector of [2 x double] into two signed 32-bit integer values, -/// returned in the lower 64 bits of a 128-bit vector of [4 x i32]. -/// -/// If the result of either conversion is inexact, the result is truncated -/// (rounded towards zero) regardless of the current MXCSR setting. The upper -/// 64 bits of the result vector are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTPD2DQ / CVTTPD2DQ </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector of [4 x i32] whose lower 64 bits contain the -/// converted values. The upper 64 bits are set to zero. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvttpd_epi32(__m128d __a) { - return (__m128i)__builtin_ia32_cvttpd2dq((__v2df)__a); -} - -/// Converts the low-order element of a [2 x double] vector into a 32-bit -/// signed integer value, truncating the result when it is inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTSD2SI / CVTTSD2SI </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower 64 bits are used in the -/// conversion. -/// \returns A 32-bit signed integer containing the converted value. -static __inline__ int __DEFAULT_FN_ATTRS _mm_cvttsd_si32(__m128d __a) { - return __builtin_ia32_cvttsd2si((__v2df)__a); -} - -/// Converts the two double-precision floating-point elements of a -/// 128-bit vector of [2 x double] into two signed 32-bit integer values, -/// returned in a 64-bit vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPD2PI </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 64-bit vector of [2 x i32] containing the converted values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_cvtpd_pi32(__m128d __a) { - return (__m64)__builtin_ia32_cvtpd2pi((__v2df)__a); -} - -/// Converts the two double-precision floating-point elements of a -/// 128-bit vector of [2 x double] into two signed 32-bit integer values, -/// returned in a 64-bit vector of [2 x i32]. -/// -/// If the result of either conversion is inexact, the result is truncated -/// (rounded towards zero) regardless of the current MXCSR setting. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTTPD2PI </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. -/// \returns A 64-bit vector of [2 x i32] containing the converted values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_cvttpd_pi32(__m128d __a) { - return (__m64)__builtin_ia32_cvttpd2pi((__v2df)__a); -} - -/// Converts the two signed 32-bit integer elements of a 64-bit vector of -/// [2 x i32] into two double-precision floating-point values, returned in a -/// 128-bit vector of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPI2PD </c> instruction. -/// -/// \param __a -/// A 64-bit vector of [2 x i32]. -/// \returns A 128-bit vector of [2 x double] containing the converted values. -static __inline__ __m128d __DEFAULT_FN_ATTRS_MMX _mm_cvtpi32_pd(__m64 __a) { - return __builtin_ia32_cvtpi2pd((__v2si)__a); -} - -/// Returns the low-order element of a 128-bit vector of [2 x double] as -/// a double-precision floating-point value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower 64 bits are returned. -/// \returns A double-precision floating-point value copied from the lower 64 -/// bits of \a __a. -static __inline__ double __DEFAULT_FN_ATTRS _mm_cvtsd_f64(__m128d __a) { - return __a[0]; -} - -/// Loads a 128-bit floating-point vector of [2 x double] from an aligned -/// memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPD / MOVAPD </c> instruction. -/// -/// \param __dp -/// A pointer to a 128-bit memory location. The address of the memory -/// location has to be 16-byte aligned. -/// \returns A 128-bit vector of [2 x double] containing the loaded values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_load_pd(double const *__dp) { - return *(const __m128d *)__dp; -} - -/// Loads a double-precision floating-point value from a specified memory -/// location and duplicates it to both vector elements of a 128-bit vector of -/// [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDDUP / MOVDDUP </c> instruction. -/// -/// \param __dp -/// A pointer to a memory location containing a double-precision value. -/// \returns A 128-bit vector of [2 x double] containing the loaded and -/// duplicated values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_load1_pd(double const *__dp) { - struct __mm_load1_pd_struct { - double __u; - } __attribute__((__packed__, __may_alias__)); - double __u = ((const struct __mm_load1_pd_struct *)__dp)->__u; - return __extension__(__m128d){__u, __u}; -} - -#define _mm_load_pd1(dp) _mm_load1_pd(dp) - -/// Loads two double-precision values, in reverse order, from an aligned -/// memory location into a 128-bit vector of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPD / MOVAPD </c> instruction + -/// needed shuffling instructions. In AVX mode, the shuffling may be combined -/// with the \c VMOVAPD, resulting in only a \c VPERMILPD instruction. -/// -/// \param __dp -/// A 16-byte aligned pointer to an array of double-precision values to be -/// loaded in reverse order. -/// \returns A 128-bit vector of [2 x double] containing the reversed loaded -/// values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_loadr_pd(double const *__dp) { - __m128d __u = *(const __m128d *)__dp; - return __builtin_shufflevector((__v2df)__u, (__v2df)__u, 1, 0); -} - -/// Loads a 128-bit floating-point vector of [2 x double] from an -/// unaligned memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPD / MOVUPD </c> instruction. -/// -/// \param __dp -/// A pointer to a 128-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns A 128-bit vector of [2 x double] containing the loaded values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_loadu_pd(double const *__dp) { - struct __loadu_pd { - __m128d_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_pd *)__dp)->__v; -} - -/// Loads a 64-bit integer value to the low element of a 128-bit integer -/// vector and clears the upper element. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. -/// -/// \param __a -/// A pointer to a 64-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns A 128-bit vector of [2 x i64] containing the loaded value. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_loadu_si64(void const *__a) { - struct __loadu_si64 { - long long __v; - } __attribute__((__packed__, __may_alias__)); - long long __u = ((const struct __loadu_si64 *)__a)->__v; - return __extension__(__m128i)(__v2di){__u, 0LL}; -} - -/// Loads a 32-bit integer value to the low element of a 128-bit integer -/// vector and clears the upper element. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. -/// -/// \param __a -/// A pointer to a 32-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns A 128-bit vector of [4 x i32] containing the loaded value. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_loadu_si32(void const *__a) { - struct __loadu_si32 { - int __v; - } __attribute__((__packed__, __may_alias__)); - int __u = ((const struct __loadu_si32 *)__a)->__v; - return __extension__(__m128i)(__v4si){__u, 0, 0, 0}; -} - -/// Loads a 16-bit integer value to the low element of a 128-bit integer -/// vector and clears the upper element. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic does not correspond to a specific instruction. -/// -/// \param __a -/// A pointer to a 16-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns A 128-bit vector of [8 x i16] containing the loaded value. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_loadu_si16(void const *__a) { - struct __loadu_si16 { - short __v; - } __attribute__((__packed__, __may_alias__)); - short __u = ((const struct __loadu_si16 *)__a)->__v; - return __extension__(__m128i)(__v8hi){__u, 0, 0, 0, 0, 0, 0, 0}; -} - -/// Loads a 64-bit double-precision value to the low element of a -/// 128-bit integer vector and clears the upper element. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSD / MOVSD </c> instruction. -/// -/// \param __dp -/// A pointer to a memory location containing a double-precision value. -/// The address of the memory location does not have to be aligned. -/// \returns A 128-bit vector of [2 x double] containing the loaded value. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_load_sd(double const *__dp) { - struct __mm_load_sd_struct { - double __u; - } __attribute__((__packed__, __may_alias__)); - double __u = ((const struct __mm_load_sd_struct *)__dp)->__u; - return __extension__(__m128d){__u, 0}; -} - -/// Loads a double-precision value into the high-order bits of a 128-bit -/// vector of [2 x double]. The low-order bits are copied from the low-order -/// bits of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVHPD / MOVHPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. \n -/// Bits [63:0] are written to bits [63:0] of the result. -/// \param __dp -/// A pointer to a 64-bit memory location containing a double-precision -/// floating-point value that is loaded. The loaded value is written to bits -/// [127:64] of the result. The address of the memory location does not have -/// to be aligned. -/// \returns A 128-bit vector of [2 x double] containing the moved values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_loadh_pd(__m128d __a, - double const *__dp) { - struct __mm_loadh_pd_struct { - double __u; - } __attribute__((__packed__, __may_alias__)); - double __u = ((const struct __mm_loadh_pd_struct *)__dp)->__u; - return __extension__(__m128d){__a[0], __u}; -} - -/// Loads a double-precision value into the low-order bits of a 128-bit -/// vector of [2 x double]. The high-order bits are copied from the -/// high-order bits of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVLPD / MOVLPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. \n -/// Bits [127:64] are written to bits [127:64] of the result. -/// \param __dp -/// A pointer to a 64-bit memory location containing a double-precision -/// floating-point value that is loaded. The loaded value is written to bits -/// [63:0] of the result. The address of the memory location does not have to -/// be aligned. -/// \returns A 128-bit vector of [2 x double] containing the moved values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_loadl_pd(__m128d __a, - double const *__dp) { - struct __mm_loadl_pd_struct { - double __u; - } __attribute__((__packed__, __may_alias__)); - double __u = ((const struct __mm_loadl_pd_struct *)__dp)->__u; - return __extension__(__m128d){__u, __a[1]}; -} - -/// Constructs a 128-bit floating-point vector of [2 x double] with -/// unspecified content. This could be used as an argument to another -/// intrinsic function where the argument is required but the value is not -/// actually used. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \returns A 128-bit floating-point vector of [2 x double] with unspecified -/// content. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_undefined_pd(void) { - return (__m128d)__builtin_ia32_undef128(); -} - -/// Constructs a 128-bit floating-point vector of [2 x double]. The lower -/// 64 bits of the vector are initialized with the specified double-precision -/// floating-point value. The upper 64 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. -/// -/// \param __w -/// A double-precision floating-point value used to initialize the lower 64 -/// bits of the result. -/// \returns An initialized 128-bit floating-point vector of [2 x double]. The -/// lower 64 bits contain the value of the parameter. The upper 64 bits are -/// set to zero. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_sd(double __w) { - return __extension__(__m128d){__w, 0}; -} - -/// Constructs a 128-bit floating-point vector of [2 x double], with each -/// of the two double-precision floating-point vector elements set to the -/// specified double-precision floating-point value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDDUP / MOVLHPS </c> instruction. -/// -/// \param __w -/// A double-precision floating-point value used to initialize each vector -/// element of the result. -/// \returns An initialized 128-bit floating-point vector of [2 x double]. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set1_pd(double __w) { - return __extension__(__m128d){__w, __w}; -} - -/// Constructs a 128-bit floating-point vector of [2 x double], with each -/// of the two double-precision floating-point vector elements set to the -/// specified double-precision floating-point value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDDUP / MOVLHPS </c> instruction. -/// -/// \param __w -/// A double-precision floating-point value used to initialize each vector -/// element of the result. -/// \returns An initialized 128-bit floating-point vector of [2 x double]. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_pd1(double __w) { - return _mm_set1_pd(__w); -} - -/// Constructs a 128-bit floating-point vector of [2 x double] -/// initialized with the specified double-precision floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPD / UNPCKLPD </c> instruction. -/// -/// \param __w -/// A double-precision floating-point value used to initialize the upper 64 -/// bits of the result. -/// \param __x -/// A double-precision floating-point value used to initialize the lower 64 -/// bits of the result. -/// \returns An initialized 128-bit floating-point vector of [2 x double]. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_pd(double __w, - double __x) { - return __extension__(__m128d){__x, __w}; -} - -/// Constructs a 128-bit floating-point vector of [2 x double], -/// initialized in reverse order with the specified double-precision -/// floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPD / UNPCKLPD </c> instruction. -/// -/// \param __w -/// A double-precision floating-point value used to initialize the lower 64 -/// bits of the result. -/// \param __x -/// A double-precision floating-point value used to initialize the upper 64 -/// bits of the result. -/// \returns An initialized 128-bit floating-point vector of [2 x double]. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_setr_pd(double __w, - double __x) { - return __extension__(__m128d){__w, __x}; -} - -/// Constructs a 128-bit floating-point vector of [2 x double] -/// initialized to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPS / XORPS </c> instruction. -/// -/// \returns An initialized 128-bit floating-point vector of [2 x double] with -/// all elements set to zero. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_setzero_pd(void) { - return __extension__(__m128d){0.0, 0.0}; -} - -/// Constructs a 128-bit floating-point vector of [2 x double]. The lower -/// 64 bits are set to the lower 64 bits of the second parameter. The upper -/// 64 bits are set to the upper 64 bits of the first parameter. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBLENDPD / BLENDPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The upper 64 bits are written to the -/// upper 64 bits of the result. -/// \param __b -/// A 128-bit vector of [2 x double]. The lower 64 bits are written to the -/// lower 64 bits of the result. -/// \returns A 128-bit vector of [2 x double] containing the moved values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_move_sd(__m128d __a, - __m128d __b) { - __a[0] = __b[0]; - return __a; -} - -/// Stores the lower 64 bits of a 128-bit vector of [2 x double] to a -/// memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSD / MOVSD </c> instruction. -/// -/// \param __dp -/// A pointer to a 64-bit memory location. -/// \param __a -/// A 128-bit vector of [2 x double] containing the value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_store_sd(double *__dp, - __m128d __a) { - struct __mm_store_sd_struct { - double __u; - } __attribute__((__packed__, __may_alias__)); - ((struct __mm_store_sd_struct *)__dp)->__u = __a[0]; -} - -/// Moves packed double-precision values from a 128-bit vector of -/// [2 x double] to a memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c>VMOVAPD / MOVAPS</c> instruction. -/// -/// \param __dp -/// A pointer to an aligned memory location that can store two -/// double-precision values. -/// \param __a -/// A packed 128-bit vector of [2 x double] containing the values to be -/// moved. -static __inline__ void __DEFAULT_FN_ATTRS _mm_store_pd(double *__dp, - __m128d __a) { - *(__m128d *)__dp = __a; -} - -/// Moves the lower 64 bits of a 128-bit vector of [2 x double] twice to -/// the upper and lower 64 bits of a memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the -/// <c> VMOVDDUP + VMOVAPD / MOVLHPS + MOVAPS </c> instruction. -/// -/// \param __dp -/// A pointer to a memory location that can store two double-precision -/// values. -/// \param __a -/// A 128-bit vector of [2 x double] whose lower 64 bits are copied to each -/// of the values in \a __dp. -static __inline__ void __DEFAULT_FN_ATTRS _mm_store1_pd(double *__dp, - __m128d __a) { - __a = __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 0); - _mm_store_pd(__dp, __a); -} - -/// Moves the lower 64 bits of a 128-bit vector of [2 x double] twice to -/// the upper and lower 64 bits of a memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the -/// <c> VMOVDDUP + VMOVAPD / MOVLHPS + MOVAPS </c> instruction. -/// -/// \param __dp -/// A pointer to a memory location that can store two double-precision -/// values. -/// \param __a -/// A 128-bit vector of [2 x double] whose lower 64 bits are copied to each -/// of the values in \a __dp. -static __inline__ void __DEFAULT_FN_ATTRS _mm_store_pd1(double *__dp, - __m128d __a) { - _mm_store1_pd(__dp, __a); -} - -/// Stores a 128-bit vector of [2 x double] into an unaligned memory -/// location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPD / MOVUPD </c> instruction. -/// -/// \param __dp -/// A pointer to a 128-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \param __a -/// A 128-bit vector of [2 x double] containing the values to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_pd(double *__dp, - __m128d __a) { - struct __storeu_pd { - __m128d_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_pd *)__dp)->__v = __a; -} - -/// Stores two double-precision values, in reverse order, from a 128-bit -/// vector of [2 x double] to a 16-byte aligned memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to a shuffling instruction followed by a -/// <c> VMOVAPD / MOVAPD </c> instruction. -/// -/// \param __dp -/// A pointer to a 16-byte aligned memory location that can store two -/// double-precision values. -/// \param __a -/// A 128-bit vector of [2 x double] containing the values to be reversed and -/// stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storer_pd(double *__dp, - __m128d __a) { - __a = __builtin_shufflevector((__v2df)__a, (__v2df)__a, 1, 0); - *(__m128d *)__dp = __a; -} - -/// Stores the upper 64 bits of a 128-bit vector of [2 x double] to a -/// memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVHPD / MOVHPD </c> instruction. -/// -/// \param __dp -/// A pointer to a 64-bit memory location. -/// \param __a -/// A 128-bit vector of [2 x double] containing the value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storeh_pd(double *__dp, - __m128d __a) { - struct __mm_storeh_pd_struct { - double __u; - } __attribute__((__packed__, __may_alias__)); - ((struct __mm_storeh_pd_struct *)__dp)->__u = __a[1]; -} - -/// Stores the lower 64 bits of a 128-bit vector of [2 x double] to a -/// memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVLPD / MOVLPD </c> instruction. -/// -/// \param __dp -/// A pointer to a 64-bit memory location. -/// \param __a -/// A 128-bit vector of [2 x double] containing the value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storel_pd(double *__dp, - __m128d __a) { - struct __mm_storeh_pd_struct { - double __u; - } __attribute__((__packed__, __may_alias__)); - ((struct __mm_storeh_pd_struct *)__dp)->__u = __a[0]; -} - -/// Adds the corresponding elements of two 128-bit vectors of [16 x i8], -/// saving the lower 8 bits of each sum in the corresponding element of a -/// 128-bit result vector of [16 x i8]. -/// -/// The integer elements of both parameters can be either signed or unsigned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPADDB / PADDB </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [16 x i8]. -/// \param __b -/// A 128-bit vector of [16 x i8]. -/// \returns A 128-bit vector of [16 x i8] containing the sums of both -/// parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi8(__m128i __a, - __m128i __b) { - return (__m128i)((__v16qu)__a + (__v16qu)__b); -} - -/// Adds the corresponding elements of two 128-bit vectors of [8 x i16], -/// saving the lower 16 bits of each sum in the corresponding element of a -/// 128-bit result vector of [8 x i16]. -/// -/// The integer elements of both parameters can be either signed or unsigned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPADDW / PADDW </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16]. -/// \param __b -/// A 128-bit vector of [8 x i16]. -/// \returns A 128-bit vector of [8 x i16] containing the sums of both -/// parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi16(__m128i __a, - __m128i __b) { - return (__m128i)((__v8hu)__a + (__v8hu)__b); -} - -/// Adds the corresponding elements of two 128-bit vectors of [4 x i32], -/// saving the lower 32 bits of each sum in the corresponding element of a -/// 128-bit result vector of [4 x i32]. -/// -/// The integer elements of both parameters can be either signed or unsigned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPADDD / PADDD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x i32]. -/// \param __b -/// A 128-bit vector of [4 x i32]. -/// \returns A 128-bit vector of [4 x i32] containing the sums of both -/// parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi32(__m128i __a, - __m128i __b) { - return (__m128i)((__v4su)__a + (__v4su)__b); -} - -/// Adds two signed or unsigned 64-bit integer values, returning the -/// lower 64 bits of the sum. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PADDQ </c> instruction. -/// -/// \param __a -/// A 64-bit integer. -/// \param __b -/// A 64-bit integer. -/// \returns A 64-bit integer containing the sum of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_add_si64(__m64 __a, - __m64 __b) { - return (__m64)__builtin_ia32_paddq((__v1di)__a, (__v1di)__b); -} - -/// Adds the corresponding elements of two 128-bit vectors of [2 x i64], -/// saving the lower 64 bits of each sum in the corresponding element of a -/// 128-bit result vector of [2 x i64]. -/// -/// The integer elements of both parameters can be either signed or unsigned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPADDQ / PADDQ </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x i64]. -/// \param __b -/// A 128-bit vector of [2 x i64]. -/// \returns A 128-bit vector of [2 x i64] containing the sums of both -/// parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi64(__m128i __a, - __m128i __b) { - return (__m128i)((__v2du)__a + (__v2du)__b); -} - -/// Adds, with saturation, the corresponding elements of two 128-bit -/// signed [16 x i8] vectors, saving each sum in the corresponding element of -/// a 128-bit result vector of [16 x i8]. Positive sums greater than 0x7F are -/// saturated to 0x7F. Negative sums less than 0x80 are saturated to 0x80. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPADDSB / PADDSB </c> instruction. -/// -/// \param __a -/// A 128-bit signed [16 x i8] vector. -/// \param __b -/// A 128-bit signed [16 x i8] vector. -/// \returns A 128-bit signed [16 x i8] vector containing the saturated sums of -/// both parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_adds_epi8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_add_sat((__v16qs)__a, (__v16qs)__b); -} - -/// Adds, with saturation, the corresponding elements of two 128-bit -/// signed [8 x i16] vectors, saving each sum in the corresponding element of -/// a 128-bit result vector of [8 x i16]. Positive sums greater than 0x7FFF -/// are saturated to 0x7FFF. Negative sums less than 0x8000 are saturated to -/// 0x8000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPADDSW / PADDSW </c> instruction. -/// -/// \param __a -/// A 128-bit signed [8 x i16] vector. -/// \param __b -/// A 128-bit signed [8 x i16] vector. -/// \returns A 128-bit signed [8 x i16] vector containing the saturated sums of -/// both parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_adds_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_add_sat((__v8hi)__a, (__v8hi)__b); -} - -/// Adds, with saturation, the corresponding elements of two 128-bit -/// unsigned [16 x i8] vectors, saving each sum in the corresponding element -/// of a 128-bit result vector of [16 x i8]. Positive sums greater than 0xFF -/// are saturated to 0xFF. Negative sums are saturated to 0x00. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPADDUSB / PADDUSB </c> instruction. -/// -/// \param __a -/// A 128-bit unsigned [16 x i8] vector. -/// \param __b -/// A 128-bit unsigned [16 x i8] vector. -/// \returns A 128-bit unsigned [16 x i8] vector containing the saturated sums -/// of both parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_adds_epu8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_add_sat((__v16qu)__a, (__v16qu)__b); -} - -/// Adds, with saturation, the corresponding elements of two 128-bit -/// unsigned [8 x i16] vectors, saving each sum in the corresponding element -/// of a 128-bit result vector of [8 x i16]. Positive sums greater than -/// 0xFFFF are saturated to 0xFFFF. Negative sums are saturated to 0x0000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPADDUSB / PADDUSB </c> instruction. -/// -/// \param __a -/// A 128-bit unsigned [8 x i16] vector. -/// \param __b -/// A 128-bit unsigned [8 x i16] vector. -/// \returns A 128-bit unsigned [8 x i16] vector containing the saturated sums -/// of both parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_adds_epu16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_add_sat((__v8hu)__a, (__v8hu)__b); -} - -/// Computes the rounded averages of corresponding elements of two -/// 128-bit unsigned [16 x i8] vectors, saving each result in the -/// corresponding element of a 128-bit result vector of [16 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPAVGB / PAVGB </c> instruction. -/// -/// \param __a -/// A 128-bit unsigned [16 x i8] vector. -/// \param __b -/// A 128-bit unsigned [16 x i8] vector. -/// \returns A 128-bit unsigned [16 x i8] vector containing the rounded -/// averages of both parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_avg_epu8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_ia32_pavgb128((__v16qi)__a, (__v16qi)__b); -} - -/// Computes the rounded averages of corresponding elements of two -/// 128-bit unsigned [8 x i16] vectors, saving each result in the -/// corresponding element of a 128-bit result vector of [8 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPAVGW / PAVGW </c> instruction. -/// -/// \param __a -/// A 128-bit unsigned [8 x i16] vector. -/// \param __b -/// A 128-bit unsigned [8 x i16] vector. -/// \returns A 128-bit unsigned [8 x i16] vector containing the rounded -/// averages of both parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_avg_epu16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_ia32_pavgw128((__v8hi)__a, (__v8hi)__b); -} - -/// Multiplies the corresponding elements of two 128-bit signed [8 x i16] -/// vectors, producing eight intermediate 32-bit signed integer products, and -/// adds the consecutive pairs of 32-bit products to form a 128-bit signed -/// [4 x i32] vector. -/// -/// For example, bits [15:0] of both parameters are multiplied producing a -/// 32-bit product, bits [31:16] of both parameters are multiplied producing -/// a 32-bit product, and the sum of those two products becomes bits [31:0] -/// of the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMADDWD / PMADDWD </c> instruction. -/// -/// \param __a -/// A 128-bit signed [8 x i16] vector. -/// \param __b -/// A 128-bit signed [8 x i16] vector. -/// \returns A 128-bit signed [4 x i32] vector containing the sums of products -/// of both parameters. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_madd_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_ia32_pmaddwd128((__v8hi)__a, (__v8hi)__b); -} - -/// Compares corresponding elements of two 128-bit signed [8 x i16] -/// vectors, saving the greater value from each comparison in the -/// corresponding element of a 128-bit result vector of [8 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMAXSW / PMAXSW </c> instruction. -/// -/// \param __a -/// A 128-bit signed [8 x i16] vector. -/// \param __b -/// A 128-bit signed [8 x i16] vector. -/// \returns A 128-bit signed [8 x i16] vector containing the greater value of -/// each comparison. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_max((__v8hi)__a, (__v8hi)__b); -} - -/// Compares corresponding elements of two 128-bit unsigned [16 x i8] -/// vectors, saving the greater value from each comparison in the -/// corresponding element of a 128-bit result vector of [16 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMAXUB / PMAXUB </c> instruction. -/// -/// \param __a -/// A 128-bit unsigned [16 x i8] vector. -/// \param __b -/// A 128-bit unsigned [16 x i8] vector. -/// \returns A 128-bit unsigned [16 x i8] vector containing the greater value of -/// each comparison. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_max((__v16qu)__a, (__v16qu)__b); -} - -/// Compares corresponding elements of two 128-bit signed [8 x i16] -/// vectors, saving the smaller value from each comparison in the -/// corresponding element of a 128-bit result vector of [8 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMINSW / PMINSW </c> instruction. -/// -/// \param __a -/// A 128-bit signed [8 x i16] vector. -/// \param __b -/// A 128-bit signed [8 x i16] vector. -/// \returns A 128-bit signed [8 x i16] vector containing the smaller value of -/// each comparison. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_min((__v8hi)__a, (__v8hi)__b); -} - -/// Compares corresponding elements of two 128-bit unsigned [16 x i8] -/// vectors, saving the smaller value from each comparison in the -/// corresponding element of a 128-bit result vector of [16 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMINUB / PMINUB </c> instruction. -/// -/// \param __a -/// A 128-bit unsigned [16 x i8] vector. -/// \param __b -/// A 128-bit unsigned [16 x i8] vector. -/// \returns A 128-bit unsigned [16 x i8] vector containing the smaller value of -/// each comparison. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_min((__v16qu)__a, (__v16qu)__b); -} - -/// Multiplies the corresponding elements of two signed [8 x i16] -/// vectors, saving the upper 16 bits of each 32-bit product in the -/// corresponding element of a 128-bit signed [8 x i16] result vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMULHW / PMULHW </c> instruction. -/// -/// \param __a -/// A 128-bit signed [8 x i16] vector. -/// \param __b -/// A 128-bit signed [8 x i16] vector. -/// \returns A 128-bit signed [8 x i16] vector containing the upper 16 bits of -/// each of the eight 32-bit products. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mulhi_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_ia32_pmulhw128((__v8hi)__a, (__v8hi)__b); -} - -/// Multiplies the corresponding elements of two unsigned [8 x i16] -/// vectors, saving the upper 16 bits of each 32-bit product in the -/// corresponding element of a 128-bit unsigned [8 x i16] result vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMULHUW / PMULHUW </c> instruction. -/// -/// \param __a -/// A 128-bit unsigned [8 x i16] vector. -/// \param __b -/// A 128-bit unsigned [8 x i16] vector. -/// \returns A 128-bit unsigned [8 x i16] vector containing the upper 16 bits -/// of each of the eight 32-bit products. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mulhi_epu16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_ia32_pmulhuw128((__v8hi)__a, (__v8hi)__b); -} - -/// Multiplies the corresponding elements of two signed [8 x i16] -/// vectors, saving the lower 16 bits of each 32-bit product in the -/// corresponding element of a 128-bit signed [8 x i16] result vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMULLW / PMULLW </c> instruction. -/// -/// \param __a -/// A 128-bit signed [8 x i16] vector. -/// \param __b -/// A 128-bit signed [8 x i16] vector. -/// \returns A 128-bit signed [8 x i16] vector containing the lower 16 bits of -/// each of the eight 32-bit products. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mullo_epi16(__m128i __a, - __m128i __b) { - return (__m128i)((__v8hu)__a * (__v8hu)__b); -} - -/// Multiplies 32-bit unsigned integer values contained in the lower bits -/// of the two 64-bit integer vectors and returns the 64-bit unsigned -/// product. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMULUDQ </c> instruction. -/// -/// \param __a -/// A 64-bit integer containing one of the source operands. -/// \param __b -/// A 64-bit integer containing one of the source operands. -/// \returns A 64-bit integer vector containing the product of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_mul_su32(__m64 __a, - __m64 __b) { - return __builtin_ia32_pmuludq((__v2si)__a, (__v2si)__b); -} - -/// Multiplies 32-bit unsigned integer values contained in the lower -/// bits of the corresponding elements of two [2 x i64] vectors, and returns -/// the 64-bit products in the corresponding elements of a [2 x i64] vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMULUDQ / PMULUDQ </c> instruction. -/// -/// \param __a -/// A [2 x i64] vector containing one of the source operands. -/// \param __b -/// A [2 x i64] vector containing one of the source operands. -/// \returns A [2 x i64] vector containing the product of both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mul_epu32(__m128i __a, - __m128i __b) { - return __builtin_ia32_pmuludq128((__v4si)__a, (__v4si)__b); -} - -/// Computes the absolute differences of corresponding 8-bit integer -/// values in two 128-bit vectors. Sums the first 8 absolute differences, and -/// separately sums the second 8 absolute differences. Packs these two -/// unsigned 16-bit integer sums into the upper and lower elements of a -/// [2 x i64] vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSADBW / PSADBW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing one of the source operands. -/// \param __b -/// A 128-bit integer vector containing one of the source operands. -/// \returns A [2 x i64] vector containing the sums of the sets of absolute -/// differences between both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sad_epu8(__m128i __a, - __m128i __b) { - return __builtin_ia32_psadbw128((__v16qi)__a, (__v16qi)__b); -} - -/// Subtracts the corresponding 8-bit integer values in the operands. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSUBB / PSUBB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the minuends. -/// \param __b -/// A 128-bit integer vector containing the subtrahends. -/// \returns A 128-bit integer vector containing the differences of the values -/// in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi8(__m128i __a, - __m128i __b) { - return (__m128i)((__v16qu)__a - (__v16qu)__b); -} - -/// Subtracts the corresponding 16-bit integer values in the operands. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSUBW / PSUBW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the minuends. -/// \param __b -/// A 128-bit integer vector containing the subtrahends. -/// \returns A 128-bit integer vector containing the differences of the values -/// in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi16(__m128i __a, - __m128i __b) { - return (__m128i)((__v8hu)__a - (__v8hu)__b); -} - -/// Subtracts the corresponding 32-bit integer values in the operands. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSUBD / PSUBD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the minuends. -/// \param __b -/// A 128-bit integer vector containing the subtrahends. -/// \returns A 128-bit integer vector containing the differences of the values -/// in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi32(__m128i __a, - __m128i __b) { - return (__m128i)((__v4su)__a - (__v4su)__b); -} - -/// Subtracts signed or unsigned 64-bit integer values and writes the -/// difference to the corresponding bits in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSUBQ </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing the minuend. -/// \param __b -/// A 64-bit integer vector containing the subtrahend. -/// \returns A 64-bit integer vector containing the difference of the values in -/// the operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_sub_si64(__m64 __a, - __m64 __b) { - return (__m64)__builtin_ia32_psubq((__v1di)__a, (__v1di)__b); -} - -/// Subtracts the corresponding elements of two [2 x i64] vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSUBQ / PSUBQ </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the minuends. -/// \param __b -/// A 128-bit integer vector containing the subtrahends. -/// \returns A 128-bit integer vector containing the differences of the values -/// in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi64(__m128i __a, - __m128i __b) { - return (__m128i)((__v2du)__a - (__v2du)__b); -} - -/// Subtracts corresponding 8-bit signed integer values in the input and -/// returns the differences in the corresponding bytes in the destination. -/// Differences greater than 0x7F are saturated to 0x7F, and differences less -/// than 0x80 are saturated to 0x80. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSUBSB / PSUBSB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the minuends. -/// \param __b -/// A 128-bit integer vector containing the subtrahends. -/// \returns A 128-bit integer vector containing the differences of the values -/// in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_subs_epi8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_sub_sat((__v16qs)__a, (__v16qs)__b); -} - -/// Subtracts corresponding 16-bit signed integer values in the input and -/// returns the differences in the corresponding bytes in the destination. -/// Differences greater than 0x7FFF are saturated to 0x7FFF, and values less -/// than 0x8000 are saturated to 0x8000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSUBSW / PSUBSW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the minuends. -/// \param __b -/// A 128-bit integer vector containing the subtrahends. -/// \returns A 128-bit integer vector containing the differences of the values -/// in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_subs_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_sub_sat((__v8hi)__a, (__v8hi)__b); -} - -/// Subtracts corresponding 8-bit unsigned integer values in the input -/// and returns the differences in the corresponding bytes in the -/// destination. Differences less than 0x00 are saturated to 0x00. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSUBUSB / PSUBUSB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the minuends. -/// \param __b -/// A 128-bit integer vector containing the subtrahends. -/// \returns A 128-bit integer vector containing the unsigned integer -/// differences of the values in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_subs_epu8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_sub_sat((__v16qu)__a, (__v16qu)__b); -} - -/// Subtracts corresponding 16-bit unsigned integer values in the input -/// and returns the differences in the corresponding bytes in the -/// destination. Differences less than 0x0000 are saturated to 0x0000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSUBUSW / PSUBUSW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the minuends. -/// \param __b -/// A 128-bit integer vector containing the subtrahends. -/// \returns A 128-bit integer vector containing the unsigned integer -/// differences of the values in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_subs_epu16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_elementwise_sub_sat((__v8hu)__a, (__v8hu)__b); -} - -/// Performs a bitwise AND of two 128-bit integer vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPAND / PAND </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing one of the source operands. -/// \param __b -/// A 128-bit integer vector containing one of the source operands. -/// \returns A 128-bit integer vector containing the bitwise AND of the values -/// in both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_and_si128(__m128i __a, - __m128i __b) { - return (__m128i)((__v2du)__a & (__v2du)__b); -} - -/// Performs a bitwise AND of two 128-bit integer vectors, using the -/// one's complement of the values contained in the first source operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPANDN / PANDN </c> instruction. -/// -/// \param __a -/// A 128-bit vector containing the left source operand. The one's complement -/// of this value is used in the bitwise AND. -/// \param __b -/// A 128-bit vector containing the right source operand. -/// \returns A 128-bit integer vector containing the bitwise AND of the one's -/// complement of the first operand and the values in the second operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_andnot_si128(__m128i __a, - __m128i __b) { - return (__m128i)(~(__v2du)__a & (__v2du)__b); -} -/// Performs a bitwise OR of two 128-bit integer vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPOR / POR </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing one of the source operands. -/// \param __b -/// A 128-bit integer vector containing one of the source operands. -/// \returns A 128-bit integer vector containing the bitwise OR of the values -/// in both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_or_si128(__m128i __a, - __m128i __b) { - return (__m128i)((__v2du)__a | (__v2du)__b); -} - -/// Performs a bitwise exclusive OR of two 128-bit integer vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPXOR / PXOR </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing one of the source operands. -/// \param __b -/// A 128-bit integer vector containing one of the source operands. -/// \returns A 128-bit integer vector containing the bitwise exclusive OR of the -/// values in both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_xor_si128(__m128i __a, - __m128i __b) { - return (__m128i)((__v2du)__a ^ (__v2du)__b); -} - -/// Left-shifts the 128-bit integer vector operand by the specified -/// number of bytes. Low-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_slli_si128(__m128i a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPSLLDQ / PSLLDQ </c> instruction. -/// -/// \param a -/// A 128-bit integer vector containing the source operand. -/// \param imm -/// An immediate value specifying the number of bytes to left-shift operand -/// \a a. -/// \returns A 128-bit integer vector containing the left-shifted value. -#define _mm_slli_si128(a, imm) \ - ((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), \ - (int)(imm))) - -#define _mm_bslli_si128(a, imm) \ - ((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), \ - (int)(imm))) - -/// Left-shifts each 16-bit value in the 128-bit integer vector operand -/// by the specified number of bits. Low-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSLLW / PSLLW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// An integer value specifying the number of bits to left-shift each value -/// in operand \a __a. -/// \returns A 128-bit integer vector containing the left-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_slli_epi16(__m128i __a, - int __count) { - return (__m128i)__builtin_ia32_psllwi128((__v8hi)__a, __count); -} - -/// Left-shifts each 16-bit value in the 128-bit integer vector operand -/// by the specified number of bits. Low-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSLLW / PSLLW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// A 128-bit integer vector in which bits [63:0] specify the number of bits -/// to left-shift each value in operand \a __a. -/// \returns A 128-bit integer vector containing the left-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sll_epi16(__m128i __a, - __m128i __count) { - return (__m128i)__builtin_ia32_psllw128((__v8hi)__a, (__v8hi)__count); -} - -/// Left-shifts each 32-bit value in the 128-bit integer vector operand -/// by the specified number of bits. Low-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSLLD / PSLLD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// An integer value specifying the number of bits to left-shift each value -/// in operand \a __a. -/// \returns A 128-bit integer vector containing the left-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_slli_epi32(__m128i __a, - int __count) { - return (__m128i)__builtin_ia32_pslldi128((__v4si)__a, __count); -} - -/// Left-shifts each 32-bit value in the 128-bit integer vector operand -/// by the specified number of bits. Low-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSLLD / PSLLD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// A 128-bit integer vector in which bits [63:0] specify the number of bits -/// to left-shift each value in operand \a __a. -/// \returns A 128-bit integer vector containing the left-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sll_epi32(__m128i __a, - __m128i __count) { - return (__m128i)__builtin_ia32_pslld128((__v4si)__a, (__v4si)__count); -} - -/// Left-shifts each 64-bit value in the 128-bit integer vector operand -/// by the specified number of bits. Low-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSLLQ / PSLLQ </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// An integer value specifying the number of bits to left-shift each value -/// in operand \a __a. -/// \returns A 128-bit integer vector containing the left-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_slli_epi64(__m128i __a, - int __count) { - return __builtin_ia32_psllqi128((__v2di)__a, __count); -} - -/// Left-shifts each 64-bit value in the 128-bit integer vector operand -/// by the specified number of bits. Low-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSLLQ / PSLLQ </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// A 128-bit integer vector in which bits [63:0] specify the number of bits -/// to left-shift each value in operand \a __a. -/// \returns A 128-bit integer vector containing the left-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sll_epi64(__m128i __a, - __m128i __count) { - return __builtin_ia32_psllq128((__v2di)__a, (__v2di)__count); -} - -/// Right-shifts each 16-bit value in the 128-bit integer vector operand -/// by the specified number of bits. High-order bits are filled with the sign -/// bit of the initial value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRAW / PSRAW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// An integer value specifying the number of bits to right-shift each value -/// in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srai_epi16(__m128i __a, - int __count) { - return (__m128i)__builtin_ia32_psrawi128((__v8hi)__a, __count); -} - -/// Right-shifts each 16-bit value in the 128-bit integer vector operand -/// by the specified number of bits. High-order bits are filled with the sign -/// bit of the initial value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRAW / PSRAW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// A 128-bit integer vector in which bits [63:0] specify the number of bits -/// to right-shift each value in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sra_epi16(__m128i __a, - __m128i __count) { - return (__m128i)__builtin_ia32_psraw128((__v8hi)__a, (__v8hi)__count); -} - -/// Right-shifts each 32-bit value in the 128-bit integer vector operand -/// by the specified number of bits. High-order bits are filled with the sign -/// bit of the initial value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRAD / PSRAD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// An integer value specifying the number of bits to right-shift each value -/// in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srai_epi32(__m128i __a, - int __count) { - return (__m128i)__builtin_ia32_psradi128((__v4si)__a, __count); -} - -/// Right-shifts each 32-bit value in the 128-bit integer vector operand -/// by the specified number of bits. High-order bits are filled with the sign -/// bit of the initial value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRAD / PSRAD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// A 128-bit integer vector in which bits [63:0] specify the number of bits -/// to right-shift each value in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sra_epi32(__m128i __a, - __m128i __count) { - return (__m128i)__builtin_ia32_psrad128((__v4si)__a, (__v4si)__count); -} - -/// Right-shifts the 128-bit integer vector operand by the specified -/// number of bytes. High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_srli_si128(__m128i a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPSRLDQ / PSRLDQ </c> instruction. -/// -/// \param a -/// A 128-bit integer vector containing the source operand. -/// \param imm -/// An immediate value specifying the number of bytes to right-shift operand -/// \a a. -/// \returns A 128-bit integer vector containing the right-shifted value. -#define _mm_srli_si128(a, imm) \ - ((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), \ - (int)(imm))) - -#define _mm_bsrli_si128(a, imm) \ - ((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), \ - (int)(imm))) - -/// Right-shifts each of 16-bit values in the 128-bit integer vector -/// operand by the specified number of bits. High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRLW / PSRLW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// An integer value specifying the number of bits to right-shift each value -/// in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srli_epi16(__m128i __a, - int __count) { - return (__m128i)__builtin_ia32_psrlwi128((__v8hi)__a, __count); -} - -/// Right-shifts each of 16-bit values in the 128-bit integer vector -/// operand by the specified number of bits. High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRLW / PSRLW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// A 128-bit integer vector in which bits [63:0] specify the number of bits -/// to right-shift each value in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srl_epi16(__m128i __a, - __m128i __count) { - return (__m128i)__builtin_ia32_psrlw128((__v8hi)__a, (__v8hi)__count); -} - -/// Right-shifts each of 32-bit values in the 128-bit integer vector -/// operand by the specified number of bits. High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRLD / PSRLD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// An integer value specifying the number of bits to right-shift each value -/// in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srli_epi32(__m128i __a, - int __count) { - return (__m128i)__builtin_ia32_psrldi128((__v4si)__a, __count); -} - -/// Right-shifts each of 32-bit values in the 128-bit integer vector -/// operand by the specified number of bits. High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRLD / PSRLD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// A 128-bit integer vector in which bits [63:0] specify the number of bits -/// to right-shift each value in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srl_epi32(__m128i __a, - __m128i __count) { - return (__m128i)__builtin_ia32_psrld128((__v4si)__a, (__v4si)__count); -} - -/// Right-shifts each of 64-bit values in the 128-bit integer vector -/// operand by the specified number of bits. High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRLQ / PSRLQ </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// An integer value specifying the number of bits to right-shift each value -/// in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srli_epi64(__m128i __a, - int __count) { - return __builtin_ia32_psrlqi128((__v2di)__a, __count); -} - -/// Right-shifts each of 64-bit values in the 128-bit integer vector -/// operand by the specified number of bits. High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPSRLQ / PSRLQ </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the source operand. -/// \param __count -/// A 128-bit integer vector in which bits [63:0] specify the number of bits -/// to right-shift each value in operand \a __a. -/// \returns A 128-bit integer vector containing the right-shifted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srl_epi64(__m128i __a, - __m128i __count) { - return __builtin_ia32_psrlq128((__v2di)__a, (__v2di)__count); -} - -/// Compares each of the corresponding 8-bit values of the 128-bit -/// integer vectors for equality. Each comparison yields 0x0 for false, 0xFF -/// for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPEQB / PCMPEQB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi8(__m128i __a, - __m128i __b) { - return (__m128i)((__v16qi)__a == (__v16qi)__b); -} - -/// Compares each of the corresponding 16-bit values of the 128-bit -/// integer vectors for equality. Each comparison yields 0x0 for false, -/// 0xFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPEQW / PCMPEQW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi16(__m128i __a, - __m128i __b) { - return (__m128i)((__v8hi)__a == (__v8hi)__b); -} - -/// Compares each of the corresponding 32-bit values of the 128-bit -/// integer vectors for equality. Each comparison yields 0x0 for false, -/// 0xFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPEQD / PCMPEQD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi32(__m128i __a, - __m128i __b) { - return (__m128i)((__v4si)__a == (__v4si)__b); -} - -/// Compares each of the corresponding signed 8-bit values of the 128-bit -/// integer vectors to determine if the values in the first operand are -/// greater than those in the second operand. Each comparison yields 0x0 for -/// false, 0xFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPGTB / PCMPGTB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi8(__m128i __a, - __m128i __b) { - /* This function always performs a signed comparison, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m128i)((__v16qs)__a > (__v16qs)__b); -} - -/// Compares each of the corresponding signed 16-bit values of the -/// 128-bit integer vectors to determine if the values in the first operand -/// are greater than those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPGTW / PCMPGTW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi16(__m128i __a, - __m128i __b) { - return (__m128i)((__v8hi)__a > (__v8hi)__b); -} - -/// Compares each of the corresponding signed 32-bit values of the -/// 128-bit integer vectors to determine if the values in the first operand -/// are greater than those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPGTD / PCMPGTD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi32(__m128i __a, - __m128i __b) { - return (__m128i)((__v4si)__a > (__v4si)__b); -} - -/// Compares each of the corresponding signed 8-bit values of the 128-bit -/// integer vectors to determine if the values in the first operand are less -/// than those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPGTB / PCMPGTB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmplt_epi8(__m128i __a, - __m128i __b) { - return _mm_cmpgt_epi8(__b, __a); -} - -/// Compares each of the corresponding signed 16-bit values of the -/// 128-bit integer vectors to determine if the values in the first operand -/// are less than those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPGTW / PCMPGTW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmplt_epi16(__m128i __a, - __m128i __b) { - return _mm_cmpgt_epi16(__b, __a); -} - -/// Compares each of the corresponding signed 32-bit values of the -/// 128-bit integer vectors to determine if the values in the first operand -/// are less than those in the second operand. -/// -/// Each comparison yields 0x0 for false, 0xFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPGTD / PCMPGTD </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \param __b -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmplt_epi32(__m128i __a, - __m128i __b) { - return _mm_cmpgt_epi32(__b, __a); -} - -#ifdef __x86_64__ -/// Converts a 64-bit signed integer value from the second operand into a -/// double-precision value and returns it in the lower element of a [2 x -/// double] vector; the upper element of the returned vector is copied from -/// the upper element of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSI2SD / CVTSI2SD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The upper 64 bits of this operand are -/// copied to the upper 64 bits of the destination. -/// \param __b -/// A 64-bit signed integer operand containing the value to be converted. -/// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the -/// converted value of the second operand. The upper 64 bits are copied from -/// the upper 64 bits of the first operand. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtsi64_sd(__m128d __a, - long long __b) { - __a[0] = __b; - return __a; -} - -/// Converts the first (lower) element of a vector of [2 x double] into a -/// 64-bit signed integer value, according to the current rounding mode. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSD2SI / CVTSD2SI </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower 64 bits are used in the -/// conversion. -/// \returns A 64-bit signed integer containing the converted value. -static __inline__ long long __DEFAULT_FN_ATTRS _mm_cvtsd_si64(__m128d __a) { - return __builtin_ia32_cvtsd2si64((__v2df)__a); -} - -/// Converts the first (lower) element of a vector of [2 x double] into a -/// 64-bit signed integer value, truncating the result when it is inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTSD2SI / CVTTSD2SI </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. The lower 64 bits are used in the -/// conversion. -/// \returns A 64-bit signed integer containing the converted value. -static __inline__ long long __DEFAULT_FN_ATTRS _mm_cvttsd_si64(__m128d __a) { - return __builtin_ia32_cvttsd2si64((__v2df)__a); -} -#endif - -/// Converts a vector of [4 x i32] into a vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTDQ2PS / CVTDQ2PS </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \returns A 128-bit vector of [4 x float] containing the converted values. -static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtepi32_ps(__m128i __a) { - return (__m128) __builtin_convertvector((__v4si)__a, __v4sf); -} - -/// Converts a vector of [4 x float] into a vector of [4 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPS2DQ / CVTPS2DQ </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit integer vector of [4 x i32] containing the converted -/// values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtps_epi32(__m128 __a) { - return (__m128i)__builtin_ia32_cvtps2dq((__v4sf)__a); -} - -/// Converts a vector of [4 x float] into a vector of [4 x i32], -/// truncating the result when it is inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTPS2DQ / CVTTPS2DQ </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x i32] containing the converted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvttps_epi32(__m128 __a) { - return (__m128i)__builtin_ia32_cvttps2dq((__v4sf)__a); -} - -/// Returns a vector of [4 x i32] where the lowest element is the input -/// operand and the remaining elements are zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. -/// -/// \param __a -/// A 32-bit signed integer operand. -/// \returns A 128-bit vector of [4 x i32]. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtsi32_si128(int __a) { - return __extension__(__m128i)(__v4si){__a, 0, 0, 0}; -} - -/// Returns a vector of [2 x i64] where the lower element is the input -/// operand and the upper element is zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction -/// in 64-bit mode. -/// -/// \param __a -/// A 64-bit signed integer operand containing the value to be converted. -/// \returns A 128-bit vector of [2 x i64] containing the converted value. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtsi64_si128(long long __a) { - return __extension__(__m128i)(__v2di){__a, 0}; -} - -/// Moves the least significant 32 bits of a vector of [4 x i32] to a -/// 32-bit signed integer value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. -/// -/// \param __a -/// A vector of [4 x i32]. The least significant 32 bits are moved to the -/// destination. -/// \returns A 32-bit signed integer containing the moved value. -static __inline__ int __DEFAULT_FN_ATTRS _mm_cvtsi128_si32(__m128i __a) { - __v4si __b = (__v4si)__a; - return __b[0]; -} - -/// Moves the least significant 64 bits of a vector of [2 x i64] to a -/// 64-bit signed integer value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. -/// -/// \param __a -/// A vector of [2 x i64]. The least significant 64 bits are moved to the -/// destination. -/// \returns A 64-bit signed integer containing the moved value. -static __inline__ long long __DEFAULT_FN_ATTRS _mm_cvtsi128_si64(__m128i __a) { - return __a[0]; -} - -/// Moves packed integer values from an aligned 128-bit memory location -/// to elements in a 128-bit integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDQA / MOVDQA </c> instruction. -/// -/// \param __p -/// An aligned pointer to a memory location containing integer values. -/// \returns A 128-bit integer vector containing the moved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_load_si128(__m128i const *__p) { - return *__p; -} - -/// Moves packed integer values from an unaligned 128-bit memory location -/// to elements in a 128-bit integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDQU / MOVDQU </c> instruction. -/// -/// \param __p -/// A pointer to a memory location containing integer values. -/// \returns A 128-bit integer vector containing the moved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_loadu_si128(__m128i_u const *__p) { - struct __loadu_si128 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_si128 *)__p)->__v; -} - -/// Returns a vector of [2 x i64] where the lower element is taken from -/// the lower element of the operand, and the upper element is zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. -/// -/// \param __p -/// A 128-bit vector of [2 x i64]. Bits [63:0] are written to bits [63:0] of -/// the destination. -/// \returns A 128-bit vector of [2 x i64]. The lower order bits contain the -/// moved value. The higher order bits are cleared. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_loadl_epi64(__m128i_u const *__p) { - struct __mm_loadl_epi64_struct { - long long __u; - } __attribute__((__packed__, __may_alias__)); - return __extension__(__m128i){ - ((const struct __mm_loadl_epi64_struct *)__p)->__u, 0}; -} - -/// Generates a 128-bit vector of [4 x i32] with unspecified content. -/// This could be used as an argument to another intrinsic function where the -/// argument is required but the value is not actually used. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \returns A 128-bit vector of [4 x i32] with unspecified content. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_undefined_si128(void) { - return (__m128i)__builtin_ia32_undef128(); -} - -/// Initializes both 64-bit values in a 128-bit vector of [2 x i64] with -/// the specified 64-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __q1 -/// A 64-bit integer value used to initialize the upper 64 bits of the -/// destination vector of [2 x i64]. -/// \param __q0 -/// A 64-bit integer value used to initialize the lower 64 bits of the -/// destination vector of [2 x i64]. -/// \returns An initialized 128-bit vector of [2 x i64] containing the values -/// provided in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi64x(long long __q1, - long long __q0) { - return __extension__(__m128i)(__v2di){__q0, __q1}; -} - -/// Initializes both 64-bit values in a 128-bit vector of [2 x i64] with -/// the specified 64-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __q1 -/// A 64-bit integer value used to initialize the upper 64 bits of the -/// destination vector of [2 x i64]. -/// \param __q0 -/// A 64-bit integer value used to initialize the lower 64 bits of the -/// destination vector of [2 x i64]. -/// \returns An initialized 128-bit vector of [2 x i64] containing the values -/// provided in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi64(__m64 __q1, - __m64 __q0) { - return _mm_set_epi64x((long long)__q1, (long long)__q0); -} - -/// Initializes the 32-bit values in a 128-bit vector of [4 x i32] with -/// the specified 32-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __i3 -/// A 32-bit integer value used to initialize bits [127:96] of the -/// destination vector. -/// \param __i2 -/// A 32-bit integer value used to initialize bits [95:64] of the destination -/// vector. -/// \param __i1 -/// A 32-bit integer value used to initialize bits [63:32] of the destination -/// vector. -/// \param __i0 -/// A 32-bit integer value used to initialize bits [31:0] of the destination -/// vector. -/// \returns An initialized 128-bit vector of [4 x i32] containing the values -/// provided in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi32(int __i3, int __i2, - int __i1, int __i0) { - return __extension__(__m128i)(__v4si){__i0, __i1, __i2, __i3}; -} - -/// Initializes the 16-bit values in a 128-bit vector of [8 x i16] with -/// the specified 16-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __w7 -/// A 16-bit integer value used to initialize bits [127:112] of the -/// destination vector. -/// \param __w6 -/// A 16-bit integer value used to initialize bits [111:96] of the -/// destination vector. -/// \param __w5 -/// A 16-bit integer value used to initialize bits [95:80] of the destination -/// vector. -/// \param __w4 -/// A 16-bit integer value used to initialize bits [79:64] of the destination -/// vector. -/// \param __w3 -/// A 16-bit integer value used to initialize bits [63:48] of the destination -/// vector. -/// \param __w2 -/// A 16-bit integer value used to initialize bits [47:32] of the destination -/// vector. -/// \param __w1 -/// A 16-bit integer value used to initialize bits [31:16] of the destination -/// vector. -/// \param __w0 -/// A 16-bit integer value used to initialize bits [15:0] of the destination -/// vector. -/// \returns An initialized 128-bit vector of [8 x i16] containing the values -/// provided in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_set_epi16(short __w7, short __w6, short __w5, short __w4, short __w3, - short __w2, short __w1, short __w0) { - return __extension__(__m128i)(__v8hi){__w0, __w1, __w2, __w3, - __w4, __w5, __w6, __w7}; -} - -/// Initializes the 8-bit values in a 128-bit vector of [16 x i8] with -/// the specified 8-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __b15 -/// Initializes bits [127:120] of the destination vector. -/// \param __b14 -/// Initializes bits [119:112] of the destination vector. -/// \param __b13 -/// Initializes bits [111:104] of the destination vector. -/// \param __b12 -/// Initializes bits [103:96] of the destination vector. -/// \param __b11 -/// Initializes bits [95:88] of the destination vector. -/// \param __b10 -/// Initializes bits [87:80] of the destination vector. -/// \param __b9 -/// Initializes bits [79:72] of the destination vector. -/// \param __b8 -/// Initializes bits [71:64] of the destination vector. -/// \param __b7 -/// Initializes bits [63:56] of the destination vector. -/// \param __b6 -/// Initializes bits [55:48] of the destination vector. -/// \param __b5 -/// Initializes bits [47:40] of the destination vector. -/// \param __b4 -/// Initializes bits [39:32] of the destination vector. -/// \param __b3 -/// Initializes bits [31:24] of the destination vector. -/// \param __b2 -/// Initializes bits [23:16] of the destination vector. -/// \param __b1 -/// Initializes bits [15:8] of the destination vector. -/// \param __b0 -/// Initializes bits [7:0] of the destination vector. -/// \returns An initialized 128-bit vector of [16 x i8] containing the values -/// provided in the operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_set_epi8(char __b15, char __b14, char __b13, char __b12, char __b11, - char __b10, char __b9, char __b8, char __b7, char __b6, char __b5, - char __b4, char __b3, char __b2, char __b1, char __b0) { - return __extension__(__m128i)(__v16qi){ - __b0, __b1, __b2, __b3, __b4, __b5, __b6, __b7, - __b8, __b9, __b10, __b11, __b12, __b13, __b14, __b15}; -} - -/// Initializes both values in a 128-bit integer vector with the -/// specified 64-bit integer value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __q -/// Integer value used to initialize the elements of the destination integer -/// vector. -/// \returns An initialized 128-bit integer vector of [2 x i64] with both -/// elements containing the value provided in the operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi64x(long long __q) { - return _mm_set_epi64x(__q, __q); -} - -/// Initializes both values in a 128-bit vector of [2 x i64] with the -/// specified 64-bit value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __q -/// A 64-bit value used to initialize the elements of the destination integer -/// vector. -/// \returns An initialized 128-bit vector of [2 x i64] with all elements -/// containing the value provided in the operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi64(__m64 __q) { - return _mm_set_epi64(__q, __q); -} - -/// Initializes all values in a 128-bit vector of [4 x i32] with the -/// specified 32-bit value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __i -/// A 32-bit value used to initialize the elements of the destination integer -/// vector. -/// \returns An initialized 128-bit vector of [4 x i32] with all elements -/// containing the value provided in the operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi32(int __i) { - return _mm_set_epi32(__i, __i, __i, __i); -} - -/// Initializes all values in a 128-bit vector of [8 x i16] with the -/// specified 16-bit value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __w -/// A 16-bit value used to initialize the elements of the destination integer -/// vector. -/// \returns An initialized 128-bit vector of [8 x i16] with all elements -/// containing the value provided in the operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi16(short __w) { - return _mm_set_epi16(__w, __w, __w, __w, __w, __w, __w, __w); -} - -/// Initializes all values in a 128-bit vector of [16 x i8] with the -/// specified 8-bit value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __b -/// An 8-bit value used to initialize the elements of the destination integer -/// vector. -/// \returns An initialized 128-bit vector of [16 x i8] with all elements -/// containing the value provided in the operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi8(char __b) { - return _mm_set_epi8(__b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b, - __b, __b, __b, __b, __b); -} - -/// Constructs a 128-bit integer vector, initialized in reverse order -/// with the specified 64-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic does not correspond to a specific instruction. -/// -/// \param __q0 -/// A 64-bit integral value used to initialize the lower 64 bits of the -/// result. -/// \param __q1 -/// A 64-bit integral value used to initialize the upper 64 bits of the -/// result. -/// \returns An initialized 128-bit integer vector. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setr_epi64(__m64 __q0, - __m64 __q1) { - return _mm_set_epi64(__q1, __q0); -} - -/// Constructs a 128-bit integer vector, initialized in reverse order -/// with the specified 32-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __i0 -/// A 32-bit integral value used to initialize bits [31:0] of the result. -/// \param __i1 -/// A 32-bit integral value used to initialize bits [63:32] of the result. -/// \param __i2 -/// A 32-bit integral value used to initialize bits [95:64] of the result. -/// \param __i3 -/// A 32-bit integral value used to initialize bits [127:96] of the result. -/// \returns An initialized 128-bit integer vector. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setr_epi32(int __i0, int __i1, - int __i2, - int __i3) { - return _mm_set_epi32(__i3, __i2, __i1, __i0); -} - -/// Constructs a 128-bit integer vector, initialized in reverse order -/// with the specified 16-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __w0 -/// A 16-bit integral value used to initialize bits [15:0] of the result. -/// \param __w1 -/// A 16-bit integral value used to initialize bits [31:16] of the result. -/// \param __w2 -/// A 16-bit integral value used to initialize bits [47:32] of the result. -/// \param __w3 -/// A 16-bit integral value used to initialize bits [63:48] of the result. -/// \param __w4 -/// A 16-bit integral value used to initialize bits [79:64] of the result. -/// \param __w5 -/// A 16-bit integral value used to initialize bits [95:80] of the result. -/// \param __w6 -/// A 16-bit integral value used to initialize bits [111:96] of the result. -/// \param __w7 -/// A 16-bit integral value used to initialize bits [127:112] of the result. -/// \returns An initialized 128-bit integer vector. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_setr_epi16(short __w0, short __w1, short __w2, short __w3, short __w4, - short __w5, short __w6, short __w7) { - return _mm_set_epi16(__w7, __w6, __w5, __w4, __w3, __w2, __w1, __w0); -} - -/// Constructs a 128-bit integer vector, initialized in reverse order -/// with the specified 8-bit integral values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __b0 -/// An 8-bit integral value used to initialize bits [7:0] of the result. -/// \param __b1 -/// An 8-bit integral value used to initialize bits [15:8] of the result. -/// \param __b2 -/// An 8-bit integral value used to initialize bits [23:16] of the result. -/// \param __b3 -/// An 8-bit integral value used to initialize bits [31:24] of the result. -/// \param __b4 -/// An 8-bit integral value used to initialize bits [39:32] of the result. -/// \param __b5 -/// An 8-bit integral value used to initialize bits [47:40] of the result. -/// \param __b6 -/// An 8-bit integral value used to initialize bits [55:48] of the result. -/// \param __b7 -/// An 8-bit integral value used to initialize bits [63:56] of the result. -/// \param __b8 -/// An 8-bit integral value used to initialize bits [71:64] of the result. -/// \param __b9 -/// An 8-bit integral value used to initialize bits [79:72] of the result. -/// \param __b10 -/// An 8-bit integral value used to initialize bits [87:80] of the result. -/// \param __b11 -/// An 8-bit integral value used to initialize bits [95:88] of the result. -/// \param __b12 -/// An 8-bit integral value used to initialize bits [103:96] of the result. -/// \param __b13 -/// An 8-bit integral value used to initialize bits [111:104] of the result. -/// \param __b14 -/// An 8-bit integral value used to initialize bits [119:112] of the result. -/// \param __b15 -/// An 8-bit integral value used to initialize bits [127:120] of the result. -/// \returns An initialized 128-bit integer vector. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_setr_epi8(char __b0, char __b1, char __b2, char __b3, char __b4, char __b5, - char __b6, char __b7, char __b8, char __b9, char __b10, - char __b11, char __b12, char __b13, char __b14, char __b15) { - return _mm_set_epi8(__b15, __b14, __b13, __b12, __b11, __b10, __b9, __b8, - __b7, __b6, __b5, __b4, __b3, __b2, __b1, __b0); -} - -/// Creates a 128-bit integer vector initialized to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPS / XORPS </c> instruction. -/// -/// \returns An initialized 128-bit integer vector with all elements set to -/// zero. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setzero_si128(void) { - return __extension__(__m128i)(__v2di){0LL, 0LL}; -} - -/// Stores a 128-bit integer vector to a memory location aligned on a -/// 128-bit boundary. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS </c> instruction. -/// -/// \param __p -/// A pointer to an aligned memory location that will receive the integer -/// values. -/// \param __b -/// A 128-bit integer vector containing the values to be moved. -static __inline__ void __DEFAULT_FN_ATTRS _mm_store_si128(__m128i *__p, - __m128i __b) { - *__p = __b; -} - -/// Stores a 128-bit integer vector to an unaligned memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPS / MOVUPS </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the integer values. -/// \param __b -/// A 128-bit integer vector containing the values to be moved. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_si128(__m128i_u *__p, - __m128i __b) { - struct __storeu_si128 { - __m128i_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_si128 *)__p)->__v = __b; -} - -/// Stores a 64-bit integer value from the low element of a 128-bit integer -/// vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. -/// -/// \param __p -/// A pointer to a 64-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \param __b -/// A 128-bit integer vector containing the value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_si64(void *__p, - __m128i __b) { - struct __storeu_si64 { - long long __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_si64 *)__p)->__v = ((__v2di)__b)[0]; -} - -/// Stores a 32-bit integer value from the low element of a 128-bit integer -/// vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. -/// -/// \param __p -/// A pointer to a 32-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \param __b -/// A 128-bit integer vector containing the value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_si32(void *__p, - __m128i __b) { - struct __storeu_si32 { - int __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_si32 *)__p)->__v = ((__v4si)__b)[0]; -} - -/// Stores a 16-bit integer value from the low element of a 128-bit integer -/// vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic does not correspond to a specific instruction. -/// -/// \param __p -/// A pointer to a 16-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \param __b -/// A 128-bit integer vector containing the value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storeu_si16(void *__p, - __m128i __b) { - struct __storeu_si16 { - short __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_si16 *)__p)->__v = ((__v8hi)__b)[0]; -} - -/// Moves bytes selected by the mask from the first operand to the -/// specified unaligned memory location. When a mask bit is 1, the -/// corresponding byte is written, otherwise it is not written. -/// -/// To minimize caching, the data is flagged as non-temporal (unlikely to be -/// used again soon). Exception and trap behavior for elements not selected -/// for storage to memory are implementation dependent. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMASKMOVDQU / MASKMOVDQU </c> -/// instruction. -/// -/// \param __d -/// A 128-bit integer vector containing the values to be moved. -/// \param __n -/// A 128-bit integer vector containing the mask. The most significant bit of -/// each byte represents the mask bits. -/// \param __p -/// A pointer to an unaligned 128-bit memory location where the specified -/// values are moved. -static __inline__ void __DEFAULT_FN_ATTRS _mm_maskmoveu_si128(__m128i __d, - __m128i __n, - char *__p) { - __builtin_ia32_maskmovdqu((__v16qi)__d, (__v16qi)__n, __p); -} - -/// Stores the lower 64 bits of a 128-bit integer vector of [2 x i64] to -/// a memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVLPS / MOVLPS </c> instruction. -/// -/// \param __p -/// A pointer to a 64-bit memory location that will receive the lower 64 bits -/// of the integer vector parameter. -/// \param __a -/// A 128-bit integer vector of [2 x i64]. The lower 64 bits contain the -/// value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_storel_epi64(__m128i_u *__p, - __m128i __a) { - struct __mm_storel_epi64_struct { - long long __u; - } __attribute__((__packed__, __may_alias__)); - ((struct __mm_storel_epi64_struct *)__p)->__u = __a[0]; -} - -/// Stores a 128-bit floating point vector of [2 x double] to a 128-bit -/// aligned memory location. -/// -/// To minimize caching, the data is flagged as non-temporal (unlikely to be -/// used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVNTPS / MOVNTPS </c> instruction. -/// -/// \param __p -/// A pointer to the 128-bit aligned memory location used to store the value. -/// \param __a -/// A vector of [2 x double] containing the 64-bit values to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_stream_pd(double *__p, - __m128d __a) { - __builtin_nontemporal_store((__v2df)__a, (__v2df *)__p); -} - -/// Stores a 128-bit integer vector to a 128-bit aligned memory location. -/// -/// To minimize caching, the data is flagged as non-temporal (unlikely to be -/// used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVNTPS / MOVNTPS </c> instruction. -/// -/// \param __p -/// A pointer to the 128-bit aligned memory location used to store the value. -/// \param __a -/// A 128-bit integer vector containing the values to be stored. -static __inline__ void __DEFAULT_FN_ATTRS _mm_stream_si128(__m128i *__p, - __m128i __a) { - __builtin_nontemporal_store((__v2di)__a, (__v2di *)__p); -} - -/// Stores a 32-bit integer value in the specified memory location. -/// -/// To minimize caching, the data is flagged as non-temporal (unlikely to be -/// used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVNTI </c> instruction. -/// -/// \param __p -/// A pointer to the 32-bit memory location used to store the value. -/// \param __a -/// A 32-bit integer containing the value to be stored. -static __inline__ void - __attribute__((__always_inline__, __nodebug__, __target__("sse2"))) - _mm_stream_si32(int *__p, int __a) { - __builtin_ia32_movnti(__p, __a); -} - -#ifdef __x86_64__ -/// Stores a 64-bit integer value in the specified memory location. -/// -/// To minimize caching, the data is flagged as non-temporal (unlikely to be -/// used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVNTIQ </c> instruction. -/// -/// \param __p -/// A pointer to the 64-bit memory location used to store the value. -/// \param __a -/// A 64-bit integer containing the value to be stored. -static __inline__ void - __attribute__((__always_inline__, __nodebug__, __target__("sse2"))) - _mm_stream_si64(long long *__p, long long __a) { - __builtin_ia32_movnti64(__p, __a); -} -#endif - -#if defined(__cplusplus) -extern "C" { -#endif - -/// The cache line containing \a __p is flushed and invalidated from all -/// caches in the coherency domain. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CLFLUSH </c> instruction. -/// -/// \param __p -/// A pointer to the memory location used to identify the cache line to be -/// flushed. -void _mm_clflush(void const *__p); - -/// Forces strong memory ordering (serialization) between load -/// instructions preceding this instruction and load instructions following -/// this instruction, ensuring the system completes all previous loads before -/// executing subsequent loads. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> LFENCE </c> instruction. -/// -void _mm_lfence(void); - -/// Forces strong memory ordering (serialization) between load and store -/// instructions preceding this instruction and load and store instructions -/// following this instruction, ensuring that the system completes all -/// previous memory accesses before executing subsequent memory accesses. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MFENCE </c> instruction. -/// -void _mm_mfence(void); - -#if defined(__cplusplus) -} // extern "C" -#endif - -/// Converts 16-bit signed integers from both 128-bit integer vector -/// operands into 8-bit signed integers, and packs the results into the -/// destination. Positive values greater than 0x7F are saturated to 0x7F. -/// Negative values less than 0x80 are saturated to 0x80. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPACKSSWB / PACKSSWB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector of [8 x i16]. Each 16-bit element is treated as -/// a signed integer and is converted to a 8-bit signed integer with -/// saturation. Values greater than 0x7F are saturated to 0x7F. Values less -/// than 0x80 are saturated to 0x80. The converted [8 x i8] values are -/// written to the lower 64 bits of the result. -/// \param __b -/// A 128-bit integer vector of [8 x i16]. Each 16-bit element is treated as -/// a signed integer and is converted to a 8-bit signed integer with -/// saturation. Values greater than 0x7F are saturated to 0x7F. Values less -/// than 0x80 are saturated to 0x80. The converted [8 x i8] values are -/// written to the higher 64 bits of the result. -/// \returns A 128-bit vector of [16 x i8] containing the converted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packs_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_ia32_packsswb128((__v8hi)__a, (__v8hi)__b); -} - -/// Converts 32-bit signed integers from both 128-bit integer vector -/// operands into 16-bit signed integers, and packs the results into the -/// destination. Positive values greater than 0x7FFF are saturated to 0x7FFF. -/// Negative values less than 0x8000 are saturated to 0x8000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPACKSSDW / PACKSSDW </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector of [4 x i32]. Each 32-bit element is treated as -/// a signed integer and is converted to a 16-bit signed integer with -/// saturation. Values greater than 0x7FFF are saturated to 0x7FFF. Values -/// less than 0x8000 are saturated to 0x8000. The converted [4 x i16] values -/// are written to the lower 64 bits of the result. -/// \param __b -/// A 128-bit integer vector of [4 x i32]. Each 32-bit element is treated as -/// a signed integer and is converted to a 16-bit signed integer with -/// saturation. Values greater than 0x7FFF are saturated to 0x7FFF. Values -/// less than 0x8000 are saturated to 0x8000. The converted [4 x i16] values -/// are written to the higher 64 bits of the result. -/// \returns A 128-bit vector of [8 x i16] containing the converted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packs_epi32(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_ia32_packssdw128((__v4si)__a, (__v4si)__b); -} - -/// Converts 16-bit signed integers from both 128-bit integer vector -/// operands into 8-bit unsigned integers, and packs the results into the -/// destination. Values greater than 0xFF are saturated to 0xFF. Values less -/// than 0x00 are saturated to 0x00. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPACKUSWB / PACKUSWB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector of [8 x i16]. Each 16-bit element is treated as -/// a signed integer and is converted to an 8-bit unsigned integer with -/// saturation. Values greater than 0xFF are saturated to 0xFF. Values less -/// than 0x00 are saturated to 0x00. The converted [8 x i8] values are -/// written to the lower 64 bits of the result. -/// \param __b -/// A 128-bit integer vector of [8 x i16]. Each 16-bit element is treated as -/// a signed integer and is converted to an 8-bit unsigned integer with -/// saturation. Values greater than 0xFF are saturated to 0xFF. Values less -/// than 0x00 are saturated to 0x00. The converted [8 x i8] values are -/// written to the higher 64 bits of the result. -/// \returns A 128-bit vector of [16 x i8] containing the converted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packus_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_ia32_packuswb128((__v8hi)__a, (__v8hi)__b); -} - -/// Extracts 16 bits from a 128-bit integer vector of [8 x i16], using -/// the immediate-value parameter as a selector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_extract_epi16(__m128i a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPEXTRW / PEXTRW </c> instruction. -/// -/// \param a -/// A 128-bit integer vector. -/// \param imm -/// An immediate value. Bits [2:0] selects values from \a a to be assigned -/// to bits[15:0] of the result. \n -/// 000: assign values from bits [15:0] of \a a. \n -/// 001: assign values from bits [31:16] of \a a. \n -/// 010: assign values from bits [47:32] of \a a. \n -/// 011: assign values from bits [63:48] of \a a. \n -/// 100: assign values from bits [79:64] of \a a. \n -/// 101: assign values from bits [95:80] of \a a. \n -/// 110: assign values from bits [111:96] of \a a. \n -/// 111: assign values from bits [127:112] of \a a. -/// \returns An integer, whose lower 16 bits are selected from the 128-bit -/// integer vector parameter and the remaining bits are assigned zeros. -#define _mm_extract_epi16(a, imm) \ - ((int)(unsigned short)__builtin_ia32_vec_ext_v8hi((__v8hi)(__m128i)(a), \ - (int)(imm))) - -/// Constructs a 128-bit integer vector by first making a copy of the -/// 128-bit integer vector parameter, and then inserting the lower 16 bits -/// of an integer parameter into an offset specified by the immediate-value -/// parameter. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_insert_epi16(__m128i a, int b, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPINSRW / PINSRW </c> instruction. -/// -/// \param a -/// A 128-bit integer vector of [8 x i16]. This vector is copied to the -/// result and then one of the eight elements in the result is replaced by -/// the lower 16 bits of \a b. -/// \param b -/// An integer. The lower 16 bits of this parameter are written to the -/// result beginning at an offset specified by \a imm. -/// \param imm -/// An immediate value specifying the bit offset in the result at which the -/// lower 16 bits of \a b are written. -/// \returns A 128-bit integer vector containing the constructed values. -#define _mm_insert_epi16(a, b, imm) \ - ((__m128i)__builtin_ia32_vec_set_v8hi((__v8hi)(__m128i)(a), (int)(b), \ - (int)(imm))) - -/// Copies the values of the most significant bits from each 8-bit -/// element in a 128-bit integer vector of [16 x i8] to create a 16-bit mask -/// value, zero-extends the value, and writes it to the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVMSKB / PMOVMSKB </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the values with bits to be extracted. -/// \returns The most significant bits from each 8-bit element in \a __a, -/// written to bits [15:0]. The other bits are assigned zeros. -static __inline__ int __DEFAULT_FN_ATTRS _mm_movemask_epi8(__m128i __a) { - return __builtin_ia32_pmovmskb128((__v16qi)__a); -} - -/// Constructs a 128-bit integer vector by shuffling four 32-bit -/// elements of a 128-bit integer vector parameter, using the immediate-value -/// parameter as a specifier. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_shuffle_epi32(__m128i a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPSHUFD / PSHUFD </c> instruction. -/// -/// \param a -/// A 128-bit integer vector containing the values to be copied. -/// \param imm -/// An immediate value containing an 8-bit value specifying which elements to -/// copy from a. The destinations within the 128-bit destination are assigned -/// values as follows: \n -/// Bits [1:0] are used to assign values to bits [31:0] of the result. \n -/// Bits [3:2] are used to assign values to bits [63:32] of the result. \n -/// Bits [5:4] are used to assign values to bits [95:64] of the result. \n -/// Bits [7:6] are used to assign values to bits [127:96] of the result. \n -/// Bit value assignments: \n -/// 00: assign values from bits [31:0] of \a a. \n -/// 01: assign values from bits [63:32] of \a a. \n -/// 10: assign values from bits [95:64] of \a a. \n -/// 11: assign values from bits [127:96] of \a a. \n -/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. -/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form -/// <c>[b6, b4, b2, b0]</c>. -/// \returns A 128-bit integer vector containing the shuffled values. -#define _mm_shuffle_epi32(a, imm) \ - ((__m128i)__builtin_ia32_pshufd((__v4si)(__m128i)(a), (int)(imm))) - -/// Constructs a 128-bit integer vector by shuffling four lower 16-bit -/// elements of a 128-bit integer vector of [8 x i16], using the immediate -/// value parameter as a specifier. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_shufflelo_epi16(__m128i a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPSHUFLW / PSHUFLW </c> instruction. -/// -/// \param a -/// A 128-bit integer vector of [8 x i16]. Bits [127:64] are copied to bits -/// [127:64] of the result. -/// \param imm -/// An 8-bit immediate value specifying which elements to copy from \a a. \n -/// Bits[1:0] are used to assign values to bits [15:0] of the result. \n -/// Bits[3:2] are used to assign values to bits [31:16] of the result. \n -/// Bits[5:4] are used to assign values to bits [47:32] of the result. \n -/// Bits[7:6] are used to assign values to bits [63:48] of the result. \n -/// Bit value assignments: \n -/// 00: assign values from bits [15:0] of \a a. \n -/// 01: assign values from bits [31:16] of \a a. \n -/// 10: assign values from bits [47:32] of \a a. \n -/// 11: assign values from bits [63:48] of \a a. \n -/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. -/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form -/// <c>[b6, b4, b2, b0]</c>. -/// \returns A 128-bit integer vector containing the shuffled values. -#define _mm_shufflelo_epi16(a, imm) \ - ((__m128i)__builtin_ia32_pshuflw((__v8hi)(__m128i)(a), (int)(imm))) - -/// Constructs a 128-bit integer vector by shuffling four upper 16-bit -/// elements of a 128-bit integer vector of [8 x i16], using the immediate -/// value parameter as a specifier. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_shufflehi_epi16(__m128i a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPSHUFHW / PSHUFHW </c> instruction. -/// -/// \param a -/// A 128-bit integer vector of [8 x i16]. Bits [63:0] are copied to bits -/// [63:0] of the result. -/// \param imm -/// An 8-bit immediate value specifying which elements to copy from \a a. \n -/// Bits[1:0] are used to assign values to bits [79:64] of the result. \n -/// Bits[3:2] are used to assign values to bits [95:80] of the result. \n -/// Bits[5:4] are used to assign values to bits [111:96] of the result. \n -/// Bits[7:6] are used to assign values to bits [127:112] of the result. \n -/// Bit value assignments: \n -/// 00: assign values from bits [79:64] of \a a. \n -/// 01: assign values from bits [95:80] of \a a. \n -/// 10: assign values from bits [111:96] of \a a. \n -/// 11: assign values from bits [127:112] of \a a. \n -/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. -/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form -/// <c>[b6, b4, b2, b0]</c>. -/// \returns A 128-bit integer vector containing the shuffled values. -#define _mm_shufflehi_epi16(a, imm) \ - ((__m128i)__builtin_ia32_pshufhw((__v8hi)(__m128i)(a), (int)(imm))) - -/// Unpacks the high-order (index 8-15) values from two 128-bit vectors -/// of [16 x i8] and interleaves them into a 128-bit vector of [16 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKHBW / PUNPCKHBW </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [16 x i8]. -/// Bits [71:64] are written to bits [7:0] of the result. \n -/// Bits [79:72] are written to bits [23:16] of the result. \n -/// Bits [87:80] are written to bits [39:32] of the result. \n -/// Bits [95:88] are written to bits [55:48] of the result. \n -/// Bits [103:96] are written to bits [71:64] of the result. \n -/// Bits [111:104] are written to bits [87:80] of the result. \n -/// Bits [119:112] are written to bits [103:96] of the result. \n -/// Bits [127:120] are written to bits [119:112] of the result. -/// \param __b -/// A 128-bit vector of [16 x i8]. \n -/// Bits [71:64] are written to bits [15:8] of the result. \n -/// Bits [79:72] are written to bits [31:24] of the result. \n -/// Bits [87:80] are written to bits [47:40] of the result. \n -/// Bits [95:88] are written to bits [63:56] of the result. \n -/// Bits [103:96] are written to bits [79:72] of the result. \n -/// Bits [111:104] are written to bits [95:88] of the result. \n -/// Bits [119:112] are written to bits [111:104] of the result. \n -/// Bits [127:120] are written to bits [127:120] of the result. -/// \returns A 128-bit vector of [16 x i8] containing the interleaved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpackhi_epi8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_shufflevector( - (__v16qi)__a, (__v16qi)__b, 8, 16 + 8, 9, 16 + 9, 10, 16 + 10, 11, - 16 + 11, 12, 16 + 12, 13, 16 + 13, 14, 16 + 14, 15, 16 + 15); -} - -/// Unpacks the high-order (index 4-7) values from two 128-bit vectors of -/// [8 x i16] and interleaves them into a 128-bit vector of [8 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKHWD / PUNPCKHWD </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16]. -/// Bits [79:64] are written to bits [15:0] of the result. \n -/// Bits [95:80] are written to bits [47:32] of the result. \n -/// Bits [111:96] are written to bits [79:64] of the result. \n -/// Bits [127:112] are written to bits [111:96] of the result. -/// \param __b -/// A 128-bit vector of [8 x i16]. -/// Bits [79:64] are written to bits [31:16] of the result. \n -/// Bits [95:80] are written to bits [63:48] of the result. \n -/// Bits [111:96] are written to bits [95:80] of the result. \n -/// Bits [127:112] are written to bits [127:112] of the result. -/// \returns A 128-bit vector of [8 x i16] containing the interleaved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpackhi_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_shufflevector((__v8hi)__a, (__v8hi)__b, 4, 8 + 4, 5, - 8 + 5, 6, 8 + 6, 7, 8 + 7); -} - -/// Unpacks the high-order (index 2,3) values from two 128-bit vectors of -/// [4 x i32] and interleaves them into a 128-bit vector of [4 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKHDQ / PUNPCKHDQ </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x i32]. \n -/// Bits [95:64] are written to bits [31:0] of the destination. \n -/// Bits [127:96] are written to bits [95:64] of the destination. -/// \param __b -/// A 128-bit vector of [4 x i32]. \n -/// Bits [95:64] are written to bits [64:32] of the destination. \n -/// Bits [127:96] are written to bits [127:96] of the destination. -/// \returns A 128-bit vector of [4 x i32] containing the interleaved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpackhi_epi32(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_shufflevector((__v4si)__a, (__v4si)__b, 2, 4 + 2, 3, - 4 + 3); -} - -/// Unpacks the high-order 64-bit elements from two 128-bit vectors of -/// [2 x i64] and interleaves them into a 128-bit vector of [2 x i64]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKHQDQ / PUNPCKHQDQ </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x i64]. \n -/// Bits [127:64] are written to bits [63:0] of the destination. -/// \param __b -/// A 128-bit vector of [2 x i64]. \n -/// Bits [127:64] are written to bits [127:64] of the destination. -/// \returns A 128-bit vector of [2 x i64] containing the interleaved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpackhi_epi64(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_shufflevector((__v2di)__a, (__v2di)__b, 1, 2 + 1); -} - -/// Unpacks the low-order (index 0-7) values from two 128-bit vectors of -/// [16 x i8] and interleaves them into a 128-bit vector of [16 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKLBW / PUNPCKLBW </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [16 x i8]. \n -/// Bits [7:0] are written to bits [7:0] of the result. \n -/// Bits [15:8] are written to bits [23:16] of the result. \n -/// Bits [23:16] are written to bits [39:32] of the result. \n -/// Bits [31:24] are written to bits [55:48] of the result. \n -/// Bits [39:32] are written to bits [71:64] of the result. \n -/// Bits [47:40] are written to bits [87:80] of the result. \n -/// Bits [55:48] are written to bits [103:96] of the result. \n -/// Bits [63:56] are written to bits [119:112] of the result. -/// \param __b -/// A 128-bit vector of [16 x i8]. -/// Bits [7:0] are written to bits [15:8] of the result. \n -/// Bits [15:8] are written to bits [31:24] of the result. \n -/// Bits [23:16] are written to bits [47:40] of the result. \n -/// Bits [31:24] are written to bits [63:56] of the result. \n -/// Bits [39:32] are written to bits [79:72] of the result. \n -/// Bits [47:40] are written to bits [95:88] of the result. \n -/// Bits [55:48] are written to bits [111:104] of the result. \n -/// Bits [63:56] are written to bits [127:120] of the result. -/// \returns A 128-bit vector of [16 x i8] containing the interleaved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi8(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_shufflevector( - (__v16qi)__a, (__v16qi)__b, 0, 16 + 0, 1, 16 + 1, 2, 16 + 2, 3, 16 + 3, 4, - 16 + 4, 5, 16 + 5, 6, 16 + 6, 7, 16 + 7); -} - -/// Unpacks the low-order (index 0-3) values from each of the two 128-bit -/// vectors of [8 x i16] and interleaves them into a 128-bit vector of -/// [8 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKLWD / PUNPCKLWD </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16]. -/// Bits [15:0] are written to bits [15:0] of the result. \n -/// Bits [31:16] are written to bits [47:32] of the result. \n -/// Bits [47:32] are written to bits [79:64] of the result. \n -/// Bits [63:48] are written to bits [111:96] of the result. -/// \param __b -/// A 128-bit vector of [8 x i16]. -/// Bits [15:0] are written to bits [31:16] of the result. \n -/// Bits [31:16] are written to bits [63:48] of the result. \n -/// Bits [47:32] are written to bits [95:80] of the result. \n -/// Bits [63:48] are written to bits [127:112] of the result. -/// \returns A 128-bit vector of [8 x i16] containing the interleaved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi16(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_shufflevector((__v8hi)__a, (__v8hi)__b, 0, 8 + 0, 1, - 8 + 1, 2, 8 + 2, 3, 8 + 3); -} - -/// Unpacks the low-order (index 0,1) values from two 128-bit vectors of -/// [4 x i32] and interleaves them into a 128-bit vector of [4 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKLDQ / PUNPCKLDQ </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x i32]. \n -/// Bits [31:0] are written to bits [31:0] of the destination. \n -/// Bits [63:32] are written to bits [95:64] of the destination. -/// \param __b -/// A 128-bit vector of [4 x i32]. \n -/// Bits [31:0] are written to bits [64:32] of the destination. \n -/// Bits [63:32] are written to bits [127:96] of the destination. -/// \returns A 128-bit vector of [4 x i32] containing the interleaved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi32(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_shufflevector((__v4si)__a, (__v4si)__b, 0, 4 + 0, 1, - 4 + 1); -} - -/// Unpacks the low-order 64-bit elements from two 128-bit vectors of -/// [2 x i64] and interleaves them into a 128-bit vector of [2 x i64]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPUNPCKLQDQ / PUNPCKLQDQ </c> -/// instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x i64]. \n -/// Bits [63:0] are written to bits [63:0] of the destination. \n -/// \param __b -/// A 128-bit vector of [2 x i64]. \n -/// Bits [63:0] are written to bits [127:64] of the destination. \n -/// \returns A 128-bit vector of [2 x i64] containing the interleaved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi64(__m128i __a, - __m128i __b) { - return (__m128i)__builtin_shufflevector((__v2di)__a, (__v2di)__b, 0, 2 + 0); -} - -/// Returns the lower 64 bits of a 128-bit integer vector as a 64-bit -/// integer. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVDQ2Q </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector operand. The lower 64 bits are moved to the -/// destination. -/// \returns A 64-bit integer containing the lower 64 bits of the parameter. -static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_movepi64_pi64(__m128i __a) { - return (__m64)__a[0]; -} - -/// Moves the 64-bit operand to a 128-bit integer vector, zeroing the -/// upper bits. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVD+VMOVQ </c> instruction. -/// -/// \param __a -/// A 64-bit value. -/// \returns A 128-bit integer vector. The lower 64 bits contain the value from -/// the operand. The upper 64 bits are assigned zeros. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_movpi64_epi64(__m64 __a) { - return __extension__(__m128i)(__v2di){(long long)__a, 0}; -} - -/// Moves the lower 64 bits of a 128-bit integer vector to a 128-bit -/// integer vector, zeroing the upper bits. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVQ / MOVQ </c> instruction. -/// -/// \param __a -/// A 128-bit integer vector operand. The lower 64 bits are moved to the -/// destination. -/// \returns A 128-bit integer vector. The lower 64 bits contain the value from -/// the operand. The upper 64 bits are assigned zeros. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_move_epi64(__m128i __a) { - return __builtin_shufflevector((__v2di)__a, _mm_setzero_si128(), 0, 2); -} - -/// Unpacks the high-order 64-bit elements from two 128-bit vectors of -/// [2 x double] and interleaves them into a 128-bit vector of [2 x -/// double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKHPD / UNPCKHPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. \n -/// Bits [127:64] are written to bits [63:0] of the destination. -/// \param __b -/// A 128-bit vector of [2 x double]. \n -/// Bits [127:64] are written to bits [127:64] of the destination. -/// \returns A 128-bit vector of [2 x double] containing the interleaved values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_unpackhi_pd(__m128d __a, - __m128d __b) { - return __builtin_shufflevector((__v2df)__a, (__v2df)__b, 1, 2 + 1); -} - -/// Unpacks the low-order 64-bit elements from two 128-bit vectors -/// of [2 x double] and interleaves them into a 128-bit vector of [2 x -/// double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPD / UNPCKLPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. \n -/// Bits [63:0] are written to bits [63:0] of the destination. -/// \param __b -/// A 128-bit vector of [2 x double]. \n -/// Bits [63:0] are written to bits [127:64] of the destination. -/// \returns A 128-bit vector of [2 x double] containing the interleaved values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_unpacklo_pd(__m128d __a, - __m128d __b) { - return __builtin_shufflevector((__v2df)__a, (__v2df)__b, 0, 2 + 0); -} - -/// Extracts the sign bits of the double-precision values in the 128-bit -/// vector of [2 x double], zero-extends the value, and writes it to the -/// low-order bits of the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVMSKPD / MOVMSKPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing the values with sign bits to -/// be extracted. -/// \returns The sign bits from each of the double-precision elements in \a __a, -/// written to bits [1:0]. The remaining bits are assigned values of zero. -static __inline__ int __DEFAULT_FN_ATTRS _mm_movemask_pd(__m128d __a) { - return __builtin_ia32_movmskpd((__v2df)__a); -} - -/// Constructs a 128-bit floating-point vector of [2 x double] from two -/// 128-bit vector parameters of [2 x double], using the immediate-value -/// parameter as a specifier. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_shuffle_pd(__m128d a, __m128d b, const int i); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VSHUFPD / SHUFPD </c> instruction. -/// -/// \param a -/// A 128-bit vector of [2 x double]. -/// \param b -/// A 128-bit vector of [2 x double]. -/// \param i -/// An 8-bit immediate value. The least significant two bits specify which -/// elements to copy from \a a and \a b: \n -/// Bit[0] = 0: lower element of \a a copied to lower element of result. \n -/// Bit[0] = 1: upper element of \a a copied to lower element of result. \n -/// Bit[1] = 0: lower element of \a b copied to upper element of result. \n -/// Bit[1] = 1: upper element of \a b copied to upper element of result. \n -/// Note: To generate a mask, you can use the \c _MM_SHUFFLE2 macro. -/// <c>_MM_SHUFFLE2(b1, b0)</c> can create a 2-bit mask of the form -/// <c>[b1, b0]</c>. -/// \returns A 128-bit vector of [2 x double] containing the shuffled values. -#define _mm_shuffle_pd(a, b, i) \ - ((__m128d)__builtin_ia32_shufpd((__v2df)(__m128d)(a), (__v2df)(__m128d)(b), \ - (int)(i))) - -/// Casts a 128-bit floating-point vector of [2 x double] into a 128-bit -/// floating-point vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [2 x double]. -/// \returns A 128-bit floating-point vector of [4 x float] containing the same -/// bitwise pattern as the parameter. -static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_castpd_ps(__m128d __a) { - return (__m128)__a; -} - -/// Casts a 128-bit floating-point vector of [2 x double] into a 128-bit -/// integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [2 x double]. -/// \returns A 128-bit integer vector containing the same bitwise pattern as the -/// parameter. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_castpd_si128(__m128d __a) { - return (__m128i)__a; -} - -/// Casts a 128-bit floating-point vector of [4 x float] into a 128-bit -/// floating-point vector of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [4 x float]. -/// \returns A 128-bit floating-point vector of [2 x double] containing the same -/// bitwise pattern as the parameter. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_castps_pd(__m128 __a) { - return (__m128d)__a; -} - -/// Casts a 128-bit floating-point vector of [4 x float] into a 128-bit -/// integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [4 x float]. -/// \returns A 128-bit integer vector containing the same bitwise pattern as the -/// parameter. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_castps_si128(__m128 __a) { - return (__m128i)__a; -} - -/// Casts a 128-bit integer vector into a 128-bit floating-point vector -/// of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \returns A 128-bit floating-point vector of [4 x float] containing the same -/// bitwise pattern as the parameter. -static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_castsi128_ps(__m128i __a) { - return (__m128)__a; -} - -/// Casts a 128-bit integer vector into a 128-bit floating-point vector -/// of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit integer vector. -/// \returns A 128-bit floating-point vector of [2 x double] containing the same -/// bitwise pattern as the parameter. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_castsi128_pd(__m128i __a) { - return (__m128d)__a; -} - -#if defined(__cplusplus) -extern "C" { -#endif - -/// Indicates that a spin loop is being executed for the purposes of -/// optimizing power consumption during the loop. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PAUSE </c> instruction. -/// -void _mm_pause(void); - -#if defined(__cplusplus) -} // extern "C" -#endif -#undef __DEFAULT_FN_ATTRS -#undef __DEFAULT_FN_ATTRS_MMX - -#define _MM_SHUFFLE2(x, y) (((x) << 1) | (y)) - -#define _MM_DENORMALS_ZERO_ON (0x0040U) -#define _MM_DENORMALS_ZERO_OFF (0x0000U) - -#define _MM_DENORMALS_ZERO_MASK (0x0040U) - -#define _MM_GET_DENORMALS_ZERO_MODE() (_mm_getcsr() & _MM_DENORMALS_ZERO_MASK) -#define _MM_SET_DENORMALS_ZERO_MODE(x) \ - (_mm_setcsr((_mm_getcsr() & ~_MM_DENORMALS_ZERO_MASK) | (x))) - -#endif /* __EMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@emmintrin.h.blob deleted file mode 100644 index 0308d63666347140fe2e7ad8dcd92e64b7070a08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 222078 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 TFx)kpVTDYrYY0jkU`hCI*iQH$ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h deleted file mode 100644 index 30af67f6..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h +++ /dev/null @@ -1,63 +0,0 @@ -/*===------------------ enqcmdintrin.h - enqcmd intrinsics -----------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <enqcmdintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __ENQCMDINTRIN_H -#define __ENQCMDINTRIN_H - -/* Define the default attributes for the functions in this file */ -#define _DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("enqcmd"))) - -/// Reads 64-byte command pointed by \a __src, formats 64-byte enqueue store -/// data, and performs 64-byte enqueue store to memory pointed by \a __dst. -/// This intrinsics may only be used in User mode. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsics corresponds to the <c> ENQCMD </c> instruction. -/// -/// \param __dst -/// Pointer to the destination of the enqueue store. -/// \param __src -/// Pointer to 64-byte command data. -/// \returns If the command data is successfully written to \a __dst then 0 is -/// returned. Otherwise 1 is returned. -static __inline__ int _DEFAULT_FN_ATTRS -_enqcmd (void *__dst, const void *__src) -{ - return __builtin_ia32_enqcmd(__dst, __src); -} - -/// Reads 64-byte command pointed by \a __src, formats 64-byte enqueue store -/// data, and performs 64-byte enqueue store to memory pointed by \a __dst -/// This intrinsic may only be used in Privileged mode. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsics corresponds to the <c> ENQCMDS </c> instruction. -/// -/// \param __dst -/// Pointer to the destination of the enqueue store. -/// \param __src -/// Pointer to 64-byte command data. -/// \returns If the command data is successfully written to \a __dst then 0 is -/// returned. Otherwise 1 is returned. -static __inline__ int _DEFAULT_FN_ATTRS -_enqcmds (void *__dst, const void *__src) -{ - return __builtin_ia32_enqcmds(__dst, __src); -} - -#undef _DEFAULT_FN_ATTRS - -#endif /* __ENQCMDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@enqcmdintrin.h.blob deleted file mode 100644 index 3e0399f3072b1e988d6f9fe0d64737a41e02afe6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13835 zcmd^FO^h5z6`t83E0~q#AcP_$qSkH_Y_qdto3NW86B1%OF>*Fe;)DpSG&SATGnMT> zcXiK?#Q{!42q8{L9N@qOi3382pBv&wASDqTP$VD{TqC3?Ck`PfSzc9j)l5ylu9-+2 zknmxx-G24z{e17IUe%e-yDzinUg>l@{ZW?Ce%!xE`C*ym{gU#sAJVYTi=dwnmhJ|f z+k%*+!?j3zldL#o>97~Ff(B()%s$<^L+72HZolG1pQS-ug|z?l#jEH013F}>A7mlj z9d+Kl*L(40izX;%x%~3aH}AK<3|Ptg;w$g_elp-CDXCuyCWbU-gTB<Ie{Rq0N|Gr{ z%K|h7QehQqKPeOZ@P`!(QHdVC+8@T1_;m8sAHUSH7_3?qxJD5r;v2Ul)h0<uIkG<B zDvYO}Ja<0I&+R!hk@gX8No}L(t>pK?3;-}8`RYA+84j{67K9C>NmhBr+4Q_0v&3R% zZAZ#1VSztkAqAILX-Nx1>;h)QV(JfyY{J!ovp*cPxGl&lmPVQ2YOv(6AxKVQ0N`po z@T!PNFn6g-+!2l0REY4SpFD5N$;C!PqqB$xRJvi5GKW;s;0pVk4aX#20={K*MOU(f z77Ju9`RSNRM{oY}30r&<9c5Mp5~#+=)|OG;i?iWiwVp&Gc|1s5+VUCi2O*8{kXf`v zSyVykU%qnnlC`y#&4@1(-6BLZ#R9V+%MKa!S>{Jo8k8(c`GWZt^O(#CV#6;C9&zNT z2qI*O1M2%plB{w)IGvY={1&QZl`;rc^wWZRc*fLrfDKY2F<_FZ{v>(uU_@7LF#$E! zQ8>@?AT1p_8^1v^3snY?xN~ASA%O(UYaf5y2C;|))H-Gx*o6^U9}K)vPx(F=8i461 zWa^U`Y^K!36Qr(H!g+MrFqU<P6iRam8B&!H=>nIod@S^N^O1*bMU6fnCGZzCMjySO zh%G6YWf4@{Xv!gZH8LeiTgP>N9v0AoLu>FJSH|m9H{r>>`z*<|UPkvIX89l^1zyZ0 zn4w~nX%A`=fUuld>`>+MA__)W!a}KQQ>2ZA?(%3<Q0fokSuT_88E<5JR>h!50wg$G zEpRPDJcw3z41i8iKzjk?yVB0MF7+UT3tt03gg7Pu97|Y~ka3Kx(Jquq&O;GTL^`PA zEFjP$*sTt_JM3rxZ{)Q0gz6O$ZnLropy>@cyM<>F5p1&mXb5aDc}Qng!|Osq2}t0q ztUIN*j{=1RRJGh$In4G6<9ISK6sk`Xo@^wHVOsT}xgGFcOXLxr^l4F~(gvsA{)XKm zE9BDhg=CGMQ)dxbAHtif(PA8HY>(P$oCk4I#W%y72>j3$6T-^;5Ni}sa*jFzB?TQ3 zAuPDb&f15HU`4tnAsm|G`6m~aVmejT^CNFiJE4HndPADhf(6QXy#e78-wh8MkYqVc zhq6a#fMg+bQ_AfuqU9FA_7$@GBxgdmFMns#?w@4gn(NluF3;&qM5D%@ax$jDDtqgk zA{w^6`_{=R;KZ>?@b@FkQBeZAToPTL8xcNA)G=)@JaD7{zygC#<Q7Hb(3UqIggn$N zji|J`f}jzj`Ks7fJ$NyJjBJ-CO=h+ir#k3AN-9r`IEX-+pf{of+P)rCy9J;xcHlMM z#;nNF1j;y$I7tNu#2&O?Xedd7y7`hphf;w^5Gv>=$sjLB1qdur)FXvDCz*uQu)-jQ z8ke-qKSY04K`k!n)FCqzZM7*Xl{UEeh+7%f6M4k3);o|8tphJO0-7yd;EuVh1wa3= ztF{&8@~Ozha(+;V&ttulDNqf+!2ALROO_q9%cOTza)5KZIBAMjzR`kN<ebLP{I;_b z10U#IVtYr_@{r_6AuVc>oVAsxQBh2WHY<xnXEu;~#n3=76C<_C=7tJJ!j&b=vYPKh z_4fx=<d<YV3vsy<Xd_j*zVyUr?aC#=9mE+I6Q!jgA}TFfnzfa{#z8MHC>-i6pP`(f zo5pGhO6&XPSnsRuL-5BP8O3Fff`57mEk_xC%!bCfny%`zYOAxMUk~1FAfkd!25H99 zF&r2h&Ac{}&L{pn=a{sD@`RCV%W)1TS3@B+7I0P^WrcajHky^@oC4jkAfWSdJ#Otb zbTO<;{#s`qK3o|ib=`oO0vzgm$acMOmJ*nkT1eDRXp|a5<qD*j2(tD`ff(WoiWUBp z4njSHnpd`64nQsHGFN{sg*Z!cIQOZ1uTsQUcE0Fnkmg`%3%-oNG$6>5By$ycG3`Fr zI_+-s(?XdBI_H5ThO?I4EjNofN8`MST3U=U0FRB(MTwIH23IlkX<}#G8Y+W8dIdz< z$-@><Uc;bga80Ks-*z?8-xdn1zsB@-3=<_7$6EG66`YFOttD%?qT}(NoZ7$qnWal1 zDIYXp5riXt=$91gvc-3HYO9BjV;Dru?=M{9&InIgo~vf|d*6S?E{swnDD-p;4e|0g z$Hi89TNw9kv~{vdITQL6Jg0V&LcO8VrWpGyxuiAGmV6qArMO^h09r%GgwP8aoFte! za=5csiFN>}$Vmo;aP4@KX%3F*>xfILdP?M$HHf3Q;v+ZHNiZVwd$h%Kk+IH*h4mR* z?&oqp4H?|y3jhE8a^y&)%AL9EB(Q3D$GP8ZSW!nTwogReotlJ&E|}iGH_X@eoUZ7B ztL<6HQljr~9pM|Jt9)pssRnHGn3Pdg;3r_i>1M_3vaI>&AWy5L{is<t7DAB5aYx@q z_Z+iyvkBZYwk0<sDyJz|@G;1?gk7j8EL>evz|vwIy+nw+9F1$exe;(aFT({?*Jlky z(Jd8jVC2$FP$>Nvu)8iTL)Agq%EW^)ZYVE`7@MEU7jwlTyzA4gxa9M5QV{z}AC-ZR zu(YlPP!JN=P-RbEw^(3A87kX4BNDhtI9bf}mS#|mew6~5!#7Nr;v6PS=BC$LgNhf# zAx*M!tvOqqk&w@8`l8hhEOR!cY6{SRrJ)%@`ypmQMHa_P{URzOnD9ITH*F!q7p5Vu zkX@s`<k@6NAiarB9@q@4O=x)BGLFTg08Dyx5uDrWBfBXJ%L0fLS&z6a@7i<<qF^*f z?=N7}gE?|tCQVL7C5yoMGItxnP%>~;%W=|@57s6<IP-+PkOnbKMByUF(gtPTVo8g$ z)z+1Ez+;4UW4V-=HKl=8l2z&+!JrzI5Y$fvw4t?Mt9^p=5GO-A$YjIr<_*(~JYZO5 zM@7k1jzr=HC0A)`&8sQ6Ig@ikd7xXXX?DMiF=ieSXgl#sJ(btxNV*3}8fII)_N1wZ z<!Np~RG39sAk$u+Q^SRWjYCZ$-^S31SpMwR>%W)J<s5b#h&LlpP6fRQ7|qLQTTHTC zZf6{?NmjjgQz#eaZvn1UDbB=;#;k(TyrnlPI9vr&=$V^hqttZ$s-BmVf}sTl<s9Ey z^ASx_!DWKbt6@E3V0mW5Eo^9bK+?v<Rr^6)TdW#=i%Yw#b%HYA2e2*O&=6PpO6FHP zS)=BGyDl-sSie^bk~|2eBwX9IbtZs_MY91amChbx_e&XVR$~;H46B%wMsXeI=7X#k zUaTKYIwb+4x?e=fiIE&5n!=~WlMbo#hC!L3a%|i3Fr{t9dzm2wMevEW+X#F%VXIfa zk7-=&wFxVm88ok<EAqp7hUZR!j(gMgyDbBs5u__TyzBf2S5mE!DM@s@AV$^pU=Y;` z$`2fv*G-Z^JQ*y}x*%STs2a<C`_Xz}p*;pE2E?&)xc;=DMeBRf8qb19&-8Hu&z<i3 zJ0IBGIQrIKe)Zc|etr9&#7!9sJeI<R1cm=f&!_3lAPM=YamGULjPHlM-0`5b;H9Vk z1W)cyckaIXWOu)_e{!R{*ZI^&=P9^3=HA|YJ@GOd=#zw`p_hy62^xBXnRkPD@a(V% zc04gQAmyAGcC2VcJq~>-J??p4NJ_Hf$@R1l)Gf4LnRy8uW{O#3Bam8fx;|oDs0Edo zgPsYQd086IyaDx~y$j)!cdcOXYM2h;H+h+T{P+!ZZ7**5y$djp(H?#9_;H&b2R#b_ zNS>vjI|u^~^)3VtdY2BKeB|+qPkR^o@C$4$n<p{(1?KWt3Z|$fye2JF=+&Vd{DM=m z)XO5t&@#{NoB`NUsJOsj+4{ncu%MvuZa?MT6~#~cMtt?aJiH15=t`q12E&NTUD8yD zBOL}(3L#SOERc%r6f<~3>pcN~FD8sr@0?&`K6E-8NB_QfY4>N>W`8}}nf~FUd%rvO zi_T`Z1OJZR_{Zyi-28m+tybWzfx8pk?auazjqX<G-v341?KXkOQRF=XZ(jb}nEU^Q z+_CT8e(u=UPXFNO$(R22TzJ>le_BJXbIgFSk;OW9-g&&!>F!_NzxK|?`?~wP``0?} zY{Fk2IC$W>&8~s5PJ9pzoy|?T#M?h3mwagdOugix2R;W&v>44L+jniB5=*u}xP3}3 zx#z)q9)l%X;5PBLFK!>mg*)2^^}?(7JPQlo8f`uQ>h6u#{EL?^Km5$q>;B~f|KaP` zpL!Z1ZEG9m3L>dDK6*C*pg!EJLslF>OYQroPQkD7gv_|FDuM6s07VMV5(d>!{Q^&z z;DHg)Zm9yXb^7#aFw`9<?>N5!KR@`*&JjfTZCg8A2M=}kcJ|=sg%cOfKGZ$>>RrG2 n^S`{0&3s>_#VZHbpSp73KL$d2M##pu?unBp&Thz`l5^)jBhB~= diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h deleted file mode 100644 index 94a662c1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h +++ /dev/null @@ -1,162 +0,0 @@ -/*===---- f16cintrin.h - F16C intrinsics -----------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __IMMINTRIN_H -#error "Never use <f16cintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __F16CINTRIN_H -#define __F16CINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 \ - __attribute__((__always_inline__, __nodebug__, __target__("f16c"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 \ - __attribute__((__always_inline__, __nodebug__, __target__("f16c"), __min_vector_width__(256))) - -/* NOTE: Intel documents the 128-bit versions of these as being in emmintrin.h, - * but that's because icc can emulate these without f16c using a library call. - * Since we don't do that let's leave these in f16cintrin.h. - */ - -/// Converts a 16-bit half-precision float value into a 32-bit float -/// value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPH2PS </c> instruction. -/// -/// \param __a -/// A 16-bit half-precision float value. -/// \returns The converted 32-bit float value. -static __inline float __DEFAULT_FN_ATTRS128 -_cvtsh_ss(unsigned short __a) -{ - __v8hi __v = {(short)__a, 0, 0, 0, 0, 0, 0, 0}; - __v4sf __r = __builtin_ia32_vcvtph2ps(__v); - return __r[0]; -} - -/// Converts a 32-bit single-precision float value to a 16-bit -/// half-precision float value. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// unsigned short _cvtss_sh(float a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCVTPS2PH </c> instruction. -/// -/// \param a -/// A 32-bit single-precision float value to be converted to a 16-bit -/// half-precision float value. -/// \param imm -/// An immediate value controlling rounding using bits [2:0]: \n -/// 000: Nearest \n -/// 001: Down \n -/// 010: Up \n -/// 011: Truncate \n -/// 1XX: Use MXCSR.RC for rounding -/// \returns The converted 16-bit half-precision float value. -#define _cvtss_sh(a, imm) __extension__ ({ \ - (unsigned short)(((__v8hi)__builtin_ia32_vcvtps2ph((__v4sf){a, 0, 0, 0}, \ - (imm)))[0]); }) - -/// Converts a 128-bit vector containing 32-bit float values into a -/// 128-bit vector containing 16-bit half-precision float values. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_cvtps_ph(__m128 a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCVTPS2PH </c> instruction. -/// -/// \param a -/// A 128-bit vector containing 32-bit float values. -/// \param imm -/// An immediate value controlling rounding using bits [2:0]: \n -/// 000: Nearest \n -/// 001: Down \n -/// 010: Up \n -/// 011: Truncate \n -/// 1XX: Use MXCSR.RC for rounding -/// \returns A 128-bit vector containing converted 16-bit half-precision float -/// values. The lower 64 bits are used to store the converted 16-bit -/// half-precision floating-point values. -#define _mm_cvtps_ph(a, imm) \ - ((__m128i)__builtin_ia32_vcvtps2ph((__v4sf)(__m128)(a), (imm))) - -/// Converts a 128-bit vector containing 16-bit half-precision float -/// values into a 128-bit vector containing 32-bit float values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPH2PS </c> instruction. -/// -/// \param __a -/// A 128-bit vector containing 16-bit half-precision float values. The lower -/// 64 bits are used in the conversion. -/// \returns A 128-bit vector of [4 x float] containing converted float values. -static __inline __m128 __DEFAULT_FN_ATTRS128 -_mm_cvtph_ps(__m128i __a) -{ - return (__m128)__builtin_ia32_vcvtph2ps((__v8hi)__a); -} - -/// Converts a 256-bit vector of [8 x float] into a 128-bit vector -/// containing 16-bit half-precision float values. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm256_cvtps_ph(__m256 a, const int imm); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VCVTPS2PH </c> instruction. -/// -/// \param a -/// A 256-bit vector containing 32-bit single-precision float values to be -/// converted to 16-bit half-precision float values. -/// \param imm -/// An immediate value controlling rounding using bits [2:0]: \n -/// 000: Nearest \n -/// 001: Down \n -/// 010: Up \n -/// 011: Truncate \n -/// 1XX: Use MXCSR.RC for rounding -/// \returns A 128-bit vector containing the converted 16-bit half-precision -/// float values. -#define _mm256_cvtps_ph(a, imm) \ - ((__m128i)__builtin_ia32_vcvtps2ph256((__v8sf)(__m256)(a), (imm))) - -/// Converts a 128-bit vector containing 16-bit half-precision float -/// values into a 256-bit vector of [8 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTPH2PS </c> instruction. -/// -/// \param __a -/// A 128-bit vector containing 16-bit half-precision float values to be -/// converted to 32-bit single-precision float values. -/// \returns A vector of [8 x float] containing the converted 32-bit -/// single-precision float values. -static __inline __m256 __DEFAULT_FN_ATTRS256 -_mm256_cvtph_ps(__m128i __a) -{ - return (__m256)__builtin_ia32_vcvtph2ps256((__v8hi)__a); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif /* __F16CINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@f16cintrin.h.blob deleted file mode 100644 index ce1b1e04f203ab9c00bea7e1a02d8fabb60a2de1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15532 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 Aj{pDw diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h deleted file mode 100644 index 0e73bca0..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h +++ /dev/null @@ -1,168 +0,0 @@ -/*===---- float.h - Characteristics of floating point types ----------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __CLANG_FLOAT_H -#define __CLANG_FLOAT_H - -/* If we're on MinGW, fall back to the system's float.h, which might have - * additional definitions provided for Windows. - * For more details see http://msdn.microsoft.com/en-us/library/y0ybw9fy.aspx - * - * Also fall back on Darwin and AIX to allow additional definitions and - * implementation-defined values. - */ -#if (defined(__APPLE__) || defined(__MINGW32__) || defined(_MSC_VER) || \ - defined(_AIX)) && \ - __STDC_HOSTED__ && __has_include_next(<float.h>) - -/* Prior to Apple's 10.7 SDK, float.h SDK header used to apply an extra level - * of #include_next<float.h> to keep Metrowerks compilers happy. Avoid this - * extra indirection. - */ -#ifdef __APPLE__ -#define _FLOAT_H_ -#endif - -# include_next <float.h> - -/* Undefine anything that we'll be redefining below. */ -# undef FLT_EVAL_METHOD -# undef FLT_ROUNDS -# undef FLT_RADIX -# undef FLT_MANT_DIG -# undef DBL_MANT_DIG -# undef LDBL_MANT_DIG -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ - !defined(__STRICT_ANSI__) || \ - (defined(__cplusplus) && __cplusplus >= 201103L) || \ - (__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE)) -# undef DECIMAL_DIG -# endif -# undef FLT_DIG -# undef DBL_DIG -# undef LDBL_DIG -# undef FLT_MIN_EXP -# undef DBL_MIN_EXP -# undef LDBL_MIN_EXP -# undef FLT_MIN_10_EXP -# undef DBL_MIN_10_EXP -# undef LDBL_MIN_10_EXP -# undef FLT_MAX_EXP -# undef DBL_MAX_EXP -# undef LDBL_MAX_EXP -# undef FLT_MAX_10_EXP -# undef DBL_MAX_10_EXP -# undef LDBL_MAX_10_EXP -# undef FLT_MAX -# undef DBL_MAX -# undef LDBL_MAX -# undef FLT_EPSILON -# undef DBL_EPSILON -# undef LDBL_EPSILON -# undef FLT_MIN -# undef DBL_MIN -# undef LDBL_MIN -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ - !defined(__STRICT_ANSI__) || \ - (defined(__cplusplus) && __cplusplus >= 201703L) || \ - (__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE)) -# undef FLT_TRUE_MIN -# undef DBL_TRUE_MIN -# undef LDBL_TRUE_MIN -# undef FLT_DECIMAL_DIG -# undef DBL_DECIMAL_DIG -# undef LDBL_DECIMAL_DIG -# undef FLT_HAS_SUBNORM -# undef DBL_HAS_SUBNORM -# undef LDBL_HAS_SUBNORM -# endif -#endif - -/* Characteristics of floating point types, C99 5.2.4.2.2 */ - -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ - (defined(__cplusplus) && __cplusplus >= 201103L) -#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ -#endif -#define FLT_ROUNDS (__builtin_flt_rounds()) -#define FLT_RADIX __FLT_RADIX__ - -#define FLT_MANT_DIG __FLT_MANT_DIG__ -#define DBL_MANT_DIG __DBL_MANT_DIG__ -#define LDBL_MANT_DIG __LDBL_MANT_DIG__ - -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ - !defined(__STRICT_ANSI__) || \ - (defined(__cplusplus) && __cplusplus >= 201103L) || \ - (__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE)) -# define DECIMAL_DIG __DECIMAL_DIG__ -#endif - -#define FLT_DIG __FLT_DIG__ -#define DBL_DIG __DBL_DIG__ -#define LDBL_DIG __LDBL_DIG__ - -#define FLT_MIN_EXP __FLT_MIN_EXP__ -#define DBL_MIN_EXP __DBL_MIN_EXP__ -#define LDBL_MIN_EXP __LDBL_MIN_EXP__ - -#define FLT_MIN_10_EXP __FLT_MIN_10_EXP__ -#define DBL_MIN_10_EXP __DBL_MIN_10_EXP__ -#define LDBL_MIN_10_EXP __LDBL_MIN_10_EXP__ - -#define FLT_MAX_EXP __FLT_MAX_EXP__ -#define DBL_MAX_EXP __DBL_MAX_EXP__ -#define LDBL_MAX_EXP __LDBL_MAX_EXP__ - -#define FLT_MAX_10_EXP __FLT_MAX_10_EXP__ -#define DBL_MAX_10_EXP __DBL_MAX_10_EXP__ -#define LDBL_MAX_10_EXP __LDBL_MAX_10_EXP__ - -#define FLT_MAX __FLT_MAX__ -#define DBL_MAX __DBL_MAX__ -#define LDBL_MAX __LDBL_MAX__ - -#define FLT_EPSILON __FLT_EPSILON__ -#define DBL_EPSILON __DBL_EPSILON__ -#define LDBL_EPSILON __LDBL_EPSILON__ - -#define FLT_MIN __FLT_MIN__ -#define DBL_MIN __DBL_MIN__ -#define LDBL_MIN __LDBL_MIN__ - -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ - !defined(__STRICT_ANSI__) || \ - (defined(__cplusplus) && __cplusplus >= 201703L) || \ - (__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE)) -# define FLT_TRUE_MIN __FLT_DENORM_MIN__ -# define DBL_TRUE_MIN __DBL_DENORM_MIN__ -# define LDBL_TRUE_MIN __LDBL_DENORM_MIN__ -# define FLT_DECIMAL_DIG __FLT_DECIMAL_DIG__ -# define DBL_DECIMAL_DIG __DBL_DECIMAL_DIG__ -# define LDBL_DECIMAL_DIG __LDBL_DECIMAL_DIG__ -# define FLT_HAS_SUBNORM __FLT_HAS_DENORM__ -# define DBL_HAS_SUBNORM __DBL_HAS_DENORM__ -# define LDBL_HAS_SUBNORM __LDBL_HAS_DENORM__ -#endif - -#ifdef __STDC_WANT_IEC_60559_TYPES_EXT__ -# define FLT16_MANT_DIG __FLT16_MANT_DIG__ -# define FLT16_DECIMAL_DIG __FLT16_DECIMAL_DIG__ -# define FLT16_DIG __FLT16_DIG__ -# define FLT16_MIN_EXP __FLT16_MIN_EXP__ -# define FLT16_MIN_10_EXP __FLT16_MIN_10_EXP__ -# define FLT16_MAX_EXP __FLT16_MAX_EXP__ -# define FLT16_MAX_10_EXP __FLT16_MAX_10_EXP__ -# define FLT16_MAX __FLT16_MAX__ -# define FLT16_EPSILON __FLT16_EPSILON__ -# define FLT16_MIN __FLT16_MIN__ -# define FLT16_TRUE_MIN __FLT16_TRUE_MIN__ -#endif /* __STDC_WANT_IEC_60559_TYPES_EXT__ */ - -#endif /* __CLANG_FLOAT_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@float.h.blob deleted file mode 100644 index 856c77d149b9a178644a41f23fa0a618cbdb9014..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15546 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h deleted file mode 100644 index d889b7c5..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h +++ /dev/null @@ -1,216 +0,0 @@ -/*===---- fmaintrin.h - FMA intrinsics -------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <fmaintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __FMAINTRIN_H -#define __FMAINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("fma"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("fma"), __min_vector_width__(256))) - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fmadd_ps(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddps((__v4sf)__A, (__v4sf)__B, (__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fmadd_pd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddpd((__v2df)__A, (__v2df)__B, (__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fmadd_ss(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddss3((__v4sf)__A, (__v4sf)__B, (__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fmadd_sd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddsd3((__v2df)__A, (__v2df)__B, (__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fmsub_ps(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddps((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fmsub_pd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddpd((__v2df)__A, (__v2df)__B, -(__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fmsub_ss(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddss3((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fmsub_sd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddsd3((__v2df)__A, (__v2df)__B, -(__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fnmadd_ps(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddps(-(__v4sf)__A, (__v4sf)__B, (__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fnmadd_pd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddpd(-(__v2df)__A, (__v2df)__B, (__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fnmadd_ss(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddss3((__v4sf)__A, -(__v4sf)__B, (__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fnmadd_sd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddsd3((__v2df)__A, -(__v2df)__B, (__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fnmsub_ps(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddps(-(__v4sf)__A, (__v4sf)__B, -(__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fnmsub_pd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddpd(-(__v2df)__A, (__v2df)__B, -(__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fnmsub_ss(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddss3((__v4sf)__A, -(__v4sf)__B, -(__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fnmsub_sd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddsd3((__v2df)__A, -(__v2df)__B, -(__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fmaddsub_ps(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddsubps((__v4sf)__A, (__v4sf)__B, (__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fmaddsub_pd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddsubpd((__v2df)__A, (__v2df)__B, (__v2df)__C); -} - -static __inline__ __m128 __DEFAULT_FN_ATTRS128 -_mm_fmsubadd_ps(__m128 __A, __m128 __B, __m128 __C) -{ - return (__m128)__builtin_ia32_vfmaddsubps((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C); -} - -static __inline__ __m128d __DEFAULT_FN_ATTRS128 -_mm_fmsubadd_pd(__m128d __A, __m128d __B, __m128d __C) -{ - return (__m128d)__builtin_ia32_vfmaddsubpd((__v2df)__A, (__v2df)__B, -(__v2df)__C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_fmadd_ps(__m256 __A, __m256 __B, __m256 __C) -{ - return (__m256)__builtin_ia32_vfmaddps256((__v8sf)__A, (__v8sf)__B, (__v8sf)__C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_fmadd_pd(__m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d)__builtin_ia32_vfmaddpd256((__v4df)__A, (__v4df)__B, (__v4df)__C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_fmsub_ps(__m256 __A, __m256 __B, __m256 __C) -{ - return (__m256)__builtin_ia32_vfmaddps256((__v8sf)__A, (__v8sf)__B, -(__v8sf)__C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_fmsub_pd(__m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d)__builtin_ia32_vfmaddpd256((__v4df)__A, (__v4df)__B, -(__v4df)__C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_fnmadd_ps(__m256 __A, __m256 __B, __m256 __C) -{ - return (__m256)__builtin_ia32_vfmaddps256(-(__v8sf)__A, (__v8sf)__B, (__v8sf)__C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_fnmadd_pd(__m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d)__builtin_ia32_vfmaddpd256(-(__v4df)__A, (__v4df)__B, (__v4df)__C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_fnmsub_ps(__m256 __A, __m256 __B, __m256 __C) -{ - return (__m256)__builtin_ia32_vfmaddps256(-(__v8sf)__A, (__v8sf)__B, -(__v8sf)__C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_fnmsub_pd(__m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d)__builtin_ia32_vfmaddpd256(-(__v4df)__A, (__v4df)__B, -(__v4df)__C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_fmaddsub_ps(__m256 __A, __m256 __B, __m256 __C) -{ - return (__m256)__builtin_ia32_vfmaddsubps256((__v8sf)__A, (__v8sf)__B, (__v8sf)__C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_fmaddsub_pd(__m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d)__builtin_ia32_vfmaddsubpd256((__v4df)__A, (__v4df)__B, (__v4df)__C); -} - -static __inline__ __m256 __DEFAULT_FN_ATTRS256 -_mm256_fmsubadd_ps(__m256 __A, __m256 __B, __m256 __C) -{ - return (__m256)__builtin_ia32_vfmaddsubps256((__v8sf)__A, (__v8sf)__B, -(__v8sf)__C); -} - -static __inline__ __m256d __DEFAULT_FN_ATTRS256 -_mm256_fmsubadd_pd(__m256d __A, __m256d __B, __m256d __C) -{ - return (__m256d)__builtin_ia32_vfmaddsubpd256((__v4df)__A, (__v4df)__B, -(__v4df)__C); -} - -#undef __DEFAULT_FN_ATTRS128 -#undef __DEFAULT_FN_ATTRS256 - -#endif /* __FMAINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fmaintrin.h.blob deleted file mode 100644 index ad34bb8d41ef2d06551d96688e61b3f9a42df764..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25892 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h deleted file mode 100644 index afee6aa9..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h +++ /dev/null @@ -1,91 +0,0 @@ -/*===---- fxsrintrin.h - FXSR intrinsic ------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <fxsrintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __FXSRINTRIN_H -#define __FXSRINTRIN_H - -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("fxsr"))) - -/// Saves the XMM, MMX, MXCSR and x87 FPU registers into a 512-byte -/// memory region pointed to by the input parameter \a __p. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> FXSAVE </c> instruction. -/// -/// \param __p -/// A pointer to a 512-byte memory region. The beginning of this memory -/// region should be aligned on a 16-byte boundary. -static __inline__ void __DEFAULT_FN_ATTRS -_fxsave(void *__p) -{ - __builtin_ia32_fxsave(__p); -} - -/// Restores the XMM, MMX, MXCSR and x87 FPU registers from the 512-byte -/// memory region pointed to by the input parameter \a __p. The contents of -/// this memory region should have been written to by a previous \c _fxsave -/// or \c _fxsave64 intrinsic. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> FXRSTOR </c> instruction. -/// -/// \param __p -/// A pointer to a 512-byte memory region. The beginning of this memory -/// region should be aligned on a 16-byte boundary. -static __inline__ void __DEFAULT_FN_ATTRS -_fxrstor(void *__p) -{ - __builtin_ia32_fxrstor(__p); -} - -#ifdef __x86_64__ -/// Saves the XMM, MMX, MXCSR and x87 FPU registers into a 512-byte -/// memory region pointed to by the input parameter \a __p. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> FXSAVE64 </c> instruction. -/// -/// \param __p -/// A pointer to a 512-byte memory region. The beginning of this memory -/// region should be aligned on a 16-byte boundary. -static __inline__ void __DEFAULT_FN_ATTRS -_fxsave64(void *__p) -{ - __builtin_ia32_fxsave64(__p); -} - -/// Restores the XMM, MMX, MXCSR and x87 FPU registers from the 512-byte -/// memory region pointed to by the input parameter \a __p. The contents of -/// this memory region should have been written to by a previous \c _fxsave -/// or \c _fxsave64 intrinsic. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> FXRSTOR64 </c> instruction. -/// -/// \param __p -/// A pointer to a 512-byte memory region. The beginning of this memory -/// region should be aligned on a 16-byte boundary. -static __inline__ void __DEFAULT_FN_ATTRS -_fxrstor64(void *__p) -{ - __builtin_ia32_fxrstor64(__p); -} -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@fxsrintrin.h.blob deleted file mode 100644 index 2377355d801aac403f7434b634863429a32ced67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14538 zcmeHOON<;x8SYs^1kTD@MOLIBo3u=1*}=1uUCd%dCSJ#hlSp<<cGt-YBAS}+nwiS> z%UwN>b#mYs0ph?R5*$zz5aJ;vghMzW!VN??@d)A}!3Bv!kWZYVB+Fk_Q#Di5f7eWa zLxhNwjduI5s{ir*&#K(xz56=b{gv17TD>fxt+@3d<$Gn8w@S*(Rz#x~FTz$rSh^Z| z9|&WTb{8UT4zps9rQK%43L2JKvH$7X6TEj$H(GsOv{)L({fM@<AH2NYYSS)DgD{Ke zYR`N3g#X;@7EM_0=km)xZ=SWkv{}hp;wx_jLDJ?WDQQrOO$=$w+AS$dYi+}vN|F&v z%K{_?QlS;=JjoOM2)cb1p&UJYxz&yP;?v6Se)!9p#h}%GflJh(M112Gr&=WmDSOrj zT!g{slWXgpd~L%aiPVoUOKK}cA0@xH_W=MylFvVrmr*;*VnJ9@n%pYSI2)}8F-xq? ztm8<TB`gevETUlYep=GP5W9fcVKEKbMK<JW!M)#a*O)EL`z-BbVpoGDhYo>r5(5C| z<AL{!4hbhFb+Ox{F&haMUi#7JZ9cg;sB2^v-hgt~?WD}Xl~lOGK4;wliD!UsDP7T( zETP2|nTvlqVA9abuU)m-H{MZZ{ZIncDA_u)lQ-k6+nz5ckw_l26PL7npSQw@c5s)O z)<s$L!!o$^=;ep3qcv}aeHrMcA)+a!HVd<CkI{f-L8qUFCCgGirM~GnCL@A4@U!iU zju_Pe51H8kwf!(j=9wOh&dWW11C_F$GH_P()0B94#MF9#15zR}V1lXsB=_K9kIp?} z2x2TEaGvF1S~_Glc7tFRsR$r(=frSALJ62Zef)|IV&Ms>cFZww3L`Q<7<i+W3Ib3x z05eF)C?GNDOo@vJNS&*M@#w5#EbVqFq~;PLq)H*u1TI<mK*)3R;ssk!BM)#1`wJQ) zk3LWMmSoJ*2rBK^SMznS6fHQUd&Fd}mGL4OOIT;)jKz)S)yNaZEN^F|z!S6tC}e>$ zZ9<*_V3qsUb|{N^(FuE45JIWPsz@tA+GV9qL21y9_j4II@9}%KwUl28$0p(4e1^v? z#O==fDgY2Cl43K27*^U*)FmE7Wnt^tQpvG|brLd&ku}<cQpkyW;lV{aN}PoR^1fZZ zpr^x$2E@4YK}PBjZf|8V1%+(H*$q502nUiiMTKF5$vwJn6|pWPlz;@z%5nAc)<LL{ zfQptovw=B2VH|gGL!oLf0jx?8=%)P^6s&FDtnoa;lNK$CRO;a5TVJuuUWHs*KAkL3 zN9rgdV}5jfK3a@njqXuB4e~Hf`tkMXIs!j*#gMQv-@}SOl$@i6KuJMHgb537vRV!x z%3GeUNeG8Rck;=FrI?OXM*PS>s2xziXw5E7X~9Beyk?tliSLR94M?(_rd^r$D<GM2 z-IQ`WifFzCumgqc7Ri~A?b)v{+cl9)Mibd;OW+Be@n}@pBTfc1oTqOcQ$!KAab}U2 z0!AFD0Dl(Q9Azb>vnkPKxgO!YM73TU(PNGf09as9UEH7uA6oOqf)IzQsS)K?XAsn5 z^uEfsRb5>SAtKwUNt2o5MW+TeMM-5Bh=T~Y37b7ipp<JuwwnU_bX7gZ+kh2Wnm`)I z5htmj>1#qsg}Ra?7#CF1=};<Q30wvJBsa**UI7eC6g5eqdLI*zDq3jAkmHiNnTDvj z`jCrDI&$y~Nn0I?a-|h6KH^%2^+dKU)_MmLI*Y&y+B$Qj3*0f6x!~11T)C|%XFDC& zmXqQ?UdL)Dlb|Ygftdshi!428lS%8U-~he3=pIFRUMayWa!z9?e(SdrLma4FV*5l? z^AO}nAvJ1(oOP7QQJt7{?X4^l9oc~IIfDSPnHZDx?cGquNHjNvSy~GM$o@gQ-w8@G znQyqv3A7!RxxR4q0XuU^aEEcm#gu4fFo<%Cre>`r&~ezz3kr>zWixaqsHU-8g3<<o zY1IQ&eTe;WLw4e_Nx?qNgqFPwZ=IoV?vLixS!1oUZZICE*+4`Y9k$bqr2}XJE5*E4 zl8z_AB<7f~g6;`p)S7k<Cs%_W)#^Jlj?%)!Wh=!>b@qUsSP+nTHXqkk8#)<|Q~p9d z5AV+Pk#XLDIRP|v0YtlIw4V}~fm%q^MyRA3L*;U$m<Y1^?q3Y%1;reDN&}&mLDehE zE(B00F-@<Bi3@(yl24SikocS>Idq9CJE(y2#nYd2lv5LE)wya$V0I8@Ns_rr0x|Di ztDSdOs&64o1<Mn+6XRLSN){-@RHV|KqN)~y4?u6l(NW?gfzeeARh>8)*M^EW5R3u8 zcBru#lov5*$FAwr?Ay*g`rA|*4i=c-4q*NS16fO7sDLAJzcr%`moHsu%DMgP=Vz{k zB!5t{b-;P?5rL#o*DZmwuA4u89KhIWa)aSwcc1W-<+&<-zxm=dJB><~pe&#RD4%DC zKdx=1wS{uuLJKV`@iQS$!E<VdG}Ia@$ciD+j7e(4a>++=REjIc3ZOM~j0-)TLEpht zgW`^LC0Z|_EGHSH&4v9*21RJ<7h#w5$1^22uVLJY`@HAgbQt!?<R)#pi!$2jv1r_p z%ky03rxAmjTw(veT<SOisWNBo>Ko>b`Zy1&<t=K6>0*nh+fx&;&;_Hj8{K?i%jx_d z&dpM$0IMJ38>OpwXoaZ?Z1b3uovgt7WwX=uKC_d!-bXum+E3~m({ULh7^yTz`aZhp zn7o@q;HI%IxEWSCO}T=PLAJ&0R7PRZ{G0*-OboAQ2yv66eytBT3{IwNID_f}ts*FT zq{0mhXsQ7Ur5^xx7o}yWIOw)A@L(HPgcnJSO?vq0SRt)!1$S9$2RSK-eW{P~z<XF& z*9<5KiHoSRDKBR%FrphO-8wxIc9RTSo9QFXSR4H+88WRp%%kEQ=27OZ*II+J7se4y zvT~uRT%3`JPjdRS)(tFkHlk`~P=TeP=|cG-CPzgU$20XJ$|I<79f6zHkl7bzCoY#= zAiw0<aE2j$hz=gu#H)^Jc-}II#j^m6dvp<W`QrxPq=i`qM2H*@#4YREbPA%NG)L_( zVAF)D^EgeKn2K`N0prWqZ5Ttzz*IHOr^O$vO`6d2M9qkXG0acl+QyOw-MmJV*3Opa zm$t)WgyX_;CNOJC1Fa<Mt6K+yYLr6|KNZl1(te@x3Hl*Uy0o3ig5AA0%s%pvVVNCe zC08*L@f(y}g{cKEvf!RgP8nrGw@}gSej8)d+#^tS;#YtwuFC;-6M{5M!kYC#QxVH< zZi-cyTv;H~R-RD9^@NQ>O(I{%(4koV#PPrXTt1j{=&>zcjX*jT^u}TIUPjttnC0>~ zV|Yz6@5P%!xln%%aHU9bCf+n=eHi3ha-)pH#W97Nxym+5O&8DVc{wZ?nqbhK;~NV; zqe=R3^&sS`XwN8E_KdiO4Gj-TTA9ykJBUk;d4qCs#h2AiP$uU9wxt;=>`Gh7_-Y4h zR6TGrCZ-sR*J@#shvA4s3!8Qv3BY5~Xn=C1qsPGgu12fXC<W%o$|t2#T<zRskoEL) z<7bmjPC%*dH<5B;B!`YB@oDy?LB?^zpv+J?j;(pdQn%v0%n-sN{KUd#1U{Rv#T&n- zsaylrF)NE1G_Ij5^1bm4&m96Cx2*LyVFo@u2v@j!kK-R)VAXo2B+=!97;M{vK~yS8 zKhQ8Q8YIJb*q)(vLA>lyHI{q+;qkyiTMR-Buw%t={b@>y+83i^Jc~V=rj8SM_8K4d zZd<<P;K(a)zVNeOzx_RNuf{^3rEq;g{XxbeKj@4K4i)0YnUnJOdx9W8<()Wjq_O2~ z9a(BT?p<5*wqQO9&-}O#BKW&kuAKI-T-k*myBD{&e3C}~=<KKbOP{&s7w}FVuGI_f zcZw{L<bbQDc))$g_x%J~kz!v`WvQQws}CCaW#+f{B`r(ye(B3jj>0bfQ^W^$R{b3~ zRu<*}2S4kGt;!zbGyB2(sUJsv4_;dMZAw#L<fRh+s}3MOT(1on6ng$sp^#fV$q-v* zaFF@K#u-qLNbMZzltYJ}QZE3+g8}~>3~RKx?>}^CM{r<hfxiMYlxJxKYRaTI=feB_ zOS@a!J6E@0+jA}W750^-m6!{|?ow1Cqu}GhSR;j4PkgO7TS}!2`TrxN@JJi9F|7)* zjj#b|cdU&z_2rvS&@=pz_-h-|8h#rdw!^LN{;KCS4!+jB^OYz6uyWm7Zg}v|!R04k z_|`LTe7OcMLT|HhxxKOJZQj1rIPYCt^0tBCy<i2DI4!Uc;@?Edf5l+i7oK?N{cW$8 z@A$#mZy))_o7!H@pZ@u)^l#69$>HC&cds;BUTbBkvFfe=-@A+d*t_4)zWwYUzx~%+ zZ@&DZ#!BIxyYIH%tIIf6gm2qWIovqr9Xq_#IO_TT6Q2Ekw$-uAzq#`ltKYdfwv~6Q ziOeQ9d&|qWLdf1azIF1QrCS<XcWj;X-dTpf>}>3uTW%a^bI&eleYADASkSt?b+=lu zw!U^27U)<qyI|AbJRufr9@#vh7Cdm~f%{;AW^#7Hv7^V1iv`D4jvZGE?z;D`4Ono? z+t0kzx_RTfLGa*1mo8kpyc1k{EV!_<v$YMm=I)QdKulC4)vxd;QbH<jLn9ajCr`q! z@sRBEK-Dina2hC5czV<Bcf~L88@$tlS9Cyp9MXGn{M4yapqZ7Gl`~7?=WE^p<hKtV zT|K(B*;rj&g`ekF&%@8hS09I;yN7qzHya1VhkpO#vv2(5ZMfpy-QIfiu^sp~cm!BI UI$_oR(m1?w`1F$eDNpeJ1^d$15dZ)H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h deleted file mode 100644 index 5ec53c54..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h +++ /dev/null @@ -1,194 +0,0 @@ -/*===----------------- gfniintrin.h - GFNI intrinsics ----------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <gfniintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __GFNIINTRIN_H -#define __GFNIINTRIN_H - -/* Default attributes for simple form (no masking). */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("gfni"), __min_vector_width__(128))) - -/* Default attributes for YMM unmasked form. */ -#define __DEFAULT_FN_ATTRS_Y __attribute__((__always_inline__, __nodebug__, __target__("avx,gfni"), __min_vector_width__(256))) - -/* Default attributes for ZMM unmasked forms. */ -#define __DEFAULT_FN_ATTRS_Z __attribute__((__always_inline__, __nodebug__, __target__("avx512f,gfni"), __min_vector_width__(512))) -/* Default attributes for ZMM masked forms. */ -#define __DEFAULT_FN_ATTRS_Z_MASK __attribute__((__always_inline__, __nodebug__, __target__("avx512bw,gfni"), __min_vector_width__(512))) - -/* Default attributes for VLX masked forms. */ -#define __DEFAULT_FN_ATTRS_VL128 __attribute__((__always_inline__, __nodebug__, __target__("avx512bw,avx512vl,gfni"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS_VL256 __attribute__((__always_inline__, __nodebug__, __target__("avx512bw,avx512vl,gfni"), __min_vector_width__(256))) - -#define _mm_gf2p8affineinv_epi64_epi8(A, B, I) \ - ((__m128i)__builtin_ia32_vgf2p8affineinvqb_v16qi((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), \ - (char)(I))) - -#define _mm_gf2p8affine_epi64_epi8(A, B, I) \ - ((__m128i)__builtin_ia32_vgf2p8affineqb_v16qi((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), \ - (char)(I))) - -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_gf2p8mul_epi8(__m128i __A, __m128i __B) -{ - return (__m128i) __builtin_ia32_vgf2p8mulb_v16qi((__v16qi) __A, - (__v16qi) __B); -} - -#ifdef __AVXINTRIN_H -#define _mm256_gf2p8affineinv_epi64_epi8(A, B, I) \ - ((__m256i)__builtin_ia32_vgf2p8affineinvqb_v32qi((__v32qi)(__m256i)(A), \ - (__v32qi)(__m256i)(B), \ - (char)(I))) - -#define _mm256_gf2p8affine_epi64_epi8(A, B, I) \ - ((__m256i)__builtin_ia32_vgf2p8affineqb_v32qi((__v32qi)(__m256i)(A), \ - (__v32qi)(__m256i)(B), \ - (char)(I))) - -static __inline__ __m256i __DEFAULT_FN_ATTRS_Y -_mm256_gf2p8mul_epi8(__m256i __A, __m256i __B) -{ - return (__m256i) __builtin_ia32_vgf2p8mulb_v32qi((__v32qi) __A, - (__v32qi) __B); -} -#endif /* __AVXINTRIN_H */ - -#ifdef __AVX512BWINTRIN_H -#define _mm512_gf2p8affineinv_epi64_epi8(A, B, I) \ - ((__m512i)__builtin_ia32_vgf2p8affineinvqb_v64qi((__v64qi)(__m512i)(A), \ - (__v64qi)(__m512i)(B), \ - (char)(I))) - -#define _mm512_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \ - ((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \ - (__v64qi)_mm512_gf2p8affineinv_epi64_epi8(A, B, I), \ - (__v64qi)(__m512i)(S))) - -#define _mm512_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \ - _mm512_mask_gf2p8affineinv_epi64_epi8((__m512i)_mm512_setzero_si512(), \ - U, A, B, I) - -#define _mm512_gf2p8affine_epi64_epi8(A, B, I) \ - ((__m512i)__builtin_ia32_vgf2p8affineqb_v64qi((__v64qi)(__m512i)(A), \ - (__v64qi)(__m512i)(B), \ - (char)(I))) - -#define _mm512_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \ - ((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \ - (__v64qi)_mm512_gf2p8affine_epi64_epi8((A), (B), (I)), \ - (__v64qi)(__m512i)(S))) - -#define _mm512_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \ - _mm512_mask_gf2p8affine_epi64_epi8((__m512i)_mm512_setzero_si512(), \ - U, A, B, I) - -static __inline__ __m512i __DEFAULT_FN_ATTRS_Z -_mm512_gf2p8mul_epi8(__m512i __A, __m512i __B) -{ - return (__m512i) __builtin_ia32_vgf2p8mulb_v64qi((__v64qi) __A, - (__v64qi) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS_Z_MASK -_mm512_mask_gf2p8mul_epi8(__m512i __S, __mmask64 __U, __m512i __A, __m512i __B) -{ - return (__m512i) __builtin_ia32_selectb_512(__U, - (__v64qi) _mm512_gf2p8mul_epi8(__A, __B), - (__v64qi) __S); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS_Z_MASK -_mm512_maskz_gf2p8mul_epi8(__mmask64 __U, __m512i __A, __m512i __B) -{ - return _mm512_mask_gf2p8mul_epi8((__m512i)_mm512_setzero_si512(), - __U, __A, __B); -} -#endif /* __AVX512BWINTRIN_H */ - -#ifdef __AVX512VLBWINTRIN_H -#define _mm_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \ - ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \ - (__v16qi)_mm_gf2p8affineinv_epi64_epi8(A, B, I), \ - (__v16qi)(__m128i)(S))) - -#define _mm_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \ - _mm_mask_gf2p8affineinv_epi64_epi8((__m128i)_mm_setzero_si128(), \ - U, A, B, I) - -#define _mm256_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \ - ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \ - (__v32qi)_mm256_gf2p8affineinv_epi64_epi8(A, B, I), \ - (__v32qi)(__m256i)(S))) - -#define _mm256_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \ - _mm256_mask_gf2p8affineinv_epi64_epi8((__m256i)_mm256_setzero_si256(), \ - U, A, B, I) - -#define _mm_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \ - ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \ - (__v16qi)_mm_gf2p8affine_epi64_epi8(A, B, I), \ - (__v16qi)(__m128i)(S))) - -#define _mm_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \ - _mm_mask_gf2p8affine_epi64_epi8((__m128i)_mm_setzero_si128(), U, A, B, I) - -#define _mm256_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \ - ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \ - (__v32qi)_mm256_gf2p8affine_epi64_epi8(A, B, I), \ - (__v32qi)(__m256i)(S))) - -#define _mm256_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \ - _mm256_mask_gf2p8affine_epi64_epi8((__m256i)_mm256_setzero_si256(), \ - U, A, B, I) - -static __inline__ __m128i __DEFAULT_FN_ATTRS_VL128 -_mm_mask_gf2p8mul_epi8(__m128i __S, __mmask16 __U, __m128i __A, __m128i __B) -{ - return (__m128i) __builtin_ia32_selectb_128(__U, - (__v16qi) _mm_gf2p8mul_epi8(__A, __B), - (__v16qi) __S); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS_VL128 -_mm_maskz_gf2p8mul_epi8(__mmask16 __U, __m128i __A, __m128i __B) -{ - return _mm_mask_gf2p8mul_epi8((__m128i)_mm_setzero_si128(), - __U, __A, __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS_VL256 -_mm256_mask_gf2p8mul_epi8(__m256i __S, __mmask32 __U, __m256i __A, __m256i __B) -{ - return (__m256i) __builtin_ia32_selectb_256(__U, - (__v32qi) _mm256_gf2p8mul_epi8(__A, __B), - (__v32qi) __S); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS_VL256 -_mm256_maskz_gf2p8mul_epi8(__mmask32 __U, __m256i __A, __m256i __B) -{ - return _mm256_mask_gf2p8mul_epi8((__m256i)_mm256_setzero_si256(), - __U, __A, __B); -} -#endif /* __AVX512VLBWINTRIN_H */ - -#undef __DEFAULT_FN_ATTRS -#undef __DEFAULT_FN_ATTRS_Y -#undef __DEFAULT_FN_ATTRS_Z -#undef __DEFAULT_FN_ATTRS_VL128 -#undef __DEFAULT_FN_ATTRS_VL256 - -#endif /* __GFNIINTRIN_H */ - diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@gfniintrin.h.blob deleted file mode 100644 index 5b617586038b2d7dfa7a94959855008c59544ecc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23077 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 U72g2D=M&pm&<A=4;0Eyj0omjhNdN!< diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h deleted file mode 100644 index 646f6c13..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h +++ /dev/null @@ -1,49 +0,0 @@ -/*===---------------- hresetintrin.h - HRESET intrinsics -------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __X86GPRINTRIN_H -#error "Never use <hresetintrin.h> directly; include <x86gprintrin.h> instead." -#endif - -#ifndef __HRESETINTRIN_H -#define __HRESETINTRIN_H - -#if __has_extension(gnu_asm) - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("hreset"))) - -/// Provides a hint to the processor to selectively reset the prediction -/// history of the current logical processor specified by a 32-bit integer -/// value \a __eax. -/// -/// This intrinsic corresponds to the <c> HRESET </c> instruction. -/// -/// \code{.operation} -/// IF __eax == 0 -/// // nop -/// ELSE -/// FOR i := 0 to 31 -/// IF __eax[i] -/// ResetPredictionFeature(i) -/// FI -/// ENDFOR -/// FI -/// \endcode -static __inline void __DEFAULT_FN_ATTRS -_hreset(int __eax) -{ - __asm__ ("hreset $0" :: "a"(__eax)); -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* __has_extension(gnu_asm) */ - -#endif /* __HRESETINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@hresetintrin.h.blob deleted file mode 100644 index 9c037b536619aa8fa2e020c31756758417dd2221..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12935 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 I)qaEj1B|q}TmS$7 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h deleted file mode 100644 index 0d2e8be6..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h +++ /dev/null @@ -1,650 +0,0 @@ -/*===---- immintrin.h - Intel intrinsics -----------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#define __IMMINTRIN_H - -#if !defined(__i386__) && !defined(__x86_64__) -#error "This header is only meant to be used on x86 and x64 architecture" -#endif - -#include <x86gprintrin.h> - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__MMX__) -#include <mmintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__SSE__) -#include <xmmintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__SSE2__) -#include <emmintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__SSE3__) -#include <pmmintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__SSSE3__) -#include <tmmintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__SSE4_2__) || defined(__SSE4_1__)) -#include <smmintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AES__) || defined(__PCLMUL__)) -#include <wmmintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__CLFLUSHOPT__) -#include <clflushoptintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__CLWB__) -#include <clwbintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX__) -#include <avxintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX2__) -#include <avx2intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__F16C__) -#include <f16cintrin.h> -#endif - -/* No feature check desired due to internal checks */ -#include <bmiintrin.h> - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__BMI2__) -#include <bmi2intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__LZCNT__) -#include <lzcntintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__POPCNT__) -#include <popcntintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__FMA__) -#include <fmaintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512F__) -#include <avx512fintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512VL__) -#include <avx512vlintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512BW__) -#include <avx512bwintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512BITALG__) -#include <avx512bitalgintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512CD__) -#include <avx512cdintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512VPOPCNTDQ__) -#include <avx512vpopcntdqintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512VPOPCNTDQ__)) -#include <avx512vpopcntdqvlintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512VNNI__) -#include <avx512vnniintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512VNNI__)) -#include <avx512vlvnniintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVXVNNI__) -#include <avxvnniintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512DQ__) -#include <avx512dqintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512BITALG__)) -#include <avx512vlbitalgintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512BW__)) -#include <avx512vlbwintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512CD__)) -#include <avx512vlcdintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512DQ__)) -#include <avx512vldqintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512ER__) -#include <avx512erintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512IFMA__) -#include <avx512ifmaintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512IFMA__) && defined(__AVX512VL__)) -#include <avx512ifmavlintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVXIFMA__) -#include <avxifmaintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512VBMI__) -#include <avx512vbmiintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VBMI__) && defined(__AVX512VL__)) -#include <avx512vbmivlintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512VBMI2__) -#include <avx512vbmi2intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VBMI2__) && defined(__AVX512VL__)) -#include <avx512vlvbmi2intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512PF__) -#include <avx512pfintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512FP16__) -#include <avx512fp16intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512FP16__)) -#include <avx512vlfp16intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512BF16__) -#include <avx512bf16intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512BF16__)) -#include <avx512vlbf16intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__PKU__) -#include <pkuintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__VPCLMULQDQ__) -#include <vpclmulqdqintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__VAES__) -#include <vaesintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__GFNI__) -#include <gfniintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVXVNNIINT8__) -#include <avxvnniint8intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVXNECONVERT__) -#include <avxneconvertintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__RDPID__) -/// Returns the value of the IA32_TSC_AUX MSR (0xc0000103). -/// -/// \headerfile <immintrin.h> -/// -/// This intrinsic corresponds to the <c> RDPID </c> instruction. -static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__, __target__("rdpid"))) -_rdpid_u32(void) { - return __builtin_ia32_rdpid(); -} -#endif // __RDPID__ - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__RDRND__) -static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd"))) -_rdrand16_step(unsigned short *__p) -{ - return (int)__builtin_ia32_rdrand16_step(__p); -} - -static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd"))) -_rdrand32_step(unsigned int *__p) -{ - return (int)__builtin_ia32_rdrand32_step(__p); -} - -#ifdef __x86_64__ -static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd"))) -_rdrand64_step(unsigned long long *__p) -{ - return (int)__builtin_ia32_rdrand64_step(__p); -} -#else -// We need to emulate the functionality of 64-bit rdrand with 2 32-bit -// rdrand instructions. -static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd"))) -_rdrand64_step(unsigned long long *__p) -{ - unsigned int __lo, __hi; - unsigned int __res_lo = __builtin_ia32_rdrand32_step(&__lo); - unsigned int __res_hi = __builtin_ia32_rdrand32_step(&__hi); - if (__res_lo && __res_hi) { - *__p = ((unsigned long long)__hi << 32) | (unsigned long long)__lo; - return 1; - } else { - *__p = 0; - return 0; - } -} -#endif -#endif /* __RDRND__ */ - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__FSGSBASE__) -#ifdef __x86_64__ -static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) -_readfsbase_u32(void) -{ - return __builtin_ia32_rdfsbase32(); -} - -static __inline__ unsigned long long __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) -_readfsbase_u64(void) -{ - return __builtin_ia32_rdfsbase64(); -} - -static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) -_readgsbase_u32(void) -{ - return __builtin_ia32_rdgsbase32(); -} - -static __inline__ unsigned long long __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) -_readgsbase_u64(void) -{ - return __builtin_ia32_rdgsbase64(); -} - -static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) -_writefsbase_u32(unsigned int __V) -{ - __builtin_ia32_wrfsbase32(__V); -} - -static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) -_writefsbase_u64(unsigned long long __V) -{ - __builtin_ia32_wrfsbase64(__V); -} - -static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) -_writegsbase_u32(unsigned int __V) -{ - __builtin_ia32_wrgsbase32(__V); -} - -static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase"))) -_writegsbase_u64(unsigned long long __V) -{ - __builtin_ia32_wrgsbase64(__V); -} - -#endif -#endif /* __FSGSBASE__ */ - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__MOVBE__) - -/* The structs used below are to force the load/store to be unaligned. This - * is accomplished with the __packed__ attribute. The __may_alias__ prevents - * tbaa metadata from being generated based on the struct and the type of the - * field inside of it. - */ - -static __inline__ short __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) -_loadbe_i16(void const * __P) { - struct __loadu_i16 { - unsigned short __v; - } __attribute__((__packed__, __may_alias__)); - return (short)__builtin_bswap16(((const struct __loadu_i16*)__P)->__v); -} - -static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) -_storebe_i16(void * __P, short __D) { - struct __storeu_i16 { - unsigned short __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_i16*)__P)->__v = __builtin_bswap16((unsigned short)__D); -} - -static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) -_loadbe_i32(void const * __P) { - struct __loadu_i32 { - unsigned int __v; - } __attribute__((__packed__, __may_alias__)); - return (int)__builtin_bswap32(((const struct __loadu_i32*)__P)->__v); -} - -static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) -_storebe_i32(void * __P, int __D) { - struct __storeu_i32 { - unsigned int __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_i32*)__P)->__v = __builtin_bswap32((unsigned int)__D); -} - -#ifdef __x86_64__ -static __inline__ long long __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) -_loadbe_i64(void const * __P) { - struct __loadu_i64 { - unsigned long long __v; - } __attribute__((__packed__, __may_alias__)); - return (long long)__builtin_bswap64(((const struct __loadu_i64*)__P)->__v); -} - -static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe"))) -_storebe_i64(void * __P, long long __D) { - struct __storeu_i64 { - unsigned long long __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_i64*)__P)->__v = __builtin_bswap64((unsigned long long)__D); -} -#endif -#endif /* __MOVBE */ - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__RTM__) -#include <rtmintrin.h> -#include <xtestintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__SHA__) -#include <shaintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__FXSR__) -#include <fxsrintrin.h> -#endif - -/* No feature check desired due to internal MSC_VER checks */ -#include <xsaveintrin.h> - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__XSAVEOPT__) -#include <xsaveoptintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__XSAVEC__) -#include <xsavecintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__XSAVES__) -#include <xsavesintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__SHSTK__) -#include <cetintrin.h> -#endif - -/* Some intrinsics inside adxintrin.h are available only on processors with ADX, - * whereas others are also available at all times. */ -#include <adxintrin.h> - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__RDSEED__) -#include <rdseedintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__WBNOINVD__) -#include <wbnoinvdintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__CLDEMOTE__) -#include <cldemoteintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__WAITPKG__) -#include <waitpkgintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__MOVDIRI__) || defined(__MOVDIR64B__) -#include <movdirintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__PCONFIG__) -#include <pconfigintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__SGX__) -#include <sgxintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__PTWRITE__) -#include <ptwriteintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__INVPCID__) -#include <invpcidintrin.h> -#endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AMX_FP16__) -#include <amxfp16intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__KL__) || defined(__WIDEKL__) -#include <keylockerintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AMX_TILE__) || defined(__AMX_INT8__) || defined(__AMX_BF16__) -#include <amxintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AVX512VP2INTERSECT__) -#include <avx512vp2intersectintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - (defined(__AVX512VL__) && defined(__AVX512VP2INTERSECT__)) -#include <avx512vlvp2intersectintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__ENQCMD__) -#include <enqcmdintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__SERIALIZE__) -#include <serializeintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__TSXLDTRK__) -#include <tsxldtrkintrin.h> -#endif - -#if defined(_MSC_VER) && __has_extension(gnu_asm) -/* Define the default attributes for these intrinsics */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__)) -#ifdef __cplusplus -extern "C" { -#endif -/*----------------------------------------------------------------------------*\ -|* Interlocked Exchange HLE -\*----------------------------------------------------------------------------*/ -#if defined(__i386__) || defined(__x86_64__) -static __inline__ long __DEFAULT_FN_ATTRS -_InterlockedExchange_HLEAcquire(long volatile *_Target, long _Value) { - __asm__ __volatile__(".byte 0xf2 ; lock ; xchg {%0, %1|%1, %0}" - : "+r" (_Value), "+m" (*_Target) :: "memory"); - return _Value; -} -static __inline__ long __DEFAULT_FN_ATTRS -_InterlockedExchange_HLERelease(long volatile *_Target, long _Value) { - __asm__ __volatile__(".byte 0xf3 ; lock ; xchg {%0, %1|%1, %0}" - : "+r" (_Value), "+m" (*_Target) :: "memory"); - return _Value; -} -#endif -#if defined(__x86_64__) -static __inline__ __int64 __DEFAULT_FN_ATTRS -_InterlockedExchange64_HLEAcquire(__int64 volatile *_Target, __int64 _Value) { - __asm__ __volatile__(".byte 0xf2 ; lock ; xchg {%0, %1|%1, %0}" - : "+r" (_Value), "+m" (*_Target) :: "memory"); - return _Value; -} -static __inline__ __int64 __DEFAULT_FN_ATTRS -_InterlockedExchange64_HLERelease(__int64 volatile *_Target, __int64 _Value) { - __asm__ __volatile__(".byte 0xf3 ; lock ; xchg {%0, %1|%1, %0}" - : "+r" (_Value), "+m" (*_Target) :: "memory"); - return _Value; -} -#endif -/*----------------------------------------------------------------------------*\ -|* Interlocked Compare Exchange HLE -\*----------------------------------------------------------------------------*/ -#if defined(__i386__) || defined(__x86_64__) -static __inline__ long __DEFAULT_FN_ATTRS -_InterlockedCompareExchange_HLEAcquire(long volatile *_Destination, - long _Exchange, long _Comparand) { - __asm__ __volatile__(".byte 0xf2 ; lock ; cmpxchg {%2, %1|%1, %2}" - : "+a" (_Comparand), "+m" (*_Destination) - : "r" (_Exchange) : "memory"); - return _Comparand; -} -static __inline__ long __DEFAULT_FN_ATTRS -_InterlockedCompareExchange_HLERelease(long volatile *_Destination, - long _Exchange, long _Comparand) { - __asm__ __volatile__(".byte 0xf3 ; lock ; cmpxchg {%2, %1|%1, %2}" - : "+a" (_Comparand), "+m" (*_Destination) - : "r" (_Exchange) : "memory"); - return _Comparand; -} -#endif -#if defined(__x86_64__) -static __inline__ __int64 __DEFAULT_FN_ATTRS -_InterlockedCompareExchange64_HLEAcquire(__int64 volatile *_Destination, - __int64 _Exchange, __int64 _Comparand) { - __asm__ __volatile__(".byte 0xf2 ; lock ; cmpxchg {%2, %1|%1, %2}" - : "+a" (_Comparand), "+m" (*_Destination) - : "r" (_Exchange) : "memory"); - return _Comparand; -} -static __inline__ __int64 __DEFAULT_FN_ATTRS -_InterlockedCompareExchange64_HLERelease(__int64 volatile *_Destination, - __int64 _Exchange, __int64 _Comparand) { - __asm__ __volatile__(".byte 0xf3 ; lock ; cmpxchg {%2, %1|%1, %2}" - : "+a" (_Comparand), "+m" (*_Destination) - : "r" (_Exchange) : "memory"); - return _Comparand; -} -#endif -#ifdef __cplusplus -} -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif /* defined(_MSC_VER) && __has_extension(gnu_asm) */ - -#endif /* __IMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@immintrin.h.blob deleted file mode 100644 index ec7973e36b5af49d43042bc79d4b254819966470..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21124 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h deleted file mode 100644 index 1c894c4a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h +++ /dev/null @@ -1,97 +0,0 @@ -/*===---- inttypes.h - Standard header for integer printf macros ----------===*\ - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * -\*===----------------------------------------------------------------------===*/ - -#ifndef __CLANG_INTTYPES_H -// AIX system headers need inttypes.h to be re-enterable while _STD_TYPES_T -// is defined until an inclusion of it without _STD_TYPES_T occurs, in which -// case the header guard macro is defined. -#if !defined(_AIX) || !defined(_STD_TYPES_T) -#define __CLANG_INTTYPES_H -#endif - -#if defined(_MSC_VER) && _MSC_VER < 1800 -#error MSVC does not have inttypes.h prior to Visual Studio 2013 -#endif - -#include_next <inttypes.h> - -#if defined(_MSC_VER) && _MSC_VER < 1900 -/* MSVC headers define int32_t as int, but PRIx32 as "lx" instead of "x". - * This triggers format warnings, so fix it up here. */ -#undef PRId32 -#undef PRIdLEAST32 -#undef PRIdFAST32 -#undef PRIi32 -#undef PRIiLEAST32 -#undef PRIiFAST32 -#undef PRIo32 -#undef PRIoLEAST32 -#undef PRIoFAST32 -#undef PRIu32 -#undef PRIuLEAST32 -#undef PRIuFAST32 -#undef PRIx32 -#undef PRIxLEAST32 -#undef PRIxFAST32 -#undef PRIX32 -#undef PRIXLEAST32 -#undef PRIXFAST32 - -#undef SCNd32 -#undef SCNdLEAST32 -#undef SCNdFAST32 -#undef SCNi32 -#undef SCNiLEAST32 -#undef SCNiFAST32 -#undef SCNo32 -#undef SCNoLEAST32 -#undef SCNoFAST32 -#undef SCNu32 -#undef SCNuLEAST32 -#undef SCNuFAST32 -#undef SCNx32 -#undef SCNxLEAST32 -#undef SCNxFAST32 - -#define PRId32 "d" -#define PRIdLEAST32 "d" -#define PRIdFAST32 "d" -#define PRIi32 "i" -#define PRIiLEAST32 "i" -#define PRIiFAST32 "i" -#define PRIo32 "o" -#define PRIoLEAST32 "o" -#define PRIoFAST32 "o" -#define PRIu32 "u" -#define PRIuLEAST32 "u" -#define PRIuFAST32 "u" -#define PRIx32 "x" -#define PRIxLEAST32 "x" -#define PRIxFAST32 "x" -#define PRIX32 "X" -#define PRIXLEAST32 "X" -#define PRIXFAST32 "X" - -#define SCNd32 "d" -#define SCNdLEAST32 "d" -#define SCNdFAST32 "d" -#define SCNi32 "i" -#define SCNiLEAST32 "i" -#define SCNiFAST32 "i" -#define SCNo32 "o" -#define SCNoLEAST32 "o" -#define SCNoFAST32 "o" -#define SCNu32 "u" -#define SCNuLEAST32 "u" -#define SCNuFAST32 "u" -#define SCNx32 "x" -#define SCNxLEAST32 "x" -#define SCNxFAST32 "x" -#endif - -#endif /* __CLANG_INTTYPES_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@inttypes.h.blob deleted file mode 100644 index 607ca0d26babc7a9bca74986f3d8150f8555f728..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12230 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 N_g=8i#q%?u{y(K*=Pm#M diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h deleted file mode 100644 index 48dae0a8..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h +++ /dev/null @@ -1,23 +0,0 @@ -/*===------------- invpcidintrin.h - INVPCID intrinsic ---------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <invpcidintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __INVPCIDINTRIN_H -#define __INVPCIDINTRIN_H - -static __inline__ void - __attribute__((__always_inline__, __nodebug__, __target__("invpcid"))) -_invpcid(unsigned int __type, void *__descriptor) { - __builtin_ia32_invpcid(__type, __descriptor); -} - -#endif /* __INVPCIDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@invpcidintrin.h.blob deleted file mode 100644 index 8e88b84aba57741733b81a951cc7654d4232e898..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12460 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h deleted file mode 100644 index 1994ac42..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h +++ /dev/null @@ -1,530 +0,0 @@ -/*===----------------- keylockerintrin.h - KL Intrinsics -------------------=== - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <keylockerintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef _KEYLOCKERINTRIN_H -#define _KEYLOCKERINTRIN_H - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__KL__) - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("kl"),\ - __min_vector_width__(128))) - -/// Load internal wrapping key from __intkey, __enkey_lo and __enkey_hi. __ctl -/// will assigned to EAX, whch specifies the KeySource and whether backing up -/// the key is permitted. The 256-bit encryption key is loaded from the two -/// explicit operands (__enkey_lo and __enkey_hi). The 128-bit integrity key is -/// loaded from the implicit operand XMM0 which assigned by __intkey. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> LOADIWKEY </c> instructions. -/// -/// \code{.operation} -/// IF CPL > 0 // LOADKWKEY only allowed at ring 0 (supervisor mode) -/// GP (0) -/// FI -/// IF “LOADIWKEY exiting” VM execution control set -/// VMexit -/// FI -/// IF __ctl[4:1] > 1 // Reserved KeySource encoding used -/// GP (0) -/// FI -/// IF __ctl[31:5] != 0 // Reserved bit in __ctl is set -/// GP (0) -/// FI -/// IF __ctl[0] AND (CPUID.19H.ECX[0] == 0) // NoBackup is not supported on this part -/// GP (0) -/// FI -/// IF (__ctl[4:1] == 1) AND (CPUID.19H.ECX[1] == 0) // KeySource of 1 is not supported on this part -/// GP (0) -/// FI -/// IF (__ctl[4:1] == 0) // KeySource of 0. -/// IWKey.Encryption Key[127:0] := __enkey_hi[127:0]: -/// IWKey.Encryption Key[255:128] := __enkey_lo[127:0] -/// IWKey.IntegrityKey[127:0] := __intkey[127:0] -/// IWKey.NoBackup := __ctl[0] -/// IWKey.KeySource := __ctl[4:1] -/// ZF := 0 -/// ELSE // KeySource of 1. See RDSEED definition for details of randomness -/// IF HW_NRND_GEN.ready == 1 // Full-entropy random data from RDSEED was received -/// IWKey.Encryption Key[127:0] := __enkey_hi[127:0] XOR HW_NRND_GEN.data[127:0] -/// IWKey.Encryption Key[255:128] := __enkey_lo[127:0] XOR HW_NRND_GEN.data[255:128] -/// IWKey.Encryption Key[255:0] := __enkey_hi[127:0]:__enkey_lo[127:0] XOR HW_NRND_GEN.data[255:0] -/// IWKey.IntegrityKey[127:0] := __intkey[127:0] XOR HW_NRND_GEN.data[383:256] -/// IWKey.NoBackup := __ctl[0] -/// IWKey.KeySource := __ctl[4:1] -/// ZF := 0 -/// ELSE // Random data was not returned from RDSEED. IWKey was not loaded -/// ZF := 1 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS -_mm_loadiwkey (unsigned int __ctl, __m128i __intkey, - __m128i __enkey_lo, __m128i __enkey_hi) { - __builtin_ia32_loadiwkey (__intkey, __enkey_lo, __enkey_hi, __ctl); -} - -/// Wrap a 128-bit AES key from __key into a key handle and output in -/// ((__m128i*)__h) to ((__m128i*)__h) + 2 and a 32-bit value as return. -/// The explicit source operand __htype specifies handle restrictions. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> ENCODEKEY128 </c> instructions. -/// -/// \code{.operation} -/// InputKey[127:0] := __key[127:0] -/// KeyMetadata[2:0] := __htype[2:0] -/// KeyMetadata[23:3] := 0 // Reserved for future usage -/// KeyMetadata[27:24] := 0 // KeyType is AES-128 (value of 0) -/// KeyMetadata[127:28] := 0 // Reserved for future usage -/// Handle[383:0] := WrapKey128(InputKey[127:0], KeyMetadata[127:0], -/// IWKey.Integrity Key[127:0], IWKey.Encryption Key[255:0]) -/// dst[0] := IWKey.NoBackup -/// dst[4:1] := IWKey.KeySource[3:0] -/// dst[31:5] := 0 -/// MEM[__h+127:__h] := Handle[127:0] // AAD -/// MEM[__h+255:__h+128] := Handle[255:128] // Integrity Tag -/// MEM[__h+383:__h+256] := Handle[383:256] // CipherText -/// OF := 0 -/// SF := 0 -/// ZF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_mm_encodekey128_u32(unsigned int __htype, __m128i __key, void *__h) { - return __builtin_ia32_encodekey128_u32(__htype, (__v2di)__key, __h); -} - -/// Wrap a 256-bit AES key from __key_hi:__key_lo into a key handle, then -/// output handle in ((__m128i*)__h) to ((__m128i*)__h) + 3 and -/// a 32-bit value as return. -/// The explicit source operand __htype specifies handle restrictions. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> ENCODEKEY256 </c> instructions. -/// -/// \code{.operation} -/// InputKey[127:0] := __key_lo[127:0] -/// InputKey[255:128] := __key_hi[255:128] -/// KeyMetadata[2:0] := __htype[2:0] -/// KeyMetadata[23:3] := 0 // Reserved for future usage -/// KeyMetadata[27:24] := 1 // KeyType is AES-256 (value of 1) -/// KeyMetadata[127:28] := 0 // Reserved for future usage -/// Handle[511:0] := WrapKey256(InputKey[255:0], KeyMetadata[127:0], -/// IWKey.Integrity Key[127:0], IWKey.Encryption Key[255:0]) -/// dst[0] := IWKey.NoBackup -/// dst[4:1] := IWKey.KeySource[3:0] -/// dst[31:5] := 0 -/// MEM[__h+127:__h] := Handle[127:0] // AAD -/// MEM[__h+255:__h+128] := Handle[255:128] // Tag -/// MEM[__h+383:__h+256] := Handle[383:256] // CipherText[127:0] -/// MEM[__h+511:__h+384] := Handle[511:384] // CipherText[255:128] -/// OF := 0 -/// SF := 0 -/// ZF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_mm_encodekey256_u32(unsigned int __htype, __m128i __key_lo, __m128i __key_hi, - void *__h) { - return __builtin_ia32_encodekey256_u32(__htype, (__v2di)__key_lo, - (__v2di)__key_hi, __h); -} - -/// The AESENC128KL performs 10 rounds of AES to encrypt the __idata using -/// the 128-bit key in the handle from the __h. It stores the result in the -/// __odata. And return the affected ZF flag status. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> AESENC128KL </c> instructions. -/// -/// \code{.operation} -/// Handle[383:0] := MEM[__h+383:__h] // Load is not guaranteed to be atomic. -/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) || -/// (Handle[127:0] AND (CPL > 0)) || -/// Handle[383:256] || -/// HandleKeyType (Handle[383:0]) != HANDLE_KEY_TYPE_AES128 ) -/// IF (IllegalHandle) -/// ZF := 1 -/// ELSE -/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate384 (Handle[383:0], IWKey) -/// IF (Authentic == 0) -/// ZF := 1 -/// ELSE -/// MEM[__odata+127:__odata] := AES128Encrypt (__idata[127:0], UnwrappedKey) -/// ZF := 0 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_mm_aesenc128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) { - return __builtin_ia32_aesenc128kl_u8((__v2di *)__odata, (__v2di)__idata, __h); -} - -/// The AESENC256KL performs 14 rounds of AES to encrypt the __idata using -/// the 256-bit key in the handle from the __h. It stores the result in the -/// __odata. And return the affected ZF flag status. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> AESENC256KL </c> instructions. -/// -/// \code{.operation} -/// Handle[511:0] := MEM[__h+511:__h] // Load is not guaranteed to be atomic. -/// IllegalHandle := ( HandleReservedBitSet (Handle[511:0]) || -/// (Handle[127:0] AND (CPL > 0)) || -/// Handle[255:128] || -/// HandleKeyType (Handle[511:0]) != HANDLE_KEY_TYPE_AES256 ) -/// IF (IllegalHandle) -/// ZF := 1 -/// MEM[__odata+127:__odata] := 0 -/// ELSE -/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate512 (Handle[511:0], IWKey) -/// IF (Authentic == 0) -/// ZF := 1 -/// MEM[__odata+127:__odata] := 0 -/// ELSE -/// MEM[__odata+127:__odata] := AES256Encrypt (__idata[127:0], UnwrappedKey) -/// ZF := 0 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_mm_aesenc256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) { - return __builtin_ia32_aesenc256kl_u8((__v2di *)__odata, (__v2di)__idata, __h); -} - -/// The AESDEC128KL performs 10 rounds of AES to decrypt the __idata using -/// the 128-bit key in the handle from the __h. It stores the result in the -/// __odata. And return the affected ZF flag status. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> AESDEC128KL </c> instructions. -/// -/// \code{.operation} -/// Handle[383:0] := MEM[__h+383:__h] // Load is not guaranteed to be atomic. -/// IllegalHandle := (HandleReservedBitSet (Handle[383:0]) || -/// (Handle[127:0] AND (CPL > 0)) || -/// Handle[383:256] || -/// HandleKeyType (Handle[383:0]) != HANDLE_KEY_TYPE_AES128) -/// IF (IllegalHandle) -/// ZF := 1 -/// MEM[__odata+127:__odata] := 0 -/// ELSE -/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate384 (Handle[383:0], IWKey) -/// IF (Authentic == 0) -/// ZF := 1 -/// MEM[__odata+127:__odata] := 0 -/// ELSE -/// MEM[__odata+127:__odata] := AES128Decrypt (__idata[127:0], UnwrappedKey) -/// ZF := 0 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_mm_aesdec128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) { - return __builtin_ia32_aesdec128kl_u8((__v2di *)__odata, (__v2di)__idata, __h); -} - -/// The AESDEC256KL performs 10 rounds of AES to decrypt the __idata using -/// the 256-bit key in the handle from the __h. It stores the result in the -/// __odata. And return the affected ZF flag status. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> AESDEC256KL </c> instructions. -/// -/// \code{.operation} -/// Handle[511:0] := MEM[__h+511:__h] -/// IllegalHandle := (HandleReservedBitSet (Handle[511:0]) || -/// (Handle[127:0] AND (CPL > 0)) || -/// Handle[383:256] || -/// HandleKeyType (Handle[511:0]) != HANDLE_KEY_TYPE_AES256) -/// IF (IllegalHandle) -/// ZF := 1 -/// MEM[__odata+127:__odata] := 0 -/// ELSE -/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate512 (Handle[511:0], IWKey) -/// IF (Authentic == 0) -/// ZF := 1 -/// MEM[__odata+127:__odata] := 0 -/// ELSE -/// MEM[__odata+127:__odata] := AES256Decrypt (__idata[127:0], UnwrappedKey) -/// ZF := 0 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_mm_aesdec256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) { - return __builtin_ia32_aesdec256kl_u8((__v2di *)__odata, (__v2di)__idata, __h); -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ - || defined(__KL__) */ - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__WIDEKL__) - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("kl,widekl"),\ - __min_vector_width__(128))) - -/// Encrypt __idata[0] to __idata[7] using 128-bit AES key indicated by handle -/// at __h and store each resultant block back from __odata to __odata+7. And -/// return the affected ZF flag status. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> AESENCWIDE128KL </c> instructions. -/// -/// \code{.operation} -/// Handle := MEM[__h+383:__h] -/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) || -/// (Handle[127:0] AND (CPL > 0)) || -/// Handle[255:128] || -/// HandleKeyType (Handle[383:0]) != HANDLE_KEY_TYPE_AES128 ) -/// IF (IllegalHandle) -/// ZF := 1 -/// FOR i := 0 to 7 -/// __odata[i] := 0 -/// ENDFOR -/// ELSE -/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate384 (Handle[383:0], IWKey) -/// IF Authentic == 0 -/// ZF := 1 -/// FOR i := 0 to 7 -/// __odata[i] := 0 -/// ENDFOR -/// ELSE -/// FOR i := 0 to 7 -/// __odata[i] := AES128Encrypt (__idata[i], UnwrappedKey) -/// ENDFOR -/// ZF := 0 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_mm_aesencwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) { - return __builtin_ia32_aesencwide128kl_u8((__v2di *)__odata, - (const __v2di *)__idata, __h); -} - -/// Encrypt __idata[0] to __idata[7] using 256-bit AES key indicated by handle -/// at __h and store each resultant block back from __odata to __odata+7. And -/// return the affected ZF flag status. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> AESENCWIDE256KL </c> instructions. -/// -/// \code{.operation} -/// Handle[511:0] := MEM[__h+511:__h] -/// IllegalHandle := ( HandleReservedBitSet (Handle[511:0]) || -/// (Handle[127:0] AND (CPL > 0)) || -/// Handle[255:128] || -/// HandleKeyType (Handle[511:0]) != HANDLE_KEY_TYPE_AES512 ) -/// IF (IllegalHandle) -/// ZF := 1 -/// FOR i := 0 to 7 -/// __odata[i] := 0 -/// ENDFOR -/// ELSE -/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate512 (Handle[511:0], IWKey) -/// IF Authentic == 0 -/// ZF := 1 -/// FOR i := 0 to 7 -/// __odata[i] := 0 -/// ENDFOR -/// ELSE -/// FOR i := 0 to 7 -/// __odata[i] := AES256Encrypt (__idata[i], UnwrappedKey) -/// ENDFOR -/// ZF := 0 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_mm_aesencwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) { - return __builtin_ia32_aesencwide256kl_u8((__v2di *)__odata, - (const __v2di *)__idata, __h); -} - -/// Decrypt __idata[0] to __idata[7] using 128-bit AES key indicated by handle -/// at __h and store each resultant block back from __odata to __odata+7. And -/// return the affected ZF flag status. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> AESDECWIDE128KL </c> instructions. -/// -/// \code{.operation} -/// Handle[383:0] := MEM[__h+383:__h] -/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) || -/// (Handle[127:0] AND (CPL > 0)) || -/// Handle[255:128] || -/// HandleKeyType (Handle) != HANDLE_KEY_TYPE_AES128 ) -/// IF (IllegalHandle) -/// ZF := 1 -/// FOR i := 0 to 7 -/// __odata[i] := 0 -/// ENDFOR -/// ELSE -/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate384 (Handle[383:0], IWKey) -/// IF Authentic == 0 -/// ZF := 1 -/// FOR i := 0 to 7 -/// __odata[i] := 0 -/// ENDFOR -/// ELSE -/// FOR i := 0 to 7 -/// __odata[i] := AES128Decrypt (__idata[i], UnwrappedKey) -/// ENDFOR -/// ZF := 0 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_mm_aesdecwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) { - return __builtin_ia32_aesdecwide128kl_u8((__v2di *)__odata, - (const __v2di *)__idata, __h); -} - -/// Decrypt __idata[0] to __idata[7] using 256-bit AES key indicated by handle -/// at __h and store each resultant block back from __odata to __odata+7. And -/// return the affected ZF flag status. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> AESDECWIDE256KL </c> instructions. -/// -/// \code{.operation} -/// Handle[511:0] := MEM[__h+511:__h] -/// IllegalHandle = ( HandleReservedBitSet (Handle[511:0]) || -/// (Handle[127:0] AND (CPL > 0)) || -/// Handle[255:128] || -/// HandleKeyType (Handle) != HANDLE_KEY_TYPE_AES512 ) -/// If (IllegalHandle) -/// ZF := 1 -/// FOR i := 0 to 7 -/// __odata[i] := 0 -/// ENDFOR -/// ELSE -/// (UnwrappedKey, Authentic) := UnwrapKeyAndAuthenticate512 (Handle[511:0], IWKey) -/// IF Authentic == 0 -/// ZF := 1 -/// FOR i := 0 to 7 -/// __odata[i] := 0 -/// ENDFOR -/// ELSE -/// FOR i := 0 to 7 -/// __odata[i] := AES256Decrypt (__idata[i], UnwrappedKey) -/// ENDFOR -/// ZF := 0 -/// FI -/// FI -/// dst := ZF -/// OF := 0 -/// SF := 0 -/// AF := 0 -/// PF := 0 -/// CF := 0 -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_mm_aesdecwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) { - return __builtin_ia32_aesdecwide256kl_u8((__v2di *)__odata, - (const __v2di *)__idata, __h); -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ - || defined(__WIDEKL__) */ - -#endif /* _KEYLOCKERINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@keylockerintrin.h.blob deleted file mode 100644 index efca78bb2d7e230483d302702398befa1100750c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29407 zcmeHQ3y>T~dEPzC4=#dIh$BFj?TIj|JL&dbdL2Smbh?Lp*6D#H%X)e=J3G5O((KN9 zXLj#SmMr@uj8I65IACKi0bInAb+$u65fYL>K|)fHSfUD3<+CXh3`u~pT?ts17!aH9 z@1CCB+3lTOS;7y9%6m6A)BX4V>i^aMtQSRo^-XifzeJ*uuC$#ox~#52!#UvExh~gm z+^&R?=yLLUS4K0loqFUl-O{qDriRAG?EC>Un~EjOyrH{xe&WWuD@4wBM7s)3zRS$& zRv}?@Z5<r#?TQ;IGpp)$!stv#ezj0J{>{J`-JQs>CojF&7km;oU8jqlI$f%oi94?5 z8mdb`{GpZ^?_#uc^(^;S)iUE|*3E-b3?;4v)?+x~hngyw2`NVFM!Qm0fga6y^0VKl zGZ|bh<mD744UL{T0Zau;GMbwXJdl%69ADPco6Pkr521wdhs2T%GDR%Kp2sJk0ApIN z@tTgCh}*VB18bPZK;>-59Pd>vGZO$7SWa{8jH#<*X2O8T3t895`-8(2Gih3e8qeEf z4xi9{I$lR?daht*lQu#1bt#00z+AJSfQ|LRDddxyUKVK>x@p5Q#|eeUKX+RYPlpyt z`83mRkYblgX3Y?+7{j^lJ7%h=SyhT3U^*Y?ni(TsF)R#!qi8Zg&;IhJAo~99aP5N5 z6xC;PV98`IX4$EDV>&ga$;Egkj9O>H>CzKMQody>dEw>@x~mS4j1C2s7P$H7GecLY zB4R`ZFx|Efn1*WFYO;{kUDM7w73{0DW6UDZg1h1aAvP+B9a05BD*Lfarjh6&bjLm5 z9F$U7$eP%!(nl5K$t|Yf0~W|?Ob2{pDjqQyj-ECeE-?l&njtu6=k%-_LbES77_$Vo z08H;fbvUExOktj0ydkK>v=gM<@t46WrpEk(uijEgsVW!^#Z)uexT;y;87Eh6Ace0Y z;ThG832--Mz%{$DklckZ5rom|6p5Y}2l|7A`t$%xz^5@jJz_oDTMV%PN2Jsy#~m22 z8cQi1>+S1YFD4jy2cf|Q&a|5GZY0U&O9Pk-x_sJo%gn`XEiZTGOqt;^+-wX!2}<Zr z1i(p&%jJ`LT4u1Mqdit+YYcjrM3Z^LP*c`Kjv3iSN;)W6z6Z$&X!?Q12zw}4@nqwO z0oq9pG^WGexj~B?Mjk9U$r=hm==d8TWQv*0XhlmhM~ILSS>B3rLnJnpW$PMZgkY#6 zT^%d>3h(0?SQFkWsX0MVfdL456OMUMZbfLbvG}6~VP7W?7!!ejH%t>;Xo6$9UZnK% zlFl_jN?I<|bNI_=Oh;}E{1H4(BT3d6j8wMJh2S>s#Omxk&B=5b`Fxh~pzY@$42H;D za}9TYriqwSSP|wQ61O+j7GJPF@1=Yy=5#Alux?M>E>S<}j4{o0a|dLBqI9?;6@+vs zXp|rkP&XD?tMCYcoi2uG4uazHqcB~vjB)Ng=RI!(4GM%7OBq=sZ|YolvAE_i{jQOq zuOxQP$fj6~P@^OjTQ_SsK`SEgCdF2{W_M{hlW05i!0cfB#2i<dwz}bRd7QtarOY08 zw4$Lm;<vCV6tFE{+Kf$s5R2Tv_ep?DQPGWRml!6wwC1EUJWX4k*cf60pbI7<k%NW= z55aj~g0Mriu2G7u@F3D1BjEDA&13NV7%XzoHHl&V@|4vf{%{SJG0K$)*yypep&{&x z!P`|RdSwLe>08mv+u01<xLo7dC?tq6gkRFF#0Gf57u$5wQ9ub>Mf!*V$hqk}5N28w z)ABq|@(ofA7vdItT&7<AgW|ISe6eechu{pS%@>toB^XW*<y^*mjioq&`5~H+Y(~A1 z0{TmaDYxY?U+`CR!+cxbt<H+VK$a5)t5+5~`3|Z^E~sCiuoU2f5E+v$Hx9_-Dbu7- zz9s|<40j9*!Eb$VRPaIMVg*-}avnxb%QKGpMlP@v`KY9&rGlUWLxg1m-VKTd1dK{* zg&;I3Vp^i13kz^fRpI^Bcp<5}TDcYyCQgh^a?iDI)7qftV#=*swnG)Asv@EkTd8Xn zTmp~vST1iMsSC(V3JKA)%$G>Vs;ZyXt33K3_;NueEjMOBKCz79rfqqejlj7u-YCxU zxNfFYukaRBL@A<U@vLoTi%1x2f_cFtVNcYu&GF5O6edcpb<#Qca9$MRWr0wS!?{r2 zvNgd<ZJk28VqOEy)&96{v>}|K=klA%d7M<kJ>vNd)D)1^sjzmj#6(s@y)>YSLI^dk z#vc{7kt~gd)vpv#5uZjhkS7z6R5DWbvam~{P}0Fh_I5oJrhb)_mzmWR`Hq>%Axq@m zfg6;&I(CPIQ)Shvw^eNowFBMGWbCkzfNJACb!+1_(KiuOqs!%ON2T0=lmbdYRgs$P zRLW{9d_a3^HoA0hCWA7Ug{Y2JmUDyK8yI8gZ_v~P5oCup(u`e<<8|_&?-9=`+_2h2 zt+$B!6N<M1en|-&r?apsZiMZn4KY^Z|K=Z79U(FN5V9q)dF3SnHi93`sG)IP<5Fc2 zWvlXOM;N*jnv*qiIUf4{`9rq^-6%r|VS!OZ_*`B52?NWdP0andG|&n-ev|0QJ2@k0 z(xlShMwW_1RU)ZtmR)DuO1N|!S)<TGb^I-~-$veH@&qN^*16JnL5gz5hTCj<KQW_- zq`nz+wSreu3ddEql2*Y<hXWnc(^~n|tul-9xsx^%UPjK=3lqPQFmdWj@_%+X8DdDe zICEinL!(lk<EXXatyB<|!Is8PT782hoiN_FJe6x&a>D=X4ZV~ffYmSf`%LHdFkq%? z)HY{nZqm-n^JO2>?FBRF#04C&$+Lw_{lwG@LkN+Y<Vc)d$3iOa{vtS)tY_SOR2?Jh zaP{#uJAiD3M==wPeF_X16|buX%0({S*J5!W!E$v?jvzm5t07dnB-a}hXlf0VbbJxI z+w53VN{$pPGdwcDHN=w>Gs`)ArLAC64j6Y9YO6UduLT<bq&PTfnOPSIa229MD>udt zX9CJ71;}|Dx+4LNAshfEmh{Wo(x(g|KUGIP%F3Z0<(~@&=19@gt%Q-W-KMH?maQe6 zvQMw%y04ZwbKKxHgBrE;$D|N`P~|9ZTUJ%PD8&&h?3JjS;E)d&wUe+d+k}6~*<)1* ziA99*kX5|uA&pj;qD3tPGVG<3kmY*`zV8;Q5g-%k6~qJ54UXd~3Z{j`{-icBRGmFH z>DyE(W=RO2*=`>(=`e_@PVyPR4|6jy<UEO3!q6?$PjPG$phgP34krVU13TXhZg|;1 zFR-jK%wnXkS{b{*PaS-%mSPC<v!vPx?VAdpkPkUp%81)6U=N3l+DA?|Wu9G%N{-t| z$-a>e=Vq$OgDjl0u__}==$Z<e!~1A_Hm5a&o$@0<Zr51>I|d_-N?5GE(d2_!Hdlcv zDpvs|6H+dZ#_>c@55*AHNn?!B^z94&^PgCAT?ilJ)L{a5O5^<vBVhT|=Ev+DTh14} z7}BUaj%zuwzmDQEk}RA0AMFAP`2o76h~wbcK+If=wsf@7yjRb;V|i2RV5E?(gH5*F zWC}QXAi8R}=QEh)jB*b9V;o(}*3@T(9O#gvQK6iU`0TnBl=3>zZ6<~qbeXJ}eGM9G zDSPxxPS?k^MAMS;Ha0e(baP7=5yqex-X<fs<kN_<FyCT~#<1+HT$kE^-0PSO#RNPG zZ--<BAXY>4{g^<H@z*m0zS8)kLYA%5l~QlUg_H#JyuPIAs6bw72$JVD$JCta)kBuW zCQ>scosm1>mE^)LTF9Yk{evxEebTT#^4;p0Gn_}&-Dqrx@cvY%4%YdkRKc4d|83Uh z>DE}hYHXN_yJ>@0+3s8C)gOe!U@?GBz$A-D6;#x17WMR*V8r~ejPyAYeOu%mvwx>_ z_=VeMM!q&MMaN{Ou9#VzMi@#VizGB_Bor#MC@QL^$l?%wQO|QvZ{Gn+E%ddaVI9|| zqN;X6bG6-ldpi^a5{`>I;t6UnfhR@VOel*~HQgTR>+6V~pN>ZG>1c_be+pOMjkZJv z4Lv`RBN%*c_g=-d{l8Z1RSL-ZQVLd%fjFgqXsdz_03e<)bu`Z>l=y^_*0Kr9Xw?Wx zTEQQRgTU2L3{6ifkYmAewXCbesm80sp#VxUZ)Y%=5yIDFmy1_)D*f3+Yu-S&dscy% z6b*-XI<2#7SfNS|K(hnJ*491zgr6D$lvOCk2>GvWZQYhO9iT{V-T{}<6A3JGb~fSA zVgz=TzM5zm92&TFWN--7tshlZb>SvvumFl$cRR5N`JX#F(YBI@!0hbd)|(iyyO;DW zSqWaPyiwUOv|%^sUQBoJdvEIqQm2$=@qsj=P2tyDpwjuGkyvZGTMbuf3xH}@4jpP$ zYX6B*J-sVv!TybdO54EZQDwE#-Cl2w2e^0HvXvlhZym^d)OurL8=^6RO}p|3H!3$_ zmC+$}{m@Qz+s@5HDmVo=N_*?bu+kPFuN^2uG9a=CSHqjOC?@^UO?+O#$PwylGG=w- z-q6ND3~U`5-8zK7+HT2?<u%lp6TqZH=`TP$I9Ai!2@ZdT2ha-t3Dj;$-%^3FCy5Sa z<W`I$e1N1sR=E+#Fg(gw%JEc$KJG4K>f?$Fj%{;uIlsi#!p`M;%fybYq?VAaSVC}; z@Esm$#eWHGZg64OaO)<<<L=h2-tT_z_h#?+fcJY33ZkU4k;rAG?|$K>_uo7FBil>A z*tzMzXIA~&drHcoYuaa>UbZJPI~u{i(z~DAx#Z2~K8l>7S!>k0Z26_LMpw2(&R^L= z*60dcwYD^Ejex~(ur&g87ix``_4HI(Bf2B8Mh%S-hg8R~yaHR)lqtF(ON8)<EK&0H zVTlME!4}TD*PA7RI=$AGDEZm9=l=FnUwpFk@qg@}Kj-paK404S<8O4V``XIC5tc|B zpS$C^AI!V22}@*TFMV8e7}3yS78f1D)m?~-hO)oSanaDmR~Q$OyZX%vh`jjX|Kp-d z78i-F^;*S6-=182#V+MtA1Qs{)9<=wboO6&mrgBjIrXI{KJjB=jefd*{O%=dXYOdi z8X-$VXdH}*kZ`edrUM~mATtvQTOcjFA$op3jL!V%4G4s;!PRvzKiiO_@ce}5CdfbN z4A)V5x|KX$f<-1{Cs{UzKpQx)9F7tjFV^H~TPxiG02VAAU}+o6e$p(5;aM1;l<rhU zT%NWeN5U+gwjmv&zgj(lSaya-uU>Y>slP;-nbOszjN+h7L3Wt6T_sh(!6Uk)kzIm| zaU`4URpU-c2FD|mSCGJo*r56J&5M{QorLR_CvVb#sj;PMn80z<&2w?W*ps`Ly8Svc zwzgo(##5upoGl!+iUcieV4cK_3rCimaSSe1Mt1M_-|@pQY}JmII`8cH%YT19y{7c^ z)~mm;`tp`93(K?Vhg<)3SNG-1ny@@x90VN+S|5>czmodU6wJ>Qi-S(%>hb2|AYk#E zn2~vL5UBgLWn>7L8q|kEQ!+pKXx_jmUO8&_E2$6d7TCzkL|$_CIw=#qA(FG#Ivkq0 ze9yP8SBu9=@0)yE-_EJb*3$c5_{bj}wQhY%7^VL>KC7>DNdM>Nj8ct3y3lawT;v== zp_d~6<A*`mhI|W_!=R<LVGs;rNEjq6)Eh4h@~OX|Fo^Hd%6yFOP)X<_!l3X%wlEE^ zi$Zn-Lj`qcT+a>*CAu%FfZfP4y=vhQ_)uejUafFQyW`1UbQgd2`=yW0|G~_cHl4n{ z^cRcg?s@A^zOqzUp5>d5Jn;3Cd!J~+@*oKUEx}OeLM_kv0Yp6mED>9atD!(52IvR^ z$`<H?6EOgI<0fL9`b%ViE;PXkH7pmNVTt%BG{y1;;Y_LWc&xEic@1-{*OO7HDLKDd zM&+|Bj?c?{^@V3kKmGjY_8;B#cd^pkKmBBM#pmDm3t?2AJ@oPKe(3%m{c#gU1tG;n zS9i`t&LEt5BJ!=uaHff>PIx%;#;xigoO!)eb;83Le#BqrDC}bLu5i0k$M6Vj<arl3 z+9;fP4XZc);dxj<#cMOKSupaRwH;6Pb<Y|ujehkjpL_8;FW+DK`d1&=weaD4<HBxy z=g2#U|NHNse6Eh&K)(rV-NC-a0X)(SxJ<RMq_@rQ?qMU;G<8B%mWDA@we0FUX|qGA zs1q+=-WEL>IoZ|{eK<1J61f#E6N;vYkOI78Z8=_F4M9ws2=+N>YK5^e8h?4cIvrHi z&9>SFH&<}IdsORf6J17&+L0-=Q(3h7)?#G|wfMAZ%936d&Y*R-fYPbs)rC9JeS_AY z@tkGqXc%(rLS8o%)<A>CAV4MZ6?&h~Oqzxx7Dv4q?K=D`^QiCUVw-zlWi|~Cp@Ri1 zYO=FuBnxJ&Hzsy_r4&?V1P8rat^N?dbm9+6n|?i|6+kwi-;y<B^?C>M9_72~@8EzX zE0^#BD<x*4#H^s)uOtift)HmnqY*tgXT{3irEF3UO~QICNI_j2nh+zB+qhV8NYK+B zm`cP^PY@9A4qwnKM3)muQaUUJ@NEG`bfd4Ol4Q@-v+kBaLlbM!=^R1HJ%zsG37X__ z);l!s^tL}bt=L0ibNAkMYJ}O%yRA5gjrLl!kri_6!P1pIj2!+5Ft;+D+f5BxY`~J9 zmCHE6t=s^m7ZZvs7gmT79;Ke#!O;HxL4PRWfT5Vex#kV_H2}l6X(@j=*=ZUMF0nPe z;l9ns@BuTIHuBr>qMOhwftHt|qnC_Jw?YK$R&cUFp{6@XRIM9#3C${9_2b1Sj8D(p zTKdq<b3gc*4cD$LJybd|eQed+9xdJf!t71P)h|6S4B(=@&O5L9)~OFSYXHHqW({DC zt(%NY!q(j#Ip*6sKns+Z%eJo8zOg1m&$^k})@mCjHEX>JoApMqYvl2pOUL}Z>gl&I zSwi_Lx9+dmS}}`*^(w6u5mL5R-4|)Cc$h?++Ot*wU$$1BWqQL}s~TISkO{v)YgM+t zuh?!~gvGh6^x&Tj-GA+>-(6nnd*1^?3%~d5w@a~|FJFJ=YVC)@&}^LC`Nf;F*MBN# zXjn8v&C&F-qd9iKn5Yh|bl0j3qY(CBP~{yXiyKwJ7QdG^+an7X&WoxMbzV#Kwn)4s z!jFpSyGZf1whC)frB-M_5dF*L1q5JbLR3}2>_h|sq*}*J%R-3cb$P@54E68mP{z{e zk1j_-bnL!fcrONMER8SoG4iZunwEycqd|lLTs=xr_}VG-Mt3R{a>3y+`{?D3<U+lH z#4nt2GlNO<-7&k>574~G%ux{f)uE!DFCYvssP_Cfhu>NapT01K1%D#y+p%FoH>fp1 zuFnMYjiXnAN$66<d!w8B2N3`a?QGU44l7<4HSHjpy`Igsv(|({Z>)@gW9Vo{3wa8G zQkzo%yNf1XJXh#@*XVqD-Daf?<_dkf=s14vt_RB~7~}ZXifrn+yFQ_8-+)-y&<oT& zPVM^iX03uZ8!&(S1{&whXL_=mg)*xZ7S#EXU|A<vYQYr2F%s1na0oosL6R5@?x=Sk z@jV+uy2CLDP{8MxTg-168SLzN_f4Hc13M`8qDJa=;+2TKL>C1(le6>Gq7MpP>b%GM z+(cghI<yNLffEQ&J?)~Cy>c1EasD!8swsxOsKq$m0f60|K#&KFRUv1klN8(7^OP&= z%@KhZxt;PZ68=>zG$Qs5F!7%8349k+5BK@ZfD-c%&I(v%V*ID1J9sW)KgzjDT;-9( z$4+IdVJKS$w+;;rqHhRatpQDi+$h^fAZ0Nv)>wqLn1r37ui>N>hn1UdRX1+gIH;~0 z+Sp0oQ#e6#Vp=*}u&fvw_VadbLgCXC%6quA@fI3m*`aQjc=-VU1rg12UfF>+3o4Od zsTCJheSo22k%JUd!h!NsL`WK$AIAi7zp$V}zEZqt5hhE)h~_jyj<HBADlo32IbyZ4 zMpWxgS$lXt4e8GorV3o9Bu8qT;vHbZrEnpmfs9_jP{bJS6c|?JHlB-rtzlN_2O~qv zUS4@TUK;DYKJ~M<7Z;Si@ekiyy+?iTy`=~HumAohwGW7d<+9Q}<3IhcmuElJK{W?x zJ2t20qRbG-`>Co*Spk2?9^c7$kZ$xUixj%FlWp{Zu0lWB@sC~bADGgcFe4xS@N9a6 zg8u!Ie*E6i<k9@B=p)HT@bmPx)B9#c&u%`u2S1BvCuc=xHqYRCrZ|J^^Vdc<<AcBP zvxpDf8^paqc5e{(2HCwkqdU&u8BO5nk!S*+9IhV4y+_%-$8hg4cJFE2dz#&Q2KSy} z_pWN$asH|nn){}f1U{JiIN@3O@3Jy0{g6y#gOSqz{%Ydh-a8iGeJNSTnjyivw+J+d zcXLAoSq>3vv(wswUF~^dZNpXV@jz`mXl+MC?W;63E$wsFVRhTA=)UXrb>QdlK3q?3 zpM(TXZa+ys51u?eD|%+(nWgx7^O+s9qURQ#!}YnF&*2)~p9}H9-}remK6GyY_XgO# z0o)s4_YOxp(Wt%(PY*}q_>fLa;ocOxH-&ps?A|o)O|yH`xHrx2UD?u!*KKI-l`V06 zFn6Kfkzemk!pQvjkQPnJ<8#;f7B+o5uJ7?x<UIBQDOwSqW3!_r!JBgTE9)r48;g-S zb3ACP0b$gGMrduRf_7EQekkxbpowl2j-g)?jlBKsSJ1Lk(TDIk#XwC(PtbLQBlKAG zICjXN0EFmlX+-2yG>`e5$f@XdTvrqM7<T7lQ6f?(Nqr)xqN@Rc6Uk*%P2{7|{n*V! zq)3Iz&<+?A;8rV0oJ>yUh&-rMF36>$?$J9jS?pd}p*b>d9&vnfaB>TSv1oG3<BUB= zw;bJvxnf@h7Dk4IwdY{o$>hl*&4UsbgKIzHK0<5|os8xA>|Hk@==srI(B?Fg4%h5- z5De_!F?{X?C{cGRg8~mw#}=rZIQcP#%E6N#3&J=ZKb^;X@pfAsMVW@8OnZtl4MoAV zrzp=rQJ!InA{<B=1rY)QiL1enecSi#CnT`J_Xm+cwU-1bTFL7maTrJ(_K-LXByjB^ zaRf*lVMquES0zqFfDk4rgxaUBB_!1A)U{lg+9B;8EG`^jHTq1P4E@f1Y$mMK+A8!% zHBtv*|Etz!MSD+`P7a=As&sPENl%p?+42a@6-KhWdiA!S#*Ucwb_BOj)jQ&8?1-n? zj+ph!J09<P@!%;{9UL0&zh!irI=oTs-?nYbR``q?-pOKDYIm=Gs_a3`p;r5O%^K4t z9ORqyzO|}SO(2UjE?!9SKkzN#_zrJ`01FOS3)(vfM%6!1h5zT67cbz&Y&VV3NQn_1 zKqTikN9W+P6fOL8wI#YEQi?{R3+61qtp#&#*zxAuI&a&uCVKbkyW?x353hb0Kc86h zL}E?!r8O_%CmR3P;6qnyakZ9Rt&6_p{JLl_?j6FtL+svZT%BfDPvPn*c6CL|8oWVC zb7!}_1s}{P?SHS;|NSS<j|fjozgw=`cilmZ8jbG52UjKGF@?xP!%XC@ZzZd7uJ7D1 zDH>eWa8O-l;xjpjToi7~R(bYpvdWWpP2NKjC*8?=xPBj<JbD}xL`k`N!l~t_R?&o0 zi%zZL6HXUTAHoC?<OvK#&A>AX>UK5Bw!*NQ3}UGDX*XfM=qQr!$8*QdonQo7=T7it zXYQMM5Yt59AeOCS3~X8-K8!i|O}@K|L9l6Ye27Uu(teVf`{g;^^gi|Irh)ZCTShi+ z!$-X-pvjV_(fM=cLx1QesT1DV6+urOyw3EUVK^bqsKV!L{4C)j4mZVo?{yK+T%Xx> zhM8&vC{<?q?6I?CqQ#rUjU4GT9O<;@NT=aQr)wPPGjOEOFh?qmS>+NsbL<S0&>8ED zC!w?Voh1p0_6|8E2$y!@!yOL~pQ<QAkbMjvqDr)%$w8glb&i2Sq*euD=GY8P7w<C4 z2|#S~5I(0!&G7pKU3(_~O)bX}F;RdbUIVBDVm?rv4{t#r=0`2M_CQ=4y$@PO{1Aby zAfj4h2cWS7p2qUXvPwh1j5t1|CE~@XMq)k;F(3BCd>CRrTqEWq5c3fxX3>RHhr|Jp wIN*^u01|QSkvIqv2N{VXQWqqa-*oWw7YMAzhlgA|RIYX~cf!HkNe<@!0C&?v2mk;8 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h deleted file mode 100644 index 32cc901b..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h +++ /dev/null @@ -1,123 +0,0 @@ -/*===---- limits.h - Standard header for integer sizes --------------------===*\ - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * -\*===----------------------------------------------------------------------===*/ - -#ifndef __CLANG_LIMITS_H -#define __CLANG_LIMITS_H - -/* The system's limits.h may, in turn, try to #include_next GCC's limits.h. - Avert this #include_next madness. */ -#if defined __GNUC__ && !defined _GCC_LIMITS_H_ -#define _GCC_LIMITS_H_ -#endif - -/* System headers include a number of constants from POSIX in <limits.h>. - Include it if we're hosted. */ -#if __STDC_HOSTED__ && __has_include_next(<limits.h>) -#include_next <limits.h> -#endif - -/* Many system headers try to "help us out" by defining these. No really, we - know how big each datatype is. */ -#undef SCHAR_MIN -#undef SCHAR_MAX -#undef UCHAR_MAX -#undef SHRT_MIN -#undef SHRT_MAX -#undef USHRT_MAX -#undef INT_MIN -#undef INT_MAX -#undef UINT_MAX -#undef LONG_MIN -#undef LONG_MAX -#undef ULONG_MAX - -#undef CHAR_BIT -#undef CHAR_MIN -#undef CHAR_MAX - -/* C90/99 5.2.4.2.1 */ -#define SCHAR_MAX __SCHAR_MAX__ -#define SHRT_MAX __SHRT_MAX__ -#define INT_MAX __INT_MAX__ -#define LONG_MAX __LONG_MAX__ - -#define SCHAR_MIN (-__SCHAR_MAX__-1) -#define SHRT_MIN (-__SHRT_MAX__ -1) -#define INT_MIN (-__INT_MAX__ -1) -#define LONG_MIN (-__LONG_MAX__ -1L) - -#define UCHAR_MAX (__SCHAR_MAX__*2 +1) -#define USHRT_MAX (__SHRT_MAX__ *2 +1) -#define UINT_MAX (__INT_MAX__ *2U +1U) -#define ULONG_MAX (__LONG_MAX__ *2UL+1UL) - -#ifndef MB_LEN_MAX -#define MB_LEN_MAX 1 -#endif - -#define CHAR_BIT __CHAR_BIT__ - -/* C2x 5.2.4.2.1 */ -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -#define BOOL_WIDTH __BOOL_WIDTH__ -#define CHAR_WIDTH CHAR_BIT -#define SCHAR_WIDTH CHAR_BIT -#define UCHAR_WIDTH CHAR_BIT -#define USHRT_WIDTH __SHRT_WIDTH__ -#define SHRT_WIDTH __SHRT_WIDTH__ -#define UINT_WIDTH __INT_WIDTH__ -#define INT_WIDTH __INT_WIDTH__ -#define ULONG_WIDTH __LONG_WIDTH__ -#define LONG_WIDTH __LONG_WIDTH__ -#define ULLONG_WIDTH __LLONG_WIDTH__ -#define LLONG_WIDTH __LLONG_WIDTH__ - -#define BITINT_MAXWIDTH __BITINT_MAXWIDTH__ -#endif - -#ifdef __CHAR_UNSIGNED__ /* -funsigned-char */ -#define CHAR_MIN 0 -#define CHAR_MAX UCHAR_MAX -#else -#define CHAR_MIN SCHAR_MIN -#define CHAR_MAX __SCHAR_MAX__ -#endif - -/* C99 5.2.4.2.1: Added long long. - C++11 18.3.3.2: same contents as the Standard C Library header <limits.h>. - */ -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ - (defined(__cplusplus) && __cplusplus >= 201103L) - -#undef LLONG_MIN -#undef LLONG_MAX -#undef ULLONG_MAX - -#define LLONG_MAX __LONG_LONG_MAX__ -#define LLONG_MIN (-__LONG_LONG_MAX__-1LL) -#define ULLONG_MAX (__LONG_LONG_MAX__*2ULL+1ULL) -#endif - -/* LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX are a GNU extension. It's too bad - that we don't have something like #pragma poison that could be used to - deprecate a macro - the code should just use LLONG_MAX and friends. - */ -#if defined(__GNU_LIBRARY__) ? defined(__USE_GNU) : !defined(__STRICT_ANSI__) - -#undef LONG_LONG_MIN -#undef LONG_LONG_MAX -#undef ULONG_LONG_MAX - -#define LONG_LONG_MAX __LONG_LONG_MAX__ -#define LONG_LONG_MIN (-__LONG_LONG_MAX__-1LL) -#define ULONG_LONG_MAX (__LONG_LONG_MAX__*2ULL+1ULL) -#endif - -#endif /* __CLANG_LIMITS_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@limits.h.blob deleted file mode 100644 index 888f046d8a2016295b59cd185f22d9c343dd10ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13774 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 F`ahA~fGhw2 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h deleted file mode 100644 index f4ddce9d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h +++ /dev/null @@ -1,104 +0,0 @@ -/*===---- lzcntintrin.h - LZCNT intrinsics ---------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <lzcntintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __LZCNTINTRIN_H -#define __LZCNTINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("lzcnt"))) - -#ifndef _MSC_VER -/// Counts the number of leading zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c LZCNT instruction. -/// -/// \param __X -/// An unsigned 16-bit integer whose leading zeros are to be counted. -/// \returns An unsigned 16-bit integer containing the number of leading zero -/// bits in the operand. -#define __lzcnt16(X) __builtin_ia32_lzcnt_u16((unsigned short)(X)) -#endif // _MSC_VER - -/// Counts the number of leading zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c LZCNT instruction. -/// -/// \param __X -/// An unsigned 32-bit integer whose leading zeros are to be counted. -/// \returns An unsigned 32-bit integer containing the number of leading zero -/// bits in the operand. -/// \see _lzcnt_u32 -static __inline__ unsigned int __DEFAULT_FN_ATTRS -__lzcnt32(unsigned int __X) -{ - return __builtin_ia32_lzcnt_u32(__X); -} - -/// Counts the number of leading zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c LZCNT instruction. -/// -/// \param __X -/// An unsigned 32-bit integer whose leading zeros are to be counted. -/// \returns An unsigned 32-bit integer containing the number of leading zero -/// bits in the operand. -/// \see __lzcnt32 -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_lzcnt_u32(unsigned int __X) -{ - return __builtin_ia32_lzcnt_u32(__X); -} - -#ifdef __x86_64__ -#ifndef _MSC_VER -/// Counts the number of leading zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c LZCNT instruction. -/// -/// \param __X -/// An unsigned 64-bit integer whose leading zeros are to be counted. -/// \returns An unsigned 64-bit integer containing the number of leading zero -/// bits in the operand. -/// \see _lzcnt_u64 -#define __lzcnt64(X) __builtin_ia32_lzcnt_u64((unsigned long long)(X)) -#endif // _MSC_VER - -/// Counts the number of leading zero bits in the operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c LZCNT instruction. -/// -/// \param __X -/// An unsigned 64-bit integer whose leading zeros are to be counted. -/// \returns An unsigned 64-bit integer containing the number of leading zero -/// bits in the operand. -/// \see __lzcnt64 -static __inline__ unsigned long long __DEFAULT_FN_ATTRS -_lzcnt_u64(unsigned long long __X) -{ - return __builtin_ia32_lzcnt_u64(__X); -} -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif /* __LZCNTINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@lzcntintrin.h.blob deleted file mode 100644 index 17ded9d642e359983973b1a30fd1bb19c3637156..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14123 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 L>%^M+sm1*-cqL9O diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h deleted file mode 100644 index d32fe594..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h +++ /dev/null @@ -1,67 +0,0 @@ -/*===---- mm_malloc.h - Allocating and Freeing Aligned Memory Blocks -------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __MM_MALLOC_H -#define __MM_MALLOC_H - -#include <stdlib.h> - -#ifdef _WIN32 -#include <malloc.h> -#else -#ifndef __cplusplus -extern int posix_memalign(void **__memptr, size_t __alignment, size_t __size); -#else -// Some systems (e.g. those with GNU libc) declare posix_memalign with an -// exception specifier. Via an "egregious workaround" in -// Sema::CheckEquivalentExceptionSpec, Clang accepts the following as a valid -// redeclaration of glibc's declaration. -extern "C" int posix_memalign(void **__memptr, size_t __alignment, size_t __size); -#endif -#endif - -#if !(defined(_WIN32) && defined(_mm_malloc)) -static __inline__ void *__attribute__((__always_inline__, __nodebug__, - __malloc__, __alloc_size__(1), - __alloc_align__(2))) -_mm_malloc(size_t __size, size_t __align) { - if (__align == 1) { - return malloc(__size); - } - - if (!(__align & (__align - 1)) && __align < sizeof(void *)) - __align = sizeof(void *); - - void *__mallocedMemory; -#if defined(__MINGW32__) - __mallocedMemory = __mingw_aligned_malloc(__size, __align); -#elif defined(_WIN32) - __mallocedMemory = _aligned_malloc(__size, __align); -#else - if (posix_memalign(&__mallocedMemory, __align, __size)) - return 0; -#endif - - return __mallocedMemory; -} - -static __inline__ void __attribute__((__always_inline__, __nodebug__)) -_mm_free(void *__p) -{ -#if defined(__MINGW32__) - __mingw_aligned_free(__p); -#elif defined(_WIN32) - _aligned_free(__p); -#else - free(__p); -#endif -} -#endif - -#endif /* __MM_MALLOC_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mm_malloc.h.blob deleted file mode 100644 index b786550b4b82cd682ab1c5a8dea21627b732cfc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13353 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h deleted file mode 100644 index 03bac921..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h +++ /dev/null @@ -1,1562 +0,0 @@ -/*===---- mmintrin.h - MMX intrinsics --------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __MMINTRIN_H -#define __MMINTRIN_H - -#if !defined(__i386__) && !defined(__x86_64__) -#error "This header is only meant to be used on x86 and x64 architecture" -#endif - -typedef long long __m64 __attribute__((__vector_size__(8), __aligned__(8))); - -typedef long long __v1di __attribute__((__vector_size__(8))); -typedef int __v2si __attribute__((__vector_size__(8))); -typedef short __v4hi __attribute__((__vector_size__(8))); -typedef char __v8qi __attribute__((__vector_size__(8))); - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("mmx"), __min_vector_width__(64))) - -/// Clears the MMX state by setting the state of the x87 stack registers -/// to empty. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> EMMS </c> instruction. -/// -static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("mmx"))) -_mm_empty(void) -{ - __builtin_ia32_emms(); -} - -/// Constructs a 64-bit integer vector, setting the lower 32 bits to the -/// value of the 32-bit integer parameter and setting the upper 32 bits to 0. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVD </c> instruction. -/// -/// \param __i -/// A 32-bit integer value. -/// \returns A 64-bit integer vector. The lower 32 bits contain the value of the -/// parameter. The upper 32 bits are set to 0. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_cvtsi32_si64(int __i) -{ - return (__m64)__builtin_ia32_vec_init_v2si(__i, 0); -} - -/// Returns the lower 32 bits of a 64-bit integer vector as a 32-bit -/// signed integer. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVD </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector. -/// \returns A 32-bit signed integer value containing the lower 32 bits of the -/// parameter. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_cvtsi64_si32(__m64 __m) -{ - return __builtin_ia32_vec_ext_v2si((__v2si)__m, 0); -} - -/// Casts a 64-bit signed integer value into a 64-bit integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVQ </c> instruction. -/// -/// \param __i -/// A 64-bit signed integer. -/// \returns A 64-bit integer vector containing the same bitwise pattern as the -/// parameter. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_cvtsi64_m64(long long __i) -{ - return (__m64)__i; -} - -/// Casts a 64-bit integer vector into a 64-bit signed integer value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVQ </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector. -/// \returns A 64-bit signed integer containing the same bitwise pattern as the -/// parameter. -static __inline__ long long __DEFAULT_FN_ATTRS -_mm_cvtm64_si64(__m64 __m) -{ - return (long long)__m; -} - -/// Converts 16-bit signed integers from both 64-bit integer vector -/// parameters of [4 x i16] into 8-bit signed integer values, and constructs -/// a 64-bit integer vector of [8 x i8] as the result. Positive values -/// greater than 0x7F are saturated to 0x7F. Negative values less than 0x80 -/// are saturated to 0x80. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PACKSSWB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. Each 16-bit element is treated as a -/// 16-bit signed integer and is converted to an 8-bit signed integer with -/// saturation. Positive values greater than 0x7F are saturated to 0x7F. -/// Negative values less than 0x80 are saturated to 0x80. The converted -/// [4 x i8] values are written to the lower 32 bits of the result. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. Each 16-bit element is treated as a -/// 16-bit signed integer and is converted to an 8-bit signed integer with -/// saturation. Positive values greater than 0x7F are saturated to 0x7F. -/// Negative values less than 0x80 are saturated to 0x80. The converted -/// [4 x i8] values are written to the upper 32 bits of the result. -/// \returns A 64-bit integer vector of [8 x i8] containing the converted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_packs_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2); -} - -/// Converts 32-bit signed integers from both 64-bit integer vector -/// parameters of [2 x i32] into 16-bit signed integer values, and constructs -/// a 64-bit integer vector of [4 x i16] as the result. Positive values -/// greater than 0x7FFF are saturated to 0x7FFF. Negative values less than -/// 0x8000 are saturated to 0x8000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PACKSSDW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [2 x i32]. Each 32-bit element is treated as a -/// 32-bit signed integer and is converted to a 16-bit signed integer with -/// saturation. Positive values greater than 0x7FFF are saturated to 0x7FFF. -/// Negative values less than 0x8000 are saturated to 0x8000. The converted -/// [2 x i16] values are written to the lower 32 bits of the result. -/// \param __m2 -/// A 64-bit integer vector of [2 x i32]. Each 32-bit element is treated as a -/// 32-bit signed integer and is converted to a 16-bit signed integer with -/// saturation. Positive values greater than 0x7FFF are saturated to 0x7FFF. -/// Negative values less than 0x8000 are saturated to 0x8000. The converted -/// [2 x i16] values are written to the upper 32 bits of the result. -/// \returns A 64-bit integer vector of [4 x i16] containing the converted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_packs_pi32(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2); -} - -/// Converts 16-bit signed integers from both 64-bit integer vector -/// parameters of [4 x i16] into 8-bit unsigned integer values, and -/// constructs a 64-bit integer vector of [8 x i8] as the result. Values -/// greater than 0xFF are saturated to 0xFF. Values less than 0 are saturated -/// to 0. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PACKUSWB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. Each 16-bit element is treated as a -/// 16-bit signed integer and is converted to an 8-bit unsigned integer with -/// saturation. Values greater than 0xFF are saturated to 0xFF. Values less -/// than 0 are saturated to 0. The converted [4 x i8] values are written to -/// the lower 32 bits of the result. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. Each 16-bit element is treated as a -/// 16-bit signed integer and is converted to an 8-bit unsigned integer with -/// saturation. Values greater than 0xFF are saturated to 0xFF. Values less -/// than 0 are saturated to 0. The converted [4 x i8] values are written to -/// the upper 32 bits of the result. -/// \returns A 64-bit integer vector of [8 x i8] containing the converted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_packs_pu16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2); -} - -/// Unpacks the upper 32 bits from two 64-bit integer vectors of [8 x i8] -/// and interleaves them into a 64-bit integer vector of [8 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PUNPCKHBW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8]. \n -/// Bits [39:32] are written to bits [7:0] of the result. \n -/// Bits [47:40] are written to bits [23:16] of the result. \n -/// Bits [55:48] are written to bits [39:32] of the result. \n -/// Bits [63:56] are written to bits [55:48] of the result. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8]. -/// Bits [39:32] are written to bits [15:8] of the result. \n -/// Bits [47:40] are written to bits [31:24] of the result. \n -/// Bits [55:48] are written to bits [47:40] of the result. \n -/// Bits [63:56] are written to bits [63:56] of the result. -/// \returns A 64-bit integer vector of [8 x i8] containing the interleaved -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_unpackhi_pi8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2); -} - -/// Unpacks the upper 32 bits from two 64-bit integer vectors of -/// [4 x i16] and interleaves them into a 64-bit integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PUNPCKHWD </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// Bits [47:32] are written to bits [15:0] of the result. \n -/// Bits [63:48] are written to bits [47:32] of the result. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// Bits [47:32] are written to bits [31:16] of the result. \n -/// Bits [63:48] are written to bits [63:48] of the result. -/// \returns A 64-bit integer vector of [4 x i16] containing the interleaved -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_unpackhi_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2); -} - -/// Unpacks the upper 32 bits from two 64-bit integer vectors of -/// [2 x i32] and interleaves them into a 64-bit integer vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PUNPCKHDQ </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [2 x i32]. The upper 32 bits are written to -/// the lower 32 bits of the result. -/// \param __m2 -/// A 64-bit integer vector of [2 x i32]. The upper 32 bits are written to -/// the upper 32 bits of the result. -/// \returns A 64-bit integer vector of [2 x i32] containing the interleaved -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_unpackhi_pi32(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2); -} - -/// Unpacks the lower 32 bits from two 64-bit integer vectors of [8 x i8] -/// and interleaves them into a 64-bit integer vector of [8 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PUNPCKLBW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8]. -/// Bits [7:0] are written to bits [7:0] of the result. \n -/// Bits [15:8] are written to bits [23:16] of the result. \n -/// Bits [23:16] are written to bits [39:32] of the result. \n -/// Bits [31:24] are written to bits [55:48] of the result. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8]. -/// Bits [7:0] are written to bits [15:8] of the result. \n -/// Bits [15:8] are written to bits [31:24] of the result. \n -/// Bits [23:16] are written to bits [47:40] of the result. \n -/// Bits [31:24] are written to bits [63:56] of the result. -/// \returns A 64-bit integer vector of [8 x i8] containing the interleaved -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_unpacklo_pi8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_punpcklbw((__v8qi)__m1, (__v8qi)__m2); -} - -/// Unpacks the lower 32 bits from two 64-bit integer vectors of -/// [4 x i16] and interleaves them into a 64-bit integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PUNPCKLWD </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// Bits [15:0] are written to bits [15:0] of the result. \n -/// Bits [31:16] are written to bits [47:32] of the result. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// Bits [15:0] are written to bits [31:16] of the result. \n -/// Bits [31:16] are written to bits [63:48] of the result. -/// \returns A 64-bit integer vector of [4 x i16] containing the interleaved -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_unpacklo_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_punpcklwd((__v4hi)__m1, (__v4hi)__m2); -} - -/// Unpacks the lower 32 bits from two 64-bit integer vectors of -/// [2 x i32] and interleaves them into a 64-bit integer vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PUNPCKLDQ </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [2 x i32]. The lower 32 bits are written to -/// the lower 32 bits of the result. -/// \param __m2 -/// A 64-bit integer vector of [2 x i32]. The lower 32 bits are written to -/// the upper 32 bits of the result. -/// \returns A 64-bit integer vector of [2 x i32] containing the interleaved -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_unpacklo_pi32(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_punpckldq((__v2si)__m1, (__v2si)__m2); -} - -/// Adds each 8-bit integer element of the first 64-bit integer vector -/// of [8 x i8] to the corresponding 8-bit integer element of the second -/// 64-bit integer vector of [8 x i8]. The lower 8 bits of the results are -/// packed into a 64-bit integer vector of [8 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PADDB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8]. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8]. -/// \returns A 64-bit integer vector of [8 x i8] containing the sums of both -/// parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_add_pi8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_paddb((__v8qi)__m1, (__v8qi)__m2); -} - -/// Adds each 16-bit integer element of the first 64-bit integer vector -/// of [4 x i16] to the corresponding 16-bit integer element of the second -/// 64-bit integer vector of [4 x i16]. The lower 16 bits of the results are -/// packed into a 64-bit integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PADDW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// \returns A 64-bit integer vector of [4 x i16] containing the sums of both -/// parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_add_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_paddw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Adds each 32-bit integer element of the first 64-bit integer vector -/// of [2 x i32] to the corresponding 32-bit integer element of the second -/// 64-bit integer vector of [2 x i32]. The lower 32 bits of the results are -/// packed into a 64-bit integer vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PADDD </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [2 x i32]. -/// \param __m2 -/// A 64-bit integer vector of [2 x i32]. -/// \returns A 64-bit integer vector of [2 x i32] containing the sums of both -/// parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_add_pi32(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_paddd((__v2si)__m1, (__v2si)__m2); -} - -/// Adds each 8-bit signed integer element of the first 64-bit integer -/// vector of [8 x i8] to the corresponding 8-bit signed integer element of -/// the second 64-bit integer vector of [8 x i8]. Positive sums greater than -/// 0x7F are saturated to 0x7F. Negative sums less than 0x80 are saturated to -/// 0x80. The results are packed into a 64-bit integer vector of [8 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PADDSB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8]. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8]. -/// \returns A 64-bit integer vector of [8 x i8] containing the saturated sums -/// of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_adds_pi8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_paddsb((__v8qi)__m1, (__v8qi)__m2); -} - -/// Adds each 16-bit signed integer element of the first 64-bit integer -/// vector of [4 x i16] to the corresponding 16-bit signed integer element of -/// the second 64-bit integer vector of [4 x i16]. Positive sums greater than -/// 0x7FFF are saturated to 0x7FFF. Negative sums less than 0x8000 are -/// saturated to 0x8000. The results are packed into a 64-bit integer vector -/// of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PADDSW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// \returns A 64-bit integer vector of [4 x i16] containing the saturated sums -/// of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_adds_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_paddsw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Adds each 8-bit unsigned integer element of the first 64-bit integer -/// vector of [8 x i8] to the corresponding 8-bit unsigned integer element of -/// the second 64-bit integer vector of [8 x i8]. Sums greater than 0xFF are -/// saturated to 0xFF. The results are packed into a 64-bit integer vector of -/// [8 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PADDUSB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8]. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8]. -/// \returns A 64-bit integer vector of [8 x i8] containing the saturated -/// unsigned sums of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_adds_pu8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_paddusb((__v8qi)__m1, (__v8qi)__m2); -} - -/// Adds each 16-bit unsigned integer element of the first 64-bit integer -/// vector of [4 x i16] to the corresponding 16-bit unsigned integer element -/// of the second 64-bit integer vector of [4 x i16]. Sums greater than -/// 0xFFFF are saturated to 0xFFFF. The results are packed into a 64-bit -/// integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PADDUSW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// \returns A 64-bit integer vector of [4 x i16] containing the saturated -/// unsigned sums of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_adds_pu16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_paddusw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Subtracts each 8-bit integer element of the second 64-bit integer -/// vector of [8 x i8] from the corresponding 8-bit integer element of the -/// first 64-bit integer vector of [8 x i8]. The lower 8 bits of the results -/// are packed into a 64-bit integer vector of [8 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSUBB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8] containing the minuends. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8] containing the subtrahends. -/// \returns A 64-bit integer vector of [8 x i8] containing the differences of -/// both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_sub_pi8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_psubb((__v8qi)__m1, (__v8qi)__m2); -} - -/// Subtracts each 16-bit integer element of the second 64-bit integer -/// vector of [4 x i16] from the corresponding 16-bit integer element of the -/// first 64-bit integer vector of [4 x i16]. The lower 16 bits of the -/// results are packed into a 64-bit integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSUBW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16] containing the minuends. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16] containing the subtrahends. -/// \returns A 64-bit integer vector of [4 x i16] containing the differences of -/// both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_sub_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_psubw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Subtracts each 32-bit integer element of the second 64-bit integer -/// vector of [2 x i32] from the corresponding 32-bit integer element of the -/// first 64-bit integer vector of [2 x i32]. The lower 32 bits of the -/// results are packed into a 64-bit integer vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSUBD </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [2 x i32] containing the minuends. -/// \param __m2 -/// A 64-bit integer vector of [2 x i32] containing the subtrahends. -/// \returns A 64-bit integer vector of [2 x i32] containing the differences of -/// both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_sub_pi32(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_psubd((__v2si)__m1, (__v2si)__m2); -} - -/// Subtracts each 8-bit signed integer element of the second 64-bit -/// integer vector of [8 x i8] from the corresponding 8-bit signed integer -/// element of the first 64-bit integer vector of [8 x i8]. Positive results -/// greater than 0x7F are saturated to 0x7F. Negative results less than 0x80 -/// are saturated to 0x80. The results are packed into a 64-bit integer -/// vector of [8 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSUBSB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8] containing the minuends. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8] containing the subtrahends. -/// \returns A 64-bit integer vector of [8 x i8] containing the saturated -/// differences of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_subs_pi8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_psubsb((__v8qi)__m1, (__v8qi)__m2); -} - -/// Subtracts each 16-bit signed integer element of the second 64-bit -/// integer vector of [4 x i16] from the corresponding 16-bit signed integer -/// element of the first 64-bit integer vector of [4 x i16]. Positive results -/// greater than 0x7FFF are saturated to 0x7FFF. Negative results less than -/// 0x8000 are saturated to 0x8000. The results are packed into a 64-bit -/// integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSUBSW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16] containing the minuends. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16] containing the subtrahends. -/// \returns A 64-bit integer vector of [4 x i16] containing the saturated -/// differences of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_subs_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_psubsw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Subtracts each 8-bit unsigned integer element of the second 64-bit -/// integer vector of [8 x i8] from the corresponding 8-bit unsigned integer -/// element of the first 64-bit integer vector of [8 x i8]. -/// -/// If an element of the first vector is less than the corresponding element -/// of the second vector, the result is saturated to 0. The results are -/// packed into a 64-bit integer vector of [8 x i8]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSUBUSB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8] containing the minuends. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8] containing the subtrahends. -/// \returns A 64-bit integer vector of [8 x i8] containing the saturated -/// differences of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_subs_pu8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_psubusb((__v8qi)__m1, (__v8qi)__m2); -} - -/// Subtracts each 16-bit unsigned integer element of the second 64-bit -/// integer vector of [4 x i16] from the corresponding 16-bit unsigned -/// integer element of the first 64-bit integer vector of [4 x i16]. -/// -/// If an element of the first vector is less than the corresponding element -/// of the second vector, the result is saturated to 0. The results are -/// packed into a 64-bit integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSUBUSW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16] containing the minuends. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16] containing the subtrahends. -/// \returns A 64-bit integer vector of [4 x i16] containing the saturated -/// differences of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_subs_pu16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_psubusw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Multiplies each 16-bit signed integer element of the first 64-bit -/// integer vector of [4 x i16] by the corresponding 16-bit signed integer -/// element of the second 64-bit integer vector of [4 x i16] and get four -/// 32-bit products. Adds adjacent pairs of products to get two 32-bit sums. -/// The lower 32 bits of these two sums are packed into a 64-bit integer -/// vector of [2 x i32]. -/// -/// For example, bits [15:0] of both parameters are multiplied, bits [31:16] -/// of both parameters are multiplied, and the sum of both results is written -/// to bits [31:0] of the result. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMADDWD </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// \returns A 64-bit integer vector of [2 x i32] containing the sums of -/// products of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_madd_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pmaddwd((__v4hi)__m1, (__v4hi)__m2); -} - -/// Multiplies each 16-bit signed integer element of the first 64-bit -/// integer vector of [4 x i16] by the corresponding 16-bit signed integer -/// element of the second 64-bit integer vector of [4 x i16]. Packs the upper -/// 16 bits of the 32-bit products into a 64-bit integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMULHW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// \returns A 64-bit integer vector of [4 x i16] containing the upper 16 bits -/// of the products of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_mulhi_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pmulhw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Multiplies each 16-bit signed integer element of the first 64-bit -/// integer vector of [4 x i16] by the corresponding 16-bit signed integer -/// element of the second 64-bit integer vector of [4 x i16]. Packs the lower -/// 16 bits of the 32-bit products into a 64-bit integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMULLW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// \returns A 64-bit integer vector of [4 x i16] containing the lower 16 bits -/// of the products of both parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_mullo_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pmullw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Left-shifts each 16-bit signed integer element of the first -/// parameter, which is a 64-bit integer vector of [4 x i16], by the number -/// of bits specified by the second parameter, which is a 64-bit integer. The -/// lower 16 bits of the results are packed into a 64-bit integer vector of -/// [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSLLW </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [4 x i16]. -/// \param __count -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \returns A 64-bit integer vector of [4 x i16] containing the left-shifted -/// values. If \a __count is greater or equal to 16, the result is set to all -/// 0. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_sll_pi16(__m64 __m, __m64 __count) -{ - return (__m64)__builtin_ia32_psllw((__v4hi)__m, __count); -} - -/// Left-shifts each 16-bit signed integer element of a 64-bit integer -/// vector of [4 x i16] by the number of bits specified by a 32-bit integer. -/// The lower 16 bits of the results are packed into a 64-bit integer vector -/// of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSLLW </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [4 x i16]. -/// \param __count -/// A 32-bit integer value. -/// \returns A 64-bit integer vector of [4 x i16] containing the left-shifted -/// values. If \a __count is greater or equal to 16, the result is set to all -/// 0. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_slli_pi16(__m64 __m, int __count) -{ - return (__m64)__builtin_ia32_psllwi((__v4hi)__m, __count); -} - -/// Left-shifts each 32-bit signed integer element of the first -/// parameter, which is a 64-bit integer vector of [2 x i32], by the number -/// of bits specified by the second parameter, which is a 64-bit integer. The -/// lower 32 bits of the results are packed into a 64-bit integer vector of -/// [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSLLD </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [2 x i32]. -/// \param __count -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \returns A 64-bit integer vector of [2 x i32] containing the left-shifted -/// values. If \a __count is greater or equal to 32, the result is set to all -/// 0. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_sll_pi32(__m64 __m, __m64 __count) -{ - return (__m64)__builtin_ia32_pslld((__v2si)__m, __count); -} - -/// Left-shifts each 32-bit signed integer element of a 64-bit integer -/// vector of [2 x i32] by the number of bits specified by a 32-bit integer. -/// The lower 32 bits of the results are packed into a 64-bit integer vector -/// of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSLLD </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [2 x i32]. -/// \param __count -/// A 32-bit integer value. -/// \returns A 64-bit integer vector of [2 x i32] containing the left-shifted -/// values. If \a __count is greater or equal to 32, the result is set to all -/// 0. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_slli_pi32(__m64 __m, int __count) -{ - return (__m64)__builtin_ia32_pslldi((__v2si)__m, __count); -} - -/// Left-shifts the first 64-bit integer parameter by the number of bits -/// specified by the second 64-bit integer parameter. The lower 64 bits of -/// result are returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSLLQ </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \param __count -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \returns A 64-bit integer vector containing the left-shifted value. If -/// \a __count is greater or equal to 64, the result is set to 0. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_sll_si64(__m64 __m, __m64 __count) -{ - return (__m64)__builtin_ia32_psllq((__v1di)__m, __count); -} - -/// Left-shifts the first parameter, which is a 64-bit integer, by the -/// number of bits specified by the second parameter, which is a 32-bit -/// integer. The lower 64 bits of result are returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSLLQ </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \param __count -/// A 32-bit integer value. -/// \returns A 64-bit integer vector containing the left-shifted value. If -/// \a __count is greater or equal to 64, the result is set to 0. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_slli_si64(__m64 __m, int __count) -{ - return (__m64)__builtin_ia32_psllqi((__v1di)__m, __count); -} - -/// Right-shifts each 16-bit integer element of the first parameter, -/// which is a 64-bit integer vector of [4 x i16], by the number of bits -/// specified by the second parameter, which is a 64-bit integer. -/// -/// High-order bits are filled with the sign bit of the initial value of each -/// 16-bit element. The 16-bit results are packed into a 64-bit integer -/// vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRAW </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [4 x i16]. -/// \param __count -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \returns A 64-bit integer vector of [4 x i16] containing the right-shifted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_sra_pi16(__m64 __m, __m64 __count) -{ - return (__m64)__builtin_ia32_psraw((__v4hi)__m, __count); -} - -/// Right-shifts each 16-bit integer element of a 64-bit integer vector -/// of [4 x i16] by the number of bits specified by a 32-bit integer. -/// -/// High-order bits are filled with the sign bit of the initial value of each -/// 16-bit element. The 16-bit results are packed into a 64-bit integer -/// vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRAW </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [4 x i16]. -/// \param __count -/// A 32-bit integer value. -/// \returns A 64-bit integer vector of [4 x i16] containing the right-shifted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_srai_pi16(__m64 __m, int __count) -{ - return (__m64)__builtin_ia32_psrawi((__v4hi)__m, __count); -} - -/// Right-shifts each 32-bit integer element of the first parameter, -/// which is a 64-bit integer vector of [2 x i32], by the number of bits -/// specified by the second parameter, which is a 64-bit integer. -/// -/// High-order bits are filled with the sign bit of the initial value of each -/// 32-bit element. The 32-bit results are packed into a 64-bit integer -/// vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRAD </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [2 x i32]. -/// \param __count -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \returns A 64-bit integer vector of [2 x i32] containing the right-shifted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_sra_pi32(__m64 __m, __m64 __count) -{ - return (__m64)__builtin_ia32_psrad((__v2si)__m, __count); -} - -/// Right-shifts each 32-bit integer element of a 64-bit integer vector -/// of [2 x i32] by the number of bits specified by a 32-bit integer. -/// -/// High-order bits are filled with the sign bit of the initial value of each -/// 32-bit element. The 32-bit results are packed into a 64-bit integer -/// vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRAD </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [2 x i32]. -/// \param __count -/// A 32-bit integer value. -/// \returns A 64-bit integer vector of [2 x i32] containing the right-shifted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_srai_pi32(__m64 __m, int __count) -{ - return (__m64)__builtin_ia32_psradi((__v2si)__m, __count); -} - -/// Right-shifts each 16-bit integer element of the first parameter, -/// which is a 64-bit integer vector of [4 x i16], by the number of bits -/// specified by the second parameter, which is a 64-bit integer. -/// -/// High-order bits are cleared. The 16-bit results are packed into a 64-bit -/// integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRLW </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [4 x i16]. -/// \param __count -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \returns A 64-bit integer vector of [4 x i16] containing the right-shifted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_srl_pi16(__m64 __m, __m64 __count) -{ - return (__m64)__builtin_ia32_psrlw((__v4hi)__m, __count); -} - -/// Right-shifts each 16-bit integer element of a 64-bit integer vector -/// of [4 x i16] by the number of bits specified by a 32-bit integer. -/// -/// High-order bits are cleared. The 16-bit results are packed into a 64-bit -/// integer vector of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRLW </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [4 x i16]. -/// \param __count -/// A 32-bit integer value. -/// \returns A 64-bit integer vector of [4 x i16] containing the right-shifted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_srli_pi16(__m64 __m, int __count) -{ - return (__m64)__builtin_ia32_psrlwi((__v4hi)__m, __count); -} - -/// Right-shifts each 32-bit integer element of the first parameter, -/// which is a 64-bit integer vector of [2 x i32], by the number of bits -/// specified by the second parameter, which is a 64-bit integer. -/// -/// High-order bits are cleared. The 32-bit results are packed into a 64-bit -/// integer vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRLD </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [2 x i32]. -/// \param __count -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \returns A 64-bit integer vector of [2 x i32] containing the right-shifted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_srl_pi32(__m64 __m, __m64 __count) -{ - return (__m64)__builtin_ia32_psrld((__v2si)__m, __count); -} - -/// Right-shifts each 32-bit integer element of a 64-bit integer vector -/// of [2 x i32] by the number of bits specified by a 32-bit integer. -/// -/// High-order bits are cleared. The 32-bit results are packed into a 64-bit -/// integer vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRLD </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector of [2 x i32]. -/// \param __count -/// A 32-bit integer value. -/// \returns A 64-bit integer vector of [2 x i32] containing the right-shifted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_srli_pi32(__m64 __m, int __count) -{ - return (__m64)__builtin_ia32_psrldi((__v2si)__m, __count); -} - -/// Right-shifts the first 64-bit integer parameter by the number of bits -/// specified by the second 64-bit integer parameter. -/// -/// High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRLQ </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \param __count -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \returns A 64-bit integer vector containing the right-shifted value. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_srl_si64(__m64 __m, __m64 __count) -{ - return (__m64)__builtin_ia32_psrlq((__v1di)__m, __count); -} - -/// Right-shifts the first parameter, which is a 64-bit integer, by the -/// number of bits specified by the second parameter, which is a 32-bit -/// integer. -/// -/// High-order bits are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSRLQ </c> instruction. -/// -/// \param __m -/// A 64-bit integer vector interpreted as a single 64-bit integer. -/// \param __count -/// A 32-bit integer value. -/// \returns A 64-bit integer vector containing the right-shifted value. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_srli_si64(__m64 __m, int __count) -{ - return (__m64)__builtin_ia32_psrlqi((__v1di)__m, __count); -} - -/// Performs a bitwise AND of two 64-bit integer vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PAND </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector. -/// \param __m2 -/// A 64-bit integer vector. -/// \returns A 64-bit integer vector containing the bitwise AND of both -/// parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_and_si64(__m64 __m1, __m64 __m2) -{ - return __builtin_ia32_pand((__v1di)__m1, (__v1di)__m2); -} - -/// Performs a bitwise NOT of the first 64-bit integer vector, and then -/// performs a bitwise AND of the intermediate result and the second 64-bit -/// integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PANDN </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector. The one's complement of this parameter is used -/// in the bitwise AND. -/// \param __m2 -/// A 64-bit integer vector. -/// \returns A 64-bit integer vector containing the bitwise AND of the second -/// parameter and the one's complement of the first parameter. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_andnot_si64(__m64 __m1, __m64 __m2) -{ - return __builtin_ia32_pandn((__v1di)__m1, (__v1di)__m2); -} - -/// Performs a bitwise OR of two 64-bit integer vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> POR </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector. -/// \param __m2 -/// A 64-bit integer vector. -/// \returns A 64-bit integer vector containing the bitwise OR of both -/// parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_or_si64(__m64 __m1, __m64 __m2) -{ - return __builtin_ia32_por((__v1di)__m1, (__v1di)__m2); -} - -/// Performs a bitwise exclusive OR of two 64-bit integer vectors. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PXOR </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector. -/// \param __m2 -/// A 64-bit integer vector. -/// \returns A 64-bit integer vector containing the bitwise exclusive OR of both -/// parameters. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_xor_si64(__m64 __m1, __m64 __m2) -{ - return __builtin_ia32_pxor((__v1di)__m1, (__v1di)__m2); -} - -/// Compares the 8-bit integer elements of two 64-bit integer vectors of -/// [8 x i8] to determine if the element of the first vector is equal to the -/// corresponding element of the second vector. -/// -/// The comparison yields 0 for false, 0xFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PCMPEQB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8]. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8]. -/// \returns A 64-bit integer vector of [8 x i8] containing the comparison -/// results. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_cmpeq_pi8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pcmpeqb((__v8qi)__m1, (__v8qi)__m2); -} - -/// Compares the 16-bit integer elements of two 64-bit integer vectors of -/// [4 x i16] to determine if the element of the first vector is equal to the -/// corresponding element of the second vector. -/// -/// The comparison yields 0 for false, 0xFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PCMPEQW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// \returns A 64-bit integer vector of [4 x i16] containing the comparison -/// results. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_cmpeq_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pcmpeqw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Compares the 32-bit integer elements of two 64-bit integer vectors of -/// [2 x i32] to determine if the element of the first vector is equal to the -/// corresponding element of the second vector. -/// -/// The comparison yields 0 for false, 0xFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PCMPEQD </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [2 x i32]. -/// \param __m2 -/// A 64-bit integer vector of [2 x i32]. -/// \returns A 64-bit integer vector of [2 x i32] containing the comparison -/// results. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_cmpeq_pi32(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pcmpeqd((__v2si)__m1, (__v2si)__m2); -} - -/// Compares the 8-bit integer elements of two 64-bit integer vectors of -/// [8 x i8] to determine if the element of the first vector is greater than -/// the corresponding element of the second vector. -/// -/// The comparison yields 0 for false, 0xFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PCMPGTB </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [8 x i8]. -/// \param __m2 -/// A 64-bit integer vector of [8 x i8]. -/// \returns A 64-bit integer vector of [8 x i8] containing the comparison -/// results. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_cmpgt_pi8(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pcmpgtb((__v8qi)__m1, (__v8qi)__m2); -} - -/// Compares the 16-bit integer elements of two 64-bit integer vectors of -/// [4 x i16] to determine if the element of the first vector is greater than -/// the corresponding element of the second vector. -/// -/// The comparison yields 0 for false, 0xFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PCMPGTW </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [4 x i16]. -/// \param __m2 -/// A 64-bit integer vector of [4 x i16]. -/// \returns A 64-bit integer vector of [4 x i16] containing the comparison -/// results. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_cmpgt_pi16(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pcmpgtw((__v4hi)__m1, (__v4hi)__m2); -} - -/// Compares the 32-bit integer elements of two 64-bit integer vectors of -/// [2 x i32] to determine if the element of the first vector is greater than -/// the corresponding element of the second vector. -/// -/// The comparison yields 0 for false, 0xFFFFFFFF for true. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PCMPGTD </c> instruction. -/// -/// \param __m1 -/// A 64-bit integer vector of [2 x i32]. -/// \param __m2 -/// A 64-bit integer vector of [2 x i32]. -/// \returns A 64-bit integer vector of [2 x i32] containing the comparison -/// results. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_cmpgt_pi32(__m64 __m1, __m64 __m2) -{ - return (__m64)__builtin_ia32_pcmpgtd((__v2si)__m1, (__v2si)__m2); -} - -/// Constructs a 64-bit integer vector initialized to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PXOR </c> instruction. -/// -/// \returns An initialized 64-bit integer vector with all elements set to zero. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_setzero_si64(void) -{ - return __extension__ (__m64){ 0LL }; -} - -/// Constructs a 64-bit integer vector initialized with the specified -/// 32-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __i1 -/// A 32-bit integer value used to initialize the upper 32 bits of the -/// result. -/// \param __i0 -/// A 32-bit integer value used to initialize the lower 32 bits of the -/// result. -/// \returns An initialized 64-bit integer vector. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_set_pi32(int __i1, int __i0) -{ - return (__m64)__builtin_ia32_vec_init_v2si(__i0, __i1); -} - -/// Constructs a 64-bit integer vector initialized with the specified -/// 16-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __s3 -/// A 16-bit integer value used to initialize bits [63:48] of the result. -/// \param __s2 -/// A 16-bit integer value used to initialize bits [47:32] of the result. -/// \param __s1 -/// A 16-bit integer value used to initialize bits [31:16] of the result. -/// \param __s0 -/// A 16-bit integer value used to initialize bits [15:0] of the result. -/// \returns An initialized 64-bit integer vector. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_set_pi16(short __s3, short __s2, short __s1, short __s0) -{ - return (__m64)__builtin_ia32_vec_init_v4hi(__s0, __s1, __s2, __s3); -} - -/// Constructs a 64-bit integer vector initialized with the specified -/// 8-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __b7 -/// An 8-bit integer value used to initialize bits [63:56] of the result. -/// \param __b6 -/// An 8-bit integer value used to initialize bits [55:48] of the result. -/// \param __b5 -/// An 8-bit integer value used to initialize bits [47:40] of the result. -/// \param __b4 -/// An 8-bit integer value used to initialize bits [39:32] of the result. -/// \param __b3 -/// An 8-bit integer value used to initialize bits [31:24] of the result. -/// \param __b2 -/// An 8-bit integer value used to initialize bits [23:16] of the result. -/// \param __b1 -/// An 8-bit integer value used to initialize bits [15:8] of the result. -/// \param __b0 -/// An 8-bit integer value used to initialize bits [7:0] of the result. -/// \returns An initialized 64-bit integer vector. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_set_pi8(char __b7, char __b6, char __b5, char __b4, char __b3, char __b2, - char __b1, char __b0) -{ - return (__m64)__builtin_ia32_vec_init_v8qi(__b0, __b1, __b2, __b3, - __b4, __b5, __b6, __b7); -} - -/// Constructs a 64-bit integer vector of [2 x i32], with each of the -/// 32-bit integer vector elements set to the specified 32-bit integer -/// value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __i -/// A 32-bit integer value used to initialize each vector element of the -/// result. -/// \returns An initialized 64-bit integer vector of [2 x i32]. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_set1_pi32(int __i) -{ - return _mm_set_pi32(__i, __i); -} - -/// Constructs a 64-bit integer vector of [4 x i16], with each of the -/// 16-bit integer vector elements set to the specified 16-bit integer -/// value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __w -/// A 16-bit integer value used to initialize each vector element of the -/// result. -/// \returns An initialized 64-bit integer vector of [4 x i16]. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_set1_pi16(short __w) -{ - return _mm_set_pi16(__w, __w, __w, __w); -} - -/// Constructs a 64-bit integer vector of [8 x i8], with each of the -/// 8-bit integer vector elements set to the specified 8-bit integer value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __b -/// An 8-bit integer value used to initialize each vector element of the -/// result. -/// \returns An initialized 64-bit integer vector of [8 x i8]. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_set1_pi8(char __b) -{ - return _mm_set_pi8(__b, __b, __b, __b, __b, __b, __b, __b); -} - -/// Constructs a 64-bit integer vector, initialized in reverse order with -/// the specified 32-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __i0 -/// A 32-bit integer value used to initialize the lower 32 bits of the -/// result. -/// \param __i1 -/// A 32-bit integer value used to initialize the upper 32 bits of the -/// result. -/// \returns An initialized 64-bit integer vector. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_setr_pi32(int __i0, int __i1) -{ - return _mm_set_pi32(__i1, __i0); -} - -/// Constructs a 64-bit integer vector, initialized in reverse order with -/// the specified 16-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __w0 -/// A 16-bit integer value used to initialize bits [15:0] of the result. -/// \param __w1 -/// A 16-bit integer value used to initialize bits [31:16] of the result. -/// \param __w2 -/// A 16-bit integer value used to initialize bits [47:32] of the result. -/// \param __w3 -/// A 16-bit integer value used to initialize bits [63:48] of the result. -/// \returns An initialized 64-bit integer vector. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_setr_pi16(short __w0, short __w1, short __w2, short __w3) -{ - return _mm_set_pi16(__w3, __w2, __w1, __w0); -} - -/// Constructs a 64-bit integer vector, initialized in reverse order with -/// the specified 8-bit integer values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __b0 -/// An 8-bit integer value used to initialize bits [7:0] of the result. -/// \param __b1 -/// An 8-bit integer value used to initialize bits [15:8] of the result. -/// \param __b2 -/// An 8-bit integer value used to initialize bits [23:16] of the result. -/// \param __b3 -/// An 8-bit integer value used to initialize bits [31:24] of the result. -/// \param __b4 -/// An 8-bit integer value used to initialize bits [39:32] of the result. -/// \param __b5 -/// An 8-bit integer value used to initialize bits [47:40] of the result. -/// \param __b6 -/// An 8-bit integer value used to initialize bits [55:48] of the result. -/// \param __b7 -/// An 8-bit integer value used to initialize bits [63:56] of the result. -/// \returns An initialized 64-bit integer vector. -static __inline__ __m64 __DEFAULT_FN_ATTRS -_mm_setr_pi8(char __b0, char __b1, char __b2, char __b3, char __b4, char __b5, - char __b6, char __b7) -{ - return _mm_set_pi8(__b7, __b6, __b5, __b4, __b3, __b2, __b1, __b0); -} - -#undef __DEFAULT_FN_ATTRS - -/* Aliases for compatibility. */ -#define _m_empty _mm_empty -#define _m_from_int _mm_cvtsi32_si64 -#define _m_from_int64 _mm_cvtsi64_m64 -#define _m_to_int _mm_cvtsi64_si32 -#define _m_to_int64 _mm_cvtm64_si64 -#define _m_packsswb _mm_packs_pi16 -#define _m_packssdw _mm_packs_pi32 -#define _m_packuswb _mm_packs_pu16 -#define _m_punpckhbw _mm_unpackhi_pi8 -#define _m_punpckhwd _mm_unpackhi_pi16 -#define _m_punpckhdq _mm_unpackhi_pi32 -#define _m_punpcklbw _mm_unpacklo_pi8 -#define _m_punpcklwd _mm_unpacklo_pi16 -#define _m_punpckldq _mm_unpacklo_pi32 -#define _m_paddb _mm_add_pi8 -#define _m_paddw _mm_add_pi16 -#define _m_paddd _mm_add_pi32 -#define _m_paddsb _mm_adds_pi8 -#define _m_paddsw _mm_adds_pi16 -#define _m_paddusb _mm_adds_pu8 -#define _m_paddusw _mm_adds_pu16 -#define _m_psubb _mm_sub_pi8 -#define _m_psubw _mm_sub_pi16 -#define _m_psubd _mm_sub_pi32 -#define _m_psubsb _mm_subs_pi8 -#define _m_psubsw _mm_subs_pi16 -#define _m_psubusb _mm_subs_pu8 -#define _m_psubusw _mm_subs_pu16 -#define _m_pmaddwd _mm_madd_pi16 -#define _m_pmulhw _mm_mulhi_pi16 -#define _m_pmullw _mm_mullo_pi16 -#define _m_psllw _mm_sll_pi16 -#define _m_psllwi _mm_slli_pi16 -#define _m_pslld _mm_sll_pi32 -#define _m_pslldi _mm_slli_pi32 -#define _m_psllq _mm_sll_si64 -#define _m_psllqi _mm_slli_si64 -#define _m_psraw _mm_sra_pi16 -#define _m_psrawi _mm_srai_pi16 -#define _m_psrad _mm_sra_pi32 -#define _m_psradi _mm_srai_pi32 -#define _m_psrlw _mm_srl_pi16 -#define _m_psrlwi _mm_srli_pi16 -#define _m_psrld _mm_srl_pi32 -#define _m_psrldi _mm_srli_pi32 -#define _m_psrlq _mm_srl_si64 -#define _m_psrlqi _mm_srli_si64 -#define _m_pand _mm_and_si64 -#define _m_pandn _mm_andnot_si64 -#define _m_por _mm_or_si64 -#define _m_pxor _mm_xor_si64 -#define _m_pcmpeqb _mm_cmpeq_pi8 -#define _m_pcmpeqw _mm_cmpeq_pi16 -#define _m_pcmpeqd _mm_cmpeq_pi32 -#define _m_pcmpgtb _mm_cmpgt_pi8 -#define _m_pcmpgtw _mm_cmpgt_pi16 -#define _m_pcmpgtd _mm_cmpgt_pi32 - -#endif /* __MMINTRIN_H */ - diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@mmintrin.h.blob deleted file mode 100644 index 8e13ca2e1c8cd69e5aaf7a3895d0fefafdc6d8f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79877 zcmeHw34ByV^8d_`K|oOC5)pBPh{&0Q5FmidwTN;Bf{2QQ$z+lYOb#=X16KWW=?Wq) zuCnW~T%yY!DlT%Y$g%EE))QS374Zhe6Il?sjPL)g>eoH<jyZy1fA0SOem*Z2Z~E2i zuBxu8uBz_W)$zlNfypm9oQ___WhMSz!Cu4tp&8+_@?K$oDBP>SU(hR5;p<i64V3ou zIU4wa-qNC^n)awJtC$feE$UGasPOy3Wfe0A#e9RKw!5=eWvHT8pwt(vEb#Zr9X>jv zSH8a}P@3l}EAaO$cKp!UbH|H@Hoox8a{lGpgZ+%Z<Ojl`Ui53IS6*I8ekkk>`}4wt zL^TZt@_X@EdZlNnw|Yxz0;S;!j1*0YDu(xQpYSKIs4`Gs+oLN-_bLij(ofCbSo=bZ zhe6fK3i}Zi`n~j9$k0<sk`iyY*zkk>5UOhWq-PYCr)R|(3DbwzQfefMd=>wmKNA8_ z?JZCI&QQ1@zpN}s4J|}tROMx%KutzoFi>JZW_X=9TvihB<y8j?{9t)yY1m((8pjjN z!a&fUmtRp<9TE?u{V_iV+kEAffzrY<!m4B`4h_+BZx8~QSRO)^6@^}3gr)JiTkH=8 zYN!j3|7EJNpCNitks3422HV~h6_y6#^oj{CWIq%rs`3U+f^Q(YXcrEY_$#8C#p}Pn zD!`0xx^<kf`)YQC%PM^=sEWvjR~DA{2$mJ)CmyGlCAliUB;II4Gef<61^z<&DHBbL za7CproHydC(LXo5TJ}wKpA}uSh{zUE$b4mGGXnm+Kv`a4WvMS5C@T#`kuO@0u|}X5 zUY|cKj*cqC3^8G_<$ZNYNg~#R>7nq9&@9_gR+a`ZS#5uc8lJtzlytxgO1&%tN}0-^ z7)Qug>`(ZLY78Tp0hgDR`%1%c#;o`TWmX_G0Lxum87}eqSYY1iHpVE#G!ty8qh5oz z1iWk?lz7{6DlZR&hG6EEcx&>!LC{PL*Iq$NTSd(Cn+ao}Zjm3RISdUcObD|e-dICb zG@gUQh8PE`#)Do0KebWgk?*6q#T_$H#CEiWH6bW3i>9<~tIzB53_Rek2*EX|<CDQ; ztQ&DME7Q<(IW9GJUocRfU*@f_H|8wNuo&Ue9<WIe!thK3I@`gOR}}h+?G%=6Yn>FO z7KI*<qlFcIe_l~=W;rX_uAX8eXT=;OCE)eVNZet)3&H%t#2y2rlMHANAM{<=sBz;B z4;q|!4FRF<s0k3~kw9UIw<>7!jAS7XGBOqI6_K1&!7`s0K7!HJv3)z<s03d1)9_AM zuR?Fgh|16aPH#adFw0(x&}3u(!_r|TlQaA?4GwQSNeDv{LV>XEDV@}OLK19;Rvy=K zsMnVSLiWl)wGe(9anhnNib^Yc!MV*3^@uU^yrGg_{)&oHra_mJi;OO^kX(OwdPx#K zr_>^B9|~?tEG>$$iuSg2sw(#dODcmm72ISaezs3kdjsL}8Fr4MZS#;VBW#;uj5eJx zh#Py>d9VnEnJ$}nLvV^CKgE-!pua{~&vsw=jS2-!>rvz{^;ZOZf_Xjiy&;xw3kQ{u zl$HBSi`Yl72uak`E%k?tT157n1UpYib}w&vfW~(7{Y{Pj6C19`*kZcNk#=fE+Y-Ab z<gN1i646`g6mr<IGLz9MU}BX}@cnF%+jhn0H=D$GoGbQ*ic7>YEvsN`92Edr2*4AW z<+tgFq`cxF^pMpw+V)mj5Zf6e@rt=EeDI2DXk?>llFiiXX;laRBkboDqrDKJH@+Ul zelOg<9<X*%f*$RG>+)6=s3<Efff=`#IBtanVh^}qwo{24=*|~UI@?z05~hmnPmG{E zTwH+;vlR94R)}?yQb-mm<OgBnN@B%7$Um!uEe`u@;`A9tTfEe^SCZiLqdk@JyqA|a zhUeo*LSZuEg(aYRWjx^yhS(NtXcN!2RfNr}qIf7H3x!~Yo$sU!l!Y&dUm&n#po3%? zb5|$_tmA2=Nv^!b1v4}c`GatNW22*h4?LHk@r|~Whm!MFFh!M;GrWpyRAJCtWJG0X zA~hTOogipH$S9;%X^#zk@%1RL@MG~4du#?$<>kTT=jB%x=7qhH07yI@qHUotSJTD~ zHJU4yXkV}_L}4UT<j|IO-U2%-Yugk)vYmynZJU>;7VCM!ryy$Bv!^f^?%@a3dzARY z#bx%3XSl<aHHo|@oveYPJUyId6ffJ3R_B+N1xl;1479lDQb44Z$ctzar7Uc5B9Izm zk!IgqgnGncKdv1SRESJOiwk0nKG?po!izDRt!zvmLYg?;kSDd02^HCim8592H9({Q zOSL@cupR|7OTCDK#-2CP21K=rH&cRMY8HF_Poa5gk$|7fAY0DZl9!z+8-cQI>@U5^ zR}xSB?1`1s@I!%;a;*J?&KDYEcJ~|NI7t!FiZxZsyod<+%1TPg;u(61c&EpVcw2mG z8jMAjBh!uov<5C2<cMM&mNlm>sVSTR>9tIB+r}j&2wnx@tI?b7sUh?Yv@PV<sA`NI z<W!99I$X9B(QkW;5@lTTl8E3|A*zIstbty(1FWG8mx&tj=F*rR9Jzn-XQspu_YaO( zAttZ=!k=4+giBsrZ!K{EvI@bdNDd=jcV~J-rGfHt;m|Hyb&b(Za+hH2{Z(*^%^{t5 zXqnqY+>^HMlfkkFXgn36a=%ff*>XcDSqlA_SQ1k$heI{Nf-of+EdnjYN=>2ZWmruF z#Ihs4t_vr>KrbnS*-Uyqu~NiRJ(=!$EA>cG{J#2vg~7^DaeSoJzG81AmlnM?Qq(C9 z6zJ=0eqTKH`wIfd<r4qjA5j=bkqUN}$6E~~3gCr8c~+;@R(7JDEw9L*DureHKuy1_ zqVl9UC+)v4p_Nh&SnM#qBD&Cr1~p|7+w!0{Tv%3NzY12EZmJ9zjkv@kCwXaQN$lmO z?o&`lEK44lk?s*Eo~~YkTw^Tdrn(yPmxhG+D9JW-Hp-#|3KH8CC@>01n;P1)+;(2e zm#Yp&VrKRo6e%>zKy6<s<OX3EtAes^Uj^Aswr#+6IJRh6@z^1@44#ZwAhI%#))mZU zgK}qAJFnbZ;Wei9ZTk=^wo~h}144u-6&3EmDHnq<+9DLRjXNWOjXP{WCSR$7)waKK zhtvWbQKn!yqD(5=Yk0=Cd%j?SzoaajRIDvn<}C<CY<e`+l~|SsYWyM+U=d5zrU>o_ z#e*u!f<cqNXxm4SFvCXNB!v`SL`33E*(B^sd0DloL-Hk3dDz9VVs#n?E>%G)46y6H z?L&x3=-~)u7R((W6{&~04cs-h6Cw(t#qs?~Y<eJ;teZ)tQ*C=z2<EfyRvoi#23Eyb zd>Z<PXG?lu%~Q~$!0!tpDvD%`VKlbLV^Gq7*)a3N#tCoNP<Jd%idnW)qE%8>DRK!) zs%?9S;g^zV!?jP!eZqPu<Sp{&m$AbhA2(tj<-UNOWw-50xzLd|^TxKhP*X{!r;t74 z*dZ_Il5(2kSH~za7klA$+9&peUgxlM4=8EG?RvyknxZkU=Ayca$dy6JB$p$tk#sQ1 zp=`qSG5%_Ld{V~)JGf*n4juEUZUp9(+N%j8ajDT(RF{?W>lEW<lSDOdLduE!F$9-~ z6fC2v#<EI;=MCew?KslGe)!DRZrir@CvVlu!_^f5TLWW@IXElHLYk6FBot^|7V0Si z^P16~!m3Tk=Pk7aU?m?Yb&)9iO^Lg*m=To7dm!7)21|FDSFB%+%G#DZ$ahf`BY9uV zS5oft)p!e%X05IXFk@}Cfo-p(_Na<qEhEXQh=Mq>n3GJDc+0s+AZz*^df{Z;o`9(F zt0FmK#6d@8_+<B(A-djBQl?tPd2Nj1lvq#HC5GUu@bymGjj)eR7>B3V$XJqlu{z7n zjICa?eWHAZ9>a^T0^{UPW9PS&_!L83*-vj>{~;|Eb7pcA=`K)U+ZY(M9Tm(E7R<>i zNnfx!-_$mqh=+^)A}qJ`N<Cm9IR+Jj?ih5q{3&V_F>6M3c_th^lpja(>~J=9oYQoe z_SY33oqXh<lb2DpEa3A5N|C<sdr*>|mFdYtcok!=$SV)@>p~G4+|N(z?vY@61k8wl zy(3^|1nd(5vm#*M%N<?1v~||*b~|vjbvbL_0JO*LatxyaF7h-&9<L`Wvj+x(&V~I& z{tAz9T)X4n2;OnIKmlM+1#~`&^*ktVLZj+HxVVYO;{j<s6x|CH2K)t{env#zU?r@6 zlO|I{j-FEbo`DFwNY-7^q{+nMK#1N9lO7@hQGY7Kfgoz_JaVz+@s<{N3d;N;Pia}$ zgThD1N_iRXh0D-df4h%*10*~u3jX4?yfS5~(vL$*?fU0|`^lIh!}SnbJva2tPP@@l zR>(ud8!Ln1o>3^%PX}dspX`2daAuqi&WzsK=~;1*_C6h?z0<QZGUFi4JT0XCvwLU6 zLE7hZkY@JH&Wy*WtkXf-r%!ffJVy0B9i&;kv-{XEs=|*QAEhA@&xi;X*iXuy4o4&H zjSutA9Wm;!yR=KZ-FH;I_<R>_PNQS9U%bD|SgqmGJ3d)_Wvi#O!m-V6Z+XsNR%xvs zpPAPwZ{%8SWy1qc4qrO|a;<#Fvrqb`T-U%^`?k9cuI^gXBZE`7FB^QUL2c^brcMX` z({eWE7935_aK_PF=?1-}Ynp}7FAG`IEC6&@QksV5*bV(WHJ(7f8@sb&@%X*IVtwin zrA=yu7uFusPH;7k2Rf8AK|)RRQ&2>8lN%<3P{(q(QB+YnsV))}O>9V$Q=8>`uJy6j z2U|O97eO2r*^7gekT~LCkcPey8x&=ZqKs6O>54LFQD!d6_@$9-wQ<(wK%#QoZD7U5 z0lFqR*@~W0WV4K7Vk2BX8Jks~Iz}17GolU8h~7RU7UqoD!ZTvE&xCuCRyXYv#|x^9 z#$lV~>ULA7?^|?kt+i=6{H51hUK`S8mAvg}^_$H-wS6CKbd~Qr*hYJI^~DdBUfA>+ zt?`(n+3%mabg}lc5$~>_dEMj!?Y)<)woh8yqte0V$t6`4?3J=&1Z&%tti5gRs9v*T z>M2A+p{UZcy67%=UI`S9f-^|dv~$*ucR6sigQm#=G|}a9<W}Z~D^LX)5~e9Viyd9$ zo=V|7O2=8ZNV<xKT|%Hx8ge4NY^Q5<GJBb1_Q-uJtSBpC-4t<eu@}%|`y#?+dRJkf zA{4gw8Cc`X_w@ASpe`jGsPe;~Czm!v$cj*siai8)zqizrR?~OHh!Gyd0X-qwjEY~_ zKNk0UddB*Tu$GA+@SsjN#E%lHw3>ctX=!#()BT>FiC8b_Z{|kjSRV=!k}oe-A_-_! zCp#V?C;BLygn_;*JUO}749&gPGq4xn7>kAyF$I$#DwZUrVI;SRVdRCNj;j)xZLECM z3Zz6RiPJz9V#zDk@u`V-I+!FkiM|B^s-N_i`mm~kAm*3BG_sZO)0QmES(oO^82PIs z#~WXxwRrQM!BbCcNEfrup#>gm|JLpvS6vlrmLVjDSyq{7mhE>sYWF*7mhA&{!0B=f z!GnegR*6MnyeVcU_B1-X8K!eTA`nsYE7p4mm%ait%;tDgxu++$vLs}fQ-mh12D8d` zTG9QV&cqlpeE2o>HZx9Z2H>H36LZDb5b-32pkI97>T=f;MZeUtm!7}*VCJhGrJ&ag zee3B~CkDP9OVBYl6Il~PU(SIIImboOmu7&@i)l@yc`&JVTfvJZ<nhgj{Tm3E-9)mR zMM6%4l+1-~5`hviK?qAC#U6Ls)Fn(5nZy>Y{{NU#H|lX>f}JY&IP)Ca4z7J)yKdFj zU)=6`@B=B~y;fg5VCd#IcgB?P3U2@+-a8}WFi~JI44;XQXwV&|M;kb5A8kOY{1HHZ zXy9^82ox2EkxmR0N}s8Bh9Ni@CFRoYo5X_#1KGMEgM1_k9Ochs^NKuuKE#hEGsWp5 z(MSC5^%!3RUjbM~qBA{2+>#$5-v+_RARLd#nh=JD5K4WoFC0BcZB`=aS;%&Ykm)bb z`!6PhelJ=1Cp1weN)E7o9GeM4hR647=<P$|_z#ipDEEbVEuJ&dSCA)3jV%$I{iTYC ztoRF<HewM@PRLWQrav`w(-enx(Le5Jv*7KSt)=8%bN#O_dpLF3$(WKWT>X9#!L@k$ z(9PM<$l0u$`vV$e)y*RG6yFOmXlUxc)U#1M*5g~T{CvCD5T>YELY`$JHLbrTNiW~d zOYaL;B({go?mhL(W_8dnN$*}#hZ!wGc{Iyq*Xzj)<PMEL2@*Q@l414X+sD9Fch^1^ zqB?r^uOFQ9+&>>%nyJ0sc>cP3H}CvdPO962Z=8M6mNsi*O)6hiI0RLUt!-JEU4$73 zkO}ZOdpml2T+R$fR&u!|#B7o56U!yxP4vzX>Rh<#EF4nvlH{Azj#{d4ZYUaCCF<QP z&|G0ls}Hq0X56IsS~WmD9%Ak$8;``=G1{w=J=f)qEuOMLpai`~jb1!x95PQ$5fV@1 z2=A@S7I)mZ_na3blfV1Zt-H^=qQq@vGL^J=_z&eJ!Dyr?1)o)T<Z?$^S_fx=qo9M! z>2nl;(>MqrW&)Asd1OuRF{x0UGIdA|#_;*Tnep+by5Nj$lGBbgrjDBCe+U(pBwE!0 zq(aNRbo4^0$4l`K6K5#4?rZkc8rNeBhfB(*e;n#t)%WPvM#@LB!N_x(NN#7d2BbJ@ z2c*z?A{)>ZDK1Bjzk*7{i50SIL&gqgPo}!e-qP1CEgOUOIrNs(j-i0~GA<oAJYvTr zlZ7=g$wUP5hz-+5#5Zns?b}gx$DZTb^d7G}FFN~zrzM+)Kisfr%!1EH#bQ$l0vw6f zeTX7H1drk&jv_t?XgPd~F$lN?%7X#KTsXC38{La%^Jx^Op_A>D(LL!QN7xk=<1orK zVKO-v1~(?|YbYO&o$#K*vdRiVq$}t0in0PKDd_3pK#sRyI?hDHTA|#F=p;#_Y(SAX zdOi&4)SspGc~8PM5z5|Z5%3^p7p5CE=XE@(IJ>~1>@?wt^1Y<rDHa1G$|^km8ZYe% z>@JMN4M@w26tZdU#BL7G0uf9rkj;@CN6405g03ZcglL8CQ^!?vxlTZ}16A;a{iTEq zM1kO<@BsL&8SNjhDRagkwsY-|n6T7;C2PsfUh_lAgmxsu%nJoQh(p9uqGV+O2QRyK zdn2psS=WryPJH*uxgV~(wxyih=Wo7g?b2<XM#P%jB6x|49A)<Gbnr?<ELS>72d@CM z+7P?6^X1KR&CZcGNv-ttghLcn_Cj+y!8=%-Na&(d5OQ`zPYwMgQ40p9adbj}a8c~v z&gVC*7Whe(4B(}L<r#sju1f{G9@ob@0rR20)(Lf*4wCB01v;f5n2cN`IYWde!p4{i z;mTL`es<^Y_GoAC%UJ#CqMd1SD&%h1mbrTV^0~35f?k}4I6gKQR#42R8s%vU#=KB4 zGWQDZtp|lRAWOf&O+lgcfc~0PzW%hT&U7=X4C7BFg<mZat}=;d=wIxzGi8j(Y6wda zC0y0|!qslfv2hBEMFL`vRL@S;4Jj(G;+1n%i)4EpM~@;YyUHtNHIgfmO3~&$eC3=g zJ6*6^`&l6K#&r$49MWER@Z^-r)S@NY@;|KJe$UfwuXomNLdDA_cTX*E#<e$odEu#U zQ3X(6d9MHC+}`h(#he?#pveV{<dIcm6al99;QGDC0j75WeF!ITw7<|87){;_q)D#U zekheH4xmhmOD1hsHwM!S=OsFPD)ogWg37*%FdNCdidUe7%q}Nz8VLbH73E{pgV&Qg zdUS%E0KGF_KvcTdQPVIgAZkx~n(P%g1Ba65SRSHG6=oadug2EEs3hC;Q?$*K9WeVt zK_yCtxT)u=LeCVh4AGN-NPAAM?@g87Ao-f<sLYCJ18Sug(xHBzC_=#lm)5ZTu<~9z zi}q+s&i&FqsMpE4(s=kETYufGp65RjbAtH8v-}lhVm(_`7AO#LqFOg>f!mE(QEdvK zMoC!(crKArWOSVn*GE(*XY#lSw(D2LlqA%RNFjh|(#KPT<Ze<qrCwB7_0FaDj@{s> zj72iBtc>S*q6*Fnf79!vD!6HY3T!-2X=hB!J3E(C7cycu`S#M&h~sj`KrS3j!ebQh zXepLnPt+2xpIGr2>=GtRg&s?>mWIUhVe82wtf#<nl(L8$-H0Z9lIlRR$?OnDrMQU` zN_~rP#~_FH!1@`%HCoI4<0l?^bDLgF<<MU1_Wol<-hKmOiDhLet+j(?raYi!S=7;4 zI~pQ6+Sw7pISSA?2<J8YFvrJC%X*Qjjv1c<U1$)I>>n+pS*r&9IH!>@me7r;7^4(U z`?Y`ayAUGr6JvV$nz1><MvWexAl{fTwIG+bc41!%ZRjxpC~2Yq>1exvh}AbtEN69p zvoW@8n5aogt9+-~ctv<=&iS2Jvh3U6H+t^(+7rWGIr`<nk{_f3ZS#Dmc}r>!{V|rL z>I)WRtAQN$FM#EW4yEghlI1Wu%Xv|<4A82i%+F~pN=yk0j(68B=*o^=z3+ty=!+7& z{@E=cVu>G#re$>!&}F|a$n7M|fV?ion0=P-|1_)J^W7G_rhR(w{w=$^cCK{Ru7sz* z5}y9ho)?~db9meTiSqRK{k{9gSEc^(%2+~$_#f-OxaDl^owYmQ-|uj>hwgh0&<p=P z;a&uXp#P&(IB~~V{3D~dDk_Ir7hf++m$qKqxG~ox^zjoa<w%E;%Ssp)S4pZu`3|!x zG_0M7y1JfK<ix*Cab_0uYwvqv{ko5a`m{&C{_YdUnt7X~q8xPlnEQLr3_KM}rjdD0 zrb2TL1bGf;FlGaqZ>^5dm#(VHj&wS0AvC$3hA<?JPqvFP)QUFoOW5SAqOq9X7RS*w zF^!O5t%RayTNHZlpob$-O;U#u_kcpN`lC^7(}yb_w=A+`uAbIl){+TA6EC$9?NCdS z)yo`0L3I7qeVPUQzoa61bExg?19x5aj+U97^?<K>&?q_I%2sp_{O!ZX8yV*tyB;E$ zP6ZQK3P;z`UG7Lt^*Dz+hGQ)}%yA`3=Jbt#wiY)=jhu)r2y;uKV@&eZhhQYEd?=y! z#t5Gn^rG$*7`v#~*O`_wcK)uI88~W+D%7F=oZ15C;)+MgY8Oi`<Sd(c#kQ}{ztG5q zNP0a~5lp6-(SfYGBZcDD8j2YkAiw^TFJ|;%O@wn>#DYSnvrID5io#B#5It@5uyoh! zLw0g<CyY*zZ;T^6tgIv5QD!+R_Gag28e}eZG(sXatEza#h|L=Mmp*Y-`^&Vxqe|SZ zvN!gWl9%`EufH1bi$*WRl01=Atc(}hL9BQu*33IOsrU+@f7*n0r1evbv$b2sK@)|e z?5qqP#EJ35c?%&U{baD{syEix*ldR2oe(m{6G>u`HN+MPA;O7d*ZM~4n2cZ5i|Fz` zi2vMJkn}Q$E{dOe{@m7=Y`yR4(zFjJHPin5Lt*B|g2pSQY|AB6EZN4QTSSJ~+~oxj z7t$f#xC^;%hn03a-V}ZTpo@}Pa|1^t<Qpl{mM2Znu<R!PPhy3ACKkc6QtFH>-|M`> zZZv54a~n>To~M1kWp1Z)fBlvop>fp~VVzy%?#UZ7^))wd%<S{d`|dw4TJq<ZLc}|1 z;^{|(zE40ap5V~;aX{ZgKjs>@Ws0f@Y1B-*(N<-V99gwi{3>mG{Ddjd$|KnbIN^$A zwymnKe)S&K0rjNy%$D`E76H;+nH<D=E1gbm|4i3q&s=`+)k_;|+n&mvG=6XM$x=Da z89nsDN#FhOdMvpXDV=Dy-x4;5g1i&rd?y?Jg@6_t48KXsnS?ry#E}poZV(Be+gkki z=*65NOh%s~dd^5k$}XC1h!@v6v7<28Q)VZDE1EDw6zPxhMe7i9PcGFf-(j9S(WaaD zVM^|#fA{j$Z@uuxb=tI%yY6qf?!6IGKyS;~f8!P2qOI`-G;VAY0$K&JtYQJJ1T@ni zpr)dcx(lcbV^BcE8eWNyJ{bX(_@f2X6uyk|HwAH%%RDN~^(3GP>J$<RXrw=N5YVWH zlphdhy36Ku6wtu^N4`EVX!Vm??dN{qlA^*6Qb5<=b!bkryR%|$ISEyGlPa{ChPC>% z22_!m2gql;1u?!X30<ltR(FzwA5&sO+LsD?36EiuV$=dE^0wHo!g2-}>U9sJP6&Oj ziix4$i<%0yVFT%ZP@keaCn*;7vi8cIFeJfLptr|}IhkU-Y9>U54eX5>`E_T!WG7yD zVXJq*&HZ1W_m+0-@9meJTsVHVoFl{fw;r=&&1bD*DRBz#(77gY{fzd`6^<21Pc3&m z%zL!xB;}A?L>Yr}A>jaX%E6XaM1Cc@T-qOTGeAZvF0wlyMI=GH^PVj@bovQ|ge+Eg zlN=Z+TKYB{nRSeuWFpWK8d>L5w}VW?^N}DwVM=h0NxdliVWV<$hbIv9ggRe33_U$R zr$f_pe@<Fq<Sy_jO+Lbfs?ca;dJ7}RnI&ipu8>@a6JNYB*eK6_)Ppy4*rJ&kb>al| zO6@r{Gb0fvxSB|Hn@|Z+q(gOdT(p#m)Kr|If{Oo7eNls$4E60&{&HF;=O!ziU|JU% z1VON$Go`~iENGQJc<Y_ooRj%$PZU=Vk*c-qm46*Lb=8uzSgJL|b-vMx)xOTR37n25 z?0z%`)C}&2rOwxW;>nq+FO}E{At_esHOV?(sR#Z&b-r?!s&#=E*J+4&43UY78uI#a z8b+VlT!XD4WN)b6oCe85vv2*Q>U?`+Zw7gs!m*20=R5Q6Ni7ELUYw^rdhz5#9lq<= zR!)$`fBEzN@ry6{TdWDfTf&jt#CG8>QG1B<cwcx2=S0Uu>=w>-Tx;1aY%)MRS&5u6 z>qhEBN)qlC*7tGi%r^EhiOiBo9o1>KaHo#<PwP>%{h*}$_>5k+o&Uq#FUF$0sLL#- zlxDoZsmHm;u?IQkw;kAl5M7RG)WV6&F;$$A=I-fLW6A(%eYj6tj5%`XkM*BqmpoH= z6XsB{15=z-Y;qjL?o69wp$*UK2NK&pYkO9+;c5NkVcVyB+nt|mcv?SV*!JlJXBsDt zWJyX9`xBGN?x<@+U*plq_V{VT)A8tJdnB~s>3DQXbWC%c*hq|EH7_i=YS~=r`rPl2 zz4qqy$Nky^&puGI$(Q{vIrk^^8#{2}cfXw$YwnX<!iR9EU8?qONhX|;Om<6p1L|vX zOUNwPMv#^BVcay7Ohm(ECKaaW=o=2d=eZ<GymiAwLMsALC}gM)1%Zt}2`aTol4C^? zl8y%O2<2v*dcl||3}-Sj(cXc69uunCs3%G60?NWk%(mWv*#6Vu?iZh_S-E3}Hts@C z*1@s8JW@dAmbsV$%30y4t)n5F^DMWBhN8BMhN8BShGfP#9eLt(&KRcw%B-)9u_^wi zuMg@XYiFh=J5--rC8a!u&cvq9kRFe)qoiH+xG<Rswx5RTai6T3J4x)^!pbm38@%VE z9Tyc|*hYJ+;i}oAZkhj2?Xm+Ue_hz@!*$wiYr?_v5A-b*GViLLh2-`uJ-MxK9p&Wq zj(0Daw`Sk=&y90|_Pp^oKKv!+;h9~;7P!uxTR1y9I<{~*FL7K7mze6dL}m4uF_S%n z0H@2$q@8%`cqDOCUuf0z>r1VCGoUJq0wDw}IlK&~ncq?$dh_RF#^hQz#YJsn+x~X` zx8sg=nqeGnRGA&;@}rl`b~(>Zs3`8l8)G{H>TInoP9`&Hvc;tHqGHl&ITfR%IPMz= zm#uBIc|o*oGp>vYOR^DlyRO#<L+PyJ`bvG8SEi?x(^q^k8M3-3^<!a5F023DCDZ=T zzf#XD)^;6PGVEm2vH8-tHF)Ns56>Tv|4mE@uSjn5_ZIkETiE-02GDkRU)D-elP0wb z2Svq#NS=P$IVnRasy?_xGk``#{#NAcL#8B7eQX1t@L#(PJYG&|^N4>OTDxViN81{H zGW6_#0lG1BXniK_*u3G!+=a1ZT;`PGmIkzU&UMU1PHB$gwy2zv&UIt(<aBaMD$2`Y zA=@)=gb!EOl#*PiiG$m84Q)wckXTwWN|qySkf1OegClwr$tH0EgHX`|$5ii%gK+BN zeMUB(826<Pp-j@XKelX3Qd`d?>0Fcw$tIIz%V+yclKk|RQ6|(^#OjnuvLhroKqQWz zMY4NP9z|qG9Eg-7J^-cj(iBgj^^)BV1t~{Ko@-~+aUy;9|A`)t=*EbpA@`6(Y!>Zh zg}B*`F>qgB7Sib#X^pSH?u+b2i?n-w{@(TJhgQBJJ%p{LSFUUG@E<>or9Gqe%*R!r z9i6p(QBl>G_snMj%0_Kfbdc64XNiNfGz+3K=BKr1UMYh5&`n~`d_5jJhXIP{qc|wZ zG&jY9)9wr<LjX`;k=j0-;9R4`fzk;5lIg4M;yCHfCOR+4v_gtrW5{lrCqwLT<<cGB zUh;>d2X<*+U()RB#Yf+}LQaQwKK-)%rd1ik;!g)oRV0`Wha87+e8e}7BgSc9ocaH$ z(_rM8m<GDI+KO_*d7z7r?Zanc9>nWx;)xKixBu3O&~ePkH>$@}yrq>t{&dNRS9fO1 ziO{6S($_aHDKdqEBC!#CGunTXsh-gi9l>D&E3gM~MG74zupH3C*n>E%tOSugaqfw% z%aLm)-ACg>EIK6B6oVHL3;NY)9S}7tpv{z6#QQw~aW<TE_jKbbA|QIm11_LCJqkV$ zA&YpVQCp$Ou^}Hx-*F+HhNFx26LA|KoW@83p|VoX%z!_LPyVFgB-sj2p*I-9k*xZM za_A1e<?62&2YJ|-oS%>Xv6(`tFX3v)7;9Z@!H+uWD?&4(qQ0Ky%9cl0%{w^c=lA-x zq7i#On7Vbc+LL(kMW-fA|LE6RES)SxF>as^qPPJ9xPe7+J)pmuMbSQpmZT`E_{~pQ z6#2VN^)HU~6_TryI7)&i=`PFWW)~s0IM$A7y64Z&E*z_sj%`$VVZp7pNX_`+@BZ9- z{YB^YiY1Ow)eLbZ5+1V~ezKcA<`h7UOdj)Txe98ar&re?AFmf>B?=qr`IIRmRgCtY zR7!oWX%#hC-6!*AW1G`i*vWUAB{jA)yC>`Vb`LcD;W_P#OUiaHJbYGDDXGu?I#~6~ zOT5>{l2rZhlz25a*fJA9RwKaqjbcDSYkot7v((;PlPx#dP+`%DQL<fB8bU_1Vx&3j zUqrZUjlHe&z_AKd07B3H2cMe~8OM)55{{2e`LU5V$v{&+<g}72F>uvAw-O6c^v-f) zp2c=w`Q0n;daPI4u7|azo4;-SuVX3w<TMLc{bJ4DmLHyoHO=&c*yFAj@s)*5FaewR zE0P-lZMNH*W(qncA@wBSQ4>shesOoG#e54Pi*ko!&oB9!s6aGt`-_f26SAbg(8^Co z&Mu1VX&@|?P;|1NXEmuH!bPDq)%*I08qvw@|H=M(gt){5okVs=cpZNBnbL|8hYoAU zZs_>PQ@3^ci<}<M9vSY-ee{1`ia9+>3rfqvrXn!QQnCX+VGOT5Cj~{gwc`Ng+J7!) z?6`^2;>1aMi!=*lnM)<{oh5k1wqKpWDvu3siN7E~B@JT1!l?nvOd#SIjat2UQTQ~? zSZf&rWK*r(;%%)F8U3<S|7El%hQ1Y2LSHgr&jib0#z9MGDyOatiJcFDQl93BK=Q|d z(1B!K^CY}+lWB;0iR4>kD{Q29^5Y}+1Chmlsy#0#rx)ei{HIyheWP{!Wx=;|dWF<E zu`QnXr{|$tx?CMgBK3@6{O|s@cW!lTMO<Tx<8S}2jG@KFipm+1@PV}YPPDk&(4;*y z<qRkB*9Hhrw3_B9hF!jiPPh?|L}v(%EeRPG#PyaN#JO%i)<aRs{S2n5EPS%tXQtEc zbZE_F<u9BY$sKhNpUMO2<}6kUP@wwH$^!lelK00i3+1FWsZYgcVx&+9tousdzVGO` z@0X@&yB>e7^KbupKz(hrGV_W-*W}lH5=-|*<@@5T3q8(S54=>5lg_`t7*Hou@S?8i zK9$j=ft+6KLMKtZ7+sO<tG7KFG$@hl<4qUFsD=KqtVG)}#6ASuM-%VH&|BC(op?6} z5*itqH?p#c+I}iBlxJW!Mr;}h8W_VWh74mIBI$#O^Kd*OA>Wf}`IedC)$xdgoK7EX z<2AlJxecN*CO&(mwp%gQj$ZKx*QD>y(tgpq#RDB$zxSqe#5+Fq+1$s|S9Xmx^|2Kr zU~<Fd325p=Fj%LKL<QhT{zUebfJVjKiJ_daIQu^39#5Jd@xF!~<!jrc6~TK#qkG`d zm8_9n8p?nF@7bbZN?WiEsJk0}CbwR!KXK>$IX?s*(Hh)(?Gt}r`*}zT<ZVsDH*EC0 zxG9!E;=uC6nRX<0o<v;oNj|WAEug0mq5LoTK4tWQ<?KR`fSXSI(fO}V*oOSa+;~a~ zsD8s6IIw)=e{y(3IA%IYiMqOqR^-IL?V=sme0A;R>y{3<Pka5GUVC2|_g$Wp={x$* zFW%`-Sr<#DS;-m?II&Z*9;j9iE7^+ybuuYg{^qLA_?Xc;%Nme|7ZnRsi3Y>xw1@y~ z*bN8$c;#UmQo9naiSerk`INL|Hqq;3R|l`uivx!}a|!a2^x9Z^=4hTs`b5P(qE6m9 zO|=`1*qq^s*1^mx@%g{xK7y6p=J@+&=f2;<`OE<=_~KLlbIZ5Oe=Egy`4g9w47;mM z%w+-g@uZ7$c_0DwK@$BdB!28_^Yd3o3IG)+x4$i#2yhMp;bQR>VcdtIr=gpv>-UA} zi(evmr9Ml=UV%JF)%1)aV4b81K`^hU{=ZZrM9n-X{wh4h+-Th%IVD!mLZ7I{5I^A& z5y)r@pTq_+R{Tn!>B#Zmwe$BEk9!ke6wyyQwfmw-_ioFszpKyH<uR2RZy$-ya@%j- z{Q^4d3*J8RIiRm?w~v^pV;s1?fhpqq5haq^J|YJ#Jx!CFNq7vJE}^Gs%z8k&fWhua zGsE@~eQ<iY3ooSpTTe1K(nlH`vKwdobdh-5M}Gb5(j5g~e%(Z?KAzn@_3QDMNX@tE z)nk`zT(Xk4ECzg-he0YLixj%mlvS7(MV8zIlH_4zB*OeD`w*aN``m=T#uuy%1*-fW ze65d^UCau%Iw`G4>6&pfMXYZE@+_he#?2c<<rnn*x3-*(Rz&vYdS){xBmQP;kefx5 zNlkL`wYPSSezv92R}(+dMmiTh-S4Hx)W_{F-8%h)n?C-{d9js~mrfLkPP^K9TGh}< z)$D0i0h(p2oAk{Ly7MFL5V0`Eac?vZvT`!oY=8QIQS(@RtXQh0Fc1vFYD5kb4-}P> z)5bEz87n?<T*L$ECi#nm%(y8-ERpqliBywZR}-2jCsGcuUIg|`pO$DcG085K4U9C! zU*oBq^fjBCkLz{hSK5K+_l@6pVa5|u<!p9s_TKF3aBob>70wnUSDrIat-D(_aI$LH z-Kqxki{#xc$tQbv%Ou}M-y?>*WqgLkf*hJU3Bs9ix2mZ#L!_|FNz2@}+u6^HDdUj! zi9~o#-`$cVM?BuCy)f*a)dyF+bB<H)y|?>R^K`%Gy6TL}UX3Xie1dFZck6B_vb)*c zS`6qOTa{*-3;*%%)@kcRoe(+!gicJ-U5lX;rOR2TsSwMELnofmb*!yX=YjpNx@(<R z?7F#8m&uQ6f$GrF(%QGHrS9y$WY_Y^_r4Nmj_{|E5?TFSm>9d*>c0-?P1`AA)Nudn zR^PCoNYZMP22%=9ETW^WSv^VUnca_W(o|>KYTq*Gs{x+=PaoHY-tohxsoO8>BqcA{ zZ}UYj+|*=tZ0(%fNmi|}KxoBFg_eNM$5O#?mI5t6Z7Y|QUu^G8602jaWKEM?VFLg0 zRJ_$|eU!lA+gbll9A9Pd1@-f*Xz%Ss7oYd%cMjcjiT35%?%zHB?x<&_M7^_rRsW-F zZ)hA#qOh^0h(1XaFA<M~+{+N7m-#bqF9CYhysyRfTQW&*Ymv#v)7aG#UD!fWMsgi7 za`n2&iZ@-==N79gC;r$nBUOtKsnUzLisr>)<QaALQ;Zcg>2S#!(}E=ShL$(J{9yRH zOP8$DQg7dUs%&1~D^d)5%w6;MvCX%|J_d=tHfTPh4^~AU6{oLFE{E`4&SKaFQ1{q+ zO{t&%oy72exz0OHb7>NzSi0<yH@`YCe)&IEYuC2>)4uz=elkxA(UxBK|MOSQZ;E2+ zvcyp|d>1Ppf|H-p1|>yaKz{ou+P@`shL;TN<+}pTlc=bqqv4Y-xjo~dGeLqF0kbde zxvov?^-uNIe)rYwOW)W&u1K<|_qOh?%sD@gJ<qBBBXPhC8`^7+@VAr?1Nsix_R;>r zaF0-Npb(#7;MKJ5ot}1TQZAkCJsqQ)V-1_Z*i3}65fx~rY<aR_E<MIYhO7P^=7it) zrq{+xO-lOIdumc5Hpgs#RBAFkE5^y3-e8bMDh}vO|D*TUxqqE9MoVAV{*FG*gDs`l z_FT~FP{SwB+89f-$nC!gyrhNDC=1y<EdX@aPsB_5H*G_&cMs|3<Npgiq-`^YoYQLY zod-4d`}cl!Syt2eQUp66{vv(OV@vLcBZBOxM@JnjSt1lFeGJL_n0KIm1n3j94B7`A zl62M8)ctAu>LW(fyDVNg@jtl&DYnCY-mX?dd++UVulCqwGa61vDZ5OHWAO1ld*`g4 z5pzeCTsKBXitWVlIE3&xi{mjsr_ADL@+9>LX_De7gP>H~P}j3L{*6mVIuhZGh-8AG zZM@VgdmNH}Q6@g|868m%C9{N-&CS+6wn%=lVNh{k$5X%49&VgJXKwM|UeZOf@p?K| zH~PQE$(%>5(jwZthp(J-Wv2^PYd;HQ-ngzomqXeM51yP-nOd|&TmFaD+wXb0?e&gL z(fA2=YU)c98_d6*qush}amS5&&v`*P6sqV+6{4!loOaPa?r5{%?U}7r)K7gGU9EI9 z%eR765smi!pJugtzT1M=v`-J-zh!sV&Xo>r^4uZ!ef&vTRd{B(zrbIJ#j-aXt_b8; zhW&YYUApAuiIfu-*0bnFKTlT=fn|kVe8t|1%kiIw06bUK@1}rb_Uxt@aO-xhJG-2% z9j!a_c)xezf35aT-dm93+#B9IJH=Vs(K#6x{*Aw3Ty)Rp%)vE<p&+0dKo2`7;F`)% zDWF+^UUN>wHI1QiKsN(Ag=bIkv!|RvK=kZD*92Vj>_As3E_!x`Ya%Xsc804Q7d^Wu zWg;%Rw<x6?7v0;5dpr5wPTbo`_x@t$-Fcd;+fALmZ_&B6)~4m~mtJpqZAhC{^0uSZ zZ#MVT_I<F?Rle_F8|~fI7e7>bVbg20#$%3Vzklk|#oEtCyt{tpb(0IU_g=2rK51=_ zN^O?!xz@*8A8f6?@nPP%BS!somv)J_`;Mv?pYNj0X>@G%i}!aKt2JDD$0v)gZ1t2@ zIJVjCEzkMODy`MyGxIv-ja;j(Y<S?w;Y;UVu9fe2_DTPg>l!$;?<e&9P3rPpzf6*? z84<Q3V!~V%k&~*7P{48X&BWA}ZCj?goGl$KQzJ}mJtAksloaQxNvrblw_??;Al+GD z?ODv)v%uQ3n6+bZZ!F&%i+f}F-d$kXUCgq(z_PoTWtX~gYA<yGBmM?)5gVH}$iYST zIyRVqix|2D_m=RzHMqBi?|p@PU-3Ox%7j{13boq=Hf~}zZUP%OF>6oa-buc968BEh zJ*~l`zxjM#-|_2`Bv*QbT<Q}%Of>Z`nh)s(0mr@f66so`wn%e1TR2*zMM&4QHVYlj z;tpSpL0rv)Xp@pt+a`qu+YN*0#)BA?GPrh7%4pmhlrjZZF`x-4Lvf8|XeyxTfC^Hs zz;!i4*8?g9RE1}&_}MBvTSd=mQ_np%{J`GDHzzsR%*bFl&(8yu8UL!x;(%lRd>Uk{ z_N}_OoUI(Kx<m$<I)Bo9NXGn%`H+n5lePoiUa=kU;mL<F`45K=)5Px&>FCeW(I3*$ zpQWP)(ow_GQ3L6yVd;1p%HU~M22VRn0nvp16w2UJRtBFs%K?F#wap<#%~^_?LyDTS z6y-u0<gzlzg)+!xWiSuQU>+-jd9HFm^z1U+TgLa6;odU7w+_#)<7e05*>(Kv^SJjs z-+LbSp67cX;JqL4dynGRqx@?=n4Hf{o(U$;WF~LJy={DNH}37`d#fOot5_;mK`K|V zr0&PP{d{jf?(Jtu{rHXt*UwsWbY_ywOG;AlDJckQ6Y#KkYV)2hXLCn$R0H5YQr!94 z0_Wn2N6Km!YrbYrt#LiJaJcoDPR;VYH_fuOPqTb{MYA01rdbY&(JcFfG|Q=o+Ic0* zzWsfp=YFp}G3=G2Umh&^K^x@I9#}skxJGNafBeKlZ*Hs9EFZ+xEZ=a}!j-S={p`-) z?a|KOm$CZOMLW|p%W(l(>wQm`rhPc6nfB)&3NtqrG+wD)eBbJF*Aqp*)UubJzxiP1 zs~t7V=gT#ZGtaT@;M(`K>sEdJ#qF*KKhP|Pp=+-nobud1A6uHKz212Kx_dY8{8;m4 zjQrJ+<BhM;TD*DB;Hf7zq-&PbJ+#fCwzCi1b=f;wW_H#CzUo1vwC>&B$m)95HRH4s z-@S6~hwH9wsaduGXxHBN#QJp~4fSb{e*N7ijy3Z(X${*CEAO?lXpgq!+%NrudYzoB zsZfXITV<Lm(6)T9L{r;nEMHgERHcz6ZLU4_YWh<{H%)P9mh-bUmFcw9MrzF(`j<X& zRr|}VxhqXYfNyr~+fjALp5xl|9<MtuI{SjBHOq#3%@T{$EaiNfW!0@&PJ+`chjD3^ zY=&l8E@>8T_3ez*jGigZK5hGSOmPnHIJ|p`GdDFCcP6!+ggXVEg03mfIjM7SXKshN zUGO(+?qF!yw)64p^3>(HzoNqm++UHk0{2(7U4{EwQn%p#)(%^7e{0rO+~3}IJMO=o z`Zn(G>9_}P*^|9zI9#;0dvX7p)NgSAQ0gK2JMhp5XzR9zalbajnTiW{aVA(QE&&Y$ zgf_7EZE;b%i}CBl{Hw>=5nFJ9AAhrP;T>@K+Tx;iS!kEV?fL@ht3v|;5x)Lt*Pq*s z!mp$F*U^AR>(D?z)NU-=jpcUJ@ar`G)r)&xzUOtO0m?=@AMW}1UM1R9a=R*LJA7?D z6~9(FGjI(ARD*Uk+-@P-E#!80qTQX`?oPD3liS^ec6V{R6==7D+pR>qmE3M6+O6bv z52M|~+-@V<ZRB>Fob7RxPG`JrlQR?76@Z>byQjI`D`@u$x7!JPI~m_j;M>XgUPHUr zxZOUq+sEzp1K)new;%ZSGrmvJ?o)1e9PN&CyA!x~g72LGT~07vPT}4uzSqo^THDM; zTs_Ct4j0ko99IS|qDymETU^Aqj%e4B+jT;_PTZ~&+I8Y~m!jRJ+^#>`_2+ikXqV0H zve7P^+YLm!f!r<!?Q*!?cvt({@h+mvcvmJaqDwB?<#M}Xv@7Oz0pJTTz5wtA7~c%E zo5Ag7qup$7HwXCUFupm!H;3`fL%Vt0?m@JBklQ_kb`Np8htTdJZnq5WmT|kaXt$Qz zJ?ZLzjeM9#_?v|ba|vESTU<n!=g{ssZnp#Nc5u5LXt#sgJ&$(JbGvuZ?p<#89>(z= zkK;X88X%I>576!dZg&{%4s*LB=-(0U-%<Q}lz(m9Ahot}1L9Vb2JLVWx0*Ca!$nw{ zHfW2BXCvBO%<Vi4+GEcaQMV(0?a06O#;?8k*Gyo^WGtD$lF3-I&@PMHU5R#Aa=Veh zGLo@ejbE?kU-R&59{)NGSf(+SX}~g#vE-v&KDVnvyDDy14J_4+WhQ=|$-gefuZ#KD zyMg6y#&S2X+|5{)pxqK~_XyfO!tEXfmPZ-O8vMG3e|-kOKEuCm0hTR{Wec!uVJzFw zZX36I9qnG{cDsOO7h~CtUw8AbpX1lh`PVOi<qO901+aX<SiVBLuehCtb{e;Hq_nSf zq!4voDQ$5P?OUd#;vyckN@<6Sc+@H-4HxmK4cfKgc3se}3%9!*ST1KQ-SBHS{xuuF zX7jHDfMoz<8IY0zi00)u{5p<*%}Md#{2^Ef{OyNpC?GF>_42Rzz?aYX^3j8Q?m-B@ zhWOVoFozj)7?{J1c>#W1z`rg;uNHEz7N%qZqItOp_!cp~<!HB@+pS3HfWvfYeym8z z!bS6A722)hcI(k@J-6F{b{n|e2DID2?KYv^CT{l<+P%c>UdDT0=J&pg_rA>U-HCQP zx!p%-_Yt@I82CPBd>;ef$Bb`3+U@6d$I$K=w>yq@$GP2cv^&o2PNLmOZkOVQeRC7H z&T?nsqETLedl&G%_U^W|?cK!HG~7$$d%bb5H{TnFd*k?CF7D;>y#m}T;Ct18su@}U zXaPgZ04-x^J)rdry#eSAf_A9Iz8+)A&vZ0t(g==v?QZwYxaLE`2(BRbFSWD`t9{!& z0oV0SohoD?AMPD_xDXGN>JLvLSUo%y4;SL$n)dtul9xJXdR|FhIY(-%u^?#G2{9tx zc%ts|C%0rMH$97b(7IuBTnHBE&`^g)5g-+(kp0P${dp4ue$(BZ`}3x|9l@$U+33$u z^ym6MJ-=V@;4i;b{mHlOPrji){ir*w(4AJ?9RUs2yHmU5i9fv6=fQ3|M*mF(HW+bN zV&sFQduI^JmO$B(Q3^<ou-AG2=-K(Q7QZBv*pUN#=R{Ksw-}k+tV5`p16A{ebX=H# z`suxE-{%pn+xfq1L#S}jNGWhNkH$s!7#RWj!DNK*9N;^rA)R+3AUWEzZ*ElHa6?rC zHCj7<`fsW>j8^co1yHu&(F#b8_TlTixodxTzm`yjDuM|AIUFsb`^YyLAs|tlLtShN zd`%nT*m)hgLLc&|g?GQ(HuOqc9Urm7Fk~PR%mBc<JPBE2AZyIy6;QU0?7UwLFMVpy zv=0R`FJdv4&f%usIo^UJSlbZz8gl0ZBs+Kh`PpOri@#f@<EysAS8c#2h?fF<DU44* z65qD$gZJdmJDSD#g29_CgT+13JN?t6G*~B)IeD-Gl7nq{+iji>pU&XP0eJu}gWTa3 zqr(5WLW)o|1FB{$cLI`fw{GBdSKfK!o8RgEvY}frDCs6DF$CQlz~|s`3P_H#;jHb| zj?SF}IzAh^1%r}qva*Bv_k+7RE)o&}Nqqj=M}9kh_3a_Thm#kAB*q4z<C{EOg37p5 zgb;oYgx@nl0m+H+!yE0>XFYwxW=4oZFsm(UpoH%VlmHdRlfZb=O?pm1664y{%O3k= z+}FS1Ay?*ChAdMJr-S0IU~gr9D6brcxKSTZ0OJY9C?JWkakuWvrp!BXvBGFkevDBl zKY3m*Av_L*#~Go3Bo$L9fA(3+r?%gxBjg?$s7OenJBSTxgzp&e9b+O2Na9-*K2)?S zd)@#YpLOb1=Ic{e|5za*I|^h+-K44nB&GTKsbhvsyyz6j1HDq2Pt-H&0o;?cQ_T1l z$i8J{0+PsXp8DG@zy0t?6(NH_6x+#5u|P*Zi_#+M-6<eE#X}X4<i-EoeD+n%9_uay zx-y?QVeXyc1A50M=m>Bf;m!$2PPVz%pTFp$^?R36=O9^?Aq!u{T^=n!k`zYxFChFE z^Ho5S4{xnMzP;VUoz^kwFi|a?!#zPdXcao&fkvtUnZ~^nkR;uZ8$P{eXzHXt=)JQF z3H3;jPV`L|l0(3Eh$$x^**VvcqHTj-*t1*5XW=W5C~S(aUjy0K+&KZs&i(3dovNF^ z@k+Ul%)$mB6Knt=+3*!`eZ{y0B-xPFb<nV9XJ560aN%Sz-;7`Z>EpK1woKk<>O~zt zCP?@tFn{Sr{2PA>8m(KQd9SYAII(TjK!v$D24>uk!pveQFn<PopD|_uNz8A3zT7|N zomc<F<M+)7g{p}JZKAu3&z90{#vA#(9C3UfknVFMN2f!>_3pkmWpbBa?cTczNW*1$ zNC5$5v|1218KJK#OvSdaC!(Jp0p&-`bOA|}EgpTM{eqS?Er62F%hr)b_fy`EpzWQZ z%+v=!`vLb<KqK{@R)5y$tY2(xw+LwYOROeA=X;D$|J7OhJ}|w{%ok9mj%n$=w|w}* z!~=dJB#u3?NG084OaPQr)&f~ABNLF6N|_gy`H|{$N7JV4uy1e=uHE1s$v*A|EGz)8 z7Y_R-+}-5PfsZTG%j)U0$kSc$M4J9|dxF)|NO8HR;OU%ZU+wYc{pNFhAU5t8TngPo zk!NU;Ft}j3U2M4pB&Vy)7K=<^AkERJ5szd!y!GX}x4zunp5P5)BrDwmYgf95qc2&% zTf1@TWJgEp3s=5b6q~p!c&>k>g*DrG=*@ZTYzj!KT^W+sx4h?-WJubqbY6iV+X$wO z2)K>VWST_u>tW~32)@lnzhr(vVNv{XBNXO#_G2s}u-VUq<t%3*LYt+)B2Uv%SX5u0 zbPYv7=xW9yf<srEu&i_4j6f0fMILS<=*x$;fW+qzOFRt_Cv6~v#nT{zV4cJr8%#&c zrUsA8puXya8p@NduINOD-U*6TWmq~f4V@?k78$a(V%d<=6>D;VMXc1#ST?2PW34_N zSnlpW=YlsJ$9dhu%bupudPraO=(W`}zH`Cka~rmY{t=Lzi!udb?M=3;Ga`mPc}yaX z*wZwofv#zYB+{6QZ_w@yOnRATG_Oo89-X)=g^!EkgcfUqj<sRw6Odf$$mG3Tx@O3w zYmWO@wK?wJa=&uiw-c-{U31-4hydJ*{>bc&8kG{4@vgy$Zwfw(Sm#L7sB$4LxhyU+ zw`IjL+Bp(Y@Eq>LXeUL)b4*yqI_Dxfz7Tzp^#qoI>~`lM4ltRK>~@bJSgpaQV+~$` zhh_50+J$pmS0F$v=AZ}`o9AG2*DM5%=K_oT$e+R@1$S=Oxh!r-YM4ZAe!=`8o|IWM z%aeF_XIw%&MA+Ia9?e}-@qUVIR1^%k>W`mgYtT)?o+15dw4Cy`5Rj@c5~Ru?eGJY2 zF&iWSjnK`A%ucDkK|M7jS^uIzXIvt<A)<)gP2Bma!BoT%3(z%L8X~!qF2!uTyJPKm zcUR`lc!ZV!D>0i6F(dBCtfT6Iq$@)FsklTJMDX9-g;UO{2>%mx<nAwtMd+obO<6Cs zN*Rc#rBH7of@xN7ZBmL6&8z~VQ#)Q+Ke_c|Z;}ZR&J(Y!Y@DiU;gUu<RbsL61xWn` zyFLPvu8+*K$}UDs!G7mp<UPcE5;+j_eEQUREAk<?qkpn;OBq`=D>q;oY;aFwVsCJd zCRiEUfiSjY;AGNQ^+6GPzq1SaAWXH$$fTM0{i!n_eIUIllgU;rJDr`8=@9}g@;_#Q zehpY&V=VG0dxb@fWE1GINvDU%F`4P{G)&{uY#QZO85?tSc}h0I(Sod(!z2LK%~7|M z=?G7gIg)u+)d@wA0V$mkq!vRFp=<L{2BnNeUCSh3kx5#GMGa*Ds#^x62n{2`-ewIm z2z?opLNh_0CTzj7b?8<WUL-(Gg1de8_B-&TOqpArL^^0NE<pp49x{`1nd?@hib%9% zURq(1y1<dr1=#^X3Xv%=lfsokaz_(U7EmZ8lAv3=Ze=xzT&_t?ZZFtQYEl+#s3-N; z5AQiVlY|;6<xHbUj+i=v)Xx(go_+B1VZR!cmp5k2RbwYkxN2<PNT|lhlr`LUHfi1j zD<1l*>p)pUV16-jTAgtT1thXvW(D*C)bj@}>cr=slv#}%Hu#Iu8^s&}h;%~g6WnJ7 zE%XL2nb?E;6l&vBRvQAkTJN2#<xsto1jQ8Tf=f(Uk(4!0*{7Y;Fipt0kkuzvEPa8Y zukJyLRJPfJ><<sJKYNg}j>C#208#~XOC}PWW)Yd;%14Tm)Q2p{QCM_F7j!RR2|=ZR zNkR&{7iQo=S^A<LRHV2Qdgo4E?}&W2`So|fRNTd;V)d)%?QPwBPANDg*Klk~+eJBl zksqWn<y9k<9Kkkz2v&XQ?g~FpK$2DRd#9>@N)7adHtVbVI(^~m05*y;2s{@T`8x6= z!WJxZht6d+fVv5j8kj$OKB)m&L#r=+(&f^p9n5e$-3+%wq5`n42-~}-BQHeCM;0}y zw@TU`N;|~M3)EDY1mkewVOmzmLJ-T7$We90C46y_y)y9?xvP9!BowmZNnug6^MYPp z=Ww=bq9S6riFQ8cEL2C3leX=t>`CMIHlJ+8aspUR=vYMkfEmjvU^&HDWEqyiB58qs zAS0=}B%)5ktPy;WGat*Dth7>C)QEOs>9^A<jDo0*FdK!}VDDdJdq3x7{@N48)k7>; zRt#Oi(tv6ilQgWFy^5qk7V)Sj)hJ$uK7TnyC=QXOG%Jps;LA?t%hsQj{5i1W?;S|5 zQDVdtvEX|=M<}~NlY}P7*;tR9%>jP_$vA_o`m%Ouj;jkw97LBy;e)wL^PoTGvHqz2 z-0xdbRM<gbQG~4mVXJh)ilP`ZVQawT8fNnUROkM2=b^1HMHF@nN3Yo6=tYHE4?qnZ zV2v#x>FCKyHq}2x_=hmchxAd3vJLYnmtmC4c$9<pe6-`D!VB9-M=#VHYLX)v>F&<8 z>26_;(=nX^>yBP;_gtiONr}jsKx-dXLRGHRRi!BTF{{dlVKp9RtI>LX=aZ}7-%w06 zLO{|Im!*5md=ae_i_wE1%Rvq@2}m+uZYPMYHV!yiwW8(5#LS7=G{Gl&CT4Hq=*Ohg zNnJ4xSxaag$9T|kyiQ9|dSj+#E|%80ytIDc*#~Mi`Lh3|ut<s7Gh)wJdM`@I#u}B% z-nn~;j-767c=y#^+OS!t<N^hRqC<-m=?|&EIRf1xa{e7?@EwO01vF4M=Cb%sbwr8A z3h2rex~>$J2xeWm3UhK5&q-N?X~ohBX1J4XhDCjonYow3W4V+Ul(Lx8ie(2PF+21~ zjHm`O_vLwz_IW0)+z6uE9GD#9XYa1Pc`o<v*gH*_nm$wekeehcCe=%&kNIeWE~thP zLM<v|%spSzU>d4q$j6*Ea@YMW*S$AFA(8Ba4{!x8p;<+>n^^(e1qE;yD*(CeK(1Q* z%2n%|?rh}phqA$W6VXe+DyGmAF@-F2L4MKM(uG4K59QF4C_c<FO4Q-Ghe@JjJ+XRH ziol+pd$L#-JMPIcKDoDWFBw`{t!#O6Mb{N<WKlk8V$`aFRpeUBeHn77YJt8RL*1<p zbvK3zSPiubL!~&7EIhTm7F9akaj|ob|5N>r$w5bne-5t6z#<Eotyrp{kg9ZrBx)MX zoUegRtznxgPkT{Vr1-SLYONKz1Ipw7RIX$;%xzMpVu?>OD7Wq_Buaep5h%z{5w3<P zG%`C01qc)rq?7}TtRYrdWLGi~Imy%`C!#LR+?6auPO><1BCDSj64jMCSh&s67jB~d z&%AJ(hlSfbUbxBQhK+L&M@OgP>dG|nBjOF1=b{Uz5~tyU9OG{`uE7|O{P3c+D*@LP z@a@H<5+#e~Ni_pqnZaF=UrDuMal-|6>n^Yx&KO{$lp{(#7Z=SDSxRojl8wG(>wOXB znC89=MCfrKhaP27w!$Jgv;`d6qH{>p*_k=C4IJ9W9Fm3n3W=Pqs0i+fi>EC9Pqo6P zX^TqXLR>U;cO6+W>}1oi`3j5Tb0-X_lRh9(hiV?sr3gV@${|Sk%@HdW4|JZ#$)*hd zr)p)BIYU3@;v(XveE*BbdmWs$CNFRJ&qoZoX7t3o5o7a)Oq@6&7q%@`ErKk+S~uBw zgVo-dA>_vBRNuTjI-a_;tiYdNStR}u_Er@6!`Oe<v81G?<K=vOb)Z!4&8rR+gp2WG zRwnl5z-F{<-Zs-ke-E;;9F~!mF>$bSSodK$gPpl)xqyBBd{YKH=cLU6ygY3={%%Rz zg1>L4y^X)$q<w?GDDqCjMbO27E@mhTP!>a@0F7d38lY(mRRXGHXd$4546OjPf}xFo zHZt@IpjQ~$2WTHd#{nH@s2O~bW-fYfM?f7J>JO+tLpgwQ7%B!-%+PE=vl)62(1Q%E z1+<o-=Kwv&(7S-%W#}-V!wfY>IcMVrJW4<pGt?VUZ-%Y}bR|Q1fbtls0#wD&VnB-- zdIZoT3_Szr8HQd5^g2VI1NxjH4UooAODr2&rqFx40P4a}HlS>V#sM0~kQb1bp%9=D zLkj>cU}!m@<qWL{w4R}t0KLS}M}R(J=op}545dJ0rMT(67XZ3|p)^2g42=Ucj-diT z1q@XKs%B^bpal#q1GJ2x^?=qh^ah|e7~1PTr*^M9V=w{@`f(X*qDjqh1WxA>-M<ob z&1PG56rRyh_OI?+_G;fJ+cf=5UpZMbv=uT#%XMKQczhOCPG|ATNkGzhmWL*&9w`N~ z5PRho>QPQn;A%D$i&Abyu`5OR<mn$a!O|nHY>Z3<3Xj0|1FXjgj=H8}L=-H2^y0~f zI(*l!t?Yy$$lj#EK$LIul2k9{HZ4n0(p`*;g6wkFv0U3!tF_GrcR2#rHEgpsxC;nY zLF_aHvHRg^xs6A5qeODY10T|(`;eku+{~Sh@F6?05BX4!mhE3!cKc|-9j^^{yn6ne z&xIA-X#nmtVD1P=a%bFyo~(modqMvpLWI8t!eoLlnL1%ab-I}_Ss+Xn6Gm<clZZ-` zwHXaXGg=SRiJc^-XbduCg}BJt$jwX&izLuU5NM=MAW;f$CeYO&(A7+!&3md(Hn?Zs ze6>Cf#t3NQepEn{OV>D{`MJA!?dQBa7LbgR$z9y$DAjUzKP2S`GwYXQQUcZ`a3%h= zl36czXIVxz4JLh>Zqh{=zuBbc!=&f4Ntc_fEJ!X#T;y^+&Mj)$&E)BZICnRWbISwM z6%sWe!wC6@^^m`)M>kvaDun#2IOH$)s3|OxQ%x|QCi-~9776osnqoXnc|3Bjw)E~* z!E}y$7BahYnW8zESb$afZ7$Mp<PFH<vu#vDb%Shda}X+_8tHt%Izwh6oj;S)`EpO3 zWdL_$0C(#H5IZ8w16YCqEa3sjV`wE3!}Pfu)8}q|`iKn`=IOHp(`N}!pRM61L(dKv zP-u&23lMG55s5t&W<=Y7Xd5HC>_Ew17dHEFom5aEH4oF>lMry3$}~-PUrn$IzD!5( zg<`34@1N|3Qc$}v|90u~Pi)*U3)pVVzui3l<O!)ZjM)Xo?9v&t3ycA*GiEm!vzr;y zZ})~@Kk|e30X=kM4O}2(qX#Ysl7WkFFloQxz=eQh;6i@bK@Q2lqAx(%FLcU^eI{ng zeg(>Y#gx5mO*nY|fxd-`vZ`1p9i{#0s6L=2T)I1-U`5%fpe(KYPo9`O`J!(x6{Dg$ zu>w-u(Pdd&F^1c$l4SXq2u$tA*!FV{TtKqcOMW@chSDQJ>5)36M}pFTbxL0iN?*;C zmit2`X%x4s!R>0D+hWU*ncFkL?U~H&zN1Rqt+F@vwCRHbX-tQ1;2nq%0oMEAf*x^k z8dIJaqWYk;(Q$0KKd$G##l8_UZ%)EJIGIB3f&7%S6-y2l#W^XXg(gX%{W+sei?<0W zL9Fz{z#_M$DlBU5<YO;OzP?BoJ9^AIp#bkFNSO#M@=OV-)Y4>hW;a%~yY)J*-H3hy zRw0YI2w9L)llx$;T?ivi5Y|<^*fwP5NfolXRh-o=9owk#!h&0GQCJjFH-M-cbfSt) zKxU$D0#P?HQRNO?g+-BLA<WG}c(^3+Vv~|Ng1HDGzeODK>$mr-TTT`&X(F9Tn>v0~ zk4~Ew=%hi4#5aP+(uk|%1SG5E2KRe-;eeZF-_Gj6Hv?tec6FF^J9;AN_1>RgB7MRW zNkDQU6^+>Q!PKpjd#a%-f~^3-R_Fv1yQ|CuTLprxVuHy7LL}$=L^yvBxcvarYq$Fj zf)(dSfb(O)d3n@~%{+P(bNNwyE<cL73|OB>YcQAB@LZOsw^~Q=GTiK!^;szPbD7=j zofyGR9)a8}t*|JTe~c*a$9j}k?E5kW?6B)AAJ=pYMINsr=>RftWzIrOfQ5QkXCWp4 zU?xMO+C@kTEOKWetg{Hd)FSs43=IV|lA+OnCNMM!5Q;DHcN#8eR{Wig3xO^C4da@H z9>}Ay)HoDBKL$TP*7+%Rt(p0`AJo{-)JUB+VVd{w<U4iIwb`114Ki{I3X85#*G(Y0 zO;~gVBt`ew-`g)cxp4e!*(-x7ng&xeO*chi6Q{Xj`7lNKY>K|$GPl#YzkcfnAuEwe z(RS`Eq)4w|Ico=!0@ekky?ZLsrDTZSYPf3ls9Wa$Q<*VEnshvwj!HCP#xe+2W~>Tk zj6$mN1Rlv+6?)D=rZz|CZ4L^i0P7+?5q{i6R&Mgt9{I4^kCp?b=jaY}4*CsPJzRx{ z>CN)s1WCL|5z-FSfbMXK^_$rEYo^@uh^#%&ku`Z<knDn*qB-udc<m$}e2yD7!#zoL zVLG}%-jO_GNItAK2j*bCm*WoV4_{BPdUz@xCc4YRhvdV`ER4tC$LoV1kHG`hAI=5S za{1xWx4e0@<bu@~3Q6=@(pjMjufEMd{}u>oP&dTT&1*gZ$u-~Q|9ZCKt`{4>z#5b` zL69e6*l7sAN^X}CE|#u74?}$(=3Nj1lC{F}2n)#@gJ8es8i-mH!5*>S+RUC0T*atG zq2;yw9*PuBeBVJ7_0_n$;0re*$x?%eFkqI=6nr=(4Hrd(XCWdyiz34KI~>>542=Z@ Hv;2Pnai_dq diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h deleted file mode 100644 index 30c4d02c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h +++ /dev/null @@ -1,49 +0,0 @@ -/*===------------------------- movdirintrin.h ------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <movdirintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef _MOVDIRINTRIN_H -#define _MOVDIRINTRIN_H - -/* Move doubleword as direct store */ -static __inline__ void -__attribute__((__always_inline__, __nodebug__, __target__("movdiri"))) -_directstoreu_u32 (void *__dst, unsigned int __value) -{ - __builtin_ia32_directstore_u32((unsigned int *)__dst, (unsigned int)__value); -} - -#ifdef __x86_64__ - -/* Move quadword as direct store */ -static __inline__ void -__attribute__((__always_inline__, __nodebug__, __target__("movdiri"))) -_directstoreu_u64 (void *__dst, unsigned long __value) -{ - __builtin_ia32_directstore_u64((unsigned long *)__dst, __value); -} - -#endif /* __x86_64__ */ - -/* - * movdir64b - Move 64 bytes as direct store. - * The destination must be 64 byte aligned, and the store is atomic. - * The source address has no alignment requirement, and the load from - * the source address is not atomic. - */ -static __inline__ void -__attribute__((__always_inline__, __nodebug__, __target__("movdir64b"))) -_movdir64b (void *__dst __attribute__((align_value(64))), const void *__src) -{ - __builtin_ia32_movdir64b(__dst, __src); -} - -#endif /* _MOVDIRINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@movdirintrin.h.blob deleted file mode 100644 index 5c73a0e15a231a1fe836e5bc2ff951e5722fe333..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13210 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 BB0&HE diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h deleted file mode 100644 index d2014b02..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h +++ /dev/null @@ -1,40 +0,0 @@ -/*===---- pconfigintrin.h - X86 platform configuration ---------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <pconfigintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __PCONFIGINTRIN_H -#define __PCONFIGINTRIN_H - -#define __PCONFIG_KEY_PROGRAM 0x00000001 - -#if __has_extension(gnu_asm) - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("pconfig"))) - -static __inline unsigned int __DEFAULT_FN_ATTRS -_pconfig_u32(unsigned int __leaf, __SIZE_TYPE__ __d[]) -{ - unsigned int __result; - __asm__ ("pconfig" - : "=a" (__result), "=b" (__d[0]), "=c" (__d[1]), "=d" (__d[2]) - : "a" (__leaf), "b" (__d[0]), "c" (__d[1]), "d" (__d[2]) - : "cc"); - return __result; -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* __has_extension(gnu_asm) */ - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pconfigintrin.h.blob deleted file mode 100644 index 2ec9e9213bc17cbd3705decfa1e0d2d977f6dfee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12900 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h deleted file mode 100644 index c62080be..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h +++ /dev/null @@ -1,34 +0,0 @@ -/*===---- pkuintrin.h - PKU intrinsics -------------------------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <pkuintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __PKUINTRIN_H -#define __PKUINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("pku"))) - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_rdpkru_u32(void) -{ - return __builtin_ia32_rdpkru(); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_wrpkru(unsigned int __val) -{ - __builtin_ia32_wrpkru(__val); -} - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pkuintrin.h.blob deleted file mode 100644 index 036ca7f899f31f95fe615b1fc732d2dd6cb55603..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12606 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 O$B&)cP=6KA-v0sU!Bc7g diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h deleted file mode 100644 index ee660e95..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h +++ /dev/null @@ -1,294 +0,0 @@ -/*===---- pmmintrin.h - SSE3 intrinsics ------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __PMMINTRIN_H -#define __PMMINTRIN_H - -#if !defined(__i386__) && !defined(__x86_64__) -#error "This header is only meant to be used on x86 and x64 architecture" -#endif - -#include <emmintrin.h> - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("sse3"), __min_vector_width__(128))) - -/// Loads data from an unaligned memory location to elements in a 128-bit -/// vector. -/// -/// If the address of the data is not 16-byte aligned, the instruction may -/// read two adjacent aligned blocks of memory to retrieve the requested -/// data. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VLDDQU </c> instruction. -/// -/// \param __p -/// A pointer to a 128-bit integer vector containing integer values. -/// \returns A 128-bit vector containing the moved values. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_lddqu_si128(__m128i_u const *__p) -{ - return (__m128i)__builtin_ia32_lddqu((char const *)__p); -} - -/// Adds the even-indexed values and subtracts the odd-indexed values of -/// two 128-bit vectors of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDSUBPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing the left source operand. -/// \param __b -/// A 128-bit vector of [4 x float] containing the right source operand. -/// \returns A 128-bit vector of [4 x float] containing the alternating sums and -/// differences of both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_addsub_ps(__m128 __a, __m128 __b) -{ - return __builtin_ia32_addsubps((__v4sf)__a, (__v4sf)__b); -} - -/// Horizontally adds the adjacent pairs of values contained in two -/// 128-bit vectors of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VHADDPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// The horizontal sums of the values are stored in the lower bits of the -/// destination. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// The horizontal sums of the values are stored in the upper bits of the -/// destination. -/// \returns A 128-bit vector of [4 x float] containing the horizontal sums of -/// both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_hadd_ps(__m128 __a, __m128 __b) -{ - return __builtin_ia32_haddps((__v4sf)__a, (__v4sf)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in two -/// 128-bit vectors of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VHSUBPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// The horizontal differences between the values are stored in the lower -/// bits of the destination. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// The horizontal differences between the values are stored in the upper -/// bits of the destination. -/// \returns A 128-bit vector of [4 x float] containing the horizontal -/// differences of both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_hsub_ps(__m128 __a, __m128 __b) -{ - return __builtin_ia32_hsubps((__v4sf)__a, (__v4sf)__b); -} - -/// Moves and duplicates odd-indexed values from a 128-bit vector -/// of [4 x float] to float values stored in a 128-bit vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSHDUP </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. \n -/// Bits [127:96] of the source are written to bits [127:96] and [95:64] of -/// the destination. \n -/// Bits [63:32] of the source are written to bits [63:32] and [31:0] of the -/// destination. -/// \returns A 128-bit vector of [4 x float] containing the moved and duplicated -/// values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_movehdup_ps(__m128 __a) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 1, 1, 3, 3); -} - -/// Duplicates even-indexed values from a 128-bit vector of -/// [4 x float] to float values stored in a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSLDUP </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float] \n -/// Bits [95:64] of the source are written to bits [127:96] and [95:64] of -/// the destination. \n -/// Bits [31:0] of the source are written to bits [63:32] and [31:0] of the -/// destination. -/// \returns A 128-bit vector of [4 x float] containing the moved and duplicated -/// values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_moveldup_ps(__m128 __a) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 0, 2, 2); -} - -/// Adds the even-indexed values and subtracts the odd-indexed values of -/// two 128-bit vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDSUBPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing the left source operand. -/// \param __b -/// A 128-bit vector of [2 x double] containing the right source operand. -/// \returns A 128-bit vector of [2 x double] containing the alternating sums -/// and differences of both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS -_mm_addsub_pd(__m128d __a, __m128d __b) -{ - return __builtin_ia32_addsubpd((__v2df)__a, (__v2df)__b); -} - -/// Horizontally adds the pairs of values contained in two 128-bit -/// vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VHADDPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// The horizontal sum of the values is stored in the lower bits of the -/// destination. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// The horizontal sum of the values is stored in the upper bits of the -/// destination. -/// \returns A 128-bit vector of [2 x double] containing the horizontal sums of -/// both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS -_mm_hadd_pd(__m128d __a, __m128d __b) -{ - return __builtin_ia32_haddpd((__v2df)__a, (__v2df)__b); -} - -/// Horizontally subtracts the pairs of values contained in two 128-bit -/// vectors of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VHSUBPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// The horizontal difference of the values is stored in the lower bits of -/// the destination. -/// \param __b -/// A 128-bit vector of [2 x double] containing one of the source operands. -/// The horizontal difference of the values is stored in the upper bits of -/// the destination. -/// \returns A 128-bit vector of [2 x double] containing the horizontal -/// differences of both operands. -static __inline__ __m128d __DEFAULT_FN_ATTRS -_mm_hsub_pd(__m128d __a, __m128d __b) -{ - return __builtin_ia32_hsubpd((__v2df)__a, (__v2df)__b); -} - -/// Moves and duplicates one double-precision value to double-precision -/// values stored in a 128-bit vector of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_loaddup_pd(double const *dp); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VMOVDDUP </c> instruction. -/// -/// \param dp -/// A pointer to a double-precision value to be moved and duplicated. -/// \returns A 128-bit vector of [2 x double] containing the moved and -/// duplicated values. -#define _mm_loaddup_pd(dp) _mm_load1_pd(dp) - -/// Moves and duplicates the double-precision value in the lower bits of -/// a 128-bit vector of [2 x double] to double-precision values stored in a -/// 128-bit vector of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVDDUP </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [2 x double]. Bits [63:0] are written to bits -/// [127:64] and [63:0] of the destination. -/// \returns A 128-bit vector of [2 x double] containing the moved and -/// duplicated values. -static __inline__ __m128d __DEFAULT_FN_ATTRS -_mm_movedup_pd(__m128d __a) -{ - return __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 0); -} - -/// Establishes a linear address memory range to be monitored and puts -/// the processor in the monitor event pending state. Data stored in the -/// monitored address range causes the processor to exit the pending state. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MONITOR </c> instruction. -/// -/// \param __p -/// The memory range to be monitored. The size of the range is determined by -/// CPUID function 0000_0005h. -/// \param __extensions -/// Optional extensions for the monitoring state. -/// \param __hints -/// Optional hints for the monitoring state. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_monitor(void const *__p, unsigned __extensions, unsigned __hints) -{ - __builtin_ia32_monitor(__p, __extensions, __hints); -} - -/// Used with the MONITOR instruction to wait while the processor is in -/// the monitor event pending state. Data stored in the monitored address -/// range causes the processor to exit the pending state. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MWAIT </c> instruction. -/// -/// \param __extensions -/// Optional extensions for the monitoring state, which may vary by -/// processor. -/// \param __hints -/// Optional hints for the monitoring state, which may vary by processor. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_mwait(unsigned __extensions, unsigned __hints) -{ - __builtin_ia32_mwait(__extensions, __hints); -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* __PMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@pmmintrin.h.blob deleted file mode 100644 index 4ce0102a326548cb905721cf4b1dc4b27499bcad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22974 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h deleted file mode 100644 index 0aa94aec..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h +++ /dev/null @@ -1,59 +0,0 @@ -/*===---- popcntintrin.h - POPCNT intrinsics -------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __POPCNTINTRIN_H -#define __POPCNTINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("popcnt"))) - -#if defined(__cplusplus) && (__cplusplus >= 201103L) -#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr -#else -#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS -#endif - -/// Counts the number of bits in the source operand having a value of 1. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> POPCNT </c> instruction. -/// -/// \param __A -/// An unsigned 32-bit integer operand. -/// \returns A 32-bit integer containing the number of bits with value 1 in the -/// source operand. -static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR -_mm_popcnt_u32(unsigned int __A) -{ - return __builtin_popcount(__A); -} - -#ifdef __x86_64__ -/// Counts the number of bits in the source operand having a value of 1. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> POPCNT </c> instruction. -/// -/// \param __A -/// An unsigned 64-bit integer operand. -/// \returns A 64-bit integer containing the number of bits with value 1 in the -/// source operand. -static __inline__ long long __DEFAULT_FN_ATTRS_CONSTEXPR -_mm_popcnt_u64(unsigned long long __A) -{ - return __builtin_popcountll(__A); -} -#endif /* __x86_64__ */ - -#undef __DEFAULT_FN_ATTRS -#undef __DEFAULT_FN_ATTRS_CONSTEXPR - -#endif /* __POPCNTINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@popcntintrin.h.blob deleted file mode 100644 index a5efb66b37591e5e9215659cba53cce324371ad7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13468 zcmdTKON<;xb!HPdtejwc;1ESg%drwWcs#pnv)O|&-uRP`96NH>C<+msn(peE^7hYN z-7~X>1II`p!~r330VyYlzzQ7Tf}&hNN`M<e0wIJD5)wi=af*^Gud2Fgrlw!lOe8M& zu<~xddjEgblbw&>V=w=<)9v&}Swj19|1#zKWtR6#%FBL8!#*#9enMD!Cg|K3#3UWA z1lpTq#Xd`iy^s|&D6`_=i>(woAD!;@D_-<j8pKsd`!8L-w$&fdAxr%r3+b6r=i|q{ z*Wa^Xg7P4jU;gv{j{Rl8O5PV=dEfVw0WV2O{Zb$?pfMZtr7Zo;Z9|nLQ<jzmND81r zD;7P;6a4Up6$??0p1IZ^#+CSV^bc>n+j1DRS{1lN5hdaqw>Z@*Nk}=eKHwsZr(f9I zit^2Eha^%z!Yrw+6irHg9~^)KOh~?*CNIN5mc;_Fp)`pq&p4ZI`7ui@WEMG6W(f=Y z2@5Hhyh=-27+{xUMl7cOpvWd%9oTqt&|<bAuUHyo0;};QhYo>r5`zOS_Xl1T5ea4{ zb+J35F`Eh&?*06$HlJJ&8XB2JG@#rKqm((gk_uP8&)INH;swXIl&;`Pme67j%*8() zGim4}Z{M)lH_=gMRUjSJDA^(z<-Ir?4wlPFq$iIDiA!33!23Z+BRpj0bx{^oQ2JM& zyLQDQt$8!-%S1QtA{t^2S&(J>jQT9|qbdzbmZf}7ee-!tW&}a-mBA%Pj*1{c7BHZ; zpCrjL(}U4@xzF#SQdTL0U`0R8iHB!Qtp^~G66pgbnd(mx2M<PcDTxV)u^_NUVk`ma zDO52nJ;~{n2??YN{Q2`Q*lsC&8<p3P0V<5hjBgwk)xGb7>cG|fgiL)BgBFwkc*@h& zN0@`Qi7NFqq)=>2$a$(LNTs@D<zpew`<HfYL5)1XC8$!s7<sg6MYKr9ERCSjMpF*y zsFC|n*g8`4EjU064#oZxo{U$iSHhCp=Pb^(Tt@aFX89l^1zw(|x}gS?X%DJQTC(!M zLWc^M7f~?6QV<GVt0HZrXqQE!f>M7NALKG^KIx5Y%c`gnVNHVl<qX#>#Di#g4*=dN zN@6d73|87X)FmF|WMOM?5W$WK0LKv)C1e~UXS4~Wkh4(4Q;QC&I130=eY<%<sRKph z@P<!|Ce)*da2u5c0Bvl@*<Cz~h+vZ)MT24Ell%0*YGGZTP=Y6LR@S}G2Zw?31XQ%# zSqlvLgmF9>7zovQ2}?E-#xSk=(5?=6uO;#bPx`bdQmKQJAAHMhdX?wW@^-R97pb#I zmIrAW-dXM~#;`{BsGi1o5GPf9C%l8WA9`X!Sefr*tse@`QA41hAS1$r<!-W9_MswJ zk*+}qhc<Wi$>mEiovP~j(7&mjP{3%tAx&w)0%g43fN<&G4GS74$#R+wWz}yu$z15B zl-pTE^DP|PSDxJ`ITNyd{rgAkjz|`+nQW~M@C?pGG^*?=Cu15c)3?qkq6OPNw@OX{ zBaT&q-$9V0tORtiB)Tj&B7Bsn!D~Cb?nnXP3k*7uyA<I=Yu;E8@=&uhqTK2Vf<}zS zt72Pq)x`udvR#@qm?1CbH0VD{DrZ34iGZ7+H=+dEz8+M&IY*!GscU~5vm#3qDC4-t zNhlckdeDBMp(Fw7=1T@03I!}dsGy%Dg1j6Rz_9e99x2r1V-iwB3xgPHT++7D5dB#N zwYa2H2hUKn6;YHct#I)X*D{<Za%i#6J3Jv;#l2vtGbCNk9dlU=e(^b1Z7a&fImd-^ zHYmhfSnp&CRKqT?k$_c^r3Y;?X<d~ZU@{l8qiE$DEtmz)X$;M8J36t#fzBniDWaN( zBu5IVQIq5>QldshF&WyZED)X9fbS)10D(*_$toKg$`}ckmM}|ez7N&kA5@WFlG%2{ zWln&NRONc@#?yA?lFl8(85cXEg|#5cEn1qjmO#frFE1zzb(YOgOwdhZwFHIreKV;0 zs{0W5aYIIN*`r{eUP8-Jh7ZorI9JnUeO9e?HuURNn(c@vqmx0Jv2+XrW22eZO49kn zpXD5rR#2R<L~R-8aB#Ke$?LYy!HLqsEMyzaN^|poQY;9_yjYK0yA53o>yp3H%)^IE zW2CMduv37c&WCK*3lCBP8&Jy=wGkSn#z46ODJBA}eN!OT@&aOsJ*9!rUI10EY`YLM zqQEr06C^J8o0oj1td+#)EXiR?RMkNxly98=ild#HxmH`KW(0NzL6#($t0fTI?#<S1 zccc3j!Zdt&7ItDeYgx&13b7SwOsA--#o`0Jw-M+laFW29D~7I4P{y^P@(m<o@LxOC z*bK^R7<6LSaBA~y*B<?Ct_=GtY;VV~e}Z+ar7u*#skq%*(1t6PUg*iK{d-?pxD=B7 zLCY3F@Zu{1385}qd}m*`d{sGywbktY!o}_Z;VH{=)%yP6jazmZl`KJ9K*!KNFD`#v zXr;A<az8*DEvxV|Ay2_`YNs^R8Y;<(CDDROTGMjLr*T+{3&w^+Yu7O$bUTB&gQ)?< zo$E@pUqD$-GANrX$CFHoFx0QYE~)CBlAG5cj^c`s+(;+Eh|KQM=BFs5oe>M`iCofi znV*IX?s0|v|9UlYBvNJ0+%-2WTlI17H``m(5cACzQFo^%VW9`6JKMv2Wy|UMA1tj> zrU7eT_#36Gd}yVqhTG;bDWj~w=VgQGPQ~mZuJPy~PphPTFs<7V!AN5`(znq)$L8G- zfqTZb<YrjqH08>DjAvWS&Q%l^F0Uz&z{K);0T4Gi8rPb*VQ{ux!x>c9XAMD7lFDyj zLDNi7DEt_FcU4%1ii4t+i3da65MC59Hk;w+bA`0BmE2{k?dPN*_LV-$10P{&T{ECu zNL*T#J$X4}IU|Zt>DC#MfK4)NA=4zyS{wZ;88V|f?4#lw_EF}h*E)l;7sMe=vT~)Z zT%3`R&uaR-){R@{Y)aM6py8GVW(e(v*c=sE953{XD374REyUflh74ZVow!1Fh5C|b zlLdw}5uH4+jaM7f@VI3hi$?(%_vj&*^6LTLl!ZkGM2f5z;+A!7IOU?CG)M0*+@=Rx z=ekUqoQiT5f$?STHjJTQV5*kk)8Y@#COw#W!d^&&81|=dZDUD;B5%>8h1rVy(hhhG zux>0D60?Rhu9ak!x^*yKjdBR$r^2<NwO^@yf_aFOAsuA0VRz$(-A5iUtg@r5<SIuZ zaf5=ZG_~SI7TmMREu$RhR%)8vFJp|FM+DkV{0dOzb-BRqL6U||Sg$>4DquOy&9Mrb zE6d5Wm1od!Jz@Ky29a-L=tLa<^6`KEMn0Ew=y4$4j6gXR@Frk1E+cI*$#O}~7+!-c zd+(;aT&TaraivIcCSEjV6)f^CxlzX9;+R6u++-VtrmI)=yqpvaEifqN_%2+jB5Y{Y z80{q$Ts;W68rm};a%RLeY+!gm(#C#P6BCyl%NFJ0iZ5&3pv>riZ%Z>Y*p;@D`PEL= zsCwXLOl&b$@701N4}vKPS2k^(2_Rz8Y=Cm5v&Y!|u12fXC<XS&Dkh~;T;tqqk#+m^ z`q8A56Hu!AMWoyq$)%$ye40IJkUDP|FEdaMvMtY8+D?3u9YRn9XIE|`@ZE$hUj3S; zaShnUtZZh`yoR30_v;;=I|Vv!S=(>IjQflrPvGHQ=Rdf>YK=?@qT2<r*tQpgs8mpX zU|>eF6AB%~lfeS4%f-tPRcpELJyS0%w8bFB00Aq9>rZo1w7wUu{aN7XnLbYVbEo^6 z&S%%x4!@b+`s2?A-_FFn8Vfv@!u199MEOuZd|0unOAo)=K6kQ8VVq5AI1l0Pp6YCD zJlx&vY(Bi!-RPWK>s%5qqqzrSdC;^DXyIj%CwKt@@~=Frihz3XT%#aq=#9u29u<4U zgF0QopCfPc%=-GP>W*Dp$$RHv9ikO_VSRmX!~`x;XgRPAuM)vLd6tGiG?Nt02N%2- zZ@hTv`kr^b5B~>1*|~_dE1;G$q38R%>z?QBrk)XO`&<tg6}ah8@U1vJv;Jy9;n91_ zy<KksM9c*+ISK&~fhVjS)naYd(hHKd0?u?g-NV!WxbM3^`Q;nm=^W{H;NRijfBfN3 zpZVLbe`lKp81v?ha&~KG6!}e<<HU)FyI#iwb3EF4?El&vXSbG`V*%uUWsdTZW1}Cw zdFA8U9BXe0qs;%Cv)H})zl;BO56$sU8N(VMn+q?0xAXYppN0dQmp7mPXzl*)<|CWW zzxB}(_{-VzXP-VYLu5|ZR_;9XkT~b<co)Pu?-B39J$df<&hZOy?)PWcpZHh&r)}TA zeC6uyt!sP!)$9K5-rmiZ{7W~kzqEJd<ri-Pr#p|q*ePP(1&4eD(#MV-dv;CyOgo3* zviCiD`qA)WcVlNGzu4V*aOdj9?&19(e(hfW{kuPEA_vkZ+DQXJQbKeOpwsjHlPBTV zctQ@iuM(8+p9Y8&?$!s@Q2he$aNv~;z#doW>iDTsr+~)?jy`a1P5gXE^0;>F`D5wD z?o$swwFTTg@vGyny!MxO-}Zf#DW1E&ck{XH{<FZFH{)&bTX+5F`o^04DRFlG3-g<C A_5c6? diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h deleted file mode 100644 index 36600b25..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h +++ /dev/null @@ -1,61 +0,0 @@ -/*===---- prfchiintrin.h - PREFETCHI intrinsic -----------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __PRFCHIINTRIN_H -#define __PRFCHIINTRIN_H - -#ifdef __x86_64__ - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("prefetchi"))) - -/// Loads an instruction sequence containing the specified memory address into -/// all level cache. -/// -/// Note that the effect of this intrinsic is dependent on the processor -/// implementation. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PREFETCHIT0 instruction. -/// -/// \param __P -/// A pointer specifying the memory address to be prefetched. -static __inline__ void __DEFAULT_FN_ATTRS -_m_prefetchit0(volatile const void *__P) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wcast-qual" - __builtin_ia32_prefetchi((const void *)__P, 3 /* _MM_HINT_T0 */); -#pragma clang diagnostic pop -} - -/// Loads an instruction sequence containing the specified memory address into -/// all but the first-level cache. -/// -/// Note that the effect of this intrinsic is dependent on the processor -/// implementation. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PREFETCHIT1 instruction. -/// -/// \param __P -/// A pointer specifying the memory address to be prefetched. -static __inline__ void __DEFAULT_FN_ATTRS -_m_prefetchit1(volatile const void *__P) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wcast-qual" - __builtin_ia32_prefetchi((const void *)__P, 2 /* _MM_HINT_T1 */); -#pragma clang diagnostic pop -} -#endif /* __x86_64__ */ -#undef __DEFAULT_FN_ATTRS - -#endif /* __PRFCHWINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@prfchiintrin.h.blob deleted file mode 100644 index 83dd339994a7f8aa8f5cad97f1e05212118a20bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13458 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h deleted file mode 100644 index 0a04f7c1..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h +++ /dev/null @@ -1,37 +0,0 @@ -/*===------------ ptwriteintrin.h - PTWRITE intrinsic --------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <ptwriteintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __PTWRITEINTRIN_H -#define __PTWRITEINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("ptwrite"))) - -static __inline__ void __DEFAULT_FN_ATTRS -_ptwrite32(unsigned int __value) { - __builtin_ia32_ptwrite32(__value); -} - -#ifdef __x86_64__ - -static __inline__ void __DEFAULT_FN_ATTRS -_ptwrite64(unsigned long long __value) { - __builtin_ia32_ptwrite64(__value); -} - -#endif /* __x86_64__ */ - -#undef __DEFAULT_FN_ATTRS - -#endif /* __PTWRITEINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@ptwriteintrin.h.blob deleted file mode 100644 index 325516db9a540b55ef426e64f0217f0343e1d1e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12742 zcmb7KO^h5z6`t8x0?f*Ckk<%%gH{GbwsCvnjam5sCMLEMM~;J>4TK-j)O1(Rl(+xf z)jcz7IB-Id;KTux3qo9iI9L`3Zm~EaVXnY|0}2Pk1^L7U3uk#%)m1Y!{ko>(!^*q; z`qlgS-f#8U-iMFa+kfiydxLS7&_O)7O8H)y<%5#)auCvRz>8pz5SE?~dd~zgNk^SX zy=hkLv2^5xte`=e75iUqJ)!sXTz^pUV!+ZMu0lF^^Xkp*!H|wv>IYd!&yRZ_KEL(O zBa0>|_jCE=KaVfjPll}I1M!p(d_NiTl9bdh1rtLWv*AGMGPtl~P9@2VrDXw{0;#Zy zb)J+7e)yw`g{VZY+#HPJN<2FH=Ldgmc^Rx)6}UzbCE^*kB-JKKNIAA1;3`aJU%ap# z<rj7wnn?Qyx1_dF^ilHpa326LCHd+zc^M9~EEa?fqe)hI#@TG!k6B_dvyLNWmaxE| zvXFwytF)wrA$9>XVlnlHMK<N?g%^G^Y;jwVS1gS(!PQ{NVMCCd!~nq6c;HnLkznpp zm$+jZvzZX#{%^l)%gMz-Bcrp322{FHlro1@(%=gFoQ)<VUIM;lbVXOPgcb{AF8S$% zNk^|ge8U#sL`Rubfdr~CvUOyXdvP`zuGW)CBu|EkOIyCr2SG?9JY*JaQ5IED`qyvV zyk;G(Wi#T-M7IbLO|if%$g({~eU|xAl?EltQodlm#XKf6f;jM7!<QX7DuM`E;(+>o znk1`S4^HRh9>0fbS)~ku6@9dz9-c9^9pHeJNDP={svk)nJQ&lJM@&JDE(+&a9;Bs1 zXX7_WW}(Ue5_e7vCnS)7`P&y>w?Ql-0kw`f22No_)&~P`)Kk6>h6Z5z37PpM2Ae5$ z@dT-Bm2e(iHjHK65rxuRLWWc&M7qGGE1w8`9>09WR@CSNQUZTLWAxGIiP(~YSr$RH zjb<E@S0huRv~^tP+wcM{IJ5>I@y)nPbrYW4xoAnQ^)k8#G0TS;Dez)0!3-6nOg*Sc z0K#(LVuvc17f~?A5*A8bn<8x_beBh?f>M7J@8>efp4}STo>eg@k^l+zRtsE<5D%l( z9Rr|K6i_dKd{^2T*QFk0aN%nJh!DpFfa4VwC1esK?`RiFCFh}tCn6nGaTXBh5$sk6 zJsnOofH!hlXF~Og2)9{T1km(`oZZ8-hzK^>e>4O(nB1fLR>SK;LJ3IVtgJhwCkKH- z0;*c>tQ_X}gmF9>7z)*=2~Rc>#we`@(A*BW*AjVzCj(j(skFiACqJ=UWQAN>-bp(2 zoH~oh`Vih-jTYlrV|&z2lRSu%D!v=uMc{|NF(s_b_pnA0CFiIkP*Ttl5yFC-?5usL z2v($P62hS=o<DM7DW)@3Jx~0b+6e`m=8b4d3l=Enc|*b_z8fAiAjxu?j%1I}0Len= zrj*-RM9VFJ?JHytNX~?AKX`ZD?w@4gn(NluF3;&qM5D%@aWbL7DtqgkA{w@xi(PUG zIB}v9{3V1rDoQ|?OQOqjW5UOY8q;>dTaFX}SYXhJ+@pvb+VaMOkcXP35tUX~5Hw;m zUlrS`2QQ|Ok?qo?$;|O$s)PQcq;g`!K?KqS-k1_-`#h+23qW7&z-zosSdpa(lyMw! zk_rYy585v@lq5mje953gsX!zM74(s0keA~E1ePfBNTKE=laLx#7{*ZJlD7Sa=+7#s z#U-6NWQL-x4n?KX1{V);E5rLljyTr)4kScf-~}U~Ino90n9Ex5yW_6fR+P(Ak&ESg zP>8p&-pLfGhF@TR0gENe4%%hXyDB-r94{tK(aJYkFpHei7@FU9c4FZJol9(=h*}<! z94VwlO_H;Y5;ZD{$;f79k?70@a<5n#2xelXR@vN8!AQ8WgjrVeeW?Eau!{VW%y%I! zcLHssD%bbk_^MsGB)Ee(<6@(<v_wRuMN6}`64*HK@`A!pXZZ}}1l=@NOHf+hH)Fl8 zx(~r0cVrZo9tHn+2`$GNK4wGXT+LSXS+&*K$gdY~HV{!kr^7U3=>!JGMl-LCr1ObC z&p9Topgdva+A_}J<Z3CT)&kCoqpUCw*+#R{+*6<@76f!&uE(w2hAxJ6$?r7t@X^W` zsp|&p6kw?HA=`Q3eoA0pY9UcOp;2lKl`D{9BFNe|1!9RWC|3AWItcX)YF^oPA%H@O zX?izET<}}ed~U2x>T{OlFeR$$pc2Xt&wbm`PR*g!7OEM6-9eBgN#<$^#BTgT>u$W! zeG6q8Se}QSSmjz?vOpoWB8}-3HMLlL0D2pNjuIycthr+7>cq*oHB`QVWDNMVQ;jX4 zytF|lc1@@D<aX`R&lbwC-(lA~f&CLKZ!LSF3eLn`*pf9|vGlqpcl?jOvUG(c<%5<j zg5bqh1d>8s&G^o~ZuP2i0&A=JZHG(TeZo_g=c@Jn#joD7%cv9y+5$R(_IY{v<6<kl zEsXmFZM3Yy&xAe&&#9f#P;aOtE0#n{E@@56C7;D%DXt?MfY#74A#^8$xr3<z#hvR) zv|m6)PBJK)o#RO+MHuS4h)b$^r{tD3h@-gTV>i=jFedX`x5X*SSZB<_dLozSx!g}f z2DiS#|9`(8ITERIXYQICR;~It_nYl4>WIZ=i>RAcld#YiW|wwGd1ue*`X8*UQl<fG zU-%oNt9)pssRnHGn3Pdg;PbNKbhl!55!ZZlkf&ABKA6^Rh!CVP9O=7j&#`$ohrq35 zTXHj^a+-1lAA@X5*oBJ1!qqhe5|~(CFA?G{N8?%_ZUmff*Kh&VWm`j0^hkvpSkN>R z6iPn<>~^JPs5&THnRqb94dq1<WAhn)F;_@0TghFv+I~(7Vt)XD%D~51TGs+72#HIp z(vz1n78p^6%C^pk1a4Abi<v&sthLdnQXn&`!#*m`VIO7gg{^l`@q##{Nmh2+%EcK8 z`MjntTHU}hXEUmH1`Svmnh~@gVslhvalF(oqB4RBw-LB$3mLw!J8^|<hx(Fd(<OoQ zAv$?r8?QE@;ZvANEIuK?q(@(ZDZd`@O<7nLK%~feA#Qosrc)3Fqd9ti0UHmt&UKkI zITe*G0_V%zZ3IKfz*Q~7rzIb}n|LtugkDI481|=dZDVPJGH<b@#o3Dd(hhixux>1u z60@c>&`PpO-8vXlqY{Gpsem@L_MO@%n1?tS(P1VVb~kU>edGbdDmyAlu5u(2Hz>JE zQynj|;GRux8RbCNscCk9M`O%9CeU``SAZ(7%LTRvNg6g`UVGA1#B!Qj5EV987Ra=h z=hSdLVdGGf$S-N=RJ{K6Q~&yd{J73x$D#Pb1j?zPHvyx08EuPcmdoRe<2A{uuj3TT zh51{6D^-d!@%>{~!6M(%8x<Tbjw$raO|emG+P$jB_d0$<lT>h*AOvlg!&poXfw;*G z4G&1#Sh#A#id&0Sn{RPvm$j}$=H~!drCl51O5@9fX=h*5l5o`}))L*DuOP{TU`E2u zzN$kTLJ$paR4SbgChiYqv{{W&U@@$MOd7>CpUpQ@ciySLnRH45Ms<G>DOW&pi)bpD z7Ed~)P6P&JhRShl%XcYlZ+w)cKu`oPcJ2%CWrM9={dr8|Uaw79*`1(?3VkErtCw=_ zoaVSTZNJ(w@EJq?!Na>wXmBId8kv$r*MG68wl{sKR!~o10`8jif_OSyqIE&M98<Mt z``Ih?210ubQVfV=C1w3+L5tSUMQc0@9-e8;1fF~SPxL;yzIO1<e?I*9<h>*Ctq_5F zy2VnskDyzVjD=f%UQP>E!sltHs}#o4l!jZPP^cfi4@I(~XL`>+f2_aR+dQ_`KiT{2 zTCdmZAN>Af@BQ-Zj~{%{Tkpf~y@S7A-Z;4P{?0?kAun#v4*|n%S?o7@8^Hcp@6(F? z;dg)DKRgQFuGz0W5Qi-OTae)X;@`#p`v>OrLq^bc{Xo4V@Y3d&HeY+XcBsF3eDk#j zPuJlu&+R;Sb$!mva99w&cjAP2cjJYP%i`UQ;~SUn%Xg3O92f5%`rr5O4<6t9weMfO zcKym*H+TK(xBM%+ySLv2IY0k7=<kIunoqaBb9f8>OiE}RhENK9|MY42HJ*}v?kf-a z{yCsX;Wlwtjl?hT8+>{I9|i#NsoJrp&YU>|@;!U>*^6uN^HV?V9e}@{Id=Zo?U(u| z&!2>!r;eQ3eyM-(>OcPSU-qL9KI8je+x^Dv8@tzT+}gc;<Cgy_2zqKRXyal3$k8L) KYx1Y$-TOb}HG0GV diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h deleted file mode 100644 index d3290eb6..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h +++ /dev/null @@ -1,203 +0,0 @@ -/*===----------------------- raointintrin.h - RAOINT ------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __X86GPRINTRIN_H -#error "Never use <raointintrin.h> directly; include <x86gprintrin.h> instead." -#endif // __X86GPRINTRIN_H - -#ifndef __RAOINTINTRIN_H -#define __RAOINTINTRIN_H - -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("raoint"))) - -/// Atomically add a 32-bit value at memory operand \a __A and a 32-bit \a __B, -/// and store the result to the same memory location. -/// -/// This intrinsic should be used for contention or weak ordering. It may -/// result in bad performance for hot data used by single thread only. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c AADD instruction. -/// -/// \param __A -/// A pointer to a 32-bit memory location. -/// \param __B -/// A 32-bit integer value. -/// -/// \code{.operation} -/// MEM[__A+31:__A] := MEM[__A+31:__A] + __B[31:0] -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS _aadd_i32(int *__A, int __B) { - __builtin_ia32_aadd32((int *)__A, __B); -} - -/// Atomically and a 32-bit value at memory operand \a __A and a 32-bit \a __B, -/// and store the result to the same memory location. -/// -/// This intrinsic should be used for contention or weak ordering. It may -/// result in bad performance for hot data used by single thread only. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c AAND instruction. -/// -/// \param __A -/// A pointer to a 32-bit memory location. -/// \param __B -/// A 32-bit integer value. -/// -/// \code{.operation} -/// MEM[__A+31:__A] := MEM[__A+31:__A] AND __B[31:0] -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS _aand_i32(int *__A, int __B) { - __builtin_ia32_aand32((int *)__A, __B); -} - -/// Atomically or a 32-bit value at memory operand \a __A and a 32-bit \a __B, -/// and store the result to the same memory location. -/// -/// This intrinsic should be used for contention or weak ordering. It may -/// result in bad performance for hot data used by single thread only. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c AOR instruction. -/// -/// \param __A -/// A pointer to a 32-bit memory location. -/// \param __B -/// A 32-bit integer value. -/// -/// \code{.operation} -/// MEM[__A+31:__A] := MEM[__A+31:__A] OR __B[31:0] -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS _aor_i32(int *__A, int __B) { - __builtin_ia32_aor32((int *)__A, __B); -} - -/// Atomically xor a 32-bit value at memory operand \a __A and a 32-bit \a __B, -/// and store the result to the same memory location. -/// -/// This intrinsic should be used for contention or weak ordering. It may -/// result in bad performance for hot data used by single thread only. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c AXOR instruction. -/// -/// \param __A -/// A pointer to a 32-bit memory location. -/// \param __B -/// A 32-bit integer value. -/// -/// \code{.operation} -/// MEM[__A+31:__A] := MEM[__A+31:__A] XOR __B[31:0] -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS _axor_i32(int *__A, int __B) { - __builtin_ia32_axor32((int *)__A, __B); -} - -#ifdef __x86_64__ -/// Atomically add a 64-bit value at memory operand \a __A and a 64-bit \a __B, -/// and store the result to the same memory location. -/// -/// This intrinsic should be used for contention or weak ordering. It may -/// result in bad performance for hot data used by single thread only. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c AADD instruction. -/// -/// \param __A -/// A pointer to a 64-bit memory location. -/// \param __B -/// A 64-bit integer value. -/// -/// \code{.operation} -/// MEM[__A+63:__A] := MEM[__A+63:__A] + __B[63:0] -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS _aadd_i64(long long *__A, - long long __B) { - __builtin_ia32_aadd64((long long *)__A, __B); -} - -/// Atomically and a 64-bit value at memory operand \a __A and a 64-bit \a __B, -/// and store the result to the same memory location. -/// -/// This intrinsic should be used for contention or weak ordering. It may -/// result in bad performance for hot data used by single thread only. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c AAND instruction. -/// -/// \param __A -/// A pointer to a 64-bit memory location. -/// \param __B -/// A 64-bit integer value. -/// -/// \code{.operation} -/// MEM[__A+63:__A] := MEM[__A+63:__A] AND __B[63:0] -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS _aand_i64(long long *__A, - long long __B) { - __builtin_ia32_aand64((long long *)__A, __B); -} - -/// Atomically or a 64-bit value at memory operand \a __A and a 64-bit \a __B, -/// and store the result to the same memory location. -/// -/// This intrinsic should be used for contention or weak ordering. It may -/// result in bad performance for hot data used by single thread only. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c AOR instruction. -/// -/// \param __A -/// A pointer to a 64-bit memory location. -/// \param __B -/// A 64-bit integer value. -/// -/// \code{.operation} -/// MEM[__A+63:__A] := MEM[__A+63:__A] OR __B[63:0] -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS _aor_i64(long long *__A, - long long __B) { - __builtin_ia32_aor64((long long *)__A, __B); -} - -/// Atomically xor a 64-bit value at memory operand \a __A and a 64-bit \a __B, -/// and store the result to the same memory location. -/// -/// This intrinsic should be used for contention or weak ordering. It may -/// result in bad performance for hot data used by single thread only. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c AXOR instruction. -/// -/// \param __A -/// A pointer to a 64-bit memory location. -/// \param __B -/// A 64-bit integer value. -/// -/// \code{.operation} -/// MEM[__A+63:__A] := MEM[__A+63:__A] XOR __B[63:0] -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS _axor_i64(long long *__A, - long long __B) { - __builtin_ia32_axor64((long long *)__A, __B); -} -#endif // __x86_64__ - -#undef __DEFAULT_FN_ATTRS -#endif // __RAOINTINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@raointintrin.h.blob deleted file mode 100644 index d8b0ff215c101b6ff20b0b3cc1aa595b54ed9217..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18395 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h deleted file mode 100644 index 405bc245..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h +++ /dev/null @@ -1,42 +0,0 @@ -/*===---- rdseedintrin.h - RDSEED intrinsics -------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <rdseedintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __RDSEEDINTRIN_H -#define __RDSEEDINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("rdseed"))) - -static __inline__ int __DEFAULT_FN_ATTRS -_rdseed16_step(unsigned short *__p) -{ - return (int) __builtin_ia32_rdseed16_step(__p); -} - -static __inline__ int __DEFAULT_FN_ATTRS -_rdseed32_step(unsigned int *__p) -{ - return (int) __builtin_ia32_rdseed32_step(__p); -} - -#ifdef __x86_64__ -static __inline__ int __DEFAULT_FN_ATTRS -_rdseed64_step(unsigned long long *__p) -{ - return (int) __builtin_ia32_rdseed64_step(__p); -} -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif /* __RDSEEDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rdseedintrin.h.blob deleted file mode 100644 index bdfcff6fe43d60c9bf4c55204908941f660f3309..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12835 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 M{M0`AEAe~(2eQ7OCjbBd diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h deleted file mode 100644 index a3ec81e3..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h +++ /dev/null @@ -1,45 +0,0 @@ -/*===---- rtmintrin.h - RTM intrinsics -------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <rtmintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __RTMINTRIN_H -#define __RTMINTRIN_H - -#define _XBEGIN_STARTED (~0u) -#define _XABORT_EXPLICIT (1 << 0) -#define _XABORT_RETRY (1 << 1) -#define _XABORT_CONFLICT (1 << 2) -#define _XABORT_CAPACITY (1 << 3) -#define _XABORT_DEBUG (1 << 4) -#define _XABORT_NESTED (1 << 5) -#define _XABORT_CODE(x) (((x) >> 24) & 0xFF) - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("rtm"))) - -static __inline__ unsigned int __DEFAULT_FN_ATTRS -_xbegin(void) -{ - return (unsigned int)__builtin_ia32_xbegin(); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_xend(void) -{ - __builtin_ia32_xend(); -} - -#define _xabort(imm) __builtin_ia32_xabort((imm)) - -#undef __DEFAULT_FN_ATTRS - -#endif /* __RTMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@rtmintrin.h.blob deleted file mode 100644 index 44b532f9414a68ba71c18397062c1dea449f8a13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13231 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h deleted file mode 100644 index b774e5a2..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h +++ /dev/null @@ -1,30 +0,0 @@ -/*===--------------- serializeintrin.h - serialize intrinsics --------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <serializeintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __SERIALIZEINTRIN_H -#define __SERIALIZEINTRIN_H - -/// Serialize instruction fetch and execution. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> SERIALIZE </c> instruction. -/// -static __inline__ void -__attribute__((__always_inline__, __nodebug__, __target__("serialize"))) -_serialize (void) -{ - __builtin_ia32_serialize (); -} - -#endif /* __SERIALIZEINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@serializeintrin.h.blob deleted file mode 100644 index bf8a70742758b3788b9101c77301db4284a7efaa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12402 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 R=;||9PcE6?$y2@I{{a=?AG-hm diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h deleted file mode 100644 index 303a21f6..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h +++ /dev/null @@ -1,60 +0,0 @@ -/*===---- sgxintrin.h - X86 SGX intrinsics configuration -------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <sgxintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __SGXINTRIN_H -#define __SGXINTRIN_H - -#if __has_extension(gnu_asm) - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("sgx"))) - -static __inline unsigned int __DEFAULT_FN_ATTRS -_enclu_u32(unsigned int __leaf, __SIZE_TYPE__ __d[]) -{ - unsigned int __result; - __asm__ ("enclu" - : "=a" (__result), "=b" (__d[0]), "=c" (__d[1]), "=d" (__d[2]) - : "a" (__leaf), "b" (__d[0]), "c" (__d[1]), "d" (__d[2]) - : "cc"); - return __result; -} - -static __inline unsigned int __DEFAULT_FN_ATTRS -_encls_u32(unsigned int __leaf, __SIZE_TYPE__ __d[]) -{ - unsigned int __result; - __asm__ ("encls" - : "=a" (__result), "=b" (__d[0]), "=c" (__d[1]), "=d" (__d[2]) - : "a" (__leaf), "b" (__d[0]), "c" (__d[1]), "d" (__d[2]) - : "cc"); - return __result; -} - -static __inline unsigned int __DEFAULT_FN_ATTRS -_enclv_u32(unsigned int __leaf, __SIZE_TYPE__ __d[]) -{ - unsigned int __result; - __asm__ ("enclv" - : "=a" (__result), "=b" (__d[0]), "=c" (__d[1]), "=d" (__d[2]) - : "a" (__leaf), "b" (__d[0]), "c" (__d[1]), "d" (__d[2]) - : "cc"); - return __result; -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* __has_extension(gnu_asm) */ - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@sgxintrin.h.blob deleted file mode 100644 index 21890dae219d9789734d768e9d2b669ca00e76a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13565 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 ZYn%egy#pOc4=OkBy!p@+`(?1T{{vptaxwq_ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h deleted file mode 100644 index 08b1fb1d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h +++ /dev/null @@ -1,61 +0,0 @@ -/*===---- shaintrin.h - SHA intrinsics -------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <shaintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __SHAINTRIN_H -#define __SHAINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("sha"), __min_vector_width__(128))) - -#define _mm_sha1rnds4_epu32(V1, V2, M) \ - __builtin_ia32_sha1rnds4((__v4si)(__m128i)(V1), (__v4si)(__m128i)(V2), (M)) - -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sha1nexte_epu32(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_sha1nexte((__v4si)__X, (__v4si)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sha1msg1_epu32(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_sha1msg1((__v4si)__X, (__v4si)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sha1msg2_epu32(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_sha1msg2((__v4si)__X, (__v4si)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sha256rnds2_epu32(__m128i __X, __m128i __Y, __m128i __Z) -{ - return (__m128i)__builtin_ia32_sha256rnds2((__v4si)__X, (__v4si)__Y, (__v4si)__Z); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sha256msg1_epu32(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_sha256msg1((__v4si)__X, (__v4si)__Y); -} - -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sha256msg2_epu32(__m128i __X, __m128i __Y) -{ - return (__m128i)__builtin_ia32_sha256msg2((__v4si)__X, (__v4si)__Y); -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* __SHAINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@shaintrin.h.blob deleted file mode 100644 index 213c95c4be653e201155deb5877b7838eb9c7f11..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14630 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h deleted file mode 100644 index 16d8855a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h +++ /dev/null @@ -1,2328 +0,0 @@ -/*===---- smmintrin.h - SSE4 intrinsics ------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __SMMINTRIN_H -#define __SMMINTRIN_H - -#if !defined(__i386__) && !defined(__x86_64__) -#error "This header is only meant to be used on x86 and x64 architecture" -#endif - -#include <tmmintrin.h> - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("sse4.1"), \ - __min_vector_width__(128))) - -/* SSE4 Rounding macros. */ -#define _MM_FROUND_TO_NEAREST_INT 0x00 -#define _MM_FROUND_TO_NEG_INF 0x01 -#define _MM_FROUND_TO_POS_INF 0x02 -#define _MM_FROUND_TO_ZERO 0x03 -#define _MM_FROUND_CUR_DIRECTION 0x04 - -#define _MM_FROUND_RAISE_EXC 0x00 -#define _MM_FROUND_NO_EXC 0x08 - -#define _MM_FROUND_NINT (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_NEAREST_INT) -#define _MM_FROUND_FLOOR (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_NEG_INF) -#define _MM_FROUND_CEIL (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_POS_INF) -#define _MM_FROUND_TRUNC (_MM_FROUND_RAISE_EXC | _MM_FROUND_TO_ZERO) -#define _MM_FROUND_RINT (_MM_FROUND_RAISE_EXC | _MM_FROUND_CUR_DIRECTION) -#define _MM_FROUND_NEARBYINT (_MM_FROUND_NO_EXC | _MM_FROUND_CUR_DIRECTION) - -/// Rounds up each element of the 128-bit vector of [4 x float] to an -/// integer and returns the rounded values in a 128-bit vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_ceil_ps(__m128 X); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPS / ROUNDPS </c> instruction. -/// -/// \param X -/// A 128-bit vector of [4 x float] values to be rounded up. -/// \returns A 128-bit vector of [4 x float] containing the rounded values. -#define _mm_ceil_ps(X) _mm_round_ps((X), _MM_FROUND_CEIL) - -/// Rounds up each element of the 128-bit vector of [2 x double] to an -/// integer and returns the rounded values in a 128-bit vector of -/// [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_ceil_pd(__m128d X); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPD / ROUNDPD </c> instruction. -/// -/// \param X -/// A 128-bit vector of [2 x double] values to be rounded up. -/// \returns A 128-bit vector of [2 x double] containing the rounded values. -#define _mm_ceil_pd(X) _mm_round_pd((X), _MM_FROUND_CEIL) - -/// Copies three upper elements of the first 128-bit vector operand to -/// the corresponding three upper elements of the 128-bit result vector of -/// [4 x float]. Rounds up the lowest element of the second 128-bit vector -/// operand to an integer and copies it to the lowest element of the 128-bit -/// result vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_ceil_ss(__m128 X, __m128 Y); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDSS / ROUNDSS </c> instruction. -/// -/// \param X -/// A 128-bit vector of [4 x float]. The values stored in bits [127:32] are -/// copied to the corresponding bits of the result. -/// \param Y -/// A 128-bit vector of [4 x float]. The value stored in bits [31:0] is -/// rounded up to the nearest integer and copied to the corresponding bits -/// of the result. -/// \returns A 128-bit vector of [4 x float] containing the copied and rounded -/// values. -#define _mm_ceil_ss(X, Y) _mm_round_ss((X), (Y), _MM_FROUND_CEIL) - -/// Copies the upper element of the first 128-bit vector operand to the -/// corresponding upper element of the 128-bit result vector of [2 x double]. -/// Rounds up the lower element of the second 128-bit vector operand to an -/// integer and copies it to the lower element of the 128-bit result vector -/// of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_ceil_sd(__m128d X, __m128d Y); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDSD / ROUNDSD </c> instruction. -/// -/// \param X -/// A 128-bit vector of [2 x double]. The value stored in bits [127:64] is -/// copied to the corresponding bits of the result. -/// \param Y -/// A 128-bit vector of [2 x double]. The value stored in bits [63:0] is -/// rounded up to the nearest integer and copied to the corresponding bits -/// of the result. -/// \returns A 128-bit vector of [2 x double] containing the copied and rounded -/// values. -#define _mm_ceil_sd(X, Y) _mm_round_sd((X), (Y), _MM_FROUND_CEIL) - -/// Rounds down each element of the 128-bit vector of [4 x float] to an -/// an integer and returns the rounded values in a 128-bit vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_floor_ps(__m128 X); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPS / ROUNDPS </c> instruction. -/// -/// \param X -/// A 128-bit vector of [4 x float] values to be rounded down. -/// \returns A 128-bit vector of [4 x float] containing the rounded values. -#define _mm_floor_ps(X) _mm_round_ps((X), _MM_FROUND_FLOOR) - -/// Rounds down each element of the 128-bit vector of [2 x double] to an -/// integer and returns the rounded values in a 128-bit vector of -/// [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_floor_pd(__m128d X); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPD / ROUNDPD </c> instruction. -/// -/// \param X -/// A 128-bit vector of [2 x double]. -/// \returns A 128-bit vector of [2 x double] containing the rounded values. -#define _mm_floor_pd(X) _mm_round_pd((X), _MM_FROUND_FLOOR) - -/// Copies three upper elements of the first 128-bit vector operand to -/// the corresponding three upper elements of the 128-bit result vector of -/// [4 x float]. Rounds down the lowest element of the second 128-bit vector -/// operand to an integer and copies it to the lowest element of the 128-bit -/// result vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_floor_ss(__m128 X, __m128 Y); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDSS / ROUNDSS </c> instruction. -/// -/// \param X -/// A 128-bit vector of [4 x float]. The values stored in bits [127:32] are -/// copied to the corresponding bits of the result. -/// \param Y -/// A 128-bit vector of [4 x float]. The value stored in bits [31:0] is -/// rounded down to the nearest integer and copied to the corresponding bits -/// of the result. -/// \returns A 128-bit vector of [4 x float] containing the copied and rounded -/// values. -#define _mm_floor_ss(X, Y) _mm_round_ss((X), (Y), _MM_FROUND_FLOOR) - -/// Copies the upper element of the first 128-bit vector operand to the -/// corresponding upper element of the 128-bit result vector of [2 x double]. -/// Rounds down the lower element of the second 128-bit vector operand to an -/// integer and copies it to the lower element of the 128-bit result vector -/// of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_floor_sd(__m128d X, __m128d Y); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDSD / ROUNDSD </c> instruction. -/// -/// \param X -/// A 128-bit vector of [2 x double]. The value stored in bits [127:64] is -/// copied to the corresponding bits of the result. -/// \param Y -/// A 128-bit vector of [2 x double]. The value stored in bits [63:0] is -/// rounded down to the nearest integer and copied to the corresponding bits -/// of the result. -/// \returns A 128-bit vector of [2 x double] containing the copied and rounded -/// values. -#define _mm_floor_sd(X, Y) _mm_round_sd((X), (Y), _MM_FROUND_FLOOR) - -/// Rounds each element of the 128-bit vector of [4 x float] to an -/// integer value according to the rounding control specified by the second -/// argument and returns the rounded values in a 128-bit vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_round_ps(__m128 X, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPS / ROUNDPS </c> instruction. -/// -/// \param X -/// A 128-bit vector of [4 x float]. -/// \param M -/// An integer value that specifies the rounding operation. \n -/// Bits [7:4] are reserved. \n -/// Bit [3] is a precision exception value: \n -/// 0: A normal PE exception is used \n -/// 1: The PE field is not updated \n -/// Bit [2] is the rounding control source: \n -/// 0: Use bits [1:0] of \a M \n -/// 1: Use the current MXCSR setting \n -/// Bits [1:0] contain the rounding control definition: \n -/// 00: Nearest \n -/// 01: Downward (toward negative infinity) \n -/// 10: Upward (toward positive infinity) \n -/// 11: Truncated -/// \returns A 128-bit vector of [4 x float] containing the rounded values. -#define _mm_round_ps(X, M) \ - ((__m128)__builtin_ia32_roundps((__v4sf)(__m128)(X), (M))) - -/// Copies three upper elements of the first 128-bit vector operand to -/// the corresponding three upper elements of the 128-bit result vector of -/// [4 x float]. Rounds the lowest element of the second 128-bit vector -/// operand to an integer value according to the rounding control specified -/// by the third argument and copies it to the lowest element of the 128-bit -/// result vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_round_ss(__m128 X, __m128 Y, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDSS / ROUNDSS </c> instruction. -/// -/// \param X -/// A 128-bit vector of [4 x float]. The values stored in bits [127:32] are -/// copied to the corresponding bits of the result. -/// \param Y -/// A 128-bit vector of [4 x float]. The value stored in bits [31:0] is -/// rounded to the nearest integer using the specified rounding control and -/// copied to the corresponding bits of the result. -/// \param M -/// An integer value that specifies the rounding operation. \n -/// Bits [7:4] are reserved. \n -/// Bit [3] is a precision exception value: \n -/// 0: A normal PE exception is used \n -/// 1: The PE field is not updated \n -/// Bit [2] is the rounding control source: \n -/// 0: Use bits [1:0] of \a M \n -/// 1: Use the current MXCSR setting \n -/// Bits [1:0] contain the rounding control definition: \n -/// 00: Nearest \n -/// 01: Downward (toward negative infinity) \n -/// 10: Upward (toward positive infinity) \n -/// 11: Truncated -/// \returns A 128-bit vector of [4 x float] containing the copied and rounded -/// values. -#define _mm_round_ss(X, Y, M) \ - ((__m128)__builtin_ia32_roundss((__v4sf)(__m128)(X), (__v4sf)(__m128)(Y), \ - (M))) - -/// Rounds each element of the 128-bit vector of [2 x double] to an -/// integer value according to the rounding control specified by the second -/// argument and returns the rounded values in a 128-bit vector of -/// [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_round_pd(__m128d X, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDPD / ROUNDPD </c> instruction. -/// -/// \param X -/// A 128-bit vector of [2 x double]. -/// \param M -/// An integer value that specifies the rounding operation. \n -/// Bits [7:4] are reserved. \n -/// Bit [3] is a precision exception value: \n -/// 0: A normal PE exception is used \n -/// 1: The PE field is not updated \n -/// Bit [2] is the rounding control source: \n -/// 0: Use bits [1:0] of \a M \n -/// 1: Use the current MXCSR setting \n -/// Bits [1:0] contain the rounding control definition: \n -/// 00: Nearest \n -/// 01: Downward (toward negative infinity) \n -/// 10: Upward (toward positive infinity) \n -/// 11: Truncated -/// \returns A 128-bit vector of [2 x double] containing the rounded values. -#define _mm_round_pd(X, M) \ - ((__m128d)__builtin_ia32_roundpd((__v2df)(__m128d)(X), (M))) - -/// Copies the upper element of the first 128-bit vector operand to the -/// corresponding upper element of the 128-bit result vector of [2 x double]. -/// Rounds the lower element of the second 128-bit vector operand to an -/// integer value according to the rounding control specified by the third -/// argument and copies it to the lower element of the 128-bit result vector -/// of [2 x double]. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_round_sd(__m128d X, __m128d Y, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VROUNDSD / ROUNDSD </c> instruction. -/// -/// \param X -/// A 128-bit vector of [2 x double]. The value stored in bits [127:64] is -/// copied to the corresponding bits of the result. -/// \param Y -/// A 128-bit vector of [2 x double]. The value stored in bits [63:0] is -/// rounded to the nearest integer using the specified rounding control and -/// copied to the corresponding bits of the result. -/// \param M -/// An integer value that specifies the rounding operation. \n -/// Bits [7:4] are reserved. \n -/// Bit [3] is a precision exception value: \n -/// 0: A normal PE exception is used \n -/// 1: The PE field is not updated \n -/// Bit [2] is the rounding control source: \n -/// 0: Use bits [1:0] of \a M \n -/// 1: Use the current MXCSR setting \n -/// Bits [1:0] contain the rounding control definition: \n -/// 00: Nearest \n -/// 01: Downward (toward negative infinity) \n -/// 10: Upward (toward positive infinity) \n -/// 11: Truncated -/// \returns A 128-bit vector of [2 x double] containing the copied and rounded -/// values. -#define _mm_round_sd(X, Y, M) \ - ((__m128d)__builtin_ia32_roundsd((__v2df)(__m128d)(X), (__v2df)(__m128d)(Y), \ - (M))) - -/* SSE4 Packed Blending Intrinsics. */ -/// Returns a 128-bit vector of [2 x double] where the values are -/// selected from either the first or second operand as specified by the -/// third operand, the control mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_blend_pd(__m128d V1, __m128d V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VBLENDPD / BLENDPD </c> instruction. -/// -/// \param V1 -/// A 128-bit vector of [2 x double]. -/// \param V2 -/// A 128-bit vector of [2 x double]. -/// \param M -/// An immediate integer operand, with mask bits [1:0] specifying how the -/// values are to be copied. The position of the mask bit corresponds to the -/// index of a copied value. When a mask bit is 0, the corresponding 64-bit -/// element in operand \a V1 is copied to the same position in the result. -/// When a mask bit is 1, the corresponding 64-bit element in operand \a V2 -/// is copied to the same position in the result. -/// \returns A 128-bit vector of [2 x double] containing the copied values. -#define _mm_blend_pd(V1, V2, M) \ - ((__m128d)__builtin_ia32_blendpd((__v2df)(__m128d)(V1), \ - (__v2df)(__m128d)(V2), (int)(M))) - -/// Returns a 128-bit vector of [4 x float] where the values are selected -/// from either the first or second operand as specified by the third -/// operand, the control mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_blend_ps(__m128 V1, __m128 V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VBLENDPS / BLENDPS </c> instruction. -/// -/// \param V1 -/// A 128-bit vector of [4 x float]. -/// \param V2 -/// A 128-bit vector of [4 x float]. -/// \param M -/// An immediate integer operand, with mask bits [3:0] specifying how the -/// values are to be copied. The position of the mask bit corresponds to the -/// index of a copied value. When a mask bit is 0, the corresponding 32-bit -/// element in operand \a V1 is copied to the same position in the result. -/// When a mask bit is 1, the corresponding 32-bit element in operand \a V2 -/// is copied to the same position in the result. -/// \returns A 128-bit vector of [4 x float] containing the copied values. -#define _mm_blend_ps(V1, V2, M) \ - ((__m128)__builtin_ia32_blendps((__v4sf)(__m128)(V1), (__v4sf)(__m128)(V2), \ - (int)(M))) - -/// Returns a 128-bit vector of [2 x double] where the values are -/// selected from either the first or second operand as specified by the -/// third operand, the control mask. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBLENDVPD / BLENDVPD </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [2 x double]. -/// \param __V2 -/// A 128-bit vector of [2 x double]. -/// \param __M -/// A 128-bit vector operand, with mask bits 127 and 63 specifying how the -/// values are to be copied. The position of the mask bit corresponds to the -/// most significant bit of a copied value. When a mask bit is 0, the -/// corresponding 64-bit element in operand \a __V1 is copied to the same -/// position in the result. When a mask bit is 1, the corresponding 64-bit -/// element in operand \a __V2 is copied to the same position in the result. -/// \returns A 128-bit vector of [2 x double] containing the copied values. -static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_blendv_pd(__m128d __V1, - __m128d __V2, - __m128d __M) { - return (__m128d)__builtin_ia32_blendvpd((__v2df)__V1, (__v2df)__V2, - (__v2df)__M); -} - -/// Returns a 128-bit vector of [4 x float] where the values are -/// selected from either the first or second operand as specified by the -/// third operand, the control mask. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBLENDVPS / BLENDVPS </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [4 x float]. -/// \param __V2 -/// A 128-bit vector of [4 x float]. -/// \param __M -/// A 128-bit vector operand, with mask bits 127, 95, 63, and 31 specifying -/// how the values are to be copied. The position of the mask bit corresponds -/// to the most significant bit of a copied value. When a mask bit is 0, the -/// corresponding 32-bit element in operand \a __V1 is copied to the same -/// position in the result. When a mask bit is 1, the corresponding 32-bit -/// element in operand \a __V2 is copied to the same position in the result. -/// \returns A 128-bit vector of [4 x float] containing the copied values. -static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_blendv_ps(__m128 __V1, - __m128 __V2, - __m128 __M) { - return (__m128)__builtin_ia32_blendvps((__v4sf)__V1, (__v4sf)__V2, - (__v4sf)__M); -} - -/// Returns a 128-bit vector of [16 x i8] where the values are selected -/// from either of the first or second operand as specified by the third -/// operand, the control mask. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPBLENDVB / PBLENDVB </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [16 x i8]. -/// \param __V2 -/// A 128-bit vector of [16 x i8]. -/// \param __M -/// A 128-bit vector operand, with mask bits 127, 119, 111...7 specifying -/// how the values are to be copied. The position of the mask bit corresponds -/// to the most significant bit of a copied value. When a mask bit is 0, the -/// corresponding 8-bit element in operand \a __V1 is copied to the same -/// position in the result. When a mask bit is 1, the corresponding 8-bit -/// element in operand \a __V2 is copied to the same position in the result. -/// \returns A 128-bit vector of [16 x i8] containing the copied values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_blendv_epi8(__m128i __V1, - __m128i __V2, - __m128i __M) { - return (__m128i)__builtin_ia32_pblendvb128((__v16qi)__V1, (__v16qi)__V2, - (__v16qi)__M); -} - -/// Returns a 128-bit vector of [8 x i16] where the values are selected -/// from either of the first or second operand as specified by the third -/// operand, the control mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_blend_epi16(__m128i V1, __m128i V2, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPBLENDW / PBLENDW </c> instruction. -/// -/// \param V1 -/// A 128-bit vector of [8 x i16]. -/// \param V2 -/// A 128-bit vector of [8 x i16]. -/// \param M -/// An immediate integer operand, with mask bits [7:0] specifying how the -/// values are to be copied. The position of the mask bit corresponds to the -/// index of a copied value. When a mask bit is 0, the corresponding 16-bit -/// element in operand \a V1 is copied to the same position in the result. -/// When a mask bit is 1, the corresponding 16-bit element in operand \a V2 -/// is copied to the same position in the result. -/// \returns A 128-bit vector of [8 x i16] containing the copied values. -#define _mm_blend_epi16(V1, V2, M) \ - ((__m128i)__builtin_ia32_pblendw128((__v8hi)(__m128i)(V1), \ - (__v8hi)(__m128i)(V2), (int)(M))) - -/* SSE4 Dword Multiply Instructions. */ -/// Multiples corresponding elements of two 128-bit vectors of [4 x i32] -/// and returns the lower 32 bits of the each product in a 128-bit vector of -/// [4 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMULLD / PMULLD </c> instruction. -/// -/// \param __V1 -/// A 128-bit integer vector. -/// \param __V2 -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the products of both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mullo_epi32(__m128i __V1, - __m128i __V2) { - return (__m128i)((__v4su)__V1 * (__v4su)__V2); -} - -/// Multiplies corresponding even-indexed elements of two 128-bit -/// vectors of [4 x i32] and returns a 128-bit vector of [2 x i64] -/// containing the products. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMULDQ / PMULDQ </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [4 x i32]. -/// \param __V2 -/// A 128-bit vector of [4 x i32]. -/// \returns A 128-bit vector of [2 x i64] containing the products of both -/// operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mul_epi32(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_ia32_pmuldq128((__v4si)__V1, (__v4si)__V2); -} - -/* SSE4 Floating Point Dot Product Instructions. */ -/// Computes the dot product of the two 128-bit vectors of [4 x float] -/// and returns it in the elements of the 128-bit result vector of -/// [4 x float]. -/// -/// The immediate integer operand controls which input elements -/// will contribute to the dot product, and where the final results are -/// returned. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_dp_ps(__m128 X, __m128 Y, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VDPPS / DPPS </c> instruction. -/// -/// \param X -/// A 128-bit vector of [4 x float]. -/// \param Y -/// A 128-bit vector of [4 x float]. -/// \param M -/// An immediate integer operand. Mask bits [7:4] determine which elements -/// of the input vectors are used, with bit [4] corresponding to the lowest -/// element and bit [7] corresponding to the highest element of each [4 x -/// float] vector. If a bit is set, the corresponding elements from the two -/// input vectors are used as an input for dot product; otherwise that input -/// is treated as zero. Bits [3:0] determine which elements of the result -/// will receive a copy of the final dot product, with bit [0] corresponding -/// to the lowest element and bit [3] corresponding to the highest element of -/// each [4 x float] subvector. If a bit is set, the dot product is returned -/// in the corresponding element; otherwise that element is set to zero. -/// \returns A 128-bit vector of [4 x float] containing the dot product. -#define _mm_dp_ps(X, Y, M) \ - ((__m128)__builtin_ia32_dpps((__v4sf)(__m128)(X), (__v4sf)(__m128)(Y), (M))) - -/// Computes the dot product of the two 128-bit vectors of [2 x double] -/// and returns it in the elements of the 128-bit result vector of -/// [2 x double]. -/// -/// The immediate integer operand controls which input -/// elements will contribute to the dot product, and where the final results -/// are returned. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128d _mm_dp_pd(__m128d X, __m128d Y, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VDPPD / DPPD </c> instruction. -/// -/// \param X -/// A 128-bit vector of [2 x double]. -/// \param Y -/// A 128-bit vector of [2 x double]. -/// \param M -/// An immediate integer operand. Mask bits [5:4] determine which elements -/// of the input vectors are used, with bit [4] corresponding to the lowest -/// element and bit [5] corresponding to the highest element of each of [2 x -/// double] vector. If a bit is set, the corresponding elements from the two -/// input vectors are used as an input for dot product; otherwise that input -/// is treated as zero. Bits [1:0] determine which elements of the result -/// will receive a copy of the final dot product, with bit [0] corresponding -/// to the lowest element and bit [1] corresponding to the highest element of -/// each [2 x double] vector. If a bit is set, the dot product is returned in -/// the corresponding element; otherwise that element is set to zero. -#define _mm_dp_pd(X, Y, M) \ - ((__m128d)__builtin_ia32_dppd((__v2df)(__m128d)(X), (__v2df)(__m128d)(Y), \ - (M))) - -/* SSE4 Streaming Load Hint Instruction. */ -/// Loads integer values from a 128-bit aligned memory location to a -/// 128-bit integer vector. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVNTDQA / MOVNTDQA </c> instruction. -/// -/// \param __V -/// A pointer to a 128-bit aligned memory location that contains the integer -/// values. -/// \returns A 128-bit integer vector containing the data stored at the -/// specified memory location. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_stream_load_si128(__m128i const *__V) { - return (__m128i)__builtin_nontemporal_load((const __v2di *)__V); -} - -/* SSE4 Packed Integer Min/Max Instructions. */ -/// Compares the corresponding elements of two 128-bit vectors of -/// [16 x i8] and returns a 128-bit vector of [16 x i8] containing the lesser -/// of the two values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMINSB / PMINSB </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [16 x i8]. -/// \param __V2 -/// A 128-bit vector of [16 x i8] -/// \returns A 128-bit vector of [16 x i8] containing the lesser values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi8(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_elementwise_min((__v16qs)__V1, (__v16qs)__V2); -} - -/// Compares the corresponding elements of two 128-bit vectors of -/// [16 x i8] and returns a 128-bit vector of [16 x i8] containing the -/// greater value of the two. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMAXSB / PMAXSB </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [16 x i8]. -/// \param __V2 -/// A 128-bit vector of [16 x i8]. -/// \returns A 128-bit vector of [16 x i8] containing the greater values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi8(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_elementwise_max((__v16qs)__V1, (__v16qs)__V2); -} - -/// Compares the corresponding elements of two 128-bit vectors of -/// [8 x u16] and returns a 128-bit vector of [8 x u16] containing the lesser -/// value of the two. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMINUW / PMINUW </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [8 x u16]. -/// \param __V2 -/// A 128-bit vector of [8 x u16]. -/// \returns A 128-bit vector of [8 x u16] containing the lesser values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu16(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_elementwise_min((__v8hu)__V1, (__v8hu)__V2); -} - -/// Compares the corresponding elements of two 128-bit vectors of -/// [8 x u16] and returns a 128-bit vector of [8 x u16] containing the -/// greater value of the two. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMAXUW / PMAXUW </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [8 x u16]. -/// \param __V2 -/// A 128-bit vector of [8 x u16]. -/// \returns A 128-bit vector of [8 x u16] containing the greater values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu16(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_elementwise_max((__v8hu)__V1, (__v8hu)__V2); -} - -/// Compares the corresponding elements of two 128-bit vectors of -/// [4 x i32] and returns a 128-bit vector of [4 x i32] containing the lesser -/// value of the two. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMINSD / PMINSD </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [4 x i32]. -/// \param __V2 -/// A 128-bit vector of [4 x i32]. -/// \returns A 128-bit vector of [4 x i32] containing the lesser values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi32(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_elementwise_min((__v4si)__V1, (__v4si)__V2); -} - -/// Compares the corresponding elements of two 128-bit vectors of -/// [4 x i32] and returns a 128-bit vector of [4 x i32] containing the -/// greater value of the two. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMAXSD / PMAXSD </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [4 x i32]. -/// \param __V2 -/// A 128-bit vector of [4 x i32]. -/// \returns A 128-bit vector of [4 x i32] containing the greater values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi32(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_elementwise_max((__v4si)__V1, (__v4si)__V2); -} - -/// Compares the corresponding elements of two 128-bit vectors of -/// [4 x u32] and returns a 128-bit vector of [4 x u32] containing the lesser -/// value of the two. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMINUD / PMINUD </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [4 x u32]. -/// \param __V2 -/// A 128-bit vector of [4 x u32]. -/// \returns A 128-bit vector of [4 x u32] containing the lesser values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu32(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_elementwise_min((__v4su)__V1, (__v4su)__V2); -} - -/// Compares the corresponding elements of two 128-bit vectors of -/// [4 x u32] and returns a 128-bit vector of [4 x u32] containing the -/// greater value of the two. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMAXUD / PMAXUD </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [4 x u32]. -/// \param __V2 -/// A 128-bit vector of [4 x u32]. -/// \returns A 128-bit vector of [4 x u32] containing the greater values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu32(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_elementwise_max((__v4su)__V1, (__v4su)__V2); -} - -/* SSE4 Insertion and Extraction from XMM Register Instructions. */ -/// Takes the first argument \a X and inserts an element from the second -/// argument \a Y as selected by the third argument \a N. That result then -/// has elements zeroed out also as selected by the third argument \a N. The -/// resulting 128-bit vector of [4 x float] is then returned. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_insert_ps(__m128 X, __m128 Y, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VINSERTPS </c> instruction. -/// -/// \param X -/// A 128-bit vector source operand of [4 x float]. With the exception of -/// those bits in the result copied from parameter \a Y and zeroed by bits -/// [3:0] of \a N, all bits from this parameter are copied to the result. -/// \param Y -/// A 128-bit vector source operand of [4 x float]. One single-precision -/// floating-point element from this source, as determined by the immediate -/// parameter, is copied to the result. -/// \param N -/// Specifies which bits from operand \a Y will be copied, which bits in the -/// result they will be copied to, and which bits in the result will be -/// cleared. The following assignments are made: \n -/// Bits [7:6] specify the bits to copy from operand \a Y: \n -/// 00: Selects bits [31:0] from operand \a Y. \n -/// 01: Selects bits [63:32] from operand \a Y. \n -/// 10: Selects bits [95:64] from operand \a Y. \n -/// 11: Selects bits [127:96] from operand \a Y. \n -/// Bits [5:4] specify the bits in the result to which the selected bits -/// from operand \a Y are copied: \n -/// 00: Copies the selected bits from \a Y to result bits [31:0]. \n -/// 01: Copies the selected bits from \a Y to result bits [63:32]. \n -/// 10: Copies the selected bits from \a Y to result bits [95:64]. \n -/// 11: Copies the selected bits from \a Y to result bits [127:96]. \n -/// Bits[3:0]: If any of these bits are set, the corresponding result -/// element is cleared. -/// \returns A 128-bit vector of [4 x float] containing the copied -/// single-precision floating point elements from the operands. -#define _mm_insert_ps(X, Y, N) __builtin_ia32_insertps128((X), (Y), (N)) - -/// Extracts a 32-bit integer from a 128-bit vector of [4 x float] and -/// returns it, using the immediate value parameter \a N as a selector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_extract_ps(__m128 X, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VEXTRACTPS / EXTRACTPS </c> -/// instruction. -/// -/// \param X -/// A 128-bit vector of [4 x float]. -/// \param N -/// An immediate value. Bits [1:0] determines which bits from the argument -/// \a X are extracted and returned: \n -/// 00: Bits [31:0] of parameter \a X are returned. \n -/// 01: Bits [63:32] of parameter \a X are returned. \n -/// 10: Bits [95:64] of parameter \a X are returned. \n -/// 11: Bits [127:96] of parameter \a X are returned. -/// \returns A 32-bit integer containing the extracted 32 bits of float data. -#define _mm_extract_ps(X, N) \ - __builtin_bit_cast( \ - int, __builtin_ia32_vec_ext_v4sf((__v4sf)(__m128)(X), (int)(N))) - -/* Miscellaneous insert and extract macros. */ -/* Extract a single-precision float from X at index N into D. */ -#define _MM_EXTRACT_FLOAT(D, X, N) \ - do { \ - (D) = __builtin_ia32_vec_ext_v4sf((__v4sf)(__m128)(X), (int)(N)); \ - } while (0) - -/* Or together 2 sets of indexes (X and Y) with the zeroing bits (Z) to create - an index suitable for _mm_insert_ps. */ -#define _MM_MK_INSERTPS_NDX(X, Y, Z) (((X) << 6) | ((Y) << 4) | (Z)) - -/* Extract a float from X at index N into the first index of the return. */ -#define _MM_PICK_OUT_PS(X, N) \ - _mm_insert_ps(_mm_setzero_ps(), (X), _MM_MK_INSERTPS_NDX((N), 0, 0x0e)) - -/* Insert int into packed integer array at index. */ -/// Constructs a 128-bit vector of [16 x i8] by first making a copy of -/// the 128-bit integer vector parameter, and then inserting the lower 8 bits -/// of an integer parameter \a I into an offset specified by the immediate -/// value parameter \a N. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_insert_epi8(__m128i X, int I, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPINSRB / PINSRB </c> instruction. -/// -/// \param X -/// A 128-bit integer vector of [16 x i8]. This vector is copied to the -/// result and then one of the sixteen elements in the result vector is -/// replaced by the lower 8 bits of \a I. -/// \param I -/// An integer. The lower 8 bits of this operand are written to the result -/// beginning at the offset specified by \a N. -/// \param N -/// An immediate value. Bits [3:0] specify the bit offset in the result at -/// which the lower 8 bits of \a I are written. \n -/// 0000: Bits [7:0] of the result are used for insertion. \n -/// 0001: Bits [15:8] of the result are used for insertion. \n -/// 0010: Bits [23:16] of the result are used for insertion. \n -/// 0011: Bits [31:24] of the result are used for insertion. \n -/// 0100: Bits [39:32] of the result are used for insertion. \n -/// 0101: Bits [47:40] of the result are used for insertion. \n -/// 0110: Bits [55:48] of the result are used for insertion. \n -/// 0111: Bits [63:56] of the result are used for insertion. \n -/// 1000: Bits [71:64] of the result are used for insertion. \n -/// 1001: Bits [79:72] of the result are used for insertion. \n -/// 1010: Bits [87:80] of the result are used for insertion. \n -/// 1011: Bits [95:88] of the result are used for insertion. \n -/// 1100: Bits [103:96] of the result are used for insertion. \n -/// 1101: Bits [111:104] of the result are used for insertion. \n -/// 1110: Bits [119:112] of the result are used for insertion. \n -/// 1111: Bits [127:120] of the result are used for insertion. -/// \returns A 128-bit integer vector containing the constructed values. -#define _mm_insert_epi8(X, I, N) \ - ((__m128i)__builtin_ia32_vec_set_v16qi((__v16qi)(__m128i)(X), (int)(I), \ - (int)(N))) - -/// Constructs a 128-bit vector of [4 x i32] by first making a copy of -/// the 128-bit integer vector parameter, and then inserting the 32-bit -/// integer parameter \a I at the offset specified by the immediate value -/// parameter \a N. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_insert_epi32(__m128i X, int I, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPINSRD / PINSRD </c> instruction. -/// -/// \param X -/// A 128-bit integer vector of [4 x i32]. This vector is copied to the -/// result and then one of the four elements in the result vector is -/// replaced by \a I. -/// \param I -/// A 32-bit integer that is written to the result beginning at the offset -/// specified by \a N. -/// \param N -/// An immediate value. Bits [1:0] specify the bit offset in the result at -/// which the integer \a I is written. \n -/// 00: Bits [31:0] of the result are used for insertion. \n -/// 01: Bits [63:32] of the result are used for insertion. \n -/// 10: Bits [95:64] of the result are used for insertion. \n -/// 11: Bits [127:96] of the result are used for insertion. -/// \returns A 128-bit integer vector containing the constructed values. -#define _mm_insert_epi32(X, I, N) \ - ((__m128i)__builtin_ia32_vec_set_v4si((__v4si)(__m128i)(X), (int)(I), \ - (int)(N))) - -#ifdef __x86_64__ -/// Constructs a 128-bit vector of [2 x i64] by first making a copy of -/// the 128-bit integer vector parameter, and then inserting the 64-bit -/// integer parameter \a I, using the immediate value parameter \a N as an -/// insertion location selector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_insert_epi64(__m128i X, long long I, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPINSRQ / PINSRQ </c> instruction. -/// -/// \param X -/// A 128-bit integer vector of [2 x i64]. This vector is copied to the -/// result and then one of the two elements in the result vector is replaced -/// by \a I. -/// \param I -/// A 64-bit integer that is written to the result beginning at the offset -/// specified by \a N. -/// \param N -/// An immediate value. Bit [0] specifies the bit offset in the result at -/// which the integer \a I is written. \n -/// 0: Bits [63:0] of the result are used for insertion. \n -/// 1: Bits [127:64] of the result are used for insertion. \n -/// \returns A 128-bit integer vector containing the constructed values. -#define _mm_insert_epi64(X, I, N) \ - ((__m128i)__builtin_ia32_vec_set_v2di((__v2di)(__m128i)(X), (long long)(I), \ - (int)(N))) -#endif /* __x86_64__ */ - -/* Extract int from packed integer array at index. This returns the element - * as a zero extended value, so it is unsigned. - */ -/// Extracts an 8-bit element from the 128-bit integer vector of -/// [16 x i8], using the immediate value parameter \a N as a selector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_extract_epi8(__m128i X, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPEXTRB / PEXTRB </c> instruction. -/// -/// \param X -/// A 128-bit integer vector. -/// \param N -/// An immediate value. Bits [3:0] specify which 8-bit vector element from -/// the argument \a X to extract and copy to the result. \n -/// 0000: Bits [7:0] of parameter \a X are extracted. \n -/// 0001: Bits [15:8] of the parameter \a X are extracted. \n -/// 0010: Bits [23:16] of the parameter \a X are extracted. \n -/// 0011: Bits [31:24] of the parameter \a X are extracted. \n -/// 0100: Bits [39:32] of the parameter \a X are extracted. \n -/// 0101: Bits [47:40] of the parameter \a X are extracted. \n -/// 0110: Bits [55:48] of the parameter \a X are extracted. \n -/// 0111: Bits [63:56] of the parameter \a X are extracted. \n -/// 1000: Bits [71:64] of the parameter \a X are extracted. \n -/// 1001: Bits [79:72] of the parameter \a X are extracted. \n -/// 1010: Bits [87:80] of the parameter \a X are extracted. \n -/// 1011: Bits [95:88] of the parameter \a X are extracted. \n -/// 1100: Bits [103:96] of the parameter \a X are extracted. \n -/// 1101: Bits [111:104] of the parameter \a X are extracted. \n -/// 1110: Bits [119:112] of the parameter \a X are extracted. \n -/// 1111: Bits [127:120] of the parameter \a X are extracted. -/// \returns An unsigned integer, whose lower 8 bits are selected from the -/// 128-bit integer vector parameter and the remaining bits are assigned -/// zeros. -#define _mm_extract_epi8(X, N) \ - ((int)(unsigned char)__builtin_ia32_vec_ext_v16qi((__v16qi)(__m128i)(X), \ - (int)(N))) - -/// Extracts a 32-bit element from the 128-bit integer vector of -/// [4 x i32], using the immediate value parameter \a N as a selector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_extract_epi32(__m128i X, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPEXTRD / PEXTRD </c> instruction. -/// -/// \param X -/// A 128-bit integer vector. -/// \param N -/// An immediate value. Bits [1:0] specify which 32-bit vector element from -/// the argument \a X to extract and copy to the result. \n -/// 00: Bits [31:0] of the parameter \a X are extracted. \n -/// 01: Bits [63:32] of the parameter \a X are extracted. \n -/// 10: Bits [95:64] of the parameter \a X are extracted. \n -/// 11: Bits [127:96] of the parameter \a X are exracted. -/// \returns An integer, whose lower 32 bits are selected from the 128-bit -/// integer vector parameter and the remaining bits are assigned zeros. -#define _mm_extract_epi32(X, N) \ - ((int)__builtin_ia32_vec_ext_v4si((__v4si)(__m128i)(X), (int)(N))) - -/// Extracts a 64-bit element from the 128-bit integer vector of -/// [2 x i64], using the immediate value parameter \a N as a selector. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// long long _mm_extract_epi64(__m128i X, const int N); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPEXTRQ / PEXTRQ </c> instruction -/// in 64-bit mode. -/// -/// \param X -/// A 128-bit integer vector. -/// \param N -/// An immediate value. Bit [0] specifies which 64-bit vector element from -/// the argument \a X to return. \n -/// 0: Bits [63:0] are returned. \n -/// 1: Bits [127:64] are returned. \n -/// \returns A 64-bit integer. -#define _mm_extract_epi64(X, N) \ - ((long long)__builtin_ia32_vec_ext_v2di((__v2di)(__m128i)(X), (int)(N))) - -/* SSE4 128-bit Packed Integer Comparisons. */ -/// Tests whether the specified bits in a 128-bit integer vector are all -/// zeros. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. -/// -/// \param __M -/// A 128-bit integer vector containing the bits to be tested. -/// \param __V -/// A 128-bit integer vector selecting which bits to test in operand \a __M. -/// \returns TRUE if the specified bits are all zeros; FALSE otherwise. -static __inline__ int __DEFAULT_FN_ATTRS _mm_testz_si128(__m128i __M, - __m128i __V) { - return __builtin_ia32_ptestz128((__v2di)__M, (__v2di)__V); -} - -/// Tests whether the specified bits in a 128-bit integer vector are all -/// ones. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. -/// -/// \param __M -/// A 128-bit integer vector containing the bits to be tested. -/// \param __V -/// A 128-bit integer vector selecting which bits to test in operand \a __M. -/// \returns TRUE if the specified bits are all ones; FALSE otherwise. -static __inline__ int __DEFAULT_FN_ATTRS _mm_testc_si128(__m128i __M, - __m128i __V) { - return __builtin_ia32_ptestc128((__v2di)__M, (__v2di)__V); -} - -/// Tests whether the specified bits in a 128-bit integer vector are -/// neither all zeros nor all ones. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. -/// -/// \param __M -/// A 128-bit integer vector containing the bits to be tested. -/// \param __V -/// A 128-bit integer vector selecting which bits to test in operand \a __M. -/// \returns TRUE if the specified bits are neither all zeros nor all ones; -/// FALSE otherwise. -static __inline__ int __DEFAULT_FN_ATTRS _mm_testnzc_si128(__m128i __M, - __m128i __V) { - return __builtin_ia32_ptestnzc128((__v2di)__M, (__v2di)__V); -} - -/// Tests whether the specified bits in a 128-bit integer vector are all -/// ones. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_test_all_ones(__m128i V); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. -/// -/// \param V -/// A 128-bit integer vector containing the bits to be tested. -/// \returns TRUE if the bits specified in the operand are all set to 1; FALSE -/// otherwise. -#define _mm_test_all_ones(V) _mm_testc_si128((V), _mm_set1_epi32(-1)) - -/// Tests whether the specified bits in a 128-bit integer vector are -/// neither all zeros nor all ones. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_test_mix_ones_zeros(__m128i M, __m128i V); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. -/// -/// \param M -/// A 128-bit integer vector containing the bits to be tested. -/// \param V -/// A 128-bit integer vector selecting which bits to test in operand \a M. -/// \returns TRUE if the specified bits are neither all zeros nor all ones; -/// FALSE otherwise. -#define _mm_test_mix_ones_zeros(M, V) _mm_testnzc_si128((M), (V)) - -/// Tests whether the specified bits in a 128-bit integer vector are all -/// zeros. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_test_all_zeros(__m128i M, __m128i V); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPTEST / PTEST </c> instruction. -/// -/// \param M -/// A 128-bit integer vector containing the bits to be tested. -/// \param V -/// A 128-bit integer vector selecting which bits to test in operand \a M. -/// \returns TRUE if the specified bits are all zeros; FALSE otherwise. -#define _mm_test_all_zeros(M, V) _mm_testz_si128((M), (V)) - -/* SSE4 64-bit Packed Integer Comparisons. */ -/// Compares each of the corresponding 64-bit values of the 128-bit -/// integer vectors for equality. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPEQQ / PCMPEQQ </c> instruction. -/// -/// \param __V1 -/// A 128-bit integer vector. -/// \param __V2 -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi64(__m128i __V1, - __m128i __V2) { - return (__m128i)((__v2di)__V1 == (__v2di)__V2); -} - -/* SSE4 Packed Integer Sign-Extension. */ -/// Sign-extends each of the lower eight 8-bit integer elements of a -/// 128-bit vector of [16 x i8] to 16-bit values and returns them in a -/// 128-bit vector of [8 x i16]. The upper eight elements of the input vector -/// are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVSXBW / PMOVSXBW </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [16 x i8]. The lower eight 8-bit elements are -/// sign-extended to 16-bit values. -/// \returns A 128-bit vector of [8 x i16] containing the sign-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi16(__m128i __V) { - /* This function always performs a signed extension, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3, 4, 5, 6, - 7), - __v8hi); -} - -/// Sign-extends each of the lower four 8-bit integer elements of a -/// 128-bit vector of [16 x i8] to 32-bit values and returns them in a -/// 128-bit vector of [4 x i32]. The upper twelve elements of the input -/// vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVSXBD / PMOVSXBD </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [16 x i8]. The lower four 8-bit elements are -/// sign-extended to 32-bit values. -/// \returns A 128-bit vector of [4 x i32] containing the sign-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi32(__m128i __V) { - /* This function always performs a signed extension, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3), __v4si); -} - -/// Sign-extends each of the lower two 8-bit integer elements of a -/// 128-bit integer vector of [16 x i8] to 64-bit values and returns them in -/// a 128-bit vector of [2 x i64]. The upper fourteen elements of the input -/// vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVSXBQ / PMOVSXBQ </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [16 x i8]. The lower two 8-bit elements are -/// sign-extended to 64-bit values. -/// \returns A 128-bit vector of [2 x i64] containing the sign-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi64(__m128i __V) { - /* This function always performs a signed extension, but __v16qi is a char - which may be signed or unsigned, so use __v16qs. */ - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1), __v2di); -} - -/// Sign-extends each of the lower four 16-bit integer elements of a -/// 128-bit integer vector of [8 x i16] to 32-bit values and returns them in -/// a 128-bit vector of [4 x i32]. The upper four elements of the input -/// vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVSXWD / PMOVSXWD </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [8 x i16]. The lower four 16-bit elements are -/// sign-extended to 32-bit values. -/// \returns A 128-bit vector of [4 x i32] containing the sign-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi16_epi32(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1, 2, 3), __v4si); -} - -/// Sign-extends each of the lower two 16-bit integer elements of a -/// 128-bit integer vector of [8 x i16] to 64-bit values and returns them in -/// a 128-bit vector of [2 x i64]. The upper six elements of the input -/// vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVSXWQ / PMOVSXWQ </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [8 x i16]. The lower two 16-bit elements are -/// sign-extended to 64-bit values. -/// \returns A 128-bit vector of [2 x i64] containing the sign-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi16_epi64(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1), __v2di); -} - -/// Sign-extends each of the lower two 32-bit integer elements of a -/// 128-bit integer vector of [4 x i32] to 64-bit values and returns them in -/// a 128-bit vector of [2 x i64]. The upper two elements of the input vector -/// are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVSXDQ / PMOVSXDQ </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [4 x i32]. The lower two 32-bit elements are -/// sign-extended to 64-bit values. -/// \returns A 128-bit vector of [2 x i64] containing the sign-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi32_epi64(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v4si)__V, (__v4si)__V, 0, 1), __v2di); -} - -/* SSE4 Packed Integer Zero-Extension. */ -/// Zero-extends each of the lower eight 8-bit integer elements of a -/// 128-bit vector of [16 x i8] to 16-bit values and returns them in a -/// 128-bit vector of [8 x i16]. The upper eight elements of the input vector -/// are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVZXBW / PMOVZXBW </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [16 x i8]. The lower eight 8-bit elements are -/// zero-extended to 16-bit values. -/// \returns A 128-bit vector of [8 x i16] containing the zero-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi16(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3, 4, 5, 6, - 7), - __v8hi); -} - -/// Zero-extends each of the lower four 8-bit integer elements of a -/// 128-bit vector of [16 x i8] to 32-bit values and returns them in a -/// 128-bit vector of [4 x i32]. The upper twelve elements of the input -/// vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVZXBD / PMOVZXBD </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [16 x i8]. The lower four 8-bit elements are -/// zero-extended to 32-bit values. -/// \returns A 128-bit vector of [4 x i32] containing the zero-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi32(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3), __v4si); -} - -/// Zero-extends each of the lower two 8-bit integer elements of a -/// 128-bit integer vector of [16 x i8] to 64-bit values and returns them in -/// a 128-bit vector of [2 x i64]. The upper fourteen elements of the input -/// vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVZXBQ / PMOVZXBQ </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [16 x i8]. The lower two 8-bit elements are -/// zero-extended to 64-bit values. -/// \returns A 128-bit vector of [2 x i64] containing the zero-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi64(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1), __v2di); -} - -/// Zero-extends each of the lower four 16-bit integer elements of a -/// 128-bit integer vector of [8 x i16] to 32-bit values and returns them in -/// a 128-bit vector of [4 x i32]. The upper four elements of the input -/// vector are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVZXWD / PMOVZXWD </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [8 x i16]. The lower four 16-bit elements are -/// zero-extended to 32-bit values. -/// \returns A 128-bit vector of [4 x i32] containing the zero-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu16_epi32(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1, 2, 3), __v4si); -} - -/// Zero-extends each of the lower two 16-bit integer elements of a -/// 128-bit integer vector of [8 x i16] to 64-bit values and returns them in -/// a 128-bit vector of [2 x i64]. The upper six elements of the input vector -/// are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVZXWQ / PMOVZXWQ </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [8 x i16]. The lower two 16-bit elements are -/// zero-extended to 64-bit values. -/// \returns A 128-bit vector of [2 x i64] containing the zero-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu16_epi64(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1), __v2di); -} - -/// Zero-extends each of the lower two 32-bit integer elements of a -/// 128-bit integer vector of [4 x i32] to 64-bit values and returns them in -/// a 128-bit vector of [2 x i64]. The upper two elements of the input vector -/// are unused. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPMOVZXDQ / PMOVZXDQ </c> instruction. -/// -/// \param __V -/// A 128-bit vector of [4 x i32]. The lower two 32-bit elements are -/// zero-extended to 64-bit values. -/// \returns A 128-bit vector of [2 x i64] containing the zero-extended values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu32_epi64(__m128i __V) { - return (__m128i) __builtin_convertvector( - __builtin_shufflevector((__v4su)__V, (__v4su)__V, 0, 1), __v2di); -} - -/* SSE4 Pack with Unsigned Saturation. */ -/// Converts 32-bit signed integers from both 128-bit integer vector -/// operands into 16-bit unsigned integers, and returns the packed result. -/// Values greater than 0xFFFF are saturated to 0xFFFF. Values less than -/// 0x0000 are saturated to 0x0000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPACKUSDW / PACKUSDW </c> instruction. -/// -/// \param __V1 -/// A 128-bit vector of [4 x i32]. Each 32-bit element is treated as a -/// signed integer and is converted to a 16-bit unsigned integer with -/// saturation. Values greater than 0xFFFF are saturated to 0xFFFF. Values -/// less than 0x0000 are saturated to 0x0000. The converted [4 x i16] values -/// are written to the lower 64 bits of the result. -/// \param __V2 -/// A 128-bit vector of [4 x i32]. Each 32-bit element is treated as a -/// signed integer and is converted to a 16-bit unsigned integer with -/// saturation. Values greater than 0xFFFF are saturated to 0xFFFF. Values -/// less than 0x0000 are saturated to 0x0000. The converted [4 x i16] values -/// are written to the higher 64 bits of the result. -/// \returns A 128-bit vector of [8 x i16] containing the converted values. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packus_epi32(__m128i __V1, - __m128i __V2) { - return (__m128i)__builtin_ia32_packusdw128((__v4si)__V1, (__v4si)__V2); -} - -/* SSE4 Multiple Packed Sums of Absolute Difference. */ -/// Subtracts 8-bit unsigned integer values and computes the absolute -/// values of the differences to the corresponding bits in the destination. -/// Then sums of the absolute differences are returned according to the bit -/// fields in the immediate operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_mpsadbw_epu8(__m128i X, __m128i Y, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VMPSADBW / MPSADBW </c> instruction. -/// -/// \param X -/// A 128-bit vector of [16 x i8]. -/// \param Y -/// A 128-bit vector of [16 x i8]. -/// \param M -/// An 8-bit immediate operand specifying how the absolute differences are to -/// be calculated, according to the following algorithm: -/// \code -/// // M2 represents bit 2 of the immediate operand -/// // M10 represents bits [1:0] of the immediate operand -/// i = M2 * 4; -/// j = M10 * 4; -/// for (k = 0; k < 8; k = k + 1) { -/// d0 = abs(X[i + k + 0] - Y[j + 0]); -/// d1 = abs(X[i + k + 1] - Y[j + 1]); -/// d2 = abs(X[i + k + 2] - Y[j + 2]); -/// d3 = abs(X[i + k + 3] - Y[j + 3]); -/// r[k] = d0 + d1 + d2 + d3; -/// } -/// \endcode -/// \returns A 128-bit integer vector containing the sums of the sets of -/// absolute differences between both operands. -#define _mm_mpsadbw_epu8(X, Y, M) \ - ((__m128i)__builtin_ia32_mpsadbw128((__v16qi)(__m128i)(X), \ - (__v16qi)(__m128i)(Y), (M))) - -/// Finds the minimum unsigned 16-bit element in the input 128-bit -/// vector of [8 x u16] and returns it and along with its index. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPHMINPOSUW / PHMINPOSUW </c> -/// instruction. -/// -/// \param __V -/// A 128-bit vector of [8 x u16]. -/// \returns A 128-bit value where bits [15:0] contain the minimum value found -/// in parameter \a __V, bits [18:16] contain the index of the minimum value -/// and the remaining bits are set to 0. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_minpos_epu16(__m128i __V) { - return (__m128i)__builtin_ia32_phminposuw128((__v8hi)__V); -} - -/* Handle the sse4.2 definitions here. */ - -/* These definitions are normally in nmmintrin.h, but gcc puts them in here - so we'll do the same. */ - -#undef __DEFAULT_FN_ATTRS -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("sse4.2"))) - -/* These specify the type of data that we're comparing. */ -#define _SIDD_UBYTE_OPS 0x00 -#define _SIDD_UWORD_OPS 0x01 -#define _SIDD_SBYTE_OPS 0x02 -#define _SIDD_SWORD_OPS 0x03 - -/* These specify the type of comparison operation. */ -#define _SIDD_CMP_EQUAL_ANY 0x00 -#define _SIDD_CMP_RANGES 0x04 -#define _SIDD_CMP_EQUAL_EACH 0x08 -#define _SIDD_CMP_EQUAL_ORDERED 0x0c - -/* These macros specify the polarity of the operation. */ -#define _SIDD_POSITIVE_POLARITY 0x00 -#define _SIDD_NEGATIVE_POLARITY 0x10 -#define _SIDD_MASKED_POSITIVE_POLARITY 0x20 -#define _SIDD_MASKED_NEGATIVE_POLARITY 0x30 - -/* These macros are used in _mm_cmpXstri() to specify the return. */ -#define _SIDD_LEAST_SIGNIFICANT 0x00 -#define _SIDD_MOST_SIGNIFICANT 0x40 - -/* These macros are used in _mm_cmpXstri() to specify the return. */ -#define _SIDD_BIT_MASK 0x00 -#define _SIDD_UNIT_MASK 0x40 - -/* SSE4.2 Packed Comparison Intrinsics. */ -/// Uses the immediate operand \a M to perform a comparison of string -/// data with implicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns a 128-bit integer vector representing the result -/// mask of the comparison. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_cmpistrm(__m128i A, __m128i B, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPISTRM / PCMPISTRM </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words, the type of comparison to perform, and the format of the return -/// value. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// Bit [6]: Determines whether the result is zero-extended or expanded to 16 -/// bytes. \n -/// 0: The result is zero-extended to 16 bytes. \n -/// 1: The result is expanded to 16 bytes (this expansion is performed by -/// repeating each bit 8 or 16 times). -/// \returns Returns a 128-bit integer vector representing the result mask of -/// the comparison. -#define _mm_cmpistrm(A, B, M) \ - ((__m128i)__builtin_ia32_pcmpistrm128((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with implicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns an integer representing the result index of the -/// comparison. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpistri(__m128i A, __m128i B, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words, the type of comparison to perform, and the format of the return -/// value. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// Bit [6]: Determines whether the index of the lowest set bit or the -/// highest set bit is returned. \n -/// 0: The index of the least significant set bit. \n -/// 1: The index of the most significant set bit. \n -/// \returns Returns an integer representing the result index of the comparison. -#define _mm_cmpistri(A, B, M) \ - ((int)__builtin_ia32_pcmpistri128((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with explicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns a 128-bit integer vector representing the result -/// mask of the comparison. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_cmpestrm(__m128i A, int LA, __m128i B, int LB, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPESTRM / PCMPESTRM </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LA -/// An integer that specifies the length of the string in \a A. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LB -/// An integer that specifies the length of the string in \a B. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words, the type of comparison to perform, and the format of the return -/// value. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// Bit [6]: Determines whether the result is zero-extended or expanded to 16 -/// bytes. \n -/// 0: The result is zero-extended to 16 bytes. \n -/// 1: The result is expanded to 16 bytes (this expansion is performed by -/// repeating each bit 8 or 16 times). \n -/// \returns Returns a 128-bit integer vector representing the result mask of -/// the comparison. -#define _mm_cmpestrm(A, LA, B, LB, M) \ - ((__m128i)__builtin_ia32_pcmpestrm128((__v16qi)(__m128i)(A), (int)(LA), \ - (__v16qi)(__m128i)(B), (int)(LB), \ - (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with explicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns an integer representing the result index of the -/// comparison. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpestri(__m128i A, int LA, __m128i B, int LB, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LA -/// An integer that specifies the length of the string in \a A. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LB -/// An integer that specifies the length of the string in \a B. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words, the type of comparison to perform, and the format of the return -/// value. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// Bit [6]: Determines whether the index of the lowest set bit or the -/// highest set bit is returned. \n -/// 0: The index of the least significant set bit. \n -/// 1: The index of the most significant set bit. \n -/// \returns Returns an integer representing the result index of the comparison. -#define _mm_cmpestri(A, LA, B, LB, M) \ - ((int)__builtin_ia32_pcmpestri128((__v16qi)(__m128i)(A), (int)(LA), \ - (__v16qi)(__m128i)(B), (int)(LB), \ - (int)(M))) - -/* SSE4.2 Packed Comparison Intrinsics and EFlag Reading. */ -/// Uses the immediate operand \a M to perform a comparison of string -/// data with implicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns 1 if the bit mask is zero and the length of the -/// string in \a B is the maximum, otherwise, returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpistra(__m128i A, __m128i B, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// \returns Returns 1 if the bit mask is zero and the length of the string in -/// \a B is the maximum; otherwise, returns 0. -#define _mm_cmpistra(A, B, M) \ - ((int)__builtin_ia32_pcmpistria128((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with implicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns 1 if the bit mask is non-zero, otherwise, returns -/// 0. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpistrc(__m128i A, __m128i B, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. -/// \returns Returns 1 if the bit mask is non-zero, otherwise, returns 0. -#define _mm_cmpistrc(A, B, M) \ - ((int)__builtin_ia32_pcmpistric128((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with implicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns bit 0 of the resulting bit mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpistro(__m128i A, __m128i B, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// \returns Returns bit 0 of the resulting bit mask. -#define _mm_cmpistro(A, B, M) \ - ((int)__builtin_ia32_pcmpistrio128((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with implicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns 1 if the length of the string in \a A is less than -/// the maximum, otherwise, returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpistrs(__m128i A, __m128i B, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// \returns Returns 1 if the length of the string in \a A is less than the -/// maximum, otherwise, returns 0. -#define _mm_cmpistrs(A, B, M) \ - ((int)__builtin_ia32_pcmpistris128((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with implicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns 1 if the length of the string in \a B is less than -/// the maximum, otherwise, returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpistrz(__m128i A, __m128i B, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPISTRI / PCMPISTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. -/// \returns Returns 1 if the length of the string in \a B is less than the -/// maximum, otherwise, returns 0. -#define _mm_cmpistrz(A, B, M) \ - ((int)__builtin_ia32_pcmpistriz128((__v16qi)(__m128i)(A), \ - (__v16qi)(__m128i)(B), (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with explicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns 1 if the bit mask is zero and the length of the -/// string in \a B is the maximum, otherwise, returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpestra(__m128i A, int LA, __m128i B, int LB, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LA -/// An integer that specifies the length of the string in \a A. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LB -/// An integer that specifies the length of the string in \a B. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. -/// \returns Returns 1 if the bit mask is zero and the length of the string in -/// \a B is the maximum, otherwise, returns 0. -#define _mm_cmpestra(A, LA, B, LB, M) \ - ((int)__builtin_ia32_pcmpestria128((__v16qi)(__m128i)(A), (int)(LA), \ - (__v16qi)(__m128i)(B), (int)(LB), \ - (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with explicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns 1 if the resulting mask is non-zero, otherwise, -/// returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpestrc(__m128i A, int LA, __m128i B, int LB, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LA -/// An integer that specifies the length of the string in \a A. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LB -/// An integer that specifies the length of the string in \a B. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// \returns Returns 1 if the resulting mask is non-zero, otherwise, returns 0. -#define _mm_cmpestrc(A, LA, B, LB, M) \ - ((int)__builtin_ia32_pcmpestric128((__v16qi)(__m128i)(A), (int)(LA), \ - (__v16qi)(__m128i)(B), (int)(LB), \ - (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with explicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns bit 0 of the resulting bit mask. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpestro(__m128i A, int LA, __m128i B, int LB, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LA -/// An integer that specifies the length of the string in \a A. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LB -/// An integer that specifies the length of the string in \a B. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. -/// \returns Returns bit 0 of the resulting bit mask. -#define _mm_cmpestro(A, LA, B, LB, M) \ - ((int)__builtin_ia32_pcmpestrio128((__v16qi)(__m128i)(A), (int)(LA), \ - (__v16qi)(__m128i)(B), (int)(LB), \ - (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with explicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns 1 if the length of the string in \a A is less than -/// the maximum, otherwise, returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpestrs(__m128i A, int LA, __m128i B, int LB, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPESTRI / PCMPESTRI </c> -/// instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LA -/// An integer that specifies the length of the string in \a A. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LB -/// An integer that specifies the length of the string in \a B. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement in the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. \n -/// \returns Returns 1 if the length of the string in \a A is less than the -/// maximum, otherwise, returns 0. -#define _mm_cmpestrs(A, LA, B, LB, M) \ - ((int)__builtin_ia32_pcmpestris128((__v16qi)(__m128i)(A), (int)(LA), \ - (__v16qi)(__m128i)(B), (int)(LB), \ - (int)(M))) - -/// Uses the immediate operand \a M to perform a comparison of string -/// data with explicitly defined lengths that is contained in source operands -/// \a A and \a B. Returns 1 if the length of the string in \a B is less than -/// the maximum, otherwise, returns 0. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_cmpestrz(__m128i A, int LA, __m128i B, int LB, const int M); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPCMPESTRI </c> instruction. -/// -/// \param A -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LA -/// An integer that specifies the length of the string in \a A. -/// \param B -/// A 128-bit integer vector containing one of the source operands to be -/// compared. -/// \param LB -/// An integer that specifies the length of the string in \a B. -/// \param M -/// An 8-bit immediate operand specifying whether the characters are bytes or -/// words and the type of comparison to perform. \n -/// Bits [1:0]: Determine source data format. \n -/// 00: 16 unsigned bytes \n -/// 01: 8 unsigned words \n -/// 10: 16 signed bytes \n -/// 11: 8 signed words \n -/// Bits [3:2]: Determine comparison type and aggregation method. \n -/// 00: Subset: Each character in \a B is compared for equality with all -/// the characters in \a A. \n -/// 01: Ranges: Each character in \a B is compared to \a A. The comparison -/// basis is greater than or equal for even-indexed elements in \a A, -/// and less than or equal for odd-indexed elements in \a A. \n -/// 10: Match: Compare each pair of corresponding characters in \a A and -/// \a B for equality. \n -/// 11: Substring: Search \a B for substring matches of \a A. \n -/// Bits [5:4]: Determine whether to perform a one's complement on the bit -/// mask of the comparison results. \n -/// 00: No effect. \n -/// 01: Negate the bit mask. \n -/// 10: No effect. \n -/// 11: Negate the bit mask only for bits with an index less than or equal -/// to the size of \a A or \a B. -/// \returns Returns 1 if the length of the string in \a B is less than the -/// maximum, otherwise, returns 0. -#define _mm_cmpestrz(A, LA, B, LB, M) \ - ((int)__builtin_ia32_pcmpestriz128((__v16qi)(__m128i)(A), (int)(LA), \ - (__v16qi)(__m128i)(B), (int)(LB), \ - (int)(M))) - -/* SSE4.2 Compare Packed Data -- Greater Than. */ -/// Compares each of the corresponding 64-bit values of the 128-bit -/// integer vectors to determine if the values in the first operand are -/// greater than those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPCMPGTQ / PCMPGTQ </c> instruction. -/// -/// \param __V1 -/// A 128-bit integer vector. -/// \param __V2 -/// A 128-bit integer vector. -/// \returns A 128-bit integer vector containing the comparison results. -static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi64(__m128i __V1, - __m128i __V2) { - return (__m128i)((__v2di)__V1 > (__v2di)__V2); -} - -#undef __DEFAULT_FN_ATTRS - -#include <popcntintrin.h> - -#include <crc32intrin.h> - -#endif /* __SMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@smmintrin.h.blob deleted file mode 100644 index 93d49577ce6b9a59c26098f16bfa6bd065ac1f58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55794 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h deleted file mode 100644 index ba978721..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h +++ /dev/null @@ -1,51 +0,0 @@ -/*===---- stdarg.h - Variable argument handling ----------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __STDARG_H - -#ifndef __GNUC_VA_LIST -#define __GNUC_VA_LIST -typedef __builtin_va_list __gnuc_va_list; -#endif - -#ifdef __need___va_list -#undef __need___va_list -#else -#define __STDARG_H -#ifndef _VA_LIST -typedef __builtin_va_list va_list; -#define _VA_LIST -#endif - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -/* C2x does not require the second parameter for va_start. */ -#define va_start(ap, ...) __builtin_va_start(ap, 0) -#else -/* Versions before C2x do require the second parameter. */ -#define va_start(ap, param) __builtin_va_start(ap, param) -#endif -#define va_end(ap) __builtin_va_end(ap) -#define va_arg(ap, type) __builtin_va_arg(ap, type) - -/* GCC always defines __va_copy, but does not define va_copy unless in c99 mode - * or -ansi is not specified, since it was not part of C90. - */ -#define __va_copy(d,s) __builtin_va_copy(d,s) - -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ - (defined(__cplusplus) && __cplusplus >= 201103L) || \ - !defined(__STRICT_ANSI__) -#define va_copy(dest, src) __builtin_va_copy(dest, src) -#endif - -#endif /* __STDARG_H */ - -#endif /* not __STDARG_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdarg.h.blob deleted file mode 100644 index a1c7dc6c49ccd1d784ddc029c527bc292c9a5110..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12335 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 LWPUF$^bY?A!8QVx diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h deleted file mode 100644 index 9406aab0..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h +++ /dev/null @@ -1,34 +0,0 @@ -/*===---- stdbool.h - Standard header for booleans -------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __STDBOOL_H -#define __STDBOOL_H - -#define __bool_true_false_are_defined 1 - -#if defined(__STDC_VERSION__) && __STDC_VERSION__ > 201710L -/* FIXME: We should be issuing a deprecation warning here, but cannot yet due - * to system headers which include this header file unconditionally. - */ -#elif !defined(__cplusplus) -#define bool _Bool -#define true 1 -#define false 0 -#elif defined(__GNUC__) && !defined(__STRICT_ANSI__) -/* Define _Bool as a GNU extension. */ -#define _Bool bool -#if defined(__cplusplus) && __cplusplus < 201103L -/* For C++98, define bool, false, true as a GNU extension. */ -#define bool bool -#define false false -#define true true -#endif -#endif - -#endif /* __STDBOOL_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdbool.h.blob deleted file mode 100644 index a4d3c1361094de146a71b127f43780af743c3e65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12476 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h deleted file mode 100644 index 42815176..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h +++ /dev/null @@ -1,128 +0,0 @@ -/*===---- stddef.h - Basic type definitions --------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined(__STDDEF_H) || defined(__need_ptrdiff_t) || \ - defined(__need_size_t) || defined(__need_wchar_t) || \ - defined(__need_NULL) || defined(__need_wint_t) - -#if !defined(__need_ptrdiff_t) && !defined(__need_size_t) && \ - !defined(__need_wchar_t) && !defined(__need_NULL) && \ - !defined(__need_wint_t) -/* Always define miscellaneous pieces when modules are available. */ -#if !__has_feature(modules) -#define __STDDEF_H -#endif -#define __need_ptrdiff_t -#define __need_size_t -#define __need_wchar_t -#define __need_NULL -#define __need_STDDEF_H_misc -/* __need_wint_t is intentionally not defined here. */ -#endif - -#if defined(__need_ptrdiff_t) -#if !defined(_PTRDIFF_T) || __has_feature(modules) -/* Always define ptrdiff_t when modules are available. */ -#if !__has_feature(modules) -#define _PTRDIFF_T -#endif -typedef __PTRDIFF_TYPE__ ptrdiff_t; -#endif -#undef __need_ptrdiff_t -#endif /* defined(__need_ptrdiff_t) */ - -#if defined(__need_size_t) -#if !defined(_SIZE_T) || __has_feature(modules) -/* Always define size_t when modules are available. */ -#if !__has_feature(modules) -#define _SIZE_T -#endif -typedef __SIZE_TYPE__ size_t; -#endif -#undef __need_size_t -#endif /*defined(__need_size_t) */ - -#if defined(__need_STDDEF_H_misc) -/* ISO9899:2011 7.20 (C11 Annex K): Define rsize_t if __STDC_WANT_LIB_EXT1__ is - * enabled. */ -#if (defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1 && \ - !defined(_RSIZE_T)) || __has_feature(modules) -/* Always define rsize_t when modules are available. */ -#if !__has_feature(modules) -#define _RSIZE_T -#endif -typedef __SIZE_TYPE__ rsize_t; -#endif -#endif /* defined(__need_STDDEF_H_misc) */ - -#if defined(__need_wchar_t) -#if !defined(__cplusplus) || (defined(_MSC_VER) && !_NATIVE_WCHAR_T_DEFINED) -/* Always define wchar_t when modules are available. */ -#if !defined(_WCHAR_T) || __has_feature(modules) -#if !__has_feature(modules) -#define _WCHAR_T -#if defined(_MSC_EXTENSIONS) -#define _WCHAR_T_DEFINED -#endif -#endif -typedef __WCHAR_TYPE__ wchar_t; -#endif -#endif -#undef __need_wchar_t -#endif /* defined(__need_wchar_t) */ - -#if defined(__need_NULL) -#undef NULL -#ifdef __cplusplus -# if !defined(__MINGW32__) && !defined(_MSC_VER) -# define NULL __null -# else -# define NULL 0 -# endif -#else -# define NULL ((void*)0) -#endif -#ifdef __cplusplus -#if defined(_MSC_EXTENSIONS) && defined(_NATIVE_NULLPTR_SUPPORTED) -namespace std { typedef decltype(nullptr) nullptr_t; } -using ::std::nullptr_t; -#endif -#endif -#undef __need_NULL -#endif /* defined(__need_NULL) */ - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -typedef typeof(nullptr) nullptr_t; -#endif /* defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L */ - -#if defined(__need_STDDEF_H_misc) -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ - (defined(__cplusplus) && __cplusplus >= 201103L) -#include "__stddef_max_align_t.h" -#endif -#define offsetof(t, d) __builtin_offsetof(t, d) -#undef __need_STDDEF_H_misc -#endif /* defined(__need_STDDEF_H_misc) */ - -/* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use -__WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */ -#if defined(__need_wint_t) -/* Always define wint_t when modules are available. */ -#if !defined(_WINT_T) || __has_feature(modules) -#if !__has_feature(modules) -#define _WINT_T -#endif -typedef __WINT_TYPE__ wint_t; -#endif -#undef __need_wint_t -#endif /* __need_wint_t */ - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stddef.h.blob deleted file mode 100644 index e631c67d58284b9153947e698f24c31ae69778dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12392 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h deleted file mode 100644 index a47e91be..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h +++ /dev/null @@ -1,979 +0,0 @@ -/*===---- stdint.h - Standard header for sized integer types --------------===*\ - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * -\*===----------------------------------------------------------------------===*/ - -#ifndef __CLANG_STDINT_H -// AIX system headers need stdint.h to be re-enterable while _STD_TYPES_T -// is defined until an inclusion of it without _STD_TYPES_T occurs, in which -// case the header guard macro is defined. -#if !defined(_AIX) || !defined(_STD_TYPES_T) || !defined(__STDC_HOSTED__) -#define __CLANG_STDINT_H -#endif - -/* If we're hosted, fall back to the system's stdint.h, which might have - * additional definitions. - */ -#if __STDC_HOSTED__ && __has_include_next(<stdint.h>) - -// C99 7.18.3 Limits of other integer types -// -// Footnote 219, 220: C++ implementations should define these macros only when -// __STDC_LIMIT_MACROS is defined before <stdint.h> is included. -// -// Footnote 222: C++ implementations should define these macros only when -// __STDC_CONSTANT_MACROS is defined before <stdint.h> is included. -// -// C++11 [cstdint.syn]p2: -// -// The macros defined by <cstdint> are provided unconditionally. In particular, -// the symbols __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS (mentioned in -// footnotes 219, 220, and 222 in the C standard) play no role in C++. -// -// C11 removed the problematic footnotes. -// -// Work around this inconsistency by always defining those macros in C++ mode, -// so that a C library implementation which follows the C99 standard can be -// used in C++. -# ifdef __cplusplus -# if !defined(__STDC_LIMIT_MACROS) -# define __STDC_LIMIT_MACROS -# define __STDC_LIMIT_MACROS_DEFINED_BY_CLANG -# endif -# if !defined(__STDC_CONSTANT_MACROS) -# define __STDC_CONSTANT_MACROS -# define __STDC_CONSTANT_MACROS_DEFINED_BY_CLANG -# endif -# endif - -# include_next <stdint.h> - -# ifdef __STDC_LIMIT_MACROS_DEFINED_BY_CLANG -# undef __STDC_LIMIT_MACROS -# undef __STDC_LIMIT_MACROS_DEFINED_BY_CLANG -# endif -# ifdef __STDC_CONSTANT_MACROS_DEFINED_BY_CLANG -# undef __STDC_CONSTANT_MACROS -# undef __STDC_CONSTANT_MACROS_DEFINED_BY_CLANG -# endif - -#else - -/* C99 7.18.1.1 Exact-width integer types. - * C99 7.18.1.2 Minimum-width integer types. - * C99 7.18.1.3 Fastest minimum-width integer types. - * - * The standard requires that exact-width type be defined for 8-, 16-, 32-, and - * 64-bit types if they are implemented. Other exact width types are optional. - * This implementation defines an exact-width types for every integer width - * that is represented in the standard integer types. - * - * The standard also requires minimum-width types be defined for 8-, 16-, 32-, - * and 64-bit widths regardless of whether there are corresponding exact-width - * types. - * - * To accommodate targets that are missing types that are exactly 8, 16, 32, or - * 64 bits wide, this implementation takes an approach of cascading - * redefinitions, redefining __int_leastN_t to successively smaller exact-width - * types. It is therefore important that the types are defined in order of - * descending widths. - * - * We currently assume that the minimum-width types and the fastest - * minimum-width types are the same. This is allowed by the standard, but is - * suboptimal. - * - * In violation of the standard, some targets do not implement a type that is - * wide enough to represent all of the required widths (8-, 16-, 32-, 64-bit). - * To accommodate these targets, a required minimum-width type is only - * defined if there exists an exact-width type of equal or greater width. - */ - -#ifdef __INT64_TYPE__ -# ifndef __int8_t_defined /* glibc sys/types.h also defines int64_t*/ -typedef __INT64_TYPE__ int64_t; -# endif /* __int8_t_defined */ -typedef __UINT64_TYPE__ uint64_t; -# undef __int_least64_t -# define __int_least64_t int64_t -# undef __uint_least64_t -# define __uint_least64_t uint64_t -# undef __int_least32_t -# define __int_least32_t int64_t -# undef __uint_least32_t -# define __uint_least32_t uint64_t -# undef __int_least16_t -# define __int_least16_t int64_t -# undef __uint_least16_t -# define __uint_least16_t uint64_t -# undef __int_least8_t -# define __int_least8_t int64_t -# undef __uint_least8_t -# define __uint_least8_t uint64_t -#endif /* __INT64_TYPE__ */ - -#ifdef __int_least64_t -typedef __int_least64_t int_least64_t; -typedef __uint_least64_t uint_least64_t; -typedef __int_least64_t int_fast64_t; -typedef __uint_least64_t uint_fast64_t; -#endif /* __int_least64_t */ - -#ifdef __INT56_TYPE__ -typedef __INT56_TYPE__ int56_t; -typedef __UINT56_TYPE__ uint56_t; -typedef int56_t int_least56_t; -typedef uint56_t uint_least56_t; -typedef int56_t int_fast56_t; -typedef uint56_t uint_fast56_t; -# undef __int_least32_t -# define __int_least32_t int56_t -# undef __uint_least32_t -# define __uint_least32_t uint56_t -# undef __int_least16_t -# define __int_least16_t int56_t -# undef __uint_least16_t -# define __uint_least16_t uint56_t -# undef __int_least8_t -# define __int_least8_t int56_t -# undef __uint_least8_t -# define __uint_least8_t uint56_t -#endif /* __INT56_TYPE__ */ - - -#ifdef __INT48_TYPE__ -typedef __INT48_TYPE__ int48_t; -typedef __UINT48_TYPE__ uint48_t; -typedef int48_t int_least48_t; -typedef uint48_t uint_least48_t; -typedef int48_t int_fast48_t; -typedef uint48_t uint_fast48_t; -# undef __int_least32_t -# define __int_least32_t int48_t -# undef __uint_least32_t -# define __uint_least32_t uint48_t -# undef __int_least16_t -# define __int_least16_t int48_t -# undef __uint_least16_t -# define __uint_least16_t uint48_t -# undef __int_least8_t -# define __int_least8_t int48_t -# undef __uint_least8_t -# define __uint_least8_t uint48_t -#endif /* __INT48_TYPE__ */ - - -#ifdef __INT40_TYPE__ -typedef __INT40_TYPE__ int40_t; -typedef __UINT40_TYPE__ uint40_t; -typedef int40_t int_least40_t; -typedef uint40_t uint_least40_t; -typedef int40_t int_fast40_t; -typedef uint40_t uint_fast40_t; -# undef __int_least32_t -# define __int_least32_t int40_t -# undef __uint_least32_t -# define __uint_least32_t uint40_t -# undef __int_least16_t -# define __int_least16_t int40_t -# undef __uint_least16_t -# define __uint_least16_t uint40_t -# undef __int_least8_t -# define __int_least8_t int40_t -# undef __uint_least8_t -# define __uint_least8_t uint40_t -#endif /* __INT40_TYPE__ */ - - -#ifdef __INT32_TYPE__ - -# ifndef __int8_t_defined /* glibc sys/types.h also defines int32_t*/ -typedef __INT32_TYPE__ int32_t; -# endif /* __int8_t_defined */ - -# ifndef __uint32_t_defined /* more glibc compatibility */ -# define __uint32_t_defined -typedef __UINT32_TYPE__ uint32_t; -# endif /* __uint32_t_defined */ - -# undef __int_least32_t -# define __int_least32_t int32_t -# undef __uint_least32_t -# define __uint_least32_t uint32_t -# undef __int_least16_t -# define __int_least16_t int32_t -# undef __uint_least16_t -# define __uint_least16_t uint32_t -# undef __int_least8_t -# define __int_least8_t int32_t -# undef __uint_least8_t -# define __uint_least8_t uint32_t -#endif /* __INT32_TYPE__ */ - -#ifdef __int_least32_t -typedef __int_least32_t int_least32_t; -typedef __uint_least32_t uint_least32_t; -typedef __int_least32_t int_fast32_t; -typedef __uint_least32_t uint_fast32_t; -#endif /* __int_least32_t */ - -#ifdef __INT24_TYPE__ -typedef __INT24_TYPE__ int24_t; -typedef __UINT24_TYPE__ uint24_t; -typedef int24_t int_least24_t; -typedef uint24_t uint_least24_t; -typedef int24_t int_fast24_t; -typedef uint24_t uint_fast24_t; -# undef __int_least16_t -# define __int_least16_t int24_t -# undef __uint_least16_t -# define __uint_least16_t uint24_t -# undef __int_least8_t -# define __int_least8_t int24_t -# undef __uint_least8_t -# define __uint_least8_t uint24_t -#endif /* __INT24_TYPE__ */ - -#ifdef __INT16_TYPE__ -#ifndef __int8_t_defined /* glibc sys/types.h also defines int16_t*/ -typedef __INT16_TYPE__ int16_t; -#endif /* __int8_t_defined */ -typedef __UINT16_TYPE__ uint16_t; -# undef __int_least16_t -# define __int_least16_t int16_t -# undef __uint_least16_t -# define __uint_least16_t uint16_t -# undef __int_least8_t -# define __int_least8_t int16_t -# undef __uint_least8_t -# define __uint_least8_t uint16_t -#endif /* __INT16_TYPE__ */ - -#ifdef __int_least16_t -typedef __int_least16_t int_least16_t; -typedef __uint_least16_t uint_least16_t; -typedef __int_least16_t int_fast16_t; -typedef __uint_least16_t uint_fast16_t; -#endif /* __int_least16_t */ - - -#ifdef __INT8_TYPE__ -#ifndef __int8_t_defined /* glibc sys/types.h also defines int8_t*/ -typedef __INT8_TYPE__ int8_t; -#endif /* __int8_t_defined */ -typedef __UINT8_TYPE__ uint8_t; -# undef __int_least8_t -# define __int_least8_t int8_t -# undef __uint_least8_t -# define __uint_least8_t uint8_t -#endif /* __INT8_TYPE__ */ - -#ifdef __int_least8_t -typedef __int_least8_t int_least8_t; -typedef __uint_least8_t uint_least8_t; -typedef __int_least8_t int_fast8_t; -typedef __uint_least8_t uint_fast8_t; -#endif /* __int_least8_t */ - -/* prevent glibc sys/types.h from defining conflicting types */ -#ifndef __int8_t_defined -# define __int8_t_defined -#endif /* __int8_t_defined */ - -/* C99 7.18.1.4 Integer types capable of holding object pointers. - */ -#define __stdint_join3(a,b,c) a ## b ## c - -#ifndef _INTPTR_T -#ifndef __intptr_t_defined -typedef __INTPTR_TYPE__ intptr_t; -#define __intptr_t_defined -#define _INTPTR_T -#endif -#endif - -#ifndef _UINTPTR_T -typedef __UINTPTR_TYPE__ uintptr_t; -#define _UINTPTR_T -#endif - -/* C99 7.18.1.5 Greatest-width integer types. - */ -typedef __INTMAX_TYPE__ intmax_t; -typedef __UINTMAX_TYPE__ uintmax_t; - -/* C99 7.18.4 Macros for minimum-width integer constants. - * - * The standard requires that integer constant macros be defined for all the - * minimum-width types defined above. As 8-, 16-, 32-, and 64-bit minimum-width - * types are required, the corresponding integer constant macros are defined - * here. This implementation also defines minimum-width types for every other - * integer width that the target implements, so corresponding macros are - * defined below, too. - * - * These macros are defined using the same successive-shrinking approach as - * the type definitions above. It is likewise important that macros are defined - * in order of decending width. - * - * Note that C++ should not check __STDC_CONSTANT_MACROS here, contrary to the - * claims of the C standard (see C++ 18.3.1p2, [cstdint.syn]). - */ - -#define __int_c_join(a, b) a ## b -#define __int_c(v, suffix) __int_c_join(v, suffix) -#define __uint_c(v, suffix) __int_c_join(v##U, suffix) - - -#ifdef __INT64_TYPE__ -# undef __int64_c_suffix -# undef __int32_c_suffix -# undef __int16_c_suffix -# undef __int8_c_suffix -# ifdef __INT64_C_SUFFIX__ -# define __int64_c_suffix __INT64_C_SUFFIX__ -# define __int32_c_suffix __INT64_C_SUFFIX__ -# define __int16_c_suffix __INT64_C_SUFFIX__ -# define __int8_c_suffix __INT64_C_SUFFIX__ -# endif /* __INT64_C_SUFFIX__ */ -#endif /* __INT64_TYPE__ */ - -#ifdef __int_least64_t -# ifdef __int64_c_suffix -# define INT64_C(v) __int_c(v, __int64_c_suffix) -# define UINT64_C(v) __uint_c(v, __int64_c_suffix) -# else -# define INT64_C(v) v -# define UINT64_C(v) v ## U -# endif /* __int64_c_suffix */ -#endif /* __int_least64_t */ - - -#ifdef __INT56_TYPE__ -# undef __int32_c_suffix -# undef __int16_c_suffix -# undef __int8_c_suffix -# ifdef __INT56_C_SUFFIX__ -# define INT56_C(v) __int_c(v, __INT56_C_SUFFIX__) -# define UINT56_C(v) __uint_c(v, __INT56_C_SUFFIX__) -# define __int32_c_suffix __INT56_C_SUFFIX__ -# define __int16_c_suffix __INT56_C_SUFFIX__ -# define __int8_c_suffix __INT56_C_SUFFIX__ -# else -# define INT56_C(v) v -# define UINT56_C(v) v ## U -# endif /* __INT56_C_SUFFIX__ */ -#endif /* __INT56_TYPE__ */ - - -#ifdef __INT48_TYPE__ -# undef __int32_c_suffix -# undef __int16_c_suffix -# undef __int8_c_suffix -# ifdef __INT48_C_SUFFIX__ -# define INT48_C(v) __int_c(v, __INT48_C_SUFFIX__) -# define UINT48_C(v) __uint_c(v, __INT48_C_SUFFIX__) -# define __int32_c_suffix __INT48_C_SUFFIX__ -# define __int16_c_suffix __INT48_C_SUFFIX__ -# define __int8_c_suffix __INT48_C_SUFFIX__ -# else -# define INT48_C(v) v -# define UINT48_C(v) v ## U -# endif /* __INT48_C_SUFFIX__ */ -#endif /* __INT48_TYPE__ */ - - -#ifdef __INT40_TYPE__ -# undef __int32_c_suffix -# undef __int16_c_suffix -# undef __int8_c_suffix -# ifdef __INT40_C_SUFFIX__ -# define INT40_C(v) __int_c(v, __INT40_C_SUFFIX__) -# define UINT40_C(v) __uint_c(v, __INT40_C_SUFFIX__) -# define __int32_c_suffix __INT40_C_SUFFIX__ -# define __int16_c_suffix __INT40_C_SUFFIX__ -# define __int8_c_suffix __INT40_C_SUFFIX__ -# else -# define INT40_C(v) v -# define UINT40_C(v) v ## U -# endif /* __INT40_C_SUFFIX__ */ -#endif /* __INT40_TYPE__ */ - - -#ifdef __INT32_TYPE__ -# undef __int32_c_suffix -# undef __int16_c_suffix -# undef __int8_c_suffix -# ifdef __INT32_C_SUFFIX__ -# define __int32_c_suffix __INT32_C_SUFFIX__ -# define __int16_c_suffix __INT32_C_SUFFIX__ -# define __int8_c_suffix __INT32_C_SUFFIX__ -# endif /* __INT32_C_SUFFIX__ */ -#endif /* __INT32_TYPE__ */ - -#ifdef __int_least32_t -# ifdef __int32_c_suffix -# define INT32_C(v) __int_c(v, __int32_c_suffix) -# define UINT32_C(v) __uint_c(v, __int32_c_suffix) -# else -# define INT32_C(v) v -# define UINT32_C(v) v ## U -# endif /* __int32_c_suffix */ -#endif /* __int_least32_t */ - - -#ifdef __INT24_TYPE__ -# undef __int16_c_suffix -# undef __int8_c_suffix -# ifdef __INT24_C_SUFFIX__ -# define INT24_C(v) __int_c(v, __INT24_C_SUFFIX__) -# define UINT24_C(v) __uint_c(v, __INT24_C_SUFFIX__) -# define __int16_c_suffix __INT24_C_SUFFIX__ -# define __int8_c_suffix __INT24_C_SUFFIX__ -# else -# define INT24_C(v) v -# define UINT24_C(v) v ## U -# endif /* __INT24_C_SUFFIX__ */ -#endif /* __INT24_TYPE__ */ - - -#ifdef __INT16_TYPE__ -# undef __int16_c_suffix -# undef __int8_c_suffix -# ifdef __INT16_C_SUFFIX__ -# define __int16_c_suffix __INT16_C_SUFFIX__ -# define __int8_c_suffix __INT16_C_SUFFIX__ -# endif /* __INT16_C_SUFFIX__ */ -#endif /* __INT16_TYPE__ */ - -#ifdef __int_least16_t -# ifdef __int16_c_suffix -# define INT16_C(v) __int_c(v, __int16_c_suffix) -# define UINT16_C(v) __uint_c(v, __int16_c_suffix) -# else -# define INT16_C(v) v -# define UINT16_C(v) v ## U -# endif /* __int16_c_suffix */ -#endif /* __int_least16_t */ - - -#ifdef __INT8_TYPE__ -# undef __int8_c_suffix -# ifdef __INT8_C_SUFFIX__ -# define __int8_c_suffix __INT8_C_SUFFIX__ -# endif /* __INT8_C_SUFFIX__ */ -#endif /* __INT8_TYPE__ */ - -#ifdef __int_least8_t -# ifdef __int8_c_suffix -# define INT8_C(v) __int_c(v, __int8_c_suffix) -# define UINT8_C(v) __uint_c(v, __int8_c_suffix) -# else -# define INT8_C(v) v -# define UINT8_C(v) v ## U -# endif /* __int8_c_suffix */ -#endif /* __int_least8_t */ - - -/* C99 7.18.2.1 Limits of exact-width integer types. - * C99 7.18.2.2 Limits of minimum-width integer types. - * C99 7.18.2.3 Limits of fastest minimum-width integer types. - * - * The presence of limit macros are completely optional in C99. This - * implementation defines limits for all of the types (exact- and - * minimum-width) that it defines above, using the limits of the minimum-width - * type for any types that do not have exact-width representations. - * - * As in the type definitions, this section takes an approach of - * successive-shrinking to determine which limits to use for the standard (8, - * 16, 32, 64) bit widths when they don't have exact representations. It is - * therefore important that the definitions be kept in order of decending - * widths. - * - * Note that C++ should not check __STDC_LIMIT_MACROS here, contrary to the - * claims of the C standard (see C++ 18.3.1p2, [cstdint.syn]). - */ - -#ifdef __INT64_TYPE__ -# define INT64_MAX INT64_C( 9223372036854775807) -# define INT64_MIN (-INT64_C( 9223372036854775807)-1) -# define UINT64_MAX UINT64_C(18446744073709551615) -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT64_WIDTH 64 -# define INT64_WIDTH UINT64_WIDTH - -# define __UINT_LEAST64_WIDTH UINT64_WIDTH -# undef __UINT_LEAST32_WIDTH -# define __UINT_LEAST32_WIDTH UINT64_WIDTH -# undef __UINT_LEAST16_WIDTH -# define __UINT_LEAST16_WIDTH UINT64_WIDTH -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT64_MAX -#endif /* __STDC_VERSION__ */ - -# define __INT_LEAST64_MIN INT64_MIN -# define __INT_LEAST64_MAX INT64_MAX -# define __UINT_LEAST64_MAX UINT64_MAX -# undef __INT_LEAST32_MIN -# define __INT_LEAST32_MIN INT64_MIN -# undef __INT_LEAST32_MAX -# define __INT_LEAST32_MAX INT64_MAX -# undef __UINT_LEAST32_MAX -# define __UINT_LEAST32_MAX UINT64_MAX -# undef __INT_LEAST16_MIN -# define __INT_LEAST16_MIN INT64_MIN -# undef __INT_LEAST16_MAX -# define __INT_LEAST16_MAX INT64_MAX -# undef __UINT_LEAST16_MAX -# define __UINT_LEAST16_MAX UINT64_MAX -# undef __INT_LEAST8_MIN -# define __INT_LEAST8_MIN INT64_MIN -# undef __INT_LEAST8_MAX -# define __INT_LEAST8_MAX INT64_MAX -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT64_MAX -#endif /* __INT64_TYPE__ */ - -#ifdef __INT_LEAST64_MIN -# define INT_LEAST64_MIN __INT_LEAST64_MIN -# define INT_LEAST64_MAX __INT_LEAST64_MAX -# define UINT_LEAST64_MAX __UINT_LEAST64_MAX -# define INT_FAST64_MIN __INT_LEAST64_MIN -# define INT_FAST64_MAX __INT_LEAST64_MAX -# define UINT_FAST64_MAX __UINT_LEAST64_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT_LEAST64_WIDTH __UINT_LEAST64_WIDTH -# define INT_LEAST64_WIDTH UINT_LEAST64_WIDTH -# define UINT_FAST64_WIDTH __UINT_LEAST64_WIDTH -# define INT_FAST64_WIDTH UINT_FAST64_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT_LEAST64_MIN */ - - -#ifdef __INT56_TYPE__ -# define INT56_MAX INT56_C(36028797018963967) -# define INT56_MIN (-INT56_C(36028797018963967)-1) -# define UINT56_MAX UINT56_C(72057594037927935) -# define INT_LEAST56_MIN INT56_MIN -# define INT_LEAST56_MAX INT56_MAX -# define UINT_LEAST56_MAX UINT56_MAX -# define INT_FAST56_MIN INT56_MIN -# define INT_FAST56_MAX INT56_MAX -# define UINT_FAST56_MAX UINT56_MAX - -# undef __INT_LEAST32_MIN -# define __INT_LEAST32_MIN INT56_MIN -# undef __INT_LEAST32_MAX -# define __INT_LEAST32_MAX INT56_MAX -# undef __UINT_LEAST32_MAX -# define __UINT_LEAST32_MAX UINT56_MAX -# undef __INT_LEAST16_MIN -# define __INT_LEAST16_MIN INT56_MIN -# undef __INT_LEAST16_MAX -# define __INT_LEAST16_MAX INT56_MAX -# undef __UINT_LEAST16_MAX -# define __UINT_LEAST16_MAX UINT56_MAX -# undef __INT_LEAST8_MIN -# define __INT_LEAST8_MIN INT56_MIN -# undef __INT_LEAST8_MAX -# define __INT_LEAST8_MAX INT56_MAX -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT56_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT56_WIDTH 56 -# define INT56_WIDTH UINT56_WIDTH -# define UINT_LEAST56_WIDTH UINT56_WIDTH -# define INT_LEAST56_WIDTH UINT_LEAST56_WIDTH -# define UINT_FAST56_WIDTH UINT56_WIDTH -# define INT_FAST56_WIDTH UINT_FAST56_WIDTH -# undef __UINT_LEAST32_WIDTH -# define __UINT_LEAST32_WIDTH UINT56_WIDTH -# undef __UINT_LEAST16_WIDTH -# define __UINT_LEAST16_WIDTH UINT56_WIDTH -# undef __UINT_LEAST8_WIDTH -# define __UINT_LEAST8_WIDTH UINT56_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT56_TYPE__ */ - - -#ifdef __INT48_TYPE__ -# define INT48_MAX INT48_C(140737488355327) -# define INT48_MIN (-INT48_C(140737488355327)-1) -# define UINT48_MAX UINT48_C(281474976710655) -# define INT_LEAST48_MIN INT48_MIN -# define INT_LEAST48_MAX INT48_MAX -# define UINT_LEAST48_MAX UINT48_MAX -# define INT_FAST48_MIN INT48_MIN -# define INT_FAST48_MAX INT48_MAX -# define UINT_FAST48_MAX UINT48_MAX - -# undef __INT_LEAST32_MIN -# define __INT_LEAST32_MIN INT48_MIN -# undef __INT_LEAST32_MAX -# define __INT_LEAST32_MAX INT48_MAX -# undef __UINT_LEAST32_MAX -# define __UINT_LEAST32_MAX UINT48_MAX -# undef __INT_LEAST16_MIN -# define __INT_LEAST16_MIN INT48_MIN -# undef __INT_LEAST16_MAX -# define __INT_LEAST16_MAX INT48_MAX -# undef __UINT_LEAST16_MAX -# define __UINT_LEAST16_MAX UINT48_MAX -# undef __INT_LEAST8_MIN -# define __INT_LEAST8_MIN INT48_MIN -# undef __INT_LEAST8_MAX -# define __INT_LEAST8_MAX INT48_MAX -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT48_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -#define UINT48_WIDTH 48 -#define INT48_WIDTH UINT48_WIDTH -#define UINT_LEAST48_WIDTH UINT48_WIDTH -#define INT_LEAST48_WIDTH UINT_LEAST48_WIDTH -#define UINT_FAST48_WIDTH UINT48_WIDTH -#define INT_FAST48_WIDTH UINT_FAST48_WIDTH -#undef __UINT_LEAST32_WIDTH -#define __UINT_LEAST32_WIDTH UINT48_WIDTH -# undef __UINT_LEAST16_WIDTH -#define __UINT_LEAST16_WIDTH UINT48_WIDTH -# undef __UINT_LEAST8_WIDTH -#define __UINT_LEAST8_WIDTH UINT48_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT48_TYPE__ */ - - -#ifdef __INT40_TYPE__ -# define INT40_MAX INT40_C(549755813887) -# define INT40_MIN (-INT40_C(549755813887)-1) -# define UINT40_MAX UINT40_C(1099511627775) -# define INT_LEAST40_MIN INT40_MIN -# define INT_LEAST40_MAX INT40_MAX -# define UINT_LEAST40_MAX UINT40_MAX -# define INT_FAST40_MIN INT40_MIN -# define INT_FAST40_MAX INT40_MAX -# define UINT_FAST40_MAX UINT40_MAX - -# undef __INT_LEAST32_MIN -# define __INT_LEAST32_MIN INT40_MIN -# undef __INT_LEAST32_MAX -# define __INT_LEAST32_MAX INT40_MAX -# undef __UINT_LEAST32_MAX -# define __UINT_LEAST32_MAX UINT40_MAX -# undef __INT_LEAST16_MIN -# define __INT_LEAST16_MIN INT40_MIN -# undef __INT_LEAST16_MAX -# define __INT_LEAST16_MAX INT40_MAX -# undef __UINT_LEAST16_MAX -# define __UINT_LEAST16_MAX UINT40_MAX -# undef __INT_LEAST8_MIN -# define __INT_LEAST8_MIN INT40_MIN -# undef __INT_LEAST8_MAX -# define __INT_LEAST8_MAX INT40_MAX -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT40_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT40_WIDTH 40 -# define INT40_WIDTH UINT40_WIDTH -# define UINT_LEAST40_WIDTH UINT40_WIDTH -# define INT_LEAST40_WIDTH UINT_LEAST40_WIDTH -# define UINT_FAST40_WIDTH UINT40_WIDTH -# define INT_FAST40_WIDTH UINT_FAST40_WIDTH -# undef __UINT_LEAST32_WIDTH -# define __UINT_LEAST32_WIDTH UINT40_WIDTH -# undef __UINT_LEAST16_WIDTH -# define __UINT_LEAST16_WIDTH UINT40_WIDTH -# undef __UINT_LEAST8_WIDTH -# define __UINT_LEAST8_WIDTH UINT40_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT40_TYPE__ */ - - -#ifdef __INT32_TYPE__ -# define INT32_MAX INT32_C(2147483647) -# define INT32_MIN (-INT32_C(2147483647)-1) -# define UINT32_MAX UINT32_C(4294967295) - -# undef __INT_LEAST32_MIN -# define __INT_LEAST32_MIN INT32_MIN -# undef __INT_LEAST32_MAX -# define __INT_LEAST32_MAX INT32_MAX -# undef __UINT_LEAST32_MAX -# define __UINT_LEAST32_MAX UINT32_MAX -# undef __INT_LEAST16_MIN -# define __INT_LEAST16_MIN INT32_MIN -# undef __INT_LEAST16_MAX -# define __INT_LEAST16_MAX INT32_MAX -# undef __UINT_LEAST16_MAX -# define __UINT_LEAST16_MAX UINT32_MAX -# undef __INT_LEAST8_MIN -# define __INT_LEAST8_MIN INT32_MIN -# undef __INT_LEAST8_MAX -# define __INT_LEAST8_MAX INT32_MAX -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT32_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT32_WIDTH 32 -# define INT32_WIDTH UINT32_WIDTH -# undef __UINT_LEAST32_WIDTH -# define __UINT_LEAST32_WIDTH UINT32_WIDTH -# undef __UINT_LEAST16_WIDTH -# define __UINT_LEAST16_WIDTH UINT32_WIDTH -# undef __UINT_LEAST8_WIDTH -# define __UINT_LEAST8_WIDTH UINT32_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT32_TYPE__ */ - -#ifdef __INT_LEAST32_MIN -# define INT_LEAST32_MIN __INT_LEAST32_MIN -# define INT_LEAST32_MAX __INT_LEAST32_MAX -# define UINT_LEAST32_MAX __UINT_LEAST32_MAX -# define INT_FAST32_MIN __INT_LEAST32_MIN -# define INT_FAST32_MAX __INT_LEAST32_MAX -# define UINT_FAST32_MAX __UINT_LEAST32_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT_LEAST32_WIDTH __UINT_LEAST32_WIDTH -# define INT_LEAST32_WIDTH UINT_LEAST32_WIDTH -# define UINT_FAST32_WIDTH __UINT_LEAST32_WIDTH -# define INT_FAST32_WIDTH UINT_FAST32_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT_LEAST32_MIN */ - - -#ifdef __INT24_TYPE__ -# define INT24_MAX INT24_C(8388607) -# define INT24_MIN (-INT24_C(8388607)-1) -# define UINT24_MAX UINT24_C(16777215) -# define INT_LEAST24_MIN INT24_MIN -# define INT_LEAST24_MAX INT24_MAX -# define UINT_LEAST24_MAX UINT24_MAX -# define INT_FAST24_MIN INT24_MIN -# define INT_FAST24_MAX INT24_MAX -# define UINT_FAST24_MAX UINT24_MAX - -# undef __INT_LEAST16_MIN -# define __INT_LEAST16_MIN INT24_MIN -# undef __INT_LEAST16_MAX -# define __INT_LEAST16_MAX INT24_MAX -# undef __UINT_LEAST16_MAX -# define __UINT_LEAST16_MAX UINT24_MAX -# undef __INT_LEAST8_MIN -# define __INT_LEAST8_MIN INT24_MIN -# undef __INT_LEAST8_MAX -# define __INT_LEAST8_MAX INT24_MAX -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT24_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT24_WIDTH 24 -# define INT24_WIDTH UINT24_WIDTH -# define UINT_LEAST24_WIDTH UINT24_WIDTH -# define INT_LEAST24_WIDTH UINT_LEAST24_WIDTH -# define UINT_FAST24_WIDTH UINT24_WIDTH -# define INT_FAST24_WIDTH UINT_FAST24_WIDTH -# undef __UINT_LEAST16_WIDTH -# define __UINT_LEAST16_WIDTH UINT24_WIDTH -# undef __UINT_LEAST8_WIDTH -# define __UINT_LEAST8_WIDTH UINT24_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT24_TYPE__ */ - - -#ifdef __INT16_TYPE__ -#define INT16_MAX INT16_C(32767) -#define INT16_MIN (-INT16_C(32767)-1) -#define UINT16_MAX UINT16_C(65535) - -# undef __INT_LEAST16_MIN -# define __INT_LEAST16_MIN INT16_MIN -# undef __INT_LEAST16_MAX -# define __INT_LEAST16_MAX INT16_MAX -# undef __UINT_LEAST16_MAX -# define __UINT_LEAST16_MAX UINT16_MAX -# undef __INT_LEAST8_MIN -# define __INT_LEAST8_MIN INT16_MIN -# undef __INT_LEAST8_MAX -# define __INT_LEAST8_MAX INT16_MAX -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT16_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT16_WIDTH 16 -# define INT16_WIDTH UINT16_WIDTH -# undef __UINT_LEAST16_WIDTH -# define __UINT_LEAST16_WIDTH UINT16_WIDTH -# undef __UINT_LEAST8_WIDTH -# define __UINT_LEAST8_WIDTH UINT16_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT16_TYPE__ */ - -#ifdef __INT_LEAST16_MIN -# define INT_LEAST16_MIN __INT_LEAST16_MIN -# define INT_LEAST16_MAX __INT_LEAST16_MAX -# define UINT_LEAST16_MAX __UINT_LEAST16_MAX -# define INT_FAST16_MIN __INT_LEAST16_MIN -# define INT_FAST16_MAX __INT_LEAST16_MAX -# define UINT_FAST16_MAX __UINT_LEAST16_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT_LEAST16_WIDTH __UINT_LEAST16_WIDTH -# define INT_LEAST16_WIDTH UINT_LEAST16_WIDTH -# define UINT_FAST16_WIDTH __UINT_LEAST16_WIDTH -# define INT_FAST16_WIDTH UINT_FAST16_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT_LEAST16_MIN */ - - -#ifdef __INT8_TYPE__ -# define INT8_MAX INT8_C(127) -# define INT8_MIN (-INT8_C(127)-1) -# define UINT8_MAX UINT8_C(255) - -# undef __INT_LEAST8_MIN -# define __INT_LEAST8_MIN INT8_MIN -# undef __INT_LEAST8_MAX -# define __INT_LEAST8_MAX INT8_MAX -# undef __UINT_LEAST8_MAX -# define __UINT_LEAST8_MAX UINT8_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT8_WIDTH 8 -# define INT8_WIDTH UINT8_WIDTH -# undef __UINT_LEAST8_WIDTH -# define __UINT_LEAST8_WIDTH UINT8_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT8_TYPE__ */ - -#ifdef __INT_LEAST8_MIN -# define INT_LEAST8_MIN __INT_LEAST8_MIN -# define INT_LEAST8_MAX __INT_LEAST8_MAX -# define UINT_LEAST8_MAX __UINT_LEAST8_MAX -# define INT_FAST8_MIN __INT_LEAST8_MIN -# define INT_FAST8_MAX __INT_LEAST8_MAX -# define UINT_FAST8_MAX __UINT_LEAST8_MAX - -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -# define UINT_LEAST8_WIDTH __UINT_LEAST8_WIDTH -# define INT_LEAST8_WIDTH UINT_LEAST8_WIDTH -# define UINT_FAST8_WIDTH __UINT_LEAST8_WIDTH -# define INT_FAST8_WIDTH UINT_FAST8_WIDTH -#endif /* __STDC_VERSION__ */ -#endif /* __INT_LEAST8_MIN */ - -/* Some utility macros */ -#define __INTN_MIN(n) __stdint_join3( INT, n, _MIN) -#define __INTN_MAX(n) __stdint_join3( INT, n, _MAX) -#define __UINTN_MAX(n) __stdint_join3(UINT, n, _MAX) -#define __INTN_C(n, v) __stdint_join3( INT, n, _C(v)) -#define __UINTN_C(n, v) __stdint_join3(UINT, n, _C(v)) - -/* C99 7.18.2.4 Limits of integer types capable of holding object pointers. */ -/* C99 7.18.3 Limits of other integer types. */ - -#define INTPTR_MIN (-__INTPTR_MAX__-1) -#define INTPTR_MAX __INTPTR_MAX__ -#define UINTPTR_MAX __UINTPTR_MAX__ -#define PTRDIFF_MIN (-__PTRDIFF_MAX__-1) -#define PTRDIFF_MAX __PTRDIFF_MAX__ -#define SIZE_MAX __SIZE_MAX__ - -/* C2x 7.20.2.4 Width of integer types capable of holding object pointers. */ -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -/* NB: The C standard requires that these be the same value, but the compiler - exposes separate internal width macros. */ -#define INTPTR_WIDTH __INTPTR_WIDTH__ -#define UINTPTR_WIDTH __UINTPTR_WIDTH__ -#endif - -/* ISO9899:2011 7.20 (C11 Annex K): Define RSIZE_MAX if __STDC_WANT_LIB_EXT1__ - * is enabled. */ -#if defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1 -#define RSIZE_MAX (SIZE_MAX >> 1) -#endif - -/* C99 7.18.2.5 Limits of greatest-width integer types. */ -#define INTMAX_MIN (-__INTMAX_MAX__-1) -#define INTMAX_MAX __INTMAX_MAX__ -#define UINTMAX_MAX __UINTMAX_MAX__ - -/* C2x 7.20.2.5 Width of greatest-width integer types. */ -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -/* NB: The C standard requires that these be the same value, but the compiler - exposes separate internal width macros. */ -#define INTMAX_WIDTH __INTMAX_WIDTH__ -#define UINTMAX_WIDTH __UINTMAX_WIDTH__ -#endif - -/* C99 7.18.3 Limits of other integer types. */ -#define SIG_ATOMIC_MIN __INTN_MIN(__SIG_ATOMIC_WIDTH__) -#define SIG_ATOMIC_MAX __INTN_MAX(__SIG_ATOMIC_WIDTH__) -#ifdef __WINT_UNSIGNED__ -# define WINT_MIN __UINTN_C(__WINT_WIDTH__, 0) -# define WINT_MAX __UINTN_MAX(__WINT_WIDTH__) -#else -# define WINT_MIN __INTN_MIN(__WINT_WIDTH__) -# define WINT_MAX __INTN_MAX(__WINT_WIDTH__) -#endif - -#ifndef WCHAR_MAX -# define WCHAR_MAX __WCHAR_MAX__ -#endif -#ifndef WCHAR_MIN -# if __WCHAR_MAX__ == __INTN_MAX(__WCHAR_WIDTH__) -# define WCHAR_MIN __INTN_MIN(__WCHAR_WIDTH__) -# else -# define WCHAR_MIN __UINTN_C(__WCHAR_WIDTH__, 0) -# endif -#endif - -/* 7.18.4.2 Macros for greatest-width integer constants. */ -#define INTMAX_C(v) __int_c(v, __INTMAX_C_SUFFIX__) -#define UINTMAX_C(v) __int_c(v, __UINTMAX_C_SUFFIX__) - -/* C2x 7.20.3.x Width of other integer types. */ -/* FIXME: This is using the placeholder dates Clang produces for these macros - in C2x mode; switch to the correct values once they've been published. */ -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L -#define PTRDIFF_WIDTH __PTRDIFF_WIDTH__ -#define SIG_ATOMIC_WIDTH __SIG_ATOMIC_WIDTH__ -#define SIZE_WIDTH __SIZE_WIDTH__ -#define WCHAR_WIDTH __WCHAR_WIDTH__ -#define WINT_WIDTH __WINT_WIDTH__ -#endif - -#endif /* __STDC_HOSTED__ */ -#endif /* __CLANG_STDINT_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@stdint.h.blob deleted file mode 100644 index feac9d0144a9dcafec6a19fabb717715fdaa4a4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12292 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h deleted file mode 100644 index cb9be234..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h +++ /dev/null @@ -1,775 +0,0 @@ -/*===---- tmmintrin.h - SSSE3 intrinsics -----------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __TMMINTRIN_H -#define __TMMINTRIN_H - -#if !defined(__i386__) && !defined(__x86_64__) -#error "This header is only meant to be used on x86 and x64 architecture" -#endif - -#include <pmmintrin.h> - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("ssse3"), __min_vector_width__(64))) -#define __DEFAULT_FN_ATTRS_MMX __attribute__((__always_inline__, __nodebug__, __target__("mmx,ssse3"), __min_vector_width__(64))) - -/// Computes the absolute value of each of the packed 8-bit signed -/// integers in the source operand and stores the 8-bit unsigned integer -/// results in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PABSB instruction. -/// -/// \param __a -/// A 64-bit vector of [8 x i8]. -/// \returns A 64-bit integer vector containing the absolute values of the -/// elements in the operand. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_abs_pi8(__m64 __a) -{ - return (__m64)__builtin_ia32_pabsb((__v8qi)__a); -} - -/// Computes the absolute value of each of the packed 8-bit signed -/// integers in the source operand and stores the 8-bit unsigned integer -/// results in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPABSB instruction. -/// -/// \param __a -/// A 128-bit vector of [16 x i8]. -/// \returns A 128-bit integer vector containing the absolute values of the -/// elements in the operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_abs_epi8(__m128i __a) -{ - return (__m128i)__builtin_elementwise_abs((__v16qs)__a); -} - -/// Computes the absolute value of each of the packed 16-bit signed -/// integers in the source operand and stores the 16-bit unsigned integer -/// results in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PABSW instruction. -/// -/// \param __a -/// A 64-bit vector of [4 x i16]. -/// \returns A 64-bit integer vector containing the absolute values of the -/// elements in the operand. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_abs_pi16(__m64 __a) -{ - return (__m64)__builtin_ia32_pabsw((__v4hi)__a); -} - -/// Computes the absolute value of each of the packed 16-bit signed -/// integers in the source operand and stores the 16-bit unsigned integer -/// results in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPABSW instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16]. -/// \returns A 128-bit integer vector containing the absolute values of the -/// elements in the operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_abs_epi16(__m128i __a) -{ - return (__m128i)__builtin_elementwise_abs((__v8hi)__a); -} - -/// Computes the absolute value of each of the packed 32-bit signed -/// integers in the source operand and stores the 32-bit unsigned integer -/// results in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PABSD instruction. -/// -/// \param __a -/// A 64-bit vector of [2 x i32]. -/// \returns A 64-bit integer vector containing the absolute values of the -/// elements in the operand. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_abs_pi32(__m64 __a) -{ - return (__m64)__builtin_ia32_pabsd((__v2si)__a); -} - -/// Computes the absolute value of each of the packed 32-bit signed -/// integers in the source operand and stores the 32-bit unsigned integer -/// results in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPABSD instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x i32]. -/// \returns A 128-bit integer vector containing the absolute values of the -/// elements in the operand. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_abs_epi32(__m128i __a) -{ - return (__m128i)__builtin_elementwise_abs((__v4si)__a); -} - -/// Concatenates the two 128-bit integer vector operands, and -/// right-shifts the result by the number of bytes specified in the immediate -/// operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128i _mm_alignr_epi8(__m128i a, __m128i b, const int n); -/// \endcode -/// -/// This intrinsic corresponds to the \c PALIGNR instruction. -/// -/// \param a -/// A 128-bit vector of [16 x i8] containing one of the source operands. -/// \param b -/// A 128-bit vector of [16 x i8] containing one of the source operands. -/// \param n -/// An immediate operand specifying how many bytes to right-shift the result. -/// \returns A 128-bit integer vector containing the concatenated right-shifted -/// value. -#define _mm_alignr_epi8(a, b, n) \ - ((__m128i)__builtin_ia32_palignr128((__v16qi)(__m128i)(a), \ - (__v16qi)(__m128i)(b), (n))) - -/// Concatenates the two 64-bit integer vector operands, and right-shifts -/// the result by the number of bytes specified in the immediate operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m64 _mm_alignr_pi8(__m64 a, __m64 b, const int n); -/// \endcode -/// -/// This intrinsic corresponds to the \c PALIGNR instruction. -/// -/// \param a -/// A 64-bit vector of [8 x i8] containing one of the source operands. -/// \param b -/// A 64-bit vector of [8 x i8] containing one of the source operands. -/// \param n -/// An immediate operand specifying how many bytes to right-shift the result. -/// \returns A 64-bit integer vector containing the concatenated right-shifted -/// value. -#define _mm_alignr_pi8(a, b, n) \ - ((__m64)__builtin_ia32_palignr((__v8qi)(__m64)(a), (__v8qi)(__m64)(b), (n))) - -/// Horizontally adds the adjacent pairs of values contained in 2 packed -/// 128-bit vectors of [8 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPHADDW instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16] containing one of the source operands. The -/// horizontal sums of the values are stored in the lower bits of the -/// destination. -/// \param __b -/// A 128-bit vector of [8 x i16] containing one of the source operands. The -/// horizontal sums of the values are stored in the upper bits of the -/// destination. -/// \returns A 128-bit vector of [8 x i16] containing the horizontal sums of -/// both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_hadd_epi16(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_phaddw128((__v8hi)__a, (__v8hi)__b); -} - -/// Horizontally adds the adjacent pairs of values contained in 2 packed -/// 128-bit vectors of [4 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPHADDD instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x i32] containing one of the source operands. The -/// horizontal sums of the values are stored in the lower bits of the -/// destination. -/// \param __b -/// A 128-bit vector of [4 x i32] containing one of the source operands. The -/// horizontal sums of the values are stored in the upper bits of the -/// destination. -/// \returns A 128-bit vector of [4 x i32] containing the horizontal sums of -/// both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_hadd_epi32(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_phaddd128((__v4si)__a, (__v4si)__b); -} - -/// Horizontally adds the adjacent pairs of values contained in 2 packed -/// 64-bit vectors of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PHADDW instruction. -/// -/// \param __a -/// A 64-bit vector of [4 x i16] containing one of the source operands. The -/// horizontal sums of the values are stored in the lower bits of the -/// destination. -/// \param __b -/// A 64-bit vector of [4 x i16] containing one of the source operands. The -/// horizontal sums of the values are stored in the upper bits of the -/// destination. -/// \returns A 64-bit vector of [4 x i16] containing the horizontal sums of both -/// operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_hadd_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_phaddw((__v4hi)__a, (__v4hi)__b); -} - -/// Horizontally adds the adjacent pairs of values contained in 2 packed -/// 64-bit vectors of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PHADDD instruction. -/// -/// \param __a -/// A 64-bit vector of [2 x i32] containing one of the source operands. The -/// horizontal sums of the values are stored in the lower bits of the -/// destination. -/// \param __b -/// A 64-bit vector of [2 x i32] containing one of the source operands. The -/// horizontal sums of the values are stored in the upper bits of the -/// destination. -/// \returns A 64-bit vector of [2 x i32] containing the horizontal sums of both -/// operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_hadd_pi32(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_phaddd((__v2si)__a, (__v2si)__b); -} - -/// Horizontally adds the adjacent pairs of values contained in 2 packed -/// 128-bit vectors of [8 x i16]. Positive sums greater than 0x7FFF are -/// saturated to 0x7FFF. Negative sums less than 0x8000 are saturated to -/// 0x8000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPHADDSW instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16] containing one of the source operands. The -/// horizontal sums of the values are stored in the lower bits of the -/// destination. -/// \param __b -/// A 128-bit vector of [8 x i16] containing one of the source operands. The -/// horizontal sums of the values are stored in the upper bits of the -/// destination. -/// \returns A 128-bit vector of [8 x i16] containing the horizontal saturated -/// sums of both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_hadds_epi16(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_phaddsw128((__v8hi)__a, (__v8hi)__b); -} - -/// Horizontally adds the adjacent pairs of values contained in 2 packed -/// 64-bit vectors of [4 x i16]. Positive sums greater than 0x7FFF are -/// saturated to 0x7FFF. Negative sums less than 0x8000 are saturated to -/// 0x8000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PHADDSW instruction. -/// -/// \param __a -/// A 64-bit vector of [4 x i16] containing one of the source operands. The -/// horizontal sums of the values are stored in the lower bits of the -/// destination. -/// \param __b -/// A 64-bit vector of [4 x i16] containing one of the source operands. The -/// horizontal sums of the values are stored in the upper bits of the -/// destination. -/// \returns A 64-bit vector of [4 x i16] containing the horizontal saturated -/// sums of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_hadds_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_phaddsw((__v4hi)__a, (__v4hi)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in 2 -/// packed 128-bit vectors of [8 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPHSUBW instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16] containing one of the source operands. The -/// horizontal differences between the values are stored in the lower bits of -/// the destination. -/// \param __b -/// A 128-bit vector of [8 x i16] containing one of the source operands. The -/// horizontal differences between the values are stored in the upper bits of -/// the destination. -/// \returns A 128-bit vector of [8 x i16] containing the horizontal differences -/// of both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_hsub_epi16(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_phsubw128((__v8hi)__a, (__v8hi)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in 2 -/// packed 128-bit vectors of [4 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPHSUBD instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x i32] containing one of the source operands. The -/// horizontal differences between the values are stored in the lower bits of -/// the destination. -/// \param __b -/// A 128-bit vector of [4 x i32] containing one of the source operands. The -/// horizontal differences between the values are stored in the upper bits of -/// the destination. -/// \returns A 128-bit vector of [4 x i32] containing the horizontal differences -/// of both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_hsub_epi32(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_phsubd128((__v4si)__a, (__v4si)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in 2 -/// packed 64-bit vectors of [4 x i16]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PHSUBW instruction. -/// -/// \param __a -/// A 64-bit vector of [4 x i16] containing one of the source operands. The -/// horizontal differences between the values are stored in the lower bits of -/// the destination. -/// \param __b -/// A 64-bit vector of [4 x i16] containing one of the source operands. The -/// horizontal differences between the values are stored in the upper bits of -/// the destination. -/// \returns A 64-bit vector of [4 x i16] containing the horizontal differences -/// of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_hsub_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_phsubw((__v4hi)__a, (__v4hi)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in 2 -/// packed 64-bit vectors of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PHSUBD instruction. -/// -/// \param __a -/// A 64-bit vector of [2 x i32] containing one of the source operands. The -/// horizontal differences between the values are stored in the lower bits of -/// the destination. -/// \param __b -/// A 64-bit vector of [2 x i32] containing one of the source operands. The -/// horizontal differences between the values are stored in the upper bits of -/// the destination. -/// \returns A 64-bit vector of [2 x i32] containing the horizontal differences -/// of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_hsub_pi32(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_phsubd((__v2si)__a, (__v2si)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in 2 -/// packed 128-bit vectors of [8 x i16]. Positive differences greater than -/// 0x7FFF are saturated to 0x7FFF. Negative differences less than 0x8000 are -/// saturated to 0x8000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPHSUBSW instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16] containing one of the source operands. The -/// horizontal differences between the values are stored in the lower bits of -/// the destination. -/// \param __b -/// A 128-bit vector of [8 x i16] containing one of the source operands. The -/// horizontal differences between the values are stored in the upper bits of -/// the destination. -/// \returns A 128-bit vector of [8 x i16] containing the horizontal saturated -/// differences of both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_hsubs_epi16(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_phsubsw128((__v8hi)__a, (__v8hi)__b); -} - -/// Horizontally subtracts the adjacent pairs of values contained in 2 -/// packed 64-bit vectors of [4 x i16]. Positive differences greater than -/// 0x7FFF are saturated to 0x7FFF. Negative differences less than 0x8000 are -/// saturated to 0x8000. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PHSUBSW instruction. -/// -/// \param __a -/// A 64-bit vector of [4 x i16] containing one of the source operands. The -/// horizontal differences between the values are stored in the lower bits of -/// the destination. -/// \param __b -/// A 64-bit vector of [4 x i16] containing one of the source operands. The -/// horizontal differences between the values are stored in the upper bits of -/// the destination. -/// \returns A 64-bit vector of [4 x i16] containing the horizontal saturated -/// differences of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_hsubs_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_phsubsw((__v4hi)__a, (__v4hi)__b); -} - -/// Multiplies corresponding pairs of packed 8-bit unsigned integer -/// values contained in the first source operand and packed 8-bit signed -/// integer values contained in the second source operand, adds pairs of -/// contiguous products with signed saturation, and writes the 16-bit sums to -/// the corresponding bits in the destination. -/// -/// For example, bits [7:0] of both operands are multiplied, bits [15:8] of -/// both operands are multiplied, and the sum of both results is written to -/// bits [15:0] of the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPMADDUBSW instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the first source operand. -/// \param __b -/// A 128-bit integer vector containing the second source operand. -/// \returns A 128-bit integer vector containing the sums of products of both -/// operands: \n -/// \a R0 := (\a __a0 * \a __b0) + (\a __a1 * \a __b1) \n -/// \a R1 := (\a __a2 * \a __b2) + (\a __a3 * \a __b3) \n -/// \a R2 := (\a __a4 * \a __b4) + (\a __a5 * \a __b5) \n -/// \a R3 := (\a __a6 * \a __b6) + (\a __a7 * \a __b7) \n -/// \a R4 := (\a __a8 * \a __b8) + (\a __a9 * \a __b9) \n -/// \a R5 := (\a __a10 * \a __b10) + (\a __a11 * \a __b11) \n -/// \a R6 := (\a __a12 * \a __b12) + (\a __a13 * \a __b13) \n -/// \a R7 := (\a __a14 * \a __b14) + (\a __a15 * \a __b15) -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_maddubs_epi16(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_pmaddubsw128((__v16qi)__a, (__v16qi)__b); -} - -/// Multiplies corresponding pairs of packed 8-bit unsigned integer -/// values contained in the first source operand and packed 8-bit signed -/// integer values contained in the second source operand, adds pairs of -/// contiguous products with signed saturation, and writes the 16-bit sums to -/// the corresponding bits in the destination. -/// -/// For example, bits [7:0] of both operands are multiplied, bits [15:8] of -/// both operands are multiplied, and the sum of both results is written to -/// bits [15:0] of the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PMADDUBSW instruction. -/// -/// \param __a -/// A 64-bit integer vector containing the first source operand. -/// \param __b -/// A 64-bit integer vector containing the second source operand. -/// \returns A 64-bit integer vector containing the sums of products of both -/// operands: \n -/// \a R0 := (\a __a0 * \a __b0) + (\a __a1 * \a __b1) \n -/// \a R1 := (\a __a2 * \a __b2) + (\a __a3 * \a __b3) \n -/// \a R2 := (\a __a4 * \a __b4) + (\a __a5 * \a __b5) \n -/// \a R3 := (\a __a6 * \a __b6) + (\a __a7 * \a __b7) -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_maddubs_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pmaddubsw((__v8qi)__a, (__v8qi)__b); -} - -/// Multiplies packed 16-bit signed integer values, truncates the 32-bit -/// products to the 18 most significant bits by right-shifting, rounds the -/// truncated value by adding 1, and writes bits [16:1] to the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPMULHRSW instruction. -/// -/// \param __a -/// A 128-bit vector of [8 x i16] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [8 x i16] containing one of the source operands. -/// \returns A 128-bit vector of [8 x i16] containing the rounded and scaled -/// products of both operands. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_mulhrs_epi16(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_pmulhrsw128((__v8hi)__a, (__v8hi)__b); -} - -/// Multiplies packed 16-bit signed integer values, truncates the 32-bit -/// products to the 18 most significant bits by right-shifting, rounds the -/// truncated value by adding 1, and writes bits [16:1] to the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PMULHRSW instruction. -/// -/// \param __a -/// A 64-bit vector of [4 x i16] containing one of the source operands. -/// \param __b -/// A 64-bit vector of [4 x i16] containing one of the source operands. -/// \returns A 64-bit vector of [4 x i16] containing the rounded and scaled -/// products of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_mulhrs_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pmulhrsw((__v4hi)__a, (__v4hi)__b); -} - -/// Copies the 8-bit integers from a 128-bit integer vector to the -/// destination or clears 8-bit values in the destination, as specified by -/// the second source operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPSHUFB instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the values to be copied. -/// \param __b -/// A 128-bit integer vector containing control bytes corresponding to -/// positions in the destination: -/// Bit 7: \n -/// 1: Clear the corresponding byte in the destination. \n -/// 0: Copy the selected source byte to the corresponding byte in the -/// destination. \n -/// Bits [6:4] Reserved. \n -/// Bits [3:0] select the source byte to be copied. -/// \returns A 128-bit integer vector containing the copied or cleared values. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_shuffle_epi8(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_pshufb128((__v16qi)__a, (__v16qi)__b); -} - -/// Copies the 8-bit integers from a 64-bit integer vector to the -/// destination or clears 8-bit values in the destination, as specified by -/// the second source operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PSHUFB instruction. -/// -/// \param __a -/// A 64-bit integer vector containing the values to be copied. -/// \param __b -/// A 64-bit integer vector containing control bytes corresponding to -/// positions in the destination: -/// Bit 7: \n -/// 1: Clear the corresponding byte in the destination. \n -/// 0: Copy the selected source byte to the corresponding byte in the -/// destination. \n -/// Bits [3:0] select the source byte to be copied. -/// \returns A 64-bit integer vector containing the copied or cleared values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_shuffle_pi8(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pshufb((__v8qi)__a, (__v8qi)__b); -} - -/// For each 8-bit integer in the first source operand, perform one of -/// the following actions as specified by the second source operand. -/// -/// If the byte in the second source is negative, calculate the two's -/// complement of the corresponding byte in the first source, and write that -/// value to the destination. If the byte in the second source is positive, -/// copy the corresponding byte from the first source to the destination. If -/// the byte in the second source is zero, clear the corresponding byte in -/// the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPSIGNB instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the values to be copied. -/// \param __b -/// A 128-bit integer vector containing control bytes corresponding to -/// positions in the destination. -/// \returns A 128-bit integer vector containing the resultant values. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sign_epi8(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_psignb128((__v16qi)__a, (__v16qi)__b); -} - -/// For each 16-bit integer in the first source operand, perform one of -/// the following actions as specified by the second source operand. -/// -/// If the word in the second source is negative, calculate the two's -/// complement of the corresponding word in the first source, and write that -/// value to the destination. If the word in the second source is positive, -/// copy the corresponding word from the first source to the destination. If -/// the word in the second source is zero, clear the corresponding word in -/// the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPSIGNW instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the values to be copied. -/// \param __b -/// A 128-bit integer vector containing control words corresponding to -/// positions in the destination. -/// \returns A 128-bit integer vector containing the resultant values. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sign_epi16(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_psignw128((__v8hi)__a, (__v8hi)__b); -} - -/// For each 32-bit integer in the first source operand, perform one of -/// the following actions as specified by the second source operand. -/// -/// If the doubleword in the second source is negative, calculate the two's -/// complement of the corresponding word in the first source, and write that -/// value to the destination. If the doubleword in the second source is -/// positive, copy the corresponding word from the first source to the -/// destination. If the doubleword in the second source is zero, clear the -/// corresponding word in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c VPSIGND instruction. -/// -/// \param __a -/// A 128-bit integer vector containing the values to be copied. -/// \param __b -/// A 128-bit integer vector containing control doublewords corresponding to -/// positions in the destination. -/// \returns A 128-bit integer vector containing the resultant values. -static __inline__ __m128i __DEFAULT_FN_ATTRS -_mm_sign_epi32(__m128i __a, __m128i __b) -{ - return (__m128i)__builtin_ia32_psignd128((__v4si)__a, (__v4si)__b); -} - -/// For each 8-bit integer in the first source operand, perform one of -/// the following actions as specified by the second source operand. -/// -/// If the byte in the second source is negative, calculate the two's -/// complement of the corresponding byte in the first source, and write that -/// value to the destination. If the byte in the second source is positive, -/// copy the corresponding byte from the first source to the destination. If -/// the byte in the second source is zero, clear the corresponding byte in -/// the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PSIGNB instruction. -/// -/// \param __a -/// A 64-bit integer vector containing the values to be copied. -/// \param __b -/// A 64-bit integer vector containing control bytes corresponding to -/// positions in the destination. -/// \returns A 64-bit integer vector containing the resultant values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_sign_pi8(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_psignb((__v8qi)__a, (__v8qi)__b); -} - -/// For each 16-bit integer in the first source operand, perform one of -/// the following actions as specified by the second source operand. -/// -/// If the word in the second source is negative, calculate the two's -/// complement of the corresponding word in the first source, and write that -/// value to the destination. If the word in the second source is positive, -/// copy the corresponding word from the first source to the destination. If -/// the word in the second source is zero, clear the corresponding word in -/// the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PSIGNW instruction. -/// -/// \param __a -/// A 64-bit integer vector containing the values to be copied. -/// \param __b -/// A 64-bit integer vector containing control words corresponding to -/// positions in the destination. -/// \returns A 64-bit integer vector containing the resultant values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_sign_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_psignw((__v4hi)__a, (__v4hi)__b); -} - -/// For each 32-bit integer in the first source operand, perform one of -/// the following actions as specified by the second source operand. -/// -/// If the doubleword in the second source is negative, calculate the two's -/// complement of the corresponding doubleword in the first source, and -/// write that value to the destination. If the doubleword in the second -/// source is positive, copy the corresponding doubleword from the first -/// source to the destination. If the doubleword in the second source is -/// zero, clear the corresponding doubleword in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c PSIGND instruction. -/// -/// \param __a -/// A 64-bit integer vector containing the values to be copied. -/// \param __b -/// A 64-bit integer vector containing two control doublewords corresponding -/// to positions in the destination. -/// \returns A 64-bit integer vector containing the resultant values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_sign_pi32(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_psignd((__v2si)__a, (__v2si)__b); -} - -#undef __DEFAULT_FN_ATTRS -#undef __DEFAULT_FN_ATTRS_MMX - -#endif /* __TMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tmmintrin.h.blob deleted file mode 100644 index 1ea7a15b3cf395f7518fd8e34ed56906d20c8c0e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44047 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 E2m7q+o&W#< diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h deleted file mode 100644 index 491823e9..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h +++ /dev/null @@ -1,56 +0,0 @@ -/*===------------- tsxldtrkintrin.h - tsxldtrk intrinsics ------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <tsxldtrkintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __TSXLDTRKINTRIN_H -#define __TSXLDTRKINTRIN_H - -/* Define the default attributes for the functions in this file */ -#define _DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("tsxldtrk"))) - -/// Marks the start of an TSX (RTM) suspend load address tracking region. If -/// this intrinsic is used inside a transactional region, subsequent loads -/// are not added to the read set of the transaction. If it's used inside a -/// suspend load address tracking region it will cause transaction abort. -/// If it's used outside of a transactional region it behaves like a NOP. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c XSUSLDTRK instruction. -/// -static __inline__ void _DEFAULT_FN_ATTRS -_xsusldtrk (void) -{ - __builtin_ia32_xsusldtrk(); -} - -/// Marks the end of an TSX (RTM) suspend load address tracking region. If this -/// intrinsic is used inside a suspend load address tracking region it will -/// end the suspend region and all following load addresses will be added to -/// the transaction read set. If it's used inside an active transaction but -/// not in a suspend region it will cause transaction abort. If it's used -/// outside of a transactional region it behaves like a NOP. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the \c XRESLDTRK instruction. -/// -static __inline__ void _DEFAULT_FN_ATTRS -_xresldtrk (void) -{ - __builtin_ia32_xresldtrk(); -} - -#undef _DEFAULT_FN_ATTRS - -#endif /* __TSXLDTRKINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@tsxldtrkintrin.h.blob deleted file mode 100644 index f2aacad75a297b2bb2606808177feacd96d837e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13480 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 E0U$Pvi2wiq diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h deleted file mode 100644 index 135dc814..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h +++ /dev/null @@ -1,157 +0,0 @@ -/*===------------------ uintrintrin.h - UINTR intrinsics -------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __X86GPRINTRIN_H -#error "Never use <uintrintrin.h> directly; include <x86gprintrin.h> instead." -#endif - -#ifndef __UINTRINTRIN_H -#define __UINTRINTRIN_H - -/* Define the default attributes for the functions in this file */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("uintr"))) - -#ifdef __x86_64__ - -struct __uintr_frame -{ - unsigned long long rip; - unsigned long long rflags; - unsigned long long rsp; -}; - -/// Clears the user interrupt flag (UIF). Its effect takes place immediately: a -/// user interrupt cannot be delivered on the instruction boundary following -/// CLUI. Can be executed only if CR4.UINT = 1, the logical processor is in -/// 64-bit mode, and software is not executing inside an enclave; otherwise, -/// each causes an invalid-opcode exception. Causes a transactional abort if -/// executed inside a transactional region; the abort loads EAX as it would -/// had it been due to an execution of CLI. -/// -/// \headerfile <x86gprintrin.h> -/// -/// This intrinsic corresponds to the <c> CLUI </c> instruction. -/// -/// \code{.operation} -/// UIF := 0 -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS -_clui (void) -{ - __builtin_ia32_clui(); -} - -/// Sets the user interrupt flag (UIF). Its effect takes place immediately; a -/// user interrupt may be delivered on the instruction boundary following -/// STUI. Can be executed only if CR4.UINT = 1, the logical processor is in -/// 64-bit mode, and software is not executing inside an enclave; otherwise, -/// each causes an invalid-opcode exception. Causes a transactional abort if -/// executed inside a transactional region; the abort loads EAX as it would -/// had it been due to an execution of STI. -/// -/// \headerfile <x86gprintrin.h> -/// -/// This intrinsic corresponds to the <c> STUI </c> instruction. -/// -/// \code{.operation} -/// UIF := 1 -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS -_stui (void) -{ - __builtin_ia32_stui(); -} - -/// Get the current value of the user interrupt flag (UIF). Can be executed -/// regardless of CPL and inside a transactional region. Can be executed only -/// if CR4.UINT = 1, the logical processor is in 64-bit mode, and software is -/// not executing inside an enclave; otherwise, it causes an invalid-opcode -/// exception. -/// -/// \headerfile <x86gprintrin.h> -/// -/// This intrinsic corresponds to the <c> TESTUI </c> instruction. -/// -/// \returns The current value of the user interrupt flag (UIF). -/// -/// \code{.operation} -/// CF := UIF -/// ZF := 0 -/// AF := 0 -/// OF := 0 -/// PF := 0 -/// SF := 0 -/// dst := CF -/// \endcode -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_testui (void) -{ - return __builtin_ia32_testui(); -} - -/// Send interprocessor user interrupt. Can be executed only if -/// CR4.UINT = IA32_UINT_TT[0] = 1, the logical processor is in 64-bit mode, -/// and software is not executing inside an enclave; otherwise, it causes an -/// invalid-opcode exception. May be executed at any privilege level, all of -/// its memory accesses are performed with supervisor privilege. -/// -/// \headerfile <x86gprintrin.h> -/// -/// This intrinsic corresponds to the <c> SENDUIPI </c> instruction -/// -/// \param __a -/// Index of user-interrupt target table entry in user-interrupt target -/// table. -/// -/// \code{.operation} -/// IF __a > UITTSZ -/// GP (0) -/// FI -/// tempUITTE := MEM[UITTADDR + (a<<4)] -/// // tempUITTE must be valid, and can't have any reserved bit set -/// IF (tempUITTE.V == 0 OR tempUITTE[7:1] != 0) -/// GP (0) -/// FI -/// tempUPID := MEM[tempUITTE.UPIDADDR] // under lock -/// // tempUPID can't have any reserved bit set -/// IF (tempUPID[15:2] != 0 OR tempUPID[31:24] != 0) -/// GP (0) // release lock -/// FI -/// tempUPID.PIR[tempUITTE.UV] := 1; -/// IF (tempUPID.SN == 0 AND tempUPID.ON == 0) -/// tempUPID.ON := 1 -/// sendNotify := 1 -/// ELSE -/// sendNotify := 0 -/// FI -/// MEM[tempUITTE.UPIDADDR] := tempUPID // release lock -/// IF sendNotify == 1 -/// IF IA32_APIC_BASE[10] == 1 // local APIC is in x2APIC mode -/// // send ordinary IPI with vector tempUPID.NV to 32-bit physical APIC -/// // ID tempUPID.NDST -/// SendOrdinaryIPI(tempUPID.NV, tempUPID.NDST) -/// ELSE -/// // send ordinary IPI with vector tempUPID.NV to 8-bit physical APIC -/// // ID tempUPID.NDST[15:8] -/// SendOrdinaryIPI(tempUPID.NV, tempUPID.NDST[15:8]) -/// FI -/// FI -/// \endcode -static __inline__ void __DEFAULT_FN_ATTRS -_senduipi (unsigned long long __a) -{ - __builtin_ia32_senduipi(__a); -} - -#endif /* __x86_64__ */ - -#undef __DEFAULT_FN_ATTRS - -#endif /* __UINTRINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@uintrintrin.h.blob deleted file mode 100644 index f7be277708601d9a2f1a382169060478b20e5773..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16493 zcmeHOU2GiJb>3x|pix!Y@q=QkKrnR!g;Ka&l9pM4mK;+gr4o=RRiuQ#k}{c{xx0JK z`P2ODl5zv2C<5dmPZkoOekh7O6)E7l1sb3&kfJXs>J~)<^r0xw_OV6L8U@mq8nM~$ z+`Dsk@6O%XRiMWTFumM4bME>1?)kfy7iyn;z`y!8wR)}DjRMy6o7*fs%%ZrNu{3LX z%xk8J+YB5YF1xi)xxN#2W+H9$qvVi>orcE~=4MfHd}ZPawU3wT%{)z-JaqlsW6k~T z8*9xL>+sNaBabb2YoDC6zWsql<7UUPc=A6VUecemc$PNlY1*{ypp|A$#_WukC{mxd znnIW6>bhFh366M}CD0V4WEE{aArpSsot%3{iLT#hcKn<kJ^v5y|Mi5IVbwe_Yt&{A zJxeu73zGy+*3}-ERp=ePy1LemSJx{v5%wXsgt}3RrNr~rF#yna;^}Lqnb(RUp9o7v z6RhGW<wt9_&jXE_ww#ki0e9^__ZVEBhZ##0aTPGz+-G(xiTbI0VdV#{32t-aoQLg* zxGF4F*btICJ^(l!4{4sX9e3!`Dsj8a=SL*Mdw={jUCxvi>L{IQHyEYsv_oDYl`y!( ze#$#N#~%Z}W^_rH@qi^GWL5IB9v6;2{i9pD_-c1#QSJ($DkE!4w&R8$bz0N)bOe%n zt)NQV^f+z09&4Mo%&0B0BzH6W+U|`VZRtWbCB6uBqYx=5Mwq!#bjX>_BfFi4ZpNc9 z9Wmc%91{_N7JRd{RS~1w*db#ajK1#&!8F&y>1lSDJ~nEZha8*L_-I5ubHps{fCWNF zU_b@a;*sEyx?MJPi9XbrMd3J#-7u@rS@{jY%##s7;I0zGf#V9m{L`0j>L8|_V6=`} z2CHyK<Oc<Bqo-^eh6XV0z&WxVA2yTfnge8!tH^n5+%TGTI}E8gLxhwmM7W?z*R)6a ze7Lo#E2{K?l;BS^N}pmq+FL>}%_2r^+eayaS1D2&X$Si{Uc(D4Nl_X+<(vL2*^NB8 zeo>RW&`as=`aEt$PGU~x0?f!5S=c~M0tmBXjh#`sIBC0GQ@}D(4@?o30(zB4+X-WK z$3KomkiB4ab<fH@NI}4H52p(}5W#P?r&kO>CneB^i+Gpm5w}V`L~!yo07BxZ4N&n4 zZwF4#H@s80P$)UvisnF6Y$`u;9n=VVsbgFnD=NS%Ikh#Bz1mKyv(gAq^m-|OY>pzd z*+l(O5?EpKkR59UZxs?UAR*=1pi=ti#Fa=esuovf4z+y1Q*$s-6tYeuPnH5kC(N5D zZd++%!p?KjpvjUX6gF7==sS9eERoByw}KgJ&LWD4{NO#Bjuz!uWqYHYda>&Vx&O#} zWPqRXjlRRP_|Q}+8p%_mBaEcb(IA8dH&I#J$Ozg_FG!peMe*=a6_$K<B(vw)|73bV zfzuit7P5r9(s_-RlL~y7Jg7ht#VqWI8leP|k*yoDRF5Ks+yrb}BD?9toOJum-#M+< zPa<&*b(>f&59!p7HX8dVb$ZO5X73`VP{Fo-ah8|@C-!83zhq!;6vbuZDY43PT_^1Z zvQ1m}_9{XEu)tA?JZ1(t3d<`GA`X>Pqfy!-gBW*A!B_5WS%W8iL}WcR6=Z68>grH` zWK497W)MLdx6x$|%Dx7&-3ZV}EARo{dOV530BPKeI6;L5v4Qf-xRnIKp!gD-&PWB3 zuvLtY1cNy1CJ<PlsNp2CPf`J?WQCTG92ZQQe^7mvBNu1vs6u8WZMmpXs>0y(&}?PA z?}!#hd%pq+?OEW37Emo&1#UkTx!{Lqs&ZSBjdw*=EQgJPzh<hPRDvq`1@j9GmNYvQ zE)(9B!2x|db(&Plmr5{=JY_zL-^uJ~;DgG=*H<)J9zo7Yghf@5)0Uzf)%Kl^&PpRG zA{*qMGBhA&G*ZiTZbrczZ)ytDtY+KD{&p*G+nF<*g;co{v~8KWzJBYfp1B0LT|Y`` zqBJ%{G)iks&4ra<W493}3{9QpGb1Nd)23Wvq_u6;*4wiBApT}Yw*9QZ;GagovTkH< zvr#zbN7L%8fz^4(9t_@eAQ}bjx59{rJv5A^V!kj^5l`%4%u!**$P**i3GJMjTn>fg zSfDcFNGlAtY^hi&&nb*6CJuBS&&Lz1jUpKiQvOUmPuiKfM+SKVGX*qtHlkg_I}RPp zOEn}GPAH`sMOC$te22&;PYP&=PZU%9DI8?<jM2QJ>@on#NX)`VZcqikQO$?Ono0eX z2Qj)tnH^+6`R3C7igIcQtw~!oaxgn^qacW?N&=dVuTGqem#S}4riA6;wxdz5<|Pdj zG!-dzr$$o;0VY>I3N>P8R#1iz#8*I4j~@D(;vB}<gco#j^sT3p;@L=MwPzUL_ApYy zJXSM-QNbfR-Wmg5)%LjA5M%ofzA|<yB;-RC*2aD`cm0Awp0?PPrP}oAV-J(4;Q>aK zxW`T!@;H{&?C*a6uAUi%NXYc8hl+T7o>RqEc$<v-k+F8taych`k~C&|lrnll#!Z_0 zjJafDq|MSJ-^=KPae6X(D?%&5WzSI^zA|G8U=%rskO>jsOUoOnMVv#QZlEuat~Rlg z55`2*vbuiT&(m%-)4tnvh6ib*jgeZe%e_I9E!L}YKl3;aa>@Vya;;qv8>Ktrs#ajy z^e#>9a>Z&i?P&ev$iq_=u#7JpU0UzNGkdN`>F(6TqiU+jGkj%q84tBERl-5+J6StQ z%q_6u^eE?gUM~0)n>@^e$-U;FvLHc9{Z4Tl-KZF*t3`0oI4QU(QBxMC5<Uvqny@1o zg?rO;3IZ6-qsIu%E;sJ$VsRzlaA0N@P@bQa6g4g>af6x5j1i&-?9NKdjp`W15P`?U zxTHKKF+Oa|M`MNXvKHJ$^=!vZ;^=4kMj6tsDXbR)NC?q6RMrsZEgBe&45e)=cO<w8 zfi-5ul4??Id@2M|-8V)|evA>5I_lNlF^cE<9t)yura_w@IbJ%<>7!Oxu#EW;lVgAq zEEP=$<p&LelF0YRN<gEGFyWd3ZiR&uUyMVlw(Jb~C64-I0u_rC!NWAfnj|!CxAc6v z6=0Iy_!1iTLC>zz!ngnwA_p^W&AU3CgeZ(wQO*-=8W<!G(xi&1M#<W6zKGpQFe4dU zHKCu><ioo`18t1g@R;jkB#M(5O&cTg36|72Ydb&FH@t~(P*{!y=7Lf|D~NJ=kf2a) zlo0BN1Z|Y|GnG$haZ;zlT9GK&t9fIb5xd-!*^Q#aGDaHqjgef2sTt3vaC9aHhoVQD zsc5dg8l%kIbx?MiPxWM67c=Pwf;5I(jmbe%5{qtbL{to;G>{cu9#Z4PLC0Z1A}+_U zKD~bL<$wFJxGz^>#}-{0K{_RRwP6ZgO53C##bP<-_=05Gg*S<EGXDhN3YGkbt~5qD zX7iffM!|6w%uq9z#Wqs2*|U0_^%HJPFh<V);~8(!1UXI<NUxIhlz~OhXtuDTNnIx_ zja&;q(7DC5**BfqMH7c2!*zgd;f9j9!dD``>cQG*9vpVj6l3;U%?)DLJ#xI6T|0;b z*s;cFV3ewe9=+<TGKE={Q7{^odr}yss+}9orr!GY;MQcNBrt0Al}Ir$5_3eA_zLla zLk4j}p-fR#EIZ+5%A_}*W`^J<?kh8w5$4&1uHN8+OzC8AlCYwfF~&9H8}T94$5TUK z#lh+1!z~4$E|xHF??L>-nbgFcDM*TPfo9eEV9=-)(hnMDgJMQ%*YCH+XsaNeb(tK? zeee2UU{QDsAqER*F}!#*qQ%4uqXRq>kA|w_2+y_pXKTNBdj2H-nftGQ$Nu!s>8Omm z77uYE!K_}yJ<CQT?BzV>i+PA9He{YfX+{39ZRdRL+_@L(PijwIn5(~2``%n_AN1gW zn?7+8xu|cV#6s<q$nTOI_dl#HC$w73!aWWbLEN*V&_A|#`;=u_TX!xl-`(9iu&!9U zo3E_d^w~Z*xWDoc->fcKFcQ}8aCp`lF2GZ;x7IH<psGcu&`ZS2fh1|v&ibepERcjz zHdqt4m+?Z15haK$hMWAjQSq7;fqT;DDO<9@$8{ig3IgJV>I)YVyaq1ufIZl_45bRD zx7JPPSX0Ky@X9fS<G6p!IuI9W$X~J$aI8q^h%-qmK-ZNVTaHU6qE#RwS~r@Zz#x5| zb*(hV7d=h}RLqu7oq8be5zw^*>#{x{di~U?gRZaz?YtDO#N|ssHjY9swX#T9@3Q;4 zwZF5seRucvu64PI-#{wrIj95nqEWWsT2gx#H&u@yws2uXxRqRJ;SK|C7~p@XEnvS4 zs=xu{=MoXI5p*Ow8Sm|7+__1Bv?%-r9`0VF#jMw@ySoPm`)?Atb^W%rxN;sJukGRo zu2#hKaL3xXV%^-id7pmS+}^%pec4)cE?>TQ{voKE%@M*NPc!n0a2jk6Bp}a!DYLq8 zwD1q@<fI2%6J)Td!2yyis<oEySy!%DE7q+$L$>#SZDaMJ^(*+AWHX9+dw08#a>(i~ zz9o4dl8`xF{so5J!x5qBwWkme<o8!!-B^>tC>iPNS5`OHE|!I)l@pxe<33ce_RzL? zZ~6A_o%<sa-+M@EtiCpC79!i<lV;i6+m?2rFK@{&rBMWv!MDUhSc;;^UX=0nv0#hu zc5dwN7#^+QJ0TePc|;yClokZbVg-XvaN)>OaG+csUyEq6d3$%uzPh=;bAOcr3LX;= zG2pc58AS=;_-IZ1LV-kxD8NO0EnJ!8p#!wj<`KJ8Hqc6@<-L2f(Oy{-p(ySiV;3S+ z5x*fTIJ?kcd2f6FVDN-O=dHm4;4iUAmfX9Cz(<=v{DK#xrIiVvUcO6DBOXER5^XX1 zH@lGXH7TlaDSkYFiWCECwff1o{_MGppWON1pVm&-YxsAP|LvpSy7zn6KdomWm3HWK zz_RHmEa!`qo6grRU0SF=tUX+qt3RlHeXe$$A`<e0n<MCj8EyWYQShQK^&Di;z}{NC zyL;_?DIJlb3G3jpH7<6g^#0cE8zO`hDZ|PVCrssCBRChtA`_U>8ZqPGFidMtk;KHJ zBN>dC{k%zREQ1lNVG?^bS><47|KM&pr%>Ea82(x;Os#{bcaJ%1Y+a*30{=mgH^pa) z9GmLXE%oWP`n0b;dB_fUee2o?AZrB<e;CaN&;9nhf28AZPz?>ickbM&`qkRiQ*-sr z+78t{$m&yowhI!5J3uaF&O>B<9Gkc(O#<Y6jz9eKk6*Jy+8qOHAWIAne~^XAk|>zO zQX`4mYT*yjaI@;zYGbMzVgAq|7n4Iu059sT*-=TXMysoFU_K2hi5GL+?y$ZZgXRb> zQ7OtAY;4ClttiO`6{D&mD|hE>!eH_}F~_!cHos~)2=|%Qk8<B5vAPaQSE?IWXn6=7 z2;@{AiZT^DoI=6=!S1uF!6xk$LyZKS%e*;^p9-#jzxwiD?HqjRi3zUw3)Lc45?mX# z2H?6>TbZkEp%h4-0bn<bfJG@oaS8?4&w<&k8~=}4kx`x%X18uUE6kE>N<G7bx_*G! z6+?)fd!G{i=)d`s_kQ|^Kl=WE|Kw{YC;#!;zxa(y-&#2N$3K|=;(vW|_};KkIQhXB z{_@{{Y5$*bUyA0>=o`e4!EWPdk6CYjqqeYc7L~=Bg)@tD^)t0!p2HHKQk-jw^*0so zkMYOkpBLrFXVfyP;?Nph^tqn_?<bd^T>W@%zW(IQldJE4d>Y?;_u_XqPS+Jj<J%)* zZfxM5N$uP=F*|$V><TeEJAZcN{a^Szq*Wr$z((9T04EaSr3){u6Q`HvUs@k<DhxUU zCte8j;)NH5Krha}SO_%#v$x-Ce)#zJZF_s?+UDIG2lll+d-LGn&OXHb;;-Vkie?4n zr`7{RR5W%OTG1A|eA`}J#IJteIZkakVX*BbP=qK4TX{$RBKu0vzAQ}k^7-@Uq21@6 z|J=nn{Cwd%wG%k&(@V=sciyOPE^p%JgEt;{Z`9veeg~i5U3hoxjrz&0=YIU^<&!`8 kiY=xGcQ8S~fA+6K-Y*R0rNP3;qx!=03(Irjr&y!*e}oT7g#Z8m diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h deleted file mode 100644 index 294dcff2..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h +++ /dev/null @@ -1,85 +0,0 @@ -/*===------------------ vaesintrin.h - VAES intrinsics ---------------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <vaesintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __VAESINTRIN_H -#define __VAESINTRIN_H - -/* Default attributes for YMM forms. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("vaes"), __min_vector_width__(256))) - -/* Default attributes for ZMM forms. */ -#define __DEFAULT_FN_ATTRS_F __attribute__((__always_inline__, __nodebug__, __target__("avx512f,vaes"), __min_vector_width__(512))) - - -static __inline__ __m256i __DEFAULT_FN_ATTRS - _mm256_aesenc_epi128(__m256i __A, __m256i __B) -{ - return (__m256i) __builtin_ia32_aesenc256((__v4di) __A, - (__v4di) __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS - _mm256_aesdec_epi128(__m256i __A, __m256i __B) -{ - return (__m256i) __builtin_ia32_aesdec256((__v4di) __A, - (__v4di) __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS - _mm256_aesenclast_epi128(__m256i __A, __m256i __B) -{ - return (__m256i) __builtin_ia32_aesenclast256((__v4di) __A, - (__v4di) __B); -} - -static __inline__ __m256i __DEFAULT_FN_ATTRS - _mm256_aesdeclast_epi128(__m256i __A, __m256i __B) -{ - return (__m256i) __builtin_ia32_aesdeclast256((__v4di) __A, - (__v4di) __B); -} - -#ifdef __AVX512FINTRIN_H -static __inline__ __m512i __DEFAULT_FN_ATTRS_F - _mm512_aesenc_epi128(__m512i __A, __m512i __B) -{ - return (__m512i) __builtin_ia32_aesenc512((__v8di) __A, - (__v8di) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS_F - _mm512_aesdec_epi128(__m512i __A, __m512i __B) -{ - return (__m512i) __builtin_ia32_aesdec512((__v8di) __A, - (__v8di) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS_F - _mm512_aesenclast_epi128(__m512i __A, __m512i __B) -{ - return (__m512i) __builtin_ia32_aesenclast512((__v8di) __A, - (__v8di) __B); -} - -static __inline__ __m512i __DEFAULT_FN_ATTRS_F - _mm512_aesdeclast_epi128(__m512i __A, __m512i __B) -{ - return (__m512i) __builtin_ia32_aesdeclast512((__v8di) __A, - (__v8di) __B); -} -#endif // __AVX512FINTRIN_H - -#undef __DEFAULT_FN_ATTRS -#undef __DEFAULT_FN_ATTRS_F - -#endif // __VAESINTRIN_H diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vaesintrin.h.blob deleted file mode 100644 index a69348ece80878c05255d77b7c14018cea90c4f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15397 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h deleted file mode 100644 index 485692ea..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h +++ /dev/null @@ -1,30 +0,0 @@ -/*===------------ vpclmulqdqintrin.h - VPCLMULQDQ intrinsics ---------------=== - * - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#ifndef __IMMINTRIN_H -#error "Never use <vpclmulqdqintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __VPCLMULQDQINTRIN_H -#define __VPCLMULQDQINTRIN_H - -#define _mm256_clmulepi64_epi128(A, B, I) \ - ((__m256i)__builtin_ia32_pclmulqdq256((__v4di)(__m256i)(A), \ - (__v4di)(__m256i)(B), \ - (char)(I))) - -#ifdef __AVX512FINTRIN_H -#define _mm512_clmulepi64_epi128(A, B, I) \ - ((__m512i)__builtin_ia32_pclmulqdq512((__v8di)(__m512i)(A), \ - (__v8di)(__m512i)(B), \ - (char)(I))) -#endif // __AVX512FINTRIN_H - -#endif /* __VPCLMULQDQINTRIN_H */ - diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@vpclmulqdqintrin.h.blob deleted file mode 100644 index 2ae28308da6bde487d9f9e06b87c6824e8d958bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12759 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h deleted file mode 100644 index 7ecada4c..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h +++ /dev/null @@ -1,42 +0,0 @@ -/*===----------------------- waitpkgintrin.h - WAITPKG --------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <waitpkgintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __WAITPKGINTRIN_H -#define __WAITPKGINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS \ - __attribute__((__always_inline__, __nodebug__, __target__("waitpkg"))) - -static __inline__ void __DEFAULT_FN_ATTRS -_umonitor (void * __address) -{ - __builtin_ia32_umonitor (__address); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_umwait (unsigned int __control, unsigned long long __counter) -{ - return __builtin_ia32_umwait (__control, - (unsigned int)(__counter >> 32), (unsigned int)__counter); -} - -static __inline__ unsigned char __DEFAULT_FN_ATTRS -_tpause (unsigned int __control, unsigned long long __counter) -{ - return __builtin_ia32_tpause (__control, - (unsigned int)(__counter >> 32), (unsigned int)__counter); -} - -#undef __DEFAULT_FN_ATTRS - -#endif /* __WAITPKGINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@waitpkgintrin.h.blob deleted file mode 100644 index 2e4713507f741148b80161aa09f89f8620f8fcbc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13144 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 B22%h4 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h deleted file mode 100644 index cac0347e..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h +++ /dev/null @@ -1,24 +0,0 @@ -/*===-------------- wbnoinvdintrin.h - wbnoinvd intrinsic-------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H -#error "Never use <wbnoinvdintrin.h> directly; include <x86intrin.h> instead." -#endif - -#ifndef __WBNOINVDINTRIN_H -#define __WBNOINVDINTRIN_H - -static __inline__ void - __attribute__((__always_inline__, __nodebug__, __target__("wbnoinvd"))) -_wbnoinvd (void) -{ - __builtin_ia32_wbnoinvd (); -} - -#endif /* __WBNOINVDINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wbnoinvdintrin.h.blob deleted file mode 100644 index 8f7492304c3c3851e45f7b07484339fce8965a27..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12264 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h deleted file mode 100644 index 49148dbf..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h +++ /dev/null @@ -1,23 +0,0 @@ -/*===---- wmmintrin.h - AES intrinsics ------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __WMMINTRIN_H -#define __WMMINTRIN_H - -#if !defined(__i386__) && !defined(__x86_64__) -#error "This header is only meant to be used on x86 and x64 architecture" -#endif - -#include <emmintrin.h> - -#include <__wmmintrin_aes.h> - -#include <__wmmintrin_pclmul.h> - -#endif /* __WMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@wmmintrin.h.blob deleted file mode 100644 index ceebafe4ffd562ee22465e594c6235979a8118ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12322 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h deleted file mode 100644 index f9a765be..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h +++ /dev/null @@ -1,65 +0,0 @@ -/*===--------------- x86gprintrin.h - X86 GPR intrinsics ------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __X86GPRINTRIN_H -#define __X86GPRINTRIN_H - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__HRESET__) -#include <hresetintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__UINTR__) -#include <uintrintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__CRC32__) -#include <crc32intrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__PRFCHI__) -#include <prfchiintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__RAOINT__) -#include <raointintrin.h> -#endif - -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__CMPCCXADD__) -#include <cmpccxaddintrin.h> -#endif - -#if defined(__i386__) -#define __SAVE_GPRBX "mov {%%ebx, %%eax |eax, ebx};" -#define __RESTORE_GPRBX "mov {%%eax, %%ebx |ebx, eax};" -#define __TMPGPR "eax" -#else -// When in 64-bit target, the 32-bit operands generate a 32-bit result, -// zero-extended to a 64-bit result in the destination general-purpose, -// It means "mov x %ebx" will clobber the higher 32 bits of rbx, so we -// should preserve the 64-bit register rbx. -#define __SAVE_GPRBX "mov {%%rbx, %%rax |rax, rbx};" -#define __RESTORE_GPRBX "mov {%%rax, %%rbx |rbx, rax};" -#define __TMPGPR "rax" -#endif - -#define __SSC_MARK(__Tag) \ - __asm__ __volatile__( __SAVE_GPRBX \ - "mov {%0, %%ebx|ebx, %0}; " \ - ".byte 0x64, 0x67, 0x90; " \ - __RESTORE_GPRBX \ - ::"i"(__Tag) \ - : __TMPGPR ); - -#endif /* __X86GPRINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@x86gprintrin.h.blob deleted file mode 100644 index ffa0492f5c3937b068ab25bf9834a11ad91dbf29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12824 zcmb7KO~@Qc8J;hJ96}D?f&_6z$7q%%rZf5d2#T)x+ZfHyn#3h2+Fwm~^-Sff{z+H& z%zSYb4|~{yXGH}MqOf=n@!&y0JS`gW=E;MwCoj5qP>?`2zE#y#JvIGy&FsQX;On>F zdVinyr~1U;{U_|fp9fom(KJu#h>xyPu~+5AsG_18#WWs?G8(0XWv8OS!HAP=vJq)8 z&&xfQO@f$}G^+A)|8u=344$3b8r7m4u`J?sOh@;w-aI=R(+SJMD39r>>EQjBhHpJ_ zXrgMrP*48z-bMGxm{npVpNdf!rejf&iiVYBVo5n0kCZN>GduQFk}g<Qm7pn*N~<{M zDVg9WoYX8vCAxldG~u;;wEfp#{i)|=uxef68YPs-XTp)xm?S0D)OmobFk4(Wb2cf? z?07U$_K|MMT%(wy)bsH^1i+jW>(3NbJkE122|GqptcqN)#o3Uv)M4fvN2)w!Q8;HY z1((-ZMN3QU3(SOZ8jj0+F7ykhe=+WHTU696OLEE8#*)W|AUWX>fa~Ky)MY}V)}=mi zr<AjW6ycY@{-!IZkOxhy&N3TN=_X0WJW?rx>)01;G9!E?@ExOTx{9T=Tq5(yPiIUy z`pEC^xZ>OFsPZ~efohHH9GMgW&nM&cdJ+}MvvKOvR_u#W6w?GxnPpp4WgS)Ft2b_5 zbB;E$S@9LnEr*DqSYj6C`5vPo%fqD3qKf62STf%-jwwWt2YzjQ#e-1^WXK8!)c5l= zUFUjmx~TTVV^qsJW00)qqb2ol#58t*12Upwz=ElHq<DyEO4lAS2Q@ZPxX6nrt2{be zzX6!V8Ua+?d1E*wkqVf<efpLg#4;05>)2!96h>5iu;Gn*Dh$EU5SU>~79rtaGp#NT zkfv5i=h0QeIM$s|D9sfhq%I-K1wLKHOzQLAl}oOoRv(ZO_)8kAk2z1~mJ-ad2&!$e z5CC2sq(o_(ye`hd3$zr_8hpSv`6ks(dUEHyBe~Jb>K<`cjB`@r#asn5RE#PMpe8{O zR{IV+RJo!|qA3PgD0O3stOMvik0vFh;e_uO3S>_Vr><vp4oVOp(cXH28xi<8S>G{0 zbjku6M1Xgdi?}}Z0KuiNAwZ-!HUT`Zup}ijj=W=BsFZ9|5eFiZR6LIe^ayUNgPsm2 z+JLumI%h)lN{Db-IRw!3#)3V@QA8%2>OVRH+nC&=`%c5_i-ZayL9nXnl%771bR?jv z72e8Wk58Gv!N5}JK23VE0~nL69zk<E7C}$u5s{8)S!T)xFF*aB+al}8rPaf9gPzl% zh^i0qqxI2Z9cyim+G$oqJgxbo_z@C*=o@pws$vgo6j5@4IszpH9T6d%a8sRi2o=G} zbVEV}G{x;BUo3ID(AD!J|D-OUfYX8r&1lIY?Yv-2go^Ku2W^n#1<fX^N9Y8}QtD<@ zxF}-emVq7W$R3e`N!{M~;SslgQiZG4t+!on>1;-$#$E_AqtQBh8%&W6+s^q-Fa?}A z(*S=FVUCIt(bbaZ^W2n(X{yJxo%pr~0w5L`bRv%_B8RcO^&sF-w=|;CnhJtujNz+u zTle7Q91z(pO@_=KFQ+=_KPsvwMm&f>nkbl30&QOa)ov-!mpkw#-e#=KvlPlW9&w5a z2E+i`FEo`DLDPJxq(iAdBuEwXkz!C((-H($Q529;&q)@LI#w8SsBvlE{zLX>HPqsY zE<7?r(bk8eQW=BGhq#sDeWFGj=Y3BkB%6d6jDYq?UvP7wYQb-g`f6KQtxiQgmhGUx z&tkokEl?f5!2SXjOO73k%anIDIKUh)Cr#PPcUmxqTu=_pZ$CS^@PW>SyC<TS2aqGB zvZw_)=O|gD5>6&AD~H4&8_2z8X&{-&m0Im`Lj@!8+7jkiEexUhhvPa4E7I;leC`C= zL|3leJD1(crGh)+xsV&Bl_er7En1q5mB7YPP?QvgI>%=yC+McJT7uGsp&jc(-F-;@ zxFZu@1r+=fq_mpm_?QiibG=yCXEj!5ldxI5xq*lZIv-~_%VsbzcA9x(B!eemi#Zln zP@b@I?HT8Aa=jGNYXNV?(N<_vw$rS1_Y~-fB>|mR>v3<lVTxf>@;91!#AI!bG<5@Z z3NX}#fObK=pAp!XI+19c&?z;R%9lu-NV5J-fn4HCiZ%XJ4njSHnpd@5NI;>)G<y`K zzVKVtyfxNF>I;?@FeU2hpaJE(C%^7#r`pi!OVymf?jXw3H21XxayNdacQ@YYzNIpq zSZ>o!u5ukOIYA+}BAw|JHMLxPK=gJJ9VJdvSaWgc>g36|H8kD;7(@KJP~!@yE^W|> z-O%Yhxm$b8v!yZ|Zm{c}!Tt%Bw~oC~1sC!zY{eSBT)Gvg9siS8R<4kge9*Ebki7Vc zKvC$cnb6zUtzT8nU~SdjcKF2ICn94-p<Cad{Pe4C8C4=dTR>;fKCdo+d~B7srE#C4 zjh0jRnbfBg1$7|}^@avnxg=U~NiQr{V!`7|UPpEU+Jufxp@%ul9ZU}>eypp|egPFZ z&7o{=oKFfAVW{6kTv9hXCBLi@Pk1e+ex~ziO4?hu<tfTqXUgJcB3I}6+)rZ$x4zQ< ze}6Uc0I7Co;hP)Qt@?xryX`INh~;LB=$lpxSm+C;qDO1%j%}&>SNPV98sQw^=>%fI zNtNU!J^@=!k80+YWy8m$ZC0oKqh`}sNI^Q|j=7BvJiByz2;4LF!Ic$N&`junu(9e0 zyHq1syuL~RB*}I33L)ym1)8bma4TTDFT(}Y*Jm9?(Ia)-z{;fyIVk-MqH$ANhN^?I zRZxO4?kF$I5^JaO<?L5pcHmky&tXAI;$G>aGKeV#)J6auLh>4_3e<Ir6O1TBZCh_f z0yibF!^|9M7uD!fC6FDyVZ+1=*f80fUgsTDyokp%&8v;}Y&<8iXsh(H)ooZ7Y(e!F zpc9ssW&#a`+y#|6=PMl`DkGTiED~<ULY6OVLwqT_LB%NY`HDd15Cb0A4y#XS__$@p z<wpUS^yo`4w>KlZ1^QJ1Bt$kVZpXVWoeohjnx~tWVH3a}xhZ@WQ&GthaK6HBD;P=! zuId>l9r@thG=M244q_T{*oeYKjH3<8yvLFbXD9P3H{mhDrd3=4W<zO1E6r<tk6@!3 zl@Qd=WN1UPzEML26OJGgI?h!K?&l5Lj3Q!KWk*FRG)5wMgOY2Q+VE-$ZqC%+P>pCC zwZZ-`W2~8{1R6>FQcvT$T1f{0(y-eK`ax3@tNCn6RM<s1L1w(%Qp1IV8;6EOeH%mP z^7Yq`{o@_=xtzz2WBJVplv7D>6UOke+LrUYP{&!v8<KV3yXh#G=I;qyr4rBO7maxh zt9eInRB*TorqBg<#YU;==2g9@<|RW549b~5-tZ%uw1&$BsaMB(*1&2C#4T)TL`1UA z#?|;iUR$hNealO`ymu$ko&&M1+|UtM`AXrd3)ZN4;I2#VB{uKXqO^#j1&KFyZG!}m zu_zj#QW^A^`M;DgX0=9v&9Kf%Wfb3l)~===zSVp*>6HYG>i;5A?SRx8(H1@<o^nWo z8#c-;mFL)=4^#Ty_#j(>sEp2S+(zKr23Ni2`<TwfUZ1e4nL%+4eWTcGwsL+5^xT{F z-)-6OnF3tl>D}NTTuJq2rXn%zf?QR*t3FgKC_gYTZwitTpO05)eIZ^=sa~{w|9Z26 zFdhSl0dX7*H;<OI=>1-_iD$_puzj42=R+UuFJvpKzSK|Yu3u006S^_{nSR2RFVn8} zQ?A^2-0r9B;^5Ya!KuT8!J+3r{@<G)e|u|mFbwbCdhPmacL#&P_9vkaXBi!uzYUL- zWN~aT*t)QNVR%6Po*X>i0?Ow<`uR65kA61!Lm1w@cJKb3yVpWsarpr}`dG`vc{Dr* zE4Jacjvoh>Cx`IQcrknfeohYI58wW*JmviM`BMkvZ`Pc0@W1~i)$hn3!|>j{E8(q6 zcfSk=e5gI3{p;4n?Teo}0KcFAQuFS2p1%EwH-GT20^Ys!dMn<Cm)^F2Z)KD6C=o$6 zDJKZ1WjnWh?&Skp@H=hzKl}>6^zL7t-2jQ~e}|6j9(nwQtrvD*fZwCLN8$Iy-523^ zxI2X3<GaV<_xYuFPyCiY+j=DoA6(o4v)#CTAN~)&2yBL}bgR#{4sRbmeL($c3H}e@ C`JJHv diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h deleted file mode 100644 index 80aa2a81..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h +++ /dev/null @@ -1,3017 +0,0 @@ -/*===---- xmmintrin.h - SSE intrinsics -------------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __XMMINTRIN_H -#define __XMMINTRIN_H - -#if !defined(__i386__) && !defined(__x86_64__) -#error "This header is only meant to be used on x86 and x64 architecture" -#endif - -#include <mmintrin.h> - -typedef int __v4si __attribute__((__vector_size__(16))); -typedef float __v4sf __attribute__((__vector_size__(16))); -typedef float __m128 __attribute__((__vector_size__(16), __aligned__(16))); - -typedef float __m128_u __attribute__((__vector_size__(16), __aligned__(1))); - -/* Unsigned types */ -typedef unsigned int __v4su __attribute__((__vector_size__(16))); - -/* This header should only be included in a hosted environment as it depends on - * a standard library to provide allocation routines. */ -#if __STDC_HOSTED__ -#include <mm_malloc.h> -#endif - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("sse"), __min_vector_width__(128))) -#define __DEFAULT_FN_ATTRS_MMX __attribute__((__always_inline__, __nodebug__, __target__("mmx,sse"), __min_vector_width__(64))) - -/// Adds the 32-bit float values in the low-order bits of the operands. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDSS / ADDSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// The lower 32 bits of this operand are used in the calculation. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// The lower 32 bits of this operand are used in the calculation. -/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the sum -/// of the lower 32 bits of both operands. The upper 96 bits are copied from -/// the upper 96 bits of the first source operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_add_ss(__m128 __a, __m128 __b) -{ - __a[0] += __b[0]; - return __a; -} - -/// Adds two 128-bit vectors of [4 x float], and returns the results of -/// the addition. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VADDPS / ADDPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// \returns A 128-bit vector of [4 x float] containing the sums of both -/// operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_add_ps(__m128 __a, __m128 __b) -{ - return (__m128)((__v4sf)__a + (__v4sf)__b); -} - -/// Subtracts the 32-bit float value in the low-order bits of the second -/// operand from the corresponding value in the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSUBSS / SUBSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing the minuend. The lower 32 bits -/// of this operand are used in the calculation. -/// \param __b -/// A 128-bit vector of [4 x float] containing the subtrahend. The lower 32 -/// bits of this operand are used in the calculation. -/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the -/// difference of the lower 32 bits of both operands. The upper 96 bits are -/// copied from the upper 96 bits of the first source operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_sub_ss(__m128 __a, __m128 __b) -{ - __a[0] -= __b[0]; - return __a; -} - -/// Subtracts each of the values of the second operand from the first -/// operand, both of which are 128-bit vectors of [4 x float] and returns -/// the results of the subtraction. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSUBPS / SUBPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing the minuend. -/// \param __b -/// A 128-bit vector of [4 x float] containing the subtrahend. -/// \returns A 128-bit vector of [4 x float] containing the differences between -/// both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_sub_ps(__m128 __a, __m128 __b) -{ - return (__m128)((__v4sf)__a - (__v4sf)__b); -} - -/// Multiplies two 32-bit float values in the low-order bits of the -/// operands. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMULSS / MULSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// The lower 32 bits of this operand are used in the calculation. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// The lower 32 bits of this operand are used in the calculation. -/// \returns A 128-bit vector of [4 x float] containing the product of the lower -/// 32 bits of both operands. The upper 96 bits are copied from the upper 96 -/// bits of the first source operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_mul_ss(__m128 __a, __m128 __b) -{ - __a[0] *= __b[0]; - return __a; -} - -/// Multiplies two 128-bit vectors of [4 x float] and returns the -/// results of the multiplication. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMULPS / MULPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// \returns A 128-bit vector of [4 x float] containing the products of both -/// operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_mul_ps(__m128 __a, __m128 __b) -{ - return (__m128)((__v4sf)__a * (__v4sf)__b); -} - -/// Divides the value in the low-order 32 bits of the first operand by -/// the corresponding value in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDIVSS / DIVSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing the dividend. The lower 32 -/// bits of this operand are used in the calculation. -/// \param __b -/// A 128-bit vector of [4 x float] containing the divisor. The lower 32 bits -/// of this operand are used in the calculation. -/// \returns A 128-bit vector of [4 x float] containing the quotients of the -/// lower 32 bits of both operands. The upper 96 bits are copied from the -/// upper 96 bits of the first source operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_div_ss(__m128 __a, __m128 __b) -{ - __a[0] /= __b[0]; - return __a; -} - -/// Divides two 128-bit vectors of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VDIVPS / DIVPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing the dividend. -/// \param __b -/// A 128-bit vector of [4 x float] containing the divisor. -/// \returns A 128-bit vector of [4 x float] containing the quotients of both -/// operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_div_ps(__m128 __a, __m128 __b) -{ - return (__m128)((__v4sf)__a / (__v4sf)__b); -} - -/// Calculates the square root of the value stored in the low-order bits -/// of a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSQRTSS / SQRTSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the calculation. -/// \returns A 128-bit vector of [4 x float] containing the square root of the -/// value in the low-order bits of the operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_sqrt_ss(__m128 __a) -{ - return (__m128)__builtin_ia32_sqrtss((__v4sf)__a); -} - -/// Calculates the square roots of the values stored in a 128-bit vector -/// of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSQRTPS / SQRTPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the square roots of the -/// values in the operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_sqrt_ps(__m128 __a) -{ - return __builtin_ia32_sqrtps((__v4sf)__a); -} - -/// Calculates the approximate reciprocal of the value stored in the -/// low-order bits of a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VRCPSS / RCPSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the calculation. -/// \returns A 128-bit vector of [4 x float] containing the approximate -/// reciprocal of the value in the low-order bits of the operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_rcp_ss(__m128 __a) -{ - return (__m128)__builtin_ia32_rcpss((__v4sf)__a); -} - -/// Calculates the approximate reciprocals of the values stored in a -/// 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VRCPPS / RCPPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the approximate -/// reciprocals of the values in the operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_rcp_ps(__m128 __a) -{ - return (__m128)__builtin_ia32_rcpps((__v4sf)__a); -} - -/// Calculates the approximate reciprocal of the square root of the value -/// stored in the low-order bits of a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VRSQRTSS / RSQRTSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the calculation. -/// \returns A 128-bit vector of [4 x float] containing the approximate -/// reciprocal of the square root of the value in the low-order bits of the -/// operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_rsqrt_ss(__m128 __a) -{ - return __builtin_ia32_rsqrtss((__v4sf)__a); -} - -/// Calculates the approximate reciprocals of the square roots of the -/// values stored in a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VRSQRTPS / RSQRTPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the approximate -/// reciprocals of the square roots of the values in the operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_rsqrt_ps(__m128 __a) -{ - return __builtin_ia32_rsqrtps((__v4sf)__a); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands and returns the lesser value in the low-order bits of the -/// vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMINSS / MINSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the -/// minimum value between both operands. The upper 96 bits are copied from -/// the upper 96 bits of the first source operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_min_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_minss((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 128-bit vectors of [4 x float] and returns the lesser -/// of each pair of values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMINPS / MINPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. -/// \returns A 128-bit vector of [4 x float] containing the minimum values -/// between both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_min_ps(__m128 __a, __m128 __b) -{ - return __builtin_ia32_minps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands and returns the greater value in the low-order bits of a 128-bit -/// vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMAXSS / MAXSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the -/// maximum value between both operands. The upper 96 bits are copied from -/// the upper 96 bits of the first source operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_max_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_maxss((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 128-bit vectors of [4 x float] and returns the greater -/// of each pair of values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMAXPS / MAXPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. -/// \returns A 128-bit vector of [4 x float] containing the maximum values -/// between both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_max_ps(__m128 __a, __m128 __b) -{ - return __builtin_ia32_maxps((__v4sf)__a, (__v4sf)__b); -} - -/// Performs a bitwise AND of two 128-bit vectors of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VANDPS / ANDPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector containing one of the source operands. -/// \param __b -/// A 128-bit vector containing one of the source operands. -/// \returns A 128-bit vector of [4 x float] containing the bitwise AND of the -/// values between both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_and_ps(__m128 __a, __m128 __b) -{ - return (__m128)((__v4su)__a & (__v4su)__b); -} - -/// Performs a bitwise AND of two 128-bit vectors of [4 x float], using -/// the one's complement of the values contained in the first source -/// operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VANDNPS / ANDNPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing the first source operand. The -/// one's complement of this value is used in the bitwise AND. -/// \param __b -/// A 128-bit vector of [4 x float] containing the second source operand. -/// \returns A 128-bit vector of [4 x float] containing the bitwise AND of the -/// one's complement of the first operand and the values in the second -/// operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_andnot_ps(__m128 __a, __m128 __b) -{ - return (__m128)(~(__v4su)__a & (__v4su)__b); -} - -/// Performs a bitwise OR of two 128-bit vectors of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VORPS / ORPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// \returns A 128-bit vector of [4 x float] containing the bitwise OR of the -/// values between both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_or_ps(__m128 __a, __m128 __b) -{ - return (__m128)((__v4su)__a | (__v4su)__b); -} - -/// Performs a bitwise exclusive OR of two 128-bit vectors of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPS / XORPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the source operands. -/// \returns A 128-bit vector of [4 x float] containing the bitwise exclusive OR -/// of the values between both operands. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_xor_ps(__m128 __a, __m128 __b) -{ - return (__m128)((__v4su)__a ^ (__v4su)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands for equality and returns the result of the comparison in the -/// low-order bits of a vector [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPEQSS / CMPEQSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpeq_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpeqss((__v4sf)__a, (__v4sf)__b); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] for equality. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPEQPS / CMPEQPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpeq_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpeqps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is less than the -/// corresponding value in the second operand and returns the result of the -/// comparison in the low-order bits of a vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLTSS / CMPLTSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmplt_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpltss((__v4sf)__a, (__v4sf)__b); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are less than those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLTPS / CMPLTPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmplt_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpltps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is less than or -/// equal to the corresponding value in the second operand and returns the -/// result of the comparison in the low-order bits of a vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLESS / CMPLESS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmple_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpless((__v4sf)__a, (__v4sf)__b); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are less than or equal to those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLEPS / CMPLEPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmple_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpleps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is greater than -/// the corresponding value in the second operand and returns the result of -/// the comparison in the low-order bits of a vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLTSS / CMPLTSS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpgt_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_shufflevector((__v4sf)__a, - (__v4sf)__builtin_ia32_cmpltss((__v4sf)__b, (__v4sf)__a), - 4, 1, 2, 3); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are greater than those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLTPS / CMPLTPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpgt_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpltps((__v4sf)__b, (__v4sf)__a); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is greater than -/// or equal to the corresponding value in the second operand and returns -/// the result of the comparison in the low-order bits of a vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLESS / CMPLESS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpge_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_shufflevector((__v4sf)__a, - (__v4sf)__builtin_ia32_cmpless((__v4sf)__b, (__v4sf)__a), - 4, 1, 2, 3); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are greater than or equal to those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPLEPS / CMPLEPS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpge_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpleps((__v4sf)__b, (__v4sf)__a); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands for inequality and returns the result of the comparison in the -/// low-order bits of a vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNEQSS / CMPNEQSS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpneq_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpneqss((__v4sf)__a, (__v4sf)__b); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] for inequality. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNEQPS / CMPNEQPS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpneq_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpneqps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is not less than -/// the corresponding value in the second operand and returns the result of -/// the comparison in the low-order bits of a vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLTSS / CMPNLTSS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpnlt_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpnltss((__v4sf)__a, (__v4sf)__b); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are not less than those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLTPS / CMPNLTPS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpnlt_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpnltps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is not less than -/// or equal to the corresponding value in the second operand and returns -/// the result of the comparison in the low-order bits of a vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLESS / CMPNLESS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpnle_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpnless((__v4sf)__a, (__v4sf)__b); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are not less than or equal to those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLEPS / CMPNLEPS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpnle_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpnleps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is not greater -/// than the corresponding value in the second operand and returns the -/// result of the comparison in the low-order bits of a vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLTSS / CMPNLTSS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpngt_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_shufflevector((__v4sf)__a, - (__v4sf)__builtin_ia32_cmpnltss((__v4sf)__b, (__v4sf)__a), - 4, 1, 2, 3); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are not greater than those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLTPS / CMPNLTPS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpngt_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpnltps((__v4sf)__b, (__v4sf)__a); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is not greater -/// than or equal to the corresponding value in the second operand and -/// returns the result of the comparison in the low-order bits of a vector -/// of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLESS / CMPNLESS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpnge_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_shufflevector((__v4sf)__a, - (__v4sf)__builtin_ia32_cmpnless((__v4sf)__b, (__v4sf)__a), - 4, 1, 2, 3); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are not greater than or equal to those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPNLEPS / CMPNLEPS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpnge_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpnleps((__v4sf)__b, (__v4sf)__a); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is ordered with -/// respect to the corresponding value in the second operand and returns the -/// result of the comparison in the low-order bits of a vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPORDSS / CMPORDSS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpord_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpordss((__v4sf)__a, (__v4sf)__b); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are ordered with respect to those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPORDPS / CMPORDPS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpord_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpordps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the value in the first operand is unordered -/// with respect to the corresponding value in the second operand and -/// returns the result of the comparison in the low-order bits of a vector -/// of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPUNORDSS / CMPUNORDSS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float] containing one of the operands. The lower -/// 32 bits of this operand are used in the comparison. -/// \returns A 128-bit vector of [4 x float] containing the comparison results -/// in the low-order bits. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpunord_ss(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpunordss((__v4sf)__a, (__v4sf)__b); -} - -/// Compares each of the corresponding 32-bit float values of the -/// 128-bit vectors of [4 x float] to determine if the values in the first -/// operand are unordered with respect to those in the second operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCMPUNORDPS / CMPUNORDPS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// \returns A 128-bit vector of [4 x float] containing the comparison results. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cmpunord_ps(__m128 __a, __m128 __b) -{ - return (__m128)__builtin_ia32_cmpunordps((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands for equality and returns the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the -/// two lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_comieq_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_comieq((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the first operand is less than the second -/// operand and returns the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_comilt_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_comilt((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the first operand is less than or equal to the -/// second operand and returns the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_comile_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_comile((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the first operand is greater than the second -/// operand and returns the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the -/// two lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_comigt_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_comigt((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the first operand is greater than or equal to -/// the second operand and returns the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_comige_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_comige((__v4sf)__a, (__v4sf)__b); -} - -/// Compares two 32-bit float values in the low-order bits of both -/// operands to determine if the first operand is not equal to the second -/// operand and returns the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 1 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCOMISS / COMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the -/// two lower 32-bit values is NaN, 1 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_comineq_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_comineq((__v4sf)__a, (__v4sf)__b); -} - -/// Performs an unordered comparison of two 32-bit float values using -/// the low-order bits of both operands to determine equality and returns -/// the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_ucomieq_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_ucomieq((__v4sf)__a, (__v4sf)__b); -} - -/// Performs an unordered comparison of two 32-bit float values using -/// the low-order bits of both operands to determine if the first operand is -/// less than the second operand and returns the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_ucomilt_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_ucomilt((__v4sf)__a, (__v4sf)__b); -} - -/// Performs an unordered comparison of two 32-bit float values using -/// the low-order bits of both operands to determine if the first operand is -/// less than or equal to the second operand and returns the result of the -/// comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_ucomile_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_ucomile((__v4sf)__a, (__v4sf)__b); -} - -/// Performs an unordered comparison of two 32-bit float values using -/// the low-order bits of both operands to determine if the first operand is -/// greater than the second operand and returns the result of the -/// comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_ucomigt_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_ucomigt((__v4sf)__a, (__v4sf)__b); -} - -/// Performs an unordered comparison of two 32-bit float values using -/// the low-order bits of both operands to determine if the first operand is -/// greater than or equal to the second operand and returns the result of -/// the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 0 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 0 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_ucomige_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_ucomige((__v4sf)__a, (__v4sf)__b); -} - -/// Performs an unordered comparison of two 32-bit float values using -/// the low-order bits of both operands to determine inequality and returns -/// the result of the comparison. -/// -/// If either of the two lower 32-bit values is NaN, 1 is returned. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUCOMISS / UCOMISS </c> instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \param __b -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the comparison. -/// \returns An integer containing the comparison results. If either of the two -/// lower 32-bit values is NaN, 1 is returned. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_ucomineq_ss(__m128 __a, __m128 __b) -{ - return __builtin_ia32_ucomineq((__v4sf)__a, (__v4sf)__b); -} - -/// Converts a float value contained in the lower 32 bits of a vector of -/// [4 x float] into a 32-bit integer. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSS2SI / CVTSS2SI </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the conversion. -/// \returns A 32-bit integer containing the converted value. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_cvtss_si32(__m128 __a) -{ - return __builtin_ia32_cvtss2si((__v4sf)__a); -} - -/// Converts a float value contained in the lower 32 bits of a vector of -/// [4 x float] into a 32-bit integer. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSS2SI / CVTSS2SI </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the conversion. -/// \returns A 32-bit integer containing the converted value. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_cvt_ss2si(__m128 __a) -{ - return _mm_cvtss_si32(__a); -} - -#ifdef __x86_64__ - -/// Converts a float value contained in the lower 32 bits of a vector of -/// [4 x float] into a 64-bit integer. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSS2SI / CVTSS2SI </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the conversion. -/// \returns A 64-bit integer containing the converted value. -static __inline__ long long __DEFAULT_FN_ATTRS -_mm_cvtss_si64(__m128 __a) -{ - return __builtin_ia32_cvtss2si64((__v4sf)__a); -} - -#endif - -/// Converts two low-order float values in a 128-bit vector of -/// [4 x float] into a 64-bit vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPS2PI </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 64-bit integer vector containing the converted values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_cvtps_pi32(__m128 __a) -{ - return (__m64)__builtin_ia32_cvtps2pi((__v4sf)__a); -} - -/// Converts two low-order float values in a 128-bit vector of -/// [4 x float] into a 64-bit vector of [2 x i32]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPS2PI </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 64-bit integer vector containing the converted values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_cvt_ps2pi(__m128 __a) -{ - return _mm_cvtps_pi32(__a); -} - -/// Converts a float value contained in the lower 32 bits of a vector of -/// [4 x float] into a 32-bit integer, truncating the result when it is -/// inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTSS2SI / CVTTSS2SI </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the conversion. -/// \returns A 32-bit integer containing the converted value. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_cvttss_si32(__m128 __a) -{ - return __builtin_ia32_cvttss2si((__v4sf)__a); -} - -/// Converts a float value contained in the lower 32 bits of a vector of -/// [4 x float] into a 32-bit integer, truncating the result when it is -/// inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTSS2SI / CVTTSS2SI </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the conversion. -/// \returns A 32-bit integer containing the converted value. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_cvtt_ss2si(__m128 __a) -{ - return _mm_cvttss_si32(__a); -} - -#ifdef __x86_64__ -/// Converts a float value contained in the lower 32 bits of a vector of -/// [4 x float] into a 64-bit integer, truncating the result when it is -/// inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTTSS2SI / CVTTSS2SI </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the conversion. -/// \returns A 64-bit integer containing the converted value. -static __inline__ long long __DEFAULT_FN_ATTRS -_mm_cvttss_si64(__m128 __a) -{ - return __builtin_ia32_cvttss2si64((__v4sf)__a); -} -#endif - -/// Converts two low-order float values in a 128-bit vector of -/// [4 x float] into a 64-bit vector of [2 x i32], truncating the result -/// when it is inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTTPS2PI / VTTPS2PI </c> -/// instructions. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 64-bit integer vector containing the converted values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_cvttps_pi32(__m128 __a) -{ - return (__m64)__builtin_ia32_cvttps2pi((__v4sf)__a); -} - -/// Converts two low-order float values in a 128-bit vector of [4 x -/// float] into a 64-bit vector of [2 x i32], truncating the result when it -/// is inexact. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTTPS2PI </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \returns A 64-bit integer vector containing the converted values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_cvtt_ps2pi(__m128 __a) -{ - return _mm_cvttps_pi32(__a); -} - -/// Converts a 32-bit signed integer value into a floating point value -/// and writes it to the lower 32 bits of the destination. The remaining -/// higher order elements of the destination vector are copied from the -/// corresponding elements in the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSI2SS / CVTSI2SS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 32-bit signed integer operand containing the value to be converted. -/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the -/// converted value of the second operand. The upper 96 bits are copied from -/// the upper 96 bits of the first operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cvtsi32_ss(__m128 __a, int __b) -{ - __a[0] = __b; - return __a; -} - -/// Converts a 32-bit signed integer value into a floating point value -/// and writes it to the lower 32 bits of the destination. The remaining -/// higher order elements of the destination are copied from the -/// corresponding elements in the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSI2SS / CVTSI2SS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 32-bit signed integer operand containing the value to be converted. -/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the -/// converted value of the second operand. The upper 96 bits are copied from -/// the upper 96 bits of the first operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cvt_si2ss(__m128 __a, int __b) -{ - return _mm_cvtsi32_ss(__a, __b); -} - -#ifdef __x86_64__ - -/// Converts a 64-bit signed integer value into a floating point value -/// and writes it to the lower 32 bits of the destination. The remaining -/// higher order elements of the destination are copied from the -/// corresponding elements in the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VCVTSI2SS / CVTSI2SS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 64-bit signed integer operand containing the value to be converted. -/// \returns A 128-bit vector of [4 x float] whose lower 32 bits contain the -/// converted value of the second operand. The upper 96 bits are copied from -/// the upper 96 bits of the first operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_cvtsi64_ss(__m128 __a, long long __b) -{ - __a[0] = __b; - return __a; -} - -#endif - -/// Converts two elements of a 64-bit vector of [2 x i32] into two -/// floating point values and writes them to the lower 64-bits of the -/// destination. The remaining higher order elements of the destination are -/// copied from the corresponding elements in the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPI2PS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 64-bit vector of [2 x i32]. The elements in this vector are converted -/// and written to the corresponding low-order elements in the destination. -/// \returns A 128-bit vector of [4 x float] whose lower 64 bits contain the -/// converted value of the second operand. The upper 64 bits are copied from -/// the upper 64 bits of the first operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX -_mm_cvtpi32_ps(__m128 __a, __m64 __b) -{ - return __builtin_ia32_cvtpi2ps((__v4sf)__a, (__v2si)__b); -} - -/// Converts two elements of a 64-bit vector of [2 x i32] into two -/// floating point values and writes them to the lower 64-bits of the -/// destination. The remaining higher order elements of the destination are -/// copied from the corresponding elements in the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPI2PS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. -/// \param __b -/// A 64-bit vector of [2 x i32]. The elements in this vector are converted -/// and written to the corresponding low-order elements in the destination. -/// \returns A 128-bit vector of [4 x float] whose lower 64 bits contain the -/// converted value from the second operand. The upper 64 bits are copied -/// from the upper 64 bits of the first operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX -_mm_cvt_pi2ps(__m128 __a, __m64 __b) -{ - return _mm_cvtpi32_ps(__a, __b); -} - -/// Extracts a float value contained in the lower 32 bits of a vector of -/// [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. The lower 32 bits of this operand are -/// used in the extraction. -/// \returns A 32-bit float containing the extracted value. -static __inline__ float __DEFAULT_FN_ATTRS -_mm_cvtss_f32(__m128 __a) -{ - return __a[0]; -} - -/// Loads two packed float values from the address \a __p into the -/// high-order bits of a 128-bit vector of [4 x float]. The low-order bits -/// are copied from the low-order bits of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVHPD / MOVHPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. Bits [63:0] are written to bits [63:0] -/// of the destination. -/// \param __p -/// A pointer to two packed float values. Bits [63:0] are written to bits -/// [127:64] of the destination. -/// \returns A 128-bit vector of [4 x float] containing the moved values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_loadh_pi(__m128 __a, const __m64 *__p) -{ - typedef float __mm_loadh_pi_v2f32 __attribute__((__vector_size__(8))); - struct __mm_loadh_pi_struct { - __mm_loadh_pi_v2f32 __u; - } __attribute__((__packed__, __may_alias__)); - __mm_loadh_pi_v2f32 __b = ((const struct __mm_loadh_pi_struct*)__p)->__u; - __m128 __bb = __builtin_shufflevector(__b, __b, 0, 1, 0, 1); - return __builtin_shufflevector(__a, __bb, 0, 1, 4, 5); -} - -/// Loads two packed float values from the address \a __p into the -/// low-order bits of a 128-bit vector of [4 x float]. The high-order bits -/// are copied from the high-order bits of the first operand. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVLPD / MOVLPD </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. Bits [127:64] are written to bits -/// [127:64] of the destination. -/// \param __p -/// A pointer to two packed float values. Bits [63:0] are written to bits -/// [63:0] of the destination. -/// \returns A 128-bit vector of [4 x float] containing the moved values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_loadl_pi(__m128 __a, const __m64 *__p) -{ - typedef float __mm_loadl_pi_v2f32 __attribute__((__vector_size__(8))); - struct __mm_loadl_pi_struct { - __mm_loadl_pi_v2f32 __u; - } __attribute__((__packed__, __may_alias__)); - __mm_loadl_pi_v2f32 __b = ((const struct __mm_loadl_pi_struct*)__p)->__u; - __m128 __bb = __builtin_shufflevector(__b, __b, 0, 1, 0, 1); - return __builtin_shufflevector(__a, __bb, 4, 5, 2, 3); -} - -/// Constructs a 128-bit floating-point vector of [4 x float]. The lower -/// 32 bits of the vector are initialized with the single-precision -/// floating-point value loaded from a specified memory location. The upper -/// 96 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSS / MOVSS </c> instruction. -/// -/// \param __p -/// A pointer to a 32-bit memory location containing a single-precision -/// floating-point value. -/// \returns An initialized 128-bit floating-point vector of [4 x float]. The -/// lower 32 bits contain the value loaded from the memory location. The -/// upper 96 bits are set to zero. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_load_ss(const float *__p) -{ - struct __mm_load_ss_struct { - float __u; - } __attribute__((__packed__, __may_alias__)); - float __u = ((const struct __mm_load_ss_struct*)__p)->__u; - return __extension__ (__m128){ __u, 0, 0, 0 }; -} - -/// Loads a 32-bit float value and duplicates it to all four vector -/// elements of a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBROADCASTSS / MOVSS + shuffling </c> -/// instruction. -/// -/// \param __p -/// A pointer to a float value to be loaded and duplicated. -/// \returns A 128-bit vector of [4 x float] containing the loaded and -/// duplicated values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_load1_ps(const float *__p) -{ - struct __mm_load1_ps_struct { - float __u; - } __attribute__((__packed__, __may_alias__)); - float __u = ((const struct __mm_load1_ps_struct*)__p)->__u; - return __extension__ (__m128){ __u, __u, __u, __u }; -} - -#define _mm_load_ps1(p) _mm_load1_ps(p) - -/// Loads a 128-bit floating-point vector of [4 x float] from an aligned -/// memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS </c> instruction. -/// -/// \param __p -/// A pointer to a 128-bit memory location. The address of the memory -/// location has to be 128-bit aligned. -/// \returns A 128-bit vector of [4 x float] containing the loaded values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_load_ps(const float *__p) -{ - return *(const __m128*)__p; -} - -/// Loads a 128-bit floating-point vector of [4 x float] from an -/// unaligned memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPS / MOVUPS </c> instruction. -/// -/// \param __p -/// A pointer to a 128-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \returns A 128-bit vector of [4 x float] containing the loaded values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_loadu_ps(const float *__p) -{ - struct __loadu_ps { - __m128_u __v; - } __attribute__((__packed__, __may_alias__)); - return ((const struct __loadu_ps*)__p)->__v; -} - -/// Loads four packed float values, in reverse order, from an aligned -/// memory location to 32-bit elements in a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS + shuffling </c> -/// instruction. -/// -/// \param __p -/// A pointer to a 128-bit memory location. The address of the memory -/// location has to be 128-bit aligned. -/// \returns A 128-bit vector of [4 x float] containing the moved values, loaded -/// in reverse order. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_loadr_ps(const float *__p) -{ - __m128 __a = _mm_load_ps(__p); - return __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 3, 2, 1, 0); -} - -/// Create a 128-bit vector of [4 x float] with undefined values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic has no corresponding instruction. -/// -/// \returns A 128-bit vector of [4 x float] containing undefined values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_undefined_ps(void) -{ - return (__m128)__builtin_ia32_undef128(); -} - -/// Constructs a 128-bit floating-point vector of [4 x float]. The lower -/// 32 bits of the vector are initialized with the specified single-precision -/// floating-point value. The upper 96 bits are set to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSS / MOVSS </c> instruction. -/// -/// \param __w -/// A single-precision floating-point value used to initialize the lower 32 -/// bits of the result. -/// \returns An initialized 128-bit floating-point vector of [4 x float]. The -/// lower 32 bits contain the value provided in the source operand. The -/// upper 96 bits are set to zero. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_set_ss(float __w) -{ - return __extension__ (__m128){ __w, 0, 0, 0 }; -} - -/// Constructs a 128-bit floating-point vector of [4 x float], with each -/// of the four single-precision floating-point vector elements set to the -/// specified single-precision floating-point value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPERMILPS / PERMILPS </c> instruction. -/// -/// \param __w -/// A single-precision floating-point value used to initialize each vector -/// element of the result. -/// \returns An initialized 128-bit floating-point vector of [4 x float]. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_set1_ps(float __w) -{ - return __extension__ (__m128){ __w, __w, __w, __w }; -} - -/* Microsoft specific. */ -/// Constructs a 128-bit floating-point vector of [4 x float], with each -/// of the four single-precision floating-point vector elements set to the -/// specified single-precision floating-point value. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPERMILPS / PERMILPS </c> instruction. -/// -/// \param __w -/// A single-precision floating-point value used to initialize each vector -/// element of the result. -/// \returns An initialized 128-bit floating-point vector of [4 x float]. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_set_ps1(float __w) -{ - return _mm_set1_ps(__w); -} - -/// Constructs a 128-bit floating-point vector of [4 x float] -/// initialized with the specified single-precision floating-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __z -/// A single-precision floating-point value used to initialize bits [127:96] -/// of the result. -/// \param __y -/// A single-precision floating-point value used to initialize bits [95:64] -/// of the result. -/// \param __x -/// A single-precision floating-point value used to initialize bits [63:32] -/// of the result. -/// \param __w -/// A single-precision floating-point value used to initialize bits [31:0] -/// of the result. -/// \returns An initialized 128-bit floating-point vector of [4 x float]. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_set_ps(float __z, float __y, float __x, float __w) -{ - return __extension__ (__m128){ __w, __x, __y, __z }; -} - -/// Constructs a 128-bit floating-point vector of [4 x float], -/// initialized in reverse order with the specified 32-bit single-precision -/// float-point values. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic is a utility function and does not correspond to a specific -/// instruction. -/// -/// \param __z -/// A single-precision floating-point value used to initialize bits [31:0] -/// of the result. -/// \param __y -/// A single-precision floating-point value used to initialize bits [63:32] -/// of the result. -/// \param __x -/// A single-precision floating-point value used to initialize bits [95:64] -/// of the result. -/// \param __w -/// A single-precision floating-point value used to initialize bits [127:96] -/// of the result. -/// \returns An initialized 128-bit floating-point vector of [4 x float]. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_setr_ps(float __z, float __y, float __x, float __w) -{ - return __extension__ (__m128){ __z, __y, __x, __w }; -} - -/// Constructs a 128-bit floating-point vector of [4 x float] initialized -/// to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VXORPS / XORPS </c> instruction. -/// -/// \returns An initialized 128-bit floating-point vector of [4 x float] with -/// all elements set to zero. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_setzero_ps(void) -{ - return __extension__ (__m128){ 0.0f, 0.0f, 0.0f, 0.0f }; -} - -/// Stores the upper 64 bits of a 128-bit vector of [4 x float] to a -/// memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VPEXTRQ / PEXTRQ </c> instruction. -/// -/// \param __p -/// A pointer to a 64-bit memory location. -/// \param __a -/// A 128-bit vector of [4 x float] containing the values to be stored. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_storeh_pi(__m64 *__p, __m128 __a) -{ - typedef float __mm_storeh_pi_v2f32 __attribute__((__vector_size__(8))); - struct __mm_storeh_pi_struct { - __mm_storeh_pi_v2f32 __u; - } __attribute__((__packed__, __may_alias__)); - ((struct __mm_storeh_pi_struct*)__p)->__u = __builtin_shufflevector(__a, __a, 2, 3); -} - -/// Stores the lower 64 bits of a 128-bit vector of [4 x float] to a -/// memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVLPS / MOVLPS </c> instruction. -/// -/// \param __p -/// A pointer to a memory location that will receive the float values. -/// \param __a -/// A 128-bit vector of [4 x float] containing the values to be stored. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_storel_pi(__m64 *__p, __m128 __a) -{ - typedef float __mm_storeh_pi_v2f32 __attribute__((__vector_size__(8))); - struct __mm_storeh_pi_struct { - __mm_storeh_pi_v2f32 __u; - } __attribute__((__packed__, __may_alias__)); - ((struct __mm_storeh_pi_struct*)__p)->__u = __builtin_shufflevector(__a, __a, 0, 1); -} - -/// Stores the lower 32 bits of a 128-bit vector of [4 x float] to a -/// memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVSS / MOVSS </c> instruction. -/// -/// \param __p -/// A pointer to a 32-bit memory location. -/// \param __a -/// A 128-bit vector of [4 x float] containing the value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_store_ss(float *__p, __m128 __a) -{ - struct __mm_store_ss_struct { - float __u; - } __attribute__((__packed__, __may_alias__)); - ((struct __mm_store_ss_struct*)__p)->__u = __a[0]; -} - -/// Stores a 128-bit vector of [4 x float] to an unaligned memory -/// location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVUPS / MOVUPS </c> instruction. -/// -/// \param __p -/// A pointer to a 128-bit memory location. The address of the memory -/// location does not have to be aligned. -/// \param __a -/// A 128-bit vector of [4 x float] containing the values to be stored. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_storeu_ps(float *__p, __m128 __a) -{ - struct __storeu_ps { - __m128_u __v; - } __attribute__((__packed__, __may_alias__)); - ((struct __storeu_ps*)__p)->__v = __a; -} - -/// Stores a 128-bit vector of [4 x float] into an aligned memory -/// location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS </c> instruction. -/// -/// \param __p -/// A pointer to a 128-bit memory location. The address of the memory -/// location has to be 16-byte aligned. -/// \param __a -/// A 128-bit vector of [4 x float] containing the values to be stored. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_store_ps(float *__p, __m128 __a) -{ - *(__m128*)__p = __a; -} - -/// Stores the lower 32 bits of a 128-bit vector of [4 x float] into -/// four contiguous elements in an aligned memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to <c> VMOVAPS / MOVAPS + shuffling </c> -/// instruction. -/// -/// \param __p -/// A pointer to a 128-bit memory location. -/// \param __a -/// A 128-bit vector of [4 x float] whose lower 32 bits are stored to each -/// of the four contiguous elements pointed by \a __p. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_store1_ps(float *__p, __m128 __a) -{ - __a = __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 0, 0, 0); - _mm_store_ps(__p, __a); -} - -/// Stores the lower 32 bits of a 128-bit vector of [4 x float] into -/// four contiguous elements in an aligned memory location. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to <c> VMOVAPS / MOVAPS + shuffling </c> -/// instruction. -/// -/// \param __p -/// A pointer to a 128-bit memory location. -/// \param __a -/// A 128-bit vector of [4 x float] whose lower 32 bits are stored to each -/// of the four contiguous elements pointed by \a __p. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_store_ps1(float *__p, __m128 __a) -{ - _mm_store1_ps(__p, __a); -} - -/// Stores float values from a 128-bit vector of [4 x float] to an -/// aligned memory location in reverse order. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVAPS / MOVAPS + shuffling </c> -/// instruction. -/// -/// \param __p -/// A pointer to a 128-bit memory location. The address of the memory -/// location has to be 128-bit aligned. -/// \param __a -/// A 128-bit vector of [4 x float] containing the values to be stored. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_storer_ps(float *__p, __m128 __a) -{ - __a = __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 3, 2, 1, 0); - _mm_store_ps(__p, __a); -} - -#define _MM_HINT_ET0 7 -#define _MM_HINT_ET1 6 -#define _MM_HINT_T0 3 -#define _MM_HINT_T1 2 -#define _MM_HINT_T2 1 -#define _MM_HINT_NTA 0 - -#ifndef _MSC_VER -/* FIXME: We have to #define this because "sel" must be a constant integer, and - Sema doesn't do any form of constant propagation yet. */ - -/// Loads one cache line of data from the specified address to a location -/// closer to the processor. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// void _mm_prefetch(const void *a, const int sel); -/// \endcode -/// -/// This intrinsic corresponds to the <c> PREFETCHNTA </c> instruction. -/// -/// \param a -/// A pointer to a memory location containing a cache line of data. -/// \param sel -/// A predefined integer constant specifying the type of prefetch -/// operation: \n -/// _MM_HINT_NTA: Move data using the non-temporal access (NTA) hint. The -/// PREFETCHNTA instruction will be generated. \n -/// _MM_HINT_T0: Move data using the T0 hint. The PREFETCHT0 instruction will -/// be generated. \n -/// _MM_HINT_T1: Move data using the T1 hint. The PREFETCHT1 instruction will -/// be generated. \n -/// _MM_HINT_T2: Move data using the T2 hint. The PREFETCHT2 instruction will -/// be generated. -#define _mm_prefetch(a, sel) (__builtin_prefetch((const void *)(a), \ - ((sel) >> 2) & 1, (sel) & 0x3)) -#endif - -/// Stores a 64-bit integer in the specified aligned memory location. To -/// minimize caching, the data is flagged as non-temporal (unlikely to be -/// used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MOVNTQ </c> instruction. -/// -/// \param __p -/// A pointer to an aligned memory location used to store the register value. -/// \param __a -/// A 64-bit integer containing the value to be stored. -static __inline__ void __DEFAULT_FN_ATTRS_MMX -_mm_stream_pi(__m64 *__p, __m64 __a) -{ - __builtin_ia32_movntq(__p, __a); -} - -/// Moves packed float values from a 128-bit vector of [4 x float] to a -/// 128-bit aligned memory location. To minimize caching, the data is flagged -/// as non-temporal (unlikely to be used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVNTPS / MOVNTPS </c> instruction. -/// -/// \param __p -/// A pointer to a 128-bit aligned memory location that will receive the -/// single-precision floating-point values. -/// \param __a -/// A 128-bit vector of [4 x float] containing the values to be moved. -static __inline__ void __DEFAULT_FN_ATTRS -_mm_stream_ps(float *__p, __m128 __a) -{ - __builtin_nontemporal_store((__v4sf)__a, (__v4sf*)__p); -} - -#if defined(__cplusplus) -extern "C" { -#endif - -/// Forces strong memory ordering (serialization) between store -/// instructions preceding this instruction and store instructions following -/// this instruction, ensuring the system completes all previous stores -/// before executing subsequent stores. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> SFENCE </c> instruction. -/// -void _mm_sfence(void); - -#if defined(__cplusplus) -} // extern "C" -#endif - -/// Extracts 16-bit element from a 64-bit vector of [4 x i16] and -/// returns it, as specified by the immediate integer operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// int _mm_extract_pi16(__m64 a, int n); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VPEXTRW / PEXTRW </c> instruction. -/// -/// \param a -/// A 64-bit vector of [4 x i16]. -/// \param n -/// An immediate integer operand that determines which bits are extracted: \n -/// 0: Bits [15:0] are copied to the destination. \n -/// 1: Bits [31:16] are copied to the destination. \n -/// 2: Bits [47:32] are copied to the destination. \n -/// 3: Bits [63:48] are copied to the destination. -/// \returns A 16-bit integer containing the extracted 16 bits of packed data. -#define _mm_extract_pi16(a, n) \ - ((int)__builtin_ia32_vec_ext_v4hi((__v4hi)a, (int)n)) - -/// Copies data from the 64-bit vector of [4 x i16] to the destination, -/// and inserts the lower 16-bits of an integer operand at the 16-bit offset -/// specified by the immediate operand \a n. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m64 _mm_insert_pi16(__m64 a, int d, int n); -/// \endcode -/// -/// This intrinsic corresponds to the <c> PINSRW </c> instruction. -/// -/// \param a -/// A 64-bit vector of [4 x i16]. -/// \param d -/// An integer. The lower 16-bit value from this operand is written to the -/// destination at the offset specified by operand \a n. -/// \param n -/// An immediate integer operant that determines which the bits to be used -/// in the destination. \n -/// 0: Bits [15:0] are copied to the destination. \n -/// 1: Bits [31:16] are copied to the destination. \n -/// 2: Bits [47:32] are copied to the destination. \n -/// 3: Bits [63:48] are copied to the destination. \n -/// The remaining bits in the destination are copied from the corresponding -/// bits in operand \a a. -/// \returns A 64-bit integer vector containing the copied packed data from the -/// operands. -#define _mm_insert_pi16(a, d, n) \ - ((__m64)__builtin_ia32_vec_set_v4hi((__v4hi)a, (int)d, (int)n)) - -/// Compares each of the corresponding packed 16-bit integer values of -/// the 64-bit integer vectors, and writes the greater value to the -/// corresponding bits in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMAXSW </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing one of the source operands. -/// \param __b -/// A 64-bit integer vector containing one of the source operands. -/// \returns A 64-bit integer vector containing the comparison results. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_max_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pmaxsw((__v4hi)__a, (__v4hi)__b); -} - -/// Compares each of the corresponding packed 8-bit unsigned integer -/// values of the 64-bit integer vectors, and writes the greater value to the -/// corresponding bits in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMAXUB </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing one of the source operands. -/// \param __b -/// A 64-bit integer vector containing one of the source operands. -/// \returns A 64-bit integer vector containing the comparison results. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_max_pu8(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pmaxub((__v8qi)__a, (__v8qi)__b); -} - -/// Compares each of the corresponding packed 16-bit integer values of -/// the 64-bit integer vectors, and writes the lesser value to the -/// corresponding bits in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMINSW </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing one of the source operands. -/// \param __b -/// A 64-bit integer vector containing one of the source operands. -/// \returns A 64-bit integer vector containing the comparison results. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_min_pi16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pminsw((__v4hi)__a, (__v4hi)__b); -} - -/// Compares each of the corresponding packed 8-bit unsigned integer -/// values of the 64-bit integer vectors, and writes the lesser value to the -/// corresponding bits in the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMINUB </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing one of the source operands. -/// \param __b -/// A 64-bit integer vector containing one of the source operands. -/// \returns A 64-bit integer vector containing the comparison results. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_min_pu8(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pminub((__v8qi)__a, (__v8qi)__b); -} - -/// Takes the most significant bit from each 8-bit element in a 64-bit -/// integer vector to create an 8-bit mask value. Zero-extends the value to -/// 32-bit integer and writes it to the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMOVMSKB </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing the values with bits to be extracted. -/// \returns The most significant bit from each 8-bit element in \a __a, -/// written to bits [7:0]. -static __inline__ int __DEFAULT_FN_ATTRS_MMX -_mm_movemask_pi8(__m64 __a) -{ - return __builtin_ia32_pmovmskb((__v8qi)__a); -} - -/// Multiplies packed 16-bit unsigned integer values and writes the -/// high-order 16 bits of each 32-bit product to the corresponding bits in -/// the destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PMULHUW </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing one of the source operands. -/// \param __b -/// A 64-bit integer vector containing one of the source operands. -/// \returns A 64-bit integer vector containing the products of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_mulhi_pu16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pmulhuw((__v4hi)__a, (__v4hi)__b); -} - -/// Shuffles the 4 16-bit integers from a 64-bit integer vector to the -/// destination, as specified by the immediate value operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m64 _mm_shuffle_pi16(__m64 a, const int n); -/// \endcode -/// -/// This intrinsic corresponds to the <c> PSHUFW </c> instruction. -/// -/// \param a -/// A 64-bit integer vector containing the values to be shuffled. -/// \param n -/// An immediate value containing an 8-bit value specifying which elements to -/// copy from \a a. The destinations within the 64-bit destination are -/// assigned values as follows: \n -/// Bits [1:0] are used to assign values to bits [15:0] in the -/// destination. \n -/// Bits [3:2] are used to assign values to bits [31:16] in the -/// destination. \n -/// Bits [5:4] are used to assign values to bits [47:32] in the -/// destination. \n -/// Bits [7:6] are used to assign values to bits [63:48] in the -/// destination. \n -/// Bit value assignments: \n -/// 00: assigned from bits [15:0] of \a a. \n -/// 01: assigned from bits [31:16] of \a a. \n -/// 10: assigned from bits [47:32] of \a a. \n -/// 11: assigned from bits [63:48] of \a a. \n -/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. -/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form -/// <c>[b6, b4, b2, b0]</c>. -/// \returns A 64-bit integer vector containing the shuffled values. -#define _mm_shuffle_pi16(a, n) \ - ((__m64)__builtin_ia32_pshufw((__v4hi)(__m64)(a), (n))) - -/// Conditionally copies the values from each 8-bit element in the first -/// 64-bit integer vector operand to the specified memory location, as -/// specified by the most significant bit in the corresponding element in the -/// second 64-bit integer vector operand. -/// -/// To minimize caching, the data is flagged as non-temporal -/// (unlikely to be used again soon). -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> MASKMOVQ </c> instruction. -/// -/// \param __d -/// A 64-bit integer vector containing the values with elements to be copied. -/// \param __n -/// A 64-bit integer vector operand. The most significant bit from each 8-bit -/// element determines whether the corresponding element in operand \a __d -/// is copied. If the most significant bit of a given element is 1, the -/// corresponding element in operand \a __d is copied. -/// \param __p -/// A pointer to a 64-bit memory location that will receive the conditionally -/// copied integer values. The address of the memory location does not have -/// to be aligned. -static __inline__ void __DEFAULT_FN_ATTRS_MMX -_mm_maskmove_si64(__m64 __d, __m64 __n, char *__p) -{ - __builtin_ia32_maskmovq((__v8qi)__d, (__v8qi)__n, __p); -} - -/// Computes the rounded averages of the packed unsigned 8-bit integer -/// values and writes the averages to the corresponding bits in the -/// destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PAVGB </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing one of the source operands. -/// \param __b -/// A 64-bit integer vector containing one of the source operands. -/// \returns A 64-bit integer vector containing the averages of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_avg_pu8(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pavgb((__v8qi)__a, (__v8qi)__b); -} - -/// Computes the rounded averages of the packed unsigned 16-bit integer -/// values and writes the averages to the corresponding bits in the -/// destination. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PAVGW </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing one of the source operands. -/// \param __b -/// A 64-bit integer vector containing one of the source operands. -/// \returns A 64-bit integer vector containing the averages of both operands. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_avg_pu16(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_pavgw((__v4hi)__a, (__v4hi)__b); -} - -/// Subtracts the corresponding 8-bit unsigned integer values of the two -/// 64-bit vector operands and computes the absolute value for each of the -/// difference. Then sum of the 8 absolute differences is written to the -/// bits [15:0] of the destination; the remaining bits [63:16] are cleared. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> PSADBW </c> instruction. -/// -/// \param __a -/// A 64-bit integer vector containing one of the source operands. -/// \param __b -/// A 64-bit integer vector containing one of the source operands. -/// \returns A 64-bit integer vector whose lower 16 bits contain the sums of the -/// sets of absolute differences between both operands. The upper bits are -/// cleared. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_sad_pu8(__m64 __a, __m64 __b) -{ - return (__m64)__builtin_ia32_psadbw((__v8qi)__a, (__v8qi)__b); -} - -#if defined(__cplusplus) -extern "C" { -#endif - -/// Returns the contents of the MXCSR register as a 32-bit unsigned -/// integer value. -/// -/// There are several groups of macros associated with this -/// intrinsic, including: -/// <ul> -/// <li> -/// For checking exception states: _MM_EXCEPT_INVALID, _MM_EXCEPT_DIV_ZERO, -/// _MM_EXCEPT_DENORM, _MM_EXCEPT_OVERFLOW, _MM_EXCEPT_UNDERFLOW, -/// _MM_EXCEPT_INEXACT. There is a convenience wrapper -/// _MM_GET_EXCEPTION_STATE(). -/// </li> -/// <li> -/// For checking exception masks: _MM_MASK_UNDERFLOW, _MM_MASK_OVERFLOW, -/// _MM_MASK_INVALID, _MM_MASK_DENORM, _MM_MASK_DIV_ZERO, _MM_MASK_INEXACT. -/// There is a convenience wrapper _MM_GET_EXCEPTION_MASK(). -/// </li> -/// <li> -/// For checking rounding modes: _MM_ROUND_NEAREST, _MM_ROUND_DOWN, -/// _MM_ROUND_UP, _MM_ROUND_TOWARD_ZERO. There is a convenience wrapper -/// _MM_GET_ROUNDING_MODE(). -/// </li> -/// <li> -/// For checking flush-to-zero mode: _MM_FLUSH_ZERO_ON, _MM_FLUSH_ZERO_OFF. -/// There is a convenience wrapper _MM_GET_FLUSH_ZERO_MODE(). -/// </li> -/// <li> -/// For checking denormals-are-zero mode: _MM_DENORMALS_ZERO_ON, -/// _MM_DENORMALS_ZERO_OFF. There is a convenience wrapper -/// _MM_GET_DENORMALS_ZERO_MODE(). -/// </li> -/// </ul> -/// -/// For example, the following expression checks if an overflow exception has -/// occurred: -/// \code -/// ( _mm_getcsr() & _MM_EXCEPT_OVERFLOW ) -/// \endcode -/// -/// The following expression gets the current rounding mode: -/// \code -/// _MM_GET_ROUNDING_MODE() -/// \endcode -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VSTMXCSR / STMXCSR </c> instruction. -/// -/// \returns A 32-bit unsigned integer containing the contents of the MXCSR -/// register. -unsigned int _mm_getcsr(void); - -/// Sets the MXCSR register with the 32-bit unsigned integer value. -/// -/// There are several groups of macros associated with this intrinsic, -/// including: -/// <ul> -/// <li> -/// For setting exception states: _MM_EXCEPT_INVALID, _MM_EXCEPT_DIV_ZERO, -/// _MM_EXCEPT_DENORM, _MM_EXCEPT_OVERFLOW, _MM_EXCEPT_UNDERFLOW, -/// _MM_EXCEPT_INEXACT. There is a convenience wrapper -/// _MM_SET_EXCEPTION_STATE(x) where x is one of these macros. -/// </li> -/// <li> -/// For setting exception masks: _MM_MASK_UNDERFLOW, _MM_MASK_OVERFLOW, -/// _MM_MASK_INVALID, _MM_MASK_DENORM, _MM_MASK_DIV_ZERO, _MM_MASK_INEXACT. -/// There is a convenience wrapper _MM_SET_EXCEPTION_MASK(x) where x is one -/// of these macros. -/// </li> -/// <li> -/// For setting rounding modes: _MM_ROUND_NEAREST, _MM_ROUND_DOWN, -/// _MM_ROUND_UP, _MM_ROUND_TOWARD_ZERO. There is a convenience wrapper -/// _MM_SET_ROUNDING_MODE(x) where x is one of these macros. -/// </li> -/// <li> -/// For setting flush-to-zero mode: _MM_FLUSH_ZERO_ON, _MM_FLUSH_ZERO_OFF. -/// There is a convenience wrapper _MM_SET_FLUSH_ZERO_MODE(x) where x is -/// one of these macros. -/// </li> -/// <li> -/// For setting denormals-are-zero mode: _MM_DENORMALS_ZERO_ON, -/// _MM_DENORMALS_ZERO_OFF. There is a convenience wrapper -/// _MM_SET_DENORMALS_ZERO_MODE(x) where x is one of these macros. -/// </li> -/// </ul> -/// -/// For example, the following expression causes subsequent floating-point -/// operations to round up: -/// _mm_setcsr(_mm_getcsr() | _MM_ROUND_UP) -/// -/// The following example sets the DAZ and FTZ flags: -/// \code -/// void setFlags() { -/// _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON); -/// _MM_SET_DENORMALS_ZERO_MODE(_MM_DENORMALS_ZERO_ON); -/// } -/// \endcode -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VLDMXCSR / LDMXCSR </c> instruction. -/// -/// \param __i -/// A 32-bit unsigned integer value to be written to the MXCSR register. -void _mm_setcsr(unsigned int __i); - -#if defined(__cplusplus) -} // extern "C" -#endif - -/// Selects 4 float values from the 128-bit operands of [4 x float], as -/// specified by the immediate value operand. -/// -/// \headerfile <x86intrin.h> -/// -/// \code -/// __m128 _mm_shuffle_ps(__m128 a, __m128 b, const int mask); -/// \endcode -/// -/// This intrinsic corresponds to the <c> VSHUFPS / SHUFPS </c> instruction. -/// -/// \param a -/// A 128-bit vector of [4 x float]. -/// \param b -/// A 128-bit vector of [4 x float]. -/// \param mask -/// An immediate value containing an 8-bit value specifying which elements to -/// copy from \a a and \a b. \n -/// Bits [3:0] specify the values copied from operand \a a. \n -/// Bits [7:4] specify the values copied from operand \a b. \n -/// The destinations within the 128-bit destination are assigned values as -/// follows: \n -/// Bits [1:0] are used to assign values to bits [31:0] in the -/// destination. \n -/// Bits [3:2] are used to assign values to bits [63:32] in the -/// destination. \n -/// Bits [5:4] are used to assign values to bits [95:64] in the -/// destination. \n -/// Bits [7:6] are used to assign values to bits [127:96] in the -/// destination. \n -/// Bit value assignments: \n -/// 00: Bits [31:0] copied from the specified operand. \n -/// 01: Bits [63:32] copied from the specified operand. \n -/// 10: Bits [95:64] copied from the specified operand. \n -/// 11: Bits [127:96] copied from the specified operand. \n -/// Note: To generate a mask, you can use the \c _MM_SHUFFLE macro. -/// <c>_MM_SHUFFLE(b6, b4, b2, b0)</c> can create an 8-bit mask of the form -/// <c>[b6, b4, b2, b0]</c>. -/// \returns A 128-bit vector of [4 x float] containing the shuffled values. -#define _mm_shuffle_ps(a, b, mask) \ - ((__m128)__builtin_ia32_shufps((__v4sf)(__m128)(a), (__v4sf)(__m128)(b), \ - (int)(mask))) - -/// Unpacks the high-order (index 2,3) values from two 128-bit vectors of -/// [4 x float] and interleaves them into a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKHPS / UNPCKHPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. \n -/// Bits [95:64] are written to bits [31:0] of the destination. \n -/// Bits [127:96] are written to bits [95:64] of the destination. -/// \param __b -/// A 128-bit vector of [4 x float]. -/// Bits [95:64] are written to bits [63:32] of the destination. \n -/// Bits [127:96] are written to bits [127:96] of the destination. -/// \returns A 128-bit vector of [4 x float] containing the interleaved values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_unpackhi_ps(__m128 __a, __m128 __b) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)__b, 2, 6, 3, 7); -} - -/// Unpacks the low-order (index 0,1) values from two 128-bit vectors of -/// [4 x float] and interleaves them into a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPS / UNPCKLPS </c> instruction. -/// -/// \param __a -/// A 128-bit vector of [4 x float]. \n -/// Bits [31:0] are written to bits [31:0] of the destination. \n -/// Bits [63:32] are written to bits [95:64] of the destination. -/// \param __b -/// A 128-bit vector of [4 x float]. \n -/// Bits [31:0] are written to bits [63:32] of the destination. \n -/// Bits [63:32] are written to bits [127:96] of the destination. -/// \returns A 128-bit vector of [4 x float] containing the interleaved values. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_unpacklo_ps(__m128 __a, __m128 __b) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)__b, 0, 4, 1, 5); -} - -/// Constructs a 128-bit floating-point vector of [4 x float]. The lower -/// 32 bits are set to the lower 32 bits of the second parameter. The upper -/// 96 bits are set to the upper 96 bits of the first parameter. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VBLENDPS / BLENDPS / MOVSS </c> -/// instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [4 x float]. The upper 96 bits are -/// written to the upper 96 bits of the result. -/// \param __b -/// A 128-bit floating-point vector of [4 x float]. The lower 32 bits are -/// written to the lower 32 bits of the result. -/// \returns A 128-bit floating-point vector of [4 x float]. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_move_ss(__m128 __a, __m128 __b) -{ - __a[0] = __b[0]; - return __a; -} - -/// Constructs a 128-bit floating-point vector of [4 x float]. The lower -/// 64 bits are set to the upper 64 bits of the second parameter. The upper -/// 64 bits are set to the upper 64 bits of the first parameter. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKHPD / UNPCKHPD </c> instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [4 x float]. The upper 64 bits are -/// written to the upper 64 bits of the result. -/// \param __b -/// A 128-bit floating-point vector of [4 x float]. The upper 64 bits are -/// written to the lower 64 bits of the result. -/// \returns A 128-bit floating-point vector of [4 x float]. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_movehl_ps(__m128 __a, __m128 __b) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)__b, 6, 7, 2, 3); -} - -/// Constructs a 128-bit floating-point vector of [4 x float]. The lower -/// 64 bits are set to the lower 64 bits of the first parameter. The upper -/// 64 bits are set to the lower 64 bits of the second parameter. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VUNPCKLPD / UNPCKLPD </c> instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [4 x float]. The lower 64 bits are -/// written to the lower 64 bits of the result. -/// \param __b -/// A 128-bit floating-point vector of [4 x float]. The lower 64 bits are -/// written to the upper 64 bits of the result. -/// \returns A 128-bit floating-point vector of [4 x float]. -static __inline__ __m128 __DEFAULT_FN_ATTRS -_mm_movelh_ps(__m128 __a, __m128 __b) -{ - return __builtin_shufflevector((__v4sf)__a, (__v4sf)__b, 0, 1, 4, 5); -} - -/// Converts a 64-bit vector of [4 x i16] into a 128-bit vector of [4 x -/// float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. -/// -/// \param __a -/// A 64-bit vector of [4 x i16]. The elements of the destination are copied -/// from the corresponding elements in this operand. -/// \returns A 128-bit vector of [4 x float] containing the copied and converted -/// values from the operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX -_mm_cvtpi16_ps(__m64 __a) -{ - __m64 __b, __c; - __m128 __r; - - __b = _mm_setzero_si64(); - __b = _mm_cmpgt_pi16(__b, __a); - __c = _mm_unpackhi_pi16(__a, __b); - __r = _mm_setzero_ps(); - __r = _mm_cvtpi32_ps(__r, __c); - __r = _mm_movelh_ps(__r, __r); - __c = _mm_unpacklo_pi16(__a, __b); - __r = _mm_cvtpi32_ps(__r, __c); - - return __r; -} - -/// Converts a 64-bit vector of 16-bit unsigned integer values into a -/// 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. -/// -/// \param __a -/// A 64-bit vector of 16-bit unsigned integer values. The elements of the -/// destination are copied from the corresponding elements in this operand. -/// \returns A 128-bit vector of [4 x float] containing the copied and converted -/// values from the operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX -_mm_cvtpu16_ps(__m64 __a) -{ - __m64 __b, __c; - __m128 __r; - - __b = _mm_setzero_si64(); - __c = _mm_unpackhi_pi16(__a, __b); - __r = _mm_setzero_ps(); - __r = _mm_cvtpi32_ps(__r, __c); - __r = _mm_movelh_ps(__r, __r); - __c = _mm_unpacklo_pi16(__a, __b); - __r = _mm_cvtpi32_ps(__r, __c); - - return __r; -} - -/// Converts the lower four 8-bit values from a 64-bit vector of [8 x i8] -/// into a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. -/// -/// \param __a -/// A 64-bit vector of [8 x i8]. The elements of the destination are copied -/// from the corresponding lower 4 elements in this operand. -/// \returns A 128-bit vector of [4 x float] containing the copied and converted -/// values from the operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX -_mm_cvtpi8_ps(__m64 __a) -{ - __m64 __b; - - __b = _mm_setzero_si64(); - __b = _mm_cmpgt_pi8(__b, __a); - __b = _mm_unpacklo_pi8(__a, __b); - - return _mm_cvtpi16_ps(__b); -} - -/// Converts the lower four unsigned 8-bit integer values from a 64-bit -/// vector of [8 x u8] into a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. -/// -/// \param __a -/// A 64-bit vector of unsigned 8-bit integer values. The elements of the -/// destination are copied from the corresponding lower 4 elements in this -/// operand. -/// \returns A 128-bit vector of [4 x float] containing the copied and converted -/// values from the source operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX -_mm_cvtpu8_ps(__m64 __a) -{ - __m64 __b; - - __b = _mm_setzero_si64(); - __b = _mm_unpacklo_pi8(__a, __b); - - return _mm_cvtpi16_ps(__b); -} - -/// Converts the two 32-bit signed integer values from each 64-bit vector -/// operand of [2 x i32] into a 128-bit vector of [4 x float]. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPI2PS + COMPOSITE </c> instruction. -/// -/// \param __a -/// A 64-bit vector of [2 x i32]. The lower elements of the destination are -/// copied from the elements in this operand. -/// \param __b -/// A 64-bit vector of [2 x i32]. The upper elements of the destination are -/// copied from the elements in this operand. -/// \returns A 128-bit vector of [4 x float] whose lower 64 bits contain the -/// copied and converted values from the first operand. The upper 64 bits -/// contain the copied and converted values from the second operand. -static __inline__ __m128 __DEFAULT_FN_ATTRS_MMX -_mm_cvtpi32x2_ps(__m64 __a, __m64 __b) -{ - __m128 __c; - - __c = _mm_setzero_ps(); - __c = _mm_cvtpi32_ps(__c, __b); - __c = _mm_movelh_ps(__c, __c); - - return _mm_cvtpi32_ps(__c, __a); -} - -/// Converts each single-precision floating-point element of a 128-bit -/// floating-point vector of [4 x float] into a 16-bit signed integer, and -/// packs the results into a 64-bit integer vector of [4 x i16]. -/// -/// If the floating-point element is NaN or infinity, or if the -/// floating-point element is greater than 0x7FFFFFFF or less than -0x8000, -/// it is converted to 0x8000. Otherwise if the floating-point element is -/// greater than 0x7FFF, it is converted to 0x7FFF. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPS2PI + COMPOSITE </c> instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [4 x float]. -/// \returns A 64-bit integer vector of [4 x i16] containing the converted -/// values. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_cvtps_pi16(__m128 __a) -{ - __m64 __b, __c; - - __b = _mm_cvtps_pi32(__a); - __a = _mm_movehl_ps(__a, __a); - __c = _mm_cvtps_pi32(__a); - - return _mm_packs_pi32(__b, __c); -} - -/// Converts each single-precision floating-point element of a 128-bit -/// floating-point vector of [4 x float] into an 8-bit signed integer, and -/// packs the results into the lower 32 bits of a 64-bit integer vector of -/// [8 x i8]. The upper 32 bits of the vector are set to 0. -/// -/// If the floating-point element is NaN or infinity, or if the -/// floating-point element is greater than 0x7FFFFFFF or less than -0x80, it -/// is converted to 0x80. Otherwise if the floating-point element is greater -/// than 0x7F, it is converted to 0x7F. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> CVTPS2PI + COMPOSITE </c> instruction. -/// -/// \param __a -/// 128-bit floating-point vector of [4 x float]. -/// \returns A 64-bit integer vector of [8 x i8]. The lower 32 bits contain the -/// converted values and the uppper 32 bits are set to zero. -static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX -_mm_cvtps_pi8(__m128 __a) -{ - __m64 __b, __c; - - __b = _mm_cvtps_pi16(__a); - __c = _mm_setzero_si64(); - - return _mm_packs_pi16(__b, __c); -} - -/// Extracts the sign bits from each single-precision floating-point -/// element of a 128-bit floating-point vector of [4 x float] and returns the -/// sign bits in bits [0:3] of the result. Bits [31:4] of the result are set -/// to zero. -/// -/// \headerfile <x86intrin.h> -/// -/// This intrinsic corresponds to the <c> VMOVMSKPS / MOVMSKPS </c> instruction. -/// -/// \param __a -/// A 128-bit floating-point vector of [4 x float]. -/// \returns A 32-bit integer value. Bits [3:0] contain the sign bits from each -/// single-precision floating-point element of the parameter. Bits [31:4] are -/// set to zero. -static __inline__ int __DEFAULT_FN_ATTRS -_mm_movemask_ps(__m128 __a) -{ - return __builtin_ia32_movmskps((__v4sf)__a); -} - - -#define _MM_ALIGN16 __attribute__((aligned(16))) - -#define _MM_SHUFFLE(z, y, x, w) (((z) << 6) | ((y) << 4) | ((x) << 2) | (w)) - -#define _MM_EXCEPT_INVALID (0x0001U) -#define _MM_EXCEPT_DENORM (0x0002U) -#define _MM_EXCEPT_DIV_ZERO (0x0004U) -#define _MM_EXCEPT_OVERFLOW (0x0008U) -#define _MM_EXCEPT_UNDERFLOW (0x0010U) -#define _MM_EXCEPT_INEXACT (0x0020U) -#define _MM_EXCEPT_MASK (0x003fU) - -#define _MM_MASK_INVALID (0x0080U) -#define _MM_MASK_DENORM (0x0100U) -#define _MM_MASK_DIV_ZERO (0x0200U) -#define _MM_MASK_OVERFLOW (0x0400U) -#define _MM_MASK_UNDERFLOW (0x0800U) -#define _MM_MASK_INEXACT (0x1000U) -#define _MM_MASK_MASK (0x1f80U) - -#define _MM_ROUND_NEAREST (0x0000U) -#define _MM_ROUND_DOWN (0x2000U) -#define _MM_ROUND_UP (0x4000U) -#define _MM_ROUND_TOWARD_ZERO (0x6000U) -#define _MM_ROUND_MASK (0x6000U) - -#define _MM_FLUSH_ZERO_MASK (0x8000U) -#define _MM_FLUSH_ZERO_ON (0x8000U) -#define _MM_FLUSH_ZERO_OFF (0x0000U) - -#define _MM_GET_EXCEPTION_MASK() (_mm_getcsr() & _MM_MASK_MASK) -#define _MM_GET_EXCEPTION_STATE() (_mm_getcsr() & _MM_EXCEPT_MASK) -#define _MM_GET_FLUSH_ZERO_MODE() (_mm_getcsr() & _MM_FLUSH_ZERO_MASK) -#define _MM_GET_ROUNDING_MODE() (_mm_getcsr() & _MM_ROUND_MASK) - -#define _MM_SET_EXCEPTION_MASK(x) (_mm_setcsr((_mm_getcsr() & ~_MM_MASK_MASK) | (x))) -#define _MM_SET_EXCEPTION_STATE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_EXCEPT_MASK) | (x))) -#define _MM_SET_FLUSH_ZERO_MODE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_FLUSH_ZERO_MASK) | (x))) -#define _MM_SET_ROUNDING_MODE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_ROUND_MASK) | (x))) - -#define _MM_TRANSPOSE4_PS(row0, row1, row2, row3) \ -do { \ - __m128 tmp3, tmp2, tmp1, tmp0; \ - tmp0 = _mm_unpacklo_ps((row0), (row1)); \ - tmp2 = _mm_unpacklo_ps((row2), (row3)); \ - tmp1 = _mm_unpackhi_ps((row0), (row1)); \ - tmp3 = _mm_unpackhi_ps((row2), (row3)); \ - (row0) = _mm_movelh_ps(tmp0, tmp2); \ - (row1) = _mm_movehl_ps(tmp2, tmp0); \ - (row2) = _mm_movelh_ps(tmp1, tmp3); \ - (row3) = _mm_movehl_ps(tmp3, tmp1); \ -} while (0) - -/* Aliases for compatibility. */ -#define _m_pextrw _mm_extract_pi16 -#define _m_pinsrw _mm_insert_pi16 -#define _m_pmaxsw _mm_max_pi16 -#define _m_pmaxub _mm_max_pu8 -#define _m_pminsw _mm_min_pi16 -#define _m_pminub _mm_min_pu8 -#define _m_pmovmskb _mm_movemask_pi8 -#define _m_pmulhuw _mm_mulhi_pu16 -#define _m_pshufw _mm_shuffle_pi16 -#define _m_maskmovq _mm_maskmove_si64 -#define _m_pavgb _mm_avg_pu8 -#define _m_pavgw _mm_avg_pu16 -#define _m_psadbw _mm_sad_pu8 -#define _m_ _mm_ - -#undef __DEFAULT_FN_ATTRS -#undef __DEFAULT_FN_ATTRS_MMX - -/* Ugly hack for backwards-compatibility (compatible with gcc) */ -#if defined(__SSE2__) && !__building_module(_Builtin_intrinsics) -#include <emmintrin.h> -#endif - -#endif /* __XMMINTRIN_H */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xmmintrin.h.blob deleted file mode 100644 index 1e7de545e5aa70128a65bb24595af91b52bcfe81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 134054 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 Rc^E_TFz+w~Di(p}{{ZgUi75a8 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h deleted file mode 100644 index 5524947f..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h +++ /dev/null @@ -1,34 +0,0 @@ -/*===---- xsavecintrin.h - XSAVEC intrinsic --------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <xsavecintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __XSAVECINTRIN_H -#define __XSAVECINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("xsavec"))) - -static __inline__ void __DEFAULT_FN_ATTRS -_xsavec(void *__p, unsigned long long __m) { - __builtin_ia32_xsavec(__p, __m); -} - -#ifdef __x86_64__ -static __inline__ void __DEFAULT_FN_ATTRS -_xsavec64(void *__p, unsigned long long __m) { - __builtin_ia32_xsavec64(__p, __m); -} -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavecintrin.h.blob deleted file mode 100644 index 4fd6e3cc6bcb6f98fe3510b0390cdbd1e8f94bc6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12847 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 KB!A`3t^WfKDyE76 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h deleted file mode 100644 index 9429db6d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h +++ /dev/null @@ -1,63 +0,0 @@ -/*===---- xsaveintrin.h - XSAVE intrinsic ----------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <xsaveintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __XSAVEINTRIN_H -#define __XSAVEINTRIN_H - -#ifdef _MSC_VER -#define _XCR_XFEATURE_ENABLED_MASK 0 -#endif - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("xsave"))) - -static __inline__ void __DEFAULT_FN_ATTRS -_xsave(void *__p, unsigned long long __m) { - __builtin_ia32_xsave(__p, __m); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_xrstor(void *__p, unsigned long long __m) { - __builtin_ia32_xrstor(__p, __m); -} - -#ifndef _MSC_VER -#define _xgetbv(A) __builtin_ia32_xgetbv((long long)(A)) -#define _xsetbv(A, B) __builtin_ia32_xsetbv((unsigned int)(A), (unsigned long long)(B)) -#else -#ifdef __cplusplus -extern "C" { -#endif -unsigned __int64 __cdecl _xgetbv(unsigned int); -void __cdecl _xsetbv(unsigned int, unsigned __int64); -#ifdef __cplusplus -} -#endif -#endif /* _MSC_VER */ - -#ifdef __x86_64__ -static __inline__ void __DEFAULT_FN_ATTRS -_xsave64(void *__p, unsigned long long __m) { - __builtin_ia32_xsave64(__p, __m); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_xrstor64(void *__p, unsigned long long __m) { - __builtin_ia32_xrstor64(__p, __m); -} - -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveintrin.h.blob deleted file mode 100644 index ad73782d8276bf30c0b0eed49fb23901f3b7ebf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13554 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 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h deleted file mode 100644 index 89a4c44d..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h +++ /dev/null @@ -1,34 +0,0 @@ -/*===---- xsaveoptintrin.h - XSAVEOPT intrinsic ----------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <xsaveoptintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __XSAVEOPTINTRIN_H -#define __XSAVEOPTINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("xsaveopt"))) - -static __inline__ void __DEFAULT_FN_ATTRS -_xsaveopt(void *__p, unsigned long long __m) { - __builtin_ia32_xsaveopt(__p, __m); -} - -#ifdef __x86_64__ -static __inline__ void __DEFAULT_FN_ATTRS -_xsaveopt64(void *__p, unsigned long long __m) { - __builtin_ia32_xsaveopt64(__p, __m); -} -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsaveoptintrin.h.blob deleted file mode 100644 index dfbf98b16fc307b80c6c2d5c9bc6cf256db22641..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12855 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 TY&O64AA0y9*j@aTyZ8PNG?}4Y diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h deleted file mode 100644 index 3f99219a..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h +++ /dev/null @@ -1,44 +0,0 @@ -/*===---- xsavesintrin.h - XSAVES intrinsic --------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <xsavesintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __XSAVESINTRIN_H -#define __XSAVESINTRIN_H - -/* Define the default attributes for the functions in this file. */ -#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("xsaves"))) - -static __inline__ void __DEFAULT_FN_ATTRS -_xsaves(void *__p, unsigned long long __m) { - __builtin_ia32_xsaves(__p, __m); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_xrstors(void *__p, unsigned long long __m) { - __builtin_ia32_xrstors(__p, __m); -} - -#ifdef __x86_64__ -static __inline__ void __DEFAULT_FN_ATTRS -_xrstors64(void *__p, unsigned long long __m) { - __builtin_ia32_xrstors64(__p, __m); -} - -static __inline__ void __DEFAULT_FN_ATTRS -_xsaves64(void *__p, unsigned long long __m) { - __builtin_ia32_xsaves64(__p, __m); -} -#endif - -#undef __DEFAULT_FN_ATTRS - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xsavesintrin.h.blob deleted file mode 100644 index e859df10939b2660fe6ba3d21c571cbfed85b940..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13331 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 Y-Oqx!OCxb7ztwin?LIyuegzlj|AdJ;lmGw# diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h deleted file mode 100644 index 7d19e373..00000000 --- a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h +++ /dev/null @@ -1,27 +0,0 @@ -/*===---- xtestintrin.h - XTEST intrinsic ----------------------------------=== - * - * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. - * See https://llvm.org/LICENSE.txt for license information. - * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - * - *===-----------------------------------------------------------------------=== - */ - -#ifndef __IMMINTRIN_H -#error "Never use <xtestintrin.h> directly; include <immintrin.h> instead." -#endif - -#ifndef __XTESTINTRIN_H -#define __XTESTINTRIN_H - -/* xtest returns non-zero if the instruction is executed within an RTM or active - * HLE region. */ -/* FIXME: This can be an either or for RTM/HLE. Deal with this when HLE is - * supported. */ -static __inline__ int - __attribute__((__always_inline__, __nodebug__, __target__("rtm"))) - _xtest(void) { - return __builtin_ia32_xtest(); -} - -#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@lib@clang@16@include@xtestintrin.h.blob deleted file mode 100644 index 055bcdd89a2cbbd3ecbfb12637afcab108c42115..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12432 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 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h b/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h deleted file mode 100644 index 9d5c3d28..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef META_H_ -#define META_H_ - -#include <stdint.h> // for uint64_t -#include "editor.h" - -typedef struct { - const char *name; - void (*execute)(Editor *, const char *params[]); // Updated to take an array of strings as additional parameters - int additional_params_count; // Number of additional parameters needed -} Command; - - -/* void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *)); */ -void register_command(struct hashmap *command_map, const char *name, void (*execute)(Editor *, const char *params[]), int additional_params_count); -void initialize_commands(struct hashmap *command_map); -void execute_command(struct hashmap *command_map, Editor *editor, const char *command_name); -int command_compare(const void *a, const void *b, void *udata); -uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1); - -#endif // META_H__ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@M-x.h.blob deleted file mode 100644 index 286e23094209e63a08bef3191c7e30df3ffea4e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14743 zcmcIreT-aH6@SxR>2$5Lvty)Hv5wHx-F2taU0|stfD|Yn_CuvLjkLVpdGF55>%OnP z_hxpsU}+RdgG9q0t(7Pm6D1%BG0>nf20<|vB8eJ9_ybAAC|DaoBxyq#&%O8EJ9FpV zc{BXshLpDN+<U%%=iGB|r?q!aUbXu<Eu)p|o`cJF`C1$<M4n%ca2S<MY?i~oC_Bh< z*Bjc1VI#LT6lrPE3l=Q5Rx+&s8<7_*UD20=c5Wt9ZiGSEat*s-;_}VcZk;PvaLsac z!!z;vy7un6;*paQjS(&R^vhePH_BfsRuq=W*RZVXP9=;`g!PDQB1mnkQl`3;XXgc1 z<g_d|3P4jJJ!$QJPU1&pf?xDn!!nf;UB9(lvm4}7{!fqnuFqnyY9ml<RK<vV3nfXp zNgNc_r4MQqnypJ`=c@kfe2OO2KEy4qY!uFley=P+04ySZFwZbDE1qW)!i3T2R=yWn ztvTJc9BDI&9f~~1GW12u#NhIV8{t3@rv+x!vawzXyv2|$*zi!LkJ}8tVYyY0>?&d@ z#fBg`vLOHm$3xf%s>tZLG)>$(wyhQs;U_=6RhBa(jA}w>k_}4fYE{=tk%}6e#eQhj zn#k@6e97pHF0vdPbdjaWkDC^C^vYlEki{3-5qS-R2C6W!#Iov_Y_C=stS6$8+^jfh z+J;ME*)VZcoig3Fh=PU@>055xdY#0Y%O=F9K-V22oT6(p!}As_tXrO5ZMa5cd2ZNc zzHS_&h(H*Asd7yUMpYq0dUjCye$jCTxgMMzMhoFVrIroXf@D>G>QYaQnA{G)z(q6$ z1eo$qbdS)e<AE#|L5*P)_C4QlqZFNm-vG=^h5$6~Qe)Ub1`U{(KDA8_Vv-3;>j*Z$ z#X__`i11c=O4q^A5SY4yS~{}9W=vf*K=N8eoQHc2BU!hGp)^N;kgSAI7o_PLHi<r` zuen-QROkaz!v2It=)?Ju+@gX>7Ex+jZG`|{38Ylg#(C|}!2%qF&>FnQmG&^zjd*hY z5=nBdm(bm?Ex+QSKwZpfFhj+N+!E9z2*PMd+D@sQA5@LH3b2&au_@dHpr?7X8epu~ z>?NOq>~yg%dzR%O0Rdzz3>G*R!LC#XcMK4nq=1$Tz`ICB+%)w7!HKUSK!`XZ0aBJ& zRR=X~#TxEHs$?e>)j-6P%JvKdJ%ZfoD7gbi5%5Azi6>OADhlPTBm!u9&CoiiMiG*1 zwEsv5EMjs2FG&q=S|mge3859mozmI1!6HGanx9%Z1bfE{)nFhfSf55bnE;HM+bBbG zTM0{jG7p7L83%z&Z7_NE9=Szkk&C1K&JaB(M-f^d%mag?ML1U2UTLSMZ`e-5K42bD zgr9Q7BC;ZXLDeWK$wQ?hl%$}eLI^3`XlJcMMUXO`lb{fq;?AeESh8`8RnL!{!ZM(M z(@Hh$;=nSP^GX#I()dnzPy~tRW4A_oghY^ZrLK!Z8AZ6<B(QZB*=6KgM7P_&y;AO< zXyNMU*0){m(20yz8oL#uCN>7yn_~)T*yb-822;R^O$P8A6`LzXF>r55O!HhFg>{D= z)8@_XDG&g$U_mEx5G&;1mKPob97>i(rL??)C^Lrd%W|9b;K3pwvRs-tnP5*&b<lrA zn4TEbK?Kqmr8-8?_LZR8bp?8N2Oh^;(+WJ-fikX+I7$Tv#1gb$%2c8Raq~r!PDuqK zL8>S}(GC2l9)Q3!ib^P8=Oh702`f}=sBuoe`3LFG8c>TP+)9xdiZ)}al!_aid{kQ* z)+2hvk=Ca~LUow%f+L_{nHJo3NNd4~^V4cu5cQsl(zfgz6zn-w?<5LT!Y?qtfWeYv z2ktWJT?P(tjwdHg(#j`VFo`_GHZ;Hew<7}|=v-`>qtfyKawwn{6(A?EA~mXNqnf;x zM8c5`<Q_0IAe)hqT0`DVDHt*bmN3a`x(?M}uQaN9ggUd3G<O1Rl~t~NJ2uOeiw3u0 zdm))9^$Zb}(ke?cw-VUcDER?~L!IO^<xbE|t7?goR@cR`UT570*<bC*svVUu_^0IH zsP3tc+0ZyQT7&wm*y>hIj|XpZASwl2thk=#HsQdSXy&<*IG*So%n`7n+!IEweU5W# zayArVV}aC)!>rIr*+jFFoKq+{1_*TSt;c=44PFf6l0Vd$C#((3k+^QaOaTscI-p(2 zTyhc2OQlHUPDqp*L6w$BHX>yGCk14PPbdcXlR8N08Krq?+ocF7B{6mn7*1OFb!*-+ z)==t)mgB=IkyQr<D2HcmNol7#q17){Jp{7@!*d)jttB9{@!7t!@kIAclu5*LC+)~6 zSMrh+6l5xrIGrj@O$Hwjy@^Cu5<3ozxoqg_2xql57~TLFL;T86BMV3`ZImZ=PRHit za_!;Yy2`LV#H_ao^CuYIO7>DJ*dljf3Tr6%#^v9lL-o+dDJcrQTNSccJu9H9usa$( zwZR)avuwirs&nm;h5<_`bS>X!J@EZM*d^CfDiZVuxCwo9?-VF)Tk3XV<+HrwQd*gT zCmH@IOs!lIg)Q5R$TedkP`PVFYV7ymJYlheM>>W@%056Tfa5_q96C=Z*ui0a7;#Y} zo)x9bYS>k~5!TZ;T{P;bbDP$EIuh2YTV{OHru@>piA@V`bBQ}&-cn5gNajvI?L07O zgcpW-vTap5qPvMg>;_c;k#a$6<9y8@+H<_F8w0D4Xsr4V@`ceE&Pni-2wUGqQPm67 z=U}nZfrcd)XTA^5S-0WzKXAtF1ra21=;3$LrId-fU;?*|{jf@i8e%tO;Ugkj61J;S zSmxkb0eD1)(mjM~mn-v{GZzAOre<mZ*(F*+Q6)<jH!yff0+f=z39&mYt))~)xh(}A z)y4_sNlmgkXY+2Xpk9u{J3ix*t3KUF0g^BFl`@2N6|8dsSO}5JsHj9QU8G=CZpdt# znvt*@6<FGgvlQcM<yR_@ID*5R$@XE+B<_2qHA?Xe+r*9+4K;1EJ!FQR65VZe5thEy z!fY0h2undzgKmOMgaXgDd-_17j9|h!MYwSbiG5)vl9sYV)ED1d>=B4F;ozZ~Wc3po zp13q^@-#pty>bzp-s6M2C=0y;5QvNi-I8}@Iu@c}w3MEngiQ&i$#Iz!n5vYl3eKn4 zEd*1Nfvfr)Dkb?~ty6-tj9D_VVZ&S$u45!^l$-alq_ne?`H`IPD#Ex=>;Yy@DMHKf z8tgVfM72^vP~Rn?4K4dn?Gv1HLR7;Qk3P0Z-y3EczG0~<yHXUNVWc8&l;jMihP<GH z`!hN{qzAR$!-I1B^!G8s%yk59r}}D-;W`~mmjI+;!d2=Inv9s9(z-;2iIfy%+{+zm zxOR}^kdx3CGI)_J|Kf#zf0jO)Q!2{rSRpS*pqvtVkuZEOp>43}`IMb-JSQ3S>WxJ? zF@K-Hr7GDTdDrMQU_dYFtrQ$CgfaBYNwJmGc=)RBM~i`_EHKKQ?Sn%;rEwZ?r9kvb zSWg(39s$)B7Br!O+{E0K`+;0u3>tuwt2?jnWTe9fVw<`lAujb5#a9`umF9sPFEX7N zzE?9G-!NLp9NM)p5<tc((LgB`M~`Oudl_z4VHB7Tvz(+xNjuJU22}fx#7`$vB>|(R zzl)@kAUaGGg^!Cz9TMY)h%!Ny!nV)zlzuDT%M8H?jEjeEBh<4AS-tp`OyYX4pRlx< zQR13%g})Hb=F%ZB<@U7y4VMU?I>41Wy<_}?i>bbuNlAFSKnB+Gz)z_alpi=S4-1lp zy;$j?O$+g;j@gv$*!A(if_n@g2E>stoPX-lqVKEGIG)KKCDF%`cwTm1|3XG!jXu22 z_I(deUfhc@i}t?ucmMnK8ULkkT}(Vro*fk9X*Hx0ycyQX6M#wRO2Vkv^enSD4OPLJ zDR!u#{%q*^^X!yXD6G}sXQchi>8~Aq;olFOXkT{mCzpS4{P{!e?e~psS-bbCd$pCC zmMIhp^O;ORE8M4P?GHRq->~DtW5+;}B7qL%nsB@3z#$MzBA^-g+>xj<6N}a`QG}+n zY<3Of{jhh(Z(qFj<rmx5&Cwfs|M0zkw$c2~ug)Gl?oi$n*@<<T%!D>^JMdod)X$&! z>j7<?DhUr(3@B8DIT2!#!AdcH4pE%u!ok~!nc{VHW>uVKM&+WBu~>(YjAEy>v9VaN zO|L)bWZ!)3h4!JRfB%aoUI`Di7xsR_9y$4nNd?P~<tH<lyp}%!g1zePJhS@G))^|8 z<-+inKD6Mng=xYOmg|TuGVKq4{O}z|wmE;H493UCH)Jy7+W3B8aM|<ke|yiJD}F^8 z1n}=7;Aup_w@=$$R+Xq2J7RJ=HsI7GH;zm@JvCD#P9_D8JaLAErziao*uwLCB6d;J z{;vW}O<k^OqwUYnzV@$kkDU5Vd*>S`SC#+fKiPhG?CQfuMt0rVzW<SDZ+vynJvUK{ z<;HT;nM_X0om-pHv=xsMqjvu+Q^a@s?e({`cKq<bUO9ZUTrS6#u7cl;bcEneYV!aY z$!*HrFq#?v%=q@vOnzg2%V-8-LjGCSHpkw0?eshL=8nki<;S*OFt+FVCuCCcr?z+U znYnMC+U*b&g>!3B*F`e(-)QUB<>Qs@t8TmE?9nq%KKKs#ixJ4w{Ai}Ir(nacw-@di z&9v>$USz%YvtNIj?-y$ud!GGITeAkTo&E^X$c7n_0VCPT>?Na_+(Wq&psAVnVdtBd zJ-zEIk2RN&>$$~v+iO@#!deLI%z63qE?5S?jxB?~7-`=<|Kq9GFa78$t$jwj_xlIl zyzM`Sg>lZoKSNptz5@$zmB=6DpZ1R3?Ke*uUq0QVOw6^&xvyCRF3gOLjun8rHdY|J z2yx$`TnZv0xK)d!SKk28I0kDAZlQH<88v0=(R0K&?T;P(P`K@nmv7p3-Oj7^8+7=q z+(qCZ%f&_UR{#r{HOuI)TAT0@0Nag-1f#XptFwg9=L)+ipN)mx8so!bUJlC+SOKbO z#p3y}IJY%dA&YY}xr&Hpwh2d4nxxYdd9{@*iDnc2#6hxX!kjo5bL8m8WK2RM$hsO< z=D(AFoUF{>nSVT9$&tHTy9$tlzcUlJPVA$MwoL4c$$1ucGa|qg8zXlpcNf*Cn!77r z!82{JG4eO%DZBi1eqWC<IA%~|41s<O0y4SdxgSw+?#}%q7KcZ0w*r%0@jta`6Vqp& zICpt*`6St3d3O1vmL*^!!kxft&%!=vt7X@%*S0sD3J!{1wF{Gr6q7M|Nndm!bg`*r zR^(S)NjR>^uDJ39<H&I`1<;`+uLp5+Z{^Nin4ub<BELJqLW!f^U>A&kVZ2V3kI#+Q zdtAV~3MtuUd9r<@aGb0I#5x`)8wZHkWj&@ESidw#32m1T4F@)hkynh+0xlxAh=Kqu z5i^1^&_0Dl1pkRD*JV*HlRZDXmI#&2W~;IDcsszWCZ?^0md}$`DIetz6M6v0!vb`f Z1$m>>oh688$!8`ulVuZ=6PsC({SVz6Ch`CP diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h b/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h deleted file mode 100644 index 9cea9e8f..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef BUFFER_H -#define BUFFER_H - -#include "editor.h" - -// BUFFER -void editor_add_to_buffer_history(Editor *e, const char *file_path); -void editor_remove_from_buffer_history(Editor *e); -Errno editor_open_buffer(Editor *e, const char *file_path); -Errno editor_open_buffer(Editor *e, const char *file_path); -void editor_kill_buffer(Editor *e); -void editor_previous_buffer(Editor *e); -void editor_next_buffer(Editor *e); - - -#endif // BUFFER_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@buffer.h.blob deleted file mode 100644 index 628f3f4c1ee44ca01f600b8466cf9e4f2be052a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13584 zcmb7LYm8(?6~4W!Ju^N1V}glU(cmaPVA<Z@9dNQn(RG-8fD0(dii_dS?c3GewR2y4 z@9oDdl9)&k5=}%1#7O+XFG2z#CSXuPln{)&CjJmGF~L8^h=veMjE@aVd#dVIb=SS; zRyXrw*yWx&bspb&)T!FN)_YsGY@D|$R<jrSr0F#`NwS@WQ8Oh;+H8|{Gl|`%@6ces zYhB`cPSBl;v@s0hZ5nhNZ5k6d4db2bN_Vg>?yEHWN!+A?>-F2DdE4fRwPuTSX<)ly zo9ypd?|pjp{&O0Qo9;yX%fH?}q<?AAG-<N0Nz=CdR+2g?u~WuGk$SY%<hnEuuB%-g ze?)^c22FwV9KGYbwjY-Xe%akVZKDz$JJIZVefDYP)n|TNvKXw|k8zDU#9`kOO;TwR z-${Gg2V8~0=(7jcI?=&(gC^WQ%q@X#6uA}u-r4~G44r89o=Mtng`vj?3r6FtqA;PO zHQS@U#!TDJNkgBy_K>y-xV#^vBv!;GV0NfS>{c8O6S3gHldTfBxlx}6ose-=STfiU zBzHUj;A}i3{kY?}6PKFA?GcZTm<Uh*>@Ho-gl*JSI<sg%rR#PAYLJQ>Twp(;-GSrf zfUg-{(52KT@f4X!elnok(e)Q^(ZyHMk%oPj163JW+p-fiys+Dvt*670JZSkQZIhj( z>9$D+51DCOq;cO(?V~rGIHGMWWmDqwL^ll)NioID4a03pY#Q2~e&D7w43a7HP3JM5 z5!i;OTGtzLR0kp?#{u>I(D!G#9-N+}+sRo}%YHy1SkX^Y>fsqv+5t8Q9F75%Oywue zBXN6V<`zRxV;+U0Fmi*`ptJHDB(t{2033Hl4Ev7D0rRJ;Z_+``A_29I+6H!^4zCXi z-l(T+8w?G=w0&n}J093fsEa2^S*w`yNZv4-b-M&ga|#(!lo0L$ldj2t>GSsWU)B{> z`hb+cpV26N<bEu+xL}$^P;EP-1d>-FQ=+t4Tt{oLfW!&32JdsFH&1nAo?O3HlU(Yh zbay=(wL&Mxi#Z1~RE#ueKurP=raKxtRJkbbxIHXkq12fvf<i(!d9)J~Vt2irh$q>- zt3BPbA_iF!aNO<L0%sz4t<LO@0no_`Xv2kkm+BeUq#k5&=4${56GsJrVF~T{&cH*~ zNEdP?C!vTZA{kU(=sM6N=&cUAJM5?cujJJBgzD9C5}lPs08MW@p=a?d!h((W9|eIG zCb!9s*6^B;kOC4Cnr5BSg|RD;fT|W5D~H<NrwN`66ou&1m?sMfqZ{;_(A>6?MoHv3 ziQgn~9B><4dExtdi!6{!($oGNJ*Uhfygszg%tniHtg=07r$OX;e&0LOK7+syT`_cM z8f{~ZB1)d1jzCF4M??q>ZoIR$p(1FJE=imOn&QbP6P7$O64mpvw}_rlz-f&x2}n#` z;k-u6NjSa>9#kL+BNB9Zk5B-~ROkjI(X)t@n*rMv$Zk3jWx9R)$927b;)QFXTWPyI zp;Hl!8heyD1LDrIx6CQ5VOzg;o}2<s9Eb#e2w{$j;*xwxG<mM)Bt2go)7INJ8&UvZ zfkG#8mLPIS%PS8;9x9ebR9aa<(1?+IMQn>6JRU+u)=QHlQ`@ss9rPb5;U`8ML?DgZ z=n)6nz6MmgDWFex;2GWqG!6qF$~cZVP6Y?V2DD#jC~<<U`Qkx`Qh`ViD(EN9AWC~N z2+UE`aAI*zQVFSGg_Z|3&M%vPu>PzMwKydsgUnF0#ipoK(%|ePZe>{S@FR}4-hhP8 zJn(`epxV*|ZZF}r;JFW(YFnJ<Pemq{lY@e{hV@RWKo$G~^9vX(X?Bn<<K7j?0nYL4 zq{&+OLJOvmC&Yv1x11dt_(134={us9ha~63+@dPUX<M-x)$yFJ&PpSZnGNKgF*IPz z*hsC9a|2o2Midh`{FLjanaZ}I<lC)&$4(u603s#iFm=5!VY8v!I1n|+`zW$)tjMBF zp+&|D1WIe$>a1>ymVy}r_fE%48w8Br@JZSW@v}2@!~M~$<|(r(?b_KiO-C0h=&%)p zG#J1su+X7v)(02ZlSHC&1<DiVs3m7KoLo$L#97~1MuZh6aaia;io*wV$Jha#^F_9_ zg^(34tK)MWWRflhD{0Z`VgQ2zIH}o?!W!+Jz=0uXdDu+X4@G54cAmq?%8&nSGS4Vx z_>(&b^$coW-b*2XLWxOm#`R6`!;LkU`U&+TIQof{FZ$c>?7P#@BTb-H7OJ5G0|7Vm z{m@kB*}(f?>A<_tQZr==SeCWf=JQ$2OB#;Y=faT_H8q=N0D237juQJm%&t6W)!5Fs zHAKFFybSo&Q;jYlzllMQ;gU`azwv@HRa@;j2Dk$lD#1invlpu1h+S~ytYM0!n;Lv@ zf9^}Udm%0#^kE$cUi{q8Da3t?ZEV(N&mRXci<(?vn8e+2l7L2$=x2ZW`0e_sj*A4f zo(!NT&QEkqY`M3YaWA0VlUCR%M{W`kJ*A=E5J{FzesV4;P0MLA^4cl8V=Mq#!b*kE z=@1SRRGd1@xh|c*b?`$dn{&q#Pl|9-pGRD$pACx4vbtW!>nA-k)1ljQCRb_GM<ZpO z9&KmGY`&k#{iIFdDwp~H&qq6kL@L}FnGOT9=66YA7kgF|JJZdUBd$+X!a^5}4y|{i zxjiTAzdN%^sRpckim!|=@}ZWd3b2hlC+&nWeh5~a&h)8X#3dgY<U!vrKW%0`1rwxj z;*l594Hn2HLp`+#Ts4*@HzjI9f<(YaAzKr6s-n>L?3w}zj7_9-gt*JmxR#qM0Vg9f zTtIPyR!|h(Qs4%rF2w|e(hmT;^U_jO9h5CkJQ(AG@~nu_$-#U&S8y+D$(^^_cI3p4 zeyfklko2&$E(H(}VmDD~gWtGlU_==T+ZrPhxN(6sW^zk4t46<afz<gMhD=@rLnd|E ztF1xBbG<h4!*s4un-@CmWKz?ot*&4h(Gd}YfC4NPO&8h^HV%qI&zrglEv=tm!ZieL z(n5+a3`9&JJ4bzq!eLGzxrt03*cb~ntjxviT>vIMx(G%R*)&3xg}eYPMP^fO&AU3C zfG8Nv(EBskG+>mRl}VLTQOP>se4e|NU?>@AU2^!;<b$<-1I|3{Mw_@E3`OBCM$-mm zUSdg&vljWO9`G1p)>!5ev!qne^25HkN>HdqB?R>Y25o5V=W3teJd`+H(h7OQZsrZM zkI1E1Wk*GcM2<w_1|^qpMd+n5ikX!k=;msg&5vW0nR^bjo%p?;*qu+M8<3=7Y}Y7H znz*Pixza#ZR1EGMbR0?&{yc^Z+47U0_}eS|#hk&8E%s~#$|<8)0V8=SZR24W@$Ho3 zCCRKOZvy4a{3XEU2Jk}ms4?urbY9aN6&!AZ3G~cGu~BL=e^rmtVNB5igL3xH&iRhU z@56lp)2m=TWng}0#4W6764wa|qgv?)c5^Xn`pxd`!qN%KWFNpbcSAv3?kk>O^<<5j z2d=x=6l4Bg&GjSK9Xai}U7KYBh*<Ql8kI_BkAeBIj5Mn<3e1s3Omd@`j&qYi*6I7R zcaug*z^LX&k$hsrhmNZ7N%6QtvfB}bGDT(Bw&ZO}*^2iwLvUmFnz`Eud^Vx0mpzdw z-0hVK3y*aN9-7zC714G!!!xHq!_{f|^_GH957HGL-dX;GTdC5><Rr3PV1sRaFo<de z<p&PT^Cn5x8@6(^CWxm!BF1u$9Lok4(qoWfKpZWH%TH5Uls*~F@XUBLR3FFiT&b2m zbZ1ZL)d<C^j(>l{m9OkMy)_tww7n`m*xS_e*lk#c#8)2S<CfLE<SMIH`=kXwmGR?G z-FeUXw|?`eRfoUTYPJ29O3kWmTGsgAH$3~&y-&Rm9AR&4Bs=yNqrh(8D)cc)y2@rl zt9$ty>InMQtE_sR@3MRR(2L*r-lHGbdT{)QU#xud)Sk1?jsNQ0ddJcmcb^|0i!Oio zwD;P5On_aB^~D2~%A&QHF4dRdPfONP3Zh*4yZ<hH__=qYX~hB<4-_PsQtWF#sXh4E z|J--EV)a@b6sucxrr7iU`OC*Hxj1-znj2g(4k+}GD93%mRPQ|a$G0!L`?gKaak;j< zUa2fw%O`;22OnEmdFzMYeRG;)3`e#Bu{&|-XH4xLyqAT4xuE-DLookU`h%xmt~}7= z%ol14Cn}W%YoP_qfBmD69A10<f%R$TP%7*+EahA3kXr4KWo_Jk^yraW!P?`O-nj7E zrykz=`S_WCe&&hKzx42ReD`Xtx>2cAt?GT2b;<abFPwYz>fy)VWKjs`o>d5zRSpSj z&z>5So&CJae(eIk)pj$V!SC_HBPTvu`_{2%*%$q1?0w}5`uFEw{+whf()elyPw^k? z^2-4b{7123yDUtEmL{8^OMyzFdMtf5mT*|8ZdSj#yRvZe!l~Vr#kIvRg1~D_@Vj=P z_J!S*<wMJxyDRkrb@peqS_O`^va$=}Wcm2=jTd)u>Km0d7n!^&p7Kj-hie;b32d{G zTOy^-FIn1H+GI;WzRlbc88m3zfnzQOA(yt6V!r(NQfvv~Wb~PqEp9FHWsAob<uVz) zc>xzU7P)|6#=L;iH~A$CcP(r&p}_uIIh~}3@=NN6>)dkSl)U96Y)$%9<LbR^$Lgu- zy_p##?DIQSzg|7bNjIw}bHY7&&*3B2{G<Mah#mVlxO(LZ2nQOF)ye;>R8}ghyZCQw ITmhQ@1F8+80RR91 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h b/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h deleted file mode 100644 index 15151d43..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef CLOCK_H -#define CLOCK_H - -#include "common.h" -#include "simple_renderer.h" - -extern Vec2f clockPosition; -extern float clockScale; -extern Vec4f clockColor; - -void render_clock(Simple_Renderer *sr, int hours, int minutes); -void render_digit(Simple_Renderer *sr, int digit, Vec2f position, float squareSize, Vec4f color); -void render_colon(Simple_Renderer *sr, Vec2f position, float squareSize, Vec4f color); -void init_clock(); - -#endif // CLOCK_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@clock.h.blob deleted file mode 100644 index ca47492651959ddd36628c1a3ff267ca00162cb6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14097 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 E13c+g3IG5A diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@common.h b/.ccls-cache/@home@l@Desktop@test@ded/src@common.h deleted file mode 100644 index 65d742e2..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@common.h +++ /dev/null @@ -1,118 +0,0 @@ -#ifndef COMMON_H_ -#define COMMON_H_ - -#include <stdlib.h> -#include <stdio.h> -#include <stdint.h> -#include <stdbool.h> -#include "./la.h" - -#define SCREEN_WIDTH 800 -#define SCREEN_HEIGHT 600 -#define FPS 144 -#define DELTA_TIME (1.0f / FPS) -#define CURSOR_OFFSET 0.13f - -typedef int Errno; - -#define SWAP(T, a, b) do { T t = a; a = b; b = t; } while (0) - -#define return_defer(value) do { result = (value); goto defer; } while (0) - -#define UNIMPLEMENTED(...) \ - do { \ - printf("%s:%d: UNIMPLEMENTED: %s \n", __FILE__, __LINE__, __VA_ARGS__); \ - exit(1); \ - } while(0) -#define UNREACHABLE(...) \ - do { \ - printf("%s:%d: UNREACHABLE: %s \n", __FILE__, __LINE__, __VA_ARGS__); \ - exit(1); \ - } while(0) -#define UNUSED(x) (void)(x) - -#define DA_INIT_CAP 256 - -#define da_last(da) (assert((da)->count > 0), (da)->items[(da)->count - 1]) - -#define da_move(dst, src) \ - do { \ - free((dst)->items); \ - (dst)->items = (src).items; \ - (dst)->count = (src).count; \ - (dst)->capacity = (src).capacity; \ - } while (0) - -#define da_append(da, item) \ - do { \ - if ((da)->count >= (da)->capacity) { \ - (da)->capacity = (da)->capacity == 0 ? DA_INIT_CAP : (da)->capacity*2; \ - (da)->items = realloc((da)->items, (da)->capacity*sizeof(*(da)->items)); \ - assert((da)->items != NULL && "Buy more RAM lol"); \ - } \ - \ - (da)->items[(da)->count++] = (item); \ - } while (0) - -#define da_append_many(da, new_items, new_items_count) \ - do { \ - if ((da)->count + new_items_count > (da)->capacity) { \ - if ((da)->capacity == 0) { \ - (da)->capacity = DA_INIT_CAP; \ - } \ - while ((da)->count + new_items_count > (da)->capacity) { \ - (da)->capacity *= 2; \ - } \ - (da)->items = realloc((da)->items, (da)->capacity*sizeof(*(da)->items)); \ - assert((da)->items != NULL && "Buy more RAM lol"); \ - } \ - memcpy((da)->items + (da)->count, new_items, new_items_count*sizeof(*(da)->items)); \ - (da)->count += new_items_count; \ - } while (0) - -char *temp_strdup(const char *s); -void temp_reset(void); - -typedef struct { - char *items; - size_t count; - size_t capacity; -} String_Builder; - -#define SB_Fmt "%.*s" -#define SB_Arg(sb) (int) (sb).count, (sb).items - -#define sb_append_buf da_append_many -#define sb_append_cstr(sb, cstr) \ - do { \ - const char *s = (cstr); \ - size_t n = strlen(s); \ - da_append_many(sb, s, n); \ - } while (0) -#define sb_append_null(sb) da_append_many(sb, "", 1) - -#define sb_to_sv(sb) sv_from_parts((sb).items, (sb).count) - -typedef struct { - const char **items; - size_t count; - size_t capacity; -} Files; - -typedef enum { - FT_REGULAR, - FT_DIRECTORY, - FT_OTHER, -} File_Type; - -Errno type_of_file(const char *file_path, File_Type *ft); -Errno read_entire_file(const char *file_path, String_Builder *sb); -Errno write_entire_file(const char *file_path, const char *buf, size_t buf_size); -Errno read_entire_dir(const char *dir_path, Files *files); - - -bool is_hex_digit(char c); -Vec4f hex_to_vec4f(uint32_t color); - - -#endif // COMMON_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@common.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@common.h.blob deleted file mode 100644 index 131df066454485ee8b527346da834978459fe5e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17569 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 OPc|em{m_v6^#2dnbNiD3 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c deleted file mode 100644 index d3afbe20..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c +++ /dev/null @@ -1,1986 +0,0 @@ -#include <assert.h> -#include <stdbool.h> -#include <stddef.h> -#include <stdio.h> -#include <errno.h> -#include <string.h> -#include <limits.h> -#include "./editor.h" -#include "./common.h" -#include "./free_glyph.h" -#include "./file_browser.h" -#include "emacs.h" -#include "lexer.h" -#include "simple_renderer.h" -#include <ctype.h> // For isalnum -#include "evil.h" -#include "theme.h" - - -bool quit = false; -float zoom_factor = 3.0f; -float min_zoom_factor = 1.0; -float max_zoom_factor = 50.0; - -bool followCursor = true; -bool isWave = false; -size_t indentation = 4; - -bool showLineNumbers = false; -bool highlightCurrentLineNumber = true; -bool relativeLineNumbers = false; - -bool showWhitespaces = false; -bool copiedLine = false; -bool matchParenthesis = true; - -bool hl_line = false; -bool superDrammtic = false; -bool instantCamera = false; -bool showIndentationLines = true; - -bool showMinibuffer = true; -bool showModeline = true; -float minibufferHeight = 21.0f; -float modelineHeight = 35.0f; -float modelineAccentWidth = 5.0f; -bool ivy = false; -bool M_x_active = false; -bool evil_command_active = false; - -bool BlockInsertCurosr = true; -bool highlightCurrentLineNumberOnInsertMode = true; // the loong way - -bool helix = false; -bool emacs = false; -bool automatic_zoom = true; - -float fringeWidth = 6.0f; -bool showFringe = true; - - -void set_current_mode() { - if (emacs) { - current_mode = EMACS; - } else if (helix) { - current_mode = HELIX; - } else { - current_mode = NORMAL; - } -} - -EvilMode current_mode = NORMAL; - -bool extract_word_under_cursor(Editor *editor, char *word) { - // Make a copy of cursor position to avoid modifying the actual cursor - size_t cursor = editor->cursor; - - // Move left to find the start of the word. - while (cursor > 0 && isalnum(editor->data.items[cursor - 1])) { - cursor--; - } - - // Check if the cursor is on a word or on whitespace/special character. - if (!isalnum(editor->data.items[cursor])) return false; - - int start = cursor; - - // Move right to find the end of the word. - while (cursor < editor->data.count && isalnum(editor->data.items[cursor])) { - cursor++; - } - - int end = cursor; - - // Copy the word to the provided buffer. - // Make sure not to overflow the buffer and null-terminate the string. - int length = end - start; - strncpy(word, &editor->data.items[start], length); - word[length] = '\0'; - - return true; -} - - -void move_camera(Simple_Renderer *sr, const char* direction, float amount) { - if(strcmp(direction, "up") == 0) { - sr->camera_pos.y -= amount; - } else if(strcmp(direction, "down") == 0) { - sr->camera_pos.y += amount; - } else if(strcmp(direction, "left") == 0) { - sr->camera_pos.x -= amount; - } else if(strcmp(direction, "right") == 0) { - sr->camera_pos.x += amount; - } else { - printf("Invalid direction '%s'\n", direction); - } -} - - -// TODO if we are on a multiple of indentation delete the correct number of indentations -void editor_backspace(Editor *e) { - // If in search mode, reduce the search query length - if (e->searching) { - if (e->search.count > 0) { - e->search.count -= 1; - } - } else if (e->minibuffer_active) { - if (e->minibuffer_text.count > 0) { - e->minibuffer_text.count -= 1; - } - } else { - // Check if the cursor is at the beginning or at the beginning of a line - if (e->cursor == 0) return; // Cursor at the beginning, nothing to delete - - size_t cursor_pos = e->cursor; - size_t row = editor_cursor_row(e); - - if (cursor_pos > e->data.count) { - cursor_pos = e->data.count; - } - - // Determine the characters before and after the cursor - char char_before_cursor = (cursor_pos > 0) ? e->data.items[cursor_pos - 1] : '\0'; - char char_after_cursor = (cursor_pos < e->data.count) ? e->data.items[cursor_pos] : '\0'; - - // Smart parentheses: delete both characters if they match - if ((char_before_cursor == '(' && char_after_cursor == ')') || - (char_before_cursor == '[' && char_after_cursor == ']') || - (char_before_cursor == '{' && char_after_cursor == '}') || - (char_before_cursor == '\'' && char_after_cursor == '\'') || - (char_before_cursor == '"' && char_after_cursor == '"')) { - memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos + 1], e->data.count - cursor_pos); - e->cursor -= 1; - e->data.count -= 2; - } else if (editor_is_line_empty(e, row)) { - if (row > 0) { - // If it's not the first line, delete the newline character from the previous line - size_t newline_pos = e->lines.items[row - 1].end; // Position of newline character - memmove(&e->data.items[newline_pos], &e->data.items[newline_pos + 1], e->data.count - newline_pos - 1); - e->cursor = newline_pos; // Move cursor to the end of the previous line - e->data.count -= 1; - } else if (e->lines.count > 1) { - // If it's the first line but there are more lines, delete the newline character at the end of this line - size_t newline_pos = e->lines.items[row].end; // Position of newline character - memmove(&e->data.items[newline_pos], &e->data.items[newline_pos + 1], e->data.count - newline_pos - 1); - e->data.count -= 1; - // Cursor stays at the beginning of the next line (which is now the first line) - } - } else if (editor_is_line_whitespaced(e, row)) { - /* // If the line is only whitespaces */ - /* size_t line_begin = e->lines.items[row].begin; */ - /* size_t delete_length = (cursor_pos - line_begin >= indentation) ? indentation : cursor_pos - line_begin; */ - - /* memmove(&e->data.items[cursor_pos - delete_length], &e->data.items[cursor_pos], e->data.count - cursor_pos); */ - /* e->cursor -= delete_length; */ - /* e->data.count -= delete_length; */ - - // If the line is only whitespaces - size_t line_begin = e->lines.items[row].begin; - size_t line_end = e->lines.items[row].end; - size_t whitespace_length = cursor_pos - line_begin; - - if (whitespace_length == indentation) { - // If the number of whitespaces matches indentation exactly, remove the entire line - if (row < e->lines.count - 1) { - memmove(&e->data.items[line_begin], &e->data.items[line_end + 1], e->data.count - line_end - 1); - e->data.count -= (line_end - line_begin + 1); - e->cursor = line_begin; // Update cursor position to the beginning of the next line - } else if (row > 0 && e->data.items[line_begin - 1] == '\n') { - // If it's the last line, remove the preceding newline character - e->data.count -= 1; - memmove(&e->data.items[line_begin - 1], &e->data.items[line_end], e->data.count - line_end); - e->cursor = (line_begin > 1) ? line_begin - 1 : 0; // Move cursor to the end of the previous line, plus one character - } - // Update the cursor position if it's not the first line - if (row > 0) { - e->cursor = e->lines.items[row - 1].end; // Move cursor to one character right of the end of the previous line - if (e->cursor > e->data.count) e->cursor = e->data.count; // Bound check - } - } else { - // Original behavior for deleting whitespaces - size_t delete_length = (whitespace_length >= indentation) ? indentation : whitespace_length; - memmove(&e->data.items[cursor_pos - delete_length], &e->data.items[cursor_pos], e->data.count - cursor_pos); - e->cursor -= delete_length; - e->data.count -= delete_length; - } - } else { - // Delete only the character before the cursor - memmove(&e->data.items[cursor_pos - 1], &e->data.items[cursor_pos], e->data.count - cursor_pos); - e->cursor -= 1; - e->data.count -= 1; - } - editor_retokenize(e); - } -} - - -// Unused ? -void editor_delete(Editor *e) -{ - if (e->searching) return; - - if (e->cursor >= e->data.count) return; - memmove( - &e->data.items[e->cursor], - &e->data.items[e->cursor + 1], - e->data.count - e->cursor - 1 - ); - e->data.count -= 1; - editor_retokenize(e); -} - -void editor_delete_selection(Editor *e) -{ - assert(e->selection); - - size_t begin = e->select_begin; - size_t end = e->cursor; - if (begin > end) { - SWAP(size_t, begin, end); - } - - if (end >= e->data.count) { - end = e->data.count - 1; - } - if (begin == e->data.count) return; - - size_t nchars = end - begin + 1; // Correct calculation to include the end character - - memmove( - &e->data.items[begin], - &e->data.items[end + 1], - e->data.count - end - 1 - ); - - e->data.count -= nchars; - e->cursor = begin; // Set cursor to the beginning of the deleted range - - editor_retokenize(e); -} - - -// TODO: make sure that you always have new line at the end of the file while saving -// https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 - -Errno editor_save_as(Editor *e, const char *file_path) -{ - printf("Saving as %s...\n", file_path); - Errno err = write_entire_file(file_path, e->data.items, e->data.count); - if (err != 0) return err; - e->file_path.count = 0; - sb_append_cstr(&e->file_path, file_path); - sb_append_null(&e->file_path); - return 0; -} - -Errno editor_save(const Editor *e) -{ - assert(e->file_path.count > 0); - printf("Saving as %s...\n", e->file_path.items); - return write_entire_file(e->file_path.items, e->data.items, e->data.count); -} - -/* Errno editor_load_from_file(Editor *e, const char *file_path) */ -/* { */ -/* printf("Loading %s\n", file_path); */ - -/* e->data.count = 0; */ -/* Errno err = read_entire_file(file_path, &e->data); */ -/* if (err != 0) return err; */ - -/* e->cursor = 0; */ - -/* editor_retokenize(e); */ - -/* e->file_path.count = 0; */ -/* sb_append_cstr(&e->file_path, file_path); */ -/* sb_append_null(&e->file_path); */ - -/* // Add file path to buffer history */ -/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ -/* e->buffer_history[e->buffer_history_count++] = strdup(file_path); */ -/* } */ - -/* return 0; */ -/* } */ - - -size_t get_position_from_line_column(Editor *e, size_t line, size_t column) { - size_t pos = 0; - size_t current_line = 0; - - while (pos < e->data.count && current_line < line) { - if (e->data.items[pos] == '\n') { - current_line++; - } - pos++; - } - - // Adjust column position - size_t line_start = pos; - size_t current_column = 0; - while (pos < e->data.count && current_column < column) { - if (e->data.items[pos] == '\n') { - break; // Prevent going to next line - } - current_column++; - pos++; - } - - return line_start + current_column; -} - - - -/* Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { */ -/* printf("Loading %s\n", file_path); */ - -/* e->data.count = 0; */ -/* Errno err = read_entire_file(file_path, &e->data); */ -/* if (err != 0) return err; */ - -/* // Move cursor to the specified line and column */ -/* e->cursor = get_position_from_line_column(e, line, column); */ - -/* editor_retokenize(e); */ - -/* e->file_path.count = 0; */ -/* sb_append_cstr(&e->file_path, file_path); */ -/* sb_append_null(&e->file_path); */ - -/* // Add file path to buffer history */ -/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ -/* e->buffer_history[e->buffer_history_count++] = strdup(file_path); */ -/* } */ - -/* return 0; */ -/* } */ - -/* Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { */ -/* char expanded_file_path[PATH_MAX]; */ -/* expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); */ -/* printf("Loading %s\n", expanded_file_path); */ - -/* e->data.count = 0; */ -/* Errno err = read_entire_file(expanded_file_path, &e->data); */ -/* if (err != 0) return err; */ - -/* // Move cursor to the specified line and column */ -/* e->cursor = get_position_from_line_column(e, line, column); */ - -/* editor_retokenize(e); */ - -/* e->file_path.count = 0; */ -/* sb_append_cstr(&e->file_path, expanded_file_path); */ -/* sb_append_null(&e->file_path); */ - -/* // Add file path to buffer history */ -/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ -/* e->buffer_history[e->buffer_history_count++] = strdup(expanded_file_path); */ -/* } */ -/* return 0; */ -/* } */ - - - -Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { - char expanded_file_path[PATH_MAX]; - expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); - - printf("[find_file] Requested File: %s\n", file_path); - printf("[find_file] Expanded File Path: %s\n", expanded_file_path); - printf("[find_file] Line: %zu, Column: %zu\n", line, column); - - e->data.count = 0; - Errno err = read_entire_file(expanded_file_path, &e->data); - if (err != 0) { - printf("[find_file] Error reading file: %d\n", err); - return err; - } - - e->cursor = get_position_from_line_column(e, line, column); - editor_retokenize(e); - - e->file_path.count = 0; - sb_append_cstr(&e->file_path, expanded_file_path); - sb_append_null(&e->file_path); - - if (e->buffer_history_count < MAX_BUFFER_HISTORY) { - e->buffer_history[e->buffer_history_count++] = strdup(expanded_file_path); - } - - printf("[find_file] File loaded and cursor set.\n"); - return 0; -} - - - - -size_t editor_cursor_row(const Editor *e) -{ - assert(e->lines.count > 0); - for (size_t row = 0; row < e->lines.count; ++row) { - Line line = e->lines.items[row]; - if (line.begin <= e->cursor && e->cursor <= line.end) { - return row; - } - } - return e->lines.count - 1; -} - -void editor_move_line_up(Editor *e) -{ - editor_stop_search(e); - - size_t cursor_row = editor_cursor_row(e); - size_t cursor_col = e->cursor - e->lines.items[cursor_row].begin; - if (cursor_row > 0) { - Line next_line = e->lines.items[cursor_row - 1]; - size_t next_line_size = next_line.end - next_line.begin; - if (cursor_col > next_line_size) cursor_col = next_line_size; - e->cursor = next_line.begin + cursor_col; - } -} - -void editor_move_line_down(Editor *e) -{ - editor_stop_search(e); - - size_t cursor_row = editor_cursor_row(e); - size_t cursor_col = e->cursor - e->lines.items[cursor_row].begin; - if (cursor_row < e->lines.count - 1) { - Line next_line = e->lines.items[cursor_row + 1]; - size_t next_line_size = next_line.end - next_line.begin; - if (cursor_col > next_line_size) cursor_col = next_line_size; - e->cursor = next_line.begin + cursor_col; - } -} - -void editor_move_char_left(Editor *e) -{ - editor_stop_search(e); - if (e->cursor > 0) e->cursor -= 1; -} - -void editor_move_char_right(Editor *e) -{ - editor_stop_search(e); - if (e->cursor < e->data.count) e->cursor += 1; -} - -void editor_move_word_left(Editor *e) -{ - editor_stop_search(e); - while (e->cursor > 0 && !isalnum(e->data.items[e->cursor - 1])) { - e->cursor -= 1; - } - while (e->cursor > 0 && isalnum(e->data.items[e->cursor - 1])) { - e->cursor -= 1; - } -} - -void editor_move_word_right(Editor *e) -{ - editor_stop_search(e); - while (e->cursor < e->data.count && !isalnum(e->data.items[e->cursor])) { - e->cursor += 1; - } - while (e->cursor < e->data.count && isalnum(e->data.items[e->cursor])) { - e->cursor += 1; - } -} - -void editor_insert_char(Editor *e, char x) -{ - editor_insert_buf(e, &x, 1); -} - -void editor_insert_char_at(Editor *e, char c, size_t pos) { - editor_insert_buf_at(e, &c, 1, pos); -} - - - -void editor_insert_buf(Editor *e, char *buf, size_t buf_len) -{ - if (e->searching) { - sb_append_buf(&e->search, buf, buf_len); - bool matched = false; - for (size_t pos = e->cursor; pos < e->data.count; ++pos) { - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - matched = true; - break; - } - } - if (!matched) e->search.count -= buf_len; - } else if (e->minibuffer_active) { - sb_append_buf(&e->minibuffer_text, buf, buf_len); - /* printf("Minibuffer: "SB_Fmt"\n", SB_Arg(e->minibuffer_text)); */ - } else { - if (e->cursor > e->data.count) { - e->cursor = e->data.count; - } - - for (size_t i = 0; i < buf_len; ++i) { - da_append(&e->data, '\0'); - } - memmove( - &e->data.items[e->cursor + buf_len], - &e->data.items[e->cursor], - e->data.count - e->cursor - buf_len - ); - memcpy(&e->data.items[e->cursor], buf, buf_len); - e->cursor += buf_len; - editor_retokenize(e); - /* printf("%.*s", (int)buf_len, buf); */ - } -} - - -void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos) { - // Ensure the position is within bounds - if (pos > e->data.count) { - pos = e->data.count; - } - - // Expand the buffer to accommodate the new text - for (size_t i = 0; i < buf_len; ++i) { - da_append(&e->data, '\0'); - } - - // Shift existing text to make room for the new text - memmove(&e->data.items[pos + buf_len], &e->data.items[pos], e->data.count - pos); - - // Copy the new text into the buffer at the specified position - memcpy(&e->data.items[pos], buf, buf_len); - - // Update the cursor position and retokenize - e->cursor = pos + buf_len; - editor_retokenize(e); -} - -void editor_retokenize(Editor *e) -{ - // Lines - { - e->lines.count = 0; - - Line line; - line.begin = 0; - - for (size_t i = 0; i < e->data.count; ++i) { - if (e->data.items[i] == '\n') { - line.end = i; - da_append(&e->lines, line); - line.begin = i + 1; - } - } - - line.end = e->data.count; - da_append(&e->lines, line); - } - - // Syntax Highlighting - { - e->tokens.count = 0; - Lexer l = lexer_new(e->atlas, e->data.items, e->data.count); - /* Lexer l = lexer_new(e->atlas, e->data.items, e->data.count, e->file_path); */ - Token t = lexer_next(&l); - while (t.kind != TOKEN_END) { - da_append(&e->tokens, t); - t = lexer_next(&l); - } - } -} - -bool editor_line_starts_with(Editor *e, size_t row, size_t col, const char *prefix) -{ - size_t prefix_len = strlen(prefix); - if (prefix_len == 0) { - return true; - } - Line line = e->lines.items[row]; - if (col + prefix_len - 1 >= line.end) { - return false; - } - for (size_t i = 0; i < prefix_len; ++i) { - if (prefix[i] != e->data.items[line.begin + col + i]) { - return false; - } - } - return true; -} - -const char *editor_line_starts_with_one_of(Editor *e, size_t row, size_t col, const char **prefixes, size_t prefixes_count) -{ - for (size_t i = 0; i < prefixes_count; ++i) { - if (editor_line_starts_with(e, row, col, prefixes[i])) { - return prefixes[i]; - } - } - return NULL; -} - -void editor_clipboard_copy(Editor *e) -{ - if (e->searching) return; - if (e->selection) { - size_t begin = e->select_begin; - size_t end = e->cursor; - if (begin > end) SWAP(size_t, begin, end); - - e->clipboard.count = 0; - sb_append_buf(&e->clipboard, &e->data.items[begin], end - begin + 1); - sb_append_null(&e->clipboard); - - if (SDL_SetClipboardText(e->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - } - copiedLine = false; -} - -void editor_clipboard_paste(Editor *e) -{ - char *text = SDL_GetClipboardText(); - size_t text_len = strlen(text); - if (text_len > 0) { - editor_insert_buf(e, text, text_len); - } else { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - SDL_free(text); -} - -void editor_update_selection(Editor *e, bool shift) { - if (e->searching) return; - - if (current_mode == VISUAL) { - if (!e->selection) { - evil_visual_char(e); - } - } else if (shift) { - if (!e->selection) { - e->selection = true; - e->select_begin = e->cursor; - } - } else { - e->selection = false; - } -} - -// search -void editor_start_search(Editor *e) -{ - if (e->searching) { - for (size_t pos = e->cursor + 1; pos < e->data.count; ++pos) { - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - break; - } - } - } else { - e->searching = true; - if (e->selection) { - e->selection = false; - // TODO: put the selection into the search automatically - } else { - e->search.count = 0; - } - } -} - -void editor_stop_search(Editor *e) -{ - e->searching = false; -} - -void editor_stop_search_and_mark(Editor *e) { - e->searching = false; - - e->has_mark = true; // Mark the search result. - e->mark_start = e->cursor; - e->mark_end = e->cursor + e->search.count; -} - -void editor_clear_mark(Editor *editor) { - editor->has_mark = false; - editor->mark_start = 0; // or some other appropriate default value - editor->mark_end = 0; // or some other appropriate default value -} - -bool editor_search_matches_at(Editor *e, size_t pos) -{ - if (e->data.count - pos < e->search.count) return false; - for (size_t i = 0; i < e->search.count; ++i) { - if (e->search.items[i] != e->data.items[pos + i]) { - return false; - } - } - return true; -} - -void editor_move_to_begin(Editor *e) -{ - editor_stop_search(e); - e->cursor = 0; -} - -void editor_move_to_end(Editor *e) -{ - editor_stop_search(e); - e->cursor = e->data.count; -} - -void editor_move_to_line_begin(Editor *e) -{ - editor_stop_search(e); - size_t row = editor_cursor_row(e); - e->cursor = e->lines.items[row].begin; -} - -void editor_move_to_line_end(Editor *e) -{ - editor_stop_search(e); - size_t row = editor_cursor_row(e); - e->cursor = e->lines.items[row].end; -} - -void editor_move_paragraph_up(Editor *e) -{ - editor_stop_search(e); - size_t row = editor_cursor_row(e); - while (row > 0 && e->lines.items[row].end - e->lines.items[row].begin <= 1) { - row -= 1; - } - while (row > 0 && e->lines.items[row].end - e->lines.items[row].begin > 1) { - row -= 1; - } - e->cursor = e->lines.items[row].begin; -} - -void editor_move_paragraph_down(Editor *e) -{ - editor_stop_search(e); - size_t row = editor_cursor_row(e); - while (row + 1 < e->lines.count && e->lines.items[row].end - e->lines.items[row].begin <= 1) { - row += 1; - } - while (row + 1 < e->lines.count && e->lines.items[row].end - e->lines.items[row].begin > 1) { - row += 1; - } - e->cursor = e->lines.items[row].begin; -} - - -bool editor_is_line_empty(Editor *e, size_t row) { - if (row >= e->lines.count) return true; // Non-existent lines are considered empty - - return e->lines.items[row].begin == e->lines.items[row].end; -} - -bool editor_is_line_whitespaced(Editor *e, size_t row) { - if (row >= e->lines.count) return false; - - size_t line_begin = e->lines.items[row].begin; - size_t line_end = e->lines.items[row].end; - - for (size_t i = line_begin; i < line_end; ++i) { - if (!isspace(e->data.items[i])) { - return false; - } - } - return true; -} - - -ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos) { - // Ensure the cursor position is within the valid range - if (cursor_pos >= editor->data.count) return -1; - if (matchParenthesis){ - char current_char = editor->data.items[cursor_pos]; - char matching_char; - int direction; - - // Check if the character at cursor is a parenthesis - switch (current_char) { - case '(': matching_char = ')'; direction = 1; break; - case ')': matching_char = '('; direction = -1; break; - case '[': matching_char = ']'; direction = 1; break; - case ']': matching_char = '['; direction = -1; break; - case '{': matching_char = '}'; direction = 1; break; - case '}': matching_char = '{'; direction = -1; break; - default: return -1; // Not on a parenthesis character - } - - int balance = 1; - size_t pos = cursor_pos; - - while ((direction > 0 && pos < editor->data.count - 1) || (direction < 0 && pos > 0)) { - pos += direction; - - if (editor->data.items[pos] == current_char) { - balance++; - } else if (editor->data.items[pos] == matching_char) { - balance--; - if (balance == 0) { - return pos; // Found the matching parenthesis - } - } - } - return -1; // No matching parenthesis found - } -} - -size_t editor_row_from_pos(const Editor *e, size_t pos) { - assert(e->lines.count > 0); - for (size_t row = 0; row < e->lines.count; ++row) { - Line line = e->lines.items[row]; - if (line.begin <= pos && pos <= line.end) { - return row; - } - } - return e->lines.count - 1; -} - -//TODO BUG -void editor_enter(Editor *e) { - if (e->searching) { - editor_stop_search_and_mark(e); - current_mode = NORMAL; - return; - } else if (M_x_active || evil_command_active && e->minibuffer_active) { - sb_append_null(&e->minibuffer_text); // null termination - execute_command(e->commands, e, e->minibuffer_text.items); - e->minibuffer_text.count = 0; - e->minibuffer_active = false; - M_x_active = false; - current_mode = NORMAL; - } else { - size_t row = editor_cursor_row(e); - size_t line_end = e->lines.items[row].end; - - editor_insert_char(e, '\n'); - size_t line_begin = e->lines.items[row].begin; - bool inside_braces = false; - - // Check if the line contains an opening brace '{' - for (size_t i = line_begin; i < line_end; ++i) { - char c = e->data.items[i]; - if (c == '{') { - inside_braces = true; - break; - } - } - - // Insert the same whitespace character - for (size_t i = line_begin; i < line_end; ++i) { - char c = e->data.items[i]; - if (c == ' ' || c == '\t') { - editor_insert_char(e, c); - } else { - break; - } - } - - // If inside braces, perform additional steps - if (inside_braces) { - editor_move_line_up(e); - editor_move_to_line_end(e); - editor_insert_char(e, '\n'); - - // Add indentation - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(e, ' '); - } - } - e->last_stroke = SDL_GetTicks(); - } -} - - -// Anchor Implementation: Initially, the anchor used a single index from the -// start of the buffer, requiring updates on text changes. To simplify, we now -// track two indices (start and end of buffer). The anchor position self-adjusts -// based on cursor's relative position, ensuring correct placement without -// modifying all text-manipulating functions still a dumb implementation. - -void editor_set_anchor(Editor *editor) { - if (editor->cursor < editor->data.count) { - editor->has_anchor = true; - editor->anchor_pos_from_start = editor->cursor; - editor->anchor_pos_from_end = editor->data.count - editor->cursor; - } -} - -void editor_goto_anchor_and_clear(Editor *editor) { - if (editor->has_anchor) { - if (editor->cursor > editor->anchor_pos_from_start) { - editor->cursor = editor->anchor_pos_from_start; - } else { - editor->cursor = editor->data.count - editor->anchor_pos_from_end; - } - editor->has_anchor = false; - } -} - -void editor_update_anchor(Editor *editor) { - if (!editor->has_anchor) return; - - if (editor->cursor > editor->anchor_pos_from_start) { - // Cursor is after the anchor, use position from the start - editor->anchor_pos = editor->anchor_pos_from_start; - } else { - // Cursor is before the anchor, use position from the end - editor->anchor_pos = editor->data.count - editor->anchor_pos_from_end; - } -} - - -void editor_drag_line_down(Editor *editor) { - size_t row = editor_cursor_row(editor); - if (row >= editor->lines.count - 1) return; // Can't move the last line down - - Line current_line = editor->lines.items[row]; - Line next_line = editor->lines.items[row + 1]; - - // Calculate lengths including the newline character - size_t current_line_length = current_line.end - current_line.begin + 1; - size_t next_line_length = next_line.end - next_line.begin + 1; - - // Allocate temporary buffer to hold the lines - char *temp = malloc(current_line_length + next_line_length); - if (!temp) { - // Handle memory allocation error - fprintf(stderr, "ERROR: Unable to allocate memory for line swapping.\n"); - return; - } - - // Copy current and next lines into temp - memcpy(temp, &editor->data.items[current_line.begin], current_line_length); - memcpy(temp + current_line_length, &editor->data.items[next_line.begin], next_line_length); - - // Swap lines in editor's data - memcpy(&editor->data.items[current_line.begin], temp + current_line_length, next_line_length); - memcpy(&editor->data.items[current_line.begin + next_line_length], temp, current_line_length); - - // Free the temporary buffer - free(temp); - - // Update cursor position - if (editor->cursor >= current_line.begin && editor->cursor < current_line.end) { - // The cursor is on the current line, move it down with the line - editor->cursor += next_line_length; - } else if (editor->cursor >= next_line.begin && editor->cursor <= next_line.end) { - // The cursor is on the next line, move it up to the start of the current line - editor->cursor = current_line.begin + (editor->cursor - next_line.begin); - } - - // Update line positions in the Lines struct - editor->lines.items[row].begin = current_line.begin; - editor->lines.items[row].end = current_line.begin + next_line_length - 1; - editor->lines.items[row + 1].begin = current_line.begin + next_line_length; - editor->lines.items[row + 1].end = editor->lines.items[row + 1].begin + current_line_length - 1; - - // Retokenize - editor_retokenize(editor); -} - -void editor_drag_line_up(Editor *editor) { - size_t row = editor_cursor_row(editor); - if (row == 0) return; // Can't move the first line up - - Line current_line = editor->lines.items[row]; - Line previous_line = editor->lines.items[row - 1]; - - // Calculate lengths including the newline character - size_t current_line_length = current_line.end - current_line.begin + 1; - size_t previous_line_length = previous_line.end - previous_line.begin + 1; - - // Allocate temporary buffer to hold the lines - char *temp = malloc(current_line_length + previous_line_length); - if (!temp) { - // Handle memory allocation error - fprintf(stderr, "ERROR: Unable to allocate memory for line swapping.\n"); - return; - } - - // Copy current and previous lines into temp - memcpy(temp, &editor->data.items[previous_line.begin], previous_line_length); - memcpy(temp + previous_line_length, &editor->data.items[current_line.begin], current_line_length); - - // Swap lines in editor's data - memcpy(&editor->data.items[previous_line.begin], temp + previous_line_length, current_line_length); - memcpy(&editor->data.items[previous_line.begin + current_line_length], temp, previous_line_length); - - // Free the temporary buffer - free(temp); - - // Update cursor position - editor->cursor = previous_line.begin + (editor->cursor - current_line.begin); - - // Update line positions in the Lines struct - editor->lines.items[row - 1].begin = previous_line.begin; - editor->lines.items[row - 1].end = previous_line.begin + current_line_length - 1; - editor->lines.items[row].begin = previous_line.begin + current_line_length; - editor->lines.items[row].end = editor->lines.items[row].begin + previous_line_length - 1; - - // Retokenize - editor_retokenize(editor); -} - -float measure_whitespace_width(Free_Glyph_Atlas *atlas) { - Vec2f whitespaceSize = {0.0f, 0.0f}; - free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); - return whitespaceSize.x; -} - -float measure_whitespace_height(Free_Glyph_Atlas *atlas) { - Vec2f whitespaceSize = {0.0f, 0.0f}; - free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); - return whitespaceSize.y; -} - -void add_one_indentation_here(Editor *editor) { - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(editor, ' '); - } -} - -void remove_one_indentation_here(Editor *editor) { - for (size_t i = 0; i < indentation; ++i) { - editor_delete(editor); - } -} - -void add_one_indentation(Editor *editor) { - size_t cursor_row = editor_cursor_row(editor); - Line currentLineData = editor->lines.items[cursor_row]; - size_t originalCursorPosition = editor->cursor; - - // Calculate current indentation of the line - size_t currentIndentation = 0; - for (size_t i = currentLineData.begin; i < currentLineData.end && isspace(editor->data.items[i]); ++i) { - currentIndentation++; - } - - // Move cursor to the beginning of the current line - editor->cursor = currentLineData.begin; - - // Add one level of indentation at the beginning of the line - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(editor, ' '); - } - - // Adjust cursor position - if (originalCursorPosition <= currentLineData.begin + currentIndentation) { - // If the cursor was at or before the first non-whitespace character, move it right after the added indentation - editor->cursor = currentLineData.begin + currentIndentation + indentation; - } else { - // If the cursor was on a non-whitespace character, maintain relative position - editor->cursor = originalCursorPosition + indentation; - } -} - -void remove_one_indentation(Editor *editor) { - size_t cursor_row = editor_cursor_row(editor); - Line currentLineData = editor->lines.items[cursor_row]; - - // Save the current cursor position - size_t originalCursorPosition = editor->cursor; - - // Calculate current indentation of the line - size_t currentIndentation = 0; - size_t firstNonWhitespace = currentLineData.begin; - while (firstNonWhitespace < currentLineData.end && isspace(editor->data.items[firstNonWhitespace])) { - currentIndentation++; - firstNonWhitespace++; - } - - // Check if there's at least one indentation level to remove - if (currentIndentation >= indentation) { - // Move cursor to the beginning of the current line - editor->cursor = currentLineData.begin; - - // Remove one level of indentation from the beginning of the line - for (size_t i = 0; i < indentation; ++i) { - editor_delete(editor); // Assuming delete removes one character. - } - - // Adjust cursor position - if (originalCursorPosition <= currentLineData.begin + currentIndentation) { - // If the cursor was within the leading whitespace, move it to the first non-whitespace character - editor->cursor = firstNonWhitespace - indentation; - } else { - // If the cursor was on a non-whitespace character, maintain relative position - editor->cursor = originalCursorPosition - indentation; - } - } -} - - - -// TODO slow calculation on whitespaces -void indent(Editor *editor) { - size_t cursor_row = editor_cursor_row(editor); - int braceLevel = 0; - - // Calculate brace level up to the current line - for (size_t i = 0; i < cursor_row; ++i) { - Line line = editor->lines.items[i]; - for (size_t j = line.begin; j < line.end; ++j) { - char c = editor->data.items[j]; - if (c == '{') { - braceLevel++; - } else if (c == '}') { - braceLevel = (braceLevel > 0) ? braceLevel - 1 : 0; - } - } - } - - Line currentLineData = editor->lines.items[cursor_row]; - bool decreaseIndentation = false; - size_t firstNonWhitespace = currentLineData.begin; - bool isLineEmpty = true; - for (size_t j = currentLineData.begin; j < currentLineData.end; ++j) { - char c = editor->data.items[j]; - if (!isspace(c)) { - firstNonWhitespace = j; - isLineEmpty = false; - if (c == '}') { - decreaseIndentation = true; - } - break; - } - } - - // Adjust brace level for current line if it starts with a closing brace - if (decreaseIndentation) { - braceLevel = (braceLevel > 0) ? braceLevel - 1 : 0; - } - - // Calculate required and current indentation - size_t requiredIndentation = braceLevel * indentation; - size_t currentIndentation = 0; - for (size_t i = currentLineData.begin; i < currentLineData.end && (editor->data.items[i] == ' ' || editor->data.items[i] == '\t'); ++i) { - currentIndentation++; - } - - // Save the current cursor position - size_t originalCursorPosition = editor->cursor; - - // Adjust indentation - editor->cursor = currentLineData.begin; - while (currentIndentation < requiredIndentation) { - editor_insert_char(editor, ' '); - currentIndentation++; - } - - while (currentIndentation > requiredIndentation && currentIndentation > 0) { - editor_delete(editor); // or evil_delete_char(editor); - currentIndentation--; - } - - // Adjust cursor position based on initial condition - if (isLineEmpty || originalCursorPosition <= firstNonWhitespace) { - // If the line is empty or the cursor was on or before the first non-whitespace character - editor->cursor = currentLineData.begin + requiredIndentation; - } else { - // If the cursor was on a non-whitespace character, maintain relative position - size_t characterOffset = originalCursorPosition - firstNonWhitespace; - editor->cursor = currentLineData.begin + requiredIndentation + characterOffset; - } -} - - -size_t find_first_non_whitespace(const char* items, size_t begin, size_t end) { - size_t pos = begin; - while (pos < end && isspace((unsigned char)items[pos])) { - pos++; - } - return pos; -} - - - -// TODO tomove -bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length) { - size_t start = cursor; - while (start > 0 && editor->data.items[start - 1] != '\n') { - start--; - } - - size_t end = start; - while (end < editor->data.count && editor->data.items[end] != '\n') { - end++; - } - - size_t length = end - start; - if (length < max_length) { - strncpy(line, &editor->data.items[start], length); - line[length] = '\0'; - return true; - } - - return false; -} - -bool extractLocalIncludePath(Editor *editor, char *includePath) { - char line[512]; // Adjust size as needed - if (!extractLine(editor, editor->cursor, line, sizeof(line))) { - return false; - } - - if (strncmp(line, "#include \"", 10) == 0) { - char *start = strchr(line, '\"') + 1; - char *end = strrchr(line, '\"'); - if (start && end && start < end) { - size_t length = end - start; - strncpy(includePath, start, length); - includePath[length] = '\0'; - return true; - } - } - - return false; -} - -void getDirectoryFromFilePath(const char *filePath, char *directory) { - strcpy(directory, filePath); - char *lastSlash = strrchr(directory, '/'); - if (lastSlash != NULL) { - *lastSlash = '\0'; // Null-terminate at the last slash - } else { - // Handle the case where there is no slash in the path - strcpy(directory, "."); - } -} - -Errno openLocalIncludeFile(Editor *editor, const char *includePath) { - char fullPath[512]; // Buffer for the full path - char directory[256]; // Buffer for the directory - - // Get the directory of the current file - getDirectoryFromFilePath(editor->file_path.items, directory); - - // Construct the full path - snprintf(fullPath, sizeof(fullPath), "%s/%s", directory, includePath); - - // Load the file using the full path - Errno load_err = find_file(editor, fullPath, 10, 10); - if (load_err != 0) { - fprintf(stderr, "Error loading file %s: %s\n", fullPath, strerror(load_err)); - return load_err; - } - - printf("Opened file: %s\n", fullPath); - return 0; -} - -bool extractGlobalIncludePath(Editor *editor, char *includePath) { - char line[512]; - if (!extractLine(editor, editor->cursor, line, sizeof(line))) { - return false; - } - - if (strncmp(line, "#include <", 10) == 0) { - char *start = strchr(line, '<') + 1; - char *end = strrchr(line, '>'); - if (start && end && start < end) { - size_t length = end - start; - strncpy(includePath, start, length); - includePath[length] = '\0'; - return true; - } - } - - return false; -} - -#include "unistd.h" // for F_OK -Errno openGlobalIncludeFile(Editor *editor, const char *includePath) { - char fullPath[512]; // Buffer for the full path - - // List of standard directories (expandable) - const char *standardDirs[] = {"/usr/include", NULL}; // NULL terminated array - - for (int i = 0; standardDirs[i] != NULL; i++) { - snprintf(fullPath, sizeof(fullPath), "%s/%s", standardDirs[i], includePath); - - // Check if the file exists and is accessible - if (access(fullPath, F_OK) != -1) { - // Try to load the file using the constructed full path - Errno load_err = find_file(editor, fullPath, 0, 0); - if (load_err == 0) { - printf("Opened file: %s\n", fullPath); - return 0; // File opened successfully - } - } - } - - // Print the error message only if the file is not found in /usr/include - fprintf(stderr, "Error: File %s not found in /usr/include\n", includePath); - return -1; // File not found in /usr/include -} - -void editor_open_include(Editor *editor) { - char includePath[256]; - - if (extractLocalIncludePath(editor, includePath)) { - openLocalIncludeFile(editor, includePath); - } else if (extractGlobalIncludePath(editor, includePath)) { - openGlobalIncludeFile(editor, includePath); - } -} - - - - - - - - - - -// CLANG FORMAT TODO -#include <stdlib.h> - -int is_clang_format_installed() { - if (system("clang-format --version") != 0) { - return 0; - } - return 1; -} - -void clang_format(const char *filename, const char *arguments) { - if (!is_clang_format_installed()) { - printf("bruh clang-format is not installed.\n"); - return; - } - - char command[1024]; - snprintf(command, sizeof(command), "clang-format %s %s", arguments, filename); - - // Execute the command - int result = system(command); - if (result != 0) { - printf("Error executing clang-format.\n"); - } -} - - -// TODO select more after end brace -void select_region_from_inside_braces(Editor *editor) { - if (editor->cursor >= editor->data.count) return; - - size_t row = editor_cursor_row(editor); - size_t start = row; - size_t end = row; - - // Find the start of the function - while (start > 0) { - start--; - size_t line_begin = editor->lines.items[start].begin; - size_t line_end = editor->lines.items[start].end; - - // Simple heuristic: a line ending with '{' might be the start of a function - if (editor->data.items[line_end - 1] == '{') { - break; - } - } - - // Find the end of the function - int brace_count = 1; // Start after finding the opening brace - while (end < editor->lines.count - 1) { - end++; - size_t line_begin = editor->lines.items[end].begin; - size_t line_end = editor->lines.items[end].end; - - for (size_t i = line_begin; i < line_end; i++) { - if (editor->data.items[i] == '{') { - brace_count++; - } else if (editor->data.items[i] == '}') { - brace_count--; - if (brace_count == 0) { - // Found the matching closing brace - goto found_end; - } - } - } - } -found_end: - - // Update the selection - editor->selection = true; - editor->select_begin = editor->lines.items[start].begin; - editor->cursor = editor->lines.items[end].end; -} - - -// TODO should not run from anywhere just curly braces -// TODO dont move the cursor on open brace like it does for closing brace -void select_region_from_brace(Editor *editor) { - if (editor->cursor >= editor->data.count) return; - - char current_char = editor->data.items[editor->cursor]; - - if (strchr("})", current_char)) { - // Called from a closing brace - editor->select_begin = editor->cursor; - evil_jump_item(editor); - size_t row = editor_cursor_row(editor); - editor->cursor = editor->lines.items[row].begin; // Extend to the beginning of the line - } else if (strchr("({", current_char)) { - // Called from an opening brace - size_t row = editor_cursor_row(editor); - editor->select_begin = editor->lines.items[row].begin; // Start from the beginning of the line - evil_jump_item(editor); - row = editor_cursor_row(editor); - editor->cursor = editor->lines.items[row].end; // Extend to the end of the line with the closing brace - } - - // Update the selection - editor->selection = true; - if (editor->select_begin > editor->cursor) { - // Ensure select_begin is always before the cursor - size_t temp = editor->select_begin; - editor->select_begin = editor->cursor; - editor->cursor = temp; - } -} - - -// TODO select_function - - -bool toggle_bool(Editor *editor) { - char word[256]; - if (!extract_word_under_cursor(editor, word)) { - return false; - } - - const char *replacement = NULL; - int difference = 0; - if (strcmp(word, "true") == 0) { - replacement = "false"; - difference = 1; // "false" is 1 character longer than "true" - } else if (strcmp(word, "false") == 0) { - replacement = "true"; - difference = -1; // "true" is 1 character shorter than "false" - } else { - return false; - } - - // Find the start position of the word - size_t word_start = editor->cursor; - while (word_start > 0 && isalnum(editor->data.items[word_start - 1])) { - word_start--; - } - - // Shift the buffer contents if necessary - if (difference != 0) { - memmove(&editor->data.items[word_start + strlen(replacement)], - &editor->data.items[word_start + strlen(word)], - editor->data.count - word_start - strlen(word)); - editor->data.count += difference; - } - - // Replace the word directly in the buffer - memcpy(&editor->data.items[word_start], replacement, strlen(replacement)); - - editor_retokenize(editor); - return true; // Successfully toggled -} - -void editor_quit() { - quit = true; -} - -void editor_save_and_quit(Editor *e) { - editor_save(e); - quit = true; -} - - - - - -bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { - if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { - return false; - } - - size_t end = e->cursor; - size_t start = end; - - while (start > 0 && isalnum(e->data.items[start - 1])) { - start--; - } - - size_t word_length = end - start; - if (word_length >= max_word_length) { - return false; - } - - memcpy(word, &e->data.items[start], word_length); - word[word_length] = '\0'; - e->cursor = start; - return true; -} - - - - - -#define MAX_MATCHES 1024 -#define MAX_WORD_LENGTH 256 - -// TODO cycle -// TODO bad match sometimes i invoke it and it does nothing - -void evil_complete_next(Editor *e) { - static char last_word[MAX_WORD_LENGTH] = {0}; - static size_t last_match_index = 0; - char current_word[MAX_WORD_LENGTH]; - - if (!extract_word_left_of_cursor(e, current_word, sizeof(current_word))) { - printf("No word to complete.\n"); - return; - } - - if (strcmp(last_word, current_word) != 0) { - strcpy(last_word, current_word); - last_match_index = 0; - } - - char *matches[MAX_MATCHES]; - size_t matches_count = 0; - find_matches_in_editor_data(e, current_word, matches, &matches_count); - - if (matches_count == 0) { - printf("Pattern not found.\n"); - return; - } - - const char *next_match = matches[last_match_index % matches_count]; - size_t next_match_length = strlen(next_match); - size_t current_word_length = strlen(current_word); - - // Adjust the buffer size and content - if (next_match_length != current_word_length) { - memmove(&e->data.items[e->cursor + next_match_length], - &e->data.items[e->cursor + current_word_length], - e->data.count - e->cursor); - e->data.count += next_match_length - current_word_length; - } - - // Replace the current word with the match - memcpy(&e->data.items[e->cursor], next_match, next_match_length); - - // Update the cursor position to the end of the new word - e->cursor += next_match_length; - - last_match_index++; - - // Clean up - for (size_t i = 0; i < matches_count; i++) { - free(matches[i]); - } - editor_retokenize(e); -} - -void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count) { - size_t word_length = strlen(word); - *matches_count = 0; - char *data = e->data.items; - size_t data_length = e->data.count; - - for (size_t i = 0; i < data_length; i++) { - if (isalnum(data[i]) && (i == 0 || !isalnum(data[i - 1]))) { - // Found the start of a word - if (strncmp(&data[i], word, word_length) == 0) { - // Found a matching word, now find the end of the word - size_t word_end = i + 1; - while (word_end < data_length && isalnum(data[word_end])) { - word_end++; - } - - size_t match_length = word_end - i; - if (*matches_count < MAX_MATCHES) { - matches[*matches_count] = malloc(match_length + 1); - strncpy(matches[*matches_count], &data[i], match_length); - matches[*matches_count][match_length] = '\0'; - (*matches_count)++; - } - } - } - } -} - - - -Errno editor_goto_line(Editor *editor, const char *params[]) { - if (!params || !params[0]) { - // Handle error: No line number provided - return -1; - } - - size_t line_number = atoi(params[0]); - if (line_number == 0 || line_number > editor->lines.count) { - // Line number is out of range - return -1; - } - - // Adjust line_number to zero-based index - line_number -= 1; - - // Set the cursor to the beginning of the specified line - editor->cursor = editor->lines.items[line_number].begin; - - return 0; -} - -void get_cursor_position(const Editor *e, int *line, int *character) { - assert(e != NULL && line != NULL && character != NULL); - - // Get the line number - *line = editor_cursor_row(e); - - // Find the start of the current line - size_t line_start = 0; - if (*line > 0 && *line < e->lines.count) { - line_start = e->lines.items[*line].begin; - } - - // Calculate the column number (character position) - *character = e->cursor - line_start; -} - - - - - -// TODO doesn't work -// VARIABLES DOCUMENTATION -struct hashmap *variable_docs_map; - -void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1) { - variable_docs_map = hashmap_new( - sizeof(VariableDoc), // Size of each element - 16, // Initial capacity - seed0, seed1, // Hash seeds - variable_doc_hash, // Hash function - variable_doc_compare,// Compare function - NULL, // Element free function (NULL if not needed) - NULL // User data for compare function (NULL if not needed) - ); - - if (!variable_docs_map) { - // Handle hashmap initialization failure - fprintf(stderr, "Failed to initialize variable documentation map\n"); - } -} - - -bool document_variable(const char *name, const char *type, const char *description) { - // Check if the variable is already documented using the variable name as the key - if (hashmap_get(variable_docs_map, name) != NULL) { - // Variable already documented - return false; - } - - VariableDoc *doc = malloc(sizeof(VariableDoc)); - if (!doc) { - // Memory allocation failure - return false; - } - - // Duplicate the strings to ensure they are properly managed - doc->var_name = strdup(name); - doc->var_type = strdup(type); - doc->description = strdup(description); - - // Insert the new documentation into the map - // The hashmap_set function calculates the hash internally - if (hashmap_set(variable_docs_map, doc) == NULL) { - // Successfully documented the variable or replaced an existing one - return true; - } else { - // Cleanup in case of failure - free(doc->var_name); - free(doc->var_type); - free(doc->description); - free(doc); - return false; - } -} - - - -// TODO type checking -void initialize_variable_documentation() { - // Define hash seeds - uint64_t seed0 = 0x12345678; - uint64_t seed1 = 0x9ABCDEF0; - - // Initialize the hashmap with seeds - initialize_variable_docs_map(seed0, seed1); - - // Document variables - document_variable("zoom_factor", "float", "Controls the zoom level of the editor view."); - document_variable("showLineNumbers", "bool", "Determines whether line numbers are displayed."); - // Add more variables here... -} - - - -void print_variable_doc(const char *var_name) { - VariableDoc *doc = (VariableDoc *)hashmap_get(variable_docs_map, var_name); - if (doc) { - printf("Variable Name: %s\nType: %s\nDescription: %s\n", doc->var_name, doc->var_type, doc->description); - } else { - printf("No documentation found for variable '%s'.\n", var_name); - } -} - - - -uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1) { - const char *str = item; - uint64_t hash = seed0; - while (*str) { - hash = 31 * hash + (*str++); - } - return hash ^ seed1; -} - - -int variable_doc_compare(const void *a, const void *b, void *udata) { - const VariableDoc *doc = a; - const char *key = b; - return strcmp(doc->var_name, key); -} - - - - - -// ANIMATIONS -// TODO don't always update - -float easeOutCubic(float x) { - return 1 - pow(1 - x, 3); -} - - -float targetModelineHeight; -bool isModelineAnimating = false; -void update_modeline_animation() { - if (!isModelineAnimating) { - return; - } - - float animationSpeed = 1.50f; - - if (modelineHeight < targetModelineHeight) { - modelineHeight += animationSpeed; - if (modelineHeight > targetModelineHeight) { - modelineHeight = targetModelineHeight; - } - } else if (modelineHeight > targetModelineHeight) { - modelineHeight -= animationSpeed; - if (modelineHeight < targetModelineHeight) { - modelineHeight = targetModelineHeight; - } - } - - if (modelineHeight == targetModelineHeight) { - isModelineAnimating = false; - } -} - - -float targetMinibufferHeight; -bool isMinibufferAnimating = false; -float minibufferAnimationProgress = 0.0f; // Normalized progress of the animation -float minibufferAnimationDuration = 1.0f; // Duration of the animation in seconds - - -void update_minibuffer_animation(float deltaTime) { - if (!isMinibufferAnimating) { - return; - } - - minibufferAnimationProgress += deltaTime / minibufferAnimationDuration; - - if (minibufferAnimationProgress > 1.0f) { - minibufferAnimationProgress = 1.0f; - isMinibufferAnimating = false; - } - - float easedProgress = easeOutCubic(minibufferAnimationProgress); - minibufferHeight = easedProgress * (targetMinibufferHeight - minibufferHeight) + minibufferHeight; - - if (minibufferHeight == targetMinibufferHeight || minibufferAnimationProgress >= 1.0f) { - isMinibufferAnimating = false; - } -} - - -size_t calculate_max_line_length(const Editor *editor) { - size_t max_len = 0; - for (size_t i = 0; i < editor->lines.count; ++i) { - Line line = editor->lines.items[i]; - size_t line_length = line.end - line.begin; - if (line_length > max_len) { - max_len = line_length; - } - } - return max_len; -} - -float column_to_x(Free_Glyph_Atlas *atlas, int column) { - float whitespace_width = measure_whitespace_width(atlas); - return column * whitespace_width; -} - - - - - - - - - - - - -// Spellcheck - -#define MIN_SPELLCHECK_LENGTH 3 -#define SPELLING_THRESHOLD 2 - -char **dictionary = NULL; -size_t dictionary_word_count = 0; - -char **load_dictionary(const char *file_path, size_t *word_count) { - FILE *file = fopen(file_path, "r"); - if (!file) { - perror("Failed to open dictionary file"); - return NULL; - } - - char **dictionary = NULL; - char line[100]; - *word_count = 0; - - while (fgets(line, sizeof(line), file)) { - line[strcspn(line, "\n")] = 0; - char **temp = realloc(dictionary, (*word_count + 1) * sizeof(char *)); - if (!temp) { - perror("Failed to allocate memory for dictionary"); - // Free already allocated memory - for (size_t i = 0; i < *word_count; ++i) { - free(dictionary[i]); - } - free(dictionary); - fclose(file); - return NULL; - } - dictionary = temp; - dictionary[*word_count] = strdup(line); - (*word_count)++; - } - - fclose(file); - return dictionary; -} - -int wagner_fischer(const char *s1, const char *s2) { - int len1 = strlen(s1); - int len2 = strlen(s2); - int matrix[len1 + 1][len2 + 1]; - - for (int i = 0; i <= len1; i++) matrix[i][0] = i; - for (int j = 0; j <= len2; j++) matrix[0][j] = j; - - for (int i = 1; i <= len1; i++) { - for (int j = 1; j <= len2; j++) { - int cost = (s1[i - 1] == s2[j - 1]) ? 0 : 1; - matrix[i][j] = fmin(matrix[i - 1][j - 1] + cost, - fmin(matrix[i - 1][j] + 1, matrix[i][j - 1] + 1)); - } - } - - return matrix[len1][len2]; -} - - - -bool check_spelling(const char *word) { - if (strlen(word) < MIN_SPELLCHECK_LENGTH) { - return true; - } - for (size_t i = 0; i < dictionary_word_count; ++i) { - if (wagner_fischer(word, dictionary[i]) <= SPELLING_THRESHOLD) { - return true; - } - } - return false; -} - - - - -void spellcheck_editor_data(Editor *editor) { - char word[256]; // Adjust size as necessary - size_t word_length = 0; - - // Iterate through editor data - for (size_t i = 0; i < editor->data.count; ++i) { - char c = editor->data.items[i]; - if (isalpha(c)) { - // Collect characters of a word - word[word_length++] = c; - } else { - if (word_length > 0) { - // Null-terminate the collected word - word[word_length] = '\0'; - - // Check spelling of the word - if (!check_spelling(word)) { - // Handle misspelled word (e.g., store its position, mark it, etc.) - } - - // Reset for the next word - word_length = 0; - } - } - } -} - - - - - - -void editor_color_text_range(Editor *editor, size_t start, size_t end, Vec4f new_color) { - for (size_t i = 0; i < editor->tokens.count; ++i) { - Token *token = &editor->tokens.items[i]; - size_t token_start = token->position.x; // Make sure this is the correct way to calculate the start position - size_t token_end = token_start + token->text_len; - - // Check if the token is within the specified range - if (token_start < end && token_end > start) { - token->color = new_color; - } - } -} - - - - - - diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.c.blob deleted file mode 100644 index 4ce228cfff335a446066a8e925de59b9f145cead..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 107273 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 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h deleted file mode 100644 index 5dbef50d..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h +++ /dev/null @@ -1,293 +0,0 @@ -#ifndef EDITOR_H_ -#define EDITOR_H_ - -#include <stddef.h> -#include <stdlib.h> -#include "common.h" -#include "free_glyph.h" -#include "simple_renderer.h" -#include "lexer.h" -#include <stdbool.h> -#include <SDL2/SDL.h> - -#include "hashmap.h" - -extern bool followCursor; -extern size_t indentation; -extern float zoom_factor; -extern float min_zoom_factor; -extern float max_zoom_factor; -extern bool showLineNumbers; -extern bool isWave; -extern bool showWhitespaces; -extern bool copiedLine; -extern bool hl_line; -extern bool relativeLineNumbers; -extern bool highlightCurrentLineNumber; -extern bool matchParenthesis; -extern bool superDrammtic; -extern bool showIndentationLines; - -extern bool showMinibuffer; -extern bool showModeline; -extern float minibufferHeight; -extern float modelineHeight; -extern float modelineAccentWidth; -extern bool ivy; -extern bool M_x_active; -extern bool evil_command_active; -extern bool quit; - -extern bool BlockInsertCurosr; -extern bool highlightCurrentLineNumberOnInsertMode; -extern bool instantCamera; - - -extern bool helix; -extern bool emacs; -extern bool automatic_zoom; - - -extern float fringeWidth; -extern bool showFringe; -typedef struct { - size_t begin; - size_t end; -} Line; - -typedef struct { - Line *items; - size_t count; - size_t capacity; -} Lines; - -typedef struct { - Token *items; - size_t count; - size_t capacity; -} Tokens; - - - -//TODO minibuffer, replace, replace char, helix -typedef enum { - EMACS, - HELIX, - NORMAL, - INSERT, - VISUAL, - VISUAL_LINE, - MINIBUFFER, -} EvilMode; - -extern EvilMode current_mode; - - -#define MAX_BUFFER_HISTORY 100 - -typedef struct { - Free_Glyph_Atlas *atlas; - - String_Builder data; - Lines lines; - Tokens tokens; - String_Builder file_path; - - bool searching; - String_Builder search; - - bool minibuffer_active; - String_Builder minibuffer_text; - - struct hashmap *commands; - - bool selection; - size_t select_begin; - size_t cursor; - - bool has_mark; // Indicates if there's a marked search result. - size_t mark_start; - size_t mark_end; - - Uint32 last_stroke; - - String_Builder clipboard; - - bool has_anchor; - size_t anchor_pos_from_start; - size_t anchor_pos_from_end; - size_t anchor_pos; - - - char *buffer_history[MAX_BUFFER_HISTORY]; - int buffer_history_count; - int buffer_index; - - // lsp - int to_clangd_fd; - int from_clangd_fd; - -} Editor; - -Errno editor_save_as(Editor *editor, const char *file_path); -Errno editor_save(const Editor *editor); -/* Errno editor_load_from_file(Editor *editor, const char *file_path); */ -Errno find_file(Editor *e, const char *file_path, size_t line, size_t column); -size_t get_position_from_line_column(Editor *e, size_t line, size_t column); - -void editor_backspace(Editor *editor); -void editor_delete(Editor *editor); -void editor_delete_selection(Editor *editor); -size_t editor_cursor_row(const Editor *e); - -void editor_move_line_up(Editor *e); -void editor_move_line_down(Editor *e); -void editor_move_char_left(Editor *e); -void editor_move_char_right(Editor *e); -void editor_move_word_left(Editor *e); -void editor_move_word_right(Editor *e); - -void editor_move_to_begin(Editor *e); -void editor_move_to_end(Editor *e); -void editor_move_to_line_begin(Editor *e); -void editor_move_to_line_end(Editor *e); - -void editor_move_paragraph_up(Editor *e); -void editor_move_paragraph_down(Editor *e); - -void editor_insert_char(Editor *e, char x); -void editor_insert_buf(Editor *e, char *buf, size_t buf_len); -void editor_retokenize(Editor *e); -void editor_update_selection(Editor *e, bool shift); -void editor_clipboard_copy(Editor *e); -void editor_clipboard_paste(Editor *e); - - - -void editor_start_search(Editor *e); -void editor_stop_search(Editor *e); -bool editor_search_matches_at(Editor *e, size_t pos); - - -// ADDED -void editor_stop_search_and_mark(Editor *e); -void editor_clear_mark(Editor *editor); -void move_camera(Simple_Renderer *sr, const char* direction, float amount); -void editor_insert_buf_at(Editor *e, char *buf, size_t buf_len, size_t pos); -void editor_insert_char_at(Editor *e, char c, size_t pos); -ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos); -void editor_enter(Editor *e); -void editor_set_anchor(Editor *editor); -void editor_goto_anchor_and_clear(Editor *editor); -void editor_update_anchor(Editor *editor); -void editor_drag_line_down(Editor *editor); -void editor_drag_line_up(Editor *editor); -void add_one_indentation_here(Editor *editor); -void add_one_indentation(Editor *editor); -void remove_one_indentation(Editor *editor); -void indent(Editor *editor); -void select_region_from_brace(Editor *editor); -void select_region_from_inside_braces(Editor *editor); - -bool extractLocalIncludePath(Editor *editor, char *includePath); -void getDirectoryFromFilePath(const char *filePath, char *directory); -Errno openLocalIncludeFile(Editor *editor, const char *includePath); -bool extractGlobalIncludePath(Editor *editor, char *includePath); -Errno openGlobalIncludeFile(Editor *editor, const char *includePath); -void editor_open_include(Editor *editor); -bool toggle_bool(Editor *editor); - -void editor_quit(); -void editor_save_and_quit(Editor *e); - -void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count); -void evil_complete_next(Editor *e); -Errno editor_goto_line(Editor *editor, const char *params[]); -void get_cursor_position(const Editor *e, int *line, int *character); - - -void set_current_mode(); -size_t calculate_max_line_length(const Editor *editor); - - -Vec4f get_color_for_token_kind(Token_Kind kind); -void update_cursor_color(Editor * editor); -/* void update_cursor_color(Editor *editor, Free_Glyph_Atlas *atlas); */ - - - - - - - - - - - - - -// UTILITY -bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length); -size_t editor_row_from_pos(const Editor *e, size_t pos); -bool extract_word_under_cursor(Editor *editor, char *word); -bool editor_is_line_empty(Editor *e, size_t row); -bool editor_is_line_whitespaced(Editor *e, size_t row); -float measure_whitespace_width(Free_Glyph_Atlas *atlas); -float measure_whitespace_height(Free_Glyph_Atlas *atlas); -size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); -bool exract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); -bool is_number(const char *str); - -// Var Documentation - -typedef struct { - const char *var_name; // Name of the variable - const char *var_type; // Type of the variable (e.g., "int", "float", "bool") - const char *description; // Description of the variable -} VariableDoc; - -void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1); -bool document_variable(const char *name, const char *type, const char *description); -void initialize_variable_documentation(); -void print_variable_doc(const char *var_name); -uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1); -int variable_doc_compare(const void *a, const void *b, void *udata); - - - -// animation - -extern float targetModelineHeight; -extern bool isModelineAnimating; -extern void update_modeline_animation(); - -extern float targetMinibufferHeight; -extern bool isMinibufferAnimating; - -extern float minibufferAnimationProgress; -extern float minibufferAnimationDuration; -void update_minibuffer_animation(float deltaTime); - -float easeOutCubic(float x); - - - -// spellcheck - -extern char **dictionary; -extern size_t dictionary_word_count; - -void spellcheck_editor_data(Editor *editor); -char **load_dictionary(const char *file_path, size_t *word_count); -int wagner_fischer(const char *s1, const char *s2); -bool is_spellcheckable(Token_Kind kind); -bool check_spelling(const char *word); - - - -void editor_color_text_range(Editor *editor, size_t start, size_t end, Vec4f new_color); - -void adjust_line_number_width(Editor *editor, float *lineNumberWidth); - -#endif // EDITOR_H_ - diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@editor.h.blob deleted file mode 100644 index c8e70d67e1adab05cdfd5a7bb9b07f2c25d8f788..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39953 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 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h b/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h deleted file mode 100644 index e6e113be..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef EMACS_H -#define EMACS_H - -#include "editor.h" - -void emacs_kill_line(Editor *e); -void emacs_backward_kill_word(Editor *e); -void emacs_back_to_indentation(Editor *e); -void emacs_mark_paragraph(Editor *e, bool shift); - -#endif // EMACS_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@emacs.h.blob deleted file mode 100644 index 43a304c0856ad2b72bc31277fbff6e4a596cd6da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13015 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 Zjo=uFh#m7^z21r5$z$?Q@2CeP{|A&E(w6`L diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c deleted file mode 100644 index cbe70a81..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c +++ /dev/null @@ -1,554 +0,0 @@ -#include "evil.h" -#include "editor.h" -#include <stdbool.h> - -void evil_open_below(Editor *editor) { - size_t row = editor_cursor_row(editor); - size_t line_begin = editor->lines.items[row].begin; - size_t line_end = editor->lines.items[row].end; - - editor_move_to_line_end(editor); - editor_insert_char(editor, '\n'); - - // Copy indentation - for (size_t i = line_begin; i < line_end; ++i) { - char c = editor->data.items[i]; - if (c == ' ' || c == '\t') { - editor_insert_char(editor, c); - } else { - break; - } - } -} - -void evil_open_above(Editor *editor) { - size_t row = editor_cursor_row(editor); - - // Determine the current line's start and end for capturing indentation - size_t line_begin = editor->lines.items[row].begin; - size_t line_end = editor->lines.items[row].end; - - // Capture the indentation of the current line in a local array - char indentation[128]; // Assuming 128 characters is enough for indentation - size_t indentIndex = 0; - for (size_t i = line_begin; i < line_end && indentIndex < sizeof(indentation) - 1; ++i) { - char c = editor->data.items[i]; - if (c == ' ' || c == '\t') { - indentation[indentIndex++] = c; - } else { - break; - } - } - indentation[indentIndex] = '\0'; // Null-terminate the string - - // Insert a newline at the beginning of the current line - editor_move_to_line_begin(editor); - editor_insert_char(editor, '\n'); - editor_move_line_up(editor); - - // Apply the captured indentation - for (size_t i = 0; i < indentIndex; ++i) { - editor_insert_char(editor, indentation[i]); - } -} - -void evil_jump_item(Editor *editor) { - if (editor->cursor >= editor->data.count) return; - - char current_char = editor->data.items[editor->cursor]; - ssize_t matching_pos = -1; - - // Check if the current cursor position is a parenthesis - if (strchr("()[]{}", current_char)) { - matching_pos = find_matching_parenthesis(editor, editor->cursor); - } else { - // If not, search for a parenthesis on the current line - size_t row = editor_cursor_row(editor); - size_t line_begin = editor->lines.items[row].begin; - size_t line_end = editor->lines.items[row].end; - - for (size_t pos = line_begin; pos < line_end; ++pos) { - current_char = editor->data.items[pos]; - if (strchr("()[]{}", current_char)) { - matching_pos = find_matching_parenthesis(editor, pos); - if (matching_pos != -1) { - break; - } - } - } - } - - // Move the cursor to the matching parenthesis - if (matching_pos != -1) { - editor->cursor = matching_pos; - } -} - -// TODO when there is a {} dont add the space -// TODO when animatins are off -// move the cursor to the added whitespace -void evil_join(Editor *e) { - size_t row = editor_cursor_row(e); - if (row >= e->lines.count - 1) return; - - // Get the current line and the next line - size_t current_line_end = e->lines.items[row].end; - size_t next_line_begin = e->lines.items[row + 1].begin; - size_t next_line_end = e->lines.items[row + 1].end; - - - // Check if the current line is empty or only has whitespaces - bool only_whitespaces = true; - for (size_t i = e->lines.items[row].begin; i < current_line_end; ++i) { - if (!isspace(e->data.items[i])) { - only_whitespaces = false; - break; - } - } - - if (only_whitespaces) { - // Current line is empty or has only whitespaces, delete the line - size_t length_to_move = e->data.count - current_line_end; - memmove(&e->data.items[e->lines.items[row].begin], - &e->data.items[next_line_begin], - length_to_move); - e->data.count -= (next_line_begin - e->lines.items[row].begin); - editor_retokenize(e); - return; - } - - // Check if the current line ends in a newline character - if (e->data.items[current_line_end] == '\n') { - // Skip leading spaces on the next line - while (next_line_begin < next_line_end && - isspace(e->data.items[next_line_begin])) { - next_line_begin++; - } - - // Calculate the length to move in memmove - size_t length_to_move = e->data.count - next_line_begin; - - // Move the data from the next line start to the current line end - memmove(&e->data.items[current_line_end + 1], - &e->data.items[next_line_begin], - length_to_move); - - // Adjust the total count of characters in the buffer - e->data.count -= (next_line_begin - current_line_end - 1); - - // Insert a single space to separate the lines - e->data.items[current_line_end] = ' '; - } - - editor_retokenize(e); -} - -void evil_yank_line(Editor* editor) { - size_t start = editor->cursor; - while (start > 0 && editor->data.items[start - 1] != '\n') { - start--; - } - - size_t end = start; - while (end < editor->data.count && editor->data.items[end] != '\n') { - end++; - } - - if (start < end) { - editor->clipboard.count = 0; - sb_append_buf(&editor->clipboard, &editor->data.items[start], end - start); - sb_append_null(&editor->clipboard); - - if (SDL_SetClipboardText(editor->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - } - copiedLine = true; -} - - -// TODO handle !copiedline not in the keybind and behave like vim -void evil_paste_after(Editor* editor) { - if (!copiedLine) { - return; // Do nothing if no line has been copied - } - - char *text = SDL_GetClipboardText(); - if (!text) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - return; - } - - size_t text_len = strlen(text); - if (text_len > 0) { - // Find the end of the current line - size_t end = editor->cursor; - while (end < editor->data.count && editor->data.items[end] != '\n') { - end++; - } - - // If not at the end of the file, move to the start of the next line - if (end < editor->data.count) { - end++; - } - - // Insert the text from the clipboard - editor_insert_buf_at(editor, text, text_len, end); - - // If the pasted text does not end with a newline, add one - if (text[text_len - 1] != '\n') { - editor_insert_buf_at(editor, "\n", 1, end + text_len); - } - - // Move cursor to the first non-space character of the pasted line - editor->cursor = end; - while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { - editor->cursor++; - } - } - - SDL_free(text); -} - -// TODO handle !copiedline not in the keybind and behave like vim -void evil_paste_before(Editor* editor) { - if (!copiedLine) { - return; // Do nothing if no line has been copied - } - - char *text = SDL_GetClipboardText(); - if (!text) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - return; - } - - size_t text_len = strlen(text); - if (text_len > 0) { - // Find the start of the current line - size_t start = editor->cursor; - while (start > 0 && editor->data.items[start - 1] != '\n') { - start--; - } - - // Insert the text from the clipboard at the start of the line - editor_insert_buf_at(editor, text, text_len, start); - - // Optionally, insert a newline after pasting if the text doesn't end with one - if (text[text_len - 1] != '\n') { - editor_insert_buf_at(editor, "\n", 1, start + text_len); - } - - // Move cursor to the first non-space character of the pasted line - editor->cursor = start; - while (editor->cursor < editor->data.count && editor->data.items[editor->cursor] == ' ') { - editor->cursor++; - } - } - - SDL_free(text); -} - -void evil_visual_char(Editor *e) { - e->selection = true; - - // Identify the current line the cursor is on - size_t cursor_row = editor_cursor_row(e); - Line current_line = e->lines.items[cursor_row]; - - // If in VISUAL_LINE mode, adjust the selection to span the entire line - if (current_mode == VISUAL_LINE) { - e->select_begin = current_line.begin; - - // Set the cursor to the end of the current line to span the whole line - e->cursor = current_line.end; - } else { - e->select_begin = e->cursor; - } -} - -// TODO doesn't work -void evil_visual_line(Editor *e) { - e->selection = true; - - // Identify the current line the cursor is on - size_t cursor_row = editor_cursor_row(e); - Line current_line = e->lines.items[cursor_row]; - - // Set the beginning and end of the selection to span the entire line - e->select_begin = current_line.begin; - e->cursor = current_line.end; -} - -void evil_delete_char(Editor *e) { - if (e->searching) return; - - if (e->cursor >= e->data.count) return; - - // Copy the character to clipboard. - e->clipboard.count = 0; - sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); - sb_append_null(&e->clipboard); - if (SDL_SetClipboardText(e->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - - // Delete the character from the editor. - memmove( - &e->data.items[e->cursor], - &e->data.items[e->cursor + 1], - (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) - ); - e->data.count -= 1; - editor_retokenize(e); -} - -void evil_delete_backward_char(Editor *e) { - // If in search mode or at the start of the data, return. - if (e->searching || e->cursor == 0) return; - - // Adjust the cursor to point to the previous character. - e->cursor -= 1; - - // 1. Copy the character to clipboard. - e->clipboard.count = 0; - sb_append_buf(&e->clipboard, &e->data.items[e->cursor], 1); - sb_append_null(&e->clipboard); - if (SDL_SetClipboardText(e->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - - // 2. Delete the character from the editor. - memmove( - &e->data.items[e->cursor], - &e->data.items[e->cursor + 1], - (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) - ); - e->data.count -= 1; - editor_retokenize(e); -} - - - -void evil_search_next(Editor *e) { - size_t startPos = e->cursor + 1; - for (size_t pos = startPos; pos < e->data.count; ++pos) { - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } - - // If not found in the remainder of the text, wrap around to the beginning - for (size_t pos = 0; pos < startPos; ++pos) { - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } -} - -void evil_search_previous(Editor *e) { - if (e->cursor == 0) { - // If we are at the beginning of the file, wrap around immediately - for (size_t pos = e->data.count - 1; pos != SIZE_MAX; --pos) { // Note the loop condition - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } - } else { - for (size_t pos = e->cursor - 1; pos != SIZE_MAX; --pos) { // Note the loop condition - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } - - // If not found in the preceding text, wrap around to the end - for (size_t pos = e->data.count - 1; pos > e->cursor; --pos) { - if (editor_search_matches_at(e, pos)) { - e->cursor = pos; - editor_stop_search_and_mark(e); - return; // Exit after finding a match - } - } - } -} - -void evil_search_word_forward(Editor *e) { - char word[256]; - - e->searching = true; - e->search.count = 0; - - // Extract the word under the cursor. - if (extract_word_under_cursor(e, word)) { - sb_append_buf(&e->search, word, strlen(word)); - editor_stop_search_and_mark(e); - evil_search_next(e); - } else { - // If no word is extracted, exit search mode - e->searching = false; - } -} - -void evil_change_line(Editor *e) { - if (e->searching || e->cursor >= e->data.count) return; - - size_t row = editor_cursor_row(e); - size_t line_begin = e->lines.items[row].begin; - size_t line_end = e->lines.items[row].end; - - // Calculate the position of the first non-whitespace character - size_t first_non_whitespace = line_begin; - while (first_non_whitespace < line_end && - (e->data.items[first_non_whitespace] == ' ' || e->data.items[first_non_whitespace] == '\t')) { - first_non_whitespace++; - } - - // Adjust line_end to stop at the semicolon, if it's the last character - if (line_end > first_non_whitespace && e->data.items[line_end - 1] == ';') { - line_end--; - } - - // Determine the start position for deletion - size_t delete_from = e->cursor < first_non_whitespace ? first_non_whitespace : e->cursor; - - // Calculate the length from the deletion start position to the end of the line - size_t length = line_end - delete_from; - - // Copy the text to be deleted to the clipboard - e->clipboard.count = 0; - sb_append_buf(&e->clipboard, &e->data.items[delete_from], length); - sb_append_null(&e->clipboard); - if (SDL_SetClipboardText(e->clipboard.items) < 0) { - fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); - } - - // Delete the text from the deletion start position to the end of the line - memmove(&e->data.items[delete_from], &e->data.items[line_end], e->data.count - line_end); - e->data.count -= length; - - // Set the cursor position to the first non-whitespace character if the cursor was on the whitespace - e->cursor = e->cursor < first_non_whitespace ? first_non_whitespace : e->cursor; - - current_mode = INSERT; - - editor_retokenize(e); -} - -// TODO can't find Capital chars -void evil_find_char(Editor *e, char target) { - if (e->searching || e->cursor >= e->data.count) return; - - size_t row = editor_cursor_row(e); - size_t line_begin = e->lines.items[row].begin; - size_t line_end = e->lines.items[row].end; - - // Start searching from the character right after the cursor position - size_t search_position = e->cursor + 1; - - while (search_position < line_end) { - if (e->data.items[search_position] == target) { - // If the target character is found, move the cursor to its position - e->cursor = search_position; - break; - } - search_position++; - } -} - -bool handle_evil_find_char(Editor *editor, SDL_Event *event) { - static bool waitingForFindChar = false; // Static variable inside the function - - if (waitingForFindChar) { - // Call evil_find_char with the pressed key - evil_find_char(editor, event->key.keysym.sym); - waitingForFindChar = false; - editor->last_stroke = SDL_GetTicks(); - return true; // The key event has been handled - } else if (event->key.keysym.sym == SDLK_f && !(SDL_GetModState() & KMOD_CTRL)) { - waitingForFindChar = true; - editor->last_stroke = SDL_GetTicks(); - return false; // The key event has not been fully handled yet - } - return false; // The key event has not been fully handled -} - - - -void evil_substitute(Editor *e) { - if (e->searching) return; // Check if editor is in search mode - - if (e->selection) { - // If there is an active selection, delete the selected text - editor_delete_selection(e); - } else if (e->cursor < e->data.count) { - // If no selection and cursor is within bounds, delete the character at cursor - memmove(&e->data.items[e->cursor], - &e->data.items[e->cursor + 1], - (e->data.count - e->cursor - 1) * sizeof(e->data.items[0])); - e->data.count -= 1; - } - - // Switch to insert mode - current_mode = INSERT; - - // Re-tokenize if needed - editor_retokenize(e); -} - - - -void evil_change_whole_line(Editor *e) { - if (e->searching || e->cursor >= e->data.count) return; - - size_t row = editor_cursor_row(e); - size_t line_begin = e->lines.items[row].begin; - size_t line_end = e->lines.items[row].end; - - // Find the first non-whitespace character - size_t first_non_whitespace = line_begin; - while (first_non_whitespace < line_end && - (e->data.items[first_non_whitespace] == ' ' || e->data.items[first_non_whitespace] == '\t')) { - first_non_whitespace++; - } - - // If entire line is whitespace, first_non_whitespace will be line_end - if (first_non_whitespace < line_end) { - // Delete from the first non-whitespace character to the end of the line - size_t length = line_end - first_non_whitespace; - memmove(&e->data.items[first_non_whitespace], - &e->data.items[line_end], - e->data.count - line_end); - e->data.count -= length; - - // Set cursor to the first non-whitespace character - e->cursor = first_non_whitespace; - } else { - // If the line is all whitespace, just place the cursor at the end - e->cursor = line_end; - } - - // Switch to insert mode - current_mode = INSERT; - - // Re-tokenize if needed - editor_retokenize(e); -} - - - - -void evil_insert_line(Editor *e) { - size_t row = editor_cursor_row(e); - size_t line_begin = e->lines.items[row].begin; - size_t line_end = e->lines.items[row].end; - size_t first_non_whitespace = find_first_non_whitespace(e->data.items, line_begin, line_end); - e->cursor = first_non_whitespace; - current_mode = INSERT; -} diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.c.blob deleted file mode 100644 index 7d89e416dd724a8da0e16a09c5f7d6709415ca73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36810 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 OcVR2C>asq??EV{|N+JjV diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h deleted file mode 100644 index e3e63f99..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef EVIL_H -#define EVIL_H - -#include "editor.h" - - -void evil_open_below(Editor *editor); -void evil_open_above(Editor *editor); -void evil_jump_item(Editor *editor); -void evil_jump_item(Editor *editor); -void evil_join(Editor *e); -void evil_yank_line(Editor *editor); -void evil_paste_after(Editor *editor); -void evil_paste_before(Editor *editor); -void evil_visual_char(Editor *e); -void evil_visual_line(Editor *e); -void evil_delete_char(Editor *e); -void evil_delete_backward_char(Editor *e); -void evil_search_next(Editor *e); -void evil_search_previous(Editor *e); -void evil_search_word_forward(Editor *e); -void evil_change_line(Editor *e); -void evil_find_char(Editor *e, char target); -bool handle_evil_find_char(Editor *editor, SDL_Event *event); -void evil_substitute(Editor *e); -void evil_change_whole_line(Editor *e); -void evil_insert_line(Editor *e); - -#endif // EVIL_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@evil.h.blob deleted file mode 100644 index 94d22cbf4afad2464ef76ea2cdc2d2ad5cc2788b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15639 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 G4gMeMF(=*t diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h b/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h deleted file mode 100644 index bf16441f..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h +++ /dev/null @@ -1,41 +0,0 @@ -#ifndef FILE_BROWSER_H_ -#define FILE_BROWSER_H_ - -#include "common.h" -#include "free_glyph.h" - -#include <SDL2/SDL.h> - -#include <stdbool.h> - -#include <limits.h> - -typedef struct { - Files files; - size_t cursor; - String_Builder dir_path; - String_Builder file_path; - String_Builder file_extension; - - // for file creation mode - bool is_in_file_creation_mode; - char tmp_filename[PATH_MAX]; - size_t tmp_filename_len; - -} File_Browser; - -Errno fb_open_dir(File_Browser *fb, const char *dir_path); -Errno fb_change_dir(File_Browser *fb); -void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr); - -const char *fb_file_path(File_Browser *fb); - -Errno fb_go_to_parent(File_Browser *fb); - -// ADDED -void extract_file_extension(const char *filename, String_Builder *ext); -void expand_path(const char *original_path, char *expanded_path, size_t expanded_path_size); - - - -#endif // FILE_BROWSER_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@file_browser.h.blob deleted file mode 100644 index 99a3b2f60d75e5d238a21e8710f6e8cc0d35a0e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15829 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 W0_#M3#Lm<;Q-_Gqxv4{9?EF8=UwZQZ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h b/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h deleted file mode 100644 index 24631e86..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef FREE_GLYPH_H_ -#define FREE_GLYPH_H_ - -#include <stdlib.h> -#include "./la.h" - -#define GLEW_STATIC -#include <GL/glew.h> - -#define GL_GLEXT_PROTOTYPES -#include <SDL2/SDL_opengl.h> - -#include <ft2build.h> -#include FT_FREETYPE_H - -#include "simple_renderer.h" - -#define FREE_GLYPH_FONT_SIZE 64 - -// https://en.wikibooks.org/wiki/OpenGL_Programming/Modern_OpenGL_Tutorial_Text_Rendering_02 - -typedef struct { - float ax; // advance.x - float ay; // advance.y - - float bw; // bitmap.width; - float bh; // bitmap.rows; - - float bl; // bitmap_left; - float bt; // bitmap_top; - - float tx; // x offset of glyph in texture coordinates -} Glyph_Metric; - -/* #define GLYPH_METRICS_CAPACITY 128 */ -#define GLYPH_METRICS_CAPACITY 6400 - -typedef struct { - FT_UInt atlas_width; - FT_UInt atlas_height; - GLuint glyphs_texture; - Glyph_Metric metrics[GLYPH_METRICS_CAPACITY]; -} Free_Glyph_Atlas; - -void free_glyph_atlas_init(Free_Glyph_Atlas *atlas, FT_Face face); -float free_glyph_atlas_cursor_pos(const Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f pos, size_t col); -void free_glyph_atlas_measure_line_sized(Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f *pos); -void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, const char *text, size_t text_size, Vec2f *pos, Vec4f color); - -// ADDED - -float free_glyph_atlas_measure_line_width(Free_Glyph_Atlas *atlas, const char *text, size_t text_size); - -#endif // FREE_GLYPH_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@free_glyph.h.blob deleted file mode 100644 index 53262b92c2cf615c37eb260f69809e9c9a8fa36b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16850 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 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h b/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h deleted file mode 100644 index 3ae8b519..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef HASHMAP_H -#define HASHMAP_H - -#include <stdbool.h> -#include <stddef.h> -#include <stdint.h> - -struct hashmap; - -struct hashmap *hashmap_new(size_t elsize, size_t cap, uint64_t seed0, - uint64_t seed1, - uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1), - int (*compare)(const void *a, const void *b, void *udata), - void (*elfree)(void *item), - void *udata); - -struct hashmap *hashmap_new_with_allocator(void *(*malloc)(size_t), - void *(*realloc)(void *, size_t), void (*free)(void*), size_t elsize, - size_t cap, uint64_t seed0, uint64_t seed1, - uint64_t (*hash)(const void *item, uint64_t seed0, uint64_t seed1), - int (*compare)(const void *a, const void *b, void *udata), - void (*elfree)(void *item), - void *udata); - -void hashmap_free(struct hashmap *map); -void hashmap_clear(struct hashmap *map, bool update_cap); -size_t hashmap_count(struct hashmap *map); -bool hashmap_oom(struct hashmap *map); -const void *hashmap_get(struct hashmap *map, const void *item); -const void *hashmap_set(struct hashmap *map, const void *item); -const void *hashmap_delete(struct hashmap *map, const void *item); -const void *hashmap_probe(struct hashmap *map, uint64_t position); -bool hashmap_scan(struct hashmap *map, bool (*iter)(const void *item, void *udata), void *udata); -bool hashmap_iter(struct hashmap *map, size_t *i, void **item); - -uint64_t hashmap_sip(const void *data, size_t len, uint64_t seed0, uint64_t seed1); -uint64_t hashmap_murmur(const void *data, size_t len, uint64_t seed0, uint64_t seed1); -uint64_t hashmap_xxhash3(const void *data, size_t len, uint64_t seed0, uint64_t seed1); - -const void *hashmap_get_with_hash(struct hashmap *map, const void *key, uint64_t hash); -const void *hashmap_delete_with_hash(struct hashmap *map, const void *key, uint64_t hash); -const void *hashmap_set_with_hash(struct hashmap *map, const void *item, uint64_t hash); -void hashmap_set_grow_by_power(struct hashmap *map, size_t power); -void hashmap_set_load_factor(struct hashmap *map, double load_factor); - - -// DEPRECATED: use `hashmap_new_with_allocator` -void hashmap_set_allocator(void *(*malloc)(size_t), void (*free)(void*)); - -#endif diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@hashmap.h.blob deleted file mode 100644 index eac9d87877fdb708f561b403560c403c7db7df60..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20017 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 Re>fT5gBXR!!e#x>{{fNv;Di7G diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c deleted file mode 100644 index 09c3e39f..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c +++ /dev/null @@ -1,105 +0,0 @@ -#include <stdlib.h> -#include <time.h> -#include "helix.h" -#include "editor.h" -#include "theme.h" - -void helix_mode() { - if (current_mode != HELIX) { - current_mode = HELIX; - switch_to_theme(&currentThemeIndex, 7); - targetModelineHeight = 21.0f; - targetMinibufferHeight = 0.0f; - } else { - current_mode = NORMAL; - targetModelineHeight = 35.0f; - targetMinibufferHeight = 21.0f; - srand(time(NULL)); - - int randomThemeIndex; - do { - randomThemeIndex = rand() % 8; - } while (randomThemeIndex == 7); // Ensure the random theme is not Helix - - switch_to_theme(&currentThemeIndex, randomThemeIndex); - } - - minibufferAnimationProgress = 0.0f; - isModelineAnimating = true; - isMinibufferAnimating = true; -} - -void update_cursor_color(Editor *editor) { - // Check for no text - if (editor == NULL || editor->data.items == NULL || editor->data.count == 0) { - // Handle the error or return with a default color - currentTheme.cursor = themes[currentThemeIndex].notext_cursor; - return; - } - - size_t cursor_pos = editor->cursor; - - // check if cursor is at EOF - if (cursor_pos >= editor->data.count) { - currentTheme.cursor = themes[currentThemeIndex].EOF_cursor; - return; - } - - // Check if the cursor is on a whitespace - if (isspace(editor->data.items[cursor_pos])) { - currentTheme.cursor = themes[currentThemeIndex].cursor; - return; - } - - size_t current_pos = 0; - size_t token_index = 0; // Current token being processed - - while (current_pos < editor->data.count && token_index < editor->tokens.count) { - Token token = editor->tokens.items[token_index]; - size_t token_end = current_pos + token.text_len; - - // Check if the cursor is within the current token - if (cursor_pos >= current_pos && cursor_pos < token_end) { - Vec4f color = get_color_for_token_kind(token.kind); - currentTheme.cursor = color; - return; - } else { - currentTheme.cursor = currentTheme.text; - } - - // Advance to the next token or character - if (cursor_pos < token_end || strncmp(&editor->data.items[current_pos], token.text, token.text_len) == 0) { - current_pos = token_end; // Skip over the token - token_index++; // Move to the next token - } else { - current_pos++; // Move to the next character - } - } -} - - - - -Vec4f get_color_for_token_kind(Token_Kind kind) { - switch (kind) { - case TOKEN_KEYWORD: return currentTheme.logic; - case TOKEN_STRING: return currentTheme.string; - case TOKEN_TYPE: return currentTheme.type; - case TOKEN_PIPE: return currentTheme.pipe; - case TOKEN_TRUE: return currentTheme.truee; - case TOKEN_FALSE: return currentTheme.falsee; - case TOKEN_NULL: return currentTheme.null; - case TOKEN_PREPROC: return currentTheme.hashtag; - case TOKEN_POINTER: return currentTheme.pointer; - case TOKEN_EQUALS: return currentTheme.equals; - case TOKEN_GREATER_THAN: return currentTheme.greater_than; - case TOKEN_LESS_THAN: return currentTheme.less_than; - case TOKEN_EQUALS_EQUALS: return currentTheme.equals_equals; - case TOKEN_COMMENT: return currentTheme.comment; - case TOKEN_ARROW: return currentTheme.arrow; - case TOKEN_FUNCTION_DEFINITION: return currentTheme.function_definition; - case TOKEN_ARRAY_CONTENT: return currentTheme.array_content; - default: return currentTheme.cursor; - } -} - diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.c.blob deleted file mode 100644 index e186078b212cc89c4a1b0e0edc380a8a2ef2f00a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15904 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 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h deleted file mode 100644 index 24d0cd57..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef HELIX_H -#define HELIX_H - -#include "editor.h" - -void helix_mode(); -void update_cursor_color(Editor *editor); -Vec4f get_color_for_token_kind(Token_Kind kind); - -#endif // HELIX_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@helix.h.blob deleted file mode 100644 index b802b66bce40de1ef28f2bc34a2a756a91266c9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12864 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 EKPs228~^|S diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@la.h b/.ccls-cache/@home@l@Desktop@test@ded/src@la.h deleted file mode 100644 index e931fe27..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@la.h +++ /dev/null @@ -1,41 +0,0 @@ -#ifndef LA_H_ -#define LA_H_ - -typedef struct { - float x, y; -} Vec2f; - -Vec2f vec2f(float x, float y); -Vec2f vec2fs(float x); -Vec2f vec2f_add(Vec2f a, Vec2f b); -Vec2f vec2f_sub(Vec2f a, Vec2f b); -Vec2f vec2f_mul(Vec2f a, Vec2f b); -Vec2f vec2f_mul3(Vec2f a, Vec2f b, Vec2f c); -Vec2f vec2f_div(Vec2f a, Vec2f b); - -typedef struct { - int x, y; -} Vec2i; - -Vec2i vec2i(int x, int y); -Vec2i vec2is(int x); -Vec2i vec2i_add(Vec2i a, Vec2i b); -Vec2i vec2i_sub(Vec2i a, Vec2i b); -Vec2i vec2i_mul(Vec2i a, Vec2i b); -Vec2i vec2i_mul3(Vec2i a, Vec2i b, Vec2i c); -Vec2i vec2i_div(Vec2i a, Vec2i b); - -typedef struct { - float x, y, z, w; -} Vec4f; - -Vec4f vec4f(float x, float y, float z, float w); -Vec4f vec4fs(float x); -Vec4f vec4f_add(Vec4f a, Vec4f b); -Vec4f vec4f_sub(Vec4f a, Vec4f b); -Vec4f vec4f_mul(Vec4f a, Vec4f b); -Vec4f vec4f_div(Vec4f a, Vec4f b); - -float lerpf(float a, float b, float t); - -#endif // LA_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@la.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@la.h.blob deleted file mode 100644 index 5c10933afe40dc07fef0dd574a2e47d6f2d5a937..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17730 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 AaR2}S diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h b/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h deleted file mode 100644 index 3a379bc8..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h +++ /dev/null @@ -1,79 +0,0 @@ -#ifndef LEXER_H_ -#define LEXER_H_ - -#include <stddef.h> -#include "./la.h" -#include "./free_glyph.h" -#include "./common.h" - -typedef enum { - TOKEN_END = 0, - TOKEN_INVALID, - TOKEN_PREPROC, - TOKEN_SYMBOL, - TOKEN_OPEN_PAREN, - TOKEN_CLOSE_PAREN, - TOKEN_OPEN_CURLY, - TOKEN_CLOSE_CURLY, - TOKEN_SEMICOLON, - TOKEN_KEYWORD, - TOKEN_COMMENT, - TOKEN_STRING, - TOKEN_COLOR, - TOKEN_EQUALS, - TOKEN_NOT_EQUALS, - TOKEN_EQUALS_EQUALS, - TOKEN_EXCLAMATION, - TOKEN_LESS_THAN, - TOKEN_GREATER_THAN, - TOKEN_ARROW, - TOKEN_MINUS, - TOKEN_PLUS, - TOKEN_TRUE, - TOKEN_FALSE, - TOKEN_OPEN_SQUARE, - TOKEN_CLOSE_SQUARE, - TOKEN_ARRAY_CONTENT, - TOKEN_BAD_SPELLCHECK, - TOKEN_LINK, - TOKEN_OR, - TOKEN_PIPE, - TOKEN_AND, - TOKEN_AMPERSAND, - TOKEN_MULTIPLICATION, - TOKEN_POINTER, - TOKEN_TYPE, - TOKEN_FUNCTION_DEFINITION, - TOKEN_NULL, - } Token_Kind; - -const char *token_kind_name(Token_Kind kind); - - -// TODO add a size_t position -typedef struct { - Token_Kind kind; - const char *text; - size_t text_len; - Vec2f position; - int nesting_level; // TODO - Vec4f color; // <-- New attribute -} Token; - -typedef struct { - Free_Glyph_Atlas *atlas; - const char *content; - size_t content_len; - size_t cursor; - size_t line; - size_t bol; - float x; - String_Builder file_path; - bool in_array; // to remember if we are inside an array -} Lexer; - -Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len); -/* Lexer lexer_new(Free_Glyph_Atlas *atlas, const char *content, size_t content_len, String_Builder file_path); */ -Token lexer_next(Lexer *l); - -#endif // LEXER_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@lexer.h.blob deleted file mode 100644 index ae71d6a6af07c3c8fbc40eac848bbe9490786cc5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18004 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 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h b/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h deleted file mode 100644 index cb1efebe..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef LSP_H_ -#define LSP_H_ - -#include "file_browser.h" -#include "editor.h" -#include <pthread.h> - -// Struct to store LSP response -typedef struct { - int id; - char *method; - char *params; -} LSPResponse; - -extern pthread_t receive_thread; - - -/* void start_clangd(); */ -void start_clangd(Editor *e); -/* void shutdown_clangd(); */ -void shutdown_clangd(Editor *e); -/* void send_json_rpc(const char* method, const char* params, int request_id); */ -void send_json_rpc(int fd, const char* method, const char* params, int request_id); -void* receive_json_rpc(void* arg); -void goto_definition(Editor *e, File_Browser *fb); -void handle_lsp_response(LSPResponse *response, Editor *e); -void convert_uri_to_file_path(const char *uri, char *file_path, size_t file_path_size); -char *url_decode(const char *str); -void get_current_file_uri(Editor *e, File_Browser *fb, char *file_uri, size_t uri_size); -void parse_lsp_response(const char *response_json, LSPResponse *response); - - - - -void send_did_open_notification(Editor *e, const char *file_uri, const char *file_content); -void send_initialize_request(Editor *e); -void send_initialized_notification(Editor * e); - -#endif // LSP_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@lsp.h.blob deleted file mode 100644 index 9033087615cc0bfa057631a9bfad3337cd1dfeb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16245 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 MOzNJ(Swian0Y6~@O8@`> diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@main.c b/.ccls-cache/@home@l@Desktop@test@ded/src@main.c deleted file mode 100644 index 62313495..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@main.c +++ /dev/null @@ -1,2434 +0,0 @@ -#include <SDL2/SDL_keyboard.h> -#include <SDL2/SDL_keycode.h> -#include <stdio.h> -#include <stdlib.h> -#include <stdbool.h> -#include <errno.h> -#include <string.h> -#include "common.h" -#include "helix.h" - -#include <dirent.h> - -#include <SDL2/SDL.h> -#define GLEW_STATIC -#include <GL/glew.h> -#define GL_GLEXT_PROTOTYPES -#include <SDL2/SDL_opengl.h> - -#include <ft2build.h> -#include FT_FREETYPE_H - -#include "./editor.h" -#include "./file_browser.h" -#include "./la.h" -#include "./free_glyph.h" -#include "./simple_renderer.h" -#include "./common.h" -#include "./lexer.h" -#include "./sv.h" - -// added -#include <libgen.h> -#include <limits.h> -#include <stdbool.h> -#include "yasnippet.h" -#include "render.h" -#include "evil.h" -#include "emacs.h" -#include "buffer.h" -#include "theme.h" -#include "unistd.h" -#include "M-x.h" -#include "lsp.h" -#include "treesitter.h" -#include "clock.h" - -#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) - -#define FONT_DIR "~/.config/ded/fonts/" -/* #define DEFAULT_FONT "jet-extra-bold.ttf" */ -#define DEFAULT_FONT "radon.otf" -/* #define DEFAULT_FONT "minecraft.ttf" */ -/* #define DEFAULT_FONT "iosevka-regular.ttf" */ -#define MAX_FONTS 20 -#define MAX_PATH_SIZE 1024 - -char *fonts[MAX_FONTS]; -int font_count = 0; -int current_font_index = 0; - - -// TODO: Save file dialog -// Needed when ded is ran without any file so it does not know where to save. - -// TODO: An ability to create a new file -// TODO: Undo/redo system -// DONE: Delete a word -// DONE: Delete selection -void MessageCallback(GLenum source, - GLenum type, - GLuint id, - GLenum severity, - GLsizei length, - const GLchar* message, - const void* userParam) -{ - (void) source; - (void) id; - (void) length; - (void) userParam; - fprintf(stderr, "GL CALLBACK: %s type = 0x%x, severity = 0x%x, message = %s\n", - (type == GL_DEBUG_TYPE_ERROR ? "** GL ERROR **" : ""), - type, severity, message); -} - -static Free_Glyph_Atlas atlas = {0}; -static Simple_Renderer sr = {0}; -static Editor editor = {0}; -static File_Browser fb = {0}; - - -FT_Face load_font_face(FT_Library library, const char *font_name, FT_UInt pixel_size) { - printf("Loading font: %s at index: %d\n", font_name, current_font_index); - char font_path[MAX_PATH_SIZE]; - const char *homeDir = getenv("HOME"); - snprintf(font_path, sizeof(font_path), "%s/.config/ded/fonts/%s", homeDir, font_name); - - FT_Face face; - FT_Error error = FT_New_Face(library, font_path, 0, &face); - if (error == FT_Err_Unknown_File_Format) { - fprintf(stderr, "ERROR: `%s` has an unknown format\n", font_path); - exit(1); - } else if (error) { - fprintf(stderr, "ERROR: Could not load file `%s`\n", font_path); - exit(1); - } - - error = FT_Set_Pixel_Sizes(face, 0, pixel_size); // Set pixel size for the loaded font face - if (error) { - fprintf(stderr, "ERROR: Could not set pixel size to %u\n", pixel_size); - return NULL; // or handle the error in a different way - } - - return face; -} - -void prev_font() { - if (current_font_index == 0) { - // Already at the first font, don't do anything. - return; - } - current_font_index--; -} - -void next_font() { - if (current_font_index == font_count - 1) { - // Already at the last font, don't do anything. - return; - } - current_font_index++; -} - - -void populate_font_list() { - char path[MAX_PATH_SIZE]; - const char *homeDir = getenv("HOME"); - if (!homeDir) { - fprintf(stderr, "ERROR: Could not get HOME directory\n"); - exit(1); - } - - snprintf(path, sizeof(path), "%s/.config/ded/fonts/", homeDir); - - DIR *dir = opendir(path); - if (!dir) { - fprintf(stderr, "ERROR: Could not open directory `%s`\n", path); - exit(1); - } - - struct dirent *entry; - while ((entry = readdir(dir)) && font_count < MAX_FONTS) { - if (entry->d_type == DT_REG) { // If the entry is a regular file - fonts[font_count] = strdup(entry->d_name); - font_count++; - } - } - closedir(dir); -} - -void switch_to_font(FT_Library library, FT_Face *currentFace, Free_Glyph_Atlas *atlas, int direction) { - if (direction > 0) { - next_font(); - } else { - prev_font(); - } - /* *currentFace = load_font_face(library, fonts[current_font_index]); */ - *currentFace = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); - - - // Dispose the old texture - /* glDeleteTextures(1, &atlas->glyphs_texture); */ - - // Reinitialize the atlas with the new font face - free_glyph_atlas_init(atlas, *currentFace); -} - -// TODO: display errors reported via flash_error right in the text editor window somehow -#define flash_error(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0) - -#include <signal.h> - -int main(int argc, char **argv) -{ - set_current_mode(); - initialize_themes(); - initialize_shader_paths(); - load_snippets_from_directory(); - - init_clock(); - - // lsp - start_clangd(&editor); - /* pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); */ - - - dictionary = load_dictionary("./dictionary", &dictionary_word_count); - if (!dictionary) { - // Handle error... - } - - - // Define hash seeds (these could be randomly generated for more robustness) - uint64_t seed0 = 0x12345678; - uint64_t seed1 = 0x9ABCDEF0; - - uint64_t seed2 = 0x1E7EDAD0; - uint64_t seed3 = 0x3E8A3D59; - - initialize_variable_docs_map(seed2, seed3); - initialize_variable_documentation(); - - // Allocate and initialize the commands hashmap - editor.commands = hashmap_new( - sizeof(Command), // Size of each element - 16, // Initial capacity - seed0, seed1, // Hash seeds - simple_string_hash, // Hash function - command_compare, // Compare function (you need to define this based on your Command struct) - NULL, // Element free function (NULL if not needed) - NULL // User data for compare function (NULL if not needed) - ); - - if (!editor.commands) { - // Handle allocation failure - fprintf(stderr, "Failed to initialize command map\n"); - return -1; - } - - initialize_commands(editor.commands); - - - Errno err; - - FT_Library library = {0}; - - FT_Error error = FT_Init_FreeType(&library); - if (error) { - fprintf(stderr, "ERROR: Could not initialize FreeType2 library\n"); - return 1; - } - - // TODO: users should be able to customize the font - /* const char *const font_file_path = "./fonts/VictorMono-Regular.ttf"; */ - /* const char *const font_file_path = "./fonts/jet-bold.ttf"; */ - /* const char *const font_file_path = "~/.config/ded/fonts/jet-extra-bold.ttf"; */ - /* const char *const font_file_path = "./fonts/iosevka-regular.ttf"; */ - - - /* char font_file_path_buffer[1024]; */ - /* const char *homeDir = getenv("HOME"); */ - /* if (homeDir) { */ - /* snprintf(font_file_path_buffer, sizeof(font_file_path_buffer), "%s/.config/ded/fonts/minecraft_font.ttf", homeDir); */ - /* } else { */ - /* // handle the error, for now, we'll just set it to the original value as a fallback */ - /* strncpy(font_file_path_buffer, "~/.config/ded/fonts/jet-extra-bold.ttf", sizeof(font_file_path_buffer)); */ - /* } */ - /* const char *const font_file_path = font_file_path_buffer; */ - - - - populate_font_list(); - - if (font_count == 0) { - fprintf(stderr, "ERROR: No fonts found in `%s`\n", FONT_DIR); - return 1; - } - - // Start with the default font - for (int i = 0; i < font_count; i++) { - if (strcmp(fonts[i], DEFAULT_FONT) == 0) { - current_font_index = i; - break; - } - } - - /* FT_Face face = load_font_face(library, fonts[current_font_index]); */ - FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); - - - /* original */ - /* FT_Face face; */ - /* error = FT_New_Face(library, font_file_path, 0, &face); */ - /* if (error == FT_Err_Unknown_File_Format) { */ - /* fprintf(stderr, "ERROR: `%s` has an unknown format\n", font_file_path); */ - /* return 1; */ - /* } else if (error) { */ - /* fprintf(stderr, "ERROR: Could not load file `%s`\n", font_file_path); */ - /* return 1; */ - /* } */ - - - FT_UInt pixel_size = FREE_GLYPH_FONT_SIZE; - error = FT_Set_Pixel_Sizes(face, 0, pixel_size); - if (error) { - fprintf(stderr, "ERROR: Could not set pixel size to %u\n", pixel_size); - return 1; - } - - if (argc > 1) { - const char *file_path = argv[1]; - err = find_file(&editor, file_path, 0, 0); - if (err != 0) { - fprintf(stderr, "ERROR: Could not read file %s: %s\n", file_path, strerror(err)); - return 1; - } - } - - const char *dir_path = "."; - err = fb_open_dir(&fb, dir_path); - if (err != 0) { - fprintf(stderr, "ERROR: Could not read directory %s: %s\n", dir_path, strerror(err)); - return 1; - } - - if (SDL_Init(SDL_INIT_VIDEO) < 0) { - fprintf(stderr, "ERROR: Could not initialize SDL: %s\n", SDL_GetError()); - return 1; - } - - SDL_Window *window = - SDL_CreateWindow("ded", - 0, 0, - SCREEN_WIDTH, SCREEN_HEIGHT, - SDL_WINDOW_RESIZABLE | SDL_WINDOW_OPENGL); - if (window == NULL) { - fprintf(stderr, "ERROR: Could not create SDL window: %s\n", SDL_GetError()); - return 1; - } - - { - SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3); - SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 3); - SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE); - - int major; - int minor; - SDL_GL_GetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, &major); - SDL_GL_GetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, &minor); - printf("GL version %d.%d\n", major, minor); - } - - if (SDL_GL_CreateContext(window) == NULL) { - fprintf(stderr, "ERROR: Could not create OpenGL context: %s\n", SDL_GetError()); - return 1; - } - - GLenum glewErr = glewInit(); - if (GLEW_OK != glewErr) { - fprintf(stderr, "ERROR: Could not initialize GLEW: %s\n", glewGetErrorString(glewErr)); - return 1; - } - - glEnable(GL_BLEND); - glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); - - if (GLEW_ARB_debug_output) { - glEnable(GL_DEBUG_OUTPUT); - glDebugMessageCallback(MessageCallback, 0); - } else { - fprintf(stderr, "WARNING: GLEW_ARB_debug_output is not available"); - } - - simple_renderer_init(&sr); - free_glyph_atlas_init(&atlas, face); - - editor.atlas = &atlas; - editor_retokenize(&editor); - - - /* bool quit = false; */ - bool file_browser = false; - - while (!quit) { - const Uint32 start = SDL_GetTicks(); - SDL_Event event = {0}; - while (SDL_PollEvent(&event)) { - switch (event.type) { - case SDL_QUIT: - quit = true; - break; - - case SDL_KEYDOWN: - if (current_mode == NORMAL) { - if (handle_evil_find_char(&editor, &event)) { - break; // Skip further processing if the key event was handled - } - } - - if (file_browser) { - switch (event.key.keysym.sym) { - case SDLK_F3: { - file_browser = false; - } break; - - case SDLK_RETURN: { - const char *file_path = fb_file_path(&fb); - if (file_path) { - File_Type ft; - err = type_of_file(file_path, &ft); - if (err != 0) { - flash_error("Could not determine type of file %s: %s", file_path, strerror(err)); - } else { - switch (ft) { - case FT_DIRECTORY: { - err = fb_change_dir(&fb); - if (err != 0) { - flash_error("Could not change directory to %s: %s", file_path, strerror(err)); - } - } - break; - - case FT_REGULAR: { - // TODO: before opening a new file make sure you don't have unsaved changes - // And if you do, annoy the user about it. (just like all the other editors do) - err = find_file(&editor, file_path, 0, 0); - if (err != 0) { - flash_error("Could not open file %s: %s", file_path, strerror(err)); - } else { - file_browser = false; - } - } - break; - - case FT_OTHER: { - flash_error("%s is neither a regular file nor a directory. We can't open it.", file_path); - } - break; - - default: - UNREACHABLE("unknown File_Type"); - } - } - } - } - break; - - case SDLK_EQUALS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed - theme_next(&currentThemeIndex); - printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor -= 0.8f; - if (zoom_factor < min_zoom_factor) { - zoom_factor = min_zoom_factor; - } - } - } break; - - case SDLK_MINUS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed - theme_previous(&currentThemeIndex); - printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor += 0.8f; - if (zoom_factor > max_zoom_factor) { - zoom_factor = max_zoom_factor; - } - } - } break; - - case SDLK_q: - case SDLK_ESCAPE: { - file_browser = false; - } break; - - - case SDLK_r: - if (event.key.keysym.mod & KMOD_CTRL) { - file_browser = false; - } - break; - - - case SDLK_F5: { - simple_renderer_reload_shaders(&sr); - } - break; - - case SDLK_UP: { - if (fb.cursor > 0) - fb.cursor -= 1; - } break; - - case SDLK_k: { - if (fb.cursor > 0) - fb.cursor -= 1; - } break; - - case SDLK_DOWN: { - if (fb.cursor + 1 < fb.files.count) - fb.cursor += 1; - } break; - - case SDLK_j: { - if (fb.cursor + 1 < fb.files.count) - fb.cursor += 1; - } break; - - // TODO cant go back more than the original direcory - case SDLK_h: { - // Copy current directory path - char current_dir[PATH_MAX]; - strncpy(current_dir, fb.dir_path.items, fb.dir_path.count); - current_dir[fb.dir_path.count - 1] = '\0'; // Ensure null-termination - - // Get parent directory - char *parent = dirname(current_dir); - - // Open parent directory - Errno err = fb_open_dir(&fb, parent); - if (err != 0) { - // Handle error, for example, print out an error message. - } else { - fb.cursor = 0; // Reset cursor position in the new directory - } - } break; - - case SDLK_t: { - if (SDL_GetModState() & KMOD_CTRL) { - followCursor = !followCursor; // Toggle the state - } - } - break; - - - case SDLK_l: { - const char *file_path = fb_file_path(&fb); - if (file_path) { - File_Type ft; - err = type_of_file(file_path, &ft); - if (err != 0) { - flash_error("Could not determine type of file %s: %s", - file_path, strerror(err)); - } else { - switch (ft) { - case FT_DIRECTORY: { - err = fb_change_dir(&fb); - if (err != 0) { - flash_error("Could not change directory to %s: %s", - file_path, strerror(err)); - } - } break; - - case FT_REGULAR: { - // TODO: before opening a new file make sure you don't - // have unsaved changes And if you do, annoy the user - // about it. (just like all the other editors do) - err = find_file(&editor, file_path, 0, 0); - if (err != 0) { - flash_error("Could not open file %s: %s", file_path, - strerror(err)); - } else { - file_browser = false; - } - } break; - - case FT_OTHER: { - flash_error("%s is neither a regular file nor a " - "directory. We can't open it.", - file_path); - } break; - - default: - UNREACHABLE("unknown File_Type"); - } - } - } - } - break; - } - } else { - switch (current_mode) { - case EMACS: - // TODO add all keybinds - switch (event.key.keysym.sym) { - - - case SDLK_z: { - if (SDL_GetModState() & KMOD_CTRL) { - current_mode = NORMAL; - editor.last_stroke = SDL_GetTicks(); - } - } - break; - - - case SDLK_BACKSPACE: - if (event.key.keysym.mod & KMOD_CTRL) { - emacs_backward_kill_word(&editor); - editor.last_stroke = SDL_GetTicks(); - }else{ - editor_backspace(&editor); - editor.last_stroke = SDL_GetTicks(); - } - break; - - - case SDLK_t: { - if (SDL_GetModState() & KMOD_CTRL) { - followCursor = !followCursor; // Toggle the state - } - } - break; - - // TODO check if the snippet activated if not indent - case SDLK_TAB: { - activate_snippet(&editor); - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(&editor, ' '); - } - editor.last_stroke = SDL_GetTicks(); - } - break; - - case SDLK_r: - if (event.key.keysym.mod & KMOD_CTRL) { - file_browser = true; - } - break; - - case SDLK_n: { - if (SDL_GetModState() & KMOD_CTRL) { - editor_move_line_down(&editor); - editor.last_stroke = SDL_GetTicks(); - } - } break; - - case SDLK_p: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - - case SDLK_v: - if (SDL_GetModState() & KMOD_CTRL){ - editor_clipboard_paste(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - - case SDLK_b: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_char_left(&editor); - } else { - editor_move_word_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - - case SDLK_RETURN: { - editor_enter(&editor); - } - break; - - - case SDLK_EQUALS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed - theme_next(&currentThemeIndex); - printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor -= 1.0f; - if (zoom_factor < min_zoom_factor) { - zoom_factor = min_zoom_factor; - } - printf("zoom_factor: %.6f", zoom_factor); - } - } break; - - case SDLK_MINUS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed - theme_previous(&currentThemeIndex); - printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor += 1.0f; - if (zoom_factor > max_zoom_factor) { - zoom_factor = max_zoom_factor; - } - printf("zoom_factor: %.6f", zoom_factor); - } - } break; - - case SDLK_f: - if (SDL_GetModState() & KMOD_CTRL) { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_s: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor_start_search(&editor); - } - }} - break; - - case NORMAL: - switch (event.key.keysym.sym) { - SDL_Event tmpEvent; // Declare once at the beginning of the switch block - - case SDLK_RETURN: { - if (!toggle_bool(&editor)) { - editor_open_include(&editor); - } - } break; - - case SDLK_SEMICOLON: - if (event.key.keysym.mod & KMOD_SHIFT) { - current_mode = MINIBUFFER; - evil_command_active = true; - editor.minibuffer_active = true; - - // Consume the next SDL_TEXTINPUT event for ':' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ':') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - - // TODO ivy - /* if (!ivy) { */ - /* minibufferHeight += 189; */ - /* ivy = true; */ - /* } */ - } - break; - - - - case SDLK_d: - if (event.key.keysym.mod & KMOD_SHIFT) { - emacs_kill_line(&editor); - } else if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else { - emacs_kill_line(&editor); - } - break; - - case SDLK_c: - if (event.key.keysym.mod & KMOD_SHIFT) { - evil_change_line(&editor); - } else if (event.key.keysym.mod & KMOD_CTRL) { - automatic_zoom = !automatic_zoom; - } - - // Eat up the next SDL_TEXTINPUT event for 'C' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'C')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - break; - - case SDLK_m: - if (event.key.keysym.mod & KMOD_ALT) { - emacs_back_to_indentation(&editor); - } - break; - - - - case SDLK_ESCAPE: { - if (ivy) { - minibufferHeight -= 189; - ivy = false; - } - - if (editor.minibuffer_active) { - M_x_active = false; - editor.minibuffer_active = false; - } - - editor_clear_mark(&editor); - editor_stop_search(&editor); - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - } - break; - - - case SDLK_SPACE: { - if (SDL_GetModState() & KMOD_CTRL) { - if (!editor.has_anchor){ - editor_set_anchor(&editor); - } else { - editor_goto_anchor_and_clear(&editor); - } - } else if (!ivy) { - // TODO time delay whichkey - minibufferHeight += 189; - ivy = true; - } - } - break; - - case SDLK_5: { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_jump_item(&editor); - } - } - break; - - case SDLK_8: { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_search_word_forward(&editor); - } - } - break; - - - case SDLK_1: { - if (SDL_GetModState() & KMOD_CTRL) { - hl_line = !hl_line; - } - } - break; - - - case SDLK_o: - if (SDL_GetModState() & KMOD_SHIFT) { - evil_open_above(&editor); - } else { - evil_open_below(&editor); - } - - current_mode = INSERT; - editor.last_stroke = SDL_GetTicks(); - - // Eat up the next SDL_TEXTINPUT event for 'o' or 'O' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - break; - - case SDLK_LEFTBRACKET: - if (SDL_GetModState() & KMOD_ALT) { - switch_to_font(library, &face, &atlas, -1); - printf("Switched to previous font: %s\n", fonts[current_font_index]); - /* redraw_screen(); */ - } - break; - - case SDLK_RIGHTBRACKET: - if (SDL_GetModState() & KMOD_ALT) { - switch_to_font(library, &face, &atlas, 1); - printf("Switched to next font: %s\n", fonts[current_font_index]); - /* redraw_screen(); */ - } - break; - - - case SDLK_TAB: { - indent(&editor); - } - break; - - case SDLK_z: { - if (SDL_GetModState() & KMOD_CTRL) { - helix_mode(); - } - } - break; - - case SDLK_t: { - if (SDL_GetModState() & KMOD_CTRL) { - followCursor = !followCursor; // Toggle the state - } - } - break; - - - case SDLK_F5: { - simple_renderer_reload_shaders(&sr); - } - break; - - case SDLK_y: - if (editor.selection) { - editor_clipboard_copy(&editor); - } else { - evil_yank_line(&editor); - } - break; - - - case SDLK_g: { - if (SDL_GetModState() & KMOD_SHIFT) { - editor_move_to_end(&editor); - } else { - editor_move_to_begin(&editor); - } - } break; - - case SDLK_SLASH: { - current_mode = MINIBUFFER; - editor.last_stroke = SDL_GetTicks(); - editor_start_search(&editor); - - // Consume the next SDL_TEXTINPUT event for '/' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '/') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } break; - - case SDLK_n: { - if (SDL_GetModState() & KMOD_CTRL) { - editor_move_line_down(&editor); - } else if (SDL_GetModState() & KMOD_ALT) { - editor_next_buffer(&editor); - } else if (SDL_GetModState() & KMOD_SHIFT) { - evil_search_previous(&editor); - } else { - evil_search_next(&editor); - } - } break; - - case SDLK_p: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_line_up(&editor); - } else if (SDL_GetModState() & KMOD_ALT) { - editor_previous_buffer(&editor); - } else if (copiedLine) { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_paste_before(&editor); - } else { - evil_paste_after(&editor); - } - } else { - editor_clipboard_paste(&editor); - } - break; - - case SDLK_b: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_char_left(&editor); - } else if (SDL_GetModState() & KMOD_ALT) { - editor_kill_buffer(&editor); - } else { - editor_move_word_left(&editor); - } - break; - - case SDLK_f: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_char_right(&editor); - } - break; - - case SDLK_s: { - if (event.key.keysym.mod & KMOD_CTRL) { - // Ctrl+S is pressed - editor_start_search(&editor); - current_mode = MINIBUFFER; - } else { - // Either S or Shift+S is pressed - if (event.key.keysym.mod & KMOD_SHIFT) { - evil_change_whole_line(&editor); - } else { - evil_substitute(&editor); - } - editor.selection = false; - // Eat up the next SDL_TEXTINPUT event for 's' or 'S' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 's' && tmpEvent.text.text[0] != 'S')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - editor.last_stroke = SDL_GetTicks(); - } - break; - } - - case SDLK_EQUALS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed - theme_next(&currentThemeIndex); - printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor -= 1.0f; - if (zoom_factor < min_zoom_factor) { - zoom_factor = min_zoom_factor; - } - printf("zoom_factor: %.6f", zoom_factor); - } - } break; - - case SDLK_MINUS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed - theme_previous(&currentThemeIndex); - printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor += 1.0f; - if (zoom_factor > max_zoom_factor) { - zoom_factor = max_zoom_factor; - } - printf("zoom_factor: %.6f", zoom_factor); - } - } break; - - case SDLK_i: - if (SDL_GetModState() & KMOD_CTRL) { - showIndentationLines = !showIndentationLines; - } else if (SDL_GetModState() & KMOD_ALT) { - if (SDL_GetModState() & KMOD_SHIFT) { - remove_one_indentation(&editor); - } else { - add_one_indentation(&editor); - } - } else { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_insert_line(&editor); - } else { - current_mode = INSERT; - } - - editor.last_stroke = SDL_GetTicks(); - - // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - } - break; - - case SDLK_v: { - if (SDL_GetModState() & KMOD_SHIFT) { - current_mode = VISUAL_LINE; - evil_visual_line(&editor); - } else { - current_mode = VISUAL; - evil_visual_char(&editor); - } - } break; - - case SDLK_4: { - if (SDL_GetModState() & KMOD_SHIFT) { - editor_move_to_line_end(&editor); - } - } break; - - case SDLK_a: - editor.last_stroke = SDL_GetTicks(); - if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held - editor_move_to_line_end(&editor); - } else { - // Move the cursor one position to the right - editor_move_char_right(&editor); - } - - current_mode = INSERT; - - // Eat up the next SDL_TEXTINPUT event for 'a' or 'A' - SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'a' or 'A' - if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != 'a' && tmpEvent.text.text[0] != 'A')) { - SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue - } - break; - - case SDLK_x: - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else if (event.key.keysym.mod & KMOD_ALT) { - if (!M_x_active) { - current_mode = MINIBUFFER; - M_x_active = true; - editor.minibuffer_active = true; - - // Consume the next SDL_TEXTINPUT event for 'x' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'x') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - - // TODO ivy - /* if (!ivy) { */ - /* minibufferHeight += 189; */ - /* ivy = true; */ - /* } */ - } else if (event.key.keysym.mod & KMOD_SHIFT) { - evil_delete_backward_char(&editor); - } else { - editor_clipboard_copy(&editor); - evil_delete_char(&editor); - } - break; - - case SDLK_0: - editor_move_to_line_begin(&editor); - break; - - case SDLK_F3: - file_browser = true; - break; - - case SDLK_r: - if (event.key.keysym.mod & KMOD_CTRL) { - file_browser = true; - } - break; - - case SDLK_BACKSPACE: // yes you can delete in normal mode - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else if (event.key.keysym.mod & KMOD_CTRL) { - emacs_backward_kill_word(&editor); - } else { - editor_backspace(&editor); - } - break; - - case SDLK_h: - if (event.key.keysym.mod & KMOD_ALT) { - //if char under cursor is { or } and not editor-> selection - emacs_mark_paragraph(&editor, true); - } else { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } - } - editor.last_stroke = SDL_GetTicks(); - break; - - - case SDLK_j: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_CTRL) && (event.key.keysym.mod & KMOD_ALT)) { - evil_open_above(&editor); - } else if (event.key.keysym.mod & KMOD_CTRL) { - evil_open_below(&editor); - } else if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { - move_camera(&sr, "down", 50.0f); - } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { - evil_join(&editor); - } else if (event.key.keysym.mod & KMOD_ALT) { - editor_drag_line_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - - - case SDLK_k: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { - move_camera(&sr, "up", 50.0f); - } else if (event.key.keysym.mod & KMOD_CTRL) { - emacs_kill_line(&editor); - } else if (event.key.keysym.mod & KMOD_ALT) { - editor_drag_line_up(&editor); - } else if (event.key.keysym.mod & KMOD_SHIFT) { - goto_definition(&editor, &fb); - } else { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_l: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - showLineNumbers = !showLineNumbers; - } else if (event.key.keysym.mod & KMOD_ALT) { - select_region_from_inside_braces(&editor); - } else { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - - case SDLK_DOWN: - if (event.key.keysym.mod & KMOD_ALT) { - editor_drag_line_down(&editor); - } else { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - } - break; - - - case SDLK_UP: - if (event.key.keysym.mod & KMOD_ALT) { - editor_drag_line_up(&editor); - } else { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_line_up(&editor); - - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_up(&editor); - } - } - break; - - - - case SDLK_RIGHT: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_char_right(&editor); - break; - - case SDLK_LEFT: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_char_left(&editor); - break; - - - case SDLK_w: - if (event.key.keysym.mod & KMOD_CTRL) { - showWhitespaces = !showWhitespaces; - }else{ - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_word_right(&editor); - } - break; - - case SDLK_e: - if (event.key.keysym.mod & KMOD_CTRL) { - isWave = !isWave; - /* current_mode = EMACS; */ - /* editor.last_stroke = SDL_GetTicks(); */ - } - break; - - // additional NORMAL mode keybinds here... - } break; - - case INSERT: - switch (event.key.keysym.sym) { - SDL_Event tmpEvent; - - case SDLK_x: - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } - break; - - - case SDLK_n: { - if (SDL_GetModState() & KMOD_CTRL) { - evil_complete_next(&editor); - editor.last_stroke = SDL_GetTicks(); - } - } - break; - - - case SDLK_SPACE: { - if (SDL_GetModState() & KMOD_CTRL) { - if (!editor.has_anchor){ - editor_set_anchor(&editor); - } else { - editor_goto_anchor_and_clear(&editor); - } - } - } - break; - - case SDLK_i: - if (SDL_GetModState() & KMOD_ALT) { - if (SDL_GetModState() & KMOD_SHIFT) { - remove_one_indentation(&editor); - } else { - add_one_indentation(&editor); - } - - editor.last_stroke = SDL_GetTicks(); - // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - } - break; - - case SDLK_o: - if (SDL_GetModState() & KMOD_CTRL) { - evil_open_below(&editor); - // Eat up the next SDL_TEXTINPUT event for 'o' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != '0')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_a: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor.selection = true; - editor.select_begin = 0; - editor.cursor = editor.data.count; - } - } - break; - - case SDLK_h: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_char_left(&editor); - } else if (event.key.keysym.mod & KMOD_ALT) { - editor_backspace(&editor); - - // Eat up the next SDL_TEXTINPUT event for 'h' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'h')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_j: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_k: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_l: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - - // TODO if no snippet was activated indent() - // TODO if no snippet was activated dont move the cursor - case SDLK_TAB: { - /* char word[MAX_SNIPPET_KEY_LENGTH]; */ - /* if (get_word_left_of_cursor(&editor, word, sizeof(word))) { */ - activate_snippet(&editor); - /* } else { */ - /* indent(&editor); */ - /* } */ - break; - } - - - case SDLK_F3: - file_browser = true; - break; - - case SDLK_MINUS: - if (SDL_GetModState() & KMOD_CTRL) { - zoom_factor += 1.0f; - - - if (zoom_factor > max_zoom_factor) { - zoom_factor = max_zoom_factor; - } - - printf("zoom_factor = %f\n", zoom_factor); - // Consume the next SDL_TEXTINPUT event for '-' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (!(tmpEvent.type == SDL_TEXTINPUT && tmpEvent.text.text[0] == '-')) { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - break; - - case SDLK_EQUALS: - if (SDL_GetModState() & KMOD_CTRL) { - zoom_factor -= 1.0f; - - printf("zoom_factor = %f\n", zoom_factor); - - if (zoom_factor < min_zoom_factor) { - zoom_factor = min_zoom_factor; - } - - // Consume the next SDL_TEXTINPUT event for '=' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (!(tmpEvent.type == SDL_TEXTINPUT && tmpEvent.text.text[0] == '=')) { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - break; - - case SDLK_9: { - if (event.key.keysym.mod & KMOD_SHIFT) { - char pair[] = "()"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - - // Consume both characters '(' and ')' immediately - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume '(' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '(') { - SDL_PushEvent(&tmpEvent); - } - SDL_PollEvent(&tmpEvent); // Consume ')' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ')') { - SDL_PushEvent(&tmpEvent); - } - } else { - editor_insert_char(&editor, '9'); - - // Consume the next SDL_TEXTINPUT event for '9' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '9') { - SDL_PushEvent(&tmpEvent); - } - } - } - break; - - case SDLK_LEFTBRACKET: { - if (event.key.keysym.mod & KMOD_SHIFT) { - char pair[] = "{}"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - - // Consume both characters '{' and '}' immediately - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume '{' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '{') { - SDL_PushEvent(&tmpEvent); - } - SDL_PollEvent(&tmpEvent); // Consume '}' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '}') { - SDL_PushEvent(&tmpEvent); - } - } else { - // Insert two '[' characters, move the cursor left, and consume the keypress - char pair[] = "[]"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume '[' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '[') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - } - break; - - case SDLK_QUOTE: { - if (event.key.keysym.mod & KMOD_SHIFT) { - // If Shift + ' is pressed, insert double quotes "" - char pair[] = "\"\""; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - - // Consume both characters '"' and '"' immediately - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume first '"' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\"') { - SDL_PushEvent(&tmpEvent); - } - SDL_PollEvent(&tmpEvent); // Consume second '"' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\"') { - SDL_PushEvent(&tmpEvent); - } - } else { - // If just ' is pressed, insert single quotes '' - char pair[] = "''"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume first ''' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\'') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - editor.last_stroke = SDL_GetTicks(); - } - break; - - case SDLK_BACKSPACE: - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else if (event.key.keysym.mod & KMOD_CTRL) { - emacs_backward_kill_word(&editor); - editor.last_stroke = SDL_GetTicks(); - }else{ - editor_backspace(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_RETURN: - editor_enter(&editor); - break; - - case SDLK_f: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor_start_search(&editor); - } - } - break; - - case SDLK_ESCAPE: { - if (editor.searching) { - editor_clear_mark(&editor); - editor_stop_search(&editor); - } else if (editor.minibuffer_active) { - editor.minibuffer_text.count = 0; - M_x_active = false; - editor.minibuffer_active = false; - } - - current_mode = NORMAL; - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - } - break; - - case SDLK_c: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_clipboard_copy(&editor); - } - break; - - case SDLK_s: { - if (SDL_GetModState() & KMOD_CTRL) { // Checks if CTRL is held down - if (editor.file_path.count > 0) { - err = editor_save(&editor); - if (err != 0) { - flash_error("Could not save currently edited file: %s", strerror(err)); - } - } else { - // TODO: ask the user for the path to save to in this situation - flash_error("Nowhere to save the text"); - } - } - } - break; - - case SDLK_F5: { - simple_renderer_reload_shaders(&sr); - } - break; - - case SDLK_v: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_clipboard_paste(&editor); - } - break; - - case SDLK_UP: - editor_update_selection(&editor, - event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_up(&editor); - } else { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_DOWN: - editor_update_selection(&editor, - event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_LEFT: - editor_update_selection(&editor, - event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_RIGHT: - editor_update_selection(&editor, - event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_right(&editor); - } else { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - } - break; - - - case VISUAL: - switch (event.key.keysym.sym) { - - case SDLK_y: - if (editor.selection) { - editor_clipboard_copy(&editor); - } - break; - - case SDLK_x: - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - current_mode = NORMAL; - - } - break; - - case SDLK_j: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_h: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_k: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_up(&editor); - } else { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_l: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_right(&editor); - } else { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_ESCAPE: - editor.selection = false; - current_mode = NORMAL; - break; - } - break; - - // additional VISUAL mode keybinds here... - - case VISUAL_LINE: - switch (event.key.keysym.sym) { - - case SDLK_j: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_h: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_k: // Up - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_up(&editor); - } else { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_l: // Right - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_right(&editor); - } else { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - // Transition back to NORMAL mode - case SDLK_ESCAPE: - current_mode = NORMAL; - break; - - // Add additional VISUAL_LINE mode keybinds here... - } - break; - - // TODO - case HELIX: - switch (event.key.keysym.sym) { - SDL_Event tmpEvent; // Declare once at the beginning of the switch block - - case SDLK_RETURN: { - if (!toggle_bool(&editor)) { - editor_open_include(&editor); - } - } break; - - case SDLK_SEMICOLON: - if (event.key.keysym.mod & KMOD_SHIFT) { - current_mode = MINIBUFFER; - evil_command_active = true; - editor.minibuffer_active = true; - - // Consume the next SDL_TEXTINPUT event for ':' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ':') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - - // TODO ivy - /* if (!ivy) { */ - /* minibufferHeight += 189; */ - /* ivy = true; */ - /* } */ - } - break; - - - - case SDLK_d: - if (event.key.keysym.mod & KMOD_SHIFT) { - emacs_kill_line(&editor); - } else if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else { - emacs_kill_line(&editor); - } - break; - - case SDLK_c: - if (event.key.keysym.mod & KMOD_SHIFT) { - evil_change_line(&editor); - } - - // Eat up the next SDL_TEXTINPUT event for 'C' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'C')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - break; - - case SDLK_m: - if (event.key.keysym.mod & KMOD_ALT) { - emacs_back_to_indentation(&editor); - } - break; - - - - case SDLK_ESCAPE: { - if (ivy) { - minibufferHeight -= 189; - ivy = false; - } - - if (editor.minibuffer_active) { - M_x_active = false; - editor.minibuffer_active = false; - } - - editor_clear_mark(&editor); - editor_stop_search(&editor); - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - } - break; - - - case SDLK_SPACE: { - if (SDL_GetModState() & KMOD_CTRL) { - if (!editor.has_anchor){ - editor_set_anchor(&editor); - } else { - editor_goto_anchor_and_clear(&editor); - } - } else if (!ivy) { - // TODO time delay whichkey - minibufferHeight += 189; - ivy = true; - } - } - break; - - case SDLK_5: { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_jump_item(&editor); - } - } - break; - - case SDLK_8: { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_search_word_forward(&editor); - } - } - break; - - - case SDLK_1: { - if (SDL_GetModState() & KMOD_CTRL) { - hl_line = !hl_line; - } - } - break; - - - case SDLK_o: - if (SDL_GetModState() & KMOD_SHIFT) { - evil_open_above(&editor); - } else { - evil_open_below(&editor); - } - - current_mode = INSERT; - editor.last_stroke = SDL_GetTicks(); - - // Eat up the next SDL_TEXTINPUT event for 'o' or 'O' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'o' && tmpEvent.text.text[0] != 'O')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - break; - - case SDLK_LEFTBRACKET: - if (SDL_GetModState() & KMOD_ALT) { - switch_to_font(library, &face, &atlas, -1); - printf("Switched to previous font: %s\n", fonts[current_font_index]); - /* redraw_screen(); */ - } - break; - - case SDLK_RIGHTBRACKET: - if (SDL_GetModState() & KMOD_ALT) { - switch_to_font(library, &face, &atlas, 1); - printf("Switched to next font: %s\n", fonts[current_font_index]); - /* redraw_screen(); */ - } - break; - - - case SDLK_TAB: { - indent(&editor); - } - break; - - case SDLK_z: { - if (SDL_GetModState() & KMOD_CTRL) { - /* current_mode = EMACS; */ - /* current_mode = NORMAL; */ - helix_mode(); - } - } - break; - - case SDLK_t: { - if (SDL_GetModState() & KMOD_CTRL) { - followCursor = !followCursor; // Toggle the state - } - } - break; - - - case SDLK_F5: { - simple_renderer_reload_shaders(&sr); - } - break; - - case SDLK_y: - if (editor.selection) { - editor_clipboard_copy(&editor); - } else { - evil_yank_line(&editor); - } - break; - - - case SDLK_g: { - if (SDL_GetModState() & KMOD_SHIFT) { - editor_move_to_end(&editor); - } else { - editor_move_to_begin(&editor); - } - } break; - - case SDLK_SLASH: { - current_mode = MINIBUFFER; - editor.last_stroke = SDL_GetTicks(); - editor_start_search(&editor); - - // Consume the next SDL_TEXTINPUT event for '/' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '/') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } break; - - case SDLK_n: { - if (SDL_GetModState() & KMOD_CTRL) { - editor_move_line_down(&editor); - } else if (SDL_GetModState() & KMOD_ALT) { - editor_next_buffer(&editor); - } else if (SDL_GetModState() & KMOD_SHIFT) { - evil_search_previous(&editor); - } else { - evil_search_next(&editor); - } - } break; - - case SDLK_p: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_line_up(&editor); - } else if (SDL_GetModState() & KMOD_ALT) { - editor_previous_buffer(&editor); - } else if (copiedLine) { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_paste_before(&editor); - } else { - evil_paste_after(&editor); - } - } else { - editor_clipboard_paste(&editor); - } - break; - - case SDLK_b: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_char_left(&editor); - } else if (SDL_GetModState() & KMOD_ALT) { - editor_kill_buffer(&editor); - } else { - editor_move_word_left(&editor); - } - break; - - case SDLK_f: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_char_right(&editor); - } - break; - - case SDLK_s: { - if (event.key.keysym.mod & KMOD_CTRL) { - // Ctrl+S is pressed - editor_start_search(&editor); - current_mode = MINIBUFFER; - } else { - // Either S or Shift+S is pressed - if (event.key.keysym.mod & KMOD_SHIFT) { - evil_change_whole_line(&editor); - } else { - evil_substitute(&editor); - } - editor.selection = false; - // Eat up the next SDL_TEXTINPUT event for 's' or 'S' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 's' && tmpEvent.text.text[0] != 'S')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - editor.last_stroke = SDL_GetTicks(); - } - break; - } - - case SDLK_EQUALS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed - theme_next(&currentThemeIndex); - printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor -= 1.0f; - if (zoom_factor < min_zoom_factor) { - zoom_factor = min_zoom_factor; - } - } - } break; - - case SDLK_MINUS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed - theme_previous(&currentThemeIndex); - printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed - zoom_factor += 1.0f; - if (zoom_factor > max_zoom_factor) { - zoom_factor = max_zoom_factor; - } - } - } break; - - case SDLK_i: - if (SDL_GetModState() & KMOD_CTRL) { - showIndentationLines = !showIndentationLines; - } else if (SDL_GetModState() & KMOD_ALT) { - if (SDL_GetModState() & KMOD_SHIFT) { - remove_one_indentation(&editor); - } else { - add_one_indentation(&editor); - } - } else { - if (SDL_GetModState() & KMOD_SHIFT) { - evil_insert_line(&editor); - } else { - current_mode = INSERT; - } - - editor.last_stroke = SDL_GetTicks(); - - // Eat up the next SDL_TEXTINPUT event for 'i' or 'I' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'i' && tmpEvent.text.text[0] != 'I')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - } - break; - - case SDLK_v: { - if (SDL_GetModState() & KMOD_SHIFT) { - current_mode = VISUAL_LINE; - evil_visual_line(&editor); - } else { - current_mode = VISUAL; - evil_visual_char(&editor); - } - } break; - - case SDLK_4: { - if (SDL_GetModState() & KMOD_SHIFT) { - editor_move_to_line_end(&editor); - } - } break; - - case SDLK_a: - editor.last_stroke = SDL_GetTicks(); - if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held - editor_move_to_line_end(&editor); - } else { - // Move the cursor one position to the right - editor_move_char_right(&editor); - } - - current_mode = INSERT; - - // Eat up the next SDL_TEXTINPUT event for 'a' or 'A' - SDL_PollEvent(&tmpEvent); // This will typically be the SDL_TEXTINPUT event for 'a' or 'A' - if (tmpEvent.type != SDL_TEXTINPUT || (tmpEvent.text.text[0] != 'a' && tmpEvent.text.text[0] != 'A')) { - SDL_PushEvent(&tmpEvent); // If it's not, push it back to the event queue - } - break; - - case SDLK_x: - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else if (event.key.keysym.mod & KMOD_ALT) { - if (!M_x_active) { - current_mode = MINIBUFFER; - M_x_active = true; - editor.minibuffer_active = true; - - // Consume the next SDL_TEXTINPUT event for 'x' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'x') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - - // TODO ivy - /* if (!ivy) { */ - /* minibufferHeight += 189; */ - /* ivy = true; */ - /* } */ - } else if (event.key.keysym.mod & KMOD_SHIFT) { - evil_delete_backward_char(&editor); - } else { - editor_clipboard_copy(&editor); - evil_delete_char(&editor); - } - break; - - case SDLK_0: - editor_move_to_line_begin(&editor); - break; - - case SDLK_F3: - file_browser = true; - break; - - case SDLK_r: - if (event.key.keysym.mod & KMOD_CTRL) { - file_browser = true; - } - break; - - case SDLK_BACKSPACE: // yes you can delete in normal mode - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else if (event.key.keysym.mod & KMOD_CTRL) { - emacs_backward_kill_word(&editor); - } else { - editor_backspace(&editor); - } - break; - - case SDLK_h: - if (event.key.keysym.mod & KMOD_ALT) { - emacs_mark_paragraph(&editor, true); - } else { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } - } - editor.last_stroke = SDL_GetTicks(); - break; - - - case SDLK_j: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { - move_camera(&sr, "down", 50.0f); - } else if (event.key.keysym.mod & KMOD_CTRL) { - evil_open_above(&editor); - } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { - evil_join(&editor); - } else if (event.key.keysym.mod & KMOD_ALT) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_k: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { - move_camera(&sr, "up", 50.0f); - } else if (event.key.keysym.mod & KMOD_CTRL) { - emacs_kill_line(&editor); - } else if (event.key.keysym.mod & KMOD_ALT) { - editor_move_paragraph_up(&editor); - } else if (event.key.keysym.mod & KMOD_SHIFT) { - goto_definition(&editor, &fb); - } else { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_l: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - showLineNumbers = !showLineNumbers; - } else if (event.key.keysym.mod & KMOD_ALT) { - select_region_from_inside_braces(&editor); - } else { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - - case SDLK_DOWN: - if (event.key.keysym.mod & KMOD_ALT) { - editor_drag_line_down(&editor); - } else { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - } - break; - - - case SDLK_UP: - if (event.key.keysym.mod & KMOD_ALT) { - editor_drag_line_up(&editor); - } else { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_line_up(&editor); - - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_up(&editor); - } - } - break; - - - - case SDLK_RIGHT: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_char_right(&editor); - break; - - case SDLK_LEFT: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_char_left(&editor); - break; - - - case SDLK_w: - if (event.key.keysym.mod & KMOD_CTRL) { - showWhitespaces = !showWhitespaces; - }else{ - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_word_right(&editor); - } - break; - - case SDLK_e: - if (event.key.keysym.mod & KMOD_CTRL) { - isWave = !isWave; - /* current_mode = EMACS; */ - /* editor.last_stroke = SDL_GetTicks(); */ - } - break; - - // additional NORMAL mode keybinds here... - } break; - - case MINIBUFFER: - switch (event.key.keysym.sym) { - - case SDLK_ESCAPE: { - if (ivy) { - minibufferHeight -= 189; - ivy = false; - } - - if (editor.searching) { - editor_clear_mark(&editor); - editor_stop_search(&editor); - } else if (editor.minibuffer_active) { - editor.minibuffer_text.count = 0; - M_x_active = false; - editor.minibuffer_active = false; - } - current_mode = NORMAL; - } - break; - - case SDLK_BACKSPACE: - if (editor.selection) { - // TODO once we have selection in the minibuffer - /* editor_clipboard_copy(&editor); */ - /* editor_delete_selection(&editor); */ - /* editor.selection = false; */ - } else if (event.key.keysym.mod & KMOD_CTRL) { - emacs_backward_kill_word(&editor); - editor.last_stroke = SDL_GetTicks(); - }else{ - editor_backspace(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - // TODO use editor_enter() - case SDLK_RETURN: { - editor_enter(&editor); - } - break; - } - break; - - // More cases for other modes can follow here... - // ... - } - break; - } - break; - - - case SDL_TEXTINPUT: - if (file_browser) { - // Once we have incremental search in the file browser this may become useful - // or to edit file names or create files/direcory - } else if (current_mode == INSERT || current_mode == EMACS || current_mode == MINIBUFFER) { // Process text input - - if (editor.selection) { - editor_delete_selection(&editor); - } - - const char *text = event.text.text; - size_t text_len = strlen(text); - for (size_t i = 0; i < text_len; ++i) { - editor_insert_char(&editor, text[i]); - } - - editor.selection = false; - editor.last_stroke = SDL_GetTicks(); - } - break; - - } - } - - int w, h; - SDL_GetWindowSize(window, &w, &h); - glViewport(0, 0, w, h); - /* Vec4f bg = themes[currentThemeIndex].background; */ - Vec4f bg = currentTheme.background; - bg.w = 0.0f; - glClearColor(bg.x, bg.y, bg.z, bg.w); - glClear(GL_COLOR_BUFFER_BIT); - - if (file_browser) { - fb_render(&fb, window, &atlas, &sr); - } else { - if (theme_lerp){ - update_theme_interpolation(); - } - update_modeline_animation(); - update_minibuffer_animation(DELTA_TIME); - - editor_render(window, &atlas, &sr, &editor); - update_cursor_color(&editor); - render_search_text(&atlas, &sr, &editor); - - - if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "json") == 0) { - tree(&editor, &fb); - } - - - if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "md") == 0) { - render_markdown(&atlas, &sr, &editor, &fb); - } - - - - if (M_x_active){ - render_minibuffer_content(&atlas, &sr, &editor, "M-x"); - } else if (evil_command_active) { - render_minibuffer_content(&atlas, &sr, &editor, ":"); - } - /* print_variable_doc("zoom_factor"); */ - } - - SDL_GL_SwapWindow(window); - const Uint32 duration = SDL_GetTicks() - start; - const Uint32 delta_time_ms = 1000 / FPS; - if (duration < delta_time_ms) { - SDL_Delay(delta_time_ms - duration); - } - } - - shutdown_clangd(&editor); - free_snippet_array(&snippets); - return 0; -} - -// TODO: ability to search within file browser -// Very useful when you have a lot of files -// TODO: ability to remove trailing whitespaces diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@main.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@main.c.blob deleted file mode 100644 index 15e283b373d82ac5e7149fa1f1552b1345ecc7cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85372 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 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@render.h b/.ccls-cache/@home@l@Desktop@test@ded/src@render.h deleted file mode 100644 index 22caab71..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@render.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef RENDER_H -#define RENDER_H - -#include <SDL2/SDL.h> -#include "free_glyph.h" -#include "simple_renderer.h" -#include "editor.h" - - -extern float tokenInterpolationProgress; -extern float tokenLerpSpeed; -extern bool tokenLerp; - -extern float lineNumberWidth; - -void update_tokens_interpolation(); - -void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); -void render_search_text(Free_Glyph_Atlas *minibuffer_atlas, Simple_Renderer *sr, Editor *editor); -/* void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor); */ -/* void render_M_x(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText); */ -void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText); -void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor); - -#include "file_browser.h" -void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, File_Browser *fb); - - - -typedef struct { - Vec4f originalColor; - Vec4f targetColor; - float interpolationProgress; -} TokenColorData; - - - - - - - -#endif // RENDER_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@render.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@render.h.blob deleted file mode 100644 index ed213e5aff0b6ed53042307c250071e3db80eea7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16200 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 O%Ldp2TeAVL!2bdAM>yO7 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h b/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h deleted file mode 100644 index 3d035aee..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h +++ /dev/null @@ -1,114 +0,0 @@ -#ifndef SIMPLE_RENDERER_H_ -#define SIMPLE_RENDERER_H_ - -#include <assert.h> - -#define GLEW_STATIC -#include <GL/glew.h> - -#define GL_GLEXT_PROTOTYPES -#include <SDL2/SDL_opengl.h> - -#include "./la.h" - -typedef enum { - UNIFORM_SLOT_TIME = 0, - UNIFORM_SLOT_RESOLUTION, - UNIFORM_SLOT_CAMERA_POS, - UNIFORM_SLOT_CAMERA_SCALE, - COUNT_UNIFORM_SLOTS, -} Uniform_Slot; - -typedef enum { - SIMPLE_VERTEX_ATTR_POSITION = 0, - SIMPLE_VERTEX_ATTR_COLOR, - SIMPLE_VERTEX_ATTR_UV, -} Simple_Vertex_Attr; - -typedef struct { - Vec2f position; - Vec4f color; - Vec2f uv; -} Simple_Vertex; - -#define SIMPLE_VERTICIES_CAP (3*640*1000) - -static_assert(SIMPLE_VERTICIES_CAP%3 == 0, "Simple renderer vertex capacity must be divisible by 3. We are rendring triangles after all."); - -typedef enum { - SHADER_FOR_COLOR = 0, - SHADER_FOR_IMAGE, - SHADER_FOR_TEXT, - SHADER_FOR_GLOW, - SHADER_FOR_EPICNESS, - SHADER_FOR_CURSOR, - VERTEX_SHADER_SIMPLE, - VERTEX_SHADER_FIXED, - VERTEX_SHADER_MINIBUFFER, - VERTEX_SHADER_WAVE, - COUNT_FRAGMENT_SHADERS, - COUNT_VERTEX_SHADERS, -} Simple_Shader; - -typedef struct { - GLuint vao; - GLuint vbo; - /* GLuint programs[COUNT_SIMPLE_SHADERS]; */ - GLuint programs[COUNT_VERTEX_SHADERS][COUNT_FRAGMENT_SHADERS]; - Simple_Shader current_shader; - - int current_vertex_shader_index; - int current_fragment_shader_index; - - GLint uniforms[COUNT_UNIFORM_SLOTS]; - Simple_Vertex verticies[SIMPLE_VERTICIES_CAP]; - size_t verticies_count; - - Vec2f resolution; - float time; - - Vec2f camera_pos; - float camera_scale; - float camera_scale_vel; - Vec2f camera_vel; -} Simple_Renderer; - - -// old -/* extern const char *vert_shader_file_path; */ - - -#define MAX_SHADER_PATH_LENGTH 256 -/* extern char vert_shader_file_path[MAX_SHADER_PATH_LENGTH]; */ -extern char vert_shader_file_path[COUNT_VERTEX_SHADERS][MAX_SHADER_PATH_LENGTH]; - - - - - - -void simple_renderer_init(Simple_Renderer *sr); -void simple_renderer_reload_shaders(Simple_Renderer *sr); -void simple_renderer_vertex(Simple_Renderer *sr, Vec2f p, Vec4f c, Vec2f uv); -void simple_renderer_set_shader(Simple_Renderer *sr, int vertexShaderIndex, - int fragmentShaderIndex); -void simple_renderer_triangle(Simple_Renderer *sr, Vec2f p0, Vec2f p1, Vec2f p2, - Vec4f c0, Vec4f c1, Vec4f c2, Vec2f uv0, - Vec2f uv1, Vec2f uv2); -void simple_renderer_quad(Simple_Renderer *sr, Vec2f p0, Vec2f p1, Vec2f p2, - Vec2f p3, Vec4f c0, Vec4f c1, Vec4f c2, Vec4f c3, - Vec2f uv0, Vec2f uv1, Vec2f uv2, Vec2f uv3); -void simple_renderer_solid_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, Vec4f c); -void simple_renderer_image_rect(Simple_Renderer *sr, Vec2f p, Vec2f s, - Vec2f uvp, Vec2f uvs, Vec4f c); -void simple_renderer_flush(Simple_Renderer * sr); -void simple_renderer_sync(Simple_Renderer * sr); -void simple_renderer_draw(Simple_Renderer * sr); - -// ADDED -void initialize_shader_paths(); -void simple_renderer_circle(Simple_Renderer *sr, Vec2f center, float radius, Vec4f color, int segments); - - /* const char *resolve_shader_path(const char *shader_file_name); */ - -#endif // SIMPLE_RENDERER_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@simple_renderer.h.blob deleted file mode 100644 index dcac291e2ee1f79c019bdb734e40fa6326c374ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22602 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 S*mt1sE-a6m`tGtD!v6y~@3jH| diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h b/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h deleted file mode 100644 index 14e93cbf..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h +++ /dev/null @@ -1,319 +0,0 @@ -// Copyright 2021 Alexey Kutepov <reximkut@gmail.com> - -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: - -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. - -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -#ifndef SV_H_ -#define SV_H_ - -#include <stdint.h> -#include <stdlib.h> -#include <stdbool.h> -#include <string.h> -#include <ctype.h> - -#ifndef SVDEF -#define SVDEF -#endif // SVDEF - -typedef struct { - size_t count; - const char *data; -} String_View; - -#define SV(cstr_lit) sv_from_parts(cstr_lit, sizeof(cstr_lit) - 1) -#define SV_STATIC(cstr_lit) \ - { \ - sizeof(cstr_lit) - 1, \ - (cstr_lit) \ - } - -#define SV_NULL sv_from_parts(NULL, 0) - -// printf macros for String_View -#define SV_Fmt "%.*s" -#define SV_Arg(sv) (int) (sv).count, (sv).data -// USAGE: -// String_View name = ...; -// printf("Name: "SV_Fmt"\n", SV_Arg(name)); - -SVDEF String_View sv_from_parts(const char *data, size_t count); -SVDEF String_View sv_from_cstr(const char *cstr); -SVDEF String_View sv_trim_left(String_View sv); -SVDEF String_View sv_trim_right(String_View sv); -SVDEF String_View sv_trim(String_View sv); -SVDEF String_View sv_take_left_while(String_View sv, bool (*predicate)(char x)); -SVDEF String_View sv_chop_by_delim(String_View *sv, char delim); -SVDEF String_View sv_chop_by_sv(String_View *sv, String_View thicc_delim); -SVDEF bool sv_try_chop_by_delim(String_View *sv, char delim, String_View *chunk); -SVDEF String_View sv_chop_left(String_View *sv, size_t n); -SVDEF String_View sv_chop_right(String_View *sv, size_t n); -SVDEF String_View sv_chop_left_while(String_View *sv, bool (*predicate)(char x)); -SVDEF bool sv_index_of(String_View sv, char c, size_t *index); -SVDEF bool sv_eq(String_View a, String_View b); -SVDEF bool sv_eq_ignorecase(String_View a, String_View b); -SVDEF bool sv_starts_with(String_View sv, String_View prefix); -SVDEF bool sv_ends_with(String_View sv, String_View suffix); -SVDEF uint64_t sv_to_u64(String_View sv); -uint64_t sv_chop_u64(String_View *sv); - -#endif // SV_H_ - -#ifdef SV_IMPLEMENTATION - -SVDEF String_View sv_from_parts(const char *data, size_t count) -{ - String_View sv; - sv.count = count; - sv.data = data; - return sv; -} - -SVDEF String_View sv_from_cstr(const char *cstr) -{ - return sv_from_parts(cstr, strlen(cstr)); -} - -SVDEF String_View sv_trim_left(String_View sv) -{ - size_t i = 0; - while (i < sv.count && isspace(sv.data[i])) { - i += 1; - } - - return sv_from_parts(sv.data + i, sv.count - i); -} - -SVDEF String_View sv_trim_right(String_View sv) -{ - size_t i = 0; - while (i < sv.count && isspace(sv.data[sv.count - 1 - i])) { - i += 1; - } - - return sv_from_parts(sv.data, sv.count - i); -} - -SVDEF String_View sv_trim(String_View sv) -{ - return sv_trim_right(sv_trim_left(sv)); -} - -SVDEF String_View sv_chop_left(String_View *sv, size_t n) -{ - if (n > sv->count) { - n = sv->count; - } - - String_View result = sv_from_parts(sv->data, n); - - sv->data += n; - sv->count -= n; - - return result; -} - -SVDEF String_View sv_chop_right(String_View *sv, size_t n) -{ - if (n > sv->count) { - n = sv->count; - } - - String_View result = sv_from_parts(sv->data + sv->count - n, n); - - sv->count -= n; - - return result; -} - -SVDEF bool sv_index_of(String_View sv, char c, size_t *index) -{ - size_t i = 0; - while (i < sv.count && sv.data[i] != c) { - i += 1; - } - - if (i < sv.count) { - if (index) { - *index = i; - } - return true; - } else { - return false; - } -} - -SVDEF bool sv_try_chop_by_delim(String_View *sv, char delim, String_View *chunk) -{ - size_t i = 0; - while (i < sv->count && sv->data[i] != delim) { - i += 1; - } - - String_View result = sv_from_parts(sv->data, i); - - if (i < sv->count) { - sv->count -= i + 1; - sv->data += i + 1; - if (chunk) { - *chunk = result; - } - return true; - } - - return false; -} - -SVDEF String_View sv_chop_by_delim(String_View *sv, char delim) -{ - size_t i = 0; - while (i < sv->count && sv->data[i] != delim) { - i += 1; - } - - String_View result = sv_from_parts(sv->data, i); - - if (i < sv->count) { - sv->count -= i + 1; - sv->data += i + 1; - } else { - sv->count -= i; - sv->data += i; - } - - return result; -} - -SVDEF String_View sv_chop_by_sv(String_View *sv, String_View thicc_delim) -{ - String_View window = sv_from_parts(sv->data, thicc_delim.count); - size_t i = 0; - while (i + thicc_delim.count < sv->count - && !(sv_eq(window, thicc_delim))) - { - i++; - window.data++; - } - - String_View result = sv_from_parts(sv->data, i); - - if (i + thicc_delim.count == sv->count) { - // include last <thicc_delim.count> characters if they aren't - // equal to thicc_delim - result.count += thicc_delim.count; - } - - // Chop! - sv->data += i + thicc_delim.count; - sv->count -= i + thicc_delim.count; - - return result; -} - -SVDEF bool sv_starts_with(String_View sv, String_View expected_prefix) -{ - if (expected_prefix.count <= sv.count) { - String_View actual_prefix = sv_from_parts(sv.data, expected_prefix.count); - return sv_eq(expected_prefix, actual_prefix); - } - - return false; -} - -SVDEF bool sv_ends_with(String_View sv, String_View expected_suffix) -{ - if (expected_suffix.count <= sv.count) { - String_View actual_suffix = sv_from_parts(sv.data + sv.count - expected_suffix.count, expected_suffix.count); - return sv_eq(expected_suffix, actual_suffix); - } - - return false; -} - -SVDEF bool sv_eq(String_View a, String_View b) -{ - if (a.count != b.count) { - return false; - } else { - return memcmp(a.data, b.data, a.count) == 0; - } -} - -SVDEF bool sv_eq_ignorecase(String_View a, String_View b) -{ - if (a.count != b.count) { - return false; - } - - char x, y; - for (size_t i = 0; i < a.count; i++) { - x = 'A' <= a.data[i] && a.data[i] <= 'Z' - ? a.data[i] + 32 - : a.data[i]; - - y = 'A' <= b.data[i] && b.data[i] <= 'Z' - ? b.data[i] + 32 - : b.data[i]; - - if (x != y) return false; - } - return true; -} - -SVDEF uint64_t sv_to_u64(String_View sv) -{ - uint64_t result = 0; - - for (size_t i = 0; i < sv.count && isdigit(sv.data[i]); ++i) { - result = result * 10 + (uint64_t) sv.data[i] - '0'; - } - - return result; -} - -uint64_t sv_chop_u64(String_View *sv) -{ - uint64_t result = 0; - while (sv->count > 0 && isdigit(*sv->data)) { - result = result*10 + *sv->data - '0'; - sv->count -= 1; - sv->data += 1; - } - return result; -} - -SVDEF String_View sv_chop_left_while(String_View *sv, bool (*predicate)(char x)) -{ - size_t i = 0; - while (i < sv->count && predicate(sv->data[i])) { - i += 1; - } - return sv_chop_left(sv, i); -} - -SVDEF String_View sv_take_left_while(String_View sv, bool (*predicate)(char x)) -{ - size_t i = 0; - while (i < sv.count && predicate(sv.data[i])) { - i += 1; - } - return sv_from_parts(sv.data, i); -} - -#endif // SV_IMPLEMENTATION diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@sv.h.blob deleted file mode 100644 index 85669f3724047b3287f1adb10c9f7ca444eb6559..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17919 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 F{~w;0R(b#c diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c deleted file mode 100644 index 7a106bd1..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c +++ /dev/null @@ -1,669 +0,0 @@ -#include "theme.h" -#include "common.h" -#include "editor.h" -#include <stdbool.h> - -int currentThemeIndex = 0; -int previousThemeIndex = 0; -float interpolationProgress; -Theme themes[8]; -Theme currentTheme; -Theme previousTheme; - -bool theme_lerp = false; -float theme_lerp_speed = 0.005f; -float theme_lerp_treshold = 1.0f; // 0.5 mix themes - -Vec4f color_lerp(Vec4f start, Vec4f end, float t) { - Vec4f result; - result.x = start.x + (end.x - start.x) * t; - result.y = start.y + (end.y - start.y) * t; - result.z = start.z + (end.z - start.z) * t; - result.w = start.w + (end.w - start.w) * t; - return result; -} - -// Function to smoothly transition a color field in the current theme -void transition_color(Vec4f* color_field, Vec4f target_color, float transition_speed) { - if (theme_lerp) { - *color_field = color_lerp(*color_field, target_color, transition_speed); - } else { - *color_field = target_color; - } -} - - -void switch_to_theme(int *currentThemeIndex, int newIndex) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - - // Check if newIndex is valid - if (newIndex < 0 || newIndex >= themeCount) { - return; // Invalid index, do nothing - } - - // Update previous theme information - previousTheme = currentTheme; - previousThemeIndex = *currentThemeIndex; - - // Set the new theme index - *currentThemeIndex = newIndex; - - // Reset interpolation progress - interpolationProgress = 0.0f; - - if (!theme_lerp) { - // If theme lerp is disabled, set the current theme immediately - currentTheme = themes[*currentThemeIndex]; - } -} - -void theme_next(int *currentThemeIndex) { - previousTheme = currentTheme; // Capture the current interpolated state - previousThemeIndex = *currentThemeIndex; - - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; - - // Check if the new index is 7; if so, skip it - if (*currentThemeIndex == 7) { - *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; - } - - if (!theme_lerp) { - currentTheme = themes[*currentThemeIndex]; - } - interpolationProgress = 0.0f; // Restart interpolation -} - -void theme_previous(int *currentThemeIndex) { - previousTheme = currentTheme; // Capture the current interpolated state - previousThemeIndex = *currentThemeIndex; - - *currentThemeIndex -= 1; - if (*currentThemeIndex < 0) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex = themeCount - 1; - } - - // Check if the new index is 7; if so, skip it - if (*currentThemeIndex == 7) { - *currentThemeIndex -= 1; - if (*currentThemeIndex < 0) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex = themeCount - 1; - } - } - - if (!theme_lerp) { - currentTheme = themes[*currentThemeIndex]; - } - - interpolationProgress = 0.0f; // Restart interpolation -} - - -void update_theme_interpolation() { - if (theme_lerp && interpolationProgress < theme_lerp_treshold) { - interpolationProgress += theme_lerp_speed; - Theme startTheme = previousTheme; - Theme endTheme = themes[currentThemeIndex]; - - // Interpolate each color component - currentTheme.cursor = color_lerp(startTheme.cursor, endTheme.cursor, interpolationProgress); - currentTheme.insert_cursor = color_lerp(startTheme.insert_cursor, endTheme.insert_cursor, interpolationProgress); - currentTheme.emacs_cursor = color_lerp(startTheme.emacs_cursor, endTheme.emacs_cursor, interpolationProgress); - currentTheme.text = color_lerp(startTheme.text, endTheme.text, interpolationProgress); - currentTheme.background = color_lerp(startTheme.background, endTheme.background, interpolationProgress); - currentTheme.logic = color_lerp(startTheme.logic, endTheme.logic, interpolationProgress); - currentTheme.comment = color_lerp(startTheme.comment, endTheme.comment, interpolationProgress); - currentTheme.hashtag = color_lerp(startTheme.hashtag, endTheme.hashtag, interpolationProgress); - currentTheme.string = color_lerp(startTheme.string, endTheme.string, interpolationProgress); - currentTheme.selection = color_lerp(startTheme.selection, endTheme.selection, interpolationProgress); - currentTheme.search = color_lerp(startTheme.search, endTheme.search, interpolationProgress); - currentTheme.line_numbers = color_lerp(startTheme.line_numbers, endTheme.line_numbers, interpolationProgress); - currentTheme.todo = color_lerp(startTheme.todo, endTheme.todo, interpolationProgress); - currentTheme.fixme = color_lerp(startTheme.fixme, endTheme.fixme, interpolationProgress); - currentTheme.note = color_lerp(startTheme.note, endTheme.note, interpolationProgress); - currentTheme.bug = color_lerp(startTheme.bug, endTheme.bug, interpolationProgress); - currentTheme.equals = color_lerp(startTheme.equals, endTheme.equals, interpolationProgress); - currentTheme.not_equals = color_lerp(startTheme.not_equals, endTheme.not_equals, interpolationProgress); - currentTheme.exclamation = color_lerp(startTheme.exclamation, endTheme.exclamation, interpolationProgress); - currentTheme.equals_equals = color_lerp(startTheme.equals_equals, endTheme.equals_equals, interpolationProgress); - currentTheme.less_than = color_lerp(startTheme.less_than, endTheme.less_than, interpolationProgress); - currentTheme.greater_than = color_lerp(startTheme.greater_than, endTheme.greater_than, interpolationProgress); - currentTheme.arrow = color_lerp(startTheme.arrow, endTheme.arrow, interpolationProgress); - currentTheme.plus = color_lerp(startTheme.plus, endTheme.plus, interpolationProgress); - currentTheme.minus = color_lerp(startTheme.minus, endTheme.minus, interpolationProgress); - currentTheme.truee = color_lerp(startTheme.truee, endTheme.truee, interpolationProgress); - currentTheme.falsee = color_lerp(startTheme.falsee, endTheme.falsee, interpolationProgress); - currentTheme.open_square = color_lerp(startTheme.open_square, endTheme.open_square, interpolationProgress); - currentTheme.close_square = color_lerp(startTheme.close_square, endTheme.close_square, interpolationProgress); - currentTheme.array_content = color_lerp(startTheme.array_content, endTheme.array_content, interpolationProgress); - currentTheme.current_line_number = color_lerp(startTheme.current_line_number, endTheme.current_line_number, interpolationProgress); - currentTheme.marks = color_lerp(startTheme.marks, endTheme.marks, interpolationProgress); - currentTheme.fb_selection = color_lerp(startTheme.fb_selection, endTheme.fb_selection, interpolationProgress); - currentTheme.link = color_lerp(startTheme.link, endTheme.link, interpolationProgress); - currentTheme.logic_or = color_lerp(startTheme.logic_or, endTheme.logic_or, interpolationProgress); - currentTheme.pipe = color_lerp(startTheme.pipe, endTheme.pipe, interpolationProgress); - currentTheme.logic_and = color_lerp(startTheme.logic_and, endTheme.logic_and, interpolationProgress); - currentTheme.ampersand = color_lerp(startTheme.ampersand, endTheme.ampersand, interpolationProgress); - currentTheme.multiplication = color_lerp(startTheme.multiplication, endTheme.multiplication, interpolationProgress); - currentTheme.pointer = color_lerp(startTheme.pointer, endTheme.pointer, interpolationProgress); - currentTheme.modeline = color_lerp(startTheme.modeline, endTheme.modeline, interpolationProgress); - currentTheme.modeline_accent = color_lerp(startTheme.modeline_accent, endTheme.modeline_accent, interpolationProgress); - currentTheme.minibuffer = color_lerp(startTheme.minibuffer, endTheme.minibuffer, interpolationProgress); - currentTheme.matching_parenthesis = color_lerp(startTheme.matching_parenthesis, endTheme.matching_parenthesis, interpolationProgress); - currentTheme.hl_line = color_lerp(startTheme.hl_line, endTheme.hl_line, interpolationProgress); - currentTheme.type = color_lerp(startTheme.type, endTheme.type, interpolationProgress); - currentTheme.function_definition = color_lerp(startTheme.function_definition, endTheme.function_definition, interpolationProgress); - currentTheme.anchor = color_lerp(startTheme.anchor, endTheme.anchor, interpolationProgress); - currentTheme.whitespace = color_lerp(startTheme.whitespace, endTheme.whitespace, interpolationProgress); - currentTheme.indentation_line = color_lerp(startTheme.indentation_line, endTheme.indentation_line, interpolationProgress); - currentTheme.null = color_lerp(startTheme.null, endTheme.null, interpolationProgress); - currentTheme.code_block = color_lerp(startTheme.code_block, endTheme.code_block, interpolationProgress); - - if (interpolationProgress >= 1.0f) { - interpolationProgress = 1.0f; - } - } else if (!theme_lerp) { - currentTheme = themes[currentThemeIndex]; - interpolationProgress = 1.0f; - } -} - -void initialize_themes() { - // Nature - themes[0] = (Theme) { - .cursor = hex_to_vec4f(0x658B5FFF), - .notext_cursor = hex_to_vec4f(0x658B5FFF), - .EOF_cursor = hex_to_vec4f(0x658B5FFF), - .insert_cursor = hex_to_vec4f(0x514B8EFF), - .emacs_cursor = hex_to_vec4f(0x565663FF), - .text = hex_to_vec4f(0xC0ACD1FF), - .background = hex_to_vec4f(0x090909FF), - .fringe = hex_to_vec4f(0x090909FF), - .comment = hex_to_vec4f(0x867892FF), - .hashtag = hex_to_vec4f(0x658B5FFF), - .logic = hex_to_vec4f(0x658B5FFF), - .string = hex_to_vec4f(0x4C6750FF), - .selection = hex_to_vec4f(0x262626FF), - .search = hex_to_vec4f(0x262626FF), - .todo = hex_to_vec4f(0x565663FF), - .line_numbers = hex_to_vec4f(0x171717FF), - .current_line_number = hex_to_vec4f(0xC0ACD1FF), - .fixme = hex_to_vec4f(0x444E46FF), - .note = hex_to_vec4f(0x4C6750FF), - .bug = hex_to_vec4f(0x867892FF), - .not_equals = hex_to_vec4f(0x867892FF), - .exclamation = hex_to_vec4f(0x4C6750FF), - .equals = hex_to_vec4f(0xC0ACD1FF), - .equals_equals = hex_to_vec4f(0x658B5FFF), - .greater_than = hex_to_vec4f(0x834EB6FF), - .less_than = hex_to_vec4f(0x834EB6FF), - .marks = hex_to_vec4f(0x658B5FFF), - .fb_selection = hex_to_vec4f(0x262626FF), - .plus = hex_to_vec4f(0x658B5FFF), - .minus = hex_to_vec4f(0x658B5FFF), - .truee = hex_to_vec4f(0x4C6750FF), - .falsee = hex_to_vec4f(0x867892FF), - .arrow = hex_to_vec4f(0x834EB6FF), - .open_square = hex_to_vec4f(0xC0ACD1FF), - .close_square = hex_to_vec4f(0xC0ACD1FF), - .array_content = hex_to_vec4f(0x4C6750FF), - .link = hex_to_vec4f(0x565663FF), - .logic_or = hex_to_vec4f(0x658B5FFF), - .pipe = hex_to_vec4f(0x565663FF), - .ampersand = hex_to_vec4f(0x658B5FFF), - .logic_and = hex_to_vec4f(0x658B5FFF), - .pointer = hex_to_vec4f(0x514B8EFF), - .multiplication = hex_to_vec4f(0x867892FF), - .matching_parenthesis = hex_to_vec4f(0x262626FF), - .hl_line = hex_to_vec4f(0x070707FF), - .type = hex_to_vec4f(0x565663FF), - .function_definition = hex_to_vec4f(0x564F96FF), - .anchor = hex_to_vec4f(0x564F96FF), - .minibuffer = hex_to_vec4f(0x090909FF), - .modeline = hex_to_vec4f(0x060606FF), - .modeline_accent = hex_to_vec4f(0x658B5FFF), - .whitespace = hex_to_vec4f(0x171717FF), - .selected_whitespaces = hex_to_vec4f(0x9989A7FF), - .indentation_line = hex_to_vec4f(0x171717FF), - .null = hex_to_vec4f(0x564F96FF), - .code_block = hex_to_vec4f(0x080808FF), - }; - - // DOOM one - themes[1] = (Theme) { - .cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF - .notext_cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF - .EOF_cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF - .insert_cursor = hex_to_vec4f(0x51AFEFFF), - .emacs_cursor = hex_to_vec4f(0xECBE7BFF), //#ECBE7B - .text = hex_to_vec4f(0xBBC2CFFF), - .background = hex_to_vec4f(0x282C34FF), - .fringe = hex_to_vec4f(0x282C34FF), - .comment = hex_to_vec4f(0x5B6268FF), - .hashtag = hex_to_vec4f(0x51AFEFFF), - .logic = hex_to_vec4f(0x51AFEFFF), - .string = hex_to_vec4f(0x98BE65FF), //#98BE65 - .selection = hex_to_vec4f(0x42444AFF), - .search = hex_to_vec4f(0x387AA7FF), //#387AA7 - .todo = hex_to_vec4f(0xECBE7BFF), - .line_numbers = hex_to_vec4f(0x3F444AFF), - .current_line_number = hex_to_vec4f(0xBBC2CFFF), - .fixme = hex_to_vec4f(0xFF6C6BFF), //#FF6C6B - .note = hex_to_vec4f(0x98BE65FF), - .bug = hex_to_vec4f(0xFF6C6BFF), - .not_equals = hex_to_vec4f(0xFF6C6BFF), - .exclamation = hex_to_vec4f(0x51AFEFFF), - .equals = hex_to_vec4f(0x98BE65FF), - .equals_equals = hex_to_vec4f(0x98BE65FF), - .greater_than = hex_to_vec4f(0x98BE65FF), - .less_than = hex_to_vec4f(0xFF6C6BFF), - .marks = hex_to_vec4f(0x387AA7FF), - .fb_selection = hex_to_vec4f(0x42444AFF), - .plus = hex_to_vec4f(0x98BE65FF), - .minus = hex_to_vec4f(0xFF6C6BFF), - .truee = hex_to_vec4f(0x98BE65FF), - .falsee = hex_to_vec4f(0xFF6C6BFF), - .arrow = hex_to_vec4f(0xBBC2CFFF), - .open_square = hex_to_vec4f(0xBBC2CFFF), - .close_square = hex_to_vec4f(0xBBC2CFFF), - .array_content = hex_to_vec4f(0xA9A1E1FF), - .link = hex_to_vec4f(0xA9A1E1FF), //#A9A1E1 - .matching_parenthesis = hex_to_vec4f(0x42444AFF), - .type = hex_to_vec4f(0xECBE7BFF), - .function_definition = hex_to_vec4f(0xC678DDFF), //#C678DD - .anchor = hex_to_vec4f(0xA9A1E1FF), - .hl_line = hex_to_vec4f(0x21242BFF),//#21242B - .multiplication = hex_to_vec4f(0x98BE65FF), - .pointer = hex_to_vec4f(0xA9A1E1FF), - .logic_and = hex_to_vec4f(0x98BE65FF), - .logic_or = hex_to_vec4f(0xFF6C6BFF), - .ampersand = hex_to_vec4f(0x51AFEFFF), - .pipe = hex_to_vec4f(0x98BE65FF), - .minibuffer = hex_to_vec4f(0x21242BFF), - .modeline = hex_to_vec4f(0x1D2026FF), - .modeline_accent = hex_to_vec4f(0x51AFEFFF), - .whitespace = hex_to_vec4f(0x3F444AFF), - .selected_whitespaces = hex_to_vec4f(0x959BA5FF), - .indentation_line = hex_to_vec4f(0x3F444AFF), - .null = hex_to_vec4f(0xA9A1E1FF), - .code_block = hex_to_vec4f(0x23272EFF), - }; - - // Dracula - themes[2] = (Theme){ - .cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 - .notext_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 - .EOF_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 - .insert_cursor = hex_to_vec4f(0xBD93F9FF), - .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), // #F1FA8C - .text = hex_to_vec4f(0xF8F8F2FF), - .background = hex_to_vec4f(0x282A36FF), - .fringe = hex_to_vec4f(0x282A36FF), - .comment = hex_to_vec4f(0x6272A4FF), - .hashtag = hex_to_vec4f(0xBD93F9FF), - .logic = hex_to_vec4f(0xFF79C6FF), // #FF79C6 - .string = hex_to_vec4f(0xF1FA8CFF), - .selection = hex_to_vec4f(0x44475AFF), - .search = hex_to_vec4f(0x8466AEFF), // #8466AE - .todo = hex_to_vec4f(0xF1FA8CFF), - .line_numbers = hex_to_vec4f(0x6272A4FF), - .current_line_number = hex_to_vec4f(0xF8F8F2FF), - .fixme = hex_to_vec4f(0xFF5555FF), // #FF5555 - .note = hex_to_vec4f(0x50FA7BFF), // #50FA7B - .bug = hex_to_vec4f(0xFF5555FF), - .not_equals = hex_to_vec4f(0xFF5555FF), - .exclamation = hex_to_vec4f(0xBD93F9FF), - .equals = hex_to_vec4f(0x50FA7BFF), - .equals_equals = hex_to_vec4f(0x50FA7BFF), - .greater_than = hex_to_vec4f(0x50FA7BFF), - .less_than = hex_to_vec4f(0xFF5555FF), - .marks = hex_to_vec4f(0x8466AEFF), - .fb_selection = hex_to_vec4f(0x44475AFF), - .plus = hex_to_vec4f(0x50FA7BFF), - .minus = hex_to_vec4f(0xFF5555FF), - .truee = hex_to_vec4f(0x50FA7BFF), - .falsee = hex_to_vec4f(0xFF5555FF), - .arrow = hex_to_vec4f(0x8BE9FDFF), // #8BE9FD - .open_square = hex_to_vec4f(0xF8F8F2FF), - .close_square = hex_to_vec4f(0xF8F8F2FF), - .array_content = hex_to_vec4f(0xBD93F9FF), - .link = hex_to_vec4f(0x8BE9FDFF), - .matching_parenthesis = hex_to_vec4f(0x44475AFF), - .type = hex_to_vec4f(0xBD93F9FF), - .function_definition = hex_to_vec4f(0x50FA7BFF), - .anchor = hex_to_vec4f(0xFF79C6FF), - .hl_line = hex_to_vec4f(0x1E2029FF), // #1E2029 - .multiplication = hex_to_vec4f(0x50FA7BFF), - .pointer = hex_to_vec4f(0xFFC9E8FF), // #FFC9E8 - .logic_and = hex_to_vec4f(0x50FA7BFF), - .logic_or = hex_to_vec4f(0xFF5555FF), - .ampersand = hex_to_vec4f(0x8BE9FDFF), - .pipe = hex_to_vec4f(0x50FA7BFF), - .minibuffer = hex_to_vec4f(0x1E2029FF), // #1E2029 - .modeline = hex_to_vec4f(0x22232DFF), - .modeline_accent = hex_to_vec4f(0xBD93F9FF), - .whitespace = hex_to_vec4f(0x565761FF), - .selected_whitespaces = hex_to_vec4f(0xC6C6C1FF), - .indentation_line = hex_to_vec4f(0x565761FF), - .null = hex_to_vec4f(0x8BE9FDFF), - .code_block = hex_to_vec4f(0x23242FFF), - }; - - - // Palenigh - themes[3] = (Theme){ - .cursor = hex_to_vec4f(0xC792EAFF), // #C792EA - .notext_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA - .EOF_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA - .insert_cursor = hex_to_vec4f(0xC792EAFF), - .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), // #FFCB6B - .text = hex_to_vec4f(0xEEFFFFFF), - .background = hex_to_vec4f(0x292D3EFF), - .fringe = hex_to_vec4f(0x292D3EFF), - .comment = hex_to_vec4f(0x676E95FF), - .hashtag = hex_to_vec4f(0x89DDFFFF), // #89DDFF - .logic = hex_to_vec4f(0x89DDFFFF), - .string = hex_to_vec4f(0xC3E88DFF), // #C3E88D - .selection = hex_to_vec4f(0x3C435EFF), - .search = hex_to_vec4f(0x4E5579FF), - .todo = hex_to_vec4f(0xFFCB6BFF), - .line_numbers = hex_to_vec4f(0x676E95FF), - .current_line_number = hex_to_vec4f(0xEEFFFFFF), - .fixme = hex_to_vec4f(0xFF5370FF), // #FF5370 - .note = hex_to_vec4f(0xC3E88DFF), - .bug = hex_to_vec4f(0xFF5370FF), - .not_equals = hex_to_vec4f(0xFF5370FF), - .exclamation = hex_to_vec4f(0x89DDFFFF), - .equals = hex_to_vec4f(0xC3E88DFF), - .equals_equals = hex_to_vec4f(0xC3E88DFF), - .greater_than = hex_to_vec4f(0xC3E88DFF), - .less_than = hex_to_vec4f(0xFF5370FF), - .marks = hex_to_vec4f(0x4E5579FF), - .fb_selection = hex_to_vec4f(0x3C435EFF), - .plus = hex_to_vec4f(0xC3E88DFF), - .minus = hex_to_vec4f(0xFF5370FF), - .truee = hex_to_vec4f(0xC3E88DFF), - .falsee = hex_to_vec4f(0xFF5370FF), - .arrow = hex_to_vec4f(0xFFCB6BFF), - .open_square = hex_to_vec4f(0xEEFFFFFF), - .close_square = hex_to_vec4f(0xEEFFFFFF), - .array_content = hex_to_vec4f(0x82AAFFFF), // #82AAFF - .link = hex_to_vec4f(0x89DDFFFF), - .logic_or = hex_to_vec4f(0xFF5370FF), - .pipe = hex_to_vec4f(0xC3E88DFF), - .ampersand = hex_to_vec4f(0x89DDFFFF), - .logic_and = hex_to_vec4f(0xC3E88DFF), - .pointer = hex_to_vec4f(0xF78C6CFF), // #F78C6C - .multiplication = hex_to_vec4f(0xC3E88DFF), - .matching_parenthesis = hex_to_vec4f(0x3C435EFF), - .hl_line = hex_to_vec4f(0x242837FF), - .type = hex_to_vec4f(0xC792EAFF), - .function_definition = hex_to_vec4f(0x82AAFFFF), - .anchor = hex_to_vec4f(0xFF5370FF), - .minibuffer = hex_to_vec4f(0x292D3EFF), - .modeline = hex_to_vec4f(0x232635FF), - .modeline_accent = hex_to_vec4f(0xC792EAFF), - .whitespace = hex_to_vec4f(0x4E5579FF), - .selected_whitespaces = hex_to_vec4f(0xBECCCCFF), - .indentation_line = hex_to_vec4f(0x4E5579FF), - .null = hex_to_vec4f(0xF78C6CFF), - .code_block = hex_to_vec4f(0x232635FF), - }; - - // DOOM city lights - themes[4] = (Theme){ - .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF - .notext_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF - .EOF_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF - .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D - .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 - .text = hex_to_vec4f(0xA0B3C5FF), - .background = hex_to_vec4f(0x1D252CFF), - .fringe = hex_to_vec4f(0x1D252CFF), - .comment = hex_to_vec4f(0x41505EFF), - .hashtag = hex_to_vec4f(0x5EC4FFFF), - .logic = hex_to_vec4f(0x5EC4FFFF), - .string = hex_to_vec4f(0x539AFCFF), // #539AFC - .selection = hex_to_vec4f(0x28323BFF), - .search = hex_to_vec4f(0x4189B2FF), - .todo = hex_to_vec4f(0xEBBF83FF), - .line_numbers = hex_to_vec4f(0x384551FF), - .current_line_number = hex_to_vec4f(0xA0B3C5FF), - .fixme = hex_to_vec4f(0xD95468FF), // #D95468 - .note = hex_to_vec4f(0x8BD49CFF), // #8BD49C - .bug = hex_to_vec4f(0xD95468FF), - .not_equals = hex_to_vec4f(0xD95468FF), - .exclamation = hex_to_vec4f(0x5EC4FFFF), - .equals = hex_to_vec4f(0x8BD49CFF), - .equals_equals = hex_to_vec4f(0x8BD49CFF), - .greater_than = hex_to_vec4f(0x8BD49CFF), - .less_than = hex_to_vec4f(0xD95468FF), - .marks = hex_to_vec4f(0x4189B2FF), - .fb_selection = hex_to_vec4f(0x28323BFF), - .plus = hex_to_vec4f(0x8BD49CFF), - .minus = hex_to_vec4f(0xD95468FF), - .truee = hex_to_vec4f(0x8BD49CFF), - .falsee = hex_to_vec4f(0xD95468FF), - .arrow = hex_to_vec4f(0xA0B3C5FF), - .open_square = hex_to_vec4f(0xA0B3C5FF), - .close_square = hex_to_vec4f(0xA0B3C5FF), - .array_content = hex_to_vec4f(0x539AFCFF), - .link = hex_to_vec4f(0x539AFCFF), - .matching_parenthesis = hex_to_vec4f(0x28323BFF), - .type = hex_to_vec4f(0xEBBF83FF), - .function_definition = hex_to_vec4f(0x33CED8FF), // #33CED8 - .anchor = hex_to_vec4f(0xE27E8DFF), - .hl_line = hex_to_vec4f(0x181E24FF), - .multiplication = hex_to_vec4f(0x8BD49CFF), - .pointer = hex_to_vec4f(0x539AFCFF), - .logic_and = hex_to_vec4f(0x8BD49CFF), - .logic_or = hex_to_vec4f(0xD95468FF), - .ampersand = hex_to_vec4f(0x5EC4FFFF), - .pipe = hex_to_vec4f(0x8BD49CFF), - .minibuffer = hex_to_vec4f(0x181E24FF), - .modeline = hex_to_vec4f(0x181F25FF), - .modeline_accent = hex_to_vec4f(0x5EC4FFFF), - .whitespace = hex_to_vec4f(0x384551FF), - .selected_whitespaces = hex_to_vec4f(0x808F9DFF), - .indentation_line = hex_to_vec4f(0x384551FF), - .null = hex_to_vec4f(0xE27E8DFF), - .code_block = hex_to_vec4f(0x20282FFF), - }; - - - // DOOM molokai - themes[5] = (Theme) { - .cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 - .notext_cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 - .EOF_cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 - .insert_cursor = hex_to_vec4f(0xFB2874FF), - .emacs_cursor = hex_to_vec4f(0xE2C770FF), //#E2C770 - .text = hex_to_vec4f(0xD6D6D4FF), - .background = hex_to_vec4f(0x1C1E1FFF), - .fringe = hex_to_vec4f(0x1C1E1FFF), - .comment = hex_to_vec4f(0x555556FF), - .hashtag = hex_to_vec4f(0x9C91E4FF), //#9C91E4 - .logic = hex_to_vec4f(0xFB2874FF), - .string = hex_to_vec4f(0xE2C770FF), - .selection = hex_to_vec4f(0x4E4E4EFF), - .search = hex_to_vec4f(0x9C91E4FF), - .todo = hex_to_vec4f(0xE2C770FF), - .line_numbers = hex_to_vec4f(0x555556FF), - .current_line_number = hex_to_vec4f(0xCFC0C5FF), - .fixme = hex_to_vec4f(0xE74C3CFF), //#E74C3C - .note = hex_to_vec4f(0xB6E63EFF), //#B6E63E - .bug = hex_to_vec4f(0xE74C3CFF), - .not_equals = hex_to_vec4f(0xE74C3CFF), - .exclamation = hex_to_vec4f(0x9C91E4FF), - .equals = hex_to_vec4f(0xB6E63EFF), - .equals_equals = hex_to_vec4f(0xB6E63EFF), - .greater_than = hex_to_vec4f(0xB6E63EFF), - .less_than = hex_to_vec4f(0xE74C3CFF), - .marks = hex_to_vec4f(0xB6E63EFF), - .fb_selection = hex_to_vec4f(0x4E4E4EFF), - .plus = hex_to_vec4f(0xB6E63EFF), - .minus = hex_to_vec4f(0xE74C3CFF), - .truee = hex_to_vec4f(0xB6E63EFF), - .falsee = hex_to_vec4f(0xE74C3CFF), - .arrow = hex_to_vec4f(0xD6D6D4FF), - .open_square = hex_to_vec4f(0xD6D6D4FF), - .close_square = hex_to_vec4f(0xD6D6D4FF), - .array_content = hex_to_vec4f(0x9C91E4FF), - .link = hex_to_vec4f(0x9C91E4FF), - .matching_parenthesis = hex_to_vec4f(0x4E4E4EFF), - .type = hex_to_vec4f(0x66D9EFFF), - .function_definition = hex_to_vec4f(0xB6E63EFF), - .anchor = hex_to_vec4f(0x9C91E4FF), - .hl_line = hex_to_vec4f(0x222323FF), - .multiplication = hex_to_vec4f(0xB6E63EFF), - .pointer = hex_to_vec4f(0x9C91E4FF), - .logic_and = hex_to_vec4f(0xB6E63EFF), - .logic_or = hex_to_vec4f(0xE74C3CFF), - .ampersand = hex_to_vec4f(0x9C91E4FF), - .pipe = hex_to_vec4f(0xB6E63EFF), - .minibuffer = hex_to_vec4f(0x222323FF), - .modeline = hex_to_vec4f(0x2D2E2EFF), - .modeline_accent = hex_to_vec4f(0xB6E63EFF), - .whitespace = hex_to_vec4f(0x4E4E4EFF), - .selected_whitespaces = hex_to_vec4f(0x808F9DFF), - .indentation_line = hex_to_vec4f(0x4E4E4EFF), - .null = hex_to_vec4f(0xFD971FFF), - .code_block = hex_to_vec4f(0x2D2E2EFF), - }; - - - // SUNSET - themes[6] = (Theme){ - .cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 - .notext_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 - .EOF_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 - .insert_cursor = hex_to_vec4f(0xD46A7DFF), // #D46A7D - .emacs_cursor = hex_to_vec4f(0x9A8B6AFF), // #9A8B6A - .text = hex_to_vec4f(0xCCCCC5FF), - .background = hex_to_vec4f(0x0C0D12FF), - .fringe = hex_to_vec4f(0x0C0D12FF), - .comment = hex_to_vec4f(0x8E8E89FF), - .hashtag = hex_to_vec4f(0xD9A173FF), - .logic = hex_to_vec4f(0xD9A173FF), - .string = hex_to_vec4f(0x6A7E74FF), // #6A7E74 - .selection = hex_to_vec4f(0x28292DFF), - .search = hex_to_vec4f(0x805F44FF), // #805F44 - .todo = hex_to_vec4f(0x9A8B6AFF), - .line_numbers = hex_to_vec4f(0x1B1B21FF), - .current_line_number = hex_to_vec4f(0xCCCCC5FF), - .fixme = hex_to_vec4f(0xC06873FF), // #C06873 - .note = hex_to_vec4f(0x6A7E74FF), - .bug = hex_to_vec4f(0xC06873FF), - .not_equals = hex_to_vec4f(0xD46A7DFF), - .exclamation = hex_to_vec4f(0xD46A7DFF), - .equals = hex_to_vec4f(0x6A7E74FF), - .equals_equals = hex_to_vec4f(0x6A7E74FF), - .greater_than = hex_to_vec4f(0x6A7E74FF), - .less_than = hex_to_vec4f(0xC06873FF), - .marks = hex_to_vec4f(0x805F44FF), - .fb_selection = hex_to_vec4f(0x28292DFF), - .plus = hex_to_vec4f(0x6A7E74FF), - .minus = hex_to_vec4f(0xD46A7DFF), - .truee = hex_to_vec4f(0x6A7E74FF), - .falsee = hex_to_vec4f(0xD46A7DFF), - .arrow = hex_to_vec4f(0xCCCCC5FF), - .open_square = hex_to_vec4f(0xCCCCC5FF), - .close_square = hex_to_vec4f(0xCCCCC5FF), - .array_content = hex_to_vec4f(0xCCCCC5FF), - .link = hex_to_vec4f(0xD9A173FF), - .logic_or = hex_to_vec4f(0xD46A7DFF), - .pipe = hex_to_vec4f(0x6A7E74FF), - .ampersand = hex_to_vec4f(0x6A7E74FF), - .logic_and = hex_to_vec4f(0x6A7E74FF), - .pointer = hex_to_vec4f(0xD9A173FF), - .multiplication = hex_to_vec4f(0x6A7E74FF), - .matching_parenthesis = hex_to_vec4f(0x28292DFF), - .hl_line = hex_to_vec4f(0x0A0B0FFF), - .type = hex_to_vec4f(0x9A8B6AFF), - .function_definition = hex_to_vec4f(0xE07084FF), // #E07084 - .anchor = hex_to_vec4f(0xE07084FF), - .minibuffer = hex_to_vec4f(0x0C0D12FF), - .modeline = hex_to_vec4f(0x08090CFF), - .modeline_accent = hex_to_vec4f(0xD9A173FF), - .whitespace = hex_to_vec4f(0x1B1B21FF), - .selected_whitespaces = hex_to_vec4f(0xA3A39DFF), - .indentation_line = hex_to_vec4f(0x28292DFF), - .null = hex_to_vec4f(0xD46A7DFF), - .code_block = hex_to_vec4f(0x0B0C11FF), - }; - - - // Helix - themes[7] = (Theme){ - .cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 - .notext_cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 - .EOF_cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 - .insert_cursor = hex_to_vec4f(0x5A5977FF), - .emacs_cursor = hex_to_vec4f(0x5A5977FF), - .text = hex_to_vec4f(0xFFFFFFFF), - .fringe = hex_to_vec4f(0x3B224CFF), //#3B224C - .comment = hex_to_vec4f(0x697C81FF), - .hashtag = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF - .logic = hex_to_vec4f(0xECCDBAFF), //#ECCDBA - .string = hex_to_vec4f(0xCCCCCCFF), - .selection = hex_to_vec4f(0x540099FF), //#540099 - .search = hex_to_vec4f(0x540099FF), - .todo = hex_to_vec4f(0x6F44F0FF), - .line_numbers = hex_to_vec4f(0x5A5977FF), - .current_line_number = hex_to_vec4f(0xDBBFEFFF), - .fixme = hex_to_vec4f(0xF47868FF), //#F47868 - .note = hex_to_vec4f(0x6F44F0FF), - .bug = hex_to_vec4f(0xF47868FF), - .not_equals = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF - .exclamation = hex_to_vec4f(0xDBBFEFFF), - .equals = hex_to_vec4f(0xDBBFEFFF), - .equals_equals = hex_to_vec4f(0xDBBFEFFF), - .greater_than = hex_to_vec4f(0xDBBFEFFF), - .less_than = hex_to_vec4f(0xDBBFEFFF), - .marks = hex_to_vec4f(0x540099FF), - .fb_selection = hex_to_vec4f(0x540099FF), - .plus = hex_to_vec4f(0xDBBFEFFF), - .minus = hex_to_vec4f(0xDBBFEFFF), - .truee = hex_to_vec4f(0xFFFFFFFF), - .falsee = hex_to_vec4f(0xFFFFFFFF), - .arrow = hex_to_vec4f(0xA4A0E8FF), //#A4A0E8 - .open_square = hex_to_vec4f(0xA4A0E8FF), - .close_square = hex_to_vec4f(0xA4A0E8FF), - .array_content = hex_to_vec4f(0xA4A0E8FF), - .link = hex_to_vec4f(0xA4A0E8FF), - .logic_or = hex_to_vec4f(0xDBBFEFFF), - .pipe = hex_to_vec4f(0xDBBFEFFF), - .ampersand = hex_to_vec4f(0xDBBFEFFF), - .logic_and = hex_to_vec4f(0xDBBFEFFF), - .pointer = hex_to_vec4f(0xFFFFFFFF), - .multiplication = hex_to_vec4f(0xFFFFFFFF), - .matching_parenthesis = hex_to_vec4f(0x6C6999FF), - .hl_line = hex_to_vec4f(0x281733FF), - .type = hex_to_vec4f(0xFFFFFFFF), - .function_definition = hex_to_vec4f(0xFFFFFFFF), - .anchor = hex_to_vec4f(0xFFFFFFFF), - .minibuffer = hex_to_vec4f(0x3B224CFF), - .modeline = hex_to_vec4f(0x281733FF), - .modeline_accent = hex_to_vec4f(0x281733FF), - .whitespace = hex_to_vec4f(0x281733FF), - .selected_whitespaces = hex_to_vec4f(0xFFFFFFFF), - .indentation_line = hex_to_vec4f(0x281733FF), - .null = hex_to_vec4f(0xFFFFFFFF), - .code_block = hex_to_vec4f(0x281733FF), - }; - - - // Initialize currentTheme to the first theme - if (current_mode == HELIX) { - currentTheme = themes[7]; - } else { - currentTheme = themes[0]; - } - previousThemeIndex = 0; - currentThemeIndex = 0; - interpolationProgress = 1.0f; // No interpolation needed at start - - } diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.c.blob deleted file mode 100644 index 88eee6cec41e4d3b736e290fc723110faa266f01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39046 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 ABLDyZ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h deleted file mode 100644 index 369821d1..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h +++ /dev/null @@ -1,93 +0,0 @@ -#ifndef THEME_H -#define THEME_H - -#include "la.h" -#include "stdbool.h" - -typedef struct { - Vec4f cursor; - Vec4f notext_cursor; - Vec4f EOF_cursor; - Vec4f insert_cursor; - Vec4f emacs_cursor; - Vec4f text; - Vec4f background; - Vec4f logic; - Vec4f comment; - Vec4f hashtag; - Vec4f string; - Vec4f selection; - Vec4f search; - Vec4f line_numbers; - Vec4f todo; - Vec4f fixme; - Vec4f note; - Vec4f bug; - Vec4f equals; - Vec4f not_equals; - Vec4f exclamation; - Vec4f equals_equals; - Vec4f less_than; - Vec4f greater_than; - Vec4f arrow; - Vec4f plus; - Vec4f minus; - Vec4f truee; - Vec4f falsee; - Vec4f open_square; - Vec4f close_square; - Vec4f array_content; - Vec4f current_line_number; - Vec4f marks; - Vec4f fb_selection; - Vec4f link; - Vec4f logic_or; - Vec4f pipe; - Vec4f logic_and; - Vec4f ampersand; - Vec4f multiplication; - Vec4f pointer; - Vec4f modeline; - Vec4f modeline_accent; - Vec4f minibuffer; - Vec4f matching_parenthesis; - Vec4f hl_line; - Vec4f type; - Vec4f function_definition; - Vec4f anchor; - Vec4f whitespace; - Vec4f selected_whitespaces; - Vec4f indentation_line; - Vec4f null; - Vec4f code_block; - Vec4f fringe; -} Theme; - -#define CURRENT_THEME (currentTheme) // interpolated theme - -/* #define CURRENT_THEME (themes[currentThemeIndex]) */ - - -extern Theme themes[]; -extern Theme currentTheme; // Interpolated theme -extern Theme previousTheme; -extern int currentThemeIndex; -extern int previousThemeIndex; // Index of the previous theme - -extern float interpolationProgress; -extern bool theme_lerp; -extern float theme_lerp_speed; -extern float theme_lerp_treshold; - - - -void initialize_themes(); -void theme_next(int *currentThemeIndex); -void theme_previous(int *currentThemeIndex); -void update_theme_interpolation(); // Function to handle interpolation -Vec4f color_lerp(Vec4f start, Vec4f end, float t); // Function to interpolate colors -void switch_to_theme(int *currentThemeIndex, int newIndex); -void transition_color(Vec4f* color_field, Vec4f target_color, float transition_speed); - - -#endif // THEME_H diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@theme.h.blob deleted file mode 100644 index 0261de715559c33b991559b1bf8d87f38422019d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20214 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 ON`pi<aPtt*&Hn@LDU+N4 diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h b/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h deleted file mode 100644 index 8aff68e8..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h +++ /dev/null @@ -1,20 +0,0 @@ - -#ifndef TREESITTER_H -#define TREESITTER_H - -#include "editor.h" -#include "file_browser.h" -#include "theme.h" -#include <tree_sitter/api.h> - - -void tree(Editor *e, File_Browser *fb); -void apply_syntax_highlighting(Editor *editor, TSNode node); -void highlight_node(Editor *editor, TSNode node, Vec4f color); - -void update_theme_colors_based_on_syntax(TSNode node, Theme *theme); - -#endif // TREESITTER_H - - - diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@treesitter.h.blob deleted file mode 100644 index 8055e0c4e0587a780ed84a109f1fe1f8968ed9f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13860 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 amqMy=1JY9ezq)Dbrk$JE@5-bKaQ_FVh63FH diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h b/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h deleted file mode 100644 index c3efacb1..00000000 --- a/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef YASNIPPET_H_ -#define YASNIPPET_H_ - - -// YASNIPPET -#define MAX_SNIPPET_KEY_LENGTH 50 -#define MAX_SNIPPET_CONTENT_LENGTH 1024 - -typedef struct { - char key[MAX_SNIPPET_KEY_LENGTH]; - char content[MAX_SNIPPET_CONTENT_LENGTH]; -} Snippet; - -typedef struct { - Snippet *array; - size_t used; - size_t size; -} SnippetArray; - -extern SnippetArray snippets; - -void init_snippet_array(SnippetArray *a, size_t initial_size); -void insert_snippet(SnippetArray *a, Snippet snippet); -void free_snippet_array(SnippetArray *a); -void load_snippets_from_directory(); -void activate_snippet(Editor *e); - - - -#endif // YASNIPPET_H_ diff --git a/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h.blob b/.ccls-cache/@home@l@Desktop@test@ded/src@yasnippet.h.blob deleted file mode 100644 index 9743123d97efcc5bd2b321076d11cec1416179c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14191 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 N*4~n-NQf|N{||}+P`>~G From f32223f2293b80492d139c28e6b31efd6ac41a67 Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Sun, 17 Mar 2024 16:25:04 +0100 Subject: [PATCH 64/74] we are so back --- build.sh | 1 - .../ded/fonts/FiraCodeNerdFontPropo-Bold.ttf | Bin 0 -> 2240812 bytes .../ded/fonts/JetBrainsMonoNerdFont-Bold.ttf | Bin 2081928 -> 0 bytes config/ded/fonts/MonoLisa-Bold.ttf | Bin 0 -> 84252 bytes config/ded/fonts/MonoLisa-BoldItalic.ttf | Bin 0 -> 87384 bytes config/ded/fonts/fontawesome-regular.ttf | Bin 165548 -> 0 bytes config/ded/scripts/ttf2png.py | 38 - src/editor.c | 182 +-- src/editor.h | 8 +- src/evil.c | 15 +- src/main.c | 55 +- src/render.c | 140 +- src/theme.c | 1302 +++++++++-------- todo.org | 24 +- 14 files changed, 805 insertions(+), 960 deletions(-) create mode 100644 config/ded/fonts/FiraCodeNerdFontPropo-Bold.ttf delete mode 100644 config/ded/fonts/JetBrainsMonoNerdFont-Bold.ttf create mode 100644 config/ded/fonts/MonoLisa-Bold.ttf create mode 100644 config/ded/fonts/MonoLisa-BoldItalic.ttf delete mode 100644 config/ded/fonts/fontawesome-regular.ttf delete mode 100755 config/ded/scripts/ttf2png.py diff --git a/build.sh b/build.sh index cac0959a..25f39dc6 100755 --- a/build.sh +++ b/build.sh @@ -35,4 +35,3 @@ fi $CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS ./libtree-sitter-json.a `pkg-config --libs $PKGS ` - diff --git a/config/ded/fonts/FiraCodeNerdFontPropo-Bold.ttf b/config/ded/fonts/FiraCodeNerdFontPropo-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2fa0a1f5af2369940d050404888005dac39fc423 GIT binary patch literal 2240812 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%0AAJ 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%0AuQgNvKVFo7EozRP1-vVyx~ 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 Qv%~mNluT23WR%DM1AvF*ZvX%Q literal 0 HcmV?d00001 diff --git a/config/ded/fonts/JetBrainsMonoNerdFont-Bold.ttf b/config/ded/fonts/JetBrainsMonoNerdFont-Bold.ttf deleted file mode 100644 index 610c8c02b15355fd8d60a9a731bd5f64355d752a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2081928 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%0D2*P%77o645?Gotwl8aN;?aITVk0)(%Z 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%0D8`4{$ijgYCd0r7S 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 diff --git a/config/ded/fonts/MonoLisa-Bold.ttf b/config/ded/fonts/MonoLisa-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..385908d751ebf95ff046287c75ef3dd3e282f692 GIT binary patch literal 84252 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 I@=Blh-((ZJKmY&$ literal 0 HcmV?d00001 diff --git a/config/ded/fonts/MonoLisa-BoldItalic.ttf b/config/ded/fonts/MonoLisa-BoldItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0bcf5b46792fc19c5d9cf560e5caa6b6e361d14e GIT binary patch literal 87384 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 literal 0 HcmV?d00001 diff --git a/config/ded/fonts/fontawesome-regular.ttf b/config/ded/fonts/fontawesome-regular.ttf deleted file mode 100644 index 35acda2fa1196aad98c2adf4378a7611dd713aa3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 165548 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 diff --git a/config/ded/scripts/ttf2png.py b/config/ded/scripts/ttf2png.py deleted file mode 100755 index 46865cac..00000000 --- a/config/ded/scripts/ttf2png.py +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env python -import sys -import os -import subprocess - -from fontTools.ttLib import TTFont - -TEXTS_DIR = "texts" -IMAGES_DIR = "images" - -TTF_PATH = sys.argv[1] -FONT_SIZE = sys.argv[2] -TTF_NAME, TTF_EXT = os.path.splitext(os.path.basename(TTF_PATH)) - -ttf = TTFont(TTF_PATH, 0, verbose=0, allowVID=0, ignoreDecompileErrors=True, fontNumber=-1) - -for d in [TEXTS_DIR, IMAGES_DIR]: - if not os.path.isdir(d): - os.mkdir(d) - -for x in ttf["cmap"].tables: - for y in x.cmap.items(): - char_unicode = unichr(y[0]) - char_utf8 = char_unicode.encode('utf_8') - char_name = y[1] - f = open(os.path.join(TEXTS_DIR, char_name + '.txt'), 'w') - f.write(char_utf8) - f.close() -ttf.close() - -files = os.listdir(TEXTS_DIR) -for filename in files: - name, ext = os.path.splitext(filename) - input_txt = TEXTS_DIR + "/" + filename - output_png = IMAGES_DIR + "/" + TTF_NAME + "_" + name + "_" + FONT_SIZE + ".png" - subprocess.call(["convert", "-font", TTF_PATH, "-pointsize", FONT_SIZE, "-background", "rgba(0,0,0,0)", "label:@" + input_txt, output_png]) - -print("finished") diff --git a/src/editor.c b/src/editor.c index 37c439c4..73a12fc0 100644 --- a/src/editor.c +++ b/src/editor.c @@ -36,7 +36,7 @@ bool copiedLine = false; bool matchParenthesis = true; bool hl_line = false; -bool superDrammtic = false; +bool superDrammtic = true; bool instantCamera = false; bool showIndentationLines = true; @@ -49,7 +49,7 @@ bool ivy = false; bool M_x_active = false; bool evil_command_active = false; -bool BlockInsertCurosr = false; +bool BlockInsertCursor = true; bool highlightCurrentLineNumberOnInsertMode = true; // the loong way bool helix = false; @@ -59,6 +59,12 @@ bool automatic_zoom = true; float fringeWidth = 6.0f; bool showFringe = true; +bool ctrl_x_pressed = false; + +void reset_keychords() { + ctrl_x_pressed = false; +} + void set_current_mode() { if (emacs) { @@ -333,58 +339,6 @@ size_t get_position_from_line_column(Editor *e, size_t line, size_t column) { } - -/* Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { */ -/* printf("Loading %s\n", file_path); */ - -/* e->data.count = 0; */ -/* Errno err = read_entire_file(file_path, &e->data); */ -/* if (err != 0) return err; */ - -/* // Move cursor to the specified line and column */ -/* e->cursor = get_position_from_line_column(e, line, column); */ - -/* editor_retokenize(e); */ - -/* e->file_path.count = 0; */ -/* sb_append_cstr(&e->file_path, file_path); */ -/* sb_append_null(&e->file_path); */ - -/* // Add file path to buffer history */ -/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ -/* e->buffer_history[e->buffer_history_count++] = strdup(file_path); */ -/* } */ - -/* return 0; */ -/* } */ - -/* Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { */ -/* char expanded_file_path[PATH_MAX]; */ -/* expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); */ -/* printf("Loading %s\n", expanded_file_path); */ - -/* e->data.count = 0; */ -/* Errno err = read_entire_file(expanded_file_path, &e->data); */ -/* if (err != 0) return err; */ - -/* // Move cursor to the specified line and column */ -/* e->cursor = get_position_from_line_column(e, line, column); */ - -/* editor_retokenize(e); */ - -/* e->file_path.count = 0; */ -/* sb_append_cstr(&e->file_path, expanded_file_path); */ -/* sb_append_null(&e->file_path); */ - -/* // Add file path to buffer history */ -/* if (e->buffer_history_count < MAX_BUFFER_HISTORY) { */ -/* e->buffer_history[e->buffer_history_count++] = strdup(expanded_file_path); */ -/* } */ -/* return 0; */ -/* } */ - - - Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { char expanded_file_path[PATH_MAX]; expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); @@ -417,7 +371,6 @@ Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { - size_t editor_cursor_row(const Editor *e) { assert(e->lines.count > 0); @@ -658,20 +611,21 @@ void editor_clipboard_paste(Editor *e) void editor_update_selection(Editor *e, bool shift) { if (e->searching) return; - if (current_mode == VISUAL) { - if (!e->selection) { - evil_visual_char(e); - } - } else if (shift) { + if (shift) { if (!e->selection) { e->selection = true; e->select_begin = e->cursor; } - } else { - e->selection = false; - } + } else if (current_mode == VISUAL_LINE) { + + } else if (current_mode == VISUAL) { + + } else { + e->selection = false; + } } + // search void editor_start_search(Editor *e) { @@ -1617,8 +1571,6 @@ void find_matches_in_editor_data(Editor *e, const char *word, char **matches, si } } - - Errno editor_goto_line(Editor *editor, const char *params[]) { if (!params || !params[0]) { // Handle error: No line number provided @@ -1660,108 +1612,8 @@ void get_cursor_position(const Editor *e, size_t *line, int *character) { -// TODO doesn't work -// VARIABLES DOCUMENTATION -struct hashmap *variable_docs_map; - -void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1) { - variable_docs_map = hashmap_new( - sizeof(VariableDoc), // Size of each element - 16, // Initial capacity - seed0, seed1, // Hash seeds - variable_doc_hash, // Hash function - variable_doc_compare,// Compare function - NULL, // Element free function (NULL if not needed) - NULL // User data for compare function (NULL if not needed) - ); - - if (!variable_docs_map) { - // Handle hashmap initialization failure - fprintf(stderr, "Failed to initialize variable documentation map\n"); - } -} -bool document_variable(const char *name, const char *type, const char *description) { - // Check if the variable is already documented using the variable name as the key - if (hashmap_get(variable_docs_map, name) != NULL) { - // Variable already documented - return false; - } - - VariableDoc *doc = malloc(sizeof(VariableDoc)); - if (!doc) { - // Memory allocation failure - return false; - } - - // Duplicate the strings to ensure they are properly managed - doc->var_name = strdup(name); - doc->var_type = strdup(type); - doc->description = strdup(description); - - // Insert the new documentation into the map - // The hashmap_set function calculates the hash internally - if (hashmap_set(variable_docs_map, doc) == NULL) { - // Successfully documented the variable or replaced an existing one - return true; - } else { - // Cleanup in case of failure - free(doc->var_name); - free(doc->var_type); - free(doc->description); - free(doc); - return false; - } -} - - - -// TODO type checking -void initialize_variable_documentation() { - // Define hash seeds - uint64_t seed0 = 0x12345678; - uint64_t seed1 = 0x9ABCDEF0; - - // Initialize the hashmap with seeds - initialize_variable_docs_map(seed0, seed1); - - // Document variables - document_variable("zoom_factor", "float", "Controls the zoom level of the editor view."); - document_variable("showLineNumbers", "bool", "Determines whether line numbers are displayed."); - // Add more variables here... -} - - - -void print_variable_doc(const char *var_name) { - VariableDoc *doc = (VariableDoc *)hashmap_get(variable_docs_map, var_name); - if (doc) { - printf("Variable Name: %s\nType: %s\nDescription: %s\n", doc->var_name, doc->var_type, doc->description); - } else { - printf("No documentation found for variable '%s'.\n", var_name); - } -} - - - -uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1) { - const char *str = item; - uint64_t hash = seed0; - while (*str) { - hash = 31 * hash + (*str++); - } - return hash ^ seed1; -} - - -int variable_doc_compare(const void *a, const void *b, void *udata) { - (void)udata; // Unfinished avoid compiler warning - const VariableDoc *doc = a; - const char *key = b; - return strcmp(doc->var_name, key); -} - diff --git a/src/editor.h b/src/editor.h index 0a97bf3c..4105b50e 100644 --- a/src/editor.h +++ b/src/editor.h @@ -38,7 +38,7 @@ extern bool M_x_active; extern bool evil_command_active; extern bool quit; -extern bool BlockInsertCurosr; +extern bool BlockInsertCursor; extern bool highlightCurrentLineNumberOnInsertMode; extern bool instantCamera; @@ -47,6 +47,11 @@ extern bool helix; extern bool emacs; extern bool automatic_zoom; +// Emacs Style KeyChords +extern bool ctrl_x_pressed; + +void reset_keychords(); + extern float fringeWidth; extern bool showFringe; @@ -103,6 +108,7 @@ typedef struct { bool selection; size_t select_begin; + size_t select_end; // Needed for VISUAL_LINE selection size_t cursor; bool has_mark; // Indicates if there's a marked search result. diff --git a/src/evil.c b/src/evil.c index 1e93c23a..fc92a0cb 100644 --- a/src/evil.c +++ b/src/evil.c @@ -250,20 +250,7 @@ void evil_paste_before(Editor* editor) { void evil_visual_char(Editor *e) { e->selection = true; - - // Identify the current line the cursor is on - size_t cursor_row = editor_cursor_row(e); - Line current_line = e->lines.items[cursor_row]; - - // If in VISUAL_LINE mode, adjust the selection to span the entire line - if (current_mode == VISUAL_LINE) { - e->select_begin = current_line.begin; - - // Set the cursor to the end of the current line to span the whole line - e->cursor = current_line.end; - } else { - e->select_begin = e->cursor; - } + e->select_begin = e->cursor; } // TODO doesn't work diff --git a/src/main.c b/src/main.c index 4b54264b..ba74bfcf 100644 --- a/src/main.c +++ b/src/main.c @@ -197,12 +197,6 @@ int main(int argc, char **argv) uint64_t seed0 = 0x12345678; uint64_t seed1 = 0x9ABCDEF0; - uint64_t seed2 = 0x1E7EDAD0; - uint64_t seed3 = 0x3E8A3D59; - - initialize_variable_docs_map(seed2, seed3); - initialize_variable_documentation(); - // Allocate and initialize the commands hashmap editor.commands = hashmap_new( sizeof(Command), // Size of each element @@ -733,6 +727,8 @@ int main(int argc, char **argv) editor_clipboard_copy(&editor); editor_delete_selection(&editor); editor.selection = false; + } else if (event.key.keysym.mod & KMOD_CTRL) { + evil_delete_char(&editor); } else { emacs_kill_line(&editor); } @@ -948,8 +944,8 @@ int main(int argc, char **argv) break; case SDLK_f: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_char_right(&editor); + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_char_right(&editor); } break; @@ -1090,6 +1086,8 @@ int main(int argc, char **argv) /* } */ } else if (event.key.keysym.mod & KMOD_SHIFT) { evil_delete_backward_char(&editor); + } else if (event.key.keysym.mod & KMOD_CTRL) { + ctrl_x_pressed = true; } else { editor_clipboard_copy(&editor); evil_delete_char(&editor); @@ -1106,7 +1104,7 @@ int main(int argc, char **argv) case SDLK_r: if (event.key.keysym.mod & KMOD_CTRL) { - file_browser = true; + file_browser = true; } break; @@ -1128,7 +1126,12 @@ int main(int argc, char **argv) if ((event.key.keysym.mod & KMOD_CTRL) && (event.key.keysym.mod & KMOD_ALT)) { evil_open_above(&editor); } else if (event.key.keysym.mod & KMOD_CTRL) { - evil_open_below(&editor); + if (ctrl_x_pressed) { + file_browser = true; + ctrl_x_pressed = false; + } else { + editor_enter(&editor); + } } else if ((event.key.keysym.mod & KMOD_ALT) && !followCursor) { move_camera(&sr, "down", 50.0f); } else if ((event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_ALT)) { @@ -1167,7 +1170,7 @@ int main(int argc, char **argv) } else { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); + editor_backspace(&editor); } else { editor_move_char_left(&editor); } @@ -1705,14 +1708,21 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { case SDLK_j: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + + size_t cursor_row = editor_cursor_row(&editor); + if (cursor_row < editor.lines.count) { + // Set cursor to the end of this new line + Line current_line = editor.lines.items[cursor_row]; + editor.cursor = current_line.end; + } + } + editor.last_stroke = SDL_GetTicks(); + break; case SDLK_h: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); @@ -1730,6 +1740,12 @@ int main(int argc, char **argv) editor_move_paragraph_up(&editor); } else { editor_move_line_up(&editor); + size_t cursor_row = editor_cursor_row(&editor); + if (cursor_row < editor.lines.count) { + // Set cursor to the end of this new line + Line current_line = editor.lines.items[cursor_row]; + editor.cursor = current_line.begin; + } } editor.last_stroke = SDL_GetTicks(); break; @@ -2371,6 +2387,7 @@ int main(int argc, char **argv) editor.selection = false; editor.last_stroke = SDL_GetTicks(); } + reset_keychords(); break; } diff --git a/src/render.c b/src/render.c index 9077cabd..8ddb08bc 100644 --- a/src/render.c +++ b/src/render.c @@ -8,11 +8,12 @@ #include "theme.h" #include <stdbool.h> #include <time.h> +#include "clock.h" float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 1; bool render_whitespaces_on_select = false; bool lerpTokens = true; // TODO -bool mixSelectionColor = true; +bool mixSelectionColor = false; Vec4f blend_color(Vec4f color1, Vec4f color2, float blendFactor) { @@ -24,6 +25,7 @@ Vec4f blend_color(Vec4f color1, Vec4f color2, float blendFactor) { return result; } +// TODO void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { if (editor->searching) { Vec4f cursorColor = CURRENT_THEME.cursor; @@ -528,8 +530,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // TODO shader switch - render_selection(editor, sr, atlas); render_indentation_lines(sr, atlas, editor); + render_selection(editor, sr, atlas); render_whitespaces(atlas, sr, editor); @@ -570,48 +572,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } } - // Render marked search result - { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - if (editor->has_mark) { - for (size_t row = 0; row < editor->lines.count; ++row) { - size_t mark_begin_chr = editor->mark_start; - size_t mark_end_chr = editor->mark_end; - - Line line_chr = editor->lines.items[row]; - - if (mark_begin_chr < line_chr.begin) { - mark_begin_chr = line_chr.begin; - } - - if (mark_end_chr > line_chr.end) { - mark_end_chr = line_chr.end; - } - - if (mark_begin_chr <= mark_end_chr) { - Vec2f mark_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + line_chr.begin, mark_begin_chr - line_chr.begin, - &mark_begin_scr); - - Vec2f mark_end_scr = mark_begin_scr; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + mark_begin_chr, mark_end_chr - mark_begin_chr, - &mark_end_scr); - - // Adjust for line numbers width if they are displayed - if (showLineNumbers) { - mark_begin_scr.x += lineNumberWidth; - mark_end_scr.x += lineNumberWidth; - } - - Vec4f mark_color = CURRENT_THEME.marks; - simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); - } - } - } - simple_renderer_flush(sr); - } render_line_numbers(sr, atlas, editor); @@ -687,7 +647,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // If editor has a mark, make the cursor transparent if (editor->has_mark) { - CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) + /* CURSOR_COLOR.w = 0.0f; // Set alpha to 0 (fully transparent) */ } // Rendering based on mode @@ -731,52 +691,40 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer CURSOR_COLOR); } break; - + case VISUAL_LINE: case VISUAL: { float cursor_width; // Check if the cursor is on an actual character or an empty line if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized(atlas, editor->data.items + editor->cursor, 1, &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; } else { - cursor_width = whitespace_width; + cursor_width = whitespace_width; } - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); + simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); } break; case MINIBUFFER: { // TODO } break; - case EMACS: { float cursor_width; CURSOR_COLOR = CURRENT_THEME.emacs_cursor; // Check if the cursor is on an actual character or an empty line if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; - free_glyph_atlas_measure_line_sized( - atlas, editor->data.items + editor->cursor, - 1, // Measure the actual character at the cursor - &next_char_pos); + Vec2f next_char_pos = cursor_pos; free_glyph_atlas_measure_line_sized(atlas, editor->data.items + editor->cursor, 1, &next_char_pos); cursor_width = next_char_pos.x - cursor_pos.x; } else { cursor_width = whitespace_width; } // Implement blinking for EMACS mode - if (t < CURSOR_BLINK_THRESHOLD || - (t / CURSOR_BLINK_PERIOD) % 2 != 0) { - simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), - CURSOR_COLOR); + if (t < CURSOR_BLINK_THRESHOLD || (t / CURSOR_BLINK_PERIOD) % 2 != 0) { + simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); } } break; @@ -784,7 +732,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case INSERT: CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; /* CURSOR_COLOR = CURRENT_THEME.cursor; */ - if (BlockInsertCurosr) { + if (BlockInsertCursor) { // Check if the cursor is on an actual character or an empty line if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { Vec2f next_char_pos = cursor_pos; @@ -859,30 +807,56 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer /* break; */ /* } */ - case VISUAL_LINE: - // Set the cursor width to cover the entire height of the line - CURSOR_WIDTH = FREE_GLYPH_FONT_SIZE; + } + simple_renderer_flush(sr); + } - // Adjust cursor color for visual distinction. For instance, make it - // slightly transparent - Vec4f TRANSPARENT_CURSOR_COLOR = - vec4f(CURSOR_COLOR.x, CURSOR_COLOR.y, CURSOR_COLOR.z, - 0.5f); // 50% transparency + + // Render marked search result + { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + if (editor->has_mark) { + for (size_t row = 0; row < editor->lines.count; ++row) { + size_t mark_begin_chr = editor->mark_start; + size_t mark_end_chr = editor->mark_end; - // Render the cursor for the entire line - simple_renderer_solid_rect( - sr, cursor_pos, vec2f(CURSOR_WIDTH, FREE_GLYPH_FONT_SIZE), - TRANSPARENT_CURSOR_COLOR); + Line line_chr = editor->lines.items[row]; - // If you'd like to add additional visual cues, consider adding a - // border or some other distinguishing feature. - break; + if (mark_begin_chr < line_chr.begin) { + mark_begin_chr = line_chr.begin; + } + + if (mark_end_chr > line_chr.end) { + mark_end_chr = line_chr.end; + } + + if (mark_begin_chr <= mark_end_chr) { + Vec2f mark_begin_scr = vec2f(0, -((float)row + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + line_chr.begin, mark_begin_chr - line_chr.begin, + &mark_begin_scr); + + Vec2f mark_end_scr = mark_begin_scr; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + mark_begin_chr, mark_end_chr - mark_begin_chr, + &mark_end_scr); + + // Adjust for line numbers width if they are displayed + if (showLineNumbers) { + mark_begin_scr.x += lineNumberWidth; + mark_end_scr.x += lineNumberWidth; + } + + Vec4f mark_color = CURRENT_THEME.marks; + simple_renderer_solid_rect(sr, mark_begin_scr, vec2f(mark_end_scr.x - mark_begin_scr.x, FREE_GLYPH_FONT_SIZE), mark_color); + } + } } simple_renderer_flush(sr); } - + // Render text { diff --git a/src/theme.c b/src/theme.c index 7a106bd1..03f69d56 100644 --- a/src/theme.c +++ b/src/theme.c @@ -6,664 +6,722 @@ int currentThemeIndex = 0; int previousThemeIndex = 0; float interpolationProgress; -Theme themes[8]; +Theme themes[9]; Theme currentTheme; Theme previousTheme; -bool theme_lerp = false; +bool theme_lerp = true; float theme_lerp_speed = 0.005f; float theme_lerp_treshold = 1.0f; // 0.5 mix themes Vec4f color_lerp(Vec4f start, Vec4f end, float t) { - Vec4f result; - result.x = start.x + (end.x - start.x) * t; - result.y = start.y + (end.y - start.y) * t; - result.z = start.z + (end.z - start.z) * t; - result.w = start.w + (end.w - start.w) * t; - return result; + Vec4f result; + result.x = start.x + (end.x - start.x) * t; + result.y = start.y + (end.y - start.y) * t; + result.z = start.z + (end.z - start.z) * t; + result.w = start.w + (end.w - start.w) * t; + return result; } // Function to smoothly transition a color field in the current theme -void transition_color(Vec4f* color_field, Vec4f target_color, float transition_speed) { - if (theme_lerp) { - *color_field = color_lerp(*color_field, target_color, transition_speed); - } else { - *color_field = target_color; - } +void transition_color(Vec4f *color_field, Vec4f target_color, + float transition_speed) { + if (theme_lerp) { + *color_field = color_lerp(*color_field, target_color, transition_speed); + } else { + *color_field = target_color; + } } - void switch_to_theme(int *currentThemeIndex, int newIndex) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - - // Check if newIndex is valid - if (newIndex < 0 || newIndex >= themeCount) { - return; // Invalid index, do nothing - } + const int themeCount = sizeof(themes) / sizeof(themes[0]); - // Update previous theme information - previousTheme = currentTheme; - previousThemeIndex = *currentThemeIndex; + // Check if newIndex is valid + if (newIndex < 0 || newIndex >= themeCount) { + return; // Invalid index, do nothing + } - // Set the new theme index - *currentThemeIndex = newIndex; + // Update previous theme information + previousTheme = currentTheme; + previousThemeIndex = *currentThemeIndex; - // Reset interpolation progress - interpolationProgress = 0.0f; + // Set the new theme index + *currentThemeIndex = newIndex; - if (!theme_lerp) { - // If theme lerp is disabled, set the current theme immediately - currentTheme = themes[*currentThemeIndex]; - } + // Reset interpolation progress + interpolationProgress = 0.0f; + + if (!theme_lerp) { + // If theme lerp is disabled, set the current theme immediately + currentTheme = themes[*currentThemeIndex]; + } } void theme_next(int *currentThemeIndex) { - previousTheme = currentTheme; // Capture the current interpolated state - previousThemeIndex = *currentThemeIndex; + previousTheme = currentTheme; // Capture the current interpolated state + previousThemeIndex = *currentThemeIndex; - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; - // Check if the new index is 7; if so, skip it - if (*currentThemeIndex == 7) { - *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; - } + // Check if the new index is 7; if so, skip it + if (*currentThemeIndex == 7) { + *currentThemeIndex = (*currentThemeIndex + 1) % themeCount; + } - if (!theme_lerp) { - currentTheme = themes[*currentThemeIndex]; - } - interpolationProgress = 0.0f; // Restart interpolation + if (!theme_lerp) { + currentTheme = themes[*currentThemeIndex]; + } + interpolationProgress = 0.0f; // Restart interpolation } void theme_previous(int *currentThemeIndex) { - previousTheme = currentTheme; // Capture the current interpolated state - previousThemeIndex = *currentThemeIndex; + previousTheme = currentTheme; // Capture the current interpolated state + previousThemeIndex = *currentThemeIndex; + + *currentThemeIndex -= 1; + if (*currentThemeIndex < 0) { + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = themeCount - 1; + } + // Check if the new index is 7; if so, skip it + if (*currentThemeIndex == 7) { *currentThemeIndex -= 1; if (*currentThemeIndex < 0) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex = themeCount - 1; + const int themeCount = sizeof(themes) / sizeof(themes[0]); + *currentThemeIndex = themeCount - 1; } + } - // Check if the new index is 7; if so, skip it - if (*currentThemeIndex == 7) { - *currentThemeIndex -= 1; - if (*currentThemeIndex < 0) { - const int themeCount = sizeof(themes) / sizeof(themes[0]); - *currentThemeIndex = themeCount - 1; - } - } + if (!theme_lerp) { + currentTheme = themes[*currentThemeIndex]; + } - if (!theme_lerp) { - currentTheme = themes[*currentThemeIndex]; - } - - interpolationProgress = 0.0f; // Restart interpolation + interpolationProgress = 0.0f; // Restart interpolation } - void update_theme_interpolation() { - if (theme_lerp && interpolationProgress < theme_lerp_treshold) { - interpolationProgress += theme_lerp_speed; - Theme startTheme = previousTheme; - Theme endTheme = themes[currentThemeIndex]; - - // Interpolate each color component - currentTheme.cursor = color_lerp(startTheme.cursor, endTheme.cursor, interpolationProgress); - currentTheme.insert_cursor = color_lerp(startTheme.insert_cursor, endTheme.insert_cursor, interpolationProgress); - currentTheme.emacs_cursor = color_lerp(startTheme.emacs_cursor, endTheme.emacs_cursor, interpolationProgress); - currentTheme.text = color_lerp(startTheme.text, endTheme.text, interpolationProgress); - currentTheme.background = color_lerp(startTheme.background, endTheme.background, interpolationProgress); - currentTheme.logic = color_lerp(startTheme.logic, endTheme.logic, interpolationProgress); - currentTheme.comment = color_lerp(startTheme.comment, endTheme.comment, interpolationProgress); - currentTheme.hashtag = color_lerp(startTheme.hashtag, endTheme.hashtag, interpolationProgress); - currentTheme.string = color_lerp(startTheme.string, endTheme.string, interpolationProgress); - currentTheme.selection = color_lerp(startTheme.selection, endTheme.selection, interpolationProgress); - currentTheme.search = color_lerp(startTheme.search, endTheme.search, interpolationProgress); - currentTheme.line_numbers = color_lerp(startTheme.line_numbers, endTheme.line_numbers, interpolationProgress); - currentTheme.todo = color_lerp(startTheme.todo, endTheme.todo, interpolationProgress); - currentTheme.fixme = color_lerp(startTheme.fixme, endTheme.fixme, interpolationProgress); - currentTheme.note = color_lerp(startTheme.note, endTheme.note, interpolationProgress); - currentTheme.bug = color_lerp(startTheme.bug, endTheme.bug, interpolationProgress); - currentTheme.equals = color_lerp(startTheme.equals, endTheme.equals, interpolationProgress); - currentTheme.not_equals = color_lerp(startTheme.not_equals, endTheme.not_equals, interpolationProgress); - currentTheme.exclamation = color_lerp(startTheme.exclamation, endTheme.exclamation, interpolationProgress); - currentTheme.equals_equals = color_lerp(startTheme.equals_equals, endTheme.equals_equals, interpolationProgress); - currentTheme.less_than = color_lerp(startTheme.less_than, endTheme.less_than, interpolationProgress); - currentTheme.greater_than = color_lerp(startTheme.greater_than, endTheme.greater_than, interpolationProgress); - currentTheme.arrow = color_lerp(startTheme.arrow, endTheme.arrow, interpolationProgress); - currentTheme.plus = color_lerp(startTheme.plus, endTheme.plus, interpolationProgress); - currentTheme.minus = color_lerp(startTheme.minus, endTheme.minus, interpolationProgress); - currentTheme.truee = color_lerp(startTheme.truee, endTheme.truee, interpolationProgress); - currentTheme.falsee = color_lerp(startTheme.falsee, endTheme.falsee, interpolationProgress); - currentTheme.open_square = color_lerp(startTheme.open_square, endTheme.open_square, interpolationProgress); - currentTheme.close_square = color_lerp(startTheme.close_square, endTheme.close_square, interpolationProgress); - currentTheme.array_content = color_lerp(startTheme.array_content, endTheme.array_content, interpolationProgress); - currentTheme.current_line_number = color_lerp(startTheme.current_line_number, endTheme.current_line_number, interpolationProgress); - currentTheme.marks = color_lerp(startTheme.marks, endTheme.marks, interpolationProgress); - currentTheme.fb_selection = color_lerp(startTheme.fb_selection, endTheme.fb_selection, interpolationProgress); - currentTheme.link = color_lerp(startTheme.link, endTheme.link, interpolationProgress); - currentTheme.logic_or = color_lerp(startTheme.logic_or, endTheme.logic_or, interpolationProgress); - currentTheme.pipe = color_lerp(startTheme.pipe, endTheme.pipe, interpolationProgress); - currentTheme.logic_and = color_lerp(startTheme.logic_and, endTheme.logic_and, interpolationProgress); - currentTheme.ampersand = color_lerp(startTheme.ampersand, endTheme.ampersand, interpolationProgress); - currentTheme.multiplication = color_lerp(startTheme.multiplication, endTheme.multiplication, interpolationProgress); - currentTheme.pointer = color_lerp(startTheme.pointer, endTheme.pointer, interpolationProgress); - currentTheme.modeline = color_lerp(startTheme.modeline, endTheme.modeline, interpolationProgress); - currentTheme.modeline_accent = color_lerp(startTheme.modeline_accent, endTheme.modeline_accent, interpolationProgress); - currentTheme.minibuffer = color_lerp(startTheme.minibuffer, endTheme.minibuffer, interpolationProgress); - currentTheme.matching_parenthesis = color_lerp(startTheme.matching_parenthesis, endTheme.matching_parenthesis, interpolationProgress); - currentTheme.hl_line = color_lerp(startTheme.hl_line, endTheme.hl_line, interpolationProgress); - currentTheme.type = color_lerp(startTheme.type, endTheme.type, interpolationProgress); - currentTheme.function_definition = color_lerp(startTheme.function_definition, endTheme.function_definition, interpolationProgress); - currentTheme.anchor = color_lerp(startTheme.anchor, endTheme.anchor, interpolationProgress); - currentTheme.whitespace = color_lerp(startTheme.whitespace, endTheme.whitespace, interpolationProgress); - currentTheme.indentation_line = color_lerp(startTheme.indentation_line, endTheme.indentation_line, interpolationProgress); - currentTheme.null = color_lerp(startTheme.null, endTheme.null, interpolationProgress); - currentTheme.code_block = color_lerp(startTheme.code_block, endTheme.code_block, interpolationProgress); - - if (interpolationProgress >= 1.0f) { - interpolationProgress = 1.0f; - } - } else if (!theme_lerp) { - currentTheme = themes[currentThemeIndex]; - interpolationProgress = 1.0f; + if (theme_lerp && interpolationProgress < theme_lerp_treshold) { + interpolationProgress += theme_lerp_speed; + Theme startTheme = previousTheme; + Theme endTheme = themes[currentThemeIndex]; + + // Interpolate each color component + currentTheme.cursor = color_lerp(startTheme.cursor, endTheme.cursor, interpolationProgress); + currentTheme.insert_cursor = color_lerp(startTheme.insert_cursor, endTheme.insert_cursor, interpolationProgress); + currentTheme.emacs_cursor = color_lerp(startTheme.emacs_cursor, endTheme.emacs_cursor, interpolationProgress); + currentTheme.text = color_lerp(startTheme.text, endTheme.text, interpolationProgress); + currentTheme.background = color_lerp(startTheme.background, endTheme.background, interpolationProgress); + currentTheme.logic = color_lerp(startTheme.logic, endTheme.logic, interpolationProgress); + currentTheme.comment = color_lerp(startTheme.comment, endTheme.comment, interpolationProgress); + currentTheme.hashtag = color_lerp(startTheme.hashtag, endTheme.hashtag, interpolationProgress); + currentTheme.string = color_lerp(startTheme.string, endTheme.string, interpolationProgress); + currentTheme.selection = color_lerp(startTheme.selection, endTheme.selection, interpolationProgress); + currentTheme.search = color_lerp(startTheme.search, endTheme.search, interpolationProgress); + currentTheme.line_numbers = color_lerp(startTheme.line_numbers, endTheme.line_numbers, interpolationProgress); + currentTheme.todo = color_lerp(startTheme.todo, endTheme.todo, interpolationProgress); + currentTheme.fixme = color_lerp(startTheme.fixme, endTheme.fixme, interpolationProgress); + currentTheme.note = color_lerp(startTheme.note, endTheme.note, interpolationProgress); + currentTheme.bug = color_lerp(startTheme.bug, endTheme.bug, interpolationProgress); + currentTheme.equals = color_lerp(startTheme.equals, endTheme.equals, interpolationProgress); + currentTheme.not_equals = color_lerp(startTheme.not_equals, endTheme.not_equals, interpolationProgress); + currentTheme.exclamation = color_lerp(startTheme.exclamation, endTheme.exclamation, interpolationProgress); + currentTheme.equals_equals = color_lerp(startTheme.equals_equals, endTheme.equals_equals, interpolationProgress); + currentTheme.less_than = color_lerp(startTheme.less_than, endTheme.less_than, interpolationProgress); + currentTheme.greater_than = color_lerp(startTheme.greater_than, endTheme.greater_than, interpolationProgress); + currentTheme.arrow = color_lerp(startTheme.arrow, endTheme.arrow, interpolationProgress); + currentTheme.plus = color_lerp(startTheme.plus, endTheme.plus, interpolationProgress); + currentTheme.minus = color_lerp(startTheme.minus, endTheme.minus, interpolationProgress); + currentTheme.truee = color_lerp(startTheme.truee, endTheme.truee, interpolationProgress); + currentTheme.falsee = color_lerp(startTheme.falsee, endTheme.falsee, interpolationProgress); + currentTheme.open_square = color_lerp(startTheme.open_square, endTheme.open_square, interpolationProgress); + currentTheme.close_square = color_lerp(startTheme.close_square, endTheme.close_square, interpolationProgress); + currentTheme.array_content = color_lerp(startTheme.array_content, endTheme.array_content, interpolationProgress); + currentTheme.current_line_number = color_lerp(startTheme.current_line_number, endTheme.current_line_number, interpolationProgress); + currentTheme.marks = color_lerp(startTheme.marks, endTheme.marks, interpolationProgress); + currentTheme.fb_selection = color_lerp(startTheme.fb_selection, endTheme.fb_selection, interpolationProgress); + currentTheme.link = color_lerp(startTheme.link, endTheme.link, interpolationProgress); + currentTheme.logic_or = color_lerp(startTheme.logic_or, endTheme.logic_or, interpolationProgress); + currentTheme.pipe = color_lerp(startTheme.pipe, endTheme.pipe, interpolationProgress); + currentTheme.logic_and = color_lerp(startTheme.logic_and, endTheme.logic_and, interpolationProgress); + currentTheme.ampersand = color_lerp(startTheme.ampersand, endTheme.ampersand, interpolationProgress); + currentTheme.multiplication = color_lerp(startTheme.multiplication, endTheme.multiplication, interpolationProgress); + currentTheme.pointer = color_lerp(startTheme.pointer, endTheme.pointer, interpolationProgress); + currentTheme.modeline = color_lerp(startTheme.modeline, endTheme.modeline, interpolationProgress); + currentTheme.modeline_accent = color_lerp(startTheme.modeline_accent, endTheme.modeline_accent, interpolationProgress); + currentTheme.minibuffer = color_lerp(startTheme.minibuffer, endTheme.minibuffer, interpolationProgress); + currentTheme.matching_parenthesis = color_lerp(startTheme.matching_parenthesis, endTheme.matching_parenthesis, interpolationProgress); + currentTheme.hl_line = color_lerp(startTheme.hl_line, endTheme.hl_line, interpolationProgress); + currentTheme.type = color_lerp(startTheme.type, endTheme.type, interpolationProgress); + currentTheme.function_definition = color_lerp(startTheme.function_definition, endTheme.function_definition, interpolationProgress); + currentTheme.anchor = color_lerp(startTheme.anchor, endTheme.anchor, interpolationProgress); + currentTheme.whitespace = color_lerp(startTheme.whitespace, endTheme.whitespace, interpolationProgress); + currentTheme.indentation_line = color_lerp(startTheme.indentation_line, endTheme.indentation_line, interpolationProgress); + currentTheme.null = color_lerp(startTheme.null, endTheme.null, interpolationProgress); + currentTheme.code_block = color_lerp(startTheme.code_block, endTheme.code_block, interpolationProgress); + + if (interpolationProgress >= 1.0f) { + interpolationProgress = 1.0f; } + } else if (!theme_lerp) { + currentTheme = themes[currentThemeIndex]; + interpolationProgress = 1.0f; + } } void initialize_themes() { - // Nature - themes[0] = (Theme) { - .cursor = hex_to_vec4f(0x658B5FFF), - .notext_cursor = hex_to_vec4f(0x658B5FFF), - .EOF_cursor = hex_to_vec4f(0x658B5FFF), - .insert_cursor = hex_to_vec4f(0x514B8EFF), - .emacs_cursor = hex_to_vec4f(0x565663FF), - .text = hex_to_vec4f(0xC0ACD1FF), - .background = hex_to_vec4f(0x090909FF), - .fringe = hex_to_vec4f(0x090909FF), - .comment = hex_to_vec4f(0x867892FF), - .hashtag = hex_to_vec4f(0x658B5FFF), - .logic = hex_to_vec4f(0x658B5FFF), - .string = hex_to_vec4f(0x4C6750FF), - .selection = hex_to_vec4f(0x262626FF), - .search = hex_to_vec4f(0x262626FF), - .todo = hex_to_vec4f(0x565663FF), - .line_numbers = hex_to_vec4f(0x171717FF), - .current_line_number = hex_to_vec4f(0xC0ACD1FF), - .fixme = hex_to_vec4f(0x444E46FF), - .note = hex_to_vec4f(0x4C6750FF), - .bug = hex_to_vec4f(0x867892FF), - .not_equals = hex_to_vec4f(0x867892FF), - .exclamation = hex_to_vec4f(0x4C6750FF), - .equals = hex_to_vec4f(0xC0ACD1FF), - .equals_equals = hex_to_vec4f(0x658B5FFF), - .greater_than = hex_to_vec4f(0x834EB6FF), - .less_than = hex_to_vec4f(0x834EB6FF), - .marks = hex_to_vec4f(0x658B5FFF), - .fb_selection = hex_to_vec4f(0x262626FF), - .plus = hex_to_vec4f(0x658B5FFF), - .minus = hex_to_vec4f(0x658B5FFF), - .truee = hex_to_vec4f(0x4C6750FF), - .falsee = hex_to_vec4f(0x867892FF), - .arrow = hex_to_vec4f(0x834EB6FF), - .open_square = hex_to_vec4f(0xC0ACD1FF), - .close_square = hex_to_vec4f(0xC0ACD1FF), - .array_content = hex_to_vec4f(0x4C6750FF), - .link = hex_to_vec4f(0x565663FF), - .logic_or = hex_to_vec4f(0x658B5FFF), - .pipe = hex_to_vec4f(0x565663FF), - .ampersand = hex_to_vec4f(0x658B5FFF), - .logic_and = hex_to_vec4f(0x658B5FFF), - .pointer = hex_to_vec4f(0x514B8EFF), - .multiplication = hex_to_vec4f(0x867892FF), - .matching_parenthesis = hex_to_vec4f(0x262626FF), - .hl_line = hex_to_vec4f(0x070707FF), - .type = hex_to_vec4f(0x565663FF), - .function_definition = hex_to_vec4f(0x564F96FF), - .anchor = hex_to_vec4f(0x564F96FF), - .minibuffer = hex_to_vec4f(0x090909FF), - .modeline = hex_to_vec4f(0x060606FF), - .modeline_accent = hex_to_vec4f(0x658B5FFF), - .whitespace = hex_to_vec4f(0x171717FF), - .selected_whitespaces = hex_to_vec4f(0x9989A7FF), - .indentation_line = hex_to_vec4f(0x171717FF), - .null = hex_to_vec4f(0x564F96FF), - .code_block = hex_to_vec4f(0x080808FF), - }; - - // DOOM one - themes[1] = (Theme) { - .cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF - .notext_cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF - .EOF_cursor = hex_to_vec4f(0x51AFEFFF), //#51AFEF - .insert_cursor = hex_to_vec4f(0x51AFEFFF), - .emacs_cursor = hex_to_vec4f(0xECBE7BFF), //#ECBE7B - .text = hex_to_vec4f(0xBBC2CFFF), - .background = hex_to_vec4f(0x282C34FF), - .fringe = hex_to_vec4f(0x282C34FF), - .comment = hex_to_vec4f(0x5B6268FF), - .hashtag = hex_to_vec4f(0x51AFEFFF), - .logic = hex_to_vec4f(0x51AFEFFF), - .string = hex_to_vec4f(0x98BE65FF), //#98BE65 - .selection = hex_to_vec4f(0x42444AFF), - .search = hex_to_vec4f(0x387AA7FF), //#387AA7 - .todo = hex_to_vec4f(0xECBE7BFF), - .line_numbers = hex_to_vec4f(0x3F444AFF), - .current_line_number = hex_to_vec4f(0xBBC2CFFF), - .fixme = hex_to_vec4f(0xFF6C6BFF), //#FF6C6B - .note = hex_to_vec4f(0x98BE65FF), - .bug = hex_to_vec4f(0xFF6C6BFF), - .not_equals = hex_to_vec4f(0xFF6C6BFF), - .exclamation = hex_to_vec4f(0x51AFEFFF), - .equals = hex_to_vec4f(0x98BE65FF), - .equals_equals = hex_to_vec4f(0x98BE65FF), - .greater_than = hex_to_vec4f(0x98BE65FF), - .less_than = hex_to_vec4f(0xFF6C6BFF), - .marks = hex_to_vec4f(0x387AA7FF), - .fb_selection = hex_to_vec4f(0x42444AFF), - .plus = hex_to_vec4f(0x98BE65FF), - .minus = hex_to_vec4f(0xFF6C6BFF), - .truee = hex_to_vec4f(0x98BE65FF), - .falsee = hex_to_vec4f(0xFF6C6BFF), - .arrow = hex_to_vec4f(0xBBC2CFFF), - .open_square = hex_to_vec4f(0xBBC2CFFF), - .close_square = hex_to_vec4f(0xBBC2CFFF), - .array_content = hex_to_vec4f(0xA9A1E1FF), - .link = hex_to_vec4f(0xA9A1E1FF), //#A9A1E1 - .matching_parenthesis = hex_to_vec4f(0x42444AFF), - .type = hex_to_vec4f(0xECBE7BFF), - .function_definition = hex_to_vec4f(0xC678DDFF), //#C678DD - .anchor = hex_to_vec4f(0xA9A1E1FF), - .hl_line = hex_to_vec4f(0x21242BFF),//#21242B - .multiplication = hex_to_vec4f(0x98BE65FF), - .pointer = hex_to_vec4f(0xA9A1E1FF), - .logic_and = hex_to_vec4f(0x98BE65FF), - .logic_or = hex_to_vec4f(0xFF6C6BFF), - .ampersand = hex_to_vec4f(0x51AFEFFF), - .pipe = hex_to_vec4f(0x98BE65FF), - .minibuffer = hex_to_vec4f(0x21242BFF), - .modeline = hex_to_vec4f(0x1D2026FF), - .modeline_accent = hex_to_vec4f(0x51AFEFFF), - .whitespace = hex_to_vec4f(0x3F444AFF), - .selected_whitespaces = hex_to_vec4f(0x959BA5FF), - .indentation_line = hex_to_vec4f(0x3F444AFF), - .null = hex_to_vec4f(0xA9A1E1FF), - .code_block = hex_to_vec4f(0x23272EFF), - }; - - // Dracula - themes[2] = (Theme){ - .cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 - .notext_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 - .EOF_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 - .insert_cursor = hex_to_vec4f(0xBD93F9FF), - .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), // #F1FA8C - .text = hex_to_vec4f(0xF8F8F2FF), - .background = hex_to_vec4f(0x282A36FF), - .fringe = hex_to_vec4f(0x282A36FF), - .comment = hex_to_vec4f(0x6272A4FF), - .hashtag = hex_to_vec4f(0xBD93F9FF), - .logic = hex_to_vec4f(0xFF79C6FF), // #FF79C6 - .string = hex_to_vec4f(0xF1FA8CFF), - .selection = hex_to_vec4f(0x44475AFF), - .search = hex_to_vec4f(0x8466AEFF), // #8466AE - .todo = hex_to_vec4f(0xF1FA8CFF), - .line_numbers = hex_to_vec4f(0x6272A4FF), - .current_line_number = hex_to_vec4f(0xF8F8F2FF), - .fixme = hex_to_vec4f(0xFF5555FF), // #FF5555 - .note = hex_to_vec4f(0x50FA7BFF), // #50FA7B - .bug = hex_to_vec4f(0xFF5555FF), - .not_equals = hex_to_vec4f(0xFF5555FF), - .exclamation = hex_to_vec4f(0xBD93F9FF), - .equals = hex_to_vec4f(0x50FA7BFF), - .equals_equals = hex_to_vec4f(0x50FA7BFF), - .greater_than = hex_to_vec4f(0x50FA7BFF), - .less_than = hex_to_vec4f(0xFF5555FF), - .marks = hex_to_vec4f(0x8466AEFF), - .fb_selection = hex_to_vec4f(0x44475AFF), - .plus = hex_to_vec4f(0x50FA7BFF), - .minus = hex_to_vec4f(0xFF5555FF), - .truee = hex_to_vec4f(0x50FA7BFF), - .falsee = hex_to_vec4f(0xFF5555FF), - .arrow = hex_to_vec4f(0x8BE9FDFF), // #8BE9FD - .open_square = hex_to_vec4f(0xF8F8F2FF), - .close_square = hex_to_vec4f(0xF8F8F2FF), - .array_content = hex_to_vec4f(0xBD93F9FF), - .link = hex_to_vec4f(0x8BE9FDFF), - .matching_parenthesis = hex_to_vec4f(0x44475AFF), - .type = hex_to_vec4f(0xBD93F9FF), - .function_definition = hex_to_vec4f(0x50FA7BFF), - .anchor = hex_to_vec4f(0xFF79C6FF), - .hl_line = hex_to_vec4f(0x1E2029FF), // #1E2029 - .multiplication = hex_to_vec4f(0x50FA7BFF), - .pointer = hex_to_vec4f(0xFFC9E8FF), // #FFC9E8 - .logic_and = hex_to_vec4f(0x50FA7BFF), - .logic_or = hex_to_vec4f(0xFF5555FF), - .ampersand = hex_to_vec4f(0x8BE9FDFF), - .pipe = hex_to_vec4f(0x50FA7BFF), - .minibuffer = hex_to_vec4f(0x1E2029FF), // #1E2029 - .modeline = hex_to_vec4f(0x22232DFF), - .modeline_accent = hex_to_vec4f(0xBD93F9FF), - .whitespace = hex_to_vec4f(0x565761FF), - .selected_whitespaces = hex_to_vec4f(0xC6C6C1FF), - .indentation_line = hex_to_vec4f(0x565761FF), - .null = hex_to_vec4f(0x8BE9FDFF), - .code_block = hex_to_vec4f(0x23242FFF), - }; - - - // Palenigh - themes[3] = (Theme){ - .cursor = hex_to_vec4f(0xC792EAFF), // #C792EA - .notext_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA - .EOF_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA - .insert_cursor = hex_to_vec4f(0xC792EAFF), - .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), // #FFCB6B - .text = hex_to_vec4f(0xEEFFFFFF), - .background = hex_to_vec4f(0x292D3EFF), - .fringe = hex_to_vec4f(0x292D3EFF), - .comment = hex_to_vec4f(0x676E95FF), - .hashtag = hex_to_vec4f(0x89DDFFFF), // #89DDFF - .logic = hex_to_vec4f(0x89DDFFFF), - .string = hex_to_vec4f(0xC3E88DFF), // #C3E88D - .selection = hex_to_vec4f(0x3C435EFF), - .search = hex_to_vec4f(0x4E5579FF), - .todo = hex_to_vec4f(0xFFCB6BFF), - .line_numbers = hex_to_vec4f(0x676E95FF), - .current_line_number = hex_to_vec4f(0xEEFFFFFF), - .fixme = hex_to_vec4f(0xFF5370FF), // #FF5370 - .note = hex_to_vec4f(0xC3E88DFF), - .bug = hex_to_vec4f(0xFF5370FF), - .not_equals = hex_to_vec4f(0xFF5370FF), - .exclamation = hex_to_vec4f(0x89DDFFFF), - .equals = hex_to_vec4f(0xC3E88DFF), - .equals_equals = hex_to_vec4f(0xC3E88DFF), - .greater_than = hex_to_vec4f(0xC3E88DFF), - .less_than = hex_to_vec4f(0xFF5370FF), - .marks = hex_to_vec4f(0x4E5579FF), - .fb_selection = hex_to_vec4f(0x3C435EFF), - .plus = hex_to_vec4f(0xC3E88DFF), - .minus = hex_to_vec4f(0xFF5370FF), - .truee = hex_to_vec4f(0xC3E88DFF), - .falsee = hex_to_vec4f(0xFF5370FF), - .arrow = hex_to_vec4f(0xFFCB6BFF), - .open_square = hex_to_vec4f(0xEEFFFFFF), - .close_square = hex_to_vec4f(0xEEFFFFFF), - .array_content = hex_to_vec4f(0x82AAFFFF), // #82AAFF - .link = hex_to_vec4f(0x89DDFFFF), - .logic_or = hex_to_vec4f(0xFF5370FF), - .pipe = hex_to_vec4f(0xC3E88DFF), - .ampersand = hex_to_vec4f(0x89DDFFFF), - .logic_and = hex_to_vec4f(0xC3E88DFF), - .pointer = hex_to_vec4f(0xF78C6CFF), // #F78C6C - .multiplication = hex_to_vec4f(0xC3E88DFF), - .matching_parenthesis = hex_to_vec4f(0x3C435EFF), - .hl_line = hex_to_vec4f(0x242837FF), - .type = hex_to_vec4f(0xC792EAFF), - .function_definition = hex_to_vec4f(0x82AAFFFF), - .anchor = hex_to_vec4f(0xFF5370FF), - .minibuffer = hex_to_vec4f(0x292D3EFF), - .modeline = hex_to_vec4f(0x232635FF), - .modeline_accent = hex_to_vec4f(0xC792EAFF), - .whitespace = hex_to_vec4f(0x4E5579FF), - .selected_whitespaces = hex_to_vec4f(0xBECCCCFF), - .indentation_line = hex_to_vec4f(0x4E5579FF), - .null = hex_to_vec4f(0xF78C6CFF), - .code_block = hex_to_vec4f(0x232635FF), - }; - - // DOOM city lights - themes[4] = (Theme){ - .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF - .notext_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF - .EOF_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF - .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D - .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 - .text = hex_to_vec4f(0xA0B3C5FF), - .background = hex_to_vec4f(0x1D252CFF), - .fringe = hex_to_vec4f(0x1D252CFF), - .comment = hex_to_vec4f(0x41505EFF), - .hashtag = hex_to_vec4f(0x5EC4FFFF), - .logic = hex_to_vec4f(0x5EC4FFFF), - .string = hex_to_vec4f(0x539AFCFF), // #539AFC - .selection = hex_to_vec4f(0x28323BFF), - .search = hex_to_vec4f(0x4189B2FF), - .todo = hex_to_vec4f(0xEBBF83FF), - .line_numbers = hex_to_vec4f(0x384551FF), - .current_line_number = hex_to_vec4f(0xA0B3C5FF), - .fixme = hex_to_vec4f(0xD95468FF), // #D95468 - .note = hex_to_vec4f(0x8BD49CFF), // #8BD49C - .bug = hex_to_vec4f(0xD95468FF), - .not_equals = hex_to_vec4f(0xD95468FF), - .exclamation = hex_to_vec4f(0x5EC4FFFF), - .equals = hex_to_vec4f(0x8BD49CFF), - .equals_equals = hex_to_vec4f(0x8BD49CFF), - .greater_than = hex_to_vec4f(0x8BD49CFF), - .less_than = hex_to_vec4f(0xD95468FF), - .marks = hex_to_vec4f(0x4189B2FF), - .fb_selection = hex_to_vec4f(0x28323BFF), - .plus = hex_to_vec4f(0x8BD49CFF), - .minus = hex_to_vec4f(0xD95468FF), - .truee = hex_to_vec4f(0x8BD49CFF), - .falsee = hex_to_vec4f(0xD95468FF), - .arrow = hex_to_vec4f(0xA0B3C5FF), - .open_square = hex_to_vec4f(0xA0B3C5FF), - .close_square = hex_to_vec4f(0xA0B3C5FF), - .array_content = hex_to_vec4f(0x539AFCFF), - .link = hex_to_vec4f(0x539AFCFF), - .matching_parenthesis = hex_to_vec4f(0x28323BFF), - .type = hex_to_vec4f(0xEBBF83FF), - .function_definition = hex_to_vec4f(0x33CED8FF), // #33CED8 - .anchor = hex_to_vec4f(0xE27E8DFF), - .hl_line = hex_to_vec4f(0x181E24FF), - .multiplication = hex_to_vec4f(0x8BD49CFF), - .pointer = hex_to_vec4f(0x539AFCFF), - .logic_and = hex_to_vec4f(0x8BD49CFF), - .logic_or = hex_to_vec4f(0xD95468FF), - .ampersand = hex_to_vec4f(0x5EC4FFFF), - .pipe = hex_to_vec4f(0x8BD49CFF), - .minibuffer = hex_to_vec4f(0x181E24FF), - .modeline = hex_to_vec4f(0x181F25FF), - .modeline_accent = hex_to_vec4f(0x5EC4FFFF), - .whitespace = hex_to_vec4f(0x384551FF), - .selected_whitespaces = hex_to_vec4f(0x808F9DFF), - .indentation_line = hex_to_vec4f(0x384551FF), - .null = hex_to_vec4f(0xE27E8DFF), - .code_block = hex_to_vec4f(0x20282FFF), - }; - - - // DOOM molokai - themes[5] = (Theme) { - .cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 - .notext_cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 - .EOF_cursor = hex_to_vec4f(0xFB2874FF), //#FB2874 - .insert_cursor = hex_to_vec4f(0xFB2874FF), - .emacs_cursor = hex_to_vec4f(0xE2C770FF), //#E2C770 - .text = hex_to_vec4f(0xD6D6D4FF), - .background = hex_to_vec4f(0x1C1E1FFF), - .fringe = hex_to_vec4f(0x1C1E1FFF), - .comment = hex_to_vec4f(0x555556FF), - .hashtag = hex_to_vec4f(0x9C91E4FF), //#9C91E4 - .logic = hex_to_vec4f(0xFB2874FF), - .string = hex_to_vec4f(0xE2C770FF), - .selection = hex_to_vec4f(0x4E4E4EFF), - .search = hex_to_vec4f(0x9C91E4FF), - .todo = hex_to_vec4f(0xE2C770FF), - .line_numbers = hex_to_vec4f(0x555556FF), - .current_line_number = hex_to_vec4f(0xCFC0C5FF), - .fixme = hex_to_vec4f(0xE74C3CFF), //#E74C3C - .note = hex_to_vec4f(0xB6E63EFF), //#B6E63E - .bug = hex_to_vec4f(0xE74C3CFF), - .not_equals = hex_to_vec4f(0xE74C3CFF), - .exclamation = hex_to_vec4f(0x9C91E4FF), - .equals = hex_to_vec4f(0xB6E63EFF), - .equals_equals = hex_to_vec4f(0xB6E63EFF), - .greater_than = hex_to_vec4f(0xB6E63EFF), - .less_than = hex_to_vec4f(0xE74C3CFF), - .marks = hex_to_vec4f(0xB6E63EFF), - .fb_selection = hex_to_vec4f(0x4E4E4EFF), - .plus = hex_to_vec4f(0xB6E63EFF), - .minus = hex_to_vec4f(0xE74C3CFF), - .truee = hex_to_vec4f(0xB6E63EFF), - .falsee = hex_to_vec4f(0xE74C3CFF), - .arrow = hex_to_vec4f(0xD6D6D4FF), - .open_square = hex_to_vec4f(0xD6D6D4FF), - .close_square = hex_to_vec4f(0xD6D6D4FF), - .array_content = hex_to_vec4f(0x9C91E4FF), - .link = hex_to_vec4f(0x9C91E4FF), - .matching_parenthesis = hex_to_vec4f(0x4E4E4EFF), - .type = hex_to_vec4f(0x66D9EFFF), - .function_definition = hex_to_vec4f(0xB6E63EFF), - .anchor = hex_to_vec4f(0x9C91E4FF), - .hl_line = hex_to_vec4f(0x222323FF), - .multiplication = hex_to_vec4f(0xB6E63EFF), - .pointer = hex_to_vec4f(0x9C91E4FF), - .logic_and = hex_to_vec4f(0xB6E63EFF), - .logic_or = hex_to_vec4f(0xE74C3CFF), - .ampersand = hex_to_vec4f(0x9C91E4FF), - .pipe = hex_to_vec4f(0xB6E63EFF), - .minibuffer = hex_to_vec4f(0x222323FF), - .modeline = hex_to_vec4f(0x2D2E2EFF), - .modeline_accent = hex_to_vec4f(0xB6E63EFF), - .whitespace = hex_to_vec4f(0x4E4E4EFF), - .selected_whitespaces = hex_to_vec4f(0x808F9DFF), - .indentation_line = hex_to_vec4f(0x4E4E4EFF), - .null = hex_to_vec4f(0xFD971FFF), - .code_block = hex_to_vec4f(0x2D2E2EFF), - }; - - - // SUNSET - themes[6] = (Theme){ - .cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 - .notext_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 - .EOF_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 - .insert_cursor = hex_to_vec4f(0xD46A7DFF), // #D46A7D - .emacs_cursor = hex_to_vec4f(0x9A8B6AFF), // #9A8B6A - .text = hex_to_vec4f(0xCCCCC5FF), - .background = hex_to_vec4f(0x0C0D12FF), - .fringe = hex_to_vec4f(0x0C0D12FF), - .comment = hex_to_vec4f(0x8E8E89FF), - .hashtag = hex_to_vec4f(0xD9A173FF), - .logic = hex_to_vec4f(0xD9A173FF), - .string = hex_to_vec4f(0x6A7E74FF), // #6A7E74 - .selection = hex_to_vec4f(0x28292DFF), - .search = hex_to_vec4f(0x805F44FF), // #805F44 - .todo = hex_to_vec4f(0x9A8B6AFF), - .line_numbers = hex_to_vec4f(0x1B1B21FF), - .current_line_number = hex_to_vec4f(0xCCCCC5FF), - .fixme = hex_to_vec4f(0xC06873FF), // #C06873 - .note = hex_to_vec4f(0x6A7E74FF), - .bug = hex_to_vec4f(0xC06873FF), - .not_equals = hex_to_vec4f(0xD46A7DFF), - .exclamation = hex_to_vec4f(0xD46A7DFF), - .equals = hex_to_vec4f(0x6A7E74FF), - .equals_equals = hex_to_vec4f(0x6A7E74FF), - .greater_than = hex_to_vec4f(0x6A7E74FF), - .less_than = hex_to_vec4f(0xC06873FF), - .marks = hex_to_vec4f(0x805F44FF), - .fb_selection = hex_to_vec4f(0x28292DFF), - .plus = hex_to_vec4f(0x6A7E74FF), - .minus = hex_to_vec4f(0xD46A7DFF), - .truee = hex_to_vec4f(0x6A7E74FF), - .falsee = hex_to_vec4f(0xD46A7DFF), - .arrow = hex_to_vec4f(0xCCCCC5FF), - .open_square = hex_to_vec4f(0xCCCCC5FF), - .close_square = hex_to_vec4f(0xCCCCC5FF), - .array_content = hex_to_vec4f(0xCCCCC5FF), - .link = hex_to_vec4f(0xD9A173FF), - .logic_or = hex_to_vec4f(0xD46A7DFF), - .pipe = hex_to_vec4f(0x6A7E74FF), - .ampersand = hex_to_vec4f(0x6A7E74FF), - .logic_and = hex_to_vec4f(0x6A7E74FF), - .pointer = hex_to_vec4f(0xD9A173FF), - .multiplication = hex_to_vec4f(0x6A7E74FF), - .matching_parenthesis = hex_to_vec4f(0x28292DFF), - .hl_line = hex_to_vec4f(0x0A0B0FFF), - .type = hex_to_vec4f(0x9A8B6AFF), - .function_definition = hex_to_vec4f(0xE07084FF), // #E07084 - .anchor = hex_to_vec4f(0xE07084FF), - .minibuffer = hex_to_vec4f(0x0C0D12FF), - .modeline = hex_to_vec4f(0x08090CFF), - .modeline_accent = hex_to_vec4f(0xD9A173FF), - .whitespace = hex_to_vec4f(0x1B1B21FF), - .selected_whitespaces = hex_to_vec4f(0xA3A39DFF), - .indentation_line = hex_to_vec4f(0x28292DFF), - .null = hex_to_vec4f(0xD46A7DFF), - .code_block = hex_to_vec4f(0x0B0C11FF), - }; - - - // Helix - themes[7] = (Theme){ - .cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 - .notext_cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 - .EOF_cursor = hex_to_vec4f(0x5A5977FF), //#5A5977 - .insert_cursor = hex_to_vec4f(0x5A5977FF), - .emacs_cursor = hex_to_vec4f(0x5A5977FF), - .text = hex_to_vec4f(0xFFFFFFFF), - .fringe = hex_to_vec4f(0x3B224CFF), //#3B224C - .comment = hex_to_vec4f(0x697C81FF), - .hashtag = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF - .logic = hex_to_vec4f(0xECCDBAFF), //#ECCDBA - .string = hex_to_vec4f(0xCCCCCCFF), - .selection = hex_to_vec4f(0x540099FF), //#540099 - .search = hex_to_vec4f(0x540099FF), - .todo = hex_to_vec4f(0x6F44F0FF), - .line_numbers = hex_to_vec4f(0x5A5977FF), - .current_line_number = hex_to_vec4f(0xDBBFEFFF), - .fixme = hex_to_vec4f(0xF47868FF), //#F47868 - .note = hex_to_vec4f(0x6F44F0FF), - .bug = hex_to_vec4f(0xF47868FF), - .not_equals = hex_to_vec4f(0xDBBFEFFF), //#DBBFEF - .exclamation = hex_to_vec4f(0xDBBFEFFF), - .equals = hex_to_vec4f(0xDBBFEFFF), - .equals_equals = hex_to_vec4f(0xDBBFEFFF), - .greater_than = hex_to_vec4f(0xDBBFEFFF), - .less_than = hex_to_vec4f(0xDBBFEFFF), - .marks = hex_to_vec4f(0x540099FF), - .fb_selection = hex_to_vec4f(0x540099FF), - .plus = hex_to_vec4f(0xDBBFEFFF), - .minus = hex_to_vec4f(0xDBBFEFFF), - .truee = hex_to_vec4f(0xFFFFFFFF), - .falsee = hex_to_vec4f(0xFFFFFFFF), - .arrow = hex_to_vec4f(0xA4A0E8FF), //#A4A0E8 - .open_square = hex_to_vec4f(0xA4A0E8FF), - .close_square = hex_to_vec4f(0xA4A0E8FF), - .array_content = hex_to_vec4f(0xA4A0E8FF), - .link = hex_to_vec4f(0xA4A0E8FF), - .logic_or = hex_to_vec4f(0xDBBFEFFF), - .pipe = hex_to_vec4f(0xDBBFEFFF), - .ampersand = hex_to_vec4f(0xDBBFEFFF), - .logic_and = hex_to_vec4f(0xDBBFEFFF), - .pointer = hex_to_vec4f(0xFFFFFFFF), - .multiplication = hex_to_vec4f(0xFFFFFFFF), - .matching_parenthesis = hex_to_vec4f(0x6C6999FF), - .hl_line = hex_to_vec4f(0x281733FF), - .type = hex_to_vec4f(0xFFFFFFFF), - .function_definition = hex_to_vec4f(0xFFFFFFFF), - .anchor = hex_to_vec4f(0xFFFFFFFF), - .minibuffer = hex_to_vec4f(0x3B224CFF), - .modeline = hex_to_vec4f(0x281733FF), - .modeline_accent = hex_to_vec4f(0x281733FF), - .whitespace = hex_to_vec4f(0x281733FF), - .selected_whitespaces = hex_to_vec4f(0xFFFFFFFF), - .indentation_line = hex_to_vec4f(0x281733FF), - .null = hex_to_vec4f(0xFFFFFFFF), - .code_block = hex_to_vec4f(0x281733FF), - }; - - - // Initialize currentTheme to the first theme - if (current_mode == HELIX) { - currentTheme = themes[7]; - } else { - currentTheme = themes[0]; - } - previousThemeIndex = 0; - currentThemeIndex = 0; - interpolationProgress = 1.0f; // No interpolation needed at start - - } + // Nature + themes[0] = (Theme){ + .cursor = hex_to_vec4f(0x658B5FFF), + .notext_cursor = hex_to_vec4f(0x658B5FFF), + .EOF_cursor = hex_to_vec4f(0x658B5FFF), + .insert_cursor = hex_to_vec4f(0x514B8EFF), + .emacs_cursor = hex_to_vec4f(0x565663FF), + .text = hex_to_vec4f(0xC0ACD1FF), + .background = hex_to_vec4f(0x090909FF), + .fringe = hex_to_vec4f(0x090909FF), + .comment = hex_to_vec4f(0x867892FF), + .hashtag = hex_to_vec4f(0x658B5FFF), + .logic = hex_to_vec4f(0x658B5FFF), + .string = hex_to_vec4f(0x4C6750FF), + .selection = hex_to_vec4f(0x262626FF), + .search = hex_to_vec4f(0x262626FF), + .todo = hex_to_vec4f(0x565663FF), + .line_numbers = hex_to_vec4f(0x171717FF), + .current_line_number = hex_to_vec4f(0xC0ACD1FF), + .fixme = hex_to_vec4f(0x444E46FF), + .note = hex_to_vec4f(0x4C6750FF), + .bug = hex_to_vec4f(0x867892FF), + .not_equals = hex_to_vec4f(0x867892FF), + .exclamation = hex_to_vec4f(0x4C6750FF), + .equals = hex_to_vec4f(0xC0ACD1FF), + .equals_equals = hex_to_vec4f(0x658B5FFF), + .greater_than = hex_to_vec4f(0x834EB6FF), + .less_than = hex_to_vec4f(0x834EB6FF), + .marks = hex_to_vec4f(0x658B5FFF), + .fb_selection = hex_to_vec4f(0x262626FF), + .plus = hex_to_vec4f(0x658B5FFF), + .minus = hex_to_vec4f(0x658B5FFF), + .truee = hex_to_vec4f(0x4C6750FF), + .falsee = hex_to_vec4f(0x867892FF), + .arrow = hex_to_vec4f(0x834EB6FF), + .open_square = hex_to_vec4f(0xC0ACD1FF), + .close_square = hex_to_vec4f(0xC0ACD1FF), + .array_content = hex_to_vec4f(0x4C6750FF), + .link = hex_to_vec4f(0x565663FF), + .logic_or = hex_to_vec4f(0x658B5FFF), + .pipe = hex_to_vec4f(0x565663FF), + .ampersand = hex_to_vec4f(0x658B5FFF), + .logic_and = hex_to_vec4f(0x658B5FFF), + .pointer = hex_to_vec4f(0x514B8EFF), + .multiplication = hex_to_vec4f(0x867892FF), + .matching_parenthesis = hex_to_vec4f(0x262626FF), + .hl_line = hex_to_vec4f(0x070707FF), + .type = hex_to_vec4f(0x565663FF), + .function_definition = hex_to_vec4f(0x564F96FF), + .anchor = hex_to_vec4f(0x564F96FF), + .minibuffer = hex_to_vec4f(0x090909FF), + .modeline = hex_to_vec4f(0x060606FF), + .modeline_accent = hex_to_vec4f(0x658B5FFF), + .whitespace = hex_to_vec4f(0x171717FF), + .selected_whitespaces = hex_to_vec4f(0x9989A7FF), + .indentation_line = hex_to_vec4f(0x171717FF), + .null = hex_to_vec4f(0x564F96FF), + .code_block = hex_to_vec4f(0x080808FF), + }; + + + + + + // DOOM one + themes[1] = (Theme){ + .cursor = hex_to_vec4f(0x51AFEFFF), // #51AFEF + .notext_cursor = hex_to_vec4f(0x51AFEFFF), // #51AFEF + .EOF_cursor = hex_to_vec4f(0x51AFEFFF), // #51AFEF + .insert_cursor = hex_to_vec4f(0x51AFEFFF), + .emacs_cursor = hex_to_vec4f(0xECBE7BFF), // #ECBE7B + .text = hex_to_vec4f(0xBBC2CFFF), + .background = hex_to_vec4f(0x282C34FF), + .fringe = hex_to_vec4f(0x282C34FF), + .comment = hex_to_vec4f(0x5B6268FF), + .hashtag = hex_to_vec4f(0x51AFEFFF), + .logic = hex_to_vec4f(0x51AFEFFF), + .string = hex_to_vec4f(0x98BE65FF), // #98BE65 + .selection = hex_to_vec4f(0x42444AFF), + .search = hex_to_vec4f(0x387AA7FF), // #387AA7 + .todo = hex_to_vec4f(0xECBE7BFF), + .line_numbers = hex_to_vec4f(0x3F444AFF), + .current_line_number = hex_to_vec4f(0xBBC2CFFF), + .fixme = hex_to_vec4f(0xFF6C6BFF), // #FF6C6B + .note = hex_to_vec4f(0x98BE65FF), + .bug = hex_to_vec4f(0xFF6C6BFF), + .not_equals = hex_to_vec4f(0xFF6C6BFF), + .exclamation = hex_to_vec4f(0x51AFEFFF), + .equals = hex_to_vec4f(0x98BE65FF), + .equals_equals = hex_to_vec4f(0x98BE65FF), + .greater_than = hex_to_vec4f(0x98BE65FF), + .less_than = hex_to_vec4f(0xFF6C6BFF), + .marks = hex_to_vec4f(0x387AA7FF), + .fb_selection = hex_to_vec4f(0x42444AFF), + .plus = hex_to_vec4f(0x98BE65FF), + .minus = hex_to_vec4f(0xFF6C6BFF), + .truee = hex_to_vec4f(0x98BE65FF), + .falsee = hex_to_vec4f(0xFF6C6BFF), + .arrow = hex_to_vec4f(0xBBC2CFFF), + .open_square = hex_to_vec4f(0xBBC2CFFF), + .close_square = hex_to_vec4f(0xBBC2CFFF), + .array_content = hex_to_vec4f(0xA9A1E1FF), + .link = hex_to_vec4f(0xA9A1E1FF), // #A9A1E1 + .matching_parenthesis = hex_to_vec4f(0x42444AFF), + .type = hex_to_vec4f(0xECBE7BFF), + .function_definition = hex_to_vec4f(0xC678DDFF), // #C678DD + .anchor = hex_to_vec4f(0xA9A1E1FF), + .hl_line = hex_to_vec4f(0x21242BFF), // #21242B + .multiplication = hex_to_vec4f(0x98BE65FF), + .pointer = hex_to_vec4f(0xA9A1E1FF), + .logic_and = hex_to_vec4f(0x98BE65FF), + .logic_or = hex_to_vec4f(0xFF6C6BFF), + .ampersand = hex_to_vec4f(0x51AFEFFF), + .pipe = hex_to_vec4f(0x98BE65FF), + .minibuffer = hex_to_vec4f(0x21242BFF), + .modeline = hex_to_vec4f(0x1D2026FF), + .modeline_accent = hex_to_vec4f(0x51AFEFFF), + .whitespace = hex_to_vec4f(0x3F444AFF), + .selected_whitespaces = hex_to_vec4f(0x959BA5FF), + .indentation_line = hex_to_vec4f(0x3F444AFF), + .null = hex_to_vec4f(0xA9A1E1FF), + .code_block = hex_to_vec4f(0x23272EFF), + }; + + // Dracula + themes[2] = (Theme){ + .cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 + .notext_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 + .EOF_cursor = hex_to_vec4f(0xBD93F9FF), // #BD93F9 + .insert_cursor = hex_to_vec4f(0xBD93F9FF), + .emacs_cursor = hex_to_vec4f(0xF1FA8CFF), // #F1FA8C + .text = hex_to_vec4f(0xF8F8F2FF), + .background = hex_to_vec4f(0x282A36FF), + .fringe = hex_to_vec4f(0x282A36FF), + .comment = hex_to_vec4f(0x6272A4FF), + .hashtag = hex_to_vec4f(0xBD93F9FF), + .logic = hex_to_vec4f(0xFF79C6FF), // #FF79C6 + .string = hex_to_vec4f(0xF1FA8CFF), + .selection = hex_to_vec4f(0x44475AFF), + .search = hex_to_vec4f(0x8466AEFF), // #8466AE + .todo = hex_to_vec4f(0xF1FA8CFF), + .line_numbers = hex_to_vec4f(0x6272A4FF), + .current_line_number = hex_to_vec4f(0xF8F8F2FF), + .fixme = hex_to_vec4f(0xFF5555FF), // #FF5555 + .note = hex_to_vec4f(0x50FA7BFF), // #50FA7B + .bug = hex_to_vec4f(0xFF5555FF), + .not_equals = hex_to_vec4f(0xFF5555FF), + .exclamation = hex_to_vec4f(0xBD93F9FF), + .equals = hex_to_vec4f(0x50FA7BFF), + .equals_equals = hex_to_vec4f(0x50FA7BFF), + .greater_than = hex_to_vec4f(0x50FA7BFF), + .less_than = hex_to_vec4f(0xFF5555FF), + .marks = hex_to_vec4f(0x8466AEFF), + .fb_selection = hex_to_vec4f(0x44475AFF), + .plus = hex_to_vec4f(0x50FA7BFF), + .minus = hex_to_vec4f(0xFF5555FF), + .truee = hex_to_vec4f(0x50FA7BFF), + .falsee = hex_to_vec4f(0xFF5555FF), + .arrow = hex_to_vec4f(0x8BE9FDFF), // #8BE9FD + .open_square = hex_to_vec4f(0xF8F8F2FF), + .close_square = hex_to_vec4f(0xF8F8F2FF), + .array_content = hex_to_vec4f(0xBD93F9FF), + .link = hex_to_vec4f(0x8BE9FDFF), + .matching_parenthesis = hex_to_vec4f(0x44475AFF), + .type = hex_to_vec4f(0xBD93F9FF), + .function_definition = hex_to_vec4f(0x50FA7BFF), + .anchor = hex_to_vec4f(0xFF79C6FF), + .hl_line = hex_to_vec4f(0x1E2029FF), // #1E2029 + .multiplication = hex_to_vec4f(0x50FA7BFF), + .pointer = hex_to_vec4f(0xFFC9E8FF), // #FFC9E8 + .logic_and = hex_to_vec4f(0x50FA7BFF), + .logic_or = hex_to_vec4f(0xFF5555FF), + .ampersand = hex_to_vec4f(0x8BE9FDFF), + .pipe = hex_to_vec4f(0x50FA7BFF), + .minibuffer = hex_to_vec4f(0x1E2029FF), // #1E2029 + .modeline = hex_to_vec4f(0x22232DFF), + .modeline_accent = hex_to_vec4f(0xBD93F9FF), + .whitespace = hex_to_vec4f(0x565761FF), + .selected_whitespaces = hex_to_vec4f(0xC6C6C1FF), + .indentation_line = hex_to_vec4f(0x565761FF), + .null = hex_to_vec4f(0x8BE9FDFF), + .code_block = hex_to_vec4f(0x23242FFF), + }; + + // Palenigh + themes[3] = (Theme){ + .cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .notext_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .EOF_cursor = hex_to_vec4f(0xC792EAFF), // #C792EA + .insert_cursor = hex_to_vec4f(0xC792EAFF), + .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), // #FFCB6B + .text = hex_to_vec4f(0xEEFFFFFF), + .background = hex_to_vec4f(0x292D3EFF), + .fringe = hex_to_vec4f(0x292D3EFF), + .comment = hex_to_vec4f(0x676E95FF), + .hashtag = hex_to_vec4f(0x89DDFFFF), // #89DDFF + .logic = hex_to_vec4f(0x89DDFFFF), + .string = hex_to_vec4f(0xC3E88DFF), // #C3E88D + .selection = hex_to_vec4f(0x3C435EFF), + .search = hex_to_vec4f(0x4E5579FF), + .todo = hex_to_vec4f(0xFFCB6BFF), + .line_numbers = hex_to_vec4f(0x676E95FF), + .current_line_number = hex_to_vec4f(0xEEFFFFFF), + .fixme = hex_to_vec4f(0xFF5370FF), // #FF5370 + .note = hex_to_vec4f(0xC3E88DFF), + .bug = hex_to_vec4f(0xFF5370FF), + .not_equals = hex_to_vec4f(0xFF5370FF), + .exclamation = hex_to_vec4f(0x89DDFFFF), + .equals = hex_to_vec4f(0xC3E88DFF), + .equals_equals = hex_to_vec4f(0xC3E88DFF), + .greater_than = hex_to_vec4f(0xC3E88DFF), + .less_than = hex_to_vec4f(0xFF5370FF), + .marks = hex_to_vec4f(0x4E5579FF), + .fb_selection = hex_to_vec4f(0x3C435EFF), + .plus = hex_to_vec4f(0xC3E88DFF), + .minus = hex_to_vec4f(0xFF5370FF), + .truee = hex_to_vec4f(0xC3E88DFF), + .falsee = hex_to_vec4f(0xFF5370FF), + .arrow = hex_to_vec4f(0xFFCB6BFF), + .open_square = hex_to_vec4f(0xEEFFFFFF), + .close_square = hex_to_vec4f(0xEEFFFFFF), + .array_content = hex_to_vec4f(0x82AAFFFF), // #82AAFF + .link = hex_to_vec4f(0x89DDFFFF), + .logic_or = hex_to_vec4f(0xFF5370FF), + .pipe = hex_to_vec4f(0xC3E88DFF), + .ampersand = hex_to_vec4f(0x89DDFFFF), + .logic_and = hex_to_vec4f(0xC3E88DFF), + .pointer = hex_to_vec4f(0xF78C6CFF), // #F78C6C + .multiplication = hex_to_vec4f(0xC3E88DFF), + .matching_parenthesis = hex_to_vec4f(0x3C435EFF), + .hl_line = hex_to_vec4f(0x242837FF), + .type = hex_to_vec4f(0xC792EAFF), + .function_definition = hex_to_vec4f(0x82AAFFFF), + .anchor = hex_to_vec4f(0xFF5370FF), + .minibuffer = hex_to_vec4f(0x292D3EFF), + .modeline = hex_to_vec4f(0x232635FF), + .modeline_accent = hex_to_vec4f(0xC792EAFF), + .whitespace = hex_to_vec4f(0x4E5579FF), + .selected_whitespaces = hex_to_vec4f(0xBECCCCFF), + .indentation_line = hex_to_vec4f(0x4E5579FF), + .null = hex_to_vec4f(0xF78C6CFF), + .code_block = hex_to_vec4f(0x232635FF), + }; + + // DOOM city lights + themes[4] = (Theme){ + .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .notext_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .EOF_cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF + .insert_cursor = hex_to_vec4f(0xE27E8DFF), // #E27E8D + .emacs_cursor = hex_to_vec4f(0xEBBF83FF), // #EBBF83 + .text = hex_to_vec4f(0xA0B3C5FF), + .background = hex_to_vec4f(0x1D252CFF), + .fringe = hex_to_vec4f(0x1D252CFF), + .comment = hex_to_vec4f(0x41505EFF), + .hashtag = hex_to_vec4f(0x5EC4FFFF), + .logic = hex_to_vec4f(0x5EC4FFFF), + .string = hex_to_vec4f(0x539AFCFF), // #539AFC + .selection = hex_to_vec4f(0x28323BFF), + .search = hex_to_vec4f(0x4189B2FF), + .todo = hex_to_vec4f(0xEBBF83FF), + .line_numbers = hex_to_vec4f(0x384551FF), + .current_line_number = hex_to_vec4f(0xA0B3C5FF), + .fixme = hex_to_vec4f(0xD95468FF), // #D95468 + .note = hex_to_vec4f(0x8BD49CFF), // #8BD49C + .bug = hex_to_vec4f(0xD95468FF), + .not_equals = hex_to_vec4f(0xD95468FF), + .exclamation = hex_to_vec4f(0x5EC4FFFF), + .equals = hex_to_vec4f(0x8BD49CFF), + .equals_equals = hex_to_vec4f(0x8BD49CFF), + .greater_than = hex_to_vec4f(0x8BD49CFF), + .less_than = hex_to_vec4f(0xD95468FF), + .marks = hex_to_vec4f(0x4189B2FF), + .fb_selection = hex_to_vec4f(0x28323BFF), + .plus = hex_to_vec4f(0x8BD49CFF), + .minus = hex_to_vec4f(0xD95468FF), + .truee = hex_to_vec4f(0x8BD49CFF), + .falsee = hex_to_vec4f(0xD95468FF), + .arrow = hex_to_vec4f(0xA0B3C5FF), + .open_square = hex_to_vec4f(0xA0B3C5FF), + .close_square = hex_to_vec4f(0xA0B3C5FF), + .array_content = hex_to_vec4f(0x539AFCFF), + .link = hex_to_vec4f(0x539AFCFF), + .matching_parenthesis = hex_to_vec4f(0x28323BFF), + .type = hex_to_vec4f(0xEBBF83FF), + .function_definition = hex_to_vec4f(0x33CED8FF), // #33CED8 + .anchor = hex_to_vec4f(0xE27E8DFF), + .hl_line = hex_to_vec4f(0x181E24FF), + .multiplication = hex_to_vec4f(0x8BD49CFF), + .pointer = hex_to_vec4f(0x539AFCFF), + .logic_and = hex_to_vec4f(0x8BD49CFF), + .logic_or = hex_to_vec4f(0xD95468FF), + .ampersand = hex_to_vec4f(0x5EC4FFFF), + .pipe = hex_to_vec4f(0x8BD49CFF), + .minibuffer = hex_to_vec4f(0x181E24FF), + .modeline = hex_to_vec4f(0x181F25FF), + .modeline_accent = hex_to_vec4f(0x5EC4FFFF), + .whitespace = hex_to_vec4f(0x384551FF), + .selected_whitespaces = hex_to_vec4f(0x808F9DFF), + .indentation_line = hex_to_vec4f(0x384551FF), + .null = hex_to_vec4f(0xE27E8DFF), + .code_block = hex_to_vec4f(0x20282FFF), + }; + + // DOOM molokai + themes[5] = (Theme){ + .cursor = hex_to_vec4f(0xFB2874FF), // #FB2874 + .notext_cursor = hex_to_vec4f(0xFB2874FF), // #FB2874 + .EOF_cursor = hex_to_vec4f(0xFB2874FF), // #FB2874 + .insert_cursor = hex_to_vec4f(0xFB2874FF), + .emacs_cursor = hex_to_vec4f(0xE2C770FF), // #E2C770 + .text = hex_to_vec4f(0xD6D6D4FF), + .background = hex_to_vec4f(0x1C1E1FFF), + .fringe = hex_to_vec4f(0x1C1E1FFF), + .comment = hex_to_vec4f(0x555556FF), + .hashtag = hex_to_vec4f(0x9C91E4FF), // #9C91E4 + .logic = hex_to_vec4f(0xFB2874FF), + .string = hex_to_vec4f(0xE2C770FF), + .selection = hex_to_vec4f(0x4E4E4EFF), + .search = hex_to_vec4f(0x9C91E4FF), + .todo = hex_to_vec4f(0xE2C770FF), + .line_numbers = hex_to_vec4f(0x555556FF), + .current_line_number = hex_to_vec4f(0xCFC0C5FF), + .fixme = hex_to_vec4f(0xE74C3CFF), // #E74C3C + .note = hex_to_vec4f(0xB6E63EFF), // #B6E63E + .bug = hex_to_vec4f(0xE74C3CFF), + .not_equals = hex_to_vec4f(0xE74C3CFF), + .exclamation = hex_to_vec4f(0x9C91E4FF), + .equals = hex_to_vec4f(0xB6E63EFF), + .equals_equals = hex_to_vec4f(0xB6E63EFF), + .greater_than = hex_to_vec4f(0xB6E63EFF), + .less_than = hex_to_vec4f(0xE74C3CFF), + .marks = hex_to_vec4f(0xB6E63EFF), + .fb_selection = hex_to_vec4f(0x4E4E4EFF), + .plus = hex_to_vec4f(0xB6E63EFF), + .minus = hex_to_vec4f(0xE74C3CFF), + .truee = hex_to_vec4f(0xB6E63EFF), + .falsee = hex_to_vec4f(0xE74C3CFF), + .arrow = hex_to_vec4f(0xD6D6D4FF), + .open_square = hex_to_vec4f(0xD6D6D4FF), + .close_square = hex_to_vec4f(0xD6D6D4FF), + .array_content = hex_to_vec4f(0x9C91E4FF), + .link = hex_to_vec4f(0x9C91E4FF), + .matching_parenthesis = hex_to_vec4f(0x4E4E4EFF), + .type = hex_to_vec4f(0x66D9EFFF), + .function_definition = hex_to_vec4f(0xB6E63EFF), + .anchor = hex_to_vec4f(0x9C91E4FF), + .hl_line = hex_to_vec4f(0x222323FF), + .multiplication = hex_to_vec4f(0xB6E63EFF), + .pointer = hex_to_vec4f(0x9C91E4FF), + .logic_and = hex_to_vec4f(0xB6E63EFF), + .logic_or = hex_to_vec4f(0xE74C3CFF), + .ampersand = hex_to_vec4f(0x9C91E4FF), + .pipe = hex_to_vec4f(0xB6E63EFF), + .minibuffer = hex_to_vec4f(0x222323FF), + .modeline = hex_to_vec4f(0x2D2E2EFF), + .modeline_accent = hex_to_vec4f(0xB6E63EFF), + .whitespace = hex_to_vec4f(0x4E4E4EFF), + .selected_whitespaces = hex_to_vec4f(0x808F9DFF), + .indentation_line = hex_to_vec4f(0x4E4E4EFF), + .null = hex_to_vec4f(0xFD971FFF), + .code_block = hex_to_vec4f(0x2D2E2EFF), + }; + + // SUNSET + themes[6] = (Theme){ + .cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .notext_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .EOF_cursor = hex_to_vec4f(0xD9A173FF), // #D9A173 + .insert_cursor = hex_to_vec4f(0xD46A7DFF), // #D46A7D + .emacs_cursor = hex_to_vec4f(0x9A8B6AFF), // #9A8B6A + .text = hex_to_vec4f(0xCCCCC5FF), + .background = hex_to_vec4f(0x0C0D12FF), + .fringe = hex_to_vec4f(0x0C0D12FF), + .comment = hex_to_vec4f(0x8E8E89FF), + .hashtag = hex_to_vec4f(0xD9A173FF), + .logic = hex_to_vec4f(0xD9A173FF), + .string = hex_to_vec4f(0x6A7E74FF), // #6A7E74 + .selection = hex_to_vec4f(0x28292DFF), + .search = hex_to_vec4f(0x805F44FF), // #805F44 + .todo = hex_to_vec4f(0x9A8B6AFF), + .line_numbers = hex_to_vec4f(0x1B1B21FF), + .current_line_number = hex_to_vec4f(0xCCCCC5FF), + .fixme = hex_to_vec4f(0xC06873FF), // #C06873 + .note = hex_to_vec4f(0x6A7E74FF), + .bug = hex_to_vec4f(0xC06873FF), + .not_equals = hex_to_vec4f(0xD46A7DFF), + .exclamation = hex_to_vec4f(0xD46A7DFF), + .equals = hex_to_vec4f(0x6A7E74FF), + .equals_equals = hex_to_vec4f(0x6A7E74FF), + .greater_than = hex_to_vec4f(0x6A7E74FF), + .less_than = hex_to_vec4f(0xC06873FF), + .marks = hex_to_vec4f(0x805F44FF), + .fb_selection = hex_to_vec4f(0x28292DFF), + .plus = hex_to_vec4f(0x6A7E74FF), + .minus = hex_to_vec4f(0xD46A7DFF), + .truee = hex_to_vec4f(0x6A7E74FF), + .falsee = hex_to_vec4f(0xD46A7DFF), + .arrow = hex_to_vec4f(0xCCCCC5FF), + .open_square = hex_to_vec4f(0xCCCCC5FF), + .close_square = hex_to_vec4f(0xCCCCC5FF), + .array_content = hex_to_vec4f(0xCCCCC5FF), + .link = hex_to_vec4f(0xD9A173FF), + .logic_or = hex_to_vec4f(0xD46A7DFF), + .pipe = hex_to_vec4f(0x6A7E74FF), + .ampersand = hex_to_vec4f(0x6A7E74FF), + .logic_and = hex_to_vec4f(0x6A7E74FF), + .pointer = hex_to_vec4f(0xD9A173FF), + .multiplication = hex_to_vec4f(0x6A7E74FF), + .matching_parenthesis = hex_to_vec4f(0x28292DFF), + .hl_line = hex_to_vec4f(0x0A0B0FFF), + .type = hex_to_vec4f(0x9A8B6AFF), + .function_definition = hex_to_vec4f(0xE07084FF), // #E07084 + .anchor = hex_to_vec4f(0xE07084FF), + .minibuffer = hex_to_vec4f(0x0C0D12FF), + .modeline = hex_to_vec4f(0x08090CFF), + .modeline_accent = hex_to_vec4f(0xD9A173FF), + .whitespace = hex_to_vec4f(0x1B1B21FF), + .selected_whitespaces = hex_to_vec4f(0xA3A39DFF), + .indentation_line = hex_to_vec4f(0x28292DFF), + .null = hex_to_vec4f(0xD46A7DFF), + .code_block = hex_to_vec4f(0x0B0C11FF), + }; + + // Helix + themes[7] = (Theme){ + .cursor = hex_to_vec4f(0x5A5977FF), // #5A5977 + .notext_cursor = hex_to_vec4f(0x5A5977FF), // #5A5977 + .EOF_cursor = hex_to_vec4f(0x5A5977FF), // #5A5977 + .insert_cursor = hex_to_vec4f(0x5A5977FF), + .emacs_cursor = hex_to_vec4f(0x5A5977FF), + .text = hex_to_vec4f(0xFFFFFFFF), + .fringe = hex_to_vec4f(0x3B224CFF), // #3B224C + .comment = hex_to_vec4f(0x697C81FF), + .hashtag = hex_to_vec4f(0xDBBFEFFF), // #DBBFEF + .logic = hex_to_vec4f(0xECCDBAFF), // #ECCDBA + .string = hex_to_vec4f(0xCCCCCCFF), + .selection = hex_to_vec4f(0x540099FF), // #540099 + .search = hex_to_vec4f(0x540099FF), + .todo = hex_to_vec4f(0x6F44F0FF), + .line_numbers = hex_to_vec4f(0x5A5977FF), + .current_line_number = hex_to_vec4f(0xDBBFEFFF), + .fixme = hex_to_vec4f(0xF47868FF), // #F47868 + .note = hex_to_vec4f(0x6F44F0FF), + .bug = hex_to_vec4f(0xF47868FF), + .not_equals = hex_to_vec4f(0xDBBFEFFF), // #DBBFEF + .exclamation = hex_to_vec4f(0xDBBFEFFF), + .equals = hex_to_vec4f(0xDBBFEFFF), + .equals_equals = hex_to_vec4f(0xDBBFEFFF), + .greater_than = hex_to_vec4f(0xDBBFEFFF), + .less_than = hex_to_vec4f(0xDBBFEFFF), + .marks = hex_to_vec4f(0x540099FF), + .fb_selection = hex_to_vec4f(0x540099FF), + .plus = hex_to_vec4f(0xDBBFEFFF), + .minus = hex_to_vec4f(0xDBBFEFFF), + .truee = hex_to_vec4f(0xFFFFFFFF), + .falsee = hex_to_vec4f(0xFFFFFFFF), + .arrow = hex_to_vec4f(0xA4A0E8FF), // #A4A0E8 + .open_square = hex_to_vec4f(0xA4A0E8FF), + .close_square = hex_to_vec4f(0xA4A0E8FF), + .array_content = hex_to_vec4f(0xA4A0E8FF), + .link = hex_to_vec4f(0xA4A0E8FF), + .logic_or = hex_to_vec4f(0xDBBFEFFF), + .pipe = hex_to_vec4f(0xDBBFEFFF), + .ampersand = hex_to_vec4f(0xDBBFEFFF), + .logic_and = hex_to_vec4f(0xDBBFEFFF), + .pointer = hex_to_vec4f(0xFFFFFFFF), + .multiplication = hex_to_vec4f(0xFFFFFFFF), + .matching_parenthesis = hex_to_vec4f(0x6C6999FF), + .hl_line = hex_to_vec4f(0x281733FF), + .type = hex_to_vec4f(0xFFFFFFFF), + .function_definition = hex_to_vec4f(0xFFFFFFFF), + .anchor = hex_to_vec4f(0xFFFFFFFF), + .minibuffer = hex_to_vec4f(0x3B224CFF), + .modeline = hex_to_vec4f(0x281733FF), + .modeline_accent = hex_to_vec4f(0x281733FF), + .whitespace = hex_to_vec4f(0x281733FF), + .selected_whitespaces = hex_to_vec4f(0xFFFFFFFF), + .indentation_line = hex_to_vec4f(0x281733FF), + .null = hex_to_vec4f(0xFFFFFFFF), + .code_block = hex_to_vec4f(0x281733FF), + }; + + themes[8] = (Theme){ + .cursor = hex_to_vec4f(0xD6A0D1FF), //#D6A0D1 + .notext_cursor = hex_to_vec4f(0xD6A0D1FF), + .EOF_cursor = hex_to_vec4f(0xD6A0D1FF), + .insert_cursor = hex_to_vec4f(0xC79AF4FF), + .emacs_cursor = hex_to_vec4f(0xDBAC66FF), + .text = hex_to_vec4f(0xD4D4D6FF), //#D4D4D6 + .background = hex_to_vec4f(0x14171EFF), //#14171E + .fringe = hex_to_vec4f(0x14171EFF), + .comment = hex_to_vec4f(0x454459FF), + .hashtag = hex_to_vec4f(0xC79AF4FF), //#C79AF4 + .logic = hex_to_vec4f(0x9587DDFF), //#9587DD + .string = hex_to_vec4f(0x62D2DBFF), //#62D2DB + .selection = hex_to_vec4f(0x272C3AFF), //#272C3A + .search = hex_to_vec4f(0x272C3AFF), + .todo = hex_to_vec4f(0xDBAC66FF), //#DBAC66 + .line_numbers = hex_to_vec4f(0x272C3AFF), //#272C3A + .current_line_number = hex_to_vec4f(0xC79AF4FF), + .fixme = hex_to_vec4f(0xE55C7AFF), //#E55C7A + .note = hex_to_vec4f(0x35BF88FF), //#35BF88 + .bug = hex_to_vec4f(0xE55C7AFF), + .not_equals = hex_to_vec4f(0xE55C7AFF), + .exclamation = hex_to_vec4f(0xE55C7AFF), + .equals = hex_to_vec4f(0xD4D4D6FF), + .equals_equals = hex_to_vec4f(0xD4D4D6FF), + .greater_than = hex_to_vec4f(0xD4D4D6FF), + .less_than = hex_to_vec4f(0xD4D4D6FF), + .marks = hex_to_vec4f(0x272C3AFF), + .fb_selection = hex_to_vec4f(0x272C3AFF), + .plus = hex_to_vec4f(0xD4D4D6FF), + .minus = hex_to_vec4f(0xD4D4D6FF), + .truee = hex_to_vec4f(0x35BF88FF), + .falsee = hex_to_vec4f(0xE55C7AFF), + .arrow = hex_to_vec4f(0xD4D4D6FF), + .open_square = hex_to_vec4f(0xD4D4D6FF), + .close_square = hex_to_vec4f(0xD4D4D6FF), + .array_content = hex_to_vec4f(0xD4D4D6FF), + .link = hex_to_vec4f(0x41B0F3FF), //#41B0F3 + .matching_parenthesis = hex_to_vec4f(0x272C3AFF), + .type = hex_to_vec4f(0x11CCB2FF), //#11CCB2 + .function_definition = hex_to_vec4f(0xD6A0D1FF), //#D6A0D1 + .anchor = hex_to_vec4f(0x9587DDFF), + .hl_line = hex_to_vec4f(0x202430FF), + .multiplication = hex_to_vec4f(0xD4D4D6FF), + .pointer = hex_to_vec4f(0xD4D4D6FF), + .logic_and = hex_to_vec4f(0x35BF88FF), + .logic_or = hex_to_vec4f(0xE55C7AFF), + .ampersand = hex_to_vec4f(0xC79AF4FF), + .pipe = hex_to_vec4f(0x35BF88FF), + .minibuffer = hex_to_vec4f(0x14171EFF), + .modeline = hex_to_vec4f(0x191D26FF), + .modeline_accent = hex_to_vec4f(0x9587DDFF), + .whitespace = hex_to_vec4f(0x454459FF), + .selected_whitespaces = hex_to_vec4f(0xBEBEC4FF), + .indentation_line = hex_to_vec4f(0x272C3AFF), + .null = hex_to_vec4f(0x41B0F3FF), + .code_block = hex_to_vec4f(0x191D26FF), + }; + + + + // Initialize currentTheme to the first theme + if (current_mode == HELIX) { + currentTheme = themes[7]; + } else { + currentTheme = themes[0]; + } + previousThemeIndex = 0; + currentThemeIndex = 0; + interpolationProgress = 1.0f; // No interpolation needed at start +} diff --git a/todo.org b/todo.org index 1389c3d2..d8310dba 100644 --- a/todo.org +++ b/todo.org @@ -1,16 +1,10 @@ #+title: Todo - - -latest git committs from the dashoard - * Editor +Ctrl+n sometimes take 2 times to work [] - - -when selecting change the color of selected text - +** Old pressing o on includes should spawn a new empty one and move cursor @@ -43,7 +37,6 @@ function to search code in a specific C case map all variables to a string and write the gui to inspect variables st runtime and change them [] -replace on typing when selection is true [] move entire curly brace block of code on space as an option [] if the search found nothing until the end of the file wrap arround @@ -77,16 +70,19 @@ Replace mode [] Replace character mode [] Pipe selection to unix command [] Togglable visibility of new lines[] -Togglable indentation lines[] show character under cursor with the same color as the bg[] search should not be case sensitive [] render wavy or normal line under text for errors or whatever [] use window hight and width dinamicly instead of fixed position when animations are off [] +Typing "{" inside of empty "()" moves it outside with a space padding after ")", +correctly position the matching "}", and move the cursor inside the block. Toggleable. [] +Togglable indentation lines[x] +replace on typing when selection is true [x] most symple vim style completion (ctrl + n in insert mode)[/] TODO it should cycle like vim option to render whitespaces on selection [x] switch true to false or false to true in editor_enter [x] @@ -107,19 +103,13 @@ Togglable visibility of whitespaces[x] different cursor color based on the mode[x] if editor->has_mark make the cursor trasparent [x] ctrl + backspace should delete an entire word [x] -* Modeline -show the current EvilMode, file name, info and cool icons -* Minibuffer -to get user input for anything and everything popups are for loosers -* Minimap -code minimap from scratch * cursor adjust syze based on overed glyph [x] * Font changing font more times than the total number of font you have inside =~/.config/ded/fonts= make the text disappear [] * Camera - when animation are false move the camera like in emacs or vim [x] + when animation are false move the camera like in vim [x] togglable emacs style camera centering [] * Shaders use shaders from =~/.config/ded/shaders= instead [x] From ad74ceccdeea2a173cdf8146145e5a5155a686a3 Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Tue, 9 Apr 2024 11:53:08 +0200 Subject: [PATCH 65/74] smart_fill_column --- build.sh | 4 +- .../fonts/FiraCodeNerdFontMono-Regular.ttf | Bin 0 -> 2148116 bytes config/ded/fonts/MonoLisa-BoldItalic.ttf | Bin 87384 -> 0 bytes config/ded/shaders/simple_text.frag | 2 +- config/ded/shaders/wave.vert | 92 +++--- config/ded/snippets/#inc | 1 - config/ded/snippets/glfw | 37 +++ config/ded/snippets/raylib | 18 ++ libtree-sitter-json.a | Bin 15898 -> 0 bytes src/M-x.c | 15 +- src/editor.c | 164 ++-------- src/editor.h | 58 +--- src/emacs.c | 84 +++++ src/emacs.h | 1 + src/evil.c | 3 +- src/helix.c | 4 +- src/lexer.c | 45 ++- src/lsp.c | 26 +- src/main.c | 160 +++++----- src/render.c | 293 ++++++++++-------- src/render.h | 2 + src/theme.c | 29 +- src/theme.h | 7 + src/treesitter.c | 85 ----- src/treesitter.h | 20 -- src/utilities.c | 140 +++++++++ src/utilities.h | 20 ++ src/yasnippet.c | 195 ++++-------- src/yasnippet.h | 3 - test.json | 28 -- 30 files changed, 750 insertions(+), 786 deletions(-) create mode 100644 config/ded/fonts/FiraCodeNerdFontMono-Regular.ttf delete mode 100644 config/ded/fonts/MonoLisa-BoldItalic.ttf delete mode 100644 config/ded/snippets/#inc create mode 100644 config/ded/snippets/glfw create mode 100644 config/ded/snippets/raylib delete mode 100644 libtree-sitter-json.a delete mode 100644 src/treesitter.c delete mode 100644 src/treesitter.h create mode 100644 src/utilities.c create mode 100644 src/utilities.h delete mode 100644 test.json diff --git a/build.sh b/build.sh index 25f39dc6..82f88045 100755 --- a/build.sh +++ b/build.sh @@ -24,7 +24,7 @@ set -xe CC="${CXX:-cc}" PKGS="sdl2 glew freetype2" -CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -ljson-c -lpthread -D_DEFAULT_SOURCE -ltree-sitter" +CFLAGS="-Wall -Wextra -std=c11 -pedantic -ggdb -ljson-c -lpthread -D_DEFAULT_SOURCE" LIBS=-lm SRC="src/*.c" @@ -32,6 +32,6 @@ if [ `uname` = "Darwin" ]; then CFLAGS+=" -framework OpenGL" fi -$CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS ./libtree-sitter-json.a `pkg-config --libs $PKGS ` +$CC $CFLAGS `pkg-config --cflags $PKGS` -o ded $SRC $LIBS `pkg-config --libs $PKGS ` diff --git a/config/ded/fonts/FiraCodeNerdFontMono-Regular.ttf b/config/ded/fonts/FiraCodeNerdFontMono-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ed9241879febda55b64999f67a56ca3551274fdf GIT binary patch literal 2148116 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%0A1xY{ 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%0ANXc*r{#jY<{lIYDARe7u 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 literal 0 HcmV?d00001 diff --git a/config/ded/fonts/MonoLisa-BoldItalic.ttf b/config/ded/fonts/MonoLisa-BoldItalic.ttf deleted file mode 100644 index 0bcf5b46792fc19c5d9cf560e5caa6b6e361d14e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87384 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 diff --git a/config/ded/shaders/simple_text.frag b/config/ded/shaders/simple_text.frag index 0b61e310..e892529b 100644 --- a/config/ded/shaders/simple_text.frag +++ b/config/ded/shaders/simple_text.frag @@ -15,7 +15,7 @@ void main() { // Dumb shadow -// look good only with radon font +/* look good only with radon font */ /* #version 330 core */ /* uniform sampler2D image; */ diff --git a/config/ded/shaders/wave.vert b/config/ded/shaders/wave.vert index f04c5114..4e7991f6 100644 --- a/config/ded/shaders/wave.vert +++ b/config/ded/shaders/wave.vert @@ -1,40 +1,4 @@ -//WAWE -/* #version 330 core */ - -/* uniform vec2 resolution; */ -/* uniform float time; */ -/* uniform float camera_scale; */ -/* uniform vec2 camera_pos; */ - -/* layout(location = 0) in vec2 position; */ -/* layout(location = 1) in vec4 color; */ -/* layout(location = 2) in vec2 uv; */ - -/* out vec4 out_color; */ -/* out vec2 out_uv; */ - -/* vec2 camera_project(vec2 point) */ -/* { */ -/* return 2.0 * (point - camera_pos) * camera_scale / resolution; */ -/* } */ - -/* void main() { */ -/* // Apply camera projection first */ -/* vec4 projected_position = vec4(camera_project(position), 0.0, 1.0); */ - -/* // Adding a displacement effect that varies with time in screen space */ -/* projected_position.x += sin(projected_position.y + time) * 0.22; // Horizontal wave */ -/* projected_position.y += cos(projected_position.x + time) * 0.02; // Vertical wave */ - -/* gl_Position = projected_position; */ - -/* out_color = color; */ -/* out_uv = uv; */ -/* } */ - - - -// GUITAR HERO +/* WAWE */ #version 330 core uniform vec2 resolution; @@ -56,19 +20,55 @@ vec2 camera_project(vec2 point) void main() { // Apply camera projection first - vec2 projected_point = camera_project(position); - - // Apply a static perspective transformation - float perspectiveDepth = -0.45; // Adjust for more or less perspective - float depth = 1.0 / (1.0 - projected_point.y * perspectiveDepth); - - projected_point *= depth; + vec4 projected_position = vec4(camera_project(position), 0.0, 1.0); - // Convert back to vec4 - vec4 projected_position = vec4(projected_point, 0.0, 1.0); + // Adding a displacement effect that varies with time in screen space + projected_position.x += sin(projected_position.y + time) * 0.22; // Horizontal wave + projected_position.y += cos(projected_position.x + time) * 0.02; // Vertical wave gl_Position = projected_position; out_color = color; out_uv = uv; } + + + +// GUITAR HERO +/* #version 330 core */ + +/* uniform vec2 resolution; */ +/* uniform float time; */ +/* uniform float camera_scale; */ +/* uniform vec2 camera_pos; */ + +/* layout(location = 0) in vec2 position; */ +/* layout(location = 1) in vec4 color; */ +/* layout(location = 2) in vec2 uv; */ + +/* out vec4 out_color; */ +/* out vec2 out_uv; */ + +/* vec2 camera_project(vec2 point) */ +/* { */ +/* return 2.0 * (point - camera_pos) * camera_scale / resolution; */ +/* } */ + +/* void main() { */ +/* // Apply camera projection first */ +/* vec2 projected_point = camera_project(position); */ + +/* // Apply a static perspective transformation */ +/* float perspectiveDepth = -0.45; // Adjust for more or less perspective */ +/* float depth = 1.0 / (1.0 - projected_point.y * perspectiveDepth); */ + +/* projected_point *= depth; */ + +/* // Convert back to vec4 */ +/* vec4 projected_position = vec4(projected_point, 0.0, 1.0); */ + +/* gl_Position = projected_position; */ + +/* out_color = color; */ +/* out_uv = uv; */ +/* } */ diff --git a/config/ded/snippets/#inc b/config/ded/snippets/#inc deleted file mode 100644 index 301c1e68..00000000 --- a/config/ded/snippets/#inc +++ /dev/null @@ -1 +0,0 @@ -#include <$0> diff --git a/config/ded/snippets/glfw b/config/ded/snippets/glfw new file mode 100644 index 00000000..fa3b72fb --- /dev/null +++ b/config/ded/snippets/glfw @@ -0,0 +1,37 @@ +#include <GLFW/glfw3.h> +$0 +int main(void) +{ + GLFWwindow* window; + + /* Initialize the library */ + if (!glfwInit()) + return -1; + + /* Create a windowed mode window and its OpenGL context */ + window = glfwCreateWindow(640, 480, "Hello World", NULL, NULL); + if (!window) + { + glfwTerminate(); + return -1; + } + + /* Make the window's context current */ + glfwMakeContextCurrent(window); + + /* Loop until the user closes the window */ + while (!glfwWindowShouldClose(window)) + { + /* Render here */ + glClear(GL_COLOR_BUFFER_BIT); + + /* Swap front and back buffers */ + glfwSwapBuffers(window); + + /* Poll for and process events */ + glfwPollEvents(); + } + + glfwTerminate(); + return 0; +} diff --git a/config/ded/snippets/raylib b/config/ded/snippets/raylib new file mode 100644 index 00000000..7e9f9035 --- /dev/null +++ b/config/ded/snippets/raylib @@ -0,0 +1,18 @@ +#include "raylib.h" +$0 +int main(void) +{ + InitWindow(800, 450, "raylib [core] example - basic window"); + + while (!WindowShouldClose()) + { + BeginDrawing(); + ClearBackground(RAYWHITE); + DrawText("Congrats! You created your first window!", 190, 200, 20, LIGHTGRAY); + EndDrawing(); + } + + CloseWindow(); + + return 0; +} diff --git a/libtree-sitter-json.a b/libtree-sitter-json.a deleted file mode 100644 index e59c01e1057d2250f70316a37c24cbc1e011eeba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15898 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 P<<Fx1$NhyVt;_!x)6re? diff --git a/src/M-x.c b/src/M-x.c index 341cbb9b..baee6d67 100644 --- a/src/M-x.c +++ b/src/M-x.c @@ -5,6 +5,7 @@ #include "helix.h" #include "emacs.h" #include "lsp.h" +#include "utilities.h" // TODO aliases (lua or lisp we will have an init file), // history in program memory, when quitting save it in ~/.config/ded/M-x-history @@ -107,20 +108,6 @@ uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1) { } -// UTLITY -bool is_number(const char *str) { - if (!str || *str == '\0') - return false; // Empty string is not a number - - // Check if each character is a digit - for (const char *p = str; *p != '\0'; p++) { - if (!isdigit((unsigned char)*p)) - return false; - } - return true; -} - - diff --git a/src/editor.c b/src/editor.c index 73a12fc0..84622b39 100644 --- a/src/editor.c +++ b/src/editor.c @@ -16,28 +16,35 @@ #include "evil.h" #include "theme.h" #include "M-x.h" +#include "utilities.h" +// TODO attach documentation to each variable +// and make an interface to modify variables at runtime à la emacs + bool quit = false; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; float max_zoom_factor = 50.0; -bool followCursor = true; bool isWave = false; size_t indentation = 4; bool showLineNumbers = false; bool highlightCurrentLineNumber = true; -bool relativeLineNumbers = false; +bool relativeLineNumbers = true; bool showWhitespaces = false; bool copiedLine = false; bool matchParenthesis = true; -bool hl_line = false; -bool superDrammtic = true; +bool zoomInInsertMode = false; bool instantCamera = false; +bool followCursor = true; +bool centeredText = true; + + +bool hl_line = false; bool showIndentationLines = true; bool showMinibuffer = true; @@ -45,7 +52,7 @@ bool showModeline = true; float minibufferHeight = 21.0f; float modelineHeight = 35.0f; float modelineAccentWidth = 5.0f; -bool ivy = false; +bool fzy = false; bool M_x_active = false; bool evil_command_active = false; @@ -59,13 +66,18 @@ bool automatic_zoom = true; float fringeWidth = 6.0f; bool showFringe = true; +size_t fillColumn = 80; +float fillColumnThickness = 5.0; // if 0, it default to the width of one character +bool smartFillColumn = true; +bool showFillColumn = true; + + bool ctrl_x_pressed = false; void reset_keychords() { ctrl_x_pressed = false; } - void set_current_mode() { if (emacs) { current_mode = EMACS; @@ -78,36 +90,6 @@ void set_current_mode() { EvilMode current_mode = NORMAL; -bool extract_word_under_cursor(Editor *editor, char *word) { - // Make a copy of cursor position to avoid modifying the actual cursor - size_t cursor = editor->cursor; - - // Move left to find the start of the word. - while (cursor > 0 && isalnum(editor->data.items[cursor - 1])) { - cursor--; - } - - // Check if the cursor is on a word or on whitespace/special character. - if (!isalnum(editor->data.items[cursor])) return false; - - int start = cursor; - - // Move right to find the end of the word. - while (cursor < editor->data.count && isalnum(editor->data.items[cursor])) { - cursor++; - } - - int end = cursor; - - // Copy the word to the provided buffer. - // Make sure not to overflow the buffer and null-terminate the string. - int length = end - start; - strncpy(word, &editor->data.items[start], length); - word[length] = '\0'; - - return true; -} - void move_camera(Simple_Renderer *sr, const char* direction, float amount) { if(strcmp(direction, "up") == 0) { @@ -729,28 +711,6 @@ void editor_move_paragraph_down(Editor *e) e->cursor = e->lines.items[row].begin; } - -bool editor_is_line_empty(Editor *e, size_t row) { - if (row >= e->lines.count) return true; // Non-existent lines are considered empty - - return e->lines.items[row].begin == e->lines.items[row].end; -} - -bool editor_is_line_whitespaced(Editor *e, size_t row) { - if (row >= e->lines.count) return false; - - size_t line_begin = e->lines.items[row].begin; - size_t line_end = e->lines.items[row].end; - - for (size_t i = line_begin; i < line_end; ++i) { - if (!isspace(e->data.items[i])) { - return false; - } - } - return true; -} - - ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos) { // Ensure the cursor position is within the valid range if (cursor_pos >= editor->data.count) return -1; @@ -791,19 +751,7 @@ ssize_t find_matching_parenthesis(Editor *editor, size_t cursor_pos) { return -1; } -size_t editor_row_from_pos(const Editor *e, size_t pos) { - assert(e->lines.count > 0); - for (size_t row = 0; row < e->lines.count; ++row) { - Line line = e->lines.items[row]; - if (line.begin <= pos && pos <= line.end) { - return row; - } - } - return e->lines.count - 1; -} - -//TODO BUG void editor_enter(Editor *e) { if (e->searching) { editor_stop_search_and_mark(e); @@ -854,6 +802,9 @@ void editor_enter(Editor *e) { editor_insert_char(e, ' '); } } + + indent(e); + e->last_stroke = SDL_GetTicks(); } } @@ -989,17 +940,6 @@ void editor_drag_line_up(Editor *editor) { editor_retokenize(editor); } -float measure_whitespace_width(Free_Glyph_Atlas *atlas) { - Vec2f whitespaceSize = {0.0f, 0.0f}; - free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); - return whitespaceSize.x; -} - -float measure_whitespace_height(Free_Glyph_Atlas *atlas) { - Vec2f whitespaceSize = {0.0f, 0.0f}; - free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); - return whitespaceSize.y; -} void add_one_indentation_here(Editor *editor) { for (size_t i = 0; i < indentation; ++i) { @@ -1153,37 +1093,6 @@ void indent(Editor *editor) { } -size_t find_first_non_whitespace(const char* items, size_t begin, size_t end) { - size_t pos = begin; - while (pos < end && isspace((unsigned char)items[pos])) { - pos++; - } - return pos; -} - - - -// TODO tomove -bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length) { - size_t start = cursor; - while (start > 0 && editor->data.items[start - 1] != '\n') { - start--; - } - - size_t end = start; - while (end < editor->data.count && editor->data.items[end] != '\n') { - end++; - } - - size_t length = end - start; - if (length < max_length) { - strncpy(line, &editor->data.items[start], length); - line[length] = '\0'; - return true; - } - - return false; -} bool extractLocalIncludePath(Editor *editor, char *includePath) { char line[512]; // Adjust size as needed @@ -1460,32 +1369,6 @@ void editor_save_and_quit(Editor *e) { quit = true; } -bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { - if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { - return false; - } - - size_t end = e->cursor; - size_t start = end; - - while (start > 0 && isalnum(e->data.items[start - 1])) { - start--; - } - - size_t word_length = end - start; - if (word_length >= max_word_length) { - return false; - } - - memcpy(word, &e->data.items[start], word_length); - word[word_length] = '\0'; - e->cursor = start; - return true; -} - - - - #define MAX_MATCHES 1024 #define MAX_WORD_LENGTH 256 @@ -1614,12 +1497,7 @@ void get_cursor_position(const Editor *e, size_t *line, int *character) { - - - - // ANIMATIONS -// TODO don't always update float easeOutCubic(float x) { return 1 - pow(1 - x, 3); diff --git a/src/editor.h b/src/editor.h index 4105b50e..bc2a9a2a 100644 --- a/src/editor.h +++ b/src/editor.h @@ -12,6 +12,10 @@ #include "hashmap.h" + +extern bool copiedLine; +extern bool matchParenthesis; + extern bool followCursor; extern size_t indentation; extern float zoom_factor; @@ -20,20 +24,18 @@ extern float max_zoom_factor; extern bool showLineNumbers; extern bool isWave; extern bool showWhitespaces; -extern bool copiedLine; extern bool hl_line; extern bool relativeLineNumbers; extern bool highlightCurrentLineNumber; -extern bool matchParenthesis; -extern bool superDrammtic; extern bool showIndentationLines; - +extern bool zoomInInsertMode; +extern bool centeredText; extern bool showMinibuffer; extern bool showModeline; extern float minibufferHeight; extern float modelineHeight; extern float modelineAccentWidth; -extern bool ivy; +extern bool fzy; extern bool M_x_active; extern bool evil_command_active; extern bool quit; @@ -47,6 +49,11 @@ extern bool helix; extern bool emacs; extern bool automatic_zoom; +extern size_t fillColumn; +extern float fillColumnThickness; +extern bool smartFillColumn; +extern bool showFillColumn; + // Emacs Style KeyChords extern bool ctrl_x_pressed; @@ -221,46 +228,6 @@ void update_cursor_color(Editor * editor); /* void update_cursor_color(Editor *editor, Free_Glyph_Atlas *atlas); */ - - - - - - - - - - - -// UTILITY -bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length); -size_t editor_row_from_pos(const Editor *e, size_t pos); -bool extract_word_under_cursor(Editor *editor, char *word); -bool editor_is_line_empty(Editor *e, size_t row); -bool editor_is_line_whitespaced(Editor *e, size_t row); -float measure_whitespace_width(Free_Glyph_Atlas *atlas); -float measure_whitespace_height(Free_Glyph_Atlas *atlas); -size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); -bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); -bool is_number(const char *str); - -// Var Documentation - -typedef struct { - char *var_name; // Name of the variable - char *var_type; // Type of the variable (e.g., "int", "float", "bool") - char *description; // Description of the variable -} VariableDoc; - -void initialize_variable_docs_map(uint64_t seed0, uint64_t seed1); -bool document_variable(const char *name, const char *type, const char *description); -void initialize_variable_documentation(); -void print_variable_doc(const char *var_name); -uint64_t variable_doc_hash(const void *item, uint64_t seed0, uint64_t seed1); -int variable_doc_compare(const void *a, const void *b, void *udata); - - - // animation extern float targetModelineHeight; extern bool isModelineAnimating; @@ -277,7 +244,6 @@ float easeOutCubic(float x); - void editor_color_text_range(Editor *editor, size_t start, size_t end, Vec4f new_color); void adjust_line_number_width(Editor *editor, float *lineNumberWidth); diff --git a/src/emacs.c b/src/emacs.c index b487a93a..91b892ec 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -1,4 +1,88 @@ #include "emacs.h" +#include "utilities.h" + + +/* void emacs_ungry_delete_backwards(Editor *e) { */ +/* if (e->searching || e->cursor == 0) return; */ + +/* size_t original_cursor = e->cursor; */ +/* size_t start_pos = e->cursor; */ +/* size_t last_newline_pos = 0; */ +/* bool found_non_newline_whitespace = false; */ +/* int newline_count = 0; */ + +/* // Move left to the start of contiguous whitespace or to the start of the file */ +/* while (start_pos > 0 && isspace(e->data.items[start_pos - 1])) { */ +/* if (e->data.items[start_pos - 1] == '\n') { */ +/* newline_count++; */ +/* last_newline_pos = start_pos - 1; */ +/* } else { */ +/* found_non_newline_whitespace = true; */ +/* } */ +/* start_pos--; */ +/* } */ + +/* // If spanning multiple lines, delete but preserve one newline character. */ +/* if (newline_count > 1 || (newline_count == 1 && found_non_newline_whitespace)) { */ +/* start_pos = last_newline_pos + 1; */ +/* } */ + +/* size_t length_to_delete = original_cursor - start_pos; */ + +/* if (length_to_delete > 0) { */ +/* // Delete */ +/* memmove(&e->data.items[start_pos], &e->data.items[original_cursor], e->data.count - original_cursor); */ +/* e->data.count -= length_to_delete; */ +/* e->cursor = start_pos; */ + +/* editor_retokenize(e); */ +/* } */ +/* } */ + +void emacs_ungry_delete_backwards(Editor *e) { + if (e->searching || e->cursor == 0) return; + + size_t original_cursor = e->cursor; + size_t start_pos = e->cursor; + size_t last_newline_pos = 0; + bool found_non_newline_whitespace = false; + int newline_count = 0; + bool should_delete_single_character = true; // Assume we'll delete a single character by default + + // Move left to the start of contiguous whitespace or to the start of the file + while (start_pos > 0 && isspace(e->data.items[start_pos - 1])) { + should_delete_single_character = false; // Found whitespace, so we won't be deleting just a single character + if (e->data.items[start_pos - 1] == '\n') { + newline_count++; + last_newline_pos = start_pos - 1; + } else { + found_non_newline_whitespace = true; + } + start_pos--; + } + + // If spanning multiple lines, delete but preserve one newline character. + if ((newline_count > 1 || (newline_count == 1 && found_non_newline_whitespace)) && !should_delete_single_character) { + start_pos = last_newline_pos + 1; + } else if (should_delete_single_character) { + // If no preceding whitespace was found, adjust start_pos to delete just the last character + start_pos = original_cursor - 1; + } + + size_t length_to_delete = original_cursor - start_pos; + + if (length_to_delete > 0) { + // Perform the deletion + memmove(&e->data.items[start_pos], &e->data.items[original_cursor], e->data.count - original_cursor); + e->data.count -= length_to_delete; + e->cursor = start_pos; + + indent(e); + editor_retokenize(e); + } +} + + // TODO it delete the line if it is on whitespaces even if there is text diff --git a/src/emacs.h b/src/emacs.h index 0e0b3a5b..be22ff84 100644 --- a/src/emacs.h +++ b/src/emacs.h @@ -7,5 +7,6 @@ void emacs_kill_line(Editor *e); void emacs_backward_kill_word(Editor *e); void emacs_back_to_indentation(Editor *e); void emacs_mark_paragraph(Editor *e); +void emacs_ungry_delete_backwards(Editor *e); #endif // EMACS_H diff --git a/src/evil.c b/src/evil.c index fc92a0cb..1a378fd7 100644 --- a/src/evil.c +++ b/src/evil.c @@ -1,6 +1,7 @@ +#include <stdbool.h> #include "evil.h" #include "editor.h" -#include <stdbool.h> +#include "utilities.h" void evil_open_below(Editor *editor) { size_t row = editor_cursor_row(editor); diff --git a/src/helix.c b/src/helix.c index 09c3e39f..a8da5b97 100644 --- a/src/helix.c +++ b/src/helix.c @@ -2,6 +2,7 @@ #include <time.h> #include "helix.h" #include "editor.h" +#include "lexer.h" #include "theme.h" void helix_mode() { @@ -32,7 +33,6 @@ void helix_mode() { void update_cursor_color(Editor *editor) { // Check for no text if (editor == NULL || editor->data.items == NULL || editor->data.count == 0) { - // Handle the error or return with a default color currentTheme.cursor = themes[currentThemeIndex].notext_cursor; return; } @@ -99,6 +99,8 @@ Vec4f get_color_for_token_kind(Token_Kind kind) { case TOKEN_ARROW: return currentTheme.arrow; case TOKEN_FUNCTION_DEFINITION: return currentTheme.function_definition; case TOKEN_ARRAY_CONTENT: return currentTheme.array_content; + case TOKEN_OPEN_SQUARE: return currentTheme.open_square; + case TOKEN_CLOSE_SQUARE: return currentTheme.close_square; default: return currentTheme.cursor; } } diff --git a/src/lexer.c b/src/lexer.c index 50a67972..c9319183 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -42,6 +42,7 @@ const char *cKeywords[] = { "using", "virtual", "wchar_t", "xor", "xor_eq", }; + /* #define keywords_count (sizeof(keywords)/sizeof(keywords[0])) */ #define cKeywords_count (sizeof(cKeywords)/sizeof(cKeywords[0])) @@ -56,8 +57,6 @@ const char *cTypeKeywords[] = { #define cTypeKeywords_count (sizeof(cTypeKeywords) / sizeof(cTypeKeywords[0])) - - const char *token_kind_name(Token_Kind kind) { switch (kind) { @@ -322,7 +321,7 @@ Token lexer_next(Lexer *l) !isspace(l->content[l->cursor + potential_length]) && l->content[l->cursor + potential_length] != '\n' && l->content[l->cursor + potential_length] != - ')') { // Exclude closing parenthesis + ')') { // Exclude closing parenthesis potential_length++; } @@ -430,6 +429,8 @@ Token lexer_next(Lexer *l) } // single quote + // TODO if there is only one quote, + // the text on the right should not be colored. if (l->content[l->cursor] == '\'') { token.kind = TOKEN_STRING; lexer_chop_char(l, 1); @@ -495,21 +496,21 @@ Token lexer_next(Lexer *l) // TODO // multi-line comments - /* if (lexer_starts_with(l, "/\*")) { */ - /* token.kind = TOKEN_COMMENT; // Assuming you use the same token kind for single and multi-line comments */ - /* lexer_chop_char(l, 2); // Skip the "/\*" */ + if (lexer_starts_with(l, "/*")) { + token.kind = TOKEN_COMMENT; + lexer_chop_char(l, 2); // Skip the "/*" - /* while (l->cursor + 1 < l->content_len) { */ - /* if (l->content[l->cursor] == '*' && l->content[l->cursor + 1] == '/') { */ - /* lexer_chop_char(l, 2); // Skip the "*\/" */ - /* break; */ - /* } */ - /* lexer_chop_char(l, 1); */ - /* } */ + while (l->cursor + 1 < l->content_len) { + if (l->content[l->cursor] == '*' && l->content[l->cursor + 1] == '/') { + lexer_chop_char(l, 2); // Skip the "*/" + break; + } + lexer_chop_char(l, 1); + } - /* token.text_len = &l->content[l->cursor] - token.text; */ - /* return token; */ - /* } */ + token.text_len = &l->content[l->cursor] - token.text; + return token; + } // FUNCTION DEFINITION if (l->cursor < l->content_len && is_symbol_start(l->content[l->cursor])) { @@ -576,12 +577,9 @@ Token lexer_next(Lexer *l) l->cursor = symbolStart; } } - - - - - for (size_t i = 0; i < literal_tokens_count; ++i) { + + for (size_t i = 0; i < literal_tokens_count; ++i) { if (lexer_starts_with(l, literal_tokens[i].text)) { // NOTE: this code assumes that there is no newlines in literal_tokens[i].text size_t text_len = strlen(literal_tokens[i].text); @@ -590,9 +588,8 @@ Token lexer_next(Lexer *l) lexer_chop_char(l, text_len); return token; } - } + } - if (is_symbol_start(l->content[l->cursor])) { token.kind = TOKEN_SYMBOL; @@ -600,7 +597,7 @@ Token lexer_next(Lexer *l) lexer_chop_char(l, 1); token.text_len += 1; } - + // First, check if the token is a type for (size_t i = 0; i < cTypeKeywords_count; ++i) { size_t keyword_len = strlen(cTypeKeywords[i]); diff --git a/src/lsp.c b/src/lsp.c index 90cf65c9..c4d8a416 100644 --- a/src/lsp.c +++ b/src/lsp.c @@ -12,13 +12,11 @@ #include <limits.h> #include "common.h" -// Global variables int to_clangd[2]; int from_clangd[2]; pthread_t receive_thread; int current_request_id = 1; - void handle_error(const char *message) { perror(message); exit(EXIT_FAILURE); @@ -58,14 +56,6 @@ void start_clangd(Editor *e) { send_initialize_request(e); } -/* void shutdown_clangd() { */ -/* send_json_rpc("shutdown", "{}", current_request_id++); */ -/* send_json_rpc("exit", "{}", current_request_id++); */ -/* close(to_clangd[1]); */ -/* pthread_join(receive_thread, NULL); */ -/* wait(NULL); // Wait for clangd to terminate */ -/* } */ - void shutdown_clangd(Editor *e) { send_json_rpc(e->to_clangd_fd, "shutdown", "{}", current_request_id++); send_json_rpc(e->to_clangd_fd, "exit", "{}", current_request_id++); @@ -149,7 +139,6 @@ void handle_lsp_response(LSPResponse *response, Editor *e) { } } - void* receive_json_rpc(void* arg) { Editor *e = (Editor *)arg; if (e == NULL) { @@ -194,9 +183,6 @@ void* receive_json_rpc(void* arg) { } - - - void convert_uri_to_file_path(const char *uri, char *file_path, size_t file_path_size) { if (strncmp(uri, "file://", 7) == 0) { uri += 7; // Skip the "file://" part @@ -278,19 +264,23 @@ void get_current_file_uri(Editor *e, File_Browser *fb, char *file_uri, size_t ur } } - - void send_initialize_request(Editor *e) { const char *params = "{" "\"processId\": null," - "\"rootUri\": \"file://<path_to_your_workspace>\"," + "\"rootUri\": \"file:///home/l/Desktop/test/ded\"," "\"capabilities\": {" - " // Include necessary capabilities" + " \"textDocument\": {" + " \"definition\": {" + " \"dynamicRegistration\": true" + " }" + " }" "}" "}"; send_json_rpc(e->to_clangd_fd, "initialize", params, current_request_id++); } + + void send_initialized_notification(Editor *e) { send_json_rpc(e->to_clangd_fd, "initialized", "{}", current_request_id++); } diff --git a/src/main.c b/src/main.c index ba74bfcf..c3afeb2e 100644 --- a/src/main.c +++ b/src/main.c @@ -41,7 +41,6 @@ #include "unistd.h" #include "M-x.h" #include "lsp.h" -#include "treesitter.h" #include "clock.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) @@ -585,17 +584,13 @@ int main(int argc, char **argv) case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { - followCursor = !followCursor; // Toggle the state + followCursor = !followCursor; } } break; - // TODO check if the snippet activated if not indent case SDLK_TAB: { activate_snippet(&editor); - for (size_t i = 0; i < indentation; ++i) { - editor_insert_char(&editor, ' '); - } editor.last_stroke = SDL_GetTicks(); } break; @@ -615,6 +610,7 @@ int main(int argc, char **argv) case SDLK_p: if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); } editor.last_stroke = SDL_GetTicks(); @@ -709,12 +705,6 @@ int main(int argc, char **argv) if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ':') { SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume } - - // TODO ivy - /* if (!ivy) { */ - /* minibufferHeight += 189; */ - /* ivy = true; */ - /* } */ } break; @@ -735,18 +725,20 @@ int main(int argc, char **argv) break; case SDLK_c: - if (event.key.keysym.mod & KMOD_SHIFT) { + if (event.key.keysym.mod & KMOD_CTRL) { + centeredText = !centeredText; + } else if (event.key.keysym.mod & KMOD_ALT) { + instantCamera = !instantCamera; + } else if (event.key.keysym.mod & KMOD_SHIFT) { evil_change_line(&editor); - } else if (event.key.keysym.mod & KMOD_CTRL) { - automatic_zoom = !automatic_zoom; + + // Eat up the next SDL_TEXTINPUT event for 'C' + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || + (tmpEvent.text.text[0] != 'C')) { + SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not + } } - - // Eat up the next SDL_TEXTINPUT event for 'C' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'C')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } break; case SDLK_m: @@ -755,12 +747,10 @@ int main(int argc, char **argv) } break; - - case SDLK_ESCAPE: { - if (ivy) { + if (fzy) { minibufferHeight -= 189; - ivy = false; + fzy = false; } if (editor.minibuffer_active) { @@ -775,7 +765,6 @@ int main(int argc, char **argv) } break; - case SDLK_SPACE: { if (SDL_GetModState() & KMOD_CTRL) { if (!editor.has_anchor){ @@ -783,10 +772,10 @@ int main(int argc, char **argv) } else { editor_goto_anchor_and_clear(&editor); } - } else if (!ivy) { + } else if (!fzy) { // TODO time delay whichkey minibufferHeight += 189; - ivy = true; + fzy = true; } } break; @@ -856,14 +845,16 @@ int main(int argc, char **argv) case SDLK_z: { if (SDL_GetModState() & KMOD_CTRL) { - helix_mode(); + /* helix_mode(); */ + current_mode = EMACS; + editor.last_stroke = SDL_GetTicks(); } } break; case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { - followCursor = !followCursor; // Toggle the state + followCursor = !followCursor; } } break; @@ -945,15 +936,19 @@ int main(int argc, char **argv) case SDLK_f: if (SDL_GetModState() & KMOD_CTRL) { - editor_move_char_right(&editor); + followCursor = !followCursor; + /* editor_move_char_right(&editor); */ } break; case SDLK_s: { if (event.key.keysym.mod & KMOD_CTRL) { - // Ctrl+S is pressed - editor_start_search(&editor); - current_mode = MINIBUFFER; + if (ctrl_x_pressed) { + editor_save(&editor); + } else { + editor_start_search(&editor); + current_mode = MINIBUFFER; + } } else { // Either S or Shift+S is pressed if (event.key.keysym.mod & KMOD_SHIFT) { @@ -1044,11 +1039,13 @@ int main(int argc, char **argv) case SDLK_a: editor.last_stroke = SDL_GetTicks(); - if (SDL_GetModState() & KMOD_SHIFT) { // Check if shift is being held + if (SDL_GetModState() & KMOD_CTRL) { + automatic_zoom = !automatic_zoom; + break; + } else if (SDL_GetModState() & KMOD_SHIFT) { editor_move_to_line_end(&editor); } else { - // Move the cursor one position to the right - editor_move_char_right(&editor); + editor_move_char_right(&editor); } current_mode = INSERT; @@ -1079,10 +1076,10 @@ int main(int argc, char **argv) } } - // TODO ivy - /* if (!ivy) { */ + // TODO fzy + /* if (!fzy) { */ /* minibufferHeight += 189; */ - /* ivy = true; */ + /* fzy = true; */ /* } */ } else if (event.key.keysym.mod & KMOD_SHIFT) { evil_delete_backward_char(&editor); @@ -1108,17 +1105,18 @@ int main(int argc, char **argv) } break; - case SDLK_BACKSPACE: // yes you can delete in normal mode - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - } else if (event.key.keysym.mod & KMOD_CTRL) { - emacs_backward_kill_word(&editor); - } else { - editor_backspace(&editor); - } - break; + case SDLK_BACKSPACE: // yes you can delete in normal mode + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + } else if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + } else { + emacs_ungry_delete_backwards(&editor); + /* editor_backspace(&editor); */ + } + break; case SDLK_j: @@ -1141,6 +1139,7 @@ int main(int argc, char **argv) } else { editor_move_line_down(&editor); } + mixSelectionColor = false; editor.last_stroke = SDL_GetTicks(); break; @@ -1159,6 +1158,7 @@ int main(int argc, char **argv) } else { editor_move_line_up(&editor); } + mixSelectionColor = false; editor.last_stroke = SDL_GetTicks(); break; @@ -1370,23 +1370,14 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - - // TODO if no snippet was activated indent() - // TODO if no snippet was activated dont move the cursor case SDLK_TAB: { - /* char word[MAX_SNIPPET_KEY_LENGTH]; */ - /* if (get_word_left_of_cursor(&editor, word, sizeof(word))) { */ activate_snippet(&editor); - /* } else { */ - /* indent(&editor); */ - /* } */ break; } - case SDLK_F3: - file_browser = true; - break; + file_browser = true; + break; case SDLK_MINUS: if (SDL_GetModState() & KMOD_CTRL) { @@ -1525,7 +1516,9 @@ int main(int argc, char **argv) } else if (event.key.keysym.mod & KMOD_CTRL) { emacs_backward_kill_word(&editor); editor.last_stroke = SDL_GetTicks(); - }else{ + }else if (event.key.keysym.mod & KMOD_ALT) { + emacs_ungry_delete_backwards(&editor); + } else { editor_backspace(&editor); } editor.last_stroke = SDL_GetTicks(); @@ -1793,10 +1786,10 @@ int main(int argc, char **argv) SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume } - // TODO ivy - /* if (!ivy) { */ + // TODO fzy + /* if (!fzy) { */ /* minibufferHeight += 189; */ - /* ivy = true; */ + /* fzy = true; */ /* } */ } break; @@ -1837,9 +1830,9 @@ int main(int argc, char **argv) case SDLK_ESCAPE: { - if (ivy) { + if (fzy) { minibufferHeight -= 189; - ivy = false; + fzy = false; } if (editor.minibuffer_active) { @@ -1861,10 +1854,10 @@ int main(int argc, char **argv) } else { editor_goto_anchor_and_clear(&editor); } - } else if (!ivy) { + } else if (!fzy) { // TODO time delay whichkey minibufferHeight += 189; - ivy = true; + fzy = true; } } break; @@ -2157,10 +2150,10 @@ int main(int argc, char **argv) } } - // TODO ivy - /* if (!ivy) { */ + // TODO fzy + /* if (!fzy) { */ /* minibufferHeight += 189; */ - /* ivy = true; */ + /* fzy = true; */ /* } */ } else if (event.key.keysym.mod & KMOD_SHIFT) { evil_delete_backward_char(&editor); @@ -2320,9 +2313,9 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { case SDLK_ESCAPE: { - if (ivy) { + if (fzy) { minibufferHeight -= 189; - ivy = false; + fzy = false; } if (editor.searching) { @@ -2351,8 +2344,7 @@ int main(int argc, char **argv) } editor.last_stroke = SDL_GetTicks(); break; - - // TODO use editor_enter() + case SDLK_RETURN: { editor_enter(&editor); } @@ -2413,26 +2405,20 @@ int main(int argc, char **argv) editor_render(window, &atlas, &sr, &editor); update_cursor_color(&editor); - render_search_text(&atlas, &sr, &editor); - - if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "json") == 0) { - tree(&editor, &fb); - } - - if (fb.file_extension.items != NULL && strcmp(fb.file_extension.items, "md") == 0) { render_markdown(&atlas, &sr, &editor, &fb); } - if (M_x_active){ render_minibuffer_content(&atlas, &sr, &editor, "M-x"); } else if (evil_command_active) { render_minibuffer_content(&atlas, &sr, &editor, ":"); + } else if (editor.searching) { + /* render_minibuffer_content(&atlas, &sr, &editor, "/"); */ + render_search_text(&atlas, &sr, &editor); } - /* print_variable_doc("zoom_factor"); */ } SDL_GL_SwapWindow(window); diff --git a/src/render.c b/src/render.c index 8ddb08bc..da4d3ea0 100644 --- a/src/render.c +++ b/src/render.c @@ -9,6 +9,7 @@ #include <stdbool.h> #include <time.h> #include "clock.h" +#include "utilities.h" float lineNumberWidth = FREE_GLYPH_FONT_SIZE * 1; bool render_whitespaces_on_select = false; @@ -25,6 +26,36 @@ Vec4f blend_color(Vec4f color1, Vec4f color2, float blendFactor) { return result; } + +void render_fill_column(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { + float len = calculate_max_line_length(editor); + if (smartFillColumn && len < fillColumn + 1 || showFillColumn == false) { + return; + } + + float characterWidth = measure_whitespace_width(atlas); + float columnPosition = characterWidth * fillColumn; + + if (showLineNumbers) { + columnPosition += lineNumberWidth; + } + + Vec2f startPos = {columnPosition, sr->camera_pos.y - (sr->resolution.y / 2) / sr->camera_scale}; + Vec2f endPos = {columnPosition, sr->camera_pos.y + (sr->resolution.y / 2) / sr->camera_scale}; + + float COLUMN_THICKNESS; + if (fillColumnThickness == 0) { + COLUMN_THICKNESS = characterWidth; + } else { + COLUMN_THICKNESS = fillColumnThickness; + } + + Vec4f COLUMN_COLOR = CURRENT_THEME.fill_column; + simple_renderer_solid_rect(sr, startPos, vec2f(COLUMN_THICKNESS, endPos.y - startPos.y), COLUMN_COLOR); + + simple_renderer_flush(sr); +} + // TODO void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { if (editor->searching) { @@ -44,7 +75,7 @@ void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed // Set cursor size float cursor_width = measure_whitespace_width(atlas); - Vec2f cursorSize = {cursor_width, 21.0f * 4.0f}; // 21 is the minibufferHeight + Vec2f cursorSize = {cursor_width, minibufferHeight * 4.0f}; // Render the cursor simple_renderer_flush(sr); @@ -56,6 +87,58 @@ void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed } } +void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText) { + if (editor->minibuffer_active) { + Vec4f cursorColor = CURRENT_THEME.cursor; + Vec4f textColor = CURRENT_THEME.text; + Vec2f searchPos = {30.0f, 20.0f}; + float prefixRightPadding; + float minibufferCursorOffsett = 5.0f; + + if (M_x_active) { + prefixRightPadding = 50; + } else if (evil_command_active) { + prefixRightPadding = 0; + } else if (editor->searching) { + prefixRightPadding = 0; + } + + if (editor->searching) { + // TODO + } else { + // Render the prefix + free_glyph_atlas_render_line_sized(atlas, sr, prefixText, strlen(prefixText), &searchPos, cursorColor); + + // Calculate the width of the prefix and adjust the position for minibuffer text + float prefixWidth = free_glyph_atlas_measure_line_width(atlas, prefixText, strlen(prefixText)); + searchPos.x += prefixRightPadding; + + // Render the minibuffer text + simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); + free_glyph_atlas_render_line_sized(atlas, sr, editor->minibuffer_text.items, editor->minibuffer_text.count, &searchPos, textColor); + + // Adjust cursor position according to your original logic + searchPos.x += minibufferCursorOffsett; // Adjust x for the cursor + searchPos.y = 0.0f; // Reset y for the cursor + Vec2f cursorPos = searchPos; + + // Set cursor size + float cursor_width = measure_whitespace_width(atlas); + Vec2f cursorSize = {cursor_width, 21.0f * 4.0f}; // 21 is the minibufferHeight + + // Render the cursor + simple_renderer_flush(sr); + simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, cursorPos, cursorSize, cursorColor); + } + // Flush the renderer + simple_renderer_flush(sr); + } +} + + + + void render_selection(Editor *editor, Simple_Renderer *sr, Free_Glyph_Atlas *atlas) { if (isWave) { simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); @@ -68,8 +151,7 @@ void render_selection(Editor *editor, Simple_Renderer *sr, Free_Glyph_Atlas *atl if (editor->selection) { Vec4f selection_color; if (mixSelectionColor) { - // If mixSelectionColor is true, blend the cursor and selection colors - selection_color = blend_color(currentTheme.cursor, currentTheme.selection, 0.5); // Adjust blend factor as needed + selection_color = blend_color(currentTheme.cursor, currentTheme.selection, 0.5); } else { selection_color = themes[currentThemeIndex].selection; } @@ -169,57 +251,6 @@ void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *edito } } - - - -void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText) { - if (editor->minibuffer_active) { - Vec4f cursorColor = CURRENT_THEME.cursor; - Vec4f textColor = CURRENT_THEME.text; - Vec2f searchPos = {30.0f, 20.0f}; - float prefixRightPadding; - float minibufferCursorOffsett = 5.0f; - - if (M_x_active) { - prefixRightPadding = 50; - } else if (evil_command_active) { - prefixRightPadding = 0; - } - - if (editor->searching) { - - } else { - // Render the prefix - free_glyph_atlas_render_line_sized(atlas, sr, prefixText, strlen(prefixText), &searchPos, cursorColor); - - // Calculate the width of the prefix and adjust the position for minibuffer text - float prefixWidth = free_glyph_atlas_measure_line_width(atlas, prefixText, strlen(prefixText)); - searchPos.x += prefixRightPadding; - - // Render the minibuffer text - simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); - free_glyph_atlas_render_line_sized(atlas, sr, editor->minibuffer_text.items, editor->minibuffer_text.count, &searchPos, textColor); - - // Adjust cursor position according to your original logic - searchPos.x += minibufferCursorOffsett; // Adjust x for the cursor - searchPos.y = 0.0f; // Reset y for the cursor - Vec2f cursorPos = searchPos; - - // Set cursor size - float cursor_width = measure_whitespace_width(atlas); - Vec2f cursorSize = {cursor_width, 21.0f * 4.0f}; // 21 is the minibufferHeight - - // Render the cursor - simple_renderer_flush(sr); - simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_COLOR); - simple_renderer_solid_rect(sr, cursorPos, cursorSize, cursorColor); - } - // Flush the renderer - simple_renderer_flush(sr); - } -} - - void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { if (showLineNumbers) { simple_renderer_set_shader(sr, isWave ? VERTEX_SHADER_WAVE : VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); @@ -382,82 +413,68 @@ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed } +void render_indentation_lines(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { + if (!showIndentationLines) return; -typedef struct { - size_t pos; - size_t line; - int level; - float startX; // X position of the start of the line -} BraceInfo; - -// TODO exit early If a line does not contain any braces -// TODO calculate properly CHARACTER_WIDTH -void render_indentation_lines(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { - if (showIndentationLines) { - if (isWave) { - simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); - } else { - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); - } - - float LINE_THICKNESS = 5.0f; - BraceInfo braceStack[5000]; // Assuming a max of 5000 nested braces - int braceCount = 0; - float CHARACTER_WIDTH = measure_whitespace_width(atlas); - - for (size_t i = 0; i < editor->lines.count; ++i) { - Line line = editor->lines.items[i]; - for (size_t j = line.begin; j < line.end; ++j) { - if (editor->data.items[j] == '{') { - ssize_t matching_pos = find_matching_parenthesis(editor, j); - if (matching_pos != -1) { - size_t matching_line = editor_row_from_pos(editor, matching_pos); - - if (matching_line == i) { - j = matching_pos; // Move past the closing brace on the same line - continue; - } - - // Calculate the position of the first non-whitespace character - size_t first_non_whitespace = line.begin; - while (first_non_whitespace < line.end && - (editor->data.items[first_non_whitespace] == ' ' || - editor->data.items[first_non_whitespace] == '\t')) { - first_non_whitespace++; - } - - // Calculate the X position where the line should start - float lineStartX = (first_non_whitespace - line.begin) * CHARACTER_WIDTH; - - braceStack[braceCount] = (BraceInfo){j, i, braceCount, lineStartX}; - braceCount++; - } - } else if (editor->data.items[j] == '}') { - if (braceCount > 0 && braceStack[braceCount - 1].line < i) { - braceCount--; - } - } - } - - // Draw lines for each brace in the stack - for (int k = 0; k < braceCount; k++) { - if (braceStack[k].line < i) { - Vec2f start_pos = {braceStack[k].startX, -((float)braceStack[k].line + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - // Extend the line to include the line with the closing brace - Vec2f end_pos = {start_pos.x, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; - + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + + + float COLUMN_THICKNESS = 5.0f; + float CHARACTER_WIDTH = measure_whitespace_width(atlas); + // This structure keeps track of open braces and their line start positions. + struct LineSpan { + size_t startLine; + size_t endLine; + float startX; + } lineSpans[5000]; + int spanCount = 0; + + // Iterate through each line in the editor + for (size_t i = 0; i < editor->lines.count; ++i) { + Line line = editor->lines.items[i]; + + // Iterate through each character in the line + for (size_t j = line.begin; j < line.end; ++j) { + char c = editor->data.items[j]; + if (c == '{') { + ssize_t matchingPos = find_matching_parenthesis(editor, j); + if (matchingPos != -1) { + size_t matchingLine = editor_row_from_pos(editor, matchingPos); + + // Calculate the position of the first non-whitespace character + size_t firstNonWhitespace = find_first_non_whitespace(editor->data.items, line.begin, j); + + // Calculate the X position where the line should start + float lineStartX = (firstNonWhitespace - line.begin) * CHARACTER_WIDTH; if (showLineNumbers) { - start_pos.x += lineNumberWidth; - end_pos.x += lineNumberWidth; + lineStartX += lineNumberWidth; } - - simple_renderer_solid_rect(sr, start_pos, vec2f(LINE_THICKNESS, end_pos.y - start_pos.y), CURRENT_THEME.indentation_line); + + // Add a new line span for the opening brace + lineSpans[spanCount++] = (struct LineSpan){i, matchingLine, lineStartX}; } } } } + + // Draw lines for each collected brace pair + for (int k = 0; k < spanCount; k++) { + Vec2f startPos = {lineSpans[k].startX, -((float)lineSpans[k].startLine + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + // Adjust endPos to make the line one line shorter, so it doesn't extend to the closing brace line + Vec2f endPos = {startPos.x, -((float)lineSpans[k].endLine - 1 + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + + simple_renderer_solid_rect(sr, startPos, vec2f(COLUMN_THICKNESS, endPos.y - startPos.y), CURRENT_THEME.indentation_line); + } } + + + + void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { int w, h; @@ -618,7 +635,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } } - + render_fill_column(sr, atlas, editor); // Render cursor if (isWave) { @@ -1072,11 +1089,16 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color = CURRENT_THEME.bug; break; case TOKEN_STRING: - /* color = hex_to_vec4f(0x73c936ff); */ color = CURRENT_THEME.string; break; - case TOKEN_COLOR: // Added case for TOKEN_COLOR - { + case TOKEN_OPEN_CURLY: + color = CURRENT_THEME.string; + break; + case TOKEN_CLOSE_CURLY: + color = CURRENT_THEME.string; + break; + + case TOKEN_COLOR: { unsigned long long hex_value; if(sscanf(token.text, "0x%llx", &hex_value) == 1) { color = hex_to_vec4f((uint32_t)hex_value); @@ -1153,7 +1175,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer if (showLineNumbers) { zoom_factor += 1.5f; } - if (superDrammtic) { + if (zoomInInsertMode) { if (current_mode == INSERT) { zoom_factor -= 1; } @@ -1173,9 +1195,17 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer if (target_scale > 3.0f) { target_scale = 3.0f; } else { + + float division; + if (centeredText) { + division = 3; + } else { + division = 2.02; + } + offset = cursor_pos.x - w/3/sr->camera_scale; if (offset < 0.0f) offset = 0.0f; - target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); + target = vec2f(w/division/sr->camera_scale + offset, cursor_pos.y); } sr->camera_vel = vec2f_mul( @@ -1196,13 +1226,20 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer Vec2f target = cursor_pos; float offset = 0.0f; + + float division; + if (centeredText) { + division = 3; + } else { + division = 2.02; + } if (target_scale > 3.0f) { target_scale = 3.0f; } else { offset = cursor_pos.x - w/3/sr->camera_scale; if (offset < 0.0f) offset = 0.0f; - target = vec2f(w/3/sr->camera_scale + offset, cursor_pos.y); + target = vec2f(w/division/sr->camera_scale + offset, cursor_pos.y); } // Instantly set the camera position and scale diff --git a/src/render.h b/src/render.h index fa23f28f..acb1f0bf 100644 --- a/src/render.h +++ b/src/render.h @@ -25,6 +25,8 @@ void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *e #include "file_browser.h" void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, File_Browser *fb); +void render_column(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor); + typedef struct { diff --git a/src/theme.c b/src/theme.c index 03f69d56..6202cbe3 100644 --- a/src/theme.c +++ b/src/theme.c @@ -160,6 +160,8 @@ void update_theme_interpolation() { currentTheme.indentation_line = color_lerp(startTheme.indentation_line, endTheme.indentation_line, interpolationProgress); currentTheme.null = color_lerp(startTheme.null, endTheme.null, interpolationProgress); currentTheme.code_block = color_lerp(startTheme.code_block, endTheme.code_block, interpolationProgress); + currentTheme.fringe = color_lerp(startTheme.fringe, endTheme.fringe, interpolationProgress); + currentTheme.fill_column = color_lerp(startTheme.fill_column, endTheme.fill_column, interpolationProgress); if (interpolationProgress >= 1.0f) { interpolationProgress = 1.0f; @@ -170,6 +172,8 @@ void update_theme_interpolation() { } } + +// TODO each theme should have a name not only an index void initialize_themes() { // Nature themes[0] = (Theme){ @@ -206,9 +210,9 @@ void initialize_themes() { .truee = hex_to_vec4f(0x4C6750FF), .falsee = hex_to_vec4f(0x867892FF), .arrow = hex_to_vec4f(0x834EB6FF), - .open_square = hex_to_vec4f(0xC0ACD1FF), - .close_square = hex_to_vec4f(0xC0ACD1FF), - .array_content = hex_to_vec4f(0x4C6750FF), + .open_square = hex_to_vec4f(0x514B8EFF), + .close_square = hex_to_vec4f(0x514B8EFF), + .array_content = hex_to_vec4f(0xC0ACD1FF), .link = hex_to_vec4f(0x565663FF), .logic_or = hex_to_vec4f(0x658B5FFF), .pipe = hex_to_vec4f(0x565663FF), @@ -229,11 +233,14 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x171717FF), .null = hex_to_vec4f(0x564F96FF), .code_block = hex_to_vec4f(0x080808FF), + .nest1 = hex_to_vec4f(0x658B5FFF), + .nest2 = hex_to_vec4f(0x514B8EFF), + .nest3 = hex_to_vec4f(0x658B5FFF), + .nest4 = hex_to_vec4f(0x514B8EFF), + .nest5 = hex_to_vec4f(0x658B5FFF), + .nest6 = hex_to_vec4f(0x514B8EFF), + .fill_column = hex_to_vec4f(0x262626FF), }; - - - - // DOOM one themes[1] = (Theme){ @@ -293,6 +300,7 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x3F444AFF), .null = hex_to_vec4f(0xA9A1E1FF), .code_block = hex_to_vec4f(0x23272EFF), + .fill_column = hex_to_vec4f(0x42444AFF), }; // Dracula @@ -353,6 +361,7 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x565761FF), .null = hex_to_vec4f(0x8BE9FDFF), .code_block = hex_to_vec4f(0x23242FFF), + .fill_column = hex_to_vec4f(0x44475AFF), }; // Palenigh @@ -413,6 +422,7 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x4E5579FF), .null = hex_to_vec4f(0xF78C6CFF), .code_block = hex_to_vec4f(0x232635FF), + .fill_column = hex_to_vec4f(0x3C435EFF), }; // DOOM city lights @@ -473,6 +483,7 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x384551FF), .null = hex_to_vec4f(0xE27E8DFF), .code_block = hex_to_vec4f(0x20282FFF), + .fill_column = hex_to_vec4f(0x28323BFF), }; // DOOM molokai @@ -533,6 +544,7 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x4E4E4EFF), .null = hex_to_vec4f(0xFD971FFF), .code_block = hex_to_vec4f(0x2D2E2EFF), + .fill_column = hex_to_vec4f(0x4E4E4EFF), }; // SUNSET @@ -593,6 +605,7 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x28292DFF), .null = hex_to_vec4f(0xD46A7DFF), .code_block = hex_to_vec4f(0x0B0C11FF), + .fill_column = hex_to_vec4f(0x28292DFF), }; // Helix @@ -652,6 +665,7 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x281733FF), .null = hex_to_vec4f(0xFFFFFFFF), .code_block = hex_to_vec4f(0x281733FF), + .fill_column = hex_to_vec4f(0x540099FF), // #540099 }; themes[8] = (Theme){ @@ -711,6 +725,7 @@ void initialize_themes() { .indentation_line = hex_to_vec4f(0x272C3AFF), .null = hex_to_vec4f(0x41B0F3FF), .code_block = hex_to_vec4f(0x191D26FF), + .fill_column = hex_to_vec4f(0x272C3AFF), //#272C3A }; diff --git a/src/theme.h b/src/theme.h index 369821d1..19b6c0d8 100644 --- a/src/theme.h +++ b/src/theme.h @@ -61,6 +61,13 @@ typedef struct { Vec4f null; Vec4f code_block; Vec4f fringe; + Vec4f nest1; + Vec4f nest2; + Vec4f nest3; + Vec4f nest4; + Vec4f nest5; + Vec4f nest6; + Vec4f fill_column; } Theme; #define CURRENT_THEME (currentTheme) // interpolated theme diff --git a/src/treesitter.c b/src/treesitter.c deleted file mode 100644 index 20efb65e..00000000 --- a/src/treesitter.c +++ /dev/null @@ -1,85 +0,0 @@ -#include <assert.h> -#include <string.h> -#include <stdio.h> -#include <tree_sitter/api.h> -#include "theme.h" -#include "treesitter.h" - -// Declare the `tree_sitter_json` function, which is -// implemented by the `tree-sitter-json` library. -TSLanguage *tree_sitter_json(); - - -void tree(Editor *e, File_Browser *fb) { - // Create a parser. - TSParser *parser = ts_parser_new(); - - // Set the parser's language (JSON in this case). - ts_parser_set_language(parser, tree_sitter_json()); - - - // Build a syntax tree based on the editor data. - TSTree *tree = ts_parser_parse_string( - parser, - NULL, - e->data.items, - strlen(e->data.items) - ); - - // Get the root node of the syntax tree - TSNode root_node = ts_tree_root_node(tree); - - // Update theme colors based on syntax - update_theme_colors_based_on_syntax(root_node, &CURRENT_THEME); - - // Get some child nodes. - TSNode array_node = ts_node_named_child(root_node, 0); - TSNode number_node = ts_node_named_child(array_node, 0); - - /* // Check that the nodes have the expected types. */ - /* assert(strcmp(ts_node_type(root_node), "document") == 0); */ - /* assert(strcmp(ts_node_type(array_node), "array") == 0); */ - /* assert(strcmp(ts_node_type(number_node), "number") == 0); */ - - /* // Check that the nodes have the expected child counts. */ - /* assert(ts_node_child_count(root_node) == 1); */ - /* assert(ts_node_child_count(array_node) == 5); */ - /* assert(ts_node_named_child_count(array_node) == 2); */ - /* assert(ts_node_child_count(number_node) == 0); */ - - // Print the syntax tree as an S-expression. - char *string = ts_node_string(root_node); - printf("Syntax tree: %s\n", string); - - // Free all of the heap-allocated memory. - free(string); - ts_tree_delete(tree); - ts_parser_delete(parser); -} - - - - - -void update_theme_colors_based_on_syntax(TSNode node, Theme *theme) { - if (ts_node_is_null(node)) return; - - const char* node_type = ts_node_type(node); - - // Change theme colors based on node type - if (strcmp(node_type, "string") == 0) { - transition_color(&theme->string, theme->bug, 0.005f); - } else if (strcmp(node_type, "comment") == 0) { - transition_color(&theme->comment, theme->bug, 0.005f); - } else if (strcmp(node_type, "keyword") == 0) { - transition_color(&theme->logic, theme->bug, 0.005f); - } - // ... add more types as needed - - // Recursively update theme colors for child nodes - uint32_t child_count = ts_node_child_count(node); - for (uint32_t i = 0; i < child_count; ++i) { - TSNode child = ts_node_child(node, i); - update_theme_colors_based_on_syntax(child, theme); - } -} diff --git a/src/treesitter.h b/src/treesitter.h deleted file mode 100644 index 8aff68e8..00000000 --- a/src/treesitter.h +++ /dev/null @@ -1,20 +0,0 @@ - -#ifndef TREESITTER_H -#define TREESITTER_H - -#include "editor.h" -#include "file_browser.h" -#include "theme.h" -#include <tree_sitter/api.h> - - -void tree(Editor *e, File_Browser *fb); -void apply_syntax_highlighting(Editor *editor, TSNode node); -void highlight_node(Editor *editor, TSNode node, Vec4f color); - -void update_theme_colors_based_on_syntax(TSNode node, Theme *theme); - -#endif // TREESITTER_H - - - diff --git a/src/utilities.c b/src/utilities.c new file mode 100644 index 00000000..0ddfb70e --- /dev/null +++ b/src/utilities.c @@ -0,0 +1,140 @@ +#include "utilities.h" + +// Utility functions make it easier to add new functionality + +bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length) { + size_t start = cursor; + while (start > 0 && editor->data.items[start - 1] != '\n') { + start--; + } + + size_t end = start; + while (end < editor->data.count && editor->data.items[end] != '\n') { + end++; + } + + size_t length = end - start; + if (length < max_length) { + strncpy(line, &editor->data.items[start], length); + line[length] = '\0'; + return true; + } + + return false; +} + +size_t editor_row_from_pos(const Editor *e, size_t pos) { + assert(e->lines.count > 0); + for (size_t row = 0; row < e->lines.count; ++row) { + Line line = e->lines.items[row]; + if (line.begin <= pos && pos <= line.end) { + return row; + } + } + return e->lines.count - 1; +} + +bool extract_word_under_cursor(Editor *editor, char *word) { + size_t cursor = editor->cursor; + + // Move left to find the start of the word. + while (cursor > 0 && isalnum(editor->data.items[cursor - 1])) { + cursor--; + } + + // Check if the cursor is on a word or on whitespace/special character. + if (!isalnum(editor->data.items[cursor])) return false; + + int start = cursor; + + // Move right to find the end of the word. + while (cursor < editor->data.count && isalnum(editor->data.items[cursor])) { + cursor++; + } + + int end = cursor; + + // Copy the word to the provided buffer. + // Make sure not to overflow the buffer and null-terminate the string. + int length = end - start; + strncpy(word, &editor->data.items[start], length); + word[length] = '\0'; + + return true; +} + +bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length) { + if (e->cursor == 0 || !isalnum(e->data.items[e->cursor - 1])) { + return false; + } + + size_t end = e->cursor; + size_t start = end; + + while (start > 0 && isalnum(e->data.items[start - 1])) { + start--; + } + + size_t word_length = end - start; + if (word_length >= max_word_length) { + return false; + } + + memcpy(word, &e->data.items[start], word_length); + word[word_length] = '\0'; + e->cursor = start; + return true; +} + +bool editor_is_line_empty(Editor *e, size_t row) { + if (row >= e->lines.count) return true; // Non-existent lines are considered empty + + return e->lines.items[row].begin == e->lines.items[row].end; +} + +bool editor_is_line_whitespaced(Editor *e, size_t row) { + if (row >= e->lines.count) return false; + + size_t line_begin = e->lines.items[row].begin; + size_t line_end = e->lines.items[row].end; + + for (size_t i = line_begin; i < line_end; ++i) { + if (!isspace(e->data.items[i])) { + return false; + } + } + return true; +} + +float measure_whitespace_width(Free_Glyph_Atlas *atlas) { + Vec2f whitespaceSize = {0.0f, 0.0f}; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); + return whitespaceSize.x; +} + +float measure_whitespace_height(Free_Glyph_Atlas *atlas) { + Vec2f whitespaceSize = {0.0f, 0.0f}; + free_glyph_atlas_measure_line_sized(atlas, " ", 1, &whitespaceSize); + return whitespaceSize.y; +} + +size_t find_first_non_whitespace(const char* items, size_t begin, size_t end) { + size_t pos = begin; + while (pos < end && isspace((unsigned char)items[pos])) { + pos++; + } + return pos; +} + +bool is_number(const char *str) { + if (!str || *str == '\0') + return false; // Empty string is not a number + + // Check if each character is a digit + for (const char *p = str; *p != '\0'; p++) { + if (!isdigit((unsigned char)*p)) + return false; + } + return true; +} + diff --git a/src/utilities.h b/src/utilities.h new file mode 100644 index 00000000..a766b6ba --- /dev/null +++ b/src/utilities.h @@ -0,0 +1,20 @@ +#ifndef UTILITIES_H +#define UTILITIES_H + +#include "editor.h" + +// UTILITY +bool extractLine(Editor *editor, size_t cursor, char *line, size_t max_length); +size_t editor_row_from_pos(const Editor *e, size_t pos); +bool extract_word_under_cursor(Editor *editor, char *word); +bool extract_word_left_of_cursor(Editor *e, char *word, size_t max_word_length); +bool editor_is_line_empty(Editor *e, size_t row); +bool editor_is_line_whitespaced(Editor *e, size_t row); +float measure_whitespace_width(Free_Glyph_Atlas *atlas); +float measure_whitespace_height(Free_Glyph_Atlas *atlas); +size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); +bool is_number(const char *str); + + + +#endif // UTILITIES_H diff --git a/src/yasnippet.c b/src/yasnippet.c index 698c0d1c..70d7d324 100644 --- a/src/yasnippet.c +++ b/src/yasnippet.c @@ -1,9 +1,8 @@ -// YANSIPPET - #include <dirent.h> #include <errno.h> +#include "editor.h" #include "yasnippet.h" - +#include "utilities.h" SnippetArray snippets; @@ -75,93 +74,14 @@ void load_snippets_from_directory() { closedir(dir); } -// ORIGINAL -/* void activate_snippet(Editor *e) { */ -/* char word[MAX_SNIPPET_KEY_LENGTH]; */ -/* size_t original_cursor_position = e->cursor; // Save the original cursor position */ - -/* if (!exctract_word_left_of_cursor(e, word, sizeof(word))) { */ -/* return; // No valid word found, so do nothing. */ -/* } */ - -/* bool snippet_found = false; // Flag to check if a snippet is found */ - -/* for (size_t i = 0; i < snippets.used; i++) { */ -/* if (strcmp(snippets.array[i].key, word) == 0) { */ -/* snippet_found = true; // A matching snippet is found. */ -/* size_t word_length = strlen(word); */ - -/* // Delete the word from the buffer */ -/* memmove(&e->data.items[e->cursor], */ -/* &e->data.items[e->cursor + word_length], */ -/* e->data.count - (e->cursor + word_length)); */ -/* e->data.count -= word_length; */ - -/* // Duplicate snippet content to manipulate */ -/* char *snippet_content = strdup(snippets.array[i].content); */ -/* char *placeholder_pos = strstr(snippet_content, "$0"); */ - -/* // Capture the current indentation level */ -/* size_t cursor_row = editor_row_from_pos(e, e->cursor); */ -/* size_t line_start = e->lines.items[cursor_row].begin; */ -/* size_t current_indent = e->cursor - line_start; */ - -/* // Calculate the position of $0 */ -/* size_t placeholder_line = 0; */ -/* size_t placeholder_col = 0; */ -/* if (placeholder_pos) { */ -/* for (char *p = snippet_content; p < placeholder_pos; ++p) { */ -/* if (*p == '\n') { */ -/* placeholder_line++; */ -/* placeholder_col = 0; */ -/* } else { */ -/* placeholder_col++; */ -/* } */ -/* } */ -/* memmove(placeholder_pos, placeholder_pos + 2, strlen(placeholder_pos + 2) + 1); // Remove $0 */ -/* } */ - -/* // Insert the snippet content line by line with indentation */ -/* char *line = strtok(snippet_content, "\n"); */ -/* while (line != NULL) { */ -/* if (cursor_row != editor_row_from_pos(e, e->cursor)) { */ -/* // Apply indentation for new lines */ -/* for (size_t i = 0; i < current_indent; ++i) { */ -/* editor_insert_char(e, ' '); */ -/* } */ -/* } */ - -/* editor_insert_buf(e, line, strlen(line)); */ -/* line = strtok(NULL, "\n"); */ -/* if (line) { */ -/* editor_insert_char(e, '\n'); */ -/* } */ -/* } */ - -/* // Adjust cursor position to where $0 was */ -/* if (placeholder_pos) { */ -/* e->cursor = e->lines.items[cursor_row + placeholder_line].begin + placeholder_col + (placeholder_line > 0 ? current_indent : 0); */ -/* } */ - -/* free(snippet_content); */ -/* break; // Exit the loop as the snippet is found and processed. */ -/* } */ -/* } */ - -/* if (!snippet_found) { */ -/* e->cursor = original_cursor_position; // Restore cursor to its original position. */ -/* } */ -/* } */ - - - -/* INDENTATION PROBLEM */ +// TODO Indentation problem void activate_snippet(Editor *e) { char word[MAX_SNIPPET_KEY_LENGTH]; - size_t original_cursor_position = e->cursor; // Save the original cursor position + size_t original_cursor_position = e->cursor; if (!extract_word_left_of_cursor(e, word, sizeof(word))) { - return; // No valid word found, so do nothing. + indent(e); + return; } bool snippet_found = false; // Flag to check if a snippet is found @@ -238,95 +158,108 @@ void activate_snippet(Editor *e) { if (!snippet_found) { e->cursor = original_cursor_position; // Restore cursor to its original position. + indent(e); } } -// ONLY CURSOR POSITION PROBLEM + + + +// THIS fixes it but also bring new problems + /* void activate_snippet(Editor *e) { */ /* char word[MAX_SNIPPET_KEY_LENGTH]; */ -/* size_t original_cursor_position = e->cursor; // Save the original cursor position */ +/* size_t original_cursor_position = e->cursor; */ -/* if (!exctract_word_left_of_cursor(e, word, sizeof(word))) { */ -/* return; // No valid word found, so do nothing. */ +/* // Extract the word left of the cursor to identify the snippet to activate */ +/* if (!extract_word_left_of_cursor(e, word, sizeof(word))) { */ +/* indent(e); // If no word is found, simply indent the line */ +/* return; */ /* } */ -/* bool snippet_found = false; // Flag to check if a snippet is found */ +/* bool snippet_found = false; */ /* for (size_t i = 0; i < snippets.used; i++) { */ /* if (strcmp(snippets.array[i].key, word) == 0) { */ -/* snippet_found = true; // A matching snippet is found. */ -/* size_t word_length = strlen(word); */ +/* snippet_found = true; */ -/* // Delete the word from the buffer */ +/* // Delete the word triggering the snippet */ +/* size_t word_length = strlen(word); */ /* memmove(&e->data.items[e->cursor], */ /* &e->data.items[e->cursor + word_length], */ /* e->data.count - (e->cursor + word_length)); */ /* e->data.count -= word_length; */ -/* // Duplicate snippet content to manipulate */ /* char *snippet_content = strdup(snippets.array[i].content); */ - -/* // Find and process the placeholder position */ /* char *placeholder_pos = strstr(snippet_content, "$0"); */ -/* size_t placeholder_offset = placeholder_pos ? (placeholder_pos - snippet_content) : 0; */ - -/* if (placeholder_pos) { */ -/* // Remove the placeholder from the content */ -/* memmove(placeholder_pos, placeholder_pos + 2, strlen(placeholder_pos + 2) + 1); */ -/* } */ +/* // Capture the initial indentation level */ /* size_t cursor_row = editor_row_from_pos(e, e->cursor); */ /* size_t line_start = e->lines.items[cursor_row].begin; */ /* size_t current_indent = e->cursor - line_start; */ -/* // Process each line of the snippet */ -/* char *line_start_ptr = snippet_content; */ -/* char *line_end_ptr; */ -/* bool is_first_line = true; */ - -/* while ((line_end_ptr = strchr(line_start_ptr, '\n')) != NULL || *line_start_ptr) { */ -/* if (!is_first_line) { */ -/* editor_insert_char(e, '\n'); // Insert newline for all but the first line */ -/* } */ - -/* size_t line_length = line_end_ptr ? (line_end_ptr - line_start_ptr) : strlen(line_start_ptr); */ - -/* if (line_length > 0) { */ -/* // Apply indentation only if the line is not the first */ -/* if (!is_first_line) { */ -/* for (size_t i = 0; i < current_indent; ++i) { */ -/* editor_insert_char(e, ' '); */ -/* } */ +/* // Process placeholder and snippet content */ +/* size_t placeholder_line = 0, placeholder_col = 0; */ +/* if (placeholder_pos) { */ +/* for (char *p = snippet_content; p < placeholder_pos; ++p) { */ +/* if (*p == '\n') { */ +/* placeholder_line++; */ +/* placeholder_col = 0; */ +/* } else { */ +/* placeholder_col++; */ /* } */ -/* editor_insert_buf(e, line_start_ptr, line_length); */ /* } */ +/* // Remove $0 from the content */ +/* memmove(placeholder_pos, placeholder_pos + 2, strlen(placeholder_pos + 2) + 1); */ +/* } */ +/* // Insert the snippet content */ +/* char *line_start_ptr = snippet_content; */ +/* char *line_end_ptr; */ +/* while ((line_end_ptr = strchr(line_start_ptr, '\n')) != NULL || *line_start_ptr) { */ /* if (line_end_ptr) { */ -/* line_start_ptr = line_end_ptr + 1; // Move to the next line */ +/* editor_insert_buf(e, line_start_ptr, line_end_ptr - line_start_ptr); */ +/* editor_insert_char(e, '\n'); */ +/* line_start_ptr = line_end_ptr + 1; */ /* } else { */ -/* break; // Last line of the snippet */ +/* editor_insert_buf(e, line_start_ptr, strlen(line_start_ptr)); */ +/* break; */ /* } */ -/* is_first_line = false; */ +/* // Apply initial indentation to new lines */ +/* if (*line_start_ptr && cursor_row != editor_row_from_pos(e, e->cursor)) { */ +/* for (size_t i = 0; i < current_indent; ++i) { */ +/* editor_insert_char(e, ' '); */ +/* } */ +/* } */ /* } */ +/* // Adjust the cursor to the position of $0, considering initial indentation */ /* if (placeholder_pos) { */ -/* e->cursor = original_cursor_position + placeholder_offset; */ -/* } else { */ -/* // Move cursor to the end if no placeholder is found */ -/* e->cursor = original_cursor_position + (line_start_ptr - snippet_content); */ +/* // Calculate new cursor position */ +/* e->cursor = original_cursor_position - word_length; */ +/* for (size_t i = 0; i <= placeholder_line && i < e->lines.count; ++i) { */ +/* e->cursor += (i < placeholder_line ? e->lines.items[cursor_row + i].end - e->lines.items[cursor_row + i].begin + 1 : placeholder_col); */ +/* // Apply initial indentation if we're past the first line of the snippet */ +/* if (i > 0) { */ +/* e->cursor += current_indent; */ +/* } */ +/* } */ /* } */ /* free(snippet_content); */ -/* break; // Exit the loop as the snippet is found and processed. */ +/* break; // Found the snippet, no need to continue searching */ /* } */ /* } */ +/* // If the snippet wasn't found, restore the cursor position and indent */ /* if (!snippet_found) { */ -/* e->cursor = original_cursor_position; // Restore cursor to its original position. */ +/* e->cursor = original_cursor_position; */ +/* indent(e); */ /* } */ /* } */ + diff --git a/src/yasnippet.h b/src/yasnippet.h index 72c3b0a2..7193f424 100644 --- a/src/yasnippet.h +++ b/src/yasnippet.h @@ -3,7 +3,6 @@ #include "editor.h" -// YASNIPPET #define MAX_SNIPPET_KEY_LENGTH 50 #define MAX_SNIPPET_CONTENT_LENGTH 1024 @@ -26,6 +25,4 @@ void free_snippet_array(SnippetArray *a); void load_snippets_from_directory(); void activate_snippet(Editor *e); - - #endif // YASNIPPET_H_ diff --git a/test.json b/test.json deleted file mode 100644 index 05f9c374..00000000 --- a/test.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "first_name": "John", - "last_name": "Smith", - "is_alive": true, - "age": 27, - "address": { - "street_address": "21 2nd Street", - "city": "New York", - "state": "NY", - "postal_code": "10021-3100" - }, - "phone_numbers": [ - { - "type": "home", - "number": "212 555-1234" - }, - { - "type": "office", - "number": "646 555-4567" - } - ], - "children": [ - "Catherine", - "Thomas", - "Trevor" - ], - "spouse": null -} From 5636f2fafaa51626b50823d76ddaaf01f8eff16f Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Sat, 4 May 2024 23:40:57 +0200 Subject: [PATCH 66/74] Emacs Keybinds --- src/M-x.c | 3 -- src/common.c | 106 +++++++++++++++++++++++++++++++-------- src/editor.c | 12 ++++- src/editor.h | 4 +- src/emacs.c | 127 +++++++++++++++++++++++++++++++++++------------ src/emacs.h | 8 +++ src/evil.h | 1 - src/free_glyph.h | 2 +- src/main.c | 96 ++++++++++++++++++++++++++++++----- src/render.c | 4 ++ src/utilities.c | 15 ++++++ src/utilities.h | 1 + 12 files changed, 307 insertions(+), 72 deletions(-) diff --git a/src/M-x.c b/src/M-x.c index baee6d67..16d5dfcb 100644 --- a/src/M-x.c +++ b/src/M-x.c @@ -108,9 +108,6 @@ uint64_t simple_string_hash(const void *item, uint64_t seed0, uint64_t seed1) { } - - - // HISTORY diff --git a/src/common.c b/src/common.c index 3575c3d9..5875a908 100644 --- a/src/common.c +++ b/src/common.c @@ -2,6 +2,7 @@ #include <stdlib.h> #include <string.h> #include <errno.h> +#include "editor.h" #ifdef _WIN32 # define MINIRENT_IMPLEMENTATION @@ -101,33 +102,96 @@ Errno create_new_file_here(const char *file_name) return result; } -Errno read_entire_file(const char *file_path, String_Builder *sb) -{ - Errno result = 0; - FILE *f = NULL; - - f = fopen(file_path, "r"); - if (f == NULL) return_defer(errno); - - size_t size; - Errno err = file_size(f, &size); - if (err != 0) return_defer(err); - if (sb->capacity < size) { - sb->capacity = size; - sb->items = realloc(sb->items, sb->capacity*sizeof(*sb->items)); - assert(sb->items != NULL && "Buy more RAM lol"); +/* Errno read_entire_file(const char *file_path, String_Builder *sb) */ +/* { */ +/* Errno result = 0; */ +/* FILE *f = NULL; */ + +/* f = fopen(file_path, "r"); */ +/* if (f == NULL) return_defer(errno); */ + +/* size_t size; */ +/* Errno err = file_size(f, &size); */ +/* if (err != 0) return_defer(err); */ + +/* if (sb->capacity < size) { */ +/* sb->capacity = size; */ +/* sb->items = realloc(sb->items, sb->capacity*sizeof(*sb->items)); */ +/* assert(sb->items != NULL && "Buy more RAM lol"); */ +/* } */ + +/* fread(sb->items, size, 1, f); */ +/* if (ferror(f)) return_defer(errno); */ +/* sb->count = size; */ + +/* defer: */ +/* if (f) fclose(f); */ +/* return result; */ +/* } */ + + +// Convert tabs into 4 spaces +// and ignore carriage returns +/* Errno read_entire_file(const char *file_path, String_Builder *sb) { */ +/* FILE *f = fopen(file_path, "r"); */ +/* if (f == NULL) */ +/* return 1; */ + +/* int c; */ +/* while ((c = fgetc(f)) != EOF && c != '\0') { */ +/* if (c == '\t') { */ +/* da_append(sb, ' '); */ +/* da_append(sb, ' '); */ +/* da_append(sb, ' '); */ +/* da_append(sb, ' '); */ +/* } else if (c == '\r') { */ +/* continue; */ +/* } else { */ +/* da_append(sb, (char) c); */ +/* } */ +/* } */ + +/* fclose(f); */ +/* return 0; */ +/* } */ + + +// Convert tabs into 4 spaces +// and ignore carriage returns +Errno read_entire_file(const char *file_path, String_Builder *sb) { + FILE *f = fopen(file_path, "r+"); + if (f == NULL) { + if (errno == EACCES) { + // Retry opening in read-only mode + f = fopen(file_path, "r"); + if (f == NULL) return 1; // If opening still fails, return error + readonly = true; + } else { + return 1; // Other errors, return error + } } - fread(sb->items, size, 1, f); - if (ferror(f)) return_defer(errno); - sb->count = size; + int c; + while ((c = fgetc(f)) != EOF && c != '\0') { + if (c == '\t') { + for (int i = 0; i < indentation; i++) { + da_append(sb, ' '); + } + } else if (c == '\r') { + continue; // Ignore carriage returns + } else { + da_append(sb, (char)c); + } + } -defer: - if (f) fclose(f); - return result; + fclose(f); + return 0; } + + + bool is_hex_digit(char c) { return (c >= '0' && c <= '9') || (c >= 'a' && c <= 'f') || (c >= 'A' && c <= 'F'); } diff --git a/src/editor.c b/src/editor.c index 84622b39..82100320 100644 --- a/src/editor.c +++ b/src/editor.c @@ -22,6 +22,8 @@ // TODO attach documentation to each variable // and make an interface to modify variables at runtime à la emacs +// TODO show lock logo in the modeline when the file is in read only mode + bool quit = false; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; @@ -71,6 +73,10 @@ float fillColumnThickness = 5.0; // if 0, it default to the width of one charact bool smartFillColumn = true; bool showFillColumn = true; +bool readonly = false; // TODO actually use this, +//like don't save if its readonly and show a lock in the modeline + + bool ctrl_x_pressed = false; @@ -105,7 +111,6 @@ void move_camera(Simple_Renderer *sr, const char* direction, float amount) { } } - // TODO if we are on a multiple of indentation delete the correct number of indentations void editor_backspace(Editor *e) { // If in search mode, reduce the search query length @@ -348,6 +353,7 @@ Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { } printf("[find_file] File loaded and cursor set.\n"); + printf("[find_file] Read only: %d\n", readonly); return 0; } @@ -848,6 +854,8 @@ void editor_update_anchor(Editor *editor) { } + +// TODO refactor and implement drag region (selection) void editor_drag_line_down(Editor *editor) { size_t row = editor_cursor_row(editor); if (row >= editor->lines.count - 1) return; // Can't move the last line down @@ -941,6 +949,8 @@ void editor_drag_line_up(Editor *editor) { } + + void add_one_indentation_here(Editor *editor) { for (size_t i = 0; i < indentation; ++i) { editor_insert_char(editor, ' '); diff --git a/src/editor.h b/src/editor.h index bc2a9a2a..ea03babd 100644 --- a/src/editor.h +++ b/src/editor.h @@ -54,6 +54,8 @@ extern float fillColumnThickness; extern bool smartFillColumn; extern bool showFillColumn; +extern bool readonly; + // Emacs Style KeyChords extern bool ctrl_x_pressed; @@ -81,7 +83,7 @@ typedef struct { -//TODO minibuffer, replace, replace char, helix +//TODO replace, replace char typedef enum { EMACS, HELIX, diff --git a/src/emacs.c b/src/emacs.c index 91b892ec..5d63ef64 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -1,43 +1,53 @@ #include "emacs.h" +#include "editor.h" #include "utilities.h" +// Features i borrowed from emacs -/* void emacs_ungry_delete_backwards(Editor *e) { */ -/* if (e->searching || e->cursor == 0) return; */ +void emacs_mwim_beginning(Editor *e) { + if (e->cursor >= e->data.count) return; + size_t row = editor_cursor_row(e); + size_t line_begin = e->lines.items[row].begin; + size_t first_non_whitespace = find_first_non_whitespace(e->data.items, line_begin, e->lines.items[row].end); -/* size_t original_cursor = e->cursor; */ -/* size_t start_pos = e->cursor; */ -/* size_t last_newline_pos = 0; */ -/* bool found_non_newline_whitespace = false; */ -/* int newline_count = 0; */ + if (e->cursor != first_non_whitespace) { + e->cursor = first_non_whitespace; + } else { + e->cursor = line_begin; + } +} -/* // Move left to the start of contiguous whitespace or to the start of the file */ -/* while (start_pos > 0 && isspace(e->data.items[start_pos - 1])) { */ -/* if (e->data.items[start_pos - 1] == '\n') { */ -/* newline_count++; */ -/* last_newline_pos = start_pos - 1; */ -/* } else { */ -/* found_non_newline_whitespace = true; */ -/* } */ -/* start_pos--; */ -/* } */ +void emacs_mwim_end(Editor *e) { + if (e->cursor >= e->data.count) return; -/* // If spanning multiple lines, delete but preserve one newline character. */ -/* if (newline_count > 1 || (newline_count == 1 && found_non_newline_whitespace)) { */ -/* start_pos = last_newline_pos + 1; */ -/* } */ + size_t row = editor_cursor_row(e); + size_t line_end = e->lines.items[row].end; + size_t last_non_whitespace = find_last_non_whitespace(e->data.items, e->lines.items[row].begin, line_end); + + if (e->cursor != last_non_whitespace) { + e->cursor = last_non_whitespace; + } else { + e->cursor = line_end; + } +} -/* size_t length_to_delete = original_cursor - start_pos; */ +void emacs_delete_char(Editor *e) { + memmove( + &e->data.items[e->cursor], + &e->data.items[e->cursor + 1], + (e->data.count - e->cursor - 1) * sizeof(e->data.items[0]) + ); + e->data.count -= 1; + editor_retokenize(e); +} -/* if (length_to_delete > 0) { */ -/* // Delete */ -/* memmove(&e->data.items[start_pos], &e->data.items[original_cursor], e->data.count - original_cursor); */ -/* e->data.count -= length_to_delete; */ -/* e->cursor = start_pos; */ -/* editor_retokenize(e); */ -/* } */ -/* } */ +// TODO this is so bad +void emacs_open_line(Editor *e) { + editor_insert_char(e, '\n'); + editor_move_line_up(e); + e->last_stroke = SDL_GetTicks(); +} void emacs_ungry_delete_backwards(Editor *e) { if (e->searching || e->cursor == 0) return; @@ -83,8 +93,6 @@ void emacs_ungry_delete_backwards(Editor *e) { } - - // TODO it delete the line if it is on whitespaces even if there is text void emacs_kill_line(Editor *e) { if (e->searching || e->cursor >= e->data.count) return; @@ -171,6 +179,61 @@ void emacs_backward_kill_word(Editor *e) { editor_retokenize(e); } + +int killed_word_times = 0; + +void emacs_kill_word(Editor *e) { + editor_stop_search(e); + + size_t start_pos = e->cursor; + size_t end_pos = e->cursor; + + while (end_pos < e->data.count && !isalnum(e->data.items[end_pos])) { + end_pos++; + } + + while (end_pos < e->data.count && isalnum(e->data.items[end_pos])) { + end_pos++; + if (isupper(e->data.items[end_pos]) && islower(e->data.items[end_pos - 1])) { + break; + } + } + + if (start_pos < end_pos) { + size_t length = end_pos - start_pos; + + if (killed_word_times == 0) { + e->clipboard.count = 0; + } else { + // Remove the existing null terminator before appending new content + if (e->clipboard.count > 0 && e->clipboard.items[e->clipboard.count - 1] == '\0') { + e->clipboard.count--; // Decrement to remove the null terminator + } + } + + sb_append_buf(&e->clipboard, &e->data.items[start_pos], length); + sb_append_null(&e->clipboard); // Reapply the null terminator after appending + + // Update the SDL clipboard content + if (SDL_SetClipboardText(e->clipboard.items) < 0) { + fprintf(stderr, "ERROR: SDL ERROR: %s\n", SDL_GetError()); + } + + // Perform the deletion + memmove(&e->data.items[start_pos], &e->data.items[end_pos], e->data.count - end_pos); + e->data.count -= length; + e->cursor = start_pos; + + killed_word_times++; + } else { + killed_word_times = 0; + } + + editor_retokenize(e); +} + + + void emacs_back_to_indentation(Editor *e) { if (e->cursor >= e->data.count) return; size_t row = editor_cursor_row(e); diff --git a/src/emacs.h b/src/emacs.h index be22ff84..4507f829 100644 --- a/src/emacs.h +++ b/src/emacs.h @@ -3,10 +3,18 @@ #include "editor.h" +extern int killed_word_times; +void emacs_kill_word(Editor *e); + void emacs_kill_line(Editor *e); void emacs_backward_kill_word(Editor *e); void emacs_back_to_indentation(Editor *e); void emacs_mark_paragraph(Editor *e); void emacs_ungry_delete_backwards(Editor *e); +void emacs_open_line(Editor *e); +void emacs_mwim_beginning(Editor *e); +void emacs_mwim_end(Editor *e); +void emacs_delete_char(Editor *e); + #endif // EMACS_H diff --git a/src/evil.h b/src/evil.h index e3e63f99..d0fddd48 100644 --- a/src/evil.h +++ b/src/evil.h @@ -7,7 +7,6 @@ void evil_open_below(Editor *editor); void evil_open_above(Editor *editor); void evil_jump_item(Editor *editor); -void evil_jump_item(Editor *editor); void evil_join(Editor *e); void evil_yank_line(Editor *editor); void evil_paste_after(Editor *editor); diff --git a/src/free_glyph.h b/src/free_glyph.h index 24631e86..cd3aa175 100644 --- a/src/free_glyph.h +++ b/src/free_glyph.h @@ -10,7 +10,7 @@ #define GL_GLEXT_PROTOTYPES #include <SDL2/SDL_opengl.h> -#include <ft2build.h> +#include "ft2build.h" #include FT_FREETYPE_H #include "simple_renderer.h" diff --git a/src/main.c b/src/main.c index c3afeb2e..2efac611 100644 --- a/src/main.c +++ b/src/main.c @@ -558,9 +558,7 @@ int main(int argc, char **argv) } else { switch (current_mode) { case EMACS: - // TODO add all keybinds switch (event.key.keysym.sym) { - case SDLK_z: { if (SDL_GetModState() & KMOD_CTRL) { @@ -570,7 +568,68 @@ int main(int argc, char **argv) } break; - + case SDLK_y: { + if (SDL_GetModState() & KMOD_CTRL) { + editor_clipboard_paste(&editor); + killed_word_times = 0; + + editor.last_stroke = SDL_GetTicks(); + } + } + break; + + + case SDLK_d: { + if (SDL_GetModState() & KMOD_CTRL) { + if (SDL_GetModState() & KMOD_SHIFT) { + emacs_kill_word(&editor); + } else { + emacs_delete_char(&editor); + } + editor.last_stroke = SDL_GetTicks(); + } + } + break; + + case SDLK_e: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_mwim_end(&editor); + editor.last_stroke = SDL_GetTicks(); + + } + } + break; + + case SDLK_a: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_mwim_beginning(&editor); + editor.last_stroke = SDL_GetTicks(); + } + } + break; + + case SDLK_j: { + if (SDL_GetModState() & KMOD_CTRL) { + editor_enter(&editor); + } + } + break; + + case SDLK_k: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_kill_line(&editor); + } + } + break; + + case SDLK_o: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_open_line(&editor); + + } + } + break; + case SDLK_BACKSPACE: if (event.key.keysym.mod & KMOD_CTRL) { emacs_backward_kill_word(&editor); @@ -595,23 +654,35 @@ int main(int argc, char **argv) } break; - case SDLK_r: - if (event.key.keysym.mod & KMOD_CTRL) { - file_browser = true; - } - break; - case SDLK_n: { if (SDL_GetModState() & KMOD_CTRL) { editor_move_line_down(&editor); - editor.last_stroke = SDL_GetTicks(); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_move_paragraph_down(&editor); + + // Consume the next SDL_TEXTINPUT event for 'n' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'n') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } } + editor.last_stroke = SDL_GetTicks(); + } break; case SDLK_p: if (SDL_GetModState() & KMOD_CTRL){ - editor_move_line_up(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_move_paragraph_up(&editor); + + // Consume the next SDL_TEXTINPUT event for 'p' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'p') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } } editor.last_stroke = SDL_GetTicks(); break; @@ -936,8 +1007,9 @@ int main(int argc, char **argv) case SDLK_f: if (SDL_GetModState() & KMOD_CTRL) { - followCursor = !followCursor; + /* followCursor = !followCursor; */ /* editor_move_char_right(&editor); */ + showFillColumn = !showFillColumn; } break; diff --git a/src/render.c b/src/render.c index da4d3ea0..a14e1f51 100644 --- a/src/render.c +++ b/src/render.c @@ -28,6 +28,9 @@ Vec4f blend_color(Vec4f color1, Vec4f color2, float blendFactor) { void render_fill_column(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { + + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + float len = calculate_max_line_length(editor); if (smartFillColumn && len < fillColumn + 1 || showFillColumn == false) { return; @@ -964,6 +967,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color = CURRENT_THEME.multiplication; break; + // TODO this should happen at lexing time not at render time case TOKEN_COMMENT: { color = CURRENT_THEME.comment; diff --git a/src/utilities.c b/src/utilities.c index 0ddfb70e..04080251 100644 --- a/src/utilities.c +++ b/src/utilities.c @@ -126,6 +126,21 @@ size_t find_first_non_whitespace(const char* items, size_t begin, size_t end) { return pos; } +size_t find_last_non_whitespace(const char* items, size_t begin, size_t end) { + if (end > begin) { + size_t pos = end; + do { + pos--; + if (!isspace((unsigned char)items[pos])) { + return pos + 1; // return the position right after the non-whitespace char + } + } while (pos > begin); + } + return begin; // If no non-whitespace found, return the beginning (handles the empty line case too) +} + + + bool is_number(const char *str) { if (!str || *str == '\0') return false; // Empty string is not a number diff --git a/src/utilities.h b/src/utilities.h index a766b6ba..f96b56de 100644 --- a/src/utilities.h +++ b/src/utilities.h @@ -14,6 +14,7 @@ float measure_whitespace_width(Free_Glyph_Atlas *atlas); float measure_whitespace_height(Free_Glyph_Atlas *atlas); size_t find_first_non_whitespace(const char* items, size_t begin, size_t end); bool is_number(const char *str); +size_t find_last_non_whitespace(const char* items, size_t begin, size_t end); From f224198fa8e139fb85238d3072e5dd4573eead54 Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Sun, 5 May 2024 02:27:37 +0200 Subject: [PATCH 67/74] doom-material-dark --- .../ded/fonts/FantasqueSansMNerdFont-Bold.ttf | Bin 0 -> 2278204 bytes .../fonts/FiraCodeNerdFontMono-Regular.ttf | Bin 2148116 -> 0 bytes src/helix.c | 2 + src/render.c | 4 +- src/theme.c | 86 +++++++++++++++++- src/theme.h | 2 + 6 files changed, 91 insertions(+), 3 deletions(-) create mode 100644 config/ded/fonts/FantasqueSansMNerdFont-Bold.ttf delete mode 100644 config/ded/fonts/FiraCodeNerdFontMono-Regular.ttf diff --git a/config/ded/fonts/FantasqueSansMNerdFont-Bold.ttf b/config/ded/fonts/FantasqueSansMNerdFont-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f4ead85d91f70447f3b5700eb4ffa0ffdc0e9e80 GIT binary patch literal 2278204 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%0Dj(+!?YO zw_7F`N$=(+e}-$OJn?#EJAW6@lN=hcBa^;wQijMyXmLEEawa&mFo8g$N02IzS?#!9 zj6~qlAgU3rzYgA6s3Z<MdSx4@EHk&d+$nfX7wSf@FOaU;xn~7o7F2e)x#7o}{88zi zXNmKj`>W?&eZISMyb$wG_Xo&7q=SXJSmtE~N2Rx(apY^%(m!8#-k6&qn76)?Z`66S z%|%58q@GbMH>*nu&XdLbzarB*-u>g8JtK+KVjtDvbrfi{54|vCg72bWs(ZAQ%1wxG zO6@ijXQX=a4^T!5;3;JLP&5P+oy;SEDjEz4f&!SMj4^VU4l86MkaV;mpZQsS{oz6B zuEE392lx^QiBw6lDQS3detmuZ;O(~~hWR(rC&IJ*u&kd`nHDH4<<k(nVhTvfRRB~n z9eTJZuOgY~6wOH$73PppB9jPxxfR4eJpO81*C?$tMOOwHtZJgKJTIkXo^KR&=kI3L zAo-iuU?wjw_eg|{;xo7o*m0zZ(oNhWT<z${@GR-6kSUtY50-VSj%%ilxZ>BBH5@h= z-ySYxZ|P;7=Qa~XHS0KkT*q-=t8Hv-_+C2xN`DX)0uOm33V+nGxN3R$q#1gt!#f=f zC}Kk&7Nu8!kV$nmL~=@#FHp%#Q5)hA)~WT1cD*vH6IM`M5ZelW4hA!OC#E)&`_@i- z^N-WkZk|N$TX^{PNwZV0jVLM_QJ8vt(QW%C4?2CmjJ^HLC~1N*e?sHS@Ah7{ak7*l zZ^3qMJ3V*Fg2Y|j3taW}o<*JHK+o30OHK?9FG5c7q9*3hp#`T_&ffaiWpf7;ca@B& zjA$bf<N9uCpm&I=E})yxc1r6;8uzDoC*^Mb7%+}oq6s<VBr1f>1PlsH;<AhLaJEf2 z`0cm8_uj4Nzoyd{Np<E2;|5a)vdYJ;V19LJ4yF9r_YR%^=Fq$E9^zDo-b?jm)-Wr^ zm1m`HTrsZh(#!`al(Do+xcxL-U*N}>JxQQuLaG61fzitj6L2s@JB+A2N<y&5M}(aa zG=LwL$b%tX0+5qnNz#ISWlg~RzoGoxM~2MQzg+5OL!{(%96hB&rIDWVX}1V|qte)9 z6m>@bdY@HX&1iG&`C9j4x6)wo40@gF_&{+|ZE*D3wH7AkP;Joo3mz}XH2Bv2uT}yn z6m%R65t~iLxukdWqQw!tF>0`avic=sHI)vyYQL^AWe~^ekC(4^7&B&O=<USiCc$P1 zwrTr&`u)*9t4-0R=%+FGsJ?=r<y6H<XC;KVOz5)#e+CTJxCwn39w3!nWMg^|%W$Zs z5(TzO2jEL2F<6A<4SD%-(G4iRZTZm>uSh8dp58rf-0r6b*h_P%LlIwIz;ESD%dS<q zoY|fbdEXk!%x@0_Su$E+8MD>r&(6u(eATAy4THfQ4(|7Y+f!alCOWe798PCOPOK#3 z-?P%$A02%leMYuQYq#aJrCufT{C2BW`q-e;ha)3B9&?~BFW;G=)$HB3>tMu<_&Svp z!BCFF;fzHcjsi5N?`JQyfxY6dU@Ov~1yHX5o<*MzZ4ml0TY?%WT46Q{2VyLrjO7DS zL)}W#6fi6#6cG|NadU>x3^M<mx4J}^uhn<IdzvgGs)OVZtVh?LmOlS`AGhITbod%F zIC(~Odwxc)XZb+ep1H%jO5udGKXvO(Ovc~H?mzjsto%c<s$$N62sX^?UOX*b3$xR1 z(r`oBu0;!7Wr^miyKkJn*rd_>F1$%5|N5NnU&KYRQ0Yl!tB?&Tm*(s4R;<E3ppH`v zu{06<elBpa2ofL-P7H=%C`JjL5IoVLq03@pGU0*>j8KW?(9f_90IGx}3&*@#1_(63 zBZ@a;Jf{i;st0P4J<i!kX?y!Xdz*9%DedSOXlrAO2RhmZI+$O~m@(nzz0$6ic3eJT z*2G6{TwDyJeYm>btvPW*<F2m`8?46S#Wy}Oad!8n-ONj5^}d^jcU(opS8tm%>9$v; z@1(y==P*BaYUy%t83uaCR<)7C_b`8JpV$854{_Xh^vI1nX3v=C9AB0f6KrPQW3n3} zV+ID}&z}9~v+==!F%g5!<l)UWA(odI=a@HR_OPOS-marRKe}sPIi2a9^;p|oFS9yU zomWuangclo&-PM(6#Jk3k%~m(c8CWwE+s-V0-Axd0*LSbYsd1Cv;fjiZgUV}D|cmG zk%wq317sZOlKz<2<W;!{ESCR^HSwH*yiG{nh^`>>w=yP~8bhv>Rundk^`*YVbs3@G z^ugx36Fqv`Q~0M@fG*{ofHz<!23&`jnRH<6O*+_%zassmE`kt@0VXFc^os?O$tJN4 zTn8;Q`YO+_{}TkBiebesu6$2Au(^5Pp75H|ccw=cuGUX>zB^vmw`>&CeRjDx=Yh*? zi?`nsxcdGHPbA4%>8~^1ee~XCFHQW{AEjS46CDwxTe;H54?b*LzI)}0p5?utU)gpw zQMUHComyVIVsm_ZQE}FRNN@1T-0IRhD^u4xrCj3sYw}OSM|5N;#2o8=e8P(z(%t#Y zz7^8B0osn~xcvqKudC4_?1*86AS>`d6fGu}QrT&hwG|LbjY%k|?gqsOpamMTAX54} z!1@>s9!H5u7%6<btV{_PaaeXx`s(es>xJqKH$A!U=5MdMZkWHmy56d;*jN%M_GD;m zf^Yqp*ntOBbyxr5jeGARrb8<$Ju4b@aYwd4&zaeu!wQqk9<$lQZ5e)&QS~$5NpbR} z<&TAL@3{3d&l|Q!i0!sR#QN}eiE6XJ=JaPe^ZeP4xNgJ>Pt}0N{e0xi4flL)ct!o7 z^x-|fIuaYR&L`M38J^-m$;Jw`HSDrjTnJGj*VhY!zz(Ra7ep@rm^oO>MJ+y}h4mHj zKBBP2#}W+bZ+YVNH($ALQ^t4i&wOIfBx84Y@<$W_Rb2Svp^!A>yYbmi-k#4*XU(ee zsp}3s_=knczN?-*^&0b(ZpzIsNasL7xbu;{#PR0SL%9ctU2Z39#35lZWF{KLCT+>G z>UrQ6K!#{<g1Db1aDCX59vAb^rU~})?w$9Y-BYrxWY5|Ac6OKBCp0l<o!%ACUA?@e z$V!AoTIr-`{g~cUpMLoHD<_(q&ZZNueE#95r+UY%_mFz6^wl|M`OQa9op}CeXZpS` z$}twmF$x$5F|ZXdMht*(@x(iYiySe^93!J$RIE=u{`jXmzB#^N{v%)Se3Zl=*_`Sn z_D^^1`c(QD)4i85od*^@c8-|OJ-X;I>Gb1o9lz|VFNo{&tFHQ7`iT0FFc-d+J`>*N zzeDtv4uv8aWn5rkXdz*kA%3JyHt1mU7y=^<v<E;0ER7}>qq@I{FgLY4kjMfSeJ;R8 z^6si-=6ys!@Pv_oM-EQA`k`=_G19ISt#dGf{6>03`V;fX&4VZIe2-<<<?fu;N~-I9 z8h=f_^Y9ff7^9u7<EwKBvpRQs-$($V<uRi+);)e}`f#5vGhVm#L8)HqxYb{wwHKNU z%A9;n(_!}1or_rZf&JHYxQl(&xv>&G;f;Br`-V88brg+Q*m$7bUFfRF3FMnGQpoo# zNsEOKgv%jmbmJY%8l4^uNJgQc%t3IcfqCW5Fbq}i`*K;!qXo2=gnmRfj03EaAu2#y zSR?C&5GRKp)-c-PGv<&=IsCMS)%`*j&@j`X36oV?MlBuF1hqsP)JR`w7~S76!yNfN zcKC%hq)BbYI%$uN(UA3Yd+hi(Y~*KN)CD!Eara`Lt&VufU+&hp)v0AVMi5w|+N-`w zO*E<F8ZZX3)E*6K#vDor!Kw%8s#&B*<5BOyEOQywNgrZ`be&q>>Mb0~$=pKMU4IYC znVnuI?T0QbM_;@GJ+T)O1;zN&LvaZYFcJ?yw&R%)mkQ`pyhKTv>d2D--IqR1YLb&n zE{b77!JgB5_M9d&q<=jnb!ea6w(gf1ACc`-RuK<FG*3Q7G{bp&2i)#~(G7n8fl(U* zt6K)xS0354`H@F9Z+e6?pT73m)7N|jlD%|t==gz^edNJI<!ZA3DWa6VKL7PAdxad| zfl;ICeMQx+?E9OJAKx@|{5a}&N_q}51^N)h-|((kA5RrsNDYu70Uybzl5ES83n>_j ztEW@id0Ksl+fECxLkRT01h$uD%S2fMqB>hz1_3>Wp;A5)nn$|L&~BHtQK??um+pc# zf>X(zGm=f9mzHG}S}KEL@*Y(4rc1O|$+l25HatTpUbTS3L_9_ci{a2ptHbEiX@HNI z8NC*9rTsuMEKXyrSf@7VMI#s780-rOCLPiGEWAd?s?;Vf$T2)DPyjuQPP}u@xIk;t z2uj|n(y`zLgw#rwgFwp)ET^A2>zbPOMG4MZt=(dDM$I<X%(GgJ#$YpM;sEM)x0Pjh zf%iI4_v|W_iU&$<AZ9HOhdGfqwuf>?wh!)~!xc`Qy}BScS^3wgRf{T%SXH5*;()Rk za1!3A*7_YPPgRVtN<pnv>o^@df_QV90~s2nQfJBF+>DxW=o!BsR06Y7;8cQ*%eg;y zRi!3gNJ7_im}13x&&`>F3BIZ-l}@8k3q-BLW3e(ywKmrZyonS1ywb6QDOsvDSQ(Sk zpWR`?c8tbQmQOThi!@v}=17@^QF9z@qr|IL!9t`~DphJB%(E(k$ym1BxyBoC3xZvb zoZ*+>>dCjvuZxeZ^Z9}T=W#MRE%64NUg4QyP?1E!Ov}#E@nBS_Ic3OBxLFN6%W`0M z#=$^zQ%;#QC@utsLFID<s?iYMz$D_1O#HwvEfc~?G9PFhydvT88e`E5B_YSaEDotg zOqymNeqTD(;*T~f#}SQm&7b>R<2~cajK5S#n(9;sX-N%`-%1PFFE^31spmR=^BAkS zpByXdHr=?Yz!NIVW-nj1>|u1oXK$QYWR%!j=I>i3keI#n=PwiUw6@oB$fvF3n8Y8D z-XK@q+zNTl`DbZUq~SpJEMrEIZyb%JrU3rTwLnq}f-NvfF<Y@nu?~EZ8x=oSJS|&_ zkp~L`Ig~5V*-K+Sl4*6&nxBXO&P4~o2@Y^^fFRJ|dkF~j7ei=6BSWj9bP;r;lwyDx zpb}|whl5)6q0&>*CUS*Q`~m6Uepnd$zOXbG`~lb$tq}O-1At$WlsA>nMB`@J5bN&; zYiZIl6d^&G1OAWUGANg}u(I_{>8iKa4Z7m*kQHwpJ#g&XiTB-f><zNwoppn8*E`bH zZ@l33#>|fFcy?K~FIi+am>up|%w3Y}DOQs!N^45uHKoBsV0p&YSV>8&G{^3A+H;<E zUmlCcW2GdQF6N$4noC`(T2-NYqx%o8qn<)leP5rdK~>}#azCeXsCbKr6b(H6XZ-UY zo@XS>o*le)McJLU>z0?@F>T=C0o2#!&wU*UngT9!t~Z?TLCz1g*5tApt(mS+v0bCM z@K{l0Wzl0lcl-VBxu569v$M-)T;tAj{o@DoufC+rcfX`knR4CkSM%I?W>rUCqr6BQ z9A|Z!%}xvcWcg?im{J;pQ&3~0%>Mxwnj%Tx14s~EDWG<qPFeqd!1cR$OgCD^PmT#N z>U%yO`QdSy9GUAk^#8{7L*Sr`dF&`=NV7S~vCW<2BK<DSqogAjJxd7)Z>X{)L9HPe z-O!O-TyY8U3S3;igIJJ=;4r?HJMNG^leQyS!*=O2_C1-wc-yP{TZzKxZS62#P$(Dd zua`@u*VE5IAuoZs{y%oV1Bd1I%Uhiv+P`3+ooR`*2fUHgFZaL7u9C~8^s(f5v_<qM z7kPfr>e5i2OmW7L1wBFbOQ6_N+7Cfa>xHJ6=I#YEN*fzXGlFRj-=!t4jgs>|ab&72 zQwICY>WJf$bU{RI?i-w9QDvraaXi;ccv}H3<Hyw?u0RgFSX2>EAkp)WX@)f<2y))q z^3Klkb4EI4ZXwZ+*BWfnX=$2t+D6tHHN>bf8mVYxly(^I<<DYML;2Xwa{i0*&U4+q zqeR^I3UNwjUKuBE_fL(<q#3vGV?2&@{S>}H{gk=C1k_47G=wRi#Q1z7d@;Os_yC#4 z*qMN|kW9Y{vGb3RncUzooOBokJNf5Qp7aM$dHeqUYWJ&8zk@o1`$Q}l$|qK%&r4_e z4gpWiks~jZgWXUMenTtlxn0O@ISu{cVw#Cf5r_qe)e*$~A{t~6Ft9u&GzdMunHPUA zEh8vn8KCzds$E$SREHqkvhf8_3)upt?4=Tj5m?Opep4iC3Ie<h+St#e=n1eB{z;@+ z<X~6%sMPDA0B+Z~q&5|jU`n&e!T<A@D|Kne9h_EL_tPzgU+pU4t}k!H@#wDSZqZs@ zJU=QJlM2R`k>7d*JiCJgtFZp;5VOsy_LWE<H-zFvSLPN(5xO3ZQ9rj@uT-n0kG)>0 zzp9GZv$C!%E>3MMfSk^Jl$CXTaWTpEdP!XU-JzPw`Xv85t2OmtRaMGm2$iU-i?0tg zOwf~-5=fl9`pV{J`i^1Wkj^PP_`l=X&j(8hQ8f^m9#4*H!xsf`$XGBYCQE7sWCOw= zLp2$yJv*#=F0&{KJP9J1j0qw*G8}*Ha8`v71}RGvAg>khrDX}oVY1{$6#xi-RMU~w zY2LwCx35pcG^|;ZnMzq|g9DEi=n+naja1CF*pqFKt)hAx%QLVnGf49iD~@Yetx<#_ znBiGv>H!s_6j-7uDb9j8L@j9WgckHQFox#!3w%Z?E5bSh39G^?8VVkrAFQ>eq)fF+ z$?z&?peDkLYOltkF{%x9mK=)<M!6e4p5E%V4c3*WO57e^w`H2Y(Zjr4>Px82)#FdB zb}=xL;eZGW1iM~lM8mPHLCHceVYqx;CC70Hwq;e}>R5(x8EW)ORsK9dSva4rB)CS$ zdDh(&n6^d7x#@xH$_q7mb6)w1kt(G+sI{mxyfUcHFu8%>q}w2TspuF19aaHV5dbcz zC=jLjpsdEqeG+x<;Z}Y8+AUM2-11ubCsoCK{Se81pf&#O*YVZ|NH#h9{W`kI+Yd;u zKNN3ii9bYg9-wtWiT3%RxKl^~G0cWH&z)eaJ*oJO;*Y2m6zrrNd2kXhk*#6&Fxyd> zFxN1YUIET0V*~q?4qmYmgi1+kyznjw!k&k>o=bu<piJ|(0Aor*2=|k!w80yW<fULP zP{5JE&YoTe5xoj^5ZlIoFr`fDADja0$zW!*3@QjcTs&sMnQ$1?QE2#>zckDLU|!sL z6FeMmk=EiX-E<Qw)*P}EU*@K7-`aJCG?0GMaAw!8Gtx8CVd<GOy9DKEU$8EFtjC_< zwXg|~9KM0gXczneTS)q)RjtbC^whfpnoxZ-KrC4%omK=(+36r~AquNRo1cTAKQhFr z>~+OuPE4B<1(;6G3Hns#WS~t{MlynPg2?5bXCyY2%3g%9zFu27W3ueDy6xq}Vs?@# zm*$wkQ_{_nbl?Ckd+w=IWG-P29Kh||e9C-GI&o&_&NF1hF|+j;si*$8(#d1e=T6s1 zvNgJCN$OaA)a7J2Xe@%SH=0)vP^*0|dqH4s>zEN)Sw4Hu9bBo?XjJQs`Y8CeSpi1S z=BWcld!kcm)-!6SzH_MFsqK7pH6|aUPh6dK*^<;?j@haW9m}%%v`Ql|91;rYwPs_v z(`q;COGA2npxkb^T8$-3elVZLr9#k&pM_nOdT`eYY2(>NFBn>{@lFLBrLH2tj~sUV z;_#dHDWY}^)?udf7phFsu1Q6M2czdvhyuHnVKqiyR&^%1vUWsCYsuDK(vr?n!X(>) zbtyB-bEU<*wxYbTmh6sq#4-dn(p0Xit-WpoiL|wjivqgQM#r_bMHp!VqvH%VS4kk- zY0A$o&MYm>+&i?ks+du;nWgb4t7hzhux0JgUb?0@J3o-qnB_Zf$@DB<1o~Xn8iXSu zuXnAf;!;yM1a*Rq=7I#i)WgCm$WU_>D-@S2_9=diXJ9w8h#9MADF!e5?G-}3MI0hC zG-L$L;4EgSzLbd%y;`6evKcH=3caJ<)DbwnCTm3?DCl)*|BXHtar~)5T}yRv<ROZJ zYf^>-P{%tT!{XV}XxM07bPq}$0tS<Aw`j98z&9nVP$iod3Quicny)FXo7g@j*~nSP zKXPhYYoXd@vYYHyht}yLWYRU$+oB#04zAPYx4-?$Qxz3kKia>kYE*2>Qd`&FGdnEx zzqsRM?c^~ms{vby;~0<8yEBp4NXQx|UsljoGqN-{^)AV96Sl72sMQ<0r%YsT+o#q- zkyhXP1nbIps+5e{_TX%zPG`K~AA9qn%PX3OCr|GfSr#o7MazUnQV}b*xxz+`wMe68 zb!E*P+auPPp&~SYOg?{frKFRt?!9S2PdwLbCW6VuDZArpA7~wVo>M~bdO4$e-ep^N z4y`NxBT3G0ni>Z4gaq@evxX~31$lJ3CBHlqR0yqaRK+Ce-0_pW($+qPNWb>@)F$tt zhI&v)m5f#&%x;;unOtKuXpJLAaKxQ~Xm*!h{*Z=f3<fpP{{BYXTQnnM&962#5|@i? zy^#7HX`Emo)*US!(|Tq#EwkGymPNh!Ro-xQsL~Ksc~ojm=Iri?7S>s0)flVVGSg$j zCApC@mVP2PBDiscr2q&Whv`VnM!}9l`UW%*`Zj?mDTLAO^XIppn@gvBvGxV&%l=?} zRe%@9jm`<VGZUc$uDS`eD?Qac`r?iTmtoBEUl66@0)KWv`?-1YPB*nLNZp?jRMKzs zYE81Ram#vvYv?7D-ZL<Prn31NV`_f&uUX0e0zJHq)_eBC1u~#)V=n^(WESeYf?z}| zBrL6=P$GS_lB0jGV`@3NNL^1@Q2MCp^8daSb^t}wLX!?aO)X$)w}8lLjGn_Hpdt%A zQ%PSS5pweUFA2x7cFQ7wJc5B;$EY$3!o08^aEjibUTm>pEsK07u0Xk;JK|5$U7i3> zlC@bD%eye^i8@jc7XH199Wns>OCq`h$v|rG`(1eM2fNU-2*NtXh_k4c_)Mbk1S7a{ z4l>{7^Jvs$kWt!<I^L*sbKmfKr%j{zhI1=H!Lyj)LvanK3%l(9`Id~?=JSFsvIj61 zJ*w#8zD^(YYtADYd7r^RmgAUiJAF6QR+6qyR`469D+cj)5KRKTYMRkPlSqomSd^#G z8g<I1y+%~7TWL`dGGH2-qhmcayF-$sUMP5{)Difn6q9ryC~9LVfPM&h%E6Ll*L=C> z?VCq+U-z#)dpB5KNa)5fZ@XGmRyAvZ<TS~aq0wb(?c=8A@T|sRfJ=-@CxFVNwXvLy zcbV8yzf;BO!!7;sma)vc7nSA(RDnL<dCeX7lh^}uru6=O^ZnA>M<?_$YxaD3_06Mx zHGrQsZP|0yp&Qr&S2<`-5b<)ADw8eSpvfN9s#j_qUX6*d1@)RBi$tz$vLoCX)o|9_ zu`PDLo_$c(&E?bVKll0Qqa<?wrZZD|`;SWRNJsWcaQ>j2ihp9P`x4l11@#C5iwJf! zYFIOnFrKTNIwV<0>KG~-;R^~fQUX&Gn?v*yxC~Hj867?EKu*x_cLfRm|Foy0kQmSu z3_uWND;Mw_2vKz?!tq7LO4a!675;EnSE0MtT`*>Bz`HtUoO%Tr)Q-;^3<O4xEp|@v z<W3mn^RCPpry7*P)3<Fqv28oq{M0+9gQMT99C6bvlj8TrC+^)}lYDQ?jg~i=*BuAP zzg|<bci)tPqXoSgx;(w5nVFtJu6_F3hxY$HQ0hSr&}NHcoKwku?kO7883`>bny4Qf z)OHmui1^yal=vnFvbx9k0?YEcwF?$#y9)+=zA;@nA?a(Jd0YRqZ6hiVCwi|r&{X?} z-aA}4q5bBb)Ai-M_xF|GRoQv)+Va|0x(_*DdE6=3N7=1SoJ)z(`po`g-#&FM<LPHw z;o+}$rQ<54ZMW1vD1Z#Evr+Q{oR7c_R8Jtz!W?Kc*Aik>fC@oMl7J5Fh^9qToTQCb zRY>@b>MEiG1*Izi3LDfV3mua&a{jxFB)~e3Q6ZGABO^%RSC7x0{rFeXe@Q2#|GGHe zO{{;BCXQw=J8-QaeJ*{qR&jwe_PA`eHr6jXMJ+e6Ub9|$>AsJoHS2Q>*=u4kyn9Dc zf;64Fa+<?nbL{KMUK33h62s}Ui-jhk>nA6{pe~<$c$;)y8n=|Y`o8nOF3~by41XQr zeZvhTySr&lWX)#2M3-X?`3!Z_mu~nI`XrV`17>-4xRPlj8<iv$CfZAd=X+L@o4@?% z`J9p)@0I%v$TC-hD=`%seGzo`xv1S~bq~@7ZQM{!AfA8&PAQ|53J1#S#U3NQ0!#vV zn4-1;gz-n`0_R_v85edimcUX73OVNpLFxe?ncDF9BimQ_o&Q+a^H%@IFL#$cb?=PV z3?9;z+VqQWOT2a+Ao0k^QAR;9S-1CO2J`2?ZsN}98J)Al*l1A$CC;mmKDwzsF+DFl z$*wAG?-+S*O>FcbGLaN-WwY#MIn5(_3OYq*&boWZ`a6fK^Y;clHkD(0vNpe$<UBg> z8CH-UXU4rRP2btM2T=i&3qQOuK51Zx==)+yL->?II@kD*#?6Z&gHFg5j*cDolc!Hs z7mae;Lj_aUKEQw|DFBRW?F3m?G$1*5tfVXlx}HlKM67~AU?YeIjEHy`zbIKOj(92= z=pyxibZN>1X0>$Z1u`^k%b4kRy}p68y|X$wYs!dNV%EA*tI5{kFW8o%t3SNq*6(iZ z`c}ajxrDcQ-fgqiJU9bkTYz!l9F#W?Z4W^QX}mrBAaUHE;e)yEcam2cWDamghUasW z&Rv^YM&B=dNEIi5Q%8Z?(B7*7d4T2ur=}4&sfiB5fgR>cv;!mtMvikm+}VKliFjXl z%~YcU2^|e16M~0~IU}Gb7OA^2<)VPBp7wJK)AtPs6wWF*Fs0E^oz9NDS!L;V#l|i8 zXThqz+*<D8>=tvCOAsdHW~j3fz1HHjI&$(GJf0C&d!EY@$oASt=Vy%7sQSp#v(r|u zoqpx)*((}aTN=pEM)veg+E@%&MVP`a7&~d+RL0tAjW;cuUPLx{RXSrROQSkEe>Jmu z?lEr{`&fpD^;FsHK2p6{sJE!|t7hkv=XtzdkB4}J?!q;@O0r<^41`y&dV0;fOo?=% zaYJM3#nBr_@?s<_JM60)*WE0g7!%DOU74RL@^#+GH_T{k?<KEGh^s1@yGPLHj5l(j z0(|uQ@Wf592xP+|FcWz%uEjd~+yKN|pgO0~{Qo(aqS@dTSm23^CWL_*4Fv)po*{Gq zU%D~b;ok#ABAH1Mf9eBSLIbhTcLklB!u<apEf8=BK^XCGp)HQ4kjKVJt|uAq?Tvrb zF|jn;pUF1NYyZyGK5t&T@KO7`@2)8f2l=8v_-`z$)M(+^B9Q7(gR4zY)mXySW(V<S z7;GVvq10}Rhl3UaB54SOeAU<X^q58M(?~~WW9@jRh0F4_&uD6GN@ms>5c^^6*gn$N zwOwf};fxILtf+UeS^e?fNRJf?yeFLRW-grjqIF=Pl{aFF%mUfjg-lkK^ejl?f?8*? zWa#R%iaEyZBqZXGE}R;%WjF|d2c^TNaaaue3+;W9`o5|9L_>YC!&?vjc6niORmfXK z7D;cy?PH(4j8rpm`hvI%!_sm-Pgsfgkj1dzj>2#Pw+h*G3w#U+ncVGxp)b;IkB>#s zy9rdEA|^f5C^OV3s9qquBEkkSGxzLZ_{nu`6FGjPUa4oI%~7ZQs$V@iSt;lkN6WGs zmoKOjxg$rI%#5PK>gLF;H#{I|N6fE{!qM#x=CG0RjF^7S#MVAPtCmvz#~!F%->I%> z?5^rqp=J5~E8kr{>zmJ??Z&x?W#p=R4&MLZ*xwU<4>78Y8jZlzb)MJp4xwxH-YaSj zNdx3;`TEON&+0H2{qp2&=_AQC^A)1UJ>z@f4BCDQ_d5WIaHHZHc(gvHcwKP@tv`T} z)a3-WY#yTFCI4oOi3sd~Wk`Q89L2$W#xkUNEXaAtv4m}4=tlvzNmA=n8QnnkJf%@z z<S`=w!Se?W&FBdrLt<lCM<_yoIOWu+K&vH8OsLPWHN{IX++wd7%vLt&H!SwYg`_V> z7Dv;klrbt?1I~%dKvTkHq_<077{!<91tQn_rQ5&~)|F+#(*47`L-9{{#wmbqVg<cl zdj1f0;620!UFJt;vBku=C1&HCYIVI<ZPJ2Q$g<CH+%qhDl4Z;6PTnb$+ngm<>q)ES zB&NzeB?WW%41w{4D@DIAH@hHvGFlLu0btSPE4Jqr#eQ!0IvifR0H*~6MA4ZID%fpB zr9rRcffk5JPP7T|sIXS2E#;Jg5ZCI~3B0I%NrWj`cuB`i)V`$CzNE!RSHh{a!aD5% zu9;<<x%8Cz#d<+2)`@(*DE=0Tj86NaPKV7;gL@NW*eHt+6Jv)TXH}<lT6|v8X<pL) zi)Duy2Okv}NJ_{X&nzX}yDYPWkR=TJF7H$6^>6X~Th&^x*72@Wy;QAUs<prC)GX!S z3WQpC-eU2?^?~IweBNLqa9_@9aA{P6=-g?r*$hS-G$ymzWil&utT9`oWK?1XuOaVA z&nsD;Zx#&K>jfXn`UL&;IwkIe7f7XET*b1hMADXe+#swH#Z`jg6M4qV@H|P1BHJWN zEi9A8;KPpN2%RC^_!d?aD+Ml-=QBB>UF23lJ4HOG6{7wV91_P7^%Z)v9U)K&m(QZp zakBZ`9sq$Fo~~8u&lu918Gg=4T`bgsv>t!A_$Q$jG2iCF@|1w%S~8&p76eBe09okE zfo{<rhU!X`I7C~54FAAG3;lf(J-povm7d~65T59!5p06SKnG<zaP&md%to0!>;;sT z1;$zS;GF<8xIbL!&e<aU{&i1C9o`c$7wmU%2bQdO*lg_U^XfEN*Sn1ccS@g6H2bVZ zK;~RGyg+p8&Kxp`zO_EV@GG@2xtAzbcF$&QcNm14wW8sz9siYOdjL$;eb3(}{q>E_ zOv`V`bm=aqz2e$eq_1xHZ>dE(-lNfbrjo&_h1RB9JjSJWsnu65nRPTr@AD2wn_KeC zbzj{ZX{&6>8Ie(=QP-OGN&oz8v}hbdD#n=98{Qq7F*B>N=;&;l<L5J###^Q5jpCdq zAuG)|Mw0I?a$5GEkxt0I*zW*0SHiAAS%1B-BT>ux4)k7k$=3DXD&A526*3HcOpsZ? z2|#co`m8aELi|7wD(WjQ8{6eM2s)rM;Ym}02ag+%7EWD|d%%W;s{-B&^kKRjW#y8j z09zIQse5Vq0I_I@z7Om~k1SZ|6dTZG2b{8SP<kZ!q;O44Uq{;2A8uh-rX_gwcKLYd zGh=ohFPj$Ptmqo4&#SCWGbqEcB2>DfBG;~aUw-Gf=;F2E($2A;Z81k|w(Y}RV~PW6 z!Rf#6_0vBqaw)}7(U|e6-Mn2ehPM5qa~x8xa|Q_-Z}-HV+j-vSD=j{mI_2?ZxqAEk zH~B&lYs59nRghI!+B0qJ{K{BSEVHCEfBvEQHIW4KNS1xdj9@sLnQNai6|t$L>)Hy} ztVyK4DDt^^)uugTrxM?a-`|i^QITEX*mb|IcIs_L@|B=7a?{6b*`pL){^Hh=m;I(b zSzTLG(ZbY#%%I${yJKp$YT=3E>ajPRc=#&8X;a0js&i}-b70}Z0}I&)Dv$I`eW(h9 zYvO+C+k(8YON}9$dDVo1yl?L=a*FDzV^ezWsW6KE$i1oj!rl#Vf;ReAjL$2SzB=wR zaHP?zo3dW(Gi2QIrq45axVfl&>I93Xka0~LH!@V6qm}+NwR!AlL7X_Ud+ewQJ&mH+ zSJy9n(G*hKXN_qkhIuVkZLrBsmUh+&LK~^}oZg#}>Cr8pP26+4&p)?q(}rz&WzkTw zBd?=Gke2XT12=Dp+UJk#`L)LrEPi_AD3+c2z^*OEfKR(*ASO<2^%RqH#k;GLTZ*WO zYtyF7F6SE-(VL~R2*%|}kQJ}K7_ZtaXRu&{Eb_#$$j1=lGePF%{EYvCqFY+oeL+F? z5Zg|Ui>AJ8VDit!8d6^d`K!M>O?1+i<VA8U^{D^J($XjW1G4{s;(m<z<?zj!sJIfX z<pssdXepE|E29ZAa|CfFsezvk#z{cP_`!lKq*7)H|2_SL@>Aq79Tk|`uS*;v25u-a zJYRw|vKabJ7{@WX(`E<>06$nr$5Y4l=<yKDLOx9u25Niee{f(#`4r&*Pn#Y+L9{HI zaKz#JE{LD!78d5JYg?OaA&f^^SyA2|wl%fZs-@e#`T5S}bBdQ_jT~9u<o5@a?5-s} z(<YCsEUV^q8oR-BewIdU3Km>b5ONB!tgM)j5wte7)M@ex3-dH}ZQmGKtrso^IL6|v zrsjqwZ>Cqt?Oxh5y{EY{QN<&LrQRnA3sw?dI%Qp5QC>P}){5(y>&a7-qUFqI{(PpF z&GQGBM8}WlV*GjDC4tH$Ldca@f%KB+?QHCdF1b?W%uI$lrez1`BytUIJ(y9Yb6WeF z`f{_C5VuvL`UPgW_89rnm+Qgq<#hMT;1YLkptEs&Y++44nZoAPE{%;JkveX-{rX2o za~U=4kB+A1wI5!+#FM!!IJN5fjq7fDXI?4lodAEhX86NhkNSXI0`S~zB9MbKDfB8U z8|l%9nq$xfT{Hnx4e(OOda0BG(z26k5<YZvbGaXrWh5y0R6?YRBsw{{BgU&k4-NYs z5MjA@hCaihAEfaB(KjaGnnA}vY$Njrp_V4)&Kibhpf(UYfE!S3nf9+TssM&vB92*L zo1E1~S-99U-B*{Qd&Y1{FIwIdH4<wne-|ZKMY*{bi(ni{0A@!AO#dm%-=2VIAB)O| zOBd9#JRD}q07Kg|(M0HNvVUhQN3Lvzz|`h618FJ)=`?3r!-`%LB#dAzVr>Yit8;_A zUMv|wz+7Y4CVwQ76EWDeL~pkRR1URL%Q|(uRxC~AXF|Hj2|2wY!)AC4rm#I^@*?4> zl~kDouaXe6&K;?IevUIw?=??YFw(E)U5jSSY0+@%(AbI-q-@c<$2XhoqwbhH;mCq; zQG-gWh2UpfJig`fdA-S~#=P|Q_g6~uv`o(Eu32Ef7fdb-Ey;7kuYuaPIaX~_BM=7* zEyE>()JHfCr-aSKVA-PKH4Ix6usV3P4xXW`J9|72>2b70E&wZ!SE&qK-?`W4#o)*q z<ob&uQP%2RLjK#FtK=PFgDFn~pj<0jk%o?}AmfSB)4=j1caoTI_PkAkIZfkpD;hag zC1?V1TWMv1QkR(<YN>JR44ke%&>3zr=4a3EXSJaHjf>lL2A0uKR}YUfrbdQJwMi`W z>$3{B&7WLPfOXYG;&HRNA?fwFOrG`0iHVSkH-ZgHA`7>d^-S~%HFN8;x|^~MJZtY5 z*|VVB(J*mI*|8-tb97qs<X<0(1zbvvvBK#VSV8YV=$h=Rw$Wo-{m}wdqVl(I74>w~ zj|uX+jABpmSZ{W=-hej-k|+FykXw@>E%OjK*I-crh2$827I8%Nc|6*+iY4AWqc34A zZ9M4q2P|q7_;L-N3ejXY`ow%GuxuY3v~5gnerSBX#uOvdv#-&KjLmEr6DgQk%`(oS ztg3tB4ZJqgs^r@J<IU!*Y{Y|vAIpUmz@(RB3;`EWc2#jxwqzKu=6bSdcxZTtIeGH^ z;myqL%<XST2`RxZKgaMAf*;KsIzPk>4WD71X>9wfunD{#1{emS;1HPaz#_$miCcme z=AHvL-Ne>yPSvOCH}kEjZ&KerH$a}8&oq#w(sk^^((C6R24Q9gH}?D=xV`6>zzal9 z90vb<lA&y6U&8gNa9rxgR0&J*d$QaX3yWc#M~w4q+)d(uln~V%`7J2rN0xhKF9S-8 zq>Yxgb1IFA7aiJUNsPivw9sKs%V?CPg5gJ2Fp=INJs8pPgAQ>t3=<8b0xh!)E!#l+ zjJyc=Dq1MhATO?@A(j4pl*}J5Q5Hg3%z+`T4td{k1L0VhI+fUx7_q=b;*nSaYzH!{ z?t!}UmtTIlVJj*7eZ~G8%4<rQEfu>+J9*k<@_DnP)1$HKaM))o!yJ>LG;0K($rRUX z9rl2)#TT$Uw0bN!{8;ciupm8eusTCdi$VHEZ*iJU4zqq5Sh`m0kOm|GK!AEP!XroA zo2*uo#WGcIc7&Z4z4R~a6-1;G=`A*b*8RpCT&~5!j;SmE-R~>v#;{6P0r%z`Krz{f z^j2zK6)#jZFpk~3$s^Ke(tP!A$fMG;q*j_jeunR68t^(Ay|*YD^LZ^sqq%x)LBUub zG8veNhEu5oUo2V_3i{EH>vVd%!yiPR2A{)0mmCgXNcxa<7)(y5$>3ltJ`)xUX0yTI z0Aqh_zRi|D+5ig@ysTnIV~p6vs9`iM9ji97c7xGuHX7`#*=J!98a5-tXtcAoV7^{$ zWn3bk5fjBp@<s2S#Hh0~IKjnO)%yG((QV&;HHJNzhqD~|#0ohUIegbCa9|awRUP<G z5OqY(hyX)PnsJF?2#}yaVUf}#9gb>=@Q$a`Gvx6|cOA5;?M2?y$*l4~qQZ9Y{9&g4 z;;eL6dK=PrFyE;u7AAVVL*B9SE)|JDc@|UeEwZa^2U7^(nL6nOBh_|Lx{Gc!#)Diu z`Bm<qY~xV8r)=k(aH<F)G++avo*C4sp2pUtp+fXDMn$ZQ{;-8Il>k>u>oiTNR7b*e zEJL;cY(ry-0JgwTj6Gnc(zA3R$3KN|aPyebff9qQorc6ILHcF@GL$fYVq`5y$R=C| zMR{vsWTEGvPW@OyOka%HbXb&^>0#)>5;zbKg($skx~x_im*Zm4Gx)gl?)3OR94)<s zge3IhVQZBA>@lwU2u}};tA>{=f^9)i5G@JZrW|8bPi>MgIcFj`%%vjMp=>28poYQm zRS}lun-TTO;Lw__gjI)QwLx#O7gk|q=!%Ka4wISl>UBz2G6OjP`CPj?LsatS5I6*) z$f-28Ku(6;WQBOfo8yH^OPRJjVp6I!b~VE8iDp+@EL?0gS<5RO4#Eg3r`bI^BZG@7 z0R^cTotf7_O%I_}2o{?^pb@kJVwAB3b{ne=>a1`>K>=de=tE#0nZ$gH#a7Yk1n)ls z(FnB#c?jxgR%^@&3*z)}T7$u2FspP#RZv-okUphl7Blz@W`t*JwIg4lN<b2CQ0Y{D zjhfT>!Cs*8D~wuev0l$`8kOqXE35@UqeXPM97c9W86#MWGF`l;AZZq~T2|w8`_y_h z1OX&giIIq4Df9y(!K2gL)o??=(SB(}pa{|CGPeZ$CpeAIuH%(HL?To>Opp&O85v5I zU@kE7cAbucL7Y>G1@m*Vdq#)DkX<b9p6nc=x8`+@)bXrar-hiQ<5l|XN=QctnQSrv z*dp~=6{UnYJO%#`W#0i9Rh70q=ia%~GQDReW%{J|$)xu{3M3F(C<!4*G4vuJqK1wU z5l|3C0bL6qy4YCjnzbt^>W{7s#cx@ATUHTB=I}q~P6Fua_ql|*_1t#Od){8^!+xa- z%4Y?7&;O7a26cRET(iq1la;{PPHEL^IXLVXje<hi;BraT256V8G2{G!j2zgfm5Saw zhO7qjZ*@#}R)kA4vlDe`4tw2@a+6t>pjMj&Ymz(82CW(r3Xtra<RK}EG8u<gLD>$! zK_9%!suRrR4hI(-Qfs6ttvuIelWKj?K63_OS;DKGa+j@AFAz&&9=YnVkjg!wd9<}; z3YF(q!x%5{Dqli&qgn&+L8Z5uv!$otGC|<YCZpGCl!|x=Irw3}VKosXzmILmr8wyq z*h=X5J#-UkyMU9(q+cK_*}~t&H)kXl(Gr>T3w#B<$$SbH3f*|$!5GwN_4t7z0e-As zd+jx{^)+r1`%h*HDth#6woLqyejoo4a-p3+FX;mxa18fg(abjR0V9yH=Vi%TlH=%u zkkuBphGoI9L?qQPA(?q_18zguAYn<uEpZ&YL4l^D7Abj&6d{KUv*cKjB??w`C~Cp_ z=lc_6(9)u@Aky~~pb9A0N=T@LgTE?}p@qo<Fi=4x6*H*;4~qI3@B|rB5$V~&I1oi; zz(D?R0Cxg)7cM*|C!c&=TUdGZiuI3F3X4XBL!-jIy>wVFeKzC(eU-`-F*>DVbX>eT zIKhF8IEd826cUeXRng;m#KP;%COzGw(yIae%n??h){AGQ`qZQ>y;3)L9Vf^Yvh-)B zm}`<MhFmt$>(kAzEF9|aKU+LD)q&eet#@D7aCEg|;MNoR_fFYaEXbvnq73ePJD!uI zCnceP$&wB&x|G~l5DccK27|Pa%%xko^a+tG$vvTBpjIj865<qg$jL^fGagD_r_!ji z#@H2cf=hbwlmn+Y`r$g0!C+daiF5X=j8<K&Dqi8?q;7eF%AvKGRL(eHpcuP>-9cqn z;tm`aC%3CCF(#eDH9z}NPoO@BzTz+2lT&<|W>Uk9oP2X^`@cg|>dKSj<+3bkp0{S& zbd^ecSp0^x!fdH2tzdlaGlP$X2OfA|z~zg8O99^Pu(i5lNHT|&iEHOt>8{gf=}ze( zqN7!`oM<1BE$o|5-lSRmoB8>4H{cq)spM(sNRnWwb4h&2^4bc2^*NGd5|maP2#R5; zpDd#O!6Y#HWnqyJ0Qg+LMIHjJl7dTwfXj@VP>=u=AzIoj0j~%AtEjw)Ud#?#g<J-x zP;5l6K~e5pTfRwDz_2hus{nxKyz}P8r6k1os;kBka!BI~I8_=?j(+R4r1<9k2i!Tu z+3vX=qlUNE6=qgeWz3$~R8u=VNB#&$Pbj)ZRMt$Mzxv7<)8^BUZcRghvg=1(v1n|5 z&dsY7Iq}Ikxk-SRSi0e6{vX{}za8&FDWUnMrb_bO4OTlmrPfP1gPHCp{Vyy_Tt;8i z*)*}PlH}nno;8_1lhc||p58Rx+2h~j*G+KG4X#?b_|_fenORwTH!WYY#(!@jcdsvl zb~Tk0Hz$1PoKN~G&<45@W3)in2c8Q#!_i-eALNj60V#H*Vvot0({rv%Ffe}%uCip> zsx4bqO)Ghw-u?r9ioUarv|RUL@w8PpZeBI5xR*@&oa7Lpo4&F3IjJJ0A|oxYqJ8<p zb6=rftXsu#EtmDA4av#MFPpS*?`5x$z>b-b&xSNb;pCL;MaVXG*kkb)4)8Z&nS|*m zSV;va+QV9~5e(13f5huiF-;iv=LLUyePn9lc6w-5!=HEGGPl}4oNWI%-a)=z^z>a5 zYCGoyC%kZFolr0p4#@Y=^Qu$yr5itkIwhIJPwU8Q+v>DeUSZA{Q@n)!`;F_st6Z^e zd?B;LpZ^d#KPB{X;{j_25h2z`3Yf(}<fWJ(Qw*5%`Psgxl3;2H4}7t_0k~WQg2*X~ za4;Yww2Yo-d>|6Rq6zb`h1CltF<cC}h>1<|cuo|MnB{>neGr(C@fqM4m73yFOp$5p z#LJ@!92slI1TM75Whz1T09+@R!3f5VBNLf1j~N8T6Jqv}0VxdU2=t4C?=9X%RIKBA z9QH(?!n&OOVXELQpm71G$@Jd&a0|z!9FIq_cfb>n^bT1lm}tj1)F9I_1@P{;5^Q1u ziLoi0EFYYhJ+J4+tdW-?Hc)TW7+^BiZ-0Kx%GN0|uAZ0KHRH$LxPgB5u~g0Z;(2Y1 zFe?LYv+mq!OWKfyjMFvf5EN`ovP0elw^m%gT~<-G$gMRbju|yf#=RzwlgVRcX^CM3 zn8wHo^zabm`10Yy3My1eYkWgibwQXZ7`({^_4-P?F)t=3hm&1J6zU?qUYVGXt`-E9 z+v=|_<FCi#9K{x!06ia+1t}V>)NYASZ_wsz5RAY<C%{XU;n6uM+IUYe9;vuE1W_zQ z%%+(P(ZLwLXqDQW))to-YedCqL2Wep405xeR9#ntxCNayq|pm-6|s&dD=lhSa?I?I zLuce;eDh&KOVsF9(<@R;T9_HN_U!4e@Opj|ct&FF8Zv!c)pV16I8;#Q5IF?pJNJ%B zWs|{Kj|iGn)r~i8MdGn^PIh@p`Ovh{G8w`#HnUh;cYU0Or<(~U5Lt{#?I6;;7<GcL zp){j37Nw1$10jVl@5>NSYmnJI7MX!p^Msb_+{$bP;h<qsX@eS2L62G`m8a2$5}8A` zcv!4ekP<}sNoQq;3Xu~W#x590@m4T<$@~Td;bUURZBVx%jod_D!5j554gG*Vp6DKq z@sm2dMh-6?<JE>#W(yg)SFO|&y&@^5>}TMki~bn~WPuM$=1U%sypJ$d7JVv0H-kuK zb7O$U1bqglV#WweBL>#L_St~zHnZ_D=oX>Y8vrK)i;<OG2=fqfo1uOo0+!GK8g`yd zCFYCaVTwl9CX6*EY?y^Z;CXCHLCX#C4S%?m_<S^BZ-t!GXc2u23%jV4r3Ga7U^b)+ z7vf341MER~HY{2w3yFJ)H)oeanZa&{zZ}di+$BF(yal_B=yVc&1oH#}LzOF{0kme1 zMZLP{<JgiM7OEPD#c4GOmlYQZTv37ou`kJq=`jwMLM{{(CrHyTbuEcV1(L8l0pn_v zYu&LH8`0a6)FYFPs`@QbI0%;^KL(j4HGqR!ibO3kojOykp?Ru;%-UMa1n@bU94O0` zInE@RRX`FkE+?qU&|5N`r6C_g0?d!%U}1Wd!xTBqX)AS#mdhukC-9szxgF)v9N-J8 z@}vNNs5g0wPp=dnh|&L>_LX<uxNZKZH=c4;npB*Ef3bh*%BJBlR={*6!h^;(EnakR zjRTcw_Vf05e^J@6ESUfeBtW~aG+mou<%nA6;bGg6E8=28P+btdaMda~pCQQWlS>N% zZBjm&&x}coPxNSFc!EA4inLT2pM;OS)a&I=J=Z{wHJXfyOpQw^2Z}Ky*a7)9iH^s~ z!WcoT<CGjd9FwU+{1ItXx>Z_2uc}FKDB*<9tF1`>K!!Rs74gW_4rY^A@j96?(JWI# zzbsgc?%Y@)H!a8OY@uY5AGu1Y(<)C0wHD*}qUP}xlZ`mbDS|wlW}*ExAPByHCnuYp z2$urrmvY(+UX@YKX}E_brdmXSkXIZ0g%eCtjk8Oyj6sBn7T%Q5f?^i%L?Jkw>ESUb zuLD;Bg+o_8GsX(zmdLM3dk5qQiIPX<2Wf9)Ph=0*!F7o1c6tL@BsHJo$fEx1d89jH zKDVc3XN2#dJG6?GkQnn0o+~OE<wIx4tYs*Xi=4=AgG|-A@%pLfPIhkG*g2Q`j?~iH zGekk&r@JB?=@!1**vZaa-zmg*Zlrfde&F;pi@e#_%f&=~A};|y2zcHyd7o^ySUomQ z<O>l;Dwfqj!YGkJkcy>tP^2u^geXOpm!3r{-U<ENm2bX9RuIEoGoI<AFYkSmuBYGM z$(=uNU@xnA7X5LH-#`g$J%VI^pc~$}m%eiD>6v#SW_dZctp5N%`oIB-<_8Wi-idwt zLiq{w7pnmU&P6hyu!08$6hTP+iQFq;#MR1N0o1CHLO}|B79vhaK$d%3_?~b$(o^0@ zvxgLIdwp9max4O0EFmYKqNksFim1+fSTG`vNaC<OFNu>aMEl#=1zGf?H1UEOa<mB- zob8Xcf9n0Bcr<J-ipNFKcN1mU2H54hP)kk*HaOqt3yav3vCWKeK#~@TF<#72#?sY_ zBp(=E4s|S&M}U=Pe1q7XrK05q&Q)+v7n?GA&su1S1jm5W-~$)s0{Tozouk~}lLa5y zInI-pj0Bq2w-9-3yleUdkJsUqra0mf+Q+%Sr#D{O0`bV--8FtjhD~howcTjVwr@CA z7GuoHiOGAE|JIr#?wYV0dU%nY`;oJMMCSkC8rvQ)J5r<`hu1rO!d>w3UH7)t%5f=q z9u6(&=3loUMzZ3~!4_qzoGi1t?AQi7jQIA257P}<MsYXGYP2tWG!Hs^Mw13&vSrAC z&8pgDNJ5fQ#Lz-V>1X{3Y=_=8vV2`6m=8jcPh4S?|7OgqRS0-pawtn#HXP(&1Xm@% z>sde-o8UXkjHkXJAroFDGTRn9l8ia{&xy^2{6o)@N!LdvoIYeL>PN87-%m#-EMF&` zB)`3568+-6)7-tw*IC1l(EA@cIWF=9A!A;neYX5Vw$!v<dUp?Zudwi7;i$2n{rMcd zf3p>Ajep&8-0VGK@0cX*uXyaI$b{?3q-W!cY&-0SPILEMPw#m);R)LJ8X2?YYeEk^ zR5)tfKS|7c^ouEz_;t&<dl<ZndIk}uSZq40(jt)z)bv4MBCGME06h~EG7e_8^bPDw z-;Bna--UqjOXJWZ`^CWU^U)A<`c*V!eBrNJ4MwZW5~6YG-D0zDaR=|fa6(jH6OvR* zMvBz{n0z?k35zv)9_fBW$5_}(K;9V-&NG_>%8(B1VkgH++#($pu~%N$|BF47$hgDf zjHN9HS^mWq9Mo`U*c}AqduL)KS5d*@{40*SvxHT0R`f|<5jjzzXIt`BLYDhz^gIH4 zX*bvXfT<v<AIfSI7&!^si9lU#O2-WxfsRX-o&_4JQqFOa3RZ1Omcxn!b!U2vG4w%{ zm|{o_E7D?6yR%pW_KdUle(p?Qk4<oXeql=*6yGlT4&w5S9RF4H1aYnKW*_YC#@Q$i z5$n#ei1AiHJNs&|Ij}EF3}&(Xt%ya$WHV5~53olpY)%eYHCjzK5YhuLh|UYVJLraZ z4Xr+I676HA#m*&rPMk<8NKOo;kzj9c-o`PX$2Bv@Uqymz*farDQLf~tG@sj;*V{`1 zff83z0ZLz0M^d<muhh_G?5OS^Qr%(fGL-t54$YmX2#4ryy6eQXq1nZby6f+H;PbdR z+>ywWgOeukxF6WPag$M=?4Q@yIf`e8u027fl8y|hz&%L?XL`GP1Fj>U<eJHoYm&T2 zTmgU>tYd?5JGy~7spWt*$$)O~0=W~393yo9%OAl>){d>&-!F1RkS=(UNCtld+w5;} z|2($XU-a1En(YavE{($(Y!_`icy;t%gLjJ_y|`q@2WgrFG%XKNlkhsYIFH=XdE_;L za0FOUHAWjuUU3>B<?1h{5z1zVFPTZ=DC2tmL^lJ(ZZ3Q3M)Uh`os&9Ek-3q%Ca3h= z+wYmLpUUM#&jW@dk5x%0R^Q4-w{LKCr9NM&%qW&*+c-5lgKD{Qh05%7f{lv&jhxEB zU0GQ+c8{~my1SQOI*1rW5r4_L@og*z!f1HdWBk}#!uVq0;rPJP2j??m3hc%3Ct!vQ z5;El>91AlZfv{2$hr?YPJ;0$j=5K$bgdrNB7`}lv)-n{pg%k<(2`{^vGt{nE{+<$h z*fk&34a<kX&{*HqNZz@P#2#Lzp7eaDatG~;<WxyNs1m>X+)D#cExp@U+CQl(GqWmF zcsMUUGds?l)l6@$3<?%v*<w>yG~2e`o|wIUf=nu;_Y5bqm$#GriH)<C9j2e(R$Ue8 z<AT{aw-RB;ImxekMH;|OGpoeDc^Gp&2O1ETE20drz|a`5xq$klJnAuE#SmvMI-`uZ znEpb}zLfmVq~`bR`)=R9?}#!d<!`AQH>Um#m1Z#Z9V?H+F?D4Jw)^krCsh5`EapFC zSMKYjy{sx9sbFKeXVvkQE03?*!$v<M`Hv|oJ%1K7K#H-I<K3&^Q-wJGsB4}8RSI&z zGu{L=0Gmu*ffW*_V0?q3YdMx|m-!!x@kMCM|IYAAoA%6~zh{2r`IK5yVC|l@0aI;C z-Y~6w!<eE_cBTjAm9G1kG%kB7zxuhk^Pa2De`y&R_A$NAZ1!a2<Q0$EVAl>W{%z2f zo?5VL!Gc{Q(>&G9&DEZ?^7IkYV(sykW^ZIMS0P(Dv!$)AWyVT*q?g->YL@Y_vC~GR zm!I47>oLWrN5>Pnr*lMX)d*dd#3a_il4BepiZV46AX?<rLAo%D0s4$rW}wT`b41s_ zi?O2_TEq}>nYUN-dYUZdZ~i?gS?yKQ-m3Pjls*2xrO47=*PNGNyu`(~(g{`lDf}SH zzA&lD+l~MzdB7noq!oJAZSH(}JsG{sH9161u!?=u6`Jf?Mh}oH^4+(o^rV-8PEtp7 z34s0;vL@XDM{lUHG1Ti|h#Nfm`Hj%$wIbG|8abs|1xb;L8JLs;`5PY#ur9?0Iz%Mw zs9emxi@`RsE}@OMVAkgW-JMlTf>KtN)|D1rV9mC0Ksa)7`{H@p8d)R#jx~vVcPt`q z94kvZR@Pc}EUoO=C7Y}XXFSFku@QOh*s%fKDEvoQJ{RcF8NnE&8*<56iEvxr5i)~J z7fzj(Anta0-|I+K0RLwAkbOmW$nTR41IKDXq*DqicvLYRJSa1?4WP(Ie?GFPB9Xey zNOGlq%mmIPk(nW)AZ!RC3M{?9xy|3p9}3NQjc#fh)?Xi*`5IZ+Bu$N|P-$XRuuxIa zH-VrC#RF{9&Hp1{A`(+xz;s?>`tf(RW$ONhclXlAd*Y1zp=0|=T~A!3iaYHnlI17S zm(G=m8}NZE;2HvX=JOIGmPBIg{oS1?KM2@gh;NTa9qm$)cQJEvB;jQ0Y!}k*V{B23 z3wlZ>1qEcmOLs8d{$HJ!063CGkYFkssC~p)!hA73GRYIW`XAi&#9(pX$SX|+$OaV5 z4mZ11_P4~%f+mm3)=X|}4qx2uf4(uqC^CapFks>os0i^3U!)ISemQA*@hvh1)qr=? zw1OrZyvV{iff&OfY&8|+1Y->PaPyFG^M&31T#+RPu^G4>K!EWq5~E_2^ld;+HoV@i zlB_{w2_n+Wcx}Kk=7GQv0GkCNLkUcAsLx}L9*CYskxoQ-KzSyWXEO;0^CWKoK{7Kx z_&s0^rX^-Q0<6NMK*rvor}V7-;FHRDm{FqS1k_Q)EulOVRamdYfBIsZa)QmJb5@S8 zbn28Fa7@)WVTo*2oKfNPCtGEqnwH_&Dq+m*aDhs0c0Sx?G`5i;S9Od-a=wfy^|>)9 zw)EGQ{#UoZ{r|Sl8l_sV%xmgw@s3@#?7*@sX*H|88s`5JxlF0#ZdavMFQ%nRmz8Xn zD}bwkl@)RvQ1W*umGs{MI<BnR9Zs|<h|X!qTL`DIa@dson&DYfx`vV*7caY65IDP4 zs#d67%28f2;VpXX?Q;6QLcw)3U)_*ph#X#a|1$jN^9z!a3JQY|lAu=^sOcU9tExoe zN+Wq`#HA)?xHck(i<;m_$Y8a>h-Zx)qe=8T$f)ljlHfgLBmd5{YYK$gr09vsdq^eU z%`Keq(3=m<V2gRhqa$Z$vhA6itfgcb?k~r$26nSOu;Y5c#nmI@-D>#c<H<-Njp#;1 z;0~sgmS8Z%=Yy(4n$3Xj#0#>H1Q#YYt`P5~DKP4iTzO7D^X_6=M#dX4uMZ)GL+l#d zLa~K5If#6dUARm<Bz=uON?-l)iK$Z`{|PBdhmmk}JHm4n<O>qFm;RG3p)L6Rb1x9c zUu05!Tp+_~i^))C8I$0tXNQV$@$9d<vNGZ;46gLpa?6;Qc=GL)ahg(Rj?){fLMl#A zjAFS$6Dy11<uNLw)?xCg%dX@bq3P4A;&nkwc1*e|-4rw>8sPnayM4{>R;f+2r<se5 zO{#e5%>2n$Z{NB7>W)yTL)@4=cN;ywW5LmF<Hv71x?l&YZrmJ~9IF+`*UU_;&=~D5 z`XHAX4n0z$vuYL6ZQKhtGmj3rM(M~2+@G72T-lv(K$0S8`slN7nG&tW7}O>C8s-Bz zE_M%ItTAig)yW2i(JA@@@_xE7W|`1?OC+M_lPIz>YZo+21o)Z_NYoVy;#PhDj4Q@X zw2BXMoeFM<H&WUio9*qQ3$klsySeAQeOt++s+Lj1Uh0ah^kh28TWX{BX}zneG-327 z{1rbPIPlW}nX9JL8!79Kt;r^vW_h!5-SeLQJ#^TTPe%=F$@KVQ$)DhW)2=X^#_cJK zAKgNS;;I8b4ZizU`Q6Cl?gQ_b1%Vuasz55ya=)T#0K8%V*^e_=fGw<eMkze-j4lyv zKsP2ml%ig@QSma}PS5S!iHPtnvI#%g&XG!=VeJ018&`g{@3MWwdq4_T?z%6&ppSof zHbs$iv88<HP9!Yf{_@+88PcyKLhs_s_I<VT06o4R<8}8Jcayun_=422c{rda;6)Eg zMoZnf7K6p>_JX*}E6#Syy4kO{_iT5s@bKAgc?H|*#S!s45raKnA;4Cu2UmrNJRpBL zbEv{6!pOkM10b)EiA1&n*ikepU=2MWCJ7TJfIcN+&Dwxo)_wEoivD))hn1w6j3&)1 z*Q}G*^_;zpe_m0ej*XfAbX_nw&;Pk^ey|&1Q7J@~A`J%XnuIB+Sj{R^lT){M^LOz- ztX#Kl<r;cFz5VW)oU6YyDYRiJX~MPA6nYw$bSH%ie4qR01(WKYp04VNyvMFZ)ob=W zpbrE65d+<=4_d7P#v_15Kmr^qQ>L=X&We-62!brCP;G%T%9ToZD6D|3BoO`d7;F<V z0R@6a2|@Y7u$my_s{H)zd!5HWJVu(IB|6WH=V>z?{=~L_e#03fmGZwodCwy<)Fd;L zpqu{qedNn)#sdv>4~+)_(qAP%NnfwHX_5s>*t7KQv+iM%^W1b2djq|htI1Q4Fjw?u z8T|*n{GW2y)~D~Ak~MG5KW^xT>H&#_K7Oo({3UW1J)rOAr_b+ML%sCFrB@Rl`RC`S z=#LxexV{zllSVG%-0VGfZF_j~*!7rsa*XLh`AYB##o!McC8JRHYpPha9dQs~4!|ah zO!B4MFmy5KW?7ZXU^o8HHk_yf3wWdh+OPb9eQsdiHLxF*uk!PxOjW}e0C73*8QOQ_ z@Q3LmD`|O_bkdrvQx{Hw=|M?ok|!2zW)}tWhKbu$BJLa!cTgG}%x}QKiF|Mb%mqq7 zi`)IZH`2am=B>So9LQMHA<g*QBo!HkXd9kw_aSZ>_ln-UJ9_iz&LzjAG^PVIW(~YF zGy~c|5pSUmY*ec7GCnmK3(;>ge^4Xn8t8*x@5|uS-@0N&D{bvRNL%60`W*JSCo`%t zGO9>7TV_z-rF$Jx-wN>6tt(hfS@v7e%B^T!K_3*`iY@7L7q<cL497-uuP{9>G9|*M zjj(_Aj*tsY7tI!jV<&~ltNp!vFL^aQDfVzwwIXcDE@TR}!fe{rEfxhwnQh!wyl*sT zGxHZ?Rcin{V6Ff?m@gM^3m%f>{@y7#2QX+0LOS`6Cj1t!{h-}@Q^Sm&DKu$H&y0r1 zcQ-{3v0RstN3oQy8&we>U)gfWahZ#L!0K9)z|1;2bxKdq6mm!1%>I_aqdlE8Sv>mp z&Yu33oRTVTcvW%UFV7Bs-^0-R=3uP7q721YU^mkO4b<eu-mgB?jZopJ(-)$QqP>CC zwk+R(7{C<eoVgQPBiC)z_MceY##OYfCSnfOXlWy`#@!+m_XZr@j=&|G!a|c~&mN7* z)wX(d+n!5nCDDriXw0r--yq_CQ6{j6o-SZQ85;z7pd7pweAg2ps0fI02EG=9n3+z< zY;{3A5Z=x>N_SCIA3mDFA0<y~>}7ThdHN{bK@^kk^;+F7tMA^)3Olgsr`-INYu=!D z9yvlLzp?IGIafmNP+P5PIyLgb>xOsl^;yyMT|>Bh_douzyM(<LbW-QD6eENK;M)A6 zT>)~s8wJckTJrK4g=BUXm=)lw%ZZ5{A-1{#A!72wR1Ic;otKw^x9FU4)6B2`MaKS1 zF|lzY8PQ4JuP{w|{KJ<kXs}%MFS`F<((3O?;B?B3MWs&e4D5+IBA4n}o=g_nfB(P! zb^nBkcjjMKwkguwe&X;d^W=6|6X!<evoolKboU!%dYL0NZAbs7xE2Q1DBMTuTQU0= zY8ZhBLCvCHKs<b92C*Pv5`Y|5Z^Q+NqGgy{bLQpXc9wTHTJLImkSr7B7*fN`UbN=v zs2*4XKS|lb8y8%v;#{x*Sh2AyB4-vaTKzOMyiKrw#m5iOwSlpYN3UihpGNKf^>%~! zNMQI0ni0ILckmbrXb&85dw%zwBTV&JFoMh!QLlt8`#YkCl7NfF161Ppz3<3n7Z<oh zG#;Qc#l0aS$_0%&hn(=u$O$h8cg3pH4vT6pC8Ax?s%Kv0&|I-7Kuj>78&wDayVwac zb(fYoXa@mQD5`^L8r8fb_3;1^8ccyam?~d7pf;24r~iKD8KU`X-;)Jf+cgCRrP-AY zGl-ugefOO(qdse-ed+K5ZTptO+-H{bzq0hNeezpaV!kt%`||R5X<mI^UOk!Lkel0( z+u!2N@_4d@wV7UTrkCIGEI|nx`cwbx49$WqndyO)nf3B{^;TQ`%*^D<ip(twG#RNg zf^;s~5}ZLd<gt6?aj&u)0y#x*{6Lo1o8?`CpEpa?buAS0F^3`RS2MdDlQPjQ%*j-q z%@#5U|42*DdIY8mNbe!HxP)!O?+da_#JIwp$GcfW;?57dncox2N&?F0SF315W$B2O z!R2972l<d+7N_2lvUe`A;A|hWT@mX#$$1)CMZdz1AUV`OyEs+ak&I$zH<u;#?Fo{& znQJ$7$QCw+=waOM5xKS!#oiMYlZSF+O^PY;SI(th($|^n&VD2h_dEE=DhSfze&}3d z8B*MpRhO1g+SEFEXcV74uV?{GB!cEh^ige|jbH})^WhBwQ@^O#gme%lZjV?If~CB| zITVFJG*lp1n@!ZiuCkNSBR6GppJ$BM>C!SHvHTlbwjQl7rw`B{v-t`f+E@2!!@i8M z`a`<(jL4hV5SCA=9bezCXec{_(;2P0pSQerbnED?+5B1BpD|7s{<Ptfuom}v3+E1D z1H-}a??4UVOvH*yAY3vu!KRfc;tc8p(Cq`-fiSdkpodJu0?i!M4xrR#YdNu5K_)My zHeI2)I}@!k!gOcHm2GR<l#zwvs*D{E;V@U$Rz=DRoGVv43rJa2TU%A%M^$aYb35nu z53wdf3+HfFwzpS09fRwgbNMI56ZGfGcItH{7{-k=B)G`&_R7c_*7Q=`XMiUH`~zXp zVV`q}>jQ*~KSBhFgzIh$af3zw_%7y$K!1n!$re&csIjk`;Y=B*C0hOwnwJX7@*i&q z(??F&1RYou*|`~F=HdJV>XXmj{TJ^=cFZ%3FuXj}kVGmNYNKDwGd3At9%>BIitW*N zzVzKV$#H}h+;D>z`0OK}k1o2w$K$0b0|k-hMRV{(c}GZ6rd$Lli@uTI#*&%qMwE>F zkq-RkiYvhXkm1tX`lbtO#htz%z%GG7^4gc!y_akX`_FFfnIgSyO3&HNviUtz`le6m zk+%OwGj>H3W(VXW9jl=DD_ggOXGGdEK&%-sGlq{r0bBo`!TWk3dCGL+_%GUO>F*i4 zrIhKpnfZgQnQgcLeNUt7J$M}v??w4e9lTG%ta2u^a4=mQn>9>VCqR)e4lq>u(H<Ri z%wg{M7<k6Sxji!9fO?L9@SE(~+HAIn%p-rFQBOMSXAtm*(WL7=gxd7nS9;r`k#xk! zMWpD3o}L$aWUkumui0f-eEkqBs{Bw-C+k|))tx=(?lf4fhL%N(zU+Cvr|0?T+<6!^ zi*n%C9b(u3g+22bCO{{G?P6~T$r`l}{#ORl%MZ}9s4-&zpAe*>XJs=RziOD(|5ev^ z4h$gv!zS<xHqym<GtzzYxvdz7H@3oY1J{5J`Dzv}+|GaX>-OE^UC#BQ_11GY^WEZ* zbZ<Gzcz=?IxQT<XFZh`ckO_KX41#Dk7+3?I84eqCHDJz2x%hP*<38g)g9QMF0@0Fi zEaHebF7A^q(G<WRWOf4l23E(|zf0zjT-5S`27r)@&<LK~CGuck6F~%^$_H=2Dyv&i z-H9c3gHuWw!q$K@Kf7rLnG$(~agB^al=qpNoRQ&if_KC1%RboEM&Db%i>;eXO>x}A zaf0;One~ietgmNGVgD;^x!4T{=7-~ko0{5oeXwj7-93EL?hlskTIZI>;ZDODoL=O; zb>PJ=&H66_qiGOnG8koS7xXf}TsMXUV7<mrAC}z$Fl7XzMZ{sH6~A5!r&!Z&wm?XW zIIK*5C6d8~D6d8NRvjXI5TrW*er)3W@{N%C{(lET%rn_<z8xp|4X6VY{l?qzzlXsA zTO!ST88p5Q(Kx8TB9cqIBl5I@yvs5{+L_(T4e<rSEXf7Chp{amoa_t<xKTY-WObrE z4#QXZE(V~uQdYU1WO*_&Jali8z4>;f&ypFtp3Y=P$a5+7kvmM|Bj;0U<0fS1j5Y^| ze$A5r!ib}*pTQ*lbDxz(KK*Ft&X0BqcRiX>o#E=DkC`02{|L6d%Sm;TD)QBglr*Wd zAfx%oH4(=}SeKq*+x-WbsSB6y{3wdg26%+w5|&M-6JLxEhQkeWoQoIddn(2Va1G`S z%Rx99m|g==^P79%gOngE?m=$XHNgFnMf`}Ww!N)oL?YVox}KzGo}{g8Nse0+6Rp&{ zo2_<pNJ5%ujXV)zs}T2)xYry#*CxDwUb2_$?Q2-m1_p%t42!lk!gKAFyUWf?%Ep&= zvH82^$tTyaAK9CjmiVjxyDQuKzlE~+IeJ6;s`mC(?AOlb4s>(_eG&_g3|6;cw4?+5 z0<;c0%LPN!fO3&}Fae`q+(QGF&mr1QWTGyi0)8MNUvyujy_aqaN9wDG%*I=144HB{ zR%9>s^9n8=IJ0p@t8^0^#J+{CD}c%1RVTv4z)EQKb^IB(xXs7f_^NOpdL7&D|IXL( zAntWtL-b5F&h+=NZR%)UQI<xZODkK^+SP?V6SvFKh&VFrxVRm~C!!ykNA$r%N5J(P za{@6sYy;Uu5fIEodU$TI4I2q33XHJeBnzrF;0NX>ADPF(18dpIZiEdZ47g;+N8%cV z_D+Z!AMGd+*ZtFel2)8JQ6Y^;!4%$cGHygc+{vm3PMQ$9b@HC*N;a;Wg%ZcHyNGMz zA})jt$HjegYl*myJow{<yPS+KYKl8arna%W1oBKL?~Sh5xFZkV`FPl^UxubS5gH3v z1ehRq2`=Y<h09q+c4#yZO`PioRzT1U(@M+ar_`DH$TS0QUcGD1i#Lw`_v+oVu^Nk` z+)h2$zs#N}1nF_Qntl`%67Bqh{VnVWw5C@hZeB>_Hk*00G-PPTj=u55*}Lf{W3ZmH zYc=BkBGdGll=`fPzW@G^)i=v)V;eRvdw&95TQrs%2{HY@(cyy~&qxz^emNT+#B#Gp z?(V8NCz;Wh^~WWvL(BKyf9lHqRh4b@4thK5{^g{zy=wMJScHved+F-X@>BcwFYjMf zg@)+l0U9L2jDzL<1f~Q800*)F@&RUvg^)uG1m_zRCXjB@-R*Da3IzJ@oxjJr`_uW- zi2>|WLbj9c!?I!Bw7c8aH7wx6`TyBv-7{Z0ArR<l=!e?sH8y@s*Qj82dlpNX%CsYp z(TbxyOH_qp@VLR}!m|7uM;k*YdQUJC#+-pe<elDLuH!$C38kX8q_1M_Q%|jhr*=1Y z_*Vx+J|O@&dP(8|51R!XBC&t~z<9(|N=!G&zMctMpeo=WqWb~>2$TbKL#*lono(cE zFAXO1OH1lAJi9y@nDvUZGI3KjqHnJ!LwY8oFJF45Pa!?iBehq}vXiNLJ-x#|yRz>K zcV?!W7df2%?bycN6HmA^$)aP&puAGjpBcP>)(!C5tacw08TAqu`w0v@E|IFBPy%3s z3W$UcM2~s$@W|nYGLU;o8l3uCxqpAkn7ODP@zbfulu<>T^kn;*c9bEH$+p|gs`Y8o zb+nZpi(XW5sbXpAb=O6da6DPlP73WN724C6GcOrW8#0DYW;x^rWNz>bh5=5Lkz#`f z8t!<|Wl@b}8CV;lu^y~?24lOKuZ<|$>X`0X<at7a>%2iro|Ne%@STkzxyb!6a5x*? z;*Y{>RAew95mYetmh>KRxs*eu`RYqABPTB_t@lkEqVyylzQ7%ct!OX(Ow=jCONOln z0VwKz3&jPPWSr>5kN&e+J#A=7dRtRdTYAaRY3gR;95~hO=w~K^Kwi`iftrOsoxfZ$ zN>~QpXuvre69M6IgL(!fLtOAL2@9x(8unu>p?+WoLI%N_A2!{gNHp-xd~?vS#g>v2 zIqa`7(@*Fp<{E$Ga88O%>U=hMeLZ<%NI|459KvrXd7^G(@L6FDf~UH=q#k-AbF%I( zRh)}_N)ugis=IWPGnMrDim>JC$X^S`>keu(2elImxvFa{;R*tFj{|N^Pz=MI5aYW| zfGGIEGv7X#^8if@&*F8#Psv<C7{Hk0L%1-SIRRQWSX{#^NylQ6eD4FK=zrGDnM&3< z6lP1M<4mi#7A$wu9e0nIwq=D^t3@RcUXy4lSMDkk4$^O1r_Oo&ykz6GUrwU0n=2g- zg+(S2*XQPxloX{^xZUgmeNy7g%O5$uVTGtSiTW=Ypv8nQjVLI^qe}r}fT19WdK85Y zPGzu015+B96_X<#sf}|($Icw&M;tseX<46Q*(6zhNruB&)h2o<oy!wfZB<T3MoE|S zOc#If;F&WA=bN@n-o1PB788x+wiuMqd_2MEFZ*#rE8CTZmfYQ4U6;&TC+ud|0N10> zJRueb#e8kpTxA^_&07WL3vrNQOabFwnCs<W+!Kys-<Az;3&xq1GJPhCh=Mwvd0(<m zv{_lf=K$iu35p-NEy=)5D5ddB^dLCbLuw)1qwD4_U-L0ir?!yL$7`0)MKs%L+FF&F z6Pz(Mt6e@i&TjYQrFAIHu3}Y8LLzT1EPx|qC^(If&a|0)Ypez5vxd70jUHFFw|{=c zlKbf=JU*9xa{rQw5%cGdINOb-7v-R;HZCGb_v~ZOS@SVHyzd_R-Xa78t(Nv?x(n3S z(nXgS#l>;4M!nvtvv8b?m*IhUEKyk0#SAxwV`3{7&nyD~$7$6%o7QYmxGM^gbU*Cw zJHM;5ySsDOg68v*<^>Cy36`kuaE2}gEnAAru}l{XZV<hNp+*N<&_e@88Rpk&K>c~I zTM$_Va0X$2hLj}=XEfJ_62(v!518Y))gu<V@?1eqv3>82OStr>){+~|@rq^B4t%?c zzDwUW*sgg0_RGOFySUW+IX%;dmL*%!{i?X>%WvLt%hd&Bf{0h7r^(;f`L)WB_lG0b zB#o<UTl-XkS*v*@(!J{21Jh1vizl_F#FeRTagEw`|Bq`QAcnDNsqXfBmQSnBu?yY8 zQzBYn^Z+s=f&xeIA3&-G2LZ!6^EeiD8pSM3#m$`f0O_JhHP<b=?Fy{!N-!@+p{AK@ z?}<Ddd4wq?*5AA8ZsIEbCabnK>ziWH9`-bOJbU?2<GJe*CMM-xrTeDfRCeu}8MRYt zp;9I_KGT#d1r~jY*ND=lHx(mfX3(R2QP;=#1aOxOKZ9}c1SR0J{?9iQyxgRbcb#mh ztZX@X*GPK3r_&=14>e}fjJ0=PeA(`Mf8%BQil9+%`ReYLs;ZW|ziOdtJRW+qbD59s z>x8l<t9I>-+Rj?&)=9PRRP=qH$NRb^!%_9-3I-p{4#4mlv%RpeMa(sE0*VejqIg&; z&Mgt`0gUhmOvkKsmrTJh^Fy&({@}+-SGYZ1WD2S9R<}B(DAgsmHuLT2QwW(FOoCOw zU8a+J-D-7}N3f1bN_QY`Pit+Kbp$%6`GPpl-|&a~MtCJCQ^u5g@i>#7hld6yMG7$D zj4!!-ak)(yghj%aBDcsmJPeQIps^r&sazUE<VsB}A7?MRd|`=2nc~mQ_4hqI<w`Hz zJ4MuHT>=rm=vN)|R*WNuXkikCFc*W&@E`0M{<NXU@MHN=`q9yHLH38g5>d{vbl0T$ zvaLstZk5fS)c?-!zNt8W2K-)ABx4u^Ac~wxf}m=doCv=B1@;e8MaaOkg-C(G7V(JP z05}g)k#e5FIeg*)6wE=s6oGWgvi+7KyG!QG=}IhbP3X!UombFSb$om&eXOl%PLnJj zi#GaL>G<PSZH0NGbGlrurHNfRNX%j{vg|999$QO)UfYVB2ztwKXKq(wYpHmX4Gpxf zvb~fHo3xgUIQC?IQ&T?sJ$Z~CTsw(ATH0PogoX`yqjS3wN?Q}Va-G91dcm^4taU9> zinP)XUiVo@OsEacBw>_8Lk4)pEW#Ggto=DQQ66Lor6K-Cm8EiKb4a}ql!AQHEJQC4 z^>GNi^FWP4a`*0qPMR4Wv0wzJ+SpF6Rhq6VyrY1q3ktrE6p`DS=eJg8bkwL+9W{~T zh=yK?lk~@eg1!RB4Q-nbZ{d347VHV1X5}NvZEe?Z*A*1dp9*#re1C+@Zze-7S7%n$ zPIkuCbdZ$=1tbP%`d*lLjh@b$wq?sS@w-mJ*W!C{#Ptm7a&r<ngyM^QaVlYB3JafT z(*cS{6t6hdnWtDLs4e4Wz|Mok2i6qnD3pRg2VrT}xOtPB{-xnG{mdrP6M3xGDAj0F z4fHRmb6knKAi04&lPyh4T9T!-r>)K|h;gK^&ZckETUm3W{H|$ARRR6BKDMCfr6%d# zA=$Sn+p1`5Wjhy_uT3=?1kHJmE-huc>sESs`s%DStvk+{ElbZ!io=qaF_e3&+IHvJ zKPi4<_=q_0WeB*1FV2_n#bICRh7G_*ykL~MAoD!L2w{jWN&;b~Rb|;NQ4tR@iY(E% z!3|b{C6xqqV_b*uJ+10a@skq^xGQH}e(2iiB_@SG!5%qknLmPpd|M(%?FoK`sbu=K zhc2IWCAWZ_@TYXsDsF6J-J$0W)isXgVQ(>Th7{{FWY}W=72Vs`RK}%8wx^`gZjl^! zr=@UR>2Z~7wsl|OUrZl;#+nlO-oQyxtlNlUO8aG(wNIgEwxRNmaQ^4>v5JwxbFkr# z6m?s(Kv~#q18|xwK)8%uhE<MdlMzFOFexxl1Kge%KO>H}oGJb=+F=u>Vn~iKQ(Ohn zEsCaz$re35C_|77cU88noiu6f(tUnKjyyLtwN9Q%&z3D1QF6KG4mZ>)d(+C?ceuMs zMl2|!=d$E=sj0d0T)BT=xh?RbPNmV(HjP@RdC_l=e6#CMEA%6ilRdI&Yuj*Ba_26+ zCpmefeueaZM70%7cyFH{aFRMyuE<S;Tc@II9Py1@P>}PDzMt`r{rYcm3Koo{AB`)c zXXweaT!nmSD#^(9?|W~u$2?VzU~*pGY4S!Ekn8_MUrqAr^&?~jqF$`;LwZHZ2)*8$ zM8YEP8MS|CfaBT#GZrSrvTQ<31<r$Gw22k3P)YNGV**mHA;*b`+)4?PaHG<H28-$k zUL0U6pw?whD?kAGkkF%kT0(Dp0!^MY`Y7=oE!H@+uAGg{De+!;?!?S&#%L_bsm3C^ zmL}I`Uy)tgd6l|r#!WZP&@rl_OGr&kSmgfluDape^P&lxWuUk6Iw_DjJ%f<<qN<Fz z!(-;uX4Bo-wbi+zJ>?4A26U+5-4!>zxfNHXmZskGW2!0gxo8UqBuUQC1-@GX-#z9R zP={XVl*~gvL{U5Xf`#HCy(^E+0Stht0X&Ev!XaQrU_@a4-`r+#ju%cKA>;4t$amDE zI0Zel@vm3aSU4kRslMvjjr0(!Six~?kH*Kpxi<1oP2^#XhHKLNdW~9Mn#e=qssG#% zt{^iS`j^$ubk|L3kjopU)VXKY^VikSym!^Ad;2rTsMTXM-;UO3MytOWqtT4f(BaWT zY)37g&_LGvnO-ehEbBxq<s8OGvJ`!oW=NdLNcLc08kiw;2J(y`O)kszV}gLiw5VYs z{hCZpF^4`#nvg)Z(1%a7*X>BZemKb*aYOo@71QR@{h!8GZ*92$hIj1r&4kwA@sK$M zA?9P~s`TZFD{OiXxrbas$m}hnmrsAUeCV+1e|223Wc%EuWXVqkPtwFM`^VGA+#2gO ziObW;E?@+vH;TrxrlJN+J#Yo`;jmE*4rmfY&w9u`@KA^<4m^l0N4X>s<i)Uae4Uu+ z2u2{55yLnDzJnE^6_Wa;9XU2H-N+OQq<i<LpYHB^uqr><%Wq;wsCZ=eZsyK(_Lv(f z0+2W^r(;<IJMds`T{1iz8oLInK1)vx`O9P17CYrQ$UI9M>%#eL6HUM0f;*or3CI<w zC}hZAcHp6*>`^;@7&4lCE2^oaQMCi3Zv)?~fqxmk7Y>$kE|~9QlM!qQRuCeQ2q#L% zJ-z^^kSse&Pu!LA;T7c0GqClXk-+40hz$E-6P|vEKKjEZ;naQf@K<+ONcnefool3r zLyen$ppPEvj-WNn?cJMxU^$g9dA5`Jg#m9uu4YIXR;cLX2G9beP8`34{^S!pN)YdM zt{a=;RyRtxO4tMX*^>Etuv6#6b3(LL<ZxqX@FhZEQ!b5PX1d-S<X>fGGyOohSADbq ztVI8d3gE~!=>nk>Nxcg)Ul}kQH$YDOQ3@f7%py$z*I%*b6MBR`NRNE7X3Zz?FKHop zpPa4voj7aGcQsjlwX?ZM>Ky(#{ou3VPH9oIb1lB4v5OmKtFqfU>*#gsM_W0&y~^fa zh1}-sez@}`&(QpKxp305eto<&e?<J~1q(*UkI0wClQkkVB;%&I^@ItyC2kxP<(Pq5 zJyz&!;l}457#Riu`ir^+iA$!3r=DKM1`K^5T*-}Rh_i3{ee{iwR<HgDNvWDi_VLxL zBgg57M~@Q!(IuiO+7Eee)p49{B00xbtvXKMxNkpwlP_kRIk0?|Xx+wpoIi6Oc`Jq2 zB}R#ZX;2v?0xW`2zbnytJxC-(M;qw57-9(`dv=trGj|(B-AA|I`hm1BE49g<o+{0` zW;|zaU)SEg?yO6lk+O4$EMT2svB_$8rZ&Y~uTD>moWq82<lOVOfB4R=^q@Lz>~J;l z@vo1+`rOJjlP9m4%m-4NRLL}AvC5pdm`Iaj(!{G&8?h0Es{t7x3vz3jWC-epNlfTN zW>I4pj~`@vK^*eJUeWi4eV6DtR7zqo_aHJN0M0m|B^b1tLB%QB&yGnqwXV2peE7M9 zvNS<pX25xLl(2Jd#eAP{e#P9KE9BOD6`DH_i-w^-1*}J9t@NO{C$z3;-Ba_eKhqO} z$=l(ayL0DU=7BSJXF*O*!OpoMqU0WGT@i7-raDG%5U&)k6SpvLFX-?B%%*H&mQjnr z1~>k&n3;=BRIpQ-1OaX$3oJ^u!0H2(FtqY4Z*E=Dl}XA%VMjuO!%<|<APK+F<4KRl zO)2a@IBtb-@Hw~|zc9*7?kh|@=84zj#`ixIpQq9C`ovFvsl~fBvtUIl->d^|#ykFi zI$&$T&n7_o9`!Z``8A;i2J>$L3^A1k!*7NF2QMw&T_iMQ^OEcap}<Iw^orQHmx}A& z*CR$^=PIm`Z-oAwnwp%*<ag=*OuA5<l#OIlCK>ZCvBT_wd==oM7YJV=PQeOj9gUho z>m)lQ2PDq|a%J##V~KK$;S$HBd;}&S3%oyrM@Wx6n1JATq@hjVfU-q(l9+I|4Ebo` z>Mn%Q2ueB76s+0BY)f29{XjuXVSuCTJZ>%Z;VD6s@?j10!-xoB>O5p6DnqG0mf@DA zx<xA#@)*1t4~7cMCmr??eS)58uc~jpGdX$MRcb}uy<}+3&eYT}U0v1M;)TFIylFy1 zjZb5gYU9+J>;+>+j8OUVs>ufvuN~>rIP7sssY{wy8XGI<U0O|CeySlfdeY=Z8#(MW z6lNFM&1%ckCZsu^Gpa}SY<<b7pXmx(R#rMkChP2Ka%vsvRVgW{9ppIqcu~G9rhloy zQL8pAePB&d_|-3W4Jph;F`%YprGC`lUHNL?xrMVgn~Y1rR9$9EN~7oL>Bq}LEwO&7 zO3(QMNDoFf6>(fJ&Kn5C1sw*JEly@u$ZgY#Tf4@zrTB)G)>V!kGrvS?C@k-szNWf- zS=;pbsod_+_?jW<mBD~omOZXMq|-@tSy{ENvL)?fs|tcndEb$)g>@N8YC&#Lc(am+ zv<)xz$$ml=U0*?=LIrz6QmTOLc`B{LX-ctsy!uqlBbo%HVbaQDJ(jTsbym=4q}S=Z z39)i{&hQim6f{ni%B(SS!~MEOT}(z&ibl;V?IyESr)2iL^NWE4=Zo3|!~?>oQp>7v z1+)sd9|PSX=!fNklk;LAAUGDrgdo(q44F3)cpH<{%6LUx<DyERlT&3_G?m2-^0djJ z>7zTUrxeZ%Es0C5)9NyJw5*-A^`5B+$F`{-(Z(<N_q)%%)m(E$ZH`HH?Yk2WKCpM9 z$~C@WxUr4%W>$^QDp@$ERG63D*%B`14ezHq3w=pK{NtRUa+=ee#ffzWZ9G_@GFPfz zqttL(D}COH>{JdHa%5WFJ{vE~Iq>7wD&86xQ*<{!v~}Uy;$gFE6Qg`sw1%Y)@v|wS zZ`D9PRi=!F9>MC*b6LzT6U(3j1-BaFC<2}!f0hxSO)MjbD5sn<4izdv$)(>cq(>GQ zO%AdH8gAM}%=DWLZ;^#WzT+N5_ucZ`OY|oC)1JwX{6O*!Tu)!Tsp$i<?D$pRAGv*e z_xto1Ka+OR1oA&*yVGbgS-;r0v4^|jc2oe`a^&yyy7M>Pj{aJBco#|e`N<iNjN5tS z)Yb3No{t+gKTpV}y(InpYZ+c(Hn!+DnL!U)fDH!TT@uZh6n%H*_YRf=uP%iBKnF;? z8VH7w+lK|pnp^~FHpB2=vZBODbf(*c{E$8v;6HwYEFg-VgP*gN{<K^CoXEbkRUeX! zyDxic{WT3W2087~O`27_=$;K5%I;a}T&AUCk%ZzZ)A-4Gi#E((dHJ+*LyY0{HKafG z+plFUw;`@;^HKJVlC5{3PQ(1yq8}MaU3Sx-=&=u0W>!rZHa<>s-;ik;!j4<H#XUvo znU#KfE`J5xxWBl?!|&K3AG5Z>s1C-)&Mo-IoS9_ISKnVcz83J=HKMP{KyPUI!I6~s zOz4Gj;&&$ih{ZZ5NLP#G^hmmhr5`<&z?*_LKYD--GV=Vuwgof@&4oN5=3RuHg8$?w z8|Paa*FO2txs|U#ia5P%8+_;&zccxfb<0LpB`CPad3uYcpm9X{jIl}cZyNWf4U-MC zCvxp3dN#G?mRHVJBBxj`=Z@`ukN&^==!0LD=8_?H*DYUeSdiJ#y1L%1UqoVMEj#HM zy7~3Z^r!b8zOrf;!nNkT`aGiO^nW_@Q%dESks~rS(ti|=Of#iDQJy#T_Rb{%mtx5k zSKYAc^ea0?apyR$>C}`(_W@SAzbPBGIn}=}`>#pkExz0(qD(RfH!Ld%^F$i#D{=vJ zE_9Z~4Uj>JfDr4cXdjWF+;X9lFgN5v&~37r+<fj}=X5=NhQ7D+(#~l=xMo>Xl~YdW z(-g`R$$9IS^QqLw`h)!ALp9<pZ%)M2_<#3a{<keF$N5Oz93tN}=|Ljz-^uy{Q{(jq z=qukJob=1CNG==Q*c?!En>U>}aa&{N&i`3>ZL|mcQ>=||JT~Xr`$)$7-Pyxu%_!V@ zgzir!-4qdxzvzQxSR}x64EDkQG4ojtGL|ra|M-tj_qQV%9DcHv|7MCup54En_U_+* z$voHLO>6M>E-^ck1nwacFwS^$U)Y13$%8NrL>>0aIFy044FEEd#R*Uo0E}6RFXa2b znam@qJMN&T0lu>t2;XrBs7v9eWcf_Ke<w+qK6GsH=Jkh4R;-y;si7~XlVLZ#(9dt- zoPgPP?|zfsJ{Jz!hkG9HzB75w0-vnqS9ikQ#V4G-<>a$ub?r56)qh?R*D&|7g%vd$ zucbeK_2%|*Tq`$q&fO&Cz3vzHuAMSx?!C!zS(Rc8;~;D@AJ`gEyY|~-gULLAjiY5= zjZy;2WY!|NiNVCu14|M6Y#=!(JcC0PFAlPNXW0DxvAckw?;S+i<U4oC=#tb_EZpzB z*P}Ce%zkN16TR*=!I?g>baqd~m9AE0dKdog=$`rU62yH0nM-RFu7X*cXNBEz&QF_m zd%|v;N`T84dH6}aw>Z`PFc+YwJlQ#(`!M408@qt(lf{^kI?+=2$EX#tAy@=M?+Xe+ zLpWgY3l<(z+HVm;<(SJtNdCWc$zVrZq+aBN+4{9Q<|O^fMbAgR<%ovs7{ejK^~<i^ zAYD@)`rWShO<LCfHzoZd<}xYYzDP4`E|E;-h;3=#&-C&?%b$GoY3^iIS=GA-8Xml4 z9+=^oi;OUTaK@sF0%KVK2G9j%@WEUwh#@F@h5(eFD-ZrYH2mkMM|SH*v@aQ#yznpc z8saLJzjkfz^aT@Z)#sFN1%}n9+g!Q+kU{&hz5c}){<}ViOzzmyl&!6wf75l<olop+ zw}eM;Y<<i<WW%JI*;Sd=81m;AUj!KZst<Pl;XaV(Lx*SzGmV19?1V7OEXJlVWEBhS zBao|@|0zVpyci}^MK?sDIK*>EFf1Mkgm|!tY!hMyt6Bz$0A@$#!%zh5V{sBB63W4I zu<_sY=?;a_>@eGXu{ImtQS0C`EULsWj?}4Zr1}J6HfdmOx9~PS);2hK85}kXZ`Z5i zkPZ-)NVEnUpC*%;w68xBR(f5$#vN<q1)WN1c35;Ooz-gp??&PsBG^oH)VIdiSffCn zMd658gOOg7>lpJ;qTJU_H)&#7k%)ZyiOy;?@njNRYfeCY+{yGoL1)7$B;@S;AEViV z${uQ!ddz&2%3^9E8;o{AW!BQK$s(hL=PgG14B3$UD>`(I<c>c)q9lBA<k*m4XaYet zdV|a85grP0j8r}wsOWHs<`f13A_Oo+lPSzntpgeaF@OLUFdd`lun+GIG2l~-MEh?B zmB_w)txh{ch;fp5aOY+tmyT38X0|jLxwLf7rsGmmrKy_u*AM3DYEa&SoibQZ9hzwd z#g$#lrKNEe1Br9Tb7}e*`UP?@t6PnBV{3Fntug#}gWLZq*Y==0#yg%qYPQ+Tg!|fQ zu{ud2{j1Yva}q!O+-bvp;e!q<SbM*tZC+xGCyUHrtxl3k3o0PfpGlLrUjL}mYIV|Y zUpFIxkeS{Ph%+1ULgO?Bqk0_MYGqqUv&ZroUZiQ&z}uH_T>lrhaZyJpCN^TWBxs7E z@<He^HgiJ=?J>Cjo00j>mY8UZ{KMvY&z2Z(<~%l6<bUppGoPSMTrX`R5C3;P8u`v; ziv-v$-*efx4{Y(g%l014CEKkD{GIgQk*&Y}{!-|z{`mJxqZA!z8#Uc+9wZ?&L1h6s zk8wMO{|e2}vwyv5e4*7^IR2)=jZ+8ZA0(t0H~-tfxst61|GO_gHDvB>x9+|5ws}K_ z%o8`}Zl!mO%OzX#yuuT7Qe2WlO)i@OoQ?69yb61-6WJJsA$QR{WVDn(z2FV=7)RJT z10fNuf@_PSS2HrQz`o6r^{^-p$m3y_%L<_jaxW9VZNXfVRJ0bboPGX~2Xmjr1+j7* zJR0XRLdPr!K=SdhE&{j9<$qs5|FWe0uueKv8kjPqeHL$BHL-Yxo1e*dRd=V4t4|m7 z*Un3yv_89npC?Tp(vWsXo^QpWzNc?$o77m}#+O%CHZ>I$jT(3E0H0Div?5P6M>TS4 z;fCvau3NHcK1r_{UXvr^n<L8~CEcF%_d~v5T&90)xnA4SnUWlE)+D3G`%fbhOQx1N zoy8%fah?<KBo`%U#@5oCvpVnW>>M$o2-Ot*Y2MtiwHY;Tr7k%>zs|XC-m>eiSrIoh ztpc8JmFePK`iE?@@NZblCP?N=Zk5~#W?r<qB9Q{KkPIlxA>A^S2K1d$xhYye5eh4m zKY$pVABMIH?f^1$rPT(*t4(HO{#Ljejx{`d)q=<&Zh>79Sd*zzgYd7#4aK~==<!4- z+hC)HA}klKpEkAw^{cpz<)E!r>Mco0DM{hvn~RhwHnUYx976<>_xOw-BBvhdd`g!U zpOzCBG`ArazArQ~Z{$qh=y`&Y=VUsQD^TFlZL`Ms%B&MJRiR;%m)X+es;?TC-*3`t z7iS5oIMW243(2_6It6`NZPv!<6b&^oG9}8l$0%wGdSYbdN}V#MC#Xj8vJv8YIPfkh zCET*Nzk23&J4!GG&A0rypa_m_^?3=^6IYR>@8`}aGg@+LM=o7oIb?0?wbK@dT1t4~ z%8@r|)HYv&%c@gyeEyik{L7MvJ@M`tWrcc8!kE?y6y9{pQwVnxXO2SwDXZGbkBbab z8#OAjN~=U_8dYmZp-1&anM#&lJx8HaDH>zsvoo|bOME5hRnOBeWH$&Dn1Rg<lnIu~ zJz6PPHS{vv+L)V)4XO)hqLkr0451WmD?TYsL8FZ-AQ(+p0ofAijZhR7m@%r*6mz>q zH!TL)b$rl7`|cq{agBN7>pEL!=167n{*s*L{M5Rg$;mQJ_B|6`ez*Mc=E_u$L4%aw zaq0Qtbggz7IYM5)QZR+Gic{k0F^*Rl9hThPyE8H~GIsCIGdm3mo_nf1Tv!_ex7Pfk zauwn4p`X6o@n^GwM{02%r32K&=u56jbr}KUoH-`uCb=a^h$%D_4eOY_ynDlS*H>rR zn>S5u$@R(Q;gsY8P8G}=)43_~^oX}7UK^@QwHK!34Q*-~8cHd$rw+}(cG6oT$g7i3 zSjjV0r$2XYLAuA8*n;Fr@M2;-#rX>8_U?v1Y#H=IAVILf$swM@RPGK1SeAq`cuFH< z6)JwALM?oj69ltX%FOCko6nF3Nr8z}0+_inI2b~Z0%GDVIpKg;QFs52({$$6#Xa<v z({#Z<XT1QRt|6`X2`|h#JHGD??p?XPrfhiF?<uIME-)C%0|E+mE`FPSwSV>Lm$r@M zLyqB@CBC3VD>qvF?t-*oas12?8Ohx7o9LOTw38S;`V*hVzeLgwEPnsN)pd2NAAEn` zrmsu5Go03zT{*LRR!yGMz;PxM7jrEUu6lZLQTBwTH-CuaOmeNwZ?_~`bqeHtr|BbA zL(v@~j}^@m!lOT?qpEc@?_LOA7D2K6GcYSE5Xxa>K+z)$(55Yvp<o%ZnV%g>#*`tu zv)7U<GQ`ZWig|Ouv<zJdxFoYxKxQ;{4BiJUiJvq!KRmgidcum!<Ub|K<CSKlvcf;L zU{NH<CZrXQRwk$|3XN1ok}^8#6DE|;j!TO-L-r$A4oy#X2lAY(wq7cc8toZzwbkWx zUUD#)JEVCG%L+(diZ7nNPCvI|!X$xrBNMb7DX3x%w80Q-)FK(YKwLcUf*Yh%P^pb} z{geEG7Jnko`P5pMCEb)OOU*9IOP=LTi&bmld1b6gH!OW+xZx4#3i!IJYEWiT##pH6 zKu-2_<j>gy=z$8%CzaTYJaP@fGyo01&y=r%I4P<O<qUJm5WfX}BosEX*32@1U>ufL z4DM-cpE>?YO%fi;B9xHJX8wpktofNJM2m^bd|82YMT<g^W38jJ)&`3=Kr#Vod6;!V ztoO|<{x|}wgoxfbdyM8;vJU|s!>4bHZ;HJ2I{m4sww?4K4@e-}KIR$v$pa@pQLCS6 zzvZ>F^iOBETtQlRzeZlFmKvP;n0mV*QKerLFSAx_-0RI6Iob9mk$w}p<G}urPFtjJ zy~W;;?n3dX>^L=)vTA*x$XV%e88f|d=MH1G?Rt;vPktru&d{oI;gnnzql+(0)+nV4 znbMH&*9bAXRGD(hkm<q^wPHG4ihg{Seodc?Jb7$*oJuQIzyAff{6SP{)jjXas^L|C zIp_H1_CKFF^XJvavY-)5ICs=8O{})){qB%EMr#kb-x*@pmrjrDi`A$d^d&lvc6MxQ zP3Iipd^s<7R;M~tC}|lJlgP#JNp7XZx3Fe(Uc94($X6NTb=fM%_K%B71I~ns@I<Lj zy2Pf6vnXt-X1&QG7~C3zR%y%|QlV$@H5cr0vGCZHM1ATRGxBSf`fTQj0(4SL$V&32 zhsf@qa<F^YwyXGpU)bJc_nk{iDZcUa<`?)N{N}ga{r<4-gHtwsUL3hnG`N{%5;)vD z6ldFuQ?{JGF|rnL$aEgjJP<ZX5OJLYaT){OFwy9!Xt1yt9EJF87z4!#2@iw(kRYZ4 z<`5Ia;SI|<ICnB5yBHV1g5t&2h_GevZxkH`yrI0oY#GAgoa*YFMg;J!pwBgm+mM*n zkg^K6nn^~?|8zIpDk6`Kv0BI2<!N&J;0FEdRr1BFub!*Tp-bU=0j~kNG^h3)Ie-*Q z<b$YB^}mF=ob!^Ldf~vaV+Vx#93si76Arxd4&BCl&?=Z$MT{Msh}=HfY8`Dy6r6bf zNX@2A&2;-G*|h|>Wzn#;*`JUuT8ZH1UdM!}t2Jx_1Ga5Bus^dJqf!BqH@YC3BXB_E zC*cd>VX4g!EHw~U2gg^dnN;<Ysr~)*j>vP9_Z(kNa<BY&&*Y+%b6=(uDY9vct=j%~ zn=Q7=wu>ybS7-8bqmBC`isfiGdC$kolZ%R^DRfk9?7Oj*b{pDVVb7|@8!&q00X<^A za(4LbAnsu>YZ@8IZDNZ;5huZ0;vJ!>@njG&ydauuh<ScOC7(|^&YYop&JaDxx~%>G zv-Tc<aa7m-@ZOo7ZQ5OJ-_;gv)vkJ96<fX9vLzY!Zdn#C!nlFKfB^x<7y-t?V89q- z3?#G=htLudVoFE?1VS(gd4wJwJRr2>BVcKV?|1I(y8FHV`~II-o_c5I&YgSDIrp63 zImdtHIb+?0^^5oZhw#Ld%MLtq;Ib*o3g|a-@g$edVd)vV;9EA3(ue0P{K426^#z;W z+`CwQ@n~^eC3u6bLnvPyyu-!oYt&7V-avh$s!LTnsJ?2np<v<lb-5Kf1R_)m0VQ2^ zumysma_3AJ<P&10_z^rwf$EZV1r!U7PJI+R0CG_TxkQ{Jm_YkL1#w{#Zj7*Q6G5bK zWJD+dEL5iCJQ5iiqLZyuL2A0?dzgr8tJ<W3cyWQ%5sQ^3)))B>|D$l?!2b8dkDS)z zxrjsA7cI+<8RNMDt7NuN<Q9urvIcVF##nY)w9my0Ir9^-(oCuBY$}zVeY8}5g4MBs zZA+GH8<5_h=c>MEE62YvmQMHhhmviLO;rWiK6OR@#DdN5?H^!KTR=3K#DJ}#pw#8n zt4#$}m37vT-tQ<Xvil7oYi(t9feA)EXK6vhk+S(7x6^BoOa;}IwIIrVdvUSduTK|N z>wQ2~7Rl#;!?h0#v}<*=<o0puUw-tjXYswf96N{aMHxB}Ne5G9$meL_%xB7j28rkL zs6>)*5*sxX^HkiWbdqmV2U*$1LuXuBV6HS;#%p-*()h{~iNQ|?6KAI!?14|^S&rP_ z28whQI$^_iYzaE#o$|`LeOn9ae_K{Uz3Yxe@0Tam#BoJDbvb+RQ+cKX37CokzYQEe z7HE8uymp!qDuoHJFC;3Vq$8~wNF)OCVH!fBhJ`huPt#yXy?_C*iIu~#e{p@`;lqXX z+V|x;|3#}o;9mkMZIJWim(E_<FnGc4zly`@0hF@QAXvQj%}oXM_4O6?-kX@Th+Y5h z9~4d$r>(yBz?Kb@{wlwOx(VNpfd(_pxoB4exPqG@02t`JlGC9IsTvW7$PUH~%q2L! z-3n@qQ9ykkQHN_mFga|O(;LuO@oc0)4n>NJBJv-|uTMU7uvufbg+@X)yQbM6D~hml zLQQVwx7XU4-`yN~{_v!#@4l&;bXc=a6!&S99Z7A|-w%<O-=V+9<#GA>0LY9dfMCKw zLuD|M)Q(+Yu;<8sayVFNj@{5AKlFN4cX!q6Z2Ac_C<J@yv3&&bm7rNj4`jH|@OguR zorjj}SdduNu|1{y&-XC@SU>M1QW2s$$kzcgLy%Y{D73I4{f*>Rqgt~(7Y)sc4?Lmo zxTCn3AToErDS9qlL5N+{iRgERR&vgJy52!O8}caX3{cPM`vS6a{*4C&h+%o^&o92p zL&lfUv(x;R+NTX)8$l6?XlXbWq*kF&oUD=l7~V4oe+fCwPH|^y+%AeeOBLc^Tksn4 zgA_;Zm;Y6%HcYw36A{c)f@LM)DIo5iYkPc-)_>iAPbnW7dyo}<oX9zBZ?PZFNqo$T zIxD~Xys}e3c!f-$En&m&ZkG(WGVHl_N)VBqaKEr%?(xMhzE$Z;<L7<DE^Rb~<)7u` zu->qtQNHXOfW|ZvIbQ_WOc{H=G@bA%5kHTi6O`;c-BX(crJs}Gh$fww0s)7gXKhj+ z_w{Ga6y4R6H%>NcXw+d8s?X2OW!JfVuI7RLD}uol`<FJkd~V?*`MK8N&T`K&<RYi} z(p_7(RSOEaKtd_w9r}Dv=k^D7jush>MWZ_(*xu>M*I#l;>W1LLW#_IuMjoSlHIT=^ z&6Np<f*DMEIFer#@5Z*+Wo%5`@XY$3eD~9<#hZ_l#YD9@knKEtxM0Ffs_!9;owMPo zwcj4N;e)(X`Ejz?xG6PPTVJr7>G$*TgS_(6i=eSYw<tczQ5p*f1Zb)9WHcU_I$Zcc zTFLK%G?p%oE{jLRJLKEP#@Mp4)RU}o_VhkBHCTE0v%(2W?s!WqWX^d_Y-L&5H)UH( z<y)JZH<z`Sm9+~SsQegQ#D_d<*7nJd7EUO*;O%{jnXy^EwR9^=m$8*i^O&=^`4cJ+ zhgFV0)l$50Esyh)_B^)7Dc>Qm<D~n}^j3t5<?V%j?1BOqvxp;Z$9;}?UVnc)X79Oj zho-=Dh&d)zrM_~>z-)b0HHkS6c?vW;t`zrX+?3G|-wCz0hBnI<VXDWcNy>M<OXTNW zwkWCbc~XzCFO__Fnek2N&{E8>&PPVx57C|+?C5f2L{JD6ApAV^o0}>r5i&Rp0>+qh zSGbV@g-asNDu@Y?JetuL=u_}F!VpEwGq68`W@SU7fOLxyOu9mHH`PMiP?!n19b_aF zd^1Hv;koee6!^+=Aq7_wt4w>3k(iQ}Qm~Z~Q)p%kMP)_?a;K#rs+&s#y$lhAh%kl6 z7g6W))wgqA*?C=Gm$tWENHqis)G-9qV7gz_Sj;xvyg|LbIN>nbFzs?WB4-uopsdOo z59C#!_u?it8?@m1mnDsbpD?i2n!>4tHLU{NFilw@ZC5{g(okAz$Tn&8**aTxR$jKD z6dlnPiiATpcfgY@(OdEiNRDgOX^^Y21iL1U!K|}d4S5#*aYd_fo4hQW1;{LoIrVMt zn%>?u;sGAzghHj<_P5lnJ6{RKV~g%-C@7%n|6<G1GqNlmWAE=IWaje@R)#`o@rb7= zJ4b@H#NhQ;<!yTDyhfq_x7X<%h1p(7&={(wBM-W6dX)k3k|mwGZ)PkWO1;N4-lj&c zMjx@{_{{-3-bUli4OVB_0|Ek<2kcqiVpA^8OJ;WtCis?!Uh;1CN+|EoF$Em|effaL z5-Fp%={?3qk&U@lEu!w-MI-z;oPmyon$(t3b;u06oM<CYU<;t#AqBmQa9Y@fe=raU z=tX&M4Z2tvvu9T5Np`>l?OLFZ(0`EYQCUF?0Ppfz39*LBi4mAYWrcnu+Ffq3RuSOx zGAk%)^G*j~V2?4)cdz|)b7$w~pT72;eE7)r?~z8K^RsKN`3y;Jcgs)G7SsbTu`56L zK)y(>mM{9?18JtWR(|7~mRYs6wKdl-9`gBoetY?Z`f~f~<%@RwZB|QT6GEE&rPkZm z+t(*Qq0_O+^6$L0tRQpAqUBy(lfGot{2g!dOBz`LF2O%G8IkE9KP^(?+i_m!lk2bf z^tf7g@;CYJ<qz1E$JU?Sw|vp{cw$pyqf*KK{yzB;fc<-puVnhYFiPu=eJ@_g-rio; zr9~xKtuHD6CH-DI7A?nX`RsL-XbR#3z`)jmwo?9zY>K)IQc}yTTDMh9)aKQ?wUX8D z){53z=G%VVcGiFQ-O~|1^#|8&-!A_YThs3r-+Snxhu8<>Kl|Au<By1*k3ZUmeY4m* z{?SJtkAEyqeFPnka$}@zW)$<j1pH<p{LxpzcCrz94=$s=87pPzYCz|OfNe$BL*lv+ zGB~F3^*9hmpD_#B4872aURWblAtpa6NY3VAjn=J&aAS=MRq+JgAfAAV1uCdoH@vDr zG~swnT{v1JLJ6pi=T*@iK*`d_lQrtg<fr6U|MkSs&=dc{q^^yXDckaA@;3RtZ+Gte zmd!!X>p8R~FL>`~>g-&DVb{;!dhC|2pE29!iB+G@{WM}^Q{_jD5o}gX+{{=*)hBdN zeuPb>gP&A22ycz%F7vG&({`@)Ez70N&QXnNS?*}p`mqac{KY$uiU&J?_TJ<24JX#( zRi$=XFP?ti2{oFSdo{1kTHoNHcYW8@56F*Z>X5EhrUq24^r1gK`VM11-__Z5^W*Qx z9gpAK_2@hAJlb`O{Nfrvs?*tZb?%@~$*nhzI4K`PN~lKc<SSIyAydKas;ALU05Y`M z$xDZ3x)G8qF%Q;ySuOO^U`W88f(BqtU31KuJ|UQO4X8k7P3535EG6Dn1;ic%A;_fo z!Z=8`A&x~G@kEk<AB6R2WK}i5yz@{5;DTv$QB4~4F40823PLQ;%L<MQtRJp-;!c#+ zHA3|gKdLOK6?*j=byg@#t<fX(LBT46x@(ywd3M<ZW3=oHv#F@Kx;rq*<5Bx6Sxd6s zr}lUz1-h$?i%jM-%A&>zWoIWX%evIN945v(R$kru%~?;*nlL5*qdPBuHeRy4B>wE> zcYc&VWkTM$tL|Ae%c5(&dSwS=3$`s@vUSN{Ih8&zx4C(4bLxdv^A@aTd3AZhSqtW^ znpCN`Pe^Wh&^clI1m}aBk`wIuO6lWOO>#(ndijD51iRE&EE<Hn>{v7e!RI}MWxDaY z$R&N*f``pL!y~%g-GQ!}vJ#VdPPyA`@>I+=n@Y-Rx&qy9x9B-zE>P;(eV0V8TVERP zXxz4DvN@;Euwq`vQYJ2GGnv|!h-_)cycLE>ncK)Fui4hv5tbiZ(oV_N+FPblwX2)w zwzSNBNsOIq(P}N{#zgJ3ghhN{vpp-zzWD*sl9&c?Jtp$<2bgCv(zfIQTMQU-v{YNh za>XFx$TtZ9ne*+qzyaq%t~y9Zq#*S3S`6ES+t$dONvFfh+_f0n5PR%U+b5dT_=LF{ zd{5fTMV4euJ(yT&lb1=JX!qP}?*4F#b<2l$kIwJRLpoV+LwP}#v2T&fkY8Z2=DBi8 zn`-R#*=?b|^+T~}Q*VwsQdC`JHrG~b5?y^~v^t%Fc690C!)II)G+NY`oN@T@(hICQ zQ_(q#7KDqs^nsq5eC@P;U0_Dfyyk?qvt66hnoK&Kd0J;>I6G(Ije@bf<=hTkWN2{9 zhV!P^2txJjbr)`4Gt=woIJc!#ryKgy!}pF1=Hztkx_tA%B!}Z#X8F@Ew+y=7rR&z5 zJ3KV4!D3nd%<k>07q%2<Wpy#z4Nt}5Z$F{_rA4P!>(p{XYWodOyd94{HDZ(R)p%wO z?mzJL<%Y<bHMflJnxJ-c^lTcr|G*n-bl#b>FTdoLE?s2Zc?TXm1nMdw|JFK9P;(Bu znLWy0XP*o7k(7BL#%DZ<|A-$zdj9ke!8|xZ7Q>pGMtK@G8srHS<>mOeCuIyoRnpBu zugSd$uqMYg`VR>+t@<LV64*3cNw$FMG6A2FZh%#(fF(bN9Wo-ID2eZ6A>fb3aK?{D zGpbpQB<;KkbQw$w{Fd<KfuvdkxitM?5}&c@#$l=~O%Rm#Qtky=R)Ek#JDEBo?}b9P zGH*@Q&-}Q#g36M8-$nIP{&0I<S*Yvry4fr!aAPuEMoH?F;z)lDdWhSSl8_#Uf@m$O zAa6Mm`vnSH!#@M*TyW2H8b&IPizxjQe^V5q28G3%AOiSLw~PWTD$=bmDtPW!0u52} z1LkTH=rWLD+y`DAVllGA3kDI9GXw?;m4LM9TDMWmmP~53sD|;$TZ;V5l3F8bxXnoo z^JbRSq+z)cjR9$Rn9h(d*>t!beuDxs!i!qmN{7ruS!%U}+~T4ZJext%FVg8?BvYHL zD4@>u1>*)^wuqF*fUD}%cBVGLpFwAEOIj_GQrioS+BR<>%a8>-3*w$ru4S`Ea@2U4 z!GLs7k|t!*GenFqXXoZ4OR^*}r%rJBUC4ATlmsMJFX=*(TdQ+93_6QVYcOZ)^~g43 zEh@3t^#+3;$zDWU#MEYlc*(ZAOYPY(<7R1~4^W%3-8upCA41USbb2#V!BD<$i2AnN zT!%mE1<Kwg!i5d*AqZBadRBXj-A0YoruW<IRxR2KZz`BYlNJf8(Iy6a)FL4pjVK{h z5U|v_-i=JJMk5)VTCIe3x8Mx~gGMWVfb{F+O-<Rik)FhfB{HJGC?^Q=UA~0bo?VzQ z-n7kCYG~du<llQ=e!`jm1M%7Rvzpw&!n1Zc&zyXIPrcWMl+(pimk!L9H@K$^WuGAl z=Vm*a`kcmyCCjs<z;B4vo4R}vW5AJRKrl}|^39qp4wEsg^%}I2R%0^8CgvD5W^Zn` zGutw$LZ3Ck5S=)~Lfyle?Q~ZArPhzkx~VI&gdB60$>Ln&cSlw=TRPgU){-J)R&m+h zU=(R{rWUKwvuts_FI#{EjU501sZa~DW$}i446t5$%PoEz;CGUySyES&ATzxo5?5Q9 zP2D8eOTu0Nuh41COcGsQM|HK=hd!oNdo(&h3flB$Q<kkTOKX_nvSw*rHQFpR84}y8 zCG=Y~nJ60c=!pi62ADF;6SH(WlR+22)GOl7a!UBLM)WInR+dEvTPiYcdptIW4KHXD zygCD8=5Vgtl5I3+hf3#I{n^26M>NYC@dT`vNK|LYDJu5pToVIcYqrTJ8qHaHt**mq ziq2p@ttY?J<4gq2POGgVzhRF<mv1olPR-JJt&g+%xs{gcg(k7v=&(qrX?}yxS`+KL zsL;Z8S!ygm9vIuLYOifE)8;w7x)P1nl`UGTE<_3wi$BXCnZ5ptHphBzSW)b(&#!K2 zzW4ceQa9@Y?F%<HY`ksl%IZzaH}=eT+dI~G7iqnq^LkhjZqPohnSoeOuOXN3G-0x^ zS$IhJT+9c(uYn7Y8@gvsb~2QZuVD%VEyP?5G?3hePWWN6mlo2<?wkH$_D4S=O#q@Q zl#nQQnj$LnR@tenadQDNeP7Ti{s7_`C;W(&oOlbmH-2~$v8nWr9t&TNBNbI%gOha1 zcjj{7e}KW@93iDgx~hnuO+;3?A7oMf;|dM_>Y1BG5{;~Z)h25IPEpD#OCr(ySIRPv zPQOB~K=;yGsTDJ<CRqcPT9f4A4iGS_n%@&`i~<z!hhL%8AajNC6dXeaO#VZ2X6l4B z9?kgxe+G$5N-G|DJtFk<<Cmms$}gctrMtRa2+v1FGLOYtxrBc-0#QSUL}m&u5M*9f zh^AYinN?PijGu_29#oYgp}H!=2}!o*)k{tw_Khx)#3_KY`O~4@1n`tID0~quH2{oZ zl}?x%z_aMD9N($7G2O7oRFF!hcPpLr#!+gBqd)#kaL;tN%Y)Lv1$dT|_~wxx%A?$I z9~14sduvTC4%3$ve^OGS4QTZaSeV=z$K*-fcVBd2k4Ed!BA<u|A0JS8M1l~sqNj4; z$HNyS^349ixGPfV^wre*ye7$|(S>zY(YB6Sx6s~rXpvhF(nT~~jsJ8hgFx)e7mci} z`+^6{i|3zZ_De3wlq=cui`x_By))ZtW2St&WS4$YYt%?;W|Z`KGm`B~H<uRWJDaDV zTJw6t4sEVB*M8@f3wx!Y-C?kW+!if(xo9qk)$|SD`czq&E(8m2b@%d!y0f~}g+^nn zBwC{@G}v@@Fd+OBv_ex`p*IqUh6J5DOK=$^$!+k&+Y5w`v^j~`tO<?z*?Bs_X103l zB@^4Gm~ykVxJ<3HS4X_%KC7fQ>zuauglU3BUa6Br2|kld=QCv^8MF`;>;ibSPNPMz zCs8D>#vh8t;|*a3bS&Ga&qj+vM6e*Pz0Tsywl?Nw2eNBQLxIj}uvCLaGDh<3(bA&o zq}8Kw17mHm`F-9Tn_v{GCSA7G9?Q*bZ<|z6mNaV<dBLE`2q<|dP*7Inb5>Vb{7^4y zT$(1*Y{s(O4OX8`>qWl<hD`uB029z>8TDWz_$(6sgOzABhFq5`*NX|PAn9#7lXEvJ zj87*(rV*Le)aYPhmZ0@%jgn}<T5XjK1qQ7T3|sG|cSAXKuAvYD2LfH?Y9Uid8biW> zfS64XqR<kEeT65bz|;(qTF_Lv90l=U5Yb9<rI0@0_L%`UXXRmMAlaU4u1a_em3by3 z1S<)ZK!<<;rpcCG(}|vP+{dgHz2!BNBk}xDL9Db47D7Rnjg)tGeXJZnI6N_^i~C6u z1%o^TcVGhUj=R{Mp{W;LwA*B>b9K&;vW=R6HQWv_YqR7s78}>D_}z80lU9?YGifCW z)#jfKb!SGs#~U=UMCC(F>PYy?v@UeD`Z|mnj~RZO*g127*2k93+dbg3<-0_xFdjRo zmyGsAC@&`~WRq;t!(UZZmo$~<Ia=M}>n`kXS={Whm^C&7`iVvd*$*HnP4Q6YQf-kx zVvBW5Z>gU;2gx`#4$q%{&a4Ydjnt6hbLAnMSWsV8UQ`_P_w`Mz)P@Z<Lylb&tUz@F z?$W3p5~JVl@CNhi)K&y?tZ6UNFIiYrJ*%T&SkRkoMRgPV!}HFx<+b!whpN2og%uDc znYY+nZ}#J>`gLY=u+ZnPYR(V4b4$x|3L-_#B~15`L9LN|Ik|=$sVr{GLO)_oW_FEV zYk|a}!BB(bsked>beVI}AjWcI5mw#!uQ8%#`OI&S99Hd2PuyN!XwJq<i%2!nWP<RG z3hVJ%;rw7LY8A6YuhHmgDa{EN*dXod;lr9`vRQI0RuVadXl^Z{4XL4>bHof9=)?o2 z>@1^Ehb+svb|*ZXtJPMu#-nM9MIpCCGNoQ0wA($B(F{Z*M8SArU<Rs{T~%aPo7K9Q zE<mqcRqDwvi@5xF6L{yB7r8tMKXcw{#_-P7ibnc8s4~V6rU>}D2JEBGG)$Nwfsk!M zo!W$_k%)_e8gv08W)u+kMZ7)BGTeHH(OgoNsJV1yiKi;;wVEY>w6ySK4wTw#YRQ3K z?lNjUVTUm}J&>@3K=cfjyg)%%a%)OmjYDQ_&G{SEX0g02l(l&B86}WesgGKjMi8^( z{#?rCs5M&rl_sqaF;vZ{HVWZ7YqJ$Dfr>5ZDjkD-biV3hl89pN8o0!R{V04fBm96} zQW|RF5kMQoiIF5+*ye`_x|$Y~h%s?C0``)`cKS|WC$xi7;L(89;pYJVudzXF0Dop9 z*RokZec-2eUU}(%%`sJ-zh=g6(}YNw<1d#l(y&B9^#rqb_PjI7Xu{%<TKl%2HM2dh z{Y=x3e)Y^2`x%Yiwk49;Xp^>eH)or>I#&(c+i)>nX`)VVQM=U_Mf9x~z$3*r)c4OD zKS_P~=07f*XEgpn9gGH|nn}{ev)8M|7C<RBFBM!>I)hEfLbvREZ0pvV0dG)kt}3sP z%z6jNaxAB~z!<ibo?*Cb(R_`iv&P%9QG>jy;=&uR+B8^D<Z_)q<KDk&+pO0Qb*yyF zc3u6;`U!V#fAXKbQ(t@Jx_8^p4qm-u>?hB$=1}MrcELf7(HMpZDnc)$U^k;m9!)F4 zpAnJ^eZLl%K!(UaFg+$%EvA90B(Zhoh6P`%;Z{GOzti~{*_)+ob=Ar$wz`zPDgW1J z^2as=VEBx=<-Ah)#uY2%8%yOp=KhR%kT~|^&x98cFYE^_!uGJp4<;djT?EN{-+o#8 zTK=z3<^KYuaDRI8rEZ&z?)+c$tg~2ERg#`IwP(@|@{s&C-Rp))lV6tKdHH1)roLr5 zqT?n@U<oo7c0yx14|?u%py3{c1?I;nb&?GxRztdNXuY|v8!@l&BUknW{6G*x7C&p) zjc9AwgCZ=!m1CK;yB5=T<q(=MvxR3IXUaL@E+LhOTgGFm5FQQiQG%X`XX2NDPSxhJ zA9>Dc4Ko)aYSO~7n{FDD@0Kr@@1`yFRjFUFUioLw$%Q+G)uL8@Q+`zFNKH#UJ&k>_ znoUVv1a;@U3f-c``i^*=PpqlehN^^hdGTaGs;iR%?A?ZjS*5yp^YrB@Gd!}V{d32T zf652s?eYQI60eXS5xU0zD|O92_NUkIpsn)9a_cPNJkft1V14`8Le}u%RVx=Om5@_% z@+Z-&K74&aN6YML^O7an(^_i2v)wd?i}60=H{CRzejoL9*Zgw)OVRNJ>ym%)-ctFg zf$>j8Cp$N9(&YH`0he<?UEr*kn3Y{u=}BEzROG6tHyP_I*wpThXx~D+YeBzoTc+|~ z@7VD*o5o)#_3cG3%D?#C_&>yKu}pqKP9aV5=yx-&`j9m|bSv|$f3f#4J@mbeBM-^X zeJEU&*EywV#u88VAh(}vfZ)7A^@!@{h!pai>IKzns=un<QT<)@sp?-)@Hw>!{G6rg zL@6vA2@o=PLDbTZpQuI%qFOETkO6H^3F$z~NFt`Rb#$~=4S(-EEl|*IyB3M4?6q!a z<Rm-NkP|eQ;*St1gCvf>1kmNsv?X!{jgual;LoW^)Ru|~joYlHeALMV#xh79CL=U0 z!Jn&^Y}Yl2Yf0GuY6OD=jl>@nsKz-m%phP%t;PwpUK104U0Pb`M3`TDmH~<>jXkHl zd7z=8qP$~rrTK!%j<a)mqP?qPgZ^PHAlt*>+**KSjcmSf%fiByQzgyf$(03$yb_1W ztq!pv>&Iq!hQI4T%R2MS%P*g4Ue|J<%P-F`e{5w#2*hu4l;jx-Dkm@2NK;o9F1$sU z&x|DLL0}pNlu|qFAB?T)jrQc6?U;O_xpHzxMMXoyKyx|d4XvOyWZ5Ggr<2)R%5&Ar z)#Ah)-(5?JbDic@=H(?`sd+)b&|4E7@6k));sX;Ro<?!GGq-pR6TD?-n%C>1HNA%1 z1)s5*Gn*^?=j$7n%v$fYOis@3oZmmMVDDWTd&$h^@UCn8Tm4u1XRUW`pJ3e3y)w^f z_6J-+OC&3<PW0U@3H8e=Th4J5%x;|+(TBJGbM5csO}EL{eCape=KPHuZpJ_M&TpKz znf+g|jl0>l->v=U*04S@v2}KV<D8btW%Yt|b6-Lo&x%-ru7Ka{%v;&L!8l>NbNwtl zcB_AMSEPAnv0Zc5?FIAt=XcIdPPTa0&sx%`Ki^-$ep%>qwLUPb(3I`1%BinzINZ4> z4}lrV^p!~wE}*g0o6Oth$+@j9Y&I9ROm3*IXGNQurMx}kw^+?~I4>ji8+6qFMoxt@ zq(1^vT7)QDO%!Jfx+<oHLqi%Im9)ka6s-yPau5!V+)pP|Lwp`9{3hdos}WoUoR?LI zVTtx(P~rzdam};xB3o}#0J@~PICWWZbB;@HD41q8=NGbDggtA!FN(2Eh5aUTzWf~f z;OpD|;mZoMM*k{6Od>|#XNOmQ#okY?renTjGJR0~?LXB2zP5IjXS}Eh6s}m^Y_!~r z8{)QCISgy}Olr7<@1;a`dn&eTUBv_;SXP#LufB5qO{`L01{9ePQVwjm2`O)nw8JaB z9qNJ8Ll`oGkTxN3JNNX3vLYQfDGw&k3~UV9%`l>~1Qi7w%QS-~PYgpZoIb=`f?ZjV zZ#GRUWSgQFPFlN1V7Dmya+A|Xty0p|R3bQ&y|x`+ea*JZzx~W-jIbu(DnDzC7`@{9 zFWLJK`#!^KdvUzcUtQzF3H3MTX$6J(=1UqT?OAJZY%}q_o3l-0Pou5pHj9Tmvuaa& z*zNK%`RSY1SJoeC1RSZyi*Gn`2u+~arL}(ty~_vYhjJ<^S%3gT1L7wgYfn6BjU(}7 z80?MUbcD(!pbg<zGST&R4Kvk<`i<sZi#N5E<I(1HrM}=1`akcI=kkrMUE`{#d>4{a zb(Mknx2P$S__Q%v3JZ8FG-<=|t}`1K1B&*&>ga-UTTybjlxlrH4?l{9OhM(Q3=@Wl z`|#Y3m`^46#IUVErr}^Jg4jS<BvfK8KZ5U!?*xP>j(|o-BjT>Fb`E~MJXjyg{q)0~ zU$xqja&FSr`qj=)Kg^BQ2bX_6xbx9Dl@UW;M4BF{GtQq@ZSo!78H^bWv7mIe*IYeq zzOgQH_@PLiA%cM>K~AB#oP|LAg<*;B1QH*Sr!24#kaEvL{VbQ|xhxn%cz$gSqQ}6k zm|&u)5gJ&*g;u&Kcu4vpu7075&^65*?o1jLx+*boqCGKxp1rr%KDV?ap?SKu*ESCu zcI9{~zcq>A*vVETDoYI|687l)`HqPb9rNc$)p^R=t{jyvxlw-V#?pCt@zP(jJqJtj zY}WZj2j!t(mn3Yq`K33qHk?E*yN;H#gJZv<0CVd0;Mpz6jW&PYvY~k;3*ym|t8U!6 ztt6UQP`PdAjaQXK;|ogW4K2f|L==6FaAr!5cPEb@QU$dWAdrY_3qpf{YznF#j1R^f z4#~n8ixY|przxJCTbIX>+TBwgJ?ltn_oZFqcN~}6J<FO&?f&k0(i~)T_e3Mdq;&5X z9J}HCcQYy7_Zz&&q;xkZbxg<HQ(`fqn>#ackCZHo)bEdwOAyE~TPkf`I{NA13qKtd z>X20OFK{@(|IUhU@1~{jjC4OT?eP@N>e$lJ!(Y+S^ALIuf5+fgDZ(F6wirt^1{Dk~ zfh?4mtU%aW!_IhAlNQgBK$1h8m4<3!f{oG<Q3C1lk0zYMdYXz6RqoK(hQSS62w;VD zP9Odh5UT3D@$G~MQ-98jcFo;9GLvT}85VzWS3OVu1VC2m(0MOyqOh&F0&RjhMH*vU zfZp7QIyy0;=)*ZdCE*dm)AjN-xJDALv{YyMrY?qb*wmqcxeZ%+VTVS2?r^xYG(5~U z#tP(THXne)NI{HkR1N}KJN6F3hyJ^5QHgdle8*?SOBP8R`jJp;_q)!?h2#6uX|kUY z2MQ-U-`$N9{ebF@ee}!mPZ3hNtawW5NzwUB$CP6E)z-y|PYlm{V@G7kHq~O)YSm`E z0Tl5tZ^scW7y9aIo~D8L7~(9GqB@&ZI3i9B{MGo}GFcr%;5GosYir=Z0J?(I#7U8K z`RO8XeRIQAhEHc%Ewti1e*?<$qAEIr>j?QpC3ULZzmQ*zWPK;!S6Qy!{W4q1_Oqog zAHJfa{&CiF)?S@=gP=Z3e(L83<QG@#%(t?@2c7DP1NU!T)xB`W?9FUsw^_GZe(Au^ z<)_Zt-M#AH!o&ZrD2Roj&lov>-m30~q4(HW0tZ)hzbxM&FP86kxqFpVxoXY|r$xO| z6z8m(vvc<Bo$`>>F=6&<pQE=Giin1erW&<w=IRyqgbniVHxBq}izZ%IzpAh#Aez<k zWvk}s)HO{V4RcmqH?e5N3Wvw(fxg7#UNy49mxq!q4MR1eMQ&e#ZGQJTD2J}2@EP9z zgni<<T0QKzNS->D#&O1Y5X-pYd82r1!)8n{$kT-B6nAoFA*(3dDx$B-!GZf<SwSpj zi~PIuz&FsW``AUyzJI^`5BW-Y0RR87pKkUdXBvkPu$3;A53YFS{sELf?|1SRTu$`{ zj{kcXa-{rD!R|7`&JY&?k{@hOrL}WfjxagtjWFW9LCU9I@5;brzGyqI@JEx+wQ3Lq z;a~FMm##H=n;J~FWo^5{=xuB??Up;fjm}FNqw0MR+}2)N+FmC8w!U)SBv)K&_rCrg z@`DrP2ZM;=7i1U6&!snh?K5`G@rl<jz2L#uISQTX3M@#PW>HiodoCvW)Tfmp3UeRP zh=j<8B|)II%vDos=dK4F5v^YTTF#ncHYqUs!r8MM#e1{2%o<nE+LC>**f<-90&G(8 znw-}{acsxcyXE;+o+#7iS2WC-bHSYPWi!t{d!~3hHs>@{<jdbhJyq<7_VxrWZHz;x z(4lUWf9WZXeG39BSq8Ku&*q0%#7g!E@~Q&u=e{~XyoS>4mk}vcC+s7s2_h>Vp^=ez zrhvGS{kgkaF6@4>TQ2JEX0La@_*hv-Sy_j?la>f|$yY**uTp<g4(?)Ccb5j)74t5= zbYAMb`IiXI{J3-;?(qWMts8fJf$o-?&(H8%rvAoPLX59i6JL#8bPgNser`V92)AQj z@S~gtDLNTt3@B}&A}(^Qt3>8CRB7aIX5W_H&jcZ55HKje6VL6)?%-qKdlm1|>=VAH z$V9_@Tl)Ig<W6aE3Hc)-G)-YjK{mqoQp!CP`Q^m=W^zOxsc<IXtH4pp$PGdvP*Bs% z{;uJpwM2qndV*4+bkyVY&euoYWLSLh*lLJM6*HA0+2LrNPTO|JwT&3$H$1)tGB?Dy z0Yc}PduIA3vdDs69p%AbUnjm>X8%YJ{XczorZlmzi&reYciNUne=J$~Jfd=KdM_jQ z62A0kyU;tFwrw)~DATWwYpZlWQa)6=8y(+p$JZwF{G<9trEj0qcCmEZWZLT3e!(L` zPZ=IpnnQg|Ur@S2`jv^skqlC)8Ic~wSIbrbIGIV;Zc7I}#+(IW2Yog$TGhIJ>oR}B zy2B&n{>ejCORam?uiv}=@b!GfT6n+2?2pT)N-TZiQb(mQF6cxH1VyIFyaZc1Iw(Fg zILf2c%R^&-lZQyC`&9fFm+GV><^DZ<p(5i6y^y~<2Nm5cJ);;o@q9E(VOA&nDU@4N za2iDJbqVSAVn~Pv@{ks^NQP4HJ}=eCpLkx+L}6ELS;=Qe6I0d0ZemN9jw0|rPuYSL z&)09ngQY;jK=wV^dC~F3^z=@l_fyLEOjRnEEcCvr4Vn@4257#3Nw)KLBSukObL{p= zCcyWR7EJQiRHx(arbp8h;z96*I*9osyj3B#6JQn0&_+&e1hpbz6~d52m{NFYV2+vI z!3%0N1yFqfLr`6-_8KLNJ!wxF_UvGH%=zG(59YY$EN(OAAj_L8`?8`??tG(J{v{$+ z<>!QD<l^}9@BaRP-!Izj#TGj*d;2A}X$RXoXUSq*_`yXtT;|qo)qAsD{kTxQl(xED zcmEv;Df<I_&Zy+!rbzQD)QX(-NWjxmxG$a>0m^f{OGr!DN$}OGBxF1V`-WLEl~Dw6 zNHmz$+0wL7>N)2=1Dn`2r=dFaDVzDE@@XRSs&GZ$I{CTv^4B&NuCT$&#AWaMWk-j# z+T^&J^-_kWvA+$D{t!7MM&GjE)y>l!NcZ2me$aW|<i?e`@@w(~_<#|%YuW34YuC!M zwLA(RTM_o0DqDNUucz9b+i-q#>HF*smi)bQ<<;`#yo)IPTZyYbf#;vkP&m9N<Qd3V zeA0=qxsV&6%n68mCQ3jB1P9E#CoV#$DHjGAiYxx$G$kJy-W9sxWu%6larTI}da9Qt zr`-4XeT&;d)M>`};A6<FC#Xm?ld+`fJtZ-I<p(^Gw6M~7&0MGryi=>a@(WXjlLI5E zedphI-}xhLi&F=cAu1h|xqBO<Wttu+-)<G`Ou)dxiB2n$CW-?e1ZP!+7CKL08r_MC zDn#vrMi!qA=S7<Fqx(TzgD(!=AO3g%wD4Hq5r8M7n11q{7$Tt=?4&E8?#msK5fhJk zFD`@%6)FZ4m6GTmv?XXUsi%|dkx->(^yX`J>?<qN*nwtXZg(VmmnDpFZK77NYs$*@ z?YQRVQB7sYYCR{??)OK}DN8Q8!FeapU0*$L*FFExYqm-H&+obGfv*J7u-|dRqGZ`Q zQNO=Ea*p+{D<<F7y<Dvqp|rhV{rdAox8^Lp>--JtE`YUN)Jtb}-934Q`fz?Q^-yU= zwjF>#*bYlet$~2Gw3JNKI?<k8Q7TLi=IcsLfsS@_sr{UVsi}pDY)#J16Ce2My}PGR zzx%zf9+-G@jwU-%C_J+89DAv`y(3^M)s1i3GkN9Gt{*YjkP``n8{MPUVht<wz1;&V zk-z4f?^nPX=VHW(S0Q;2W!S`E;!O>6Q`}HKR3@py@kD4$RW?)}DO3B#J}gs@FOGOp zBbKH~O_tP%C$f0RBLJM}QTi<Lwv>u|XH^hcNpq69DVn_ocRi+W{;{IaVIQoNRI%dX z*qEwv(C#R#5dXsdO8xLKj{%?_voEbgF<E79?Q1j3DwL>PYG<S43g;tMfOz*~-;>|t z@1Ys1f~=~7JGsJGkV=|DOeu;l5bgvZT6wg@d>6e0rlbfKG-kLzpCWqmi_z6EuJ$w+ zON^^VKRIjl^ViRUHt>_zD;MN`ZVkxwRi<8T*t;MZx=eU1^+~blW)J*w%UNPgC}eE7 zeb)Fqx=#Gj+-6f~ZcwV2*VHtx>CZE-e}46!i<?UdSfeNFF-MYB=M)y-|L5`h&)V|K z@&6|{H)LvPMY(2E5KIj`R5gIOT3g^DQU>c8cs18{!YDy&?upMMVIh++s!o~G^FYT5 zWb1;l7M|dgm=NPWq8)kr@`0areDOucPX{i4dt~Zm4=>H^E`9j2sp9r8roDap?Q7Td z3%)P<-`=}-?V4%AU6;Ro*<`w8@?~#dzKn`Z?)d!kj>&X!<>%A(u3fhF_Wm!v=)WBs zd#BNN0FU~<2H)WUWOu0p${naCV)l*joQxpS5#Qul7GqqUhfjdquE6ZZ6FhmBCL`#m z%O`e&3_21EXCaBqod=&{9Zx@Z-|$Zs{NY)kjq_qz^7Gd49~L~s#)zF(T@&*@Ny?9# z1o!>4{%R5He)=Hmd}?`1m;BkY<JUPt0BN#=Lbq^Unz}0U+%+1N<~;EAdT9L4P^oMb zLl7YjG7HL9q0|rU%hNUU1!?m@O^<Z~#teXHET^z`lB&~txz)AK{ri1gzVyObTb+BV zW1L8OMNV(W56075DV5ht6j(W~S?n>`Mn^p!<-g6~DffSS&|iM?QEiJ~R%3RIzi}lZ zM>=~d(P5h3DgK%6bgycMHhmT{#2(2da%9TD#cJdcp*JEziTA5I&2~n@4y8G2UX>NY zjr2%hx^zQuCGlIN<=#Gc?X`pB7Ft4;{%;<_f)*5<!Zm#SR_ZnGiYS=5bI91!$s`ha zX{S;)ucY)0G-kNdg>)xz>)^GAipRQ6NK%enww_<h?{jBr3lvUGt&118%FiI{7t~5% zLy&_m)4r=&Mwwt0hu)KuZP%WVd^??zO)ET6x35m#QCIiELCUIq@SanxUaY&Lj;*h& zlYfC!Y3p#o3kQ+;*>UjhQ>|V=xg98@$Y)#+)2&ju0Y9YV7DUvb%v5?96m`6(9a$?< z0n)&5=^(QP!{i^7Qa3QRZW@Ey{zxj`gVeu}k~h636%6U``Qji~@~bd$SpB|eQnL{W zxjfhRAH?~iO8(51C$87`Q^K)jynR(KfQES~5(K>il1C^NtoonUM`zoM+797cp7ftO z!nfbFEn=$#8&aI}&P4f{sTZAojm)s0qYv<JZ-cL&4Kgsk{gF(yCpPN|`=Dc7gtV=j zCj2)|nQ4%9(^4oUJ$!Q0@kTsI$EhD;ZkryL0Z^nySo#*J&Qw90t0%El8Il>btunAE ziD)HLs6CBNPU#W0f)7<i5R7R4r}G)zg^M~?MusK>k$MSxhHax3PW40Oo9d@cwv9dG zYZ*U$WUQ*6O%Ga(+{3S(^6>ag4}AT=179yI4kpv*;gNr6aqHOMS{G+j!;4$hG3*uF zQd`oL0OTOaNdhh8^G|hDIQPp39{BPBT#=-458^@XNP36$Izh7$GDrm74>BGE8t`|B z9|=rwpty3en$R(tEN#a=ui7Ppl)fR~=MN!M+w3^o=bwD|$pxzKA6p=|<PB4Yk89@a z^G*uL19|fOMWKk7&3U6Nz*=0=*zF4*`yR#OG;D?uONw-;>2K)+jcrz81S7x+#b-u9 z=2E2JhEFF%6pVyu1R*HOAh1)Y#$0?nvlvUCkOl`{etP$!(w^nR=PoI(U%DW<D7j#1 zeQYE1jo-a_?(pzjwhMiJ*6bsvikF-_yu7D$(e9^T9{W#TLV70FGc-E2c413Zu3c-1 z`K$dg3%l1CohT1OjX!s6L(=DE_oh#1?YUJg3u~v24)w(TlTK56lD<HhhZMjDgt=m# zLd}(MJzRLAF35>}k~4Q6caJhmWcpT!=oI*ZW@O#8Bh&-b<!67`4<F@=p!B_n+4le8 zaPO`|yLKHC57Ba0jhYe&bGn4!PoPo<DVebPVz%a0o;Hgo$9h%1K`7wG`K44}&5`;V zkZm}OI(PG&WQ5~^vt+Gapop?=;G2aQ<f0>k3)mkXY96p772roYl2d6Uk--a-Y)FV0 zb=4v!+{Dxn3~c*$*a2Ss_BVjzj0nRo%8xSDueL*fk3;NhA&aUk?>I(<ebG_XcIr(q zXD`SC?#tK1av_zUtuFn|zh8y=e>=c2Bj2m=_p9H0`zlNg+hudy`@PB=PpM9$TbJI( z&DQthHheYyL(p}Ur??vOHM*&qd5CWVO&J6DoNy~73zJj^uYDzb5?seHc_I$uw%61m z`6{P!NS%tg7Mcw<BU<U)tVmzKso(AHxw3r4&AV2VUwPw}^71Qt-0r?jb^5}0Lr8AY z7|Qc_Zdf@MUU`GZ?aQ0gu70PrC+br_+j0ArL4(+kT)#fq(2z_vh=#!}d)wL4>gw_7 zqDEF7UU9<>D-H`Pji`2{z7w<#3?$McDe?;WNy9{8r|-b0d7z7!3Q|qs_zXN)PTIVk zw8HjAUoClIRk!o7t2=@Ch25^h&hD!3G>3%Ehd|T3ZHuIr4k0&_*wtMX3$gRV@pxF? z7K~MO52rpCY^l%Xf0Lkqq)xW+0~EhT84KTIEJ%tDCW^pDN9P$4+cDeFbrFx?N2Vk- zd?thW%%jI_OW0ASI5@5Tm7+;iv}kgY?;YEhvsGuoGyEK2G%r%APO`_uF+C=^pIq%u zT+`6wAzY7N(|Cm6;Yo50lvzA@RA!ALKtH*)fIn$Pc#)r`_o-*ZtL@vi*{kFBZI8WA ztM?z}dskg$r!$YfPpkJI+s60)Ps*jbAAR((1&==Z=={eXd2~M3r?U-7^>`-ko3vl0 zJmmvC`ABW(7$ma~9=nQG>2i;KK*isGRH>VC=Ftz7T3==7Pv%ej4XVJfcr;B1zs9%! zTBQd~!L*Yh(x{?RLCoE>WX7|U!LE7&afH2<G#3m8VIqV)ji<6kH>Hju927=u=F~y6 z?cf!QgqB5Dtn07;W1XymDkZ(B`(u5-yiTAa>BX+$!>}qywtf3dcKeU_ExO{0Mf>Vs zshcMMv4y73Ey@ykAM0MJ9~)umedVZp5c(Xv0%9OWU^9D$#uZ2%cx5H|fPn1LtUa6S zP|{UQT7k}huM<VTsuG^E2eiQ-{pm-D{%J2fXD-_x(FcDXm>s?!X~(wA-F$y|cHrkh zeT40wdye!>j(zZ=iw5mEQ{=k?bE1brTHp2K&(68{;yGgD^+>RMC^{#=7ScqXc+Dy) z3wgk_;56WxnS8Ti1QuTWargzPh7?6mP)MtJ5ZxbYq_ky^z!nIqfw4drVHDO1BV4!q z4KU)NGxM@61C^EK)~x7`!O$hwT=`B_)9kWH`I%*BwfGXf&xef*O*Jd$o94<N7Kf~N z4e1<rP005DJ3ic#Ck^dgw{GtSc@R0NidTm!%Wb$*?(+SG=DHg<-%#usf?lLL(y~xK z{6?%)-cdc@TT{&jSatbGQ|j-Bjjo4pi21*XPaTfo#kicJ^e2)LRK$mPU*IBrM&MJJ zO=eomz}&cIq=lG;MBkA2fnA!6-2}Y@<bT)jI5d2U-hR9V#{jqC7#D?)6Bf4&k%$+f z7AM4$IEe`ou#A*u1bPV}q!6_xAz+}^f#ww_kP;06x;e3}u2oE`c{Kn?LQ|@~?}YS? zTaa$?pQq-C^1mib^EExugcOdV?|ioSd|&FZ;VF3+<+ydaQZF0H@#u7A-eQ3prdU}{ znZ=!hqvaM)&ZfBZ@Nsz@|A$<WY(|X`Xln}yHT{80FAcEGQ-<>jaC1CrL|K`QQZh*m zZPHkDp2{*DcUP9{@=y3~S@hlPneRq=crYRU6$_AIF&;w5H6>l%2yolD+jo4aY$Lp& ziqenL8t0_1`B$29Sfw5rBgK}Wq9B=k?BgrxNv7fPp2*fw1o~48Ufu~RG%te!OZOQ5 zeB=;E$BB^^0&_!}(~|6q_#PVQN2|<?0H@J7uudWR&ww(;7mY&Sit}6_>vBg48S&m7 z>X8wuIsHeykYN>BOVui*3Ke!*{1&e>Uq7x-IJTGQH=7rCbuTt;*0U@nS{X%|O8xX= zeR22Vbr<7g@n5Xujl{3WcY4)d-|-$)&3Jci2z~Dkuso(>J1iD&<)W)b=a(DT-#lYf z7%IAY#*M(H-%C-{D4rfWc+0w?(br~NU9@JG)rzuPw=SwAH&2!N`)}m68loLDR0~ua zR99n6kt)XpQUO}PEgB#P*rK>ySY;>*Xd00TWknQ@f>YumY!TJQiqy_TbZ}9v%7PCI z+yk>$IzcX*SrrHmyrVRvB7*;=h>|#jWpxz=4pa^cPlTt1yW@qk^E+&Ddwy>;Uywvk znafq?flqXPbZXq0uyy3mDvEc9`@@s|n}P-QxKfb)@k#lcC!b`7@sS@R74%hov&8N| zbeB1i?-+S6jyip@E0NPJ&g#1=nqWW9c6(y)jW`o=%|bjh2M<j|dl3Q#_nKWC>!#Yp zN@g8fyBw+=6+BwI;@BjrU96Z2CLD?0XacX1Gk%a6o}|j8=Ca+ax2snzmD{uA-BD2t zJ|B?+ftT5tMq9b0#wjK*j|Orzk>4POGpB*y{{;HNB=paueNk9Vf=8qWm%-3tT&79O zFlm{Ef^2blM>lD7aO~#6j?|x{QK7JNse0Am=-BN!IY0h!PF0T=%SlNrz15R(#M`5u zJU)GJv_mM0R=@~T)Hy1D<(=finMpOYtUkI;#!5biyB2ku3$8RDD5OEuuPPZ$aQjP` zt6@Q}Av{N2HbR<^ikVv>xQZh#B=}xJBWO=LS!1h>lDd}ULoi)P3pD^}B_-TmJhX40 z_YgE1S9@1965^|Ih4<~79yeyw>>I}yA^h^wH<r&lRM6?V@#*ZWBZsq%kKgq6(QDY% zi&78nRX?|PuUfVD7mHg>HLaM$x7I9^fBVGZ)<Y!OVsQ`CwRYu&Tjg)>IePF3R=+G= z+SIyu?ApEfhxVX(wL*hTggqrYfkq3{0O>+O@5pZ%;jLkTsSFC3Tysq+VOJEDI$^eK za4H2LnI=zRythLmj7)D|*(`2qUfDkVdpsc2(0n@#eSv=ezyM$Qe|+|3{zWz812v2M zmp!#VM0BV{7-_*;ET6ffxNY_7w&EQ#g|^gFF-M|tuRqX->v3^ER{n<`JM{50g~i2% z2S528o3+Xj6WSCi%jJv>(EV-z1y6E(9OPgOa_VtTD<-qyC?-BsQ6eC823tJ$`jI5d zL}4?0Ss0yes5VSDc-apzr8_(|zHVCFi+z4<sy8*FQSBQ3UWF;@_mJ2`FW1a!=D*_c zyy98kpK6&OkIxsN2*NJ@#zw%rsURV9cMU_YK;@}FrrSRX8^=V%FC*@aZbyR#b0DSf zLBLFJk?4SqWk13Em$7*A>>8Lc2&3#Xw&(LHNl^IY6j+C8m7MaqjR-xpH|2%S;`0&p zi+rWoFl*=B79!m!iQ>u<=6Y4j+@10)87GjgnwDeNDDBOcG^QAjwYnAUPBt2{{JG%X zK!!f<CI(l3#I7ZfUV>c3pcdhB1q9CoLfB%#`&TV@T#nb!)oyZJ7x#A9FK@5Zwf3$5 zYDu_UW1rJnJLRTL;qd0$c5DnALZR3vFm-+s3x^Eh^RK)0(opE!TPN4G&arFC!+(Ek z)&yN;`{kMqfoHyc{MO2n7CIbR^2PeWInj38R9j~>WZIGs7u${Uhxv7N`OLS`=Jn=p zF$E*tINh2zYuWlQmPE=mB^Otg-1_*}&(M3)SWz$@geQgu4=fnm<OpQ;=mEDLOv>eu z=BGxWI+73O^$f@VQ^?C3p33HrlQv0K(INIj@g5wLV0MF+sfC2m4^gUTIQ1VW6&Fyl zCr@60LOl@mFz5d&joZ!P2-V6OOPt`<(Ha<Dc<^b={A*ocY1HG<*6hUezAUb(+4=Iz zI|uGAeHyXP9$5X{_L(!cKeu|<rI&Xd4jM{)(qvzW!Bvpj_$gUjkn!+WdDYc<pQbhz z2tP(9>Q@G)?fK2j>z{q&+3RQaT^?j-dV)buEsD#1u;}2AJuF;PkZ!B=oZ15og^K1L z+>q~dscp`1wJlbw;8TwX$Y@7#VBbFa7%gwJwXc1LunueAZoz&kUrVd}Zx3QAZNNw0 z>iM_4>4Oj0wtsuJV)yVtEbvFqRe%4ve3y2orcD(<{Pz;j0eDuBpnz$F77Sg|z)%S0 z4_hJBB0zd%&|Dd<7JTryR!iK=rd~bx<zUW4Pvg#p3*<L8jmnQ)HT2bB&IEpd<zE=$ z11F8Z5f%85rnKC?<dY@a<VUw&BLC^)mc1?ZQrl7-U{kNWgq3Y>+1r}>ijSO>0w*G| z5Q6;CdMmXibT8z&BY&r^JkAU0`kqw(-{yRJw>v6DKiqBch^KvrZ5H?Sr+N+X?tggU zf_U?va|D;=w69_pJaX<S-X_ggxSfM?-a!T+nH98)v&Rf5nGO<Z=4=BfW}*v%N*tki zPMZD<Pk~@MA|87{`ugw)$nG!)uu-vZUzA3OrjDyn6*_=^0NMKcZ(yJJ94IA{tx2-( zhL<A6;^)%6qI#z)RU>AHVp|QTwe4t2j3CAChxngIwljUBlJ}6K2+0%o4{7!hlmBi2 z%V$W*B>X2W#}5Qu;xy8hj~{TUrJzf&(N5}f*SHRv?&9DuDZGoB>f{~u=Kz!+pqq-* z=59tDW}wRXVtkAj<`;5HO0f9ofuma|%o7vf^-Ix8$M|Cc6kVf2PR_KVRE2%6ETx$? zm$)GUkc<sdp0=5i91YT)m$s~)@}#!qe=~;@{>7EP@*e**|H6g-{yHoJ6Z&X-8g2VU z|LM-K-?Qng`W>2!zI0@MYC5W$Jsx(<)yl%*K!EPwPftldOWF3H?u4StSc!gp4p8ih z1;C+&Yn)g?d6WoyMA5F);YdQHi3nL-YVBZfl&ucI#UU=iMgh8G=Yl2Cp$wEw8i~HP z^Ocw7FSm}q%GO*Q9-eLt@0SbZe;xYu`?*zbg&VwI_BVx%(}%-_LF7Ipy!6ap-}8{S zA@p`-ZfX`E!|H#|o+9tOy`Bxpg@r%6y};NuT=4skCdn66de>UwvA3#9+1{?cg5fq} z0rbW1_RYX-^zhH8TrK~pIQdpAZdsdCB{eJbh<M#UbsFhg%t~QHXHiK_BSxFHRUO%g zC(=i_@w}!O#wIr-O#z~+Aqz1jCWc!g0^{+JG71Dm`#O`qViRw^8Z`TbZ?O301uU+< z`3~T%hTlxR#O@0B7F)*O*sxGu{Mo~5S8Q?x0#^XgQZYH^Qa{{2Uv8%YVX5WejUT5* z7Vd9kw-JMoBfz2T<y(XLTJ|>II<s;ALSf|G1FNbc%;vJT^~r~{3pxixV=z?WT({0y z5(*l{fljYOe#>QP>my?m{D#svZaaKIN|Bej4@Z%8h}-LoEL4mS39<oW55bQTN*H2D zJc3jT!<^Pt2~eF`M1)6ta~^U9zMe!fs0|PUWD<J<IY&Z2`jPyue5pJM|KI)5k61|h zV|M=R#(|y73)}PVIj?bce(GY^#d|JxE&nF<%C#%7pH1gC{wUU7uu_5-k!JIu&C>m? z=l^VVs%iDl&TpkH;Tden^TV-<x}3tmzSiC|Cl};ac<U-Y?peIJM=!*D#W{5qv2b2R zowp*lpl7JB<teWVu0w-4?yM}lCFAnwZ#3tVB$~kwYDhMtm;l8vCP1je?B^H=AxU;e z0fp%O=<h&&Ks|8`j&O|?5}euIaOuL8EQ~=?|J|CV`I33zG(!+DLRa?gSf1UF6kPI! zz!bI?`(h*V2Y($Zsgz$o4p+F=ruTH+a_|?gEL{1M^)n0f()^|e<hd{U3`-G=%h?z# z3)wUqX|vBWt4HfI=HhyeF(h9wWo}^QD5hf4lff5;Yf}_$Ek`w=a>P*6B>&iLv6i^8 zi{=wFeNajik>eQbO<0mHlOxt}Ii#H$rh--r5;O57Nd2PXGRJj%WWiDFK8iIb?oA{* z5aXuU9@TquvZB^}rNkRH=NaV<Wo21)U3FOvnus$@*M(b_Yc`NPJ_fG1YgmK3%lK}5 zJ`v~EXKaq^w!CA{VPd@7<?4>&K(webu{&B=6nWl}gWZf?_Gp`wo~AvJo(2&}fk=!{ zfJB}jp@#Z#Haq1T?!!>t%)c26fmmZfG<);OHI@hX_*}6W1^NQ=yMX}8_5nl6@f%Ph zaNoT!;<1*2)+%^r<#UCVFQljy;z=NMl^H53#~m4nF+sAhjt&Y_$qy{Gi-cKWcyuYL z3ZyI9P1gf~Gug}HUa$Ng-kvJ&_3~MA0ilKEf{ISL0B9n489|5H?FV*vC!sKkO~%4k z)9u|M$m}o5T$9T;L?OuEgNy~occ(CqD2aR$XfLMNal#c&h(Rcd3R2fNwu=Z)?BUa6 z*5dcWYz>aLCpAfFCG9>L<|+ElnXk?c?!koG?`JJoVF50-hs0oE1e6>9fIB#$zc;8_ zkj3$T+2`rYE29CUBOaB|tjCUtQ}%$=Y5Mp<nn8+qgDJ@r+ApONjwyI@|2VNnL(WF( zAiA2;2tfjrN0ctF$Toc5pBdX5PxGE!d72jN;O25fu)~x;0GbUd?dBRq!bpRNRlv<S zZYCvTg$wcNLBY8{8O>M|6;Ui<vE-^%P(?ZhOw}m|JwUf74|$k<*}tmeHH8BUiUzc^ znnHQ?Wy?gnhHJk)Q!4Os^+k&qo1ec*m>CX)@+Op>kyEDC`n(loC%2XY2$R#ReQ|H6 zA*X)T;#!|y@Wy>nryJP~m{#B#Z@pLFO@ySw;GJ;x(z={*j@{}G+g&c)JEv4@(sp?j zy~L3=Z6mDm>8Pa>23p=U&^Sv_3~~Lb+l9EQutdT`h@$u-&H-7~tkEQw^-tYQ`@&`L zrJANi)Sb&cqRZXpx%MhgTdCl=^b%$Fss}q}UAOFye?+;HTR{G@EG!@VUWJq40|xfb zO}HMHja=#y%G+J%pR4R{zSDQX)MeMn2lwGo7$>BEQTz=iV|2_WeIP<dQrB?uBs=ct zX$d^cug5Zki4<s+`xlbwFU?Gl%L_6yG$ECGMIc0x&lIX8-(6~{HCaOzM^ABGQIVk< zsYz=!L3_|0jk<#q7h7V@>VUNX*@rxCL&y^Q%wV;=WpF4&Y*dV~zsLpZ`kJDmv*oeX z#TP(b`zDiQglYR*xJ*~8(}akY-HE5Pyj5Kp$}f#=59a3wAG5oo<<ZW%3;$qqGa=gQ zaI}U6b*-rFCVEE>v~odFP0@vgXEW*S!qh~>oEej2E`6=8JoHvbk$;c!4Dy{gf#?Al zND&I4c|-JDB71=8pnEhkH0o)X;y#66$nSztU{MEl0ZMlA7arTkZrKc)*AGq+0LSq6 zPY7(5SAvZw^UY!H&opNvQx|Od2(rWR^WX;@hYDwJ0H2|%fsRHSPS-3wnMojMN!Ov7 zU(OU3&77Ii_B{W5k6gHJ9a}Fy8K1h6t(JG>=+&wF^!n6YdY}IF=Sg#;nIu1X2&MPW z{9<NG(^FmD!~VRUHQ^%G38hV{2p5I#LvdlTUVrF$D0u+VB%bz5_?^Uf9Z_i;)$vpn zMXaEcstF@qvf7R-fWbMtYaqr-p6h+PPbll_OSN`B{&<Jnw{j&Mc3+DM4?QkF=rXAH z+^*B5{;12*{pRsV$DsPs=SF{JZM6PMdZ#lYzxEt1`(y80eW{kt^72mh@G2Hx!Dg}I zSZexXxH_~)pQ97Xb-L#sj|_H=+pig1$qIZv`OVcBAcV!a5WH`h%8$10Q4OdrSKWwl z!{_gq@n90kJ$OM-K@|bVLByXtKH=dp3KVzwN`&r#a-9^(5vcocnF?|gT>xSVGma8u z{peZ9ozO=de+78z@dqTQg|df}p~psQ(n=TcL=H!K^+R^!jvP&HZohY<{KPNrlV5y$ zi?+~((>7gEU;B9O^-TKJT8FwOT0B9r$%hVgHwRmtAxFt-`S%{?TA0vQhRP>o1$TO9 zfRZ-7SE?xs79!N(g%4iXqAdv&C$nnVyVtwTlct8up38|75AGuYXWy$F2KCgvcrYHn zZTFV9<rfRjT6rfwId5j7%~HgkU;8V0?E0bo_eD$Fi+9~Tg!Do-z15SqAUi7mBQQ0z zW#7<G?#)f~mR)nx(3ekzh2Hn>82b7@bK`A=ufI7o`@#!n4}JByKRmhU4{r|LamSE+ zt~}b97xGWeYea^|;UO9z<VX97ZnpZcDuhTADi#aD&<hnIKtq_GQLK?tp%!^AkgOV^ zyE3p};TD9=S;S03w-x#QMYjzhFZNyX*E4$L$0GgpS&n<}b!62~i?E)l)5JI6@B&+n z`~CN4K0muAIr}#=-+#Yr?m>s4zAuXI9FO+ZXE_fpXqSt)8x%;dV*lha6zOQl8<X_k zQ@Ew?WZgvQxSSp;8;McSNW@5Kgso#0i5Z=kkk0f2wognyLb>oL7tJZP665EdT3hh{ zaNVM)!Y8epmYOZ7=)=jh)N$vwiHg1MNv1fvu^njx-l;Sa(px8bK&Rnj<InKhPvg%@ zy~}qX%fUr%{a$%J%z<QyJH(ykGS55N_D?#lliTfhoet3Z6eXMtR4xrU%w(__ne5M} zY@6>oP6H4U>f+6oia%U@$sZ~#&GBn*+b#c%>kr_I1g++jQ?&s*jaKFiOG#|)=;+#5 ziDjbDqg+l3JwiE<?i=~s5M*-$XikW0@StOWf*bln%-$4(JmhZ-eMAEX2ZC`v(UP0( zAOE3}bW$FXM-<s{{2pI+Zi}!`*u_+1!<r36lcxH|?@870M@<o45EuBTOe&@s6@M<t z(Y%jN=e9x$xeFl?tezW=DR*`aW`iJoQ1?Ke!(EzCgr<O06j~va0Cl4aC_^II(r^LU zM}kaHg(D{@-BiMF^Q~5U(o$<Kb~HLX1%8V?XJchNxV^k!#BD2%>_H~a5pNtOv-pZC zuQOH>+?th@S6P=g$!aKauj!H7<qz*1zw<O7OxoBLi2N|eY8RayHoYO&fZH1<c<Vxy z+Gv&;v6as&pSG@lJ#d-HDOKA#W|w=ll72!SJtUZwhqAd5r&Dq<1DiAU<*5hEF>|99 zj(1ks6{#A{!F_gIcy}}kwFnvpO#&kqslvEL9&N)VN1DVT2`{OUFt<v8P?7gnkkzP9 z=+GbKRS$h!-4dM;ol;WXWi<L0hf1pJEcN{lc1#@g>kS^CyQpYkPK95z)Z_-6kx|Ux zHz5we6pe0pd0COA!%!YNSNH9~(=?d4rfq@0EqhkYzHn`BU3gDvy~#AWqU5ZkEoXjp zcv@X{eYoEe@Yk7*&g`JhT3BUojV*~z4xSOU2uRu^z426`ePQ{F!D3xt!k*JK7&_Wf zd}|>vJhN3pz&c!le$EvRd`?nT$w3RGT0rBG4TILr)aAfmoeqic4s;kZbFPY@_Ckpu znlW}lo8@V6OY}j08x8h&kES^c5<$nQD<ge0u6^aws%TSmsVmQ18!D|ac}(@?`uuKp zp;fT81S6Fl<+iqM*K$^>S>rOdI1*X9#P&pv-n^qGk>koaZ=#{KR<r)LZ@)ZE<Fb7k zU(SfPRHLleFxJ=$DJynYd8M(%Xyr@xdX7HY6v-~`2}F8|rj_<4!Yw&Xp4kOUO;%I! z-KE4<@0-3zkZhW4o3XJmZql8RdtQCzgbKIXlP}HtX3eP^|3ADXndgNx{#xv1s^rfR zUiMf$Bc4jWJegk=fn!m|DdJer4=QmDNsmr(4xw9DVfzU9m`|Hw_;3RbAR#F?Y~^4{ zMJ!LDU|cI8aE_*lWN7iJpjJZkG%RGSjTlpCWMqWlPZi>OsR7|2K?qX-A6~(ZCC#Tq zSILf3<G98j1xGr_|6ya~ieFrTKbCa@k>)zKBmBG+HcHA2`QO_ZpkpK<gu-^!5F+{i zjvc8F)lUsh8JGW@ni8B^|H!k?q!jbo{|9!&E-?3(ojW>uZdt#%kX?1ctE&EgdDpb) zl1ZTVzhk{8y{r6`@_kiGUH>-*kz?OgSgsgh2-vWTQmUNvt}|5^{;$6)MYQM2a#ABg zIgZRA6_7tjfdaq)*SCcK=OX{NEp#`c_X7LmGdB-3n|(kzVc+C-wRIinYIC_wP@es_ z=l?h2%<=taC51%?fe4uD>P!J7pTjP*X|<l!a~3U{v)ZH8+WzMf$A1eeqQy;7tykR) zX<mal6jFsl{h+j_CauguT%}{E5(Vq6tVLrVLz${V_G3mLCRr?*Ky*tCNB*4ze5_M^ zsQ;I^?|^Tsy8hRF?`aQf%a(0fvSi6qo{}8fab#yZPU385Ig2c3kVOJv#6SilG(dnb zl8^wQ1q%HEE&OPp-~uhPrIgS@OKG6L4qBQP+5(BCm;d+NCy#_c%dh?X{t!RCci(;M zj&slWo^$?b7463C+>Uh)v23ZqZ}|FT`SL6=Px_7gYra-&e;1)+rn1<(+m~0ai%-2< zJ_+kw7yeG(t%z!@>cOFt_&dYe)2k46`K+G9@mW3h<>#e~HESm!_wnNGX7f99l1tgB z0?p`{&G&6uHefG=Fi3B8|IdzD9ldY7KKL$xr;``U>8JZiL8)aj+lGfBsmEY%Qs14^ zoBy=N=jT-mUq`+gy(D`hLJLKZIENTYa8@2QY)-@+Q}{>-bg(@ByVK@Ctllz4Tj7=a zVu`$kv83IyFvdQxCu0lq5;3_CI>RxR`tF66|MmP3evUiJshnKxXv?DRgvFM`6Bo4D z`CZ3AEy*N2s~%vEbLs8~6}c#X#WqvJPJq^-8ABu}uI6@a@bJKf)BzLX{x=&eJ)N!a z`{moRqsAL<Fh->s{*x`==J&G|+0p-fGd<F48*l41=jGbX4?SqM=jJ7B=7%0K+j8^F z&)C{*&zSRwMrhCcRbHgCYpzzA;44>;m>P2tZ4ERVhFO6meu#i}9Sb3EFs64nB&h_u zvWxt|3AY{OA;e>>xuuZGE+Bm%H(!HlK^F=VlZaQ)s!hW#Tq)4Xoq&#9Ac>Nim7I7W zhhZp^tq>F>todfc(al0b<jtklY@zhDkBwvBWKTY4QrnG3Fx765|8Qw-_qb7E$J&T? zYPn@?<aWdio*|EVRx+UmCg6IOO*Q1h&embN{3$<`Kin0{%l04IeQhenb_Qz=TXeNf zli+;MYIaz1M5JqSo^TkkD{oa!_Px_M@cfpBdo{xvgw01AA_=pYZDW4<0XFV7WIlI{ z8`WKVDZ(vZFYh>FvKchbu_xIQlk}WC2CwtP?UA*Xa;mZw+3VM{OOKf3L;mc%&^7X( ze>x>!H>}mUc=xs97GqsdzSL`Wn62+Qnb{H33NM;$CtQNj5!Y_UNw(8#I<=#*|MBvP zmSMs<<GKk5@D=FEb9u@k{3Lix6^nt3_aKG~T3$gU(||^LQXyWW{*rT!vw5!bv6)|l z=uhoyy&W)staW*!-@a>?-D(x{)@8xab$hG6Sh)5}P8OcSnw^&c{X#{9dIH<y6dg`; z_ic8sp{>neGP-W<Hai`nbC1LECFj!7A$%OojWh6#84uqW7tmoz)pSHHzgG2Mm>XzF z{7=CF`Pj!qko-D^9?*s{OX7AOo6wHP&S5PAc!0KIi1Wz+dpJ$10Lfm&#c}{7%>@f9 z;(mAvXUo^taHNoIN}1JF)aJAEaY6sAj^-gr=Z3HAD!E(Emb+KEodq6)Fpe!@Pq8J4 z+5Wiv>)wK3xU$r}|5s3kG_b(0_Pd><BZURMectG$<xwFT++N#kv5N&UB<j#4ky$%d zAlS`nO;hRiAWoNGDmOL1{>e|9y(233-*wk5l_S#cAUYuugSkz09d#x*r3hn2hdth~ zuOZ=Z7zO+JPCF7f9k)A->^g(9-tV%!A<J)MIsC&snpe&+m9%)De5V!3Q*LF(-gOuD z%Kx}kGH9%K%BdG3n)1r4qM>}`y0V+!j|<4=q84MnF*`)0oyaeWUR7DHjxXG>VPT}z z6bzbLp-I4!tY+E9Xw;a^kXr$18Z2s!bN0B26UWVVY7k!epH(2*Ik>)%kLfUAKj4eO z>N0Wb;cV&wriXVk#hIk82k#oUpCe!oAg82^L?^=f1uX~YEoJ$nJ<<);#Ieu}Fd*{l zSv933wy^EscnZRC%j@YcR7<cwaV|d-(aqdkt}Bddb(3_uSfQ@G8LYdo;eO(<xLEv= zeBp}P#OoDFl4ZcaR5n)sw4rJRyP@#>GO?&2d=*4vI(bX^h_XOYQJ`!@`7J;koYO|F z;96GwFWQJK=AN@wVl2Fre31vE<twq{Uu(6S#$_dnJ{77yEvnBNw?FH3`HNdE8qFTM zG)vyh63y4<EB=*MoWJUUV2!c8-B=TRV9ne_?Fx2d;0s#uXM@XfE?=h`v2vfaV5fGU z+qT?p&t+(60iX$*1YJ-U#S2jL6b4HAgtLYr+;=nMP&jvaAQvxArpWyVV-MrDKS?{m z5lAWCuOcV&?D+<$dj0G2;1Er}Zb^g{$yynr4}XEapf*`V_Ey0?edn&}ZXr9n)e{o# z=h|)CSz2?s=ktwzG1~N_!O{D%ylzER!|OGTLq=~x{_ihPDTyZ|cq|@1XAT~UM@Oo- zHvJE0>(bMs&u#gkbD!)Hq`w#sityEV%YOX@DE~PvU-<7bl^In=`?(EUbk+Zwq0Hzt zO3rC9d^PluXMlB=KIZt@N>~;q6LOX?x)>&eYb56hH#w9KJw~*RjN+RY$Ih+)&&~^~ zuGZexu5&g$gU3TFd_l1^b>I%Erw4Y0rw4AE?)@jF%J<73tI01|@vF>ye*%URQ0{?m zCXbh)$3=rpL&ZTdw0xEGM+V+Z9BhYl>%glE$$<*zFa3D1sRsAHprO8?nCtHqA6D`x zC7TlQp#=ZrxP}Zyc;HwFX9fe6&|rvRU<~X7Ct1rGOo-T+h+M$W2-P^;{%+sm{oP5j z%p|+_OB~R~kJL4M<x=2JEMr9Fnu6E+%ZNgxMs@F>5F=O=g`_8U96Ba96}&as+ZEf5 zGJcispzh$kG~_#in6C8Z%INi|d0ahw7kaP%LukZ9Roma0gzxyG@A~mRc}&jiIs}4% zrKWCn4m;M`wf)`H;{MOvFaD8$d&+k{%D;1{saW~S^fUW@%*yLPwd%@QSF6xMpDRoF zSX{TiyO-{O4bV`%^s)4<@N3hMUt58KfQabH*$L<~#eJPaA%ei9k*x*sQjk%HJE`Nt z64I-}%8jXG@|NO|R9ul5UGrwOKlRt#j&k`AONv&6eppl_U-t=fT#^@&KZzuA*>&QW z4e49uJDIzp!z;oF_h$8&`trWFLd8o$sJ%QSm;6Ki^Tm0Ih&__WF*fV9{{UvX6h3#m zRF5Ls2wBWH5UvJZsys6``K1d$3%e1{BVOx*JsM&s<;jl13KSKPYK5#EZdVXC>coJT z9qz-mUqK&gWZ?=}jRaC)Q529!NKN8BI?;)Igy>AnNVxV<WQ@Y7gdE*uQ$k+u1g)*% zSgjq;ntj=vIn7#2GMd*iyCW~pU=zjqdMTKgJUZOO3ciihb6-3C-EHi$F?%oGIDgu3 zWUp@j?^vv$vAQgjpJUY?dXCK!ibjo$m`2Q=J))w`o+Ulw_ajDkyk5*5mK>9?+v%2x zdUYT^aa6cj{>^_G+>AZT@`Tw}%&wBNgb|&cbe)BbyW!H!3uZJ|n2ha@$6|%a+RC8c zp}+f8Hc4}z#?su`dD$Fc-sAgrE^f2i+aIrs7bfeXA-~;l^i`o<2)DMX$5fRIzJ_Eg z>=6d5B-GXG>^1f6P5z|(yNAK{?@b-+sq4I=Gg|ETThi}ag|>Z{UA%B+GHNolKS8&v ziH3Ym!=29yb2QIebji-nWO-ZP34vddmseMpSKm4+jwG~JK|&K1)=wIRCh|Wj*(Di3 zLmrbXGyifBIj#xbVbg&X*$T7>ts`Wf8kmdZoJ%tduAwxs0E;1T9-n*)nkt~6P>E+D z2R+P6+OyTEzn~l@6x{rL&*;~-OUVVT?bASm7Pj!8zTWo^_bg*GN6iqvNt27hFu((g zd-bt7%1;Jym^qX`>!=@ck5nmFoNMf^o>`5fo?KQ(7MR#JzVE_*Up<5S_rx=*TDbq= z=5Pe;B^X{NpeEwO4TRR@@!`%>t`651pZD%^eMVca8=!d#?WR@xLe)0a9xyU!ShOkT zfQ@hApvnO>-1JmyD?B&GRFNX2kiijM1MnwiU;hD!<v)!<b?)`J4_G2U_)vH4gqY$m z&%vNcgmFl7Y6vVZ0_RYpV57i8`4N2M28vV3%z27%Hds8QwtS)_X7IlzfAX5&5GzqD zL0C=`mVk%l>cx&m)!YA=u<|s1r{qAP{Pn?G50(z8npO=9UvbYpSA>U=Jd}xLlcTDG zu5B&PY=G8+cIJE|9PK_h-p?APP(lFugvJFT2YQ02NcDKq4S}oENa28G3UHcuqX-BG zuZ*ad{c}YNAkVAgM~+#I2sqI(i&o-?-G}44`oV&}9kpRLO{+Kj`V;xCb=_HIPyisa zw3O}hWh0v*Vr-RVExqXF+wz28H?9iH4{3D<)8P@=<rh8Bjw=N*KB=v4bGy1TwD7<1 zv^zrNjTCCdBh$NSKXo#+@LPE7wQb6okvNm$XXN8K74k}*V}UQE1~3v<5GLqK>PnDl z9r1HnmO9`E&?_z1RIpoh&RSlVeWG(tip!tWO%kNJpeutiI`L*35j*E<l>Re59g6^@ zb&Zzmd6a!Zo(*HQ15L|)RH)@Eg&^>^XPpD&9sko>gi}PJ+#ZDVqKO1Sjke*sugKsB z^7Gvl4y!J=!cBX#R%Tn=2n?$ibFA4}7K<s@nj`9|QLI*891%QLi^c2}A}B`gNK5w0 zS*36tRjhtr9dN_`r!Z1nn2X%#lEs^=>{nNrplE^01z^4`i_@BIwo`&jW(XOO;!?<i zqS%?|bhxpnVS=fuI@|a0S*Fo*`{s7!aQjd9&ADAOq}%$t=KqVi@n7puslPwZ>So@b zD>}<O^8clc^5|C_0p}SRrmC8pJf!mYkJ>j)z<HJMd3~$ueoXivX=afGW&lkA3@p^L z$g+ocZv!bM!8i(EWsd&~<0!<jg>GjNxXB?BJ<lJ-BA#;$ZR&RBHTj-8kNvQI%mjn0 zcu<kTjg8;3_&jAq0LnZ*><uLVxh9JxE1MI5A>-w&Qq2DqofU3*lQRF(Y^ch`1I)W8 z1Urj+%E&FD(Ie#t;W{waK6>Yt-Al`Z9YdusMcjDso_u|7!R6Zr)GmrqRM;{pn3qEo zA}0?H57-}|5ZP9u5H8113PI!JoN|m0Z|?6ojZzP4W=57nF_S*Yrn?>EuDjf^fJ}T# z$6OvJh08hgy^P02_~$f4Sq0&K<_{re+rL4W*-CSwOq^PlFxSezmk-Lnm;Tojc1dwE zS$yvsZwQ@d5y|s>;}pbz`%2&V|AWGPu4P#9mjfpLqkxM3#$>1dL&WCnwW<sf3i2@i zQ$AwII1|rOU;q1t<j=Kl@la*;zh_78Z$0s<jHP%$6MbGA^0{qO3tjYAYMcH!_-`vh zKi4Rk>G<#JLHipdGdItp14SET`1(p7OPq2XlN3c7P7**BX{wB)e+hq+2q;<&>=7OZ z4s+n-)!_Ca!ouDY!~mg75ZeWjbuy|YXbAfwYB!h1)*dKuYZx)pztYd&K3|{Sz<-*l zJXWrron?|gGi4oKJ&EZitxj(jen*kBTT^3r1Z{PBXY+xzsWI*XF#FzI3I>$x?f*Tn zRy^h|=-zI$T8-PcPg=ct()P4h_#HxKcOqo=@6ukx#JmrA+Kh-R`d7^X#QHY@XHEFV z7GP2LtB$IUF+U?Ouv+lJusFbX01%-tpj`YI3^A|;u#=MiJ5R)bZ5)ZrVI&2X6hZAt z=fdJF&e2|c0VTXCt*Zi|3OK|7&SUN(QrDm`1ObSYHE2zEj6e@WRd9w>L~y)<#nr8L zL!uNd0uDt)Un1oXE>IyYFRI{C{N?bb$QlQbAt4n2k0JDNhL<N9s}7Fq%6mXK;QW0U zJKS}foKtWkx1`v46Y;13mV@lNsN#bH&E;%l%@S&mU>huqQN37Q8NFMukX!|0bwMmh zpD~*@%WrpT4MvUkog%;4=d^*b&n_&<@mReENo=+IvqaIRwdQ4;b?U(1^u8P|{wnPz z0SE|eQumv|gli*Vk!6Wab5>rKTCcN;SypS!Fk6<*uG32|ddfnvSD|(L^!56MM-76# zv0l6Ut{?vJ;f8s&7yV%4u26}Vv2EcTyUC=r_T^3+ou#WvjvpD%Rcp6Ojo-h#etS{4 z&AnXSbzM%hDqCyQ$7-cKy;iafYhF;TX_&{#E)@i!^pRuV2)LyB$ZsE-G)^sA^C#$X zwT>)76xF3Rm)79&51*Jd-0E!VHfVGFHEJz0G!|#;)iG9hS8>U>*bIlHx7js%=d6q7 z9cio8HSLL{Ulf_Obkh8_J6Z)%D4bs;GP50GPxYEGuzFUJZ4r*TgX7g=AXw>PKvgr1 zM$IIHJzKB!I3!6Y7%XZ?NqV(l%t@M<*K87UMq3<qGyde)CAEMo8Ckl#f~=Y%v(BT< zGYkHx-IfJM+{zlWWqhovef|~SnI_D9;>x{C+{SoiP35C6zw_u-p6DD`m1f$+t=AQ< zp1wpIEY5AL@fyp1FI=;zZbCp;P&2b;+-mm2!_2X;a<1DoQ<Ep3dNI_#aLSBaTUndD zjTr?EQY&XwxWf(8(LjyUbAnajiE(vKM`%jOWzBOTZl%WQQ&&YzYx0eP<gF1AHi3!r z$5hU!90svlZ)keFBj0e@1$Ab3u%UCKx6r5-YojBBUcFVH>$XUuUJy+=#d$8kDK*TI zErR_5OinEEiUhS6*>J9V{UP+i4&*xW!={Bu&*YjPg+Uq#fqWRk7J=D-^(Nyh1$aPe zQ;c~V!K0vwQ`?FVDHszt5trt;T3y2~yk`2ASN{6Smg(1A$X1v^tiD+`$(Qq4m_26- zxy^Dpj?~N3&9gTbtyxpFneF#_$KC$MOJgp6Wy_XVE*|sJ8@H!UNprl_mT%f)m8rbk zs9yZecUn5Dy{W}d+UhFB-+C)frn+AiUcGi-G!TgH<GkSD`&S}cax1<7FU>9K{a@i2 z@&Rg&<mmr^L=oP-|0DWyqN(4->kk|HIr#&hlKx}gnSoEqVb2RsZl0a_o(GVZZ|h8H zHhl)1!UsQ0UfBOdxd@;1rn>p;FEV~7UBB<z!Os$&r!;++z^COi#QyrLrd#FZF>+kU zM5{+Y338d_(GxOpSNw2Vgl=0y;j%#Hn0EW>)#)|q&)92q<S}`l;%(mv55~Ht)vPML zO+IsjeA^2b)P{n3XL0WhjH%DCRq{`85dvVpRtMk7`xH0I&gr;h)#<}$R5yIT*r^W% zYcF__t+)ZMFFY<8w?muocBRA_A-FDIz&u3X^iWJ8ClgmZIkoU%QQ$FFfW(kpbEp#n zrI>PaKLj^9Fkp`ZWvteQV)pphFtcBuUZfc<FJF|tp4r1=+2h3x)>9o9evhf4AcjjG zxyH%w%YEMyHX5o7vkmr_JXy9IEn=Zm<odSV_H9>K3W}B+Z5Gc<PM!K~PeDmTvz)N^ zEESff4=nAmvzMA1N(wxuUq0t{xUrb!ay@1j^Ti75UW?-ePp+ZMVCXXDd0uc>_FBuO zd=UwB6x+%^ZLel3MxzUwY!yp*Y}$z6KieY>D|v+e*V^cRPr`;;nXNcy=Z+maN3omP zh0Jj1ko<{!qr4h_pBy^G4ASN7FDF;5Jb7~Eik&-GtlY74g;=(8r~K*8ol?~~RdG4L z#pxiM_ZPO{B#Ta*DF5`NeB`8jbmBy&!DXiheuwm7zkl855oKq4Dd@Ngeuzrze9*8j z^guZMKSKqj^WwX{$iYBPo+BU);vneV%iu{c2He*o^v0KC;^+$$z6?wk<~wvluo;nh z4txas`=yLaAOhum;i<0>;5Id*zIebR@V+DKTFA$OwXo6sPJvKupIdg`hWSF^8=J{d z69RH=&l)BeMbelX)x%~@{wU)W*!V>!6#FOl;iuekL5y4SH%27107W1g8s<bX3vfe# z@P?z#!ID<-NMG*}(fT7YVz4A_Qzz6adOF1joS<3YaLBz@*XhsHI+r!=fE@+@(n&r7 zV2>2I9YR1H87)0o1^5Y&XvjXyO%F)iidBZ2AHg$)RWVYtXnR}LL3wWaDRE@UsbGIV z-M@^=HII#_Rf#d?+|hrL&(O11wJ$|QVYx5Whv%J^_s*ErUDMuPv$Asr+i)618TzH( z3q6t^D_;aU1Qob;WgNuS8Jl2Xn2{TDhG+>fo1<A2{LRb?Glhj&-QwMq&COlIo8@e5 zhj$@@_Ki&Y^!oKr%ctab<x@|uf2{0lw<2Yl|L=SE{#`zSE&D<9yyoGR(dO0B=H_VS z@ZrL%>xh1x0R39G?kT3ZLEW6%G<r?5zpwIZe`CInzxK6{<@f*A-(D2EG7C0@&t-3< zQLRv4*kWvo;Y^V#h8W2Z60L{KN)#7{0*gGkLx5Ff{q^r1PWO7l)O8d;LrMCkM50Xf z#3m$nJc)3Rth@M!mmw5z*qc=B=@Vi@;uB|q?)ec5sT}gaa3!k}nd#7(#4~UU9jyll z08vI9_|Txl;RyVU5&n<33JO0A838eg2ci@Y8HGbLQVQ?P*kC=R`#GE>9F_W~^i{5# ztM!Mh8*+6uI3aI8w_G?iBtG$KG7yQ}l%sqsneu=SI9j~F>z+e7CEYjQxTYfO(!09$ zvrTtxExx6TB{PNAOOJHjl0G#Un7BWj4j<1KX-{b`RGBfFR4_D?07v{%ghjL-<`J<d zg7x5DU9e9gQVw9y3H56gmyf#YSbbgUxso%g(z&HfRnl%6Uz=`Vmz$mFlI{s=`KlKz z6Kgd>-LUUoJ^J#BbY%%D%_%*jDv=+pZMVG0uHX`H%xagf7G9_wXQDNU{9!Kw@30EJ zRKjOAj7=13Ld*RDz(K%DH1usCh~cFZMe1X%PvHO7cV*)eFsKjOXEpY{TR7S)EGvov zuyACZBYk^LmXR%S%xMymn&MVe{%-59**~VH`-;-fG|h3ycbcp@!ZJGnswS5er|-xa zQz!)*XW1XZdr4>hE-%-f(X7XNxxsG|w>C5eh5`^r!Z?922oyRFF8(}1L;_<x!8~|# zn05hApqQb=2Qlr;t_c&~m+Rl3aQxH*Vjp`kC6y-Rh4BvS=B!e&HvNQrH!?8QBfHXM z2uWv%PjMi?2otLxL$VRd833f|WF%mEk+M47tqIScaD2l1?8WycoW4Trlj~FJ(yYza zjyOA#C>4L7eu8zO9`0A)!3127`~pmc8>e3T4&4qp5OBK=B!9yF>e+ny<^erHAxDkD z>&+q7!SRyt1!^TJ9c*<JhLZd;G%(-cpJNEo?YAU_GL|I9igPaVmgt+<*LQ3E-W_=e z@4b>Onbf)=Vvk1Ocq<heRxJP7w^F-_bOoPXhb`-d)Zg5R)H~QVi?_3JIev{-9m=`$ za`v9L)R&Xq*6pdATQGlytz#JGUkR+^scV(mzv9;%<_9#k@I4E4)7ASi=MhT-q5)|< zAoij^FxTN!LcXB|tVnS|^#JoWu;fZ7*{nIspB_0eyW*iusf%4+xxTvKZ#IKxRYkOy zjg@n}V%}|2XQgjzE+2S#>FS50Ye!tt+aNa?i&(C+#u#@yXMTeXvo>4WO9H1$XEis^ z0t|`Pl=WJQy;njJm(YMJnt@8JRs0Zn2k3=NaftR2RPaian+ld^Qo`7Jgyb=%dG;1I zi&5OwusoN2ouYZjbL6>n%<h#{uh0r6TtwI%If)n~r;i={dk78!N5e|RIU%ZeRGvo> z|Jm0C)frV?dwU)05qjcn>7EUDu9JI|Hk3cstOR~cOKqs4l?SVi+7<|hlw5g<n3=`k z2!;@OLQS&(Lq;TCi=fj|;~l@a{q|o7FQ)$csQlK?u6TuYy}`aMPrOq;ecJ{1eIS2u z{{;uOe~0b5Qxa~Xino89dP3UqOICjLO}6$u%N>2GLzai+Ki;+NgZnN({cZQK>=`RA zl)wM@5WPBK14bei<`N)r&cT&}t`k)Ux>?yfCwG8~on;8YXa>DkTh0YL1`E;b3R()B zmnM11u0h+!u1mlvJjxC}ik~k^rIR`@fOPh`(8o|~QWik7@GoZ*OMGj<dU5}^<d-(F zw~1{@ADTa3Si%{Yo_`rLI%ug-Fr+ek;@3~^QL=gg8=1kiI8`Bx#H5l(T@7-p`2He> zCSjHA5S-8T?l0mFk0f_vKwws(3K|b;FpQ3Vm8qW(6}MC9z5N>lU!>S$)-3Vgm%i@{ zK7)0A9o}}0tI!&P>Wbgb^{L~NeY+pWr~i%yb$9xYoXOq`%z3{99tWQtkbk>w(IrCF z`C-hv=DcGzPy9}7(%Q9b>f9;0lbR&&rRX}vo0wKGiqJrFQ<0I%C<?S%3JjR*Ks=z2 zb2-5plrcXa@M<Uvsfa7|VAuo85Y>S}hg}_2HBoR($HbR0I6fr-iCy?I{BUOMlq|xU z4WfKn-uU}y>(-?YtnQjU|B7M_yG9y?M6A+fpT=t!R!#_4yKO6{?7EF*9Z)~`EWaE= z(>kU<wBr&<YsuOp|IZ6^4{u&Kc3K6jdr6;0tr0gC*M9FIy)b&N(;3c=6qJ|N=B;li zUw@^@aj;6fc#VoOPi4HCDJKM!x=7+?3u2cAof>~Q7T{Y&_ZzP*5s2F+21z2I4OX@O zEQ-fjv;2-ROEVl^Hh(`ZKPx>KJ0^d2OzxyDRJxQy5e^lb7q_qrYv#*;gerLc_P$Qq z&X>C7cUZGk{weP9Ed8aoZ$Ea7|8=#9Z1HvNa(m-M`SzBsmaDqDGXIn{O8Jg@@Nbh< zouKP{3=--}iK~MIAHrZVWl}b%am*v|P$l@q5e%qM15O8^6%2MP0?5P+R)>#X0NN6K zNfR!^LUN4hj+xjk`NK-hSjAklOv#-{p=vLYUufD9^{;DL^0h0LvTP6P76eLdMysxJ zW-Q&Yo$V-$Mzt^ZeLI>j3D}jq-E?s`eWdrog<Ex&vWC1zaaDO)-DUITPd@0VZ~5Ai zlPm8pn6~peFRG?@8-@k{VzgPN-1dNc=4yvNIx>2A-bidghKJBVk}GS_4v4bwPi;P+ zhCH&X;wnq3YOn?W=l;w>=yJC8a^zBxawq;?{>ASm=1L8da}WO?n&77H+LbTGJMyQm zUq3y+BQE8$rT-yY9DEkfWa&E9Z=zR%;IJvSLM_);VoZ4)Br9eBoLovpAO-xAry=yh zB69>ptr&3BV!syq5iy|+IM^<A!=x?Nhn!a~PY2$v7%`$Ey_vRervuBbaz13;A_Rl% zXTkLSLHV_@fidjb;L(uK96B0g*NzE{?e3O;98w=&+@88~>78$nm@@+Z-oA6GxVU}s zTk;XMQ2D!OaF;E-hb?ru<RhGaQgUJ!aBUHZK9GD8Awr9D@9Q#wunZ9B8kwKLpaCDV z2*FTmguB1DE$sJ)w~_j*GE`7@Q2tcD>BY9T7v-DePY;$Agn&)@uCHa`9N!!JZ+_D^ zXJL!a*(7{#<74rrrubtU@2c><gqoinIKXsl%}c%tA>p5O+t0UL{QR?9xBUFJS$-Er zJJfrb^$U_FnN{#w3bRV<k`}8uWC>7Z?$6fmC<}E7j`7Mk7Z+RC6|EjV<Jz3D1vf7} zJfeN3{I~Jr3<mSTi{_90RYC58HS%N2@2RVpo4h@E`;s56enoxp%~kPbQ%^2G6mH61 zJ91U><-|AU&fWB_VUJ{+s~k;^YgSGf5nsD|!{R^2S}wTC7PRx+nfihE)FTRLfOCE1 zku{!2B*wTvN-i)dpiO5<qW!sC`j^vwcvinJmNUa-!;;7M`p?6k65=tE^T@IH4pXL{ zbsZ^SxW(Q~Kqt~QOz37App^o<;tMJ-mz8qO28ho+403e}cX;n`ibD?J!m8v_QS-XU ziNk*t2P@@HvYX#4<In{;>f<vpU6%STXl_a&MNOxecA!B5Bu)~FD4Z4TA%z6VN!*@> z@1d}J(6VU!Fh~*f8!M0^PSK}ofo4S+5<U^5%&!;zAZ%`b`PJLv@pd`XaI`^K(Xi?6 zhV<^dsSV;!8}ib-+h2XT-PbVH*KjvHX7f^=o8%`pwWBtB7bWT28aCmYO}>tXyi{9* zPuR4HjoXyhFf|XiN?(W3BwU2bx4rsGyBut25LPzavkB$-4O4LW)co`wx>NqthJ2j6 zC|};Oabx={ueP&aH8iAerK%`IH93imuxaDQ{3%p3y(b@InD`9^+g}1dPFMs8n##oi ztZJl?7!HL*tWJeeQuNWl^<(a7H7wu?NGG<<*#${pT>ZL^)9B**aZGb;*PLw~9TZl( zqk|pk!$Kjp&A9^XfAa;-mx=Ft*?9q0HO&=sW-eQ?ow|1Wie;&(J@hVT{sw>RNsvpp zyrgGJXf;NOf=C{Lz0|=d>K2R<FuJ(K8V{tx1fz`Q(q?8CmgSb}?4|O^ZbNldEd5UU zomf@1VWm8>#I7sN6_zr)sj@!W=5?@pr|5#LQw~>qeySOsetC{Mm{VUWk4^7u2nF+4 zk^IZNV5mV@%bqA1<_$@6gm_MV{%NoAJ@)JBAe%l$SHT{}`*Phr*9+>=c9bPsg+N*q z-xVwk-jC~ah(9HU23!2YG(%d`{)q<gFSmY^R5f&8NHXNRlacRE=p~H{2071lMf*Kh z&u0iiqXdT)xN;`Vx5~bHpL~M(k@8M{L&<YS>MHu%-%Y{)nV+KAK#i6`V9OZFloIot z^_*hJCGdq`js^Xkcczq~2wx4r$^JBS#>&@n^f&toVOP#_v+Pv>+=H@(88lB>38A|j zXnM|Js)2l0bh%E5y_^tY(1RBZP(SutxfDMbN=GJMA+RX2j<D{cqLf8cv3sdyDT@Mw z_{voGapkT0V_wS1R<YM2WwVNKSl*B8`sRo#MJuR9efpoNQhvw)^*lekc;+)zo~}dc zMQpYZ#jwzW9>KYU(-`_8=V?+QaQC2rfPLT~VVB3+sE9xjMGk;Oi7T*GLJg3?p6b;| z8<{Mch1F|UUD&jL`0BOw!=;_?u;|ebt4EKn{_w{1?A_1p+4G!m@1A`(?+$eMrmd)| zbx*BYxBQWB-f&xqwa|0h4c~mEdrj3;cWu>*X}*rY?wj}R@wJOL$Zbp~w6&F$wRw)R z(w}WZ7{f)+?cV*|?$o0T7kb3pQ8~t`3u}$JEel3F^-lfh1+89V?Sg5>oKd-=XW>FO zpZ}kosn&I<zlm52%Q2TQO=v;o9+w2*MvfL`r8-YBZzyyci9jSkeuWlcKY#7UoiErV zO;dH{B#opVSzbL#c<!}*J6^P+tg33FR#La3Of-qB*QSTBS*<n;H}2VY)9%0&YMvTu zo@I|daKmk-S!kXcA2_>tZn|lYZ-Uge@3lv^7gSBuXopwlmp6{Cg3r(5bIVd+hb4Og zk`5f4AZfd))x4Qj^R_M+?a({WY9n)uH4CZLyh^K)edj9Zau#EK3n5EO6Eadv=N^XW zaj3}@TQn&#mBa!G(3zmE7U6@NQG$5F0F6NG;6<KVVBvw9j{!PDLo8NQ2u~sbRRth6 z`k^PyOf2_J^9gBRX{j$Q`ljcnbMvvwzUANMZ{Ij<qTN1;ow~FvuJg3j`LFa(9KU7m zH_Ahy@=fw5zQRJ^mE!jLIh7t)bZ*12IZ?MeI%inTXq$EPvN2ZMXibNW+2kqKalzDq z!tpkFA`aOjwzfiXDIM-*a`(lJ(`PiwYxn3I+s0NidF3_Nu*oegS81vms}78>Y@0K; zty0;JZk#r)k^V5WR3dVD`jE@>htQ`+h_<N<Ltq>em|=P}6O?k)LRecoSno+s=kZC% z+(>d791yrR8qFky9+Kbr<`VIjoqu4zVMh=H&(-4ntW)_FO0K@Aphi<uP`l=VZ3|Lk z3d;O%-$98<)*krP1FY!5D_%`~GJ7$5Lq6tg@!}GV3Kx5IF1h2?*CLVRKKZ>*W_E^L z1qH4<-o~|eoI{giu-wi1r!*P1DL)7St<YdIc@#xjv;WfwJHfw)E!)#LHa{;g>e}1y zxMq~UVeI<<9LR3`RaYf;C4<18_?nu0mT)k+OE~#2#cUy-{I437`fp_Y;c-3CoiLP> zN`#z9U_?j26+oCo$~3@ZufX6Uk|~{pb0D8r+`PzDXR~Ttlgt}#zW0x1U3rF^G_|7= z+D)d8Wm8NWb@9T&I?YW+Z&%rgJFimT%{H}LwJu!JWLo^ez50bSpGq{OUMeh;N(1b- zHOXX+oEs=*LU}-}Z;XAfvn%J$6X-?a9bVOq*JQ&^l?QDI1}PJ<0x3)vF$hd;r}$BB zJH{p@aJ7qCmatPWNAxfLspFvpMHm#dh*>0^{!o0LDEMbbX)D~x48noc2F6T>581_e zwWoB<u*{S?ZCd&ROUsjU;kDMe_Vfom?Al+J`Lm9%G0A<kK_QvGWHb*dE4<agN|3v~ zB6^d&`YoiUn=2f2%kRj42(X+&=KPgyT%{kH{NRBbAA4Qv3)%iG|E#dfu^694dY(*f zFA;L*NaPBd04)i0B(<?f{{joQsR45rI3waRi7|rfl=4gU0+2_j9)5W_>WP^ofRtxY z-P_Zv1SF-kmdtUKn~i=IZimictxbXTp(U4}{zs35pniR-o*s2gPfzccT*f2g(^WE} z>(j4tk5m%Z(@pT5;G54}q7&4sKuhr9Sd_JRLtxrOkckK>d*D17)nn>m+<BTM<hS=U z!;}T24Q3?<UNAEN>6aEZN(q5w%Yn3*_|Y7_{Rcwn>aJG*qBWfrn;)&Jdi0{;s5$Ku zb0Sl!>+<r=CP{eZri=gE?;1OPR#QXctnp)A{>R^!%v#NiQHe>Whowgy<9o(C9+e(8 zO-hWM>1Sf%s_o^6q(fypu1cu8pW0WmQ+_w~`1Fh8&UGtRtTPohbdTzOcjw+oQ={d6 zpZ%&wuiMnRxX!QB`Rf+9Zn{p6o5IdKL+hkuUHT_ND4A?+PQN2m)g?#O)Xhwf+P{<i zOfJ1<Kk@K?g*;({{Z)&YNzm8By%0o{L}T)@LSKW6#~5zR<nVDhMMZ97haYcUVP$^z zhOSdR3+wCM%x_!X`na1U33Y^Xh-Xw&lYKpNZXVw@SL$h*GNOf~hnCDUr5$*t54KgF zl?s{;L3?i2wlE?yqYpH0e>@@vj)|)3Hg&x{{i9wQHFB@ae|uk*?e*%mOH9X@^O&(R z{h?;VsG4-w&*X1b${R9L=iW*-^Jl_cHKS5*T>J9N*9s7vFrQUFMV>4-a&-;|oxTxc z!s*cvz{&!TT&Vq^9#CWMiU3Cn{2wS0ouvwx-{9bKxm4qEAfz85$f(%XBs3Fj5;6}l zgN2|~QOH4Bi*lMoS@3-t0%K}W31%`6V+Kb!&*If;ynahGOTOOR-SUfZ!Q8xji?Jpm zY8(!&SX^VY<mY*<afjpW5v$DW7dYE?jCU?zAGw3ps3i*#_6!z%Tw``ab;ulQYgK8r z)nIp93mnlbm)lY8@>v{aea;+z0kg}0HkWjH^>&ZV?~Gd9E=!d&kd<xIduRCyB#WrF zxk5R42DMGCo-o>`(_YlvtWCY5wwt|8iQ<><)&n+>t-tG);zX0ztS8uBOxHX@9?zCf zn>1;fd^`KPPqs{`x9Q*}#Xi*r3~pVP&LHJT$QC94RbGw=LiQ}ZJ=ay9*Xjxca>o{w zIy@Et8iCroo!udbS=l;AzAKtP5@(%by;aV9yDr-*is-LFY>c88NdTR-M0E*zj_5BD zDag1(XccIbif6ZtTd|M`Z~zyuwo;HN1np9Dtxo0uPG30f0Pm{o4OEPL?mE_^B;t@k zQu<XT?+Kv{?nOxIx73J`bhqfSBRM7Pu$rMq{Ctj5GNfYL=dV-b61k_RUz;K(55Fh( zWVAA3pHZs5Sf{(VS~42wG4#A=&pI;j8uAvLP<96^_nzlsMYjOnl&~0t8{yFch_~Y2 zoIzICERz2pEzLd=`aFw3q7KO|Q9&Tw!IL|Zv`Hlk$1mUCx&4KUHotIn=l<p63&&o5 z*Ha57_0-h#Oj_{NU6+rQ9tGZF$CG@65Ur1W{qhNuDk>&Txcuvn&EGG7@b*2kDr~lj zS@*onJm_~lavN^Y5{)u(J47-QD}4#Y-zfqlSp>(M2s6I)f|i4zlXcFX00F@aCe?$7 z1TG+GwRro8201oB;|Z}*6cq{~ir_rhNPLPXF4E-0nNTJ(vXGIH#ck8;Jyl`1-5sv- zj1#`IthTZ7<UONaI{nh9drmes)-F4@K)%Uf+nF1fQZmkJEUFIXsI^|X(%0hm`dfVC zMomvYWwPwZEu0bzP6>E-S&bE9SEgr=apD;d*(*mNO?dW*${b<#b@G{w-81Y*zWwbZ zjv1>qGIrf{jG@GF*SEiYmt*>>jq(|J+04nB*oZ5`!ol|0`O(Cjkg4w2a0G@PGdw3h zB!6qsC`~Nc<CkY&)m*1;pB-A7QO&VlP9@RK;Kfu$po!0L{j-l@PH{4bDFyOIOCB+* z=x&$*80kzv@^FAPlPCKky%VjTLfq9B6`qZ@xdJ!O-TL5+F>d#m84qrqdvgHg>E_Ru zOUCNf*6NN69=vqwp0FA5NW;6QUi#pYDO5UT2}*Z|5%SU;-h<K$@Q$Db86B7wQWQ`r zD#W&TBgVZ4*_tRKq@uQ|kpS@J@;4W%)EceOL#q=s0}GzLa<|-5-8vz5$un#<%R9(c zKXXZJLTk0$bKN#+no{Y#6MZKZwwS}}wra6FHeqAmM#;ZsBT~p7uW6IQmJvgAaY67+ z#8YrKiH09<mIQB+1aBa|X(pY8!tHaGpEswLS{D;ZX-m*7;RNY?W^L2w6?N~o%-gVZ zYGUIo!<y;(9%28?9{uz+hFKdEQ<rX-XW8Ffl&9Y|3)M9nuAYCYcmCBIXXy5Kmlp@` zS+?LnWb~Z5*Exy;vv<2@Y}`1*wR?7;$Z_4=Iin*77A(6bSX|z{UpHgp)$=t_PjT5r ziG8ByeBfmGbAtka@d*&agO!jdtjB>@rnL^QOmRboL#x=oHz==iD;dTPnazU8K|s1l z?h}F`(|;5c_7{(|tdwqBX&G7E_x+L=w+hF%zF6|Lv9rcB@T9#+YDu|!8^+8UE8I=M zCdRd9DOG)O4;i(4iq(_>MLCc@t_sUPW2NCLVbk8do8-0mJ(K0$F`EnDCsv`CGYan) zZXUyulY8>z<AW~lI<5iY8l8F?SDD<c1>o<gM>FdRF}3)5GQ<op!o&b`vmhK?l+S|P zN#C4_Z#^`BCQB-7M*rH8B*mZt&Qg;?kAE3y_>`SKxc4hxi%<v>*G|!ADEdJ~FQ~*w z7`#N$3X)<F|EbTMI>U5R)V~CGRfRZO%eapn^<Gh&WDy=EJqwHt^s|^PWbq`Q6}2M{ z2ahbK#_Wz1fpC&K7ag7j!zZb8fR*Pw4)#RwH=ZzOgF#C1#o&@zFe7;rF`#oodmvxC zoS8z|@M`F4yrFH4D-^gaFBlY^@`tt@N$>yN9(!eonU-sX*KCD`^}_Qu=CP%twcnV@ zel>H0HoKzOTGWtloLUjDh???K2YkjU*sV0>H-@aU8&(@k!Rk=1(GaW&3BO@tO)$Sg ztF8|ED%HPmTIJMKQvuw?qcf0|deW}TH)Lm7Bg|7OdTe3W;g1WOOjDU;O`lSmv+jBN z1zVo<$8pV`ZJujq%WsF)HSGGu8a&d1N3Z$AYCJK^IJJDu+q)VjYu^&9gZWV{f13Oo zqcK<=%r%=s)o6M0o9efjo6z!vkDxgO<FXCbxp0sY0Ag}r>hMJ>z_&yyFqnwdRi@ZE z%^2b)bVMvm_~XW<?4rZMh+q3_<-dtj4!zl2zSi-`hmSbq4*s*Yym><7?xMRE33JC^ z6?GZ9TI#0S_%?NqVnp9w<m=-Gba%1*jPtK|9WHNPf7@;A>94t*ZERhY&1TPCGon7_ z^X8A7*Hq=rZ|Q1k;O2Dj?V!8;Iir@~%V<gv&rb6lL%^nlGRY*l&4<{hKw*>`$ec+^ zb)pGnBq<IE&cvm`uZU?dG#i;n5%^)O!5A!K7?6vEiHmnP?tB`l>E><>W;Y^<(?$4e z%nojxd+?VBW;HdE{M`2rZFdWmf#NLrf&z=yXMb~^)*L9wVh4Q|jn8p>o<`%}y(m5W z>7AQHb#)>3Lf*keo3n$DWCw%Uk0{$<_U1(g^W<S`4jx>CG?eL+JhRJao*U{1ZqY0s z&JEjK@`sKv4%i|(U`_|-8?}pKlgZ*X8ICs2fcVJr1im7lf%Ylw#MKrcn_x32L7sSh z<@QQ(VP$3N2zIckl%DoQiV3F*vIIh)Dh84?>2PR9MWd-B(Ve^wF4$4YntWDU=?TO` zB0|{f4WB5pS*dQ!!QV;A+3kc>4?Bn36G$M213_#WF_j|$G`SCB5hW1}M806bW2Ao( z_XIE;sh6@uG9MK%)-yaHj$-y68xb#CkDaBS3JjO7?7n4xHwbO&DUjFh{bL#$#_(ft z6hFSD+uo!1di6b$GxcO)BP%!ob^nP1)>xSO6}#nlfBlOJ#nFS;AHRk9Pgv`khSyn7 z5Iv*zRWLSL$Zf3x5?)17VBv7V{o;AHPVgr<#;5^_g6En)B)Y%A>)>Lo$Kx(jmlD=S z?kiQ7dfaYx4QpllS*vF17dRfIiruAZTzL59mk*=5y2SH*Umt(BGpE6uwt+Xb(Tbr$ z6k&~t6(UorU`JNi8VObjFeUJ|vpe7+SLh-Yi9Hbm%LG*=*ie^UbfTe&hLYXM?b5jL zEt*ul+g&ejl`mK;FP68`0o%#$T+0sr)w|CiwIXhbWZ!Pr$WKd}W{vJ<?|z-3$z;lQ zPIa0L8kQ8Kq(&#*y-==_s}}aX`DWij_7nCK+B-dOA3VnV3)Ud(mCo(D=RuJzZ8ixS z-Ay;?G=fPE$k$~vqj}|%>MZHa?M#EfI;5jpFYSe$4;Dx)AEXpun9ledP%f<QE?8xV zc4?V(ty*-+|H!t>V=ndm#D{-^&Fy3^hf$w?T|VeDIfc5-a=Xu`ectEms~6nvLS6cO zv>W8{4DB?laxsgN&<kW%U5+#gYBNU)-C$aR$toee0LQ^VE#hcfP#7NEnxoB*U)Cvo zhOE(jy5m^#wJ&<Zx2!z%ot3wU_bgxT@gPd#VRWcxWR%Uz?07Qe(ss%?oqAa8NIm>O zZc$Ng_sus8CzmhJZt-MiAIA1@c2&#l{vBMEox};wm(GFj&~A){FxL>qNu>{V3ARuy zpdj+32pn=ef>B;kta_g>74Poq61%-VpEtF?t1GoXr@-gcJazo+g5$!%F$c#83(r@q z=_)UmSDUKpt4#9h@^W^wvb%WkxkZcR-yvwXih0j_27NQgZ};07iRQai9!?<2m_|kX zAkp@)Dw3fvaTT0E`_b-h&Yg#?;w#+~K4NoA_7FR>r$oM&GQxi(-`iin=6nncL3uw6 zeR4)ZA#A~(V)-c5{#ZU*yqhlHUCicvOqa8H#d~7u0=ZL0_At7%AGbi`Hsi+()ECeW z;N4)J%Bc9<9y`xz1Oli8C4y5e=47NOhUrRNkhU6>#0T3oz71+yd>2vfSR6hioHXW> z^#S8w{H(LNxX{0IL1MB0>J|6-*n^iw0w1m1#mXI}CZpaiAJ`YbfBWPgRygz~W4VJ> z?CSm~5Z?L_^L=B*)&9ka1-tx(#p-8)6l*IP=W^Y;U{`I$v6tlUeI)5UTOZO5&-vEc zkDf8=9riNQ`@($aMO^b=$TyYQ9eQK$$7{cpGhFxJr5=P@`#Vd%bgZIw*MeJJu5l&o zal+pcPy1WQbZ5BUI*9puE)R?3l+bS4YRP9y4fHS_|5p-0+&=pN+obp+d*#(v@$Xe( z539kRB+nj^%1(C986p0D#Ozd#@Hh;k={B}kmgNlw0Hfy0_YNI1xris)isxqh$1{&t zq=t-%9h?M)3c_<qh;Jfj`LN35wjw5@pH(2=4u}NQ`~5p|OzJ_mBW>O5Y|)RG&mTo6 z(>;BtHi2Cvsz`81(^gTYKzJLtfr!0RnbF2nKb8-_exrP91x6J9v3@hVV$;zUg1(!9 z>(AqsX%#$rY)A>4z)ulCkZ`kP0US8+Yg0SO9&OVL@WiypSId*-Z^)P2%^qfdVRP87 zQ+nnXyV$g!$}jX~z0Q*I_vLrDNxxv@<?p9<0Ey~{segmeE#H*ZUUPAJ1ba^Y>}AdU zpZ(|!@wa`|w`&cb&HEFUwU<-Zy{UcZluPrcKE3p5x?El=%{k83NmYq%g7hSiGXVWD zB-??X0pN`p06PXS7DyV!jY1&CCn`~G#0W&5R4KBGnX9As38lUYwLN`za$)Ld>--bt zwewq#9A<{@@)0A-+5Ny7ranA!MEqTM_Ovb9U|n{4%DAr9F&8){SH9KS1t|WA5uMHQ zCvT0x(BtdIM$p5HVCRIL3zG?)1Uk2WOU~q&T-=@j+Q?ZCMbAtUBcWFk;%QHC@6&E~ z_x@RlE%!IoEx-2uEvJ)P?!R_<UDN$r60`Pqw`_mXX7Xre=cyfU-Pkf>fA_|T_iq`s zrNnku_m=zb-_m`TtptbnPu$qO|EcY<+F<U`v1wKDtbhceCtXGWyb!eA@fvtBaDfjj zD}Ou5uaGk7B!C_^Yf~_-Dr~Y9g;`Jd27JGeY(?nSG(wch(+BC0rY_y%8}0K2gT9ue z(9_)K@2}O>dSZ~up=r*13Lat(#u&9zW}aY4Rcz^G?j$&B1erv+&<zX(&vyl95-ycN zQe(m&_>5qGh%Wagy}4028@svKU5;ITO3u!lVt>G{a*F*ynHESrkAMl$3sD1+Uw(&+ zE{x{pvYhmfXgUeCC{oTcFUwKRdgb47+fhH?JBU(KWwT6#(F~6Uqih5q8v+AZ(BBXh zRNTg(aoVXA1^xKo{^Kvec}rcL<G>S-oedr`ZR8U*$>*yC$PIRs0|Z&6)CrEe&&e0{ zN=Hw=SWBF8>PPukP6ih%mh!7JKA3!;_3}HN&C>@||H3!@3-A1|zZrC%pxX+TG7DT+ z88mWZRWqRNUXPfDLs2n&cv7p<lp*1&Py>OHB#lhL(CCGQ8oN>noEz0CQZyD^H=}W( zSLg<rb7$Z4?CW0Jr{1~mwb%BY-n#EK;hNf_M~Z5f-?UtK{ifx7|MW-r3Duzp|LQ_G z%YKeMeoko4?69BnGfE|1Um8#MOiiV&kp3}=X+Ivn0{@NA>_0u5%4UySu_9fyVtgkh zH}4!j9#xcm`O|?y!GFH0M3W5XY1dh*rHH0?rRsXjKF~un44?HxD5bO7l5$}Ww)5HN z&TeO}8&ik~zg_68w*9hpKl>b8L@m90@u?dY?|x1AcBbt%^QJ`8rQ3N)s7?y?w`N}% z)z_>;{e7pazpVY0E(z7CA9!uwpBC@lz4%Z2Ui%Xoo7(lq<NJSCtgs9;Yk!-sSkX88 zwSAi@bMj_>&6oAXU<XnAYoMF*=_aeck1;($wGf)A>r@9-szfy`{D2A~07(I~^iVq% zf*>PeCTwXWC7~!PAY)S`tns+Olp&N!RX7$!^oLp~vA~guKBS!1a)WLpDuHCi6U3~6 zo@-#}MZYED9yk17V{u$WC3I`j#m2>W7;r_Zh$DnF`E+MNhc3rnHUFZ=-h67?>c(u{ z+gFUXBrT?ymszDE>y!&@%cF()zEKBnzW5Kti=$>Y)6I&-TlC1wWP=Cv0$+y?dWtny zJoU5hT+~%%^XjMgb~apc^MO(I>$~QUV&B!-%mUN3#A35_%w?{uu4ErFU9uZT2yIw? zK}2V@6zU2bx7>Tr<<=r0>zi9I{rQKRek}OwLpfE+L|uVoD=ctmoQq;h<cXqr>kOyW z+~R!mo^erw+E6rgx@gGDvPx#NCf=gc&5lb<r(>x<-}b5ysL!<*6xyVMx<s-nJ2)); z>mO~Zn=z%xpl|3{(IwQWnO+A)UA$ALYl&mWY?iXL+9^<>#XGG7C0TiDrjvUeUj4|N z>@^mvbL(SvJ4|qp-{cKyvK`qnm}Nefz;as<b_6cQ(DG!c{y>u5%rOI#+P#12gMXG& ze|~W3es%}<Yhpdzzv&1+&}<;@-m7pL)vh9M-&0DCSV6^e!@^6PerbFS@cbf17{$nZ zUiB*GwJQ)wIQZn|{3INm;g8F=q!Cekj7g=7D%|!>79+xj!!)Gm>@X(XkOMFT$?O3l zi4g-c6Uh!R7b$EN1}nJ;VnHSup&yTkV-O88IsKcr>~A>n7`yNA12WT>H<OD<+q-8} z@3tLReyE_iT(Hk?Wz98nQuo*SDx_k+r^!|1QX^z>ek77_vfI@-Z1VVvr3&9bg|JIP z!V;>0^d^H942t4#PNr&6&@&ttOM~~4a5&r(3Jtv%RlvQ9`Ms11fiR<(PV=`*CyyWB zCO_0%ejLs$OV+PnLVwsjUf#^~EnU&nyT$Ydbk)EsMx}7ze9vv7=SKNA;Kc?%GW}hy zvSdf|i@)?{%J-r{l&78VX7b#t$eoC2*PxC<1X_uZdl=)up7LSip<$DcekLZ3Ogiw3 zLOiU&y}@y2&9FV8%&+tV`5%HIU5GwQE*rsC-lg>G8u4xU)wiWz@*i={K+p0<^eAn) z9llT-Te>=AbUU@D$9KouZ{Lxful)MR%Lwh7zL<XlZxeh8=7?&aZoD)VduG*CSbCPL z?&IGQ)JB3ukN|5v34BQbRQlQkO@J&GAyfnge>@RvmJt1k#e$&E7NjO68|w(rRLq<# z_=9PSD2))V)fAB%uonIuZnee@TXDce&J~z7?pilEjX)Gu1pq*`Fu>9Tio`>hIud^x z$UR;HkjEOhhQ!$ZqkD2Dv5|ib+vmy0jb_Gvq;^$BrkO>J=G*p0r!#kU?6~`F1k^P; zj1MvOLdhU%%qFWD;lH&Aj8tC0%rU1c*T#yh7RK&JK=tG@rw!?br=(voH@Mv`*9ba~ zGh0X_(U01smshcg<4Y<cITzatE9C=$GUV4eR(q|hH9Kf^=1EIf&-K@f`W%}Z;Xn2I z=HEv1UCxoyJ0~@ZKTlWAnl(v?rC(`iV8bE~=g5)a$OVqpY|qcfZg9JET;`*vB}1;u zYJD-!=rtPbW}{Xs3QVZIunSpC1YvA4<gj14QC+no*Qzxd*Ia0B_xmfJ79_nS{heiH zyKR3PGuh>?(XgVzKf#yU&L-$ZCQ0fdx9Bq?)sI$0qM&+@TeOJsBM34~<Cg3a{k&um zvY=N{OgkcmLycJst0~NVnGCoAbOSB2%oFVQ%}#{5oeN+mQdS}w1C3tShs0?p{K;<N zIb(Tsxl#Vq>S-NqbFhgH+ZcbqW0milcu;t)t+uwU?vc{y+5-pHHpO#;MRj%K!F%jp z)VGWn3F(eSyAj&QljC)#PZo|2cml=60S|Dd0akRN6IJWRziEZWKPLyw4_ib`3VoY^ zbw|;2H>fB|8<dc?a414UG7zKxAp|S`YqSWBZxMkLg}Z7(g0~Onor&lpTOg1PYQPzy zqWbrn?u82D!sR6Z#>$7-WAcPoft7w-zCm~~(kego-Nm=euFFzOd5zPzPx)_Fw}LqV zTRFP1uV&M|_imcUOeL*bChlRS@17d9qM^v7{`lTashI^g1}8sWTX%W;OE0xwK62~D z7lcR5>Z~cAJZ(hrW7lu{&8EBW-6Z{Z)4hG0va5%c<zFtp<125jQS1tQO*KKHCwvl? z5N=%qBkxzatQk#7fLm5#aLnY&{jd#Q*~fA!DsqlNP~s}FC!ZuiPA24*k`DaIC#4PV z{J>jM;{Cxpkc8NNXi(&nCviSas*@OZ$N7k5L939FmpLxP1246aL@7v$C*hbIa>^K< zOe=gQwu+6pFjN#71S&V;m}8jD8R-JXK@u@okJQ5-MUR8RhOl9@E2)sCgw!^@+)6uS zm(+k1gXN40ule3#wd(MDJh(Z+67(vS<s>&04_>K^{X*S1<UP{^Z(RqPJp=DgZ%1L^ zgWw2h$%nCuHZ;PuP(0yN8X2o4!~_4b0Qkq+5I7kCUFw<zAghP){`5I;Vqa{^66{%~ zbT@(&zB6g{@y^S<xjX(eH8*`Sz5TMz<HBWvup?F0c^SM!%hih~T>0>`4_`S!`H{Dm z19g0upvT?nAjK&(T61}*!pk~W3+tC4w!vkohrPM4-+fspyAN)m<%8Ga7P<oWaa>zo za2TL`(*XZd0bJWe)qK?&)#a+MsSc?gQhiVLBh|0)^^`oG_g;xI1t?U&=dE_6Cq>0U ziBRcC<OmreCAw>iGX1G^cTJqE;r;tm@!abXQTXih=Uo4}`wvK@%JYHOJnMP{rpQRF z%6Uy3X3Y8XThk}yXS-7m({2ntu*d0-n4;GCtQqah8{1vb_l?X>fm{A`uvmR-e}#g+ zzQJNSI8e-97+O4V6KVEfacrP6b!?^zBK-urTGC#MQYrk7HMew~gtKqqNo9K&#eD|` z?iL%oZt!O8Z-b>wKT!AZVCj(89P(skd{KQdcSzl@4cq}((0|Au=@_usLFCO;sjIm^ z3N6`)2v1JW^gpPJy`1??3??`e6KN61Cy9*=n!wNTD3>HoVL=aDa16$`8dfev(|{Y0 zqy^|5k8c@A;2bx{VMQeN_6rNQKD@uwX3a-_Vr$sbZg}Q%;hL|kY^|&=UcRKNOFJtk zJG-#1e4*&n6g0X4U9?HbYMhQmmNK@ue1$kY--QaXasCEtz+WBQJ8n$8y|@_h+XZJ; z_=+puVx|XJ9ZwYZDq;-0{O)$?1ocF{$=$qRMN?j$;I&$<c^0=I_;HOPFWF?!APZoF zzpBa~H)SU`bvNbtg>1XYl5KGcPF-QLL1!Y?3cd^JGXdQM^>eURPEg&15~qbpXh&je zNN$LuJweAa4N4IS5jnxl;vukA$W=^QaEcR!H5lNEVUR+|K1<>TVhen6i{r+40A2Sb z4G#RC(%|aFYo0ixy6&mNp{iAjZTV`+U=aj^I@{s5ZeQ~RBEMua)f2MeMy7dgqwoj| z-G8;Uz~U1PkPIybeZFn+s<M*1zxyZohVhYjq|`rSYGjgTjK}HBD=V6;v*uRo^f@`A zy|NN#%l*?Cn-ZESj(6H|zBuWvvgCP7^2Lw;{MMm)lO6U_FhqrV_;YKe?Cg?~+n(O? z*1>u64yGj2hDSfy6|^B+YU<W!ZY_&A@)<%u8h{KfvAQRJBz-?O63LAk95oAORb_ja zE6Z&5nCyb!71jD2ueVwUGo_)LDpeSqv4u11JYHl<G?<)51mnz&Rq71jjkunA1NRFg z`v_m!_?kd!paGpL76MWT)xuveF7(2Ak|lYplwRaI>R2cD(g91Z(`;A|<Pi^<p}4?` zNqzw2(Rvyi&_89c0%}m_>BtMT2;BD?NUBPH7`F%Bk?L9mg3(04ePalajENmL3~UtU z6~ZUUn21TP!D{cRjVCbGh~LIe7>3X+%sFswB&)iMV&E4<4O|Zr5sf1VIaLjw758u# zVJre&0q`UckFIb8h)7KaXQCeKM>wVI8EmZ-n>;Bl73>vD#P-!e@u}Z3scm(e#D4pf z7+l?s(!B)(Rf?rAsM1&WKwXpV2Kj0xSbfjVn#G>;XUS)>**|O}svo#SSo=Wr2-^+p za#^Ocf4<}fTT|UFTn8&Q;<|lXK9k1dne@n2pMT^kdMmutcwT|tN!nYWrq@;%?3FU_ zbU!^3UnCp(Bh&lNexYZ5RvGGY<$Xkn&GN`+viv{f>fnrCgU5r6Ks(=pK2xzk8Os-J zkby>UV`2badIgH&kY+5i4Hv)>!4Hajl8H&e&>3pRBF<YWg`ZEC{QixV@|9Aeyc6T6 z=EdRrhQG*aI@WcTCnWjG${XeP`?|zsBfm9LT$V}A)BAZRQtnVHeH=P?w|tQ0#TN!z z9-X}Yri${L*H3=5C9p6q{|~$1?t`JzJz^q#X-y3nk(a>qNq<yOV`s(sQZRsS@&)MU z>WB*fWv3tF8o)daIKgUFnGj>DrZu67;iLe~%>KU3q+}O(>^%8nCAwLnY8kTsq@d>! zlNq#KhIiLdt~oa%QmE8QqYxuG^pP2GQGm2Xn2%iQpco|d5;~+l`}`a99l;}jo55S0 zQDOHC-(@NbUanh>cgVcW5vswc#*oUGqwqb;;G76u3gwo-p;;8e3bt-6bhLoM3KLdw zW>DaaA*1z?;L-R2C60itQC3DJmh!;T$aRghIC5Hz@$xxh9YMl@aI6~H$%@96YT{*M ziwwE)#lMz+k<{xxtV}P+m3-6pKL6J9d#5WuY=vaXE%mo#m#Q^hkE<N;s6u~Hr6{%g z$7_;qn<zo6Q#etCXKR^8=kW+;2@z7OFf6Bu;<!i~YXt^Heec9*bmEMF9Ei$?KG?rq zt$rlf#DZcx(C7X6^Vd(Ge*N?KnKtcu_6@Bj%c}NzJY_)C1_?hE1Quje)wmM76LENr zdLy!7W4`4ek^>Mk*=0b5AP{sZ)r@Ft6>}$)xq$~UXmvz;#Q}P_NVO8y4YJb@fsXY< z$dq4!dm_;=%rLMNg@*pG#s9?5Q;P@qky4(KOKNFI@jsAo6|WSlgG!KJ!Jg<q+_R4Q zUi{H78JI~BIin))p&q#xdPupK?<@XFbY6IjjKt&*3_79NP>)n%G?>oX_CQd<UAWu@ z*(){ySpih6NA7`_Qje06X=n)`qNv0FAmlJrkH5I@GY(#5d$^=Dq^%N&1TkBsau8|= z-^E*lL-5YGPs&Fy6o{n@fRy6K13ys(&&`qZWNM8H8lp;&Aa_6R4R>wt0xLDJ4SOFS zHYFr~{Zjc6#3p+5GWqMFDdKNeZ(7ot>vre1F4;7=`)f|S*~bV(sF*wd8mO!c2sd!k z=Q_S`rTx?iZ+Pmkx)OQ&H8<aU4ZEzQZrIfFarODx1;{KuY;1Y?*kMR?UXYz%KW=)4 z6oWrKEicoRBDUs8LbT$u2+@l0>!O<CLr~mYtd5Z)hnqA?Mp9QnIqN`3XJWY+psrXL z6Gf2r1%O@QSp=P~rV>0BMl`mRP#l^o+JK(p651fCIJN|lrHNa~BzxHy;{sL{nmNku zIK(!TC9Ne9`C+ChFuC0wrSk0osdDPHoa4uHrWcn~N&)$f(hj%V2t}CuUy)+1E?LGl z9J1S6XN6eR0^{g%hrM}3e0V{AVPIt2$l*p~G&U}|Ort4{Y>$*`G|O7X)>Rsf!*MQ9 znC~ARAJJ@gYPQ5n<vZTYk?N-x%MbgdhMAM>2j$ZRGs8sz<3joRvNm6CkX6Y)33;=! z+RE7ag~mX*XeKmrhwKx}${Hj;>xj&(mvVl_mY2rT*N<y)d%|TShc^t<XbbXNMn>x# z_L(Ewh9?rk+eXd=Y^}1jCBHz6-0{OlmW4g;7NA-=&jhS1@-E(s1KwEfc#I%h)GJOm z#09jZ1`7v4n@DvC3W&xIYg`_lb&$G*v%6ua%Mt#K*H(rqjaFQuA%V`V6=0)RVhK_h zWggK2)PR%<I79|RinC9Hnb>7?KZPGl)P-?5`iwkDGl|6DG}<%O5_E6WSVDFSBCQu$ zG#gz(%T!6Nxyg`~1*cK9L=~26%=(8vm_ETNxR-A7>%C>!cmASWG^{n5t;-A+sQlEA z8%?%h<}A$)SxDa@3p+Gf=3zFI@o`CTfHz)dHJdIpNaeq{GrP>I_itM27Mv5NfAFy0 ztXb|p=Xvbf%iKZpM72&UwV54uOW)&Kt<-J~x-Qcg;mK`t*##dnYcBN!Eu$r^?k|4k zc%u7zqwT}3lRwz8U|x2@VOlSL?-`4Jt*O9b(0H};R%tblnF>56gj)U{8_5hNkI(d& zq+haB>xGY)&vc>Q@(dff-sDJR&s(tLgUQz6_R-(#enS4U|1Wrn(Uzd+QjHnxjooEO z&=sR1&k&6s(El9C*q_g%0s___{BfWVHWKtlKA%|xukwMZjweX?q3#<&5R?eOdkP;5 zyBi_~&?<?IHbQXn1iCg6N8BAOrQ{OLWgZv2Yc-fh8e})*#0wQMD`_c(REfDwc07Uw zBF4*mhtE|mflx!Wlv2f5!3-C>*{0LEjfSq^-wxgRx8MSUF-xyA-r}60_d1!ryLSHn zWADA=<EpOx(b=a??=xqbrWcjbjM~hoTb3nRvSnMAyK(Q9jlss4W{9yV!PvAU6jMw~ zs22!<B-AK|Kmz$dNSuV5ko+Jw?ZFKpqyV<&@cXVa5*U(u-@EU<KYt+4>F4aT&)#dV zz1DYqm)<S}sv3=)ep<}AtW#>{WP>P(@j<hBFfJMm64&N3nvKo|BUF|_i)ApuiIOOD zwNmFYXSCbtZLA6icKwRxtp;bnAiRI{t<PAl3N&``HH!vX5hKT6Y*F0$(d(ao{`yh9 ziAu5`ocS{r(v@RddnKD;#x*UbkZJjrj#10O1gDn`ZB{<O+uHPYF2lYn8w|4AAC>Lq zb`0=>tqsOtS>UP;m`6LdE(`ivuAX7ANi(*L8G=rL3h+VIXVGud7)?CjZ5Y5DWD7<T z@ULrN#VQ0zWi*Ts&?O%FEMcg*Q2Q``R5%GL8crTedfrk>(_+xGHKhkZBKQu}*KyIO z$H*b3?UypY;%D+RC!R<k2H>Go?&O~wj+1}Nr38up^D#w{<vQQdTxw!8k(d}w<&Hvg zfc|idf3Kybyu_Eqw^iP$>=Tlev){o&%KFORsO&ymXt}C#;3|hx*sOj8+>`jQ$)x_f zsXNm#SA9|x*}&Y6Ot+~#!a5%4!t)eG->B-b2j`er2IsL48=)iNhFuS+-*Y&Oc&d_> zW?_MS87YfRc}Tlb2LCN~O7(Voy+pT?v(l&iMK8b?`ik!7x;G&oX+VK=YGd#`Q!B@x zhWLc~r~P>pPb1CPJP=t($qK=SAxbVaHfw4l4NVR^eA{#_d@OQfMv*cpOx@52(E{U; za&U@k7)*%9QURw`&|OVRDI-dmlH8c*sH5P2&SBT=I5c}{ZdCBq$-RUA>Wpv&>P9e4 z;2v~XL#*O5?XQq2Aj#Y`##^C~D^M9QfCAWq3;CZrbIx(6-UL05GYc>fY~6d|7AypK zY6NC7IPSaZtNX4UGnx5N)>T!7osvFcAMO0{54(qbUP|V`SWQi=TK(~XZ_0Mkqf!O& zj;aL4{Y2FrQXxsZjP`FGP=B0>*VG{9lr!*N-*ER2f6_fKX2T5xR#laa**LRl?7Dq- zAG{BR!A(&ZY3qf1x1L&*@l7pVT`l=PYroQZo9%X6y&L%_I9}0%&7<Q-AHLSX$(+H@ zDA6BtXKjZ^*6m!zT(>-XyTh4{8jNji@Dd45Q)}ms)xU$3@x2AZK7bZchQ`K__rc{C za!?{0k~?-g+7qNlCfXf4&q&l`r*P5o2fd-DCVByxbNhxDFej8`<4?MgriIcCwzYYa z_N>!!+xRW&pO)=hJ?GG;g)?`&_Ti5{SG3#JWa7;II}?}8A5njq*t!4A#3dv1F<tri zBiI=9Xn)khsr4yL@!&gaE)Q4>FmEmKq$hv+PaCMI-9Tl=&`f={nIEs}4|5MY#?vux zfA%9?w%;31f5+)$y4#s<T>F*Sc%sT|?yvnwSKDVchZ5s>A!(i6uI`b99o~_JEiDU2 zygLL*1q_o%bbjUE#Je1~59(5NQ&TncqkSCQIGU|~a^7XdnBM^I`(cz`n|5NpN18oI z2DD9@DQdh;Xzn5%`V^Ow5OD_D7?FkH=+p!p(>0oo!_Cy#Kk?$)gX+<KPNt3i#&Y+; zb=c(ZrWwi}C6Q1*TF5`t*kAsh-fbwq&@U|NZ=4uy>}P+^tjkEz{zmmEa4+03obiqR zhH@8<{CwTPJq`Wu;BxIAzQmsX#s+m6<jp+|js5D2Dx(LnkJZDW(5W_h;$oyYq4}@^ z?b6+&`?~Ha-S>2_LLQUEz-vr~%z%UPv)iJkqyGPT!X!XiGjP#_0u$~}<`$@KimXPp z*D%eG4bPh9@_}>E<M1SK;(x!^Z)!1h8sLpKu=BCnrPo%wx;|b1AMO6|yI^k4YJ{8I zUO2|VyLn0Z5_T{7$l-8#mzL~aVhCk>;Q`lvxF@I9#QXgILmq{vvv{xfkl%k8Ib<fc z*x}D?{=Yw{mWlc^+s!#ErJ@qin!5CoC&^WhzvE9%mKm;!F{Xhz{+l%oe?Y#h?}ImC zCdTaz=pEp_;mL%cVQXVrlxeZlNSumj{n~sOBf*qOh0HhPtg7s%afTw3h|-!cE|?C( zS{NgcrUO(61aT=i#QK1}cGX2Imn58nBkNCYSU)o8Oe|S>(W+XTdM`1I(kqGU==UhO zScVrY7@k-Wi4+#EF2B2a@#CDcq1_d!Io`WcJmxK}UOT-_G3ReweAUK{S1rCVZ&uo- zuU%d8ezd0I|M;|yvfY(E<Li0`271<wOIIsOb<eY7vOM-|kD5_CLTlUArTJP1$X}m? z?D*7<V1pm{7pR%Zco2-G&^U`tH2<K%7Go(Xm^81Wd9zz?Oc1974X&DgN-2UcOimi- zo4riZ2)UYxWDovUT%}D?$gW2wc>;L=Rn}6#h=~Jqdx%>4#bc-gk#`E?tA+{DQKY;! z3S(%+fZ76+GD?E~D;GitV{Dze7?*N1w9`kW=?(=|ihn{RSPwE)R2J$%q9NsMQbX*( zwx#p^iji@tvDs;iTp0hHVzU0KBhOx)i;GqaFUW&sk~s%*T$RtM-P&WTJ@3ol^{e}C zAvL!1sF(b&H?N)_S8zi<;bU&686@2tFIhvw7t=WAZAp)vdHeD{c#1bZeDTU;Ta{kM za~N_knXMMHWHTA{0yddhO66{yAX{5cvZmJ><zwC}$T~hvT1}y8TFGgl{+%vI-ru0L zJ#TaBQS{k`)+8R!F`Ez$jC?8AtXBj)#A4RFY({2hoO)Wsws0)69Q=fvm!aHm9aZ5u z9_-rGztHdFk*k++zNkfSLD3|GEt%d_v8tftyAK^#k2fq_)4qI@KO>qsye6nZCB+5^ z2THA%ZFpTKb3t=|(*y9EH)hrt^hyl4GHP3saU?QY)^E_-s0YELRdQ=On4*PvlX$En zycoWs_Vu+UMm9lBN7H7snDk^M&9yW2kxSj+>#CdprEs!MO`S7&L~AkHm0BAmyqea6 zVb7mzwiP7}?L#}Jsg#qaP~*aBXsT#PnW-~AU&c};Y^TXP#n{Y!9scA<_Sr)7`m@en z+g#ZD2m+!UP0L0@39-&x?KhiDVLo2fF`HawCbPEDe$#->%^L;LZb63Bkh?w~&o8Q` z6B<XM?`$4g)|Cs}Z7Vl<f;HKiYO)1wTi#WOh8%;AP_)psd>iem#xcded4<<dmG4>> zA56t??Pw$2rg~8>QJ?dKtS-CNCUZvKZ5z0$y(-R!Q35()c89iMLT)f~otOxXE^Bfi zlIxMZldmJZPA?TH%<tS3iEQeeuN_<8z9vyGl`M5eQ%-0Pw!-iQGYr;B-EOZwZgiF+ zd8^IkcX_<I-dq+MZEI`ooSH&kqNjCft{y^fb?=V;#T>V|e@E|XY}V(N=7*9q2EDVh ztsaLH7i4jv;>Im(j%=a{o)*2=-CYW{3ptYsk89P|jCGchRG(PWzMd+3hgQ;xPE^6z z^Ewk^cznR`=tL+p2IkO6^sxkY1po-ijDscZpM~D@`_#+tR-fd8kEw6mD}1D0{u4H| z;a>HP$GG4}8~+Q$`XvYuc=>8X2R;G9-JhvXKJ`QO3RX~k3AXs*SDs=6KMR*<sx$xX zUxVzmzEY1d>RTA2s>!O4;f5qF`h>?pqZD*b>OI;LGMJ?Zwn76G)H?*6(-6h|K61jA zwVj9{d7pX=wV@uXNnTz?#G?8^@5*|4ulfO7l&)VXtYdZ2kL>o3qFMFGh<B*AY$T|} z-lgg>?jN;7-VycS(-ZF?!DBu<yZjXIdD=ZYtG<S0kNA)9sukRj4e^GRJUO4JmX!j* zP>j-4%&M-b6%<`FAWtIa8NgK}=}yuwJE|E!31x#n4%2)rM0h~7qnhV|=&33Q92j~T zNU%t<^7LDNSqsykpZ}_SH0DfJ7CA^Dg|Jz1#)wlZ7$vZu5D}V6EW<(aKYY6I{-+mQ zudY4ymC7$`TU0(M?CLI1$P;fAVvVNqJV5+wRyZmrxp8PhNrCO;K_Ww)W=4P;QU?ip z{c-h)$Jmc*BX;}3mWgq)3bW<Mw{~<rm%Vl6$W^(mziPf@A#xGlUhM0y7T=%?u0Q#v zdZT)8WNlMp7p&8_&Mog|yGGXx^<49Kt##8Swd$K$g8@?>t$ZK*&<?)`{dx^rA><$i zR!yb$60rfkEDXAnTp^^yPJU<@$jP1r;3k=cF^YV0q+(@<nOVZ1kM>#uMFI?22p6JT z3x^zbkH1!7hw9ySCPiy%>Ke<hUHJ&KJV+de`j#vTf+_WC%7mps{fz^AaqN*R%da)p z)YL?oWOvuIL%wRo=N2C|@uFl%mjA7H{@)xSafzult{y8yqSmjZes>MKT+<>y@I<2? z=1+#%-_1^+Qm1&cKE-ZTP2r^a2kjW(!O%9(z2>*6uUMne7S<gvnU_c*$6x35aSM_L zQA8im`oX8Ry;f+IWLL*aqp4MflS!600HR>pBP~R;@Q@A8I}PfTW~xhrFe#q2>uAu) zq-hu<rKLg^q>VbFhVMFg3gS!HH-U$v;j3RttaKPH170Cyn>WuE61)Qzqhn=4j+Yx* z_V|q#d5tE2I(_S}e|1|;B489{<3%?fmv+5%^dtaa=wM{o6LF&xaK~Vizh^NrZkf84 zJKToGMuXe2yvr0rE**OnMP`j!eST5@>)USqwJiFK3R2ru+KRdpKHjsyCbJsvZ<i}6 zRhSfuBWcN0jz5iD@?T<I@QN6SX-NMsoOxP?hbiQRwC{Fy0$Eg2s`N|sz5CRc34}70 zn4)aQfY6lDATA3-6^M($9qllh!V%uvMx)aw2$!XPLbx={iMBc8K)CQt>ich~f|jS{ z#O=6ck&R9vT>e4BBcLsvySKCxw8d$+2kdSQ+F}kzqwO$ty3L&gZD}<IdUkK=4n;#& zv)yZTyY*23TdZW*A{~3Gp0rFf|5Z(iE$Ju>Lt*5)XhLYlRF<Fr_Qh2l(I2(1o>%KE zIcw*wX;*vjHD{0gcW+gD*^^IR*7vnrb~SmuEjw=entg26tg+!ro7Q~x3jEjw#F^+c z)k>Qkq1P5L25EHfuw79zjbTWJu^Kz6!&lla_3nZ;CDQ!f+%roy>_7U}{2``mD02In zKh~|?z7G!jeXY%P`*_{<wQBRH$H~S)#{diYc>3^LM^C%6IG#KmS*6P3)6?TaKR<83 z!~qTxo4v4S-^BQNuMeqTJLRl#9NGyA#)=FpLWVtnxYKsLgXV=MT`|Up5wl|BquB^3 z=xBt6O@LBiX(n)*+Cc=9^9qh+yZ55G+?$%QBdT6#EDm(L)JyN7?R%!}i2j*-HL)&! z<Bf@Rees)aiubKc+<4REdR%0)SA%5o#E;^6eKgEn0Zxo*C3PcvH;xP9eQR-Qd|iLy zh8q(7>*6=vm{=R192?{^#)bs!%azzU%9BhEIcT8B5o33Hfx@i}2&nL6#X_nHX3Uio zq&<MPN-ms|i@ZFPgQKK@!Crgr8;aMM_N6_a^qc!U*fe^TuYd0~^-}d+u@l)cFEYAV zz-M**(8@OmY0reyIpN6&4ZQVbht<adZUegm!FU%i=bbYRwYd<-eVV0*W1(EFVE|9V zg`SU{fVt%DFIe5`AC!>k5~J}Fq{(D{xAg^kPN=Em$<)(WDDT7jaymV9o&v0H9k5<a zr*_wDVlm!@;9!abNW@@1g@KKyVZ5c};x#cD!w5+q5o0>$m?@={%E)2@sWzKMr6f5P z-T(UQs{8fV5hwKPpLr2pJM@+^clli9Ep@1SsrP5Ji+yWy7yA}=siTV)m0#GtT|M*u zMT_od*KFU;ZaK)-Q0@jTZNuH^n(ig)b?Iz2&2}v9s!6jIY(=`dYZ==?`_$_Y(4H0! z9(?nWN8UWBE~F*(smVEzUzY|$6wHiha~fl@A4bC|oi0IGQlMTc<|%C$VUu~jNefi8 z1gV+0=Es415Ap$4X!7Kdrw48e8@~Fr^-Tr!Fa}5UaG|MQ$gi|D+I~{Acj<{1fNE=g zf-UYnIV!hov)lBAg28Uz*7Dg+@tbC|`e=Gvhk98Vy+#`bkAeOB{Eltu6HoGcHanf~ zWV_YjrF;2369<8*eXKkC4$PVvt92y{SXZpH`d3)3EBw}#D=a}E=xxY3w@dylzV89u z)4G?~GWIyv%k^{XxgFf4+?Tmqx#ziGLOAMZ-lxczl(~@(HW5wb1c2%@GSKC)4wUi? zu@W>NlPN-?lmW;~!N`Gj5EebON0Ez)mB;ij1Dg(h5!A*hZpkfq$>I(z1C0bKR6-6L zP?0o^gyn+pUd`y^bcWod6f;P@jk{(5Q^7I^Ng=}$QIZvy9v~F78<D>Z8iuUkswNbU z9xQ{ElAc>E5TGoBo8u;4_zz0)G{FVHW)8?AVzTi+#&}><z*B-p!39^s+_D589|rsg zr@dNQ&Xj;^#3wJ&tX9q_asg9NBt6F+Y0gSlk$MGEYc69I=>dwI6UbEv*9KNOgqMJq zmAn?%g-4dWVw&6@R48vL$7fJlS;0oPz?4jrw+VHHa%d1aI6QEVOhSPJi^GFZ(h^<~ z7vTkE+$IM{V@XCyGGGHlIdZ&|MuZCLm9}s;B|pb4@F>(>2KzH5C8IRsp(Xkfr3^1C zDb$!%PiI4f<?*U%7vWh6CxCB-$U>?sq7;OU0r{?(Qu0vo(}a43i>w)-P_&6A_}&?C zdHC{)VsobGRiG@uDnNz<BB+o_4MovWSj?eN8af1S4Z5`~xn#_tlmtDdBq8t-95P7v zidTe9Pj;6eV&!X{hJex7QkA~yef5dQ)vMK$LtC4J<fa+XJEILD1dXt>%=}<SFxM-) z!pIcSd+sH+nFFm32U2m{&4BZmQn8}k@c2(m&5`E7>7n&vQVHp=yqt5E{Mm30BM-+L z_=dvV`e=p=h%PP!)04~KG&)QcN$nenHS_vrhD<e_UvHEQCBv!<hqjC=j8eQK&Qn&b z1W>59Bpt5ga;w!EQS`TrPS2-cPZFHQfWve0wK`)#tkE-z$sNKhv7=aPskMeoF1s=B z{OXct##&+bX|+{ZMZYJvAu28Nv!pj0uXQj(oyT0P9!b}mZL+y3I6WnJ_5NCm-e3pT z)hRkXX3@w>nezu1-Ey%J)-Dh*TcmD-<SfRycv$J;jnO{8(q5S3sPVQKBa$%3Xy7>; z=Z?D^XucwElxjs+)aelndPieR-72HQP@mB+y7Tf``lg+`4!7nm-VrYF+*yqKkH#K{ zZ+7pK|M=!JovUg)Ofws7LATH1l@<Qn;YT@ZIKPAwlZ|F8(z^Sk=C*C(s=l59uH&92 ztI=2OEjqJZE>WzmPd(W`u>Qd<twx9{mmoJhyef3I(->RkmAYll%6Ov~$Y&!NSIUrK zu4=c>V8O>R3NzhxwHC)RV>L@Wy!A2BTzmFKodf$lnP}AOx4L8-i-^OirGh2YCWars z`jH)G>rmT-2e~~B2CKs)>h+?Lw}>vW(G!X#jc)GDS$=^fyr<=wN^M4y+d8e*>`SF( z8y^B<nq#6U>VIXIOm4+ukdeU5VY}JJEeX^&m^k$v!IsF`Y=-Exs$jLnY&P)mR>k7B z=((19qf{_wo7{~pdeIvKDnsOCvl!vcP9+v`-eIXthVsT@A0J3v(i5ulTJd6ufW_24 z$SGZt-pW1Ts~VWWwbhrtsUCadqWAi5J@0T|4y?Az8rSyqhRq;J5ikI|xkbbAey0>; zx9)7SaHde+=MST|yZv_1F4Wi7a9`inX)0DlrC6v+h<YPtDbE?g7CWc+dz5OIRpyO+ zbs#gXKO=S{iHcKnn>=>EH)!QDB~LDus|Al4$7-8v^rl$8uBInG!m;}PXo?s85oNT> zExY}G)RNc5nIisu`MObu71;t3_Mq8v&t-SJx6jO)WHY8ZwH{Yow22nt@)b;*b2B~5 zV73&e*<?MhxNB-=UNF<gWJ|!sEnih?-??)^N0lFKn1ds<(du&6qdfqb02?b(n(=z) zD96t;x<F7R2<>(J!bCW<`)Zki4oVIPuJ)!I#FVSilCzz7Ek8Jt*y@r^lBj)4u1%E8 zdaIz<cjugSt5=(==T!T7IPvvNnccnnjzV|V7C7somC6FyoGtx$W-%RJ)V;wGUg1s# zf>y8I!}or5fN=(UhTqe?ACgDrX11*`8?8KNZka#aBSO@iQM&Sp&K@(jp=0U%dAz-? zqsGK)tJ)*NBb$t|v}}y~07d2?qa6ZoaU1nKGjTS^6cS_tYCCRE?npE(oBrT4!R5=% zqB&t)Bv`C&o6qVqc-U^^8Dm9<tH&HFY~TM(3XMJQ<E)5Zw3tP`(J0A0e7;<hp~cLJ z=9U2axhwhQx_n3XnzgUg#A{pDN1`_8{CtQLcwUlt&ef6OE&fj4&N&2smGlFnvE65W zUhqmTtFb36NS?apdV>(DGaCh%#3M6T_0_w0tF?Y*WXNyjVQsdGsa8j}I&U;3{p#NW zemxgf3Zdm(#-aE7{AMmwA5!>Cz*J>0id%TNM@^sTUt|Rg0s%Jw@8~>4Z!SVEH*j?V zJzFtbL5ajf-J$v8CiiLXQ5woLWsCeiG?df0gCQA!0vNh9P>q;rPL-M!IgwHlE*Z$U zgxoAE3Gjbw(WWcKbtm=WceH@ulV3>spWfn5S39>n?N1t3t~AiLCzWwcZL^yP4ykW# zczeT!x7ps}_U*;uYXgTqz+!t*%ib#fkQB2ME#eQyXh9p;HIerxzY&XlBk8x<?zqEd z^`{<<#~)4kt+e&M^CljA@WB-;*wU3Nzklw?%9AT9b|`JGmm+<e)K6$38d@3J2kcIy zgMx67s-*Hi=698u6HV;2W0hK>=^tt^>eZW{-*tgtykOV!db2lr=19-SIu%$>`qu;4 zziuDd>?&!x$<zm;Qds$#m{Exc^Xlv82@ys8$Gn|{4W0V8vuxAmvY*)dDt14b<9+H| z*r&T(V<E@rj&f@jdd-nQ8U_8INqDe5xoc{tjCb=?ynnPtZ_uT2vYxt}oY6vSfXfOB z6>M@)N67&;jq5^PkWxZAi?&OwVV({S;Mfk#et~r7?;4f#PMgDS6h<F-aSliUOdb(* zaaLcz@3n8)zedE62ebvxNf;<>qUpfa8v}`4{1Pbe<#(rkE{W$7fg86TFp18PflOge zP>ZkGzuDpShuszg)`%XXU2hzIf!nSgQ;)rS`@0j5uwx@5?3mg;G9sSWCc;A_3T@|< z+yZ(}C~5^Ir;|P5v@EELa-zv(b3k!0*-U1R{c?9&t_{U=mHdgP{^sJLS~<P@myGw? ztcu;`Hwt{TZh^%aJZd)}kS7wd7zEy3_&st{9zRZP3%SS!#fM-QB4(b7by}7xQ*Vj} zfl;iRL9zQ};*Cl7XJ+2W-?K29PDdmC0oC@A7AedA66j}tc=@HkP)p#YmjZ#nP~fGP zY2)RWLBcaA-fnA;pSU32VY8YP_Qb(;|GD-cdqOd)=9gXy7AoiBBAi?p^1u92aL6B^ zc0~5<DK4G}?AdvgH!fhJEi}i|phqs+)6Pl0M8p~qf1+Lk7XUEKk?9jQc|rG@di0f7 z*xJ|N3nU8UMs*El)PK73^Nxao)|emHe#Kp2&Qe$5LhTY<_L1)M=U-a6kLc2@#}j}~ z<I>48e?z}OYC(>>Mljp}(aeDKq<#s?)QV+W{`|56@2FV9=@U$`O5p1d@+=Qk8{dQa z3Gh_-RAj$Hb65D8o8)ctgwBpZo4@?9FPZdljlHUaR@f`k)w8sf(|ac*p*VZ%*4Zat znzeN+*Rp<KVEsV({IJ(DYA%HLrc!$&1=Fa-8~$pr+xx}Chrj6U4l<LlcJ7{4ZA+7l ziTA)r`{!gs^3Ugv%{q5zY;5S<S!3!=xW~YHX|`)-;@`sw!FtZbIaWRvc|AGPwaH=d zeTnU57qh)z@);c!eBP(_*k;%fW`Oml!uT^O%}x!v{RDAYvAB6D&<^#75KY9Ck$8g* zXe$37OGAo)U3&_jH%WL`k5eHMWbwZNP4bVEajvhE=tu+U&OWsgIWkF;R{pE6(PVV{ zSV{eX&uug{`q(|}p2|M;2dq@tr!M=~KuDp794Ot}lFbyn+nn5Xk#_SIEzg<yq|xQW zoi4o$clEi9k3U}7zU<P;ZEE}Eiy&Uw6qu4?XhSgH5^_evs%RGa3^2yzfS_EaECyw0 z``7t3^_yo+9G*BlYjZun=Ide8@Y?V-*M!#&o75xh+v=b?D6ak0$?vxgEdkxo;F6(M zq4ihkwOyw4V~?dxU29KNbJNP-r8Z3bpYS8^LbmILx)mBGqZxDIrcxC_k7!6H??<J* z5*$Dy457>qBu$D*5pzdP{1zM)fzqUSB3x`5SI}?<h%<tpV$$E-&QUj&+`_)T8Gky| z-HTpSe)CNljmqOk-|A_I7N*Pc!j|YY<6~?--#=~o!Y>!S&UT-ZxvkBoBYnH;^k%D@ zIekq7>bJE@{-IXM{I0XFwA=Sp1|_h4&B2Y|I?7+vFeC}MAMPqRe{rpP|7}l>dHXt* zsugF#wkbOO4%T<A-+yf%bNHR&h`Mj{((_qFyQ6k<;LwP---WvIYiyVllR@B;grh}= zMyk`+zzwEBw$Nb-el}TWlY=pQ4+OnO3ahuq$A^}T!ymwO;QJe2GBiH%rnoQJZSRSu z933%~SR0399gbAA$KEYIIx)_BYQMaM(lk^E0%>i@mun~9*_V#(>*)$br~GhJ%V?;p zXJ0I>wWp5*`UT=kuyjGEAdC$xRRq3-O`AS#5yLM*EHP{no&y1#9KujF-yE!8n&$&{ z7V55U;5?;sgCR#y;H|cuUp(;ErTJvW=?pFX{l2=!_Opczcds>o)28Z{GbeUm`t(h^ zp1ySPb#(&^&bUQheUbPBj`<vph_UClmtXpu1G1b*1Q)N7&MvLFYYkUwKJe~?n@+4e z<Cdo{Ip<NAc<Iv%XExk&Mpc#L%hV@$@GKEl=p~F?U0T*-7#Lw?fMiAXu(%BMk5Xgc zWe8F#;Z1lr!^m6=Js<@}B^VI!o=9=8NfGK!n$7Z`Uypw^AT|KUYBD*#AXtU7);_6z z^wd)as#B-!wa@qaLt;+-W7uQA`)&vDfy|c|gF)Zh@A!hM^}>hu?tNH%_vRfF7aVx% z#+^?cSafY&|LBgJ<y9Ao&zi#OAM;Wm;QuCT<&gv#8KRB#_iS#h+$AR!eDA#N3kJm; z^H-USHoE=91RUp&>@B~$<K`zX+4G1?yyVG+0}VIt2vs>K2v^g!{;D4p{(`9Zjamc= zj3r3wOy7?5r51cTpm->)lSUIt$|JrsOtv@-Gc@QEHD!`IwKPR}ic4W@)ATMhWzr|< zFxcO<F_kr=?ZChZU2D=?%cgmArJeKKp^<Ih-hTT}3+&n5uk<|vw~nRS(r;Q)s_yq5 z3XXNxgK!b4JL{tUP#}m!p`h)O3>q%u#B*#;@v1p<t}4#;W+UYXk?;16pLUgEn>sHW z^Ugan=<eJ&{ju%e-nMPk2aT~@E~dWcD)p-m6@jLBt)}6tW99#>@9wT=sf25UT!pP1 z*GkI~XF`30j&Sb3*F})ijHz>r9i7EF-f7wFG*BRt&-VlL=YZ}B1VRk3FR}mRW^>!Q zTe$BEe+NRoN=%83BI!zChehq7{eulzPUsS-JO^qUw6HQ_y(5|{0DuJy%uO=TS2SpK zam56hrpCw0*YY$gfo2QB4p<P;)o?WkVM;~F&<w-^P+86GWFSSGCL1HgpKJY;=m{zq zFOTAGj->%?M?)sG1axR<zv)u41fE(ga)8T7MsPVf;btfmsj$?eStjmr(cS3IC>wQg z9L8;(r542Gk}j@k%P3rvx1ByO&|($SXp!UuIg=Xk>?Zh-NOE{!>7$#&0t<UEtixe& z=J0Ubz`94h&q_wnbP)xKgSe#7NpKFlFQLNd-N_1BYQm=W;>8lOub@hCONpLAoI3c+ z2`D&K7`n7K1zTdKA%Q)>Xp?S_JIiq@xEBS4jWZE15N|W7{Lo#sY6B+^-XVu-$IH_E z11Dh=RbZvZ5nP6LjbP&<<<0Wod$i=x<|nxrO6}wXmx)6Y0+GTOQ8fA>C`%FjK)Vbd z$&J1O(k;4wv4El>`AQ<rV}9d-u@{NOaTx*!$iPYS8x)@&OgRqaTG+91L)?;%q5`N+ z>xg>`ZK439Hwq5TF$3+ViRuI|+(Lr7)Iw-SvboY5foTYp#^W4nh?%;N@xPrYx$$wR zjZy0$L>_fjubF9JJQM+Kf|EQVrpRuIggq+|u>swMLg^EHTta6@Mp&(M+Gh|muqYg0 z{5sBNO{<&KrGk0l2(LG{@L7ADspawsc7fL}t}y`%Z*|JTf7BuDf_qyA^vxAi@|h)= zPf1`Ra_L3D;TUH!T8%L5?UiIb=ahh-w;?Nogjf(ycc{i4a2WDD=e7qpF2pYgw*b!W zQGyB@Joiq|y9(z=Xk1ZLw_utDI}m{C7ljX$|8an=;DUDH=Q}MA-o&SVzw1X<y-5Hl zfaj~n1ehRAS&7&C+iDF}jkS79OO4*bNoPA;z?Fl(PUKC3UN)P2-dYz-OH7U<!oSKb z_>D{uPb)h^?TJB$4KR1y5Mlk-UBd#+iwmh*NtQViOu;ZK4Q|~!UvF5%zA_hyNCh{u z*qL#yQWf;s4WU}Q0#F`osz8{`;Y45nL2Ax<M7)xFp~vJfJN15vw<ErQf%Hh|fyGO& z{{ielutal`k&}WRlK?vx(2fQp$4gt0smdlB<pCZTe{r5ka?$-@z2$(;5*8!x9v%*O zB&%^F%z{@}m^t%)SX*%v&450J1XDPw5f)#+-)Lb1KxwE<*<?dNG|wCC4m+Z55OF{N zNY{QN&O=>F65bOlJPdNMvcqx|9Bgyj2ZJUP*!FlXFw&F>Iy{Z%?v(Im*n_WajYKd# z=J1^iqI45t_c;sNCNByGJW`GuOuTmQ#U>M>9Z9-!(gMzCW(G;%za;RSpm1*_o<Yt0 zpa1?(4SZ4qXdNQgf|hKE>CxRdshkwp2KFWOK3*Sdv$%tGg3IS%_i%huGsK89ma*7s zJSN$paE$<qB<(hrI<9vqFn;o|G0*oI?9wi#LUnXccwtHPy!{uB{X+nQ<li`pSjAp7 zjN<06v%Ev%Q~bmx_B3$3l6u~-fUygGq4{i-1zm6>98QoB%#NPILAs&$W|<@ABvLek zo)=^>SPC{{N`yX?;y3sqBKfS0PQ|2c@(y-e1|39S{v&^c9f1{?w}YzfYV&Lcz~9$k zgO}O4-}R_JQ9oo?y-@xTPcRNkdW8Df^`fBq1P&pSE$;e;7{q|3E?$^tA*%?xuUdrF z+~ctbe1i{i1pN#p-QYx^u``v8MZE2Hs158~At~_!dZA69OEH;;j52fingwI2S=|YN z4^;Ue-d$-U=tlU+s=?7i>SHir*>iwryEL;r&$ox2hD4p6H#n|!AYnShg#?_o=|-0U zZa7JF8{^=8;{~fbWvwAcAUUXbQ5G#B3<B0LJ_afcS4c4S-^D{rJ!R7~z45CeN&_x9 z0rq<nyIq9W!{pKn>WAd(LwI0NhW|jUyck4U4-GP4%u55mE$}Ab#5vxq7YibNGR_2P zEhDrP0$GAM60^P8Dx1u{$=TB&o)g5d>{;GYqZoLLg&8ajyd~h7)$3{WsY_A)a16?a z{T2>GksTtDXFeZXY!m@@<~)S`p<>N{FbXpABTBbPk^xi!n4RNSbl!UMTO4O$w|kiM zsA6^K&yyt2sK@0J-4CJ~e)vc350JNdeO28C3#7j&Z4+k?yJWYWn>$OejV!cFaYtK^ zlUJ(3;jp@f*je39!42ofh8{1-)I88pF+bv;1G8EKA|NjVPtQ%dZ(#_qu@sxh7PD>a ze0GQ(K}La>*e}?hIpA(7pJQ_xN|vUXWMuMid!T)KpqEM>IPb|pTP#86lK>4bW}2`k z<HZysU4Y>Q`b`lU26Vj~SAwpf>0O#jA1FF_xn(c>^65m;3xyS?8o2Yl-K<&rfs+_c zYIt+xv`Di`D14ccBLg)F>W$3Yq_}i*P@bU4;QkafD=8A52=6o8-DxTkJ-&qOI!Z;K zb$ijE;8n+i((vF*zz!e~7dQbafz#j@PeUg{LGTdmAfAm3B{H6(!2*gUPdXuE6?z&} zxdJIzER1giB~VJo6Qx218DvRS^|&*hCa7)DpP?JZ<#y<k038$(&^84rA$m%34DV9% zC<#xqoJ49tD-Rw%JP4{?4pT46X`RARILqOUXa;Zsuo;?FL6wC@hp&Lpc2744)ed@} zrl>3QM1k(l6xjil6UKAg00qMPHy0S?inj7~lsTr^+te+R;#&(A{B&H#+v9yv1#%}r zLGd8LX7gJ)L{>NeP(iN(>P@B&6EMhTcuw68OF$N#EOf3@*1O^?<g(f1R18QmCp<lZ z)rBsNW-h?L1a~)tiCq+eg2@SzN`ntQmls@t1Ietd+9U_jT^$Hr6s%IfX{?f%-sbcg z9DHQO_BHG0t@Qhs2XCG`XW}L(CX6?Qm0*>NGwXSy0giTbE|&zam|2937SaL~L<mVw zfalE)h+3{0JV59LMwz#n1i_D}VTn#K$Q}qD(V|B*F)vzW+3YX|WWi`qpo4e>hj}q) z60hJHlsyOJ8+?+SV6>Tqi4lv(0`ocSX|ma64=ed(UnrDL1)m5u<(?H%&Y)QzbO%kM z!Dn-sEiwd>Y_s_Q?_~2{%&UL(`~Q}I=z<)#U|w%FDvOc2{sn#6u&9sJjis85X5>q( z_81MGYV{r8;Q+htE8YRt=RWve)EOUXi9*O(9lUH4geW|6$a&gwcF@qp>_!&=2Vnkm z8tvRaF80loz9Mq|i+%pB!sSLzy*!fjLK0d14H2kX7M_<)Mxzlz(qeKM?Tnll1{3&= zIitZWAiYD3yVGp8Knt^F6*MH-;)DDXc$;2w2qu$Na@7UARzUGP2F$$G9(8zli)7Nf zyciiJr`cq*z!?Hefl;pqMJFUGG;hJf8!RRX{lsO50_mx5;y9-@XovP@M&sb!Jft~B z$dK1^|FWT3OQjIg1?3a&(@WKQHizLei4MP=G5GA=oWUSk5^jstY;fD-f(Z(v#pIQZ zM!iok`@DL+70F!fysg2`gR<G=77*tG<&lOdLBh0CKx>w*z`Ala5j)YaG5T83kbzJ( zN?xO2g)c?u0-Y!W21IN@!#4`*O~^KCHP~be%eZKGp|P=QTf@34b9JO;&H&A4%tn(% zWY1$2X=x>!-lPri<|Z~Xr29C?*g)gV?|U<irD9`RQPPbFSIfMUhHP<1Gu2UdXj&-L z^9$bv7XYWH1dM#rp}_MDb%41VFu)^~P{<}Y_gRd)Fih#qo{-0^$3X;p2i4yx*V%6k zRjDECzQAF&jPnK)PTAm11l`6MO|=9AzO>bg3&2mK2ay<1*1T+%jJ(fp<cTMBGA6(X z3r96Dm;GePnDihvH?fL0Q8R=A0N%_TkZABNf~c0$_;3{mrmx6$U7&x=l`ye{E6f$y zo4%ZHU_cQrAKJWm=)@ZOWly+k=Qcg_M9aK7H~Uf<0}E@2fAq5h2e{ow_Mdak{v-B= zLXmHD#nrcyads#72rgVbv}x0jc*oG@lYeEQ@U)Ipc`Vh@&GzrXrK%}j&-NVIb3|?8 z`qVb|V)^M*R;ttZ#&!amc$Utpy;BR`X%V7LPY2)F7ZGO)g9H%lm@>;`k^vp27N`z5 zQ~|I{lIfFf6cMJa44gACWO;c{k*3TVR2EVlL4%03#l#pX1S?$GG%v?_ba5ty5e5t_ zltWr!2~4u-zOb;#sW_$DfE9vHOB@JuRa~n9Np1}4OO_Tzy|*{=xMH!rXUPdi3`lij z;M%IV@K2Q%D|;kodCz819*^{XFH}=qo+Ak+d(`(6nJ>?&t_g7md{O(v2Z^wYb-0F{ zY_U102+gi=qP)}>FtbI@Ay@fl%v5huUvwr@++Zr{EU!+boUF&0Hm7NkN(tw4&H*R8 zOp4meKk}Kat;w`|yS3<5uW_4w!VY^>QqRW;`>a;qh-&wl-Rw+n(YoE8o<L%*WGHL> z7@5h8$9+jb{V@mPscb084GT%%kIi;Ykb1)G%`g`&-|Max9t-zKBV4tcTO8%W<-fVz zTr%3z6MeHM%JoE}<?(3GB<@<)Nn`ki6c=4VULs`)Q8EDf$7^jA12O6yE(X|4V)#J# zU~~e-DwOzS-MTvNnOLkWg(GD#7SnU%u}C;p-k&RCA@xPOi@EZFSU4J&MioWf?;Lij zYwUJ*J66c`?MzSHo^*q5c!mG80`E>>)mfdG_*3CDzxq|D%bnoYq$m|0?9Ly2!kyJk z=wIYe$50)a{HHl)>UbOZMk<z4Df+3^lo+9*q>%S6%#fpI((lnEoV8eNjMV$5eP^g; z29iNMc>bP_xo&rV<Jpb<SE%2+qQ4Q**YkIKtmdYC!veF-&{MOcgB#}Ng5@gF!2df_ zqcw>IEz?_4OV59B=iZ4QXwlgB3=F8tXpNs6-oL0VztC)MYG|u&V3*KU3G(gyeG>CZ zXp4DT-gwPM1T#6A)|%lX*Qn8;kl|(WP#^%*q~H>4bCfxq{@09bgeC{<f@tFLCug81 zk*X+Cr+{4xruAt|<0&c$S3PJ`m>9q8DyzvHbh2Gzh2hJx<B^rUGnaK`$2wcs+L6<K zdi}2BCw}U(G`Ps5V{NcG#8ywp_N7^)oKrZ$@-cty$w>9-S@!jLWnIc2{JknWqOzk( zNYx2`N7B)^%@B{dXLPAG#om=&^)tJ-$KGiA>Z%)#i`KjypEeJx#(6B_R_xc!es1dx zY%61dw5X5e!s`<Hu=?g{cU{}(|K3~<6GP<FVPqGUPr@$Tf(`J47L(0L<)onZLlGsy zG%|`pY+|-Z)==__Q823(tf+V)Qn-C*Jj2AR?`JjNtCHH2O?6MICkoC$B3i57+>+il zEiNB^;c%5}{o%vwtEw)Wwk^%gVH>Yz;xlL5sD5}?yk2iaK<KV@k$yo)Z|lB17@;#= zRk%nW$JuC?W-6nG6LINkz}-F%GH@qyeq5`&1I)NjAnG1D0wA`~TFLIK$t-+ijYJAX zC8s~6pN7l`6Q3fa8&K*nc#_Q%o)cEU(G>R5#WX@>(hMyDIyAfo*hDJ;;S@0wR6Hpp zH=AqFd`{g#<OZj1|I=~w8uBiXQ-%cczg+LF@><Tf&q-diF=$Sx??-2acvJE`OK-{- z4EWR2E$7*j)o1QL{haE=$)B&gI5F3LzQtQ5m{@35MEy&`45OH*ia8Ub_8yziTCI*} z+V%X2-!f;&V}L=hJ)@3Sw+gl%`+~QLmV>rht0f)l`DE)v^(h<DsT-<Za}1`Z7zeq@ zG+P3qwfo|%F%$C4IWsb%Jmxm|p>V&cz81qonimo=me0(hJd(5iuw$OLDx<y{?^AGw z-{5{s8G$u5(dYW6&y&9Hu1s60+RggE<(iRnyQ@oWnY*q_d&-X>Jtmd!Ge0U)34dmX zw#n~1IZlpfp$ET5Cg?Z7YkN*v|7=`l8c3`Wikvd=%?j+(VaoqNJzr}}<g>sA8k5#s zU|z;_1hYA!)K5^4!0B2`!a0%*hX&;&F>uY8wCnf_Ck{*;`1MzV>ldVb>wK#kYuA~K z`7ad1cYBu;%<}s6eYZR`|0~b>_^-ToXXy0cp{>3RelikVtT%ZUc}&dIyuUSg<7rJx zW~{00xa#N+hyrOs*TawV;}bpNyAzj89N;g!E4X$+%D>6KB43Z&=PYUO5oM*qjNF~G znw7r!*N^+u(f7U<919-Y;@=X02?2NaF7_Dp#=MyIera{{^1cOuq-C1;3%WTTq22$~ zI&y*Gu@|%K1CvMwMB8aZQHZXC7(kqj1N`e+)7SiPX-HEo@DB2o{4Qwj)GaClMoTe< zbG0oEwpJ0hjHC&jUJ<iUMxxq9%BR<(t|6nz&v*S8rIO=x6XRpo<4@A5x;J}zSD|q_ zk?6&#{a|BNFLtit79XNEa0nd3*EhCro&6wfJvh0=o@q(<^x)h*9#@~svq#)DcD;&V zwDS1%WAsmi)A_`{RlQNVC~9%JEb2J@R<^Z}$I62v-~sFPE-%d9ikpR}HpbF{FI;)y z1&6;tmw(~-qmfW3^62p|0P#b*YK5~_*6@HC^6_dE9*D(&8b_)sWu~a8tf=GEDeGbZ zgAbZ1ekk7_BuPc5)xZgwWP%{7)NqAZg@b>c)BtV46W|Sh$Y!lA)qNfPbEXF`S<v5c z#W|FHuP}T2NN#ZM^<!)ez2Tcw_&3kFkNDfw9yVThoFEJ8IP1}tIDInmwL-7BhKtt? zua3u$sDE8H>6&kA8p#hny=nW{^$7Yz{oGg4i7M|;k!Wo?9hjh~DPi;hzR9UYp3v7O z5D<A3(=_;Ku0=MbRYWxpt>nHv>-JaG0{4WFptY~mR{7o8>do=<J<*7FTY7hT8?Brl z-^{+Py)LWd8vA9^R$C>sy@o3&b>PVtt7>h@s6KPZ=R3cy?tGu`P)5&xsMU{l8R<q- zI2Fp3h7vO^i(3~<VQ|10SkWagWGI#387+Y@3XT{q<fkLtA2f7&MNr<nKXOaQl}prL z#yBqa(6;R}Ha<P;?&&SA_AtO?O9KJ*Y5y!*R-I_(SJ*;_qM342^{(!-?=EoPv^I1c zUVL8t?aoBfJ|{Q3|K_gy7qwRfgG+%VQ=g{gU?8k^b3gQk4@CnLcQ&-#y}NrS`F<yL zArsJW3E;~pL;3>5OK#Jhjhtjxz<zcs7;N6ad%>ePHOh;pu0u1OIs!hMPtKu$hpDaq zC;P=y&KIbCdx(EVYw4d`(=f1~+xO{th&+e5n7op@z`v%rsdOQdSM&_QA^YSmxa%hl zOs+6vC)PR<;t#`6W##zP9&YaE_k3~=(|1kY;G<Wwk+Hu{{^J@?*(ksJf5UDAc;zGw z4#hl;^^vc?uYk1~6z@4>#*DGa^;iEt?7I=%_{Rzb)=f<D|HHL~<tM=DG8uyP8Qz=8 zec;EL3Ft3jGbZ)38pLY?9SE0YWnv1+FY^HPu^0h?0HES1QHc%4P-JuEsAI!9>yB^; zCF3;dPg+z(qJdOE$L?JD95-zDMe3wKo2+ct#Pj((+&-WCj-ni^jmgEzMjj6GoE)6* z_0A7YtxU)jkncy3=d-Q+LqFcj&NXMllHFRqKhPVVc=oEI6t9iyi?`GL?kq~t+PGA_ zN|*&A(2(TwNg*(QPOhE241uY`W3w=)_)y&<{t@$W8IgjW#Beo*v2h{ji{utbF`7YZ zswgH-=<pcI00h&HkPJgGVT6d-atx?)%$X`DlK|oVsAbJsIs9TP#E$xUJ_!uYW1G&I zv2!m7$nbaDrnW+P&$SNUJzFg+Hx=GFWSEv3ug#e@R6VfWk!u&%Yx%Uwzf)g*v2{ef znPfAY#j5icPiG^WPWOj5-oJ(vsW;g~jF$YGMI#d(T(!@4uX;vvF?5=EGcxzpN>LdJ zXm@P6gkYXJ5m=-ffkhgIq_|LbDY8*~MUxT{4A&?$$vcW$h0K^lG849j277>$KUu4& zP~^?0xl<(*-zNuQR+wBbI7lHUBoo>~H#ZH_$R^UsC=7Ngz2ubO=QK2(cM4V~_9-)z zR>8uLl^R==-n_4_I^rK#+}ea}37+V2?YAS(EOm`Q#+<#nI}6-8k}GZe^+s*kVePI8 z`z%9&4fnsZpZP||9{DNx$<2!LK1e}wGgt%t=8ogyXx)7pyhd#H`P!Jb#n;fQ)J>n| zuQ5gs%<DNbsU?dj6sW(oo0H6#-qJzvoYNoAC9;&ysXIGST|GfdcEx33pVitKzPoe! zf%hKXF0#cOIp>k1x_m)zKHr<m(J#x>LkZCntvhubnx|Vr^B##*fQojN&ZL0cz*tED zTH1vX2(umhW&mrUCP?}LG+Rv1TXevPR}_Vcxq$|>gp+`~7+R&B{8`!z-RDtXo}CYw z=eTBe?oD-Dda7Kx#_X0FLl?68+;ML0;RQb!X6u;yxjigR^l6@v{?@^363LG5=M#y1 zf_qH9>#Xu!+LZlmL0+nNZl9eGW`5tczCQWgrQevhXvVGGgY~m3IU+CkroDgkIp)Uv zedd_@cIPG~RO%mMYc)dvwMCk%KBu1}#gLU48FlcAE|L|QRIvrN6f1{NYND#ejIE%l zro`_+W-xR@>R$v1)6X2p@8Q82H|;7`<5kqTu58d~|F!x(WNbQ1y?pJ#JxzTn{*kJd zT!eiQrisS>V>xbj!$A4bbyxoB181v)Ew=LE8jt#_dcs=g8b7#>o7>;mlH!ZufO^m6 z^rGsF2Wl#1eP1Ge^ttqvfJ7qdJ}O6ri%OGnKuTA{9d!#F!U=#J;sfI2>42H4OtT?7 z@k*F-#?UR&IK=+ws~PJx*Z3az<wH+1y<@(ni~Ys(5_^}{CbnnKn*Y!jHlK2m`eEfH zX7jwHI_V_-%i2l89n2XskB-G$SEwI6)!hxjW8RIQ!p!++&38>6VTR8g!MA|S|M+3Z zg#z+q)Dyy97Zo(m42-H;!-LMIrP>2-s-;_)!l}bXr8O}A9As3Ezkcr-gW=6zfBUk? zjGf^{q1~ZH;hi%gm%aV<&Edf_?tT4l2cJ85@Ht@@{T>txb+dL{eCwU3-SEMkO9wjd zFBb3b99Vki2REE{=dBm-m{or1`GW^1|ER5yzE<JGcOc?Mr&%f?W;9(H?E>lQh~NMf z-Yn?mW%>2-11mooUwI(TuXp#d8g)W_e#kY=y*V>Ye82C+k=AJ|_wQdhtySC<O(HD$ zHdVjQ@Bbn!Ca1(!L$!uwVgY^aSRsWETd_S)Dkd=xCO(>Gt2Iw*k%fP`ukxiS!!xNj zh~q#^N36h)uzS@6=cJT4NBI#FAL_BAm0UU6zKKUp-BORy8T<(CL%{#N05K)my_CK0 z_^RpZvFViUxqGa#3XUCQvKjmAR^>1qK;$;UDYW+lXSBE!-}@+Z#fR~p1f!xU8nsCh zFxZ^N5elo)->?U)s2S4jA>pZgYmHu$L6xkH7#ewM4tP^-`ci>bJ8>amu#txW>;h@7 zi%WMwZO}R~L>KNtx$E&Q<tmQ))8u3a#PbqTS3%UlY(+a!kyGe-ZdqM8*1iC#oR;og z&>j!hhN_iZyd|Dfs_W{e%~Z@dLKVh2+Z&o%SN1}9XCsGpR=GT;gs1nqKkVQ0g8HW$ z`0`)4>(zH(*i%r#xwxVJ@zal={&>A1o(n6TLjk%z5YIg|e{9QFqn=2=dcVd3#qQNW zpM1e%8||1$1V=MFMr|Hzz#g)Y#%BrH1CM&43~@{MqSB8R+Si7v3e#6%#42c6f7q;Z zkEIQAs>UN&svcEOe1*S3{nHD3&VGS8Z{RMTvudWGul2`stIs}rbuR9&)eAGNL{5{7 z1(%<H-fDr}r#(MANlB&kTiDV>%Jr$B=R%GuMa;Ssk}a8Z6eF+@mA%nY3Rt;PG75Hf zYPGU}h<K1{==u)AxqcPfcChcXjqjFMyu0x<!B+mwuYS(e{``b{&DE<|luxths;k#L zb)EW~iJz&zx$Y^xsjF*f{`{e?uDb2bd-gPMe|g^g`F~#Zz&ZJAug#zHz$$g$m2V7P zbIs5jSE4_WF1cAEpN9+$i&PNpOBS0*hT@Zw9!Vx?%1;P8^VH`@^U=VjnqpOQp{ylW z8u-K#lr6jxb$bX<QKxBG<;^QnW5ekcy$`M&?0xR^`?7vpPi7HG#YMZ1)w}opM=|d_ z%eG=ui*2KN@9eJ7g;xF2?+-O>N#~R`ZR*=}qQq5ntzM8XfDL9v@1UnMeq?KBlG0LN zysc6F)>ZNIy3`%bE#Z~TZ2jx`dls@iTv_+kUA?}|EhJ_u?>d>=&xGg)e2dBX3`tPf zRY+dMw2q}Ik1Y%)Ma?2YE*P|b<N$u80|chG@c-ABUM(M8_60~u;iu|t<@2t4wY{3Z z+?V)^aDpNr)PDzm>DpJXD|cPA+(mIr!s@jj{jXQAbJesbd=LBudhI{d&2Xii1!P4P z`uB8d6%r|ORBv5SQPKI(Mv&>F62uU#C|^xF7|9IUm<5E1MiBykG~p`@EG>>7+*9Gp z+H>#-T$HWMcx2)MZBosR<Narkom|_nA<w<Yy_nz75YLx?$A$9ohK>1hTe(f!!v)K~ z%L`{6cxzxWRr%t9-|WBgKd-prKh;X~QpJ8TYgOEbOn>Wr@l_jr>R;9OeH*cdtygc= z_FxRM_)yiz(>{UR#lzwY$eO7m?HuJr!yvbd!!tb~-y6`ovHWmpKrh}E(0fkk+|vVC zN?2B||4<#%8>I7fSK($nR4mj9EXgGHDqjV*zbcpuVQNOe3K^IIM!}GeM^&PmK<+|~ zmdxp-m}OGfBz!s)-V!mTSXnd;VTmh=JwbEV!F`S0nnp};6|7V=I?bXWY8MhpnLB^K zZ2j(r(O@3-m4?9RhVNSC{nqI4p!H&3DE~V)-7e0y45rda%dlfs)BEo?&34STB-5#x zmSNGRKKuK8$hY4*luAdfxX;D>o9YX1@)u9tVn1&2d-YkHIBc1D$}NWNpWcG?R&Fsk z92MVFA9P#CTUQ;awkE?_vL0o_No)0yRjtPmzA~De6^f?Shr0LYem^GJf0Is{t%J$m zHVxZHMx3*new!S$nv?0@*rl=G=k|B251~lbSxL6gZQXav8*kjQA5<<6X}4gb-TNB; z=@$0k&)<TLrlTR`mV`9XslP&;kqkZ_%A(n->(LFu@~dN39(FX%7eK9@<{HJ4lN=$< zy0}Il)#OFQ-Bi<`%KJLGoSJ`3^$1bzTGHT-wAA|pr%#)BFj}zL?3u*qilZyVp(k%! zx$?FrkFHpu{&e+>8LMZU9FFJW@f_2~^YM88oAeWBOSKJ2?z#8dkFNT@diw{rb#~8) z1Owf{fh!>Ho_mUQK5^oXZ?jIe2WwBL&#MR3=b7`eXD_?#SsUH%)IV)Qvo}uKf7a?Y z>2~P$U>>K#AWd>aam9$_kD3wm&dFSgl=K186M11t$(D$i9|tjc)r10xr!F*6$YV4| zTnrp_WoprZu8#`T8a<q4V5pAiCKbM^`g20GQOAK^PR3u>4GNbv)3^JMvNf#+*Mhkr zw?6h{ac*_unxT2C?=7hxbZ3JGqbnSq9bOuBd;FNWWxI_@cXTQCgk7>ZNCR&W*<*2v zw=2lCsJD-?v(@L{xcTNcZss@8Br5m)_wS$4HhYE9apsM}yG!>Db*g8bdHz}UOenJ; z<Cs3@%(=xIY6m^bBa3Eby8|9qWNBnL9CjOxl|fywyTjpO>~z~A+T%Tb7al+CH5)iE z|5D5=9(D5@YDAkWs_Fyh4PIDN;EZ3}d7jqpDlvgP{P}M9@pG8Hbff-LUdYZEx!ask zQubqz=`4s!13Zg9jo?KpIY?j{nBhc000T{GQV`5!Z|BFEaa|sI>X+3g+ZlKC^vy(( zCh#8$6KDSZqw?3=o~o^5JFaE=@9gYvQoq&n)TQcQCSJYboGY68Mcwkg-yRz|Q*3&1 z;aSYCzIXN4Cv=F;N`^wo<K_3&i`BK<pTlr@?EH@U!L^P3i^nc~O5JlO3vVcI>c3!M zo0(l$;Z^;Ieo%N9T#;#F5yVJ5rQVWJ1FeT-m!@xHSZj7_YJWODH35)!Yh;f*yEX;K zJPR8d7kI~l8@tq<w0De1G#?R;YY{=hyL*>TJhF7}wBqq>b4%Uv;<UX>`H`i2Rfl$1 zI~Dz#VrX|FmhUW#UmajL+Kduae9>^ELrBw<N<%%M$)d8EHjqMnC<)-bLCwPu6$cR> z`T|En`ZGI<O}c+NN$v^F2}XmQU%l6!4os_Zojg|4QOew($+GWw(t(3M7ype0x#Lwu zd9_2HS~>CT=XS^q>_-i9aEH&gBZ#vqE7Gz6hg%O<sry{MMS-;UWN#KXE_G(u)z0u4 zfwcV^-z%N6;+wj?Pmw!c;rIRXKBNKkpB|KbemQu$&xbX?4{N8`>lE06XQK8h3cFn! z?=`uAaUK=s)b>}RpR@^Rlh;la2?6l0jwA$lX7&*oF{OH~F#C~v;PFWx!3k}zq@y$T z6($OFj^;riuM7Ef=z#bP0vOd}#14qR6EABEtkFKriBUN~n=~%dJg?##rVO#4perzH zLSm6`4suHaTF^l3MbLb@2#Y+}<TaZCH3`Ipq{mWBmr5lzrqa)q+*Jds%ID8MK3lzg z_H6F5RVOb@%?mu2jtVEQWD?k$*<~)5dIBrz`7UWrD)q50HHKugQCzy@!jp9AY_<lM z<I;hU(TPh_8&CXFJ?V0>OF^N`L|lG>i)PG$kIOn8`p|E+{I(6S#2?muSvRix4+!JA z>>PF_dw_k5{fzycb8$ItG50I(H{9DGgz@lEo)E3%v4%2{NsF+SK}sYA8Q9NKF-e*Q z)C@V%f-F0vIbb7`=9|n=Oh|->SqQLT&1Z?0E*CW2A1p?KoX$YshlokgK7xEAhzit1 z<PQ~-d=U{qNY<p~2yrPHcsnvsrAis-d>IO(!a#sa)3jbx;3}m7Ln$g@(Jhw>80mmE z<rP3dt-S0}n!%pjNG=mt_{hVGXCO95_CUGu;Hi!2OesU#8q^j{J9rQt001ln8NpRA zd+?M}W5tGww{B9JLFSzRMT{gDpkYxFuz(oSV$0-aO&Ob}1rrmzL*xFY<TE$}g`~RF zv;dmbD!5aH7jhbhJ5nWr0}e4zi08t4(SvdK9EU4x49kRz;;ir`P|*MjLkq<F$R6Ao zZ`e%y;-v-(-)szXJWimPLh=^lRyacbW*G;`H0~+^)CDCF-xat61XqP|9E4wFW<_nI zf>A*zYa?#$Q3_PB5^%A|_aUGxxFunF)1?gVjzee@g%)}<BGC$CGm{gkj3pU$E6L!} zqU@4*Yhv6&jpB>SDeV_)^i6ONsGSmhBcjK`|0R%cxo8DNMl-{QQg90iubxNN6SM&| zI~Oj<qzE4q28I`rU80sro^R4DM0hC_5mta4mjpNi?^Gz_K8ZNKD~eA|xAJ5K%}4^S zgZr5~WlJPIDQi-=7=bd+sBfvyUC#l%c_W*7-A&_q9*N;u`8S+T@*52ZkEjaW_Za9i zx%*uJci}%!gL@;kQf-xsn5Tn)`Ir^KqO@fASzX)iS-bnUFFrWHr!V;8O$VnT`(5Ln zOJ8`6*`94lqPqtYj-cdn6%(>0H@}ux%Me2$Ijt@i0v|v}XwrLJMzEg)e%Txa8;{Xt zHX&r_+k)tJgZ#(J!4uE?!7u`b7~-d+CILWD;}L{fIDjvfeIj5PqRoXoRv`NE0VBx; zk;WcG=s@^VJOOf+*$^bbGdprn3-uJlgwQq~fJg-Wb7o|81yzv=2vt^}0;3Orsyr)t zlA@VMo|Zn|3bZkCcj@zebxuRF#*eBn%(ObKR#(P(n6YG0l6pc+V#btT5Sx=WTY&HG z;#_9fUxaWb#hZhAIbbkI=3JCZC~--2d0a`oUb!8_J&bn>%%|uD8*13dDTs^UOlC{W zl}8FDK{g^7Op-ah#~E-a&5{>9MS)myq23UefJNp73v$kgXl^n>z5t))&87j7Ieg4$ z0npmum0bu7Kz0{BTa79K<*CJG7Y!DsciGJb!Dt5$mBk$hSe>X4X&*`uShnNB1AE)f zdu2!enPHE?Xv@?yt84)VR<GChB!-`}wTq_J>)Yzntj)r*4%?zjrqy&VjG94>C0dtl zvGYcs-fFSG($kY!agP1UjUva+(6ib24uG5*dZ+Ooi=^+2>wlP?yVxOg&DwabWg$|v z{dVlf7c9TyoGpE=RVR+g0aKX0k{*<T!LVb+&CK(YN6%ZB0mhZF6^|mT^+Vr%Pz+?B z;V-cGtiWnBYtR}!ZZb=zpw%cy{>2spDuNA}t)8Z!#qMf;i+7q8)8Yfp-3M7JCZ4y( z?znDEstQpP-14ALa!ArrlMfr7P5<`(<%A=a4ZuYse9aX$h2kwM;#_S{e1SU{<xQFT zfpl0Ay}hyg!YZzFRm1AxeD9v?m$S28x$f+K2gkXZHm}+?uX$p6eY??W5iOn`1%Z^W z2W`t%yWdf#2@bpj?+*Z+&MczI=CTM*J(?c^@wgDmV6umuc0~Pg+n8A2%#eZyK|;6& zX|Y7kC7Gq65CVWCu}w6X1|%bWHgrv7*F!)FXY$xUa)l^9d7faxel%&$Ai12t>{Bm@ znQcrA0v?S-!+adEdLXPpOGmv*6uDwX+zd_x2He_XK(ytTF-Qs)ivTdUxh5p_3K2s% z$g!d!X_j3Ey*X-ewpYbE3DynxK)Tw&d2C_`7!RiB4c}612AfTEBx+(_uRD!<0_UyQ zw@YSOJwu{hlH~9zH7QX)ie89-%6Jq}FQBxt;0=6$nTxEZum=$`ydoO)qE)cQJDO%T z`07k{&k~zcQUAlt+0pzxuxMEg5PeqOW_2Lpk%0;3f|=QD6t~DB{78fbEf|bx^x}hY zUhlCYydaPWhq)j=u+^h)5G;sB3i)jV5dL5?lVqn4orm!wUtB*Y?_*p?_e;MRkU@R5 z@+AZc==BzxKFK*v>8qrAQ?c&c$YJ~1xY0CPvnl>uZTF(AQ$Tou(lvrWN+Z(GJ>A|B zV#Px_mU`Q&7yp-yJ+J@YyuEo~6y^N~ywA+;?0uivZ1%o#pSzp;PRIdC2#|1w5CVj7 zBOoeAgm|I|hyhUnwN^X}o<*^yc-C6AiWZN0wYB}J^}x0Q$qw)5nN1K|?A!OBm$0)l z&pb0b$8&s-&-e31`;-w~icv3?s<e;jlP}w0R?T1=DF!_yT2<#NuVG23baKnI5;7-6 zo;0|z&_>5Ra%*hPhU;&>wk$>iAMxTm{ck^W^Rz7DP_o(a*CH`_t}#EIVV{5-HC@W4 z=xv%tVo?S#%AA++>VZ*|QtM4XPC{~Gw8|MD%uSz<zBKy!0DFWj`e5LUh3RB}v1Rm4 zK3yfb=Ij9By3Vc#Lkr(2mYsQ6vS#$1F+G9uMQ4cCh&G4@1*;oP0s#VS5K_XpNJSzn zsiaHw7%82XrGh#P{Y!#)p?vD|#1r?S7Bn;jpFlx|n29+bvJ+K>F{LJqmDrb%l?BTJ zWEA`c^j{Fb(_$Ph9{b+C2FlA*o8K<V+&tl`r#X&_!jGm5v`KaT#p@UQb<)-=Qyx9= ziFg3XK!W{E0fZc@1ff~R$OBFN04!3R&)7~m<|Dcj!#Me2=je`uD`EfSbix;NYSYWX zj4-l@Y*}7V`qb5K_s9J4PaCE)Sp}Gxr#F21DUJ@}%nS$Lw+z4OM-Nj)o0_87!T7O9 z2ERDRU{5fyBmT<j{VP}QUo9;0-Z;qSzmiRbzs?0beuJn33@fXtrf8)pKWSV&L@kQO zgwO&X0TnnxQ9lbS3^ftpL*EEp;DrcCF@Q2JFo^x{TioXwyU``p>6>T%>KeP#=v5e9 z*Z<n7Ex(Gpq8A)M-;P>$y?$uZ>$|${%$YRniU(zV+a4Ub)TuGAHBWFkwfJfv15S-; zoq2-Or7^9wOt^4!9rkV>+w0V#QUmA4q#yDr(r%f4)iYvNuMfHg$<~V1Pv_qEr?VSg z-?im=Gq>yYIW3U~FL$|(cQ3vC!K-oRBlsnAz3VW3;eXx|+H*qxalnFHE?Be@&+np5 z+9$#Dgo%-A#DdKx;Uc}Tz+?Q6D$waJ);`bvMP}41ZnU9MB_ZhW{5rGw#ve8a*xu37 z(o@mWwk|6ueflboiz;t#AkSDlvp_`&vjP1k?0?@za{?BD+F+@UPi=Swu;9@gWB=`L z#R(IuU}5!Nur7hfNDHai>%wyKQ+Il2Q;Kd_*C;HR)C)GmmE*<O89#c#o}aq$_3p+1 zUl~Zj7a115e%M;|!z%VK{!vZXFoDHLfe-E#V9*lz%x8cLWdP3rI#XhZqVNg`@({2u z&IyCQM|+->_ApVRHwkzPJOtXa{_8rLj9|{WNZ+J9GQRay&9k>Y-Ps^n{FKf9)6_Aa z))aE$uIueJ8wrvc82SxWQH`<RKsKM>SZo~Mh^Y<z|F$vZrzmG$i>=6dYOwR>wEb(Y zL`)s%YW|IAMk(;v@Zqr064*1pV$SppqXYix<O9j-K&1oA|6!e6aWQ%t;5pBEWG#~C z@Kz=PQ+Ex`t80WEnL4TjQzu3+swr9WDf|`YC8(6JLxuDnHjA2FsYMk=DI-$NkD014 zhj=iT&>dxrhsEpz1C=yEy-hPWB(khhrOW@5dp!T;s1s%h(qr!3D^=(vW{cmhiM!I6 zclvuDEvvAr>O1X~$$^p8S1Yp3+p-F!4Sk`J7V&8ULo1B0AO@sgq<jXaRB+xFs2tKl zHDi$1*8^3|stdvVtC-{?%P_+H=T0aiD(qbI6UQcYOQ!pyI_b`xQeD*ViiIq)Z&GGV zp5~jLukuavTKJDhp%on8uD*t{JW^CTnsq|(-i|NHTM9+35^|?B(hRZ&FZ2z$tT_Uz zP@=58=q>~k{`Xyi4IOb3BFG?=e`uM2h7uVlOgRv>THF8<U{%Wb>1(AX42u}y#ffc+ z)EtQZWC^vkbN*0JIu;a=M9M&_H|AiAjyc@M&`x>d+nDN!>5KQbk?6Ki*}6vu_^&op zT|T&Ie${SLz4w~L_P>xum?VAr`cIc-1-5PDPY!-@jz33FI1KMmu;2!|2vS(|_&UY@ zR@Rm*tFJe?8tZmcWh-JSQO%XA3`eyxmUFt2ZZ9v2Z7s{0lY)}m|17yWT&*c6&{eOk zsN{#KU;=2LeG8AjKMzFsBNzPQIo$dApQmF!^#@<ZiMS<@Ap~Yb3KAakyMgGN+Q<>0 z&QW^;Y!HA8h;>0qj^$>kYzE=#m!#r_<Wz6cErfe!*)REDCpP%A&ny!U(0K^dhbIIZ zBb)aM>HW-&5HQ{r6kB$k<o~?yRet~9gc7?SCGQc(i=_P1Px<2?Ga?8@P5rPx3i&!Y zw2NfHs*nDiLJ5@cofs~up%jEQ7;mXR1U#nWA2broNC^`;!n>){B*uPR87};m%t}?# zr<AalDpSeKQ-$#c^5e{%4wb6*$C*2k$v!>I|Log@f%IE48=HkA1C%>${1g9*B?H#B zRGPapwarS^W;|nRJ0F)J{E&+UJ8DAg!tjOYLJ;D6{je|^AT7X9#kc_}#z!nX;AkFv zI)W@KeNqMFfS7-0Z79{m_bubEeeVPQ`uE;F#vJ!nvGVt*hk_uJBFW$rF!Xzbm(48) z?W#;Q`n{a3_QWfWz55<n_rZJQ(q-gUV_I-6pUs~bKhl+O`X)k81o@J32YR3v81ek6 zUu8aKLrPKy+4{mL8;IKxJb9Cmy3P}5OuQZl<#+*95P-XN{BDetxji8r(dagMAcd?X z;@}c571GMXUm%-?cpuVh;QxqcUfma8l0N|ch3(v|S|qt`?~ck>Um~rG7r{@D|J!}o zw-%qPy4JSe`cDBVcB-MkAh|#O7&DP>p4mZ{+)6A@|6g4$Gco>HuGCtWd-if#o?BOu zrOAn!Cg(6kY#=iE!<~J7JNrg%d^)R){%-E`ckl=3H}e_$yRN~>^vWUtehc<-j9ZuD z>Cn6nRF0<F&A3R7IC_ZPH1r;74vizV3f_JpD;{-^zzmGWX{53f^%l~`;H3|YM#xc+ zuZ4YV`>!~ze<-l=&}+NWp&s{^HLi80^j%jFAIS3QR^M`HV_>MiYDedEgEH$62D#$* z#AfnJwf^{kA;XVN{%={}ch@lkhD>gi@#HR#XQ;oi)cpLGov&9`6i@iPY->jvFA6L# zbUt%A1n1Jm{-N61%k!h2!qH`#3===cW=u=rMH)wjiTo_h6jC!H4N`PtPEO#JeDDW> zV;T4~PJpt|7g}H_N35pUiB#!hueg8-iiEfo;e{gtWxSanB4fM?V&edU_~DQ&2Ig_` z@A;qeFaGIjU~VQ}_uT)19t4Tr|L?i$CZgc#Kk=&$Q&`Vw(tR3VaXS|4UPK+Be_vdO zjj7w8Kl%Ljsp3IYeet0LY>SldNSuM5kN^9Q@zRG#@t=4F&5%Z2o}~Qn>C=bD*QcK^ z-9yhT;FZSrEyWMucc{PN9Dh{S#?`^!V1(aizUT@>_1q@fFM33DQuJrhH$)9wL?+^Y ztH=;JLSBN`p_!S+%w+}{ih78JD&QM~Z5Nj4u{8-OA2@(cA*i5}pute0FDkZVv8Ccj z0c9b}i<E*8B3}Z=v>&Po>wv^1zL7W{=`w{F%=0J09wgZWFEXgugxwL?zD=k`QIu?+ z6jtTL>3n0qESyS$Q!=J>)?3CFpcY-HXGnYpez=5uXyHI3;}}a`^!(3b)0a!HfGGg< zm|np+zRf&#Ed3ECS2#PNrx4B_m00mmr1YV{1P?(EAWo{$ir8R?vW+>Ja^&ftX@7!D z3_>Y7j^IN;UQ(FSDGwRwL0EzO!*8`1q!u_xoMM;YW`MX()v+K<<p?dqX@zProE@H; z{5&JhT+U>%koW06_+F?tfqHqULxsjZ;*S<`FxSI~feT`tG{g;xw<Vtz219w&n_{7w zIC4(VL+L3{!;+tCp*(lvZ%ufdcwF@90BtpX%amrE-h4hKC<mU8K77<bZF=PShi?>G z4(i3&y;751F0-3u=08Zy$ue28S!Ut)Bq(JdSK>brE5Y^vQ&u`itT~qdM5AfbYT7iK zNSa2Iw$LTfs~Dv?89~EZZEkt01^-AmjnRT1SDJ~uAxbTq$|#v6MwQ{ylVXh;c2-Td zM&n>_B~mGw0!fW&CsNsjQkkrj|GKD1TvU{53>)$Pp|BW)V-hBmPRV(sB)_N_0n_Fn zSx{6If}IcKJ~OZxG#TRty9wSHnI&1yPFuOB+OXh->+Ke;r+D3Fe(0G8Zt|1-3{IYz zIeE&uia^I5n-`|e$&6Za=eEzO&LrRc&TiFtiZ0zu`k%RNe*jgbvdql3sq4zcS~WLB zG+lGkViQIJDm_R$q+tAD*}L|3EDTMr>z_5X<^lex<x|8Jty717He<d7WEC@OW-P0j zddU}0O_<u6)wOY<9i;zaSJ|4jnsTkjq(Wv4kNMJD%BpQzOJhan+|`%Wlv}l&p`h;C zt!BSm7fdp3{^fk>l;b;%DXdy9x1`vvzNW6wsZ&-q3AIa-)hb0r;Y}MY9;KY95vH_6 zR>;Kgpoqkf3L=VZ`Z|#<z%E~!Y?i{bX|l`USm4N1x|o6v(NHFpmSy5)C-$-ykYOYx z5go|l&#(O!&JTr5$3-Hy6clhWBS_*9LJF=5<czmmYqg3sQn2zfRT}V-ysy#7G`09N z)J@l`I;UwgA7~;O-mu#`X~73Nb$Ys5_krrbilbWX3#f$u&w<AT*YY{81rD3JaH?>< zpBLOhf9ttxEhdxYT8q&*ae-X2uve%jE%2vGOlF(a(7z!PDwsER@HD&Cu+;eG`3ol> zr!HT+@scH>o?jd)>_fblRO8+G(WUUGC|OfxXIZd)Nt)PFK)ipEYJ7pxifNfEo-CR7 zi$g_=AfTUB`-Qq<6>H9zUMkV4B)e8dBK%wL8OcYMSW#I?abBiVp$Ka?uMExYm5KlI z&6(*tNnt?0bt$LPiF>=GlH1>%$F!<_MeUh#RZd!UalI=^SK7%Ml#=O_9NL*{q-Mv4 z>71fxmE2-b_V(*Mb+hE=s=7eW(lyH#hU!|x;+A%odeH(Ex1vv~>{+6dv+Jhn+>_ck znYoJe$et}IcosQ%kK*ZAjuI(<{QRv)kcbZdlV-rypLk?aRyG$_erYdReg4(bc*n81 zSPjcX9iq2)QmZQ_1rIX+q!16XECYds0V0u>@CW5KD8U$Z@qHxl6FZn7n~DerOzd>5 zg5*Xe@`OC+qbnHSFVwDy9&_VT<}*4=p8l7lN6n?pQOgxITGpbRG8KF%thQDzmZ-YY zI6jp_hMAw(9slc3?n(o<*alMGf1)2)Tuk~v3nju&;)6o;30prlMK3);4yh)q8JoOv zrdlmYPv@j^<;+UCN=?+0RrvQ4`{w-Aj>)R{SN;6=G#Eul_I+UaZMQ8y(0`%2Ov;7# zL-~e}Lx!f=RD~EW1ARZpNd;L^SWt5~_#Qlv{s8qE*KP7IT!(;oz8tV!YAh1KBtXO- zo_GJ&D-K-xn^+`w-@EVbo4KC<)q1{f-r*~yLbTh+AsX|>BGW*Ym)|Zdg{+5(a%Kpn zhiHOfz~k7#<A<+oUb=L{BJI2UtMB&X<b1jSyvpK_C%zL)q7!0vAo-#Fjp;Wu-qx3} zl0w=OAV~%{rP#OV0+g&9<}<e-@lr&(mjf`%thZ2yJGI|<X($5?_XGttwbw*rV|ZP` zHl1L`cO^8+PtFXK)jUlUPuG-Di#u5ZUl%K0KkK%)KY#nSS?fW)#J~#QPzY7GutBm~ z(AfB9frXzxJ~zI6c5BD7tDb)Ps^uLmvzc8mk&;#XnWORL;GvY<`qEmQ1E*U1(yeeG zGrNwSy=GNw`Fs=GOyQQJkDKO~xBkREkC_$3!X0z&gv9&f+m;kSwY%6|3w?;*H9oXU zK_y6Napy05^cM$Lj^B11&X<eb_5hy8*nNwE^ue9GXu1MCHb%6n6?fj!v7FxdGJ5AX zx3<y&=j>C7JHPFPAKf`m9}K<m-_ra3tqH2%n7%WXQv@hGyrGNxc6=V+n92h!P%r`i zhk66;=3-XwbE0wm=J96^d?K-W6&F!yGPPPCG#bIl@*k$}gi4e4$$qFT|E9iVIH0}I z`=C1cD(G#L`^Stol0b)3#3qGeN<9FG!+_ukh9Ess<RD5y)?5$8JK=^PBLjZ*^FYLY zo7;4Dqe*flm+{QmNA7AO&sowWiZWF^CnM_#rYXIJf63+v<RIcvaw^(XFwwrxow2Z& zf1;^)^w7!pNtI*64P_-6_7{6v_?K;k!R=535;mCx)-D;yziMa(LPtle9!3LUu%Nni zNWh13fUZ#08S-TXVIePjr7X<u6u1xWAecB4Cgm72Kr;z+P4KS0cCB|p7v1Qr8}M!M z4b<&9UR`}z=ax`WV<`AVQRlrKMc>Se4Yl9fJ``hSM6T#Kb7#jD5pf<e43`#HR~MIJ zB|03%|Iy)YcgL1+X)#e$R`RFF_VViL^7!o1wvNj$?`SI(bi^Wzdk;V#atPc!!f-`l z_XtguLV(5?flD7li&0AswcjKx2*P!fd5fCF{-#A|FBcCWY@6?U$ljQr^kwn{WFfNK z&$<>hm2fLdnief;I%98IltAN;+{r!y`DxKZG$Y6t$;qhMV2_I$`uJ4x2Y~hWQ^-EJ zcut?YSJozp;R(+X-GFCI<E+QrWfXXWs|(SmEC~MihM=DSCQ+Ol_^$px)CIW6`2Vds z`>}JPbK9=n*L&KWQ~Gl9E$ulg7ae(E$KF((*SdGd14sIo<+NM!a~4l_PWIfeYZo#8 z50(3-INLne@7}fTe>?XD)g>;ArMuh8+G~@P?cD{+<m$O~MkM8`n_FX7=66p~Ce_+m zYxig=t&~hF%|)fExpgMFQBgOy8kOeKO3A3yZ6TwHYBtqmdakOj#JRd?weEJ6ZLC_N zAABn_OTL5sNe7Ku6!926xiBgr9Rf?^H>|9Oh`;>%$hMOCcB!wv<?fLY(o@`>d}_3p zymkY>u)Kf_Egj%L<M`6N(G1p&zQurpX*DwKtwz81;jLT1*#TV=Qz;Ev6Vh-B95taV zuAE_ddajPy3w6PGt;eq=r?q9|T2r--J+Ae6;}Zfp?<Fk@%PY-nb{8|;$A7{9iT~sh zZ;_Mz(j{Tnd)%kjISW0t@7{d!?)RSj@YT<R_~xCQoSTCCabd(M!Sx7+J<jW=p;>~N zI}xBLMNArXVSu6$zHgzY!zvVr31JV^><ZWz`S`xC?z``+_==V-(Vh2@z4z>lZfP+` zcD8oKMP02sqvY~aeLY!O*;i!`rz$+mZ%_Tkqevaj9_-4V*C#&q)uBUQ-7f<zSO5C; z{XtXzV7RY1ZP%`};=XYF#EIQKS%W!QS;J{-a+*%?pXRJd8_wz)%;_G&B@1KcRhR=7 z;XcOgnVzU222b-?Xd0CQ>3mQB+~`91L!8~ehmBFf73tfD!*i0^6GQz1QgxuVZsX>k z{hZ(b^Pg?rSXavqFau}55&Y?5I<u`j$X@k6S+~w^4#z*}AHwW*PIT*yH!WFKR9sxN zY{^YG-WnIJqLD-Uh43L<tK?jqKO}4BykK^lBkBjU+ckLWpjZQ%j|J5xt}F^MOfcI) z4uJs<JzroG<qQ;nhZ{%?0kGoH&|U*}q6~*Yofqale2K=u*QiY?_33HA2~S;tg4a-r z+My^lH&{7_Zp5O@CXH5XRV3H-?tbXz-nwMDRie`<q|>^}2bLad0gbIyUb5@pz8$&K z@{SFv6l%pgzgp4UwDOrhU{y8vOzzZ*V=p}0L{oA~CLLS0xvXodjEDq7D1Y1%-f+-d zm_E5Cyh2Lm-M&L<2{lY^Zf<P|Ta-JQebtk53M>aVge?JX1?RD;E4N>B#hhq#&K1{e zuT<Nl(>~dF<AAno@k>fLo8*ytqq}d~Zhmwa*&$8D*Izz=etAFW+%4k3FcI%wyquj- zOIbD*FD)+9ZoYBjC)1>(a|P3BJeC@sMHIJ#Ofv1}MH9uZmu80>LpEEeF`QjGdTAQV zs&D82H7lH2+X^r_?1^JCq!Dcja~^sIh_XZ!qfdoFhFWMCp=`WJ<nuzPgc3r{M3^?5 z%$N`<h>ZvrjeHJ(Z^4sjCELH@AA5qD{3$01w)qn$B7B54sJ6<=F`<V_jwqq{=qLGC z`DsEN+7o2rH{1E&_BT@^6M6y|*egc|AQ<gmMFz&?O)4w0v<z1*+y~?en%Bh#S)cOG zKm!|-=`gn?HV~a!0Dr~U^b7zDRi_|*2%(xjf*)k4@HgDH@(j{t5Ay?3e4RzsY*I;u zF)~1x)Nz!^8b7eAb$GaS)j%ZPJc934t!!n`&I^@j)&JkFOZ>lF*Ex}J3s~a1;2(kC zuK~|%HjqaeU`|{F-a5`~^ci6PlL9~s10E1FAqtiav9wQ8&@4I_G8-`2!V30O5Cis9 zfC!)JxYQ;HMFRZ~LYzo)H;9@+X$fZRFuyhIOt-GLW~A`5OeXMt%K=s3XVrssw(VD8 zl}61;O5ajAb7V0`^7^pFr;$$!28T=<pXK0kS&s9MdEmtat>|a<3fRZ$`32uG3b9hE zRvVQ!PFAo<4!(@s7Iq}DvnH3SO*&vL0UTT9QipX!69$G(BUfDcwF3I0fv}gYuQ%zW zDe8lbP5g(>6sc||?+rtfJhR-S04R>+eeKkxs-66;cuc@1e9d<Y*bFyx$V~W<3K73q zi3cdiB@jqy2Y~*~KtiQMl@NguM2Myp!&HbvdK*|BX{KCjG=|~jhtDNTX1=~Md*;%c zAG+e>JG<|=?(D<Dwxm581vOE7zQ;Yel%y8Bj|L-kgbSWdQOA#5c4~dR=dx3m#aCe= zUQk<@^VsW!HM6_#{P+s%UHqS?jXo%puv0vhRwVBzJmWISzBByOReCfxm7hs!Bke^M zr<?aoT!+t+iF*JuVa|>6%Y^%L33oNddZR^NXbjI(0EaLJ+in5LqhmFgy~m_S338Cc zNCd&=QIH6h6Uh>gO)b&MWMX}L(f;dgwk=l|cedqprRN*@H*Y$1<2~E>6{m~^LE{_o zzc@<Llxp(#KN=%J<Ef^%xmh;bbq9*tR7$Y|CMb{3*bmfPS58}J@m2g4H=ep_A0Mwg z`mHe-F}`tDt;{G%7Kg}(bo11#g?LAb^J7>7Khg+~&<t2(7K2UiGQ25BEYuy6Ak(n| z@IK!E!9pp>>=B3|G%6iH;KXQv$Rx}ybX=e@N?ya5yV^abXO0Jb!Ko`~+ds7pca1Q+ z^22QJ+#Q-(;-UVtqW&TAEX|I&e-=E(kJB#62)#Eh3fd*Y+Svj7YJnJqsT2rO_-}+Q zR`k<bbV#C9RRbHk;`b+c_|K`L0l_AT>FnBo=oNx}2|sx7tX=R<GTp-2gfsKQ!aAw^ z=`Gq9;CAD`<9Nxp7;UM=!3w*IPn3?)HU^oh2A&tn6wnF&CB)DZy(E^ehkwAQmxe%$ z>@kB*+Y=yGvqT#4gks<l(1VcL>>~kvh=7_F3&0-%nS?TehLul@W+^dBeR@eK;vv#d zzCLEv2do~wmE@bnS8oPYMe3$Uw|)5Gqv`2Q8FBu@4}lO}Oma67?n9oyz<%!RXQXTs zSzHDi{K`%Io-(p{Gr#iDO(Zvdatq02EBF^T3#FSj@vk4-{7C$<E#y)1bK!)1(kA}7 zEjU*E#b*9Ba%A&nzLlK(=p&wFWRP?5?)1k#`tZ>($=m$sl#d=uPk*$Vl)yM%M*5HO zFC<nrk7zcLJmPp1$MY*tO8U$AA=3ZoW|GIx*i4Q*v-#2ZBe-Z$dO9z<cQa0a8W;Gi zlQ7n_LUKa;6<Vi|E)Ie+<W<mcVbDchWr*VNTcZHFGjt{Dc88l2Etx9RXyyVQ2cFHb z;4nx)KzZt6>cSvR<Haz1fky;|=-aeYNWtzJE_6qW%m+!pT4}u*R3h&mG%GE+DJi*1 zTjoI$v{-JoxjYtHToiSKY!RM);Q;=9OSNT})k*>fGi^$GfJJFO$iHv3?!uW+nyAm5 zDhxA~DLEE}@EiDvO5rzfvU4I&a!KYv{ylmkcs_!OUuN(Nh2i+{*a_dm6<FOaWSc*j zS(5A_qVdZ`+0EdI#f2#>IVto;&}Nx)Bm6BgG1r3lImD)8OfKgvV#tZq^Gjt;OnTIv zB;YUc@Gy6QD;|YHs6C#Hl~#riNeKSLbCS!=srf7C>>GOXkHot7PtPL(;44IxZ{wF2 z{h@E+l=2>;0aNgFt4cZ|H>KsRLd~~6;QzL_iNDKcRHAC0jqHs5p|5Xhc@LwFTFAXt z6{GdkPTJkEIzN~+xoO#KWuA?X5t~u<Y*N>>%AXOdN&`aG0`d1+cWuk=X_uf{Ta*7D zR3pC;s@b|oN7db8i$cqfY6>Wpn7ofX0&=0BnnX5O0W!fz7Xiat8KU6n_z16OK4paW z1oAO3!fl3UA>{(TSiVGxt{Fucnvj;le5oWLiJ&Tuki^iB^UWS9zQKG?i}J15g(eka zO-;`=jiwTpj{lY^`=ogl|LAr1*|ZWnGO!iDw&k_6^K|?P<^ipZ-%&%ZsV%T&>_vKQ zvBVai39}(v+H|~;ap*|;x8L&TQZR3i9)E5N@89xVQ^!&AR3ra#C{wH;f9&lowUjS7 zYLa-R2FsC`ESBlU*;71aGGw;#J#I4f_7bysfhCOQBRO(p;k*SFw*k!naq@BgTWK+L z+8oF`UdXWiP>!e|1BtZ^F$9q1BbgO6DL3@e{Jad3Z!yr^T%ueG5fS;=Z7hE$VfcFq znaT6~pJh;xfZiuQ;N!&r>>m)z6yV{v5))xIGV#|DQP52I`x(OTll+Z$|AQf?Wz)OF zWQghNf}f`yF)#ef{3~6v#e6^WD>3qZFr(yO^g5|eAz{0rIhBpjSIdC8^RRRb5N0a^ zUEHYm81n_(0wyzbTZxB4AE@$&v~j5D5tc089kuN|Nm{!2pSv@~T}a8)%167%(sg8M z*ZMBfl9Da&5@)(kUm=~X(NL5{Miby4BMY%;%AngC$^Cq4rdy^Zkz^k=<cxoO$^37% zGI!?MbpT|<AI+(&%b_1;5;p05NYDF5=zZ8QOH@PBTz=7eK}HHFYyls|Zvy%!SQv0) zL8Kd@xX&NoO~}KE1dBDI<sf?r88p$EY3?nSimNbi(a3j*CHIhwsr+wJQrQk^8Z*N8 zP9+Wfq#+wJ>Fj258p#USnoM6LjbtRJNjpf!n)v)HI$GjQaAZ`6DH1`gX8&Pgrc)e4 z&B{y4Z0<DI-hi{sdG)HP+h+$WBFP%B#!*laM5wN0IzK(t0Rnn!l8c{Cd1=U@uR-WP zWkw6Kve$<_+}o}s{{JLQfZ_l2;{MD2IGz3gW593qCy&mfo|>7z+;?e?k^TacGWgFf zcut5jZFXDKrc&9WZL`x5Kun)2<o0t3o|78E3QQFmykjirkUtjZj>eFXaRh5W%zi)h zjkW?+M)=QC=|T8UB?%bt|6>tpW={Q3Cvg<b&q;=<5JOosFaF(3V?u$MC%G7tegVXM zB}U>-QI{~cS$!dlH$Kc>u=kn}ZJ4hCIs;9eCg${*k$wYNG~n5%0SwlBPz(9Y9xDc^ ze3%2o<H<OPMFMjB1j)TeAImq#LS~=Dnjeb!q#>Ubp8Q)LeW$T8Ud5y~w=P%ke~C5P zwppgk?QJWN-+dQZ{L&M)j^3UYgK=T)#59Kd<0*1|Q^V_LuGxoxpG<P1DnqUU(M~!t zC#*ku^vR?A3wJ(s=+IN-)y}JL-Ltu4`qn*rHZi7`+uK9s%UgoEoF`gqF+{qGQ(T~2 z@42?KEiI<BHWgP-%{_ZC(%ycP(@VU^)62`!)62^Hdv<rN?2Vrs-1E#cyDsT@;J%)o z`|ro|Vjydsl2V>6J){8G`^P{!I@~t3nni#Mq)Z0rAyS(D4$m(FpdDI*6oHU500A+< z!t+7bMT$VQ4>Sr$^I-CgMYn%LCX%I8#}+j7_{6E}B{L7NS$sFLh;iJ4NfVcnm6OTh z#W%hre*U_FU#ZBJl#pBzO1YAdwnzzF-+{_JpcqyQYC1gy!u22fX8Wa6*+<sw-?l(& z+<wXaTiO=(Pn^7v86xEPjn_W+i_Py47wCEjnKW@y?!@v6lf+e^2)pz`+u&DAc0d>P zW1cF4Cv_66M%2e4h%pG;rTrVDo0kID=$*p*kp+_%77&ggvs?2$2*ii+JrUncFqB{j z5Lld`<5NjqZyXcmKR&?hI`DB<YirlX2jn*||Lov_Pw58zFxT<_T0-S!qS&;jU*5lG zXo<W({s~!f%ibl+ZsY$&3$TkQmJIFb=l?}h2Y+&4{(S`n_su`>NiTok;GaGgHt&Ct zmhpccdI$Hu?43P(-WiH-21o0XJ^Pl%B@8whHXa{(XHTME0At-C`3<D#GW3ZBqNU)m zfOZ*+3KmJcH99=ve)Iw*I~DFqC}RpWTvDhSB?F*h3bF{(27%iyA>h@;aYA|Gt<xn& z0rV*0@F0s7G$IMU@IYDGl(gtzQD(1wYI0RjY42)EonS7m7uU~p@KQ>|)zoEI2CI^1 zB`cjSSBb*oR~5TJ6QH-Ida|>;ckwH3m|xiIU9iC0TR8s)wYqvve6T-0IHy{zKEQ0? zebsZA&zKG1_{#RAT6^yDX2FMFW>iF~jI|+e)|QF-)lG4GQSO{-vA?RT)>su$7^|l^ zOO=WgcTca&p;VQ`|KiT}c(Pi1x8-GQ-I|fNtvB5dqOb2MQ3a7#b@@ksP2~LaIdd@j zeqTLDEcax)H)m1q|8q&Q$#}lwdOMz#gp#5Y3nMiqo-)G;5-~DNAW=GGLQ1)W_-h72 z4Smc;z?%@38Vg9R0fsd;2grW1KhTVj_qwJl`mPPPIRmL*e3{yo5=gzaZ|Hk(PLB8c zp}uQV11W8^JfPLKV#gIt^#oCgp$sN)I-P_h*ZNb`d-kYP{5*F9|9%Jmr#x-2y-ho< zLmQYpS({6o>PLp&d1vSmHUDX@cJkx^-P4wev*i(ICkbpL^$#z7cGj$CmqNxp15P-Z zFjko93=74bGVsuGBE-V#No9rssi-&<l)bEf{L)d?rH|`hmcgE%B&lvb8<w2P%qTv4 z&$`=hUniMWoRJx)qYwW5fS;W$+5~=}eY9N)*fQ$$LNiP_?Vx)I?2Isi2*VCFi9kuo zqXdnD*euLY3HgLF9t$0nYB9orSOJh&Ff`HzjAMiaIy)7~aZaHE9lOBiCDIv0z$(&I z@glL?FH2A;W3tEPh*PierkJ#<LmD-*7pdF)+5JIXLwG{2r%+3C0vM`Pd3Gg|j#;Kz z92u^)bh4U~={BnE#>_ynU8Qnbtc{g3o#729`1cu&%@IhB<kXgA_fP1a(o(rRQr27< zX`Tk2`L{^dnQcFjPo4o4v~j>FEF^~)B&7#TDe@Ka<e<9Mul1|L7DGe0P@h}xOYyj@ z9fmZk+?*jzkp*q83{1JWn4le(;#4_pE;p`b<JO;%%nz;`DbgiJb3(Jq(;NM(D^*Ky zC52(VO8-}o<s2ke5aV5U@qg#9N~E;E3zsIoCy1+nb!7nF8{utYE@4lJC{HqNALsE5 z7p@O*n9Rq~*%z#nQ?Q8QzhD`~H_o?<KgI4sdlSw_^JZX7#>nzxY%<yP<KrZ&$B8oj z?Pq9PW6pic_Xu_<YEPgXe6)E`-4<>lK{r88KEU81qoYq^0X7JHQ3ZA!@gS`|=x_{c zOh4m)GlO(h&dqCNW&P9nbNsg_=cP^WzdL`5(pug{!dH`MxlA+cXdCSlJRDrdK}T!K zuvS{mzj8Hyva1pRnY_FEr>D(3i69oyjD8v0m^Tkc&LFX$8MVVHBj*HPhaih_;G8=R z-4cFG&~&0BU|a!L7D3~WS}h_9%%RZY5L8QGc0}aEZP&cSzok%;VRM@16j`E^&U)l` zuM_S3S@F!QEm`r*S@Vfj^0qCLe}#Wjp;jsRZlm8ut|i%OOMJ1{$N&0G>&CxKjn7F> zXYQW*myOmpNd<j=5^$YeCOyt|3znH;A(lfl9*jBuP3gF(4?Pq`r@}YnMcQSd=5Z+C zuoG)S$bk<m3_^{uU6@(ut&G*cp;$vV7jQ`9Om^aQ;c@b9!q;1FomnYQQYGsRm#$o% zpWU{rFSkTz2)HcT)@aMh<ptTT_gxy_U$7i3MXg%1E1=gF<u2OYnk|&HXvRwVZf+Cj z2p%Z$$HG(RwZhlvO?A!P+0kva<&4DR3K+D-xdV%CZp+U9(fMXwdLPq4^cVi<&3yy8 z#X1z3H7)cyaAh|y8ptaq_l>)*1lj9G={wv)Xw1;Q%zB+D6Az0Ha+r;2iVZ4@V6NbN zxntp-S#;jOtU;}dm{BqCj@tymcaqQCTe+h6>K%X2f6kXap?ABw<)*wV8z+YRR#V3f znVLMSRikd?_Z&;=C>x#Hwo-grFvC5{OeA%TaoM+)mfHHzjC-z$pPl>sgx>1X+mL3K zvo4!tRjW1m)=jr@{GS6EWgV-;TEU8krg+{S8bbaDYUddfq$my^QvyvO^5ZYaR3w{! zTU?zjP0Fof_*cd0h3VpdT*74*rb$<=lcW}=O4hBEW~MkY$;0A^TAx)@mnT)7{*43a z-zC-YVTa$7OrDQdB>Vlz%&+-!hu3qVF3Vx0&>^c~HZD#NZYWQlQ4cGO1TiB85-OEI zs;833c}0beC!T;l-(nW;8%^3tKwMGy*h{2k<>`07;}0;;eJS4eCG*^(rubzbM~z?B zw1|05?Eh}L<ZeFaT^>5>Gns!ow3ZK_K21*Y;kEp`4SnPf^RB;s9-rFRKtgND$v=(= zI_j8=trfgRnXqFvQ^^yrIiWu#hBYMBf@XpNF315h|6kT1l+lbD7^oni3Hg}Cej_~$ zXS0Bdd(PIabIyW|b?Y4VrqYtq68`N{{Nvv#Eh#DG-!3UFEs?18GJ_+e-@v!?lLqu* zhhD1RO}-|7y_?pToEkq~QaNWU|K#YW0hcSlI<b_F?ibd3u&lYD{Py@~w4AYHIohlZ zxhzDxxUFRg*kjy5?dF+X<Xd51K&Y4Sqb2kXEv!Z>F7hmB*tj5EBf(f6rCZ_PWG*P@ zVo|8y0Ex$7jG%yST1p9X@P`s)V>MCLLz-_y3FH$D>WEX|x@zWj)t;@b?V4KyHLs?v zx*}8I3@0<I_mwmRvm7+WUV`*)Ks~r)6WUu_Qhfa1LszzjCY5{jBuSPMO5tA*ZPqxo zdO)Aalr>jpx*zLvOf1RDNA5szl1|5Hd^M6&b8FAm)y$n+BYC=ZE?<;aSd^DpAva}@ z4!&XUS8#5n3j7iVeZXJqfeKe>lLlL2cWvj7cLq|dY8zowdi{w1-d?=EqT1y)=v5P@ z$(x$CkULiU9ll_jQmJi=PA#rU1tBlh+g3}5q01QQTr1dWal=4Yizo#j3XqXSddOzu z-{sV;tyjihAHB2+2}mQ%EjyT>jlK%vjW_r=m<Mb%HvS~1Zb6OTvsYDNlN2yF-xQz8 zbCg`2e^Zz<M?_9pi+C6oclbbIoTM{l7Sw_mQe`6a4tzV-JW%aukW)U3I_79hj8H0+ zp$M-6-aTj&Y`&92&NxYo20p-jXN^jbK~9JSpsyR4e3{vAPIhLjTQo@`vBf&;He5D& zjtw~o?Q(bVjQqSAC2qN$$(-Ks&z3H)SY{&rk||jYGc9`i)LDH|uYt2gn)`|)on_I? ztU|Z9C?l(&tTR%)s5xrm4Blv8*XWdj_S~e)JD85k?K$lQ<VOGH%WXNy-Z_<pk;^BR za$J7#Lam;p&YoNiDLhy;c}^->Ra;16RV#J+^w|@O9h`jDip5D&73@6+au#-XRtAVO zr?@!V>C7%J&T*1JWoP%ooCEi;3UO*>y{F@fD>^*&mEg2ayff-Mwt(|Z6!0LIC!+Bn z--@l!5U89B&6&nZL2{zgprC+D21W)xw+s<>ujWNkn6q(0%Vo;NyKBxo*BlYUkkT9( z!E!ZQ(As<}VfOrEn3uQBx@B=sWBfk4Q>cM=_=Aj1F=tUxJId(KL3?w;j3xNsG1FwR zkpk9(zzUrxef$C-a8dU=bx~m&|Ihjm#|UPG)TqQ0Ds*5i923?CB%)yitpk2o`N@H} z=)fn<lE*9C;F6D5{zqLL#UcJKvm{5H5^kOoqn7y0Vqv2z7LFJ4XZaiWvs4eJ_9L2( z1+y~?!~8|-7Zw7GbC!QidWLhsN}UYUbS~O0lv_-gu>_Ju1XLQGVclqz@CA7g{)k}} z;UiWHhuj(Ti4?Fi8av~|(MGBLjl0tpCX>YvHxhSpO3pEU_OYClWa1XXkI_lX7N*_( zhF#h;G9t(%?4Q$icQzNiP8M!(+p|V~nZ~O#7n<7I%nJ~>KrEfR)5v#OcJ~H;-|Gd< z!wDe|?*q20F^q%~*Br)Ms-eCFL|!pE1Jn?zjkx{DuJ?m-LWCO<lyk@hK-%HzfhMB& zL<2gh!VcFB=NqTVK(tjCf8e#(NFw3OYyAEngn0<~=Y{;yxA~8w4T`k8!V8jj<d>~1 zSYNOs*_qpYvOCwAOg=8l-{I&D-<hVE5alC+&@NdG1jU8tKJ(g7s4i?*bN-t*d9B%J zoQuvmoo6!_>O3CZ!c20kY?1R!w$;1+&HRZ2f=G{h*HAncw~)I`bWn7k=y8&S48>cK zoA_3QK^`W*BCjGp@n7kfL>V#QXkjtn3l<y%1&KlYMaLY#1^~te%@{T?X3;<DK@Va~ zLdI`vl>X6dz1AoQz@m9kCyUGz*o6F_A1fDI0L)~;;DxaYf3afxmK9N*bQGj{gcG!9 z2wGyzNIoo#dKOj~>=L3HtD#56#HaudJ<f>*8}lX>2rLTW(y%}lWg2^w8w*N<@Z#gL zQH)@vaxuOz<IxJ(j7Bi^1zAk>l&JvvY%qW;#g(9X5R{lyGQeDkdo`gA!_G|us?0Q3 zF;+3+VhQUvKxYumd<a&;CS5RCV9V!ZvA~Koh%uecsYF;}jHf9_XwG0k0u}HVjD`Lf z@DCKJfvZLXgw>Bk5;7`fUV}e}MrYB3A+v%5j^;2Kn=dSqH!|zJzGAUbW?*F{jU~qA z^H=T^?_4>5xhB1|APxD(WlC|e&s(3VbrhDQn~ip{KSf+3NtLJSwVYI84(3V`QK6B^ zjM<(-gI;d1N;D3ok(29?pjN}kWRBc2jixNufu!#!P=Zd&sB{2=qD@v8da{kk5{r-w z5apS{x}-IvDl;S{VuxRBH(Jt53LQ=2XK!@R?4CR6{w8Zt(a}a>`JyAs;mo<`JN}!6 z%IeM<Cz9h%Hk)M9kOAR3D$b|3%YBkmZ?cken>d$-%~S^Q;^*2@t2EB+G%=ct5?O9& z_IHFxaU>X~%ttI6w1K6GQCX9u((RM3yL?XfrQ74LnA?HsaMpCzC>Qcye|Jxg6Ti)I z(j==2=@M;0oCMi&Q~g#=Mh>GyV2(I5T_clLrrHp|Yco5g;(#)f)unJIHwP}OREbY+ zH+ZEghiQ`hk2eg9*;UIL3;9N$D?ms($5m9Ok{#icNZGa77QM;oX>YFFzw78~D?a2* z>t5#Oi8;&L2&r5R`pO&T^;}QLws}3<$ONCkW|_RNC@pBJZk;~hPpz!*stpc%SjoJR zyl`Ns(v)V)kyR|M@Jrf#t5*5i#g^>SS^2UYTbikIXkcNoy{4}zCkYMMpm17)sm}Ba zkI}2sdW$%@1}SfoxD>NS0*W)1vU3qB5~#~%js@A-3mh^e=S2aSv&1Y2bP)MuPT`Ue z@1~J+MP7~GYxJh4J5z&J7n%mgCFL~r)o?fMu}WsnE6wHa%YM3JS|nRoiVr6@PHVMZ zHTn9L86_65X{p2r|57t5sS3&B4RV8=OY&i4L26=!f(u%~?Uv5klxC%k)3Gv{RL;ti zSvUp}f(O;dPd&aM=rX&-a+#V{SW~1DzLl97%4{U0JS%Tzo{AHzlniGn$yl*%@>SN> zX^qKtu{6aB_6Njgxy=#<hf|P%I$4d_IJs0NWAzf1T7e&g$1mLplBpo4P^c{qPA2vx zakxOeSf;b7d#!tK3bePhSHzRFljp8kjdtc+y=oCZ%X6r_zSN<gv?P*MW&%lGSLFU< z_>6Xv#Q{$ilBlNJ4CVRcpX`i{glw9@%-Dpl_Vi7?=8F5Po(yZHh~e&VELyeNCogQ> zyxxeZN|0yHErDI)GR&_n7=v?ZYV(|kAQOf#0#QgGtb<-^FQ!9)$tey9YOB|uMN^{3 zG!iPTtAGH)fdxTHM^^jnstjV6XskMgt**L*|5vs>JKr6++>=vdn_?xED<3$1n!Im( z|Dm1yAOG@rkFH?q!im+sO>Yr5An~2I-SGZZ9qz+qRAvj;XEDZ=*5U<q897mJMt3+| zT3P?MdX=rctGgxd^694K8!Gz-t}bT6K?srlf|k6gkNtdTWo1sw(!Rp}H(}@a9-PmU z5z`}uPcep=p2fK1F*L7n%n}6?E+$$5+B2@OgOns;rJ~Z+xWQ^Xj{-{>h%4Y;NE|hO z4Ct>gWsOz#3ExCMXK>D(!7v<mrczg0s(O*@P@jGAy{<*-aGJZ+h;pW~nsPHU8A8p6 ziXASQQ?E@6t9!ghJ~-l;uTD+VX`M26atSI&@DYEqwX19EoYBL4!YfE@dbzqKolNN6 zu%VYfn%<(8>uvFKLU8mU@%C)bSrLsH;zXWDgab!pNM>c9AyH3CCnbxwZe7g3kUmK* znPEpNjYLGX@D1G#Sg+;MbC7e35GzzoZ3BSF!}0^ehM=fWJC&5mx_E%X3Kh061zTf6 z!kxqlB^gH60$9W$%ShR~$$}3+6gwOYen1vF9Q=Tz&B5PRK4F@=)WT1$5>tU8qSIIN zlP$93d!D-QwsL--!$DAu*?XG*=nTK@4FBP2ZW_PugFs*yXZis9Tfh;Vl0p`g?|Ja) zdy)}2{BV_)rg!OYmQ<5pm`gR&8p`o&ttn(6<?JGIhIr4AwWo>qG!PHtvYHXOtl%TP z7@igPO^qUg8Ppq+3i2iZ0YU0_EQc2#iDJh@Z{P&*1TKPUjo(Y|T$Q*vgLXB!Gs950 z^T2)lZ$BI?wyaNQZoB~S+T45*Y-{{RzI&D0EZmcLHQ$}S-cmI9A&J~~$IXTM4D#It zxL4fun4SQ>5Srg21^qgLe*GgW1>Q<N;C17%-^i_a@pTCRXhZ#@ST>UgPA%As3P}QK zcK(}Noq(zh^^0FwLM!qIspt<(&BYfY8GY_!*Jl$^tYkW#f0WwK;LoQaG3Y;n-UPM9 zNUzcZU5?SGG7vq`$vpV4hySjOmSa^yy#y!~F~0?cOQbn*$wL4K6VW*lsU!mgoGbhQ zKP(2|cz}oym<7XELI<H+C_IP9)r>q(OGcvfo;loe{NF1JX9FHysGit>Y6c4${z(K~ zo<4IaEWA1JOU@M9lc0qlpC!~mDr`cOA0JT!hX+Le2u5yrI%)TbK`p1A40`XvAyC61 ze*wx46DryuWlMo#PERCBK<!6$;Edi>(H*vA@$Y;q<V^cbo1(LwKM`quip)yRo6bK@ z^L$7YNe(GvylfJG2lZu;`JMt9!)1?rmQ=Mp|7+@l_}WtHNV4VG^tQ1aYPhut3)ZFc zUwn&1YVT7$lxDDK{j{ML>6NY^vrBRACn&QXzm?0fOPgt8%dlH&cWhR<t@&S3kHXg$ zkZ7v(Ie9AKou85(g&%;0j-)_jhe5yuy5M6V2oW*LSs?k0fc$ynAbSeIgGMBB!Zwjo z2S3EAQ{tb*cahIWH<G0hrtlQ0kC3IK8<;Se%kQy?N0uw#CjCUbGk%O;a3A}B<lgu{ znP~iTW>VZTS}nE&n8o}Ve!riLe9oEp5P7j~_p`D1qqQSDSs$S(>}aeJe~C=StrFfJ z)vU+n2@&n&M$jKiApRnxg<87t0$}UL0EpNR3<C6}Ss~lQQ|N+Win1}|g=y)yn4lBG zT!FJlz7w>>Gq?CB`dI5x{;du*dGwB4b?_yI?d&Y`H~a0rvi75s&oTg)H~5guTd(rI z$AZ1JWzoyN+TRPALH^c|WL=h=9N!lZ_WSE?dP|;7(j$-##?$I;2ELbANJhuyZ`_`D zZ83k6|3^lK(_pWkXmEzpScie#@2#~N@S<z`7%_8ocy|A*eYS<j7qZ4bu{H<jv0#(1 zyTOYe&;c%+7*EDIW*lJGn}agiK+(3T=M8dBzL3z*GnR8ka<LRO7$l{DAzcuSjPOJJ z(G!*60b}q4rHt^5^CeD!E++o$<f3UN`^)Q3dQ;c$CG{Qrb9IIGOVs=&KHs#m{nKhn zAM3q6Y}J(bTXO6C&V}GF&qqqO+n2?=xcDz6yvAQp;6Ly?@nXf2M^g=}-^feXwf#)| zEGT38cJdDvO*6|zCz99v$<6#RlJQddzDZ;{v)wn(JFTqRSm@f`9rFh3a=k^`_|k$v zN}vFX<+tTG<+HEy$1d&3<lo%tT3N_{o{*suJS!QZO0;Jffp8y~E5&184-jckFB%=y zkj)dgln6Bz(>teFg&%r*B2v45qEo57=5LLfUNYfWGoqyXK{ZyM@zmgn_~41br?4(l zJaE~W!?ciV^JYOTkW6RP+b^*lczp51>rgx$e(u4i`tk3nK>;{4vf6&x11Qe&(sT~O zJ3aSL{#zLV#?1#T?h?`U7{cJ7fZ|Q#>0(86oDuA?LBL5eh+9Qqxd10Cb+O`_;nPU? zW}&^JwI{r`2|xuGphm#|Ud<<=N+-2+(*_|VA%iX~L{<n~<YMyfOWl_r9!k^eQWy!V z3tA^Cp1q40VBWY39|L@tU-4Is{-S!VTq#>dN3>;S9m2*Wx-qG&Lp)`y;6L}qr>KKr z8%C>1#!BNPeA~hy)s5R5>Z23GVF!3UO*z3$n@$qd{iNW-!NCs^X!0=s%7=sOgDn{? zoI<9;AsyvyY3J8FI?6A;$8Jz*+?GU)$M8bCeW8GQA_Eq;MrAlA$RDd@9Jc{DO990q zq5}xf26PModAQISFw|pqqwNRJ93u{$2@;Z+i>l>F+Kz`mo)?Fe1Y^{3M?2eiBo}Mz z>b3RW4+!7sG)?v5H2!1$)4}>8Q@tjS%(S~!(P?^BRoU6i6AETH94W1i8A-00GJ;W? zq)w`O%vs!J@3p<cY*5SV<j%JmN|;j#Pv}G>EPC0S)W~1z>6@zYe6o2(@%=OSw~CUl zQb10yGRcmDnJFy}2hOMR>Y2Q5UGLkC8{9KF)r82)*&~MUd;t)4Cm(Ju?=?we;|4S- z#^Ke-F|=Aho{l5)uY_bk4b<at*RjM946<LEew^Md?L`=7@hk*;c0d?%g#<;^3=7*0 zG#cy#rIE=$hR`2J<TGR2<LNaGW83gTpcPZN0Qw~aB*|2@A=7poH#alT=uQcI%)iU( zWX8Gu3uYDqNk2C>b3uQXNv3D{_dfPJ!CN^KRgc>;4eE?f5Z@jDOu*8U1aVh^urYw9 z6fBsSSeN@bJLi|9NL-O*jh0NglfIhPkS?XEQP;hxG%v|8<J)Tnznl?^&G>Tgnr~(r zl48+K-MS_aZiZTE-8-k0M6F5Fx~Pq{i_XWvg7~m-asi+hEEuDf6ITlRu2viMwMu2J z&ZI`KN#HO&vPs}@6eDhhW(Jxr>PFUcNM(AfM?$TT01f_-Dklj&7m5;EBodtpN+A_z z@CF3n5Ej%1ZUs%2fU2TTb(~*p+?44TOtjIw@on})e*X!w3JNlaZ%$-A<LInaBtP@G zt75wI@$&8dclV7R-uJGMx^zx8*;Cn{<Q+Xs5l3trmZK*H(gQYG;5^{J7q<BCg)K37 z$4?;Pp<1fz`$co{mtI9|y7x=|ul!e!yE-dek5_aaYV4q_49g$QB0XSsyrg<geeuYt zIfB--Q8>o|;e<68tYaV*`~lnyv{xG>Z4uFlXf9GZq(}5YksiJQn%zch5W_7ZI7ujB z7U5>_FP!$+_)Rv?Y5v76?~=@WJ|OGf8~Js1OHW@<OLpRmt>^#2cee5UHjl?f_8|Qs zj3xJw%y$Rg<FDU0*k9%ISM^s__gDG-Rdh^e&y9#CBA3Q)*vnHyzs1!+AEPQ7#&o<F zSUWKv(F6#XY%xS*_<)&D(ClFg1aw^(VW`fJKkAzlypoV_XaR8V)Bs2U792ERh%<t< zRyYT?0I`U{Q-?pCh-O@f0t=5-;kSkGOzKQB2{mAiq~-LFo*CabGqpxq5gV8W9ySgv zSaipO2(dEjurS@AsLPBrv2@wY?+9mvYa%Hn$x2DGOKex0G*UUy-dAMNC99PV*QCYK z&9{};1`5mS7tUU#SLM1hBFP4%Auxh}!saa2=}e1?CTu9yrWT!er>4G4!cMPUMASPT zI(+wylWL>^v(qMLtxBRU50|)162PzB>H4&i*%QQSBwk3)PoLOW;wIL#%9a^fg&vbv zZc)iNi6$n?wuohVtw}DPo?`?o5C)$H&a5#gIFrWYPKz}~^s4m2=7^rJDAZ{|e~}fH z5h=jnQmMhHPK6OIvb8A1=E%vv<CfeaiDdocvJ^v-A!cIDTDh6y$~r^2F@~A8<>t~U zg{6&6x38OaZ)MN5PM=<vVRf^5h1MW<uQ98&+$M*yykd5BJ`xXrL|szKGBAa)_GAlk z4T!~Jy~|=}Y3c+qE72-*RY9-VWYU2^A4&+3*epVuPULM>LOT=b5*=A+)ik;jDfp-~ zL!I!nm3zG7S#A;;Z<qlFssqyA(cnm46p@q(&IKM@_&+M_V+Uw^75rI39A>Jh7E;KR zal8?9JSWwZbZ8sY{Y$$OO|b=81TqOVz(8`spiG;O$4wg&JZ-dXdE8WHVSVQF;t3pH z-CQLd9Nmmwym)uZnl@7~P%|p3YB9I1Zrk0jk-4!~^0L-D<#GNf|MZhnyjrY3f~?Uk z4^Q@MKO&<CsZ23I7w~Vj6~-SRD)IEK{P#zD>b@$AM*7RYs_i{W<eO)yIA$s;jPQ8< zYDZE*ev$(j9_VU*p3SM|mB<bujJ!ekws_=f5^-yR+D`?C^HgeK!SD*~2ozv=5UF}W zJwP;6CjpIPVVk!KdLoS=q<t6Doe+9Q6%zq#2SEY4Js!mQXy;;bFi0Njc)5YV>VjFI zAH2&A&P;yd$s7kiY>^}#v`_dQ)BZ0{4xifk=>eJO$y+L>e6*Z@fCkJKRe7|wbH<?k zGrLiA&Q>i|pZ*y4SJ=jN@xv+EC;5q)t_ILG_tP^6$#BDOI>=)Ia?sI)(~8ghj+yfP zmaRDNfse&i5Ac7jFP~ECAk)M&m{%>Www)6haps_rh-_L<#mF)N%7S*m!SA<PCKYsP zEp+Kh%tYNNr_Bzpe%ul#I9c_GErg^B%#ENG>oMb;w;rGoP!SWeP$Fd4df^6UB`T<1 zSR|Ne&}I{ktN7zX{fv9`M5soW9%2u&2Zfc<2N^dt5RAY;Kt!}nB$mVDD>QPJsr+FF z%nG#OzmjPEALA&+Az6A$jcj;WmeEozJIuc})E^(9=VS(g_8$UoD}PuG;%9!?5`2v7 zWz)E&;Ox)~xyN$Re?-JLHk;z@)8`b;V=XZue#v4L2QuIa77A$(ftShv7Zk~-<9amU zr-GF57nGKh!)Fd3K67Lw`N-+Rhfn{0+vbTxd{?%MnTgo6_&Jf}$YEN(qo3otE-!e( z@v7%+G0Ds{E4LF?bdLC|5sCNMZ3lWPC6ybG9KosL%g)g6c&?*t_iuc1$<Ec>gAYW7 z-|!rI;l&4=2KiI*b)z@1Ps+*2wrj1EdxLIv%Cuc!;XeN%`B3sN+$H7A>J%*$m;pdy zDggf}nJI80B$`3Qc()pQ3y8*opy$zN!6c2D7|CkNVe(|Ce_X=?6YeuoCPJFm34(P2 z%~ENmQyu3-?jR-@ir{>3I+7c=m}+OtoS3u4n-k<W-3aXDPIBjc_E=rt;+wCTrRMlQ zEqSHAS+aM>IsQ%ld;b5{=^cf!o+&r1o;7RrwyE=Cg%17bQ<jR>$&*U`DLEz8CHAdb zWzv8xVAb3GSuPDJt?5~r=9^tjh&#6^2dQr>yVpfhyKCSYK#o}QOY&v>H|iv#A~1IX zxsC76$VP<7p5_kK)ET2UPTaC==9Joo@*u}<C|!Ns#v|-J<PK`vyNs6>&!5s-R$EY4 z5DsHeTh=;dKKZN0s+0t4*0(iYQlG7t@qZ_qSXLslWwsaA&k17siIq%sY2B;*Nv@DB zY!9Y2=af$Ks@<3QlYE)ZEPom`kib@Y?vyMnK85UkF;Np*8wWM9oN_ZjSHXj%A_3J? zFcnI~QX`_^Xr?WXF(DY>;UWaeBNC2){1NmA{M-vP4vN(%rJOS5*k#(nNk+YyWtNuY zt9eai(aozqyOTe->CKfV-Y08`VLv<i)fGF)t=G*%>IKQ%=STKQllX7X^l}pnoFQys zZN{dx68@?9*Zdz5HwF#|WiZ8QU|>9xiDeqOUPm0A4;aGL1*_T~u3+Cmx*$!ekKa~z z0|&p1n9=7l8%GGURwc7HS2bCTvdrnrVUHAav|YgHv_lSFFFJ<%)=>8}b%{XvLe434 z9e8tLHW4;C_)KW10X(@huN3_&hbI~m4>bq~UxI%d(;LPs8W0_e=40prTWbQQd>$FV zQrS!cp-CErNQP>V$tW>Jg7-qW1Smfo0RPnSi?e~tlAewJB7GTLxS+d!LzB|wJCWS1 zR_JtEByT}J7O)8_bxK_{&uj!exYdZvG=VTf)UFBn45w3TG4mL;SvsUB3#pX0u$%L! z)gc3GRjFj2<e-G{m6!~mmE`OVsY{!T$#TX(uDb&)emnW4`26dRJ76VTL3ZP#I4G&e z2+zp!CtJly*=}v48RU~<T_`DN!!np_T0K$Wv^lh{;#;_20Iq3;yeK?7Jv7<#LC|gA zwmcF`LncABDmS+jG59i_+ljamv0Mrn203T4(v*6cQmOW8HEM?;yROw|Or6{`%g=z% z)8hslP+~A7c~q!cGSw_DOK}*bT;|=8w6=^w8Jp4)%j+*^NlH>J(b?=~CgVS^{tn#L z=)Tl^;!LvW73G(-XK4HT%b$oMF^;@N&%&Kok|%FhD&^tu)cIFGpE|RlCa9=%S!Bjk zy<BQZpWwAC6qRT~Fg1_cyTM?EMgXCl$}1#6+zqwfPd#Y{D4N3LCD=q@RiWA}v#>HL z!<Sb|+IJm%nt%403BL#OV`ZNvxhVpQr?!0!Et0d-eEGiV?M3`EH}KnDd4_-XX&^&> zuiZs7s1^zGx6!FZyRz-JhGPpK1a|r~@{vsAvVl#3m6HJ7E2Tpp%+3hhqxJ-V6{y)6 z5p!rpTw*Pd3s4FgxzOxT6$554#I;rB{i28e=;`Q^@~F%oXwL6w>R)no)8@tL#^}a( zt{$qw=q4+uSyA-d$n#zEAK5zC-j|mx%P;TFxrZnZOv^FI(p_iwS1oClXBRA)dd;;@ zF7!4fbIGQ>hf~^rp1pButEwP>QAv08j0tUl%D(hVlgoFlIy}7_jkS5sK;A=Vp3BNx zF>hnXH4|#pP19DU?V6N5HK)>*DVuOZ(Y4EzbxqgLxN`m_`Fa(gc0xZ+aMxQQalzLk zsHZ}#3uIY+!oEVaHop)7<nbcfJmDWHq2WOo*<b}onDgL*7{j`KazLEm_Mq}EAYKPP zA#e^*%A5%K=P;E4AQlYRgBPsQKp?=qMAZ2J!QhhvfZh-hGHCpJMS9Fw+c^dQ>?vq; zkbs=<wk8aTf`&=ex^gl5{QBEo`t`BxokRUA+eSb@(m&L>{n)QxlAO|~RV*5KVljLf zm6UOW86N6i{KUYbinN4`FPv8eB%27RD(LN0Uj(^x(s|UFOmtdQn8$uvP;noLd^DKw z^Dsv$O8Y&`kZ<rK{<r*I9+D7b7hE0Hg`bm60vEX-)&mjFl1_|*+5j~{P(g)Xuu>}x zohr<Fs|7Mx3ROqZA@Gnd`lNlb3H90Q*z0>ndgoogF0VGg9!@F9a*=E6a@Xb79nTuM z-R3)N^Z9IteYSNr-x0cc#AjpH<kZI>>DhLD57SzgTM%HQPCI|^H8fI{uX!N#DO$;T zLH%`BdMIuqp_d5$sYEVt#27&Kq;&S@MN7fL5fxL*2J9N=rR_0c6G{ifOJ?x&OQ9k9 zaHt0jD<QI8kOKJu^xdHo{QW^YE3yZlzUrLls;9ZtH?2yDl|%j1@3v}{AUDPzr&WhW zD`{&2DImQ*=0~>M|IKduKeXom&FISig0{^6Y}o(r_EYh|Pc(AK7UwZ@AsTZnqD%u+ z*oW#P2fY@FS<xLa_+YXfbCgA4=ZqoAi<G4a#>E3jK+g<NZ&Z9B$p4(AJ@I>@eB%lJ zZE}6f3cfvH=hsp<7};i*btkoamg|t#l6;>dmkT!q;sbOSgm2I`q(A-!|IgPS=iedQ zT9UeDIE<#Y$6*2T@QRkJavVPXcePSSuFysj{gN{7*9+JQ8h1*um6+)TqvTjn609#U zkztsJs|5WO!~D3-9OlJnj2UZ07<dH3qhV~DeI&4^diG9JO47k)E2k`-T(i4p-L{^o zl~)WN3TNh?UHV{Mq`r3Tg!`9&z51=nKL`zrB<zV=VMDSZR<UO0re*s~X6=@#4VT)B zf)6fU(6g<er(YSfZCgICCcn0~2WObSa)%*ooZZc52`vuJVCbl0N|4Z}A3<Np1L{2; zZw9317;->)j)4d=9Yv4fB~T<AH7!B+-f;TMV>eB5RnFS7_t)?IdheE5m99xQ9phOO z<1a96ZK=h%ORM-tX5IP5_Z#QE@%9T3Zf<JY{NM|3zcFv)_ix-OnPeykGlomw`_+@Q zl^uNGD1MW+kA(k84_`5)GNajp7yx`Q{v|;T1b9{GkQARlZI0vJl<vbo^KYeJGRNcP z^wV=a0?^sQy4-)}A~++LETLn==*x8Z?<JD^zxZ<W<u9-AVIL;*P$9mR<}1Kab<mr! zJ*xikwxGM5k`7?pP7-;bz2xG$C*jKJh>dC0?Swg%4&~!UXt(h0IiOfzX~x5(Pz2nG zFnUT8>*vwLkLA=Nkxtdroezx?@90B2r&d{|Ol{6cfnZx;Umbga!q#YTWg91=h~2ZI zwj5Y62JFGaFvFax&C$plwOiH<c9oZR4X)Wz>yT-3YRN+3c;V;)VRiI~5bh%M`${^J z;hiL8no8*Cw7=3vPQ@CE!Gvt1H;FI+QV9lf4RvA1#=JWi_yG*j7cd_Vb`>@>ui%RQ zAJ)DEKC0^af9`v4X0p#@CX-2KCdurReV?pkfg});5W*e;B8jXK*#wluHnt#&8@Mm1 z)GAuUwbrVj#-&wji)*!2Yw_pSpIHBuR)u8d^8cRuX2O8d*8k_P<jq^|d+*-+?mhP` z-*e8Sp4ABS#dH7n;q=~x^QR~V1utIR(+(){f(hZ0vZbBnYo@|F{}zAiI@9D=*WR?D zyID?>KcLaUypE}B%A{QrPy?(zkyr>h0`Cy1M>?WKnt=yKs6J%wpa_pp1)vrbH-NA! zG9bC6@x&?lfiKG1(o?Jn4<8zpkKGk|?coG#N_typSbxaou{e7VyvrZsJNaYp9_V$# zV|-s*X#&5-kZxwd#r%T5|Le#<*i}pTD`q%ItxPCw8~Ms>vl}xiI&1UtYC9`3jCPwB z)fD}vu8}0M2R&wlPsci`r5r~h-?R>K`o%Hod8S1ZKHT~@HptSPhPou<g}n{4+seKu zZJX23yTO=T-!S`o)=1q%7G~i`l1#WfyP+2?#VxpTHbP+~FxFOH;ghSgGWp(1=?b54 zUv6pHM5-_8=+wFA7E}%qz|7QlnPk6<co{>#LMvV{@{6gc{V!JasFFgcap-FZHQ&Q> zO~=v|L%z@l@Y6BTQXc*?`n#09WcAFYb8|h``V7xptH)!V>&Z}#?*G^R{r?KDd-+Os z;gv6UR)s#O>eM-xwTE8hdm7&UaccuP@_0%;NAM@{_GL#-e?q-@Zg>kl=Kj%7uX_3A ztB~X`+J3}Pz&KBY1h^L25;dB1#Cq2uWHPuJ6NQi<%mze2<ZHGFQ4oj7cNE=)${h0< z5}9D7!B+?ICyulycfoCAp^NJM2nj-H52kNDxL{;x0Y7$dfp%!Y3xH|3CzL1T7ItUn z<QwAS6En=V##$x6Y+7UFFte&s$*Z2_B}B)mMKeujDmofghMHPiLoc-sw}#_dTjd(; zG>s1F)*j@?==BF#9KD`z@|)cb#CA{2&CZ!tk*5UwrDj_Oa*w9uH>$^Frpz=HFqC)+ z{_!6Qmzu{4k2F#hhN%v%(lP9y4z10jLs9z*^}ii-R6{E)v6U{N1Fk2_bEAZyYOrRw zNM))Wrx2}sJ6!lS{VGZ%{NL!XqTy#{4Q0tkg{5&#etI;Ha(ejf&=a+__^w!I#$vSF zffhvmGC_nb!WrHZA;Xb@sxB>L5L5j;kmi9ZMsd|qH_$z-Ja293RgU#;d22N8t+)I( z{Yy6g^~;Yxy8L?i$(;1T^qf0HO!AmrWh)|g^oAaidqNNGv-^DZ!RxM*cb;BK+z=U? zk@y}4$TWm-9E*bxwLy_L8rBh2{|TNHXew2hQCZZneHHPf^7kaeXd$4eVv5k6A0`Dl z6T8E-tE@fA*2<vH0v$x#a0DYJw8SE&66go%xi`Y2uNmKuLJ&Y*P5cpLNLnIPTbZDJ z6rup@gK!vyKL^x%sJvCu(ANfqrj<nZu%|1{T&pXe-sd$f%PdJMvGez-O09Y23BIA7 z_g?L(H=8Y<(GWX-&*~mlcJ|S*i!V6Rv8=n{#Wj!VmYCB$?xjbT%=vK3c}pv#^0P9s z)s~evr#4JmKj`svrj6VqeaaD{ahN~OFI_gdu|K8AMnRt`_u>lp9j`|;Y9FFc2#-&g z<TNG`@-<kQ!2E@jM+k;SuzJ;y8KdDbqkhMTJRuhPsKg-M3p)BYw)|t0GPUWE`FE2^ z^3ex$C8>k*dn2h{Jn?$HU9ZN-WTD3dV;50RuNT~!Znf!Segn_oM_UF{OY{#QR!8O+ zch7&gdFt^S`MC*|UhV&3YN$-TU3QCG_>d}vd@X*|aUbEo<KfeUxH}A9O=9HhnG1$F zaCd?>6XRE1Rwaz#S)??@0)Wp6a|3-$QoIKII7?Q*GU!#QsSSi8q4VH?X_Xb<H(fXs z1hh!W^|Zz32fV{)2~UtT`3Vze-?Qq98TB9DF$!0s`WaWOx@Y!8Gh0(Kp`<*p^qkTK z`k9W540mPW!uT|2eFDNu$mz8;xEc&BW-!|>lY28QxL!KNS!;4T%RI_a=5V&QI{6}p zuBdM7h9{rmmy&V(QvTGF8@ARJCGp1y9$S-?-f;f%I)_8bG#QO{gGG{@vJQ{OOIVyG zsh$c|CuTOUTh{1sG6zzwSdpMK&edESpG;^r$S=Z<MY;ty#`#2`7rJ1zm;s&jN$jPd zSqP~HX_%-3tm<OLWE9s1KyuK3fDOQ*lt4!Wc>&>xD5e(Nt*a}ndSKTBzG^tN=mTb} z2dbJ1E%XiOsTd7}G8DpsjcFL#P`#3^GW+}=tTcC+R(;^}nO2>8_`#~btir#VYG$da z*}Jm3rlw}qUi|5hs+2k(BPB`)Ml?cIAq_7a9(FblJDtPL&e*--VK%fd@*h7;I~Y^o z8zQtx7T%2k^aGGjg71nFC-edX6My<SJ;uf8unu~R)jh{)tJ_J<Iv#sUJ~}kS5K;An zhV&W?TlB-JCt`Iz7JQdF8rLMBMcHatNGe>Is~GK2=R%eUQ1&k}QsXm#^bpk~4Q(Z) zP>*yq`yX$k5g=lsb!u<|0E&%`+@jOWQdV_^a=TV3(tWwGstFX$Zjiv;j;S?toU2>w zch!o?*IDcGbIr)3UCWkrDP6b-z>UMPJN!4IVN%BKth%WV*6fJUSN(^&M?3TXweG5R zLe~6u6(_S7aK4%|S6uz}d;{jg1;9i&5laO;BdL6VkF+9oEYv-u{=^k5lGRqqHUS{7 zEbN}JUc!t(deI2MG5t4cI5t%5V?#wn5PyppQ#0jBPgClN@X(O6(aId=YBO_Ko1DKL zX|Fi`O-1{NG_g6wWJ+nqzZ6r<uCn1X<Z0ZQnz}P(Lhfe?>3bk|u)??YB&7{gMuz5a ze}Xxazmb;4iea2-<`4X_V$!6FKeFk{9nI$C=43Pe;dg8on2dk%qq=J$2PUdL;S&Ur zWM+h)2DU;X!WeLqN>u|h6jBAixy(<hglr5;J+x?8E7M`$0XPrQRY@%i2i)@PIJxB- zw|9Euy!j;+Svk_vgVS?2@dw7)n&xK~Iz4IG$u1q^v%O}es(WSKtxrCbpHX}Bxi!mX zRK@#N%!ZDBC-744W%r!*{wJTjf7U(A+<{(pk-K`@(g|LFy{oYp#-eq%J#pRTowads zZ5^w3@tmTU7c-x9<3`U6mYCwURAe+IvCz#68rJqtbjGI~`s;(|KEBG;)_>`3FRkG3 zN*A%o-TGw*uby@M_^hiBE_+WJnbg;t4^Dpkq)T`G?O(85lFlasd_gPZ;yH-G`UtEm zzty~<c@v`r9D>eAp`5I+vfzJVUa8j6KKe)W7t@oe1O9&%<e68cB1^0gHOXC^?ngJF zU^-b@M4#%&4Gw2?a1p=_@N9wE3fwp?SH*zrqQCJVzt0ahCToh~fq@8&y>Qy2Y+`te zw;En`czQZGkrXA6ZZ4MfSn#T}s1_DOWGI85ps?)VIa)p2cV5{5H*LJW>q=KL0zxd` zFzeQH3>o8I+tHfo%<<otG2U>;VVDzYc7Cj%)68mXwPzPMPwrdw(>L#$y-06JEm*Q` zeZa-L7hlqlCM7<h4?B>sVtJ-Lx1d8V@73wM?Vb{(qW$o<R}N}d@x5<K2rf8n%HKY5 z%y1xxe?f7rwXEn>9v;4gHMN@^hB$?7sq*E)*GenJWoMQRCajxz`AU{?Ws#+(@b<@A zE`k$<Ilp>NS<X&f@#Jo6O`q->{(&RA-J+Y^pLo7IpU?}&S=Z0KS^A4~WXYkHou+-~ zUi}*+#Y#QzKvj_?w|eP%r=hN8(~bY9X77#W6eTmo8-LT|iMsyJmsIGrbI<$M(s9{e z@-u6$A8y-QUcq~HS-HOS3)bJq`=&sgNla;-RV`g3msL#2uuPj^3+sRU_Rnr_`f<RL zV~m%ictgR=`m;@`x(shi{`m3d8WU&ym|y=&LJB<j0mE*ny1?m@GRo>^<mux7_p^On z<B!~Bw@j{l{3cz7(IBVVU?=NPf(cE14LbR@Yv-qzYn3Z~ncBJGN88pm6(>thdv?im z5Gq=?e2B623=r$Nn6b?mjl|be$_vD2wupHvh?5vh6tn<F6H?V+#E}XNHsnUK4*(xS znE>fl<+Vj;?Rk3YOzF|u%P+4j(#se2js|)+%KF0EE3T+5)XN)tl|R#QXyn>^&R;Nb z!F8MYF4lQyQU7n{=9bAUxh3U5@`~hx*Zrk;+qT}ryAI;uz^)JJ;KR^^mtHXU!bEN2 znn_DG0UdwKwe3?_uDbRe)olRX$$;)@JUrC}qJ)syLb*yf5fOSRO+G1go^lOAQ-v5x znpo1h26Tg=FO!|gp)Zq?4kkNOBs&fydy3JJa**;eo$2Dpf}|wbgtD?JQs~FXW~*b{ zb*Z`qIvxKP_LBf6(4|Taocg|NY`Hd7%a)_?jo9Hg>U1i9p`Wc?EBpwY$k?i3q=lk| z1Ll8<Uxwu!L2scbBo`eIz6hcsz@05fCJw7^-=xKhCWZG&vqso`iznVUc*6+|oSpaV z8+lk}n-1}hc0a@Bjb6{RYZp%(oi%aMKIJ~Rl4vF_9%a`LN;CHGzu)=rD4)5TWgXhM z@A^@G_cLmr|3k}xskUn_(OiofrKiZAd@U@-;4R>8Oez!RC&&&wyy4Od@diVttg={! zAfyYR9Q*~~;S7aT0PAHP(5K+Iu}D+~8wq}?1)L$>BzaP_9z;SzA|x{V0<R#!f%mXv zFy|yEc)N=$9XUo*Qlbth%17X%nkchz8RptWbuNFRLmB6tp5JwDoGo`!kvT0Vm|y0~ zl=PW-O<qIY(&d}V;_MBneqC)r{#n&c?tlfsX7m{Vk?BoYB@>E=(t*otbd2{^yK?k- z2D3J~sb}8oi581<($qFqo@5AYPB-clUwLJr(x2%y#)H<#WN~IspdOhMu9`5at2u8@ zRcV7!O3ukCt~$3XwV<w|FkY5*Mw8Q5?R0gV-4Z7&@%Gkoef9-i_e}{-(h?XH+5dFu z9e2;KOR!{P?bRC3Eo2EgQ<^uw(f23r<s)ZZKeySQ!cyJi<pppdhS}Ga>BA7Eae`Q` zFX5Zy0=4i{%?<b}RW2v^5C|w(Q2jxI#b86Cdvsq2@L&wHDMwFLHN_%9N2db;k9aLe zU}-c}LvfGOu+S40AX{63IiK#WhCesH7>x9K@|x5Wx~5n{a&c?Gl7=;2Xa|6>sb<PX zX({rHc1(DdZJIRw!VPz=-8e&<v1#pH>o1rwX%l-^nvpZur0-s8E4b~p0`Ja3ePU7J zk<q^&Ei6okE7<8PxNY}le@l63wm;1qpPVGe+pGmSwvAWb$6AK2+-S=wu-f9~q~v&S znm@a=yv1Ko+~Mw>-Ph~xC}tfGJJ+2hrDxhx*QG2k(tehh82BJCd+L@8rcK|lVfyq9 z^h<wRrp^w0z>|YbZ6zJG)t$|ahAI4S{A&JcQI%9v2*G_7vrRKJjPI<jxgr~xEY?ll z?kb)PG(AYNa{WN2Vi~wzk#s3Q+D|TaZJ)fZWm-YD*5`|l_xZHXusiFN#adYBnY383 ztt8We#&9BZVh3n%FSuWdveT~lG2#V0u6Y*@EuCy3`w6=TL5vUK3wo-`wN;ihk4~t6 zv{j(X0n)knV3P<Cj)(9;0i9U90mcBoL|*mkHe1#L{e$@fLk5`6^y<<oz{&~mN{*~n zumNIV1Sr0h)uLi%tK9@KOfR#h)su7&9YwmuO)d;7@{k4ym{>fvx)Rx0EvXiiD{p}3 zAcc!2DH&>L(rN(PN<3T;he5zPth8W=y1<(d<QP-D0zgMfHw?LtBB@wagD+S$kK3Y$ zD2Q=bSpdG7v|g-2#N84?HwGN?P1ciCPNF!G8eIh#9{i7R#nxg3_@$*QEgOA7C&9NM zv#jifwz(cozfeAdhe9RA+pQ&3PxLK~e=B0C64zDf@l#vq0o7GOL}Cz61SgMpFEOnX zZNn;9ZuL~jwY~ao_F_p%aeSg7F7$z^qQaD@+kDmyFE7oQwd$I7*ZNCu*t#m~?0Z+% z#m}ALh<8n1yuIU`U({7zF=g2UWnH&jc~M{RczaTMN)mwfN!lErK|$&S+0s~%VKy?8 zK3SWZ;&CV}4*7xdZLYvzDSWHr;b9(UGgy%tCC!v!O~^<$HM<j%<Rtfy!kmiYQXWtD z6<O0WGRuonCEN?2E(emaB0V8k2`OQ%)1PQfN|w?Pswdg*0N4aCknFkHIGvm<8FYzS z#hBu?13{$6@YU!2OYtL8fnE<pEmDETOL9V$(G=&<Y5`A%BYUzL6fjPb98O!3-kGQT zN<s{q40paRB?T!Aa^T>uPu`JOktD-x2y=vDFl5OR&5T?0N=inp-j*&K&0y_h1UHha z{8cQ$lxw$VvPYx@Z>Fz6t2Mi_jm1V8wSlX>t$Gt)H!Yyd(M#9Cp{i|yGBM4btm{rm zsKGZdFvIM@r?ymC3OlQqd&-JZZPnT-=HS{}Z@aN<{N+DdGqY@VSM|8%y{?47%(d4Y zNU<ctC0^FYX$^6}Gi%d<*J8=KESEVGandDyoGu~RB55<xaXO>RekJ;ou?z%L(&^*u z*pJg0;SrabEWvS3yE@U3l{!(D`3RyVu)8y}?FGdd4&=DCO7VcG>19OBvZUYbvZtis zt#NRmk55j)3L+t>5;MAN2AoE`1PRv^yjE7<IxO1_aAd=KnQTMg0Ik7PBHNVvk}Zf% zD=CNxs0BvHZT_WV*Cl5fJQ=xumS|2*@@DwY*6LCXvixhR&U_y-$jXUuZkE_DGbG)F z6kDba>sL~;lA3C7j!*VvnBk82Q;2`w%+xd~JKq$S%(PZ1p+?s0Z0-_-D<c~eY{J0E zxm0a~8)+4ZH5AgUE}eFbf_D^p<tjf}#-IXffb|mmA`}fMAXpfA4zJz&`R98j^MnO3 zgMCt-msieSq%+}ZbVm9$&aj+m=Ng&pEG~BPf^p*{&rctJ{HN@V&so>!3$`xk>G_;L zs_t-S_1<%eUEmR1B@-W=cwk$2Xd3|uP+zWM+YFj(aO@llmMKtZB%Q*#n-5t>UyLtG zF;KEqq$olENJ#~f0vd(2uu7<MK|*jyD<Y^6=pzadB_b|`Y#sm>(YmSLMwE(RZO{l- z32Qk@$>}O^jG$MsfHI{g&yRJYD=}q4^~_0Avspvw{OK#ovvUp3yaabjx*nn7EgiL9 zgndZW8S18`#3wr1D>gl6jL)wq&y2Gc&dh6`Y{_-ycC?h{>CO7gY^5^a-OQwUlRaIV zg9WX*fmEYTzUp4aYMbL^q<u0@INxs%E{czjOS9T3w#M|+s)W@~VBGlGY+Me)CmZaI zv#*}ZYI4hr>Av)~ndcNGcnx-g)si$pD`%V1;xf&p<CBWh>S}^U|FQ+azHv2~6LPAp zi3Jl4KYsa**J?a0-fA|sQ~|G65^R-N+LWg9js3UI>~p0W`x}e=c28oK#g>?#`exTn zFucpjN%6&LIRp_Rn_|RnK^`b#Y+)Et_}=K?iz<n5Qq`=`C3Y``6^E}2{0P~-<W0z* zYb*?ZSqSez?27;ctWm*nW8vspDhUrly4+Z(TqS;ckvA1NZ;tB!7ji}b{MAh8de)&1 z02d=*5j1K#Zy*I4aSR2>$XMYp29R~09AaqfR}~{-K8-AjS3_$tu3~Z3VByJT2-5EN z3MW&YTkFSFti?3yfZ0VjIQXsTpDH+ZEU;z8^b55{q=S$zoDsj|0$1poKwWcDox`Xk z#oPCO#xk$^JzEv#**|@=AU~z&`X@eIcMpI5lN^1#-sr0AYuNsej^C8}na^T7r+#wy zru=c^^6|%h(KMy0X-fEQeQ~WmW!J#sD-7|~g*tss!_*7fhF*~=dR5KFC6BC~4tg=; zd}ZH2@AH-Cdu!&+*<5<rmv_$J&tDA99QUWKn?L*AFD`7^9^UO)Id6GStM`%a37)y2 z&lQc*A9|{ilB#G^G*DABQ1gh>XLPc*L0MihAv@WdlhxQ(<zv^;_tgnq3E99ZkmqAI zbS3ABTs6Xijj4u?2E+t_=7?7^RGFk<#up}@!eq8KAq0b9FX9=93<~QL1t5i36LUIP zfOL4M5(7g<7a~Ev(tref4N`Z3F9vht1D_HwND#iP`ZtS;m2@MbwI~Q-vu2tjf5}4( z>knTPI-FNup9i$-Zj&X`aBQKhojaJIq$F9w8+dzSVrFG9^M+lSRmr}J#8<TyK878g zbOrx)cV0bvNt%)F&Ei${c~jWro940}kEi1f6L(7~ugL#;^2OggZAeGANm-U9i@$n` z8IA1Lx;**gygGKPF_nMKZ;6+z%qAhnur7SA2@b0z{8NUgBR*>y-x;6G9`jXH_?}1t z-k3j8pU1zwAdZb29XD(6LjG-D9e@13H{Q7Y!AEX0=V`a_4=zKv1Tm)~@g8BtB9~W) zz)-=F!LeGzNV2Aq*Am%v5iSHllK}e_V3+{-I(<NNx9$VCJM^`yw9FMc>UK*RuOzUd zKudOI?%G_3*;D$2At^YaJKLu#nOpYTWOJ}1@6gZPC8ciZS=!=8muzsCmbj(N-{-VU zF!D6}&LA9Ar_at{e|sXYtI}@F_ATu2rM?*GF0&eNuRAhU)R>HMnk0;tCSV;Wp#}6I z!I}Xm1HA;;GvO*p-?{?yn1mGwqoBaxsWEswFh_t*RHH3a;I=9|^T_yDA-@qQ?(QxQ z$i>Gs(pj^XH02cpatk&yX>f7*{MMNlRC>GXig37n!Ti<in>CAHy|{b9g|lARGAy|- zdgemuHD~$W3Yi^;lRZ3eW@TF))=YQ4Qy#xKtG%+Z+h=y#Ym4%w-m`jG?$o8>cb;0v zKa%po@6ex^2Z-lFIhyqvzleZG$g445bmH=b9EZT%;LkC3X&#`ZG=9siQInfu)QNP* zrypxqQM8t`+8!hV_m($%`%71qfZ)9pEO3@HQ{l>j(G!>d_VUYrD<vM|dk`#iq1<=s zv9fi+PZlir2|t9ptSf%Dz*!Tap{suEUc27^N0&SFK0V;_M)m$<{J<%PB8G(e?I>pw z<-*9pmm_5c{>O*Ql<@7MEJ9?G>tHOA#9uhFrv~j1ihAWJhwX+#oT4JMhfvs>Sd<|w znbF(<YL=!P(D4!xD`!$9Khsh~_PhX+*mlj;nj1BDXztNyOu~^QJq^Gs>f}mO^fz)o z>ZubgC*0q0O^RHP9!IZ_m5)3p>JAz`A3au1yB>}47mY>`J&u-F^HIMd?3}9gMLi?M z9>f+>_fILL79CN~X-_$dJVsWp9apdEPC1HP<7!y!Ux^|*@`LLf45>e1^`!QcqsTR# zdhOJbk=xZvk-OD{SHyGGeRV6TPmMi=`4Ttw&CSqMsad%wCs(Hi@rzF~4Z=GLpLfhj zSA1(Y>z?*&jC@tyX`|r4Hf^&omH{}1nn|kNT2`xsP%G34kt6Yi)Q(fPS81EK9Y6`c zZDbhFK!$Ts{Pb-k%=jzfVx+Oq!y(?_pW^y-G>a$_izXV&13X7G(Sg;hC2ke5JtF>v z0SMkC?^YAD!k`}-BOtH?;FP&q3X9~Oq2ZKPcl(Uun|iPOv}lNVe&la-R2o>n$L($n z&B&=Ty0hyIHLeXaMvL4~NtLqQ&H!@c{Poh5x$_GR59Mj&uUWS2nx%Z3+n$_#MdzG* zF5y4fcuzURzs&HX2;7@(tEt<N?O7#BDJ^dPz(XnZ9)1U*vY2@xUs_z~oKq~NZbG93 z|E^+_Dkx7aBOr<lhFSq91sz5KLoC5`Vhe;m%Zwc_xG-oM>KU0VOeh)!n<@!qZ54AD z?`N$aIi<F;1YT8=ntkrEd-TaTKYQ7Jeo#Hneiu1kBff}ktteY;5@l1$TFd*+QOmZL zC9;=`)bsQVoM){cJEf313cxpx^3`!kh<#uOS5uEj%FED#2-U_I3?h0mk(R0oj7YK^ zf?E_&PQjn3OsrsXq5w(;@(&*c=w#?)k#~-;CBhQq6F6ct7Peok(fH_k{p%$J!5&nR z*n@RN(okLL@xBs&>$h$Gl5@%O92THSsacIDe&m+F7Ni>8Tw^TqCdJ?U*FvMwEoo8< zO{S#ykzbjsP5h!+i3_H`)0OM*dS}*I@iTR^{NuvFkN|D;@f5f~s>w);C&mvY`A5&1 zR9ib~%~akjjMpf|Qw73O`YpdDKR1Ur8ze`58e5i^o5O|;QgTW`+80oJ?ws@Ow6@gl z{QU0JwrStaL7u8_fURNZL#+H5ykuRqq$Nm6P|f%QfN-GS(B>*lH5S2Y?F#F8b!=hf zgar?O&0j{K&+}fdnw_%HSXsk{%9go)_7>}0^qV|en$7?bWns$fs@M5>DE0E!4=<Qd z$rjeFu<l9A%=^tE*7@e0?j?xDD#o9>UKvER?uhUjWj~pp_)$~<;vgzOXlT-3Rg`<H zC~atfVk|}1BKi8P>ck#M^#kR14^B(1$Q*Xq;!5N4?ILT8%ceaVElJB8zbMY`7|twD zoi@0)Y`~J7(34b^^^na)scIgx=Yzfxjf?OK27%RS!w6ffS+CiKo;qy_r99^_6=DNT zE~{`sXo6BbI<E2<w0R`Dla-n@gOTPT|D)=&AQ)%ANB$4Tz)J(-p%#X&Sts`>UP60~ zzK^Y3mN6^iiQ0@Q8E>U%)BG7MZV!7O7#e%%D42=H-p~_KAx$#jmN?w9){>KBsXEg} z@t(Y>eQrx{*hcS?KJDFtC`exZd3$y?|JGETmjV8b{gGbL7<x#AnHhYGO3FQet>vT# z344YOzt@>wneG%De$UDC!Ds<6DnxffC$i(Zw7(UIXW%W&G~X&*W$1AF`o(}ix@7b* zbOOS;87lT5)K`GB0@fn9H|kxYPv(o+`t%eS1gqKqPFZO7C3eg%N=)PXuamE~#id!s z+m7{$Uuhz%UBNGcZsTfJe+6-Fs(`w0K>HAXe@0cy=FV#h3N2mvJ>hS|!L;!<TO9Bj z;umT2zF`+_Wm35852BMB**w_)ko)a3{XW<WG7yujoz_IHpdTWoB4`l}a<mGKU@AtN z{EkU#5<`QSO<;DwxL6?_K!QbvGPIUj&Z^860jbfy+RyiRwcX3TKf$W?6YuhFt(WhS z;6yKJ0?mkP%HMs3R!y!RG5;$;mfGHEWSZs-HzK)Y@!PX979n0!Gt;CR@0|8A6hT9Q z!FFxnO6Avd<LKlo1KRfG0Y0R24R#i`cRKiccvAs(7<osyxMrwiF@m=s+_k%Oamf$@ z5{Ezg8NT1iwp(E{oJ3xp@JSbqh%nQlDTGah4>qR64{SPHcv`#J!oW&ta-`)cj@Xu` zptAp_<;K)Ik*9}88a~=V4Obqch7ShVP(GLl(eQUg!@JJda98+KG#vTIPZU9}_%*({ z7aRk{J~`u87ZS1%GcZui7}-&U%9-{ht7o}~|JtQY9&m4*c+SL)?t#gQi~m|$e_`3g ziDhELmeMZ2nYPkw+J^VhR&Jwh=m56+;b6bScTS7eyHydTM{nNh)wT@y_$|7AJQn}B zJM!x}^_b@7$u?TS@s(i3g;aQ^uj`6RQvY=m+2qsO$0mE1N;m(Y7HY5Nx2O#qy@i^s zETIOT<6}z#r?!WGPy1->s{R&M@DnZ2l0Ytmxc=Q~i$+_>nvZWN<Pl1PrX%eXtlwAx zgi#g~oJ{y`xkAXv6g7xe2U<p@jPISmN>NZSyTin;2Ai!2cZ3K^!%f|;+|FQjrr36~ z6_*`i-b1sW&sknjV07}M-#c{&F?FS9d@T_doX$gWcoLr1Y=N1y5n1?>#Fm$O9$$CO zp+nc~T+ff=X*q*rM2qc*N?>b%Kh%&j)puv{zv~Apf?tacz=RhaqCdSKK+k@$GVnb! zTKV5oIwB*|5sg7}Oi%1sacOKv*tJLV&oq}qroi~`_C!Exi|LBjJWs6K_3Ep;qCK&^ zz=vidj>I<+-vtY1b|JJO4dkaq#MyiraW+?(5!;hi9?*AW$s1efeFWDnU|Fzni5&oY zX;@($utJ%JQN%86uTS~9%<Su%XEO0e(oB7QK2zB@$#=E2Nps+2v1z|&!T!zs-Lf_| zK>i9FgsWnmYza4b`rZ6?cU!-Q8Kjk-{)swQt}Fb@4MlxEZ&7h^k=NH(v_YEU3cq*P zUF@B*w*8wYPnh%LP4`0*7+4Qah7CtHU>p7;9^_#Ip8i%h|0kZ))=zB*mR)l_VgXHs z3`7z=T8;Vx{jGID0uY#a*h;b77E4hCeH5e2R=t1gt?%E8WPIy-Ixl|cxrZ+9#83a| z+J1G9PRKc;3|o$Z__uLq%(a+%;IA(VsQFWN>G$Yn;48F3Pka_|#y{3v3T~`I(zp~X zWg3@LWA@;{Ne5an{76`V13knvVIqLVF^hQ#9tH(4X{b;L8tP&eKz<M=>)m>&kpaCz zUPyqs8l_^HjFsewFNU#JK*hj#>T4Hw^AvtDFAaYs8Q5zG5c<#V#hrW-{{^4J3jtTS z?v|Yg-hAz`?A4dtu>E}JW3RpW<j$Mf1a=!gUqLv!yvD)S&ii)WvW+*4n_HHRNSbne zpZG;;peg&h09@d;sE-tvQ`T26>*ToX^1h91U+1`irXnjWXIr-2!WOd`6-9IB7MHMg z{wsbxLq*<TuSrIJJ%5xrSp_dbUC!a9h8K3-{N{nj-;kQ-7fJbNwMcI~{^Xmt?0g}S zmCK8)Rdc4#n_QoA-Yq+~-M}x2D{Y+G+U`riZ+F|IfHZ-vbX|F+Yt<`Bxf3ULH<rew z_}W|X8-DV<r1J68rp=k`PP}pJ&Rfb0=J%GA&7K>pV>4i#D8gFUCTM9i0HCuF`FBlT z=B<us5Yf#+Xb@d+`v^cmSZ%E^Gi050;iIW`bUmgN$OvHZ=JE;z-Y0!O9m!n?{(mWR z+<Pzom|w_y@b~e(_c8|nqFrm2Z2!fDUP!Z&<?8#np1-g3dTTc<zB)Vql9}uQ6n%;R zeA=w#`z}n$8pm(03>pmW)e9;gP;^E^W>TtN4;yT6`LrVKvzL6tf6MRXzy0WvOFm+C zte4e&G}<J8YQAmx1^4LX#5m<AyG9?C9=rT<e&6=(Y*x4jV1ao4Quej;H{7fIjs2#o zeq7$$>_SP>C#0k$6}CN!i3I=K(G$anljenf4qhS}q|Ss@1DH(3syKa(T9Jn!8?Y6` zAt0?Vctx}saiqK$skG8S6osuLr4T9JEOw+3=xVMi$w}tn@E#sc&MB#C?h3f8?G{sd z_%diDHX-6+-SsofHO1zH#@!QcJ%muE@ABh^Zk@2ZF~Mxjs5Z}5o-iQtlsT<q>$Sh! z-nwQ@>-Jw>yR`!+45{JPpZ~nOCry_fv^{u7%gX+$s{WNNKfB+CKGU10kqmd@S@1p{ z_?Hug3Qh3|Drhwe+`k^g4&n-h8p8TWc}}bhJUSamoH0)Nk;5K0Wkbp`cgwt~)9SoE z4eLUS?tamm<3k?cv=+v0^xS>9eCzSw^=^@W*U*=`Pe0HR{vU(8rhe-5C6&#K4b!CU z=PTh$b&GrRx8J@nya~=#uyw$E-!A_J+Up$XcqzxyB1jSyc2;5bBr^I3s3y=*AOXPE znSr-Kiii?uY!rB;DxQERRg5xHfdnitv|!QpU@+1!Eyf)4SOO2;am)VF{icP#SZ>*? zbn0!BCrlrg%UGbPb4pX1`O$}zWS=`XD~&O4WrfKk|5Py*y6oP%i4*Hgru{D{DY?F4 zpbn%@5JM(GR<e_kuPB)3X3nA#7$)R*`9$_)7%%02VMY8+=?%${Sv`5f<c<qFsxnfT z^hWqkQlc>@Q1314^ut!ZT#9q$cNYa`mU&VT3I9!PoY_`nPp~w$O_SoSNmx_{FqD$L zj;ug3FkMh*kw2^&KRFIDbe-_}A&QO=$XW=iQK}w<;ur%_vMk>J_n$O}n`PWayC*b1 z`TPFGI!(B_nRev0L-Z5Y3~_ORibz9hQ5x%7yi2taQ$7>Y4#OK>ERrcQx?eiYW^4xT zE*d|PVO|it1xQF`^WOVYizjWG^7Q@RZ{hvsLPv9PadWYB(bhjK4K90dC4XAJ_<>8@ zowHktq@~j9XRyAGjL40l=j7eR%_Swxq2PrFR&?#$)De1Ct@j$lklKiNHExWfI<gcX zMNEv2A``X4RD?JKIY#5u8G%GMitrD#RAOm_U5w;@u@A?cv3>o4(FbMW*gpbgL~U7N zt?n`Z#B@Jj#J@Q}u=9~-IH$tV7MYHRY)kw$Nh9_(He1Yj?PL64G&F$J%pNi}o#*ix z*|9`_*Tm3Q2h>MhFC1|ByRkn|;Ya=D4fy`_O*9$oWIh?tnK<SI(g0=-lM`8h@E47F zd4_y0(lZE9`5}Mq!~KXcSg0cC*(*ZDhk&bN8D(PAM#`^Hc?7l$_cNG})w^aw-s&Xx z;27P|M9pT57}BPamr&$?ME-?_PW?Yf*2-$&kJSG`X0Su9QzT+yl?N(H{0~Mn0^tUc zs*(cfCOiz5EG2;Jehp!?HCDps1%TA`HX+*z2(N}EB-pE0R@XLFRfP^$6;G<gfjt2} zuQ+c*vJH2xy)dt^P;1u4`{L!CcyD~=_}c38YN!nVTb$l#wNC~DsQSylE$t5I5|a!` z#aCYayR*vn-8-G%v)Ng21vB2fi9dVatoEB((w(emBSL9R?wz5q=CBJ73*uob#KRI3 z>@_Q@YsUvoUOC5Wq6?J;DM*cxWYPm-DJoQR9u<i9hAIr1H4B#aDM`xv>`z#oUbre9 zDNy3F7O#0^!Q?L<DPe4NRoTP*-3^^`cW&_Ob*&gdNvS4AZj7Suqqq*JG`@rDAY*Q% z?+dUrWy#dP7Q)TzfCvM<gzgldqlvt?5sDEIHuZl3veEz5DzHqps&jew?TCOC4gYgH zOHeKXXeUuIA>5)-8A{bB#wSQ_U+=(@tUSlE{`?l$vJ!MD`qUwrtjGz8NwOp<mE~JD zzh{1T^X7_5-SpeX;2+<LctWey7lqd4r&)6QyR!$f6+@bAghANTG^uCq&%36ZEta^d zz|=jxJ(V*&5;H1khKz)o_TD-9=Cu4f2No6<N~|D%U_hNaBDRMr1JA(NOsx=Voyb;D z2q-QE5Jy$^0l7!IW>8ovm`XmB5n=#E-uLeh4`V8juDiKsb&auRbx#PMOk#(k=My=Q z1c3;P?RWQeCVrSCN%~teHGFkX4Kg<JokC%}x(5%MDy^BihB@Ij6n<Rz>Qf9pK_;TV z)YcPou(n?b%3TE62TKPUfSO}fh)BT9l?E~qB%`kum}yn{2CkYklok=2MQt8N0(_t% zBE+pLmAS|{KU38gh9*AAk3AV&d8^`O_rj|c?y0b!!ZCqDO-Fzw`-N#$*}C#pN?#xT z68g5SPd>Tz)|Ellm{XX8(ui^`?h>2PdxRxbjAg=?#H9jXLXiMz<sm_w)P$6?qXMQH z%DtrKG}3`t0e}ktq<|i(ewad-K5hM_mX9pYuOD@;-){LI?8wJ5`Bsy=%`0W-?T&V9 zZFd@9<n3hU>0Q--YkK3(_PH&K*dguFyVi{spa1ha*C}tV`}xQ<PWC}oW|>V&o9uL& z&DEVI_MCYgU$ddRaZAIq|Egdtx0OR_gbJe1mm+b@MZl%QQ(TA8q#~L#RDf7)Se5o& zXx>IYQS8vYEh-t+xcq*XR#T$wgK95)G<;O3_M{<WBUFCUP{tS?4Qt3_N)r$N60pyt zJr$3`Y}C=B7F9y&N<(?_J7xK4=7I82jkmDStJRbbU=EDr#ANAJM)?JNgSo#P1tm?& zgzoVvk|r&`th|5ZV?n_?Y282ZAjVD*W2a3s4f5J@aA9~8l-{TSIVHg=4WJGb`NG?o zxP1{AiDWbvhS2x@3PTibQFY~z-_DeI;tSpCfgL`7L1D+Yk9QOn_<cL{Pq&pl1bLU= z?kO4DlzJXQ3ex8h#smM@JE#6?gF6Q7-i(ay`8_3Gew^vOB|Y=IGcvsPfgPjoBLo71 z{~%(}cejw*rRT`vcH~SOk^!Q+?rIIhCPaY{!KGa)JwRj<K^O3=w^mrJRlwJRa!}vV zqNIL6NCwE9tJ7OfRYs|4b;y0TqWofM@slj>N&YQOE2Jzx`D<MJRDDVDgpwX9<rIau zGVZGR19y<W>X%>A_Kqt*-6roo{@{4%!<~=Pq{}IA4$_~o@A{(oOM*SF;$qjf+qd&` zgjPIFr-63e7B`y7R+l8N0_q<xS!KR6v~ycR!bOe;k6~1UM?X=Av9V8R7Ai%Cm=-}> zAf^kTpMa8J#m8DgVGtC7H-QGih%ax{S}H32W{(8`6A+mS84V4d-#qK-8{XNx;oQ|P zTzdZ<-NoNMA@8H$4Ew`h9@(+uNdFG)w*DPQj_l}HemcG*)tV9)$j(B-DonO)<E)C& zE5>(z=OmL~WxiKm<?p?U+a><R4sJm>m;c3M&?IO{PPVBK+V3i8NLw)KiDLfSR$&Bt zEU6gE9)!k*gMHAGmaZ}S1v?p0D2W&WG3v%*_Me-}-r3QQs%f{OvS=sY@hX4+)mIrz zHwD@C*@Y=N1qC_1y|hiqaR2w6kb$R3&+QlpH+-=}>c_Lg|73H%`ilSJD``qL5=D#@ zG!)?9!@6Ab39TP04KRQT1Sq}$QGl3*k-p&A`UgNwWL0#zah|MWbS#z*F`st~9N#&x zV+RvqJ)|ijxW|Q_46Tv&M*fi@e@rkf=BHE(G<ieQQ5q3<26lvhiJ4E6e{+ck(_flW z;d_{pJ3Q=zH1eH#uKoe_RA~_yoYQ^Ti3_3t*w8)wH_q&_4V2HO2FbOg?h9Qpw)bKN zzr1i<VUcgayu#V~9&37fPHA4RY|=TZEDi)ll<SLdxzu|WV|}>`<tcU~)hI2SkR3GS zWEDA2?GT<9?GVu~?CWf#Ned=eY6j1)wq;5g27@6p#Vmo?=%jdCJ#c-BWJ#!^QsoKO z`g8lMZD^PwDcO>2GV8PJgMio5+QmQD4QWS2q$kR15;1E<SD1(mPp}C<7h(}6b^?pq zyk1MzJt5*%c;5+)w3qfm5AxBhWn&lEUS!(oqYLshrp?lh)D0FM>lp0fL$ujcm`=xC zgB=W^ygJw=&_xK@Q^hx&L?uCz5X-;#UIOL-&j;kwM0g*K*9ib~)NUJ<LZin~{b!tp z?Onq!MCxq4w`}8C`L98!`TL!*xg|z4Vhv0e;t$d}(J#9}97$^v&)u<RYKqM>Yjw@Q zH45Ff<+ayOrljDT)N+x#G~!6O&qFLCxjkwxw~A=-r_UypD?>O!P)hJPI)vF#qbM+R z#+bES8Wctb^8V+CCoDh(Pc@H+hTytC2#hMF9au1dJJkRkL+Db$pVWeO-$!!1$_-*! z!g@`7;n>s`rfvj(IC+LdH2UDdr5&svp?RKDf0uUfJ35wzv62PoG#yS}#`vG<tTNKR zY*~AKJ#G2z>VA@rZ-^eTfg~N<v8<i+Y48Qs0^jO@G)pu_7#1m(Gx(Z3rVg`I@H`Y) z!!-nrHVmbX5Jr?3azlKGewik8x80E4EZ-w_jt=V97PNOcLU)I&#0Tt@ekad!bha0U zekH-CE5<s-CHXPEQA6>Jh!F-{AK|H>M2YTG1Tk=tH!Tyw?j7TsLYnAaMXnaNcQ^6F zqle)e4zb@XP2#@~k)yacIG;K5Ta(z3;Nj?9=R;bDtj-WV2n~Z7LFb}GVn(D0aKa}M zdPE885_gIO?n*bbhmBC|Ij(z;|3f4T+xh_uvgs`N!PZdc=Ln%432ig)R=J!XeV;2{ z3UD{F2gRyTERwn;oId}Sw?BVtcVFM`w?2RS78-+*xD1q27ZxKyso`i?4Gsn_l4J2= zn9dnM<6}n!dKj^-A8FjvC_Uo09Y-`j9ZrN_I-kFNemE{Rgp7jgbHl%@sF14W+WdS~ zc$$!S9^^%5pDlY&#*R_PqYiN>{|-Hk#w-GcX@Fn?`(EXRJdZ^L)^+sN)AP<@hF33R zas8#G{VeXXSDE3QdEuhspA@sVW`1&!^$phKvCg84v#cKe>>JjLKA9OltAI>mz{!mA zRdH?Te=q5P$oCJ7IYZu2DFAy8ytd33TVThKbE=V*rz_V&vTX8JCnlz5^0Uv;ImS(P zhG8RiO&(|04e+xwQxg+wywESO)P{~GU4Hn>nM$eK-EQNH!cTfz3l;b#@h^?K{8lgU z3A=6WZg;6NQv%x2kFoww-j5iW=YyNCMBNA|ASy)lfky=D1L>RcO^NDMnUU{R3yd1V z99p$9Fik#xKv8Onk&j1O45*7KkGCvOC@T$y-w*#KSX!2_oVVne0GyE)GgDIM8`g59 zyXy7CO=EWz7qPpi#d%mS_rw2mt-}`nU7zB%)#dVu;cM!=ZU?xF_Z@C;owSlYnOm3P zRr;hV8`8z}6vs{E``zW-eK;fIF#Dj?%VtiDD;DE=t)6h{dU)$;&?2F00@=W5j#|(t z0fsV@_fi}MQWJ$Ivz5D8+%s$1%8!3p-nQl$_(rWgsX^jtYo6iX?jpu}7mI%esmk%m zh;E8lrG$trfzEv@vY4-e{pjj38aBq1P^h_BoJ~ZCjh^z5Ju`YhQtl7E4qTdGYd{bM ziAF>vy!+&-*lD1~yA+XKwZk+6gs@K&N9<tppHGht5k5lDIcx=?QxBD+V++FIaP)cp z=u2>d{eZJWr^ImT44ynh|C0__?f?HCm#jxxJ!y#kLSh>pQsG{tF}>lxz$H^mo#;0= zgKm=U*#qiXfbWl$>$If_ab!|mW(cHEfQ#&a(ce?fLvW!k6IEcp<9pb`!)&3nkak8i z*lVUehP_d7?r`+tsjKS=4LO3Vf3f>aK&+!zXxu`k_}(@|*WIx(i%Nf|=G21Nv4ncz zLr@?b)b%@iv4cT-TIHgZ#BK0T)02N1bQ4jp{*$(BtL|ODKO|B_Xeg2@+bi!yz6j+H z$nSvDehHU4e0-jKx6h|OOH0qPlU72kXJi{k%z*flk4#Tf-sSVyUV0qw<MTue*1LJ1 z`gnFXj+G2P4<~5tx|`1v(N_1eyVW<LKnJwRuu+K^VzhqJw?D)BDOe@sBT+T>n4UB< z!9>yI{P)Z0La5}Jh9dBs&|vq3*kzi3yRLpi#TgZkxl@%zRQ`%q*Jcq1S)~vFwSl|H z!4@VovRxAaQ8Po1@m)b#B_*mp2NqVLaEt=3RgtNd+lvbA#l!Zq>}*rF5S_F;2DAo} zl}5fA*zwR)+m)M1gc@CX*{7EvAD$Ej{J5=O8S!L<UbK2xpV!;Se0h1{XFOK9Hp5fj zzhg&#=tbH}ABJAs_6%~|UGnLraxEmRE}>b$SdRS$o-=;~ZHzqlZ~J_7j|h0wOxu6g z&mHJs{1flLMn8l&{E4(~5{pLO9i&x(h+|1JrNit&xKgtBVeJ$_gy8MqRAmE^FidGy zS;6qr7i?ek6nu5Fnf9qw+b@6*q5It2J0HJ^pWwUsCj6ba>G3;r2U`=gZ$$IefB^Gl z=kQPWT+K(HT19tX{WE48a1Z9?Cb+lrq4%B_x7`Fi{-WpKV?*2B2|eec--vdq@iP-K zdR62Vt@<?gMFV2@@%6`Ab;@}xrfN(<s6T%uJ_%nbevYUrukcS|k95wqvg12x3DvDG z;~%$`jeJE1T0<FM8JbSJ@&nlNkJ`$@kJ2Gx*YcHP$}W{3*YCu-K2LKFQ3~LA2^9lb zSh$!$e+36|LUiiEnNjQ<e?UN}M36Vw4aiA~J_A9j@GWu}cF1M}=9+>dr(1;qoOU!Y zxsk3!e@TMDa=%`Gzr~P{k!wOO_$u39r!Oei1?;o$oo&z6l`ok7S6h{-!e{o{PZqWL z%)SaLI%{6JF4sQ2ccv&iZ&swN&o)ZDI2qIAcWgoP?R5o(b+?;?wx$kOO{>KiKdCYB zi6fxE6+74dNuY63T#BW!$vL5&%8tt~5M|q1T}_S1!8EDa|FJz+F`%sDV}Em`Y-?M% zFY*qe`Ou9;V!=_)=^!GnOd<Us)4Skz=W_e3YA#5aPF0nyi17;3f{cD5UOR>Xj~NUq z7+xLjvHQ}#E~&LEA(dZdlqOtTJ?y0E<UFt~1P5Prf4KTu=Rgg+pyr&=AVhEQ520bz zOu(8?{nh?_%^Jh}_c7T<;d^mln=*{u_e+979vp2Z{zDl)p$QEW8zVQ<_6+-ItQhkY z2Oj1q;d%DoN4ZT`gT4Rf(6;jaVrg9&BD}|^eK)4<?gXZZ#<UInhICm(zoI#ZLBF&_ ze@UFB1w!y|s;mQ~+}NtD)j)I^4tA<0niKGwlAr}(gOU8ghx|4LycxRDHiDA6W@Jg` zH*^k;4ib|=V*#>OB(5UytrREOhyXNBIL;eYa-}hzVznjTU7`$-2ZV~)AJjJ^#y+K= z{QY0IZv88(B)RUd$6L>2#pU>7Y?jNIZk^)dLj?$yLFI90%rla|-<+$QOGAg7KeBea zT!wU}$*Q0}i^NnWx&_UPs*AuVrEa3}8&&h8BcUE3drXXOUw(j;^5%}sh*glderDK? z!?1nEhD7#A=H?D|LM2^@tW6~7$m~g@HBQfr_3F|38QvV_rAf2HjdW3jD~|0?E9_a6 z)jCx`@PvS<G99Xgj=4k(KU9?DM@&0mp@>H7SB996_zfPz>X3sH)FwCls`IVRUqRUu zWfOJN#qy&)8Vcej;$luRLhs20)E;@|vChuNZWtV*d$2i-Z&1^7+PB9%5X)1{_dne# z8vzzV5hKiu5K%A^pntQZ$#Z_dXDs0}G8!}Z3`eE!GvuTQc7EooJTx|RP7Vd#!8`fi zW9|9SVF^2bNYB@#r?abV0bfuJb_nf?4{D3p{-^PbHlYn;V;RA5{2E$qW5zTgB-NoJ z=pDo@OgOSNRw}<ZZBSFq{>c|clyT;0ZII~o@1w7?`_U$Le{7qykDM~9|HI6XkFlNU z>3lUBRT)th4ONOp5nWK_3`<la2bbtE8UU>q%#3DoEfu~iU@lcRF`0d=)bw6%`51Z+ z5-8$6wp`vj{0DDiYOS%+i&&9OM%wwqu=ePR*`d|WY`&8Q2wR=)ly}ZvaY7T;1f1u) ze12^FAQY$43gn6TkF)|VQ6exGJi1aVe;}clT3RLnZxbFaD=qsWR6^$VEWRguSvKF3 zWp~s_&%z{tX^1}jN<SVx6U8_{U_Fcq5IAIngaQu{lTMC`NJ7?V_d>m--O;ugan*nQ z&73*kAm!fV&3??xi}}NRKmPb7mmnO+R5p`My?7$=Zt#krl}J9?x@Gq4Z*bpZ-^`x9 z1ww;=NEGcx(QYPPa>>xd-y?u`71vaDL7j{`N{GX_RDS|IO}vKkoltn~^fXwD^_X~i ztx&pDRcrTS{@>o&`CRx|pA;9G*VxN*s`7G;SJ@kM{!UzZtMgeYZeI9UXnv#pDq~)5 zHT!Tb5)#n!kMVQ$9M4Y{v=Xtr4PcBIJi##q;9R82M)Y0@ED#PAU<}CVu*w7lqXjR0 zU1{b+t*_%9p$8p34!+FMQ{!Ma&HTsA%2qbith9!w@8mbVxTwPGiBHQN-YE_0e7B)A z?qhUcC%-r=i!aNn>vpi4XU+_^a&gm)ozLc`#d|#!i(X>OaFe<geudlw|AZIyO!NiJ zk;JS)<K~3o4HQUaPZ4EX#RJe6rFe>hK_M$Iz>D~}#AOplD88`BIZV?VNFKVv7MT{7 zl^2^@c3ynS2bA~(`hu6Wim$$T8GlKK0Ao+nIgA7`0+y9VZrw%W;C}wF`1VLonNTRV z<B_HX<-<Giy@w`VA--|5_{KCMwk+e>k^*~zdT@za_~~oZ!YEeBp4K7ij^rlug76Vj zWi_H_glua9-f#xEUgT*wRjYHloEG&cMSu$8+QcG5xiP<QKkA(<Ou%5|zaW`Sx0<%c z?%FXxmTuKD#`?vQ$m%M+axIy{LNAh$>wEY4zXZqsg}8%6yU``|K;@Q*JU6<8<T?3A zB>A;Xn_LMwkiXGU0nv`XA&yw9xRu`_N~ru%M3)Et2p}e`?M@v=gTRUl6J~VU5+7P2 zHA_RpSD(;C^w8jcqCR>``7mk0`GMhRkaZ*;3WG}CFeqb7eNQw))gAiiZE#eyraLhi z1nI@h@M1{nBdo3f>VY)|FS+)}^2=G(<$=caMSj4d{=98%cr!ntigntf&25g%;KYgM zoXKq=H{!TfRvISMI&zv-s=<bpVJwK9;@v9ECtN(OVS0!rD$xh4AV*C}Su(z>7}F%V z_$9xxo4>>lzq`xa&_FJt+YZE<jSg(1bK`5xyWZ87uX&FD^QH{Acp@?}!p05{$JmHo zA07sSjciP~mT?nHelF4<CoWaI+WCSy0mTWK3ec-aAbHF^Of|*pscE$G=ELNncbE-Z z8y#70<;&5yoM2|Wg<ZL&7ruM!%Cv;!WKt~){%yPV_u6@oJW10}m<>vmecF?8UOh{| zWDyCik;$KAx!qZgQ{Tp}tZr(m&Kz&C=ril<Gxd2BwB5;-IrRSI<b>D?@RXv9uerD= zO=q(;r<ZnimZc#Zt+3N>gzaesuq=7NBh5mc)S!C6kl@{5A@J4l@|cqXU?NU_Pc6^X zBHd?qA3S(>=6K9Y+hw=ic9~6=H{rqae)OaBP#cThHhsZ@={9}-_y<pK4!`$%TCJVE zjbFsu`9<5%Y}<ItYBrwXZ?$E7rH+5y2c5xtoX@q0rnWr${<AIWh41MA_S*ON7JVzB z<JME2F9YIblcuv82!wv1ZlD5>*y+aRAL$FfW1FFKAU|V;a1&`iBjr@3ca*dfORVb0 zh@4}HM<XVr6U7HTL*#tm)mHa#Y)SLTHK(7EhEJAQ&32ML6ufaH8|o0`LtxR=q@}cj z6HEoMs#|S2A=&tlz_T^e&7tPg&uBGcB~XsEnBigdx%5OJYh&JFiwLtqq^15OIXtRA zCQV#DC_8+i%#nGnvZ8?Os2wIIx$m@V<ON5)87+%7K;_CKry|mtP}wXLiY(f&l>&sv zV$R$<c2Rn%CO3Kzh3RRJ*5n=^Ch3dv6vM7Y4YN_6p4juT`wOXX<d%h0SiMEecf0Ow z?N`W`ni(B65iXIOmV!|apVd9mYy@N&M!ts6!9awYJK5L5QjO2DnhtU9^G+&oE_+)L zSHYitC2TNe4dp%{-$CeMg||JcGUDl#RU!)$mcW=-My>DKMeGEkdNm^;Iy^j{S+ayn zj+&m4$0Ie_6RpX@PDxeLY5y1=y@QXxgV#G)O^<{9W+`(mm9$y7KXgQzJ#|fIcww}f zdpg<WqWbvmz^uf?;ukqFSoA~2ruoC{5V<faT&c0RmB=}vLS{osOl*D1?uTrB;8T#_ zZ%EDD=C_4`>83A0dED^P)}E5uPm4JE0!#o^vO4Ue-#oJZ2^?x#^h-q+ATj~cs)Ot$ z1R2e9S;IGnZ??MfYP65g6glq7txaVQ@@c8HP;7|yiu^Q2Q28>Uad8oE3)OdO0P|mv z0i<N2T~!uVMX*?!5=}uSX=HTddLReZht@;kp&)aeg1M=})UkG|28qt#O+qS0bJusC z%fDd>8~6|#8oXg-s9DVA6Jn{S`~h^9!Yl+kC8sJF;~SlnxhOXl`J52nlyf@us&GX? z`O?g^MUCu>#zkp)tbiUUOgMwAKw76_&_C3!te-r&eoGWjub={aC<0Iy^P*0-2ABsA zI9`lgOl-9)XhsKIr@Ee_I_2r+L?++EzCN3@4{G!c-GuP3Cg@HcpUu8bZkXJ#;?N(o z3r1d2br}ymr2cAaJo)*d@scO}7c`gV&WSqhC3t@}-VdGw8P)40SGfi{RjkRBEQ@Fi zRVEW_K8qMI@C9kFfC2be&)#`~rL9`Fg@5sU_?PuSJ+_tA*Oy8EB;JuPl1%iwL8}b3 zp}_q=ZF>7h&vW7pr7j84Cw4r)gXbL)zf>RaUXl91cB4A6qdySn>y&<>n!E$u@bjf@ zZKZ$a=|VB1>SO-IK0i`MFT)!~m#S@6ZWjGq3%{uQ(8^BG+Njc6WQ-?G46!qC&x!5* zRFAI$tPOdD;X*d4m31O>7{y|Nt^f}8;0nvBEkK;?X1hD+eMi=d50OVz+i*lTg?*8k z;;8p-*x;>qq}aZ24}i%|v8yNS$(cBzbkH3SO<uNavgo|^C+q$47nyA>fp9}^OIzj_ z9uFPmO3wvaCgMKPrb;n({!N?6(<Wv_rMhGfL?B9a04`d1Ad@smv{C?TgfFhYQf-s8 zUAk1XiRaay99{K1?`1S<VoN}JUag5+9EBSKqL$xj4$l)t9)Ms&CFl&a{elhNarP9n zp&v~$IL1-$jHBN1^y8}&-B7VeQM-f&3AqGcKvIk;W`Asi;A(6c(tgI6M^5gKzS0>S zLmMN8Q6yakPHFEEbb3?`^21cVJ)|D}$2!Hn`%HDxqE2B|M}QoxsK<ynz^jjga*tI? z8;mIysZ?04#;95;DN?Eb5B;PE9sJ&YI;Beg|N7~_`F2#Nv93YSjP3uw)`>8|<@#am zBj8^ND@s22GgN+yW<Jq3070v?Q2`m$&U}V_6eB(>dRvfqw&(#pW1(P{Xd_*!U}eFY zE4F9Y53jGujoxwcR_!Av&qmFHL+YmwM}8&2XNg<+o|B~`cnEz4c=hPqsn=*sG17nR z=!|V;?0H#4*B5JkAR}gIN|-OQ7_=D2C-;!k2N%W$a7Sh)yV2R+?$kDj8O7DApU^~_ zp#I2H(i+XIG1HqH-j?eDOBk&?$r&+q$9hC7u$c3)bv#qu!J&|*M`$2pD)rx0ojuBz z<+Qiwu$wafL*@DNnVwu}GiuJCH#e&CY!r{|K9y^NJQEy~1_QnTk|$RC8X2L7g>@T9 z;<$Jc?i%X(9l;>$w~t3W4y>6f##pf!YMi0z&RT=h_l2j4{i)IOMJlGgs+U#eh;*!K zq~8<<BTFQGf>3ZHp{3u4{)-j8qDmh<;2Ji+2`PQb%d$4HF2_QL<V^D)|1=hhGO}ki z!c1w){kBn!l*xwka_?jJ`~Bf&8`+?sJ5kf_5Ck-=5&7$YX$$eSS{eFAd{#iwz{jc| zk+=pdqY;~koL-v6oP>=Gb~0yHX?lV=eAqG55k72Y*_F=dlyO$pTEfHG*-|s&0V0M3 z=}JkLnF@}Dd?#VQ6k1Xs(*TETV$fj<-2{|>0H#qu7@<v-OQa@5AcJIy;xHCf>jwKm zACVHZx`%YAa@M?}?Z>x|em-RL&ojr(XEixic`DfW+d4bz`id?+c4=|nR!UtM9;U7I z$9cHhex<QTs9EK#KDs+x2657t>EJKTPe|2ut6EvyjY~!I!nc^=TY%fKB|e9*1CPC$ zq8u^=#)9sH?9~Z`7KX0Vq|+?h_0qLdeCvEuu6=3OvO}yN-j4l;<kgG#=RCyUdSPL4 z@xm7XPD2>!MX#}eLx=e7=pW)=*9x9n51yMe^<Ib;-qWpldd(qz$Lp`N{^N(vV6bC9 z6Ym?*9AX3CZ<bTvCFBHw9fgGjmA4_-DA7nTPBvg4Bw=*}A1Pu~;KRtT^99HgzxI|t zY;Ew5iyP-}*!qWC)*cFVLp)}>CrMP<c7U%%dtYD5@|ls9KRl(RWXi+*5dQ~%dnt0v zv!hh#Nj`!*4xovGU$|GlRaXd21&o#g*FyQpV9G~+EO2em2eSaMEi@2f2TPQ$#OhNc z3TEOqh>Ykiv3J>4KCsee3oSKk8~>7KW}ydG_Ixz8c<R)!rF0_SR?%fxVJ=5pgnRu# zq_ppCoIAHs(KXHub_Ji`F*>s2`RBFs?e>)quCjI7!!72tzcgy;8EjQgPw~``=pmLB zhOP>>sjXa^gPZ0yj*c|Vo!b<B-eoVmaG9dJ>;-kc-y7Gi8;5x{Uo%A5Cb9M)ycawK zz?34TNEQSSaVWe4$R#qHRgggxs~m=x@U0YSlBIgeF#z46fKRZ<DyXvAC_C0Aw5px7 zRZ^E|KWEqQmEMev4Uau^EG_@Ts~>9EnBhITv1;iqqaIOi5nLhx=`~nEu06q+AY1fV zsn$SAcW3_DKR>*=VPivAby+}4EGi0r<ta)jpEUaZQR+CcQI7e7=z=|~N8{G)*(0rE z%h~d}jhWtWA8xGM_6u*urd>-)0)|ux0e<xfS|+)29l2U5UP(zz&T`LKeciMzhkt(d z{;DZ%o|iXnTpsslPb&YFoQ6jR{iAX8nt$R2zJIRXvuCw(Y|S23{&DH{AZ{z^*~`Ec zoNPK8`&|?i*+PLOfe$K%6NpQC+R+TJH$yo{+mY#4Em96Hy6UP$qpgdsQbOEr>#`rU z*&H4AN7!9<<gP?)_tDnq4dbFEuUaG<x!rF6r@g~wN723ZY6vMrBh<Ovg@XzVUV3#Z z&>Hw8QAGx2&2gow<}6fAC_7NIRG67joDPWu5|8gn1&L7)l|IG<j?T|s@e9BkOvg|F z07K{JL1BTWBi{+N5D$t%IOS(*A>2lV@sL5?6qJHt%!g8Rj*jSAz=w-x!7zRDMjyS8 z@O1QawF*A=JD-5oL3bnCd}5_mquoH*JuM5w08J3v4Dzo~6hlf;io+T;DR^hGtZ{U- z=H|9`tdWKS;e*6>sYyb^2mNqVOmH^&Mm4@BClr|^U#^6%Xao2_jY8_?h(7z27e(F^ zeVzVKtsRc=bi4ptm3@&OpjWEfwa)kqX&evG8^q4Z3UI$PPP~6?2Ngjxh3ux*BLy)4 z(9#ALeH$7VtyBcMK+;;OzBoKxeIM!(dQ4PCQygjg8fn};dn2z>o60uhLx>6u`5VSX zyJ3i{eayeoX<%am){=Zc3CAuBZ5Z(o37J<JDkv)}7#%8HUQ`qe_AS@GjrG2FQLioB zY?m@^eU;jw%DI(TYeYNN;(M(X^XEG{Oc(g$SUu&i(A?5S?it(Fu3a;ARH$1Ou|2u3 zelK8S#Ph$SYo=^}q;d&i8=Lm^yZwt4TLQ6&)>+Y+Rx;a&eZr0j={NXBWDGf^2ZpF~ zWpr*>46HR7@fbl`>du6W@C$qI`7;}mG(+m)kbhi*KRhIgsC|3l|6qI}tb#`4rST=c zVHL<QaX%403`rUekFhl+wKivz+0lXtlAMnGJaA$K8HuG?{ICjm=7+OR9lPl#+ao@j zRfU&OXVc21wkehAR)~p#Mp2uj2O>Q9bZTsPy5pMIhOu`eEoAQs$whGb?9bsBMB~Jc zT8HTTJf&B`X-3vgdcS_GJJFBoON&qK$05Jedh#_=YXElY<B<E~!2hQr;tP<7R*X%c zjc6?<BTOWyp(+c=1^a5H;eg4S-d{U1RNIfZSpjJ{oV>b6D+bocP>=R#Q&^L~rn0iJ zv9fY)zN|U^pa^A(N247kepE4ucOkTsAdxV)M`>malLb)=&yxf|IIQtYf50gav+%sI zfCS4RVW&MuWiN=vMsUVV{sOGBAeqwMus{$a-Zg=iaS{Yl+A9e-ahR&4@>7C$GmuT} zbi~TP!w@U4eLp@WJd0pg8dA!i0w3mU&&2j|D*IjR@JYUsWa#hKEe2bArn-c#r$<Z8 zv_0ed<)?)zmeMny(jR0LKZ(`Qz#OLm8xODo@$yZu`a>N_xoN@QBmb=5ea1?xaX1bh zgnpm4-E~>CKb7`-&R8YoPRCR#H#JgvY@fzxY`?g^TgQmNfeN9bShCBj&s4GPR43kw z*JL>yOhX`xGkqh)Ms?vW2a%n%JL`ld3l)jQ=!o3U-|4Lik^Pu7mcmj5hCp?LRZ&B* zs1w&0%>jL;T88E`DcR-swWly$#^;%y>_<v#asxH&;`-KWmw!HK-Lqn<pSk8QX?>GY z@BppFlj%)eY_F-xt*H)lxHq&czivi2PPLT8wk20!6Hov0Cr2Apvue%Bh?qJSGWtx@ z!6HVt7=q4-+GOE+RZDTE-j=e}5y=+fUIO6Ds!k@h&jTVJJz=M_m?9QIVz?y@0_zIJ zvR8u~SK!*}5eml_tOQxJ3Mfk!A#5U7z??@)1G}v1Z1Ft0zfyh$*v?FLZGJux%=~-= zKmH6IjeOkaMNhG7Stc*`habfG2gCm9RB*bF#~wz4=8z#M_7N-c^QdrMJ_4C!;_k?c zMqhdGgl`62nc;)0H9eO5VjnB~I7L96*zc8tsBD<2{}y`}CuDNLvO-9sCL${WcvWI$ z1O6WZzYBr9oj#Fi{$RHLFc6-y?exiwxg};jT61dq%Ku~gG;)LykID#W;}2=ocCHcg znyTP9$OK9Ffz7dTPz6wtZt4s?0fZv99dTG;L9JYrSI(qVlrvx}peS(bPuCM@pBjDr zDw4&Iu}xQz%HY^<!cU!H=}?M)^DV^lL#*XD$Dmm_bXDl-Gbj$wgHT}cry$F^fVZ%s zF0k4PC6Vwk0owxVWEF}tAO{3q4Ya*HUZ(SeOWQFZbs^T|JN&K^Lv^w#Trq&C3p`J$ zttu!ukB_b>+!z{W?=da+TV3zFO5&>HwZVQEn#$V3od3L};e%iq;xpU=i^OeJ`I`z? zFztEy;d=HiALTwPN|)j;4ao{?fO}Yr2%Td*0$Bn{89Bx(Ap6shfb7mwL~!KMpz2eE zaK_T_r6Ip?FCstkK5~M^34y;p<=K$!RLKl2CQVrcFO2uR%fjN}?Cwz!Zbx}Vbx^`% zqzt^FYtYN~l2baop*p~Zdg<YKHu5@?9u@VD$c-fDsEncdrmAwek18%|N3^7mWH)Mw z_V@G{h-iC9;bYTPsr(+-@E*J}@@!Rhz_YcUNKGTGpUOp{Ez(}9H=fP*5=EiP`KTd( zqvm(``F!Pf1dki7#3f>>#G}=EgLnS+|FZYy@l92E|9H+_vb9OGr%l^5Y15?p-n0~2 zLfI+%COZX@rHDXLL}UrFDIji$j5<;mP-h$kMO4(W>TIqsipw~t=s3=dIzA4MI?y(k z-}`fJ(gxIdp6~1R{P}|>x%b?2&pr37pY{Er(ExL+xM)Hp-AS|wj3+Yfh9E-=DOotc z1&h+_xudg$Xi-rtnl*Yzkpf-#^iY}Kk?N|LG;%_}eC`j!I*a7bEvXr?&isb{`LWK7 z6mJAf=qLMco}5?gE7PUs3>ke@^pV*&k=G5FQ-V%R(nDD=LaU%P&?KbJz1$)k`_%EE zii=<g7ANxQoOdTRd_s4{+X?DuT2@tg_>&1gaU`|1K%q_7$Uh!G0yIISo+c3~(qszM z5qEw>YB!8dkU)BDWRYIGAaA#Z--x!Sf`0s6eo(O=srp4PC&tfvUtfq`@L1)7`paCj z8_xj5spR*T+mkCuTDhb*l`eQSTugp%KEBUa0Sn@BqC_F-P&*)Ar}z}&EiHBm5o*3z zCrXHQ(jhnDkgG0E;rXb~F?ZM*ZB!r~#06SME#9<?TDn$_)(Wbwkn$s*#~ENMogoWt z?ia-&`@l-5&`R-I!IK;AMg|TOK%AQJ8oK7!WsAZYWx#rWr7R=7s7z@_EtO`T$X-$E zcq02Xy1h2`DND)Bn6)rd`C9pB=E7MSnJhK-DSscY@-40`$^_bjEprjBDBlX++6(q9 zild^rh#u6(MSR@X4`70%&HqWFIrbs9sW^@LwY2>taVO6KUC&7?)>+W=PnDJ<A2U^k zmBP`>2NQBTnt_N-a(=ANS2b!p{Dn%G67iF)uINv();M(v&<}qV8IECc$*RqW(B&Re zYG_8>LFSWV*S>kHq4i*8Yis4fR>Q4t207TrIhq2s2ZM5CPP3tOjC-fde9c|=h%ng# z(gs=zEaRL|DdG}#+;V*Gqz4|DH23%|lSd~z8jrSZnNu42Dh7w)mE$_aXbc8ne5@#B zcl6&J{R;*WWOa-c$_N8$Ab)5=W{4V80<gwLHq3Zk)qWyZ7uLWsx?{u1eko=8$*qUK zR8HM3{kO7hz-8^AF;5)ca_78O=8KS^Tj}`vk3(3ybY|012Xp?V=XvGl%BSzIhWYki z=bXQZw|C@2wr=$$0T%?~ZSRA`#6QlL=*a&)6Dt?lltUDZD&WTs|93%)=ym}kq#$-1 zLr4i5WW%(zLOu-JRzf6}g!S%0?nib`j-*G@f4_74jo&Coo_bn&{Oesuj|kbfZ&)80 zV`{K3us7OwuCNbqEStk5?JSq;{$E|u=yLs9`CR$t&~wTGW#2x{c{cO858xkE*0p!? zG*-7GQ*vMBX6c7_r?d1M4o&&PS5#l={P*zZnF#v~J7!WpiVBVn1tknpSprrqT=YO7 z12N18vrNQNfn6*Pg8~2v!a%3swkYw<0VIu2_4bznN~iMQ^Y;`N@0kyQ$Us;}rmAPk zzq(^AA{trb>O<u=Tlt}@l^1)yRbIUMFl@NX4ht^<&}pqsw_|>G_N8nab0}ZI_wp;L zt83=TxpUu{dG6fIcjnGLIkW2;R;awUT#2nHD_x<)mMibGg5^wFURs9lSOYMjva{#! z(CO9+6VwuzgKbmyIc`r$LSA?*Ap(T~lrM%4#y5?9ZiQhWUr{dZr2T^%n;6K{Ruzb- zqPiU1i0)FoajS)n?8=n%(hfF&4d^IMPpQl%Zrc~`=j>2^gCu9aFu0yrXLhA4g_4xt zbU0I7mD#b*crG@8l6Wrpj6bt~sd`^&|4jeI_ZgwR`?33k2x;=1Y8`m#R0oaRi%I4I zmTw(A4`*OEWdXmBm>~jTz6gEH&CQ<S*cqmd4+6G{5Vecr+KN0M-kJKo4j^Sz0OF#A z^0;kUO&!|Ey@{<tWY$tPhvi&;Pm$G{f5S{R`vNpF!Thr|_dIs4{PCYn3~iluMmhZ% zJ7vA=3Z2fyp8mrJ%Du{`{Kopl>nBtq!@rpSmTmi3<DkdRv1c-8HvqHjqgR#hF8ljs zg@x1qI9vJp!T=r%u3mih(Bc`p_8p!2!o<_DS)~<M+~vuvE{<82G9$m~`s?Q}xnfG^ z#E%=+*v~#@H{Mp$Vp3`JGkVhBlME~$GlP4yp?&xmAYne3TnrJc*cbvfvXsTK`0nIU zF0r+&)Y(#eE>hf5gcH}@eAV{xRa-t&oZl50HzB{cc+}K<xieoWPF}4ytE)AJBi3ux zCzvA|V)$V&g4zW;OR$E1z;NOK9(8sR-y}+aZ5+b+(9-Q@+W#7~|C(#|4^k#6yK{#e z&kpF1DBJd1y?462!j)GFUe}%3w*BndBl^7T<2m(dtX-Tla782jV%PL9%M#X{bbFn$ z0l~*_mr|VG^tXkpv&wy0v9%hFk@gY3p7kLu)M=VD&6<%IOB(JI!1YvQkRilLu39T; zuMk9mB$Jc{#DcXt{vmTG{9)Oy&BqTuv>&lrzf))xB3OkxNVKeKw>xmEw6ciO$s(OB zif=l?2P$v{q!x?DIu$@?FpU5|8Lh3OgX9byd)p$NB%3BVb!Vh)FQvxnPoGv=$*MT< z={$Wp7CjyGbeulj;R%YZr%$8TiRb(Zd&^nKkqb5Bk;3WWxUd?gY9!{u`amzo-0JY) zyaT{;RAVlP6(D?0P@a4gQD#-@O=?iWAc6`83Y)CaBZ{K~L%--)AHHv9wC862n}FGf z1f_2QPE;J7d0#m8v(UgqI!=W}!AP{P82JOQC6m-YR3yNTLeZK}-#s{TLNwHK#XAp< z9FKum9Xo?7gF?~qBgN_(Bup6D^G0<Pm`S~NqBGBb2m5FNb0C2Cwg{<s+Yt2Q1j}33 zkF>euu#NvgOn?&ROGTjU`#>3O{o|?M%-V2hZ?VPdMQCQhBn2`?8(&Crgb-)KwePi$ zwhSL!Hzrg7SbkA3YfFpPZ+M@jK1}FETRw`ny=s4E#~g&7h)4~WkGygrxF?^npioQb zOX_OfXWbxhR4YNV8+)a)M>+D%Zq>R0KwX>^7S9lO^2vS{Ria1fG7ky`NhYUIXgm<5 zavoK{p+<u`0K>wH6II;@5eaD@Nrfju)s`QZN6(0H-c8g14I@8><_DK~AR%mymqpkb zA}=dH&a<fzA}|bc#UR67V8bAdRyj44kxt@mFl{ph!nq)EHE0T8%RdGi%35ej!64-m z8P;b8Nj`|&RFVVEfOoa?z3hjElN_4{V^#czvf$R^KQM~~TYoo<4TrM3fApfV02hPD zZ)NWlG!KP2W$ss=q0I#fnOn{uD&2YfHl>hXfUzW9px_j^z~|F*`l-MURAUNqJ6Bq> zP)QZFl@#STQJJ-nNCYSBjVK{EA&0BUf4K3o4EeiJGaUQeH_z;T%dV@+k;*ur#apen zTVIef9?oYEF5a_v@gAv^z8A~C7*#VUeATenYnLov;w!8fRkL=k_;vcZ$8KG+<klr@ z0lt>ps`hu>CxAQvsbSUO1(St1O`y$Vd?^t$1C|BG1mWUD3yXr_V`O_%SFx~KRfJJL z{TDDWrvn4iLEUB`%@7KS7nRMxN@H84Vksyc5f_+Oj15<g?U=_7&4;n(e0FHwj_#7C zD{?N&9U^z;)LHzw%7Wa%U6CQV*op5J{vP|Iq@A~8==>ot?QIGV=<myF7!Ye}=-)6v zcu5^|Hl-a_EbTOh`*hb_=tqMNOA{Iwdg@-Cv~W3NTxM{PpjUzlBnA13n!raTE<)Fg z6kI&ey_642WC}78DdZoJZa+X873AV`2Rw(wpN&Aim@xy%?HWBvkL}fm_vz8KGniUz z8!rS8p@Qf^(q69r!9#-ksQiNmDVd&0IWRL0sCY2QP2v$g&QxE1H|TD%PP&+zfk6}+ z9$+N2iK7!Z*h(?>SrtyMktOiZrPhvwa&vE6N6>xf^F!{Q-w{h7VcQ9MBG|w?6znN% zAK&QZ_QZBY17i6tw=Bnw)XlS!sa7j(Nv#P>cap!I!Txdv^mY!kO>mY)q||to;*$Vl zFxldcrb<GTVNW{7-U$DYC>4J$diBGC2B;|!I_v2yh^u>uP^>SIcxpEtlVeF&6bIw$ zAHG_S7AU}t#&IW=g{?NK{-QmJk5Sj+H0<`8gouK+HJT!<265W8I{F0ja<%SYAf%!% z1|dv$xwRpXg0yeA5Z+rPXrkUdUHTgvT|aW{<eah7#<pMEk$JE3`TRVux4yaN>X~%| zGqz8;`KYt#nGbe-``CuY3qh7*^W7<R6LJhybIL7~Uc63!>oxsH4enPT6usiyTWn^- zxP@$mw0hd@FTRcX6FsHYAH$=s_CSR4tL8V>GM4AlTAi>xS3w`}Qt^7mdYH38IlOek z@QU1>Rp&L|zWugxHC`Z59bq`@w|w0ai2-%woYK8b`F-pebu~!Pk*X~v*P+lnxBA0A zH@?YZl%9@Gg!3fvrAZvOhQ}HR`o#9|0LXJ*yOE8*k-Zih(EXdeZK@Ad^ws(X;WyNh z<m(`GP`IQw5eMZ)Z2qmSEE;Xw8{q?VK~`c!g8%sl5V5((X^wE-l<PUUw@!X85L);I zP-lVKwRNO8kE0J-u<0gLJ91>@!mU{a9U!kT{xO!agsuKQ#GK{NE8UZ}%mFih#=kYI zqo5vt&}T*pkZs{gF5aUo%BKXCBWaLt&K9bZ1pb8LH@^VOss)-~Ykr5`3h7`jhHc>o zz%nF({NE$XfHX!SSbh7TWn5Y*E^=WZ8lIrvLI}r4%r_8f$~kXS11blS?mF&%NC!M# zW|bSsZaAcnVHcopXxAl~14;n@j@Z(mljuMjOgPR+GHcOlTM!I1)s$kjq?Nhn_KUb= ze|pfH6HL#Q9nJNvu5z=*YD`NpnrxKUo@&(DjV6b=+|?Q$;*fLG13rYxaOcX-!F6-p zWodR(ip6L!#iq^KK6mbR>G<G+9B)ChwbY%JZnyaCW_?bHXMTFFAW1@Q`g~7Gj^1qd zS#0T9?lMbrK~uqCYl%A})8@>!ne;j3>GRY5q9loa9F*tiO*U7S&7JKool1qz0b=1` z+@h9l%XHaObvb1j^Ae@c%P7myrP^JY)~pO(dQMJ=inr(5+#bqXnsF%=FH`Xur6}I+ zaociSD1K{e>(;s5>50}c8;$O?Quo|CdSiERU=Z(%#-aCh8;#~vgUK4t3bVFUCpBb4 z#7S9mawxBp=S4%NP+sAoxm)MX-O9&1@ELRUEwC{QXvmT)PRx=-u(FP#w5!A{(dMxH zggK5GMx8YwuZV6X3qF?{itc{sXd?5mSJRLQgu+0|5)MDRKey`gdA7{d6f=M!1*70i z%SpR#+0&4^q%+Oa%a%P2%-frU&Hwzxf-UHoblHg5y+%pSw$5K#5!nCSm&(nJw=msH zt60rAo1@U-_Zh)A8-y%-sCeHCtKa|mtXV&Q|EoXUJxdtw$<WWg^Tf(u|E!=e!!02k z3^V#I7H5&oKJJ@mP3?!j=kJR34l*&oW?rgUg#;R;S{<z~YUDBsU#4;^G|KVrDpkV6 zJ`i0`;U74GpLD>P7)r)0fP{+1cOqmbCH1YU>YgCo{rQ!Cx7Ev50`(>(TrRhYw=Y)K zZeRIt6@BL4k+EzWz(S3F3=y;6Zm)G`TXIdNGFv*F=Dx@*Pxbgm<hfEp!Qe2XJ8$Y6 znd2Jd%s1-XZhy~_1c?qpU8`$8v1)wd;Js~2#su>lmj<%Z*N$C$bISuNOw9wuK~Jh2 z7;Mt{98P;-O|?<ZbEn&al~q=q-{A>nrPr2ScFp+Ua3h{HeogDA*;061_NPr_$FGWg zl<bwk*UM8}&NyGwj-^UVO9lSG%AxgW1wg~m>JgV9k)Q-C2{}xYKo1R<lz^QR?T1uq zI$HSo>Op*dJhB{>ncqi%f+W!9$=7{;!tZw1y^$$5jLUpuYM$FTEEo)>xbjBiW~P>B z3NBAD-B#wwwPd?%?RLM}ZOio=1qd(Kj*a}=KgR8{`2W3fJKMJScCl4152wIePr1o! zb^E(^5X+;s>L<;sR*fIq^lA3^u$=wL+_mHJ1mp1F_-igJuT9SidK`Y8b$-y6fw^X^ zt|_!Tkzi^L$f=%S@dJ1Qp7TJ<&5OsbP0tD}Z43m*ENR=@JaGJ~Eh@N_+NKzjgz39n zy8t++c5ZzQb>l@itE^heQ8YimR23|Z!t7LS`#Il_L#UqRd)s*(`syFh7&U7&GDSmx z5CXWdG>?gCrR7^ga$y}dmb_d$da{zsT#@DmSBBi^9jz`8p=X_-SjFwe*x*?UnCZmo zzt8Jmn3<XGn)mnBCzxr$tk_^<?T}%D$c7L7?ZRD8ZWf*wp5J_A*TUZpWy2*{ki23L zc24<xgZXVXw7^w8q_`}{<xCq=?J7{7ecQa@^C_{b3>9)C6UUDo?8y9JxB2n4v8#lg zYaci7{vgvnc+7aL1X)??ey!4q9OE#-gJPd18lqQO$w)<~(zJa9Bp+gU*AL);4Kket zd!D2Y7h9AMILoOCc105s1(o^b3^Fmof*bb`NgsrqfaTNeiYC8}JUM#kdRxmU`z5%s z;viX9M?UJAkRWSV5>Z1O5D9-0$lG9v%3zX#R<6xMa!nIZbg<r9wb2>~{<}~-@Hi0a zWoUH9jOYwmFc%G7HEzarInsG%)H!nd7li6E(;%T3Q`;rhjvier$7;uPX~au<9u{B6 z4Kt$MAFz`xE0+x|n$Yj6o`>0k`3(a?8Qy|n<sqe&uaoD`0Q1WN{>V!_TCayrF|%`8 zLFLLgG#vtlL+8P@x0}ermzrsH*@^>&l5^~!Zq4BQphGG=u%c{rEqhW`6h6<Td9lYD zU%ocAsjW8Ln0oEYjlzVuQm~dkAM3QLmvO`YT$5NsY2L?047_`LeWDUQOWaD_%r8NM z%NildyQAmN#2bnE3UzVMRjiY0s&G<}7!dT+vs=400N)@Jlo;Jp%SQG5nfh3yt5JLs z982P6LVJ^O57n7uBJ;r4ttPoBMj_TX65<g+1o%1?<*U!JQPm!QqC`p?JieI5=V>Ta zA~^_J?yRrzi5g!`y_0q32qj8uQ3ebxPoK`NNXaN-9a+UiS**ihfP9<MTn2~InpISc zXLDYJ^Gp;MUc=P!-#5xQMa|i{yq}sQvijB-wV&)y9`*>D_fzvjBDL=)`+L-pt`2}0 zX2Oq54b+k3hN}Fw7M3_eP)o=+&_c8WTbLFa6%}K+my-i^%D0C=NHxHy3DyQNSD<5Y zV_~U=C!8RL<<3zHMZiaH4b&(f|3P^@GGSr^_diyBZs#^koDfl7`@QmUO@M6`#D$}j zl8oak?zyd0dWjv+P+lp$^=_?i$p~Z6Sd*`WmA}0-+16UuFhO+-ozPI%YMb&R?2cZ| zuQ7y-BbFdo*>itbHWXCQvDmkNU_+E4iZT>kj(1D&g3A#veZ6L@W|!tR&0U)N@t(ah zUzM?ewInn{WY*$CcmW6Ahp())W&w(WG68Y<pkVNdprWC-gN{K9hNuo(CAL5Eif9rb z8{yJ#S;sy60<Lf<n8vDVYjnAY-iN|NL5w^8%YS;$5~*-Nf_Hk7dsN8n{{6R4D94q( z%6q>!_XoF|=`)7Z*Qbc4kX_K5B(qI4WTs~u9rX<bb_D;b7*<@BY0t{_g)(OPbH`4b zKGs}%X-3GO?{j3;6ptz^EM>|bDGLN$g*nY!WD=z`lO*LDb-EOz*{#*<En1yjuhr`C zvFat!pp!-EOkaiec0HBml$zPhQ%6|QLk}zOKlx|nz+m{B71*ZQ1c{{<`VF31gCM7+ z=mmo*(-sIA^!>e(&X!T!Z%S=Vb8y0?`he5rav8G<^$W%q4yvl1(omdk(@CMpkC}4* z;?N?zmdBVP7*bOtgHe)<h76-#M(w;tN$b+e>3Xefz{jf9%d#kI<MI>E8}{Pp@s%&J zD)mZ2nV+jbFs^AYrL~A;{fS5l@c)G_{R7%F1ne1v4~$i&d#0e-dvdS9r2yPdUn_8d zgY;Zam~36dSCv!97(jN&^~nk*HiP)wJ_tRfm5U}2PyQq2xGrDog!E((Vh~|9K)(ki z4UHR!ARut43%gwbjV(ccaS~YTb_u|wqM-x%JeDksBB+J|Ctnwa^c0ja(QTj>yqK#m z+O79*dqml;oLpa;TQ0ZMy37YRKf<nICGqpE&!+ku{eOP+s1p3kgjGf5>iIoKpJMOh zyi^%}_jhF}!$t>F`m_G8Q4~PAN?Vp&vJOG?wmq`#KAWv(w6-EpvJPHkYx#M2ROhj6 z6-6s1ex?*Wee~`IhcETHE&QB)a8x~yeOC7E-NB%1SnyRgpdl3j0lAE0rQWDrN1hCT ziU)O$Xm>>D5L%>2OiKwk6PjSaQWExbI6Q^FUBFsS-s@jn$)fc&mR9rB@E>8-xL<kY zyTfyuYglW;GHsd?tz4LU-`mQQ3w~Re;plK*-k@~UG|xHw9U^PZW4HY=Jk{K4!EVOa zWv)*pA07?sqeJ*&e6jnZR?{aG3wC{;Bok7-97%LR`_%=$jaXXwd(MZy+bZnYe6e&A z#v{x*{I#^aVgbSsQ1>MuWC;3<rVK&f9VMs?5c}n^eX)H+$jVQQTiJQ;19m0CXYSGl zI{};FBc>ylJ*|w$^?;nlvy$J5@GavHNbI>ZQaG?M3<`)V0`-qp$I8Yzfijj5A@Rx1 z-Z|v)b5#RC`789Etj>&T>x8xgRr8%D<M@=iggi-=9VzQ80MXCY6MoO3>~QLMqsckH z@?hHpYgI;P7Al8*_<R-i!N<8}0T?<MJU~a|%Xd}#NLfo`pSEU~8+z%QI+rA4q|>6B z5Y?3m!?&JL6y>pJm3x#Ai~6&`UvGG?pftB%_?FHY3#MMy?;iFNVh(=)=+Sk%*H_%I zX6;nT5pe8+QNj0re{{if(h=dl4O+AJ^L^SXss7mI?ekyyBDJRE(eJl-M(vrHTC*YE zS65*jSx$C2%priK*8RB9Ey&Fv;5X=#G&a3v`U4*-U+w*Y;O(ID$(yT_G)eafSKO(b zI`iu_HldT%uUNNOVp&G>S*2^6@`u>eqUXRJk2>@g;^W!?6Zy5W4OJpcH|3zNQ`>+e z8}xc>5G7!{=4Q=4=u#Yc*nq0Tt`HUt^et!KxG*PZqk1_JbsB!nHQ1^{O%kzlSUAw* zuq!W<klzJY45tIz83iz=4G#QZu9hfC{t*XaI|QK=LXZcFMk9tPo&yS@#VQnZtG~D} zo*?XVx}65|dad0lK}2sbKH(Brioq$3Wp_fcZr-o#R^A3#I%L|s-7Wnp>dG7PcT`uc zQ`YG-Tbf6wXXs3Z>XN#VH_V?}lbY3d$>f~$v6-Gsm%(B%WY?Qa)`_#H!#p)N?{~`U zkKDl|mm%G#Pfg90Q_V6y+l-bpqtT)h3sUgUn3|Gj7A$6_Pf5euX=Ra_Oi<ey1=*_= z_F@?Ad0jaY`*wjg$1Qb@-`L-1?Kkz_<)bfcymn7&*zeEHm2D+no31I^;I6-H-13e~ z`dN)-(@iEUv_&<tlxnwWb*7PCZ&j0p$#P|<?9R~+1~szn&u_3cCU#dDJbHbqIiwYJ z`V_rxTPkXoYSE?*G*~SLz17Osg?1g;+JKUWnz@f6Bx0E>T@is<Qo9pf1HMCuh@HKn z=(Y%8>aO|)OCRRWtEjllRdCmwt<M6dE*Y1OqtzYVQ?bD14pdB9!0BNb^H9YIG=S%c z<9E~Q2Ne&7h@G^S;PAr;w|ilgdc8csz!kDSslIO3xtr7Tw4dkYo%5(Lfaj+4K>+Sx z6^BUGMPICk-AyQf$^x7a#2<yKi+vqyB%nWe>yCLU#-DU2)JXT$5Vl{9`c3nIXjGMs zb3(rgpG)%buS$h79b=e`RN>qa@aHBl3B@X!0Q^D?Fp9akd`s=8h|s-^RlmCi8~w-1 z_SnCbPk;e*a_`=gt}oaxS<O>OCq3*@uo>jbzvf-#4dpgvJhz&IlemFh^Klo?zgN~g z1rXvXUl2obl#PbgmN-gU=hC3Va-v`JR6n^sBp6kNMc8i%BpA{v3Da1IoeX0*<6yKa zt(j9ZmDc1W@E4P{laz?FUri2}5;%b=5w90aNk3vra&Qi&1kXm_#`QBMv{5<qGtjtV zN;|E@QIl7HQal{4QPt{*$)%pActL!l00Jb}Uk3Phu!hVPd_Jwl=j#iRqas9Oto1ql zODc^63^h{5(54t$qt^@9dxAZ%ZlLXv@oy1=e&`&b%%<OcNg5n=|04c!4Y&3Ib<VvE z<CaaqKoZ6{v7A(KFd_lscfAbea~yF;a$9xL`Vk}Q$;9B%o0aQd&r^-^=y6ap<h{<; z-25mRFPzsLQkwrOFYmwD^M~a#vBR004{phfJr1)1bJk-w->qn<YeD<ruC~2*-~4E% z#T!u$-us9W{nfpKnfh8hAA@~~fW9Ve7(o;gVM&4-3$3A`Vd5rOVFa|+)Zyc!YdU`r z=OU0~A(yT7ix@c{vb@IzSheY8S?4;l%F?yg0gth~4_Sk<OX=D#{d#|A%cyrp!7i7W z;4!7jy?<M%{QcA@S6x+hc2%8g)G3y}@NaBx>6lvOHKps=LgmAM|C{A4Jl4H!Y0Icl zElW`|vX5A(H)}U&hU3IdbSA|lA~Q0uGyI2WFk0Kmu|oYO{Q|A^<YJ+IlRTA(Q@Xb< zERH#HBowYU4LlnzD6|ag@&t6|f@hv7^oF~J0ZcZ0c3@g<eelSUV0~S0o;q_{;WN(^ znA4K-)M=+Y{d7F3ps@DrKwZES4x#KTOp&v-z^fhBh1*baK^nh}@<h^V>nKaOE;)|| z>_9volo3b|6Et&xICwSQ*iTw3tZOwvncIbOGfRY72CczA#0YS<05(#PZdD}|m$U<N z`7<3*l;?nethPWkSU?oS6(-dPgGnqg6-)vmxE1lxvUvy^)1ZwC5e)yHg)OzM*L}F@ z$W7uLZ#~Ts7+yx(riu|7n99@oaf2*#ynEZA4Lhp5dgKTTA7!mHZ93_04~yvaeEvjR zJNi<k_8dO}1x9LHHhp+q=iTQjZH~30!$W2a8#aUMuz21Mb~=JZ%jauZ=PNC_c64}f z+g>Wa^C$}+>58N03!RwYHNc0*7yf>-9pe_bXf`)^DBf7{hD)@Pt_fsZjcTn6s2j<K zd;%sXxUG0&a|(}(imLr#n1}Z^q=>-1y!C?a<YuHL2=Rp@QSC8Qjd-bg?;P=_BY5Xl zgb-?__c)@wdK4B?ZF{|QEQ7}Bm8Yp$#mLmX>dlc(6cLP4IZ?g7wUrKdnn!9!nGt_Z zq@#lp)n=mx91<SA)?uqWcXubct%aq~6FRAH_O=ZUkG{5~)VHq1=R?Cr`r42>!*?2A z_>0F*;8+(Ijzuf&?^ulyU6Y5E^kPGRK!KEc{6p4q+)R#-D7mICE<VGC2XQdb#N0jr z7P)9v49Hp)rJh@4*FtfK=11At44!1vK?0pQVYQV>)$1E8sU8{&7mXFgr;e3T7%Qb~ z$J7tPSV_FNO!wn27U5%s#ZTq-SU=r`qx^}Rgr6Mcb94S5M>&nfc&vj9+EM1rycJ_6 zRF{~3@rFyZ5||0JkUH1lLuU&h9}P&7`>2i0wPUKF)Ebm|r)2Ynl=I@Pr=<v7NzF)Y z==1$xxD2WvlQdkE?|NsLI$TOITt=zGrLP&O0TaVzH;ujv#(2)$|En>M^`Ce{Rd$=E zDZn|%r6e44U<t%sO$q&k&q&yBV)*6iH9v)`-vso_EY`_=PnFMv_ep0SD}eC7e!STH z<DSLCm4Wasqx*0dLq>pS!YvimxwwAmut?|3RlJ`0s0`$_ke9$C7St+;RI0M8>L>il z#FtRBEW+m`&)BS30o6`;U-=9V1x5{z3_w`?$q@sF^Os>SkmFmn@)^|*`NuX~T(^t7 zBH+2#iw}f>g`om*IGlFFH9zGLI~?_btL`B3BJOR4?4S1CrI!H`I$ov$t(NpIXuONt zjyy_;`Ah0wJCBBl_M>X@5e^vyZ%VP^r&|ITrD#E_C$$6`0xhX+zo^L)VGVjP7{Hu$ za^FD=hClJa5JK;g6Cuf9)v;%QWnwxs+C`884AczcR=5t(L)aMnF8qNu3fC~d5P~eI zkjxjj^MM<d2as=RnIFCH4_ctL^n*enaabrwru{(;5;Qva#mZ4r%mY^MbJHsJPoGb* zo7hpMw6Wt0wsc19kyumS$i|Ta77oC7&&NvX47T*kj@a+mKTRgZ?h{i+<_RxRj)vNr z{v(xlyzOJYQ1;BwT|PtE^Tn8Uuh4$&*3~=kS-oEATEF#sL|oebUX${|$L}1tepr3| zu<H-J^D!IL^j_@T*6+8jXWE|Y9(eD)2d*DhR|kFD3(D^oHL>Q8KURL-w21Y4;es(= zNE{7x{Bbo3+M@~F9|$v@>Tr!^3%r7h)UJqZPQxFYrW{?hC{{G?)BWRxcY~Kb^3UsL zT;emOD{t6?p3gIFtU5hn$Ut)ULQZ6}_F$}V-2T(!h4(JM;<|r6a#@BUlCHdN_xzRM zylT?TzG>4a8PIT)pT-r@QdY=pPQo)Hm*Zv))4(MZ`gv4~1KN-^9wg>{3Ft3MNj3pX zhLKNBPZ&rF%>(32<#g6WZwI-vPdk-4t}h`gdmN>(8<W+sNyiElds37r_3mhG?0||p zb}~H9t90gMb!5X?fBJXc*p|Ko49IEUdD$3M+x1%V4~wW!WJ$c{a9}JiLeEsWU<)SI zS<NyyNw~b$(hdxXm6Z=dq#!CdcqxY#>Q^&%?@$d^c2(<@4fX{0bCo!eK*YDuECg@R zs~;1CO^*(=<z<w+N7(Hn+~pa0wt>GI7_O+TM0$OlR$o?)^Xxi*oynQbn4DLVCo||! zgRa{}ClNYv`FwPAO*ch|sFCq4*&>pZruXP#QJqJhCP@)X)Dp3=C}jT;V~SJKOR+l< ztWso%*6d`Wpl2%TuSW{A)4gSar0N1^$(xwI(f<^G^pswL4-@Q8IaZsB(54DA^GO{T zlnTa{X*<it7Nlgy0zv<<$azh5ERZcPn_N{jc~+q3I>dJ!Xvr(@3=U!g#0@a`RC)Zz z!T(iZ#mG^$WpS}YBCZ^S6x5W30_Xnv)Hi+-o@3i;WWs5)O^DjeJ*PL%79z7Zll^N9 zNZv7G<S?RD`?G{`wcKtub#$2QzS)~M&+Z^#Ut;zsKea0GTIjW-R5!B8Q`a!E#;NA) z9T-l?OnQyuRTFx`PK6+zW(eu=IkS)I!8=E_BPC`Puc6vNlK?;>TqTP08^Xi;4C9GK zRiaTI890usq-H`OB(SzHnFkgUWdc*nc~%g399N0#?v;(v&>(~qj^iqUbsZD}%Uv>} z1xW<RM3IC0ZsfR1#NUQC^;QAz+($Dc>wCGMQGB6-V5*79=o2nH=pE1M$WI>fa+HF6 z7UTJVG$D<zaNr=lPWRsuN?Rg-NP-S-I7#EHX!v`?P1A*g2dLuzlg>9;4o;HXpO}3x zkRo4pGA6?6N@yUeI76LGk_IA-5Ath0+mwI1-M6`Od~Rmg=E2;8^>m*;tou$_tORRE zd$uayQ=Z$Pp)+pt^y<qm=kg3fverPhcHv-2IQy#27sr&My%3EGHKNrYl{I`oz_eI_ zqw<L2ZkmBQ?$zDRFR50?bV-KYKR{dH6p^Jw0|@LC%`$U;Wq5k`Xy8kZj&H_A77c{M z0j6F(PeYsc^D<sfZljM{3e`U{u(4i|KuyLLl=mYenpDDIp=l!$E*i%%crc(}^%}Yu zyJ-9h>P6uU?LLX|&f&n+Vaq|vUrSsx!~LXhxJLO!dI!j2&cC3)M9zcctG{M3dL0CT zY!=*P(d(#`@*u{j3+u`13CJ%D6a$8?P*sip0b;8_a6t4yV)0-;gy|xQ#03P33FUI+ zI}!ReqDCMzf#p;_qOugp$|<J2VK8VRwr9$Au}%_=0{s4NHQ5VOQXUrUhMsOyicxFG zv^hk<!dh*O#coM>NT|-#Dm#o$cRu@Tjz`?IZwoW~%UunkqbCQeh9nA-QJW^}*(Z8i zcFNK8=e_k%klUJyg^jXu24=!qXjUf}7`w)yl`I0=#BMY>GDP7|$`vW%DXYnmsuM+% zSME8%2AajYvCP{Xdb==w&IG2{$%2VV9}9xOBtg<@33%@@Q7^De>AQf}`b*ISeFNvW z&TyNBH2AO2)?BB#Mf1xanMd(<a(fBBk)%jynlRcm9I6S|lu02-gP_@j5*>{WiGZNZ z3&^=auwyzcZXvNFLQz5J48K<_9c2uyu627wWEapQUKVy&)rPogf{fHCMJwl)>0xV7 z7tRlR!KOK3x_bS{^0HB9zZ_atHdMHzMkg%V_F&b-sRrZPU;bf=&w|%??aXi*)6F^n z0H)ZzWnQJ{O#alII`05?ASLi;>2<xulrHyt-t#xvon}G1>TPKrt+rUovsf${*`cwX z(Yu$;9#UeOAF$6{v+JgaXws$_b!nx;P5w8t7PZaKm^0V6_PU~AMq2k2<}kQTE|bNm zW5w{Akqjw1k;y-k&y<fk_g^DRONVJQhL*?71w%dADLI~^JEzTAU+4?F?Xp?UaycCC z@Xkg3^VT=aEr*3p>g5|9i<f##2A$D6w|`HI#ev?!KiOunIdLcn4tbG~lP!40DW4VR zrG*C8Xa4rJrT5JUIs$@Ggk`EBh1GpIWCUxfKk>WfaHz5N(HkEZ1zBrMvDh=rg|!Al zl_U!(814(Mr*+``x$~8JCO-$w0Ii#5k+1J{O=R(4X8E8#jf@<tU`VQ|qyA_TgpDna z+`Xfy*io{0w0dMOUMyEiSG=NpryM!_oibtHJM5CnDsP+m&S#&!FZ3)qI6E`fxAVxm zOX5dQytl5T{t4xfa^|(=Z$8<;(qDdKMvZRjz2Be$kgqP)Gw4pi=BPVA)KL^=Dj-m$ z_?)HKon*NP8cdaBa%(y4%()Z?M~k>!q$kHB4^k~Zh<I+~`x}4@_n$283P<c`KmW~L z%D?ZB#LEtRvi5yemxigAk#em=G<|r-6;CbD8{fF;vcnCAoD{%*y!fE<=0{saG5R5^ zdia<3hy1MuG39Sc*9m2d^7VdEJb?Ip*J#__mb2qComL^YT@oK)mb<Qgf8QjXS$X~a z;iJt4!!ldep4V4)F5mr{Q8#f+s$^7V%fH$5XXUL2A68!d^aep3YRQ_S&(N-8>_IG4 z8&AB+u43j6bPr#rfinRAi$-oe;L~7><wgN`|3)kwfR~pspK3s=h69jylwoE`FzZ$g zIs?o~3!IE@^ulyajIzyay(3jA=+vi})+_hkFyoHP#ujH8Flud{0?$lg9<$@vlAc%I z6uet`@N#Qyip`x;u#atFH*QqE9&7WY870h@?24HKelDL;PW5!p&VfmWD7sP>4p|Ut zoH%Y`*e*4fP8={MT%H<Sop)z`VPkGdMwZEN<tVc;t8`^JefjdPo7pc?#uw{7fvhrT ziC_(e3$ryT=g(>G(2tNtf@5?-W<3Rx-1(ZzV72p0O{eB%jE6L#j{XqLPAAr7GG?z6 z<q&XNX?fw%=EGje4LvtLYF3>c*>pGq*eEjQ>$n9a5UwE97Q(?ah9L!?ko*w-(gey} zhkM~Cg8yCw5~H$0lqBLQA(zfgrPP@*uJ9Yufn9BaY+NU!Jp9)U6m)2KVpDZmxh|w1 zk<zYPh0jXkyG3`mjayK*L}@RYQ`{3ClsZeFy`cZ(<$B#UbG<b=*{NyFxM_Ww;XT7O z@*2Y$-5TxDu}iZ@8qXRh_&U?B^Tb}8W+})iZ5E}<%G#3YFAFe%a%beEjj+3h3r0_^ zl4aiFX?t$`Lf?$_&N-%lcfgda%G@k_iX^36H#OJXRy=0mEopNsHS+R_YX+L<qzX1u zMs}bg^M*3>#Pv?${Thc$Hd`B%8$BgXw<mq2?k#DN!{)RF^MbM*yKY>T@T=MS0s7hc zX5A$wwp!V&W7~AfS!P3Q?A@}ms`2V|a%;t4Nxpo>_|39lv}9U6Y@uF1b((n=?wh4= z)(>S{WaU<tCC{?X)+#4btM%dIP{uN;xv+SkC=SrB^P0uEf|%m`)9?Ccht^-$-GDpU z9$9&m&D6eiN_RuV+aL>io5O9_>DmmsP=R*$9Xcg;oA%b5R+nwkuidC!EPAY2HYZGp zc5c<a^=GV@DXDcjqxe>~z*5t44dcxPI-4H0>sh{v@&<W5%`wuU-Ky(ETxJjC6clA= zF2)*q7OS0(bf7vexb6=q1+t}flTig`AI1iS+aUxmw~J_fpbU_$zRPy8G={1ANGwiq zTMR^b7EcE(gR`@3R^`6ffB{)CPi}d6?g^GM*=lQOwkrP^XKALZ4VMa^zC)K*kHdvQ z)|OW@d_um*dob1o9IoZeh=?@bE4L_@<MaK`f6k2Z&u;j;()rk7rSoss-|%-9dF(KY z{Ox*a_dpbe2gdGOQC%^loV|H-c5|*RyJ!0KYWf22FOj^1Ctk;9mDF85!BwrC7XN-x z@pvSEY|rz&+zX$Dw&ea|aT}Wq#5X0*>0(;E4)ab+G(vtD+LMH>KH3iL3i_O@0aU#W zu+cyaAgc{sfetBW+6aYo0%#+?*?=)kt^KUFtn7h8V`l&U=h!rhH9KpNB`;tZl$B+( zPE@*H_m`LZrB?br@j|I5Am(KJc9eBsHm;79&#WBR#gRm1e0Ocw+Txv`)oig?zpc7L zn3O%xilUpEkQ1ftR{EDWm*bC(9OoQ=Ww==RWi;Dru{39GCs`Mpt{)-p<PwviSf>|j zu7the&oxhh0{~eACo0GbU_?yI1*bf-SzcWp$)Q2|gXAI0N+O6HE>^9praX9G(n4vG zBb4XNgLGfL4m%$E|D1*57m~OFk8u#2j0aS!{uC$<mScD-m4^i}xh!{{S`QsK@VuS% zB`H#tFUuiBnawt2@Wk;J(*{X2SJsUlFle*iof-6HdRWOuS#Vd@4$Vuqql?B@SEUG> zS!#MovBy(V=;_=ji>}JrVR`Acq^lVvMf~dHc30uDwy|AV!Mu!hZrk9-p<}@3D?)lf zo*Tq!{RUaEmIT9YlYw2yOio{lv_bgVo;^CtZOv$KxolZ^S=BvF!R-1W1MBwNJT9xv zond7SLy9wVoI{6>8k6Dog}z{mhlB$ChZcpH#4ijPcJYM~ks*%!u}cFwLs5=BOJALn z?nLm^kt<S}*Y3zk**hrT>$8<rSh47bJUPakPq>VXe867P=s21!Y2Be=O$fJowdh=* z<ECD9lbT)5<8CWZ1Ytsec@9{@K9@!7W8e@m+<AvnKDPYSU3Z<jOP<4jx|STj?Z&ag zbYlh!u>skIa+5H4jBeQ28*e*anBDc+F{VFuOgXFQSHHG~ZCmr&>YDuSWBE1mODG`m z*Yo^s$9=)T>;nS;c70%WAm}@OTXtdm&SSAtYhGWy`t>!i(xA0aIREweV!Yck@MniW z5LRkFtZS;iU7fWgm8`)a!WqXJ34_?O$P6BXE?cj=4HiR=pO0aTWfDX@atBb5O?O0D zeY-OI_ANQfq|8|@X_;c9b>!rKOkz7GP8@lBvNkv~oEDVtV5_$5IXi~!xSid<cXQ4% zF^jTF19(<t^#xg#8@C|*qcBogy=TuBwsM~~m{vC<Bu_p*YSJXObJ7=+Mp*_(nU<EB zS>om1&9^JF2BX;9H!C;plY^GJnLOvjiOT9pU#dCNT4wQ_^C9Y$Nd|O&7usVQ^!Q}U zR|gp%7u0gC9Qu(P|B@L+neh0HZ1V2kTz<>9!^gL7Ip(_U#j}UH8|NK@B5}!`-$Mr_ zU;dljlW$%dKDMP_gZCf%4xMe;bcnY($(guaP!6ZT`KFR*B^*$$faXe6z?xW9O_!Z8 zx+!9=Uy5>JRgfJnynj`9$*TJc+2J4;Uqwgn5FXh9{vXx@fVBE*WMgd5;Bl+&yKmLF z!NLoTBLxSNd%n8m+S8}6y+uIyE?T$Sb)Ukn!G}8V7+mD}4`*l{)dHy&K=ZrnNL$H4 zbMWSN!oekr21Fktg>G)b_Y&5v)l<Hi;&gW3?p3<TpaF>em$ck-&$vl|<7ZmTXRY@v zKrmK0oygbq1|mlQYMo1R#dh2~#o6fW-kY5Jo_jEe=swswT+$NLF->eYGEJExzkJV1 z$Z)%(svwtahSat+L7v#3b|2EsBm}R{xHJ}~F?cOf39@P@t*mhqs79P}xfU1NY9X6a zzKNY6ITaTUR*vn*EcGM{ibg4sgr}Wx^D74X7bsUO2r93p66SP2<zMyVdrkm$S_3C* zx&UP~#EmK<H9DW2|A(?#ds@4gWS<&7Y2a5&GD2#3tpo@O8<!0s@Izbx7r%ryM>hG3 zTThIP`8M>hg&Txc|Ey+ztYd@nnDSW9^ywRf(=)&Q_UNENGh>k{-~M8X5aHK59R&>z zp>w44*{yV^a#s)C**u%>oIbsWO<)u0&Ow8Ye)lci`HOF-;!e8W>F8I0JAurVBrh*j zM~gjSL}slC)m<q1rpDHBh;~}u2ns@*4`-SLY62RDgn;(z;q0Xf*~E9@$Wydkc}IkL zQBzPKLFC1V5K%}?z4s)Urt`*s*JIz_($>SHsgZSVi}LREtVmQ=a97?Am}YmfNcX#R z&t6oS%X3wGva~pgWD;ef8nvo5kj_vKsdZ7`^*qKD@Ez57Gu#dhk_<jjE>Lx-Lx-DJ zCB>A1Jh?aM%>^Nnq__jlYg{Fv)bbxy2UEr45b3~`lbumDjpRf)mi)w{VK89-iQ`0G z$PZ}IsA3jAxmcuEae_+y#IdrK=jC%!s^Zh?I93Z<M@R~r^s998tD=`rL0~s^!Cvn) zc-3^&cQ|4vfsTg965sGH3NJ<uZP*k@(nFgINIaaW3m-S2;+qWd|A{93sW*+(7ep~a zsLRRA8?h;U1ur}L!^e1B#N;k1zx9sVh}gVyE6>nDemZvMv!o#qF3D9@53$;xIF{R> z7AsJETsv0JqTOG*#PlYgscf9DX;5u&z{r<}-+^n~8n513Zj+{5*glE&Lf?^m`fbQt zt<b4qUuD&>@W<wuLpy)(J68L#Z`Rc|L8K<rRpK)^Kgpa>e{%3EZGK)bR2d|vSk9l2 ztc`e2VJp+S9kt;*x5!K!L2stQ*|Akc8U3uTeeEZh_nu|dVY6v=_1OF0+qp{kb6O!Q z&voL`AC<qb1>GrjM^%NdwMtiF`gFv5JFl{tq^d!s1%dp2p?Hw9(yEoWYOj5wVp?f> zHi|)E&dl5aRXw+{eBY9d*FIh`z0^8I(&?;o7gSh<G<kF?t}Y#=$}l)jpyEfU=7+>L zVa*`89B!(qHUy=a1z(v!smXII0w*xO+eJQMO`k;Q4ddq!Fe^QfBS&g?CQY<NTqf>9 zC1})+Q8Xk|=HhBimzspW>9e5}LD8kC5elHL@n_(Rej!=HZ_;7`LIAs0G!_MM9RDTE zzdqB*y+S*%o}hjq2p@(_^eaXaiwdn)d`z6*svjjsVMhowWKtmcMXk>5uhWKf{yOsT zAQ3c|CfLa36Wjv{s3n~wmoQn<=(I?~CJc$iN}x%kDLWpXefb*2G-boa3CfO**KQVs zeM?#OktNqYx#I4Ur{MNkG<3kyd0CsjJMf$`;|=8%<z+Ssd)6FS%nTRAp0)EXRZc6{ zufE|L_UME`$`Ymz=Dd8pS>E_U<^Fkle!lE*eXwQj)ekEtCP|q+zpfg%^0PlYwAz!M zRbO-8a}U*)D&IbRA{NUkX1|Rc5gotb{jTcI(tt3dajTFj5X;fdMi@mQ=7wFD{C)lY z`knRlUB>#3dg&4Nz$|6f?ALLO3-vqjiwpJA2RwZix{GKPj=}H}?5N{wBdrcF_M=@r z8_{iOY&o<(SX%OLVza2rpt@rTTE!RFsPC5o&9fhx*2FYTB~48wZJ?%)Dbwh?wt4n! zS!NHN*K{wLy=C_7Ez(2uJzIWh&Y=BG=QT~!8{1AcO>5e6?AR9i%o!vF2F;0mt-OR7 z9X<cLZqA(eAJv&*{;M*Ei8v!m4Hz=Ouo7TGRZXz9FB3?iOsoQ*&Y-VJ%ZLS$$Ppl_ zQJy#pn8P6Bg#81z&?kc#T_<PKU;WvQmu56(L`Plm;<mAK@Beh;UCO;vS4_{;YF(l+ zr)cqs>!14D6I(~kuo+7;2Q`jfoTk&yx4G?4D}T8ca)Sh8FAj*y5=tIu{i>pQ-od|Y zyyl%drd|5byH{WNmm-rVb84C?w4rImi|apm;`is<Mi$+4d2qnE9g9MvtX5^-*h`-o z0g32UZ@!w4O~l__-FGiRLnNkA{N+{OyX2Rr<?jdYkC{N8{v=pKBjsSOm<9ZBdIIZ- zI`ewkrlg|*M&9zpb^Dbs9=fx8|CHs^GNJJh(gbRPMQ?6@@~?-sj+|~yO)qWkKX`&m zm!{K&tp0SHWY8-g(XO9R_1!e*ALWA{V6KPuGkMSa2T!hU|D@35F{bMqQqoMp^^MCr z*PTA}yPmcY)njg}nU(7e6fMoo4~?{1?;Uo-(ydcRiwT64WLk;hH2^`UPl>HAg@95a z7QH6qcUGHWO^O|xXl?X2tFDFTu`|zE?L_eL<mIDF^TokOPHL5HpGjHO)9V-Ba?8Rw z&6h9#`9bl%E3do?e;0W0#hz1+eDT2}0q+eN;ePph-rCc&WQh`@Y*(u5(4WEM7&IJT zo9KOkU_S*5Y+ikCLd-EU2Op_ooxfHF#q30_YO8CjWqk@fbDle*oOt|kR&j)h$DX|W z?&Z%fTlW0&mJJgcvt;FZ=}c$mOZXH1*i`wP^1%a#StVP{Di1&U$ifw!pLMP%Y#Kkz z_nG^}&dwKKRB4|?d_0FH10Ga_!v#HRV%Wr|GA4u5iZ%oNUJIMb+B}CV;L~zQny->w z5ytG8H*d$6^42f${pF6>v&t#J%LI<gwTZBK;-m9-kQ2g}!pl46^-TP7hcF*`uR5+~ zB)bPqJA4jTf$7meyF=S9cB;6xUkEZq)#FPVu8=3k^L+wWwUZWCAx{q~gSE?A;7p;6 zxE%p8j99$M8Q=pZsAcr1WsoDHGzQr2(C|_rILB?8ThISfyj41j-ARMMatVDgH!^rS z2**XT0U%|&kPclbPRY6eB@O~&9-o6r_Zv9fg(Wd=#~@ygrzLJj1e0{U6qyh3mrBE1 z<P%)DO7q8cgm#J=$1O6FI)?ViLVP7V3DEusAYAN}$y7DsPh%PH!Po;<T#+nmi#SuM zBG~nr(bqv6adC^QZwEa$y<NncmI+)uRG(f~t#2mPS1Ut*p45crTGU=4a|r4c^a-A; z6^f}(<b>TuqGttogwpNwl-@!Q@m7v^ilX+bh%$KH|Cjx$m6I!leg*Au{!`37#DKsa z>4OJH1v=YlV6_Mh6Cm9*q=wK|OKzEO2W}myy|DZt(I-J25kzD^SwEutRQD+<z&chb zk0|?YldKY(&B_lQVx@C>cGW&GxAj2n-teBu3l&Gf$m`iNG5BaddHsFDHOhm^jmk#3 zO)PmL)+X$IBDRD*bm#8yS}9Gu@!)~o9iuOqHhON$B(~f;=J>zP9A6+l{KxR6U*X+B z&&F-;t>949`3ZR??d#|<2sK4+fk+%St<jxYNNfuOJ$L3!&g;1|P>8rr3x_;1L|mxa z=1^p((utX|RUVIUW9G!taVwQbY*lr&aAQv=Ey~Gjs0a$J2yNuI`h%ReaXD~YQwB3F zY@ir{SVXC*0Mo#3QEp_b<~_b)!{Zy|i8$7qvkRI+LuZ#-aI!!ydV0eZ_s;9*K!l%1 z?vFmcapU7%mBO%4Sxb4n&s8;hesk;)E{tE<Fz=3gme3poW{qwTY@o_;l3-RiX+hKn zXf<rcaVty}GtMPJ(hpxGpx`|93X!bb!=$Zc*d{iPO~yyqwhfMHhtX+=H^HGecr6>r zMty(DCEqJYm8Y&1&%lObG~#Cw2>$ECqCE5C$o#mXY}*EGxzWLOQ>T8<M&X{RQ`gZP z?X%y><2wxmIB5)3BUC?5c0qFrlso9la_NW`Am*-f0}!hBDy2zXksypNAF*H_L@<+l zFwUS9WpX@)oz8EI{Z9MklV8f<vm?mX3FD+rGDnIauSJ<+$;X|rN$~}7XIs97{nDZy z;nwb%@|Q=y(9&g;+KJ1!HL31t*oibhum^@UaJY=9WFmw}<n$AUz|x#XR%J^c)?!!Q zu;?*<PVW6F``_2*j1b1=jSj#m?Qwym3%m{CH}fyxivBnDpAlH~!DwNB28<Fs9MHw& zK}m)qy08qYqz_yaJ)b}z)fF)guSH11WP^hLHC2`Do6y|S2cLeDHJ)6%_N4MM{QF-% zx%Q@7tv-K-@(Y`AAqFY;2UVd;FP{Yx#s!Bb=FKU#TD<8_!75DlrdkH9IP&?|pC7s6 ziX)$|dFj5U@eAe`wP#5i2&VKGtcGAp;js3o^6E!hMhpp8z*iq;D?&lg>&cSR1#Um1 z;!WiMGY^CSt0YCLs{N!_ZW2J3a<UZ6D2b`@_A2ZYS<<V@2{O!}R)AANC|pNG0(ltW zKPehGCRuGwAOzaRCBZol(o)X%aufVuNXr5O!m61jPR=q_);0~i^40BQ#%zD}@A$bq zU{Zdw>}haL=?Q$QT@zYzEbn$^1dRs0Wne!^yHCF356Tl$XS59a=WVdKEjMLNo@g@w z<u%<DxLo<}E$0zd_SinA6$Ug~b+%AO=ew4i(d;EDRZMref+k(MF?H0{`|jCy^(g#| z+r27(A=|YY7*@0H{u4o2rCD_IJuX+db=X2V_1>P3p194NF?(gIF<om8I=yM4Ni18K z-@f~<E~_wZoOZu*?#?&v6;s5v!PYXsn&~Xqsj<&=DJ#%aS3<W4X?mP;AhAas!@@`n z#4W$1@0HituM3*99Nr#H?(`8Eu+LSR3!2SlhgaeWa%ZfnZ1iYPPt+^bOe+xHEDHul zdqjT5*QU6S=S-ZaG8Y0o090O_HNpx-rz-vdIh(>9)rm#yqGU))iIKWEnFv*QT?A_d zWzop5MlM=3(koO<xh8wmqD7;=q_1p?DR#n37u2h<6DCX2)oZ2*6}T#Ojaa;R#8)F0 z?^!c-H9z2At5a=z`p)*)Qj@PuU4v`tyzD_Nn9<r0B#x9om2^ok;)1mU?TX~n%=KG+ zM`|Kwpe6ucJR2M$IXi`=52O#b0)+TM{O|e0{>6UA<ZLOw(iys8Xxsf*xGVA{*Zn7P zlwT3RQQOcPLe9#32`)D5XaB0%R&#j$)LVmkSI#AKTzXqUX1+E!w6Zzl8)frfvkI7_ zxPJShjNIIeMcWg<^~DZWko8x#{+o>E%I=R#m1*k_%@}PhnO*8Dw&lUy>mhnaF29DH zs2%hb@wW7qZr&Yu73^**`P(08W}sCPGHj$a!oE11uo4#<cCF6+bo`3Wt<O^If)(RG z%@x*lvWjsey<Rasra_wWG&d2~whwDqIW7Y8OW+I0nsF-|lwqpS`sQ&faX~@^1D3$D z!2Z`RM^U#bU{*m2Oi=5fS!g-r{~?+p;S_We2}DNBc&)Ay<DYb&fUyfR(sDv32?~L4 zpf(?>4$DI6vY9}en5LYZ88odbt+&3M<_j+HXRq%=Y}}CJZ7uSpy=1MgSZ-1_jb8y< z=x4V=5WH0R{#hX^?A~<$NminqJbC}7u=Sn^mu;HRZ^+Kl!Y4lJ1#`UV)X}og=F$Bo zY`W}{eOAG<avX_~w?2!4x-`#jjYPJ__fM{iaT6t`;`0C%mh)uLx<HnSR(F7kPXdTl zC3x6EwYl042#|JE{=q~Xo&+px*8$dtLVHk(hX5iNSt%VC2r?D|sRJCnDw^NcH6s~2 z7FP&Q7Nddau7o}cPBgHMgBSq2%a3cNARAKEbrkI`?gpa9m}4K3V(LdURy~86!QBkI zSGPNTkb4s}-kWghz7o2sc|Wej5(<@nr>8Rmvb%w&|6FcaS*|i<6WxDdeSx+0Kh&2z zk|<1H+@*#`>kDyLo1d<3QauNir=u#7|5(}M>3AFWCS@p9lRdjBy@FmgJsoYUg)Q87 z`jOIqfeLTZv}t~&c~SEYMmg{ioTR|a(}u{iTU#d9K`mY7t_=ru@J`Al1WxXK2F6*3 z)f}P<Sk1r=QtOhnAu)*EudX`m&V(&dHFTl92Rf~&MKFR;WeSLz+>i`X0d9OWlTcu& zOb(SvuzPf40ie}5PZbflVMpoq!e$aY92Ed}Kp!-#VFbsjs&)qeoKhE5jiGQGM5%Nf z7A|2{J4-Dx8nQ!ywnoWT-mfHE5O110Xr^xB$iY*A*Pph1NSa~B@BvKuWW)rcZpc7K zS!os%`w0tj4G(Bp>L|bA>SfwMKb_ewUa?l6+bkILg7zUpZd0y)*)qKcxSV5_P4Hwl zXJ0+kuXh`)CZDs>ZOACg&te;vl&o>+toqU+g{D9y0<U`t-3D{STAY?;Gde5?i_;K# zSSkO=sQfARkGCxj2m4H@0;K{^rD(QqsP|u1+0yvfdb8e=Qy(xp<e6e_Ze5->O`EL~ zr<K(J9;skh$*h&Kt7gbleXe0>ioJ*l{fAtVs#P9ik$`8Ag&ACBImL}5rJ&$XGl?ca z3M!@S?SQ~Ut3@eb?*~ODn9cUsCqYpPvEM5VxdO8nre+4bDIRTl$ll`8rRafn3V@@m zKx6)>6)ZD7#pHJ}yG1tVXS(uSdQq}#&4x64if2GgZfd)7VEvA_pHIs)Dqk?+zSPp` zA#|LvB-3Uy_M3RgCEiqn<uCE|p077LL@1bmQAnCrd>EWcAn78pP%xxA^CJc0zy);* zl&yJ~_Ot;KB}^&g02-=wVKG)Yt{Oz{q16f@<tEd*3hbVTSV>QG*o@7`HqRJVk-@IW zsF<`2F0r%-Vu7I_950*n3CkH;b?)n`q0ml@<eLP9+5B!=p=1C4r*m}+`A)Q~c0xfZ zedgRbtphjL1Y3#2X~h9tYNzdVzSgX4{RXJ&mEW*ym7KVT5%DK0^$}nIMR@#mQv1ZU z0NBGZ?#b91+E@)J#p)_eElh;*qCOIX!q-L(M*|T!F4RDP7<MIqoY*mIMb#2g4J@vz zuv%KH7LT2$e0<8TJaUX_r?x%IjL)`BB}Ctwo>G3-Y5GVx)jDoTRjcgh3N5Xts@0OG zWOGcxzvSU|6q4uJK2gd3T<Iu%_%rCQnJ2$v9>L7b>&RC=zlm^xf5nQAl(N>pvA;~( z=E<{G^w1K{LmiTgT1oh|P~1Amut14%q6^ds?S4d-31C<At4aUC<<r1+R;4LIC;79) zI?c9D)up9Ja~>*Zurk^<{v%H$7Z&@kI=B-{v@0q{qg{{>lFqqHLoP2APlEOf`0cdo zWbD~~;+j>O35Wy^8#Oe@@C00e4FgC68i_dgU~M6D#4!pM%<*QV`UYZ$3`V>u8QwVy z2&JG_#U@~V=mev0RL-^e5m~LUaLDK^e;d=?I9kOgID7l3Q7ucC^06M@y9m_=k}=S! z6zT{@FeI+$f&y67aS!NZ)gOagUJ9H%boT6_wqsjj5VlKa+or8sH?6I!M%zJB`*W@M zmcA}&I;(V?C0YE*b%)k<pMr26e=1FdId&!VlB39*jbzXn0w+V_ZQmrzq`!toww=SS z16+|LvZ{m(=0JS(5!u4WBW3b3doioil1d7Qgl&7P#xJ^TUZm?5w>8ZrR0{c3`9hW8 zO0&BB6$SEI{WH*1w`_k#zg7-a`CbGkN3ae(ol1mD1XRq4&egB)S~<AX8j1bQ;&!G9 zej*@aAE!Cp79k@&pv_8;edI6R@k(mXMw)5jrqow<6#IdkoTbf+ZHG#M=ritnZiUpe zoOH(U)4^MCsxfW?VZVTE<iidlQEmMT^~nqc!v3MN7J6S=9E82l%C|vD&qI~4QEG%< z6|z0)_)Xx>BL*5g#XViPUl(an_O`Tjw~-u&#PmHHRh`-g-VUF`c)i`QIwD&t)dMeK zmVv2G(}KSW7Cu5HN0qtt2EEw@+zy>{a=DM!`5&*NmV~wdg*S`PVRw8Ysc*_!0mwkf z_!3n706L9*@T1A{<LYZOkkTv1!T-iXMkEn>c@8AkCb!1R!Xt5&ilVPr;^4w$NCo4% zF2LBlCKiiL;(Ux>T07`VZG$|2u~1noCH}<3ftvE4Pm$-M3_nb{D8ogkKg|Ebl#6b; z==6vAC3Qh0kEAdVmUz!|wFvmu#4qu$abA_PxtyKgD&_uiWq&E@PfR*i(=STtJyj3z zZQy@;{*6=o;aE+_x4;YRJ;ecv?fu39GUE@4+Qg%g$gFi%g43tIt43HDUVjW`GLJ}N zxv|!$TsmG9Yceh)6!?hwyI5fUu3ht$2Qz!7Vfpy~|NS4f05vQN>=O4O&RE$q#27rI zewX>r?YTJR|M0m#EDG|u|L1?|J;`_e@VGan_dtD2@9BRyh*zjL2hIuOHU3Xc-hUE` z@snl#*wcPUVtlR|mv5XaC&x7|=}>-Y*Zj;~m-Y;!<`$1#x+`=3F3^+XlxbytHoa_c z*?xSsQ0s4rpC}Ld%cSYYy8d}`(40AgPO^u@rT((Al~nNf9B0^>GrsQ-v`z0?*=rX7 z`=hvy>OUI?00)ibB}hphVW)udW@H$s65JrfRT>*a0TJ58AWHF-tDW8apUem3`D8ut zP|p>r-N1ZqMbLeGKh=7Fj;qa;lXNKO(M$fgVF6o3CIwb*P{54}q_aP`pNisba1q@} zepK`xocN6Iot*FlqII0`gmZeF@XY()y!6HX);%g|+6Eew_PL&@x|hMy(GyHMywLIb zr)X9w(s}WXR0g`2%RW@Q>t>Egpwa=fTw;eH3{fJ}WYCdB0VF6I!d;`VA+(rsAr4kx z^d$_h@b+k!UVcijK_1Xf!>@)-W7k2OG0~lw=~f=iEl@Tn57p2WM61KMr|n5^DXc|^ z^2GmQ-;-^gT;&z&)syrkPZ(T=5v=5yHyT3j^aA}xlahx7{IL(8%xNkitC5o>O*v1p z4`W+$N^<Z=?}zaV`#JLU%IL*jNFKj@yVp^ycup#loB=YOVwTUrepHzW2B%6kf$mE_ zR;~Ts*m&g9Ny<^`qqe<r^i!|b`9@EaIJO!%h+p_Cw-b>WJrY$G&)S!N>kZVk?B2^v zezwn<6Ctvt2mK41SN{FOW8PoAILsv~)zV9}VOqwk2i;v?mB9~jp4WN-Fsbwlkc>*4 zZbaN5fX!XtkgfPs^FM@dfxTW&Cw)`cJ^tH4<EFPB#E10~PAZkbA+10pbFMm38;}+R zFK|IMgdKP?(@?4BsS@Y;A+lUhnQk9{EM-W_OZ`i--Gu#VIYo)a#-H3E)mT-^2;K=& z8$z4+*H(K8CaOuwCkzmE4D-?J6$pTSbWK+r`5`5{VdnKShgM!Pu}&*dd^pLoX~U42 z*UxD18qaGC-bnS6vnNfO{bY5-YmgBqn1Jh5Te<G8U3Fu}*OoZa`~yo^aZl^cF=HJi zwd2SBa#ntE$kKoE=t=!8!D2r5+Tn-T4&S^y=zH^^B!tS4EWk<S3(Ua0ixQv`qA=lr zM*g!9<gwwRLHQt$pOusn6y88CiX8W6c-|980K}*9SaL}z`P6>s$MZ>bfD9HKSq%)} z`lPZKCFl^aOAU-J<fC{z2E{|P${*C1l8BL>F9d~rlEBhEh?WPTY;p=MLTVk*<!U>i z4!i+WIWgC!R$r9h?hT+G`v6P>Ax)!n0WCpqos<-m-{`F?2fIhUE)_T-KbA<KhT!8_ zOZLdTFSzvrZvwK|r%n;nE`g{zo+2XhAH5Vc0RF45C~QPL^^24L4kHIHz(ybC^BO|5 zfP5FFVu(#V-!8tz>+mC^Va*Tw{>M5RQy{sVxQaTdPsK;TY4Q397$LkvqQV={8zb?8 z-l6fq@HwNUcy3mlsDgU5M51p5gomTHzo6NrF^Gl8hbcx#`~g2K>j$wA(R~*;XMP(? zzqsjOq=z}L;_T<}dDFZ0B)|q$#X=ot(QCpoW_{d#DRxarbDqR!Jrn6$b3PQiX8w*H z+PBW#tX-k?0Xp^6{2i-RX#CYX=1T$CF!lVN>P}-+)e)F@<a7Q^T2S(6)upre4uZ3X zq_fl3o$S`1T&H}a`-3NV`;v1<mfRkcr>&dTb4VOdpK0s5+w(Kq_UviP%<q+@w8IX` zO{K@_tKM}?N>ERDlM8I>RTEqR@#tj?-9Cm`wR+b^yQ%7G`CP~JzbZcgE!wtMj6lHB z(#Cf7z})Dk%cuTG*rd{?Yk_r!5004@IF0)PVU6WN3^HA0%g0=W{`$vTwtS4>)Dv0F z$LEIpgy8{ug<nU`q<c(1j<<zpQ$JxpK<rM!uRu#S(Q1$711midY<;^!qd?mCpS%cA zL?12afV5F#KN2XSr1{Zg(MHgQZ7rK;`v{Yd`XL%+z8^`vxPBCGiuNGB1Az>V4_Q@^ z`5!OplB=RVlj_;?<H_u;q{^u86OAgTe<TrYNHQ<gt~L!cVJnX%m4t&v7CGc#S{H)d z6n(>TURULnq51{*yc^nLs9+qF2!#r)VCr1_i*z{19|lSSFfEYi745x;QrzCQ&*wH_ zJF6@-uWm10R%{+%E?HKRUbYv?Vw1^YP7%dgq1qq_I$^ju5OO%eH>TE_N|%-Vf4sd1 zd|O4<Hm<ov&9ba6S(a^exmQ^(ag9sd;y6yRQ*nABq&LzqDG)*+1lRx}kigPg=zYP< zE-Xt4WwUg6DS@Rege)&4wl(>l8QEzh`@Z}Af8QURt6S&J+&lNonRA}=oU-Js1=;6a zyTp}fC@Wn3rJU#whC?MO`SLK8DLi~urcJh{x-&gF&X62YCU`TN(h^VLb5FtS@)+Q; zlUIcvNqRuii~Exvk#)fpAdZkk%+%rwUxjmn&@Yf}L@Uedd}6%xSkfZ~)x$}T8pKhf zhtIB0N_x-cHpC(HS`|+YgEPaDT~7)u$p$SEG|D*gK3LJ?lHGu=s!n`AEcVe3>{kXX zcF<)M%$y42hH3D3C<4VlxDEFiKMvs|;!L>2m;=~qVF_7yoEeTwy*%gyv0(Tc=;dK3 z${xPecVFo!c&+y>E-Ask(lPCe#nzG~H<!YlJxWP<{K>Hd{zGCxDL3<tfd!@P^7c{S zDqb?Gy`+4}s4@MyC8OGxl%gEe8e_%@d7wCx<?mc%est+M1VF4j#-sA9A{!gbmEkFn zY(T!~Wsa9&?dD#9)2V;Nus4JBa!+-jbad00Je$tq$q7yPY%lG}fIU6hlaV2S4oLng zp(=P>!5tY>?(136T9>L*<+w9_9Xt1a25Vz=iY`&84waS#gz7|H?E5&r1apdI3LWxK z%wl=L*ry8cDFg~&tN~<M)A+pX{~Uk`iwrC_I8qFsBVLakI65|~LaK9EtC(8K@Ju`* z68I!!u9_-PNUT6yCw%Q{=x#_(#=<3C-(V|iX`0!#qGf$m1$fvk^-WiHZt7al+LSo@ zj#Q`TvOmwh;}3V-IP-<eJkHcT^!VOOlPWWtO`TJxbQ)VSs**0<8>~KW)`lfDy=@zJ zE}WE4w+t2SBBOG<+uEj0o;Gsiv_0QnmDOC5ood&s(b;9KB{`>TbpEX$5c!W&W|xny zt!_^XjH;|1UEbaOBn@oqm6dS<*aG8}a__dLRb#3GHnlE!*!W9G{zw$q*4CYyGi^}E z;#gPCixL~<fHyxWlZzmvG3sHGz#Rq5ng>{k4-{gCRpagxRu7GEF)~_a1qQj)n%bPl zTxkpmJMP{=L;8HVdMKF@v$y9w?!s$h{Svu(Cn7g*F0<kfP1H}x&I<=1yC-B9`$1LA z+$;_Vrcd6||6JF!ZQG`ihmfPU4q1AqZ+pn+pzR&kmrgf2=qS5yz*{RnUsva&Gd*=L zZJWjj*m35z>5QMf3McvO165@Iu$3%XFRPDy{J-cP)l150h)4^7i=+u0%aE*oi94bJ z`QTVpK$;139=P#<k25hxHBkZ>gTNJ;Q714@wqAm(CpPiIvxI$<O@Z`c2wrvOjIddm ze;YYihy8*4ll=UgLAIo3nC_q>>6qJ1nJH!^*%PHVZm!bSg*B<VX*YhhIZdB0WCaR! zY4e`AVtz#HRGK_Nx117JvF4V8bi22}>nre*q?(%IiR(5sHf~xsvACv2R!4rfb<4G- z8oA)1^_!kHq^DYC)2)jyxWOpd+-b+Qv>?*-hk=kGH?WoV|N7dVG+ljxS(jfQ?^|{K zQ!l@Feqtyg(Z2TRKmN9VE3q&y4RJes-bB%op5hJA&)Y8=9kvo;4UfL4oumZ3De0SE z+FVOW)y9|EvxE#ieh2ziC9>69fp8B2X;Q-HgG?`jgC+&;qZ9;#uq`~a*b3`<d{1C- zC5azOCuW)LU<6%e;rgw+>DOaPLU~t?l^kQsE!WboTcV#WnSIF~91%ZVGHc^5`gOA; zFPXgwD=mAM%%=aqFHKxB+c|7mJN-wCbaTg2GBc$hycz#oY(4t(^vdxI$;{aDoo==< zJ^I1)%0H8t?@ccc4lnnTncRMHQnzARjfbPP|AU4_5besmX~1r|(Tx})eTdM1D4_m7 zQ^ExQda`CcaxqFtBmY4^_-bU5gj|GMxOOP?aCh&2qNkCLOD{#n#rEW}OO}j9#z6qU zHpdEyDYWd{IAsiB9EQXAc=$iGJHRo33^E)e56OWz`Ty8(NBoFZPka~-lZhlTtoJrI z>XRS-;o;x?-!{ED;B}1%T=n3CR|OlLp5W-ki-lolH2sXWhhkpG-@J2ZVW+Uuo<Js? z&<)VHV^flF<g71yVENgVXfmAFN9f^AjLtj74SBYAEPs41F5Ay}0rPoj(S0!8;E(B+ z$A1AI(GP=~4s>)301{dvLE`f8m?6a7P*hof*^HS<kwZ5sm=k%>T8y{5PHexQ`0u@! zesur9gZI;q?!A}zrN1p~Yg^bxy;!s@9C&R$4BVdiKwX_!k$%7h^p4o+c(eX{>0SI} z`U1c7;Av;G%b1LbN8N|wXj1W3s=%jpo?;O)$?Q<<RqR(huXqDioHItSGd-&;(ijGC zh@qG(O600P-^C^ZMWA{=vB6wbXL?%y|33ab%POK=%$7%Q+cy1V9FVY8EMa>GUdHk# zpJSNa=d%xU_=XLw_(0<Czz)6`HnajVH=m=7?Zsl)(8{^bWkvGB%Z65b(q`PXgY6a{ zKpB|8Pao)D%kOvv_}N4=cnhC{>^WHtdh`Fg-P|s*l;e(qiU@jw6~HmO&CMV+Y%0&` zIzY$+R0JQai;%qnwxvW80Nn@U^e{3y4^=N2yY#zxmy^ilp~@B6!OJhF?{8TeT}z*j zeL=)@6RFub?cG_^@1i?z-+h<Tw0N8=v8bWJoZ3|1e=E?<;c&w6QdesGV9b8^OVXNs zFrU&}2U_bwzQ(+`KtTLUy}n~4!>(|A1Fy3mbG`9k2V=SDlToKLYYs-PSj7{8jwAu2 zYy|ie|LjJ9evJUB8f|tXfObY`PemAYLdGCqNHUA0HG<j;t@9bN4xvCS-+jp2SFtiD zfcCw&`McxvI6D9p?YQDk{=_}S*`r5Ky)!fCk~Nb?kIm2eeOpVouyxd|<EZbPX(jGO zONe5_#?j*^D1rE>t{ZkiLxY7i{}$eS!|)YV)s&$~fS4d^sRWe9Q%h)H3GL6*$cp10 z9n#T@_9Xh>`8tt)q00e$&;j~MIX>^GEtsgKpNK{q$*vx_OyjqbRIvU6LFMw(Z#8Bs zlLPFT9Z``%du6j?31k?wdZvj%ujep)WC3HF$^=1)goiB1m_ZBm#KXp84&ukcXkZ75 z8Osa)PXT7jYGRaE{0tVE84CJ>41f)&FSwl;%pZhw?0=K6O&^*(#;fzBs)KDyb*Uzz zyQAD-Qz!X*-!#VCB%M}YE2U@`jkP^QEj0BHro41RrpBd{L0f2E*lI&s@r~sIa{m!} zhcZ!BTx2rG&uW@rxvXbe*62l66_kEm^3HKd<bChTaTQLDC{8y>g3=Il+mKgW+d%h7 zdRwJlDF{lX%jMSUr0CJ{>nv<r=h9~A)AB4Ykq^iZkJ_5&8<diBwWLnDp3WJW5nV03 z;MTJ;v?=a&vs;}?(3-h7cBLG8dTDTC4@y)T##c^GA%GMyTTU#;l0g9l9uaym`y-2p z;`Yo_hB%+EVH#M+y<TvWPiycAi-=3|GaFz3M_5Xq`=-_5kaxNd$Lptig~icF>ZjM^ z5ARdNeG(Bb_9~*FQrO%;!8pod@dOc)f5uINVgG4HdKjps@5W~8XjgnIe#l+%<l>Yr zH(8dNO0RHtRiu(M`d;dQrXrQTN77O&y4>^%q(WWhmS0UAnb8-{%*2oUS|+`UU69(z z4p(*JDw5{ztgOWLd$_){id}-;%ToDsNkM&IflamoeGin38V)>TJ_A$-77m1JLDywO zplp^Cn;#==0lqxo`cLL-72Zh{lA>P<Nl8K>Cd6NsmST0JQ1bZJV~@<Qo4BeGtPZJJ zfpPC#w<hHAG$uv&rKJhoNsTpW@;yl-6F~=kJh7#OBqEyXrih?$3afvf_vq2BYd+Yv zGT*4qN=^5+U3UFDKl>^Y65<?!-&a!X6Z{UXs~i}*f6?jE#mG@)Q@GIvHmhgRQi$v^ z6HYrAz&C~Zs~|yCVn8bLWE4jC7v<$^=h5196Vl`fvxq67eC#rNJ`IsBpL#S|s$8rt z^d5_ry6B%=K7X08kUW`Q>hwz!g-D7k+V@?yx`E#3%cq_f@sbfoa_o4f@)G$;WP}4M zoxN~|>x#vY!X30K+G`v=u`F7hGs2XWDfjqWA|Pez>&eVCjmQyt%O;LC3e^dQ2*Z${ zw0WTaaMv#f(8MG?i>qVPGj6S6VImOw$Q^*a2qHsgQVkMhLj(>yCcMfViClUy6-;c2 z7KyKNH;(jd|Kr%h4@s{KJbs*Gs)qLTBe644aEA=)b5gFWxbED7eN1nHCKX`7J2tO{ zz3~(zC<uwzoHv=h3LfDPlf?<B=#T|^s0`xZ>KxfOfBedAjO%*{4vJU-mXZpah#;6h zKDJwoX@C8B{37XXK9Z#|%;zojyXHGjVnCe->A_tviSLbpLiYxe#KEKY^Go}B_@%6U z#|Mt5s9WWifC4Q50ud-*Gdc_esYzu&3z-)GLLf?6Bqf9{d^k)D%Y}B93F9<EE%y46 z6T^?g7n6TX{_3;w^NT9ylghTX`ag|Q`o|Y0_~adA>bmXQ0RaBHQ*E)<IFEMmU*RFL zRv*Z(xR1KYov)pC0ljtI<eHkvf<>5fAsslcX@vYB-PDv>KW;vKZ%YTM81>PpdPAw` zOc*iVDb9AS-%gjKe0r6o#_3dBl?whF{gS>jd{cg<Yu)D8Mt#!8FVK(Z<QGi(_18&b zX%fskP0!)^Fq`}liTS<Lc=Rjph+zfHOAM&WbP@IwQ$ZP7ObmhHRSuaLc`|E~b+88@ z=k*Kk&O$F6-+EVZ70<>>Hg29eb@Np52peK!0U`+-zZ$V1IV^J@=){}y7x<RdB*0wL zw+kmu-HiHNO&=Do1}D9WeeXj&MT3b9tiNHhAsyUAN#Dd6u0V1kRxZT~yyrbdvX2`g zDJsPh%d;PRC@2-}CQIoN;bF8p4ptR>iLoz`eQ`p}R%#Khj$Kg68zC>{3C&}4HOE?F zwT(T$pAa)70^eH4%Hci)UPK`{!w?(*wGIh2V9-Nf8uB7&VkikH@*#N0h79`}#8F}F zQt?Kh`lz(O(%|ss_Ec6@98>fR50OsN85+)yRL~p9oC@C1+917~-W{xs?I&~S4Q#)> zl*VSsEu=c&$(`k>P7MV9QcP{++hR0~f^;805%MjyMX(~^(c_0d8`dYd{VkKV2{VcR zb=}X^{+|D^@-fc!GoOKc<bSIEK&(}0$SI8;YSVGmm-3gen<wKv4Gq?VssSV#9~3o` zM?Bneutf;8v_yX)huQNTxFbj>;eqwGw1~YVKKcQThq`!&yt}zM`a$c#=IAe=d~YVz zSfx6m6M|Gvd)Ylt%K8b|fS$&B7lN{4h$c3B1L~QZ;?en_!|@p*?+t7u<}#RRihK&l z>~nYzoa+q<G1zd;W_?ULiwd4pv8AXu_(l6-*pP!|Z2-XDT#Bq1#f#g&0ILy8y2y^x zWOhP0REqCnR9hKN#R&vwNC%4ePF#ermnEYP1(9p{#6_c)M1rRuXV>sjTf>pyAslDz z6^~QIXcPHoSk=lnhcrv1%>HLW5`ShB(_;~^!}M6RET*g4ZLr5+o9nnxXL&dwL=9i@ zxtU_ib=qvA>_evFw3(Oxp(HA0UG{x8B0>bM@6nA7H@y96^0iBEv!$556`k?He#s$$ zBJ-imCGq(YOX<dIYJ{&d<Nb*f|JxEr`_H!;ETZVQCV_1&A{@0vzslV?=SrtqR42Z% zbJ!zrG_K6p{&v`<7esaTiaTE_%s0g;MM-6O+0jt0Q6X$a<1QZN(n^|vzb4M`+SMvc zLXpj$t<gz9i$X{AN>_rPGLFsd6o{UHXaO6JF)X6NZU$jPFTlHpy3RsCG5m9Bf#E)f zrMkmG@+YDKv*fX-=N~2K9nBq{v-ztl_A=YV4?nWy-YdRhAU*koXEsHD*!0XZn*`IQ z=;1B<j~?B>g&p6rv;S7}B3za;Ja>`#*8ZJrFMB`2;8^$~;t^mSG&2Q*)z5yiQmU9W zaB%cPXw=!NSZqg2&~q;qW-%tqVY#?byP!X9h?8EKJbf=?e*NJGwnUw`h<lFhuc^d% zmiid0b#y}Z<k_(b-@KL1<O7#QslX`dRQKJL8-H30wA%Hq{YROghHP4;>QP?6@;ej6 z12Qdy`FG$OQKCIiYsFrdQ~0TFoULT+)_afaC|F#u<H)^R$ClW})d@!&$^|;w>sr$` z@z39X{==Kk)j1q>&%OD>=imQ%V%r)Qsb+o~HYUdA=RWR9VzDFqoiUS(fY-@vGDSxA zvIdnj7Df~EMF`zOHFS@C%mWc4v12+7?T+#6DNXy>6gzF-uKCry9LkTVk>2Y0yV%}n z$pCj$KqX_}(oyakTMMnFoR2K5BVm3Vz?bB)GBp@*DQI4Ny2$9NSdc9rVBo#RSB8l> z)6ZB{E69*Krg|$kH@_6<i6RXhSa!ug&lSrS+?Q``ZA>&a5%ujDG>ck5L0$x?Mp@p# zewLtR{w{I{$EYdC2FqzrMKGl6QH6cmi{IZI?G>swzhAuEbL}j@)7$Fb^;Ur6*1CO# zsvceN*iE<?dVm}Qx3T_rgw8;o`xR&t92)^1oe#kaRUXq~4<@-1mk5ZB5kN7-^7{Z% z2*(&p`!m!8VcFVZhuuLZlqMy)-VSYPB~3QfsOMjL@h`t`_ZFy3s`TzZU9L<pDO-lq zoAdJX%<CFOD<8oZuPbh97@n7(OQsKR^=X$sIIBXhPEZ#3roGgE=*Ov&Hcq6EkK7b` zJK2>~O72so*~A-$hI!WSj$f*dm#45CJhI1()Xqpg35NmxA*CX#w@MYJYv0f#MdXV= z&^15MN7(XV`OQ_Y*EbX-t`=Vz?oaE#OX_0($hxUx$A1ckAn$8D=9u#?aCR!UUja;n zg89!`(lx}qvg~Hi6xf(>?gVk4&~D^j+ZRg^cN>}fZxX}Jq35xjYdD`JhMSCYSys3+ z>hc>72&OKxfKXHkS_`m(w}K*O?QgBaq8GJrp>&=MZZf^?-z0&X!z)boq9#avb{oz` z0yzA4MqSSI4xf?(j>p-aJNerj)B`0?<H_H6OaEQwH`E-N-%xX8eq$Bq8Q)H=ix+jn zdpX6T4mo-v&=<3Zf1BuywHArqSZhbcTKjLayy1-^%iF$KmN)iBS$4PBvjNr$x~s%` zqtPSE0aA><m;jP)pII&}3Ya}1rDA(@Tl7k)-Z)TRDC}{(`;Pv32f17#TO-lo2KmUb zH{X0y%6mTg)X}oC>*-q;kOji%m$-b5;b0Rm*A)?*Dx)y72gR#;jw=Q>4Mf{Wqno@f zI9mH&sg{c~`d+D#kMsfY38iT5?;m=IY$1(*Ba9<}J+~PCO2zDjia~S|3#n(5Ug+`| zc$nm7tSB*-6vm9g{b}iNlVdnM+fi8fhi1qpr=`+vj>ftsjoETmK6v$;PG_Uj={(>Z zk#xWr#_E)tKUhuQrys2T;N~e#XA?ixgyV(HPUo9fKeUovm)1D`4H9@`ymTcu`8)`- zPgHp08XHb_HYOcNLQ##8B&Til2YaVX+55rj-yFE+4T0jKyc;K7^Tr$3OuBKfAFCLr zKoC+-0Y}qm;3B5hu`z_DpF5d++#G|$au}@Gv*j7F_vCQ$n>^%RrlTH*4%kv8FMVc9 z@4v}N-aj}Yz`FoSZx9bV#Jk8?rILUt@j-jbgmtSB*pgxJT>xLg@UV<EmRTZB{bh)` zQ@4kXpKZSY&76Ent1&?SX07kj-|jnk-now=2Zq8;5Xgsu&sf=a=8hAmob|{lzO*<z z1>Yd+t3iMehAd{OJ5NWasfjxRE2q+6f&~o@VDwgiIzYI}`nFf4I6(K(sdVpw17sTb zZ>AkPa1L21ypQNuW&?Tk+rQs92|4CtKd)d013=v^?Aik-%bNaMVS6hpIF7~Gq7>o9 z6D6>MqF?bDFJ3pZU6QMny<!LE)eJktcyxJHhw_gPIeZbJyy<BY<v&6X+t?&n`48W< ziS+VcUM49xZW4~jZx59@#J&#C0Gm#Shj2;cvELT(HZMjL`On~uP$;uU4dJwXgWQ}L zUYQad)4IYD6H`7pu7^ixBM&{;O4&X(qW~Tx3<DzD!Od8wfylotN&7uXd*>o(WHHu8 zri<P8Gd6!uzrH=Kgg^At5#@Aid&x!b(D#1NPK^;O(#H0Zf8EcvZzqo5NB{f8Gd^{k zfOdN3_=)6a;1#z)LuJFL>RcUSRDOP5zEGW$6Yb5<!}~vL?o^SwilfyfuB2qroiaCt zbSEeAcRc8Kj74&CW-w;H!3>Jewb*)0A%x}#N+o96Vp=TzpuL`a$l?igHWnzyQL&!H zaBXck(X(y(v8$$UJF!JZ`WzBCoP3V{j~u?0_4(3nZcd+_U(bmCzOx53=1EH@o3wuW zcii`8_iIg)mrgQk0&EAJ!7hzH%9g^V(Moo$@B)_T3+#Cg^#wHVGyo9fCS++$>qaF{ zd(Gq(_HttW=+ockz^8cE_~Xy&MA?kxnMr26o<S`hC7$VzWp|G~J=~e=>5Mp=1)QFW zv}Ni)yE%`{mBC6LqswNeLdzeT5(p=%!N=PeuL}^dz$GKBB<8g^iJ@k;DfZUFksijn zOF!fYdIbYiD;S`fe!!4wkpEY<hNV~NM*wI01qGPF6n<d(iN8N`^XITopow^%OMvfP z##!T7fw8xaTfr=W+oD@SD%crYiH{WsmfyXf5e`{rynZN=0l!IrjWj6n(|!FB;t#Sa z;C8s>{N^D2NO~oLd!733JZE`#OqB&Mc}$z+3KT@}i6<mIz*3Xax@Ti5qykFQ=`S)` z&Qvs7`z%w5l8-BrVbkIG<)QwP2&9zaH$8??v0$o%?~hqF;bmkLzNhsa>EhhYx#Njz zd~WW*4u`f}6ZReUC6e3dq0=isN9W{>r-#PpZpn#$>F^)+g*D|GoJZh*I<@U-sKqH? z7PI0E_S+cWN->){4uaTXM5?h_Bk5t?h^&qta<QDO0-gu9&!_{NX+{s>unQ;9xxClo zIy?$qhr85`%5w1Kb)XK+xCG&Y86h(|vZ-<`=^!&IG15`Iehw=*<uf>8sW>5dW9Cbr zT=ZbiV@-K!N!kRRHM6~bWW+!I>Q@$#+}7g!kPw%h9sS9dtuGkS-<Rn3CrZyG`bW$h z@z93;`V9{~wBhlB5hDtO?;g8oZh<$`m8R6%!ow!bxU^~EE7y$wIx^Brktm})od#2I z*1P`1{(4r%V}&C|6h6i-m!8@15K80Y#7Vpp%L4L0qn%{Xv6v&68K(#;QHh8vCO`_# z3VJyw%v?&3K3~>l`@|X+YFwp0gYFaSMX|B^Kfs@p$S1b0GNC47`6MnrRFo2ZKJwb& zC?X#Jg>F~9sGOisBMuELNDAg|VkR>&=+6;^Vv_=rJ4LqJ1ic`ElTQvQ1+&dB8*FzR z+-$pJ{=AQ`qW}H={R=Wp9+LIxs(~NB`Ro1bn<S~}(m(%${v_1e3zqMH>g`)v?j3Rd z>q41uH!iyU;Fh?!{yO!P8{Rrh%$F;UlU?VR<{F#V-uL>io3En({NlNbs)To^{ppsQ zRxNCB-4%7voZRnFGw2kj$WZvR<P&Jjm@I_{X=u>ql12dua~h>6m!L5b$#^qjU7yK; zfqTa%(QdQWmX|D6gE(Gmrrm8Z8%j*3a%mcq7z2tF(rYaZyWQbZE3H0Dy-w-WP`H09 z+ZEi7G(^Zz42i%b``P5XIDRaq*t}i?y}Vvz-#Nv+q)4UJs8}i|sqa1Gc`>e0)Wvhk zxC8d=Qx%;;!abeL+X&qfxvy->6L8ftMihRl>@p{wL5Y?0rb<Ux3(opvdonRK&q$0L ze6kt~rn{&LdzT0fIRcFzF-2@}7)DGA&){4QY3&BbKMQjR*%+}Md$~4g$fe;{#K@C} zL8IucW`oC)iR3wA?`Esr_tMWtk)v!i`bUrpRk1ay9z{~_jUA`o(BTu8u)Wp7!}y-i z2W#-Ne<v2QRavdH%2?aE9}7~WU>Fd0HT<&wM4jVNXINS}*B+~qm8EDI8mmJ=$oPtw zUxm-J;CNxts?5U|U>0}s$DxF{lSDCvRR9!#<;Fm8RWWZw^|tS~k8LCMF=89~Oj`Q< z>&3&&qxA5@*Gu^ErPNfvG<iO&G~NFFwxk6y0-FW;>rlTR=~C%B%>BCXwJ@VE>_o_8 z4O<b<qR1@c%n%MX7@oHimBKEFXlAnW!oI|f=J@tg@cA=12M2rrbIcGQ+*%HkpJ0Sb zE1m@z^oA=eo#E%6ym(H$Mjw~f_+N3OCU4K1kyYTZTs~*)R8)|~j*ohKWL_w1Mqb6k zl}}taMXycJ2eU6-9@l^V%&h!G>oxP*r!cI{4uqEbw4HM+v_5BH`UoUua^;nYR%dBy z_0;n>F1#_rtKG~V*5yPu%xjy`9kL}AYLfDUBMVbqiOD%B;_!x=DRZ|hxFN%>yRv9d zR(!0|;$68Ee#HeW;)ZD-41FM|%q&@CFeD=H4%%J>TAl(-t`J&0_;|RxfIpoOqq$=V z7|?wFSlII$d^Bvo5PLN2ak7WZwp2<6?^%J_)gN{ruw>*HOgDdeH+vWgQ1oHG%oDR} zQ!kWv*H@;b=;J4kSa%mmZ!JkkEXXihy7L8xGBGeLp`##GmQ`Yce~~Ufrz>T6vRiMs z?!~z+!wU=CQwuZeMumMWY8Ugb6%Wuu^-)?d&5XMVc`<LK(9^@_Xwgb%yiT2%AruWO z8rd;*%z9sCirQrbKz~|3Zb!62Ts$PZBO%~1#OablveA^~2sgH!cfl3e=6I`N%IpGz zUYC$$!XrihI*R_Ul8-UV0ulmoC~wTOh|gf~8yI|~Tz>?o2meJjJqGsumh2+GOP<$d zNv2!g;$LJh;hi3?F6QrIyI3eM`+bXUNw##&m7j|46{clb%I0Q8|ALcx@GoY2;ErIn zDU@c-EknwIK|P4usj@JWQ{b!QQ{|I&8|>;saEHNPrrNXj?}NdiN8oRcJyn<vdRR?( zVh_F+a}V~k2rJl&q}B3~!PzgXM(m8iDl!+@K<owdFigNN^srhd4?u2|!nzKLmqa|U zLF4m;t&8_86*6{0!okLiUWD&Z^kF5|Nn^4RIpm3r*o#RaGAR`IeNGg2#npG!$K6E~ zU&KVf%WbT>w|yQzA~Ull?ye{AimS=Y91;KdZESbj%Z9v}-K4QRhcuSB$jqE_d3Ur+ z*qa%NWJae6cg5sQly%f-XIj2MBI&}uXm@&q2>EFO+bwh!oafCO2tM%yQ7oocJ@Et| zUzW;0Lf(`rMk0GBL(8c2k_xeh-Vhc+4`NFSD&=Bh4g>rYN#H~=7Qpn5pA@8bWzO45 zXofkGSBashU})VZy>jhNgQl{3$IWy8G_&Z10NoohL>y_xB%NL*C_RzZe4CDpDSW|H zS!nyyjO#CIQriYzQnqA_i?rnB*xcEzRg)tf8f{bVxbpVW@_-`{>1w{9YFeCdr|%E@ zCvNR3b1CUz5=ZFI#6bQ52b-+bTjIspo}gY7$Qxk0sH87LA{EgW)M+hi#(YWI>3T3> z#2HgUWxn*9^yGMzFkl1>NN@FI4D)4=$aW{FpoYi#;1DkpIwhAne4008P=L(}VIv?- z5}<%EmyA+Dd5k3cZu@)KltgCQH2#w@MxHFot;j;;0DARl#o-1X;u%!&xf$=A>xxtF zx=WnTY+x}eBB6%|tnlS;*OhSW4^@p#8JH(OMjwD6B<`vi`bC{3<n%qFx(9OC0V&al z{F*Vwb=G?U$7DtztC4AxK(fU^76=>Ri8s0K#xYJlF9t6=#vq=G-UC6*5(g0^LktO( z!Nozk&o8&l^KV3_+~}XzCj03=!OI>fr--K?aK23%+akeNi-@tY(m)i|4)4^Nj%0ds zvSa2{ucMkM48~hWf0>?6dP4IX<<J$<6YNXrZ@MBRH_i*u9sz`LoJ0OY+=<cclOTLc z9;)ccot5X!Ei23Q=FQ6O5fq;2SGNqd{U@~jU$A%OgV_qxQaB5EBL<}+Zwd@D1^-t~ zC*5bXn{<a33QdD8*Sk(_Ir6CgPc4^U1{dl4Mk#H3e={Q(kRIQjCN<6vlAery%(k-{ zn^7WGGLV;mx7>}E=grLX=9HD?c(H<(yQ5#-dWsE=jkRF~!=*&n3r1iNgcqQ=EWHKN zn8ebY*cCCXflYA3s%8MspW7dV(KDiOR|<w4!L1hzDMUJ|OIB&=L1oA@b+{)KnK}Qe z8$VVmw;kTT|7QB4*PG{d-%J*e*27m`d6+&*uceQ&HKgB>{(0~0+4r(ELF`x3>a<CE zdQ(xzGkmHir0SUd>Ft5ED}LU2DQ)-Wc=0DbaasYbywJWYQN*c5@$V5i=(B-ud;)#j zkGWDgV>OIL<e#N?BNckgKZ=emvUN5k!8$apv#twv-#j0E!Xq_J_g>gAqv1mD^d`we zpAc5$H#Fq0KCvKk*ebn&Ers!H8NG)s#d@|x3_Y10m{BYHH%t7){u?&?<=W{1x;unI z@kc%x{Qda!Z8YUX`|PktGfue?=kCG08G{q_|6TJ)(;00eP5wCoZ^!?(b@C3nJJz`V z-K@3JY}U9L0Wv#uZ1w5QA-`!JmrdWomrr1EFNB|AJo+i5QEcEH0!6SfmxHL-<nb(0 zi{UY2a0Hg&6a88&JmD1rT7(VW#me)Gs+lP1?PbeqI|wJiSlL_E|JhlEmw2xyt)(a> zkuTfGg3AsN|AFy;N}ZRPX>iLQ25Ko&Fz|Okjbcz(we{$cvr4V`Oln<js6=8&9beKs z-;>L)K5*dbt5(osC@pn9Opi=Pf5)GLi+`=1|Mof9{mf$XTPeo$KmGt9)c6BYo%tN9 z$Qcj9G58=Vi~6e;hR!0+q`#l?B(^Qsdg_Bnl0OL5{PszN5;N$a{O)gNk6U`2$?y3g z($n|LDNo`}-&4zXzVXJ+p$9Q969&83cnv%qQg!5j2bdwOVW?wsPw0xO(-)XJvzb5z zB4aSg!{3?aKI!^BT?S3+SfRRoacOSjgj!c~nY6f_u36E&yM0n?UCM1~TEoBsh8rC8 zpvly|xh-ek_9df=Cp$_fH_VUEj#SMu8y%yTRL?28r+atrjINuC9h(khw?$uPkV1B) zh$XkTeTjOr{1m9Sq{M85PgDl0$L$}ngrzEgH%_E3#UN}8usKgm2Jz{?9Nx3ppiR3i zrLJ{S`|fGW$tCTJrLtyM?S#hMQc#HZj&W-YeLu5%$Likap3s)_+Ga=bO<gm4Z|J_K zXim+NQHe(L%&Ow-_<0ReN*$AmM=iPh)||F)V%3dRojvc9HXH%yW;TzOjnIQnH$y=G z4f=D5n@z#=cp(f4ix`7cBC%O$C6s}%G?#7?ttSk)^X0Pm`rHEg#flZQWJzv)d^`-V zDQp)>Ua^9_JhV$#@;-S;xcgMoPxQZX8{+jiJvF`|xA4KLsvnl-*757Hr;hEZ{BcmP z<G2YG7@IKrCq4r9Noehr#E?UPsnQdST7_!Gz|unlOT{Y>Elt?@%Z?qt>`WN^6~6d_ z?f*jDaqOENzYy=QJ9hj^Klx<`%0}LRpOi|xOA}DB;GjlWFXm0fq#z^)*{}ilgB8XY z><l4^y$KLLbWmZtn*NZIMh6^FhAo2dpw8wXQkF~dMtjL(oyAG}vRw2^sbFT$3v*o= zMCq`J89JI$;J1NtndCU!d1T^%PKeI7`16EYrOEdlBIBRT^Pc*S5-<+H(mCW280s~c z^C3xDF@vOdm8rxkDs2G(m$Aj(7_vOTWnK^oosq<9)iWuUqPgk9Mb^}(O$nOyFRBxS zz2ru9f)NMY3#{LoiQ3|R+N4*Xmd<Lx>Yw^}lk~CAZhVi>+Y_8ygo6f$ujCIwI?GQ} zea-~dub?p>--@w$GJGolpAj24ZxQyv>Z6nrFj#R&U{J_~?}?)VBmOG%I~L%i5!5au z<0gX5VwzRoOlRDCPs^9Ivbla1Jbx#4lbhIX@&b1E4;M0`??_9Vk1Hlm4y~i#HPufy zo9#H&ZZ=P^Zz5z8b`xuJ-Ru*)XAfKiPLJ|f|5sz`2p=X#0&7&FMlfrXcx{ITL-cU; z2f-NqQ80>vfo;MYjQ#PkebFDKeJtNAn6AeHOxQ*``bLw{Y+Fpg_9(1B5Ie45JgZ0K zZ*iZK{&wcmQU!_wD&(WUKMfXUV9fxGfUmvKDD`*-e)5PP&W`S$O}?p(X4VR3@^KIK zy*==$`24=U>HEm8J-6NT#5zG(8|~gnI<6L4qZ_(~js4Yo_X3XbDNFoB-LZK~%rC-P zn2cDEmAG?^I{>=90g+rW4UoA9nKo2llWhj@Z>W%fI!6p4Rdc1t!jDo!aG>HiH?!o3 z>|}=2f>02dXy#U|6cH{38+s$6GJ4h@T)Xz*`se7sNPO)t5AHwufVjLWE4#9)tBT|) zmCEXCpIo^p+P7%s6W7*YQ(1HE6Dt=9%0(-mytewOcq5{O1VL$xFIerFd1c2PO6}h9 zm(TJH>$2kzUhauQquHTOen_fZd$8}|S`tq-0I93le{}!;qryaX$Li|q&vmQ8TMwu` zvo0UM*TV0zHt*z399_du0e%-&fzuD2CPQPa9C)^;3(z6#nl$*Fl^Bo~xA*n1B}shy zcfWi4ccPL1$VZlp>g!?jwKA6dn{j05FP5L}fO@>F1uAilVwK`j#dV51@h0=}9%5ib zjQi|M#|BS#k9UA~0&fS@ASetWr9Xhz!(?_Omqi1`Qd%l8AlY+}<Cx)WRmc>H<9d<; zqJ3sJjTOuht4a)1r*8TJClH6+trWz#28+qblgRPA3=U`9ErFDJS6b1q?zFu-hF!k< z@|B*ow-qP)|NFi%-+$NjSNgTkr!E}c-s+vT%aKy$7sqx~r)Nys(zyDmuFX$+0~@xi zO*`)bwO}xMEm@e3s0@W^DeA0o>u;L!{lI%$9d5USEoeu))f(TOV1fC!*BsvrhHkc? z7dZ^$4R$*g4)VIgaJk9haHfV_4Rv|m>z~LpDc$uKcLwi!cfqwUisLII&2jHtS2PCX z`;ukH%#AB+>uw6w?p!yoR+})YGk*Q5^3h2uYu*F1l1tLF68&+hf_wDTuEc_6vnS-K zQ)dgAZu@0+j|U6)WtN2V60A1;d3tMSQ@q6z--HU$14C7DFd50l-WY!l8+$Q|AxDk> z3<4byp#sGoyZ9+V<eYSf!xnx^esd(cKe~U-CBpA75f9SkKmYaw#!@q|PFz2*>5VtI zu5wuQI&j*F3=7XV3}RFxP^B{oM!FCj6L__S1lF(`RST$d?5TtvMnEp<`_`Q=)1L^4 zrdQ93UcOlVnXo`zm3VBuJvAd$xfmxqgZ*6)MUS#JGRsLf;<z_MzQV&j^d$t?Br}9t zF|~&W;$sA56SK!Zy79)3ZWIjx`Z3)|KMv55jOmd)62SPrf%pRC5xzYSC*Amw^u$j; zJpn$)!5?-%=Eqnn{RK8K<ZnTHK&>M4fGUiYT#9i;48$;lU#Jne6)_=(;m;;Lk@L6B zGw)tGwIrZ_&fv(Nu(>%XN#(?ap3`b@I1KdR$_poWOg43wo*vF0nO-+_){<#?LbcsU z47tYC3%2ys4!0X=A<lftXpes1&}H@MWo06z>HL`w`KGH;vmx`-px%d%mVJ}lTn%NA zBjZ@`I_H?gC=OA~+%7=ASyIH)$MLAxu_alfE>_0tEMq#~iqq@k-b~Ow6c9yw?wDei zK5mt<u<g>*hVZ^!d8u0GEf~|(Dd9RYQXltPoSwL~3F#T_W9ls0lzZaz^!m)s>CO2= z&vc2b0B!)?7Vm+L5DX;1ZAT}-13Vui!y}L&rbZ`G0~9$KW5@s*$bjZZ-$~5C(ECE! zOL^IYjDGCtFrD}W5`yPxjA0#6HjOd)0g<3=9RfM@Azq<1ET4ow#L7O7xdb@AfOj$v zRy5YnJSVslW4MI?{Xphss=gw^2@_#b6JA5bIlcm!;OGYoOu<^h``F2HhZyb#`|=4s zMAZi<0)&Gk*jL0fb@^2qBSDPicw`_Af<-fbPykT)=f}QF`E%%<ncQA(b&(Xwj(6{6 z<{Fif4ZASeh_K=^H5Z*0IY?rjAe;1^#t<kN6SlU_-(DAax~AdToVu%)jJA~(O<1+5 zuKW{+b@g?XhZg<y^NX&FU!H&62%S(xw6@Zsrpn=ts^8r_pEQmj!s5I4R^7XM&Vy?@ zGf7)cx@_9FmOQmfchjblcIj43YM2hgb4d^BFbX5!e=Jk8ouLD<E_@R83ZIM?-x|ne z|D^s|(Xwcp&=swX6J8#8Sb5>419vgGr$~ZK_$$Ya<zg$QbXY(=&N`Kam^n|AS0$q1 zssc8Z!UF()!K_q>9zmhZYYK;(!u?VHBVPBQ(rU29J^bzuhu<X=va{oC2CMSHFX^Xt zb)%hrN}3Cs3y1#5XCz;%HCQe5)$`8V-8Rx<HE6Z;jSaM!9)Y-c9F<XM5p%jwxflJN z<(yxt*s9p0cuMgR=9(P@yjAcrA#NsOQ&}+9u{9V*nT`$L9e%kd3qx%X!>JD&2<zrP zDLC&~R1YxjZ2ZMld>Do|TtW=4q_kVO_GD9WUl(lg%=LxLGR%Tcu#<<wC_`SvcgG|J zmNu3x4*o6f?83r^g7L=^__AmsrfQ3zQj3Wdrlm=&c1WLRMG70n4-^UEAM>8E|Jkhy zBO!jZ7pk5r2wxjYinR)u5$*?Jk_d(ccAHpXtRytuXAAHvkt5ItZ38E>d3)?y?x6#% z5RAzfXIMp9*b}62A$w*@&{_q>YVaKhlG;UdGjvEwr;!9%MZ~!^U~e-{Zg6zYFYLr1 zlYNaVXPrH{W#(GXm|4~evn>@a#W+huwrUM=vN}tz50&4a6U2l~mJQi;OPXuvR%RRH zWWk)5>faoxDNt&a+N1=-z<^nmp;e~Zk{o&=o_I`&ab|OU{p0>LU5ZK@CorF%DN!=o z<^1tZjW%DOZ!}urJxTE9t4-zRGJSELGn`;n2BhkV`cWC#X{nk(oF?9&cB--xbecF# zl2Jc>Xa4X_Gf3mzzpHf$$~bF{?uybZtugUhqscfr)0kw*%ut#vc58EBf-Sj1ZE<R{ zCi<0LtzZ?zbZ?6k7E{d@haq3zWi^>?BjfxXj;w_EqM(#0lv-St_>^RG(j=cJ9XfI- zK_?SL^Cwy}rc7;5p3+o0AS#uD2=+LgDZenUQ7(Y%QkD!ZkF!0mG#oE&hWA83jK5A+ zB8e)_mEaogzqvUp!>!HAPM)ila`W}^qD>GTH3oZ)(G(}?0vY2hRcR`hEeMybq*BY8 zVe#E79)ErK$`(_{$eClu4fBVFcTJl;H7&EXJu7?97582(C`Glswp#ikJx3=a&YCp) zWF3jqBu~i7NOg;&X1SCqa0pl@2&B*zrz#$G#FFAoQfH}En7eu8xHMZ{qQ<Q8CB~bS zeYg2%EK1%{3LCbzK&RHIMU7}kww2X8NweE&G&#M-(!29bd3h6(mgJ7NFRF0nr?i*X zwlrK6a+<5B&n}TyUQz!=XNC!GBRMfyPE`szq3DXSw`ta2m_B{#@YG4_os&mZHsmYq z_3mNmzPyA$rR^ePoR*|yX*9JNgxD(c&bJme8M_O{s#NFs%2Lv#%j9@90jWYlC|&f6 z8d)TX$?=&PT1d7b-Oh|Tdyb+A_RSV%;Y9R63W1efPoM$i5ZKun=YzyQaePVwGS8}P zX3!2}vg{57ku1g@Q4~X<AopbmDff!;S`{+p%$R?vOkx!oPI7;Ka^}n@f2MEI=jdCp zb*VcpW&Di2UB1w$hc<31Hi`7BJ@kTC9=u}QbyM1s2NphZES+3VHgAYdSvF?@+4fOV z#?|!2V;g*A#8c$0zm}{&Om7sgzpB?|%2~E_U&|6@#~I~AsPOyJ-FpA%mdXCcsaio} z)JiOw{pB<B|4F0nF%8YWo#W`sf1dLh)$XGoFMFEQR91Fmm6#+FZQfZj0Yap{gC2Zh zItlGp>a1~sj=p?~o|Fp4JZ29@xVbk3ApxHR1So{40uT<&F*yPl1kEBGmYAa=XID{} zWuArZggsFFSW0({pIo3~VggMN2o;PXaB%&83O)AJb!#S!zmvZ4(MIzWqI&B33$aD= zKiW9(d2P?K&cf`vS(8fbnK>C1i7w4ug>8B1g{j5EH~n={`?VX}TqSkWCs$<KXC`J& zX)T{xT2SUKE8p}9d11}2r|7XM=8Yeb{5!`_SaaP|L^Ty#^vydvX{ocMeOZ0kw5qTx zUe;>kjCz~XIMEdfxtfcr=SKX^8^@JRtj_g1^;%`3-d>P1EKpPw7!ht*-4Gjlm#Uba zq=GN26nughH5q&@5;nuk<$)KM<?_LV4O(@`$V`kZ>JT{JQ?fV-gI5eOCXu-u4eQl^ z_&YM`WH3Fw{qOgl9+*FGKR;3I<?vbgYW_nXx#s1e(|YLbC$ATa0)yF_ZtnjteyY$j z2)pI)cd`5i$DlI5Q~^jE^vsgRMgk1L(101*NhpN<3VRujj3w!W)*c%$*-kzQ<$Gk^ ziZ<s95NvvvCoh>koFI#mHX1dRWF$0MvpR|-&|NwQu5|@fWVS1iPJ&4RNk|jrP$J#s z&&lzVdu$n!a_PoR17WK^)8aP7%Yqyiz1L=tlqnOHe@U(=3()sm8R?0Ak3l9q<Tm+D zac>%ua&rA)f3^n><rDT(@)CK6e1#U_(L;Szv1%T#c#_Sc800M06dSAcncGUw<V~9< z_dU<jNeSVqEc$46Wpx&5&Z-h+Y(0}zRh3QZvMc2y1gG^*-b6M{5l{OMRHOgqzkhf1 z|G}|y7kSPj|M7uyTyXZ?|H0m~oce#e>nzuaqGrmbzK6wQ*?6M^DokX__d+R*Q^3+- z3A^*J$nmM=-#Eieu^BNmVn{9ER-p#MlLc@J^YLM}${j!ePO+>ze6lnMo)Ypnb!+zs zPf&ZqrAc!qI+Nb5cztEg%GWF2O>$10n{??7+Ms6yrcu@Sr(C*(Q6%&&DM}@;ewOWw z%*`e<XRTN<i|)yu8*yfTMvGF51}TzyV!zBjezKl$U%_|IYib^>$XRPTG^2~L%;w?N zOL^VC4L>+*)vO1@-=J=Dl9pk=JR`;)3seL5uB>}5R;|sQGiG$sb-Y^74RG`sj0^ZX z!9mP8;@zjm=8;MP5{2o$&`Fsc4EiS#ZRA?e25UKW@6MCP5=l%ji#a*rg`-k)uFp>$ zwWug3TQnz-7nB|6u)9RfmfEqMDPAGl7e;oZY{8q-Ikwgky$L?OpXqFMymABPa$^*e z6f+<h%reFzmB`R;GV@FZSa54d44{U^W|2(^0t|d4gAR;=@dG$VC7S`w7lBx`n**42 z%Q&Gp02^$vnFRuif;*P6a7d!dpEi+gVY4~;i!WTkFkRWG?ao9x^T)IDa<xr#<=_#s zIZU>(Lo9oFW;dOdSe8hSmC9Mk^e>MYjgOJi<Se<AsIZ%;*ltqFcGJJG-J9u^^cYOl zONlC4&C+%sRQl=4W^GPh7Qa)swh=c9x(<DwVlm-9{0O^IR$h*_8MWhwf^@pU@F;yb zB|}+8`yAyC+E=E`NTDx3YBD`aO4x3ANXi{V$##>H{yL<VUP_d-k6uZ<?5?|Fx`I-K zO<m73%PBG7gGwBe3qOE9JS`}CCbR{7FbrYHrX!dW#m*Wg6ciUk3M1?YpSH0XHkbvO zmSKwch1&fGk^ffQF>)mRg+55u6O%^e)Y;?&mo-(Ej3$%CWfL^Q>aB~O#aSf5nx;xt z=h(EW1Su|F@|%f4{+fREIDPELD=+?-6i8op(Fb0;lJ-5j*fg2ENxYPN3e8;*QY@CB zR;xFekY;>3J#_0;bl};=l2V;v%FqKWA-VNB=~e(KS|5LaRDZt<T|74CaDI*iSn%LB zHN&WJYHW|$gU^i(ltt(lY{=mQP>+g#P{;Uk$c6-qhVul(h^421Gm|f<A{L)6e83?^ z?7r+<TLPckGB6xY#<u&^o64L~1Bw~kV+>KlBTAsv4%%D5V+^k~Bvme^g%}Xo$Q}&E z@F<vr24lcP76i_Cr^3bJG^CTP&5a()t)&P+2_Q&A=$cJ>XLqTQECqIz<KSEg!41Hw zdt6be*J3w<QwH|D4h+<ry9c=KMWHrS48jvZ8Ko4DD*^%K(ogs4^M()4)9-sJ7z9(C zl#|2Cgrx^%3auS5%3R%})*V;)7c~3nHk<eyLt_opS+)&utBpdf+jtdDYHyPyRu})! zvx(V8Mkr=06sAfQ<aCN2Z$+<%nIK0G!+E7_W{7I=-yy9uK6>PAj}&9J%m8{&VQ1%s zo5~k9T|aqx<MhebH!Uo03g`KqCY=h%H$kN{IsO0B3E!*97?S6>VBFZ$gWgdci|5qV zCjQZVTjwA1CXOu<<jMbGalgGEcxLv|l|-v=Y+SIedq#29dEF})->)U1Xuqz0)t}bH z_;riWHy?#uDpu4hx)lrHsn`VR$1D{rVLdDh7`yODpt!?z%FHM1(}X30@e9ES0TT!Q z=lWm{@gwpdmI?6LDa1&M#Ax$!1Q5i-lmWgx<Uoa~0Y(p;5&#7rD+MNzVz!Dh*t&AE zZDwOet|h%}Nk_TH5Z@e$>UxfSaObqWS0DK6ZQ~|pgQ;C<1jE3}*EVLSYYj=y=4MWr z@%mAsihG=Xa3`e?8R8x%fjcQ_FYCJf>I=K_k~EpQX=aU074BSqNmFu;g?Q+pLK?kj z&6G&d;R`ohK$nFkI1;UGlM@~GNeLc}MxBu0)2KD#yvBtInzANMyt8J?!m>17QUA}m zQ!jpS#%7X!^??y(<yCiS;}Z0uBnSo0@I`Z+CUx0m7yoY0yo-dUg?G0bob;zV`7cS3 zUNgkkPP^pVd&atwmG(SW{S_-_4Racmc2uoDWBJ1L(BCeYKQGn&rqYlc42|-qghK5j zWVqFnRZ3lgA%)A38&$o^Ch#DeIhTe(A#>S>*X9mkerYq=1Aav!u_?fyE{G-cX?k?= zn)k@+ugUMJ@ZrM)S=j>*lT><?KK(UW{oWe!9r|?io1V>N#G^lv+leJ~wBy3Xqy|JL zy-U9A5$vQvSQet+(@8%)N}mFD`54^;J53||S_t_4F{4x}VCjTN_802~d=K1t6=CZ# zTSwl2NKuX)DNez-hy(%_RVBt#Jz!l-q+nf1vNvtp*)uyOc^zGUD8-qW`WzXtI5cWb z_kyXD{Odlvc0+yAuq0LD$d<Vir#2KQTeqJ-wXVdMD9iDh<hIIELq^H$%Sx;k2N=o) zNgpono_l4pm{B`!%9JtHW^+=JDsfEbri*SQI~HG66o<fPV;_u*`T69V0|^$jKCk1l zNrkrH_%V4q9%S_YCU-^0`jM$7Yj$;geZ*+oS+BIWwy#^eyT!L~RnL;iNltl|OXaLD ztMU@(_{%5Oy1_~#-gdP*u_ix5WcnYow=PvKgFdLk*JNRD$>`xOHo|z~kaiwMSN4xd zf5uT#s9d&tK`XsITD9N?<+5W}D3{T`1-p-3al-;q-L+&d-A!iiUGfAOOYb9(v89-@ zckzS?i}&JQBD>ch4@D|t=lBhe@agf-3`xnO#-N<?bQH`n$a6*({)Z7&;!$#y%|;hH zLxJ#+rWuCe<3EU}l5*%+N2=RF$GXCSfAHb!t3VNQiXSFh)h*&=c)1EOV$D@-RNRB! z2HhFyW4R{HY?d73ok<2&YnjcFnU0;nyr29mm?**foxr?FAuqFi4rBTxq`H!wSSeNs z5$5%*A~=gd&U`4U5Kc8%Kx6wE6eD&86um;ZaB!W;yV#vhRtPXAoQyC<rA>G$&NrcK zzEyG>y{Q4E?6cL3lbyzn<=C;dyql_$z24+NoL;i0kDY5ZO&PYu8s``OJFhG*SDER0 zF1<*bP!!x3hf7ANRVwu|NoGbqk}T<-b0jNua;q+0?9z=5uaL~TXx_NF_GG223dQ-< zfz+BZ(X6YC(~F(^Nd3=dl<{$XX}nL@n7t==m@ZD0ne<>Bs?n$gK3k=_z$!b%IN@*k zGwMbe%(*U`i@uOxA^Q!M)*C{(Aw%5w&0~g-80A~ml6!9w!qO@$vN8=;9X>Nz5XE_> zfFpaUF^)b{P)(lHB`mwN;{vB4ZcB3BL7m>HCH2478_ccQn=?yVa?_md%mj;8qtaSt zX!K|6w<bd@n+!~BJiE-9j4EL0fEfvvX#UX*=}p`|)O#Y!%*iY=%4g3-Tdk&xZ8maM zQZNu^VY!HB>InxzViF)9rzWgnMg5C*(=GI$x1JI5-TxN3&*4sWko%I00$=fN`;S2Q z6q^Df^;204p#7A%WM)V(p8*&nXb>AZx#2+x{i$~-dW}VZofayWicq-{gvvR~vT1dy z{+w}cJsF5|vuF^1$Ku@L5;H(Ug2#P^oCsmhzvo(46F1CK?x5j63$qlShx+#!ec`kJ zL=1?pvMZ2>{6sxtbLk-CA{+8C;VXto5k^9M+DzGyU>9U6Kinyp3J|WYW)h~h+Rd?j z_!cosg9(Ry%vfPv$1b+>X*Ts<d<*iEZ#Y<LZf$UwJLubwZT#nbv%Y#V(4^P9;T6i~ zJtIU+GjH?FZW+W|=1(#0G-lFEWy|C%OjAtDCf3c@OGo%jJX(-{=*p*Q-^B}j_F$`T z_mi{k`{%}2NkhHf9Sk&*1Wb^7mrkXJ69<u}hU`4DDP#FWa-eH_XKhSJAM!J^=!Bt( zz>uFA?F{+FSksw`1=mZExtF1ZGNUS2y&%C)3&xE04QO;P(O=JVR}FK^%Jz}z9%mrp z-Q}$6DlgTP8p_8d<Tciq?QM%5J<ZKLP)+Kd=~HUxt9ngbaZc@q3uUQ#0vYpRg5a(X zht*+yTlv%fY8?9p-p<KbK4ujh3SJueMYJ}5F>Fr5L;8v#n>lmJ&@VtM=Zx$djPM&~ ztUn{f&!aD4ucx}2FV7n3w*e2Fp?$Y5KN0L#!VD*D--a{d{n!{f^z2iC)>dGIz$eLP zU@&U_Htv)U<80U*^ra8Bk=siCO$@4gDET35tEZ$nJZBs#aTCSqr}6@releJ<Oopd3 z%sAm>q$-o~6##)?2WKUlzQKZSQ3>hzZeVKSqkSRQJ(#|MJSY(alQGzJtfjEMll>~; zD|+(-0LnR42li8wvwE>#eEJDeFwbCkm0mc|;9p$rEE+z=8EI>aIHwFRlBd__E7fXc ze*JP%`S*F!m85e1!IFYa+pS?6JyK9YUqEiwwn&706p6I$t(h9F&1=vo>3^xz4IH1K zKJnbu(2|lB>4<cx1Xg|w-T=3tp^o+#T7jF&AU@evGO|%I%nAAwngYHDwv|aj{G8Yu zK@=3*svyPuoY?yzs~7HBxUlWn^A_P}&!RuHEyBvPZP-QA*iw4!T*t|K>^RwiW$d~( zn$E9y72AtYBD*kF)?kU`U6kI|Uo==EJ8jQGd@eB?0Qbcw06m|MmZEY@{_|-+YR@?p z;0D2Xf!KZkRZn!p)A$aAx3w;<Fh_36A5i2s$->7Ob2Fl!0JRM(!Rc%R12u5fUBM>K zRF#xOrco{XYRE4fmo{jFlhKD-6yuPeW<5h(1QkVL*`imfM5b;9p-1tQIeda==KFFW zf#KeX_!<2XhdD6+41CHmv(&LeOwEKGg-^$Jy3-8IJSoH+9?T&J%MWIWZa+A9-X*)< zr^n=-qNtS<WQ#bKzBbL4V6knR5Lg@x*enUQ%$&_n(^sY$jDpp0*#w_uIa&Q7h+&ok zyHwGUY;#)^9nrUlOeAvoj#U?mAI|;ik3_0Id=4L2WLK2lLVM^f(Oup9zeey^n0UV4 z-z~n@f7d*+=h!2c#iu&btzlEOmL3wXQ44+#iIb5W%o8B8NPic7OWds%>`n^;;2wHo z<$N-!+%qy54n)qoBU*?W<@=<+KL7sL^ui^=;k`Q}e?RHu8*;*N=U-kgIWM}4Ri$?~ z{jYEKcX#jqhIp9G<~YQ;{4fw^z?;Uyy~w;m{$i_AvRWj&5p*6fxfDtEVyTiIK18>_ z^H(zE{rBlNr082>5MGG>>zWJq67zxWZ9SITqE~PK^)}~y!B2Nw|5b|IzGWc1w4>2= zpJ#nL?~|C*Emf<O>%mIKJyc-6#cPB@%+xD<W{7I$0cC>#R|azRz*U9#XQm#rGh(40 z#l|7umUy6`Kt%p6Q$tQk+OgiWlAH!pMh1C!AEI}O0!zH5UY|>+tIIg1$f(!pl6}2I zDGuf}oP&8qkEwlPshd$_xXZdmn`m4V-_Fp#fgcbz-D7W0Pb(-$OK-RLVB%&P%xHqK z6ujRI!#n}F_y#nPvjo7k1Be5xv#{0zKM4yhM$u$M=W~k%4^4*I0kffEOfBGk(=fAd z0W7;Qk|=RtbWps-o}6qSnCj2S2t<F(sSwmwqan>2Jvy~+N|GtVC!5W-gHDSv-P<(& zkL*<OmgwIK$-Bj?BILb-S$F?%{Kvaz$pE1}q|PYFP}7Iv<9l-wU(<v#jOy0|qgP!w zx@`2Lk2>OXa*?XoR$PD0g;VxzspsdCQT_SkvwJL-duVFr_}a|OTDYWR<JMIi1D(Lx zkP*UY#@`U16Z*7AtR*X>uTkVUnm~F!6+$m;-TJ~-a+ur#bMO?YqVF*>M?4h$bMn>~ zF1_>xY4X6vL0yE$|4Izq7~`q)*gY!QUMLT8)qz~DFu<tl@W0eGP+}+FIcc??2sh|I z{G0C2PI##=E2P5-d3}(v?(lQkXPy#%tth&IzPEg-(DEWgALRels(s211v~)gvl7g> zF$Tp#w+63B59ZYr5Uf>-#U7)_rrLKHXrHfMp;ysgZ@LK---}-%n+Qgl@t=J1?rpQC z-~Pq=#eY~cAyXZFU3}0WOhk&N#$Wk)a2qTpnw#hV9T+oGciv6kTzb(rcg?7rvTA-F z88_(^4lxV7{Ua3<Fyn+F`jo7etczEXpa8fZA2ZSGlVQ9Fa=$bSS%(B;ifJs42cIQ6 zPzou8Cy2|=;s~r9=zB306c_UkrWkq~F1-~vgtb_%C8k?%r9U8~d*Isi)Z{;1d9%E- zVb-jMimAG}SA6n7&FC3dv{p(_0&~8QlsqX_v}~U-x@P}pGn@63%cHKDwW7Sd7>bg( zQfw$*E{nAVh0S7b>ScFbmMX<*7Omf~NTU^&zIF08pgG$@f4H?J`OjC9mBPH4SI!(c zEbgZHM00+@_8B8qBwzN`mP@|6EO|x4jO_&rG^BNLTxm1iHo0b1MMX_@Ma9aR$z3&H zv`m@OqA?Jiju=kGt0y2fy9wjTjI)ey=Xiu-0mq&XJ;DFo17y$dv|&*ysO;>ljC90J zTKDH&C5@eHYa?R!-VYCdxVKx33}4eZqV&4Ibk^ubhocvQ$VHl+SAi#{5-am&$>OlA z?BT-QNvp5EFiF&?&wu%RwfgjtH2PKNy3V>n?bazoGbM9PXXPyC#9LR^*RQ;FqH|Vd z=bFs(RKsU#3To)n?WJ>zBBiB8k-4R#N0$C&_~?!rwVr6TgiU?<cRQ4SGlwGrPWOJP z2~%?HAc^1|jH{L4!r;MSEPXi!RVJC4Tvml*d(Y(>6I^8(lP-I3?V5)&$}+y(zi#bA z!k6UB%(9HFlOJ5S{(*Bl$llFJ?#N6#Z}q+RtfHe*GBQ%0czXT*``40tlWDo|WN&gt zM)I?1na{4he?ONO$d~vL@+BJBtQQ)K!mTJW+KZvOFlHIR&AH!zAwsYpP7c014CNsO z-;ql75sZ=B>CtVkA;2K|cP!}9r(m@tT`b^0^Tg^mE__XBrr)w%_yC;M<@76#CU$?l zE~~maE86oU9RQ&*WWf(Pm6bWdwukBRmselO=9A3#5!3Ah99cZ1YcVzoj9Pe_-1EWb zPcg^|mLlrN=IiXIAfoJ3GSI)%mg9?e>##0kU9XPU#EUwTpi}9Ts^w8dwAvX2jdZUw zD9^Ab_FdGzSgCWz`*Q7xhzM8=9%@-u0u-)GP+N3{zDl82ga;>D9fj<J9()|U?ZCUr z3Jn+@t<Z%%@DDNVkPo%c-#Le45qKa1SeIGFup#0oDYW{mg+?HNUW@*dj94qX1xxgM zGJ-yZje*w$Tl8Dfv~F$mhS%{Qc+d+5tin^#@5mCmL$D4M{C??eZ1pzbDYh<H=?=1l zyz|=ZC_+}{6VFbA(Zz>%Ta70Ql>k5$$S(BK!S&zFRyhrX7YW&mi)<1YAvj7z#kL9y z#G>Y+^dx6S5lId=Hx*?ix<t=VP=$=pivB}uA9!Hxh}tLKhzO5AuqH9y9vQdhjoi95 z;x8K}BoKpvPMNTw3sGW5;nI^K7fS|yeg<8@H}IFVSIpmFO&D1^MH$_Z_KJx;UwSP# zwMr1pV}e{7sd!8Acg6dPf8hD5V4`MC0gr+*7sePEv{`%wgPf-b#a268RU-fs1_$PD zWcVCajtX|{ViA{MPmU63Q49fU1O#FeK5NjTBB~1nCQyx_H^E;7TLp*o1Q4SkVwhkP zG&X5x>4We@814y9m11Bxu@@Xs#d^f(MN(vzzJe6nRc7F7z}>_0y@(s;DdY0vt%6CL zjKCi9!hxjBzfLr+xxd1g9q`q88+8Ux(Bs(nhmMr|Oqbsfh|h{s30dRlkAE@_%QK6) zE+rrdYAw7P0YC{qPAcups0eSqBQ2xMlM*PNUZ;~KjVfK6qB2WbW_DC*Op<?1Qx&`$ z)#W777P`GAY2k$_YHRdZ(C9QL2zqs#!;HEnDh)36-KHdm(eWZ7k2nhUcyjYRaZMH0 zuKL{a9GhM1jE@K@p`e41vPGQ}YMKk8!@Rm2O2aGL54k$(v!!5VNx3XsZ!;kVD9%%n zTP-&F?s4UcKdNP0vfHoM=X=M*>k3?A2Pv3RWe;XJbFJm}cB6LK<cHtQmDD<orA(u< zDs38rDo$1kHv>!AHzQ|cXCUG(uQT~B-Lrr1#Ulk#sZn~>t~i(3?X~$`by*!oVp7Fh z=D770wRVWinOpC$$*whaqajILn&3!424I2ceWtWfhMZ|i`pf-AZl6|dwHmC}stqP7 zK_Buoq$K&%b)qibE+%G-sGHe#Xo6n2IsW-Dy;+P`3p!D4&}rbVWHG~wlxFy1{g~^H zRxCyzOo1M%MEHIdG>l?+8yVI(MMQKaI!3O5u7{q);!W)^TSG@h_ko@o3Nrx)^AAf) zfZY&g_#Y<&Zf&)}@@TcC3QVjOMx>_7>ZO$(8L8sNg9y*~GyUS#6=G^eN9EG$%F?pQ zg$25VVY6DIS5!YP%MS$d{538qj#w}Yvlx|H$wBTU3-^#*UG28eC9b+X!W^4G&hObZ zJFmDsBq-yh#`=Gb7~iNd$Y$w}mBTNZaLKA`TfH~4n<zIPB)*$luU&P?go}n(mX^<H zJ};|y!G)s+DqCJbt5gpKN+OdN7>YONs7z|Fpe>;JdlnKhw$?Q6n(V9GZL=2LMDA%E z{p58IZ<}3I-X17Y>Q!bFrg#5`vhM(ls>=GG`^xkr(_4}$$&~aqnM`^DNq~?*LJuvp z&_Zugg&+``2m+!s!H%v45z8t9>RK025q0goyMC^_DkXFI|L&U!&E0RmKVe?E@4frp zyYJp}Px+m522}srclb0N;`TFJOO(DlVEq`va&;L&(%Aq*T52|!Ss-qO3`~6(NxLK- z1A`hTU<OsdqQD3MS`HLS#)9Ze3T3n-(qBt9NrW5>Geag)9pEdVy<<b!AGS)#4+_Gv zFt=&K@HO!hUmp5sU}#-pW+u7mAiX2Msn9*3os)Z?y~*A5PMdb!hzU0?Y%wT$RvZl2 zEQy&*GEH=siC@%m-Hj85t=3Qas`+4G7`vLzd6ZmdYYfv{Ufb_&e5K8>ddP$urwk~5 z_@F;}9m#7IN!zA*L#-vaBP&~)N#{OFM(6i`Z=!w`UF|)xDWxgoLd|U>)@ke3-dOQy zv}zN*%|r)i*N$kramJw3vX(>A)r&L9=11vzTjMKpUb_Q1kn97d-q<#HmEnVjAN3FE zorL$vZ)I~qEU%*(GC?-xg6WJ$#^hOcS%V=tA;AyQqZiSj@MeW6w~Da1Ss;1{x04En zI9W2CFog|zz$F=y^<@^?5n?8~Jv?He)o~%O8dKd$`oh9xE!?twA-=g~*|L_dgQ0zq z)h){eFW-FreZyeG8I8$q3u>JIa%zG$JCa5GT(zA4xG1nSlo$vkD#Yxe7+_V_xcImt zYn9EI+f!=~T1|GX&z^4d7aQ|QrEkGc4AJ?Z;E3LUE&1lIgM9P8v^1J(4{C7>nB`3x zZO~3!o5;LCQXB|&!qQem=kmvgthV@ge|&t3Q?4-;6lz4BF5MXR8}mr@5S$jrl<*8& z9JSTyz#wG<TU-H4dp}SBi3!07XB<bsqfbWxGcYl|5Nm-@Y@3N8p-VEhTSAfgQw%Y5 zX!kw~h{J2z8x|nK(}J#FF9MJy*(jt%G)c_`Xo<L}ur0-ZYG{w8@svS5+R!e}ZQp^* zr_tYt`nsrXk6i)n65{Q|(&-?mxOA=*P$8DFCKd}(dQUmSyjl^HIt-28Fv;&x!n;Iu zT`?qy^ge|}#>@VX%!mem#hBNW<PzymWqB*m9!xryj^mW5SJi(we(m+g1<7TTvb5-w zZEo>9I+zIs3j&TUwg>A=cPZoM{#bg&xd7lbor9|<sb)@}FqJpSvDa1IU4g&*aui%H z<o<2x6@@X3o>IaR{(FobC>b+Ay4j2X>IObm5)j~Z)ghs}GVoajCr`@GwkGXs_>I_p zYuJ}$&CZ^bJQxQ=r3Ar3x}6U8J$cz`oQ9Jl3)ih%7|EWTj8oS{q;E|+&}E}Cy8H-a zbe4U`ATqm4w~!9ip8$RdLa>f;G2++}gxf$@zw;Wsnf?X|T}@`a_BL6zkw%7x{x<J{ z-+p^w-rvZB^ze<h{z*C*L-YOVwj1f=W0w9-AO3wQVyFB@|DjaNmB1?5(06KB<}YUX z#hV8F;Kqt9(rYtwE*SM9LnVjkWCknfio}fi{7~$GMx(1hg8;Gv;se6Xz$a{*K?(Ww ziE#s}#=VpoUD05Pt#AFGXIr=axp-OmJ$F8|dgkhf?!2emJhNY)YPx^)Xu7|;PrsSs zt$l4JB~R5$%gEWP0da|$FO7??1Uh{0BC~t_%IGTcxAA|;$msw4i-Y@*>w4!7LUvB{ z`6lk97w;&mQuLdlYq45ebTj%XsyK7TU&fE?pCK*D?dC;$hp$}kj;>;DAH{9K5005X zD+xp<rdMUtP$24M$G<yl&D+GjY2RnF9{q8_hN)fs8G?$V?HlI*cxdLQ`){OQpXqEt zDIC{OC({{C1zun&qzuW6G^*=kqZ0Zt7Uq+QL}6bXfr3#l@(&Ch%F7yCTN@*?p+h6m z7C$sn&ppXK8F`iKh;+zDIi2)JM`v?aVRNU0{^&$%d+hNiu$OZ7?AZ%NUvfWxDbc=1 z!Gq_52hW4ef<>sWV^OV0(67MFpvGsZPXL%SL$erN<B@>0WN1rZCZmsq4j@AO5%Z;s zcswCo#<KxSf|x1lg&d+$(@$XV$n3hePX!rQ-<OOl@55<0GQO<7rkLJ7a1hiUt%C;A z+ly=J%gA_M&G8S@HzF^0U-tpYrEl_^0T4kY^ivI)p{H+(GemL5+_{B4rdm6bk~*zZ zd(a6`K(4h;t)}%AlWlvv-lv}OdiU5SSCA*Gr&`zIpoKInKolZeIB#BLStl8{fULmg z3^B4!X(as@(3{W_vWxFQPpN@a;*cc13Mu9j<3d<!atNPJsK79vG7%xwSbzmkBar-z zCWQy~DHub8oCh+sWJN;;bdNL|`JvY>YFu^4sK`2Qa_<E*`({V1By~XRi@r0b=qvIO zEGok5Tx96NIX#!?zn(%L`j}o=^zo({kIb!%3?cWbCXE?ApL^2t;Pqo~8J;cLblJV< zH9if%(CdxOw{+e0&@=Ql{<@W2zZ+b0m-j58FA&`)H-5Ehz^12EW2a7+zH^ixlLOsp z0+*YHXlwoPol`@>0<($74|7@w!x!2w<JGp0APITQA_AP}NN+Fc)4Y(w*{d?Z9pk+i zUIx)KXB>WN@z#08xqssB5o*G-G!I-3VIo{dU!|{v3;cZsh3F14f8L%xkaYL$zTxGH zwVFQunmTebA&bt;oW#k8<z_!d-wszV<o8__%4APN!w-&{nf=oB5gD01vtjnb_pMlU z$1^GZ`dXC`$FGcHe4;uWKd2Pbb}@^(Ornkf^kRIQfX{*_^}8`w!B*=lGGw7t05N0m zwp@(6SftBt3%7!OWhhEa7RB+s^jEs&wNL0g`a>DH-n4t-!uv!raL*SX($_xxduwy# z$Akk2Z!+%qYfx-zE;N=cwA%~HmJeuXuC2XeKtl?D+o^5aPHj8S3|2E{^5rqC^fRRQ z>wCwod~nG>gpc;_{@{b%B7Hy}{_t5c@SmH3l)mtyJ--}P6*}E1ckZuAarGf@Z#}hj z>#4!B`t_eNbJr}q<7IwZFTFR^1SC)-0solf8(_|i{>%D+f7=pKor|R#f8HJPpWAU= zL+=K+%kAFLSm&7=o|BU!6huD@X*1jmvz<W7x1kSzeDdSreQ8cKetXv|>z-e~{`vls zw@#Y0mF&$=a=IED8XGEI$+fxGoSC!u>9N4vtG16^bm!d9gx9y-eDdVYB0Vk!pW|xK zZ6bFwo%nhZWHn4?H1gs_x?IW0CtytWk}=0&7GlyR`I}3jseFJiR^e>{_rXhJnju9| z`3!&~3|;WD3<`^@n0iYZyx?z(d^i*IizSUVS}+gg5}tK!#^^=ayl`QddnWYIOAm#1 zPY(wRbfYzOetK6@K<Tj0-Ql~**DGmac8)zs=#f1!X?!t95I%l|yQsu`QHK0MGIL3h zo2)EsFpf`loL@HI?oj%ZNUOhA)2b`5mO9!`85;^$vPpj>V#Ak;4-FnSZt(9_?m(cD z-sw+Mw<@wq3*&qKTwXpq%bu7tIVTcIv}f%B%Ipi$k(_VQn29X8Kf8~{lAjDdFx9;$ zXUc6g3Bl4VMXNduPg)s(EL=gKaI@4V?G2yppD`-hUnI=4D#r232=8HB0~BlwyA||6 zR)Z^)SuYU=HgkI}ZK0=hXP<F1y)gy{mpoOtZEAc?S|ls2hR)lR{>l>W%#v5qH}xJS zF}TQ;!m!Z82#dAZ&@Swdm{MU6eTQWD^YZ8(vUUDVH_fLrlRKIs(ZFJ{C0E_lL6=FV zOP5N|9_81wFZFdiZ8C=m>VJ7+=Ijw>usR+l+~~V@o5i|Wbe3-})G+Uvz_m}^dsE=) z`3<48n)ujTc1e%YAVisM7UH*q$T!XW509Trw$8j!A!Qqo<@uwpEX7>~gU>z*x-yeN z6pS}#aTX-(x76CqTnoA^ty0+skUj)cTZN+{Z}*DtYpJ$y18qhAHUyI>^mmdBOE?f= zVTvQIfv|;SbovV&#NXyGvdKr-Y>~NkpTCH{@9_IVbXTG$5SBR4j&Q(}NG64Rew<t6 z_rcC2wRg8(JO#4`Gfuj%@e7e?WWX!NCIzo(F|s1WxnfGj=uClh>z7Me@T*v{7v=v+ zQO=*RdktoKL*%uvH%XC3ej@$s*L$+Fx6^Gey!2dUwp*S-$%W^foBiS7U9|ZN+I8BQ zR+JX!znknMJ2oc&M@{<q@4OCsV*HoOG{ttmdeSTL5OUpxi7l-~h92%5O?B;DJ-|k3 z70xkZE0p>Ew6G>e95zUYSC4)xDaHa4=&68h(t8xV0vrHDL{Hcl_K3)-=Ooi2%ZeWM z(M@E5littGE_%dAIt3aj@Ker95Bg!;IpHVNOPXP2!<;OW-2)%~D)83~e-Omn)d2ad zUA9uTMRt$uG1+r6;Ccx1=Cau~5N6601THWe6^y^mg^T~yd$Ix-cyk;;7$~-tn!+v$ z7nrRI6FVPB@hi%~v$Ki-C*X`B%!7a|p#+i1BshUTlpiqSVib#D4)Eph47g=s5m1@v zld0fuBt8%)2-YH)IlF7aWBH{$W?Pf4h&^(2kIXR|NxY~s7*t|>AGyk8QbG5s({U3N z8iPTj&~XU~95u%ib{bU7LlvCO#wnoU8>O~dVYfkftA<!CM58sC_{=yiE)KC1;I6LW zRBEMSpq7Kbu}Z1YD&^R~QlvW#xB<~96&jL|pcTHEe%sFJk!+1#lhD8AF{04rb`7z_ z!EzQ4;YOn&cj)499*NUwNnBi;F&_VnY?GVwx6k8M;^%*pE7z;#^p4NvYTf5#jILR& zqys-wsP&(bhYj?&a^XCcYTm+T<*}!gsy`o7`qf{&r&hoBg<2W+?WbDpr{BhrSxQ~x z@ENUMubn!LtLNjDiehDa<g4ecYNZm$%=b7r$tc7o6V3ierO~K9B5x_RZ|s^r{Z^va z^5vR%(e=wg)64N1TJ|0bR`MQsQIn=sQ|Cu2trlm0uHxd<G~)wRe4P3N@{T%+FPR9Q ze-Us!Yhm|KCC`xK(9ik9(9VVB_~B1t9bifY?|?rkRyy+nU}kwM)S_nSg{*!|q*k*Z z3M1)61vEvbRA|;AGerMbzy|!mtXdQ{6<DP`L@$7{y#R_7rn*CsC3-SqG*}dz<if@3 zRv?*bbYhkxECZXD@mzA40J>{I_h&b8@;<1uP)#63VL_ZFc0+%lFu=5ccoZ-Jg+<_7 zu@QX}wt+%CxFv`S@dsm<w8l1qN`#r&n3)uCm}$rG=-?ZQtkDB3IzxAh;N~X8cZybW zshwEO-4!a3A%s1=T!ESp1{zmN{&UPQ5qojD*~y|qp?%~EERY@Bk1JSvp|w#Dd*f*1 zD^jslNx-><{r}*LxCHO&crNHk3k@CkStzkQHCLxxAt*F*u|TcxXRgSsHgg;z=dH{v zbPQ570M}7By)xUREz#W4*4`{~ipeP)S$*HcsX8GzXUX6SXv;WKeJ@AUf{{}s#5>}8 zCl@<_8&Y#}qA<!eyj<Xw+61GzE_XoFh_2l#`GfT1`!+AC<IRGa^Y?J-6()l|v#{)* zc-)xGyd^`-ZYk{POxL@sYj5b$YjVBFC!1B}+-ECtlLDo!okZR`gVTvU+ZP{A;w@IK z6GC5AJue6vo8Gg^Q=;KSK1m%=B<d5CS%Dyz2R*&YEn1Dr^g#dJX@P>uI6~}vx+zgm z#|v_KOHHoUZwnTj&v#UftW7s3^>nPY%i|IRRbrKv(<cb=f)-&KM5QLd9GBYG&#qM1 z`=mAMk*5}~$Z^`fEeVRoM3+(s5MNSUO$b&NUetgN80$eyH1PwMTY4lL1%=IsI!LBb zd3|24zR*tW36AofrP<!r25ZAC$4kWt6}lBmfIbp<Rj<?%t#`NCAd-KngDFYER}1Td z-h0PpCT8kPngnCf_Y1cUEY&F%DO6fetJbPC_-)iq)rdm|$l;~bWAm)31L!{XX>=AX z=z*Pc&02T}4Kq}W!pGan;(4N}E2x7Ol^mXfxCe?<5mAUt>Jqa<L?9_5#tBMZE(#ix zAP6>2aQh=NL>+#h(Agt2Tu4sK;nK*U>uVQJugI}x9JpU&Q0z^Z*`s<$x?A5Xzi028 zr_Rc)TMT@OUY&na`rNvk^P4qXjh!<IWhTp_4r15W4o^Y9vCpbi*O&_&sR@bGlk!5U zT(3ptlv}GkOiO@(GqB0A#&q}S@DS3!0J(qpjMW8-c)iG}b39Ws6U}PwwwyHH(0fo- zw!Xhj9&Z$FC7DWfkHMBKEwXK?ta`g8F)_~DTA!j-^yua9osirkET~0~s%-RtI7OeL ziV``eOV{R9+=B0_GQ{cQ;#Dy28Z5~MPOZ}ls>*n?3*Drr!mg61_7U80Uqd>^%8_z0 zaYUX;%v0;URlJ(_PZiTOK0^u87kh>z#M_7E6$*7x{Y;cUV;J&W%*2@YfG%MQEf#Of zf;e!{)v%Hf9MS|g$dBL#sHwY9A^VxOQ5$Xh`De0+d`tHH{K2|G-9>}ektE)5{`csb zBwaot791b8ZRpT#!=kImP5C|O)MyF0wMYI$It+`6D7-&f2sVQ0FThJ42QTT8VjI*0 zxrq!BA}rEOPc136;XG)D#adGIN+xv}tDwVTyk?Ba#Cc%hm}1w=j$G1tN6S$Sj_6|w zap|%vFNfAscKkS#{W&oD1R!gc_8`Kvu;l#?=9yp3LaXm$II?PTTv7wGgS(h|x0-bL z9mgd_FDr9&;M7ycceJzM><x5BLwn=_u9~G%VA;Z$rWiTzq!W*mYKNb)pbFTU({xeR zGzZ?8I0d1j91H+VJ0w+cp`TTGoYf7!ThhIC$DvP!_Up2Lz@_Ff!V8nN7~^%KZAcO& zRf)yQ)|fHir-ErtgGmi5DVYJ()&jd{?8U2NEfI~1zk~E@Yf}}v+(A`ao2GZ8Pjg%q ztY$mX>bS<&*!w2-fK0W|-W2u#_UaefS);O+=qjU+k$$k-y4c$9xAgW$I-Gu=i}a_5 z*qZC`_qH(JlIa#NzhCwL@%^llVip$lSe$yyz)Zu<l)aY!@@nsF-)`^kcByTL4%yU| z%{J^dRd(<Fm$w>m^q5<1w>P=I`pVUur*<7Z=292*cYXaO+w1n>Vserm$OmSrLH1xs z8dvq?fAh5<A70(JVYZ0&ZHPCQKN7l2w7+(Lr42;4{LrE02U*w+Qk>JXXU@S>mp=;Y zev0aAKg{t%U5BJ}W1o`!X~<RGqqWDU_zaR9b@@AFGStTZ<=MNlKEgu`y$_LinR`1+ z?;0*DfZ_Uod;0GsDV2<cRl*yfpYHEC?uVoGeq%3V-aV$C|Mf+pmM9pe$GU4hZV!<; zo&EkNDN0`?JCYsV_{<hClx4@b;$2c%TVtHWVC;YV9?&se(yz#`*j9ut1!R!O5X9VI z%z=y{{4T#PdSHhmI)tzJVi}jMMVGd!G<BKfS#_FLB}_5OrzE1n7MEIp?L?``A3i5# zgsRXVb=&@wWQ0N)bYGIcef#!yUvl)=AHHpv=^d|Vj~InTWNoNbt|TPT$SLGVGAtQJ z&?JoSmSV+9OezxVF%MtM<=2)d=+~F1YP6T~vb2D6Q!n-oy*4=mX=GS^y|I5virJK# zYci*#^uP3)(N~nigXxMs%N?h(Ouf!|lSFhkIdyu+3i|Pi6pP8&lrrGxfRz45lNqmg z4ISx$H@tS>1u-97`-V~p%s@<fj8afYpOVms4#LuIbrVRx<034iSA9*w$UO8ChvVZ+ z$;l?2<}h;$3pM<g7s46vLRqMCn&<>mvT{*1+rM`Fg;@0eKYpV>_EmWDfOg=aqiL0~ z<HHX|aSTKxT9$0$*L<OCsmM>umaznk$CL0M8LCNJ_g0d0;F{O@Ll?ZT45uMKBfIz* z%g{KDZJ`b<r6W<D#NXwd_=)5vV+Qz129YR7fG@en;s7%Ofr7bZ0mp=y3i3@3A7E;2 z2`TGD2&^en+UN^|hYU@wn>lsK#8F8kBXRVKm4gm1z2(6VpB;1a&_b=oWf9`j(?VHU z@t%sp;@YCIt9Ee<-?Y6!H|OOA^~H;K`~+6vhWEdwtLbN_+YbNUNQz&0jc}#oR;=H+ zIG1odQ5#Zi?JXn6Oc^_R_vD_ye@Pgyaj<)>lJIqQWV3Qhwh7o+rTJDeeley6x?JQ} zAwCr(8Brf5dY_ohi7HsAe0qiAy+EL=B|pEbB@o~b<mU$v+cem<FVaMUWO+pS5toSI zrzZjP3&RBQD%s3EN>9=oxU(Pe|8nF-w&XY>H#wc$Tt^N!JI}$*b~=BelP=0mkrTA= z6p<la?e?xNvWK3Uf*jx2I&q4gA!*yCF>&#Si+3tp#lFA`Hpy<nQ%iPDh1`Qs&*&Q% zzD#;%A|W=tOgKblAZQ{bF*KATKn`RxE5oHhxMtgsDBU4<xCq~gVUuM6NP_X4Q(!=5 z5Cdr*W;z-Ost6UxN~6JsA@@e7Y{lf23p^>GZQI-RBmJ^u?I(e>p|g#g<>svqi3a)T zogKs-c_Uw`LF0+z!=BXkCbNz--SF^{S4V7bR>m2XPGQT68(a!Q;`I8^WXetAN_yY% ziEhh?*4{4qW2j_7p)*BH@aC3R)w&dz<g<<W_uSK_Twc*x+`MyPLEZLr2j}lKU`#+v z1{N;9{PxzC5!_R~>DtXtB0h)sP{$3CAql3#?bG^jDt`Bn-iFp!H<$}uz0}Ug{WW)N zU+GgNS?9jIsnzAqAGAF|Pl$nU95#Hr%V+3)ZvH0_i+FOd<+`3p#F3V+%5n6lsxHj3 z3HC&}SD|;f`c@Qd9<#BxkIyW>v%{GYsLLALugqfcBL|bgXB=4Kao@wfo5Uka{@E(z zIq8LO*CHDWdJvSH5s1a@OO1_s#?uF&Ns|UU%i|J5!4N6TF6Ll~7_dYyfg-(5@~=@C z{cgC}z>p@{8{~SO6@fz-!;vBv2t77@TKjN%><g|Z`4`D!gdukwJw&(CL+f%Gc}U8g zy>#j9+~@()pUfovuQ+h-@L_r^6#Da*k>g*I>XB2YjEwve3ejVS50ewXQOw?-NP1%b z=wpX+llqq?$LeCFB4-_G>aMIbId9I=rE_wne6O+FKT5uYXM+1nJYf5@;e0c0bhM}_ z^2_iu!%5FC>8JFQFS)@|Frg^DS&jCa3M7e4#`G^Ty@}=ZHiUEx)K!UYECo7{p-jdo zj|@F}y0ako4|*b&#QPLI`47;e(ZRP!!?O~^K8AgNmNdQ<l!qscPUu71DdO-+dB5L; zpt++@0#ddmRM9W!v@elE4M2Gbr~l@c<Q9@#l_1$}VH*(V!giYsi*^~bs3Y;XK;nj& z0SJmpXr~xPL6i)&l4b9|9F5K1nAjM~+aHKcV=+M>D4u)$b>FN>*#pLn9F)~IH=RZr zN=q6W=Qc*VVh6^KxcY#oKQCk9b>-5MG4$ub(C=s$26purl$)kBd2gFAYM0-r_GNur z+`qXn)ZEMs`Ok-by#)S|g&I0yoNK#)D)HjTy|7iW8#ob$`DYN3Fk(@_*o)|;j2Lm1 z2wcmk5%aWxR+u5bm=%=4=n`<Cibxwwo92{uE4ds2Qz3kel*pMX6Zn%S;rJ2RCRhIB zJ&~xgdRO?wflcXy>Z<d+YE`C7?@UNAjP&~EWev5MNtVTW=#V!Hx`<(J*WCP(W^;<q zQs|v9qRD3MIUrH+=7h5o5_D=+RzXXsUv9`{Mlc{CrEZ~H??PVo>rVVk?%Is-Evn)< ztM0$&$)>byg*wr$Ru|vAVy4HPHNaq4VeIEjE?nwO{p+j2>wUiT{zl^pU9;O=`QVA( z1%Q<rjAiRruU|HIWSs%}ZQkv#4-X$OXWq^I-=&-A`CAxmP(fab+B>wEkJ7>6*2)IU z+GO)&yU~X5B0*XOg+GA*Xcg!w3&T*;Sz+V=pwR+-s2AoIYuJK#l5oTen{f;?F3@vU zV3k3*q1(IGiN4#p9@NEx@lwPiT>wsFGjxCj@G*k?7^OP`stikI7?TMP$^*3-ZY9E@ z6lxZPv|L`+@C{kJpvs@w=k9-XO-oFynlYm)#Wcd7#-$i)YQCY17F4_Q``rCwT3Xct z()mq8nQ_sZO~Oq%DLod@Mc>ra82@!QdG<d9=bFBwi{1slyt}$~?C2t+Ne3C-B}e^< ziKEi|BTOlg38B!;P^hiyWZx9R@Zi*2f3kW)D0fM2XhQYLdM~9=ypxo^C#%GrTCQI4 z)lpw%ZspUtUAgr^-)o<J@v^VF+%;{*(%Ce1Y#d?7{o!!c)577b9=@YrDe5`x80+E@ zU1DLWpY4*kv3XB(2QJ4OLkzM@amXUDw&D5kq|s+)u6+E<FVoVOy}^3d?4=#kT;<h~ z(eziS_%)`!j}4kKJa1H9%hZ97HJFH6qoKc<8Xg-swFQO4rwn?mFY6Zy^ouBlg2gco zfVzx9=7-zRCnS6->j?0mggTi`+>8Xmf_$aQ0Dea?B!P&WN-Ufvx({2Sf0#``CID|P z1X2(tIBcl|$qa-;nA#C-ohgEuB^JONxx(xT`GVjW_zEr<%4G1PP%8SD8S@a%us|(N zzL*qRwaTF>$x6-FY6^V*0!>^{NM#fzYIEoAZpq7Q$)leWPt&Nrj9v0OZP_k6U9&a8 zpWWP4$&o~7ifhE=KEBZy=L&LKD>n#9TD22dF;mEO#8>P>D&1Q*i~KlcMNL1BG>#ZN zkQB<}t$tThs>O{d`W;_kp^yEzZ@O>G(hEmk&&|rr%^kW?CFs)zmlZV`Nvbno$Tucu zxL1s6Ny&8^wU{HhA{DU>sV&Y`45Lj%P^ieggP^2UspIH7@p1(8X>QJsSH$U@32Nb= z6G?4>cTl5Z1Oo8VUxziqKSP=aiZKs7D9eDiVI96yyQ~vm%FL1;#q$_TQY2F*hd>O$ zlprnG>`;k8WdxOn5dyBWm4t%>6mTyHe+r)_3}2vM^o2Q!0DRv}Ko^*K$(0#j+Jx{s zQ3YGTp9(oP9EAG6jF=Hf5H=5f+%4td;ZtW0brzA7qT9m--@pCNa~XMkDuz|{3y+++ zXmV!N(ES4nGKMZ&I`p@pH7Pn>N_Bc>jn|Oi;Z_?GbCHdaSF22Vcf5fNP#Ol&UX6{t zdiU$cmv*k&vQ(j(HEmq{ZXzna`bCv~oIkrk)32rP?DAAmp&V+En~Do2-MDjdTd*$2 z)tJ%H>{>poX>o0aQmN@G@tf2lUs#)?(gwLoS3yNZflFG_rVgG*I&tzbe8~lnF1bcr z9T{y>bJ`C6&Bh!1Hq`ZM?3&qQ=|=KE97k@}E?V=gTy+;+T4bHnN0JqzV}-}JurO~$ zy~mgu7D*~|&fo*7aG_Di&dG*=pPNEzHjW>arBb9MkM4U5sag)-L>d1Bd5@d%#MARk zhLJVTZiwunlki<xti*OP1f0HwVX_eW&mZ6nVLv=E*e769Japkw9^807#)ni27+CBJ z;>)u0F*NyS_~J^z^Wg{f_)uH<$Qx=VE-(7)F>-O;Z;wqKvg710orxB8AaTH*x2zl! z9=7eTvnCu~KQ7&ztq=6nhZFPW-}^Cr%%AG;lEqx-*TEShN>`4oo*EK-A4Z;(PoDbN zZ|fF+_Tb`FyCO3a(WLZ6lRNGiKI^Yrht<s8`|$H4Qjl1y{oA*mziBYuhg`e>zk}m= zA9zI}p?WUhk_v?Mk_%qYb1$@QTo}DF9<m%}kRqcWQNAI<;S^8=x%?i}h}4v+ZJvtW z?zlMmFZx|m6H-6_8W-p4UEyh)%Bz!;{4SR&F5Z^rUMXZw*zx|_HSh0e%Mx_eiGhSP zTfCcZFDh#LWU$)q%Qjo$)G7=yi#gk8R}cQAO-#s6&rh`wuJO5!DWqz1<o&(FTlTzn zaZB31Uej_ro@<PbGXt=4r!i9oU{CBN8z^hVYo!Q`u3<djQ;T6QOSsK^(h-9lAYjSv z4{jLxgO~(rVXtis;C$vz%|51JVcLc6!;JOn-WGQsq#xdI^?4EtOMUe^dajYaweU4! z-uVQneIJQS>ayzUveH9^kykPb3p21IUvkspl9PLTJwiXYf5HPluD*}>AMHAvUKmPC z%FQKDr56>YC*|buFYlxObLYSYUQo$({OZr&B5AAs{y^LMf7~LR2xX*&f<p?A;Kw#2 z_bvW#<dHf4t><r<_3GB4H%AJyoyj@5Ny$0gYkb#>bh=WM&j(gXCWB1KJRSl*ObwE$ z9MUXeDk}&>EMZ&mK)F+XQKkwPmC_XYQ)0iqS$ghvy*Fs=I!*Vv{alJmA#=;;WYl`k zbs(#<?PdCIvOcM28tHE{avvCjUL;V;epFZ9tI{BV^M$U4#T13<XFkS>gJFb`uK_4q z+#hi;qht!;O#nLsgg25Z)ZRDx2s28k?rfl<s9)suoV3IU`BCI&IgWN6;Kre1UV4Cv z3fn3AZf;`{x&3?Nh%x<63jEvWUliWzs)_pbMX@<j-ZltH_>?m6H-O-|aYrVhVvh2n z1jrBps+DeyI^)UVhhWxsr;-4fC0X!+ed7w}*f;4Br2R6uTvIY%_}80c+^JJ^-<x~r zH|<Na^Q&o}wBpqKQVU;*I35BMpXjGaVy~NSzf!h%(lsS3)8Ir7!f|l!9d~LWE?roh zMxJuznpGBhcX1kBOS_olMBGVfP~cwqPR#c6-y-zL{{JHL{Qm^xVf5k>57Gk<0?jEG zRcwR2V(z)TZ;x4XVrd_7IBK4W?c2ejT*}|bcSs7dDBP<0%I&Uej))Z!T#3SDBWac! zBF7`u(Jihz5-a15bJfx3ly|@f-i?P&2Pec-!r)+-^`tv5ISUn}tK_&2BI7!kj;;fB zNk10!2a$RZK(oE!ymUzHh^|Qo%8|MB!HH~+r-vYe7JwUbf%;TIqc;YQkW8N}C7+g* z{;3|xBm>G46T!PhaRy9@*{q~9AkQ&fWznUaI#*sEJIJbS2z}t&_xwH|{{egCE}yjX zL5MsqH3S!3W#I(rc=X&ZA3K--z{fJ(<3G8FA1PgpFyA<n-otiS%<$*;)wDMZZEqin zli2EU>GYUS$ni_X>?mO#1r6=&ewQym7lAKZ7oDS6iLr0O*k{plWl$W!drjhMJWR)g z*x;V92>d;uOZW;RW*6kJ0F)^u2U)B^fWw|3!b5^kgYE`^cZSjpY03c7FIhG^lvS0i zBXNFTA}J?nsjqKL<(AOYUfj{bb@1(ff0ZM%cdpkM2dj0apA$oQbbHc(iDR2{1g#}r zOZp(5Kz4pcVp@6?88BkUq^6u?b>t@^i`S=DRaeuwJ2|_#wyclMV$8~PpBy*rA%no( zemyDc!FNQ)eC+Urvhs}zWRtLmmm>;g{n*We_#qajhKH?Qu&2~y+RbMBv|4ZZprPZN z=(z>C^$5C~b;Y>xqcu_jBA5k*$W+oSnie>BA0vu7rnB)eR**&65<B+Hq-zmbWbv%s z`#xi_uz0$5<{oVB+dYdc<`Eg|v(LC+rX8_aZMGxRrC?e6thOW5*n#OsY_{k{SNJ+7 zV1|@k_RC^pA%>*HWGVWgjFlL82}Kv38x`3E<nk(Cda)fw430k4ZwBM&XY@mhG6$3P zk-g~yWN7b^?bmq6O9$1aL(SM|e$1r8RcCgTKK(QcN*LAYOL{OnFlT-6bWGAP!2uQ^ zF^;taqVb_oV0?ng8;y23oiQl8m6@O*xJd3lEcOB$V$340$a*qPm;7W;HLQR&PbTZ) zp6VHwlpII%Nwv?X&0qa7{VU?S{q^J3t3M{8`)^*a^|#XuH?v^4x1Zk%tIEH`{WXFu zo?Y#9K3Su7#oL6MryLGCpC0$M`!#E~-QRsVvdDx!UR|K|(UrJx>-p``dLH^Gdq3u5 z9G#ESV5`c-JBB5l&{&y_MH~T}ABJGfk{tWw3c!Ei+F-H5;Q=xL+8uT_=x#|cm0@%k z*vSVt4pZIAm{RMC2#zF#W@D&hX7*yBVtC6H$WM(j&^MA)YVDfE2j~y>N<01Gz~VJp zwJM3efvClkQ)~`p%cx<kLs|eO_RyVzvg;cSCh1J({_v)b(~vw)$wiL+`*3%WzaO`o z)b;8D_mA!ZtWEagj*1g|{(Q{fbSFV&*!OFb>Fd7GEGD^K`eT3IW8(}aC%p@hxzTQf zM;1;+9`VX;U9%7qN2BGG{Ec$E{QTdqiKzz_n-ptLm`^qu%AKD%y<RNJ4I98@s4jM0 zG$@XN_lsu5W;&AjvemNfvb(`=Fx_`0Cq)&CwGDF@sUT2|LR5mn0%r24<&U`tN#;Tf z24)q!w9n?S?j6>v;EZzBao>MA&dB>U*F%XX6-j3N>qaN5{B?(Zg5s;3<o<N1&aX-y zZ5fh9j|B3!)8}u=571{ahgj{G?1<=}usTW$fEHp~elp^}7FS<7`2tSnrM)gJxf6Hg z%}%Rd)6uVA$C~=I*?D)Rx#Qd8YSR&#>%;V#xM}g8G`gnyMlg_F+T?%<=&rQ-QfbsI zDjoSRg%}$m<0WDk@I;`%*~oyVlr<3Z=IHhoK+A{GpQDg)$=#W?snme>82$qnD8OQH zGECJ-VT>TsAu0<s%ot>H%KPMt&b)fL(==#Cv{b@@(+)T)O7XF!OQLR!Kc0Sa!yP~8 zRafWze8+|-Pyfg!MG>T%tvle;#C2R@gH#}zBa`$Q%ZPw)0G&!}MqTlAh)Jl3aT|Ua z;v`{eCzvQN%6Mtn)gel?(vLpE{zvp9+=79)0T99S#MY6&;#kKwbbmIDCI{ALld<10 z{)El3|D>Z7-$QOw!DFi#x<TnlB>tulaZ4{L7KmiAQ5YC55jq7wiyl%=LZBf@L~cT$ zqi8V*4TL?(PJ~gwdZ}5@;(DW*5%0nY=bIoSN<}~`a+M;t@WjnGpSYPXoV;br<Vjn$ zaPMX3CRMz9%jh}1SIli4i>a5WU?~$?hs^6}T3Vruqn~d~%F7b;!t_RQZ{zgw^&>8* z#?<Cd9^6(vCT*Cqzq8D$Siv{in$riB4DK~V(5@XjX5G3mW7l@C>20p^jE37P=nE%1 za?-Q1XPPWFThr(n*&tBav&Rl}*jJQ>l06F!6Hi9gf<I-HIe87w+Xu~`Kd9@Qa_;<u z!Ts91E;`ceIwc2OnmeeUA__pL$>WT6FWOFEbXrjfTnEdArjxSQflp*nH4r@yW(j;_ z_G8=Pk=^u{-Bc|eiPU2rSx)ohcU{OPBSC&c!Wmjmp5)kq?CFw4X3%Y9hUkkt$$Kw6 zd6BUJ(SAQy{0;Xqf^vnR9clr+0<e-%C2#=<KY~aR7zjqTfsP-ILJJEJ0r*AofrHgv zLPoP0QKDs-DKH%}hkpdYXCnxmkGY$K3J;K*d=_6C9jMl(77AjzD$i;9OPZCWyZV%n z1g_Ah5g#E>8ufJna&J<qs$reO4V?ZYr7xKdsc7(?P0UMm+;E}anV(?z^cD3OWTj)Z z+`;D!4YlfNd`@aX`l>~Vsa++B`CdDzPv*nvw9Xeqo>GUuS9;ufRh~;{xqXf~lV5Kz zy7HAv3{yg6cA9k_w|k<Ig#4uISazW{z@0WZN?6-SI!=iu#6xpd8k6VSK^Is*gnJtV zan>y{q8RVOx+$CU*><$kV(djh0PIMVN-&ZVrSO21U9lY-suF8$j1F6An*(Y_Cmdwh zu=CXm?`P1P=HmMo3fR7X;e}5jtV!q^iY4!sHm_bprtsD5;;!RtdBwI^P@HxF*23a6 z0f){VN1glGDHq1FrEpxTA9oR@eTs8%ul>>cORzF*Ub{w{!7u6JMrB{bH8a7hE)RVv zRW503F!^EXgUHPy=R$r*jCH2Oxm?UKdVy9vOx(jNIM)fzz%_FE6K<}e#q|g+rAk`H zH`4Dfw0T-eMNbE*BW<Lv!y_+k@w7d*?BKFx2l*5iSJmQr;r;jj;u==Pxeg#c_<?c5 zlf{~rq`B8$KR2nRMob<~?_=jK!?OZH6~lrtSvCNUs0{d>hD$j$B*GK>Zuq9gs7E(G zt>omL+U@njMU9yz9r#rolju~p+|+%}wfo)IFsuaQT%~*n-!p2<OSHJ#Ax4sTqPP!6 zhyehJicB&P-iCH!xpFV+J|myoZ9!weI5@yx%DNDdu3>W$yNZ4<UCTvlqOp2o$D(_& zGofdU(68k_k;+met{9mi*^I}0h*+*jrhY>N5Wv-0I5cA6IZp-$Fgs_CvVhRkfeeJb z5WDb4jw<^T4Sm~^%zrOtJ13u=vZ-i5LF%w+9)o8oZE!Ycmv}q|{>_{7htp)yrZOpY zEP4@N$`UJ??Ywb>=zqjYO79vKw83Zgtz2qVr&z?-lLIh?i5h)e%KRPowbDHzETn?Q z?Bo2?={Z`(u+CbYIgV~8jue;qIxgQw67C+oxmR@@=CAYg7x{CL&zUX5iP;}s<VK_- z<XGGd1xT5}>fu;$Ug9wzKmbP!dL4pOOGW4;+~9YX<~MqBhljO-_^ijcbY~GAzv5@D z!Ne7k$9^O^sk9`W{Jd;pPx`KXfMC**apqKbfFeQI%g^7i|J~s|wm$n$#{s(TYw~AO zs7obd=`#@noyYAIN@#C7iMG&XT!1sdi8xW`a7gpRR>fcBEz<mu2c14*FkvzPrWLu+ z5#v8q9}FQP9n<dOKSI=b5U~aNUKs*(VcGzL7l?fE+i!|K*{a&>|NH?xzn-)m*)h9R z@Mk{0aLSp-_syxMD@!Kd^4Pmyc3uAo>ECr5p{vMp`aKEI_qgQW_`RFyXBWSDYHdAP zL3+&I_xM{=7CxTo7s_VuIMTN0n^z8Ywr1!8z38C}orElBx`~S=(2M>F5{ONT86{<_ zgN`eeu~NXVTpnbMa1vuG57=lR6&6IJh#e{YBdiEPz+S>kG6XyXk{L5C<uWrP{Q7yg zR`Egj8e8ShCn=Ve@|beTmdSn3Ir>hX+*kf}-^u5``)<$8x<YmFPyDdj)#U7`ZKJsz z<oc`t$x16Kjx$%+&DcoD4VfuOwo_MUHuY#*a3iN&IJeaF;U0&0RL`AQpR`}8bSX*K z`JektnbJqpVcC_)mC+?l1f4}|NuvpbE06r;nXzRS1m{P5G{yC{se?!MFu4thPM2zB z64ySSE6<Jmvv<N!Ku@n|7Xx&YPM{zM0zJ4uwnBDT_Pp$U*-x@A#1M2KE=eKjLF&nL zvY2d;$-Gfg87x3!q3Iae^cGlCyF)69R`61CvpnCF3hWbbGkNeI!R!r>rw~J)!3C-y z9E36hA?JZ;4u*nOBoe#k8%R+Np>Aj9AZGBvhl0uk@N)}WrzlXUK!~?sInOlIP5~U8 zIatVoM`2Htn^0{y)r_;EV!SyRhTS1l2r(Jz6&8pU%tAl`$PVfRa6A}FMQx~$sae9o zLR=?p1pwp$=7-%0Y&dL8g+-TYz_mD<YL+U*Rk+6$r&_N%Vq~w0T8w}Z;xEOYs*vZS zADM9*D{N9y-cU49QGSszRS{sfvj$P4QL>gOEC%KT17aut#p<(K4TcN*3~U8&tGg@2 zUgUPK)#|m7hY0%z!h<9aYz<Ee0UormO@atb$l{oAWv@JY_keXrrtDlfVe*vmD|Syg zvTguhJf^K}41RP_vfZVNci9r0PEny%%T)>%WFM9{;qo4F-koG{u&^*mx};kiZb!aJ zYYb*&W)z#Xu9j6wl~JFU=S)gU@l{N$PWES)n&T`*Z);OkE@S{z<`yCuU^p|;pAjGL z2>#|w2xVp##XFaY>FVTU9N(LqP?(uj7@wTPD|9YUJp6&MvX^4eBdic)ANvSoB^Tio zgKT;1b#||~VQlN_6}vZnzplw^vw7`yX-Qm8X`>g%T1ILpRMOp4C{m$Pj>O63!j(fT z@;GajA<bWY`&IMc0qdTns)lzzdbfcs=w8qPo6V$Kt4YyYH5%mPW2veW9BPeQZ`Eq0 zeT_LjQ9YzUXUZr~N8nSVkyj`aG&Zehu~`v33VwA~YXY$gf-0dRF+Dx8!fBJ23`%o( z{Ya-}QccI%y0wia9ml7+OeR|bpXPCRHFB-ZXd16Gk#x5wjW_DoDFAI++i27iVPG#4 zNkgVYl#;jfdY-4nP@J(hWv`8;i2SIr7C@Sx6LE3Igt)i_Qa1V7bpr-ZqtDal+Xt`v z9+^41=_a!prb!VgYJk3&BU>U{E?W=X0%A}jP63#6iT8|hn2h^`J&_G+hMC9#*o(~v z2yGz!JgLSYdN^}aW+*J5UvfPShcF5;zz~@`B>)pUvoK-mU_&l8+!*Es{#5J$bl1?Z zLj;K@T8?qSjPqAOZGk6IEGyF+N)s8;jgj8kGUdQNW9qc=PIJ0B_uc!ZPnj~Ej;dbi zUe#mZ`|HMyTQ`>8TRNrptpojyrN#XMba$r3@0!@p7jzh%ux_Ldt@Na4TAXx#)1VQ3 zhLWZ-d7s>;=rMW^?f0Vi7pwbRrN?6rCnSXV{<)*L+$nu7Q)f!(>BWmzB=j;So8lPS z>~wHoK}{ijjTD`D7dIZeuCLuPta$jyKrc*+*_jn752tx^ki)>6u7{tD&ZID<xx~D5 zmoFh9+nF<}wC7NIn&i;ak#^3UJpR^=YkeO6rli~)r}bs<lh7f=<~b)MsbX0p%MD<T zNdrtR5b&4-9ssO7VJqmI^tpVPkImhGMm}f_2YF*^po-{8DndMB4rJd;A53JpEWH>E zL?<))ePtEhJ%xTk-};67>AD49M4MYaB(jz~M_(ry@T<;0ckbxUT~D7se{|O?Tj=*I z*3#Fr{+W6ES4Y14e8F`eZ|)khxwl1{!}_QmdE~qAA}x`7R<0B<r`^iwmJGUX;1by6 zG!H&Vf2Y6wsdXnkMSdi6=}qnJ2)_OgE`dHt>LWjsdD|WW*VO&q8uZf?=ym%-`?W&0 zLv~PhTy}!>Qp`fEdqLn~c}y^ID=-m3mCj}XY5NcJkEBLbAU+qgTukEv+YXegKFm67 zPKjDg!&pZT7x@#VJ`2@Z0z?d~q*&k4<I#vrvAX^bRfP+2y@FRn13HC`F~?r%4Y-GM zQxe@dDfU#l#D~Z!fmD}{Qwss3-IAW>#3rA3spm7MV@vOnZF*?>6!KmQ1fV4veS(Q^ z8bOMB#c}qko}(&@>|s5xt-?V+QEdK!QwqJ+igD?Ju1=Gh#x-brtGVXhB{v(ma@5hF z5%ff(V^s`C6<Xd_-E(wx$Pv~H+A5`n^AW}U+FCVN#wo=Lg@%;V#~mrTo<vU$*PfD{ zjBVF#<`lPyj92p}Lm&}r^6};IG9~h2QNEt86V-95afrUi4bOG?Ce(zh?M96@Ax`xp z@-5s-h7v(ks<v!Mh~uVQCrpmhlC80;w9~G>$U>qQErHYRN={J4E6Mz4T@FtUdlE_h zij5ZlCSe=y0m*9|GV@NAEt1`cUIU_*ddaOCoL&(txsp$TA1Pu|Le~(A_6Zh=2JDX6 z609UfP&)-LnGitRn6g!bq6x?_5JNrG7)A^yV@P2}?~<(P>;Pha`dH+aOFb+cLdOj# z%#O6R>2#VmJKO8G5*s)CGI=BV^s>^7teUE_-pymv%F5CUYWmeS44N33u!8g}E%T@o z5leDjTuNTNa?YywEayWv+;9Wg-Y|Je-;x~pyj5A;a&G*HQPZy*KcKp#_ZS8D&y4i+ z3{|hfP%r!Q4(|As)U0b-W_gmqqDx9yW^1lX3nv+EdUwY1WT0X#v*sky(WQ<0cFZS< ziBGE*iM-kFr$wa57|+o^k=JMu7dI_&8WomZH+@CAJ92x{HqWyN`7(9wy2<mFq)c^! zRPoSZJC%*%OTcdzF#V^Iap!DSfDXrEfTk1t7tHr2In<cI&4VqKjMxO0vS^023L<#| zgvy9%CHbcG;FQXi$|wIZu)p1`1_znxP@2p=9A{gkweUgLBv;6;GTZwP<PKCEs;E43 zMm$JYwJb7Mv&gyCKKjwIs`>A?BwDMI2>*krhXdEiWvIcSJijNUxYC-`^8S2X*Yb*r z%HhL7e_`v3J--L`jZ(<+e|!VzY!z2MJaYCxsms22_iI492ZoWwFM=h+9|~UaCR+*; z<B9jG*Wgxg|5N$it_k;Z8C{K5ze$WQ*s|L+jqBS{DZSGlUTN^RPgJC2e0|mHAaeZS zTkjma>%H+^RkrjTL&X!{`j)(K5B+_3C3`u%8z<=mnXi|b+1>GBn55*oQf(CU5FV5j zk~wmBChID_<a2MOE;*{iJuj&hNQcldM3~jsmDV^*7$VQ~`2C)eZnePq!;Mp>G>VN^ z*uj`y1pPqf7T{2NIrq^u79S-b;!*53gX;J>q_|{>Jy`3x<-+~{_oPK#3yu(Fs|5QV zk8sOp|I(}1UyzzpIiBGcTIty%;vr-_I&n>f=W73horZhwNGmYi%}L{9^`O4-49(Db zB-);mt*@B*p5YDgf`X)wyA(VQdMeiGK>`4zLRe^BEIT-e5au6A3&eFRc!W2B*N#H7 znHJ{?ICd;-`e*xw?F?;w^$ffvvd-Mo>CeS!?G2~sDQ1#9BhCeQL#hFVe~h-?vG21! zRclEWIY6?;d7ue8E@|dFfcl8EvFm|uMjwH#d#3bGCP{~3WtLk7FedC%0DaH=<Pf5R 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%0AW&>RYA~HD<v!5Y(Afn8 zE4L=yz~IB`YwPW12)>6PBrC!O0H8Y56|BYN2?ACdKtT<7NjN_Hkk6x2z3!3UMNXtv z_h<KszyEBTTmSv!?>_S0nbU_3-S+th*g=clm-t+V*LAGvbBVT=rp6;j8r$6L8}EGj zNKNml-kKv%zjFZFbH4Y{;|JV>?_>54T24Ottta&F=s&pONU3L^X#77phP_kSsVBbm zXynaydw)b_+i%tbJ%_B;9`+|q^|iIN^^NMm55-zNp4Qlho_zR!|K$F+9kVpPHTIML z{qU2Rub8kR=NIvtJ@FcQxE;a?<PdQ#GTCtUCUf?ta5b1t;sP+W(jsSi_)e?^&sjcW zxd-^S<JgbkV|Wfa*x1ZdxWEkz1f&`h0l`xjdXPq%28Ulu`DSnew{klQF+LMI5omZ_ zSIMg!FA@69Tz6Mjcj*)KNniZUoad&SJPI@668GVNc_)8uD}B&+^k@^oE9eZ~1PHd2 z<oD4&p+^tC_9Yg7OUp|SKG>2@x9H>iu<@>Uzr7K8sR>H~xrg5FMp57Xz(cC~?T0=f zP_p`y9F74@>{0z)ul6mUga5}msFi5{P-v&k4SaiAE2}1Z+AftAi3U<~uv;QJvY}U* z3ZAI_v3#ukmh1H=6EdK^jfi~FTN<6%eITJfdHpTz?BFl{;*V>!qU)&cyhrWz9LGjS zrHeKjU^&^-A^iYM{5ILiMqI}|y(;Xi>>@Hv2|4bpWf533%E|d*oG~@un-Ip-)GUUP zi)k{Uv=6D+7y#LE`piVkq*h|9<F-H_BG&8Or)B#I*?ma1w_qDQK>^%GN0cDM;qH?% zDau)5xXI0Lv!t=ECE0s^`t;BjzqRpC8{f=*^z=`^hb6ga<##&Sw>KHgk?&{qn{$so zI=89+^DA?YJTk}TzQSQ%58QOzGBj}SM~4QSn%D$1YjI7>Nh4A<DG%wFp8MFwLT>2v z>7m@h#>bvxjv+b8<5y9-JncHu*7i#Fk-1G)zeNRa>HoYrCtv;w2Q$3u_;Ke^!r0z( z7QKUMc=aLJQl5ei4m%22R{dlww6s#lrjYPkFcAoX42DF@m}yBs-Yx~$Wz$)Wi$xTj z=o+vr&3dvo8vc_0{b_ycKA?U)$9n$zlmGbP=sVy2<)TjAWeL%1@hf+Y+}qa-AAM(^ z!tQ(aPoMbte|it>aW3bb^Kx7FGZFUQT<|jw-9tzp=gG)}Z~nkfg~A?VEz7m|PxoJc z;DDlfgWa8Vb@AsPJ9GajR}X?fZVsV+P|?f&xdxzMPr>qhKO&wVk$!<t-5&P|W*6xO zEgs|<>_omn+MUZZ!%`Q3WU5brmN^ir+IR|gK-pZORvlMgQ{K9WQ;v{BY3mPjFA8ER zv|y>9(f{$%r$2p(r#93zW?P_~C(35f6>e*D9mn=c$_>Bh+Wv1r*IU}!$j*5^otJHV z@gxV#B6aGb*D_x|G?IzPw%hKdLMVA9zj=EQ=(BKZ8^)&d7?pC?c<d!qp>IJvS{W7> z-EiX#wYA4xW3KH%Q49>d-s`CjTE6n6B(H`ToRYhI{ztsF9GOGUQL$$VRfIq|C;>7Q z(cz1r!;_FjXhk=TaqyFwNF`<vA7><nZ_z4=Ed`3-Zg3s#bg&n;Z=nb|^#}U9>pG7f zX^<Nmkn?w&N9JkLv5t=I_QuYmt_GHeD~077jvVW#EB#YL4^|6NhhK#}bU(1>Z$=%2 zt<W4;!(eED4CySC92j(Yl44SQT*|GG^=@J1`sT<I%SR&#q$HN8q!<}k-AdDxlUQ!R zVs-Suck~>0nW(=C^KBN_n4a404eCg*nuQft<(Y>Mwte^?{tFZ#+`>IBRsQG0QWN6c z$alNjbK8SmeMxKJ^=+*a`(5A@G_%IKYOO{IDI2tWk|!2ASB|Xg6^|=&mu!$JR@vYR znjTu@+M2XTZdW}i*4q*5W$fF~jCpn%F@=1+#kx>lH;KS$8Q|-%3AR;?!B&i=f={nL z)~8rmb6=Ns>DJo=KXv4P9=ZM2SN@OJhr@Rty}3)d=xFS|p4|`N<1N?!7~S+^S2yLH zfAg6`&2q<A|LBXwA3gfjk6Z3+3;6Ug-^o)6XUSe4@IB`X_+v-)O9zhY_9nnII}sN7 z9E}Q+aphovXmLW$bkxe}``P{J()vrWAA&9_K7PtA^fS^~>F3b06Nr^X+Bq^wLIwZ< zGz)()ce7wGBJsN?(w0Yn0D^yl!Cwpb69xtLX1Hc}%rTF&1)n{k+(Kl;>L?!^`Pm`< z!OsIFd;0Njrk{TBYfTT|p?u`@hnl|j;M3`EK7Qj%pQvYt>aTy>P5n7)%@(J+T>njP zJBlQc^`Cg@=L8t4rueHh?8(DwXW#Aa#=06gTT|EQzP+zgJ>2eTlfV4HqtFVIAlpYD zkbh!-=6g@r@$=x*x4rGoQ%^q_dg6P}*q`}9@aqSGeLZ^1n-hjFC7F2hEk|n{2M>Nd z_yZ-V*L+=ng;~GOep0hN`ut6I1w6IZ!w2e;$+`oFt+k%OT{k_is*+BrDndkRA>=Ed zxd$7=)nBz<#oW6dGISJs-b<_;wcgiOe~gP`Xuq-WcCph657q|lU>)wl3sxK=EsTfI z^$e#iyN)3T4aMeg<RDTVD(@+M|D)I4+Je-;?0<eZT{m#D`#wAS4de>IR(GuHhWCH; z!>8Up_Te)ihg%OkKKaE*gQtV1GJmo7@Ox(aYi~Y=9e{5C;a_P#T>R`?PMqwG|NK3T zN37(@IM#k!*Wtr*8d3DUCr<UB*!CVe3=7xwO8V3TCmL_Q|C8@1-Rupv9edMzZ+T|m z&Zlnu(BrqoKGF<k?9}t}aA`broA-{$O*h|mxV2v6`s~Zt>-%NQ=%1%~#M@-}2C*cO zxmf0^ju5Z>y?xmD1GGn5wuxoC38dBqegqJ;srFV7ynKZti!?Ml%*H;Gsq$>zW-pUh zvP=8_BF{ZCc-Ny`G<o#&457u|din@AK^?UGgQ}gLzW=?y7v}8fjt{0D_#$H+@BR8) z^u>Fgd*s7+_Z~gQuf)4~D+}F~()+wY?+r)T$Tz>`XjU*1`0&%uK6_I6`MU-mc`ouO zUt1nM{Z>M!&73}Rgf@wT3KP+^(+?b~I}zsm@^oGOy^phF!9#dhH2uhP_uwJ4l(~A2 z9W!rbp}Skz+i9nXdi`HM{ps5J(jW2<k%u1!ESB?p{YCg7PC{CYqn`;qRkpbh%fGez z*4uA{rp7mVD2p~oRtgYxYaLruxEpvIuR{ZD_Yd~HVAy9-ywHY==3fnEP<!UWTkW@X z^|*YWeJ4_7UX|3Wdh)7-WRnQSLhuz{nKbyVPv4hK6QbM~9(Z7~^baLcH^o{7dj~KI z<afYaA^yN97?|@~lDfN2@(plIhYD8GO2hhztr&uw8DXl0wlVdw`@qv&-DuR`(R}o1 zGt)CmOTuUcE^8X!IJiKT*Pa8cPeod{8+GUZOX`E~;MIc%|Nil_MSwG~zJ-Vx3FS=r zYxKkWxC=;M#9hy=QA4U?7`peaTf4PDCeV1zZ2+@#10-m_di~m<hgvva+1>#54%>*- zeR|9U<6S#$p_q{gZKuuLf4>306FNQ5Y2|}Q|C8upFkcAA4r>Js0y{Xd921a9Y7TG+ z%`^thw7}7(Nl0re_!0z`rgD@yaV$RLBtBZ@oU*29-O9IkL&6juxGpcg^R3Qf*XjTD zATgio8u~x+z<mz_Ahq=SpNwKmklE#5nvNay)v|lu@y-tj^zH{f`B4gvJlgb@cTjTw zd*9l845|C{XAT`H{V7z-Gxy~G<%Ke)?73Eb^Q#Y`u%|xKbo8it|9xW}wI_}_8%v*S zhQ{D*Y#;iUFNPOCLRSzhi^dd%b{sm=R9ZU*sPMP(MF{$+_qKywsLYLrjyB3qP>o8z z3_bSd+RjhiOO?QV1Hs?^OWg2*(f@VFK|@#L@z9i|`|cg%Plhv4E^)G|8TlsAIm9kv zd3$JMr}wZOzDjNsKxl#t<AL~~hu|)kMi-KX4M89p<VB(zaV*3gab3^dIWjBIho>J* zE{yVWKvz1aFuHy_Tm6aVC1_e7f=^`_xchFxII~_4c57{sp=-)k8de|UQH%AA;uB9p z_rymJ_zAZ1tB1V9sRvZC*NY%@5rexk|Fi64tDj*tfBVhRyT0)3v-;Q%e@}l&zxvIa z+H%bKIP-tyvGqTA{?Yzl%sj6D=(ogimVLWeG_=!V(XgOaogwv9i#+><w}0xJ8~VR} zW>x>CXD4!x|1mrA<?Jv1kY%<%GW^N@N1y+L^~b)(dWS#qq&R*-|AF%0ex;SmC;ne$ zpKYedcU1y$*PoWDZzSrPLo&KX>Eu=}t`hNJTADI<ARQ3J3t$Dj1u8h^7zGF&X6z;X z0<S7N@R?Qi1UvSHw~u~{*W1TeoL{)(j(yr_*6K1+1XcP^zo7rp>Sy$yP-kkRTurCj zuiaOCoX=XX!p?9Ekz}A<ZfC%PL0lFTOXws+tc7%UQf$;1fcXyJz_?%D!VxKx5FJ-< zmk}t={swZW8<T{&X^tU-Bw2sGEHCyO<a-Rdc+}%3^#Ad~)35xHHX-~uY(iLi3L6aq z1o_bSj6DM7U)o&=%42TTUEW>r6Aar6Qk*5j-hyKPL2UAf0!wz7!uigHqCkVDvDWbT zz7vq_vD%mr1Y~Wi>_fS$c?w(zw51|%o*Ysnz8KJJ>7saI)!vCa+V$dydiTy+DCCjH z-`^SgEnd4F>d%?`BpQ7p=H!oUD)OCqMbu>jHV>}IIM7MB5XseVp}f^~2pNh31cioP zM{TC{(@^`kF8VzCgsh&H*(bQ~au@+4-qs`k`sBy;qeogHCFbcg`y=+ukuyhNUMt-q z|Goi%DBX)*(EdjMM^^m5O#dgI)joFoxc=MlSbqJ%2lZceK<j(u6*^y9DaP1whvV1o zx|_AD-vB%EQ$I3n=8FE181^f>P04G20<7ZkP}e~ufn-ta^2KDt+u;Ku3MBRcnCjSl zIBJj@-tsop;=GCD>*b!hlb&vD84cZ|4hjO`2kg%sZ|QKiKm5SwZf3W26mEWyy}h6P zmQ_*yR8eJx6(cAFg}q<DqSPr_$swHx-E;_rvnb$7Z|Beb6xjvYyXoQYr)yzV!gY?f zMEG+ZmPRC4s&8xq%d_^7>!7(#se@S5t+yX})7{5Ec<|Y*l0EsqPU+9P-=lB+lvcA^ zqbmQ6=TU62<h65X!wv94c0td*1uI5tV`~q#&Z+CJ!+T>Z-rMN_C-6mg9c%2yr|ur} zU6$m$EamgMREq0(SM#NKp&;iA+p&Tw6}Iy9s-3G`KsOW$;v$Ai3v?xZs2?nlU&5$U zj{8qqQKJAf7pcJls&7WziXBE}D>kyQSett>!;$D3GDKge9cP>D)@BM)LHNH&kEdW! zvoxXw2EGc72mn)Dw>dmII-E(Q(+M@i-!eF{y&M@Bh-6YJIgXbMKIj9HRB9rXnvQ$? zrGgyudl-)7SgGLm#I@Wol9J8n%P44*Ig5!*CQ;NcZYDCrNRyUe!I8+q>O9J0u2d$I z(l4OM`PGF?YCMHMUD68yPu>&YFAN(UK_8ZyEP3^NRqg)wwfYUVPW@g64Z+^9nM@K5 z*-X+q8iIE;B#wrJ7giU-Xo!<H<YFpACo<GC6De+EI;X|87G&Ll!H1n}vRmAp_TGk* zDlnxaYk1_s`0}!Tad~-sp7qaf<?*VuAfemxGIK2#^NHz1p@0{mub#u$i?W;&Oj!Gs z*FgkX*VEl7=do82l{3D;g7aI2c@|Xd`8*2PTY7;N(CHvM^fQ-{ITraK>^lf<><Ewr zfwJvUo#E{wi|om!j_T}GPzIQk9LNsO4`&CGMHDi*K8e4gl!~Z%P)cMw9!Z@W2mycL z@&rQzF-1z#1(O%)3*#cLlM5WQg8piS4@K$#+`ot0jVd@mMuuS^M0n_0EBxmIyrjjp z<7&RDJpDqXKN*{dCHo_aq-SA*2BfG(%@;&<#8bB?`~6<0!{PM$`$KGsF3AlU{qUkC z3;Uo3{C+cfySaw-HFt<%>uy%e!L-;ir8Rv$GpmF56seyVayc4Q^u7F^Olg&QGqb^~ z5)GqGNt(TnNASKDJjM>`jamyEc%{1=v40}1d(`0#NL^Tt8iEMtQDW2j<yg7TWBTQ3 z(WB|SzH~X8z0CUA0PDY;y`X0fOlG6upc_BIa5OuqE=;aXO|4BbDSKI8!Y(Jq_4$iz z>;lybwh`=cyNUJp0LGyOIYuRL>%Jzbxm%Vz%w!>~UQ%28n6*=anO=oD2#W6XD8(QP z53e!1GwXnu)30xi%+7Ak&Tfx6AObBhTTovZUehl-m5~|!a!$?X^vjmBDozgSsI|&w zH}wMDusK_j^rAknsiM3=mc2YMK9J4gh11D7=%OvizkL+7JBj*X$A<Qvc5Z@!2oHq_ z>`ibwaC||#Fr<T$``R!A-I$3AxN6FkjiKApv8?N|*XJAX`BYza3R@m-6-LtesVv43 z^Ke;d!L`xk<oSt2)F1WZPtSXN;aIv*NXNoHPk~>B5w9N8dPr*2b7ktS!II8lDVjN| z)MMq@)o78n^5Ik}48{_}Zyd)Zdva`SacoS+q$-cKb}khzN|BUaU@;J}6izLT;+n<L z;!w0Q#SHp7XC?k~2-&_UvcQ})+_%z6n+<9wg%hGlEui6pSuLI&EKF^!$pu+5SQ9(v z@kL^Tg~DJg;sc*YUsT!)TDkf%c(aZtv;eDvT(li1miII%lWyw#M%u>r5O$J+Tn&#; zGcKShOutGStxY6w!^4c(tJ<8NU}SJ4&ur5}K8L<OI5U^^L?#m>v&=J)P+3g1Ib4DM zM0z7ZixSSyKA*>Ec>8?;w<jJN^m`RwVlv{%&dm(YA`kCeDxY`5ZQ%{NJxXn0NWVN3 z0CAyzXgw8mr&uaCWVO>g&t<Q@i%5tJeTblCEixyoJ|nNJg}QB5``XbGviae6cl&0I zN{%E-{z_X4(ZMMG<h4C5&ez6=*Cqzzey^$&cQjc3-Vn3%y0c0HM*>t%w3yq~2O)pI z+v)RQxOQ{^UrSq%tL_}92rtK$?;J5cT`*#_nJDt-?r2Z-Xdx1-ox~v$g)Fh6gpqUk z`xAo`7e<p_`&G$cGLG<o$|PH@+ZRn<@p__Bj~6qp7y?JU3XWM|5~QD<!$)faIFvpg znoZ{O{-8hNLu7PqTE8+>3%;etk?%&_E%7zhg>`XRtQU~GAU2a&1APdhGl?~1pyi7# z@?^ngWllaNUzS)fn++)jLRya5S%lehrGj8w%$2W*Bl&D>Y+zt4mQ}%{3I$F^oR8nB zEoxstWJV)660OYS(}d9!l0R~N^aMO`FR(`RrQ#T0p3dk)&V@-?noM7nieQW9OS!Zb z)06WTwJ$7Bj4U|WL?%~+&^R%K9vYr^$;tHgr4-9~xg1Dy&Xg<aK(|N%RF(yrO}3|q zailb+M6As~RKg)mEE<_{%TkAs;v#(NZ{=y~XEWKMoNCVvWh<gWK}cq$f|r;c4I8mN z?~L0WcO??8xZBP9z~nVYAusRYH5FpH2G1#GO@g>4=P8eSH3t$r_ng(w`5fiCL2vBO z@;myPt<BahYgb=apE_FIXkzrv<>jJ#E;EO}`ON%$W+&e(^Sl*&X<jAdvR=!I_BAdg zP!0?+`c|x%;2&6P$|J(5f)aPpSw_-dA2|usY;L2U*)sZ-L^`*zk&9=uvm+y=)rsXu zIyQicl`iC&ch(nE<c-`=Lf_0VTmJ?NZGb*U@TbI=Cx(*Vn2ne+6pHv%QXNd^#?5{a z{J$CVWA~VJnY>?X?gAbG79i`6Re+X1l1)p&)!@QrBDuNHe~ms#XD{a*7cMw*m%&zv z7Ie^pr3IRk7yGG`SI(_MBY|ozgB+Wh(QeZW0k+v$SrCCq7r1rsT{$^52UTyj2q6IS z=|C~mANQ`ZB<uvq)m1&WIx_6m=ZJ!nNqJ^?X?S?)BE4vT9Ww7IvRNk0=0fh_5xT*= z*&FvINkmWTdE*}3DEw}au~BaaR_<=#>fUP7QZp<ml~t>k2~h&`imz|tTMZY~fYl&( zo;eAz_KQ_R%}=D`A-~IE!%C^D4yVuIj&A2@E%S%sY33eG^!r^-n_86Qn2ZT_6<LYF z<OC;_L&)~IHaV%B^|*q*pwH_m6uf~zB<OV4>IJ*Qi*rHRbin*FpTA0XgSlGbbR(Dd z@G5A+lsT^_`JPovmXs?=Y4bqRgn5Vt3@~yb?<=ugawW-*`FVY59x4kPg7Sjnh!Fd= zb2|k~A&72CRafd0xKpO)K?xw5A)n`C@QXYHE&EOIhQF0ZHuOSRIN99W*-P^o&L)So zske!iS)^lV>#{UiNQ3~GEzs9#>Fn!;hYmIq$brzufd_^j-qEeJGg_qZ&n+n!y5!QN zGw6?d(y>%L>R+974K9q<+B0-I5ZHa%4)vu#Dnp(XXN$8kx|I0eRmfi{%WcuX%A_l` zXx?s=nuz#UC)`wOZ6>)q;S2_1^swzvDxzahWZVlGs!)o_g@O(tG{Rz$6#9VVZt!)` zUkx&NoaFv&ij|`X=yu}gFkGVX0`Jj-mJ^Psmyw;<3Q{D?F1kr0+O)vvfj%Q%FGItU zp@_xe@o3!P@S!P@l+WS7Cq+%g6X|}BC(^%=NN?rSiG}`%$J3uq#8djYRHRUdq^xmg z3R7onYGj@?wfT{$F-)VBvy>mx=d<I1p_QeDIo6*^42>-=jtwO;`qJFO(#lX^Jj-Cc zVOXo4*Jic5ureao1fo+KtTkXX3V1OTDh>87ZQSG0!FBaHea;o1(l000ShO^nQS2=0 z8PYnvgI;~EcsV1F=(DQ{W}iy9u|N-G=I}MG|3=(WJ=clB+!=U06_5R#vFg^yq#s&Y z2eV9G2|%B}XguShzH%X;pHEvRbw5gqrcnt!gQQt6Uk+@r;3eZx7g;b9VBYjAX=R;7 zy@OF)7B3AF%@T$r0{MCxM_Bc>R!I1!R{%yLPIN-zXE5{V;EP*CHW+TbV1bo`hCPK$ ziYmnTBE<N-Dix)CDy-rvDj##=suQx!ic|~zP*|ZPt$KPYZ54~BM`^Fq`Z`z_gO+M# zN{rMiQ<#C0HB-$2aXgb{lOesJ52y7^+R~2~HWr$J@DpZ^Tu#5FFW??6jw@jronBdC zkUzk9VGfZl4=yXwEQTLLoYg7lw5qNeBuk^NtP5ieP-zuI*-_&TqptG$e4HU~TS8xd zjY^kRt7^+8=i>Th+*TZY?Rp1x)|X^|C-6Tj7!@n{y$AYtKjEmmkc$d*dD2|3zzUm@ z6~)m4hwN!)Kf$csb(*z9!_>1hHd|p~!*YgDSXo}ub19Zmr_oy}JxOMld03Ce^<}Wg z;CyOfVqjomAvJz!Z0yoTmN|m@Offb(997lH%<P4M0pg`vTwfn%UYHY@Z+H%8IG;56 zW+6JUxV$(K9lOMwm&UUC$jERmjuB24=9AHh%b}To9ZxdHVwtzCmX8Ik!Cls7l1Myo zgg|MBAk^1PTmqS8PkJy}8qn+xv>Gg?nOF(gOPhOTcP2WbIA{2{jOk11;bbNmj;Fu^ zR>zq-xR4HT!YMg10y)oUl!$CLH=5F7nf}anU>v7s*7C9=Jscew2&eSo_$r7gnOI0` z5+|NCNG&%wn9a>nnFCpmS%0GY>ws|Yz*<ZaZduvrX;rRCQ5xeE*R0SA$fP`R>ereG z*f@-6e|w%tOM!SR<j_*=wTWtyH-YiFP`$R=V3}w`oz3N6DH|R3thO<a-yiY&JrMmM z({1GTS!U&PbVbCk`}igL;)c4m-wI3fknDGYClOr(jfj4ONwB9IwmVgV0We>btZ|t5 zr&*yS74(=T#_th!x5Kdaz}D5!Dtr%Ig~Ce8AiOtVRV`GEc`5laSrgAz+tP|y+Dt<t z)kDY`R1asR9$)|!OBR<ms8ad;#0$AamWr^D$F9*>dWLB)q)f!Ttx9(zR(v>8@DHJd ze%NFwOUXLqEdEhu3AXow9x_jIdy>h=HLSgG6@!!GkD==nND)e*7^6;;N4GX*KT6c5 zUnywPb^&(9JcG_C?DI1E`+4=KdKb7gSxzzAy4pzzz&cGPsayNH#m<}XhH%Ft_cN+T z`~6b^HM@~txv-R;@rBmsT;YJrsZY9w2ht<yL^SJt$$sHVaq&EJ4yRZ3U~agU*(avw z$Fuo~3Bh|M$gOG%)(Jbe!XTc8v<)Ecc<v7X*SK4v5p@v=vPLvb1mFu`VMBLMJ1s{# zw?LtL^4x5jFBS?gLxmv+Kwyz!c+&F_3$Rp?03(ht=2)|EMJgggrh$fPrE!7X`z(6a zhB^tVg8iw6VNukuE;5j$(%J#KIzoqJL!f)Lc#*mj9+N^LSb{zS>8MapVg>E2j-^qR zVuVJ)#LlnlS(@KER#I9`#U43-4}Pxmweosy4e*mSigl3$+t<}v2WdcoKy(X(Ka>n$ zthu`fVG-?RX&qH*1(?d5w3bPKXf_+3*xt-RNZ9a=M5m+3+L5u@io@}AB2XJ}#-V^^ zv-;Xv=^}I5^=bM%GNS9gaCSB{q1t93HpuJAez(^VD2=;@195pI7SlHZp(3<5QuNdq zT5-|2ZG7bGsL-RS=NjST=>sL1HtvS@#)`okz1hzFgD`f0#z^GtZmsJuZ8DHRw1Th> z&8@MKt#xs%Zos4fsaq!-J%&&P8z{5NJEQ4HBpp?xwbGh#n1zTCqs<2BU%@cLQDCx2 z2zNF<&n5WDnqgt|K;QErBI!0RyAl_Hk!VL9VUFQMU|L~XF<m?G-$&E7O>Dm23ECBU zhYT|)+)7db+^?9&3pk8lA5p=?;2#20WUHj)#9{^XYRpjL^=0v$cFynFlE7X)^l!lt zlq!%*%pak9aZ>>;;TkS<e}-q!Y0M{*>ssIgIR|YXy^m@kn+}YYXbeThfR5_0ix8Aq z>>^ahnh6AFB{u~&q=0$FYF3_n9Ekzy+re0J(l@FXCN>~mNz8s>TrZ6JCX=y2TAyH8 zPK!lAJ2#mg7<HuzC7Z+J%|u4&>yh)hL?U;7gpNle8L!77Z^CdrI*^{sQx`-62H%%{ z1w7zg;6aVt3PE~X_pMYJZ~^lWfQAzcCWubA6)ic$ZeSMK+S)01spnljp9^-<;wl~B zU$KwdY!0V7F{_W{C+J8WpTB6g<n0&d*{8hy-tr$ST&Z=|+G;lkqMJ4w4zHy2>GgG% zgp>^WFy!-g(1sroOZ~uO+=X4h5QEdz3Okt<`)`xHA)NO>{)1iiS**bRL#IImMQbnZ zM9_+@;;r3H&497CL*YY+C!K6^G(baaCrdWjmq7B}b?RCzb31MEXf0eHx?j&+xWL9P zMxr5`&p#Akq3DE7&khCj`9SGBLL=O@wdafeNM>Q77+T0g*d=`kA@38lw#-7P=#xiH zT9>~NNhJn+{#su&LXHx%@Y<nKmoFZknH>v9<qI>jv!#JVE&=ynzA);YRvhVR?`SE; zPsuCZ>GVv|CgckmPqAJf*Yes+;8?<w(alYmb>y$@>4t8{ngQQ%L#u&4gDHMHLYhzZ zfvI(s`Iel``vOtVcx0fEO|x2C4pNprKdu*ZHg?$)4fw_eFAip*MkNd~dnq3c=xd%U zk%hr2{Yp~zFATD!a9HmjTu>4ohQf;Le*ZeG$1~=npgD0=OKabST?BD^8kxG=I)%-< z-9l<O)KN-~NVqdX&p<53iigV@>7c3EY9T~z(;=Xb`g+wXVP7N~%!S~4^F;!Ys2_hp zH5^<>hlZlT2~Q{(38h0pUrYrK(c@HorB(lU$mUOug>5e9p_DJAhHGthw;J&c4o&2y z@*~M%pDT!jwW`aT^aRq`VVGNBPssxMABjv1h1GC0EY`}a5$IIY;I2+k<ekz7XomA; zQ7njNb{}s1CZGnU4}}*KE(}!HWo;8i2M}IUcV8#6>v#6tiU#*VTxhkB3F3MNP+lKW zH?=S;^#CXwezQOz90<r8^coH@ESbXFqruO!B`LOATV#1A?seKQr^A`akg865`_aNc zDX+y#V^J?Ys%pC584kkG9!O?tYvs!o!*twqm<QO(Hgw5USR-9?Yd)M-lfi&9;!{JO zusS#r@}-A2CbzNBEb7^QpPC->hFvy)80MphJ2ODM1bV0R$KWMLvDnfY)FOo>sSoRP zpSccU*BW~hg|C3w*|GS*p4r0Ogq5P`N0>Gt?R1}DZZJ*}A_@GVZG1fJ@%h3&pWHvY zw#HJct8+uy?D=d~_NfKtDGZGyqT%>>Tpd?u^ecsp!GTa>a!~zC8CIH*&lmDfZHURd zk%5*tLz;!|9vU4RPNdxqJL2<0;b3}nG(GEgI)X`jptfL%lKg1P9JdY_qY0R!z}sM$ z;OT*b3a|-FerbGrb9^b6QM2)Ae}6cYTNxfyho@L}d}(QXWYKQNdLJ0?kB?^;UCsp_ z>to2cc9bqwz5p^Z^`pN)YYc9F*w8FkD8xP;z>z}XYJ%P41XE6Wuzf%$w9OXQ(4};6 zu@&a&2Keq7iR&;@D{yH-ge5QTP6?RX-I6gDma~aVqfig$lQDgvL?1$<Obx|iEZUz4 z`LiWj7w7ol{zf@o(&(iGMB{KQ$?*sC_z2N>A(oU2A-y=Nr?W6P$3rZSV%M_zCXV%Z zEM~5ggpoN6o1Mg3P2-0!dMGefK>`MoI7~QJ1P0JV;^+bTD0-f-c7PW&HENf(R-;2h zQO%FnqAL^gN8_QPiCPsAc<{ImMgxw~!Tx?<*y#!mdK?bz+)%V~$M&+LHsE%L)dFsC zx_oYAp&v##bH6ui3)-<H`R$Hcq6g&8GJGebmt0qtP03;b3l3jHS_ySPi3ZJoGUb@Z zszeeh{lnqUW!1{DIJ5igDHg}|{1#>ixRrMq=c!&hb(uOs8r8Kn({l-E-3n4^hksat zh`g0&>kg+ZIUSIS3vnnRF{eG7wL1;Dg~mf69fsE$FF+<i0VL<D1^;;^4#3fNT*fhr z6_j|MKU?T(HA4TxP3^RnHnwWz`>Fj3DU2{#TJlgGS)l-h4|pc+9K>{-$4L~3(+nrg zHkmpg*Q(4K0mqI*vqnm6JEou%vrY<xz9Onwg~6&GE730M8I;k0_XfNxcvqwnjOTg` z#y02)1Zs)Ju1eevpq;~4ancq@fhgq}AWI~emEcO`JmTtc%LLY7iVSY;>Vp-iueFXF zD4Q_~Fex-!TkEW38tPJ@IA=3#K%dQI^;i}*Nqu&NjxzczjFMS=I|76Ez(`g;_iEo( zO5r>TxD@zgAuYjPCPW!EpDAYYO02Y^-h(4KP%PwmU8VB1b&y1%v-GrPlrgAka-jN3 z;hTC=yR1EeatSE`3I`04#8?2;to$*JP;*5Qq%mX6+v}K?$>>>zb*I2Kaa2IZtrTr6 zTR^`B@J&`<k>dqDt36WrHe;MsHqBeJ+fw-!qmRF*MYJZ~Mm(Razf2wgF=tANQX<3F zwWgxP*6>N5$>_d4_kd{lJ!}&I3GXW11Z<7g1gi6{&`m4)dNoh7lO<yh4{jhj2CeMN zRv9ES9R#yKuSA1{vPpAQ(6t56fWZo=AS!gv!-(OVfK(uMK$>6~q_tj)r<;~OSpLq5 zhbj9SKZtGbFbx`W7&XVNIV!m;b%Mp60Kg=|Ant}Tq&8y6@dw+5Q6Cobl@bo*u1R2R zp22}U<10x7>yu+fHS}!2sUxz1Wt;&;3OHHDZr8`00jTJ+r9q;6d8&&4*uh8k_I-`K zZ@243G!;B)=NgAOgmn+7Nz7-^LZ#2`h}c5=_V}%=)h1h|1_tnbOlbtLBTtptc~`Fe z=skT5)0U`<it!hAr#CdOWFO5d01eD}71LMcS(+pTWC5gkwJL+VX5}V6ulTn#ujp)P zz`Qlf^5t9h%n?`zh*>cW{)Ea@lF#LJZ$_S>dF9=659rpor+OwS*j_<jU!|K?_nTLa zD!GRCAJZ7kfI3Tlzfm-2j(m2%Au-9YYK)C}1uCUN;o+(XQS>ltSzQFy8~wqj<?Ea& z@>z41v%-G0*+n4euDx^1s8`1|=N8~wqE6DaXI7;mzJJHu+TA5J^8Q^fCeXee&r~dk z5aX))-JDy2oqOigcR9H4UbuxjkV|dfVZO$U!Nad1!d9`nD@I+g9$zi56Lp|x@O&#Q z*SZe`Ov}XDPHNt9{SlaK`Ssv!>nn8q3iIx!<UMOdUBK8w&y>|+mn5>QU??jzt$_!S z4Qc;2nUuAoPj}Js?uYf2kq|I|n8g<h`#qePm+5L34)n9;+<9F~%B#^b_ItR-IssET zZ?f{Lv}{(Sxb`}T85I#WHj-8OTCryg5G#Dygs@h+AJQ^vvv22%Rb($M*E#B&pn(w} zz7sYki`*PA!3{v8XvlQ5&vW+nG}eCpU=u7WmM5y&zDvqZnXbbWwkk5+a}e1|D_En@ z7og#aOov40LJTv$FJ_)Igu7x!Tw9qR8l*K6N}0S_#o-a*RGBTfh03qG2mF-ZqYPAY z_><LB2KQ8t59BC#orMld?3d<=QkJ9k=@F9{{%*g%HEFz>@08~V%{!<(yB>zfQaseK z5JEjL#I)DNz||H(zOQpiQGW?pqe_;7D~Q+YnsY<}c?i)_EnJ)9n^k#T!ql!YfIPKl z47fbCxBCTO-?#6@{He52%s(zqX|#8tIY(%(w7zO5D>8!ZE4y*~K^0r#Y<%BGUt>y9 zT|jI4%doe<4CDZzC(CvO^t*wdxQ^Y-jxmie{sKV(NgCQFj&(Jc({n5ds6$eFIThZ< zNmA{|vk^`elje7NE@wQ;klk$*&r^;bXmCrkrvU5~7B^UuTcYd-lqH{z?b3~~Fw?sd zOHEHNPfw>1#<E!$nNDW)8G0It^{`Rs>C&p6W|PcG>;fS$HfSqn>4xQLHKyD2nURq> zpeFeBuq=-R1_lBnxO!6DnP;2wJljM?i6>0MZWW>Y8XX9mr;M#+g0ypkB$*?DXac$n z=KyelkrEa;oMUT=!f0e<J*yCUZ@lCKoG>nDOIg?-J@OhHRPiGJM)6HYMhl7TdX_>G z$QcF0Bi`s!wt7sQlpjTNG`9*fC^E10K`G|m#X1C~x7WeI!%=QMb?}r*&e9}}P;7mT za8CLf>5o~jpFCsPd~diPhDlgFO9hzyVySQ`uSZ?0Y*P>0sS0tn24NreN5f|z_LmiV z{8{_Dn)`rZz<(Ex0b!sweC~pYT%?CY?g6gk$iB5qW)1&}dBF1G#9Haf>ijCRFS%Sr zw=3eryRzYmsDH#Shab;x9H<iAkN@HZ-QZesM(7UyjyuR_ELkiQ>R*F;4*>f~=%!<c zjqC1fZSDr$_HZK-`H<CAavtW&erE3n3WxcWd=bO~sTEvW_c2L+k_Gi;cA*6CydrJG zvx@K5Nl>SGA@E>!j@~4#jhhe=)J5c=S>ZkbHl5CMb0W}bSgN7k%%?~C$1ce$^a@`S zi;+~To&}}CwsKXXE0*#jLs@`PCP#)x@P^tHVAdjx-ux2UR;}Y4=U7OoLqHkZEb!U( zv@nXI#lp(rB)~QcEQts$Z7-w8%lF9S!oy#F;?gL(K}VP5M%iknv@kIP;0MF(<(N+R z_qZFbXuO{zmqj3;j_HLNC#Kq@0T7y5o6!Rq85V7QVZIvKR3eWb9z{++yrC(apMMMd zg<_{1u+w7J8~#PcJ!2qd%=`|e72YxWC5td}$Q)vwnvc_McAFfj0XYU&LXeFCM5a%A z;3XMI4dx?W=M}pzmDE}YwmX~M$_vLS1#zU^Ubo+czfdXaPkP9vfwe`t$1<%xhq{or z9zJodeYIjslU9Tc;ve|1OzFJr$>;?wR)l#EmK|tg8QDYU@_DF(u)G0sKx?$f$#BTv zn<$Di1j@X_kuWf_kUnUQZA-C$4&Oi^#{B~Nd`4f@S28f@&<pe9qjol0!f(_FjH-MI z)Z7ZA7u20U6Mpuy(82|JR3;lzYgwoQ2eme}iUnISg9ucKhR7s8K$bYdo<L~}xy&k4 z3HpO8JaC)gPdiIj6WJ1|$fTBZCT9{#iCi1F6!qb}!V<&UA+QE^j4=9?`VmVut=sfY zzlyiGZs9hVt+*xj3QU)<|AEhHFT-{Tqh={D$DuW2gy@L=Q9NN8kT)=|p2hiUd$9zo zSvz4D$O1|4{NFeR<ODuxyr9Lflmmx^WBw@?i>YS`$*}*w;Zs0t6WMSp&vSF%;O(H? z{hmtaV7TLJLI*Ksa)mMz@=EqS@_Y2aI168SJT4%tfP(@Ez)x(&fdgPM4J#-5VT&^n z06$|ms~4_WU1AsD<av0q=m_Ry&?ZGM3F|n%q5fmiX?<1sdy9iI?DUb75Y9ks!p$A& zdp}^}k^8r|4_CoSz~>{jE+!8<90vH^_d`2@VW0BZZQ}_4aSewO@jZvNh%0gg`yGh& z^ACo`ZT5H~H0;{<FpmO~p+s;PK!LD-DeMoA?DqlQpm1y`G&&MW$D(mh7>I)5U}6N9 zFZr+aVR{;0i#fz&EGZ9#kU<c7E3$R)MV;^4fkoAP7mGZu0mGv1p&SL&K^Cpx4g}os zIK6J=E63uD#?Qw~z*&2onP_at>6w&Uz!qgmxFL0LS-)<4kU_4KgJHOf<H@Wq5FVVw z_yH$rti^4RM7n{8cnd{X17`;yWHV$CWF76aay%1x1Zj-;ev1f|B;IPk4+wGymwi_& zkp37}Ko4$Vz2Hr!0YK>M1+%qEucXs#!IjLGR^&Ny%BNGV`C&NTn0?Xa@rL?q7e=F@ z`Rzn%e0+I)TrQ@@Z4A+9qosu`ke7+^B{gZw3?$roRv+!J4Y`*VJR$q)mn@TMJsbu` zXT#<8`G%%QyqOzw!mBho=bpPVu`)isGBJ^IyY=;2IhS2qo^ZJnvEkZ;4g5Ph?RM9O zLbWb;X#;&hdV#=+H4AIH2DhftMe~kZR!JzbDp-(d**8%{EbAX|ZrB2-DjRpkU2Kev zdIIVN=YYSob``Y1q2yp@^8v5o^#bjJr3>C}kE^)i4QOe7QZER$X!t{7W!_NF@iyEa zLY^z)M0heWJCKP{F|$e?_?mMd&WAV)Fbu$8Puo6!%&}qfdo-YJ)C-Q7zhsjy&u{0n zbKHR<!zK>j7H14wg@9KcK|N8!QpOtqSc`r*op3%Z_*PZj;7VzwYQ1LN1Y_bAd>wU@ zU*`Bua^V1i#!VF0s2h{&uePZ5=r^)T!?Oh(9BoQbUMiI@O(53F7Y_RrH(s@td_L^o zy5J9m{F)0B7C&;i42Ap(<RR?aucU`d@T~RkDDEsm{Pz_2A1Ln}B3EClJnHY)TR(Od ze!blV?yBD#D(@WP8vYZ@17s7<#a$!vAE+O8l>JX_FEE||sr6INVqt#G_V&E)@m0?4 z9S-oaMq^IUe5Kf66DPcfs(U--M>veuAnTA{ar(k4V!;5<Eg-T1b@gps41_~I4N=k6 zbEN@D*nMXl<P|J<Rr3zhEL^$_4pZ1Y`^eudXAOPmY71n~bCCL|TrS`3H=nIws$_%G zgX5UjG>sK1Up@y3558#&)p*zZ<~ARr>>9|nX6e_MN988~Oe`1ne+<j-Gf^wgAwD9W zv+qcX*1`R|r+g(WTDQ-<<uWYyzE_?@h;Dk$o^cIylGogL4rL%gc&E>+#Jqn02t8FH zlNNfB2E^~(;@@icwwRUIU<>74$=5_NCja5~$nZ7pqWk^YLkR8vl<^_x?XKrZRqfgJ zoc-t9>!AY`D*YaUtMD(5xQ9ksNtP!fmK#ZlQNBd0QgMS`CxBds)}pmk({4Tw$Te&x zV!VN(;0O+y&-;}Kd5u;sh0lrN1<VQmIHC;;1inV(AwjVBmL8X5)pMG!e<W|b-u2~_ z`Wo#g)WtrvZQyorR2d4)u6{6a9eX+h;Q}P(fO26#tL_ty@7eDupnp=A=pn7ts$G4f z!d${jL%FYDQta)aB1f3;$HHGuvVu~U6`CL?QbaJ+7mKwWVmr@O(%4SB3N|`8&TGGE z*%bBKowbG9*kAynUw#?zWXNIgqV13?<o6ADU0(liEbT|)oG_XDhDt+uHNKnJNM{#w zw2LBXIy`75W%}!@vp{l3%6};DeH^rhjOA)QFt#{{gn`_)gjwQczODG|<ji8a-#eBY z^Ufj135<n^aGF#3iT<HdY-nltj9)KcHzUZ0UUw=yFc6-Cgl1PsR7CEXtI`ymOL-K; z=ngSxhkSgX2c5%w_DP6Qf;>%{LXUuBlC_ie8f<SANmyZ!B|QkxeFb(7OGUy4&f3S; zJbqF>!zrX9TJue&w~>iRg)PXwxQ_7QMZ1g`f3hU~-DEo2ulT2tr-)FJ5O}AHtNqdR zBqNBX2Z-Q-bv9dCcghz{bTvrHz=MPDyha`Ot;;o^DeNf%Ykru<21zE2He!XWW0r<j z?Gdwyx;?Mk?Z{-Zw;NhSqm%?2*2jx8PW|Gw+AnN=mAafH-SmyshxIkIHuRaswbxNQ zJvKa3@?My;JDuqH*I!pz8q$I4&d^;RC(St<*Hh!L1CcG3Y*V)YYkmjq6h<>!7_9kR zW0>tQnBxs6n~{vbumzUm^nrQf7wq{0fEY!ZST1ZySQ{017`FJCWOSR%gmWV!3Adk+ zs%(zF++N>tQhOQ9TUs7Rggy`cgmZ$Df<Y5MpQn50M#con)uR^>d!tImN#I^_p4$vs zG@2_4S_qv_X+6femEPti%;N@4$`@nyvH0-9a4a{NacbvYft0hAS10<1<Fz(Fb5I|V zP4{JMTzwh6MR_A&*RS|L%+`V*5=W#y>xLDPluGbs*~rN;2yzO;9P2K{Y2C3%g=H6H z1=!=*%OcR6#SMfrBqJdE3~g>=nXXDjs2zr{hs%aMR}7rLW%g6w2)GA@vk=;`aA^Vj zZ{d<2$J<@;ICRZr){j)~n7FQ>zO)QT4i7xyyhIoAKL>#8rWK_NSy~A51OsRtBBL>+ zgrr1P4zLhpJ+n+++S)9H^&tuXzQP|Ajj#~Kx1@CaB0XzzluaUlhh1P(mB%{#Teeh$ z2k3%-8EqkXv>m*GN8;?)CIty_kir)cSu!l}XpKTtba4?!ix))_0ww+steRK$ZKW(_ zmWGCwG9|3^qOC7;UHdvt=Mrd{uadNkfi0qya$}vfv6XuXV9ln;aI{|ma{)BJvrFYG z8n;iD(0}un3yRAHPl3;Sc|LU|74b!!UN?K$08ipNRYHdc^raQ#u#3my@E6zst>_P6 zBwj%QUKqm#eZf{lbCAZC;u%C{nSIBXSrN|O9gtZ!M!(A<Tc|^-$6E<y(wV}<E5QQZ z$0lBF__fQKw0>cFfh9^8r<p6A8P#V{AK^!$`iSu%`_=0jqlR5|gL}6;W=0jwF}t{< zlCL&`JVC{9si5v#**8E-gy7U58@6^-(~{YB1sG}^`X!h|E-}Ze)TdCmu#~@u`S?El zpOtgkzrk+q!FXZn!=8m1kNh=_lz$j5(FPva#BC;UiS`6o=koeOVP$kMm%q3;W=~Jd zB?pJkXU^$fEi=Dfm>QgStFF0;{F*#6Q#&4?9T_Uw!$X4?h<3Rwg4n=wc%B=Prrl+4 zBH5@h@A3F*a-L2JN8%t-UWEsN@+8TQ3tPbS8cxKmd}wemq{Tz2QUcN%bQZE}3!79C zw)BhOca4be?v_Hx^-e3eFia|#kqG2MST|;82Rc+CJ0@^2$eo~p`ytS4-%HC(lkpTm zg~EuDd<0WeUS%n`H5_42$g3~;BFsItxXd<3C|A%duEQlfNr^rlN+h!J_$Zy<EXZq= zh(vr@m|{-1*N40N2YiG&@r^HU^ZR#RClAI^KsHXI?$xtu3_cm4+mA3n@j4pN0M@TK zOQG>~J*=JGLXTj2T+-)Kn`#h!gSlbEXhK>=ray|Z=H3Ox90zcI95$d^;B~~f0B0?} zQeZ%nA!K5GzY3WNI=kP)(bTNq@k4<R&}l!EEA?y%UKJAm7?#UY!2{@MVGHX3JkdaC z>lFH|c|`1N#m_>~qGlW+xC*1?rz#8wzGt2rl}m<(fXE@>v~YF66$03LJ7UXu3=Fre zMi`b7#^YJZGpz%P4;6v_sTJ_2A=AZGemTQB##y5r=drE)MG;7Gv<HE{h(#5B*8)Cw z4smP)*vB#{eF*h*a4WdAkxv~22VvrLcEK3j)`fUA3W~wDtC&Mp&Xkdrv$v0@;clkc zMzLN920`vlYm3a9+<l$y1~b+M#daah0D|?bxC+a6?UlSYU|XDUoS$-dMlXcJ7e+mf zsdeYXqN)bG`75>R*v43RVt61K?jM<rPa%{gIWRmC9=kBQogPFqVoKi}6~Uk$+h|%H zmz{&-wxJ2u<gw3OsI{T63+{<!o0=IM%&4~I3HOC5yW3uSVaDzmyD+W}GsmS+aBeU* z-9HlQ@1Kqh&ILo4^h?9)_ysl`4kvU9*TCOWX3_5%Mw$-)V#YN$%;)}D3xav!_k=)# z__ga9;`d14?Q7_T!U3TMDQzyQUY8noxYdiQ%TXHFr<1Z%JByIMt*i_3o;Km|sKBFd z3SNR(F2aztVg&Y&x2bQ2EYrY446hAg8A&h6h4}~^<NM=~InHHD-%Nt9u1x00OU`+j ze$Em@zLo|;X&~zq()&T$aMVl9Ji@5H7ujq2peYN81R`C!i6Aicnlzra0b>n$CUM^5 z&rTJmCKD;WFcleq)ClUE@aEId=;X8gfdn*kIMsCNBCOmiL7QW01&Y<=+Tfs`#}Leo z#FE2^m0p&Vt3SD#0bQoS>u%=}NVkH+-M}=wHg$J^f)F_fPd(Thg|EW<0@*PDXAI!s z4JVtC=S~LDgw7)41+GP?sPb3dkj-_a<n%`!K|dQQB?8WVL{X+yhi8td%s)0V=W*C< z_DsAq=USW^4u+9pZ>lgo6tIVbL%GzXZDM26Hl?L~A?K1Bz)mxzO-iD|{7#qM7s@OR z_Xn3Vf$)HLcrnbD9HnB?mzf+J4)qU@PmK7Ine4*E#6q@eth*3J$}<!Y2cWd=SU1E< zMY>XNAJT<_TN#n=WhF62@xS0x0gp}rx9gM1s1D{uEJ!h+0u(O{4n}-xo`=`+VBC3P zR{V=CGeVfwYLTCsVhFKnGPjM{ZN{rc2@a4~qnRO>5`n5n`hs4Kz#%7FqqSK_G$XJd zSfBCP$wA1eggT2|wx&2zHkH^O7((OD?z~j?)9pZp0&_T}Um8+p6RB6?1hLCcVMDI% zfkcYS_=XHdT)mZi^ps=g2FSo1BqZD(#48!XvXK5ANzOa1NSnu$xV#X~haFIB$i2>k z`AG=3NOnhTE(VXBW3Gg4y=+amE^L?QND8MIMhiG;X_Kz8d+lk*v@YQyEHOgASNkzP zWvn;kd$ArtBuxiQ%>wjL2c(P=$pN}GsXJpjvg)4KJsCC@V;A)aCg%{~cAmbyP#R&Q z8QsIbEM*{&4^jEFh6#ODlz)sQihZ6T^Yq8PcCEP=wu2~@II;J6@_afLOO2Kmm%QFr ze>Phhn${<#2UppJ&E?c`a%Wu>^jHmSu4IEll9hex14pQ}Swn7$Lg~si8ecjOHBq6o zqx!_FbpydbL_c$xit-FM;kn4}QiEOw@Pp7Fb=?@~j=E+=%8g}!4s^!yr3?a!jJ_tl zBA-*A%8lbob^&MzHk&D}n4O(o%6M3K28|>i-&wUEd0|C=QyWRs+GkWLpM+-oUvq@V zC<hh<6Rg7QYdIDYgMASL42X?KcjFz$7uk?Vfz5RvG3Lbc4}$AAz`h2~UxU;~1Zt&l zsD`?}x~@7j9=|n8H^ex#AH+1YbHHP{9Q+m}CXyTgp|PO+9U#>cx=Y4B&7ebeK7(XX zV@QIuFjI2R=nG1UWCld0@suBQ7v{cn^-fD1c^}O<5VB&O#@_NI6+9$8Dh*>VooA%a zN>kErN?(!wA8A4Qj`Th0N9Z%tJ*=1qZ|Kb4i_7Jd4-lg(09%SFNt8v3a^!fqoU%w; zzNUPpa*bJFpLtMzR^?zF5UDh<QsPY?27iUo%>!`*nI)Lp!3{ljSP_8DlKpm<3z$0n zGF=7kyx&{NFYXPBdpt%7!eUgK5+x|p;<H0MPR@wa+jdc+eqMau_c_WJ1Yk?gQ^nH} zJxg@~Mq*u@FG^HLw~KkjdFB&VCwWbL){SMM1h@#@2LlMb2fU&<wr-sEiek3n;$4o3 zVw9NptQ*(qYvMdJi_ePBKI+GafA>>}_rM;sD;~+r!Era=W#|LgeeiMUc6;f-JX0R* z%J36{%KREhf(4SRe5QPzLi&OEb@^=hj1n`3ZO0oMF@{ULZ4Xj5G-E^ujUih#hF!c3 z(@KOO`f57SjZ4mn{$_EbqcINDQ~H|dSQa-s6uI=x&NOcE2|<;`jG^`cZD-tV;1%_( z7)I*n`fJR0(Z3_or=(}4&r3P!1?j&^-{SJEn1K6CH**G+zbYr@FHbiFp^B?u@J5ai zDypwp2$I|gPKGVBm~wxYN1%LA{%Y?*t2u50dPL$lg3-;Bz8!Oh`Hk^0W}GpVRAXip z!(!%@5-jZGqoiK;g#abAUAEi!*sClwv^A-u#r$Rb`rT8$lo4d2tcqtBQ^wVU2EA}% zP(%IVVeDlwvbs4{*2Rb`dE@-L7-nO_nwKd^ZKu*Gdu;a0wn!=(@?FMfRK{l4k(VqD zJ%i79)!+oWk!Qu6=_Z!doT{=hg~eT^IA?$kZ-|WuiZth_h#94|q6OCJAhKNEg)El| z>4VZoq$i}T^y&T9h26Q%b|%j%Q$U#mmxsA*&o0mV@-=0uE8ku|Q@#ei6V9X!hPyzR z;VPj2{64XB40%nd=k4N6zif<}C`ca_r;W3h#Fx79en|`|UjmROqeYCI*~9u;)uVan zlVw-(dJ&IPGUm5l5EOtYdF~;=KvHAOZ;i88jdzn3>ju5RpusPvaf59|61lZV!{k|s z`ndV15ou2Dz@BEXn_IaD0V&Pftg-|vcqoKatL~N66?gRqb`BYoRw9uV<WW*<Yt<c} z=s8zg47->FeoF{m<i+Z;@_jl8tE6&Ew=S)%Q`ke~?{)&|Nf4*{a{C(hsX5>U0ZvJn z)T&VXWZ2_pk;f3wVk(P-FtU$arnK?}<aDE?@;V|1C`}1Jhj+EG9W!K2u5;TU|KJG? z?PB9B010-1s!;b<LWI(d$n3?H3Mx1iUSC6u{@LvqFrpS%mMdQ&NGB_o<-BR=vJptP zgo725CYia7|2>bxH!3VTCU_U`uqadOEc}%M|K;f{i)HooEbQ5lZQgVhow<z+oMzvN zXL?A-By$biwt$wp@kXsQ(%UrC7F(3%2H7lV3n|rF$In;_V>4qzqcG|r$^7tW++}yf zH<ENF#vJL(d7H}>9vquV>z9BDcBE&<G#64Xg~P;b!rLypQ}qUL6pX}Gmt8#{*v|Q) z0c9;1@fzdG=|knV6C#b>U4SU+^)-SPQ>!V7Xi94-#j;rhtyCqO;WQ0<A(Hp;{D6Ge z$VbwNTR}w>^$iF%dACT)B~-9MSLQuHt#eO0-P8*et_ub#8dzBS3gm;89T`2fk=a=W zvgbKQ^yEfHw8bn7GIUj020wza5uOaxr&1;wGoGR#1@F#cOEJn#9$|ST^n*=_)4wQN zMQ#u2W=7t;>L$X5f@~AzhMrwmPzmT<-B{@NM*mP5(BnE_bL^<DCUP{14JUfKsnaNk zyi!%D75IZecDt~khO3LFbav4COj<MhfHXETa*F<>tt?P}545MA>K@>w?rgkK9u-LQ ze*f|sc&bliJnyo0Rmwy5ospH55&pWXP|xa0W(9w%colYHj#aMU(IxI9By%hN>6bnu ze?2Ne{|GrYk6?9y*an;!a(hVdsL@*qC*i=P`tB-M=#%DNON2GP9Uk1b5RYl>CP9<l z5qpC4ILKC5b*$jHgFe5?Ke`_7O8A(7Si|r@7Q{vt;s_rBT?d9;yo=430Eogx3|cyW zKMQ0$z&Ck<`q3dNuHZ2EflCZ{Lj2(X=3yY>&{RGi(^>)itA^xr06$=7p<U#lk)yLF zoz7)v#F=NIn7#-C3MrTIaoGuL&|-{*ko$k}4fc_#ZFf-Ln0-XTIga@`^bJuK^%3<I z{gakX-|_y%yM{(lYvF;;(>7EE1OxC9G(OV~R-&J%`E(_99bLzNp2cgPdLoZrpwy9k zcPoB|zK0J2$B12#K(NS9Q#JmCfg%pSbL=Im8-mI())faQ&s1rgH^-fiJ<d@(%9aPz z5S5dFkCJJmsKx{@#1ATsI`9vax>KB?W}L(I1r3lpaT9?XG1zc7@!RMoQGFO)-VpuL z81Qx&?{sW_rtd^lhd5`R=kvendVq-WW7GskRA2gpUM-&`ON#lUo-+o4PdqHa)DY0; zHl`m&2cv|!fbXa~#FrGqRy8I&b0dlU&nk2BZP<hGUY?`9s*cnajkia<o9(1`PJ>m~ zn%~j&d_GrwC)!GF6m(cZy97O=vDh3<fZphselWcFq5Z4qr`&EnxB2*@d1xpdQnT?6 zs^G7<oR6>QBFGv0w_l<;qtU;?>&!V+hjS<q{g3*Axv6<EUjTUH90h03Q3s3jAS=4; z-$6UnKPFw!yT+q{#5^}?%j`q5|HXCU8qq_Xd7)<iKWpzF+UT0)`RRGzSGMl9x?3)* zuGKSYw|q-3t25d=sxDPonbGuU7o`!47?hwTVpmKQP#OnBFtuhQf(iP=EY4sCGnil& zvzTBO!776p%*KD1##v0oB=v_0W-+0%6hpBwOC>m$V%L2wy_L^-p7*unU)8sl_=kS$ zeSV+kJm-AR_sFb~*(1HHR|Svd6Y|*1FMn>?ujrra$$}{0F&#%6z}e{)u7#a+fy^e^ z*D(CvGlztaH6S$`{h#HzuC;(oUf4X7ahDqC)p<SU%y1D*JrOVRBSnjD$BR_vx7|z3 zdK>ng)I!2F<#oRg{XUgG^k4J)Q||qG%1o5{%D)+TUC~=JbaZ}N(;^r3GNc`PyP!Gr zCVj}P)G|}|FjIvmzvUh<T5rESQeRVdiBTK2d-(dzx#h1tGZUo0{naO<A~QpN%)929 zX_JwZzT{`Fu<A@ZN7`dPB=f{!o|yBn<UW(wB6Ofze0g^drD|*%7D*UP@Ac%NDa+Bj zfv!kA&0sH?Y(qKNUcKL?M-ZX5_W?^Xc?Zu5tHtCp|6ct9Eu5`w&K_yb>i-$_dnQJ( z$IrAS2CtLn-hDdv3^f@2?b(Fq$`$y;%*cm>&m`!HFZ@10P`(Dn@!9;`Gx1hIkvYYw zg7<%@oHrd}!}mHHXPeDlCev$fo;vA#y0Pp%JL{jD4+H~|L^PU=?ram&mJJ^qgtPhR z_D&?1ga7@k-s#jO=zHU=Rjaj5H>^fHm5RH^WqEqG>Ak%j<-3vi*;zc9ibgN{(O4oK zik+RsLa9_NA}Ra=pVGmF;J)U_Lrb3=8^@8PwHVkeNT;A<yTC^rq(T7nPXUc**0TMq zx<J1sT3XKA)>0~e%v)>Ob~byp;YQU#&(6p6>6%U!oz-x0{zy)eYDV1o+>E;WbxLL> zhyxvMsI#JZhZ!(AYRiSn6ZUBmC}?5;n`5jX>zJbEtUA2@liyUrq&~<zSWem^1h%-> zeyBXiVu_+H?Y4E_4a;RZeZFNLCE0@obGQJA4}SKclCLCU91pR~TN$_iKg;&1JRT}r zLIfmISIX8l49_2bcQxO;Wba>^{<SpT5lxG{b;3F#Y2rMR3e|moba;M#c=W!fau+Kr z7w$2HkV}T}cWH6RJ91qw@G-ANYvWoDo}=K%wE`>4Dx}J!|F~RU(H>awu?Al!tB}MW zyM=1<=JlAj?q80tj=kh`i2rL=5FU}Ik~0nf2b2gV)J^n!33*fY(PDFDXJ@6ksB=G9 z2^a7xzl-iU9^rMeBF4Fmy~^bKD$~zrRzJAsA69MsqI-V(!!&4EeppydVTVwWpR0r} z9CD@`#oI@^P)Qg8AwWU_0KR=iDgKqoDPf9!?^o&OXGh8%M_=buY})%kk)J8d34FdF z+Q>Zi`dF}AvodZT<*Ys0+?$P+z6LZQnY`9+H2c0LtC;=TC;#sEM%(|Ht{<tF^ntLI z%*~9mvEJ%-SQMYz&T8Jh$nU6V7f(M()B8sK>g>3w2(SSk6|fd%9^CA7nIAco)3UNL zmJF_Np2QD<R~K?&#r~ln@1BL&J{jz_-B>Y_8@w-{H3y5Gt(e-jmiN}(vmn0nSo5rG z#dDEj|6@m`*7pW0ZX>#_=Mwsw!H!8xl^8L(_{%K)tv4<3IpS`3I+kDJggS6OSpC=) zgz&j+K6lVqJKk{q^-|1xz0|)1U7kr->c?xX4K0gI9ssc&%yV`0EHTF@@+D%9peP*S z1V%i5j_ZM2fGOMxlkhy63gj!?;{AATdokshmI4>~##;Lz-_9Sj*BbeYy-=?g+Pf%9 zN|d7a%;K;vhjQY)+xy}0ew(mxa`-_KpUm`@*4CCluE~=u^Gtl&$K?Eq)5BwEBBH6v zY#W~mV%cE*-rkPj7{kNNvgY5eovB`b8GdFUhX!$GNS$#Mi;e`H02Y9=?iE29!b}P~ zjn1#&5PE>nMsN~FC2XYHovg=rYpjFK;IXW0rOj442wZN&+z1p88}#@Dc?3D7iYc|G zp(#?H>MS*zOZJ6?<Ff-A+#MY!wQC)ut!`$Y_KMzB!j8Db=m@tnQ5Rypv3;N;mSF>q zoQ+PwRV>B+ktCq<9*JFA+e05aXz5O%gGWZvPrfnt?l$$IV=d|KWTtk!Iat^{wxCSy zdoDKPXsaz&HZk}oYlL59lAD!9yZT1*t-sNIVDcYmOcw(nQ7B)*DS_;N^x~(IkQ3vp zAgUl!M!@PsO30J7&f;?SNPt<u{i@f`@mk=whm6C9r52fxUv9}~yhpt2ZC)a8{)(J+ zKf^LHgT5DFePQjN6J?E18L`hv$Inb?dh6$O*#v%d2--0N8)S_<lIM0OSueKZsc0yk zvlh1B)hpiyD)o2UsskxRZCPjct6g=0c|mxyJod9lZ>1286_UwlrZQ;0+irHVC`uo) z-RAZ?nHS`ttjUM<ACHXuH~IB`S1|lROt;{mq!#38(UazhnBsXXE?gGS_XN`V<rrEL znWi+VyVMl22gzwtYR1<$V$DAnG9|%3VzK8Vz$8(j9L%`{u2YFr2KR#W(J?vN;^>4= zgauw-U6fj`jtzLsQ*h_BM?mH)+AaW6T`A3{B)kQ9O~iIi9+Iav<;B<6<4tu^uU9Xt z^?I#MhFu+oUaq$ju-dsqwKUh#`+J%7^!|Q&t-0aEo25*u-^U%_?DzPde2pwbGLzJ5 zR%~(`trg;c_&8r7Drf~+^gZT1yt(KAem0Vu)+UW88&y0t&h#;6Snpply5IL0qGDNx zVo+`t#jvaos5kE<W3Lem!hM9P0&Pvs%>0PqQGWb`6-!jh%{aDE5Pin)q3sTgCVA~{ z`dEHXy^t7Allq#eQtL5_hQEce7P6CG&W6c^f<_bduo{K<QS|R&IUwVaFAtRRKneF= z{8s(t<S)xb((>KY1g&%{bA5PDM_b^Y*WJb*8Q&-dd3vi6<XMn+-3yUv;4pjOFoS4# znLvS=`JCKbvm)78z>maTqkKmgqc|fYDS}-9?v^7bIf>2y3r>zN2#vm0NVby#Y)$Zu zskPiT8PQhThI$NJQdfGpQWp~X_E|-3FCHxNSKVAHERtX7V!5?tz3<oBtMav6KWE0n zRDW<;In(U*^@?3uJa~7wSXkPu@@*M+-42~MQ^s8|(Ax7LvS$PUO*UK80*M2VMv>Zy z!~+=djE7L%YU~SQoc@-VuBa>a6A^Q-Maf`ILk=q+5f72n3d@bSi-;RwPTZ`6$-&Ox zJyZu9rfi^QeogMJ#i_gUzP_pwS1Vp^9;gQ#w=3s0KG+wB3>A^H%y52cNk>h*p)*)? z2^TOOf(?~gfciqeklAGGQSxWKjG71h<{+g4%&0yQQa4vcPY5~m+lCYUX4#*c!}C+d zzd~BIduMXLb8=GCfAy1-duQ`i_2h*2%%7PH*KHrymT~s!$J*2K&`Pp--_|rn3Njw2 zduuga2&cMQq<#0UCJxM_{ViouqVerKRH8z@xK&46K5vy~9m~1!zLK~s<N8f7pySX2 zibe@Uae^r1Y(LSq-*ugDy840eW6HV^IrTp{rQqMDhGC=$m`Z9U-<nbON!xwf9$c!l zn`r}-PP?5yZ7VJl06_>rSb$?lhigz~;Gd5LoUg^_`GqBl=yTM&AP7U3Z3Ek<MR1?< zHGspn_zHN1kOlL-k-GZa?7=|0pD^6){|%2kZg#1s$;&(@zDGe}LY4PZ2=jFN?Ap;~ z`|_xd3H3;AblrS#TE8G(vm^Nb+Qg0=NtsOj8@4g=MI)XJbXT@j1Qg=T=xIcVdJ3DC z5k|o#Qwae|i_M}$<}Dq$?}1<xv)NTJ2V{eFHiUT3xXO!7&do<lzFx|gzV+yU>>4Nr zKF(Ibo`w8vO5JoDIpa^G(Q^irV~>c3Nl#bR!K<huB5=g<f}L=<@o~^m5fV0b5v&oc zH^?EqTX8FM&*K?#kl|ttdM-0#9ORQ}_tZT6Y)JK4G;hewdIhUBz<1W_rP7G958YPx z3UPgqQAt&8+W&a4kq-u1y;wOTg>+lN4Y#|WIUiiWXceKnAm#mA_#XZrFr;xb{%4}k zzy`~CWZ2JSkX5sO|9YXgUyV(glm3qt$ay)@81ejjYVP@X;OcnLU0j3YP&%Fr8u@Pz z61iM~u5WE{28`xHphJk|>p83Tdl>@}#KqplKXvj}ZDF<AHUnXWs`bIqd--A^XV=yj zV_EkgWChk^jMY}JvFg?lU3y>`6Ir)#l;O{x3<y&gx(qCYUcIh^s>}vwf}O5&R1pdz zrst8fi*+%~q`YME^E&^lD22np`V<&uO_o$*{N1R-6K%~MzcnSE%&^IRZDoH>B2As; zdG3#4fdYeWRkz#==?77cIK5nKk+X5DT`ab@swQZzb$;IBKlloL)UQUd*}Do9+FQM? zc0tEfRX?;AK73ecF^r5YzHo5L-)AO0B^u(H^og8Y<ajGNiPWvip~)JA<0Q&~kbOdu zkGQN9TV!r(6)OfYAPOE;beTY6Vg5*>ivZc^bv#k<b-x35Ry;=bk!;aP`#X=MOa!FB z$Jd)=cg6kBVa=-}xqe?EDPqjPrxN`=d3((KpxjB6Po}*#@(>`4pr?K?ugLPz9b%Qt zP{q0f&y-=za-zGBf#vwMwvLWb7oGQw5fg>#Q{d_}*Ua(fq%qgi4iS@bCidjdIPx}% zE|L&kM7RY>6{^VLFa_N>F%DDgM@j-5=AH&1<P^Y+L+06Ycdt>CkOcSm>I1x&qz882 zxO=Uoh}CgIgO1v5EhRCH?72rLYJ-mw%%F1W)!;DNtXuKb1NVK=ibLyESaeT!sx?&` zM9GS}Q|lh6cyaK)W61{x@1?H8xi7Xj;yYQdb2IwX^PD5w4@k5_3Nf)|kS0t>GXdYv z+@6|tbzwKJIB7)oLd-axxKO6)Cw7AQ=mth-=&O2Vqm@pjQ+(8}$&*w%nc<1>{Ee;? zsUNc3n~Nbm&QC;^dlLK3Bpl8?OZ51)g{Ery2Md{Z2cr|td1d?-5>{<gQ<-YN7AK>b zVp^tRfAQuR`}ytpbqzY5yl+OCNgfu>@$NM0nZm`VuV;<y3q}TMc9vNz_J)OV@}B;N z3OC@Ms<iCaojd*e&DohstMu8Kdn&H8n?0)c31r<j`V5+;P12cUwUER5q-H_Iwq!V} zCGQd^@<-03zm6_r*<#G9!>W;Kiy5F*Z!fKgv6n0^M;9GU<!zen{0Fg8Cg#R7>&@)o zjW!uvHb{(e?Dl-dWgQbXCV|2H$yk&5*yB`^JUYJv%JV6sEto+LyYnDxr$ASZV=N|1 ze0FZ~%SpvvX5Lonmvm@M<$I0lezqFvm(HxFdl=hm7o`7r4-3Y$Ecb31HVbPf;l9ad zE*lGgArE&mDV1#wQk*LnFgle*iiSul#N7MDc|90sCWx&EDfqi;X7aAB2alQ%2#?zw z+;3WZUQF~lb{B47jo<GljEBv>h!oQOTDlO~#fAfATtMGpH|;>br}3{kk0iz(0N|X< zVLH(F#@-_cKdGC++6m6Up!>8cA?gGQ1vjHWD2aELNjMH2i=>zxXk3c+RZ2!%;!!YK z$O%Y31WXKIqZk5M3i89)h@B6-5o^Kk3yITUMW9vqvLCVG!Q3U(RT86W)0ckqVqy}* z6Y^OhPYB601IdtTE9OgpBAq^G4%0vVHPc^C-SiJ+w$e?z^qSpG7Y2u`m(AtU!SO+< z-MCy`Yqqni*>+RCR-OKtaY~w7n{{%t<1_@`db`kQm&#?nz2Np1@U68MWd4C)aN)Tf zdwSi*KL(@mr~f{qE`7posrSk#bgp7WBDdS{xxD+#d-_{Ukt-;43yDM`8B3PcyKFfD z(Lf><OXw%Okxa%CCF@H)kE#ZoZ*Da$RZ18$P-T-<2`fliSk23=dM265l8cfq*LNxZ z*~mLA!@ysCnzsJ|_8-X!JB}Sirn>FjkIO0qf*=#%_moW(;oMWavhb9OZvA5+s+>ku z!R-3?BS&D<BYU-7(9F^81WUi#kyqA<PH#uU`C?S!L^`DDb7FhdhCMCe2d)Hr;Fkm) zDad41D=)`;iDD`o&uz;3INH!D_|6h-8AsXEriqi4d{Dw;!k*@Z@<^PXwzlCG<?K&L zF+)RIAMEp}SJ(dXpzQWIwZColRCXyUNBw>>6n4tia;6ehnQ$g~6{(z4A3o%5BgCT( z+Na4hHi2-&S<9p>{J_a9h!*+Kng}>qv!nHr-PV_^$|#&L<YTU#`Jv|O(dG&2sGhKB zq=yOZhag6)c~ZLz6{|P|5`^88C~TN3WhWf6-->Y}y5zn=FEy>Oix*eN$HQu7labiq zER|U!<tSQkI(cfXUTGNU8sJqqk(#=~&9Sfd2|+@OMOR=Z+Csp=!tYVUo-yGnuP^6N zX=ZMAGda>ktZ2)CPLNFHZP5X_?=ShiTH0{;p)=ob&u?_P{R@w;0DHOVNpq{BVd>;* zb-*khcD;<h=wHT%`$O%IFc}2{7)-JE5hnf=BL^#z=OVQq3w#DHJ=$i1VU3}S8Nwmp zv1pV6FPmkDA0zU$7f#0Os@f<Is^x~;Yn0`PMhKqU6^;+jdqI2U4=(~%%08c954vcS ztC@u33<Bl4;(O%=X^ZF;!suM=i88k(J1_#59h(C*-;}m6m*G!_3P8&wyc#0jucyN- zR-6fH2p!dPAsG;`p`^`~Lxp?D$*5`9<W@+CZAn<nA4N&R>0*-;WKrXdzJZ_l8{U@_ z=@aaKc~~AQrleWfOF(W<&`&e;*M#&NeJHUmGVXJRK|t@&FUKExLpl)t;jymAs-x@F z*Ojnq#-l<0Jqa~9GJ?BfLLJ=mDm2T^H&;R!)UVo7bu920+BwLOLs9l~xw(i%dLl!J zf$HA(BHiChS5d*u8axIUZ}#-K&NBbG9tA4K$SYw3qKC}+pPr=-pu)Mu_!q2#rHVh$ z!QFnhE9HuQ7e^)?)8jLqRwJ@eeZ^#iP7F7Ro{RLg%*~0hvEHsQTkN{0(HPdaK%{>m z%@rNB=xi;^Tf2i@?2+9_oLrlp3TsCqrj4&?qwrZo@yVg(O*|&M*W>3T0a1@RJwhDw zwPjQ6Q=>!63ZR)%aP}z-9B+Dkm(0uP<h^?LZJTKMv4R8xpfyNZGb%!Ct&ohPyYBX} z!Sl)X+iuO}NYvU0qEU+$0YcbRnD%p~{AB9%h|}5=Sly6*_Y_X`{EE&z{u2G-R(*x$ zX0#r^4*S(5pM0&amMiMrx1$voaQ2PLkU#9Y<|?pObywx>n=R1e<=Io@1Plk((0zf@ z`TYCpv7*m3po#S;%i%e*Usf;DARrD3WL{sCTelWOck5=<H(HkxXQcrCkcPsRF6&-| zKt8>>na-QBdpour40-HZzoeJOMP!Mt0BN<{N!+>E#-OlH;9L{iDgS&3Qt0`YIzu}j zyC&vBgn66CbJDbmH~P6jUp>=g3gUC)#d*83SYOy$iN(Xwa5xuEhNI3-bR)cyS}t)$ zIqddI%c+&{Ms&xC@@6i~$KtV-t%bU~&K6Agm*vHux+mQ{np&>J89rT!#VYKH=~51D z*M1vXEVt8n_`#Q!qS-j%8r4|7QZ8>+E0yYIxm?M|s_|?po{cUoHR^?Yx?NtpG(lkI zmN`k@fNZImNu@H)5)YZ&tS$F7_KIm%=p=h8b9v&%Vltr_H*662vc!TmjBxSR=s)3X z^b71B#1xo)!S@`PK=27Qk3$&AC6XTXGSyb$t_rsmB>1v(%5Vk)m{L`!|G|#Bm!gn- zFYp)WPJe+uavw@t{D86x-KsIUs#%<@N>JyL++F^I4?MR1buyzjR@5Wunv9!~%0N|b zGP`&0J`%D9aZ~!Pj7&MEVq67#3}500-hF*n<A*lDazh_K^7<IdrPS?qoyD4GYX)b6 z_z+eW!m2rdIuMfSSGEv$m5g^qJS~?xkVE9+gMB`Wa|@4z8XxU*5?;C=yY9yuecn?i z%kD=z+W(-!czBHt_!{maGba*eR@@Y^*{8x;BwepX@VM;KRUC_2HI`7>U$2PN$54i^ zz6<wlH<Ro`ZjnvOp$vO&sjsPRM6YvQ%KFzJOCDqENlNd?b;Sn?w#A55ylJ+!j#Apx zJmj2H<G?I5{|_$rh%V3G=(l#sc-{-1AGdPf!Yjrwxm$1#4UiY6U_KH|w6;JyQTlN! z7}AOYXJ_mrkM#M>j|RARj07hf^#1RR)s{gu3l>~WL%6{f_bo%!EJ+m8rE$3$S#I>J zsBW!fZWcBgWB8RY9IwewzOQB{z7L&JaN=)bIKt}Y{c2|~)@=l!*6Kyykzb(_kY6%O z=;fqOqs(N`b0rD2!&oTqq9NH-h~p`-XdU;I+NKG%OKI_|<-w=FKh_AYd*@>IZx)Vv zqLD`0S*bbmXPB<vV^GE#ZjDrpE2?l%8N_Rcsu7K+L+(W-SqMSMqf+k4>7JF}3fg$n zJv47JW~bueL~?*CB1TMRj<@gXn4EDCaz7SJa?pkjW@gM%6G99+gTWhWEbUUAm*hWR zCFf>EB+pNdIn7?75>~bFuG`#Knf<WajT{W{;h&YU{~c@`sm_6W)Ksb5cD-8aZGK5S z{c3gBJ+n{w(!P7LkKHd{;ho;0Djv(%-}X0mH+rS2Ttn7`Vy*o><lCQ#cSU<1aN$_k zBA=@u^!mR>XFao0s<i=Z@6-()s<!$&*7nsRSmYBs;~rQ`wSJ%AnoVm(U(495xEB6t zA&QV&{V$3hMl^^p<nPZ}MZ#Z2l%OCjO+8HP5~u?G9W6^HX816_fK5=SUSWa2P=UEf zsy<R)Sn5utnM!<DA;-N6F9f|N{3C0zDis|R&{wWfHnS7?HMGfoUv>#K@ia+t*(4h7 zQ!8l`f%s_N4xG8$;NKdmV+W!q?(UmoRXL3c8)WnYy|J&_AEJZ68&x^!w+4Jdfw<9i z3%m@TI)5oz&KDMO<-t>EF4ApPw^yB)I+duqW3Ng(M4x{-e#mESv@@c3*ipU^K31&z zQ$m`N9DCDWcDI(*J6y`~_Tb&J^+>2hNNCe<t0o_C0=z2wij1e}NAZ^3+CRjPDl1nM zMjehgd@A*j@A~+0_8%yBBxjkQ=MSu@Z>3W@kE{W74lR8*0G%Sk&9%bJdiddV$0i&g zr;dI1(%&Hx`VTM|-pJHAc5k>c?U1tlK9Etp)eC|+y3rHp$)XVsJA*hjhdDXCP7oPR zMq)-0@$CyWBf`O;)!Hg!`B(<sx3F%L{Kr~d=1?+nU9WDYUxK1fm}}nYYjLcbiw^Ef zsCs>Q>!B{tbvNbwt~p!y$woEMOL8{)WBX#3nKq}!B!iU>0~f<=qrS3f?6<>Fy{eEo z*Cvlr(t0&IUh&oZ%}LPRA=$3};AkH{!d9>KFtfk<hngp*co`7M%H&VaUjMo@)UxYd zw7Qj>*EVewe~(y&eaD;_6@}|tj_uD$pgZc~a?!EH`Km3y61*vj8=r6hkd4X&(Hl8i zD`v~ggIAWEL-$`D^N@BW-6>(T45|0@XKK#C;6A;#{zP8a+HL}E^4^wM`t775*kVM^ z$r#K?n@sv5->QMsoYeC3y2k?7jS@xeQiZ_b6NB2ZQeNkYgI$l6^d-jPOZU>sE~C?R z`YFFNjcrTtVFq*cM3@x8_<53DI(Fn2pZ?5`EJ=54z+58cfpY0n6XIVs0WJEm;bAf$ zlIQNb<`ZIC(VOr1r~muY%=j;Yf5qN5jW1BRi-kuhfNfqIAvGbVfOEel;~j^lpDRe* z*n)uobC4SUl5^G9>Lmsh<6R0$lAXC1SS-g9_(Og+KTDpP`Nxn5+Q0Dl&r-FN)hZRj zC&lPVe!Eo9wcdQYRNTp*M2jb3X#7qVa*o(H`Gd=GIaJIpu0vAxp4@UPg~6G#zL+hB z?EiU4m39#h_g7LIm3E=p&PGzXH~U0`q$1gNE#Izeq_WxllT)TJR<ly3Tv$r2XHMN@ zrCN%|-)2@$GwZ3P0<z#y;HC3O??vpcCgpn&h|#>V|8X1jJ^(9}@I#qL&R_Bfc3e1{ z{0Dj+2VOaCY)(PJ{TXH`o7p+f6!SlJ{lNa#zu54ycdjvkIGt0I`W8@$t_2iY=E40} zkZas%%e<@)HLGv`Opqy3Z7S|Pdg)*8`nqPHd!*<OTkp+!;;TQq?g0BQU3x>e$b9x+ z242~JqT3w+l}}0bpIm?9-&}v~&Sz;BfB#Ym^_8?~<fG)yxlul!8<wwLUVlZdIn+_a zV?0aGV|94U`RDN*Ysa%SOpN2nCaMmb8Vm+<gZYz?I0?xVYXd>l=;<h`HSA@*DlD6X zXufq%dd0zlA@Ou;)@G5E=_(1fL~+`aqiYrYReU^#1Nw*Tfj`3TA)K#_zqS*IQ6JU> z8i1BZ&7aOa;UAmBS97eexu<FhAG>c29^2R<n^bLip<KJV+=e3hYWs9>u3`~Y&W5wr zQF^(&RnFzCb|}<es<qr&T^PKVU3a_O>U7(oniJZAIy$(FFX}wzu4M~uy^&9(qS?V( zd?{PAmaCw{1p&OfEQloRy@dDBgTtI}CLS8yPtpYF9`o+y@$Kh|Qwx$&lm-01bfw(N zkN?QRvL&vwv4AQGIv$%g#$Ej<F{%CoJhFVOdqv;tHQ-^;9&5>u`j6Y|mQHbPodNQ* z6<^t2iMw0=#@HM*jcFwqFE<+HQT4)SSP{8vaCTy|_=(N}Fk>*+l7*3-(YO9wJ8^%C z2)tX5AbVJ&(plPH>Qox8XG3mzmYw$9s^!{cu+4a!vc<B!DzK>2O`rJXc4e8{!+M&$ zjo8$#{rFIzm;t%BgKUqrDkH<e>blcO&Y~f^ApnE`+n$4A{$^kKYs>VLV9Qur8r(W! zO25BXygXVQJ2l&`Sh?=$i#SF-HX@(<>N}Os<|s$7>*2Y-d_4WEWpnw5$3n$96mztK zk=G+ryHf>`EvEf47p3>_?d<E>$k|vQ<~}zo-8QS>s@8pIb`l`1m20v6nzGIMj3QSk zA77IAT*PMN&(Q}u0rQI(?`)jcg871ERNEWx83{Wsi<8xeOI?Rh-suQW&YJoJ;g-N! zgJwR(>Fe{gK>6>r-%1dpHzDtv35%-6X9P+4K=INS(_k?rXGg)~IK0L<XkV$0gD_zd zD7FMmP%j-jVcrm@0frV$HT%MRY#tvvxCp3QB`*p&NVJ39yr4Zbco{q|9m2=B>+B}N zGnGxUbaJJ|?Zr}Va9H7X=lxDHn<^}BZg0RWTUz{(!n2-OsIDKV(7}3jA%U|!l}qxC zq}np$Fo1wp#zXyrFpJt|i~v~elvUYiEhj2>t`=2gedp$uwzrpH0OT|7X@w&4OB)q+ ztUtKD98agpt(dcNaIoUUTIEzaz8rI$%Hm?haol&*ma3WCk-aj^d}a*Ezdg)xKIw-- zKjAD2fc<51aw16Bt*sOJjvjul!xg*dZu`9)fKFAX;1)i60)4Mm&-E8E92MTTRD{zb zKa8!r1%99eT0}fcKMhFk8scmsk2qON?Zypq?}?X>dTJs#Klfr%1FzLH5rR;Rx*xWO z30^;JFCMm9hXRhzw+`bfQaHi1AeK4USV|!1A=s49gN;;?o&CkbcL#!quPh!eZo9|Z zi|va(i-x^R<dfh=*yBGD`+{9G%ntt(aB0s1e?Tqqx^P-g=##s!7e}U5f~d@|$x=Bn zH4gF+=kxO!!sX<_9|H5#D46FnW8+Rw4w0jMIubhgu5(oT(AOqaRZIa3W2z)~9j7k$ zDv(bFr$@f2kNn{8B!1Hb6!zT1<N60T$!dZGN;n0feiAylYEADc?!Os}1chUF5}E#c zSRqNPIWsYSr_({QS@b%J%FjvdAiWMrX?0Wew$uf^IMU-6JM?&7f(rDV^mq^rmk;*9 z*=>8Nm;DjizaASsL|g9B7JbfKV88QnTU^%-3BxZ5CT>lLyLEG_o5&hf-Rf6=bLGC- z(x0U*u+V<j>goE8&Q;KpcPgeM$4usQGgIX(X|}BitM?lx>L7&_mU-7_Nqo1dDt2I* ztCD0J3l%?di&4ON?Vm)(<?t#ek*;vuieXIOXw#YVCjv$nBiir{zCX0>MD!^i%YkRB zHfEhKEHr)eTCN+czVGL+)h~Aw+~u3=B+rQcH!6G6d~{V+UJ7XQE+5f(o@Kus+NHn_ zs#}H1$=KG(t4-mztyB)WC#C7@4Qp_-@Na=lx$o|&qiM5mlM{Q%==%P`@;Z_8P4!%@ zzJG7xzTYF)toS{b3%(xtggW6H2)?_Olkpm!VMM;5XWh024uzpTPV}lk{PABRnBANF zh$4=uk1mbU!*AcV{l9x;^PTzy{15Xjsh7-wIJWO&=8>FfM#@GpW<$lEq+^;eD|;3o z6cdw4&NH1jnUQN6sC5@q8mSnFhn09yag761GoCo-SU&x({f@u4s%`uigmresfy9mH z!|>~7=E}HOrcn#Q&`f+`Ganf!riVIo3+mA7$o*hVW%aZeog2YdywSP-Q1AZ18P3UZ zjT!VyQbCD}<$v~iJUCj8mU*l$RNdWiBkqoBEMHzOfBdL#Z<gEhK2cW}ZT}N|PS1(g zoX@85fBwFXdnA?({uJVsZ(8w!54?VR?F0jzUaw=)XGnadbiKS{GH1xfA|bRx8*kHk zo&FR^Gg!Q*Z)>-n3kcY^;c31;<jyDKKg1fWo(2S&{R1G|cxz^e0l?Qkwv=|a&-dIn zmCi|<cv(ll_V4ZAd8d*GTamSQE4;=l-H&?inQH~{NO{`k{C(HNqkPuhRR`@4_g(w7 zO7rG^J8`!NU4~ijk3d%h=rO%d{~YJimol%TV~F>mAvj_^O**H8G*F>dIKJ0jJC+n& zZt5PhznbP`x43@1P6#b1&1<l)=t{;p;Ll;x#xaqxxM$cYX76ibkOK`z8VM>szOR+m zw142~KhRE7jy^>QKW7AeMA|v60AWZ=?fZ%y!}%mB{_^R|?atY9hnAP`EB=+Fg4j6h zoOaTHrL68fb<pbwfA1@-4N<`t;=Pe-KokE13&rU<{@pM1oEewwBwoElhsWy3%&|7C zUjI-k^C|FQRZkTAyw~~`U#`^XU~{>-WU5%olbqtc{c2E^TB(f>&f2+q@nKEkaR$;o z&E>4FX{*#uEa&$Zm~C1Q{WMMeUSk1{V@cAHkPN>+ff*U%G^HlQ9dHhvk)RDh2+O~N zZ{WnA(g8iEyVPoMB*tNK&-mPg!Pf^{;q`YNlsz%P>X{y*Mtxxr4OFWJbAV>Xc}Le} z3S?Op9ATbwk3>EjG~U+)r^8?%<P@S?OiD!Q4;10pGZRK#Bbx@{r<kz?)GX;Y$=k&J z7|{kBt<LgUXZtdpm%elYOWpTW1G^A)YM*o}cu~()qu-?F;!9+W4FC14PIb;Yhom$= zKUO$ltewzDfdNT#B>w%~dU)%=eLGl|Gp8#p>Q+bAvYzKsErRIpUCa&^ZGA59Jv7fT zcuT?e&GVtG{vlEm{XwWgIh~uGiXDlPwGf5(fhs(H?s@vO2a3g|8Py=y;tcM*7KO%> zhV+gE;EJ6@bAJtWqv^mOF)ms&0<mr4dj;c5DFFXOQ+n>jYVo2MNX-W^6HqhRBA>hv z^ohhx%dG?+0B6)7)SEAf4kKyj_<-DDw~)`nK>EPTrqAJAkeE5~bm|7vXbne&`Ap*| zl{RLI+8CTh<Lm`%WC}EGlry*4Uw!+a*2iQrnM=vNeN!iVLLVZiECWN}(Etn~lR&Df z-F_u&8a$UExj0u{cP~u|==z%Sv@cQAOY7FvE$q&cCxLK2lY!4%)BaXlv{i)PiyIf^ zJTcM+iOUMea*(5=R$p&d-yT-{^17(hjoM4x8gc)+8h6SY&I_*%^Iupavrop{rUha> zmtaKQFJ_AUd$mF9I_lv@T<T(|>pe~2E%$<&=%kU?K5tJB-W_*=f_ObAxYXNa3h<Ut zTE<)cv7?Vt0;pF&ePz(`J_Q5-I@B>JZ@6Z~ZzB0i9*<8w{=$AS&-wYriQ|dYL+MVT z(Q$hD@WG&^%oK2baq<5B1(|Ai$4!1bKeuAHiZSzx_3(;P1c{}&o#tM0fS;S4l0BZF z3Q@Dy8m(4itxAYh|IJ#ZUa!at!B^{U%PqN!8+e@;pvPHg*J^D}I*aaRySA=2KsjuT z&fy;l^UNLT1B^zLV^J<dkc(MKo|&+Z7f(zaO!le2SfroqbWLImxaszmYs;j4yY+lj zP+48U1?L3k+8aL7^#Tvw^?g%#Y1nFwug1x!HFrrnV8{=&q}H@!XXuMzig+F>#_9{% zmpBi+rZ>m%Ap8Jd)0b#YImz0p#$U|72u}S?^?2(0>cw2}@hqVmQ}Z)$9T*D<*oI*C z#qTRg{qsXL@e`#pL;W!h!*MIJ$a>q_vR2%!WAg4ak5xi7w<J-GwRh*3a^QsBSS;qo zLLn!t&O`CAdLIhc7p+(2&Bc=s3kx4kR?hfe;qgw3AkLeoqLSl;F#SZ}-4Dmy{ZN!B z*N`fN5`ZcF`6zL%BKKe?Vta=>NaXl6!-$8}5}+I5{K(K_(qyk43o7f+CHx$!%HI0% z@wx)tF7zgJou21~;K$$&SZ1-l1qkyIztG(LkGQ&boMH>{wR@+x0dmFNYH##3+N*cG z=62VPE8R^jxV*e6<;YGcNZn$yCcC-Vs#s5+4MnVJSa)V8*l>{h!eR50oN!MBckAWq zd=b?4Q5`NOHqv0Vnojj)KMyZOOUV*>LO}!dC6d&t?ta|m?;CXxK_jRVPrTWQC$4j% zit3^z<!M_!wkvJsJfMz40b6k68iOAST=I%0Zj-ZunM<6sgR&K(4hplvaKlz(Pb@%# z=4fc*bO)F2Q9SY2a#~@PXl#O<K-?oPV*1#>rf&O#*F}%hQMo?`PUabR?=Q+qbr#MR zI$BoamA<cJt6L)oh)|#!dm4Ub9kwF2qU-kk1gqxHKGVuc9eOr_ng;I=9;l)J>HbQk zfE!duv`b);uASZuAF5rz1)U&Z3%{C{7q)V<zeMMKcpL;#ItiDGRZXSujt3yZZuhU# zsXK!L4Gij|CPuv3AHuo(aA{tD$f^^c<7YboAFdRB&y1jGujM!xVXo@wJ;0wItiT6n zheyhI@7zmSz4qYE+xERBLO!71yfqhpVr)7O%yF-^VBn_IXPfGzN#J(c-c$8^3m-PO z>k`T;pELDvv0Z~fmJG!yR^&r#&7Xxj87rH;josNZ%jlJjp@Ox?+*3POsK^K&f;f8a zYcVExLF$^3h)>b=edUPz32hQ>m3oM7<o7+A<imY$*1~5y;`7bFIj?^rGVnK*Cf<4U zLO{kZ$d&9jdsO6jOAb7<_En3@{P|i)22XJz$bn&W?whma!!_dQ@K{)j<p2JvSREZO zabNN9&*&feTl>uPUM=HpIL;p~^?Jp<fOFdX-(R>ddOX^CS=#qiWVrS?qR7vUKKKdo zker)_=x43@%u8IM#L_&`q)<9SWD4#ztO2M<<8X332Tq}n;5LCJ8V;?XeoK=kD{qAi zP7UI@UH6g=>R@p_L^8EZCXr635`}CxmdKaa-lDu1ted2Zjj6oZMF41ttgt(cdXi|w zTr^oIB-7D&Jy&ZDKuX_P&);QE>39=NrmzlvwlCGmh>7&`ooQD`?4!Tsyh4vr-v9m8 zaXSv?Ke1TY)%&UuM9#{1YjJ*SJin7X*8%^mv-^wpW)=cNqQVBhX?dY{fkrg?4t7%H zo8;ybte~u96dp5|#6mmcpCcZ#o#30-_5*!@?(dr?-dUO~vAru!Dg#k2IF()@wfqAT zymg|*crpy6vz#WsaBkZNIT;yWu@e~-NhNt8o^_)9hlW2f29irRTghhCKL;OvfETiQ zpM`J`lFwAKqvI@b<UbZ9z$^z?zbM;x+zR(V1i$UnsJ9HJkf>E8%_j??kWMGAowq~y zswNe{A?c%sUt2{L9UQ!u&l5c!y03Qf9Ul#=zsFdJoHO`#!G=zWMxkRNZ=Hda=4p5i zeZshUf)Y)jidnpJYopQ*GH&le!D`~3e<Y%!59|8qaSqlH&XSmE&f~?ndv0VMxlz&C z<=j0@WJQK~@FF<-IH;}%-<uC2OXL^^ghG=ndVrsqiJ5WKX%X0}IwUS>UPVm!qSfjL z>Xntn13~)88X*q+H9`=|vm15$<OPiO1Jz0)myE}gxk81bu}oE&KVI%$4?8P@?#1mI z>gQ}o!L9`N4=JXb?!LyBI)OiTh<7at$r|&N(}9T*azspx$bCmgWc>u&p<w?NI5V0p z&A)zdP0BDY!Q2TkC;p5eIT%$m?JYVoGWkVNpdl8}W0N0kAR(0~n<aC15!ZaSYo+4x zak0cH1R~t{v4yP~KL_8dRr_8}yg^64w%#P>SKlY}$FU>EkNM;NSS~W?X?vm9PZ7~r z#9nPq24cH;fy0sGjL}ktGYj6<$A}HRE69|wWP)I|>q|VP&0@w^!Fjqz-fgXtVC|CO zCQM1}n=<oEe~Pe|aWb5f5|aY%N5^Vl0KSeqzaMiW?nnW-k<Ir(u+4f<yJ@>7G*2UK zya;Gn1x9!A?Jr@?^-G(tN9^Wwrk&uYBzjb$lnF91h+`USzY-Qfd=OyFMivkAgEi{u zgCa|QNBceKPHkHjfr2B=KZ3IJ8pVk252DLK7Nx1YtmrT(O;AIc?$4RlUhA#_wFPnL z$z%mJj_&9RFMqS7<>x;PUIzawPS)BAGbL%DNn38q#zg=6S{O_{;ou54<pDTmbSP1} z7_UDI=V2q}rk{|62HvY2C4Jc=GC*?SJ~A=Nk0A(v6d9)(1}ssjZuTD`ju@*5MiRu; zRY$wSdQN9(pK7XKbh=I#4FH|%Cg+V`rqOBt26hn1Rw5dfv`82p32q&hduN|u-P_f* z%Z7biZy`ztrCz7o?NG>l+l5$B|DaX3j~kb3;`7BsD<8MmR(u+n;RbV6>rgrIA((k2 zC*dsmmgM~l4Dkwb0-nPPCHJGZPp*Mw*AK3vV)cV3&zKL-kf6ROwF43xd_n}!wrZS& z!=!ERrK3^#ucczqQ^QMgZ0^)MLsue19OW$kZo|A0e8pAVhPl#7F&__ws@YhmmW_sc z{C^4<P7YUFwpwM6@WoiXvSr@Z>@Ru`B6l8kZ{b}1yJR{HOwJ6&gvb%ivO4kP%kgJK z1<yR5og*Ij<qM=90l>tJzML0p&mT)z@CyQic~!s2Q@vMAVLjo4Q?pM%70*7uv3Xg< zoVTKmlf(1mmYkK9P}C`BVi9KrlT+($H5wy8I2p}F(;X)iiKVie*;F(l57X)XS!Yv) z!@=oMrz%Ey5oS&xmCIMo7M$w(dN`daC!z^bC?r|$juVc=5;?M=M@j2Os`_|5O48R@ zA`wqT5<T@H(`p1lpFV>1{U5>l`Z<Fod+2{1Xd_$wL8OnojnRKFd<ExHLSR7iPhZRf z_}5VYupvvg&C?ZQQ}hfy_4|P6_!WoU{7Z=wn42O^q2>`u;JKQURQ0mWK#TQKSzfwL z6*1e2rVA86+_K0{bR*ou0%=-U2$$E_;(O&}Ihsv`Lb<{c2ES;kaneW;OdVP(<U*lD zHp=^Z@wN4Gm<;vU;$$0wkG)-yjfF^=!j>>4_<ukSD9ZmE^y*u6{ub-2y@hCMxe<?r zvhiXT!ist-oXOX#sZ_O|&xBL;a-*6p#<QVVys?~$F7#IGd9#^yGmT|2!7Vp3_O{3d z(G|@+6g#4h{l$W)e|>e-Xe34f5+!Jaw9qDz65EnENj#x0W<;%DX^sMO&4g$<GdifA z#dz)I5+j;u!Ln;UH|(f4d0O2basP5IcYa4Qt%y5~O<4zvnjldf?_+Cy0)8LQ7wOL( zlaGm2Wi%IE6r!8RYcDI~PvOXxwmo4h`4V%UIn<%nOcKDN5cL}POYvizCjjL&e;uKn zvVE8rc;{Pf-qV}5uBYgL)95@d1|=Q+0++eQj7VS-4DBdn@?kG_+U)$-91`AsCpllx zM>*u9Mo7hEzhMQ-iIbPS3yUQ~VrnG7N5~}M)`Y4-2+<_eMskS}&%^i{U03!SzhBJB zLoO$zsJa7Y{5+MmE{iVU_@SGO7f)=8k`T@`9hH{1N<<y%*c?bQ#KK};6U37K7Uha2 zN&b1TU7|zY6E7w_n0i0E_UbfW)1)C=v}hUnI$rL+2d{(VL7N%jf*TDqlk<^(9m7BR z@O3;XCL^Tj17ER!-I&;>KHfO}uIPM|SRr0MO3t%|N)RyH_n74%onH`uI^4rRhwkp~ zMh{eKx4WxS2T^(Ap7F#zJFw1g;Q+}Qbmv3*8!BbjZleIDZCYQ~wzCj;0GP~JWs$K2 zs09g+_)gWc1wSFW?O^@8S9F*o0{Y<JqRL`pGnk<<^wz+n{e=y?nuZJEZD58$f5-1> z4<mmdl_m;!n(*wJ*k~1svM{b^QeF%Oa|}O^oZ<qroYNq>Q=){!`y|A7IOxU#=|P>X zY*0_9tsNd%J86Qt9o1L;Z?Z9WH4;(nSk?|?W2%j_Wi^&%QzQq8ic8<h`Wcp?x!CS4 zCn$)2HSxL9u6CsbtdYQPD0h%`-&zHg0GE+>-wh6>9wOgfkN40Qf;zT%LPzn)*<Qk1 zCT72{@Mxi(21&*_!Hs7^Az>e9BArN~2%Pxf>VhMWK5_s@>Rr*Fa+C~CyE}sh_^-OP zy|I6AfEMX~JaQM0)VjWD8;goxk0Cdm&qnZsIcGKveJi*V`L{)5AAOy=kgtL|^}9iR zh()R!l{rW?1R*Lf*x+&HL!$GFqZU?Xc}MHf^6}xnkq>5kY>Bug<bP%spoxg{`N?4X z>Nx3izCG-P8U?#nXoMhLKsx^VL!nwNj74dX?0^3ECynPF);qQ&PTfMrkC%g!=<O>G z4qF?=bh%h8r;8i?jhmOh3Xteysn)1g8?~h}lsUJ{BmF7zSRyq9LoO<ZXGjI=A(;t0 zIvPZ?(1eJd^F(*2JhFEy>x&T4aL$keN0)V5qt86ZqV$^vYFPh$<Ktdp4>K5hf;Md) zuhqBI9$Em4NT_RQyZE+DeiPUXX5lM<8uuw&Me{Q{W$*mc<dd%g<1m7b!Dc!>^JPFN zPUprPIB73S>O*y~8VXs->fo@XLR)XPHW%E>^-FiD;+`_cK=t>l3ZTx~<+=(jY;OHx zXSJ8Eq$LmVW_`hZ|GpPrjQ3b*3-!%a>hkDQ9nb5kAUMhKOgT?x=zux4Z%$u~huBxA zv||txYjg?%I`W|~I-=SAP(8MOwR{-cNNu|HP6(#!&1gLm>n%4n6WiH~4RBP+SU%J_ z4JG1G;w5+1mde|k2jmAyt)+5><=s}TxY7kN)Tm`^kzOiYDdjTBc(g~o@}FMW(CZ5F zZBlxHu6RPIsE|$okfEmZ*Vmw$Hf*Bp&I{o9tG&qicHV+;AaJ(W4Z99J`N{R#8GB~A z-rKo|I<hFq#K2QoQyRmfeg418toRBq4CBF0EadgvawOy*HASom2z1F8IXCebQh^sw zYy$I`2rxW|^_pe-*2VeGE44-g1erQ-95s&YS0Z@ipZQ`Q0CVUPkuEG7oLT`CNj*d^ zn>@K1l_cfq1F7bJc)>sbEF)?_(9JRxt<%9NwpJm7VB7D2Y6G$5c2oz)e(=>mO3;o4 z`c(x^JA`mmdza#Hm9d7;#Pq46i5S2h^FP7$VJxy79Kk{H(!WrT%*81H_H7MI*VjZM z{3G?j?VKK;9iP29byuN&7R<WZ-#*@cvwdvjc4;icSwff?L|P&#iFHKVgp2{EJ>=4l z6jZ$-w;yg41_+0++kf-k>b~#e`PIOeNO0@he4$b)1dkAv=%S`FTM7sdsTD^0Yn&1S zILetH5R&-X<P5U@tmf8WAmQAODj|BGXoxWPcp0{(+w~dvo3Sc9Z4ytAAj0_%B(v|V zl0GL*iB_3KOXf^ylyal1awrmI`kr_AjyWZbVRn%b@59+E#+R07@yYNMtIL8p#9X}v zxXdx*8<8r+m~ON_2_4#k!ej%iS$q%%c-wvO9d{%zyzH6Zp!@ml5$W=q+HzfE46Ayo z-U?H6GvBd_BNY)H^woF_JV{6+cKl9J_TN+@+Z>BHDoKFhOxY#0KFobiY-O;gigowR z-j4h3Fy2jEsD+bv<PTD>jniE15B65yZ1grh1-5~07Wd!o%NWYqNjlrXL#=0veZ?3t ziGS3w|H`VE62e`#vustY%Cg&eYc7fPzUp?`R%NgYGlRFMaV_DvWL^!g1+Tw^M@(E_ zi?s$%-0rgK{I$6h@$`i5FAw&tGS|1eT7M~xNlv5h;aUAXpX-sMh4vy!UdiYf$QP=c zWa9GZ<%?$%b6+_>guv$M3zFA3e+aM5xI7_s>$NG%4Pb~LjSO<bzGc3)<Mwk)V*ink zR0|vOP+j=xBOH#g2Xc_*#toPwt$P_d*l>6(N8FXA5V!QH%%fM-U2J6$<RWNXt=HUF z=Lf1hMuMkLzhzZlce~%cj-o%9JYEtPmPQI-LNooCeVUY$rS4LesdVy>{4VyMTRpFv ze3wRl%kM?rxZ$_(p9f!!cHbwj1C_aVcW=GGVhVivS#T@(SK3B96(lp-V_VC?IjkRl zh`wlo4(;unYNoSJIaJLJ_KGPtP)?u`3kJjfD!do2WTJzQ`BGZ-Yl*Vmku#FZj;OCc zHg*>LSK4-fu7@(p{s3xv<gtB71ZxZW&#H=XyTNUh+ZO7|Ikzq6)kE*_zW%0OUyq!X z;Qt1ii*uJyJ50{oPhb8q^h@(<?CG3MiX|-~e>U|3%O)Iolkh&MdZG|H+By!$60xH} zVN;b7#qhytteD9ZWA<r0l#aU}_oMNI`k(j+^vtT8C`O!=Rp~D*50<f6sf}KQtV@W% zsM9}=6|+vxUF0)f+fAJ~u?HWlgSGZRng8eKFHhh865Zoh%zxp(H|ey*7%IQGm@%nf z!F?j!0jNXf7Y8(&|JUl5z0H%&Vs5jOZ)S_#6%|<N-hAZ~uc%kWg@x5*A_>!QzWjDC zad42>TfFBr+G@^hVy}cxTJ};IV!LW3t`4n4AB%|nfAlvUFlKx<tk<pB9PZC21q$!B zty5ej@{99atkL>^^s#u-MK6|r%nUO9wE3H(0#*dEtAOCfqhapQY6#&cc=;|HkQgX1 zn&=-S(v5qnuG=|{?MmzxjH*oIq328N|F&l+60%A`)=5>YDk-?}u<=-VMhspjQv*j9 zu_a*2aIX2!{XV(V2N2SNE)&W8`1!B2iKyh8i^PxD)tG>x@eQpWi;s^NGUsVMHVloe z6852+7|;k3w?Mb$X!j-U6WwbX-RrfSmQaJ}a+-)rr)C}r_O&Y9^XP>16CfT3{|w1W zI8{i$S)94Goz25m2HBs&NM_+7rKe;<K%uUlL+q*l?U~6hY)<d+4vJBV>j--$8U{KE z10@Lh9@3d>+i)sy`$_|Iv1SdZ@W?q2B~?sCvY+di16{sobzf;73r<lQqak{#Hj|B` zFJlMBUMBu^$)@(?=kQs-Ky`*(1N{#(8Qs?`p(&363X<9tn_}kY)n4zaxaxFQ1%bht zlX_`eTCabK)aye|3*oy{ayeUd2knKiz=EDL#)qN#i*C<t<vYMfC$1$#5GWisr|6(3 zugT#|?<<;bPOdp~cg3Iy8V~-xmzSI&BTURUOYz`;w8g*x%|2_^tCWS`{=qg}mv;T& zzE-*6&z0}D60Sd8f$NGezWOXQ(r(RCa=SKn+kTB_xVKujdZS3!Q*gg&D*4&Y0SJDl zjzgc785^l%{%)Urms<W7)%7#0_<j4Gs_l9y7@$@*V=e1<I9Fw?rSAXHZ&mxdoqhev z=w!IR*Kc)x={t-8;9<Qg{P}XHQNG;Pa^ZV&Qs=ngx!y5}sb|6s#U`nd+%L0`?{(q( zM6*b#g+V}4w+3P{TOM$u{>dq#2NL~L_f($Co5N2~l-5g)&qVU?n*7|pz7HqfFbY;; z5b)7GvBcd^|CjdNW0c~YukBgevj1?h(9N@JzK-YXfSUD0Q>kisFg^Abxg9~1OUkJr zITxJNbd!dSZ}OQZ@RC6a<!JZ}Ytj0ad%oyytd-xZ74=4~5Sg%i-hWHBl)_u&a=Ou2 z=yd*ip^;Iw-M!IpVY_zlq2IlTtKFsM!lIT(*IeboBpy)g)*v26LLU^iKJl)I0~=Ax zHm)82IM@@}Y{DUKQ-mqDO)X@>rO2+<%O?6=d7teDOuB44i7YhE7!R~x2RZ1)hzkxt z;x*ZiuMdmh(akwmAYl%G1|w9x!yJZmoZ&Z@?@-nmY|E^kD}rRc>6h}Q>-EeQo>-Gq z$oSm_9VV_hj~JP<x;KMHXsUSbvV-fB@vv;kcQd0c_5Qq3H@cE;eDDq7A*M}E<XfG_ zHYhQ#S1b3tXkRD6A%t1eG)RUFKWBjj<*a5qN%Cse)7kuZf}vek&;q}YjQ9`fC-f50 zP4KAcjg(QInPsHKCguP8d`#ERwN@9b%C<_<Gr1)`QfpmuBN#pNBPNP5G*XQ$5Yj98 z6Fo%!1gtXhSU5xlMa0}t_;l=PeNL8q)8@?m)zjHK4}3I_CemWP`S;eV8&k%cIb2)) z^3!YUSLnOOZzet!Gu5u=-1P(N(S6rY(`H#S1@-dw?~RVRMZQ%*n!s;`+NaIC*v!o| zh874gI)E*hzr<=cpsnG+F9Xx|ue3kyHV>8=qkuS}eC-)K+HZXPOWny}pQW#F-Z7cw zN0><D=lZ^8US~~GZ^b@hoA?vSQ!_ee0uz*P^FR3;?zuRHb7PFu@|ZcG3zWGb1wV98 z9Tav%TkME_?B9(#2r=+1|H7>OxqFO^pDoC*0Os4fwUzzA*wICQ!qcgKHccowL?tjF z3M&cO=hbPWw^C|Zhl2p%ozqU|H2A8t(yRBxCVJR1=25OAXDqWfo80wWK|+rc01#2s zM@22pQ|3jz&t~Er)YJuMAf})OgEn8Oi`s#5_V@dB9~5fdk?VVSHHp;^1fK@17jj<z z62ODpM;`^IUd}&Nq>!GNku1_^m>}(*V=j<-82%c(N!4m4Gzbg=$EprJP(gjzs5jl- zW(iKXWoW?HQ{5Kc#6M3dM>Y4<jtYTvj)YU$Isp!7{chl#^TeB6C|a>vz#zI?dHCU~ zjU|bLmj0A}h?95yn4KJ0DKZ78h`31nE+C5;2c<8k#E1PrWeE|wPMAw3oa_M9@ItY< zb#GOJaYmNofb?R1(eA#Dq^%gr{%KR%l_xk}*DglwL_anB*oN=@_XB@RYB)DDiG5yV zwhzCVVMm!&&uvyBlr_8|Te3FRGI-`*f}HdlaC>)2c5;5$b<YQfsZKRt-pD30xfGjb zre9F8?jc0Tg>N;(&e}2CPSa|#yAa7NmRT{gSr<Jyxn=X1bYtNp%#z8DoZ#F}r!%PW zjbr^$T>0`1f~eV<P&agYw#Z!}vdEV!fr&5v#>^LE=tmr)!R6}cSbT;0IR`adOiFx* z`gP195+o|YuKK=zqVJ>b2e~Kq@Pmq~h#u3iv2gHTVIwQiW16!^n=+sw5}*=`#q;tQ zOUBQD(9geo{&MO|CH^0H3eCqRuytTc1N8KWSA(aCY$hE^M$*|>I-f}to7q~Sl`C}@ z%hhx>7fa<b@#T0XmP-&qm+7SoooF(-)a*2N7Z+5MfXGI(72c_?sDGGl*AsCr6HPkt za5^7Lr!q^;%~ULx3P<DNY9vNtAnTl*2I-AjHD1XSmrmUC)7|dT!OrfPik!AI9@Lu~ zAsuPx>kyNYl>^HRHX4vfIy01R@QiN1xEiIYbF^Q;Nz;;1$&!>!AjL|=xHYSnhubZ% zWl)#r%Z;UVH&Cn;8rfnp*5b9LN+A^sJNfl&_@lFBa;&HT4w2S=KGvw@V(Ch=-f1is zE1_^AQ)zBgD(TH+KA%n%GP!g-6zjhCWSGGSN^C21oYvg9{6gX~4k7o{y!_71k7e2r zA`g-(v)pFUw%dD<i^7@=38nvn`fuCIa3;T1d{o|+k1earAnBg?FHoMGZ%ui^B=Zu> zuK3Vc&?IWdsRm3|ZoYgZ-dC^`^buY7<@3qg0L5TAQqRH6f|3C53Xy;x8iNK&RJWsQ zlW_HWP>TOFTNG9icwIQlC(Ca4bmfElCVB{ECMdrJj5xu2aqdR%H+B9#I(R~}os6@n ztufMM(^(2acs!QC4n+S}FL>=s8F(EoDPi{<LhxLUKb;WPvgZjNjdfX{g0%nmrqc>; zTvQuXcQaDWk>RwEURhM91lvO?v%l-^MLX?XK~Hv7@_oDL{8i@-nGyuDFJHV`t$$d7 z#A-7ZBh1qMxRdJSgW)9k4QT0}Dwi?uwco3xM%C}OGXeY4|Mh8RY?t%IB#2OvVNd5+ zgn(R`qZ(8=H<q-2#(V?`C)r5?QzQ&Ty3M{!I<i7_#uAy&FJ&D*9Zv?Vf7ghlV#)0G z(rS0D6E8$l=_5DS$b^%L6?gwKoyq3aT7PB3X*36W9aT}qRw)+G70bEh#q4IS5-PXe zo?K!Zs;EC%=;Vt_{WqyhA&ap!Q3x#*t@T(mT3T&)cKYsCqN3tkz0IAiMz*n3X)abu znFJ}X677~scTU@jc%R>j%<;|+5(g|c%OK`85CzB1;?<JYwO&J(ASO%w*+=-S{&yrI zma$n3VniOlP_rb135uN$^8A9e>E90)+`~t9!96^HOZoUf-yf*X{_X3$nBe&NBgJLp z9BOTHjnv@GJsd2U$B&3+=x`Y8A5!C^eV51b)Sqhs#%GNB{8%hN)L)!7at9(zfB~aN z7L69w<XU)0g`Psgks&M9&;TDD6?~0yiMAvEa*G;VLYx4A7BUB(N}tL8YtFY4rvTpz zSoWb2)c77r7DTL~g*HF5NH*=)vR`Nn!foJ`Tr<b{Trz2cyTCAr3q-uJ;?*R+cv_K^ z9m5}nK$CzaowOa>Nv7?b*@Gl)q3AdeagxsDotuc2W!yxLn7aNDG_~LtMTGc@0(G^8 zuI39R+}p#NVm2LA1<5F7I&uWK#xKh5Mr4l;zwxdg9~WKZOVAqgTwk(c-Ryd@1HFV| zR?P}nZ`dk%0;e8f%rn>`$5OS9Y`vOmG`T!j(J7!2QTSNAn%TXGI?9#_#SR`X*V24e zpYVj$2nHX}6ez>Bx15f(uE%(}-86BY<jEm#4s{jX#K<S%L5+EGRS*hLUHkbPF^Fo9 z!I$<eDu1-r8(9K2K4klw*$<lr2W@$28$Y5nh+oe)VeCuP`ViDDvh1JitgP%<usxQp z^ED2{1?PW7yS2sw#LJ)G63?_j&dC10kl=*;b9x+z2lM0!N)sBw6GW({Tog$Q@68Ne zHj%)7P*KA9@)7#h-2Akn<)p|Cb{854>z(z3#zG<HS0grP9k|DJXS?nmTbuX6)A5)e z=GyVjb|>D>9oo~?Vxd#3bqYnY=XiavUj>tPu(fqCxNn~sY*tI;Ln6;n3A?!-8**yD z#$F`(jI$zhMe|N3oT-=dC<haMD_%s<!Lt@`c$Op`_x?x9XpOTs8n^gy5%nrVKH-mx z&i?waA?y2NsoUnH{wdgWl;H)YnA;g`Uhr3orFyejFD<^=Idw0uho!4Rr#pj=D43%c zYYHa5gB_gPL3Fg4BXdw9z$8N>meCunnfKc%Az(6ELtb`sz?Q^mBjYy)Y0*tr=)FW$ z{Xn@{sWi)0jT;`i)zJo$>ELD?_OIK>MwFMpH}@!=kqeZw=5CN1ZP;*aN%j|M7dR#H z^)f~yxiv=D6s<63i0cMw|IvMO<#uG78#n5o1!cCZA|PJD*TcabuD5UREG))Xe?>-z z2X4t=d&WLpx&Ll#0Xg=!Vb1^4z<(L|2Z8@iTA+3BsWE~K#$}&}uL({22L>X~KJUy* zEUWDB`~sfm_nE#!G0@LAF8(3X8x;LBf!qhDEx8t-ddlkiii=J2>eng=@2EU_`b53_ z33gai4AJc=G65O?{7dURR?X$(saPh1G;^G2CgqS3KAj9F)7k1qYnx$;?6(TZa43?L z_`qr^OAgLRw3J<N*3!f-I3cy{gq-?PY`tDzjIIveRhJ{}dVMVvYS*EfO{PPnEemC= zaw6lT%ULIr9ISJN#q-5TA`-&~oLO>rmokZXH2A;d3Z>FQBNUBhODz0wECj%QZ8KlX zR<p@?Zn3;l*{l{4r9?cuP)o-`PN`H$Cn8QPpKK;VkwH7Wd9)k~Zyqi?PUm1F6k2IC zH$v;7T#-r?(@q9Aa;BJbn^ZVP-JEcA8Fe|c91Y!&<KKM^`PL~dBxKrQof_ui{f=vB zaAu~yTQ_T|w|H<Z0uR2^66%>RcD(D9tHtF^KA%}GA_7NbyF|dIMC-q^f<W&|?XjQ; zk+~9~|MUe0GJt<fRsYR<bJz@yVp!T@v2vqqom3ke4Jfm_1$i2iH|}3R1Hi<h{z%Tb zjJvYDva;Ok@{p(cWvZ?1JBC+R;&#Dj&WxjoVPqFQY)WfmSbI>-sHjI0FZKkSo#a{8 zh#4@KLR}@EPant%L{D(7;%X2}x7N8dckdYcb^sl3X6}hZA$+zl4Cv%^(`9Hg+N~n( zX-uvtR(#~)l6Bc+1j8VYHidskEbP)2V~iBLx;-tPb**a|`;^$uMc2X~e_I!l*KXU& z1);C7DLOY|P)Ui?)$RUI##V!WfyP1}oiB8>Eiyp?L<Pgm^Piy|lDoQ_&Gs*v?)#>D zn$6m)*|mN~Wio47j2!jgpStzzn!Mk{1hOV?U%hcph|<ZZ9j|ZEJ*U}wzoOP4H$^o6 zp_)hc6lNpnRXDJ5()3r+7`C-QUnaofIvJHA0$n`k+0}b5$M<XU)vh<!)uL#0i`F7f z(ArueahWeNmc~XjsXZmeFKuq=S$@e#dsBrJ`T_Yfrr++nV63{dRQ>jxTeUUxgbO$h zo^*EEcJ-<tA8`(=ghz=U{HsqT`<Fq<lOWdEfZ!@k0IJT$qJG6p0Yo6K?jWqfN|NhB zeaF)Qnzb$KQ*`MPzE`<MShRHUUrA`C%yY@l!6QW?tuB*^?{Ug@7o0!~$|<HtOJ5bw z8W-%Ut*cZ^ZMZG#-0HPV{f0KZghru#)~d(!`z<Yd81I~J^}Cq&s;kDl2l|y*-#ZpQ z(+|_ZeRQ?&2mbTGe?dQR%EcBXadpo~h9Q;;+503CZ|X4sX?8I|B+IXS@Q*ZZoEi0F zZL^XOzsU0KXDF}!XPJEZqS&z_TuWG5?f2|q;TTw)M6}sbx#(WuO)Qbh7aNHvfP?*5 zoIJYmd}VpPSxUliLaxmPc0A(q_Tuq;B9SJ=cQS>0=pd0!<<hx0mcVR3fdQ^&{Y5yE zh{j7vHcYFMERkcJ7`$Ac^LHYfYc6dstVUvSLi3`B84Qoj;#MpXp@>w)SqViXYxi0) z8;T^-#aesqKrJ7&ifz@9n08D33O~s&SzAVSFk>ch05aY92~JBML+!|uHDP3jj<;7c zazvA<C4$oj%;NR};5a^o&@+_DxRb9F%{KdoZNay<-}aB~oOr)w7GLRL2H*I7b+Rm0 z$@V+{Oz-ibkFnn%TQs^x5O2@*@<U?t>!(l}XE6w1#*gXJ(LmlY)&d8k@r&S6q%2vH zlHv7}Jk#sun{jd(<13OJkpZ?UkBJ`#0EAYC8Qx9=>_@yk3EtC(<6_=hIy#q|C6wI2 z;-VF>U^!b{go5ss0Cvwd2Jmm{PjCaZ&X&ZcxLX)6<NP*dZONIb#NM%mTo9hKth80& zFTpA1rI_%iv@7C8R{aEE+@rwE&*p_%O`9d5F`c&pGhcBJm@2Z-a#vPD8?AVJg+#8@ zs&<%q+oW15f3&L-t#4!2IWH$Jj~mp{J=)#bFWX!0$1njAEAe=1Beas?{f3o2N|HU8 znwH3l6g(FI_fn;NxdUN>YUcOpCEagdkq`G@fYF{1=?`<W3eG`mG(U?D5dEQIGR&*F z;PHNYu;{isTh<12L7md+W_icm?4Q?9Et2y5`Cfa_+Ume>z24qmD{r2bcGSYv<!PNa zwJi4cEJ~P_Onee7t1xXc9~4GSA}~~C$J*Ud=f`;ZF`l*CgOJ*=`tA0P3dg4Pdq>Cc zJm|L^#M-5KtHc}#eEN#L<zI+T9&JWW(aw~H>5IvK3a7=mBoH2dB3TGuaIAxtn<Mjq zD!n;7>uod|tx_^^kvcw6rG1XX!G9s=;!}6yB5qYL54LtAr>SIa`*P4rT&UKGxac(o z%EWCLoBd<Pe2&stHWRWV&piGq)(D;vto}lX)L3ca4-|I^zFIJ0TH=e;?_(^IP$v`= zf}RKjzz8H{o$S@GaohuH!!hSMz{I_c7ZwjKmItw#$(o*|?Z?;}@F#h#Ct`-|Tj=*w z%sibLLD@f092dSC2O~K@`Ew@WmkjWicJ+hXez(>k5ILXh#-d9rAJpo*cWzrn`|-u} zF`0<nkE9FMPZDtzj%S0%XYT5UJ@;rSlGwz_Q4TrDGqp^>So>_S;x1*PNtErAXgZ<R zGSS3lG|J-<%-GP!fjpR(4)XqmC09QN!@w`VxCu5g7ss<~X!@b5eM`8Mh!;?ORqdoS z4r~dZkS=nOR=#abAZ>l<^>iOi<6jXhcR~8dlMItTqmyJe5EFo?yFbw9DV{$PPYCJC z*dH*-I>tR9dkfF4m$nBx2(4C2sbZ;>D5SPj_ArxPTTSM+;@N6=b3?yXUXZuk6M1VT zmEDfXTh?oVER-^KK!3q|_4*6>wD*P8WcKd0ROV2RdEiy>3{1Vj8bW1`lltu2lyx>p zNh*31YQoeA(Bi<SE#^mwM}iX+?Mq_(v3wANE3y}X&z<~F`iJFfvX8s3(0N!q$xM&U z@M*A12RmJ&ucSm7E5->RNf8QmbNBYfv#Su^$=&5;2`&@6Uu#3FQW(`-Vx{GKDq!wO z#(U$r6<9_`65poPt1Z(m`_r%Sqy80KJ`Ucj0<8fG6SR@DFXtI3@9q!P<V(!w+NB|l zmC7^9SOn+LZ^bFV7fA9Ax8@7=cflm_yX!RTl~S=<Kde`arAoc&Y?Fw#B^!>bH=9;6 z5f1kEcDCI0t)0DYcelH(7Ph$qLcP1Q)9+`}<#L)cwA@;`L@|_9YbBIZ$p`H&B}2u; zAimgYEs{d4TJz2w)5IPLS0<Qd2_`hX%oa&MD>TlttJ7<PBfFA1b<<!IJe#E>Gn^l7 zAGy9x6p0`xtQj?nVly;}P8x+$luFW}s53VO;uC@5nP0a!$^bEt6OokDF)1F&x{VDR z%R7A_7GhPSJmWv=Q12io5wIV^7K-xVSN<t}cf>FGrPa(>2LS462e_9>cntOu2Pm1e z12w6F7_C#Cu1Yx_)2byE{je5Ngll%(v|rYB+h*=*7b+oQmeDnu4085v<Ls5#?oxd- z)mYhRS=e)z?lkd=Nm;Li*WYY*dZN_pHtKS}k2WsnEj@{RZHYiE;JY((3=;G6dWfos zbp8a)dnOoGWAzpiMp+^pG-LqHS^T<9GG1K$)@bSD9UIDhjVY1x7ZvDE8wdwSD>K+F z(M$ZjSA5HO77fMs3)K4;cOVTmNlu`{@uInb{EUDaUhCtL<g6aPc%y%QWagVc{Ce&_ z`JQ?*X+Qs6yzmgm-RPvv&0cTw@>1W1ZuS#;UDAE4I;!KoQwiKVL?Y{HAT!--k7<is zpNx52AD_%<$q=?I^bQVsD(Zfad-sC{fLV_a8*KBnA{JMB&mq-vtG7@ZH^)69<9^LR zr<=u$M&Qgr*fw+on3)XiKyB~h<Hylq*OS=&Fxc7u`0+x^?@wmEhjbi;(NnRs006&k z0s$40#)y16!f?;#q<Tgdweb-7Q!STvS6iLxR=ZeiZ=s_u!J2KN$_7pQEo)lOyo6dV z71~?9t#$#IbVr{BWnK(rj%2pGJNG7kN{xhC*;AzNuBQ^yQaC#`t0;iDyHgQqft~_- zR6_v2OTR({4Dw~}cE9#N?hSVKF79;e0k3!W=vA$QdwjOio_U>jNnAhIeQMYx(8|Z< zT!=^L<@I|LS+pfk>O+Y|{Lx0TkWZ<zG`AadO&rtD$_#>kKO9;*SST)d;>-Fw9o!O0 z_cUEBq!dhOJYC3(c|Pw%%pj=ZQb{b0i@S}4O88<;){hGh8hPbK_G=9PZ3!SJCh^fZ zRapcGYe7^NHP?rGVW>c0R5FrUYA3nmT_Ph;A@R8KGb+O*x|NY0?GoYQz{00hWo%A2 zSLp!O44`u*i9NizMv><t@Yb7gb!6n3tW7hgOa|~9rAWjoK@KBQlEa<F);~I;1ZHwo zsk7{5L#_y6<`j(u6xrxjCPzqWFIEh#lHhj)zkr_28l5$?*`lmqUSep$E=@eQ@E=)c zLr)_BqiUzxA=XXx%Gt9HjM=JN$Sh?F`leGowZ5U-hr}u{s|lQ^n9mo{Rm$k%rCc*z zET-Lea=YH)Fe2D=zwW~4@&sR#crDp*XF+Y=X~FGUgIsvYu|XOlC|*ma5Utf5a9zWS z^gGw}E#*#6b0x85QnQXF5u`+Y4?o&;b6!oWa$n9ORs+3`?&qN#_#5m$b2@XNK$lT{ zA$z)sc*DU!_o6jwcpb9Ade_@arXdhYgRqsUCns~anW|O}R#mZ5FG=3SGwbiUA7atu z5`N^?=vJ7Fx$o^jqEyYdt++4WWv-h2N<8jjh1GS5pp6qr@*L~nsKfm^qb>HrCsy&a zz90%$v*B)R+7YRYk@jlys8T1U?At`Dph6{>kccew-;^k(0j{xz?u_ByBDU24Bf#(I zO1XzGMNL~G-A1>>8|&>pok4HC%D%PGR<vpmczbh|^>dgc(Il3<4jQgykr(%B48(0y z?-%!J3?EH`$Gc)$oT%_m9^9z=?=S-N!e|dD*>ClB&W<~KvjuLmy}8*w=(IN%H`^U| z{Z>N)R&j6u?cRahTO`QUJNmHC4c>C}`Zs4E8+y6}m)V>3m2SJcvR)tE&8^O$gKX)@ zJ*@vXb(G;8mp=RQeyte1l}>;R)ass|tE&9+@$s^?>>jp{j@oxR@T%h;wU3V5?x8BQ zkB{17!)Gt*2EU;XXPC!7MFu>R?6H%AR1m?Xlj*PvA>N0|IR_GyJ@Y^5p@-#pr<01S zc07egQ3CD2QU)-C2gB$BU^%s726{O7i-mY96<+|2a0Lw*{Qf~%@!|;K2Q~oxBX#rQ zWrt_+DI{!Q6ght5G1kNx{t*n=FaU>P#~=_{{{Y_6KO{pQ;N!qF!GyJ8Cejr{12zwY zh7S6BeJi_?)FIB9T=InpZuuuViw<=ll5||G03xn~+)na8#bHHv3+b527hqnTcs#c_ zmT!UMp;%L!X1}{2#dGM7Z2%?>)?2?mT2uudI~&{x*8)ZXsmMhSJ6jY}ynGk?q55=1 zpVYw*OMJt`mt$XHEt#Kqrk<h^An>S^{hvCyBGKrM3pZOf?sVf>k^)4nSAzz~$6g|( zK3YrhQYux757uN4v#zf>DLZ?Ri{ew6pBP^A3u}Vok^Rq{EH<xh+;JC1uDk%JNR@-w z*IZrI;wiOng}lpOs&lvErhC?klJn!I{->XhKMwv=`jV3o*%#-h;N~Q)B<=#gB_xx+ zZi(}^E-u;^AKTo1yl}Uq^j;!FyP}YpIXy_rqHgr>@a~5X@|lYZd*Pur+PdrsUAEya zA1QtIp%y!TM1nJYWiIYs;1rIzJvw$_qyo)BT~&IjGFp%0-_#W%zpi6s<h+CY0@=@e z()aqj^eG^D3dCALzzBFA^pIX4_-O#<MRAsW%u4-_@y-7;zAHwcCkdUoe*PtE7JJb+ zoT%a~pMMEx<V#~Qddf%Sbv`X_hM%j12AiU^WpSArsuXcdM8{_3GoE*q7sOm)Oi*7v z;k(1PPyjGfLXTj)8oC&v!x5qc!DGs$i8)5?p-TMyKso<!IJEq(^C|E)oQ#AbA5?7h zawQT9g|Cv4SSZ{%e52l~)lSHXC&P=o`)+w}cPWfK4ChO!`pR1sdb<KC;KKgd{z5s0 ze?5%tb91rLf(WlxsdZABXxxcLvhSQwbE8;mY`)!G*jVVg@4I{MF*$A>5Qa`6Usd&! zLsdL5Z&%CtPCXKV+3?>wg&eua6Uh*u!cdZRQ-~zP`;CR;y>K$>gm>UdsqI9rF2nhH zdHZDfbeTU~Es+HlXK&$Pt(ZyX!io5Hxp1@?jm4t1ooqhjM3ZqRv>UG$Yv;=g8ygG7 zMx(g>|FQOVp^dF+zMtN;mTc`A&EBfAs;r(?SIccxS)I}B*4~!OnrZbOL6jabQBDL= zf=EPAPLxLHAQDm0g$T+-1QSdUjV{b!24(Pt3Cf8`Ovf2aFhk{F3Ue@_2);0h8Hz~- zoE%>`JH=34wpQi$ysu=-uBtsfNo>oKmX_B0vEGm8<Ny30MOvwTZN0x4i1-76ZPcFK zlU?^{uez~O%~dM7`e8nu3ptSpwif2juiyWB&i}}~|9#INbH@d2DSjmjIM9rxnTL4G z4VO3k8gM3nOF2)BhkPo?VOcF6=~Es6sBr!u5c7vpnMfs;sWrBnd0$!p3ZX=;;qwIo z@$BnPZ>?Kx<<kB@!o7$mvbl63R}T0?_=v)ZS}@{w9B^fS83g$pONPrT*b0@_-O^#e z9|5f3D__)0?nSp4&lc(%fnX$3uB+rmFqR#iQE(`j2v*XGQmO*6a5)@H27<|YMDOj^ z%yaMGptN~C{{gK{EG7Oxc^P>R=O5^1(~OnGqQRlySOW+BbanabAKDM+`FK_jRq36d z2p(MKfOzDdt|BS^#Ck%HeZ^-h!i~xA7fL9Bu*8c68s*BWzjR)Pk(Gn7Otjcch5gQ2 zJ`*ezfQ<xvxk4zN3B{w8WGtCZ*2}4KZ8Mn)`2EF(&+o^LmMI1cPP`pU!)IBq2wnqt zcsyF7GaR2J41TF<7vRS2|Eb!~bV6$#r$YPJiXicG>-B~c^Fe&+01N?8k}iiBm8n<f zxdJE`Jbv+BnJh7pU??AOf|+P4P^%^C;bJlo2!li5TCr$0DlUUPl|77{$+%(vVt>cq z^b_%<5(OAt(#>9EO5;sjGz6dw4Sc9FaP+SxN-}H3M5!)jUb;KnpjaW<$VB+bG?E3F zK4Y&oyTd#^lmx=tURz%~T+6~xubPH~<#Xi;Y&EmdY|vlID}TP^4`!peayP0%jvo^H zM2Wb<vuZiMlZ^R&*qXJ?nOjc1`(6+B;LmtN42OYF*pbKxfAXt{RdV{ncf^+vNk=oa zjcRhfkzza|vhYQ*9vcm1@xg>V3;k>?w9G$7N{~Eec0|1z4I*v?P8&8`2m)Af`5B<D z@MhrjukZm6y(aqUCIm@NA?#B6*_3bieSmsM;b4PJ#TTq*gjAZZBBKo$*2Yb6BQyfB z2<c<e6fI}c?q?uK|5c<gk-x+@q;HG18h>@qj9VQ7U>wUbh-qi?>D)at)b;e2v;RnO zwps5r7c3ruy{$4CnB&Yg0tG_B5V0e9NIdkBQa+W4go1-aE1AjgCKc^OQ>lC$ymT_t zFz@P}Ox*h{5zRx{n!ra~jK@bs=viZ+qV$0<t6d~4T}9T34R;d<ax@$$2ErkKIH=-5 zeAB#1hB5le_?&PI2*)u}=RM41_lU9*Bc%7muS;aUkJ@{BJUkos%ip(Ge$z((#;u~> z!nZ+;9s97<njwav?H8~SX~U`a1=$Z7l9tB7AYa#zuPx%>g!$?FunVZ=)rEPKLj5(T zU#$iP?)i3F1=8EU-sCD8bM4$$Dff_3i7;woKb0$r*r3PSBd_GFlDzedbNqK>$OVRN zqP?))LT!C~c~Qp+h1#epbsPO}Zv;ZRPCV5Cv1ER?F9x<7t_dS!2gM&OxN)Qrsoun> zM)(}(8ecZIhB|1bCuXY+99sw%2fx<T?vNwO6i(`EV`l*)@&YMZr04r%shR6i0Oli+ zc$Vs3{K(JoVRJ=LB1L;&$bsK`_MKnV-_`3X?H<@^t1ifHNIN`xG8Ss!SN63J+oNo+ zvX#AmG3u+AT?-zr(NWT^gDc5U1yC6iJzd%tKx&d0Y~g~CSk)wJVj4>`_6ybsus#}I zK&UEmjXt7}0w>0N^I-Y0<T#TT^a`2<FXUk~2Gk2ND^PWDi^`82QGL9k7`R4z;`SSV z@Ipj;$%ZZdQ!&zwRgYX%YX?I6C9*#LQ~54!U<JHm8<*@SG5kphR&?qu4_WQ*0`JjA zL?c<8lNQ*#Sdjzh72-L8N1lpIfbtk3T<T5H{2<Ek^GhBIj6GGkISb8*BXFPNDB?nR zc8%R`g4g)I*g|gEpqIpKXVCkCF;a-94|q;KHI`Gl>$sDQj!J}l15N|f4}|^7lbE6` z=p0Xik99m5LDGcqNPIG7qce|fsd9I}@%)@ICVM$jDK;2mFBDJ9*Q?s}MwpNot)NlV zNmp1CwS4*mu%<>z{ah);fEAqcFCqShzS~L|U!a@plrrR@Yo{`$PBxXwc1qbKZ<AT` z){2@h^pDiHFWvr;yo1afFXB$et(Dr*fOrK1(RL|Q3x#WGMAbm4(<udFol?3M4%IGC zj#O1j)N7rIQ_xItRBQ_MvbX?_Pe);x6cfZIT+?gY7`Mjv!+ifU=3G>JQtoEq5(2v0 z7xtpB-%7ou-hc?4D(b~JCm0SrZ6qgXWMb$u1<T$wskc~s?%2Q<<{6{x#%e}a-}sss z;mqwbf*FO{X)@BpJ|`3~5_Pg6_jr6=hq>^%C&IOt=N4@Ro8mkeka=F+ZH;|)^ycbB zZMw0R+6|2g<%`a-wRyWiwopl}joK%%ojo;p?XKA}iH$vS+?9H*HEnVPb%N(`4v+uc z(pY3WDt4k`n2m3B8Ggu)0O&usG7I_pXJGuFu^#<Itger>?OaSQ^LmCbAU`LOF-n>D zdj9aK*2yHOWJ&ZY%rZ7>qJR&jBjIsw^y>SKM2birGHb;$nOJXcBbGS<Z>T)KYYd;V zv|N?zJJn#Uk@mUAv2-S`IJYAMw39s$5N?NIq}x8JBeJ7<AQie*O+9azGUB4pmZI@& zx;?U-KqB>FC9QS02L`gSvDcG&D)C8JKd(_IGM?%I0OwArw&NZgi<LVriK$D+nHbIs z@pi=H*-0JE{h1Lf<6~A9)|e0PknnhjNAu1Ndd8gtqQU;9mpO)=VGGx7H~EV1X*RSE zZaKsm;#^%>m@Q)1arHOFqfyn&-x39;*}ZQ@6N{#y+1C1vxweccJX)Vw9~)HHC0JO= zRh)?3PnD#Ev~xVpgcbX`86PWC+9SS|4`wH;vvJ@^7tU%s`Pc_e@<+rR;jaS7Vb+_m z+e^5SE{l{2jF*kUj2Ux3Y_U)w|I$TwrwiAD8~*lGdB(PKXZB66Ct~3>6JxTOFd38v z=^<caNXDKf<9}kfw=qVKlWYK{o?cg6ff<fJoUZRZZAJdD3=CAO63)6byL6`v>v(s! zwY%5a<8Sv)DWl!V2d&-R@m%`OwGqD)4Y|8E)>UW#1K!35OQRmmHM9SjTzL1f7i%_H z?TNtK&r+-P0E`0)tEA~Sg$^9WTEj#JIJwhH7Mz|-m`N$rc%H5$Qtt|0CmFpQMw4D= zt>w1ec57Xj_1za3Y1^voZXdFFRm;uZh%j_?JgarE)+!cTYX@2wQ1Aaa9D@7aUuncX zk)Hq^L{rg_d=yWjb@&x6W&R#-jgmfAS{}}?EZ=)N|IquNq$A-{;b1Ke@HB!#5)H@K z4hp4kB;DEtveYQ&)A2~iABwVc6^fPGU}JOF{<^%=-y6QcHWA<l1I3%+UVo>&6OFL+ z<w(hZ)*g#SfVL)*O@KW42s@*m=ee0(WXa!=nMnAJh$=sWn{3{OQ#T-0gSZ{5@_o_4 zW(Jb1y?bb7&(@#sUJCh`6ATp*U6O?`8hT$6CJfa^9`_sLuXD0{rM58WR<3qWI<j8L zUS?z^k%{L7=ir4iQ_M9aPW{Y^dgc_n9Jfhqbn3`O<tE(R_PLRkdPNTNE@;lJ%%};t zvtpmBqd+jxto>3QZB<%{V8Gth=eey>GehbUPS3bi^~OzZRod|&hNRi||NHy@()*|0 zZ;%Wg>XpFoqJdi`PTskXF=>Y35w$QKc^UaOkH<Xbc*uKsR$teZvv!~&1i)+@yH{%m z?kjnznvvZ|g@?Np-VNu&yOGfwUc8O$h3#)^8xk|~>R`>iI+m9za<HbHW6oAS{`ojj z?S}UvTan$cRpFhHEB}3b6aOKYu+>{p@}vjDy2#)f+i-*rU}+KP;F4iUxToF3@KS)M zPTq%Fb9v4_CdjEq#MXf-Jog2Xt$L;g0YGIvpABRizEt>);Pd67GO=tS>O5D4(M2#% z2421;v2YMF?XP7UjdX;d{$#ZTt|}67P<518ExM87zDn&~>ZOI7dVQa7d>7=4WzOAs z$hwM@jlxE*h&!)g5fM{_{K?q)<TW2~&FNpc&fUlVmurb$BiEZe|EAaaSX(W96<1$x z`t_Y_+DP(Y`>&ltw6-r~zmlCq1bWdQWRiM~053;Hp0}Q9N(-X$x0JY?QmpW=(uITG z=*%jw?Nu*y%!Mt17xj22(>uH@?ypz+dj21xqlOt{Ob;?WFVD^kR0=-|{DiBjcyW~8 zT~`;VqE_K0<d_PGayW3&+ff-fk4eoKL`@HiE-f-$pKIl`u8W65gEqzZEmdTM3hoTZ z`V_sGm;5=2NF0G0Dyz%1+Eo3Gk*|H^0>4)$(Rx%J$5b;M%B1p1kxi2MRAv{cwpIdh zEN9iDh<ON4Q7Uk=woJyHN3=p&>1E`}FOYGNai;h69cA}+9-({}MPFr@Va>RuYZ|T| zMy~uadc{Mby%dw{O|E5>$x%^KXXz`Ot1@_9(Ea%KzH<zltAFasA6ymHcznrE)OXVE zNqr~n7YL#t1*L|f{K~uUtT8f(C+r<E4u4zZf7zpXh)q$*CrFpHO03QU4P&E?_Hb}~ zjP2@B^wZ0tTzzP#S_f@$-N;z;gy9X4YcV>euk~ZaibW8Uc9twA;qeIo-I`o>hU?_2 z3AL4ApbUlj24$VeGgVA=J*oB+f`B1Qw?sbWZkM-oyF8<XPc}PzrCNp(-zj>zDE2hQ zVO^3jrwtc|27sg0=~Bf^VQd4?ml8f!Eb<L)q?)wzp?DOhTPh`iFu?+Q&%S3*%ED+> z#Ki>>&&l-l$zvw@C<ZQuUX^r@Znp{U$>}TWaSqHP0A5zMaJ;_~zb<ctIABr~&0_bL z941|DkrA0uq}l0mF~qn-y77>hd#&x}q${|6x7rpJRNU<vh!TXfAWPLW{zD9eQ{{6l zu7A_Jk`(85@lviUikg<QMHwAwo1hs(-nJe?SO=y{|IC{G3=@jEdET~rq>^p1noVEX zUUvz0YY8@e+?Mg!mU({bY9cbq`aQXzjf$ixS8t7OON`%KYFsZfPd=y@SljE%tjm4W z!8zYuuNiYKoq=w;m1zFUwthTV6z*1g5laA%mF3mNh1uoR>w=1hp<#F!9)x<^f!*oX zsuCCkZWWFOC<+0Fe!;MqH(~*!T_3J5A~&(FuIOL0VsXP2hOLzaOIy@rVHxQ~P?j0= zOR~?h)I8$qa(6JHiGde<1dGCNczwZIe{lWDk}GplO1drq^Bgw|ue_8%Ws&v5&V4;* zJjg;CP>*5op8CbU`|83P?yJa!a|q@J)d=e|W;nf<{Kd?%_vegwkyHh3Kn2V)v9jO= z#;Q&Ai`KEWdWz+fhdVrWPu$~UlvNcwrb5Jm+5*##xhF_CSV+cw`t3{{pOmr5ibeK` zT%To#QHN$~>~=Um#s)l&UT1Yv9a*rUk1m=3%cOZy$(uvOqsR_n35NlHK*{v;C_WgB z59xk?F%#Du)xv;b*x)?hNARbSa}(l=>-$UFPmbMUT>4tnOe|okKizWs=U92L{_AK@ z(1u<rK<Z2^t>d!Lo5y`AnkH+PlD3W?UQL2%>kc+{T50?jtYHf)tAxmb1(P=Gc6*2+ z(Sx;EBmgkj-D2DdL_oLM;WfBuDl(FPrC2Fum2j+XlnOf~Jr)G}C^062q(yK--MO|e zvSzYS86YC`(qLy2(JK#1UR21%7{iGuJ{^n9LK0aLb<q-uc*T^h-xAv)ez1Mywi;ti z;<UudAj>fuCfG)eAG88&P(4WmB6|yqlPt5c2}3W_1rJIcWuJWE44g;woaWb&<r6VR zKiP~>S_<@=Vak`3hb%o>sG+arS$`j&r{u^G+0pYo5eE1jKP_mV2s{6X@5-+O5K%@i zW+2ADtZ`gJWVvtIt7VMp7+D$lx&q@X$%G@)SZqpMNZdYujsaqvZWo1_IVARrIb!XO zx!>Zme?USQ(THaj9jyd=i343-)|?3%_n}o|6DTU~z6E`fc3vCzpZ*WBqvWnf9Vd}$ zt)CE7*NKN5RqPe2{&K1oIJkT>!;SF;!>LSdClhge(JV4>h}4sjShaPuUauAMDZ*Yt zU@jbsv@-Qp4Zbg@SKBV8oxN<-@r4uTm7%KOwN8d(@WDCpcs`oW=W0Z9pym2~(QqQ3 zf)Feb#d%`ddEtHIyrHL}V$EV7T0+!?O=kr{h?S>Le)NS}5+D2{=t*$4<1-<0YrW<2 z%d`GRNM7BokUZ8&7NaQ?u~f2F#o~VIv~Qorchvg3t5UYmOhglbNHrV?I<?JKDvtcC z`~1-R26_Is#S`(7x-3d%1U^k9)!$v2L^4WkB9%<FCY7-ZAE^wq<hkq0L~4axJE`l! z5P1KsH^dl1`ciYVVg-@Jq)`2czAtmzFxQb+@JHB57#d4+&R(T})gv7bB~Q3{@leY3 zz{?i(IVVC}hcTp3alUoCp<FbT@HtnVI7ke~DHa_k90|njj^j(DqPdW2>b`h{y-s|T zVvAEE1+!C)W6Z@{6nN;B`OE0X8pr-LDk2w60$90AMVrZuR4e)3#@CbhA9FqSBoXFr zU(ZBWu`+VCfw|rb!QLb9;LidzJ$*%Uzf2w>TlQ7D1m_!Lh807jhvfN@<~p^C1mYa; zyxlooKmX-$z#9qhX%B~Od4}Fl?^(vSA{<`7CB9L1O=+}Q#(8GO!X3-honfM1jTIF^ z+KT!kLa&VH8-Ls6IybfwxuR@T^81+D%Imw&EK#5Y#_Bv$#S9Nw5I%e*HE|y4^64(4 zDrwE;x-$QN)<srFQ6-34(Gmkm-L&Lm>i2ioMf)t!ZzTpm`ghV7(!<kjp1Kkd+2$VK zaN!|=Om-c#5Yi6vb+M$&VXsHq9uwkrj3yD5F4=NKNk~}FY__08lp2>3RusVoZ~-|# z#R(|$%;4COrbJR=i8cgbcoW$jgusivVIcRGb3KRPVPt*qKnCTo|3MjeZ((LYy2NeQ zvkf0087ji^yrlx$d_n9ka9%L(jrUk^vK}wGl2I%KB&&sej!4lm<mN?3lqi6rwn-ae zHHN9!dE|jeG#LC6-6H4J-Wy3>S}b}|OoT1d8n6-BT6Pni-jw~B_FOOEUDf4@2bI+n z_$eZUsS3k<dBtWrQiLQEtvXp$8&uG2)gjjpB}xo~6hVj_Ax3CxRDe6jCz3f&`sSuQ z$!Vdv<X|OzaIG&+6*tK`j2!71P+v_RXNr@IqkvpU`N}>^8gkvbNo&#O6kTz*yh-0) zdyi?1K#H-Q$bgZU3W?2_llEzy4Ud;RQ_i4d`c#^CyDVljTRN(XDNVO;%=71E1l*H| zDZMH#a@QD%A^@!r5iLr-<U0fmMDNI#F_Gh)=D$QcbKvIvKu(k&*?+iK@Gf6pTg$W` zxwc%Et0Or~UEP+etDCFq_v5Q`Z{Gi@)ARlU&p+rtHZHagF?h12tjcae3PX`lz7dqA zkonl{T-^zgNh#_-=@!@Hoj@VUkr-76y*D}J{5QUG?#<9GboczeVz!gWfZ5AovR2OZ z5i=&R!@l5^_+QZ!g(y$Px?W%Pgu|9A-K35$x#b`^2!|xp+9M$xWNCaRf)OIut)qCg zz}DaN-7|O*1lMdb4R{!Hk5u4uAz)crlqXG)JSWgChJ{GU;4n<c7k~rv0=k3}TLGIx z<1kms9X9lvB+Drxa>r;2N9M_SX0kDt3x)DJFx2yP{6c!un&jnHW4%G{tzP@Q9o9aH zPZn>en3zRD`7!<A{R*?5;AaJBFy6Sdv^!bpWISmz;62n7)-fP5qf;>wS)1-bc{iPh z!w=?+1bRP8Khwo7bpRLGj|?784fa*Kv>U2tOYOjDQ(LJ!c;mDT{cdP=Tpe?4$3?_v zZAR|U9216*U2NxnM2#8XItWRl;{_pq>j9QUf3D9G<?ikSf+D?1={~x7iQu5sTEUcv zdMghE6b)P+<4I&|6MGW46XayQ$dM-o+4=TkQg^dg1Q_WlqNyf1-fy#~&1w&T#Xtx5 z4BIGHelJnA%m^VSMb><>L`e106Aqe@aXnU$dd!iJ5<?Ay`>oX|op;`Q4jL`qscI<h zZzi(AP-?9c#*fqr08Mr`<Sr)3P+*?zB)SlH)%#KEHO<+!>AtNHM_p0AO(|qM9ClBA z=~%XtOl9JwsES82<V}~0<`VC5Dd_9z|8$J#5+OKPkBH9rsmB8`1->*;u$uV@k_2=` zQkKL1JrAk0yqEm8^7$VT87Wb7=+8eugU4$cvXiZJI2+1@Lh3an7HJq^+9azAwbJqq z>WWBMKc`z)N1<Fo;2NY|$(7`LAx_VR)hoUuC$~b0T&T^JGQ8t^<D+~pky{rdmRQXM z<7aX>>g+UzOT?OG8q4k_pd`70tXv|GMxF+qSofL0Z}#+f+j}EZ*d#yqKI8av_jP1P z%uYKI6@Jc#+E6#m2X17*2gb_{=mf1A{S$HjbIJKmu=h<tp6xZY>$Vu$ZoXpHgPY>) zXBD-}PKAb2Sl^~-vrJGP$&X3KF5{K^;(iM*@mo(sGI357HZ$EoLCour&DrbG2Mscy z19w0Be1pj`81xQ^i|y3TOkAw@PuP+%mF?9#o9DEbpPk70ri9K`O?<5>+xUJpw)eZr z7Vq`y65W8PhC3Sq7Z`;nRhdbe9;oIHs0!12;~-asfBE?kdHv{ltKF{Flv6*aX0XiQ zsL@?gy<M|TttMY_k6;jc-fp+5x$BC`+G%ir<NQRL{o~$eu<J~rw2*3ywa4}Vg2K~s z^UHfTfw=(lw#8-T+56(i?Y|^}A^XbYVGmxa>XEi1h<!%?$vv8t@^zjrLChsRKf|~5 zC!T*GE26Q0ui!5f6Y=r_;R>K_p>CRA{c5Zu&W^=95$j~j`*0yaTwpO>SeYHiF-Maa zbOX@iWa_d~^Ry9Ag!(0aeJa*$kPj#avTQ&)rk4+ra-3pGMP_|Al9U};3$Yi6RW%l` zZ=?kMlG>=pV?yl^O$ZmPd3Z|(YH9w9o5k=qimYJPP<SWj)cg$W_j+?O$hUi%=|{{l zXq`(>zl2Fgi0H>_hOnt6)I|?^^H_qOPQ)OZpewTx|7jrAO!l&g9ws36uOct_XZ@e* zVk21(yRlFqE;gNbA*A4<3F{l>J54v^e!g^lzI?f-?}_8{cwZq=JR+vyDN)ehz&Gjf z&M&S0M6sI9-XNkxzSelC2SKGhzIr7S^N2ke!y;(S@sI&NGklrae_O7+-A}uxmscdI z%gzk4wcY_!*!5HzYlX7osT4ZRvYBi4xfp#gm`cc+HE4HW1b_WHxOH(_%Q}3qmc8n9 zSQcVdA{<SDI4BaX5Di<~<jv#H9Wn}0q{M8*SoFOA5?SfL^ZaYP5zfyC0V1l1>lLhn z#2v_@yu2y~p0D@^zJOzd%sg3nLIeXxxfN_*d^j5v!f=cNEZo6|t5FZr<q4EPnvGOt zl@ktc6yyE?_74cVf=Rd~lf`7l7vCuXH1tJ6k$5IoeN`n+CO|wvsa+nX!VzXwR@gzk zzmosp?%Zt22?u)+RKk=Q@)MQeIPqYxNDO#B7R=X9*DBF?E*}Ub!r^Sd=j3xlKdil~ z=84rfBiN>-_64K@FRHZPf?Mtp+;T5i4dMBjThPG<V)WAZiTP#P{9pkzq8PsT)r8>M z(1pS4>FQrugD_-bp;S5$c8KnYP-DL{Dmlc|$QuGD0_ju;_WiEkrxHHD_r=@x^IERj z$T!`iVp_O8gZ^;X4;CX3BFrb*%r~mJ+Vgf{vsT+Qa@-_`x6aTmQ~L43@`KrXl2dPW z1#Wq>6s#<**g&GlVS#PHAwOU7vRHEW6DcOQ2RWUE$NNYYA8;`5cz}V~3>K3jli|m@ z9JZ{ZTm2!nZu&zsn1y?^6U#XCdLZ0I{btxm-~AbV_e=WjXOh!*Zb9N(w9(JtXrvcS zbkE&hwCF*xEg57D`2n6R&65b^$%^zRaVeMsef|IuOqCF<ss0#!nGQ`lHk77g;Vk8& zN-)Z4zHm^!6CQ-sdeHkK70Xlzy-L?pv1l+GipDGMekFUmr?VB6t;D0DY%m&2)zfR` zSS1rn4TuM6>3!;2=SJTmu_*xE1%cV#!^6a`j1Eq(i?(ffwpCyY>|BYR&h_xmAvXI) z7at0F1b^`AeCzpk_J6a##lrhkP`{`EKZG@w>!JxgeS)rt+Cb7z4#=dEImOF|A|X<o z%tGvdKo@^BGe0-=wSOLo5`vRq^^NC!WhWFyf2?i!V}WiRs<jN!I4NHs)37}CE}>J~ zByOw@LwUrXd}wIp!Xc;R&&SCbka6NpG-CfrJaQFJrDG}(jE)Av{MhIh2+Q<`f`xwF zeOv9WSIz=~i}IRPBF_9Oo=K4kB^(#IVvKnm^M{C81Cs)77qQz-BZ6nd433sxv$9sU zW?;1%8~n^VmpI>15JMgrRK-`zo?^h2GTyxJ|8IN&ZN}SgVS8Hu5nqrs3rplfOmHGQ z3kTsN>l?*O3GjPpj_QCbwhuWtp4rQM0ht@hB0>!(qmXg<rE>n)b}64u_4ZqV;Hct< zR4C%dmK=$>wLl<WDH6=&9t1<_K%kyWTm4>lv(|`2b~XpY((YQ&SLxP$zEmYyAS^B3 z8f5B0|GxJ{J}WD4HlOyVlf8!1>^Hi;a4FXf406SjKrElFMSAV6M50vfY{1jotZY|_ zkxF62_QlfaB=*r-rdBVoVw=6Pqt`2sY$CL1am>stOZ2KtDidV`d$UAB3Nzc%OylZ} z6%P(KkGBCYZ>x~X_j0kVXfji*w${!MpP#*Y{_^c>RXYk;e|7e{Q{RHhuB^h_#aMh0 z6~lV8)pVO~-fcG9&sFtx1(gyx$paUt)7SnmR!=o`r-cj+!DKvE#UygAfij$pDms&X z7o&Y~wHZnIT7hgK8)y*$tTuu4UKa9=`W7ITSA}}L-)K1fO#Esso{2_OOr#X|Bm!5m z-HvBQ(dJh3`cKBmwLBrYEEb7OLYpL0p2pEHut!;rLJwgUeNCF(sCCU@O~&YXnlNjF zE&G7}x~O2KOsP#tEpr90MJ&-TC(|#t-8X%EOd&%Mh$6kkPJ2IeNat;RgopbN;W#Pf z*AneDF0)6D<UZcMa?tIEo~!7<NUT-{;`OGgw0a+91DAexzXgl^Eoi(b`jtl-GJ|PQ zEQ2VPtDq&>$FW0m_pe=plBosjgwZIRSCMura_sK!AG=#eq}|v{Z0;j6Y%5=p?C8g2 zQy0DB+&$M?#Lp9Z?&;u2RgPixIgYg2k)-=pG>m;KE4kK>H*C-K$q-CU-vi-|6i#sl z42#!9xs5V9iEO<eupH6~-qw}p42l2OPp_3>M+^r@(XLRn?}?JzFqG#XqdIrwOtPSj zzhjM4#f^$n-y8Gve~fl~l4x)5S|AsB+;HBSd})hBvaASu|8@3q#5$u1KE7$;c#L0v z#B7+jiBTCN+Ld8il^d&zqb6~->y^rA|Mqc(4kc}p^F)>No0?f3aYc$Exm8)K@HeX5 z{Q&wU(--8k3h6J)I*Q%TeK9+P<4xKVx^-uusFSQ*0dQ;DFwOERO!ji0BGDx=7d_O0 zrvVd1{X_}%lZe}RNvX-9%Hc`JT2FSScq-M#;rK@FTwM`W?{`b>RH|AoD-SfQDemOq zewUQqWqX`V&b_Xrcsz{<#wz*`FXY=~PPw{(HnGx}+{H#EN?WiUdA?>1`qi}^PG|g7 zHa3KxDb^s_MCa!uw0p@WZ1UO`$2>P<@mj6?@Q8wQu2m}fPd9DP=Bd9}Y9+3&t}x$< zuRbh}w&)H|NdRpy)y8nW$y<)9fBU^BUP_0o=El*{#;6-gm)K<Co8+4%lKIHF8*<|0 zZ$rME1Z*H<4c;Q`cAwLtAA;EV3QYs)O7k}?jGOgzbzV1QNiVT9ZWa>yzq>tk30?EJ zHPfn6ZcwV*8EIH7dbwe}{;n2zXX=6|MD#Q5TC1Ft1{-x%)Xj_K0!|(8`ls8)ngx$* z3f!{6XL#UN#51+T!-|iNRn&?%-4myxP#E_{dsfaHzKVnMV;G6qu_(|5`H|}wUGe+l zoFz}9Y=LMTLQeRN=Jt0)P)90=D&)-B8B`J2WF(q;=81}cnv{oKY`*tA&!i%RIR~2i zmF-g%?!^IPrw_^Pl|DG%I|(}xl~J)ww^NCQGZi<$hWOU?jdHF}y|sR^vl(ZF3Dl~A zKp~fJpC)3br9_nMSv_^dRuS$8oj@O;Wh)ek7K?#|)w=%fo_Z^75t+%f<qH$Daa&Hp z(*&J2)}MzD@K9+Vf)<n9?anB+WA_pAVmBmDnn!SG`>x*F$7nr4#?nn+8N3MouiMFD zKeHD<vu2v3YHBkzs)CL0^TO&UfdipnT17If5vI|x{+46OTW5_b@;OFPK2{ytLRr`R z5RyF(TZQN;(=Ae1;Dr<u_I1DzHpr96?cAwyqrWqADjqSJAO9xv<3Hyfeh;h2zvcON z$@cIc%if|%-Jnn+{o1vfJ$FwhV<W|yEv#<@c1#Q>5Wtyp7k{E2utvZqVFe#qUw>mI zzqAZ3%DrXuDNHWErykiHf6N;auY6;9_o7+Cfs@(1d5T36iEKQ66vJc^$%cc4dM8)t zHS&J9Dzq_HH5AL1YD6)|vgKqbY?H3x>Qy)y3qnDVPQ(DkB;4$lo8DR@*H||me(p~f zYMo{&p<3>nV2bFWu>GIi6ep!BUz`$&nQFQXtT!=#AX_iQQ`PlCJZv3?<H>PxRZ4Z7 zLR?)*S;=UK99C&c9$l=hxy7=2<tD=MR3#Tnl$txL=@MTZjtNMDJ>vbp;63;L59|@Y z4IT@B`~xgbFe`tlKC>Q+{dS2rv$2SsyV{Gy2sf`;$Lduwad2{S<+nEv{-JjeO9!s@ zuJ!_HbuqfIj)$>UtZ{s7<wh3=6d~i^gPjZi({F1$mGF&?7ie76%<72jMe~xaagr_u zQFazu8UgX)p)Llq757lUTjlNT^KJKhYfA-HUO7F#WmpvlN9AngRHaTU{Vn{ZL^)h+ z^^|XzjZn7u9n4y5_Vq_P&Q_!pvzcGhwchOE2;5^D;sqtp1KCx(H@maERZT(9O&;E7 zlTCVJ=QBV}*(}))#x%s!^3ojZ+Sf$+{_BislGjgW(464LjTB9%{177;@pSB9taW%) zHKE31vSO?*E-h#+=ZQF5;rm-976{|Tie~=N)cmltyvdIfW0kNLV8FX<_KuEJsN$>n zl3UO}Cu0761&6~vSpYH#e=)3zJ{@^)A$gAm!)*R6eb$cE-J|k$)w+l#95563GFhZh zFtZM>)vK3BDsohIs!p;!Xvd?8H6NtK`@LK)epQZ&D4iW)R2-h?UuRx-w@RgwV)@kf z#Kf9?fv;0+)L(nD(i4+@FuefRv)qb>>#Vq5qftzy$7NP)<LJEBL&QotJAA8?PR&YM z;WlpFOVaXQg^LmnRCHUJa)v*<Xr5K$-C(Pd%Ov}QelnA*Y<XWKqVKd%e}@0>Jf)Ji z<YKZZwo0WuHc!4CH&5>CTrN#A#Z)RD5+fVPgYi0V_Pz;vPoko+c*;tN8&~@$<+VHn zuswOL4Y{mP(*Rw_(Zn2c?T?bI-`8&l!<LU+tP*0J)mw-6(e=kVvJf#~`upRrOui`S zgGpqXTts6`++WRhX1>P$DG@k7Mg}(V=sz>EiCJ17--EJZNmo|Cpc&>_H*k4LnZJ8u zo(m-}>a)T6@ZEW~%6#Yzy=h|fdPBnK<(;Giq$&0Kl}Drx!s|;}_gpuXXYY&p+jHy$ zS#L1w9t?X@=Yzq9d_~@w{&_d3+Z*+f{3%Y;M`@?L<ldkwA`6$0g@r3i(7WhU-xF7& z0O%NE*f7LK3*thD&ohngElWN+`StSeF(0oi$mn&rbcxDJvW8OWlGhknZ4qQOeg(z> zammkcBQ81X<{R%l`eZUZ2xb~jJNA(wIohOpdL3?(FSbEVO;%R4J#ZRJv*I;-AYQX2 z`>}SbVT0D8Pu}&TbvM)QMZ&|7&mD$qp}u>NNLT~^Vd^67ZlvF&y^W!pZutNlM~Gy{ zte@Tt)nt-iq%Tr!PJp*dY%P%N3i97j_W(>c_7m(W_vggUrwKcr&SAduuGR*TQoRr< zG|S<wT00QPt`FmtWO=ugDyO%5nPAZSupEb@2ZES*xiQ$>a(CZ*GTmgkm|QDhc-Y$1 z?X{-L{g;1}l5NW%(PkFEBB)9e=sdBpP)p1n^@F2QYAQI!-=L2B-3?#Z$8L^o0h1W7 zx7$wGDJFY?%z8SMspO*@iHhU=-EDEJ?)H%{?kl89`FPpStGAecYq@SA5hvo01Bqg< zZ1%ti`pW@&SeW*Tk_aw*Z1rQoUq$}=0gMq0w;6+CUGwkz2`la<3Ncm9hI)W9Jaz>C zYt=19VugeS&QWb=!qK360r3US7siornZ1A)PWHIRl*4kmY?jPL3CqT^h_zq=s~GG{ zD>_sO@!T%9cZPyRP9l{@f)FebCJ~MYu#812t(`WB&9N!NDIlojWMp%M$0Zpd>jv6k zA>6OFcdig2wH)dL!+Xl={yVJc<U&|n74V9Ay3Tw0Q*}=)?0gyXHSD3H1eRcYRi0SS zeS6es94TKfe$?L_9=N;K=@?avuE@f0<i2rVxo?i@E(xi(RZp!EHb=Xe-(&97FIct2 z3W0RPUV3Xal>}Y^+Q0Nf(t|$yAwst>jM)>7o!%PTE#_7gwskgqW16&tY`c5j%LjtQ z4`zegr5a`vb{AY_ZcCn%N!2?(bvJJd>YxF|va%n^2I$SmQSN1n@3}?eL?4Zv>1t#2 zx}y%cy`J|!2gmjo+CwaP7<4E%>kh^qbaT8*I;u?Elj4l*AEB7hcNnNq#{*jeWvp-D zl=S|Ecq&JO+9nQUL?uL`^DV~5X3Z)I|AUMZEfWc5?)$=A_*l!!-)Q1BEeV6gNMgKz zWD(rh?LAr5;%Vb?PRGwR0uwaS6q)2RG4#=2(o#+ZcYy%aWv%nVk$!WYu}}18JTp1k zJBjub_=NU;N~?ALK;3FxJpv}RKT~{~q-OU>Q#R^2DT))3Pcod)1FE84vKq594rg-T z-4$;^g~$(GBK;31J}Wo1Vdi|i{~xePXxZeG_W*T?fhzZ5=F!IsFAg_rwz(5>&rSUG zmmbf`0{&3xa-c;l3EwDIwMY7ZBzPI8;MI3#N%ktM*ys%j#G$VRTqH~Zpmc`AUc)Z_ zy7bI`6W(i<5Jz)r$j6+;_>gQbsI!)*)Z7bS`E|R|>1cOH?~Ol3D)opbcFZC`l|b(i zTl*L;Jwz<w&*P3fP$Hz_C6}beI|<m}!L2F+%QlWluVM$cNSM+pzG{otgkgCcrz5UT z{VL)7FFTzsG?SadqP5}5>E5%GcD-Gy=rLM#;~CN)%ALI`4l`L-#;WvD6<x5Sqmq}R zV)!<&g@?LEn%)~V!pl15A}18e?UN2TD_~ZglXkf<th?v^#@oiudcV(sN}*8Ugnoa0 zr*W;H8*GNG9UrV3k_UtoN8*;A5nK<mK@ugAxIxwjJ)o_A+BwWr*Q=>&G|IpAYUXf? zD25X+iz#Qf&}vlHB`w=}rO_(v%9s<~-IV>1vWdQUj0Z@Xr``S1-^SN^4Rjo9wj!F? zo)1eM)u*bJa|SOyEY`vCcry)$BF32Y!1VDK5`p2J?qzakGYqxMcg8ylsSz1GZaTVH zP#|8Rl$msO8(N6h-Kh=_BZL<1!|Oh8SO6{6PF>nB>yRn;cO^3a@$95v-Tvj94w%7_ zrh9)v2kD((B{E!Y3@doq=R+ac$`^;7>X2CNVYM?X=C`V?Tf;yF+iisqDg&h8^PN?< znrp4jpiwF{2A$SgbF1p)ZjFw{&8X3J4T5?79<q`x<3u8V=a4vvO*g*}wEtM*Cir`@ z#5h@C4y%78vu=3WTMMp5%SAkzRMqFl-x+R(s<E~8`o??D`Z+G!nSpN|L(Bjo>_{RT zD|J(qR18;lpmMrJIwL0Vw5>;^#5j{f$_B0^{OdPSng9~OFWs`Z%W~>Kl@kmPs<kBc z;(=(j5~FiBn<v?OtX~z9@l+|^t=1D`i*&a!3J<)V+otq^PUb`3$Q(8PYfzYvHOdRb zhL&qIh6B@9d{hpmf}?UgZf*0z+Kzvl47uxpfNF)3&~t@UD-dwkL&?dwm|TxY&5vCX z$0L6qyY5Iw%UH!vT%R;SJ0!o}Q3Y#rQkLP9@k-<*_BikAWBSf|AcSM=y<`x;%_5GM zC!|B4*u|k!R`m?DFS5wXE+h=%vfH*!2W4Et+pUvgtENJILH~dXlFZVlwOu<X=Zk(K zi(_eU+7dT%x!A6?WaHWz@6Ycslh6DU@ZeF;ze1hH(k=E+<M{iDzVCAHk$}GfxA6Gs z^1bm%k{}CjvTzSf=q;q?PsWUst55BJBb(V;->a_$gX{I3_C~9<(cY=Ag#ag<_LZky zdA`vu=M&MOKM_yv4C@JkYl1Nz;Y5A7lZ+?)!Du31Zf_tn<HAp*OWm$h$s{8|A7qfh zNHSA#y4hSalL(@ifC33Yx*1$g=aP{C)-dd0fk-l!UWbU3j{?E*_%V5Q(4xg0$1j}^ zeTqafNmP}@Rk3ejJVbZm4j0jxCiuP2$E*>ac|l95dm{G9B~aQ7T$DHWp)_M5W-VfS zHbH6JGBmMYiq}czD9a+5k%+<72roWSMLn*cc}p5!i(S=JOr!YWt7BR7K9jfwF_B_P z<40^wF=V)XYV;!zk$>X(hn@!aPr6_Kt{621HW2}v@cTz9pqCGA(tb$tT7EIQnbYMA z?xy_eBP8dsZ$8%-07S4Vnh%?l`L=+0matvK%B5DNna<}KTjgdZ|IU-oG|TN`IlsSl zQZLwW*T&*mJkOC7AyrZG?L}g~dNCff&i(#KJe^Nx(;%l3ho`Z8N(lQ?`4|L>@o*-e z&%`p3(B;|d!$dCA$tLT$Siq|Btwgp|U*Fny0+B?qy18?4v9nn%Cdex5zC7*M5<ztw z3TM;hY`sz-U1=D0&}^YnuXeKW(erq`UT){(scgB@+3&mQd?6{0hGZchieS_%ghGX4 zE)rCOaDTtE-p)j7M^%6UW)CrYsKz9Slsx&pOM&j??qf0G&N8e(!`vh^QDl`jM;RZ8 zQ8yoHTePv?ON8VN8@aZWF6*);1CA&ML{ml`E3(uB@o8cD8I6rt3x$Fwscdv;(*R09 zUdw}6zws+f3B39ni6fCAN_>e&ko^)RgHOssur70gaSGy5o(xb&_EHm*5%ff4%@8sY z87{MAe3V~YvC|c_in0Q2Hg-zca--78mr*3j8fxx+AwegH?yIBM&0M{^ez5%#7m0{+ zh}29UBQHyN2G9Mu#4G52*Jcz<DL4Qov8seL38xa_O~b>>hJm&@e=-uKf$1dyCA~wD z1jW6q<)JlXy$Wb{qbXyVzlP=56Hw02gbQ+BIqR3L8+guOg3a-Qhf?L9`^q|*2I;&P z+zx;AnUyTNEcH~H2Rew8lZZ}jN)^#ttd5Ib!V0gjbV|ilPGmiBu_7?*erAq~J)5<Q zb{l{?cU$ZA0(+1<MOV5k2qV!W*+lJU5`sWTDGSVC;&i^@8TILFO;k|;Sz;U159_|c z3xp6O0IRcQdtaFD`ZbZI+C9VWV{Aw!hSmpeMsj`_JA>3mTZG4#BtU0UjEx9m@Egea zf|8`3DM5I4+(D;mAC8Z}iXA97%7Ig`WiL$CU9xGAO{GJ&fMb@=af5V))|1(6a@3NL z*C{>I(e0aKQ3qdpE4)`76MwBbmnC|9YTha0UscD&C&;or{y>iplOsi9K9CHsn@G?H zRPA@vRHnrq3ponB8lLE2aJh<B>L01xsmi%|FY~9<At&HC!IUw9N}WB-cl;G!jPJ>` zNp^XTp=VEX1tLJ>Ksz~c2=kEvBT+^e#wF^vBjZbC{4ir$A{Fn;O!49ky=|E=7qyw{ zvf*7@bAdpbOTPw^N9Pz$3!z=O5)u!6_1ikcf=JQ&;^Jd5zhjkweNk*qz}lCQ%ckyt zKEhEi*VWU1!WzdN#s?D$Tn>avT%F*J!DB6fAo2=zQ|^oe*X!?DaXD+mxw5X^y7#|h zJcXY*8qEAPlv27XGSzTQvIdw{S+-!gq%3FVhI0d1sht-iaMxyyRE}EXMvf4g-L~9O zi=YHqER8+E*m!NMykW6uij002mxg?281j_8WCO}I0qoM}4h^aPdXI*Ai|>X`;cRej z4_^?3No6$tSx#^V!ag^&d+za}drUK@#`uiHib^~ye|L-ZA|n`g>&@0uePp1$tf<o? zpKFRe%j{`4SQO8VeQIokV0plFEvv0}TpnA`xOFx*2*JgxGuhavu{;f{mjT&OcuR@$ zYLcRrI8!;m`Z7M9x3b*pb0<DDu@~LcX9Zn(Qre`waFdN|WKZfyt?&5RCS{Ln!Wh?8 zqdZ;Fkr<4oJZ|clu7o2aPK38{4N21`HMWYAxCcxf8U-`CCojNpOTKInYl7JpybH!q zO9xqNvx=;O_7e|o$Jx&fj!G<}X!<j_j7%Md$J^NhF(Y*7&3xS5I@@($7Td>S$8!Yq z`TCj0!}NAkKwy0*?Kquo4Ng^Tf6L!}wZ?gzHF!g%#LjX^uBtGvehW!Lb`HtCE`sig z{JU*u^A;ukS$6u4O2`5!f{RQP8LHalV>h^K<Q0#*$Ml@=vfK<)%9FLn#I7NgLJ&&$ z`+`$)pI@xATzMp@4H<SHnHpJI+kmux#LS)Vo;jbMG@qC)tksfZR`TSU7{uT8M9`t* zc>TbOc^`UL$RGV6y1F#;cphH688T5BTkK=_?N*=6EzQ`=Prb_)>X-fG@q>rZqhpSG zs*;DS@|)_d@*K7|RG_sT8V22l2}HRn4@29nMnfO;Cgn}DiNd?L>7s!jwl;qxXE)dN zS!XS|lJZ~gv|P{HY02sABAl$&Z_aM&Iq&}EOl#&#=7abx&F}(F^#m_0W9Uf~u}cFH zwY>u2%b6wFgh=QdAZ6y$RROMIzrxkc@#rcE7t`Z$uXZA_SfsVybkAF)eCRftU0*cP za?hLVtuUfGpODaC@<}AxQZz$7(sKsjn1XOG5X_#hXPq1b{ITwNHcOO1EF8!=*|m#o z08K8(r`hQbLqR@VKbN^9`_%-m64c}L)^<T`^!yw<*m#|}H*-zx=}1IYX?O+AH*$`w zr-Vg6lA~ktPt`xe;a9SOtmFN2*d#=j!sg06y_4U1yg!LQQN$owvA=#QY^f3oVUJUJ zAr8S{Wp;IILJu%D+{-4y-p}U3qORLy*3%h{4Dv{PH_D-RL5K5G$ldkY!7L(?gBBBu z0VSDnrxtG5#bw(X6d5peSjz4!-&1`kzTgle1bYnaxNVaONZ^EykGX4u5i<)}fS^m~ zQnzg`sxS^}K;yjjHwUy{g3l0E?J-RF<Dg5MT98R#Q2Y%LmO$XB!==O?PJo!-0jMNC z-0WLs?9Acyj(h$<VrP^@%pyZg5cOi(Cf3c^n2n=<aeg9_dO4RfLEf9Q#vYk->*d<( zHU35k{oL&A?slvT`JaoE6d;pv>sq`wnaIsN_P)6J!kWIoV7D_0OupKYuaz>L=5=!N zF~C=k%WJ(rc%#ti%n)2b!xMin-e{5X7~vA*?c~_owKRf?Fk)Og@L9%Z{;BuB#|tN` z+)wF+`KM8Wpb4ItUBC%NJix*Xd(YAgtSk4$4#0wOKPqO<g)i0PC$lK_ituUTCq7s9 zKP~O5Xdx4bmz~SK(0;4fOQ?gQ+kCs#Beo6EaHGAOJJ=?ZbY{1)8?m~PU3FGGJZQ$> z6_ZD6tzjY`_LiN3zmPdz9~=}n4$1|RuxHA_Voi0=p6_Ow+d~yX!yBxv4c->hD1z_a zCdqDdvbJ$Xf4u)c-v6QZA9?=?I~P*7_bV|dVWnPG-p>Fb-=|>_j1~7S>%Xe)<u>zq zRa39sup91_%bn_#@?BMV^{9~BIIivINHrp#t`R@C)v5B+!SYp+wMWLZu>+ZC>p!I5 zG-`r{faQ{#V6qVspP^r^++zj3#^<uj8)xU-lZD7E@y~<OJ4uv5q*@f>273T45UEfy zmn9QxZ8dRe)^j<WL|5*cLwjK5fDFjQ_GC%{w}59aS`rjVRP6*x8SNw0luh_SRVNNT zwbc1$z4X&JScVCUB6WvU7cm=$>-_QqZn%D<KN-KV<ENXOC!4XzWzsp>+~grIC$GFO zHcvJ-PaHcDAtr$rz5a=L-IwDwfG$%uy2>`X%FjLjj^{s>vWXMW`D7$I0DmS>Uh#G^ zy~rpdK?HP>1a$q-V%yP7bVBVTF((p~%RR*9;1xvy>74s(ToLS3<Yf8*ZJC9m{>jR! zBxaJWOcz2^WmluYtkK?3yOhnx^C2e{O~q4%LMl!yh0l+1&=(0OGo@C$2so$^bW$;F z%zRGxPKeJ!ekT%1WJ+z-ec8K;ZX6eL&SpK6%3Y|?MYmkTG#_$WM^~pQCmKj(@{J&t zs6o>{A;bOO6r0ItAw-&>Sgw{2;n2re2_aA*(i}8Xkz&x74#)Df95GmqpXeFC6Aeb1 zd%c&(8>OuTy!V^o77pI7FFvf6x)FaU+&XG?8|2T4)$@@gWcY>Vz}YtYm9epWUu?w> zWKq`(JDZ6Z4fJLOa08MJTXXzz2V}%b9F|3fTheDr$X1b&2tHW<`x`VqtU1~s#a`nM zQ1ID#97d}6m(5ya<T#(k4on8QdP0UP<I(;)x+?o5_EOnw!D$n}0CL~B{Q&zXRfOw% z)C(gatJ22v?wNab)_u;#CMuSUW3!)luxkhxcY?KBG)WOq<yS1q$k5l626)Z+Xl(ho zw|Mts)#*Hs*_bStOlPsf*4C?6TVtkM{Q>JFzS>(KcwcmzhN!C1d!;h3;5(=m3f26m zG&wGNdb4Xj;{!gHddvJXT&Xu4;-9QFTFIxY<`Z?y8=e$5Daz2aT@}$WrK}wCN?-Sp z%=Pc+A&vJ!9b!~`N0~(G$&$lu_x3+k^7sUi=>L9oAYOHTc1eP)SLZ)n2P@V(J)Qi0 zsurW-<P1)gda&J(<qtvdjXCZYmRMrG)N%7Vi`(qA(mI3sBDeQ>E??X4<$(|oK@u80 zHv<+OkMZew9xC+q#iPy8&F9p{#7^d?JY$pj5L+i`F4<r8L|j>ZJbo6DZhY*gmY$I$ zBr(tGuBxSFF!6=KI3wY<`js%#aBJkhJq^sZ9|<8!N&aEvgA0@w(4laIe^|n%j6k$# zf|vGDLxAu?wadPLnNtZYWR|DpzI67i7b?j+*V9r->DT+73cQGGj5hS9RjnKX!kxb_ z;w~E$3}td|WoQXUnb;It6eAYQYde$SnY!VJ65sNdI+le>{J-xg8;{9|d^+;;n|2qr zD;rB_aR{pbfApAsN5^r5f0F+7#;`>@L|4oa_teL}YA}>icgg;Vu4v*TG(KWg0VJN| zVUM4ekbbWzfe4j&upmH0Ib&gYso^~XD{>XgR-@iEsxNnUzdCR?om#e<P5|29S7*b~ z!N!K%boc}kAQ|ccceP7=%u#8u3<sX8`-7?yt!9uc1=U*sB%~L2>x01t^*8st2xknw zEXCY6H~pS>aM{=QS?>CgHvqx$;O4$FoA{Cc_#*kPjRl+xK=&507P4l+RXRhJM+ud@ z%sTsUmCAj8=E$W6`klT2xr~rokw^Ky$!=sABn5*i^W-NWQ4R0Pzo@zYxb!{XG^D(J zU|3h=8F<ISgC8rN7Z@sDc`yd$S+bIu^QNCUUk7e5h3O!shQyr%L6KF<%Mq-IxbK95 zMHX;87Vu}$|Knf2laq09^E3U1ed6Xv?@`w{&L`M9|Ck>B(HGXt0|9y=Wv!~G_?<y8 zsu`FAwB)mjZGlM9CmaguV^}|-upgf?PrSGOj=d8OpTwXU3<j*VRLVUGS>bTVJptK; z6KdFSkWqr}Y3MTR^SiI`T1PnGI97FhQY0J<1;Z+mfO{o0^C)~0k0k1+?tp}OzJRr! zOsQyibf_=ro}^NPro-uhpo)iL4i^l@1N;m7f)+70!O`20dkl-qYxogE3Z$Kih4i?3 z1b^fUG*}P#d_=Ts9cooMuR=hswL{Au#D!?j`BT6sdNGPdEe4Ye5c7RUaQ<Q&RrUv$ zDPA#MRbu<@)n33NTD1JPFFBSOgoEjih+g_*k6<}Xt&o5jKMw>hbFDgwM8v52$gvgd z(qm0fv@5ZU$-~mdE;zez)`@y$*g1<3kxji5K3Q!uHx^>hw}?@;_U#HBPYeLsTK!%d zBE-8PmcyxcVpvps$jrXtA;VUFrZL0wVAQ_Ww)IJSm^Dbd+LA6cwq+Xe{E3g{@=_Ja zASP9pr61P@#)T5(?;J26$w}s;8L}tc*lD%-R{YIoxxDki2X+0u>%0V}@9)%ge212~ zKR0baPMBXc2}ShC_-KV~J-%-0`fjVex7Xg?)&JoMp-msH`0cjD$V)={5uKwXsi{?E z&A*=4f^3;yrzRunc73JKS&N8=`>>51|FHtIJ+)SS;s$^vxZV5jiX4)5fIpMpk2Qz8 zfX036CJ0I6c&QQ@aV)ERk3CDIXgIhQqn?%f9^r7olg|Xe8n_Id#@ym61ktP4<k7Q` zN6#Aa=s7;H$qcelanaNrRk$kmBFR!RyYbxF+iE7?Bs-B#h)0r5h({-^f0IMlHVUN> zmbaIIh@-Ms1juC~f#a}$|M~FH=fA)WFwpj5nJ2sy4M2k;s5g5TeupjW{9j<*w-;s! zO|iX?R~PKhtgDo>9=mL(oV5(mdN8ZJ&RTujAsOm3_w^o?+}qsjii{`eQTbuLAt!WB zUn}VG{Ju_qv<e-{7wRW!5fdU8wzgF{G1_2(3|<WqRzA4D?;nQTJ#VfxIvySWS;g`r zUwKZG$)0=ewBK!RZc6`-eIqvhIV=RCo)8ox+U%I16K}Uy+gK#Ofq=!e&WkNYRAO{r z0b6KASvVop1`w7)wb_g1NZz8>qidD=S|VPJCg}Ziv>qYtZ8H%oMN`3WGG0!4pS|;3 zr6Vz-6fWFgG8Xd3Qsj{>my+=~d<ul~=hCVAAQ_Ja!v0VuCdw5Sc+Wrfd7S@<T|J1c z?kmQ{&sl>baTSQGh+hT#WO#$5;P=RQx(wsWH)J|twR|j`;$J_6RuA$BKJ$L$9IT>e z+z{kxb!;VIw+p)GxMt(Icqj)e%5f`F%a$`FaIMzP)m6QfsU!fuw-bSUtsb#F<I_&s z;TqI*QD2~3KmW&Ft#o%U+_Q_W#n?)nyV1>XCL60ZHgLve!tuAt!J2b^>m#E>8eiuR zkT?D%&1N)lb&3IPobHEZQ)n-spJ6Q$3m;AwgF)u7_$CDaxiI;nMy^lb1m4|Rw_6)+ zMMJ7V^mnh?gTCT<t?RxG14)lYu6pvhRe`obK55A3Zl=~%K0Z&8870j7{c10iGGEQe z39qjL(HvQQV$puLrZ_unK6SY;pW5dPjZhAS|HkI(XAk{>!Prlt)<CqwC!Abb1+zK7 zL>k-Ghk?2Avt2wR|1F7j)l0Sh8i?KKtQn0q6DN&qwo%+`R;$g1_XWpY5arkBU7jX$ z+xcXzUO7*7Rji%qxohru`aty#Q?FgbVVPsb&t*?A7~b)&G`$t6q8CfpRGd&2E@q@m z?e!CXvJt_raUCu^*WiIQSN0sXPZF(**%M*WUYZk&8sRH26Ujok^?aREk?+`^Fw9H3 ztl=o(Hc|pfU?E7mFYGg}CH#Z|#(s!JW_Do?nS6!NgZW#()`r#-xCUrqPw>4b_`!dQ zg5Y{MgPlY>p~>zfa?O;?j8Ag;GYc&X^$!^zt}xC(N_O@yv#_y06R+A>*FyZ}yK+yz zMyLN3dRIh8<;jkt?KbnvUos=L$xKo(Jz)9f$kJ1ijodW|t6^&}XmygYVYFB5WGdyX z>X$REy>KVctrf3Qw++VLUk%O&p=_bHRwNLuv)OF!C5ufmw%s-(>-#(L15326XaZso z70S`u9*afzXcJfaEjx>Nt&<|iT@`ow5Nb62fiSz_*A{WdxH2rcMY;?VcObqw{MVvu z67vaLHd|q{3)s%nwVI=D*XF)=|5lyV1$0s$rPX;|T-tSGllWaQ4*v`-RA(ZXL;q5% z^Ik4vt=goQA!=!9mL;?1p4*<?mV2zPhwz`NzoLk@*4CS9yXyUCb$8=<G+b|;>x%=^ z*st3$3Vc4QyeYKu)K~VX9A)+4=kh4BLe0)dI;e-sk;eon%{^Teej=|vZqmQce<e6N z`33(qID5WcY=*WAxj2|6=jB$T5DmmmI_{49rggB<&XUkQn%`&-*0-7s`y#))dERqR zQ>laS>s^deDzIKIq#_B{idL=Ls??k5=;?O1BFTt#-R{5dJNL=8!;YurECxFFOMWG$ zjEq3{yN3*J*@6K?d2@$dRAQl?l?M`3_fYN$`-O`hM{I=A<077@#-?%^FC*abEL(v{ zK6kIq01>rq1s9JxaIad*xh%C5c7@P%saFwE*i>-_Ax0Gs-t)Pq)#54rVQl~%@gsE- ztkR@y;=TS@`LhNImwbA=nO(t6R6o{OriC<IVh?34Gq$zg(s&VsB=Kj_XWm)$VBFGq z79zIDBHSz1d3AVrB?L&)mFfDBq2%rNTce=v#$p{*8LJY(7;gQ{Jz$i|*qLBPf5ZFp z%=8FXkt<!_AL$Fj9cetIfB(Mt$c69p#SClGU$bt4DZzqlJmTa@U%Ur>&C}@ey&pLf zj7PoiVw+RMH>mZ~Q@3URwNSepZ@S05{#9wK*W0oOeT`!@YsqwE>XKajR+!YXSWG65 ziH$|x3qWYHbg;7W<Cv#Au?~zFtYVnL#%llgwe-KpZpJ?-?ZSR~jUYkYGrTD{CqSiL z?_Op%8(>y5c_!X_$XrX3TL~<h@J69FInRtwx#Y%3$Vv7AVfh`qok4xc__`@uaH3J# ztxdCNZOqNP1zw|syqGPuh|EmEudNqV(T(0!$5pa4a@5Gs0vWtMMR?3nD)qQFK7)ts zFU%W|<-z;&_)Clk^c3bMB!|gc;(7!TzTQeiC7Ez*U80-HxS()E5$mg=nH%m^;XwRS z2L<J92#oXB!rU0u>$z^H<^`AXgf~bdL18vEZk?YgLriP4QkWx<B53yw3x@y_zElPp zDpima$5a7isO8}ufz_Dc51PG(Dm8k|gHKn7ER4|3zU17_aq{RWd5oL2Dfhrbyc0Pz zWS2moniD~fo$PZZJVx^B$z%SD%}YGOi}L)9qDotRf`VNzo{h#qQ(o2ksv`D!LT~Y) z)cgIqJnPS`XZ8NJ_Udl;Lmb@hpN!v6#-QN?ka<A7lPOH-Rq%63ILYEXgl5tulPci| zn}@OhHWn;QvWZB64KVwi#=+6vAaGeyzE<zLV(ZnN^x5+bPI^~&9&PvQ<!-2*I=p~8 z4uRy%eVaI0qc^tuFE@QVgM$rsSodz=WBtG0|AU!7@ctRL2BNJYz9i`POI&ha5vcgc z!bkTM2tVt9ShDcw;d5n${9Ju$iSu}VRs?BmS!g^->%R~J++r$KBs=Tr=~g;j=s3|> ze)Bl*9_N*C<jRNc@tqG<Jf9D#ccEM|TsS=?vZs(vZ=IeNJN0TTf4rG@U*?WgIIKT( zU*7ppC3464knC8V_dlCydH<4jd?hW>Hd{P|(-npP*EDbSgT^g+b=x%JJxRyZ-Ri45 z^?cQ(dD)Cl4eos4zHX@!tt+LXo4#zw`JcH1b=7}$r>d{kBgt@PShBKrKH&S^aJYEZ z+^j$yY-Gd9n)xGbKmA~}6t)vl=-H|8@#1KGV3Nv+2swxEXL{9iI@`@uBYbg@g&;m4 zqyoj_&iU=-^WCvxXk-$VQBn;O*=zz6Q9({@6|Z)zqfv4^hOc>8#LjEj;+fDgmc>mV ziml$W$T@^a4v>uT^|$Y5XZ~Aos9)&u#eka8yq`!$sKdgdqu=s`0HwXff*yY;lGDTa z``(9f32f5Z^Eb+Q8q5|Fa7N_d&pA4YSozk=jBq*z!{zhyYKTCO%uy%g1d@qdG#v63 zRdA^4DiC)9!AJ%~zt8@!{X{Uwe2F-=&tl0Bm{<i~X3ODps*yVMIfu#gVG)|1t3)WC z@DWPw4-?&&$-Les%mf}tCyf5XScB)d1V@^Wc#GdddY$Z)cQ&=3vaW%27AH1>%MZ{F z5XA(t0c22<_nJuG9GE^3Brdoff*JqZxJ#ken)2xknYsLl#lJor)|t20br2q>55|X- zgm|!cUHqhm8g4o+*7krg;>x;gQ!D$=Z<Q)QqjAZj8=&J&`)!T4(Xlgkn$D_vrv?)b zGTD*Qeq>8CyVgf)@e2)ax!nODuZrkV*Z0ED-Y&SyNl94am=(9gjPJT5YVUT%K6Y0m zwFAhT+g1C>y+Pg(pSH%AJ=VT#aF91uk%W9GQxZb=RMZ+vi{i#CDA~dB{oxL*LVO|~ zbOIT#;o`%g7mgZ{ER5{>k#er{?%_8vTdlTyIOB3gd>dyY!n)*(ko$0}7zy)`0u0<! z#+j!NY%_-*y}&q&IB4Zb9UA^%S!@p?SS*`iCO}s*l;C_XTn#62WkVR&2vH*#oNbhm zMrx6BC#MgNW7L3IL*wQSC49|vC9=gf<;t3F<Tk&FEbx95WhMd*EfiQAPH(OGu$kMR z2Ae@HovjMKP0)5@u9H9fF1%S466%2f;9Nui^Bt<Eb@&-?4SD%G$HiwBd5cAfRrf@j zRSTllD(j`SIeHCY-RPAXwA>B1+_J*tBeWu|QBBoatWn#o(QEHtk7}b=Ej6$r@>GM= z&I-GmEw{v5i|0)>Xpdfx`$fi=$rEB&WFx{Mi#&_jSA5|RWEpqH<VLu%h7|iPT#I6Q z1trOU$#*J2{YR?$QdVwG$+Y_5Mev}BO;xwi$5=icm$f+Nto>AJk0p42@jJ_uhyx_o zq2v4RvRRwmxYaS^eBFEOEmMa_vexN@$Mehd?}~W-qr&%i!($)cz?Hfd%BlhPE7U*Q ze2-^Uc{V|Vpi95<mVxna9`!>m><@!%XpPU{6+~@&<v!P^$h{T4(2PCl<4=@nBfA=@ zwV6!_2a6}yKNL9{(RIhdL8T*_`Z!*IR3@@b4ja-09J+VPkh%5IcFo-k>3g3liwQOc zbbPW%0YPXt6E{|VWNtkJtNsiN+4sbvIG4P?x*|B$c`^{ltPb3Vl~D*YOjwZ7Sl|@J zFQCG&`+H7tJa7mf)v>1d9Vhe2dbXpY*?q8rZpdvG_p>T$?+}jaR?Jw_U%`4enSG|e zjm%?<weI&7CWjv_dLMhWr{(L_$KJ=<?<Hn5&<Mv2o)iYPNF)??)FDS+MM95u?Kius zvb($Oi@bXq3^_Zy+y1Z@cB%3G)cVP7Jd=dn27pLoo;T(i8f-}dk)3wCB)77h?^GJ) zajcqqVf}@CLN=0^Xh_drZXc|7>r>Hc(zonM*Xx#KbHrQl@s%qQ6-E-)t;vpMvu8`3 z|8;HHM89JpQyP^kE7@QSb6Vd|#<H-m@t2Jy_rG&h>s$b_)mOOc2q3YZR|os+rCO<+ z%_I_;Y?+tq`{S`<_8A}6XTV`MmH|Cv?}YoQ;2iZgv7;dQ?n57I54C>WDQ&4BI@N9| zL!YkYDlGJ)?c?UqUn0_LEnmLaZ>`_z;g7@vj)v!MfB(c^HND<HR5(7|6Y6Q^tgMUo zkxL}soto}Wv?#Q@S*0~!5uVjk=MbBC90@UCZgZ(#R+0LM`;XPOC$qQx3L!G19+Hyp zxb9wLvalS>Ew90G_qy)X+PfL|Pz9fhI$SBb7g^I^W0^!Ef)E%*1k?eylNej_Zd_y9 z08cW}H11KS%>mRZ`Y@5xkCZh8l~l+y3c?UjXk-c?l*Zy?6)d#|M)%suEXO5jPa&IZ z_q^Y(pSf>#yF?z8%gxqycUSq()(O<mIUp{Fm43P0uN1m~bA{Cp+SF9M5Y8vM;y`=< zEAsk$jodQliD2o}NZ2KIv!ywqJQYQQXz&?^DNlG%I3zBVPkiF-bS?!`*g;^G*uk1f z3v;zLW&swgVKV9c+AVg#W;mtJyTN8n&aDq&kwNp<<^>^g(?|4Y(}(G5S;x>x24Gjd zz`pV$q(7ATv8P8%evj|Xuc9L@&Mpb%rC<l=W)kmmiCiw>-Q)jdYTNuc7d*dxmP^<H z`S9u@0SGh&vF)K1IXq<NCT|5({!EXvF=vZc>|~PNQDHt3a~yEg&(JNYz!Pz^w^YJf zZ;9PI7PWS*-Ds=|oOM7xVh&ppZ?*$!!cC}`ARlmTRrMI2tb=$%6^wgIb^w-NC7M=e z=#+*y-Y}(tjKD47Jd(I_%(<8eEhIPkL*~Igw(1zQ3v&%Jv3Vcgn_ar6>-jtC@x9e~ zXbfhTR#xZv5*KnohnAogy(+l{B+eb&Ech@4Gpd3$!hm{j-{N#kS_2>|DwY}*-X6YH zEwCaOXKc8|s{$D{atV6T3r5oS<X(6mEMZBog+@lruBa#9U|N+Cq!GQw2j?yI-C8kA zf{>^i?5m5Mf3p%z6v{)B?CHzhD*HiN<?0(()#|RjRRBqzh*raEf|F+SP^^qw^=Rgm zEqr1IZ6wG%xjxnkBwz-_@9E*nq!O<zY<<gwzKB)VV38M066HBBUQb=wV58S=r6D3n zr#GGL(_X8dOC>8QXT#}U^ee4yx1|owH_kh+dly$Qk?~WpUsQ+XXfT!~TW7sd9ahOs znT{o5PO0IHDunv9MipyI9<5|Kb!Y#@vi)8A@5;h(f79%{oBOiwZoQmHSiC-!G<tf+ z&FvM~aRY9%u$Pk^mk-%-Z%)3#amA19Pm?ibkXZ(oL;4{NmLY-@!z(K!`MV!TVj}bi z0hf<KSTgM~k*^3gOAx>)bW}j%{O|&4-9e1^Q*R`GT-(G2&hxPo#%JrZsGphB29I`Q zXAsGrhu9b<59b-m22u@!UU`0@`u1PhIT`%~{Qd&Am!X{#GrvcvwC9C&hW(GvKC`fe zaTLjyVSoFx$DeVkI7ME_w?BSO)t3`QG#>Bq62q<MzA}2q6KV&72xo_AQJR|zuZP47 z-L?mdj|D^&Ym$a@-@b-HJ6iZpudigifD&y8w=I#wHy0E+&d8}Ytj;pq7giU%D_H7u z;;V6h-=u29gLYs>0??WFNBtXtz-Z4tnJPoUY<gnl{QgZo9_@;rJ5`pfE2b=1Fl61M zpN$E7a(yJ}7z>2zOjlgJP#px+4pHczx}Ny&sJX15lS=^uAra+tS7t8*HCbJz>vUPF zIkm}{p7eu^8IjoqLpXlizP6Xu5@A)0>_Z!UcdCzN=%S8KmvQG_Pe(B;i9?g`i=zO4 z_ak{FW(^H6x{(8oKTYZ+3;FoL-nls5G|2dAA}_@PArA)3)OE=nDJWJlnQO&-Qozmi ze+Oi^(Nk{qq1ffLOPUgIb>(G1qk47jB&9<>Z+GiRfbycF>9xZ2tMRe^E^V0DF)%_t zU4C$nH9!iIUlXBziGo)p&*mGVoN0~NGUW26+Hwk*)T)5eST5w=-Ha<eBgTv;cZQai zi%O~|Dm8V(7+U~OtRcMG#2DYYYv#H*qw(4LWj7kv+lU9GJDr(D8o=$avJ5w~B<(<# zL--(k*?PWq-W&AJ*9O^EA2U$X+ZS?k#Fm<{tc^TqklSP^QBG(Z#Sx`CgBf10>Bg7n z#UmY~#2`7PR?t$lh4wM}swq<!Ni-JDX%U{d_xW1%0MFsc#+9}`_p2>v{MLKz<7Tze zP1Rv7BOS<k9gC&93TO#QOw84Ez&%r;;P%^Y`=Al;`ZjABI#bpJ({AA%jY~arY}?8r zz6Ex@d*4_qdK-Me)=YQI8+VtHUz||;`0TjdL(-HgjI!xc+DVntwQ<+<DXDSL?!Mg) zPRh1?aT0BeE=ac#duzJLbQkxQz1i)9>&PKd3dSy`>$CVlg=9zZ@|c^hiyU+Y^ukny zWX=*Wrh_24Rqk`9aISsWXdJeCZ?{5Hr_k2h%h#NSWf4EE+%=cG2DXm+NZ*9XQFq8D zvSf4_$-(p#{|lR(F8t|FNnpwDhcq`6;r1-rPnH&Dt~v09n|V|^RGnN2OD!aWr4lAx zi3cy`G9ha-<Q|D=f*%S7LQdTuWesq2&^s&%gs&t?-;36Mrc@djDTjLDdk04^_4*vC z?fYotUrmtbgyK!AAwzh9SaM{yg_&`Ue};IztSkHj#YbLo$SlpsFgo`gxaZU=9#X09 zq1!)8bX1yk$`@Lfs=u~UrtZDiU=&JZf-S$-C$5XLwS8Sdcoa_$yJyMNXg@G0jdY@n z+{P=_m1YEb)h433zZKMLL=GO=3I9HFtC&0mORK~L%d@Nj=3#^2F|WM+5gQut4t?a; zyyE9(E%-uoxVeSNVq>PQSVPz_k%VQ_<ih+;LyW)~;sch@2$l;M3(RC06&Mmn7&}^0 zW*HF_0#kz`@snD@ujY}pQX+17|A>`I>N1g&U>K86?|N*F>@yvt%QvlStcxIFrrRXg zL46$zEVuKLctHUR*!d%AUAW>W!*TU^HtVw=-F)HivNT8=ej|gzXefs6-_(9!_=Kgu z!kTl$7O#jBePwd{9w1uF4ly=JQ;j6^Ogyi~IIVrEvU|c_98HK#+&F&4HcmXGAt12B z?9FtpL~cw4vkgex%oH<YN9Q)QnL+gPG+YTW7A(vJdOU;XBvPc9zpdf`c4(bHRszS_ z(PgJ%iJ>Gdv@tSV@NVGA<hoIGOc~WTE#tzB$Z<;^v#E%C`N1r(C*y`=$iYQq2u>J* zRrUxZ;Tt!Ch#cd{UgLpap_0Ab*yjxQ1uTtfVkM#|*-(Nr*Dut<k1#rm<Jc^pGer|) z>PAe=sT(o&At!R_DJI>dItu0E&RbfqzBPen)Bo*Ge#9@zD!T~%DiagzlhemCr#&o4 zm88x@)CdUt6+bXbr{pSK#4$XM^?Zoy+B>PI7d6pcSINPsAR&3(<It}2N^G%Pqe!Tp z!#4E)(DweJjiqazpWdS*Sv{@kmdmQL=B~D`+?LCl9o-&vm#VDH)$Oa9(ex-A&7dSo zq69G!M49*xg?I}?L~s%X%;JC<%wRTVFc-6!S&@jvTud;FxR}8dW+;Y&n86HYV}@cW zf-^Cl%Hms=PUZ8w?>V;Ya&_OkA?1>Fd~|fqd*1WD&-?uNKHsNSYQ^68k7}I`-Zejv z`(9VPvAZj+aGbAjtdlQP`LJ5(Y{)S?9WBe9zYNrZ-(!{eRO`|~f)P_vQq8!h)%X+< z35%4e^DU`1>G}BIGNG&*?w#QGqWjJXkH$?*-&0k8Wmxa2<UaSzGjRSAZr1OiT}`4} ze`cb}$YWg%X?$vS8YWT_`Vq+EIF=?J;Fz8g$=j-*ugED?p$E*k6mhDRSN@gMa6i(; zPc-b>|EtK^X01t!xMr_dwBp0M+G%zM`}pY>t-QaYTPA(){A<>QzoRuD>9tb|MZicu zH;!owy5hYxOE2|50)9+1K<uscg8|Wg%XhF2KId?a>U=y?3B@d|ANXtbAF8eR*~Z3M z980lEc~z+c*-|i(RBM8gLiyo;opP&4O8yB(>|Zm-{|-;Fi9XCyMN~)I=@$~{&6OV$ zeRxQ(%sy2_hXv=sK!H^bwc~1aot2(i%9)m|TL;oq$9Gz{mPMO$@C8*nap$zAR=igC z?7x+MYuB&a)RX3`kh6W-7`((oGput1b*$ft%DVS(E=s1@Ylia{XE3Uzf7*K)wa3hy zKvnc!t^DegE1lsXOUDSsJ<E$1y0pbcWS$0A@S~HlFR>5&KX`2LHR%K_YoTk!tHak; ztU7$v9loksvEl2Q6$?CrF+RKQyl@WJRc^R$wVW61P`PzS7@NFx=TjYX^CXQcVYrG( zncyn3I)h>~+D{nbP4)b|`o?{`8RsYJ6I)$h<-bBzGFv0p`&HHuA98a96oqKfel1V5 z*yK}b=Xfcns%n&j+5gN*>j|7z$71jrxTjeHWgNR}sa%6~>ef|m-J?(`-nx>AYVVXE zzLZNXYt{nB>2ox3i5a0Q2w=iY7yp;`103(#?@FBGY0}0N%!wRA!015VP4){2DV$VV zL%=}0S8sl3T<9`4u5o_i6VTTa5+aGpS@$Y+AzFzaVkJHsEM;`%j#Y7+{F{GI>We<3 zzUVXTUC}G1$Ath^U-C-y`v16Vt{gj*+!4VR$o12BzNzoEI>HI(Js&MeLDJrr{*sen zpa5*<CMH`gzwhckUIW8Li}Hc=Z4G@f_m0+`Sj#T3zu2WeuG@E`Kdhg5Z5rtdCew{R zl=;L(y;evsPCc>jIoB;fg|i=GzIweWGzvA&LBFWD|BwBLZolAt|HMKbA~ek%NmcD^ zH5Dy28+l#%Oo*TS@mzys{Zuu};_nq!(epcL?*;aC4}WEX2L!?IN8$Zs6?{Uv*!uY@ zL2ai`j9bNzadY61RWU@ppyV_W`u2&ln{;-F`pMi*2IYJqsgaGjV=$I8EL2yg6-<xo z8vrH9(B-;EW(5z%MlLn1q8mva<Z6IfNi(b$CXlmv^SZcYG@%5mF!{n|X_@J3>_lv# zO|jB6{Cdvn3_E#?+L`&l=FeZ}B?z3?ZH@(V)LS=Pm!x%@+Aj*I^{im5fm$Pp*oMBy z{dYdxelt8&p<RD@mtCsWZZGW(cK4i)s<f9Vip@WcIe+0EvP4{*UAu$bU1!PIX-4-B zv+~Xe#^x&(`CKJ5_rR6%<%z^BJX;a0H7ONH8n^RWep{#4G6Oy(dB|94&rGbu9CVW& z9>}>q<j`E-=+%M?#)h83k~divL5Ok3^st;9lTju7DI?mv<~$zkH8Xqdx)VCw+>^21 z<TugZ?OW<SsTY4qEx>wZZ}YHy;_tTim`1OgdsPT}Q54iI79N-RSad_PmVK&Yw{y&t zTk=y@AkYwx$0tPciQ+3BTiNUV806<DrJ(A}AJ5O9SP`*|j*gD}srg2$(aJ&}n#=@9 z4HUIlRAQG2kkUwu^R#oM#M*DwTMa6#_ISRstK$e1Q``T@eHi>$0ZeXilGchek#WsS z@)#9l0p8D5-ljOLq&&DNZoGW*+aF(B<wyToH3${b*kN8qg%gfa>tOBrpHSurtDc_2 z=2`v@*G`PN{1p$TfS&mujYod0P*VI7cf~ydqJPc|HB#n?#7;aIk9?|#p-g~rBz(YL z)puT_Slf0fSEnXtB2G%KO)ZR5+YU#g^;&t+$`sA#n-}iKxULfJ$E9}Qxm{|#ebFj~ z3ac$ZoT{ygncZRK$VxaXFYEnAdpQxa%k!jzmuxx4xoA5p&VFvk+Bq7Ys<wBG8K-6} zgjna$#25)?^;T0dCP2hsE`J1~+DsLeb1W{T3Ml@MaOs<IqqA{X8itz|$`0(XfZI`o z#DBdx#Jx$^qZk2rXOCA>QNmZU54WU%3$S1m9sU+$OhZS2c*qw-hZGxF)_?O1zDGMX z{#D`&8Ul>XLS#mUgIM;4o(_BJhT4Jq4_vcbg`FpkPA~XE86w92s`HF&h$8o6<%~S| zOgXkMyb8e0z)W5FY2`S*M)=-+f?oaC<cs~+^cwh9+QQ(|X?iHD62c=3N1Q;g<MS6N zS2DTz8!sMv#-@QOaxmyu6YnG6TVlGC4{Tj9OH*O%Gq8*E>Cpp41?A-#RYK451kkT9 znHa7llF7t&E*VYMn&D6-S}p8^Le`Rb4VOdVt*~upp+P>PF1ZB-oBqzq%4WHs;+bT< z+0LXWG+2!ks{M`aQhu{pi^r1()rcLbfQ{S;{B_h>j}{WcM4}L_Gg#;A))8Da!*nK- zXmXj;u&ows+gY>2!$c^=JC(KU1eLOvqEXf2tJW!BWovle+E1tAu}CtPNl*bj+RT*~ z4%3>ZJC+g>ZXlBjEw_J-{I;+ZSjj(9qYqS(ICONG*75{%gkp>j)e&f)E49%NbB+AF z)*IzKl9e!}W^gNA1KU`J`H}OHe~2?lhgEgTu-(Or!Fh>17_JA=MRlH%h1O-x9j9*1 zA<>8XM$?|eTjjNrko;E)Q&-(*vS@Kd9!#}{%45!E9VRHXaw^yL%LLF9#9B<KMXw1} zDUo4GyJU_q8)RmTUKb@oyj*i~3-?Ju7`?dA-HlusKM1&#(Tmq^UU^Y&w|e91_IsB$ zeg($;GgkEoI*nLEw|jH~wT4SSxw}s<Yq;!g_v#R<Nj$UiyujKMm3HMl9y~lwyyS#E zajrogDcCc+hhGcrk!mrb_?hnsMn8ajpmN!q_U}mo9ADP!7w-msFpbcHX9G8jc#yok zlqwOopD-v3u88*VyVxw{awT}Li9G3q3K?;|=UjBqMOx{2WwX>lx5^S2<8X1$Amy|! zdOh}}J_XO|y;ar>6+M|nV;jRMdD9k?%Q5Kq)zvJvo&h5fB3!|GK_wd&qEz}oeC4BD zvT5;8-|#hg>W*lhvOVR>Z%G#vKbkoA4Ns<AQ!+v547^aX6e2D4&C5O^n7t%D(>uoF zn59j+|J-&V_z67FvYRnuVc8>t=gyYh(Vzg7=Q8s=^9>7C_lW+5@AWnZ^LsrbE#T$a zj{))Y%%H|d!iG0jjlA|VmVhsCMme{>rabD~#whyJNIz?&f`BD&FFDxRxS6?<s7eIT z=rQRv=|7F49@0CEBjI6`9;Qp#y8axJK77%dx0m)`k0s$cB@+1IE1LcqxrZUcquZmW z<os8+CM1C1>#zDHDxOJvLd*k3$H?Ts0dupP2*Z}dK`w8i>p`VG%1UoNmucWl22Yl` zzQF6g6WJjZgpnTtqYx;NB+eM34XxI_*P&il1_TBmk4Uc0Y{PJao%2TLUNIsgCG?Dx zo2R>Pb+Sv0JlemeUB7s%0MhjIfRx6tp&P@1z3%CzdWIgO#f8Y0?yUzg@(iR$<QX8L z1SfS<blveB%Gqq$^nwJV-+vO{Xu)(Pr#|>BVys>>KDdzuI5s`{Fu-o`P@qrs`d)PJ z+Ycr{i59ORBFCj6m)^LBH|pl2u^u8XOSulxLF6YjI`tqIk$z(WjEwmhHXJt8hg)|? zqio-Gqegq@){`-^+v_6d&FzPCLw0EPc4oAj9sB;okVQ;*Dn=gua|%}K<g43aWaR#2 zPUAWIz??QF*VOy-de2<!u9+>1m#hib^Ud(giRNrjIy^;L27ZBu%lwg(nUL4FKUv1V zP+xr8Qyraaf;zx9zoSKWK2TTecny(mzV$R^>18csAl>mKuVvl1@gR!%ay8Gm;``5Y zWNHiB$c+b!SI?c*^1-NRz0vRH*^)K-?N9e=g1x^^@R&&-0A|7T_|QrrlTOy!_ty(| zwI$@@-mSOT0~)y{*mb<z6K7hc;i4TK%fpCf*VVU8;EQGc=8e-t?tN4bk(m8&XuDDa z!Hj4TLM2az1nzj!SABubA;sd%02G*vb$&~jT+8|ABH{J;L&%CsbW5CEiTV*8R`@4$ zEkUVUO8@9p=(}1+E=N~)j;w*wIvRCz99j=OHIODrTiz4-BQpO}ZI#^ezhH1PGXZwU z%^P7NgUn3A+b(%gfu)e<^;{Pwz3+*}>7D1>JK3Av!f}1~Dyp8zU1NrPs8g@?6LW1C z8O$Brab*GFm^<NuH+xRhE$-$0{^H(T{q0k5#loxizBcV?5#D1oDC5WGZNjBdyxFBZ zN3%*?Z@i~zUoyA7RpNRJ3xU*n9nbP~?lEN9ufvh^JG9Nc+W5D&>AT0ijDFKVB%7Eb z-#!DR&H!4Ox4t%uom>ga<Xa{KbJguv@voWo|9@z`o*ObdZuaV3GvvChx`o$0``*L9 z9$S+8d`IrTAoXxiX;8VLa5MV+jc3hsHM7>}CxkJ)nI($86#Frj8*d`mJ}AdNaIL%a zqH8(EsOAA8H{FY?y${VaRuz0rJa!Rh!i-Bu|E6AaCCIMl#I+pzC0Zxu#f=`JQ8#C! z6so_`DYQkJb*<fu$Wp=23j-Rynrr6@QNIV&LzkK^ntV~XtOWW$`jp0)D?vu>^;rc4 z%#ue6qliCOvu&QEIX}NXs5#W?53}$_6Y&OIuRq4_p7RxG)krJEUE-}jUR+W=d3=Au z`0Q@9@ah=`McLy2tp_(~ilVFKG%*w*>btV&c$9nrb?DXuB<v!Gn(t8B6cu>WTeq*D zsn_;@<CX`irW<cP)b|@KkC{Uy@O0zhlE(sTk}2(jYXcvs4;ews2Y>t~Xadp74aW<* zx%RXO8WF8R7Bjlo_!OXG(o~%R-lYmIPU9!RE(|5TwL=>SjWE*VV9_90yg9<iB)JIq zS2l^JtoCfg@6bo-rlLd+ba-7iR~$4t4USItWEidE`nbW=xLqLqub}p+^|TMy+tpvp z>uWu54BQ86r2c{mxZhO!-uL*{p*mM}XB$xb_UKvEe$VVwb#=}u(d8}bn0-dP_y;g9 z{x0nxI3O%P)7tAVTauSG2@8TaeSfS1@(Zu7u$RwW7q^-)#1V#C!nUI6T)x~XWO9Xk zbs?9IlCM^49XS0&A{?(I2Fe$&#>4Tr)9)|TVu|6o4nZ%~77wW!@>+gbU#7$1Odg){ zP$XUphtv6VGFOZ`ee=b^AkO!zaaD|za>=xHVX!g7_Tu50AUDnq7fpXXgcI*M{v@5z z18^iTMnGV8Mn^>{Cl}DpZ^^%R;{@W>{_^o;;Gy5oq?(->p8;A}D&!n0DaJD~XFn26 z$JLf|n9L*+>(OX3lTKL_Y)nFCcNR}4A`7vIv!xo5nEg*K`}taA)sBRBL&<17?LS`# z7gNK7WIj>}XOjMOx)M{Va457Ail?)eTXr!Tx0`QQ<|#xe@(G@;3!UFH2ZO-B&6APm z0Na^BSEZhzj92aUKtG;TQ1E>M)t?}d+yRV}kei|$8H6i=*%@)b3oSjn#>%m1HjySX z3f|PWfEI)uz1pKaR!UJMGFeFMI)||eeq}AlB&3z``*xh;${@cUD`sQsu~NqRIu<Wv zD<<er$rh{zi7DMoN)@*w#X=-9KYT^pf~bgq)=JQ+Fefv;rSmnR%UF+Pi!%PWPiGU1 zSqVGxODZ`2kKCttZLR_&#79PcD0K%fm>G#rcx*s#pd5UJ6WQG<sWzWo?T4<`J7o6$ zq>NlCz~+WJuKr;6$hq`a=r~U6C-|)K4{*tA!&HpZZt3z(G7*oo-n3$+QaGM0Cgb4+ z`y|O5`yz2_#4NbGTZ5A&kX-tZQaR4Y?jMbMBz}F=n^wH+oyk2#EJc0DAWG1{m#Af# z9<}*m2LaRVrL$#x6cHNGiWBn*#~GO61+#;_J+7_yK&!x?{4d4!V+-!yM%eZ~Utl*S zYvhQQ92w?<bUrfa%s#X)#8(Fsagte(2;Pt2cYZRJ9FHJ4$0LC$U=&dmId-;BKrBTm zO8k-nuPIe=UZ`wz_ef>>rzZ!_%a^;mhpM8&D(k!?hivCi);QlEf~or_ShBxKjQ#g~ z|1KAONU=eSajUt^Er>7XzWB;7m0)K`S0p$Y__6xj|B+(aLc$LQ;Q_pRBy|D&n|Yf3 z++uP5)Cx3<?OG<=SSk%_wT;DMioC%@K9Ov+JB508rRh*_F`vlCRpl%dt+YB2>K!=e z>3XKHSj{HwgH$Oo91N4GYT90kr;Cj&$L6wr%g&MbwA9EI7dLCg<yIw1R0>>pGEdoY zo?0yOq7g1El+(kAN^QsD+1g?u+w8_--1CcAY&pA7D<mV~7y$>7-^2*6>+fhXBz0xX ziep1u8?I9qgH~rZdtf86+JIPSFBQ>9Kn<MnsydIqs`&+Ft&w?ky;g+KZ+r@)?Ee=o zy9Bt?1L7%yp9+jWl6=l2`P4Sh$b0tW<GBgyM~wyiV~=c>WYQHjRpRv6**bismd`^M z)%AsCE1mAW2pn|Yu0-0q^J}N6UcCEe71E{c=#m}l#dF1u>QoWuBlo1WX-2~=6iT{? zhM<}x@;E_#G0EVbd`y)FNiv>&l(g(Z*|y7th4qEKR%>selF9Abl1p}=Du>B66`F6a zthDEy!C#b*ml8|I<>d`3lu)H)BN_{YB$uq|bdN&w^%faE6_sk$=Y619JpK)_SA{cO z7>j?)_uKS?IA`P~SSt{jv}aBzHhGb(Psw@wSboO!)aMGu^alYo{gIlUd<27l@=Ku_ zNq=pvCo`LUFV(fbnMsl;m>~mj;h<z)ln!77T(PZ;1GKYhwb+Iyw6^E;R``4vDjfvA z*_f{pBdw7vyXqWLS1YF$RlZhFW@^-fH<ebLYOPYK4QtDVqKqw7WkcSE)q15;*E*A% z&ui}S3-0fCedS;34&6Jt%K8mtflHF0_;e;J{7<moeD}?gccE`;fyIbmz1oXI=97;P zeCGX^xYvPC?hGik&I#_3R?_Iy!;<eAu6G(?Kvb+pu3Z^KXLS8-<MM<k>B#KVtMB!c z_2Mt6bmDUAb_ZA@x`vgw2xRfp(HPQo&_|iEJ(;G0G?iGy^#KN7YV7d<nGjOr;ny{v zt56s}WknPKU-l8A!fecZsbN2nr|1BJ|A|n(X!3z364FFklJP2;Jy}+<*+(b~=y3^9 zAHC9IzrU#7&@#GUK(>;+`y+z?0T(ySk)t6S&PCC-Q?WuQ1FlGh&SH*`ZYETKK;16x z9KUuNuaDKkg?zuCw?d{n&2I`dzBUyF-FIt!ZEbP6vKg6gt-fBhomI%v*=Ws2HY>}E zU|Op6x~_?LWzUOmi}>m6R6u7kyZQ`TCpOQd*sHttMg^1Z1faI`VQMjzw|)84<)%=1 z*w1UNbm8(?cYdmnUdv=I;Zft?wLLC10YOJj%uNAXWnn`)f^V5(=^q7O?1K5J40oM0 z^S;K*<~jqev*-fExl--&SRJAE7r4sW$W=$KCHX&s#JuBP0^Fm<lmiDkzI`(leUp~$ zUEcob$ob{2mTFGQNsHb1?&t3w!ovBS>wE@MUB^!+K37s<NT|z{XgnxO8p81zc#S9H zLG^|3%wj?Wg0q07X4MZ8(P$?ew>EXT_*i%;5=m6A%gFoFYH+!u`xh`>I$g428Q{Ht z87;<7V_~%@)#M|w<9IO&h1PYcc?Gk79b+UugsI;usKoF<MJ}RI=YXv1Y|VKg&qaJW zhG*fre!`tq=s_6IO_6o38~&kk^jqppcMwv8t`l+wZi9UvtWIBZPN4j*tK{IN*FY=p zoDTQhb{Q;(SBF!q2oKzUwSl^A(h{!rxHKa8(6W3)m|SL}m9z!R2;qct=)QYd3NK8y zf}&KtPFjAMEf-3;bpYt>u%4M51ywZ|NAufp>tp$$u`$Wc<t9I*<MmZ;&*W7Zd)LFC zO$d%(*Op+si!76wq~8rl=L@m*P_2Sprk0Q5!d2lNmi55t36U*J&U&X%D3;U3^*wP) zvGU;ZgrHCI9DUT6PHr6a>!nJw+Ahy;c>RZd@C<1t*5!|>n#Jmf+?QxM#u&f!0*N_e z3^EKE)=0gAyBsXAbbpT0{vZG=AFBN4DgX#kqnUMXA>w#e+d~*PCMRI_slRvJPq#}; zJFQyG>m01louyJc-9Hv?6OWIEOo;thw!N6<H7rLL+u1ZPwN%bx5v5|uSZyhtUaGN? z!ajnFd@+~bS*mX)8g=hU)f<V;`qEB5x7g!s&fdt`oqTmI(d@1z8ns#@vDR%S)?TM- zDE6^vEEdf(iE4S-l07xzr^X);Sfal^;Yo=zYJ3W!5tNAODdB&B4=cZ=LK_>-#g=pM zTggn&x9MCs2<uIwThiALd3I4wbyw|YtD|$2FDY%_ESVgjAnKy^HHH~jA(B=_W@@yf zKA*v@2~W;@JTBKPIqzpx-QwQ9BbN&J=MCm<?%n9dUD_XGv@pxY?8J;vxq(9XaxR&` z?VzD)W8-X(hgGm02{|i+6K6S;ip5eP)%GXVl5DRzJHwK*gFUhrco<q;4aMV^v3Ojz z02jWFB~Av7M#I0=V5v9PH8rlsz`FP*??wDmR%Bw57n7GI0c0EdSa!wXmOatmY#hCJ z+Ial8<ce58`s$7A_M}42^5E2M=g56Vbu2Ft_*8MN?<;Qi$BHZcrb-65+lapZ$XpWE zs6A&3s>f2Stm@XfYM5=@IJ?j{74vzgKkPdFd|nj;4-4V4^JaMNyeWqZY^$&pQDL@w z!eIU?mwTlSU*+V!#UEy#Z&J_95_Z^s;``6&`AKXqGeO5>nvOU{f5^&#9xL7k5{zWV zF+eBB)U=wNL!mXA$(4$N3TyzG6Yp*K@h2o(h1PncFV1BHWbDI*QD`NH%T|r-P?*Ha zyDQZ1c;{QeeWDXf)rom`-1nsU(|rs4Q2~F`dMnLBI>7&I{BEgqYdx27<_A9UaoE0# zrntqL7pjI!LWnf<?}5*}t6T3fCp}Je$?T&u5*l!1Iz}9Yf-f*b6Ek_-%cvgr&x;;~ zSBh(Nc$2?M%e_YDr~@l{T2f){6j>v+K}R~npB@~Ek?-%wCzr>K-g2pP-0>fIWAvF# z{sd1==VKxk=v$#BXG_DwEttMll$)+ea)L5wa3I2x?<#C5md~KS*|_I>NWCk``(zAA zY**F+>t`b7hp4cQ0B*$fYV;*DM&#HS_YbmKUN>;xLgZu<g#ba&yDN<oHdT@wt*&(o z)Qu?xvz*+Y=-i{%nUS6rs4g(>+Zii2RtLY(Yj9CH(aq$PuAA8Al~VN@G33T>9%-5( z$2)6eu929gza#Cs))x(e+w-`hH5q6F2_N`eU4Lx>-^@){>m>!|b%nFqs9hm_`6)W# zRd3$*<4W*YI#aEWoINL=Tyfg+ayt~vxp(c(dw$)(yZ`6ieDG(1{}xMC5ERqCKj4Z_ z%^Lc2#=Mii_ud{qD=w~IeyCI_KcBk<VTLA*VwT>IHC0|sm)6(N1$QWYvAO}5(jZaV zVV&zW<H1rX-t4ge?v(6uyONnNCiC@Nvee90mdYVJn<y9JDU^xQRykcMBw~eXJQw&! z;k8#gF<#;D&a1T;FNcaChy8rx#a<$@_o9*SA2tW2{9-PGFb_o{p;$5$&aV++Oy+X& zWMe*6ET$J~6rU)i3i1q%AB3eFpZ^p+zzu;*)*e8)I~3npGDr<;$VdLE!0UK88VSck z_;c-egc{^za8%m>{7Vqs9>#F{XH)@Qao_%4Jc44tp{Ym$5VJY7(uU`r@)d`%(xBtd zIQxT_UK<2^`jM>cc+auQur+w_sQ-c2`taDMD!koQ1^<qmTVE`;>FlF7@B4R@zL)Fq zDESX!Q{0r#kFU-=Nw7lAj)oEauOg9FI2Eq#3}ZW1Xy;ZG@f9DnB9ZEj)0R(fj#t6> zpgZ1)d!*W-+j;nxrf)+Y{jaJ!HGS&AE~gz{>}cTv)>0d8#yTFps_j&D>zt@QNS>R> z1XGvp0qgQV5Pnl7&Xb#nJ|XUb1z$7FJ{9wgu_~P_J*yPt<RV)Y>H3*ur<P+aDcfg> z*p@16(dTieH>gO52R4^#u;V&CSt2CqBVAjnmMJikEz2X=)DOcsA5`Q~&^CDv55Z4A z$BHya;_E917)|n2=g`2cz-m$+>t;O8$mzGN6iFfl)v;0w!=q&!$^`|ji@rp>$dKtS z43DW6zppyOV-EJ)I1KhF7b@5LNuV3}nk}h>A~{P6&!|~&=@PRcI(U~~9YZr_o#AJI zeJt>`-rX@Q^@FbLJ6e}MmbqcL7YuLAHQbxBg%h*>srwUt+`j$^$w=&?BnmsG>b+_n zE?pi_76dt^7G$@^cUx5zDd7jXBIS}x7@bz*uF<a41K*_3AA5R5BI&bq(m3OoSvjV% z7-GBqBouV=$S}iRJM$+z!8CtHlGfksIw$o$1!?*0D497?8&*su<j}3PY*LRIb3fl_ zyv|5WcLtx}r|OZ9Q7R>rwL*74a?fXbPS(k>aWoj1(n#ilDNXW913fug|3lY$S>d1a z`XKdYZ|_a&Ab)mtPTTq)Zn<?(saO%dBLOh^lG8uPpA&sE{VzED?_;%pcUxs-QD^x( znkO_(Vzqrot5iq0p5UyNd_|w{BINU*$t*|n#!rB3{ET@dVJ6YNVXT(Ok*o?&#vj?f z7yV3|=tt~`X+*tgD@V=g!x(>-V)ILxzQ2%nE^@Ja!|dwMw_5Xkb9f^k<KVm=)1Ga8 z58o-+4anf7=u1G@blI@)O?=10W1+-EZmol*6?057$Ed&XEsxH6#_^Eq2?4J**JM<E z%afyD<QbWEYQAawn4`l-T+TO!mwJLHNz?<R$gSatH}}*Xy#6ET<c_LNsuOtj{xI)1 zRKlAC!)iwzSH%ScC{pBr8Q)__<R8&zQ|RN&ok>Ra`@+$GyK$)Iqm2*DJ15n4t%!Ci zQ^<(PZ|y((FqN;>@+qyjViF@U<%<~0gVcBQq}Ur?KaN(%yjsI<$%0QkSs{p|860#{ zPWHyTzV>YqarH2VZxBvAJ&8KLzoovuQ-WO0c^kKyE-{B*Yp~{RIAdFA5NYP=qgm#J zC=wEf6t(Ed_|pXC(nT@S!Es?j7PsQ~<FVI=1LtChi9R|%)J8wEG_NPb+q7g>11r<{ zgTBtmeiMQOB6Bjg8ilA#7MV=Zf|*PVofHg(z|cCF?7#H*6i=s)1AXiG1bdLCv<DeP z-!(pADz2$x=ZI-CsxJ#a`mD@pSSP<@6pB3o{Xp;AXD(zFq%>L8%cE}}XLfpMxVy|) zGwl$|4V=|?w?wiY?*D?V5fBFel;L+Y$dZvn--wSh&KNpG^ZzYs0~dWIS|!ld`#cjD zc*Ky=xjj^)aK$ZdvGGTVJ0!Bm81M@KlqNta+10zqW9+<<zYB}ec;A`tXF5$YuC8SE zV7109VWihoe3V$mA2$a!^C3u-%m|DX>gIHMggQ$?Cdk~P{A`u`lQjfC3U(#>$v7-U zV!vt2cv^={$Z!;N49W)#m)V~ETzeUZ@KX`kLhXW<eMHuN%IfVCS*vqUjCnl`64*7i zADdH(zA~+0wr-jYq;_(4QE^aMu*OE!OiU`Bo0}A3EQPIW$#V(4`@i2!2g}4T#ZD3* zWy$v+`I^3e#4UM>6>`&6wQyZZc?NzYEPds@e2V)LIY7MzV%5}YH+~Ooq>FFZ|Jj(X zxFQf4R#3%~A*bN@*+(<T5!r@KX7-U)b{)Zsu7mhZKDU;u9+hj+NNc`Q^Sqh0%6uyl zt(A|ee7r#S;lxlP#PMgWEX>#2nsL5epLbHRPP;iDO;;MxYSHSZiq&YNl8(+d+Z{h% z+Va(Zh#|A(NHmm86-wRw{F`Nu9ew%De7;*Mq>`a%1T=y@>NdeSlG$EeER_~lw=;Q| zChbtU93m??p9Q@Gizqu}56Zmt?*F3h+kX}KsphNoO(@7G9^4bAVmk>d0Sv&CA6Zc8 zB*y+HtKL+$3LO@~S8X?Oa1Pi!DP&?GiRV=Y%CT2X>z{K}u}HxR=R%HRQ-zcrE$&p+ z0KWKiQ^gOPdR*QE-*gXMU07vZ2CXq1SB%dm{y&C|h#AmdQGLrp3hS^s-VY;NO<dw* z!8+^8Dh#=)Cv#5%llP~A*WgK?Zb{J;d&MbY?e`*se$8L2**_J&7Ioo-Nc!p(a1Hp2 zeGU3zp1A9v_;|(nq9g<)KhT`xype=S(X~gmhP^*gvZJe2JIJy~rWC!z_)I?4kt_z= zsH+Znr_br0dXy^6+LZG!Z!tiC7+h~DEE>-lC)vVp;Y@(1LtH|_DW>PRdrf=^0kn9R z#ybHEz<mhRAI(jOk}V!WtwC~xWH?XbNWeEgNny=sP^*v-Qg9I5(84J6XcleLs&$rb zxp7qHO*Gn!gd2ryE=92u=%6<bH+NdiL?UFz!r@9L-C0`RSvy}@IPByXqWM_$XUS`B zZ}IYUoi|RozExM-$#kaHF3z{{3e-<}8~Y1*1?MTh*$9O~$!5K|dR8cRPMue8R&%Kr z^%WzpP5+Aj`!g(1(NT>zUWfFPbE9#JZz)BIM`>@wyR>)9J$_ed%7-JzYj0Hdw#WQC zYgHN>)yKFOxh4#pS5Ybxton?q+&0E4EbQX;C$8><<u_$KDG0Ez=11LJa~9My6V}xX zoP>(i`R<nRdu{E?c=*cq(EqQH`HaSiarKp716?gy59IpZ8ayGh=gusWaWVyN!#wxY zdntcTb;v**8S|F-L1!eldW3*N9FgK?B=^NR5Qm^g^DaZ-8!A_I{C88>n7$Iu9O05n z@bEtq&<4CD5_^Fu|0ZSKN7nl>k2|g?c{h&lj_Ai-{>RHS_E^XC8}*ERx=$q|ff^UE zHjV$fn0|oN4aI=sb5nNGbJa?J`+g<((*7HKOkrV_{WYzCikws9GtiarsG%Q(ZM-|^ zskC+M)OOpvC+xqu6vjwLcbro_jyScwHpMIH2E?}S5Uf_5v%4Nppm@Ko@CmRM>mOYc zjD*i2)!Gb$>!IjHf>Sf!XAZf(=8v`Si*E_UiN<kDD$spf^ImrKvKK)1fj&lPYT`JA zrL+NVJ^PS0m`ZwZEXsG0!>$w`Z3~*D*uMO~Zjo9<j)`M}H?L{>yk7<9?LXJ|CUIx9 z7L)!R7^%)Jus6fys>1CzZ`yCp+vohh<XiTi8#irH?=kz6TE_d|oxl5+aNPuHu|!t{ zxrwkN&<+^_I?WHPuhb);s87UpcxVY~BLJ9*zh>?ONPU1VaDOalb=J>zR(6(iu>`*T zlG;y&@{JS~#mc3|%biR-n#l~e278T6Cf87F&S^4SXe3wTr-5L+T-b4T+68K&Mnb97 z<wdQ&6;4L&$b2^z358?%Y9bzw9`D4P$#i^eYd(_Tv&@>Eq_4FeXUjADm_J0r(sm4N z*Q|?XX|!OD6zG|Z7`|cFA~V+wPtM4<-sg?<9t6)qup2HwhBM03k>_-qMRIhl`xr0o zjaI!U00>9BPnvVx6^<CW(ude38FMZN;m1ThX0+tL9&S^C4^|BEkID^T?BW~KQ}(j< zEj;EgVKyQp9mO4}Nt67~J#Sl;Y9imoZT_}5@>OS_Q!zF@-9Y3SY)juR&wjz`K}yGK zM0ow8<%6yz@Xh)`qPrNr%#U^61%|TMy;mOX4_HQEEnMDAua6AO|2x<-HLHs}jc;Mm z)N8);cB~Qj-?3dKS1T(%7C{-J>k|~2nG4L#`af5nD$0Wck`Lf542)47_JLRh)JY9a z&MFR4Gn1NMSk~FGO0->1Rx7#9s`DzP;;HUVteM}fMRSEr-bt?jC`>s!slZ09M=89w z<?UKDQG<-?AZ6v8Ws(%LW=;O{+Dd#Ww$-h~>+SkdR&}zuP(sB}dm<2=ZKvA{?N-}K z$5TtyrnO&k&hz=WliX|XDZ6}P3q+fxUFNFD(}#g;nT%Gf{rXTcb9ZCH;u%P>B(JZx zH!cTD8*P88`%osjb+FOiX!F0U$vk9^82u=M_wsX}=3=_VE+?_Nu_-}ZPfk6eLe`hb zdvjBQ*q)twaL>Mi1d`8lM*y$q9QUKDme@VtO{iM5?;PXCN%f;nSMPGV(Y{KF@yCq? zp5L{mQgQ3NyRf#lAl#F0yMR8-UqCcK&1zN0m0hr_OC1e#iiul#w2-X8w<B`OV}ZJ9 zRqCQ{^r@M1qHmeC(x)>?#9zygL}XE=fz$l0EZD&==o%t}@;t;Z@b#E4@Dubjsq$o) z1w2|W0_#ubP@ruhA5&Kz|9}wq%|1mx88akmq`6nYSZU~<0%}})*;?EK^=Y-Nb=NvP zDZtd$bzTD#h|!ejnXvlpEZJYXfWN_Zp>W)Z)HmzegvQFNZtU-GZ1npZlAF=#&{nZs zo{tGeLv#NtzcF2euqBuxdR#vNMj}L59iTy5r)*SJC-Cs{P^}75Xjrv#&Z28~U(2XR zj2_m=fFzten)Pdk=Jl^Ht~aIJ&NTB6=&b)SNFd%P9;+@H8Q85GE(Vdus<E9A`9~t{ zXtmXdM&V<NHd@u_{F}eEL(v5FPcXA{w_k4wScU^T$#gpL_Dvw1NT-u;FSO42EV#k= z_<Mp62~1FCK))XQrzUufLGr>&ST!fuqhbXHsH)cW?|d(B`SLx&JPD^)*T322_z(b= zul6VCDI^n$eI+jmWt%OS8RWWpOqq4{Q(fP~=fz4qOvVg#C@AUicy4-v*WC2j6ff9V z{Jazma~Ic=EVNuKP78YRUZR%=Vjb_&CVuhC^Bar1ng?J0T!y+?n8o)gi!yI$)Iu|c z5h${IllfA@rVz|Gq7f@D@wtjTg?$@nzTu$FTH@EUGfRuhhH!3qfx@<4aDB@ukrUTm zD!z8k&LFH)(bvVL20lLQ9*My3K}1V^b=Pm^9Kv-gI;ikxN~Wjr=6&mx{rLNYR$Z7; zmcOMDD65jT<s9|`$I_hhv(?oz6?t8P!|s^oXyi1_NvZTe2(>(4o~xsqxh^cZv<X67 z;lbfGt8sNYT%#nKFG-qoWVdf6RFU$vaEAqXsb}WdgQV*L;yJUT>WrFq+^O>X56(B_ ztbK!Iz=HEIH+aFOCZ_%TNQE+yFIE?EW_7DhbfYJwEjOGf5{C)^U(3_%QQd~;CNIA( zfXL92u{CmTJft5!yQB=sqAQg(2n30>{(<WaQ8Qz)WVjs*M@V`2z~zT~;aF5vNjX`J zhjj>@_Q-nT@#TeKXp-nQw?_FT5dhJk{Gq1ABPcfv&C4TGI08Smc)gqx0a{3=goJ~n zj>I}x3><#)VJU-Oh2bl7eKNzOmVxvEoWAZFCiSsB3_n)B%S{Pz>FRP%A5+vIKnQF` z`eJSdSS{$}nXySq6k}gK35*B2M${&$TEI{N1m3c%X{QdJ)~Tn{YMTwUorXngFc|L0 zB5I)^+Rsc2X)vwR`Y)|}yOE6%uzwZHs{KstWhC-4mRVR>S#cItm2YJ*Siu8i+HbhB zB`z#|Cg|Vq>NlB~kO<-C7L%=(%4Eu!4E-lHCZIfV`>(dHUdzOHdyzxRZZEDac)hr= zMkz;0c%&@`PbTZ1pan!{c5?-0gg4HBj)h82(8%`#_~A4-cG}N7Pj^~8bB`w<3)keM z>z$t8l@PyisRn)5h-6DT)Y?wJ?adctm=`2SoK(J6A-90*u!zf2!uiLVns=#2ao<L% z^Z^`j2ieQIfjgVQ!t`X$zQ~g2>g|x?7{}|aTDw;5RAt<_yx_80Kfw#~JHD^!_s_=k z0M%K-@=Nmhr|^84EpdkFJY7L7nA-_p!d|cH{2@PfcfCCf3x16R4uV{6<u4p^&0=Y3 zeQ9Us0`{dP87jikF3a8Jp8TcvYyzzi<_4J;NnI8^$sS1zheez(UhH(LRkK9)sC}i^ z^eFN9m$JH{l9?oDY-@0UB)l@b(aveQra96l6;_yy_IdZ5x}2<Ha-G0Su9eIVeJAqC z$;mlIJWu>SFtf=FeWh(m?bASS06`|$RLVK1kJZ$<YR#*NijzeK_iPKxqG$bz)gRiR z^j`H2hZok8bHFL&9L_iBN#AHB2vqZg^4+MX?sPqjeglA>a8`-PKw**&*TXEB>Ii`m zEXR_r+i5H>H`t+yEBh;oq0(W9SbrvlglyI1*ghXQfD^Bdt?^}P2UhWwUuz6KNY*36 z>+o-3E&R6JAD&?**ch_;$@GlQ9+xa~3Dt<Z7<-y^Nug&8eovB&#WN=FTHf(4T>p^p zlT9M(!PWB1BH`|1c*3tG5}kF~eYc)N<}XSFYc>DmT@DwmLKc~TCa#eE{7III`|cC3 zxPuG{8lF;Ndz*D@iAmP!Z<CSv@B8Y$|C|RvE7kbauSq10d}zsuzHwJTDDX6)>+;c* z+>N|+%vSngg8P?y))fLsUeN@d@Uk)vWN~5oYn|qa2xrF^V8N1`(El*>u%by{=M%a{ z^IFQ9jYC`##bNglei<RagDyg#>T<uO=9r|nbK}}oA!{G$?Yd_q9?WX2lin#M$K^<K z=O5{FtP<!0T!b@7Z%V4WFbT*OAWA-w3mGMiPh>oNME{w*o!nJ#wR}syRo|b{XWVFX zY;tN&yy8OC3tj-ci8#n5X$ROlW$rkH?Fc(5*e7LO*(OiSM4YZ*wP?Gy_5>#NC?`Ki z*5^5@+|4rXC+8+1$4B6f&B*8X@ny;96iXSOb3fLfs?OGFE~NHCxl>(`V4+d3Hx?*4 zK=pxK$SJX3s={tv?cXwHK+U|daESS^R5NdH51WxpvJq=UDE!uJ+MogWBbkXb?V8ya z(+B8Xv4(scd?+Umg|04Ich2iq7j^g3G^l1H>}RWIOqR=@TzIErS8x8^%7v5hP%f2= zq++3*|2P+lr6T+piYLRlBeOScj=4+~WM`Uerby1{9wskS_$a2ePeR74POfI~x;_Un z4GkLubDZ&S)DZ&=7s>8FVgP|7D|8Ba<?$t1F+05u|1GROS))uc*f*>&N6Ad5!*XT# zshOvi@90P|zC1ING|p?A@>Bd!Q)WDQy1z^%cvu)uh!isFgsRVDVKh9Qeuntb5gBK1 zIjuM`b$rJ=zvejH-)CN+*7JvLIQ@-H|GQjkG{AW;Id@-_`-fhQ&M|iYKb^aOm8tz` zc3dn~Jm(LvPbK*>u+y%$yjX_V-+ONi47pNj6UKXexVGRj+urunE!%(9Zd|O6*aQ2~ zUc!0R*EH9w^ZjDGDfwlqi+l0iYvNmL|CS@5s(8MkD?QI3Z$&%#F?o#tvE1dPAK=#n zKHnSf>dMp-q3y1VW))<)kwx;m{!oLZr5?=QJ!{?D*f1O2w;P7Sxl6@yQC|t(X5>Aa zRaw_u*MCz==~=(;T$KBL6)IkB@u#~_+z2wPU<F3{U)K%&_AMD#uI_)&uq}z48W~q} zKtvc?EL4CYJh^ktn4Qnq$-;2a-+zk&((7Gz4c^fH`Wknit3}k_rgLtVArEnA`Tq3X zL;s&@9TAJ^c6?uydMui$f0fJ_PGtmdmA*lX4?NE#-)aU*G8i#sWoGG8bM73G*v+Tt zzQ5<mTs8eMX$c~Bp}q%OIL78zDj_j@DNQB`xWZ+Bj}PD`rV>H|-xcwEKGbD$g%~=e z!n-FYyDCgV!RleG+%{vkU5*{<f!S^qHg~RloI9I^R+|9}Pjo4t9mX|(_p59k_JhOK zLjJ|to*BD)YcKMJ)k8_wJ=j}!E*jlM;AmGaurB4I7rPA=S{FlD+eKet1OB-i$1_sE zsE+_zG!Ju7MSOD;%)=?*1rrZ^;~uSb>EeZoRrV?>_Tq9^#n1NZEvwtA@1Id7;49++ z8~DHhrqh(7^;hu$z(1Evcbm;_TAeh(5e{UH6Pw@21@R|;mpA#t_2<=<2l*F_ig9ft z1HITB)quXkmu(101Ze@w^e@tsE|5SCmsmXb1zY9R+~Z$U`%d&hY;^k@S~`8DIsFj% z^1Hs@_x(GJN6`mm=|I&H%hiB=v@VFmHcN}>R`U6bt2Y_-N>r@tmz*bvRwT^dMGO;h zBlyvbG&85bINyme5GYbv4BMX_J~SFMeDA;bAN=2Rm5?+!fDAZEjen;85+T7}t*cid ztqZxoAT*QbkM6CWjrsh~wBJuM*YA_0ZZvCObvZ8XviNcpG2nmJD0j;ZY$fk|565cM zr;VT&t8wp3({hS&RkPi1&2x^+Hx~A~^64)(@G-x4UGXB{$9>FlOxZfQZXo>j&39f` zyfE&UP`f6l#>X&~F5U0RmF@8DE1UbRalhi%kuT|lD9luGU5~cFzhJH}=NYVBx5d2+ zw<q-Zf&?~2+a7lv;&Ll;I;$C5?k>kHIOz2TRP@iw4c(26vg@zcF;tVsA$}3#5&7)V z%zGQ!>E<)$9fWGy6Y9MO(QU0~EEl*)OE=!E%}eczmbvz2uon0!Ug-(R!Iq*vWRgp| zk)&%<5fJ?!vr3Gwz-fDM<dE->8=$wW9yWo0_b!|Zp?eX6eCx0IT<x~W^v&DV!`0?i zntIRV4#Rc6YIK{QlCStBeL_YOtASi(WDz1dOz@CLP2L^mawk{=6P5kB6nwWf)$7ec zTXHA;YtdLD@MS4CNQ*z$f0RR6A0DaL;5D8l{>wNru?in+g!nAQhv>UMhobELP$K&J z$Arz%rI?+a5B#HO9Vhi(e>-|qusiyfDbT=FG&Zn~tA^=UllE#L1~zeuGab0|0(sW6 zTM<F-LE;481boOD@$+P~&jF8vkfFF9*Uv4<+7nt(iXzU65vs|{guu+zV5is;^VA3( z;kB|lowMDBcw6fPQ<}SHG&q?_C7R7fO}Rn<%|x|jn~mX8)&8cjd)6U3gR-0I$=AvE zPF52cv7(S7B5%YElgvW+;caP%pexJw^;-RXZO8iwt4-hcPuzd(pP8U;7LWS-1kxnV zHZwtXlK+w5;sO)1$cw4qqu|z2Vm{wHIy&#Gh0TP0$ps6|cy;~MDXq8r&gw=SO!INv zPT;=UeYM_JR2<K@)So+Rxf}%`iA;1=>BzarF8R-j+4ZWk5&~4WccjAE;@g&5%r0ft ztG2VuPJ$IOcBJ3U+GjW!p6VP)gKq-aIxFr;0rP1b@Qew^e5J0OI#Z)hI>5(ctk9Fj zk`plq9$<{Ph9tUzkh)T^sb^`YLZMVS)5w&`aEgXvx%7NG7mqkEv*OXrqA|)_)@t2` z205=v&E(2qeosD5#?s-JcErvft|sS8sl@Ut6?wH{CsOJU?I@W`p-?0hiiShr0z#2k zgw%^{DQ9Pwa>X3~Z$Xt_XG_Uu2z@A-&6Tq8SlSMUoa0b4S<0sJkz{?V(b#N6Bas6A zCIbAM;7h-ZS05mw>4eWe`P3&OnAI+@wd5RiofFW*heg#qT{^8hhftCIY<`g-)p_BC z3RTO_3j~tr9{-ql!yn<H{T^pxeUGsA=%o{z88oxh9h+d3Tj`C#2LGiD3wG?5dPVgR zb?l_tDzpj2<zH?<>N42qok~$XJ~>jyZD83{N2RUro^y?d+Uxu|D~!%SfBdCyZaQdB zQ`{}07XWFwy*6T&oT*lRC+A#jyH?3wiJH7M`#-!kdQ{?cec!Wr<U_he-_v2B8i?aN zB1c8sqvMQ=xhe83re>eceesk!^$e@=IoLm@7;96L!LctGELW2MiNBk!q>l^PBj+d- zQt2b`9I0b>mr7I1;>he8)XXBFlKQZ0@hDx%9FZlRpo$HpFOH7bm8qo7E+=XHi6!G( zHuY762Ur+6bR~d0QCxJs#!VZ4&|_1;W~4gFFrxiZxK!ldGmM5&GZ*Q|Kiu=$pCZo! zU4wYrG;1ZYO^AG;jFC(WYwoFU?x~a+nSv`vN*pF^>xF8*+)(jWr*hoh-&kFVCsbsQ zS>9+7@2`eb<(<oru=&DzCTSvz^POsazNt!Z=RnrAvbwP^9vuqHzvN?iKCBncW*`G6 zSy<cMU&y$#$0o%}n4Ei*RKS24$AEr63$lirRrog2#p1NxPP;|8HK$^&_A=|zMmxW` zvzc#KPtH#?jUr3&o`attleFY_u(Y<^ZY?fy^xAOH&KC+CTdxmx%tI7Uu$RXyj#XK& zJ&fHaGInR~s)2s(pa}T9D(J*%D0LnlHvF9t#{_hW$JS;zydFtJh7Fsibp4_9i?IV_ z9Ti=Ks|kMyP6wui-gqokVWlrACMs23#Z@-&b>Y4d1gT_WSSY4~C>8b8)9o?tK!)AZ z5iaU!xhGR-$hc8we@$me>XM1?e8Z@m-6{<Cu{?!<f<7(wT(IrcsjWic%xO6rJ%7`? za@SpZr0s&rLM^}>IfhpjJNMR2_^Z_(NjG=h32ef?Y7IA_ci!7~#A$gZab(G%xd!Jp zIM)P7{%NyRM<~sSO^ebbu}>-4)$;<Qn1uEMete4ls2W99&g6*I{uP0fFngG5e1kvz z8^H%kg_&{2r8R2_e%Pw2qB`6vy}0oI1Q1-0$XEU7RJG1jOh3PGLgsrSm9M`kP|9&- z-}wHZA!mcJ==OQmr0^8y<w=@nSPX6jwm>dOB*drY9(`r$%5&48-e-ejp8#-^**iP= zKp^q}8lKK&6-Ss_*qG(l-p;j(UEl6+H{^Gv9LvS?gr_pG!frEP&mW~W60uA)o=cUS zjBB+)4Yg?859)Qf+TX4<`FgD!4MorkEBmQNG*M03rA+D|nNGkH;eWY6-A!%qEp$yr zq{zB?-=V)hf^*b(z!}X+i=S`gUAFxoxwV@ZvBg->V(k!5w9v=PFD=O=wrFB=ze;5B zF-&&_az5yDsZb#*?S1i=dj_D{Az2_-xgcLW_B<~*oLq%L%tLXpGj?!9<NE3SoXLdD zE{aWv(*!R+P7_>>M-fqeW2%Uf%=>HMLk0AMorhyX9NI#e%}KPUpd|i6P4jDXX7jr$ z^e&75J@0+b0>^MsTA~lhP#IUO*2felOJO{@y0A=XnP<)kb<asBWZgj14oE62{8>Wq zg4h%fOc41gd^kvN(R#ihofR=2X|wRNA~`Ri+LMP=%vb9kr%Jubvfge-o%1C)EfN%3 zOXqckdd5MOQgbIuWdCi$?XulIt#FPd3D#)6pSkE^awG!)zpjKo<)zRmsgbMy4Y8`< zb`>Z@DIF^>f$4A#>)im|;QvH7(5zJ4#x%iq5%%b9I9(_B`SR(kns_`BP<AHaY(-y2 zoek9C*EZ3|i?~X})mbWQ4^|?l5&LfvNuGo+9lNZi3gX!+q)6#!mPy~;Z11$>ngwQ{ za0*O3kjT6FxgSAkhL_~gtTi6dlWE+GR}(hbt)&NjXZJ9z_F~aowwNoX(reLb_MI<V zjjk<JmI^Kw>~EL%UpkQQMPCLezLm@rYOR$mRxGEV$!0UikebSzY&ElyflHPqeZiPE z`4AD~jkdK}DDJf6v`CQ8g#Hh%F`laZm>rN4v8pb$*2UE&qFdHq`4i8U+_e21={Dal zEpD_A+h%2WE2X2nT}I66e))%iO5o4XB_DtQ{mhkJ!ml@W|7nu9Bpvhw^bnQn<{nKT zbsj&pE}SK`y!Yk}+CXHBfi!Ha_ZJ&4d+_`eON^yn#QswiB9UoXm2oXQE6%G#FS?I0 zR8z_Q%j#mZ7cHvt-g>*K&f4pHi}H+QeB<vS4k<bKsXOde&y1x~Hf52=rspKDmCnFd zV=QBF(`?Fg9WoLi=G(J-A(jFO;0FF|Gy&t12`XM4n3#Z~9PCxA9HzUeHqs{nd{E=k zCj@-ZSJiz1;=uYg_F&QvN0wG)=^J4o9Jk9$a#zkme|@Q;PNIuT#pt24gvt#7RowG$ z_Woj#J9S?6Vhc+}E62?@7EzU#oeQbU%=kDFM?3-Bwu&d5-I4wf4TS#Cs|s5BeT+~_ zM9yeY=jOK|`ef1>`xCeZ(~PGb>e=*yKcX~g3zRPew9mn+%b&KyN<^oCzht#qm4S1k zqTMAT3c1I3cs5$*>Rj`WLCkn@Sym*C71K)FeX~ir=7dmqFpWo3%tX2eyjQ<iJ2^Y4 z70Y}3{ruYIdaj6Ht(GGGD5ygd${C>9suY??nhHJtO|e$5*NUZ5X*E|UaJb~{GRj5V z$~Q#xQZ!Kh(M?x#Npdr$Q2xi~CMhm1zBPW0Gm6Lsd@Q`u5*tDo^Dbdb`OSHd^Zthf ziTQ+6>V=0SDC1Z8n?NS;E9huZ(FrF!uz^1juqW<~Pe(#T-(_e{BZ8;<<yLEBVPQeF zR92;TcF%dpVdwa@T7LCr%Xz)6{!l*NX!-lQJIK`+&N^7AH!6Al%30#m*cSaRa?8W1 z#Tbb{xMNm$YncDOECG_@&6fDwAJZP##iWC@wyENHct}j!WvuH_uRY^ETqNn6$jgDx z<wfiD7#l{U^d$V#MddzHQQgPR|1lN`ycJ*8lR39|>wE7Xsr98=yM0tYYPajW*Ix3z zwDhumw4vtT*8aVXcCEd1RC7P|j;bH6I~#AcJ;$2poCIaf3lW15G^6N2o>cZvNOiJV z+#4_x!zzq4_$)XL1ZI5BKQrbxF0T9DyK?`wkLVH1gR|OBZ#P@JSY9~D)hJ#cPKU`f z+gNexiEXhP2#xDtBlK+g&#Jv^jD^cOUK<8XhcVJz=(d_G$xNtELQf(;EZ4~RAl`&T z2Jg}v3gHrq9naDE=VO`RQ&w)NJu67NiGZK~Gh?&-n&5w6ZW61<=p$DfACdDOc**#I zn(SrP**!aR_Hxeg2DW%smHDf1Gp}*DZ=JS>iNJs7>}@cpjy9aV?AduvmHC27ZKzW2 z{ES2gsPbCnVV7TQ;!%|EFx*DQn~milbz*#)ZsQ4V|0j>}xcDWZR^6K1OjMWtZ1G@$ z?EkYZ<=dFQQHST5>L6Y_dYYkF$}tvhZPB(yEg`)IXe^3&{Hf@H3qltpCpDDE3yfO+ zQZmpUWg%e%I5#(oUvBydh!pV%u|Z4ytLoL>Zu_vAEG%c7qii&uY91_+D;8((c{ZER zu4dk}cdettRn`EXfDsw!fp7SHZ|R_!ibu1~QD(W2Y#z3E_tdN1-S(TzDqqW<Q%<<C zdWd9{FLjwodhIrRfU`QE0aO6>3xLWH+I@l^dSBgtVBZ5Y^W-s0$L!oAJcv(l`HJ*F zd;fuYY9-r?i_vYTx1(|t7!3ko-dDLDr?(wlTx>6H>~;4x)V9pyRMOc~rKH+uvzGL# zFI3}AvWIsV`rlsijkEQl+S^;_D~qviH@4`kF<>Jbn-N({T>V1URw7NPRyTaY1S7!> zO%mo3HF#8NSa9yEXmW?N(P0AM<Bded?%~?m+1eq<J2X4SkLWSaG%sNg3*YyVpSh@) zEvj=4SZn>%SM^ER$)UjCFjdv|a0f}eDe94^MvjilIq<WCoB0*S;6s@!0cb|1g<1rS z?IS;~J~;D1yHO}r=<=aHd5n=iHKwekBj-HUiL!_us8Ehm4hB9Fv3!GC68^K(WYV_T zuqb%yM2}R2L(xw1kN~LSznE8uxPeo-uvM{U^EJHC^`v~OmAo7z<y)<!|6txBFlnou z3)|`I`+X4H4g3{WHko)*^A)Zh|K!XQ-oJu0{*lzM20xP-COgg%Fc~zURL43^+39|! z)EiR6@vkz&M8`P>2F#+9?pP=J<xD@b$MUQBLtG!}BYHtlS9<Chw2!!?g{DWZv=}(L z)B^gU#Bgg#a<yCjZfji#;@4Y3jqC3=e=C~|03I9E<dgLlC^j6Kg6w2l7J89Wn`3ME zXM_hM<tuPc;)G%J`Zef__=JlMGwZv$dNN3=F%pesX5M%{fnu#)bxw+g1Os3R!gRQO z<ebGiF_shaob08O_P!Gz<d|#im#O&_1otW1mztMe4=f5PaoWL0BcKi_gbb-rH<=lb zjl6uuQ>zYmYF6?XS9RQfsL$d)x`8j1vf`<EE!zwqp}`i5c7V0wy>tm!%npMk6qmce zndD{phT8hm$qIg$-wYs-upi@IYgS?->ap-Juz^jaqb`9NKQO$&1bVy9cO*Pc2K(G3 zn25PCU=bTmchR}Hz$<&vK|>@BEwa@abY4e}j>50>Z)?#&&{TEN@@;Dp7IbadSX_MP zTU#A0E)G`LG+x#J&hc#q{};Q2ruK=Btw~7q%LhtgpHHTq%sl;EeFDwr)8PMn$s}Ao z1m6Hi*79A3%QnV3FYBB?51j=8er=cau62fk*2{fkV{!ZZ>fCsRVc?!2$NEWNPEp3e zoIH4zzdYTwj#t_judFmmXea;kp4x2`>xcWi)W()t64!C&osXL2ot2d>t7K>NXZuAh zJAB~1sMi`|<+)zvMXwcw5)6aDiv{vv&kt)LzsG8a)<Xk<;2BX-dcZBL9bU<y5Wdc^ z*i#dHAB2tZZPQxVti;;noZ`ZhJLq;<l?1UizY#3Onwf@k8mnZPl|Y-VDuzoQN8&S4 zoi)#m(<4hTZB^4*865K)!`@nK-n(v4_yohg#O>=EXr+5mo({pjp3v;bWn1e3jih9t z=?ivP)<>^LBczU`xfa@)cdfuK*SfE5ln01_aS7}pBy?O6n*Rs*;;!#J&<&UKPKRr> z*2(zCFVSsh%9mkjgs9W4^<T-?#rd=`FWNEamtM}wUEMU-ly&55Y_xx-b>Po=N<twk zIb7%jVkC+#hTZPRq=u_r>ttioFc9ed_$%VMSY>rFR$cK|hTX;*#pAlM^DV0ubsDwB z#^OTrxVjpzr0jA%yck)lTP0QO*#AXJe`PUtx!Z2|Q-eMZXP>GUsHd?P%@<qISSY+) zaYA*bMMt;sOMDYQrH%J>EX?&If9Ai@8H_7hN#z;cN=o3l28&WzlNz>n{c!A_Q*n+P zODl`5(_%YH11k#~^J)iA|DR@bEEsTrH#pAOpRZ(deY;s+j-?hVP88t!5#1*;!T}E# zlrb)9^pxcr<7p|JPtkimqB!@SjN|^PCY-%9@emDthpKUWtQv<ngWfoG80yt)g|dn0 zc}<gE=5i{dc3yK{ecvYcPb%<`cQC{Am-+9Sh{yp=fdVWCSp7JN96vMoi}A0lA1QzL zE|!!2xp-mE`wR_Lt!y<Hvq`NI^J}%DT1Tq->Xp+wa@H$$e9d|7_@XO&0H67X57f0= zf*>2DrsJ<MACjynX*_mwz7Z6MRAIxlfv}R*EC4b?&{6V2ucPqZ<I!DujeC6G&v$0D z8~f&awbsi7VCxX)q0Xr#!3;uvw%tF4rbMhn2-e=-cndu1X}n-fK9zr$L=DUqSzDY! z%tI_vDUih)F57aSWP@MD2}~Zh_&4KM_xc4Ei*VBX4k&g(tS~Vp-Z}%)7g#<RX7i4p z$!rJ&*iW!W-Y4*CBfuZSP4DiJz4GF#p9SU7a9@5AdeR))Ccgz%i`juLAzdJQn)Z2* z%2)zTHV27kmE-&<V0^ucMuwHk{Yh0ja*sKTTyHRqd|YbMQ=F2o;MCNK$-O4`t*-9- zhe)|mFb&(+!EwE<t86_HjJAF~;Rdc>Vqcs8(kO3R8n6HHSj@k>4-?c3`L4qA_N&aN z*j3L<)iH0BX?79OxgSg9<1u>o?SVGo4!94Dt_i-j5X`q;_X>knuMlXB4lt>0inH<d zu%Zv^t)Cw(oE3Wh^#adE#*q6@M&8|n3aKD^x?r*lCgmD4ZZgzZ)iv0gxl9!`lxvyW zAS$3-5xBR2|7A;jvGNlC4IppuDHva9DqTE0;F|>Yt-W8`PbB&b!=U??xKH3A2g$MW z>NejJ=8*&S@!e*y2u6zdkkNl+{OfU`V~SYn_wiHysv7hC+$VgAe<Cy&fFATb(O7OR z_oRl|=+pWA_id5ew#n_k-6^1FkYM5c?u+W<VyM4GFC=l|?rrr_N>boI(unnL@Zl)c z+K{K@=x>XjssFknt|YWN=(%%)tTV9jJWtUn;ZX3wp<oyk@P^#g+9_H%!E+gHp|pfn zfHNJ|?8DJ!2n3&tNymxb&B*lGtMN>aeL%7^0wkLZ9oDt&1od$P`D28~^i{9jDfWjW z9XKQhV5BQe_vy|XSq$K}65uGEM|atX%j-_$Q0_#+)4IPH-)^o+5Pbg+SO<QO`dfb> zm5TH|J)RBRp9NPBvz6F0Xs%|>a_{ViU|K#C#Ql%2?`-zT^el5)Zu2*QwU|4c6}%rv zdc5yveqS@v>b*9tl0}uNXm0VWS76>QteG1eY@9c{fu`I?-|?NhqvR*q<k?xX`MRY? z0xO?;v)pB&*K!BUd6OYwZXd-&ct8r(m^?rk_nTur?5T+MXUMuIYr#L%6-ch0&Md9I zPcf3Q*{etBZE?%!Cv)x{PQz#<@@v-2fmvBZyoagW2Q?`6BHhh+Fx9HQ-Iu%Z7kWcv z7KLtl>F~}%;I)2K=Z?=GNoM+kezjUCxHBSHG6NC1rH$mpeyeJpEH^7NVkey1X^9yo z&sUVuOtQJBCq{l4yMD-wTjs^PP5i|rcV0|?+q^K+OH};3<_B^}3$b^c?T%R@pJAmT zh<=G{lKeeMHU|T3Z1#?8s_aSo#QT5ORja4%Q~v8i1gDBlhbZA*zt2-1m2Q7Pj?a4% zK_mo^5CRl4Unj`fpLDlBB-==ZL}Ama8%Zb+CdtVW)BUY>P0IH1@OY@_pw+WmjlnX{ z_)6B9<<x(qI>%kgigk|K_4fr|zVSx*V71^|b>7UICx55dv#RtsCF@ctl_K3T)Ogk0 zjuOvvSiAmvy>^vZ8a((0b;M?gP8)s)#<D;h(Y41sh!(gsyg5X)#Yp(ER8(<s6@=g< zuq~7j{;woCZ)eBy+4gSOCa#f)9F<CmSj6c@Vu@1eD3T!7V~2Ndf39kLUM_l{tFPrW z7dyxJWmm&-3X6rqp=vIE8i__Dr}11h6vjs%iHBF+1Dxa00}@#|K&3c9>)XaRpC{wt zKj4l@NP>wg_?rsa8IeXjUV`&u?0EEJVSJtC?dkUwz&l;K1a?tkYV6=k4{n28Fh`6l z*xt80k#IX4TTka=k??sq63b@RW9*4^Z11B?_PvkRul=gcVbi$0t!MEB^%GyjLiuEL zE6l&GXfhvSN2HO+c^{=Bw?DF8jk;-x3*kOrYr6B?=qr*ZEA?JM;gU4tl};iZQR^hk zZP8N1L<*!#D%9!V0ybt}z?<F7^T2b-(AL>eAjt+ksHu$R!ZAkIxWZ<jYS{ju|7mh+ zJcyRzG%jA0w$vd$pq~h`A`kY%SwB5;w$1lGLl*soSjpm{(>_BJLm+<vzHsU3IqDOc z4iESmrQud6WYx+qB{wxR?8?T=vQ@X&UaqaFdj-`<GF2KSfjP8dNoTvraYbh<9-m)Z zd$F#s>DqZn2iiJf++CY=L0xF>wi!2KBYvzsIZ<rHM?Q=;Sp393G^Y#VtJyl1dT(0K z@@=Z<wqQrLLBKx0c}`LA-uBWM_KiKYO<eZEsZ;nu97ovm#9Sr!Q)-TjJuig<A4^B@ z`xC0B>0p_fCekXAN8&4^Q9Zw}y4f!3#CTi?7`eW6YaiG@5Ca`{a+9(O?M-|n8}md5 z{3K(y*58R2h5y%SEhZ<+ZA%cZ@07F!pEM5Xn>x%7l?!%&EKK_`NT(LpxEb!|;$&QR zhMmCI=31jyG1mp%it5Y#o495dAIcaus>$*u6N02k{Pwu6<#rj*{2;Zil8Ys$()+>c zB60E(--*xyD7-f!g-JXbw6!%OS>75?#f{_cX0;M0mN;dJ65#;{aH7>|-p%uH@sh@F zCW}g8Fp5{1A0GXf@^7|Pct;&0e|Iilw(ZOgrCN$@)mLxZ&KvoFUFHLI>=aeM?G$B9 zz5B*K0@ozx^(k=+pswpTjDPV53%Jv~+ut1Zj-W;E$Xi-}_gQeCKDsB!tB-7080IEj zl!to!>xyM`D&SN5QX|(XoSp9i)TTUdM@9X<Gl~~=*yEhh5gqfReCNB{s1NjpUpDpJ zzW44qT#^rEHPzfFcmSkQy?t+h6GBuK9QnN4r1eYOK)kY;tb7$?Lu_z)h9A4yhAV|c zqmb7OVVG(6XJYKW3KI3kM8>EMbO|`T!NuYD%<sfJNP%Yqv^k+wAz8R~?(E5R&8rEZ zMC%zw?q6}YiPa^x{nd-dOcJg9*5b`<Lp90MC-flzcSaun<hitht-$}lUEq&~GcZDk zgJ&*rzefV<dT4?3QtE}X(QH~ZRavsi?cwflx9u;a3(d;G-cqbwX%4K20(co~4tupF zKD5gEh~~w7r4(!L9aNinZL9rJFctX6jC3D-N<`2k9nJd@R`Pb+pNo(yhs)}$s-k7* zj0C5$vr4!u`cL^RN)Svf@?k|qz2B>uOjMt{6^wBoAc1bR-M=^3zunrN-gTpSx-b4H zxJ3H`k}+@kV$yWQ9c}fx<mjqHKG<~2@;c|}s&77gFJn9t6DROIS8is5)?AR~CP*L{ zHbFGZV24T!LA)CB9;o3r#l<R#p}O)nIp;1<$(8d+%xo`qfaNV2>8y2RQH!HZ#)bG< zuVWQFFFCVNOR%1L4UoK8$>oM~^!j>D3rZ<?BWzl5GdAJcU19B8pEc$cysLA{FA5nE zwRL>KlEPYdc3Q#pUAc=FcGCH#os)V$byaEoycIYqHeXzx>gP@V5xO2YG!ciQ(RuUj z*1MdZBj^QzSGZ0j=C12aDlwS@&xK4}d=oO$WSZQ3FXD#~7pL@#%Y|$)gRri2a8c&D z3SiXXZV;b?p>TxKx+XDb!P&j{Jq>=P+2hLMfF2cVtM7kH=I1@%Giv%s4nH$?hG)RC z^T%SITSvn*fNK#;x@otMm8|^<HGYp2<)f?P2DD%1ypbOdbmf=__r@LwU~@K@^jUL{ zWObW-Y6Eh30;eIW<5ePrRCf?Wm|=a@rB-x4x{y1$X$}tpzU5{jw|MZX!Ls5Eylqr~ z<(>UZzSAwlGv&2RJPETCrPofD)*6ecZ0A+2wwXy#b0t>HP`K27*1-wUcy+LtO9*3d z&D*{_*jTFN%W)W>Vl{FmNDGgolht;<v;y8Co{yH&r9?E72t`SvXeN^GGjs3vF?R2N zN-qLg#pCPNyOCSccPW*(#bd3b;_f|}f->wP-gH+lNe=B~kgVuAG?wh_Q+P_p9{KIf zMmd$|4imBTN~Qc_A)SPyW8ol^L`!C8s#8qHa+@!^s_}u|8m3$8#Z2i`rPoU@^_FwA zUi!OYu9Qeq!v_67&jqsae5TwkWLu>K`5sXU+hod=xWQ0vt@xKe(1n@xmnEVBr=?6$ zwp3cSq@Tq1S0Z+_sbd4eF8C#$<KGtx5^F-NsUNCI3C4=61JlAK@cH{n>m}kY!Sxd` zkon(Gv-%jkK^*V$X8%ad>0>ZI>0=o12wW6<Rin(~<z+*DlNu}#I$P&Al)7%31BvV$ zuRj-fESRg!U-lb-?nbZZjSXUctot7!mxT372vE_z#BO+hiv&ZTN;s#i#-|j#M8@6v zD@mnE{h9R)Ns7cl=Ah{b6%}H}?2+r*G6ywIK`PPSm-S{sBjlgV&0JlVnh0R#y;js( z!ba_L_KWuX=yfkQRDWssl3iC94+L9qR3qOib@!Ux?)or4a(&TReuB;-b!Q}Q@O{C$ zU?FMGtsg0)OXN|qg9pWLQ`tCx?~6x_?_U$&czf}+!oouJvrehH-7eJYg|&kY2&(0L zqh46-b{CgRjn2+b#7AOY{{8A%w?kFl&f(hr{_5+^R;Sw8KJV5m3#*G8BIjHjrio}s z+j5d+D$OHjk=B_O5}z1pok@|C3d~~odhG<7FB*>@$VcmKHL&ltv*R{0s@vA~nyShJ z`zJ%33&U<J&>I%q_U=~Og+}Ma+Ro0}E9XtU(pp*AoL{bXx@X<thKN+nf&LGI{lLHQ z{g=M~4GCl9=B(tn0g9g$VA$9+;*_mfh|oV#cprlIrxB&RizI!h_h7us2bks1%90K9 zLjebCZZ4A0^r_~)_!6Z|>f398@E1>~MLiR9UvE&`MPFhTGl~rX<UgHzLhv04NAl6* zFCTNd$5gVA!om9IvElxrM9*aOhjLQA<5TsCHA#JMnxV#`!G9J`r<MwoM-SPRbPTUY zIYZ3T4kcsFLfbiR7n&67vO}?Gri`~EmM+_2I~*-6MiUW4dM+BvWg_8lG@XbNxXeUS zkwUuME2WF!R3uYL#gJ*_sD-jQm~U58g;c_}W7$R_zL3nX<&z8XLOmA?B~tlvII>$w zL~J`=PUa(#WH=N@)Kj!QjOQgvov_Bz&SEqlr72-M5`qF3nP^AysZyLXmMY8Pu>E)O zM6_7v79v2p)A>R=V;8fH5?uSmVsar@YUJ~FCSAy<!FjXDB<cl{=pyk#HX2TFQ;9ef z<z(H(AR&y$$*_y@haHN?knDVl1Sa2(?A2(*j)se{p+$;eD0mB0G=saOwgR~)3tu*t zN+&{mBeGoMV#QP<*NPU)R9{&RlM-mhLg`eTE{@psYNNmv!i+JAbr@gAj~HRB*rcz) zZ~%+sk9fQQyReF8=e}=A$pTs4G=lrV<d3b%G2?6eR45W2s(={3VmFtIxk2<e*6*gf znMywTDqE(=;xRQ9%h^}ad?myFe(X3p$Q8@aF`dPVZfxgk^U3vau99t(oBPq@&~h=A zY~=;OlW!$c#pTd(biY|{WGlJwdUC#&-$uT8?H<ENBUY{;DPa|znVkR_8y%bR&jdbJ zsQ=V#9t+MqA|5<9IWea02Yyq=Il1MNpQ@QBGgicxz>l4<FN#a;T6dUVR9Tf>++S$s zb80u6Zw^7z0q87Js<XS0%pK3GwfW;*a>3~iD;MhA+K0A3GA#Uzn%B_84EFn~h6kfd z^sG~_carC23dY9^DQ9)jf8IVzF4ns7c(=BgJZmQq2_+|F&cU+~{rC|19mksedm^3i zs7cu4?}J1Dt2Bc_CTgefi9A#@dLKJn=LMkw3CN&$hzfm7kStxI%bYaX%||5tgAXk? z>{o@#rRFj%frew<Yuk&mEbhgZD?2zMbyf&}{J*5VU1($Ln&+o?X~|Y~tIv_ks<O@; zrH;I<Dr?i~bF_D<%IXvKJ{nqSltfHKkJ1q{nvT*@W<(=`s1b>1bfF8=n87)i#x$l8 zjW0|if-X!jgBircAx^~v)0o5wCKQcH>cVt<VRjtwu98;e_q^|t?E2XI?4I$5K9-i& zdOx4<=l_)a_1v|IKNr4<s4r2|gJR9q6Gbn*M=OQPkg)*`#U@6nDdBPMKL}DrS1d{T zmhya4mQv<IHdP5EOE=p~Bz;(l{?|J1jPJ(xH%OB{u0F3dCMn+R1*Q__iTm$o>Wf(= z0f=&&2a6A^2;o*CqJ1wSH<@GQ#~u_obzUE&6LHJ0www*C?zGgV{ZfUUi??Oxg3~uH z#J{YX`#b&dtA>@ccUt2k|IVGh36i?xn31z49YaCE{fP1|Zb-51nfx@s$fZvbWFq}~ zDSD2LOSx~;D_FG9aLtpo9zVUNwgi07Yub<G>TemtI~NuE&Wta^IQ<%JOyG<E9Z#0k zqN(bvKx>jA6-2JSubye@%X$aYNhmk5)UXNu1WW~s`<IYwn47MUtui~Cc5i!ob8DM; z^i0cE)p(+uiX>72JAJ-k57xK0?0hz}Q`=1CGTC@K5J-<(li{}?`LA{lFKqv%YF(_Z zJFhmZ%s9OTwTl!JcDi#ju>FU<&H>dK{MK<XmoC_`P#~VGOS<D^YK%^U9-(y;;nY}O zksug)5ul8TL8_CYNj*YEL}kHT0xj^oCdSGGC78$JU}(WpMnu39v}*BF6`cid=;_>y zJYe;bm$Og@{X7Rx1dC`kv@kd0U9&D)t!_1u2)=fXhlzMQ_^J?!>=)u#;r+$rFpQcI z-7gfpy>Z^(9j*p9PljRtxNB_$gX5;PZl?*_>IAOHmTg;sOxkJsDb!ufs0?$Y*MrH4 z`5ioF|B(lKotOfpxV2``hJoIpwVHRszjY!M0<w^1QH?a)=iM|J4!U4Wz1a8M7ue(~ z`9Ln-UP~m_+VNZ<Ux5@?i-Fvox05q+fnt@~I@-+VePy1<?z8XZW}~<o$(B>A8=1_; zYO0)tV(0+N)o`(r+32QAIrj+X<x1)9My65>uL2M0S_O@5@U085srPyY8*Lx!+aein zSv;nbk(j&F*Eu~D(@uIPeWTp984UDtY{#Nv@wMAApzGDbEv$yyFSqos{Yr+RFd#Xh zLA+R@`i{65F>m@ZSUOk3<8$3|{o0D^*VGA;Ge(5L%QO8lpAMlY4b^ZiNYBZISIwuB zd6vLp^d9M<&Ixws#miPCxy_Q2CdM3XG@-{d|E?h#=~7Jfn+;fN4nAqjyjnr2sq2v_ zFFCJ}Z0m)bcD6Z|Q-ld?V>LD#?a_EI0fwf@8blT@VILQK{Des9QmbZSJ`oQOZXM_Y zVQ*hbau9ZMywG0}1SiA1JY8T7-$kR7%t%Y5tyw~}v5|Lx{4Ve!I6e%OQ_?_~p=q`K zH;p$W3dLym<>+9uQ7yDP7`KTB&ngihtV}Xf%e^HPcWBzKdEzgjpML<YGqn-SwBLg# zdMWLWu<K?8qE&ph{DtH#J&)loAORkMU20QfaaeiirG2@KH{-;ko&5RHUaKn^QjJO^ zl@GU81(nG=T5W~%$#A8StT&al*~qn{>U?yPE!d@IJt2|t>o-+7qXo$-3k3OSu<IPP z!pVG?B>!%E_t^08FK1r)1QW$C5o7l(%$|>bY+*)IPv;kBYU6@))K<IR#GCf+?#`}L z*rsxIRh?V^$GD&}ZKvQ(^c64!PFX5kh>u8kh>_7GZ|e(u?H={yaZF0>LN0tZ;<P5} z%h(CbF*!uq-*U{S-^YAlWxNly_9W&j96Be?>yt=^toAFqR60kp&BlVM@W6>3MUnu6 zUs}P#P_P|{he*4~h%F#Q`e7jya2lVeU}F7sD-z23BiXb+AC9aBbE&{Ng?Ae1tRL^5 zKbPtF)9*YXe_+3Ehba)%IQA#(p`_qAyYE+Ex$DC)`DzAD!!zfb2`(UTc+qzr&pmz~ zTqdFNVN@as1R?Pb5~A9zRGgyZmY;Q<-LBnniWO4hd8dj5rmq8jE_iV6x_qHeI-?rI z&h1%m&lGR08-1n<9|?*ve|kQW*mNbEO*Cy#e;%`cMAs&cUuSS&fL``0D_>9t#b!Yb z3$XAwLgA}qvX<PiPBP=2OkTAw3r?=!y^u#cF6nYAp4{LJCoLzC+|ri)Dsth>%qsl; z9=R(&L*fz-fLLsajhc{*=VXMDA|wFxAVGkPW&#03eqZrc#zk^ctgEEDFxhCT5==TZ zkWolcE7dOcLH^%slMu4E|CvZI(8L+)Wog4{QQ*Z74#c$)^+t2Gw}Cy*cE2FJ*Nqbh zVd?mp=eJp%|DgxtB=$bd(S9OwlgqH4`{dxF@Hky88liUb(GxGHiEreAnim6sDBCL& zVm~G8c7LN$&Jv~UxAB_Tp>QG;EsVDh$|?W2<WE%&UawZ;LEI_+a3q<j)PYksc2~kF zqN!Al-~vc0vDQ}BWPy8M#3Jbg!eVSNhzpiUI2st_66tgzHz;RoDGtZtd`_)s36FY* zv4L<yk8dE?%B2P-CEQI67r89#8~BbHl{;P=N!^mUnP0&NBK8>mz2X6&v-VN%O>e6o zwXUM$R@U0jI{unfsGh3hj*}iATNE5V2H~mZq}0u3Z_BdRo#DE*)pkNHis)=rtooa? zUXL{*dK@$zUzlVqbHBU4%%B)fky4>s$ddNgBESj+n0e2a<@+Yz2mAA5p!y#Z=C8b% zID+fyWZb*D8u!%6`kHfqzh*OKrN+l8r!m$tuGoGJeYz)@E5Aj402Gg;7HE#(4Nc%3 zsrx>3ww$dhRf>0ZcGM0iMmK^PBji_2!QNgF8jRyNN)l-|=3ILBL9Ds>fZQMgPTK1; zJ)Zv!;`dFX(HFd>4b^sDm#omV=~hs>67xoY+P`r&t&`hMsH}8LuIc&{eobF<8LSwt zDc%Gwj4$CPJiZ!VtuYzfPOv$%;pgH5tLS`vQ&$=1km2n`)m8JGh8;>-NvA&EyVFjw z1$r2o-%>wTAGFmupxTFO<AwiZo8yP7c^wspck~*C=HrIH$0L^E=VD=H2fFn&mMAl` z3=7b(%tWL~**tVeFB0$L=l5gYhm;rknW^mlMDosL?@?FR2$7%7+^M(GKX3+DDU}bd zVPI8J|EfSs9vlVpStlL5RGn(Fo=7B{xwUk9eKq3U?Cyg4+I7|{YZd<PmfhG^;k~s| zW4#tQ84~(ET(yb38J?;7$(!qNLP`)u((CK#bjE53WGpbtIk`kd=;19t6zVJ0);vCt zUKU}3D2Y#>c%mNa86Y`QH^if~b`K}^_AgW+^3D_4>*{syxrvg??QuHM8&&S^$tMa1 z46+qv__SVr^Cd?v_{h3>=NW-8y)zo4U~+-i&YtgVa+bBPZe*VE;oxq8T0;k92QEpq zG6Gdc9GyCCw9jVN<DMsY9Bfny$)h|A<^ryBol&M$X7e?Pe-Mw4_OaZ(2heIz6-9`N zS38F$ZXw|po=2a&$HZ|fd21-HP_s|m!`;h%v8KRR&3ce%j|H;yzXb1cPGl<AHzTpS z<VeU-X^lV=1EM_zw|~>Q8OBxe2%M!t1;Se`oNsrJV!Ic3VyMe_H1NJOBD1iUp>rNN zxFY0WQ)O<I3FmnG9NbqG+4Is~hcus~bs_6wAN~5>oc+&`u_ZQLYY);K{z2XsV<`o) z<`5SpdQ>7Fy#HDx=1g*YnO%$IqsgqY<$zW8{ZHbh%h$%GR5^IV2fgfSq@!-|2S}W- z%!~Y}JAN}P1Jt;>FPLul!3>X{U;=Ba2%mpW&gLR<yqXq2Wx5_LQaFvJLWIeieo5Ov z27=E>U59~yJ7Cv0E_rWx8aILLD}ICr=nx)K3GkR=<w2Mv3Y`JRKl{0?waKpyC?k++ z4q?2kJS-K0B#eI^cL9k}xDQ}oU^$k^0|yV1sA)a`7ru<FI-%iSB3Pxaso+r-H7D1i zE2^fkMPUq|yb^6dtmTVvvPF`WWu&Jo23^4{9T_QE<x{>67!!^fX^T?=vtH^!yYZ*m z{={Bm$e9`Y%4lWIi9CZ{MijKbZpgoc2%?EuZMlqk$wDscK*1@5{adVC677n|8s!5# z3(?!)@bZXBMSP=5(EE8i=63QU{);?0Ha#Xt>LdI}#}3hQoop@Lk#1-|fPNFj+Ad<) ztVlT8@V5MfoEom%H96_y8yyLAYTl`Wv$u7$+v(b#ZfEys3s^$7p~+fiK~G=%Jn7=` z=(IEFCKBC2$D24VrakK2*PgFu|8MZoo`_XS(vqIYG$2nsUqGOextT@e7mpb$|1)gu z%KF7SPkkG6_&RQzW;W<gV<*lw3DsE-#sfPHN^KA>gtPn)zNU_&r`aop5ZJ?^Vy{7+ z)b+LMMKE|(S!HZAebboyI@Si2n<<}rEYHstDNaJtr(~*$2~2=&y)0=KAb+l@OvaaM zynBI8`~nI|ypFc4F`nXCzo*2`rK4hbV8bD$NRW}6|Hc*N%3MQa;Xh$d{4tWSAgFtu zN$0;r-w{kbabP^1lk&L}pM|)UXC*#Pyt71x+*8mi?ai1j)M2&P%@&de$wC+N4n}LN z)I4?dp=`HT9a`y1Ls4ogt}d!hO&zpL=6vgwQ6K)K6vb^!g%bS$BbmNVM~SzIs8|De zG^|Q%)Xlg|>W?jtt4)}7XXK|_EdB2t4KFl648N0nflntrVc<aawREBr`(H4r<cDhV zvXSJ0XlPrkAc7c{^h(x^<nGFOdfxubci{VdMql!Qmqda^*%tQz^N(Gfnr0zY+<~s) zMx_+AbN#yAhF5M{qjvi>C8q4Z8heW4Q67k)03TT+wK?|lk#il+%k>@b^oTVM3YB}T z%_G_X0h}Aw9Ua!7k$}Kd6CfZ<ps+HXh5>QVD@>qH<cM?lf~5Cuv(rBm1z&S|Qnc@& zf|$=HSjiKbEqOMd(>MHpZ1NScKnYfi2S%sE(h1)cm<_C}WWJIFNM$(iaq-n2<ch<s za}{k=#<(TNrAFn*au4FtC2oaVdxp7TeTRhX-Lz_6uHRHfEn39$v1L9Yts7jx4R?M2 zxo_Y153oNkyYxr5MtA+m^5X?<x1BVF08d(pil=;J-xGK1+vjfiVy0VfRNsb<c$9l^ zz}iiOYUQKGn?rS7D|bQ>-#;+z>NGn$hqR@1te@N_b(-U1*uNV|9W{K};chtH4T!tQ z>|yO={-N0Z)l~m<9S;ylkT=P`VrS%M^y3>3S_GN#lW0bXpL~Nzqd|<&R$QO8=+Z)U zL(ttxR$UTVc3LOH%_<XDu>_P$n%Vp_$tII~;`89W9G?W6ORR~GV3Gqq{$;_#6efX7 zxHM*n2BNfEUYn88h{PMA%R=0iV4}LHf#@P_h@39`?UFr)UmT`F@)#S1L^E6|ZwQUT zkwIFBPI1w^#H_7J4vl!@A<~*-LZpRP&eL!muH!y)AsIFk^vTu8WG17TCm$H$6Ci%T zTr@Ehf{6GkkA^hrdm{HC4^4bCA~Q^GIVX2xyPAJ}V<<SZ*DJgha3Kh|kX!kO{K8d{ z4-gh6*a!mPfPsQw1$i|2Qez|xP3D!X4dI_3-+yADnDb8VEzkPSBEcX<>H8D)HMzSG zdpG}qM*N%He=_FFpC0q+D2Q>y&6uFqdKk1-^>!qzB>52MZeqlwDF#376T?xO<X4br zVQg5&)<0>_PuSDHauvwfAW$uR>uMO|c9K=;1-0VV3M^wLvmrXf<Q4WTcRh-2B0tkZ zwz&sonbd6|5|@gB;;at=ss>@#3zP=Teqx2rY?O9O!C0^n80}m3?s&9Ig+8`}v+wkJ z<0~ynO8}fyUQwr<i|H>2B!xbAri2f&r%#m_LLvp(Z)WM5Ma=p^8**(Bx8rpuSMa-b z4>`Xkl;eYEWJPJ00T(4?1~HiBJHqavmoi&x^2+NTAyl@<7SwCf2mQJoRx_x2l*jB3 zU3r~!Av5O4*nFbr9Nnvoes|l4?=k0)FkSM8C|aQaX0I#C>EYngPo%Ds@M8bU8Mn%^ zbzE5%IjIMgHYnDhEJ;9zp4i)TWKxoae(HZ2JNBcY3P^RX<A6bP|K8})GGiv=<?z8| z|9kV&aH0<NkH9@n79mQT2!isqZ)EI`+GX6@Kpe8}r~e<e>zPY4{%-A3646D@zxlDI zTSJ<I^~=q}((UTet~{1IgI&w4QPaw$4hE0M-4r5gKbW?T(X(z7t6l+SI9YG9_U;au z88|CH&9ZuRu8yU36QsA>G1Gk3#E^N#ZX`O?$_Ko52JWCak6c2tS~OA2ytj;k^@zOe z;7@hyHHoEK&-OEBd_tHF=k_(;#_cmFEBiuG>P;M6wmf3h_-0U=B?sV*J~+dpiR&{m ztKhLeWQ~aqz9ibohgY7x=cCZ%J<BI(vxxi4D}wkd+fr}N;rJLs=K$BeA7o@FFO}u6 zE?R42Y-=F(Ie20A_TDGGeLhdI_4o#*O<ob!&NWC)Q0HoEZ;x*4@iXo78yskD(+bTH zfGrUeaN!Bmj*6q60UhNFk3Ff}n1&@OMYf)_%1Qf?!IE;?z+b^4`yk$UP&&)Wb-9Po zRD;<m5hyYAW>Wze`4s@@=p(6gsf;mARL9RS`95Ur=m-s@6EUHL9?s)}Cm3b=-seG* zH3-mamv4`Z=IeX)HeF7Mbs$ArE%QCvN1jJ{J!$Pl#_h<SikcG<epPq^6RTXOrMHA{ zatzvAUgQgm99rvj${Wq*hH~Ar(jU>S42H9e*%C83X`~NO>1kCyt#$&DBFC1MiW{sh zJ3&>&a%w#_9++}0NfjtrQYtW2QWxGA27K)m1M8Gf<x45zN%FN+wLIR#<sm0sP1<1Q zZH`ri%=GbuiOwkrqsF>0)Bb4MfEo2zWv}P0sNu}4_2=&N<tRC4rf*yWkb=^g)Wgwe zVMcag|G&hdDEAe<^DFN?vF5+uhP4z6<hBij9@h#5RRdeRJubCXsr^xVQfs&EDb(bA zhe8O6w(_){ep}Cr8IuJ(ENSND!Hj1X3lJDlkV{OTNVh;1X&n$nm`_lENxsDb$|qkb zf<25e*9*SJUSxMy?3&sf%1dYOqTk=X4DalOFSjQzu4Osl4}WPs|L|K5=KDKm%h#ON zd%kZI3odq)2jXA;v09v;T2UaQCZHFb6|gW6bp#z1OUnBt5TDHry54@*oy1YptTXQw zaek+c=QNQG?vnHzOKLO>Qg>g1#MTAOR!^vT^kNedPyz=&ExK))(}BE!KgwD+V|owT zC7R#t;_`1uu-IdEs<9brVThgUVq!jh9{YRBiY;3d=snFUT(nsyk#*v}=9{Q^jC|)j zj?NF9gW<l)4g&`~`1hToq4$q^_)qvB4cxO5@{O4g?vNocqQjwW4^<W%q3nU!5|N`_ zefVdZqDY*G=P}#On0F?j^Yh*(EAvaBF40bj^?dpOs}NPjvC$&a{g#sY!jp+tlNZoF zvlM)}P%ybw9{Vd>$v`X}N|kOJq4>eDw|1nCQv^{a_8M!KxlL6GW$FSQmvb(PmufE! z^}!7~u0>+86d+U^;dne1i~W8mPOM=eN8o%U8&<&h<+3V$Q&QPXs8;Q4uQgtuIgxZM zGTH_5<zmKw(bT?)%SHIUex&c(Mx^yisja5D)w3z55<{aQpQ2&HMYOP_$W;?sQhVvL zKM7cq><+>H(lmN{y(wqcHOwcPkzCfDa;YcvfM2oIA_r+r)@ZQ~$t*gIA&-db+G!CV z%`5JVC0O&`+nbAr4G0nh4>Vm_Z#~~@<O`uLaiOg`ctOW$tt`w$V?<qkWl`$TkhN*V zi`_lkt~NKNLcwaSw&iS7NrQ?SW8uXT8)7!9-D}*`&Z)pxye2x^)Y*^>M*dtT;L`UV z{>eN#z<tST6{*?$PRZ%?z7|O*sJX~^*fj3ms^&wolV9pCesl|js{7>R-Nz3}>=vVG zN`3<ebRTg`1pb2B0~Pdm3yba7dhkM{ODo@Zs(1Hfh%u6k#V_pzsSmec3Ydf2OBHj8 z?a=775AXXh#b{99CziL=Q<2vC_V#)U@H<=!<~4<@t}5kLx7#XLz9~;$`Cis*ZDI}x z3~1NtyvF%RSOBj_gAM1pSye&eA%fMWbB#|f(5yOFT=J^gRN4k2b7^w(ehqFBqMsOt zgr-4uz0aN!OimW!Vm}!d87iLaUs`pmen|~Yj1BgS!fKLPNv^)x8`#6Qxq<g;G^DG{ z53&2iy|H3(J0dGA+GXbeZ)4Z-$OnMD4>efU9oiK@>Jqu$tYp^!FNUin0DL9mHToQ< zx`EF!R(k{=OLQA@7OedB{$TIAFO}fEF=w;vXi-@{wy`&ugbCSL<Ngq+<K10ge23zF zQESeYB7aIMprY0F^X|Si^i;P<;)x_EW!exSO3RYi18Mbr*dm>TkV+kPbaOVE`_XM0 z==-2e|DEI?sH5g)XwsDRMlUN(P@91dTO_uK2@krbbun4*Pw~h|AwE3QI6!e0KETNh z$Al4C;cM%f&PoXaDH*4>#{ut!+Iq7V$R>Q9VD^{R_4O!RW2pkP#1q+Vfot!D|IJz= z8}PLgSu-!tnwMBHV^D6-G<$#~7dPKw@``;Yjubq9GIvif!(g@+_lX#oa9SX!@knr5 z`G#Z_Tm@Kp1azFpjLMsSrBGAY)B2n>eboAun73qaf{K_Mogl~}@OYEp_~F%e-pm~M z{#HjO{0R9bfh_SQyjkQ4ilnfDwb<$-as|-C70^h2LY%_%l|-sxIad#<w?l-rciBgZ ztU7J2ueVpvI-N7S(tdN&_C~wySbH;--fUggs*y@79&eSsxz1U)*Rfb(Ygb|H>BFju zygj-)^Zl#*$T=V7J7>ys*6GRx>}s*JQSooA+f^r%&9!p=X2UKx+3s1VOl8Dzs*0z4 z`|?a}UWP`aDmzDb#_v-n@PB38-AWB6D0;@a&-%Y_>D?jVlHU7lyk@a{u7c;~qO%c8 z_LEp>HE86xTtb%^ZEq`E`Msr7OolU-(l&|v#3}yI%&yoc4eHk;#!q}?9>XVuR{%8X z10s1@!A;EnEb+om$;VJ`kTy_-)>jsRo6`nSVu)#V|1Y!n#KNQS<UrQBJPczGpv{$X zc>Uz{emR_vi7%|5^!;;<FIBj~*$2~u!HBuOQebW3*TdB(lxJMdpPUcNk+swFO3E9X zc1iQt2<!BSK1HMtbDvvCU`p4ie7fijJqZ0oDXpf=XpNtx=K&Ai83oYrBc)iyN~UV+ z$o8a@<9;;CDs|cf19Lo;%u9&?L(3=k__4+)V1?_Bi`GDLfe<B%M6XC#p${+VqF2ey z#(X<9KB>e?<Jb9GK-r;E$}1(%t;?!v$vws8ijq4(7dx)R(qXkmzE?Dg%$>$lK5#Os z<<cW_f5Fcpk{-2hJ|#(cKq9!wrU0!HRt$KVB)7h%TjP@yFxk>oWe09hgq^;1M4IMW zAeiFQ<D}fSmPP@LM#nURAK?Wb_fu11yiJ7e%Lb>&mQcf`$BXmN7Uz||E*Bz3gnn8P z`ss}5CpZ!IXdJ9L>)wd;azsBF&7_s8#8MHbt@}Cd(@)GS>d+A-RD37spy>Ca8!(q5 zN>3*8b{<XtKj{Aa^JlZ&@j*NrIP~L&9cCgq)sGcM1q9|CZ=7<hkg~G+bMK=>j0nIm z@`iI2igV^pJY^+P1;I#CK{?`7;;Avd&O}TdhQjU~7=7}d*aajm$OOMoi0&zy!YJY* z@t9~f5$!&EVy_aGctSaE)mU96vi7winZcM;gw`9YL9X_H9v-U71zsm-H*}E^iY>Gd z^z;o#xV$74(48OCh6oac#DwFp6{oe9_(Z>*z|KCH!>=IOR3N<)bWLp9RQ-kCf1(AX zRAj29jZ!tknsK_tW^=pQl!|%N`{Prcw8|-Dl5sM4!trD#tG49S?I!JG5xF|I$(a+Y z6B*Hx6|FO)zjc@(XX38l2Pi0Q;JiCJHSb^c$7k}V&Zcd+Gcp?IL}ax`;1j$QnPdK* z@4n8|AQA!ES0Z~EkF*0=3Es1k;cZ$!mYSaEOFn{%OhLLJ0NNi0m(Kr`+-~*IrmQcb znRw#x)u|?4H+lU*FqcGt9^{8LBE!TAbePNi{Lb0V2H%+Rd@4-T2^9)hkGE>M+@XBa zjHipY5x^c56G{8MmQrqJ87JP7DcKc`QN8tvar#Mc1_eRj00y=eR9earW-{&C&8pO) zI8jx#P36_{nDh>4He2tXQbYuN=g>CD-)M4IJ5)l;r8>n5=Q~xWcYLg>r>oaa(!$ta zaMk{pdOClCMKA8Ddj6TL#vfQDTtNt>2#)oDaic~b^x~2Ar9fEHILW#5x*tDH{nX-f z0<-b^Kl19VV$!vi%;_oh;4u!BCA$!cr_1R?D3nN-GI4-CyBn*;WU|~{TP-D$-gvN3 zlk_!`-4fYEEZ9%vo2!j{BA!hpa>-0Akjq7=qO+4Iv^ML-#0{Kq5Vn4;(8xugRmIa{ zJsXK+8+nzc*iLQG+UfM`iDbRs-f8zCC#hJ_j)bBlUX!bw2qw#!cr0D2=983q3xpyO zwm=}7h$hO^mrEBLR(Yd5Iu>FIE%W@bZ-?<od;V+2hMtq#Xnkkj0aepOm3oY^<16no z253pD96se+I`8@i)^Dl@MA{RGi09u77Nhr+;brQ58;nIZ8jnUv>PTji(NI58Xsk7I ziC8Wb&!sZaU@jX?#Uu8%I~t?2a5fQ7$AgJ-JD2U26a7#!6)WaLiA=Iqj}snVF2*zQ z@E~1FWwW_%B^gqG6-zTFfnW%onL&x90`8zx@+lb<%BzJK6!H#}rCcJKF4cOmL@<=f zq@(#pJ{B)lGtpEmRLsZH@$hPhWX58NDURiuc_?q8nU571I%7AOY2Zf}+!wL>f9bA% z+{9F_#&az7(ZpNqT@XJv$xM1L;9HK`_k*sBdBxk1eNgl!*G84bWtWA2a&dUt7&mZ` znuV{*vMVkQI_oU|;C8XoEf?EAm)($G9i0L`*0?;lIAH^H&l=XIS{tYs8(_6vEO$Fa z*(?X^or8<j>sm+JZBOZt_@?IZ#Ea%AX1+OaS+Mo-VuiHj<@*xID#mGAf$LRVNERXw zlDK#%K&J$8K@Q5^ln9b>LQZr}Eoh)1!F03QIXer@HM)uq*+A-hevYR-%ZhvYU||;f zkBH<t0)S$Elw37>74Fj~T3nFkD1w+5eY%{c#8t{#`l%wW=OpV~jr!shE0zV;x_wp} z-)I$OBaJYD&P;%iIE|W##`wlNC~dVejf19nvR+)Zn>~92OY=?XtSysJE@HGrzIqEy zZm(HWXOmOjYy>l{ty1%#;XaxD1Fr*X+Q`9+rnoUCXR@FuZ#*%(QI3?P3n_)=r8KcT zBQ6R6^&_1(q94X3<WBx%eq>*M$92`WUU!r-QP$sbVRT-19>}y4D;9zoj2X?>jJWH( z6L&Yi;xP~}fT(9O=f;gF?GqWy%qM8WI!<nCG2&XTy`A!K3qX{+-p+{!!i|3xMRpY4 zvx2*8;<t<k8^Mon^>)As1g#FrI5q<?miO-){bV219O@L3g)zE)qDMJocgNMpKXp&- z_ya0P0~=5XmmlV1+F$T>J~47+0nqcgk8hVFvO36b@8etH6@}vwJpW$5ek52Z-+l+* z9e?3>+>PLZsiW{a?kuiL(YvtEid;0AQ>o-Bm1#a+A@fsZYw_8~x9>?rtYm1~o{w*e zN0N1ARHygG^cS9g4keHnG7L{9DGzQz%7XrtfIIzrd+2@;nNi1?AvQ|kI(}#0i%4T- zW0Y|-`B>XXnG!pQHN>1vsY+}Cs^6|x8uct$-?3~wmv3Z}R9Yo-yKJ74nMOVrCqXA1 z&ej{1db^s7XA)uRyoM8*c&?gB$GXu>GZXE`(wX{JHA7vt1fU+#NGj`GWK+Bd#uFUO zRKfEv<StQok8*&UG*3$FnN&5?Zp1U0c%z-ErZVfLlV&1MJ*%|xU*-y=pNDJ`-AT|7 z_JjVoKd2v0SDWuV*>Ekhz6NFpVA`vzwe4cNkX&2O)WTUJ3Rh3fdVT39hy|{cWNg3m z5U%$?><NoH)JvlFVoGAGVBLs55~xmPDs54tZsx4*xlq+a|1}9>Zzb}pebOzeq*W_t zc0pg0oU`s}>Zovz&YNq+)_jkgvsZy@$t&aJ)${eh_HYb8C>1KYnBRJ<1hvbhS7k5B zI(tFP=L;fW=U8XhvZnNGN-(D{$X6luc@e=ubQe?v41Yk8PaX`2((j<sa?V%E5<LW4 zdH%g8i@3`s1rAa%sb@jS1BTH2n*crethwQRAtt(Y3P8yfklbCw60fHk*>7n#M!B^g zskZl`Rh~7#YmHB;(LL?U%Ii2*$vhP9h8#cw>?B(CDPE4J(}>k+cg6M%lbf6N7SeOn zJ0oEAps#ZMfeu<7r%W)bj%>y3?nb)$defNI!C)G-`qtw{x8hMYW(`mWb(J1NV|0FG zl=fl6d^{(**9xZi2aB>*L`h$u;-+cq(wEPD6E-6%yWQVx-DD}--B(-L%XY6@S#uld zueZhn(?->n0xo}To$OGfxXX_}o!=fOD;uG;c)uU-ZiY-_u>C@DG~M$+bKKYsD2|%2 zB*Txe9s+d!6sSdsu*F^?WZR7`fvqP7fXi9=U~rRaspGx(V>QTA9#{ppjOw0QcLoDl z(3l<y*Yb(R`Cfe3hc^_FM?$&3>$a~6V1YN9G%vBmOz*r&e)7KblQr*|nQ7R6!z@Uq z(htc0l(@&q{~U?cf+`~rGlcUtyf4QZ&{;s8oeTSHj8q`J`-M;H?qXf>%}EkKa0SXn zEbhYv5w}rnFc;2Qo@{peycIp)uJu!)>R>gWUmaAl*<Y$g_*@~~7PrqUMUL(BQ4ml+ zes1}y!PWMtDL;3a`9yzrZQ9eg7WcjH^sPtgsrck^w4aGPhlxxkp@28CE~vS3D0EI` z5*gpiPWkrKH&;M+#J$II?)Y3DEx<f73277k^<eYIK2Ma=W1<=4Z_e%?qUR09Yi$uY zt?=QCLsEkVR=X_`g5!%r$NjE)G*j|wJzJz%JWDf7<y&^DH3^jd@E(LJTk`kuJ?t0U zl&i~4xmWm5<TII%JT|?aNC)_@X3L|}{!B^B3X|j5#E}a4lk^Wc!CHND<LiAh0NGqN z!0osjyk97x#;OGAOnkG#_8w>^_CpHLX*Rbk(bs^xV7L)1H;oim$~4F2X2u!Rv%^TG zJ}hT+zMj>${UMU_%ENjkGR)QmFW%<g_p*`6G{&B69ZO1RH;_QnK^?;{7zNikgn^}= z6*IO8$uqK#eTB{9p6Cf`UZ-f0Y{tEpXG!80stkShuC*P0+xP{JS;@yvN-E8hr`)eu z{}(pG9A%V-DjpFBS7a0+AA-oBTE4`Fxg&eXI7s~I-+d%Pvoldb&WWsITzr3rG4Yl% zMW;!;uB*{}@6qXQ<jUpThB|eKz`rw>LjT1_B!pEPJ~1AAG>w9YqGu8M|2ZpER0LQ~ zPWj1p`fvuxh*EwX+C<ic$ZNhwL_Q;*^TGc66S&XUCBue5QJolZXKbZiUr21g_ivd= z`Zv*P-?xR<VC!Uy-Kho3@7quf>`GJ-t!7_{j9_B1{5qcDH=zI%W;DNmxqtFTIFrN{ z8K_z00)~`aD3={!onIZ53~RF6<leB>#DQvwiGT2Wh8KA~r>A3=ZF;*3%k)S$Mv!Ku zG2+)UZFvCY72XMN7ch?xZc0<gzm((*-_r%*E5@yi2yI><n%v%7JVx|YBKp{1R{8X9 zOI?PqLy+$@1&vz3MhO@542Z`#y&HDHn2C<^Vm1wbSQM+PZ&6q%;xU{Po4<?2O9&C* zRD!}Gfmx6ixX7|v0FV&xn9sfv0jUwmg|A5)xLIeE*40gzcezL-MQb<W>DGE<KjUn4 z*uNCLRGwcF-O;av!&i}9L|to(aDbOr;c$hECA}xAk%)p(<ZO08J0y&jrrv35Omf~n zYAbXPGDo1~hs~W8BKWQC%~CWrpZ%c8#ayY~F6Hn(eM_5*)n=j4tQMUQ+ug~P)9G@q zbK7(oV?VyBS7^Q33%syGl%S3(6A2n`v~cC;RCNWtj3MQh>}yw+0nVj{9=(;_g;A!; z(T&)kfphl=_b(i>L`i{QC^<Hk^gYh(Z)Ll?okYCa5`Qt->eK+B1gj!}4I_mP<(rIU z1v~MY>yP;I(`}NS0!;O!F^dZ<Ox&OpmHT9?RQe6|V1g3E1~nnb7?Vh`Z23QGmlYok z5}BOX23X+u1IpmI%Km*sPKBxK9MpWnm33r`5cI0%yt7NQ1eh*b!%jyPJDo9}HmPxX zZN)lQ*Jq?5pV<GE;DwMmJakUp?(=byqNJtK#r5f_SKCR12lr-fh_4V&%*-s6jRl_q zMQ`CrY#9^4!e_X^A1<)Wmm$J4i=Qpqi&4=lpDjP1xv4f=iAJZfvw0RccUo)7a=ujT zcM>V;`VCu$?>vbF!<|&wo7dg8-LQL!V16|lZk=t#6M^G?>2N!luvd>F0e^Gd?%6v# z8#k9X$pVui_O2JYewWnoxszk$gFHNAjbLZierd74NTD97u_doH*t_H@Fj}80*atjB ztcFIKH_m6-W8#I-&*lyFhf%sG|Gxx`F%PK|=M3&?Ps!%}#6^NB2SEwb0}xRC{&%$% zuKvB-DsB8XYOD3~!^Q#&|3PC(hrVsD&<@WZ&YanQiX2V6l2~0>%(BO{1!i$sFYHBw z5o09=<9M#-T=-Z<Dm*?NSZBBw!}gz&7B8W@WWi=todwQK&Ab^Kh~y%EjwJH$dw$>Z zk6BwGOCn+n)=88s@5c{Kxw?nm&#2>!Y2qsd$y(A-=L;0*oPkhbp;&nC1yx}gtRaDH zTL97xujC`tRbEU?R5Sfgd0NJ;SScPVfYY}NTxbnEy8w_hfldFQ-5&Ti13=CMGMRcM zpMK5f8$c<9s=0hRr$*QyiufZa`h_SB1+!j!!uxX=3gt_QaK1DyMY@S#E*EYMn%h>n z*BZ3KIfBZ%5$d~k<K5~`Vl7czP4dz?50&!aL@6Iq2bnV0&P?c!iThaA5g5w`_mBWN z*=O=gLC1&27PFN6ZCugIPdF;IxA9{Ug@sQ`y=o_He=c6hRSJblz8cHh{zNAn3Iy_r zdNN+FCaVE|SjEIJZah8OJLLWI;Q7Wj$b%u9A3S}<?Tzzbd%e0Qcoj&$@#}U=y}I)a z{7Kalrc>w>bo`~JOj2qYK@IcA?_iJCGQ`{>)fP>0bnLRHTZD8G{mkusFOQwx$=H;- z)U`9L{s}%R!_&+)XC#UiB!<~Vh|srR{Kz>>+wHV-a46mS;5Lsg4~AF$Z@U-m_k2Bb zLT)PATyiIfszMR;EUb|0-0eH39p?lW>CwT>xvJ%k%1*-j7p=O&;jL2J&dqUF1qHZX z_}QOgxA;T!VQ?fADSt#zODQOUELcLRkt7u<ljcp3P|lxosuB_z=OB=_oj4J;&P@-v z<iFV(IVYp7!8sKdoSQb~o#m4e?B4SHi+3-*e}OGZaAiDd8T5IsdQU(e{-RBs*HxSF zrgoba1<@buzv7sFHI8yjf2yzXf@{1m*LW;f;5wj)E?D>VDGKewe2q)}k^Vl1yyp8H zGBTyv+fq5|7lPLydLb-Ga@O>t2yd(e$%l|UsU=WH$q|7FO6oUqrQ!ol<~7knd?J+l z8S%a-qR3`tRCuX>BOVb{8y={xGC;)Zi=>1Pf&)lRqUV?TWz;Y^`5m8_Z^#D{Ny3>W zaAwP#jbw<H1QxqoS+W`j<-X1vpP4!H{S6T@ajbjKJsD39MC3nUY*XMbfW(OOBuSf5 zU0EL5B#F2%#$~~QL8)APE+XNgR7-jKaN(zFo`B^Q!sX@Q!w}U|7M7j}8o$A!Tv@PB z11bvYWg!4Ah?4|9<h5G6$QQDHkS9_qTiEbB-DZjs(c@RhjnP2h)hL;74~L`du$@<z zPLo<E8v%cNm>nh5&Mopy+xi#agclRZK%$VpP-~O{G}jL_S0jmXZfAEbSFm31?Cy?> zmF)^fx&B}^-t&eUz4+?5qz_rg@m^!+?Hz<1=33S@wrJ!6!2rb4rCEbapD<D>9E_`- zY_DrZnDJ%CNcCY)v9B<<41Iu(@kVBPPJ#<r0(Srypb$?N=cr<#DFxZ8QiBu9G3Tu_ z?aZitNTeIRW;!XUCdqVji<gpfQu2;i529%TW?9}1ms5piqnIj(cj3z;u&@iwW`Q!| z%7(}5(h{Oqx)>>v-$Yc0);)~jQ;;W@d@w*9u6mu`IjjXqFJc=G9P)8TB_E~7O7J;z z%=fh@I`XMkG!sk{W%*d2FGoJUuQH|}vBQd~@TtygF+0IE&+5Z7+E_Ny@`v2ki`8Y| z9Y}bbkx9Nbw=}mW)`0@WUd$3AuSkQ0rw|?C`XUyHnw?Za@@ObUHXtjMJ;<VEkK%-W z=7T^9B*4Q3KAb_SeDGwMkDf!#Nm?ZyjDM@Nah@LRrp`Ce{$9zeSDTW5N^EhjxV2U6 zQTbM$serAmB(#d$1bvo!zI;=z(I15FoZsX7&OYK8U=rE}@M5M5oszj)Vhxcc;6^?` zomZZE3D5M-;N;Y7?<vu?OLH^b0rrP$H{#*sT5W)PGzjLMSGzcFiH-<u6JVV0d0)I% zkx86`3SUSONoUa8m+%P*iP)zL{2+U~>qT%{p2$j`t{82Nm`vkj?Z|X4iWH^36g5z+ z5_&Sk;b+#0qbJXcJwY6SqS|BeV6BV*UdYuZD@pqc^=gv%7c^BwDo&7pPQ<jK_odr5 zowuWvWC?Lxh%GKWSdL<CShD68mX?F_ggxrmRWWZ;TSuEY&GS@l@`)up6%9Lw5fz90 zQiH>}K3w0mnLq50K~eA1k%&s?k2YErl?mj>`z$il9pBgJ&OwZloN4c_9}*wGUxxN# zopKJtQ7+ra2UMog+BhQQA`(fH&1RefW^KBCkcjR@oiFga(=q;c;TggkWJl0aLEPpS z{z0LakN2p000$A`L0mY%B6`?irm|UNtf~A$T}|1R)0x1iovXpcJ%9;LcaUrzsT9F3 z8o(#y3)6kfvgB&QkoslOOWd{_yNbxTUs63!R>-8OQZkia-2q7!4zechkQJdedW}4W z{z-48)ijjb%8lOkY5urBZ7)R3tdh67ebQ)YrTj>n#g+xo9oZ#!D3Poc=|Epd^0&7c zdh|P>vhXWxnT9M0Wmb}4Ep0X)qba4*b|N3WlHimFLZld328F~0@JfITvdEV;6iRr6 zS?oRny>M7UvFIE>(khm}G&`;m76g4d2eRCyPnwSeJ{o6<{!MDjrsS6V!|xn%y&+|n zPA5VJeLCKPZYIn}4?aD2R}l1XztEV>M7{8KkDZG8S18o=%*ZrgWhgZY+XLUAZ{|Y? zuUSvNujK>%vt4MInUO5cdci7iR5o;JuwAJ4WhqI<vz{Qmwip`bNo?6h4=}m#@J}Hs z@*wnCXt3=WBk93&MdIUIqSb*p(&nf~tyz3RnMb*pT+7I6UQJ0ozoG6~Tnv89@3Td$ zE_1kM=n+LrNGX#r4?HFCeb(F0`(7#$%}g_3VYR|ZMJG4cG?6-!3VWU(ffC7@VG$t& zqIgR#_OfoX@D7Z59D#B#iP$H-m~fSY=9-W~=zkt7Ud_p^>4aehYZS?CTb|WUe%~n_ ztC;2uva4Yzrky)GB6!g1)9z3leaM5aoL9<E=`ATvhd{zr7*nyMn7juQ1x;lGx3%ur z3WUCl?xNeSQNKu=ju~E$lUnTqpl!GrHAiKn873KNb<C|hI!I1x_JXs=z3@p*X@mG> zB_Hp%uowT_lSRIi+M55!^PjVBxf8oBHL0{rl!t`d%KpPCB!!lrVa*WPnbCaal~FZ% z6@{4fg4R;l^pKo6x#INubbe6tUdt90yOY$lne0HpKj@Q0EOs(>rn?%a?{xCdfaraF zzVB-;Bzu%6mp;D5XwLQ6`7khq@3#z$K3BGNxo<-`sV^bhU9hi&sBr<Yv}<A{wqS$V zC;VOFoTFM!l!dO>j}%^z`B+e_7I`5{$SP$?eHk+4vQUT4ZdMk*L`$(WU7rlRTjWr| z<(7pp=<klVdp$HOO#_i<-MRUZ_$|MipUW1}z5bYiQ_~0aV!}B-WY~PjjpSb7Xb{up z!#@u);R>alu-Z*)&x!Eder2WbxZM_^dr5%WD=XQS;F*tWii<pF@^-z9o5*yM@2PXm zKFqNe%a^8bdS&pMQL_38!r@`|M2Z)LN-;0rFf|C;gGY9MP)NPiANzQGOUe%eiCu>m zBsR0MwOo%cQ82FOWxnpP29b8a=dcGU4a1`$c~a<eU#o;9E{=2!TO!#8UfCmDjro__ zDnAt46NsN;Y&7hV8c1A7F0C4ki>!Rx_Mi?08x9vAUwMbVUW4+na!J(E2IW5na+8sf zi(EhWJz@y8e@3dRJ>!xex7Eu4J7+4+icNHrv9~(U(jE{LUQ)jYl4C+8fWtpUQP(}t z5JU7pFvq0*hMtI@*P|w)ydDKycpto<DZTN;6N&hYe!TPA2aJ*9i6@gZf*uT#aYx_A z;+Tv#^xKp74Q#>n(wO4t3ZE+$rfd{NqA-E?2r6&*2L(=0cg?^1U2rw~<g>Zooqmt+ z`q(w!nAipa4T$^uJ)_&8WZ+Z%_`Y|)Ym4bzGeIHSPRZ^~ZY$3&trh>exvyAOCN1X9 zkh4WW)sb>;V~nknS3*@S@*>6f%D(lMCVepWU$fq!+AypSMpwpSrc`>P=g-IdCBJz! zL*~Elg<-HV#4>|2#0Hl5Q*D&pF28a$xyz(oleStfEiyOFQ2<P7Jq?7ffNKc2#cf|F zi0{%<`SmeYcmM5|urXb{8j{3*{^0wvt3ApcFBvP*4&_%~E8@XSdWAg0wlzx@w#=&3 zApUQeQw}q`?klYWzPE-9y2tb$(%;Fy+(Ty9h&X0;;d9Kfc{H;v^CbUonWxEXmp;gN z++D99%)Q(PyBgP%D+xXb`j5MYZm%dym<=Wr=k{89=H>g7v9zJ|rVX4Y`-C_J9seR$ zsgHK#=jaeFeSuD;o_zS;i<Bd4L^7vRR?2{m@g|vko1A`<OxiCE%Gh1Rv5#MKd+5V| zGqdmeBjGYcFr&Nvx+1D%c3H~LtURB;zi^)-2P@Axbl+#s^aC)q{`F>ky-*Ieilv=? z>4-Xhp!%Nq1Kn)4tH>{~t&vl7(v&T@q1<0RziDsyLqIPd7MzhPmNz4+7w~I8tLHD- z_rIs(!o-6v2<{W_DMo$cM#Wm?`qMbX&>(WmF9G_f%yOHvWIK^aZ@I|xqnH6GoYCV{ zDh-&w5{wu`Ll6so&!o_sM{4JJ%yu(dPqrb6eHe$#g1u`)6wO*Hj(gBk=R%+hugp_$ zO+0EYN6=cfD6bE-sq?XyJOieZBf8bP58@%9#;?rq!aRmnOsz3Hap}COU-<<YIh3yv zLYRyRMBoU0zvi6ThaZ0w;5#Z-an4A7@%}s*aI)E?bE9H)D%lXT4y?I=ZH6dkqdd`6 zz#kl)yz?|v?C{$@r})_98WrbNgH^!~<aLT+|6^j@eyU^Kustt4kJ$?=z?;wF{hX}U z6++&{{Xu17;-C@n1R<LMctT-H>m>ZPS4qE5x7!`(Xw+<|i%k*JY!4|rM5b(YI<>Px zJ3ovn&k((e9k+?d*YJH^F1PUo@U>3A;e-g=MoW&zo4!o3lZf(-f*>*N57aP6%-=iR zZfMne?KajVk66vWN6Qyburycq;bf95_3vyxc?$0}f1rXj{-guhz7r-ezcdPeuU-Ir zb|t+)K9pSccmE$U*}p_4yN66hGz4SoeHdL~Q7QdA6J>RghNjU@q(t^_l5wE}Vt%2# ze~<}Rlggj0`jgIHr(ty)og%O^yQylh6HKRk7pXKas;OKg6zYsFI-yWx=26zUrh;bx z6z+;MSX)!23Kof!Q%L3WDXR43DRw;=Q0Q9IupT)!dA)CS)dd%90>R%!ozP+X*qz;E z5fvojlo)v(!#|VgP)QrHJJA^oD5~v!B{6Far`yP{4ysa*?6hl_D;(>ds=S;jmAB>5 z>*0*bpxfm^K79w&y!#zy9@_fuPx0~mA;^~@?cI2wGuIzHkKuTV&5PmoD+Sp=PxTJ= zudep{D%k5eSBX}&+IrhXnu5&x{t%eJL#K(aW;cFDY;Ikp&&HYNesWw&?5ifC7|9n7 zTwi(q3_r)8X+MW&USIalFewq#;}ylrJxlWkYSec1dDscy*;0JcZH>OCH_@uqTDRXK zI@R3n4*$21WPc*oV6sdEgjwHjicCla@#pk$nI6w_<p;PSJ$rj&lDRjXhIC9ds@1{z zE{oMFCAwvL-QT}DZB<Wf-=n=fHEcKyX|t7eHuI6)cx$&ok>plml^Q<uKQ3c(M5Bf$ zpgc3qUz0BXHEd0CbUk#)YohO|0-<XJP&oH_R9<pG1Ki*l)80>kVIW>2y70xqtOfIY z=jkS}@~7H0sQ^&1Dm5Y>fEK8=lM<7g9Ocb(y9SamQ4zJvw*57cG)Kub`Pe-iuG&^v zU!m3()QgmU;F?qv;2W$Bc(ik3mu5mpEm3Llvqkm{)L1kRf@OY;sygRgnV+EXSbGE+ z9uI=Kcqrr~xAuUQy*cciW=h#|nVM79$(D*l<NgimBxllZUR!%u6w4NP>es3*Cv>qt z$T%69Q1XPBISe}FUfeRXe@9IOL@hH-Hjkvf-_~FsYnzh@n@R$kFmb+s1VTD>H~<z~ za*!#G+IJEL{zuboS7((9OVZ!pl^&CXD~xHG7tcNst>jyhDn-!qAF5>;840PlrS4i5 zk&F(tx3{jMD!RU>_5>z)^a1x(C&S=oBioE660v5su^EJ<xhPZ$%lQ?VzGT^6jnKTy z1|-Qm4j`nPnN&KRqCQMK0R^R77!~Oy)2GLBVjr57cv$I=ku@hAXznpKRn3H-NJA$m z#&Y{RDJWhka|@^>HUP2x0k76quJKatgIws2ovAJ$F+bb~>!|+ML$~<gbIEICCM6JZ za{JpmqpPA9pzP@35z*6&;ws?=0+RgRaEOUf4}~$`3g^4+HhwJlSf3g)Qg`hs8GBh` z=Zl{I*i-TRXSB;8|Jw_?xH_!Lwb?SeV)J|k)f1nfE_$@2LlTyrKgMA~E+&q^r6;M! z`2N_JsmD)wUV5HV_y(V>Je39T<S|~A=O(L^Istv+x`<XPA$Iag9BAPD^i`-QnWmv& zB61c<^pf$NsukI;?8L`mLEG^|Iij}hoZGAkzkg_t?VWgX`<ioOv4pDcRC`I^*MRrz z51dyAIL2ZcI+urX_&~)5`zpQPkHyQCN;y{U_A;4X*Ez*2pCG?dqfGN6h0kQQob6RA z`Fy3)%T{C#Wv`QOK)$x*(R$`7jB9|xqCZuSQ`R!FqeeWTtjY8HgS%*61Z=gjK9t%Z zE+8`UY`xG>Va|mBeyxM3UsV@QxawR`R{@~nFlfapJh|sgo_qRrCjR0wu4+Q<r4A85 zWk`i9ckfGph!;+A+NMB5rF{yPxW3K$?s_|Lw*diK@Djgzg|p6_l4)zR6Zo(Zflkxy zH+CGi4Rez=D00(+n%FI`NGTVX;VfeSX};S6#2np6-2~ltGZufRCcqQ#zxylloxdUv zg{)wK@|A#)Uq~`7zmkz+-RDNdY_nJ`^4H83*Dn7NN80_homRVAZMSyT`fUbV&*Rr% zt$qzZXN;vB5!t13MTrAQQQ-Isf=tx&nN6pYA2ztgDz)Z#w+&YTZaQZj+s@Z&H7`Be zy0T)_p|-%mXbm?CmFhSt^Co$broE!iO01_umFZup%@h?cFgKb9v15L!kW5}!_v3N5 z2Z9JEcRj@>U2Y_@*>X0k2IkrKRWdp46;07C7$3-)gzj@<IqP)Iv-H`uS^q%1G&&&M z^@~Xe4Y~XH$FRj3uoJBiNo$0w$Om|@#WqWHHWhvQ;Sd4dxUou!xZx+5Iq?rbQbmJw z256929H4@rAmr3vM#9-N(jI)Zok=>U<h-xfv}+gdjMFz7(_joClSnkP=3N}lkRS;O zrZig(2rntRMS=qSe+i2)X_4>|9i?X|6baV@lT(ycp~1$@Rv^A{bhIJKL|~*Psh|uj zqVTv!I+ti`$YK!bfY1m|Iqn4s&w<H{e&XU9OI%n6+K5ml8EljB_#FLg^7?MmR>+@N z(lqi;+l1ZC(`XZtmwJBp%NTiNtVUw8vD-?XVicc5=Z?{$X)o4~1fS|oKZ1KZ`doQX zh#&I3w=(SNg&|?)QP<^?Zf@8|>%h^FFnYWN7foPfyUQc>dS!iR{2TG7YSc2*$xjTv zDW@xdZy)v*KxgTwteGhq*7S(!-X|tVH(%!EZWlMz0Y`ALszU=F=bR&@)IsBusuS-| zAP1PY+eyTO#uq6LZQ`<3X(GXBTITlixycRqcx`=G_hfr8^C)jmF&2DsxqZ4f4L#9_ z%NUxSgY2pLU=4oQ1>Pg@6Vagh9{b&E=YN~2`>xU1=F!=RbEaa|GJjO+L25TRKMUUH zre?4m^H>;GR`lEZ9(&;l2bKj<$By~3XNB|g!kG#pYo^yz8=I;1-Ap<d%>g)&1i_Qv z{bq9~m5vrucCe#Ds-E0;NN3*iw+mIQEWk%!Qpdg5Q+D4kR*iALKB(0ObsMW**-jUt z*~Ct(rSfWD?eC=Gp>Q^~Pl)7Ycgw$}h!xvkB}{2|R4r&f+CyS){~9a)=h&>CL7D!( z>@}&a{)n=vV&X9SEC^wGVy%2-Ej)pSK3ve8k9Z@p&K92dW@Zupp{5J7&wURmc}oNm za#R%j9?=cZ4_T<**PC0BVl}R*0I7&zVTDWabn5sf*}6zZ>}dYD1t3o~lPjDRa^qAs z85kA4yMgfWZt%^>A3hocq{@rX3+)nN)1^}OpJ$!(UjDcl3{po*w1T?wcUl{flT^8x zUC)$i(bBrAL<7xhC}#R96L$Q?Y<E~p6ms2RdEC_P5XB;owOeGw$Lzs>g?#ZNWV8R2 zkzh)_KOn|aj6#$F`j$5<cZnem-GwittlaV!A1-e61ZwL^={a3n@5z!ih{pU)e<l|T zH2fLWj>Q7I^3J~-;GOv_AC)tNAh}dD2eLve8?8z9=9ETl994?ZTr3og5vgST7yfM2 zsl}qfOpLlpF+Xp|4c=y>)~0!T=hL0Z&Xux#!90bW(}x#_EkmEzs{~62v$<fnkTkJG zQ#zH^Yeg@S_o)<gIEXb*$k3;$6syEAKY0GUTVtDH192^dj<Wp4_a{|}BwWR6gd!bg zv6D<tZ;a|RvJ#Tfjl6nEp|KX7Y4(Qe7f@l8O^!gCbeFee)dV8(ftJmQ%_}C;gvk@! zCCd{P?1ar=<gfpib#Y0A$RDyMKG9>%6u+y-=x2-uXyJqxKcYOiPzMC^1)<i|ik2nz z3kpN9G`@e|HAhu};d+=tjBCk&teey@nhnOHpE#!epI=S4`^mL%J{4XcMq@0MVagxN zWdff#=3*H8j)=Pzl+wS41tSIx5p71to+1vKB{9WB^v;v^>7(-UtXJX^6<YeT@)7xk z+3U*{OA?f2qIeKQ1wm&#uAS7z7phjQhc-7u^`c$d;!#zdZH|ohj%&yDyWj{eo+3WY zSFsp%R56KMs$6|9?`=E7`hIq_9?9+1#~~Gq#qP!si1p<+u~0vU`ejAVK-NLdd9XO4 zeZ=tJd2MFjh-KJ%&=R47ZqIb5@O<cw2)I)+_C}1=C$`pr-jb4&vc;P1dLu1qv+~^O zs4ppfv|i}Z02Nk%ig7w(1;=9NifYzC1Sx_hCjFFzJUXaj?Tk;`RPvRm(%=4ckI*DP zZuvd3bEWzXC{8Gn>fx84=!zZtbdyO5^hdBe9v???DI$s^Su20H6Q6GK+amQ%fPFbR zkwTypG|_#?p&M_*X{8$R-@Om+juIgVkg|WvK1eNA{>(&tx(}lx=SKQ)d@OyS=dMiy z6ey(EpL+g1W<V&RVS~5{q+!~Kw&XKbDShB}wE-&co-bX|WJBB9^m;OR@kw@RgyaV) z=OuhF&(;nXPFWUujm2<a>9cKFDyIb+#&6R5h(}>|(ok(xlVEsiF-G!8-m=oD(3^rJ z=9xpeD6~&(UB*815MAK!v%59#2NG!Zu5_Tcx#=M>=d!p2BJz{nP{1mUw#CkCXYw+n zMi>zBQ}gtgbGC~`IPs|-*e~p@12GjBW3*V3sYKGG(Wh9RI|<y^AGRM`i`)KLv`wK@ zQP=A7+eBJ>Sn&i}gD|I4zPxVWw3h(u8D(OrbzC)-Np+O94!QO%Js}0jwbI<F&v-;^ zbTk}x@`VK9((7)l^eJ)G?A?rxpmt7mIQ6QDtyV1^YHb~i5{33~e0A|rIY;%9=^{AV ziLdW8dX#0A(CP6uVbtETL{5(e5=E^-`gqM-;)C6tb&hNje|_;mvWS*%9+4v;G+QD{ zQ$nln<Zdi{rV%8tDxf~i%7T;$gpCWAmX7i$mQHH`S`oNiSA=P5%&#52OYRbHr-8$3 zs}3L}0nqiWNG<PsdFKmAr@?LXDg6~5T-yDHc%4*C1<SQs*}00P2q6}|`33ag1+-vU z+Di*&;kFB=DJ(H*+*b<m6y5li+rYsSXPHWH3)hkW=7+X|mCRXUQnc3h;%J>3*XePu z8jzJ2s9Lo&HLut8f?`dv^!0e%-upRP+4sIbR_AAeFTT7&EF)pe6JsJFjS`@SP3AkB zH{Kr*zC;M9rPVT&7UC;@Wt$};?X=Xz(bVsjPDQsTK}u>zkZWM}@iucmhsUo-PXxtn z!Tb2((=W9>k^09{^AfNXJNh%w2Bqc~i8HW+84xW&Oha<<QXUQGr<hUX#qyJ{5L%wg z%O!7#75BQ;RtLkg*J|~3_tH7)uPe_{<A6A+?oQab$psq+D%*&L?R?3<bCB*7qSdfJ z5Gkgkp+GPhiUca%bRZt~+x|c{5Clc&HKA?kL#NQHbIFUoN?mo=8%OUv>s)hK3*?j? z9vpMc1Lr7W7Y<s%*To33ZYGxw2ICQbFq{VcCDty7<B_0080v)sG7iqy?18U!v}}QK z@R8O;Ch8NUF-hpcqJ<o`L_sK_Z!9*+z*v5aLk`Qw^Obp!Hh{qu3Wu^i<JzrsVJXrx zY=XKEfkO*BDN=7QqW*L_I@or4q%f7E-BO~x8|@Y<Doi=Kgg;J2xp1t&^1~zIv|8)k zvu?2)+wByS*1rtCN@i0*6%6@9r_oZz2Kv?64EUoFb3(VZzS9mn^+d*>j;R~)Y19R) zmcKXK1@K-sn&xhL-e1mM;iH-*5&*%6!k)7P>fKYnu9o<F5}O9K$5s|_mpq+UPrY6+ z2(B{ha@?NYT&=s-t!J@~_J$aBG2adk6;rs??QZVADIZo9DeO8B$TNOzMdZJ=jse*b z@WGQo%<_ZQ<sr=|&7PWJ{I8LvuV|S;T6-jR)yJ4o=f!=2@gMLYZJ-N2(fN{Jl9nSM z`x;yAt(IuK5)9H>H#XDtx98&Aw?HW9k5}7U?OLz1rRoD!Q$44ayD$b`V(gvs!Dx3> z>h#*8_d3VE?U}G{!<}lw++}u-2QYjWd~95F`xPmbC7uE<y~Up|&ck>_MlH{yR}x7h zNJ-URd&}PC)^E<X+P%}!Xr{f@=@mzBD-bZj4?dnP>-+iPL8hjRi!FeAeVK55>TyAR z-Hzi6W-PpXf|Y^NLJtrL9xTf1S2RPtrmx1RYwA_to?=ukO#|Cb1V91aD}5x~?zNrp z2m|<~b18OU6}ns>6Div2wR?7$R;r5;(6818?RNS7i`gXf)`n8xkMSw+mQ+-`*rPf+ z!1&vv5-8x^QYm6(*A($8PU3KDhltd^THDz=bP_~lJBO>iW6N{gTXhb9skZ8MyS}}7 z+*w`i9B*zr9_p)YZ5>w|LTiOSy_n5$-;lA^5|Jl+5W|A|NIBsZ71i6)Z3dO|q!G<# zH=Wwb77l8~UakFVyQ@+sD%>Cl^LljL+diGPCmY2r+@&!`z88&7EPk9!93(Qw`S_W? z>eN-(xoG${E5~uSc{VJlD$T<l={X~wMW~0VZJA-klAy9;IOLZP1*l^B=J8W61d?Qk zC(FNX67zZGWouy)daBLk^S=D{b|76y^QUs#+d=bkbTc>zhQO7KhwN4-7>?>!d;QHe zb>%~0a3KS&*H&N{Pp6CN^f)+uX^(61a4Z*%;@ixcS5{|yOo5z8fZWL_B|>D375@eL zu_b!WV=rWU>B+AP@x}-C8M&UcaQ=x!wkz*{fNJ^^X|el`AO&pYk_!9G_W%x{X6@ox zwUvq&wtC@iQtc*7!RYpSW+T)KMO&&vCRika)j62VseG~&?giFj)ILtq#!@|zb}kA9 z%d>ah*u{lc%XFlUK^}s!*Hpons(~6AL*7VLyPNHJjMo6@?nj-Il64&q1>$zB-W|91 zCVe7sRL5Q6NqDeykM2+&TqDU_C+e)@#GQCYQE`F?-dZo-dn<{L9WJE#qn3>%$`QPC zp+*nb_p<jD`kw?SO?<p~Y{m0<8whu&@)T*%1F4QO?hEqmZLJ>eA+ij$8llBP`^Z@| zm{GbUD==%1-t-Bo8<@C5=1Os{SI+fF8;sji5uJNSjx)8=iT`}RwQ}WO*<xwEh(3Y| zSo6|qLZgJVilp&=%Vlg#yG4d3l31=Uzv5db5s#NxB?+#QOA=B^ViC28Nf+S|hY49E z@<n3h_z@c$F?Gb<PGd8Fq#hG)>!afH++#KO7}z6{&HA_{`Kpgs0JtAC$7j~fI25ol z<GO#mUsI>!@U~Uf{KS>-eQ5AvIsZ>Q2ygS~eow5&AjwET7d5(<*pbVh&9J8Drw4vh ziA#gTEu^!MEcb`Lc?~ci8B5kI5YLFm;#Ip%7@tR2A{@iyW45!Zvj5sX2H*_<^b$f$ zC|67#5OWnOw6>jVj)a1F%J|e&Zip;Y3#9U)K-8agBCqXMw}HT3KH51?kK28fx$3^3 zJKle#sEkF0lf1L`ir3bQt<6!kqN*d%$P3PeH|V#c5x*UXL~Xxw>_ojJO3Q)XZmm+F zBnU{U^`kL97;LLM!y{+6YOSt!tnB-@!Jy2ozv*xX492&2l(~|5&$C{8WL^ffwg6PI zc0xUgDQ&G&BG)cGbNy=a^k7kNJ-!e;vM<Q6#hY#o#F^|X^Ekd1!<^F%hRcyyG#-uy z88hlSM1z4U5WAs}%2#@o!GH(L)T%CpgYP`2f`v<*k{=MHL?#-rd(~v<RC$6p`lO9V z#Bqz(?ZyvCY?s7c5U|Jm<1iO;V6vczA3y>jh!#(`&r^Vq#tW=X@^$xnTSG9VBCKIz z1Y?Q)L=4|PVd>kdzRg&ucYo{rFSGx6=4a$r6G{KvLSDXS&46-fuV5+p1wa6^UyW`u zxoc;;r<$<CwL+%bR@qIjA5riyYA<>Hn<{&qfy}|2n>}Zz+s<W1H<8F;xPW(AYK`^r z@tWw^A0w;%mbS;U`zP9i2}O{C=NhE}`lNk8B8tvW)ioJ<3{uPmQ}tLv85bmMVj7+R zO`3#I$g?#7=Sy%*FiT-0P$$J~qq<#fWQzpd=i=KN+wu1+XubtCpD>7T%7g-UcBwDl zQ3-6S{EfTCY$_UwL{nM7YB5V7Zp!>j><0<YKVcw+3rf|*g(uR+9|}+5h40BT{T_e; z^E>;TjiyjI<Sc$g9}%Ytzspjkd0D#nh4}lWvU-ez@~heb`($)=WJd#_8&tCS%uzR) zh=%M!AdyMu+O143Q%cukiD<pma;oiazS1f-%4_HxpaG{g+LcT`XIJwvmSm&dy;7O} zzRI^nP^Y5PbHBaXwyFIS2qa^v#8xcew}V~3ov?%PTqBdu*UN(@f|P>QDPYjZ8>+NR z&Cak6FVE!4weE1Il+GsXl#SxkB3W+NIlSs_c4h4IS(X`f+5gt_)y)5B|MxE9x}HdS ziZnsc?o-sQmFI-t3AK94;)AN`e#4j9iv}pw`rTXx1ZH5UE1)aKx4}Fv=E^B`l;6yQ zXuS<Q7@s7u*2OY8=hB_`e+UYFDjW}28poGpeMVz;Ael{s;L3x`<3@!~uoK0tOJj>9 zj`0$`{C_}RlkC_86j!R2EWY2|$9Efwjm0-<qK%-1dDc0&)6ytri=9a$*O|0%;cXvX z$+XWm)1ZQhC0O~omGz@bRp^)oo}M4H>ruNBXu6G)apa%<M4pJq_rkH3bZ{|`pQ~Bw zGxkfT$&o*KTI&1aqjCs{8iMu5x@eCV5LMw*FMMKmn1S{g9Yv>}Kc(&o8xJ(&XF8Y) zMPJfEac}`UZ<EsmtHaAEaDOEE615)T*-f#N^d%i6Z<DjmY4BVrgIgnl2%!N!Og0hi zh8Dcb&V+qCIu7%$z99AoBXh2NM)jj8&<^u7Mt+G(kzYVm0As&rd4oo;%;U)rJ7G)s zul$e0s@`-qGpfd;9h5_BC`$>a=go>DN@l+J*yKwf&zAe%V^!<w^LZTY_U#O?a0vyE z{nQv~h&;gT{_V!dek6&T)I$CCK@z(1V&;nZ@uFWzls}Oi5PJRh071}u*mn;4-i~u@ z#m2AR5-{Z)tCa6W>`g3Yy~30*el>n|EjUD1aL<!#`lI=s&IyX>sAw5&iF$kn?maj# z2H-@4eG846P6at!W-5Hbvlu(SKORmH)AY`>xv5C)QJ&4bKOC!%j*JKW9M}!OHO|$Q z9_jUbJr?%oC#P=0J5IZaaNMt|uK&C*)v4qwCI+xFQwAd{fGzV8o{Qh5?}#ZOEu^HR z#*+}l6)5XxF+jH;kUTF(RzL*R2Z&hu6w(!J+Ef_OYCEr;fE?K9bmKL{z^m0a5W~!V zDUk2$BOb9^^tUp5aF1IQEZ<tCHzaUN9vly>Jlx!|dBTWAy$N2}tF3^%Pw?%*W)>cj zj91%Y%w-N_-@-4D=Sh}9b+#VkidhJ17BI6k3oalI!e`4t!wR0RL>C@{!7y}k-dDk( z9gDUyJKLLU<IA-cW|--FE40>9FPIBYFLPAPJNje4Uw_Vf#mCX0e$VaoIxzXKvsmz# zMb{%IQg%6-I2n_?Ht(T#lPGx|M=3eDw?7KIfC$(+pcDC;9Zs?!#yNmN?*@YEco$P= z<A-P-F`Zrf5!Y8h{032nG0{E*&XrJG)~0V6TP;3#z+Psi^#46>|F++$*6UT`=_wxO z(gG6vcw3MU#zR9UK49^eo!UtGN40igcr;9D0>Zl9&~Nj61|Ezh;l2DZUf6WpIvnCl zn^YaXgUKS%mFQB8pS(a<hJH%svkAVOJX<=eQY<Qx0Nn4}&`<`g4<SI*04q%%eUG3C z=oN-y3d$-d97t>sQhuPS{Ky<azdeyzk1ch2L`y<znaWHw;;}@`D#>A*{0l(qOt(w@ z>~2?iye*k6pz+T*qPkt3fB@zV{S++biSBZn0V&8}^q6cb_kU73U8<)~{zWd8&$Y%R znMVl;D!1Yip8l4GOD7C)ta<%L=cbwbuMw5A#L&i%&MDSCl}5_ClDrl}kKb>fNAka< zRidp)PT52NHqS4)FQICf&)h4x@|uoA3S);^V$^_rpJ$>lhcSngk6T`X_JOX75s{$7 zr|QSbd-KYERUM55$kIEk?6r!6>b6rLo=W+x*ud!ys%o=37;mqwtN-%UzE&V_^pUQQ zy1mm~hq9i1=f<j%Ss_-dzG_Kv9_9~B))u;lpFQ{!9lvL&aq#&(lD(7%!qFsTKs^kS z)kO8EhxaXB+_$JQX$bMrdUtD3@4o4G>w_(CxZB+zLaV>iYVEAIi^aCxn{c|(ARf<` z>VrYOl#j=~=?#SQjr@Lr^3fzbm3GLQ$g6ypH3fZo_j7cj|CR`B)Q@`>M!WmkTnUsp zP;dk=(zXZoh7)ljY_LPwM~C(L+aVjUuIj~T9M$+WpRtMFc@Ar}L&%bU<WxJm1-iag zC|1NCf&LGFlN?5@Pp~uJ{8O1TEC0Iadok`5Ujs)hV`OA&A3X3kBvy|Mh!xSMiFudZ z1x(%qp5*?*(j5R3#?9*?E5+$rU0G3sbLU*#PXY&Yq-xi(y|lA&Ayi%{{^nYjvUY5{ zo7x4m7W1nl<?=mFS0|wT?1E4AN)cydjK0}SgD!B=zoxd>KgH)DbLe4ojPxQTOZ%V2 ze1I-<-&n4#Ql)_N5fMsIQPEehXOD^Tj0%1y`;xfYi9P}35_|BWAfh~0><bA@lp<V9 z!W=BUC~#~oEW74yYIiKm5Qar`H!h8;6?n~pI|zppL4Rm8h(x2*5V`4HZ;p3{s(6)J zO%<H}sdWDGzzz(Y%O3sw53FFyxyCs{R@`V12GuOA_HKIFxYh4DmjnO7rF`Mk=@+Wy z)Rig@1qF$9{O*Fd^Z%W7{DcTAsTt>iP|p%{jz=N-oY>)qpb|h27w4#o;T~h=?mFP+ z7peH={U^oM$oQ&1iteaFKQ>Z<M04z!!PMJ|tH3C-t&jG{SCQ4C5t+v~kS+U+2VbvJ zWN&sbyjtaEVwA&PKa95~NBYGIj#E+p$R#>Z{2Q8X^1LVdsICAdkq~z+VTzXf+<)U3 z(%Vv0G4Dj!AI$V~^?L4`GLLpn=&b&S;#Hfg#ft5z7Q3yAII6d{d@t&`w{l|6=1XMt zljR4bLfP4k#M0SfsZ`8T2h{@S(Jincw%JGIEWOlKIpbI<(yR$uWCR4!HHBC_(4iWl zAK~H=$RTN=v~d>VfeQ?Wj<AOrvFZ84KrL758?RTZajXy0tkX?}X~$L`|Nl?g`-L{P z?RkD$TU)lOukN{WSyfg~>(rG`$z|Pc<sO|=a#?+^?rBY<+!h^?D2);{6VWI^xrmOK zXbLeAgC6u?8WTh#1`+&VE@toyO3;J3n86ID@q<(Gg9#4!!4IY}L(!PV49=O##HTFn z%ICM1<Udt)?m2WU>;Kl?Yp=c5Z~gv!f8QU~cXH)7(MT>AA+G_CjO5{xP#cL+PXM~f zVj7k^GHmqOI6LXBa-X7O@oX$<?fPn@%lX(Duy8X!ka6g8;tM02UF56!p@NR^8S$pY znFY9Ar;6Y7ttx=~gLo-Kk?7RLrc=zfd;_ajY5EeClE3M;qoZ{FAnar(`~07$4n6;v zeNq{O(l7IPc&9xWXC4rXxG9pd&#6^^Defdk+ncIPszmF|vyw=>7`P7-318ES#767& zcGzjFmcL|Vv5_;f?gi0}nQ^j=V^f)2h1)2&`(9})R&fli598Wee?+oyV!Eo8dO2{j z=DYhJ30uE)-Puqpr*fY7PmzygSaY7!_@~4#DVCB;Mx@+5)V~?O)F1T?hXCo<aJ<WU z`F3bN5q1I3OJiviM&K(YMU)L#qwdtW5Zl1?fz&#f$KDmy5BUXy@!c2WTn%x23Dtz0 z6<Iuhb;Qe>6%GuNW~34eU$KAOuY8FqNV-o!z7u@M<T^fKY`oIZBG<wV-|NrS%rX)~ zrXfi^xam1b(&t8?)}RVKITkZA5dm3^?(n43Fey4CQtLD;&Xu=wkq`|@)-i)Oc8m26 zD+F~t(XxdB0e`8UHR2tegPca(PNdjzID48GWZ{S`zCKxPtQ153K=G`+T3;dKJ5akA z*go4I%2Zc3YtBWXxKf8Fr9CXFw$%@XGuL5%h+602a5|AI*&)AunuuJtqf%iY6Anq6 z$cvHKtgf8$?dR-~Ai7p4zvbLvK$8F%cKDxuybDCtFq@dM<N`MZ$AOF>$%kEbrO62f z<*QS0?vN(oO<eSFXb-XB3836FvB|k8#yG$6bIea<phDq6Do0H2vT)-F=K;E&<nqb` zu_ujsbJxuCsAg<M>(D&g>-}OpVk&W4><Y!VSfCyW|7{}-&12g@t#1I=$j9-x^^-Fr zGCU<KkZl}iVQS3z#g+L!4CE#d2@FIh{@sOEyoW0hhq5*dC(FO645UMt04*bNqKu7A zjaMJ@K#N3}Se{xckiRpD-CnE?CW=~rVsz;73ob->KO>TnBCN5u8F*%mLLqQZ&k@8W zl1gY-63PuziqwLYN>LDwg}pevC;$IW^6#<ObTXF&Mj#RM6q=`J%`^VlY^-x#aNHkg z>l?hI)axA=x>{bK<c3)yad&~Dq0+@H=_c6YXeOVlDNy-93e=05=cG2c-pf?HYD1KG z#SxQEA=TI?`Dniao+gu8E3J6f0tyJ1-`S1Y|FQNqS|g(kDw0qWsv80~xr7>&fzPB= zY6R%85m@uCl-5$al3}1S{#!XB{p6GNK%+h$5?YfehN0bbYxz9U<Pg9lj24?XMpm1G zz__7_)Qa9UTnSC*$XXR0^;RYdo`@*ay}jRC31-#e^aJ(5p(YyUWF0sf9iBGfY(c+! z|HvOM19oI|blRjcm@KBcEjoTDnUPw{0#pm87~zGw31(wFH&IInSqN*9L8(pf=@e>^ zV8ux$oe(r!HknR~8kI<FN8&Pd0hU#5mpHZGK`lTHpzNVWukn;~+GF*pEmJfR(bzjG zfAgu#Rk;q*J`+Qe_2UVBHEGbzi&>P|8{Di4)HgO>Z){jYqX<{)yY>3+*>0`2YyF#z z*X!%AH=L@O47O|h#o2CMkI!FD+n!(RD5myX-W{Kwr7^2=U>aV<c{TrhQPP%cp3CuY z^juwEQd^tR*!GVuSqS~<w7W+j?#tTSfEj+F;F(aZ$?$7qJVJ>?hB5PTEWZcH?;prm z)5p~@(?z#umgBlreJWLJ#Z$w6y6kP+myzqOfoHcnJZA6T?AKe7LfURsk&16m+)>?U z&WJhwziX^ohCajE6Hv}`uINuCwC)F%^n&GT=_$Z^&}xg%v_kT5?y=|bas<N_x1Wr| zCGs(#Hh4S>y2;w|`lH2EehrOntDh(o;{B~uB(W9@M5}3kY)7;e-`1vby}44ZjV)}2 zrXHrgZd-L#x83z2s;vJj8p#$DsY)bCg{YcCCAnlM8Lq?v@jy5lE*ee7**!hTW-{4> zQ<V{OK#$=a1yH2XSl@Dn>}ZF6Q#W=Jn$?2P!LjT-TQVG6Cgvk-T%5Sz>GhIi{fey0 z<7lxMJvPaeH?N;W5`9)!9wLG|p1hun!IyBUzQkI5BpH;;6K!Rls?^H}%IQUzVg(_@ z61RktN>a*(uA|oWc60o%Hj57G_=(+rA_@oL-Ewp1h6mOS49ECiWZf}7E#oWE$D4Ry zw5EG=Y{k%!1KPlih0@hTeo0-+!lz$BKVqRSY9d~kVV<Ba;X^YV=<WhcUx3^AGwYlS zIVZT`XRLGomGmVxA*7V74H^p!rWx0;R7YgZrcfv&M(Eo?4e|y_p=*Y6=3+ZYp)sAA zAXt65i7rGuk<VPQQ7MoNj7qVXwaE)>Ge*3hmV-U-7u)Uac3Y6%IrQ}{CzmTEbFn}$ z5b_7@HesevEI}E2!Wg;C*NLFB>i4T=Q24Nds_FMTtHA^zgRN23*;09H&9_o~%`SOZ zX(gf;B7ZKT2`67E=1Q4zG#&5>J9a4MrSMBU7|F+0%IREM?9Tu2?$4(yp1;((@$c%) zYIJtIm-CBo_CF_n@!2!MN7E-$3-iieq_~iCWh>u`bJ=m1z9}Z+A$K8A4Y-TJ_&2+r z)+nw1tlH`1aaPq{kD|q>ryY&HZAXa%u1xx0))_wto*O-b{?|xyj)a5e+4KYCuq44q z4KsQl$fhoQgfeYnS2sqZyFfg#0Qt)x-jxSP8WJeSBh7nMXvQM3M0=;5h~=AwXd;nM zB%<LM1zBUBS8T~o?*6uKeg*b08_NYl`9!W(%O&!mL<w?=)iDgmXGFM+C7ZEpd@o}A zCeQ_S_TgQ-7Y%&I*t=$UFgQpK5}&)6mAbOei#fMo3iT3{cm_qW%$JEr*oow%q_J)L z;X03|;%Pe<jmDC3)*KrXG7)WsVm@CgA17jQ`ztJo>!OW^G8BkNMLIx@vD8@_$fG}y z%C@%48886O9-4K4U8c)egrX-+)*Ui;l^}X$<#7xAbD{{`6k8L4bjRA#@M9Jkw*>F+ zX=i#pOCp;GTyJf6i6@L6(%D|ZZ$y;(foG~n_3>dOW~`7{OTx{QiwH*KP@Or1`Jf$> zzHt}gxgpnDxS6ygkXNSt9Ont+I4E|CWWb_feF}};7>^^@Vp(_;#&iT4bVH20Pks78 zTK1eC>L=@}HfmU%np|U9k6(I(-}eu=!at*Dz5wl~H3pP5O(8F5LG2Gi2mrAz)}B@; zW)jnrUQ}=%Qf(#U?3cDvxmGb2WfWnCNklJ8x3!6^9~*DXa8=y9_V1`vaXVPc6kGn$ znpgy?P3Epf`Qq(u<Buhn;*J%^4jHPQ;-MS&!#|}T{yEl~j7JlAm>ai<6_9r7&tz7; z_j+E~Fz`5uyLJib_7%uoRFp;;E1^toLtLnd%%i6Tq0<q<7PqjFnjcGTU(Y`!D>hmk zL`UZsBMB=Q9aPncG~Ve`P?4O%`>%c5&K|CK?Aq6D(ug$njQ)21?R0(W_p#Pzw64ei zK?8Anm>`lk0CO%riYdGx!p^g#+#TvmLGRf7hN4!IVXLmbse*kxgvV*Of4%N;skZxn z6S`ohe_h?x>79k#)EfB5m~*u|fY1uDr2VL0gAe;!JO<(cmm8e+E_Ez?BjW$Z)r$Oj z_kUB*`(GiyephD$8T;?CWdct!vq@6_LT2|DOz_27@$w3YK|PiF5CrGlU=i?&FT<0> zZTbtmF2p0hz-R`hVE^~&KsLFWiR2?J0L<2a-}VA*E7;EKa3Y-bhXbl&m$swe5WJ_A zXbOPYs&fg4Wh}raDv<0~osN>A&3VCox#}FQmIuXHz2J`)Fd%)QW-8aPj-BmHE>;Xi zLTWQyC{ZyiqB3oWrQuxKaCYoaIv<V1u?#Am2)><8pi<WJ>t8Xheuhq}Ekl_CbMqkT zAJ5H-BS2IA=tOUTg7`W_J;8@Y&bs!RJ)K9*2HwcyQ*{jT*sn@8bVmPH0uQNm>2IC1 z8;9xiVZ#xWL*z)E#>s%9l!Lq*HS_)q+vY(jd42}|Ihj?|z79s5WHS)TCi$dRD%D0Z zt(+*7Em3vC%l&9598voiZ{u}e)*aC^OgzS=#$$`fl6b)>*!X;j3V|}-6s1y#&hrn@ zhkz1Uv)3-?!0Ps`F1S!wUB_W^rT~A1!4O?e?u-$U8SC_waM5eF8C|i2eQKjlAS!aZ zpN0Ut3&&94`c`*03i(7Tk%=aDSB+8c$)Y!4?Wp?R%En1GN73tYp;lbk+c$w<8J8UM zPdMf#<MJ~`=I2^gN!mT}K*p9to<%!h`4Ke0jeKWyA2T*Fn;46d)dd!A-eWhnL)9wP zE<5}C%D;!+kWTq_m4APK7^q;XcRJS4Jgf9KMf}SrzI0@FKb-a*F;)J<T0Iu4uSp)| z_9{;B=*qSPZb#eQ!%pY0YaZR<wmTdS`O;}$I6Qi-$5@tF#yYW7$q&T)@aT&GnEBh~ z0<CkJsWMIPG3LG?Mh&?5OMpwlM~l<mIyrE*_aPG_M~L*y{yW#!;P8Ae&H&k69aKmO z2qzAlHv@v`o^@Of>+Oww=U9w<72D|0|68SIGM#H@bAt??HgCu|I6RTuyB>YadJiX8 z5l*g8wf9F>gD-{U46R#i_)kcMrmIbJpTYW}BN;flZ+aUSxX$a4A?CqIWC_5M-*0HS zZmnlK7o!CJ8PFgs3u3joX|nM@Sx>xD5N=GIz#2BhZ`cr&wuJ@Rs|hiK4zvo%t#)bY zSfs4$Mn@U*9!dKc-`t+wb}PjnsL>$;)dL+P>Vsg_vE8&XGTb9VNBHe@c;Kek7;6?Q zl#n(W<yyA6K57XubMs8=*tf^@5*u_;_6}uo`GLjopIMX`<B}|#6Oin4_tx2P-<>*Z zNstrTd!xK?bfW~Rug>~sO#z$=xq{Q^zrHTM?mG=xu;thjJuJi;{X?{jS<Pg)D5VO; zr32u4(LFakJH14SuJJ^`1vE1idK2AGU0kI0qi=TndH#k>WfS>^uk`odIJ^6)%gfZh zv-@U8dGmSaEWhEd4qI^<)CV2tTMFZO_i{RTbL^)&0{O9{Ppe0h<NrbtRF+FHHywPx z6>mcjZ{0NHqNZ!cx%%JQpxVe495<=w1Z#Gh>yqiqTynj%BjB1O=I2_F>M0hEcst@i z#oZL~C7khpM_^9gk)6OA$KQLu!v<nx%=1H`ZEA|l1NAg;zs27pZ`q6K|17nK*NFrF z+$GG>E)^!(Und0Vs?JL@Fn%%IWXS^qiH`qlF+w$B0qijzajA$zB#t452N1>gT!~nZ zMB;`A!QgR_jKp?)SFP=a0*yNFj)TDiLZqYDhD&D3Wte3KWIkw+%|XZD7Cq~=%AVQ2 zlny49H<cnEGv=j+vfk@nr6#pmvhWR7+L)25P;6J4#bTDZ#OT)-9SMe}CQwF^1@|~> z@$^f?-o(&}+#`!%Yex;$L+&{<3-<zm$VpU-=b=mF3aB5-j)C;q09$nosHgWyU&Sc@ zFc=-L@jY!KLqdQ(eK!BtaVOTYxVlx~p^fP;0C&NDJf}%0@Zaya_SaMq8aO8dE4D^6 zSddu#&Oj6OX_fq`ci-S6{>QALk}XV1c4B!6v>{2VT9tY9_z^KPF>e4t8Ox1EEIwt$ zA6syXpRl^T_`^s!60!ZhPES#7&<FY^T7n=s8p=gO;4ZgX^?o26=+|3YnN%Yb&4r?V z_3w*Ke<@*y!xw8C8*3Ngu$>^JRjls@e92_1985>k#cVQ}E%G8*ZY7hxz^?8qljppw z$7K~?Q(PPA)LX+%B7klkhMc^CtW#U?BrcGDjz>Up*MzYX#G?2j9_ax*XWUDiDT5i+ z2b2H9AK0C2qqJ5ntc2d6#SD5iqOxQv=GIH`d<uJQH=b|j;(PI2y1icBWq@PMIE7?3 zN?F&TYqz`(f02CM)|-C#3q@9JC>F4GYCTZgFrJ#{;g&B;Ir2fsU+{<YLjorg8ce}U z#q&hKSucbWL4Q%yaUS}&+a<#y&XAy!^}_gLCQ;p6ybju*P@IEjgz9`rKg(-WCyihE zD4vDY@hSZ$3jl>$1(G7AY0aO2Spe|isu94`0Mp&X*rr@~swIF_>kXc0$cq441RKT1 zZw1d{{@lX1LkBxWX}{PH>z=_>maG3mk;PKZ>bcfOC3yS5TEf}C^cX@a$pw`L;rm(Q z0zX%6LG&>5WHDwXRXZ~CMw{_)?JUy_<fC@Jo_CIlH7nRwfYaM5>M5Ef_nU$&xoxWi z$yp`05{j^4pq5kd{cL=6&Q}s!aWQX99Z?J!ec*@aWDkF#q1h~kXv~x%(`K2p^y!j$ z<P}CuJW}he4OM)oZ9!O~@$Ud)l`rJJ)xw{VjRSv(iUbk4BKj}?I+_G=Ah|W%A>5>o zM0Ocl|3_d0g^$5Cv-CXdv1cF7Ab<U?g@{@Tdy&QoVm|IADQNbTOGu38(Y#kRh{q<j zcA>|C^YGl+A$9i{inx_a=U}i4XB!cjPWOP6j+cYoEijY&P6yK@V}(ft1}Agj#GLbi zN?xu&g%A7NE+L@)L3iA)C!Xq9N7vqOmIi%O^pBpZ&%{weF($DpFa^tRH{@=w4vVD~ zPq}>^UMX2w6-kv=tiN&2tySl>)mssAxRvWcwzMiN>Z_$JvWz~!Hbh4!^P3@Jl>TXD zxth+Q+dmj)l+fL~$%;E91V>^Xs~vy$ekWL3^TTBiD`Qh7hM55s$PSw%70O!{RkBf= z{7!5F6Bqso91;?D;Ji4M@8QFhIHJh*1-b%j79}Yj8Jt8)_;mHv9pKX~MNW8qO=KLN zbr-cT7`pb8A$Wru&+c6>FI=-sAX&}jkLu{yv=8a`=bE#~sIZ1YNw`XuNVWWwxq{9n zoM?RUmHLI&X?4vQp+a<1EkpfvBoXqrMeelY`FdA86iiK-p7QdblZfn{#M+EhNXPsk zB9i&I%7(U^dQFA%s=nWlwYA;dmvdn?yw`6Qkty)I4=fLmhX*79dDH^go-Q)-)~*30 zxm3-9G1-Bw$LX%GyMImA`N2^SWr{H{IDUKFx9Z8>8vDG(AwI&IT?7g84|R^e*c<35 z)60*ai*-g+`#BuPllTkLYZA59>F>CI<^)#xQ}y8{R(s1i9klA1lV&@zp#mFWf7;o0 z63kU1Me300D>)RK67;-SE#|h9RT%G_!}0e`c_xqG312pkvIp&GK~vc6jVHC4+Q(u# z)C0AR)b8ni<5>2{&h?|#<Hp=*BEcDL6T9R#H)IMaDoXT}ew1-@--n2w$wi+tZgsrO z1CmX0O=R@`q3e&yp!!qSfA0D-_N|Mid0=?LZ%m*a1fW5`qRb&q#1A(&eN*XUTq%SN z8Peicmy$Qs(9kdusuBYioO$YYLE+R_Cp)!6^dEutNS?dkA`WV5Q&;yu_=}kY@fK?* zHUlD9)&rY6IM9LnB>;}WcI}X|diWbOoR-qvm4n)K0=xyvJMd{%oJlPZEJaI>$rDF3 z{bz6w-?RTDVMqWQw;42VUAELhbiMoMo=eYPXpFw#CnT>Q6h6AzoDwsz3GUG<0y=NM zEvbalZmRac^B4GC5~Sa%_9zB0lFz`W%K|6+GxnUs2VKPJkU{K|9b?t8Q(_B8sx3Qp zAG0U=C+@WWiXHKhg2dBZVqZs;LUG#cPVa9Ozd?!1Pas%UOG*!+MdE8C-+#v5Ri&<T zMkVbgRmUh|L$ddVJ8s1aPLwX(91}Yr7WKSxt-}i}Yi|fE>=}Ltf|}S}1P?VF8bq(= zhXB<(4l+oyr`#;SjFjm`9^fvvT&0{`%Z5s*qDnO6HU4Z@KewGLNs0MVPF*T*jH1*a zZy<GVk)%^?fhz?Ly9EzAS?P!8VgJsSZEx-P!{@Y3^a41Gi8%(C^H1qH8GU#_8J)5i zqvs)Bg=Yy5$nuLX-85JU@MkhZ0vSqUOhsxwUtzlt2zwpZw&nc<7TGaIAm`7hZBh|Z zHGkAEn>ah8D>mWSdc9?I$Z<_&VCJLNC+|Jta=mwxu9@6$4l&q8%ecJ{@4PmjD`pD) z<9Q-A#N?l#mw7Q{P~ZO6Tr1}Qu29K`GZ_NHZ_l-&6GZV4b%Zf>$4nO}mneR6XI&$V zWe_M<@D`>{H6|cYMxV1o3YY6}OxXdJYM?Vnvo_c!lEUPVcCh+7=py)3WIRg^q8Re! zD{6J-UH=G8a}w~m(cs*ZPi|h^wD)Ekgxz~#q7Ofr#4>b+IMltY(fY<u?j7^i8NXNK z_v5$k{pg8N14-o79vBJ_-FvpiXq3@dT{PcX<E`$$qf7L7F)}xRFVEETyB{<Gga88p zIuIk5iG?;!bP^XP9vn)y&M(bAg$fsJq$^XE5X12aBLiApV%U)a0@Kvd@w~Dt>9_rK zwVIYOY_MNLXm|zA1}l|pUto??C(r0Fub4ki5OX@Wmyv?G%Mf7<&nT(k1HM)ead`9v zHis&YKL14fP{o?ovXufzu%gR3iX1Z-bX~7=vNv`^yoVT#?1)xOey@M_;cq5~mS4EZ zwPxtKU)?*BmY1wwlAk4--n__P#pGYInLdbn(<JMOIVd|YvcinX@wrmj1mP-P+{uqQ zKXDGfcVbV>iAzg#`zdVp;qmpJIR4Ep<lL-R<^;q5y5p;!%n5Q!kn}Wy`A9(!<Q98T zT5!>#1-d~-fM$O{Lv-~EvFo;T5-ZR|{8Uk15W?Wj7oMnu2LGKjo(&2y6@5q76k=$` zOkVnftx4#*8HcP5;xi8*&wnA7pAb;IhYGug;9**VyC8N5e#y9Zo+q@CjGBlc+NaVj zsf>~_sdP%QL51CqC+>6(WXgmC$!sXzj|SVp=)p^Tk{<(veFX0_5E4}wf}+7_GM1^P z6XAL!nd=<LIf<X#;FW)TD`hlFm9CZPgme?<yz%N{WXKYsJ9@0Ei+fj+g-PXm@m#Ki zE{A3`!y6Ux=7pd`MYQz$xtMr+WjV1gWlhm9v*T|ymn@o_Bhe0&IBTpSf;V+^ZV*V| zKs1&S+m!uj6BReCej`r<)t7w|2&0beL<zi62<5zmm-!Vs{u9v}NP)v%#{nWIj*I4j zdZ;SddLMXzI&TbuF&{?T#m{W-<{%ur?(krp56_U$6B}k4P5d9+ML;42P~cEMzzrZ6 z01n7IItjPy?MqN?rlUYo7y+$5{Dc|cki&w=KmrU|&;;FWjh{u;6M>mE8nQaQ_tx{O z|F#dGLjRj$AH#sSj4H&6BjTcz8Y)B!F)-C&wu&Z?z&(a+7tC9O75*QlVxA@*Q>pa% z6m9pp__{<dU@YUKL_d1`iS@a<`#kwvp8pW`k-5N>-fn8qvtg6?OZvKRShY)#`#_iI zdwXP;_*h;#T{oG*6k7HIGL~1+5FHcX^ZTz!uCU1<_WVz8cYXdakPzGJ@m~*pJ`!%d zUUz)x;$zs=y&iiMC-0qV=*l;FWtW^?uP@+32<?yzj}9;T&v@Jm25$lXUE<;LlH{z; zEj_dD0rF<2#aXONZL7iV+H1*AeZ9787a%P<I-<VMhSD|J!PFg!shiLbVlE$AFSk@A zyOVbsj^AnIcd*3WTl~y{jPd5D*Y|&;e`wYN<n$9pR*2yW0L$c2itF_8LkX_jU`;)g zOFV_^_Jjo@I<QWhqe^20^)~;?b<%F1STFAa6b5DIjjG*+iP9gUlbJPEYIOdw>p$a| z;^?~rIGGWuaV^MzJL4k6HF)O}#>0)iaifad0D9f7-FiNhDKOfg4=Xe7O1U;8FCEMj z`K*!;=ISGH-!NIlgTs>>kB+tqU!~(Y=$|C0gVWGDAW>ud+DVl&@m#2#mrR%9YGAdv z;s});Kck$Tw*1C#_4&PoKjS51_yx7kvz(vE<f&;uZ*v0N7IR*ZaQcSl_6BHU&iiJH z-kjX6E=JlyDH}TL9gUlYm$Toh<{?HaO-{Ia|J+v1eD%E4=j5EP76V!7m2%b_k7VQJ zwcv`5Vii_`R#?9t0~<u1(LM3Wd5P_A>>u$@N=-hQr>-SgP`S@6i3<IcoI!@oBU8T} zkEH%k2QP@Cl942<GfS<gu{>!>Lv98ZMjyYVI7i4JlseI4pCpwa-S7V2cmM5F&-0gP zWWRL%1uG#`td?L3CDn3zN+R7amX{XzKq!4RG2j#H6H8pk%i<}PY>j6>Qf~TOHesmE zzF2tnl_lR15(aDWQ+_940TD4oVkKA$&CY&m_h?WIq>>wuHrFEQ$kqu!9(86%+Vx1L zUH3biek)n)=Y#FNYI!YQ3s+P1tx%_)No7w1nUY;uDcg2rGd}`I)Z9Pp$0EL1HDm{4 zhx_?hBo}su-f*<hPQ$UB+)qC&7X8h=qhhXTx9n7+bkd5I5}Be6v2do{jHHuAE8uJI z9&HwUzDh2gNPB%N#{(Z}%WAE%Qu3BF$*6N2I;|Y`3!!$oxRXmITFGjma9Al&1hL>x za-?RPsIN-nN!IIeh<Sg&>N3fal#yy8K(iz)8xMU1z4pfZxXs%W2)WKSeuFHKQXZ@x z9;qKAwPFs2ee#DjO^9TO@@I}`@P=Mw{9{%z!PuHr34SJ01;3JF5szdrP3~@&SvQEz zy9_ZFVH_mt`2Nz^LD%QPN5a44T1usE{12KRV9eKHbV<QhnF{k0Pyp+tSc7(9M_9dg z(Ae-{4RsouVE@56Asp2!?qn}BGDW}U6X<i$UA3MjbHex*quM)TtS9M3(|3{q3_yt~ zFTMH;juzlqsJaE<?3cW6G5P*L;1Kg;5%voKG|4LcbJR?24?@&QNKF+FG@a;RoI2?k z7J!a^?>^IOGfrMkUYpL^4#HpKHtV+M)q&ZPEa7{<WS?fwZw2DjtuXaajbx#p{M5Wb zk8!#F&J%aPm64-lrBa@Fb96R3Yg%jSziSGw9IwoJqHS(njnee7qDCRPsa~t3)<<th z6|A^5j@0u+Qit{UFgAwZ$mDvt7VcfE53kWnE{j|@xh#Yy_%(mn8FysVEpMEOp=eel z52IOB&Aa!z2DTX49v4J2jOWRpIJoZKJuk0a2rmZP<lm$<>+^8G`}*B4r>DSodytUx z^wr|b?2Bg)5Iu8WE))D%24^YAkZGh25cfY&YU-~VN1^05Y1I#4Cx)$NENT0gvBh{e zGU}w0o^~bMQc?Tw;v<)OlU{L7hju(^`<2c1;fQ+}Px+i-Xhqr7&rQ+~Hf_k#2FaI^ zHlTG#q61QnR<NGlw1N`e_>eu)z{LePDLyj?4C$6cL$@utQc=-<X=ZxZQ~lAZLspzV zXj<ChyVI0W(h6lOE4r!ekPi?36>C2Dt@qnR^n;lqkYD7uFf|IvBe10x^V+<gm58SM zf$ecGxIc>*{c7N|ld;iiC>qDdQ=}zU0~(hWx_Bd<3>}TUqgB<nnxi%hWzL0XJry6q zA0QhKeaX0cm|h7f+eaSPYbz5EwbPEzIwiPGa<A0|QFmx;V>n4zyM3;(^w}K<rkb+I zQWfF`O>mG9Sgh^ZHGGSNW|BL2y@%<>id4_Z=g+oUJ+Ie;K6K!8?rh}jLesb=T2dgf zk$KaB^gg;n_ZU5KeC*#vcesD_X;KgTpQtbt1JK-mpQh}Hi~HPU=!{mrt6BZK?1Sqc zYogX;Z~Erhd+qyJ@8}f%x$o>Fd%HP0c6M6_-?OuNY_2j*F)DA{B-t$nxikjNl5jBT zE}*~5&pbN6<-2>XKk2hhA_*nM*60YOnVi_S`QOro5=k@blW#S)GCDkj(A?^0KGu!8 z&A*%;ARnYIFtb%X(kA<&q`^FWwD@9n3F9^at)j%+mMGhhcu1UI0^*biwWmK}7&3|H zpG_6I2dPr9UEB+>BqYnhR&hTt$`h<ibW<Cpn6q)d?HuOYM^e(qYR9av+XtO$p%hCL zTkU=S$kjgRR*LWpfnMM9tEj{-3)!OgOhtCr{hhNFepa3IvE;cw5Ss=2WfIU3SBQuY zTu5TAYltv@NK3#%2;^*K64jUz3?1)>Xn>M4px20X)`%>cz&{Ywr_RZr6FiDmiUBU6 zi*Zu~ms}CpSXB`o+E^Z{F)QY*6cVAJPi=$Fi;6cT8Y4lRL&DsYC=^xX)M=N~$yh?k z#FBNzU;;nkXv``^4Sc!t2Jb#QjX$cKm1=kKBdcqj;|eIpi!4r_Y+{&8bP`9_MZA+x z>(sp#HOAO4+BYLUqR-Ir+2`1(zHxR6f=&}(P4f42j*E83Xzmy60rFf5<7!36=Gi&^ zHV=)xcAjpi`f<4&LULGtnUc~)Df8(5C|{gOWQhkemuvmKK)Eae$6QOJulVt9N)6l( z+DU|bS+_16ff`w?uus+V8v}&Yj*mEzj)$gU2)eyukCt6v{p;p=KAK86I$Iq#X>Vhr z$d<9<o;jIu|K8deKVSvZ>ozVxeG^RyuNyuNu`0mV@F;hqngJ<iqzatK!J{TLhYtKr z`nrj%F!jVG8ySu`fCo~{R!Y^NZ;FEv4+@6MF=4C2(&(Z@07k7J+PLY&I|mZ%&2>S$ z@&|a{yXG@_&#rFrgJi$Ii&i_q*ugGMxa}!cp8HpZ@3~tSC`G+X%}EqVahJIV&Fyfx z-!F%^$Ky3Hwd*;el|i{eu-Lswz^8`i1CX;GX_Sfgtb=ekQB^A%k2ey-gV9lniX&8C zEEiH%+;fx|ojPlL+2vcZD~?j3OgPc0l!{3!PKW&qcpv@+{zWhTMOlT79`1(kQuEQx zQr!BX@$e+yxlaA1ddYtZO~EVUvH7M50BtpqAp?X^y-UxrS5wF6ZnNS;n0bVtpgT3T zj5v10LiL?+Fe%ru$JMG0)>^@Rr+?^nQGp7J;lT5x?OZvexYUH>BNjPSxxMzpo-oH4 z^Fn(?X57p<7y?W@Pa-y;`-IQXwEPW1A=y%K3`!MmIjK<C^R+0m-HKBPIw>+JuL;ME z1~%TmrrM{okrfVDbYfK!pLP+An`5VPd+|^&D3r_q*EOE)JL~LueaEn*tMNfSUlV}N zUWfFKU*m?^A_~vHIj}yDzoqZL(tR(Z<)-iF#R<wN)E?!V-WNP-+v&F}lfHL~h}YPt zZMD_0U@$F);9t8Vo*#296L<RsKZy*NAEWXC{DX*2Zc-5Lg|PGK%qcKryj^@|Z5p_9 zfjp36&S&Eh^OcejpB+wz0+m$Zz=!J#Q!^Dx_(T49+J|QI#2}!Zs-23ZlYH%Gqf{i6 ziZn0RyIyai1JcY#1>~qd5N~9*&$D4MJI(q>4*9Pc-!rnFC>YFva!K~l1NCD!NvI2- zTlPUBx~=xNqfzHg)M<}$r~bW=wRK%wvr>V5zvtJ{Z6~!IsYR4O>YR^q!F}JUMOMRT ze|^U%s)0Vv6KdGW82?o3;gjeZwk<5`LIFJeh4I4pA4bFyv?RAfm=-0}x>nyRW=i!k zbl}8atxa9l{nzsKR?8iQDu469IXisa$ksZm`<q89&2O%8-;12NJ+9Vq$5Fj+IWD71 zBpO%#w;q3tEJn0h-`NV0N?JbA53>G6raPX!vDCXGPbBkeo-(n^%JYT_2!8ciUB=^Y zureH*)VO{1I-BUk)zGsS$Ez4pmn?^u@lls=JA9puC)7~y->fM=#J?%yS^V@*p-_^z zh!NIWv`%SZca3uy5(RwAI*y}dN=7Gg<9g0iM0E47Pu8?OjGnNMREe-}o&F;h%!_3$ zR;Q-5ulpIaF?`8sP{c<KSNo>`T2_wZr`BLExqkk3@VeGiA$668^U*nRj&o_dbnbt{ z#I1K4{r+JG*{giLbCR4l>#@;Q-?C$M8ADjQ4zV|4q{28X5#&Fi6?nG<Zh;ADs3imz zWxyR+Qn<Xv-~WV@mu=0KvIy{M@-5q0#EcalcA&3V+lK1*8`Ky5kyQ{_Fu_A-Aii`q z<clJ`Mq_x?9}w*%$9M8$dd=)_2s<w+pzK$8S^9De)h~+P;%rT?OeL5PCf@6s)#yq_ z9#J_)p;qPOWLO6=$Y?L;*=(w9jamSjT|l$D)*2jZZmy+vPFcyOa6jkJmyn@)4JIX@ z*fWt4sejXwuUx0PFW>z?@4lG&YtLUZ7sXrhGvUP(PRd0lqM3%`2IfXBFO3G(kGf`? zdI8CtxaL6izc8<EKk?M20=0oZkj}@e5N0B`;Md5va$Y+T&ZR@qY%EyKbz)(vE?Qf; zY^<}Ei+6_M>{cb*9aKV7*=(pX=!Pp>p8vG=%|&hC^HGa{&;ZGM!HCzF>H=?#B$J^? zB^|OZecdyzN6F{gdfg3jcWU9v!EUO2xDyWV9F|kN2O^W1b4G^|&x6*O{nVM8j1rQR zU{!U2b|Bs*z0Sx0YIv&FP%OeYY$F@pL}Yi{IW6r*{Jd4iB;3CQy>&J^cdF#)s2E%M zBfBLP-r0>Lx*L(WI4Go_?;ab*Gtt(6+p)*$l%Ao#wGGzscv>=Lzq=_nQ&`KxFPX!? z!K)L7xx?j|Xh(Vq>vbGp+uU<0q%Juz&llJLn@B#vDDo6c#)U+thDCT4n(ah%5a|}$ z>2fKf)=TN;PN?n2viVG=0{EJNyWPL&2Q&HVN}-T0wbvSrokXEA?wfx`TmA{H!WKZI zatqPZO*+Q&CHJX{bT6(z=%bern;*FUnYt=Cr2=@K@$T6VbLkx^5cpRnJ|^-{Wvc6& z#Na^W8bFn>$N*+#&dMu1Rp#zlXTFN&DxqwmWN0DeSxl~<(NiB|U69sK>frO+pv)r^ zkCEj{mJFuqb4zfa&~w~48jLyWPTVX5eIHxgbybYbeR8YDa@dR;b6lzE>5@3>0}H9e zf_!_Z8GC>O7HAWJ_VX(>aHABCci}r1-@a8K)I2&QWn^`-YZPP|lLwjuTI=(78}F9o zPp=XlB-LbZ5)Kgms~wsw2BLaXJ(24$zK)Z&ieL9mXMD&0)+eociwaBpzd)AReY;3} z;jRztq6dPW`>6Hf*qS1c>-uqHhZGOOs*-+i*LD=Hm#|*b-nYQ+F}=6}c+f!~J@EUC zF6&77Z)w8^+$|2x;Tlr#*b+y!)>*VoE4kqxJAWC{YDRsuAr8ZcD(FxleGDcbWRY_A zlC&f9W@3L%&i{P^_qn@Hw^<I!Fz2uz;a|TSYUK4gVduZ+`Fo{Z8f$qMdoPGfti(qE zBU!wkKl%d&N^W+1*H{pQ71Knl(XrOUk`Ft+@fK4YNIQ_-TJMo{T?B}v8$gkXf}>$N z3>!gzd_$pM5jSkb5^n^aK$zV{J$EL37Wl}>6vO!AmxU1yEyzbN%80r3-gP%R@^_5J z`R_Lr@$r28xE~HgY+$4Vf41va*hPPhzWxKopl;2q7R}V0)SA{fT~e276Qc<mb^cd6 zC{lD>Si#Wvudpie1cwkDVz2twl8MwoWL+0y`56C-1a{d%s?5rtTz3<zHFX*$aWK|w zEy+28#0w-QpyL8&9B7oSAZ-!Z$aM#iM;u^$zoq{4Kvyl<%Vrcnlc#S)HzvBly*R2A zD3SZTwl@KnN*yXxFg@|;2X0Fe+xjh`QXC)jr8wEF0Ucmq91_$LTnF(vJ^!5kbZ;t! zefz1_!l)ht0TQWTqW9fo*U!o5{v-8#ZUIeOX~*RJ4Fkk<@9Lzcn!61OcUi4wn7}|W z{^mOG_1U?Df%3-l0TqXS{dy&0m~k$qqp&zQjpIlxTWJKdu}mfV2JoZT*BK1rQH!kM zNCLf5S4X-dBPJOzaxD-)az$9~xXX}dP11MRXZ6|1sgHoF$^_B^8IfbZQm$`A&Ix@J z^GvTUEGT!5;bF9CD^!*tdK-rjN%;EFyav?r4Z9sUn_T147VtQpi{vSo7oJyd@pwWd z4T*FVd@orJ@XDL_v3ti6{!j5`nd8uU(7tjeS_{%gQA~HC9Mga}vot}o#Qp^^N3(5x zOc}SL%j44|*X9#&;Qx)((?FM*7f=);NgN3RsrZq?x*xOf%R3yZe<ZQ+&$VwARE5+t z<u<1kZBfC6wg1^uVfdGKH?9eGX#7J{eJ7o~-j<{SkE_^%(4m@5#}kzz1>q857~;Hk zu9=FZ;D!$c6X`7VL9^*ZFcgl(Q;8Hj9<~>fxoA8=N;$uXr?XY(B1(=`Dyh2W*;yy3 zrgsmgigOMtO9<u=%Ikzyd(}$59Pv{rAQa>l=Boh5;pWT12^q=eE7jgAABOzlXoBaU zvuldGk4wB8S*qo{&QMaga!k&!m~V{v#pl|%L?tJGdyXtoU1*d*!UT^jR@$i0K2G$a z?VMCJEOer)&Y+gseJx&|TNt_k96FLycSY&iRaK~$s=6XK0-US$#JvX}rdZ2Nxu+4= z%tM!e!pKjT12YwuU%0!GNRI%5b7rgju+$AFiiu2b&)(UjT;Y==f7r(3;8GEl4*QQo zzMcKSf!8NvgSDL6@B_X71-*iqV=R4m49F%V2S9QKkZ-rI-LXixSCM0TRsO2n2~&+A z)7$6R4QTCTQR|~-^8&}3X-Z~z(~{jiX^Gk~@Mrz#ntpfn?l19a{yE5z5H^71s{WV4 z|3j@8tf0@;vQ)8yt-(Cvka)4E5)bg@&5OI95Fvw_5AoXLw<l!Er%yeKQbN!9mU?K4 zX!)1?W*+dA<#8PzB-_DYJ7L>3ueW2{{MSH!!4B$0I&3(NKzMi-_B&LiR$YIXT=)QF z3)g<@5*Kzw<=OVs>%~!l*C1Y_a%!gLa8ea#rJ^Wua?1CR|E#NK!dX?M2)O@GKvA2e z<5=|M$lmk%F1@}BuWy$l?gad5*LHH&b|^H;nLDqotx?U&+CJZCJ2QG?C9K5goG)uu zZ?x_6*;aN`3t2sDZB&)(Irc#q)Qt<KfFI-0TlBbp2(|Nnq9*UBT($G_TJ7Rum_C-G zNyo>Eno3rC{OQz_i<*8JaH7ZK4V;+%L9I5HDF&x6_3i)6^<NW%hiB<?m3TUhV30ud zXODpBbEWVpKAM)x^?X?<Hl*uWE#`E7@l(%)*I<E6TtaW+R=AmGaJbIQPo0+n-eRyy zI;77_B4noO_ZGaRl05pW!1Ds$KJG;GvDc{@-{h!?8*cMzyOK4@Gj0lq6@+p5FNztz zx9g2c5pJ))9*ugtes4xT?0I7$e+_6~4d_i5ucjegY>Rtu%S}$dNg7%6R9O>52R3mz zvFWh91hFtNvE2A=%&K!o#sa)%U77f+NUZb}-V$sWYCX@x<KXLw^&(a&W`GL^igEOe zw5=}3ytPO129GUL2m;0t1d4glW5y~?DEt+geE`UW=!PHKrdX*H834xHp75ZvUyM0m z>+H*fOeFCf0vUlzD{$Lx(PJ=;%(KA;VJA<x*(H0zB~|Vg#`jslzT?i)RA)Elv*r{c zF2f2rM&b0a*NOw(A)3(uW&yiz9gOv2d76+7$k+7V7`M%_Um_`fpY;+C5kztv4A=W} zM5AaVEKcG%Syo&YAVW_@U{5dBC|Tkh6j$E4R{DdrYPJaxU@KJtDTQz{pT%M;rcQ}U zmcqNc;q7_`DktR%g`$+YCEeLK{?NA~{V40~*VwIJqbW*cBT6q!y#MesP3x2zA?F;g zkCG^eNA($?vSne!(ICTtbCFJ~018=<%=hyF;Z~f;L!=Q-vq8BOk8M=#uMOBvxpvpq zcI8fLo_LzuL%>e9>!ebzZ6#SdT<@w=0Z)V0xTF`RrE^%WpNw5*p1qCL)7B{6w)T^~ z;%1h`m}wMHmGx3LY3;Q~spd&@GaHBovz205&Tnjw{Rn-~L<Dc<s&Q$ef1-WKYm$>5 z^G<+CGe5D+XF_=n8^$;nXLLmrmf}Jxk{EU_<B@>V_b|YMkvMdmcN4V0gfRLN5kYcA z5-hGfPCglr-<ultKi533;`Cem;-?Cb*mKDb1Wcn*Re(m&cnpY2s6b@>lton12^Z$w z&(-Wx{7r0xj`M|tlvOP3Cs0<Am<(5C(7mDn7a^#wxZT7+ldQ>&i=dQl&!ogqVCL?n zPu%VLMx7d1i6mL&f9KDp{Qjg6h^+16S~&n!#RVkBQ{dN!>;7IX(+r<Fk_6W86ri*3 zL06f}lsGw=^Z$^1j$fk>CN-Y%Ui%iFiP9#v&UaO!hs^$ab_S)>I0i6B&xtvScoKy> z>WxJ9I-x`^*hzTPQki})k`BmcQmwv|@TIc)vy}7Zd-Ro*unwj&Gj~ol8BP-g3Q-8V zvlpRUePl20i)2&gvtW1p871tkGza*Wjy%Z)Gx1<*{mxkR<2m_>WORQ}{B7(zAUlBS z8<6eXOw1eO<+pkg$bLA`7(27#KoBSk#&=k<I(SI{^CVl#5fU2}$IL(?JCMP|4#cAp z(u`UHI#W-9cvIk&JOFfmN&&bR)cmw(Vb(ou4+>!w-iiyTF21G0;etc~YI&7Zr=yLe zR3~WV&pjl&^soCQe3Qa$7cm%wcxFfi&mGHkbadndRcgh^E_3`x#F53@;!+<uzUR?z zZvcVb@7IJu;e#gVv2J`9K6-(ODpw3%+cChLo}kh#Mwj-Bi+F*4781_aP@Kd~sROHb zB5{lp(Z4A-6CV}h9}>?J>kzkKJVI5+z9w^>7P+SN{2zd%`a@9If8zQtMBk(X0ME=# z%kqImZxUs`5F<!a2#pJveIelo+^%9VeaeMGuAo{znx0>ro5zlths1OqSu+1(d3s*h zy$AWtz4c!41R&!{zM1Xyvh_?pfA_U>&eyV;<8>Fk!yRwRI*UYOjxQQ5s5jAQWE74> z+wQD)hzF}*TH9<<VEgd0-@iP}7ZT-iJeSF@mEL<h3Y%?YbN5;y78_8MGZGzcN20JT zo|0oUk);OHCR$C5YhZK>F%;*P5uzy5I_#oPOcquwKk)`gnm=W@CUV>DIyokRa5y;G zSSe>?A)j~3C77ISd1Yf5?bU3s>6E_^($NlCHx;)(5zm7K$xwI>a0f(**Fw5qlSaw9 z^P8zX&zIN&UxJ_!KBxJmg+-6J8dzZGrco`X%^S$hJaZ&k-8Iz`&&0isGBY!e%fwU0 z1>*}iG12cr*?vMlJ9faj(pf7;<+|S4+rwmPtMuNU`*#jkTDbsOPT5MtTWorR0p@xl z7Adec3wlYr`gt_21=Jbi!!|LU2ikI*7qM;p5$`pPRb8m0G?kO=NNYYyz{)ifLeq&w z@~K=O`ht2&F6_05?-758*{^<Pe2JEOdxwgjC<0oRC|Ra24QK4l@0sVaXq&tEmB=~1 z`Gx1@-JQLaCNRY(vTBTsk)L8*0S6%y)pAWgb6HC>;#Cry4QedTOt<U6**H0IHV&*O z;&Krd6@0*`k&f$}nk+}jq@wEVxp?<v%`<X9B9CZM#<UaT8{1ASy9Cy^fQ<rE53KRx zr{6V4u0&>piV=r@wG+3B@waU*RV|x!Z#zAzp0&2psWb(ytpCOBio+P*2b1E0m9!Y| zsNJzhPB}eQOK-JO=``EZ9vOdz7bHkD^7kibOQ}Law@q$fK42&Q&<i59K3tNL0{}#< z;PoBej82WS%aR;3JXy|VTVmUX&ic`wvsJ@Egr%VGv6?FE9;wP9ykXkqWgdm|ME=n6 z9P;F-GfA(>2=}_Kcy}e=5s!Ws#7}>y$4Y><6X8QP%`FHZ`>x~sUS=R>F{5Z6ZCSmk zInCNsiU+ki3d%{`$tyY<CzVr5$G-u>!I8B1L%hg`Ji9!(wzJc2Q)S25R`OGFi`EY* zKBv=?-uAJoR7M5(;ROZdFE^<uzP>(C)wM}~7x3+RkU_%d$yzioo%=%Qt{+L!<uSA8 zi)G`3K@i*wiTTOca04zR&ZWxT>qy=?*)34%tRS>SzHL9WMS}!D->h78>(D%VUX6-^ z$GtA^oDT+D+X3Q+twFb5?+#j-hI3%n>hX$wcaG0!ZWgJ!Y|sqa?8A_K^pP7ENi#WU z(@ap(G8Jwv_xQCgVS)9gMT^kaQyoB3#`(vyH=f5Pre!kK1<h)bpfv9>i<QV5%^^xI zKL8fJj6%J)yfiOr1@4<U7^1Df=IhN!A}Z=?u~n??T*`&qfi2*22R9~~LNV7&x9n_V zW1|s@L_+CwzFyC#ip5kt;p`o7^)@!RiU%s4sB;$mez=)xG4^E6gtSd4nLi1GToq0G zj`>G+rkI6dDPt#*7j33Ai>thpB^48qZ0T_<#F&I)B1#ur7p+Qt)!syrj)pVwelVQM zuAcTi2ls45OvaJWJr=5EI|>p!8Hi=@C<elnRJlQ!bZ!4?nF=3*k*T76iQiQdT&VXJ z5;cqeNL;$a?}!D86`)Dvhl%606XmyGiNz}Sc;x0=asZWoNBJFwww7%fa7G)9ZC%9- ziqQvZf%!Q1z|Eu3w+YkRCDQ{ih2Od4Et4<j95mIIJLcKYjBb4EZ?cvC+Bq8KR0>>$ zJEr$<^1mg2P;l3Gb*Ndw!~UPDuujs0gKX~6Gf=wAkESg9{c?e(;)4N%4?BCkQ-@gh zX>ZT-gy7jd?%?afq%wqT4fBL^mE1~#jyX|vUN~A7(Z^#sCGq00cp5!m8lGyL13iF? zZuzlm?m223IqKpBLemqPIUUp?xllMit=6$~8Egmev+XM{2IH;@L;@<)I97f>hI}rS z<?<WnzV;S~zyIG>6_LiFlZOpEGqqzoyN#+tVzaHbt{{Stbz4FKj1*Q{84@PuBDntF zLl3{@f&h<m*E=N|&zMkaNpPlm9FL#LM3<VR0)P>F*9HwB941hn;EMsML#;Tng2cyj z`x+_~ogHlG6lpkF!e|8}Y+`Y=5YUFfmmwr_9gYkaeg>2O`b6U-;Dyw43qy8BUP0^1 zvMh~Mvr9q_C_%?XTvQNg&CE}`zJW9wOT3)E-f{Y3e&b)z=6JWT4O@B6zC`L=gcxI| z|8lBV%e~#mRMO}6_Jz}(nBN(v?!4LFw)1MMlDYN|?99j&4FZ3Q<GG#ic$gaFl2syX zr{c2`sP^MoT;}*@mY&WDrbh}1qQ!tAeh%Xz97>B^_%CUvnsPbe=ti~`i}r1AJMOza zt{2@`wQ8~awyo%vT+SPGpN(J_QN>MPJ3Q(*Ddkdstj_T9rOGMiEJ&VWS(xmvW3@^I zlGv?0zj@oEZwHcvuNPAEj<L@1Lmko9^WK;mEG<-8T3lG3^Gq8DhT<x6Sw|PAr^$Wg zs#cZDIP<xt;<7{Ubx~r@H3*(x2Ji9&NX~2&Y4~&IrCEO|b!-%edrR=_v?0ZmIwvG9 z>S`zQ31V`3{-?y%rKkZVKF)QZ8w*HRG`Pd`Jt&s+pF9mu@4Qiay^Dmqn!v>}F`OjF zzkgHCfO)G+IO!>F2guDX>7N%%&LunJo&LzV+FV)LG&+XS)#Thh<LnGhT=FVDer|5o z9r&QQPg8T1B58n~zw>-5a^&sNd8xFsT~Za!VYv1^&%v!bVtcz(;yyYt%@!SYT+d*J zS?<D0dr#84^)>%JCD$CPJA=K}95Qc)!_27)HySE@3U}HBRVS%)!vdUcp}nB;Id6h{ zGFL^P4cSHefLFq6@p~jMm^zE9e0b=bInlkc6)f-Jf<KU)IJe87#-SwQ7r%V>*!?%2 z{{xLvM$EHmF?RIqkpyAQ-0*a25gIJ<Xo)4ZgeQ?z9~T#jGT|tVsg??(?munys;l|L z+D@TX$P`wa+q;{|)y;ahxp7de*`;jZa(mEq%AIB`cGO*sC+qgxoL$-=*Ey9bbqd{h zzS%G5z14Q9(yu16nc`}p8_hL(Te)F7mI;><-E2G)sx+&d@5l1$CQ?)ok%Emt2ay>0 z?D+YEbryezXMCSU6iCeJ&K<D}{uRy!#I>Z7@+WkJw#&#)ttkwV<u{IHk-a(uMM%6a zg4U#<f*QK(QI?zy{-n6m_z%NLU&C=ui1>BIJ1)^>;c`OCYr_dh1zLevI*4p3zsc{Q z0;&K-mJ~^swQf~3HMG3eI*0Z-XbjDy(wSfwB=hdR<e?8(cJv*acYZ<3NeV$~N9tG( zUGJLKBEV?|Tw6MMT8i#qjo%ST8c{$$$&J$z9nCqIE=+}x);}ON90vc#A|hci@i#3l zf%jGT%r%2MU`ip|sMY9Hw@aPZARgw=cD>zFSD>9s1uO5AtU{(-nF`egZv{{gtXW4K zYk+PKMFpDMfaDnwkETzJ+?dn$6z3&sI|El|6z~G$4p^`(3uw_Eo%c>;NJjUvZ4*Fi zw}||%l!CjLyTQ_mym40e7~Km)WEhF(@E{~|xOrX{wyw4+jkUE#g%^%j+zmUvOcb3z z8O`|UayU0$!nq-}&s~#?E2=8%4|kN%Uy&)>PuGar!}(e><*a4-uB9PK)JR9ZI!@QL zem7p5eL8EI(K2oJf*@z)pg_pzc|dq%ZmQ=*vrf@D4mi0QZ#HV_KAB*hQ5n?V*XkrA zi@xkQ5>Y#~Z)#RSjv>b#)!nbx^flCS3~ZsqZkTs7V||*1Q}j?uFLC`xy2`G}dlhmr zv9BjSo}gy_;$#slxR7yWiPEhtC`xcL7;ixW(1VGiK`bv1@rGQon9miHxvgd_MTrt` zn!<3ciE}?!dP}A8Qr&vB)hc(ZjZ&#m?Uq|xPBm4Kt(}WWXv;~ZL%Z)>5Xx`JnAEnv zu2=h|j{Bm&YBmJ40buxy3Nf&NRvE9<FEnK>D2AVpiF`Hj1FNLTlx8Z8`K8dm;?bg5 zD)1#i!)j)|c`ct7qwxyCpq7MDtiE}c=>s~YhMBt=CpbirHaR_59Z52aW4~_J0{J*= zeNiGbTRKj&)i&qgoKHtRK&zQqPmvhz`3LT25zYQa;9lz5enMptDO5>OqlcCi8<D7H zMTZ;sZt>IN9CKc;QJ1~iJSjHv`9|^NO`|>7UsIu4kD{Bw(aGq<ipr+Wfjd`+UL5bn znqsxC3)e@ZP)fAQ^?FZrRLAt`*Z7RS2E{6w^e(thj5;`p8zx?8I#}jf)e}!$=k2(7 zqC}Xc?0O$VM-w-FqFz%582wsfTh(!*G`d6tXg`CQ%U&{JAEAwY#XOosxpcDn<PGs% zK`jWGG)}|mN6(j^!{)#E<qJ19D)R*Ulp!cZz@vs`qoi}|PfT#^s@J%>Xl$&M%H8&5 zyIn4=`1`xx6nFd8ZiS5Fu6k)mHW0Z`XlcHUoRwQk#bT+o(ROL29B#M6<rRA;?ObkO zZ`kE+<xf+W#pmNnO}I55APJEJvzjwY9^5j2VI`lRc_?!a4q#bx1fnQFO(`)TkWDc< zu;rO>!idSN1)E<Gs%Rr;Pr={drXh;+SZp8BaUY@EE#bSw0-ks*kQGm77DV_-9u9QH zRAQLpqeb^q`&b=2F{1P?!tpVuJ@y;5*7|BMOcB#yKDFQITow{rgPq>CDz$sZCl1Ux zCu?nc&-jd-(=;40-5p;nvRa1klQ{O)sD*2ARM7VNOV2Sf@CKv2Ab^SG1(pOizE(Fy zYkz?9GCymroFQR1&+1lsqh8+_?N!wF5Kr}LvpIx3b5C6jUkS_nUT?Iww>R4Boixe4 z-%#762IN$a4R(<K@Ba4PKk~ez{>c-KYb6XCAqn!~W1AU4<W`)_cEn{pbW!JPnF3GK z3p1W~quq-J1N`VbpFhW4D3pWARILY%O~W~@G6uv}?wyZ7SK-BTKfG)da<8d>a`ZZ% zuW!9s?W|XOFa}3tGZn5@yO($&*S4#tQi@pHeGT~0>w4ZwKS<<AxCOZO&u4@?O`h?H zPXqZPy7*!l^w$&R2|SkYQFscCADe;&?+SK{e6^T%>~yipvl{X|Tsc#zvomM^Y+nYo z9@u)=U<BID<E*$Hv&WZ5Sygj-*`p?0<FdV(zrXaH69e=xzl2*=>AWYd4z)1kioCJj zz^pTBH>@{KbgQho<pEBdi&f9Boy%bekW|I}x^#Vdd5J?iCo&cva$oy9w6!C3R0K^( zeVtE~=jl%^LWRrEr$AK?2F-(d{lHF`=O#cQ@opdxigt7FY_DmLpV%c6U}8gwHX)Xt zW+##WmWL*5`xTyO{>fAk)E!7n(T<oxyex`&d-FAzIL#}o_c_Me{y^r90%IxIJG_$s zg(>@r<;VWSsP?=XLL#f(-0b(Ecs|^}VPvCg3Dx=%dBXNX17&#aB;CJh%i-Hj{k3lU z{q3QIe*{ME&i3ldwltPHE3!R(i0)KGce3!H2sUe8QFiMFiGf6wR?6~;jR~>_5)u%$ zV~2oqDGqun3LU_C>bN8UhV>Ae(h<V#O4d`5{xtfT9K*}3)D;<LCp-P%a8fmCeulIM z+3!aVi4Owx>tMWlG>iKO2K`FCv%C1=9|`{OCVSh2_n#^>mw9y?!_N%kOu8s(QYR{M zKWZ-`Q94+Ui*ao82k5w>KL;MV=3cm<ErpU7HS5vB%-o~JY06D_kh6&w66nWmdvc=6 z2P0RQxPX(d?e5kb91Za)0-Eo~43hCM<K;~a-snO;namepkFF^n(fhdRM>wS4kUuW6 zU3~a3k_dSyXrut6l%Wrh`BU_3B~`Aa1dIQf=e)30@JIYL-*CsWw?@M){9c4iRWV;0 z2Y#(6oA`V+_#<$yvI!N>;j!5S^yMzz$wig1@*mM@{ypo8cti2Q&n~z<{EKY$%r5Zn z7Hdb6#HNc!A?I)d;;hpR=P-116jF%|BvxcYB|;+-T0qagyilo(^0!*fWyU$Uydb&G zdDChss7+IQ!WYdUxc_Uf%l=AyLnuT5KlCDljz?r)3JnV_fX3_UwfS@0N2nv3CwVGS z>ZeEjf&>(c<&|2dUuqq<_~&D*Xg;pAYpZ+uQ~Rq-dUR3fU*e*!m($tS@zrrFlePkr zk5=_3<LfYyV^UF)@imrYp4kU#cELn=)eqENc{Uo9)Rnp_fsI)0<(=(ZPYoN5yMnE9 zJiKtuRnQ%%4SPiGQfNaL98SjGIIrqQTy@t3>^hmFinKN1rI{JW+_b(!8p&}}4%l># z?N<{mh%E}Ts5Bj~d~;&4s(-M5(Nrh<mSZtd5Pi6_1l)CFX1=$d3F(1p1LeVD9K-Q8 zRqTWP&)wC<(cIWS0+ysaBR!1oa9|xfthZOPi|8o!SKoGSA8EfNQr*?}=^rc>$dBPm z)qV3}8%@o~j~<x=Fb2o{FF7LfG!<1wV&lkemULE9)KI)DhpO9fYJI2HfJXV$N;oLA zy}o$C>sHEoBA<6hhgQm|;|uSrUW3m`SXZ64QyZU$b3T<q-+nr=W}ZG`#AC`>i%U=M zghk**H(?P0LXG)Zz+Oe`o3%pTovvK&)QE!A*XyllBC>gX%4LWNj<8Wz@up|EK_!#K zaKE>s!yOU?kzhzVErF2+vz0MZZ*CA0krZ()zsEjB@qvD-?ObNK%(rQI_TODDh@d|P zHo1rkM|+utCBvQBKF$}bnWNJ~tG?N|UTth{Htc3&({a^`>0+nuY^q{s!}_%fW;)q2 zp{}G=zujtc2(dfq+4XF>HSDZt9nat#1S|ikp!8-r>fJ#rtH|ucwwfQ0W&-=H`C>O+ zOC8K6zH;-@Q=B{tS^RJyo45h8QJ~QpTm!C%M_AS6X|kS;V?vTIzo5|tcr(SPc|R~j zqvSdzUWkW<)!w5mX6BKz9$ML0L7~y>rHs2#MN9)Y+9PP?E+WowqO!Q5h!al@<;rF3 zm0PEfu?gOyze~bB52C~0krO(XZRvrJaW7hnjQ%yJs%omot;VZ0?5vuj-&0pv^>}c| z7Usj|-@LyO`W!#DR`mvY)5-P>TGsZl4K6m~?~0Z92u}z6+cUEhBlkv_0O~Xl3u5~N z@jPdsPIaI{5Zt&>q+}|8g)7EH5&7U9AG{N$gf0jIiE31`GEXFKfZeZS#nU<pBWnX% zik^}0U4t94e7+Po9F;|}Tpx+!$%E20xlauK%E-@Lz#dS;VLzX#l{QMXOn&O6sKO#Y zCXvi+<wCaFs1JMXOd=Kv2C1K#F|saWA9^<E4dGoO9OPN{Abf6gD*Lc_{idjFm`%dN zq}sCba5Hgk?p)8p?HWF54E@+<#7j6|(a&yVe?&&w`<e`WDk-Eo)C9+>#B#o5yh&!u zqq`DSB60qD3Z^YU5maf&l!tXF^s=Mf`=WbreVNFJV_=X7lTh7q+9LJ!bq-Czb%*Zp zV=NtEYMRy;c6w3$1Z3AIGy<u_!*k^0Gz*7X!Zm<+#8WUsF;@+G-5(H!e_OYA`c0_& zs0G|#S*Hk4#p)CieQTwVf?x0;>M0Gb_laRqmU)ma4#Eja1%^i3eS1gHvX%6v<!5Ll ztRZF4$7Apn_RbSVhSdC|f-rSgP?X;r3St^aAWj_NlAULvq{^7m>zY9Kh0R%1cL`og zb8j!UWUcBTt6UH8;`kuMhsu#yEzKOC4ZCJ7SJ>r#=u%^ZY}j^FB^^{uuclI#t6nE7 zaMj@%1w6+jRA*|fT6L;U*r~c-%62C`vT4={0KOJuhxlMfRYvWT;qZjJjD0=d(80vM zon^KWrI2iLc*HpJi)GP6rH;F9%=98vY$JjZenE?1xDj$lHC5Dz;j6U`;-9X1amQLW zmE2>xjkSyBc9}L^uCA=?jm~K0WhuX3TJbuk?J<bhj!V;CZ>)^#xsRKCIcT-^PlnNU zL0atJr{=qg)J>aRFFhyJ1|vaE+W;>0LnZ&>mQZd49=XCSvyeO#tdqA<>%{$Rds|hv zx2<iVT9B$=C_%Cg8~@Cgy!q^@#%~!Emn8ZSXkUKJ3>Ux5iwNXbJi%$X{ESV$5;Bmf zek4*VcUJn{t?p`rGDgwRW~o)$?ryC%+J)`D@@^EH+qF)q(XE#AnO5~^HIeqbBF843 zYjqBG4mbPFTA{EpC?~^_^+=$R2@L|lN+jkbq~{BjO5Q?Au94_#f9W~#{5d&RI&w{p z%lyo=sH-;I4U)~jY^qc(E>j{_^jDm!Xr$|@6U()gKW+BN*$NE8=T@s27=$j?ihSd^ zwhAY$gEh6$wtth>TNX;7aJ&1%H_cvekB?-NQo|{?r45t3Ld`2Ui)=&&iP^==U%7GC zlCZ@JL*EYwKZ7qE4X$wm3FPoK%Wu(Kw;S2>kdYms*ICD~Sy{_8?>lHIb}VvUj5gd} zFJ$4h*(vK0|Lrz~r*Y?Vuxr8*S){q#D(kRLijk`&eWBnMlMY|zkh$j+-E5~3XwsJw z!#0?uA7XJ#qS!8KpP>Vd;d*G0vhLC-ZfIlZWqkh=>(NgvUNLr<%94M;PK6|rV2Sv> zXomv8C6Ba?cT&SfxqdcYm?QyTmVZOtIsz!cpNzqYj~&l|GBwYjRn#~2D@nYhwiIC( z>y;p6$Jr6%zBKh-#kVN=#xBtY_@Shm>zjv;C8wAoI?RH?P^S+|3bEWj(d?hJTQh}7 z;A3FM+3h~>?eG2l-2Xl8k+_YG%skWbTylPYhPU&NY1Q1~^5-Pi%uO$#(=5&~sfcXO z;WU@-oeF@?yR(dn8LuYZ=}F<Bslicl_o`IB+D$p9*TXD)u;uJjpXV%<7+{XRv$Dz= z>Egn;p2g{CJSnaA<woH3>%hk4sYF`jr#uha>4-aYU5w{dv<A~zkiS?mt$Ijn<GRKj z<0^`Na1#UfGisw!WyolVj1(ORK<qF?o^y8NN}7V4pLs4}sc|K6E{1l(qaonVXk2&D z5bSjo81_IO=SvMi!Iv=5K{Y_U+BqoYoPMr!Aijg^j?*x?0hDmPPyxtD2C1zoXm9?j zTPYkw19#z|Q(lj)ti;yK!W1tu!>lWRAQ<ljL^n5yg_4l-d=4Y~hvb7u*c1huub$66 zrM}sVrKf=@&-}t1UrjYO+od(X9mux!ol9nRpW)8@UVZ0^hm)Zg0laFd5q#Z0RfFo< zAUq5^0o6Ybq@(|`?~SCIp-_3{@Qk4g7@^q>h7zlhRJOD|Ag3f4^8=!YfhW@KtPt;O z6QvQ^hSEFZ(!rKRvJ(un*fYHt(NSDM>a+TPrR?MKW>lpcn@EI{Rw+NIITu*{(2nFw z6ymKPWU~kMakVgPt8nLFgYr3iy1u@;Rlln9zqPu)&hN_ke3>RN2fun(asMrCnBmRL zqkD%V3jeo-+g;aAx^{5bKF{6mrXoI4>t-LnBRHv9I#!`bf$Z{pu*1LIY^Zc}vrLH_ z*Zp0)2OB7`XYO{P+7Eni6wwu)Ox3{u&9G80(bg~LX6L5eVxBIN0XU0o{XIUhYC)3f zyt}?21=h{0kZOPUncWNe_PpLb*>3X6^D5vBf<b317*u)gg}|_=-#LRoKvAQaPt~#c zWU@_ObSfE-Pi(<1N`{O}e8n??Ppqdx1%`x`aMTk0MHDmq81#eT?zIcudb+tz6|TAn zR#=SdT@izh==y*@?U#+6&}hA|-b_PPB#0p)7Pl&)on~jB5YU({O#00a=I%^KVaSG3 zkLH-E)-!vGlpoBBiBYBLt|!d_AGEC8{lRKCd+A(sBf*s|b5wQeY=_oQ>z$o(qlTgZ zxucD~3WeXOKsWnlwX~u%mvFa2pgCLLOozhf-AMz}XmM|`&}rA$7Zt+l6Ptq}kEi+R zXLz0D$t3DX&;wlr2bCr?{!%<rriT*7{j|4wahbmLMP=mOaPRzeQ5;q7$oPf*mG(ES z9v!DM`c*b9FGtnGgCb5Ubzz?Md~m({C+Oz?qi}(GrtHOMkwt8r$TCoi&jrmda>V7K zS%?&C@v-Y6aVtI+-fx+w(;n}-(>Uw{jL9{R)!I61UMCa}oLv;W*<K5PS*%wM`@D%t zdr$eRaXT3fldeg+;Yz;#S<zd}Ui8w*id|M-br#BoHutl>^2wevd|gjbG+<kGwi@7O z8`}Y2CYR16i&5XI*N)$@ZQR5sh$hJjBk>}}7U8wem4qgQ##GNs9oVJKSoO>vgd$75 zBx1S98D1&ZR^l;C=x8LIioi{jrG9+07)b^~3HZdfonpJ!69~BSW%9LBF%gUT1Cb;G zE(Mi22zY<UM@`S7x@?bn7MEJL&D5Bc8oyzqWiPTk==Fnm37RWdn~B!}Bx<4VIR`IL zQy}HM8`i}r;3-~T4(weqEx|rJ15dp6HdyPUjkpWJ(6DKpkAfN+uZg3Ss9drxkMmw7 zb404~{5~U1^j*f9pNznXQ$thY8jI^QIJU+7mDEjfO?gPE_5g}?4<KmmG_d$^VKh3R z8<QAZl6fZT&Nnz20HDHKbG6;vwp;S>Qdcd=tce3;EpwrQ7prhS%ew+8L|{&|igd!J zDelr<?@fCrIQ&`G+b>;dTKthFE&TSgAT?XNjlw#UZR*?FIXe6Ji52_E8<Ntx#Opt3 zZSmXBO}Vzi+f7m4prka{-sC(;ZeUXS-o)-<W)<9q@S8IRVQ>~+a{+P~Re{akD<rHS ztL;*mT(#pO2U+rSjw$FYVC)0;YmO=0@m<VN<fG>$E!YVm!BsntS|H!WomNg>>Mul4 z9t;N)pZvhYL*+V%yf!@ZGX{P00S-)~kH8+?;Bbr~OmssAs78cI6kOC?a6|6_!mxfP zz$4Q?tHfAK6UGu8-r}Q-gf($A*38@^WU)?1qeo;M*s)A-1*=9tCP2$vYlrJW)o%}r z5*$nuOk5RVtG0schiee>PPSYLW|+E4R|S@m#KhY;S6Lr!k56P%yvIv`FQMFo(=aSN zhwvDDsbiV`$3Rp-U2)!I{o5d4+D=gpV;Vw$+tphMIvE<m0nSuIbZcnNxAcLf)mRC# z5p9xIo95CKU_)99H#WKH`%j39heTSac_I^7MLOK{Q)VZo5rYUgk{Bl1DiIz&;r^@d zk4Q6Mt%O3#0dED}K6<|A3A*ACo5(F?X|I7QNg|ED4Ah4B2D|Jx_yEM)Ay}(vB6I|E zr?f$|NJtkP>Y}LQ#Cmx|CLp=2|CKd4i;?Or7CnF;c~J(M!$C!fCHTnX*5(jZfcn*p z3Ff&AnW|iQG22X9w?1ELx%G+XO)y__zJfC{=lkq#O<r-dW#A9cNYml&ZN0Xs&|Op) z?lt+-*LH%zc&saXo5dcdvi3GfSWUZ_7ZWcuhr%;B<;c?~O<%Y@g<_5r{i!*fsQ*Wb zHBS=tG5(izqQ3jsB*R<BsOgv<X5c%Nt*}czZ_y6aNZAbZ1GYaBsgarQ^JA|R{XSCk z<r`an6^d1ZHnFiMCfh<Cil0bo2r-dHxlAAy$ol*}pB)YPpjxQ=gHf-)=ciC|EW_u1 zoAi7>Z;(ai>-opy*~lBWj;s->pQkF`J%{#lg+byeNYGkbR%2H%TuDy^ABC|x`G~J6 zI3g-8da~p$kV>HQ*eCnb;3EdbI7-665ZKXpVSDl1qs0N^ArcqgvROPvFr0}G+yqPy zu+(v!iT6&H2Jt4!lBN^8L=H`ksWqhWS$xM)#X-&>{qBPU$RMOn;c(Blwql65)&6ji z6O*>2;oi`4T#usfXbm+fzCDZMd$e))qX`|~)@uV4V{$t3Daq-G#qQ^H{5|{ABaWKy z*Pl*X#Xtjodw(7~cyUBK!LC->DQXm>rO3?xRAkSrsA1-YJuPK51!pq3N&Wx>cOH)g z`MP~^_~;Cvw{TdD1aDMuXW6-^6@r^kaGCYRqSktbd<d3bCv-|b7(dXg$kzp&oaA=1 z9M8aqfKQ*rc)<jN$FW~mY*Y#)1EW$bW^MAq+Ki1vlxoAhvHx`<=&Ztn(hMd@u?woE z-|wsj6S48v824uW{B&y7^KS&JGBfL5m?dA?<K}<C<L-7<sRLEEJaoIxW=FVCI_mKU zA32+{smw=x4jKcZYrMW6vzlergUXWWJ#jq0heXhva{vGLbFF<A-?<-g<^9(7=#}H| zabB!$g6O?LUl^{u?`#hW_r3O5Z@y(mGVjeA;v+hQb$>5Ma8|=5bk$XW`%jl{K>O;* zWMPK`fF*qJclde&m$*$Zcn#P}wsG=cC8EB<plG(3T-#qFYk!SK{XpXZ=G}PqNC~i3 zuZCw=*6RPq-1~<%wx)T0dXJ7|-5K?5RasTm^r)-lTXI>QRrjc`Rko&E)2(cj9wpH% zVsbWU6R{|R(oqtTh>8g!n4km`{D-qRi(ySLjT20wBnp_p3?`Vy%$UMViopzGFo_9f zQfz7mGnh;L;Vw(3@_F7@l7E!z-aE4_Y0Hw1&d>L}=l${g_&(nUKy}`ZsG|K69_xT5 zSmU*R#QVmyv(d45F61D+b4=xZKOgR7Y+4@l@e!^~qy0q}7H2o!7P=Xst0vk@zA1=! zEOq#nFHUk`92f#FmzXbGvbXaufo?8fa}(=zMIV<o`f{RzFJ+eaagPkkB3pbL0|3|2 zwhLq0(Hz=hp~9&`-U58Re+OPI;I}A9dVej8ST>Rd>ElzNEzi=C<4Bq~mS`vvPgdjc zV3<TuWQ6osZ4``f2qFq8G0vwnmDF`u3EY*$1khYXQ`t&=jZ6o{L<Z>9z(FgC#-gcs zt-x*^#zT<jem#$Vhf(6bdGv-vbay@l?=GT{ZrAtBs|;6W8?&pfC;GB*B!ddzLgSal z*?}--K6|79v4~^~ga}lUju!4P=DirL6SO_nL9=1hj{eA3@O>Xi66S#4uoy{i0MJm4 zL0<dNJLP%sFaZ(5=&p0x=?}LX5}S&gRO-@oeBbBVa$B12-F%qcB{7_&Inz3)k>{YN zL)#tcogV3NW8;o@RGH>R1sH-vjS*G9eNNv4_lwRbcRIj^51J7$8!_PxR9sw+h_3#q zNVbGFOWR8WgpuJN^P(vr=E;qBv`_i-$cX#?GqA^hjD`uwikaqnSkQjLEdHN(TAu&X zv*P)0JsY0?o)$VX2dT%nerTKi$CI<fWX)j3e)icnEd;>N7rZIh4(2dnryx0aDry{I zCm2BHpLwU|7iK3}mfwQbe2gVW&NAWWWO72Wc0a?OBfBrmvn$vlw)>vVN<hlgyf5{G z3HHNoK~6OeQ=dOy;A9vtNIb+5-t~N?3dYynOK#Wl*+w-Mszt(f(F*7DrQ}hvWWLs7 z;d&TGE<V)i?L9Zj;c&8Bt=FsFWH`LLMArJnrQLhh<x<h*_4Vawzd2m+rlLhV>|WHi zolvaW$hu)W!U`1{t?)jqELZsN??#H%q7w|S?5bWe9SJtt?Iqh@(x28|JQ9ibSLD;K zk9TyFvZIwsue7@9qI2vNL07KS)5)c!WV(Le%KlERlBiefiArs>P)P<E6PBvQ)b2_+ z=vb?Ef)#3cv_kiZ_kZ<1;rsV}|JzX88A8vgYhs3|;fIp-P8=!EEb_-lzQKuS*8jS4 zsc)^ZxxSfbo;cNfzFIh_O2=>`+v&x2A>GPV(rx>{saKY<PHnYY=~TEIES72*yn?lS zkpNbFR_~z2e|6MeCE79<@1~_Z_+as8_CDs%v=ZV+@@f%g&>bXwy+QIT{F!J05;=-_ zf5;1fWP|2K3JYTTyJWNABQ<c+z*AVYCLiPVW-K!Eo%Snza3)e|+;_6PaQj0Be9t)n zzKHM3-0OHQjpIkjNsqIqaAwBPw&vqx=O98Z7JnGxSwNcLXBlGpkeI75k4((^W3%im zY3{BwJPNOEt5v%M)LSJuI6F97s*ZyGs!OZae7ar-Lr<yDf|ak<DwObcGN>_nKu*(Y zNrz~)+GMNWzK-MFZed{<XKO)_RHV>btsUfBwOT6=fc$)AnCVg1n|tc3fM*YAEqY|e z_D%{P!YqjBx#ypuT;fpn3&;I~1@Fv+cZD3+q|-QecDuW2=W?ZWka05QAUSOF-HjEu z60>)WS>~#WF#&&88}DMR*;%ZtIDvh)sp8o|p)7SP@ns`BhRI+5eON($$Mdgx{&jd; z?zd_PcO?VaGln0iSmx#z{NC`?-0Z?rzmHrJPZ`26H&3(Z{hW;qbu+lh=Vu;IJ)8Zw z?IV?nzKy1Ws#ID}Mh5%ak;M8+crO^-3wv`6IB){42ZJgc46cv{Lv~eLTao1Ypix>U zO!i}z5^vJ3^Jn)~($z|(ns&Exxpq5ym|M=~+BxNExA_{J)EkX@4?eKf)l{Vlp8l_C zZ~v3;Pc+H|%Z8-#Aa0e;E`dD^(hSGK6~%arTJM8IQQ5zH0h-HQx>(welB|Q|XK6?= zYpqu6LM^xGE^poS*4rgj_x<q&zglkVZEJsjrIn2do2G3iGqPuUF`d3xTzuOa$G1O3 zp8FH6=?LG1F3H5yg1Ii2C6551tTGBo8zE>>7Yva9f?bdTWtVb`k~#vY)p|=c7F&aw zbJ4tU;Z$aE>B1S*TfRRb$3$w016t|y+ZN$6?nXb|vNoKH);?LOZ{E_|vbEkaef|ru z?_Xep!vY2hNbDjagpBljOzBz&lyx^?Y2ru*j-nl{A}N5m@OV3JyDbYYbMQu8VQc!- z;zN4RdgDDyvQbPxUcF|ZjZs<#GG&Me9%x4JegZ(^%g6|(Jo6%kA$8p@h}Y93mO&<e zIrFGI_mt#|0|6%<NEt@2^~MLKp*!6uk7ixE_p(&f@CB>u-J2%RY<LaJ^Th|3Soi5l z6DD?=1G$90@cv`!U!(a)C#BN=vDBI=DUvOxxuReM2iz>5;hMib=)rZdP};TnD`y}9 zC?&c+o8+1|>t${4#;NtaKk+j`ASFqR?ZoW!1s!jVqVs%Vc7h<~M-u{$mKKc1R2Cqw zd?Y^?*hBEtv|QQb4;*#7N6C#uC*A3-x0=n?`bj6fomfvEcDskk^;_#RTZ#34xW}LR z({%N+%6=Qkqw3PZTC34$tsN{?<xJc6Z#qnD5H7s5bh)%7bt;&Z7jR*}7)Bz9&+#cv z#?br%?dOTQ&d2qO!}ZSkq5g0sk1xn6>&3=-3>;}CcCJ$AF;#K5W9M~)sWRvGM7_Tt zepzFv#ce09Ol<dePpvHgw@$5&wB2Bl3*0>|9pY!h^Gd{+&IF@<g2oqkJ>?-LTMw_z z4~wSI2OaOoAc4g}_>%+yCT3-OTo>lN8fo^iGkZUFb~HWg$edb#+&I5P#7NnP^(}QG zdh$nWg$sCp@nOvzfZ@NtZUEiL6erJgSU)DZWGEKs=Xy&h(6ythofDecv8CR}Pj!PI z!#m)-|Gf1s=e|=fy2yezdI2Ye;OibC6@1^wJTq`xhMpnfz~crs17U|}foEeh*cw#H zFqf?ao(`ig##DTMdnm6gFS{Eeixi5*tD?@?RTv1jh7v3=KA`+CF__>@`1!b1y;PA) z1RY`|JMPg^tEM7IGW*B-HoEUMBzWixay{YzJA%(or?XwF>AD(WbcIRfw|UNU-%yW; zPJAHWT22$GO*(^*kVYJ>F-c7I%u7_KcUo)qqR~%#AKMz5{GOneqa!^^EiI4O7nYYS z=XIsgsHh|Pe0`y|*IF)iX$;b?(^^y8;#OFUM%7WbvmPxaGqnu=NwSuQLiG@Te7Lz% zeo!{ZU@}RTWSkw@a(<T|)3ZAG<1u&uq02(rd9Yx}cAid5Yv!!aW~Zl&M)-X8fdL9E zJeV*(1nd+Vjr}=(>fBkbQfXJtl6)l3_^9O0R4&PPJBc4CU%s`moX0t&H(G!BH`qCO z>oT<2(Y;9Q4m0L89~iFr82(*B3f!Uv6Z?ziLu3B*U$cV67sWLzsqJoZgQ>#Mfy1M@ zK@1kli|2C@$@wNdSYOXC`XNd`{aci6l39gGg9&6}>MP6E+1*{*+gsYjZM^%HWxI-x zc4hCI{xv}WN){!9g4RZm5u*Hov<#EYX^Oa{u~lHSfVGhx#fNx0%@XtfAkp5;mCNmN z*{Ygv-xEw#T_pTrbg;vs!VdM`BRg9?*|%LDoSAQFpX!AlDh7>T(8#z2<UmjhVqYK< zNq#+_6ERU<xQ&q%P3W*-R_#DIn#z?MYpq(QQcM;~8|7Ri*c-22ZsnW#cqX-2%EhBW zTfK-zhO~m|SScS#mNMmJY{WE}O_Vd?cq*PxX2cw(pQ-UninV@dFT^PcK3~K|&0R75 zXliaj!r`$OVzZG98G|kmhz<#FG~2o5{1Ph{avE8+RJpz}=wQXi^+~L)wt*odKjG|> zn^1g841`aIF1kk##^a%%NK33uuqxWrzBWk`)eNPdh?`yw!X9`WV;36Q@!$dwE;yY{ zTOldY4fGpY1dyd2e0R4g{mlK|;uO?YIc`;McUq7lqqnv$>T?*Zpti{ic3iBU;_nwf z{_Ne+eLR`ZjR236pP96@F%2WMyqh%!-<o@I!-&5r3TrxjYQ9!#2Wv&cGF4nVu>SWN z4*r^banl&yF|}YmffTOo*HK_mTkHF4MTQJLhKL>b8gC)7csk?OjCwHR1AFh&-%}5~ z#2d5Dr-(V8<gI4Dp?t@K5_XMr|0-$iV3>T>KeG<qjQwhmRY!wMfxqVjh3lpz_Stp* zN6a9pi-tF~Hn`Y#msE1NZ1vO{8M)W=XaC}jI=*ys@~M*N=Wlh}_@Te)`(L#FBu@gv zwg|k+JPt6pXX-WC^%jX0%eXPa_2K)WyDDqVZ*}G#VTsV^`a<hEzX2kK{FK_XEG!<x zJz%qop?i^8-v3C2!G{TF^Uk`RTk2GE{gowmtF>}aU9p;l+}?_tQJ<}CZM3}6Vtdfs zsaGqYfw!AwcV(IEc&)0X<xrV({>+#0J*L5U7=d-H=q85T%>i*bYSZ@^^GMCwls+bX zz}TF>iN*GVI3)3F@*<pi?6tK>^<ZenZwFq$mxFbbFdp4+%{l#?lb$tW&hkNn<kS+4 zj52_lfc^FQB4B1EcAe9CZw0+|#nvz7mV5jQ?989)dz8mRJ3$hW`yxlH$K~7FbVYo) zdymEuZzLXZ#S0RO*X`)K(cMU#wcNTc+W<+x6!yb=9G>Ow$pOw!t6|ODb1N2>bW@qP zICGGT?%t!shI0+8Yw;A-i|eQP!Tr&&G{j&OPc|&s%?LzWO!`zWPJ(-$tJK-GFJkx% z$M<*p<OBdrkIn`&rl}__*3o9*1|(hX{f~Eef8%y48YHdFyLtWWJ~uae_xbto7u~$a zVH*`^$URT$R^;WVr1##RG=gb$=j4JK$7t}8hh#r7^?1*n59@H`$J3c<Z*c%lVKCLG zqsdVSB%Zw6Jj!n_yWahE;+@a?`E?A8dzT+N^E&JO{Hqh$c$M|;cP}M6nrma@9dap4 zT>Q5ru8mNKJCX5%Qbb_>wo;=Rfm@Xrc|r^%Mqaydt+(w)uK^;#2=w@Vbj11?b@dKv z%5)-;E|wv2LgHW5eNNg>lsWJS&Fp*F1Ba}b52l1c2n++EhO^Mz{7Cr_b;Qv6++c90 z9vQ86WPZH`aDRkl7DKF(Ii{|*<MCp8aFUL@)m#Mn!B80#d#MZ(34Hs}8ncd5bPA46 z;IgWT%DqQSV{vymxF5<U+|_i!PN-TwvSxQQn7v*+TVFpb)-|MEvhy|e3-N5XhT_J5 z8=jSn3T!i#QNJ>78eYu^bJxf3?h{KwD{#@@TVe?sLM7>btYBV8j3{D$kw32KzVtb8 zlYhlELBsH}L?F4Rns8j{Q+i+AUmHFoYaml!|9X>1PP{&LJ?T4K@Z*;wgr_Tm`q!^h zfoFWIPK}9)P`HmhYz8D#qG6rFIkknXrfq<RyY=g~Qnht|4c}^r_LKXo`MyS{$0hfr z-QgL38%_5g(6VlI7KV1Z3!1Jd?sO$}-FXloaQ)%HrU#)36Zdl6hoC|qZhZ{ZD4j^Q z+nw9phkHTPQ`J~PLRyIpf%SVOQmWCLn&o6iTo0{!rQXKy@G4zzNtaq~=HIBF4bH|r zNurKZ@uBN>GnDnd8TPExje04v;w(z<I_xCNO~LjqpXHP3R~Ls(w1=bCsDrJ%$v35o znfAc5IifE9m9MOc=feMvvJZ~#Q{sPcZi>NuR2jr^$S7lPee|BY(QthIRWTTj1Ola6 zIuN#p_bqjy_P^vNRihpOie29THkXKmBP-o}Fl>)*R9AqOS01Bl{Hf<(Mjra?`TXSk z<ib-_s;Bd_*6cIUtt?oWxCJ77C&FI8cf$Od^H1RsG#j2j)qFgtVfLkCrxUsKWhS5O z1qd!Gwd)n4c|(y{B9rgfnM5{o87JLr^i^oIwNzXTg=5J~zVx#b08>5XIXS*OYgbgL zQHg||s=H5a_)IaGIRT!A7wV+BvUaq`^z*jiL?cdhx6=ru@|i*s4MX40r*L`vg?RZf z%aZBC!i`|8k`EZ9adOheo>+cgb91wlPH**kFoNu!>^GbHCp+0psn^>|r@g<nvBA<N zTp<~!(%5f$Th0AO#o=dWv)7aB{FwZL{}g=zJN4xBZz2UfoBef=l0Q}s$yl7N{Y!gy zljuLPK>e~D4OpjxSRi8J?*41)`yXP{9C02B9z^<$ft(OcKawNp4|86j6?)(W4I*sF zlcP7%zBC<<Au<>tu@+4vqF1ZYBq8uDDWZzHNA0D9l_i@PSNXf@T}G41=%sb;`-jQs zyFL9Q8MTh0Nj3~B?v|AjO0mJQyMfg?H+r*_j1CBN>Uj^${QZSb{3AwBf(gq<`DQSM z`*<sZR(|A7bgZ4$`qI_e#?rd4z2_dd8}7m0r!vI#S{tnm{#8JvgP~j?V{C<bSpk!v z@r_dp58!-~`5$b?!kmPGkcI=w9l2{fhqlF#GO8(`!vybkH(+I7DyPe_wRpDywtH}f zz>u%4YzZhiG{}p2!V0iwXCp^oTQX5y6!^HeP3Qn=AMk{1Wb-DbQTn;a3Pw))md0+t z`izP%8Ab_`(BS6>bKEaLp64W8hKHIrK;y2;Tr6vf$URbO0MYO{@cP2B*Xb-@xJLro zU@sDG5E<RaUMv72kMI3C_R)W!b#uYSXFa(Oa5mC1jJab1a|f7-Il<q~Phm>bNK?}E z4f*UOpTQ$yvi;&G&7|^q(yXWQE`;@od@7nsRg>vhaw{CqmvGgq)jaI>I%|#$wdz!W z>QA5!K=H|?u2uy-*-u9D=}0nCZ5&-7am8bSK(d(12?4l4Ji)7^Nh7^??&B_2=<DCZ z-=^$;(^4~*kIQR#<Zt)GuUFgt*MGAbwqJhjY6X*iyInBv-oh~di>*)fM90T|{bun0 zb9qH=1rX+Z{ra`X^()W+_sAo7cP##TZ2(vB$Dz%C(*|PY?g2Xg4O-2Y0H3w~qj~p5 z^OG3BFK1XG5&76u{$>0sEg9K~W<YEB7_ACHv$7p2-;Ax~LMy{j{s2#VOv*8Graucw zc<a;yA9jWDwF!&|oG5y<wOK$!OQZ%J2;|$N=m`bgxiR-Gs_^-0K<z+=>L&YIQQ?yB z%{7NMB@-*|!7mE|6Yd%brIDA{Icd2Sx6(T4^fgtQ=Cyp$W2FKCLlB9?>kP}!+~8sU zmvg~Xb?aP;DRDv=V!-INNLCAIYka~^w?&f2R*OiWCCT@=guMe&8l$jxmlXSBEtBVD zY*nMOP6^o(UezxxtD>xGn;Yo47@&q_6^!c_{`PpzHq31p708JE{JY9na-|~FR9kd9 zN%yO79Jnl2k6vpRt|j{mXb6eTVU0Y-WNQZu2;(P}fnGpvK+T6hmRrUrGMeZwh>`_> z(D4GOl=EVi0I!IN2r#Jmz7bPC%Fm0|dKbYhh-sRF*f{mKjvXHvcO^}eynVxOi(Jj4 zZQ_&Y$Yx;yyxxs6i@Z_5AGrzR8&}kM0ez$J>V+8{T`hUxbmX;~ml#BNA}@vk&}p@$ zW2>7wdV2TjxME@uRqApW54~8wl(1?Ex87Ravy%y~DYn5E<o|mi$X3yxv};AT^y_6m zY{YOC=d=CpaKZQDst0}X<xW(+-5mtT6MNZ3Y#ZJK=i9{hj+a^A!;Q0Q4Gr+5TtH_t z>>muzXm`^|w~|<FX9uAZ`;;KuhBxcx&6!ojYFzcQiwU)zOmoRCq}^eA)ch#YdZve- zqHBvW*jXOV&<c%H?Kzlo>8(1INr7NeU~lAey6%p*jkLsO^)abl_hz}KJfoM~pYYER zkuGN!S`5Lwm_bPln9^^A=|p?n7=W+?b>D&eW!q>(x_d5c{iAac*f~Cj@IhQ3jpBd* z^@pB0pdPcMW9^mG*6HYfd<xHK4V&a#p1<;yz3;de(HMk4%4YO|vCK7jJnS<(0w%ME z_uV*&$Dj^4Ue>x7<{ZR{49_tp&tzQig-oUoC|2Pk0*S>jOop;FJUwezC*z9e1w1=1 zK>x;s<z_}?Xp>tN@0x`8`GMa`r0~OqS^O~Il%aC4v_}T2`>Qg#7h?PJ($cbgAH9oW zSzD@S!~-LQKlopcSWFReDI#tvwTBSAdZf*Cd1U^Ijq3&EY+n2>;)SW;eKB=C!k81Q zD{X0#5AiHvuoah-0hP<XrXLBGfV&a<GvlyMLp9ts!fbkoPw*4DD6B#A01Tc%J~oCh zs*=jW5q#m2nc*53*(TS4*)lBC$W97Q#5WFu3|Y4K!&8eULzRpYB<$UDsUP0huCbMV z&quB;<Nqi|Mpz*~h?AKSO^|8k{&*QHiwytKpqZ>hD;VqD#QXpE{eR&*_Wg``%;fCM zfRp@tRPxBdtLE*g`S@dN;_*X&eAaJ2d${n-(%Az9><vKgQ;iT;enD^(Qm!}g&3ZP^ z%l3&U%KE=Bz@S|WRx7HGYFXdQude3zMAdXR^s*f<6w2w!$!d9UK3Z}Qlj(9{y}Wv& zvQD+yDU~|<)0-Hrw}ufHR=#rggnQ;f?%N{AS2z#J6o*URjTF~e=X$tDM<?afZf>+* z+L`YEIu=3VvOH$wQPVmD=yP!mG3E%tthbCWTe`iA_g2d&M$gB8O&h(Q*Pd!TAvQv^ zNX9VvmdTv+${SuCz3A`!vP>pyLS^M&ydlI#z*uLNur7?(D(4^3KZq>WBOS#Nvn;zZ zM{6NV%5TaLFnqgmO$mE=MD|`^TrG2<Q`PczUFJp(`2*|KRbI|$EnCNl!4fy5#|!$~ zn4i>hA2;cja*}>28>!Us_}sJ9@q~#2o0*&i6l~(cKtlkqn-%JusR{6O;Ol0;^orrl z@VSh~=i$xq5~Xkt^Gx7NDp*k2^9z+3Go&7#?_Q*itJUMw#qMw^ea`a_==zg!=2Lp0 za6SJvOg_J-t)E(2<-zGd<Y&sjXBaxcr)j*5ceJ3i!NQn!#5*+B(T5Aqe;}#JwB9a@ zPkkGMcp`_4luu@}gK8p|b8<O#mdx5LWML}T-&aBFlue02oW0bB>_s-<V}6wREt~kA z@V&?;NuK7(C9KnA);*Gq<?P@s2^9IZ0_L~-dU&3soYP&)azQ7n0&<FEBFFCL!Z&0! zKk>9NkQu_gf}~6GOC%<VWfIB+$f``BlEJKc?*j0F&0D?ph64JWs<hiAfvdzbnL;Mh z`w*Bv#L^Q4a-M2bLja37LOzz#@e2u(<-=P25WGJI+RI$=aw3EbfsB6bq0?q0EvQ0h z-MP|EBP=%-z4x87=i505Reop;K|)uD6=^^^2pJQ^e`RDizeY6(f*C^#!yu3}vE)7i z>jz^A6xr5~5WdFX25gZFzLi%i?nbIWir>{mm|DsZwg|6FAhx$?vctO3>_rwpm%C9& zh1h8?7Qn^BK3#TQTpdPPy9eyWg*|o8k$2yY3gR7BKqfm9qdkm!_x04%VY2Zqc4UH) z#XYT4JegQUXZa3KPIK_<{HetEgTT|l23WJOtW7XR%*{WHQ|%+Gq%_?HW8a^Zr#pv5 z+fKiM?E1C4_~z7ISzM{86mwq&i{8;*mvnj&dYpUkI&!WS)k!P~1#=>nOvY9ZN#>kC zFI>9}k9QjzJENI#%e|oVDtn?TuLgNL8FO2)R4S%cVo9jXR#s|@`4r^+`QfuL^K$_C z@QKbWlwNo|CCzYVenF$uo_piIiSSfBMl#S@vM*x13k`!QLJtYEcoVNWxibCDsmA#x zOM-hCD5#WGSE)jP8`#h(ly1+`){`XY@nkNS%!Ff=Y&Jz0{*JS?mP)N{IS^0Y-usq3 zF`Cmw=eQmD`s-@a`yDmo`-$>S{+9C1Ox!=SFV*Y)x{_z#mnHEk)jvAXTW|Dsz32EC z<AY^xddZUDmy&{*BV<#3PPoa4ZGsVZ$bkJ}rFE>p&fs!K-OUMSkv_2;Oc2HCR`01c z^`GhE-g`#R8i`3uLEg18T-rp3Cal^=>JFLR{l6y?em_VZ8I6Ba^N%Ir^CfghG@se0 z&j~ukT=8^P4ALkdpFj2zZ6fg{OtPOnlc`pgM!}q9RB5!=uhwA__S8E5pf+BhE_OQa zWMUVNRN;@;F@8+(dNuPoc~&^g2E-p`S8ed9UDe#T9k}<ffYki?&O0G=F~{lolQs&M z{v$9p$lIu6TFyp>1hh8d)|e#X4Vj5PhPdP-4i1rt!32rQazxZ7o5&VDV_PqieG$^( zR<%@iDix<(s#@jiW&33&!=COQd$FWKO44r*x{JMHJb!R<kdGI8i#LC0-EPSDFUVXO z(?_|-7BIf+HUae`>95JENjWLACS;mMJ=TLA7+y*|Z#mnhWTuoiN}NoT%H>irp&izi zIIZ~~uC!l%SlUdc6L3!7oR)(4^oAho;R+dpMTZ&Hsb+MZxvoeIN2BVU8CIwXUzZ|| zE7dlY`eAWNQzS)oOi8z{tM$osU0&C3Cs?AC4ns7hRJW@5ZaHW4v%j}qeRt~7lu{bQ zM{86q-KxWrQl(Pj{gJxV#T(XNIlFtbo0X4y>hb=z=^Iv?ApnpTFm9<IZJgHjjd~nZ zuj}#t=6S0kUFUZ56d7^+yklS1gEW@>(~ozV?bXG_Re9fEiUGdgyk=+OlWQ{9kFP8J z;wOLGp7AxF=<=8Kk*|2ZAL}b0f7TLJ^fmg-jPBUd>AzlwQH#Td_|?7TX4ymsc&T&S z3+q485~CE+pIGyf1VZ@%-<#ynUONB416|}cSfH1;6GO{b{jQs2o+IdSTLrY8;E7M> zxiDv)UYLax7E_{-#v-dt<6O1KiPGy?Z5T4TD56MzF7P7jMejs8WE<(8^ajwCN<K2t z$Bn($L~)C~7oy0a*LHM1BEp6cFojc4-d5KkKwZEG0|D%Fc1bEP$>m)~Tx=HRKs;xL z9UTT&E~Y$&C7sy>tqk9w$eae#;{`Jn1`*=H5=P1!WN*pk$(0t!MxxV^`M7J$dDi+H zqn_p(;6ODItMBM)6VCHmw=rl?dAY7jDEUFt&XQdV7y*+Pva;@L1?H<wtW@AGC3<N} zfasXJlz6$Zkw4{?ySQjwyluVZ|Ds<Yz2$3eX8G;$$(r(v*0(M$th$@_wz_bxa_SrU z!#9vXlQ5&^xWdTn4+D{jz<(r|({HO`RT4Qtyf^WdX@Zf5KM<4T*Ee)*xJpQFH*Xv9 zed+4JPUOn%rJepcsB>>T9L{D#HX)XFur%0>2K6tSJiNh@)#<-=E-#^>;IPgTxH2yp z<2vPB|9oeuUCzmg&S59YhC_u&IF(zs!}V-1Vi&{VboTtDTFf8FJ&Ar{bZjIPiT}Vv z`H5wtx`XvqsPbrX30Po=(I6_f2JdadTIM)uPuYoxucM>zzbg_L)l9w-c$Pq*A$%!e z+J36YGbxEMC0tWt7zip;n_igZj!9`7$wl%}_u{y<+Yb<hx_;r3pn0EdWWm+jRETXP zA`a+v(L5_jzuIf<c`q-}@8y6&?X5oIoKt0oTPdHkxt9~?=uM*cevkNB&*Ut`eC8!s zOEICsl1hUg!PCc-24rNM9{)Jcse?37IBO$4SSzZWs8u41b^)&I)b=D<HH1&QJ+*YT zY!o5&MO*&pGV}q%XQ@Ldldfa(YkNJtL2sODTkGmi{5|^mQz98slsD_igYT12m-Os3 zs@Vjb0=LN2FncceC!Wnt<3q=2H9fE3B$y^lXJYR0)c4ioQ_NX}BFW0fVS<*Yo<1WT z30@Mr7gVuGpj-@&f^=Xoc~c<AT{6{7t6Xs{;I>JBy+;xXY7|b#(|)QzXly^X-zunc zw~6Yz77VoZbNwU(LF2r(g2wTpP^*-ZsbI2Lcyj}98Eh^`ljZ#O&Pu*$z24s08I&N; z$KurKE+;lgYO<MF9yofH^(wL1*zOm|Jm9IWC?sR)bI8rd$jy>jEJlu9LKsLZBfQRJ z)+To&ZAu0aI-dgD0JH%WfF)GFIqbgP2h-_ii;J~*7ZdZQ7295XSJ<~BXvM#Dj>$UT zC2#V3;s5DYI;6w!to!}#aw_xQbAHw6uDAW+Zojx`mmtsTb|pVNPkyHl-3LdsPN5{i zm(*Av_J@)E_dD7y4WFKH^6RAEhW{2Cl({tE9Sx_tYgdtMpU$d|&O$dUL{ptaq#a2d z4PrO2#4ozS4=gZ{bRv?-B=hxLI@XM5iWsOFny-Pnw9o5&Z#Qzi-N^9vVPZFKL-*^~ z=vGuRF%J?kigkdgHZ}`T=Q&|3#DG1PtfpUQou3(Cr?cg5Z1L6E-QHBq&F$T<xz1Ya zlGC`{Z8jS4;$JW0!W^$3&1*78`e+>@7ciwfj!CRB$UJPi(7ch35WB|Qb4f%D<-JK2 zZwLWx%#nxcl{Zq$CyJ3|G=oOm*m#qUmygc!dAEx#z+J^2ut(y;MQj5<B*9#CQQUIz zcxE*bb6*d34-?^y#+ur@JlsjU<^3CbbF|c{aCe$~*4MEazez907D;bJ+0(-%ldbqN zb-Q40hbX}!CI`rurP@SC0c-Ix4DMb*&FAOwzV}?UC7$G6r)CwzdC~Xay70b}UE4Aj zx(tiEgDocDL0hI}AKUlqLK|)(Ms(c`<-<>~oljGqY0`*M4$Q06-}Go^6C0t-3#6o# z%p+V{nmtq&PC9nw#M0@QO)ds3yaKuLSWhtC3iMP*B*XA7;zHjeyOA!iW0(60ug=3Y zwwp?H?0p%dm{G8qep$Y#e#`B)$f$#_=*v<@sWLmI@b+r?V2Ftdh)taA^a=$VM?JUg zyBt&om6ig<cQWYVK<`-p;h<t|x7?(?cU4d){WDFVhcIyS9OQl@&(9-aeg);`Eq-vw z=hn8IB++pbR?<t{)P3b3tmwI%0_2mIYf3qKR|R{|O?so94xuG?iuU0-@X6^6MBEGp z`klKMwf^%D&dNE|_+Eni;JE2g)+n*#6Gf6}4NoNaudBQ|X_@;=*!vuQ`*?wEF|C@c zP}2Et@Bf#6g2(g;bS>XLc9Oc|SX_z-YFH-heSK-Y=T+YK@^)cvAB(Vszjl<(>DEPl zc=t?{*~r4U*|E8$nP)xfk&tqZ;dnn%TFw^Xm{H_YC5~tz)6&5a+J^XT_4(sj;kM?= z-g+t%8LW%5*f{}WQK%)804}YIeA31IoJ*|jttWCPg+`HX@$+z^nRR=aw23zyblYtU z34QQ3*w{f%=q0kbq~fS{86aRgf0)8J*Oq!VZO)YWcfPvB0;v;=wwO7klsCIFVaOjT z@`}5LMABT}Ta$7__><46FY5P}*ewR?JMLjGmCL1)NhxhFmvDPY5PIa4%FDd%dEpm7 z?E@@Fl6yti!i8M`8WJOQNjQygkqSMryqPUcHd}vL%TDcqu%EhcND^McIARbc<Oap6 z)ix5B{le@i9H?UZMj7JI9h#Y?-WYp_{^C(I+$<6VvCa>4Q6}cJuXtL2>L^hkbK9sy zGh%-m`4Lf;q}=Iwb4dv~w>*3xO1yJO<yY1&uAcb>t_t^&aEjXL;rETA-YzaMpU$wv zhJ;kgEgUc}!7Drg86g=q66hOZE6jj%Ch9|H`?*_oCTQjhQ9`aORg#e3{7n`Ea~I>= z0p@V?Uhu3U8}+o|5G@k7+W3~-r2Oui+y;8voqLoR*}mp(H*_I|8jp>qVgS4+qo+ex zFoG|ia<4?w4WE(0sSeqdKX#9I?(nPcsFtVse0j<37bv!plcynXMJGnv9hKKSmFs77 z-KI>-mb~V|2XOyWxmEr5x2QXh;QreGutD7{@^$O~usKOzH1<Z}bC}lc$b)`rk`&){ z0S-gy@de)GhY==m36>QbL#?1B6yJT#Q|?h+H1I~DFnFu^3UnMb1aFL3HaMp1{ReH? zxwp|a&mPnZ17Ba0J&M54HTt!QOBSDV6unKfwy}}I48R&oHEP7fI88m(F&HR2lVlT~ zdxG93XzN=LE1*@5>4oW)<Jd}Mxw9Nui5;)p{Gr<}&wc1M6G_Hxn`e$CVp%e+Ei<!> zmZaU%4u;&?Qr>S-vk4^s%>8Ai69Oa<fDzCFG#3cXp+|f$jb8SM+c2H-PN}aF>LlZY z+(WzU9)_HZB8H6LDtm=@g5SfNx~J&vHQ7DMOyh*s1|In(L#X_+JfoJZb!24yC)&ra zrRV!<n-TEqR`SgX{i@n+kE-%krOMoVvkiRt^S@JHqo;gNg^Zr1JU1=#=-6)N0pA1v zgpLC7&&bzQ+$-_<ya1^4`oY7=#}j(N^36-&i#;nFe*kA7X187_LVCAT_bi9Wy+LBc z9Amyy&zGVh;__F6fn4jnRox<?$)Z!rxo4+EnDKhfU#it*H02cT@HSLa;b2E?!Ffqq zmFC{%&VDt6)^TyPb+nv|;)n`{!?9>PnXRT0rDb=~$n6FLWe_idI*`0ax<`LFDIlxd z8S;G|r$-W|0nPo^(Es5OlXK78ZArLyb7&mRucLOP=X#CFGIOk9V!%-)64Y%I3%+#( zZKxq<5lPH!PpQp<PVhGz3d!s(Gi%i9w$<Kt|J?Lm@2k;V3KPSPLX8JMci6T^CDUWd zaBdk%A>zZL<9%39X4ap=^7CPR0VH*9SC!0v9t)1-Z5T8?!*Y%1dKV?>W|iF(OU8wx z{|(C~(cDkPk12!fy+ymfSOA23w~9p!;ztU^4cso!-KTi7t|D6M_^#xaz>|L8W1LgI z>51uudmp6OaBn|HEUc>S9&D+zuk$!%`c;meeLr}hQfH^MwZKrO)KAkVLH?xoma(4! zRb~JQ!JVC1nEu9xPZPWlI3wn<{ir0{v|{>eKN%^!+d4qME%$qO9%taBhSojw4V0Wr zJQA;WyTjRG{5Zwt==rJNWB**+xFr|NC@bTSa6zC&(@BkdrU6se4UNiz4~OZI9AV6f zWFK=;(?tY(59h4}wb(x=!iQ=Rxe8M+{Z<rkQN&Gjq1F#%-26LeH=ogtCdr`A6qBCC z-XsZACI}(>4)*4sU@6oI(g1*U$Z9RN%Ty;HkGJA$xj`WtkGJD1*{vAKCsoJ#k4b!e zVFldun@D{%Q%$VpUgZ*Tw-H;(on{m9N-6e+qHx>#`Z2D5h*m9<KD1mq+k!S(Dv*cZ zG2ztmOV|^DM%=REDfV{O&X*Hsg;$Vd_r&|Ue7<(#ZXF4Xv2zUH-I;UYJAChnY!d+0 ztS@(VPgLvtT~l(_t}D-WM0vvJ?h1i*hZpU=?d1leqp|&t$})pomZv<Ab@B(Dj^Y^{ zi1QGF;=k6#iZ49C=O)>5CpBQ&n$YRLo;{WPh<LQIHR3aT@XYdd1k_PDOHfK@^};!W zj_>%5+j@OOE^lr`N(Hq4?Ow6E-bgJwZnai!XRF1%x4uJN%-zm%y{XH6RatB-Z|{lS zRqiM}yhW)3+aW@F-#v?}KxCOdYrl@Up2b(i*M+J>LW;|%igAz3VYIalZ4D`8;S+22 z6RR!O8LQVCY?I)t{ZsIfU2kd$_X&9yMaCY+t$!1(_xrF({=Vnm<utSNI76R4|9t8Z zvpf$ZEsy2fDg>V`bTnVJ8PmSrosdv@eMfvCGgAxXR>ZyWR8Hx)5-a&eAQ`O{qRBv^ zQAjt_nK$dF2aRR-c=^VbW<I@`%D&k+*>5b{=n(6Tc&d<Xlow0oLTYf>UPo|j1=p(4 zM6hLB#YQ3$@8s%G&$dXaR?3B)bQ!F0zf)d+b!j!fVtX{}IN5M1S?=wwx2lD7EMj|- zrR}2Q6x)evyAzLKoufaGY^YLabCLyb@+<1=YgEWzuH>84M^)+r5}#C)yIw!tZ?+|s z$3{JI>#jG}+l3{$>ttZ@EARU2+?D0|1#zE0(>}$g(oY#C^-FMXJh&+c%y@#=&yNi5 zKg*N(yxh#@lL?tZ5=q=1%knU4Qmn$V_etLqiKPqG*7|O*oGgV+?e?!LbE!ymYP*Zc z$NC6O_TOZ}0f-^Q0}J!<xz9bsx@z#5mq<w=i<FeHGE|BEf@naE#v@K}Mgm8{>S5R= zdke~-&Tac#``ob8SRRR|K5my(YVVDzCOfY&)h94Q)(RrYpw+b@5059WIv=e2p$?s1 z4Q}nbr>DV7vGK#N8<!Xi-k5g~I*7yWvX0rKE1FQg40jRk(OdWSn_^47|K6}Sexhb{ z;^lh_+TR_6=n1h=1{Hr#xx9ewH836=jRw~PkC!nRn@bX#i|}=8OE|Vbd~#US@Go|+ z2&z$aMYdC7gw|ik{9*BO%kc(l4CdG1(Y!jgS1b<y8f`?_V&@-XPkIP81*5uo!LBoY zeeQeylvF!V%1%B<oR-i{{l*X>-{?3RzwY(y*O=6Tt-Z7T#o+PDMlD;)#<Qi$d$=yL zv1}%u$ve%Sl{^olb44Sk`D{-}rKF_YjbbH`FIG3L7rD~w6IDHW<!+u-^V_x4t-@j^ zpUX50o9l&EshT3nM++c$bCS%{k`<FzWxv!=C87w*uc#+v)^T1Wv3<{=ZF&^$!P{Cf zG<V3=60H0jE_>uwF{h9-NKyrZE*4LWI0MjgB|#@BE19%`FN0~O+;@^C36UTOe(e-z z53Ps1(0o>(%C)%;)>Ez{=tb**q}!nV9ljz*YE`WsSuaS33ilQWf;FpY`jh90T?U&q z<inC+H+ho<Z8|C5dB<DsciMLO3IG@E_43bgqW_rdiiezi<z=poh%&tXC6tyrv_#5) z#Kh0iupBR8vA{0G4U#H(SQgQRjUQPUrzAU><PJ?^XPcWO+mO7;4EuC~H|}@sgnvE< z=55XgLm$4%$?2)N(U*6wv#6ZKGx_K=n;Y@{*Ui^Wx5LNl{rE=Hn?H!Fz~DT)c;LQG z>{|yJv*3m^O&=UZ5*Z+G!pBBGbe1Y^f*DfoN4_MM$H*<lZ#RXNO?wtYSO&$-g{xW! z9cL$=#U=#f6#7)fbau5?>-E~&>(=Xi)!XCCEW1fS8w?;in;4(I7wo{w@eZS%qoX~9 zs*iF?y$MEJb9C#-AfATUI-WvitRE*<7kxj4+L^n!E)T+R0P#pY3`rJk5sU_*dfbnm z=aIu+YMp)*q3=<*n>98m0ut|8hd?i_{JAjO8B2(;)kss)<cp@Qn-$0vv;m1#8^$%V z2e4%@AZTXNB}9xzOg#{LsV>(@uNVL59C8`n#k=-~?;@_>gzVn^E#OCNXgZq(1rP+a z+r`0TwUh>_NJhJqMaEchI<Y04zIsK{UC@to975RB@vE{NWa|t?_b&@Y6#-a?;Z&%4 z-}ij(|M%=al-9um5qmnr>1S~CiE|OEX%sejrD4r|JojTV2>hPyzKO)iS3WpN79+32 z0sOh)GHtE{GN#oHhZ7mw`!Jv)PAD33Undf;0XBp}B{!hWt$T%3%L&@RwQbsl8IOe{ z^)r0mpfB$LfX7C2igZVxW~dp32)UT*C0Gcl+Nd^zOJhLyF7g}W-Tg5{gQQVzZhq3n z?kU#;q<a#qU4xTnOkqCr!^&p()5i<fF-q51S?iVo++5Fk@%76u^RL^dAH6|m{jukF zW&WN0J_I1MSZa8QlwlwN1|K}7<yAhJn!t$ae7R(4AlM4ohfl4qiR;AfLK~jTW#XlL zJe|xp56=&qT|s>ABC1!?g=8@oNrV!Oat<GSx7OcmEw8ODw;GF!YS-i*u7o1xojklD zu}onJk{7{_ZYx4N+;ew#y9(_G!~~hewPf^YwNUfDg1NpUnU&hDhKk^Jj<`kKD-c6y zncvuPMZ*)D4jw7wY&~ZUTcP&)NR|JNdg|*%;*r{xGe}DOnuHYc8!fY^ehT&`WR*)R zrK8nhJWg9ywMD*@DZ=A_|IZkg{+My;Te{_?(HI=As?*77C=X~J{SSwO&MY@E`Ir*T zdZ*_|WGnm*^i?S%mg6}#A=Ev`kv630Lxz|ICnWz*KU2O;HCT?7VkKt#vyyY_l+KC~ zCsqzsGNfP2mos*{ALyh*PC6P7(m8XLtZH{sfm|k$>oWohLZVP>l}l$F>699E--|-V zU0JC|OT$0ZSJlcCI_^rw!9xXsT`iHsrSCSA`9d;?aiX0r;;>tDHP@NiF4{JMRs2yG zV&5{DGK+ES6Es{{L%wH$lL9U^?fb;?fjyt`qpT}PGO1}auPa7AnPHeGX`6IxJ?}V$ z4%)kT&yf@W?Xdw#MbGNyIzyRc@`iOoGZ^a5^W501NKvihQ+?BFddwp{Ju+G`D(7p$ zsmX)p;)3Hk!DW+GkwI7N8gzE+%yfR=lL6AJ+YzIJcG%$WEnk(}b|Nuoi^I}b>iIN% zzToQ;t1Fz6GI|r^NX8^6P37z6piOwwQ^{G*7ks<`FBX{FVclJL{`8wV*2EK!?B>&X z%acz#X$em$)Y7?)Q{hH)W1Uuqe--Msy8NFqXm3V#a%uL=Uuipux5KfUjOa{$tuE0P z*9Q>VZsyY<?N-M*P0l|SI#uCXfdLYGu8{F-64pmrj1~PtQ?X((ddfHfPF$}S6x%b| zpVyGhjSUL-pI*m4>x-FSFdBNjm})KN;a$qs3*}fiu->euQ(H}^Sj`qf$Gu>_+F4qz z6k??R3uLl%^kh66j+L_O#Z){K@^-^XNnzxKvMKx7A_OI=sJpvMl0CRh5)FGfTT4aq z!AQAKuap{_$xOX{&|9f4m2>4pr4$ZktL?f_z2-|x`E)WG&qS_P<C$bSk&0}Vax^I! z7t#9<kOzW#4ngB%bl|4Y)IY<;bMwcj3E7EOCzES!FAdIH+gVv~_ncO%L(KoXD^IPJ z&Nl4JDtQaygBAVDYF1jU!TBP4bg;na`2pYMOU>7A<}KXlkHSx^&wq>|h#1S!WHn}j zMHn#?g(Z18N^ASC2(Mi^w~MB!x<y8&9_>`ecz1m-*{Qa_R$@ot&vLtF$`DK*?S7y` z&o6h({ky0BHn}_`HbD3y1S1AJD85ob)1fv>x)PrWz!>6R!6<6ae*0KekMZI|heYhc z(wW1M9389@OHbcICuyvwc2p*)vi^Wz!v>vVPW5WtEfwCXmX{h!C#3bosOK3p$Yxz$ zZSS~8`JB#WIpiD=E^&#Z5#BYyPVl<Mh0U1QJh)7ew?)=Qevt85h8dAz9HAq?TB&so zZ+QbMUh=n-CkshP6WiJE-S_|2#5aBa$df~l`+d*9!`-7{0B$fd@}sGtr3*n&EL^h- z(kAE;f-+{<c}fqEP9vPfC_fJ*$1-tpcbo}h1FQc}HwK-HY>}~~9%z&5XM>zS?Eqi( zV)kOtS&suhEm&_zsho%equ3uW^0BK3F;%%_(i=11?w0wsEDTrCi(nm(Y$3Z$E^=7+ z>h(g}iMYw-Yym%QJ$T{1wz_sqpEDE+l17RV_q-6b9XaLbU+pGysZ=hh+vO&*ae+~M z5{u5PShw}ONu!X|HKr}#jU!ReXA^{luxRd9XI_I(2s+j7x(d|l#oh%XOHBpV%UjvH zbK%spTV?DXEysZ_6^R@o+hns^muQT7wduajXKRjA%jVs)68p4dUXiitTmBum%R-E* z9`y_f>Snw*lZ$>m{Y3e8TZZTTV!8bmp`a`rO(eXOyt$;kv>dB#{~1}C-rn5{&RpbJ zIAxfP2FSC_Wy+dpdjB8nhTkL(>F-Ian0)>dH9hrB<(t*t7C-06_%Ji^1HYD@$gx8E zc>EIr1DWmT1aP`A&k7k@Wd|8E`DUfaRX%KgvWCTl`PFbh6-Wv0ChTxfZP|f9FBsUf z1J=bxFc1hwN>0_zrz`o$PBf4Tgj777tZr?bg(A!4<-&3$A5PS^R(rwF!PZK>5Vuv| z4mR@3(O@dY>}0*SBR2mIZ+PY8i~qfZO=7rUB9m)moIs!ui`GJ!+)^~U(cWE#%FHfe zbyx{SwwBiW&}OGf!PRI!AB?rrwQwws`&Py;uu49Q`dPs02i`&=is&Qu6!RKpvT3jI zXEJ(B#ij(BE0ypAGh2w?0m8Ov@>8Ve<CAmRsx<+4azal#{--9d;GW7Is(7Q?QiY=> zQU|u)EUU=&4y<yqR3e$k#1aVx@>F85yM07U+TRIB;)!s0$1a7!!Eny;SsU)<=E}uZ zWOp|hJype0Z*fxvHcqRx!(J_52Sb5iB%023v#Dq}Xb(11`=`4Nw`<$+csd;Hg#*!` z%nv^7fiJKJ8k>=D>cqKQ6!fuVF{I5;&yRr?ULp{{cmIqLsdEzLe2GL8eG5A4v>C16 zqHY1<g7^cU-nnc~$KM!7#mMV~Jfz7fMPK~`f6Vt^f!Du|H1`1JLjBfnAj^0!_%(Us zZF_R0@sYpmRsZ6`8-7c=oF($)uwwZ3{ts7uS(d*X&ivR#|KhDTytLFJH6BK@-spom zxVG~OSAj@4A84i;ccAfY#$NIZ3!xJPhL#sC5k^4Hn4q~k{4MYBQj^mZ78y~5`2%VH z{)wI+ukU!Qso&Lzk@fUTG+(g}$jjjD%rZ1TQjT}>>D|;MC0ISg{)F_$8?%7^mgRd2 zcB^o`>q2U|0o#=D1ASXK?8n3Wq$b($ikS2RY3sAkfYMIs`CWSd<U=DfeV;HUqqmSK zEwr`K+$rZP&1$<?5jP1sP$=ru4-e~3G_-hV|5Oy5oh8+liT21nd-Zy;&{$nL+&)%0 zjuumFKGRs=cl*lTUvFgctkAN}L*Ksd&(TqyXs?q`D1VKLk)HK}G-D=5N}gQs`W`G0 za6%*kt%@LqQ@0&3_Km>ea>(5$yVJV6Pd@Khdu7qxY+L1vZ0n+xz3}~c>0LDv5_?7{ zq8LA9Pv96Z&g~xc58Bqj`CGl`TO(^d1Xu9q$Xa1Ms2+t_F)Yq3{!#`79-)%VnK%M< zDVA(g3fo<Bi%I~p8yz7rgi@dLl-@Z}xpLIkZ36jV7^fX03Mfa9QBO36VT7*}-Ru!0 z@52jfN8`{^B5g;}P(@YJtpzG8F_G%Gw%|bPKTf-fm2lLO%^YRyQ$E4VnkmUln!tgR zUeHEYJ!n+`K9XPg=c+?QfL=T3xJlZ&*adIfFhrC5skEmX)&dD-zK%5aOUlIWE5A=t zCCajTEWhFD@R@J;Sx4gH{YDPc@CLDHsk52kZNH6fc1juESFZ{?wdm?jJ?gC&qV?`t zw6;T_gNEweZv^QWHQr4)TWNhd$I)j>Zw<=n=vueV+0yBqwTPU|IyHi*%(Hjy8;wcd zGePzmOez+W$x&)KeAY(xnjS5vN#elujti5+n>4IY+KNMGC)b>MOY49+vVXyEzO9P} zt=erCYJrBi89hd6GYX+w93kl|WY5t*(!+8}npjFL-LM`0y7vD|)C@6$lhbJrUOset zaOavm^2QzDSs<+HJ6I#0PBZT>OpeEiu|~@9C;k+2T?S8Gv^-s$>w8fNvd^ovj1$pi zPZSDajpdXw4mQmV3cS0S$vI9g<E~kCu^V0A*%gvFeWO?6M(og1Ug7F6_i8?GJd00| zw?*!oW8xEo1Q668DOiF8{YzFqFvLa)K{Fajev^ca4$Uld*~`}M&eG*&>u7QDsHK(% z$5ly_S+$A8sIS)R0kgq9|F?Hr-dt;Ug}wR*tR$(JCs&o7T@)6n|9+Wm>~plJ@!&Gv zKK8YIf5!YH5lb@OP7zThxf5|zBV)}jJj2Q+-9)rm@<4vB;~CUrYk%>iytdNaBpiKj zv<P1UdQsInS=o{AL1M-Cvf}L3PtINKvNp>q^@d2DjvRQpgERh}CR#Y%>6h2&y9fwl zpYeB)3%-lrcpmH8Pd)zzaY=t)ctkWt^TvoHMz(7Li7B0vkPk^TIQPs)Y|<PW^qhQ? zNN5hvlzan80J$e=RPipMaxlYbP2Y@FIKQ>c%-L+^^Q}!M6WNM%$cYz43yLgd2S<Ux znr)W@0T#-(y%q=zR<ld7XeE-#L@JRuyClU8a(nW7@6r6_LuLw+ke73bW;sX7m4l>{ zL{>?bQkiT9p@yGmddVES@X99}h%Q=2^lXyrv%sh*{v$yuj_m26aB-uUUq7N}i>{65 zgE5#X8--J+S|OIkq{P#=DjqJZL3(gDEt?q}Z3C;6L~{t-Ib&nw5)24t5(aWv65Bt& zk?@f$ifQ)alS6oR;^Q&nu4D*f#vxovgHL4Y!I>res(Pw;H0KvnN~eP?gKvsd$1F)F zeaYpSb3nol%9yrro3N;LmeF{Qmy<hs&e<MuP7_UPOnjPO)@-rma7`J@sRYa|flmAu zt}=XcA}ET(K-6i@&oAT^%CBt*+K(aJ7}K;o=@EBTPsW&=-U6SAPnWEtR$L8HJl?b! z-TP5rs@QCl-W~I4y^%J5gU7-8;--<?>NSh+j!TVZ(U&SUq<>sz5)~#Atw#;(_gaR# zZUMt*E?yRpW)Gy6Xw=WgQ>=`BK27S^5yTcxI(fT!!oh%$!8|;uAMkhcdR}x_L4-5A z>UsUk>Hq?Xr>G&~FQ1kt>+XM99R%4y?C|eBl7GSLd}$q^dv@Krw96dTq1#1(=XI)a zu(UWbACs(hc5>D$RyEJW(~w6iPcnrNs~Gop4wH_Gues;xRB<~G7~_q*mN`_BH&*A3 ziuAkN3ac-?>9)1ARaM6ox0nbkc>hlApnG;kiy`UI2HtF|e6X=W4Vf|+naHMwBqCLm zT7xRUb4N(T0w#U|`p`m9-;lt%D{5mUQC}k~f%}FOuxs^hZ`3M!-Y4qx)vH%)+5Q&h zCWg_ies;}q_g)d#B@tnJuN0P1BlnH^MAY-2N=v;X+jt*iP@MQwJp=2YzHd#~q92R2 z%nL)L4iJ8<wd&b<St;5xKcCM(!=-M7?1gzKVMOT`!P~D>i~6U2Anps~?H{Xq<sds8 z4v<s5l8TnHRzJM;W)T=wIUWrJon#{y&Si-X4#%9WR3czUa`{>^9!#KslFfO!QAuK0 zA-Ky9s3OVb*258}QeVzxVqrTN4A_}?s#vQnZQU<3U9IJEkr?Soqg5y2jTcLHvb<Ju za>-ILSxj<?cyT$K3PuWrYzd;EKroYVC{-XFOBGsJ3u2jEJe%9;5WI|;ek+>`1<-nJ zb_gd!Av+LHott_muFipj^$}z6QxFgLM!P)4&_@?|G^rkZPd%9MAkT?+P$xoPdhfx! zUH&C9!j<O>9mkTyai~Mw#g3L_>`1Gg&UuCJUE0{g_n+AheSb_3B-&8n_M5|Y3_xIN zPAmcX>3~k*7QwKXN9P@}YgvC3wsA8IJb7@yQM}bDhv4cRm2gtcOgOr2q&n|kr}Kec zyWLBaquE65uyL@`EjJqF?#e;qu$IUUHjM-!`p?jg_z7czcn8O0!L{vB`}YlE1`+K! z!@ow?%zt1_#NH;@1({Vua}<BCt@C@`Fe-vi1fa-1!!I)rz6A65L}MN$O2zZwzF7{8 z*_>8T1h;c@N_3d+#3iC<JsG1!QPJ4}`5<`fiCl_und|oPpWL1NOg;F@l);N`jc;s5 zE+)p*=UOh6o0eHhD0PJ7>nV-F3rK`{l(|#RF2u0%nXeU@EnaesKF|izV9TA#wF}Iu z#k6U2o|ofmVYR!y79;!+nq(@P1UKW0ptXsVE!S{6<MR)1N=hPs`gxAe9lCjL6Vs<g zC&V|+d8FFL=h6kH#GFUwPJ_j`#ucLrkHnK<?Tc=#C#cc1IyQD%!Pcppk@60)Et%7n zyEkwIN8$rDB|M06^99P`)Oc`e1uwNFJMO`R>WDR{kP>!v`Mx=SeOL3Yi4;kD#iAh% z0;%ZPb4djtQjv&Ddg<{a5zn>6Bq2;<{gCKhpkYS)n|UVc;pYqBjRDM(9^)ilDJOb@ z2Z(p+J(c(g%U7f^9#FUavL6{^kT8BN)s8m`fkG{AKk0V>19Z}{7#|uKFj^M)h&&tQ zE02*O*5iR<BOf!*>ODR|{9z)WApI?js!@#=W{}#2OHHtJj6jCjM@S~=joK>ce>&@z zc7;n$kvCBEOsia6P9;~0OZ$;(>u5ESs4w4Ik*gPEcZnr5YN?aWWU^Z=@&&9N1uD0G zXuapUjL$uP;Q5cfPC12u=x#CTx=8t-FNk^N^MxOf?3xE9>`JJu_{{K;Nq!KS>0u-o zV-mjn=5in0TVD?XSUzj(sWviit{O}cdS5HZs<rg;Qo1OsmZj~{tiE<lkRWWe7D|#E zA+xrYDdn<ve)dJ+=ajel&PcAi-x8=LyXgma0#FQ1voJZ|p$C?*YqCfWZF1&19^(5L zvy2Z&aO_{<1)34*_c`LE=%{=%K#2{N!3r`pL?O{2r0JJ+PDQfWrx`tE#QBJaNC)Z( zt+X6u5tNKA*7H-!^mCXNOeCJpDWLV5yWtW~89RnihI9ADCdeFdBSMmBb#a2znapRe z<1P<|oyr~x=z?({Tt^Qw7!&8ILkHdVEoU_2+l_MSxQUOI@#~e1oE~4hJa@_x&||IO zx2|LRhZbaoRDc<KLR)S{5N8?s4T;s6mWY2FNX9_OX52gzU1xB~VvGN<0PegyELntH zD{PZ*2m7ugv3LC=e%LuSx%-{L5#LmWnKv|txv=5QXwUpmFOo@5UNiSe1{&ifbG@`2 zp3R5;#i7C}?d(JMqPFcBf7<PPr^kRUlO8gB>uF}V>;PZ%;En>)cH<MU1ap@rs$>V* zMHNs%1a~-mgP`yY7v-Kszx@LI`xi)lc+Noh%!DQ%`uu>-=NB;LJpXJqKKby04~fj{ zY*ebQ=k<X~Z>^QimX^*+Yg;OP@Y?lME9$e&<I~eF0I6em{T7{kE|+%}_t3>ts?<F_ zJ?2{2Fg;HK9&nZcq?{N`TDc*M>d06pfdijfdYD&W24w(6%=k>QCd=!a>e2LbBMXA5 z*AN2j459};CmK++06eVPI*evc7`!d9I^yn*Cd0vanv^GMxmb)F__e#VR<GdJiIAVj zGs+0-M#IrudG(-@4hZbTF6CFN#bhk_Zugp#+<J*`oYSguESZi6fgZ%u?ru{B8$s4~ z;<0ox3sRctFqz1bVFfuj8cjtLg#>KO)ty{0lPsh%3Yi((u~;nl6FaAgQ<iz~+sJ>! z)G=Fx9>?ZGQ0@&?cDxv3g3!1XrE5iVTS%Qi%lCwc0};{}=It(NZ%9&ow5r|6_5RlQ zVqQ;sqg!wL%I$i0qupvZx2`U>nr+{cBa)>`8l3I=dYym3#Ncam30+SjnRm3qyn*E= zu^o$*qm@du9E(ZW8Asd;U)lcvsqrCl<1=hHP(|B7z~VMbF}<LsZwpS+uuH9FRaMpH z*0x)43ni0#yXs!Lm)?L*?l-iv3sTa)Y>ADqwY|9LHYCG$HJ^7^ZlWedzK}n$0UEye zUqhZpj)l*T30Lyt#1|xcP>lSuGa?aPv*cUd#m#yiM$MDn%JD0yIrX;P(KhRHDxqG+ zo9m0U?#6zXT77lwo*yCTCbg^)B6m#x{kQ%9v-Us7xEdz+35{w5(z7rhvL^l3q|)9L zY;<f?zYHcK0k;~!xfrqvv0!%TXe-uMkx<ksgrj!<G!Tzje;5ix0{#84=#*{98*|>~ zCF9rS;8i3V5BLkAAd;=N7yO^dPrt@pGll|+ClBn5@^%L&B$M5-GS<Pnb8p10`hM-I zW?Sc~c$HdH=d!Q+j^qA{+3K70#&2WI{hncQn55fb7gdjEP{b@S_Kzo?K}BKDh;;H> zc-JR{C?5R%GX{vMN%|+2$4^uov*hEcXwm7m-M1@ts;}a9t2}t^F0YjKm#w4~b>FzF z(L%~ubPw0qWYGn>73VPDFFLDj6=)8E1MC)RF<Q>3e;jSNZ#S&!el?zLyL&Z`UOs%2 zZd%E~>$eG~R_f&|^=yib3QnOzwbZ)|FJ|0&)KT`TyKiOK>EJx4+rpEHDE_xe?va*> z0)?6Fc2o4hX>Lt`t+!YrNjM8$F|KI|*emE*D|5H;f%RloNyp#moqX&>V|KUPEn2AB zQ+qUKauv6#<U*&ejU7&xL;8r|x`{UZ;Hvi(PWlPi?eDbxLcvYnDq%~Y684{cv<zzd zc4@B?Hah07V7c(`{wkKM4^7XnWVy(h{;OCnG4=dPmaC;se-+Ec<n=3AUlQf<&sks3 z|3!>nZm%un(*EJ$_%8Z_Fo@hc#*5)hTsHTNx@N3TB$ElRlSrl9Wq}ELcU$dBrQO<Y zHr-mQUT+ceCL?|-@vbYo`q-6hei)Aw&<7d#+pR6NtM;8%-F?IEDyR^Q#D-+%pI?!2 zABTt@U*G?w>-zr>-#>*RCyZZ6;?ra%e~L*0=-GreOdwYJut~-})<aL6C{9>F(YJWB z`3H|Dy#Cn~i(o-?q!0G<dBQs9XP?=RL*<kcz+4{ByRTEBYNi%<QZ;Wgg9E7OX5IaE z6D0MnI#l`gppdA>i@f)-bEoWjFqTj5Cn|{|@8v=zmR+ldkeIE%&PDdITPF@*+0oTx zG<<M&>oiR{waRXW*FzhT%~UNA2$I_<YKI%C&B$h$b<s$)wpoZaiy7=_A|o1`j&LeX zbN9DhU~?izBfnwj6y(qhLIVJyYPImLBcG})??Scj!6^?W$u1x~mT_L^fmPSLvI|Ka z%U%>d&D-iC+mka_Y!pw#%B3X2Ly(anJkq#&1w0#))B!`7q!dOVrXuSPQ368q<gc`r zms_oBy<Tk<ip2tA@LTLUIKs2#c2}%(-FA6UMlLNQ3K$F{yI-ovWpydPf4ra9B6i+5 z^w9*$Zd;WxDZtSp2l+Z>dX;Xo$cDm~`(1RjzfXD7b39q(KOq1Y=}97$Cq8?Q-eG=e zyb#jvPgLp$S`QNgBrJjE5Hz<i9+=@yV(!ws0$#^{3p}a1SS+@xD~-b2oPFlB7pu#T zvr=ugowK#gT&+O*tnrG%odc{tx^u+c9qewdmP}n=;xd2d0LBn$3&!sh(Kgi^mMVoU zRg6W`2IPQ3HU$x-R!i|V2`ME$Bks{lVB^q+HMn#Sqp>8|VR2J>J<YX1Cj}Tc5zD1J zkyy64da8ZsqTjfO5gaH)df7yJxhK_1Jf19M!tq=#o(xATnQ~*$({5b-ObmYL8_16u zS$A8Z5;1X#@)_WTSPX1Juf*slQ61f@vUl%7Gc%p6uMgJ6GH}DRMqHZRxo|hJG-+d# zD?@~?7Zcy;2U#1T6-Y#-Hb)HGr0C<*cn7_>wIx~;KP%8GgXXizcdrs~-<H)&v9e2g zE>j>M)?kOp&WjJ|1wNn`=#Ae%>otDgA@vrQp-z8MsG0LgQZCi$N}1nvCBGDRB-qGt zIccwAI}#KZ<s=h_w$w-r9w(d^)S*ph#5%*V4s^WYL3gZ|<jN7gPhw0>E!mt=+JmwC ze@b0TY$pv~JpJPHrweE^j09kEszKNBcQ}Q_o(zaU5wzy56H-ViBc2J`7|1~^f}mzZ zcb@{Up@S)CKQ=0sG$r~IV=o)A562e>`=^!BonrG)JA2!^g+fZbSxd)PR+Fg%_tj=1 z7i$#qiGtIwHIB=f+<{8Tx_VL8smO-PgI`)*K5!$knqIfEz7cfNku7tIPNP>WZ|YUi zO|xou&E0QMUOlgBT%0@^(GSs`pjEsv7)=U6AykXwHaA-ELUt_Sj?(xRt<}ZBqU9(k zmt64zLgl80^fSVo+SehD;vXR^+*)(6=*{3J9NH<tX6WD<$|GY^LFc#=JvRut$0Gx? znw@wcY>(5B5<h^u0f_ey0@7V+VSEB`0TK0v>TC=);NUnox1iNi(Y|%;9xXPlRe?*u zUAn*FmNy2Q%65;esJ6$L=OtsHPjV*t=uqGvWAp=gdlPEQJ%iXekyI6R=>`S`q7E;A z=*?M?{(<++Xoa<>E-9#PPh#7YdB%+EgaPRBT}O%1r+CS4d0WCbZg|I8#JTnk9UT`6 z`AqGXLMA;ZW5i>~CU%Ej<);qCxF;szn`0UCwcu~5n~4WA)1vUwCA3pWf)_NrQ)ni* z`#t*D6>6*ktAMVnR*1Sv#Yv{;q;zPLwckm_iRQ#L<i#=$D~4#sz+m|?Zrj8(iCvFT zVjSAw74{PG;EG8KD2s3S{I^`s-UYaavfEo-?7lF75j)^s_WObAvViDH;dPAY^h5Wb z*>%6g^Zu52i6=js1xpZL(4g5_|6}pkTQVj2F;z@*CC~H8G*giDq{pud!FcXeZJg#8 zPYzde<!EztXQ`VD71mDntb;(!Js$MkSJ_M?y0p`Jz3csp;NUWmjugG|X4MHE7YR!$ zrduV*S@uHVtMn;|*;DUQtQ3jVac+i3eS}y^$^9)nwBMIF?IA7h^GQ<80J(&=o`p%c zTBeB8p7#3ia!<|8cp+}WF6NKT5EbJ8%<m!Y#jO(iVyh}Wpf+&eL2=&<R@}3|%9}Mw zFoLDfDR;^e=mzT!%|Us}WnmsD_siwJ_2k&yeDzAzj;)j9qj$$)jL_>=Yh`V)whrhh zyv^Zd{y0?iL0*=4%d?ZQZWPNQ>>SsT979oLQleG__X0~cBEZc6j#9I^)ohju4l!DA zU}dY<Asb=Yveg`%ha-tpmVDDG63>s?%IJDnoONnfp&T8H7ybz%F^2+%mj;Q)qii`@ z`zTjisUb(k`B<stj;w;rVPf=fJ(<1YQlqv4fo5u@)>ta;nVelCpPgaq|Ce|^Iihz& z(lb&PeR?#UX=(2VpToTJ*mTfQXMFkq#_w;crwjAK{sTyXaohL78YK=lq%hU-ZW=_U z@-$0CEiXphBUA)&k>itJ&1Hjutw6XK7%jNFIf&_5RkHJ$puNpDU%^Oc1IO?HTHRc! z8ILZ<1{rPb7mNS!ZSUo_0ar9QnD2DmvG4rmW@X;-NgI`Uk<mqb!ZH}hh$8~-6Xo-` z^?dR&nRlCNgG`?r^_{x){r-iuBc!B*5^S?)p~kMB!`v^J6TV<%`3=q{aW*0a;nDm= zun1{*(RIMT-43~LL3+InRhBmD#7=hW8%yMqzYH~1s2Q^V?ry)o8(OV4*2TrW-l(qj zvsO4*C<JwTG_sga+a*0SdLs8iD1jJ8w8RX_bd}$^%G;qrEmFRUGMzX4WG!`fx8Py= zBYPhSq0EeIzb-d^dH6;ZUx{=(Y<uJyCP6SW+P9>o&vLRU(kv}_7kqFlsPV`}@-@6> zX_!IYxRH8qeJ7?uiEh&By%YEW58C(N4Gt?iB+>-##Eq^q6EruFza8r|F56dY!@l*q z)YmpLgu&H+KE=o+tw(6)7iNJm(c(0dHq+Q+9}M#kp2fjaRm-cPd@dAjZ&j|Um92I- zl*@-!%iiF&`?_lt;_o_ftI%~{Z`=PQ@-|A0W9+oLxmi7p<>TS#+sL52<M#GL-lck@ zQSUE@0OZU48@XQE!iWjg^8lq-^c*4TMXDWv010}Q35quq{&No`#UyW_BbMi+=ZKoq z_vGrLCNl-`XFm~U7sJ9^&%J|CsGbuJ5B{Ob5Hw1k_wX6KukZ|3&^yHjDl^`c@VHF) zP#i^Dkf|#4&|?oLD+z%nI?4lRy6wh*uYu~X9J{4>2yd&~i>Dakt%!<=^K}c+Xn)r| ztJuQ1kvy)bhH6xfPvfbLP1)|A4c@r*Q$%jW^HeClUsW;Mb%1%s=x0GBohXQ;q_%|T zC?DyWVsQf5Y3dJoa^lIDRa3yvp8IX@!m|)axDW%w>;y4QI@RSP(CDJdVMqSNJ5h!f zAN{b@?_-M>%KLt2<$@LuXtIB~?p&+@i9A@(WY&vbkKO<((i_klRQ8})WRtt93BWzp z3$S`OPUM!<c4(zpUf&P7Tjl0TXeYGak2-A?YCGGs$?$Nas>;T0co#-H)!cU4?nN7; zG!ldBjN}FAC+K<N3D9E%Vx8}Ed?Yb^CE`!?dQ?x8*{!oP_u%YIeIdiH7c^JL{LY<m ztjM?KJQF-y$ueN1j|U<yb4G%p7<tV}$1w_Wc1ANq4TLqWp?cf6I#R<6ZAtt=yKSzA z?C#@|YLB6%JGyRHw(l&N_=wMm1^PqSF#ayM>fZ-d{Rf`^0GUA^)~Ki9i8B39o}^3z zPeGPo%m7jNTMBM|Ml%`Y<#`I$%%{_EP0Y}3iDR6a_s!@hjZ`itg&AQ25XY>4h6#Z^ z%H7b~Vl^Dj<-(<96<IFHQn<Rf783r9_|2{En>$;rrEqq&R12woBHpSVRa<d|UKpyC zRzVi(Ev`M<;-0=YTdbFXwYSc?bo$svCbJQffneQvyA}Xh^d+03#mq@|r?wvy&Wzwu zu(p#u$?V^^($wpSZ{*ux<AibKw{<jwOd>ZB>zbDp2ar~{G!M17Dup@^Ba(RS<*h9p zULDeR3&U%bB_9)++!4pU9t$Z227r!Uht%TZjSDiBN_6<RLrS_E+k3MY+r{e+&aB)u zKer4(Oywe_aw(z`?ujhO_;Zts%*3eO(DsdzKgrA}Go`%mM5hV-MBcYS#sda920F|@ zs!U)Jp9TYB@O(FY`o#L9jt<{Gu}7lgdil1ySI+3|1Gz1K;JU$g3v>!-iXiM{0A&nU z%#U8fOCuIfBu;R0rs!g@dW2XrMhy5NCU`fl>UTr9n~chgMpEpT%x8H4?2SNmdTm+8 z#Br{n2`%3WAJMF!BQ>)(>aS2@8!h{~08)3N%}CwpZ|;R@fG9f5VOqx?W!GR*utc<z zuZ-Mo*AF~!Xt5B}2&&Bx=cC65`NjQ<US{kdI@kH6*7C2f|A~6~>w?te;&YQXujjo` z9<ZQ;Bw+lFgBzv~B)2OX4|cFNbuE&W)_tSc6OPb3M0V8Z9i3ZnSk3SR61u6UOELva z&(6(yrOL<p?`WYxgnRd@k*_&9MS!X*v`*Dgz7{6i&P6wQdhR{%ckB(OB2ZH!AYh>J zF4CkXybcg8Dqv5J5@=vDuGXzk_tb6OhYJ)rJ}}V+H!k(U$g8u!i^;;2ne+^ha+w)^ zV)naAHT-oP`Z?O}|Hs_>hBmh5d4771j%?j&&F$l|s;rq-SIf6lwtDx_quZsjm2OS9 zvZI|<X2eF>9J1O)Y(yeDV$cgstrNuJBuX%e3En|0W>FTgYl0c{LNsP#f&->8i>Wb# zUzlJLzi=8eRI(<R#JQ;#zGdlDKELNk{!`a=`_3{U<0}1^&hwn-JkRg>{rUdBKfD-; ziIwXvm0j}HY;xmW)qg&S1RC`(J9Uf=c74;AwXfGrNtYP-Ql;>Q|H4~KW6Xk|k$S8> z@3ZRJ^cc;-4(>q=G0^YR*W%j|SNxROSBLJKtx<--paKlOk<XiH)j#PRbzGafzOl<- zvH4*6IoJ2-ZOjuFDRIlXp*F7I2pAY;Iw!W{7vx=j!Orw+V!?C%Y(i7&<t(<$W6HgY zE6CtprsZ{sl=OdQAbCi)W4iIjVv{i)&$aJj-}&Sc-xYe~gAh%YxhDVAvw1nI$BQrg zQlotAdaDkrPD@fsTI_V4ZW9K^-TU)zz-L~q5!vZ?cMWdhgphMM!*6Wjad@U}OUa&o zafgCOr%!|8L<OIjl9~^T${#b0DXIR7!lG;V`1`_!N#-ZD38^7-S<K|f5Y1&=Dbu5T zP4^TV3&o-jNrT#es6k5kn8M8?*`@rKw9~<P6pfDR1lf87jaPp9-q$4Nzsi^2`-I;? zm>W3Y)<ATD8-Mo<J^wBC<iEw}$z<@{+Rw-jL*axU^tVwp?mQQd#P~}e`@SlHG8A)4 zIh8`MP+=1Aq+ckzz6p)iBZacZk`kj!mCAg=R|2nP55`H!5+C%102DnEUQqI6Zl8ky z98qD(*X};Q_Y;}>+CQZ8dIhb+>>6pV=(8gGl$3dShR&>S6s*llf-_2vfWs(**6U%) zqc$t;{$l+3Cz~Eqkb9~4hPn)1YBY|*y73e_G^$!~gWTnb=*!+Vtj1zznkiuE<P1sQ zxm&IN<}3d3cLB<39IW9;-V^@0lwfp+vLbo^?T0ESmzv8wo+&&hxkP{SjHQdO&iLov zOEr2utc<)nGO6w<!csQMn{OONyFUDVuPapc!bw;wh#VgA?ceU9zTaSAWoH@hGSfV# zYOnr}AeU$6Ygy0QQ^p!%dNAJNo|X;7+dsrt9AH;tKh`cxsc5GZRb>oYCE%!LmpDGg zY@}YBK##-$Cw!8FP4Bwvobws&#}!gYz{v<%vUF05czk3JhUUXR|7`N{wEywUi^b`e zGt)f0^iRL!P5&gt*W9H@(H=(ZqCAVJHC`F#yc%AeTC1Vs<It*gYMzXro*4f!UWyNk z5_dGVcxr6P)1fb@x{yD(4Yv^v>gO(Tudr&XHm_Z=K|Q_v82$cJ?ZXu>2yE1&yoP5K zM4LrV!;jCz_5NWFqEUFM7B`9;%G-o3O2VL(@RNm)_!L^e7VO5YaWF}oRNn11+ZTqi z;|yR~Ea6Sm4hx+Gr&IGVkT1P73DGvdPrb!<_{a3opcbI-6PV+PEuxT<?8C?cIf5Bu z-aq$K8DR*qrWY`pHGzgOCe6T>F->03ld!QaR*gTg9S!%b__33T1!HcHyL|pQjs+Cm zHqE=Af#19PnS#laYu;ZA$K8`?$jL;`;_<Us%7J4g5f870TioI*asMOtM1LeQ0o`mg zUnfBuY2Ioz^@$%JmzD#V+AkiHyn$gMrUytg?+H1rY{LA5dJs1snv%nSd0GLct0)J? zQ%PbJ0l|Vq)0D^uT9u>)$mhLOF2#T81J~OJNsswUG&rd=>{+t6KCb}oMj<E$PM=y} zrlLAAb$<duv0`6|34-wZO8m7D_sElZ(!NZeumx>xxrtmRNcpK|9#mx@EF3!dW-OHo zX0G=;1C<<fu6wS1vRRyfPo=ndV*XNob+vU8FKy+s1rIb?$mX|7@j=H~FO}AvPOG#Q zF0XVtE9LMSYV&B%mGwETqxtN)^AM!p-*>++rRw;HQxbM=DYnJ>yy&>Tj(Z`KRHs`E z%Bt2;m3KW=F$##DV`U>-Ddk}PnWReIYMMl)(Au37VS%CkjIEs|viEy_s88`}$B^)l zu|PvG9U$UOJyc3i%#*Lg1)cURo++~!%)|%^tkllj%UW^GzZQ$(YIPl$SHTH<SrVMG z`Hy0;U_n))ZZq#h-d=_>?!H`as=?qVLHl3`WFCP9^-)hk<ld)TN2)7$GLMR4XmoN9 zJ85srEpA~nv4&)7;K$>+OpzZ+PNdv8FOhp#5n$#8pFBSP$d7k(d^w)n01wiV+&`Q8 z_(6={#ia)u<hVTo$S6|M2YvlKdvO%gLtIOIhGULSLEy^rb<wk+)b7*Kp7B~1p7fN1 z&`}AiduJfyp|6FGMU9W?>2lIruiH2%KJt4%Jf_l)*QVi+5UR&O;#;@6-Kc)}P3Ex| zCmC5cdJ89p_<iN2Jx$I$gOQCSWSy?|QfGQe^ibxM!c1-TTS@j^JDs;<g;u`Wa&6e- zbm;O{D|CISnCqbTQSmLGb`n`@8%s%)L`U|$_tO*GfkRyd<!{0*#L8gnek|_kPobeF z<RL8dPmqzM?mU)~pkaAF&v#I!J^?{J%_f9{b8Z1xFlILdfe25iXTGOCVJ0u&aDx!S zfM&3saZLE6$O|O&oGn3X6M_}UUUD)?-b=-znQ}7WKUAx3(JE4<15^tvVd3OOJfgZ0 zGnJ3H)kt#RvbI%mxRbDwChpLDa%BZqeKPQ;<xDJ^4w9J&IopzLlSmnlo26{tjt5CV zjD$={X0-5St@;lWDR(0p8Sbd!cA|J8$IYdrk$lp96D+!0$_y8A^UC1~1FWn_@acA) z+W39+IGK}P#{UfVDW00i`3anJvG^jp2)X~lm5W<vab^Kmp3+Q}qnCW(edYP+SNwi- zqy^9#ey8icSxTqNrBcBvm8?RkR8FUtR1_Mi=u#?k_x((2$$c}}FO|!sxSet`DXUnt zQW+;@2cjRm5$8*R*R?8f|4y>K(c5SzJItJFtyWDG?z~k<RBP@|1LxP7`?e8HMc3oC zrQT94zRvRxUIIl|F%^=vBl?bK%SvSoX3?bbGc8d6m^9dDzoqb~%fsA_N;u(*MF+>H z?nNY;OGf%~5uz%rl72f9aiSYuf>q!kGC*Fs=g~+qAL&Pv`DjFiPx($h;zR}|FRO|M z6`Vl+N9^rHYy+N`Vo}pYh%L(IA|V*{vv{%wcWcRt<Z8+IpA%<vmJcnZxisCDb+|kr z;Hb}KF6ayV!qeS83F0@NK#hNQG)$_Rs`(EFX}8l<XJ$6=3%B#`$e{Fr+c8cCMAVkt zn3)~#FA|IO@{)Y&gS|y?6mq*~!hsMlJ!0znmfJgQM}VPBJLCPoV!tr8A9a>9MM^WE zlX$mZiYyg5^=vLaVX*8_5P|du{;ob|dBaYM)YB3?nRhSW7V^n%*<S*`|K~k_sazBi zUHO9REa%tUi)OJbApP;ReX4B`zxaWqP4zjA`ca8QR0s-Pnv*E6HgR2Fam~K!Z$<NA zQ)u4E+RLSkQyK!>lyld5OJOS-j5{&678gv)+JQHJXybonrGbQyHlEK;vs5T|Ag)xF z3d_VhJXwLIot<;DTrBMG!`x_|@4S(;s$L|qyI(5q?b{J8d$sMP<+;Ze&P)IRg$rfM zuTwwJN+!Rf2nI;D@%X72?IyA|ZFdJf7#z_$?Mqu?WqJD|QN4aEeUPh@bi%_kx2h;o z8zz0ST3xkaJIbWAkE@h&_m!E<Q14UNC%pAB9z$m6V_H!+s<0@;-oC3(5MKyR#vWIt z_oJRiQ|hT?Y(5y31b^-y4=;?K2Tx$2K>%sgJW^+TURVh;-oSO&EX-|p2RnVay0o0& zq!JCsU2ZZ1F1F7+GrXq4_2s0U6$J-MKKYpbi~RFyf{TSnm`BZO{=E-owbt}R<x?-z zcNCY5__KeKN$z%|QoP0O-f>rWI_L0cM@5UrXN2v#?tZrAUIn63y=&~ilP%B7N*$~i zG3Xbp)0GY(#EZ8wuA;--_G?~yFMdVOW+A;1y$(Ohw-gu!!S1~H`W~uaD+}gN1!XNA zogEk5H#>59KH5{?TNm?)deiFUl!`3Q@XR<8D3Z+ck*zJ2-F#^2H=r-=RMnAU%n|w} z@iMe8fk0@_s?16fyfy{)MH!)LKH$9TyRTCM?8^D|w3G5|d<;Mz&t`u#J~y`gh&7+e zo!+58-Z&$oxZ#u2jc7E+SNh-{OOPI4#w*?0m(Bw{G4XJTn@e<!oAdr2J}%LOK7RJo z;?@8SdDBw{LjFBG7zx5mo7bp%qwZ2#eUzH^@aVuitxTbq@rFrTnB%$R>1w}&AL;jf z|293;kwR2|2~TPTjYn^(;!PL73*8jeXhu@WF=vJLN@TANQ_sJIEr<H7FBe~On}4|o zwlftU2(Chubt&2|_XN3OiBvjFMsqX~4+SH68^&Zil^*m3N>QRJC+;G?C^TT&zaW|> zPjNad1=F!il)ST;O@dfBo+xKiMJpI>##DQ_R9bdcO3hNTS&}s@^3cO7OzS=Rv4&jC zFs=Y_^}lDL{oReW7`?4x6)`r*nrGR3CMRB;zT0Z=lUd`F`#`rZDQ)%s@>;<`r!$An ze*3-tNO3Q!`ujgL9ri&y`iecu^VBkg>{MXS7AVU~zO^Wt65ofT`msdG7N<;Tu*FY9 zX>Xh)1X&UH(M-%PP#C0`ikd6?Yo_skx0K{83k6DRc-c8Ik2}?!EDXH`xTSKLTxHE% zs~Xnm+&zq;-}A?K6H2yBPd4fhNZ=JVl8_*3-FRUl9{4%?cLcQeZ~1<Q{&RH=P%7pk z4$uX|Kk{CL(TL~bFF76a#piRvs51kI1+DKhQ}kqW<^^Qt63I)Er*>Z0KUgP&wgQ}6 z1)J_wK1PsCf{Vk=QsU4ZKxaZB_tlHN<dOT<prZBuPFICCf`!93^=v7~YvZ33lBxCm z{X#jGcdwfIK<;i<hbY~nQX{sF$GzMw$Nfa`>ixLY<SjUVyJcs+VmYN`Y$?wREjyoL z|GnnfC*bZtK4IyIqsq_X7Zi>VVhBivYK=2Y7R{IOdEnX9<jdzT{H;Mt!7+f1We<9E zb;pp9X}VBO7s)US+nE(}t+JYmu981@wYsUIR^at;>H3Ws9jy6NYT%k~x?U-k^VL!$ zY-a6p3m({9rBg`PjZmsl#h>o;eM-*g|BSRqQx&S{D-&t`kA44z?;rdATdqd(rC_oc z``^<1rG!hxjl+-&l4wK|4M&wm3kP2O5PlCJDG*9PXz?qbKW7F1$}e&3o9|5Dc|Ore zm12otIvR~w@n9sy>I`3ZnU?9L)>W<6h6K7+u$p<eS-yPR357bLQ+<E7ZdvP=z7M&z zjv3^WyYGeM^U-(x6DH&anW$w&k|1)dAY}`>E1i5X9LZ<POZ$0JQS;V{_2B=#VDKxS z?1$v7kh|>tg0a7iVG7<(b`OaGdhVoq2u*hVTOu|DxA6<lSEok)Xdtj`;=@q^HgK0X zO4TcNGZ^mt)!VpX)!p^nyYArttx4q7gqaBZ672&Y^(TI)+l}z>!U!AT>l3*jUIczQ zXt{eTTOWpv3wKZJDb!j--bg%6IQ(Kh|05p>lITN=IH90<^-2qbC&5=^onf($ozzN8 zC1ewFid^P>*Vkz9aRvupIGxn$5y6e1Q|`9nkp>3;KE5fS%xYbPl=do6&jj<0e_hj# z=ksu7@(X?$PsE&D1|zQOwmkH+Yu_fmj_d{9Z}H~|f9FlVb+_Y?UdJFke)5fbjF;%r zt<`F(qt3uu#Y*{a(&u8*9GsjC1}B+t^6UC5{$39U;rah0(@-*E#zX198EEL`{Q6wX z#RZ>?HhR2-bmiuk621&zeLS{2l1<=S0^w$a2m2~fT*9v&y$$Y~KlDa#=!`~|;WceM z`)7D8w~N(+O6;o`?l_zM5xwJnKW|uDaj|$a8K~_vp8R=$Kaa?k2q}OYi*vRDp&>=A zo{w%f9aU+A-npgW#bDn(DK6o0rugBK+C6OTXR7X+o8yTR9}A8)p{W^nn34rw>Ey6= zconN=4wk)#0i~*>&!W?MyjZ_ZL{4i;_dG^Yah((nq%oipgtNzSFSs}n)v1MPM%MEd zNqpN^QedJ<P>+QxR+NdGN>~xL%+|WyYTW`1OqQE?kSGtF#IjB#i>X*5W<jvb9$a4^ zwpw~G_iTLl4yUyeIm6P|rnRQhkv(-3BWDQ-8H_}Q5du2;uC-SmI6^_Nd!$W*W`_Vn zxbf71z}yJ}3yBZ;uDalh5WQ5j9Qe<OlmAS|_<U*(hdoNW|5JtLFu(XzUo&B8m}Z*- zA_KA$V9h9FXmQ?;AK8ptQkpSzvgWKNTH)nfGH1qFvv4z?w2NzrmQ^$c&CAQ>w{Mp( zFPoR<&x7Us+rC>|+X)4oTq~E20B2VleUg5?caqs5G_se?w|txbT3`5r9HuYuhljXo zVL>RfQ;Jcp-G?$Z&ru!y_;S&T2lzE90yIGP6Oa?>45H9|Dp*qiM2nYG+_f4$g(;}# zvF9h27_AMb!SCz(9v?E7&1mB5M`#-_V&oSK>Ge&v&y8`0uMTEbhRPd3&_>Mq7eKMR zHQ|4-5RE7z%|_{>rF{F1Ca*$bzok;{ArVi)18+iM;BMtaHl13@+UcNs5{rgHcEn%t zz883XTR!Htq>OO&?LduPaY}tuqK;@k5?qxd>idDY9JRucl~y`x<?UuD7mGwq?;{_7 zvcB(+%kN30I#IodO^QEGd}`#9YZhdKsqri}IVaUEZwYMC8N6&35+dNRWmS1o3imq` z?6%|qB|-KtbyXf!99Qbm1e|(U-s@penbEMQ)XlJf9=shEmC(a7SpENQRPK+-zoBtz z*q&cuxqD!)Fb8G;B5S0Y5XAe1B>r}0+=$Jasq_u!irbCYp`~Ol97(UV&{?8Qi_$P* zg*1?BsWd7jl^TrZ(l?(go6)Fy8q6eetyDT|mvD#2vJlRB6J$(hHJUDl?`QZ3e}TTM z{XxQeKW`v2Bu5Me_(?BuY~~Sy<=ZTc$FscuOi>EW|C4;OXytO9JsZvq*9X^zz1PX* ztU}VUETb0=1&3E96)gR6(9GawQ@+@Fr_imhEiJ9pyM@k0OaK>l#tfNJDoq8=eetwu znelWYNPmJvUw-QQU06zdurO-SE;R&z>^~P9eepR;m&D36pbe$v`Mh>n0cG_v#KgbJ z(wz_B0P@S-<n$+M8Xwo9-;BHQSkS*kgfi}0s-9>hRNciz9CX`>7EbY0-pS-_)if!E zV5+8_%Q$eTW}Q~TZ3h8(w#-z*G&a?-nMj%D9|s4A(L^HZPYtpsiNuMUbTam-c%BO( zwH+)jIq8!)Wfd}U3ZX9*gKmN32K>>dcE$;8pN8$c<!1Tuq1t0LhduwzI6fj-wZfz; zI{Y0Y6pXOg*@VDe{`eLLwun7`&v!bs2#D~XU6)A(7fOp-G&)CW>~fNNeg*+|Z|^~l z@h3Xw7n+wQL?l(q4J<aK2DX}5a`N;gCCAO!^Es~)05xFM5iGpa0Jz>CzbH1`3pnF1 z8s-<p)y>tSz8mhj_2OEQ|7txQuU6x<CwsdWw}M|2{M4MBub-(0YL)Qv3v!J}XL+Gv z9#hXLSLWAzM2tuv?VhcNt<b)ErplT9NJ_Qce$$Be?8LjiYNsOkRkFi+PQnhrB88Mu zyTj0`>)0m2x)7Eb?p^p}dZyh|@l6S-rRb3O^~QM;8owmqCH{@mm~ZniK;iN?E|wuq z6UI))4^BtHy8njQ2RC|(Xxr2Yq>v=@Rn7)H1s1=jTWjUS9}GqZZ&cz$CH7jKge|PH zV<q|v&-rI3NJDAyc56@!`h$X?yQee1|KHv}nfUX-f3G=xh20TYtwF?o!oWlq1L@b) zBYDL>Ajv#B!C1d0*LZQ_e=MDytj7x_yB>nIesymJQlY)GbYlfAGJA-so@#AU5s)<E zgW|?+WxY{SF_h`89lyU2FKoRz&c~MA-77q#twv^vP)I@L8tEm{zm6`K!bLZ>QQSl` zJW+ey+y)gq9k;g`Z!%`L^4Y8D@jZND!os8B+~G+-^$TZM`+*4yv~Oy0n%ag^c?%+c z$>!BAUiLQd-(%XIz(po=9*?iBxkqdD(q4JcAH7z|wOV<vwDVA5wh?iU`rB)Ki(i%e z#RrcPFdy2tUEhIwuBm_Sui+?G7u;wc;w335#<d4CDUNQ`pqC^kfd;^Op3^lZ??Nb5 zx#hI>9A~d(gaLlEigCM;LOJ?yF{?Q2<UaS5N1uwHG9&xjRyN_J^DRfO>#<ysJjfe8 z)e8+xv$TH<cuM?qqR8rZ$yk}vIYHut#iVWdeE`HahH@W+s2K$rXOpm>rCRRzdEnLP z8yoWN0kbt#Fk0BU8sId7IkgO4YuFQ)U)J2n7b-QLMB;rENaYvI+AR3Bxq0nq^s@l& zgY#j*LW3G};PSkhOt`%iWvf&vk(_w?6+Dz^EQ+-F9li^Ee}BiY6S<IkWdyBCJxra> zt5D99i$6i<{$s7pitfPFLl{bmf=CE6*Q5T)CK$af_Z&+nI;aTzIq=6lY~OA7d~*|q zoq~$?zU)lYIA@W2uZXF=!uuxvG_XN;b@W+?eqKuU@65|N1Lf@&SLVNqE1O6zZ*MpC z|K*+Q)NTh$TSeb=c1`C4yx7r(d$F;h!YZr68$9>VjeoYYyuGF3`JJM><XY}haVM|h z{;e@MYz!8A*T3^)caMXO_iM@3^z{3f#%g}3Y5J#x#fX>~D(2#pnhU5YUCbO!>8tAF zV0T?zsp9(X(AQPro||r)2X4AYxxt53pzAX?5osub)QyO-*+X=Ohb=eF^*=CL;XU`H zccI66G`}SFIHx`BAMB|TdDH?Kt4aK>qa>K==eRAYE^a=ObT`>Ig|J*$<*<=;65IgA zg^(RKS{3N@X2IRtW5|vso+7b5o0E^gnENnr$Q_jL>0^KmDQ=y#80NeE^H{tj5-{o? zYf@|`+5c{#j$Z$s^ZxX+lrcZ)ztcaRxLP%7<$m-1*2z|plJvJ-Q=>D;SHC2H=AD(- zI~S8{Ph|_6s-*iT`x<*9T=COh4)r`K8zkuC;+M2D1jkGNGp;fn`b_TlNOG9G6k7=< z!O`y9>UG@JPH(H%>+Wu-+Qx1dC>7v$r&xC336=l=-hYCwC6#Z~>y3WN!34tI+p=sG zhRIE3+^ry(c5w;d6yQ%{DCjEewbN9A`uBbRq3=K9O-eF;rFRcTEq=I2U!M@Zcrb8* zGW;td7u%a%x82>`?r~CbMsjX<qZtsDs2-I2_W~ML=)s7_&z2gEr5=Oe0L!8HYpDe1 zYYzg~zRBc1h`{AX{FCqo$dF8|8ndI3FlETXal4#D=Qd-_s9GO3oMx$o-kNGUvacdn zsr}kB{{($nIOxG}0-af$mpM-I7cPn^)}^QAOMC|BHad*VQy4%owuvAQ`jIfoJ&s8< zee+MC!k0iSH_69{MzZNbO6E+eAS~)8_QWIXi9gkOesi+#p}Px&QOawv)1k4ypzMPe z@(_0t7eGdz1f|iN#?P`uTJ21JJw>oJ+mkxDSib5A4*|{k0ql+5`81qz`^j)LkycJB zESbBWi5!re6_Rs%_*AsP?8$D=PctvMZ_hP7?`VZ<2f0?RH8~jrGg|#b{HByC-WV@S zLqds?v4Jw}d1*wgHb6|NepI|NBo4?(NHNG8Z;b&fB$N(%f19x3A+g~gVW5b9=wS4B zDMltvhDnBECh+9(<YP=NdNfa2${&+v|4eFdjX=jUpTC&>T(WwkoV?mA=E!x-7i*o> zYQLUPt2NUJRx-n8E;T$VCCDaS=~q_Q$vs{!p)8Q<k>^?96{ATflgag?^`H~lPb`H( z!@W!?WhBdS$A|`b|Gh6$DlJiX%vmaxGV9DCS^xMH%-7_f3M+$lwTTR8mjd3ysQ?I^ zmGckv*<IfG*ed!VsyTgGl3!JGFsUE9CwOlXhw*4ESG_K241mPKemPl&>PB=`_;)4l z<>euJ=&ErH43cDztXCL&e`4T+I84_}yIamJCsQ4#+N;IPe0isp3`e%kdNId#+KEW2 zzFRkIJLcbsnZ<J2&K4`Z3iLFIcB!=+tS&Ec!a1|Pd$w2S^hVdnr@3OnqPYv_!Xw|z zf{#q{8|xmCfX9S&;$b!)Pl$i&KvjS*Rt|<z-4N%k5i6XnuAUW=(Y15R0jxzQus>Yi zIY8{AbQ)gHt#iXC?3l;v1K(2Lw);!DY>wg}OZlwy1OLq}ZupxbhDRvjW&2^2@CX@P z#KHD4WUwBC8*E-o;*&Sl%LtbTh;@<>6M8tKATA^3tftUGc6gf|VGZHrIOy&a%WDT! z?l(x~Y&A*duO{y+to`Or5}moa<DA0WXKh?|51OaWPIawZ<a*rNh2I(Z_k2nRmYD$y zi?b3()FR8X4E=%GX<03|Og=ZxJLOwiJKJcVTB>Gobu1RKTWSsuRNvW)_ZtZ>ncj@+ zuxSC_h4sY2^2XWzx@}8_iwz__S2aoioZtIutJa>EV81se$k2Km{35Sd8>2ieHb15b z``(;S#^?q0BCud}aYTAOgYd;9L+r_IqW>my*@fKIeItAGrGgpgO{qX>WdWt^c5oDz zi;`f6^oO-$^)PvKlvkBgaSLATiJ)6rqqalmD!aU#TkErFurqpn@~~D<JRib`S5m$B zj(XwOKuckiA3-apaVgxnj@SK`Q)+cuYVQuHvh{)8LDWZE9H<bta7qpB5V_&L3S3US zV*mM!6%KM2Xe4IvEWttcA2N_p6{yt*6k4o~A1m;rz2m0ZbjwYlsQ_=Cw_>sG&@=|! zSj>`S4ok$aWxPIVVnUXiCniYWkU*0{!nNxGKbSwd?FrwwZIZC=w5?tAqn7CpAJVq! z-?WS)T3XgE={B>eWq)z7wVcX+&@#Y$ftb*8vgt21HCE0gu1>pNjv(izoi{%gznN!U zVOIIYWB`&sYT`~~fZ7K9+I4P^?41)_%WQ$1*SOZ7=8eWPJ1*MrZH>+M$l4`VEu2t- z<bQIr<N6;pSL>zCmHu+8zOfv%!m$rtpRsxgL7G3vU9Mhkb*fG>W|_?mn8B>CyhG_+ zU60F?og)t2PdRHX%SEdo-%INhbMu0`i$SR?5ZZabP;7eQkZ0=?Zeg>3mlzi_Tny=9 zI+a+p^Nm8X7>zh~v7Sq=3LUKQ;r9E&h8u?xHp-XZ9N<cfx6<WqBOZ&z>l@{CD}HAU zNS|UF2PHP!Bq&RtF8PN)(5ue22v|?oYx9%xKL5Fnmg^X~oP=NJShZU&AP%?PYO_kS z*~4yl<*;j=Wv%YvO1OJ?RL{mJRFX({(uoKG=tMg3YKOSp`th!Np~Abz<in?ThUHqZ za(cwARy(Z}kGKtsG0O_Z35eUVq)qfipcyiENBgbEsx<XPdNPT!#OM)@n+iM%z*f_Z zgjXtS0pEThmpy5JS*oe5@YGZqrE*TAM2d~dVK)YSiF=;8;i%F0h5+~m$)1`OToKE0 zb`d4)Lw43lOdH|584ifX82$8`>uU=$g+H3i<&4(^YtR8fJmC52<&y8-$Y%jQ^Y*ZZ z+L`*=b|jzdW6hA943__XGk4nYbB(?8d9VfVJpB-Re0Y3+&O1j*a{S=<L-GRT4848P z!-d=%H}IGbw)Tz24K~0J+T(Jt_kRI@{TFz@<=WiBAX9UcC?t3a=}`Z`{JkNj0N8)7 zkKfn!u%e!CN8<v7V?=SA@Ci)zk9hEjW7yO>S4jL0@IZW(@BJngEYuTzi5~JOdlZ%& z@VndRex8rx!15^Om^8wJP<{1b2pd1+B|H=iqQrl>ky(vdq0^GZwjs<XriA=P{$%cd zgZ_>8PB9(ExAA+D?XL5?rO%_!nV=p#OgBQS`qjJ9Bd>(d2|X3QClqC|fZ&(Jdq(Ba zYli`s_c<}{=^qR9SB#(3mjAJ2>W|x($8n#={gub@=Xc+e?~T7J{T6r|2`YM6<rSUr z9`wB~MW#RVdas9{p3{F$#5)D<y=-=#$RFSN3ykx)FJ3~LH{N<ajQTk~H+huaXc*qj z_)2^7u3TpMWIXotR*x#vhF*zbhoQ-z?!PzA-(Vh$$LhI^CG%DKAblJ6S;qBlUnReP z+=F*|#(Ek5w<9_p&p)CsJ-Pk^0Uq-!pY)FzD?{kXgXlz_JoVp%vqb!r5|M$V?pA^V zm=W_jH8)M}!-AyCg-QKTL})-QmipRMl%g-3adpGla;RHX4-Iw<b89%*3Phz*&*k6u z_sGl1R|jjj5kjH56?Y>BHR;}R5k=3t#rn=+T_QEU9)*lEMr`isMKI9n>oC49>I}f{ zp52n{7(4<W!5}j|MYIgZ-;=o|Hq6-GPI^1<uLMPCuQM4-FGz|IdOL~)qjw8Af;O{1 z1W1gGakuwYMab$rH>wgW2^@T2fZrJABsmGML4+&`73DHY%)zA&684_R%*SKh{W<eU z{!s&J9CQ;eiAEvIHD#8)6coPrxA3(ytG%0;J<M=j+sS*g<+enu^j^tK>f`AWSXXJ1 zR5PL8Lx3}`$3)<yGyDY^Gq0wyRDcq`2Vwlk`2Hr>l-!Y7G?aPRE~QsAK6SsG3AMS& zhI=kLrQAdYj<E|jrfZ-a4U?MZ7@MdZkyY^ymP)rJPN4ObOgz};*i~ST()Y4*J-f&h zFF)DAf!Cqo8wE*HEWx7Cg%1U?L^b>MIuw7c7EoSp`sW<t*vl;T?)ALzVtrHEru&M0 zIZI53VDDoV(o1Y8%mNrB$6y3~$#sSykeGg{xDqkK{r)a|FO7D)k)WXZU5*kBo}oZS z0r68Pw@=sm@_7N*sy9Dh;WvE6+Wj#&N=A4TVEu{@X!gFZXr3D4AM2m2QYJzF0|$}J z+>(@`6t6Mp=2jFkiQaCsB_%TI3EM8(HioeW^GRx^6}e+<#VO0AEf<kN#WJ>QU%p$k zWgLBsBei#gBa!S0*i3K{zxZ53_h+YWE<Sl~+LX~Gvs7m?pSFexaS)VB%)c>(kH``C z{~#9e{}6r25_Q)&?+J8aaisE}B;dzSw5JzmuZlmXO78Q?8NV*<N1%32lz74638|*s zp3MAIJ)eWoc+o$GM@~A`LOI`X&tP>vYvjv?>dEqwiY&=(84o8UdMd+bmkqmpc^tIT zOW~#H+he=9wNZAmdwW^AIpwR;V9V)e)?1Eee7IlqO)H!#@|Ox*W<QwE@|Rav%eHZl zfMj6+J#nip)d4eZH<ZtYWBFvXOkl4lw{p~p9|m`dd3EGjKI6F|`q3w&SQPRSpCHZ# z@q1}O;90BaNc!#B@q40VDTnLi%>*y!kd2skgqKrZ`^mS&jUaU&k?%u2D})$zAg-gj zt6zJ47-M*TLtD-t##E*~&}n#rnd?DyjALlu4(s(pF9l7Wk*?;|k%kHuJ|`~!Yk5=h z*zSIDSd!1Smi;~N(MLpTY-4(HohT+#e3YXg)vsAEc;=+yaBNgt_%4R=E=|qd=Qpq` z;}NAOS1(jV?%fzl1D<ZVAyFQDF2jPY8F-DSV_4EZUNd?;%5Kgd`})m&Z)BCq9+bxh z>7r3e@3q&GE9G4~$Re?)o`D}RUcTTwq(<^IdyXNCQe1d@E9dLI_45^vzC#1j0$r|< zzIFyzYv{uu>_sGVB0{IzOZ$z+KIlhLvhTMoyRtWPzOHT7FYQaP=VN^sVF3tuezTs) zOw-wIKJ)z-jKu_F5g=bJE<W(@sVV;i#Y4p7DntsCRAiPc4IxqhV&f&q6KusT@&`*t z(e%WgTOz9~5go4DX)~ny5RFqSWhtA!wmpaZQ8mBpo|s936rt=2A;dv49dZZ!C>9@> zsWkbk(G_D8Cp{VS1J;6ZAhH-fz!Ba=_Tg`hvIB)@d2El2_33dA%D?OTySLFE;c-II zB0ERtgzM)5jFH>;z47b2kAKn6Bw6}Pp$;+RZuH!H`oPO~x1X3_$lL^_ar1Zg`G=p$ zYcZI{f7%!Deq!Q8W4@8}_|MdHvS{Zg=O^c$gMOZb`Eh2^Ff)Tp)4!*#7~Cc|QsHx_ zdkNB_d(BSGcs<BA{rk(K4|i&vW-syHm)JYaDGVC;I7ac&yVpQ8keApovOfZ#70qH= zEXzC3pUcoQZJD@eMr_)meWM0TW)OPFebraYESDrP)P2#M?z|xL++!@1jC#GMb!j-> z&Ny48P~56pgKZ<YHN4s~Ut^z1sYr2sUQ>Pf=7k<#t)R;@bTMe_(rDV2RSPBDu>Lvo zjlFK9XNiAq7ES9`3qkLYN}J=zkmk=b7;KoKp{pDTYmBj;h-}y{Q6k@QKw&r_m_A&U zh`Lt@Sx62zLu9-Vj7zF&4;aib#n)GxTk<7s>w9*%FnZ#}vw{k2Ftp0rGbSKB(xXWf zghc1ejku?!c4B{Df)^*Pa-l`|`RB1t$vx$xvvQHwtwNcP<XfzFml(o-u5olzpg;dm zOP~)J0R2cKws?um0c!jyepw=(i=h8B$A=`uA+$&wA*B@@7CSs+@DvVE$%E$=h!8<( z0V<x*MF_q}8QBGP{P_i$oWKYDKN)%Q);#I`)`|!ph!ta(HbcS)5;B8*GiDv<^RbAf z$U*+P&o5%#+F^D(mD<i8)jF|OtW!JkULMxEG5_l^`er2m2fna%7EL?BP)H@LXlTuG z)<RKBC8+)Dq@!n6_~vu><o0v-<mU4U-&w3#YCw^J&$Jl>@zN~SSGt{*hP;y4^QhL< z?V9o7`Nvk^CR+ID7C7#^rM|x<KH?!!1nz|uqG$f|YblYfeNu+~j_NyLpD~9=bJVM& zH9odJ@{NAakvS@q8V??_b?;cR7u`LUZ`?0=oWOT}zgK~$cYZCnth>J*XKs(r^1(Bu zx_sdH!^7S^SqY>lpa0}eL!2}HRIdU(zxd6Cw@OwekqI^+5iee;d5WrHzkcj}%zY$0 zZ1K-tN{l#u?4H0RB~Mg>oYDJllv=%3i`G)HPArveJ^0`Pjg)Y>UaMaI!7RGA^1^`< zIJN+aXqFAxF$FVXK?^mdBzS;)7?#=x2W>KYkZQt0g+||#cZTFIVm12ERAkmN8k!<R zUQ+)ICm{bvm`K_a{NYG#!H14-Pu|dQSEAPN(@Vzu*Bwp3kM~;_sN?+}GXB!0r*n$u z>N7Ck)+1KG{&$l)1_<vfZ#|-thNPW|hZ;~GFDMb%Yu3v38hlGuJe$bn>zO2w;9w|R z@*a{IVb9OTtw<zWtCwq(l%rr@#IA7zx*T|2$X!s3?jRS=+l?b<Et9Hbn)O5`lc+Z{ zl~iWUIcnJXa1I8D;6<)L!L~3(z0GhWsQu?M=cDAgA26##`}65JKh|oV6X2KV98n3J z4)cHuCrCgTh#(gf42tG3w6)waeXZrKgU+zlIWP_sBHU9fTg&~Hjk9Cf-#RK}GKC|? z4q4!PI@#Cpap5CR37gV$n()Ff0LJyWJsw5!f4G3W7rst!u>7A1XRU-a!T7+6yf`Dw z@@A0qxJ<d$ezQ_ZSd=~2@nRLu6;0&}hRFM@yiLSMH5H+6ck36`)z`PB4@=n^^dVwa z@I!YeyH%ltPCA*l)5dP7j%g4g{OoQw-5L{d)zdRP|AVY@Mr>>nd!b*!M@`@Ym01jD z!D#op&6W|n9I3_+Z|0F8d1X>OnVFk6unNh*|7}fOFd62(Co_Id|H+KcKj-&5R<x39 z)Vt6p=P2aZmY`GJ46gP%NA37Zt6g@_TTUbJI*~tbH;UPUyFNH;=JL@@I=Ipg?YB~i zXg=3e!B{;TPa7c>gtCNdLLBA&KbqJG{DIaiSxJPONST92*kABFEpkn9{`cKV-zawj zf8hGA+G|-{AI^2P<&Spn+F>z#F~7_C+_l4qZA}vX9)ke6#*1_CE9wCGC^)_N0+u~& zCCjsv;9?YJ-xps&zNJ>fWALE_b_<2Iw%T+1CsssHNb`imQb->9H+EBBZ+B}SV&Z!1 zYpaC<hq}Q(hS#VU&^j??^5!EJ64AltIv2}p%>%qLPTCiy>*RR;1j)Gjea?1jX7c&e z^f-8T6Gl|Ca|8#*h#mDq-{Y`vaw<Ft6hMl$z$|$4Ov1YH*%vd90`}Xid+5N!>~36L zNe&f!llVKgw*iiNuguUumEDsQ3=6WmhoG^M-X+RB6xsBVV(abN4x5$lN>%hxT%S0k zY6V2}U{La&<4@ikoVnXE_o`m(#L^stW2IxAV%_f?u9<pTX#33b|BPxA633an&D<K9 zX%f3ctO2$e+t}E7sIEwEaZKtgO*7Z3oz%EGp5PF_HgQ|MK1A^w_yFG|5~)H7$Dqef zE^~6+Hnz`$Eu(G{ApUA={z8AHaO9qwz7HF6SI)Q6D&nq*e(NLO(-a=Bh{uJ-Wt4xO zw?cf<e_iR~$MerQX-rekM*{^Cf2Mc@QCqQC25I$nc;*;y;jea+1~6V3WAl~wMe$b% zr<`(H$NYCk1fiq#??d-oU<UmV#a3hh`lV1%KhqM=%SRR>_J#S+`SjaN8de1&K{gMN zHGW^ES2Ig?I_2ay&Q3QIsZ_BLvf_!H>syXnW`P-z*gQSk$UCXDT{3IJ3%prgtEOTQ z8y&g(2c~I7;?YDhn|DeZ>xD!-VwvWF${azt6iWdy*{m{7T2_sCT*#)yi;adx7TPP} z6!AOy^D2JAmS%aGk4x`g(!X)|dK`NXz?$P;)N#@+pR^hW`TRknb+Qa@qwZdG8&{33 z)ozzJDil=W3*GMOR^y81z4kR9i}(nn<c#d0kHsH>v>e6tXQfdo?Ib=5rX*VW{2a9j zDw&IvlSoxJdZeg?te6c)d_57#<m}!?HI;Bu7nw@nb-j_h%vLLnWv5#WS?N1NlD0zC zuCv^zRI``4hRhrHHMj-whmZJ~1z<YzT%hb|gvJYTlE^>steA4L4m@0(m~`kdZXZsU z>(T`7uG_srj52YHc<T<IjKm(N1&{bp3&Qs0x!C}`E`YDX<d$}Z+W%|Xs?S7BxySE) zh1X(CnxjAorWRV4hbpH!2gr08-x2;%GFdQl;#yCkM6O_R`~+k^fxX~`F+b63zFnb= z$98{XwF!ySI!LwpTk5T}Fs#Hnt-`dlZhp#D?ri3=%gt(iz2%<6q9$KJ`&!vLR`K)k zIeL0j1P?}ncJJ*O&u;gN=K$WYu7m<=5_g39%B~=(fEti4dxDXRgb_7lq=(-O*N%<m zS7iTPvF}*5<7zlb<~nBSv9W~R`~DiN><L)epig+(|5HYPEW)49K;sCHnKtVX;eyh@ zF62R*h1`#<LQpbeqmYOe-3OQFfjP&A;5Z!Mr4SJ4pZ_+K6~@T#LGGU7$KNv+c`m;+ z|Lan-xz%iv(h#<mtjM~Zj##0~h#5&G*F#~m8453(=5jdHG{d2FQgF#w4O#MGgs+EN z=5;b%C^U*icC=uy09K!R9#)5f4Hb)*p<*$l-=&yChYvFP-JoOsC(He1{&%WY_$VCA z#3S91741gi88a9>3R~4ox@tuZLqRi}2yaBJ;6^x+4Mq+lRyA#GN_&k$B^!bo06sOY zMlBAX+Da&tjq^2zn|G_01qGXakxj_nI*NsfEhjz)@of1dUMY@c3Y^`~?ZUe<P6o%j zpveS<l22BEj(uELy?`|ij=tGIZ552EFyM(!CcHC*Pv!4+E^Z);C9ftTtg91RT~V_O znx_~fthcvKY=kddnC9Hoi;1-_E8z=hv$s@}oNg~jU_3o>HxCclj9VwFe0b<?u6r(J zy{4a{V+k+%Q}L$I2FPL^!y%dyH*{MlM~^Yi9=~{UqXSQD1S7*`cGP40<W93EEW*}G zWUw=CxCAbv@7y$9-sF`Ek6LFS-(NwHv>v#StzAvRQK9#kAE-$JX0rA0@5N%$ldVq{ z7e1ey<1L6dAB&`AUwnqNW$XETj=DzB34Bk@&2YC!y*bI8<~Bd`)R@7r0X4KZx0r&% zX7O`s?J=u$@f?xVg0#Z@@nUk}2|s+Yz;B++Aj6sJGt{pUZFg?s38Z%PEj%aRfST%i z>a#f%;pAtJ$*z_1HuK@fPbL>qlc0TO=*;B8+#+b$Pu2YABKGHKNXjm8ER9TG{Gs5M zXq$H@C+NY#+)s@K^D<02rBkdFj?!krOh)jk#Dl@O6-tp{Y6>4<sSx8;5bi<XMiH1C z!eP=d;jIk^qmfX8sh^Anlcc1^<7B(%o!Dv;=ao|mnWmY5R3~I%YQ?CZ7s~XLux!M` zHZ*v)8O_DaY?kUx(Wq(K!H8KZ6r-e`3fW*R5oLYh_o3vwWpV_06$%GgnfhRuZsdaU z-HcUvvlOZ)l2qs>u-jOs)O5PrF4DGXwsstwT-l%%b;2e)c_?hWjoFoq*;uOE&?o9c za9A-l`MMS7fR+itvKg&lXeNs>8)S4SoPuC6&96C9A|hv+u@WX{k8Ti;TEVcbteyRX zSiuPeS4*K-6j*U0OfC9QIxokL$k91+$O_}l3Wn&988MTka+Pt*Wz6MN$h2Z1%M4qf zor9@RIK}{{I46!DPg#kq9f>BQ943?r6=F6>>s)Cy7|&W{;m0C&GLl;_nxWc8Ho-|U zKxjOKY{Q`_(M!=Ez5V6eM2BT}G1x67VI@vNQk?kY<H_&@o;=Nd@LkbWkjRfeWwJd& zd_N|vs*RH=GTgoV%|_8!Klk!CGmRb`ZE+JemSvlgh|8g!!H&7RTCEl8wRY7Ebpo$R z^E@Bci;Z!nr@OJ<u%n4!DjLaT^2w8Y{;=8GRl%LMSy``E3PvPWSsB?<TGuha(7@0} zNc%aIZzFmHwtAcnB#+E%a3EPXexHJ-0euYBVkF-TXMdgAr8|xG%2A@3B8lmhItH6? zTg&eHd}Z6sZkIdF_{Je)HO_C=97iB90li9?1+e-f4|W2&4XYI%9`wE;+Jq)475_nZ zvJlAA)9?6VcRa)|QNeKW%nMlk?%wVBhS3_u>(e(`S*0yJ&vk1DpS2OBw3L?6n|>#V zV|ch>0r{}RuiXLeVIaAL+vjU=MMzbN?*oeX6_2`Vj1E@`6B!j`zVUOYo&@3|caq@Y zJ?FZ;|3BY<cjA8u{25V#?+Sm+^a2uSVp0pF0MC)8l4Yu;(}J)ZPa;QkD2YJut$F;n zlgrgeuTB6q5uQlF>jfK3HrrlJ#lppMsWB{WbaGZES<S9x$b+_XXYPudbyp~QvmAI$ z%5|vLYdZBr7;%zVskZ9b)G7oX$#jBz7~9GoSF`z~mGAc7c)w9prazTEP}a+s7Z<+< zS-0Loc@~foT$ZF;n7$p*ncy{dM5h(Q_+oX?6Hh3Lm(C3Adp5HiPv*uL!=P(3$`O5% zmw+aOdO7FQM>fKr8qaQxE2DR+YPoz;tfovR=XS`>G<>z)cA?PTt%0ub#nS0qG9`^F z-%%VREDouEztG-0*lQOICzVYlHPQ5K`w=3;VDzVcQyKo**x~{-1*1+(Od9iZv%+RJ zZ9oC_==qI}2mC<6@^SU%GG5Q<&eY?VZ?4?Si_^oClf%=CJ^%T*C++|QcF7&ITPl>w z(4$OBg<9?Y%CaQyFRwuPKI+wNpM;-<c*bui9Zb|CGC?_}ar>sAHKbX<8`l^9%wYfS zi9?BBp_vNRgoRmMy&0eM?KRZ3N4zs;d-W~KrYz$fFlQzL=Cj#H7CgQ!!*_Ubs@8!m z)lV-D#oK&L_Of|&#3{YOa46wT7@b_LtkPRsDqXJiH`+%>?G32&F6BD2CU53V3??6D zzHax047a|6LWvoEbKU94h(Av293PB&Z^bFLHdl%iDDv&>u5=1b8HQ$|*WB4zT`jg! zkw~glTwOghRzDnnWx_$;gZ+2Z<zDklKnBi5z1LqY>=j}$?pANF#@#vk2^uGM)`vZ( z`l0g8$L~xL8MeE9R4El1NS6G7j8;bT@bt~W$;IC7z<t=Ooel9~Z|vyl;SQQi54~1C zov4xz_SZlS{9CeHiL?+E1{F)>1|I$yQGXVmiy9;4Be88o*@2OTFNyNQ3s3iv>Z~&h z*xU<5?YqgudaJP>F2r+*Qg+kH6{E?$)m=(Oo-CCev>7XW-tDc|VzG$hltZD7Mlzj= z+h#DIDa1pmoLMNOBlW<a1|#Ld$*u!~Ln6Lf%CDt@m6Tboha>B)txBboOf-{4GDw!G z(-#cqoqVlqq4A`$WXZ>AJ#Cp$%XZS<xuyfLKp&rro-GR9QN$l0CaE-yzgPC1mkV*> zpn3k;r$+dxK{68?$`6biXoQ(*I%Ub!B@?DuzGzXq7n^!drMH{IW~IN9&#&|=t>YFC z<>h`KmiIt^**R%SrI8Z9XjtSRZbgn&aj&DIF}}tH$>Ve=^U(8H;kgXV?Z1Ox<DZbH z=X)uUKOFmD$S9=tauR;hqwMld;kcku&C85?oL$Zgk`w-;3~v_P!)Au!omb1*K~i7e zF;{}{?(0|uCJja+iU-Dx)VKq`#S6C0TjqoTkTG^!XT2Uz_L5@;1?5|>LkXZtU@*W; zIZiCaI+V3PZUf08!4Izmh@CKA$T1kTbN}$<{*insZQLAQnxhm6F=(RA^-*5i`~Qk@ z_y@2P{SBQR$*e=0LXdhfV9*f&Uq=anIL^dYgMxGX$fyZZE^HW|Pdw9pnpQRvUcc%X z=lNQD07j%!%Bn%Jo+_p`NRjNe57Ca+L&ZvKcu;l9fq&p0*|Gfa&FcB8lk?|z*cti? z^>R*i;^}nU-B6YBV{JX3?^InZ&<cEO%Mx=K<-SU8jfWPzwdikrD4yGf1YO)#?04Fk z$(V6DH1mL<7$sJPZ_>z#1?j0$rN;ine#7NL7{0cjDyY5QKl8#Le&5*RBi^6BrYTz@ zOLx6aQU+BeB_6MBPvqx_>t6V;Grp{>ep&FNe3;P)<BMbgC>DV3)dKiG$tc4-gSQKD zAbTntUUQnm%aHbT=v@rmY97k7rFwUG*<Eg~6*93%FO`h}sEZ|g!FC90jxYFJ{IS}4 z9`|>%D_!jloApu}NTeOhWD^#|-|=|4GCbCPDzVuonHL9WW#S881QAz~{%c&!<If?L zp;O^$tVU1mk>MPNm%jQD?@R*A9kVFSO124Jyk}G6pQsjaw54J(y>Yfzp{8rbNoLOc z!L)uebN9`SB9y`D_})P|zgJB;VRazSDN-shO~^t0dvcsix@ZK?Hn!b2YxR7ov|L}U zY@7|R<fEkrKDjPIF3bTBN)R`v<XIKa!Kf7UXfIShr1sgLu;RrxILBBJXhrcEdFq6V z2G#xMy>UsCXA_}rm-5a>@kAowrZ&#p)*If)7<N3-Ew7cj{y!PEaMi_K)Iqg=rJT0+ zdU&Ev-MHMO{YkEeXY*Kkt_uduLn(g90HRX9dBp4lA&C*!6)VB>Z_`=t$yeXG!As(T z8}nE}<1pg3@>kvCH*W8Zdt8U62o?w5e*L;b3QQ%J^RIf3!$LBj=e4mRuk(5L%6tDq zC!NQWHR!)p&GhDG+FgCS22EC7AJ``c9RGI@<!~HH-#5MYWh_47##j(*6pzk*WZo^3 z#S7ZqqJRlgYw(U1$_UK6xV&56QtsWchvm95OV{M#`v3#;pBhYT?IrS{9SULJT~9qP z<r=jaGfFbTy_=-5O9r6G?kKsDlA*$y0wv_9?FmU|d^6E^tJht%Bj+UgqxU_JD^8?5 z?lF=kCxONJ!5B^SzjOjRA5bh4j`*e1SG!afy3{}*$uHqJA8n8PO0PYm`WI>sc+qWp zMip1@H*4?xxIO>J+Y_Y72j|C#-!|v3!ft-AIlXU>$5Td=<k1N^@7wVcA7cp5E-O*8 z9|XZf8ju{693a4{4dgQ~Onipkc!B$poM%Jk6=hQy_?g9t{xEKwzU$PD=r9zx=+!5l z4r9Z(*{%=IhM|64+8g~YKx^NYU6~A5Gzk53?&JtfwbQ?IjKPvR9Oxr0tG&Tm|K@1M zjyvAx$LGf0=FJtR%C(%MOcnYoa{1}R4!*`Iq|kTSSH7=v9v+j6PF~;SW0JMeA1M_3 zB=8bCiiO3O=H%n~3IB@)|FcJgX9J%o|K^U0uZ3go_W8ML>_)6(ck5u-K0qz+tna#m z{pMz*7p3~bW^+lsk*G%CU-lxW?$*w^yB+OEfY)~49H`=P_+4Z(+KVii=_UF0Wpm#h z?7H3ezJq3GNwrkV!v#bqx~AX|Cdm)h8KGnrXfE-<2QGvF?-NzQ@Gx*3NlFOG9=qB- z@a2`!GY`Dvl@K45@Y2<-b?sUR;<1qH?_tS=KS%Q5K1vuPEDWSH-mfKgB<dr1+Ehxk z;D)&@vUk3Ehydp18#+4~W7%7Cw{3q-%fGVKZ_*^Erhf7MmGLtjL-KZ^Ur2A?F+K1F z|Eu?ZFOcCg^xEehz189Z%vQ!DII3R+e!S*3u`Cao&RRv8?Nz7Mt*K!954+0_Vto~U z`ua+!%Qu$SDzb2yhc~{qv7~)K#@=B9`WBpJ&nKrT`uJjMw^(l!0!g_a61l$R7vlM9 zZ@s53Ko}4AiCxx<?~V$MdNGhJH0}m{wC@3E{E4Fyj>Ch%6-eYX-k-n!`x7eg54rMB zIc=`#*xG=QNCO8sW#RN%z$eJ2)>GYPZHX(ZuiH|sxv`pOBCn|R?#kL);2)y5F$R~b zqj|8o^0w4mb(a~5y_MW*L#5caSfnCfUr}r0mG9s2{e6bVueCFw4Q6Y7hJAxVL#?oR zoGPN)yny85C+f$z0*G><D51*n?&7@MOCV|Hg)SrZWD<pn5{?vfLsRn5>;dz9sg$ln zsNu4-#KjrfaXXTT*;XdbMw?6swL^N3qBx;QwH~))k+cB3iYsT?NU0ECB1XLA*fka1 zjwO@1Wb%*HdVMvMj4bt<Y|xQ}6^|uw$pw3jod&MkP%R$i_Zd5A+PUOPBNeMwQnBKa z8C<Kn5wo7m*}U)h1iZQa>&&p{*m)jG&4VB_7>YF<fHneNC|Dz&O?kn-ms2+g0{n!M z<c6NjR(X9}`Eh({495#>2vdS+-O$yF@V=@3hfnCeZ+w;H`Q022=BhJ_^+bIrPHNKh zO$)*B<P#slj|j8S4}jFgX|X6O_hV{_7;kOnekZ+|brWvI-cyli&vtu*?F>|NzUFFs z)onq9(6deguQyX}&3$7dCQjU|UevwVw=V&=ovpT8=Vf<)HI?zN^g1<r{lr^4ujtP! zxahnrf@k<4Xm*}iBFSDq#o(N0z(C`GY1W$L<UEOd^#HcS0N_i;J_zln;Nd#&8(W!S zY{ht!uZBB2;NK_e@9K3jWYlr09Ln!Nxe7Imv*8lNJtobjpGd6lV&sZke2V_@n%zy% z<UaO8E(*@_Idv0vgG_?ON*VUqDNW2L*U(=c7P&~qWm26Bp$jdQt)yG+A0I1UxmZ=! z(D{*+4bD{y6J<0a%#m_Y0Azc6R6_N|{IOhB(h9vkcys0vlKC?|V@3{p;AfzuxgH;G z1-eCvW|K*4IO-xoG`AKGuUI<ryL3yVA;iH<CnsDbGEB5Lyd$CEC6R?9yZ-k;#&oe^ z9<fXQNat+;;KjQ7fwIIb2fg^iM+y!}?RZ&)QjY>vB=8U{zyO;R$_VBQY#YL){E4A5 zo9kwGV`IIuk<Ml_OQxzM>=Kb5!X4?ew%K3X=$QFzX0r-+4@MP{p!9Hw$rbkhBzU>C ze{KdZ)YAFNntR$dGQ)I-m`1c{o9X4Nz8T!_F7IVi>7a2~%%uxvJRC~oYT)}K?)e=# z{4M6vV;BZrj^@(DvzTv+>W@ejXdyWTbPo{mq`=MjW{D>(%<{R#qaxK~e)fq^W>@Rr zilQOGmOs&I?AycORqQYmAYtB$4^M+q$n7fT;^RE)FTYW7LY`M!&FV1P+K#^WMODH4 z6PbJz5W7<4tAp#VmDvj^4pDbc@@XR$1ULg>UvtY1(#YwX=9*hkzUX!f7C5;sGAAn& z&A<woTM=0NeUR$@!1$CxgRIF#>V;_=GdwwcGePI(nIkewXNmQ_oW)%x{E>l1+AMD! zZ8yyF&M8E}O}CKMX*}6=FY!oS7UC3F1_j`j3}2xPfTt9zo|W`Z<cDb~m5|M936e4E zUW9@&4AgX04nJ=7V(<bnvq$Slc-}^=_n%M+&Fddv@fdD&O1abhh187|EDHQYbLdNH z+(t6aJh)iR#ZqfYqm+CHI76&eMX<!^8UNJpOKN;aDwY#R`x3I4Z>_0ak7Q*aNj0~z zoNr-+f}4T?Rp4~2q3;t#lKiZn`Aa3i#g(K$9`1_3>)y2k$Zbtlsw`p|e^bi@ALsHd zbfwS4meo>8?^!RW{BqoR0X0l2gb|aU-7Ne>u})>`T*bDR)(%S2P%P<0+%85D0lZo) zo`mfWrY)HpZ|kcEYev=|?hQJJ5%OPDb$8&4#cDx2Zxhx+Y<qjD7f1Nc4bzU^MsM6r zdJE-Bqs6l#S&0ZHafr-gun8Q%0|a=_1Sn7}my7RuaxazI-997WC6rNhpbbt7adMLE z?sStU-h&<sxJrXyLOw-CJds=+q~FwYe?Vk1;GCCgk{mv6@`$?Nb1QGuiRyJ#e!~U+ zWpwtl`xhXLhG*U4M&OISd%86|*{5oeKb*~|Lf_3e-6Dp6rR#RG`&rKWR;LORS^EK= zp#rUHHbn{5dyI<WRf!AH;Y&o2gf*m??#s_dFBYdhoBW(#JpLTP1hu*Th6pKqD)@*^ zN7#h6+NE9r>cuToTm4)`A@9XYichGm8aGcH?S_1vw}(>isgR3$_kq{4CvUlL3cXT$ zOO)fHit6X@O1#=^kny#oZl6+szQixQ_g(Q!MRNsxKi-FA{Yd<Rn2i$5q%pbp((=td zn_P(BW0Rc0H>@#WT<jmfK!%*T+%?_0drn0^m38-}zhi|#y5e-3xh1cxLg2N#dA0BE zrK2$f@4C5r>H6+`RV(<tT(c|v(?9WSDjk;<f5I$0lt1zPo~*C2Z^zrMZ?bTK-+L<B z^r)LL&xIX$LD=uf<g*35_0R7-*CmBK*;4JYu%To-^&VEMM7F#%K*C&ZaRWZPc5D;& zl(t&Z4>A4LeUS0U<={CU+@6Hbyoj9y(~g~ny>{X>5^JY7&zN%}bAxbRoMM6frsk&s zs|y#22EP!%S$v^azXgq%l9)7#DpB?D%t%vVXRET5IwD_72+?-DUzgmLGt{6_fI64y z0MTYQM$D*fzTN9&sbFI#Doa9AqmFf)+U;8F?|q$(Rd4A^zkKKh8mp;eiExhHjfmqT zeexLp=!ZB|6C=RwLpA7QB;zJ5#+3W1AJ<z7g+%*uzo3*S<~~I0e8Epfaxy;j0feya zRKYQNw^-Dh_F4N6wJxbo^L`4zec0mgYQ2%|pA%nxpsmxr_2h+n!0G9+_vG9td*mxK z3(*>Y5D5t;vTO`>y59AlZ4F`~%5Jeu8l|6f-wx|4#IdzK67cYZzb^eJH$w6#wOS>c z02&!tH3Y)(5(QpSNdWJ(#QW7KFOp+C4Tvx8CeLP?UyHCKzj;w=zqWug*4LXIplF@u z;Dql=;C7hlG&@cH7bLi-_mnR<&KINO2!5X5GIshnYGe=?t=_QMTwgY0o#pj+tsRwB zHI>~lzt9m%j@IG7do{xG;Te<jD^KnRR`DKK95ZI(VVR2)Wm04<kYY(DFG(u?Gyj_t zXt>_0HrjZh?e4VQf+_`8w>Ga6=E>$(|7duY&l%C9(e?0->3I+JQGF0o!^|qjoQ(x0 zU;KoUA8|Pa@xA#^rIjNBe&?5l<DPZggAT_pLjAm=s`0a6GDI|6y+z%XCf)7fhI?$B zE6eTT5RDxkrmVEJxkc`ij2y5vJty*$d*q`=kvBgQc{oEPM{<fM$qdqkUHtGMFUC1j zRJU7<hy;`*RPe(ml*!W3AOBeu)i>?9hi>kYbR8pN_>RwuPHY<_IBr|Dy>1qAwreM{ z*+hG1J&`>@t6=NO$I^*#qLFb2b=9K$xV^bW=TGD2>Cw^fO%CAYaUzrD{Y18fQC4c@ z_LG@Rvc(wwYh9O%6PIzixPM(-z=+DZe_h51L9VvGE&{b+U;EXUrbT|*+W7@-{OW7d z0fEs}&I1=`G)KJa^Ih^D$i)(q;K6GHu8+DfUweVf?$=$N@afggcClhyK5&WD!N;x- z!<J7o(>{KQ?p-5UkGE?_k7q0}|KRfJEwwg#xLhvazP-DEj&g|<JYSwX^VZLU*GZ21 ztCo<}SRwiK)IHn$1{W$q!=1y2uaoGq-gOFtsCua_ydTa?3)A4_qfg)o!`mV*nCH?f z)-@A}-9)b&iDcf!HJ=d>lt|`8$|;^7!^3rsSh-ZYD&?e;ja_m~y%F(8Rar*J=&tXy zWkIQ9JC|kaL!0;K<Iw2K8af^xyREu1GmS*Jx>fHnZbveH!;-g<vI+Ot&Snw{uS!eS z6jM(7w#TyW=4#y+aJSck@5`QEp4>q;db+Frjb1OaUn9L#E|d%&JtVC<9}1~a8{_f) zYe=dG)&U{Se~sy1-);N_W_*2%B&ClDBX1mJj|l5{kT(wOgP(kzz-Sv_ipX|=S9mPO zVIaCE#;svQg!nM(-*{;DNxOOWrY_dl_jP@)XE!2y5i$O`NO4%@@e7Vp2fiY@C-+TH zQ1?jL=^5vaGl-2O_{Ia`z|4=N^PpOHFY2<fZCzh{Y+yu2|0ezWGw|+sgQv+;p8UjE z1c4$niF5I*dVg!xe<qad^`X7p_rsOfV;2qlS$(TmzfPzP_f0*Ju?Owt!O`ZHo^Rvh z&9HCXJt8$7*r;X}AF*o^VNeSn9=u(z>b-fZxpH2kk-?F1bv%reKWwaR9YJZisp89< zu*eUC?v=lbi{N&@k-8}Q3V%LQ1h~rg7m23@3?p3Hdjf1w^>@en%u{sX*Bt3Lb*w-# z-Z6S-Nb%Rok0daYy7&@r#EW@|lreVumb)vd`wcg^>gL$U>*}OaF#m&HP3_fFIb+xD zTp!ofl^cWtqn|N+jX|%-5~A;8E|G8Jxe>jH)?Q3aVrQbM!A4D+Gyb0ey@c$0cUA2U zF015Q7_UaWVUU7w#F}wAv})e*gfBwsO8uJVBAzn+6KD)*ZO>;WU$RePI#ML0?^do3 z^Bd}bzLDg-yW6{bTUl!L+U6H-KjX4XuAd#dn})Nqvr{it(iGy+w&{om!COnhzjW*G z7fJ(M-MV;(1lBl%Ssc6H<#tb&B4Kaf4BC_D2eIF-uVk|%#q^~{tt`C&vQXeCO4s$m zu0WM6Xx4aicmcsg{P;jYa0*_<w_LI*($d#IaN<duI;Ng7Kk{dYZ5h<|o79@{e4N6n zJ&MndR^ScxUVNMyQ!aR{iC(Xo6Bmi6fP31u-$!~VsiQ+0s1#dEyHo)wo3F&<*(1A0 zdptdI1Gfa74c{G7p`w^g$M{QUJv)D4;xO=YJPT6acG1V1V7@%m*DNeb`0cn>8t^gB z0lTp>rRT&0sH08HKszfvqtoam!}UgGRqcn9@YdA(o#pmHzU~yo&6BUy)+z6|wsDpb zf7sh{eS>NhUfFcx=cI{%l#7-f@LWP4N^<N$yHQCvL9x&_<)`bl;nmqjqpWL)X3kU= z7ohg3G4Vv+{b({2_!o@xjLzVYgf>a%q&O6w-021F5}SeVZSJKQkOEE8`Q8we9vE*r zvHV3WnHu&}$=GFoKb2_;;FLnJ|3Vl{r3>$zPArxn<^!jDHSV5fF0)08vZQ@k|GtSp z(flQIULspm#v!P}0Da#O*X(?t_-@Nz!BJmpnTC0NrAlTgKVhC!hDWKxrVx@ATSzQ@ zoKFLr)DI1b4~^sCvwQKmB<X!$z0ls1z~&(8W;e*}D>U{R>S)luGS_Oh{i(T@8CIh8 zy+&=#;!tv|_g@5L9SUoUPZqN*32{>rH8)DvJ|;01*cY%J2(3?v-*~<^Z>|a-JuwQ& zCqv!{gZRyp`?GdtN+EebW>Z;QFkXGBFy0qaQ3~T#-x|oWo|lY9tVA;RBxnK-o2gpO z8LU7Sk#1i1*~5|in#iK(^c7(w%UCluuqb#=yaW&a1Wd}fyC4y{ef3Jh^AduafTToN zTrmAUJf>n82*-&a<)|X#kQ!3~B6sq2<$Q@%?j43J_>p$RCxczy!!ICF3t`YpizHGb zmoO-P;YAQm1Tt+$&v0W9RUxjyvLE@7Cj!8`#y3eOk^w2%LWW@YlJP#?d)^uD%HWMN zSg&{J=eSZMK`2Ryr-G7A{88U~tYogk`Fl<Tupt`j;raCrkVAqHdd`X$KbPiHyQ64= z_7cFJn(~SfPT{g&oc|tV+3?uhA(u_Ak@d%AgWEQ9d70U_-|p<ZwT0!2Ykik$mJ0#5 zisSC?XD;}jyUQ0ZH;T?-Q8u6d|N7*>g7jCcPeT}V|H}2r0buc0ZJhe>a{d+TlTNMu zOX$<{zr=M1gVRTb=`XhK{xbUn`Q%?hpV$ol6340kaF0AJ)1j7^Qb}6mrPNEgFEJMc zAA7$yvx2gm5s4{zqJXCDY}WQi?Hm=uA)6Tq%&Xn)%j;v1UZnzm*Ch0a<h0+Nrzoou zfJL2M`L<(M+gn%6u}YzISa5<wt;c({C(mW4CVKus-!wDk{k}aU$#1&!aT$K6C->y{ zZM|*D7XNr3UI@JbMcCO(7H1Y8FZv%Zsz+@*m$Ut(#pmp{d+F^Ud)dp&>|W`ieZ+Uk z7Nc?u-$iDBa}z)3hPGe4>*S5YU#BWv21c~s`N&v^(n<m}I_@*c$J97+V9bFBW|IIg z@9%i;eQO8BLIMt(Evr~hvb)0co&IqD8(+ygbnEPa2WuoIlfsZ(a_UKf6}h#82d7=J zhXy&uG|htw_#C}lu(SmbJ^vo8dR$|V(@QGSkPbVuNZ9cO8LvX@wFshcjxolM^wQ60 zFFfZP^O#*krvoVT5T)H<Y$-1^H~)Rcf*PDtb9@Q9MZfQ~pKIpYQOAk4bIt75Y483U z{j*+aXIW)B%e$rF(H0DK;fjB^5`n31+l`^@2{+GM<xB3CBYv!+NO{{$lsd~sm>inG zYbUan<)~*Il}E1`p7hRoXSADLjiQBdsGV{+Qrby`cT4S6v)L`}?#gl75D1rc#09_8 zqTxtoYpZ5?7!vn?m}pM?0DE}`O$=Z4!=}kJdJTi%nOXquDab5*RHDqz&71Z^M#&L; zp{;nqwIn!Am;xjRu$PAMUp{Dr0NoUzwx&72*REAuFQ$zy4wvzXu3ZyDubrQ~sr8J` z=n*%}N=H7E8UnN7z)5pwTbF;^!3qftmqjrYd^{c)l=uH>{E>VL%EsgS8T4bu!F6dL z*?=uXdk*c*;QJB3n3%xY0zlop<5uK-UP*wBNrd6Af&L>Dwpfy$Uay<Rq!jMWI{di1 zz5ehLeq0nz_-@4}7A;&7<Ggsb^k*n3P*NF%fcKadchoQ8u#hSgU_?BPnTApH?{@6# zy`TZ2L?3i+=v&`ekBiUp1ka^7JZsumN3DO?Ll>3{DBT+LTG*SVRyK}{GlzfFwjmeG zWKv$=G}czIV_-C=CvhA~-Y#l9aUu+c-_XDg0ai?^dR-N~YqC*y3!<T8qz`&Fkbhs` zmvwjhx*%-^yY*v#dC)gEhT*<R21k;)OU~xC`<mJ(Pq7>RP2b;R92P!*2@N@n4BuAJ zI;5azApIRn6=_8x7JCT~PhKpNl@-RYkks~>C*02m#-_x_M$-7dOtTU+OTlm*bY7Th zVUc7#94rMx6+Q?BOJ<}Vr@neWY+6yfVFk-($Sr3}xPnXm`d7x;_+2w$=Yrw&kV&R@ zBOGpo$Sk+ktq}AV-UoK%-urP!Qr8?4=gNl{L+nk)VTW-D5<l};V4>Qg47f25V{w>g zDeuH?=d2K21-6!!O0|5xw(Z1XPQk6*W{}85@R$7m4amr5sY*;NRNZ!xHM>+e^5^c7 zo_t9>Q}$6r$a^?Z*ypj5b+Qr-$UkDjK6UKc7?if6-jj=L8k9t=-LWYx?c=)3AYxIw zn_wN$#jo&%NLkW7H`h|Fhtm$ObI{)U+}yeJ>(&;R*yj`RXi82891YJ#=;0SJd~=|w zz1Ai$;>Fu{?l#|$`i*D!Qsv@r-R_2N(Rc;ROK*ZKiKd(6D-04@Yg@NXip==)pl`y^ za#V8zeMF9mXJcX#zXlFu5FdzCsWpXDUuau=fd?h&W$#V7xXw@>6Nb0kOEP$yM=e0B z+vloc{QM*GH1xJt+s@dXL5Kg@EI5MJSv%C-bx%DRciZ2;#prxQ?t9hbH1>pj-{S=Q zO0P+X_D*Vk;o%cdN8r-P)7!YRGvdoqzB^};+~F*2ImKx7BPW9sE&=`LUPk~>XoQ^0 z%BgoQXF=~Y%O!R%eck^CxlR8axJ;>wL-m3HRZJ#l=bz0`X_*K*kN+=q?;qOOn&$bP z_naeJ)vdWLm*uj$ucrF=S}tp{r|;-q%VlL+-K`8tkJ9TT+8r@b20=tt+Yzj?t5nQH z5QT`WA!cI+FZd7BcpJ0$4~1wqPB6g))9XJ>#Uy591{2Jz1I45WW+(=yDF%00I+f4! z9?3uI$L%}wPl#pxK05Dv-t(U4eSUnO@3Sy%QLX6Kk1&)1BVq3%vJ&YZ@!(w$|FyQ% zvX{IHdq?4`&4RU6@Xn!aaA4#Y`UWQw`Nb>#tV^@eUsLI&CGV)eZq~gjH46C;`A^a( z<6n*z?T0-7HZn^j7FkwEC~mVvtq2`B%$AW+Nx4O}O8MSPz5;V1w~3h{EF}<`5V9n0 z{Ei!Cm-z`dy)!sJMvLiexzX(IpS0GGlyj6y7R#G0Cul>{RasiwI^5Z4)pD6$v9PqX zwY1bbwv)NW#>wl$&05jU<Z7+e?#}9Rqm2L6{C9%UbS{&RXM({}^<ee*c#VKo%&o<s zr?4aGT$b9qPB4=y<Q8*@lcnuOV|xj1s(5-aS4u|;x$>eLjAiq=Vk$$8rAz_(3~{cB z-y%4&170PlrB*^`Io#-0;;-`&*BT<mr2$n5q=FP|p>(#s<FnU{-)g(GUA+Z{Rkusd z?&WT;O<s?<qo^`TW-$)?z_|}3_D(BXMc=Vg+^WE<-;Zf#1nsicvh10zb%v!volP0v zFG$xF)D<H;t%n*9xs3h<kb9pu5`t~{+CFWT7qf|cF<C0M3#n+h6ONafCw!Po<O_Vb zOh#^~8{xx0u9tTkJ)$7T8;zYxrn2;6^`KtfYg`4rm(3GCD`)j*43*3sg|E!It!D!p zzMo;?YhYx9!Q4z~QDJUlJ3oy=6exWy_{S5%A2{vTHnm4t3BUB~osYuxKQ%fDao`Af zywLs07xPR+-o<%q>-V;C1`tUdR7(Ste{Z98CJd-&Ewyd!37(@+Jn0?{zTI0D-x-MF zGx;F!tXcK4_<8p?%iebLtaC>BGeE|h<=_b=t;${Q>C{@a$@AcN!QgL!s}{UgLbI%~ zK2VsQ(VhoU4RGV8+b9@({3FVf;75-?`8Fs*0CvD+<(=6bB26;6tCDid-jTY~@n2P> zdn>Dz*SX9swN$#ib?{2w2A=6I2b(38pn~gd&)-Vlq5QDRo8FFoQ!Z>RmN)6V_>3Rh zJFJD0y8|wrf+#-7STW8xF7am1Qm||iT5_EKkErsjE>|nwWeA*g8gjrR>VI~;<wRJ8 z!%KD5s=uzNwN<y4js%{cW<4;hnR2*~uh`5cGYK*Z>t}g0osR-_J&Q$35<tS9yUCjs zKfYAj&|1AV*CLN7D*jL;4Z5ln@5APmxQ}L)RrGN|6xpGyu@kv+dAU-_Qa`y{uk<!6 z4T!_~XR;7>2&hnFq1*AnZswoJhRbEk=~4)D<#oCIdWCICYm<V#QW%&^lH#u&sdk!A z`tgR!sNjUZ%~}3JJmtPAu`vHYP54m$fo}h?m5EqWzPh{z-z;^nR?~&Wz8D(z(ZCeB zs`&8{EhqxZXxY_vRO%cmE|GepRX;5Fj8gs1{q?g0vJG+JuO)sT#Wwm<Yuq1MCDDA8 ztlyaDq#yul9r&_=;y*BNmc)Bq>UYQmg^)A6os6sjx+i!hDzAB&$2H6$S?&kB<-vL4 z)z^0H5~h{fl%GgQYtgRAk?A>zywEv9k~=ewXo9#wB2n-<QIK7-*tp`QTHpg^FCCM1 zl1P=EQY-7OtgT%)n`*<W@t`(@J5?UMTHu)%si%|e6rknwMq4t>y?E2B>J9y^H}%&3 zc?I*QuU|*xy1?x3*-Uej!UhEbpSshmTk|uM3*z6H759c70m%&DY~@xe<<(*(9W6m~ z84UGazPfC_deyvq#p7*?fNcEMI6ptVsKniNIvBG{Y{aIQ{J--1<8vGT1_%Ne=I<-S z6y#y{&k-P@Y>32L@{)Sp2Y!h9in66h3mJm;$X?UY4cPazW~*an!+nnnx)@l(9YBE6 zitvozf(1zZ7U~BrHuBnUL{#HjhMzaordAkTgO;>iwHGLj#I%l2b=ny<!iih>a&ktE zKV`y=lk`WTJ{67Evf2KIU5+K}e%xzq+lgp!PnCP8W-XKoCB2U05ICy_<Dq`j>ct~o zcaz0G8jI=Uc*?c-&$aF<Ub>IXa-T$0B544oZUCfnADQ3@OnzqOQ62SjFuIm`e^L(u zkX8wE-`md@*>ZcuKMDT1yX_a*NFVFhJ>SIKfa;XE;ZT>pcipuJP*)=<|7^2p>ONLJ z(lN;=Ex~#uv%>FUg42wg$NmiXwUwl%gK*wS9S8L28A5J~J0|&WNfm}EKN(D_kP3V3 z{P@@WjDmPwyXfCNvB8OG3C@)ViB5g&-D4I9Oc}ZB$h&^<KKjOAvyd0h!NL7LBdj?L z1cr!bXA;c^E;;lsO?WZ*kfbUUqT3HYH)X5O6<A7510v)|Sp7dDREJSRnTk`mK|4FG z$~sK7rS<rFI15U*gMOI}^G>er^-61}Bb*;g#}uD@-E@}7oM=Y#uD#{vqfO|&mz-wc zIrf9=wsz{pNVxz?AfIkStqYSzp&TjJK_k1u0#YxR>qJrW4d-N+wEXz)iPOmYn9QGX zoIgPZd{=vWMa^U(lo}yoesPS@;z1fl@LAT%fS{-OBw$ebB%A3c`oJYAfl}Jcv|5=> zr+<EF#&KizYj`A+t=EB{fH~*OzH6RlHU);Clm6wrV}HxFYARJ-OSUc<WaiJG*r$Pq zq6v?SJci`aYWFbn+kuDc{n!21>*kiPPb9$q?z0_pZd^pR$s*mh+t=-qwcKmjXV-k) zuk<VHX2=Y^;XI=QNId;NA-?)g@P>+C+lmJ$Yap{veL*;#Od;N~LQxq(r$S8x#80ze zZY`oS8;f?*IdGD;opzm0Ya{5!yk^V|ZnQcM<l6C+tG3*v`FGVzQZ{1_ya#7wimYFi zyh;={8nsorS|=%FD-_ap&$E#u;=C~!a=u5TSI;k54!#cxM_WA*W{ml<U8-Jxz>#bk z*t(g-r7niry~KKaWjXJ9jqPXHgI>+03TRiXOTyY2S8ec19WRj(s}7yM-YyhQbm;WX zybo)>2aSjya4Luo0#V~ne4(lRmZs^UzdoZ}`x4%)!VQzcMjAfMYPz~o%^qd>ui~o} z7P-!lVZq<l3nvqa<VvN{EbL}7yM-n=kHPw+ufH%_<D86;Jz|FM^kh^gkNAlrB#ns6 zKxQf{IzEKKr3Z>;z~*q<ug*XpA5yFa?{tvf(&Z1kQQptc-MimuISlw#&&WM2BR4D% zFu!k9=(*s*A%7$<cUD`Y&>V^7#5g|s#3WrE$-vtYCg41q`Sz1FH^RqqG_WOOaQU_t z+5!Ifr%x0VNf=;^{K8W^(Qdar*D2&wSj8&cc&<>a6v`L%^~F>>d)f-t)-ugnDW52} z>PywNLLs-cx^_~ml-kLZd)8=|;fZwOh01zk5fc7LypmrHhdbs;J{W9mr82cV$)&X5 z?ltSVY75SFE`dz$AnQ11*>tv;Bd7i}12b!O1<zmcs(QJ<RVl7)DR*_5UnO^QOYNoQ z#ZoR&%SGL&v%1pU@*q?yZRgw+$vQDd&pDs##}ZZnVbI4TF<46B6$QHwyu%Y3^jM$r zOPf^f?Dh@jb_tq0L;pU{T-n6eCYlVYiw2coT96xXv!4La6r61xf!%9u@n(nWa`5r} z{o=d2;pP)o?E!M+zT&1V@+AB^t9}BWR@1!DtImbh!2`(Zc>8(p!aF(kPLM;sA5P+c zqC*QF{-dk7&Tk0ZQJ|y>`a`k%Chhiz;tSBEpW0oo?VVaBTGxOW9N6p1*eDjx1JCcP z8UwYy*Y?_|UhOjp3fL%|wFZv0_2}8%z6S9aeyZb@Hw3^pU@h^~;ENy;e)6uiM`9*k zPg@|syREj`)DSI9kn<Pdti01+k%3Y>-CFLtn5|WF>MUV<MZ0S~!_?pxU?H0-s6koh z+x6ata*vc7!&=EzYgxOSs})PvMPIhVSJ(mf`E6}uekM>XUtVwtjX)0(ez@>-5+|w^ zn6zdB*7uZE4~1^!LwTjX{POIm*E>3US@$k4+TP*SB3D#|yb<s4u1H8H>sd<26>*^y z^M!1!;ca-Q(KGK1xKrYcX%ZBBH*mta{U&EuI4cBk>F9o0G9^D1f7{gT<TL{Gx70Y5 z&=ve!lhZT$6Z7KABLu}Xy}Y`TsYwUIS2gNJSIJ7%)s#9`u~zOom3?cwdU)EXp(|5T zh8qqKDj7iK*v6PUl?p}5<rUc%-L_r>$(Om|k@5My-><m!o^2wqN72u8IOoo@=yC6V zHZ^~jS_XeOTKmn7(xStg<ifwhD}$3=`<q#>`QxIz`IFal{l1PM2HU8z+r?hXS}tDS zRT9MKa7RY~0<2X8(GUjPU%R40ysIN{UEZk=8rA-B>=mhte3SgDqc@<gBxWEbRW!Aj zI!=L(%++c+Dge}U#*+O^R~MnuaXeMaz0qHe7`b2V<BagHf6*_6C+kbe2qtQF3o1of z91vE1h7NfHEQQRA47E>`LoW9Zi5mqLX2;CL)(g34)q43=Ye;G7y5aNnQrj!G%w%<c zt*}adh*W<_sdTO<A|L@&4&}Xo^D3>DAi@l;9}&e$B>2&7dYy{ATIqnJZLF*69o=Ap zxIFSoTqdKFkWi?3?OWm+!wYp2gj_InO6F1y+!?ro{N|CQUv6<xm3DVqdwVVYs536N zk2b-ap`IsmOR|A5l6dFCP1sP*y_{3uZ)ZvSvQ7kM0ywoK)VVMdnDL{oER|z3V*!Mu z@ZI$GyiG4{2P08Oy}&>{3PqyD(%~Ao2dX7>yGN}ZI~oZDo#6KFZZy){gK(g=(+f5u zan6Z8Prltgyjob#rB!XbOQRZp_Zw<#M$za@U~DFE8uHS>EYSKQA$3HXFPtdZM&iRl zn7lP?y#xiG**m-2LFdgCB*^+zfKHw^drs3@E%l;c_N<G_@VI@BoX1kbPYoLXlGafH z7HD=%^mOsB{0$XQdi7%sB>ag$mtF*I0MXU34cgwwcPoI5BXm)V7%6K3v%=9$M_QS5 zJi26E?eyE(ykq4f(cRuIAvO_1Y%6~{rZaLpi0PzcCVV)iW6c0Bk4(-6M(>{@Z7F?t z?E)oVjMlxhkOT-159cc!!&J^@KN0~kw|9FGSQi%KJ8&`vLb1@+&Q3JkdzmkW>8o7N ze|D#@a-Dsox8r<H%%0H%v@kPvzu%nSu@CpS7mgLmI6Mnp_kPFUydd4|!!an^&^=73 z%c{2(a@1<`x_AEwyz^eDVqM5uGQg(WSS`Y-;m^Z3#}P(%R8x=aFDcDR-pAAo|0MHS zV<R|94M)d5p;GF4FM8R6a$ZmY*%3Iu_EQyAw%@j#)BeTjQWxT;^WN+JnVGOcX54%R zpJp$6>g^%UUI`#m?x*H5aH8vD>)^b92}NkLe-7_-$i(r<ILoy;N<Q%s>)ogH4P*Zk zWumUfpFR}J3L9;7e0Jtj6<{l3`j;E0x!Nm4PwF(6a*vnQrB~?na_7ofT2jt=;HcxR zrY_0uJNCERTt0Ty(i;HhDs})HllMA$K(n+v%rmfjThN@q@iV3#S_j@izfG~UQ~Xl~ zOwVV`;6(ADSGS8~ItkcG^t;E@zm@##aba~)H{QwH>PNSq4ax*+SOI}p;QlPE;(Acp z0U>V2w}xN-!qmy9kXR8ut(wmz3s*L@cm$70wAV+{OQ}E-rRA5o>R?T{(;u0uf3+T| zZ$jiXx-dDr@HP9^4;6}D@3e4wQaJsZ{p@Rrv2nGzd9~qlb2+0+fy2Sv{0@>?5WpY8 zW}%cnRu2RC*Pkwo5tA0%jXGu{rG#L_5@313U=<66LVw3I)-G1AsadpYcDKA&q@i4H z+g;m{4K-Q|({+omBWNwPM{Vl}BK4w(hTDns%bw2oXBi=&B7go`EAfY+u4BMfq;J}+ z`a(<uaqf$M2HTOKt{R`S=Ek}4Na4a@)JbOYrLB4@QryykHJ^8(y44dN7Om1yufTpD zi6j$gC(+Jk?*`O*y1vXXqNe-v%Ru)gZy1|L@Y^D>B^FOc&U`>C5TZW35#6n8{RATj z<){baolIS=2feX7_MZ!)A6y_74;&U#*6ad%8Ru@<TNPFHitA>!-)wDFD73t@);};; z>_5-FKw}{jk!RFNpJ&ncjZ3c146)(w5qSVd^RAEjy9(0SNwKx>dagw~lt9jyc=&kM z+Mm){-Qlv=IV-mtT0PO9XxRhETOj?zyQ!f*;$#*$db{lH@EiMB@IS*31(09tzz8B` zIOX_9wJsq3{QqzIES~n;?zKx^_Z-D3e)mKAY<KSVIV61s6Y@;wPWXB8_bc8CPq_wE z-6d-Lb+1vbaK}ob0k(nE2a#m!kG&=*zALn8A{b!^)cUndFrW8bp8W9@x%%9Gh%Z<C zxW-+jLZNr5Ux?7c))0@qjmsAkLyQk>k84`@W$Q5BA;<XMT)Jze%dEK*;$WtWQlhma zf(p$1cjFpEeWb512D!dt)E7EpTw{L55hNxgmpG4v{8o5?a0yXFk-8sGP@8qE&;JyU z7HAV8eHeW*M%)h_z{jZt++L@rDm_nJ@5N>Jg?I46U6wbm)#hcV-MTHQ-D-C()#htI z@}8nRP?VR}#YWFNT3&+InPjALacNnlv0jUpUX@DR7md9aYbxYd>t1`Y*SJuQ?6+SW zCLa0t)BBu<5`p+l^$zLbj18P=As}Rj3jr3{2aw(^Jeeho3K!ysSP$`g!FIU5-#-w> z!-kdjDtjdrR#(@qkRL{1|2l#d5%&EL@*jqy+pVSOim)E8H@(Vk*}GId?_BdA?s=&t zAxGr;{A=}J-RZi5M}cD1+waphzH<QH@!f8tQM9vO_UrWC3*PIr&Cg!eRam^lcl$3` ztQd?z3GMe_^d}#g#^^jO^iR$BZ)@NzxnN*`9$EsOeF7wQB96YJFJx<5I3vT+eQyok z$wemu3)WtTk%KI!*<h$Z$Sslixi0)>M`jG>CbuKCgd@UF`I1oLYf4b5#fv>vIFEL^ z(WTZlU<hc=@RICpG>?v#IEmXTq96hBxbAMp{r?aBwj+3{knF6{Z~wwOvi}9~yl<kp z{<da^5I2&f0b<sTO#l!0asl=H376|b?IeYrDe`FH3qkeq@yLYbS1+Ib;<G2_-wE35 zr>E<bYiX9EwjEu^o6}4lZdB{Ruqp?`t$L~kJ~6nItLAc)Sg>>bLNG|h*ppx{eL_{1 z=twjQg69w?%HdTe5w@efjc6!T!=aLHC1ccpQ9<GU&F8g#VQf-+FVC9!uWMYjF*B@* z=o_a`=U9=!w#oAxARfH?K15hHBibS{2(r2e6={FU4XR0%V&Nk8sw990SW1dQ`y!Dp z{Rw6q6*R9=35s1i;R6niBGG6hL4GN!X1BzqC8?_julif)ViNjGjW{T}LdheD17DYT zrt7m!^F}=Wl4&@FIGoe&h5?zqhP_C!8Cw&HqE0UcRq3s<r6Tawcgh&|z(I=5nu>0o zs4CT>HZ`~BiMJb4CC#?fIoFi+<zlPWJW&<3r7Ac>#h!dV(gm+69AB&zV|WmuO%?b# z`Ob#<1EogPSlB|2kEy`y3_*{|*{l77`mZjn%qFA_*2<b$2EPT_NVRRo0#L`+FDPqu zlFsZL)JGz343`j2Wv|z3t_Bj=<}aX7JUjt$6Wm+Alrix8AlTV&a;>AmO3YgNV8G}I zzFoLS(0cBrwQGv|DV7#!kPYe5nW`N1jq<t>h<FJe<Ll+rBB7%Zit&1e-=nljs+|iK zZNUq(3MaBToOE&6M%uMZsts&d`hyg@8543pHCGwcR}2(pdKR`+V<cSPKY(3i>&T+_ z8`mx95r6fnez24ATTtujP+FB^wO3@Htdoiwkzl57@h`)<cQa4@!~EK_azqDGKQt57 z&wv7k$zNtFGJTnUNmqX|n14Q%)8JSKe5+4%EKI_Wlhd<PqtnDxe*hkWwVbFURabS; zSjQwM#)u*h;JYJCr*y~d8*V3EYZXU~R5lsJ$lIueV^VkIt#MsiubYtntLMe$QTn{o zIZwj|3%ZSKB9>pOZ7i18>o6q=65YUOi(RO5<%L5){By2GRR4r{PTBao#@{!d87+`- zLtSC&YrN2kg@`7R0UzI<S@sTX`OU^Nh>%$!xj;lbRspd&xq`i81{ds*cOvhH&$pk; z$8ot+6I*YnTK*4J)BizF|1gyrzUSHBE`D9IJLO(D`f97Q_3C$gfYQevNzTv!ruQE| z^bG=Q>ms(Z6T2Ab@kd&Zj}mc|yn^o=KYU+byczBHqM>~APL2D(<ft}6BnwzHa?B61 zW30>j@zEZcH#!M>jjiPSeez6E>u<v~gW|0^;q6|qG$L@@BdT@}%Fai0@KpQ>L!I|K z5<Pv_eiA*`nzl&K9S8gWA#_i_Zm#!Vy@E~kqOQ6^3^n+_-!b%GskzYg*2tP+i_PXH z|Cr;xPeaE|A24%?a?gx^PkpL>Lygajy~~<Ed6zEQOcs#nh2>?%GkD$)Fyc!DbdTt% zYWS?i|D#$wcT~zdik*AAJ9bro=uqd~i@3fQHTC7t+aJ@%pX0H4h_`4;q%B-vL}k>> z&3V3=_-ab3m=ORx>7T2rV}{MJqpE$pP>FQ9kWQ-$|Jlo%hO^pP4gB1T!-Um8Iyo`Z zYIp5KHX8nW?ZrxkK8T*=V^so3e2LLK#_|;o1<sMSW}(I44SCC0wsUF%^xf3N3?RJu zsrfF{VjgZ>I4banm3U_ragrH0e8g}eepM8Asp?vf`4H1gFiq%ZM%Tt0hnI-W@TTJZ zk<27rBvsFyQA{&NM6*+lbNs*Qy9I<`S*UXrAKhJpCNXll0cN*H!}taSr)9r3wX4Y! zq1#jt@lw=Ry5M7VJOlbT?XI$r2ih&6=gfc)&gVljI8^*HzDI%tawZj-@jQ#aoL%8% zk@ZPE3&>g`ztMHd7@sNe?MZeIc-s!zsIMD=1-r|&CL?_JCchcp<+t{8ykhb{`29c@ zi)J9}7P$5Kr!2}tFyRz&f3y`48}u4aBf0QW^k5F>x7pp?^DXjTx4m-Z9oo%!r{Q%= zr-h=0MD$Rc{tWt(!r_ov;JC9>R;SIw)Y@98xmdKeIj#C!N?+t04dc`k+8Pi`c&HOV zZ!)j%3YKfF>S=TkNHmg=*pNFlhRMeEadSgt@*CG}r2X{zbi>{8TFk7j*RnT@fSe?p z1O|pblSrosvm&rVc|RN*zdsW9{uJF)D(m7s()Y1(OSDOyjb_OiRd*-P!uUJA9Fdtw z)0iRa$0A#f*ZVQLn-BT@4ISO>C!QMl^XnAJE1@?i7W+*n?lpC<SK^L39`@PSF?|k( z?=f4rq?iJl$$)t#XY$S`;(L|JCm+jq<YnVopyV{p2F@n0hwpPzngLc4`J6mgoLU4; zV3Z+?%YRK!3||88`S<4{oP_pc5RZ>p(@}ouiJy5(gY)2RegId>w6@%M&rMuibNa^T zqmqJK<a(pkj_;b1i-Aj>g9iuKrFlFk_G76A&K5kfRZpC3e%hXFtC=Z;30B7Bhi@NS z|2KX~@QcDwG=+jGhQKtMjUEN{#C({FdQH_%E+)I{=WD9%HKT#&$?J2kn@A?1X8^3< zP(?e=!N~j^)=QZ(P-M_x1^E3GrQP>)u)pv_VQ6~9M?$)4X+X*ZH4Wv4p@n<_@vc)T z7Us~v!K;nTel}~R=H!(?exA%yIu%y95$XkxjeM>^|LbqwLI3D=Kt+~XtqYYPo|m}b zm3Iac{TZz7F)D%*;Yp<ODKf_*k$kt9YuRL1q}_NUPu)yAn$47p*<?KG#-j<06^yTV zBo=XEjY{2ob{n_9!5j6XOYb&Blh#T$p9T{iqXuXum5+wKrDU*{j@j)>s+?WSG;Kod zuM@?^2(@W22*X*&E5#fqY*L^!QB1^WGJ}mLUIEs2&Dkj!lN<3fOd%uYz<jaq(Q{HL zS_e<y%5+5s>j^46j_a*!b^2#ozTMp~md}Uxs}~|YE8pKgSFNly%)<}2B428E+R!&3 zF=tux!uWc>gRO0-Co^NpRF0ZakHE}gav@J=m>GmJBa<^@Mxc8Jl*EYlPShS)gsVO# zpKb1CLVcrmRjk5!(JL&smEG$tsvu6!|Kr3VaKkCTj;RWHVwB7A8el*6d%MjX#EjNn zFw<MzNbT%wS`97*S&M!Dvs4oP9=X<8BS*iOjge92<m9*{0Zq#)m|7T@(gK2fx+M+r zm#Q%>Pg1k~H9Sf}+XQzDCTRDJ^ni_sFUKegUCx}j&<6Q=#d{L9k!%=Ja5KnP`3pQd zTCGqiuD@9ciO>yI%qmr<E2LNZNiqbGN*!1&OVymam`W|WNE~1d%n|WL`q$u?9$&$l z->6wXAVe&(d7Kl<_*x5r(dltBfq_C;3zsZe{U!vi$dH%C#lsbQclq?#ddAl}zl}}S zR|sjKeQ2PEm!)EDs9N1sINX>=Z~ruq419yp1ml5E{(%*MWS^V8cb!*t^+LV$V*Q#~ z-c>JOd$HXo_MW#cpYeL|k(Nn@@dtL={$q(eiWfkGwXOVR|ApG_<y6A{<IDcJcW&)_ zWj24e-3K<Y03mQ1oswOvm)vUCdE4IgVz1T9U9+ryS3cyc`gPt4-!v?dn%j1DqtFyt z5f!J=?f#2P^Y82S<7WKEUjJ9<kgw4`zAM>m8d5{#mQW}zB7ky(a$ACzL$X10IxUtn zg_$j1VzaE57p)Eizur|RR4wPEqE@(=j#TrFT&lmegNRkd-DSt#)S>&8Oi{Z#?3LFW zQhkeZS?NM#qnwLHm_W`7R|Y#%1|=vs7UqHXukfiz|GtGzCvkfL{m?^8o3?6h{F_{H zAMUJ0=U7y5u2dFRwlm&khG<qdRILPhPz?M1rEpg{9x0~6)x}0Ob=ygAmvE860H?j9 zwCv)89j1#&fngsfSP!2N0VUr=ku5$#;X;bL3hbBv_#^`-2DmIr7NI*ij=(g$`%_>) zi0F3ewY{jWB&G*2)KS58Re}UwOu|$bZu!B`c(pD7kc<jvw!JiHraZ=B`P`Ag+^?pK z;f<>mTej^Bb1}xPd05O)k(_{au`lrreN2O~)#v^J=RTo*2E^?-yYR^dzFz;$)#Y6| zzvnwCv(u>V)BoWF2;mjNQ{Nw$w4KE=eUbo_p-z_U;fYzvpMUM%GuCo_`Z7*mpASsA zuw*`P8|n14IY(V9;wN0~L_W;t5+9SeJMmVq_<e+n?8Em<_}4fG%&+~&F+Z4g_XmGw zNlJ_qItCd==fR!~_Mv0U4|L>EMol_0rpHge0(?hsj#?l*gZ+`#MfFmTJt&uCj{^P| z^HTyey2Ff*ZeqB9?K{zZ)Cc%LjY~&aWb|q%d*^s$uj(;%0QBAhT$FO$r0RT7rbv;5 zg(+*%7g*i~LajFt9{p|WpNbUYt95&?cd13qi#?_?{drHOj6&FdCeq7vF3msk%Dg;7 zys+uJ?UFt5z?zwwL<&we5tbW%Bj!ebdmzmM-w?^_i@DvwXYA)*y9=}aNglhrG#%aC z`5*8~B}A_IZQhv|gEI;(05@ebO#Yx>vr{>NUeSCkaEv=+sQ2NqkCA8C(-IBVaz-9T zZ(iAhVHSPaKZ&e({z)62MC<VfPdmqheK+uHh^;4<#=sK0iCPZ~RPk(yfhtD~(H{}% z!84OcCKA2J6(=jI2FYG)m7b{ye~)~rUs*o}+S~1)4z|(W7>lowi14{}k!KoT>HAsk z_eXFC14BY|hr8ZdCDZSnyX<w?E9uj)XB1yyXq1RxK$Y@rQQ?5{-tF6M@|1ajBD@5a zMD~Jg5KCUaW?<<f^8W^BDJVkmExZ#qr;onh>bK|_;6I=0@D6tJ#zAGK%@TZiGIIE- z?qeolff*19iU-11PX=?@k2QZo{FzEyGF;|3t3^%KR2P_|#VVBopwh!j@J1hm<PH)) z*0zNIdyC)8tiq~PA}D+ZCZOJ#fTBgM<6`Luj|hBxA`r~ys3^wm{us9I{=Prgq00cL zEo-6?fJ6qZnW9-@bFu0e^^S)N|1H&8GD5hJPcPQDcUZu(P&Zz0+UQ~#4o&xMxF3!9 z7ETQn0A)WW`i^$6P9V^xVAH_fRvVrAHS?cSMPAIHpMiWGxA1{7cDCym=DKGjtkpJl z`1R|qRiO>mMr7?Gy0TP9_}9olplPMqlE)?kVgPB4bQXyI_wii~&mPza|1>h*{)?Nh z)E4VuO>M{Hi>dxuD(+RX(Rf6KZL)r#6%jR3o;+tzBxT8eZ#~D66Ze)w`ytpxR#S^{ zRn5iLIZt&drs9>PqKbaWqgRw&)E1e4Z-4bRGxDc_|AE!<XU5Ns9eV!=xB4S2IHGD$ zf(T-Bc4QU{ZuZH-6O<(Iq)+2;+M;liu=Hs3(ad9=oW-xGC^n041sES^9~Fu!d-{f& zMZ!LjIVlA81-l&m0@entam{~`T6i-0MBA66lHx$>!V@%$7}mujNGC~tkY>;@*qpfa zBr1k%FsX-4Y|*D9|Ja6F)JbJ?kyy^%T`Fg@OBKjY_8WFEk#LgD`2JE&MH}gKX*1oX zm{1|;6|sur=|m-~LPhF&t(2Wq%Gqw&b~3XZ&ylrX3fnTExfBJV(>BH>IL~&o*@)+& z@zClraLH`EQVj>)L~b!0b8@**v{@*vB|>n*QxCo9t-0}Xe$nP+M#7PJO7*I{nO3$1 z$})W#$%nIW02H^Ym14Ep%GKM!3NgBTE`GAI-c0IWH5VgxJGV%ls*ShYCJb3hWx~a{ z6AERWP?8T*wwnmLxwH*x)hXqiwMeGr#GFhl8Or8jp+r3FM8I&yoqR6p#PgM)T`d%1 zk$$@os+$*1iu{a1T{Ngz$Ym-I`~n7Z*+O=Ma|?(h1h{=)Nc!YOY8J95In5L~W&_FL zm+S^hlN1dFppX`M-K4!mnY%(clPU9*-1;4hstba68{`~F7D1<TolCA|D;=4ool17? zz5XB>HG&8a)%1N9G@of~YSIF8#M<vCS+ES0gfD5hJ`^cCaC}w1x&o_lT%ijl+0^&D z&@1hFXV^G#ummz5x3XEPS36=o3}iDkvCwIK@E=ux2C*0|pNDU>eC`&lk~o5@x$9v~ zqmV4E=4o1Aj6)GE4k-~h!>g1fML5&BQl%gGYdlaE#2f_+M4qfKrH38`5!HGP#SN`| ziS6&rC!=8{6nzOgrn~$zIB8KD#6{)}{R=lS3E^SZ>%eUbI^lUzM)qbz`&G|qsui`; zydQJ8J~WLcuBesfpzk;P9Vh4Fy**3cAD962@9msL*6#G;diR7T^}=)8wydetotHLb zRgynnZ}#)1KhS@jwSB({Z%hA}uD;X%W)pX&9KzS`KS)xt5Z^z5JAJ(0h8(~#R5*T9 zU#I^7MHcS2(A(np^&al;`+9IzJlU<jriZbnuNZ%vIq!GB*BCVLq4B?Sa=u3YADA4# zy%qp#4v+tx{vY17`gQwn>16zSyVn!wc8KpcA;W*?;H3Y`_=S3G{nQekY=gBp{K$D4 z#;Z!`kMP}*^?Vq~lWo;c)pPR~mheW&w*CTcKIGDXDb9NA^TqjN{~R0YF&-XWcQxR1 z6@dr>F=5NPCOI0C9V4}|M{wk?UaTtnps1328!EKxbf`Jidnw?%-yx~(NIB8X{gsQg z@MX7g*o22c^e2Dr`@SU6K@4?s?dn8P3a{buk~oN9eo2-cof?w;D%gHqC#EuH5E%uC zsJ%(lLltZ5!V%?Tk72}fqY94~=_*w!*4HpEinR?Hvs*uMRNL1dZ`smh$5ZHr3o?;s zKiq*Fc-|}K8Y1boCm-y`b;-L@LEGqex*IiY?vCz|Z}*Dd^4E-m2EWcyO>aPYe19BZ zlHU|p`X>JJ54PSjY8$%Uzt$M|j4{+3_+aBVW6(4F9(di_`UiV490L%QcTURPF<=pc zpp77j9~K;1UDH!&c39ekQU=){pwqoO_C%iuSj=h5BBYI!KND<*KLPwX;T=XbWwmU9 zH6VYimFU5Ym-ZDu!8>c<y%f(XZ2mO!WnAbXpUw(LWPCb+0XR7&W+Br*GRpHKnapHB z8E~cKU+#p%J1?o{0KOYrWiKPNgBYZx%$~{zdu3}oNG2PbYxlz5CM45D@H*uJ7D=J3 zx(T-<3XRN9-!^%Guai|_VYr}atCNC{0*9U_C?p&P5`GnT0~p;>$vd+<kM&X~5%d5d zD-fh&-##8KY5hp9XW?ZP478yw#-Wll&Mv9W=+i0+vx3-~T9e{=hWiM`wtddTzW6sf zx+++{C`yqnrX+D7oGN%Y#0=J^=W`wI9MI}x1Y-dErvp=xHM~QQrDT;raz$78CD`F# z(u8l(X*b-MqF4G(EKck>h_QXcluhydbWDudYkX(K!*28epO;Q5{~6=f*tqE9B1y)_ zEEF(J)ZOV6BM|b*@D+(&$tmh_{RvZ@*TJhNaW$c=lL%n1EAvFo$&ZO&|D4#`ee46i z`eAm`Gz;p)1M|)lMMJFSt=%9%|AZ?xsHsmD6yRch`_Z+)&wYXr*JZ1qStimZhPK8V zi?ztVKV5J8@J-~_XZrlzTnzXmFkU5X16y+dV1Hmr)N{~GpYtTG6Dju@XCNHmG~#ri zP}i^xd;z}iodT`Wb)lHCb$1v8u^DgIWZzFR)GYM~OXH&J%2XPjI6VSBwTtLR*P#3v zYq^{6z@9-G0RGcwl52!f*Vm@5;rAQpkGjhEJs*RTwr*SVTcX3v3ucPazyz%<iX8H3 z;>nmZ@cGF|(2{OtaJ^x-ORQfijcb(pjdnclUm*U4F#=M+UoP`vfFzTGHRnUAO3A+m zfKh;mK0Z<A4ZO7QG8xS4DUGtq8UHSPwEvOupBev!@eetJ>=rwcaL@O#7!fXFvqV6G zVQ<a~EM#_pnM(=V+0n?O8D6H~xfC<k8htd0MJw^+&wx`-Ou_}TK>1W&MxY6xzULE2 z9t1%KPu7#!@y|#_k$gr0J(8Is6dj)^4B$y}L0&etGMTML+*$4{JMp`3t`g~>TS|n| zDwoJO(Z%p$K1%(^a2{(dLETu2;U-FMFzxN%e4UT-l@n#7-k==&2}sBjUN`sM=6>(g z-EX>k>d!YDSefPe=3=?LxLGeRE|%(Bw!E=ZiE=nxPNcTe2`s{RIhzctUNT#bhmx^G zdOIDjgu|6MFK)i}y85edGE=#3AFHagHfWV1P3~R`roq;p+r(!o*O2dH79R~Ojg+;X zOPLTq#2?NR$pRMniTT;*;1GrIZDA7Yeb9e1Ie2kG-PyH+Bg#Bhi}@5)gz|VTPdu99 zK>Nm^1A%42_GG3O*7orOQa$AOm?|PNCwvUEfjl17^8Hid5_n&RJpuhDXJyczIen(o zmp`OO61kWi#e9YI^|5Kuy9Fi+#bO5?;}~0erakPY9J#yi?MXq(o1Rwb`sMP;$+9Sh zx7|KT?r~bY#X;veSESl@@Aut59`kth<Ye_&_%=8e#?xSJ0smq$*Ts+ase)Vyn#DPE z=TQQIR4}f9m3`qQ4k~7}a^NK_S9P1P7dO#HWBr#FK2z~2qT3p3r*&=y`&Z|!uiiH< zDN0?=jZwb!y`6i-5AM9<6<X*0D>FFUH}gPru8@z6(g@Vi2bPpwmJ4N!>rr1_u+~1c zP?gdC>LZ!@>(}B5mD`Fb7~c~wlgw80>0-nS?j2WG+{;AZ59_}=WJ5V9xm%sfBb5g( zd_rR3QMi=ORWnI-wFJLSHF237%t`6Xr_4xMmr*k&7`nT%{01a7^s3$nD9{lg{cs70 zuok3^C%`{*RnUK+_{>#bU<IBZt%_PQ6zd%d2(zJQ3@rqry;_K|%}~yNlOBm@R08yR zrJ>P#e&;|DZ-uDdEG)8P-`2%JD&QmN%m{z5-rQQia;((m6?r(qz8yJM9iri~^CRHe z|2iOmz&^6@3=k<~31a<6dl)oOvPtXSPp<*5KRZL|`K9*uO8@~!vUEgNoLG9FS~POZ zq#bZ)N{L_gt<R<5W5M3dQu@B;LH|Aa1&R@_nz@<5vjpJ>pMBq?t`r)gBreJGt>H4T zSNLpZa1V$P<m))1q)~oF-jm2gDwBR`4b*8}rRW-v%`mgcdX1BVEqMU8L^2XDpta-^ z9+YHQYSmZVFK;BIu2Y3TJ={OOVJt&f_=Txzczl18<@`=Ju?9J>zMgcuihqdx;6tCW z+M`7cJKocT9K*7wf_xh?B9uBT|HGTmBZPFnM}Umo9!%%gk|dzHbM5BzwTssmp~wxY z2{jvdU2x;g>UzCdeeE^K@mW6Ix!65fUt8ksuAG10&S>&m;Z7#k{DFytmx9nZa~4J# zr2X!wq`8=hhOg_*Cb2J9y==Au&(|^XPWgPPSnKb|7m!c9Xlh@J=qZtr-M|U*T&i!w zf(=UmZV&D}i<5;4ZP1si8S#dUTE%MfoDlY5YfD8Jo9Q<@Bblamz|=KX%_ZeFcl(Bl zcpFwRO~qw<eX)hEebs7tg-pw}dcQhos+_lH7VBQ*RddBGo~n8;hfFPVe6qg%7=7dC zXlr6U7&AWW->7AnORIg<7n<m^nP48hsJc)W-%+pXlDi2jh-lcvV_V*`x2!}2qk}DZ z&#j$-4^Q(&jOz<yCNP-%0B@%y${~bw<LX#L<-nNK`xi-48Yz`zg<Np6WwY+~Q`Tdw z1Z<Kb`Z~OvX>BuH8xf%VFZRql37s#zs^2cY!$5|1EmjrX?zizcSjeKO`P;UwVY?P4 zA6E#XV$gQ?opw#R2>HL){B`Humhp@Xblf2yf}cwuxoPi`B214$iy(vua3jd`=)}Ur zojYRZ9z}w15{Nzz7zZmuP#XQj*5EJj?1rE~I1_{^!QP2Ml3=|qHia?axEC&27s<?C zCY9bx%Uxc}eEt*Tnf159ZP{Yy%}lfS!kc0J?Y79hw%2(1OuT}g@lqYhxW2PJtF)R{ zvtxhKmTlT<?WGOlwfyv@mmZvl!8$4OQV>;0MiySoV_#(737Fx-7P-cu;WtKJ`{kfJ zZ#p&m(t6B_V06*@ML{QTTsxOHYQr|3qvt;cr#$dD-P7}DwM3##$sU&bji%4qqJa|v zp5T64RT+Gz<l5?`NtP!`9n;sw(0-YbIKjPE#CG}8o`hKo&b~+ASDFl07(dv`_mtf+ zW%}Jil}%p=-0dRm9UKmbKeh);?R}K}tNm1*G?M*SH_RWymDZ0v4{h_iviiPljz0qU zCUDKas&x)hhKrqx!XJd59twW~s>ebcV9P?nDG{)?Z=2(m66;e3elZMLR?t_y|7o-| zGL1x;hk1XIni~Hx^WYPugIV)WX2$(+nLLV)IuOX?bFz+4VyQfmAlQ!xT|S(b4C`TP zz^FuFuvQ*Te1TE(1UnknBD)>M!|}wNPyI**uweX>U}h~6v7sY^rVa(F&}dW|1vh_| zcMH5~6mscOFnF@#Zfviv>bLIBNw3k&G>89iaV?!L9YsR@m(`M!sW@RWy_~H&*GYS2 zJF;Px^+_`SK`0q^GZ{AtF2@cz?qaT4jJa;C*vu`u05`o(G;{7PFD+K%PB;{gCE|-q z3Z=C@Y={=m6M5?IMN|D+CKM||P8xL8@$yCC#f!2^?6}3;)`^o!#%1x)YX^Rh6J)j2 zaMuj-ns<iGFk$K?i9rfii)r`-8aU9Y<X;Le_5$Tgraw_P5m}#%rs9RXP(`=_x?V4K z9>t`Kp2xgix5#rinLWKc#h&8xq91+@oNSTSwzJ+lx8mzNlEl_N>ySdQ*g5OFmBn&C zSXo-C1oLH3PVGVP)q4Bp?eo!Za=m^F9nNJYeEDdU(}v^W$pUKgoG3)TGJ!=ZNHyy5 z!GQd^8i`D*k^jwcg5K+3I`(FZS1QCStKxNHiA0QiK-cZ9L__gx)NDm5sSwE~BdQvB zoQz#(9XA=X4;;5=K;)LlxY0-^6^f{XNII$xqPCljc*`PB@KXpE^2jHH{EP2uuO7i) zo6O<3JwEx=(JwHs{gg^{P`q8D0%?Z=;^wNkO!{7BnRLFqmoGG{Dq3w;@bX?+Wgolc zook2>whL)j;s7hI+ke?yhB&#|X*3|mtyY`lUiOndN(?$4bU2*8`btz?as0};AM%M# zYGkOPC7e#0gr9kEwNIgQ<Cwdrpy6FX2wSJfJu=X;?JQy8gyclti*$uS1SnCBPvgmU z8*ixK&f<3oX>lK(is*04xZU>WTX-uZ*ApppS1teYk%o^;SA5Voj{_M>@jf&|U;ouW za;j<G(fa|*IbPdIlLT07)0<?xRLhE=gd-3dDXp^0qgR!HHWH{U<X%GAMuAXZ#l!Bm z!Jb%efBE)s^zQ{`xMn`ZdLzE7he|^3fB*)waDZW$rS822;4T$Ur$c5pmiiUV#>{Rg zo#wNmM-h{_-Hjzl-McO%N~MIoLs}oxP4Y*qXzxPW^N3^q_gV+?{ccl`#6M+He<=kk zM@KBA7-k|~8UYnPog*q}|3S}4M?!YkG@_-bX@u=iB&|R2<O9$D0C9|Hex8gb!{(0T z^b28Lj+W$ozu-9Lj=b+eWu(_`Mb_}otUtGZqBU3W^l~|2nCgp*m`@_+t;Axg87s(x zys>{GkA-`m`{&uWeMiB*Ob{bBK<7WOo;;8}J_vBFqRYvStzu3R{@2u+cacH?zDOoj zRIQuKUY+#IXfoM5_ZmE}@iC}<;)ed`UWQHAc&~rj7;JOt)%`sTu2JSbWBN_xo}Ynu zFDDh1Dk829Sx;E?Zc>J!3iC4v@yk)99rCbQ$Xi+Ej&2fE&0?dn)jn#&^lw5quyeJu z)AFTVs`@fhJgnEjUB3KK&gv#tc=_xkpP*uC{^U$;M|ZBe-K(9hk3i|WIhbE#F^FGt z9K&tw4Xs;bi1kyE3D$GKjOI;TPV^?dnhWU7{Dp8->8(ha#bRR9J8?PLk6;&mO0ep= zXo=eAN=}ECwL^`Rw%(Bj80Qj{Aah9Hh9MelgT0~du&^SD)0HcoM&;G5s^k-2YiH;n zr^(M9yWi$CJ$uLYm!6JeLy}@LCFZWg3w*uK_qB@Uhx#C(NDGx8rIJ_o+r36`_V}ET zh;SF9q=jx|q8|r%h&?sbz<vAG(7ESS039U%NCFU-{0{(p$hb&O86iUn-*BJdE}<OR z$l^YNIKg2dnLuJy3%`*LC*-ThtLw0sqXGIV1y||OV?@B<4^hz#lqA<oGG3&w{IQAf zk%;W%%o*e!qle3y7-zJEm^1uXIFWy-!q6nsM^gO}=HU@F)F=a-3!MJMNUf6p-0O&A z%_{NOi}@9Zh2@sY&XC)w=&O|;$>9Wc#d#;SqWJ%-wSA*6d}Z6KWD1{dZ2a1$Wz87W zbQPYOZxfezPpg(S?MX^zznTMYGkqsw_vY;6BnhBSEROC;GI?U7Ig4A&4{b?=w6Ir@ zIm;7rxaVDtsz6`M3;25kS@$<kI6gN;<NREGVu~_Ja{a)O0cvh2EpE~-18@bDD&@$^ z$%{%US$TQX4A!f`SeR9S<x^nMv<?cff5|icFp@zN@l@{k<$gJm%T%*={qW^cCK$H+ zNm<5NqdH)6T;FvzNS|O#f;V>LyM88}eaK+=cuk3v$jETlBgAt66#*NJdFemnV<TJv z$CAdy-o7S}P%<=;Ch{l&Fd{X)V(JQd*~d|sZ@sslj{J9U$B;LPeMmj=&()6@v&n#d z(C)m^zzB>gJOG<}3hSOp1SK4{BehVP1O;<Dnj@Jo6N`8&k!+|BD^)ZVszvOGGA=FK zYrTr3BNdjq7iK*gjBLlV*X?LBv>ObC&H6bDUpbnIy!5Y;f$v=;*(~P|O@XRBbF<{4 z4$s*Gi&7bP*R{_AMy9j9eqGw=cJh=M(XKs4rsSQdPNx4N8daTWK59yJo>DY#K9(y} zz}8}6LSNbS%J^_PyKI?{dSyxt#dyJQw7%oV0{s3ASP=$(NGQH^`JjbykfA8!_=RP? zX9ly-k5k<N`R}VZ<kk?+w>#_Goi)I<F}fk$(Tzl<*-ac1N!2kQ-*!vPRUD+9QVG3q z`%eF({g*Loo1;4w__S!Q=!iSW|99uneW@tb8-LIEn?#p>-}v{4F#QL{-yzEM_l$pF z{HMg4{&VBMB-->}8~=^5W~>_<#-_1lY#aZr@h^=3#rWU3Vkbu7r@y^V4qgwR|2p5P zJNuL05BDX{zwW!IveEl@s%Mc;0;L(24|yiTM{G!P7hw~hoIo1Lb4LHAlK$T*9wBPD z=ls8yb@{87{67_3k-v7s|5J%|`CD!Ke=4(8$`4&MTU+Ivb+Ykt|Dv@nx8}z2(OIOt z>Nu@>t?f9=Rr{Z(qA4$yiYC2SI-0WTZZx^>MqTfK7aPflYZbFj){AAFjDE0|($VyK zDwgpM<V8A`rpULO_uRq5qP3KDGRxU`);s2*opZ7lX?+zhMQ$GnCaH?GTuPQ&C70R4 zL$l--t&LWu<z<EsR=bv}FV&JY@3fw*HR`E4HbZtRxwW2KuWn@5tLwRq+D2}pD)%ky zVLN+WtS)Y0bghK*4GgPRB-<&Sq-?JpZ@6C5VNTj_U%h=c`tK7j6|eHVuo(!A{xC4` z1D3vl696@t0wi-%c<<>X>oQSJVQ<q(9a4N_xDJk#R+G70vcHzhd0EO4=8~~wvf`#3 zcPj$lceb2Tt2v60lyr6mh2_MR*FQs(Cj@Ih&nB-|r66k0jpkC2a98R_m#UbHJHep4 zn9QQv5LxP&m=pa|)yAaYS5U*;#yKQk7XRLj5Skg}<NbhTTMleWveOaEL*WBpS!^v6 zuTHO%3OplpEo&BBc{=x;yz^9Cl)QL~;nH#j-GK3uyhP0wh7WC^vyprMjy5OALQtmS zD5Tp&G?42)?V^vqkbtxK4A%^L6FlGd>?}cu3GM-Y<~BZVkputG_(#S+*4O+$<%<7j z#;&nv{K7aiPK`6;|1|nUSVH)1<@iSeBcl^vF3dfhps*#xx3dw-@q(d-fNO3-ShyZd zK*BXSf(Igk13AJcfNU2cvN6BpJGsq{PIF~GU5JY}NY1=G;{zHEd^tHczrb&yf}f@y z>&UdM+E1qE1)M#OvuEOmDj-+!$ZTM4Qm*o;$<Mx}rYW^LJ<pcYPv=J`MyF@Loae*& zz~rN8ev21+HUN>p$gDV$My6+;@+c5+o9!umGb)IW5!#rV(18MJmq`iucVT`MmlVWS zk-3GZUp$?qU-M4_PuXCaoVvioXQLGU0`4R|BpdUob-d$UE>`W39SR1U!AO{=L;_yj za3}#`QoC)(f_AX!UG4^x!C)v90zMrqIOp|7#*W#=*iKFvA-irD){`MSxKfC1+qQSP zWCug89c8C^rfam8I778?LeW+sQiubd4~K)%e$KW-p|H0JV49oC+rc26pb3(U!*<ZD zM(t2I=p`ez+JGMEILwA2@1*Pk1>e{Xc~`k$=w<b6GwN-V^=n4#)Ou_S$aln!Ibq0@ zf|anH<iKK?*F36dC<->)b-W(UhMJ*ZG>q>p7I+@6rPD$BLh~h3m~ESeQXwZCj3gX8 zSaCyfw)HOi%aD@NIr)n?k(^!1XEQP=b||*&?sp^2sJon5i&itKTo4aVHfBc>QOAzN z8+O9U+7&zKq)Jee$3k|5(MSdDbSE68yBt?78cjrP!03z<j-P0l^AOI2C~rg0VqvcM zNZxj%jcBvJ7If5Mu*hlgHZu&WouFh^IL%<iBAhkOLW1Fp2JJ|w#c>CNSsvLeR+0hE z*-11QMi{k;i^KS-_ZQYL0)L5)OWx?TY0W+ypN5FeuOb2sA0lIP#QdXtJCZAABkg>t zkf$2R1;s(~1@jw}HuW|`n01TwM745RrA`R{)yqoN_W}Dh-U#x+k4VPQam5xCLJlQL zqBZb+vv!VIR6?7dL4p7`vH?|zXc8G`8Uz9b)k0$1c51z!^Rv#hF^REr3Wd8FYrt-T zdZ}Zo)N<QU4bO1fl7ECR2{v_&PZ;F(-1dh!Fx-v9-jI8R#X0PeJnKFPg_kIvV$=!B zlUnNVS>mI5hPoqk?OiiU&PoQJOYrq2pXk8D0{&>5cShj7Ht!$#pjBFv0WfL#*S3ny zb`uL0Oq^!ime@Nsq)2^K4NSOU?PF|676EiYsn;MTNe;t0S6w^Addv00zP4Fan_h?d z4FN(RtQKBkS!}l@Fkr-^HIoVEqO|M#U%olO;Q=(np(k`KSOUMU{kwG@`d`%#1)xoq z5#y`7qx+M@$FR%n^KpT<E_wms{+jWy<37>3e(WEA#lWb@4J&$UH$c?)qeCQXruS!~ z&VYkk;?{=ZoS=N8e&ZPp-^q`^?cwLj(V(aI&Y6Asq3Uq`*08hro_7WhX1-s&a~?lR zZtZux*j(M{ZPbqz@1I?Ny?->)4*W~a!I9Eje}f9+pN*0U#0oPphoeG#6Ol<CAK44I z`XRoWXQ`P*A@JQeio_7?wBlu^ywcpuG&B3n)k=o-rP~eeUY1q4yU$b$0yg!dJ2(?J zUR76AvT8r6XZT4tyw_aG)VpqipnJmYZnd-NEwX$Zd58OhVt$(#F)J!1p$M&~`2GGq zQJ#O(__rAIU*GQqIUPdZLxBujcC4#|!x$&)iP}XXytseWVMI%{HSp@OBYTmAn&8fn zcd}A_rPh0={(*hP;p7%GRFxHX$tso3!svW*Z1ChAuT+`(8|JYu5QfJGrw@AAZx3(~ zzvlQJD@Rv{hjL+fYBb!+KiFB0O0L^L=`vGUZSMOgsGJ?1p!_R}3Fijyyv`72Lr7dZ z<et~FoT5-jPEn)dy2WnMO>~<pE6r{~zi~ad9XPlmW3wiLT@bEZ7jI+4_m8lkCAWvg zNqr!z2&bI(D-f0@On_@1EUT}f%3~2^j^M2%6BM^W0NRH;zIw!Gzta;erYsUr(29dg ze1d+vl4EtlGaV2=#>X<P2KbU8&P4JY-cPfV_^l7d^qpyGi?(6zz2770h4#0}c@+6M z90OmQ*5T3j^Svy37vK!B`uIiYhdV761#BihQI1`>Yliwev1te@2xH4J-?rl)^H=9_ z5fzssl;Q{PW^i$c9F{34ox4qu2;AqCYFT%iC-q?;8aBcB7!elibk6PA4fIElGjbf= z_NjaNZn6|~?cx*ap0=U4Zwn2n_@W0sm?va?ehwSmQ{<CaaCl9zo~Orj09^Y~#mTI_ zt2j;t_Jb9KV-?RUcO=yuV2p|J!E2G`2$@_}qWf?eN&Fr8f^_NORrTGaC5^p6J9)-R zD8M)^M}e^eCf9$mNXmTBKV%k)grd)ap?yyL`F$VA?;1ZA88tsQg%lNe8sI+k`^tOq z|7rj)YpblU+$F!4m0W7wQH_iU7R$;gM`F`1fEAo>v@AJx9h-|o-pQvN6D~OXYn(v| zpwV^QQ2-3+nj9Z`hrX8dk@^uf-?c6NI?@F7>Mz&5{E&kZEcI`49sem_Q{kqNb780{ za!{!!bl<zr^5#c8SQk(f#9)N}oI8%f&G<nDvs{-0)gbGBRl<|-BsMLLw(|Y{+INWS zy%dk5i`-6jA)&}8QPX7JYOnZk-rwf`Nady{2IYn*$u$ufIJC8k9hyHOBB4OCB-aWO znPSOLp2{*kvgCSO7rWkZp?%WCvuzjAc3<|>oz7-F6OVRMStsGTPO=kRyI8fp^Fqb< zH^Zwh(3V!&u=BdV*Hz)96Csf`pNM1%)E=wWmMR%7|9t$OaOnt_B3iP<D3vCeMIaBO zrdWa0B%Axv8V(<{*ptEuHA@!ojpKn+>1|8e2n0q0mm!#fSgfGxFLrl*2SdE8q8TDu zr1!kaW>ussRM_pdxhXT9oD#gi>;~UWwMZS0<JV@<A6I4UZ)_YKY;5eeW&0fgREhld z`yT|?6oXAy^qOHr>-`Rn;~VCjPd#0@nH6{`fJ6+kqeg6;4B`d(NGFS4nV6QL>TcFc z__|Fpu5+gpi3SCG^CMmDXGwIsQbDU&Sp-?ifeOK?PN-5v*O!ftM~3yiG-~0)+SzYO zO<%v7mv*YWbDr#Bg|Dk}Lzu)%GES}Q6LnM1>)jLdk@{YZ+PW_1m3`-wFy_9#Eq(ni zSJ?vo&M95AOBk)F-}3(CnfZvO*->Y4+bfXW5>(p=g8MVajtzCpyN42ZTr9yh!ce~I zzT3Bt6d)Ga;B#gOo>1&TtS@aL$XYfK#v+i#I%00ji}xSdg2PBeXBWFl=i_L<l*nQI zCr%{1LtNl82cJ<KYFJww)V4&=WRG|EdT(C{Ir+QU$?ZOdef(e#-|5-?9&u_gPK>wz z6}HEJXw-Pa93TAxAc@YyC%!wc#SQq(CuUqE&<KTSDQ67CM6MY&o1LK6&Xm*@){;o5 z5+BWdG5x`<q(q?<ogz(QWT~G>*BqyUX1!7d4CK_(=1By`w%6YJ>4Dd2I%#z(TU67P zm6b}mDqCP;Mx#+DLh?g26^+`a@!l40Dhh7s@KiM}V~+W|$%LC)IatO==_W(r1S#5` zwH7Jx`s0;U(oT@fP643A*5XzZ5^nio`CujGvVAboUhAm%uH(o!$$0xUhra>aQVdog z1Ly&UD$CfyIOe#on8F?=A;!sZ7C)9gIiK^>*4E+cH=WmquYpi&HPo>YS$pxM?Z6OO zD&ZYhBk`Sjr&HgFd(@BVh{lOYUv`ku-Zqd*wki3sX#ALuiAsDQ2D5(~|DpkMfEYcp zU(Nw&Ee3gVOp;oFLGT8PZR}}WXR3%FkW>^|EAYR~u{l|OJ^%-y?Y{`H&FtJ$sVMsh zuA}Zwy?$A*?=00zne@hztIDq^;pK{Bxcy3%-KC9mrc{4(nRY|T<Wk(t+DnC$TK1Pf zbv}4*MpK0)JL|@mlF3ja@HoZa-ujEfTB;OTI}E8tAuGs?U^tS<7QD64;aa4WsvW*q z-|Ov$B8`oe7vbRY**bjaTGHyrt<L({axna2Wup<1^W*!HrS`>$_+J71lA0h4{{$w+ z@OVSeH98eQoj?&Up(4KN;<rH|q>|2Cqa+m|gg2E+=~(ON=Dg$@=0<878y4mKd%clv z-~zwUQ^tM~i2#%s*qls!e5ovZbHvcTl+hLUD`FS_rIeo6)u><%k$R$_q{kN?QP#|) zXvD+$lt~t&;;ToEz(w5)rK0h0qF%}_3KJZ*R5I&CQ}Imy-0nKoW{%|D^`%zlyraTf z<wWbKxxChHG)vVbZ_)A2QW+>8Ue@14>*~^l`fzE@jR_51I9e(d0Mwa@NTOCDHqmB@ zFSk}8HurY7vn?yxY<r!99dEzgtSNhKQ$@YSOiINa7EBq}A2a8E&aB5rJq|W-0-9*i zQ$=?h16?h8-8?t^QI{OW0m_@kEmBx#C2)p@ri}h(zz7F^{wCTu$Z`gRrBeJNo2uz$ zd4YtyW}M|bYMr0<j%e>YctfPco5o1LoR<pfQ?t`!3m|9ld(CUu1FG@dSX(u>L`HH3 z&8~`&17e4v)#;WpX5B1>`+IvtXIVy35d&p!Wm9@U_8q<Hve?!~vTsfi-KGAzc|iO& zw=b%s%oly`p9h3LKFHaZm<w0k5V|(A5E#eFJvOuO<#&+?a}x-~(Mh^ID=`LPiQ#$D zax%qYlXS)d&yK0;((;;WrWccWw^Lm@$-5hC8&)2YUD$RdnbP{7W!q-47pbo0&3y8; zDr^PwONH`UrEs<eQ{L`ce}ANVy%o1Ft~x3bzq`gx&_@)64;S>b{7NNZnW&%whex5o zVmfVLu<qA$Cz*`YBzdt_tx;05zgw32nyudv6-IbBma4McJI7|QRz+`M%ZyagG-RV) z=FRPz{|T9r!ki?z@qVk)2T7E>3HLBaTEiMDVxp7`8uqR-FRoXHty26&?bsmb&;V%& zRb<$(?#2x*2hPtvmRF%X?2a$Lb-t00qmJTjL^OY!NlVXeyTT<c!Jkfta*A@Opb@AT zr%pZhIcBni_a*h?Hkq;Qx$o^8ZQ;ZF_VXp*+dU=<zSy4e;TCkdq(7d6T+9f*2SeTH zqXPOv6B(N(^Ho`cg6|qtbo$o7Ce=(+XLoZj#rxoUj7@!LgX_*;-z3))lsQ+|9q6I# zUlN712`4zFVYZW07bAIrYgig1yBgQC44gopAa(|G`G%`eWGfdEe>{560&Td&1V17p zudNmqQH)#t_9M^euufdlG6y1V#;t7>yRA$qTg>Wvro`)gl~Zk%+s|6hGp-lesI?En z)`ozI`!y@;X0vYZz&y~;ugr*k?jCsi`~2>}blr^f&wSf^`?p5M0zYHKf0y$JIomjk zrUke~O^y$ql#mrps&AQ}D1FUKUg+%n7a*%yaU~Tdz*0Op^GJ|^R#Uy$^I}*5;YcNz z$;E@^qi{AG4X=4GV!0F~3L8*11>=ceB8EngtaS?LL171h9*WtNI!~yTctE|}^Bk+L z>~K&u;_*mE)PhYX>SP^Y7_k`4v)*B*kxVCRwMZ-(4~FdZVkn=X{6I8Z3PlqVi(*F& zIY!I)vG@O2{}-_oNLMBEQMlC97c&I=CP%H&aqd`^{?+*-6X%;~4&zToMy*)_{ev-> z#Ci{mKYj9h8ebOnE+e5>sz`OMVkzMy3P}@OtV<RJ5i-Zg1j~_dI9}uU6Tw<6;l`)} z6ij>~>CUU6*l`3TiMJk6<!~sQ@K%$B1X^BXEebWSbwEt2e@URo3_6KWChi57W2@$? zc!q27_BdE6^ik+u4*Ll9`Q5{qz3Fm+UKO(mIVbeV+q>WCh_j;mH)_zlClxL)2Cc8% z?c%X?F=7Sj4Rc3yM0*Q6N9W4~#sWfw#qy3uNIxJt8s(8{@G{)MzQc)FMs3AYW+Jsn zBjs8umjX#i-1?8L;#xGPs*Izzn#jV<<%v=iK*0L#7!EwshkiTbQ<gyWZ|S#Zty!(m z$wdqF?_+zi90kEtEbD=&?w`t-Bib-!sUV2I;{D^HMCBZ79PWSiE)M5~87^Af4RSn| zAv=p^y-Hlz$2cCfT|;4GXM}44&w5?D;caq2YDpiEt`qTQ1vs&coA+k46ZmuNELIA1 zP(x;%pV#k~gO~80D7Z?0^8>MI<yupAkwEKC>#$gEoi5jp^ZDcY@@cD5JZgIhZ+qpW zQZMpmSrvaL7^1Mw(dy<#`;704mDX8%b8C(5YAU^Qy1jppY_IXb;j%8DE%Mg;OZxN| z*nh5gxdNkuPLc8}P0#qz_NQ1gNU+gq(eehp3QS5_u)7_;JrwJ-?RA%r=vBRPvZ7vw z<FCr=`GVbTS9hGPM7KgDaB&OoTu`-#M}pQWzZf3j&l)PZe7Lr?xz<h|>~Ej0z}IzF zUT?G;?M|ayZgkqs<)zKq%U~eIL2hiVa*!0YUOwU{gM-)pWa_^NH<aW&{K&`~f6Mqo zB(gZT<nSiKqa)5NHOnM#gwK2vPahz17>h7$0a+XB597lZH=o?RxcMpo-9$%Q4l7=G zrR_Q?pnIi+u4mY4s#UULR+}v<8(!n+fQ~%5jG<9*T`G3pdtOfHZv&4-bE~!5I~(5X ztxkuy$_5p^Yw~HfP+nfy**V_po}6^|j#XB<>m>Kd-U=?!R{i{T@T>;U=HPi~>$SO# zgRo8frbH%hd_)$0V4V$uO`+-f<bsB*P%n(Cjdvf+V*0Id9w{}-;d7R~Qy-cLCrA6O z!A^Y&#b2?8nky-aL-m_tWB5PZyIClG{mIaM5DwZ8^x#tfgkoxP^>MrD;rpGq=?m~T z!yNSSLmj#8kVKJ3Is>*x-}e10jK}1Z)VV-A|BCT&mC^ny42a(c3YT$C9^pq4^x{xm z^f5xZMdZ=@XT=?y72)8<(rH(%*ay#v2fo;I`)#wWPEq^bJ12jQKHQANNBi*ZIQ*JU z_<bndjDuvWe`Fj!^6~pUIeK?|hI8Y7UsxT$<*q_DcXybO-_j>PuTOGCC$T>ai3xBb zhAW?5F;E`AZ{qGB6hXkv(YeNnr`_h-Coar-+N;n0h2&E*2yeXQFp4VZ&@nx9dogtR zBc!xgW8#CB_9mtV8Y{-A4|N;*qW$%kDi9KEc&{Jg1?U4ymOK|p#08-2yP_qxyP88v z;hV-R!?!0Lf?fZpd)*PgucQ@Xbm+@hJ83)AQ8OgV52U)3gz$BOkrmFD<jNR8f5%5z zu;FI6rpEan9be$>0v}9SOR3e?+FC#RVy(T=2%N4Szd3KMFRq@N(XF-ITE&X0&-PO4 zENw=62T3oU_Ub0yPz4KjIBC)IjQ2X}?P%L;5U&wLcuZ!9&S)D}Qn%yZP!AWLS`woa zi(yL&tmVOh6L8G6$rV03h&PwF)=bPTNMasK;kCo99E4G-o61$<O=YW$idPX_LIo}) zKzhCOV?<KBJ^ryaai?oroil{Z^6|DCVlQBO!wB@%T@Y7|HZIs0D7JKk=bw_3`wMab zV4f9AW{Pwg^C4J00(FuGMvkq|JS}tg;oF~6hxEt18YTMyegZ#a4$Tzsp83GkD8J-O zGI+hT_Y$dX^keGiW#GpoF1A(prPpnXS=jEr<aF~w;(Nj+;fjw4f>Y7?bfFPHribRl zC7@${a(!qKJ|**$np?v!a4KS9;9MlpFf7QvA1a6Z!;#KfgXy@xa<Jm<=c-Zhj8euO zqoDJm6IOPv+F0{SLKvB9Yo=DR*H>4U_S_?79KreW%SI>c_3r#I$DUM9ex`Ta3wJI_ zF;rcD7yOQ5E$*J|Ltk_LafMkCT_eS@eMYIo@SO@E79=<1>pJ+kOxqF<ksKH!K+F`6 zu|8;_{JvMfNs2nXTli_ai4SUdEtlKwc)eCSo5^76f2jJ?8)J`|I4BoI-Oj^3GwZ!F zFPrtnTFg5Rs<lilBXe_bPK3=1{1`KW`A60~b5Z8uU<KvLJO|5lf>RIy1fYv3HBm<~ zq2&})x17j*R}ru~heHn4`VHF&-F1)Y!EVtRkI1Q#8j}+m$s<*crDEg1!DxMswL40# z6iYTmP8|Q`_)szpC6zcT=ZP>6?)Z~#sVw#v_Yd|KbEWfF=cTnAHheLcUf*1EZlxr7 zJ_K#mX-A#ntH2c|lofc_0`dIfVm>dJ>(yMTlmnj)WfGE1ekx*CBiPtb{={d-pC2Rj zadE;~CJ|DJ-3+`XxVEJlkw|m=D1^p=&iL$89H-BMDA<Raybm2Q?^+VH6*xF@oof@X zp9{u95^8!|0EFod>XXh<!W$*sm8dp?i7rB)Ww}ExYUa1<x&!?r$ob9VGyG?qY4Lr{ zW77`sGh}4_7Gp@@*3ynz;RQy$6-=zWl;put^~5jc@I*ZoEB~>2imm%-;pvl^z$6w9 z0!!G}ER8u+Z4`(|^DO9OP7jhxr<FwFH09*Vsm9qsG80LAVYi-*l?1rG9pgC@tJEQG zN(t-}(s9>pqx7oM8$%xV7-ch<a&r~-bdcibsncLQeYUT69QU>yy(j9?1l>k9R%WkW zEu4;l54~#dZ)AEG`ZP&=ez5)y(TleT5%E=ub5z7G*W)a3Tus8pGgqa4E$`(n@8u40 zK4Z?|N|7TLJzHY&viM29m4@~C-^t|SPrxG*q4)oQUhqysRt7mZR6Eg8G(S6OdVp}d z*C##OVREtPs6|(&$t06ehyP`o@b)}zB%e`G9LxL*C_p#Lm5KZp?-Ni5eD~jxw`|1b z{Lv4fmwX}#_i`~Xw>$dBvPS;Yj9I@hMTd|Gnjx8Vl0_%?pUTGmm17?1wzORT<w%j5 z>JiWaQU^;0Rc?dpfsmKj!E*DnZ~=2njTAjmaz&damkisazTShZOs+P<Tlst%_uMZ{ zdWa*0PD_nQ62EMo<fFxuX-Ij`+jT|kfpN`mBGOfE1bpZSR7q&tyqJTd>J#c9$m!Z! zIbGT7sLt7GqgHNO&qT?Q`^sTZ2uOm5D?;Z-0f^E_CzaaLdc#0Y`V56gctKxtfL}<+ zTdpFxb9i5Hsekbq8DHS@_01|a_oL<IR=0}<RytFqn!H>tNB8@eIkl2gNqG!B-&m>= zUfvN2AkWpM4aNh9humeY9<(p(c8~}FURt~kYBVtOsbX~TAL9Z{F|hnoU@hsjPE@vc zu)d*MWUVc3NP(NIKHrR#ce>%NpVXr`$dVT60MT`2Y%Kn2%jDoiT<dc><f9N&@jJ3u zS>IFNq_QD(1MeuJ)^b4s1z%mI;C;BDAfUTZQ4wwUr^~NmDvvwq!rR{S$JB4*0V@y8 zG~dH(=2uL7w>?R7uqm|ZofN2fU0q#;jpb4;-AZ@6^L%ell`kCGf9#c2xZ5%*5O&9x z*?IV#Hks3cPD>yUwN>w5|31DIXsra`=LqNe>kev}p3V&G82OiS&1j{H{7_jU_6y!& zITY$$i8@SJ1j<LDn7kZbYc^|1e;Xt_g;c;HX{R}tn#d3di_4>ox18TU961a8qkDZ@ zm>kkkXsqj3_RVfJclVlm{O>k*ubW@hxgXwzy5g?>8vPSJ;XCAd{jXeOv%2aF5);vg z90JuOs~w|+>L8!Un&*EaC?_93^5vtE9pVn1{x(vvEO;{zE9g4~#K{h;7y=b!iok=+ z=X@{QK}6d%sRDtpq1ycp0;<p<Cswx7^V2})SieL<5!1wO;l_IQsUW}S$Eoy*xE?b% zuDY+y4V5`LJ?}=&m(If->yP>^bGg+&HQhcDfO`J`wP>9ZTZ8$iF_=Er3+P1-<0cZr zA<oO*^&NA7^;e7_dZ^V2Q6-)g2~^3XwEth)-aoXlZr$(G+IvgZ+*kJ;%~&(mJx6Db zJeF<Ub9Bzp`;KO;-srqXx6!>-Zq-&KYN7@a)FLh-6~PQ56{!g-n8pMXL=dU}a4)8q zR3&O+8vkK}b1=o3>lXiEf=gW(!f@*zOfY458N!^gw5OkEZT<3(nRiapj>p!ot-aP> zd#z_ZKfcfR0Wpd5pVibK*nkt~6%MA`XP(t4IxVM!Qfz#7lqmtxA+@fbpBf5M%S^W+ z-Iw?Qxlc*<lvyT}p1!(LoTLX5e?>MuB}I?~6saB;@K|qzdY~4{1mBXU_->ta-F5XY z$g51KmiT*+F?5Q-;AJQiQg7v&Y#&eG1cQZsSt{O5w)f<Adql~J_I|R#z-qO+8u)0N z^@C*cpnjuOYzWui@-(c!?%0g?%&EnD6tjSA?;b@c?ip4}c83oxsGL(0qt-vE#^GVZ zK6F08(R0{1bUrcumfiyO(XunjuY79XddK<Hxn@V#*Ks>kB)qX2*!|de`b@Cj;U6k) z;?i^Lk>QzpDBOrdxvkE6JsOKe>yj*;Ywc@Haj+ch1S=|Z=sjMm?zeJlm+qIDU^E)c z05ubOM$)N6N9Dl#x_doP@t)Wh2b%Q|P`|c0{sp$w6SV0tUdrF6Yf?R&J&#Su4_s3C zu%Qw`lFABPgjI8%?aI$)CG0_qQ;%l#hOuBe{>hn#@U;{mfIr_`3kbG1P*Z{S`BC+4 z?{&6PT`PONWve*&#J-eI-l)ihT07qZ;pcqre!Pd7!5%7FYqi>_ZuWa9t&~wfQx%M{ zytjc_!ZEgY_=(<Y{<>9W-fHF}P#eU#0BtNVd>DW5#tLpvOvQ&FY#v$9AE2NPx*hPC zu2Q~TD`#`e$}V2@N;bO|FR9RJpcG%rF>%qFjmL3gwbssL@MK77C8S71sNlM(WHqp- zLe*rNT9(>_!~7CE^+%p9_di3{iC=;=F)KVzniz?lGm)^H%$oW8kHSm$BW`zoXDe;5 z0tR18Z|(40HO#nb@Vtj$%cD?{EB%jSnN9v>VpnU!XAvtA3SAu~ld_JC55Hn>|3~OA zUkV-{i3xFpxX_t6PXJJmJhtF5xNZR(p`Ej?SY3jycx;fs|7-+R@t7MYZ7Yz@`0Iz~ z2X&qW)_Tya_<K=*Ae#(W?P|5<4P-KYtA22CxU9K$8J?Hb4R5P@eDvyKSyF$N_YYIi zrv0{8TwRMNFAqB%zBN98V+z;C%E7JcEEQ3NzBYbpe8-RiBcc&W4wANewXr)Zko111 zxnGEFU-tG3!Qe>?KzF6qRZ;ZOXt!4BNkv-qxVszBM{wLq>m<0_ExujjAa;SX?%G=n zye@0i_2CI}^?%lPY3{-FqG8S&<`l_K51&Fo`e1tY!Ss@0K6Mwnexe(Jelf7I)dKUY zUl|?emGM$lRUwUuT*uSCoTiL&yF<mPZW`-(-LBiMv;uPJto<K(TFeVSFW7Jh2}0~A ztWoTIo>r%KEV3ijP>7pDGtobG|1;1Mi5qXDi44yb;auXSq~y9*HuS8&HStFafVE4l z7VDx>BkI3VE$6a_qiNqEI(4+ZRuj4R-!+!S@g@`g`jj6|{ch_>4%Bnc{_qFZKLNw? zJ*-&f`h#b4@aI!WhQ|jp9^-q;im3+%@F;mN@wM@k_zg#xe|L4WqjShQo2zS^7ElXf z34u+kkh61uXflmW!PV9e&Hpyf+xlr8SWUhFSoP4p*l@nFw%Xg`v%+R0qfaJdBkRwp zF{I_1M3cmR9*KpI4-n=nE}^gHt*6gK@G<2W*2HsnEFbohr;xv6%>1E3m9dDc_{y?< zn62dYbCp!CU1+wB;!4YmJBP4eXcpSJWT3OP)d?6ImF(W;<{ti6?N6~BAGF4r4CHU( zIS^lD*c8!lF&m~HJzaV@MGi8-!ZGC6h+*PDoKZVbrPr^r(dENHmtw@-t=Fn_;)pWX z9wEOtZTGvoO*_yk?>7?uVkYB#ZDq<Wb=lk<^E`;}+1abS=+|1dO!j72ht{b}i?`(m zAhPI9So&!_B?t8hqGrS}XAW4o5_eT6FK>12w*YwFs=!8}u-fo%6a<L8vSPe&h`G$d zT|TO-Vj<PeEvp6^eZ^j@u6euOL_BM`1Zca{WG-+GgM2?P418gYFA{H=fTZD^cAl_f zAPqI(P=cfL<Ch501?$x5O8?9mT;sA>ty5pRQ^?h;{pj*)8!rNkO7*(&!oflp7+*&D zgDV)0C$k3!*<?H%1fQPHmQD|{X^KZp*kgXi_6ZvC*Q_4B15bGU7*wVpRhdBTI(qQ* zeMh#lH`C?mC-4V?Mie?{kL7H?*K7H%XUgTZvQ@D&g?hcyXcRWjld1MfEn6%_L&x#J zdZV5zRg*b;+x_y~Zd`P(dl38Qe4GDkjqL{id)%Y=>kZ(B0d`8eYN=8_84HGD2X7f? zt>e2B==gI;rGLle68xqPHUr#~=s*DY26N=8A2<CX-A9dBa08YSa3!?g0f+S)UL?=z zK}Bk7x2xOd)n-F2=l0jIh?a}BX7zHjWdu9x_HtyuSV^s|=Mt&JLFL~ppEes1x$Q3} zV@K`EPN`&PHg@gPefy%BivTw*H`PUOePcaaw3e5*N{MPFA5W}kzoNt0JBwW+9>w2> zYvMm}{Y982$Qsv~;WKkHPuW8Sh%zfAFY-(<yL_m~A%oVByf;)Qkl<k~E;4AJo9N85 z;8>=pxP>L3cs4T!%42cXGb2gn#$njsOca+B7hMWKbu1r6M1p53*pxf)_M{mztG!sR zvHyO*)+?0G)!Ky$pTDWSuah~<mZvB;^{N-oHuhEO)rs$PIia$NS}am7xPL1VUtMo* z?{wm+P9~DAl(tIt#mQSyvzpD2eZIXO-BjILuV%k%iLTbYtXaFsVE=*xQFJ=pRX#rm z`(Ks%o$Z~SX1-cZPWY!~4Ly{Yt@c!6w>`s+AsQCt6)<n-Cmc3Nf(87NB=FdT2H7}t zo<?6=`?_MgfTkqBhX}lY@Hs$p+dI{^wK0q(G_g*GZAU-1bz&f&>_C5iP)p?7Iw7H5 zbOjj)`&ZciHeNwt1QI-jz*H%y{g6_VtVEpOvP>zo%G4Ku2pskP;sB;P<@z-V!mUi# z?Y+DzhmFhrTcU2QN-I_1@BSsbVZBoN2cCA#uC2BqaVlOwM^?yZ`+*M(Va461qO}Z6 zC}|%aQIGYKFNh(<x`Pw2pn3QmmPHA0Fe9a33mDdrPqOJEp1+!5=F*=9oDpJZ3%K+? zjG(CeEL4+L_TF?&=+)SI$?lF8qi^;qN|Fs7A7LM3Kb8$f!|reBM#4TkmTnd(sNn3+ zC9k)1tWpWO*~1ueyoDe^xs%aIjJSp#!*6uW05@_^<OG(cjM+TO9*`F@MaLs&Itnb# z8}vdq2h7etGbpXgaG8SmzuX@V9Gw+(9?Zg*I0P?M;6G!)-WH|M^N~s=Cx#8}!0BtB z@LKo$uyb)px14<!4Dw4Pg4RUA6N(4$>8wDCgzSCji~QO^*fP24(lfKv&og_CH*s|# zu6;ebRVldBTc;$3^7jkBXA$VjRC1mY(W9oOwq}&qPRl{B-wcD}!<{&2pL^Kl9^PY@ z!msr4_DyM><;D#ZAIj|gkMttYJbYcNP$GTcaQe=jU0L2=1_(w^uEhH*cN!O!Gaeq# zs{3DkZhxlGWg&z{mtFc~e=Y_dCY(%rPrju`zOh4Ump+MJ=kdhp)9>hv_Q24^My}h^ zj1Gu7dF{|qgA<;@`L!gIx=%_QiJ@nwLJ*&bU>pO>7B83dp|SUTz3yNt`&|;B@UivY zdDkyts&+o+2-<dZp|{KrsnxL{Yad+*m4R)InJ^47F?pXVf;UR=eoN02kWNi0()XlL zljLLfvi&_-!V+#57oNEj@D+Coet*rs*MGNTctt9TJS_5OBCo#x)<@+$U(~nkYxjFQ zhNv}ou7<gTi^L3*L}vb7Sdt3TGl@wX5+0pm)BUj$3OPxmaGq(Madt*h#lEA+dcy`} zp_w@6kqC2=s0WeFFpCV4?l1(qUE9jP&ES<{kwP@lFDIgfNUWsFDpxHitBu{aEJCAx zcqDFp*b;UNW#YJmOl#Skah%MGCg;%+Z}83ALAzJWZ%ClOfbx`xY~*WZ;dtF@tanBD zI42`F7KAIV^unt~|5~|Bu3z$YhdySB$~ZjmE_GuUQcMFTgPxueZIbknXOh}U3dxXF z@LHX+{$9D!DCz&@Mn9v={Tz0h-ELEOb_V1U*L~CW_VD;dxshr1_vPRYsz;N4I&(+j z)>22}dzz2u`*73fBHU~lL&@UAHiRO_*xu>BwQJi2byU~}icoPt(PQ3u^=InXjvGWg zUJ)(@5;1^HJJ4WvQOns^#7n)jIAkPS)DmB+eU0v}IHgV6pT$19Py4e-JTrK#UN`$& z$3<$)*V2yC+iR1z%=`tQovE1OTwFh~&s686WVf+(JC0GIgmsyq13nbOp7NK=m%a?@ zXbgG2xJL+dX`73c=kO7er|B*r)TfH?@M&wV_Ll|C@oYgvi>w~VXc<STWb@dW=Y+$< zIy4TMFcESAGDCh0lje-LqtJWMscce4&qa+A_Y&@-VN`ps@rsH-TJaqoqE7gV#LRWX zdw6WIl!wYg+h!VnAnn5jDC_KF?Xv=Bzr6!2sjWV{&O|3a(gUF~W*o2g;mNo50ffM3 zjDvJTF7b0a!ni42*J@xN%6QCvTVEKdxz8IBxz^9@ioHiw`dj0IhWhDyBYnZC`I$o_ z{n3~Fn{=v_XNYdxug~chvzZj=Z=Jew%jlQBexvZ4bZiSTexqOL)ZaQ@(l6|}&mS_~ zH5rB9v~zk@-nyqmhOhMzf5=A`pIMk39J$<YkptGt;Yf0@$}+MFMAArX+`S?v<+|7= zj{j10GQl1>QXK{RTB--yf{C;vd)}!os|u2RjO`;5d~6$aB(dK8SgfNAlmm`=B;n+t zSyZw2&>AJ?H}uaqcA4aK4Gl6id~%m%CMouxG>$d}l=E388eul>6*As_<u0<{I2=zR zneN!wp3$x;YO7QA(n3uT-AtmIlJz3A0+y@Lw8PHkQ#>|aO%9CUh0q9uUnzQ0#O+!u zojCX5Z+Oz~zp3jT{TNS`%oH3ZYzCx~MKEx9hHq-|iS=FeB(m^~Fo*T$6y~|SaHwdE zF2bHPwvphseIx0=ZTFJ(!QQb~NVnyw)fGCLMA`i}OPl+fCH=>CmE;-uDBk_H#gi_- zt97ruwLK=Ik^2@x*FU1aKR{~{t?fpSCGC;UKf?miU03&UmJD7${Yq<|D4rVqHc&lT zn`HiLAJ&3gOOk6jvezjR#B;OK*bQylYtAcG=Tp15vMMEnq}I@?kuR=@4rUY3OGH+R zf{e(ykH%Nl>-o0oajruRF0miPyES~R3h*?7@$AaC715Dcaix$;kjt85YREht@dt}8 zBGr0a_zFZ1WvMt9BI`na(3UZ*h?QRdcuq8hDF_2~6B-{nB-y$mR0?^bZrs$L=)mcV zc*NA4@I9cXCZLES&=!25#3l9HeclG7LG)a&Bc1>CT~HCSj<Kq5&fXE&YHsL?!!DeK zlKly^vf%h1T${^%AN?fI{K|PSPh?)(=N6zqvUxMfb6HwrrB0mhqYPYlO<esJ$=iGR zYN=@NYFS-C?`YAxABqRl$qSWrv_y59nQ@3&L1Kos>n4e6>dOJs?3d3IXoxONb|bj9 zE;w4bN7%_&dL-=jn*FXn0S%r}kOvd1ou~s=qkwAw0ZA^e5F`i{1j}!b%iARF(;tWj z_^#idkoE5ZqiRVWrypD_(%NxevH;x@S_gSF5BLZpLvAo#2UCN+q3+AgAnn-GkV>QI z`hqS(-xq6?{;3zvxM&_74ZV>%D;x>1AI}mdA-788AUXdpk;0%twL(aeHZa`q%%kZ? zZq9lJTHvf(EUj&+?ABVTsQzTfe#QACJA3bxw|jU9i@`fNm*`g>&h@9rvG2pd;euxo zw~53B79x0w7l;@?R#t?V9_5v03{!K2;ISkld4c%R(s8NUc+;qs>ggN?PBfG@(oWpC z7Q19?DZGn;K$1aKuBN}4t2CFlmYbCv&#k}IE!AqJZm3j?=0nj^FX;r7Yuz{H;=68* zH7VwK6DB*KwVb6)NItu4;Wj^QI{khz)g%TgH9W(N15pC{HnNfRI)k!m2?Bos-zpF3 z@mO=--nPhIf#IAAGjEe1*{>OGjT`!lVPeJ6_((vrTvW8#QIxsUB|N!ZgE4d37M~87 zXvq+l0+!6vn?*aPn!`r=GRuU!XjHQk+>5T+`MqH)rynoaDfej&UtEc6{SlV0ONm1n zU;;B=Cxru_6;6ckk~uRixv|d?ngSN)cH%Y1D<)(M`reuzYs$4u`NhJ9x4W7P>^Jw; zSJ#;%$$jPD3v~<SWU-vQYRE9z)o7*m_SO1^>Q**mp;$U!2q)~GdAJ$~gre|Du56c! z_OZRj8P@Dwzj+aehm@Ca=Vr0oE7a=8<w5|O1-sr{mo+o7f6wYj-e>3!vVF3G&@J4k z58@|4_(_d1)CB|kY(kG1dvwf~;$qcSnfAH@O`FsvMouDb=N)<lJL+fZ6%)4gr}YZ} zDL_&_Q^OF9WOqVNJGl@JKNcFr{NzT+ej<B?{D@`gU`r>HY6b4f*lUTbkyIuGAY)lv z>FxK4AomeMj*fMWpJ~8<Pn)zWKewuv$jy<x%Z=O9Kzz!$YxlPJ0i6Wz%CGk@b<zCP z3l06m8<ZV?YIkr7%8HbGfsf-_`vI5W&Rhbr9`xXM)v!fo_%)S4KyNpD@tzt0(z1u& zaifEN4BEZk9sHM;w!QIB7V%Gd@CdTTL6EY%K`5$uble-l#*|`Z+HX@-XLgi<U_&Vs z5hkns6&jYhElnw02>O(yJ(t}IA&L%Ljvr30Th_P3jSyr%#@nXnpZH@Pq7!`Bx^&j; zqPVu5h%;{Pnfvag#ryi&j2d347M8$v5l;lz*@2T<yOzQ#k$yWYPTW|Nqv~e`<z;U4 zI|DZs2ZF)ctF|O|FKgB5kDFcQM}pP{$2BuGFIs>uW<(H94Rsc%T(}jIrzm!2gk-)6 zN1N4czD?W5iu+&$gIgqstTi-}A}jDefR6c+WQDZtUS3^{y=ulccDq&GGnr6@qI@ga zTXzIAlf{0QKck+{o9*?w=^FRn8OI}H10lSHPVH&%XHvlwq?=44quI4%`z0e#I_`T< zj&a>0L##SjOWADbVE=;hb6O@a52dC_5DnxxxcmQ*5paMtGvo`(#Dm;x5rPiMUB><L z$bjXT+r-uwn1RX$1yyp~`Js#((hKe~NX_L_Vrv-V{^ynpHK?jc+0IFxYs4l{8VM+W zvA7k>W><<tRSWsjQJ;Mgd7woW%cqpj9k-M5-4LK7^M$A>_Ns5+pCZ>ek+q_#k_on~ zPARuyzsXi}b=+CCdafGZEKwg6B}2AU@>ckZ+S7?u(`{T{k<}v*NHP!64F}il0Wr4V zT=(_s_)SMa-MnsTe0)LRl0Rn@?DNSB_dvfdSJKn^nmqfB27>&}8yAjZMUBD&_xqmY zoZZ7Gf!2U}&JDW{5R5=BYtivoF3!tR)Dwn=<x!?iBthOfS<6lqb}}1@kcAz0ItnC{ z;}8%6r*e{)a|x1{Q~rIQBrm%}u^aFpI_(Q+QilDhCb#%#2eirvK%Ht(cQ)@na+ERM z{Kpy>+2iPwCi*tgR_`Sq!y!wV1I2}%MM{PQ-j^gtgVpXt=jGZ#SMO{xFQdLjXLsk# zPGi-nCJ#<ZJtp&WZQp*AxN2w(_MOjP?obtMvt6w1M~9#&ku?sdy2*_DkyuO9Y%1iu z>x>_<lEk48!76~BXL@DvC}xx5E{%M<5L#UoJl%defD?x8uDXHkQ>?GQ-a6G=5*fn| zumR>Ou=K5Dve=3ob=x)k@$rKw6+B<F>s|q^g@>Kqw<-g<Jgh6Bb-j6AGh&f~Zc<%X zSCL?%$lkz@#}(_BsG!j=#bU-bPmFC)v$8L0|8DP_M9^OI`xPukrYjLt4Zq)B3no;^ z-sxBE9hEmW>|G;ezaIFjM8`L=AVI+DHa^<68~Xqh^(UHFe^G_y%>Bx@_u<-gkK0!t zzji8;iiPrt_N{+R+eh~6{m*KC;`&9$#`i4OZ+`Upo%U@@^**N$D$IyCKdU2pZ4keG zi5{Ts4Ch|o6Rsr>;{WzE7<7dJ`Mj<eWCDI(XU2V*7!zjQw|2$-8TW<Rk^IcL;n<%? zjL8@5iPXWJ|AN}P?1JW=;bWsu_TQYG5$sRcM~45z{1ugN?P8MhyRVb%Je{OEcjVn; z_lZ8o3}=~{pW^=_+6<?WQ+{8c(zsYw{w^DRb=iK?MQy2`_AlW)KQa8rr$)d&RB`w` z9={2{It{<me~m5banN9ax*X~}p|(|5<Mu?x;8S?Pt`>0kwibuv6H8dOh_sr!UE2+X zdX#^NT6?O_{+KoPVp+GR_P$oz^$L7F75DYuQq6ZiGFT(SbNU5Ssq2o9&N@BIX%{&$ z7U<&S$yd!(@6bB4DIwmG27=O7<9ai_l$oXgTelO5NP{ah$MPnw<nB<Po$Nq7AG2R^ zX3rcn<rTA2WIsUzC_WZhlkLClzs<^b#9@H^;yZ51N1dPLYtDcDWfe1|G~a1I2A&i% zfl_@<%QZOHOUZB5lsw~8{x;{c;0t-pC_W~O@2QT%{ywZ0|Gq2l`j26e`%h_wZ9;y4 z?k!S>2;1!$`ND)C;ew#J-t<H9ERZmw4_b=MED%Mf?w)`{c>-ccxX>uL%sbD=FHO)? zy!k`5NNtBppD&DE84LxZp>W9F-)f)3h|r|OfZw-g@1Gx+i=qBSaJjjAa;XAmjih&H zr&#oE*wx5xIFm1h!K=cNLT+fLRF1TLQF1)9iOh0y8y1$0obhTi*!3P+)b6ETVLTdy zQ?9?+YN^zkKS0A?yg{Yra__vifBI%?KN3wQ{L2~pZLms(%c_6b-j4<<DOHI_(5cJS z<zm)m%PVXfp+vE~X2;^?MC#B!PjsT8yxdLf;s!V}hl@Erh;FA{8E$$2Rdb4RCR0?; z5OK3K|9r+hGd(};JTak#Hf8VOXFmRH(VYHmH9yUpWE;)9=kK#H=ar|yy7cuM0juAn zC`8upQyFMzsIs84KEKM4D)ctd-zC!{N2aS4vfolj#22*RnjPn<{YoDD8+`t@zia&= z<t|!&YuDbURK>cbmMP$n_a1n?d)|I#LsjMJK8L9I202K}NP->v*j>JQ!ycFDT9)xz zl{Ysw`UzueqhB_2JU`;d4NRmwOsvkl{V?rG;xkS%tE4{d)ST3`dWfPuBh%~48JR;; z0Az8&6i}czCHVuLsxCvzVQ>L^G?gv$27^rlw-Qgk`T<F%JOJbJ1Ox9jtyh;TWq&Qb zS*}q%BN9*Miu)($6ibbS6VX_t)NXaWomRUPiA59Ph~>54v>I!fSS-6%Z|&BbJI(s8 z`qNU!AMynPiDoS14S0R)_y{SMm4H7SA6TSWEu>>%$bI-nag12HP;GAEZC~wx5U6%m z?X=om+rGTqUbDr4EdJSFxl@+lt{#Am`8~97VThc<<oK!5Z23Ze_CP)RbHWb@ynRuF zCPBHAlpqv>Vmy-BfXhcL67!x?sqMD4xwX~a*h*5Ar*5foG*(Q6VhNv>eBH9T>suQZ zl|8mA?L;P(jwXG+WEoDs3(NMt**UzhyqBtevAS-*Y8k11a>Eb3W<F*mSKf6k@8Rak zK{}E28prueGG|2szG$Y}Yf&-Msmt}k>+q9GwzpuWQQX`DeDdHqoq-NiV4$N&ws|e_ z8~gBmaew37K3AdhjeV<dVsD+CfWg>O<r8_nWnXS#914`0@ZhCE9ks%aie#xYSGWCk zJ-^5Jn>!q8mnXjZzB}<HaJZLSjJvbHO1%BIk!^x_nZ?SJbPsG@yeq_5h`{M63;h*1 z$wa?}D_j7)#cWbiGVcQY4k9YUXuSEtj)9TdS%H>Db?$=u-ipgRaVLixVG4OZBbt$N z;BF6R9j^e9grCY=PwzX9f;qF>JnNk`No<e@vkQ?A)IH8$5WEwwCXaLG;lLLonYL0L zO0#3!{|@HsPu0&gaE69JBMID9Gnk4C0IWN2Bo^jD+OQ^p*F5pyHfBDW0LFI8cs`7H zDvNVu@Tz|zuM#i^^s=G7i@orH(GKmO@0|*lfc^5WgNI)=bN!lpB_@Y<_+!N7n_*c) zt|RuT5cg8hQ(x*eq$701TF6qvfRlUsbH|#6;qY6ZJC!(bm31mt6({#j6`eqa8nQ$W za`LQ@cwnSpig3S(Y3kIH`s6d6<LtyYr@5~`X1ssy`Xi9Je;Ipd>W6@CNov$m?Ah!L z354I)|D~DfrNwEGKqh+wVqoscoM<DkhH7+>?6tMpWwz0-saXF2cdB(+>s$>AYF)cB z|7NYx=xnU45RUvn)lILpqpE;o)*IdS%1XIm?=*aE_siO4eLqKS7=7)v6vbgadcDEm zrjdp$&zsxdhtv9)1X!1!e58tc>%7^jt9-+slf4mcDe=RY8jCAvq9<614s)giRPaYJ z<q_`UEF+rsZ1E}ADk&|d3=)sinC(9{culND5{zVhiZ@Ud0O5-3kw4_g@XPHI2c^vV z_YgMlk?^Zq&L=%dR@FJ`@8vsMx1w+2Gx$Q#Ih3yw2dOx!#UiBQ?I0pCwcs-Fj|!Ek z#+Bk7bp>lHEP!hD%-%Zsy&iF1Ea|QXgq-bKUQY7S&Kk7EakX=yLq4L%joO;O-WFC7 zOuWy;1PwfJ%`8!#OE-u{K5DWM%)wepOl+Inl29P2+okT8Yt%MwwB?9DpF?5xO6A-= zdka=8Z!SCPhT!)G{lKl^T=TpGGZPdfy6Ej|UfF5v>}h1-?n>|E`ei>Bydi~V_;|%l zVbD9T+_`S2J+6DQy-!^CWV7*)UHWAE>fL8uz1|~6xYap{O-|xghqDlZcV>Y=H1D%< zd>p(gU<jsR$se~X-P2P7kA*w&t3WgX43zT19CL6$)W{XSjbNoK@J;?b&;Q{5%Se(( z%*YHpY{c1zz8WD7emJGk**{jKn>{2e5RFnaC;bC-AN71nO25H8DU#e{0idMz8>n~f z&kbwfq_L4Lm)FZ>b(-2#zD=vreANucR`;vEYWAvbMN(UpLN-P5uXqRz!KxfL!lB^G z+L7Hk4!*KC3Mpe_^<s7PLizOHe<|l$FPp2I_S?;DILg^t*1>8xTlMuzxza|fl!}Ka zP8J9yv$bl#S4dS--E!lo-fHAaDp}gt-6-il%*|hZcx?VL`?p*_yEi^*z~JOt%s!i% zTLJ@#_<LwPAPP(dztKXL5g>=PG?}#?7m8Q7X~GE;+-av%>|~QN*9Y+`iNCn;{!=zf zN1w$H2%7QPtf%v9=vKP|XeZU37jEh_;p}&HBtRt=BWMxqw!uCMg7w~%i5FG?FXEFE zc0|wPK0O(~C+&`o$7WM#^k1l-sOftiHgCz-Us<vDRCZ<j6*-OdeDnb{%r{OcefaQq zv48)n?2Pw}c{jKwzK>(fgvP=BS9^Q?=Fy4KWZTr&Jv>${{O@B(d|zQl$d{^@h|ujz zNR@_PHh)X}%DEiTjqTBC#$)Gq{a2jhCcn@0m(Q7O-@%}vt|0OnP5!&;5hmjT`Yd+| zhDNeww1z*W6K)?X60s5SQqyqh`GY0qE}H+8=Mgg*l~-QyO?}kNBaV<a^h_3OfG2m7 z1s!LKRwNyP2{r61#6uxpIq8RHG#m>hQx&*RL-E}5S~{Oh#VGsd_xZz7D;XiH+n))9 zBiTs68^}>uu2U^Us8$zC@EStTtk)k+2g6{6$x#VLqKQKJZpI<|&?1>AVTD89aFFVB zxTLfGh%XTJNnJcBPp!++T4~jrEGD42gj?PhidXV#x$H~%D9#%Tr2>Uwyig2>lJQt5 z;76Sg2YfUf$tF_ua3<^v`6J<Wd6|1^e)vD|fBdibKfYjXJmHQ!dO(T0DJtJRFz1Qu z8`D$9^z#RbNXhiv7itcCwC6{qOwhO1SUnBIHm_FnLu)VYTQiOh&+LP}gF0o^bGrxl zQ|-p_vE6_NJ*{f|q%}Kr8>s9-K~YETSgqlW3E-9~sW7_yo@z^<n3L4XfrI`#c%2<S zAi2YcPhc`XRqkQwQKkW@%p*bd{3#ILsaYH?aAZqP+o{l0MKeBCDi-?hd>ONQ-fHAx zFxIAu%bm&RryOMyATzwa3{0sx_hZ1?v1lP0r^Me{es?QdPi8ygr$k8PLk=4Dmo@a5 z-hL&S$4(xd%v`a<s9=xLg=k1%ry@&dzSOf)CgSwMoGC_xxPq9AOVb{v<Hkz8m`g^( zNS$ar7>po8Qi(`89|_1in4$HRjq=KRA(%SdU9I%i?2Tlp(kNuyk7LnHGLuNg`dv6M zyMZi;PnB%47})U^q7kDIOD6a{8tc6)sdw<wR?x00=>&AQt}vIOV|$LC>BEa7cml3O z7dS`2Q{J3#+1%2sNll=z+cKfqgD6-%lU%*0q$XR3tFKpAUn}qHX7jbruDm`isg1L< zw-iM@w=cK1w-tUj6@F`1V0y!&{jZy^?RUd(;Abjr*xOc}<1jDJ?Ohe-XdF1(Z|ut3 zBb7hY{d2wayaQX~2c6`Mv^MYwK+HN;|D5{R8>IYdsWG=m@CFI3%#`dMv1GwGrYwLw z=~JjdzoV++;E5;m_Qv3y#^8;EzK;x-k{Psv=1=_rO#e_6X8;ZW`#9i_%ae%y%gca% zU)%$s=>ER3x!<p_7t7p+M@sNPf>n%QfiTJgHY?!Tg8+&IF`RM>vQ=r3_7xKC2Xr0q z>2nNohtg_2SFLVTt5;hRS#EB0t4(*YS?z8#8vtsq-hiobKOPcVZCA-#Z&&SYshu5- zWePRflWK)bEV>;I7el2|s2FA@IDL%M$1j)%!o)@nBWlYidjLV~_k<_w^WmivEkSRq zB3*?cNcWXVK9OQ#9@B060#*d4+d19i_nlFXEk8Xr|Mrl61s%{R-spaR`x9Mv8R~)S zrTKt4^4l5(rR^e#vZ8KLi5!x+Uus>xk_BF6J;o#<kIIH%ig(4oWRAY?=h}nZ8?lhE zB?gp|Up+S^WrAPx0pVtB22!09i5$@(On`5iSxF7ZO0tK&i^<?pqw|S3+ff8@MG-9n zAp#v0E~f?ECpsh@6Wc<%CCP&1>Hq~Q(1L5?y6$mhqH{PgN3ID3*#n2hQeTp^F9|-R z5%O=`zU<gy5)FRHMIV(Ew1C(OFA4)NJ{}88iOr&qR}Zu$q6%^-yj6Ov#>YP3*zvW& z6D8Q3XEM}-%aSh+FG|cTBK(tW>AvY;xc(}wNq?NSNDkr#3A>L{f9!f`{E~Ys$Lrw( zAql3=_+^npilFW^Bb}Ul+&4X1!ak-;Dxshme=LK{Xj>>)GP;bH-1>>{z;-6rK280H zIh?4{9a$=aE|EW~J>bZviSMv#^!RePjI18h!FgTu8?MO5H)iBuR;mXw_qbr^&Wj4D zNwj!$@<ztjGPozxT=acr>UflJ$1_S`P2@VpYd|o_*YAv81<aV?tr@KYXTpsp&iEX{ z_ohdKEfufGU=`7}zPYl9My#pK3i;j(*53;)-G*(;JfEDe*IS3(N?HdBKAyPa_P>L# z(`kSDsrfbTrEwP^9;wEYgG-QJFi$FhLSnF($K&R#y&vFf5{j{hgT?$~#oQi@gtL-4 zl`~UG@zD+dd6>Az=;?S8M4UX+qtAqs+jVU&>-jdEYqAg&f<mutnQzW)lP__qk!%3n zgn}jdm2*?6U8qs-&K;#L@p%5s3%15tD)JX7-^BcRDN~t~qq@r@(`Vd<teI)^DKJ@c zdXA9F1H2c&fc0PNu|&qs&SYAjon2oGUiqFZhHJfZ7`Fr+tK{&Bc4UqUd>O%^7$s-5 z%kWODPDjTZ=Bx?xqiX^J?J)V?lH4p0J?F&rqUE(-#!SGMGN^-scf!IoDbX$V+hIEn zR~Z<B>-eybN_Z-1jm~Ut-jep$GvE5nTe4qlonhOHf?c@L?pR`8+YKh0HL`k@4R?m? zO-e?@&3!_2XQxfsCxjvE`c8494`2iIlw{|CfOdSjGW|xY(PB^s!^;uKmr)y1>E4lg z!(HXp`Nz9VZ}P&lcog|1>2VV$AD>&e?DV=H>_E59JlK(LomOv8H%>dz=Lg!#8IS#F zx4PMYcEWJM`0N2LUK^a@xDU3n8;y;xVK6?<a@DfnW+PJmvU_{%MU*+)-nX1vT-I>K zJ<}e~>+{P5)LEn+XAxTZYrP+Al7a=D82QQjI+!_=yCzZPYp6;L6=xT{F*M^X^+wMp z&o9}Z`rZzA*c&Hj2OsXZx27dV!D#!v)x^YocB5T8bCVi?*ZVF6%XllUj|wUfzL)E> zak9^n+2qn%&RF`2?sn_kquu<*$cSW`+}c0U)@bezcKTawd}P*))PP&(9?J#M3FZb@ zGTf$yTEWeBhD$(iu{XwRxCRC)!wn%ZZcp?FiAKq$HK{?|Y>Qj2W!)W;NV3HBo^CMZ zu1#6(D{$o9fRSUMhu+jUZnpM`E4!_Zn9}SBwLH<L=q67F*LFiYx!Is(4Ue>y8$)?h zb-8hwV|g;8YZ6F$(_Na(%_f~|oX~7;O~^?#=hl>&SW8nx6vvv+&30t5-Z-_R7Tq}I z_&NsiWjOurmW%_f>Bd-1s!$(2zpl?W)Tr+2E}GAc^GcGTs9PUBr(XZ_+U%14IzIsl z)7+LVLkVENoshe?bTeTzy*8Q0<KyfbliJ#?RwlH!8&@)^%H6n{NqOeg*6m2MyWIdA z)2&gORQo=0ZbyENwZK~^A8Um-CysD{BK~ilT=ckah}(XnqkJ*Y9}W^8hu{6Dgqdk! z=INqP-eXY90wMhrs&F>PSuD|c6R{w1K=BIBk?<CZdxODT%yh+b!DT9CLU;)2VFaoc zlFk$Xxq`Fag$f3}^BbKK7`ER;W3gzDdJK|%*HJtO4yq_-I?C9P_fTZtrl;x7vIBiz z%ZJ&ax<N2ftp8`A2JTZq>Hh2z(b_2x@_5^|fGO&bFd+c$Zy!n1HDdKjrEb2F8WAMH z(s%OD&<@<iUU*Fv*X-lke$42^_ndp{U{XCqLgD0*BpPTQgiMy-5pxT%NPff$5^^FF z6;M;uK;%Wu_yKndioGBgq?}3R&y-xB%hEm$M-p~SsM5)?5q4ZHCnnkjMux2ajCPSs zLZ?I6W!x^l0jgAU`)SvpUZ%iTE$)gKhjL4<HH_UMYsT?e`gLpvwhzg6)i{hWxC|hJ z@H}|#gi(-p!1o&@I5&(JHweE3b^*{vK8DTEu~&xe{6O!YH(Q#53oASXe%v!Y+UhOv zhVUGJsvDgf3As=<kNfp)*Z+x*^iSl{8gjBbFTW23gj(ZsaU{u{{td1lblK+*05{;1 z9l1FGll}Vk>!14A?T49#OQR~34Po6Kx1S7<;eGjkbNx#nYxmX!=*6WE8VP@ANB-@u z|D*l5ij3~>oz2>bQMdm8z5Xl0K!b^PXGd;ce{G^)cw`3kFdR-5;X_#zjFuZ;?~rT% zdTyFz#gU>kpz}dk%}O%;kc@wri7$p9bSryr`dx?lrQbFQu&*PRyWJ^h3a+%_tn=sK zsM&OgUt}N9Yvn6<)BQh@YxG^$pGR|=S(=(zoDz)cch%3RiHg@3K%z(~As41p2Z#`e z^E3s~FASob#uPk(01`E|5(lf}-MvC#Z?|ChO7Gs4`0c$aBqD(}9glWb8{tMgQR=Q{ zSI&ATO>aIG?zRJw1U-D;shIyPpWof(*XX`0%eTu{4X{TAki8|ooG8S++0||d>{tD$ zaT+LBckD9~Qm}*^*E5U2^<jxT{SG*<KjLbfIErVH2(1LI_yI96H3-TPjn&Z#f?u8~ z*bINDzLc03KLW(mUm!j0u>dzYPdAZRUEZ#3B!b@3a(TT}k3=(hD(J0lRbwH)KbDN8 zqlsA17Y<vQ;>Kzqk!h4#%dJYa&}Z9@W>U>)+$wf5RIuEOMDkEx=A+RFRf@|it6SaW zl2xvsS68wP%kp}|F~2tuPsK>43i&IgW-;sY1p|?=u_HW?=}08Du~iQS*#AHLZ^*j8 z0A2tsL(u#Si(kk^%M<hI_vIQS+%f&N`l&ewq~?KZ>8quOp1H6*oz<LEQ||vU)r<r~ zYwNVI5)A||4)%B&ZA5~>jbuDj**pYl(_ULs)mP;rB#oDLid%W0;2bI*Z>k5GXegrq zzode(XfS1@?YJr>gRxjJX|ENIPxjWb7HFKZU9x*ta5tbbhTj0ND`1M=u_LbsxF7@F zeV*%Z5)>u%S3HPL786c4@)ubt!-PF9{?v}KC9o$!M1iMGG-9^lLd6L6PP-Tku=6*K z7dl;WfKw5sG<I?mZZD}XjK0LgbN1#zAN-O%q!tHi(9=QV;DU5-B!x$-B&aJwgkX`R zuazN6*3vdvsGL*!0!=$v(=J{aAok@=aT`nHU8n-kNJLqaa#6t3nYB_J3%$`*^T4Ks zT!<nUgmGa3gg+Oo%Xgs;qMOYLE)os$J{fwjp#lkcLbyQ9nv1~G7iWPOQ(UFksIGT6 z8@XJ%w32OQSJthdy_>8C%jfwXOR1Y}srGikP8PNsk!Z1AUZ$#0HXTb=QY$rkx0(b* z5M65|Qp&H64~4LbuIX6Y5%mB<qy7=^rWovR+(V%S{LOml+37b`=<~XY>No7``oDc& zXHY(Wv%Y%GPOtd+oprgqAO5coGuAio7X(2N{2^HJW!I|fA4m$PBfrQq&}DQ*e32~= zO62(*PX!=Cl-`LI%U>2cAIit3=dpzIxi|7^Y2JDGa_}y>pB!yDhZ2xppq8%)y{`@A zg`7yf^b3jUKC%dqdZaO=re}&rDG_8^^K!h1Nq)ZK3+BIx#VVO{Fj$UQR*-Nsnf1Pe z*PBeAloQA@uNUHpU@#Raq(G!3(y^957WW5(p=LR>-&m{1V>>%pYU8TI*B7Ar1J&U1 z`eqCA3d<LWm+k7_aXt!|Boq!GQT6?>yV*J<<tQ94l=H_Y#ZVxhU2mrAD$v^Ax2%m! z%D<8Y$l{OY{4gPqwp<ScV`)Nx2laK!ipJB{f9?aSnaNd_qw#Q<i4{wy{8@x?h9#4V z$HJjN5h!^ioe095SIw=4)450{mF-;wvvJFt2#~S?P{!Mehpe#Q7olXXH|p<s1K?Fc zULQ#v0k1cZDEPx(3jQWjYM1N_L^|*nt~xE^-M8b7WRokYAhn4tZ@iR9+o?1|=Jk1f zJ|BBa#2<2OhL=+X;@iU4<+{eEq#)~lxB$Qafo@ngHILrj{>E#;oWI`K*ChSd*wOlM z)V)jY2(8+QT2AdG?RWp5#Nx(rPl++=_>-c1kPbeXMcx|4k;q^o@Zwl{;x->T+$0Qx zLL=IVcCzu+t{9Z^S1h>6a|C%ILFs|7j-~2Qm59A)K9E>9o<BAP!OV)8rd~Lu+=fn% z$#dy=rC5X7!$T)@R9Bn`<CyL+UN4*_VwGNx&guBkAVwh}BykVux`%^UqZ8{FHXRo# zoq&Cv=(_d<5ZxO@{IxHMKeC@l$a3hs)DAGtIWdOB;^qkq;=EA5<Z!HGyZchA9qD?- zV|;+<o3gLcg6yCp=cY4m03@}S?y2*jekmp_WABXL@QLwQd>xcb(1?Kq5v1`m=IQ9Z z>g!`;5_^4kW*y0t<SFBi<!k!B>RZz3h^t9EF7)L|I9%&+zXP9(<PynV436%*YRS=6 z47W$iCRm`LHd}fy|NPM?dDdupQ$DJ&peVxpbmaH@;sJ|#3}?JlNz!{9<=FkteZEpQ zV95u^9s9Uz1$~)9*ply^Y^lVKW%awl$bJUEi-_R|r{)_m$@`KG_fY;&LCdQwwZ(uJ z(QSHYH&p1fTjmk<Zq#xwX)xEt4t2g8fhXiS-xu!>F1WxH7^)@l0zI6QL<IJCVR)2% zba8HesO_VHI4qv)q18flBVMM#c&0$L@8KJ?dlCuDJ8l7j)w0=Mm?~PeT+VozE4OR; z%$j**=e*@yXYdk!nq6L=It1;`UuscY4Di4|(^}-zL)r8wjV9>?vyc(uuyVjWfYa&X z!t=<ZnOUuqJY1T6NOt#tZFGgSmbkq}VnfA#>kX+(wVA2>8i%-%u$PzjLXnmVybUWK z+WMMu_!G!cw!S&>A9vSYRkEk?Xm8a~<&D$U^4i;MYwa{!dA-&dmbR1op|I`EmpUr* zY;J0Hk+6nL+*vFr=!n^o1cKygLNC>XKMLnira}of@lJVVBZ9;C1yBkJNK&1tgX~Y# zL9mHj;TQircmQM*5n+j)$oYi6e{qi7HMeo04h!8t2wmLg>%{s}HS>imI#o!d)5To1 znT{2h0gnFR_#hs_yfKL83hl)Vm}NxFytunWhkPKF0H#0+D#m>HV?@{AZukv0Ea1I; zSEo%Oua(27aT+}$`wR_t_zNiW98g`i+IwR*Hm=@Sg{!XBl*6fwxlEZ2#O8?W&EZVH zM@&U}L^kr&yqGyl_sr+iF^4669^{{9*C*Lx-qY?El6KS^ZS<QpUL3+KdXQL;uf(az z6@>jM8}Iqm8$7t*7@g!%D%vobwO`lFAQW#0i9~}#Qz4yN((Bj(weQ%PPL8}VakHCA zikD7#aHPc?ICOp#w^4@!JX$WicbSBu-Xq)K*CXCBc0-fyAf#6UY0zuUIk)(uXStb6 zGh+<c4WF)n+Gp<@(FwFy|9IG%2q=$$n<tT7I;w(J@5J@R*oOX(W_7#d=%8l`57~g< zRN|Zz!i$K_%r!dIAH~B7cZcRVB+MxZ!DM~;w+G-jgKG0QG2J0(4Yy%0C%Ma^HKgXK zpwQs9=<}{zD?2MT-v&0{kegN7o#IAXrh9rG0%iB28}-b53Qpsx`8?s-XxZIXKL=LZ z%c+|kyM=L5cwICaLAw<UMc29wZ?n4{Hvd+^$Q5j_oyFkZ@26Dk%sxxBo9%q$G!hMw z1zBSjyoxRB>vr(fQz#&^mw$oP2D8ja8c*}uI6XQ9=3QG=X?2+{)|a~tO0w>ubY#qb zZHLwC-jRJ~mF?{EW^H+^YDW8E<F)YT4CJN-@^FT^>M*41y%{{){B;1|^bp}UJ&EK4 zUh7CDkM_v+Iu3lVyHe|Jth7M(orCPFuP$$C7+)hRXu~SDB0HSu8rN}qCij5jsm#<X zjnRju%K<44=Yf+)?PYGGxRH|;*2qJFjU%1JhNChQDbMISsvzf*bE*P6)t<TI&1ZJi zu{g2O9KJW`pS=!SUpEn{>}S*5dI8wWVwU?qZ0kNAq^|_?h^OAa5N57190Ob?v|6a< z038>pY#^FC+*vTAOGgCA>%j~o$>*Wb84d^Yo45ez*4{?9wqmjodj088C=@Bcd$75+ zyjssx(`MT#%5J<IUIXU04kz?iql00K_^D%3hWb7Pql-pr`s=G;6SzG3FZ<#Pc)(t8 zcRw*!LS4eo-D71on8={0?jEZm?R1gCgR#<WJwhr7FUJV;d}Clp!5t5cd3!XuZQMAc zvvOl>a<z@fXmD!Rhtk}XKC<jy+!~k&Lz5c}jas=ml<y^I{$aG%C7;uee3AaAxYsu` z5h(oil{MoDi)|=3oyj(+zl3V%ECbUi`9<xlyDAR%cSFkePWeK6cGUD0_S^5;`-Sx( znP$JRva|DUXJ-W^gKXcsGXdVWljU-<t^Ac_3`fG=`5+XqcW#{Tyz6$~?NEam6{VJw z`+~3ILuhJ`+-TX2Br}sbL@{N35A%|s$l~m?=MmPqDFvSey{jC;b0>#~+N7{JnMq1L zLku0+!#E?kd&_>6?HzhmQ$-TR_13|G{rcd*OpV!?Ld}!3{l=)a_rhzaPKWKS{k_d@ z>%j7wW$VCxb#R~}2k)&h6_e3<(^%fp@+dSV+@Ee@=)a35_X}5+{_0*#Ptrs!I{dbC zBpgZ7j<e1nGfgbvx^ZB}3+7N<vF{J`CYSD5QP()oR9AH}dnFZk3&umPNkfkFq)qs2 zDmbJBE^So2h3oiaV_7<@&g&y0cG+U=ea^DKF@R17n(cn4l=o^G7PHodQf+{?=Dv9O zee88vl7Dm`{rhLsxcT>BMfgu-)(!eQLVgRck2r!6D?e8YvrizdC+BMBkrXH+H&u%t ztvHIO!Hq1^FXkO(Qp(7%NzF1y7Fov=^UL-YS5lQ)Ib4ont4GWJSRh`*Gu2;NUZrl2 z)v1-+tNn0$d0n~O%Pr+vU+(ov)pDjE&y=gyOQsqVuH#I$;z}`9PA1|jTR{@Ow^jl% zUocrt6<0_kkm5egW(j|4I2K4{E6wdjx!l-pR<fyTC>X&fs^{qt1OI@i9qf`sL1jjU zA0eNRr3BI*!IJq5thJ`rl7cy0sJz1GtRuV+t<fG%tz$9Nb^bK8jL{~(_*5d8Z)VfM zBt14?iax;J&<k~iiMF(P(xe21)QGC3mc#yJ$?wmtMg4dt$QN-rd!@$c3-6Isq|Q(Y z2g~}?9TI|p2@L$VZK2KE9qpY?;^Bu=QKqJ|p*o;>^(UX`z5N^RvU=a}oUm_rScf2{ zo=uZHGi$mNiwge8Sw-^HJ);e%);u{fHbVWwU;$m#Y^()+y)$y@>;IB;(1a>miI{m2 zO}ux#jYL&Q(5KFxq;vegz_Jhw5V1IHG9psgY9rVL?>wgf0byfLp#d$#aRXim`J>{z zG~%KmUbzYh;!($mf)w;dXKJ}!>g&;gi3apC@&|?{t<2_(U1K)~j=Im@h+MSy$rX;W zTm2j<Bll7^@qpvmTMW#oXPPeI`7_@Bt}bx2;GQCBj2rq;))|L5FP?IsS~B%vGY~91 zmr{n$&3qDuFRw3NO|ScnU_D(b`n~JvY8;nVp!b@1m9JPz*F*BT*Dp^y%W0LWoyjr& ztqMoyQ!9Q?bTz$P$P|PAOg3Iv%k<B?nRsTUl&q6Jo{1E5g<ASe&8`<3ynPs#gX+oB z3NJP{(~#=atb!aE-pcVEdp90k$qe)w(F=t4?zbJil8oG0R7v3mF=y|YLV_)^EyD!| zEOmFGXvPFUZvqzp|8f6~;dj5VGgtePjBI6ke*GaFx@^RvT#5dnka7QTs%eR2bKQ4@ zG_fBR1RO8?B}?lUN^-SWzvxL{>JfBwsV^6_O7*24=!GfgVNM>xAq?<xz32~;_JpJ% zwGM$pZdA~}^^Pi6aVRA=is_*5phjUjT!is_rEU3w(R9A<3q<19f|pmpRH2kAw8g>< z`a*$rAyq2WNUO@0^Ne6L97)BBr0OJNsbC1=i&!cW&6mX~hE8Z>|9D<thlmGez_WSX zz>;X9_<)A7Mh|9{WA4b`_bjWciRhvSW6R+<6rx#dPS>v~m%~4XPq&9$)H&_qTl$JU z@iYBP(<9^oMIXq`6)P#MdEv=4z032o$=%EMdTIv*@J_F1=cz>E7*Cq_9fRppzA3;b zb{?gEe1`X~p>4%i2gL~7AO7zT|BL&7cmI@KFQVmWS}bJk^;RTkYCO)fgj;<r3k?cs z()lDfMP}|$v6>sHSXlG26$Cu)e`*I3$E8%5heRovH7Q5;{#;%7GbA~xi$Eak5B8$r zgwIG2tU`&-;_lEoc*S|G{=h7hlF4wY*DW0-BJElxWEM!1^aXm|a5~^iFv)-)Y4zJ~ zR$Aq9t74VcD?B)R!zOz}c4AJ<ahGtHOq$&+u=~HupGgPAwVCnjJ%b$E0U#6@f<O`E z*PTUxX-i##Xjd-nd?-LiOr69gb424EMjYK(DAz!_h*4dm>He$$bDa1X=C#W%oSqUQ zyFs?yFB}};1<*RZoY(QInL6)}{;MZ*vM|Nk2_Wl;+HsK@L?uetFVuZ!rMeLUz3%B* zI-e;e(>u@xi<pqsRi}|pM?yI5Ar;P+)ng%m#r*V!BI!K1l7nJnt3!5UGMY=IliUNL z!okdwJ;}in4cFW)2-5(%#M%=R!c88-5V<r&+({i3$sv`=&yebPq72G=T+bMMqAO3f zA@}fGS`nnc$6M-aPOOi$*T=u4^$Mp=Q_GS$2dSWa)Pqnc4qku(n!^wT>sODYE|1J5 z5CeeOp3R8|eT*9{2yHae<UN=vxmt0d2w?@8XfFUWk1tve!du>OIK#*ChA|L3$V;Z} zkT2U=Wlt7h*^=S}OEbdYAO)@PZ7q^FViY!yHu-O#ZSc=NH6r@)#E8lxlp(M5W88RA zk;67s+j-qTlgHb~Pukv7jLY1>9{Vn6iC;iO09D%5jnySGcWHKJ)(vVRK)vWe;ijR` zFbnyeojkur$$mothfVv9gsq2FgH&l#RX0@$q&n47NA*>O5fulu`B;B7pQp4s(UD<Y z2I_(p1&3BlH#P|Zr?o}UFFL3X)}^CI71(D@veP7Eisd3(thmYCJaOyI6nW2$F@az7 z=$N&yUgGT(UmT2-A^@B{K=Yai!}3qa4wZPYXkvIY%~5z`c9hLF5|v0!=hi9mbn!^g z0e9Y?j`fPMw0|cNE{5U1*AG`Q$DwW39S8T-R@3Y>A$bGv1hDXBG#-yqgHV?kaB5Of zX`(yn-Ubu^A>5UArD~aI<KtzYypNvu9B;s%cVUn!EiEu)1d9#14sw6!M!}JE=f#*@ zsC#yLc4l}WqvtqY43}u@g=T2K)9t?rH47jy^RZYrmiFy3cI@@=&+xEI{&ug(<y;k; z@qE6L%bBmZ%1S=(dBN>1<?&(UOI`VH9-Ko=E>sio6or33B3ZN$yW!50uktPZm-{RJ zp)5X+P42G`J^4$``^!j=H>lD0f9h`C`0N>FOwq96>zbRMHHu9Wt~%%D^e7Z2Q3o@_ z6~Rl(J=7Oy0{fxE{cZg=Y3sZCbv)+xr=wQtplPldn{s#TqI_LD2gC-F0lRgvrfc$D zRrZ(T(RfF((V))__5<d!o4F;DNl><I1|Em;Xt1JwPd1q0W~0Z+*+(XIrW?DIknapC zkm*Mc;e=rs2w8SaH`YQ=gK>p2+)cc0xDd0IK7J_eq86n|<aok!>E7Y4gwXH7y-p*i zoDL(j+)kIL5TFPW^jw<O<Uh}L-A5~jS38-CFTbMlRwGjhLIh^7b&W_rzD|fMpYOQq z?^7#>a)IGUZlx@}h?A+_?FcJSUhQ=AbU|Np!t;hc2#12h)#q~G(TPP-2-s#8`46r{ zcgfRe9A53xi$Vi0<w~X!TJOc|6?5x@YioB4VIS?B*sEP5njdr|oOe2sh_$4ghSG=i z%k)Y5GWPQh{n*kU+1qrDxB0;%h`4KaRQ4FzI}iZGU3v_#qnu3g!N0FiPy7WR;YI^% zGkM#k<_C9zfA~7!EAHUeaoQK1d9crE9wcmN;>pi$Rz0~nBMi1SS4VK*lRfC|-<}&u zI>SHq`0*^1IW(9dM4+$rXE-Z0Pt;_OK4*kRy&{72twS~F7~lESh>i6w>DjH7Cimsq zYLlCAZN&|SUiP2Kb$9zrI99~Da{X-kCb$}_bM1^WdZK6OwKaK8a{X>f0<D{{)5*{E zGt*B9^I62A^j$l@(_@BEW~|5=$L}r~VMABnqSiaH#L+Z`*ZDzYR0!;1vsJ7X%IQqJ znTlGqm2<V`elaZZ6U{=&31dpLkxP}{uI^LchdJr&&BF2Ou!Mc8ooU3wBB7>FwbvGP z>XVIvjVGH-)`Q5W;q^HTWuI!DV(}~v=l4@RFxq-feX<W)OfvTz`Q(NB{uSPCCvN&v z#+ofyW8dK4W0Gm_BK}mVe@S}y;Ma|sAxRTIS7xjZKWc9MsI_br>gz}A*=%^1lImni z02M4yX^1jIklDFkt<}Out@>W5zh#s|d-c{)xV9!-*Gj5Y@q4DXTM6{(Ig5YjF;Xj} zy?{Ei?jDX8VGBg%k$W#*7ErRTX^Er$%vhk{wCB5q=2UrVbkE+MffA^9aM9MUy6~el zPMUcY-@8y{U#-1XSq+BmUT5_+HvVe&Xx(@$#tD261>ak#Gt3uOU$6VN_U*IYO8ca3 zd7GWnwR*wpJ6v5qy4FXjb1a_91=rjYYs!J^GB$ePOcAH}CJn(NSU;qdfJcYApDIs1 zW^Y~W*(dqtNdt;QM(?nGenel7x~s)l>h)?zS>fPnWvzX6sjtTT-YXT|-}0@$Ugda> z?!4_+j@DNXecnQS?X=VMTJ%&A%E0#`<0vxZF}99y`GTSWdk>sKKsyBYgsMU=nRp3y z8kf%EMt=X9g>bd0C+VgRl7zlxEpk6>C!Q^SB65cv-eQ8T3&u15()2y+Ip|hOIs2#7 zvS+1s3HhtW&2Q`*QTq%R(knZCrhJ;?vTdi`FKWMDU4FCCe4|nwMXBx}9geCqdUMd0 z1Pe%H&(wjekx{!dtkIv`Y*|e!j}U=kf|!fcyVG5O+K!A1rtISL>zz^lV|%M64&g=@ zhMVo<bIa+`N>!LP54Ts&ZuP9Db`^{nYkXc)Wn<mWpBwdI7gx3qCGJvPY3ubosPFVp zBhA5+qT+MEnXkY&X5~TCY>p8eLl-~(V@f`WD$Fgx4(87Czq*qG<-1eWuiV~PDpgFU zaj61*NT;t3^xd)^i@8xR<?|)|<V=n!rcU|g8U8o!C^rxt)rD`u%7O#<F?K`R^%v+J zonti_(mM@|`Kgik+IaeKsGJYEk}xmnofbW)3PZIUK#ik+yWs|H0uwLS_S0wS{aP8Y zxx6IEumWAaYDHQ_dEN^)^*>#JjAC9VXw^JeS-vg+b-4z<x6jiq0fka7S0c1f)89!u z<eB7R2@t~3C5HB?SQd^R@iXegx!jsh5%}=$Dp6!4-AF5XKm_K&5^Ef>g5-GdC(3QQ z@Bc)J-U@s41Ti}fWLGDbxM~uO&#^X4N;>gGs$UQi&LzyKq*(z;0R7x0jT+3_K{{=7 zW8_zzhST9c<7@J5YBoeaAjEPBO2MMFGQm03`^!VMcGx~VI_jUxv&(3<f1Zt!L>5*4 zXx0d2dGz}y_otuWpZ){x*;5_Fa{Ma<ngJxwKIAr1T8rBz?o|09ag6<3KrUZBCV2o% z(VWy3A#@}lF;V9>PBt>hjb^HnOm|k5YjwLL?<6)?Qq@Fyd-a2BwFARsRPJTFq0;;I z$rd%O<Tf_di%hk;770i2$)s|xcEkJo;oaps-lGB+$ph=>Nl2ohoiJV8Rh;f(FTL<& z*>isj&uN58a?f0@-;oN0GtZV5A`A1wDt>=XDUV6))hY0oSipNZDj5wvh?>zj7GYY3 zLW**JtWQ~r6_q_Yzd@U8WCtartG+;2YD0S!oO^|K+4s)tD{V;N=YtgOQ(26maYes= z&R^&j{1JcEzcHvNEq%}8<J&~C-a`_8kN)GgoMm4U5@nJdFxi$c$`>*3k^k!ccMORS z%t}(+RI%5tH$(nLzUe%u*Va+nSns#i_w4X;H}4PZtn^#%&0lxTSn#NkuLrE)@p7Ra zurD^wgDQ2k5k7Ajr}klB?PPgnAAgwW5Y9Rfsl2G;x}W46o*sFV6mU3Tpi2a(Rq9Ps zBpQ_4hw==Wd}9PRDH((Ht4<4Nz0Mi6RIeYd@^Xq>*-IGEIw?`W`e==8NLuG%KN3#4 zX?i@%jK+0@KM7~j;?jL_=!iDz=oaK6%;3*4z0iFQijnUYZ3unNaA*N26RupLSnZIH z^=~GMrW;$*+?6&x$r$K?;T(+<J-BDd$~AGW*whu4txmQ)XRp*gFH1ONWv9g7FbySY z57S2ue;<8qW?%PLhF_AE-&;YnYTL@mH5cAT(WK%UC4%~dJ#*dvJ8}km>O-lv?RLG_ z!{-+N!_}(ekui@x@_`~H65X71R9)BxXGOw}I!3<L)F0`4NOr3DG3=P*0-*0Qr^j<> zfjN}q>OVP)2&y}>f8>N2J^8HZw8yo8Y_NBoM-$}m$B_=Vrd9tMp3-qXUAqp6rGJlo zPOf9<v&2W?bb9neYYQJG=Qi$Wr1=>u#dvY|wHe;eS~6UR=)Rk*ku0;yVJf@-bPB_R zbR3C<iuaHjc6&%VAjoLAaQevYm04`zIo#XRxM9r`CE+)@zxJO^g*_CjW!2r+2rp#T z*l#=Z<ce2U4e#t!*lwP6yJ!73YUQ-kJ;iUdDv$5qDE+?S$FT#PluX>_X}2SlHT3)M z%fru=^L|v0lK2SM<w6$)>tJ$atT1*ieL>T+;-6-VII@=eM?Ks7vSYFP7!iAoujui} zvMx6@Yt0<@lrl&6wUYv^4?p;I7m{GU9xC_dYdhFK%>agN8LO#Yz@kntnR!C7YHjvU z`=>_Ce9IpFs&|Ya*(`)r#@>%?P#aK-4ar!tk6Hrg=a0w+YCTE(%_FEoZi6TmV^@ij zr1Wgi6$7<E=PwU321UEJw5H9Nc^=yxN#A}?JX-t`+CPFY6EBwbkzChn60YATv+gf( z)k9@*<W?ME?k3)`DC+n?7sQ2kej#E4jrm$dWDD|GcN||Ru4o2&M-_`)e|1OVE6Dzf zbn;R~*Qy(_w0+UJ_6_q7<zzc6_L-xuiNY}X8sF=+UB=lqu8Mn`>pRh8Y_qbtXWaOT zGk>qiCymK+i{&AV`jW{li+J&?2#>tvU26o&V~xYHX|XRa3i<v3QG<*cZgfr;q+2%= zI`#%*(osRK*gn%&tb&6p{xjJn$6t1K&Jomv-BYK3Kq4SjYval_afwZ5Q1qTLzSmFS zQvAxP-l6LUeD!FAOn2YRCs$J74^?UI3GvaT?<kd!q_D^$RXQIAFoq%zj03R|FaX+) zwO~Z=8u?xlHsswzx?~^kCHmdvt!QoA?F*GlhjyotLDdyYX&I%;cr2$$@lRV9fjfpz zz1!IJZS0}|A2!lx66JEB)7pNUrnHJy%$#-nSjQ)Sn+Ue}8LsV&NVfZn&kb%B?uYLH z4*+cP)zZu?S(Z-p!Yn!jAF^mjjK?zF%!g{J&CX`3kW3a*n}ufWO)mnt<75MW{y3s( z5x#(nA+kwb*jkEO7Wr4N^66COt=i6^^=_Ovee-zY?tg`Z`~kbS%S}8Bg#@)^YG&Ne z1;1GFR8YLH+<OC!WDiElessV+vMDtRqVax5oxPt>NIYf7hfT^9<z&?k1k!d)WE*k? zK8OOc-r;UU!~<oU6VXCl&WL)|??&ths<T#dtWDgnlJj^~=s4fa^4(4P9Aq>RNZP)U zxZv!429fkcIThp#B7ns7aM=y@YW*^^;ha>x8NA(*9Le>%KDX}EUu7)*?%=%6AV`3Z zVgeKAHBVq-U)d8r_LV)X>B$p+J$#=}Ep-3kxkdkT{D!}Uo-_}-4^3mnL8#%-8{pv| z4bwlJ$byuLoML3GLao~D!(mz*Y(1N!$N=L*LQCg8+!yL423D~MyKm76)GPK92|{RL zi=34`QTAA;A9BA%3&r>z8o773j?tuTX_EwRrxYst?5I_usu<d+k)PAn<cN;+afzV} zuhfi846Si|XM_JzbL7kHYwX>1i4)g&Z-7skUz%|{+2(h)YFsJ{JhF9|di^?Oyt}j2 zzY%!zCeZDzuJ#P;_N9_r`ToOS^88cx-=W3FSmjci?<dGLiBx`pS;VX~XC;*PCC>!t z0f9F%45D&1y@WC_Jv;S<!C#XE@_XjYBhP<d-19~#AJGBv<RwEoLNOg*AY_u=Xa+)o ztI{hlNEfGGaA6UmxAyV!M(M5nZo@vV_^gb2V;=WU)tiiEOjGqb9ted3f?1Ns-hMb0 z=pRzkI~7PNt6ws<`CSY3H?5W($&>1QVO$z9J7RD8d?)=?)wXNK%85@jmx13_*sFfV z-uz#<{*LRvas4CLKPSR;LmLsy=48%=le{1BkgBB%i6G?Va{~K#VWhGMIcfvk#*l?Y z;=A8^3?utF?L39;W!R2W0t5D2+7x#nKP;b7xXq}AW3jLzH$E0V-6EmXD}VaEa6BH~ zTP0`Gx9KD2%YLnja){B9zk5x2j{)<^2L(B{cPW2|=kbx2xh0<_^t<6pIrP#fh2u59 zH(AZquIHSb#l!ZyK|kVEIkP^!zv{d{e8)cY`fD_@Ehm*P-0?xb5R;DveHk9W39HWg z&O7p=qryHvb>dR|ZVzp27d}+s5&Ip7wFjZ~@V?;Crr_uSdOR&wtNeljjJPfLL-wcQ z@p7%*XxXh61yhzIn5j7ad#>$$6(F6hsABGy?e*8adKPBraMoOZz23H6O>DJhv)4`5 zQsqGCB<-~C=)Vyx{2w{l2QxT+<i_Eado%-VPAfq|e;?NQ;i4L;si*T(PnFPmQrCr` z<J{EGlxnV&bHbU{E#}HAwVg_3r?yhA*%!6JE0wODsdnwGpY9a#eiWLxr{%G0W$U@n z9zu36l&h1>r_06H`G=c`i;1H19smNbLMjLZKT#*?tDyIib98r?w#Tr>aLhW`Y~f50 zLVjHK#t)Pg=Ks8u09xcxSN?JDX6h*jvR6Whd?MTk$79KQM#YWl)f-hIGpv%#WD@pP z-)nCrGMS`N4Tf4Ov=@NsKA`_VE>2}CJ65X&%F7l1^0L3&C<O+3h_>_n=v+7xK~7UA z08#W6)j0vTE|`xEy!fD-<`TGbeu02mSY&<8C7uI?C;pR3^b7Gg$c&c!p>P6K;MTqA zK#^?hre#Ibkwk#bL17(eHr+2dfFmcrVwbG7gF+w^iv*&XP&^e4#cO$QE?L{?N1AL; z6Mh}R8B29HcBqGQ(;x5H&1;ytX9!}T@R5#H@3;m*=E9KrhfVXN-Ba7QFQy~kg0xn2 znHT7Hl4l}Jx9r%u{<T|II%VohkqeS$ft-P*=o%#KLdO6cfpC<?w{6yj{DZdz`6{^7 z?}9v%N=!?x6jl(L!ay<(0@U{(&MqwC?qw&TDZ#x+IEwfR5>xY7IB(37cr!Rokd+P! z7zkRU5Hh#yccFr6ToHb%u2qcz#iLQsFWz^@$B0<!Yc+yWiIskrr;=@~fNA1M#QB*i z2n~h2<Gdo9y4>lMvszCh-_u21@B!PQ42=BXkwsz%Vrk;#oV)4N-~HfvyY6vae__5b zn*HYR7g2HT6=NrQ&Cr)KFVT`)ejFzAPYoSIo$~z9c!bjR+#GPv-08Y8Qu#!x^Xe>5 zo(ZY)-XfV>jrK8M8N>qav%Bnyt5^B6SDjP>$Zdl(uOb=t-dNIT>#r2@^b<XBko)P@ zny+MdgD3+|CORyR0mZM!)sXlTNbjq-fE_hPuproOV*enz#m@nR)utbu&Y6Gc!!KNE zSRG&{o?TjWoIc_;9z6xbF21XuE8LFG(`QS#9cLVe773aTn)C-m2L!{TYHf8=w(yoE zV}*LotDmg2fmqjawK|0paIuk6w^#A<BpJ)we1uC%RoZRU63iHmfEX^Ja@N~AY65o5 zRx&=~To#qKbBW;oQOlbx^DNdG9cI)AA68{1D1P*saPF(jq32xTUvT|Lk|i?#rL&zs z{Zf*K1D<)w&quiu8c5!Ij@E-sIN(wlTg>waT0yyEJ~~M;Pdrqp4^Q3K2zMPpHMH+B zl8CF-c!Y;&ByJS;;5zOz&o}qR_V1Mot{rc+HAvz%Fs`YG{Lb4<Wm?poD9Cq#7ztdA zC*efQh;G~Gl{L{c)+&^K$PN9^R;Cf&K2HU$_P&F-ySh-#Sj=u3#bD}uJKV@riL)6W zeg&@QpSb@8+9guK{bX)o(WGz-6C3IvUEIZ#>MlaLBc2b*adJ(m1q+GpnwkD7*;~S@ zF*PmW<KN;y>%RntYVCXdK49Ow`}thO@3RgenmDu1;RPtG!?VqIYu;2EV1j*eVsD&L z1k?3uyPj_<*F`=ZFKn-!CUdFY!TO)Vsqw}iwjz7``Rv|7gp=54EZ#gNO%BwK3T5-@ z3!ALsEn>83PuP28Z=YP+%O$m)?p@}Zy+$Es7t^oT4^>-HMMlr-5C5lad;W_1SJ-20 zUnH(u5q)je%-EyzSB%oOo#kh*UI(VVr}nnJ3@}J#<3)dad-$fx*6Z7Le&~`D-ypex zvSuE!Ll031TH&14xswyRE5O0od4A<bo_n;19SMjRT++MU0@We`N~hrUJ4R7{-)n56 zNKdE~WIB`Zsf{sQ_kw=Mq@wbX(+`~wGBfCfR2b3yz^v7>au^aI(@FP12>^E3m#M;g zApvqz`cZl!j0f-c#09E~CP4_NFB08X>`(MX`%5JXFzgFq1c59T=ugjym);&1tTUl! zlq62l%@&4wxtQwO^ybmcFWL_HeHfO}iey942sRlcrx#+s%ck-7go%M?I-^3mA(_@< zQfhD$>6H53+#D0fzQC&IM^n7(tqvBj>tiC|XGVh|d0%u38?y{g#hsNnoVXu{U6F2m z)_^b(r9Xe@DZ2jzNlOKHv|&9PXDNkD{`%0jhT0LsDNP$xW^EEVZT3!S8XvHY!&(*G ze_}U_5;v8o4e<(RD)u{aw8-$k@A}64`{p;CUs&mf-e?Nb8NV8w#;?xN9KLbB$UO}a z2m9Ffrojh%?R;-jori|s>Qiq<s0;btFJ1q&`N!5@8?-mR3WL%M<6c{T?Rr1iXW>OC z!iykd@f}trwID`gAWF^kYd2rsx@5k&0Pfw^=iplJjTW=|hw^nLbCY2ke05x3{>Jyn z)EPBw{O$2@n=dEE*SXfa$JSKlaBO`HrtwG4rK)v1gi81Ev2{}=crdm`Q;r>ev&cwa z8(Tx}rGzeq!)rW{`>$6YS7`k;yZK>!eI_;8{*an%GS9xyV>|K9d&c$ejwjXd48y4; z+vbO%-6US7&#;)j%{cm28^{?i!QAw)7Z-K*Gdr+HQds6@McEqu2$$3hp?VKS<kyl6 zr3?&7jia5xPa@G|kM(Y|8SttIcK21s>npDpH&&p%@CW?fG{i?1ykp^Tx_gk$UR`Xb z{9a?X{Vtc->LgOlO3wWIoA$e`KhQt$1ubjqy!pD3%B6$hc%&XoXJZ+EHCt%MlIdpu z(mvgG*S!ALN+uf&ZFW}Wo)7g%pI}7Y8ghlsB#;n?GEvlR{05?6>FUS}?hMfDUU#`= z`Gczku!GC3|A)Qz3vF!6_x!ZBBwMFj_q6I*Ro1<&u2vn(Wp%EmkNQ|u)^w}8HFGr` zB~cPhB8YM$5@n)XL=eOjeh|b-^k4=P%*9Mh@Pnr@gC9f?!3@se2Xpa*shCR<iop-& zQV+$Y9*T(xrl%O(Rno3}erxS5$+BGK(<E;xm;PAZ+UvLe{nqdA_vh_!;HQeI&gRdH zVDpuWwJFc$a!=x^eU!-JkLBgf5nV^xG6;>=+LIQ@?<BzC{ylBIfcrjOMEchn_gK5j zn;lx@?!C(9vaWXF8Ew3*+x;Lx^<Ij<5~~X<GV&ubsUtg!)#|4b(dE|+U$^Vb&5#mT zsCp!5aQ6p4K8e64KEAWn^mdwC9l}+%nmvFby`4HZ4<leAKTpT~o^)J7(sckk@=-ee zp`zdG3Zi0eWI@4ez{-<)rU5wa!U$JHxbsXS=SU$>KU7M*o(Uo{p=aU<#{b}rpW3_U zQZ`h|clHUF2cf3h1*69M-1sLxdft+>^)lm@50zt~OicY+q<`7%95J8GEtw~Wj_>0` zl-zi7a|Z-iPd#6`1x0bcNYII~rxM1FrDEWFnIboLl$aeA-gB#r3SsnFz;g`c*7KWm zz3(PDG;4>~s*d{3G__;^ShD(>TY}omf7y?6ZW;WJ@3X#=#=kx9pPrWxpe6tOEMoKY zAhvRjuo;Ogj6GC-9aDo+2|y>73B$a6+m<KRd)0fDps40m!W;L-lJ-%xME%DK=>zK* zDsr*j@0#oY5N}k+<O=*|efR8acYS^D>}=1vY91F~vFy69ipNbn2J06!<2Ak_zE-pa zbOZ4Zp*L=$H=0^oF)|DO9VGry%3X$vq-5lH?*f&)DZ4fd-L&E}H#(;SzosU2<-=QA zC%HkjOp3$-RvgLxtCYNzQiTM*YMG9fooKV_pN#a%yJuYS=2^5dFJHLWTRAV=S1M3G zU!juhZjaC9A8~E1ljY@;R{g-t5q<5@S2_1(l}mo38!0jSL$&0-R~V4+^5N!$dm;qE zP+<;kY%I};E);_`t%0tPfH&K19Kkxz54FV&b0NLQhnFkwggved;1@Pl)NhREK+9<k zcsHVo%3Q9kT_U}AcDGxUp)0nwcd-QU@3O8!I}%b%wDHl7{kAIWPV5*amtErBg|B_X zo)Js9MA}QnmRJA;r3Q#F`H`(FZU~}s*gA{%=ZOf^*TGyQCqhaIOU@=jVwYl}Y+;d~ z`Hh?dqFnf0_N__P0jfhh5`71yOv1J~a&<VMd`bW7%T##eZ2lOSP7nj^BU3_ZcK;eb zWRXg+|EcFc_xuI)ikdj{_$#mqt=X9=(r{zo(k?7LwZ0(?d-kbk>B-XU{RgIwFqbIF zm7bo#8>!1`F3m{gP5<Ng0)c8vYJq4qsU*qQ7yQ$}rK+c~Suv#gVjI3ha@E&rbeq-W zMXne<wF9S7&aC9#UYzQguT-~IE>~6eRU#Hn?(HV~)l?>*yQteQ_B*-tY%AWm$hT5f z9+a_0?A=;_{cR#;7n?0#JzZ^Dv5ov@-VSwCtFv6Q&uf<Nq_~#tzuZ^#jZEHtyJ8<@ zlZj?Ck<3P4sdwAKN--Ew=@$u~FHY)tG(<h*Ejx7X4P9lazGy|ZUZ*lp47NeJ7%gWr zsn=WkYx@EFyqMiAsI?7y>tJ(L#R_k6GT7(Y>~={^AHvT)<ofA2h-n#ptvra$gXK)5 zJR4sgKJveqD1n;RqN?z*Yv0pZ0b*qvwV9v?-1lN%>vI&#^YGz&E)gQmJwZ)l^36GK zV$dbl#3K}7w6pXJ0-ZM4O_6dVNjKhy2-~90oe|G<X5LGGjI7{6-ZA%(TS)Abyh!2N z@$Vqe@*RuxX48V)V|e!7(|Iy@hYecQh*fs(K7<X<5s@V^7YTsY576O>>qvP$fM8h_ z46>edUevz6=iFpU5!lxt5EItg*i5HWY4HvBJD5N{m~ktqjWmvWuI>X=YgL@&C_Blu z1Z^hLn~gO8^!aCEpnu3d{-w4tVUq<5QcjP@af{rY#iw7zm)O1!d|weXJI9{j7d8lg zdF%n=jT{R>1kxzM_Xpa|)au$=m^kzO4*1GPVfjTR_=Q;S_ou6?Q58MuoTzA&xAq&} z+Hbt;;s-r%;4Cm&g7y67clC|ru6#khd+j#;tujU@&KiuKI-l9h0k|s$=PD#}9~|nB zE$Vw2+Zcu52Yy3h^^CA8L9G>|F-)QD_Rw}EIZ~Xh5+-M+8GTJGugLo9&}3`L^3&Lj z&iQ<;U6FA<-?E<t_KDUd#pF&DKr_qF#PB^FqvKBvB|7QBl>jCU0^C{5074GV_Q}H` z<seAP)mdwUk<nwoxL7*=N6g30xb*A7u7xf+M+{v7__NH5Bb{nHrU>9(GguP{!)-pz zDd`HRRLh~Q%{qt36h?v3$s!C1O$_(7<`}Z!pE>$xa5#$+3dyHKDhqa96no+mBuij) zAAhAiWz6KzBZ>xSEcZ|(5mbXvaxXA_uJ2K7Nn$+Vz|N~372;>-!<i9@iX<Z_7O2U+ z6(f##^>IlNpn0i6gnAm;11AQf2={Y%ljJ{qC2?C5Xi=K`Vq|*qXaWfqU<gdA*lTV! zE5Ka*$AE*XIo@|2RWPAFr|<5JI3CxDy=DQM9I2a44|)s*q9hD+`y|Wo7o6Y)UCAA} zP`ibZ#dU3YYJv$=kZV@KVmikq6BBL~D|*J2x|ld)N|(~#qM=mClqWse)7|RlL{?9y z{pCOk=Xop{SdB;05%OhY^3r>0)hoS=v?I{3qvRl&`yXyM`iSY}%Dzuwrt4N3+r5sF z+0{xU79-)(PDT=mXrn<H-H19<#3Oxl!l{O`y_`Mk<la`9Y0gJXbF6i5+uQD8Kk0Q^ z{<HT<Id9GRvdlX86LJLp6VHFczSa;Ugggq20nok=7KtEx5|YUJX-PIi{g!+UVb)8t z`Wmhfy-H`6AO$^*OLW;Z*OO_2*n?aoii3EmfKZ+OnZ7gnYWk_y_x5D7k%{CZkx=;T z@Z{pPYQ0)(y*xRS>c!QH{o-Kl?FP<+U?i4!wYT<ig)qC$>T07D#Ic%2Y)*u6HnewJ z&1Nth3X76aY(|5@Y&aTAWvXlI{^zaAMj@R_<?^*ENukRtuV_L=&W@Y4%@gV@xAwLV zR$r~HR7$B(xKJ+bzFdF1zN3P>sYEuov16Z|Yz6Ase5GXf+JST~yYY6z-fa|90PH6t zfGD?*S7nVemLLEARL%d-G{%MOsOecexK8K+_%}ons2L;~ECU!wXIrhevOMBGPb8v3 zt@pcIRwsg3Az{k#j{l#v-lpO`91S7+vV~+Xf!v)}oEB9!cQT&RJVlI9_yfTS^`dub z8RdFRwP{UwmzRBEnv17J;7yAW44!KmNyQbWNiPgW?yc9vGwm-D6#SovzCVJH`AZyS zf~mV84iz!$y1mr7`$JRKz=E7eCKF=BrACdm_=1*0(_(1F8?Ljh#n5WtG>;?2lqCg* zj<L{^pDH%-4&mq?)ixYV#@he!1AfqBZ1aDreLeq`=f9`-Sc<SGO>0CHlU1bGsJ0@3 z=?r|T!7F<7t&ftZf>|z!P>#b-UgwAx;3l(=473VM{8wZzfQdSI=hp_QpCPP2kb4p7 zz}Nm%VX2z>rV@=dS1QeDHXn;&q_D4iD;w3o%e6=_6HO+AF+g=%m2(w2RE1Z|-DJLq zt^G8eIN9Ed2Ydkv)u*fN<IH9{1h{T&Ge?|7B%bl5iag?K!+Fc%ptv?#USzdUSd9eY zfOwax%|N3Y@%?IbYmdT4xZKyG!Fr)s4c7C~aG^`eOf*uf<qFN?e7E!AP5NNv#ZmWF zAktbpjF+2Ogwng&bTAzfue&c~VVBDI(#5oHTVA&S508Wj<$$kL2oaPL1+oNP#Ff{} zj=YYoSDYX6a1av>4hulAxG1MsbRXbEzK29Kb5`jDEauYs_^<8%W4bhzWCauRHm^{A z9>=Fa5uJkb_?C!00R0HOn=kRsE`4D=#czdMdwQ|g%jQ~Jc4JQ!TJ~Wpy0xNm+ulH= z5II2>?7b=-?5}2ggp)MvtL|z(9m{y*KlTQ;Rlc<ulW(Z}p554N<ubjiX!InKZ+a8i zNV>gULMLykK%kYU07&l@G|CzBC-Bn0#v>adhvCP>9sfgm`!uw$B#zQ)FA@-tR%-Ss zk+us!&xNK4TY`fw%sD=H21Q2`Ej*Z=*2_|yjJ(J3NHC?EUl8Du`@Wrey;Ufc3P<&= z^kr6MS}SX7E3Im?slxSCuGxhtNHr_*-(aVE6HRipZ!^}ca$$aFdCFt2USLDC{s+8= z-0A4$VL>$t_3UNZZnjobhT<g|?$@*5UfHpFhdYXCtpiWUzR4w8g~LW7yxFL4TyaCW zdUvP!-qX3*O2=j2$yxEwr`rB+na3}gFOdP!G?r%J>^EzhPcJw~gJh~`2*RmAtAA#n zxAyIdz_fv5x{1hyh@CIDHnSQ`Ftpq23do@K=PfEJC0hHwO&1!_u{QL(kxie54cv3E z1dW_*><K2n@Tp|GQ8R|Ek0=hjwZx_ZD-28-%8^0A^}6S_sljp|ky%%a7bOH<A$8;L zt4cbto-8aEQ>AF6oGdl-sdemH0*n_KE646f>F92&bzMFF67V_oEE#WSsyoZ^SS;S$ zt!CPBZ`<ul|H=TiUR_6bb#OSPcSdf($0hZzC5tbK?DB8ZE94TfXbD5Z5`tC4?{?(7 zbxq(vv_Z8UMJ?$I(gpAyzNCZtw^^*$S&XIjcBi@OFAG?$>D=1IT65R?5UceoZIkSF zF)H)l>JB?6-`uHRB@%^lQ>4IVxsWg*qtSRgO6T~8>^{JE40~eOR&rp>$*yukU1zYx zeQC*Nc`7?iCX&tcwcp{{KTw#1L?)3RfGwFc0+8X}e2i5^7&$?d>^p*Ew*+#g5lx1J zc-o`*?Tf{DLVBODS2r8gY$_TF_<SB8pi8M-rD;dQ(OhNYxS9@FsP(>5exp`Q#)9t; z#B5+a-#(KYN_1a39t<ZV<P#k%t6($8r=2){{A?l_?{wnHL^hd@v16munn)B9S;AiS zbHPlqkjki4gB1|Pws(qc?;e`-FRu08NhHF)s%vhO<%e+(;7VPofL=OoUu^w)y#lj* z9UWDrVG)+cg%-0sFb2aol(2~M2P*zFt{RoBcf|lzs*cHg`aptIr(IqzmDbDcj%E*1 zxUU<R;80-%VmJPc{}?}%V0TE3n4d}ZF<3|FE;189iz6IR5@hxPAx7|PBJqvon<I5# zsAzh_R*nVI3va9(c=z_Q>5J2i?uVj9MTkbdx?%-3PIp@Na^z^$C|thZHhLHRlV!!4 zTCR{4dV07UVf-)S#p-HRfn^sf_;RP4t49&F+1ecx7ZiF8e~@t&6lbwDPU2Y*tT}<K zrdfx5(UXP8^V3TUzXn`sde%o0x(34DFvya`vUMBn_Z^LmI)I(*rO&fRQaS1<<A3Px z3<uq`zjuAx?+uZhH`<rG;Wux>yO**@gzgk^V+T6kOY|m*Thdw6KgFE;D@jvUvvc4* zxoV4dP6I{ing=45c?HW=5Sw%gwEgnD11g$V3KGF~w=dOOLWoo|9Bc2ddJh1o1*l0< z?N?6vfiwGTbt+&iARoGRgxDf`GnCF+ok|-&^$PR_#17B7_&elJvDb;+?T2PHkVJ*% zN*#BJjb}&xgeUcgHNY_l*_IyVUs<dL{qC`9AG8kCs}32Bt%DC}G?;_XYCg2ZTtYoA zt584QEcQIb&ExvUsnt34zLzhwg}vBEyzTFbQMX;s=j(p1I%<e`+c?@RcF0vi2iiO} z=NIy_j-Q)hH0N2h##V!vt|Nh-%y16)<tWy6XGw{kh0CH$OW=f-QGpHXS0sKwmvX*V zM;*xqJL2_X>LRF%Zs5kANhAqt&&kbkt1fEs+C&;7R8M0dn;3G2smL@7l*YvPGP`oU zbyvR=Jzp~B9%9Az$YFTBf8OgULSw{vJ%jF+C6U<8;gR<f^8Tby2zCYu>p%ryR(kR+ zoh{>jljyyHw_zAArPsTepAepo2rDTm>wRj@L~zYvHidF8K8+b3goH23@1s-aBc0r> zwIXBHAp~=5@~q#Xb4b+?FJpyw09%RR(zw$rSIacY{xiC<j9o~t7M+tZHaHwlsB=;; zo)~p000aE4fE6rGoIoWijW+KIokHI&6WLEfp_G$vL#=(ltV56R19u(C_y_{@?c?+5 zEKVOr&g&y}mu%;WgGV&&gxS22oND&LaQ`7a-nRS1m#n=$I7=lTK(bxNrqS7hPCfPd z#C<50c%>YlsqBKTF*1IM+jgN_3<t*<C2GVdbn9N!1!R~+39PzxJDR921NcH7<B%83 zvcAdhm)$t2zn`8yXHUA_-<hxv$1~MsUtS*(H8Jb(=ETW9F!Lt4SSBlIu=8e!wwkmR ziE7qEPY?lVMq{(*784>Llvyzs8Uuj4`-bBrSOVBnZtzU6Y&tPSz%K=RXu=Q>MkTX< z>n^h^vc+WcL&xZTmwrCf`pva|ddK<pEFNV6S<xAm7C~Inob-4SHIpVpR)-k`t9-{@ zG`f$Z#)x1<BM!PhljlM#OJeuofd%`<Y(Oy>nUk2{=$=7vpEL_k5VG~p<T)5NecL7x z2QB|c_Qv<ovW43YdWH1xnXw->Ba!qI7Q@Zq*RA^R%DqO%U21iM_2be9fXIZyNIUV2 zr+o5|+hi9`I(J6L+#r0JOkP)7@UrDTHR8HW0t#>8Nj*H_GTbBM{RMjrkHkoS?lRg4 zXf$=#p(dX4jzcYb-|(BSkd_`By6Cfnb-KsF{G<WbOWfs&eIl~2iER{cGnL8Q6Ja3J z$%W3LKRWhvv^+izjv>?(B$wC(@)Ra*cEfl?2DyDAME($3oCt)G`S=QrpAa3HkFkD# z?pTm}xg&75Q(<gS?s_P|FNgEw@*yL_>Y$CuJ3{uk1ZCWq8VS#kg?X1fF_{ky+nzWf z72Wiw_QasT-tg>k`Oxs*Kn0CSfMaKX>ERu>#jw}keQ&s9uH_UWV~CeggVSo@PQ2&s z0t?gOflxcjZ1ir>h>toJTcV)#cA=(}NWY`|VA6QAG-(md4k>Bkc(V{`Rgv>{+nBQq zr2SDo<c{}9pFX|deIC<0w%KQ)dPaJDN5SXX8h0fhmkUV+-o=R{PVBan7VM%Zj*q#? zhA-p5bUhw&#e^}RB=O8J#dA8kR0N-iqs~#P+rDkg!Ee@_iLA8Iad)MiYkm8)wBvPJ zx~r@+==mQa=X}qR0g1R+{6fv))}J)+I*LoXonbNP>DQOLAeK-huFUhBAsqO~@LyZ= z;C9~F>2mHm?N1zhVKJup+lC(wN9&TMCDbqlBRv0m+IE6I;I?rWR^#;cuIy%H2=2;o zuI&N8&hr%-Ihk&m0xe?R7=1$OCJy?L&-k$=iVu@;gByEZN^9HQN$0HZAxqu@D07nZ zd~JN?{&J!l+CRs|r5AS`Rl0Wf!5p5M_lyO~jG{g=wap3p*aR*vvLt*$4i`#VjxTL7 zxDcI!S4dtdFDuzK;~agIr{B|7C^5d7lTDscq;9NuN$E6=768P!$zqMI=UUUZOvLa^ zmA1tSrF(g;-=CS2;Rq;_&+fqPZw$*s+HUH*!#Q&0{KXjt=#y-RnVG<H2)AL&6A$v4 zwJ-8FYhSiLi@-Z!{cEw}whbUHP#l=n?ywJBS%284&y2fn`mTb$5MjD}_dPMRFNg(M zG95<Zk%p3tvC9rs07Cljjqw?6719SFPs6B!0h1T=n-;kponNGnQ64Pq<Ke)SCV?A9 z$af43H|E5vZ=??y3=ET}W~@2i#ItY2&S=`ln__IV*ZcaJ^H{93Zr3MKb5s8vqYfT3 zk-nQ7gfSb=nb`deUOGEkGHt=poSVUNHkpq(CK<TOP3cG%sTRAj$b~mq*pP=vn=!Lv z+;ZJwG`}%N#7}*Cf<)!e<-Cc>pQxS6`jEaFyQ^teyf9;Z{q)>ej%7%cpSw;CP8w$< z?mQ{OIgxdwF@%P3b~pEtqz1U3-eD(|CGb$H!2q)4>vF=#P7-&=Eqf{C=<eg(#SJB5 zg?!F_=PJ=G>)Q<F;_(<GWMsYs`%`iYJU33ZYg(JT+pdquL>X^<7lGzH+;)@2z8m|8 zguHQ@H6t3%-<L#XI+hQ!r>1A-yquMv-d34Zg8<{(c2>F^28&9&WhQU05m{8)pL6yX zm3x1sv~%OOEk<B-BbCvUG--8<h$ii-Iu-G>OX!xZHr!{XeQg1`(f_+_wZTYCqGx;x zMTqHMADugIxe*)4tj=VCGhm6;Hhpm^Vi$E_g(h-CW3ZA1B&JzeN%n}%N)&RGR+&=~ z!}QA}(QYV1i%&sLF9A8wweB6il#U>{u?L(J%s8Z&KB-+dL9o)}ql4EAFeMyj6U8X_ z<d8qRzKvVP;s&3-wj04d5hK><sO(H2>*h3$jnqUkZ)`?~ZewqpCaOs^KPT~M;+!Fg zPZaiaPRXQWYecV{)_8Od$o!4@kkbkUazbBO1tQtsKJ+7FFKyu29`s?H|6UtwQLJe6 zj+&0?;+;3gP>vqjPDImi#G1*Y3pHAbxhYL+9Y-Gt6Rjts`i<B#kf&V{PPB|0Yfdn2 zSY(q=WZy#vw@`QamK8r-??d~^X#YMl@@`M>IQS#ozvB!H$A1dlS2T>pAF4%SL?$Yj z0%b*A1JAf}X(akd3e1r203X8Lsq#MeeKldA=_z-g#Ea!@_@w4C9AjxCKIp@ZR>qdK z>CL1jZ}JV(!@KJ%!*O+V_<0edWaiBejDPYF50q(2`f2{=D(TOWqGY9!Lm;n`<a|^7 z9pNKdf1lU>&!GlQy7l;qlkM#`I#Fr9(eUI^80GDb{yw44<E@WPiA%_2Q^NSP+>x?R z^K;imzBs$I=$)Bcn4Y7`+epla#P<;K0}qtNFN;)ASFX>E?;#oD*bUFm6*|I%X&IRp zv0t+fyaFvpd()=yMhFyM*LMexH_hC>BizPRmnJ73V%N@E*JeKK;}37FgRz+y>FwQi z$jAtMXWkRwJd#n-yaz`7i3ym%eRP1AhNl5ubb?W9$b$m-WEp$*;2*$+@QNd&>KeVC zJB+!sC4Nb_PycUnqmdp@ocx<Be#nnpdlf0Oh+b&mlLy=Jm1{Zc<~i&5WhRO;BWvB* ztS|%9&?EKa#+nnQS2C+byu3}QF&?1X#F`=RcWqX~etm}5jP~%3=d0W8J1%hcU;w*7 zbgE1I?w2|$W*$_NUlDu$8&<}BxJ;N-D2X4szc3?;cA9J{yf@T#CQSCxAM->Ix&iVP zmZSk6K_1hUrMW<U{N>HlY&FuZ93O9-W@?eu%5g6z3xoj``B*qrF1Ov=#?yukP*)|A z)66<;pKdhD)nvM|+CJ`w+oz;9R#PcLH;+}0x<(bb$p?0n;dT9Y!L5&;t-W>cSr>d) z+*6cZ9qFHm@05tipHMr1IP`g_Q}SS$IRRQG7>{6OA)L@_=L-L)N5TW$<N@&m{Q{uo zb}C7d&|x?&S<<q8d_-`Ljl`*Z#njujlHFc%q%)FYRH5v-j0NjY0u^o_5RsjUW33R! zDp8>Wd@Ye4=>!HQi87*0%p<s$6Lz5P%`D9V9(vC$P|Sgjl19d-EF)tR>4AHJM8$ng zTBd9VXe0-U0y2=Kv;h&=DMD@K@KH&X9HHd_x}3y6J~GD0#Yd(^C+LY)0x^Uh%3txr zlFABwE;TB(Dow8{T?iiZE@N<D9H+>fBqPuvNw6qr*da?N=4iF6Ok|3&;<C)OJ;mS! zO<{G5i;g)jOIXrpMLi!oQGwFcuv_;f51HI8kRSp4B8Oaop(_s;KN-`T+9AQy<F6Dj zT{ApD!Q>&v07iO6I>!noBnlRcW7l~{Jm&YX|LJOk>RalihskqadI}u5@qinGrtu@O zINcrQkTg{Zg_@yIdA}0e+V5ZOGYbw;Kx9iwn$E5@bXk89Tn;9Jq+rUmy?sBx&k)xE z!H1U->ST<BSD7&yV8soF=JA4z6{!hh#K`8M!k9xqp#}v9!BjsqLIY<Kc2Ylh-ZW_^ z@^J-9P_=Zec?#!^%4gEP#*n{5`y7_gz_R{49l}M0?U;PuPf_Dsres+3xTMH&I6x!2 zGhMQ^BzubB@z0IV>IfdV|KO9uG=O9WdR^9%Q~N{cGBs(2i}|)0lN1MXP#%Y##$fM& zAeq$nA(7c8lbEDvRefX<y~`@lvaf2*-Pf;G?lmxPy0*lWWyoc7QVqOPD_)z`4+r*D zO9is>jn})&b*DCh*vQ8AqGXKUaW6^%Jew($9eL|s^cIjn*^X%0pV*Adt+Cg6*pH^> zxL6$|LIKvKlT=0^5(Ue39s~}ms{k+hiHhJU)vMaIgUW41!9iG8y^36Mvwg`&`%L?a zl|{lGD{Ff8b}D+!%FCBk{lD_^c1m8mm%OaJl(lZ+vxnoMJz1Znhz%$|pP+^^Ydy`J zZY4!RPP=eL;^s6iVh}F<Q*zz^jI;Vb_WYNg|Jw84GB)6?E$9rzr3YVu4m{CJsKA_g zB&kMH@J75jChA_^O-pq|9%=!Mp|56_1T<B0JmgR`;Ot%r%Li!tk<?jP3V3!ltE(Fu ztJTdNfD0}%rBY_YzEENPrk~kRg$=T%0L%v5qiO9WvZaim6=X`;;yVBOdA?|Fp{g6} zd^uBE-|&_<?86QFT@%!jl1enKXVf3wsIG$T*-(Ym>W01U<JxtubzW4uTyCwew`@-~ zS<jTLPAOAQX7lT6d)-RQ^>%IK4!wOv&b1X2BKxnoX1#x8zOQrg%=n5t6h>C~I~sEw z&l8MvPT-{m!NA_H<NU%nk`e0jo4ino;+%dY!?t9G(5o{5$}g#*{1P<PT~z}_b@wIM zP`kS-jGz|Y<-L`5hhg<Y$QjR_O{xlGIPrMp+jL-fhxgr)@7l-QtG%IG+`Ppo*@yPF zeYiS0TDtdI)-!$kLig)u;JC=z`7c;EQcH$K5t~-GEE)<hVfipA5R(6ZLf{0bqJs?9 z!_2fE0G%W|Ke~oa+_|*h$=s@*eJP{AZWaS?tcHED&g`=UHhM2WHr$bAWM7Q0g>84a z?Yxf<){gI)Og@qCFRm|(bx<HfdZE~tOmampIcKT(&IUtObp|hWW2MM`_k3?^-}g6U z)(G~<&vZTp`H3KKQK5w#G7XyGC4Vf$Z#pFr^n~dtHWMhy3p4YQeeNes&cEQ@ZxwR6 zLhGP=xZG+jA9ewWh{q$bwYAN1y<XW|>%R=xiA2C^#e#uw|4O|L#`<p(zP~x%w?q5K z#p3#=THahQ7C*d-HP=*Str_#BGu5Vj)vRXHRwi5tr(1jKU^kVH=G*-j<>LCT@GPS{ zO5Hi>L!Q~b3;kq9u;h_wWc%yTL)Jg9h!bE&kPzMZRBy`kCf4n~h=-8N@$B&rffz8U zz#Y5e4QfH8g?6AZMvzRjL``yfIj!@xnU{_;FH${diPe0!o<YALOd{Dnp)TnRU8L^z z6VM$$+ocaLtTq70zJRZPg8J#PLcTyIoB@?QKxGY*OYhh@fC4g!Kr8^pRdl)kx>7=t zk1e}%W&F^>f5fZla2`;@?!(++Er7f&!Gtw~7T7eLtj^<}=0Q*9$Q<FH<yqM{+3hdy zo~*YzfGlZsK{N(=Yd!1=<boBh*sphv>|>P6+|iDTRW3-!Jb~Sul0PqZ0n(??B2T=g zvaKEWJQkcJ$+P@Mc7xvqNE#rqswt2%IqyUv22&i6H_(GcS0=-MPOyRmJiu~tHzk-! zQV@GBpD!5jo(nEdc*TCvRgseKGM)<BFC(R7f2|0BF2bqZ{W)S6*XyT^x{CQiK}6M5 z{H3+tA(b^0>7ON%Dxoz_34s*+fsgg6Lw_4;|AFv2Tz3K_p^Ga~_2BU*-g!VLkbVAm z0fhF)))Gf2$_V8fy#I5%Q#;SCC06^bNFfzb>#<zacHYKwF?pMgnon1vc`m4~t5iB) zNyo#<uD#XYYev_%RcA{zBdJ2fAFI{@D=4<O8^5acsJ?}M8{_Q?pUT}bv=L2nL3PbO z19_&MJW@^WrB3#?x9u&Vg#F^iGKh}gWDaZ2wD{y}Nu>sUVF5G);Y=2o7@`~C#MIo( z+RG=i`?+K;lORiayOPVK;`MmCC;<PNSh|oct#zh4?>#%sN-kmjZ<mO<mCKj)y>h*i z&#qP!MQ;m$h;3Gm?6-|AKR9OqWR>^oG7m<Ulw3QBU5Fx+dxn~?(ZEH9WNnBNMaq%L zkxH~#Z8FfnA_7-M-AUeeeCNoBhcI{-A;>7+#5Pkp5+&1D`OxudNwaESO8bTny1AiZ zNgU|iruAuLY>jn*+~}I^rD>^<V0T-utaNKaz)=rDo4=)6(uUY7O}_VnWby(vFMe4k z2x8FO&HQdsX=jyB5Fd>8+;g<l@r3SXomEt~n^E$&(IvF2OiB?Aa=5)ExuRt^O@Ccl z{#5d}?@SHjAdnAtq6o>g?`dqRLc=cIN)={xF!|JmT-UZsMvjh>r+Z4Y=|k+S-#Gc& zgH%s#g(3a<fk5mScu$2ngwyE$06I%>17b+9*D71oqiefsQ5c5+CE2Nt!2ZcFf&FE_ z6I2I(bkxXPtksI9urmH=iHpZK33u73_siOh;piZvv`TEybqB*DcrueHb=0=c)8`sc zK1W+m;{VXx^jdalifUi*M2ftQ-sleDBud=2Z7D!6@KiU(2VGHOJ1X9?TY_5eWz)XY zsMpmtTpe{HAvY$`i#5<Fs-p=~YQpS!m)+JsJ#TtUe#Dyk8@;9;$^QN+K+=Hw=ukh5 zm)gq5QDjamP|N*gdnbNeTTa?Ln#YL6wO=>munyYV!+IqiUm0!Ji~uG0Fgmi|g{KYM zd~7n>KG`Z#2O<<mQJ-$zZh>|x);h-NRx+F=i@8sz0mH`r*Hh&wAAVrBCOEiGdaYu4 zmckZ8`xM8*$ky_rx5KCO;|ohxiJ<vz#QGT-7FAC!*N)@Po@x=ZhU_B>D+u=;yW%ep zg`0^1<ttVzu{N*7<CVHQQWzhB+>;dSJ~RGN?|p|(Svg_>P2HR;)C&y;%Q=vKJOn_2 zKXX=z{d{cdgug%!yVspRwJyX7k=nrzmBYEjluO<?D+cqUK(ZCm7#uh_fy=_S>zoxv z4in#2+~X0@5q&I;9~xc+g9T0v3b?3_kH9&OCV%6@t6Zg$^Tm1Y0Kj0s0O3nN32%P+ zb2*;a$d%mix?cR+CHlIXXQssdjIC!mGcm&&@|0V*5$ngzlk>epptbexUF+Rt>yrQ2 zT8-^`czjBUMIo?%=w8!$_ip?=0bk?0oG0HvnOJ0`*!3OGIhNO;>NU0gK69|V8!1O= z#%y@*rKJ+`ccJtPYjNpmnrdO#LGDIr-=k6hZ(N1LJ$3fx&1Z<U4p<K_d*NK<%Fb*% zGK0aP6(5sFqko9Dt@#yv!Z-m$N&^gJs<V8u(x*%Ypn;gxJ3t8njO+o}Lp=o6LxAA6 znm#P@k}A;Ldf%PmZ=)EAE{?|^V*_9<VH)NkKMJmdmhWKB%utI{%8~nwi%)LHrpLy^ z9+6yc3lR(t6V)uV=SGP>ffl2vQ))>zxMrtiR=<&nTucLrP@$?l_K{(oUST|<5j;`c z;%04H<?Cs4Cd>xA+oT+j58~huH4*-DZSR`8@Hbn$X1SU9bo1ju3p;)7Si>HC3pMXO z<5(B~a*okw|10d}@9{9tiIgaIHnh5@anOyhifc_z02q;eHJtfZvy^2MfX1}7pdK79 zZ|n%7M(6eM@`iqIpU8VFbV#+?R>K?I>I!a0tI>P6^)Gf?s&uTw&6>Nl-Il$7tcSR{ zJC&Bpx3F3JDy8?j0PvOy)IM~O&c^pTr^t8NLE<@Lwcc&>AbzldnBmWC8{kH?<YQz< ze0e_c<;e;16RjtU5%b=nNQzIuP2w2^!o|&kb2|v0PZqUj77Ny+rAJdF7Ir^$%M{GD zJUn&Zmkrjc_l0>~KkHz+1l?pcMHZqedw*whfHeS`k_RBGXQsxydA5>gXZRusF6iP} z9p&92X8LO_8<_bVuKgKT7#T<<5WRp|!drf8x8BG+tCE`tvj$boLZScK0d}r!U8KE@ z^o9TV8@u&(Z0is)-PD)s=id3=+S=ZAnr5{{>*nrIPqa!84jJgERM1AU)gZ`E<|ppY zK5HA)d}}+}-fc%)nWNW7nF1vMZrdOIcDoI}et##G&8AlKl#H_?{GMvdm>K)J!DIQ6 zwzt8(Z*Yuj`_~J70PY!Dy&~HEQt1xdLhty7K3qP^v|QS=^aQZ~+o`{~yDduKtvY>C z(zBHApXrb2oQC&Jvr^H)X0)Ys`jH=dh!Zm;Q3H$NS-oaixu95LfB#a}0WgE#K5aDB zrh2V5n>i}{zDx}nV5(JV)Q&dWn@6=qMeq^L_#dAi`@Z+$^72JKwY51|6rIhjRym(* zS1RpXzHFyj$!r#ALCREWx!KSdq}Cu7l6e965}Yg<Ok4_@7YX|7f>=%fv<FlZ=r5^Q ziD(_3#fpHX$EimSqcGZr3g*(4YC6~Iw)`+GnAGx0V>KEr=|!@fPGw7pWRCF;)=%P% z;Yzn<`1$yM$+a3S{^!c8t5!;PB$hl}!F3?3CeUc614Stw7mlpk@Ai*h4Pt7gh6Gg{ zM%L0FG4g_0{vWcy#3(iBo?cn>;OUZdz%k`ZCDCcDK5;RpNg4U+2eVGcNo+8>sDIGQ z^K#4Sr;2ML8{tB9<ODcOgtN`%l>v1ffNCSoARHM=`&UA5z4-Ih^03baK&kWUxVBcI z;KvY?$yZCphNIQ<1S$nRB9`nz?jmqP(*0}pmLF=1zw9LOU+BIGm@iuXzzs_ZK#ZM^ zkmeTuHazH!T7RplhspFS)k;<W<E50oP>G9laO5M+iR_faxjJvv`kVfd6h$@HRQj#8 zy}dOnCAZ)+`GZ3z7-P@jl7ifpX2(xWYX{Y1K>nugg&ko5fa0gl)|TA?Feea+l(@&% z&aBQ)dzRlV+ZRYz7rgNuZVpFj^Y8;z>wuS4?dI`dw;!vpeB|-})pDU)uU8ApFZRyt ztKptefwMg-(lVfFAma<}p0S$piRM?L|Czn>1GG+K(;6RR?d5jZ`izV&Fn+?^M+epp z9?FQQV~3@`WPA?~CJd(?I*`HZuL?i661+V)fNu`zkh4bYDL1($a1G|Pxi)wMnCn}Z zyV;DYJ34O1W{FLf#`?|z?C*?>SlHag?8)f}bNxr0hu?ySDEvl1Jc;rElM@I}O8m`z z9Tyjxuu2hzrgfDAw%)AQ?7pw3hWih-LIMe9m;6_~SgsnY)ne6r3>0Yl&34y5m8vC} zugh|V`lv(c%b#xKcMUbR1DUQ$)k9f}mCE7Qy?7-buhnDuYRo>Zjj$!n!9u=*&sW$u z&0E6gVN(EX$z}uA^FS6fljfXZ#2OhJ`42h8h^EqOR3>0xE~i?JA$&m$=Og7Dyi+mP zu}F2}#{#+SNX%HGEr({SY<7F+P!nD`tg2$6KCJVQPQBf=H-S$)r1wpgItrF5;Y)kt zd@v^6-kJ9|PA|-hop(D?Ig<JhXVi=^^&f0s)n#d2`_+EpTvcBT52E$)_4gwkIq6az za~SDx{fP=c5XmOV{Qa&GsVHPYbc_@ZMT)s?xtYJ(K_qhXEs-O@kA67SU=H%0|G@K4 zsj~Q2%mHTa1wf(s`I&yv__6Xk=Ba6ZW<f4DZ*XwU;Ukign$8bA6Fg{OBENkAPBDky zqWW4c7CAl6J$}maUHTdSd3mUQ!398+f;@|%<=1?TPvu59)E=rI;0Kwe{=0S{E<PZ< zNg7d<@mv%@RP}h~DW3@_^5Rp9q)p>qmAg;n<2lNV1LhnF#Q`!;H+&n(NC<aSC{oU3 zqlri=MNtdfD1bbNGl6707*D1tWwqOEoU3Lt7Y_#PIOWIE#iWmd;Y}_q+o#91ntg)B zCX8z>BITna(T!4gc_Xydh{h5@-28w|M?&dfq;TXb$0EUCs<aXat}RDvcsQs>ABcv4 zxBhVIOU487R3KT%RG@G9?Q$p<iU>&iioL&*ibccfUlwA~V55=*inUNEC1W99Bpa{C z0-;QfA|<szIGiq&lX<8JB!a1p?QA7oPRFC6t+mp2Id_%GLwi1D=hNv%JCs^U<P&xN zOo81%pwtK)yxR8R48n^PS<B>;Iq>sip)lCo#qfG%<sg(x=6&Hnfbuz6m54Jwc^&{o z1bh*S#QB2Z)l{pMS`7zo@Y8u6ZFT#4cBN0GqtC5t!+EX=%bB}z(}B3GwjE|F>wIwj zh_0I?IyFCm^IwyfMN&rEffd17f2tnI)8HfTec-G)Of}@uO<jCkcD4)PxJR(9M<PXQ zm8Y8dwNkEa)g+8;$Rvh`@l6rhTS+AnDG8^NSNFm1_EA^dl?F%GwIRs)CJ~&s&&M_4 zK$y*B9%F{_`q8FxV(Fet_{5W~i3B}950BAE1%Gy&!t3)O11;0Q2|Oap+(zz=q2DnF zz_o+<Q`AowcIOc5XGTtH(;x50ci?lqabgAp!*KrTEIP}*@U(wwVP0aI{SP>*2~MSE zJWf=s>x9Zm0eL><GTfwmYK2uX7*xej$UX=L?Sqi-G!hYKX76oEUL$HFn)F7J(R|4E zfrn4AN7W04)K$p)_m2aC<3P}Ehj`(CNVS7|iA28?k6ZhRgtebcV)rgkA~MFEUlTBK z7z*&p?`&ZH+r+v|Nj-MSW_jvV1^IKC6-S1D<i43WPfs4h?w1}QD=$6x9_(6!T}dD% zC%GhjV!_w;V9aOQ!j8e?iPw|N<tn+HIy0{}_Jfnl_HgNIAwujfKHv65ZbhxUtk%<& ztApByU4s$U4M^fJrs3`tCNy5f7LRe?`o~%BTgjSdZ|>H8br_H5FSol#;eDGDm}z`8 z`up$A-2|0OtSG}~46n2QcB(aH5$`nX$c~JSz#}X^;&8OST6!Ay&EE6hQ!`RP{YwkM zTgqJwj&O{AV(+uc>Ev=bSFd7>3oa83e7>Ct)b?K-HUqVTS2ZFe`v=3g$oIH7V@Xi# zRcyIljhB?Ctj_FY@1UZ;(0zHZl9l*Kj}sOtda6U`eJt|gg&R=GQ7h)3NB1d<_gNat zF`G0j>ZuhYpChlF_Jg@m52uOVtldTzYwhDhFq{qk?tSEM!Os-W#t4PtdlJ`$`!o7} z;hw^Ys)taVVaD7kaW5u{(|sqe6?HE5dKo(`^n{e^(u-hX$WK?s&&2e*^vpPMn@(-f z;fM)6;yI82Z=5MS#$QKCqCk?xi1o45F}K<P>c*JLC!_DLkw@6K1e)S(kz)1c$?+X_ z@cjzzeV%GPW={?Q@A2CW&QS*(UFelq_=Ulo-*lqW8?kv)4YM6R>U8@8fS=Hy_v%~& zrOP74X71vHj5*ie<NftTUC{d?WmpXEeV^i_f`K5J(FCrulLp>)(l8hl_R!Gp{}Wl6 zW7g8o5bZ0cV<aYxQx{8%4L=<Ng+6VSg*sy*{S+Z$Z+ebxS!xQ%N@N8N8#iMp^DOaB zQyx%_Ot}`nxVr6-IK)`!Oc3=Gr9zfaBryiK)&P?f9n;*~tM84k0)GK_y1fM~RxIq> zT6yNhDR{FT@5le^<G21J|3Ak*`Af0cz;mWCC_fgd8A(~VkJM&C+TusbzK|JUO%vKe zOv~J3uP|=3NxV361*U{45%F<Aah=o;@c)n5)3?n|^X+Li8;e#-Cu_+lVR$K`@uJDK zlTsxbJ1f14MoOopNc43v9*wuRbHz?Ex806M`z!0q)nYb@92|)!vbj>Z=KZ$5639rV zN+z&UukP<0cHf1NnE4k8hTe4#clJ;0<EuyxkB`dMYq?S^9*>oBHLFnwg`$yUJV6Bs z>Jni1@Ol1;{oMOcsCVn763LACgJxLPIDyD|lXoUL<&X6tB<Ih+vdZ@1*4gHZKIL>R zapA}NRQxbWw>YK(YS(_}4a$*19gz3ywk`*vWX;Nanw)qaZHa}*<DXl&_Y>>hB7p8N zf7cguPr^P82^LNsrJdg$YQ3c5>9~*5BJou3a_9BdUt$R+-GngbIMoG(6fZ<c;73>; z*l%f4?-T!Y)Bk^xPZeWkAERQ;Qi2D~3VrDdL<ibsO7E)$iBg*P9#_lD`JA<qyLyw$ z^*0l1{nvIjdAL^IOb|wVQVIIJDgR&lQn{<;4=2m{c5m62&6n(a@1js%J1iG{>a3;; z-Eeq|w*TSBhu(jw_41$7_P0+%k7Lvd@v=fhCHwjt3pH(q)$?ne^(U)qcIE+plLhpB zFzHxfKTzH|>&y1x;YZKmVKo||n2#?IjYx5cV38U?;ZWw_Acxu!_O0@lOgQNCHA8z* z3Qzcau|4mfA1cqm0bjOHa`}xYnhWYnFqlw@J**u*`&4B_pG(;BaL5-55MZd{eV;l& zLGjr|J!b`M3p?~i>d=3meo(4RNliKadnwVea$<+PukBE;JYDIPt+n@877~Sc?fm86 z17r5VjawM{NdJMZt$Wv4C0UQ`wEMqs6nduc{vs7sOx<O|5%1{uDb;dW-zG|2Jeo;u zhohO?>dE$Jyg*1;sY)zPd5uUcmyIVw(MqOL?_X@=NYyqlZFdn{oP(O|$}tY_!&#4| zMf~*)+r39_GL=Y4^<G_<u5W+zSc$eAzHQa+N;T5qktU4t{W+hjHka9LE>j-9W$|XD zeLwSJ+NUumK7jVF(;}y@b<S<{9lWDW3g6Wv6{LCZZ@EZQGi*?@sEiPxN%HuZR5^p5 z(f?<}*M(UZW9@yRX4qeJDA$y`=bFv;1ZAHSW8d~aYvv^2t(o&tFz7>B7hP!E>{lv2 zIrkL5u~c9T59AwDiSh4}59vgyg3dH||J$b$vML2Y@3AT#%P%H|l~)E}ah?z4A<zwr ztfZOQ8K^S<a!ru_I8yo7{C&9F^^4HZ`B0{a5&7GQ!H5u?#K=9Kvz;>)B0!$Hz(i~` z{aYMST$5`e-17RNg5$fHlRMeikSGN}=AjB55>mb;eCP)g`(-lUBp&4nQUAa6{5^W+ zWJC~mM$h=g&%>*G#{AI-y1Xc#yBF$C>KqC_oaZrJ5h|dJgV6Mi&K+AosDViXA~(L_ zvUKx3mvEi*-saayeS6OwOVLvw*>YVv=ynsCMvhX}fY<|u`}!MQ4RKr=ahKsl0g4<* z5Kkqpco^${xBW~U0-7_fToX4}`Rq<MXcq_oL<}*tX8-tx@uBmaeJ-tz_~&QL3I7|b zM5TpcuWnYteI%>VE#SgVBJl6}29^cm)@yMK$iO?OFT6{gGrz8)ao^*4qFE|fq)5i! zS11^qNjx^~WwJPVuA8^ssC{;IWo@sim;H-1Yx^O93`9$a=w=Z`s#fd`Ri&I%;`Ed@ zU=!qaUBbU39uK@|9=XPkF6EtHQeK^Eu4et-sUtf?#2t&hVu#A>WVfjJIy<AYuHt2t zURUpks?XWSDwpHP-BRK3HYK@tb$oP96}Q6n1#L;6enX7>Z;=I~oVH1tC!#~NULBqN zQ$>9li7B~1Cz3U(<doVb>_n7Y5$hDwX?L`zn^z)CmQTDdcp>J5j82`kNTj(ms^c?! zzwL?-U6-LD5`{AK^Z<o{pbSDYphfu8Lp{G?jZ{LR$@^hBe5ZdV0vZ_<U&Uv1(63eA zRpH(3<^4*&x?F1)tNa=z!qzVAxBSn^m)SkFU%z;>QfO|hpX|NFM^0^Z58=63uv@y{ z$f>@E=sr?;{LcpKNYMU%$wp<3b4<CZwJwAVze||`Ht<AjCB4c-jpiR(H1G7vm2A<D zfM~Lt#dIW!89Q1Km5iR@)`f6?cd^vCiN;!TUbG+9<I=6;LRkG1DG}%*6C6hv1A#&Y zQPR*Sf}W;DpbiXhvan9VTE{V-V2qkonj~O@&@wW1(^|%#qk_kMN%~lP!oqQ}MD<7s z3m>#C0WJ)U2KIps$Xb;ab>tl#9W554LBJ7~ofb9EV()d>dnPVCCXo`8c0Llnv6=a4 zcn}4w`>iz?PDD8x{1ms6pgud!SeUmyiE$gS3F^mtD<<rZL11`>HC07_8s(qgiFbO5 zB)S`~q}k7~M~Rm-d)TSJB)-w4`1Mc*^ajRfAz@qc9_|P<$QMRc<~+qY@yLYXQl?AL z55edjtqk^-6X?X3MJK-4`|vVcNelDLqMP`?WoJi*3U0SKMbtq&y>+32J_@Xg`kN`+ zuj_Sa<E*iNH`ODj{*U1=b6AeBdEQQ)^~j;`5i}82;*vPM0M7yQY@EmoIVK5x$lFI2 zMNBIfR=D<|wi9xwP3>YRf!?kizD{p{i;Ottee0rD^X=}YvO;va65jQq^bGZM;SAqt zcJDT`pP5#MP3%|$pYi{XMS4PN=rtRu7`pLXp5VDOC8cD{^x1)3L(XTxkk&lu223E~ zyD%O%Txxh@&4?sed6L<5WIkN{XgL6HB8^^0*n!ngZfx98FRC~t1@DeIGVE&@D<XY0 z^#FB}jw6-L-RwGHbjVR6A4(8=VG`(%0U9Lf%)uF)JRBqAA?-^9Im|?|ga1@W5fj8O z6w<+G;8`3HSgg(1oJpU#BSedH8p=8PhmD!k%<|}xT}FVNgXH^&;X*nR{5aL4MY0gM z^y!H}b8`);XF3j~Edqdypijp%4cC|n)4RUEN9uPWPf5uzG5<PA*D&ZC)LdI)K7sUr zAeSr&Hke4-_=;0huQx;%G|k?#N$dVI`^>?s7WqOl#BRVJSu8jjnY_*fYl-unJ@VN- z=i>foAwvYuPY;R)P(%~F<8l%b5O9DNx!Vv7_nyXIQz8w^x)E^H$q1V=4rbY~%x{H3 z5?RY#+7n5+b}l&hYa)<e!x{bT*bKJ6P;}=(a`*xG$P-DMv`~g;n0Oe((_u6<BVoH^ zg_?h3-Hc*t3yq({)z&gH!*>g?Hshx4KKg7hw1~HIWaQj(LISLNgKb{ha9F>EprK$t zX>pHlHp5i4HXxF{O!VD{apYXn_=@xD36y_vV+&}?G<6f#{c|xI^Z`Sfw8%&Jxr47b zKPNtb&u||v`PPhv;H6FAhU254DfkX&+;Gmst~4)s#IBXdMH!&bqS<vu3tBWU6V?;@ zSBFV6#SYy!I}?Z|=^0^P&LfwV58vG~c4AL4aR)A)e+H$plH?(w#u((yi{N9(De0E7 z{M=fbMD@gDdwi_v22&#wJ|utmZgNLHy@x~iQ)Lg2AC5D|?7|KjDx#!wPp$^k8}1w7 zKDVKHe_;5HuS@T2CPdE6;d&VCVewHtnH!F+q=pLm$c+_neGlt1{5$U9=MD!nD!S;) zli{mxj^dE+?`wqoG@~f^G$L?dLz7D0qbj`kFa=`!#z^~7mqnZ;vqul3bD~_LOHX1# z78LUZi?MWU2->P}3)zhCa2>mJift1zA@+#?2(Wl%fF-iQ9rVQ?sl_Ls9&Ly0z9w4F zx~6`T41Qx3Kc@ryM?KYslEEQ#XR(j78vSzv{WFB_>G^`}e2i#IKUA|`MVuXhdb8R| zh^qPREMb%}pEdn-s?xjcT?8U=tA3cdc$+=6YQ9A1{a$r9ncO|zNhNk`o3;2Q!4nO8 z`!Zg){>_ITew;|S_r}WB`*G`4y?^43MnXGvTz|DPj}w(WIIxdT>Wnkz;((?fNhI?) zRm?n5h5)S)i5OoZRCpSn<QSooY3yC?s7S5dT(b|?8*4Qc*?plY+`K{htu$MOjaH~w ztCvEpjgBVyS|<$s1D~MrB524p++Mg(Ns4>?1tO91?w5L3MPDW!*-^QjNaQp^PJT({ zy!+l~rCzV-4@7qC<DE!B{&LwX*~i{}qxTMND_|3hdC6T{??k)w{Jp!R$4fFg*5A)4 z;ZE`{d)E`4D*H~EHK}c_z2zeAkqgH*P#UgLrxKxhiDAioh|k~GO(rpoo^63@a>_bJ zZs6m5NSC4K>@<6B?EYWNp2N_}<DMMAw8Wm1FdA0qv>T2zY=*k2m{#>IlSwQ%l2S`+ zG$w8h^8U(Qa_@zT(6+H>(X2l2hvWPm^EACfmT<@HN4<*yGPw<rz{&mRK!9qYZ^$#3 z@K5B$_xQ)KADGWQ^ZZB$Cpypf@N)l*0UEqMG69PES$udLP9`c`fX5z*`Bfe&LBVs0 z9crtD`<Z>tXCLLWq>Ql!XT&>T)iF|wJ<|Vtc!hoLev3O*Dsn4QXGZQtNQ}2D&V^0B z4*a5^X?j>kA}{P?rwAbz|43(8{Z#AF_aFGaA|-eF{!`Ca#8k!Sebci~m%vW)F2c6H zA_s6mO+WBI;YHLf&Jge3p^9&WWA@?2Th%;_gkRbR_SQ$wX>04Kf4mpzM3?Osk-gSR zSb18f%5%7_t`I8x&pVM<_Wt2p`ykqls-W6^d!h<2!;!uAN~CMQII(+2TXsP1vwdi% zSN5Wv$clQQ(>s|WlPmfVyp-qo4NM<?LiC(R{YXvhg8xPjzEDqz*dXm;>Y)XG3W3bO zQiIMMynU;dk0PNnROd~*cXC^2td6}KjWu@*os~{Jy1bcJ)nF`$zu*7dH`2if9o%_y zs!C^}$lmHoWPMWi)S9a0wwlox_bTix$D;ObkXyy|Ucu(>!B-%))8`z!v(ZIeEBDau zEuZtLH~}0>w}nxeL6hIazJA@#JzkuO^}(6tv?mc4tb1&qoVfhlY(>X^p<Rx&AgV0Q z-MsNoZw=|Z-tov&B~V8QQ^IKk@aVQwTl+0wJ9366OA!^hErpMS+eC_mpGx4|8PP8! z23as?##_G@_sY^9A%z-36Qgs-#f6>YAz{b2(RDM#mDJl2N{t=S#JuPn84!A1tBm`~ z6l*}G!7DQ}z#kCNP{bVbOd_NHC&86U;$3h$_@2M-x}S^wB%-=JBdT3GZU*6hCf_@t zJ?i8{FX2koKZ4i6gBToU3QN&_{A-f<Odu8f>Z9j9?}@7hxz$L~&&0V#z=B58(C@S; zrsX};hS%|D5=o?JV_q*bjChZorilHct2{^==RV@I@>c3rP;UHQNBa3`UHsI(=i=0q z#mAHv>VoDVEpie`7aiW`Ki2UzU!l_pR@$#LQnKr}nfZ41sf6{Yr;<`f)U%v>Q`3u2 zXUM>q5l^7}sK;~j<T;b{ybzY_aFa@m*JJAy3loOhI3Y|g7L4{wuV05#2k~&G2)08w zevl6BADkV;W93{Wo(x*4a>+{7?6Y!O9k$N{-L~(;vAtgmW~+@L9$}60@_|5E6(J0) zzaKw(cTnF61d!|wl`rf~5z!M%7AsfkRcv{g{N!|hH5tj3BXPB6zgqQ$qoKo*v&=*o z|96Zs2N@CFJn4sC>xA1&hM{y<OQTvY)mu@Xh{J!V2FDl^WX`jB`6@#oW5RKuU8GOU zy{9EMiOA%yW*@`|S(3Lp%Y>xCO1>G%mI@hiaI=wSzS3?K1I2VC63i2`7A`l+;Yci* z4@M$sK5z6oMygP0<0w;?B!#9ku|z3Xuhetpcr249@2yyf##8xXJRWVVTb}hsG#)SJ zQ-sT9y}zxrOWAZHk<OOdm10ZZIG9X_l9^00luib9+bw(Dz=4?Ol}t8rymeSD20NW# zv3j_59LZ*iiDWvK4A|%0SFgG%5lF_;$tYT>@E02%O-$VPIgcdnH*9&PAA77P_r9<= zO?km3_LXNwR2X%C{@(2Uh3O|t_xw*3yJ*UDYVQJWzkBNCPJPdg3h#+~eouvWVkxz6 zmzqaMO}nJ_Q`YmhcFBI3$tXU5%bvo5`M#SZ#)kyVJr%I8?CPPt3sUuEDh8zUyXLxm zUM^)arLsz_H#v!tvD7%dvhOC->(v-bpP(<~fKJ_+E@F8cC@Rs7hGRygfeg^B9xV2~ zcJIrsmjO9d)mN_wQLypVYezmTXX>F~Hoqly_XVSoR$WHJCXy3q2ifxDedOG{rH`gD z#9SJap6<PRW$!sNv5VK<nF)0{Y+HIe+OC;}gz~BSfjbKa_RdF-_e`@N$q*Y`BO+%{ z9&=pf(DH>GyPp_%47tMAu;l>>bJs;-CE$lr_Ekhdc>Kut{~h9qZlg$C6=EcCwI3(a z<&nwI`2>+_W9x7$p35fGc`}#X{wV3KcP5r_Gl1gB1&`Zj$$T!MlF3{<oz0@L>a*h% z%=;)2049>%@u=KRrr`c+ZHCvW{MO-SBF8=D&O%qS@LmhtQyvLmQl|orOw$RP7V?wH zd|Q&6+7d@0flZtxaz+{&4A!>f`)Koo#Js{s_2~QvQ;QiqPD&)4Aqm}l(oPBun}=J= z<PNIkMDF)x5&9h(D)t${yP&Zra%VzKGMUQdQfGOU9}=N$COWSF2c8^S%75hf&yWx0 zP#&SgiAC0Q5WC8028W)$r(+?RQa-sSz)O<cpGM_hdJ0^DQTbq3=FK3IfkReAFCBMn zt?!h9mMkvsF6T1gRDOB4mMQRyFn0MY9m$k0VZ#}CvU#y~%<J`FCouDK^>95`T3#+? zYvF7>MFL2;p4GqC!~M7Jd;PbM9=TyA?rob_=SAxTHu41dG{do|GbjHaj)s>|C5;0J zu%?6k$LLt=+vRL1tH&iBx-l;KbR=88jBp$=F6PDBF|Vr{HE`-#y&&>hy&#!2y<`ov zNq2N285y0D^E<=Vzi>t;Qx9k2>5m?{Z93s?n^))MeH)p`Uw$vj?NAQa@;#7|px`3J zJoP?~KMH|0%3EZaukI1++YWB6ukD07Yiny8cGm8_+<v#wTwZ^-{nGB)S?{k7RB3I^ z-an|WuiK6Dp53;4$4x?uv(00eVY^3jBl3rd;Lb58n3uqS1^^mV-$x-GU?sAHMVrW2 zD4Jd&!TcDB%Za~Q5b_?(`r44x3GJ+{Z`rRm)QR#z+4^#G1IlRlWV0MwUWt{X(R{83 z;8!_u-d!yx!>KF*q-z_w?&@wi<NXy>SDha8D=zifa46?cZ*8sZl*>CGwgbL!ER`!a z+k5%#=0-kMs#jXYTDaF;&BX)KNA}@&jSs@WGT2qO#s__PDMh6}7a#;Xa^!a52hWMG zeW)X&z9xP|@H|9dzvm=PYMX>$Wn<x4m>|&U;5Le6BT;xHSkBg{Gj-oPwc7b0K8Z%L z=wi?GT9&6}w+>o<Ig2?}BoI#?URJN2I6J!z@Y1$Ct9EO@#aIp3pr0C#9^`uje<JI# zHo=V+?|r*8#o<m3B+rK<{8d&mRqSrm|JK`qH+$@z`bM{y>Yt&oa4%#p$N%va5sMFH zb)iIpZ9Q@~CHKEa?Mhg%_eE;6o^B0qYZH<{j4r1sF%a+5_03dk*nl@r5H(3mf+*@O zSlCR!u>1IPe0l#XTFVa^;S^E0|1Pa!DG{R(CWu*pd#SqOU1BGZ3NrggD)qA`^Q7uM zWoONLr_pN!!@`feOkyjE*JKgEl^+nLKD~e-Z6&gKw1@)O(}&ho@VvgBNi@+IFo=9W z-3e53)mk#WQ9lo=BbBPYdsk7xLcWo&23g^8@A7#(n+gZ3`9?Y8`}25sS<FPsC?EEI zHk((OgLE#Ch_{N-STt5_5ulz=?c1mMtRhEof4_G8+84cuwhFaszLd+A^3__Q6}^c0 z-Z*1DwA+10%q7B9MaH^YkP;$_cA$SQ2+b>iUzi-UZfE}v-1*;uK>sCqDYNKzI@3ul z7(MkKNo*24iEKIhh&RN&FQC6@7B1j;vP%~4Sw|bO6iFe)?tAvtw5Qv6pC`=QqiW4} z!9udnU+h}b2UNGkYV7*{W;0q$_cpuMb`K4@kBzP$Y7pVOVedAtl9^)K`&#Wb-|rAj zeWme?8Ah?eIkZZi(w`6mn!*yFAvR42lz7)LrZ+i`y^naKNuH<bgZGj5rz|v~mV^5t zUIQUndL?1njs1GCo@`XJwkLj)^rpKF`$WBN+S!!t$<^zjyd7?O-`Jj1W4}?guDZV$ zFVa6|*|+&1ovhbuD`y3@{NgwW?t*lqZpVP_wO^`c>7v(Em(34(poFTlW37rNF1;Pu z%cl0#J)KUVC@VCAkRip#n5wgux>8py6y6D0r@m*{rjjk&r+QprG5*)HQcWPs$bKKx zzq%(G6QoOwx3~ZzSx9?TK$MX{VD28U11*)D)V>B78;R_?PEWrwi5mHiS{{ME8Rcz) zbK<$@q7J$B*XAFY<c>#^?&mLG9|P;z1SfHC*pF-c&m9k(1Cm6d{Nqh8g}(wT!5Nb4 zP2I73*7MHjB;Jfc8aImF7!S0bVI4XFPw_vJ*_&36rY44VyeHj2n(Wy=<_-Ps*@UIj z8xl2Pec&iz!z`%z@usK27sBOc$|dNWu|Y%DL}G4uSFMNNaZ!zqhu$xEjUbLfRX5z2 z-fOqMIn>Xt4~&0e_}=LG=&X-<jzQ9k;3nhF^f5Q}cbw{L^xSd$Sid3*JVS?(Jop&r zsGB>%5ekI=5*d@TQoG;@Itpia`myC^PN>(hRHIO;Y*$K!Mk=;*<gXn1pSfuhz18}1 zXGiT|M&GsTJDufva;GMS(VBx1Z)~hyeNtfOHhH4gRa_JAac@qrwtYa|icGFcmGwgs z8bPK2V)gLjo<|qMpie&d`@caB`@gxnMDYsN(e#YpJJ0`_1yU(y{QUO<wDb*!&<~WL z>;Nt_3k-`+OM;<KS6)W#7rXW=`_-=fBKq=WRHb)ST*Y@)IvU;yU$kDmYF&hP2JiYP zr)Y-HF6@)MeMxbRU_oUsKo-iY(CVsvnYT|a4lYwKYqgiD%LC_K`l2{Ov*TBt)=}=W zlKnwKI1jd{c|%-)KB127oH{0>jMx6Dx>Qwr&kospNKyRrKjYK3dqvm$NmbRQ9T;uv zr&H_xe?dz>#;36WpPX?=MUN8|T)jV5^Zs8e@60#KKR@lx#pWhuSh$-!ZEo6o8{B_y zW3|!fHAH6Rh5zF2YN)VKqaNJ2*xr+ySa0=J`uf2)``a#w<eMT_YTeqaJ+D7Po)FB8 zUwi(2kysHV5hSKXtkfC`kqEyO^d9lce%HU4I7IT}3D^bUCKT?FUr9w6<eIS$eUm=? z+p-r~iS)aE!aDaRf*~=4mdmM3D*yY{KkRR24U<b<MwbwLiiCrHK9<+y73270%n4uO zdqZ|-gNoV)xDYGF*bXo#n=Sk1^mLOQgi$-ccUVlXG+OQDU22V`dyRIZyG=Yxr-S!% z6{HpaLw6gyQ0LujsvM2QD$#1Cs65SbKA8{$SP~P_{%QzvwOnrYw8<+sb|G>@v^B(} zAZWXcSb^k6W@?FtxVNAyuhX*%q!u!i!v|`O7|ejUCgD6k1o}r^C|3|t%Vh#c5kHNd z>n9UaTcjlOQ1V`%(2!v&zfdzWNG2IV!p0EYW|a85#L6-QVzjTeE5fX;`OHzKNbr<} zucX}bET`4Jao+6Otrcro{e>@B*0HxJTD#e9P3QDfYF$fXXY?F>PyxFu{1rQ22itVX zQ-daw&=+)u5nzd|*O(aZF&AMJx-UuV0%9O9F;TR|d^PtY)OE2Kag|oSWhmu}U#ok# zf*;cbfh+vAl0SmSI8}~ELIIpwnR?saXd_rg5{;E|K7l_ZS5b*dE*b*eBNU0JNl6aH z(55$4WwTyN0k*`){a4Mce6pC&7nAud-@|Yy5-E3p>22mprChU8`OwWIin1JvMX;U{ zg;Xw^EGFVy6Jh5h!;zjR5+hrlfAMH6;`8uv<io4&MzK{E^ucng*w|*i)Ie|iNBpud zr+2ZWSxeva&yxjUt)>C&&_6#$Q*(Z%AB3i7@rmo7UkiY{`ME#Kur0};$j>)=MD&*z zmmY_vItkxeu2Cr#Qw>ZjBvdCW>2~7WuAC>@=}IyYBo8~*NEM58buF>8Gx>7Wxp8?T zx8_Ui_#Tem#(X~EKAF{t&E9&wkf}P1*-&r)QuKBrg#`N!9;mS?C0!WYKoAu>l(zso zuqj?Q|8v1(JL`(V)IHl*aRhrw?jP#yU+SuS<9EX&j{<~zW=xci=7rUc-raf&D4vsu zQ7vIP<+e8)>lJf5mG*g?|COCw|A31$EWX~a1@!nGq;x@pll_WGn>0f)B0HOwrLIvu z=Gn#rYp7gCRfqdigpk+sHr5+?)bl#St5+9qK-YlCSO7!!RITTe7`X8|b~q=A^MHNz zx(%^(GrnTK8PX(GKqa@~x;a-DwiL%JRV5e_v1?DDtWc{J-go3#Rpe2qk#z=uJfvY) z-CbTL7u55bs(!vgBj2m!8;!iTlW%n88>Y}D+V4k?T)Dg4_teA~Yvh{l^u|<%b339D zWUzTlR=@bSoLARoJYa3unP#U}?56$3e#`S)oc3EhqVoKK8ZMR9YSpTl*Zx|YgmdqP z{LNg=x7_bURi{db%WAdPHLr55$E*J0<3sDO;JfCW{>0gA{ndmc^%JM3sb$9+dB(km zs5xR)_?h@i<m?~-k!K0QCu#wlgY;8Bragk<b;%?D*sJ1iQ=Q*eRO14dI0J0uv&*5x z`$}@z+E4`Sbb%r%51z0vJf}2rSD#7cW=_1@It80L_FTokj$kW#NuxA-)6WjT^6__B zHCUD)1CtUW8%8K-!~#W9;_M=yJ^2QRKkQG7OLGfze18AOAWA&pvbpIw-%k8w{iA37 zBz|<nJ0<T9`_-4tNIef=#OivcdFC7Zmaj*eFMZzUT(r5Vzqoc9qxMubcDe>^Ks#5D z@^`M!thd{F`6Uo|*^JinZNpDSd{DBM20sS*$NcI`_B(b`ommxi#+i>rj$e@3&V0}0 zZ0?h&?yZ0_0*;55p_0$cUUKV?Nc|RbB9HGS?dHBw`ooU^PIxSWzli)s!k<+5Ln7P| zcyE*=F+OAh?o7EBKoJZ!%_u$MCB7RqvbXs895F=RXy*1ga$o{7NIWzTc59^k0QpuV zews3|ZX%legk=Qs-WWIZF~Fiq8Ii<l**j6GXfslwMB%G7Z75_B$#s<~HttZ04yF0; zA2uG|yNyS{5cwU3!#NXnI1?UVm75m~zj?r<VfTydZbkmNt02Pi2<t<0Gcl*r1l%jD z6D-w%c3O{EK~n*$j=jv(A@Ntk)cY+5gU!$pReUX9AqeDSW4lqZf{dgY848AU?RUXS zw@k&~<=~dSkZt0e3qqI3wm&8op3`axp5yo$sYo?_ZvichRU!Z|Le+whwBVr7{z5Im zOAM5fkEns}We<6`@A1dM!PIp1P9SRE?hvWD)eKw}&}?Oz?CxPlMJ{cPY=1&Xnx?J) zMlP-aWOcsv4*JBN`D`kR?@cg8+{!Le8_tXu@pTdbB2jjj#eapKq<;38;-B}?dC}~! zdGhMzAp)~?5d~r~ytffbhJqK7P;lc#BnEh1ILw*_GK-2Jc8=VF9&cLw4?|qX`<IDm zFBOdk*X$SZKr@(*sC2>?&xEX%&@x)!5!FPj5FFx^H@;l!UCTb|pxL-|2hnf@RU?fR zHtWgBPC%ytYZ`+qfI5FbH@pce)=nhC8>{Q#Qmg^^>38mw_1w-x1BEyNAGm>mQ1x#9 zA-y!ZQFN-})QJDLbRUUn{Y-s$%tK*qt4lwPqqhjoAmTAbR>Fhlp6XAQaCXQC{+or- zdl%S74_yI`_W(%q!A85CsPpNezf!B2q7LO?L7NRfRWIIuQQbM(sp==&Q{AaXmiK(T zpahoeect%iR)V}3J?zh?QvUx5tv$jHCc2o_HNX&;yoPJN0{i#Ly@juRrf2xUeZNou z#!IifXRU+7)*=57S_gJ~Qh&7Zx3XvVGAq(4xul%ilDFztraX*(_CxZ~DEW|TUj>e~ zqz_#lYbybsWv@$(q~Bq8_#NC?V!k7+OgsZ(7a9Q5OzeZ{)f4G~?i00gL8*Jf2o1^` z0qQhiPOcfSxj_HE+U&KOtN#coP`n^FssAXG;1JKtM^9lrm0B;r3&7?4qpANL{H$3d z#0AFx?|J?`5RN^5BoZ$O!t+nT6ZSt;)7~$Y4@F7Mdx^qD2w}s?C4PL+kADr15P4<h zDLezYME-;e&3QL7yI_5>@glYnD(1cU!b&ivR`SKrM(o@^+dW<LUiFSPB8ATD^X<rK zVrzFf(6!r};dC$@&qjUOWH|4$vf)xC>yszD8ZK6{fe24qo#6M<Z?~=O!b)hLdvBIP zEBStX_bo7xJKp1ier@?|J5|_QN#^tMR>@m0_v@8nquvdq61jjXMEZyESU3w<S~%Mt zyt5jyyg6%)eL`$roVDZl5ef-%G;U*-k~2>Xh=(>h7CyZ69;Wm8bg#g3NSu}wttVJu zXo0lP^69?(HEnTa8*~<eaZz_f*IJ)$`>UKJU&`4*&Id+!S5%*2WB*7^$2{JzFu~%1 z7mE(=C(iya6>g^KHucTU+JwCIx|-*2HFKGG8QsgXybK-qftO>c)@HR9cCb~bHiW9* z?x=*7<c#2dzZ|Yr6GTWM_(xTp?3FjAVj-T%0mP!eBy0aVoy7Ev(P@ZVSQ52x8iq6^ zdjg3ntH~;s(+x6ZVs@j^P}`S{@PO`{M5?x-D;cVt_j>2&Jzp+Aq}lM6!qh6~u(4Za z;Vq0BQEOParXSs-B!I*Kx%r%uZzn(?5^u@D=Em<1lJM?(OW1dlmD9YczrH$tZIxfG z0%?AZrYLeJIwNtpk_<Qu=ru`%{vFIjm-&|}uq$6`tn`SC6%Es*t%+|=e(#vDZ`}5U zjAI`wqsvGfxqD7~B>xN06wy{Nu1nqI86BjAtn<W=gyCj^=-hoLro3yvQBh)QqxKsj z7PZtZk~a=e4Jjj`#7GW0BG-f$Lq`u$+3H|K80!7v^%PA-0*?eje(FBjw=O^PfK<x+ zIIF-Cc!I%97ZwsjlT^G9P3clEVm9-)SG!~zY_0C^ugYt8mEV=~JFnOrKv|-o;%UJk zv|7)&Q2rnnPW+<X)z{l^PpN&jD&KO~B{no{p`r&8Q=t~81s;rPbtSM_cCUAC3H?bP zU~0)@aY;X(%q=bY8r@{aYPgtaxQ+!Rv(rwLlN}!IW^${YtR%WT+Kt4vB!V)avJ52T zs#~`;s*k9K{3|>0XQMQsj~XAw!azthwhJ;6ZzT(A7l}8!fq}WxPL`8h9)_;L`*t_k zy@82|CDah*yqFvsndje7Gvl|&(({sMreuij>y#yHq|V=`g%E5;GEVj7?cR2>cc#rO zH)Rd~ZxL7R^MuUla>EQ+zuZ3EXq2nTbY-=D+z+=;H|v#ZDut=#*qu|CzQ;Pd*P(Ag zR3J>*&diR{_jKloHh9j8S!(gg?36=csq!9cYcMuWV;FZ;rWRSPoP-@JV*wCMySfme z#Hf#wc>=)cD4k;1MjmkN@J1fEhqVg5MDI(Hpn3Rp*=w+UFl8@lE+ZD9AK)^1^kix7 ziIn^^572oL2C#2qI|xVPq0L?1vTMO_V0-#_5WJ81sxMEKL?vNW66w%ZrL=GC3(vsD z5?ctEj<c8*Xb%Rlcn=*IWkN!4|56}ZJN+_5;{*HXUN3SC_Coy~?Lm?N*ZX|=K3}yo z`kbVZiFt!NNaPP%6Bb(djpi4_`+PmTi`enOO2u*w>;XrmM3{@-gXxvKN@utYx>bbW zx=4iElbD`K=MqUGD$_Lc-s3BGqRG=_6gv##5RK={SLJ*>s`VMi7bbBehF5;0B}wTq z<BZB8ZUcHhchBocW;5_kKaYhuE}@tFd2w1_fz1a>dYr^%l4ZQ;QnFJ%=<R}aM>ce? zQ|1q4D1lJlL#{v<9Qg**WWK;3xUS5x4wH9nvVTH8*IzTn;<K})P6?wT;VtM?;$8TG znkOu|X`PYon2kjGdv-K?aM?Nt#v{Q4)lkpW8><@OPY5tcdn<d;vbPTaj|~D<rtM0< z^>_Tg(Y#OeqAx6@IJqwZ+rk&1eyY6|Wh`4(LhSd2bObAW|J+NFUjnjU`+s9sTB`FQ zXeGotPi1IoG4#(>(uz_2@}*uUHF)b9*0w*vP9yR<K<(m7L+@TPMM1H^`)6sFkU0#_ zQ#kX95X3Msqh^-kGVLO)sIz$Jg?-XW=ezB-v(;*;yP`rZ=DlpcELq)lcW2o?kE)%M zNV>F_du_MNEfrqwma3~~zViTn#MVY_xzX-)SI^r!I~(2BWz$0Av^<e+r@eEuX<wZX zYS<2SvuV3X*E-9+<^A=Y?X_2ONNC$F@kcvom0xN50kLTJwP6&7BC7cUDH8KfTogvJ zFj;M@jg_J@g$;`t?RaG^@b3_Z9)2LOQTf9Zn5aHq_PF%sm_t+!4xPIxd3*)k-WN{1 zlfi~WtD9wo%G%V{9Pj;E#}+9x$j>}RNv}N09NM7dmEX7fZNI0y9%GIDKdikEXk-0) z=cnH}N3z~TxmTW%$LA)x^UCkYW8J;Vd-cv}#_El7ud*vHBCBrIjS`erO+}*KYE!XQ z2T{}_is+iu1hcqZvnztRn5`*dD}uYY#RL(|VkT~IsVSzI#RRhqWe7uYf?IsY(wTmq z-;w-h#`C^!E*+08>F7x3cYc4K-}C4De4itAgntc~nOCN#cYU|9eCeSLa&RcY#A2b$ z8y)8ehd#^H=&^i-4N_#P)G>ePt9bu+Mlr)UKKp^XNsus0%@PvtAhKmV7nLuFnZ=H; zlS#;+loA6!Fm4cQTd!itQpTStC*!Tk=rEXHZIRSbL|Moe`+nP>E*6_5|3>xA@oKoV zvsGDM-d$QU|Jgw(7x&{&&QRzhbPz14?OZ3EU0w<WBTljDoHhFXQln5x*`bYGxU}~M z<+LH6++CJ?@YAm@pMoFTD~v)M9s346_lao|{Q^(&-WDs216uC#c=Nd~^3A&SmaYSb zkhs!Y{G;lt{%5_olmt4T=Vo}3{58?ufSSvLwCh@Ll6HYu_;_ok)twg}VKdx)v171V z9j>8eHf*wjp&s)Ret4@AKm=gPqLU~uaX|{h{fbfuJ-Ky+Fd`U<j7H2TvskBmw`!G- zf~9<}m`tUT#azBrO2xA|wrJKUe%q^;*QeYza4!3iXs-CWn2Sab-3M_SnJ%2|`g!l_ zJ?Sr5j}v?AJ{XL@qiY<!H*n%*mK3JD?nq?$U3Viss#|x20cQ0^rRz4|xGg;M<2$^5 z+b^Q~_I<sj-0u+9;9K|Bd;hk$S$7^x?kg^t$sdf+lmK9V2!`-eLX+V7snWxcpfEEW zi&M|Yk!Oq^3u!bXN06TPI0bor>#iLCpm5eJHbYi4R%pfsY@+c@sJQ+9f#RU}2Cd+x z89EFOioG|*W+IykL}QI&Y!I)<Lz%c;e6xLZ(28Ck<vV(B-kX2-u@3MWynlCk#AHkR z*iFv!-pB9p)-CFRa|*@c9e1i4AKdyKcPit?7rfCo@Zk+do7czQzh9Z7f)n~{bmYHg zwnmULl7sVfdUooULCHypF_14vNQubLd*^XM&rE}tOWs?YCWCBjn?Iq(;pY$!bj~x* zfzjV|&Nc_mL8j%T;C2tQv6Iab2!@+0m&LOInz~WcG^ww}>NbAjtgY5|a9^Emp7i5e zRygPlgaaE}TXt|%D>%coeU(nB;P%iTR)fZ#{?O~ahU=pmw>yBO_}pdj)oq`@|3nIL z;2->|Tex)xihCO01-J@w8I9F1yO%*1;-4G0a=AhtlzTfy-&V_2=gcC5?xQ!hr6PHi zZ4JX}`})4r$uLkcUwd@iuLAaE30wIA-kR^>!}@j4Z+m{%^JCBNGe)cx5D||TkPtsm zvy*H{^9jpJUZ8!8mg17eqQnSx=_<(*OB;{M^=AY#F*Wn(nGQ2teHZd`M#QPtqpL+M z+10AOG!D2#la!*$<&rD=y;6}B$kP6(t>3P%Rr0-5@zjmWMD@#jWv%YMR?Aw;R~5W5 zoR_bRQ6iElo8!Ma++W!kb}IFy=4Nwc|1!ZTL^I^l!D7nIFt8}ytdGzb=yTnJ)PP4V zkxj~c_g7%1eoPF~kI(Yg#yus0BqbQW1szNhtb|FGgil$f;^zBeaRRZJ^*vgcnbm6i zynINy+4y7E<7C=>vSkY8wf(hnA!djB!B%!NcoL0=)`E5-9k#2XKG_=mjc%#!G$-ZQ zgqY%p64UCi5KG15F_iyQtl%Ul?UnTpT1kH<m$YKBLd+k)rRP7jvYB*o?W#swfIZ|7 z&`o~_-2eA9`s@4T3;%6)l7HLtJIsZDz#WFZVSM(vk^F)2<e}jmy99m}spV#Y2~<FW z^<Za6pq(gQGgL2NyVSn`MmYXt_L+L}10(sl@!2<w&_m-sAsulfd8fTbA{Zfn775Bj zG90v8@#y77Btg_I77MGxc*I<b#7lm^Q##_`@n{Pq|GE73E2B4Se#=?TRI|}&rrNIY zfU03OMu+k6g%x+o#y^at65((nok{bMOovC+NFotAi-(Q<aQr+%HMh}L!XGrUB&hDn z@6wXdnLJ;ur}m7_hP8=tp0Bs6`8W@4QuCd4RnD*}1Aw@abM&M5w0};=uyjoTQxsIR zsj;$(T4f!-x=g%^iP<JF3X@+cs{GC~#DMbkj30@WX$nXRGuE|awSJF&^(EK&#JKY^ zX2Sh;*U*wH;&S;~*TKAXUQ)a1;kW{Z)Y8FQsb&SxN%(E*u4j7Z5`BYT%X63-oL4I6 zJ1G)nQiBVg4${6jM=#2ii$VHGbc7K~5t;(94HUNrowJS5t5>0oGs4M}r;z+lo(>aM z=~4&zOo5WPeuJq#KC4f($Irzt+-xK5xQ{tNTFg^HlE|YfUNweFJzQ3d4Z>%r`sk|W zbsI(r{Jvbz5~IL_`KlcN<Lf%)AnCplPvf1}WyrZ6%JTTSX8)=`-0NNzktmYXpf7ym z<}bNT&;T6AwP?UHFuAb!Nq)rr{^ZN<_x<boN>@Fuj^#@)M3M<3g1&F_pWf(RnT+G> znx4s>d$4(i?>_bY7v4i81LpEPc|cDEb|Lx|bzP+Bi(tWk(1`@(hdd!sp68>YAG1$< zLswg5)*uld%s-ckkB^Aq3YC%2%D5F_B#-FngP8|X-*EvU;Udnc#4cZgG4<4Y6!v$h z5a>_D)A^_!jYm`QR3-svu37C=w=z*HnqD4IY17`{D5OJH%(l|GR3MRx1WTg>e=HZt zry~){dH4&dT&9pq#0bAqtT0MZkYKR9)z7z6nP7k-B6c`atfflfc!Yw9;WTOau>>Z) z<qsgAvs5~a#7b+2wYpVq9W7B)ZLLKGXiD)mqy9=E8Azr;{q_CHYD#J{21CIxl@x<9 zI~GU-fD5dil-IMxrIH;j*Y_x2TF%!q#c;sVw#mfzJ~Li#!~@8(#|8m-I{Q2-xZ6k1 zL<qm{fj8qor;l*7JL{)7+DHA9wu&djLp@<gmryrgu=o7xBRq9D_;AAC_O3J0vB!wh z^^s|UkCj}g$)1jl;nE{4CS8oBjK63LvZp~zJAP#9t9ZHH-lll;(DgMRS%Gl8onOzV z>w&Y7ZHJDI^xskZCoWXX{aXx%8>w=<l8(ee^^6^}VSK<6x|HST>Xhg%lXm?INP$U% zzJANRlaEO5F<x-1sFAkq*hgDv=rcQ=uh-I|dnax`zWa<^?tg`*W#j+xh;v}-nd$vP zRtsEdkDh{>$AdLPvgq>%J|m!fk4YZ&cDvb>Rk;i;=a;PJn|;eNR(nR%2`cMtP1QTf ze$$HJ-*jHTZbvpc-hUOY6ql?^t7ydwM@OR*WBJhN#?;#C+a1e%-RZ^JuOI^J$J?(} zNc=g*yAghXUqF|cLo?T{VuczH+?9vp-(Af=G+3ehsD-I{;9u5nx61ic%x2Yq@Dyz8 zNMl<yx-(?QQu#8`GA0zltJgPQq?hVz^=2g+M?FcA9UbN&7LQgaPEcP;D`YR`t;Sw@ zuiE2duaUaM!gyqQ7iZ_q>B#%d!GX=sRdWf}yUHoJV|QeyLFK9c2|*{qj^;Rhf#BY1 zX79aQ8LmtAXDx3^9zXw^qh=FVrT8*v<fZ4m#=m!KW{m97dM-EGca<|E+u-x`Gkv{2 zRkCvI6xV3S?;__S-xNL|olLJeVZLC4l1d14H!e;=W`2PmHu>1A!z8=43asz76*puu z^sMZcO8YBE{<XwvqO1J+rMX_sy<;iYplE@BO9CtVtM53Kvl8q3*buAxG>83i;ydu6 zuL#!l7d1xpG1W^&|NC{ZOf{U_b**V8MU*?uNBFsVB#Iv1Us3Fyd6DJRQRb<dU4&0Y z<hp);RxQkbn}{|NK|Y_4#I>(SJU-OEeOtt|q!doy+6xAk$i#Fy2dbS;7nTBnYJh}p z%TsWAg`u1a;ga`-Jh~30ez8=E#3l0Pdgh9Or9wLGEa}e|mjY3~K>Yqir&qK}ey%GK z8$b8_w|uMKKfxCLc_i9|SBu;g?;<dd$C9H;b#wi9ULT?OB*)#qUYG-Bam?z!)mn4O z?ist)wJm!|t@R_d<^0=Z-_9@Byp`ozq;ESOySGtmj@q@2p1tJM^(lXEIdAtPXZi#+ zwENv!qhT*KYa7OHZM|<Vt5tm(-*Wv8S`JTmL}F5_8>RA^N#yJKLKvd=eIYLINagrg zRrW`F{lf8jp%$_tv3xDsk45cRI+Wk62d!`{SC957O&m*w3Wa|Dq&p!dxk=M99QF(A z$AwxVoeV^xwH%+QMeSrPlt13Aj}PW!y;u#VAP%17`}y@_=ArlpCigZ=4DIi;;_qe+ z!Q=n+Tp}Od>X#9CRPy=vZao%?rBxw+=dFKzZjZJ6F<*RFmqhFNs~(}7>Nk2s%Zhgo zb^R>OSO@)(FkUC0xfQcNw#(uQCsGt$B%)1{VX)Wez=&uu@9*4crB<Z3v!eo`k!M73 z>Lqq=xX?;h665`rylHp8B|*4%zRgN<eY4|Sp(*4Aa(V7PiJm~BwQXZ{ww&^|(HaqF z65SDf8i%3rQfR9BmsCB|tlYv{Gx76!*moq}_u+S$@$DPmh2s{gM-tcX{4RW;;PTuW zvolDr&vkTVvbCF^>H0dP8;8C@GN8BuQBYj^EjLXC*-JvxnB~G0><9LAZH(BU*iI9z zh<qN!zA0i?3NcnMgF<40WHlcOmhh-M!cBwINV{3QMVHiyaP2k4#f8wtp}xE0>*fM} zrZoXU0mwdvLV&+TVEF>jXXn*hE<qn8>D)7ehS`Bg%J0vYU*)P^=vrTu^L~FS60lcC zs}{c2wR$2O%S)O?5?lq1O-k}bK9)_imn6@dYfA&b-dpQq)Rmy`1;IE6B4Q4697?*e zb?;jAV`Sx%=Wv9&J$m&-BI;na`$eNP8bpo#wfbdA+&EURjxWN+!x}}`d18#qycp|z z0MINld?Y>}>1grWB;oV8`Jng9=d|;W!7ECQK%!t`ZQy0+0T=H#)!gEPCyTRl#QuO< zE^<g<6gn>I)zP$1sSfo+@KoNt!m=HSWZK7vPAi>{^b&<4OQYY}>!b+-GtUzQ>+D!0 zQwxTR@nLD@&2kW057n#1Gehf-se6>kwDWo5ED=uV^fH;A@|0_ZM$QV_?Q$}jO+_Nh zZ&qSCJF{AgFKy7p;PvlOKk^>-p;X8fR&CPU2^2AyGTaYlF`nGNypV?LceTq+rYEJS zUB{4l58>qcvIJXv^%Q~_O>?KaEs-!@6qdpVxT}Pi0@u}nhAQ7aU>4jldFyc>-Sv#W z;-%*|JY~;+B(q?QgI*9mZA`K`NxsM3$E*Y$E!|IQmrPW7hw6|LndS)7mQU&s7pHSn zCNAF~x}(JC^@_tbaBm6x@0o6%bC!hAES@r};iZDi9PR<_D_2USQi)P7uY&qC1$&vC zHUxh?InAtIMOXYTamZ!ceKcN5KiTnGu^JEOD=f}3bZNOltJsuy%AIfWmVR?GOW*dc zNL(ep^3a>5kEY0Sonth~;#3QZbF)(*k>|`uLS4YCMe~tl8$Y`Ll$Q%Yk|8meQnhZ~ zIIMS}Dln5yCwrQ8I*s+T*-dx1w?fXba~#^b*osuEkuB#qUse0ny!FrX$H)0LE*pd> zPulrmBCiHcHgEPC-EPC_H=T~^pi#Oq6fPj*Sd!TzbL?|=3Ykk0kti}~rpz^+-UCwl zY9u7G4@bqsdFLGl%jx6zK5(G;ak?DrhTJTl&~O(?2hpF(VKt&Vi}b^1@PDV6hd_>2 zn2)K^dL<yo0~IUnO1+V|vxuWgA)#!Qc1pbMn!9}#Et8o>{wN~%HoEA^19lP@s6&zn z2yTiIT^Co>aEX`b@gOfo#1g@QNsFAS3XP7WKhUwq*ZD<>F$j+#I+7rIql;74{AW03 z7m|x?rIskyps_T-?rGHfMEnk+DFu!px)lg?g|nbHQ2EvoK)LmDF~v$ZvrgAJu`)sb zk|y`>Ir}ZDrmJqNnJQSp;YC_iRNVTp<v(%Gb@G09ITVY;!WFo7%xb_t#LsYap@|Nb zT1h)@S2K2Sc$)E}lDcs`d~F(gHHB9Ci}>R`QUefb@TbTQEHTMnbjQ;C#E`JJU%XWe z%gtSeZE{o+4kUOxsQU$T8jeI6pGjy|l00F|B_givt?PK}Z+reL&p*e$$06(Dy;$|E zSn=83^~~KKga<~}x43gS3ke|^hU{I>5XbKJr89?~At=nTJBN2?^t*)PT({4s>I*U4 zL|lCQq}i);yyT-v5wWan9nnhu{YN*+bt7jdGLc9unJebVwDe1T(p1<^%ZqZVTos>M zAsODN@`5DHT-pw&s+{C6#Ik%O8Dr0&xM{Anb>|taa-7Pi`h?$FmC2~mY$S=`rj2wB zZGr$v1P5|_C!DjXk{S&8@dDvP3RB$LCV4p+>9c<Z{Kjr1L|UY6^{q%SZt*M_AgINr z6b<9L4fAF&#G5>kHzUD7IGL4Q>qhKXd^6txWhimd3A4a;kOjxQ%h2XdBDQ**G6XB0 z$j15n>5SwxGiW5n-g^ChJ~IqL01ZhG9?|!vlpWqTS8}OHJ%Xuw*Ms@;z5HgQw7*)^ z$ws7rk@3}A-5>SBK^#4OJ6H-5`_RwzU)F@k4Hx@2jpY48A}wAmv`m?o+?C*n(F|^; z8&9eRip&#G#s{x`D5lx!n@}R^6~x`;D>83`CKqQh_TGQ4`oVBG_<eLfONH$WT9qs# zt3(UMV@1QAo^HAR<Mj0*{idwxpQHVg81^;7%4JGG=ej?>19!Et=VKmEOl&co?|M$3 z$zs-6=rggQK~LR$xE-N(jbqn5*6s_D7yNVkR<U=OFWA?_cTEj8t||M%v+vNQx3RLW zvaH|LI|uX>o?Xy}L@c7P1$Ghz(!=6ThZjYD66TAJY*L*>)G2m4svk{|wy$3SJw8&L zDaSynN&lR&e<1>Aq1y&SJOvqm8SR<T((v>juc<?GeOPr8JfY2UeuQ}J9<v?$7suk_ zeXr1p%-@GuWX|k}ePJZp9Vgxy9gU9Uv2Ac|?;hqu)ft>PiS~)qvBNKV$P;5-bRg&T zl<ghT3*XiZ7Vfl~42nx|I0K#lz3tnID!F9nUR_&xXMJ0-%zGq<Z+F`r)sTpdlwmah zW=ey4&gzo2nTbPq$OlwBnsJ#QHQQt7GNX=8j*WH6+oh>Jn%X&4rK4Bex5((Q@0`3A zX`}cKzqE~lT?0Bc{nWSeLDK-NMT*0d(V%4H`c~s(tr-P%pF3M?s$j0u1l{+)?z`~* zk)R@Hq`zgb=zHm5ceqA}OW#+A$5bDfjG420DxcNur;nxmpX!<RCG8g#Q}?o-40rTz zH5;(p9`5UVk#4>FMiNnfNO$b<(N&YAL$y9KB|2Tm^BG=G$x(dz*g#)01XOX4J@3K2 zSw<Oe_M+BvXBT~j`koRBpIJ(?o0}J*l~NW1fGVra>UJxn{1U8d?I+hFt?p8|nvS0g z<3-CXEf3qiwW71%w#|p9D$*lKypoXQamdJafuNSo_KO>P=exD^1trJ*T}z!Uk1nkB z?sjwB&J67oKULVxXqfXE?610EPoLbA*{_6{*-M7WlY93Urf%McxuFA$7opa6)ooj@ zv=X|kSsB=Utx>|)C7U!5a^kD6V!4XFTpZt$dMRPaU1xtww@yV)oeQIxMPaR2-R^m{ zpiaRNzR6V%Rq*<b^jbP+oX_+;jepfVos6<9;xAiBeIqU_XlZmPL*4z@oOM@_9_YzJ zXRt+PT+Q2Ga2b+h>Mr^&w3Ha0inu{&d|yijku>A4(DT-L&AJ;h=jSBy3H_E9II_3| zqdB&eweOY)I7cRO!Z<gOe0tftYt8I_uol(!)iNJ1wEoBLZ8B%yp9_x-lrE?wh0FRL zlXFq#!s0ymL*~L1jF-$5<9o!|?>+cg=Yk3Ap(^dFlsgxk(^KUitx(oMZCuu5E;tdW zXF|*c=d7oqGP|ADtGn0O&Guj@-dmJ4rkhXR=^~|Jh!M&VEzUoh`kB_4dU@)cUbkXP zrFO*$b-l(^%DL!TPH@@qUsh#}$^3BZKqJ?*Tz7@%oY|7yMDIg-j<AcYYtbxIL`z3@ zkN0J>M905$UfjIGUE;YTJI1w$1|)sAXiFzMm{_t?=;nx=*3EJIUEB0Q&lo8SE`X2{ zBonCJR>+!~PevD?`Gj!7B9afF_|f#@^s|L&3zwif(juD>R*W^-){#>Y1S)lruI-*f zFDL9vnvKwpSlLJR^+PLLE1?S{OJ4-d@<}|6L2qsjOMv|Z>n;DZ%>AHUkE3XE(Zv}b z?V6=sm<<-eVry!Vv^a293)9et8??%mMlzlZFij##eR?XB(%IMTqFmF@+%D<_NqkfM zkYV-%^79{24uaZHvf=xTnQ6>Ix+iHYpahuOTjLWgYJ@7db0*c_&vvTk*vZzfOW>U9 z@?Jo$;iR*7K)wOoMuz7=rIX=o^{3hr)BB-o4+rrlkmc|}6)N>it|h<H1|ig$n(@xb zrK!>IAxD}~EG@M$KH5tqBd+<Uy)W;oKz9kG{&eLq9K%%-jfD?aPJ!4Huevop_t6I3 zd{WXX1e>lUn}l$_%{C*xoUf`y<r(&_+T$D%LL);ieFlbuRJyAgv+q;rsfQo5txwaE zU%!l+t7m}gl{!L_&EOHd2P3H=g%hh*$EHacnPyN0CW#?)gZ`k1-8?F#OlB_QdK2x5 zrhNqbTjsIrbGgqoVmeD|Zeb4Z*tK~s8D?|SurAHci7S%SLKnVhPCQ`bNt~@ao^_Jj zFc2ptvsHOr)j$-9CmGnHh9MFlmBd2p&w)B$nee$PnJyC98lS|OqoSLC=-Pz%5nfQy z;#=SczVQ4i^NVydm;Mi)NEj=5L24lkiI(>{e;1}6@ONtNF~?z)<*!!nMBfK#fLu6q z)(;NIY1~lNg9B&%5WwNah6<{j3T|vTXGUUmeSNjuURh~h2IX&AUaKP==<~kd6HevE zH@xlN_^h+TcXd`&i!X1jl-s=SIy>;X<;d8`waY6IgjJm76{~|NLJYWADHr$i;=TL) zwV(M;$F`zWg!>uqR`4`pnIRYcf4yU!B#Ff)zO6L!vj^hvhumk#fL3qzIeAZ%@8Id< z1;CZE?~C%P7b%`DDtgR3lART;5WQB$9OFQd!s+X+v`<>qTyS$UoUXRWJnJ_r%Ht3F znUO11KZ(wPjSV|pYn`@NcEHm#Rchz$Yv*-K*$u&}Z91<?C#_no(Q8#|ty(U?7o}kB z6?b9I4na}pzH?Gi;mvV6wy~t_mh+m=yZeDnjB6j8>$g4s$n!t2T0bM<<_qna6DSGJ zARt7N4DDi!Bt`;sNP~%RGfnyC6LPWyn)R7*bNv7ZDDEc^;gi$80HgBs!F)n!th9d# zueRoA_*@4QZk`Db!h<L3vngxJ7rcLuY?4Rx*>n1g4T)l0)JC}%TzEYH*ur%6+aN51 z{;(Yng;UW?E(*LSNW~KONGYDS?3i<siI-{sje!#dsF)PXW+Q3+8i*#aqJ*<g<@aJW z3Yv*eMuMRL#XX`aPVt9QiMVZrqFJ@PwMn+$UOJu}BwHt}!H%k)w0IFu@2$P_Y`zj- zP_~$kMD0W@8_Q<erDQai&W1okM=9GeKH6Byru{IJWtLvAgc5cvoQQ;jflxLRh$c(t z%b{c_2Hq(XC9f$E(Pt&X@sfK^1cy}Uy|e77uOEWw%z5MNyz`v&jm&PWkVq6_yQAIy ziSn>~Lr|cFw7j&LxBJM-f~V&BXLuL|H2g>a`3#EqVfAQhv>3zY4z><5+#e6t`-7^- zRL>N5@YPuO3g`%l&se!Bp%TJa{9-&QZciU_bA+fvrp5UBlmhD&6AWAyESMcnq(c61 zpeC&TaF_%mGQ6Qcw2H&-&cTdK1{+3S{7cnrspN&Th-XeK6!3?G(Of2)!iQ%wQ<wm@ zKM@TGIxSurAKYp#Wil|j;rC-C!ZF5V`Mi{5Ank}A&PXX9POJdv`l_Lm0XEmzFQC|? z2JW!LMrPtS8g?@AkUx}72O0EshS?HJ*wIM3n2m(9$$&qdU22Sv#zbcm|J7T+$NEdK zhTnqk<SDY}SHXqkzy<#XGDuv%4CUjXIBkPE04J-AkQ>Z#EK2Eq)O#=o5=L5lF3Sgu z$aC)^JB}hw@>qo=*r|w^_*7C74UGnc5fbnh#M047B$_U5r81e+mKg|1#e_t(Gd@t# zZ(pt*mQNzy)Jgd;{dORKy>+}xWjXqGLp)99??#f@t!y$<#$d6RTTZXFTrbxyYUTQ% z>>QWfcTdKLmRpo<S<Wu6uGQ;ntIPS3U;e6#7);8efgD!5@mNp#20dWRHz=CM-|_s% z^as-pNHhT#DZcz{+9V{#%$zcD+e>Wq{v&s$>yFXB?`KcxKMkOq$TsiSILGMVd^CFa z8bfx=O4y@SJMQn;eWQ^dUM%;E$xd`9*RE$a>{cq%uV*%Gas`P4%Td(F@iUI6>(P{c zznRRAKV`hML!FNJHW4%pI~ujA4aaMfXw+LzJP}R?a*5J;K9=-{!;x5<q$Xruq{th= zY_izCc}6Hg^6mR)jQft5ns9h|!61E#WPpDNoX{c;7qO*(1=k+W=BA0+2PLC`NZV(= z;DgBX;A7K1PdkU((5%RAODuzmUqvFe#9zA|XU`}~Dtvf<|KFT(+D_WB-FUr1BPUJ% zjq~QsGDzNuU)mkVecz5ROk{i#3m4M#N7Im+u}A3e*|RyC^FxJ882}tyv2a?rNHd1l zeIm5mz#Dp(y}n8|iJyTEi24Io-e@NZA(dNmc5nc$z1F*H)eO>j5Cy)lHl)~2DLC6Y zipE*5$d{Ew%qSK|BwD{66N9>ewaL7Duf4j6&h%6A9sdUH#r=*x)g$TgXJ~Kl>$TRk z`J{d!DdYHr608vxxjE^ytKK6{f7Q2hw{OGiA?56LuML~;cdPUI_FcR{S@*bo=KfWo z8=ZRHcy}GY^HF2*FYxh%@UEt4qv%s8S3;(PHSb2R=O#~x+CO!%BBXVYyFw5c7aX&6 zZpx}`Z(p(DjAHH>o9k}tN1lM+Jdx5Tp{8@tS2mf-B|R}hg~VtnZ~oWY(C>_Sc!rhR zt@j5I;qmB^u}spsQ6gP7mRRvv?}pC4FX;O=mdI12@_$I%A1`3B-81izh{E26gr2>3 z|G|_23C*MV&($JrmbX4fRgy5iA-T=-d`5&bocn}9AKaVzh9SpfcV5ttBlnAfz`U*X z6wJMQe*XXrH5voE)Jh^8iY>>Jwo{D8{BSmhLycG<S&WvGMZ2CX5%*36qLoU_N*7Ym zhSiKDG9jlM2ZJ5X_ybwuVhK>(k#adxaQ;_26O6_Qq^?mZvXn_AfkX$B3Fq87dHse$ zUuVVKAdum!Vu<tno1;Q1;|C*f?pSYHrO-|&8O!$7O23fK_><WKCw`bo`2AbNTB+LF zXq4@EEbF%-iB)H7rDEUkNzCAtP7C9)nnGxQCW{_yiHIJFG(GX&dGrITohrg&JZWMg z464UbGv5rRLKIocMQV{&uDP;W-!Kx5P%_*|C-aedlw->)^$n-8ssab~`T;k3>YU3n z6<EE40p4)Zu}C*t%=48i=d0~>G}_IS#;?@D?JrOf`O^2yZdDLdT*sT8GjGW^O%ANY zrbPC6CW@2>42-SVXGH3$`xmv?uA|m{&Hc&~ixnmkcv2}z&`{Jd*=#K_dX=Ttrjv63 zT~w7_ZB?k(c43?$fwiSAOc%mp3O0DFwNx&1auecAjF46(n`KS9F=;4OwcH5H?f{L_ z)dB<;J39sfE~v*zE7DT+w$<+UFSfQWgJ*UwY#fHeJd);b{{cz<EniRGyXZUlb9e#b z;Vkdk!V{qT!Sf?<Mn7Tw{}MjlA85^nTs6S;=2JGH_Yn%17_5}<;sGX+i3#!z1Gk8V zw=Uo=!5o`UK4ME>Fq7X^_hmh?X*|EDUi$-~c-)G|qke1mCaQrH3+Mz2m3p;QOa@h@ zQ;CKpK3r}Onyp=RP6lz(s-)930+iuIJYX#u|9L$b45_6^LIuPJ#SSNbokBAmj)w`T zW-F@ej~2Fua1hk26@PW5;`i_G1y#p#>cw;@60?Kq0(U1m%%4uxe2?j8;jVCJg4Fp! zQqRvVJd#v?s)WwKt)d_Gb17l~tXdpoGYhymaMI1qERbh^!Tv`qQkNIT41P7`AqMug zzv<26D=S?Xd6bV)@go2GoF&^2L^<;4KKBlO>Tgg^w75Ac^G5!{>0fU3jf?z+t||BK z_pu@VOS~E1N7teX4N5yvkm!O0t|<{>uv{NJ(nm-@n11^FUi2yTy{TCV=^os%ABu7B zY9d@L?K<1_^x?8q>Az|(wer?c1Hz{Ia;i~|9;@t5S4HZZiL&J!I%%~&io~cem`<Y) z@<=(pKWM<y8rtfv9H;Gg`&GY^TFJHQ%iC&+QkI*o`sORA?YvH|sG@vK$`i_8*Y?e6 zekCuv;<qHSfY0$GIUPuuS*nsQ;^_BGE!^`Mhaco~IQZA%?UPaebob)aS<mi6AZo1N zozh|Un>9Ie!?`$wGG9z_JrCSmrt5hyVFW-XzzHnKZo1XG0DnJzv#T7C`)KZ7eudmn z(<FEX>|km@F4aM6rv*{dkOWF`O)YVJ*y5P*)l*+X$%zK3x)#UQnKQ2cYSiU0|63zI zEB{0m`~^Ne;GMLSxUZLM@k1glOqGkUO(@Oug5JeXZ&(}*%>HK}Ut^cYq)F^<WSsg| zLG=n-PJQxyFT64QW8?3eM<wA0DA%HTgd^{f^2Vq@bZo^&D=M>*QEOWT2Wl9#Mu}HE zS~o5;{yxv&^L4F%N(?(d{v`dybR&j=o;X8xqc|Dg0(~VoXhcS*ErH%lSfo(ETBDQE zNee=Z5r|0nKJI#KS4``;q#k;l5aZk*Du>O;UQQwe(2ZXqaZ-n!5Jr&AJ@ENAoYEHY zZHUYU*)6BEQGw-dUo|ore>O21B%@9#%bu;GIAybbJD`^G-pBHpQma+kQoW7F^73UP z=wuR94cyFzGv=E3U>PNAH>!P5FRTsvP8bJ4G)ly4dKQv9iG<+-9k<CGH%g-&1&a1S zZ2*U<sZFYtCP&9Kqmr?sAr%yyY=MfGul6g}L$U9irNAJVjyWsIoE1~mti5U^R8(Y~ za}r-K3+Sw@<I$p9z66W>5UC|ui5kOt+XpK%77)elG%3=Jna8*Yz*XTaxV4Rq0!PJ8 zCef4%g#1xp7638u54i;8*Y$=sIs(tIN-Aw!QNoqzf5Y&AdmvFy=Bvjd&*Ky+`d!Tj z^$2AW3wM^8H3g3n6%=#`L3{I`0WTl`Gw};!W{e?{{i8~&>~zZQO8yPr&(-ZWvOo-7 zrmVSlxx%R2C{bpXSBonocof$16xuzGI<I#6lPYBrp&rHDT;FlVuf)6_PKo{X4`dW| zj6pKJ-Bcd}inI~e7s#&%0*u3X4U$I2nq5(+;<^4sP=+9H_#9wSod_benzScX&JAI% zxo}*ucLi89Rb&@lt0$9@OfgwxEOBWkfk9+8OSF;VkfCHT7$_%$_z(xq#UPiebxBF< zH}=l9O6}4<Iep=v5QJ*5jr9|D{C2#)773+t;l%!mm<i!fDx3H7ZE=~ljmqZEcDGoO z>9aH#EOD?~W51zG8hkWeDy3yYrE{?|iPDWid^eGI*I?}33v<Xkf2`+~=z*WBpafYT z%mSVgr-$2JPtl<<_VIH(e|9U+AC~ds_R{GR|J%peVkx^)?sco>aLLZ*TK?s16J@tn zAJprElbuFm$9Pijte&eVDqa2c<(m^yrR++%+sx*I;e2&q?zRrk4_d8*^TQSm^k2<= z!F~NAo|!m!#~*0skBM!C!92E1Cr=m}8EO{e)sc@sF(eZZ3)QL8dE(M_AIu&1(K+W) zAn{_z^0q!rpYDFlc;VVF0600iQXQ4#tktT~a~~(KC+}Z9j?dG28Tcd*_$0|odWer8 z&RiuR_GnI4_3TpughEUJeTlow*@3>JrZFQ0%`Zv5J`aNHs8h*z$T{l3`2(F#hyO;* zIaZRTm1HCONs&Tlgi^LcnJDycj_2q|_OX0YNd+_(zWfteWBUf)1Fa#2b<Ahn1Pw7G zEAu|`WFAJMB%Cm_Qo{`Ca@8<c$<?B_?6yQ2Rf(YVbUOLuM#s4r^~&lf;<imijOB{j zpgn<XOqy0Mt4^^P?QACV9dPy~C(b8nq}uE_C!<ywE`p)+()ufK=Hj7~K9ZmfI;uI# z<AV7JOYaGObJj7rW&#N2#nlY3{<BV}x|2!m_6Hl}f&|NzVz?A*7e*H4@B)b7=s>-3 zht&MXmnpLqYUG^ZVAM7|gHhH?zE&c(lC6Z*awt>;BpgfmqvnM>#(FP%w~pSHW3LUk z(RK7iv`2Iu*#+690SXU=sJZW@n7L$lDB)M^-~KEtKoU3CpLJO!zstr-2v5iID8?}P zs!Kl3gv{ZK5k5%}IoDsS11W6ZoWR%Xy=>ApB8B7cpVt$N@0JaMD~#hp5_UB~14vy$ z3l?ih+$R}Oe_1}6%ulWo@7!Xel({4N%j7yC_RYzaM3&4*NAQz;F4Z8fZ-c-&jg+cO z^xdRe#Cj4<NAoFyEgR3v$#=W_ZCBrpyF$z6@xz>83r+cbudk%_azCQB-@H~QmCGkP zxvC-RIq%)-FY3KrjR&J3`q=d*dwqo=el5X`a~llG^|zB=E^o*{iI}-P7B}VzDAk!; zgG+xy1$)&as7$W^?r7@57o=|`TQtiGc<^)<K=PDc05d|O_IOdrZpPNX@Jq%cbBaD+ zq@EEj5{U)Pdgrff%gGaSyR+>--%alg`gIIQm8^wwDjd(HVqSm0n=cl&*SGrH$uj%W zUbz%)X4UrP0e2)a@q$OBow3o`-cBEEbGHNbv$Yn*%;VIbgn-UDP|-Aj&8)Lb2Ll@D zuof!uU@5w>oQXyTXJhGEnXDvt9=SD7rQRMhR<;`^kjzme9$pI#NYc1o78v~EvZ?lc zbTg0C-sn=})Ton`%c6M5p^=2QO^=+kR+kK|`kFAw%i0im=U&T8w(>)r@u0s`&AoR~ zR;5-9<Z*#HH)ECb6=W4(Uw)M0+DBaz)INj*^)(2;L8Z&3uN!fRR~Ab_w`8@kR-de$ zuY1qTl}FQe-g5}?^07OHicvabe9!yDBg6QlC-<zs^ZwVkXYplx=?#bVWyZG*dR;&J z;FcxV#Kk**gEk0zvRH=h^(VvpL61|11KjR+uwuO6F3@aztf|J{2&J9e7om-y&uiV0 zczcK3E7fCU_=kwGJ6j<p4#cZ^4j{XQ3s&-iBhr!?%F_srVmgT~G>3CUXNOU+j#i0H zrq{Kg^WS>NnlqV!jiHRZf%p&^W8#<<j|E1kARGkTAOp?{kWx7syYM%@e=!HKxUjmu z;{HXDNdov+b%30~sZ0uy-4jku(Lg-t7t`#fNLKbyvBAtS{f)?S0QI~r-SgRFnd&BS zVk;X;50|rntR=}R*;-=QGKtTQO3|eGP^7u?q#|!ZL8qV1sv=IEH`$uxZbwpNPx3Y< z5&c3toZYFuFN(G&h*felg!7c!mUszalPNV1l1>^Sa(Ds3xnL1dDD_4x|6<GcrsafO z!_z08qFlJYf0;tEV|I%Nuh{x&sHNUWRS^<y#LOY>x~Ip(Ih^wNLTH@#@Qy{acYLBW zdWE_88HzDcEaH2@7mH;>Huz^#!Uhc#@t1ItO;hiHu^|>_^dKwjpwMjgRHRSHrcvLi zw>BGOuUv#|C)wS0w!7#1-J?udZQvmfWqhG>M?RA61L|uM;o$?#%@)mbhW=HDjEmIU zSH?C@(-JJ3OXuCLA|~aLY*O-oJlHn@G<d0q@`UUtH>dqaI;;Kfdwz@2)aK$toJl(W z(={F;`x6JhZ2XfbGSi+#_N&I+j9`Xj6$mS>kkLwgJehenf4sQn6Zr(08^d6#P)M~B zQNt5U9Ps>ds5fvF33+6m=?PFG5l4==uiW?0iU1~AFO#w1b}Zpf#Y`e@%9BrD*3$WY zEFO>b^J%M_&I`Z{I$M+xHff0SAXe>BSx4w^IZDR7$Ts8MU%uP({rBEy>>SLV`^M~p z?<lR>d=Kd&D2w^W^HD+pUb%H+!Rs?^nElgID$eg8Wm|)RS_gOMoSijWCdQkwUf6IV zMdN>Vj$fbFve{TIK4=}}w>JXzpmeg4EHc1*ws=FvdEI`ko4TX$Yh<tgU9bQ}&%f`f zkahU`o`1+#Og3JiN@86Rtw&>JJ&EDynvqdmwEfYu2ebD>$oi+6Xh;@hlA)S@r0ah_ znPp)>LjL^eeR+ra4VY#y*OG=Pe`XmoAM@4cjl=f=Bgts%jdPJErcunlX(~_iO}<EU zKJ8rW5bpQq1Hlxvhh#_)pJcT0LXT3ZwiJ5jK^d%dOT1Sk3)decNFROG3nu%)9(GYS zs2<7{w%cA$sa)(<&X(7gUnL!;fASSi&nw+RrRcl~#lz`=Kj_$gzk8MO1gHf9$L>?3 zXum#*j`VCXf&+ZKq0wM9mURvr{!qA4RQ4)!USz~RYc)*N{+DFO{)Cv+!Xo^m_@Xdd z3G2*0H}G6PB5};S;Jb%y4`}GI;ahXM^<g`<1$AD-w>sRc4swlDy3@$?%EKjRld6}= zPBXdLXvGWpMiP*EHJ=Xl10}29_-Wl6E##Wc;c91B?QK@;%0|L&Bs=>~qF+h$qnV~c zA(Oqt^>>PgIZmVnNqVg@ekFhW{m5+s9MY@5iaNe?2N8}sd!OItefD^ASZ))}>wX>A zycf3HZ|j)~o6!SG!p(uGS`_wP?eb&Z&Jpp!ya@DFXydJCLxuW*s=5Btl8=pd&)H8~ zjWn2_msQ{v(F5n0MH)Mxcwe>(wVcs8>i5ZF)c!xsEA?FLd1AZIB_Dy|vV=hoM+zp& z!h;#=ERzJFffdj1$pU#a^+O1SC4bkL0tEg{Lu;kj1cfqYpBW|R^=_awsCN#N7b-D4 z3b$8wHv$46Ol?K0scb77Xm&QjOSO8WvDC=<cbV^R-hkxRr)~qhRsT|j-jKN999|?3 zJI(Ru8j*SpSymY8^A1&ow*q9V1vYlKCBtES-BW#fOTL&sefQU3@_&z95+5=GiKLK8 z6zNeO=#HN+dgiV92ltFApY<rh1iiQTJo+?Z{S##cS4aUpP@7K5LAJK)#0wNF%1mY> z>pPoH0s#e-g{SK9R0Y+~DGPex1IM!xFpr%f{LEYHd}Jkn!BZcd?DW=)Ikjd)c{1*I zoXii|>mJ>dM?P=V^DRYQYS3Ij5>1Ll5OB~6E3Rz===%w{Mf54tvw4x5KsP&e^M&ix z9<H9}3PxU44QySen1_JE#YLS?ba9?JSNCx-!IPQ=WMo}uh>0nL)xu6QN!u0Sh}tEz za{3W+dkpog6r^&f`>h}30Ll5#JB)<;UOyToFEdcmC)qN@*MVZ_CQP!2sFI7aoFFYV zN6eV#>^e3u;R<&%+5WDy69trZNM0eo-;#FGUVV&4OT*=ue$897*VR?fBtN(>cUP4C zYfOFT?u!n)CXyI5xx6;Hy^$8Zu0n$Xd3D#K;ZQM6@2z8D%6t0Lw+_0ZT%TsZrErO= z#P<t30T)LtVkNV8PHEXC^%DidAhwsQO(4Ozk1LlNFYaHxps1)$4Vgt<SQHhF@VZuo z@J2(VO34tsPZa5N%B07+Pt}&nclWp2ouQ}G+S>108|>#~gGmW8PXU6kYJs_P<CWKw zDjW=tT3elXytCCZ;|GP*5aWxvr8j-{gK_Smj2m+am4&(Th-Qw}#IdUSj3HpZoun2| z1F3uFh2`IiQ%2@b|6tkiEFY?VHv}jM$Wd_pVc(+v>DzuSD?CF~(K|d`Hj4+XV8~h1 z;Gudb*gBy5wCs0tAWh__R2FtyB7Qtq(RxPkLR2vCw{!s!>8}r4q`mgis>381;fKqH zXZe8U;pNF9#A~Y94HDBNi!<1TYo!0M?>$Hk`_e2y{wPnDh7$Xr{-e=rH3OiU#Eq;P z!BDd$lSJC-{24f)IO~6UjDP<ilNQ!H@$^2vM>re_<+Bz5zLB!BKv4J_2GxC_Zm;4} zCXs%B#q|PQ4uX)&MeGJrS4H;X^$X`<rC!OTVz?E&waotUb}6)^|ElH$mNZ8F9EC#3 zY^AoUlIM;19{Sh8dBcvtWq~unI?skm+sFG$c4_-$f4s+1w?O8p#BzmEMYPq)@0>D) zi)H+a8w=aOyN*pXcJPo(BC4YF1N&XklGyv?dr-Ed|Ml;*@}XYd{FHh)`BoA&aFH2e z%DH>~?e^$OXiP&TzjK7`-v8VVJ0f3>p^5{KuMxe$m5Cy8^xP55;jF|V;Q#o<fECM~ zMvKxsJ&op2;~&A7|5OJvo-teyh(D#OVXm;6k4FNQ8Zh2P=jauiale+~_RX_Frsnk1 z4V1x7>5UbL#Ph4g9Q(2Hu#+!`Pr~U~GH!r1GdyYR)l5wUsi&4<1Ay5<Dl^8Dv2^$t z>NOQHq=rP`-M1~<`+tm?KW5oCzGv{~@xuMbG~FO-?d3*($lXkfwkse=X)pdMH~vG` z)|-oD*zS;X+{Eb=4(9SyfLn@G60xm#EuM_T4Ub<MD(MycH~#TOG6T3^DUr%HBB~Vv zR2n<=SM#kJfU<NoI$GDK7mNC{)icBnAJp=V{1@RYO<*Ja!1E)|zl&b}d(0j|Z-UcA zmeE2z&1Ld0!drrc#EO;t6yC*~?8c2iUaRNx0Fb6-jLa!Y+AlnR0z!%#LlK>QAk10} z4&OUJe$(txtE$_Lh600)P9vYDlS6id&P?F=O3>*MJ7g4LdTewyob?6_3@0k1a8eJ} znx#fM-btkM&@}Y@fncPQ3kTlTI<bJi9|#-qbiAG9P3uR|ST^43#4@pHAe$;@a+wk2 z>fu;$3)q#&H{f|&!B{vNF^ardN@Yjoa0-ldXw=Vy3{NnhE}6-VP-r9U6eH1SJkrQF zQmn@u+4-r)j(&&v4zCV=c&R^qpDdz@)#;I)kRAJ`e0_Xv>&yv9CQ&vWl+;=z8@z>N zb=c~pak^NyGY+zVKqz%;$F+_ad9wc*6MqJgY1y)_xrUspxJxmgj1%`VNkx9^VHcFe z>A$keZnjk{<e#OzS38@uoBdfF44NWILo~%9x=!_%`ca*Bv$(aFUpz6C2;nu^5`Tln z8#i{ioA)t`Z{nt%&wZeO@PmuwtNLD(=5nHz6XLLtU7CB5@-?!{ef)kTUg6#ed!>L` zq<Xpp`|+yW7>mB^#l;cljs^8mFdhkgK<9h4VPDUmoA>gw-p9E8TE+SJJi4AiL^J+| zO&1w2x{;fMBX*r2$R@hc91?CC1AY$konVwU)m<xIbAXWHJ@FzjPS2#2u>4LHe@X>s zi`bKon$Gelw$rFo$kxjn<$AV2=>$#FDZI6sqZUaHC16GP5cK)5BUIjQQDneF>9)8O zM~5A@Zk8xN4HIXHvYt{;SlZ5(|L&KmWB(`GrzNU~&LcqvOS%{dBwB;h4mK$pKxzT@ z7BO)N07I04B;@D=`0Rt}e4*J`T?$1~frd?VkAynA5zT~Bo9%Y7km@b1Hkt)Y=7{&d zb<Ui#P?$;sQEGS|+V;AQD=?9xj$JQmuO~X$)!o%#vUP}P;T$VOJFy4HTyTEoIP+ma zuqBIvEJ010#dC$f@x~N~H#&PnGL=(l9SsK-plzQx`rqnlEXuO+;;2PN6|A*nP+EOb zH<B_#+@uAyEPeCdHSs2nuc@yjO1`M{6YY&?>y0b=`f@3fBH?rtx-(YK^%dcv&5kZq z`4VY#T})ihqcF97_O+Kts-^vHJVgJFSihtbC^nK$<d2XSej<Mq#9yDtAN}^kbL9QR zxJs~_od7A&c3u4LC#E+eMUtFV@PT9@_QP4*S+Q-2MDe$2XTt!v3qS)^BOD&?;d#yB z#9PDPky6Qmyi6vS-J|*;nN$|WXi}w&CZEgMz~%9Ne8n|{4^8R>_vC}vra~FR|1n#d z8ndMhU%78H79tni{n<ore}i=<b=*Pc5gKC-h&vJ`R7oi>_8RhPWXG|zYISVJDXD`D zpwa+&j%B;*94b#bC=n^-+8^~uL)5z5wm&@FhZM9y25_ScEP2$saowNC>Un_vCG6iG zJZ)UrwM3=1)!o<kit#qKxSZIRH$(l=_(Uv@k2h!Bo+b2@TkRol;Hu{7$J=8?+k(vA z(SM!%mpAC`<U~&QiZzI~dsh#M&HiI>B7X`_M0DkEf}$lZ2R#U#GCc>A1eFqJC|Qhb zyYVR1*$vEW>f#79so}Z#_Ya-dY40ApG(@Ja(nXcONcUg&@Tcl0{X|I>-1X^s0cQ1u zUN7VVYCMYO#zof^+4L(44=VLhk-4J4!FM1FBEnkm757(OHBnhpnMkNu#F&W3>UBIN z8_LQawl|Bz_$s-ck%I&4#h_7ukqF;>4_nD5khrqa%x7bTI^ls~qu46)U*v`I+<Uif z-6PJA-;t>}4I~JIPNTyl8D{(x{oKV7>BzM71K2>8Ln2yahotHQ>w*lMocJzyl;B5H zLLge1$c>80XixH%VHf0@nwJf|RcbIueCl(Z=Q>&K>KVZ)R86w{o?-7|C*Y!RLo?E_ zr{v~NKY1`t%axcW5K^<)*w{EFuXXQ6Y$B*6nxzxERB&Avd?f4E_1a`x>&Cy{c(uWQ zqup@B6R#Q)pMc0;^ONbChVMMoLK;`!XcpI7nHz0?fJ~2#t4N7hU7UONUMlgzQ;F@) za63~^k@YjQTEks+Jrr856SAeNg*Htxh*{k?@`@X`+C{5c>sReJ#+Xa<#ZadcBd;Yr z0j;wy88waic0<B5qaA7V<OYD1L3ioecl+>fhv|RY6V<w-7P_QslHlQH+sRbKP9X6B zP#OCL`=&X^T})#>fPZ_6ogjC;@YoxVr!z1tX5#Iwe5zE)ms0sHrwGZ4gb3L!!(!>f zI)$q$l}Wz!m>p`hETxO`Db?L-S5|Aya=BSst+cn&#RhJ-;Fbe&MSNQXF{qroJoH2W zyAsWO_nf)<$BcsT|9b92p7M#h`S%aivLaIq4Wo6(Gxf&~hk2WzX6vq}uFv>|uf_Tt zU*i*l9n7nFdECEufAYpr^R2^|x44Ff#}A&}agBLsGd@u_|5_fktUu{^M%>YdPyh0c z+q=HyJNoJqW8o7;Ig9JRe{@IVt{ZGVzw5F$8sp9*xPLW{)2(0iLB(J%Q-qAGiHqu2 z1zQC#9uUP_y3eiSIP-Af3GO6!8TY~&e<acbnUd@P14~8~5m^2rUF0=fU}Jn|Eo<RU z>Rk5BIAGMCe5e#xo_I-~-G1%19XX8re}DwiJgQQgRB(c~6|=`;j-c}1S{1IcBFp7y zcw{!RJN1p_iL5b~Q^PIs!db^R7DQ{jNM0JALb;*#<nAO|Te5`O{PrSnYVP6?`7E)a zzXIFvmuL^4>XrJr;nQHSDIeia(wM-YO6lpv`;u-wg$*wite-rc1`;a9Kia(HI4nMW z>}$l=3WHd7B~8*o^I#hv+A!80o%sP#`tw$rI>Mu2B9QS%$$p~<OHNAAv}0-*w708) zwD&jttq|GM!RTeWSlf;_rR`|~z|mMR9aV)$%%6^qjteCfiDdldKK?v1eEhleWxrHw z*aXAHuj$5i{dg>d+aTnN=!&`XQ-byvfT~n;C;Q3G1X#q|M5s$7kz`v^Rq@J)53tqp zXlEVJQWb02tE-vjNj`(tmvYuJ`IBa5b+x?97M)uw*r6WPbCS+Mb5bCxX}pkRLwkS! zC>?b?OQl@9P^}i)xzZB!Xyw(_SS}YYWe}dVT-j+%wvFbVjEVTRP>=D~31jj1h0$BW zbU4Ppjmt!4_BY(@qiY(!iO*b8YNvdX#3fJzy`L!&qu5%QTt*-IR~6LgTIWm`FuE#@ zbRsjxIS<GE;bNv^`{Q8^<OBi$2yZ2rp?XeGtyl8<E5g#Jxn{@3k1RF^r<ALP?P55T z$=YFvKv`WxCGlrR5*D=VuHE3`H;Cp?yHyiIdwXwj)O*oZq(GpQXw|mYLrd_-kI|Q0 zF!A$66iWe;3!+Hp(Tr(Fbg1B=vM8m{&ZZq4awDqBLT+5ot4_9>&i)9S5YMh{)|%1P z(lBlwl~$uopoowX##kU-yGDO&n?~yknjQKpuX_9H=yKAyB#gvY&A2R;^SvIBYE`;w z%Mi1sP%eLIlWsQ5Y&NCQrPcAg7JcTI=oOg_*Jhodu$jObbK}BW=Ky%JC>eADsZxOK z@d6Wq;n%0(ZDSc|cc_@cvZbq_9S?*$*+Q5>R{=c_ngH#i>7aw!53pQn3hx&>XZg+4 zdfv8^DQhEKtW?_@r@|@dj(s*0f)xB}?A>u!==zr(`Ft@Ssnl}RSE0~J3!L-oeC~9^ z>bUw2SpAn=M<OViOA8M$)ZsUjGUTJ1;ycAehm7^PDGV0en(0x;P7J6P{?{=IU+r(4 zo~q30=|+7m>TITVqN<$A)z{1y3f4bnv)r=;#73S|Na*C$&RRW}Qe`yCT*}#uc9|1e zht%!*1?{zq3VxPI-wj1kFD$|Q1htfz#ncjwMv_1=KYb?tsBx26MB)inN3={XxuLJN z=B#yV`hwn<H`|2<L#T;b%B8FJ$$jK%-FLv?<ZfsmG6LIA>gI*8Ej|<N`f4A1CaR+T zeTHymbD^@1ONKE8kE5hT3svv-=)&0U4L2?SrsF9|HyYJYu((wU1R8<e(fO7U^!~NG z>1=F+{My_ik->>O{U9kJfmpB}?2gX24S*c<6>YI-i^OqcjuKOnZB1|&{7~NOYQmax z2wkP?^HLN74?Gf0xn%J8{R|xGAimsOKyb9GOqE%R?*tpbFt&@K;OJu8@Ebqj9I*(U zi$0BV+o+29it>c&!C0Wgna-9zb=<ZRZS(7KObBZK3e$O?$h@RvlD_C}xmZE-w2BO| zSwz%Cv3Lxm)sk&qxXAn1VIVajItgVm&YQkl6=vkO?V_rmc9>%0=6AB3MYsOMHS3jU z(CzN-cDn=EC$-P1n@Jy@C)Dxe77E^Dhgmir+v_%e@l`E$yBUS~Mw7p)y&>nd^megy z-QLVcTiVgRz3Go!H#X<)Q$Ip?_zB}ag|(u&5`|)e^gp-s;lgASg6>GRC{iY|ORh+d zbm3>#t`sR;bB2Y{noLdbkOuolp*#}E;@G$_{@TGmr*xslm8Kxm@FXF7E(*sgF+NA? zGRnHWZj&HN{w?Mro4>T`{*ze@?>TT8_o9E378aLVkS5zUunptlYd6;Hr&fk^FrV6R z3o(9K!x?wcU)HBUjDyqpCU%qO{grFtFrfWzH3BhJrB{9Z;CR&rw@2qYhChU#*?{Z$ zMqe7QgQe|KARcJ2Xop)Yp}fDpJ(Q{gqSN-PdJlX#6-3vTtV60dOp7rFd(~tOkg9rL zNfm%Ho{ws7B<oa5Qct=Z*mJs<{bj3YJ_Osyg*ic#&s@ql#u3h~iH`>S>V(63l27Up z`QW;W-h0ILM#VQgh2n&}{md(@gMwvaL%sQk%_e%2#5twXZC>NZe%tdOjB8f@r!o&n z!lnE8Wj+W%nmi1F$cmLeE6!aM4s<8zen2gb<5;@hnBYj=^TlZc^V|%D#c|z?f5nY+ z$59`p%B650PMcy;^;mAP2(|@|m1HmwqtZ}_`U|C0f?`R*aE!&sId3Te97#bB!#`n( znLM}F@lLY@F7d}(xQF)rsYp6pgDl7nkv<%X#>&L2g8on;8V;&-QO;9qty0U`%NAP^ zD_v@pmdC$<0`5LOo`dvZj@c;H$o1M0pOrA%N(PHNA2f@J5dN7&qa^jg#4+Q7`32E$ zoC|DMVjvWe(NF<LyuHW_J;(L;OI;y0kE?6}wgt&^y@Bc%jY;^VV52Bbp#8*&9KN<E zb4u&`aQ?pJn`Y1)JbZy}DI^_+n?Au`;p-5u<Rdbcy#f-EKomQT_+$C%ev#TEeeR&Q z+9)YV(M4+&+gc)M66uj&L6EqZ%*wf|8_ZZM-oHS){D$X0@pL@@gxy!Ll3ygmn3#Rw z5iMMkw|t5X;uh<;C!tU|j>$xkpvS@~<$L_>F{kr0!{_9a^09A_xemX=W1sp$zxP0s zH9)bz7sz*A*Sw<`n0pW>kA!3S3ckTTlzjdGZOf`Oj<(NL!lqd0N~jbH1gw-l<PS8? z>+NiRrN2fj1Z;7h8pm-v;D^;Em5YahmOmVe#Dl41I30jwC{XuXop&BP97~e?VcV8J z+N{Ha&a5SKod|0@oh_Cl!ECNpYUeFG6!T{)#U5&<Ki{b}DmGti{h_~-$XM_c#WPN9 zuiMTQgQ-TkY=d~KR<`mRs{Cdtlb|XM4)f4xheYa7y%-4vtko_QSl}f5Vfe7Zg}Sc7 z$CBBIM{+m;X(%laf~`P|B)?cBiAQn=Ds=eJgF!22TUIntC!=+<NZ=#_k6GStr4lf! z+q$Nn=OH{s!lS!@)yQsvo&HG7M3)JVx_Wb7JloIa#Hez2FGRx+75shUjLa+2k}3Q` zt2wA}x5gxR1r^Jgt1{(~RKv|+;$&HGY0c%6L{M!H@mH>$tgbdtEr10BOzI9M{C9&c zrHT=6>CU>gD%U&du}@AF<Apf?wM=#KGZx-|TWf*n3anO2vOJO<cqZbxryfz;2IpY( z-t<%Uy{FG2mcc2X`MggBs{aiBKbhpDUiABi&IVxswKW9)g-yB%hhJZCd)z@`NCFmT zaVzo;Hz?8BwYq$SH%NV!q>UcUf4eCk=?|TPEFEgQ$zkWrT{mufy~GQ?ORgM<ADRdH zl=#1J%nPjsEv1Z>G4m8#Z`Q}d;w*KG^jT!;JOeo}%L5_#USK&s>Yq234mR4gi{+k5 zb&hH+48V4~mp`w+t(%#Cv9+u&;)!Ns*zWH*q-`eR%k{u{zSnLS%KcUii(tREd{J#} z94xUUylXrC_Q`NF(2HHP$aHXZ+qY9I_(%LmE1Nlj_We<v-&JgJl2Gn|0F~fu*;uH+ zwJ<d&i`u*X5etB77>RRYN`rKUjLB_vmK?31*DM993DTXNFdU&t_4Z@-fH#&nORglH z-9S|3)mdV+>Kx?HS2F2pGLhq>D@obk$5=g?<sS8H4x4ac3Pi>uB17cxlcPODplE7# z5k2zhG=0B_pG3s{Bbg>sCFjC!kbS>4=nd9*Y}n3)^1pXzMCNWEZ@2MqauVd%U-CKC z+h4(*Jdx#aHonAy_>^2N>Emzndn44!sFMvR8OUHGG>fL2iZ@Ai5QRuS@c5DMsMOI; zIVl$%h4n5^p}Wdk^7F_sDS~E_y-0Fl@?~H=r5H))BxK+NEK<p{)G6T{z!Eo!!C&P; zh^jMc$H#k)*sH=LI!`;<T&~)Ql6jSTL30%KUl!o2ox3lgPZy3jx=OwfD1`DHQi`#_ zqARM0;%c#oDd;SVasCBnYQKB2zJAeFvgNsY8vEx%lp{eL%YHYHT4n-rcYm)Hwr471 z?Y@;zUSGC6{inx%-P34LF@d$dc6=n;?BsW1vW~Cy0zdu>G%L{wb$CyU!f8b>yEZw9 zylG2sl!!Q#oqj<w@uArQ!y&8)A_I^OusyUB8pF0?vZeF-$L}5zAA8At_~pBQUSYjJ z^7h}6g&UU;nDvtVpYu#n@+1!Ii4fQN-*nE|Bo18UlhJuoNC06zkQ{Rz;?e<lm(=k} zNMBV=`tXUG2=c4YFkQCm#LK}_F<9yzk*`$iEDd_cTkz{q4m$Dn$j#$ea^?0CNf(89 zV%a^Y#z&9cH;v{-4kiH5K`eyx4aC0%G(V9pNq7y^S!7K_e=hmX<36hK<NL3R?%Og4 zMDKBZY2QR5#n3%u%<=JwlTf1mtXen08-K+ENmyZ!zQJ8C5Ueu%k)78&5yL;G+#wrr zIB|$v=(oh*?Gz=TC$0j5D>^-!EkIiosxR+|jf$>)jIJ%YKY|YPxb&I^YKSN~03R1b z25M9P6LU_nW@YW(n4TJ-pq*(mzEyuH5(N$!prBwd=4`Z7t=Mt~gv_(yJsX!uQl*DS z94L`CAxSP$B_h#&CjeOU9H>|ftp%#hWHc0aHtX_fcqX&9y%)|8m#MHc7#?_wlG;(? z!;U24#8i<ll4S33pT6)dG1ujO#P;GQLR1g^$lb8ceQ9ZPAQTCNXfs!(&8XEh@x3-1 zl-;o&e%&^bP&;l<*mnZ%!Oy;qFZ4d0DLVKfF&4K|(Jv)vaNR(t@~0XNBTjC5R<Vle zJI;<O=*HOLNFpAzuiH7wLSl354cA9UB%2NtMKKy?chY59I|48@8Rz$^Khwv~;8@SS z9R1{uJKl<~=qD{RP{1*tzIJ~Bwm^~~r~v(c&7t*SXXy_hEOZ<HJzvH9hk7i(vW*bc zu<fx2vLX8HuQ{gqYtX=s<@<VL>r0Gb1_Cx<jKx=x!+u$3HGLC5-rph@jq2p$5yNGN zzg8$r-BJJ2#ba$1h8G1Z9SL_;x*KM_kYH9&S+h3`-LYD7P(kLsetX>+Z0gD3oDGZ4 zz}!|FU$s7DFZcvq^B(Qgt)rc81LyUEkmZ)O*H!jypUd~*^xlxE?@mFkH%ja4WXpPz ziwtr17x(_{kKH}rZTY3uRvIjnO0Uaxs9B$vi;Q59FkgK9p4{~$*9ybszRyk~ycm+# zZ;A#4LUr8PCM!%zX9<tv%u_teCCb6{2>P6wq4904+5MXf#^~go?YvoG_Z+|;`Z|AN zc=mv9(Xqk&+rjlxjMj&na;iHwbL^?>x*x^9zSWP$t@ZLjcaAo0tc(wORh4fn0_K-1 zqvcv||3*I6zc()W@qQjwudn^lDP(NiXoBohC12dT@{xPJx$ejecyH<qyFz+6{!h(y z*$1R+Cv!-p^_wKpx3&lRUdvo-S^LgH$Z+jFyS0c|SF?D+uNJ#E^x<q8`tv4JjpcoH zZEsnR=&hx~T;w$4>KvZ9y4jC>;t!n>f4r1md0^??mpz$q={E_UD)_M|xgq&=V&b!| zA9-KDwd-ngPhF^hXrUXc$>?CUZ63Y_3%Ih}O2h`yAjiEwc?-Yx#`Z3XYMc{;(Lt_h zLSq<x<>VpMDh#5@)eUMVNx!>xmQ=9$TzZ1a>s;NlK%mII=p4;}%Gx_=p8~x&^_T`O zK6vWw_g2CYd$8l2lm_?;fQ36pk>uVk#zjG`M3Tw3ryYN!nxYg<zqVXdKT6tzii&Ox zf{D<2m-i!16B~GYcP|-H@kr9_lsmQl<yjzAWn6Uoe$iU>{yFmbyPn@<Z+qgIb^RY- z;J&~pf#O>>HhFfR-A*X|fcU{7^*E_(PYV0c1Iklq5^$oo?A3HIfv?9<noER;0GKa& zt^$E@Ia5wV{PpTOY_HW)u%2!Cw_3}#%IA)ADwoeYJ3Mi=bE=w3H<R^jBo(hL2mA?t z&`M@&vAEp`rxMw0i9>;)_s^a4H=D&wz;AUcWq*?3Z6Q?6FK0vTl~J1Sly5rXJM($I z`^bqvT$zB>*|IvdXw0sKsaBcJ1^M=nmB==5{8gh#nY$j#+qX_xC%=Gnn!yJ_^^NaQ z@nn|x%?vvJjQ+7ohpE9uxpFZ`4?E)G)fNL*17!y{La$zhHsIUunc~&rE7@NrI<|=h zFEt5Z=9-`Rc?I(6F8mn<SENE8)g<N@==n#Yi{m51dx>B2#^2E~M4v$$qo3$4427ZC zOTG76=`^PSO|yZf^?T`(3d@te9I;w}0-}BJl);d+&AMuvrE{lXa{OgAJ++`TAnuu< z7BMnNfgmMh3NAPGV_||3Geux=@ZSn~fjli5ubmU}p&Bk0uAH{gqBw}}F750kfyY%q zJD?S~{o!KrTtuEA@nQA+SYI#`ulvG8g)#oGo4w#Z|FAEPNT4y&I23Q)|9KjN&g}?` z(y;VIC>*da(Q}G=oNl(u<#za3yMRQ=j|NLiH{IQ=j#&zYF=8vPE0QB(*k9f%vlUCk zQju6Jl8PlRkEK<2%^z%yFP%T*w&DHoO?`CsTs5tE)XCUiJ#{8+>tr&njCJ#V1bK>= zfMhH3U2)e*g^K4<bNUxBBw>^Mu&PMksEjsDpar*!jUdusJ$1s)DOq=?s^Q8f_Zq_Y z@d!z7O#ia_;8L?UD`#M*7GWpi3KF*b%8DlDzkxe@RYeK~)4HoUQUQfC_I60Mho&#R zBlFjK_tSTucz@UXe<CL&$|{~Hk(WN?r7@3V*oD!{5#*yN=B_UoEVRrRc_{|Nly~vD z@oQKu#cnAPw4$m(ih48#R(&NE_xn4R=)mOF6obKtL1p9Aaxq7Wj6dL4b^ns_howwD zoGK@B)@C`?$j1uhS}GfgtN^mR7@kF<kO;;i`AkV|HLEMpP$pd~7h;7*vK$<84-yQj zVaK=G1-{8_!Z1)1LglH2DPK=u{XearpSRA>T4($}uk}>$jF;mhd|vjq$M``0RDVa3 ziORRk^J(<CMcLoyg=qd+(nCOp#Ax__J|jU|kP-l2AAN?!`E>S4)V<W(LAupUw_53D zE8Q{=cU}>tU#*lfkys+_taUb**PZamPLV2OD)O&;ujS0~|8~CITrIs)@k}9_v{4K* z^?Z7z(%);xV<A~SS||Al?fj8$=ci&->XwSyiN_6B8@TM-_AqtN?yE`5<U-@NS;vx< zJ5Kr;R!_SJD)hU(*VnCS!9A6oFuuZ}TT=Ewg`H(-hxC^l7n44p^w-T+P!CKtPnc`9 zK`CA=UGOvc47{$)o2iBSceKjusTD(+Tr8YCLa2oSKBnwg%zs1$+ej)?s_oorq1WS3 zY`c~5Tf<Ha=@%*%QR`rcHaoaP;;W$K-Sz$7&}S7|eV_Ru+rX5hPy#*^ra(0{FAec- z<%Szp_h8xIt)(gvvyxNm%S53(>gWyiML2x0Vp++=JI~pv%(-`ez<2(R`<;4gfg$w9 zm(J>&TZO7_xRKf4jI<64iKJy#vc?~b#0tGQeS@cg!<&&bdXMtFk$$z_{lD+-TmK_A zg~Y#wYY#t`n<NCT8E?l7fkmD9xgd#MLg|%!Zkc575+*oVE0^rm!_z@2oQ*mMF>wCI zr<0T)0Yo&23yey+qthLIUO8z-6EWG^V)$>#lmCC--Shnm@1L=I*b@7iRCfH>b-i=W zc?;(3<<_tT?M}HAUOt*!Jeuq$jo(v2(3t{XCH$`0cS<?kJkFDgCxOQZNb=5W123ic z<;SnBzuRfG9VzSn;kEyfbH<fHp?=k+$M^kP+_zv&gzIW<<~twnZQpN7BGV8j-dd#; zUYT_FVMOlu&w5{eqi!F|wSHcE9T{Cb8K`681BG4nBO~nn&50-CW7oYhq|jTwysNoO zkMl34R(;<`GZYVj_*>AG5qQslx{5giJXzR7324uv{0d-san^i#|EXHEg3(N)N-oN% zyVcn;%AHgTk+8S*_En=2JKoAxH=Rsd?Wkb7vAtDos&2#jlX|1Mu_gaTo1Imhps&oF zaoVVCZJlg8Sx%-nRl|wm)vq<AZD9K)R_xPyEB!Nvi^`bQu~$)CB^ir2FdlcKIH>h% zX7G~aHi-@sUll|Y<Yznuh#>1p)@j$f<IS_b1+WTO`1pj$(4C)FEpLX2DIx!=vt_<< z4!!xedo5LP&Ls6#0Tx+TvMvN?;O^ai+9WeX*WtQPhsk<;>IDxqMIhVtkZR@nDI+QM z#>GwgXwFSudN$XSR2L}wSdyeP;K)`bmm-xcMc%_rFAtpXmhxMgNx}P29~6Ft;wxi- zW3isg8I_)U-doT3G(Mv5_1?RG3D*1xZIn^f!D88;AF7D(c*uqgPaW2b{IH8fB)%+0 zl5sDSEoN)U-0~Y`zgf;DYrM=@flQ{5N|On`mrlXG=zWqaR;%l^^)}%cLM&~bR;$H5 ze;^N^?@|sQ{Yq{LX5YNKPkm0!)BlBDf50xKEk=tBUAToY3ZsDS#M?iG^d;`83!~2x z5_)ofap8yRQ|8`+**$jJo84W32dU%T?xxdTs$r3CWEC2CHk@rNq0dm?ZE5}gBkuh} z8(Y&nKfUK1*}C1DX}K(yHGS39^0lh0o>t%1y(O2G9_=0Nj54c$m}tY9iP9*EGKh&n z1QCTv^oJl~a6l}kF^m2%i+3=KS+t9?F@qV*V1ijptyv6l1`n8}2t`wwnBYI0J4Ns< zOXueEyhpNZm#gmWnT3?g)^EMf`=0m5^W*z`pYlcX)n<BV#hhAyzS2DEY;Jarnk!em z?N&6EaH<Uh7{gk*Rx2On3jM~#X5j24rcFcU$oTq(@jCxDl@0!(=jWWOpA7XssJ$P| z5b)GMh2X;(e#kk{CC)UUV_}hTBnL*o9Y&O0*-ZhvzBBjEGw71e!39+L)O|mL<Am{q z?!cGyHA*OHqM+@{!)9@9?T{x1%ZY-JGN|P6_T`YpA>rQsQohL5Iggyp6TU4Jpu%CM zP;5?kMp|Epg5ds4uGl<W-2y!{qIm%0rZc+TzfR93e~{S7*Tk@irQFWhWp9)Pc}K&z z?%>=g!&sD((a&Sx^ON|irTnapk_k@!DuC{BGh3J3R#xlicfg6}eI%y?h<Z1<MFIz- zJY&0<PsX6Nz$BFan$GQp%#x!c82LwB&!4dp-jz>Q>F8&gd(tU)Igg?n$tPaq7W&H% zh^hGvzT!Bz(X;+85SAe!?O-IRfvJX|pwk4B43=r!DJ}iP*I#*-C;pXH$9wTJPsQ_3 zJ^zd60Li6dSdfMM2`d+WgrtNLkr5ZqC!jh$kpw3J>Pld9Qkef)OY`Wa#A=9AEtm^Q zVLO`rSbd>x-Vsi3X7iK9@1g|F%R4_6&gI`4W0Zc1DzljU!uT!qLqjSt2Jtn~Br30P zyRsULX;ip*DDj^>gDdE1<ngnIOHU}Xg~_n=j4T7u@Sc#fs(#5#^rPvAd|dIIT_gGu zNoFEox?u_k+lfl~ES#otfJM!vR4Nry7sPAYl;HrSQ3j~#PXzo{smz^}f0fMpgg;mm z{HD=M0N$iJRv?Un1v}HuB*Uo;iL8+jD5yXpok&Fzg*1Qi>GuB4&KsxDrRdq7+I~ee z0QEW*+M{HSKaoq<gZ^+BUyNlzsuK-H0e(;pEf6W#?UK(I%Os)a3WUMA1cRkA1RCK$ zFlSj-+>WIKKD8I5V41V3mO;WmnxL9ML>#0J_*LEMa7#fhkR$=R5Q~H&{%|lKCn!uA zHb%hD^F&6#m4pJhM1+!P&Uq!B?5;ClwdECGG#3t9L0^=w2-Q=W7~^E^xcloPjU{&3 zaqtaty>x=g-FTSfZcY=6V9LW0ED8URm~afO9lDUm!vPiYgvEuVa_ACmjwb7c4(ApR zSKY)iv$uK(889;#AQOckb^Fej#2LQCb1(b5Sn(W!9EW=SU^0;pC#}tLFuDl_5~;%* zzBo6Le;cW(6te-uWwKGb+N2C-*;bc_Yp!HKn{{p22i{jT=df58A>dz9Co~OF2eOFW zLQLB{FS36V^SG8pcB_QgBX^|%+&w1;KY2WGlZfW5b7ro`Y*vozyOO=#3>x{trntla z((OR~01j~^<sM9*PWO(CRxB1B>~LH&OwNv#C+r#M8tWsG_mrn7@=}jV;{Bs*CkUHs zNpA10<E!V&j%R5IO8DS)6oE~|2Kvfw`+@6;Eh1M`QVj)5Cud>AdqT~7x4ys(yOG3U zM?2^=5Jv==hwypQ>#p+oIV$`>yGZ7xP!dtDoZUp9?Tjd>_37C;GoQ%ixMF85{xO5P zyLj*7K0k27w1b`JKg!pGkv$5<hF3RP;*n&+FNOZB-e$XB+w?nKZ#pZPb=m%F$72%C zZ^Q>DZwiA8E0FPrl?SSz+SvilshD38?}d!y>Zl8A&)1$;S_d5R0t%*2`Z7aEMut(% z$$binU_&tg14wEF#;)O}jGb_&k>$v@2(W?NKA~Cg`h}=TbZD@r@NWpNR$?yWuTmT) zk8iXhejMfvUufjuc<4$9+-+)tu=wyRzv^1WtL~mfAID8<&Iw{no}oSXUF<=Z1xxA= zu)t(V%dc*2oJRnCfJTkXOe4z8_X!T#gZ{~xBi9=q1O7@8+8!y}pd#HDjYHWC*bX3V zb>AYXZSu@pUEfb}ILklQ9yMKt`B82S+_8Lu!;*<|Bfa5TEY2%Y5M-c6l6rYBI2XJG zPiKUcM>2qJikGXrCAnNweR9jmKl5Pl%7!KPjOW}LAE+W)<qc1OwvoQ_Pw#GG5QshC z=Fm-Ro%Ehsx<obzSm>#Yf(p0Y(=Xs!!u>xXDm$&ZTq&CWY!FzhH`8Q-bZUi_@W$7? zV>`5d`nsD7M$WAl9P}D_qao3itDfDAVyl+(qSw@Wq#vIyclNc-Gm`0JG#2L4`z!o@ zKsxLw=Vmglo=H;VcT?fn{#67m!pBN&ll#Th``00JGK}Ou9L`9Onx6X@oq-fFa5EeN zvKjn6j+{|-LL$&Yp6_y)dbl)pA&`mpi}6fgo1{m$Yd!i#W06Nl?4lW#Jr;~}9DoH$ z5E9GkX<QZRBBv4m+_UHnXVHa@!v25?uO3Nz1#f;W24=<xki$-etQZ@jq|CZi6K5xu zuL@4LrXVyDSxhQ|)!rVF(pAgncQS`&q~!!JLzOb1n>X7ccc&G!wv}B4nAsG1-DK2u zYBeL~s?n-<aG+XFtDlI*E2Y4tkrhtX7V}T`*XQInJV!&79Gkf2isg!HOH#B@*Jvc? zN6_-7WMYF?{M6tcR>)HdDtl+Vk8u@zWL$G!h$+lM{>nduM)peGmyKhJCktSbs&6rh zRGv6-b)rrsxk_f=l@#feRW0FyS_cO+kjlo(ZjsaA8nIdKZf$ip4WbhA5&8f1znjQ= zzauliE9t+pMqqGpp(1Af;)xNwa9(l8U1O`v4>{@BA3idcJ~G&)COD3qcte%U_S?pU z$9hE);Az9zGFRRvwXrU?|Huy?)O+gP0%xK<JjNHHW^Y(fuHhpdZ)FL{YjEJaZfvQ8 z#{FLTx9kQgtlz-(ux_;Z1AJbhN8N4Jyjj6o3<r%uTDVt)yJf})8?p&elNdLNk$#^@ zo{>v_WUP_0q%O7^&TBrSW&8_#jlap6`~%io78yt9F^WCrDTSwIm@Uj9w$BGk(+lid z&!!jVq&~{h+{_a}fX__on|b{9a5jtg-V}ZV_&}VxO}ZM0xZt)XP9GGl(C+?P&fg7G z8mQx`Oe&x*GJvJ6Za5JNHqJrtgu7iRaDv8Px{M-fy;#NW?8#2pQ;}EBPI+amJUDJh zP0vQm=L-!#(6A$cZYU8B$b71Py=?Az>#{1y>k<X6YQj$eYb`a9y!HOJ!2O5&qtqCm z&{m!2u}%Ur-6MB=>Pd3HVY5B6=hFu!_vi?*x-W2lYOQj7uIMvO4iu(=J{LxFZ}y%! zFl_>eoFb9n+HfCFyCO~MR_~v1Zpr}%&&~P$1M%E{IQ&CqjO+(A`OUE(X9Gl}@T}Y~ z!aJcK=)U!MXqm!bM-H_v`Ux`Wok)~;F$%S9Is43-osz70c$Ea1Gb&<aP{g-ViiB4R zsbohjuaa=s<7g&=tMh2Q*cWnwQ*wH*QYeR){Y@i*;=!`_IBbqOek$wFZC|)qwH<+$ zF0D+<bSA>`g{E_wh2`yLDw?<<OtfsbDZI*^a^7mM3@**x3v}*bwLl}Aa5AKecoaIK z+on;?c4~Gj46$s&>RvdlXx2!;L#{<Fm?e!Pm3^p%e(ohE<`IqqJfJkl55R$&VoadT zQuGC8-GOhgWsvoe%qB<KZ^lOAg|Kh7x+><hypmkF1?}>6dSQWir{{#W1tcd_``m9R zOq3myM$zDS(l!1$vAA+0L@kyQE>Cdl0;tS^=Xh~{)+Y%r+K&-Z2ku;Vu^iuHJ+bmc z2_7#a-KIH*wspOLOcV<Zxs~H%tPv8N)NAUUe&`A+H@<S%kH-t*Xqj1hw+E)J&!?07 z<?pSnsh+TaXj^Yshf88PKcr&8Z_|T2dZu8uF*~Jb;-Yxy9?#E6mA=K<r}|mfz;YE7 z&FyeX)TlKcQYu$Nop#cqAdc#_$i*zSRCipbt7V@UU)t(KAl0q~U2#&ntWPd=a&n@} z<>+Ev&MPU_wWcS!*nFdS*(7W2KalF5q65nXHu)pYS;Au9lhKzP9ZBht_!)4$XG>B< z=OOBpu3#<?%+H?Tb(B{pcm-q%kt{cuCb3Rp1(`yjwqGk0G6b+%kubQ+<wiLS@Wx6c zLjH*54@HwXswW5H`C`<fwyF<biiNL(@>Y>uvcUxI0AHM@;sKZuVng)|a6q&Zv9Lc2 zpI9o>h{kK|?0&z$xR;LllZ{x$c@qUg6b%Mqr2a$`abGa#({uc0-{0Hs_x0d?@-QD< zeO}InAEHfpmKNX)nV9@+VrKH!O{uBL^~VY2{#T~Ds2l65I;b}Az664di!V_Q=5^15 zJPvxp<-ykf&6}Kc-sC5HDH@~TtQF{4fKpQ8rm@zj6<CtFNZXzXZ`=Amw2#}fxHL~X z25K3Z8ACWN=)ZF-8dV)tb869QENQI9s<EAD)H!oH6X)DlWNh<NG-dJZ4o^5|sy6)Y zM^=^`A_EK4qdvxU@|2q1Pn9Yk9l^~S+bbJ^(jJ8(Ul`%RYZHx53{^SJ*i(mj8KZh# zqA$1^<=1zn-+4wAao|%L@6dQHcZ5@Rcx${`b6+uEjOZ(j;)p!<${yV_xW}hpsBn2c zUua(OkqmClux}@c8%aS29^K(k8lum?Sx6_vx@0>XNG&lu%vQy9;eK1;)sPMsUw}rb zyMMVR_{8sw>#xwKF|Wp`E9U6Vw;1?Uw+p&UveUag{I)$BRYB{@aI98Pf%Gk1l01of z`}7Y)JGo{d7!CeA&)`TKF%`V`J=fh^bFYU1S%^Em++IlB=mvwa;U7-6VV}pH9CpL> zj3(T$AN{*e$UEGLIQ+=p@!DNa!+Y-h>hsYU@~e(J_Tj~JcRmh=m+|j5AHAd5H(pw! zXRa^U`!|BC*SFW!XkvcbJ`JynyR@!5#C+7gQEVN_;Sp50)Qa{fQ3yF0QNmm}HD{#w zi_o`FOQ^zjB3qxStyIost&59y0Bs^Jma94$XysVmCDwt{BJ%`uxYc{7J+aE~wkJ(_ z<y^kMJ(wqPKgsvLuf1LuF{HtF`}enKPm^Kmete7e#AbKxnt5$w4SmNHE*$E7*IL?~ z%k6_<0DX&gcZ!pp*tiZBX!=YOE9#vmd9(WgIS;Sf!j8sX`o`8|R6o?B!MA_7RS7Fn zRrqhwwwQ|_YWo|T)&&fhvp3tu_w;T0Ep3l}J}3jR@1f!P;bA})37rnDy4x~+%WL8N zhVihz?SR}Ik8j!b-+dlvKjAR8GTc7|tubC-vWjWu<{sj%XW1#R5bxPT#_Oxg`W6%D z?hfMGZ@RqzF)%?n+(nPhQb$`o^WXp@Uygh5z`zgo1hNq7S$%%Lb${-xrOeDr6?HNy z8rg0RG8q-<t(+CAW#?6YTkrwC_gMPQ%a{HAl&YV%T1N?Ee`CK<E44ZU8_&`%b5-o^ z@8f^`OKeSHko)^cOal5WrvO1-tbPF^Y2r*`iO)!agi+_oBu+?eeo75Cedk6JAn_n$ zyRZr+*+s6Bj6&c*2sMcfei6-ecQRz5le}n&pUH?0?_3>^*pj;5e_P%xLGlny%Fx2L z$+^-kM(s?dCZ@E|+~~gpm>*>85rjG}A$Q+~Pub;Zh`=NNAJY>ssyM!|i<X|=dzUc> z!zzGPF$-{yUAy_`rs4OUeMWxrgGH2@A%epSRWczv5Xz>5t?}Iz?uLu{*?xb2)9Lx6 zfk-lF8<B9!mO9AAW|&yBzvZXyaANI9X#MDi_eH0gsby>VTt)8Ws>3^(T0v4Gcbu2G zL0`VeA8qH$>&L_i6hY>d9LQIdrM|k$`9n9+*`80NCZ5ZD`;B2)Y!FA90QH^QX|aAD z5}F038Z|P-G(Q<Tqkq$xMkJq2=7Jy*o$m3TbGWM>nbmkE6Ca$LLAmXpn;m^yGtT4b zbi5x_ao8FHh2)^If4-|y$n*8zAWz(tM*#`IPQ@yvNbUP%8a@x5fcZZjLt*x{CzwlS z^8h(-$R={`I)~2l^L?Y8EMSA?ofA_FF$j)?8VPB*!mdjfnC4*m{$J<+nl!y{G>-?F z#&~hGJB>}w3!Z|k8I0-2k`ib94T0JnY-ag!&f@J<JK>zhLMaMxwpG0SH|p2~^f~%j zyQs)(TdCFf!9~d_Rb6{a#{wnqSa5y9Kw`T22D3jxX&iA$LY{|L;v)r9$f>#Yx;v;^ zTZ8RaPR3bf-h+P5Rjau^n6xgmpLG>KbS^C7SQE)tl`Qcs%86LLOjWiz-AC5)1N`iN zspB4;@7@I^bx0?S2byb!ApGM`J~e>ksNYbEYFs$%y|0h@yUnxOc`aRTRQfA#cF!m= zQQht2t7_e-6?5yL)(;wgbZF)p=e6?{XUExXR4VIdwbguQx4OOJRLzvr7_9H9?uL5J zTiqC-n{)VGaHC<5<huTdx%pe-o0)=dL1O|4!Aws<h$H{!XTSxpA3x@InxK%}|EZc^ zSbQo4A18H1K{OPJ8MR^{l)>ND-iFqSom$5}QyqH{g0O}l5&s;4&7py?>!cH#m43D> z_8vjOt~b$4qy^$kfWv!6G%#cHd8*VA<b=mY7q83iWh?mSlf~es$rm|$GO*&4`#tt_ zmxD?W<+#-!e*`%XybI!I8IXxV9Z7zGON8qKPy0_Pie~^#81(wb*<h)_gW8R=LAZ%T zuVin<12!*Eqw)9MVz0jQz3Rm%_wC)U*WaHYZ+3?{=YBs|e3Xec{{Gu+)Y035tKbd# zX&i}nx-jg6yU$9+XHE-1dx9n;5G8mIc2vByPeI&2*0*wYnD*)$+sxJ)P;~T{VSBd7 zIE$(?Rjl=G?hs+~zG&3?d-fZ!Xo1ac&FKeY!q#;VO*p+;TF3cpnd5R^x%`_m%&Oni z74DG$ukcfej4@fbdyg;xSQkH4)3-%xq<5=?xhjRmeWG3Msnc`2*&GYlC`d8e>TbI6 z9zo5j6F-Wz2k~oxwY;3K;yaeBg8qZ&7&oLBPb0G)rEd%~lV=1YBPh}26CKgSfvyXp z3blhvqK|VI@R$zpS<gjRA%4Z&zf0-h&Rgd%Cp{AnG$sKi2d^M<xH!-a8{)#&u_B$a zFfl(l>G=vG?wq||RlPIAKkz%3fv8Fk`stS|yHcCGxn52F>xoW{%(K%DxP_y^8?|RZ z4CNe{yY<!nPGGfM>s0kw?EG>vGGSn^&1$V8N3St3NU%cyP-_9<*l-;<(^F5#LYjda zL_m{Ek~o1@CJeh1WG)D={Ll~)CoaSr3l<EAY2|A;m!&#PC!3_(!*mxD*6YM(A(LQ# z0Q4&iRzWlO7W^#k+rFp@5}?mijeqrOvtDv88_Jh{1utVyKE2&!us4EMcRyCxOcoOP z&_17HvJp2TjsQ_&E$w~*!`!cCb=;PEhc@*NKLRuTefGDwaGroCcKPTQ9w$E20s|(Q z=68X7H@YRzIi}|`*2kQho?m!cn|MvuVklc7nb}(fw|kYvx0vn@;0;2@jB(IlO;O!f ztvU5>ptm;>`YK!lMqr)wY6SGxdlo*w?$tqWy=MgWLwPuVhz3;T11i)LTLd|a$QjYP zow&V$Um?KM5*#cetM8L16tRS;jGb2si|St?FT4JoVWW~a%^TZnmgSt`IX=|~P#=T} z&kUeM9slz}F$O@yTxM4#5<TdF(6Ou8t74{F%@o;dxkAF&p|LcawDhzmRZApK&GYpk zd#%)woMQF}?>~EtWk5bL#U3;HxivdS3KkD2Lc#pdb7aP}&!`nR(S7YS&NfxBe05q@ z!5ycYR8&6|gHZpCCcR;Khge1ev+cGU4S2bgz0#DRiTpNK-2L8-$xBQ@_G#J?EWUsl zMo0Go&rRqeI2s3}egDF~qDfe&FzxByh?nFn!J5ckF#2Bc`4bh9Z(d*rP&d9=*1l9M zalc&~mC7C$(2!yp6CP=S(owenIRIj$8NEl3+PRjWI?~s&-)=!y%ox_n(BEyrQ1;F@ za}fUflwaED5-z$KJ`zBW$gk~1ulRhvI~;wcAqfaFJsB%GQJ%8XD`NZI6X&GsoSev% z0(Bcrb~_kplv<N(uDTSq1c(96zk6<7f9EH9<nRC18A136XW!I&8X#p$#Z|n83yHSi zk8$VMm1o$NX2S-uB<1q-d=7&}Ib`$#^v31=n2~*d60EJv>bY5v6U=ALu0J$1=&0&l zn1Qzkb(N{C06}B9_o>^h0<bCTD1E<qrh0=KQPm4&*PMM{2Q3F*P@RATLs;u{#m34d zaRe0UF5{Z>7Of2#2`Pps_pd0V=Z^RFYm@G)GXJQ+CtINVwm#@V`Db|colCRgJ=eB0 zE0am3Pc4z(oSG$z_AHt28e83bvQ@Ob=aA37q{J|kZ-ectZ31fr_xfrZ`FCMZ)a)LU zk`p#LPmBw)>^WjwQrT{DVNsBS6O&WF%~3@_Z0RZSXTn@_SQAel0xX`L5yckn=EtLK ziwO_NTmZDWi}O%8YQe(N3kE~sa3pwck-!<xcA;wvNAl;F`eiQD?Ux5d*9WPd`~2^G zZv3_Sb4e1*-rV=CR9JFd*^JlM|2z0HgLu^UHFqht=zL_-GL7knPa^`2c7N!cx_<Cf zu+sA5{p)zFT6c~vobB#WdatMgrw5&tQXw7#0&V%PD*TBi3f1-P3n=rdl}4@U{ki4y zmsf!Iv<K^fOuAlKZEmzWjb^cM1+`GEvQ}^B;KNH~i?#Nq*hM4xzQ-9RoLHZc_&#Y& zdgkU0Ez-Tx{?vG4x=DLD1V(~ee^HGEBZ+mVKiICr^1ODj`|7>I`|N7#Vtc(>NC0In zH*1Xw_OJEAce3Z4?KpczNkzBvsowov$@=|Huas-o*DAHr{${%dwOPd7pEQ@0;5xrA zC&%<+#79O|(jdcxnjD5(lY>)_G8c<fshuNj98XWMyK>>cD%Rhx3bokUAt~TqTRaf# zNiTZNxf65FHS7X~tGa*L7HG@is<2(5kGt!_<NUkH#Dtt$f+-bZA1D}!KEg79Z$a>9 z*2zUO*>KiR2Cs~W5k6Mc2DE7xgDq8S5dQm)@T>9i@!++*;Y40eUJxnlG;|11ubVpS zW|@5vjcR65<_^U^f2d|yF#M3qKTPI<`r*lfTuFHq7tU~=$)uWj=sx&urPmnGG&eV1 zsm7~~&1SzIt=i2}#TI-{B4bzE!CW*_NE7n(`?^C?DIuuZYQZWEuHGt?%PZAZp|sYO z!hY~D#Jg6$o=pn9W7Z}+sZ6|dqnrrDqnSi9LGoWUnN8WLTsT)O)bfE`x>;$Lq2c!h zVhP*jh<!APGYjuog>j@V;e5oJd@}dR_b3}KKh$%P#et?QU0#4ijvrVBbi|x@4~GCX zQ(pfm>>Lm+KZO2IZrybyfnZ5=`b>snYSP!uW~k4*Qr~edlgZeo&q}73*Ny^5r?u=v zw@|BXtX+27xpd!-$JiAh)+#_H5+S`bl5Us5?)&}Gc%r-9O@b=vUgVP&qnFH->zy>8 z*vv${57&d%TDxvp;kAwRy?Wbu70yHfKuIOQpbA)&qu=X?)k{Vw6NM`?98czKAB6s; zT9LGZ?0UbJ_Z2FoR;8IKRC{DL?3D|gF78=Bsz>m#XOR&bIjf|?BUxS8+S;6uRFKDW z?xnv`3e9DAdO9jd-e1wQ3zT~e;$IOu(o7*+N@dE0)y8?FZI|o$RwkidxJt9__d_ri zb54ceO2uL@jfHILF2oC!&fyw#`RQzP?NFET8LpA9pW~x@jz>h?M4TN#*cino`+SK> z%FP!B(8eDFbby2%3P#<R1yWMLx*)owpga?X^GGWFYBL23Y^vN_$>mmh<zT8?wwn}y zXl`%!i~dHw*h)l75c7GTzuH8)wZi7Bkke87LEgQ~hoEL$wj<k@+vP%~*-gdBC5D+u zasqGFAC<~-E-HV7WY&Dba%_w4Cckib{z&lze*Wv{Mz6_9E9}Dh*ZqrPB1f`*hWjM) zIlU`%P~LRo4a57k`JCKF-1wqn$gh68`xH-)zFFUbl;aEBIdQ8G_?m~3A*CR63{C1W z=uOy<T&)-Xlk6`1L&v-IS-c%uTi_ey7Kg>ug#ETCB~3U3O^@|L5OX@(FcMPlQxWem zIRg|4)xIy+$qtLgma*$>4MOAySNK^m*39HrB`;1A6XQwzEG{lY@)acq!ZquSnMrpl zpns1{N321~Etn%q!p$RDL^E7eb~@JIEOB`)7leI9qKYnsOFd-)<vOQaajV6?UZf;M z&bNNRbST*|3ib$}pahV?FP=7gy=GkEh8Wkb-aEnq2DL|vxob_p1tGld&)|l@dyjoI z`oUx$W%H@R2&*S}8BwR)-}{~Ql1rmoyxpdoxh8EIxL0nsiDJy95l^OT0=2F){{#RF zYZayzt5`f!WEyy1i1~9zI$D+dlmW164eJ%1)j3CJz2sw)plGBrD<_%;_$u!x(Q#=} z(!GSh7QpH3(<fv)&f%;Zq0#{Jdr8;!lG)R)!7AF|7RpwbT!pzc6%MC_-xVs?twWVg zZAV`^2S)#EkFeImjY(}vRJV-kcrRPd&I(1jc3Uc!<m1#1+&Hp&KKw*5&;>Wo_qSDG z9dfa_CdrShQy_qu!|H`QpFxs3e+Az;x;hqm%9HkFG+uUQR;G(fkRbk1Qr12n_DKAr zi0;w>2uCR)9NoVNS<ydKi{!dY&OT;1yl;Tmd=;r}+O=}FonP6gDr<Grv$k4yb}~%z zLOzx67P8@Tt-pEQRcCXfRY{Zka#YJT%&Lr$@x_I`-ZS@Wo4HmYyXn-OW}7rO-P5hp zu2VUvo;cgFtxed6Gv%5$=JveMiXODq)oLr<*pZ=P{fe&t&nAo3@1UcLpBq1lTssoJ zl+v)ehSRqWoqj_eHI#LgQr16H$Lg5pmDO+(PJ(A0q0-RbMJ@uhq(E-#xVuJU>Rkjh znB1xt!k*4O*}mkl>_Nyd<cC5Au%h#zB-w_j1P4r$ERCyU)rKb3LL>MEzL$oTAdsWl zSI4(LOPkY^Vks?Ao9yDkIJq$67lZhP`3t$<Kau<Iwk3_wmNY5hA>GKZ$q%=s2*b{* z1x#{pK)#v=q{*9&DbMdXFU(((=i`p;5<mp}=#oVa-^ys@8rP%wPbAEL&v?6I`{3(G z<Y&LoW2>PI@<;vg-SIT3xCDq)Q<d_;F(yLzAl&@q(Yep$eKIc_1qpshxN6XO#=bUm z1AK5Cv(X2Ou$Tnlv_VS}hnyz89U`hm5FYQcF1F@h+mKkH)rCZc^yHI0;UW>!@@k{j zkrxR*>KB~@{h|cC+yIyA50O0He=J4YK(%G%n{oj>K(N=8<HHD6zvjNi7s+d~cb4OP zVramc;SqX=zK`=If?(gDu%;J1<f9QlqM`<=<d5J&pVS4Is3|q_G0u(dm}I^a<pD*E zK0)z1YDmNS^@UokmesO4RLkXByIm_gt4_*UEmv2q79p-;Cga2jc@@*?(*!KK$BC;} zDiI7OQWGBc)_A_W6FGSE<{+|jHoBwAgw(G8LuCNfMlWdx^PBmgogCfK*V6UX2rh1x z{``kb=#dULH@agID~>#o<lcLFX-$${C#fyE%!m$Q{+JYcgx5klD{d!RrYCXywdZ)S z^}g<!y+h|96_U^s5v?>H#PsM9KHmT0x;Na>9a7<U`)wRv>|#RiUJP%zX6(enI=#Ox zSsWCUU^lvUrs-p4$Sl(HdU6?c<Rmk>EAgnQT!XUp7)3|=k8{k!U*wG)V<+!Aj;!%( zM-7#9<d4=P+`7Qur9I*Az}GDspl;>b4W@<g>J`^}x0%7Q41?EWCq<s5eZ{2`A1r#$ z7o(QOl9@wCmMa@v6jIGz=BkTjmvdCS|1SDK{8;>YQ5a0QFEU`xs1~>(!492#g=R)> zD<|?^zs>LIgl!xO#RFOJJ=iF_RtMjYlm?agLtUI6dAGq~?$uA|uc$=Oo5O5|m4w@L z0X4~#_y~FeOxs@eVUxsH0{qwpCL_IjLCM@6mn=tsqfhRSxr{gWN?=)1peLMk4vuix z6^rcnN3eZ|390pXtGG<L(dr{REiN$`wc#~)?ULUh0!WpuksBZL4aYMRTS&A)8o;}O z02(irvrkVX?=%_3ycYM}BZ`^0Wt6l78Q=S*Z}l7sAUWaOdF8h8ef9zm1`qlnzD=Cl z`s+X8=$KlVl!Jgqe1U}9iez>QD&IaiVK7zqXT`#`Z~xNgGkpVlf8W68k3y?kLN9fG zIT0PkGlV}?@1tz`vUT2wWhl4#8(oydSBtt*v*zhAYVoF2(@~3-Xgd9-4A-#R`NP^e zZ1<~;_k<{LP2Cy{dSkEmozuRI_iY(PcYdFY?ufh_SDCtBMCX`cB0ID?=!>i}c!kn? zBox9tcj&5_(U2l#%!tc8_51)m;@{#Od4x{s^5V?_D4C&5zz;aE(dGqdA|T&k&4b4a zPiLPFe@PY#WKXuD38R~cnnJ>G6~O9*szT+-AwJ>vlwa$4!MC<NAa&3t1ZNb{=baOm zQzg!X<{xt4<78ciyni+H$Hv%ob&j~$ox-bsOD0^8HzYzG6#g%Mr*(9MWqcW<TH;zV zRO`gzMmHWaOPSbJdMI4>pnkA-SU=d|wju3%>zQcG@sTGw@Wf*_^w7q!IwxirbeT3T zi`in;&f4;Og+9m}lz-S!*D}kwH>!0mY!>g6dTt5~%ffgxZ_3UNAjy~a%D(rtC$*Mp z{i;29+cBb%Na@{f^vQPYLl^1phuvG_E_uuElm9-+N%CS*&w1ZO+nN4GJW8=LcS@Ag z(W}f2k#`Sj2YdXsv29RE$%Lv?ZqD)fJK!6J)8kn2HG_aVKQ3+jUByhX#_iiTuKhil zE4G$-JnmHRP-J8%iumfO`%I86s9FGP@J@ZQFf}a`Sq|mL@UV@3!N169<9!o}ru&en z4vL8=nor!UWZHcz-A<2&yjMS{tMl4HP5&uizi9}FbfFz}`~#9+WqO-9`TdI8m2X2p zsiK3Ia0NpLRLft2=W!7|b_VWk8;Wk(BN+edHTbd4t<o_|b^j{7J9|F37T2Jn9LxU= zE3$8kxTU+x^8cs#p@=^UljpB8KL&5y2-Cmk`Jt!B)UP~0u-b7a=^p&b)8p+cW;)ij zI1}Xz`Er5-A1~N%Xq#WxeO>_eN5a(f;wR+)%~G+I#3>Ul4|EGK3?p@ls0{IKlJelm z@vQ7cbEQaRIlsR@zFVUz21Uo^6fr%8#Gqw$%lV4&Pg>o6t(5JQTKj|0_`bIzyQQn; zWvgcQWgu>#naW;>kLs43vIqX{BsH-Ue<f*2c7t2&+lg$qU6BbHxH7-+cCi};#U7Ga z(9|%O+kjBiP3;~gbSvzY8Od*CM9JiJ(I6Cc=xsXZo7C^AiU*}jDz`;`GkB!}heSW? z-{DYHk3=iOH?rk0t#!SfBWJ^{w_`GzgVi7b@vGj(F6T2LdTpowoS4Etk`o3y{V93m znyIi0&sI#;I{$pabA@+~h|Dr!L>*&sePLdW?ugJ2wl#8~N2bcVcc=~mB@$6syli-2 zxjk85H-heC?+aMVERPt7C+kL6UOE9?B5ytIaA9c^`w0JoAgO0{#@pvuc@SH&-3nwx z+Qo`hLSTme1;0Ka7uOHfi>noXD3V-FM1#K5I5o=>J_+yT!U5-4?)hHgy>95|)C)_k z#ETJ#rHk=X%Tft{n5jy3jC1Ud2!15~lBiPypb1ZEyUiVkk!}x@q?}FK^}w`p?~@#h zmt;Vd7s+MQ^sPFq1pWaZu=V^cYPS$q5N6Vz!5iZnK&RC;o!{{_f`P#2IIJEuiw+&Y zto=d-wAb8Czq!{13Cl`)7Ylqu`nn5en@jM9zCAM4?`5uiCtsK-nR7P!G*;s%%}ej$ zFUVhggw^L|P6-0=vG{;N9R5hjUy2k(ah~GG#C2*wJoTv|d>Rwh(8~=efcAA;_Of&2 z9K9|SUaO=^a(i67xY$Xjcl2Lfp^tGLzF9upuk+rUpBb!_MsMdsGQ&OCh0G=K>I)lK z6#SU@1jltv-NiO9+0D~T>Zc?OVkq&;EPp!M>xOTdM2DiX-y-V>_=F&pbDCKeCw<U4 z@2F6<Rcp0+;&+xx--+lcHeCiCm30Uz$))09Pc&@Fenxx6AJ{TbPTWG@0*k{_-D)AW z*8g0a){RJrF7i|APyepWy4!L|>|RRqn#9k=c{$WXNbnni3pDYcj^3iYJk}*$Chf1Z zMB`p)Gz^x>$!UMMa%<w%5!7}$zf#|?ujI?j*^^{<vzxq~1}r!ZThy*jr?|fE*zQ_Z zw#y7Kh*t9HSR?`&aHY|c^(OsePapaSq~6REm-Xa!zs4I2#)1U0ba-<{J%vATLC1$c z5KIJbb>%9ceOMi%*7uYOEA_qQR-vqNtC-s9Pzd7i)@tOo@K|7a>*;&!LM9arOJZw* zuwHNF7^vt`yVotUoogFnd_Cs1AL@5K|Iz(d1NLD_1%1liL|l0G;otU}fRaMq$VmD@ z(cMCSr3-UKh=GoDd+j4`j#cxUuMT>_*WYJN|8JaKQ&LZjJmsYLp&rf%q00ock=o-h z5AV~buuQr|+ffnR*o>e-1+#-<Kt*}>AWb$cxx}(>Ksu3VHK2hm3!1!4IlV@UGDNPW znfU8&X|u$CvuBe9xW?j$F|VRNn56^Mq>Kb0jJ0Fb+0kkRAs(4a*qX!IMY1=446cE= zs6dP57l2!k@UK|v+|#r)i-N<IM-viYl1K6mohdHmC%O3WZ9?+}jVcfy*13yat7NI= zT%k^6r`82|^a2!|*VBiMtW%S~oa8*<tI@R{Ww8sVXLY@oh-&{-);jWTBAx3Il3>D; zcUEzH45e5iZa8lp6|aafSj(y&>8BtHD7ZTZ{7g>l*vxkfyVHrBF82fE{SPSzjjReV z24ZU&U?KhuJBJ_=1V{HHhGybZ>{*gFOm<)^`hcK~clxpNQn>xGDd>U6c%pd6k}?aK zRx;ggCDLzJ8f9gHxGWPMXbp~+jRXcsEg1Hx_2wWE+iDn|uXdDAB_ej*>HZ{?Ug1+K zEp-TZ(Rs66#{Tj(Oy7~Sf8?Y)(L%gq6r9Vtzp-c5yZ!xO#4@+#y0Hg%{xxU)CrCWx zRGoUt_5{6)KHYJ)EX+TinRnyC5)#DWGlY>|-`NYTY-Npfd2r~1*I^~JH(BH<*}~+} zRlwcE%$LK>>|wr~P;0ABJ%TA&&Qnmm%z`MxPo_6J{a0j@c*YC#q(>4VmPlOS0S7S0 zaMX>vy(YRvNaHo}HSePvXY7brU3{RU&r6*%vVsDdQ9kf2x^(;N?w-<uY`pRH*7I9u z?>%kFdUelWS2q#8&ecbl=8_X8xnc5Gj@+NgqLi|WAiRb?OP70Utk-~m)Zf5yr?r|J zx0d$&2@07@EioX%mlQUWduZ>!0JF?l07)2Zp9XYImfa^JDgXEjUs@Y|_}4kZ{)F`@ z0skcv<JlCBkH@0gJ)M1)q^bya!L#V%V$_vq!}&2NX7oQ?_av3b8zU0em<9zRh>*$o zY0A+LKNeWhUqlqdJ?LCifkZ(9`l}@VF$oY?=oL(WDZyN3J<CrfNB&MeiX$9ML#`6t zI1So$J9xSg#Ty!l;Qx$9lUr#?ZclH;olvIi&ll|7MlKnS<|>(3EQ6LA*;XEZxmEV} zcfwJ?$MS488cF6FyLKV(FF(p80%28&M4XLqAd#siQ`xFjeZ^*xPIMEA49Qa6M4HXx zWzDLt#A9*QvTG91uG#REK+}^6L<w6b)BZ}XkZdYXBgsA(I80`2AR-4mYfJgEW|D*= ze>zDne>9M>_5S1X4GPDI=Bm4S(u)4Td=WUqlqoJf*}cT?C;SgEn&9WvlsaC`h9{b_ z=&oMqOaLA8x|FeX&+~~4SPw6H?40O;USZlI7AafrwU2gQz~2Nn0@{Y)uGKrQv{j-q zum)A#F#GNDsts}5TD6H%0ZKwhoqhqznYT5Z8nS8CYf#PlO5NNm*qT>yn=zN=9C$vI z!PWL+?~!6bdi+qVL1Dd~nGh=H`vfVJu8Kwp#5;1l9@NcZt@b`)5`Kd>mlWi#-BLiH z*uycA`c|^GgegsDk_cm;zy}zFI}Ysm$tjVB#lxU#@;b&KduLoYcO-70d%k>gFqF@Y z4=@I9n;|^$y3U*Auc$fgBX@f~YFC(V`O$ScVZWr|0Spr2@zwoK=%z1361rZ3CltA8 zUpSNo)nSi0qvRv9{!0NgEVtioJt{W?;>YZN+Gf<5FF#V>(0@w`+YZxSm|O212z4>a zjroT07|9}7T=Apcl!krs8^`6QK)^Y^VSL77eZw&6`SJ6K1h)8iobcIRXYhQ(IGM+k zd>du&IE@bs)EA?7Q6!F_&3h*g`?Rc~kxb+9x*^rK7_VD`^`qZ7U^m6{5?K4d)Y4<- zpJ;ebwKw9auJ-$$$cJ}^`ct=dABoOLNm@L)jI9;FH$-#X3#>YU(N>hdT-$6r7zBx+ zvB9QvdT%y~-8)#jUW#^Owb->e|70zQUN)9j{I83{O0@T8$9!OPWsyE5ax(uOxnnZU znc7uRwW4|50lje5b~X34XD`rukLcP<M6L#2B2r(*YdKTxk^QO1dwg~bt3r%4XW7=3 zY^6fZz*g_to1Z_thu?`!98No@D};)*oM86*)XH^(MpWWtmzUHX)D-mZ6W6V;$Ib^2 z*Gnp*|JR=X-t#|s{*mWT@jp?pgJU0X;DROyLzjI7ct=o#@?;XL%SAcPiUG`1Qk{&< zUIBk%j8O?)p1`1#XXbgGyYk8T2&N3rvmuDX3Dslx<~Z$9W5dlioByei1ZAoo&MrKB zOo9qCY5~<$7~%o2f1yY<tep~YuT>&;KHVw>;GGZnE1hhyoGO*`Fx;m6;fOz-i<Ppe z5)@1+Fx?R=lTH?j35uHwD>ijPR)Wn}I0Ih#6G15X+m|aaQ2Pt}EuTff@;VCL@^<Dx z9bT@yTnPuDZhF00P{CO8P0a9jo!8x>oozJsRdz3(Ove(|1=*9emsT!wP^-jJwL=Pq zg{(*<5Vo_$vt}_{s;%y=W)snrKN9w*OZm;?;%2&(Emhka>w$<r5ZLN%G-~-`0=jFc zsIy7svoa|_JVAdeo#mNOwY=kx1}*>Ab|9B2Qp%xu(xf(MAh`b0DhwdMe$#xtsr(zE zY<$N#+D+G@=}?~iM%KrlQDg6ORLBYJ&0iyHBIxmatmYnbCZm+xxS^=9ZNx?SaC-OM zRi8U80@gTHMt@z5;dAOq$QeAro&lPZuN|`~37xEJyNpWvWg}GHcVZyGuX;mLCGEYl zbS!JgG5u?3P_pmn>{h&6*SZZEDj<*~X$s?#<W+R6&nP%9ZWxqJU3*+o72))Jy67e2 z<Tp4Jy|Cdq*oa>77pXQiHsKPrdKk7>fqJ`}$Wi1slk9~e>D=l|v@H%<^`}nHOEf4E z?Mukha|M=<_z++Z)vi{ct16^I@oXlR2u8~3%CZpYlRn7O!X$BRF4w>MJ#56N&QZXY z8f7_2rV!#2nbqK}IW%my2iJF8($Qi1P@g0`4I;#zP%W1(RYlz8d)w_b&~MWRyVDzz zq<Y+2Idg_SU-5MfEy4S|Ttp%yn@ut)pJG1@-CLtOw<ObvO;;Wa6^6_>8H%=wXhh6z ziw27wyw3u}><()osF7s)JoHcp0UoaJGB1AsTWe1AhZ#Hz&@K~Fy_VyeHDKCx*NXKj zma7YyoWX4?rKI8Gd@46zs3bcMXM`5el9Is)cIe*hlG3&*&j031+kV-Ud-4n+0Vx~3 zlkTQ>$YYfU=5sCga74cz%5B&r-V)=v*euz03Ctxmc*(L|J~%sAE)@zTeP^hjdRwfG zAM1Gd-=k-r;c35yXv+Z0jDSc_u(vWzwBN)<n6u~WX)>N9-mG&_+DYfBhaAJ8#vFkL z0z<+qwg8Y1;@VDR9vU*+F}1DlsC02BRLd5dfx)^=Y1P8Rq79I@Jr=S}vS-nZ7fHv6 z!|W+Obk|T91l^EpMsmjH@s0kL=O1uR{Fk2pmR{)403Ik7pO?eRwLn;sH=n<8|K{^I z?@!%)&&}_-ao?Lt<8&^iowf^?GR_1*R!qN*3xKScQFZrq)w~I(QVsXn0lTey+WJmI z++ht6T&n}kw_wzG!Z{s2tzR4dp`_91y-w@;t~V(k<{Q%K{*i`&#Z{9BY$}2WlLwiM zd(AiSYe;>a@30?Ib(aveTuGg7H-sul;DR!YELYrzY&#svK$X3@0X9A8O)en67={}9 zsdWU`*D*rRd+x4YiIT|AV;aIqKoo0;7jgE)wvb=Z`H9-Yh(0D(yplzUBp%tkz>4?0 z8|)U*kyXc%)2Jdc#y}p+>HgTO9RVbZKK4HL2G7cEm8_fwLw2#eofRjD6>v736qzld zuzHPe1i}k3ER#)ZKNRfmMsgXWwcYnEhoY%;bK439y}pQVOP5yGcJx?=Yuj=t#gvyk z6_JD7w#VK{J?BIUCC}ZIgg9NAC<fKdL=>{lBI=b$^7gfY2l$pWMy)*9&Qy$xMn6)@ zrc*a0+IC*{{T1_!v5_<M(ZssWIsaJm!+$0oQ16W7n3;GviI7b$q8@$01}X>!v>SGx zU#GAK`;k{lLr7V5-ZZ=9z1(nsqL6hM3^>6Jb&(8Zn)zrVU+#qy$tX3|pmiJs*PFN_ zTP=2dPtyplw~jvDshFNnT0w<Ql(JIUF*j44RU7b51%B9298!}c*+MTj&QF|h>r5{7 zxe??M@{7$e%4rb>SQn)rxFwmGIA+B)q|G$fV@p=@FlBj>qtw)S%!~6F-cW*@WFkwp zv`5G?`X01c{^=tSUml1y@N93pUicfjWQSKXZ@a?`Wgx0W-bMl`x3^>xUw;C=&fj5Q z;Up)OEGda8^Qe@ceIZp-@L1{!DGz5q193-WHv#}G@=VQAZS@^@rPt17Q+-b=o9ks$ zm1VsXFIQ4o=bAfF@_aSLIg~Lf=|XSSBXl;-uoRfF{AwcivRQQZ|6=oHF0q=IV4fy! zB&2k5%ati{mIq+_|B{t1{s7jF)}JRLL{NdigU6yjN@m4^qAo68`-SO;o~imox^{Bp z1dmjxP>KZrY&)Koagw9B*1?XmW}7||@y=D)`=8XlI;aE1QoXpP+JV@cBkGsr0((Z) ziKu#Z5UO<J>LrzXTzt8#<56yf_(kvLRa~E<_eV5GG35K|TMkA+WbucN+K{-}yRF=c zs7{YA()~@|b<ciCgm>bmqhOfKac5(~p2(r$e#{*IRO+(Jm5}pBhasjU?O^f=28Aw@ zMfh%ZQX8xo6<nVgAdOf$VqQ4=gbX=CmA$Wutwzl`+gNk@)kaHYx0|PSBfU}VEI0Cp zia?Q*%lZl_i<AuNJZH`%HfeUu{k4@wZMjlx)LZ0L@`+5Tk<B}Bb2#g25AvykPwy+E zTEC)|UFSnFsc))_KbHCuQk!I?5t+lti+6ad9*8mR78ud$j;LgEs>phEZ^y1hA#EW1 z;;Lh^UiF)A?h$@1NnG-U^h`#_(ndZcz{2(`12xhTfx$kTW_v)}UYJJ%UtFkpJ7B2F z8PQ6l4g6Me#8fXTIW0-3L(?Ja&uVXLwN8femuAM;mtt)FEM)(@^#aa@x2(`kh*Pl> z)YtX-<R#ok-+_bb4?O>sr-rap#h!oQvE~S?2m#N0@R32P+akGc3tyOI<9%v;^6Lf` z!54-IOfe+}5k3>reJ0qZg}0cuO9X9FzovN`m?}#TJ+n_yo{Z*+a}jC<VYNO`zLc{U z3j%h)q{^2H843wO;tNS{AQZPt`E<A*2uFj-WFSl)NhT7H1X9LUyp}sW$SvEk7<+R* zkuQ|WPBW#l%O@%jYK5SuP5(tzvC2T5Tv{aF>``Ahl+4CMA!viciD*QaacMRhk4ffe zjI!tcBw3%KK+#W@V=|>K<M9D0cFXxluJI~eNJZ6oec8OQoW13$)4CwSw0)`d5$AuM z*qZnuC%oSi5#Pu(-G62p3z**zW~eeHYP9=1!Gc(rqxRYY+n4-bSbT`_{xG8dQ@wiz z?W9Eo(ELGn^T40X6*B3A{Y-lQAf3<VtAUBFV5Z$zcFyH@xph*>mvVI#t}pYOE9EQd zOY@{3KLdguzRYZIIhj-E*iJ`tg><?gzxhbITPhEBGV(9y>tWs|3;dJpSA0FP@2q%} z-m;FtiJyIBn%r{-u#R9~)c!DFEj2_0CbQ!rVvONt){nYK8J43y=Rftn^#1wq``swC z=doatBZQZ(31#1X2J`LCdlZ37VhIFU(Z!?=TY!M8JYHqB%42F49TM%3$5kHxk$#a= z1`Y?!9^2Ee64B)e&6E2!a`!FB%$RuK8V7?hj7^CqIKs>b#f?;jaIr9yb9w=eUTm>Z zyh!Tnh;J0E4Gf?`f~U_s4;JD66snS$dC77+ROQoCRX*(NQ-0!+#JbL$f^(coaUHkM zaCXXxD&xmlIIP(tHp9p4X`JYWXYz^1SOf;8zuIj^svJoJ6A;O6o}N0Jhc4OEh6-*8 z)_+R{bD~rjFK#y_LAJM`kUXlqtG1|UdFfElZxdSP)=&u1)!;=YuIO@&h!heRK+{>$ z29_H=AKKxJ)C^1{C_&=2#6xFwZ?bn>`L!ZGRGs0Z>dNEiFv;9hqILEu{8Z$i6179Q zk$LLoph&Lkt#}ZD0%G^lx<rK-jFC}IMNAxcvXRRr6ViEsQHT%ERktW4LXxQvQV2Vr ztFM!%V13D4{X)hWBTURObN&-5Z_T4|VpV=J^K^2G9Zq6*Q%QL|g^f)9JbUF7>GTq< z=LJA2)f{wru^t85s?J5l@)H5KqM35C)$;HAGflg^zk`-)tFkX}7O<Wt<?VUr)bEtL z$BGP4zct9%^-Oqu#W)BA2JvMG3nIzoou)d>Z4GMvfLRR4{20#FkFfNAiq7Ye@VwrR z!TF9t^++^SM`57=5CnM<bA?+5jxBqhf#aUp3kPgF5GK{OmyGr`9>{_ianQ;qof8#j zR`EBPH$3^IXv4|8$=nTuR5zqTlv=i(6ETQQKtY_!CuGpKI{c6-*@aqzlu37ud<pNI zu;jXW&b667nng%G`z&e+-=sA?3weOtv2F<@Tr;Q+B~@B!Y&m(SkSF{fsu2CZB>w+g z#YAW5_q26RxZms<sYa_*YBe_Nb!WLzE;q^;ma?{7Sxn}Xa7!|Fl)<_+r)3QBFWn=N zhsqJ%@gNDFB6-z*uUN+Ki5)84xFHw$h{$UA?~%^6dml|MV<UZ^Qzj<b*R*I~E}ol1 zM5Bvzf(O1~oI3C}d5IY>5Rq079~j(uU@R1CsKrh%^tRio_SXCBy_(Z5R8|j@DzbX$ zY#7~EYYnZvyS2Q$wc02Y8s49y9@iAK0KHz-&QTmLo>PtF;cBI@dAJ%-mGGKFQQX{a zUiG@{TJ~1Ejk6}#k~PGbe*I|DkIY}-+bDScGsZM2CAMKkx&3Exo){iksuMC5(Hm!% z#(y|R(R?JYb>Z2y7jODqzuua^onOvWQk$7he!Z~bORlUovUbl-zieCvyFFj%EO{1< z9F<RV<-)q{Z>@LRm6b+4c_r?8d{>)8Q>8TYwLMCvGaKo0q?<Yj6muKda{i#a6Y*_t z2a~TF{Y<i3D&@EGg+zO8EtlFX^n7t&Z#$4!X)NaqpL}604<V=kGFTt(W5z_=io-Ga z&pm(a`R_apM&(;}AI<B|!0Cr7LO9_GRAfWy2;ru|Hj)y#L;)tQjks$=;hH<!So`Mj zxp!FEr&spd@sKYPFRx|dRw7kvZYSfpV!E0d?A$w`-WT6u<jVIC`c>(;bJ?r~a`99) zmMN8LgdZ~NIdnlErRj7?1}`)QXD-omA70Nt_$6Pkhl^J}&Pa<!^C^xsj&Kdb5Mm?6 zsc{1t?w%h2s!WevTi&SG)$zdd3hK2JIlnlihM;hXSK%TwA1!YzTeU6nW6Fhky|Bv; zgTtu{6kIdDTAVuF8$JT}<c?vJbKPn8p0?%e5^vL3THYn%dhIbL-ECe(lHWn^wyYFh zz9Yk1d{kZH-*u68vpy*Me29B{oJKY9Jo?PWAQ5w9WZy}N;6)A!)Y~as|MOl-?wJ(c zlTjE~x+8C2B8NXSdwm<M@U2nkUfC{xgJc`tw28)y6>^2%ZIWiEwJT+AMpPTO_1o=A z0YDiFY#eshp7`Nzj6Y)`{qF-I606Pi01o?3TtxB_h4=JR9gn4doQ67xAZGxihc{(X z_`Zp@Y0#jQrZ)K{<KUACjk4461iWD&Pd1c}!V0q-gp$YQU}%4(ah}cB4>mSmZCUGQ zo7R`&G;{+HIQRI`ijO!K!LfMO&Ks?RP_SI7t>P_F-Q{&(_vO}>dsb<gAL1=b2p(9$ z%I2~&BKGL;<fsY~350`cNjQad_Tsfh&-9WW($A-p9$k4)?QC(DN)7`~9`e;H`RsXP z1-Ih00HWe|I)nYO)Yk7Y)+oLxvLdxELTR^a6}Pizx%~3Ms(j|8BNf5i&T9S5_4j?3 z@&0|ZNAKig@4`<26+Q+dFPj+yyu{XJ{1C;<eFVp|>}#T4aoT+WQS6fileav<y|DC* zM@x?&+>!TN>xL)Nf7yQ(2f}q3GoxlS=D<-Cj3$EFa6F%H;82JKEh`y_<_i>+jwCjV z)e<GclW|`_s(1qHOl18Q#d$-)NS-jD75=^U=E=!syS;UCvSoV0A+brbhjuVsc8=D9 zL7@-I^a`1SY9f|S6lxUG4QKMNYSfW&n$)Jj-Xs*3j^$EhW(UL2=;U1;^Etlk=TtF5 zhZd9`+%mJWX#=uj2Y2y$l<@|12YM9%o(tY<)?yh7o`oBob)f|mjtpRRyLfsue2@Fy z=P(cNwJ+^dff~HEatxwlGR9N8SN7_;3JMb5IX_<=>eB3ylCSXhJ%5N4k|INtUd#u6 z1#v2V3HcRJti-S6SAr_CX%2BYvPZCE$!qw?Mf(uFQ<O^fEw+t0_5@M2McLNAksA;2 zCC6PQQF&S|bjed!XTy8%v?!NIqR{huKGt);&>7;-TN!>5QKB%J);WJz+@gPAyXn6D zF7=B3;oqir^nqQ_?T;IWnbU(oI^rA%jl~aijIP93-qN=dlnb?mca#1(T|!nL>QF1A z`$04b<(ciua}q>Db^8;Zlv-zAJfT0*vCpRvC;S8}P{^?tv>$1t+&@x6jLzod#_C|C zn6kR9<BW4*=)@cx@VUXkD3D<n2a<^+{#@d6tAH8m7mfO6N@90=>%b~-IDu@rv`<xX z_$GpJdP(cEZ7f$5&zA5yeMmAd&Sy5(C$}V=UIf$fAqlVSvOUNfKA(a2_}hruApYoh z2$YN^7Ox#cIh-38%#H7&8_WyVSbYK?+0wHld&xX*&8O6D8+i&B6%YwY6*J*r`$$dL zL4R@E4g{+HU~kahHhg6_BxDqgy-X<{W2E4FH#mumzwiU5@yGl%e@EVFnSIx`%^Ulf zfU1iFPYhcQW+j5Tb5`WCh;Du2=At0W64kX_@rZVjeoq1?mfA?Zj|}hj;1W4jYBYst z7?>E-w2$j=BpREv2=zpZaagD76@o>b4m?Z<&~+>7O6<xS3L|#*3(lEG=uU!19A}+? zKOq*QM`WH-r86HHEOc#Mn>#*|b7FC+3rzcfyah#T=<`^<J09m{pHaenDLw8<(|xuD zxhCWG*kQ%HA-F#;ys1(?MGDv5?D7-(OboBz^Y!!65E=5i7BRCF8I*4LIfbDkNw<Ga zfq6r-?&v2i@MbdL(kAh7bVRSt^!CX0o%!gF7NRMB_3D}wjG<gvt^CQ^PKX!?vGAQ* z&xd^i%;3@+%eoQf0gA$MIF7Eb+n$ej#>d!l9yA-_s$HDY=J@E6iV6OaAzdGSyANcU z+nyZHq~Q#p{BsA{dOmDG^31cN@S}8)qZtGu9i^YnFMOVfKjfa^06ZUAHxxUlB_6@D zFqFe!T;<9Mr>eAw6>piISp0G*3B)m6HNjH$-D_?`K&)Ol5!if(by;N|58LyRn<*Le zH~RSzaHpFtc=X+myu&Y_Bn6@0j}m;BZpK^VX(U3KzZ^Eu8MZf;pr0VJOIO)-wQNKE za#))%fNu9pJUJLa<EAm7=Wz4O{tj2t;?v;d><lI8K3VvlT2$hFe+uvO!)F3|nUvi0 ziBEKgWixa<MRiJC|B`A0zI?1&Tq~`VUh%7fzDzs`eV`pfgW9AjKw%snAiK`fa^k^4 zCcf=o$>!U&%WCp<I{i9XRj>Tp@l4H5N8(|=w#`ama*WTg@3G&%+XI%w?G8-OpcX|I zOai8(4g?>9*0|FHJ$(l?GPwPvM61@TZ`4U~*r=<#Kc9rtF9DW&xoq#-<!JeK!qI-2 z+JgSgLTRhzoVGG}5_8UZre$RO7}BjoCJFyv!a3MVrM9A4$HA{sM8BR9eoOE55v8Um z7bw~_KxVeIp(;ui*pOR;tL@RO7f^PT0%m5UCo9jNyP<b{bu4N8J|OSNIl0zJY4hto z{z1haI>X$<kMnTi6HyQ`9G<XkNfD4qkXf*q`~h`6LcNI3a;Wo{3|qZ$(ie1seO;yF z`Jfz6@@h=IF_y#lK62r~s$+NIART?b_=;FdQsaJ-MySaEpX_xT9~n~=+qC{blREiQ zIrs@9mQ%gaQe{A;*q$o9=;mok6~i&LYxst3T`F<T#(TyJ>sR`eqfZ;|IKHn>W7Flm zeY;_%Y~0^N8A|M2#g?r5>bCn`cI3y>*Kr#k=<~Rh-UoYraoyNAjQ|%?_G(MG>4k~< z>C(Jc^iQpvE=?`WlX;BkIEQ!Bh}VMDCDewfaKHp>$^5|1TaUUYEu5CN9fzqL!r!Zw z#RAZ0fUAd3VNYq@1y$rJgfv0Oe<*#EG^koGU`x&6r`b7aD>yMNF`P+=D(A3Fo_KdQ z-+DHeTgrE8oSiCPYp}jrkJ^c4;gwuYupM+(_Vy|p&e}$^9nUQrua<N1HekITiKA4y zu2idP1Kdioznn|>{f+%)ACw`@?Uq@r*Ned-h{$XaY~gTE5W7M0jy}V;#%SD?*t?{K z(qX1a+#OG(j)og+6337Mu0n*r)2Da(a5a*%Ih5O69@Mw?1HFw+>auV20{fXg=i;4i z-qR~fi|=-&A1tcO9zeE&Z5OOuZqM0Qv103Hx9O*gs}Nposq-oohXsj$t@OBl8ZV{_ zZWI(Vu~>u(8})oiTO#TfQfClgPU0PqiH$AFtvnK|bi6(5=q)b@G)Ugoh0=&eVzGQZ z!l}6ONFK@@eps@+?@A=z8;L0+%(N>9wG%|Vj|>s+mQW~XUd@su%?V5iLs~CAjxgcs z?a|sugA?K2O5O_23|TcA^G7-%JwQkYOo(Lu$(q&cMC5caQkoGHq^FdbW%167b3(}P zbi~Q~qAy7kWH$npa@kwt%y|UnR6hS}%&{3F)pLRr72d{~X~HVQFG9CqISDjUhKXw! zR|K1-Zrwl-s5o2(_G^_gihZazU1Au)Py7)!@1L-SIS+7~Xpn$F_QY%Hon4BGGn-Je zqCNgwC$*zo?x@x}ZI%kX8udP!Dp>0kO3hP;L6E+C|D<f&<>u+i`bK-F*00z5wH<)J zE2qsXm{g>%!!e=V7oMW$pL+f!``C~UTC?uz(zTe~Y~kAdFnn!(=5rBdn7K<_=L3(P zE)GBY_#5B#Q)LQ;`s~s)J{f71Rd}Z*H9h<`-e7uHAvBJGc20)_C<lp#`zXVs*!82x z@IAMmz4<5@8a_%#LNNA*<NaC&RfF#xKHucI@b#l~nC}mDw=@0Npt{m11R}gU9tQ43 zOWbN{Xy5QPqU5!5FCB~J9|im&{3d>1AO!6Co%`K@FBG)=ek&OAfh@oOe%JkU>qD>m zjg{PnYV?n)>&~g=HgxODjXKygn(+sGDuTKzbJ}~t_4l!th&AJKI%yn>0HCy2*wmgr zbP@EC<TD{WlONHGN4IicepQTga)~Ra70Mtelvc%C7q_BJ$(y&M`>f;Ds#RXAI7KXm z_@HI9)Jd))sm&(AO?DbcX}j2AqkS(nlvT1=Vyu++$SCapQ*1S)I=)vj>%iSi+?~QL zJs{-=-Y1iUf!(@<Q02bWdkX0Gufx_O@BazPfqdPM;6Qk?z{;>@&FLl6dNjy7Tg9pc z*L!wN#j~OI>$duDAmQ^wHg-CMjWV^htCDkCQE^#|4?Hid2bRRfT@6k4C2T!9Lil#* z|DEy*nDdWqmalE&<=2Lmu9NZzmxyEm;i+`dxjdGCa$dOpo^j1y*<p-_(Px1t;6ueR zy2#~oE7(x8fDscz+T@O$CIsX=`_{1v9v%)Ne7l74<QH?x0@K5eDaM`{$~`F*dVXx} ztH>d>Io)^YR}ss7i}s{yfT_gHUAcrSz^z*+K3n#<$zNBK6FOQ0%N=|*&x8+h?psJ| z^*U$G)<G~-snptdLma!d=G!=4?+h{@7TkE=KCXm<2d$>-on1fP@U5M8zM%_R{|tNo zXM9h8==o!0e=-4Q38@0&T!x<k_axaVj}+AI8m|28$t3TX0BB83EDX&ji#MKO%=IhD zCqQ0#iEA&!ehbf@U>7nX_<s3TneW~|Ae$f_@5IwqxlAdqy0cR*Tj_Ww90^-VGFmOG zx!bgg@wofQ*OEv2Ig~v3v3HuddHb)+n@L|ZjEi;`Fp)o~HmzhV#J_`hsE~NQ-QC;k zZof|0!T13z;(-`nn?xOH6*nA8Cg843`FyEpX{A{b2HH}ySxUy^NqI$`Z4?`=Vk~K9 zLiM8G7m8BMARLH7A?WJP-)GGJ4cMxx=YNnj3?j&iJcj6$9O`=q3{uQ@hD<-F2W<%- z?82>KyZOxcYQR!5$%ZDw_>9?Q{MBZE&3QA}ciyZ)>ig~>Hj2K|&0%bm^kb`8@)aAF zJCw!I-O<%JEN`R&iC{nmm4fWvM;+&~Tdj7LuhYF}JnfcsXF!W9G~kY?)hyl`QmbXB zVzJb%Yedp98O^?UkP)_m0nJO`9CD`rKWM?f@A*$<e03U=HA$fKSrn_CX(^~`(J>a2 z52Dkew9ivn(LKkPK9?$g@S?dzB8NvY8h{4K-k_Mp>yDd!%XzsQI#r=j2Kxrkv?ht} z!Dg=uc0HPjS4v5Alr~c+=%eO*FtXXq5wA=HPdhm)l+AB9-Pp4Cg8YW9_C+@u%4cJ* z*R(ftd3`yXFPt<WL)z^3w%=^?lHcNJ4O$@!FkFt31_UB}L4P>l%Qn;1Y&PD;JQxQ& zwce(696=m?a-X)WbyL~uWFJKPfQ{gKUlb&h?6Tsr5-*bF8MKNdX*<1imc=k=X&=^= zEgI?gokZP8#c$#a>B2hO+HO+Gow(<1Jydpi>}2=)NYrNXGgr~lSB0r<iYMKcuCLd( z$>*w<TX{+RC}?d`M(e<Nb^LlcS6f}(?;fwqJKZqe0Iiv|Hr82#oR%&EThE4@t-<{* z^h2(yIsHIpfhd~7izCLveFAK8ZAde#9voEdaA5i1(A956qC@A^k(Q`^uyw35NJNIp zayC`#><KURUZ<AI@&ryPxCF;KxnPz+Z)i>iQF(vJ8kHZRX3((}G1IhU5b{y~1JDt1 zd|A*2X)))UrF^SgFAYb?Ik(r>*W)2c%r7>I>#)T~L-k<9`+~PRhbLPH?bTXsRZEyA z1?LLVh*CP50Ph%27mH~jj?W|`l`zM$jG^;q-r~gPoXVneWL+s|g41I$A4sh_cvG+@ zzfcjWU}sK<IUsH|oh;^J4%pkCCiV8iDl~c$o!Y4Hl=GQPzPwY{1kHQxJ(tYsu;ujE z*O|%d^gwt8Lh<!TupWwTPkb&PJaJA>&RcdiYq!o%RP00m&0n=%pQ+5DCWKl&adu8r zu48t3P3coS8jK~P=~5~lu0)cVrnp_*@t?Rrr<%sMEc%p?Slk`|>*%OUv<_|N!sLCU zezE0NaWh^uj*c2f$BkqD-#6wmD;!B4lKi3N#xZYp-!C$WE#%r+f=|9zB8-GlI`zVR zf}A^@qod~WaZ~@jPXf8>&Kr@>ecv$+(JnqYux+v?=LsG~qJVrKKCsv+*)JtMN;sFE zMITI%HshQUqJRnt#i)9kil(aVDt}K^_1OB77qOsYq%*F)^c8Z|c%g&}Sj`oDFV!`+ z!1b*Neo`>l+N+OYH|3p?y;(a1>E-p0Y)iWIsMM*HYzJT%*+C#%SzVJK{b#kaztM7_ z7$%utg6$ZfYpo5~cX1l8-T2pUwOqmv8E(Btz<Y%cO)!~1*0%dN)Gx;7H_CLg)}{Ie z*~W?V-%><be_$)Yj7n@kcCoR~{GEV=>&6CPsL_t|vWJmYDen3S?W1<V4~E{$^%Hn8 ztQW)ZzLbC)qa$>UbiMV<+ku<%PvQk*Ssr~z5*fm$_q7c*`g_}?oGG5v+wJ^7BAVCH z5D+>#;w(WQtS?R6D2SMw=#Wvf;uO)H)Jl4`!hmaoVc5q}w+EC+C2ytD)tb7{8;l3x zjx2Nd)o#ebE{5|@5bd`Clkb%$pG@XmV?ppHBF%dw!U35}wL~VIOcg8l0hvO#q9}Kp z7Bf))%-we_v=d9&@0kH|HAG6+j=FvAK|+qN$(`Xxs}dZ5Hmbxz{`}cJZJSKC9wsH% z#2tzE2+@ZVqymZ%?y`zLi`@BVVsVBwT8d+aHR{I7-tE16d0c7S#UWUq{yhR=qKTd( zGD#wz@qz-S_b!Yp0$^IE3b}VKm*>r~`JU|B*JC5qxn}T<-5H```<g9KkAQ2+-kF)? z@ZyalRC;$#V$%-Sq3oX$#rlFhTl?Q`j>c%Ej0Qm<99X;V&0UdXT*f2Aqg=(Et}KmQ zDn$nCg^Z6YqKpouSlC$*jdXARj;3rSOUg85^CV(Cdb^<AWd9iNWpe!@L$n*^k%!lB zPNPgTx<t<#K*>+ukyE7fxSN_Ka1XE}?hLA^-LZs{Lp+p@HvqOn7}>~fZ*s_Vb1Ypg zK&)_FvUeLE&ob0Pe71OT=Vt`^3&dLwESMNAwOJ(8JC;Ne+hqqvSXs`LLe1%I$QGv% zD6r=?k>i^qC1`t|@Uk#;W)W^0cbnj2I2&A<$p!17x0sw-qLoqGMjTUQW=rZD+3te0 z(PGK%lSLPdPUKSDCrn1_$xAZl{KP}b>X4src<>{uZbh+6QhAyziB<l%qsw+JEnDj~ zXj-lHpLM<H{8E5ATRB{lgo{<-g=4dVP>EM+>z4eH>n-|i4y?@vYeJv$id>(iXM#g@ zckD>iV~l|3xO!nQc{*dF`Kx3}MR)e1$+b-l0(vz#bE+@Fz6d5L5H<EtxQ%U!%a`_| z0SzUOCSFqNJES7={>?RtB)voju_bjtbgC~rkIcU&-(C1TJ<}g4b4vZSI&jjs+01|J zymDTd%a8-v^4_n%!Y}h@qd4JXlXNu*_~!^q;+8fiG!G!L$+?Mt0fr$3Ed?Gr=XHt) zzGB8p!t~Xp>>&@0mnnQjveD;KgJ>2P#T)H&zW#o5X#Y&lO{?2qzu-2ib&r1mvl(<_ zcN_7!jZ5~g@j~2o;2W=7%DQdq&07>*xekxKyUdqS&L>@&pYksKL@juk#g8X{4eGq9 zdD3SE8$>ogboMfjm@SV;u$3w#Bsyp})W{!Y^$IKDH3Brwu}a|bN9nUwoYW!}UyW|= zG@Cn{(N#HgE4j5uZ*MugdUX*^5WG#A?P!7!D<qs>mI|t~y|%l%w!OFK-a>_CM^=tk zB6h`z$uv`^<x+fWZ$(3SEu99MlpDIG`}HL}24CXI6*LMswOMPH1vx{_!YK-=7z@Tv zlmJDP*;`YI!?Vloo}!YkVUzuJxS2b;q!JS`6A1^HKhFo_yV?4Vpi!Z=EuFklHE2rG zM1AxVtU{R|T2CIed0&f<)qC5bjj*(_cef2!5B)u2;(yAD4!YO~oe4M(RR78RqV`hA zMKHyHr50p#URj>$I+>HLUZB5fSNHO@+IqcSKT|8O-)uT(TWXh7y6uYhb4inIRc&)Q z(CfG5J?k~~^0m|CEul?=;sOQdHRlL(MEeP(#`hF+^M@KoDwR#~=>n`=dN}KK@6P}t z;Gvq7C)soO`&$anEDG7|<boO4T7_xSh&R?#hpSi1#c(&&m<V-~8=1Gg)=FwKVKn>) z+xgXvfZD)g`|_-D=6w_>c4`4<y$&DU+N+h#(9xC?O!?y!;M*9q>+1*cjlrA3MwS)b zJ8!(!*WsGG<bh;TO-?QN)#NkJl2l2dqS53;$H}$}Ebh{JRQZkumHNb*)4QaOv-73e zBO+@DPfp&bja6g4{#C_DUdk*84d>PHyM;>tx1Fvzj)US^^zrNzU#}Ani0V&b3(in; zyk0jpPFl-}HBctuBGpc=PV932a;;_9myOomzns{p52~$~d;OCWzYUDTNgJ2>WOiE; zE(bk%OJ3S#Z}PxPG~A~?;*6wnomyC$W(uRo>3eXo?e0=N1xR(zDB`1Js{Y09ZvTzI zy$86Y`)@{%?*G2&*-4Y{lY>C+Dfv2s9Y#vE@O6f5{^stk>6h)$06uN{M~`H^Js=V5 z0eNq-j}kp$D5if+iEIyylR=zNf}8=p-gD4G9%pxV*VygTr}5{6uZGVFUYk{E{zN@s zmyR1Ja>kKQ2R9!ZHa@1@?k=B0Utms#*tZ^Q%S`GlJcb;5lB|%K$)5txAt{7=Je-{U zZN)vY7#9{FL-EeDkHv??iDGq}(@vvaZ*)$($*ou?e$eY3#5=KWvU}n_uVRDk6aJYo zv<vh1xA)f?wOV6szga$vugA8M<;yZ3T#p}?o1>T5AezlfYPO5Sl5dN=VncsQ9^9X6 zD{=|=_4I<8gojCLYt3?Z8cyR`{?D1SYKf<0qAqaPBu~z&^^8o>**>zJtzJZtVt42q z?Wt0v>ulLaPOoTWyS>4FQ5BACRq92YErIVQ_nfUrSC#A|1zK~@cuwRu&~;M9J#`dy zs%kyrB=(BxsOMY|G2w4l9TxW-$eh=mYD69H6`drX&^365>;D6Bb<RCTcyd};3?^Yg z)MZ5AG+-H!$>(AUB_dtv2b^AQrLp2)sVV#aW9@BY8*9`1KHi6i6rWx0v($()qHXT% z(KDP8y{6aPXU>e6HFuXynKkVa0Z|+ntihm6LTreXfY~t{u!TObfe<jRkSc{>2#By1 z0-<107FAO<&<9~V0hEbg2(3N{f#42|fjc$yK{bR2YO5WQXZpMDLsHU6^Xy}zdf_|I z{eIuq%m4ac%_V=%?KgSakk^_@TMMr~{f@vedDl3S_Zmxsg8rD{(_f)q#aH6(O=83R zav!@_HEO1_=8(!+9!?R_F}rZ1hT6$K$ai#!Dyi$)=`^L<?(tHC`gU%6*@q{0ea^cE z^$bx@&z2yP<YOH<@FSQ(1&e`11~l`@vpGMu6pu?-`*y^-#Ood*(X|J-edH}a_6Gzz z5Y-}FO1z|2%u!L02u4g}fQj{as?y#8tL&scXdzng-bf5smqc1>0H4fPqagAre85_K z?sF<joXo9TD9_lQSfM?~DSPu<y$xb}VHA9VegQ0^gS>U9GKlV=Z+lZ9A)DL1-d0b* zAlw-%%|@fyFLMnR32WN-5PsZOoN`|N7rgES-+;lAL~lU(5e_3kv{tdgBF|2F7HR1+ z`^jUrEy?+!JX~@sr=tCpi?wi4h?T|Cx^WsyrwB=Ch|F3W?ucdfVN*DQ*03xR&nBV0 z4j(*Nj}VkhkS}~Mm;m(Hc{VAN9qLn%2ua^F-(T1G@EK5PfyY=|6@uBkU-W%3l1r6F z@J#QCXji(L@_yj@6D@Pop3g8eV-fW`2erf6@I=*0^=Kfy7Oj_##&Lgsc(NovkdQC4 zOrgUX_~19tv6e%LwS-v<_GsRF&ufxCg}xBj^=jaS`#O<Wis!c)D(~*rcXGoF;xLj{ z!n<=1`I>&J@BHc220g)_ms_4QFAOH{*J<<LVtj)__VmP9pt;%$V!)v^HUAkrAfrZp zHief@o28#TqJiE7*T{a5-27^4bG#|vHi1&k2n7KA;b;KCV9$zoPOJ55Bm-4;I<b;> zYRmDgs1l|oIWA;P^JFugjAfGUK$?1q0#z#<wJP{ek{0=kq0SCRlZjZYnSH$!&Sul9 zc3w07#H?28D!OcCpr2cHo7<_4I!Pi=_8IDADH)A!#xquV*kHCZ^2yqI9Pf$#34=cX z;Am%$)J_8cX5+%$NTUggTtr&yi(rYlP{Pky@%<hAcE2z4ACD6DP-Fgy*x~QZGFKzW zLDF&zrN6=4WmW$sVPzK0pOgOiH9n`g)4weoHK=JC=z>LDB3Pb4_`3jLEI37e62z_9 zspljEn_s|^?tiLg9tAE^$!aOSw%WQluro;~Cf()WR?>f3rPR^u-rVSo-+=EM_iyW< zV43msNeh62lPVOBi}|6QONR#~|5iA5uoZbX2*vjMVdMO8dD$J<TWU2DX&!*4u<~|% zwYBJ8)P#)%exFzoW<HZ}c`2Xxx-?m@qs17p%WzH`zN(X1&NU%#TXy1x6^}G8?071B zmWjKeQoi%DMByC{oj7a^F;&rf<{ka}AN&4udicS;DIuW&X0JOB>$B!K6#J&ELAu|< z86r#ZH;Dj(8Bv^ebbEwuXX5_Qn0-Qj3llT2^zW*Vb}+t_AX~EyFT)L6xBu<xTD(+E z>J3HrXet_mC0&-D%ql%8uZBQ6B<3VD_Q6HEb&`&oR^gykcFbz_;~nldC8L02C5ov$ z{g+P_1F^jOX1#FGj6`@rIy{kyhWSumu1~*D`dgR@YAUqYT8$s3%gx+!#;L}gWmWlD zuMZBFI3oB{>x45o?V@ay#kNx&&GY|K&+{C9Q^)svzN+shzJDs1sJo}JILt;Papy{S zI$8+xUvZW{R6k;QpnW39;cOt{f`uVW{0juqX=f}0{cV8)s7=`nKAh|_G}4|sR*Cpt zq1sm`H<v-K^s!~2wnC{`HxY{2DKk-v*ojCD2X0uu7Eh-_R!w#;dF@9Gh(3EbJ;!4O zxkWhK+AnM<D`&@7WbxGX;u$Rzf4S;pySY}`zFH(1E0sCR##kh|&P!HkvGcNgc^)H{ zb}5#M#ADrBG+{?;Rw$K@ne6eYa4f!5izMtwEfK<VCFhsxji0B#%_4u4eE*eigLU+= zjYabpFihW*#q;<HJx>aX=QzOW`G>mafm;w@!s-Jntw9(vM(kU+w?3pAwtC2yp0iB9 z_lu^?%{gHvKRy)ZDh|M6B9TnSlY<sH>2<54)dci{u~4ELPfmKLnxJ>$ycSED#aq)L zV~g`0qR~(!dt>&<0*)qQQ8{@&*eL`5lPsk>$7VZME_a$XRHt?!8c&AwG!Ya6(<Hu> zFcCvSiE7kNM42XWIAoTrP|V2Qo*2u8PC62f6NebFSMHiivZr267lvBw9`3)=KB4b$ zQg>OSe~GaZex8w}1^YabmaK1m9APHEE^>{TW|<0Kd1d-SiNwq0xLu4b+o4=O5wc$< za#48=iXC2qB38eab<gwdb?1ioCOeZX>}z6NF_tdGvU#(7YdPwEmL=*f$5B7WhKX$0 zUXB&)*z(InBAQFQ1mly>g?O!K$MtJj{hE<?*4w%D-Q|-N1cbNyA`vXtv|zXvSvxAm z^XXW2eegOKGn3vNTdJ}GWwpr)y!D!vA0GzZqN|4SluO3egpS6;V{{{+%|Dj){S&Fu zKg02_{2)msidr;QgWxnB%jOAZoCB+kYZBw?DgvYG9Mlf#s*8MXKGYJRz8Q`()sWO+ zEDR1$RldGmaNCNEb?Wt%!iv2CTc=>gy$na6lZV--v=V}d$Ev>}>dsu3d$rSREClmJ ztj%5`k|5L@GL%8NZ6mrt{%R*oj!l@j1|&-H_&+o+m;Rs-XTJ9l(<yI>F7rxcR3S+4 zq*bI=EyQ~Fw(TBxucJ%6ci$(1|19vYuvCfXR_p_ydZv)b2omPtN7!Oh`us<*uF$!N zWgI3F%J&%wvLS}UN;t3lUrRZAl~AtNHZvwjgJd$<PBaphQAyO3>P<2^+_ZQpS>GBa z+r|+jRTULgVfVbEB7uLL1Y^PX+Pz$;vgf4uN;{dfhMP(GYCU08NXe0CCohJ{MJyzB z_pGd<fG|ji0$@_~S}V92*rWb`jXX&Ij_+^i>^oi?^l|rPjlc{w5C5UT#*55Jkn|^h z%n6frMRmKf+l#r6H7k*zrNgCAEFX@9!GDDFsbs6+=F)*>H$L1{Z>>9;yri3)Tini0 zTAWBsTAVb>UW?skGL;X5x!}@yHtMvSYYbnzaigN%9^Kg++D<geB`(|y4>5>|ARs9y z$#$)6(x}lqKqW?6d;Zk;3%gsdcWXnazDci#`K}J<psGjLYyTo$legB%MZt>(;G_3I zkW$I|8vCclSOhKB>Mx7;R7h~RDyiz^sz~1=+HjJQcS@HF2tXBy1n0u}e4%M4^PNPk z{jO{rQQVplG5=S$KiH%K_442>PbSV}KDn5;lZ{$C(8G%hD*x2KOSxC;P5d@uSxm5Z zqt%PzC?@yEa~!__-f7_@X*W(N&yz2S*MhxwKHbg~u9voz7#@)zV(oCvuW2D4Vo9Y6 zG!|r5BAt><D3Zl|AT;PszAop6dVl`@TfuJx{;ltK$Y8C(<ec<O9rhm(hKSdXz!@P6 z0EUCl;0Yv(&jpJl&-L4))@W*RUdCNxh;)F&+%Kl#(@sUonPfWNv@+#zY`wfvE4^)m z<2lQY$4c&YrMTFr6CZEIGa-}AS=n6NibiWo>-FVWv~uS5wvWt;UH(5Br3(Bj1qj2< zbSP5HRua)h(uyTa;Do3y-8M*`7?k2>7}`#V+9FmI;?sB;uC_#XbJ?xAySr;<E-nrN z`Wt@29{hwBd-3OZ$t2p_0?slWokd^~@fBk0$s_6Od88W=g4q4^Mko&?iwJXM3N_)^ zl=mUJ>a!_U-JAuIvgdBE?mOh%vup$H90lIlUmN1=7ls#O#D826@Eo=W+X{y_J8wIO zyUpD8GBIk!)qV3UQ#u&*Tg5d?QupZuerv@RW`a`Ya>NtkvBdylz^ygtH;ZctJDmiC z*r{33NHYmfo@Xc1v5g)tnOMsn(_*Rq^?#-p&#~9@FRMxZABody{7+oQ<S``@MI!zu zOeye)!aZibQof%<&=tVthw)C|OOT59bx85`*I8x!VDE8XnUXV7>Li>VK95HL`|}(# z{2DQZ;1CT8kzyn#q!3=ntq|#&5Akmi=R)wQ_N@lFedjYh4i%60OMJ>6hTm)Pco=UM zBZhCWAOTS9`|-gd^u1moNBju9h(%0Tfw2O=P*}fLUd!77T>c)JiLilP<pK7}{RS)9 zV?3LezP{cjY0<1c8MV4EV=yirC$<PXCI$9DTI`+;MSGzt!xbUU5R4UsCD4(L3ugNC zPTe(;1w_x5Y_DETym>yx<vgG+;t?KYv_!4_MOEsXgd&3w8YM3fXFV@Sjr!CG`o1As z4ADRjF9qrzyz*5G$zA`<UH8cRs8Wyd7TMIR%PjUiIgy_jiFuriL4s+$lma|hAa6Uk zG7y#mFvFcL9u;EfAuN!Pv|ul~>mG0QRu?<XmcTlbom^z==MD}NsFrqBa;x`dYpe0D zVfr?36rF7>8n3ogayPoQ70Gu}0>o@JJBzD5Be%8nrnluD%Uki4twvz=GPwwbbn{@t z+mAi0orgu$8Ga_+MXkUvJ@a;8?Jr^MWGj$p0j7_hp%QVx938^%$-?L{Z$08?u^nGB z!VW+9@^O#9)7}vYO(HA`PXRyJmPS~=tMWC2!#E!KMim|fD3{;_{jb;aXz^aJh+ZsS zC1e%K;uS6dS-7{W#PVep>2Q03w^<D0zoBa4ck%4lvSuZo(5JjTV{Rn(5mHI~8YzFC zF3gf%a_(7hv=zY1fydX2z!>z1ymotMySr@fs_!q13s7F5F;ko)dv{mim>{O~|0GAt z?*{&WIr9T-ZN9*Bi6M|*1U8tgp36D3pkELxjT}JylC1XuvxbjN@dy!5q&rkr%&cnO z_@la+Pdj$4T>>K=jwhSeVy)b0b(+NtT1hRPPnDN4xkxx<<!jlhvr^kI<Kb{Kl8BVI zhmkEKy!8)L^-8&rPvwg>GZBf0LUzQ?uH@4h%#ZPWeJPu@a+Qpkg_<-S&#jgdxj>n( z3z5P$=`6Sc<1BKXCud782#KA0%z5NRofDc$w6@3q^ssl2FmP?)<uyh)h_&C_S%*jh z13j+8GT0WNI{BLST(%48V-_%jDRJ*|FA4s<X~@JA7q*^vUVXmuyz{axP0wAw_vW20 zU&0Y}4mRpFxZ{!D$k<rCdWdaaCZ2@xfYS8t`eku3=(*?ldPI+s?4~}A${lB_n>fO? zf+Bmo|A)$YFncS5UEVu>hi^Q1y<?xM<f$Ea1u>4BzLt%SxvIIsyxXC#ySdq=9wMua z>+wq(H$TQ_k89%hvLIMGkL}DzP<^27|Dp@Qr#3bBU3IHoAF}eaZq`#(S5Iw!-9Eit z(|0hbPsn_9{#*YI+29DCy-n#u*;j7HJPG>>x}C_HvY&DEkD{E&f~ij|&csn96vx$l zHWvA1W=?5*9Z!He!MnkL2^I;ciNrl!Mg+abQ_cj9<CB>uNGmzQaf!0cJ=AY8M@C=d zsX+Agw@h{lVrpfZ(if4b!#?HlethFr8^$`Gm!(8|)xJu5B*0a2X3D={<nDU>3))4M zs25}?5(9kq<1cHcC)2PO%aN|b)VRBQoV+%ErE$96uCHGIuTams=FeZEUSk|00bGxM zLA~U}l%HQvDLRhWK3S9R-@pIVj1fEK<t=%FzD)cGiINP7<#`?uVO_R_sap?_^wE{E zQV?N<#Lmq_tekvp;d>k{{+eA*MvJv-rskfr9^qNt_lyq9o~^;ytS*Ma9S4}xX(}4e z5LuSYY*!1-OoRmHF+1>YGSyl!nk?J-+9=;jM_j6f^ytp@Emxh!(IyFoNby`OICxAd z-IYaxA39oQ`l(qB{#eUy;GHqKNeI&X^Jh;Wl~p*{#h-!yjn|P41dOk}N8ST}tK7tb znOVt@mFQ%Zl*RCX?R3-i)l@81E1n{s5R>Y@^%~}XnBQyG56Vuh)ol){j@orzJI2MT z>TZ>b?0qQ(`KNqCmB$2?$aEul;8P^{N7Cou_q@Jd0KW$x%D0HIr%FPvD>N>_`?CQK zc?a>4Gs?0dKDFQb{Elj8a!$y9R?81}iy~VW4KQA!I-&Cn078Ov+e&wfuCKXLmVUWb zuABrPDHkk>_VH7CaO#7Chg}jZ!D~3U@G6i?e5804cRRxxInHz?vYeDs{%?U_+@Q^A z-}fmWW`B$W*R_^;2v?t&SZu_}BmxSlUWtI=Fc&B2xMvog8^?s$?X}y8{A{2O;?mZx z>ujgZ&M}#t^1U~N;Vmt$k=1^2X=m?k&&meYmrs^gmp1m@Bhi9XYO_m3{Z=j9O0RZ` zkgu)|ONIRFhJ@QUUgry)y<Nv?7nX0Hp@Nsd#&P2eB~t(t7Ks^Q2Me0wm7T+PcKf8- z1&4WAuK+UHbq^}$TE#se31~c!<p0(=+S}RK*daACw}!8@Q{qqdIQr1#EP_kkk6#@; z(<gpEa2Oz%-YuGi&`>WA`CY#GDEI<IQ;#f9FL4!~G&D@_>LJ%QC)XA<lH>vPJ=UO_ zPd*W7jo)XqmdWnoTQ*u=DMO!JN#S}Nzw;OBv>|0+nS-Ybw1Zl7mn4z-WolGp<7R&f zHt)#?{i&W{u39i6EYirmg$E?moxK<FKk!A2TYc(g4@E*d+*F-<vsvfAwMn3uZ*aRq z-z5sF28fRn^Ke*l`)knJG*yLU<eMD+n=O?#wp6-6zLkQzCVc_Vb5G}m|2Ec8q?N}Q zFtBJm7hA3bNa&Lt;ZlnLob6bfXMuV?nx2}6Vn-kO!SuUAx==_5cDQ|~eanFz@i4#J z+w^|?)e9cHD5U)n`QYFzUGQ(kB7-yels^)Q4ReM?sPr3^A%Dj{8I@!133WrQ7|A3t z8Kt?0o(o(69$NHe>CT}ZBUh+MoD8v8yq!**j8DSf<WqHbjehIDQsq(w{TJY<ut_6* z$opJguCE?W!L|;rM0nK^y}V0HQ6#9En}*S{N4V(H#!}o}mqCE2Se}4+M%Raqw^}Vq z7(9uxc=VoYV!@bPlc=aWud3ana@^?4pT~DjcH-{2zI<3eQQ;xdjj+jk#WYt|nqD#T z2=Q0mTB%7Jw9E;9>=kST-^QMu!6NJnAfR0vMzPxPE6K`7$G|npE*WWXC!Q>ds^)zL z?OkdB5*zW1yo5+!{tm&L1fZ#;ofvAvyMfheED9sLU2JV#^uLd^<^_I=If$fgP<r&? zp5dFYh=EMOl;6i<wc&}_!vi7*`J(7M?)p?8yITzT{X1}x{taRD1VuUCI`5-A(hO~Q zotvc(QTo|7G1@~_#XdSCvge!}E86=nX(cD-oOwN+nYI0ky=FBEuHQj4V}bW=OKq>X zCyQGlCsN5dk?pg1c@aWwX`!<0RC_Dpo^T4*N~J-#AIQ@kgQ<M8V#mZ7(?>${Zw<<B zF_B(9*;=$BPOcJhLMjzMTXf(0v8viu-hCa}YNu@VMy^sTl3SfP5PC<(Px<QaANqG0 zKP2#(X^*P2K4Rkxy!v^0oB>;ZcC25JzfWRdBVNQEVc?RDo6zF1qS852*&DmVNl#_Z zIv<ud+Tox2cSpIlPp-biXPL_reFhs`0OjSLFCn4P&<{%3qgHDO<a|Q$hi-4Zq!MaX zb+o#2J$tugsrmki>hNZwwC?r}B^)#88`qX5UaOz)eb96Qe+r(;N2Y_YT1c={K7JBb z#tw|&D|_y_D-XhZMDc?beR1Hfp5;MY?-^;e=VbF|?&`R&0-y%vIx2#)?^XCICv3o3 zT)r5$_+ojHMV5YhUL04ac>Y$##pk{=o5+o56*#X=DiL^)@ZG~a;#*o&VO1cp-1!+t zL$P?^mIMDL;keo1p__FIORBBT)q%Kc<T~K!NA;MF;5qlk?GaW9sf9OaCm*SWJ_~(t zRe^nb0OLbS*M;p@Ov&6O7WmUamTFoH6B0EWxOzxjNx7e^bEBGo+1FMw`N3hTf(<;8 zQ?=0p|BH-TcH5*XS-vbE?7HpV`syOS3-;qsIt%*At~4i)XcBGuiSL#FXYg*!@&rpT zz*!7jPiF}bn0p3}7Sr&&|9Ka69bFx7V;3s|ie0x)<{th0#yiZjKPT4WhqN&)R}|(R zi5t~ToVjYupL-2hqBZ?d)gO+kO4SF;H|l8ke)j&S{+|SX%)0tIwWPB&wl^^SSp7uX z-DCy&|B-rmS$^r}KtjLlsB(w8{KWTT+V)dzpCzhi>KWUH{NG==FaJ-c^*^t}?YH3n znGVqrB~6r9f^Ymk?%QwN)AXtP1`)QO=9!A7PuWX&CNFvG>Xo?__zwFjXD(XvBlTz= z1_r<@hKKf((*fw01mbbX3cgXpjUIU$HKi<O94Av=%Uhl8UQMSxv={p*nofUF%j|vj zV#qQjnXKc~H@7>9!fM5P#~?h!D389wp1mbwDst;yz!$LaN>77A6}j0{j3(9-@ktX6 zCea;2mQ0=CH4DrpeA7SxOoF*Y_Rn~C!zxVE)owjh$&>bMW#4`69^_S3Rl29<{)lLO zWJJ*<tWKe7R^YWMR`-`rAi>#K6IeXxOR1abOS-T8C-?*AIpMN8o_t!oO*$=<=ng7q zh(k&{TcFv+LqlH*GQp3g@c@sLAH3b{w6JZ1SYex$Q23y+v}?ntT+LXqyyKoXfCTP$ z;t}{d7R#IU>SmQJuVy&k%T^-2Vk-`D-)gVe%w>#MDz$5`<kHztv;}D)Uv-aG+8a?j z8tX&iQQvJ<dsU-jMXhi=To}GgcJe8A5UCd`dxiC3N^P}^^+J}p7JUC7nlphGd&~ow zqxhhucVShSp7{KYdo^H<t>ZV#%8@=s&kX#*U@;TlJlQX2cUmM2bly2*wTp4Q_a3~x z_Rnj6POQ-EeL54{v%vU3oIEgo1_Kr#F<@ajh7m1Jjg-E?i@{<_10D94d!BkX(eAwY zQVE6wZ6uIcpGEEEaGsq4@OmG2`lsq1WH~=jYGESmklUEJP|P9iw%?aqEi88Oua&u> zPTGTlr*4`tKGE(MjBb1AizUe0bo$=6lG^Vqxv{ojE%=l9@MZlrIrFdg+Yn!_eEoLE z^~YB=CjBNhL}GL%oyOuEF9qY?xU>3dG#19g^th9>Pej`VZ`3h_HsyQlt)<T&{1W|i zZJ6htnfJWxudeTEoZbF!dCSPZf#dFKtmW)MYG902+`Q-CAK5fms}p<1f;ZIA6pbsb zeljss<h_yJSL@zH^2amPdLf#0Y(yD>w0QGiocREXOy3Lt-$Or`rbh^6@p2{N0$or~ zmGQsS*P)m!<zn$%D!SQqPZ(hH#bP2^B#%R>n63;qO&KmKeNU}Z--4EL#B&Hq(>;*o zIJDH681o!HbMpR$Kg+yD(f~I-JM~0(H3U`$s!z!pmRa>As1AwcTC9d@xr%$fo-?y+ z9aT-6X*@iZRd%ZXHocrCaZ9w8i>c6Bb}PHmb~n>qd)s|uS@9T}1ZDkg%K8~)Ss%6w zmXDjQ^iNAG^A4@dCuwD?widQ{8jb0v?kV1!!1YGE>#gfOfLwdC{j5ih$7gfqJ*aoF z#2e>w5IKBI^s$k?BRP?NN$mYPhUY_R9TyXxP!B*O&QS45lV=Ba(v{N@OUeLM2LTm< zT>DPA@xO3=eq5B=izqLiVVo30D*7VQY^~tw6P_J-TnB7Rl9kD``Ch4l`rLo|SWW@z zrz1witiy37`5YvJ!laY|(IvvOHLeB~!i7e?u0DhFkW+nJ4at#*{SNt4pG#ieb@5D# zyn%@Sp$C{AoioSYQQZ)6oXh`*@fd_YdV;ssn>06}=l9lGu*9;h9?uckNX9yiuHedO z71K{8FlS*7xCoUJv$dF`mCrKj7W}=*G?}N9Wy`H6)EjH~=Fgk}gTcA$mNjIF5>X~_ zU9fgP(PQl8;T8t8DEdyEd8qxbVrNEU)GGvcJH+s#|FIF8Fk;Ur%}I|Z7gonI9W4_` zT&d$*oUSZI5l6%X{SZQA*CCLDu{P0J<#jQRdJ>DwyXa)znVkMotD8O^@dOCg=&$>J z3<~6Ll3iH)p`IcL0X&=hW6P5#vb^P=$MT%X`b@wn@|y76%X7i5T>mDInZaVvM~KpY zwRb$G_F~&7%^<Ty(tGoiw(;a0Zh+B83pH^R=|*t_pR%-$56Zth(mz)($h%U|=tri! z=+L8lXo3e2e&HW5&xo=0j}>O-+(dJpBubOW4pBIXi2D#1^2~p@G%UAAF%;^xXBbwm zud=8azMXJB={m`L7#$Q#rs30f{x8Hf=XSsbPyPrp{2-MZnl+v}QKrS7fxS85po`lH z&%X69gYDpVvFCh`cKn!@JQ_ujU^wwsj#$1Wck5HBHwuvuRwF(!)dfuS;J$ipJTalW zGueM92Wr3pWl7M8Ud2Yaz1--m^$D6OK~<G(?dNKP8det7ET-SOuMZ>J%0f$O54Sz5 zf%y-;uo0n6&)0}^++In)UaGIz(PE?GM7uS$Rj7#t=aO7x)=uQmef`!hxfg8`>uT1U z(O%&Bn7@WaO;D1=RtuXZqM%=rBw|tdo($B&b4@SwI4FrQ?rCT^vLYN&3x4N3X4%D~ zVj9nEX8UcU5(i}3TH0{m3|DsCx0_3?SRoy&G~Vn6)(6e}GG+>UDQ}$bV@*3)zNpH( z<iFT@shqQP8dKBDEqA{qnA7UT@{uYPNA>(CU?hJRzP3ji&%o>^?nB7YXFi)?8g5or zU9Tt%;ePB{`Rrg%9b1cqH~ZVIj_?(Y>x-^>xi_wBy53aAY6F0mdNVl86-}pEPZ0~a zbFIFjW5Wh^Ro6~?>wvn7-_PsQ>r9qEWKpo|JzwCky8nEEMf>0b)_f87<X_+_=zjWN z9|;_8^331d-;Sg>+zVAzt`^4Jv;K5mMK!)ad!qpec`H@!v5RO19x;SPln;BIZz-RM z#}j$uSk975CQiZJk+<IirO=QFHsK+5asJ?}r8)oqwg-U8m^JCI&>kbPxV^o&v!ieS zG7Soizr<IiO<FF%#`i*>fcm5wqdoA+!gT2Y{sikGhll*?GyP_+!gm~9Y_76f$`a(X z%?tlL$0pW2-n%+)uW}+Hi_K`$nFMM{QJz^5*rTAq<~Uij>_9Y}i-$tYg<d%B9fg<- znoC>WzkC08gZ~3MkNAbYC8!O>7W#x$fd(hh8xzeZK%f|5O;I6oe7^7`G4+{*6Bz7Q zybN>$O%B>n074G}|6LZu>|(f5HrEeV&DDnNx3)c4tgUUQ*8E^JHmae_qPy3NS&_Au z%i&fv<1E7Ml?Yq$W3{pxi#1jQe~<yCO)k^=N@(qHRmcMbLtI>LrhAD&&gt5jm0qsh z3WcieaQEeUq*-ZYvWXnAV4;n5bJf%9OTn$csy;t`>KpjsG$*B)&q;ZMRpjx4q8o#0 zLYa<|gDmoz(6~5GRHfF2n~=<`M*79!F(j_iov7(n|LpP<X1eRLp;$CT5*m$ys1#s~ zIAF!_!jeR!W3aVo=dBVBeMx>JvYx!**EvNlSv&d-HJW3@@;SuveH~wghr$|p{AF!R zS#u-Y9q`Aob(vjFsC1?$UR1fHUYOh=YY20R<QE(2c|tae!jRHk--y2Oi&6QyCh}=7 z3j@6(X))*+@@pcn9eEm(^ueT#X`ii6>Fad_Tr?35bys-O>JPL^&Hk%vOFNiwqtpCa zZ3$6zSr)at;TxrfDAbZENx{OxfLdGmJe4ePqtfI>(V{co_S*Q8+!cn8JQgn{wF6um zol)gS>)4ZJMaKFTat4gr)KR1&p$d^1BFl>B-jepS2P504q?>~G30aQ5OTm)H+&G6F z`=N&x3p%yoE{@9H&k->_;Mf3<geS{;<z2~hle`rpQSAEOAzdTWXuN-jh9=VxEe(%} zA;>I5T6XHYaAB8-QI~8b-uA5Ll-MF3VvBf1OC@f1T=tmth9#i`o1bZhE@AF@G?_?3 zrTa4}oLMC3B>GwAmfmGVfD;c0UE=Dhc&2!OO@fR>ix3CIz|-spM;*~4M%)a)giqF| zo}(~%@s;<n1dU@*83d%ADeW<5AjFX{$BZHCsp_V36e)93i(FdZa%;xh#?Kp#V<-^I zHlS01rZ|Crk%S9J%=_N%(Z6gof~$?=M7^3FiqOh6lx*tQBuBblkjEl%OZ<mt-TG~! zu#noGEIbWH{T#x<z>|5<N}R?I2seEC1W+43{tvW5Kl~nOllM$X_w_hB_4N7tqX+Vx zpbFx-C5~Zm5RV^(R`9;`j5p<;9X~B5Pm)EsabrBUaB^Q$$uJ0PiPJ0JRq1WblerVp zS7`RiTXA<Y8dWj!X1r^+vu(V|_3YYOw$>cljZVj3<Yu_BmaRAZ`70$4$m6z3ck>(s z>+aURKq|9YzV7<6YfW`57s|?Bgw9O9PmilexT?I2>+E-re#v+`Ju^0?T=l@bAPTf2 zi>WIVph93@_MBv_jvMElkYI3WIqiNfS`!MfH=7i^6EfjMbJFBV>+%@^??|0IKil;> z31j~+t`X~5WGKBoe@U$b)W)CQI=@oo+^{SME%)5&uQ>BaP_!S^4ji5*o6$*k_8r^& zRlfzeyjLT!DqNQsB*F1rbqsq_m_7nV%J`%&xd6L2KN`P!Yiz$-Uy2$zPI-N;rXP;5 z)K4e~zTz<Js%gul)bFmj_wU~B%RBl{AnN3_*EFl&1ks}5EkBa8N1Up7C9nGS!x|4e zolYMUt{ux2Iz^JkgMqoLhi^^M!E(odLAofZb|R^zVkA-_8DS$QQ5>mjeeG%WkMu4~ z90%Oso+a4tO_4iVGllaTG4C<?Ct#EHS|yPiWc1@1l9z7PeYnxIE1I)OP~O+42~(iP zrs$?RsSa@Oj2$m_3OQo>8b#xUx8(fct7Ql!+|A`zaM|JA+EJ&Y`YCBpu91k?l}Mzx zl!_#B(rCs@e3bZ&0|iDd>iOF_OqGC&v@M0B1+TA5GAKV}Bb<^THg?^*3sGTTiRn#% z)gFpycmh&V@H|)zyz8RF$#ubqh#y~H7t19~I2w6CxSYN$E^dM!9Jda-eof*7u3Z-! zgt4wV?g}^&_7YE)|2~`v|26XO6Ya0Zg+gYi>6z!+dp$ct&uix1rv%joXT=L9bBUOM z&mo_;Fyv1hG6CP3RXDZM@H^OP>x@(xi;dn|C*6p}taiS&)ZFlQQ?5g-v6yz3>2qx0 z-&nKAMATG?RHc@H@l5#|l8-rJ<}1*Rm*W-N$ch<Qz5^52*yt{{xPjU8pRgPM7BdJq zwLqvf&YCJ}k|#v*QRt7v^e#wf{4e^9xj_JWwNyyvvl%OcSeQ*Y`C_$_%O$dP+p;tH zVkTXYSL8GK@hkc>lW)mq{J9)KmSNZ(!jXiP>g1C)5wa<sC9U-Eh^NtrWqD7#dE$WO zqaof*c{au|um1OZ|30moh>@On1U}0PX_984dt5bZ+;W&ryuKK}FzE{Yl~0uzMdftS z*>(quIa-^dHLV<>VRpfBa#<opGl^`Q7qaPsV??AwtkElZUMY^glaY_)lj|BEJ-Mcv zkC0?EPUC^BLwOFncL;`h{Vb6hws}_=>v`VhUHw_IiSk)MYhwTUV#<f?FLB^9D_L1e z_`;@V=b~s@#0XB|p+qnRJ}=A_n(*xb3fsbDE5W7o0~NdwvqQvKTPa7f4dJ-zuN2)Q zKxSbue37;D{peOSk~ymn&OEW$=w?d(@4`y7Gc1=+c8VRhi@em7Q+I18VzmnGgT&fm zKGDc$aPJCwqPShOL!w8X`+nKnH2;{mmG5Go6g?6NU(zps6EB~hk^=bWpUEiy<SxUL z@O&O~<df&nlBpmO0y7V0=AX?!ninnd{!|dYi*+Z_ty^u|Vo0o5ENR=zwQeEiw6n2X zBb2fm;l?0aw2LaTr`C&!WUUsD5mnyJWb(CW%>NHobDefAk&4*KBHjpV4<BeF6kYAa zyH;bPvX@wkv#S+i#m=64fkfRE!hm`<!8F7hc>X>f+#xr@*N}Q<eZs2Hq+R0*g13_z z2bENxptG;kSbzqg^&~_Pm*=Ng^BzBv?h(?9sUX}4bP&O=x|hg)OaGvOlaE`s2g#7; ztqlipX>O-z?0TI8!CkHpz12Ck-H5ci_L|xgdl)M*mX4`dH5Mz^!m(;05igb!#Jx9S z`8-hAB#CtMC1N0qwC;mW$|X&)dr>GFjUt_tOsMmA&CZ8x@SmfeY=)&LTZzWHvu>+M zEYCVlCt_jKJTE#<u~f8^^;9+;v$K(OHdRmB#Z<yu-<T%glnnVSZ8w~pe~*N(<{49* zN&eVBI}>=ozV-acW6tkK!e5~I2@(r1sF4DKzka@Znv1L_s*UcNyL|@0u9IuU_97W& zxo?vFdNzJu>bITLhB7k>$Dl{=?JlmgqapYl>lwFPf!<!(^>8+0Sm{D}@VeFx<=2ym z$o87Qs?VKY#t;9;#C!ZEo)@Y&ZwPGU`EMH3QcRruO0=o`;>6}xry%+sgUKtNsX>rX z%4b<c!c{CAo&tb&u?Vp!(L^+pkEfFsVV7#jUMu8qiY3zdq7a>;wmAQwT6y~t1YWwF zi%I&NM2tYncq(t_lBGtrwp}J$K+>*f>}WcfvJxme`5IGK+b13dE9iR9sQ2IX{b$Tu zP$3I&t1Zm4BEJF!+X5sKKw~uzn}qKOH@r0bM~cK1A8WdoQWrBkpNB#M!Gz@XbHRMO zUT?=LF#@tXR9QIR>#=IQ8gJKXZSJa8U6|nI^;)80Rfe00U>&%U=(1dl7F)40yD5Ff zkzqwMg;AgRQ?iM>oSCU;B!VBXoFGc+YgTq8o2W9?+u2e>msf6-vh7$kQqgZU<4&xd zDURPNW_SztWU;tXEDkx`q|4V@rCgG!{LxO=ea(&&Nrp4IBwMuBNi_fBJZz;uX15^k zvNvP?%02gWHRGS3@y`VOH}BP7t!tX?c5k)a?yC!KR^-9y=#>|LwN{%Q*co5D^|rDA zo2|9K<Qdx37{7-9dO@s1Xg;4O7JPH}ErmNWhz8i(Q;j9Hs1Ds#cem%}AC`N;-lcEw z)@b*KNA89D#*;B0P9>S!0pA=w3{DuVu)QFFqJRiJf>$!g5h92<PMRlENj!f?9Sk=^ zA2sZ#(9(LlZHC7PGcm?zo$M<j=#rft=AGl6)opaqJdl%UDRmvm7ioL@*SP#A!figP z0b)pkA}JWx2Yc9u)tG^wl?q;~O~}d$^llsz6e^WItW;v(z38Z9{Hku<(D>u>)vOgx zeptn<<fz|secRTku6j;>Q~Nc2Gi(Eh&hr?M#cDVo(B5JqqZNi_08URE!ED2M7Yk(f zvRDFE_UV5tInYd*b<JiD2y(CC^!MWXE5>SXRXBvnx@h~iByerC?_dQ2Cq9aiBPw4T z{uX8#aS0KXa*^4E&<{Zyc#xQy#J1MslD=$q@7-SD#A*C|Ppx9*Sv6vpYki}(5tb-T zY)XOO>kS(#`|-WLLtQUXbJWR@Fw*{TeZx*F$dAQ9C6Hr&1V{A>S?b})R`0u#B>}7w zb|!ulahfQx1CRI*{h^R#Q*U`8akw;`z(Y}{Mrn=<#yTccRFwfb?W7FJr!2l}L6>kX zg_8zj15F+qXT>xBh%~rV?42f*_5;9`?JK}-pPa_1K!Sz#X^WY>G4%3_{9f=l@Q1qo zkJ!a0vhdCN&p@C#FD#C1@prf5cxR`*v)$h2Zzu4FceQ62-sU5tPkDX!dsAu3mdt8T zXqV({p1c2H#%3Wl#85XW9<TLaGvE-OQV`Z`Z0ePe$JZWQ8eg3{{Gm8m9m{CRN2GH} z-rWD73VKf^7MZ^N1_+GLGy?!WkSp{9R>HaaLAU_so?%p*I4iEYX*9j4_$U*xn3RA| z^Y1_$NE%Vk`t5JIJ_+47d?-FGiFG6IvsW>E`)kEFrM0!vo1(kt!EyXa+Zy!wsO5Kv zd%>NrZ50{TTA%(BuaIQ<7R(6YpGbPwK@z{g?7%$)^(xg4+@F6uJ0)|5I=ysHw-PCj z6*86Ba!-d*t;`bB0>^hb;47D*`lgKiego6CXQ1~>qUHvZr|MoHD-=7OR>RI@>~N<e zYk+gf_lmfJhdlCPSIM5sUJ07<u}o0VlsYFHD^O<aQOA)K9YaEYb>>QNEU428ikd;s zIOb3;;~LbaC^3)$-M>2bzKJ%PLgK(*d20ZO3`Z)ENEPtlbDz(u2T{_+d#I?#w;lve z-yIg4&0-+UZN@!LgXPVp-DAsA$#m98!xosd2HT$2qDHxr20agV7kJeyUVR-n_;Ff3 zUYGC6HR^3|$lrLdD`9y6#;5lR&p!VRq<z-$%{Iu2#)>gVB5}y5Nr5Tz)=L@fYEv8W z41)SNz5=-jLxCV|v1-s^Kvj<1k$&ry^NIGkVa?E2<@(}wxSA-kFM*^f3wML`wYpX) z<{X1TQ7^n}V;p2p8M}1_Y!hJ6d|G~G>{&n4g5*-*X0De2Mr7P76%^yD=X22nux`Xl z#7VW`^&Kq*&p`&#h3(HPd9=ssGW_iMM4Ef}qz_B-Pg*Ja6X{WJly)ZWNNJ=2#*K~8 zTX|k_g!JeR#K0;}Wxc2C@}{(AM*jf_B8VMwUTl(x6&SJ_n~vIdHr+;{?{4}l?|kxw zf$#X(^zFInJq>`mb*+11S-O5LG0@(1HOy-tTuxR3Mwu_G8wOykRv*^Qg<0eJwV)K` zQsZ;wj{@s~zsb(>iD3Q$z@Yd=FM=cp8vx8lZ{4-_FuZ7-wU^%@FD)&KdcWx3{`+m? zoHyFW=^M3C7!((GRl3wsNH1O;{~NgEe>lFbn${tTfrZBq9M6OGQ-K}*<+JuM_QtIi z{M(DW?qLaQfd3D5fpYbgH!nBcZl~lP?sWV+To;QnIl+6_Eo5A#K~nihU+Hz{uPEWG z=2zxAzh=GTHnxkZU)&ycH#P<t8DTmCil1XM8Tg%nBcuZ2;Tj$@{gRjDWXEDVIdA_I z{V_Ny$2WZ+oqT%Xnfi4~(GGV%oCHFepupR)G<tpG1?6p(RIju(T;A9)Y_A|aUVlpd z(8;xK*VxS6`0AiaReR*z89?1Vs$#>dB7GqCYHz)H_&ASMWbA1ZZP4?pv96^bB>I`- zLEr0Ge7*8Uk@(_HBc6qjYP=%c>RcmCmGRQhZ~?(rji6&P_dL7VJ$A3p=zZBfu8vA6 zd+tZzHz8M;LJ9mfq;O&f8~aMd7UuR#TU#am&l-)B6aM`V;SIS02l{>b-BRgHzkAY< zaex2C`%>V2;GZ%}?`eCLZ)Wy+!X%P1Ve-iG9)P7cX2CE)S46e=MG*A%{eRwCQdL#$ zv^U(Mn|IoE6|1)i<8=q;iS_-L-Bcp0;ww%&u41z5Tz0$-+x$=4OO?t}d$ZMYYocJ* z3Wecvbtzd~->a@JXRO7d-Zj})CQe_Oqi68zoMU_VCe{b>%Zv{n6_|z&nQDD%L?0TT z|Io0%YhZYontmJrs*bd1SPu;)d`<jO5l48El~a3(*0{2JxGQ%rje=P&iKp2q*Iy1) zWbm@?FVrDnftj#TR-r0qbfC-!4|Z2drIp<SzU}%JPpZQP7{b-c>0<X{uU_A~@b+$q zc8R?Sa;|EdH+!3k8ex_2&6C!_Ogty%h)#xv<+(2rR`;;)OLi@$$}ZtBHFwc{liSIj zsWj|3D=Pzc&pkZL?&OrEmejf`KsGM006AO;7+O8cEs^(h^~lNYk#``c;(J-=Xmwv% zOF4<+VS5{`@1UF|VuPnXvq4iLf*9^c)Z}aGm#G%)FWBONH;`%je0WX<>6{TZ!oAZa z0w0ObDi2giRhA~D_g`=J)k`C(UiLR%x0!_l7H`iT)C#g;>2kF_)XROS;~qXZ#)S9~ zVM053$aOIWTL**=aHwr5vRd#6gNcJ|dGLlOf<XU*_d(uVaTN(+4kN+K_)EO7KGxO9 z9vjjebyu+%UI@mQSA~f#o@y!0IJ>(x?i*bCUwEaNzK_>v2+Yb~W(C}P|26#h|GU;T zK4n2ana8C1085!iu`(sL@8FdB^H_f+QHZ9Bv2OezR;{kYon#8~L#G;fu-b-BCESU{ z*39m*lb6h!ZIf4uRq5~1KJra$&p!1*`@|OXh|5a`Mls4QVC8xs{sl@GyZjB)y1NyD zOC@QCSK^s;E|n*XUosRY`DHg;C^Qmw@&mK^HgyOkvxAF9+KNWol5jd?`y=IIIzkO) zF8mCv_)oxIiLT`fAjXOn!T1@|zV}ZMELbb=m@`*<;YV=FV>X~0wH@qu96&cKb;-## z_Ls_B*q?HOab$eK2l$lu5^suBc;ucyU!d^{&*2au9!Br`S`!Q=%Zq|q@Zh4Ia;CuU z^llr@Dw0Iy$s!GnQ+%<U0!pfh76q$J!ds^(c~px)8Q!s0QDFdJ7|3^=H#h3@)F<2; zf9YC@3OD}!3N;)edrB-f|19&bUSAF?hhN4g@c#dK|0MXo1%9T-(PPp>Q<_<LJT?CR zlmm*L*8>ebn-2cIyLHkVwtA<Va>FAhUkWGGhFkU2rNGZ}@Jk+B?veF6AvcjotFTF& zs6JR(H^EzFKHvnnyVSX9gxFEhA1&FezSBmlFD-wd_d%}`GJoOD5Bi9$^D?Ij$VRU( znI;65i5yEnx4a5J69T<_u~5S;l<}`*oNTjpCVPMc?uj)-0A1uE<p&+8hQ)*Pjq5}2 zrmyd@VSTg=(e}pwL9Qf9c)r%mlrv_An<fAeErIpr*6fSW{;`7Pphbe$Mi<t|jXKC| zyf55{HybF`(ilmp1@wkDO6KWxn3MUc$~qBhNUyE=`Y2tMlqx^E-8%1z^sCqIUs$Rx zy-ZQ{7F}zQ0V>m~73z5jAg4j7IPg9a6T;$$3+#Gd-zXmmQ}&xt-WRWYWUr5n?5}ce zO0P?DwIR#BP}8NqVTfDwxE5LDMD~4IUrU>1pZ55Tri7INE95jH%wxsh{lL^TXD~XJ zyKWX$<6Xfl4mXAey%!QE!NpI?{$6I#Hkxl#^KA2t8y{Wo1-V*Y;JMd$l{qo@i|2Iq zfp{4oS&#2|{OaG-t_^XeKEH>dAO96@56lNM$io%8K<1Tvx)KT%I_>3kWR5|$R>qT@ zh()#zc3y68u9g>TsZ`ggudQxW*bw}GGECvku%oGZv0JvR6?JADwNG{~ws+Ut85{A> zQSr`lHd%C*jhe#UNbmUG|1DitY7X_B_Ztu^A`cT%WkZ}X^NA42yHnXhnSc)rKHZLr zH@c}*ZLxKDcJ99Z-C}8X`(o#$?YI}i^-i%EPiL1q?pvpnNF~wLnO7ruUe22cs|qbl z{i>nnKni+6`fL;41CJ^P;}XFrVm}%XXfFw3y}$1Zxt3xpm#1nV_ni*5lbHMGW+33g z?NorX{crpJ9*ui~*H8Y$8zy)I&~M!GCxp)T#g9sOfY2|{O!1^XMW)t&LjL{iIf8YB zlm(ICjDU3w9UJ;}V?Hp$LCs<Pd0<|=IR5`TLay_0tdLJwmR-)o6N!921}B<+6~D)q zz3WCKb}hEQZ)K~sQOH`{&b@Zuwu%nUsT8W+>r~PTn?Fq^V{t2In~VdlK|4p(SJKH+ zSR@`#CCS2`vqLfQkelgTB2M&ME&<_m+)a*Q56ZEfWVBF++Gl9H2kyqvqS3+c5<Y_i zAQqB{@CkNrY~S)Ccv8$`IS;W%3D*)LB1Ue3%mfH=0g9skahW4MKE3`DC$)ef{Sw~8 z*FG_bakc|(%Vu0Lk)V&UD-a(d##-;GixE&1v7isb3}zW{-Tks=0+m<gXDC3w(GT8i zG&}vO?3o;h-kv!=7v`7)AKgF3JNBKY!{v^rDN4xK$M+9!pVo49u!FuHm2)t_<RIPz zfl4y(EPys5&k=i-cGI9nPWzLgNE#GSVc0o3GCEjK`*109E1Q+xRz9s1$rsl@I))Dr z`|9zLfQZL$>-{Q7ezZURvhuJZ>y%I!vOiLuu`{+}W2^q`!xG(NZQ%CI*n0iCE5Sz4 zVfB6!d+e{#v!3QV9~j>w%d)b(R89*xoF$%`Bp#7jwE!<vyKVFD7AuE`75<H8d8bg% zrUozDM$sq|P_qcOwNwNu_HGRbZ2c_gv@&+9g#q@UQav~TJcDDgHmDAE`NnXYo5fVF zR>F5vh(YO8bJx#gKl{lj29lXDOE~9GjLq#~MN717ce?M!m>BR+O3Msm(FiLZc9xrx z?BbrWx_48KeMhL4T#FJWJQBh!q_HKQx6Df1`^0$0V1HtWI2i0*bCIb-$PqBbrQ9Rg z-Pq-bj1p72@#4CN3}>1F^QU`s)F-q$sZvKG@5w%T#l>e4IgV5?rmT<@=@Zu(BpO)7 z`Bec)y-MhcbDg__3Vlew2OS;fPHJ#8uFw^029?p(zRkO5c8>bgUm9~v4R80!_1b-6 zi0$eV(5~QFKdjC$@3qq4O491vrQg+Qf7w3y(kgt|Bg57&s?zNaAs+nJ$g(NO`KSFa z!jLObkrIoC^fFDb8V02~eG7nfY|CNm^z12+;Lj3fEpA4gP>2{?p^W+bK@h|AWnUC= z!zbGKJI6EU_z%4ME)%D--FAKAs!EkrxvWy{Z9foUP4(Ll1zq6`7VwcKaN*WSk@~H@ zwROIQL&w?j>g~<9D?1$Z7LoAUs#(D8$4UN}eGZOYEZ|oe%_QPcZ4S5mS+#j-1=#8< zMrp9;R?Ih7_I<I|aUu-2PW{<S4gjNcI@mMcFt+sD$W}6zN1utsWcHB=CBk0q$yU;l zO!0-up3aFA5D-3eM;LfCbpqjr?6b*qG6PVs7YbV`BFeOUkvbZBp#a!9k@b4?RDZFY zYsA{|dalgI&gLu3+Uab0&`+hUlvvj}z&O7IY2E8Ph$H!IHjlnZo%MO3?JTpR*-m1b z#BL~da0!G!s8w2$*A;)H;{`@GP0!UQkbfaA$7w7vNPTf~BIx?H^EU7WN`?gg<Dv!o z$pMJ12gO4U5I&|q<L5Qmqwe`$k*836RuV12*y$+iQOu+cvF3ync~AX>ArJ}?vF~^{ z_`1+bB|)_pM=b%&s9~dV8S^Yl{%P?j`ex*i6F03F@$tbVVd>*!yo#xoXodTujKBf9 zQxOX*O%m4S+F*w`Sqxu<iD+*%NrSJllpAz0kp9W1FZm#L3#qq<_wn?3uYMBm?bVOW z!1(E=rP%9125MaEUsWILnjlrv)fyE#PGsyyj=?6bd5<NvvIOkD621gs=f0}nB#ki{ zto`Vs<Ic?2urXfW)BQ-s55z;PI}kb|YYc?Iz|E%lVQ{>OBgeRPw!ls$14-YFhf)IM zVIsIj^~(0Yr!9+8=~0mUmH#o!OcAS$XfG2!CJ-63*EjQz&!n5AO`IJc?yJN}+?r~) zxBDKz49)F225PVj@1BjG-1o|KnCD-o=8vei<fI0=&RTmaa=+yJ9tY@nI0=Z)9ULKI zTOG}L*$kvV=+sxdEV1Z%{)rb&rarkXnfkK6ulXieQ8y>LcpGo*fZ7dl)7>Db2YptK z`PyZUBCFmpJ4Z|E=^b;Bz$Doja9xU1lr2F|K?(fOX|w%EDV)b6o2$guX=^h_2lF4C z%JdAbMd4FJMwDaGUvc{;9F(D9Q=Jt~FN^tFW(nBpC0g{h|4$@e_`nypj1^o5u@mvx z7Sl__3i%hM0$zK5%)a;2UxcwBvJYWcoOpB7<DU8uD>9OI13&f5DX6)p%M-xJ5LtL4 z4(m3)4wQr9iI^dR`pyyYOL?=9EzVBerc`h`u60m$S5>2YV7!KrQ%?hftw+`k5p)2W z4$G>p8kIxOH}x>&)7YG=?3Q<yDr5(Go7XKCdldFkIXIvFDuSUt5G1x#CY@(j7yBsm z=$uQ8tXTgEHL3kP!UUApycc-KB-(Yf;jzZ0l1iTxvVBX;alR(>2^=9DADWO&)^;2p z$iD6)nF;up@0z(|N(SL<7>~`BGwqT^Apv_502A2vhQ_P9%xD4(<ww>Cw)IhdTw$qV zMT~#Vdnom~T|!%^UTK+=M<fKlk{!Q3uHX1u({nR-tTHhaTwM#hnj95ZmA!s(NymQm z{yV(-o=)>>>H_|yZ-GAhE#ZHV@$w=-ra_u$nM?vK<yC&gTB8A*tQsJkKf<Z?8%iLx z-ZB!EZzk|e1s);^NhAuWO&loxqAZV8DV0p)nn)+*nf#l+Sk$&sI5bjLdNG=}w%voM zlOD&EZn+l*p=eg*=ZmWVg5xXPn6LT{(2L~dYP6J=#->ZrJ%(h^iN~{<Qd;Iwx|GSj ziAN*k)Jy_^8DY5WwF6~uM)I|ln4OQU#O=Iy?))^k2bY+~)bZD7KL?{paKp35_hn-k z8Lh<Dfn`XHV&4#}m?onaQx%B}v>^n9o>p;AcGqC0IO=R~R(orurEW2wPP}W$;F^G7 z80sb#jKb?yxs)YtIp18|DkRhw%=K12cH*4nISq65Qfjf8%v-UfI>!v^bmV5ZN<PX& zGMg&c(PYKS5TWeFT#Y$hBz9O<|0B^%A7hc2X8WJve+s&8q3phj1@c1brjVl9e&!_G z^XSLVD!Yniz|cTC0JFzQFrM*Zvmki%>N9dwTr!h9Ir*o-b^6lV5z?S{e7K2aI$=ly zO9}Ck^cYfK<bg%V%N4{5w3%d@1NF@Aq#hZ);l)OC>8#z^ez~~TZ!8+U5x>z2Lyr5) zzu{~-c!L_@@L<m{w?HWV#e3goC639@>f}ta4LSbP3GdM;*u{N=-7Xw%0JC+I2E=f9 zMy1{<cp87sUM4JLY2RPd5eINVOUSwyBxM;00kbAt7J2%ffdJ(J%_mKm8M}UGCR$59 z6-pKo#mz=4g(I$-3?<9i;_hPFUOs82-3?eh2t!};?sQZ;SslG+#^<SyT|PcsjfI-z zs%@n^smjH9KOPcaanu-i5vZ5MvCB08@Jcv)+CB7Mr%mF^@!~$d33lSUSgvw9wrAWV zJbGdnoYelYq@-pZPa28s0({80DYN4T@&&?V%+q{Q+LdnYWsJ8Z`w8i+T((V4r*^~0 zn32#`YXQWnLSs<$n)cee!*LZ~jQgLA8d)30Bhgex<-8WyYPm7oGh?Ai!_C!2ce?@T zO1D_DWb&sZ8oMp_=HUDP%l+5p--jFJTYCKdJ?x*7we~X_Y24E(SPiH&&DjSLNdfxc zp22AP#U3g{3pbl^4@CGd)XZ3+{bM`qjAxFGKJbqpOpPBHzn;ymysn@k#mdR*YZZpT ztJ#d2v0C0~7We9HBAp7k&~hrfw!fFJ*YlxV*=ptrWO^6=7fg8az@|I6>w3@Je;tWq z3RS6AEEjF42)3|fwXy83vGYZn0HWX43MEOfv|Mag3olpp_f}HbVnd~y`MqLO#maU> z(f~{ETy`gYr29(JI`cQ08~^i^k3D||Is4a%iuw<HRhGe&Vr`mN9Y%UIAougKi!aQ7 zN{GVuhz;_87DQKnqGstYjorV;iq>;U<MV~wab&~iW%~)y_|H-P<SSFYhI^JooEUUR z-R4ByO2aJLu|rbyS!X6)1=IRo68B_1nH)BjtZb!SEaaLNUL;kt>M;`&Z`8`<>z(yh zwU|l8)rKhPj-4bpB=s*FDqPA|3)WR1*1Kx6@h+0dAI6y~XCzeID-=>$1*wkXn9Zep zx)`y`?nyIWCTmkGnvbP2S*KWObxPGl+)kt}8(wWpTfU*?-iO#ZUx7&yE;%ClZrV9T z$O-f?WxDL7SH?|@3@B*+A0G`6sIIJ<D5~DR>E++}GW!Ar>63YM4&RVV-tCIgF2r2y zX`V0DxoNKxEU=`d=TG*A_b-r9Ux2Y0TNEV!h}HoKnZd<;Q=0cYYhwxE*<4TP0P3k| zuyNVWI!@N?X3OPEZ8$J7$6!&QpX48yCuu!WDbPkvF*B&xrIPL6%oL?Ex-Qy=i0^$; zpKpvjZeHG-NsUBjg}?fy#bwkZT7;%oCbg0(+^CthCyVg_UG-MYdXo65f4z3%dqlQI zzVoniy1$Sc1t%apWg{Gxx}#1)Z6K1Kpo(QC$S8@gW+IfGiExW2O|I_sk?yBgGIBSL zUOEo2F8zjdM=yC}COk24(t$S`ONUc)foc5QvjKugKj<IP!7z)6h<S90P0Qd)aM@oa z%#!3;xQ~B&jJPbvfA2Vux_<hPZM>rE6=?rDGSXw_Jlri3A}o%iIej+HVC)wM$jri( z?JjWkG873H?fO>Mbvnn3gcYfyzB*bt)6i)4BLDu&Oez-36e>kX?>AiMXq(!;E@7iO zn(S2~50A^1tZiRjx+ZxWA5|Z(0le=_R^{{d+>h6zLywJWA~xrnau)m^XsV;tC^C8w zc~(Yu{2zEB-Fpdm3+atM6g%Dr*AVNwo<-N!w)pBV%K`FcLhjZdXONP6)0-xO+F;Ma zSma&PvrUFZC=%=yGn3>kS5hhn5~7Sf4)D8XifBn<wK0zi*=l*&sb%x%e4SFWxk0FB zX{?{gM3x4cFT}LdQ>WQ9xpJd1fYdp)DxckG8ZYHDo<1i^7=0&gcVD5OK4j1N7Mb^c zo6PB)&bY?rh<khF*N$N!Zk-~8(Ti|eKvsm~3#nv8gQ%w+r?aNhf+j<7biB485~X-C zy#P91fgy}c_1MD1AmF5<skkNSpi?O;o{FZ+<zhJ+Wu~JwrlL`v4F<JxrIAb6xoj?x z*{wAEN0|hV?L@9oDc2em_mx<+K+~|dwU;-WgHHWq(A->ZV-dsevT@j5TilTb?<}r$ z4^_1m8}_>HPG{L}omb!1$SSqctTemIX|80J%C)!E^On8bQHAcyZd1$fBU$ZJeX7hM zuYE4Eb3jz9DWrC+HlGvh@{EYPhl+qZF@kHu&e*E+RJaTY<|oV5(<$HZyk`w^4da|z z6KXjahO6gm*|KWvim=|pFe1Y!whS@vtgZcXBixVsUp9sz_o7gXx~8#Ot&%pe>{fQy zb)XI%DYiXPs@b?zZJi;NJ;{fC5qpz(N<TxE_>M@<+SaR)v*LD?j6siOw_t?`QxcCp ze=aqB#{Xk)M;8n14<zJOGYj$wQT#=hXHydD71=EdwIbMhu;PNMlIrWvh*io2#Ckn% zP^tqzCXgmUcDmbg;*G6)4rW`2D~;yk7x*H+09|Y`AHOg8kmx)eb4YMwfGSH8Tkuxe zaPC!(92F9JFg=eUMSf)*)WQrVHZ?C45xc$9Ld{whV=-N<B0?!I3X@SK*=f4yoq4sw zw%c#Kq3e4ap`QOAQN2zov7DEhQPaA6%A}Q=y350jhGAs@I}VE)z$-)GG={5vcYD)2 z#~%W4e&zcivV93D?(g{iBUx2sim^fQdCQ#@G==&;;;KNOpS}Mnc0jqkQtl=6T|Z+M zjWwG|AjO20Wuh%i^a6jroNI<d_1sRkyW2Gz8K+QQdbtGU^WtK);P9|qa54>(H@lTo zK3~b_hwJ%jE?3RJ<)24QLT9_xs(PK)?-~y?xkM?M%gQ&Z(O51UZO7Wh>e5oR$b;DW z!Fp`*>V?H<mXOYBxBGI5S;5sS`8_Vgl`l(aDJ8Eq<nrCBd+rs>*o(aJkg<QodG6() z6l>{sSa0G1kpJtZaZH6G<jKj7zWl4kjD)>PK1QM93@~_C2PzC)L52-4wl>Vk=6%}B zHCFyiq%+ks%VWES%wNI10V7eFlho>-J|Eb}!CHw1s+rla)&eGw-Er=|-rU6E@*KiG z*)<=@jSV_uM0e%r{K^T(PPpW&z!g?4x+F}NqzwKMRi*ige99It**oxdi|4Df6yJef z(zc+R99-!Kf%gM!yZ<e59*?!=_?tQlF@54?JRNV^!VCKYG-NTJvgwlfl#F}hBomLv z59DOz2~Kh594^lvs$dU_dgvRH<YADzM7o&omei8d%@v0}PiZmA-nlE(9+y25OqkUI zbb}@Ua>V#0ARe(sLvEJ{T=M(cS#qX_i3=Z$=r~7BHppDiskF^bx!8<|04^byoL=HT z7QP>0>XN(~KF;w+fMQs~h99FO0vx=WpK_|`8V5$p-COcPMl|Vn4)~sv%tc<WR+14J z;$ExQiPcKwVwIpL(rN&<R6e`-o__(32VOX4D$#e3ha2wEd7$SWJMB<ovl|@%qKdS) z+zv7yvxPtz*}qh4MA$5K{$u#(ewjK82N0$ouU2Apzyl~Z5)&echhU5*QGmBYT~+zM z0E{03;E~N3u~Jy9FdW#XuUx7|+P!w9>Y6udoXo`|nPMSXWS$}08074>6Ox*nh&KYr zsBc%!`)-yLIoB&~tIbrQn1M?<ktvM&n{$HsB=(go*d$N_Oc|u)+0SSFx0zO-Oo+u5 zN{8Nm<p9BtuU&R>Qpo9n$obSL=d$%-vx85tM0$>VV&J55;q8nChDJ4GNRqnS{TuIn zoLvIELrc%si16en;Us&w+U?X-=NK}BBt}J-gf9|@=RiflXw{2o03c-9ndMHtEZ;)z zlJU4|(^I%}eJllmUtXt-^&}auofC`E_38&Oe~+7npN1yt7XqbQExFdram+%n>NR4R zOqaZtdHYVjRx)4RY)y6COm}bGF5M8PWlPietraq@(cbt1yZ#H<a({{S|2+^-zvcTq zT6f*;<-d-w2uR=n`8K(on$szd=7WSTLuw-?GU1&dLhruNQHW&zSaW#jZA+*r<cu<X zhwl2p0ojc<RPErvT|e9;hbt6fqymX-kiFGNudJ`HR2G+)7cV1nTaoAf(^NKFvZ}TC z@SHg5N-bW>W{pZU*KX%tavbH`?L3D_fGi^GL^EEM@UDOD+JrWoZFH7N>#?EQ%aui* zuem#*>I%3z3X7Fxx67Bi%YMn@W>u>ed8f;@I8Qo-HW``^*Yw@ds!#UtQEua}qbK?v z2ktA`{iZ=sqACRVokQzDsgrqx@+Y)}`k+wGcQ*FqC1H71zP$~%rn>Dxx2?JiiCh=` zSaiRygPHJwF9ZI-WZ}{*p3j83iEd{0T|HzPib8_Xfn#c_+>a)J!-X5?jY!-|uy2NV z7zQnuh@t>KWJ>qMxjS5f_#hr>@To|c&&Yiws&MzP4U6s~I`A}S<$ppg?$7DS_(y0! zxJMD)6_WzVovI;95G+sJau8$CGd?C+SRWwU&ue`I?hQd765}CQ&u<#R2hVv%Mqs}8 zZR5e`aJR@=@)Y|k-+!tN?>{o0Kf&{}pV@FvH$-Dc%04uQraaBK`(;y}6Z2Zk6z%M) z6^+NEaDb9o+)ktu$y6lYFioeJ%_OX7G!ky|p;E%4adCJv)=aaV&EEQu@vy(Rw4tIK z{X-=Dc*ga~lWx18iOUOpBcBR~5@w}~?JCg)l4@3SwgvRiG~=<<R>~3%9%z^3Lunz| zNF@?hzEv@|@`-C7NhHO7sowv;zTcionm@(90Qd2CSuLy=v8A!0V6Zf;$3Ik4zj7F| zt$P3P;;>)0?9gF2YpYd%Qmxuq^_f3oB}ju#m_yi1Sc84L8p>uvRp!sNYbQQ_^~dI8 z6nSA-UYIeztf)a9kM!zReRJ#0)@FSRm*L0C4x1@sKOEvGJj|qMrk=}Qj%6Kl@rfUF zn1}y2oI#REq9u1R@M_SPAvRLOqv4Tf`|xz!PqakxeX@l7Hc`j-W!^mn@TJ&xNkBNO zk3L|kNKFqs&mz9Yu{ppmy{X}=q&~aP8F~LH#14MUcTZ&Q^aidI&{>@8i`l)mdo3*X zk%$sa$&DbG6TVYOMY3&Abh^xu1EnvCrAe=7yz0q>Q1~AQ@Sx_0M|QK?)P&m6s_l8> zK&I#bpg}*hvn~SKI;LGr`<i@_O`yU4!5W+7MxQ~O*RiiRqj+i0w8F%IF<=~uKm~!; zm+4ed=&poOj7;n$lRjtdz8axl{Ez%fGFKz%BItZuJtb`l(c1nwv&Tt*dxw0u5(FT} z0y1uo;N6uCgD6Fj0_4}r%*xTo83N&~R9yB4Z;WDiRi7}+^q7d7cci|0aVs<cJm^!u zM2E}W*o>*lDL7~1Dr<yj(13u;X1~2Ho21+eN=hsWkVB+mDl6VrSU}6FCXv3VqulZ1 z$#v3BuMV(jz+8m`N;~)^P<#Y>L5G{sB*(;F(*@J8|LZ%0kS3ifW#m8|UbuU4fKnl& z^sZ;d+uPK}r8?aGSqdMfR}Zgh?p}=AUZ{{5fP^V-R4;v}`^Wc1(C7aGZn!x4&wLV8 zCD<%BIlQY+9*g6J{5uFc&xkn_w}l7SmbfUkRhhW5DSGP@aa%~O0LK&%Y*&hQI+e9k znPIvB^H{E$Dy&A@Mjr;_B`Z_UB)V4CUVCXTE!E2DVk(v>Bx32J?NoP`UiuBQgv~n= zNyRd;INMS*6Hi$wlI9Fg;?XL+YLRL*uEJ;a1{7>oRJIpV-^5zj@y_Y<ujz5m=(#0c zCecEF-}hhm{>b;=lVL>qfBwl2wRMJ;(bk8u_s@I=0jiuH^E6IF{O&)v2OL8jgP!As zRm)NG#3zac((EHPL*IRoCrEcQ`Gn2&SkrO^jb7(N2qv;;A{0wknG2#Z$=7h_2FD69 z7A4)kd>f<Dr(A+B@@a_Nf+9Xso<H8$&XOTKX4-2`wgrh5bf}q?0sX^WD}k4)P%U)( zIn!N>T2{)khS0cWLMm~7xDSjx65iW;?Vj5CLR#LA$IYE^l(Z(P>>g)MxVf3g<XfTL zC3k;qe+5uosQdCrZM4H&w2<b=Xhq4XnU06ecY{bc6HVHKt#HJQh1Xsu<B@bI6g8GD z$RKl>aN^IlHzP4dWo5%D5#SaNRcopdwzl3}sO3T?U&~W5x8$C_eHk+cQk9hTZnpqB zeqA+}TPZWbS=B`9S)%MdZ}JhvWx}n)Lc@&4qQzY0q8oP8m2zt>j99SJSS)5aT%`k| zX-eXfFbt~Kk=i!ew`D>{Wx^4bSt*eqscl+P$($|gGw}Y5J>q|4t_TiCIO!MI<Mi;b zL>WY}@XL-NLLvK;0LInA)BEZ%C*ZdU$ez(FVBskvJRkVS76cmu6c{@pOO8|o7#fL$ zSoF;IytdRk8lJl4(-_prD&}r)oTV~_6gk=JcKXMjp4su@DMa!DM1hWed`yO-!LG9! zi=S7FoVbHBEeC!x>Mwg7HY4*3cDN+m6h3A7{P%owPoEGpGWFSa6%IyG)Tf?9c>a8W zi|WY=1RM}DNnG50*Vk(Ca;6f3ioA1Nv$vJ+Y$fDW);oz<3#Z6FYWeZ1xwgu7`-QuK z!|#o|kxCW|(Umjh+qP@Ron!*(p`6VtOI6(tpI$v)8zx03xvJkUBcll_dR#vns^G-@ zb1Yr6a0&f_s)Z_NZoOVtYwC?!t0&6EFRNNPZC)H7%fWD*jo5e9YP2sCC;bXLp&$cp zoDPEj5l;m}J!Wo`-a<cQ314T%7?D)Cj=2AqYlya;#!;hl1)!B#5D>CXtYq>THv(;( zL^}HT5!?Hik7Mk^@m-x!*J{DBD3PFw|2v9@Vwgx|@UC~2E3O<Jtwa7v0;i>1eJ)Pg z{+KbDoQqdw`p3{_wj|lf9^Rk?88zHN8MVuuX36RxKST=E+cg+g3iZX_Vklo+EQjje zc{nLs(2RGM4jK&1MF18E!X$39f(+AJ4fl<*8tTA()7ai_+)?iSR)ZjKtFi6AZES5f zM(w_eF`(od2w+rR@hL*%@O1@?!_!|;Pi4?N2F-%_!Y=7Q6@_`Buc9Pk;{K*Tv(E>_ z(w293B|?VV{0DvgvDVH=nKOPV^N!ZK#f!Cmf9*ow-fpRzaytq-K=NI7+}A4cL7BIB zUc8w-H9aqEN_Q03-#R-x+r3>*f4I4Qc6Pe^)vk|X$=J=_aeZPA<wEDTOBf7$+h^x; zgi9IV%Y`FU;*jwlv2T5895U~F(02h3;iHAbNtyl1Dn65>I!<vb`3Q+c9$;M%*eDAF zqiDX){qJBC%MntW%IApZNac81&)S`ioi!sKJPn5_qNSxQ@tKKE{RMG8U+5EKJb&dJ zcslol&?5Pzc(O;!L$3#{P&i#M$S*Q{E5(+@QzqMjA_amJVW+};pen_@_r+E7(kH_y zg00sV=(*&l_V%iAiTYHU>{Qw>jbw?pT_dhV9PN1|I%9ut5Oku)Sf%$R$n~M>5;`vN zntZq)iC<NGn|JIDf$^?5*&e4!J#oiSgV)pv>Hz8Ldvfs^E4Rn}$fGM79(ecac-U$h zD|)ZETCc+Cf9HzTHZFEX5$2wQq=7-74J&$U@%k&NTGd@$JF3)E#e-DgaIaLkwSfKG z$ppDxY%7^lp;L%6tDO(_tVh_N@9dQ+v9*osfdvhrQdfnT#yh&^%&L^!-R^FQluYr} zSSqpIhdc9j->g{)f*^=6%q(V0r;y-BQWgedtyfI;QSr^)StlhNtk^IfX>+*9w{U~= z3<1=S!SarJz4uv&*m2H&I~j?INr~h9<()?wP!|UaWr@zhxB>Yoo^?`x$2uLoM&1X5 z>A;_&-_0?#=EnLCStm&)s~5=w;xyTWym&Z&VMwGf3lr}jc6NAi`bH(<k6j~F`{S|N z>Xt|ZP*DI&%b{zrax#anpKbRf%H#I@RescQWPD*5Va~AcW0?}NKCP<X(IrlEr@6SF zUQV_P?aj@0X(_qn?ldx6uXmca$ID%7?l!uOOm6eE=M*|B-@sY>757ZBEMuX%qY7?X z(8J1iyS%{>+OX^rH`{&}zt{ZK!u*dQ9l#oVqYO8Bbd=q_s8lX?^XewMSGC<a-He>P ziEJ1ZP40EQe`oMi+|j=xAbaJ^-gUeTQ=_u7N4Hxu^qp-)-@cA+oH565mi5`)W%*^< zk>pCq7XLrq-aodnbiME6dw3{vZTc=}#2NAW^3J7J)QC>#d$}uW#Mtz`bV6@fhe=rH zv|$sXWdOn@S~eiYgiD}8!xjQ6+zN$|3IYEh7DONvbV8s4sy~E6aMeJVs;FS7h5ir% z!BCAUpaepoZl<kvM4svAc@L>yquJeS-*`0qb$EE*pXYs_AK&NuaN9r7cUC2`S!<Tt zHV*NPwbu_68i`a|`L=4dYuED8&AJo$z^dbxJzH<t-xF?vyMlt5KWO#)t%J4YUbDCS z-YUcL+cR3j7PW23tI@hYev`<>5B9D1cDWC<Hnr7kx0^eyX1m^QzTZ|XBSv<(<8}?V zjhs9vSk{uwiDgfc9`|8m4@t=mR_KL>j*ah8aWb-DK%~|oC$=x3)&+K<{I~8wa|JV5 zzo-ViqdRe`dMw$`Mb8pM87MUZa1pApbj%S5Ir)(>XPhnL&M=tGxn=uecxgl^#E1+p zkK9iyg(0AMW4&0(a38dXn??bzbgwJ@X1IQVyf44ZwcQdcJqfDh7sc=7CTLXsE+#N; zoYJ5-*j9c1dtM0|ja(eE!tju-(3xvkSUg?)?!s;BQj#%yPBwKgguK&#US7OGh+)2? z01GdIL3}><c=73DNXqe43wl`SP*`5)$FJlP#v>RntaS?sAKWj|c%ijg&iF9zE|Ill z3t(jlJ8!XF2vstLiVg|KOqwq)m5g4ZU@a91`DkR<^7U}Qm&#;Hxl*bU4f->QfN#^@ z+J7C`wa@oUE3cR15tSQ2D!ZKMlpS31aXwjED$0|~<$L%4X|C`83lGY3&GM7P$M_qr zzd}nT5MNSWL9t{`iKEUN^s*?LhKGfcZ!q+5)C1}==s{Hjf$yFA3Gm9vxhDkWCt1K> z7=L@^BuC!YNWxTE!>7)c^@n7CbHjeUW#(GPm&YyrGz{<Ug_UbF-AI<hn?+tXH<RU> zK052KSm_ER<_hBHb$N%**RkImFO7cOIv%uInU=qqix>r8GT!v@&JHw>eTnl-hOa>K zAe)hA^Gjy(BVvEYe2s!d0Hv(mJ)b=V<Kb9r5N^h%n{PgXy5O8VIfr$I0H()SR<#9n zC}284fQwaD)V$ZuXKkhBvx0WSQU9Fp*LdNF%UO8eTT$b4=c7KRug8~=;PAuo|KXia zz&Q06o@_O>Su2_<BsQ;+o%S=Gsp@mr-z0VK-*f#(uHSPp{9@0O&7YN0(6inN8DLx+ zOk7;xym6jT|B~3F^^^P4Yt+Rx*y7q>NS<r4k$m#}8ey&+qgim`8ft$1#_UzCV7r=3 z#>&}pGUiXFs_mdv<zUSUB3%Tn8XsTpAwZDP+dpy!j)cNDj^sFEzEqNY1Se?IkrW%w zPmGtvm0%)KTMwQ_tMQgq53Sb{iQvkn94)Sd5(&xYkw}DAigFlKbi}!;J-VFg-u-N! zIv2Lf4&f$g1-1MNVpMxz^?EVt?<D<PqKCPEe!xxf+^g9-=AU~Z2-n@LV=<<l)91n; zH6{45$E+2SGLn@<#Gg6NMH1pZTm;7`SdOX1r@|5d3x;=&|LzD0yz`mrN~KApMLN~p z#Br0z<*TJs2J=y~vQo|DbC8SlSI<=FY_%T<1e&dtY`q>2t+ZNZ$ZXc%J3^+Dmitct zDfoOVM0Er*k&th-T+ODN3Cr|{Vz7fpR`8Mp5(RtnP{^2x_uD>Hg&~X@{r*;ReLaBG zO7Kc>t^M8+Jkpqd1lMAJHL>scU+>(Htgo{KEX=8=W^~e-NXZx1Z?K6wH|q5fOt#L1 z^FYQ1iU>wFe$B#bm<MvhTwScdsl8Og!JLPC%6YL5WAS()9*;RMB*4?(x+}ZG!4P_b z4oZ4YWk3tGc9xfiYjTB^s|&8@-jd7Yk-6me<Nsvn(?>@y;N(_zn}7`<lIy8nx1}#j zlO4H5`!*t26aT%@y0ai{y7e?Ec4X{|LMb+R4ek-^JMJ#|KmVCKNr)4!OUFx1D9YlT z27m>pKGo>EAA?)LSO^pat`*)i{Qe;Rwo@F6et*P)&8D->Qu(4(J};M=*}D18)gdyX zRVudPer~mjS?%NtHK?z{QTG>Oue|+G2cd8P+i5s7xE#t7mNh!zy#8m)CR8B_P-(ds z<4W1~VXlyk6s7%mct(B~JYpmZaBCS`zp#Q%xn=1YzlgJaZj$Csj@DLID9*n=M0bq8 z@f<NfGfTywpXbe`%&I?F<k=U}lrwycIbSRl<vhMf+&+Ej70YA>(2feFCAC7@J~Nj# zGx}LRs*q{gXPm&L<(%!CBiF}io5pGBvHiDPzvKG5u8QkFas9sQAN)MqdA*XtF5t}j z8wSVmvU_vn`py{lPGCj%&Pw2C>YcYj#+FMYj7`S~ZDTIi(JZ6jmvIn`T6fNSs5eJ_ zdefWI(YiM?n;EBnIYMtb$6+njMF<{DN-m9FH=Nhu__g4irhTp>yNm4Yzorp}e~alh z-j-!rY4C=l^Pvt*JqKHa{rfTN><{5Z5z4hs=AJ(G3ZzAXKHVT#MFo^!Vi$8lU-7%S zL7z#nBg~dM5l>${UM%E;FiQC@HzMU43tuFM>pov9TE4t+rdRCsBOn@f&iV1lO)#wc z3nxa%c_zbIc5vy7)Rq5DH&i{g-&|S;TnR`(WGAv@A1^tY?%Svlj@u~%$|-7-9EzLM zA)-MBca8Mxe<OXN=0;TO>_YD4pF>~R%eSc4-9P;~^u{1|%QSFn%@vGL6pO=cIFS1` zP>2|Q%rruzJMFec+ZqX~(%bU>UM#-72P7ZUIu2;%`Ze~y@rgSAeZqC0K4u_8<e2t| z%X#<zunzv0=p~P^6rxc)LIzM1nC;-7A&zNo79C~Y?fwfE=!juHNK8s;kR`bE_4@E2 z?2cRUew?&y9roa>Y&6$%cLu$p`#kIuA^~OTHiuY?4$!BPuKz&VJO{z605oM6i7c{7 zkjqE%%1lJ$=`V_qGR;21i&kxr=ATX?cJN|&U+9cdI`~Y3Iz?jP#3|?dDU|C8*Vcw` z!ftH!dYiqjs&;v)W;!d$#EQMQoJg#8GKrOaRjXN<OgNS(MND6|UCJ&e*Gv9jJ_H;w z6-ZdEUZ7AetTpfpH&@!xYG##qroh^1rctjqdJ@vqE0&|tQYjiOFI!7~Uu*s3G_%$` zI!+X`?xkGG9|$$=*VXc2F_=rlPg(5it5uw%+;>a)VmOr#nN~C{;)m=-3SHhUwo~DR z7XzK+*;tUo?#><w4FmnDeKevE6B#|i6$u{1(O1V2HggikI_XxEvj}O}udW~Jp<{&Q z77CvI!c}%7wxJ@|Ptjg{<El0Org!TbIp?aW+D68%dS2RF_NvOqV!hZPz7e~O_2N8Y zcIn~c>ZrTcrT)e(ZV~h$W&@2Djo$bl#Z4q0p%H%wJ|oT-Kh#U_8*o%VcKvm5RR5Xl zzmok-mdj7{oOptVUos1RhN!|+nZNnKy9KabqZ9Q{u&e>ClJiC(*<yN}oJGqN7BX#b z(^{8A3yf{{SZ)Dd;gke{F+KIGOjWiuCraDsE(t1(#N7T|KI}lm<U_d>2si7aZ#W#z z=Wae+Bg)LgIF{Q2%VD1lk3)rcU+1nTk3H+VrKvdFgn@@tYAZro!=WD&Nvfb?S46sI z6F~{`enmk+^7D{pH|!wL!hw?C)L1mZriDqv>zq-SGXpWRZnVOo48Si@{D1<hNY~zt z#Ycc<7<n;r5OZ#XtARi!Yoie_^^ewqiEL<{KyVpDk)gz1@{!n^J@hJ|5vDH2jYl^T zG$66DF$-vhJ09gtdnlhg0!m6mpQ|$Tn+$j)mbK0cxhR{N1wm;mmkPxX;-NpOWW@); zi9K1>^0{Inl}Z$I`Dg-PA$Jbo=43pdi>GXj1;<w@I2ONn$kk(E$Mt?X{n#zsyn6XC zgr`?W$FO`nCM(Uo<-=qpF^<ylNP+kdSIuXF`S#Z$tz@te%-43#L-pmxL9dX?ZS0<= z)~&sEJ{3Ap=r>2)pE#Wlc1j6k?d0~+MI_X>>+35j+JXouW$*5nt<K&$@#ukSGP_l6 zMlhF{uufj=RF<9jJ>iXGixwY0)Y7b$Vt*pAo49U-O^>{XG+aV*J)h`<j<D_d$Y4%$ z-1%t6ODo~94dX;Io3*2*WH_8G0qu9^i+MXzQYR58@qn|uy_CR5IxxRdS^@RDT3pF{ z{+PGLuzgTcNr1f3Qi8Nl30zWJ`C`_N6!~!^SxROH60@iVS@~sTrMSvm5Zl?8aDRTu zT#%?1mm}Zk@EY!F@#i_z8NzNOE14x&ECVhgv2ba66v2TxJ_9Yg{sLaL8I5^%L`;0V zPiKLgIN}rJaJMOLyxMFaO2{1QtrK}JY6`X={Nbpme0X8JUT!WWVu@x=b+Z+JtJUO# zdUJn&>@_#6JYn#~LN=Z+HXDilN+J<y(rd|ZBa%w2^o`F0@k}@w4El*v&SiqJG#^5R zd;9Xna)pe8QPzQAtWr9<2nQ_K7Uk(;q?>ysuFC_SLwo?Z&vA8X04m&n3v)Oi#A3|y zGyN1wIL*&CwsT?g@(}bL$Q;I-rv-RBdbX=52s9iMgt{EAg2D}g06yQS@6_u%r@Qs~ zuJO#?>p%#QEnBJ#?NqTSVKoH&WQ*W4RhAzN{Po?_(GOU28PidG)%O?)xx>A4GYgR8 z%;Agh@&uN4A>f)Nu!>9w2Gj`(i|i-fUsBTBIF~@@m2F=s-Ck-m8;#%w<DMe1LZy?h zO|&BRs{O|35rTUWi(;zHMPo>(|CpbsH|2Ds%um+0`<4o*os#OLv2wgE@?kC6SAqVO zE6`~NurN_gm;0TK%>CbDPn%%wF&Sq`4}#Ga3Rb4w6G4T3tXS}wBdqGAG{i(Y;nmm} zbUf^&Q<Kl2;eR^C`meD~Q`1Zw_rG-98AKI0VB=KZj0BD{g-9r1_X43vK6@C5n0=q= z-!#oFl9cg%@F)^d@uiL6PP4QgQe_T*(TCpd2+<6tJ1*376O0cSjOdZm0GQfSB1?cF z*~egqRuSh{eUShkI3W~NF5mX$hR@e1aun*aJMEmp`d)GUeb;~L`Y&8RrOkx%(rRXn zBuHT%iM@;lxyQ=a*L4HKdD9EnixI4!i-iZ8l6m&XMM1v^tXSgC?p^kQlFT1-D<i51 zm=BLoe|5i&v|#S7IwnNp;#+p)Y9)J^*-R$4G6&Umv=wPr4>FtV7F&MbVE5idbN4=f zDIzgsfIS_N9H;Bu*8Xa9H>64{yJJwP+WYWOSk~>4XvPXweWl%Au3OE>$!Vl%5o90b zjQo2SHC*o<VvhR6_BkQk0lx_I=66AH&47jaRq=`9f)74+O}%hECW3ryR$83G1?gGD zjO`W+n-as@q?hFkLHM&pTqCZ1RR%y*-XFTEYioyV>y<{bm9+N{lPQ0(=uan%m7+hD zJUmRK{a`OM_4LFuA)Pw|)OMIkk&R&U41mGb+QAzCFZ-cTKA0$F?1Sx8jnK#KbU9(W z0?{f_$h}}t+pNd+mzg(<r(1HO{w3rwY}SU$``l%aQq0iJaGG>&8vFXjOt|*#?(wnR z-FLI(3|$=++!(^3vY~>VZ`m~C)!k+ZD(!7Q&NM7<s}1ENXI*LA?m~BW@-5rTc)j}q z8~x{0>9%}5Lu-l56dBM%D5g9fVP#js5~CkN9gY;Mmt?sK+`N<M7f^D}8)&dnK;faa z`GV}kK=1mNJ^@912yYz$au)ODJ5oNe3-`;Hh&z$*g<nlL=BbC2tLrhUgD}=;)|&Bg z>gVSD?C7&cD9)*)TZ8u~mQ_hCq0Y0!<`LhckBB7hydPTObT1ty^x_NLX;vR9Mgr`m zy3#Iw>9hg<e;jK9ewH>k@}bCMza$K&9*6Kj`_+jA6GH|MVbp=oQy2(slAH*goZISg zby%zVe<Be_0+J&S#6)G}4?`Mu%jLDKfWGJXqw6tpf%4{>@~j@=L53mBjwbDhI<+H7 zJ8J%S(5ze-A=3M>oetK9r@Tgtrt>QM-8DDc_XH6z-Z2Po6QyiH98EtqbWGvo^b2BV zBx(5-NEVAQLXax>lY;pQ6v=^sE2yGsRYi?gEPA=#ko;ZjBdKzA#M5k8>w9~&!Ts)1 z+adpmH9_+ac|?W*x%<fvjYX{NFP>qF_rmWpI}t>&`HcHtd7fZ)pP!sqYld>6fiD)f z*2<yK$>DKfV>$14zX^R+4-xX23#p?EGidj=`w$}jPBRp8zwzgnHwwpxC&YfPp=}I& zp<J00`A!|aaUb+Jb6azMiS35_o!GMg>s1K!p|Cl-uw%g>F9Rp3gxFBoVi)8gqQLbl zu4aOCg_$;XL<fQVlNdr+1>d^#i}2Zr49NZ<Co$y2+uWIjdMq4Vyc28cnqp2*^Y}<T zCxs0w;?o~vo9DiokXx;0_j27vm<YQj{ttPltUsCPeO2_VqC<rn-Ms!r-sN=r6zy}a zFIEqki=rO_j1oO%TGU8nuL-W44KH_>!*-UNcSpZfz|OuRUr)YNBJ7eZZTcN^=fibY zxFgv%xv~bWKN{6~P?T%*<Vn|+$vQ6Wx-6OJ+($0#1LjL?D8j-i{VsycHH#{<-MvVk znEhmQ;1YbV3BFfZSA#)y9dw8BrHX6RZ%>|~m?aJoUf@7&UFBN3-lOZg(LDq&!2k=U z_)ZC8ij+bmj6&iVZ<S;BlY@;)OU27}!~IGioP8k1w+dshslf2EybME+-Jm^kuQ~lM zk;I=;CQbyo$z&Ap-07eLHy9W-DG7eH0_m`B5t%6{e@yNSFPOL901S{BL0T#Vg21Q) z>hQ!&L{}l_kpE3|;t+YMpRruQ8RrTH00o4?!FR4e5W<zZFAz<N3ewXAFn&BtYMJ_J z+^g0@gy}_4W-y#hijjhPB3o)G7d}Y$v_u&_B_b0VTipOiY>|SAGLYI&k6N?Rl%<mY ztI>pca#h@uD!g$YTURanTpB^lGwYeX5e!Ka>`Q4<FhFNsS1lP0_|%%c6v+hq>=Gat zq(Q<>Vp#eY2$M7~%zSzGmFt=LPaeu|!5n1qzn$O0RI>1r0io)Xq!WgdbON#wvR+*$ zxVTCBpc7m;<3|}cIWBI^O1(tfDn-d2#X~a^P?D2lVpPyDpiz!Qe1ABhh5*yKU!6Il z@nk`wVSh{J3;<E4!>x%*9KOW$c_+kkHJ5Zk{KQU!VE>d)Plb99Cn$Kgv0yCbhofV3 zPzg)nx#CL}lJTrR7>}4KP!QlCeAT+e8zN+5!8npWCPVP^Flq@<qty~y`3+ai+Z8jK zjQUKh@2o@7D9LpAK|b$`g%TSVamhk&N@$l+lPlzsE~OsBqxP765{^xYp_d5pQFQoE zP`8-(VyFVv{aBN4BvZtbm_o`7v2Y}nG+sH`mE5je65ms;)a#XMxSf*p+0C_O<&Yem z&gFkYYzmKFEb6P1==(8Pe<Aj;tX8z3iiK!P{qy|md|Mo9ZQiK%-dV4ACR>)vxK&@- z6VSMSgb>1wfojE{EE^+oV7P%92uyOuA3K${d!tJ0()vB0L{9kJfB8<mbJy(|Yy<ZJ zQj$U*lkvBS9Y%(B(^Hg;&U2rU7i+R?MFc-gKjG#hwe5ZG(<1v2eAmL+!Z!6vBu>c! zGSK80G66&u(uh;jDRU$f_}B%X)7rZZ94G8T`)PDgj^un`!=7@JVn~up7_FO$0SD}5 zsop(3RhiTDrTe9PzqzDz;p5qNmAy>M_ov-@>5}rP!>IgU!X6?_A+YLd!2qO01UkTL zAzR&9u(=Po<=nA)>9Bd2KDBqbB5qS$hwj9!8fki2^(@Uvx@MebSP$0AlHRzzZu>w@ z#;MKN0XU0225f0k=Ux^IKvd{t5M<_@S%J>|#1qUE)9E6NHyB;c2K_NL{FQ6(49CTG zxLh6_g~HKfDw~fbjA!wToF5az$~7<WFocMb-Y%DeD>;jptrYnz61tz9{ltf5S@;)_ z-bVNjnI=xPJjB;xOL6KIofFt8k>n%S+F7PZaT#OxtKzs`Hw^96?8shgWX{^A>PxjU z8LB63$+RTqa>TwrCM%Ze?e^Li+0cd4V(B~4DV#d~0y5Pv(|ZXtsNc{?E}TEG5j-NY z()*b?MXwQd;-P-nAznlQ6Ns}!;?^K_UU;;Ca595A`nrMRHx4hpL#Mf|lBG;?%ic$+ zdmZc6V;dLf8QG>P?v=`6{7Bk8lrNk8emOrJHQshPouCPo86c-&y{)#N|HbBBrnxt~ z%)HrH>jlf@kzZ;X;jNs{m+2SXA93eJ@1gcfPf=sS$5P~7bTqUuvTbs^Iu8e<$UTTT zOOb6-)DJX@+n8{})w1JPBlYBN8Q1YCcVZ@#L`)E``EW4^ra;{XF67Vm3WCCOfClIM zWBj-S?EQ%i@{T=b?*DbkEPq{+n3JP8b06s@VUWehB+oyPHP_1vVcFuDU|nSYS)7t* zLj0kd;RUuI@khYsGy;|AelXH$40B!5BRHL*`av@gjaGv`3`Ql>EMX%uL)BP>tZe;& z8HmK-`MdK~Jj~&u14Eh!J9|`fMJ@_7S$Cvu1?s_I%(ou!lcO$}^#|7dae~-L+vN|( z{T$9h^_1hVFBbOKu}nE&BfS=n`{K8S{r0*i5RT+;p3KTWpKcgML9k0J>*vt}I!*!? zsAZs5{wbTU*BgfuS@;Y^M!e|($8SF~J$HL*-%#1X5Uq6`=GzSovJh{}uA~1k*F^rj zd;RGLOQ5SiT#8Lx7x|8yo9JFyHvE0J=C;V=VQ(Ie=clf};riRR%DSG}qIJyuna5Q3 zgR$k4S-8>^x@^?LKg+O=+ZB(?CDRJrBGTlac3f}zA?V7x{+(O>py&0x*1djSy?|Pb z=>K!<1J-L%3jRzz;Oy~!Y+uJ34<{1GSmr^*7@=35AYQROJ)fJw$~+}V0g`1bU;`M- zJuXMukTu+0AerJ)ey^}&m#b<=ZCCBeo7e`k^BCyO^?yl*fe2b_5;?!MOps=GS>;dn z`#sq^85fryo~L7^Fdb!svEktwfNFN?h-KP&BO1mB>);+`11mZ5ntA+zN{pl;#C?rq zlRAlw<P)>)`DfU-Bmyi3_uS_$7fe&)HU2)5JGaa=_;hN#Nni7Wspk>Q?oWcQh-)Dr zCLaW8agR#G`ja3E5s_cLY8J9$!TF3B716b`!bfXt^zA_3DxuR}U}rpQ^{sBI)mrOp zH(H<c_?bmIKOhDgBD8|G!mlFEi>mi}#iQn>OqEOJAMUrZY5hC-HSI#zvi~Kz@4wa& zJGe?{i_n|Gj`%US+vmbQ;(8Rst+qG|L`i!d`RI8nsud0)b19q)_|oBCIGu<FgO~P! z<<CUbPOOfpsUA~Xk!%3f`@r)PyeNU-X(ki_kkpBWGN;jmZ)pfK#^vis#Q!FgG|n+) z)rY}E_yXnL|N2tZ3_#L)FLu3RK0ISD4vnIU9X-&|JcPdqJ=}TR{(|az=O4{@w7!Q2 zx<@BqSj1By#D`id;i<=!9lh8g&nG^0fTE44KF+_vJ!Vr6*6C56MZq{d!J?1Wbz{XJ zPeIW}<bhh^5L1jY_lPY=l)d@jghyziWRSoCAFZzglgG(wkar%B84e^HH%gB$B;<}{ zSCM2tsa`r$p)cnjwV_4B(EJ)SMt^_RNz+3las<K$S27x<S|Y)-r<nWK7G$}z9V3s% zIZ(loK10_Dj~^5@8iR&y8#cnxL+o`DoQNM;tP>cNcqdT`Bx4izqgec~8ppAi#o!@? z>0eMQy<}ALVDSXUpsZ0Ndo$goe%JNN_(Pq4!v*33HbXQxGQJpph?A0xIv_zD-)0}H z1n0V)bH#FZ>um12>tCwTFWtraSGc~Cv!=Ylh9N$gDXgy_yxN^B1O36ZWw~9>mEABS z%IBLpj!PK7Qs*>vKBJroW~&R*5Q(L|bI~)AJ}nHQ<LZh%L=)nT8_w9F%X1yc$HU4q zx{7-2{1V3C(Jx&0%Oha-etBu<N8>i!{P?=gvfjcwI;t~yF&@2N>)S0reC`$Ll)Iht z{)Mj#;QBHjUwOg#=ze)7y6rcV^35fVYw+QcZ)$KeE;9aiN1s6F#i@Ds<cxPttviDP zJE4q`^L#VhM95k=;sDegAKxA$5L)W?RUY5@_1#}Nd+rw#NBDcZj%{PotDa23jybF8 zJ7#zm!@Gn?uwr=C;t$|BU3~LK1)A!0^THTpN~O%|ervsH^@b;JR4=`?mEKBwKEJRp z-pDD{R%y9Ju$SFd)wS1Y>%3>@FYF@cY;9$zDzP^Xw_l1KOk0}-t>gSH1O!uo8V~oS z;45S+z>=o7DN*jD*kkb@Kbr4HQ~6f=e80X~%L0c=R12M@bR`ukCNe>P-)z@XL0>dh zYTE<i9BN5_?`1h-#gn0EEt{&WY@VsoS}hc<n`FrLg#r=rpVgpKO~NW(B!hN28>y`3 z$@bywy?MB}+sG)wjqsPyqkj{N&{%_-6fGKUd5%1!<3-qgZ6To-7ez^d6>?s-TUmug zlIG#jH1LpP^i?pEvCr|Do~6NA_Z@l06#8C3Nry0g1?_}h@7kNoOTd`KWC~X_&zAxn z%_fy=r`_J&ZMSz?O9JO!GQqoxok>7lij}=q$XZEbMcg0au@uJyw*C?3!sA4S%0A{n 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%0D(;<2S4(@606_Xy%;xXga3S+n1EqF+VXqMiO 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%0AM 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 Q-f(#ZE%RU7BWsWUA2AkVlK=n! literal 0 HcmV?d00001 diff --git a/config/ded/fonts/FiraCodeNerdFontMono-Regular.ttf b/config/ded/fonts/FiraCodeNerdFontMono-Regular.ttf deleted file mode 100644 index ed9241879febda55b64999f67a56ca3551274fdf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2148116 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%0A1xY{ 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%0ANXc*r{#jY<{lIYDARe7u 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 diff --git a/src/helix.c b/src/helix.c index a8da5b97..f61f8fea 100644 --- a/src/helix.c +++ b/src/helix.c @@ -101,6 +101,8 @@ Vec4f get_color_for_token_kind(Token_Kind kind) { case TOKEN_ARRAY_CONTENT: return currentTheme.array_content; case TOKEN_OPEN_SQUARE: return currentTheme.open_square; case TOKEN_CLOSE_SQUARE: return currentTheme.close_square; + case TOKEN_OPEN_CURLY: return currentTheme.open_curly; + case TOKEN_CLOSE_CURLY: return currentTheme.close_curly; default: return currentTheme.cursor; } } diff --git a/src/render.c b/src/render.c index a14e1f51..15dd3663 100644 --- a/src/render.c +++ b/src/render.c @@ -1096,10 +1096,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer color = CURRENT_THEME.string; break; case TOKEN_OPEN_CURLY: - color = CURRENT_THEME.string; + color = CURRENT_THEME.open_curly; break; case TOKEN_CLOSE_CURLY: - color = CURRENT_THEME.string; + color = CURRENT_THEME.close_curly; break; case TOKEN_COLOR: { diff --git a/src/theme.c b/src/theme.c index 6202cbe3..de36e4f4 100644 --- a/src/theme.c +++ b/src/theme.c @@ -6,7 +6,7 @@ int currentThemeIndex = 0; int previousThemeIndex = 0; float interpolationProgress; -Theme themes[9]; +Theme themes[10]; Theme currentTheme; Theme previousTheme; @@ -162,6 +162,8 @@ void update_theme_interpolation() { currentTheme.code_block = color_lerp(startTheme.code_block, endTheme.code_block, interpolationProgress); currentTheme.fringe = color_lerp(startTheme.fringe, endTheme.fringe, interpolationProgress); currentTheme.fill_column = color_lerp(startTheme.fill_column, endTheme.fill_column, interpolationProgress); + currentTheme.open_curly = color_lerp(startTheme.open_curly, endTheme.open_curly, interpolationProgress); + currentTheme.close_curly = color_lerp(startTheme.close_curly, endTheme.close_curly, interpolationProgress); if (interpolationProgress >= 1.0f) { interpolationProgress = 1.0f; @@ -210,6 +212,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0x4C6750FF), .falsee = hex_to_vec4f(0x867892FF), .arrow = hex_to_vec4f(0x834EB6FF), + .open_curly = hex_to_vec4f(0x4C6750FF), + .close_curly = hex_to_vec4f(0x4C6750FF), .open_square = hex_to_vec4f(0x514B8EFF), .close_square = hex_to_vec4f(0x514B8EFF), .array_content = hex_to_vec4f(0xC0ACD1FF), @@ -277,6 +281,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0x98BE65FF), .falsee = hex_to_vec4f(0xFF6C6BFF), .arrow = hex_to_vec4f(0xBBC2CFFF), + .open_curly = hex_to_vec4f(0x51AFEFFF), + .close_curly = hex_to_vec4f(0x51AFEFFF), .open_square = hex_to_vec4f(0xBBC2CFFF), .close_square = hex_to_vec4f(0xBBC2CFFF), .array_content = hex_to_vec4f(0xA9A1E1FF), @@ -338,6 +344,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0x50FA7BFF), .falsee = hex_to_vec4f(0xFF5555FF), .arrow = hex_to_vec4f(0x8BE9FDFF), // #8BE9FD + .open_curly = hex_to_vec4f(0xFF79C6FF), + .close_curly = hex_to_vec4f(0xFF79C6FF), .open_square = hex_to_vec4f(0xF8F8F2FF), .close_square = hex_to_vec4f(0xF8F8F2FF), .array_content = hex_to_vec4f(0xBD93F9FF), @@ -399,6 +407,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0xC3E88DFF), .falsee = hex_to_vec4f(0xFF5370FF), .arrow = hex_to_vec4f(0xFFCB6BFF), + .open_curly = hex_to_vec4f(0xC792EAFF), + .close_curly = hex_to_vec4f(0xC792EAFF), .open_square = hex_to_vec4f(0xEEFFFFFF), .close_square = hex_to_vec4f(0xEEFFFFFF), .array_content = hex_to_vec4f(0x82AAFFFF), // #82AAFF @@ -460,6 +470,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0x8BD49CFF), .falsee = hex_to_vec4f(0xD95468FF), .arrow = hex_to_vec4f(0xA0B3C5FF), + .open_curly = hex_to_vec4f(0x5EC4FFFF), + .close_curly = hex_to_vec4f(0x5EC4FFFF), .open_square = hex_to_vec4f(0xA0B3C5FF), .close_square = hex_to_vec4f(0xA0B3C5FF), .array_content = hex_to_vec4f(0x539AFCFF), @@ -521,6 +533,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0xB6E63EFF), .falsee = hex_to_vec4f(0xE74C3CFF), .arrow = hex_to_vec4f(0xD6D6D4FF), + .open_curly = hex_to_vec4f(0xFB2874FF), + .close_curly = hex_to_vec4f(0xFB2874FF), .open_square = hex_to_vec4f(0xD6D6D4FF), .close_square = hex_to_vec4f(0xD6D6D4FF), .array_content = hex_to_vec4f(0x9C91E4FF), @@ -582,6 +596,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0x6A7E74FF), .falsee = hex_to_vec4f(0xD46A7DFF), .arrow = hex_to_vec4f(0xCCCCC5FF), + .open_curly = hex_to_vec4f(0x6A7E74FF), + .close_curly = hex_to_vec4f(0x6A7E74FF), .open_square = hex_to_vec4f(0xCCCCC5FF), .close_square = hex_to_vec4f(0xCCCCC5FF), .array_content = hex_to_vec4f(0xCCCCC5FF), @@ -642,6 +658,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0xFFFFFFFF), .falsee = hex_to_vec4f(0xFFFFFFFF), .arrow = hex_to_vec4f(0xA4A0E8FF), // #A4A0E8 + .open_curly = hex_to_vec4f(0xDBBFEFFF), + .close_curly = hex_to_vec4f(0xDBBFEFFF), .open_square = hex_to_vec4f(0xA4A0E8FF), .close_square = hex_to_vec4f(0xA4A0E8FF), .array_content = hex_to_vec4f(0xA4A0E8FF), @@ -702,6 +720,8 @@ void initialize_themes() { .truee = hex_to_vec4f(0x35BF88FF), .falsee = hex_to_vec4f(0xE55C7AFF), .arrow = hex_to_vec4f(0xD4D4D6FF), + .open_curly = hex_to_vec4f(0x11CCB2FF), + .close_curly = hex_to_vec4f(0x11CCB2FF), .open_square = hex_to_vec4f(0xD4D4D6FF), .close_square = hex_to_vec4f(0xD4D4D6FF), .array_content = hex_to_vec4f(0xD4D4D6FF), @@ -728,6 +748,70 @@ void initialize_themes() { .fill_column = hex_to_vec4f(0x272C3AFF), //#272C3A }; + // doom-material-dark + themes[9] = (Theme){ + .cursor = hex_to_vec4f(0xFFCB6BFF), + .notext_cursor = hex_to_vec4f(0xFFCB6BFF), + .EOF_cursor = hex_to_vec4f(0xFFCB6BFF), + .insert_cursor = hex_to_vec4f(0xFFCB6BFF), + .emacs_cursor = hex_to_vec4f(0xFFCB6BFF), + .text = hex_to_vec4f(0xEEFFFFFF), + .background = hex_to_vec4f(0x212121FF), + .fringe = hex_to_vec4f(0x212121FF), + .comment = hex_to_vec4f(0x626262FF), + .hashtag = hex_to_vec4f(0x89DDFFFF), + .logic = hex_to_vec4f(0x89DDFFFF), + .string = hex_to_vec4f(0xC3E88DFF), //#C3E88D + .selection = hex_to_vec4f(0x406562FF), + .search = hex_to_vec4f(0x617446FF), + .todo = hex_to_vec4f(0xFFCB6BFF), + .line_numbers = hex_to_vec4f(0x585858FF), + .current_line_number = hex_to_vec4f(0x89DDFFFF), + .fixme = hex_to_vec4f(0xF57373FF), //FIXME + .note = hex_to_vec4f(0xC3E88DFF), // NOTE + .bug = hex_to_vec4f(0xF57373FF), + .not_equals = hex_to_vec4f(0xF57373FF), + .exclamation = hex_to_vec4f(0xF57373FF), + .equals = hex_to_vec4f(0xC3E88DFF), + .equals_equals = hex_to_vec4f(0xC3E88DFF), + .greater_than = hex_to_vec4f(0xC3E88DFF), + .less_than = hex_to_vec4f(0xF57373FF), + .marks = hex_to_vec4f(0xF57373FF), + .fb_selection = hex_to_vec4f(0xF57373FF), + .plus = hex_to_vec4f(0xC3E88DFF), + .minus = hex_to_vec4f(0xF57373FF), + .truee = hex_to_vec4f(0xC3E88DFF), + .falsee = hex_to_vec4f(0xF57373FF), + .arrow = hex_to_vec4f(0xEEFFFFFF), + .open_curly = hex_to_vec4f(0xC792EAFF), + .close_curly = hex_to_vec4f(0xC792EAFF), + .open_square = hex_to_vec4f(0xC792EAFF), + .close_square = hex_to_vec4f(0xC792EAFF), + .array_content = hex_to_vec4f(0xEEFFFFFF), + .link = hex_to_vec4f(0x89DDFFFF), + .matching_parenthesis = hex_to_vec4f(0x171F24FF), + .type = hex_to_vec4f(0xC792EAFF), + .function_definition = hex_to_vec4f(0x82AAFFFF), //#82AAFF + .anchor = hex_to_vec4f(0xF57373FF), + .hl_line = hex_to_vec4f(0x303030FF), + .multiplication = hex_to_vec4f(0xEEFFFFFF), + .pointer = hex_to_vec4f(0xEEFFFFFF), + .logic_and = hex_to_vec4f(0xC3E88DFF), + .logic_or = hex_to_vec4f(0xF57373FF), + .ampersand = hex_to_vec4f(0x82AAFFFF), + .pipe = hex_to_vec4f(0xC3E88DFF), + .minibuffer = hex_to_vec4f(0x212121FF), + .modeline = hex_to_vec4f(0x303030FF), + .modeline_accent = hex_to_vec4f(0xC792EAFF), + .whitespace = hex_to_vec4f(0x4A4A4AFF), + .selected_whitespaces = hex_to_vec4f(0x80CBC4FF), + .indentation_line = hex_to_vec4f(0x4A4A4AFF), + .null = hex_to_vec4f(0xF78C6CFF), + .code_block = hex_to_vec4f(0x303030FF), + .fill_column = hex_to_vec4f(0x4A4A4AFF), + }; + + // Initialize currentTheme to the first theme diff --git a/src/theme.h b/src/theme.h index 19b6c0d8..ed07646a 100644 --- a/src/theme.h +++ b/src/theme.h @@ -68,6 +68,8 @@ typedef struct { Vec4f nest5; Vec4f nest6; Vec4f fill_column; + Vec4f open_curly; + Vec4f close_curly; } Theme; #define CURRENT_THEME (currentTheme) // interpolated theme From f2b2dbe350bf267aea23ebe80ea031fbfa3baaf3 Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Mon, 6 May 2024 08:23:42 +0200 Subject: [PATCH 68/74] im bad with names --- src/editor.c | 41 ++++- src/editor.h | 14 +- src/main.c | 456 ++++++++++++++++++++++++++++----------------------- src/render.c | 96 +++-------- todo.org | 206 +++++++++-------------- 5 files changed, 409 insertions(+), 404 deletions(-) diff --git a/src/editor.c b/src/editor.c index 82100320..93e1a088 100644 --- a/src/editor.c +++ b/src/editor.c @@ -76,6 +76,29 @@ bool showFillColumn = true; bool readonly = false; // TODO actually use this, //like don't save if its readonly and show a lock in the modeline +bool electric_mode = true; // whether to indent automatically when typing ";"" or "}" + +// When enabled, typing an open parenthesis automatically inserts the corresponding +// closing parenthesis, and vice versa. (Likewise for brackets, etc.). +// If the region is active, the parentheses (brackets, etc.) are +// inserted around the region instead. TODO +bool electric_pair_mode = true; + +// When Delete Selection mode is enabled, typed text replaces the selection +// if the selection is active. Otherwise, typed text is just inserted at +// point regardless of any selection. +bool delete_selection_mode = true; + +// How many lines a file should have +// to be considered a long file +size_t long_file_lines = 100; + +bool show_line_numbers_opening_long_files = true; +bool decenter_text_opening_long_files = true; + +bool hide_line_numbers_opening_small_files = true; +bool center_text_opening_small_files = true; + bool ctrl_x_pressed = false; @@ -325,7 +348,6 @@ size_t get_position_from_line_column(Editor *e, size_t line, size_t column) { return line_start + current_column; } - Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { char expanded_file_path[PATH_MAX]; expand_path(file_path, expanded_file_path, sizeof(expanded_file_path)); @@ -341,6 +363,21 @@ Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { return err; } + size_t line_count = 0; + for (size_t i = 0; i < e->data.count && line_count <= long_file_lines; ++i) { + if (e->data.items[i] == '\n') { + line_count++; + } + } + + if (line_count > long_file_lines) { + if (show_line_numbers_opening_long_files) showLineNumbers = true; + if (decenter_text_opening_long_files) centeredText = false; + } else { + if (hide_line_numbers_opening_small_files) showLineNumbers = false; + if (center_text_opening_small_files) centeredText = true; + } + e->cursor = get_position_from_line_column(e, line, column); editor_retokenize(e); @@ -357,8 +394,6 @@ Errno find_file(Editor *e, const char *file_path, size_t line, size_t column) { return 0; } - - size_t editor_cursor_row(const Editor *e) { assert(e->lines.count > 0); diff --git a/src/editor.h b/src/editor.h index ea03babd..51b189e6 100644 --- a/src/editor.h +++ b/src/editor.h @@ -55,8 +55,20 @@ extern bool smartFillColumn; extern bool showFillColumn; extern bool readonly; +extern bool electric_mode; +extern bool electric_pair_mode; +extern bool delete_selection_mode; -// Emacs Style KeyChords + +extern size_t long_file_lines; +extern bool show_line_numbers_opening_long_files; +extern bool decenter_text_opening_long_files; +extern bool hide_line_numbers_opening_small_files; +extern bool center_text_opening_small_files; + + +// Simple Emacs Style Key Chords +// TODO this is the simplest dumbest implementation extern bool ctrl_x_pressed; void reset_keychords(); diff --git a/src/main.c b/src/main.c index 2efac611..5a571f74 100644 --- a/src/main.c +++ b/src/main.c @@ -559,10 +559,134 @@ int main(int argc, char **argv) switch (current_mode) { case EMACS: switch (event.key.keysym.sym) { - - case SDLK_z: { + + case SDLK_l: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + if (event.key.keysym.mod & KMOD_SHIFT) { + relativeLineNumbers = !relativeLineNumbers; + } else { + showLineNumbers = !showLineNumbers; + } + } else if (event.key.keysym.mod & KMOD_ALT) { + select_region_from_inside_braces(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_DOWN: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_down(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_UP: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_up(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_up(&editor); + + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_RIGHT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_right(&editor); + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_LEFT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_left(&editor); + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_n: { if (SDL_GetModState() & KMOD_CTRL) { - current_mode = NORMAL; + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_down(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_paragraph_down(&editor); + + // Consume the next SDL_TEXTINPUT event for 'n' and 'N' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'n') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'N') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + + } + editor.last_stroke = SDL_GetTicks(); + } break; + + + case SDLK_p: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_move_paragraph_up(&editor); + + // Consume the next SDL_TEXTINPUT event for 'p' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'p') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_f: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_b: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_left(&editor); + } else { + editor_move_word_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_e: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_mwim_end(&editor); + editor.last_stroke = SDL_GetTicks(); + + } + } + break; + + case SDLK_a: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_mwim_beginning(&editor); editor.last_stroke = SDL_GetTicks(); } } @@ -578,42 +702,70 @@ int main(int argc, char **argv) } break; - - case SDLK_d: { + case SDLK_g: { if (SDL_GetModState() & KMOD_CTRL) { - if (SDL_GetModState() & KMOD_SHIFT) { - emacs_kill_word(&editor); - } else { - emacs_delete_char(&editor); + if (editor.searching) { + editor_clear_mark(&editor); + editor_stop_search(&editor); } editor.last_stroke = SDL_GetTicks(); + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); } } break; - case SDLK_e: { - if (SDL_GetModState() & KMOD_CTRL) { - emacs_mwim_end(&editor); - editor.last_stroke = SDL_GetTicks(); + case SDLK_x: + if (event.key.keysym.mod & KMOD_ALT) { + if (!M_x_active) { + current_mode = MINIBUFFER; + M_x_active = true; + editor.minibuffer_active = true; + // Consume the next SDL_TEXTINPUT event for 'x' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'x') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } } + break; + + + case SDLK_RETURN: { + editor_enter(&editor); } break; - case SDLK_a: { + case SDLK_j: { if (SDL_GetModState() & KMOD_CTRL) { - emacs_mwim_beginning(&editor); - editor.last_stroke = SDL_GetTicks(); + editor_enter(&editor); } } break; - case SDLK_j: { + case SDLK_d: { if (SDL_GetModState() & KMOD_CTRL) { - editor_enter(&editor); + if (SDL_GetModState() & KMOD_SHIFT) { + emacs_kill_word(&editor); + } else { + emacs_delete_char(&editor); + } + editor.last_stroke = SDL_GetTicks(); } } break; + + case SDLK_BACKSPACE: + if (event.key.keysym.mod & KMOD_CTRL) { + emacs_backward_kill_word(&editor); + editor.last_stroke = SDL_GetTicks(); + }else{ + editor_backspace(&editor); + editor.last_stroke = SDL_GetTicks(); + } + break; + case SDLK_k: { if (SDL_GetModState() & KMOD_CTRL) { @@ -630,17 +782,6 @@ int main(int argc, char **argv) } break; - case SDLK_BACKSPACE: - if (event.key.keysym.mod & KMOD_CTRL) { - emacs_backward_kill_word(&editor); - editor.last_stroke = SDL_GetTicks(); - }else{ - editor_backspace(&editor); - editor.last_stroke = SDL_GetTicks(); - } - break; - - case SDLK_t: { if (SDL_GetModState() & KMOD_CTRL) { followCursor = !followCursor; @@ -653,41 +794,7 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); } break; - - case SDLK_n: { - if (SDL_GetModState() & KMOD_CTRL) { - editor_move_line_down(&editor); - } else if (SDL_GetModState() & KMOD_ALT) { - editor_move_paragraph_down(&editor); - - // Consume the next SDL_TEXTINPUT event for 'n' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'n') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - editor.last_stroke = SDL_GetTicks(); - - } break; - - case SDLK_p: - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_line_up(&editor); - } else if (SDL_GetModState() & KMOD_ALT) { - editor_move_paragraph_up(&editor); - - // Consume the next SDL_TEXTINPUT event for 'p' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'p') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - editor.last_stroke = SDL_GetTicks(); - break; - - + case SDLK_v: if (SDL_GetModState() & KMOD_CTRL){ editor_clipboard_paste(&editor); @@ -695,24 +802,7 @@ int main(int argc, char **argv) editor.last_stroke = SDL_GetTicks(); break; - - case SDLK_b: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (SDL_GetModState() & KMOD_CTRL){ - editor_move_char_left(&editor); - } else { - editor_move_word_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_RETURN: { - editor_enter(&editor); - } - break; - - case SDLK_EQUALS: { if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed theme_next(&currentThemeIndex); @@ -738,21 +828,22 @@ int main(int argc, char **argv) printf("zoom_factor: %.6f", zoom_factor); } } break; - - case SDLK_f: + + case SDLK_z: { if (SDL_GetModState() & KMOD_CTRL) { - editor_move_char_right(&editor); + current_mode = NORMAL; + editor.last_stroke = SDL_GetTicks(); } - editor.last_stroke = SDL_GetTicks(); - break; - + } + break; + case SDLK_s: { if (event.key.keysym.mod & KMOD_CTRL) { editor_start_search(&editor); } }} break; - + case NORMAL: switch (event.key.keysym.sym) { SDL_Event tmpEvent; // Declare once at the beginning of the switch block @@ -824,11 +915,6 @@ int main(int argc, char **argv) fzy = false; } - if (editor.minibuffer_active) { - M_x_active = false; - editor.minibuffer_active = false; - } - mixSelectionColor = false ; editor_clear_mark(&editor); editor_stop_search(&editor); @@ -1255,7 +1341,11 @@ int main(int argc, char **argv) case SDLK_l: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (event.key.keysym.mod & KMOD_CTRL) { - showLineNumbers = !showLineNumbers; + if (event.key.keysym.mod & KMOD_SHIFT) { + relativeLineNumbers = !relativeLineNumbers; + } else { + showLineNumbers = !showLineNumbers; + } } else if (event.key.keysym.mod & KMOD_ALT) { select_region_from_inside_braces(&editor); } else { @@ -1489,97 +1579,6 @@ int main(int argc, char **argv) } break; - case SDLK_9: { - if (event.key.keysym.mod & KMOD_SHIFT) { - char pair[] = "()"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - - // Consume both characters '(' and ')' immediately - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume '(' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '(') { - SDL_PushEvent(&tmpEvent); - } - SDL_PollEvent(&tmpEvent); // Consume ')' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != ')') { - SDL_PushEvent(&tmpEvent); - } - } else { - editor_insert_char(&editor, '9'); - - // Consume the next SDL_TEXTINPUT event for '9' - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '9') { - SDL_PushEvent(&tmpEvent); - } - } - } - break; - - case SDLK_LEFTBRACKET: { - if (event.key.keysym.mod & KMOD_SHIFT) { - char pair[] = "{}"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - - // Consume both characters '{' and '}' immediately - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume '{' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '{') { - SDL_PushEvent(&tmpEvent); - } - SDL_PollEvent(&tmpEvent); // Consume '}' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '}') { - SDL_PushEvent(&tmpEvent); - } - } else { - // Insert two '[' characters, move the cursor left, and consume the keypress - char pair[] = "[]"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume '[' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '[') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - } - break; - - case SDLK_QUOTE: { - if (event.key.keysym.mod & KMOD_SHIFT) { - // If Shift + ' is pressed, insert double quotes "" - char pair[] = "\"\""; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - - // Consume both characters '"' and '"' immediately - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume first '"' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\"') { - SDL_PushEvent(&tmpEvent); - } - SDL_PollEvent(&tmpEvent); // Consume second '"' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\"') { - SDL_PushEvent(&tmpEvent); - } - } else { - // If just ' is pressed, insert single quotes '' - char pair[] = "''"; - editor_insert_buf(&editor, pair, 2); - editor_move_char_left(&editor); - SDL_Event tmpEvent; - SDL_PollEvent(&tmpEvent); // Consume first ''' - if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != '\'') { - SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume - } - } - editor.last_stroke = SDL_GetTicks(); - } - break; - case SDLK_BACKSPACE: if (editor.selection) { editor_clipboard_copy(&editor); @@ -2401,6 +2400,26 @@ int main(int argc, char **argv) current_mode = NORMAL; } break; + + case SDLK_g: { + if (fzy) { + minibufferHeight -= 189; + fzy = false; + } + + if (editor.searching) { + editor_clear_mark(&editor); + editor_stop_search(&editor); + } else if (editor.minibuffer_active) { + editor.minibuffer_text.count = 0; + M_x_active = false; + editor.minibuffer_active = false; + } + current_mode = EMACS; // TODO store the mode we were in + editor.last_stroke = SDL_GetTicks(); + } + break; + case SDLK_BACKSPACE: if (editor.selection) { @@ -2433,26 +2452,59 @@ int main(int argc, char **argv) case SDL_TEXTINPUT: - if (file_browser) { - // Once we have incremental search in the file browser this may become useful - // or to edit file names or create files/direcory - } else if (current_mode == INSERT || current_mode == EMACS || current_mode == MINIBUFFER) { // Process text input + if (file_browser) { + // Once we have incremental search in the file browser this may become useful + // or to edit file names or create files/directory + } else if (current_mode == INSERT || current_mode == EMACS || current_mode == MINIBUFFER) { // Process text input - if (editor.selection) { - editor_delete_selection(&editor); - } + if (delete_selection_mode) { + if (editor.selection) { + editor_delete_selection(&editor); + } + } - const char *text = event.text.text; - size_t text_len = strlen(text); - for (size_t i = 0; i < text_len; ++i) { - editor_insert_char(&editor, text[i]); - } + const char *text = event.text.text; + size_t text_len = strlen(text); + + for (size_t i = 0; i < text_len; ++i) { + editor_insert_char(&editor, text[i]); + if (electric_mode) { // TODO maybe to it only in c files + if (text[i] == '}' || text[i] == ';') { + indent(&editor); + } + } - editor.selection = false; - editor.last_stroke = SDL_GetTicks(); - } - reset_keychords(); - break; + if (electric_pair_mode) { + switch (text[i]) { + case '(': + editor_insert_char(&editor, ')'); + editor_move_char_left(&editor); + break; + case '{': + editor_insert_char(&editor, '}'); + editor_move_char_left(&editor); + break; + case '[': + editor_insert_char(&editor, ']'); + editor_move_char_left(&editor); + break; + case '\"': // Double quotes + editor_insert_char(&editor, '\"'); + editor_move_char_left(&editor); + break; + case '\'': // Single quotes + editor_insert_char(&editor, '\''); + editor_move_char_left(&editor); + break; + } + } + } + + editor.selection = false; + editor.last_stroke = SDL_GetTicks(); + } + reset_keychords(); + break; } } diff --git a/src/render.c b/src/render.c index 15dd3663..ceaeeb3a 100644 --- a/src/render.c +++ b/src/render.c @@ -254,6 +254,8 @@ void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *edito } } + +// TODO render_line_numbers_background void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { if (showLineNumbers) { simple_renderer_set_shader(sr, isWave ? VERTEX_SHADER_WAVE : VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); @@ -267,7 +269,6 @@ void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *e if (highlightCurrentLineNumberOnInsertMode) { currentLineColor = (current_mode == INSERT) ? CURRENT_THEME.insert_cursor : - (current_mode == EMACS) ? CURRENT_THEME.emacs_cursor : CURRENT_THEME.current_line_number; } @@ -317,54 +318,9 @@ void adjust_line_number_width(Editor *editor, float *lineNumberWidth) { } } -// TODO -/* void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { */ -/* float circleRadius = FREE_GLYPH_FONT_SIZE * 0.1; */ -/* Vec4f whitespaceColor = CURRENT_THEME.whitespace; */ -/* int circleSegments = 20; */ - -/* for (size_t i = 0; i < editor->lines.count; ++i) { */ -/* Line line = editor->lines.items[i]; */ -/* Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; */ - -/* if (showLineNumbers) { */ -/* pos.x += lineNumberWidth; */ -/* } */ - -/* // Manually calculate the selection start and end */ -/* size_t selectionStart = editor->select_begin; */ -/* size_t selectionEnd = editor->cursor; */ -/* if (selectionStart > selectionEnd) { */ -/* size_t temp = selectionStart; */ -/* selectionStart = selectionEnd; */ -/* selectionEnd = temp; */ -/* } */ - -/* for (size_t j = line.begin; j < line.end; ++j) { */ -/* bool isWhitespace = editor->data.items[j] == ' ' || editor->data.items[j] == '\t'; */ -/* bool isInSelection = editor->selection && j >= selectionStart && j < selectionEnd; */ -/* bool shouldRenderAll = showWhitespaces && isWhitespace; */ -/* bool shouldRenderInSelection = render_whitespaces_on_select && isInSelection && isWhitespace; */ - -/* if (shouldRenderAll || shouldRenderInSelection) { */ -/* Vec2f char_pos = pos; */ -/* char_pos.x += (j - line.begin) * circleRadius * 2; */ -/* free_glyph_atlas_measure_line_sized(atlas, editor->data.items + j, 1, &char_pos); */ -/* float char_width = char_pos.x - pos.x - (j - line.begin) * circleRadius * 2; */ - -/* Vec2f circleCenter = {pos.x + (j - line.begin) * char_width + char_width / 2, pos.y + FREE_GLYPH_FONT_SIZE / 2}; */ - -/* simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); */ -/* simple_renderer_circle(sr, circleCenter, circleRadius, whitespaceColor, circleSegments); */ -/* } */ -/* } */ -/* } */ - -/* simple_renderer_flush(sr); */ -/* } */ - void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { float circleRadius = FREE_GLYPH_FONT_SIZE * 0.1; + Vec4f whitespaceColor = CURRENT_THEME.whitespace; int circleSegments = 20; for (size_t i = 0; i < editor->lines.count; ++i) { @@ -378,7 +334,6 @@ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed // Manually calculate the selection start and end size_t selectionStart = editor->select_begin; size_t selectionEnd = editor->cursor; - bool isSelectingLeftToRight = selectionStart <= editor->cursor; if (selectionStart > selectionEnd) { size_t temp = selectionStart; selectionStart = selectionEnd; @@ -391,11 +346,6 @@ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed bool shouldRenderAll = showWhitespaces && isWhitespace; bool shouldRenderInSelection = render_whitespaces_on_select && isInSelection && isWhitespace; - // Skip rendering whitespace at cursor's original position when selecting left to right - if (isSelectingLeftToRight && j == editor->cursor) { - continue; - } - if (shouldRenderAll || shouldRenderInSelection) { Vec2f char_pos = pos; char_pos.x += (j - line.begin) * circleRadius * 2; @@ -404,8 +354,6 @@ void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed Vec2f circleCenter = {pos.x + (j - line.begin) * char_width + char_width / 2, pos.y + FREE_GLYPH_FONT_SIZE / 2}; - Vec4f whitespaceColor = shouldRenderInSelection ? CURRENT_THEME.selected_whitespaces : CURRENT_THEME.whitespace; - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); simple_renderer_circle(sr, circleCenter, circleRadius, whitespaceColor, circleSegments); } @@ -692,6 +640,25 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer CURSOR_COLOR); } break; + case EMACS: { + float cursor_width; + // Check if the cursor is on an actual character or an empty line + if (editor->cursor < editor->data.count && editor->data.items[editor->cursor] != '\n') { + Vec2f next_char_pos = cursor_pos; + free_glyph_atlas_measure_line_sized( + atlas, editor->data.items + editor->cursor, + 1, // Measure the actual character at the cursor + &next_char_pos); + cursor_width = next_char_pos.x - cursor_pos.x; + } else { + cursor_width = whitespace_width; + } + + simple_renderer_solid_rect( + sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), + CURSOR_COLOR); + } break; + case HELIX: { float cursor_width; // Check if the cursor is on an actual character or an empty line @@ -729,25 +696,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case MINIBUFFER: { // TODO } break; - - case EMACS: { - float cursor_width; - CURSOR_COLOR = CURRENT_THEME.emacs_cursor; - // Check if the cursor is on an actual character or an empty line - if (editor->cursor < editor->data.count && - editor->data.items[editor->cursor] != '\n') { - Vec2f next_char_pos = cursor_pos; free_glyph_atlas_measure_line_sized(atlas, editor->data.items + editor->cursor, 1, &next_char_pos); - cursor_width = next_char_pos.x - cursor_pos.x; - } else { - cursor_width = whitespace_width; - } - - // Implement blinking for EMACS mode - if (t < CURSOR_BLINK_THRESHOLD || (t / CURSOR_BLINK_PERIOD) % 2 != 0) { - simple_renderer_solid_rect(sr, cursor_pos, vec2f(cursor_width, FREE_GLYPH_FONT_SIZE), CURSOR_COLOR); - } - } break; - case INSERT: CURSOR_COLOR = themes[currentThemeIndex].insert_cursor; diff --git a/todo.org b/todo.org index d8310dba..0aeb4f52 100644 --- a/todo.org +++ b/todo.org @@ -1,86 +1,90 @@ -#+title: Todo - -* Editor -Ctrl+n sometimes take 2 times to work [] - - -** Old -pressing o on includes should spawn a new empty one and move cursor - - -when "/" is pressed in INSERT mode check if the line is empty or whitespaced, -if its either of them add 2 "// " [] - -option to add one space when typing "{" on the right of a closing ")" [] -option to add one space when typing "(" on the right of a keyword [] - -when typing "'" or '"' check if there is a "'" or '"' on the right if so, simply move the cursor to the right once [] - - -render line numbers only on buffers with more than ... -lerp syntax highlighting in [] - -save open buffers list on quit and cursor position for each of them -while ded is running keep them in memory, save them on quit to -~/.config/ded/buffers [] - -render whitespaces with error color when there is an error on a line [] -moveto function up/down [] -drag function up/down [] - -dim unfocused splits the smaller they are [] - - -theme creator gui where colors update in real time [] - -function to search code in a specific C case - -map all variables to a string and write the gui to inspect variables st runtime and change them [] - -move entire curly brace block of code on space as an option [] - -if the search found nothing until the end of the file wrap arround -and check from the start of the fil until the cursor [] - - -measure_whitespace_width only once on font switch rather -than 4 times every frame [] - -find_first_non_whitespace(and refactor) [/] -select_function [] -org mode [] -md mode rendered as you type [] -refactor on write(save) [] -smarter editor_enter and editor_backspace [] - -u can only type stuff that exist in the file in the -search buffer, u should be able to type anything -(also highlight not found stuff in red like emacs) [] - -goto definition (a dumb version later i will integrate lsp)[] -Togglable emacs like scroll for when animations are disabled [] -ivy for everything [] -imenu for function definition jump [] -sub-pixel antialiasing [] -multicursor[] -Iedit[] -Fringe(showing unsaved changes, and later with git integration )[] -Replace mode [] -Replace character mode [] -Pipe selection to unix command [] -Togglable visibility of new lines[] -show character under cursor with the same color as the bg[] -search should not be case sensitive [] -render wavy or normal line under text for errors or whatever [] -use window hight and width dinamicly instead of fixed position when animations are off [] +#+title: Todo +* BUFFERS +TODO [ ] save open buffers list on quit and cursor position for each of them +while ded is running keep them in memory, save them on quit to ~/.config/ded/buffers [] +* Theme +TODO [ ] each theme should have a name not only and index +TODO [ ] Refactor theme.c it's a mess +* Bugs +opening a file with ded file.c that contain a +function definition, trow a [1] 35755 segmentation fault (core dumped) -Typing "{" inside of empty "()" moves it outside with a space padding after ")", -correctly position the matching "}", and move the cursor inside the block. Toggleable. [] +* EDITING +TODO [ ] option to add one space when typing "{" on the right of a closing ")" +TODO [ ] option to add one space when typing "(" on the right of a keyword +TODO [ ] when typing "'" or '"' check if there is a "'" or '"' on the right if so, simply move the cursor to the right once +TODO [ ] when "/" is pressed in TEXTINPUT check if the line is empty or whitespaced, if its either of them add 2 "// " +TODO [ ] move-function-up/down +TODO [ ] drag-function-up/down +TODO [ ] aggressive-indent-mode +TODO [ ] select_function +TODO [ ] Typing "{" inside of empty "()" moves it outside with a space padding after ")", +correctly position the matching "}", and move the cursor inside the block. Togglable. +TODO [ ] pressing o on includes should spawn a new empty one and move cursor + +* SEARCH +TODO [ ] if the search found nothing until the end of the file wrap arround +TODO [ ] you can only type text already present in the file +inside the search buffer, it should be possible to type anything +(also highlight not found chars in red like emacs) +TODO [ ] search should not be case sensitive + +* RENDER +TODO IMPORTANT [ ] render the character under cursor using the same color as the bg +TODO [ ] option to lerp syntax highlighting color in +TODO LATER [ ] render whitespaced with error color when there is an error on a line +TODO LATER [ ] dim unfocused splits the smaller they are (when we have splits) +TODO [ ] sub-pixel font rendering +TODO [ ] better markdown support +TODO [ ] Togglable visibility of new lines +TODO [ ] render wavy or normal line under text for errors or whatever [] +TODO [ ] Batch rendering +TODO [ ] optional vscode style hl_line +TODO [ ] render_trailing_whitespaced +TODO [ ] line under links +TODO [/] render circles (we need to use a shader for better performance) +TODO [ ] render line numbers only on buffers with more than long-file +* LSP +TODO [ ] goto_definition + +* Dumb stuff to fix +TODO [ ] measure_whitespace_width only once on font switch rather than 4 times every frame +TODO [/]find_first_non_whitespace(and refactor, some functions could use it) +TODO [ ] use window height and width dynamically instead of fixed position when animations are off + +* NEW FEATURES +TODO [ ] map all variables to a docstring introspectable and modifiable at runtime +TODO [ ] org mode support +TODO [ ] format on save +TODO [ ] Togglable emacs style camera centering [] +TODO LATER [ ] a reimplementation of imenu +TODO [ ] multicursor +TODO [ ] reimplementation of Iedit +TODO [ ] Pipe selection to Unix command + +* EVIL MODE +TODO [ ] Replace mode +TODO [ ] Replace character mode +TODO [ ] evil-find-char-backward +TODO [ ] evil-visual-line-mode (the current implementation is so bad) +TODO [ ] evil-search-backward +TODO [ ] Universal argument (5k should work) +TODO BUG [ ] Ctrl+n in insert mode sometimes take 2 times to work +* Font +TODO [ ] changing font more times than the total number of font you have inside =~/.config/ded/fonts= +make the text disappear +* Lexer +TODO [ ] support multi line tokens +TODO [ ] check for strings in arrays +TODO [ ] multi line comments [] +TODO IMPORTANT [ ] different vertex and fragment shader per token (need batch rendering) +TODO different font per token [] +* DONE Togglable indentation lines[x] replace on typing when selection is true [x] most symple vim style completion (ctrl + n in insert mode)[/] TODO it should cycle like vim @@ -103,60 +107,14 @@ Togglable visibility of whitespaces[x] different cursor color based on the mode[x] if editor->has_mark make the cursor trasparent [x] ctrl + backspace should delete an entire word [x] -* cursor -adjust syze based on overed glyph [x] -* Font -changing font more times than the total number of font you have inside =~/.config/ded/fonts= -make the text disappear [] -* Camera - when animation are false move the camera like in vim [x] - togglable emacs style camera centering [] -* Shaders +adjust size of the cursor based on hovered glyph [x] use shaders from =~/.config/ded/shaders= instead [x] -* Lexer -support multi line tokens [] -chech for strings in arrays [] -multi line comments [] -different vertex and fragment shader per token (need batch rendering) [] -different font per token [] '' [x] NULL [x] syntax highlighting for : | || & && [x] highlight links [x] -* Renderer -batch rendering [] -optional vscode hl_line [] -cchange hl_line color based on mode [] -render_trailing_whitespaces [] -line under links [] -render circles (we need to use a shader for better performance) [/] -* Addresses - showIndentationLines = 5555555792d2 i8 - currentThemeIndex = 555559015340 -* Theme -each theme should have a name not only and index -* Evil -evil-find-char-backward [] -evil-visual-line-mode [] -evil-search-backward [] -splits(maybe) [] -5k should work [] - shift + i [x] evil-change-line(smarter version, don't delete ";") [x] evil-delete-backward-char [x] evil-search-word-forward (shift + 8) [x] shift + 5 [x] -* Bugs -opening a file with ded file.c that contain a -function definition, trow a [1] 35755 segmentation fault (core dumped) - -activate_snippet on "if" take two times to activate -also editor_backspace take 3 times to delete [] -* Ivy -ivy copy headers [] -ivy find header [] -ivy find-lib [] -* LSP -fuzzy find all the functions from the project root - From 1c66f21aaccc2e4da651f3067de16c03ac4dcd5b Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Sat, 11 May 2024 08:19:09 +0200 Subject: [PATCH 69/74] FileBrowser++ --- config/ded/snippets/{<s => _s} | 0 ded | Bin 0 -> 549224 bytes src/M-x.c | 30 +- src/common.c | 106 ++++++- src/common.h | 15 +- src/editor.c | 2 + src/editor.h | 2 + src/file_browser.c | 173 ++++++++--- src/main.c | 547 ++++++++++++++++++--------------- src/render.c | 101 +++--- src/theme.c | 92 ++++++ src/theme.h | 8 + todo.org | 15 +- 13 files changed, 703 insertions(+), 388 deletions(-) rename config/ded/snippets/{<s => _s} (100%) create mode 100755 ded diff --git a/config/ded/snippets/<s b/config/ded/snippets/_s similarity index 100% rename from config/ded/snippets/<s rename to config/ded/snippets/_s diff --git a/ded b/ded new file mode 100755 index 0000000000000000000000000000000000000000..8248f7764c1aeafdf90b1117583114a807de0a86 GIT binary patch literal 549224 zcmeFa3w)Ht)jz%gRs%{mUZ~Nw8m%Zu#i&(5v@YQ4YKcZJ8m}RSASjoZY!tO<U|D6| zu8mqOwO-KL7JHLw#TW%QsBE-W<2|)rwpQC`U0zMqSNFA6{@?GJnP+F8WbxAW_j`Z; zPglu4=ggTiXU?2CGjnF1*(*ZRjvG=|<};t6zHj*m1&>#lpiWqOTDg8gns0({B>wL2 z+t0Thu*2{#s8hY)eM3}&`8HgJ0?mAtd>G{Ws|xKi-$p`yGheAs?O`g#eETXC%zS=6 z2Kfh{p!{{epMFURYQF7!QeKr7)bst^9L2|c+xe)Q-tVe>y*CwqSMH$l)&2UHDnZLh zDVVP+snAt77k@V^F@5IS=#w(?-vmWI;5&#keuDDX=kw-UqVsvbkJa?%n`Q7b<ITvN zFH&Bu&iDRwRiO9#<>89I`8MU9f_&7=XZ>h(`ljphO0`3^uDAI%c6QK$`R5+~&4U)q zIdH-JMQuwCTr%PC0}ub^_}0ba4-pY4S2h08rj9>pmTySAFGZZmU*;<lSXak4M8hVX zw7cRTi)a45U)pa{Xwgou1}AU2u)br5uYTu(Ll%*S^<W;-@IxH`na@smXv06^*rut< zvi4!s!|vH>M0sS*2%oRrU%vOSp=GI+Q`T0LSF{W5#h_b)f0y9jW%#!g|Jw0y8UDra zZzcZm6UV=6<jLpz9=<#D^BIXR{p7!<F8sp}(>D*DxTR*{mHjt-=j_o_H?O_ok5gZX zhjv}LwsP)K-#zfk^p`S6e>m#6j<bS~EqGzZ^7ALWoA~OBKmN%TH@&_?>X75dtlaB& zwLd@M%~MvM|FfYBDsDgLz!As1{=iwjSr63@dwk`@L~#4W_4|Fi@$6Yg%)|FlznVC5 z`;K{6X%Pl|t$}guJOJzSoeaechTnbr!SR=t;4>ACFc_atO7Op`1fQ>zz&}=k&#@)& ze}&-<CeQK`{I4oO|I-rmKQ2N4QVBiyO6c>4CHOyBqF&=m@b4*szXfeRm>#y2kpCU< z*=G<tdA|hx#uD-$RHDAiO2`>4QQxnXDEG_~_$Nxp(@>(^OG@xLzXYFGO31mf1ph51 z^#8pQ{Od~Ke^Y}0>Js>;OUQY833;ZLC^ugMKeL41{#=6pizVn+W4s>BKL1{Ver<{R zUQ>ep_!9CTUJ74=&w>*ATvme5A4=dKErD+>p|_bO>RVod&o4{Jze|b!*jR%8)e`up zOW-3V@b{IF^V$;n+@}QnvnB8cl&IG)OYm<ifxi<Ijlt}2yAu2#FHzscCEDwf67qk! z1pcZL_Hb(n`LiYX+*Ja9atZmTm7ssP1pNUe@YN;o_m`;G(Ix0_EP;Ql1fK^=(4SR8 zZ^xCO|62(?>`|h9of7hZ+*gHv-p|z~`0P|dp6yD|zg?nUe?x(T+4KG->UDjIa*r#) z=eH&3zXtj${PTWBmgq;{0AZDv81U8-a&9hxAA@mZC*N0m^VX^bi&?+b10=q~gZ~or zMtr*mf2F3cqC>#P@QIbsf3K!@JbeDF@$)=<_S5Aq@!)sY^wl0dA87nqjfWWWnN&g# zPisB&d-&uuzS)DnP2<;i@Gam^{bW4&HZ9L=kNgj6e3gfOlI9=w;J>ZueI7m$O`r16 zcWS)PgFjj0gC6`R8o$nqhXPrzpr_oJrf>G(SDX5J_)OCHau0r2&8OCbAE)V8d+?`} zXvap)r`#itul|IYHT83vTAI$A-x_IZnOQS+!Qw?tGaJrb(B!MHKX2jUMfI(bhL%Wu zy&@fy@cdSgMHXMsw5X}2zPX{LwaF)_#pj;i)EKGPU*|PN>YJ7nr4TiLQDgwFHPSMF z(RoGa$l`k8IY?4-TQP@*mX?M~>V@~5CBD}Ai{|>87hmjaT--X>H{;l8^)s3xQy0u{ zK6i0L%bb}_OCo|iep>zUO_9kFlzeVmq{-kw>%k3{d1^~jL!{}n`HSYD92NmqGv_y6 z&?-Rf;spyr7d4@tk^})RZfLfM=e9Jd@@m^!=UIeJk($MGW<<bQGM=z#zUI&r3AMB= zZV~LUO$!<>QH+}+is_8`m%8#R$)+w|6k$c{>l>Fe)X$y2s9^zV(7+3tE<V0#(Wy-> zNS{o-wQ8)&SlhDryq1QA8aHEJ159Pc;<lDXlX>dmh0XI9G^rF#Hl=OuT#&V$du&6b zp$KOqpe#kGDWK+t#(A0%<&ydu5hE($ghg`~Pg{JR&H^pZS~P#|;+BQe7B@CT<}Y5P z6Lfu~F>4pY!kSuiimFzTxW_h~+jd?}Q)_F(c}-Ir7A!coq49!30g80~MH-{aJ9us} ze29T3H%8`P)I_UlYcV>Sf~r~?HaT0HinTj!{-O(tF=!d3qE?@3DAn#WRPRu#LHjpF zJe(A+sFF~X<}Fn@ep=|X`pMI$pzEXZ^^4mg>_o1zHEFT7LyPDYY}JavK(tfmH(lJk zxFv$eV_O<7)^>E>0;mC2aKb_;_K;(ds5syO71JtW&1&Z_X<9HNvbd#bJ|Jq#=<mD* zQx`Nfv`k&R0M;)2Y8zmVsBjBOK~`Wcl+3@NY0;eH+7>nXj+<Fe8>&AJ{cGkW%}qp1 zM<Sfm@e3|#o<|t{yI#t#XRm1`>ZGQN>yK-Ih2weJ;)Xf(Q|C3b_~xG16ls*dtv>jm z#^y_Wt&5uBrXq8FNII|Oy!mr{P-3gExk)-Fh!&Bmo({C}g8IgJ7u3&fn7_c+v;_UQ zzP_Qg6}`@&ni>~0gKtBG%;&T<`x+N4Zf%+~zr_dFvY@#kGLH!@jq@Oh;=izI;ljli zH4zQhtG*Wa<}Pk-TI6fJ1kQXR<!ZjT4RWE2T;Kz<MbI57p(0;%WFA=0sXrh61L8DB zprQJ6>lZ9;WRY`7hW~vRH$YlL+bDj{2l);WxkwD6xsmzc+Ynhi-?tDQ2*~<+1auqq z(6O)qC4g)Z`Y67ke^f%NuC=9M5z5jKvNkLbW+0ckMw%8ZU|v;c3PzovVoi%K@<9cS z3!8m&MOTDcn<C)chK8!IpWnK;apJ`K*4D-b3;<LMb2c<KqNhtvw9VX$Tjs;NvM}(u zu$4AEx3#H>{U0SRT1<5)$I?6>1|*dLB`U|k=)guss1GB!kWYv62|oUi0}mNrO++;j z>}wLqMl2g(==f=b4pvFl<1F|2WC*LMgaO9~whq&!2r2e(-|^E<m@>8gknx91EIdM* z6K9-!($xCu@dtm?MHilqaB+to>ONYOhZaZ=#mo?Kbo}Gr;&0-HTDUSq#EDb?k=oD` zL&%Ts?c_<(ZV#BaGQpPPNl^~*4ad_k;D-ukgibM%C~h`)(yH9%uabp-4c!iSD*U${ zQcS9$P^pGHA@gj$3;FFQrgG0<i0?S8Nw|N&eTw+CH((~VgKvYzwe2w<TN8d?4`6=C z;Ru~p1$bEY2F%cg`JQvrxA)zn(@DSU{P`n&z7f9HG;TM6hx@V`zDLR{_r0g#?+d)W z?-LFGR^aV?!?6INjJrtwp}t);tmGTw%4hb^%zC9dOeuW6KE1DI@R{Qk-tpkK)?$K+ zPu_zcc8bE6>wPxEC!q0_9{e5}zw*aApDNDh!gmzoYxTxbr3XJ<<HvaLGc|sK2Y;%@ zhduZ@jj!|I&(QdJ9{gDvzr=&D*Z7ql{J9#x#)F@u@oPQ!`5M2@gI}!iogREd<5M2| zr5fMk!ACW|*Mm=Je4ht@jmBp@`0F*^@!(f$e7^^OtH$R&_#bP$?<d9WzE<PQJ@{W} ze1!*pm&R9m@SPf8<-tFs@nbyr%^F|r!T(<4CwTDBX?)Ow|D(o-J@`Lse60tc)%ZFO z{#}iq?ZM|Yex3*KJ6P$l*@G|F_$40vjvC+Y!SAB+D?Rw#G`_=wAFc7LJ@`X4evJn| zRpZxs@F!~gIuE{9<2yb0Q#C&2!Pjeij|V?b<9j{$W{vOj;4jknj0b;(#ycK-T;uya z`0F%2@4>Iuc;8Qp?SGBNmwWKP(D(`u{$7o*^xz-T_$m+nF^wPN!9Sz%)gJsGG=72y z{}+u9dhqXPeAt8kK;vsY_<v}8od-Yc5T%#d9{i3PKhJ~zvc@-i@Ox<d5)c0C8sF~0 z@2~MIJ^1k&-{HX@uJNlq_+vDFjR!wP<JWrdVU1ts!Pjbhrw4zA#-}{^2959W;Lq3i zUJw2<jqmf|S7?03gTGGW9S{B%jqms1f1&Yt5B|3r@B3M?{ok+g<sSTIjj!<FpV0V9 z558C9t33D@HGYf-pV9bg5B@J2Kf!~4TjPTs{0ABz_TWF#_}LzO*`ccb^E~+NG``t` zAF1(6Ja{ucwtMiqX!?~Ne5J;Bc<_5_{Av$=w8pRT;KytHS`YqEjbG=%Pt^EM4}OZq zr#$!?jqmZ`r)zx2txA8Gr28uMoRVLwE&Lb@zsADz9FO^|weZ&&B)->K_$w@Yr-h$u z;ZqjA*~0f&_!bLq;?~$Uk#j>P$;6L|=NTgNsnT&`;$sGh?`jLrb4li7;@_md+92_5 z;_k#>Y2i(Ln)nV2KilGO&NeZ5o`vUmD)VW!@XHJm-|ZHj=c&x6!@^%=koY!namsV8 zg<oUQFSqb(E&Sycew~F+SooBMUuoep7Cvg>9SeV{h3~iU?H1nbV^IF9EWC-|6Mwyh zuhMaS;(6B0e9XQC@!vH_e9yM%S6FznzeIYTRWl#6k3oFWAn|SXorwRAh4-yd{R_)a zSs$CEatn_IuluR6@G7TDs<iOf>T*9-7M^9B&ln5OzHL6$7M?Ph&jbr^)}l-cT6lA& zkod5L$8kURQ)}V%QBz5)v+z5*)IQ&A3y+1p`<Z9qzvN<lzGe#_u<%PPJlFN+({AB; zX3>0BT6lXux5L8kVu<m*+QRevr1`9|@S_Y8-)k-Wmo5A{3%{F%@3io{TlkcP-^0T9 zSop74_+ATd&M-5%&%$#r*?ck<eouqMw`1Y=vhe*DzRJSqE&SdV-gjHU{`ax)<re<y z7QVv5?`z>JE&ON;UuEI<v+!dq{Qefc+QN^u@DnWj0Tw=J;m29{u!ZMdyZO{w_yY|R z-*py#yoH}_;SaL#^DKO|g>Sa-2V3|h7XA<m-)`X<$26an7XF(CiSG^zf0%_|ZQ&2M z@M|pm5f*-}g`Z&I*ID?97QWNMA8FxJ7Jib2@3HVlS@>QHf3$_~v+&=t@EHq#jD>eB ze9*%8TlmQqK5yZtSa{#<1^b_B;ma-ju@=6<!iOw;rG-Dv!dF@N<1PFc3m>-d)fWB) z3qQfapJ?HO7XI57K5XHqS@>EDUt{6xEc{6pezt`_*}~7W@U<4c*}|V<;g?wW=@!1- z!q2eqD=qv?3*TYkXIc2w7XDNVzsAC!X5rUb_&N)}&cdH=;X5t-85TZe;m@@2Jr@2f z3*T$u&$jS=7XBOypRw@u7T&S&vn_nTg>SI%c?*B8h4<-rHRl?Q7QWoV&#~|o7QV^C zS6cY<EPR!PpJ(C6SorxCzS_c{Z{a6c_zNt2(84dU@L>zT(8AYR_(c}J&cZLY@Ut!a zg%*CEg>SX+%@#gl;s5ja9}WCR1OL&$e>CtP4g5y~|IxsIH1Hn{{BPF4dx1Sa3P-n; zhZFwa)DQKAW2wlHt-aysBjpc^*jo>K9O$j1pTOV1UO_w&mKlCFvlXAwn+TVIINK|5 z7h#4{vnhe^Cd|cmcAdaKC(O`kc8$Qd6K2RX+ad6cgc&N$whMe6VJ=&;%>rLdn4!_^ zY=M^(W=J$!EAXX+84Aq?1#ThC5NNhq;PVMH^qH*^_*}vad1fmFK7%kromrp2(+M-g zneG1sh|wn!W@s~;5qJt=hBULi0v}13q0DSb;6n&Agqd9@@BxGwy3DQ-cpt(HS!O!~ z-h(hhmDzTIcP7jbWwu%15rnx#l$|Z`5W);qW@`oh=p4WdQD%bzze|{*$!xX2ZxLol zGFv6^>x3DK%vK2e5@CiQvp#{JA<WQYw*Mcj|Ko(K2xkP|M3|w*Y_Gswgc)MYrUbs5 z@Ye~i6Zq$Z8B)xy5%_k(3?*he1iq0lLx|aSfv+RHKjCJ9uO>W(@N9vX6CO*rR^Uqs zGjx~@3fw}NA;WC7z~>WYs4!b4@VSH;BFt6@d<J2L2D3harxRvKFx&sJv_D~n0<#%` zrx0ccFxxBek%Srg%ccZAgfK&X*>wURK$xMv>>7dhA<Ph8wnN}O2s5;oZ5McF!VKwU zn*|<0n4!GvY=MUmW(Y4^EAU5W17_$h8x;6m!VKAEs|9|GFhh0ODuG`o%n)6+Lg1GO zGc=d=3H%IUhUBvSf0y<r93-3(coSiU;Ih2}cM)djEt?YfZo*RuuM_y^gc)kft`Ycl z!VIxxI|ROwFhgtEc7d-Wd_3W1fv+YUCOli<<%CZlTr2RUgij<K6u5;jLuT1(fzKz* zP+7K0;ByHxM3$`(_zc1fjb(iTPbbWfShoKoX@9~Dg=I4WPa(_@ShiQ-BMCF~l}!nJ z2w{f2vg-ssfG|T{*);<1Lzp41Y=^*m5N2pA+b;0Vgc;JxHVZt0Fhg0{*#ZwC%n(+# zR^X4$0?g1=HYo7Bgc-8RRtx+VVTP)*RRX_Gm?5fcg}^TnW@sww6Zjdz3`u4C|3})N z@NB{vfj1Fm2rAnva2H{Qp0X){?<U+xc%8sMC(KY&c8$Qd6K04h+ad6cgy#}&7x+5D z3^iq&1-_av2cYb1ftM4WPq<d#O9`J(I4E!n;R^^?3w%CdhLEyV0-sBmp`&btz-JI< z$SCU*_|m$ezPTM+M;Cu1T|OK?5B{$c;!mFwj=vs`zR_PhGjwq3;K#zrqi0Po^KBh< zD6+plcYI*46+#dEg|jivCjIC0Yhpe!3PbOB5OL@ozBLortDS@o>u=Cc7W%`E<k#3w z!twra_uI#WyYoZCWt+oKe-hah4E}MNVo<&{GdHjodY8#h`Pz?O)qnxG?a*1_=+QTV z(ie`u85tQ)9DU`P7~4m!1j=bd+ivzR0AbnL4;SQpcy8gD<3IUj&jal&@R)&_LuEL= z)CtGiGT}tXNwkND`FzoQ;}zc)u!A6<!i~>_qnq{(Cywnc569EaPcXCy#cEBFA@(3* z<J~I5vyve`4H?MUWfkw3rkSeJlC@<dhzmhSIB|CVv4<%fWUGK|c_ii)Wh{01!~&G8 zr387EPtc}_yjR)}F%WdPT&uyg4>j&ZrrvOTGum?V3qzpObSGQR8UCTvtuLGoa+<*U z_l1+StOm$mU`2mlg;NrtEzzZ0e39}*XiGMT36s#J+k2P?9|1x8I((^03bNPp8EiuR z`0gjKmsngp#CrCH6SZ~t&WFo3DKI!YJh3+r{juSf03w!Z+ecE<!P(pk&%uD06-mim zb+NUx6>czgEvz_;(lo(ZU8@Yni*RBVbTg$^v#e!lW1yj9MMK?P9Owbw`8*Xy)!idc zY3IjAYl&Kuxh|aCaR?aZ!3<U19F9Nbd?T-w>#1p6BxNm-ODsawh_zqyMQcBRSIe^{ zs{SU1ic(cSL2B6D#W@Ws{OjjT)jQ=W?X3O4ty7`uWxZW!8)O){S;(GbTaR~@WQm5V zi{ZHjS|wf5?T)cj;F>p-3eb&A=keP3E>eTgAQWlzS!AbWpo24iJoJ9<z(nYM-Su2n zGj(6Bc|Y9vSUB3fZ#X`)r#u>ZUwWu^4o=y`(EHz!PHsA|xB|B$YA=G`dax8(LS$IE zG7Wei=~QRK{0hC)QUXN=w-XB$P<<ah!)T+FUIrABhnjK$G~>a~N|$%W!5{}KwZK~W zL{xjz(jpPG+xpxhv>6eect(k^7FMA}crQ>f@-|48@ZXBRa|4S~&YB&{d~?Hr%TwXF z{}%Xrkod1e;(LLe{5Jqj_$xQxH8k7^r_vkl&R|rrzJ`V4n^4&=lOnk*IwSs{4iE01 zgPh^`s3v@MoNfGVkcJm;dt+|kh0x33U(?5ed*=ogKOByyx@bg1Y=XOjG_!irp?>1B zuj5ZT^u9dP{lT=tjs1zx8{yT7S^eS0$0<ek>%+ohk+mmWmI{~QZ!aXOhH$%64Q0K7 z^}ZFUz={>fk1E!@JU8%8>b<}Lq4(bloF3|XFHqMFi9&g%WjbLIzHy;`O#?cM<YSP8 z`rzUMV|qk`=ZsJq1cS?KKzn(p$Cw_f_B8&no{Jvi9|)Lsh7TR$qt!>3zCR>z&3KHK z(NI62{$YV@b_LW?Fc?u8^_8K%Uf#C8C>ZHN{d|I&-+Ao4z!?zoooDbp>*aURwD;f* z`F8`SZ+aIMem8Ii#NCN1&>30%5*e2dl2KIgaw7DyQN@hmgQ=pQJ!^1Pd{RbBs|eXl zzBDKkdifGe?gx{C%9>$itK)6okI(8rmepN;wB<$y2xK%IM&m#3;ZL*ZV@Y9KG)I_O zRL{s|n2h1u-_T3ZPZzVfgNS*Ouv2I)fipGmO9CeeP$$Y>m#F!ExUoAtKXu;RxpTwa zPE~wU_eVqGJ>B`e#%_xDc4vl^^_Hc^cE=x&epJ@BJ@SXv<%TI!+$r?iM5rU`jELrk zU%ay<;m^nqo*Lo{oYq~S>P*yhe2zlC<}$sg!1OjR(+5#hjnwo8B(dsfc66K?R(O_F zv_>UtQr)R8^jl`>G@T3eukas<*(9tnrLD6j1*;szeD4O%dHmhLS*}$+0_u?!LR}F8 z0B&>PrliZ|a32W!0^CFhB2<iYPL)Pcbda$w1bOTn_ggu7kz>?)orA<FT@e;386heC zfo2dG^SG4SX7T7_sV$lZfI2q2F16E@bE=gi!yG}K13+D<Am@W_j-9L=4s!T+Mvg=X zCes_9|BN!3x2j+;VlHqtv(VWuuR-sqf!7JGMmPHddn0^Jw;K1Zz%q@D9-9S5pV{_` zIQI_Dd9>!d7@Tc-O!0~(5wCXu#wE%znR0|+o}XHwjE9Y`(66!XBBT6FR_L?Zxh-Ig zGdSm&;LH?yiWiEUN|l*2g`=sVG7MT%?5%%8HcqjlOY=UN&fffc4!zx7T*qSwy66dl zoX%b<Pig15EmBfGoCbx=o$wem^C(VTFm0)=fG~qBS14W-Won<tW!419*Mmhz3OQ1c zaeFwHp^%9xgk1#7G0_ghu2e+<A<IclyoYK@BTP#ApZJ}T^ci_dI|oqGbg0)?C1Uo5 zCxtSt<zSludm08N25IMcS+LE52veAb5@bOGxFWZUD?@@60#2t<EJc@5D-vWQDp-M4 zNvon21f^}ezraTF50>XU1sb=8dyC4uyV_L^-+J8CuuRu5oRb>%=^FMG)sUtPvFace z7B#484vW2Td}yH{Po3<#p)%3b5Ho9vrplo*r;syDreMxG&q8%DkCEIUu~w-;G%ZTT zdJ<EjaJ)t}@x)M1%XY}#o2y4=;y@$w+^h&F<v1v>pG5eEeT6bmfiG93XD2AJ7j6Rt zQaC0^D~E)mp$sRU87QHr<pn%BdfmWfJRq75nB{f@;4xWAP<`NaMM~8`hT8JN9I(pm zNW!Q;w-;zIwsIy-S;+)n0HN!ltP18uzP6WyliOJw(^<^0UkEZ}Gy~RM^PH7;r=S%m zo>*c3ki(|jq(IT#I?TT8brQ(_W~Qd$INFC+kFJ>x<wcc#=qs=EH8GTLJ;-_REwDr- z5_B<GnU*~sSif^Pu<@C28UF7L+~*72ml{n=gGICCOn4l{bjf8M`=Yb|KPSi$&Y>a* z8bExVDkbWaVP=eWhCnHqCVK?xas?8tK!u`}8_~I4tw4hVwSorZG8~g}QSFPUg|l8q zYp`sHKScy5x-J`K2Rbf9jnS>_fb81BGU`!x4JF6U!jaY@YkpALjzA2}Fc`;%qJDve z5@=Gh3ZC>c7H&GD4{fBq4Y(rC@S<~->SUHEil|hX@%#x0%*8i9M6;O|PoqDB)l!Gb zsp(xAdbyNI!Fj^os8w0QObET)_A0<knD(|iI!CWBLbdgZxy36w85PL+WySAWeUL7M z<<II_8F~&yITRyD>xD_sb)W$zhMZRRY5=<8y2R(&UQ}pl3}X~AMswI#Rb#j;rW=0a zpnJ8D?o(|563rpH35LklK?=%>F75F}P*It|NK1v|W#RZK<#uIU%c)kC`IlAXK}I$P zsmP(9yCS)7*jdCB3RO2cEmYfUm9?l?597D-r;B~gI_S6)?Yj=_dqjz<KMYZl!;r)! z^+}`dghuU?*a5~KXptRCa`w4nEZTZg>poxxhGe`HovjV+iefi8aTrjvzidUSZM|EZ z1ntBXd=FE;g0cqT+ZF&%v>|w7bWy%s$(*QRaggG1BZxZ>s6g8z5$1q}`&eoSdH~YX zZL8sW2Jc4D01B&tg-J(1@7UBb0j2c<VGQ;;PVNfr+>hiu>JE}Nw35_4S?D{qxqXg8 zk5>}V=`!RE0mi<7b>zX?ZEy?XQ)C!EhzwPORlFbOl1IhS{4#o=LUaq8BHK&n&wUle z11J6;bP^zZ<xg9;Vj}qcl&;>V>l5s$Q?MN&Y_pF-KI5#iKOs=$ppFV&KH7sh;|h-x zi>9h_Un(YA8TtSSwx4!%nvac9d@PLNW1&`tJ`Ai6eQ;#xL!*Yuq9Ho4yauC?_!ZYX zQoAL`d5J)o`sNOYkkC6LU_)r%2sLp(!uHT=Z0!k09hfT&*fT-+(d)2)PoE%QC4dRS zwa`buYl)B(b1*aYn2BN`c9AITIk3E7xjV+=sD{XqS1Fj{%eDskM1`RRO1TSn@+nj2 zYNsE@5|$}@F;7e#+<Ak@8HhDQso*!*2y5hZr%GVP!6x6jw~{~{qi%K1OE4Rar?)-> z2lRWXVxb3jBao@Ip_e?UfA<40L0>rj9>>ve{OmsTh@OEX94r{a+t<L5#^R{KRF&4F zOM4CpNJLvI?|R37vrg7TT<KrL!TRe}q$>A@Hm0NH@^0yI411=XrgtS3S|88_uYQee zWdhR=F*eJp$|x@BpQJggd>`vOWulX3&Im8tf@>SWdPDg;<b1DBzE<Vm-nw;8I5BMW z7*RsVIT-p&N@8M_kS1dpke-0BC|q1})IJ-B_%`xJ9Y`tt*?EhtoLp5!hKg9%{}c#{ zJ;wu4t#>yJk!rolN+)70wW}H>ZdAHYJ8!<Sb!&F6Y*NLPXlZ8|EuDj)(8J&ou?Z+7 znkfU<^2rY@LFU|clON#O3X?QMlDaNdNnLi*FiE<<MJ3&DCzVT5r)Jn`CsiP6`-g;| z{~<e}iU}Kqn}4I75ENz)YGw}>l18_qXy$rAv9kmp&3!T^De?T4bfbOnAV>Rx*k9eg zYYv6?OSPcud!dcVGbT@;e9Gk7(@qV=|1>#{jljchc~F$CT4%>ULW$8w5XTmB+SXV$ zn59?tpH;PNKBH;G4U#cw&}gcTS=PU-vLs_E(upNZLopk7g+L^DlLRI;?QG5{dY55k zB6bvVg7Pb3_pu5<iC9qKKBP&<W0m9`-M}PYWJgHDCv^7Q_AsF>4=5A5z{|P{S(sC0 z5gt0r{W{A8Z<aA(biz5|amwr?e&-^XUpU#+f9B+~RF|QDm<M;c8uRRq0UbmIcrH{u zcnzkXYkYy&QZymtoTdwX4~lnA`U7g|%U;8zL})Gg`7Y=~Q-nmOLmN;q#?uwY6jSU| zp!kud_?n?ehQUK7P7qE8<x0+^84*+SZhSKUvMI1U$<~nsAYfh?Gf4#i8?mq>TAiR& zq=*bEI3jQZgyVwj&PWzCvdDY3ay}j5_z=ZQA}fpo?II#~cP(R?Nq=J(n~N^(e0fSc z`@CeNtX5fJcgYhua)28m8Aaum^{W}(*`47yk{CUyfoD1!UMLI^>nZ{F0`3D`1$a!Z z4AO_z&=#{|tkm|>wP=^<CsM8?odjh{zo46j0qiP%4+hZ2ZesiDY8fkKku|GN?;V+; z69r*qGHT=ftfHvpRAy(mKmvF>I;XzKcIP%G2K*X&aSRNh41eSRS<=p5Xm7I8O*>uE zz>yuDz1>Wx3mLHwfG6lLg6^<s<r&G%;ui#uz90f%Btfv_lHtztfYA$<P*mvO^0b$M zRV)RPyA{bSlCX^BiiN5J(yvqLhoJ&!46p$g2rm|QxM8wT5mo2`DFZJp`Yo2!=uheG zO58=P^|mK%!qwYwXHUfrO8`~x%h`WQ);l@sTLo6ng4AUdh<ylEJ5N1NEkyGp+m4W0 zCPz)W&n^3QJ44$DnbKwZk!`bomt$~BCHq@ED=dGM1bc161F=`31GB4mAN9d0vxy?8 zZr8F@Aq!m&6y7ceMWL&y%=+8t<RdXf&dS-vkk{>EDG|QA>+dW$>Gui9E_RGOrJaY^ zgp#LP%YZHxMi(Qu6U)P8{hNJN+$!Y42;p;_>p24R4Z4a$w_*U^1jeZ6$iRw!Q{DC~ zS+_UVvthcGOG^6p6_9mnl&7@wXSC(E>z0`H{>lpF2c*;NjRr;+M1{6SM&K`e!4b+A zNb)}DZkDaa^D9Fiw=ezppv$+z--(x3;_qyEo_qO@cn)4Z5`T}oVtYHLfVqeoFXBtN z0om<TBETmP6{EL8neosY0+nmX;a2DR6prSwm13zSJIJ<NIB-BJw>!t=r{4n0@bFCr z&5bbZB~^^<yO%p==g4NE>|B4I%s;X+zt2wic`~14WzOR)(dWv%x0U&0G+)0sig-7- zmmZfrCcTPUwq+fyI=-O}hKTuTExzn=H;;*Fa@A~LrOoc&S*TxpFZ>IQ#&kht6^H!% zbK1*2@w7O?nTgmE<kgd@c1)(=V`3~sg@kkCiwJ^61nB*~9FDVTdb(3Hh~(`-q#7ow z9N%XD(?{YMoSuIN*895wu1H08O#5H_CKAYSZ=mmV(J7#%oDpgNZ}H4Rii6%T+BR&} z?SvMf9+RV<zK2~#s(TSi#&T~Tq;QM5J-_VEq3;FG5>g;`5=8bf@YH!%7xErCXx=(c zUOkmyxebN9pNN{<_A=$Z?=6>z99Ehl@PUPlj}DsADpWFlMKa1P;={XHS-s@gzSrHm z!aQv@hU&GTTpL&)oChTzz-PGJC9u@MiuKsOcM)pwx)#oNN%m%)5Ln;75{f}a2JDcr zeKqyOyqCIp70%7xL6R(gLrG`pF<JO~7&eY4QOFeo>=;=!F#spxRUl%WYUL15VKJ%U zzT482FM_#^pvuu#fO-p|P98qdG1--&jc%5SV8Fw5U?7WNSy)??54A7dIHnE$?4hxd zYCNAQ&u2&W#q(wIyfgwow{d@Y-ai6Aw{f4gi$T9n+l6i^<5-1RC}TP#!YnM>T^3G$ zb3`#N3n>`_;~BbgG_J}mhYfYe06ORpHJJ)0Yd;YxjD*=T9GC&a9)%E_e)6Uva^PlX zbPFh^$EVKTXtAn<nrC*RZ&h%%nh2K5@Nc+}!wkZ-7t=TmqvU1XibFF{Ai+daO=)I4 zYlLQ0#4D+)4<*HU0!S(iG$tI)mj$j26)**<T#4ZEgt!8G0O&muJy|Q#a$Yq+A}r~R zMBUFAi8y=E87TtJ>v@&+;g6KEPLU)juviv!9!53?NeNPKoSvp2VK1ID;e`LqgN8E3 zk_p5vq59qWBHE9Q!`5c2Qdn{pRjO}brLdwfmD&P-tTM~|rx#@+Xxr=ZK>buQ<FV2T z+3VQ1lmT4DM<ooJ4<v5yIBG=OLRTmwkjo4TWI1BRm<Mq>p8V!c3KpvdC)<LLQ&Q?9 zlCe}ca4e3gnI=%ip(F|y)KgHnF-hr^#dfcHgz8SRNQ>gUhOU#Yx~}%yQdj?(<IxhF zz)jo~4jhO6h2gtkQ7NlV7$8lZq>gA$#G>3@*#f7jaw-|daoUgQ3QWRd?siITMQ+}w zmuEbKt-~Rn@;vG@b#T$9_GzaUZzo|M=dK|t;NbHRBCi~LAoe|F2Edtqibu3Db|o$) zovdT!TUB-JCNUJj$euYUR0;!c;t_z+9zmzL7JKAVqBm87k`@j^q?LK(?Rd8;H>|@J zxEccYL6AO-Eu7XM6v-uWY8}V0?ygTLe$s!`FA2*0U7pg;*2kqNWNqgJL-j@4trAu> zJuCr{$V#x!fPn4=?Z{4xXGMVwR7S{YVP8@Zw{DA5Gl3P$lpY;)j*Q;y$-6md1**E_ zfKG#r0M}gsCF;r)diKsw8sVk4K{qt6KCLQb;3CAd7tm>kZ>bGbThYPyLw-RW>0!U3 z$CM!22TN&8I0{*mPU+`--#YX@S~<f$?Df~7rtD>)6_r6%X~*{%_^C~P@T#ptItBzK zbs{+X|KQ2??L>F*N`stizx~%#L3h{J=_iu@?S4*>Rx?(f(#~TAwbbg?s~hBG`*hY; z%%QlZaRH%#AaebmKiR&+?<v;cRsY$qRMq!YRo~%GQ}yxkly;s>yLBp5y>PPqC?ON$ znCU9XswS$=e&!qKX+#^CQM20~tfe?WNfBFXq<B@H(%4cFDe}lvtD5FAl_JcY(;qd- z+G!}W)#M`GRsUsH4&ph?Ssi`g#@&sm((Q-N7(&nEtPta#-i6l(Z`hFR{FzqF(9ne^ zg?d|hgr1hJV;4NaL&qQkl*=iyFE*R{%kT$lP~$kr32Ptp8XoBBk@YoZNJNzNnqcX& zEqr4YtGBg`*v9W&BVVgl%U7}kU-nv#n+(ZhhKY$7NxRgBf~ew8cd(-hTIuq-pHbi1 z1&n+InUb<4p;EtZr@r$rS*~JvV4+H9Px*mO^tcekL{j$+8U^wt8pB-XpfR*dJoX^? zMK|!TFS36^K<R+<Y__dntJ1QgIhjpMs9fAmI@ZIy_;7<?6(y<{yxWfD;i%+614she zK-0281=R|N?vL+>8NnnWZCwZW5)0lBi^>ZDV>Pq=W`FP-SX2TtTVW2|?61U=FSjpn zH7?a2pz;B8l#6+HH1fHMOo}44EXvhR|A#1Awf1r~t5>qZtzP>jX+f=E<#~-(W4)?v z<O{S**%<LypTbHOal{HkUu;yM-0>q&qK!ir9cN(ky3rm6K_4z}9BI+`LXl=ipEr0J zEm$8Iq5?fTwphej;zw4gnooh#G4i=@BJF%9?X|lrs@%n?cNlkZi9Ds9-7N!5)LJaG z*IuQyp>!l~CEZYzWf0lLi5pS0A2*=V9JksE($2>E_KRuGxKEpVOWNgZ>DblT81awW z(%Gxhle)WBD4p%|W23W>JYj#STe`G1kRqKG+<lD@ix+9yWYHIkTu_yMVF+&%PSNrw z<aNR14Ab@WJ442L)6Rd<mvhHnRlm`Ci7@GJ*TOD=lR|%ba?DV4tCYBkq)Ji)LinK) zyAbb))Ygu1wV6o5sgGfkaXfnLr^>*tRm%GB+l;cN>he2N5Yn8{VtgN-K3Ii8){&Q7 zxHP5Xhn2#K$F(z;EsE=;E92}7`Ve!ec_%lUf#YdW2gfZ7XTBg4XPGzaBCsBI%G|Lu z2-!LC^l+*b$0XT2S0U<#qB8=!GkB0v#+ppH`%lAoj0f_K#c~HTgXq$XFLJgbmwJH4 zTKIeFqU$4h9c1d0`Eog)I8R2UxTB75ndm_{nUWS38%1J2gBhxniz>`#?D+GD&8oB6 zIQ8ZzT3iDjVPh=@X^nrf1{F|z9#Uflo^~o!4FIdQ#4aG))`i^#jYkbdOn!&!B~&Ie ze@A`}N}F0e%+PUI?zWg+4rVz|HVoHpHd{JKTj$(~?h=+`Bq-Ihe1mESJ&+pBlq2tr zpQD_koXKCboVFVa=2N7%>k*~)iePJ~gidEV>o=CH@;0h_!xt!Pf^*^*DXZ-UPnF~S zEAdiY5^rXrCDogyYN~Jq#+?Ff6>U=vk~*ZPOG>s$9vmvr+0xDiOrQ#R*dwtrYU`Dg zIq14N46tGq9iaHB+9mkLD|>qF*51y+j<4q4E2EycGQp`)4{%y&7;+b-^`U<Vf%}GX zhk)DS&QXt?Ey`fCo+cbd7pzt_&58<1+JBD~huz)vSLMGCL!491Wmn(Kr?ivrVrH_g zHJO*_1syyJ*RV1vSoVNRR#bfiw>O90(V8)lgZ>;|cGaFw&19~_j2+WNTo1sKkfeGo zvX<eE3t0$AimWF3Te@*9?j1ST8CbE0ig+Sha0y}uaH2}_46E~pW69DDs|Qvb?zWS} z&5>#~)f%5}s%}0=iS2^3nu>5yQwc$#sRWd)r3+|zL^1Cu5Vv=Lt!}Ut(hIl@T`pK9 zh&<|MYq^!J)7|y1YPQR7G|jfVG+^49e7|Xr4vWQVmZ9D=w;S(~0<ln7I*F^@g?nAC znNb+}o-R%o$05Z!D&$)SRrEQzY>EZi>4{(^Jau4syPE)nJ`KVqtSmka0u|I&Y6kk7 zA!3>Rp0mL<YYwQ)%@>1YS~C3>rJs+Ke$M%!(a*#m@hR=>-D&jGY%(LR9fm`s+D}9j zAKTN2^r{yk@?38QmLI~&LQ!p$HpXIVz~C`-irfhu)J>=fjEaL==q|NH!Tv(oM}>&! z>_P|90x8}DTkFfN=w<+PEm&)xBBG9TNd?bU4bO#1M_WdwF+5+$NeD+ytjcBUM?nnD zdzudk5-lJ>QS&K;ZaxJR9p*uK(tKpV<|Bz|zFVcj@VW6R<!+L0zI()qySsK`|4sUD z{efw|OQj*x&bjNQCBRRbk9<w@f#G1y*XK5$BIfo2J-%u!#QY^(4S0IFI!BH3*Jb}x zXrGkoBOu@u51CcNpj|`IsQAF8A`~_PsDE+)kj1nS9`OngtX{VWPeGQ`I^!EAz^uF> z37jFMv897!kcCH-*^9Z54+G7|>_q93icBrwnPe95f!IzeU664c64M+LwPW1JV72tc zo5<ND1Bdp+c7)~(*ltpVjn`J&1m<v-$x@|z=!2rORZ^4ql&V6OD$`Hj635luHBL43 z`c<Z(yQRs~&LzKPLu<y(77Hvs*jqL86UWF2vE+_i7j&RuSL>H9kXJOI-X7>cG=m^A z8d(|5AS$r@F3zbf{Qo7TT_xRnTS~iEIze~W!Afb%zHgNF-5dCnc8<Nrs>v5qnzp_m zP0dvbPP-ZXuoGw%!a$&M6uaHCpiRob1RM$kO5F4<FThyuFEZAkn>QF13;d~F3UI|1 z7#`FD!!DEBFx@Y2a~P|>;tbVD4HCf#T8!%Zs1u{s2{wUtI_IpW_PV<!DYYJOy;18z zu}ZABe`Bk)z@j#&&JL;~<Kdu39PHjCu(V<3o9p;xP7x+~gapWWf;49dlg$ddL}AgH z>d<9pwZoS})v<n>X+gcmJTDC-*u<(l6XU80;;W>vM9e4rR+S6Cn3Ne`C1v7Nt4ga> zX;N~0m6V)_RS7cGuFjg^3_@%o*rRt9pI6;{H!EQU3Q&J*j%?oXgn@i@9i_u45MAo{ z%qcfL<A5WT<uqEb#6q-(1#^jNmWc=hY%f8K+-Y!-8JcSDThLSrger~<d)4!TL>n3b zuVj@yDa-n@zp16#1os7#T}`B!FN-=YopQ3OD1HDBUKl*5;Z=PzOy+q1Qyxb8C`G_C zwwQav3G@)o29Sqxqx!Evdzj=_4oc0NiR{@%%P*vAt^^#u!OdN8#IP01vI^UJffYNu zQ(?1Z=a9lIx6KCK#87`Lg@908do%8WXIb>(nHkdUc~%7<0TUerg%TAT2V!?`rkzt^ zS>5OZJuFRd=v9b@3Nyk*Q)VG3Oqm4~K|j5qmIt*+g-q@Jlumh@6U6m#4!2yes`~P% zyZH~qU3PcL0so|b>i0}H-*_#b;KqJUdxj>8Dk^Jzm|wRlex1c#l;dvEUaYc14~5E* zlNc@r9%v+PQm8D+J%~P4j8s}rs``cWS%SN}S{z)7!=y)VONrCPId*rQr+nonNu$I| zI+PN-e<@0&76xd_z3gf1H6)f8>EvG-`eKobR3)6yLeIgE;Mnkf&I2qZ4sY)-+Xed& z$&m+1@#NSEoA5b%+{KID(nu`Y+^ynV*s1vibBoEN3n2clV0Gv?vOBtO9?pV20zE~f z{196Mx&54D-D0msmqW3gVnl^ve{4($Tu%d6GYgk^gTxxl`GK}`+Hn{(f`iS($OgTv zYa@L3F27k2G#W@^W|Dc>4{Mj(H{su7<WL+b_D6P4_yh7dOwQHojI6Uh(iq($b!J`k z$+Q`KHm*TUkMg<ks?w~m4Bj819Js8V6)p6k=Cd8Ska1REA&c^S%OkmJl5GyoqrfOe zA2;CTdq4~1%khjEHYtNk*glqCfX*YUd(KdY4T+MZ_Fm8rqKQ7BNnq<I5nQ6?-;_7Q za<mo<Q(>mErQ6AYAK{X2&j?`WfikocXI00AGAhKtnlEA4Q4d0O?szZ>tdJ@Jlf2Bx zD-;Hc9~lpD{A=I{RB5Xej6?aB`(zYyo3I>ai;AMMu&akT)bqJ;i=I&@uQ;|Se`qMx zD$Z?0cWiM@gM2Sg)TngY8RAF}VVSILl~{)vpH-c-K@84oFN@duzixw<tf^3>Cstb| z*fX-vN7F?7TQlQZ-wSbPfxMw`^q^vD)+(T%FAnJAPNIu87V*F<5`$FrQ+Qm=Q;=Us zL7%9%Wu#84{-P8lZ?elh446~sw;36_hoyb78m`+0$1hgjb)UJuW+o`(usDj|mL0?C z6sDG2vnOC)fW4_eIroSID-M-K0!KX2H)l~eRIoDiPGBRVefg!4X8gHgNi=_1<aGSG zVo@}Ic4P|vTrnq_KQl58f37$qnjaI{KAImJ3FJ=N9C~{!4jFLvk*fhP1^^4r1p%CG zQVs=hrb*ckz*3X4JAlhfiYxW?V277T$Q5en<s>Rs!}-GMa2frOTLIPeeG@|Ov~9;5 z(sKI`miTsCMRcKDpXO`h>NTG`jPK1{PM-@^Kxb;tCg1WSd7ox`G4{4=v=Z??n$o80 zC2G<4JCV6lJ9-{m?qsLA<0G6f_y2i2b)Y*t41*%Hzivlrzb$~rpUPuk#r3Koz(Aiy z4y<U`C=3{@S#f2UC`QFc8Q#_t78j={ES+#rYmkLg4GC|%1Zn~Z(M%YWDT8yD2@8^K z$_~n*hN&5M(ih_Ge>Y%CRzjd>efM9@sYZ9#zMLW_{WURyJdWX9$tUbh-9Z*mRKf&I zU1<uNx=SRROa(ez`eKn)z;qy|wUjnd0}&<rA5JZ!^-wviF+T)1i^B2N&+a=w(6s+> zzizD4jQ%0&0(lpe4u|53S1xR(GQK8Ln$C?Q$Q1N{qGK717O5C?L%(Oyc|7;#_EU7l z{qM>4rBC97HVDgb8)P)p%VC&TC-uwisLa`yn_%VaGd=gI_N7l%MR4Z(so`yV2R6=n zibSf(rco$;xdSgL>TlWDzV!FL$f?2yQcqzmDK(zg{EvEetMn!2Hfz2wlWb#^uI+no z3S*uc^8aEerf1mhY<b0S`VMX+aGv`y+0E*VFL#hh4_#)!wB}hdv)R--1(`9UVzh3M z2}p%%nLNA}M?`$PL1EEqM<ob66A*MPa>LB3-p(Qu&g+CBoPDKA>TnBCqhoGwg?CFM ze|66UTEd+qDtSv3tgghMs$FqEwd^VsliPQjWebTl<#as}+i?ABP`Y{pp%YeXwxUyk zD2`RCzMyP5H6Q|zLCD&+_7rYQF1=w*$_y2foWf(KJ$g#pUqJN&1+-eHL$n=#BBF6~ zzt4yLgM|NXI7zyTZ^Ay*i;_wI+fn5y)}!ZV^HjR@Dd{U2YgeUDckxAQXl3l8Leh^A z^AHr=2V9RL=iq^@gQuLSLTZvo=4R8JUD8UID<_jUp}>>pxP>ISBdkwqh4LjF{r0U= zK0v(h>Ut|<AQ{XjTKJL)<TE&jbBw);abS-16}zEO<)#%U_mj;8g)>`2dE#IxvmhMV zuT&cz@JeI5DQbb6N*52NTb*U0xv41TMzDvsB9n_v1@tK}ChC<Mu##=VP>PAOR~GWy z1WYkaF(`#w3K&3($6`8cpAjyy?-$gYzOYTaHxpPf;qx2yw$70_5cTsJ^%1vwjrtXO zLyuAKzDybQpKgOu$BK;_7Asd$qq|@xqQ<Qs-dtqVuuj*gO<VP7qh2JWV$?_~GHT5k z%GdVqauuWQ7fW`HT9+?Iy}P0mqppF>paeDB*H{^}^l4TmuSC$&`jw@T!$3Q*n!~jN zi3Su*#Vm!mmxue*DwHI}mMVuujBW;GbvY{wdmV$9ZDCamRJiL(4s?z?(2bx&RUt$F zrjOB#Trs|4UAJ4D8CyDP?R4l<g?v|=e6L&iip+ZJA3&{68X4i$i6@3Q*#Tiv)T5je z0)=t{3@D~U?Dswti)73#MnKpe9_W?%1Dpi59S?QtZek;9&FLfbgB~j}_srquMBU_i zuuF$z1)nRP25fmnYRSu^{CE6awA06FfaFDUasJ}8>{CF%9{iV)u-M-r3^ZyE(bQg1 zQem}Sq_8LZ{=Ev@|3{x+VgB1c5)JgU;7-ZGwMX+1C%5bG3yQlyW$SBsy`U$hI4mms zHB9C3GnRb`nbimZjrk8zNltN+tFcGgVb?2>X(iq2O?de^3=2tzxD(0E&NckbT`C01 z@vj*$DKIui<64_LM$yVhyVguUf7HJ8N0_)qLpPP>cE|J5wp|jTo8)8<b~8@egoRZ+ zbQ3Ict(w<O46SXs58xVtYhWO~f#qs11cE9#N^DPT4y`tZzHW2qhs;m8I^}g!<Q2I( zja)Z6=l+n5$g2xy-8k4~ij`mhg@(w?*S_?|rER;Rh_W2-L+doccDCFOU(vpFHSU`m zq+URU<-Pi!<k3!nyD-y$8&8K)RIV1VM|x$7y%JrM(?PybhlAm)un5hr!lV6FkrxKR z4v(Z1)^z)fHWW0hvIh3bm9Eb^m3J&eLnx51_)QA+wPa8yZ3j2<jicy7oj5Vn*UGhS z%GdU4`_dm`zX)`gwS?BSKs#c@SZC1k+_DZ3igBTJsHsy-qx-HQb-mrPE%Iv=@eMuy zpb_4i!k4`l&sV(@F-c6UlX*;XRX<4;@_xP>O&fmp9NdD=i{{MDVt=5LlQGhE$wDkS z^7Tv54r&-ZWECUWf!MDLR2%o<Gg#g5eX0Rkz)^ITq?owLNBn?-#xhKbZXks(az37j z@I_`rFv&GZC|YX)3+Xt8j>jBkOsrC0Nuf=|SZyuZi!45|N-zmUEf+gUC{n-o3*8pI zZ2s^K?kgiE&@3TSnYCy1BK;H8nGLk@AYIXg$c2{D@%G_J%j3*Vjt`l+Y2SD^JiKg6 zHJ9!24Sfuk#qaIK*T6=S#6++*j203)iC~|Hcn`K;nZ+b1g}S#$ow|g#NU3)0glInJ z4yrhLuWo1Zy`N2}+7T`EeYnVYYzy$w4gBki9GMUhX{)cJh~43Ye-VA4wwB~!A6(4F z*V__N)LiAreO<S&ibmvYs$X4OIGSCg?wQb}UbX(K?01*5KHYxnMK}pxw4jz=`{mDU z(SBcm*n`;bw{-Hww6A}o{qDvF_?-4T6f%7dg(m&=7qK-}&q_-tLG65L>0^A#{sw<^ zPh1^NeE(7DgNdZ{Dv$lW(B`$jec4lVw<kAhwHdf*ersfA!7%BS?q|Bb4JYmV9Ue3u zdl~rX2LAQ6jV>~;@1iKz2v7Q+Hm}@?Q4zeXAn*z$Fq`;r=|KK9A0n$(YjR|ZFe+?# z-F-cHfe@N6_6&ETHC)XyK7d~AU{}D~ebG;3uOP-m?J&+nyb=!eE9^uA694>n%#;rw zJPBPA`F0;PaW`=4fQMm+a<AMPT96WN#zsU*&Z`}?adY#cU;LjAvce(ZR4^S9q@Y8> zm#0R`lOQe$9&I~?lm4qT+rOf$TmxK^<V~z%UN#cGT$gkOXgB(#2<<U;f`T;_tzime zg9kz$cp&`sMffu<XX+wWNEaxsVikI&ZiwiXS`#8Jto<={XLx>7AbP%81)`iXz6+{m z{~3JuKym!;%^it>T4oH)SA|yZaVKaJfyD5O2@FsB@sM5N&G^eA!!f4!_}U)A)FmBy z1ZDZM-=mG|b%Ehmm}o)Im`o{lEUAzpCFPOCxmI6pvLcdciw;2^CDXr0%5um^d5Y4O zwvC7`d;~vL@(5m~L-|}QV1_ga%cy%5dC)|uFcCZxO$nKqP}r6=(iUo8Avx6!t!7dz zw4Ms;>5=tjc{LiP4_WX}rcUZnH%hB&6r|}Y=!KTvBKa$}Nd7AE?6wwVy|v#(%fWo> zyc}K8WDPxYU#MP|_i1O>C#12dYm_6c+V8e1>xCR5SvHOab4%P#m-uQzmAKgOd*pY* zkEUSw72?!}ANz^Pkp6n%`KoPY);dtqFn6IvP?9?QB9S)p4pA%b+;WrDu@`^^JzH8~ zB-GP7lV_=GE9HU(yjTh!Vt4mGxeusU`6wo82X^GCo<UWPYvW~1kf7QaFCNrS;bcs* zCr3Td%=VM1%YoO3^VkDD`{#m{j4BiR4GiAR7B6J`An9gX<jqDGozr*UHi=2aL|(IO zkM%&HTzNS9D?VUZuz}yc$RuYS?TPDjoq;_&$wYNoMGw{p-iz4fy_dFo@U|*>1Xlb^ zn%d;YPP&v9jz4Uw0f+NHac~^_@Cosk-I8$Mo~|a+|G@ObDk&Ii__BvJ*|fww2qX%k zf4sYhY+9K!4L?{If0aoeLOm|;THNDF>9}`?rG%1A?o)7Cokv!2H&I^tQG)X<kS0^- zf3GfZMnPYG4r3zQ2|laOzM5$jJIb<0XiT`{aq`(}P}%JN>feU=tmt_K{6Rj<H5r&W zc;|4l|D%3VxZ`Q<-e4Zz(D`byIm-1^Nj+pTQC(!FRvs_UG&Z>_?5b{&@)pz4y4jOB z2gXQ5eTXl40>!cLJ0LJz$-YI2cj?6aS?jd_CJ4_Djwtt_NO?>q`54CVEnoLqB9Se( zP@zGg!5~R_URkJ0+=LRd47`W&`$pg#PTWf}HPQL-177-xOJEZ#9u>}5D6s%cU-$*i z_guyASVoG~6-qldE3BhvC2>-WP+-N4lsplmvfyE9<?6Apm7@`iQ0Ygt9K;fdnQ;6| z%t2*qE>Lx<;J1>cEMK^yVll12@RA}$qH&rZ4NjOTYt)hz_$tXHK)XsZn%avgzRRi_ z=Gx0?5ekeo-v8!1P_QgG{V(w`9qUDv*n<2$3jqqM#{8awM+J=mQ#Id20b8CnWugss zdzvB?PeOjQ(o8~lr)izcLgH=f5ItOr8;{q39M3R}7_wrP0eDT}H)T3yIw5aO%G3h= zBa|`mj4WSvaCQKHhE)>0JRRpi2mQecaZ7;}^|UUz<LWTySy31AAy4u|ut3y$8+l`L z{e{}fK?XNS4&g=nGa)~x&L4|aA<&_YSM|s_44F0cV3v_-J<vJB6f6QG)-u>HY$!ka z2(;0I(?=;(+Y!y6qDODV!Z>ghk0bzvi57z=v!KYGAr?*s6Aj%azq%9kx-YwG9KZG= zL3u4XR18Li!>f#*i4HMuQ!eAt71EM}(xIy`E~;;SRwQy}Wlb32a4XW22`oSR6HL83 zijE3b!30nYj#tThwLBb_Vc~EG+sk?)ca}jx{s*b8)u_J?8Sn~Or~<Pz%-L`ZOGdYG z>O_!AsX|?G=0~3>R>G>WUFPTRgt*$3L%rkc_;8L+L}Ca^HU*RZ<oW0v*gyHe549%! z!<z{548c+J`IL5^h>D_6p|q2h*Qc?Gg}p5OI*q9bT<O8;Sqa1nVB_s;sy4NdSt)_9 zRj9U56BbledOf2H_$}8>@t(20adhWUU%bK$3iusZUdzYdvh)89V)5d=k8yz`e>1O_ zKQh+K-_83YQs(L()=D{tL9M`!{5`Pv%`*PP9)8E{jBceJoC{g~mL4+#F`mLB?>mLJ zDrjWg8!V{8zW{WBgSsy|iojGs)=`w5{D*6b@#=fz6iwMc%EJJVXeT7*P9|o1P4*Q{ zb|jJS{#jRtv~LPfG4d7l?f+X=6^+_g_}>6PqLfbT)WlDaXngmj0sLtjvDyC+;Nmlq z$Q9ax8vhz8>ixplGpfd;?omvT%-@MS=W!O4kb>mL7X4SqbA|t6^*yq6o|0%c63zuc ziOxXcX8+0fiy!W*!I%6L+Z1#R{$^TSwcCN3!#`e^3acNcJH1BQG%Gk&;w$o8;eTFz zkNj^(RnL#=MMkmM95DDE`B$9NMZ>h9&d&m6orUFV@p=OV-x<`^mkYzBdh`OI<X(^L z_sE{Q+MCDTF#@*b$O`kvR9oNMLO!r=9KrZG4b?rQRK*U5U(ZzZY3EW*KC}wtx>5X= z<s1B=%8zvyHRs51A3m)ZKb*I?JM8(HO}Jki0n)X|-ifNPNW7*!0bT$d5evt{J0f_g zU-?n~E?uxPaFG8coCt5-;k|I+8!069=e|zOJqjfHP`8T?i{k+A_VB^7EbS+;R6`vA z!9<`Js60^p@Jl_dd*Vs$cHw$N+*`##PR=S##!tqc@(rUY2pSAhQ-S3nII<3NWF)$U z&IzfkN@2lbR_n5MW*U6XjE(f~bcv*u1zcgl<<oKwOwp?;S*&A&Q#t+nYUtCX8pxq$ z8`xmvn_*;LSR?6kY6!@C7EKu8KeOaN+^`MFWtmSE4-}pDMl8N5fW#)x`Bz9@0iEZ; z9RJ*dHZqeN`_Ek8cG)r+AixyMdh;5Kb$#2P(}lC*)-QUy$DVe>DnNunWA6i%IU}wh zVpd+AWGV~-L5SZ2N-WEG4QU{@Qs&a^)~YEnJy{X);FKM^Bx-i$&?RgRy@Vr=FRRBt zmgOdH4*ijx3$&to4BzHvP}~8vb2RiarXd)_cybZ;m>UKLSWGU=;LlRrpK*lKa5)9% z_@{Z`9EaR`IM_ncZ2iWgOJ6R#Vn_aM+pB%)OTNhNcoF=MYTrdo2GmR|liRs{=^xdd z<^5WU49em=9T~A|IWT;&E}n<FVP8BwBk%6wc!InQYGAxfWUdpvUlcAvGgn?#h5%I~ zA_E<b>7_uYoe_VQHk0R}n<a)+H0^--7GCNJa%v$aZFnGAhk*7qX<#~^Z{@4F90{tV zTr<sKzjYKBPm0@<cokQ_dEMT0?*2gR9W=4dX+mF_)&`AHYEov)Qp@4apj~s1DNtPZ zplJ79n1r-4d#H3G-t8yu(eQxQvfpBulU9KPz<expXiR4dRuzbiDx{ju1Ft8HDUE4F zJQp=0;OUeU+_GhbhU{O873L<)o}CviGo}bqIe~z0rIT$PM2LKGwM0<1s%L4n;JzNM z3ndEu8+?yCXMt_p5^rc>fhjXW)PM(W<;|>aw^0=ilj|@3X4b$0+{+B4Kxsbvjja2m zvRHAHd?V}8dJZ++U6)hNr2kX_Ij=rTp3+VPoA6p+G%&Y$)S)7P1Ku%Gr^cjr;&|N~ zZhrIPm0OFV_lxo(fGl5FhO5B;i?3o`@*P%vTiUw{JI~bK6-s-R0#bW>%2V1o{9>cM z0ct9oY~D|ZW&B+4(tn0mu}(nekyo**nJW(4^I!A|1WJy4{%p!s*dqGgB}R;GbyexQ zP`(P>x^8#MrA3*w+m-IGV)A%IoC>cM037IEnRxy03=7qvTpy`G4v2fB$2e)JK1U{q zQS1&loDJ#{bV%V(XoB2=A`6vkdLf*+bLWE6ya(kwnkI<lVx{6~#ss)BNHTF#+o^V0 ztii7!f#WY-%BR#I7R1amcR@#Pp3T_x)~0-R4w(!=v}2qbE}~+;fWmMklI*9r?94<O zFQ^8hc%6+7P>mU8BKrT1+e?Yh*;dDW^$gW<*Q$<NFCaT^lRV*l#8zXmGDGLAWQaC| ze&$i0P&q9*B`e(m{_cG@<NtI1E-tpaEw%mZbfq>~-zEKH1f<%=%TwApuEnTr8~*Na zAr^nP*`@ys{_b=byZE~xbBVvZvQPZon{~zh?$(GAL;Rg1UR+I096i5;;p?f2>*!8z zE6OD;%62yM95}L#57>)@!V(KfcVT{M_gvMXtp4Rl2olaiY=;v|yr>zyonGT9QG?x$ zF_9Z=HZIOC(wSR~m8(<c{NS_ZGtTS?XO5jkrjdGbHdt|^c{B%8mXIxT>jY;nn~C`8 zZOI#mokZ6r{)WqP)cPuqgGu<`Kue+|wZtvBn%qftSA);PB?BBB2AG$4SDu!``&7JC zj*8cF3e_z3Y-2#zv?d(?cV}#VvD|I-!Kv8T<eURndvL~f$1H;EgFlz2w6kfEF~ra5 zx+X3*83*XcR-RF-Hst>mQ?)0>Ah)Hq9Ys6cT`wxNEyPxwQd_G$rJck=xAtBSUzn<0 zCdA^pc5u~PtdJsA2`4y*TQ1bDE5=g9b^Y#HNRS+PfXh*WTh1G9BYYm$bxX4mUUCg^ zT@s;@DMZ45>GO!Mrpn^}3-OQ}k@h#?n;+>l5cUu22X}G<B4Dj;Cd;f}uv(#v>Uf@& zFBJW0Yhv_P31%P?fW@MUCH>||Hj#;f6@p&YB(sW<OqA*1rLJ|Tfr>_4P7J4=5B*%E z%G2?>Zz`*hpqf{KN_P7%n4m+>Z9HfTj#7hxn-^>%MIg5TsB+BAOuuH&ZXu<weArfF z&_snO*nUbdir%9O8yGAcm?9yBykr8C?PZrE)Z<2|+I}rYfLL58lbfJ;iwi&uMZL}Y zTKm%1<ek9R)H{K%kw~dv0yFEtF|T3Cw`??%`DI%&tap6F7`So!?1eg@ODrpO%ANdH zKfaWR30Cx|uEMbbB<dQR(j=^AY#zC$Wm1g7p>=(Ej$9a(s{^b`U<K7RQ>u=!W00|Z z1OHY<hO39+ZBszR`85K6h>ES^V_^L%60Q8cAAN_Ls$qPg@f5R3A^@&Vk8U9G<riHO zPOcI{%}8&%DJf9<15;q4gmN3?jbFMrDrn1EfN8lPh*io}7g*L(1gSt^W3OhT+GP!S zL?si26T(SSmzGoqny=_A-F@eqJzfNW3l`^gT$+?RXtqBVH<pDUL9HsZp}feA3COe+ zCyic=b98z6WcEhH1I~jy7>B>EavS6C(LE{3C@J<JvU0kb=8Zf@{7jIJ$|8O1bD6uc zX#O5N<Se%67hM4-X#t;|s{}+pM?6p@kUpMe1Ig~l(!Q;jXB64`9h{wDvvDi0+rTg) z*`#jvnzj~wxD#oetkk(b)%?`yxH0-w@xDNGBHXD^DL2yR?tx1GrA%NVTEJF~^)e;& z%L<lAmCVlOP?`>=z`*KPI2!mZX9YTrS`mUqre-*)Gx*%DO6GQWw>a%9ez!Q&(%HT= zjiBK7q~}R#4Dn?kU|y9jt$_Eoie4?#Qei*6aCLKWH0Xo*l#UD~`ZidGanONz*GCgU z+o5#`8FGzp6|ddeQ6mB|I_BaXeh2S2EupQ->KFxyF2H(Qy4a{y%gVxX8JHGX%kgbh z7EM9hV%y29pP-A&yQI4nS1%)Muq9>Q*jFnF)}9<GKYoW%%Ai5rRUAR7GJ~7xn~+CF zvVKPL`+ahMvja<_G>8Qk;<arrfhRkSjC|@EO%ig+k#FT&A%H{##Ny-)lM!t%N*4J2 zK=ff{zj%vGW;ReQwT>*-w6Isg$vj`0xK73DaC-Gom$E3>Nk*jMKe>efnG}J#g}_0G zMtFRNLRwN<ltKnO;JI0>pQk65>q#8Tl1D5q#=wug|84rQ?yfbIHR<0`KsvZx<O#pW z-6$rSFH}&k6Wv=XuU4$3?y|&iSCAj7yhW;#usdRNoD>)ZQYgvk-Z7%|VO{0m>PSb7 zKc5myaF?qbDBa-NTPgizTiRQHqSD@NN_$V9K#<ydUY^iT&lT;l466Z@mfX9iUKe7S zML+7&7mHk^D&d44QU}*A0f1we3tcYZkM%%;<j8AXj`RdR=axA<viI%BtRs7RM-&GP z4g*>rFyJ{%r+YTJp~J9OwT*NB)L^*puecxT;T{C{>^NkVJ_ErXQXJILn81oMmDE@0 zxPz_zr6YnyIwIE3R!0O@I;+#Ff76AtV($COReB6bq@CM1-Qp&xn#yu-hwqAwh~ORx znkG{8c7(Z5J9$`pnC+Eznp9pC!^T$QoLMwWa8cPM$}!_RNUcYiM985T;6;9XTN4Pp zvGyCIn`i5b-C8x=S|3{BuC&_<C$kkMfzED)GexIt<J&e%8~^Hf3SS6ncfkm<qpVh# zs5qEb$k9esAVBKG%}_1`5P^x}4n%RE5L?_QVj#utbD+Kt=Irfr>bpWjPCNh236O~L z@7H(ZIkvv_PI}>tcD~S%SS89bW{}ek1$wcyi*A;-p;b|1Rbn@0=E3$y!*IZ%g<>co zl{wT+lz?mlv!bx}*Uct5e<l@_MdF#s>fR=;Xg~s~?K239TeF;~i_=at?;VL;0yPp* zBic2V<}OYY$u_0(P%_V)Djto?RWk&Ul@RD5XjzDc+}$O%oAk$zB}gag$P<2#>}+jn zW{}o>%gm)*-|7lkwkfc_Y~>K8z+$bqp425)otxnQ27T>9Z!2e7O6ltqQA>B%m)X~o z{?n%#eRaxH+UY&h=*tW`Ze0tZn}tFwgHG*PhJG8WGK0>a;Z<bNd7P!lpi{945+p}{ z)#a!Low4Y7ss&`;N*ToQjQwYhtvuo~h0|589;T%WfGhvTPte_qe|4||9u|e0YYqdk zX{P^Zfw)^W!Gm*I8#m9s!f~6Q!R+dPhxI%!>e*IrJ9LWbZR3^od}Xq+o=fE^?Ob=d z+idV;^gycF{(srqej=`ATlyL*YU%DeNa-tgjM3MLcw1W*zI8@l+vsguC7blN*IoM0 z(A(P3HKn(m#az<cZr_M<lOuoaa#X$TfisL4|H9sOs_RJx?`<1zvj^9rLw3q&)EOx0 zeHap*+(a2FWdxMbVf3%${YaiS?vo^IhK1g|6w#jCY}wpV6lxmSazElRbVxp7s7F{~ z_#ATJg-gQ_gRtqq7=z&+$dDI@VbRDnAp?6G2HB){Jww|WZo%AAVI7Y0)S*EYiCMs) zb+{j~;Or)P4Kvr;+O|Pn%2gS(qJ(+>fcgyEc74tQbL@~u7pg_@*0z*K+`MpP1EBt* zp}UdA(h$67k%mT)<Cj%{SSqCCqoUR;Me*kX#;`ZwozqW>BcS{RL%jR}th#zt9?cD_ z;pD0eQZ#{<=JvhR4>aFMhAL|~QMV+Vj0r88tYs$hBzMKD0*agdK^jhLUK3wjgvOlW zn}*W*EgLjW5t+<y6eg~Jr$(n2mHokt5@omC<uWYJ9&FYX`?k2zRn!H3R-)M@2Z5gV zJa!ZvNO#wz%ClTM$#|AAl8|=FrRJ_8=2IBD04-_QV!DK{{1~0diyxOUvmq_2)ZU&- z;n!&lA=EuW)<Rk}Y3J)7!yI<d>2fJ9Ov$ldSe`zM1$pjV?*SDeOX|SqLF%*|aK_T` zC~KxbbQhC`qW8Lv6%1vVS5K=8XTG5-##{zT!HPw_po6s=UcKcK(S3ckS1u3%H@zxT zi^8hN9~Gw}?C{8=!1f|2)F(HOQHFB#^<HZ+G>N||y0Dkd1IemuFhI&5p`OZHP3VhM zFi6D)airazHXxG;dg%2i*|_u0ZZT+KEjT?-ClkW_ClMnzlbWaZ6z1vMEI^LOkwTcO zDp*tX)u*y0arD%ks<Rw>s(!faL3MZCqD=Nx>=UV}`q2pT(!b6+g)CSBQLQ;A!ZL-A zDwFdl^{x`87qDoY6M4eTI6yz{jGfY`thJ^Aq$1V|ha`ggLYgbVT~;`(!r*FakPfgd zwQUtWb$8vW)b_I@jM}!7gtW6K_A!*&2B@hpV}C%h$sFPqm%do!B2}rDO*;p}6UZE* zlDVMng#VoNkRUnoe3zq|LtH%Fh=JZY4t88Phm4?Y(K%$qSIjx&gXvGCVI`NeC_yzV zr`}}R&%uP<WD3|aRj_IQYwL#iF!zS@ClYr)<2oXHlcAdN5&nwWbD%(=M7fk}RSwJ< z3e1&DX}yGW<kZWzYgLZ~ovhLe?~serP{X3`#%ikK<PMbl%6@eiYC`BaeG<b85bbQH zB|N~KZ+XlXS}i%^ZT$%B?0FwYIJs86KM~wjHni}{l#IodTN#)8J6gl%Jbp6OXwJ{8 zD{e5=2r*MMKNo?xc_(e%Iy!}#!??e;+5ZT#l{wcJXG1C?|I(c9v_?r|Er57a2RP^T zHZi2*ITJKo+L^u_vz28!y`WuaN*s3Ud?EZ-zKHOyvSn3*yX>m1Nc$i8wQCw8TkQ{u zO(O`?fO!=Ln#t^6v?JFl@Tdox(IyR*T%Qoj_(B5>9lSGepy~hI1C87?+j>6O^`o!B zV!70!?9z)+Ov!fu`U-vTUTJ+d7u1CA&5k6C05Ibj5a}YA^$K^so1(kkoL{;6m9E#1 zdtGcRmad0fV3Br~%L|(!>a0)qrh$X=z!d3c)ESe?ArGG2BMq<aPDd#9Mlx4nTC&G~ zsU#}|$g0rRP<tE8cT9jSL2)z(<fbN7zq-7}-T1|=L=~_K+^Y2s8~xrCzPy|E$z(qh z@diD<>>u4;FqQ_TevUdFENAB`fRzedC5)3XVWEnD24`V#_YIig?i>8|MRrICnB|-4 zhJ(DKpm?Ja$x%DQ8SvL0t62&({usKup*26gWr|V1^qtT@_?>oYPGH`cqpBeisbAL; zjNB)nkoXNP4wsKuHAw)chD%e?Y7TUqXlUs`peD@1L;d2`r<EbU7p;k^3!Ko7;`zQI zl~cM?zsIHJbAONP_HWWSy1PbG)TIB92NPsiFe^`KCmSy4C&5=$jkMU;;u+Lcj?zYk zU&x7B#$2k&(8;fl2~9yiaY1TPz=snJ!&Yfd9l$T(zNqH#D&hd{oM>py@~dX9N|es> z(<uG6bhhYFrL+B%&VE*Hbat;irJZ|^w-r#Nv%*AUgAmI^<1kyt#UdA}3eC!<S)qzi zvx!Ua?w~xeYulGjRG}3LOG%Q1<LLX{58w%p?}g(S2H0l$C#qIKh@w8LmYKwgQ;Elx z$fG(9f@of>hR#0e-$BF)t%GM+#~!u+apcM^Y;~$d4f37pz75R|o5Jn|@|p?`S+}y# zq~TCZ|8O&@{vn|F-fb7aiMXMta34{3=^GW_X2qn|aw)8)lvmNYXS-TDKzEnia+dUW zk2kHn*Fk(rJ5NFLF4qEo_+RN5cr#TLB3)tzb>a#G4-NH5f6#R)&t5c~*Tc+%irGH7 zuSDe;d;OwsbtN?l{f>mvOdCY-Tby$C37c?T2O-~t-pJ<Y267p4`3S`hO2mt{@1z1_ zL%nkYFN8ALJsE}7e3^-rIj3G4ErsnAjAyuWfZ^Kr;YZD7*rTQXX=j=QtCps)D~REY zvr}gjHXr!P;iDwSKN`gtP5!lk<bOfzUG0RfxSho6=nF1-+|<HxI)kEdXA~dGQk-Pb z%G7!lLm}Rfk8|+t)vb7<xMWVE@elUHmU~qisJrVFCCc^(nwGm+p3=^!W7!%t%+x3T zfp-AN%lF+tp=w-aAPjX%d6pOWD24h0vAaZE<e~Nd^Ri!q#z)PHWZy^2K1<2|?Qa;_ z|0GXo=k%$cS$6lAZ`qdobx6}V3C*irq9-^x6MIY)_Y-Nf?yfpj_><#I;Wy|EFHbRr zw?Scl85WMdUBMr=Ng(2QVYxPk?XZUmb69b!XbYNUQ+}bwT}VIbQBawd@pL8Q0j`WG zc}hDITp2&DadVYo05CVs+HfpNqJw>yoS|2VZ)7_^gV;<uwm^5xEVqqeV>d}@p*6_3 zhW+P|$s+37;!eKS>f|y-{#QG_fdy>a>3v1~P-&<4V`=E_u12NZC&n5JIN$(2rJa|8 zv;gfZE8Hj7=|KThh&a7-s1rjgkqTQ}T;?7Xwc-{+YF8b841D)i#`4m!W~1;7JPHm( z3LID=7jh;2UlVacXej)HSoa(w>R(-4-0FX~`Ue)UZS~(Ij;FNx_Z6$cudFHc*Nidh z|AjoIoikZaqtZdt4+T&mqW;%xT2a3(uH2<>Mn?`vy|~_sO16&C6-FpyyiZA=*4h5q z5&JWg*m93sTduX-F<K4bHR20PtMhp=-|nt?N}ZqVXViJt{>qwn{1(;8s;gtR=5zsy z8mJF0tdcTbCk}R>PAI4UQwm=s+&;5T*#c3qbH>>awvp$+^1wf=Hb$WnW#ScxY16++ zY7uHjo_3mk=TRV!hgQ1Uk)~ex?>7B`1#H{&Zxd%wx~;~Fg?D!?P;E7Rv}vn#@|1RF zv!2ER3bx>S9w>kc5z~LerX8RUF@3Zzl=pXWXT_oRzaGtk+)z7~wpH*zSlYf;JU`Yq zMFWfZ@fb7txKK>1yDOsVarM5Y9?iNQt0zf4$PMw^DpW~5f`#=uQG^qj(VADA;`J?; z*LO6pX+^v+oEcuQnoTYG+P_CQ-7_h$VNHYI=f(voWhortQgfdkS>?z2L@+}H`I3Uc znivW0g{22Vf{i{|^Xm&sXVd!i8eb9HYy6eF7latN%vMEa_=QIK%S3+1oFYNSKybmR zWu&BG#cVIL4bChU38#bBGTRX7Wi~;*%$5|jROO?$47JQwMAfba5$sfc=uzqTtE3(E zGFxatpr@o~N`rNGEmtiW*~eJLa(P1Fhjn(FrpPMvGFv#tl#ay6w-#j?L_d1%s6>H1 zsb#hTi<j93_eC{VShE^V6MNM%TVS=!R!K%@*Gezjmd^GUbMNkoDxC%QHaa^=p3=@q z6H4l=u*^PHh-I1mq)lHevZX330!4|_!Ag{m4x~gip&?m9@<>lS_8iEf8~E23DNhKP z!*6Zs9@JduahNxbx_%3ITH&V?m8a4!0LtM4{{>Y+S=KwN4=b_2KL+iu7Wn42(lNX+ z1pCFfMwxdM%h#$N`AVknWk=+Ag()^JnV1Mx!cLd$AonnZ0|%sXyK|BC^jlF}-!goY zL2r65P?zErNiV==1E=9mEZi%GN8H-P8><rjX8_3cRy&-8B_}U!LN6Zkca)G^<*=Y+ z@(n33rbLrQc?{K47eMV4+rrdz%!e#W=P@NbR-MCG&Nou=SYFYTYnto|X&hY<=z0}X z26{Hk9+I(jlJqp1;hHMAuPSCWH?-fz-egE{E*@e*`YPtY4`cIdq6pTCYiAT37Z^i0 zOJoE~E0ZHOQGw++v5Q;ZS#?#z15$|?H2?^AT^*3Y{Z|?M8aSJVce4c+rJUYruIi%B zvO9-5yB`4?<8u77w-5UVE-b@ZHb&OChOE6GtTZTBYHr+4)!o4`4%^nEV@NQMoOj@G zeFZ1q21iR)bsTK$Kq@Y7jVIfwtN6_;`IX=g$k$<@Np>jgYQfUc(s{<#2zJ$4!ETV8 ziF*}|%7Nc9N8050rfG>Jsiq}Vp2RBQpN#P`?bA*@W%6_`K9i%m_VnJP{TTEYjy_W5 z%KkZxJ&U6g+SuR5qigJM0+1Hl^V@EV#b!%I)K@&#Oh}2yVJ&bd6_ZA1PziF0IK)ym zj!4Q!q`DgeC3@D^l2Ta3sQCZK-n++HIeqctXR4>B%Q%x7LNeV{NV)Wpk7A<3iG~R! zQ9_Yxx0w{m)XY)GaWrDc<wNL02o=>dDl?TiBVlq4VGy3Dsf-GPKJ|US*WS<NoVnoJ z=kxvj^Xt`|=h^F7YwfkxUVH7!v!A`yHDxBQIIqUewIWmJ%6-uWg*OaXg97zkH^@KZ zO;AhLxJD@ucQfNoYe=UYZ_|%EU(uI><kn66!E5<KEkC^md^h873+nN$Z}A5&kYi@b zIpQuvU~<BFPO=!D;&a^Uq;v5g7D`3-l*`&CTN!z3DWBA?r3dXplH=d1EY0CDx_l48 zty8`R5>mcr4sy%4H>Hk*<Pr|`WhxeGXDc~}Qv=#FBLY^-<L8K%mW4JG5$`H_mNq9y z_QEp$74ooO&zz3Ih;ehDS5QsUZs8>y${_!6VGtK<n+JD{;N~janYD4*ZrFS$32qmK z+qE|Cy&l}#a`5?@k*si=*TSv3)@C|Y5Pv*XgstW!PFU;}A2F8pmZ!^jiGSK2PajZE zAFTBh-A$^!$3G)Vy@Sy;V&$mXH9xXkJWtgbIwf4cW);lNIBpI+9M?QCJj1a>2!J2% z1wN+>*gxya{bZgRC08AkrAa~CR*FEW%2dS~6y*XDK}yK!`QCJ7Vu-np72B=n-I!k( z(YOCgy<TYyO;UIr996vQ(<DX>W*sITRKRRi=mQ_sC=EhqJ({)`@ABf?E$iezR|r1$ zWr4gOX90h5vXsmgUc#X)<`pg+j!P9w=C>2&>F>P6J@qt>ffKccYe>zqBDt&K67sB7 zR-)m8G|_NAF>I4DaHmtTxC0PU|C(Zkt5^r6*fB~miDlu!amYy&OIM0@REl|?I&$Ek z)t<Iud``tk?kZM6vFlbW)|QHi)A5U#F;YeDJV}f>ofq96gbSzI65ZERp3dbZ?&+U9 zXegJGz+;L}&=MC4B(i1#9#C-RVhdik#A%QiIf+{`$KFDToiEW&bVhObFO?dxPr4AP zAzuBxq>na*o309gRYrPkc@lY9?L57pRB-gqYQn}sbwwy~Kdc{sL$<n41;O!XH^_}# zuqWrdc8z?(-k5_so4wO*DnYjif2k?UqN<OB`$CcuHbW>b$40HAMDl6{5Ah1t*E*~( z*Q{-X?vT^T;w@xRuH^;Sf_>;ZsqJ5Bn%1Gc;Ks-STkv*DD-}l60}%Y{1TQ!2t9u;& zQd6wMx!10zQ<gf1oI%W;dePK&FURAJirENZy&EwJ>7Ce`*F*zu`n$g^Ez;t%-4=<Z z9x)ySb9wX@AE6V#H(#pnHzRki>iZEB4LWyIML+Y%b8H@}|EanG@@TO0D4f@1meX&9 zY9cYNVo}*76(a&Cr`EYXU`LFWwlMv)oOoX&!eG@H`B8w4N{X*t4Cw{Ch!om`*uhmf zPwS)9Q!+U+q!v&Hh-icklg6Bb7KCD_BTSnY1To#_U0nI|@$k^-SktpPKR#tg2UYF! z;GN!iI*p@H94oC}1H5>sJt)1QE$?FHsvh)quAY#6opG&WV&_WDMV8B8|0jpbGi?-? z$u1Z4$;nMR<o1-#7PX!epJ!%dpz%ZCkqk35YIn}*s6{@c49YCYiw+(D80dEr<XA>f zUbAASTFE7-)*#?MoE7|Ywv);=j>gUCtEWVkF_OwUuCx1U)_s{Pr?p0jsY;8FQ#QQ5 zwQa-cTKk;twhd*JuI-5tgM5)V5e)gI+@K71>UEDpkyWP=!VWk?&4XxVIeoO?|JE=W ziM%F#P>(ehGD_EDjVw{Rv{*jv#D_*0a;aH>@!}OR^ZIVKHL`3|LUZT4)<ea7GM3)y zV0uJzR8Q8z)jjVgYig_M!Pg&){M33OSXm5LBQs(in?3V?YqPr8$)V!RD(HBMnpeAp z^|Btb9U;~!E$*qDsFU9|TVJt9%<N4yRK0M`rrylg01j1U7HyS_M$d6Hb<E~5rCpW& zA9&29<LXzvgJ@V<tUoU5c8INdfAO7|*{5qAs=FR@ju42)yzXFn)U;KP2D6j_G3Cj! zuQlqgmKkGV6m%T|A%K%u-%E+;$>9$=*%D=B={YX%<Ja8BeVqlBy%B%6U@=++a^JG{ zL}mc*?4i69-_G)LTD1o-j+OL>lIaK$OzS%nczlJ!*8{SSnfGed$-k7S3ZMfasnmKC z214~nW{LTlKvwzH#Y^ft9@q#FQ04`fOEkig_AnMmk(<vBeRqh~rNw6{uf4gIU3A|_ znP6M=&SEIgq-sHuJ#{@S_+s#+E;gb^MZDRt+Bd3Y2N;W|OS)A&pY~Q&oZ=@VEA9A5 zYBOmkSAf4`rn=Zk6=zndwn3DoA`-FcveXbUNNMpvWvR1U+LkIx;a$wkQa%HwnkVfb zCv$kK_h$}Pyjb=-p#N_i<Ut8Kb*Vi<v@0zRD77zWVXIv#MUV9#9qn>=)po1)IKdYO zsdNzI9YohJXT|0gS-7{nLN2oG%{xu3UUCtKqna81&`j2zs4-HD^SgMGS`wMJhU@%% z*=M1@C0wIH3<&fB!R2b1U5NQOW9jyai<;;@1|DtAlFF%8-{H*@g~EX}yr})Tj!VaI zZZzi5WFe@|NBPn*#{dh9Inc3D^v;4)5B+u^@oc#Ib0{Yp%rG!d=|idPW$UE^Rupf~ z@pTwk85BdB$L3(rw4wxyMhZ)?zzMgQK%Zme1MGh7o^CI(jRp2K@fp}<y*eE_TTkGJ zt<tsSk)ivLO{G@22gHF=*uU90<Zes>Vrg$Q<u$1dEM{f8E+~aJ;4waPgerAYDn%uF z-1Esd_i_C4rB=WU({0R1Rujp?eoic$NYc&=EFe%wvYPNyK5SHRm;b)u2WTGS=};rz z8zq>0KTtsw1Q^WymMIy|wPnai2I%V)i1jUstvCq_CfEA9`+N%K2bzK<Ij}#7*9$(j zwvhw-!GSe)U>^V`E7RWixfR&&J(@y6t&ApN(Gn3iZ%6WtzHvzy<c@2MIn@EHpp9=p zxB{Jbrn$mY3vw)}F-05;a7GR#Qj?C0byj1RNKLI0c^K%rMDEOIiC{O3luk~?QzbGF z0xD}Le?oaGTT8x-U)4}wv+3ioIVyq81rD2;;+75@aLa{|!P1(hGGydy8+MCDU^G0Q zqc0j^`yrH1D-2#)oVFm~Fz4@a;6XE94$7_m#><I@1#DZ3Jst4B#=c!G_9bAi#@l~p zyY{tcH~eMVbkZUl&MRc@6)*ieN@41uykWa_K?cd5%J9RHQW@NGE?5L%JteOk5uG&G z8FW#WMgn_TaW3}MoA6Hq!sSwV!s|ShW@!giX}nAd7-qmCsUjTMn};o+aOeU;#>#!z zlhFRifFF~D@c}JPZsBUwB{&9b5xz670Hx1bfFCgAiSvtcT3{F-SYkaXFr3pxxO`bC z#}0B+wVBvEt)0&|C7Bz?oh5jgFcy{^Cip*Q00!WwsUdCA=|Nz{ekhRvh;>8Kk=}vy zUSyTIg!xtKiQoWJnXeIqS9LNs9C!`iB2}P86Zwk#v+x}k=bZve^dUDM)u7c9M=N#K z-2Yeuh((c;DUc|k08(N3AlQUYL>K)e1Ist#^kHbXPoc42DNBe5PoIx6D}bTqK(XAx zYAHCTXX-qbNAH<fIF2nvEU*OS;<GSmj*<mE#EdJ&B9vm0Q;J2p6z2oCsG(A%1EHv$ zQrv_zzFm{0Qnnc??1Ee1KFFXMQug9?vi~y9bY_02=CN7_7ScX=sogrTh<BTKx7Z~V z!(!@DW|O8$$<wxWhRVDf;-5=qnVX>Ve6~z~{VlG)`)1U8$e&7o2KC>K7?>_B_jku^ zBBuJLW9Y;=!8b9CVjL3SI1Plvse#4#NvUisHi-ll+3%tU5(kC6o;Wm5%4!>DfsK={ zabTGl(a~a-8EPBN$j|~zH-3#jd=TQl^$Y%d$SJ+I`GfNN#7x2b7kqFD>(mm|`CR`j z9#4-W<7RH4<9X-fxCx>@IZ(yy)}jsaZ5`MOH!G)`RpGP5p-aH6JkG}|;A0hzk5y<N zD*|q<mhvw}iY+vVR5Ip{g~Nezs=zb;7WrpQ6Dy=TXJ2t&6nvxz1YC`2GaA8dIQ?ME zz^&aew2@?wJ&r-Ei?O(h$9V+(=dBB`t1^n&zr%x?IR#<dX~NwQpawsg)tF=s)LiF3 zF;H{+={)i+w-M)rdj)Eyv|w@~l2u(bQZM61B-Mk_e9%fBR2jTfJ7;#KqOVHkGH~Q~ zj4Tv%YgqvHymk+et9k7}wR^(c)v$rY2LxD3CgK_YNh0p$rMtP3gZ(t<A_0b`iDZmM z?_I5O*j@K36oS`bR=k9yapJrMaWH?Ln)aw<F=`{Tf%e8cq$f86;Rz*G9e|KBQxL8! z6;MzXLqI8<?S+0Uzl}S4s@qbja+Br)Ch)(4ey$Q5-W6{or+_2D;S>&?s{$!5eh4VT zvFBkCJ@nEW<*?7}v>Y|TA|T)&%D8i&rf%+oBbZ+m?p#sDT!P(k)maQcR~-Gy7s14t zL&<XHP#7-5nI(hqVa{MSPIAa0Uk93Zz#-8Q#U~fWR@_&m;O3?YxZx0C3knbpKE1*x zFSOQskXPEs=i11~A8n(Y_D#-Dc#!AW$jxnJh=Upv3sj1q^MjZ(0+n1{!xlPFgxxVV zkFAu{8G)inyKOkGC2F*xc2)~u(LQ?qd6msL$MPfZ@%U0MY_umlq(cxp@IC-)o3<Ri zGO|QXmDCh3LRmQ-^G{k!{|VMblO4vSmspy6sAUb;_e*e3%M&LR_qsHOw!?j24Nu2? zhQ9BP`=Gw>jr%OQkJ=qG_?bP}0!RDSRFkfJxIlbKvMU04x@N`u(dr(R$Nj2zf`ZxN z;+g*yR5$jEXa@1~S;{}jQ@JXvcev(@q5+-^WUR*#cIsePp<qJlSngk`%5r77j8I9a zZpM-OxkAKfgNqv-&cUlF*2SIwN%~*MgL@<kHy+GFIxZee6oiK2fztGEL?^0toK}r7 z=#a!b|Fe&J*PrLCT(`VYW~sVZP`&gdmVBTjb7?hBRfk{chK2zvoLPygz6DhsB_;a` zRtpz&?hoX&JCKulAgAI$4)!Fj929<wYYQ+eMy7gL%sX=xN(sZ_-YN&4-wQX!j4Xpf zB!lmevPZD~61nPZcvYo5Qj;-X;ngVWn+cHVUzySLI$$56NQbi~K*E^0OORp*K0phK zrG|>}Xda0;X-R=+3ATP0$NdSm32iK69CNk#U>W9t-09nV+((&NN~J&!S?N_g@y&&B z)!FImvaeA<+7-_vV&jTu{#Qy>6|o~lb~jD0aaC1OwTQHAF$#1|Vm9f5u4*OI!xg#I zzzTIAUuAAgkt)ON?HWwMCpdI}qe<k3^ll67G>Nl+r?<IP;4Y-&s=%#+P>(x8nzN_= zZE08qx(Qp=47W_o^Y`Bxr~=4Ss(@~Z2V6?$%YgGC;N>iVFhzqS!?V;?;wsX?43(A^ zvM3mt+FPYZcjpzQ+)iDk)*wA0S*77bBheb}NFH#>fQttV8IW~ZX87wtVTMX`WsRx< zaAdZDI2Bko9J?44b)VCcsan}b0Qo5I|N2+){z_y~slDHyf4GXImDj~GnldP&ohxRG zuiE@nj&`JXu?4;`A=nWqG^XsLN-Hcc7Q%`zyv3<iIq671AG#WjRHR3%4o786Os6i? zwZy+Nt0|r-VKC8ml}p6hEVG0XClu{M(7G6LY{PMnNIZwrG-R$bzFuMQ4YXaSU3HWQ z>Ph8w;jE_C5imf3-GzoCs0XKGvx!;HW2KgsAyr-DDjzboD;}(F-vTO?A0W9hJwd2d zonm^bPV<U%L9P;?T%23=qGF3`2c_d39b1jzNL~Fhbn(~|P$fSY;}<6+XTfF5;j-vP zU^L5Of>X8pMSO$l^0M4}kU5Q44#CE$YsOT>s7V)V;Amb^vDu=c>n-y<;nEMj4_D)0 zZ2v3t4rC$T!A`e)SS#l|YUW9*8NW$&b&yT&0_Moj?Co(vG<L|%;3_(#xMatT!ANpY z8h1?d9td{)DcF2tP|Y7ZJ`8We$r3+{N-(DA(GH$ef_s=xy1v7jOG%n_yE{a(-Mvyb zBDO-0?iIeYZ?&#QIr!34G8wL#HM{d`{*)}4klQ%zd0>+@PN{#hs(aOxcB<l914aoV zu`BKB-#IxLE=N)1+@-S2$Y7J#l?imjGqfC8kb|tWvgm}PBbBKi!V(nLu3k0TAOS~K z_AYr6JpD&(b)54^h^$wYdq91uz^W}p1s<<+7#^Pk6cje!HnXiEalr(Z{ir<d5yi7B zFv?PhpH&!0#>@-$ND)xPO2@3;0#kuVRcKQx^l7NLP8CRXdL?R)Ug#;ldbIF`%i%y# zSNjc^DRf8~@L|=Q3N_UONg>ZWyG0&I&AJQ6=}b5ZGJ;Nzl!CAyt<d5;r<u4y)eN9j z*K$RKoSdLMK_<f#b&bx%Dfcb9+>tZ8@KWxOjz&}E&KO(6)rJtLR`fHi%TTc#_3E=s zW63<xGN#w4>97n+CkOR~nu`@GVFjow!3fX93L}0JV^NP9yZ&e^U^bLK7c*}Jjw4f@ zCf8ibL9xXRSYGSf^%kWi`F>L^`LaOl&Y#_KKBg)nB#fCqDl`^SLPbPV$TlD}L}4>8 zDTE%BA)ydR?kxm==qQIu25+FYD`2(u@C{8MAaZ3Glkf|9I1+MvTxln5aH4WXqH=jP zNw@t2v^9!b0d7goD8x))6p8GFjYa|CdNF&UlW(j#MWH%X6a^v`u&WYJ%1n>yq-I?L z|8ckrr+K-I4`?p*R-DLTGjw4nw+rKf-)thWf_SH0mAz_Of2rP%l~=Ke-nqtY_3X(F z7$BjsloOawgJe)MW-ej?;Js>UagA%<T{t`2?tV#{JsL!|oK6nCof^Td9PDjNhb7d9 z^LHUnRnT^Q$mT|5BGA?Huv9F^v5YJaI`F<~P<5?ohki=6%r{73;@HYbkINonP7UfF zCkP!Xk_wirrRdkJo1_^H0nB-%D$Pqf9pUiAr{f3YAiX0lW~7z4%ZM&R`bKdQY{-QK z^AQ{h5H{y<x<2uBel#!#@ACaC&_N5#!CVPmRI_J+k3f_0wU-7qa)7BWu(1Pd=K`BJ zz;qXAIKb{Mu&D#=?E;%Qz`nuesK@ZzC?<k!0dwmTkic335?D(>0&59KU@ZX&tR*0U zwFImT7EK<TJ?)w?W3z*&pcKQHyDqwV(%4(aUO(+-Kv40}(<{1V{Fqy>o-}@p#wiIF z<&2#?VeBpACu<xARCIhR;eD*H_&A^Ho7N;1zUFJgM261ip)dXwhx%8%k5hf5kceK( z1`3#90|iX5fdVGjKmikMpn$b(z@S?lJPDdd0{DU$ZE$Iz1QUn2ISGK$KzTY6c+&$* zlm?d2g^M&gfka=DrqOL4#4O<!dBh}-BJ%j(a;FY>IUbmwjI8Ek2GaD0a@D}208@(L zz(T+aP&N9ZXe#oiFKp(Y&2B^l529^DxI;xXmTyn;MVd51hdi40Jnm7F2T+HljN<Hx zhDt%>Oz%MBO38u76{rJ^^M3~#SC<u3yHRr-)Fg*tR_Jp0-x~IR%bhxu2WRFKVY=K0 zlm2gW`~SJCYFxW=mLrsv;I9aOOISnD^l~m8l_IbRty9Gu*8GZ6GZ`U{Ahb3%DAfTq zvO(<}P-6uOmYV5|j*7I23-od{ykM7WQ!m)%+)Tg}E^fE9-GA)2yTNEa!#NLzhZaa( zMMRDS9*k!Bv8*e&uC%5}IIsaBAskpBzYFDek^C;kjL=aJJ=QrE*c5*FkQcG2;k)x+ z?Hdbx_(0^_ry_w3++pfkMgYw0Gt^fD_UjfjAJ#a8e1yx=N{Jylt}wzTRp8ZcV2ksN z>p1PW<38W&dETgw=aru4jq7;64ZTIY-6}^;rMOe6O_J}HlL8A$GZ&;F;3Yxjp$ozl zkTR*lIO?7D!^8+%K?&TgrGc%fkpNRz{Q-%#o)lPEnz<0%79|B1Musl5DbIUuV@m{9 zbbu6YWoc$5u$cM~%QJ9yQeaUj-lRqXi<1J2B10Ex%ARk3d-4roKmywo?zYm*ZHK57 zWQP{pP6{k84J?MV3z7nhBSRP4c^-bo;*-OH#eCPCH+>1V^12T}zK$ZPi3MJx|Hc9` zSd0Z$t5gXu@PoWce_oB>KYIlV4Da*pqKF#rZ*!Y~GThruKn+~}5EX(;D^uC7vHzA= zl48S>U05px0{{_CX;@O4Spp52f`)`cL(QV4&7$2&fz=w;!iFI$8`j*0AuAh}Y-hDP z5?Br9D6-Y1nX6%PrcexoqZl+>-Ts$WBC8?|(+!(wWy5r{hMuI0ryDf@(6WO$e5D9& zJA8#HWK1}GMYGkdon-ZzhUvCWva(^irIV}#W^43XB=8y-!(6YG;!dTIDdBKt6r%kL z7sUM{`CY6XoX!dyI39lCM8Lr>aKxcd7fe`|k8UWrX=7DLY5;&KHn7jj%huUIg}G2j zz-OUN!h0c6Kt-Z}Ai>QdAwi~#Y!coJi2^DT1q2Ch77GcqSZtH<UPu&BktiTYa3dA^ zPxM`gt`8$H6h`md8EyeI9oy4Knsn`sdJ)8sin~d0l*2?dZt)i%VDJCM39$NgP95|N zc6+%7ErIw_mly-UaE^_GuVX*Jcj;O%z9pC%H~L{`3jqV{=*a~t>~6tSe!(&RyC28; zPC$`lBZH27@yE+cUfR`d`)EMtDBPl8@kLc1cI%H)b%9hBBP;Ykil_Byd;5iVmtXBZ zWPD%50q$mYBVB5~fn_raXJ31a7%gTV&+$A53jhX-XTzVCPCM-hd0DHVY%r6_EWa*h zl%vF9_9ameBM7X;j8HO5B{L56Ye`lPjB<zB{fe0YYcV5~%-WIJb`1S%F{2SG9A*O* zGXd6OhV=r0Md`v3@BRFFYluuEA;Q9$VrEmJUJqEw+GZNIo0%pNR=yVNe+BPL2UfB6 zPz~ECuq`ml67o!tQ(NAV^KoJ~R2=RQCcdzWuZ4fyhT>CB!@N)gj^nWCb-_4!^;UV+ zUs@&T;*!yl1dG*?7yK|GulT~`tSSVkzc4vy`-^#1)XJ*@Lb_!=T;(Oe1j*%f7P^Rk zEw8GyVDX#R4?C<EsvmOD^^sDd8l%f}AB&iN2p74IZ>rHzLmCr_3APZZWA~ys)PyRh z7-;#{9;KZqM3O%#aQJYtNW=Pyqb>Y-TnncmO$0LQF^|OjayYy$SQICKoiVmC5RYyp z8ONzp{2KzqQkcc|G-TYQY9KRG?VrbJbUT}6OU-f>-?+!?!ny%2oYh){0q~Yd%W$^@ zJ@1Y-buE)BUnw<@b}<~el(X9y=?;dwp_&T+HJGBR#uSywr3#o!#~)|#0n-y)Ju$)M zOsgS4$1iRGmI(u*q2W#o*y&#;PW$22PD3=zA?}64o0uGR2vQ@)>lfjC$eN_=elcS) zZW)7A(1{uqZ@i4p^kZhnCP_Z5|1-?bd2MZs8_IQdKXM_WF$VWlx5kVKpv4O}!P}tm zGVqLaOLV#~(r*CAXRg?_{{R^Oh>LmL4&1Lpx3%UN*f(ii-Z#y9tP2m_mp6T1v+S=U zfqn9A-9Rl%VPh_<QF&Ki+Q?UCe1YGjGUH2L^y_n;B*bL_*cpoJR<V~RFTU*bpjy3( zsmWx%*-CZOvK8~WSP!-qI%CL!`S{Yx#`HPoBKz=0jqSvUwrv!Q;Qz&FtBi3wXs5Ir zaIsF6w~l(_XmyTD81>i57a!yW3ML_=$$y&B{k1YWP$e1pn9<uPDRckM{it%T8glqD zq6J=``ee<xY<A~g>GQ8F>FP`82@l!G``0yprsU7Wh*L68<(-d<+7UJu$c2fyD1fH+ zS#2SZqi3)$oO_OK#U9#<<$S#=dnRQr35G|a7Z8N(+$|}y1Zg}DqKJlfM;awCatq3- zH=-OXN(o#(SA~H2xGg}v&7Cwr-_4(V8Y(axiend9go!n{Sl1F*zy<e<fVBWD76rq` zn(bo2wYXSeN*^(PCn%EkhdePJR|x+Spky<D65hc`{*X5+{=}VsBbgA#-UsvC?fda% zOAa^HosVoWi5i%bBqs*tBFboQ$Y9y$PR1ml4afjsj(=8}bO7w_7sJ!(`d$6AAB92T z{+=P%d!M*NuJyQwJvi%TT&7eQj*Fg4HL?{bhoGyZWQ?VB(@5Gfde2}5+Rs9bq|vXe z(-r6f1sY7yu?iGapg{z+QJ^;!uQKwI?W!ZjZcBLW!NuCCO#780tR&%Q3UsBCYb520 zDbOPd^e90bibA0&3UnJmPbttP3Unz!swFfgs2nHa!grj;XoYe$E>*W8U7@nyj7!xh zq?f4YOZoglq;pkzCevpoq)%j8DLE6DstyThtlBgtn4<ASUc#kZ<1L#!l&V1k7fSEL zPi751ZwtR4ln+V}hOn%l93u<#_W>;ZCLM$7<`uF)+!<_O<-O3R2KK=L?1ksgfmS&; zSChLjoIZ|a&>v@3BiLpl%hbSLSx!G(mebb|fJeiz-I}{Ze#Bp4M)^}S!3>P9#QJ<J zw<ZA0)c#ubdV8$s`g@XH9w*u5agvpwHq@bJJ6BEI4K=a)UWQ%J+}`0MWQ)OP*gwRE z-(thX%Jmq|tLvyZT}NSA^^6i**N%0FhbkM+sbO996!JzCtBfOSIHE*ZOVSy-aRC<S z;2Uh>K1T3b1~FaX?B-t(_9m^vyLUAGN#%k%y8+Z57`oP=&F`U5xl*t`u2@W?*kTo+ z@a^SAMp*XrK;joOECwQ{DcSwxYr{{>N4=z}HYs$AWbS?B*WbeU(5eP~okxD%AAT3g zz6mobu`Z#r?_fninYJFf4L>6*Bbhs-f8#aiZ^7n>x8+#d8GZ{}Hlu@77XHPCZ6o?8 zwb3`CpJk(etkJQg$5UJ5R$Zo27<&Csaeb*wst$gJDrMJ19D|@;RGOI*Sw~8r#i+-_ z*)e;%^5@#f@L(L~%%?c0VEp=EIF1$Hw9(OZrQYH1{wb<4KgGzDN{#Jt;HavW^Ls8# z5_bO@fJ$PZlBzE@bmiJ4AHhT%@2xG&|3Y$As~|a~z7o>w2m;9w0aQqlFVP@5q`nf; zORP%GWJ=dNCHZCyAL}#Y|3Y#VNR`bmPqev;UmlxZ9%pkqpee}@|9>pG*XE-VZLUI_ z$L6ErY;MOoCHY7UZU3^(b<IJ0$7(FL!QGXV=JEiN!vp)A1};@~ayt2E---SN1E)K$ z{O$*CCube*RVOEE-2Q%&&&p@_BWg_N{Zw^-7w=`YThzFR_oEd&#QRIteLnB8?<Z;H zzMs0!BfPh|7oJ@__wCgE9mHv+?rYw~z4UjY#xCCPW#=Sne8+oJ-EZanR&{?KX)DzI znY`ymw7@@=_ndFX{c*fstnNGWeu26_n)eT?`(t=7Bbune`>MM@NaU(1xDm)L_RSdF z9K}ah;HEuqF2)VHRSm+8P-Wnz6CtPJraNx97=DJztA`}HpULrZ7nAn_W@F5@sn5Hu zukCqFPCqi#&%wwx7hCE{=QynP)Q=98L+^d7)Ij``J;4{zS^&!(4TaHJj>s19fTD+v zDUV1d#!4g6hfWTLvA1d@6X21Hf?<pk!Wbt+Fm8xo+z`e%A&hZ?th&UwAsp<DbYG+^ z@O%r>8Au1wZ?D8!q%6hS?qEY`P&>=XfDtptLOTe7_Y~7>d^yczeM!|F(!6mK7!J@e z6jUpdObkoVm3LOQT<Wa8IYTm3Z>jt%QWd$3$v`uKZ18>y|2aJCyDnR=jA@I}f-JF7 z#|FP1x430T7DR=@SOji=GOT*#oI@4Ka8=@TN0EK8S(W8esw_uVFv+rPA`fC_D=Nx~ z!H9fVLE?5$4Fb&xyr&)jpjPrB+pKoE)8A{6!)04UP4_%W*KFF!Rec>)q=)7iy=BoM zNaRDSNf?WQJ6F2Y@c}bAC&O|mHZ@L^;bJ46Jo_i#Ff(Vg7{T6lTgQnJKw4wi==soh ziGS86w0q76*~)2as<`r^#+h}!7bpa1v*IddoqU=(Uu?$W1W<~T4`H?jhS@pK*dNs) zw{Xpzz&>+`u;I8I+g&8RPpj*Jc@sH$v1#t~eOKAOr;b|0ZW>M}LUU<Z50|{kWQ;%? z;=x%FiD}_ATw96#vh}ga_KC<}v2%dA6`Y&21b^=NNvNd?l|G|ysec8Ev`9lx1Q{rY z)|_;;QPMHV^4B+UKIuJdlc+Y?{s(TkFD?1uV`4k^cFwKx_;ZjJRh+nBhm8`10fq%T zY}jD|6`x^4!a{Fr7G6s@ELoXs!CAfid2g#NeCt-7H70~t=<pevO4l1ZNhXs!IgjIQ z$Jg3Y?W$Bs&k5~I;DxE0dWrD`U_9}EK<r;D^5oT=dDm%qH68u;wuJn7X2-mmqy4iF zz{lcV-}ZXPZDu>;9t;mu=GENk&)<V7EbBes=dPhl{d2nFlXgD?N-V(d2W^wBm3suw zi!p0kg*5<6u<wZ=p|Nz3<Q_;pIkkIm#r46_@iHCKfJ|#K?JF|Lx0VpRE}0(T-0;E4 zbQWZS=B*ph{FH;w<<s_(i@fBiN0)bG(d$7~hsnrAmHC-c=4~3V?<iy^_HEmM=BFRL zOkd%h1ni4FbnEr34{8p&6sI8<rTLwrISRF2Zy$r~MDq>}$aL1h%k<rmwoJ#0O!5k~ zo*GzzucSn#^af;lk)Ki>oVO2wOlJ5Kb|Kh~6*BC^H)Rk2f$KzbjEf|JEv~&&NX=2M z9U*U3Gu(7)K=9rCe(2x?pMQiCk)-L4^4pTQK;73##|LWcG$!w0qbXZs>`cj9mth}r zzSp1sGNpF-F#b1llM??=b<(xiCX+at5_Q=g_<(G)uW)G4$VRg;L+h2)pBF_eb6~aD zB5;%KSuWc}!qy)eN;(`if!Pb-_^OhzbvP58qSlQZ+dzWUc`ynnZLL4=NsyS)kL(u? z>KS`OnwI@rO{=@O@Q@O9+>YJRNtce!aEHbtJik`d<mIYy>(?S1v#_>gZbo%r_V9;# zQ|i1mqFnZ^@F)Z`T1m8#chQA%s~M^l==1qu)WLbyncRZik&;TpS*=GyWhH%x{is8^ zYxsLb&P2%Fj&j!%<W2d6KyoO{;J1bc74P$~_qxh?q(79a%thgG7<v}Y?xrxPHuVZ~ zMVv4+!ol>#evxg`MKzVbKmQL`B-JU8H?54ZV<CJ#=DITz3GPf#Eq9)LoKsMVKB(|* z9~_zUJiJQs5U)Z2q^5$Tyh?84yy|Rz&vbCsFwv|!64o6B_QhGptsc@bFV<1uol+-e zJ^h}<tk4E8ov?1==ERtleU|wwmh!0ginXdaDDZ(n-D4j$2DwhNTPrf4>vu9fxPmXi z+r*ayd~oJ@3tbaeXa>my9sGF>n+H8(2FX{^Ez}`B@7?;$W4JkK^USVj*gVExGLOgr z^R&U|RWOgNfk3?%@WGkq1#}c0p*{XBu7RM_ueU!m$s3r&4cvO8BfcE`X~(m8HqP*+ z-&CC2_GdW5{UN-zcSS;WVL8MXtx>AC`Z57A3Wu}KM&udV0u(P^wR<c7<nzqNaA&WJ z;*EY}xuT1b4PVaYm0}j5?m;?+1sE>hi@HtZ<Q&IoThKF5D%0_C6iP+bTA@?~d~l`G z7J~#wjd*j)V6I;$e+b({vAZjCW=dmceqsk!hg7xI3>@gkfVxZ*nxDxT?xTbNK`-be z3nEkvuS=d5IrqEtiL7f$GB{3>`0V(is3_Qj3l}kEPy((8(^R~T!Kf=(d`_In>esD7 zLq3B8$!Z%i3aHC8QQL+M+3mk-$i{J!#H;t;HRLRepdFnh2Gr_nHXKHEE3;*_6Gr>J zRbLoQh|p+dGTx4_!k*3~g!#Lz%%<&9VY~kKTA6DxpW&FNt_spwodE9OhzS!07XG}Y z-q07%#tEb7DI?}=+r9rlK86){HAI1sMkiMk%QQu1Llj)b<WS^lilZ8$K>O}eT&O85 zTGkH3iF%;Pb1B+uij@sfH1$$!|4C^c0tMoqcb3Us0lUNWR?z=twYUl4R|`=)PK=Ec zBQZ{-*JB_tPQMm8OWo&*q_qO-A3yxRQuubXZnj|2H2*5rX8ElBo$uAb=0B-oVIx@E zBA3L;nW)x((;^ncvE`Ka7j~ZjbJ73Z$T+UK*CIZ=lF=4<{X1n5PNc&}bhm(Qs52dU z4y5GzBQ0EfO;L_;Tn-KltMj=N5&HGYIZWd?oGoOIS9S><gAV|8xJd{~?8(g<uliGU zHue8q!}Y?fh9gYvDfLNcG2F-TmDr6R8?@UE^kPG^uxzwib)>@~UR&9@&bDfzAJ#eG z1HC6~Js{cUJmqB{maRR@LcgJeDfwtxG8}4$3+GQ>;!P5Ik-Yk{`<pj!h;P%_EsgSF zFwerIecheWbm@#Pwb}UdQy83Mp>#6EKkG;QAakbiru<F9@J??64@>4(xM(^SmLgvq zsYMK&#K+4S`gH9V6tSo9<?-<fSq>0L<b0UTS)UTFX1zuu4|JMG#%GW{(7bJZywcK; zdoz(^o*U3TyScJ(681pM6Jcmms+;1!yD=_hq2F}@jH7BeWEB^gz~W83zss}9r<-4| zt3xWHH(U&OO>Ku24EKatc4r4BwOKKtzxL~%(@e>hl)FZJ#GlV44Y_MXUVr|06(_o= zG8o6)kJnBl{a{b2h-=mVPE8(%WuD7gQmaUNi(V9IPUrwkg}FC%#i5OSG;<9vvLkFu zcoq|9d6~dX3k9)(cd!Lmjx-<dWKp$bAL+-DUZ^eOyoN2nN{><pC~sm#W|ol%d4`zO zKdT?bvQ1qmCRG*qV1@=u<O?TVeuc_ph(fVY26BVGdSymL(pZ<L*L1&&!*PQVuIW~! zs`Y#CD;4XXQidW6m*g=aQI)UTT2?+TUr6A4E09n@)yFt<)X)dZqT_ODTPb!p7_E5{ zDe4UcWWC`v*?;$8l-D+J9j%b+K@R^~DVYWyXwYCkUsbv$b4HmHz9K6)ESo1afYXlq ze-UO+kQ{R!L#YHIqLj+3%EU~20^HnAZh%|AT5OyvVqhJ04pwJm7D3Pink#IY$k1Fp zwKE^2h+F4Fz0NA1gE6*rweuuf8k^Z8NS#H=W1%cus1VnVNW!B{5>BGE!}ZUvQyaYw z9CkfjZgcu;oyf*R8S9`aBYKIAyo4wP52(f0DCn*DBy^IHQt>*}fA?+Vb5Mirs;d)y zVayjY&O%)C&I})fMI8Y>3v}?_9&1mz-~w%1JCvVVdUPwkl^Yrif9EXWi5hKQVc#rf zPG%j98eO`;R7gGu%)FWd*=+%9r(u}uCJf8;qsEUfE3$iGA@ku?_yi@uW%mbiNMPxQ z>^523p(vjCawbKLjh!3$!2G#4_Tvb`Qk8gA5{r?LjpOjxM8QOiX9=N|0QndYStJVP zj|p?G$+=%;qt;iQ0vQ0y*IDmH46j0tm#R$qNG6x4M0Y0A&O`zhGQ$N~=q5$dPIl6l zO1FtCb8(ca@hK)0u~b)tL$VFgAW|Oeg?CM~MR%QNF53-R(Hk>2VhrS2!NTH*7~|o= zSQ->gyG~qrXicP;c}q5_!UP)^7|rFb%)AY{M~pLUnv-kOY<-D^K$<V*uFO1#UWH<h z<O*Y)oylU27$Z@ul?D(!SWFm^s3`!41L+M=`poGtv@Nze?<c%wt8C!pJ?<wg$Lx$r z{F+xE*c0X9Igvtjo==FU?hFe5gadr!xb1!rbgd7whp?e4xDgCY^Mm0~CG(lNhL;1F zp_<Yia%WO$tgY(<;Z!t@8mEh{F>?sqQ7!h16bh|6y(bb<0&|u0sFmOy_MSC#Ag49V zb)sgmzi2<t211Z$-lq#956+45SR!Qqt^^Lvy-&KLQeuA#BUWK+KgB$%P8X7;VwZc- zTCGsF_8tLL1Xp#IC1t=hu+k={q?S3c5(p}sq2hLRFv@+vumCQa(q1x<7?uJB;Dy}9 zb_=mnSPSsAO&FUxV3Cf(|8X(hMDV|WL4bb@o>UUQKV1RWH&O0tJ$eZittErl)WoY? z;sq`->ITl!qHeg(i6iDZuWEuPf_DKDamOF6hQM0)nL8$kAFP>AV~3X);8M#7A$iE} z&BV5SL>lcmOJ1Y0E=Dx%B6%!B?>4XmUNMLEB80d|h>M6XqO?A6s&J7MwN9mUb=6%8 z_4tzdDaC<!P8E8ScGfPNCob#r=T9YKv~Y=Hs9ZAT^A{cCkJb#c6kbsr-bxp*ug2@H zG8VjOVF}TrDTOXxs>YKAwK%X;5cEM-DU)41bGcGviv$N7kF^y1vRu3pji-CZq6f@% z1d7bAL=kn$6`;=`^KfW^(m{9uc%J|l3g>9Gdd8|$tZKY^_m7TJBuX5dmMxePBUJgm z^MW)hs)|)CL!1r?H=J>$^1`Qu(dC+R0jZH|cYFqkBHp5tzrjtb7?&#)Gjl!wwH)yj zi0U|EmU2W|y0!<3{lm&^d2488Uk>(wGnV3n62_+EJ+bK}o#k@aOq8&ONMRcr^n+HA z1+tQh3co=WwTc<?P)VWABajUCE~h$qYk2Yb@7u(((@{njf}Agw0Fz3xz-z?FQgDkF zN(n`^rKN)0sTP!p)esU!I2L5nTIgjFB#Vf4Kz+2Du;{~2w_U?mD%~n6IP}<zq?O7Z z6c(Io^;4jmwU6zj)=a|jEBfh=a6l=!T^cazRSIwT#Ybc2dw4EZ4JPdNa2+Cn6H$93 zq9Q)!Aizn;H0=c_imN!`M^FiUzjLw7)x?q$w)HVHhc=eY{)VFOl*4cf9z1J&wbvZa zLkfm9lI(;&Rp@mZ3voa+oq=n<?1n0=wOGUgmCYByFPd_<fJKb^Aco!C=Ix;1IAu6- zj|>UyO;`ppdWf01;vkS&<PKC?4^eRL!Gi&H*Bnfpaf=Gsr4P#xuF^?viGpO7=joil z&z^^K0>6|6eub9>ewLF&oM5+wrGQQf&B2w;;h~k`jdN0AyDg2Yu#F_F96g)k8f7t_ z;fF7@vHcuylvJ3M4_!e|0E;q_6~f2w_VElVyHg)~a~K+4vxWW@US5GqqFM6fp)b1y z9Es0;I43w_bihH<EQP+FQaJK?2`OeL6q|Lf3cc0hxWbtJi_|I!qA1aSDvU~EM5Cr4 z3Wjb$cVP>T$Z~m%Zh~MH3OiITe5f)&x;n~hDi^V@!?C5^*SQsz42QOXDsK&cebXrQ zI2=4pslA<?y`ZIo-3-sR3ZTwRAvgf(W}w$$oT_O~^=Mk7Y5Ibu>Z*w0!<baMo4>Y2 z2I!F?N7dsDB9cH@>3AOXZ{}2HCS#RYB&rlEREmW}F^MT3D&8tEpZ1cf0p3o{w@aMz zQ=aTrL4J*#r_Nr@n_lV5Zl-odr|P#rM5=z0M~ziljfpUpm5T@Bc#(|0LHh%P?A`$3 zI2Zaej3KqPg080Q{(@K5KTvU`hBne!9p}mFKAlxldbquDdNgI*vowj+&>c|Ki7e?7 zS)#^lAwvh+_!o|1785_nGnug;fwnKdPUYaiC(c)9zKDfVZbe5ggu{W+Ht}VO*gG6Z zdYU4zYhNyzm6_u_EN1TL%`plVqBDqNA-Y@&x8RakQE((CAEJxQ3!D@e=QPb3;Jwx- ztaP7h6N)inlpU(oT7w(VG8@-(kPzkW)snr7g-iu35wAad@Uqu%>I+XCn-<Qj9*7gv zaLPpG%;`0QXZd_N&7tH-u&Qc?n`_B4(toH}BnRIyR>PDSKj1_;L}D?>0F|wB#VcQN zBk0T>9Q42{<y1Aiyo7=luEuYIQ6g!-(HYPT3nCl56NITY!euYO9iql*3T6hON)V$6 zB1fV^qfC-$&XypEH|KPShsvgGznr#5u1dVkYCwxRUIV0XXe%D(t>JH@oL;CJ7t{2p zr=*FdY<kXiNu~D~$fU;fkHSM0oiCeoN5;{uPM|x%p}R&ZafqTt#7IuOpNft2z4G|v zEYWp1Ls}t1oM-~ukHAa>Lm^@`MVS-g`})PUKSYc>5RcI1XdN*o;trGB*aHGL*lkjM z;TAE5B8jhsB1RT&u%rs8=MuF9sQtaD{3xR@O5Iz+CbpJ}8q=f_$IN?>F-lL2j!p+e zQ{A`Ssjx3XPZv)-_)^pS;#jF4sd4tJl!8)BdIX;WGrp+j(VkI_5;Ge!84gvD5KWY1 zdl!o54rXh6M9ND}q*28hMRuxK*T2Y&L#(`5&v$6Q<eULIiKe|x<mgjaL*P6u#W_oZ z*RJ<Wcuk=X;OOUw(F$l{wZ>ATlsq8IR#uVNfVPz4Ww(qNUw|;Lrp=5H@)FU3`W8@G zy|I1Q@oM|7Y{T5kDpKzbE#b^<c{p8VMk}RNcTUErgD}kB(e6ZyX%uk2N8$}Up*+IF zm;*J%84UU={&r>y8^Ips7}0WE8A+ui`eowhbKIypbH`|`4+^hYESoYfUx16(C$Qa^ zlI5t6w5OW;KlJ$&Z1l7CU1VC4hOK3jfVhyw%?V;=85fmc?JxSaQ-_^;Xi@c-s~<)2 zCbO>_DO4AEdZX_~lyAzQkv<>J$-&(WxhrSWgjpmEG<<Kg!;g8}e0s(Pv<1d^W`ceI zFX)wWaB-<V%(^2`?f&GVg^U3)b2tj52)(HTR`um<9gSXE$PpuujD<|-4l;-#w<O7V zj#auG4^Rd8n7ddTKkB2SPxNGRlg?xh{12~fG2<UWCdy6`b|8#Z@L)*ESo1O&MANP# zO*Cbykh0lS=p~3FibW7CVxbLMuBvk*av$da>-}^9ybr)AUiioeBNHr;*CC1^Yz#o& zRcU!bo)j@oMDlb=+_^YnbYa!<I@NgLNv9G+6lc&V%CFw$rxoE)HAISqHsM#EMFbEj zB)|!WH!MuF9hOxaui_wTg~&3N*4ov)Y>}<`g~KuXDNdQ>zb}{hV;~FeSVf<V{8Pn$ z<gyA6eY#Cxi?l3LdEWV7G5ZS8AdKMGm)#F_6E`T<3n3a}7{uwqbFm|Z!Y|sV!!zP3 zsu)gpgekp@PGNMGr=fN#Z@H*(;}DhOl_S8so*cJ6W9PW6rQ|5&(LNuF1$4p3;BBhl zFG7xQq(d?D+kdkpr}Z|E!wnm9?EgUy(Uj5z<AojS)}S7+suRcu6b(l|dR02c1!5vq zI8oyTm94q_X)+C^Qzg9k#Ko7>+k8XJ!>kOI)!hkMb#StJb{OgzxclBf6!DpTU^A8E zH$&#JOtLb(fmPN%^Kc|lxk^}$IImhL&QY+@lmIXx>jhY(kRWt5SYj;K<GhyI`4l+e z#k5ex%qOS@{Jpo?#1Z{`9`GDZX_+AUwa?l%t{MuF#)y-Ch)nX<@Yk2!Hxl9vyrjml z`2Oa?>qks!sd}J1<Zy@Ali>BnH<-IN^T2RzV_4*kM))xwWVuI;5E!U_cb7LR=K+2t z<%}3Pfa@|z<3Iv?NgSxC!fRh6!Yt9u_JZN;K=!cYA2a8|{9wAMyotoM_YsC+4Ax0C z8#G=Y8NX*1AW>tqB#lSThnq%?dAvZo_jl~a>+RR6v-RSo5a|dp#TEe6$C#lBu&%#H zC|6wyaKR2JGM!|7Is}tZg3zD3`t!$L<nyW9*=z8uKZk|ct@``$FuS$&0zhTP!%!*7 zdV-_|&o|AhX_V6u{=j^c;J*w~vV|^@mxH03fSbEUWc24hi4|FqP(G0JYO?PdmsgWA zy^l2*7(M&>d>MH)hxuopiBz}*%_G-yvC1Be(r0i)bW3YZPmr$-&6K>F>;1D+6R|Jw zV4r1U_rDn2{d2#~f>z9EdV%!`?rqauf1zabxQ;r<;ni0Vi;SsK-WpzDoK}J(4vlh> zXX;I_wJ9-1UEsv17oJ2RON`2G23Nr1Wb%ymS@)zTMitV%BE~3Up!T$2ElUE-dL)y^ zVikgw{rOE%9K4y`7dPlaPQlh|{?PGAz(|#YmDO(>lMuiB`5C})Bx>hKw5zFCqTybN z8Y_u55yO^fJgTSlGfPBipBS<aoTmhM_|rslfIx@r$DXjwF)=Q4pEvWn83!W9Mc&MJ zBUDt~sf(*>G9LH#GD!LCiTFx=w&Ky!%j0G8=nGTr6y(xkncI#U)skd%`bq9|9KYya zc5k!~2n(!MgHbHE!+Kp=A7K98px8b^DZOVo>%&&0B+Qk188rnX>%$8`-H+5IFd=8w z*8zfs560n`B*8W16O5L*ZwWqIHX3W#9|zRtdB5W7?^Sx6Vcn~#zLO`djZbm4ZX@%r zU|X+f7irOsUO~|Y*rJ``744?SA=+7_eu~t#XgyUXDR=7Z`-y0Bs<$yt!$zxX3a?7E zU(Z(xT_{gl8)xEbeFLC5(98T|K>RBV^2RY5utZ@A4h_LAzE_`Pj3v>lK(VXlCZewl z%|RvLK6JK-4|!1T!9B`i)Or<3zh8)cTOnZPCRpB~xRH!j80+`fneSqNt@FqzV!Xrv z#v<yk(*I(btB}IRJltBxD)8L|b4n2Bzw(w}eYaMRBrOw`#%NOfK8TFd#t<!%GE@ll zbhJ#g<e?nEW*{FRqq2OXnn4F)l~)G(pB`h)31u;f#Q_4P%UVH@;Q7CYu-b1!+{fe^ zn*)C+!c1ev=fHr=`K&vbjv6a9MPL#+hk|5<l?b>X$c+>nJIKj1737+fC)R2=$i4Zf zU8^6%>Bb0hLKp4x1va5``ol|D^)dD#h8<Gc17>Xx{`DaDhmJAxu4*{Qo#IH;JWis? zUWqy=iGIKd$Bsnzu&(MLM=cVA+>z%fb1(Za(Hw4&Tk(i(j(f@4F~?Ef%%4I=FvpGF z%u@i14{{fH8KnIDNPLhRsdyag<?$9gNrGIm<W^eTol~$;qopM2F|E8}+&JG3a#<iO zutuK8V6p9wBs4Tlv2Q!vA+9OD?{T*&o`rj9idB2An%MkJXl!(AyX0KlqIu5n=l38~ zZs$HqDB4~?CqOoJJ2xNDyqep&`9QM&-YHC($$2%C{IhSweVh!(dSp1#mZ3koF5vhn z^0E4Y!VMXDm5n9HAi_v&zHERh!pP43h$snxC3}bq62k0s#Ej_gb;gV-09T!j=XWDq z*AdIc16<X~WoSodzMk8hp{2lKf94ptYuI=ef?0i=du6vN_}czSO;PeIO89b@YodO) zX}lNFHFU9b7|bT8p?2QY;6z~tYQVEwu%+rJaNn?T1ciAK>v26Sbh}3uhiZy8zk|hP zE>5B_+s{&Jc7QM-`&=jQ{-iG1D9S30anz3xWw3~HAM&!&<3vf!CQnnXtdeZ9b@B`9 z(@dBQB9qV2`K({oGd0yD#iW-`UP318P*1`}6Eb-SOw36SJ1tB0KkH{%b*57P7{zj{ zPM!(%<)}jQIPy_;#k+Py>H2v+sfj<pcA+p-flij~VluQuT7;N+`9pkd%#?KGb8zZG zXf;y(Zslqn2W=7qq?_zqAJv6%RQ*6@u7t>8<2Ph)MVdAw@UH$!`A!hn9Dp3WKDb#w zyc080RhO8Z_*nZ_0NO3nkK3Y>dgQ#LupaFu#L4*}irn;zoI@z*w^+qgzhTeSdEIV- z>Jj8%%SnIip&!os7!OxN%CNB?AgiE3mV5ds)w_}9xgM6RJ0I(Zzf*PQ@umjc!90db z9*;7Q6Of0Q>{9#lH*<<VYCNb3R-_?#bQ6LbNU#i#%}*Y5H1Ov?s|c>u1aG$m!7tz# zHu{oaHVK~f65OE(PSylFe%OB?W|;dBR`Jh#T}c0fht|a;y~#^@E+7boSK%pMO?7~r zJI+vMSO7C1`GrpQpj9Rat7Sm0zho9`f=WnX{eWJKi|SOGj|pC3v|y7}os?hV&))z@ z%xM2}k`L~Q5$i65Y3%X*J(%G%7^e#KdLZ7H{B}*5>d&7E79P}ra3$*&ff?<zOs~K* zt$P47uLGm5CCG|h#!Q8^`=3hlFtJW2R)!a=Cm|;SqS_dGMTw>ebi{Nqz2X%Oh_KAg zhM~hoKJvDHLZj)igUT3-ny}75Q*>w#id3Pvm=xPo7hsfrJgEfc{|T9gjZ^seO*}TA zn&(mCK}FD06O6}VU@MnccX+X~6;?Bibv@*?MiXnO7wb|$P(FkA)Y*jg0oXc8F<N`N zve|QElYHh7k?#TUwz`sM5_x(CUK6iX$hR+IhvizNq;U`4@9A<z=fe1(!FA2`_j|M} z2ZRH!Cw9x=D&-pVA?$(IJsLJkU5y#IVstYll>`$7*xDGYACANovn<$jbVMb0I^@r- zB`AoW3X~MAHD)tP!L0<%{*=O_!%NpF9qtevo<vG?ctlf!*k`_VAE?`t`apq4hZahQ zl+S)r1H>mD<5i8&$~0`Px~A~z=&)3Pt&OKN(j&M+hn>*Dqz?QM9eR3oIEPYjp@lik zE5$v4#EfNNfg<vm|AKyD<Ey^d@py7A4@L8ai5D2>lhc&ep>5z91+2iDEx$A6_YV2Z zk>Bz1dxQL5E59S<_cHk%BEJ{NZ$N&}!mmBKbUP=Pk}<i|8$fq*sS{Fhy~%|SxINnW zxYv_Qs_(h?j0EiWJ=kS7w(jo6fNW1Ly^ee6TJ;a5>y}0sm#OIV9XDq{|4%<@v>#U3 z447*$)w#)E2Vl$?T5X51?!QPFI|k<ShOu!d8gGN|gt33(Q&7pviFngdhpd}w=Oyc$ zGqgan4n;M7n@B5+t$-nv9|w6m>c{teDWUvOoh(|1`A6ebq<q#xah!ET6yDqVC^IbV z1>WODD5FBd4rP8<)JfVIBBcFTXWZDo3vuIFtT%GaX4foI{f32)b#%zT0oa-lN2QH@ z1%S}<3@udbbPS5!rlLu-9vh$I&+jOdj*X8%9k5d3vT&NJeV7+VCLf=wtdWrp%}u}{ z@cEDomhQ|jb1Zb@gwVSWyK(7Iz{-ryz{2GgOcRh%R5Kdzjg-j@o!t1fw{xA?RUWRf z?!`A4*0;#reD+=^uw?%OvYZJcsAF8YoV~louR)`2Whf2WYS<w3?5q=%26Of}4e*hG zP=S#<Rd6yy5fz*U0aj*=0CJMGyESs}j@)%2m`EeX6{jfseA)^2`H(nGT%3&xXP(AM z`Uh}U5T`QYXyMO)0T5`ihta$C9Me{St=S}c5k!)?jEnkfrZ1vkqzOJj1HL#0FUpLK zJCYc@edcnA6E=S3L)S+t?}_)34t959JbXmNQT_0X{P~9>>7o3d!F500jhgMLgK8lB z`MUwZqypb(a@8j;tN7XzbKpba2AuP`3*W*-jN_T|zWAF0<El?ZINYClk07ge9e2z@ zR*x{Nr4ZN2Dq1@$I2vS3+fH7{s;y*I!jw0wmT_5~;LR$PS)EG8QDfUlszi_Z39#|Z z{$yrff;`w~Y70orxT%VH;@L1*A#BV)8BPE1ex#dvad!cNlKs#2I!pF@fGyeKA!=Oo zikc4mqySR_WCXI7V2Wx+zs}M!t@#u(eU8U~^|R&d0<VfO?|Z_wgOH}Ze!lW6&^)JT zk~M4^VGjTnGoFGJ?0TB_Lh`WjE-|9USG|=HqF=-fX%@jwb;j>r{`_W=g%exW!0)U* z*ml9(10rvL&C|TUD+k6Q6nrx=bYFv_U#&5&M!(A1K_0IFL-{_R575tNp9Ix6;W=PE zHSD$CfEAI3{^QNJrN&qh1J{R$ad|?%RxhRXWVSuoz(6Tnj+l;8IMqBMPK31@b!s<c zH%N)_f`)zB6|g=E_K=2UeGZl#$<mp{Nep&3Y1AiyYOb9fFZ_l2;iPi#`4rnVn2!^~ zW3&@A#!_^8td+okQQB$PyQF%CRM)wD{rMvRfr_)uI{kA3z}9I*aYVMw*&kHrBg$*{ zTzaCiTk0Fgrk~3CUmA7+w22vKfET^Y>JZ1z4QID%^lQ<WNjMv+0k`8@%`#&@Qc%e8 zu4C?wcf`Z&05&=MNc;AZxM6lrxVO0o+J}wpU}hC!zZ-Kn*w{AY8<O(Nlp>oSXGgsl zDe2@s8S;dsZFx}gSW+KJ>Jn%raRCrEh(CX?8pKuTlG+{huQlvbbu~W1)#>Dx3$V4Z zT0eXZS9EfJK_|DGom~D%CpW02VB|4JQHljEara;-UWX=HhxbK?UxsNNs`EWMq?39a zsfUr;)?pYRYzt4)qWnCUI;ghrXbnqK*A!kI9g+pu+Nk+XHKNtHLWcv;LH7LTkLZxE zr4St+odqerX#puJ@*OF%*(G`h^mVj_D*(1ulHf@aXy-rGydNnyI&?lk72*lo!9EOZ z6s%vvelP*cA%~F;4F|M89<OKy!rQ7^#Eb}XYD_y%fqlY85y@TedkW_BhC!$KyuqK} z4$N&29OTb$F8Mot`y3q5`We%v<`>|hWbT0RKeEI82_+q?C3&4;y&9M?WB;}!uKeWF z^Yqh+eEL556xw|J`OhE?oX#4j?`OzsE^(GZ*RZh%aPvB#+qIaM&Ia!~EIkrnYZ7Vu z*!-o}5j#%VX)78csirG5;Ft}p=9hwuX7ku82Zdaxt*-Xx*KnRxPx%e-=UYg6DDOb^ zvOW?N;{dWjuwmzZpw4mW`_hr@qm!SnVCVj0q|nzUksGwMpWFa-3oNJOHxo!P<LPhh zAxkzMVdmv#aPSUUmd}ir-x;!C=H<+Ifj7cetmESHcD*v%Ls{<mV^MNO9Fkogt;&qO zh?7ay_n5VXrXw^-Y_n*3fljvU3=ZoR%4r(r!@RGx4lwm5GRazjdyff9P$-O2^E@bb z6J>?55G=H5t?o+3VJgGVbTW52O?wCMeAcMC_(~sTvBu790r5@)8Z?-%VW(hc1FLf! zsaOWDQ{j9PV{g%@Pkrbe5ZI>a=FvqLCp!XtHPN$}TeS8-M-Q4(Is0U&_~Z}LRJGB@ zDKnw~_^fpx0Fyo4l-BpKzPudIMCWx1n4I>tcAf055#w9*9(l|N$oJpHz{=k1J^xmn zxThAQa*T6DQBKgs1?b2nU)1F2+_xW&$a6|99I16fG|nW9XQkF<Xu#8GaLbGqn3u%+ zV|>&aHV%PBtW^!p_cqqVr+pA-X{{;;Rf8*SRl7%wny{m4J4e+g7b;a(ya=1+#oJ69 zo?&(VvC6ccVM?Lus=AfS);KvB<5ivE;wY;f1un~^iqpbDjeFNSx|eX827I%IhDgE; zA?DBSq9F`uX)WO_Z>>N;&)MHqN!ElT`hUkMkm#8oXw+s1I38vmHJ56PH(?Dap9LDQ zVXc=$Y1Fe8kDMbtAXN;tHpic1bj9?d`NItA)&p8wA0p7YbcsTD&=OpXs_bIf)#*|f zq=aHqaOszIHU<3www|Pg(C4eWwKxUfs=HjCcFRl`DD0vPeGw*?<)Dsy4cLhyb4d=) zHq9{`YrZ|5wn>5FRuQK7T;8@gEcd25_ipTu-yesTXu{7sE6M#8UO{aWlG!Sa@gr)I zH4w}I`?rQQTMbz6xD32<%+P3eVSr`fwZBK)L^&?esI%XbW?-P5X>lE5`SW>tImGCo zv2x+G78aH@z<*CCrDr$Af16HbQi1UeQm)ddJKq(_UeL*RUk7EMI7-`U^s}bl)ahqG zBEDK&4eb_Oq9q3D45q96{;89nQ_?r%D0P1R{FjvD7Jzvj-JEI6^B$lSSSya@?-Kca zL4Fs??-TMnUw-Gw@4fPSxBTYH@9pxNEx)(Q?>PCrMt-l9-(m8bCBNs(??CxIQ-1r( z@5%Ce0)Fj@;c527@X-Le6T^O_;wFY)MP#;D9X`h>tyUdkVtAr|_San#u)p?Te`I6p ziQ(6PY)=d?!o6D>w)?VHzmcwdrt%Zi>IUBLKdkZI-c*OPO52vBF<wM1lh`>%1Imgp zVEc6%>-6azQK$3Rv91-%Da^^5;uJLC4ZYuQq4CayFd+Nm7^TCrE9;VtZ?!(v7-yhn zm^X_kFN23wgO0H)N}`uOqp3c5Te5jjC;vlzx(SmT$mG=qnT*m@^AwYdbaFD8d^43s z=|U#AvWq_NHn&gT!2A7{n#Wm+<-QI|eeS%V-tV7JKC1osv-kUNXyQE^MaLyN`Mp$3 zXS6eIN_^kBp7;CnZYL9m>YVzh;@|II2`cjwh>Z0g(9F6vu1}p<D2HeX&xXL})yTn) zNOYi|j#j34935S}-#?p=b$5vG_uto#Pkkp&&c|}<(Jub|{%a_5vzN#@5kgq6H`oon zPUrRLTcBEn9Beu1kAw8XWh?M-E2In?9msNAgDl%<s`JS5IuA>#{!4qM`jKEM)$cnE zc#L^Wl{|{Uz-od#%<e9=KmXyT($c)92|oTA1m_7sm;_Vt*!(ry(ZHX7vm(gT1XX)M zaF`GbCqX6&%De;v6v4%spcQ7ZVn*^8Xj$;j{2aoBjiX80j-(MUX)8d`*4zbB3~u;- zzm?`v0y7}_pQDuGgJ_ikVf8*R>aW(DG=YzEX)hVx2;fwj#|d6x9QV01%De}Vn9=Ve zdz5(y9$}Q(6j^yknHNot_a*Nr^E|NdRF5%mCF>Nx%tt}wG<4kr%Q#j``J4r{R>2}+ z;}3wWWD?xqCD^A{K+q2E3zQ#@R90DuXl#833|Q&|4NFE>(kcVY>_|R#px_4VrXLWg zauU;@(iAUj(N0yM0pmV_RGmetu@uy;^cPNwH-L9aWw=PH-bi3dWsr#Fgo{hzK~^6M zaSwPn_UJ*#R6ty@T4*We`t<1Gw<DCcAMJry_d*5Ce*?$b*%-9_yxhJ91g0q01TB6+ zp6?LrFfUfA!g^X`HQEcTmxxt8(IeSYfWS$9c)!jrNd>^x48`bj&FJg^V0nPqqx;*) z^f52fivi)(-4u{>8uFiax>I-8XxIpKP2ts<y2}(`YootL>Vqq$?moxV-4;$i@<+zG z9VV&?MAkm@t6SqjVZns>(sSImr$3*4aZf@28>Me81kC&#L|se3jS~~|0ioP0HjDfz zx8K35T44UPf*FtE3ejpWVaS`{5p5tuqa|+ERO4`Uw7o)rt&NLt^$1llz8?Ae`}48Z z+Kc)f+{D5=6BgkO?IgN%gJ-;axN@bVuwDhpCv`HgkmJ$};Q6Yqabt^CJG(tlvo&hk zZ*an9DATYp2>A8Q1q3vD<xje9ovH!Be}O&*n}&_%ptmj&xs5dacroIfbr$7z`%t#= zJ1W%ehbbNAuLo+1Qt?cXBY>tu(6{yDyD-&<<Z7KvMzX34tZ|A$Jp#+PDH947FHbvs z3_fMXVFUnPp;lkGG9<Rs*J-Ygu7eDC83xlECqJkr8;WzV_nUW^spQYT2{<QeI<pkg zj3}^n9?9<f5Ayr9{C+OKAIa}~^81$ju9x36^1D)gm&)&p^80W3eNuiOk>3aKYj@9& z^5<v4ar0`9^4~iX@VuI7{<%}-W}N@t@w_pyvZJ+s_O-Z=>#=v8;`Z2&z`gX?VZ}5k z!i8b@434@FOH*aC9;0RJS5+pv0V4`tz!2pWjj{kJNOsZ5jrb6x%y<(i82<HlmEo;o zvT!^g(fVdvm0NpQ(Z#a8mHmY>jj@lV&OXU<4LJNIxL*);FKpa{Jgtix%;+vn^(v}M z-5HJ47;RqG84cEe3C!rLTbNNtW@N!hTo#EM9j2+yuQ#K;ZIsT#;Ps->w;FICW^>Fb zl2H-3Sh)>m^pd9f8dGwvI9}65GzLHHmyB-LfNwEhXr@R;7a^mnBg>3Ka7D2-c}Epn zRkH%CV>^2EQTVmJ?`D7gsp5S%`{y<XJg?>^fBq=goi}rTJ)Ac;W~bxFKi85J{B@jA zjPvJjf;!gw0K3vA8t>CXm1$Dy)oG>1*oo>|#e-R&)qrFe56Oph^6ux642Lqf@Hb*S zPw45An%o!Z`<adu%G1(sxFx$fv=j5H@<CZJTsTfBLvjfl$*`RH`AzhJqj76J(V(*( zs)aZ=ZZ^(aG}Wz@qR&EVDVnb|pfP=5l4SH6xFpPKB--nFP4xw8qH9%eMzb}B1$PvC zP0@gkG*HyIUMGhw5_|Pk_L@fM=^>`XURN`XU2OTZVS9}xO4!%}0`tWiX|J8Qt(xdc zm#D*csmc^b)T_gKjWNbH)-nw^>IE1pAh}S_s+KY1oQ=wX3#@TzuH!n(-7W{voz=Ji zskj(9Xrdb<`{Ul7)xf6~M<-(6=E1(n#@4eM)mXD-&uVN_Yr6LNm7*4A0`+pYEVW|j z8~vmWdaG7Ht{6%PnE5>cj2YLxW%ue&e@}Y#y<rG%uYTI~^>iz++--aOx|;joW7fx9 zdJ~_QyjmHe1$v+gNdKTfD~z3h>DM+V>&H*76d&rWlW#r724DkHJ}XISmaHG0PewcI z$c+*G+e4IL#<$@D9;ctZ__}(O!Md`}@ye9K2P}UaduO=7wL{2chR(!9ugBUB7*yJg zXa|*KUD>-a)eoG4g0%aA#ekI=Zv%_i8^8hBhm;w`gp?V}03hqmn)N4`hD5ThPL4)0 z!ML8+PrFi-(w#7?YJC8C%zn_<uDX0F@*()R1EsYZ|33DWdMlk?(6FxvYp-<b0NJ#6 zwE%=2(>-OPn(-KVt@hjXuK+7Es_{KilJyOj#H<~wM=t*SEwZr27_7OE-v{m+i1Vn6 zQ><{hYn+Guc&qU&ai#!AYvIp-6cA_<MmBX!hE4+5x{X8wY{oL0`=FIF&4Ax^a9pPW zlTmgtV>Co>jJCwQ00s*iQHtPt&6F|mUgM1Gu+prxh~um@YlNhS^3HM4a~D?3n9IP! z@t<$FuBOhFW>qjXmw%<b&Xs1ROnH}owIYCXr1GxrkTHU+R+_cG23duf)p_2mrq|92 zjs_Xia&=ZO6f>(~iCH}bOS)ODyVjG{vsWXlE@X^z-difeF5d{)Rm{HpT2E;;0Yu5y zHwVS}Ggi)+&v_9nuBBOFJh7q9;+zezRR$E~R6R%apr_u5HlK_@wivmi{_s7<Pc4)n z+{DlNSdo08VI}_oY#m_c@yJ_R3!zz~pATP!=T9q|=QZp|!tMhsW}FQvFcsr7d&08V zKZPnsja-d*qC_kw#0)|?c-IOz!$>SIYb04XsH5O))-JBXc@RW)J*6^TG;e;HZ8fLh zlZc_`^N7(%V>CjS%ld&lvVh^L_DyqTj_xgC_86Xn=3NaN%D3CElBRt^zKb=+W$1TX z_Y>oHl(jeCdo)Jdn}IPN7$}9`%k}cIcYy4QaFs?qA_>_IR3coUVRsz>d2a<fO~ZbA z4Y2lP8Q*+(B3vttnz0<M^i>qC1m%KH!)cNqla<PCXtWQxFsOfm@b74hiy7OO0RvR4 zG)%s>e}YuaT)zJNp$h8(jkWJ7P!0ghmC+V~^K&<Av?C#3%xJMr`Hgj69D%YB2O|A7 z`pIaeq|0`K1`NU*-7<sXLPW=3c3l<kT7SM^Y#-d+ybbz<MNexj-anY#M!QAI1!E7N zr0lj}3VJt27%7P^w_fF`@~@7B-WQSDf)H9|e6I}%XFN8PsFrTdjc!Y~M8g)TtFaJQ z%wgb@`evGHo;+!7+>NWXn{NT`C3EfN6m4H`CE7+2Z5L7^nu!5|^PO`$idIbO3%#N( z0)#D951swa8{C#EO~X>uHHB9t8kY-Ep+DXrc59;wS8F7h|1`?cTb6h2!jn20pif9} zG6_mZpmjObT!xfeH3l|SdSz~a>`j0TU3+U-@_N9k@gl&S;n2`oQuXt(@C`2ST8x|; zGb%j{wZq1zeC+zlI#|UUhMYDF%ex-nTL!&k33HM8NO~yC;V#w$=D#02l+0M()gRem z{*{v6Z7Aut?g!>gz>FEk;3+06`E;CqI*(5?$!CSl$DiLp@-hZ$oXc6|TM*}c=o&WK zLJ4!WjV>+s5gPSGph_J{)_{pmu#P>uw$^H`*p>CDj@4QV`If<5tyPGmNA-75Gpw0{ zVhlkxx^MbW6Q!?gvWEQ_b+YIE?3;E6p3l0NL{8YUi=C^rzFF^do_Yc)X6#*K_qfaO z2=nM`!Oz>{Zk8aw(}G~N)^>TD;6#M>6!>GlCUEk0o$RZ|O6)%{RctL4LgQ@>>x<z! z%4)Sv-uWN!xlf@i(y)ok0E+@<PuR|k%g2cUBRwcXh=TbaXryg7LUW5@poI)C(8-_X z(snzL@>xCV;wusTXpOyg8$@XYG;nCHVMm7n+XatwRkzK~+VV{!rM$TdZqvZa-C~Wm z3lkb1P9^YV?imP9^EJkWk81~<tpP7$Y+@dX!U`K#LMZF%IANq5JWbaSO%;mINCyaZ z&L4f<vtsGovCfL6t4A=}ap};`yHppb30Gj=3lZy<`1>TK`=viZ;=j6vYpEtWb~lLX zS;H08IO~^cQ{1TmUp@j;_^+TTsHZgyvA~rr(G=%us@q?Rv$@9<b1}uI#wl35bq2b* zdY#%8m)oZJW`;7wZy}f>uU=Dp?o*~X`U^;Wl`E3hRaR=8BbETC&c$0lOO0m<L^STY z=X8sGy9RWf4-2G>pam|1de)@~&2Dyy78t0hrlK0USh`Bd4hRboQ0r)3q5#)dIzJwG zNp>cA9xwMKQhuoc=dpAqUQXFwMaB)RELyB7-dO>wHoUTErbb<kid|a;_Q$T$7=^EZ znO<3Rfrh>GFktnsEb5}sy0R1A@XDg!_A9M>ssOWHCkr2{Lo8=y(FTomEGpxltSov& zqrUTk1h9K_at{?~cxBO58ubB1nWdB2q^y5s(PA_YbrgIdz<;u`=*RykOLSKGRqEtS zc;=t1Ec!>?c^<<&??K%vu=we5fpx3=a`v^rx<-Dll;2_U%eM#x*7@?w;x4exl;6Jc zd$RnVAiu}TZ@T<qTYF%(m0#>aiTh;vWvLff{0_dr`bB=L<(IFm?8)Qn{rRO3kK2;X z-2yn?VQ{MWDF0kc*&&te&!?fW=b1l$7H+Ip@q<X4x!Rqi>9Im}T{mClc3sl|D>IG- z7O@ZPdx@=CI$Zi*+;VuHp-enoC*Q)vXVvjQ-D{)9jGu7}*}&&3#C2RgRhJ6FW5%xK z`enxNzyW13o+1;OH+l%q*mXVABhoCu%8Uod1K2m)`9zK1{!k*lq$Xdt>*PNu65nWD ztx)+!>l#O-!Ah2aN|tNDoBzzrp^Oo80j;_Yq!$Wl&Y88VH{bc?>YO?vw3=;%awsV| z{WeBFn>rKEe!Y}jPv^5#JPYb)Um^MzRCOt^)=5dPmfscfyF`9pkl%&!`-J=!%I{qH z4a;wy{7#qO+vInm{N5zLW99cM{My^$h0Z}DVr0LD_NAtA_7M@|2Hc{h_eYGY1lZIc z!YME`@@Yt;NboI=F%UB2ma2t+SN86OHW*#U37nkHD`^$PA$Pous0)0gWC##&0vw^S zPz|?;!awVA*c$WR8ku0s2xF5&p6|sLribRgrVs&ag|P%Ki=5A@i=^N5>~?j+&yYit zzWPl`%9#vsx?VW>^V`%fKwixq*<<kIpSug9=G9!0eFuL0b1Nm)opr0bfA0H|>g3PQ zm78w<e0-(jvtGx~+8+3U5@U4MH4jSA9IBJk<{=b4K)mS+ub+NUq40X@<PhLh-MSWA z*^=4e8v3F_O4i8}h%{(zCxx`TMk#x@Li$!Gn-QtY+HMNz9Syx&A+6QPZ_tr1z=>=u z3~VkYSDeSllJn2X!fwK4#@Wae^FJ5UlgHy;&1v<T4(`ngs+tsFGiloyQ1k&1VL?DB z^<|VU&Qf6^N29BGv3K8;UC3^^2qP7F90~Dhc(XqF=?%#1GoQE+){7X2XQ2-hNo&VT z+`A;KBPhWjHFPrsMZ74~*C<~wAsrfntJ=-b-~BUx_s#z9<?Kh9Wl-Y{Uj}kG0Xe`m zh9CgI$@HGdnd6-L!Y#hlcA?R<2|4U>ZN|*uxvT76*j8Pa4{wJd#t=A`vdged(94*O zeyily`yJ|G^9laSk|LiD<QVPqD>iRsQ0?1Mio3f!kC|UzO>-G<F$+}C^Krk1_tCT) zFCu~L*!vhNne1VV?@L9NQaH@_zc2^xX1_X{GP7FE)0w2JDeb|C@X)vyo*X0GNcXZs zm+#Px&~*F;scI5z)yAc?E~Ff!%yuZxcPP^}<xo=g1?5U0A<v$`U+Pf))1gdtD8FB+ z4004F25g6kneV}?%opG?$A`GxDE3UpZ!A=aUkr`VC^CJ9q$jtD$n|)E!M1xcrJx6+ zpw&!%=$senlt%H-v{lS3eL#|T3{(B(#U1p{)QKCb--!I36AE~Qh;#5lIP*ib)$~Ph zub^{y!l^+XUJ}9aP+@MS&08Ftzyl6(qQTG)!&!jxNCjt`?Q73<x7p6yA%_<bS2l)2 z;a`L45jf3>!<CID@e6Iw<ISU}N1xXEF?K|CPC}TuBb}iyyrzaH!i1Ms%cao7C1LMw z7@bhsC9S<U3XkzsAa!P>dl+IcT9_d+gcLt<%U5CubbO)9DvHfuiGd5x`NL(jx=fHu zAU76jf;-lDCzF`@GzvS29l!AeP`O0Y23+Pi{>3N<JeLD+^49R;%N~#O0t65Z6ck@e zerosWhc3WiJFo{QMMfkm9wAZ4Jn?P;n>h0({NS6S1@;UY#yrYY1lqv}l#omFyfvh4 zK4V!B`QT|f8N}qAP%06VgF|@-)5tSKRI#R*=7|8aQ)k}V2l0-BiijWwA{nWti-b9y zH6$3p>9loN_`v3>Q(PiMfUZg^Uru|6QV!8%q1bzCA9x?n#FQx5r)WSpj(3~+=-~RC zTlpt<gb%=x>Ban`LjweRiE4+SlIgmEqjhj5Pz4UJDF+VjZ4%(hQ95`OsIJ1{Z`^FY z0tb~E!5)BNb8S549+%;vCVB-p7`6ll;1ZcnWHaQPjgsvtfpT?z0av({T<0HO8Vr{d z)9wVU0|_J@DtpXS;OY9rrxb1rnvb!Y&{kwt;>Y-CsPusYfLvY<K%fFQOv&f7fodXR z<yxw-I1%x~IK;g~G>Mp(h=?3L9BYWUgNP#%5x2%6?h}<6D8i*&%(sz0rAmJsFPViv z1S92?K&K+0mWv(MGAyzZpK~SaR-lOY52I?LJ(=24TF;>WxRR<P*jQ}dj_pu`&DYuB zb<movE6+JHy1yV%;LKpeXpLKR_>%rI4}UMPn2nImK4s<eP5}NlgAq?@g-|Jnv8kL< z5)N!d7B2(oFSDlwX)A7H8$d_WxbYQ{^)Om>!b>ue$V54+BE*f9YHK(L%!E{K&CKV~ zy^#AkJ8%zJTE!)#8%0MWPQgBbkJ_l;Vh891bdJ{I%S4&uVUugK2`e_(5<QL$O)KI` z$@9b+82v5(iT{VWbC0iVI{*I}gmFo82C2A&C?SIoC1g56hDjY|2pXbpLA7aVrOc3O zXB<W<=@E|0X+xVjTB*21Lxo`CoEbyn)&^6JTOGIBW2SZL@)g(fdp^%+uamV`CcgCd z$M4ry&3Zn2zxT7(ZLhu7-p|=teqph1EZPhwkYdfMU$v%C?1JA5rBdqW7vIte(Pc<* zVRSa4AJxMfy5~vDWA&@dT&L_5`Tn+C4|2XG3#0=t(L0b9UM`BK<Ub7#eH8sku9*?< z@#C~vq&JOtd!Hz`?irJRNvBo1S)X*Xq@1#Q$~~jLTmE!L3xe7X*QPD_tX}h(L(*BV z*PG<N=9{{84if(wMFG#0U^5hO2;wAPEQ2`K7Xwm_N&NBP(1Y^CTs!s;PteTDFdk`> zy^=PxMq-OID6Drxm-P6UWHwgchvJQ(Na;QJp>muG-f_OB`T;$&fO3gQkCX$zULZ>a z_R70K%0IKT9Sh(8qjsx;VVUxouJ?o-CG|4meZo8?c?p`Frkn6$Wl5uSnk5Uy(GD^& zHsVxCX@lqFztMaXL>jeJ>g^8k78fcoPQUTZ{6Ks0+PK!m;tpw-Xr$Bsle=B5ayyyQ zLi%TWi|&bb$RU@e7i}T8gErwzvtdao4Rq*yZJ-E}$!5ElTQA|(jPw8<;O=O!nyuFt z%XAQt+PW6)ca6VQx<|n(`P*_b2Q0$&rT+G7*WmZP4{#5MB^<g2ce2UsE!4~4D07VL zLlIHo#~*^5wA?usvvS$)3Edr&I*HYH<ePu_ZgR}zq1)-9a(!xjf%K;gvn$a}Fd+Tb z$^{?EBJ=DvQatIf79d3{^rigCiPkk=$%`nPNjg@rP<f!P&8EAxQR~s=qronJfnJ}1 zF1|ppMse(v^>4Fv8N{r1YgSFWEEB(`t4onbyvxI;t0&PkYh`|p18zc5WefZL0?2|< z-N*43onAWKh_{ja?Fh}Q<a_e+d|W#6x;uSzN~b^e7<z!W`=pFhI(=5!%FMi1%1IY@ zOOKCBKkRV&xpby8<qjfkQ6gE2^E#BJL<p{HBun@MWf-iY1F|uX;pJZbjyVh1S0@iQ zchV2Pt+|{$xaiW`<f@TVeoG#2im$_@yv2j_?vUHak^-c1LH$pi%0i~$@~ao1vN`ak zy*VFngigyQnZne|WaZiV@ilW}1)m}2QT_y{&X3kdMCI~~pZI?X{&qy4cHu9<%m0s= znZH~|>XTBM(CSZlkCkyTij}GCmu`Y#GCE3$4%Qc$Q$KJX>Z(tGAxQ^(5M2a>98gy# zeJtrlDsqY?L`Hn{oi|f0p2UmH6|dOh`CjxqMVH9i40M&`m$}0io^b>^B<`Bw!taY+ zbUbdl1!wE#6PC-}E>^IE2wiXQalBuna^kdR371Fb-y^d}L`h+E^_7Wq?Tf$L3!+2+ zUeHJAAWzGOe`HHqjvbYBAhNquOIMpb7s($fT93qj>&R|7QaZw0a&wT5u!rPtK^mD{ zbCb#Yta@x%pjrQ$wG|um&VmC@T8@E7wiI3=_faj-iN~=(dK1SWhrj)(8IMb+S;tL$ z!=t2*m)0l!T-Q}d^CXKd`H%cHD9N*2G$UT)vFo_TF0ad9WAYcC_Ck*t9vZ_iJ2;?8 zqEC~qq$JK|hoZjtEgd)7M`ia&ds_ZQH<ZQEm~XB=OIyEP-DsyuV3*sk+Oyc$nV68o zAG6w@z^0gPl0j2}*()MTKU%No7hkcRa@hlT#@PLM1TBBgWy`~4M#;tCVYPfV^}Otn zzb`9XXvqok2V=y*7x#I&&5%Whf3<m$N^ehbBC8x(X6^O4WLLc8DP&TMD}O_4O`AO3 z636oQIy?0Ykux5PbdE;gev}upEOt7=_Cb<`sSL9)g31g<&UhLlLNJRN$)YrXR+0?Y z()gMOX@67I(gk!=(IxWGP8w$=N-qCf9g*=%{@|0y|E2Inm&#wk{5;gpgk)q^`?&b~ z9Ix4Ym44BMNVxFSh`El!g}bYbpB9A+j~Bb>crj1VeuuNaC}&51Y*1`gd*<_VGugmj zJU34rI+>fliS6XzbvdI91~2_y2ZI{POc$yInR+2<j$}1qA2Nu2DQh3LMPdad2jV7D zyfqT}6I$5F3&Zw#Rz5eg+CBPeM;5@aGW2Iy?Q7L%`+y|DC1Tl;daF*rzYH*4xbh@b zXL8jc@6wlW+>|@_b>EUJNjuOCw)kA_>qVFUQHGl-xAEBrSVK$_{kd}(vpgAMS~W?u zNaBnwQj^!*h?>mbZkMWDxY2#Mv9Bq(PjAqiTIqa=7yGvs;L2@>M?5;a0i%FEs`$B1 zb-6<Z!`s?0g_MCYR<QLqw7R!Jg1etCsP((W(g^#`)vamSIx2bk=z4A4IkAGBexol` z7L|yH{pYBM8YH*@35%&j!Q1qlrDxr4@)na3x)W29f`qzUv`OUR#ohP-_4&K$jYprd z9y1^LU!jk4^!XH@HeV(++F5_;nqBV00TKBf)w;P;$wfx$G5-&(777!W9a#u@(k(Z$ zx%F{5H*OKK#K&Khs_)QeGV#t8oujkII#+z~e9>VmBHe3nWAD)C0G;*8NNhne)_7^8 ztA4Hgu~U7v-G7Mu#YTx`lnncS-X=5mGc%U!ETrR0O#n`p+?ol%_r&%m0B7lDPDXE+ z!W?^@wumep{K9N5mfYdxF_gcQSre8mGO3a0BxZ3V*~T5QX#Xke2)WZYu8qV7wS#im zkY7rizrA#-rS%=S$D-o8i!PD3>9|VRokzTP4qwMDcJ`cn|2GehF-3~ip$AOJ-|C&% z_yS})gW;fCY7xWvntJRwV{*quX2%}VQ6|vtll#sv`%qGK)97#U|KO+m5znNy%>RDj zArss3==w_|v4X?dw~t`omZ@puxO6A^F^1ga>#@X<@0_9&`qvz%jdAz(?mwC1>l>YM z#=lf&XgqkbGn^o{-x*HP&Fl=zq%$=4XlKBapartb4;P#!SE+gSGL+AwnHtN)kOM+~ zb}SuRCVet>(%G@BH*_|flvG%Z4e0tPOnu*Kyo1d<&<SQAUu+&wws7lp@7Or_g`kf5 zX!Oh|ZrK>GCYLAM$~pSb!OorKTgme_l9wwO_jCm4sJ}RR=Ed?CjS9|@x2rPuEQ~IW z${&6XGM7ZpyaY`0Ke|xaBD(nE(7MT`(KDCMh%UY)v}lv);-w*Zzp3*pt{737X}Nqd zniqLy`^BFno=|_O)PCBufOzri+pn(teB8f+p1L1}#HCrgjo!+1`rJ4qvwfK+%fq?< zG807=GKX%G|4w?Ws6yrqv+6I`F7n?xl%tz;3J*8M*B*pUc1r#sANDNJ2U*YR9zOb$ zm2*4pcfq?b{!~q@u|saW`3FT|Tz3m(siAo1v$*}@;U1p<>O6kFRMFD<J`6)1R$)b# zEW$K@X?@&uB^_Mm)W>D*rGMX5J>l4+4_(Iq)v<4WfRZ)9-*C$r9@-5<<KTcMi9SiD z-k@K)CjV&nc!a;*Q}8keW9h%`a1dOG|EXU3FD{J9U1pJet?ZIYEBMZVI{LMb<FqpQ z(6f(t8JV~0vzhi6WsCehQTZ1mk1R7XzPb7%?Xm61Dc7zE>~hDU_VDf~SE2+-%vbH6 zkgH|rz~xK_x}?BnUeO)xkBc20#=k!+YX7043El4>!AS<b#)~N%4qQ5nBv*9l0i<<f zfPUvA^!4@$(DELOS>pNY<Zes<oYvef<rOrfOu|Q1eW~kFriOAd{{d$EnAp;2yLa;r ziU!#GS7?B67k2qqtzz<*SY?Z@YGABu#nRPL#S&<}cdm0))74Q!M#~Il9V?skD$RqQ z7q>!L*`TJ;x3$^ks4TifUS~-yYY)Iazv8g!K@N&8`L|pYBkiliMqgPi^K4nlK(2Gu z<DXSZKdXJFWb$*+G07lThhKd0aP3?aijOn8#rAJtJ-S(MVC|d9S*7mv?8pUL`EznH z`sH&`{LgR5nK_oCwR0j(rq-X#)J!W=Tl$&u(=KLGUO4DAieU-y6}QVPP8px{okQUq z`8|b<X9Y;57o#$zd2rFM`_aYW2VymWhLP0-lDT?;7hNu|VsmRG%*1&X{@h+>xSDtT zyyNCI&igk0NV$irtaG>mouYHFOp`>3CS74k?BQz^f51F3A3M9c<N*ls#{)G;Wpt1H zytO?ddt>cD`BY-JbgUgmh>{mCyJciplKWy0PGl<MhWV_Fbfj~sC$Et_Z%>)7r@zE) zGhEm?2Q72Ta`bs|E!`oS)wfpdEZK<ngbW@W6Mv3#%V#aF#bqoXTG8P~4-4LE_NvnX z4wZph!7XP=yU36tw<PnBSgKm}m&)q>HItp_L9zXw{g7_v)J$Ir{6#m+YL_?8$nK!r zJY?c>p!CD~xcpOi&sFdfF1}T{lk#ugu(RMg?!@cr{I~==rtWa~v2vL9#j-<K{dja% zxL{BAMWk}GM*&fv>+Xmv=4u78(~NlKll3K2vzbz@sNPLE>jM<5-ZAOM;@(v6#=q2V zuQC?bI1IB>*Q4*hhyH599f;MH;d;T+)%ksReN^V%9mczHCtGLB8$69?h!t$Uzh42z zADr)hyzl!V0AGCC7A|~azsW{jEw<mN|JKbMt`<r@rQ+L>O4pa~0mx2mf#1zD8Hg>A zOgBn4pORIgl#RvwmfYNAW7obiyJav&Y?$5pDNJ(GM|7_6PA@_$$?F&`g7lYm=>gJT zwv$tKVH$;AvGhul%UOO&3ogeupJT;cNU*$@*Osw%Tp{Qqdzl=5BB38<yjma~Yze0K z34I#zc^%}&Ie`wcfws6`s4gu5kM<ut-ikle97}LVmv$@D1$3PG+MBwcm16d@B6R=3 z???wP_(ru~trz*3mT^S`YD{;KYx$+`>$O~huH&DAk6Lw$+nKah@?2bB4B!EPb|yc5 zMGyQkJ?78*nzjfR-Yd4>W0vV=_L%SbJqD@vm{Vn^_L#E|n(Q&s5^|lcqsK_Rq4pT& za7vG<Dl|Q&d9oVJi_X&N2E}dknlC7*&~CFK62IF>1*s$UKv8^HB^RBk;fA)n+1i>n z<$25kxm-uQ3nfF+ai6$CJMP!*j{Df<rn1;^W#57*di0%>JL<7P|MC0#<ZFWO@8j3o zz6btS{rI{40{!>^t%K?N@w~O@hhOi&1F!WKekE40tC)!PM0B#0@afBV=Rr8K$mhGX zz*q!Kj*{kW+^up6=^|iqmstc{$*apBG1)8q;Z#S=y)M#DUV+wKI*ddn*X!$WoY0Nt z;!-;CwvMk=LdpBMz5NQCTWdO6r@s=_*sU*h!+TVmnOW15V*5S)Y2D18em3%Gx`~eJ z$j6jX-M<j=6p|&7zwdjAxRLva4oF%m{LNo>U%!+X)%a$MwZoTNxH{zJmOe|BQ~Tp- zq*GsUy)D0gmW?gQM7}?>qIIRCC*tw`Am|^TUyt{T2kDP`5lGqvS9o)UiE31aS84ax zVv{2@cZUmJ=`?jUOV1utSR54op~`QP*17p6L2qAD+_?*1p86>+I8!Qgnki4CH{CbT zn}1vbIel+_;CapMzRc~qd+7%IOE3MV--3bXGVIcUH^+aMt7)1py-apV%{=<c$(q5K zBIPd_k!#4Tu&`~U{Zc91d(!wL?Hyuy@=(pYV`rH;O0a@9bS&!0I%f8Y&cx-iKN2g5 ze@zFitB`a`HOUkKo`19#JkM&63nh91Hr8JnL*<4`zb!kh!02tw^&qv1SJCoz@mX{| zEoNjSnvqGToK${5u+OEq{N)e!W~J~lo9)`N9XlctKUq2Xy_cuNmL+p8<L5aN^KUPH zSFH={->}9{Z1RNmKz2sHq}E>t9I(m4?+X$ff~_uVAMm+7_uY+xJ(mr@p8IX7qBUWu z7k`Q{s~uZn`mby){7j0YH>k&JtbrE2R2~4w5}LWsn=rKQEep?-JR8Xu_WyZxyuRV| z)zLJiI<O_yj(<@dZ|~t($FlwZtLiwdN~&XkPm9@p|Ie%AZw1p=$4OJF16yM4_!rfY z+1;;>e)$t&`RU{r?;Xd;>-N<*ay{|?Np(CTfzG%ba2JrY%f48er&I^F$R+Am$5Xrc z)$zOP|Ef9;kvGJvua*H&?$>WijQ;1w!R(yH4<qb27#;s)us!Y~&PMRk?Ejz3?nm;s zG^VTA22||Vu$K#!S?#(7<C4Tkb1=u2SUU#(xq72Gw}eX9pdSq4jv>*!@~e?!V|uh4 zTUaN@>gZLt?|;=GckLlJw)ORwK4x7b@62RKlWN7C*jfJ~c!YN<xnqt=?PIz8Gj#8f z_94M#OKA16c6X1Cqm3j`LiXmHDw^TOQG27#q2Of797>yA=1Wm|?gu~TZK}dJ#f!Rj zxYF$syQ4x*rstfast7+dMBeoTUuMzs;I8H-9xhxVwm%gd(anC4(uE?l6)yWaTOlo( z(3u!AE#V?4)jB40SRhY3q1#@*Fe4dOH~9&j*4XYWS$@_afwHpP=Ekml<*N(2nvgAJ zdfpN5nUKzh$}iD5ipDLN+1pN0Q#{Vzq*LYB-Wyr_IA<&f<6F(K;#vC1X0E-_sm)kI zuam2o8+Y+5=Ew2};qt?0el^Z2(vG(7$2D8*CXKdK8x7BYIfBYd)j7JU=#m6picEIg z<79Y|;o*RbwVe5RpY+GjgJyNIS*1Od(_LnD@*lYv5Y{BMCP#!;pRuWS8J;y#BMpgN zCUQ@n%4_7FJoJ#-Z<-nDTp+XdlVxTV35zZfofO?Cx=ggZ36_w~&Xb4a)kT#|!_v}+ z`|{nS-~;(GtW@j-62G+>_ABN2k+g$(E@Im4tR=yAlg0hgiSnY$7Hr~7-45J&a_aVV zvHhuAeKLZn-Y?`4m0T8xQV1QeQ&IaHA|Gi#NQyZ_YGNFzY+19nEZ8w+#0I`D!7n>U zyn7CokE!4<(k|SHN1?U!C|SNC-SC2qqr-3)TC~hJ7Jd)si*(`fP+{{<k|TZp!LWzc zt;ONQj72-kg(Lp2760fqY0h1>pUL!9UnQ<NS?0$fR@;mz)wbp!+54(|+*T^}H6(#b zU9+R?UCF%<PuaVArgWCo>&rhvEg^N$RO;243cR$np5z}$0w-C$oWOS5C{T(d2qX#I zMh~}7^>7h^`&r5drj&B^DFkjIaO+f{mOwXw>!t$R5x9&%$5i0sjkK8O6S!b1@H~M< z1e6OF^F9Le3Di&Z&`n?`d@49ryt95WSle2je74Cng&n4Nj(iT;5A~_pQXdr5Vdv6e zB=Sc4WgX&mS*<%}%daI5mO7W!Ree$yCBq=(jUqavc6|QuZE0FUZ}q2e5=bJin`HM4 zNj*)uPKS-BXY_O)!q~A1m(5WNAGg#w3x}oG4B=b9vEuuXOs?Db0BF7xgX`*W;Sp+| zqHF8{@h5|+JXw<8IpTC*{5Ew$I}g^^&}KBQzf>OjKPsOKmk}!H@SS!4LI|5zydy93 z-;rnZUzMD_Q*^?Z*ae%beUj`uVfi~n-$`TX=|3BmF#P|EliVo}&CN;r)efEnjW1P# zSNXHre?Hk0_T3@h6ZYI(dqRXg0ZFhY=nm}(8eZ-6gsjxF-xKH|T_8PSLbhs8z;5&e zY>*p}b}iUWPrxShgnI1>MxCiW;Xy=m$BI)(+@A0aDTe6@2dmAVaJTp~JpozxQaynO zPu~*)4!=lG*i3R}8fm85!A4qFPx#U&xmkXjYfkb9wSy;_t|wH<b2EQT*g32{p@BUC zNoe6W{6^D_+6&|}llE0yaG-wTxcDIb6!AI+ooD2?vi=DkD$)})@dQYutBvbyS9^x; z(31oP9en;lhJ=S_X-9YjNpO6`Ggbjs5>PG(v=MlSfO0|Lcmh`wxMu1p_9Ji=0p)@o ziU~vsTs+kS9$QH!&mqt{6?lfgDFjZP3fx8DWCF?s^Kcb`JqT1z_0URScLK@<Jsd?~ z8v@%-^{^*_jR|Zr6(}Sy5!S}~5J~V9YxTZS@FoFoD)2agf8vY2vEn!N!@hRET74^l zMgqr81v&{_%AVOirDv`=OB&*Q?!92@-UZs{IltOw8}wehYU2DVEY}F;R~5owg0+tX zE>1ha^4Enjjn&!TFlYHox^OKX(d93221_tNajhYq_=CK?-e;Uci;zWo=^OU*^%)#C zU@VW|APHxe#G2UGA)H+{6<yN)o;p?ElFh|m(}{h<Ib8R%ime5z%patfBi>#+A^@aL zT=0GOZZdI{Ukz*7<;=OrPVFI_dE>E2=R-2W7KFqj-a*P#zO3_k-TsKuox!7K=8xiD z`v7sYr0`~GMo9~hN^KzH_LAl=sG5h6#kx{lM+!jxL2@ip{0n}}lAW#HZyhCTEc;(e zmc?QyU$WiA;}<E}MBu3GkER@@#p{!AETecxKeu?NZO1ULKhcp@i%0A@A-OxOa|HE% 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 literal 0 HcmV?d00001 diff --git a/src/M-x.c b/src/M-x.c index 16d5dfcb..26184f24 100644 --- a/src/M-x.c +++ b/src/M-x.c @@ -26,22 +26,22 @@ void register_command(struct hashmap *command_map, const char *name, void (*exec // TODO open-below && open-above && editor-enter behave weird void initialize_commands(struct hashmap *command_map) { - register_command(command_map, "open", evil_open_below, 0); - register_command(command_map, "opena", evil_open_above, 0); - register_command(command_map, "drag-down", editor_drag_line_down, 0); - register_command(command_map, "drag-up", editor_drag_line_up, 0); - register_command(command_map, "editor-enter", editor_enter, 0); - register_command(command_map, "select", select_region_from_brace, 0); - register_command(command_map, "back", emacs_backward_kill_word, 0); - register_command(command_map, "evil-join", evil_join, 0); - register_command(command_map, "evil-yank-line", evil_yank_line, 0); - register_command(command_map, "open-include", editor_open_include, 0); - register_command(command_map, "toggle", toggle_bool, 0); // Wincompatible-function-pointer-types - register_command(command_map, "w", editor_save, 0); + /* register_command(command_map, "open", evil_open_below, 0); */ + /* register_command(command_map, "opena", evil_open_above, 0); */ + /* register_command(command_map, "drag-down", editor_drag_line_down, 0); */ + /* register_command(command_map, "drag-up", editor_drag_line_up, 0); */ + /* register_command(command_map, "editor-enter", editor_enter, 0); */ + /* register_command(command_map, "select", select_region_from_brace, 0); */ + /* register_command(command_map, "back", emacs_backward_kill_word, 0); */ + /* register_command(command_map, "evil-join", evil_join, 0); */ + /* register_command(command_map, "evil-yank-line", evil_yank_line, 0); */ + /* register_command(command_map, "open-include", editor_open_include, 0); */ + /* register_command(command_map, "toggle", toggle_bool, 0); // Wincompatible-function-pointer-types */ + /* register_command(command_map, "w", editor_save, 0); */ register_command(command_map, "q", editor_quit, 0); - register_command(command_map, "wq", editor_save_and_quit, 0); - register_command(command_map, "go", editor_goto_line, 1); - register_command(command_map, "def", goto_definition, 0); + /* register_command(command_map, "wq", editor_save_and_quit, 0); */ + /* register_command(command_map, "go", editor_goto_line, 1); */ + /* register_command(command_map, "def", goto_definition, 0); */ register_command(command_map, "helix", helix_mode, 0); } diff --git a/src/common.c b/src/common.c index 5875a908..49ed7965 100644 --- a/src/common.c +++ b/src/common.c @@ -36,32 +36,104 @@ void temp_reset(void) arena_reset(&temporary_arena); } -Errno read_entire_dir(const char *dir_path, Files *files) -{ - Errno result = 0; - DIR *dir = NULL; - dir = opendir(dir_path); - if (dir == NULL) { - return_defer(errno); +#include <pwd.h> +#include <grp.h> +#include <time.h> + +void get_file_info(const char *dir, const char *filename, FileInfo *info) { + char path[PATH_MAX]; + snprintf(path, sizeof(path), "%s/%s", dir, filename); + + struct stat statbuf; + if (stat(path, &statbuf) != 0) { + perror("Failed to get file stats"); + memset(info, 0, sizeof(FileInfo)); // Clear the info struct on error + return; } - errno = 0; - struct dirent *ent = readdir(dir); - while (ent != NULL) { - da_append(files, temp_strdup(ent->d_name)); - ent = readdir(dir); + info->name = strdup(filename); + + // Permissions + char permissions[11]; + sprintf(permissions, "%c%c%c%c%c%c%c%c%c%c", + (S_ISDIR(statbuf.st_mode)) ? 'd' : '-', + (statbuf.st_mode & S_IRUSR) ? 'r' : '-', + (statbuf.st_mode & S_IWUSR) ? 'w' : '-', + (statbuf.st_mode & S_IXUSR) ? 'x' : '-', + (statbuf.st_mode & S_IRGRP) ? 'r' : '-', + (statbuf.st_mode & S_IWGRP) ? 'w' : '-', + (statbuf.st_mode & S_IXGRP) ? 'x' : '-', + (statbuf.st_mode & S_IROTH) ? 'r' : '-', + (statbuf.st_mode & S_IWOTH) ? 'w' : '-', + (statbuf.st_mode & S_IXOTH) ? 'x' : '-'); + info->permissions = strdup(permissions); + + // File size + info->size = statbuf.st_size; + + // Modification time + char mod_time[20]; + strftime(mod_time, sizeof(mod_time), "%Y-%m-%d %H:%M", localtime(&statbuf.st_mtime)); + info->mod_time = strdup(mod_time); + + // Owner and group + struct passwd *pwd = getpwuid(statbuf.st_uid); + struct group *grp = getgrgid(statbuf.st_gid); + info->owner = strdup(pwd ? pwd->pw_name : "unknown"); + info->group = strdup(grp ? grp->gr_name : "unknown"); +} + + +/* Errno read_entire_dir(const char *dir_path, Files *files) */ +/* { */ +/* Errno result = 0; */ +/* DIR *dir = NULL; */ + +/* dir = opendir(dir_path); */ +/* if (dir == NULL) { */ +/* return_defer(errno); */ +/* } */ + +/* errno = 0; */ +/* struct dirent *ent = readdir(dir); */ +/* while (ent != NULL) { */ +/* da_append(files, temp_strdup(ent->d_name)); */ +/* ent = readdir(dir); */ +/* } */ + +/* if (errno != 0) { */ +/* return_defer(errno); */ +/* } */ + +/* defer: */ +/* if (dir) closedir(dir); */ +/* return result; */ +/* } */ + + +Errno read_entire_dir(const char *dir_path, Files *files) { + DIR *dir = opendir(dir_path); + if (dir == NULL) { + perror("Failed to open directory"); + return errno; } - if (errno != 0) { - return_defer(errno); + struct dirent *ent; + while ((ent = readdir(dir)) != NULL) { + if (strcmp(ent->d_name, ".") == 0 || strcmp(ent->d_name, "..") == 0) + continue; + + FileInfo info; + get_file_info(dir_path, ent->d_name, &info); + da_append(files, info); } -defer: - if (dir) closedir(dir); - return result; + closedir(dir); + return 0; } + Errno write_entire_file(const char *file_path, const char *buf, size_t buf_size) { Errno result = 0; diff --git a/src/common.h b/src/common.h index 65d742e2..2e190cc9 100644 --- a/src/common.h +++ b/src/common.h @@ -93,8 +93,18 @@ typedef struct { #define sb_to_sv(sb) sv_from_parts((sb).items, (sb).count) +// ADDED typedef struct { - const char **items; + char *name; + char *permissions; + long size; + char *mod_time; + char *owner; + char *group; +} FileInfo; + +typedef struct { + FileInfo *items; size_t count; size_t capacity; } Files; @@ -110,6 +120,9 @@ Errno read_entire_file(const char *file_path, String_Builder *sb); Errno write_entire_file(const char *file_path, const char *buf, size_t buf_size); Errno read_entire_dir(const char *dir_path, Files *files); +void get_file_info(const char *dir, const char *filename, FileInfo *info); + + bool is_hex_digit(char c); Vec4f hex_to_vec4f(uint32_t color); diff --git a/src/editor.c b/src/editor.c index 93e1a088..89e1dc4d 100644 --- a/src/editor.c +++ b/src/editor.c @@ -99,6 +99,8 @@ bool decenter_text_opening_long_files = true; bool hide_line_numbers_opening_small_files = true; bool center_text_opening_small_files = true; +bool diredfl_mode = true; + bool ctrl_x_pressed = false; diff --git a/src/editor.h b/src/editor.h index 51b189e6..6ee42a18 100644 --- a/src/editor.h +++ b/src/editor.h @@ -66,6 +66,8 @@ extern bool decenter_text_opening_long_files; extern bool hide_line_numbers_opening_small_files; extern bool center_text_opening_small_files; +extern bool diredfl_mode; + // Simple Emacs Style Key Chords // TODO this is the simplest dumbest implementation diff --git a/src/file_browser.c b/src/file_browser.c index e5df0176..af6c82ef 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -3,6 +3,8 @@ #include "simple_renderer.h" #include "sv.h" #include "editor.h" // only for zoom_factor maybe im bad at programming +#include "theme.h" +#include "utilities.h" #include <stdbool.h> #include <sys/stat.h> @@ -17,6 +19,7 @@ static int file_cmp(const void *ap, const void *bp) return strcmp(a, b); } + Errno fb_open_dir(File_Browser *fb, const char *dir_path) { char resolved_path[PATH_MAX]; @@ -115,7 +118,8 @@ Errno fb_change_dir(File_Browser *fb) if (fb->cursor >= fb->files.count) return 0; - const char *dir_name = fb->files.items[fb->cursor]; + /* const char *dir_name = fb->files.items[fb->cursor]; */ // ORIGINAL + const char *dir_name = fb->files.items[fb->cursor].name; char new_path[PATH_MAX]; snprintf(new_path, sizeof(new_path), "%s/%s", fb->dir_path.items, dir_name); @@ -137,82 +141,152 @@ Errno fb_change_dir(File_Browser *fb) return 0; } -void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr) -{ + +// TODO move some stuff out it doesnt need to run in a while +// TODO dired functionality +// TODO it crash if the directory contain a symlink + +void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer *sr) { + // Calculate cursor position based on the selected item Vec2f cursor_pos = vec2f(0, -(float)fb->cursor * FREE_GLYPH_FONT_SIZE); + // Get the window dimensions int w, h; SDL_GetWindowSize(window, &w, &h); float max_line_len = 0.0f; + size_t max_size_length = 0; + + // Measure whitespace width for consistent spacing + int space = measure_whitespace_width(atlas); + + // Pre-calculate maximum file size length + char size_buffer[32]; + for (size_t i = 0; i < fb->files.count; ++i) { + snprintf(size_buffer, sizeof(size_buffer), "%ld", fb->files.items[i].size); + size_t current_length = strlen(size_buffer); + if (current_length > max_size_length) { + max_size_length = current_length; + } + } + // Set the renderer resolution and current time sr->resolution = vec2f(w, h); - sr->time = (float) SDL_GetTicks() / 1000.0f; + sr->time = (float)SDL_GetTicks() / 1000.0f; + // Highlight the selected file simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); if (fb->cursor < fb->files.count) { - const Vec2f begin = vec2f(0, -((float)fb->cursor + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE); - Vec2f end = begin; - free_glyph_atlas_measure_line_sized( - atlas, fb->files.items[fb->cursor], strlen(fb->files.items[fb->cursor]), - &end); - simple_renderer_solid_rect(sr, begin, vec2f(end.x - begin.x, FREE_GLYPH_FONT_SIZE), vec4f(.25, .25, .25, 1)); + FileInfo highlighted_file = fb->files.items[fb->cursor]; + char highlighted_line[1024]; + snprintf(highlighted_line, sizeof(highlighted_line), "%s %s %s %*ld %s %s", + highlighted_file.permissions, highlighted_file.owner, highlighted_file.group, + (int)max_size_length, highlighted_file.size, highlighted_file.mod_time, highlighted_file.name); + Vec2f begin = vec2f(0, -((float)fb->cursor) * FREE_GLYPH_FONT_SIZE); + Vec2f end = begin; + free_glyph_atlas_measure_line_sized(atlas, highlighted_line, strlen(highlighted_line), &end); + // Draw background for the highlighted file + simple_renderer_solid_rect(sr, begin, vec2f(end.x - begin.x, FREE_GLYPH_FONT_SIZE), vec4f(0.25f, 0.25f, 0.25f, 1)); } + + // Flush color rendering simple_renderer_flush(sr); - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_EPICNESS); + // Render file attributes and names + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); for (size_t row = 0; row < fb->files.count; ++row) { - const Vec2f begin = vec2f(0, -(float)row * FREE_GLYPH_FONT_SIZE); + FileInfo file = fb->files.items[row]; + Vec2f begin = vec2f(0, -(float)row * FREE_GLYPH_FONT_SIZE); Vec2f end = begin; - free_glyph_atlas_render_line_sized( - atlas, sr, fb->files.items[row], strlen(fb->files.items[row]), - &end, - vec4fs(0)); - // TODO: the max_line_len should be calculated based on what's visible on the screen right now + + // Render permissions individually + Vec4f permission_color; + for (size_t i = 0; i < strlen(file.permissions); ++i) { + char perm_char[2] = {file.permissions[i], '\0'}; + if (diredfl_mode) { + if (perm_char[0] == '-') { + permission_color = CURRENT_THEME.fb_no_priv; + } else if (perm_char[0] == 'd') { + permission_color = CURRENT_THEME.fb_dir_priv; + } else if (perm_char[0] == 'r') { + permission_color = CURRENT_THEME.fb_read_priv; + } else if (perm_char[0] == 'w') { + permission_color = CURRENT_THEME.fb_write_priv; + } else if (perm_char[0] == 'x') { + permission_color = CURRENT_THEME.fb_exec_priv; + } else { + permission_color = CURRENT_THEME.text; + } + } else { + permission_color = CURRENT_THEME.text; + } + free_glyph_atlas_render_line_sized(atlas, sr, perm_char, 1, &end, permission_color); + } + end.x += space; + + // Render owner and group + char owner_group[1024]; + snprintf(owner_group, sizeof(owner_group), "%s %s", file.owner, file.group); + free_glyph_atlas_render_line_sized(atlas, sr, owner_group, strlen(owner_group), &end, CURRENT_THEME.text); + + // Render file size, conditionally color if `diredfl_mode` + snprintf(size_buffer, sizeof(size_buffer), "%*ld", (int)max_size_length, file.size); + end.x += space; + Vec4f size_color = diredfl_mode ? CURRENT_THEME.fb_size : CURRENT_THEME.text; + free_glyph_atlas_render_line_sized(atlas, sr, size_buffer, strlen(size_buffer), &end, size_color); + + // Render the file's modification time with conditional coloring + snprintf(owner_group, sizeof(owner_group), "%s", file.mod_time); + end.x += space; + Vec4f time_color = diredfl_mode ? CURRENT_THEME.fb_date_time : CURRENT_THEME.text; + free_glyph_atlas_render_line_sized(atlas, sr, owner_group, strlen(owner_group), &end, time_color); + + // Render the file name (special color for directories) + Vec4f name_color = (file.permissions[0] == 'd') ? CURRENT_THEME.fb_dir_name : CURRENT_THEME.text; + end.x += space; + free_glyph_atlas_render_line_sized(atlas, sr, file.name, strlen(file.name), &end, name_color); + + // Track the maximum line length float line_len = fabsf(end.x - begin.x); if (line_len > max_line_len) { max_line_len = line_len; } } + // Flush text rendering simple_renderer_flush(sr); - // Update camera - { - - if (followCursor) { - - if (max_line_len > 1000.0f) { - max_line_len = 1000.0f; - } + // Adjust the camera to follow the cursor or ensure the selected file is visible + if (followCursor) { + if (max_line_len > 1000.0f) { + max_line_len = 1000.0f; + } - float target_scale = w/ zoom_factor /(max_line_len*0.75); // TODO: division by 0 + float target_scale = w / zoom_factor / (max_line_len * 0.75f); + if (target_scale > 3.0f) { + target_scale = 3.0f; + } - Vec2f target = cursor_pos; - float offset = 0.0f; + float offset = cursor_pos.x - w / sr->camera_scale; + if (offset < 0.0f) { + offset = 0.0f; + } - if (target_scale > 3.0f) { - target_scale = 3.0f; - } else { - offset = cursor_pos.x - w/1.0f/sr->camera_scale; - if (offset < 0.0f) offset = 0.0f; - target = vec2f(w/3.0f/sr->camera_scale + offset, cursor_pos.y); - } + Vec2f target = vec2f(w / 2.1 / sr->camera_scale + offset, cursor_pos.y); - sr->camera_vel = vec2f_mul( - vec2f_sub(target, sr->camera_pos), - vec2fs(2.0f)); - sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; + // Adjust camera velocity and scaling + sr->camera_vel = vec2f_mul(vec2f_sub(target, sr->camera_pos), vec2fs(2.0f)); + sr->camera_scale_vel = (target_scale - sr->camera_scale) * 2.0f; - sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); - sr->camera_scale = sr->camera_scale + sr->camera_scale_vel * DELTA_TIME; - } - // TODO // else if !followCursor + sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); + sr->camera_scale += sr->camera_scale_vel * DELTA_TIME; } } + + const char *fb_file_path(File_Browser *fb) { assert(fb->dir_path.count > 0 && "You need to call fb_open_dir() before fb_file_path()"); @@ -223,10 +297,12 @@ const char *fb_file_path(File_Browser *fb) fb->file_path.count = 0; sb_append_buf(&fb->file_path, fb->dir_path.items, fb->dir_path.count - 1); sb_append_buf(&fb->file_path, "/", 1); - sb_append_cstr(&fb->file_path, fb->files.items[fb->cursor]); + /* sb_append_cstr(&fb->file_path, fb->files.items[fb->cursor]); */ + sb_append_cstr(&fb->file_path, fb->files.items[fb->cursor].name); sb_append_null(&fb->file_path); - extract_file_extension(fb->files.items[fb->cursor], &fb->file_extension); + /* extract_file_extension(fb->files.items[fb->cursor], &fb->file_extension); */ + extract_file_extension(fb->files.items[fb->cursor].name, &fb->file_extension); printf("File path: %s\n", fb->file_path.items); // Print file path printf("File extension: %s\n", fb->file_extension.items); // Print file extension @@ -282,5 +358,10 @@ void expand_path(const char *original_path, char *expanded_path, size_t expanded void toggle_file_browser(){ file_browser = !file_browser; -} +} + + + + + diff --git a/src/main.c b/src/main.c index 5a571f74..c160c22c 100644 --- a/src/main.c +++ b/src/main.c @@ -186,7 +186,7 @@ int main(int argc, char **argv) load_snippets_from_directory(); init_clock(); - + // lsp start_clangd(&editor); /* pthread_create(&receive_thread, NULL, receive_json_rpc, NULL); */ @@ -198,13 +198,13 @@ int main(int argc, char **argv) // Allocate and initialize the commands hashmap editor.commands = hashmap_new( - sizeof(Command), // Size of each element - 16, // Initial capacity - seed0, seed1, // Hash seeds - simple_string_hash, // Hash function - command_compare, // Compare function (you need to define this based on your Command struct) - NULL, // Element free function (NULL if not needed) - NULL // User data for compare function (NULL if not needed) + sizeof(Command), // Size of each element + 16, // Initial capacity + seed0, seed1, // Hash seeds + simple_string_hash, // Hash function + command_compare, // Compare function + NULL, // Element free function (NULL if not needed) + NULL // User data for compare function (NULL if not needed) ); if (!editor.commands) { @@ -215,7 +215,7 @@ int main(int argc, char **argv) initialize_commands(editor.commands); - + Errno err; FT_Library library = {0}; @@ -263,7 +263,7 @@ int main(int argc, char **argv) /* FT_Face face = load_font_face(library, fonts[current_font_index]); */ FT_Face face = load_font_face(library, fonts[current_font_index], FREE_GLYPH_FONT_SIZE); - + /* original */ /* FT_Face face; */ /* error = FT_New_Face(library, font_file_path, 0, &face); */ @@ -353,7 +353,7 @@ int main(int argc, char **argv) editor.atlas = &atlas; editor_retokenize(&editor); - + /* bool quit = false; */ bool file_browser = false; @@ -422,10 +422,10 @@ int main(int argc, char **argv) break; case SDLK_EQUALS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + if (SDL_GetModState() & KMOD_ALT) { theme_next(&currentThemeIndex); - printf("Changed theme to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + printf("Changed theme to %d\n", currentThemeIndex); + } else if (SDL_GetModState() & KMOD_CTRL) { zoom_factor -= 0.8f; if (zoom_factor < min_zoom_factor) { zoom_factor = min_zoom_factor; @@ -434,10 +434,10 @@ int main(int argc, char **argv) } break; case SDLK_MINUS: { - if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed + if (SDL_GetModState() & KMOD_ALT) { theme_previous(&currentThemeIndex); - printf("Changed theme back to %d\n", currentThemeIndex); // Logging the theme change for debugging - } else if (SDL_GetModState() & KMOD_CTRL) { // Check if CTRL is pressed + printf("Changed theme back to %d\n", currentThemeIndex); + } else if (SDL_GetModState() & KMOD_CTRL) { zoom_factor += 0.8f; if (zoom_factor > max_zoom_factor) { zoom_factor = max_zoom_factor; @@ -445,6 +445,13 @@ int main(int argc, char **argv) } } break; + case SDLK_d: { + if (SDL_GetModState() & KMOD_CTRL) { + diredfl_mode = !diredfl_mode; + } + } break; + + case SDLK_q: case SDLK_ESCAPE: { file_browser = false; @@ -461,29 +468,29 @@ int main(int argc, char **argv) case SDLK_F5: { simple_renderer_reload_shaders(&sr); } - break; - - case SDLK_UP: { - if (fb.cursor > 0) - fb.cursor -= 1; - } break; + break; - case SDLK_k: { - if (fb.cursor > 0) - fb.cursor -= 1; - } break; + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + followCursor = !followCursor; // Toggle the state + } + } + break; - case SDLK_DOWN: { - if (fb.cursor + 1 < fb.files.count) - fb.cursor += 1; - } break; + case SDLK_UP: + case SDLK_k: + case SDLK_p: + if (fb.cursor > 0) fb.cursor -= 1; + break; - case SDLK_j: { - if (fb.cursor + 1 < fb.files.count) - fb.cursor += 1; - } break; + case SDLK_DOWN: + case SDLK_j: + case SDLK_n: + if (fb.cursor + 1 < fb.files.count) fb.cursor += 1; + break; - // TODO cant go back more than the original direcory + case SDLK_LEFT: + case SDLK_b: case SDLK_h: { // Copy current directory path char current_dir[PATH_MAX]; @@ -502,14 +509,8 @@ int main(int argc, char **argv) } } break; - case SDLK_t: { - if (SDL_GetModState() & KMOD_CTRL) { - followCursor = !followCursor; // Toggle the state - } - } - break; - - + case SDLK_RIGHT: + case SDLK_f: case SDLK_l: { const char *file_path = fb_file_path(&fb); if (file_path) { @@ -587,7 +588,7 @@ int main(int argc, char **argv) } editor.last_stroke = SDL_GetTicks(); break; - + case SDLK_UP: if (event.key.keysym.mod & KMOD_ALT) { @@ -614,7 +615,7 @@ int main(int argc, char **argv) editor_move_char_left(&editor); editor.last_stroke = SDL_GetTicks(); break; - + case SDLK_n: { if (SDL_GetModState() & KMOD_CTRL) { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); @@ -622,7 +623,7 @@ int main(int argc, char **argv) } else if (SDL_GetModState() & KMOD_ALT) { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); editor_move_paragraph_down(&editor); - + // Consume the next SDL_TEXTINPUT event for 'n' and 'N' SDL_Event tmpEvent; SDL_PollEvent(&tmpEvent); @@ -638,8 +639,8 @@ int main(int argc, char **argv) } editor.last_stroke = SDL_GetTicks(); } break; - - + + case SDLK_p: editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (SDL_GetModState() & KMOD_CTRL){ @@ -795,14 +796,6 @@ int main(int argc, char **argv) } break; - case SDLK_v: - if (SDL_GetModState() & KMOD_CTRL){ - editor_clipboard_paste(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_EQUALS: { if (SDL_GetModState() & KMOD_ALT) { // Check if ALT is pressed theme_next(&currentThemeIndex); @@ -918,6 +911,7 @@ int main(int argc, char **argv) mixSelectionColor = false ; editor_clear_mark(&editor); editor_stop_search(&editor); + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); } break; @@ -1417,21 +1411,173 @@ int main(int argc, char **argv) // additional NORMAL mode keybinds here... } break; + case INSERT: switch (event.key.keysym.sym) { SDL_Event tmpEvent; - case SDLK_x: - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; + + case SDLK_DOWN: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_down(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + + case SDLK_UP: + if (event.key.keysym.mod & KMOD_ALT) { + editor_drag_line_up(&editor); + } else { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_up(&editor); + + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_RIGHT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_right(&editor); + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_LEFT: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_char_left(&editor); + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_n: { + if (SDL_GetModState() & KMOD_CTRL) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_line_down(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + editor_move_paragraph_down(&editor); + + // Consume the next SDL_TEXTINPUT event for 'n' and 'N' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'n') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'N') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + + } + editor.last_stroke = SDL_GetTicks(); + } break; + + + case SDLK_p: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_line_up(&editor); + } else if (SDL_GetModState() & KMOD_ALT) { + editor_move_paragraph_up(&editor); + + // Consume the next SDL_TEXTINPUT event for 'p' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'p') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_f: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL) { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_b: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (SDL_GetModState() & KMOD_CTRL){ + editor_move_char_left(&editor); + } else { + editor_move_word_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; + + case SDLK_e: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_mwim_end(&editor); + editor.last_stroke = SDL_GetTicks(); + + } + } + break; + + case SDLK_a: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_mwim_beginning(&editor); + editor.last_stroke = SDL_GetTicks(); + } } break; + case SDLK_y: { + if (SDL_GetModState() & KMOD_CTRL) { + editor_clipboard_paste(&editor); + killed_word_times = 0; + + editor.last_stroke = SDL_GetTicks(); + } + } + break; - case SDLK_n: { + case SDLK_g: { + if (SDL_GetModState() & KMOD_CTRL) { + if (editor.searching) { + editor_clear_mark(&editor); + editor_stop_search(&editor); + } + editor.last_stroke = SDL_GetTicks(); + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + } + } + break; + + case SDLK_x: + if (event.key.keysym.mod & KMOD_ALT) { + if (!M_x_active) { + current_mode = MINIBUFFER; + M_x_active = true; + editor.minibuffer_active = true; + + // Consume the next SDL_TEXTINPUT event for 'x' + SDL_Event tmpEvent; + SDL_PollEvent(&tmpEvent); + if (tmpEvent.type != SDL_TEXTINPUT || tmpEvent.text.text[0] != 'x') { + SDL_PushEvent(&tmpEvent); // Push the event back if it's not the one we're trying to consume + } + } + } + break; + + + + case SDLK_c: { if (SDL_GetModState() & KMOD_CTRL) { evil_complete_next(&editor); editor.last_stroke = SDL_GetTicks(); @@ -1468,69 +1614,40 @@ int main(int argc, char **argv) } } break; - - case SDLK_o: - if (SDL_GetModState() & KMOD_CTRL) { - evil_open_below(&editor); - // Eat up the next SDL_TEXTINPUT event for 'o' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != '0')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_a: { - if (event.key.keysym.mod & KMOD_CTRL) { - editor.selection = true; - editor.select_begin = 0; - editor.cursor = editor.data.count; + + case SDLK_d: { + if (SDL_GetModState() & KMOD_CTRL) { + if (SDL_GetModState() & KMOD_SHIFT) { + emacs_kill_word(&editor); + } else { + emacs_delete_char(&editor); + } + editor.last_stroke = SDL_GetTicks(); } } break; - - case SDLK_h: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_char_left(&editor); - } else if (event.key.keysym.mod & KMOD_ALT) { - editor_backspace(&editor); - // Eat up the next SDL_TEXTINPUT event for 'h' - SDL_PollEvent(&tmpEvent); - if (tmpEvent.type != SDL_TEXTINPUT || - (tmpEvent.text.text[0] != 'h')) { - SDL_PushEvent(&tmpEvent); // Push it back to the event queue if it's not - } - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_j: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_k: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_l: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + case SDLK_k: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_kill_line(&editor); + } + } + break; + + case SDLK_o: { + if (SDL_GetModState() & KMOD_CTRL) { + emacs_open_line(&editor); + + } + } + break; + + case SDLK_t: { + if (SDL_GetModState() & KMOD_CTRL) { + followCursor = !followCursor; + } + } + break; case SDLK_TAB: { activate_snippet(&editor); @@ -1599,7 +1716,7 @@ int main(int argc, char **argv) editor_enter(&editor); break; - case SDLK_f: { + case SDLK_s: { if (event.key.keysym.mod & KMOD_CTRL) { editor_start_search(&editor); } @@ -1621,26 +1738,6 @@ int main(int argc, char **argv) } break; - case SDLK_c: - if (event.key.keysym.mod & KMOD_CTRL) { - editor_clipboard_copy(&editor); - } - break; - - case SDLK_s: { - if (SDL_GetModState() & KMOD_CTRL) { // Checks if CTRL is held down - if (editor.file_path.count > 0) { - err = editor_save(&editor); - if (err != 0) { - flash_error("Could not save currently edited file: %s", strerror(err)); - } - } else { - // TODO: ask the user for the path to save to in this situation - flash_error("Nowhere to save the text"); - } - } - } - break; case SDLK_F5: { simple_renderer_reload_shaders(&sr); @@ -1653,118 +1750,75 @@ int main(int argc, char **argv) } break; - case SDLK_UP: - editor_update_selection(&editor, - event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_up(&editor); - } else { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_DOWN: - editor_update_selection(&editor, - event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - - case SDLK_LEFT: - editor_update_selection(&editor, - event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; - case SDLK_RIGHT: - editor_update_selection(&editor, - event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_right(&editor); - } else { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; } break; - case VISUAL: - switch (event.key.keysym.sym) { + switch (event.key.keysym.sym) { - case SDLK_y: - if (editor.selection) { - editor_clipboard_copy(&editor); - } - break; + case SDLK_y: + if (editor.selection) { + editor_clipboard_copy(&editor); + } + break; - case SDLK_x: - if (editor.selection) { - editor_clipboard_copy(&editor); - editor_delete_selection(&editor); - editor.selection = false; - current_mode = NORMAL; + case SDLK_x: + if (editor.selection) { + editor_clipboard_copy(&editor); + editor_delete_selection(&editor); + editor.selection = false; + current_mode = NORMAL; - } - break; + } + break; - case SDLK_j: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_down(&editor); - } else { - editor_move_line_down(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + case SDLK_j: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_down(&editor); + } else { + editor_move_line_down(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; - case SDLK_h: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_left(&editor); - } else { - editor_move_char_left(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + case SDLK_h: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_left(&editor); + } else { + editor_move_char_left(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; - case SDLK_k: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_paragraph_up(&editor); - } else { - editor_move_line_up(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + case SDLK_k: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_paragraph_up(&editor); + } else { + editor_move_line_up(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; - case SDLK_l: - editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); - if (event.key.keysym.mod & KMOD_CTRL) { - editor_move_word_right(&editor); - } else { - editor_move_char_right(&editor); - } - editor.last_stroke = SDL_GetTicks(); - break; + case SDLK_l: + editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); + if (event.key.keysym.mod & KMOD_CTRL) { + editor_move_word_right(&editor); + } else { + editor_move_char_right(&editor); + } + editor.last_stroke = SDL_GetTicks(); + break; - case SDLK_ESCAPE: - editor.selection = false; - current_mode = NORMAL; + case SDLK_ESCAPE: + editor.selection = false; + current_mode = NORMAL; + break; + } break; - } - break; // additional VISUAL mode keybinds here... @@ -2395,6 +2449,7 @@ int main(int argc, char **argv) } else if (editor.minibuffer_active) { editor.minibuffer_text.count = 0; M_x_active = false; + evil_command_active = false; editor.minibuffer_active = false; } current_mode = NORMAL; @@ -2518,12 +2573,13 @@ int main(int argc, char **argv) glClearColor(bg.x, bg.y, bg.z, bg.w); glClear(GL_COLOR_BUFFER_BIT); + if (theme_lerp){ + update_theme_interpolation(); + } + if (file_browser) { fb_render(&fb, window, &atlas, &sr); } else { - if (theme_lerp){ - update_theme_interpolation(); - } update_modeline_animation(); update_minibuffer_animation(DELTA_TIME); @@ -2540,8 +2596,7 @@ int main(int argc, char **argv) } else if (evil_command_active) { render_minibuffer_content(&atlas, &sr, &editor, ":"); } else if (editor.searching) { - /* render_minibuffer_content(&atlas, &sr, &editor, "/"); */ - render_search_text(&atlas, &sr, &editor); + render_minibuffer_content(&atlas, &sr, &editor, "SEARCHING"); } } diff --git a/src/render.c b/src/render.c index ceaeeb3a..8af5dd06 100644 --- a/src/render.c +++ b/src/render.c @@ -59,25 +59,53 @@ void render_fill_column(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *ed simple_renderer_flush(sr); } -// TODO -void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { - if (editor->searching) { +void render_minibuffer_content(Free_Glyph_Atlas *atlas, + Simple_Renderer *sr, + Editor *editor, + const char *prefixText) +{ + // Check if either the minibuffer or search mode is active + if (editor->minibuffer_active || editor->searching) { Vec4f cursorColor = CURRENT_THEME.cursor; Vec4f textColor = CURRENT_THEME.text; - Vec2f searchPos = {30.0f, 20.0f}; - float minibufferCursorOffsett = 5.0f; + Vec2f textPos = {30.0f, 20.0f}; // Initial position + float prefixRightPadding = 0.0f; + float minibufferCursorOffset = 5.0f; + + // Apply the original logic for prefix padding + if (M_x_active) { + prefixRightPadding = 50.0f; + } else if (evil_command_active) { + prefixRightPadding = 0.0f; + } else if (editor->searching) { + prefixRightPadding = 50.0f; + } + + // Render the prefix (visible in all cases) + free_glyph_atlas_render_line_sized(atlas, sr, prefixText, strlen(prefixText), &textPos, cursorColor); + float prefixWidth = free_glyph_atlas_measure_line_width(atlas, prefixText, strlen(prefixText)); + + // Adjust the position according to the prefix width and padding + if (!editor->searching) { + textPos.x += prefixRightPadding; + } + + // Select which text to render (minibuffer or search) + const char *textToRender = editor->searching ? editor->search.items : editor->minibuffer_text.items; + size_t textLength = editor->searching ? editor->search.count : editor->minibuffer_text.count; - // Render the search text + // Render the search or minibuffer text simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); - free_glyph_atlas_render_line_sized(atlas, sr, editor->search.items, editor->search.count, &searchPos, textColor); + free_glyph_atlas_render_line_sized(atlas, sr, textToRender, textLength, &textPos, textColor); - // Set cursor position at the start of the text (we already used those we can change them) - searchPos.y = 0.0f; - searchPos.x += minibufferCursorOffsett; - Vec2f cursorPos = searchPos; + // Adjust the cursor position for the cursor offset + textPos.x += minibufferCursorOffset; // Adjust x for the cursor + textPos.y = 0.0f; // Reset y for the cursor + Vec2f cursorPos = textPos; // Set cursor size float cursor_width = measure_whitespace_width(atlas); + float minibufferHeight = 21.0f; // Set based on your minibuffer height Vec2f cursorSize = {cursor_width, minibufferHeight * 4.0f}; // Render the cursor @@ -85,56 +113,7 @@ void render_search_text(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *ed simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_COLOR); simple_renderer_solid_rect(sr, cursorPos, cursorSize, cursorColor); - // Flush the renderer - simple_renderer_flush(sr); - } -} - -void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText) { - if (editor->minibuffer_active) { - Vec4f cursorColor = CURRENT_THEME.cursor; - Vec4f textColor = CURRENT_THEME.text; - Vec2f searchPos = {30.0f, 20.0f}; - float prefixRightPadding; - float minibufferCursorOffsett = 5.0f; - - if (M_x_active) { - prefixRightPadding = 50; - } else if (evil_command_active) { - prefixRightPadding = 0; - } else if (editor->searching) { - prefixRightPadding = 0; - } - - if (editor->searching) { - // TODO - } else { - // Render the prefix - free_glyph_atlas_render_line_sized(atlas, sr, prefixText, strlen(prefixText), &searchPos, cursorColor); - - // Calculate the width of the prefix and adjust the position for minibuffer text - float prefixWidth = free_glyph_atlas_measure_line_width(atlas, prefixText, strlen(prefixText)); - searchPos.x += prefixRightPadding; - - // Render the minibuffer text - simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_TEXT); - free_glyph_atlas_render_line_sized(atlas, sr, editor->minibuffer_text.items, editor->minibuffer_text.count, &searchPos, textColor); - - // Adjust cursor position according to your original logic - searchPos.x += minibufferCursorOffsett; // Adjust x for the cursor - searchPos.y = 0.0f; // Reset y for the cursor - Vec2f cursorPos = searchPos; - - // Set cursor size - float cursor_width = measure_whitespace_width(atlas); - Vec2f cursorSize = {cursor_width, 21.0f * 4.0f}; // 21 is the minibufferHeight - - // Render the cursor - simple_renderer_flush(sr); - simple_renderer_set_shader(sr, VERTEX_SHADER_MINIBUFFER, SHADER_FOR_COLOR); - simple_renderer_solid_rect(sr, cursorPos, cursorSize, cursorColor); - } - // Flush the renderer + // Flush to ensure rendering is complete simple_renderer_flush(sr); } } diff --git a/src/theme.c b/src/theme.c index de36e4f4..cdbdd717 100644 --- a/src/theme.c +++ b/src/theme.c @@ -164,6 +164,16 @@ void update_theme_interpolation() { currentTheme.fill_column = color_lerp(startTheme.fill_column, endTheme.fill_column, interpolationProgress); currentTheme.open_curly = color_lerp(startTheme.open_curly, endTheme.open_curly, interpolationProgress); currentTheme.close_curly = color_lerp(startTheme.close_curly, endTheme.close_curly, interpolationProgress); + currentTheme.fb_dir_name = color_lerp(startTheme.fb_dir_name, endTheme.fb_dir_name, interpolationProgress); + currentTheme.fb_size = color_lerp(startTheme.fb_size, endTheme.fb_size, interpolationProgress); + currentTheme.fb_date_time = color_lerp(startTheme.fb_date_time, endTheme.fb_date_time, interpolationProgress); + currentTheme.fb_no_priv = color_lerp(startTheme.fb_no_priv, endTheme.fb_no_priv, interpolationProgress); + currentTheme.fb_read_priv = color_lerp(startTheme.fb_read_priv, endTheme.fb_read_priv, interpolationProgress); + currentTheme.fb_write_priv = color_lerp(startTheme.fb_write_priv, endTheme.fb_write_priv, interpolationProgress); + currentTheme.fb_exec_priv = color_lerp(startTheme.fb_exec_priv, endTheme.fb_exec_priv, interpolationProgress); + currentTheme.fb_dir_priv = color_lerp(startTheme.fb_dir_priv, endTheme.fb_dir_priv, interpolationProgress); + + if (interpolationProgress >= 1.0f) { interpolationProgress = 1.0f; @@ -244,6 +254,15 @@ void initialize_themes() { .nest5 = hex_to_vec4f(0x658B5FFF), .nest6 = hex_to_vec4f(0x514B8EFF), .fill_column = hex_to_vec4f(0x262626FF), + .fb_dir_name = hex_to_vec4f(0x658B5FFF), + .fb_size = hex_to_vec4f(0x48534AFF), + .fb_date_time = hex_to_vec4f(0x645B97FF), + .fb_no_priv = hex_to_vec4f(0x867892FF), + .fb_read_priv = hex_to_vec4f(0x565663FF), + .fb_write_priv = hex_to_vec4f(0x444E46FF), + .fb_exec_priv = hex_to_vec4f(0x4C6750FF), + .fb_dir_priv = hex_to_vec4f(0x658B5FFF), + }; // DOOM one @@ -307,6 +326,16 @@ void initialize_themes() { .null = hex_to_vec4f(0xA9A1E1FF), .code_block = hex_to_vec4f(0x23272EFF), .fill_column = hex_to_vec4f(0x42444AFF), + .fb_dir_name = hex_to_vec4f(0x51AFEFFF), + .fb_size = hex_to_vec4f(0xDA8548FF), + .fb_date_time = hex_to_vec4f(0x46D9FFFF), + .fb_no_priv = hex_to_vec4f(0x5B6268FF), + .fb_read_priv = hex_to_vec4f(0xECBE7BFF), + .fb_write_priv = hex_to_vec4f(0xFF6C6BFF), + .fb_exec_priv = hex_to_vec4f(0x98BE65FF), + .fb_dir_priv = hex_to_vec4f(0x51AFEFFF), + + }; // Dracula @@ -370,6 +399,15 @@ void initialize_themes() { .null = hex_to_vec4f(0x8BE9FDFF), .code_block = hex_to_vec4f(0x23242FFF), .fill_column = hex_to_vec4f(0x44475AFF), + .fb_dir_name = hex_to_vec4f(0x61BFFFFF), + .fb_size = hex_to_vec4f(0xFFB86CFF), + .fb_date_time = hex_to_vec4f(0x8BE9FDFF), + .fb_no_priv = hex_to_vec4f(0x6272A4FF), + .fb_read_priv = hex_to_vec4f(0xF1FA8CFF), + .fb_write_priv = hex_to_vec4f(0xFF5555FF), + .fb_exec_priv = hex_to_vec4f(0x50FA7BFF), + .fb_dir_priv = hex_to_vec4f(0x61BFFFFF), + }; // Palenigh @@ -433,6 +471,15 @@ void initialize_themes() { .null = hex_to_vec4f(0xF78C6CFF), .code_block = hex_to_vec4f(0x232635FF), .fill_column = hex_to_vec4f(0x3C435EFF), + .fb_dir_name = hex_to_vec4f(0x82AAFFFF), + .fb_size = hex_to_vec4f(0xF78C6CFF), + .fb_date_time = hex_to_vec4f(0x89DDFFFF), + .fb_no_priv = hex_to_vec4f(0x676E95FF), + .fb_read_priv = hex_to_vec4f(0xFFCB6BFF), + .fb_write_priv = hex_to_vec4f(0xFF5370FF), + .fb_exec_priv = hex_to_vec4f(0xC3E88DFF), + .fb_dir_priv = hex_to_vec4f(0x82AAFFFF), + }; // DOOM city lights @@ -496,6 +543,15 @@ void initialize_themes() { .null = hex_to_vec4f(0xE27E8DFF), .code_block = hex_to_vec4f(0x20282FFF), .fill_column = hex_to_vec4f(0x28323BFF), + .fb_dir_name = hex_to_vec4f(0x5EC4FFFF), + .fb_size = hex_to_vec4f(0xD98E48FF), + .fb_date_time = hex_to_vec4f(0x70E1E8FF), + .fb_no_priv = hex_to_vec4f(0x56697AFF), + .fb_read_priv = hex_to_vec4f(0xEBBF83FF), + .fb_write_priv = hex_to_vec4f(0xD95468FF), + .fb_exec_priv = hex_to_vec4f(0x8BD49CFF), + .fb_dir_priv = hex_to_vec4f(0x5EC4FFFF), + }; // DOOM molokai @@ -559,6 +615,15 @@ void initialize_themes() { .null = hex_to_vec4f(0xFD971FFF), .code_block = hex_to_vec4f(0x2D2E2EFF), .fill_column = hex_to_vec4f(0x4E4E4EFF), + .fb_dir_name = hex_to_vec4f(0x268BD2FF), + .fb_size = hex_to_vec4f(0xFD971FFF), + .fb_date_time = hex_to_vec4f(0x66D9EFFF), + .fb_no_priv = hex_to_vec4f(0x555556FF), + .fb_read_priv = hex_to_vec4f(0xE2C770FF), + .fb_write_priv = hex_to_vec4f(0xE74C3CFF), + .fb_exec_priv = hex_to_vec4f(0xB6E63EFF), + .fb_dir_priv = hex_to_vec4f(0x268BD2FF), + }; // SUNSET @@ -622,6 +687,15 @@ void initialize_themes() { .null = hex_to_vec4f(0xD46A7DFF), .code_block = hex_to_vec4f(0x0B0C11FF), .fill_column = hex_to_vec4f(0x28292DFF), + .fb_dir_name = hex_to_vec4f(0xD9A173FF), + .fb_size = hex_to_vec4f(0xCB6E7AFF), + .fb_date_time = hex_to_vec4f(0x718D87FF), + .fb_no_priv = hex_to_vec4f(0x8E8E89FF), + .fb_read_priv = hex_to_vec4f(0x9A8B6AFF), + .fb_write_priv = hex_to_vec4f(0xC06873FF), + .fb_exec_priv = hex_to_vec4f(0x6A7E74FF), + .fb_dir_priv = hex_to_vec4f(0xD9A173FF), + }; // Helix @@ -686,6 +760,7 @@ void initialize_themes() { .fill_column = hex_to_vec4f(0x540099FF), // #540099 }; + // GUM themes[8] = (Theme){ .cursor = hex_to_vec4f(0xD6A0D1FF), //#D6A0D1 .notext_cursor = hex_to_vec4f(0xD6A0D1FF), @@ -746,6 +821,15 @@ void initialize_themes() { .null = hex_to_vec4f(0x41B0F3FF), .code_block = hex_to_vec4f(0x191D26FF), .fill_column = hex_to_vec4f(0x272C3AFF), //#272C3A + .fb_dir_name = hex_to_vec4f(0x9587DDFF), + .fb_size = hex_to_vec4f(0xE361C3FF), + .fb_date_time = hex_to_vec4f(0xC79AF4FF), + .fb_no_priv = hex_to_vec4f(0x454459FF), + .fb_read_priv = hex_to_vec4f(0x49BDB0FF), + .fb_write_priv = hex_to_vec4f(0xF5C791FF), + .fb_exec_priv = hex_to_vec4f(0xE55C7AFF), + .fb_dir_priv = hex_to_vec4f(0x9587DDFF), + }; // doom-material-dark @@ -809,6 +893,14 @@ void initialize_themes() { .null = hex_to_vec4f(0xF78C6CFF), .code_block = hex_to_vec4f(0x303030FF), .fill_column = hex_to_vec4f(0x4A4A4AFF), + .fb_dir_name = hex_to_vec4f(0x82AAFFFF), + .fb_size = hex_to_vec4f(0xF78C6CFF), + .fb_date_time = hex_to_vec4f(0x89DDFFFF), + .fb_no_priv = hex_to_vec4f(0x585858FF), + .fb_read_priv = hex_to_vec4f(0xFFCB6BFF), + .fb_write_priv = hex_to_vec4f(0xF57373FF), + .fb_exec_priv = hex_to_vec4f(0xC3E88DFF), + .fb_dir_priv = hex_to_vec4f(0x82AAFFFF), }; diff --git a/src/theme.h b/src/theme.h index ed07646a..9b1c08a6 100644 --- a/src/theme.h +++ b/src/theme.h @@ -70,6 +70,14 @@ typedef struct { Vec4f fill_column; Vec4f open_curly; Vec4f close_curly; + Vec4f fb_size; + Vec4f fb_dir_name; + Vec4f fb_date_time; + Vec4f fb_no_priv; + Vec4f fb_read_priv; + Vec4f fb_write_priv; + Vec4f fb_exec_priv; + Vec4f fb_dir_priv; } Theme; #define CURRENT_THEME (currentTheme) // interpolated theme diff --git a/todo.org b/todo.org index 0aeb4f52..a837d0d8 100644 --- a/todo.org +++ b/todo.org @@ -1,5 +1,12 @@ #+title: Todo +* FILE BROWSER +TODO IMPORTANT [ ] it crash the entire editor if there is a link + +* GIT +TODO [ ] Git gutter +TODO [ ] Magit + * BUFFERS TODO [ ] save open buffers list on quit and cursor position for each of them while ded is running keep them in memory, save them on quit to ~/.config/ded/buffers [] @@ -23,6 +30,9 @@ TODO [ ] select_function TODO [ ] Typing "{" inside of empty "()" moves it outside with a space padding after ")", correctly position the matching "}", and move the cursor inside the block. Togglable. TODO [ ] pressing o on includes should spawn a new empty one and move cursor +** Drag Stuff +rename to drag_stuff_up/down/left/right +it should behave differently if editor.selection * SEARCH TODO [ ] if the search found nothing until the end of the file wrap arround @@ -75,14 +85,15 @@ TODO [ ] Universal argument (5k should work) TODO BUG [ ] Ctrl+n in insert mode sometimes take 2 times to work * Font -TODO [ ] changing font more times than the total number of font you have inside =~/.config/ded/fonts= -make the text disappear +TODO [ ] changing font more times than the total number of font you have inside =~/.config/ded/fonts= make the text disappear +TODO [ ] Better api to load fonts and refactor to use it * Lexer TODO [ ] support multi line tokens TODO [ ] check for strings in arrays TODO [ ] multi line comments [] TODO IMPORTANT [ ] different vertex and fragment shader per token (need batch rendering) TODO different font per token [] +TODO [ ] Correctly highlight "#!/bin/bash" and "#include <stdio.h>" * DONE Togglable indentation lines[x] From 1137734ea8436ba9ea0d8158faae1b1bb5c1ef36 Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Sat, 15 Jun 2024 18:10:43 +0200 Subject: [PATCH 70/74] line numbers background --- config/ded/shaders/wave.vert | 220 +++++++++++++++++++++++++++++++---- ded | Bin 549224 -> 0 bytes src/editor.c | 5 +- src/editor.h | 1 + src/file_browser.c | 13 ++- src/main.c | 23 ++-- src/render.c | 58 +++++---- src/render.h | 2 +- src/simple_renderer.c | 17 ++- src/simple_renderer.h | 1 + src/theme.c | 24 +++- src/theme.h | 3 +- 12 files changed, 301 insertions(+), 66 deletions(-) delete mode 100755 ded diff --git a/config/ded/shaders/wave.vert b/config/ded/shaders/wave.vert index 4e7991f6..6e0b5267 100644 --- a/config/ded/shaders/wave.vert +++ b/config/ded/shaders/wave.vert @@ -1,36 +1,36 @@ /* WAWE */ -#version 330 core +/* #version 330 core */ -uniform vec2 resolution; -uniform float time; -uniform float camera_scale; -uniform vec2 camera_pos; +/* uniform vec2 resolution; */ +/* uniform float time; */ +/* uniform float camera_scale; */ +/* uniform vec2 camera_pos; */ -layout(location = 0) in vec2 position; -layout(location = 1) in vec4 color; -layout(location = 2) in vec2 uv; +/* layout(location = 0) in vec2 position; */ +/* layout(location = 1) in vec4 color; */ +/* layout(location = 2) in vec2 uv; */ -out vec4 out_color; -out vec2 out_uv; +/* out vec4 out_color; */ +/* out vec2 out_uv; */ -vec2 camera_project(vec2 point) -{ - return 2.0 * (point - camera_pos) * camera_scale / resolution; -} +/* vec2 camera_project(vec2 point) */ +/* { */ +/* return 2.0 * (point - camera_pos) * camera_scale / resolution; */ +/* } */ -void main() { - // Apply camera projection first - vec4 projected_position = vec4(camera_project(position), 0.0, 1.0); +/* void main() { */ +/* // Apply camera projection first */ +/* vec4 projected_position = vec4(camera_project(position), 0.0, 1.0); */ - // Adding a displacement effect that varies with time in screen space - projected_position.x += sin(projected_position.y + time) * 0.22; // Horizontal wave - projected_position.y += cos(projected_position.x + time) * 0.02; // Vertical wave +/* // Adding a displacement effect that varies with time in screen space */ +/* projected_position.x += sin(projected_position.y + time) * 0.22; // Horizontal wave */ +/* projected_position.y += cos(projected_position.x + time) * 0.02; // Vertical wave */ - gl_Position = projected_position; +/* gl_Position = projected_position; */ - out_color = color; - out_uv = uv; -} +/* out_color = color; */ +/* out_uv = uv; */ +/* } */ @@ -72,3 +72,175 @@ void main() { /* out_color = color; */ /* out_uv = uv; */ /* } */ + + +// GUITAR HERO V2 +/* #version 330 core */ + +/* uniform vec2 resolution; */ +/* uniform float time; */ +/* uniform float camera_scale; */ +/* uniform vec2 camera_pos; */ + +/* layout(location = 0) in vec2 position; */ +/* layout(location = 1) in vec4 color; */ +/* layout(location = 2) in vec2 uv; */ + +/* out vec4 out_color; */ +/* out vec2 out_uv; */ + +/* vec2 camera_project(vec2 point) */ +/* { */ +/* return 2.0 * (point - camera_pos) * camera_scale / resolution; */ +/* } */ + +/* void main() { */ +/* // Apply camera projection first */ +/* vec2 projected_point = camera_project(position); */ + +/* // Adjust for more or less perspective, and limit the effect as y approaches the edges */ +/* float perspectiveDepth = -0.45; */ +/* float clamped_y = clamp(projected_point.y, -0.95, 0.95); // Clamping to avoid extreme values at the edges */ +/* float depth = 1.0 / (1.0 - clamped_y * perspectiveDepth); */ + +/* projected_point.x *= depth; */ +/* projected_point.y *= depth; // Apply depth scaling uniformly */ + +/* // Convert back to vec4 */ +/* vec4 projected_position = vec4(projected_point, 0.0, 1.0); */ + +/* gl_Position = projected_position; */ + +/* out_color = color; */ +/* out_uv = uv; */ +/* } */ + + + +// RIPPLE +/* #version 330 core */ + +/* uniform vec2 resolution; */ +/* uniform float time; */ +/* uniform float camera_scale; */ +/* uniform vec2 camera_pos; */ + +/* layout(location = 0) in vec2 position; */ +/* layout(location = 1) in vec4 color; */ +/* layout(location = 2) in vec2 uv; */ + +/* out vec4 out_color; */ +/* out vec2 out_uv; */ + +/* vec2 camera_project(vec2 point) { */ +/* return 2.0 * (point - camera_pos) * camera_scale / resolution; */ +/* } */ + +/* void main() { */ +/* // Apply camera projection */ +/* vec2 projected_point = camera_project(position); */ + +/* // Calculate the center point for the ripple effect (center of the screen) */ +/* vec2 center = vec2(0.0, 0.0); */ + +/* // Calculate the direction and distance from the current point to the ripple center */ +/* vec2 to_center = projected_point - center; */ +/* float distance = length(to_center); */ + +/* // Apply a ripple displacement based on distance and time */ +/* float ripple_frequency = 10.0; // Adjust for ripple tightness */ +/* float ripple_speed = 2.0; // Adjust for ripple speed */ +/* float ripple_amplitude = 0.05; // Adjust for ripple strength */ + +/* float ripple = sin(distance * ripple_frequency - time * ripple_speed) * ripple_amplitude; */ + +/* // Displace the projected point radially from the center */ +/* projected_point += normalize(to_center) * ripple; */ + +/* // Convert back to vec4 and set position */ +/* vec4 projected_position = vec4(projected_point, 0.0, 1.0); */ +/* gl_Position = projected_position; */ + +/* out_color = color; */ +/* out_uv = uv; */ +/* } */ + + + +//Jitter +/* #version 330 core */ + +/* uniform vec2 resolution; */ +/* uniform float time; */ +/* uniform float camera_scale; */ +/* uniform vec2 camera_pos; */ + +/* layout(location = 0) in vec2 position; */ +/* layout(location = 1) in vec4 color; */ +/* layout(location = 2) in vec2 uv; */ + +/* out vec4 out_color; */ +/* out vec2 out_uv; */ + +/* vec2 camera_project(vec2 point) { */ +/* return 2.0 * (point - camera_pos) * camera_scale / resolution; */ +/* } */ + +/* void main() { */ +/* // Apply camera projection */ +/* vec2 projected_point = camera_project(position); */ + +/* // Apply a jitter effect based on time to create flickering */ +/* float jitter_intensity = 0.02; // Adjust for desired flicker strength */ +/* projected_point.x += (sin(position.y * 10.0 + time) * jitter_intensity); */ +/* projected_point.y += (cos(position.x * 10.0 + time) * jitter_intensity); */ + +/* // Convert back to vec4 and set position */ +/* vec4 projected_position = vec4(projected_point, 0.0, 1.0); */ +/* gl_Position = projected_position; */ + +/* out_color = color; */ +/* out_uv = uv; */ +/* } */ + + +// WOBBLE +#version 330 core + +uniform vec2 resolution; +uniform float time; +uniform float camera_scale; +uniform vec2 camera_pos; + +layout(location = 0) in vec2 position; +layout(location = 1) in vec4 color; +layout(location = 2) in vec2 uv; + +out vec4 out_color; +out vec2 out_uv; + +vec2 camera_project(vec2 point) { + return 2.0 * (point - camera_pos) * camera_scale / resolution; +} + +void main() { + // Apply camera projection + vec2 projected_point = camera_project(position); + + // Apply a wobble effect using a circular pattern around the original point + float wobble_amplitude = 0.05; // Adjust for the wobble distance + float wobble_speed = 5.0; // Adjust for the wobble speed + + projected_point.x += sin(time * wobble_speed + projected_point.y) * wobble_amplitude; + projected_point.y += cos(time * wobble_speed + projected_point.x) * wobble_amplitude; + + // Convert back to vec4 and set position + vec4 projected_position = vec4(projected_point, 0.0, 1.0); + gl_Position = projected_position; + + out_color = color; + out_uv = uv; +} + + + diff --git a/ded b/ded deleted file mode 100755 index 8248f7764c1aeafdf90b1117583114a807de0a86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 549224 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%0A@A-OxOa|HE% zxpkiT@&ZG5OsV)IcFgLYM{r1E;E;FBjwOZL`FTU?=IyYeAOH1x^3Nlv>xZ`uRDFe1 zsn7E<hv`MDw`UpNmDULMpCfkk^t=xT<3&t8&+mMTyVp^YjP6+}B`Lg8{GvolHEq(L z2B8Da?|jujOA0siONDeDrFs&jT8UD<y-mItkjLy03Z>+72zjeE#qFwImRa(j?0J0? zy?xc-I*7F+iPg>QY`+#=+vp8C+q*@_68dkKzYo2cL26HkDcyDDS?sQ#$%9^zV?Qxb zf|su4mV10a9*m%lWz><ZNM1W63txO%JFES-a-dX|rkH5T2ThB9fp7I_{e4v)$Lyv1 z&fOdv){_k~x)f|8XJ2z1wtUw`UMME=rUdw{*#}6yi`4jDRszu{bbs^@x=Xf5abJ@A zkiQ-;yg@d>%SL*T&bkU>#O@=uYpmdT*&ttLT7<}kf*<jS!di8zFDVL6;5Ho=i}ot` zvFy_Evf#Tsvmc{m4{YM9@N0S)=8WHwf$r_6B~4&tl{tIi5;;;PRFAzQAx37-{#`VK zdEtT=LHyKCi(kpuEoTqo?8V6HhW^>HV|7MqT?+r$547-F-~ZfFE3^G<+0UB7u^8X6 zMLg)c9S+EN*878}k85mfj4XevZ280vv+-2|S)S}BF~2(C3Ge<Uza3daHl>+ip1+xs z=L7-`f+N1fRO#s_y>|G&^p|>S@;xp|7gao_kL*@$&nHu9xm4n@g4?#hH81gQ?_v94 zMN3xZ{Va*Tr}0^+IR3CZ?L~GlM>9YSSLG8J>(kza`CXk$H@M^$a}i4^{rt$cjHF1M z|2L)cr<oNE2`%3UGCBF7pF_MP#FZ#N^n^d0MZXx4_KN&d387(XlOS?zfk*hRq_9g_ z7*q3_r+gm5apVDA;1J1$1e0pubAI=%C~9=|d%V`~{XPeS<#Me{2YE=wX*?FjbPrts z9a4JL^_!bM9T&^Y0o<kw7al3z5Ei$tK7Fek>GtVXtr7nv;$)v*h_l{Pu$|^@q4w4q z|GaIoi@o)9YYVapUy{`#*~|-|zz48H{}dyr=6sj?@A@>d=J#oslYJUWPB2ZMMz-@U zVEPd1si~bFC;N10JJTx>=wf<}gxqw-gRQP5mbPGf?yPG7(<2Iwn5FHc`=lxlTHf#f znT1nCJ*NY_{s;nnQnFo8=JPnknyn_YTCl0L!`eI%rhj~7Lp~^&?q7e#>KlXi3s0W^ zb+#wv1pZjj1sf;ZRS#yc?e1dxkL9a$Gb1!^3RIYW5+r}y#<+tR{^ASt0DKh0lzYk; z)EDrh-vr6~NsAx(FI>DA{g`W1HW@$WHv{drGwbchmyBnS=gWtr%z4$Z9H;wbRPgzx z<#}Y5mSN2yfRHJ10$=BUJx}n%C$hf_`^8BY01PpCgifRdx00KO+{F;BZ(8t_BDRRO zpuOWTdx!ptf7JfO&~6*ZZT;evo;2Qx^G=#~^1M^#otpoQO<DeXT3rRR#1G~Hb8vuu zK4?Kk78et;8u1W5sJ}A%&sXGEW+8M0vue4pK)z+?e<q--V2$kO_s{NH$?tq!Emvfu ztKc8`9oId~9Y5ucvHXtcBiw;&SdJLU@A&=*cO1$cL-`#?KFS??a>t$d9o3I<hx~<m zxVkmJW4p(>;}fZR+41}Qj`g49j@P*3`uvW!{39OYj;r%Kp7M{lQ+D{j^Xgpu$;FF5 zsfvX{3pW>IZ!s2aE~oi{93;=Ix(a>*V<RzsCWhY%7q6{DghJ==_{TDn8(by-%A?g$ zN$i;E35l7G759HnUKq3k=^Vkwr4;L2?}%7IO!i1`!C~^l>8=Ev-6ykx(1X%gq0W(c zxiLAu-lpJUq}>w`TqIUlWbYLp*!AGWQV1cRl4q(S5q5T^&?D_@{o~}^hX#-9%E~S| z9K?h8NV}fhWZQcN71=2lW5H24uB-5;h3GSr>)@94@R33sEzIu9_%5r@Qq*5B*9oVS zdHGcq3W?4tJ%7vc3K0tnys8-{P~Cj6sdJIc${UBAdVQq+g&8{L&#uoP{w6E$KQhwm zrORt5ThXrgx#x>Z7rz)<ILF)M(@&*_<vO`j4E+j9!DaI4Y&rR8q^o+>W+;oF!5bt4 z;ykqaW6hoXS_q$U!UwqKtT^uiIYU<F+lz|jhkRLFQfu()G>hMv`yb!3@N-|+<Mg+0 znyE9^*Q*ry%)m>9bgCllo6GN)-{4BU7A(}f;9G>hV6G$(Ub4&|ae4Bph|y(Tg}>6> z8uPkL2|uU&aG0E;aVWN6B^Mco$&!?BmE<u+LDzRp$qSFkJJB}relLr86rR5z$Y5l- zK^m;+p86NWVW6Qd%YB;v(8yYO|He=JbvC{zH8UY)39Z>pdgq;bF8Rf#34M}rNeU4Q z$Le3~d=_0)eu6b2^()BS`pmgc#Lck8E39+)MRcjo!7)vyxxzj^16LTxDVIkDGQg{X z#DkYO*T$l=0@p>6_>vdC*5%+IH+fME`rUlKqQi>Dx^NZajiw}rb$&RnQ+j0e*EY3! zR=w0%{(?-T-3r}LT9HHYvC{P`Iv2kvUv3#2smJrN5Z=BOzIU1wQ+|cJJflzE<?mD; zhnC!OJ#6gSm$79r`Gi#0b{k6l%9Vf$?p%Lq{n{Bz7q4Ca{0HJPc{zE)d>=-eZQQxA z<VLpt$$BH(Qd(tPZhZweNh!>n2IJZ3I4eF^_ecttFvhfEPx6M1xXQ4h;AY(*UvXTz zLUQ{oNepNIHe}rf;^68IIw;sdy$XNviWkM}eV*)iFciIIeIjyX!P$c7N*u#t!L#CL zo{pCDhRP%xYTm!$mU5U(yDYF8hiOJ}*bRD^yrT<EIZQ@93;ayL6g=tKTJ*4zbseT> zBj~r*>gVKi7$D?-t8r>HP`9+(OpKxO_YLlq`&QRx5~)!Cx@>t6_nb)QU%dk9JG@Tk zI7e)aBW7Uy{cE#SbXQ?`V@a&>*Zbtt-0B8BRn|ULMkbm5sXUwt_c@&E`j5=14#oIo zW$q3fp{M#TPxa)?;HehNsiYl`l)bU~*U{Xo|1JfUy#3+S8B$xF_3ue%y%)P1Uys$l z=U?Zs!kcuHm)|7D{rgCkr8tW>(sRgolgrn^Jn{I7c$D$_{$1n*dQ+6zJ5%#B;=O^f zJXZXOAbvhX4XN^wt2OiGC!ymg-5FU_r-_YPPX-_i*j-yzAuIE*nkmOc176OZ^s=-* zD;H08<Dx6%hwnN6Qre{Gic-uVq{m}W+`!zu&i%+-!}9B@X6X|$L+F#i*SW?XX}?!C z&X5ovNzh5w924ncylMiQ@Dsn~uSz~wNPG>n-#qw;Y|$W^XVmXABi>UJrXeL_0B+@X zVK`>S(qSZ<Ea@F-Uxv-*G#L@G1UA{HQEi>3FU8Zazl?Z4T*ql}jGP9^#yCw{44h`Q z{HjJK8!L^JhZ^V|?J}%L?~tFtVGkNbkC@UfGqRnR>mz5GrTpX+X<TC6vCCOS|Lftg zOZD*1zvvuByzH)C^sMlrHSi_9m`smOm+4XetoO@kgC2d`2Bt?>emJ#-kQb>sB+|29 zM$ghx$~M%Z^si;IEjp|XT68I*NJiR6WslY`Zr1XPULzAC<%)a%L^)$@5dAHtJ0oXI z$mCMw)GD5c&Hu$r+#L)l<ytp68oOI-Q+{px#XNT|ym;nPJ--wNd6WX4B2)UMdIH&o z^GE^ba+;sgdK&RAoA@-h=4=TTlD#P8n&ahnsK%Zv#rvuhPv)btNxKfXspZO=wwI#G z?<0kg6C&Ao$ufC6LXBjTB}oa#5kt?lql^Gc)IT;wy2T5guwoRE@Eab5WRoS&j<mmM z9~IG~ut|?X*WyvwB<Du5@sek!j1-ao$&VCE*VbYBgjsAx9xW}ApNF0!KT!*QrB&Xq zG>!{$vcw+96e^}s=8@Xm;iaMTF^%-r=RkSA_P&D3^&l~gyhwM9cyGRo(Q@)od`q?~ zKBkwZ&dFrrD&MEahcEG;|0U)HkaF9U`*P<zxqBTQ_IJxXyP?GPhp*AXeP<l;?`9Uq zkFHMW3|;<NfKoPUDWx#ytXy{~r4EEUM_w@m>mV(4AeHm%V);zPl1BWqU`+ne&wOQ( zFFELW`ELvl=%fZmJU;DS(pUyo9xL#Bl2U!^VDU&wh{g)A@|1c>y_8Sa6jS}q7xsTC zqBNEMRe4#Rob&LyOCsgW%3k^6X0V(CQcjd^QI-7jqXGHnOvsZ_fJS-9vIO7ZU4o{R zRf!ZOx2P_+s3y0lB)2Fm{yvlc-jn}cmH+V7v&m0p{y?%FS-KLnv8YD=`4NhFW{LcB zGS0#(9T!WMC$UDYrre^4y06GBDidGR`!4i-`_(e}GvlReBhtOmZuMz&fgyB(0r}_T zKJ@l=){i_`YwSio`lNiqny14r&6EdM@(dZTyy|b)-@|P>!+*Yf684EhnIy>}lh1N* z@sD{#!UOTpOCLt>H4Xf8AAT4o9}-WJWpnaoe;-~s)i2YNUlH<8{<8dF!kj#9oqP}f zJP*m2B=aY~YZ^G`Z<j}qOHPi<KUxR*-&*RY>_%C!xkUrHMcuhYasDfrd{_SaNd9|8 z{`2tE{6%Er8T>Q(+1kS~PAy$o7mswEIqp1J!cW3E6pf>;#?V&iI!nYlN8YrqqmRm3 zQpQiM(69P=mus}%L*<Q1<>5%}eQ9qe?8no8RNfO>c}JULe=k3;z=_audhPm8;otVR zOXW%T@mp@uH1G<4yH?(0Z-#}2Y?MK)emu9xv;IG%wTOQupI@l{HpQ1g{QApE{qboK zYpx;R%Vn*!VA-@amz2KU*SSc$!#hR0Ef_*T*kPZA<UxG?#geYO@Ew;Xe12Cx!;D&! zs+(2+`bhmM8M8yH<*|X(Jl;3$R=-Mi<8!(Cm=+&I4lk1JvliVgt3Yj?-Q>Ftc&7>> z7@RioOTE%o;l=R0I1hJC3$Kk8{Pt77!OP`GAljg@f)2B77Pd)4J|urT#ccajejR~r zXqO))<)1VA<e!saHNwIdz&YNerG-YNE^~|ea*L93%#S~mc3JmGc7x2RFp|k3a?7dD zER|Z3?>Wz{A1b=ypBS9c!zWuvI(Ar^XF_J7Zy$qMk~|^hI#ZSivb7WUtjO|LBvwtH zs5}+vd<VaT2>DCT$&uc7f*YjXfX!#duyXVgZ+&Xr6v}W<?_BhHCvG7NJUsEiGUWAj z%~|GOJhQX@lSr)i++(qp`2;fvEm>Fm32A28qHB5YW%*Mbcn)whih#>3tRK;a9gE|$ z32H@gQ<p1D8hZt%cyh!sT4+%GB7#^^c(#xmET?#ZK&O1W0UW(9==4+nh?qW@=c&g7 zPUX19*E{1YWuxwH%yh;_MXakr<!&v15du?`3Ea73#-98=oqrTMlXPVK^e#9gW#q#0 zuy>sU)|l*-OT_w+Jw8nyZp_HTe0if_eQrK0oAm?sdR;ZXJ_UFW0BT<^Q+(ms@h|~k zEdX4Ljbb@~w6!ct(F@o4p?dV4iO(;ml%(-Jc~-ORD1BCQ5KbofT7vQ{IazPr@|Oq1 zj?65oz=Z3^E4&A#PT^JF6HD!BMTcdSuba6>zHzNHy^Q2ZuBRC?(VJ-+iQRal{u2p= z4=r8%dZ?)5I<cfH&#nKYsH;nCnP!gv3(pyf_g>w<{(V<tQ>RR8o_#mcs|_FOEI9E2 z0nkyUN61<AMR~!uWTO<~gCqTLhlPg_&tD|6)b)QAfJ7c7$r8AD54h?oc-X@d^|9dT z*32-UZ<BlrRL6W>Cu|Tj`FiO7{`LLBag#jmz3zj>Xd$mN>~EUb2%iC$%!dMdCF=*| zvtCEw^RxaFIh*8alXYd?R7$ll!9x6OEsiQ)_2zVi`0PFbG=E(UI?FdXZ%_Yp3wa)k zrjzz|b}p4-?eRH>X^YF?lRr$#d&C0MR9~pP7b9a`1=~o@r!<u*Z@n<4yz<vqHrAKk zuOGpe-oM;JUwRjo2_${IV3lmwn3bRSJ2vun+$%fet|qscSq1M7;jHZ$d`qIMxOR<O zZ4wIr!aNXKXD1t>k5+jcH6`cB$d$5RF0TXtNqgD=N?5p@Q)HJXsej?6y?WVaUCsrY z{<D95x$rcFuS0xaN#9o=eTC(l*YH&$Y2Md|^5D+)_4XU|g%rL%kSB%6*MRS9h`!2v zUlq2me#h6JeP2l7>o(t4+V{mr-0fAquNvFeX^yW8d|yc6>r~$to{yux@UBbhtIqco zv3(UgzUKPAkiyp%zORh$%cHLb-&d3E>rt60*!7iro%MwjzDDjrx+IbHeNE6;v+t|L z_O;mY^^oriDSZ9R_Z5<9BFZ=u(?$6RhVQG*_O-X;>oVULQux}-_Z9YimC#qz_tjzh zdP5%0*=0Q3_k|R`UXy2rC}WxLtAf7bzOQcE*L9AsBHtHM`1-Z)tIGFPLtjbXSD)=` zf#d6$*I4&R;p=eUSDo)GLSF;EuOZvl49C~6eP2l7D|a``*x>tWqOY{?Yt;5ND8jC< z6MbJu;p@-7uV&v@3w@3GzQ%1|KX82Q;QK-fU*GqAwfer==quy<@@!wFj<45VWql!q zuWfx_QQubwePw-L6Sl9XWB{_uc(d;dDSZ9)&q$Xf;=ZqL`U*)k%jT|`lIF*pcE{IQ zzAvQkwbb{O^nLZwSJ?MeV*8ro_}a_&g%rN__k9iczJ}<l%=cAc`})`W!7{%43hN6g ze66{QWla0NM(L}{_f=#2y3z4<ukQ;feBI#t8uNXP(^sAED`NX<bbS5H_k|R`j`e+I zd|w`YHTb@oY+oBYz7FzzA%(Avd|z4L*93hv`@ULiU&9gvZug1xeP2l7>w!CwE=h#s zF@dB#Gx4}U#xLJjo9*i-j<1mn>mDh5o#Xoo`@Tx(E9(2|uzi&~zGA*Fr0}(q@2kxB zRY6~I-&eQo>$!J>WjxCFg%rO2KEN_o`MzrCE9v{{vwd|rzP9jvA%(A)@2k%D6``*I z-`9}sYo6ol?=Q2ykiyqNzOM$~R}+1ueP5%tulMC6S9Ux8#`lF3zTW*4%h>GuYN4+& z-`BY9>lVk?slG3y@O88AtJU|_Mqe4<muLGr+3~fL?+Yn>o#^|D`o22oE9?83uzk&P ze7*S())!LvD)N2BeP7-56_VSkj$e}I$FGO~6RfY>d|yc6>!CZ4E=eSPUw!ly_I;Ju zzJBWXI>+~g6uvI-eGT}&hUlxz_f=v0s&stq<NHDiU%UIh(!Q@z`l|AM)!4pX$p*{# z!Aq<!r114}Kg&4g`x>XOI^S2s_LXpaJ>dI73SZawzB0ZqkG>jwUrn~J!yI21`M!|C z*P*_ztnX`rzM6esEw-;u<@tx*?+@{PA%(AxZ)X`LiiP8sK1675^?kM3zV38<ZRGnx z3SWQnec?S2#zKVj$ygZmeRbHr&UAb|{vzuhDSVyb`zrH&RnS-5_tkCt+S>7TrSA(V zd~N0Xs`7o+&{xv;)o1&9QvTGZU0=ugzL3J#<F_GQlBn~2Md)k5_cdhuy4dlxmG28F zd|l-GYVdtE(O25{HER2+c6`0?0_zJYeC^}=YW97#(ASvnYuxs=`d`5^-r)N}3SV#D z$};+|cY50BE93j}Y+pT&uQPmKNa5=@zOSgCuMYak`o1P?Uq?H>cJ+NBg|DN0Uvb}8 zH+_X<>7(P9r1|ly!11-_dDa(F_*&ohHQ@UiqOUUFSB35CKKU@6-6vAMFQo8w?=47| z=qEPN??>sY%J)@c`}&dNYpL%GDSVyf`x^7}HBMi3zORVwYe&b|p}sGq@U?^QE93j} z=&Ql^)nxnn+nQh*H}!oXg|BD&SjGl<1&uN`;Z?M}*!O*n+P*p+Uwiq!kiyqxzAps8 z!dDA@jrqRDZC|yHuXmqgJ0gXzxxTMf-&Y%bWqe<r?dv~p1<QD^?+Yn>y?wKmu`w>0 z!Z$S9LtNl?&6G6Xvu<;|T;+Q~3NN?#UZU{QAzre6UMB3koauO(>w7^8FK75(lJL?e zUc!D}O6<Js;CLzay&#2`Qs2t}ybOt#GT%#u?d7@E!FqXloOO&8UjF_^q)Qsp@G>f1 zs(ddswwG%hFSqz!kiyGVzLzn085b{gzL$vYWr5@6Jl_jacsbnnl7Sa_X4~H2dug)0 zY~*;U^}Qg4mjd5Q7GC7dM0>OErN#EL+zZyrM!pxM@RI7)v~c7#dH%N7^7GbPb1pUy ziNqtdr0ibPEDrz=m#-`{M(vnb!6mZw^B<!{L39;t{fs2;vs(CX^8MGrzj-lWULH#j zRaPSPQn^!OXL`>`xR*6>wP$4^DW9I0kVKwt%BzfL)h2wq1BYa3EbvT83=Es_MGhP$ zTw=knQ@JY+KiWISfy)S2STO8V?u_G(^U58#ig1ku!%pR%x;^bpd=e~R9pQ)t!%pQk z-gsm0aR+W7++@M9S-{^pa5Lc+3x=J_UETHz?<Wr2O1RB}Vbk+`2aXc%uwdA!T*LQ| z@V0W`IN@#!hMmgovdb>sTOS8&BT2Z=f?*RLcHjZRLlz7>mD_5ot-QDcrwNZ*Fl@Hq z84f%~c-(?vr*hvsa=y2p17`?(77UxUv9SYZ2~SusY&Ob^5?E+={*Ww{(4QsA_h+%$ zk^bbsVZtRA44a-Wao{q-6&4Jed2V#zD#A4u44ZwU!h!1uM=Th2DtFJ3OTCXj3>L6~ zaFYeYCj1u%ZYJDf!LSM6=)kRn+bkG1^Ssc3ql7yw7&hTU9XL+7+k#=U>b7y<B;h^_ zhRsI#m#l*9<{ltCWWlgGBBdQTO?cFTVH3W_fyW4sTQF>Pr0+R!hOlSBunEs`;4I+@ z3x>_A+suJOGId6OmL%Vw#pc!h@(01%2oo-`VA#B1?{eTW!W9+_o7rf0;3~p377Ux7 zn;f`~aKwUP)AQ~Q+(5X=f?*T>Oo9RJ=58k3V!^Q4H=c6fR>Ex-44ch;lLJQycUUm& zRBpo!H}o!W;5gxK3x>@+f6IZBg!?QQHt$xY4m?13$bw<BxwG#FYa>l~)PiBBavN>5 zk@t`Tj}acXVAyQIUpa7wuxG)rQ@LLqb)5GD2hI|nuwdAP4{+d+Opno@CCT?^v3Ub3 za^NuG5(|c%%H7;~o%iZ{!P+PzTw%em>3PtBs|eRvFl^?z!-4AvM=Th2DmQcHOz%Vo zZXn!b!LZrfdpdA4;T8*q&5ks~fm;c;Sukw&=T#ELYF{Z)!W|Y2o1SlW;5gxK3x-Y4 z7dmi~aGwRkrso9?JV1EJf??BhnFFT@k6JKncK&zY2^MgS@VEuT<~`*R2hI@oEEqQ7 z>l`>sc*25Vr*hvqHsYP_z*sz@KTDGD&tkJS4su|u?gYl-&cLu!xnH07U2k&-#v)E& ztl<m{n`7M@^0#>H=Eho0U@X-P44YT?kON~$CUC@pVRNb$v*E)!ADNd@hlnj@b^S01 zteiJ&fQMP?!)zcBizMMS39L?vW*1-Fjn(HlJt3LN70oWagt9lRvV19Jf0@e4ODPAd zR93fB4%exy{RL&BL1pn}ls(NVOFJlgTUC~KQuaqxR{oN5Fs`yXMmd~RS$jEUVnAha z7iCXcW$6`^y<;lNucYkHsH}`r4rWzWUqv|_k~@9T?Aog-6JeFb*HHG9sVu#gvbRcQ zd4jUPPG#k<C<hx<R{xrExLIXwH)Wz#W$|^CJyDgV*HiY!RhIvTvOlS^^0$<O11hU~ zD2LN3Ykx<X7*kn%17%M}WoeSKH><MzM#}z>+zE<iSN@)IFs!or50t}YDr;||OjM~X z?xpOhQ(5{)%H9T*<u_CIH><4dqa18iS$zxTa8zaOt(1wl%HrE7dy*<kZ>Q`XP+8tj z*`HQfc?ad-n9AxuQ4VKR)(%i6vMP)3r0faFNFn|CF3R4p%JM%`_Lr%wyqj{cN@evR z<#3(K+IuJy4JwQ8rR-@|Svo}7+p4nsKFa>6%F6pG2jeQMAD|pgs;pf`nHW%6JWSb> zR$2NWW$&2E@)Tu%MrCE1axkm1dO77V#y{!LD<~5f;pFOmh_VM`nAFBf%3h38MYGEv zrtHT!Bz@x%kw<h^|5cOPF-^*!(xmcfNg|yE&uCJ-N|IFW?LQsuy|Fep{x!%|CPP}2 zBxd}BO?b$Gn+dmAFl@px2W}<YX2GxtpW?t#!W|Y2JC*y{gKNFL9XL+7+k#=Ia(`X% zfVY7ICkgjiFzi%r-#se4zpn|_#sJ|V3x>@+-|E0=!lM=pJC$oW{X}oE1CJ3Nw_w=x z+~B|&!kz`gPUX&gu-n_ofwP1sEEu-jb>|=K{f|Tt+qb)r3^LN(GbJ(24O=FL7uI-> zI&he9i3P)k=Yzc8I&c}`3JZqK7Cgs+s|eRvFzi(Bth008!46zUIAX!DSsTR;+(5X= zf??CMw>nrG&4gPl7&bjW;J~ef+bkG1JzwF#QNkS-44ch;nghoPcUv%QW@BFmP7?03 zVA#yYMh-kcc*ufb)ARH4lGW}TX~Lrx44ao#zXOjE9=BlF^c;2I3}MfLVKdLiI&hZo zgayN<=Up5)BsUTCXG!w?S!{a#@XcTW!-PvL7&Z&|gaelmuCQR(gl}-*D#A4u3_F#3 z<;GjQa~-&jaKwUP({sH8HxO>JVA#B1OB}eFaEk@Q=1{QapTXK_CERAgu$kuv9XLw3 z!-8S6p09G?IN@#!hRqiIt^+3t_gOG(!uvb$0O27EhRw@r69-Nc9<^ZD^!(Br!P*!j zJZ{0TSsMcmoFVL4Fl<?Gm6du+9XLyP!h&Hl&&N4%NG1vB&ywW(v)HNJ?mO@3&3520 z;Svjm&F22(^<V+Z2v=AzY<m8y16L8Qv0&I7%zy8|b%Y}p3_F#3sqGPOkpnjnZn9w5 ztmlXWHxq8LVA#9?ZR^0Tgxf3_b}HBVn}ql8*MhYXCEQ`bu<3cZ1IGz>TQF?q`C11~ z67I8L*s0u}yYA$D-+>1R4_Pp5PENkzz-hvx77UxsUFg7LgvTuyHhW#>)nIL82zwR` zoA93<I7@iKf?=oRtC7!pzi?p8a?zh9$@gcm>G=c)o_3X=d+wXw9uABdvUtYI-gt)1 z*;nqBU;(FH<zssJv;$*yEuOKmH=bd0tn0O5ca@Ln*`+}sxXQ;2{EQ%w<`+ls!#DXQ zO7+*f`q$Sl=iJZVynG-(9(y-(o2>W;8)Q~jG`l)1gvjA$m9?`d6Rj$XH>d20sw~}t zvNx`>d`rsyq{_--%E1AZ)nBC?POGfliZU^#vbcn@C!?}-Ys%iN%JOX}`$KZ8mZizI zl!IZF)!R`Hm#M5RrA$<*EZ&~7r%q+*4wStOD$C0#`<qo(?npV<s<QfPl*3V#wL4KJ z;wp=GrtC?oEG?((9Z*@m3uS*=W#z7vgJUYID=3FEDr;v`CbBAvccbhH$xto}wcROu z!z#=7pzJSGSy@RrSf#RhPs-ssm9=|OCK^;0S5fvft1R7{vbR-bIr@jRet%SD<vx^y zah28kQVu6o)>cy{22>XBN7<8BS-L-E@0iN+8p{5R%E~#EgISf;-=G{0$)zsK*1434 zu*%{CD0|9Omex}CR;esMkg~r{W#vJXgAFRH>nMktRo2d<Oth*jKA5s6s<QMD%HFuj z^7)kgNtKoLl!F5*tG`J(oK{(TC}m<yWpN*6Pex_wEtI`kmF2fm_G18({(KwdAeZUY zw^I&d5R%&Hr%Z5}UVH~-4+awH8-Efh%k&{lYVXse{C-U;AJC*=nI?t9lB9AUUNh_+ z_)>5HYmlo<#-t`m%$Nk5@GJ*zCfs7dunE8ZV$gFd;Wi6~P5531juP&$VA!eL<sbdW z`=tZN33ppC>{RZZi3#sy2Tl_1vtZb%+<v=NcvTKOKzPW4VW)DB{8av8qXVZ2k6JM7 zRPLs8PxqdEAy^w@gvTuyHf!S+2hI@oEEqOx<L3^XB|Krluv5A396H}S%7H^N$l$gq ziD_=wsoWjkyVU!d1BVHhSTJlB@crk51uP?6VZpGO=TQf)B3xs^uv59l#+>&X2d*O= zv0&ITXZ)za`>_Kz5N@(y*z`Qlftv}pSTJmQ-qL|v3Ab4=Y<hn4xnONX33pg9Y&Q4( z4jd=kZNadajV=dH67I8L*vv+=0}l`$vS8TsypIE?36EMZ>{Ra4)iG~F2Oc9lZo#nW z`ML36ZDa_077UwtzTJVdgeNQ*Ha%bDz#+Mbpg&8J@6Te>^Dzz_CR}2{usLp&J8&7{ z3JZo!c;fHD0#*^Ov0&J2?#CUtj&Q_+Vbk;P9JqmSlLf=(1^W{RZYJDf!LT_L%y-~c z!fh4|o6WtI14jvWSTJnX^IOjbYa>p$+k#=U1&19tNx08~VH1u!@BrZ<3x>@+pW(o1 z!lM=po1XV`;4#AE77RO;^B&E48#{1@uxG)rQ@P5WzUIC7w_t5#2~SusZ1#;mIdDiO z3Fyy~<omPOsod<c?Y&DJI83<2f?>0{8y&ceaD@fKrsoO=t|DAx!LXU<k5>f?SVuTw z!LV7+e{tXj!c7(on|Ih79k`iriv`0@<xV^PIB%f?w-Ro%VA!eL@<$%=4t3xt;SLLi zP0!mnaGY?r1;b{q``0tU+DH=avtZb%++I8H<fR>Wfbft7!{+4V8V61j9<^ZDZ0_$l z@EGB73x>^lp5wq7!kz`gCcK#gX9-VOFzi(B?4g|Z^3%cEz$_R2S(1Ez7CR;XKh3+# zfu~)j;|A33z?dP6XDrQ)XV{#aG&%6J%XCaHcXwdSuEjH!=EgH@j&+|sWfjm}rei|# zQV<9((^2YWLBLt2Z+ppf%k<s`nbpa=x(_erLakY4<wul*ttzWOrW}r{to?*C5m#CK zDP>PmW$9;>y#p%CbCmsQm6ajM3LX!PsjQwsIh;{hyB=jCtFm}~%ASzis%2@i0cCGk zWqAQ*f0@e44Jik!R90_9Ib5f*b|z(_L1ppAls(NVOE;nHZB<#mDP@0DW#wj+gK?GB zg_Ofdm9<}?Obn<jE~4y7t1Jyu_KvA6pGDc9QCYb;<zQB2^%j)FAsNbLp|&MuBCN8w zn6jr#W$9Nbd#hBIZ$;T(r?Rqya<D;V_12Wb%_?iRp-i-@EJpv3M(K&FEZvT>H?Fe0 zl(IjmvT}RM!2y-kJ5Ua%Ro0eKCdO12??~B`QCa#m%HFKX@|`IALvpFhvUO+5!LZ8e za?0T{m9@K2CaP2x?@HNIr?RwyvbRBH`E1JmW|ft@Q4Y4Mtlph+II6OC56VPbWpO2C zPf}&+o|L@<D$Dnx>`$w#tfCwoQ(1i#<#0x2?bVcttjgkRD0?t~Nq@eUvX{&B@&si+ z1|g}9Ur`QnnO^;C%3%y7(l@$A$};^%O=^FyN%<c%sk}*(f?iDu|0qc+_tw=T-mjmu zhM7obdxKnMGA1=iV#Xxcgn#J3&4gPl7&hTr2W}<YX2GxthaEUdxWj^B%M;AUbKYxD z1oIpx+-<?IW$e%W+q=hslZ5*$7<MXmVC8JD(}4#F4_Pp5@%&P!caj6A36EMZ>{KrC z<L`TWIq(?aaSMh`&+9pGhOlSBuv57%?;-DRj|XcbOL)S9VW)DZ9CCoy=fEKuWN_P* z#56bTRPLvZM|wYV;4tA53x>@C9_hekgexo<Hd}B<2d*MqW5KXfxz=NI-g}P)3s^@u zV!^Ok8zT<fK)A_*Vbk;V4%|$*#e!ke^N$?3m2jH{!=~pt2aXc%uwdA1?kyZRPPp5G zVKW>5d^A`aNy2>=44c`w&w&RB4_Pp5dcNF&(}YJY7&cq*R0kd-JZ{0T>G|spoFVL4 zFl^?zz=5-bCoC8?J&%tDYa=8#5%gzC^8HzCdcMtp!-PvL7`8Nuj2lZFxQuXx1;ZwM zv;$WWuCZX)0^fRxx3dG+5sp|eY<m7+Bv`-(!c7(on-}b34%|$*#e!jTDClwER>Ex- z3|q1xV_mBQM+tXWFl^TIAr2fT+-<?I*@9nn;3VNb3x-X2^&`RB7$7`k!LXU<We%Js zJZizP>G?_r9wR(%!LViVarp<{=?<JB>{&4ERIYlLoxExX&Jv!mVA#A5&UE0AOcKza zCCT?^v3a+8;o)Fygb9~eFl;vW9S&SZxWa;Ar*ivO?Cf3az*U56EEqQP{A~xWBOI|{ z*zEkfI&cHwCJTnmj`Y#WU;&#6w^%T2cK#<FxRr351;b9|o_OLxFX_Nh!W|Y2o1V{e z;5gxK3x>_U@l6L#67I8L*z6lyJMaMEAq$4h=3e_yur|_!M=cmOn>*#eV}!>o7&cq* zY6s2`_AD4S;WHgLOL)S9VY4=B92m1)^k+%({aI}GjZGbR+GRRMq<^dk)&^$C;u%YG z;~6$5CwDsVw99l%FE4dq%&x^VmgdGYY<AJ(ZP;C=V|un<5O9|1ayuvv0?smhgA1lx zrkkMmSI_4{tyv~{vVeGv(geM~PHBSP-=H)>@BgGULGN!;nxJ=&(geM)rZhqCZ&8|{ z_cfFz=zT4v33~q*r3rffH>C-Bf1A<-y=N&+(EEQVP0;&0lqTr?T}l)5{vM?XdVinN z1ik+cr3rfffYJoLPf(hm_YWye(ECS}Cg}ZRN)z<{38e{o|CG`My?;h&g5GnKCg?pR zZH%RMo!kbb1!qv2p!fACP0;)LlqTpM{X>p5LGJ~WCg^=bN)z<H5v2)wpGj$g-Z!Q+ zLGPPTnxOYhDNWG(W|SuAy^zuby?=$$1icqgnxOYEr3reUMQMWGH>Wf~?^{rsp!Y2) zP0)KWr3rffDy0c}--^-%y_Zm$p!cmQP0;&=lqTr?XOt%B{pXY>=zTGz33^{bX@cG_ zqBKG8QA!i^ez8bdrvFlt+L$KgmuphlrAfgRniO6si42V^Pw}$D!O^aPi@YXlkq4Xb zLk^6QK?blE3x-YjR}S1txXprL%PeWhtKJVBI7+y~f?=m}OH*sS0~|O`xZ8qZr*aSf zIq4NSaFTGJ1;b9|_9!p)UR@TfjRC?#77UvO9CY9`;ZX~QEw{~vd0vMDj}acXVA%A0 zq623Ldln2kmHXuSW4%2cI7@iKf?=m}bH85U&2Zol*FZC^H4yAn?yk;x-l_+JwGk#< zV!^OexuffAyqg`kjBteo!)6O!=)hHkYb+SHM67-LId6dj*Ab3bFzi(Bx2s}anFBWv zZn9w5^!)Dq!2&iDZn0q4^!$hew-Ro%VA%A0odZV+cUUlNHuu>M94Fju!LXT)gB&<X zxX*%NGaH*b@BrZ<3x-Y4Z`>EGjWpp=3x>_hYRG}d2#;GZY<iA4aE7pF!LXU<Qye%; zc*25V)AQaA9O4>irnLrwP0t%RaF}q31;b_m|2`C~jWWU&77Uy4tqxp8xW<BE^MYOM zz_>eO8fd|=>AAsy8wfX9Fl=71J2`MO;T8*q&7t6b?hO{Om2jH{!)Bfzb>JxB4hx3O zdj72g#|d{^Fl@HqIS!m8+-JeC2_Njh1B8bx7&b4fVh2tW9<^ZD^z7Xetc@|k;}#5? zwef%hX9#;13_F!8-=W02!hy4dCoC8?^L&~EhqwlsX{~`^r*b=QU*hfSz+u8A77Uxs zy^#Z#5w5Uc*!2ATV6Zl-2-jFJY!2rA4qQh#V!^Oex$(d3<3$~~fpC)r!{)5uSO;z< z++xA7c>~(Tfm;c;SupHWuII|A_u<{a0!9gUSTJmQe!_v{gu5*mHuHRg11AahSukvQ zn_f}oo$J5@goi8`HYX?b4xA=DYQeDC+$9b?MtIzUVYAn*`E#%~GK4(~hE4cE2hI|n zuwdA!T;z)9ysI2|`enMzMZfF7(=OA!S6aRO9eCPh`h`C@&fCO+r(LFFdil~_!P=O1 znU2ZHfDOCLbWBLD3<AzFT}u7qAmA+1|8>@M%XAa;{<siWs5Q$ZPu|r%L1}{CpQJQF z?|-2*LGOR1G(qoUlqTr?DM}Oc{xqctdVhw}1ii1KG(qowqclP9&r+J8_rFt`p!ab~ z6ZHNZr3rd}p3(%pzd&h%-e06NLGLe7nxOZ8P@16kmnluqdxp{ky}v?fg5F=HG(qpL zQJSFl*C|cV`x}%d=>4CRCg}Z5N)z<%QJSFl)s!aa{Vhrp^uC7D1ii1NG(qp^AJY0J z=>6Z6Cg}ZbN)z;+r8GhB|DiNN@9$8Wp!atvP0;&$lqTr?eM%Gb{y&r^==}pq6ZAeo zX@cHAq%=YAA5og1_m3$}(EBHpCg}ZBN)z<{8Knt&&rzD7_t4o|IVR|R2BislUysrR zy`Mp8g5JMNX@cI*q%=YA-=j1^@8731LGLY;Cg}YKlqTr?hazQ}ex4?^3pFWUq)FxZ zniO21Nnx8LsocVfkG;e02#!e&T;w%bi#*tbw{u{O4C`E`!}HtyLC>v(+bqwp>3M|% zM+tXWFl>2(Ir6HPaNs!MZVQH;%B_0#S+B)`lZ5*$7<MYR!}i;Ga~*hq@Q?+=W}d&| zz-hvx77RO;JFc<Od*$|EZHy5fw_w<*-0N5U*1Ow*GlV@0hRxcz%z?9nCoC9tDtF|O zM|$6J;1Jh9Gp#icY-Xd<fy0DLEEqNm7;@k;!W9+_n|XfbwqR{k5w5Xd*s0tBN4)9% z(Shp-M=Th&ymI*GJ>E|pxPfq!1;eK2BOJJyaEk@Qrso|TxRr351;eK2cWw<9FiN<? zf?>0sA9mn4;cg3t&1`f#aFTGJ1;b`G&T`-Z!b27eo1PDJ;56Y;3x>_hYL)|!5gxZ- z*!2AREy3Ez5cVt>HuHS117`_OSTJmQ{-pzlxCWYOt$|?E^T`ezCR}2{uvx$=2QDLA zVZpEoukXNBgljAqHk<p|zF=+C5sp|eY+0tK|LWc1zzu|(EEqOx<L3_COt{5@VRI-r z%7I%6w^=Z3=J{(593|Xg!LV7+@829OV4QHb1;b{ZM;$mxxX*%N6aI|@4-g)*VA#y_ zj~zHoc+`Sn)AKwB9wR(%!LaFhO9##n_AD5-{Qh{)O7G1-25Tcrc*25VGaL6iaENQ5 znbsNzb}F}%gwuC9aF}q31;b`@H#=|{;R*|eP0#x{a24Si3x+K}DSqyI-i8ibM>t}^ zuvx(8dV{smK)A_*VY8lZci?8iEfx%$1-!_CTM4&WFl;W<k8$8A;SLLiP0!^H94Fju z!LVft@#{~$iJO82OcL(1VA$*%k2~-H;UNo#&B@8{95_vQ)Pi9%&p&bCF~Z{(44X5V z`3{^R>{&2u!dp3TmhglH!)9%~^@m_>OuI~fI<|{9?7-75)6whV4m|BL9kZ`99C+Gg zI;NNVIq<a0bWBb*wqbXfjtPnPd#eTx>kKZ_QR<N(;4IUhZJutKZi3$L76J>kW|`zk z!0jNV33|VW(geNVOKF1MhbT?Z`+bxq=>2|56ZHN7r3rdpMrnfHhbc|a`-7Aw=siVg zg5J}VCg^=Rr3rdpL1}{CAEGot?<*-y(EG!bCg}YUN)z-xLTQ5DM=4Fv`=gX5=>0KD z6ZHN#r3rd}g3<)NKS^nV-v2^rg5Lj1X@cIzC{57&Q<Ns?{b@=Q^!^N`33^{eX@cJW zMrnfH(Lbd1P0;(_DNWG(IHd`Ce~!`wy+2QBg5F=CG(qn#QktOmmncop`#&g6(EH1j zCg?pwX@cHgp)^77uTq+z_tz**(EIC@Cg}YQN)z<{Pf8Q?{wAdfdiN+z(EDmi6ZHNT zr3rdpLurEEk2p<h(geLPpfo}6M^c)g_oFCH(0c==33@-8(geL9LurEEj}<A)^piBH zJz10TQ#7eORg;2dO$twwB$Yew#^=1>|IQjkJ}>AU@FEAs$gs|3I^c){w-RoX#KaE4 zPURN=aFw^M14jvWSTO8V?uW7Ky?^%v^BgDKZNac*p8LcT-f{;{67I8L*s0v+g`0WT zI`9DDAq$4hs{6hJrwNZ*Fzi&W^NK6HZ#eK6;c*LwP0xi6oFVL4Fl@PPF8QIC`E9T^ zvV<or7`FUSa(0FHX9o^(4K&kQ1Hn$^=ARn%e&N7j!X*|AJC)mU+ikrQ9Jq{dg$2WA z3+~~-RfKCS7`D_#OWMo*CRo5a!VwFG&Dwa{fg1=nSukvR?sed1!YvjIo1WVoxRr35 z1;b{4KHPz$ggY!4HsS3ZI8M0Rf?+co|G7R`8%e@_77UvOT<O3Agoi8`Ha-8^fzyOX zEf_X0s~<Y>7~ydXhE3144xAzESukwYM%aO~geNQ*Ha)*~U9dJnTm#Lt)<Cf7`5p%j z6E3k}*eqbD1D6r5uwdAPPjcWY!Zj8QoA6!^Tt_%!!LSLh=fDkwn=BYMFWA3z2Wz95 zaEk@Q=1|b*z^#PaEEqONq@Ou(lyHXy!)84n>A-Qq-4+a+Ex4ltCkgjiFl@r_{W@5{ z0m4HT44d$X1E&d(S}<(F*E{eS;c*Lw&D!{p17`?(77RO;+ic^RUY!GH2~SusY<k|p zfkRva&9v4)uz9!o=dXgb5hh$>!LZrf_c?GG;R*|eoyrw$x`}tW16L8Qv0&I7%ujXT zI>HePhMme?+M4mc?!XO%n=BYM;Q|M4Cfs7duz3R-PXueDm2jH{!<J?GAO7Io=D<<H z9Tp6mRky@}<Al2{7&bfq(GHv>+-JeCQ@L52ZR+jpzypMbEEqPM`-5wP1xynjwP4uH z^J5M?MtIzUVYBo1IB<rrXTh)uw>of^@Pq}!PUSBA@#Eeh4m|BL9W%zSI`Fj1^vk+_ z;;p_WSR2zW(=q#6=D^b~(=olg(t)R4rekt)x(&O_bWG3Y1%co)9i=V{0?sl$)i~WU z-2}b&2!VxKvrO_NWcqiMCg}YJN)z;+q%=YAH&U9Q_uo^Rp!YvenxOZaC{56NFQo~3 z|0AUddcT>{1iklBnxOYvC{57&t&}F{{WeMy^nN>~33~6RG(qooP@16kKT(>X_W?>1 z^nNF$33|Va(geN#nbHKk-%V+P-Ulg7(EB}<Cg}ZMN)z-xL}`NF@1rz9@Ap%hp!WwT zP0;%?N)z-xOlgANAEY!v@8}=W`X=Z-O=*JOms6Uc_Z5^T==~u|6ZF24(geLfOlgAN zAE7is?<15Z=zWyZ1ie2>X@cG#qclP9k5ihU_a`V#(EF2=Cg}YylqTr?uaqX}eT>os zy+1{1g5IB|G(qprP@16kRg@;^z4|z<NfY$GAEgO;-=ES1z1L8hp!YeHCg}YelqTqX zE~N>2KR~1`)9W><{iY`6hiXz8(WKxoO$xsyNh){23E%NPz9Kl<O}iol{1*qFc0~yI zMh6aYx;@jHZo_6a7CLa4aES%OCVZ#^ml3Y8VAv9)mCJeCIB*r=8ViP<%H99uTJK+7 z!P=-J9I;^7socds|ACiw;0D4?77SZnIiz0ju5sXI!YvjI8^4@;!uy^Bw-Ro%VA!eL zb)j#2a~wEIxWj^B6W+{$<Al2{7&hzq<;#P$ktEz_!LU=g?EG`QyBv6c@Q?+=may2i z_q=uoP7@xrVA%BB<iKNu$1NB(J@4+o8N!|g!)Bv=77G?IOL)S9VH1AJfkT{b&$Oo7 zunFJfz+u8A77Uy41rA(BxWa;A6aJP1R}rqUVAzC99k`Bg#DZbVhq013dD&kEYomd1 zlLf=3=Z74)nQ)5*!zTPI2W}<YX2Gy|!T!L3ql7yw7&hSp95_z6+k#=UfJF|RB;04g zunE7~8LW)~!b27eoA96mrwNZ*Fl^RFhXaoh9=BlFykJjs;0$5Uf?*Th(}A;uCoC8? z^E|_WL!55Uw5Hpzndem<!P*EDF0o+Pgl~4>GQt%W44d$U4qQdJ#)4rJUf{rWgd-LV zn|-6qfg1=nSukwE?_L%xU^C$s3x=J_?Xy*d_lN_x5^l3#*o3ch;3(k^3x=J_9r3lf z-q{WuC){npu%)?waJF}l11AahSukv7V{-={AUtHjuvr^#{32KzX~Lrx44d$f1CJ3N zw_w<WV-B1l>{&2u=J^x{&Jv!mVA%A$w*ybRB18*r;K0+a2y?ld_xJW-ZA`l&gy&lw zc-j>qntQPWPrD+-jlRK#-4!9`7<&bQ;EE8ySAu}EBCI`Px)tFdW`*)m@oj~`ngH`Y ziLc&{G7*w{r2JK)Qp%pN%F^vAd&^Xo??BmKrLwY&a<EQi_1=`j4JvEDPMK&{S-cNr zPpit(eJOjRD$A=W`{ODr_oEz4s;u6ha(F;xZ4G52t+IFyWzU$((r-}qW>l8XrR>kD ztUQ2nFeGEB)CTGcwGmcXdmv?^Ol9#wls#1{OY10m>r|G{qwH@`S$Qz!V6)2VLnwz^ zRo2d@Ohi={*HiYyRhE8}vNx%+{7}mN0hN^z%E7eC>cc39$5hsSi!zZ>S$sHUPgZ5= z5tO|lxyIyMbqgr_!zwF}q#P_$S$!1caFxp12FgU8%HpFbdm2=h9z)sNtg`%A%KlcB zmEWcujH;||q#TZ`tUZo0kyKfHJY~;-%F-sv-n7c{6Da$~R91e6axkN^`b5g%tjgMx zC=(btq(7fb*@Lk`o`0M|*^8@RYU5POeq7%Y#L!GRh$~q7#%UsDDfXBqwU293{)8r# zPij)|7flNPDvA6d+vKxe>&3xgra`VUc?sGiiFvOHoA4nHjE6Mqd}9jFUv=PC!flpk z*s0um*N=Fsqrq%M33pg9>{RZ1x4+;mbKp4PZVQH;%00Vkm3O5BCkgjiFzi%r`>nS0 zPIuq|!b27eTmF8?WeKm^fzyOXEf{txcf$O7Z>9r}5gxZ-*sP5gE(+F0hOlSBuv57g zo<7~X!-2DeCoC9tD))^&cJ(fH;E)V5(t<N3G0hE|@V6Z}Ot{2?VH4iffy)S2STJn1 z;73b>1*{@mW5KZHsq0B^cuzWT9pQ)t!%pQoQq^A4fg1=nSukvRKF@)h3Ab1<Y<8q? zI&drDHVcML&s#filyHXy!zR3Taj-Vxgu5*mHnWj(;3VNb3x-YjY6l)5JY>PJ37_e} zX~Lrx44ZI`1CJ3Nw_w<WH+A3)Vb6kL6aL4~gSC+*JYm7G+1z(Ja7b<<=+Bbm`?J`r z=Sv+pOt{2?VKW=YJ8&7{3JZo!csB>GB3xs^unB+qvtR-12uCa!Hiv>S2W}wTWWlg` z4gSG_n+dmAFl@r-J8&!EHVcNG%Dp=<&pXV4ql7yw7&hy9I|q&v?zUjqY{9oL4Aw@H zaGwRkCcMId2M7;YFl<&`!hzF-M=cmO8>Pj8#|V#GFl@qe9XLbSvtZcrN4HA1_P*l4 zS;7+*44e0qSAH6-jgU+d(4QsA_h+$rx4PSb!-PvL7&e>xG6yarTw%emQ@N_0%e?P6 za24Si3x+MfdVgY;SLwiYgd-LVn^TC812+(EvS8S(jc3||wb4wt#e!k;4*N$3ZYA7i z!LU=gl@C7X{nUY@ggY!4HmmLk2aXf&wqV%2Qg(3QB;h^_hRwe5&IQ2&4iFx)VAyQ# zhaEUgc+`SnGtb=)JVtojf?=}-&vM`lVb6kL6F$&^vxFxs7<MZ6&}pxEvm6++T=Zv2 z^8HzCHuvl22Ww;6^)Y6Q_c}0U$l@8F1~Z;vvv2&;fu~&`4-6mXo$SDvU5jUY8q9cx zoyuJ`^1fGP!|wVRvzMYE5L_Q)8u{-<R;dr`bk@iH^QK!L4>!oHP8P&5A!J3EXjWN# zIb~0)%F-^%-l)p*D=7QpDl4y~989XLj#CZ~sI0w;GLcqUd^Kgyn99;?D0?$1%de&E z&#J6UP!5LVRxL}DUr`Q+Ro4ERGEt_oxSO)4N@eMFl)ZH-%de;GZ%|qJ8_L0EmDRtc z9Bx%v+e4X%sx1B;WlvmX=?#><NtNYE%KibBl{Zojrd3w|o^p6hW$hm*6B(7oH&OOv zRhITr_J(9AmxbCNDf`1JD{rP8EK^zCM>$-jvi26rM4igwTPb@QRF>XG+1sqL{C3Lz zR+W|LAJY1RQI*wqP!7jc*8YhykyKecK-n{(vh+^M-n7c{yD0m|R960(axkN^`fkeM ztjgL!%0x&mby>FFL)jBnS$Z#JZ<)&SA<F(Lm6i8V4%VrxzMpcqL1pa&l!<1Q#mgvr zT2+<~Q}#wxmOn_@A6HqKq8v=BtWHx752&nNPMJunEM7s`Gp4e1r-QX7dowD_cc$#m zs;n%h9K--7{dpJ4VJ_2accn~V5R%%cpzPr?y>vEZF9s6n8@q{=W%@pv)b6WEd9@~$ z`)N|Jzb1t>lJKj%kN(6OBt9>&8Q(eltphj9B`E_~izH?MgH6xpIB+ZBHVcML_+ST) z67H~I*o2E6I8M0Rf??x9>c2g&HCVtT;XVt7Ex}Pc?&v+>zypMbEEu+UmhVYk;lOFa zqZSN1l{@|P)4kIic#QD41;eK2eH}PM*t1~R{0{9#4xA-CVZpE^8)w#e&z}>ljgSm7 zxNS;eS`c<B_sxZ;dHoI?CR}2{uv59FrY0}yz-5FhEEqOh@K^_~B3xs^uqD{<y!X9b z9JucPu=ghLQ59+XXw^BLPG=7gAcVyR34|pftg;i9K%+q-n<!w?BpnjTX1W6bL{Juq zfU+toC@v^2D2{-LpivQUM@2;C(>OX#6dW^(4l2pH&s$Y}`gBMfXTE#?_jiBS)^nbE z>v`*~x7Jftr_)GfmqnSvvNnDx4lZD(RGw~8rm(d9Rs-d1shn?7rm(bpe*@)Gsa#=E zrm(bJ)<AiwR9<CKrm$2_Z=k$RDsQnUQ&_qY-#~f0RNiS(rm(bprYN{Jc1z{`7G(-c z%P%%iu9C{fEXov?!)kp4<>ONMltr1s(sFJC<!Y&1V^OBC^!c&|%C%DYyhWM9(sFnM zWrl|c^=E+DpAnXp|EDmxHe#i6yhWM9@<(fTH&Av;<s^$Tg{AVc2Fj^Yd7wp^!m{e7 zHBe5I$}WpCh2>Pxt$}i;RGw~8rm!sFg}K26%$Cae7G(-c<#!t>mrCUdi!z0!8xJ;6 zUMiJWS(GU(EtfY?UMH2eSd=L&ThP@&dAn5JX;G%IRBqcqdAC&FZ&9W&e8$h@{^R=K z+NhGs$1KVemW}dq1LfmV`IJSO!cuut1LbO|Tw_tDFt)s@sWo#NDA!8m^A=?a%Z@a- zfilA)f%-GR?9T|xr&Uw~<yfg4Z&9W&e);Q?)-}}y!L{L(%1IVw3QM1#ZJ?Ygl?Pgs zDJ*?n*+4l>D!VMo6qb#0O#|gjsXX1HOkvrPdNxqbmdg1SWeVe8gTDOo8Y4frfTdEo z!lF!JY}4OdTJwGb<)u=2l|`At((;Z5%Il=^7K<{4<?mNlG*I3ym3LZ{DJ<*xiU!KN zrSg7@GKFPxcW9toC6$j^lqoEI{^y+F+BhziPg#^HEL-q!1LbO|Tw_tDuvEUQfpV=> zK5tQ`u&j;i8z|E%m-;in?9T|xzA>zUa+BM1T7AVfP^J|!EYsH9Z<)e!aq?weaBVcX zO{Z1vz6Q#)x`t)in)@wNSa#7$t8&9_I{lh=ey~FDHl3!aalr}=w&`~cXlk3jD-)|a zysPs;gEnf}LhN5I#Y3e+95zpio0kf)<$Nh_TPMW!6;j->U5JSbq_}Ih5R(^5ac`9n z`!AB>q2odvcB2$GR|~P_VkvH`6=M6Fq_~6OQH`z15-IMA6=L#IDeiR&vH#6dJd`TL zVYf(ebD9uaE|cQ6Od+;kF2x<$LQGsC#a*RBOkOF)y-S7I|5hm;S|`L|tE9MjyAWGe zN^#q6A-2CwiaV-=n7CSsyN(Mnd5skJRtvHJS}7i?72>elrMQ`4D#u3c4k>Pn6=M5! zQrzJbV&Zx!?n)J6@&+mHO%r1OjZ!?6Da2u$q_{a-h%Gluaa*Yn+f)BQ>+e`9#KgO# zxNDsdleb85?{*>fzgvojb_;RXJyP6UCB&BZN^#q9A-3Nt#U0f`Oxz~LUA00?zE6sK z8HPHxt@lguP^=J#ZI|L^rx05{AjNH|LTvw_6nCTvG4UZO?#dKm^21Wxn=QotJEVB1 zREWbKk>cj1LTve{6t}GtV*8y^+_7DViH}Kf*KQ#uKQ6_+RYL6lgcJ`Q7viwU%S26X zt`=g;C@F5M6=M5nDej;N4E;Gqio4`CJvmm2dub9vZ8VeOA-PQ-)?A94X(B=2XaN!1 z^mYP<wHJ`sK|t~)0z#YuqB;UrhxEOhv1R9Zc?Z|pkk*KCt!<gzZI}N12FymT%A>Bz zlRvt4oM{L47nBI>q_BqU(U1;^quJ|dNURF|7!w=f9LLy?G0j38h+F5n`Ead+v5_-J z&Kh~$$gEkfPIXoO&9&@onyYg0DOY9raaZNkW3I{xRj$?P2&dPa32`kes^P9>i))xK z0kNlCtJ55=)l+L+%f96<emrI$8ya5z378t_*OGpEEmw-Mu0iRw-d0k|M6&c+Gs#Cn z>LHSyNBF#JNP3lbphdUFwKh^iR>Z=ocTf>E2?Od3L>&_e`0*o*?dK@+nUMWd^4I<4 zNj1wOJx+41s47oF^<6%eD)i+8ZJ`Y@LWoBYY9>PXGC_Z2a5TM!%$*r2y-9P50>AuM z8@zX|rh>o-%2FwOt3@e~m&FQ~h9G1|sOHQis0dV?KmS4LHD%A3(y|)fl&?#Vk!zLd z=S9_@r>Z~CeEn-;FQbxEE~*J8oOdnz22F4bP2h@ovC75q|M8gTSj=-(%c>nH@JltH zit18{T+{&Pe=k9}sKsyYA`hTinSNHZC!CPEQhT2F_O4m}pP4-<jn$(0d!(POOh30e z{hTWYHAzKrIaa5ib!~C+mm#CiiDvHGug)-)j-y!qhBj+0xW@`hvgTG)`G(efNv-Iw zEKzRcBzaW*AE<(ZvI@*p)Y{a08xD#7H5JyZXlP8p(D*m)B1{E${bOaJqVmtAgG9Ds zv{*-gziQ6+6(fLZ4{b>mBNJdmR<5JIBL;-3r^?0WF{;V+^BA{DG#rtS7%_cSB=zlD zm%nev24W{5_6ziQj5QQ%&?_;Us?7N!^`h}bLqK((wPxLkfpgq6E(eY5N|bGYK?dmY z$XnL%h?-950KpAd(|D^TGACo`>#FwR{G+Z0)5-a==d6{n?5q=R*W|iZ+Y*z=M`YQ% zDlg{yD$I}Rwf?|4*IHDFn9trjKvm^h+uuHl)Q{HK;_D4es-iQT&vo^XhI}D45297f zzWHBgbN@)0&9>Gun{(6})@+7Yv!O;nqnB4>9zu^v2g+F^T?|;7P)~VNYCh^iRf%4L zj!Ba#e<NmJ^O$|_yEy(=^M$__U!@Gqax~1~6#7rKcOrD~tUz-uD>~0>D*glW;bh*m ztcstB79p4`dmf=`GfPo*@@W$Rq6Tx@a<g$KP>d*K-x@Bm72Op&G5dn1zeMJ+c8Zqh z6tYUBxmSXFMJ(#kKTK*}1yy})vK3BJAFO;ucv>k3#?dqw1}nxBdP!ww>^jqTX-80E z^wN;SjQL9WP^k}LZJbPtbY@(^agm`&$MB@5ewHJ;KN_nN4?r3isY>19TI<4WOw8pD zzposQyzE+=9(zDqN_AECh8_NnYwb-A3LJ4QJA#>M9`xqdy4EgmxR(9>ysO(Uu5QQp z8_WKB{^f7=%J*HBM_iTfVV%)viQw7MnuB8Qfj>v77GzP5rp21!)v8#PnGU~^o6nYp zGS*<s;d%S<a9PQZrBWrYpvAjunOMU!Jg8TPG}}!4%Llr{_=|EBhU`*lTEdNQdT8W; z_;Fy@+7-1IkiPOgtc;$8(u)i!;INocYxea<7JikZHC;)pT(L#wNWjYb)impgCk{gy z_ah)$J>>RHFtRpkp~#gUOVZq<@c5fu$l%3rs)My5v_7ZW*;Qv4-?%B~)hopAV_#bH zp^lgpR|cZcdM#XQHw$m!5fY5AJSP3_dXeAtR5ely<%$w+h~6=^mngwbSpotUv%E$$ zh{#yxvVyie2YOSqe5ihgk{wy`1*sod@mGQ~17V-kFedv@5oSQ;fPqz{tJ^D-bv>xH zYo*4^&_EA)x8@|((CW=1d#U5E@0uRuGG^nQ$OkRLu(WizZazCujHqg=R+-=PD}`Gh z!6G`Gs}dda*O=!Vd6nU)&$0bweeR$(z4>q&C0@NkWCs^dB~$LQ`5+d^x}f?-{~=&8 zD;AO80iD-K2gArZll~KC)X2U0>~Z1Ep@D{BH0-IXS5T~f@ld&<f~2(*s$iao1APMZ zI~&{LWwm^Hl`l@QRHbJ&pu5DP3`bUsLjp#}421Z6^DNc$>XuXcp}?y}v^k`Yi^@u` z5_SGjjh0eptf-1vu>dKgA?{jB?9rM>yQ6fK=}Y~2ib1HnUUiJzTMZJA@ot#PR6H$- zRB(4d1&ebm!c=@|Kt(Q`XqFL+vpeC7sfJ0d2h3NRw#C%e@|M1h6-o87mZHtlSHZDW z=-K^;z(+aneVQc7vd%OwRy2M|>a;nB7N|_$;*VV|RvBA@RvFt(Qu^K_eLIruMBQhq zx<_!jKe%l1I_9eo-c+v0M(i0Zjzj>@3+!(2{1EB5CD9qop~3<d=t32<vOqj_*OgVl z*g6a<jT*?_4TV~p2?fNhb<vEzPF3X<qBElwDp%wq-*4)uxt1;7&3xBGYqzV1h=%L? z5xbxH+GFb9?^?Z<l>J4NjWVprY!o>!A>-EzDGp}v#8o*U5v3K+!I<T@BfB$rw5VJ# z{zd(xEgQ+<Q&{_Ez35M>i!{<WH~s*}2BmND4M1I$A}8oGY+PlpdeKSA;aM;8Y?)A? zdLu>D+s-m<3WYCb5w7nF#Y!pyDkWw`wH(-iBCL3aVnhQ@R+-?b>%?LQ{bMsVHr6|4 z*T6$pw3&;)g2_U31t0C!cB=g&#jE}=*V5q7Hb-k-#gvCqEE8iC9)~=hivB%Fh%vVe z!bBCbPYiE4{yY1vtlli<3%@a0Z?JdrcF{6HGg211$?LCTuioKTF>Nk8?0A)G@6XSl zHSlK*{8<Bk*1*550nV@~uzV(#dWs8*=QwAV=jD0I20IhI;mli>(@V-JIeyioE}rD! zc?E@@tWvixzgzO~0-vYI>+CqpdF9lM3}=@v&Q7Ds7dVSb$~?|VBPTcuOA0$Nc4djP zw9GTFprqWZa&WrmxeE&2vkN^b#1?xhe2p;vTp9D^7WhiavP$4)mh>sWH5TIdF#rER z+U5lQClYJ`l<1EX3H_-|HN~2#qy@j4v@ewDM!Cz62*|YL>G_dtY0VhM($WHcN2+l3 zh(H`$Y6&B_G|eKXQQM^Sa+i6E-6{F3jJcDC&-TnID0U8$EkO~U;@srnqGtV(iQZm` zUN#mr@5y!gN}O{%J|{J%)9Z8lyeu*2;{RCUHOYxZ$%(nnMAzWN39P($ZgI){Vv7-K z6K8HgnI{J=w1B0sloZi*a!QJdN{Ut2Nuq4Lf3UyIpUuj8$kHZxXaB)OQoq<UKdTHC zQBo{rQA1ho!om`>3k#ym<Ic_U6#L+I7JO$`nOv2rmyDLkSa~VSrD7L)@_ekUU{1b| zjW3?(E-c7ZMMsX#u8H2Ra@ff3in3$0cs+%v8uDnedmfE3w->`JB_)M6#sA%SvW~%& zoRaclpL4h~m3*C%S5TarMJ1T!oaDKo+~f73smDT=W7^86SCqPoa~18(#CVoE4eewU z6jSPj<vpFFOA5=2iiJSl2j`bwR#sBxq?)8sk`GYKy;zUD!NlOEtl@w&r@YLIgkFy? zrGfwMTxUsf;R0y}g)W3A-k<`D`ty3+WjTL%G7^4^bVUWl1#&XU@?iq{Pdb`NpX>Iy z|6n4aFWmow351ubfA~t~dW!$(;E@SMemR8&rL#-iWx0Pa&-6)?CQcgcoIEDOse<$v z5FaH^Ev6}(rVcTr+&+)9$b-p#fin*+Nab^S=etWw(E-rCFD)p}DJ;+RI6E;p^T-}T zP4Dj^7zt=y<U$W1^as^z5Md@B%6gT1%X%qWs$PVp!J=a$xwE(g6B))qt`k$BRXv>L z6uOJ&B*VQTx6hfJJkL|+HD?FLW|x)cJA+gTq_u)#%!!4VCsTqgATvy%vLK!cPfody ziej~p!WMU9NsE}TtlY!$+=X5bJ>lk;l!+-9vtntX$A`xr2At1RRvhp>1!ePCAElx` zEsxfme0P~U2Z{Vjsxl~@d_Lx4uJL)Y0#lBP_qykKvfN%%k7SY9oGt>UL`bERLo=(a zWPam3YROaPqbKse<Fnj8tBSH;<`I3nV4<3DO%;Fs{vMo_Q&PGBtcu6X?I|;r5x|oy zOF3Iw;w=!<EuNX`dFn`$y0wt2C@zbhpPnLj4rUWU{a53KH9cU2?X0;4g@swvicHG0 z-8pmTV?0WNx`gx#<sx4!(MjEA%v!WqJV&u^Dl`{h@KdyO^6>w3a5v$s8sGn2`PKaN zU(CN$sH_F<;<>VVn2=TPrEc!87e88gvlcCif|q_|QN3niz*9{JrH6j;9FNM;&q$>H zKyy#lZ1i>XX@7+$b;+BZJRB>8|7g9dCNpzUB&RqU-$`X2Z+YP#ebitjr9MerXk|l_ z#~*zT1g8ir5_$=X)=~u?sABzoO-VV{<Cu#v%jaMUbmq;L>uwY$she}Q2UY8#NL8I8 z8jJjk?TWp@j7G9bcJ`h{E7h(uQ@b+xXc#Tp#=n}PCyK8`R$F3WE_7&?r~kVbVkIi( zV0A|XXq7!{Br~jx{<Ct4en8usq;CFVVVy>nP38|iP{-0rhb+mG2oVbnJk0S3l5xuM zq(8p?a7~<$juOi<TiQlgD#mk;G7Qv*rI`>3eX|gL9YSPJj}}RqE?PA%+K-Hq?7}f} zo?VK!E`bk@6PE-e3Z-G*O-p+lzk&DGTP%$t2HpN8&a>r5&7|n2XkU7o(;~q+r*J`O zzOy9H>2}gsm(RZW1wK5oOR%i)FD_x?qV(7q<>Ep4$1MbxueN2qQH|>jTzhcchietC zGF&rpebBDn*okWsuBEsNaSg-O4OdHC9M}78>x~z2J&x;6Tyt<u#x(+$EOqsWJn{Jl zJ(KXcCQSgV9^F@bz8rDS-Sl~W#Pi+i4Z4mdN%YHiBknQ9jRH3a;i*dJJB3{o-vY>R zjaM?+xE(qV;97uiC9VPsNBkmXgTi!u0y!VoH3;tkGPZLhW09khSU0waEoMX5FxGJx z8-_b`m-|Yv!1B1~vK%*7K{+K@Q_&quCM=C|J$Y_Sh1gdy4=s{B#pOlR53wd<m}1zR z5+pCkV+F<7abZh`oeb^MeC6Q1STU63G1|5k<N(Ubb9~H;o{^K!d<#lFu#KH6t@GxU z6ha3Zy7~EZ$Bu1IF&07sVFCLOy0SbsFt@jexqT%?1vyzc?&2Izp($Y_Tj29c#U-AK z98al_%`Wg!Y5<(gaZ}dRNqY~-LLm|8+eZZk5*E6>UX(q{J>Lym2&j@Ew4lI)IZP}J zsdj{MQCILoRv3zoy(W<eRg@w-3Sswx+VkWTQi&0ur60>(Q0$gPKvL)y7UVz+fs!&G z%PT9uut1H9HAzvqk5=;x2|V6XcMd|H`OGXIMj-?rRZVeuVPUDSjA5%^hAKjU{wJoi ztY98?0l*R;cDbHhR$4wAd7`263Wcj>9yFk*4Cg;sp;39tur0;5+pAg+%TiiH`X!;_ zT~M5pUsh6#R?cNOU@Ao$dYCW2z>AyMs$)No3W0!?sSl?PR0Rdl1yFHVxfjcFHm{(} zR}Q`T)E;Ps3iyqS9H$s`JvfU+Iwl(*D=a|@Z$8zN7o7w-mt&q5fq5mcoi(bYq>yEe z77O?amNmY}jRO}qGM`PvG*3>yJal4gS@WD|AI$PT)U-S!5UX5Nk_Yva<MGmVS1t|; zunzYwD4Goe;vA)v4lK}HO1$*ops<L>(zb8`TD_3EnjmG2*Mqi3Y%!bbSs>Pv$-`MP z>tWq|xXa4i3$S#M9+9~$?+xX!EiL&4bcwmBgE{E_$fUFYT}nz~h!mmay%Z|KkS(BI zg;9lUOG`xSve`IJ@s@fD3v=>4IdhpPFP5_yS)w^;d4=vE)>YW?CFTxxPQ7wc`pD6) zk)txw=}G7eXQO-88xwKOz%>V#7uOP8t8qPq>uFps;M$rjue%UFit7VhpW`}%%g_A_ zVI6ugxZ2|CifaU}D{%G2wGr18T(fZH;VQvZf$L^mx8W+p0$UzS40Tdi)?QX28YJK6 zD;?acmq0HC=FgvxLrffhG6=o8v*ms3jh8M9zRCs!%XaV;{bk%&{eroMX@5_SN7~vx z^~Oy=`RtH)QQ3I(mz2`;Uo5AWT6sLP#q)cz&s`SS!RF#r%5t)ogQ12UKJ^9bsUaq3 z%;>bO&b26GE-v#qRkS5u8Ij{w924NA(1U)Tb-lNwIIFBQhtWnSzuYGd*gO@Ot{7X? ziCB=G20J_TNlES0)7hyY7eZn#LPZ{5ehEpP61~J=q_~T`#CjL2^CmAwqM5@ir#dgV zeDcIAlP6`4#;JwZ>z?CrVz=)rDZy$(99ZBytFd%Ankp727XIW-=ncjp8fw#B==3X^ z`M`oN#hG4FDke!fOmog&;PZHUl5Jl=7Kef;e?vbe2WiQrBjzMo5loh!+II$)(Ye^h z6nabXgz=W*IU!C0MUCe={ZUS_h?1$LF**PnQ<76&gp7LO@ktLC8sKuj!ph4ESQ+h} zXr9IlDIOryv&5RLseH$ncGT$%j$ml{Nm=$3$3+OCK}|y>iU#~Q<tQ#GP7XL3C>G{b zStzlFL`N%`BOf9&8g@E#39*sJfe}iChc0ym8pNvqT&zDuJb9d={2n+>4{~vgg-reR z>UHLol@zH_K!d4~d?(57k8RAtT-gb%iDYXumd-^jOBwnz6NAaxhSdHS`;EgV`4Cby zW1f?lb}R*;hYmeDoq6IVL1XsPCys>+ZcOyla$*{A7SV~gGasi)h{3Z9o5y?vONxu- z(YLveZNxu$mPSu?k#C^>M1Q`xJgObgTr^i8O$rlz3X?DPME+CxsguT2{ov3~_9t3R zW(B&8IU}fEfGVKfS=K1I{SWR8aAZ*@>j1$_v#1k>gqndC(-fpmodiXrgJvT-GVf$| zZi>lWyqJo`W;E$fF}5~T5gu`xj^j*kF&0_HzC1BCG?@-F52ir$PUz0LXj*F|zrfpp zK&?12K2dSh2YWg*PzY6q(f)x>B@p$g=2L%dyUXT?nZt|WL~oVoEDnnowVy;yh5OqG zO++7+p6Xm|kjZ1L^Lz`)fVCy$a76v9mD6~d_GvxZvr}0~iEpZG1l0k0<(CwBdKLB> z<MGb*m6Z0v1WS`yZl|7|a@?iv*#(8@FdlkPEOI(8YEdUXodT61wPd7RR8JDS5UhYP zF@mK7UZNM{e>AI@F|n_}S!N*UKY;q({?oG)jiPcqk3{J@<-lKcPK|7O_Y|HYL{B?p zWbKK)atm@NVo4_|6}Rr)o#WK$y|a6F#vqIynUOJS<mfA?Rh_gzb`Eo<RwP!?qX)SZ zpw9gf{-@$FsLG1Z@SoLV0VE8dhhSCbsgONEokjG*5mIqp!5pgVUU^Uz?-@lq%U257 ziQa5X4_>_QajG|n*3oJ1-$w`U|EXD>lveeEM)dI32n&=7Pob0cgmh+=SPpG<9uTlc zuR6)wz?;f&hLfj@9hWtEQF^fqHxKkorvmR%18t6Zuc!!<wX?`w>UaDidlvPvWggEI zv`Zg65oecSLlMqyYRWNX2XnfpX57_F4_QlP?p(ZbE%BMh@fYPw^Q?FVJN<87#N6Dt zUZA{w<%{$z<-mI*>LTITiu$|##qFS$gY=GRJ~~p#e3=CORP}hwFe!n9os05Q>8Z~n zjaZjgh@L5H`XYUcf8#RJua>zncJ;_fSB}4O++d8B^sBQ*P8x-0!|d`oStaGZ(sFch z`4Y(dk^&2Kq+IN>%kbt9eT~KvHhZF%$_ldRVcN%XDbU?S*Ay?iEJ~tRS<_>PQr;e% zae2yc?1h7m@<Ml+%maseh%y@`#d$TJvF_roKBur#fcK~V!8Mj1X4I*~D}*9<0lkQC zdgrAMUy*5%97CApG3lcK;z^E3I&>FB0JE^9q$n#7E58!@rbx;F^tQ?3>_r|Ln_u;y zE-EYBN{eqK1SqlU$Ln>AQOrk)dEu-mmrY2nV1wD@^pTTByU<*W4Z5!0h<zG+yV(*c z{NG;PbLx#9u;ay*f$N)DIMaISKffy6|9P6m^4XdFzq1qdzf9klPygGv@u*j_F<RBp zJ4*J)w}xB`&L2-Q=~Eol>vEOu1>iEYm$3=$U5s<q<@Ls~JL-+G8xX&<-uU?XdgF<? z*xNrIxUNE+RsKI6zP<2&m;W0L%JYBP|AzUU%da=Ga8dkf)a|PXN8-vZ2$a)<`0nug zH?$S$U6WUDWJ1oJ6VO>yRBy~{P`3AABN5jma0?gK8$~<ojg&Hp6#j3ojZ5o|w{b0B z0$+g>V0+dL^+q$;^k37^PX6$Jf=kd38|v3J64y|tp&T<$+L?gzhQq&CO9FPID{uyH zk?*&Jmn*-oC=cj2wEh32d~2!9_Xmaky!ycBm%R1H3bbV{d~AC&-i`R`jW#G>>SCPN zp}dDs&aOA2O>V+D9O`U0xbrAm64H^K?%>OiW}9lOBl9u7(SAR`_ScBJ0axlOoaa4K zZ(O=sB8C6k>jn78ZoxSt@<>HEyRzP>y0zZ;en;T4-4+O2<NsZFbR+4Sul&z#RX6bG z-{sqo-;Vlf82A6Cyc~1*_si;yFILnW|3rOEhP)MWEybhWuT^z4!cy*U&^8{(=g?Mu z-{VogtCh|vRo8CV+zUG|Ku&%b^9ryt`pH^cB>&MX2I<bCFO=U4A0MhWe%UCI!vF1c z&32qW<GTEQyd%Wrg6+PryBRk9*E6>V!v45Ff}_`6obH20;{KhjWp_zC@p#^bz`wiK z2kc&RcfE0yMJ~65KUaR&+!@gScX|Ea$<Nv#^F5}}Z+kI(zHKw!Vcvl`0@oL)e+PX0 z3iZAp<?FDe-bmkyXVo_JmHX<Ac+}Y<l>Hr)?MEQlNrYYs(&VeQY6hD(z)s{n^~N)Z z8;9%dw=(c9m%ev2Y&8CWXB55TzJcX?3JWTjQ*JHAJv%#_;dqE8;>!!&ftMzx4ya&L zCXSiN#*UvpA)SqyI*wgAaY{PFR=u#Wf)b7X0KT25H~PI_Z<L;_H{2h}tNx>UqyBI5 z`ry+*nBvNDZB*QEr}3`iGt9S;pTXt%vfg+U*D+ixaead;{HuDS2d)fUMYwLq^)#;I zxc-T&InwpTwd8;5jqSKz#`RZRI_#$7>Wr%$<m+$^!zJrNyzfT|YVodkJ6&mr$K}F1 z2zr0aM(pnp67>B6#4W{T`Oy0c`mVvRxYAI!OGo3o1Zhw}{IBVZ-GaEZG`uetcI12W z*U=92q3?ZFKyNFqgSe{F)c3#y%UI2br^a#deS}wk+Buw+_DN^k`@!bI*ZTHt0bO`1 zzjP6_E%)Z*E39SWsKZ-8-|9=j78WmAaT<{;gMlxYN_jpGNM%SSz*{-I(M!oIbK}jU zFp*V&w~C&i7&`6=itv;c<OD^`DJ+>UBjh_P86KCBH7$M8l=SIYlU*anq))<GP}bN< zBgaihzjBH{Dru_xI(Ik!Mm_Ka40<0;$1k*@PfY2q&V$tcTAmKmeo%Z*Bb$zQWOaz0 zs@(L^OFvaA`E88A*Q)S+8gEH?S&ruqev!uSULaq;dkwQz2QIYLU09A6GG!%ma4<@T znRpvHhqkL!6kh?}5##(DUuPC?IdbsMxXhh}LtMPc7eO!HFXKyzf%6@IhSbKM3Oc5w zqXk*g#`LIB>19f=X22fKi0At23}>6dOJx*gnB<{~#eQ0KGN-pZhh7}#;pB5cM}}Q} z@^JD5Z}&Z3bR+r-_)zEM@e?vL(nYh6A3Z*Oa@OdPnX-#3@3W*i@iiYwsC$EU%95od zGA)hn@yTPR{MNAz!ty(n)V8QPd7g@+g+{)d?WA=6kNVywPS>;O4T-2};>5TDs(vL- z=sd-EZ(mX@DsP^<tU!F_n7$K4-w?m()XrO6P+IE2UoX%Z2+l^-n+w@6^1EeatTTN% zp10M9oC;%XFlVgicNdIE)N{{s7mR+u4B$C%=|5dC=oQdkfpmB`@aGH0I^f6WFBrRl zpZ#*dI1Zfh>jk40_z^HJ0`2u1>;P9>xL`~H?ytLG_<&Jbov{hH9=HeiB=7`qm95S= z4{R1vXT(P`HVrrs_%v`j@Izn)klX8wEx_A=`+==P>x@&t>wxEhp915f7@O!odf=PD z>A)>vNDsUr9O;1@B9I;!8j1A4)xh(>uYvK=_yg-GqzA5#Mtb0|7^DZ@58MK57F%Z= z1kMAV2Ce~K0KU|s&Tz&scBo~YF$OrJRh^Lw3~60wEC)^oJ`8-OO`UNV_&x9|V6V1y zhAoz{dSGW@WILn>UIEMn=C?<B;P^|C9{4NpFtB$b(gUBxU%T3xp?&aYxSfG#fn$K9 z@fX+mKm)i6xDS6oy%Si0Kes;yJOr!(hU2FV9L*W~377<|p&!Wr#^DDO@_{bkDxfwH z>4BRDAw95gc%5+;IATPd5!r&Vmw`Qj(WC2(4B#qYAy6ArXRHBk2R;dW7Wfv>k&g7h zp}@#E#$E&V1bz?90Ja~C^uPk(8sI+Qlfc`?Aw6)R3+aJp#v^@8#yU?xdSE3m1E^hz z^uTi98sOBckRJHlWTXe41D*x;oPzYN7@IW}>4A4lLwaDsHAoMfdo9ufUjjY}{A32w z1AELudf<xdkiIqKETji!0yBWo*+>t3$c^;CkvT{Y+~GmL2R;it2mBBi7th$n{5qo_ z@Gks%=XBsD_)XIa;J3gnz+r{xx4<s=qwQ0`gktnt;5uM@8^&G%4g?-7sWWB*=atqO zHv&^{s57<#_W%z9zXzTM-swfZ1^$G8KcZa%#x?%UoT0!MZ$WzCwabtm7_uDcfv*4$ z0_U$pdf@A~B0cc3+mOC3+Iub11EcRidf-j#kRJFra4RrwJ<<b9Hz7Un)4Px!c+VE3 zZ^ziHcOyNp`rbMt8<?`a4&Nta>`UNw;0+Jd8CAgX57rsgz{eh{Ggy1Z`ag_*4=e?a z0Y>k{xB*`AEcz|*`{&SafumllGmZmad85v#1$KI;&WP=R=f}HsMk;U%a0>9A6Lp3U zSpFgAE8wV;n6H5EpMu}OH6O!o;4{E>m!N%sLxE#HLAeP(MY(|mz^%Y-z=Oc2fv15- zffs=G(@5`R?4O?_J#cb0(gWWCE+zac$_>o=8^$|uIq)mstu+|$c<#Ld><oP18<ZP( z8kh_0|1IVV;E1!BFMtbyhk<K=UjaV`+Bz}z4`65D{O^z+_zN%>IP@o^2hREx>4DpT zhk>5}zXJXYv|Wl7B*Pg6@ExEFsB!EEfPH~$fKgh#@g(pK8`jLg4R-8RNe0GsX6#?U ze!wxISce1G1AV~HfSZ7+4xE1i7XwcKp8=i&z732^#9t2r`vETvLwaB)&<9)%+yp!T z+yfjFUT>TN-UB=joDzXOO&9c&$a-TS@ECA9@Rlf?vjU$0ZUvUd)EftZJ!0|wSKvt? z>k7Gfz2OAj4NL=m4$KB#+5+Ey1-{j{-gp@J4`3B=2EN-=4QxID>60)n@qH&JuxudG z1AiNg^uS|7ksf&SFzhFQtA`^!@QO5~2X-2X^xYV{9_R$_0;U0HjKY~B@KxY);M_6D zAGj8H7`Pw!6>#`i?DM)~wGT`J9)19O8(`N5@f|Oq54Z;Sz{6-aU^Vb9;DjC6_Y*#X z{ap{tBRlJjp1|>sBRz2VE~E!OxEtw#A$yUYa6i%mZvvhLK5`K0dtx4b8R>y>-{Jei zKo9UnVBSAa@4$P22Z8n9*BhsSkN&gXxB$EWY?q97|DoO(3cT(|)En^N&!{)x*T16P zfUo?9dIRpbfO;do4)vD8Sh0b8fjgODWCAbO3<Ix;*d4%4zyrWNz-rwvP5@ik4C5T| zXJA|}%=00J(GNJxZWvR5S}4*3e*kU*{?Zodfy4J3#%W;m^M-K&cmUWg6+5p3hA|Wv zf6y>y0*iq+0uv7z##Z1O;6dPzz|+7fFCsngD6m~`#)iCv^uT4nnZT)4NDsURxD`0; zRip>vktjZV;UvZ@VtL!hP{%qh<1uZr%x^Ck=*~3oVhJ#$SU+6xUtTa+C<4*3W256Q zkBOM?Sjt8u4C&stGe*5kKNDE{%>@IG9rNQv$cO8nu)B?7M@Gl4)J8|y)0gSmMr4jC z%6AK{>(5*;rU6YI?JA)_{C-^9!9So`czvrz3dEnn)$tz}j1ZK?Os_NU=g%YB{{01G z9?;~q8-#r)qT-QmCirDR{7r(VD9U3fbY6hYq9C1lLWlU7;9KE`nED3!kYf69BjUUL zvuS=S_@O^sFs9mI%wJD>rp;f5gWzw#I(vCg{!7gKPlNvuJRX~Y^wVS!oQS#r{y2Ej zGwq`t^!J5}qKr<|?<%a}E1_cQXv@t!(!l={e0mU{X7btKTVd^gO%OlD<d=e<2wwCt ze;M7<N2<f^;HQGekPhTOC%{*McY|-rziRMrfM07(udOokXFAp-*o%w{;zyah6a01H z7YFebCZ7iW1@P3T1NBp4^4Z{Hu*bPEh@WrrOTo_t|8@|6%;dL&kH_BV;~@To$yb4Y z4}3>!8|v-MK2{C>ee9{qgVL9p=^6S~*ZQXWkQ4lB@H2wa%T7e?lLr0>c-@-6R&UzR z2LG6G!Pps;{vnfJ3cfePS~rM))a18=KLmbu5I;-sPQ+D#H^7%!d74Y|g^K9IUqNRA zuQNPW9WC3;!xn<|26!yb18pd$8s<b)XYi}Q_eEWrZG8C}eVI+~tiuZFxS(^Ft<I>o z)&q^DbAho`2%Q`3b;f<rH|=P5n|`bT|2_D}gZLdL|0MVYp>@WULHu}=e+&Gh;IBiU zH|^`!m~-M;@PEVpcDObD0+C$QQ>2|SJ-p6Hvz9?0V)mt;;4j5~_+4vy?F}>k4Dj!R zkGAsCJz>8Pd=>Z+R(@e1|25!02j4y@|9CV1C&8bNtTVnqIRfQ79YPkUFTMqSTk|^O z8LNHmNz=cx;8R-E8J7jw?_=7J#PcjYuFkk6sQwn4_16>pqu8gf2(rJ_w4VV!68rW& zLHyH#cOtG3{C4nHTm5&Tk6bQ_Aj+@~Iv-#!e=x|#b7mg9!Ixl<|6CCN7n45@-rk|k zcqNEGWb(D(cY;q3;sf(_EFQpbgP#z@yUg^d;C}^wCW!yq<TJs)c1fM_V-WujlP?9o z#fiPImAB02>%cz@p4J#<8_Vfb)X#44`@tW;m^OKRulY<o4t`Q%ov|UPjn|4cb|OhF z_`_YWC$^@iHh5E*5P8If;oPG~o$&$m%{;Vs%rf)?-=in`Nf5u-<fnjN3x0xizR+DX zRS5e&@CSO;84H8bmz(J~fsey^OH=$F@WtSpnnzB6KMNkmB?14h6y`<#=fHmseyWw% zGR^$s!jXUPrrUtd{gS{}2Bi<I38sKw55BvV_XP6yfxj0#mdgSE3IhBl@Q;Ddu=3hC z)4x67KLp=YA3XtH!@1Onp!DyW>Cb`R2fj9lKV$N75sa<uTW8!5)Q1Yqd7>ZqkNVXa zgM!+(pV_`sz}H^Z^z+6CzCX^#76j$*GxOgB{&w)*Aimh-_kjNbJgsfa{;7Xz&QmAA zKQIK(%piW2$)5xN<*+(qnAN^q(#ZZF31T?ThpfC;WH0!B;N!vf4yvD?X8lY7-)%&l z(I<#cHhCZTA!+zA)FA&>n*MD9|H!C1<Eo(a8D{!D;6K87;S{TX+C;N{PJoXXQ)jdd zO5e&%e-6Aoy=nV#QCJg>tuw9-N<Y<1-w*r^<LZn@g7SaB%zp~_e}PZ5@^ZN$$3OTB z;9s=z+Vf`mP2lfw)ft<E@?U4>zXyEG<rx1#{M~}@44Wswue}22GuHaeSgWtGEep{n zi)t2rT!7x|6PkWrx5I<{Iq;pVe#)hnNIw+(^Wa~!=A%C^GH@czOz>A{;{3<T)0*g4 z;i|B)6grnp!r7ZO4{e!Q7u&(#5B|*{{)ov}fxmomoiRCxmy;c>397*_2LDYE|CO1Z z#o!&(6r8OF@!y*~ozW-Ythcd!qFDceF9qMnn!ZRRXHLXrgTDp*uU20BNh%<YY|wfC zbetm}2-4YW`atgie)t`p-Vdy~8s~69=>z*fdT&q*eu$Nq+f<Ri4LkdY>2=1VLH+4L zv%hr)zu}rXBg?vO(XTbvU1Pw%cOB0Atj|>abMu*;3w|@sv;P*vSDXBD@Ym+!{L|{6 zc2}VM;7@{oB8Y#)<PU>)7t|Stg82O={}uRp@Oy*Gx7#cqy${(qx6YUp#7{7JdQb9N zVVzNI?Z<k7IbYHHlNKeIPlBEY8RqjK7yOvAI%8#!{hLku%fUbHtuso4__-$kF!*16 zO|O{_gSVI08P^AuUp{cDe|-f$6a35||E@Ouv*EqWnu<DOZV;bm@}0qdw5ZN_Daif- zvwp{bpLb)O(JjdT&cc5u(&U0)g7*dOt@TH1uGqj_MDL6$mSAra)JMjfeT3d6J%V=( zdxLz~ZTdj(n1(E`Gj0#!D^0!z{A1whT*!Q8Y9E-q1B)g13cO1QD#Hx33`yW0Sc!Kt zLFsQ5=_!ipIRiRjw>CY_3c+^<e_v2N-!1CdiS%p0KX@CS%XmJUK2klUMwou?hRzF{ zan>GGPxp&@>WpN^!H>8H^C9MT(}sWU9~EWVIS;+-AH}<apfSD39Mkb}I5&9`^%3Oj z46{!R1RuV;@n@(LSx*N)<eA2wfuKcw-3Xnb(9wc?s59GqEBFrk>Woh*f&XksJ872T zAo!2Lza7NOvlFU|)8JP=S7)rV_B(%FED7{I8{X^v<N2oN-_GDy9ca8P)b3-zuLVEI z>W5s;iE`$Ge+2xsR$iNGmSZ{iYVh<!i-B_fX7Ue%uX>^B{11bF4SYYVeaoKdEAStK z#}EkEpCHW3`5y-#Z-S4v@{<F6XYj9rZ))E@2K-;ap9$(KUz>d;7yPc5nm)r>4*q-a zi>&$68IC-T6+Z5S&e$r{k+m)L-^}rO41AYY>WuYPew;X?SwSsL?L_ZiHy&=f9wYI7 zbqjbss2ug?Jl_-iqN7cZ?+oyFg8$rF4($`O9SgxvJ=S#kHQ-CZH+5F}B>2a`hg-|2 zhnW7o1%BfjP1`>U{weTH^@B)sfbHNX1o<D>`}YL@Hh6TWKtGb(M$twY;OTv7Q~Sa~ z@IBsadf&VT{95p%aYkW|1ATZXRUozBli+v1UuSd-nlIX!bJknnpZN&qSI{-nFADVI zv*6zY-_*V*vJK_|@RXOC{%V=tiKw37zXkt@HGf*qZWS&FA2Xp-_&<%W2gz<J_?y5t zHdZN*b>KIE?~SnOL!tD6qR7S`=-dyTPbk8i7e5qAPDGsmf6ZrD4_W&OJx6xSIgfPC zL+6KTd^f{7=jgAB@dR4r(=Gx18Sj+`QiMMr%RX=@_@}@pTY1a5>rC)3fN!cl-3Y$s zclfQ~TYlMe`h(y{fuCf}Uy~CX)zfM4zTZiI0sI5t8*2+n->xlVd%;uKEWhdx6gL$7 zGvIqz`Mf}Xn+g8l@9;N*KMKC7`r8Wr1o$CV`<8Y4LGa&$?`7q$5A@g5;OoKPX5~j> zUR@sWks3PptGXuNvpK=v1O9;3h8EbHq=D~;?;144XM=y|clf2?^S^F9y%TwE2e17d zYfEeXxzc}%0?iKN77Cp=g8K4n=Ck1|@XyrL8T+g@==ma#hJ_7Bdwd59--&2ykC6oa z9q?0w^2ii<kPj~K`WfsIta)hiP>c9{@K=E!8^n(k1tESF`1#<+Sb4dHV@|~F1b;91 z$4KyxMH<svox%pDHue^DocMl1CxlHM1j&94xGvy|g8a`n{daW0cU$mXhUctlwZOS@ z68P|Fe0LxyeU_Qt1^!BW2jW6d`hS__%Lm^b--)QS&Pn=m^Vziu{6>5?;_V>&$4vV> z!KcOHd+0&-_n7vNf&UnMcu@KfGkp#CS6kv;e-QtI$vZA#ET?t7@llZd_f7jr;1lBU z-IXAIw8^``j{-m1%B$DKPQ>Md_ke%O%4?5_^b|#Hv<5ogLnl8-C&$d=N${7o!SAO9 zmEj??3~zydDWO68Th43Ff`1u&WAl|0c}C*)7WkljD)q4iA`9VTDs)oX)i-+fO*S%d zTL<1Y1A@Pw>c+MHf>Jqs&?%i?Z{#3s>S))Q<=h1RS@2CgH}-(92A>?%my*oBbOQW$ z3-G%|FmKwoyk|NGK5`+(f|XY<49UN^j(C28Z)!c>5B#7-_^qX&{AZi_PXWJlG5+=; zsGS1mcRuhx-BfS<6qLT!Ouq^I8#iOD1+7D~%=Pph@X;$!e?fb|>&$)A3Gi1{!vCQ3 zznS*Wf$zNrzg-tp{=oTjTqk^Q5`0pS{Yy>z{lITnhre$K;vW}$PuQFSzT@V4<0a~7 z{yva-hkm<lZO9t?vQYi;9{%ni`qXmh@2<k%#svA3VfKfI!G8gsbBjIgg2^8S{|de* z)YNnQEAS`5H#K+B_tO$y#qR-H?duPl<Ek_GhYsWS0fYPtye}C8{uKDe<~}FV<bvPx z8vcgFnx39NGi5bUpIZf;pP_S|4#8h%`ZZ>o?*!lPb^Lu_P@N~5ZE_6!@VD_DC~F?t zM`j(>fd3WzmqGkzChzEs_w4V~8?A%tpt-1nB&10Kzvtb0<1bczf~8Hj%Q?ac-6_x= z{9e65-xoK_BKKnA%P*u;0iDeE>x~C5*13}`QJrjs&O0CA?_&@)?P!5_l?TE92)?oT zjMAS5Uk|>EH4nX`*{&DB+dix}23YM|_MGh!(J#PPTY2qMv(AQs{{;LULHundKNI|T z{JqisApTjCzY+Ww;9m>kt4w|?_>~{w@A`uHz<a8L;HRCcH$vl}VD=d;jtrn^>@@gc zXX)>=Ec`@&o9Vr`LXqmp)&=LUs|@2f!loVVP1BFg;KM78CcmRG2K=4i2L#n~Z?m3r z!9RJMVI&3dmzw-?@OxGpO|C&72LCPirq(8h!QZ^bFy;jLKil;GEAYpDhqrab`;@hY z;SNeK2Pf4}XYiTey+M57ecTxE4}tdu@$vwM(&vKz7x<>u4$Hw`a=T%?AC&%W)BlIT zzXv`&h!2c|!{C1g|Bwa+vme}N&i7w|U$EXVHrTBES}}K!$v;1T*1(@N@MjJDSp$F8 zz@Ihn|F0TI6^jz=r^f}C+sM>K1TER<V-qj8aTX^<7NcaTg>|x${rZ=MN=3gswt<}4 zKz28fOB={HHjr;^Aa86SKiEKiR>}D4kNl)bh*IL=1X&Usi;K_kty0Djs`xk*;>cKh zPAQ(&cl7b|Kj9~lNv={A6G8$$>%>bJyr-8U+f8dReDGB?@#&xpL@1fg^XSu3f_eAX zcg_7W<Zq9BWr(%{^ijoSc;zELHQgop<98~@{eGw6douJ1lfeA>|7OVYAX=#6m!w4b zPN|B)zgHk+zhAXVeo9r;FG?0`V`cmQ3*g-5FHx|!1Ja~CR^c>-c?#z#T&eI*g^wuQ zr|^ivlM269__IR$NG3k56n0TKK;c-0(-h_@oTqT5!aEf{qHv$WBMMI{{95793hkp* z{tCM&9H4Nl!f6Wg6wXt)QsJEnA5pkZ;Sq%=6@IPoXNC6BDu0Dt6b?{0R^c>-c?#z# zT&eI*g^wuQr|^ivlM269__IR$7?r=mE(!-I9IJ4e!aRlZ6s}Zwr@}`R?o)U~;Yo#G zEBslZU2OL7w=)X6C>)@0tiovu^AyfgxKiPr3LjCpPvH@TCl!9J@Mnegv8wzEyC@u> zaIC^<3iA}sQ@B#$oeCdOxKH5`g(nq$t?*}s_HinIg;EOKS3RUFAuSE3tvKqX-$cQ4 zO2wN0h@|>=Ht;4X4RK(r(&(P4^i;fHC@NRQi}VO<LYBYXKtaF#%v70wh~V*^b0yoA zJVnX=`F5I;{qyZ~CHtR0*D6^}!)&IKW0butCF84X;xk*xN;Dx?#TO_nQRq{+P~kF# zs}<g^aHGO43h!6=kiwk`pHTR;!u<+gQg}q++X_!8{8ZtW3cpeKgTnI)S#Mdt4uz2l zTPSR;Fi~M&g`*W-t}s*KG=*6T^A(mVoTqS!!b*i36mC(tUEvc7_bPlz;p+<DSNO5Q zuN8i;@Mnc}3T=I4c_S6JQkbCdQiWX=rYIbsaD>893S9~_6<({*t?+t<ixe(bxIy84 z3ZGE8N8$4dk0^Xg;c<l@DXdobwZeZW{8{0z3eAqI0$lu&71l`#qZIo4TMH$}E9{^! zQDKV0z6u8^9HnrA!bu8gF2MXTijc1Gj~*IA^U1i;qX#>a#$7qJo3nSnl-?=5oqbaK z^h@oZdKsfv9CBKagL#k(5%_HI&jnI6?@~VjD=Vr0rg*Q#*Z}|BU~0;M)PDhA(3ARH zym!E#S^C$ejp|Rp#3}WE5bvPz(+ravC@N9fe|wW(fA=er7$5h0`c*IZ^?x}j_2^Y# zV;^aM{r7(TZvT>6IpUoD;uKOptOHm6ujwQkh5k&Xv5(X*=<nBG+EeO3+O;uld~FBO z8r$LW>vx?Z^~Kkj8%ZMdpPuU1UwMtxZ}YqD)qjRx|Nd;L-?2+0#t|j$x0&PDuM+QD z@u%hfxxYa&so!gpUw`6eX}=(=fua(ne!uVi`uopG{Yw86vq3Vczu*_Y{>bxE|LC{| zib3|<4%SqAInv~4(ENLi2FaxTIR$?G@T;YM(w+v2LG}mT=GX5NAsw&tKU*6lllH4N z`}KP@m-?IJaA=^7B^CNr2;+in`5DTJuSVbpC~!44l5LKVC*iN&8($vOPPQHiHJc-J z3!s%Pg#L*wC_D-UTdeIE76&%&_!ZgPw9riyX$##(3Ap`&hzu!4cKS1P>)vWEnAVQa zjZ#5J;^rbOqe7oRe0=CVxa-d%fh{3!DZ*in5Zh^>y@G{=L{Ny?7a$l-K^ro(O|L`> z53&of>xU2-78}y8GYn9Q_JI`bWeWR3#5SYE4*Prr<0u%(^x<TngN{MW^zkT(JvPck z#^UW6g)qi<V6wAMh`1ebj7MY2v|kz7A7KYb2or@6%k&kLHd7yp=r%MTg?8qm;5LWt zZIoE2zt4Ak+lJ~QtX){EpCH=Z6)dc^^3=Tmd5W;jK6^e3OAuj)eRe(zYb(N$_SuCj zOqMLxKHJB_I*9l<yAO7pA{@{3rEoZ`qrL?hBt#z6SXh^^QSgn=MnqWGs5Jn_7m^!E zLa_0nl%iW?1sDgP2;H#m%_&JFizYWGBiME%65xBY`Wd2o=p4{4)JCNV4~w3JI@H80 zqisZ4x%MgUn${Z8x|WQ)P5TBhA=<Ujw`*P`4%O((jSejt8H8yMfDPAX;U1xp8<84K ziBTH5B8%3>BR)o}MmSbm3$~d?FXWqR*T8ZMZ3*si+HZ(ysqKa3RvP_@cx&x5#K&uI zBc_c;U-(bZ#^Byo>y3QdX-8qLz19t>I%u_szeIZycc<15F&(vZu${D2q`g$T9x<J@ zOxR3hdNrcLQ$w-<VFSYl>_r-`XCv;iSgHiZ+uj0UV6!I?cJSp$6h27y5PoC|guxMC zf{Evy$j*>3>S<1%dlQ7A5!81(Gkvie(lDLgkB3s#+qm`$T+pdSB0g*W43gM1TW8RK z6JWw(Bd-bv^2_jkH*%85j@j{3XDo8E?5a#3d>N=I`rnZ%EIxADSW>5+9eH&Gg=No< zoG#Vj2bgQ5-z=1D>j%j8wR$UrVPNL1rh!?J6jlbVvl__q8=zX!W0t`{wth8~+fTPe z`odx`%W--W8(H4^WoR&7o(y4r91S}M-`fvDMZ^`*ck)4~lgI^;Yak5dPJ9hAa-mSm z<R{6%jp0XNAfNv@5W-@?lyaJUBbNwf6}MAamkMSbpIivxmX>jFU?*>fhh5}yp|+b> zQJNLP@BQ3?+#**Bp^A@3hm5>c2*>y~co<nJ(j4cl$n<T3ImHhWvswt%{8sX9ZRFeV zt%l>Nz#{Ju9@IM4BF%b{-oYI$kk1B@B$hj_0JBjD@!atUtZfp4lRMspnY$v|!09CJ z7y@RC=sqr+1Epqn3n9bi*a8Dvg^+1;(D>XYgef-G;R0L;rD~6+*{mA^Ek+`c!}O2H z?fdmD@FWJ0cNWzndJUMVPzj+x$Rl(kWp>GZ@FRM3)I8#-o68&JBtk6q!&$KMgeEL( zFfEA0u|wcO)LlG=X3)p{7MSxj%Kwo41&W~?3nlMjx*}wsADRmGQ@?Tug;*$clGy8q z;f6mSqG5F2uh5ajOu!jn)C;1N(P&=jSEo;g!sOFhR7Z-UQn3gd%5t?!EmN0K6h3_G z_0S0Su&X<gFWUO)ktIrnGNMnj<*2D^TT=10_4zPVfLhOZKSPjgo&*@8!&n%~Nc0;z zt5i%wPaxq$i=iKow#VC7NDJaOT@d73>C_a4diXuMw1+ZurOK-gIYkw)KF!IpwjN{u zKBduHX*8p(MzwiT@bJ0wY80L)h}!KrUMh(nnL&_meMDxM&`Emkilb4N&|9WXi^9J> z#5zP!!)WVgCPo4GAwihF+X<uiME*rtYy*luQC^lP+Cf{N9aW4l^#D<K(e&h})S@#s zXU!?=h=Z`x;-rg`;=3Ob;MP~*P!BCqrCa%|%j4j9nBBjkp;ZWd_*STe^-%RLybl{J zy~l~jHXI_;%4h_-W4u@yjfJ1IGHSSIp~qpgL$gr_2(4gRNQCGLp$ia<rl5_5$fZaa zEk!iDo`T3Wa>W!KtF_yz61EQ{Y%ddrE@WE!W@N(=Iv>F}3P!RpT9IfS^f{0c*4gyX zFnT&_Gy&<32r|dC&q)XqLadffLbwo|+G#Yh9wCHOEhQ2{q!7|HdNS!zLdewCq5|}2 zA!KU{$Uuw`O10L+#0p`lR)$`sHxt4-jsC4{y}1y!Ycy@@ErhUJqj^`46GD|1b~A*Q zLO8CKpuO}~La5g6jeyWv2(|nT$|qh3cxvKbR$+P@A;oh338hL9l9Tg?NNOvjRL*~< zjN1tb=Ug8U*Ir1Ood1Qm4noT2d<IFE2&t6w+cA`Nr;wI%{w{GHg|v?IABpQEr0txK zpz63(NV_>7LUq_#NL8G7p>&BtI?j1}Do__8Rdc?P(sdP5E$2%}N)i&&_(Dq8O-QjC zrwx|gT}V!iYk0$;_YhL5#*b3Eo<d5~_$Kl!SxA{0&!==LLdw?oPLg^FsZ`?+kY=io zmTLSBl6nhioyJSZ&ptxhuJLhHXMKgVTjRq>v!9TvG=9Z!Nd1L$T;q2WH$X_$8oz*T zkA9huYBl~oaRY_KbiNDg3w@A~Vs(DWNJxW)<kY#1{2U^rRGmLXz6=#on$DY3FBm4I zOq~~!G+ap8Iv+vlMhK}Czq&*Dr3q=N&g~?P6w*4KCsMjmLfWqLc;ZG2X}8WhkTga} zRXXoXQo4|i>%4}#>R2IF>->Kxzi~pU)p;aox`c!!*Z~?=<AoG!<6lq>UM?i3jbBaD z6+%k2@t;UDLr7^h{s5JBf{-$8{58_NQb^f0-iPv=D5O#w?@sw;3Tdg0h0R<I@hW{M zO$jvq_v32EqFR+BdV2IONKqAJdq!k7R6^t$G443x!)OC%JK4Gh;Sjlj3z1tp0Bztx z<jyTb?%YD;&Midl+(I<5bAv?NG$f~uT8P~7wWMtgb~O<wVaxAOltdmSGM76X5g)x6 zr0qwL%=R5xh1){lrDl7DYQ?q*CAP6>r@bBh!jDEPVte}t+#%2+*e=JeBeZ-TvtJ^J zcoz0K?AV<;Sr&P8i9l7^T(HY*KIFu0Eipzln?}9BrXj{=i^nJmv31AYZo309p|%_( za@ax;6J~n~G2u3PQyam;9wPI7_5Cp4KK7Q!bbJ4>U!fa1&t1ao10wq)9>Q!0mkGh9 zoj^kSph(hkaQY1j``{Mj6Xu6ml;hB_Y@|8Nd2cd3Oi0H#PlT8D5fQOS{TAmd;DbG_ zg%i?g9zGG8BO_0v&Z}>JOb@>W;%HI+8WLyXKx~Y7e$<k95Sfe>>^TxMA&wL51rl4q zuuDE{P@3>x;MjPfY=g)|5y*uI>L20a9>yX^qLk!{kfBBG(-(3F(lV}Sk6L?|3Uj&M z8up?NA{-hTO)VEif5aQ=5RbH|mna+-O%JKakC1YS-(;9DY!i2l#pNLWlH>53+apOQ zOs`f8hZq|5*M{lq;46J%u7ErvOyA;{uZBD`Oy92L*lUnw{wIjE(~UVD<aVqJUe5Z} zA8XGBBW^7A0p#jwLzOQQQ4#FoCZ4Pvd!S^RBa~wLkrF+V#f>%l5;@)bBvudf5kFN2 z<Xfl1U~_L7yO-?g>sKvtTml>S_RI#WuV22z@hcSWy-bQrm*~6U+I?c2V=1I}MJD%) z*3#E+TB6TK((OvzvP6Fcx(_IE>k|D9c<`VSw=dDZMI-G{;=@by?~u<UO5C|bKL~do zRpOIN^ju{0xDt0S(Feft6H45(M86T@F40T$_4}9L*@QoM6QZ_0O|OBar<LTw%!n_s zD=Aa&1GCR4X*z3`1^>MZCZg#0h@S%l@~y{I9eJsau%LF((D$ZLEo<vD9nVmz;Z)Vy z`V0rn1l~+)4t+g5t%WZ>l|#0^6b8zbl+T)d4Zl5O)gm~M-%1#yHu3oL>)H!?qDi#% zQ$+5bK{EFYk-KNS%-tn&_ssC;-eR$`eID-6r}YAs7oCj&8m~pAB0nPrpVk#@PV;O8 zumErIp(2+PgO7e23R2Ko=9*72owmSDex3bI${U|W5>Q|4_CA=uut23>3Fsjfs6Mqo zZFoq&1R6Fq<qw8|W^&4JCa3kDj%ISUZzgB^gsVtJozi{O44HIkeL13Rj&2BdO}LS0 z`3$hpuO^2iwWAa^Zz{sw;_gK_S)B&b;a*7hR(RAi+wf$Bd$u`1spYfAwyGVXlG~C? zHoZB*>)VL%Ur2RB8<Fg`t_W|G;r95OosdmZ=L5?5&IF<J4CQ>6v~xY_ZxPwpj*`Q7 zx1}s?J4t7If(ZA-(=X)d_9Fat2ZZ;u6Jh$B;gHulQaF^3!cYnHh)bYw+z2E(W$*3y z36Dp;<x~v$zM)iBrhf@n>;uAPLCc}P2jA_N2_aT*gGtdoPzdq*z8DCDgy7UWz#aQw zAtdQDJ3<&DgjD_UP7sC)VW2*xJA`3ENYlH=LP!&WOYe!Y*+&W?Q}0BkM+srNzB>WJ zm{!r49JBRvlxA#P3kdo8Jt+`e!s}A~Im&0e5PbS<)Pnu;h?Xcqh295kZlBPc8g;3j z)&s(oF|#1tqF+gwPISb>+A{rf%Jiz3BnYeYJTh=i6dkLr)4#nG!i?7RR%?r1LKQNz z%}@y2^)9Gk`z+zkPMv<**M6Nidf2VsPieBk;UU|vXJF@N&lbK_>7%F;XFEp1z+q<l zdnr9u+R)i?N-|Y^kLV8Rar8(5A4<{9skz9jmV;poksRR;f4>wVI%n)q2!}#1Lr5rI zg@90O!9oj=Fp(lcsgco3#aZ^_Xevi|b2^1gm;=%lj#>z7(*lk#TRF(Egcf&DI1Prw z+O~KK;kc{dbZmHp<1iBF>Amq7jg2G=*w3Is!&|nz3W9@1BCVc;C!hK~xrBvQBit)= zI;dvqDE(tJN<@5%TtwLhqudc~;+9dEj>97o;vS^%Z5U4xZR1|1@DVr=IZ=#>W^(h{ zJ~pbI2i>_{1&eAQLC2b`-2w!oDQIiA5W!{?bhMj~U>pS_F>K*UR0lnkbm;6mIyQ=W zef#+63|e98bV3+CA%Z$Tc8fzGTp3A?=s-FM6NM1VY;^V=ovANIn)a#D?pP$#D;Fbf zwn{q@^%9*U1cyF32SRQ*jl@`eI*J?Z5lp;(PdtP?AvpD0(MO}_2qB5tS`wA7KTlc2 zM_->oSqS&$#!y(fS7>#wNVykE{@8NhcyzJe4&hdzBgy?zu~_AyZ6WaIF|at#!;sXN z?c<K1efliuHj|56+mDxGE%J~!2A9cWqoa?3=VGnP#afq(wJsNHT`t$UO1DciZ9}+N zvvRR!<zmgs#hR6iH7gfuRxZ}8T&!8SShI4mX60hd%H^81nOyEm<IQ^UWiW344!&bO z^#p-t-`E9Uvv=+VaM-6~1hZKCPZ*TUY5xU7ily0q#)F(K<!(fB-U~(6_`9eD8{deo z=3q8j^))}z>^n5J?OM#v&EINPLE&DQ8=Al0{1*y8)Cu8J&6ZP`4yc=d);xrI6GQgR z|JH0B#Sg^f+WbuOW{3}^uGCDPUIXa#S{9;3KT$MZ2-}ROqOmzI#a-hoaM$^AJVCGv z!ypXdE(}XMccMK*`6(34!K2_s7^h#c59jeHNCZzusz|?W7tafY!MG%{Z6F2b*Hdx* zd?tUK_zj7~KL8In9}fRD9)VnS{x9Tb<D1ZhL-^gXly@`CbfJ78!VbTUZ2niWaShce zcV9|2_M_Yy--Gth`3>k~Hts~;A-oQ(-Jh<IcfksZe~6qIe-91A`35wI#&wiN=f$|& z_-=R;!pm{D^X0G<%3Hv;KkvAnylXTP4n!L<zA}nZY{or=Ka9JbKZ|=Pe+733e-HOC zUX6P={~q@UUXObukAi_HPQQZ|&3oV;!w2IY%g5v1jMKmO(VTBUJ+$ETZ+^t_TXAp6 z@5H?o-+_B;z6bYs{wnTm`1`mg@Go$0%WH9O$LXh1+jIJNNjmVq<9-SEpgx`4K)551 zh7X;1d)zPOJ#p{Mhv1&bFUP$Le;qnqc@}a{;ww{daLqYduRGs?+U&ty$#~Js@5D5c z%sE;;g`en*`ITRf8cpRtw7_40au;f=4<7|PeR&#E_2XZoru*|0bo2rILs-6yKi-nw zEwsUGK8Vjms=>TD>U#(;M|db-f%`DN8Ta9Q2ks;IUfk38Yq*c(AL2fWcf>3{nlHcu zWDFmUa5^82(KnXAi545jo$$xS|Bf8T^PkaQFXvs+wpZ{fc$>jzpcE7MdU$mu&%}Kq zzaM=pllMgYRXhcrOyVD+|4!!J&^xB^zhR(G<=-KfX}kw|*wy?B^s4DRq$mEOm$%0K zTHY6SX7IrX&*T}n&*InNejU$2d={@nIGf*#yPJn0W;V}<%^ZFZqac?%VA;bvpj>(U zOVsupJ`pkbJRA1{egp2;^ILGA%Qxa)$my56iuhjKi}@Lpw1i*4y_846!VSC|aw+4z z5%%)O&{97By%WoL{wYS#JZ?uV&F9~u{ww%RXq^Q-3qCC5M__FczXx`1<hP+#7xSl4 zlQ;1t@Mj6HM?Ea%MX+`=zZ!M5g6E?qSMu*L3U1|Lu)m5Y;$F!|;(i;Sh5Ks00QWWg zSM-y$`~ie-=ZA2=gU^Hy>v#$7>-jCXZ{VA8-^h33zKOqp`)2+Q?sxJpaKDS6!+i_C z7IyCD(J}bt2z~&qb1(l4?X{IZiu&Bf-$aYt$M>N`_wzKAVmp5d<$ZvEf!2JGw}IwE zJQ3bL%r~Rvck^q}AD-dWDEnXd7Q{cxyTigBUVuKomygGNA76k`^BixE+St#lVC{Ln z9`+A#dR6iQ--UWU$X~+!5PuK%7x|aCzr=sSy^4n-$Cvr5u=5J<)f>MOz@LTv!+bRA z@HO5RJ|E%rD9cf<!G~k~HTd~DpMW0w249A}-sBO;>n;8<YV2+PIPAQ`^DwgB<)6T- z<GeXq=RH0Y_3%DF0BaxcLZm&x%Mt#NPlwMZc^7DY#NU9or}(EB1t0UrQHP)KC8&W< z`53h9Y5pq8{y%&@!qt2$eE5P_!scIjI$HTl-UY4v72g|)UwG!*VDoF<0T%vluSF?1 zw~qp?ar<%rP6;1FcKA+0AM`C8X@vpo+&&p)4CVG?7&Z=WpN^IZ<MyXvDxBMEQK|@T ze;AoZa{J;`nicJ>pc&2Wx1s)GxV;%n$8!4%P{AG|2R55?`%5TG3*?S29>?v^z|)r8 z{&zHJD{j|Nw$|Lf23F#^{RY%+8*cv<$rHH!5=d>iy&Y8Aar;Ney*)BQx(@IYb$$uA zyHOoZZg(Q1j@<qfs;(2aXQ2J?01JzUPTXI(P7e{=7Z@-tlVcyXBkl@VjBV8`_LgW= z#1ROsdN-%11Z(GAP{dmGY1R*dtzA(`E^E~{@?Ioy=wG8ETlI^476KNBWT91moxU$` zOGB=$rwPlgLhgl?)^o%ppZX+fZwdbxmB;uk=uMojgP$62g_hTODf*p__k*DjX1f>l z*1AN$hwM#5RD8GCmynZf0GcDdy9~ENBev-&!f|ED(~+=0wmW#8&Ylwv2-omc3v{}K z7leQ>f{<RqL0yAd+%IUNxP+HupET3FYE5%krqR>T6bY{h!J+R%{U#iVpfyyaJ_PNN za8w9U`WO<92_agaK*H-nh|xQBf$&Bo)ijpBlxxD9Iu#_&i;fwea6EPh8b*5kzSV;d zlm}7d!3nDeA6h*)Y4zYEs|Tm79(*i4(38lWPlOPMy*gY-_*CCd?kq#tnNS^j$aLqg zR(HO%y7QHC=K~~6_?vQv{^UR5YpXkdx4KiK+<AtY<Qvi3P$86S!ngW3>YU$z>6cI& zn~2USE93{O2R~XpIHx?IS5*l=g}<p&lXUA3;b&2}p87KbA^b}Ssmw;U6VB_eQ$8iA zQD;JZ>{{fbQFmcn=A%(};Zm?^RPmY=9P*VI7h8;2jq<T^VLD!;eDIqp)WGdn7}-v+ zbG<igM_qxT-ZPSa>dz<Inoo>1pIB=?&A2QN3nK#w&AEOLS)-r3>D-#<VH^ps+gPn7 zSgp17TU(AK_;(M)Fx9BB+DjoewgS_J@HsAa0j3UBmYEnJPE{7ohZzw+3_t~QvM|a$ zp%d5XA3Tft4g<7ZS6=UTrJFR%L<M%2f~>$EQgCSG3Vse*x^ffhIhl(N5i9&kkwP== zJf0i9q|jWWA(kqI7VsE<JufCKc#I#Yry!2}$(4k@T=&A4sFi5Uo&)(qm|H~^4Yv9< z#Ol{jt6#&EU&v#)G#raOMyTwxbEvp9sq%lZ_uf%*RLA~!-|n8Y6E|sQc4zZSS|uc* zEI_P~03m_|B8VWg5)z1<M36v8<Y<Ec6W2tOu`LW3FkllzurVOAFc@P4CTEPnr0?fb zb??mJ_dDnL_s;w8G3RV=)eTj3>xRDFT~)W>e+sQkHS*kC^1lYMnIi4}*=W=>t<&va z0A#u%Jzj!xHEnK!Bm_(I=(C2IW<%WTL`Vd2rdCvWh_Ff|6n$-H8h(s5Fz(lb&n#6$ zO0+Utk+jc+XM065J{O)H6v_H89nU>r>TFQU`8y+LM<a`OotK~lO*@%@fiu(lfJ4J> z=6)y69@XN^s}^TZC(Z&4^7+-`^i_+qpjw=TP8<%cy_`54T8k8cIFz7iu?aSX2<hS2 z8szpf<9To3+&rLKoCB-HImn8WTe4s&c9AlgQqt^0oH!gnM>%n*s-vwqUV?m@mYLuQ zGW`|`$sK2Ia!glMGeuC^N|&7Abig5eqGQUbby79cldGAYQf5j%O{bb*8W^RAV5^ck z%kTs}Y3YxvnVwzE6k&2W+T$?2L!GA8Cb*LXeoCn?Fq8352wYT60HLodQeWbv9_n-J zS>jU{%m+xIsow-&lG?6NNW+!p_m0}t)zlF9r9$l*M~%bsTBif*`Z}ir>iT-80}jg@ ztPZ4qZgk^-!}6x`u%rY{H=AHfh>*S)GUa|{reFw2<8G@K=k{uGe(l6zm)zmRVVB(L z#G!0=IdLf4Z>%_8f_$3pHo@~`diN;k<$kl$F@3O_>Dp?hh@@t_gms!8Ho?}Yl>VHz zmdDIDj=<y91fHlS@T8OabF_M$QcL++Y=)jvglqKEy0&nQen!E9KM4!ovvvXU5@gu) zoC(e%_d8I#=TBxaHfN%<m#ew|xtjYcj(c(goO|H7)2i-OlVtszKL!ixUrp*U47_%) zj;{faK)Spm#cq<Un*L^j8l<J~XN5P-JNPGj->&BSPBq_m6^Z*-pzM3Duh>2ByS`%g zeBk<uL+8VCUy)DKM<zG{|I@$425{8pW)=Pk(=V!-e(9J#h5hEgOzkTe@Nu8PhQBg( z?*O58zqTrccE7O-%`H0G`&Qxh+@fXPcM5ll);(XA{T|sF7++?@a4$hYntVU_C#Cvw z5V|1lC$Vc4scN*CF78Q1LZ4Eld@I$-qft*u=lp)?HKRxaM9eB!fQUH-Oa2seS*<T? zdAt8Hx~xu-PA@_3P4#~8BZ!pV32Q}9(LddZ(p)V{salj4CrZ;uJWlxapHo4?r%j6$ z{Iz>w7+47)SBHY_kgHR{ZZAQGO<jIa0LSz=kSYxGUvS(<RCC|JasSn9-0pqZR>eiF zqckVyB}kxYv>#kRYR^NrqbB$pVy=i<Csk9M?5J^%v5~J6)8}B`*iW)bN(S>Lz6|Cb z9n6~{T?TW+OOSfg6hC;KtRh$l;?w*i9jnc&S#4oic?lM4+R_hZp<McHtO4!Y_^-G+ z+f~<@<;3HLa<(FI|AK|MajUE;pAQK;_{kaA1>}5g(dQ_F{S8Ss?dS(5f_7pSA7JMC zEnfg>C6ayv%UrI{AB|xnib2FRF4Q{S_OhIF2OhqUx5%$&skj$=m!w#+X|W%C17!5F z9NuU(?dNBofd=Dp+jVkcc|6c><dapL&q4?J1Ng)gKOdKa{YE~!Y`Fj8WnL4^!T975 zzYq6>L;WW1;p5{mQV;W6xX+Grqkgzw;9fZXDxMUU`c2%)#<^%8;Wu$B8NVJaI?^w4 z`xb8poum8#+$F{P!1!o?0JkXdQvomY8@WG-Uj_Qh{Q_^>@$1od$M^-_P2;oCrepmg zZ;bIe&{^TP@U|9Tfy;4z8}BLc-Js=_ejAti_&-p7mEXZtJI+r}$NOzu>*7t2^8~+% z>sp)(<%xbHhfVzXF}U6P^&BGcJFr5X?ANpF;|n3fDSpFvsyTzpseTier}&<j;ivh{ zTomGs=+D#r5@%)n5->c&ujd?zb0S~tC)ojB9iK2?10(}<f|p?bG+p8c(?C?;f;Z1J zo!Bayqwz@UnXS-jWA;j;-%U5383MB>uA%u5Gcw{0>e&#t_ADCU4QfF7Nojs!81pOK zND8K9K%8+VgZH5HmSXy26!L--(7P>7X?_Qc2TLJkOIu-kWaNT>5oxcV38XGKbp?=) z8rHAZk5?A~6rsQK#!laA2d`^o>1Rl4oeIGl2BH<`v^K?;Lxx}u^xxW+eq8un38l1l z3-fsJE!5FEJevUXTyP`Q(mEpZ4T=?l`RKpak?9wKlmZ^%*E%Zw29Wk(DSE1P!^EXP zx`RG6taYrA?g_pE=hjKmlu^MZ<g-cbB#@pM><V?YZkpR1NN;cux~O$#V}F2GuR$lN zZ7s;$;95MPwr(THl3+Lq?3!l_j`r&K@$L+O_NEyA3}e#_&0m0|2Eqk1JieZdy>%Hf zMx+Vr=O?p4)#oQOQa?WhT(Zol?4MDr;KfL}t_Am9#;6=O8C79*WX5FML4)@DW~>q{ z(SF~IZ6tMki`f=hHsb<TYRUOsQ&^lI<os^o;t3ajU@bpzqWDjc?+*%^@vr7OjO8Go zAqUv!TC<skt)S>pZKLDAC#9<(V%r$`#0-lv%&oSug2aPkptQE}Np?;yI1D$qwh2jg zPD8K)W2Vi0{(b}Ftj&G?{u<-9&3^v&8u%Hny?tmr*#Sl;U@d4LE_Vhm*a9N7kI>sh z@C&}E*g!fy7wn7HwvSA`fB{|b#xFh4o7fSHUq=EDf<Q+?J|26)%b128HG+h}WgyUz z6eJ#;iE-GG5+oJyl;MuFAh}?~NFW(O8iMypEh|VNI3ClgBPU2Hcnz|3)C$rbyoO%y zXh{7A?d}P9W^PBLL<Je;HL+Fs1Hrm;Q{1mn;6Wrrc1JIG`HP{u&SW6Tue;<3smLod zFTX((3e*O*O!~?d@ahkQW;^ecYPFc~mfA*GIXe54T2Cc;9}Mx%w|!X$wqr8CG)E?r ziCk0^4=w17n+&o2SZZgM;>D|f4^8blMcA!k7B60mbG|-`Y1Z|#{G~|YpUs+xtUQhU zyJ6(dyW2g?BOolj`uEX&1N(*I3(Vr6l#4g`WOP~2!1QZK7UkAIMHW9wlj*mvtXKaN zj)uhp8oDsj@E75b^I{yU_1&P*c2IsKlKB_m(DY(`%sK>o2Q3m+?8+>DY*a0X1WfZ{ z97gpUqs@a(ujc~8zsNGlVrRw<574>*P3**TDSPx%77$XT(&N={3uO+xJHw<~n8#$V z{s|19ft!dvo?@!#gY{J@L+X*(c~J0Lr3P2d!H)}%Z<#865@4D0VmE;QKqlrtq$GG) zC8eRr`?p3x9Qtbv943rsvVbryj{<Ze#qAXW`!Qd#D*1yS!fl~;R@afpi~ThKOZsRG zgpUSqE$6a^G;j#rC%S*>|IG35CeRaP$h7oBu8el{RJK{F<iFYzRj$xM@-j<tNP2DC zVnPP3CU$6uzCVab_=uqYJkviK6Re%y1}M@_I>G8kk89q0De>{l3|8NFT;cGAu+cWP zR8+8f-Em%w=AoU}LS;eD#Apif+5t+k7y9AP^#6*KX<ddQE&NOkYqPHHu}2B&@O&hA zU*Rw>s5cqSon3%cdV|AuEP!XD!{!ziz_Q(8dw88+p*sV7JK$~j8q0f%vIg(h!Mhor zHc3;U35&n_0CjH(-Vrryxu2HY6T0Wm^dEvHEGcSur<+=!8wwl!&Zf+P)m&z8c;h8G zqv1x80qK9rof4*J9rVXI8Kn|It_%726`!#TUJ(?JBl~*6zXotr!H^9-PkWC#+Q_h; z-1>4}6TdiTAHw}0xJIP>a$l{zoh4%W*P}%8MU1fEnjR}<jcD|`BzqUaP|O>gnBK(u zn^E@S3^Qk0YB!dtO~87b<kLfNajQ0LZj#m_!NtRwg+|vr(*g8SF&=^7%Ih+VF7aX< zv)PStp9)SFiEmk=#4juJxRX3Yucr@mdR=$~ggkv?MQ0~}fi)>OeFkayt7j;WGppNk zmTS+X7cqH)^UVa?6fe6Rx6<Hn;eG4g%Jf@kl|R!z8*4=JUM%Fn;ay}#YtiHd6N!&y zUa)%A%FLpDF$9;^a77GOpR+Qv7_PU$@&+!z!Rm`vO6M*{Vc0~u&Q0v295}N0t69fE zy|RvmFTv_7R-%8m2Ppl^s?xt%ye$OW{RqnrUj;SuXQKr`*aEbe5@CkhY52vw<j(Az z;iFafkLD$X(eTZ;5k_y#t67V?eK4YibulgH*G!{+M%ih4&Ym?i1PUhC43Ye6=GV~t zC)lQj_FpjeoS!-5s6}3|eFIl^C}YpeK8GFR1v}L9CIDsasrymZp3J4>yR0TmLV~oZ z#@i@{5gBww_p|N6=2Cv9KRbiNv?wMh5u3ZXoO>Baqz*@Zn;jIHgS?<wHdh#DnMKGd z$yS9vOKl6m#2;_!xeq&Up%OW)OzR`iYCil(me`ObU_;w}F}e@<CXDY-6WhYRo<Gr8 z`g6UFxoR*kB7GPmiMAEkNWno?xQw=3>_7C+PH2vB8DYi{#sZ;SMwlt2gxNwSBOMdW z4hqwD6-Kw;X=-SXbMgWe`sT9iKXp_)O_!xAOQhdzGOQuZ=PK;yO^ykF?$f&0mq~c& zV-YNG25IwWD~X~b(N~OG#>;FiO4@8{b;>QlN`5JZrjHLb)XSgdYbiN;8KCJumMj*q zz!1x!c_FchiuD%YsTDUhy3+1lfU_2igcRGSIG|6--KYON@=jFo&hi)`|4U)L(z4#& zmNor%fprS3zid@reJODMa)cGb%cig)^FNfzy#4WalKz9-O~X0LFfu+IXe%TSYGwIx ziuM*q&)33R+B!9#uq!`l)ciiIZby>A8^Yie%ixGIgJT?nHwHTf?_fLWzcIlvxX0GP zsw2Oe*eK+`RmI?Ds{Sz<b&Ijf<FBK<guUe$JhlOc2ZwTUVh1ZsAqTEDHGGZWKVEAE zz?}w1%2qF?{_{4k&&!Ubbax1|v-S{Pp6uuVn*QlnOhsLHjMlL@BRPe<?wG87Ii0lc za+63FYX7$t+6S;9SBa*6XFKq5WdYi29PO*5Az0{@_Ei%s?c}9w##LLpW|G&>zR&B1 zGOwY3#zM1NSWUC6jxDoFpz+d-)!kMnsl70fMku3gl7HI?j8;$7TU;;soM-tg@v<*+ zx}GEodU7`<xwK4qXGi%Y+laZTgHU>sYJ0Y7<czYE+4u3%!#`4p?O=(mC=<Kd5j%2( zo%tko<izh0JGMe>YwG7vA(phn+^9AE&pKj<+JT6^K8ef5K2qVhU6t*R%G~QlS|#n{ z<`NaLZ$%O7n^1e6)c(g@t#*33_H0*s-teknH@{N*1<vWYQv3I|Hb%1iOg}Atl7EpB z!*%&z;tl;v8(!>5g{y4^Ec&*>I#%F=y+3<|y<a5daeVe<tE~)Y`3_}eb;ofBGgr>E zlx*uU40|y9u$-7H3xu$SXAbks)$$Gi_nqQiwgP04U*@n;p1G!$Zw178HkNINVcLQs zh+h<q*utCJ!lwUdOZ}pvrCv<iGFZjrM|PLgmFZ>cAip^)HUpW*?xIC1TJFNqLt)P< zDY+TRUAtL)AdBNJm%LYMkEIS|W%wy}d*-ao6koHl<}MaLTV9ExsWqo%fu3V;t9><N zu@sus?k-z=%<><rVsOi9&b7CQ*;oj#Ch>zs)GIK9_<Om$PQ7GBJ-CUYiZDOME!Z5~ zT^5ErOLM3lBC};*^)6~9g10&Yp(fMEoa)4#^0ei0sN~|~6H3<*Hb>-06&mo0Yj)OL zH~qE1@wNaICA%;(k{wGDrW$~|U%@(Pc0bv2K+EK3`kOa|%F#!=H@QB_p2&90N)UI> zAeB4Ju_&KpT{Ej$Wtv+f4d322w2wVL#}2S1((1ENClRc-tyTe<X17#Lr0E^I9X2PP ziI0k7lPDf3pZR!IjhufE!$e<*f_j0(s)ETB)G=kOx{sg$4e$$U0bfvWm2q(dJz!Ls zf_kg890>BTnfe+@F?y@O$6#+H#ptaP3~suJ+3Kwlqqj=XQ(}!6y;XuC4IGs*x~U)r z4R2&Ix~T-ii_}Yu{wcu-G3bubuOzrg)9F_dTr9ea?Ku(f0|M8DpaW6pGtxr1Q+!6k z(eVq>4DlHW$H-Xp#AhTNpZE@J)Mq4|Ac*>mgcAi(pOJ8qAnoEa5>6IGeMZ8K1W})n zaAQH#XC&N25cL@edj(OSk#MRY>N65<CW!isgwqGCft>0y5^mAJKq=}o63!5*)n_E! zN)YuK31=o>LKD<yB;2-+s$CV(XC&M%y9|i>jD)k|zX3J%840(~{sD;kjD)+U-$XI> z83}jKKZ_jo8433&z5?V5@fiu{i8$&r67HE;ggWXo63(v~2Sj~F!akAhKJgg|7sg)$ zfwf+YJ|mG>F^4W0PoI%+SY{A?M(S=tejSr**<F;XVJe6rk;exNqR&X(lZ5CqQuiVt zDfp=?h?n0<RE+gu5Jb1D|CBY^*NN*lLBfR@#*V1ttvE)Xkyx?*EW-2|i8a;VM3_D! zvF7>*0b}r=hkwFhCsY(s+Pu2m08fa~|07<gU&TuF|A-eGE+<U?k9bqV9faxs5pQmI z5^!5Q5#ET3jR^Y_NfPoJ5j`l9AsBiEbqR?v9zh}+Fw8?+E>Zdf|5>A@Qlmv{G%iPK zEi1<x5qYSkfnW;L1^*JQ!M*qwqkBk=hDK^D)NC^u(?I+$YPL;soa@`@8XFo36;RrR zMvBorq-J)&I5N38$U&qVnU6U-5hvkA%!yi1M~fI8EmBuE%Y2QX{poj#gqvf$W-^(Z zK;^%2x@c?9l>S5k>1CK{N!~(v0>1dkv?i&Bcq1H)Gi{QAck*;F&a?-lY}pLTFecLf zn!iSjKE|0b!Qa6FCYd(`nQ?UYZlsHGW_(H_@HEoJI5R<zFrbTZW>Si!;zha`XC~KE zr29;fF2<RS#j|QH?A1wm6Tu!eMY<SgHcj@T+8<5vWT-dOTR$7v%cfghj5(j^V%)7R z##9YmjJwsvm>o|S<8E~^W-eWfyVb>*xpXn^Ru^NU9vaiFF2*bz(#5!z?V$)V$ZO=9 z@M`BEm7)laQtY9<fKTMC6c^(dU5qm`gBfUOTPZu>kH~FAjI3<l4q3#=$`%9;8xbQb z+az$jaUu4}%>t(y5hE+BLp;}r7+Kj?NpEOGjI3<C!07Q+;E?SI4hDmfjFFWcRDi+* zZpgEP(}zPcymG-M+apLAQ1{s((mC;97RGaSXdSDhyjn^*1mIw42Z%F7R(4ph9_c!q za*51fbcK-!S>`-YH%2048Htc(=(!e}w~-z(+(<`_M94A{A<NLSEMXV}pvFjqEF%%J z42A)WllgulW41zW*1QThXMTk8wMHUj8Htc(Btn*v2w8>;{{X}1xx9G=d<#Y*WSRW| zH<{_UHXDhMWgY>w7DE$}R`U_k+l)lWGGmd_VKzr@rx^umU1mR|beq|rInax}ilp4A z$T(=EZDMZx8EAMA^dW6Rj!M8wl@owWtmQfz4^Bd*oQ;qr(=|6)XJybyIyOR<%-!6^ zGIzW2s&@ghHVMXnT-)5-rghLnunweiy?Mf3@Ww(QQ!R@rlYnfd@s$EbQOQly_)5Xv zI{=xk@s%1E9(;h8+gy+yER(q{WUPz|_^L3sWdj$yiNR^u3FT(g<UwUNEDq4dg1TbG zJ{ymmt%3_6lXg1XvQ9&>^!r00kx8ptR$AS%((0C#o{J5ymrJW#R$AS%(*KQHR?NC( z@%?Dbx@9#Hwr*MUVvJqgiF?!f+ChXjgCgOU#qSz1>z1`4Ve6K~!BNL0yr6Db_(!)a zZ3Nu1w#J<NUv|r~v}c(8N&COLW!e1M=9kR>pSfjO8hz$X()iEavTVHr%rGpv|3kMd zr2)6B;kd8=;Fk4+Th<S5SwFaC{oi!UN~>E|THUhJCw1fQY|`qMl~%W`w7O-b=is$L z%%s&VE3Ix>X?4p=t6Nt3XC2sanY6lPrPVDft!`Oqb<0YtTUJ`#veN37l~%W`w7O-b z)h#QnZdqw{%Ss<QkZxINb<0YtTUJ`#veN37l~%W`w7O-b)h#QnZdqw{%Sv0ftekVp z;!PxG-Lh`RZlKe-Wu3~G8P+X}cL}f2x@AoQ5;j`5tSeBZ?3Q&W5ImGwx2(-kE@s`b zNV!?Q`@=1ZuSq8T=WbcCOVK58%etKOtXtMv(2H5OEP<_C7U53kmNl{tEwFA`6s_!* zMI`iM)-5ZBVx7({>y~nz2UAsb)(R3jw=CwA-LklcD!XOLhRV5R5h=T65h=T6Q6D)k zX5F$jq6E$@tGC`s{dBbi&sYg)%n7%wDhZxTR!Q)@Al5PL1wpI?>jkkAyqFRRoLd%= z2E3HQvl-m7?xi@+E$e}@IDe}a=e25aUbo`V_8o3nDvou_B4WjPvs#?DtT@&!i=zz+ zv2I!0fN7_5%NmMTCC)9Ys!Kktmf$lh0e9|j%i0_}#<E)$8&`JAA~MR0S+}ew$j7;5 zoeMr<%jy}Srnam`k+NHsDBihcaZ_4$%OdHrTNaU$mve4e<3YQgUR7|*de!lPTb8s( zyqDmXMMU|)Evv!@ZduYEFGm7&%etJ@tXtOpjaF*7WmTxbEvrHeZdpprx@8ebIkzk# zIYb45TNY(*K=dHEWocWiTb8uNxn&V)_j1lH>wSu1-Le8a>4^g2mPN9vK)7WQDZ6D6 zDZ6D6N%^$Jg<BSfO4%)oNZBomNZBomNIfKmTb7d;ZdoF+mve4eM?)?3)-CILCl}nZ zDssUst0EWNvMO@HElcDA54dHKa1L65Tb8hMZdoi+cFW?6hO%20k+NGB>y+KHi1c_l z=a!X&VD;85YXaV`i}K)>MbfG~xMdM3yJgXpz3i4nMU>sLh?L#3h?L#3h?L#3&IeL< z%i`i)=jEJR*6kF>x@A4=#DQB@MI5+gRm6c?mWs0gOA_3&D&oK`t0K+<MN}NPWvMvU zElb6*ZdpVij&sYJ4iW0DTh>Mes~xyyRm6e$TSXkWWr;X>>z1YB&>IbISt^co%Oa8y z4>q`Ei8x-)xn(^=rgWErTh<!KbX7G|Sh`i1!Yxa6z#$B`EM>}d5N=r&rf|!uFoj!| zWlBDD%bEd3_0}!xW5*P3S(TQ;Evv#5Zdn{iaWCiGvhF1T>z1`C-p<NEf?HOF0Nk=F z1mKpXQV+$0H{7y#Lr!@)=a%&?sadzICmc1nWmTxbEvrHeZdpprx@D;jtXr1qfW9?w z%TgU!w=B_tbIYm>OSom(Vd>nmwt)!s)-7uqzp(O_4!5j|IB?6Vhy%B*N|(SbOT}TA zz%5I~v2Ix^4rPN|mWbo!oLkmQWNO{API64)mQ`U2x2y_NxMkTcac)_&QK{a#WifoJ zNDa5F3IVufRS3W>OQp7MS)^8W%Ob)x8g5x!TewEUEsJ2;ElU<4FX!B{R+GDR%i7Oz zhg(*KJKVA=+~Jm`+^t)da<^_-tY3D^VnoDtPu|2YN4mTz^}U>P%gQ3Hp6*g`%lgpq zg<DpIFWj;!eBqWwr0kZZeP!LUw6EAbaLdxZvTj+nugHgPS*Mbzb;~-Lwg?;`aLcMN zg<F;~wQgCj$uer)vOeV21KNdKmZ%ikg<F;=G_P)1gxmA#mPNSimPMrOmPHQ3y_|E) z`kGQ%x2#-?l?rZI6{+BsRgnsASt^xv%OdHrTNaT9hzPeVf(3{Ow=9BXw=7PYvRf9B zPA})&vd)E4>aAPWkDVxR%c_V1x2%dNaLZCrtXtMsRFHGaVzIJYmPi1(;Fd+O9df}f zi(t2xb8cBJ;8<_nvR-!F;g(h54!11jZr!rDttz`^F(>EcoLknVq(;XnxMfYi%Sq{M zxMfwS!7WRvS+^{in9ePWRmyHz9LzmBn72f_4CaWJBXzoEy-iluE$bM^3T{~yR&dJ_ zR$k7zW$lP^_0}!xHCG32S(Q3)%Tn>ITNaVBTb52d>z1`hc9+&Ii%7xCIkznOzT})+ z);B-~5vjLsS>xNRV&Ill;S9Gd;heW_Su7Rz>OLYV=a%IoZF1QyYkfPm4%RJ;RkJ>} zRdCDVlU3HbW$}qAYu&Q=?6Q$_%i@zm*1BbJ51+MeS=?u5xlxB(7Wcwg>z2ixY?k*? zxMguGnYC_N+`eV4TNZaoS?iX?ElSq9WpRIywQgCwZD*}p7VoB6>z2hEW7fK5@wS$= zZdtsiWUX5km-?)A%i^k?wQgBl>#|K<_?YB3ab3$=w=52utaZ!c5XoA%EOvd?x@Bzy zm1eD57MG{2b<5(SkhN}EoRwMYmc==ewQgDL0I!zo-CKZUfKKpo&Mj*ODC?VCxMdB- zn}`3%Eh{m00@jUOnx6;~n{5cVR^j``1Flz?u3M!BIRqi`%tXMA@*y_yB;f%HUp5AC zUf~_a0WN6WsgnU075;1^z)cD>R(Gjc;e{+;QaIcgaErn>QHEB9Ybj@&!kdv!yTT_= z0o<YR5X#f3@SUXDrShCin%xR-NqC^Z8}Ge*nO7R5<-Zw=^uY>e$+t&g_Gf8`!snCM zFoj>+1n_W$&zS^xge^n*qZGb`@Mwk4Ak7UG-k16utNLtUTgItu{gi*amg(IT@C1eF zFISqR@N~9ovchMw?nVl4Li!skd=uNUsnS1+G<!AuV5U!1_$9V$Glh?3Tc#--WBJV$ zUQ0P=D!do#&QduW*xuQa-j*wEe+H(4ID?h!VJ?ky1}nM4Tw*-TrL<$P4~n%FN;^Ny z;@3owwo8(*ev2>J!(0L+cqMn3OC4#)c$iCRx8MT6Ah1V_Z{>u*ycA(ez#itJ1l(aR zb^M?g%bo}VeZdPLpi`u@I5QhH%>-z{Gp~=v#T>XZ)=BeO3G~dEL-Cwt=74X+9Ey<| z^<ocGF$V?(R7+e%#UETt5}V8oOG^`PVPhiS^h!tAZ+hG>m5!3{aPfeL!<3FrJ_i2n z!K4L1mZegtJW)Q^m6l7f*}?N{`myr4Zb`sH3Q8*^=a7Jh!<1G^&S?P;hbgU+oO6OX z2LL&t@qGwzeZW%=N+(INHNkzXV-JT3;vo=wIE;K%EZM_hf}a}XoGx|N1w0(4WDkc4 zcsNYS9u5<nO4)uS_l&m!9u8AFTO|0X$irbutA#+^6zj>z9S>9F@h~NKK1}gi5_AW| z6nQ{Q>B8hEki5qfH)5VUBBqG8dnI>9Op#~Al-waPawJu$d`iq9o)S|>{nvhnO8y|b zGVTQnERwuDSOP`2Fg@{i&fhO|3?IpP^repNHJoc-Yx=>Qv)^d?103hyN&1w#S=Tdy zh*`{mps3%_VbxFab^JtJvt=j7STqsb2g?HfYIf;BMMQ)>=W3g<7ZO^KaK1}87zwRN zxX2}(iiCF1xZly(8VMcoL~w;GaSRf=P~rhs;tnKqBjI{i;wB^vM8XX&;XEV^M#6)x z3hxm;NLcF<#vow`5^i)=o<zbhBs}Cw?2pC`N5aD{VN;YCfrOh}m6wpP0TOO@36~>b zG!h<hRUSmbhDi9iEAb{0#v<VtF5y!oj6=dNUBY)r7!L)laS2JtF#!p;xr96tCL-ZZ zm(YcTNucqlV>=QFlacUym#`5MHbTN5T*4eAY=VS)9F6%%n1Y0RUBXdF=taU~uF8o> zn2Llyx`eZluo)75>#EGcl%Ed4?sEydBVlutSnCq#D6=K{_EDE`9TH}s$~u>DD-yOs zm1kW7KNHME!gDU+F(hn*gvXs6^kbZbgy&s}*O0Ii5?*i#A0lBlB&>G{Um;;n$nmO6 zh(Xdmlz7V})FWX565e(RZAjP)3GcXsVMthngm+!S1SIT@g!f#+G$ibYgeRP&dti1h zuSo<S*%AZmIhCSpzb!Jb4Jq|eRC?B>3`5EYmRavoCLm=4mU-EwOhd{@mU-2s%tFd2 zrhI034R{Lca!WeKXOzi!Zxs=9j7<+Y_$aUEEYpXTjE3bA0&?*N`~vrj)_qemFtPV% z7N@*7;AgmhwA4hohdPs~TpA)=jpWoIZ@^*L1GOY1|Jv{6dn1-$rRzxC;ZnW!&mmIl zrGc<`qRgUw7M7?syo)90cU-c3L-E?jVVP>b+GNPl3<Fmd^4jT&8N~}KVqHuYiKYS* zu{ZDrtiz4D{YO%7O1XeG>0B(2?dM3=p5M#TQ?=Uv0=e63mFIF6U^QhtAb}>de=c=@ z@^4vhLlf<ni%7SZv!p8J@&=qmO~yo14AQ8YgecYO97WI0Rve7=K1(cOy>_~;w8C?f zSU4QXLaygc+`zjgxASRb#J=dd&g?K|@@A=|rLm))2f?~~OzRY83c;RZpwsRx+o`hl zeX%`?E>=bE!y+`Lv^wlr3>^;KXCMg;7zs(c$F)%53|A^eya9)zdT!eoHzJoal^3tB z6*3K20(IoJjuBqVERH|bB-`xuSYOw5$g67v(*gA5ZNFPo`z|Yp`~&c?=hYk)`xYgl z*mfudLS7y1fJUr`RtL2YDrd<+5Do+AjoUs<^tJ`_+4=}AK5akKZ@LwJ(@bAjE+E=% zr{itAJsfSBBkm2LJ7dk!BF)7vwW?9Qmx21=X=w?LEL|@b@Nvz_p{H6>G6<d{0hvxJ zZUcs0OH#5v`nN2@Q8!WqrSbZIX$cQsi|((z*uw&3i%CH5@AiHflG9wW>b2|GO}R$? z`hJLp-@o*qXZpWEx%iV9G`mFyQ8+l`#2Jonx9B*ENzVfAfOm^dBT8fbxDis@(VCM! zN2%8>(MK)O=)T_W(ORuNJN2>6{h7@TzryZgk7zE|P3m*Qezav?G^fS;!gnCbo(^4t zI!%2jzhhJuwv#L^?B(TW`nMek@o9jzV{{-#94N*ILwh?$M{(%l#EI}lpgTq7<qchb zhdhpnG$R@(!;GbOq)@|()Bg(TQ5`d)qX@IX;R~1-TSdh_4eCj?+FE_K7TP<r(%v4M zJI&^XG<DlLn&IvrZYAL_(VT5u1LvYpT?T5;JdWuzCfanL*80p=HvMfdYK}h!9gT_h zaBat#Z{eL7Ih$5mG_?m?c+(J#j{coid%IkFJJb&Qp@3qgc+=h}o>qmv@>?xBr(EMW z)JP(deY8or9pGg~K(v2E>TS`-%0>CgCb<|{J=7F6&!+w(GKLvETO`*@bjk;U&S<4; zbb#rL+aZq;z%RTSz3_F!YIccN$4-%B^lEAU&BF3(px$fw6hxYCgCws;WICRCuTbz# z(|_o?xhO4N_iChFNAleG3ux-Ak+Fx#z@8nRiV^bn3cJiW=yh%6)Vq~Nh)Kks>E93o z3@uw58A?LI>g!j=ck5-*Nt|dL^zkzw>e|Q_FM}dogX7N$sa@D~x(<i4A?ibpRd2{g zs7E4VuZ<xT-i#i6)aA}jJ!2(UgGTd*5%q_N%pe}al3IF?CV#E}yl`&}&?h4WYD)&_ zU<}Y_6-PH9HM0rUoz;=w->EfzTW(n`($TWjkq)*jTz&n$E5ka7er}|eS&6`7x8oOn zhP%djk$Un#>P<FvQ*b&zQp2*r>Q`5URKpdKWC!qY^{XI8JzS|R3s>KXgz;$V4G}R2 z4Oc&kgiesS(Un+-gc(rPO)g>my(?3LtUAz2`9U4ORds}`@4I&;9*^i&K%O!>zSGC0 z4T0-JOyFf6269T|I@|tEOUU%kLps`jN~BAN$P#a}J;2_a5Q$!F3unrOo8H09**zjl z^tfMZ@}jaT-vucdZ@WjDbeLSUBHXPPi<{HWeJjFuFen#j>(P}f!rjrPg%PnC4_4p2 zBJ76#4$`)xCs%lxQ=pwmkqd8AZkO2sVfxR7D8g-0WUz`pBlNM7Z5*kgGW^xMl>T8W z&9M#G8dai)VFS2X#4WF0X`kCQ_h4J-5LajmS7@%6`q~x(effn)Vaea#6~L;TsY5~{ z;@_(IKPihjAMFt_6Ooasl<QZD3@L3SmW7bFmvp(!E9JP{jLYr~<CwE0r=r_dPJ0ED z(QFVg({1ynvo{BWM))L@TkoWr>kS3!g&RWXHka5ZW!fFOWN0snU^sO~8bJVB<4q#- z26X<<aQd$R<7d}7ECctlF?75CXV|6_|Iwr3^U>}9496*c-%;VAz`qG=SQazlsE{ET zaBc(%2diH`O2_IG$aQ0L^S6MQk3!jDwppgw#mUd~X9~DM{3%>^izZxK&KQP<iE958 zcB*REuL#dU_q`OB=cCv33bc2BC`)A98m+rqxp&q%68DD#mBgLL#7W}*(5`H2jtPH) z20akguq+yMOgIKz{ZLr@SHagElj^f%U$l}zosWbP0|n7Sj!8Xavv;)FA@8)0hxOdi z1*`vf43cH~lAfx>c(OWtj0Bm_#%nqNI=DHMiTA`Wln`S>@n`xkLU)NGZVqKCVB%;i zZVtzNhZ2}*$H-mx=ap8ZcK)T*_AE6|M&YetRx3PujEutD9FAt*W-Flk<rgw8@vp-M zv<4j3vmH&JK#~hp*|+{&i#3<UOrpGqd12VC%6@d2DEq>2q8&ZUMA;Wr#0+;h5K+s@ z{kcq(cU72F<-NSj%dEz1I4hiQxj7}9{+-F~5(sxzIE>VJJ0`KS!j0HO&bwbA_s5~V z2QBfMw#QO^v?@7svr1o4@;6TUqeIyjmX&;TIQDx=URIGlb%7=GJtePnO0`N}<!~tZ zGh5+%N<QIxO3u7;79M`X6K_xn&n&OMcVXQY{f>mup4_ItI4)d;!8<Cn8;aiWFIa9z zhjucawKBW{cyCza_F_w+%&DQg?qfWV@H=F0rnPyK4~K!;G?#z+%J4As_s)*`jPM&& z-^CSQvof58xi`;c&n{hSMLt(0_cnsSm@H#MduKmqWonHra)d1+!**QgHjAmJZT=ja zAKlLzAIj3jO-Jfwn+?M9i|*x32*q78SbgS7CYAQPQM2~ff8OB~Vn1)X6XN=nL-WW& z&CSCM?<B$MGf=aXyh$s}wDm4j;pe(~cdqnOf3;<X*fQbHn<7?WXm2)iv9kUPb2=Vw zf4vsiusk<*fTpDH;%*_jex>wXqO3mYtC~t*QMqZCJ6Cj{bGpYKon2S!vU^kYRx>?T zH0ZrW6(?(crX5}PZqR<6W{)ll_MH>#-M}ugR<QR1JE&%hVDAUzK}5kmaJeej$BJ@q zRyxA+*xpL=7Zisyp9J;^sn<(AXN!!e2>UOWjr&OEFHq|n!CUrLfQczT)4w&^ELwac zkc}$leCjh>s;c3CceIv();1Wze+h1~rLY26S{FK6e+lgVVs7dVTdGQ~SF33;rqnIL zR`$tmVR>eDfUL-MOGSyY3HX)M3nt6&u^Qd(v^YDw4cpCMI}}ez(9&J5G`ja%+z@`_ zl-w)(k$VHTo%S;GG0s*6`(CN7p&t}~rvD}<$*RDv!FD@xyrXR;Imxk}9iE9vf3ibW zlG9viNU{NLm#2SUlCvt3bX^Yp9vXapg$UpsuKys(dMC-DL3!)hH5Glicd)`1UREv~ zL2E^Udk4d~v@za5*Trb#o<YGDUR*A`p)0&+V4r)Ic$u9cWoz)4el0agckd8mF@_TM zzpX*DE}7S_l*h6okc>CZ_OUGWyUVoRE_Pl>=M4+o#FkCfaEJEEmTRO#mxKdBY*dip zE5u;+y(>$_%axj2rTG2;Ghj?$_h7xLE?c6*HVUiJ*ubu1zg>ydXpSwgjV&-;No?#$ z%t+0%CD3{D1Bp!>iQj=l>Iqw*YA|mT6fp>SZ^TueIH?EOgQUC`s%pp<Q0_nc#1|M* z2VJU^4=pbig<jiD|L|=$&4@p>Gb>D1y1l8ZZ6$X;rtI0j^kt>>SI-Y;V%Y!7p?ij( zWf6|h7pGjlE4UG>R6MZgqUa$9AC6wKy}-#FLH=9*ahIrIAL&2z@(vITz5JFxL`TnD z>A-jW@`HBfQgp^k{*4!Fm1oN}&(fMN`EC)Any*yVybrtVXZ?A$=C<XU4{Ob5eft_o zdA?9pvkL?Galh8qbX|!PH>ZlUkNZ8<(yptj$))lU|Fw&h*#>2v!?fljzC6uxmSo<7 zO78dXvPJQVQGVDTY0>-r^6VQ@!j$~AFPqF!w*2Yk^0#UEUzZh;r1pR9kG3NwHQ!d5 zW2<09-{spi9evYv7pSlCzrIkjF&*V+`u_^TGPl?G<>}gWKE~Sh{&lwSPUXU>%|tcV z`*wZDGVta^9A4y~Z;RHKi%!s@S6Atxh)zD+|NH_iW9Kx6$5C4JY+r71xN8hep@<Bx zbA3B0*@Q<R)v^Auw*K-mt6Q}Gv97C^#Q%a-?^u5WPI<(ggC8{7dx-D<mzw|5nuqxE z_yNu#?PU)0?MmJko@8h~QyHhPV1CT=Z$DRgZ(Cl+PMs!-ndi&0j(fT+V;3S7Ul!dm z_PVWBXRC#b^18rx%b0BW7do^rl{!zk6l_DIOTE4PChc#iLstm0kQJiQYoQQLYjES7 z<EOdj9%K2TN%BL8ndu_t9Dl4G+DSf-&+(_&QIy;ZuCH_anTpPc-v&L-@%Pa8RlV`q zSk3162Qrs?iPS91V7_I5F}G9Im}@#5cg?9fqWe~BnP+TK)4x__nd*9NhR8D2AEnHD zMV6`l#*SP3(>$qdtIsO9Pd>9DcEhf3=E_!eOW$pSQh%}xcc{p=wUZ6&Yvv*JY@2@? zHuL<g5A{C=<L08GHk}Q4*LIwA<*7(c1gmUUmTt85j)R){n}KYRV4yFXWrpud-ERvm z04x5Wo*o^~(B5&l2lSk+87-Dd^Z;*ypXDbD)<=I&^0VSKjWCzCzbS|Gcdge#Q8Pzi z3?=-}&rnL|T2`iiz!uVugj-<dCK=i=;Sc`~CHXe=A<V{vKhbuzEGG$nhE=|_c@Rh> zf<8BVd(KoIFX=xvC+9SZ@hCSeRuS<UycSB38H*d%>t^Fqw9aqJYJMM?xFx)9?4mP6 z#CzQgQSo|3yw}Y**ZWnS(Ca#(&r&_dHu`bU42Of^TSo5oxS^$%pQ@aBOXW{imA8#u zRr=5g``Sges##yUd^9W5hAIDwiCbQkg>&qd(t=lvo$^bPd!gKLefzaY^!bVzulk(p zWp2gXdC|OlvPc2@RsEU%1C-2*#@#dUw);i++M`XfbS(n=C(PR?Y57mf^)A$UPZ+y& z;a+n$gnQ6@d!m+kw_NlAE&5<tQZMr{I{#jCi!EBYYrd~V@2#Rb2h;2hbAT<1Atyfs zg`6SnzoUxkWsvm-bE92v9w-+*SBu`DMY(jy!`07C`5ERjtXjWt=!{g#a+_yK$R>D= zanGUQ=eX(LV%)-sPI?e4&86nk<F))9WzMOsM952xeR{H-FL$hFhva;PLuaIBTH(LP z`Ks@8zPgHY(=zny*+xF!Ot9?lDYIX#?9Vp#lZ4(DbS-JO!#H)ct#+WTCR?0yjlFlz zO`Tx#-4K>_=De~<sMYjK+}sx!dCT_dF-m5ai2gVIr{b9zQ*D7Ma?!_w`usQ}87we8 zx|E(XUp|y9FtSU;i--C0$!dYwQYYW4`Qg2|4=gk_dr19t^P`IoI}E2j+Sfog&kx`4 zrT2&QCS!N%%@1r7LEN^o6s%BroMPu98!O16+D?p#`CclDRgS+!M*l|-hp$IOrMz!` z^dMp?)1$cM$bxer$jE||!2J*KkQ^q#4DFBMRu#7?HS9D7Z!M~rVK&hF-wbK_3}aWp zUTOFYv$<P!WVP7JjgHy!kT}z!bLDdpPF>PDz9c*glWHf2_IXVgVU+f0uUuz$D|Y%r zl>Jnc9@C*;tCon;mLoM0d@(psk)?@DlO`s;7S?Kd0ZUwq(j9oT7Cgb;K}>&Y8);&T zX?0CxXSbLUR3kp0O5e3>-{Iq(a4n$@j8QDt)LE8jvC<7)+6{OJKraBXO}3rD`XXTl zAD00S8;MEv^#@0)Y!fUQ(|-f<hA;NMc3*ad`CY<%on<b2BF`ytw(N=E8mRo{hRIFQ zI)^Sv?Ru25sM;b0CZUD<tZ<|+!sWdd3NUOe7PJpGvBKS=1kfRGs&F5aRBubXVS9tw zS$iC!CH`8TPvLgbinH46bXu8u)t1@amg(SA*Cnz%@q^hG++>+cEq>?94uf^_D*JZp z7b`n{1%a-%=r326wm(ccuC$_^faSSkX)jhhdD+Xyiqf05%%Qf-wXVz^woD(wOdhV8 z+uO0x!A}tn+x*@Reyw=KVlz6PhteLk*zDAlBebf$=^?Z}hTNa!10OcY%o{crZCJ7C z!CJ1R+{H7goWl?ER&)`9tfTo1xnhitzP{1_nh0#V{c`Np?G=T^+GSY05AiH1=v;pI z>e+@-bbt#fmno-vA7U9|{JAwLDCQNgZaE0^C5-}W9?()-HR%8AM<89}&xKX-=h7N~ zu2bXBp#bC0r8WLsTEotzHSAn*5eTI<Bpr_bWc0bvMxWzC7TV}@7qFB@p9^jDIaUm- zqR)l5Ku|=V<4_5!qR)j@(dWXd=yPFJ^trBh@(Xg%m~%zKayorjtUrS=BaMYk@{UnX zrw^O!?`L_9G?rueO~JixDu6aGIUR6!qXeysjE?^iZI_^Rk?Npzk?{%cH8f~lWP%_X zv@SAH5Di)vnIwn?t&2<+M1$5vHWEaG)<rfJM1$5vHW5UF)<t>+(V%sase)+Gy2xgN zXwbUI^Z{=`P7PWY*`nbcAR4qTQXRA|QXRA|GE)w#(4cjZZR^-0t0ZV$WV<XE4h>ot znHB#K)HG;aWc%!QKs0DwWLG(aLW9;tcF*Ixvkh7o*`rtwM1$5v=7~5Ov@Wt|;$x83 zpmmYzpmmYzpmmXj@d5~}^+E=%i^htZqfZ7hXkBDjrinr8l6-5JWU}-hrIP+b;(EYM z3|g0@wNw*>)+IB5q#*CNQn22Wr`RO>w~c}7N*87%ywr=eFxxKF^IjV=#9XY{@KeGJ zF&ArUxScRV%*C1;9tS)i9uI#6qM4(;cqB>4%Pa$!AsAwEgmbZj4i^K9M+45p0l9eT zIs9jhmP(Blt&v%d)LK@KXO05cKoEz_PGL%Ga0UJiC?vLFKxwf=Pi&i%U9TK+lBf<V zmvCX_LWY$~%no>FL3|DbtU*{gPPDW}l1uInIQ+B=db+w<CSU|@O}$ejoQ+AzOlCPa znor|MGVj;mVj@YbVCDfV>VY{w#>U#RgEH$_b_Vi2vlKOqX~bIO8z1!o<0B<Bg#<d& z48=8S&PGbiaIuTyTP$QXzd%Zj9CV-b29z=bMu1BO0nRdct1tvO%M=6-GYD{&X%aY| zL4dPNv%skg0-PbH9rc&XAix<y+7WKZECro*feT)^ij+G7N<4@G&N71%%h{xbP(fyJ zdNZVZ65%Y<BZx*g%M3~JXc~=hmKj>dDsWw;m}lZ|@Kn_L4%8XpEHf;agfvx7Hjz0U z?fgFx;Vk4F&5nv(h}I97m>vHf8Xg3FNSlzO5;VeDc493jrA9c*R!2C?PEMYWoPtC+ z%T`A?%Wj<H4C?m66$?Oali(*Hm!#&?8f8qCof~NuVqiuzvRFhTi$yfDSVSX>MKrQl zL?equG_qLazlkgsGO}3h!?m1~AtQ^`{!u=Xhm0&%`*ht*reEC&cztaS<0#w=il}|1 zj^~zyj4W3BMs11dj4W3BZrwtpr!}Y;{xPVS%3n9uv~&6#0J5GLRp3lI1XtgjjB8*{ zssjxp=8R^>D9)tz4LFn5w{j+>Awa^cgQzv8&;k9J%~31mXwNXcr2Sumido*X%}LDv zp9K}OH2Tavr175z6|?mYFdmkH|6x!urBOfJ7^v-spkhA+75gEm*bhO){%-~qi)c`> zhz1plXi%}p4a0cbh-gr;NTQK9j>sG=mN662pkfgXDi+b8Vi6507Wo-&A}JHmpkfgX zDi+b8Vi6507P%WmYE49gibd!xRBs|0R4k%F#UdJ1ETTchA{taIqCv$X8dNNzLB%2( zR4k%F#UdJ1ETTchA{taIqCv$X8dNM|gNnr&RIL72Cg4pZWKgk&5xG;a5ona4VvQqn zd!VrrRIG7y9q$rehC#&|H>}M72{Q~T);K1$991-^SmW5#xj?WDCxymwK@-a{sMvs= zg>qKR0|)G5ZbnAWe;!mUytErM4i1)*9)pVIhvY5;r;tI#@<SD7P_e>rfg2^LSn<wW zh$c!js^V`%Gz}_Nyjzga3t6ssPw+CxG)hph;{CZ(%5@&BuCrF_NKmojLxN~fvEsu? zZl5%$Sn&}-G=^63Q9(4MSMm3PXh^T(A5zqG&I`%4_*jqw(?$s@R$P~BL|>@XPghIu zjFo_)2#U{EOYmH^1kYDX@Iti&>#HSrQ6-R|V#PlR(tvjjcmgTD6r4+OB&b;N)!c<; zasE~<&TG};yl%x|<d)(aR-EZwK>l7W&YRWZyk*5<P_g3MGTNXJaxK0Sbbx821QjcO zl>4qM!6(%cd|EBRXI27!doBK>W+XO_8dR+Kxin6LiWUDU$S5x)?cx`~)#M{V#fsnN z_Q6h3LR8@0AxE+&!M^b3kVrYG7?HROD#oYEa!@h$X*sAEk&+iD?PAmfNzhJgjj4{H zVz)a!2r5?LgP>v+J_ssS;e()J(jG5P0!0KBTS{s+s2Jloh|~xwR-uNVVijr#DyGzI zP%$FqpkhRFDG4e@nHy3PR7~4qgNjL8Tu?D0?OvSRi=8HTfTGx-V(XnK2r5Rhsz3x4 zBT^13Mx-26j7T}C7$;IWs2GuQP%$FqpkhSoAu)oAIf)TeOeFT=6s0)E1lvNE1cP@C zpJ-O#U5Ka%LB%R^A*fhIE(8^;$c3O{A{Tfds2B<7pcMoa6Lv1B7>ksHit(Yj98`=* zIj9)xl!J;9>G9%}3$JSe9(0<pLB&$I#fXpyDn`<(yltJ3?7Hnt!xGG}a!@fUq8wC= zNI9q&k#bNmBITfB2LUMu731Pv=fx>OaVHa;0X-#bP_av$I0!0M5eGrVh-i#61Qk<p zY*4X^IDJN^y#($;P_c?Q2r8!H*q~x6jtweC1maMF;$jmNAwt3i6=V1{(GG%&Rm3^4 zS{wuw6LC^DsF;dlgNhMJ`;1m}loMw<5CjzyalAPB6qlLcdNO6OF9a1k*)d&J%@jVH z6&)a`nCgJRP!Lp1nQ|ROP_YVA1QjEqk<1WO%rYgPB7%yw;D5pf6?@n*MNqLyOA%D8 z!W2QpIFRCAoOOz;O>iy=*q~w!7+j(%1Qn|gKv1y?0R$COsfYR!RE#&|louy~V!sKV zAvGIR>}p31LB%T65LB!}4MD|}nhh$ZI-stvb2^}|5mZcdV1tT@4qQ;N%CJOGF*__N zLGfl2bU=iJ4JuaPlf4ZpRuKn5#VX<;s92>-5L8UXVV5AN7!e%@cR6t=8-j|7I9{B5 zig%k}4Vl`YV!Jw~2r5=#ilAZ@rU)u#yM%R$51U{hDkW@Cu@@YH$Eyh-s91#nf{Lls zHmDe>m4k{A;TnygV)Awls}X{V5iAE4lLg3&lVR~W6YNdyHmDeb>4?q{RIDOCf{InR zBdC~iw?V~}yA3MF`sJWvH$s$lFGqH>kS?!@eH?L)m%YWmnc#KuwL!(!I=%=hR^f}F zVimp!Dn_InR80GdL+5?hSL_}H6=ROBXdjmQihPO)D#p_$5;myVZrC46V-ZxW!W2Qp zl&K9WcBd?(HmKNIAk;2`iit|0T?7>qg{Cy97~%Gm1{EV*4k|{Z98`=PhI?@eQuO`c zDN1F7ioM~aLQt`aR0t|okqSY@R4N-(jHJs!#fUUOL<AKhSb&HKDn_szRE(3R98`=* zrxz#pV!a>i1NI3URBSKIDp3%Eid95GP_c?A2r8zc*q~zTs2~?qjK#`9#Y6(gg`i>t z+aVW%iV^Jg;$&Ft@`F#vecVV?8|L5QxFe`og*$?ZDR&!G>{HzS%0b1Llk?&vP#o<C zhk!!D1{F(T)Ja<qRIEY`LB*7s4JsxR(*+e{m2yxq4ravolvW^J26M!VlX?+B#ePdx zHmKNa#|lBkDy$GxOjzMt2G`Cl{a^^nCFnBQzKwsUtAn6ol{yG2rsCP4VnoV8#dP9z zqThD#lON0OvIoc<MG9V=q>DTH!9388&l(J5uHW)BkR~Dt8&oWb-GV3vLB%SZ5mZb# zr)*F$mWq4Hhe(PQi;Ml>1t3Ets9147Kl^jMB#qjjVyqgqLB;rF6}3Ud_{0=FAJq@` z8~N-qltIOchxmCuIYezxG4A1`HmDf)*->uP5mbzO;iwHN#+_`G_fZ5D<5n_igNkwc z7PUdexJ!!KpkmyjL~T$p?hm3is2FeCQ5#f@chjg1D#jaQ)CLvfZ7phpit(NjwL!(W z)JJVlF|OKC8&r&IUDO5@<GL2LLB&c?SJVa-;}D73pknO$s0}KXgPNlmB%JCuae0c` zpkiDUqBf`)XJym|72_O<+Mr_W058YI?_NMMKqq){_D}H=KVY~%eUsZX(|nBr|4~q} z0lDVw+wekOf<iUhpinp%c#+raf<lE13e~)0K$-&z%{%YT;@3owwo8(*#&l|~4hq%m zf<h%pJ7iF(=G}r}fI(o7{xX4iDZ-XObx^2g7ZfVVZy+IqLN)gV2cYmU*wijfbmO&& z1aWFUBL4+ScmeNE%||uxGoJ==YCbyIhw>W4sd-uIN+24<sd>2+(;!aG$JTrU0vg1r zd4=R?5U1vqlA}SKnpa7V261XWp>YTV&>&9DCrL34;?#Vyn3mirL7bYagE%!;2XSgX zUFv8Mr{?M)PR-RpoSJ_mb5w&kHJ>dKd{oaMPOGJU+|)CMlMCTg&k#;7f>Zsq2CmE^ zO}nXQ0H+I+8$jqDQ_uKKE__q{L@3WiZ>neXCKtS^o*y~Ov74G0yD3Sv=eQtG0U!f# zFW4`DT=V6@&!OKU)7zSQVL}m=Fb%_JA;H`cf#H^Qu`bZ4|E?8Cj`8Bj(WrR_i)c+o z*%Lo?S+Q}*_6jrzf9U5fQA2!`Y>1CPFnI*p7ULJO5pZh2Q0>}hAhA3{e6(qZkM~%P ziC*4D(cp5L!V`3iK#bN5v8jN(4K72ej%n!;%wr9`9KupUpq*hhIuT}r6}Ku=kje%6 z^1Zk#6Qyk}3<{E))wLKY$<gSk7DhSgp4`smvp^fen@=ehF3_U$ZiX0=%CRpfPT?U) zcJECt5hp8+#gHB;%pYUwzloop4nbOL#eDEx=1UW(NY!S3crWs^lArAQ|H!BLVe^fW z-@$xdyyVOdY&i}D>Cd-&9yoqC=|9i(AB+;Ui@ndg*koAqln$^(j<ZFYX|D98HLhF& zLg(~iOZThiG`qh{Xq^&zzefqpka{0lQ?1!Gv^M(48E)0k+UR48_0^09#ZN4@#A}!j z^sdL(Ddjhycm7QOjBb(iu2##SW-?lIPnpP<E1+t}KupQzq5`6U4GDxmsqSg{5AP}c zUqhGK$0`lWeTQ_`k(rV8ie%WZMX%@m=<Ua}%Il&2H~r5c4{H0-;A&ycaqMd-%vDY_ z5#|k4NCbyCVQ!%<1%ByjVXpl*VOU3mDd0f>aKoxz&s%WD!&1|eL&E@?{zC?eFbkY! zMD>d-dsY47vS?KO-ro~V_0;D?Tl1*WcUFg@r{xvV8t#D<V_#dVrLHsj-}Ha2Qj8r& zmC&lUW*$0df@3A!HL)zz!62d^zcJ`)(kMAu7Da#c%$j$Qr=P$5)!Wp3wJG8V*u1T4 zUPPYW=V<xXFccLxxZcWw87V*0KX8y}WCN=a6uc4jI=gMblgb6R(}JDt+K(uB0w^}@ z_n?;eO}XHeTCkzTcDU#`|2?f1%1zx0G>R5m;*I<QyiF|X%+V@DF@j=t;^}-zlnHXa z)RYNwh9t`by~i=lY4Ua`7N{X&@^%8oQ5wR2X=m@Kb|Cnbuy|zE<Skld@|IPTx1nnC zh5|Hs%c{v+R!!cr_N3KCppsRSx2&4HMXOBSqE#kuSv7f!R++p-t4!XaRVHuIDwDTp zmC0MQ%H%CtW%4#G9<4fZHAQoH2va_CHQI-%93CJ?aYlLQW<*WlqBMnzs3}~Ohi*pH z6b{Wl56u!I26_?7By00hdjKBZB&KlD(ec-zldy3o?BJ{^T=*Kdi}w81@F~!X+Vfk( zVha#^erw2cZlm`6*02>KMD6*l;T|18?D?(XjacEM_WagxM?CFE?fI?Y&>RqZerq@! z?TOm+Tf<J0w&%BoYq;y2KHwY3*%yAsI$JdO7zj(kOJElfwWe_49pqz8;lhR321czZ zT)1H^5Niq-_Tn>H)SAMD+mY$4cns7|4F5u=+h=(u;c4OCBw$V9!gsoW?4IvH&PCzD zRLCC1VL+}32XR+EPsF)Cd=<|#QELhpUd}q!6fWEb<1=ba;lj<R#D(!uAh6bp(iAQh zE6ziojG!r8bXca7rf{h*(B2f2rT-|E^dAyGLQW@5;Zh}}cG46sH3*Ot>~#g}y%gj3 zq}aa$X$n`kFta%_qcnxXX{)^RMeS*;KP7BWTfLpIJ#F=Iz|A;q^%~U6$!V*E5F;2* znHhqx4pURO=we_vZS@rVYsP7-@8dsfv?R+lTC_$^PFrPaJSV5E5=?nfn%&^E)jRR8 z87Hg`2|=A3cz42Tn8Cv5PFO`I5N8S(wI{58NfL9A!xL7aSF8!)<0zWqE-@ORHq`vB zxs)Do2QqRnK1=7Vh%i1&7X%J-Fg{B+2^`PC_$=Kla4HAmv$QrTmxJ+Hx>eE}axgwi zw+meGqN^Zvx+B;P3^t(gS$a?+L{doOv-IHfb`(Bbj!U{nkTB%&n&}~_ama~>JYF+B zw2oD9ye7qL1UPakD!}+GO5?Niu;4+Yw~7^CCXuO+V(I<AaJ*)e#%GyP5grZNJTWu= zNHjbQ`j9puM<saT%b1y1%V`h~PlCpAj4WoKmkZ@I+{sCv;#mkgNyi$Wg^Ms3G8-p3 zX1no_y#UxIK^w@WsQIiKpQ*C5BMl$+{@0DqqBK6sJzPs;vM7zua(@(KvM7zua!-pf zS(L_Sx%IU@XjPQPXSrAEXnGo@@mcPT+ObTh@mcQOy5&gEs__~A(fCZ|uN`h?r7>70 zf`w;J0T`N};2JSM!!>Gd#WiLgz%_23!Zl%D#kIzKh-=b(iz^Nw!{?5)DdCzi!*I=- z$++gsR=C!hxwzJub4Srg;Ap@N=2To8%>}p)FxTLkH@D$hFc0EdG*9E&Wd4e4v-t?u zlKBqT7PB57R$I-RxVD+aShU;CcYr%g1~PP-7F@f`a9q31Mz{_%GjSbcevdMP&3th0 zF{f;ReS<L_c*A3^!FoQ-%ou??pSb|b?1&!>sD3b@`oVze2LmeK{9iGkO3;9+76w$? z@x3?=sOm=Ka)9;DP&dYmYs5Wa`L?_>OxS{J{L5Q$RnAQ3-Qd8@csE#zly>vTHe89X z+Kwyn{abP+z6-enO%l1?<}IWTG7rw=N<0m8ddxDEA7V~JnW5(Mt+^7v0WQPMLZpl^ zSIojj$()AkNVD<gh+AUb1jo_l16(&W|G;&O*#YTe%?W_VnOy;oH+{HHF#F&-(Hw;9 zB=ZC)Pc{wH@K|k*M#+uMN8qxFISUd_G5bQQO-%qUy=ElJ>~2~i)gER(;CW_ONWQ1J z4YlSQhN|i_2}r)c+y}}F%?^O~GMD4J$UK6S#pVfI_cj+HWgqi*z)Q^gxbAD#AZ0)E z8Q}fRSGXQve54#`-o^DGlf(63vl`b!OcqidY6jqXnCV2y;id)fQZoeb5oQ#wN1DfQ zJ<3c#`q5?zuFK5kxGwh}N4qAWA^sFJVKRX&0APRI>u(2OV*)z^z^=d7Z-82+5SWJ6 z;Vnb2UqVVRfvu4;mB1VT=!;(e3S6O(UjG!7L1M3eHUKoF*Z&6Tkf+zrq7207_5Tc& zLRVmlD-_u4zYS{W_g?=vq>zi52Xv+HBNsCF`g<c0wR-(^D8Rn(w?q1D0)GYZ?Fl>q zzB>@O5lz5$zSrLjwRR+s2eq9D+yr1}0%K5p7Xn{Fq`3qR2c2CBtN^eZfhI88oxn>d zvj>4wku{IN7znc`0eW`NC$I@p`Us3h$^rsOq%0(`98C8jurGkc1a<(hH-VSHVjlt* zLDVG#t^}|zfg1trN8l;wZGQr{BIN)A_W(GMz(W8IB5)a$d@zAM(e^_K>;vFX0uLbT zFan1l<!}PGqF<I0xDVWqAn-Kwd?bN?Lgu3gTnPz}Ch!)rmJzrBV&Lhc*FOT)k0J0i z6n-p$?NDX~ftR3FY>IpR)#%Wb1U^O9Dgq0@>v#hF5aVP5JAv0J1bR{HVggU1)+Ge? zfWj{&5CXtkR45$Pe@dVRf?Y-+iImF;cp!KMfjoF!N#Jw<R}ol({<@mLRuKMY1Re&k zhCmyDTL^prg1;hg6L{T9Ac_XwMqqoW_jUruL)2dr=th}42)qZTcM{kX)$bxO7-fD# zU@2<dP2gH^zlXrh5cOUHN1@Db3EY9K-x0VUz<mVHz_7WWKo|P!0Rp4ZiU$dt4n40W za47_Ph(HIj9wzW7wBiv03CQy(fhpkidjgk2nSUT~IwX9Iz(2s^j|6r^t;Y#WfT&Lp zI1hq7N#H$Xts`(TTKW`$KY$=!4r7o&)Mp6%2?U=da197PM<9+Ke4aof=)6E63d-vV z^rAU064(KB{zPC)lzEB3W5{}$z&%L$GlA>Tz*h-80TzEH(1N!Ajli>L;A;df1+Ui$ z1Q7KN0*g`R?*v{0(>Dp+h!kT06hP1?FbzOJU{k0LZ^+P<kO$B97{(wNCGZ@|#0YGJ zcEt(wK#T-|-H=j4;1!60_anW2CsI-b&I28UNAC3pflh|NBCyC3*bvoo1l~tWYYB{o zV08peMd5k^FCnXe!0DjeNMJuu9zfs|C_GQ#4WtwZtU#0DX^x?etR@1}k%hRGz5chT zULtS{2*Sr0!w)Q42^^1<HUeh@XeYo(038H22Ek4M-l$lJWy7o6)|h)5p}du71Ky#c zf-!S&_02iZPOmv0!(vtBF4Xr-<Rvio{K$34_rl0vv<>zFcQG*+VaOV<J@O*D#OsYb zh{5QsGP@)3KJyKj29bkVAc(xr0;$LYthLHZ+=FJ+Ei?i56is5GT|Y9H902+}_PKs^ z9Unuz94)l#H>}+QNSLFAcKw)C7z6w8?*$Yao8l2PcsoQ2_2YuygIbgp+6_DF)<rC| z8}>1~gYxMA+(J7_3+;x3gDzBy(n7m&NUjH*qO{O%9I7xav<D0qxJfLu^LOTMWeaFu zkpGQ{=7s!tpTAp>(2KHM{+{4WBsPhKcK-g{I26}94_4P%t93$JCFCCxBp&{{4amdt zK{*xDtSJA8An9;Akw*o|gtSP@|6Y)6NaKtAA5z@P<-91l<{t}wM+wA2JHIZswk*NZ z)e<~oC7@kL{@H2?o~xGN`DzJXsFq-TwFED!1R>2o@_!Pf!HZIa{7b=9NYEq}+WA*= zTcB%IA%CkD=e25aUbo`V3@-nM6=!-EkiS=p^JcX;Z&`6@p`CwQMjI4DuK9O@b(BCX zwDTY3eo>a-lWGY*t(M?3D*+8Z^8cvW(qJG;#M=Dl(zxLgjW+*JK}LB|($0So>;TeD zVxgV?Hpd|(rtzLpJ^_adEVMbS!+?tS6^RGr6BzMd&IOFm92y~A2>1yvqDaY0kaivx z+P?v#nyovrk4~9Ijt?xfNm?BTV4+>%0}E{;$_EzO(jGPO&ci~x3lwUsh4zPz8Z5Lc z)L@}qp#}?WrDiR(iKGH{R*UB3;0TRlpE)QS;5v<?MhF%HYoSe~6wr*eLvz~IK0FT# z?L#Tb`<S4m!RA!VO;I2$v@4>(Lc1c$uxe3;E0PLmmV;xT`LZr2a&4eUZSX}aA2cMV zF5na!rAR#_hK0717#7+hu^Nl#VWIss<+2vqw7wO&V4+=+3l`cHxnQA91TL^Gd<qdH z1s<@_CgB{k0t;<n7kmcA^=gqq@F}!1)yUiAQt&m9%@k=5&PJoAX`Sxi0wB{B=~2t^ zJS?=&hr(*Ch4$S}NLXlBgoK5*3Q4(Op`8bvctBIwS*i$i4VkTox`u48h`NUCphz}& z>3HnVO^UWHxnO5#5^-U;c-N_ocpetolORHkwa}hfvO0r>c10XmXjjC6g|>=gEwtHv zDo$UuIIz%Wj*0^dZ6aA2T6;Nhtc5mZgE*8R4-4%_DUP+!{+$yC7TOhYV4+<R2Nv2Q zPR3ejt2k^nj(sMQmH`9{Z54-WG%U159JK_`!$Nx(Fsh;DG%U2oLgzAWR#h{Fg?5E0 zEVNYz9Kx{BR;JcMyTTL}+7+g-(6&s;Cl3qlKa#1n&_2R3g@tydrLfShFolISM`B#9 zy7REmo{CB})<XM1M*tSu6#}r(t`LBQwn{zJ$ClrectcL9iFY0r+9!~jwb0%H6Hs&j z3+)OuSZG(M!9rW9Sqp8|0VgXgv{eVxH7vAM2i8JcbRfg>MmG*PEMcK-hb1M*!$Mp9 zr>%wdBTgI~`&<zR7TOhYV4+><5?E-fIMza2#i4Al&{lCM8!WU%9JK_`!$NyL7}Zz{ z?Ktl9q61iHSD3;=yTTL}+O|trCl3qlXGy?XXrJN;z(Tu102bO60<h3lsjY=JsilG} z2F6oLnrk#HwD|#!Ycwph2^NA$SbLwf3y_+G=V77U2#z(@Li+>99TwUZ?y%6VaEFDq za<>-R%H3LMvwkiZQ-_BGlNt-T+Pzxx{ub%-nbTKe@H{NE&m&)Jp?!F}RU0g{D|}(0 zUEvE0Z6fjD3fv#xbA83`frYmA6}tx(+S*qfI<U~TeMLTbSZF7~sK#1oCps)sSZG(6 z!a`e_S_|!cFyP~Xwa`8s2(=3fZBZ$-3kz+6rHoo=6K>C_g*M@C(YohLp&r>87+*LH zS5xskEVNfqD%wc*#QpP~RIt#lNCgY+id3-BR;jFoHu>a&ehh$&@@asGu+V0D0V2Xe zn_wxJvH>1*e3>-u0S!Cr6zNp^@H{NE2Y`Kzwa~7^CPW4^EVL`4z(Tts3M{l$6l<Zq zk_r+&ZCb1ltlbM5u@XQoSZGt2cE|+_ZGzou5}t>J_LbyrEwuX_cUWjwxWhtQxmO?i zENUI4IXN})&ci~x4HRmuh4$T!8Z5Lc)L@~l)OgR_$k&M}=A0Y*Nmfb8VBW-+!Hi>{ zDeq%Qm%$uS`|ms~v=1b!2#3lv|2xMD7TOh7u+SD(YRH|3h4y;Zu@>6<bXiryLc3B2 z7TPKvH<Ys#i3b-f#0xc*H5Kq7!C7dF6J^;#Ta3T+u+UC{c7jIPd01#452TYwjkVDJ zjpGap?FwgDXbb0zwa{j%xR+W=QmmMVh4v{xHWUl(JS?>Lz<i5a3vE`7TMKPIS;eh| zHlLW{)<T=lE@Nn+ori@spB&=WLYsT|xV6ycK0D40G%U2a7miyCZSG{_ypO^{n_J1a zwb14kAZ{(Rxl4*$3vF&u;?_c&`-8Z((B^GBZY{KVH;r2hZQdB;)<T=NwYas=<~=2D zEws7R$E}4nSM9j9(B@hfw-(x5*W%Vfo5Ln<EwnjA;?_c&T_3j=+P@=gEws5j#jS-l z7lpXB(B`a+TMKQ@k+`+cW(Rn+T<;D5Bm;DUmtg<oVWIs;P);#pAWw2G=F+F4U~{gx z{m+pmf$ECZ06Rwm?4mQkj?w_TxMOeziZvICJHO51*F=!EOOh}gur~r?4X{HbctvM` zog(ch4X}&51$O}kfjx#|z$$@xDZ-Y3HNaK^&Hy__JAfz+u#0`czd%4gX%rV{4oA)Z zAE)w0c`9%5z+fX(8+a83KDd@7#?B3kOA~$%q`*rxuXsfM1aL$UGOUfoqZ(+e5)XMQ zZ}I5l2jJfxPFetDS!yIIPYfB2u((``%?_U@fn#f^*CioO<t?s|oI^sM%3EA1Ij4m@ zmAAM`a?S~PDsS<G#ux;+KIE(^o+QQAg!i$IHRuj`DsRymbcb6dfLMd>@TUgI=~8E1 z$WwWX)}TAQhdI`uJ3N)L{Ya+tTOm*7EuJkBe3Vy%ZVDYY`D%mie6>M$zS^KWuLj*I z2;F1y)dt;pw7P82ov$|N&hL+$vO#wz4Z2fQyBx+_0wCjcFE2`i?&9Uanb2<w(+k6U zF>cgocw6AH-T)UoMO&ld62mjzFpoLBz;+7Pu1}}pwbD`Dd{fp%v*)JC?bL38Cu}w+ zqHOL@T$R{&sD|@~H^uANYh0pNU<C8x!&3A<m#TKm<DLi09L|A!hUp(mZALDB{F8Dy zlB^PP5RX7C*&`4WLy*T-cwIa_vPDmi9K_Qj3)ZxJLl)Vb4Q09UUKdTvTlX1AtU%N9 z7Bwy3u}rE!)AG_VvCUq}REia&bzlstz!x=|mbXny|HRc$J@S>J$})(i<?YtA{FX8W zsa$#pbnd;MiK62I4Z%xl2>#b{(F(IJnx1E8b-j<g)K(a~1%~=BKAFgY4sT^bMwMCM zDWD}i1+<4*(!Vn(b4iTUC%W=DrX5PYeMSWrqxE?XkI}BuD=~)tuMc#IUV%pCMKvlv zk*U0RsUCDy<G$PCMWFxF&&dqYG4&rTl0QU|0gI8<#^xdbdXZM-c^960cADm`1&7W} z(<r&<(7yEOUJN*gF7X-<oyBeGCjU_SeUuVE(|<G`&B5jaGmva(b1Zy5b|FEP&nFI5 zKA$>N`F!rs84U^BjwMRpOY`;8cP_jyQX3DQhL`_l@n>3Ky)9?@uU0``Fs<6&CEmn0 zwuFRhjST-6KGl*xE?4*p6$U?vS+Lf0+bV<khI6f%unemtBCDpmx5lRsQ_Go_2vXMn z!fSjFbZ;@8mg4PYiVKH}E^aX`R^@|_+>9j$vQz!l(?v6Qki*y)@>Dq<<rH0#ehg&q zbm&~KaTqF}XrBE*>5F9^K-2$~vN_R6&z4nwimR$BKh>eC^3xpJD_wi0LuaJdYzNO4 zhxUoWFLCISZhUm`lDLuJ(Bh$(ef&ubT&Br#m-AXEP~#Fvf0()BJuTw`sGI)zD2M@a zm>H}C<k1!B-FmSXGBwNzR<BzjJXQ*ib!8q@8Le4`2M+L~xhTv0KlZ*n%8KgRyG{+a z>dyCe-yUvH-0o&*K%p6g21FV~1Ql!?TSaL`8&E+R1fva32_{i#r#Q4vG%;cZgNYjB z5Q#BP(TGD7hbVD~I7JeTA;!e-_uJ>xy=~sN*7v@*-hVH5t*$=%oIRbfs!r{*x4_j_ zJ<BSF9L#N<OW)TrhXRE^)mJk@WFD=WO-Bs)p20amqgc;@JkNj)$AzB7JFNk(QT`Z% zv^PYW7b108x#JDeT!SQBx<dqx&}*l0zwGJvG{S=hPxa9v7%kDR`wcTPsSf34S~vg( z{LzriF(m6iAnXq;`kuCOQ%p@}^_PEGh|mT3TW8|=KrMPlBP=()h6poS{vg$2hPyQU zZsa1`c(LKx(9DyD&Rg}Qs@V5%esv1o(k$l|Sq>j5RZ4|b>OWpKhb$}Zhpx8zk2f{- zGW`$Tv|3Z!A@z(TqjN>V2I)*P1dy*{d;-ICv?g?dk@`Gxrs1?tk<*Rf)B-=oX07YC z3OyJaFWPTtjFrWa5y5UnBPacf1v50_d@_GEj4u(t5U6j2J(62%7??J<;@tXv+Z@E` z#J%Rq890J;&MqzHt3@%Vg<^gXuD&AXjxUM%X;I7`!vJ3s<yX$9*L(YkIet3Mr49d` zE}c_s{zpSGSC|#2Qxw#P*3e?Y=h{$=boYxOi8>p@zL9ywJn3$Dizds$-B|2TeBfm* z?sQxKSABP4y+SLWSgmLB)(z#nrOY+_XT)E?!0$3pNBnRs2=fKv5*2@CDhw4&VQ2iu zfR@M;pVRx(4Fe8)Max*E|5+;_seGw*igCH#ZVmXE!MMy|Tmg*uwHWCui^pPe3trWQ z_ZS>0Ki`yhp<WC?-nRTDU3_G*w>n3gLD447DC#nF<|Gq2^N{$C*)Uv5W<Y^yoBPCY zxZTK+W;iJ9t~hV3(?Y3nF7gM5I_4&rMqL_`at%7f1V89NX5k^!DS!8iy8N!9j;)v( zGH~;9e}mKb9uZq(TKKUZky~%T9X%qr!GJq^;w`LXjBF6Ju_s=GsnldjxAhE|vQrDh zT#z5bQlkT!r326)J-H(c29@Nme4#ZkbdlYIJv!esO1Lh8dW@l#SQ%W<+rd=^+6HUl zZ3kj5M<U^AnFlmitO`=gh^gg0dW`v^DUK;gB?AL>NgcxjJKeccOsiqBk{?t^n-SEJ zJHr%01zorhn_&9JjL{BT6|8eS(32|17Z^Fva|z~I5+y_bDg@TT;rjo!b}UlnBo7|N zVaV@a!+-j;POCo9lj%a%U~)F6WU7y6TAu?7Py3i-KL6LFJ*$8o9_`se(k~zFnabk- z%h8^*nQxBvEN0pq?V+Nhf((@y{5JD>MhEVyuVk8Mbl|S~CrtB<4%}7$8tL$i4vB`L z`^w2=0Q{t240v}s>G8<R?2pT6tb$et5^nKgWsU(nMh<jDs>?S4K@N08^0`}?=7Ek# zO^$a*InWWQ&9Q?j1K+&`MagxR@5Pz2lIxL7G5O^K9X<|pAhR;#*L`RxaQY#nz<~}@ zB+s_|`Ye+{@+>5COqv57J`QvMip<0U7i1)eR%LZ?_<jK8bapT+&X&@LtAp7I3=nLh zGAB4f0DQmY;f|og@$j#*HJE=5X)it(c?%5f5g0VVLIDEjsD%I)#n>+yr!x;=v6NIh z*Hr^pB0$0U+8h9<2+(3hDp=I*Or?nGVA=B&!M%%Md75dX-l_f7JI$z<p+1p?P&_!@ z`3}<Ne3`gpj^Z2&M@#TwfLp>KB@JK>r9|kOIri;Z8BHD<DgIub=?b6ML@LF5(Er0V zb7dh>w-IO#&o(6L<39i!%i(c`L_?fC79`iKwGsoQ0B1*DkD;XCkh2jpIQ0g_{7-px zj(nRE#yH;u(;=DjZ$pee`e073oxj3Lj7xmL#!RkV0ARcTuJgPPf(Z#?1>W;<029lp z(st#Y6a}=u1P*;zd85dAvOte1Z%_izl=vS&_N4MILh~lt%RdG5s>&Y$%&F2nyUx4K z$)6AKAZdZ!1nGNanhfGS1n-BC=~DU$!480jNa^PUE5Ue%9`UG5{%?3onJLIFKy0F+ zK2$+wZA`9FEBiO(QWb%L#U6@cG>x5z+JC`=9+9V6nM0jFqNEaMk<LVE(ws$N7beYF zB&6M>Ig2E{Y0e@cok*IqNJwXr<}4D@xuiLZgmmdFQUwGI(Pxo<j-+FbBIP095<l2D zibO#B!NyS})=c}s#!)1a;3yKcd>VfPr5>fDNIl4t^D8NwUx8RTzmj?~`w^JS`IQvT zuP~qIS5iB(e`h|=ucUB(h50<cl6pG}lP!IIC57`VNPqeKiXO1(vFciM!vC=IWW#%g z`WbouXXnYLyhHKq|9{hYvf<IC_QQz(|8Smc=uTDZN%z|_G@g1Uhl{#=2%q^Kj3-B( zj;pJ-p&>oB2G@wXu$B+@<(241E3y)|lgzx@i@>5q(qyJN<3!MA+=BmoBIw^Ig8qFX z=-(%T{&$`T^0iB4U%OQHFC54<)z>bSeeF`&k5+J5^^Zz(UG*OuhJ{u6+NH9uT`K$9 zrLzB>M%*uzuU#tp+NH9uT`K$9rLwPGD*M`{vi~4%jOEJLE|q=lQrXuom3{3}+1D<W zeeF`&{|pjpls{k)K2s=PyHxhIOJ!fXRQ9z?Wna5g_O(l8U%OQH`@2-;iJ;4HHwaGz zeSy1qXt4VpZVcj48TPuoNmxl^uX_UkH)-s3KL&;Ns0@4EIPQ=od)?cB7uxHRaYbma z%M+vf{r}tR+8_(<b*msLwAYoivDalfwAbwgzE~!}T$h?@yGWSp5-6GLE(2O<u3Luw z)g-^{Px7!P5r4|C)+N36rwnV|S5Px;r3PzV0@`Q}*180=l^U#d321-Hu-0X3l&p1c zpaRBPcS})$XZtJgoKb+^MPRJkPl4a|SKx*I3cT1~ft~#ocu6ZDmH;r;r8XsF-3Dk7 z8tXP@!sd9Rzcz37*XAvw4Gp4TtE-!1S~Gw@^w;K{{@Uy|+8A41j<k}kF5P>Ewz`{& z3jDdh0w4ER;1i>OG1Y}ZJ^F+Dh%nV<)wDBZnCcQJnd<Hf)}g8HM@WkUI!kFWp)X|_ zDK=Xjmb%jFp)cjPF`kOPl*zg1OPPT2rA$lRE5SQqEOjSmjT~6&lA9%RV5wV@154eK z99Zf~b+j*KTIzmIZpKpgv5*@qbxYh}saxU(OI^*)Sn3ie`cfufEOn`~vDDRdF_yYg zm(Z6ofr9p>OiSHEAwFR&b-VCnDh&urU9!~`gQYHkqAz6vMPJGUioTRNYKp#;2^4)P z6DaypCSWXeLycjnD;jHG%Cyw|E%h>%x*j&0L@!wCmh^(9Zb>g#>X!6^rLO1&6C_yb zlCiPW6>*_2Wug>)DRaZ4=u4SE!8Vq<q$&DRCSZIi(^B^|G+4q|>RuTt2}@nF){O^C zT>{#9F)VdI#Uv^EQf5OGeJK+t`cfuP^rcLo=u7z>07YNQT(*rbWm@W%L4|~|)NRK5 zg|rzgbxZ2NQn#cIEOoUy#!|PW4lH#`>cCRBqz)`~wK~R^vR21f>Jl)%lxeAZ6V)-6 zy4Qs2z*4uQ4lH#`>cCQ0)CnzhwK~R9SF1x4Kv?Q(b!Y+zOI=Y%`%<Q*ZYu;OjHPZ8 zw|i*=Sn8I9!cw;+6qdTW4UDC(7Rpr+zLZNsVX0dZ3QJuhG_=&cg+h&`?(9$~EOkpl zVX0dZ3QJuMB;!k&mbx_{N*GJszK{VdbxRCjsas+IOI@wCvDD?Q*!WVWrS6I3W-N7w z<Lyz}0G7HXZm`rXaf79<=4LE)bsHE<UEKz3Ygp>)HkbwAHq!>7FXhs(gr%+-mZ7EY zZB)lt>TU_u!3W-wI{3U>QU{j0r7nS`u2zR#0$<8n9b>7h)uC>%)FqJCzLaUHOD7r$ zW2yW5P$(>QOG06(TM`OOUDG9@rS1>Oz*y?et1^uUOWhI!Sn8G-z*1LhZ7g-kt>{ac zKxnCpwI#IFMY8BiSr#DeOPQ9sf24F{srzUs9hSN!>9Eu-Nr$DbmToL{wRB^tOZuWO z<z}o#1sFF%_KV1u4KCwLnU=bzA}?Vqbq~justg@i>XzifQnw@*mbwIrzLa%e8B1N= zSL_~G>gvAY(1E3{>8sFE_bm!Fmb!0*LSd;}5(-OQE%X`e$A6}>(=p%!`&2A2e^+Hk z0thX2*`&r&7s;ZfF49FyU8IY?l-UeLU&@qVd@0jXmu^`T#!~k*>^MqOz*4uQ6)bg2 zTES9RYZY4Rf_2fCGUbGpx=4nWx=0p%DRa^keJK+#zLaUH`w>+!mb&kUs=!jWqzWu` zORB(9SF2(ybx&pkg}#)DR`jJTqt00BLYdG~7fItwnU=a|Lt?^M>Q1OJ4FOBtl5|+= zYU##O_ifz%ioTRtVtgsnQg<)88B1NBbdhF-rEZBEEOj+EW2q|>GxViQlA<qV4rW^F zLf`KoUk0=BrA$lR>BKdbx;sNru+%Myf~BsA(!P{wse1=$jHPZn_TNN3Sn8H&V5zIs z;{zoubqN%GDeH-6EOp;RGh}QYrh}y}0pm-Vmb!GrE54Lzse1whwa`*GVJvm82qnW( zw<H;sx*|EW)FoD6WoGeTXsJ67z__BN?ta))j2cT_l17cCE?=sm#!{DWOHpH~%NLjN zp`|Y08=}TimyhsKW2wvM?5MHS<+E_qSnBdgHfk(&`6wARmb!d=iyBK^J|#tsr7j;) zqQ+8}&j(Rssmt4T)L82BZW=X~y1X$)jioMcYf)pV%X>=HSn6`Aj~Yu|uG&#!smrx4 zYAkiRu0@TdE{9FjSn6_!M2)2`yFO|xb+2LCSn6_liW*B@E(%d&smoazHI}-ZBT-|i z%MP%zT<;D>N(QL$rA$lRTfkXw;Z`52INJY9zLbZq%j9E!1-5f_8@__a<1b+&-g3lP zG$9{Ns+|W=oKNQXm9F53?P^MZHs_f+C`k*@;q2%DkQHX#&XEMlV*do`Qg0rCa^bcz z6FSh!9uGlj7)I;w2Wgy`Bw9|+$5peSK64~8>XTHjGE>uh1o9*TYRy35Wr@Xo&7kZN z;DlZ6s|t938|>@@v<yE?)Ndb${g85@uYV5JtF4evl=VK-2TT6Y&9I+62m38j<+?yV zlUdH|`0i5|6(HjrOduve!Fd&o>*4~mIwSDesV*TvyByf8OA658ToOY`N`NkBJsG40 zSm{);BqP8^=S=Lh)MW+O?3}p>K$!qr9NL}Ml?$-Vp;>TUPJr!B^gI9+0_<>B;EPmU zr2xB}>+!v;u1bJC-V>BlEr6xk7OXkNs>=(MQQpg>su8H5yl)e#6{uBtpHgt0K<&zV zj%D=%btv!0EYqJ7yOeh#p#f61QhAqRNvJCbv{89av#e2|&4`=MvL=DHC~pdzqgkMB z%A3SC94OFs<qam?Ac1x$ubveeEYL3HT|v4b0_{=W20|?Y;jB6X2Gk7|C}VqhLc;_q z*q)7<Q8!$mR@-}&bo&U@ZhKc!vwa2Xu)S{5jS#5I_O=olDbPyWyNQ^s0&TRtCkTxa zXtV9Dpq`@z+G2Z$u+7E@w9WP=6LYLU+imZ#0|4zO&<@+<x2w8w0`0OruB~<B1=?eK z&$6sdARMRv;dnq31j;zxfT@5c3RG}B9%ieXBv7m4-A-NLy$<)WcE>B@D3~k|zL}p& z=m3Gb9B&HgrU<ms@$lWvs%sZ$qvJ&gO%-Uf;|(I+fdXxDylR#mB+xd;YaldDpzV$~ zkkG*b?Qp!^9IDd=+U0n^qr5`|+T(Z$V$Ki<P6qDfw3;bU#`S*B7Ccm-g6kbe=rDm` z>hTw19xhP3>)piK&Jw7@^?pUn*#dRB-e}4@LZFqdH;nQ+1lowLzPaB3ILEn=>&&NE zc<PQ%aT%CUK!!?0qE6BnpH^0@Q7>?TxCMgM=rX4DGNi`HGNcU@)K~#B@SP0~k>yyr z)PBx)fm}NbtEBe>C-pW7u?^-PjfDFiE>_v)`$7I@DQadBaa^uv?nIW?jv=k5X(tka zWmfI$SP<&7O6ZOav)vgiD?1A$e$3~`|1(&`gj}q$xhzUZ(Kr94=ua$)OVO?WQZyCK z<42|F0T%HQ$!fS91j*KSm~kR%>`F>BAAw@`0~T-)S{Z)q&QObn<I!7*ZX4U_f^Ie3 zgvpp#+!SV%bk(F~KLi)Q;FHfGM55?_xmXRu(ALS3r?6Z!`LYsL!wmF%;-vG7LfA~Y zttQgQzj0!Lk27V@jD?0tUmgHMUe=(mpz@iIorYg9>+2X%uB3ReGUQY?9FxNjq<MZ% zq@s>i?MG;s0oWrTo-+t#(!K0i>BnK#pqF77>HWw~R<iU>6j)_%;nAe#-~{h_qnOL_ zBp0jfbr?(6w3RdGa48}uHn&wa7K=yC0aA1di#SYO-eRq?535l$Rf^6p7711DvdK_z zxmNJHkmE3`jK>1%ho`8}z077pTN=r*oWx@Rg@cl>gd}>%o=q%0KzS^{!?6Go{<X+K zk7=H2sK==Ws*oBSk_@^F1Il~CNwzXe1j;~?3vHpSva|QaeSW?FHvor)bS_g?hL0^} zA7;R~Pg;9<v0U`oKg#)dii(^9uPFRMCHbko;X6mcs6$o4Zwh~N^gm1W)eXT>i)+yR zGgJeaIK7X}YrYRk&QN3C7I^!-=7|E&q>`}Nn^$$5VRIfb_~Sd@fJ=aMsH)IRcFwbM zI}KKs-~b~5j5#XB$0gVb&Vx&|$B{EZ-3^Z~{B@zd`BQ!0rB=s6s|ji-8NxbppT+A| z13ZXDc5i!O(Tde@d?rstu-|J;g2jC(iaMDQnoZ7y+Zg`fb4GrJRd5~PX?9(O(+RLf zbT)2f_}rK60!SwE)LCg&e;?_|^=#B8l_cRfII`hyqbL8M>8KXG0xwwrKQt{&hN?_Q zI_m7**QnyxYC2lB@ds7*?XL=ek}7Eod{Ko=M3sb9Jr3!8$D>8AdK0dE_&W+4qx`A9 z-wngc4jrx<$P{{TO%vZvt{Tgk?DTG5)3gJ4SIy?Sf&N=lx9UvmswG^?oZf9~V$U4Q z5ENXxVEwr^ewKBe7#umh&##GhTi5A%-Me#5>{B$s4PqGN^uD?#wjJ91hujaG-aTt# zd(l`o8Oq&jVzbd~-;r&6r+3R)RWH*18^0gO6(eORjK7vzw`BF8+PfzAj=?y`V8mu& zaNL^F<(t>yyT-xnWc)JdEB^YxBlcZrac7wr$o1}78#@7F?@GNP?Xdl<*mx{`_oj8- zcC3xl{`o!w?pkYAoeNJ#{P8x;-*upi)A;yNqu0i@xl0TVpNaX4@s<6tl0=Gl-0<9@ zMLc1^t!raTP>H9~T-wprYh&jD{6k5-JXn2bO1H0#odM-PHsFr6u}e_;R|D=^8~Y5+ z|9P4VuhaX%n%n}K4dZvG{>Rq*O@(f)O>1*!n$nG?G&Tdwo-X^?Gz<xIw^r!F6{bB0 zIKYW3BVyN@0jFTVWJ36@H3N9;q(Yg>?Ln7hYB^T90F$wP$AR$|Go0aO@G5J>-%;x` zxu8vft1AA!<H|pb-JbxBWB1HvP9L}To(DI`T>d5Uqt0$Kfnsk3@ZTnr-R*ts!3{A7 z9KRwjUT*I$z+75-1m?;TUwr17*4N^c==MJR;D+1{G_%5Qk^X1JS6S!FO5pbHcyL4f zbU<u5w|D1*8&IJxq^W>RzNA%6CHMU)8fU!ycNF0_Ij;Y!zWG?Ln;wSv@wL2TVY>A+ z%_##oiYpaOoMXFCI>Aho-91vhGe8w}c81lf0Y<x-J3D(~=U^PnjK9((D_zwBBXgEf z{)~OlORKE?qg;_Nxv2mCQQh-fH&|6Q|IoTMnC0|p;Kv3+`@<`=hTDKN!_wSV8m4cP z=~8P!YKAa<wI_F+!I)8MvxP?FW{O;BL|%gytGdS=F;GV4Skw>fmY8X@t0(t@!RW{C zl$@@?MzT94XT~nr<({DdHGch&Pc^dl^Z@x(BYSU;=`FUW^j2V1vqwg}2i8>_0E_-A zoGjkV`BQz=i9@cckwcC*v?jj%SB=uzY?~*eDgWis)F7kD>3wpZ^j{-*M4iXN^?lr4 z&Ai|E8YJTj=aA+>-$63GoL<}(_2?qK=o`1Hsm}o!^p8r*S{vGhPtrW0aozltR=SZk z(73<UEdVe|10C`CR@U4DyW$J1GL!Cx%SSva(eC{HN{mmjJEs%yBzS()JRN+3$5Q^* zABIQyes<?^ZFk<R4bJ1*v>g8!NFuIH%j4Q6J+3Xx<2ram+*p#EKo1;95fkWv>4AZJ z4gLYy!R&94v<}wbZbSZ{>cEwA#?f_nQ;P3E77l15nPSql;{AN?yAkIOWL9U~I^K{; zQD35{*A&sSk((uP5IqaY9FxXG+ih^(1Qgd{F}#DYV0lfdauM>pqj-T0vjDVV_F%(2 zm6?|jZLkL7+RMI|>qOp}Ufn9_;jY6ae*rG`a9k|64cEanq)HvvvIKy8BeIK8C>qfr zj)_7s6$O@KqEK9cbl^OLaf~Pw1Tv0^LP4O~F;OT86dV(Uf<TKiw-Gdxgr?OoQ7Bl_ z=9nlH1lk=Fg@V8g$3&qZ(BU+t!Qen)(CL^c6ceFmm-9&mCDU_L0CYPh3I(-Z>6j=K z1XepH3dMQ=>l_n>0*}eoMyDOCD56j-2XMY)qEJi&w+kE-h2m%cn;a8`;v%4JcHV0S z&52bfqvRULM4{*gu*ES^D5%a>$3&s%1<f|+M$*jVHl}rtb2wf-5ru-fZFfu*iqk;z zuoXt3xK6=Lc;7tGhNn`DLgDU*a+ld<9Hi8$LZ0a@m-9U(?|{cM#V8c+LZk%o+z_$c za@n;l3_uZlE5-cCix?--n`@~@Wd3njklUNSi+q>w-!=Oli;j%lCeHXB?x)7SU&*>y z&TZJ$iT$ARLtq6CU!!6_tSrOy$vAxXh}~W}1^}#*_mJgr-rvabpSaYLoQU>yfNah` zD{?+YV(e6}0oiUdE_o7b1d$dQdlV2Z@um=A8ZN?RK@o{ugq5w)ccD(PN19G2`YK!! zgP}!7>|m9|qmpXEnhJ+&HOu(iq<BOjHbd30A%mejofMm?p^W<U7?d5RYDNOHTCGN7 z#17X`LES^TS*m6d%39RvSkz*(Rm}=Ot?Hu_0ClJuR<TWSH#as%%WGGQSd}9+G{YKp z1w;g~=gKHz0Kbs`mX#Us1fKg|(3SZM#qRW|dgKResK0uLAnhKGOD(l#J#1+VLbiZR zA=*7I-m#>KEAJc<org>Qn<0S}*^GvXkEOd^tLC>zXX4Y#??*9KuK0{35xLgIXG#*A zyxZ{r5I@YLlYpA9L-j)ZjPe+Cb>73SN_>^3aAwUVP)_o|SqAy>)l!mi7J(+dT1qfD zzBm!kTJJI7C4Px^X^F=aw*=Lr=)ibFRV;#hOTC4yfp}6wu9^+RcuG}p#0KgpDwI|g ztaU~WK*Pr~s)F;nT0KcFSyjPis8RP4D$`J{dVzH1s)B7?u)N!;Nrmz%AwBVPDA^J} zRylY}QR_(7sj_DR(Ngyi?|2Q_>Rv)8sw@!$bt@}6S7omNVn&@!x|38kKv}h_WWDF9 zER`-;E}PgTNADuG+kB<>H-88$RyqE$eKJ`d1pYV+gi5VEZN)-=EIMe_>ZJ?(%aC*G z>NP9;*HDYqD^6YMJ18m~a_mu-cQl*lAGTKm29b}zJ@NDGHDD7t5}lHGJWr{SRxn6B zU(05Sltb;r>s8b&jLJeCA{V0B5`U4Q;k`n9OHT{$4H7gdT@pt%6C+fH<lYFD+^x#r zfo%5!T=IX#MNi7ag^-^~yr3Ebv?IS~Cw3~C$CesSCNHVlmw_Ev-Uc*7;uYnQ*!!Gn zC+&fgK<2jNlK2*+R44Ye*OAecsBU7UT{Z%MrGBy=P^*RlEo78k#y-x##{}4B64ULQ zNjH*oGeWwhlsMDSS>CtMnu)_~j}j8^LAmzi{c2xKV;PFcpDR7i)zja=gUf>&3e>Nl zY4R5u%BW`vJ*1&(bpaYM`AZEI)I>tR(ol;!gwP`zYE@65OOuaksLk@;C!5EW_amyZ z89*WVnYxs!i15!<`Yg1PQS2WYvSm?AexcGb1JzIpP_{rBbuRifX=|t&?ThLqUE7-o zp58LFN^)Pjc`E?-hq$D2$nn-NdzRhwAhRE4_HJg!(Gkh>?7|Doeg&7rwaDI^e9Gmg z5cMg=KJ8ZBDhmD%O`P1Jp+F@uFq6+}D5E@<J*S~+bu*#gYN()^Df>mY>bw-!*-r`W z)KIIcWaGT-R?%X%O?{Ou_ljHfRbaNOIjrXIblD7b458QDs&AmIL!C(JyWA=c#ZJ}C zvbWtTu4CQmeOBrnx9S4$+@xM**>1Orjr?^rjnd!M&^L7lyr-c{)zPf&2O8R}o?sn5 z)X?SXe#-kuLszQbkjowoU9Emgx<9*BAEU{x(H-}(Tg3+4qAp<HeBxFegs0=JY5+!M za<5zUW3==(xyK~`=2r0@bB~%{hqBMyD&7XRtLfDGbGM2k{V{bSb@`{R?M`(OxqRVP zaZ>D7E3v{Pl~+ZZ+dY=oOK_`Q*b4FP4{=GffVeaHqEGeIrC2<YFZorELjy~<;>*6Y zVxS~Y(kp(|AUvm4Yre1gRh!w~mbaWjAF>Bw5y68qF2fa6Y*oqUgK}0*9n7A5A*i}u zIE$PY1CbNRq)zS(q=ho-R<_qmz(kK!8yy1Cp`dkmHK^iLZB<*y^LIhjc3`el6W9l@ zX=t4~fi3%bP{oCKqk4Zlpx*~oTy!_9DmKEKK^5;r*Qjk&{jEU8*mgBZ#)^g>R(F!; zJ3&<vbdRZ<iTSS9Y>)abq4$ES(P)po<?8@_5XcQ(l`D{a7|cK$A{^^rX!%jViJDR6 z+o0AS0jgE`8yF{l7Mg-8XGeV!%mlL*WqEJ05#G0(JJ5FSF}NgFBPWymz`35SDed=1 zr%d<LH>vYSPT5K5i$J~3R@vi}aeOD#-&lh`X((mY`4Gv)KY61g*jItn@>c+9!D;JP z`M02W;nLIB_zloz)zW3F{I`KnC@eU|{{}SQ?-bmdR)YVk)90V%{{$M%?_ROY|1oj| zrw=$nbr@Phat^`h5-LUn5UOjD5UQsk^uQygP4%mhIQT#$?g!ODOk9nLK5F&+Q~gdL zk7i;$5~rVb=6uUr$O=8+cx(r+j5RNFhn|I+yXWANYK1QDa#Y>r8tQWFdHZoJwEIJ8 z_U+zGtPQAV;&kZNmi)2L0j-zNJN*n>&C*NgT^h1g6?^)peum>LP@|~8JsQgB_2XVY z!~U(->&JZ>D(Lm&ehsy#W2wah8fvw?!^q}A-@6t1c!zRL+UpOT0#)2;xTJoC#`Qks zg69T9k7f3W%svs-tD6o^(us-m^~elPW+w)(qKQ;65?4F;A#$AHDR6azv8bjOtUx+q zc|PcqRcWsabk&7a-HZ4y$5~VL@fX3xlH;tYhB)7DgD8%(rUpm>9_DzQHC1r7f@B}x zr2?tJsfl<u3*<a&uo{bz3Mw%9?Z5`E6WGXcgKBhy7YxHS5?qEHKUj!~7X%)1qQULR zi3QWqv~f$$v!=#4Z$d<Y=UG$xHD`gu^Q@_H3BJ?<z<JixcmeczR)icQR#3_FtP{(r z(RNkI<E;Bf`PA~Ts^n?b$pSp4DtVZ7N_+xHo>Y}Q%i3N(6Tqw3(g#}UC~H<9Wo5JQ zC~H<9W#zj(kFsX<QC61nC~H<9Wo0RkvS#&BR)QAlk<~|8i7ZE1%UBg^Ag^~ZxkjzB zgON*B1a_=4_Rd_u`%VO5=_qUJP-i+SSzVW|{1r;0ILex?GP@8s%9^g0v>U}y)^v@e zgXn^8D_tw;L=;C^(|Xq;6U9;1bc5vQqBzQ$E=U@^y%7UC-RN{fK!HbD(}S~R=u@67 zO%F+Oakk_rYq~`MeUvplRQg39Wlaw&BT2$4qn1rbj*xnQIiu>Ohda+8zkvlKe}Q3} zS`s-KX<IIAD*In99FvyI25IF-K{xP;&_fzFv|Oy*0~qPO?oXM^y%3v?+V4Uq8Ma)c zR4(5KwN=0ENX(5*Y3C`_?KzV3mS}T^S-HJn`VBWxj*Nd{TH+^y{)K67H)da>+w>(u zE4S-7%evH^T+A)<v~o)@@fSKr6^mrh=l+ED+3qZ5t_b8-k2R_V(>(Kuojiy6Q>7C0 zR~Eou8KG;L%{>77Dxi<H>i-F`$)^%h!+TlC`-lA#)YrZgXjbE9EJ~NMEgzvq_}wd4 z%<H~|Im}ZQT{@Xbr+4dy7!AuV?I3e*2FHGO6u^^400*CQHYE9~eVHsC_=uL?Z8-KC zj>)CgX0u0o&xZ7$P3dY=n&DGGuY7{RC%4RZQPHbqu-m;IKyf)}#_$ulS{WH<+$3$r zpyE&UEv_)SuAHQG-L#<!U!GPT#i8Z&Zq%BuT&OkQ+asE<T&XqR(^EywSDsHUPVerX z7*F`Gyo93<o2otO^Nc)xxZ@8sIn&f+%ZBu&rnJJ8N=;Uok4alMNLAKJRq$D6Lvr0{ zYkiu{>hx~jkX%37I@>^3Zh(7-uNVNW*=?O;fIjR~TP}zGSbmyU3nEML$iUxIa%Br- zD@_Y5*k88*A}6!A7964LyiNDkg1NfRTQ^9Z7o4u^jB1=~Sl(q=qLK@xlIV`~*G=J7 zrcmm*$n@3>sp8Upz16rK-8Wmt&JeBWD@8>g4;7s~iAn5<Yei?z{*t1zPyCXivrlF9 zIq0eut~k}2O}|nAui22k)kwI{NPylQMZNDdh1Z)x(fgP$>3u>!z1<NQF8eLO-Bx*# zaPQj2y2zjEliA>nVEbZoJjQ1-Z?ep&-i}Q67%a>w&MLe2RQUcF9-RszyLZvJZ<|f< zJB1DIK2<V=VkwQ#Wu^BUs9Wh6&Pn`GhkZ<GH^4T`T<)(=tihrs`|H00A|7<Cjr(ZA zTZfPgF>_{PRW<wTQvi!eKvZwCNA(VRLlD&)>ruV29@RVQDHD$Q2v9}!?)m@|*ZC}D zrS5<rXISNQ7VB;LlyS>KIbh=8Jq0D)xre|jkQuulmqO|#EZ=T*IUgU=58#rb-xRkd zcL6hg!wg2lb!&51BOTS-<e6DW^DB;g%z&l$$-vDZ*bBadWQ-kA?9adv#F0cKg~5If zyC9j&G{LS8vH4lN@#qlKO4Q85_mT8cK`MkuGXYlAL0C|GHIhy5u7w(Psn@}~)oNa} zbb+Pn1<JHq6?C4twefCTBYy`;Q<C~w5$={YCn-IMa2s`Cf<iKp!;n8nKFw8EF2q-s z!ICaSCPR@S!n7rF5YjDLT!gZRW}XK7wnztt8qDvIZja0X&T!#5Bk~B+`@~uGj>vkX z_Z6O<kq3|-A?dCN{lbovba&)U=-Ddim67X!GfL9yA_qdZ(URU6xf$s($p^r5Q{?-= z87t|FD_5*I&Dt;aXXx<t$XAg+PULQmTnwJ$C4EigUeLBldW)5L9W1E6_fsT1LUOTU zY%;_q#w$~?R8UwCD@KnnQ5_Suie@vzna%jjx{C#K3NfpG(}IUQmU0(emy)X|r32aa z5m*Av2n(%hcFp%~QY;8FHF7mOaEp|j#S-BVe{vpr--*2r{7;W!-=e|f%EjOX;EBDg zat2c;*mk(5E<POuW4JcKb(zDSg`<DcW4&<Lxwa#{%bQw!6}0)x7WNMr_G63e8LL>> ze`XKr&;B!ebbt1r+3o$=|J^RJzYJCSShL@3*pDu<zcOV1vE9_4{m1sm{_H=tC--On zNr`=SJG8&t&a(JD^SSuD#g+0(q(uA6HG8Lb(*|js%Qb)AlAYa9@NzA{>D}9-R$5os zIibY5u4q4TrCoC^IN@nRb&nfsU8TkIE-<KZw(byamhiU<cs_UHudy36O@~@L%DUDr zqlSEVQENwA*M;CVfMcxdL+~DeW34_7;)Z7huN%9iONBf7arr3g`LG-}h}h#ONK@PV z@6ZyL+7$B}(-2tC<fr;x27<c|#e;M^c4LqDQhOf`Q`{P??5p!I&Ft)N0QVZ=$(j~J ztQK!g&KR`PCc8y<Qm0xw|5WQ@J4FIv@HmRk*WED3Fla9_m>V)U|H}+62>Y?i%3lu# zt)hMF4Be!S(3wBg=i^<;<%xq<JqU~4*lLgM0fy6iq3*_3`#@^MZuPklJjSkI(_qy5 zccF%3?X*U}bA#$0W$mZ+=L3-H9&L>a!7Bldf#HMHjyHGJJ=SUq!M+V@;V5fD2%^gt zj<zO-;Qau{z;(Q7nRc~sthIj#P4gK5YqDL*3SnmY+#NnV)Ulg=J1b=LoegUFXlr%| zV%#hrV;vEKKL9uu2TP2K+cpF@npWGO8_!Zptpn^7JDB4%_<<=7Ki5;%6uV6K-wcXs z523>;X=(^{P|$%PbTs(IUdAQ+GxXO7O6J{%?ONtRd^f`nj_2@r?=C$Z2!r)R+O)x0 zECk~x0zsx7SEUcsAsmmKcCsvesAS!MaaE66jsx7`_<(|=EI))WqsHJgjX~WaGb$Q_ zoM5A@SO{{0wOa8IL~n6IC-em8xOft4U3oYz(DMtdoJPj<Q!Cc2wg!c?*K7!WcA&25 zX<;Luh7-6lv*}dRinpRpPpb%TPRmWBoR9kPr}}!>D5v3$`?P9i8q(dR09r2)pu;({ zjnor22{^;&{eOqbT_Rw&72}hDeBzDq&Jm+arTDjjbB7lA#uTm8#UhRZoA|Cufp-)I zI&IMK$0{)nMOgfuM+9smL#%GWr-sMrA&;f7wK7k!T><vKB_D4;@)Hg3Qq`e`xSO)( z<gM?uWNXE!M$IQ!oW7?OeaZ-_&|IMCX`!OuQ%$;Mx~;)K1ckauMK&6AVFnV_*B7GS z6xOTTs$qD~>r^lT7^fSGvZ8?BgcR4Q!J&Zo^Psp&CAp%FF%)=2k)P^I;}u-m?kcs9 zp^z2mDm7Uzfn8QSfQHL7gQ1gk)5K7J{#4(OLk7##IL%;&Fj%Gz(G1!hK3OdfM?6O6 zQUr~ahadDz&}}$AtQlL<*k^=|-RYkX;cHY{_gvSI6Cu>+C#!Q*q0}Go6zX`gR&fX2 z3*v_j1^J<l+%xC+I9UzXDt5}2+{tPJXC<_NO7lXMx<rGn(twPg3+BgZ=2sc!r3UN> znIETy_HV%B)Wl)~Hlhv(X$E&s(%Mllf2wa!$lxF~rhfw-q^9+6z-eD<z(Yc9JA?NO z$M0x{x&dc~4cHZoG%C*s%h{rbt8(3<-N=n!irKNh*6%BZTd9JhlBV_cFIG@y@c#WO zI0G#d(+t+hehSt)^Pr&mUJn_>bOreeDjZ_EhI~zzF%l1}xOIcS3My5GebDJ237zvw zo^&yPWl+?GU^jZNK5UPUVA}-U!e1It1B&f|CH-V*>!>8>@KHwFL8ft3Um<0x>!^XI zKb?1=jH6mP=eYjmW&(aq=pWio3+pY;hnGN~<Y0Sk5Xt!@WRw22Q6%R*D$xx2uUDA9 z4(5*2EW$fh*;4CGS&G<B!BSIdmLw~|hIz{@MIB|!tar`Zb$jp&gZhT4OM(mQ`*nJj z;1P<(4#@fSLu0f+tEe--u!zpTHdXGl$D_f2J%UYS_Z}TokJTg#Le}R)i)YNF#1Lxv z70}iF$wLh5uNXYlcSFefelzuE1oI8j2?hxj{<&DUayeLT3MYq>ScwPwRibV;MBTy0 zdwcYkl~R2pGEkTAeRmAhebt@ho8KMb8-mSy@g3m{g3T9%ABPX{Hdm>i$on5gn9Vo9 zJLL@!_eY!WfOp9|AU?(0yqVl>#$sUAbwc1GD)iY1t<d|$p+5-k;`V2#!J@I1C?n(N zfxTE>SIPJ#yfiHy!53Ecw&=b@mPXmTqVh{>^|-+>qV`LMzK)jRFcS5bm=(+t^-nSC z2cmwrQ9mQ<FE#2{i~7rq`h`R%n63y{;{;!7*BPiYLCc<V4b)Y}LEU49ZMT)%hH9N8 z&qeo{dQU0#`a;xO2GmKz^f2#E^0D@$N#T-MeiH;8FVx>Q)YV1mE7)r6j^hWuj!atd zmwyOp$E3Js^&0%rUGJB~=e#&(Xn0G=JqY|cRRm8m_@#F}1ya#&&M2du{RSRT=S<dv zrpqdC0rf1QZZp)S1>!JJ+h2vWSuJJ>wb^R3+6*-|lV;7-=}xQGM$sW{`|5#Vh5!04 z3{^N}M5w}A$UI~s3%JHawGm?Za^y})Gxs&K_Y_VW)%Q4YNj9ZLlXcsT5I1Ff$Ykgy z3^p|>a*H9IP;6qi+%&<Y)=+*Qa3}2_Ho>ryz)4j`!X2+t{cXOxR}R$Ux!dMzf93uh z!SZMr!D7$7Gr9%M$=(@f12U~4+zi5R9$r-VTZxLe{cKY`y=_*ZcfmZp>4ksX;qvqr zny0tWGSJk*slglgPj9DrdJD}p+h$8q;%;rlMA=fq`<{QjM&+hihH3YED0E|GUuVAF zKJ#xT;v#0~O)>W;P}r-<^&l%6MBGpDKe7%cK5?e3$a*AGOuA6U?YtO?#i(l};=G8= zXeLs302q*>zC=;4DI#YhH%sCmau$*~CKHx>02wqmQ4mI}{lm}3f1Bs_{8{m<fnnL) zUGj}%VKfYY(6O+45n#W=ITSRNctElOSh}(yJUx_Lk4)doGb>sbt8{=K!I!OAmC+7g zwqn(ib|d(*6|0eS5W$zNSgoWJ5q#N->Dpu>__7siko;T(U$$ZeNmpAgzih=Co$o?k z6~Ao721h#}%;u-9*pMX6FD?6QTw*N(xc2^}7@DAS=D?;ML~K|YNfK~9hJW+%S3MB~ zUw}J5ZN-K=Y5YsEF7arJHl&V>E9VOIuyS6()podv<v29#be(sR<2jr=5oZ-heTT2z zfy0>@b#6jw%sC0yxU&v92`387q*IA&%3&y%w6hE8jB^P}v(Ar@Q|8c6wA|T%YtH#Q zaw?p=z`4?C1WuLn8uF{1r;w9(mLpx`&?2_h83nm@&ZFQ~?=a9(gR=+u1033L7o4%k zX><-oX_M0m+Gb}Nat1my3Lj*-yO0%c^-jaTXj^>TFF<2EUC0}sVIx@L%PZcNy%%Zt zr2<i0A5X~G^r;-582<-Ks_iE7nIv201)HB=;`_%rS_fM0x$^-{c9wyi&xZH(-k`K~ zVx$@ebz&b50~ZzhKL6RVD+c4A8yh$h|AJU&1O8=Vf8iE+A@;W%{<X(G#X~Oagy$nu zIU^gX_0u)%mn*P$6Id?Y=O$k(`!%pU+Z_nm`1d?SMKh^6G(fd^7AJM2+>ERU-)&Pz z2>@b->Pj8$bP&Bdbu2qaCQa(NIMaI4q&hV^1OfYa0Wy|P-Y!FRrA}}*Xa;ll6d9b9 zVA?P^xj%z>Ap>@So4x=Hx}5DmmUc=lPPL(%o$+Hp?YuRLwLa}wFmgUYeH~}a8LazJ z5bHT-VACjqFyeSAPMzi`j!H)AO0CF}MYhvTt$rFP^6@pbrs^rkv%~>N>Z}~shrni_ zuGG5toseFzC!qUM>l1$g&}J8o1aP*Xb=WVk;^)Mk1%qyzC-PJ0O36x_fx1!~q-2xL zKwYVgQnJ}T>Qn&dS3C~|w%R<>pSn=cw%OZBbCI;dJvIY%rM@b_c6%n~PU>p{JZ9ej z4O15j%?_J^x>8@4lAZSbEcu22yX>z~w@VTnT)S-s>PlTE8thRF)RpQL27yxL6m+=| zWt3v5uGAF*RV&5yCUvDi1*I6QEA_4TOVGSUDZbUDu95LR!&RuemAY1-!(ByF+*F@H z9j;o=vKs_C+O_ih=-{*clUJkQT_nWLc_F?JlI4v~2dINT9Dwv*S=xiO`yu_eB%3+d zHU;U=b^Z$6C{zE?`48bvoccoYvzy(tKNK&~(r)QMrlDoifkQefK*pv6hjdJUg8eE4 zrsD#%+H~NMP6*I0b3dIFpu?sEhjdDSE}IS<(rEz@b&w?)0XEun;E>J=u-T>qhjf_$ zTco$s<pOMz;gZe?u-%TH2eb+ScGz^_kggP9mrbKPSW0ju*`w&d0j3fJELBSf4(Yr= z=s7xYfawIw&{uTe0OJWltxC~>L%L3&cBSaR0mc+8>rjdg9AHjCs7on2a7YgjXr)qg z-~jUqmTg4;v#e2|%}UXML%K<zElSaWL%La@Z5SJD!+`>ASBefC(t`xrp%fiBqz4PM zODQ^VNDmQck5Y8tkZuvkvent78!Ax7R&?Ny9wt!1R&?Ny9xhO;t?0lZy^lccwpeSY z_Z6taR&?Ny9wAVdt?0lZJyM{RwxR=vbgMucZAJU`^eBNg+lmex(xV01Vyi>gW@7}} zW-B^yNRJh0yRGQJA-$hKJ8W@2o*pOAE?d!oLwdYGdu&Aq4(T?5@b*gw4(SO3WgInN zDxir16&yte4(Uk(wK|Fp9MbxB((Wiaa7a&<vJOYlfkXNLfw~+;2M*~e0<CluRzWM> zF3?5?aXtV|6=<`g=)fU;pg>z3MF$S)g9O^<C^~RRPZMZ6UfKyAEYJ=|?LH6Cbb)p` ziVhsohX}OCfs+J4GX#RKaXN5F&lD)*s^7B(4;853DmrjTA0|+%tLVTXeYimFuA&2n z^elm}deDJGdbU7auA&2n^brEBbk#7*>kw$83p1N<0G#8D0#1_iza4*YvRSzX*`2BV z00s2xkUl=e(qJ7f=@S!ZcdP7OJPT!Sl=Owjj`MD>FDSrs#jo(voj9U-Gs^r2k<oB) z7jDUj=1S@T(+EtllXsDHDRSUfA&<-9>06QhHFJ5fe1e5TyC8R2<Q-<qg*+^u*T#?d zj&PLE8Ta$!aKY~}{SW(E^_W)WP8arAhV#(`U+Jx;0HA7&sADwN16W-7!>bID8Dy!k ziAh?8B%Z+yvqhG3?xQD8=)#t(0r&JI>Hv;6;NG5e&#{_i&d5*v9pijrns;Z}b9oQE zC&^X`KdPkn8gvY5`6c)aG^Lz1;b#)$`CRLpCv-u(AQHa2ysWXIaC)tIojKiPC0c-* zlhb6ZD!vk7nD9-gdjOcd2FCS&g))2-`s(poNiGun-8>gh1A%)elFm99g)?C}>v6P< zDHowQ<?X_gw+p_Yxq*Dn1#%YW-!yVI!IW!7&HK~YUFgyinU$%#hbZf;`Xc9g%^CJ( z^;yaYoU^R@98(F)I{<1nY(hHngD&j7GIwp4)_5q={NYm-GSqx)O*xBEVSG<mQ>WA2 zYPGdykWMecb4wTA^{B!9^E4BVR{m69yJoVoip6++1e28oo$j#g54x~zEYN=<T(1e2 z_aj_hB3uH(B_y12^1n*_u_j#7k8nwe@O}`^C*h?h{VU=7ns9zU!uch_mq9p}gl&cp zLsx#PuNq@qt+VDz>vCj7=o92fBHun&OZj>cnNL1IKGL-6T(#ah(zI%)I@>zZwCd67 zEbGV-x`okDmvq6O1jetm!7${5IDe||W-^>_9ahC+Y^0!t4=d<&mu3IH3&BDNO*4de z?v$VEdq)#auPzZzZ#0Bzp*4M&PIp@Nx4JBADxoUFWM9n#(hC?#kUq7a^r<E3D?zwF z2|qYdx5MxvA>XV(xPL#w{Y!*D2H|)T{^CCoUakqp_ahu%BHReV(ImXZ5Y{2hpXz&% zgzK!)Wt>IQO<(JR4G59XFvxhymY?d|tC5Fg4KliEShY@fV|%a*3&$Lw4m5<bG##Xj z!s9FI)m+75-5t#Zokn-u1i}VF&z_(g1W)hsQ+;bSVMBF^u%XcqqB|Psq6ZAo9dwbC zCv=fvQj*S>AxO{nlb$b0rvsfF3ETb?;ciWs>qnR?5z=2znuPD0b*&_k@7R!-?njs| z5z;SDjD$Zogr$))n}pa?D9)M~4N{fu6Fpo%+mPl@^#Ro`u0-oCJ6wq@YZvZYT!lv! z@a`?EFxE&}g>N)#TH|10V!eGbFu%0VREa0~;y#n!o%-^2Q{9*Ls^Tk&t}U}FnJ$}( zOE6Nsgn$3tS7s%z%t~IFmAo=5{mLB24b6f_58Pb1iRQe3bN>);_RI8^R@}xos!s&A z+k^z{B5W_tl;xt0yp&{ydsja1E_TGhbC{LL*mcVcMSY2)UQ@VdTXubx#DRMjk~t<5 zme2c!-Qe(xNTS+3oUdc@8t%@DFNaM17VXYXyoq#x<ppXSApl;(xp(DuIBP*;cHbI~ z0s;?fPvw8Th2=BGROH*W%<{RN<-eC_S{gc<N@ciceT+viOMS@UqCE7ztscT)a@3W$ z+qwpIaB4A8#jIY5S-ldodS!#mQDRoF#H?P4S-ldodL?G{O3dn&nAIz7R-eFj+C!|t zeA!OZO{}-mq>Wv@ou->iZ>LF{xq3T|>5Qwl)0ob=dOMBjYRfm<Y1DXt*-lHdsTZIa z+i5T1UvWE)Kyf?mX8?-ZX(UNl8LG);xxmqa?KIzPr~L-`(u~+ntLJo=?KCCZX-c-! zlx(Ld*-lfkou*CzkBE}(G{vbNDA`U^vYn=6J59-Un!+m&PDx>$S}7&lX=)eJ8713k zO19IKY^N#NPE)d-rer%!$#$B04N6xl*-lfkou*_vP04nedKBF1m29Ue*-lfkou*_v zO&yHVCMDZxO19IK-cIw)cG^B{8*Ha-M8$2V3-fAxhK*3%PJ0dM;&$4b0E*jbL(#^? z?KJL77q`<mfd*Rsx%0tpvh4IFI^$CUG?Q%Q#M`Tww(PeT0AXrYi#T8cfCKfckPU(O zK>}3UOK>xYPZOZvE`UvL{9plEFs<X$Ws<haeoy?69H(BJy=gQkX2f{x8P;#?bhDM` ze=-gwGo5duiiwPh9Ymd+E_8alU$s?2>ty+BPz9BA3P8&cmqVkR<0pV;4U}clM<6Ha zSl@vR{4%V|g(1>0R@I3>s!y&Kq%HlCZVQo;R+SH=(Mj5pMV+o&HK*#xFsRs`V8gzK zk_dM%^@Z}S>c3|&-Zw;8$4^+!W!I|a`%&UXp~~SYK0<x;MW`D2eiR(hTtHczi*wU| zKwR>m<n%8iPYubeJY9Yz;PUHDWStaZS<NkY&P(BZz)EIONh?o}WNCOLBeW^R9BAdv zK>njXM_APoMNI3qg8akni)Z$dr&^EZnP7b56yIKc9Va&5UZNeRXp&!}j{NaRbjn6A zzK~*#o!<A)O<jied(nU&oSV8I;7$X6c&-&KoUU1zS1)S>SU8_{;jKqySS#2f0qe>Y z8jHi4zoUsoK}RaX>yN<tXr(TGRU=v4`w(8IguM0wt8cZ&;vI#*ZN&P~d<zEzjl{=# zgsL}$H}+W3XL>X`ofPo*WB{rUKozkK)s7x#2;gK0@9c4|1)Q-{90pGByXQI`fU{xw zrXDB29BT^8-#gdYh4SXG{F<KV6C0EWOX`2tatKW?MI`jRZko+K!OI5a9YKVg3&5kw zuGR><deA8^o~OxQG$`OOCgiZCCwR{kZw-qV!cb2h6rA3V&UJVoW51B!)*gpPGA7s! zT(J563!-Sn1zNyohC>;K3xrI!vs#O7Jwc~Ixyhh7{01=7&S?ZX)ro$eS@=C;P&zf2 z6YL6&bWcxkpF#P)L6ORy7;@Re%ARwP=5n<`fgTG(4%>Tzi%s#W{u~yC9Cm|)70;o& za*xcntcPR*Ket$OoMuQ=-)}fC)>#i#aFFw%JhvCv4+!=p277uD`*V%`Ky8R!vl!TS z4={+~i@NILW)h~`-SwPq{JLDT1Bf>~u~5qoXNc;1RU_UYh_vKL(&G4rA-bJl70dDR z0g$53F4{!n7rbn^Ox4V+ilx?#(mnXxAG~7<c}wH3Vx4ufnO6^P2(DhFv(MCpR*FO7 zdosdcIgsLj_>qhU7)lUDHUTJJ7UQ&4Nqut_^Wg_bnrMKL7WSg*qyI|O{F?)G%{#Ln zR{?p%YhVVRspoLVxK!>cXq8~KAwR;XgPL4rYSIPgH{Dod)dfB~aVZ}~@Vi^C$nLuv zg2X}31<kz6(a<r=8{GxtD2v-WS>Ea{n68_0S5L*M)<rTPWULQqM<vw$Ng{{O=}%}G zV4iil@aEXUJ2VG{RfhKlKI7lg1nYHq#!sLq3EJ&n)kK%20O0rBGTbiueREFfr}};L zb9~Aiw9wDc2wwgf`ZT4#Ij8jJ=9K>2?3&XX=n-tj3`LEG)O;Q3l=%$ZmPb}g9q$3| zs#c_j=B6@jK2I-V+C<!)!F0cfyKX-pOKv|OOYR6zIoHYaZko&#s#b<Ru#~lLP)Eo; z8E-_+L$zcX<dFew`Ng||X}1;h?)>cAl-C7B_tf%$`Hbr8<;yuE-8InFt0}*MX-4(+ zYRm6J8qIVCvkqB^Ww=&cri^$A>9$Cle+_sHngd{BAj$O*Gbuq8u-%Wct@sl)$6GFG zA_p|^zR<vYL3lhwK$zg)AU(2rN+oVx{;1$s2i2hyC4Y=Rl?=s+l0Pn*1DbZC<c}9X zJ5lo61kg^D{0RbRCrbWA0kjh(f06*&iITs+0NRO?KUo0nM9FU#Ks!<LrwX8*DES8p zpq(iB(<)a$Pwhm>pPpL{Ks!<LXNcC?iIP840PRG{KQ#Uns-vAK`LoJ6PBw}YCBMHD zCI5(EJ-BHnO8%Vm#Q?MuCI9#&pIfvOCI7^#D^Q}HDEV{qHvrI1l>C!K9qmNPKRL=l zqMa!D{hcWJU837|aiZie2yO<0hvDHC>uBKTp9WDYohbRkQ?+!W6!6n<z-;M1Y9$?v zOdj*7r4yxq2eWGFL@BriDM9=(5`tK61qD#oF+)0eFx@E)_*UwEWVk%P6s<1jBIr(p z*l0f2%QUSqqBXhOnC1zlXl?EnNS6mOw+@3G_lcMnXNuvUV_u3$*Gl!X%!oyte?UTc zCRVq|P}G+w>NN$zKga5`Bxd;MSbdI3W0?_aa7L0V!#~F}$*B}y9Y6dB$P@3%@mX;W zP3>Jd-aq_v{7Y6E@eb!4(3H2v=cl<kUVJY2EikkU{~TW^fDZp0UlikX(&3-ui={+| ze~vE^K!<;hpCUku<ud$pyxX~lBC6xd_?1+vw>-_XQLlga=Xe<YIiNl+!#~GQcWRMN zX<L{m-^LThby`ZljpK7Ha6fKFgMYhr5z58FB=ugN>6}>7q*JNwVDkTXCpWl*Q}iA5 zKlV~yUYDs{1%?bnoT)PXjF<9EwWK8wai&JnK@u<JnOaFpAmWT37ZQj#(;)d0h&WS_ zw6Sr?G&<CH6kp0SgQMG#c6cYu3`uU1c0L;ok!cY?AK%UlO)Nx-KE9n9Rz{M9m8P1{ z;BNqz^U%g6Gu+vLJeQVK*+;Vc?(d#}Zwc8avy<8IBk>ZGeYWf+=6@S^zU<EIOy(bm z!I^!n>}}>V5^?tJET3px1_8>xU-l>D2OOn!{PL92#uoTTV+-98Wn<MXDEc3cNo;t} zP`@JY{~VLply|6Tfbz=+p(WH!sG?E_pc1x<m!WmlUvYzS)s>hcp1L-JyNSx;3C34# zNC%<*U1}<M9FGr4*nMm!k9$ygTirQ~JkG$^SXa?cx~Kku(nv^ms-m-k|7J{Lt$+DG ziq3QX9ew!U(TD#XefZzehyQm*ACBng!;u3Aa?y?G=);lQuxPs~qN5K-boAlKQCQ)9 z717a$BRcwU<VScTiK)mQK82{rcN%ezR1qD0I8uov9IrJx`fwx*2^kf+4=7m`(b0z^ zI{I)#M<0&p=)(~meK?|{4@bTUF4ZccqYp<u19^>#=;*@{9ep^WqYp>Ej=OJzis<OW zk@>j)7F0w>ACBBUgxksy6MZ;ZjeAfzq7U;X;{F~_vAKOS3OBpz!)l;q#mLO>ac7Y5 z!xf{-c$d)Ohbu;BuK=LK4_Ayy`~^3C9e%iCY=VBV@bF0v75h0i60aRnD~}b<Id3Ys zRGy+np&3X2*TWCH*Q4F=+VVH@I~KgFhGuAt;En^Is$n|K@Wa*nNV@t=$PDuLWG+Uz z1QX8RE2>$}MYyr%?-KwvEyT;;@5~2U_22ODpUeLu6GyXXnqT&(d05j(0OI_w1keG9 z^N+-ThbGVgi1UvMpaT%+9}_?aAkIH7fDS;Me**ET(a4rdsrg?!S5X5AK%C!^xvr?e zv;8%A&S;RtV8}n;UxVNF*WiWz8obzFgPr{~cu8v@5s33I3y{OhKb}GIuQ*lEp!x!& z3;A7{It&fnAaC?n=gt1=yk*pR4)w^tZPb~Dhn4&v`m6I!e|2^nb?#u7yep#(4MM5; z_nhxigLhFfHoqrxVNruW_t)U#{u+E@G@w(H{9j`HmZW14=RcLo=@`WMzY5T5x#XSS z>$HG%^$N6TA^*?J2LL2yoTap!FbFY+wT_{SAjAZMFbFZ9Op8H?W%k&2V6(zgBB#!Z zl6M|Kh&O|G+yo(>h-X8QgCNA@W`#kBOL7o|xFiQbh^0POlnn9+Li{&!GeL-d6>>um z;u1FmAue%45Ms^E1R*9+3_?sGlURpkLyv;QdTW4AR@-xjZ~@VE34;)`mIVZP!%CA! z5aL51K5l{#pHyxth9Jabt1E^e!~}{#hzS&f5ECc{A?8FX1|cR;3_?tx7=)NWIW!(s z(ilOArS+{SRmmd=@w3#+1R=Ju4ImAUAjBoT5QMm-7lII%^g<9~(F-yVgjl93T4jn6 z7X~3FN-+pAU%QJzhzS(JAjBju1|cTUVnwM}9zlqgp~2!$VkqVgRlT8-2trKOy73T% zm_RWI@rPIgi$RFl5XB(G1d2h32^5166DS5Drkz+Z2r(D$GAl|A@(4nlh6-^LgqSxC zX)^>NE~$ec#3gkQgjlOHAA@|J($n6agm<AX4QO=`gt(**f)HzUIJ6e3gjUA{AtnHI zs6ie<i2sA?m>|Sgh3X&(aY-EnAug$dAjG0hqI>>o9N9JMymB6$K?;x*-4KLWtHbD~ z2tq9CSW(K!BM9-n5EN%{;7pH-;h(g@#{NPPV5lS%L5Ou5FnHnxp-`@a2trKOS}1}L zmxLk+u@Oo+`L8MGW(qYyhz|>eA_#G*rU*h@5{e+i97ur`B~2bdh^s&pH$jN64H+N^ zaftzf5SJJr2(i|B7~a0GS9QE0C#)zL<Pn6pliW-Y;uZ{5X#)fyE^$K;;u1FmA=cbX z5MowN56fG_Heg#L2(fO1SpX1(SlS>ALR=b_2tsUzB{j(ZKsn!~IwlD54WT*+LR?Y@ zL5NH0AP8}(OAv%utHUlq5MlzlOMVurL){RBSk$qil#@pg;{6~feqSqU@(cA^C=@}6 zOF|KZxFi%oh)tJ}CjW?XzDEY1^49WeH5Xf4(ufE`Tw;JA#3cp@LaenmL5Rt%7=)Mr z*XU=J-rT`z^qfu>gAmICWJM`3k08YFQ@RO4{BS58L5NGz5rnuT9YKh-bQ6SFOE*D? zNnZ>?JP4{3VDOG5?s??P4yldUo7m#aBM9+Q<i!~rIP;F0iAOT2HG&YA<RS=hNiKpA z6A0`rAo(EdD=r})hJD5EK@ehgk6zIbgxK^I<>dD$=l2w9f)KwR3Plj&l28O8)<R7X z;>j2d#UR9VvdY%|+%zd#_a8c0msqsU`ln785{uSbU+8o(2r-+X#pWZKvPHr^R+Nh5 z5rp_y{EwR;#LMv1DoueP#3ii|gt(*?f)H!1Ob}wSE(Reckb{b8Tkq&W#f(lCgAjAl z6zo6YfwIh&8PsG&DLs!M#2-)<6NGqos0xA*msCLz;*u%|LabFWL5PoG1BF3|iB=3k zOug!$SEE*@0KJ-Ya-bEZz&wHwp9P6=6NGpi=Cm{ff)JOaBM7mUZh{cY7ZYjLR$Y>@ zqGXUq5aPd(+Y9LN*70_4$PGb=OWY8ISaUN$h-G4iL5N9G3_{Go+@c5bO~{wQ>{(HA z&m#!&LCA}nAjH27MIi`rNfd$*izq8fv^;_k-%gr$u?7?lw<lv#NM#X(xI}{>#9BQL z8w4RHPz*w>C!PsH%pL1u5Mlz=R+Oys2txb@<U|>FIFBI2$3ajnf%x0(sxEtTC>cSB zOOg?USR^M-TXl-H$Sx-qBH15`e^C<V7u(KU0AnNwaekSd9*u2BpXV%2)ug@&Ld-WS z-vlA%8<Wp4Un}eizPpU&+37qE?(ogQ-;Vd_Gwd2Z!}}%(F`u)26NH%0!u~G2DXg|@ z_$2G|KDx%P;iIH)f)MlZ%`bq@S#~9#l6(_{n2#vF2|~>01K$K8=55<IL5O)b^-U0B z-WYuogqXKA-vlA%J;gUch`H4JCI~TCZQleT=33{QAjDkPd=rG2!^Ss3h&e=j2F<w0 zE@#*KCJ6CWOq(FYT%LRrgqVwhUxEI-*skNO^i2?A&Jmvz`C2>94zSW(?+!#t2IzPz z%KphC2=UF}taoy24prv?;lC7wc*wd;ZR`_ZOAzAPc$|mAbVT0T{y~UqlR17XDo7CG z+LQn~2yty%03C$5HY?0@5aQah*x$i<X%&MI*On(nfHQ&+r}U{z`LLG2u7v({kj8r$ z(Q*!T*A=OYreXzD<bQ)fpPY}aYxSzpBIRv$<4!}x9j6OR>i7&B!O}sF+p_ZMQEX%C z%=uXH2!oik&FG+NrwNa7b>@7mcx*;QT7EM$=VR+8JC$G;@S{z6rhd*%034oBtv4rB zlRTkXf0Xo=IiXsAw9^B$^6L6ye@FCNFh=T+i!-gi$km$@stz)&`tXEma8m(qD?FiE ze}eNvq`_crLu1I`qy*E3fjOb78H6WP12%%3P_6HB{)qIDPPcyb?RfEZc7U>eP1Sm2 zTH-#g{wx`Wfx{!E_3PqqprqhTm=9omq8WnPWa!qPZAR-0WN?ldtsl1mI9EzmIy_QZ zzd=eiIXqHYzfnpyJ3LZae}2VJpukp%5?z0xplx$_q_o}~DRp?HwB8&kmDtwx=18e? zgF?y0LbJo+k<xl|q|~{eCFV$}^EK*riLB4N9UiQxzf3gPQ^g~t^}WI%P*prqS|1)M zt>OpL`YWX0s#O&YDeJ={rBysqTK}#1J<z;GRZU`9c%-xnb+_unBc)Y5Qd%D#DXm)0 zvf`1_S{^A4*#2qWl^;VwRv~kwwEjjpAKk$G^6G|Y(2VEnrHibFn4C$qoc4v-k&K(~ z!!J$(kPrZSJ=ZS)lyqJK>EPRmmM-gth}yD6NEg5;;Kh9bXoX?&`PyYsVPu^YPC{X0 zJ2KLLg2qv&<@*l)BkwQ}WOQDu$=fdnWR;Caowg9`r@+#d*v<}Pzd4SMwd>!H+zn(; zF849D9TzKj9%_mot6(a??0FE}ct>^y(r**#rw%UTa4VNhPAfyV6OCK!6mQ#~69KHD z7A-TIOfc5+fyn06wz7;%+_X8x79PV~CZtG{WoaVXq>s=Y6;kypZ=qX@#vj>>Sw@Lg zhT)2uSE<Y>Kwo9{ROCvTc7vMz(PY&1JN`-+PA^$57iuHr8Yy76W;QLtO44gL4nsAb zB&uAvvRlC*<Yhm^?Wn0wj_ZBEa^a#YRt7Z&-j$_rdk~7q11^oo@wGfrs!O@E@I2IX zpESY<<_d?*Pl@|`N01LLB4-X|_8z-}ACc!Wn@U-k)s*+Nsu~G7=Z4u@A%a#w1+tyM z8uSOL&^1KTlEUb`RCZgKU9d7s(NZwWllncyd>VcT4GQ6~&}u$gxAPxaDD6xuA>D+T zk8o>aP-5n1@I0>jmZQP2$UYBk1|OAq8(D*iAmc6j8&q(}D?&Dvxtto_SsswGYcO<& zJRwC(ShSp%HN2e7ivvt6AbuT-gFBg8$<zj1#&djJN<2MKwt-pmN&2wm_nFPc2y1sU zlxQBV3m;|SRO-!(m0<|1<|VpfuZ3k++jR1aIZ~a>l@S1VJ12#W=Tlv`2{c4*gduVT zvxHkqc{7^nbY}>2q&u4SU5vS|Zn{!YnsvKeF^T&&0Ht{`iiUE?B9!4-LnlLK8>wK8 zeAduifM#pxv9ktp&1qCIQXwKIT;S8pYcnAI4C26zFDhB5PBwxLDhj$!3#wE5P!KII zn=W05XKYnzP&xVeQ+;$F0iEJ%utx0^u?Z!2Zc^q)L8-k{uF#cvQPY9&SiB=uEVlMG z8@h@m3#`3knF|ZYO4e)d0XY!CqO$T<LPv1k!8mi^!*eKE)=~-x_*j*1KviDc(5t0v z*Z&~pH7(`E21-F#-t`po;z)`?n9%hx%K2T4SZJd4u}nKWe#!cc_FNyME&ndL$Dpy- z$Jn56#{Q_0zY^;L?OO)<c|;pv^RiIx5?^Te3&6U$l{IWL2p(mf)@;@a#)^7&<5OD2 zs?}#&k2bLXQ0drr(c+JpT6WeivK}|-j+!?N`E1je_1%ltSx=Uchuw>@BbuxOB%0V( zem7X%d;eux+RqFX9KKQLnlqPL_YT)WJ1gmk;@)w(-8(9MFuQk#Zuc2A9~lPI41?Gc zsLum(b7VhQ!xZ}9QqHZ9cw7X(r;7DE5i4B9{4-CnE^QzJY;@<<FSagA>TW^2PewPp zN}iz65%XfFgZ0%(F5&REHLs@cQqAefQ1s_0zbVgqF1m3Z`hNygUB2WS8tr0R<Eg&Q zczLQM^70`};!N>847%kLwA_vJYJO`-{;Vmj*k6FWqVf>o{MfwMt*FyV170()rs|s- z@1_ua_gC=-SEJE)%&TcP<vdNpU+hD$Tic+^x6F%;1G}{?8r(WB_5?a+?N|+>5tb8d z*Wf+#V#ks8Fb!^>R}+|4-KJSvGI-Bz)boAkJQ=M$Vt0z8(eq?1Z!qAM^J47T^J@5t z!Uh%=0oyO%04bfzzOEJi-0;T1;eF6@bJ41ugS3QuHb_HuPSp(w$N3k6^7u09hcm(T zOBY!u7+^+>4?ibV>7ovqI42Y|)QOKLD4Z6#SW7gv)R?Q^gv5#^i>ztYQ=tXpyjGIU zv=%LY`@Bj{z-jv%b>>w*2>H`yXk>I%C6qn5G=v%ePB)Wx$Gq4pX!+S@L?H%jz7?z| z9kEF(@zY|p@1hcmtx2+A$ol00G5>}!P(DrLL)#BDV!oC`2`4)1SE2z1#0LR^#?BKT z0GY}~Ld)i+qJ&E7nH#`b$h1)>V&S(`FbQ{(abgvHwu?te;7f=C{9mfO%bL0Zx@l|Y z3T^FNp{<=Oj7u(U^c>LW*&bZQc^lB^*&b4}6zK|W^c>LW*>0)BgO?T1=-D2c+l2IZ zZCoAD_Sqg*iRUUSpzX80PySX?YoqIcCeZf2wFj}d9xJbXWnR)WhqkW~)PUyD_O-Pn zYYXCUlUiFi4`ezp=OBfQR?Tj{{3Pbns@bh6KZj{rHM_Ot*OOLTHA4Zq7^@_UDbP{G z4zL=;3fUVKJc2@xR><BMpY^dkhH~}BMRy?`cnsz0jTa!}F_f#<CP1~vP_Ett0SX>N zxgtUwX<EFwjQ}PI(CU2;UFhvEK%2)<uHIw;+C7GH_1XoP;q8M8c~b@G@EFR~J5Yd5 zkD*+>X_c=-&o1v1(oE021)$qwC|7TWXuZ<=Ddo%*V70dZ^VK^v{s`1r=P{J4H>->t zx6xxLS8sOuPypw94CU$_5xfg-7kCWi>di_24ZtRkp<KP=lg|Qev-e&zfD^0e^79&x zp<KPW`6PfX9z(f$Cy6>+y<O-^@8sxfpxNf#NSb-EKLNPMV<=azOLW`rF_f#fASeTa zhpm8C$Pqu!o|!-^WN&z?hE~Y&m!U_T+0t{=N_q~N&mvv(4*19a$rP=S;{mt{ViOXA zSZ>8Xfbcl`H$?;F?6*=wP>92NFlMjNcCP`gk^SoOIlv5PjqK-hP{;~sjqKOtE@PV3 z$bN0^cBCt`xp9TDkfrTr@JRMxa13a>89bT&2PtT~89ZAyhxxSK40dLtU>MMLGkC4+ zB;*hL2@7e!8N8jXU?B}SgZImpB0v6nTn2xDi^JBm%6(3&=sxPhC{~9yNV3#dlNjmh zDqKDF9b6;oC%F3RAzTCX46aeN3)h(X2-mp!C$0&VOks^c2nJf&497LCCgPe=GjYwT zPF%~><*ksY)*+o!U&FORU5#s{x&_xNbtkUX>X*3Y)w8(PDB8W$sy(>YsV{J?S347U zAyx0-IzTPPfGemkkZx2d=+LC<acx%rhrKV4ucFBI@9OT`ch9|@o8;c)CY_tGB*+#P zWmSTpqA0Ss00JUA2!a9v3MAmZ6L*vm(9v<1aTys`#uZ0LaYu29J8m<m=r}Vv{=VN+ zeUr<)_xZf{d!P5;oBR2sb57N%b55PAuBz^?{&qJUJE}oAc2Y;+*jW)7q)wd(>-Fl~ z9{5^=QZ-y2+>E~1RgLJ5Z!@T?(MH|>z4`Fpn-BlJ`S9PH5C89MK8$elVHleaIVXg; z`7qKw$(wL`W{C7ruOdyIaTI5Ueur|5f9G(H%0<ID8!R}Ov%wOi<kYiAawNWS6i4De z9LACO_sH#}qR8#2b|byBdJ@ZnIyDS>>eUL!cTwj<W<T}ANRGsxz)CkY4JqB#rlav? z9Cbd9J=Neti0}3pEcQ}=#<92h9>+dvEYka`wV?M`6F?uJrsCL7&Bn36It9l8>P2WC zs7i)majlj^a<JM1D+j8J;o(7QF1#9|ELdq&Jt1>~^5E4Zbt34=Y63i;qV7kj6IFNw zR!J%h&red@pm~}a3wpZRh~o_PEK+8w7jc}Wu0_gh^(p8%>T4Y5sx3&Fr}lzAS^WdY z`N~Af0`(=1r>G>33snn_i&O$$ovO-kJWbUiWwELPy+m~Zy;L>ec)EHX$7QM?(wD1) za9p7d!SM|HPpH=bRKz|ARlr@XM*C0@xI$^PM}fdZ-)J8P0xOnAy98l5h{Q0|ZU~7= zq%@KkiIkxv#(_XvG}@bRL_iwtb0LGoM*A`ls7RyzGt%Ktqn&^Z+-S7lMMx1V7{w6* zY_vazHne-Ay&5UBq9%iFvQ6Z|=SF)L5>cwr-T?u&g*^)Cqe*-K<yb>C+AqQ`t{5Bb z+ffC)RMco6j8eytNJATz*^TxcAaFmc(e8ud$CLO6TpCYeG4xCzu?oaQ5*09nE1gDr z7i1=pI1gEqN%Vm;Q%LYb+b5DZ5Ghkh^g_x>B%(-}M&b+@olasdh?ykDf|x~O7fj41 zaV=b(Lt-<Cxg>4}F^|N{h}+2|?nBCa5|4mbK;mf-r;xY-L0(8=3hKUy#B30!l6V4H zr;%8Ml*J_OL%S>?u?^Ojl6VDiKAps0;qx*Qo8jSd61$PLg2dHu;|vl@QT$92KOx{N zNsNNbDiXU8)zu_g(4b8uzC%_siIZS!4T%kK;~Wyl!q&MY8c}LJiI-67Iuer*a9l?< z+BS#{B>JHEuSi7T*bOA2NZCljfWl2A(y+Ce#04O3Bryl=brXrh;ry>jJOg42iE0qP zCGlq{yqClsuyr2^2Nk@Z#2AG40TOHA>hDN&gbc2{8||-PbSsG=DE@mAb&z?8#1fQx zn8Yox{s@UX;p(F#mO<t*5)UHlaT0$3v5mxq=r(^K(E;uC1c_d##gim1K%Ac<aXlP+ znnVq<o+0rzYVj<IF#Oq0;vm?1j>Po{<{wF101uxh@jXnuK;jsb`V)zMaP>tJSHQ8C zNPLB?9VFJHrZ1EDBNXCV44nk7zDnY4D142?%~1F{i4a=w4HBi$^Ck%gns<_DM0MUG zF&28>CUF>Kc9D1<S?`c|1S#*5xD^#_CGjFmd_bZKb^nmWYpCEyB(8_8k4ac?^%D{^ zA@eDTk6`pO61O7-H|=nGLZL}w7zo^JM|&Z3Hi?e#CqUvSD0E1?4w)c{L8w=VL_OTV z)l;KA5h=L!*=WB9H=-nJkrE?u1@y#8bcUWH5;I^TL83Q`CrNybnz|%<!Lecz=Rr6{ zVi&S-^AgPj&A1qAwC6!{8HsNZ@HB}}kdh&>3RT8ETXc0~Rgf5ttSpItqIe~V-$G#( ziCbX8Be4c4)g&$hkt1;p9IGKQ7z%4a7~KaOsNqrS_+mt^2^BC@2+~T8!_idh5Sm7{ z27RL0`8^67%Gm|WhUxqU`G)P(p<)0W|2-3v&Qs)a&Rb{?eCF;+^hDsMo`A${>StKA zoP`vyoUbVmbDm(SW_)E3b%;z;78ewHbrJ2Ww$Y>c2}r1h3_V(eqp8lp(Nct?2f$`` zHsy#0wqvdb8*!({7L3=j`F2#X?J_lNxI<7Xme)N(wNm$gd|}YHJz8~4A^(5&!l18X zs+vR{|NR#R{c`iwCYF004jSs^5**a!b*#6A+F0ro9Bs9wGwaQVNsc-@%X+8EP;Vo& zXf&#MV)jm`s35JC#%8Mp)b!q5sw-Pbbt7@K)p<w>sT{`nq{6oW(McY}u~EeqvBA$d znNB!?CHQAL<)`4E?L38vLnWPa7lI2pS^mp8$79ApgMTy!|C;Tu=i#5B413*T5+;C2 zp%sM<`-;;@VEe+aFzvvqVUMK|Q1)lbg~&ORSzH;Rzn+Q8>`J@`&acM@s%I&(#=&bt z9X=ZeHBf5vXSiXh>oJ4bYBBT#)G4TwqpBepRPVx#ka~C~JH;r}ETX<fC8FvQ$j8)K z@FcDlL0gf^p&kh}64gkm={UNo3X;X@Zb+uoZLn3Met=}D+8?FLR3GS1tFDmDsE1LJ zay5HCPtXmhLKaxfFd6%&wF1GH^DL&+L{?xHA_^E{<eF+cB4Qg+wz?;8^~8H7H$y1! zOa=VvRm|HjMso3r1xCEL`*$#Qa>2qGM!Zk#dJEMGe2ShO?;GQ-otP1#hWP&0iBM1( zDzaa||KxI`C=gwWd?UF6WD!XqfX>9fBFDOmqRFDlIC>C8tJ+1Yv}p1Sq`E9cjL@R0 z5|XfW5EXdVPACW+ZX$5W`1vqWnMoXZER+Sf8wD`7tw;mz=pZnoV&8xkj4FWG3X?QK z=dkQ(s}sspHY85sd$j?+zMh!om*wm0iRr?G0{nnTVn*aQP?QXeF9$PIax#JI5Q)Sr zVRC`<#(<eEOuZ4}>+6X*)=4yxNzB{Z=HAH((!P813*B4byBDQDA-=wzIK_GjwC;<E zMMa&`XvH8-KSTW<VOMI_e(da_w=m))mRJE~M}|#+o3%=AQAeWaKgkY0GmaI&+wX(% zKk{`5OeZDri(JMsoqY!TS@H6>k~`#)FwThNewyjnMEwKNVUs;nf=v=R3mqysOci|s zl^t(DcJyK%?%?5Z96ImD!Rpm^7}-Y6B=rCf{h`Q+>_!Jo9@Rhl5RxKsbok`a{VPob zF&f07a~cOrl!<tcflILlKC$QbknXVp!^Dp1+0#IWzUzRK=cX*H7&_^Ags!pnFe*6` z2e12a7&%h6MK1*tc(4<4?<nKBZUk;aOjCE3F(VY<u8GuLW%q$e2Ke>Q)ZJy==$A1< zd#LhwY4_+xB-ODv1+76mu!|U>wTNbFe&BJWM7c@2GYe}0u@>r!mPlO^Xr;g>IEWUj zJTF8oqDtQu4YiJk_%pQ$2t-S8h<An;qf>{d)IH$LS`5&s!&F5KJ;E^ASyLla#V~qO z!cSDE4%b}L{NY&SjZ_scqgcjVf@q|U)LhQo%5q1kig%G$Z}K62YLu#Qp|ipK%S3Ra zRR!zVUjW@wW3;_Sa|Y`&R&yhaL07;;DD`SFP4wKg28%Y<rsp3WtlD(tzo*%q0lFT# za{}nU20jNJ{WA`A^qTdsBpT!_VM!U>TWLg&W0|N5co2(rz@c-Gd;uf04v{J8o1snb zb<oL@LsL_bjbWx_M4W;gkxC9160_H~v5+4b;5U-J3*maM<kZxiU;<wpgN((xMBu1N zWKt|13e1E3k|mOp49q~8k|mOZ-to%`;7$*4184k6#HGF@qEh|PwajPHge5Um%6@5> zANK_p*PLyRf@DdND&<HPGWn>tBmp2tC`p>t6Tu}_>Hf&em@iO^tK>6N73M?aiZz!t z-(b0vDrJy!M&xd~QmO)5>C0pAvcBXvmHG{RS<Z6fm5Yf4+*S%s(41*LMD7ITQZQux zhE<)U+*SxC%`;eTvU2Z4UdAkA%}-P=z0Mg?23cUZBj+%3C#k@2h&9{=Db~5<JJYPh zfHe&Ifv|yEEn2W}y4@E|w0OzfY4&AEnZIP|Li;^bW68q#i);&7xx<bdXGD%+e10|q zkI|>UKzr$9F2|eDSTsxNbMh&ePy-Z{zLsU2LMgai`hHsCiDkD@`b9Z?2%U|dSNgql zj>w0Usa2YZqGqK%RFWkkJ(%-5m3qfQ<j#hPWa%3!bsM~wz2c=iRaQE(*_EZ<QrT0H z6*3}CsA}mh6<7^6@)OFH#?6jTf{AX&A$|?iW=gx8DTUM3<hTDydz!_+LzZFQw*p*) z=0e&^FSD3dl197|dXuGxnyGFq*pmfE<O}kPq@{=Z1&zoxh*{}KGe8r1&M14*I<FdW ze?=BJgBEkn05%L30pG%=r4GQ+R_>YT@yf!A#!;VQFb%3tv3d%rFiM5h<YlOkx(B&Y zb>4EEpK287r1}SBTs0KA#p>zPU{M_fZ6)fx`S3#BIg6{6bxXNgc^;)QY9ln~)OH+e zR9DE?s(#SlL5)XlM>PiWozx>sa6YR5)-`o%F}$r;)sSgWm#*aPw!P@Gjp{X69I9S` z^)YHXQpPI0X<&>~r$h1>bvIU9$ExSx$#Lp?OjXCL^>c9BMcoFAQ`Jz^6n*n_-ZHC! zhUw}9XkMfqfMm0J7k1aE=RvPkW8leIDhIF5R_jsUbJRS{b?2(?&~TngLfiSOGd#IK znW*oD>h9Twagj1%_hR)UbY7xvg#Js_+ep7m0fYyDfpZXz7WEq9f4O=TrLIu7Bjrjp z2{E}!)u9$wtK;F@HOhwFYt`A%uwK<e{yOypYH>YYq`^%JbvROfrItYF4Qeg?+@!8S ztv9RHNWW3_MaoU;LU{XY)f4Gk)Ni5rx9TaBy;seL=KIveki1|08MYo!UE$&HR5A2F zsE&m{Th%s1{`cx893N8iA^ETo|6)8spMFH8oE&-&2e9;GN)M0bOBaEATyr7w=}F-J zpt+>^3b`jVmod+p2<}PE<;;QPp4MEwc^J88G}mDMaV)rJHP_#Wd`UIWsQ^23d>xov z`tK?=hrWpQpHw1S$x}%@`&o0QOor)SR6<5>vkNUKQ@EtL3Zp^V)LaH<EGn3`%|Hq| zBlE_A>27vd3nqFV4izOxi7aLEQD*IWCf~s1-As;7K=K+hw}r_M;1FMr<R8<2vQwwy zve5j2c3-m7BgMmaj|I0wb0IT+47gV`mox*+dsTB8^G0&7Yc6MYpz$~D^c1XH>dha> z?bKX@S;p|ZZKwOdLVxpI#%`CLo({=Ia}4YGuFe}_9!u^$J3R+^qs<d&z12>0bQ^DW zVBRNoniJq0^Gnw1Gdo>}yz|X>n77+bGs+j5!)g6<&0VZp;0w)NY97Pdex<o}<{w#y zuQhkM`3UX(MRQl0FH*}M&0TH2&T`+{>6Z|)Yjw+gXQvs!P3Bo_oV|9sx+At*o7KmI z`_WEcj8Jcp#Yy^acAATmt>&TdFa38r&Go}J^H6&Ilbz<!x!pX0zWh_ycBgp`wfthI zIn3@h7o7l31=5EhE_;kf3)x%E+*vRmJs*d7JqnLczZp!?Kl4(Y|LM1a>6_q!p~Lug zP{OF8iqpG-X{$5mNm2YxFui~QHzFs~>Jw(Ccc}OS90n`+*r3v{g;K1YdB`LPyb($- z70qJj&5+m$$vlzX8IlksP2wu1-wLINpvoEFhmiP?ldq4Z-wCC8wl<iXsPo-Wn(qTG zG6%2`-qYN2b0S0gekjceyxIJ+AGi-fX-?Mb%rv9$Q7FwN%(dngy8dxUI@vaJkaQN! zJ!Rfcou7r$zlG#>^F~U3u07jh-a_t+P@213f9$jz+*cu)K~*P(Vqb@TgBXTXr_S*5 zFCm_)N!4i!+}a~dMs@lS9pzgolT)1-(7mBLD63aS<YNZmOS3~a#4g$khxihtB-3A6 zspSl(1n|#Rv2Lh~>GWT$;(=(4koi8tvd1cB509CDV->#9T#?Zbgw4TlEWOd9w7LpK z4SOMkrY%^p*uELr)90SD)b`-c;<@t{+n+!nmzy@*z6h@GKO2jhMbN+al#`a(_rax; z<}93N--{HH*#H?SH4@>Fl*7=!q!gb6NU8N8q|{3=dhpT1huRqsha3#z5tJH6;%c1g zy_TFb-yRR)-XvClIAy_UCmE6Htk9!YfN_Wvv*yKimt#<u=mZ=p8sJMbQHcYG(I`7# zWPf&s#$cB-DAh!%Ce$;23ViFIzBia+m)67R{lO%|X6Rw`0nM3anr;1HFv*@4GJDa3 zt(r^fA>^T8k}aIkL&(FL%jqHH5zW<`$I*>PHP>K7MpDh=!NA#YC~^dcr5}SGtKdqs z7Ke(b5#7iS9P<ET*_X)!n0x~2rx!t)qM~_7`7iL>Ds!32^$-j26LXoWC~ssK0e(>> z<3)L^B9vTux{;}t3@rBFk02*!QL}HRbJ0I&=6?&1J#-T-^s#P+(q756w^^C}Kd(dI zKK-PHM&^JRFQvgu1Jh3!JMdZ%1qQ?@6$-x=1v4;3m$s?!<S@9wVXknWQsG|Ie4udK zRk%|O+>q!mDE5L16Zj?5m`c>+j=Ab^G$e=0eTmjJw^<$5f*mFi*iDvS+!-!+Z}yOV z1V#>(+`VK+gFQ@ge<E83#Uu2s9#p2o-yA%V6JZ;yQO5ev1=-dVkz?2>8;?}FB0Qwn zLbc!z<Q3sBvNP!=R^|vRh_aQH<z*KkHwm=7^0a?j321rc8KLbYAneO4gbpRAVf%Gf z=vWdE_T~CER5A$&`*KgxOOk-FFV6{$7H<x~j~c573<z3YdFMAl2BzT>qr5K8VHi8@ zaVW1B#t!g<kmX&ZaYBKkO)&cvvq;PkFL#67PwD~XM6fUKYF&dg-JL4JMW1#-cly8Z z##^WrwXbLh>_zP>`&S%r_<jhbH5F<7k_-YMT-So>?{eQ;C~!6+UNJ!5EtAu=VxT@N z1GUsMNIG^-&fSW^a_)9CLaR<f)`8ZyP#0z7OZB^l(N?H0)c}I{M*zW4Bf3)dIKA^A za6a<0v(;9(bkKhvoG3(aqU=Je8O1^bC#vj{e2UH!oTzd?O%t4`s+-Wd&At9=Q#Z8v zg|lJQ*^Nbpp`1Uh#8Ek~oQcs^Ie*1<1HLQPGK&{(&hd*88|B=HL`ON_fddZJEsz|o zoc>6}P4xTbpt$KAifbD@200V|l;s?Nf2QTUy##5NvmNGa%Nd3XpMd2&e>x;>XZ;FD z+D;1+P21T^N!!`D9C?m&6B6-lv#)S<VLDDd9JCy#FI{q+Lm(1xoElhg9OuhraLI9g zKMyWBP9;>2ah%KG;8+yEWz{&xSq$zN$GHIoj&+=GQ0e0wCky9~cbsN8G2U?|!NLT` zc@GvQI?m}ZdxGOUhD7Lo45yq5I$I%W2A$Iwvyiih4u+gE1jGzE6JWszJMW_$o*0#{ zLSE9Tq4P=S9e8FXof8;w*O|faxXyiZ!4*5r2pt|ZoD8p3&Y8*LP0lD>tl>$;&)|Of z#qbCg74o(ww|7Ie`AW3+klYzJ0_R}P@E#Th_r59TJz}wWJpq;S{*XMPd%nz*g=L=7 zWdeMW+Iw1<P~dmC^6{RDo`pUX3lIsxdsdiuU^toW!W0FLBJ-Rui2$cZ?~gI=putUV zTJ@f{UZV#BD&_4+zSZWzD}^4s>U+Rf(Y@CSJ$Sv)gEtC2c(c%horNB}r9BAL)19}4 zDZ%FI7`R>5ar8<+rM%YU2|e-w`LNKPj|$!S*msA>9o{FtJHtDG`LxiT&kEhy?Yl!z zDerT6*nxo1s`rKU2|W-{DQ{2m$u<wZE%e~KLJ#)(9&k+ZzK`_8XcP-{*&oagQn_vc zf<1YE6{f)mQMdP_H5;lu0hRLpne5dQy-&J}p|l}Ed&2u4+LE9gc)*pC4YYzQ<yk7) zioU0Tr94}S{)`|?d4QH;GglfBTJQiZ^%Bg*1zO6BspL6r_JA%$of=2TOYCD0_)-P- z05BzW!wRexIsq_s5VXVvV9HCYWVRt+2VhJU=mf|VIgRY(0cA?-B<zA$sW}ZZ<yC1e zSpu9X08Oz5B_%5i4@gs_HPV!q^Xn#1Q(lecaz=!Xc(uy9oL+s6@wU>dQ_08MyaL=* zfmgtrD)6eS<}~1x*G+R8amwqiq`PRyDX)j-H0G4oQ*#=0%4^VEiv9z3s?C4kPKp0` z%mTMO;7--UtGM7!VT@0n+AAM9Ku;C;2<)i>9|1l^&i4`MQ{-Z_1^6lIPcl}(pAx%* zKjq;;Dy1|4l{Zw$+C?K!c?WAwLr{6cbUBSd<qg+dy%C|49zdvGpvMA2<sG4t(cXEF zfkQ<Le*Xaw6*&z=<&9D$OVIr^5|wwfj*iCs@kVP-gFks=G^e3kys?_oXjI-f6}ybJ zGmqn7c8rq8j>SfV&UnD1T8-$%1&_*`sFF9gc?L+T0?&X+Rp1#wskCPVrSgDEB?GA- zKY3I4@eH_B%=0}1FcrCkV4iu?^PUlz%A27%ct&SDKvQMlOPr8VNpGG?cIcCj8PKT; zJOeycfoH&{63<GAPvrriN_)m<Cms;0$Z2FE4-i$_Ga2!LQ6-)k5gPP>QFSk^6FVyD ztyam+ZPuIjvA$*>>j0|KaUsBl2c#-(T?SV`RTWqVR#ky@fK~a{Y0v{$RRiqByI^4z z^Db7&&)Td5ud1N#0IVvgI}oebcX9We1w9~E-AyfmSmj-<l7sr@BM8u{0xdwTD$oMh zDqRP{R(Zg!;#w_cM5x9CZq;7u6x=Frvr4|+rt_wKbpCoDodB=WItgCo-I9-sOuT@v z(s7Y?0DhH@i%h)$u#&h4fR%T9zQ0IM287l1s4e;no$&x+H3GiG1;Wa^S0%?`3ej@{ zP^=1Six*`JY6~2zf))di747-sDUhtRXW}QIth8t1C$Ox<Gb2KS9<Z!Fq;<iv^8TQb z>)Wh9xsUay_OT8?E5F59&;y{=RFsPgpq2N$O4b~ZuLCfx3hDq*tAaWJ)k@dl2L@t? z)~R8wyq7g6a{_>^_?TJd1Rz_H*2q@gYyQZFD}SEQfVR4Yemq!-+d|&kD%sNJ2hgnw z`~bXFfgixP(thyKqW6B@4+30yttv_-8sW<OK*e^zdd?`L6PuACSEQy9p-JyUW%WQ> zTp+Hz&s4IyUp@{%xhk*^n5zQ&z_}u)ajrZ7UFo)z)&tU&ZcAxBKwas!lwJm`E59vi z&;!=h-Lx)PSKbdQ`G+>^fV(QN4!kRE{bgJQd4E^#Q!-l5Pl5Y~D&7H3;tt3wi8bdJ zU|x}~ECJ?~2hb}rxe{y=@PK+nMx$PNhAEtez4Cy2MN8d`2%YkPd({m-#fdys?}g0d z@mL}0z7FWC0uO<GRp24Oue65*zw+YRf=0jciZoZk`4IS5ZT<oPOZ*jJD$h0LoXZIU zmInwdo`JPSgpPQCz<QBh2?Ul`ZYJMv^9m?f1zrILtH3MZU}>)e2g@^4?=WuKUbU9g zNLXIZ_k}(J3rmL%kpmc(M9zrNv<EP(8L%7|Ff6aDnd~zlA06Of75D)_EbRvYvAmw9 ztOxNBfu{f<v6z>{T|BIZJV0W7MV$hP<@Ga@SGDN`Dpr9`z+!2gvOXJR>hoKkLVAPE zD2r)eEDxVv<~dNW&w-nfA?HBAh|q`!WUNM{#R+*8@`jnociSui9IL=0(6PiKzHb3h z59nC;vYen}c}JSbqXy<{4}h$KazMz^o=SZIkws2JWO-w>-!W6JdB&Pid3tKfCC50; z;UN!ActFYe0`?*V#`1uYH5=wC$ixLD%bRK@Z*KDdKv@MI04Ym6C?Qgo2dFFxhK%S$ z{EM)(2dJ$1V1@`(mItV;!v<sZ;6r7xY{G}i;`L&JS9qtGWxNhd_)uBAB5Nd6mItUT zUJoUFs4QNYBz&kWUOgmu`LWo{aAlup?SRMTW(8N|3C`qz%HldW;X`F{y_xW#vbd5< zOoid)W*OH`2_GtptCfTgmBqC~!iUP@OrG$evN#_ne5fqWqX{1>i!)ckhsxqSlJKFj zI2$B<s4R||i3<3+)~w*@nDC*p*pCuER2F+of*W%HmBn6=@S(D9C+$OJacoQYP+1&B z5<XNG&)tL%mBsTX;X`Gy0gN&Zm&b#W9^21|uzfs0WjzSZQD*2HFx5w>>%siD@Un{f z!joJwJ`u4j+J@TYQks4hp5#hpCtJ}=q{}pY10tDAYkDlAl*?%Oq3|JBuIaslKv!sb zy#qR{>1mX&)bt&+<!Sn0%I7q_l`<Vf|Ik@ytT1w&b^6a}sa&0=6D(V=X$C#lMbqmL zv0QgeUr3qWnr<8dx}T<pQ~y9sUqriuG<_iD2WvXW`W~X`r_j4{M+jY+%#HctKwR7t zUMe?MZrvG4!b|1G34^^j0~yX^tY;xsnaLg3`5=hj96;LfQPO(HTyDG;M>=vQ=zD-h zl)6KNm&#4Fe$Wag&2CdLIY!!7Fr`qziFpOQ;}}Yu1qD;Beh}8(Avd#V3mDZ8kuucB zIE$28a2!S_wYL(tjZ~jgap|MR!EQjEiq>-Qo-6~fz*>%CMK>}?3tg(HA8+TD9M%ZI z9dvwY`dAn=0$ge2mX&bxVkkhks@(EuSBU2VgsaM}h|LGnKR|eb+!-P^I`9S+tc<YR z%?S{$Dz{2<76k}bm1~lm^8<vd$~8;Qx&Yy-a%)SEgafw*DuZCo7O^dXZ7g$+gkdW_ zPz&Z<VYUSh4}&>RnC$_=Rpl;_GCKlgRDGf3><kdDDtD1Et%39C+a)qc?heeQ>dVA~ zJz>IC<yu4mHkJ^sDtEaQN~$p7s&ZEdmr-HDRpqV}E~mnTtIAyy9RttnRhV#9xohSA z?g%@Kx*NIm!X0Uc30IZdAlzs>j2n4I?pMMcV;dEOtBM{5C1tJ1I0=M|1k>@oL#o_p zZAYLxGX3Ctamk)hHD#eEzy-caVZTaw{2>Fsz*-FPH5Kt^K!*ZL(qO7HI4Q7A@b6@D zDU8uZap1gFU}_>yG@>8r_qAUEDF%P>dsgi<t86H`)7W_^p{%9sSwG=+qp99RQ`u_$ zZ1g5oxdevPowyqrQ7<mSM6BL{Op!5c_~B!X+NR1{sHhl<u2{c3*&%WrxWLs2N{49l zZ|G5YQ65d$A*KTxc(e*kT$&>%J*q>IF#Q8Bk3mjCn9+e9qrte+P;&xf$rOv`xnW}W zbx4UeVE4&;=y$-ReuR<0eJ<vgSanG2$c*~lcE@llh$QE;j*$pyBk;*I<VPcW!1UHy zNJ?~iX<i+i*J>G|H)cURW<3I#%1p<i1CbZF2qR0!gwRG{cLq#S+|qk>JG#Oov0n+o zp%c$Qez6q?U9=v-?O0NJFzMf)jvYruMKXL>pnW<!vGd_y{W`lYIPXwDdUYXreqaRN zM=0yU!XyKSkckMB3%rAVR~HqgA<!cRCMHayJhZ5b3o|-!Nd!4X!b}aUpn`-jivnrp zB!y`XoQ9LL&J|`|;ItWFiiO!Er)^zIm@RVN*OdsfEf8J<u~K1n1Qv$ClnK)sxIPLd zEzF+qA898ejG=~4TRPjQD;Ex@;M*)!AskM+o5*E_Yf#}I=u)L{jVk;q^QwfyXO8Y= zo_;<$RfSI=S1oyqRQOVih;=#PnsFjCuSU3aD*PSuYK7aR!b2F24#I80NzNE{6mFXe zcV@Xx!tGGuDpshoaIGqQ1<Tb5w?~DW$khvHm|=d-wXTbBNi)n3L)7gjT+R%eS#Vv2 zYcRvlvRpUe8qF}Vsp`55H`)x(VYwc{O*O-}lItnlA~U?1k`2N&n_+Hot?MP+Iy1bG ze)bk_lNmmYG3z7T7BhSxCHo4u%?yvkz*D!sa68N}=lr?@gljd!TsPMB6K;<geua7c zg)^-1U6?NG1_+n5!qqrE>IMpzv%)t093)(W6~3Fk=;vUKR=AkG;6TY6ZH4EPJ4m>x zR(J@@4H0gU6~=UC)HMp%Y=s?iLxo#sh57Z-x`Tz=WQ8-#8z$TqE9{XQF5EUN+>zWN z!tJoayV+F_6|U6^ze{_E3Ae`z$0#{MIKvJ<#MA0<;gWXv14i%&;c|BPcyc3!Yp}!L zQ}RgR@OIi}*7hjjFbzCS$x*^hwZpw>?`Yu`+2Q?YZ?tgDctSJjBCunu(>ON#fT65z zLJ^07qUBV0f{YDCYB}f=Wl0m|WFfQ3J&=;&D`j*Iti*gB<a@YbtMLxZUHEnV5X1Wb zd60-ttmYGM!`MF1PyE<V%<h2rvE_U`8Mcf&b@48XPcx3o@S%6u%FTh#_+?+hD)smT zU4Wf0?h(l@K<^q~%8@s0ZThoL3x0eiM!bwO_Asnhc)*9bQNdutbc}SR&Riy62XBpF zY_VZ<xxzb>DRRk^TZy{F7KOY^nZ&n9j9_QXY@N!Sdziu%j3pEmSbQ{#9T{*lxCYCj zP8H7U|A`dS@O}V%42Gs+ln**zQA)eeatg{7JMj@np}l`GVdVbAl`@`%^1JUAub_?U zdakkl9`AvaDkIpBQ&72cH1p-KuNq*V!*cb5h)LZXXPT7B&0UBYYL1m&%0dU>j5Bh> zXCY~xmA-~aElB#816DHgAaR$S=38hMH!0|Yyw$*ikvkKv#J;n<Hz*-)2*m@ol+pES zv|;W@=X0dM_4}~K%suSzEoBLZ^$BE*G?5{@0vYlfGR%`WR}Ywq;5kkwq*NL13YNV+ zM43U9;lYS5Xhf6`WY*`-SSITz&)`!3w+>$&^ivifD4k=@>Fp^5jH@qqF3G1@(r&@u z9gSN$5ocpQ*$9rOvKO3(nIe6G?&+opJ_7rl<IbPjr8^t|=?9$m+f!}@+0AvnX;0bK z3o^fRtRvdo8-EmJik#B+lt-A7aO&Dq<}#(i8PJ}R<JHHT&dBzZztj3ohwpp)6+d+t zN@bjd1u3jyxwED%#l4pP+!!p!g6bNkN^FDQBEa3F&TVaS!7I^>-D1we?J27dK?>^M zo-!9BRri?letXLL;gBhIzG+XXW2uy5jcoJMMo7EIoznJ{-K^VvPF;J7yFXIycLubl zOu$LmE$WPHPkHZR$h_rDZcn)lLqWHov#>qo3ARVbS<{{}2j^$E66cD76f7~jg`Jz* zQ-&fX_lomid&+vo`eo<2_LOz(4N+%TdrDVYFO@el{r2d7BvO*jFYPitd5+xXxXAEj z-eZq@-09GslEDm``_S3HEyewUS5hB2T-uFnOAVHD^mxjd+@8__V{pd`XJLEFemoV5 zoHgw!&Gb9$T+yB~i`T@zac*u;Ig~OH=fU=r+nM4z&$XwV$dsV7t3Bm7dbz{-x;^DH z#_?(Am-dw3ABdFa9T(l(um2F1+U9g<Px+CW6VCqaDQj7aq;pt%%EK(R#hK8Sl3t5R z$$Q+Y;!w1R$ukgYBfV)hlIQDWzB#OugX7ra?snF<l@ETyXx`)8(VlWWQ?@#fwx>MF z!TC<-rS=p8*XCY#K4?$5f$e#h^IdyNfVO_`1V**h`9$`n*PL{FN-^7Dm(!&^<yodY z<}~J0EVjPk{^kt4Ay!e;3i>!^k<h@pUDrwK>G@O{SuKnR7&TwQoRB%eIiGnP){Nji z&{H?txsE9^h6nFjfs|R!ooy-IzC+mK%R2JKX7?XsFcW2D*m#i=GJv{ARpZ9g>5}?6 zQ)RRyWkfq+)^MxFqEuO&$u>qJztkr@1=G@<tC=eEtu$A+&k&g|19P0PgHJ0&;8Ewm zyoeDzmDQN&9L*G|M(&4`F>lSZ(zBV=_FkTmTRj))w^->j^65r;J(Fr@cisZWTH2Bi zd1DchOJ-NGa5{P_C%Ir9U-o@~GO|oaKY{r(_HI!6*2_%hOSC#{=?_@sMV<F`TONC% zkv@Mu^5Rx!YN^8fspG>u>t7DCLg_ZMAKopS-HG9HuU>+!&g;bF5Ec~)_X}9)kd}Z? zWU8!5C~u_qN5|`WlafwwD)Yn#0YJ|ET1s5a)V9Tq^$q>tK|>pN-5_hi-%?20QLEiJ z6S}*Gtr?Zr3e7wojOfxFT4)67*Q>~RpUFoyQqhRhxVcl7fxj@7Z#U}0d&oB2U8f`8 zjSw!adQ3ixoW+CT?w*XR=!i>Y<C)*)qvY#@WSq`izSE>%DvVABUq>C1A!ggvM$cp} z<8dX6{fkpUf<D%#oLiVDYl`Y?BY?mua_&b;l~Fxp0fyCb=LyXna0)u%0%wQjq8N7S zW;*X_?gkDJe|EkSE;wyG7Si1v3nzhI`rVXc9ly%rk<Gah>~d!DU_^QQ#B~tl+Fz&p zB87i`)@hB%Itr(M*N3Hbk7ky%j{7nTToR{>nQf`*KP*F=&4@{x@$CtVhAr;sl!I|7 zk%{{PnRq=jrJtmKWIIP9Qs!|cvxRj>;ENs>(~Kw;rHS?I;<-BueoE0+5Hiw;e3g;z zg8=jmSmN!^l+b-?9!7unWL>ayoSzJFLQlJZo~FXyOs`|ZvP_lHd)Z2yi_)X+Uyl(1 zKl=pvXQ&Mo6VMhvE{8x7%UUfPCTD&oo8`U;Afrys9(W?Q2p36TXxTG4I}Gg8KKtY3 zE;F&gZda6xAwbJc&hl-Acau`{mYtKcPoZPHU&NjdVA{zsZoUUJf&{arb#iPHx_?^9 z=2)xck;yUMk*ZU&sT0_<Q(}As(nq<nSZ-N2CDw}aqf|_Wsg|cE$C8N5EG4(5td=__ z7f-xi*Kew>p3!&=?z>^sQhw#`pKKJLv_Z=>`!cg26XX5VYE{aBSuM>|jN+eoe-l6S z1Nm*B)Pge&<6!+#wAHd@a;yOzd03v`F~z8TVxul~2c-FnaTC~FRra{(-99<SO?&fH ziq98-D?6oT89p2$Z(Lg~cTTRE11_nXVaw#2X|s)JB*Bg5Kv$j;YeKBLMSN8+Opc{+ zPIb@oJ0|x*XbiqHAa!X{HM%a_r}SNgj2gV|zeaW7ltN{=Cpr1%eZz1Gi~bpN+8&kR zeM7?D#+HHqUX`~(16p@V4IBGMRjyn6waG>wI{Qf8sAX1bqg$u+y}~ydFsloUo^^*d zx*56reaNC)=J8QgosP+-6OH2Y?$lCP_sTDXb4{c!E|mJ?-C7DQC%+zfsW;57?Yc%0 z(GtH4OXZ*OL|*C$t2!@L+~N!6RjtSiO|%N!I^_3S6{07<jd`hJyG@l*JAB)|Zi(aD z?RJ-p;@Qt>kz`aW;@dGIc445V&8O+lYoX1)wRm3W@j!u3vtQ6s`B3%AOTAerb^D82 zDqp_|d8rzw-LK-}m$lSwzQv}z)cH=ETSo0G{~{%hUtb_$6kowR==h<7%I^y*YQ|+} z*P!<eQgH4}som}iVSy{Z*mL`1T^7vo!HwTVpWL~xp5B-ZM9(3?3a#hXDYZZPLi^|$ z5v(lGbKu)r&-caJ)HBq>UN<w?)^NqmzED0!tMWoif(7yZ_4`^?z7O1#m+BpAQ)SeC z`-zsy>k?z{huULp)L!=&EmCdz)#t<8x5EBed+n4Mx3s?<uGID1G^O@4zkuJpIIO)B zuF=_?^KtV39cQcB==Amnc_@^h+Hfidd5+8*b4zo0q|h=aL!hpWy*VWTj5@Oef*Z&1 z{tcj+GkY=WZk)tZ+iW?;81Vo`IdzV6=QY}6AKDpn#|u!KCA|E(a_=6kwk$hf8QzBV z2k@=Sy3Ck+nsHe~Ch3-K%d(3xcU)B>6LZV<Wyb!!76Zj=jjy<?cnez__J4XIhJ+LS z^xC%c-e;eNjo#s#a(FZKD(%g!`X36NH_@-;2_0BT%s0z2b<lr8e?2H|S(f2+bHYfO z#ar%Nmfg4nh-$v;t=jb|zUw=eWjR-!<WE(o7-zC+{!I45GUM<=mcrBFP9Ai6PMedN zJs02|7+DPi**e2JwukuKoFf2wtq!f?n=NL`jLh?Bu*3YksTuAO9^vs`k=ZgSL)h!X zJ3b)X=*;dF0I93xvde6NrJ)f#jWAT`MYLF2K(Jr3aixKrt$TGqE`TV1>MBTT5bS^k z!47B;?0^Qr#=8PPK{TMjt}`0c+WIY&_@LGS4P<Q<09luZf)_${vKa@Iw_w_3g2iFf zswhDt8y3-nt!xQ`h|7vHEIHmt52L(>r4DEuVmQHxBKR5(6+zZ4`8p1fP{95t{yWQ! zKp;xWa8`gUB54}|jYez{Jtp8-?;|mi3{)Np>nu^#UZP5uaLz!g%fcaN8ORcnG2Gju z0?%^k_TeT<C*wGujY!5hk_h^W51XB%qRmLd5&|nzXH@KN(7@-y&pBF{B)%5SvZJjj zNY0K!PSD3x!Q<0EAvjh586k~15UC88r74aVlEP`<Q@oHA&IoNgcp)iVA#})@Hpd8O zg^oGX<{Nm{LC2F0UPuaiLYFv8peHAE#<2K8Qn<!?2=*#tkKl8Qox?L=O!1ARa9vzx zOodKogzJT|72ik-cZpp`4;9}?3h!6UA~7RQH<#kCitY9bwDXOma967X{&_(gOBf>( zE?R;Zn(|7Lc?IgK%w0I*y+0&dW_KKI^K+yGOq`yEV=hMFpjiW}A+tNZGB+bPVot^} zYA#1g%nU;^Zlcd%&+XwzPnfNsljbGJb<KN_Qfy9u=9JllV~P0>q?DQuKy#T{1DUk> z9?~=BpO8{+o(#Ie9FAkw>;=1(=CjaNWp+U+&)kFbYLhqCb7o(p)R>1Lx7KVx*$(DB zq;xb#LuV(f(UBBs2(011{*eRTL>XmG1=BCdAQ*~6c%;9}9vo5}zas;54^e!BFfuU8 zevnaoB`Go}%$}B0e4Q{dILf};(XjYRQsh9Z8R~)zeL$H{zy<4I(9!pbuSSu8elrRG z_-0Zh85`3L{}s1U#Kwv_!{IiH*f`x)4U5|-V#nYa5X3XF<K|GDJv(-Ml(g>IvGH0Q zejsOp_S*<jx5aG~v58iHtzgn^Z3-sGNc#$=6e>6|uYggq5@$idRBHu<tH;~1CE;EU zN^#POElqzUvE#mn*s>Cyb|J-m53%LZ1(46F0f<R#MeJ@c{T0{gu`@($w0eUIRz`M1 z!5qbX53yB}vq*8@L##=1&IfoHm}bdYr?~GSwzl*DIB=`tzK7V^BDO_sW0`Zr@2!ga z9%APTvrX}#dF(u4wkuv2#4eCBI~4al#4ePaor?P&ViyV1s?MWtm&E=8-*zkRdx%{o z9_)#7-$RR(52+}(JzOqDk}Aqw4_642QBiJsxKfy$igM4xHPJzEx?V-O<>6ZCJ|pZX zYHh3+=14or4G$ZH8Er>#U&r{BFxc*p<93H2!ya!&`bZE(!$3?oEUv?18?A@nNhA{w zo`)<&=&N{0da|J&A`_1B;butPNG2j`lSa)oNVDaz0hAG>-XQzGsIe}kaMU^;sqQT} z#J*0#?uHn<KA&CM6qSQfON^!Bd(8MJOvgz9=~Yv3?pMWMB7>H)*=V+KF@6WDXkAe= za&pWfp|!DAxX6R$q8W<GgP4B~2>Wduj2LeN6g@0O$1saN7_s{Y;_yXqEP^qgsqK}D z9S>c}q{D8uwyi*Fz*JPqxeN&<MrsmEf3iWC*rk~N5}vsIAm!WLF6PI+iZ_|8-k+Ey z&UWA}9W^6zBT`@cD;&TtzjRg`4hbRbr=gi=bYa!;shbcl$Y=DYxY^Pe;`R895#+Gs zX-Z6AFvFNx!cth~CHRe;S<;SJ*o8lbq1i>c;8Y`cFXGve_nXv|0Gs40-}n&F{HYE1 zKuzgM#*`XudVJ|LV@iXjM~9w);VA=H7dREZ8c{mYw>vew0o>HQ7e?9KKDdsb^S!QH zcT==O{aHA%LL(vCr!#|Owd`IM;&aSCgBX5XfvyTY!Q7+SM);=Cs_+`HgCZ=4%k-u& zzi=|x<wJj5Q>+f(h1>(BZ(1#TSA`qFHb$GJ?2oI$|2PN>C!cLz9bSRlqvGtAxXZCx z;x?-2CQ)_%>Q1-&&SLD8pO`wJ^j6;#`ZZTPwCtZpar(&O!iS9@HA~{we4;YSc)zbQ z>+3#Bt41I`f`|m7az6%wA3Etg2mYyqlV8wHZxa^5M4c8K9}<|lMq0<0ph7%Z6G!n} zWl!PRnmChfYqkuRDki0h@+FlU8Znz-5gEbI+d~$SZ($6GLwM+qx}}~y3=DqjuSPfc zufL=cEclX2Fw_M`_xX}au;5E7!GbTT^wf*aV8Nm@_#eNd5-eDN25)VE@=X=Lfo~0= z;1rx4<`eS$6!$G8`Cm_|CLNrLOly8>JL%g|%#IX41iG46PC+hA1A1W^<fl~}{b`lp zQV2Tw(<(uJTE+QKKdnOjTpP&OU8)VY6}<m}jo@1@)awsy1PeZ}5#$ot|G-A@KYn1N z`eJ1JU)czbtU{-F#+}3x{#Q1NNc&&em_z!eTFC5lD@b#ZfUj&U0bTtP6O7JC_{8l@ zx<6`)uWU4f-uK<+Oppt?a9=eI#s8PFPJP`Y)LQB;sfQu;i-&`nSA!-q{QS}C8Rq}b zuugp)Qx!jo^8bN#>X)0Z4#v3tKg2o>65lj(Vs;c%bRz9inbsWbrY7L5{`Xf){{7XG ze}A>)-(M~HzxmaY@SbuEfhv4(M-2BWd^Y}BDtsI6^w}!hyA+eJ3WxE}QQ>h3%u*`6 z9jkL}2OnRIIZ1`@!JHgX;XOTY`K!Xe#-tHb;Z>NN<0@Rnb-W5+i0L_@!Y))NRrq0u zxGFpyI*V2K@mky@fb|p>=_>qN+)FD};m<IwmZ`8=fg1%Xd@;0Oi}|UYaH~Lt|Bm7n zDqIaNtHPBKsZ`-NVZ925P|ky&NldRQd{Q;9O~W}Ds!`#)>u}FNg^%oo8O}6f{Ax)Q zUo9Dr*&xWTmc+UzpH$F7XyjzP=Y5zMEFW8$lY~+1V=K=BV;B3_$`7JM$oe#c+V+ic zLXY7B3kra(d>Z6}1SKgtP84V4>0Z%nWkv9G_`eTI5+o=|(L(Ea>LVygqD!(BmVyK& zN$jU-f|4Y=30)=N7Vg%GFk|t~ru&e1hFf4*U$_qoV;ez=xsO<VAXX*V7VaN*wH0}? zu*g%oh{YG5+^2;JS$s<7J`?4`w3x+rAKhn#iCe?TY!{};;+v1|bHXGnzUJlrF~%?_ zjUbJ>&s($TfIwTgJLckPi}v}ILI+;;9pEcu?rVh(yk6+Q8-)(MS?IvdLI>W`4p@B6 z%zay!5+g_t++EgZ^hS^^+}1DJy!o)un~w^;`Plb{?_Rr~_}&oM!u_<+o6icp+3kBn zU<>#2BzqddL8I;$)>0U)5?~8=&ln`>aC}?nz;}fX?DZYsjV<^4NTaj|A8EQjNY%Po zyl3tHRhR}NNY(C-)(<ozxEAg|AA=crt<yD>wj;0>uF{-_gm3|C!44i0SPK`h7Q7*x zG{uyyM7@T!Z~<$<CayGMG~fc(Vlpfg39N++Sc_s@zi4|!``81l1ugjY0BccT53m+e zH6unfE?_O5r%r*jZ~<#^OPfx>TCkjkI>4&CP$yt5v`)S@=>pb*oPG`41*`=*d6iaI zfNwAZ)Pi-<pcZb<ubF^axHX!~88N!y0@R`!UK9zag$q!N5k>iW0@R|wCxBXz^Xmyv z3vwDT!Ud=WISp#z0@Q*hm<F|Q0ct@`gIc%%wIHWKEnI+FkRzxCFfHgZy$7U)c#pd} z7(`q^TJS@BMFMHz0@C8gHV*-5QQ#pUEebpYq(y;;fV2<~VF`#9R8K?;09uGq0km)% zwTuR|Z~<t+YbFh7;R4WtT+Y0VJrRHwET;i2+~Jz5$9+8xTmZB<79JJ}poI%Si_3AA z>7D~XivoWEXrcX;b_Jlt<2a`@poI%S3r0o*TDSnTAg2K>TmV{-)36aP04>OAKnoXu z7JL$}0WDkrT5zl{Hez(f1)xO$z7z?dg$qE7ZkSHAX8^P)@C<+!1)c%WLVL!I8!iAX z3Ot*-k7oe1DDVt`7TU8(9JB#wp*<s@g*!uY@Qlu2gNe0~o(Z6Z3qXt8+B^fGMS*7k zv?%ZlfEMDJ09pXgLOZr=4KxDJf}F;)aDit*uE>;O9(Wey5=M;nT;N#@fVm>VOC(+3 zS=3=-)nRGg$2j)Y6c`7dg$@hff^~ssL7o0-2|SAe>%g-puns&6-#QJtz_a)rt#`pi zY|I6o#ez2Lm+oU7coqfLfoH)k7{X2v6m)@S(HG^42t<)|foJiDHZ8!jC<q|%EDE#$ z&qCLMcor`3EI7@_j2P9pz_U1mIt9<d1)jwTSUc&s0MDX8=dbtC2|Np}lXw;`@GNv( zWVQvKg^r7~1Mn<#Tx7llo`u9k@GM;5Srl|+;92+`na;Stvv`r737&-uJd3y5JOiFZ zfoH(8D5x#)EDBl-coy0-nFWDop*<5nfoGvT6F-4xA)XmA8gzkYF$eaF1kb_+o<%j5 zfjTb0vna6s)IQdMXW_RP3%bCw_>@`*Dv@)6XK{0z7T{SFXnAoTEx@zTbs(OF3p@+z z)OZ#y@GQu2G60+f$14t}K(ipJ(JWk`S;(+v#Aw(BnngF*EfO>f7iboxCHcAl&7!~y zpji||5@;6M3%*(H0?k5u!DlUQtBO*IMze4~P_eIIJ!h2BY$s&MO)actY0?Fn#l5sI zXcjKeEN*JE4>XGc`#`fOun#l~avIIT1)7C!NohNvS?HFOwgZ}lZb|85K(p{$k_KI% zS@edzB0;lofo3rj?W<c7Xch(5fo7qt6V1W}nneQVNysFcg$p!`EI39TU=|W;L>*Wb z5@%vr0Lp^2Kv@9Eg0x1maDik&P9s^kK(e5fZbpm_xu$7tp?817lCRzclEv$7-T}#? zz&jvW6nF<D3+>%Gy`Th07PO#|EL<R2kRy@>fGkL6;45$}NLC82gbN%Co@*M%!Uc{6 zxmqJeH(cOYjDi<M$70Z_cY$MZ0!9iQG2mDf_yin_0-u0mp?xBbg$o>uIz~*}1C9kH zHI9V~91HOU9s<UKWDXtz#e!r<BSyn6P%J*A7yCn7#s!MSJ#Ah9#iGCqpjc=xh+^Ra z#o{%ru{4T>3lt0HC5;%>xInR(11&{@V&MYC!o_5+YX%gH0-Zpy&^l$>28xB8)q-N- z0>y&GG>U}_6pOE50Vo!9z6Kf6_X9?ZMqHp+JVJ|tV&MYCVnUlmpjZ@G1d4@N1oj)` zU7%R>fMk)NShzs3c&@D+P%H|{0mVXlDwiNYu^^{WEL@;i=yO&sZ-8R)j4X`h@&YIp z<T6H#CS0Ic%z}j&fh$~~SbPMg6PY4Gv2cN6kwblStbk%s-~mu9!~;RG0Eh+ULWcVW z)v>S(5DR{4rMG}sxB#(u0zE(OgIKU=+(bh!FiUx180WPdKrDF07v~Png=Q%)zWVT` zUl$-2y!MIvAQrp~iTfZHyjF<wS_2>!T*t?K5DTuq<D9+$V!?H9+y}AX3N!A5Sa9_g zp9;eOvEX_s?t@rxg%bBcEVy8Z`ydvazT-ZK1t;OS4`RW|GrkJ8R-4tFuHrt31t*WV z4`RV7Ant=$aHxz|;F=5|7914gK8OXoQQQZyV26qOAQtQdaUaB@6T%$#K`c0=#eEP9 z4j^$K#DXVo+y}AX=@a)sEZ6`>8Ar)iKuL$~hsWfotqTx~-q5UXLl+;R_{o<47JfxV zC}lT5xOlmd3dosk6t4hT#Pb4I_1tfR_mHTsBAKc@)fcU57p>Bw#b+3)DlC%Fi;9<l zEFp=z7u;`?@~puq7#j!wOZ<H@v9Cj5{BI8h`Nf`6{l%UjcTAM&oin;V>7t@tDE?nS zH&^7+l@ZLm7B^m`tD>xxVR5fT+KbZfP%)sJ)76rZF@l6{PUkFY_RVxInve4TYtYTX zn`ohrRR*Q|5xP0O|3plz#e{B79}rtb|B4CSobD%#Z4tUTJs?J@kVEL^^uQEd+NK;r zH>dN^%?_cP(|PD-htSRGA<;!B_JVQ<-JEVrHG_Lcc}GKXXv{=N3Ek{z=w^n7(9NEP zZe~jny4lmv&CK0Pb~J1rCJjyKX0Hs2N9cA(WjqbtOkoY(%=*v;>6Z~X0=oG^q|z1P z0o}|Nx&nOPVW_=8HwRy0Wsb0xBd4M=Q}z>bi?LHGllJ=<c1mS3LfggIDV3=ZI#fJu zj*-a<9V^C8DWG+;BFSRxlmb{c>5}3l(32AyE#4eJQ`cA<VPHS*l*)7-f$MCG8>KRJ z@tfeOVV!|Prd}A^;zp@V7ipZ3#f?&#{fb!x(9QI60?1ma2b6Q8RHmyHLRvL5Dl+9q zUWfnI%}`Q)luU1i#SLZUqoh4TI5EH+Ee!70a6?)7XlowJHk6<AGt2ThZ}~L8EI&t9 zK3&g~*0||l{LhhD{2W>NOv%Yu{2W>NEMamMKSx$RTbOzy$j_0L&#`WyiA?#t0eCE@ z-8(r!+IMe$p?eE__gwlD<mbrBPr=LGsH;3f1U~g(+_?KcflnQ5MGFC+`Uup%0{GM$ zQE|(f3Z`F@LBQ6>wamdi0i3@UH-iD6nx|e;#w6fV^K8jjwbbL|Q_BDad}<C*9gQG2 zg8`p<1aF427y0<qk%N2V6msKRkRBn*P&TD$q6}qAWdx28O(>hu=|mICmTQ`5LfHyU z6Imde)ilwBvXz?V&c1Awrim<+^)&7F16{3Yq6}qonm*?s&^4OwLLX{1P4uB`2kp-} z)Y(zfhmr22X(AD2>$E(Ph_dyXzLGk-YWkxCL3h(MQHiqMHBD5aY;R4^WlZ`e7~n_= zecNB_-#~v3&@x0W%J$RrblN>yWGa%`G5gh^#khqoJ60OWDCQQr>^R-~jUczsWsk9f z5Ua>!kDEntp3B+eqono8k{z$b<y_8A(5-E_)E(p&y6i;j0IgusZ`u@0j*<2iOes`w zVqO9JR*+lhvQw>P5Y}f~c4pBYF#jJ&L_s1EWfxdmQ7l3vqU=JKDmst1vrEqF04H|9 zlkC#;9WZEEyh_Y2E8(~mvbZBJyF7X_#B&yR<YiaH?gZ1{;*PxR86q~?dV>m9M%Xpy zSlp49T_rh-Ebhq5Hc8I;7I)-jn<ZzR#T|LswWSxsfm<!^$jhEBVq2_jEOU;8VXMU* zdD(M?*=BJ^UiLg;wp-khm%TvB?69~aFMFZn?6kNeFME+Nt=4(;?Gjn&?zXriFMFAI zu*cz!yljgo2q}kK^0Jppp`>!SCog-2a2WupQ{k1u<&?u+dD&~CE%3ZvIoy_)%_9*x zsJoHPBM~{=n3v5X5jiI_uMLT)6SwBMjDOi{$k+@*CdlbV@J*`RXoYGqk1##5stMPB zaox3vR#RD2#8`J;o~()-h`X@X)v#L?jUI$y30s;GrK*_r-QufNRdK0tP8zMMNSOW> z!G5X|!i=^E_EY6bEaq4Q`>84x&2ya-$)rRZ!G7L?g;6l6C%pu2{xiSC`Xl`8yw3K5 zV{r*6E_fjs(G2T-_~V6zNm@kA@gl<HtalI}FDgufMZ_F0CQPFYqh4H?(H0SNydq(y zS}Uj^A<QBx&77n#%@z@JJXe@?77=s2VqrE(_wrK0Y?1!yl?Ve=k~I)36=sJ;#2l|o zm{yC3IUe3?#h|>$A!3e~5ynva6EVjt7Y<#8h&f(`aOfOF%<;0qH7JLOIbNl3jmjZn zj#nidVEKud<LPDTROJvc$E%jSMam&!j+Yaz86A#!HNvd}xIgo1h1;Z@Aq+<c;kKYN zGKL+6+ol{M=6Ici+o2pH=6IcjYgG=nuz7XD?NLq>xq9IM<WIyLuZwU=e0-POe!}HU zhln{|SK%5=hln{|H{lvhhln{|ci~2x4iR&_9>PsE9U|s<J%w9jI^3w{H3-*iIz-Iz zdI`7AbcmSa^%icE=@2o;>m%G2(;;Gx*H^f0rbEOWZ-3!-m=5PP?*QRiO@|k$UO(aX zm=1THdi{mN7Yc}&;|&llX*op9@dgT)vm7Gkc!Pv%upA=hczR}Tv>YPlcn3<}Xv>*T z?jYf&S`HC&ydlCZvK%7jc#Xm}<BJI7h6=aNa)_AY9W2}?%gHcrm~dMxhln}eaN)LD z4iR&_LxkI5IlI|a4;8M}a)_AY9VXl!%OPTpH$pgkdf_3SR)-6hw4Dza!6Ssr*$xqN zyph5+*bWhMyd#Bcv>hVmct;60+IEPT<Bbw-s_hUl$2(fMMYco49B;I6&A37&VvaY) znuu|sjOYJc{2gFK%9bK|e9;te5d!IW6N;D{A&`!zfpq#USzz?9#;(CG7&V@(!+;kK zo{u5Mu-?IfwmKq=ZQX!=T^$uBWL?x5OiUQSfngl1jti5ty5m++b&)V7*4NaQ5GG@- zf!*q)FqPIv=)={nFgfd^{lJvOegm8J*3M2~N)ueYH5gs*#h6wU3|p`L#-d9`x3aVF zT!JHS*vkB(ado;yk(ShHJAJvXkD;LJgspO4s6RG#tMIL;qxn~etC*7U)G!Y~o2t0x zLMFF%sv><05;wjkuLYY>)?$=PEyHM?iUhfO+yOp7LJru4%&eGXefck0-!LmGSq|!1 zP^$7HG(v5(hN*I3)B_TFmltQL!3a|Bg4AFL@GmeF2gAJtaddwMmEv_{?nr^7nZ$e^ z4EGxx>TZDJHB(d(=e1SLV?5<xq;5fI%A126R<B?dw=Eh2B4=ai`x@ec|McPheM)sV zQvXPzSd+sz|B-o|hVX4(C`;u;*<YB-3%-9j7^!W?VeQl-$h`8d$d`k7#ATxn2`Sv} z!d#geijJBJOUU|CoaKzlja&)7dI%GEFkH^d0|~m&X<&|b!UhrMCjywC#grLm;UE+b zhRZsox;5h6l0=BMuBA}B4`M#`G{V*)B>DF-Uk=(cspz3x9KRI)1iD^jzIY?~m1S#i z{d~%gOqIrz-XYOopmnp>@$K`DcuGcRD!L(=?GqTr16@Is2_KZbT|8)@06j2LpASTH zZj@r9ncCKxQWhVv!BQ~Oa}l$+ge<5R(+ro+q}Ck+p}x`zSN%sxfRvdq0(c|V=gzzp zqw;ce;7r3CZ6&03?ST`ctfEmlA&L;p`HYejGAcKRkuWoe<!nJrBrsAS)inaQLekK+ z6l&`{M(X9hXo<Ku+n-soGEV&ot)2agL}wIJB|4QOaMGqH&uufq=<0yi5XS0Db$AJ? zhTr21CVpze<G4af^A72kD#xB;wOqS0y#rZas)00xjp-|M0Q>q<jb&BvO8m++_s4&! zrm)Si1%72>nenv}P)qE9UzwN#P8!H+xqqeo!_kJZM-L--H(;gx7OL}op8sm4{W8vo z{-#`s;^ocNi6zFRwjd>1EqlN%FfOx`Jm;;JTUXoF2-7;-H+A+Zo8N(N$@Ay0O3o_P z)jJ#w$KRE>KVW~0uKcqqVPit)D*IPw8F<c;V)VIz-~QWbNSY~z8~^|-jpWm1T1!;_ zGyYC3t5K@dOlmDZuCf(Mm6=6y)do-PNyty<^P5-OCpF;|Hxt@Q>uS4iGX^6w!RDq_ zBRR5MtFQ8XZNz+G^9|*Jc`fI!wr8O`56WACuX_>s!TJ1ktBvHD75i#An_A|<w~=Nl zZ!58=mvNNoSGaX`Vo`5nRG!@f9j#fdW0_yy9u3g3V-!#V%yORK=n|_#$5iTE%NMdg zS&P?H%t{@QO{?v@))=_sp4AoJsa-$Stk3~!ZVC;o(k1itwfC+9w1HXO7NPgSuP|l% zIofHZeF7A&$>+mQOl{wKTF0yC=lt#M1y4sJ(i_Z#Zoh3S?YrUFuW;*M+H>zpdkys5 zkmr9~i5|8w&;7L0?t^yQly4WbV<Sp$&TDI4W$#7l8}s?iP08KW+Jy+z^Y=Ff%Rr%f z@?Geum7(rAEi_Zh81@CQa&JC3t*A@#uf9lL&rnu{dY;JZ*}gI~xaL36^YlJ?9NxXb zFR$l<yq?$ddR|x=8tDt|<Im20^px_I$^tzv=k<J^*Rx|~XreE)kDjm0biNI7nSNi# z|HNh7ifR{0?(L*S&eZ>m8*t+!aoWOV#u%$ycc)udh3w8cccd?5Z$~qawK7^@%PPAU zqBt(kZ(U`NNB*%^S^k6!UFR!!z;7t~!)C*nns)>p^eZTsndfnao{pAYWM%Vb4Pude zv|d}k2;(__%Q1K*<{D>NrP_^ct3rSBMNaTVY`)@iww02*aX8Tv{M!9FmVfraES~_J zZ}}%@>*~R`L+^1o?d{p<BbQqhTvk{u_pD4l+eI56Bc=i04xz+6;|i-r8{fXlsDB7~ z_M340I;%5=1{CCpl02ZBF8X&{mpul4+g*_Jwv~NN#I~%qx53^wd4B6^`#JC-+t1&& z+72P0$vnS(b#kMx^ie;cN|ZwAT`Q+O+OaCJ2rqlRXH{z>J6G8U!MD$>Y8_OZUL(No zw)~TP(<&o$TMzAOUaNf#+}NAf*s3*tpVzosYy9WGX#6Fw@z)qbLTmbHm51rd>i|u% z>wCj-9UyGe?XP7%v$T+dY0$PtW3^}dGr?;s?b8o7jNjSqGsSEVFa789cdkq(eI<2% zL_R`967y%CVywq^fW_FwsNt>w+Ei=aotxJh#-n+OcUB_G(ZO2eE??24yf<&=t+i@z z-uf4B-p=QLywaxHck=x1l}7#3FlgV7aDHc(>x+U4{~DnF1!i$#Gy|nvBw&_bWiJMA z1$@u1TxGwFqE4Q_c9p%h88-p*Jm0P}YLaOFyVP|F?LJ?N=1*;S6-!jE8tzgJTs7D& zx4ynyRuy-tL%FK3TQ(tq>xjG5v0O*kE!V!j+@84x0oIEHyJb5PK7)Sjw_z~tmKR=M zUepr_8TF8g&BX#pU%))9WLEYsU>?z&e*yETl6fI%*w>)<Kc<3o494GBZhwIaJg%25 zcFQBLFHato)V1)(N@Ep7ak4+5ur-v0cD%kkG})K=)^8}8pr2H-46s|8-&h{H$d`D^ zm%thOjFREPZrKS9H~9Hi<@2W-&#GcxLf9=2BmX%+e_r0ggl5BdPRT@Ux3ogyufD|K zyu_(!r{|T-#CFSWMC}*E^~HR`9wa=9sJ*PRI*i+1U(QCtiL$U**O-s@`AeK^yr*G` z?3SlsX|<p4gLxRXIs#BiN)|PC%a2gJtJyF<$S0usP*T=_miZX5le==~rHq>Xu->Fj z^OsZgZJp$f0a!BaK#?ZZRWCJnuV$xdQp5C8vvsv}ktTJtUTR|WJQ{Uv&MzPLuD0KV z?lnp-{_!HJeFj>2ZGJ8K<Lc1!zR}w(n86S2dA4p(F2X`P{p_`VwlwECx;gPCqm13> z>gr+r*<|N%hFqdM7#6}!_CLX2n&;OwC2x=EfM&EcV=r!n+RKJu(VAa>ZfY_@Pxw;T zYGDrQSLrT-l~z;eB|m$)pKZrcsjF47o)|EOJ^=ojJpavVyJIsh;`02rtL>rS*XQ}~ zR)_A0YfT&S9p+L5af9+_?JZ3<S6&;Hf8zhN+8zS~oAdcw5n=ugd~6NQ>{FHVw}@7^ zLZ{<w|B(&JllfFt$Cko-zG>bjK2;sSEJV`211e9`_ZIl#r#zUiF`;p&`diSisNV=` zLnR&zup<mrU3Ev;y;}OoP&HKd6Tf2&RipDABh)XXwcOz=v#)5z)8c&FVClRF4jr!i z1^A{WyXRWKndEr{;R5hu@<3YXS@d{pzWn)3p(SCh`NaImGS`@#Z#DF^HGcMxe2}k& zy(y}gbpe)&{XEo7&G&+JdRZ_le-(0VlYKA5=O|egpd&N1a(lZQip#C|s8K@%<CMDE zUx80=JC80y<Rv~SRj&uvTQ@f`eks+cN8e4Go1}eG>PUaEg#dt=Q)(Iu+b!!hH`#9? z042)30u``Zwj$vVh+wJ8UMUjIH#XUg=r?$6g%gI|vSo8q@>Aazmf<fAQJi9#{E)eA zb5rPtyubOt@S3JPKV-JT4o9a7Jy2sL-V83ZBA|mkSO4S4)FnSM-4CVr`T72pnjV?D z>2PA^fYM#fc%wL<umcGdXn+HBfH96Dq5B%c=$Dt+NwbE_rwL`eH+C~>A_LfW3ZEB% zu9tcn+Lsw^-E`Z5s0h3LOVzp?p5N3FQGcnw?zGKK<s95z8m0Rz`p9-)MZS+ld7<`} zbV<HNf4tHb{3|V^3)jT0{!(*YQ)q^t@4p#sL{EiZANUux*EU6Mupj#Drlu$t#Ge&& zJ&Y4Dd9hzOKQvto=esO1K9<RigPRfh(HEKFw^Z~SDEzi<n25d$Z@>3he^lr|?Cq8V zf7T_w_ghPCc;_I5hP7|$ov%GZb9pZvnmwx}ZdcUnxb0qDzIrXL*1Pd$3SPNi9lG4t zc!94mIuov3n~zj<2Rh<<pBo*05`JChUuoak6g>#+_5S7H*-cR_lZ_2Ndwx@N3=G}o zvlll-?}y&smTJ2Q;SR9(`WN{K;by3M*w?(JDay;U$NaMEnxcHT{J76v*%ZA5@!sYO zGdvyQ5Fc{uKXh#J^S#<|!w^3<L;P9qTIn`J{7G+Jlf-6-Kj&fO+2yMksWllAjG_Ak z<KVVnj9CLb!1iEV1$MaaqhFz;_N~xpKlj(V24f0q@BvDDL;t4j&i30vZ8*FUH}BA# z-hR3{x9XnmHR`tBqHEy!HMq5@3)jT8vWf#DKy)`+ug>R=jNXip*ZW*!lq-xLayJN_ zHo6OWJ$-I`l&iyDzU1)eUlC&c6b0yE#z9liRH{U7zviI>4DB~2sPYStTT;%e5U4H3 zjT57!PIHarw?I+J{(8Os2s%hHMm>K)F%>(Ea6^R%1#dJMMmIqy_!I+g+`u5!r~_iA z!Ql5LuH+oP&2PSu9thsm=vJ=Ay6PTsHF|-oA+THxdgTzW!0MbvwGAhPfyb(=SjNH{ z49g*2fmL70Ye0v11y+}mt3mhBcm)pe3atHzI%+t?E3mqiKfux&Fv}rcfz>@rZ=88} z1Yun(+0L^xv_4DG&?l7F2wD}SvqMmYop!Gf*B@5tu^8+71ZmT-K7up$0pV8AA?szB zv-=5?w92c%^cN;${VoA!fG|1BgVXjvVd||(HDCq_(_r0R3udq|{jFp61M~mb`|>cm ziZcCk?zwgDxoh98Z+G9my{0?qB%P$QC#18mhYm{sC7rNE&;$foBq1zHpaX)aLjo>1 z6GIT(#sooU6ba*?qM|a&xBxoJ#E}5wHVAH`j{e^FtEzME?QWED=6Qa94E;QPZte9| z)mLAARp&ilEf>!!Z$=)TRpMFg4T9GA;o@2A^|I(A#53yMi{XqPRoMkPH+sKdo@2`I zhUYx*uV=%vTByFn`xNUrPCQ$@b2{M}Nk4)nT;a__-^WiVvU9KXR&f_{V$&!*W8R6Z z^rYZ#P}&afUs>tNO_bU<d7D_k`YboNJG~!Gf#>v=zemjN-o@;YGur+Up1l}Rc+M1Z zKI|Pt*T>IFu121Fy*rraY(h7k`@Q2KLgE{RwuihU*oo%^52JvG9sk)&z<7zapCjFz zS?u_kxhY4N(erOdyjaz5;&73wEC(2Y*TX&KS(G2#OV@=UD0l!aN%$?Bu;c_kVQP+V z--nmu1=4$R-+>!U^CA5B#t6j)NaGtL6gSgtj8J?8Zm{-k_>po4Jwrg36U>Es$UpWi zoMu&FL~UcuH>N1gW;w<b1?HgRe**jqQxxx`+nAzw5N>tkdJx#_3S+BN5fT8VNiJ7E z4d4MxlN?#S1@)<0n0BfTQMdxq38uL+pVVn@g=d!A^azp_w86H5HitHM)(wc7>*mys z*THe5n`2*A{}l;?-7NGI*TeNbzci1YpQAy+9_<O5G5yQ^c*J?vLtM5F>SFXzaHn6( zBU~j}_WS+XN_c{!nEb3TIStjt*=3U3Q8$ppyZqV(OnV8_-W;a=6_bS-9Catl{g7XK z57X{u+I>uWCzH|T1SBS4rvwKW{TQPerb)ezX_QM+rzUFOhcEayCVL@FCXESxf*e%_ zsv6TyPt=kMzd1b0ZFrbAFNPi%%t&-jW#mje<}thKVKA(0E@$u&cuZyR$#9q^fA4xk z4C+Ev2fKEb@%)-u=bGx+tUw0jMi#<W{S6C|_K-S9t-BFP7A0yQMtHCvkMfto6w)hK z(EDaQ9Q7h=U7V<WlI{8eGcM5?)q)$~In2bomdTbSI>wMmeTkl<3~_%;N{>#|ntl9M z@hC6ALz5$wiTCFq(+PgfN_H~Caf#Y7%s{JD<<psg4T&FMGW8L5?+J+-?@tNdz!YN* zDNM5YZ$b1KhKznP%vhpEV^`of<oN>gNUuoI!j<>15}}H`=BRBf;{Hw<NcDSq9_SQ4 zN`C?6U9_&B44rO8doNzsKacKrfwoK54Uluwe~0ecvaX+;nf?;S=(=^&$Xe+m5q|x; zf#1`8A;NE1H$eVKUkmqJ)=e9t`v{bO<GKNke|i)Z-?VPpS(4^@$9em@c^A+<6Xon$ zH^|{lFG2XN>!xua({DuhZR=)!i|)0c=UwZj{($Z^Nb~M>vwlYR4us#aZtCyoej4@e zT{kU2honD$gX7%2u5T&b9dLhmT_3wYeLB*7YF$4&I{hH>et+HUTj)-_#c_@~eFi%- z{Up+_K79s(8r?xE-WgzLa|JF2O;eCKEmy*sqciUK#G|Kt?~e&2&8KQ-o1`64(hi-p z<tiuDQDCm1WgDDjIx|?cSwN>Z0~uQrlyK=>?mh7Q8FaaS1^P8z_AZF>RdSzazTJp$ z+@GNduG@?bjNvNAbnOL13F<T5k!E`wkLS?o&NL|wT7X1PcS%I6;}eOV?)F%kA!%yv zRY{b$I?bZDARI+!P_!FEQqPScB<{8%iE?M)>ASZeB;lTm4h&p{kfeJLLQ?KA=%=*f z6N#Rl@BIN`^NB=HFHEjLPz#~x=|vebGdzHzrx%MyL($VqGfWlq5Q=_Si6lMb_7I6a zoaA!wu-ii*`f~9+;`R`SzB2tP1U>5Z5Qe_0^jdhn=hid|ol7uL=rxT(XSWcAUehRa zjt^1jHH|`NEK%q+jY4NEQRp>|LZ{b3Lu&ttCLbpqDJb+NHiZ<(5}lG~(rMyEB`M<f zoF<OWHux8CAr}<7PZWB3#M_A0$uj$1n_L(2N2l+t7~J%!*&T@RkHf;9$;+bH-I_W6 z2M7~zXy%0UK@_R6otYCeY;r(a@r{mn@{WH4^RD&oV>$fpA$wOl`4Hcj(e9&96HvJ? z7LG<PpC+Jkj~0GTHGw9ea^EPP%<#K<;eN94UkpD2kK9wmGZ{|nPq{;dB;B<Bl>2d! zHrxx^ek6WqKT`8p(*pN17}o!F>rZS-(`xrAmOYvECy8I{_JUXbV(U**#zuDo%UF+x z<GyAJ9`5~Ua?B-u#B(nNgeC5FLwi*2e<9Yl?Y__@py)5O{-paZKj_|pUCS$Wo?fx@ z^opIQSL{5!V(01qj-4k(J5PDodEz4C)6P?2R=y95UAx$MD$dFO7Au1odMeH>a+Ppe zXy~apuRs$`@fI3-D$dWeB8xWkR9ui5f(NQ8ODHb%?ngSGhMr2NNy)8>%2sK!J5q9- zg)iUGlTSlWrHj2HviUUhRGyw6Mom5qJ(Xu@Hw`^C4~n~83_Vru&%YlT#7t1-0U=FW zda4`{4|H&*t32pkg=Fnw>8bMBd>>9qbe_-G=XqG?5mQf<FNjB*da8Ue4aL-$da8U$ zJlfP#<q`2{Q%{vIi$|M!s(dBGo`wp=S}R}m?jZ$Y>Z$Tr{u3bu->9eHn}&icw1UdF z>M8hkJq3@~Q}9GR1y9yf@EuKo*m|mbS3G4L6oMBj|KbgSf_Aa>R5_Sm*lauG-|ETv zVLdrd8**soqH@TPLt{^sXX?p$ww|2l3^_FRRQY$|HgpJUt^COQM^Yfho+{7h-xpHw zLOlg9)>H5cLjk{BtNb!mgR+?MXo9KoD`}jz_Eh<`c!nIGWmkUV@yq3QvG!E?L!Mv0 z%NOR3tLqVKPp<Z8qeQUvL>||+o?z<fAQ)PkdWySJw6^pFLr)ywnxj~D1%{qJf{MgK z(_qFu)z$+mPb|%mdSK*<9$gP?JVo`u#FMngQ8e*Xfr+OgN)X#heJ$=&wlvsxib{id zr>HbochaTNoB)hF(W9-%z_t@T`P>yS4<|I2b7I?x<ZIhb-KH&K+Nno-x*bK!P8C>o z+DKApM5#8-y&Pwk(t$AR#A0>BVAY8p-7pw+qDLEbf=wrSv`r_NbmBzPCY@l>i5_jy z2?m|$(FUD{w5J4$Vb6(Vl496%5{hxm2U04q=k#OJCH9<_xb1j%C3L}<Q$!bRIYo5A zlv6|(EIA2Xr~{UqSa2S7z><?xCzhO6=_J~a6YMx~AE)g&!Hg3<-D1WGR-BkeTX8x{ zdj=dux+*Z@v;)6lH>o`0{;eev7Mvm?Ptcxtj6(<eO+F-rw%-KvO(J+=v`Dg6d$jc? z7;j>XHr@o=P4sBnO)%Y*VQXTiArCA!QFs>}MaxYUSZ*2s31Td%yun=xc`AJdvrQ2> zu-ZhACI?2FG&!#Ulf!0HL=H?g(WA+M#iocH7;Mty&|nknHED8auj#eg19E7tsRDCN zpCUP8uIcseJ(e8UYKq8tLp?dL)FkBO&U?)k2bP*NIsbAUj-xC&>?+u4(&W%~3(PbL zIgVmI6_{x{1{Gy!H7S3MI|XZv^ue|Dl>&So^#Lq2={}%|2N-D5l~NAEJ`+9KIuy(^ zMU}!jlc|*TRA8Oy04tq7fXCb2*V;;9nki~2EHg!w!Y~uLDsU9@RA88iAW5;Plz+GT zaa#baGDQWzC{t7bY%*!8X_E;inYbWl97U5%6_{k=3$BcqWV+Km9Q`7F0DDYPX?NF` z25U^Zv=W99#+Y;;u&-f@N%sN!8m5?ZAJ9w=EHOzRh$SW%Vv5)jc9;xXl7b5CF#RLR z5j#vDcRy*#ff1&N9N1ur8V3_h(U1TXrpe)u01&3hA#Jd~q{$&|Fux?^IEwXDV1DUD zRFo0(OP_UrZ7YTCrKr+}>nnxjB{L+<Q-S5B&$9rry!2IfD_*BbC;n4?0kFChQ4OO@ znra$dg3TqCrfn|4<PtrU(J;A0*+Pj2lS_1JlS{C;Bm&4$tgr%$OL5dF=8p!x>we$X z4s%Np`LMPW)ed7zx^`LsfvqK7JHMiZsU_yurj~x-W_Xm>?Z}&vpCViiqGFDsrKJii zEsfzfBbJt)b<cswl2*gaQdBRjEJgLg$Pzu;$P#QU>9OMQz{HXsD-I7VEa|Z#>%hR0 z87tOPfq|vpvQjay^egu_wo+JEiYkS1C0!|vE5WwXX(C2xTM4F>&cP3R7p9e@OVPV9 ztt1_q)25Z^?#|&A5lk!5txYSzvJySovJwm{v4%lMk&p@uD_smq#G=ta5Zi&{8|eyI zRf?#BQKg6~*i_O~(WVkiDzRv7QVAB7=qZClSX8336(qu<5}n4PQcNa|HmC%9N}NHx zj-oxK3hXH<R4-<Y27r^sQJjzhV@eSzu%#4{0#izw6q-_kC8dklL1IY>hLo608&ZND zC7}Rx!HyE0-JlD0l<4ep6zwQgU`J^uYo`IE)|s)BZ0#_j6x9wJO1gI1P=X01s#V&A z5-cb&ChsT~P=N)d97+)5Mnj8Ze``yF`J|{cSWnWWam|GBB$=3EJPEdwm_^%8g6SkO z^MGdN2M{jItYB21d<D}<XE3dpPC7F7Gg}qxCPh`jY?4&vC?>1GY|@vQN6aQ2A3Lqv zbTw=yMR{N{Ns~uS9u|}6(H4_nFiB6mUW^;;C9Os`<YTm#1anFBv^t7KS70vbcc@3v zLQ)0hk}g3-Q|J+kNBNDhkJy@FD=DfOrjn%Q+#4?2?7&nKQw2_NE`AhEB~@T5X)8R7 z#8grRrjn>|ri`g1W=$DWN!(ebjHx8<m{R-@2&R&_cUeqRNfnq%;?5!U&`iMjVpZz! zDPt;$U6rDu4pT|gg;NKo;5AXKN=-J!brhzOs7j`csU)gzscw|BEmonHlrpB0sG_8d zsU+$LDPt;$%XZ3`O5$poGNzKaFs6*DBra<yV=9SjO3Ii@qNq<9Q%RKCDPt;$vMyyz zB~h-WjHx8DP0E-`B8#MqsU!}4%9u*JhwdB-xG`3xcuE;lNfZhxV=9TWGG$C9agL;n zsU!{ntVp8kPlrnwbg`p2J{6csI)IY(Np8!C``1YDvP>oQ(eOrVDf^!(0Acugz|G(@ z&u#<pmX`)!vy~;K%0D_w-+TkoW&QgRfwZZ6F~u?8^X?@H44&6=Gh#0-^8J%G_Ts*= zK-@s!_y=x6)Meh&$XI3CrV<_l_?MDB*rb5F?L?%yyvpFDcaSgA@i*=Mx1xkQyq2>O ztlvb-i%PzpbUMBXg4$NOlr>u!Plwa-_Y7Sjp>K;q`8i}Nnc%CKJEKs3JC_P1^g$bH zis6T<sgy)L!6@dGhck_L{Zw(+k3cw9lg^IQUF;%f=IBXb`w^!@zpFot@rUj4Ag7Pa z&SV^WML!N_DtevXZ=Z=WKN^z~jtxtY%)PwWx!qjsd=}&0%`%tW0EX}A&%PcZ0Yf@4 z`*8_X;sa>Z&0$4!IRW45^q#*Qefv5$!^HcTfY1%8f57SGSCvU9wv7B5BM-t6CjmAE z@AR#jJADt?@||XWu;|CWbsC$&&!zRBySspeIsv4YADcxdp}PTJR5kNU!(Y1hyjo|N zik{=2yZd63;g{|_onf@|IE>{l-NQ%|?sDwpRkOczPuAYGmCZLh&aYf~%ZIB9o#s8) zJI*0@hbb7+LjK&{e`5+h<PKU&n(w#~?{D1|ChgH-+Ao>3->*x{uTmd%cb}>Wet$^t zoe;}x;iK+smdpE#I!}HJ(=H*m;ETrXodwYJsCx`q6L;ip@8qk~N8MNP)hRxl*xvcT z4fLPQCJ{+l`862+pR|eryj$f#WPi++mx4f_m9npD?6l(fz~<+4e;ie6GqLu2t_nX5 z|Axk}#C9ED`7XTQbel*UVAiOynctRv&OPT8UFu<B%i>@qw(N6uC{`yffoE7}U6r^D zo}+ae@86y{7rqm9i}r4(WwM7Y#iLI1XHTc1eeYUb#mB=ct~OPCT35l&Lmi*ib+GGD z$){~4AKsqWdO2fH)Rpd~pYiLp|8^4bY4^372z(;h{I3|_d)@ca(iQ$%!fL6Jux0m# z<D0l-$hpt$(M{W!zz2`_xihtIG=c9O?{gPw-`d0_^Wj^meXA4a4mlrpdvui`_uRSg z&a~Z-ICmbr3+cs`mx*)d!?#lV@}Pal`Gl>q8{WC_4(f6T;GGBWV(lG*cRsvFXzvoI z`4?!}UG67O)Ghm=w2#v#4!xEwyUQIiT+Wu=?e^=O(z3hVIoc;JyW3r=eQVj454ioB zzEy0>2i!TjDQww1c$eCykoXVkQpvGG{RiD4T@u?i57EoCx7BHW9Fz1`_q!)(a=#an zd$l3=Ry}#ZkQn}3^~?dQV?1wl54Qw?r*3seSSI;odKSa^Hsnuw`BN~l@K^aMs@d(9 zcOsOMrs*dLWD;3oDo&Nv1$<ZD{Pl|o?!T9>z413AE<fnM^$-~Bzhm7+dN$vFb@Ad0 zoYiiMtE9K<LswUByNS5}3{&D8kT+Ex!en2A?}^0!*wvNC;KyMJkp}#nx$8+&$!1-L z(>DW$EtlgEN2V-#?`qsFKcWe-X;w4MCg;^Q%|4|0ph<J8VPoF<fO5{XY3{wc^!Fyo zkV%3f@CAVuD}Q%2tU>t4>w3OrXn9PR@p_x+{;NyPCdqv!3Cg&@t>`iyWEnp;2`)4V z%4j&~c%v=jp{q;3Hc7DD${)(O%$D&m%UEYPVUbC&M3-@uZObE9JEeDwOM^n*Y~vqA zAp(tHugmDBwEs%$Pdd$)VvK$Flw)+0&(b`CG437IW9-}6zq<6d$Ld7?VLR?}T#R8v z>KUa^n%HmK*iE=EL%J2n;nL?!>;V&7c_*ZKuUjT^1M5{~I;3~6+pE2!vR=)xv9D$O zXM7JFbMsG*)+B5)UE=P(8g%BlyxlxqXFfiE(OcnLLL6Rf*Q(O*O_mc)mNu$iZ*QUY zg)c^6&EXvQ&nDwOf0Qo#_hI1y_ViNt**z@W+x6(SJk4O8y@;v^E=u2)=XVxouO{LH z^KDz(U7+&ZG&L{WVz;fd(Nunct-KYqZ7NVH^LBl2TO05G-JEAN0OW7Oa1n~v2JbM{ zi9dSIj5{%rM*qf8_Ue$bYe?BM7`xFq1SLWy<WEPBj;<sn5DG%|=&Mbal<qMFtS|-4 zJm1++&`Hlj7Yw5dj${|SKwJs_K4OLmpl+m+HXk`lxB33<`3um<BUcgv2jc_V^Jn<* zzKUc}%C!;NeY8k|*se8gyd(M8GL<S&HIvuMuTE3#!YaG`J57+rr@C7WaU!gyqrRl~ zJOMBK6Y0b-;op)|B|ZH=K%uiq?_V9R>9rqIxVsOKURFALF5!zFZl4x<XRp%qKD<rn zo&9P}FNSRX&42_&L$=y<!7Z8qN5*JLI7V$8!KL8{I?jso(eG|=nZ2{Ykh8$#b$9=S z<gkN!=jgGx&{?_YB4jB0>kYEq4f}f4StuJf0b0yEv`G1Lcjr$9n>E!A!pot49O;^d zSR*>M?Hx#$mmP%M_V=}J>`;NF{|u;T6)ZiWgIQ!v(KZ|Y2L4WdoS6_`X^q%z(@^*7 zLd3M^W3?ohk>+7z9o)OYc_o}VI^)Hw;1uSe&DU5*nV~okCB`n+=^YMVZD-s|Br~Ws zPSa#wkY;gCoOZ#yq<Hdi+6D7c;^~glE|`}V&rqCp!Mu!kR>isZ^|Inw8>d|`FDIUj zaoPp*n#6NSyoE7&@mw3HT`;d8o}F>p1@nsH*&C<XIj<z1d*ifQ=at3tP@Hzbyk_w{ z7N=b>uOgm<aoPp*TEz3bN4sFH(i*peR>8bBiO9Pit%Au{1>LT97u@YkHRO7<2v(ze zmFs;I;T?3Zg`IVTchbGl^=J#Mi|$KYkCwo?>Au$WXa}r^?wzhjD`35J?{z)e0GmSh zy{<<KV10By<a)IK)lc_hu1D)%Q|UhFdbIsDjqc}NkCwj%=yqZr?S4(CJ0J6C^=k&* z-7$|gzh=@sghLvnAEbL#%zGzjm__$mSm#Fi*>rD=d9?L4hwe*a9^tY>bYC0uXy<D# z-8*r_2YTkwy*K93#@Bqh?~Qr1@U?*MhhiS>do85<v6x5eUW@2H7?XF*i|Kwo<`FQu zgl@<4_Aka{q&x3<UEsXK=<fDB+VomR_mJn&qSr9pt2~ePyq43w*7Giedj;JaJ&(4$ zR?>Zm=K(b4tfKo`4~D$(?IhhhJ+B|>kDz<6=h24Ok#yhdd9>hl6x|Pb9_@D>P4{D- z_Z%4N7`hL79&L9WOZW4hN6THS=?3il0kHjXbm!yV56~wgba%(Sb#SktdnoSFV%PC> zuZnwjqAe%Ty*BRATGxqmZ;X4i)pZixm&83<>RL<pwYWh2jJKhiPWE=dTjG42g8xn@ zOFLcOXs#8$EbVl8>vN3Fu3+*F+I<D;@=niCB4p2D_!-)L9o=V%EXcZ7z<qXh8}g<# zk}>;HMsL*7Il5mX?zH|+C#}Dk!4JQJNb8Sv()weawEl)CZ7!<kH#_mEEgwbMir?(S zr&a%z_2_SQ6u;St57a)+XnwO3pI#=ZiXZF5XH-7TaDJ>4A8dOc-TX=?KCAuRaCZgG z)6uD@h`4{nPcc+m>6>)(Qw&utap_R}6hpO_QcS8p#V9cw!PI3b21cnsqu*Nk5|i_b z3%{+*50@0bxbUmxKhVuDF8uZ~?Nz4rhZ<@9d4wVkG;vouNzEkq401U_um21x*`%GC zTa1zZUxN!PLQs=mEU<Zs5Y*(Og(12LK}~+6xQ%W?P?Jv<Xd+p0olHJe+(9=XsL4Zx z)pQern*4F`7P!+If{GtPP&M7D1@13N_k}3daffh3>AIKT8FO#I({rzf`Ve;?VBfo| zF&e(xjRhv*K8aJ8z|E2X_c0y}x~)AN!=sT4H>61arB=Jmm<f|WP)+<=cRl0(vI|H} z85`YQEaT-vP))uI-ETABx6wYw{pT_s?yb|<ZV#>T+>7vxyZ53amAe&B-@P6}IN_Gi zow!v-+Ls=5AIC!e3Iz2P2<j^k)K?&=|2HA1zP@VIKcbJq)7Mvx`X8A|@#*WUMtyzN zsDCQfn1t)=t44i&)u^wp8uj&6qyF7kL^7_guNw6$GXMp0eSOuaUqB6c*FS(H_;y!c zHR|iDM*So3Qm^d#_qE`h%=PtEqrSds)aRiSY)D_)kG;I>{}$P+uHOY;yX)(#MtyzN zsIRXY_4QSwzP@VI*H?}D`l?aiTs0clt46tqD09^)zqQJnt44=%=m2xoC>M$Fs?i_9 z6J9lX5^@A_bJgf(c(8FZSB?G$(kXM*C=1Rg>QlIC^jehM{qhm0%3L+d3tW`BYV<Oc zr_5EO;x<=}(w!FsYT^DT*Z{sh#Z{xE%!%KCr4Lt)(gRhN$#B)^y-1c90BYg0qZnVE z<@5Df9@bgneCLX*Mwvf|o2y2tGiBlgP2j3gda`kXCUDg#J-N7COZ8>(G{yO98CQ); zHv=Fr3%;*<KO_O>s?ldc0=`jCz&8y6d})oVM(YUpwv=oLc)Xr~C+Z1!vYvqNXaeHq zs!>u?hR%y^AFdjGEhxwf{IqazbKZ8xztvOo!+L6-Hq;Q}gR4e$cMyGwt48a(<Jo#@ zo-@=CeTu6_$!WkCuu@z#`T_|M^l9PwuZ0A>P*1>%^#uIF5Wsyst{OdEaXidbqiot> z+*~zE&k)|>v(n#qm!asqfKLm5SO~3KP#Jg`E1Y7nr@|>Q_Bybq((7{1D6pq}s3ydo zvg8nZN>2?|nmAOzo_-hgB>5s4*wY=h9$-(SdVoER>H+pNst4FpX%0R_MFG5C^azxY zB>EHB(;O5(p&HoJs5D?tqtbvq)ukEiDLo<fl%9M_u&1QCoD%G*ZVLf|-LCLS&0<d( z)9nPTowthaBq=|IL<9EpgO(IvPg!h;J*6kap3)OyPw5G<r(~26drD7;J*6kap3+kS z#lW6gih(^9ik*O@@GjAI(2_LR(=`yP(nY|YMsxvt8qo#pX+#&Wr$QI%0QQsx=g}*` zo=SBVd&(ps_H;H{8)8rC39+Zl6Jk&48E^v9#S26~K_ZF#1org1mPlYvS+wpvU{C1@ zv8ThBBq8>c9igud1@@Gl5PM2bh&`nz#GW1rPl!FG*e*H&Dd4T4qaYzEw}x(T&&N(e z`V6mAB65H|jmQD^RFh+{rx7{8o<`&Vdm51g?5QTlU{5tU275{m$gx+2K1*^8_Vg)B z4zQ;YIl!Jq<N$jr<fIJtRFh+{r<xqfXJAh?Ih4=9o(ehmrX9N?UJ-gZDoPR)3he2r z&882ot*;cX=%Y%3J=J|c%nY!nx>AEZjVcB9G^!NXQ&TDH;mx2wW~Byu`c7LZu%}T= zfjx~X1@@GT1lSPs@KVr?$dn{>6xdT<nI|I$>}ga0u%}T0z@BQVXT$`1%B461lL;gT z*wZ^%n!%o4iZCe+*wd&qU{9mcfIZcv8SJU<1NJqrr@9Z=*TA0YJ}}r*=>v;Bjo1>{ zQ^S__4$%J~IR<<Bj3o!y(})~kPa|@GJ&lG0*i%i8!JcYzNE@)HnjF#w?5U9B1gwWw ze{wvN275XU(^dKa*wd&|U{9k;fju=t!aTh7^F<c$D~SK@ueu+w1ps>*6#(pMQ~<E2 znreeRWoaSylpe}xU{5JqD5HTrr8C5y(u4Je74o*v1*kD8w|#!s&GHz88W6CjQSHE< zMzsTbs%vMVz@F;b4fd4zL+t5xkkajxSX~Fg<-{uH1mP{8tk+;qZ?*LTdm7aX>}gal zu&4Bd*i$`L93Eg#^;mIufIZb?Ww57atnB5UGf+{|U{42dTqcbL_B5&#*i&7p!JfW7 z$4U+M^mcgIyTG2ZS*_?@U{C3+r8M@G?(USvp3)s+Pw5G<r>tSn3GAhwcaSQgKY=~{ zgry4D(}*fyPa~>;J=Ihh>?w;5v8VKuK_alHbdp41Pw5P?r<^n)_LQDpCt&To%X1;B zPZD?m?CIR9=^$WFBT|4pjYt9ZRFh(`r+4Q_$_i8m>?xCl*i)eZbOC!xXE*2q_LR;( zCt!uV!}B55Zm_4@ZSBCGMzsTbs%tmcQ>s-V_LMPsCtv}*y>kUhNXqS<i(}ulr2%^y zl?LpoF3n(1Wnx<FDYJywQ!?{_X67FuT$ouofxWi#?X1dRPdl+b2wwqv8dU}CsZ`|z zOvWoaf6Y7wd-@ie2iVgn53r}2JcB)@C&ZrWiPt+-u&2G~h7fy7PpcEyt2$?*?7&{t zxfh-udXj{Y0(<%$TQjhyQO&@fO3f*QJ!PuEX}*m=%*bmxKLAg!U{85X=he{i5)>U5 z>Z}QaJ>{k<!F>>}>Ev!HVX&v%xJ<FvbaLO2FxXS7@Ck!GrJkKI*i-7l34=YQCYzw# z1@@GxWWr!islFu)_LN#uVk0WXHJwyZ5(axp{UBkmr(CuZ27AiYG-0r(To@Aud&*@k zVX&uMQxY4{<=bOj6!i&vO()$3drDcCFxXSdwFH@bN35A_lQ7s*vPi;UPdW4ngFStU zZi79gcuE-TDTPA9U{5(K69#+AIg&8gQx1SrqP%+>T*9D>VPO%y$!j`)jFR;cF0SeP z3KG05?5WOCdR;Dtv+w`L{a=drf0f?gv7#*R|0-QvU=g`v<2YAVfTWf+BsF&`0ul)5 zvjJx#AixDE113OT8l8!}(xRl(#}`O$GI0WelHMwtZ4N?H$ae5>Q}8kbq!DoKF(%*w z1Z07n{oaT0nizk%YY@PzRu0+#8op^lz|$t6|AW|-mak20L+Ync-BiA5fJwWpAmAVT zpI!uw2!BWKmLJF6J@Bck5p$mZ%my8k0H^WK-MtKNGp0WaXW>0~A$38Tuexvz!W#<f z;l0p!4_*#z)W@#EJGEb}*9AN;*;xQ_@J)Olc4Adf^t(o9tTeTN&E@Z{NK$y=X2*F| z(=Y<~CVuAS<I+g{83i4GAr6ifB4uU&m3Tin*VOq1T^j0q&el0xF?CAzRau+8GO`iU z`^r&G?EPWJIo*cXzIKzb>HTPD-#pd^tc?`Y9~LwCUm)6T_kU!-0k?z&UBQC3B5Qjm zooG_i@$|_HT>uZ7X2DnM;35*+^;)Ny12wA`VQxVN&B6^1BAkEj?k3si%j<LGZ{gK@ z^0pc{ot7=m5KF@45ZeockQ4=iK&yk!jx<h>95=XhF}h0-4FOnzXI%5rnw$O$^NxS- z`W#BouNdQVAuV7e@Nfis`sHJb200)BUp{*JWt^wqL3+ku;A@#&zlikoi%3tuaEu!( zfR`XaYY^PdbovEiLEQQcVQ??P+k!jrjPoU6yjs2i?rfmqKftfL0v|u5=>jet&K#X_ zR2Uz9D;%_Qq<jyJaI$$-n~nmQqa(`Ep>wFK5L#g7Ky8DwOlQW46N8~Ty<f0^R{!|d zp@7&2&{zHm>Dv(I#CR2{f1<p|)uw#?lf(nt-8Z05{I%Xf<f)#Dv<Vo4V`Fh4-#=l( z1Q);^SBMRM)W+~^Em?UHUWIF0lP!isT-%y#6?a_W+SX)M+<`jhJSW*M?u^2<tx4Ua zyu!7u$xaC`D_q-}>=t*c6TcQzCwshiqk?u`+nSu3Tm=GS=O7?CEqgP5oET=SlN=CF zJjR!j$?2I(5fj9SW=+m0GE2rOlFXCgtR0RFe?;j&X7o(&j|eZZEvaPgM0DN%i5pGh z2hsS{kUA4T*(Iq(_o3l2ZzIAM=h+F4oSCJT6z+o?=RfG9)KbkPG2XJAIxPJhVp?Op zEN7V*T<ne!t(_W9lV$s04emAYE%!E{xPToG>s2&!Bz>Kp<4%P;_fsebj+^@^e`2}Y zu&g`rT;Cl01i4Yjdwgd0OK3{?PU=4?$yeomg#$-`VqSwl*PYXYT<+Jg0>@q6UKKcT zzL3s5Rs1AUdHTgOe)!@!o6nwnE`DQ+7r}Fiw8c@BKG{?CQ~-P*vL*W}ZxxfbW>33= z$vJbf>(X@VnUfvW$x#tv*6U8eH$g}c=f$7d4c^7NfHMw;1)Q0o+Z1qCeF10N0yqTm zrX46?qjxV7cZ|lfTaq+b7ki8~ZEg7n85r*KvfIj>)<KLnb!M+f-;MO$v8Cwn?3I~A z@GOZDqL{r(lC6zB&H~<)`Wy;4FGj>u_RSJ=NsIzNyIo>#it(n-?6nfJGsc@bvt!LP zmiOTpAye7wCE2~PhnVLEq5J+AZ|cmxMLZA12=vO{D4s`R?*oO|w@RMJVnjY<Z<d%R zW4x&|`!?|$jNM4u-jN|YJQq8kMc*P6JfD6C^6ZlQft%(<owrJsyqjKwnA^nD>ZW;3 z=R3vI?WVtuCcY>AMi4#Vrk5e+cHzy{@ibcPyjMKO$J4x`bGLZb#?usP?-S3f;!fx9 zK|;W8FH&04dR_T&IL^i879{%)@8_VT!0;|!ft8%&{~g>u2gm1Z;r$klggF7{NHafn znYjzDCzy^7|D$}cRHyq3P{PwEP5B|>f*X*shu^+59hps{$8~v9C<T;wo#tCn!A{aP zjY;Ux>7=~Ox;G=%=SUwY;DNs_^5oLH6&X^O;ogv)H5N(~;X#vVwMo=;iSw?Cjyw-D z=_nL>UBDKtHVH2aOZx#zOK^HzH_Mck;M}@ynbtAZrZ~B-J5Kvn=Qo)GP6}(nbuByc zI+}G2u5z3!rLJf5n)26#bu9}_U02Souj|U;`ns+hF?Gpp0#^x3PzTFA_%?hxm-qon zyVjJvIV|}~mdpuu*?bNm`Xu={l5Y|DM$IF`Yr)<ix!We>{*=xAhI#e5FN$*K=K~uo z<8e-tZq=v4x@Td!q+aKoJ)I7GzmlRE^0VjbR;)_SLvNmATCp+t^|@d|+ot?Kn!-*s zg~1m5>k2yKC^(7i*;@w7yX&Ryj7ff4Sog)c?)6i2-RDW&>u2dA(CWKU-4T-a>8z%E zz}1=E-B0VhN6avECpN4?;`wAnXmN?>(SJv*VoCh`powg7Y}gEHf2)meG`aRL$I+UI z4AdLp?UzdL$>>TKg_UkdVW4OOzJH*;+WtkR+9ZX~RNFyG)-xoN8VGNpVX^UTO!DQD zUbCpPX1*{6ZATa{W@_E1TZ$?3@2C|+RGmQwhlrO9RTt=PS~Z2AR{Q}mN$(Q#X+{26 zQ^tBzhTOMQvtyG#*+f%==U<ZG@s6A<P2e_+9kHK9DvvB!WKYQ{{0#2Cw_{9PCH-TS zUUDw~+}+YQs%ra&y`k6%G9;`-EoM*2mqUjzLh2|+^3x&dE8mWZ^i?_>FZNa5_A1g3 zAScxD_b$aih#KAs2|zV`PEn88J255r*Zf7S?^>_UX}vn9RqC8p#PN##_s9_^#4k3r zg?fLS5Wm>8>iKZzjK)ofUu>X8TH}QH#io~Uf_th~<3%Bl&8V<9<3#$!2HQTw+(!Q= z;4d~yu62laU^5kaXWNlXN)z3&+a+n7Cc0zqZD+P=LFz~NX+MYu=<^`yI~g$W@jfU! zu2%_;!GL=|DdEwUeE>0zHwFRjRkLU<%sOppfv2mL)aJe4($g)cuSM@h$Yrl5#rzmf z7J3?;q~?#<^0EQBbG*Msn0w0W;c>mKc(}hm55&1oU@eZj?}gOz-5TV1;O;{orQEM! zS;)BGLz<j3{ix$kadO*hTn<|fN4sV76MwvgRiHn(-O1_gPTZg!&qPezpdH^tw?RAp zjpPu+(?Y3(tU_rQ?6JZ<qav2e{kg$AFoI&a+@H^{=is5`a=+ekxxYAh5E0sPxnFO& z+^@G>?$=u`_v<Z}`@>Rzwp{MlTQ2ukNsP8!?$=u`_v<Z}`$tti2s*Xpa{rj}N8!<y z%l*|twYFUDA15Adx!fN~b40b}a{q)PNAy~6)l4+*#HJB=wB>UDq=07|+H$#na??Zb zXv^jP`s_E5Oj|DZPjC4OVzlLQ|BSY8!J{pg`)3L{+H$#nR`Mz2(U!~ovr`|%P~I<= z%l(Z)+e2cx+&?Gy4hneKi9d_+PbAuWjLFPd?D(0v7FsS(@#B&dgJt|km5d((-wSsO zEtjXhKo>2Sr>HbZ!heTD5|;2iH7IFkK#GIh{vsY-v|--)o*dnA!d`>c(#c2`C+sz7 zD}x%n;|;3iTj(b2HE1v219v${#z!%qve@9MG+oeD;mpw)2k0W&{U&{HDFVy+WNoj> z(Glh7&^fYKVFOuU<{*nbW=EM$v-?eUdOT_>x2BH&9)86>YpUKpYwE-d`!+y3(7uzz zV|Kr(wcb7!dMaYl*!{}H)Vtp}vAUVN+8HF9;Ovju=+?8hDVJLXQTS(YyC&__+`E}} zbsE|K7tH*YYx&BHl*8DD=UYr)VH=)r6?Z&~ZFs&a?jVb8c)nfSnJl*9dEK}9EVkkK zP6;n(u?^36i`#6&^Vo)?f<bP>^Vo)Cjq<n+&rid#1{&dAg-3osJaLcP@ci`5bL>cu z+weTL;mDG43MBJnIJ=KT2D=T<V;hce-8qG1?xX~|<!qMg-i9(<_h0agxh)tk&z*&5 z-2HciD0c&r`0iz>A>sBQec;XlQAzhs#HQRc@l3l{ASB}^kuvL6@XWc#A-u^w2zTCn z2Vx8E#}HC<*Q4Z;yB*K6`#Xd*yS#6p;`Sg7?1mw{)%_=gw7D0+U3HJbv)!GGdTZ{N zP+EsO9l1K)=MmoJ?!&X&U4W1t_h`iSx<kl2#eF?O`dnUw((lMV91!a>(Ie$0g+=@x z#Pc?Sq{Vr50<Lo$gJ(&B6EX0(4=*g$>?$^<3x}n7THESzA6{4{7Y22U!Rf+qnv=)u z!wbvh^O6*MKBxELabmrTUo0e%Do(6-@zKH;P=1_P@8UO#w7ws|s~7Gk3;)b;Zmo+? z6?+&?tatHH;rk3H*1P!Q;w*&c^p+bx+;Z#TEG=+v3NVKMyI5~i_G<UTEPJB4VH3aB z{R!j$GOV{LW24&#=J{`6y-mIg-Se35FT;B4GRlMQ`528?u->m=y<fq4zk>CC1?&BP z4C`HnxnV9MabmrjXXSqem7pS6@5-F~!`yfh>|L2#<SOB0X>PbOuW&g$@hr^^SLSE_ z4Oz6g;mU%{Z{dNC%n~XKW#<|v*t_L4DY;2;3)iyQE$8tP@8yHN;{<!RT<m?1^%Cse zIz8`W*^LwI-8w_N3HELq6n90y-qri_7or~dth4%nkmh(qdsh#LC+@_VuKJ*N6p~d0 z?OpwB{%2vH&)4U9SmzOQ!__Z{N1Ge2elh(Ow%Q|3srn`HXmi8WN5rGe4OhP`9&K*8 z`jrfO8ao2kTK%eb1t}1?clELSn=uxe>TlFj@J&Mjfg;s!)l=~8dI}z|r{IZt3ZAT| z;5(WEF*jWOu6W8g0Kwaj>c4ouB{_okt{%+)F(l{T>dE<GJvmPsa)_&|9x~(*@LheT zo}6dv$$8F@L%?_S--X-IA*{9fBk!%Kv?74->ht-{McW}S)Kl<cJq5oo6i}V5{xbDE z6i01txcVz;oHjRH{k3?8oH)y_{>DqA=!zh|tAEIU9UejTIIgb8LcYn?p}AptCO0?C zF%2Q#^ccu@6_D@CP_~79ci?zO>H*}NrD<?4Am33vfP6>w0P-#E(U9*dAm86(X$JEB zVOts?-%)9Rd`G1L@~ulVkZ*cI$TvOtj6l9gb2%fBZ`~FH`Ifd=$TvOR8uDEQ<a-9H zw~+5uI2w?K0rJgab;D-VlQOfOltJwYA>W)xA>^B$5b{k=2>GU`1d0LqwiE;MEfj0W zcNLKDzb9P=@_oqC1;}?q7a-sC=z#^~n;s2C2jrWc4C(;nn+505D}a1Ubr$l?Bq8LR zrvoA6o1PHz%{(FGn;rxCt^)FX0tmB^?=8)y^8oo~(Yo^h`KBj?d_RU67DB$+5h3K8 zo)Gd)PYC&@Cxm=I4o?XArtmh9?<yeQFOVDq`SvhDWGn&sj>rMzJ0b^=Z%vMYd`IK} z@*R-_$ah2zAm5rC1NqkE7|1t02J&5nx#8>3BNp;~g(U}&?}!{gz9Vt~`4)0A2J)@R zF_3Rf4rMeT-<lj^Ndfs5ax~<-3dnaJ6<NslPi>`ud`Fc6@*PzQ$hYnT1NqjK8pwB4 zDInibrGR{!N(uR{0`kpe$wIzo<5X8V9+2;-Qb4|=N&)#MBN@nd6_D@WvH%15ev>T# zkngAfK)#~_0QuHb8^|{oWCQuG0`k2KC0NLJy48>a$ahp4Am34GfPCxH4CGt)0s9(| zZ`}v%Ye2qr9~j8D^nrzZM{Ehmw_!^{zN;`d{8o}<Am7(oasc^`$N}U#A_tJ~Xh;D0 z*5nw-w<d?Q0rIWMA#H$s3ppC{T?OR36%|>?H=)HcB!GNJl>+h|RSL+r84^OitAKpJ zg9RAK_ev-yQUD;|Q2~H_M+E@#t*JJUZ<ZE9zUiTi2IQNvg)$nDZ#qNBw+J8&`K|); z{WaEZAm1OdwFB}U)egvaR68Kwx^^NN0r}Ro8^|~Fhmh|g6t8Ya4n{wPa5>F2knbwY z4Ihs%3;7;|swS-l<U6VtkngBoK)&e-A>VqeI6Q!S>#^eS0P?NJ%0Rx&SaDpcur~5A zD>abs&)G@=`Hm_D<Xcy2Am80!_z?0v2oHM~kZ<Wy^e!OZ(xDj*`KG%&qaojPhmdc2 zLdZ93Fp%#m%ndIEB^L610$5qP0+8>BDnPy?ssQ=cR2j%Oiw+^*^prs&Am4Phf<!>R z=?o#?oHQZin;rxCt^)E+2#bY$f7Ox#$ah2vAm0%wfP8CG4CH$WJIF%5nJk2S3k9GH zkZ(G>K^Gw3bQ;Ka6_D=@sL?{c+i+qp9RbL9R68Kwy7tM;4Kv0-zN>(IKgrSz<a>)P z4Uq4sG(f&}X$JBw6VpPznI(jLlbHuJGhdHzVP*sQuEN~#RD@Z`_x-jiK)$1@0Qr`x zG~~Mq$oDShF_7<WoPbJW0r`&d0P?NLGmvk3LddtCcn0##mo*{en;rxCuEN~#7f_Et zzN;`dd>ATfIcXYdHjwYjY|VgtM>PZTEj4Eh<eRAiCpC*d%vc5FdnG)x1@c`5<hvQ? zwifcutQPXkot1@rbH`*M-`u;*A>_LXbHm&@SjabZcnkTao^2uD)P*hNo0_bJd{dRQ zkZ-DQ7V=Fk$wI!VqFBf`^#cp}=CW-e-&{>C<eLklg?w{avygADDHifgkzyg=l-d^Z zO<89l-;`?>@=dm}kZ-bxg?w}9E#&(Ox((!;;>kk3DHJT^o3qkFzBxxM<eLM4&x6tR z{cs6`8pwAQknbB%vOdXeA8}uc1TPEnUC!4|z7dH%!f9%!$Z@}uC5)nWs(x>!p=z~P zc`UQsT08CYO#T6d<m=LO>uU&WqdGa>9Ux}Ces2H^&`2Oqwb};nHeJ9O@orndnHjoG z0cX`0aJDUgZz%+-R@>-(3kCFy#%o*N)`Lusv7)UlpFsl0<MLG7R^}_Xz#~$vc18LT zB=7c!RI6Q?Nur`99+7Ibt0dW4?{OCJrqt(Az<C~#YPB~@%q1R?YPIbWbCXA;TJ2hi z+369fRvT;H2?9Rs5vf+YUXtDG5vf+YLCC%z5LS5JBA$ml!Xs)oisuoJNVVEqCC_6X zk!rP@CFV(wNVVGA#B<QQk+i)-rs#7Xk!rPDgo5XrHBya42X3=Qs`33|-fh-MHF{dz zX1<z#rxe!hHuI(Hd(!XffrN9LHB#*+RIobUj8+4wM$hr_W{p&%XKlRs0{pyBVt`a@ zAyO^HZZ8}}_y^z+{xe9m+8thVH{M1uyk}m#Bl%r8vYh)JsTAFgcjz3vvr4Ca1kXJE z0+>!IWUluA4u1Wn&U50AZ$k2n_eq46TRU=#dr`#O<{_*}+>ZAgCTB-p8W?z|o(oSw zJb5R@g5qaig`lFBK*p~3V$eFu&BJgHt;WMm<Y1q44d14t<C5T(u3zO2!hIbg6<>eJ z>6BCZ#C$;8-pxRH5J};r*vQ&~6^`@Z--j{Gtl0BTo(P}rAfV?l#>+#ZQuiTeaS!6V z&T^%`pEH5f$A^<Y0p~eg2PBHtxFrfBO9JQQDD<Z>lnzClggO!~C;w9j-LBmkj@uD7 zm(E&y>g|s6ol_Xd1~_>lt-4b_x#x{GR2@W&A^s;2J-N3?Q8zK3512kjTk<|6QSR=R zyAZ;E6ZI>W`UVKo&if_TXBfqI_Sn3k?#{o8No)R<!G~B6sZ_sVg8ULB=(=6v|H$}* zjFR3s5-z8>3{C8MkK4q~tMr*TCr?ab*G|c{h@s=NIq1aBz!l`cDNOJ))Fuz7NITn| zu(M4nE@m7_l{$NIDcVvLY>auog^^6<%%w5!-u~>Z2uU#{|Ih4+cVyW&`<aX+J4IUQ z?!<nONxshDgK)?Q+45<nyT@4RekRN~k2cGDV6*%`8N{)5iZnUi1C!(QHTRofJ=(?J zorSo)I&P40M>0#tlr2EF&8?6WfLG)4<G8!;!^_jQ*EuJ4ar|K}^P2RARWRKqlahF> z^mYuwTA4ZCuIH{v-wy9Okxt&OPhHb`w<+)mU9JPT)cOL)1JJH(TAwkoSDM%~A$Dh! zb^P<!q|ZfRuPYq{E#9u*T$5e}?<V8Dc6<6-Os?}y;+wXo@4~RY-gtLzPd|>t7Z~sD z+tVL}_aftc=$iBw;l0>+AGs!7gZIs*<R`C5H^F<2@$TI|WqGTn?*!c`&g;=9)k~a9 zYnrmhu5qS3YLc90lH7tM>5r{|M5yW3e0aOl`t~+m&LWctopDQ#jy`w|!{)Di1B6Sb z|5qiQ@GdYg|J>adPD6RLo7q()x4=a4rRh_UxL-h8u*G_1^|j}}(HTgQsk~h`U7Eh^ zY<xph=1hYz@=II)x~z*l5q;0Uw2w9}C<;Vu*TJjPRF)T)$j#oa+b@N2XPx{xo!UuX zhU81zC>gz7doN8Bqqm}Ba=#ggI-b57YU6Q+@S{yOclWzMc-w27mT7blH<_Xo?f4Xm zYuaW|c;5(9|FcfrG{vOu8{C3)vso=nZ95CrBAc7^Eqrfvm=RSZZ54epkt#Wt9V=hs zxLGI&hozULm!^*^Edh!pHh_Q{98mhA7|8rSC!JoA_HvjM$~g`iq>rpYebxkSYv>6W z6-cQ)8B?r6l_fWwmc%_t7b#$e51D&hog#+yCOz9-*@hY=tjC|$R&a}nRjqGoWAaSe zr5Eeog7Nusu6taGX_`y{(wJ#&$CZX9Yd#ECOVd$s0R@@L&~g$`oGQ&K_26d?I-m>^ z8&fnF-2PlC?RB+xk(xXtGeoC!OMn4J^O3C;+zmUky7N#a`=g51`?{-0X}eT`Ua7_1 z73nmRL~$KRsv>V^2?Y&9NOpzIz)($VyU}ga&FgLq*MU7~j?){)NW*o^6y1@eqA!e> z5|1m@cX&U$=eW{>HulWa#*{W4>S$yiv?w;7pS%hE9Jd^%B9?+0$bL$UXDL9E#*IO; zku6i2(|p5eKKRIvU&b;9c_!rXmFPFDFyq*<X@PTW$*^96O}1Rq!;;C3y88;ICnjam zV#L!ueVV6AmT$|NxtfLg9<|IcMg<JelSuc(!2-If9EYX_6gSR})`_gw7O@`rtBz^f z8@iEv1{vXyv+9_zQ~C)V*45ZOY<)LbnFG?(IP!K*_0D!=uF6!aX9qj9nhkoYx}B6O z-gw4{Hx8r~DpCSSo*+z2Sr8?Sb1PL(K8a5Y&lr)$fQ*bwT|l<v!tQYTFrlv}&mPZ7 zkJqJ{AWdvDnK~~WT;Duc7qjBAX!))*dFPc)?NS*_YqlIqZb)lp2qRm<LK?(ZtD#r; zh>dKsoL1GG)@~XdCa5(q1xAGYP%n}v5jCdD`lffA-VMv`VgFl6F;3=KnR1m#;wfgN z!mRZYXuQPlUn~+~s^saZ>G`cE@3eaE(-Pfrc!Q%ey{@x*vUbwWFrhs$mck6WL7J+W z6KB?-mgKXd2{t=oR-C&~!Vd|fW}(8iXl6>2*EyW?Oh-#Ip|{9z*UioaC@WkyVIi5L z?>LK)EHL9C#Viin(kSqk%tn2Bfry&&Ch6d%sZh`ru)rTCe1*BRtg*xFaN<klW|w7< z>gA2q)%VbfXw7ik|IQ58W9MoiKqj@591$YkLQY6T{mae>#eSFo`$*gB<4T$hF!8O- zPTP6kSZbs-SgDe;tU#j1vs{yiC_Ae$%Nqqv!OrVqsOOX>3X-y&%+2HHTcxpwtt@Sk zbhcKC%GOAhv<XQ@EG@xMR_hy3$IF@l+9wepwP^G@v}ovLU)mYlHBJgd`ULu3PcE{D z%<=|(t#`Z_n^I3&)VF$;_36INMe8&)3_X0Phr>73YC6*_+YU6cEjuil;#h$Vf%U99 zBkjH#TG`Bq6uo*|mS<B2MKac_p0nykCR*!fQ=-fX7fr3V4uwgjcC8fvI6O{EnP*5h zdV(bp(qN*rSrCbtg<9||ie>{g9+Wmqq))I|FSTOlu<>GNnc+9k#VIr_bIfp#o-oVN zmO44K!b~a2pi``r)*0ax4gRXI(T$?$@Gu-@*fz3@j|fMuF2Zq+H1bITVP~C##pFlV zC%4l1O&IKB>Kj2OnIM1Kv~YP@8io}D+_*roH(8--Xyr3#obK4MXeEK^w347zje5>W zhoT@O-ERveJ=tg)=giok`}8iWX_ASWxALVhfkBH_sFXD6?PeN5Ae7A*7*1>4HZ_l* zqm^;9J<=}B%BUH-)fUQ%q8ZVq<ww=d)OH!3`u;G&2FgV^q+!80!6C<mg2%9*^oeG_ zmy$gb=S*)jXQt>m)5mGjUq5lChErG8(@3n?DKvfj6q;d%NoEA3NaK7N6oDl(imW(` z>^M7|0n*HHS2m|H+=`zD1{N|frL|_<(-LuVTt?YSeXx=WSvP7RC%NTZ%@wAEi5jxy zWG2v@oR-e7AGu7($$GnlIOzs9RkLqBg-sD}YhAdG*l3*$xpo4dl&!YfY&mVR1sNy! z<MaeBmNIpPYq%g<Ruuvwk=16a3>$$xlFVmGNU764ZZ6a;DQyi*Zx_u;W^7lqv|84k zbQ<D=mT~Jtubo0uCYvXH934APWGAlmJ*)Xd`*E}`YV$N(P1xoE+kw(u9Lnhv=hBR5 zF3r?)X^?YiR>W%H^TxRZdkr`vLGKSqujm5|)XHw1Yp2(|@zZO5<Mdk4IK38zQ$`x4 z1<@i-vOl2-n_Z~s20P72#?r7jnVI#g(_xcEak-hWy420diThW*YN&>}iZ1b^ev>I` zr|$UWW!#*dWNoo591dP);zZ7xKGpL9qT)}_)o_wWleDojtX3MGf`v16k_j+jIf*6& zj=|V`t-yvSfe?4~^H2+;_K*ZKj(Y5C6PUMy^P+JobcT8B7b<<EQ7^)}ZD*nieKga! zZ?#h=?CU8uB+SrfnZ7@)Q|Q&yPSyL>Y2ifC`r?3{=+i@P*AcXySg)r}+>V5LYDj_A zQzsQNb}7=435tdK`7meV#2<<#{#-rr=SBO$`IG?*q{$exg?3Ue8b7HQH%{s$4g84d zu(Wa2JZv&~w=C>XnXBO{IvgfO7uXqGzg3m~Z*1p^$+yRx+%n^2n{JM}^$eakv%^`U z%v_ccc!{Zv-U+04F!_=Vtw#Wlxf{=r)6vRlr!z_Fkxlp{r`wi)n(REx%OsFdHk@3L zhV|6#t)e3+9hGGbcmcr$GgKIP2-(wO4@sg!sK(Neqh-QGYy~sdA04%kZzy%^C%3Ey z?GZ=eu-nUpr=8O10`qi)qi=>&PpD2UK)N(JDXz&GN|f$#Gt3@QPT+gJ@$8+*_fsOi z@6&wWPiEIgO@=?TLOLyy<v3xQD1D}bIPR8&KdAH12&V@)nT>-E39W;>E~H_=VBLyo z(#*26Y_^p!<J3ppA<@=TW{H*5a~r!aoILX=VCILBlBZrEESM}x_gS<QH{`-0RV3dX zcY;KXO<;D<hDZld|A<>&3PbFfkRE6ALWq5tu#6ri4eT69Mw2KNPS&~?NXRi>{$*@w zXp&w4vX+!EBo_@gIju=^U_N4D9RKU-JV^yb+aF<ZIR6bNe?*S%V$8xx;@%{a$nM%S zM+fAZiZGg;^z0qGbHlp?%#2*51zLp|uM;r8>mu50l?X13r{|^4l{B?>h1L{}dp8&A z%^bV>l67l3CQiUkJ?pxndDzVf*kh$gukeD|Qe@K?pt)1bOq0&lLDA{4jE0^h{Sk+b z(~|3Xf0{lf8jv0_JBRxC=o}gK*)6s13VWE`kn1W@9_y*5q@DOK%&rsT-+e^v{HI>3 z3J05B(eepr6b*7XWtC0510e@b!u0l#AqP2R-#kf~WV2|I(X3w>r?eCsWrh_&B|FVS z)-O*S^yX-^D~-!)ODNGrLgFScy}4+!YhP7Dzy&YyVk=Y=WVG}-VP_a<<|+>lqnD_4 zEMvEBW<)g~*;T~^S{+04K=hWQjy*KD+e1*vXIYBM#{^*$GkrN>-O>e7E5T{Dyt2^h zN?Zn8LbM90wG$oSak%}LDpHf3m^dgw#CcYx;!SpH{4nc=XfC%rJdwMtghk(K3CnYg z@J$DW)+BFy8%1s;;iGvRF?A^Fp*c11{UoB?5)-l{Uh$4QOlUZ8Yt+(;lg*B3PgLK} z6IPmLTTxhbMb9R_)s3oIDX-S8v<~@9vma!2<JMLO*GXx;-LV|T$=g10cx%y|!!ZU9 z;2I|$&;IM)2zT3w*Avd2x(PLo=|epu;&_=;VR#?)k3R(?Xq;2i!WNr4ZPPe;8hNh% zkaeQ+-pEi^yRd?h2m?7l5+;S}9`e+rua)hJOVuT9ci+*0@Fa)6<5@lz&9Ejbdo8#? zl)`A`w%~$sybvA!j^q0BBs=ov337&qXc5=3A^H$aYSCK)sPm0SW0w6UUGJ+_3v0LX zxu*BN+@3e07OW0$8LOK-QTHmTNAXCDG+FLKjZja<X&Bs#H@?}E6EePz3S~{d9#{he ziL`l{ghrc3|LON1W^W#{9I6c87UNb>-Cw`~T0v$Pecc}u_STcVLXKwMEUoR#9=|ov zuaP5m#nD;ge4Hmti&xC^!>nj7r}_fJWrm3tHtw+(h3%55q(#T#NQ+$(PH*Jb>{owY zCV}BJe%Xg*b-N&_{alVT&<FeD#xpXk1AaIiCnMFKl*!QPO?7zcL%k~1D8=gD!B_z+ z{X({~NRM#)MVv=im}U#}+P72lk_C6z=>ckAYF<W5RB4i#Sgs!<E`C-40)nn$C4trA z$4P=#%Y)JdY)G3`ff`=EG|ubVIQc;9`A+BfxgF_1C|vVKqyfp;>p)J^#!1&}Cq9*N zRNV@FA1nP5j4<B5aKz0dl=lqgxM8YQ>Ze5vI52J^PPbKs&7EN-#!Ne;5~XFuV937+ zwER1(Va3LTb~#aI>+E?wwtBqhXzEMhi2@F>Cq0;mrlXb@^9-|!6qvB=&$n+g7wFB! zLPMpN8GfWfEt<GaFOH<e5-ly3*2{&%xOOiKg#cR3whfOzT39ZfhS6AI1;@%T4+fTb zR@F15;~Xv>Z&+RT&Jkg$rkW!`NvOo(rL8GJ#)Gr5;pMFzjbp-j-6&0t4Z~&V>>5wf zR@X<>M;uolVK-wut{;(Q!BEdh5+3ns;xOl463uE3@1w=}Pi?#=%tnny(R`p)-PE|b zm)1;Hhk(sAHpA|nvQ`x2><kYTRcQs=mDlTQK~J)169z7?+uzs2&3b%2iOcMjNpu23 zi{Z_vQ#lYV6Zz93Qm{8@)BFjP88psDK}`8mr%ra*Iov7I5t2e5-LnpAo^?=!ZmUT| zM*v}O)rq7?)fDb&R3M|{fQHC7$&rdV7Wk7;R+%*985z3z<;(<xTot!M3AE|qw`yiX zN=%ONxF#z>lXd}YKriYUILW)&#(w5IABf+AU9bRVHR_w0<sk=!^yQ<qst{_tMU)fH zY_3rC9ApG52TQMHw!W8K%Iqu&D{Y-*Rcy1VLgprRwf-zwgQG!>Jy+rck1z;8Erz<P zetp!byQ3vqjk@$iAylz(1+%+)@cl$Bv)A&gWwS|V2QEp{g@z62x6DhxLA`z%ZE4UY zk(xiC*M~_Ky>R~M^#*HS1HcUc1g)8}Kdj=cVF(ka?3`#x8PZes<-eG<>&U_e1_3)S zB93@5MxX(yxWtU0;lAk2D*`U66HtHV-H&vV7F)x1Esao#5^EPxawT5$L>OfDu8rh6 z&^VWSDtfArbti5Z%~H@f$Hu?KwWAI)^o+0DIEHgsGoq;s8%8}|LA~-}-}wkhnt!ua z@S9h+b;L$H#tGA=9&jwHxbU<gE`ps~?dwnDEG%P%t<#{yIvse@xooqAQ^8`7>*lDa z9mF0(V%hSbqC_u!kU5$gowl7JCG{AKagw5^u~hJ<-9?U5r>EE%s<(}X3@vT(GB=!5 z*aKQN(#wV@uNogaZZc~=)u3Z`gGFm#r&wQHy&gkVwsCtrIC0wA&0;ir=NQIBKLKyS zWfynhpblvx(8kRUsTQ1Z{p$M{yt-}NMdHP+)FOkc74LC-!Elc_4qvPfV27<ZUEYXF zp7aH+KA>D#uh`qJgVNeK)1!z9^V}?n(LC?*xOiYzP*a@<tBSf-j!*4GHityv0&6#< z!j#yM8upeIQO{w1hJvxJtH1s|?<DKsWZ$HW6ZcJaE`-x7UpKFGy_0;!B$U{h#zoyK zm=Q8L)Br3bdE82;M<aag+f%SY@6UXNqL<wWSEc8ExGIXbqk%q*3cf>uKB$+dZW#fb zc=XsA+dF;-!@Xzt$`u>Wh-tN4j=&iWf@P|f@(rI3M2v(NLD5=bgSp5|*K0Lk#SCT0 zOsm2T*5_%|pe;^AMj?_ZfA0J|+Kh~UKh)4?7*qSX)C3NxTa_jV=Se=fL%9&kS)(~& zFzhBp7-GT}7pEx=s#?xYm{8%2Sk-ou-LzOP<Wb3l_f8ROnobokL;dEaGEr2vL^85f zvk&m8fFMNDk&~L-Shp#`mr(lU62E?_+ks5-@r&?}mh;{9f=RDd;L%0~2&G}P2pJC4 z45cTPd;?<_i<jK8Orpa4Pd=s6!yJA<^-|)D35+-kCB!6~5n;yq?-eFu&>~Kr6zJU8 zadsy>2_y{ySNAq&UiA8992@dW3$U^IMu?IgxU_JSAX2Br%9B>hm)wXnuEx~~>vOx_ zciWAK)KIq*vAinpy~iC{+mr9cMU?L#qqi&}2WoY{mwWa4?=vUN?*56BU}`i8rs+w5 z!!@+Mj<u&_LWJ8qKvXzMW=1O?ASsPgWR?}e(TO$2fg`|^vpU&36v<wmQp}xflGrmd zqmk+9)PPE<7q^pQQUsZ~248!_V36}JP7T-n9du><;3Fpo|8R5xdWGFR{$ZfN*?|8G z@&88rkKzCQ`2Rcn$K0-1Q-R;_yYl!f!=|EW?<;V5-@zkJvjFb1c&MM@;s1tS#Y%WZ zOrlEH6g+}KJ{Iz^f)91HlZ-7jA6-{fDk!O7kLp>ky7s8#3#zt5E!v|NII+0<v}*l@ zYTl##J5+6ta=)zRZ&RrQOg&|d>PG5eHD!;<=3cLcS1R?QDg}F00f~ZLs>(t(`NOKo z-=NeX)%u`P2N>oDTkzw>W)&a6ubPcVJQ&8)5BA~d27B;K1S5C`v4J9kV$+I#u$eAD zU?%U830cP&J6YBlMV0Y`70O+&`i4vkdajS!JGe&`gOw`zh*~m7E!?DfUr@)fieQ!+ zWSJu{u7ICCYC3<0Rq9N(KIf$#QJFnz`5M)>M`eTM$_*B%ft99$)Ed>gM=kv_J1{Ac z^Hp+CxzDJ+6-<I2oxeu~DD9;Z#ys%Lpkb$1adanRC+Lb1JCTiqb%GHLwJQ(uihByZ zpJgl=#@j&eg?y+IxZ$fOAdunTM*s}S<YQAxYUYb7ze%~VWhHgaN|lQ(E-AG|71yie z7Bzi6(kv;ej_Xz5sOo-PwH&89HmLqlHDgS5KcZSztHK%VEI)uBj+pOV6&rL_I|D~l zjY02IE!yXL={;)Q@oHLZK?xUisQII6_z|@z7*XjlHDf)47LBTvkEo?ONUdi+6z#_b zOU9{Odeka!%CJ&Fk6IFJQ0Yyo8e51W$AZ$ARoj<YT-R-CQEY~=ls`%;wx~3I;{J#l zSg)3ClHw#H=niAh+|!UrvjOO1qD|^F{CK1O3(P)S()uW+?{qaiD5}H9(14;k25lHs zJx{2452!v;Kcc#BRo$_HlA1N94%?%;M^$@phgvkI26n1r#?-Q%s(nQD1YcGQ#?<0b zbrf=ss$L{nHl|jLsx|P8qJ?+Hpha#d#b%epQC98&;g|VPx+s1s9NfwH1sed(FBCgg z1YL*J6g%(5FGbKp_!T~y!K*A>Ud9mn4qf8?EK+zBMsZ%pqz>`%6Fz>42c|V#lv43# zxO}o-Ohi>Dyb0mF*^Ho+3Kqc?9LdKid~D?7Vm_|n<7Pf?=i>u>h)DY+T=9S8gZE<i z-{j*vcqj@tpRqn=olnu{AENh*cqD&97bT$&5t)p+uLfE8^S%y_A2^^gW2$gH#Fq^J z7M1lmLb?5vWSIlXT{9Pw3tj9Lht+%tOe9ZTufW^MU6SJgm6sfu9cmf_AW(LwJY5f{ z<{hdyrqbIKzC&moQ~6<)y^bMO@Cs(qm|8HRmN4n4TFxH?@CSn74AnHITEGok)YLHr z?n!FKe_=vxsU0l3qAM&dH}zC*P*cEHsC-2E!5p$b7_>B|GW*e_^C6?R%H(wSAh_%! zL9ls;D(p~dO!d!E<$bDupK67WN4efCEzU<(=1%DkG*InR#W`vgV?V8WS@}NIbcM=n zQSOeFDtkbs(Say+hf3~OnNO+Ql~VJ8c+C6Y_F<KKP-S;0beX$jE_#{y{iiXH55X6_ zh-`CIah+<@(gO3XjVWR?i)#9bDud7wKHZ?_PbQyVRQ;0N4c1FSsV10>dV<ni)%2nY zAOSY3>c><fc#<8SIHa1ksLYc>Rv16yV`|};TE2zDmI!XGOOlCAg@_4>?PLX;q|YGe zgyub}=?o5EX0s}9Rrz}^$1O6XWsS{N-J-g5wtoJAH~6y$;}4QFeI-zNNX8BW$x?zL zmDz?RjRl4E|91*X2gfUx`h=AFtTeY8>j!fOPjJjq=$-YdJfhmKQMnN{b&E=FRXGv{ z9^eo3fFys1Rduau1*Kp!a5U&`I$iaRs0w=O3e_{lGSH)m{bXeA&g_-yT4U2oOo_hf z$BF_WmkIts+SC}ca73*fQR_x1PWy+EaC4Y2#Uh%ei2VA?RriQ$9Z~raHAKqxNk^yH zD4RqT-cR;!UeAHVvLkFeqG#=hlEK5|UBhYDzDGeBEDq5vYs4E-rVn+d*<bZP$elrM zu7B=Me^gC{18d{9*{Xv<qk81QDqIpdxH-%ON~ST@hN%X1VcrOpk4`jlSmZ_gI!*Pc z65hcwhJrk^j_EKzHWeDsi85_-n3WI~bFjn=tIjc1+roknL{`{Oxs>~q0vpwn0~JhV zZj|hqa9$#fs6(6798x}}bL`O#*rzflU~0|*b5fOvW(SGG?4ZmrY5-)VOcI+V?s?yT z^Cp!)@FG^ZFJrE4R%ygRyP^<YqufJk&5^MwMWvom$=HHs6|gLd;x&h$#yzUVE*9@* zFNc2Gq?C6#RZG{WIvK;z`(ARBM8F^SwlNZN5l^3y7ul%5yMj?kiApi*4K^y{UCF4d zMCBNDp^eIWS23y}QN=BYI@3m#7bBusA}WkH!$!1H{I^L&m4%&eBWkZkM2AFlGRFoR z(M{c>M<RN+sGPqZuk~;d(ns;=_o-V?<zrw}wfSB;HpkVP7CNQvV=BKz4c{y2-C$Hz z(8pz@brA^}*al6t6v#T{Qwfhz%Z_hR1t#(LsnULNOcv$tSIfN4-~nho`9lh93!$Gs zB*{l-s}}S_7Ap_^sERGdSWxrF&rB2A_ZF2L3xuDb-67C>1dsURc!;v*#^zCTO9afv zodFl>Gjgibsd^CNzJS3_f?2RsuMggd<!t#@mBc!Yy@<4Ni@!%He+c^c4$U?X=<pGQ zy9kHgC<Jan0n6vAA{K`iwaU81hxo$^shMq52zN&iSYqIddO|lQ+M?!>CML>qZN;SC zDpNXrKs8-1MCG?Kg^%tbRU~`4I?`J<Tb3mdoz=Z<<gGtj6*fTl?b3_O7Ko1uM!x)@ z%G|9gcc?6eNh=7lbDGe1z2o|h{T%aypX;>;ia~Iv%HAmyy{rQKSbts>ysNsk5Pce* zpLs!dzG|PZmhaLEiCzoin?xk5O(L{{O^Oo^^N_5T-Xx=&;i%?DF%rw?sodqNb(hL* zQms4igjNC%cN~TFlmBMcEBD215CethFua@1Kw<m9_HYbj^!BMNmQF12bUdRnU&VmL zDo~Vv2D7PDo7<ovPO3HoKpAbbxNEm6vkMbzb_Y-Oc?@yy$G@o0(|-fC)0M|(874b; zD$Q{!&2g%%qBKXldY`Itf}6B}`f`$6`xKSt1o!s|?(Y*+pB2^TG}Y%c)#o(T=QP#l zG}Y%c)#o(T=QP#lG}Y%c)#pSK<hoRlAs_LemaIA%*3ZXGJkpE#IF^r7@kmf<R_DOw zsa9ytFI)sV@aO#)nsXWQc&ln#0pZJazXI>wDnFgeJ>BnD73_HTs^bp_yRT6Rjs;{+ z%NkXEK)GHDqN2&$HmbFXC?cpL_{xdFt*UAIgtQgeRpZd17d!6<sgt8-=;xJPssr2* zlsVX42*Puhnz|1w>MDBjx2nn^)$<FcZQZPLpV8X)7QM;CGDu?g;Sm$&jE}0t{&EFj zznT%7)QS8t$tY~YWEp>@tiecgG{U`2YGAXt5D>YhZ&t_Zf)IAbX3ECpIA<86mf0~v zy}fx%WuYYRS1tQg`H*Ud9tA~D_PbDDb34?Gd(;pDpH>@osMjFzh&pUUtr}DFPy&<` zglthQ`%T_X<VDboy^?3&pUP9-uPbW~E1T|N{hNcj_Ni%Gxp6J;+o7gB$fab;UT*oJ z)t$9jy$(c=sKZCpv14i}wh+S{f#xl$wqGqDW0Shj3@k95=g`d-@MjE2d;C1EYR5Ch zSqDhv(Id>zkA(qEK@r31$o;Ad3QPH8YWjXsvgB#iHKMBf)gX2#W4bGMsujA#^}kZB zThw`nRAEe=FrtngqY^qF8Wi|pSQXJcWP+^k8dIY|#dQ5bscO=GPd=zRynDAl4wn6f z(>-4fcw__Ev5)+gKSN>J#we+!s&G7Ofjc>(@Qw{`tVj5MF>@caZ0sRhyls!Gew;-O za7#&gvFFKP^N1l14yoiFswLPaTr51%CcDhGz2wsTjj9D@9Lq}JNTM~%_*9pv%*R=L z(;+HFJ>F%cG}pb5$8iNH)o2=eB0!5}U%?Z(R;mpD|IXr|%|W*{1U#Z<$>te4?rKPG za1J;M?S(>dg4aG<WnSE&($}l<9CkAf+}bdiH>kE(sct#(^EaXYK8Pecq9iRRC@ctV zr$$M#{)4JzD$6`+h>C-HCiqJ5Whg(TSbtd+(D_tUle@6KVz2r!RoKt%E$f6nfdj2I z>Ua!R>{`9{nssHL=rP_-S!FzIZr)8PnBB!KupAkVaJ_+tDk1dU?5*@1WjqqIOnVC3 zR1;kRR?#O^>oW>wa>*O9J}%l`Y-#an{F;-}op56DWsDoVfM-HZJ;S5Y`8X;y*{4YM z7sh7}s8UUucc`dRKK8f4BdWGu&BKxC3u=)h?uI@-_YgK-hp1iM7L8uPj$X$cPT|}> zb|-h|`}7WBR4ruzI8ERWP8!yWDiAwYi^);Fe}NFWkaEYIwX{8`sxPWp`#5h`VhDy6 z4l8=M@-!p&w3=~<vJTrks8kDCDm48asvkNG&K~Z;IrITFv4GC46e-wi_HKUp#qhj) zpWdP1<W0B3JtQ^o5LX0%w9Dv(*mCMvXnCnQssu&jhvXsIS(@z~^_cVt4bctTEkwH~ zNEP*kbnW9Qkmxgd-{{5`G?t@N$gZp|g%kzp@1g^jt-v5+VGi~mj)VW@lrza4Y?O~3 z6@I;!;uPxP6At9D@xXk=d2#Y-p7Y3g7nY`W9Ed~qu2JOe*bIGKij!g1gGK2LoCDq3 zBZp-ebFYFDybDITR$GFmPEJrv)YwURcNY51_sYQoIGev1$I@UMoIbCoux$PqC1uvA z$CGX?qywTh3hzQa{-Yhb^7pu3#?p~os+uq7x|H3gnsM$uMy&#CZE~4vy$=#c<wg9b za8QHcPeSav|DZ6Ql>k~la&1<H&u~L;PV*+;=!~a^JSNnL2p?6e|Aj>?7*T_099k*V zC|M!VXhby!IKRQ#gQLC!D={jq&#LmXs`+{@NUiHtCp4f(R27P~-eZVF@F+~;0XyF8 zx8~Cwi5J!F$A(K}d)Yi3qt8vobQkSY?T@J<TD%5%aJ)tt^XE&%RpP@fs&q)r#_n<- zPVJk5_2EEGUc~ZoL_q*;FU7XzRSVu%+=yLF8(1BivOHANy<Fu}7@tF&g^&=K|M~T* za5?)3C$c?{vj^vosHI!fH0Vpi6g5z52S9x6je5bv{_8GTunJfkknONJc-@0_iOs}L zrnW|26UBn@$tgQfIrf_9>>UuDpn-Yzs2W%yX+-pFwr1kQGcPG7lkY2wkpB9`$Df(D zFQDjX^jLQc0)93HJeXG+0LIbd1-|uzuR=k2<4#P-rf%$ip|0$bo&46|dS=D}2@aCK z0*+D(@e=FHB0r8-O;A-tL|5@zaKD09)cF;@JL<%4b(3m2-P`hrC?r;MLWebjO`w%D z2o0<nu9xXnD^XR<yL7hVc?pihL|vqiXxgMI-W8(zVr@ZX?#ETfOw6v8JZ^V)s97uM zz;Rh+Kc^lP*@1nWpV0cS@DHp|6&!u-r`}H?ok#O<JdP7fylIiDu%j+utBxVA%uzK6 z+db5shS0W6<O!ZyfhUZ(m!X70a)HrhR1@~^TK2bMhfn=QWH@@U?L~57A5O<f$iz?_ zV~3&X7gZJ~yzBI?e2cCv)Hh@$#c3$X9n+eGo{Knzl_L(E<(>aOETHZD$*9$I<=0UN z_M=nu*obO?w^sD+lRZ5a__dlk9$q1E6@P|xJ1lko<6;_VRL88~b_C-%kCknb?f!b| zV$*kUw~&KyzCiWFmXvsWx_FD~nM21C>-f_lIC#ze1BFS`_2k%&TdC#b_fU%VZKkf; zB5p89Z8Kg#Ua?8<Y&Pj$!LEliVP}RPYz9xk4-P}}9#+B3ZQMS0&NVv<Y@#a%xCOu= z2X@dkq>SlzL*CO;riWScvX<+~=lwDtXGakKz4+-o#OYDNA;^>$`4Wn2*7d3%dII)b z@Z`3t<`XzawNi(Z%=~86g{5natmjzPW$hltF+vjW0UFckZH6jr)@g$dn>gd8@Tz?C z0ZfUYnHw+k=Un#7AGK~Zs*?Ytst@9z0bPcZpuK9qOX4_e2bWk3FI3Vw`_(jPh5OYJ z5X6w^m{Iqr`74+PVz#t~(+tv~Z#`G38DHUcV(vaw8@`9>X0CuBW*1;D*>pTL1mx-4 zAW6R(CdGlsm6TY?ZZ$ZcQn2Gi)hC+c)V*9Su$)Xe#7;{+t!6*V4KLOYEE@wm)RGZ3 zOWeg9u;JRQl9zK^(RBtl<;4-DM$|&61xG{dV1Eez|6}h>fa|=n`%d6}ywC#)E+7Dc z5I2DPP5>mel9WIYAVF+w0u(_~>enFfu!z_ic;F)MqSRT+Ri@M#PdqbCO6@pRQ%y<j zc*-7=>NxFjCQ`SZ%s5k&?3!_vW0F$0J(Vh{WhZe>GQa=1-}m189w4>UixVf!ZasYK z{q8;Y+_Rr^Z@I_bb2YcrD$Xo!BRP3~1bVpR;^E)Wc;Q+hH8i`!&CmepmY#JhZz5S7 zbUUCf$34pR`4xE6uLfK<XWc``-SL}pqU=KVLkIr4wB|;}j;G|Hd-%8v|6Jjj^~c>q z?dmJ12k(kJ?msBs^O3u*ofqw~{=057z3p_{f?nyGyK3F`dI1WiyZQAHL|g93QcwV* z`m62;FqjuaNctW`4*{aK=iRmlM2{PYXe<jNjuCw#5N-H|CV;*lIPSJX2kGV;>i)xY zpN}2Xb>H!m*73d3_`n|=Rt*5)d3WHZYmUZu*1*8{DuS~b-<DdpXRmz0aE8)7CK-aU zp(IxPZP(aQaPznGZf?gUaNBMBP=pA~DZBSx=we;9#|?`Zoc81#U%#*(>xmXb<iN3O zB?>;+)Gaeh`5W_gqVW&hqsTT8yb)KA$s?oSlj2`@4LjXRM)0~=W2_hNy=NNpsy!%U zPiaET1wG`osl=Y;ZuN<<Is9p%^qlqehRV!Ce;}I`v(PZ&R`ZpA;`Z;bgE!ooCVj3H z`@<#mcl{pIxR94IaYUz{rmPxv)sW3$xB4wlE&9E8s4w!#nItwC0d!kXcE>{!d8%E) z6%>gttlgs}x+EirVo~?9jYXfJjo^!Kcbkw>I?NE4kPu-kG&1D7#ed%=H@Qb}&|-~v z7LA{F%@58b{oP{PEGe9&UYjL%R)0Jv4z4>H0$Ie*>Cf{ntv}aYS-0DS@QoAkHDS*x zXzaSD+@fE#6C|mpc&r!?M6%>LSEb`2w+%BLD-fdlZMW^Vj$4^g>9($^OEM+CFFl#q zw%l8~af+gby&9Umu~%FT?FkqHv1cT2cw3%#&m{==`p{M0k#S-r>U<q`*vf;h>@t#! zYefXdZdA=0l+6}bbMX~3vA*nD4)N(d-@!1F+~8K2?@hk%Fb2Y+64qBZ_afhWTTLBK zp8aw6^&B6-;=d&Mf&<c}Xby>kRiR{#e-i;zJ;Zsik}jFf5?q4o3wEJsC7;pKYpzUA zV*0$DKG(X^_p%NIm~wIQOK#bY5TH;1U3mdJ+Y*F-8NSupT}?pQMK$qcy+(~iN!RHV z_?fJB%MD&Y6dMykU=Jtp?%y`j4%x#lBqP_0ZV3zJjN5H2xaLL4VW9i+7Pt79UFjyb z2$K<AWXakCTW7;3rPW0o7{LVjIxCoPj9?;DYob5m!s~uTmISOP#X<RXSGCPmZw<|= z4<S|)@9~<L8~PYHyC*m;R=C|LV79}XUKT@x<t#klN=HIi8KXh3#P5d~vjyvou^8CR zvJXSx5fpIN?fOtgok!3Tc=<JhLiX9?uKMe4>1)RBQJT)W&G)3LBDC)bhC$QfU={AB zeE>dM0>Ih;Z7ZPsRa(3e_6Hr9!M`Ip-`m!*7x0*U74KlX6u?!X|NOdl^d%l<MRmJ1 z-<BLffL`gpachUgDNW$TO5rD!9Q--g!eEH1Kax1%nBN*b3pSaa#U*<+xn6o8Xi}M2 zU#Z|fB*4v>WiS_^Kg_y~M|fl5cl`Rs3KtFz@AkRuxIn1~abcF>#>G95*jOo2U3%u8 zd-xm%-<z)X9x@*CZ}J>?|Abr5ocv#|=Af%XBD&+4a|(lGkBQ=3_J-`})puOwAFJ=6 z97L=n`J!8T2Rp(=+T0*(Xw@EBdUi65;1@hSMj!kLrN<3HG}NO?!UG^Tw_Q1*o@kcd z-V#w`jG2+G&r~T<OVMhxSYbq5?l5<k6H8@q!({P-t48?R<My2PqRe$4Yapt(vddN7 zc9j{ohbJtIVb2GiaS(WS&}|~z4v+a=w+8bIF%CNc>f<=2xRWtU6bdG|t`8w*2GGJo zSlT0Jub*Y8FQdBTr|+&qnlm0r2#{W50gbrw%WebleteR}g6RMu^Nee&XZGdSOq6JZ z3ydlFn6fGhBq1n_(4A5QR(j;Spg0gHk}35tvolh$7y#p|xU4Bz274XG3&DC@@wO~C zOZ0-mAc~Rw))QI^9U@-kOK#=2T=E0yCab}3{IQ74>%h6C1=m*or5;;z!<7aT()TNC z-Cl{>r6~2+-R>{J6wuiSnq_@$dfTl7G?(0yAk}8B_o5)*at{Kr4_uEr5(W&T>%2{a zW<Xemlb`U9h>vC^fc1!lk?FSThDra4pY<pZnn$5|<CuZnBlXf!Dquv#?>O8A<petl ztG1jGWm(3I?!uXS&Fx7%QQ?;H)*D{cg2~-5d`SdX=xk^)4JQq+<MqS>e7sW+;MT<B ztI+IuJ-#Hy&-M5gdU_Q!`BnZiZ||mQyrjkU^G#hdZ?9q^gPhAZ8@_FOyjl2mi3LW= z(VMjB$Xp<|9KEG-^e&X6ccC1;3+3otC`a!?IeHh$(YsKN-i31XE|jBpp~Xqcw_N(1 zI%F<iIdvDx+gmDsZmB%LrSkDEl*@M^aY&_!um3Jx;NMD7BJbK-{*okxEx`7s`@*an zdfsigDFGe@cp(93Qn-fkux<)28*N@#>uN2)I(++O;SHF~+b6HOJ_Ns;?(hM(zVPi! z_V%J$x1nCPQM>>sH5(7O^0x2eO~VjX_aw9vkqVYm>DN;64Y%7utU+DPIsqnHWeEt| z%lGa{WMr`{oRtZFE0z{$DLuR+d(zr=xBXqWyu&>hT<-G$P2p-!5J#8{&_7HmA2LZ5 zWxkJgQRZdoAV>z~b1BhuBd+WlF8QYG#l{zzXmJGMf+KQz83Y@{BVzD<lmf3_Y^`;5 zjiC)7?6A>C6g%I2<b&)qtTQhL5QRK%<Th)sR)4U*zADJl$ESwfGZ0^FnplcZe-RBL ze=s^f7A*i=_HSIpISW7IO_6j6n#P7Fw(<o%@YL=39iwHzbC9Di=ut?wG1ihq!*X}B z!<}J-rre<}vO;T^z-Y|$fnjfg8DU#kjWIqnetvc%|C2bkyyNl*wS5v-11k6-XKkOI zC4`RUPgfl?2H%7^+KiP2Lm;UO*3`QF!5OG=z^rYT57U*s=@ud{hV0~;kF}DI2YV6n z9M0f!KiWRe*$iB!%^!E2>IQ;_?@jqr5_U{Fz2-Tkno0h=E8pvqtK5=c5rI@R_h)*{ zoKd0k%pMCa;t9oY>yr1~vUlBT^sgTn%8&kdpxhBc8RHvvvw}t8h(TpNH+h)ebBh=T z=C;#P?6wL(*FD0MHsTg_>0Y6HftGAy8fFeXuSL7&m|izq)llyB#b`<!-LiMwIz+)C zSKE%9P$kq1jV#Cgv{)S6&FJH6+C}|J-`72bRPuKov;D`rr+#>tetAC3jbMsF1j|tY zOd&K6-bdxEbdIp?+iu5`dBpw9JXGZffgMB=Ana`VYgfG4ZLW7XA-%<H1*U$yDul70 z_Ov47WoD#tGuWXybcdP)Yv0@8`E_6C%a)vQElf`Mf8jEpj^`>7L6KGw-+i7pV?4L+ zOJZ^M^G)t~o@==YS;p%uK_Sa{EyBte?*qnj=VP~@g3}s*HBM_B)R?UCSL3wCT63J% z`0KyFLkIbXE_mB*{?KfGu(??acR)RO0kIh@M8b)T8HyM;0dYuPLsMU|r79d>QtLlP zZ$JoIeh-=KoCJ87*v1=fyAHl?0StGnC5*WkA;M_9Yi{F9ZY!^ebtV3F=v)yhmwe#X zmi%Kx*C*~FQkK6biGL3gKO&R_^dR|oB={D81SKEIsjvCkApI<TF;rBrV4T5Du%XIr z|8Rbl75<B^ODHj>VlVX*-Hd7k`e`L5rhI59R_5Pv$t`Z>ENWodgazm@F@^wgrTJE{ zk8XKYOb5oe`Kp2TZUox9ZsC`l7Ozosa+sC~k~t%hjB9ZI#qF+D-`wGKjXszBHMjK@ z36|1I`27Xhu;}hyC@`8ULhO5DrZBrFQJ%PR@3vxrR-lj)@&AHbT`$wxvK!&Yj51-# zD|cH@SgT(OTSdtipQOF-xI@M#X_!{FVF7-^Z45faZT8i=O%@`$=$@F$iqqbqlJNlY z5)QnZC~x9m%J#UmJP>A*47tbD1=z3tU}x%5LQ=#VEEj4XI%f23UN`#zc*BP_s2_*} z@BJk2BMR`ACtWF)WTNoD<m9iIwNE`?f&r%*6&M2ax+0w*L+ekA+L%%{6vcj-E=f{i zw?#~Wj8C(u(BZ&%CU|9H^9sEzy&vi7&lF%no|VPwgjVzCE%y(eyieaHe7qZt=A5Qr zbFCw2>(lg&te6Msn;Jkt)t@k><Blus{!#Sj3+hiDmJqD&=F+Sp?&LLvK(Zo;@%GXp z*5(bk{ExdeSXty_bn7FznCvAlqpu{8CzKLCIRYf^QYuMwo38r(;zr_c2@-NZZx0<& zX4?SuBL{SON%CKP2I;>#827Ps!SY(S1I5E!fN_z(<jabJAo$^L?I^beW18(MX1meh zS%$)S(=={klVS-)AUtg`)aM}pjAzaq=3zbvv_<I-FqOHFOEc#2(3)TTYhw0_SwOZt ztDq9Z;X)7nZSS4$jcDZR-~AX@{_QCGC+y7n0OjWs+uZJb4}HFA@Oc8K5@TBq3S&6W zv&ecEX!07}4-&hVC#C<`pcf?Xa#(D4N|NS6@d0%47zleIK_;0RNM0*JDJ=eug(|;} z-Rzams)@ZQlDnqf?R?5r-jFhB>eN@<;dXZn@&v){_5wcX!0H~9U4JmdwYybMGoSCd zmEXwX=ij(o`EiS}U9viO<7IWGZZXzAeAa|kV6lGBwc&6i0q}L_UO^=~EgZ#4ybEVG z+IUX&F3@Dp=1c<Xa1`8(MRr!7Rh-Vsdbc`wu8&49D@q(g(jihdK9aSpp+h?KYI#s* zqZFlOH(VXQdHj@uYM+k<?u!Bxuz$xM^(OkPx~(iuWcm(>a)qRO!ZvE2mZX4dc;^9E z)8^_hYO&(*%wjV&3BnspQD>JE#`P)zGm{!SBxvhrR^mSm>MVOj=u!IfihK29h@=H9 z32&Gs;XOpg<?pK_`-7A^vK~TVlF?j~K~A_wXe_>AGWkDW=<Q&Vh3A#YvkAl7c|w^F zlD{K)d``y0`j;e++fPm&H&I+Brv+Il{QH={Wb`VP(W~?o+AEbjUMkC1sVrZmvV4`w z@>MF!SE(#trLugLDq*465|vFdx2$&w<qJ$am&m?ALiqxT?4_0nyzQ?T4gZ3r#jgBA zY}drgCHFLfzl2g(C5dAql<^*>bo>Y}Irq9^;PEuAME;F9%0{Cjf0H4)VxMIRd~L;N zf~Cnmxohz$EKaUBKY&k3wvgZ;@zC7B;ZQ>rseHhK53_;8I|(dXzrroLp=3j{J(ndP zbE}B)_Y2GTM40t=z-xX8$z87ICAa9+Z^_WC_&DrOqQ?nQXMzC90nk|qgnY@1(WS-F zCGoEW3DKUSzr|Ug_ZH~KM<6D3@d5p)m#E$3r=Im3?k#TuA*|Yu_*1@)2Z}y!q{U(% zxLs_eClV!|pKM)j_X73UEHRQCKU4o!AgAN#I-@*}#aDx=-EP?$SB=^cRA2L6N`1TJ z2b&=8yeLWjwl_1OIbp~^Q^PN4=FdB{ohV5(2`3j=G;fJGurr?cKomTyxlh{MmjYEz ziW57RlOh#a)*d#Lo)Zj=K}F9Rmn}e@uH|NP;nTa9c|{`>c`+9MfzjBv_395g>WUH) zgK<g~Urm0Q2?>|p2Z}tmX60I1#93t+(_=z+9|p=zCFk7k>vC0=<LP}R@kkYG_ghf| z|2e|ztEB(LsS3#rqAF;;;i`7eCR3V`9rtB2uQP`iPb9XpII-@@!G;Z0BgZ58Rn7mA zGwwLvN=z|zi7m?E2L14=@<`$jWAlO96Hw`-+MFh8Aqo{IvEH0Yw;YDJML6?dd+^5H zFS&<t@4)FlaHWZ+O1C5Ng%#>mt$Kwua%o~aF#zw_G$e@+M%_1+EOBVLJFKg4EBnI_ zbl@#QNE3}K2!i1gbbS38w-sH_I^I-4tLO(&t5tt2%hP7^5GXwImMh2el~JHSZn4b- zbjV-#2}f`HyUg}_;#wCcUpGBC5sW9EERNJ>kt%dFBW)NDf~vP90+c2%Q;I~lN;D#H zrYy0yLU*<iS=>Z|yY9(IXai#1ycT~Lh=dOlxACzLyE<!oSH_(p94*!)^=i=BNMGW6 z@cJ;m(%=X^PBc`>)`1frwXO^Y*@H+gila*eZ6A2)5+jlt1Ze_lsYrT8bh~N~)_&v; zC9h%Q!(n;buB`t^iuA5KZrfdJ5m(CF5;}+~-_DbpnVd)Q$$UULm5mmm0$tbFgaM7P zj0(5=t~-27S?Len*Jq>q>upumBd*<bjdv~UFIk@?g2Y?!-^#9E&>~#ESWgHtQ6pNu zHRL>p4|_s2x9*Q$!}AvYX~a?yBIYexocpekz<FQY&Z~!PD6mky`!`pts01$wwwvA9 zc8FnvY8`kD>7#}M3xqfyYjD-1CF9$*#fppgk1$DCM?bkPlDJzgaau1hdnH)<mYs_r zY{i#8VW9Igv6&`($kh+<b+R@1{xkI?JrR<P#fREcB3z4aB%UBTVnwLlDvm(063dhC zxg8k#NRnP<u{Tr$SPohj51Sy{giI%g?pKiJ<`rb;ICPb|tBOfcDsLprO1L$LZu!?G zPukBnb<G^QR(necx=vo*5*e3EBw0QnH*WG9k}TiSj|A${Kh%-Dx(j7yUMLw@IlQHb zUtG^2|Ek@Rk7lJ;Ej|+tm&0}_+mct^h9L!+tR9k$huj2W4DeNKY1cvBkomfaWFsz2 zlSw#cP<H*DWIOBYp#ATVTlrn*Cf&+L=gwopT9nvZtgzm>-+DFv<&Ce3+!GVca^9$- zO7SzypHx-YnCPmIB{VvO!P?;t0*LLfHo@Ve*WAt_w_QbBXsk4`fmFMIkWjR%@-OPQ zG<a@E-Yp&WyXC>c#J*xzhgKMk?>uzJkFPkWz251$29%nto*Qocs|t*Otkv9bE6^qr zk5;&qI3)=<A>zvp<oQVinQKw3$I^h97J@Wp@HB&b=(jK+HS&Tr@`4(vlow?gjbKZ= zrUT!|CGus|6$Okex<gkI?G}$v&_K0%Ayu+Z8SIq=qUiV~YMZ>`YH*#>?mdP4a?tee zT`vkNu{((!i(SnXx3kZ!Bc_ZqeaP29Ncd!YPv#a#(6R261Yb-%Qk?4%(K{o5<%rTR zC*noJBDW$wtOz!KG*|LKQYw%n5-gk7Lk~?4s5$Q<VuzG?RD`raTPzR!sTPa<d{ftK zv6#MR8knhnWC)ZdeqJgV|AH#;5qlOI*K3qLSWo1xH(|k$O_u#Yb5|lZOZIg!Rp^c$ za=YJkb)MW2dtLGiuCCr7rIVjGc|B3@c0Xm;RO9Dqceoy+K`keIA&EWYK;u1F@u4*N zE#hAL?pUA;>V2^aoOK*>4}a*&Fgwh;BZ%=IavAPcU$0Cls4r2@*xm?7d9q$f9c4-+ zW14ur<Z4ic!ay{oS%0D!L+%Hr$e2o#xCZ!;yeYS|vE5rJGF}tO%z04cT@R8?XSzzp z`!w?(G#w1R#e#|;jKsqtQ!T#XmcOdRG@P7ZHQqancvYtrr@IYn6W)K4qksqr4Oni< zp|=(IEeOdcx)19yQO*R+t>qWe^O_JDnTsrR9%6b({y^kdN2(3^npi;SWbs?nsW1tj zh4i+oeMLSJ5U>&nhV=8JdISiW+;D4t*sm1qF}hSF_EX^@@mPhDwCN5Du(&;_A=L`F z7AKyp)J&9F+7ShOFi%pYsv4;oAC0MM*;G;?MdClk6j$<bF1W{j8l9F!i;<J$pJ7FX zSKM$oh!M5$JMGN4#|V~yydY`LIt*Uqpsv0zJ4@{gdBgHhAem?`8pVcEtf4%12!j>D zw26yVq0WX}Q?C4L`(}ltexUVb(H}`#3}(~CXjtWE2;IdjMi;qW4j-)Gg7;)q-dB7m zJzq{3FTX*CG`C*Ezr-3J3YCqhN(L*g>w|d9mXpqEHarTG@iLLZvMNyk2yq{0ErTaO z^^AK|F{!eJ><9W3J^<TalW`O2Yz<i$NQQUZ5~kj!H%x}Z=}W}rYhRVcg!+I~E4ZOp z;wn<|>KGZrth-1+mkk(xr-Dy_7PKmVMa5Ruvo_0+N+rocWw+@M<3=Fx8AgfZFSx~> zT9DNWX#Sq$Q`(etAgC}a1a?&M>F=qdR6B#)fuu`<XR#&+@PjA!F($QILa_;c!m%;Q z>Ka;@@0yRSV3t(eMI9nWy$Zh*6XSbk4}^(5z+)v96Gx*@D!v&0K)u4of{(f8y>6|2 zY7GJDe2P~YoGg;Jvp}Y#L98z%OIN?*DtL{4$Y75HFZ{d*%s#FeU|w`J0uAerk|_iN zVWoX=7S}&9?R1q9+;Gb_h42p1X^N>ai}i}&QW)VHl=VffH2WHQ9v(E%B-!DXeJeZ2 zehsp&&mEpK$Q`7t7_Hn&%nBJ35F5*zK%@b;mj2JKc%$3WXwSU1KjOjUV})qpVef6b zcYU<g2Np<+nTSv=5!b{Q3y`~PObGjAP`Mi|k33s6ozTWE6=FG)xDbOG8M^opmIz<6 zQJ5;o6Rg;c5Lpqdyh~-7|DkxftDwx84rY^e`X72`o$2R<HJ>4jTaS=-PWWa;;`1CP zK3`#6m?%cm;riU_|64?I$*}0my2LJ)fkm^4a1wI-!yKbb5|xQr33{^LITo<GkfaOf z(&1T+E^Wwmjk$Y(&e;93#8-+j8se8oe!&r^%tS3oRt)oRc6Qc1IqOzj6RBsO)?q$? zq)=sp0|ZdG%X~)?!!WK8^hJchu&S@^M%?50>W}7nEz=zYnJ_es^d{Bxs!}J_VR0}* zPb6sK%q-{dVEo{~L6uo0dxAonD@Wq@{sy1MNSEJ}<fyB#0%Y5U6jZ#N4C1^4M~<BZ zF6n2Rev-016g&lTtvcXprTn=1pnNw*8_YsTQiv7Fv;GV+e$ee9G8?ofM!UHl`bMxL zVaM;ewUm0hjk3@V7AHGB_Y4EC$v1$W@nkKpLPU(_L8(N03h!Ci@@KiXlr~MaBg64s z&!3@dV%`aezr}nUFh@?n>EeU`NrBQ!5K&Ytaj`@d<QwdNWdt<+u$RfLD`n_Z7OAFv z6t29_urSQ%txouHFOm$YqC|)ci<HF(@m>W*)!kd3FhhO(vrCCJ(NXN}b0&t7{dmW5 z-?L3>Z9rR=oN~+l5z>sHE~zH^>&iNq&kGC|GL@X&%K@w+`4S}84u(x)w_;GJy}yb? zJ+H(*$A9yQ@l+N6R#LqE<fQn&KwzKObt4_u3R4xM)D{)1FG+LV<lHZk`;*cDlJ|6% z5ckr=mR`>JSEGb%1Ow<QS+8pmGipC{E8cZ$Z|Gp@hu&~Vfa_&%%?e!+z>K7mI!HY^ zW=OLL>)Q!bCm>m>4GhvW#+yFZi`v0lB>49cqhzJ3XIys9Z6Kuq>n0grkT+d?TCc(` zlJ-|IhK~>x=<o4@m7t+WCCcqmh~XYdtYpxXy%BvAWT;ENhNM%L{CadvMlvKAvu05` zNoS$Fj|@gM%GHZ*b1>1TD3lJ}3=1PlTA^xm!v%5AdNGha2#~vy{PK6VKW3flO#dmR zw2}XmH_27E`$Ko&L-){!Zr_J)Kgl+BunA%A-NaIG<O$|MhLVSwfq5~8oriKIf=#yz z{#saJKUUAzOc-A}<7ctbmA&K0MOZ<Y4S8S5tCyI{Iu(XSmY^U@jUD_z*UKW~5+Er_ z&VF3OS6tZ*da!i`2?wHe4U)5nA15cbVz=UuIVgVZ`(MT3>z}<%Ltzy}lN4huVwDV^ z(vn2hNer!ggQ0uGc}zt}0KvY*5oCWG`Zj`q?0_PUaj5uLh(G%;`xWJ2kWZ@GeBMm( z-Ox<%iywzV$$S)&<5+gK$i9{}87y0{0JO3nL#uD{P>?Nazd!~xU)x@U#Y#sfWJXIE zu@OzN;&cy~Rn1IrhL<<K;PEmzP^|o@Wr<ytZ_fMg<?x>?ec4Zh6_9zg0q@5<u$hCB zk1D)NIB~9mvLYB>Q3Gb(LbMo^w~W$@y%1l1QBsq_%I?T4k9tJ*4%RwE)~&RiC@c+9 zZqjh+S^F;Zq(YW(X)sisSVHONVSNDg7d}tq1zAv1wyzQpjkym`ANc?`+}0Ny2(?@l z&evUYD<~AMF9nl%W~wU8R0`iERQf;3s6{4+N%diJt)vT;2MTeQ%6z^*&#NIbyaYpi z950Xy5!y&)Miz!g^z6e5v-#ME6~RXwcLnU5kaYs;7d`H3x|BUsM|~~=vt)$Xicjj6 zTX<G}A87I}8pQZ7|ItFccPs4T+LzomNGP$a2i)qHRG4}vQteHztMo-NduD9l8MPow zNy6J+5Xnm@@fS7i{Zlu6U90(?E-e`WZ9Z42FV)V<<g*&N#UE9Y6SXYST=jAHR@yy` z2e_#~p@P%T@a88y`bqc76U}}aqjUp6YOE)8dXuxYy8Y#gQ3n_CxYQe}&hsGZCT>3h z2Tl1-{*r~~*v&&<bCm?|_?x=X5x(^VH%Ro!-dIN3AVpxvm;V`++^N6rnqGJ1zoaPv zg$^;V<*HyuQX7-_;C0uWj-588UD@AtE7@`a7*f3u0=rOMoQno!UzUMYk6{1?)a14> z_DYZ8Z$-H+DCe<9tT9Gv$(f;ai`78g!_@VXTl%^(4$Db!w7wrAV@db=qErpDE#7n% zvUuI2AC`^oc#jK!`ceoUTYJC`vm61Nga<tSHCG?yNSfWS1aFhVkqmXvaHt)xArY)f zT?WFfR#^#4){)srXsUuZV>C)iM}Eyc95uDqfIX)v8#*7BrDw?M<=M=d5dSr|h=Q0P z04bthaeLZTTZ0tc9oOBm7hvW~N$Drx_7`jmhNEGnmoU~U(To<{ExY4NW&vPV+LW!( z82zWnC?c9<DR&nG+T`QX#M;BUHGMuh*_YB|3U;XPL#~@Y6h9GxM0OJq;*Wry7;;NG zH95qNp~<giIYJdUe+0u35$71t$nHusugv>A8DE8;@A%};pYWeQ=f5ks@_ET<pX&2J z!s%xud4NQXheqN`Vepoma?O_`y=kHAK+i<Y>)r-!HSs*rBq`i9jvwtM>`aSiQ4_8B z2;}_$sv8+{#`TQuVM&qgnF+_GvnNb*3hhfg4mhJOV`AtOhrsAe@tayERbHfclcfTM ziRbWKaBL|nKZ{O0Ze#x#bo%}%L+jP~tsBNrPl^mARtY`B8K(|Yn$-9EasNlG5tXC7 zUDz$B(!)Z=I%>&dKmUjG<K~KxnmwX-ulexvo36<>XtX-aRnqEX-E6Rse?aqR>I_4D zRF8%QLqY--mV_Dd3y2rH&}cVES|KN~dXHQ83*K%>Y`k73Tun9FYY=oS!lF`j^cxsM zE5wir8}>|nxf`M0k2jfyA(bVG$B9d!g4e9|A`v{dJ2FTvQEd+YK?=<CLG&6~;u)gx zbXoVA2yoX3)U_A}yroTrC_!PG^ILA^+m7-EtM6d2KuVxs1?X|h)nE(0<5p3436TLk z5C0nFD|qyEx0WChnVi?*V_^RnK1=%V2Yw|WK~ZcN10s~HTKu`3VjskwL_SyfC)d3| zWD7MQR$>fX%~Xng6L{j=Ni>I^w&yiO_?8mEFxqHv*K@eI9QaZAvi#>i{WMjbu!>A1 zd@HmKjZ%~c`q!#I$34msf?@N4Jrt$USG-IlnwLajE0ka&u>cmahgO(IS}}F<nrB@F ztzbT(netg5FcOA;W5f9q;)|ZF!Uh2+rOt%(nnM+AF<o5zEK<4@#+As`^D2z&s}^?( z7N%`QlK)qEPSXDhS~SIS>oREo_9NlHFnwz~cP)AP<8!#o>u$bwx!H>?o9nZuOk3cn zsTF3qcvQWTMzQD#j>@E9ERw#lNJX<3b?Dkz{fzRnV2Ynbi20?7fA%Gw;a^aJ=7C3T z?W-~YmlE5c*}Uu52`*lLMzs>MtdMU?hmALuj=cSC49@GR7?rGg+im=otD$1_4Y!Ky zFTBTkiK4GcV+k`Q579btO8h@b&3+72WIp#E(lcu?2HNunFdu$dN&Rckj<F<y;8<EV z^DF_=r7tCRR5Hz*DqVZ>><20vp)hN`2+AQit<d2uS2~)#xZ0;`ko?cBL<y@PO7^-2 zR_XDQ+&%ZAQVtI!N1)e^xNZe;fTsQfwXXT9B>%<lh0zCh-KH17z8kLUU2h^JECd(T zaqG^Xsd8mk(*AV&Kb`#9`69f6wS#(5mF!HuZJ}ryX)#sccdE|H2EI-JCsRPm6ZSfl z<8uE<@#|%Y?Fjg$=p{B)AwlwWEVXCIGg`}}lv|`(dFERvFNc_bdsKD!PFT95k9<4r z>E%ZPZ^crC3F|{OUi>?*bcY=f=C|RATW<Be$oIL38ZRO_8IK4)nH>92jfQx@NF^eV zgv11@n*LzoCB}seR4P*;<Uq>}8n8e8z2*I{Yzu(x=agHy*DYm31FmA85Lr$Jl<Ux@ z1JH0Q#e)~s(1Jk08wQA{6YDi{uu$9&d|&_+E-AfjcN?@H7d!4$xHG6f+AYZ5_GK#A zIIDD4k1cw}5u0fOG>&5Ri#zQgm2MUTgl%v|TtLAhj5sRcutypD9MbsHhnQq{Ke4aI z&J)$pmp3<gYV$eP(!A6r8^@zyblDbU&=h5fg3?7{B8p>FX8+H!M2qc5Q3;7}@<8wr zZzUAMv*4b76seF9;cyBzcM3LVr!amLfbJA_?qs9L%N`Yd@J0F+^s`VwKMO^O7QV>W z7Ao?`3io@GWVA(b>rQd&PI2o_aqCWT>&}SIZ*r8-Pg2yV<eK{YKk3J+I9M#Z(Io}1 zyI<1{Gpkzl{?~N+oBSk|dFp<LBdRiR?Vsz$7(KP3|4B2DbpLmp^N(Ezpi{|T*PL1O zvjuHa$bj_b`YLz&NRmP@lx$al8OJgUOFn@QU<#CEDb+*lK<U)rma1nbHez07U!qxj zM%2|KB7q8^U9R*$y5bGmOJ_Uk*tOWjRSmc9^SVsHhIPdBXk~_1_{{QOmB_Hm7DAnm z3qowH=8dX94GrymULRs(LXCxVr_amdF-$Ix72z9x(^bCe8W2n|wOGso!hriJu=C6j z*uA@V<Hn6wUUf^pL&QRe%84h~#w1v1+ZmOrj1<UBjs+>2D_*BjE92xZ%Cla{hlbn( z1myvjuPVqJiE9xNZ41>O&v8i{l%_>~sj270xco`fCGQOw3YKQ5U6cn%tjREfrARGh z;_G3Y`v>gRB~NcTHH_Zjc?jD}Hic0IuBZ-}YERh>xVzFPOTWrGZ&(4K<5%z9dtVV_ zq6HzN3QH4*@2y~Z$-v5egtpwPOg{6bZ`@#!JK}z|{|<Gy-f;`xcZ)8niVfDYrI^ef zL~H~2iEV7gKo#$Eu9Drn&UiCDykYs@aogUO|88mUf1;_B2X9clS;vW~VpkjdI%jAS zyHv~w^8}R*81kC1H-acp?QD({tY=c!1Yf|mC62a{Iojk+RUbqTtx;&@j%VCfL33L{ z3w0&QCil<|S9i&6YA^talXCS?_8j}*nv!4)7i3UVt87%WlCTYn9w$k;UFB+igYuDN zFPY#Q77^)l8>mhW3<;sFAie06tN7?My<Ru>^_p{D(kIHyf1MDH&2nUqxY}m~uPsk2 zo`pQ(^;ccRMV$D=vCQc)kpjF^KI&FIqxy1Ypt$CxPIH%Yc>`%zR*TLQo={t{n-wXy zmk;t97}`L9BBj--Sq5`l!3?eYwyU7x<};j}ajV{C^3X#HU|wDlY+}}`gU=%sY1UM< zXjQ?i)o9k%ecr9stgR|&ftyWk>rPj5F*|2G9v<&nUJ^Vjgj!X5&h1JxRJy96;2$Is zf3LXM9S{EP&-A%&+!J_R;P-@>V|#5Nx{~VTMA5h7Rw0V(1(c$U+xLR%LlbsG8u{+~ zUa7zhFf63>FLI*`r(_R1XASWRo2b&v^EAUnYJ~0#=ZH6`1!|wle}m^6?q^?#zi|AV z?<LRd4x`KL(;s(z&ACVuUhO~H)$Y4R0~--q<PHN_jZ*fxuB*|__uaO88u=;R&-k*v z007bEy^p)I`~7HO#8Mr9I)vsLJ{0QWVGkJUMnul|m)Ep^>=$DIi^fTbj(OV6%|;bn z2thUPqne2Psha~QqH-GVMeDZeS@(S&7@hZlJ@;HA#Tz}0tLAxT%T+lJ>L3-3_oL^! zhC{@uO1_vwDHc6Dz3rx&!43D=tgE~1cHMIuhy3oR;WiQ!F~s=!{?o4N{=D6(dT;J! z+BN-~3i;|L?sp++t~c~LAFcCXa>1=Rl@B9ADxNN!>Z@+PZvxw@_vdzn%iCFAd=YY% z!|o~?F2v$BK&(3XzfcbWCwv@}DDu1u;#x}qIDEX{L&e`+`D18cJNR)Unlb^YAzH~A zbMXGp_Duu}hXTAlH37`5Dp;(OVENF*I25j8h;vspu|>dz486JFdhmNc)yH3PxwXMt zKNT_yw0u7;0H^wXL@x-dfkv=VEP1b&=U<N?!h3GlGuEjgQK~A1T5s0|OVDt^4+vL1 z=l1pFh?yqkDIrh(jB842)Z2YQhRr)7!neaN6Pdj)xacqQm8%hP*hc`7`aL6>sg7hR zBmFYuqzvEgb~(x2j!Uj)_MSU_KcpB{hz)Zld@IjFLxrAxBy}pvRrMEO0PJ-GD}x%G zG*)$~@Lj}!`LHm1c^;hI<gu^-oq0n`WAl4%_l=0sQF(k5+ncbR*{ru;&A1a+Ra=m6 z*4!^-%GFmTsZ}K!QL{ej-uw%A`wMZ5o2Ll~t6x9X0>ub{GE-k;^ICKN>6nlJrv;Yp zyK0+q<go2{5kpcn{JyJ0M<4Qjj*Rz_u^|GGoR74yL#Ae8&RXQ#)!%g+dtyseaCFty zB`|u<Osl^^8TDF%*}|o5x4`0!Ar^xRg|y4n{JE>^aW&r&CWC3M=Uh7=VHLtJcKFeS zB9cb`U02)V1)R_j12Z+C)EH3afS4+*TLt2g97fX#BjNO#3X^rgIAw$h=?|6@vk^=) zgiwO;9B0kNaJlAINN>A)!dPpL=+=zHr%Jn|v05Q`wF0u4p0gcBn%n~BKlp*RO|AYO z_yxh6)AP^Tz<l%4XltH*H8uv%7S7GQa}lr~S)F290Edpg7;cxH$83mTf!(|sQPMS| zbK!H<;3I+-Uo;04H&5b6)py*+Q+9B_aNOXyq3rf^5o#l*%|Qc6%E&CleCI>f)<+G! zTTjgiVwP<^bP0vB>tTX3tTW~jidILo>WskF1gyY)K{_IwLY7a*#e;IH{ENnk;zC+k z6@ShJh@B_FJGpQL4h*W1ntqNNuP~BXw++roQ~>FKjQgVMks1l`o%yN!2Gk;}<dn#B zR$AN5DnW`z_U+X`k4NH#5pxrG_aQX;9(cruh(r78-b6q?<Q_Bb(B@w?qxE(5e821i zx;NyW@%PT_PsY2e!e+@23V914C)IWLY?jClyVhsIWxQQtpAFFR@xmJSXxMZ^K@<Dg zJQ)MO0w3o&fef@`2H0}nZD;c+^#LA|FNJp?w;!5cZa@5<a&vxq$UW<aFzJV20`l|j zrD9Hl<L;O3FVE>zkrQktD}N>1bt?5eiPKxsFlx^3k-YI`Wz|nmK3*?WK7iBV`#;7` zh0=q~PmQdHT_Qenl^Wquo#9cwI#cil^OjR;OgK6IOr*-d{IhBeTPZvpqA;_#Ma1@k zJ9f%-vc86B1pbr7an|-)J@70N)xShystJ}21$9GXNC<0&#>XePKx}Q*!~~ngj0YQs zf;~gQR+GGH0_^BjdR)ebV7*S3=;%Kb>2U4P2DjsB0&{~uOk59M|Cv7iN-*0M{03^` zT#fA~I$ojR{}UaLFe4T^1m?%0<GD4@6oNdau%c@g3btFxP|AwX-*t7p68=_U3h~_x zvl+?eGJ8pwJ#~OA1?WsYLa%>p)ri|d6?XjJvp(KsM%8=|LUvJ5elY!VuBgE>pQkCw z@raFcbiu6JSPdK8__V8@EffRH<hCXGMkFMCl-OM*!TrG@_c;wKEM1ABV_%*lJRxFL zQ!!wRB&$%)`m0ZPzwVr>7_LHO+lgXN$ppkZ0>oiT@L><ehR7zgO5oiIL-N<FhtIi+ zdpYUS>n=Gqz8$uP{`MG=gs(~c+kD9#zmcanQLji8vLQ!8tL_J1{n_0G%Ba^&t5HXx zc4b536XU_^A!((n^nX{eQ9VFv-jFy+Y+I<#MAF1nlP2JxHLqp~cb?VEw4|7EC8F+s zLl04icQc*45wz__1!sVJYTcG++|r@oP~u3jI})@IB8aJy^l2E1H;Yzl8jw2nVV-2} z9)DSd9cu5eGef&dFK)f$Bgn8l54*$X#B|GtFyexGnC^-7G|lk7PtGKv@8ch0@znDT z(vlv2S<8m4QufL?P3ekD`L8#8if^oKbmcePQYMR89|~?@MEFyT2sc6_!o80(B6wx| z(-{%O_hV*+zrcuq7?5W~xE!|{cwzPZIg0TbECKnZ1#by>M(7n<0ybRI393GbU2_Sk z;9eeP&!uNSF$t`BQJTpda)n&<6GOm{*AU><%A8rN!)=$+&u$t&a;5(_Q2J5(@>SE2 zpPABM^|ae`%2j<d4;q-w;M2Z7m#?;yM<Uzbe^m;<w0er<{ZKkR3}Rm}9BJa8L8o6T zojz3IJ(-jS{&6Zit~ylsb$B|_eVEIwX0WaA$tk&6>s<~JKdtAf_36*5Q8&nGgPa%o z9N6UDi%v)MXO7MdJKcUiPsh$0;(jC=e5~nt#S3H&X6b6aQ6VOie1fVP)8_t*P;UR+ zlv`N*DpPJZ%&Xk)8j^}@4u?p&MZBvC@ZyEa?Vn|pTQA*}2L}_4#kk2^QC14Lusj4Y zVY6Y@<jsq&>J`c0-}iY5rx)`~<=9L&H0rf|-PuXWa~~lc<j+ro#Mtun^!)0~?%;RW zR-+=gL%4NS@Vg9RY4E?<P=1x`<-tEI8rsB-KT%|Wd@N-{WAay&n~P;^jEgAw<tYEW z_Z4<TsC?RO`?dn<n!U_zHsm4qG-pIyb?6Upds)klC{%ik39IgXgvB~s3?$GJaZ9?2 z;tQ~aaeI@pV-NV<0@y)OjdBWESo6Ma<B(cIJV+ho(vk=7o#j7@@?`%r(|95nVE+ic zh~dsc7jpKg@(~I!1|LkY@nvvl8M|maMkva!PMWu_<Su3Ug0GZ6PngJ3N<uBc4otXK zJ<%brD6))Dw6a&-BGTOxdn#|-S1q{pmNuk8qMGj0A3XZj<yw`XU7FanLOZ0AmAb+z zq}bu=++nF6z!vJG9H`21!!3S?2(#awphThzzFnRqaFCid<c6&vV(T9$hKgv>8$=k* z8^2W=MT<u9TT$HB^Stp@{>$cvRs3s3FWHa9ZCQ-gHx;>LMVPXgVm?VMSIA#sTn|`G zmBm0=n3M%VSs73Zol;0=($Uw_#Q*v|j@9UrVgiIH%fKEkq{6ca8L^w>6($?q!|d4` zEWVZeW6s`nPd!Q0S}DOV0wO_*1OuTKlqdgyL{h?^R=!FUh<4w)uh;8|Xk6OqYT2Lg zuB-V^egX)aS)ANUs049|{6`7fG9tE#4pdyztgE>0-6xcUx6Mji@<GKjJqap;P{e{z z^PBWC0<~Uq-K2F>^oLCT*W4l^J=oHkyyG?OfzA^%suNgz)e?ofD*e1HWVG|nOIiNB zL=n7-uhX1Fa}>qZW#?$~|D!pwADbg9`(p{i-{duCQFhtbx)Mdyl_;XFL{WAnin1$F zY+Z>$<4P17SEA6k5{1T<C^W7_GyQ<dZTV0;3$V*Y`Wg!4;&v@u&SH5jT<(u(V8K0p zeDJP?!DTDKE>av_2_e!{HT-uW1`xNqBGFRm)?!(F%XY;iIk(R(v2vb2%tZ<%6o2SW zvl%AF=5pq7k#L95S_MSHw#*{qE2k3MW&xqfj1#$HTS=`}{;d8IrHqIxQ;EdVcl8=E zx{C<6q54AGE!T0&ox0^dcT1blE;@cjyVo7P<&NKSJ-1x<Ek)-nq7*zO^eGII#C*T# z+pYsVJ=5nbzlH?cOi5xVA-d{XFiK6RU}dd4-2i1<3Z7ED<7)B@|Dz`Vw|TFHI*IJ4 zr>HTuiK-%Eixh5hzv$rs_CMgQ(sQ?yXA(QBT=AR1W62>B&z7=i*l=ARpf0HXkWL-8 z3Z{QsI8DSWLH!kWKs6LHh`3Vv`+Asaj09j21{9rCsw^mrhWuVKEvx(7_OC*$?e1}Y z6L0ae;Evl+!rl(~mo0C9K?zawos5Kd!zx$N$2w(SWE;WTeh7d$Hw1Soc|n5$6bf)9 ztch@30-)PT#$U=LkW;pp@?nTeY+aUUt8{DNU5Wiwf>Pxf7CD84*`0&U2<i!WBYzRH zOu!U7NWZ9qTFMx`==M`uO1bBIsVQ*N{j|t8wW*F>*WOCqwjXXa$TMvlQXD((x~U1o z9Po8YV#1WRq9!1-ZSHeVA@N?oEFn(>aC^%qYm@~2iJirfxo^GhJr8BWnNFZK@rTKw z#1<+r5z6^JM@=45BvhW06iJE}V6rIxhPWGs4B-8QUcT-V4Z`#z3Kr@j8zJit3=oRe zqQh%GKa;&j>;|biXWfBoZg*mHmC8a2y%WJ~VzfA_`D2zzJ{y!%E|jDtf~FPZSN}3K zS2iqnJ=6oz`RBDpCT_V$Z@C$A&7Ob3J^2B_ecWl&oz1u0SzUJJKp3?K&W_Lu2d6qv z1u<ohz&qK!qk^S_M-KpVOl_4HWaF_eO(q^Mj-oZ$A`k5AOFk>wZ#b}r$bBW57MB>V z>2N_`3DdKYaE7JS;UnsiGcW>U$7w2l=vmDNMMEjyU6Oppg5Sd(#>mcm#jU5vrQ3)k zB*=g_2hO?C*)WTP7Xx;QJ*Lm_S5{19p>F?268VDT_9XGUqnshvR8lUf3y2YRNrLcJ z;T3%0Q9wfa?OFG1#s@Hvea!R0^%BKNE})7<$@e%YM$*u9CQ5=C;f(LSD-EbBM_m0; z3Sg6;oP1MJ>Bav6N#)9JJN$QU={9Y^SNxamK_c+K=T0led(l0@PXUO}lMa!JwNG?0 zSfQR#5pO>iZn?z<GLrZzNMKE_Km;q}KPu}}9g^ZDRWAxK1p4eH`S-d-D=^d^_0(qr zC$4iGcpn_2S<YDrJ~*<8+V6Pod)yKU13l+Tu7|!lJttos`|<3{&1#hYoNZ?3tUH_W z=<Kr-ZKq~eVtLZI{Gw)-U9@y;Vv%uIV`FAzu18YLxF^`LKuJQ!UUJ=Jbg^3i0>VCg zgcMU^LfFST<Id=rYT_#2bdO*LVDET1gsz=s$1u2i^>KH;&*5UOzU9i#g07Nh+0jxJ z9z)xHnDOhE*5vglQZ-yyF4)A9zvrGwj)v$=9PbOBu;DFTl>Cya2bU)Qo?}PVd@4Ye zg(KO>PayFQ$R}IgMku-GcD#cU^`1M8Y)M91@<n$bql(0<v=Eh@i@<{Kek;W>cHRy9 zJDC^{`|HykLb){YdvnMDdqYD8*!Xd&mOq@QQH%V9+OEIl`VDUgJ6g(?@G9)by=L7z zN>0fw*Jrm+yr50-O68!19$vSyHUaf_7e@=cHaG!!FAg5ArS>u$*4+mV_uUG1qtC0A zY;aY+*b+5F$=mxZ^1q`+PR7`J7QRHk9oO6;HL(rGtJQYam474(gjTVaK#1f4cwO=h z-;<jqiT#8{e@Be5^eS*8cW0aEKKYW6-3|BLL6Yj=53k_)M4VK+t8cj`(m}{Ax#}(; zkp2v*B*)y55e>E7jx9Y$a9BK{zTt>a%{pjaY4U9LyN%VPv?T8_c`KQ@HB7vAjrHW7 z?>5?ZS;{;0&6T&@LCe!8>$8b(b`TSM%xxXfs@-G9(hn>ayCNV+jF5dGQjxrxJWGzv z>#mD)@EukKAlNC9z+{q^l&kj$tm=tAw>X>{iUKzhYyTaDl=oFaVW0ZTy3`+(I!dSE z|Gg@PS0&H>RzOxMc!7YsnJ+D;C)MHY$U<b!+)|tv6-*zzqwvYi7RfAn4O22R#_>oc zLjAi8lOO|+n1!3}G&?>}^a>Bs35xG>ZucG`^u3evSa`^d7m}3#H{X$b5*!B;5|6BK zj?^P%)PzC;QUw#Mo-SrpF&Fr_;Xf;qO;ld<`=5gMrdv^a8d->ymv{&%EV-3H#)fLQ zn`xlFx9_s3J~ERH;Evz%Vo0;Q^Ii8iX_a?W_pu@Q`|io-RRV4>c<z>4|Bze!kzOl7 zLZQeqp=j05{4Hwr^Pi%x!1UNV?(|L9&8{l!{>LmGpaM1!_${|~Z^8J95=qGqSgwT! zGOZ%Yj$JQr`q-3fJ^=cr>k`cF_*7eiamTyv+)dY00OOGm#%q;q`;qpW-T{R+5%+Od z)e!-HF@Udji-JM;Yp@zIGT2}HT`dpo+6I4MZLB<lh_yS}A#7c7N4Aklgo2mc&Np<h zo?O>Aa84a`hlSnyZ)wN3pH-#|Q{M5mP`2l|j#oiqtKLDhuW&u&@_r4>wAlVFY;H=u z0~*+hXA)BI6u35u^cbx>OKgVSe?b<a{pvWT3H?FH4K`Bh@h^<b36-l@bY${vqYxzY zEt#Pj(i^PpHv~=z;?gjlaElMP2bEz+@5P6Z7A<b~xF_%2#63ML<4Qd>j7XS%%a{E_ z(b3ZfRO<KuM-)#n7pnRx320@>FT2$*hg%Pljmt*!2#@QF-G*TCZjNWb^L4>89Zqq$ zDxd~XIlkQLSNTJR50$un_&+2@Y+}4CDQ>7ff+z+tFM=^rBUi^g68QpWXgsyl$#@Ms zVcV|St8U-VX(!~v$k1WdZ=aW@ue+2+ecYR;$k#sM9%riR3IAi#6?28OpdCN!*zxhI zd+aT04Uy-$2cZsWVx9|il=%OWb@h<%s_LxK9iu6p6LMyW$865)@BQcN>PFwy$JCGO zKH3uj$e)?Y7-lz<8|k~c?krRB>z{Ed*1ZfC{JN{w_HZAE6Y+a6@sE8ny!Yw<s89gu zK#gAbfb~-jr<@e3;J1Emckp%*TcT{j6aOgmDcr>GT4*)=AAk0Pa5Z>|Tx;_^mEiS@ zlLGM)2igAvX4J4e(NOW{p={EdyH1IbUM0iq6%s9`2oR6C(m!|oJhDe+cUqKjE?qZi zx0b<&J^anowdX?>bzPkN9kr|wH|T`Pm1No&cP4_tQrzysm}z;XoZV2Pb%^nKe<@&D z^O3|t^wt`dCr3&S91>Momi#A3I~8u@M~ISdnNzCb_?y&ndebgfvFi-{e{DN$@CamW zC*}!?E+Ja3MDMxn6;TQyv7ao;LK4FOyAMEOk|8HFy22i=?jcg?ObKm;Q}V!ljVEvW zg7u_A!Z7Z-W9X^2!@;hA!^(g~h>b!eml*!C`}1}eeHnuIpt=cbumM5dKYe#sC;yVS z>e!im5N&#GunvVjIp)ZbtLhX0Hn$^iu16Ewg4wb-&{jRc2=R^T)LplESc>t+TPhi{ zA9DQUUDCX-Nhn5tc;vQgCcKaH<91&8Pt9_$kJmncJ5a$8@IP#4Rmn#GF^r$%Zu2(& zTu5xghIpXFTNKR*S6uwpOH?eNSf(^@VqCW<vM9=mC~L1WbyW#W)<ad_msL>~#jo<$ zGIiH}SJp)P`KGR!H8Gc@D{CTItNh3!=#+u$4TQ1?Ce;sbCH(9K0Awvro~KKJEW;%- z8JFzT&tJ$035_pJB%kDvf3g!(N7-TMvgGJm^6=Y{bM-%L2hslk(^bsI6!A%}fB9us ze6fLLj>7AcJ<%^-QpJZw&~ryBCDJ2PTuz~!8w9l)5`LhZ&1DL4RYL8V<T=dk3-7tg z4p&YIY&gO*Y;UP2y-nd3dtEs9vb~y=8X8;^$24lOK*p~UyIPzSGtKU(#4#n#v6Ymt zi!~+sb&mXErfmp7yV4hmsfJaj-FH+Jq8$mooS{?hjIv@|k#gyl3<bg0vc>3M?PRF# z9)lxsScAh*z~C_By{foimpD)*$)4J~Ygn4qz!E8JkGzvAG`orh%>sJeB$8m4mqIAf zK1!|Azbbkjv#A+i*s<LupQMVZw2WaXobG0F#XE^@RrVjrxZA4K^m1~G3Gg{b>-54# z$hO}4d%%4Gt5&j4^5VR=2g2L$xV7ip;@gaSIb|k&8!UU@MtM8g!SB4|Y8#-YTampa z3gF<OQi&d*TBOdu;)x=|2<oo8$C6{1lbFsW&q=jqOV@|#+!Dx`;m2E^;?m7_|MqmG zrY`yK!{;CQxaTEnAv1+p#!LR8o)-uxqC)ztdW0&55jD|DZnb`FIF|6Nn`TP25ls62 z`z=fp{~~HJ8I--{mSfMkuEL#*q55Z#Kq$SkQ9Addw80)C%lwxzUe*5>QA?%&5&)vy z@G3Rwcy&+s!oKp@3%?Y-;JXi|35Ed$ucBdnS;OMGMw@rN_{%{BfN_)*&|tKS*G}6P zs`6&?rPmOCA7E1l3K85p%rj3{u)T$LxM2IMihzCn?9$UZf4YLTn>gxMqHT<l@Y|y# z&CX|gGN9w}4b&=rAF$t~T`9G@3(){cr0=gr^;fk}mz?!I(&O_srpE`X-RLW@ehSAg zVlAxuvRmKhs3zWMze}hZj~<F0<eFRmj@uH-N92L1Y4-HdpT5Y;DN`XLRIk4Gf#2NN zKa%Lfu&tXRqqE(70vJAt<)@fOZUw<}*h=*b2>ZLgu8IxSm%gSNeC`;Ot&1&csObP8 zVH3nxQ*i=5<)nvidY9|pLWgHjNR!{B9icE16~C>z4?v&V5BF@xmZ5UbKYj(GI<H5H zwczW@h<C*JL=`SZxQu?}ASyO@kNKZ+4kuNH3CvX_cCbLMrv>slEs)n~fxJ!&<aJsg zuhRl~ofgRJv_M{`1!4!q-nq0F(!cOD7x@<~E5@FRgJ?A(HS#!e1+F1#dtyVS7TFJR zaiKYg_FQ%k$njcYYE*IJ;0m`KBPt~405wQnb0wF2<qsCl?;uxEk$i~M$uGMH-o%jU zR&}UMw8IWa<;&uryw*x@;48ET-Qp3l?zA6E19ke3y9Y+GTB?@P?jg7LfaE4!p%n@( z;0#YZMroMaZr33Rbzuv^2p@D0yrdU#7jI(U0ZyOQsUw}AV!1DcgnrAcG;H0<YY<1! zZMWf&dw_w2z5+ZU!ZAb+>O|7b)%=I?XjS4d0(KG|75LEksnO3m{XD3j)%@u1D*dd@ z9_1djr|hMb*}L|7txm07d(Ga+J*=bb^Y*AcV9#&W4SO{AnKim*pHXW%*`ObFk9s@& zY}Ai^cw6>{J#Vd9_wDW`-OUZsZrJy;o%XLotLsFt*XhTO)@P4u!y8ojc^=L8w|)+7 z8c|7F@NfRy2e?vxpJOO4Oq1yaz)(5%Nsx}yfQ6GH!&UmRqiP)y7Z6^ff+~0jP1luj z%BdpP`y+N@&?%3WL*#Z<`InZ2cdOLoGCZn0OuP14rQWcIAJoH3^jbx>H6C4|2f}`= z4K5^h6{`-1{`g+8j}gcAiuI7L@c(ka$LHx}x$Zs4RMCiio(lYnbt4?n+U&=;y8=*h zV^#L9!Js_o@}J$yA8zIU-;bsWKN`KTku48u!{c%f4QnGeh-wO8tl+=J%n8Q!^59<; zC4Mi72&s?SvwvG)9uNsqtXZ>}w7)=oi3cuFTA2@ZOfozS+*jz0rL0qi3-T~#KZTzF z`4xd6&x6AuWD!&XX4D}5{h<7fpTp5y4(caf_z9Fh3BP|7P=5PwE0l$ZKW6&z-!y#x zR?&*TwOITUDF0U?Yy3^nivLE%xEyGa3%nrqd6N*HNc?{#KM})zJYv|AAQZ!XLRw8< z`LRN|G7@&t!<U~)ehVyrUE95}p<wZciRIW<ej3BJVzRHvRx+QZJ{yxAS?Z&B-{*Nl z*7~pVpIPXamC5L0Ki||fv(TGK{*z;}Z3_<>Vv=TCk%8Us-htz>G|{+-9`cVpe+jE3 zjv0gKiqqb#l{FPukOX_0cIkn#J#H-zgzm8+Uqv4Ow#*4^K-Q&g=Qi5@f`p4L#&An< z`(+2cDcwCvG1m|EWC^>9+twSHvng;-g*SGIApQ}9js;SM<tFhdvCkGSBnF}c7mJ4@ zvUAL>Vrxk})wW&eqW9cV_M|-RP2mK4=p#7d+`?}ATy}pU;{3cboRG8965@d`>BYL! za?V>6C8dAuT|(nZyDsA`aAbAROQPbOMWM1Gdf6dt=<aj%Y$HW6TI!AKjj$k~e0vy= z%U;C{|3U~(Gl_=5ChC-j64B=mUUKYfC6hjY!d<i!Kq;W#HP*Y881KXQtRXsES;A(h zM8L2G0SOR<C{jKg6XCFXgh$yRCGXKX#>I{!L;|gw)l6}KgM+Uukug`hL6}>yB*6wa zL=EU7c5CzTa_d+1{YMG!T67QFX&n&->@su)!#UfV#V>U$$`S~8tN?97?}6cq8mG`X zGt^a&*M$A9Z@j=N2|HjG{1O#<q*Un&GALfrlXZ>49y5z)OWFcUHaMEwdEArqeW&lc zS=Wj5Q|m;@cF|$Kt!}vf{t6VIcl~8OWl>H<{w7`dG56VZxM8){q5YWM)2hd6Mb2B; zR%_FlJyVXe5}8IHP$+#;uh|CGd1Y#UFz;Eh6|9v@u2hS=)B^40Oe>WOt(1V_(!`$S zewjb$R<YrlpoITt@hleM+wS2*ZsBdBQG`NRLy3%RWc$SD<ziZg4@VE*bS1=E6Zpl7 zrWiaSjET+)?fu0bH`v9sI|4ppLP%MWWJx?hBt4EIJY`Y2W2{ZvqbmRG6o6|=&1U^) zZ##F+JaV{8K-Tsb6qbYC0XIBBa(mv@1~v!rG!aW$eaW3-YXcj?ZfrT53|kaf*iwRn z>|)}W3?1WlJvuW=7px?3mZClQ@z}ubK5MokbhojYoZ6AQjjK;ukSvS&j9ZU$9A})Y z>w4g>TSbf^Rq_8y+X~d*af_$jnu97wPmEX<zWB#=O!a<VAXbP?3-%Fg@>qsGFK5?C zeBsG26I)1%3Q;@6JCQP9dFMqShTWB&8i1B<^R%s<aMf>lf5FfA0F39|Q~!s1f<S6@ zgCI-&AsXGERlNVY_KkU%juFI!GoP3q;(}Fcl4@<0IIDj}4-&jzLV$r$JrY=T33FH- z8ywk(<&h8ADPp^CbYn2}R#^Kx6K%a>QE$YY2E-R(dw!U$5bh{k_Hzf^FBU7Bx41;V zq;d`LM;jK&|F(c&ia)yTS7`80e{Q!A%?U#ma9;-hd(m5}V@ph8DSq$b`<BHt&_C5b zFq*ki)Z5+O(v@oY+^MFHp75lryEnQpo$en@r6)3@)9KXE=vcbw{Or(BdO9^aF_^v_ zK7OLRt*f`?WYN)%+0ltic(MBgtu~)J*>R?5XnJxyH89pcF+7+W8Z7G1jP=i?M$)6h zBbg!&GpU)(^yGzf(b(j~aIO8!PRxuBPoxKH)n0mVG&4D!>K`0TWhPVM_eVx&xES@m z`=oERXeQl1JuoslF&qu6ueqbCv#GbOyDMtv!syso*h*1rZ|YPVpGc)noNVdsJ(FrZ z)zz$rQ>n0lR-n=n9=ErgIo*BoNCbkg3#oz0+3cvhPIYt?ji<*4rmlqJyfiwP87Z0> znVinpXgs)^yF2J}CVe@R8cR=v?RT{F^rU)^HFXt@0HE>y=?g{u69c@Nnwp%UkAm*r z##E+Ax0sZ{Xh_rP4Dg#6eJ)+pV!$do+I6b7xuK!9Vc+hC-3_&k^^N=L_t!sMyK6i% zJCQy(oSsNej}CAua2>q-$V0mx+E=@4czE!9?XH>3;K6~0hN6k|Oa@5O!Hem!u#3HC zPP7y;UF!5H>rPS2^z_6eW6sdvOwsu0#ArB0{R5fNi|L|)vC*mXll{|!VH3?A-90TK zX7un9UpPEFIyRV|4xtpA{2WdQ6+G~IPoAO^>9O=cCUrhNJQ~5zx7-6JpJd7ekyJZ) zTGTq7PN$BJU6~q5H3|0w-jVVCsR(=%ng-wL@C!X>IuCbu6s20nCi^oD4~16^rBBd! zSJ6}Hfqg^a<-<)!QavYHIy#z<wKTVf7n@F=>^`l>8l%U!(sU-(+|5$y>J6XjZ0kDJ z6Ln*9iVla}NTvE`X42D{)KLFu1pB7W6D=oun!1ieFHEP$Coi%rwY=tE7FvT5JZzck z?JRr;M*4xdhoi75hityhnN0t51oIPZOuPqw=c$g~wi6v~&3;+s(~pR1_-j4AC)>J? zhHqt8){&Ohwyri?kp_5CmDE%}i^RXx*7a0VN86F`thu|hGY7AuCtI4JG=7n!4o^;w zd7?2mIeQ-3luDf+%FY%m`oziZ=BORRIzM^-J105-eIB}MG5VF2KklBE&NeO9uCSes zwyyS~Vd2tDN^i_gr{};;uneJ+o2;qn^u^K1*_mjDJwA5Yva$8<p<e`v%aO{_OnQ8# zNUs|4^<Wx0pPJE9Kh@RN+I_M!)zbmFZf@#qIoXuzX>RIhDH@$H+!>gio|&938kwA( zZW?@cb|zEAs}qx{sp-*+wz~ZqZ)Ay1&ZJX3K6b^f@3Y_i_WO`t8XScN=`90IUmn<s zW=6-Sn80ZUot}m<%%q{`BmG*=Pqm!vZRtz(9BVqloPq0YhflS(!YGDDr)M(9=+=?Z z;nB<qh+F^k^yH<YsnMx)(a2b8Y;+=BG(J0)8J!v%9q7-DPEHijJHC-=9-ADv&^$TD zxMsw_p!8FdkOn?CG&=#snVd)sriY+H_LlD!{pUOC_3TX1K>v7px<4hF=5aqgn7T9q zq}5(}M#J^j^;KJwGhdwTXPUW@zMLNLfEW_tN*6VEpX%yO#Rl3_Gz`<EL#fP2{{;9s zJUWo-2PH&xGX2AbV>3nPCo>t=?ciia)ZO>ix0XMzJw^TFQ|aj$y+4+o0q4}_OnP8) zVz86pWYXcxPK`0Nsp-k#>3%TAy6xw409Z``V*iEoWsqy!Lo}Qha46MsqOG|L?h^rL zW}u%r6^IOSr#%nL`)YRL#wQ2Unyys;zyQ-@$im=LnbGkyxSZ)9^Dk#62Pcd2zS!2; zbhM@DA|!5fU=*mwK$vQ6>uWhuGy!bVz<z8dgmdf3rlX<;Axib=YnP^(IzK1=+31xJ zZ6}y+BolFue88r9+d5kczIwXpsh0dcBE9s$rQ==eY3n?}63a}_rs1~Tty(r(Wg%J_ z<RWARg3}O*a6N=FlOaU*34`6l?D%;Qm_^Wk1#tpwrnhqz*5ugeAnR-(6Maikfk!XC zZxbZ~0p?B22zKIXVdsSTSyb^SGx;Mu+5xkgm>nA{8kig(*VjcfXax~qFS8^r7A`<o zL;tWIiH|Bflc6{iE<D3N8XZih&THjz2s(O{m`=}3j?LOKJ>NfYVR#xjY7p8rO1JIV z9#2|&JT>vFut${7Zf9{?LoEuQJsFar==>?0fcVUxZ0YIlIAshdh7lnNJ<-iFFoGDa zd%xOZ<jOkGqeYSrMK9D9&f5?xbEGI*ClMHXN7CczHWQ*}(jJ~!GB7lH8Jq=wP53st zD{*@wW9!yaN9%#7g9g}6B!Q^yi2g=%V8F~wPQ{6h5n)e5va307fkL@^5fw&<CZ{1N z>GA%7nFyPPSdk!q&yf!Co37^WBQ2>MpVVcObr6*y`(52#Ek#4a>CAw=aGH@!UTV20 z9MhBS=_@82`YSv(JUu)*Sd<x02?OCbDQNmQBsHbWu}_}tIo8(N8^2Z`KW&JgHWsDY zdZ3U~Bk}9|;-~xLrw_$XAC8|s5<h)ZUA7rvfib>Ls4A51aCaY~A2NUH@TuNj^ozp= zo%p*=@zcZc)8_c;k@zWuD}Op#<EKaCr^n)_ZSm9N@zeJBX-E9DGk)3?Kkc^D<C9ko z_m7R`COwNapNl_!GJe_<KP{N*Q}Me`#ZOPiPy6DhXX2-4<EK4mdQP@{4qWL@&GaK+ zOP-UmgJ>xrw~F&mBcUP;WstjzW-g}CW5(l+bhaF6YwBs~XleHSJ^@SXkouH5)z#kB zeY&e?Ff}<e1c|*gm6=YNEPlxrN72B@?8F6Y?L<>^d&?2Okory@J#2mQ9PfPpj0E0+ z%#|r<Yl<~){Ye)g{lH6f!MD+KW#)9Jhdp8(>_c)*3|ZPwq;k52-5Ed_g=SleIXKuS zbw9sbhmW3YDr$n%^v4_R>2B@qXkmS_bWw<DYI?|o0yQuXD$ofpXV3G2g4sh4E5H<9 zKG}BkSnuJJP0a->0eRt+K0Yu$RU{~*Eso0ia5)qTZM+c`YdVqBYhpKA8|ry`mU)6@ zjTgYLwV^RS_SS~Ig%=7)Olv~{k!cN)E4wsW8wv<bYeNC4X>E8k{*~ray`h!h5sU=t zKh)LcF*X)}<@L@Kk}{}kPv%c)lQ1pz%88~^SV1&>;QaVh3RyFDznd?^&XL&T*E^fq z3g|_4n%Y}>{fD#b!grxykj>pE{9--ceWs_kt+_pQqWd&#C0ayq46hoEP7EPnW|6a_ z=?tCn+$Yx6*2V%J(b`zRC0ZK`rqjL{A6RSSzW9a1HZaN1r%uH0v^Jpc7{w^yU#*2m zQqW{;A&L|*qSitLDF9vTqeWAfq`E<AMlsREz;GDK($mq@Q@{$qjRNp+CDgj(4RC$0 zkp>x~AULts4H)rDJYUdXu5`9^hSr1vihKf|c|=4q*6fLsZOG%XOTLk&Bc2_46bk2l z@7{uWgi;~kBLW~&A$~~IEhL3ar;fCBcb@7kAR=hh1$b-^p5RN?ojF|Iq^DR%o0{SI z-R+%CC)<0(F|g}RVOkr?Ncof;3F;Q$xLC-k0tTC#vu5;!>B+IN^z`9bRLKcXQ)$_o zTOoP+O!|v)c=hylpAcHijHHqF_0iAGj%IT7I0nIndi@Wn35n){Yz`0$F~W!T+03`L zp$NqWiLiGH84|2Q3Yskx*qEypv&R+<oVPCLC<^lN>`WTNg8qaHUQ&a!nJd0`7t&W| zu6QP!CtgCTyx4@0(R6uqCJO~g%$MP?*1=wMAz4OQhq<9jEXjkM1`?x!aJC|VnZ~R! zgV2rnB$~GKSD>6@g&e=*=&1rpiUG@h)l@WO3I*#B{wvcd6EKW6?Wt&|#(a7toem|W z!Rg7VI9QF3#sGb!tw+e$bGog!`55yvb47~hSZYT0Qf5ir=3~R+_36t~aDA*C*pW~z z=!Im4_!mO+e=C^S77@}cD>@ksEGNUXbscHx^K`S|V!@hg>cC!y9Auv>c+}Iof{Tw7 zO<uw{4U@)0Vdk~izyayuwyvg=9!HvH2S+E5U|1VS=jOF1J%K{*&u6jtqzAJTr}Y*e zxOpzR%#zvE;R)1Hm>gz31U#6_)Fq*@L_rBuK-Qb#8y*VzW)?_vO!j*zdfxbf$!MaV zIlv$m|Kw9>pDb-rw^S-E>$%zvZ89KXwn@*WW5aLhYk|vqX!cId4vctV)DJe5l9oxw z(4J88t=C?Kgcih_=|p9VUui#lq^*N~%_X|XM2$s5nTT8z(x@gcoFQpMtJC@=@%YNj zr2?TCAR)W8br&cvT<&h}Z7LwKT&=G!dKMXl=`AvU2$nGUY>u>@M6B)x2|yArsfw!0 z{->#yFm9x^V2JP=Z@T8aOlktt%LTP|vgPQhj;49}3ZIE6Kh)w_e@G}bT^J`((h+W_ zu+(1~EPD35Csy{&9Bt0gBuzjb;SzPxr5M3&^b}W0!OU~mgM>jWYh?S_^kG0hf>42p z&J4k^dp*r3yE{5My75GS2BR~B&@H1r5(EY^!kMXlRz$`WYN3a2WW0!CpDCE(R=Kod zpYSvd=}~4}T9`Y@M-F$$YKDuT<M8~D?KyS07hydTSRdM_rPbEcKZY%=Xz)lrwVj3C zpl0R9nuBisQkTtBLy3s=wD}if9dGOEp;sDv7H%={H|*cPKeuYK>P~h+N-9CTL%*8F z;+FEnrO{a8Bc7K*Y2&amB=#az>{EQHp$N`DP+*EMxuUhHrx&yA=_Z_w8h~+#&Pi!* zex)-`?+cJiQ0k*6F*#Cdh&D&3h!%No_tB%U?irJVJcrDVkq#RJ*LUOS+Eg?-Hkj2_ zV}NbKXx4kO`@}I5uP&P{vM9ylQgKB9vpi@9_c1&u{`S$PwgO3yUi3B<C?Rt$^t9m5 zX@U-T0c8N2<h*b=g>E%75e^o2<iG{bcn`PrcG7b*Q|;S}8lcrMIe`--C4o6?EDM>I zKGgYm&m%3wl<>(R?;-EWnF_M+N*m4z#dE|(N#jRP;!7wXj7M6UF_hzhjs}`G!<p!N zq2#K0Yw5$&VsB^_m>f8T3(t=>+m{&2E6{yn_X=2f?B3ouAY%9SeZsv0ohJ4k`i=Jo zKQ)@Z^a*Vg=sB@A9*w^TRC-u<1<dYPOGkl{X6jJ(!NPTfA^~jzzoy5EGOXEw`NTgy z6#-x3g16GhbR=BQN418=y#)}Ot8jEQ_ns`kH57=RmZp=4d-2873<GP$rj5*vu?lau z_(Ja-36JiDLSF3ko{p9l4~v39p9;07xwsk{FykmI3A=4#YBo=m__#N{QB3}w^rc8f zHRa;`6`XMLb`Hwvm&S&#cn2fMqW?yZQ$u6@!!re#nNz;!iZ6`2xdXW2HVTEt>_Rx! zjSI*#S;@;qINC(l@m-q40h<_??KuW7d_pwUd<M^fOdeBs`r;1=&K3=$*YXIcS??g) zgY}aBBi*Qg*UAk8y-Z(#0`chnBH5|%2;+ev+#uEwzJn;$%(vp#iDNl+va1m})C_$> zMVWvGE@q-=mvCb9`qmT)BU#W0*`z7PK6%oRlKGjLk=r|V&-hlCd<LFLh{;X^$oNxP zBy8&0hio^u1)TOz*=58nqE7}coS3|np6-C`$rXt_lnD){@pq44XD!s(r8LPN7#W(3 zi54n+*#Xltgq8v`Xr5WH!34|6l!OsxW)MxXAv$P`4)#U|1?wBS?k(Zj&$S$vT{x0e zbE1lu5%N4I1OQA;PWMk=Ng1LRq0UUl$8I`z&YS~pcy1E+c?`C_$GT4`a-=86Nwl~a zi`t)0Noj2?8tl*XH`s5%atke7`F#bu`!wa6@quXlAc^;1NEaG8{A;0&<`Mpxx-!@g z*OmM?HBw+m?#Q`$Vz2IhsDPI+g&!+)8VP91${C%CEeQ2IFHyz7MN4spkexT7N!wFx zq4pFZDaww$FH8IQ%y7}=Y0#C?oG0c@OBo?36egO@=Hx$#?qJU8lqB&;auL2B34ybZ zf5?a!2I8~X(sjht5~dp8Wc(f-w6W$a7xGZ><fRb87Ud9s$19}atmbnn^WAA=4D?8$ zmK`k)zK9vme^k#N!6wx|9Rsf6Ii78qyt1|v`gBEoGRQ@Zbzm>hvPge1MF8L=<`TI% zxDdTNQ$SJlB2pP1hB<n6*QrjaLAjpIVMv`QuM+j}>=X)nj4C1^l4-l)J_8qK>Aw0C z@%CI)B=$4{`~>RQa6D{6jFHi&&?MGMoL%gV6Nvr=(#lD}B=!)q-;B!YC0~%sv?o*T z+Pt_?z*bs1PxPKCA|8)eic~0p4@qCLP(>Ug-tiQnaWok+S%Q!8Z!;u|oEjXRnHppI zjDVm94$k6V5uD)El6ugGF)*TDclRC(-8K1EIP7sI%04?Xhk=Hc2=MWwH(;@n#>57! zBl&D=j-TT6Y51q)A6r;p*zkBpPBvPYor1kv3pw@CEEQ05-<5%W?1x2}iz%X~28y1w zvl!UJp@+_si<y36&LRbe#>YozX3)@(U@k>Qf!OPNi>^!;E@hfDwZI3a>G6E3+BcUk z%RX(K86gS99*u?Q7YR}}>=A60bEb>c$s2@3!np@VWn~QyybUd%wiO^Fy(=L7t&IhO zKaUhJJFd(n%!u|PBXJ+jY0NkU3J)(ANcUWsE7Ld48DxR3$Xf;ea<0t%R>4Z+nbvsA z%_ryRe4*ja*k>Wtm`B%uSlhZF4mh0>OEoPs3aOUCB8DWaxk&Q|jSP(?hsqf%%VU;L z6nM?haJBfPz}o7IwdpBfD7Dz<u&-$GhIl_?2GdXyrirY<sZb?&#3D~yh?B%h<1LQ` zx+M@4+4SfvO{Cy{BtB#QF$p@>&lXUTC{sga{8i6}PJ-Aoe4xo>OzdNYH~I>lLnf4- zY&k7+S?pmfSSK)}o{V1&z4gPP{a0q+9&gGJuOhPC!w&Pj2VAU4d{bS$7~fim4vyXE zXzDszu&#8eU}5P}!P3&Dg0-bf1&d3U{OZasWL+xowdqp9!qTNjBc=dFFxNmhc8{?> zvJTrZ63W=<`2mv?r=??plA%Y)#+t(uPrX77BikXblXzBZ0qijVf%2w_#V(%EH{`WU znKhk-mhu+caLMI}_{Rz+d6wo=NX@x9%O|nsKa#*PF*uXDG)fe5tQ#OC;kEPeKzX6X zEFuXEX(Ma7#|sbva>!%_4F&^0Q4qYKsOs=rgM@)W5zw8d;m!mprlZ(y>GIL_)TPPk zK`%yQV+uq1ME}VQun2H8M2jO7-^J2Ku&B2VV&`b<la@M0WUGbsS;VzHYZlP_Mz9q1 zTWl0zVwWb+f-&9^*C{_*7<m@;4c}K9^_(!$fsqqZOEM$r8CYk2Yl>&_Hh37*7=dbv znm`SOyv$hKTh!+01ey(Tk8-vgvG^3yI$8;77xg%yuy6zkjQm8msmXpk5kz5xF_#!* zQkUh|B3OP<Yz-vls}n^-iX}8knBOU-k669{@2lHwbH_$(h=C^;5ll$pjAo`~e2Q$D zmd>VTBK9wij-gg7^4Zug6w!YiPoYl->7O2+6~uuGF~bC3>hW=f@rE7pLr5v?IXfwY zFprJdn8*7sqs9>*JOp0ICXtyOjoyr+yA{13HfCW;n)WZ^%q<!btFck|z|xtNWIZ(2 z)Xcb?gc23V)JWt02FZ}!21cd@{%jz!Hyv6FVZ2MWi-PVjlM;<0O74)v15SjO892h0 zkCFDlo=m-6w4nKHf6QCyyE8g5Fg82rXS{!6)W<0IOr@FE>{B+VIG$yf2IJ|MSt2i% zoAs>Ro6O|!FoN27WeebwLSQZG1Z%?d6f!(Ol<6!eqXnh4WR2T;^;98E_<5MjB3ZV` zQYT1z@%$MT;F1uf%c6N_Sa)Nr`HSiNYojxruyR4R$&Zovbz4VF2oo`(ydlBEkiaIu ze|`+;_V7a>X*R*;n9raJaoJ!ak3ty89!(SoZTSQ#1#<R_rqUu&1B2OUQ42kbFj^=Y zfhL^H2qM-UzkWOg$i>Nf06f*!LlRkv6p5Ay5eA_t9u<wKge`^`EL8#NzkilMcpx=k z7$3c<Jc2MKLV(R%s)8qB`ly+cmztyC>#>1Zpq<7`2m#=MX!xS$N7I>JGx~S17N?mP z8&M%~({gK@XtUG_O_E=hHaSsa1Cvvu=|O!z3p}C7e6*4XvrrW0>n&zioF+aU0ymg9 zlqmbgd+PnNI}a<!E~MEhL`H(^Ee$M7V?rX2OJBI+X}y*)$YbM&0M3kz;_A+yc}oiD zkms_^FSS<QHKW?#(3qdVXnH~#h-nClC+J5=n+KC<o`xr(s=j~9asb&RC=rohCSBHu zNaeG$SecZ}Vy*cJDx^)>RnAHvrYJ-AvU~%vIhq6UkHHg4bb#m=wa~gv7Rw?=Fad{= zwQxuz3r>Nq%6228!V>n3ot#gzEG+d!G5i{8t558RKoMrr80*2gjJwn3a=-`at5bgc zin`iDGTidX01=4nlF^c!p%1Kx(-K>k<hNLMO6*NTXInn-7@tF=OL>$aq$T8eL~sea zpUu64`+yvxBCHVDwz2ig(Pwh26eT_jG3FownV3V!u(DC=qcf)^qeSE<B*gj5!I;sQ z)|@odxHJQM&g0{r9n(n@6T%)C*m6=yu4{&J1_DtKO+mO!a<mat3|WXLtJpa5TeZ3O zlVQs(WZJBz5aoLD@?3z-%w(Gm$#!1Do}r}&jTKDN+UP|8m?uct+yr53_iUzl_WbBT z)B~H(d?_%?MyC4l>yC@|i26m4wF}XSy&UJk1}D1?hy<@N0qE%1B%)LPVi$g&&T<Iy zAaRk8$xTkLB@cCgR-Su7B-I6Cu9SZ|nB}>JgkRw<o}F3xPsr;>l_H#$%w||2Rtn?G zGOj$<7rq^`GGfy34O^~3gjed)5oyig^w~J`fM+r)QC|MGv1#+=*tB}TLB=vc)d_&e zG8dY`WQkqqA{8YI4!=5#o`>J^^ujL~1Upz2Q4)jMb0|*upsDqd5T8e3jf)S3j^}70 zAUDh>3gwGtzQ>;PlZ`9s#J((Q9|6MXEPWwKm>J0Q_bMF4)^=6~{rKta&gXOCoW_yL zGRQ)iENnI_y5`t-9za9@K|Zj^D+7Kl%X!6&di^GbkOmv$Em^!MI!vU?1<!%ONKxb% z#fw-#ZkcBZ-;vpAA3zmNo#OV%^hMW#c8Nm>aY8gR@XC)QOyDCh*M0(v!c5qFUd%`( zOB*stK!d^cPY<G|a3Wrjr5EVY<PMTtNJ|Ko>FMq;?!jwmG9G)wyUeB8Db&}!Ks-%y ze0FN{n3b_qo8)jLSzv`@3C9}}z+B?u{6dbGO6dA5p&8-4&oFZc5!s#>DM4O2ky1Jp z<b<pxw6_&Q`shTSgdOGuX?T|aOv-ZW{SvZ-q1?H#9zbsE7akJ6X%FaHUQ5CmJ_sg- zQ)*3xy;V2EXJ;pdaf^l5qb`sUX9|iM@wYV5_EoQ#`AnwqON5A-EGxYzR2Mb2=;53o z9e&Lgg!R<crKRK>T>Qx5V2QXvq^O1;{r@}r5-`h(BHh!_D&o@M!qPpAEuywdSJT~y zFfMfMRn|%^&7yLs<yO_DtE-B-RlVSbFfO17?x5)4xFIUyGU5&@?t`}IC@S)LM4!0f z3hL<7_x}-poO{lxx_<9_rS!QcPG)3gWMpJyW@H4f?Pn93@LEkMoS>=pz(CD+|9evI zR~D_PXql3ueJ$yM86Wl>Xz%5@b#bM>Sj+Hc8!XT}FdBwITH7e@N$a<$dW0+XJFE^T z;+WRg2Do@S?aN9pEKZ@U-kEKTWy-ce(V%YLaJMwH-*GM$0y_h>PdxM(>K?YEh921V z`*CSc%4-)^x>0|;0*&AE=8nEqO^3_m$zX-UT!Umg;Z8ZbK4w4bXN(|1cH`TshJMh# zVo!D=q$6d+X`8EVTwtj3^t7%0ID@u!)RxC_ti6Q&0IzR$OUBA7SP7x^xT@gQlL2l| zTH4WM8rwCrs)YH8;i}t2_`x3X)-6RWMQO*fr+DUx*7DrR+f*+<Z^dp{I&AY16|wC_ zJWusJVZZ_o%kbzRi-d%wtYx>|Osjo#snf|+b&N*LmX<CoR*gI02BDP)8df=O(Rms) zw4f$s+;7{jJ${zagKG<hF>aRh&=*DBro+C~tr_yQiOI<GoB4uzB+M3i{4k^^6;W&# zw#Sb&di)%N#f>;qFL28QQiw|sb#$F-wv!%I%FKa!U_qZ*0QaQhUKKIZl)sg3p7o@* zr`eNM{j=Q)>q+fQxhFOAmY&qk+<Ve_Pm&o0^`te2Ec;`RKeV4~q^fWC+bgtOF8KE2 z;M;d3oYrxSVm+<yKnraX++gB^1utOQ9}<d4Xa_z$>3I$Zz&7+Pr=8*Sq!JAHgi+qy zrte`7)RWqsEo3O!Iiovh9pre=_lNEC_xMJ$6;V8*>w!jNt+KQ0p7a7=726!++aum) zKbg)mkWH!RZO)Y%S@jOj-LkPl(TuwJaZlKm<qSADU-(@MA1v9*%!&sgPJ+vUxk=3J zRtKA`Z2FAvnVpgk{nJMWa+8l(7eb?Mb!PRl)3~0LN3Dhk_TlPKnb)fI*%7rDC%Vh@ z)L=5F_3u1-vwHfduzg-Hz`Hav-L^rG-F6YM9VWdy{TLCVhL-^KArm&y<sk=wFDzU! zocw4A^u;V1d=M85t-a-b$!>#b?1!BcZl=ZAJ(vmxXLe|BVmD6otff9VdMkK0+JMG{ zZl6-uU%0Synv|3r-)S&v*~B<D&Xk78t~=T<ou=9E%<`ot&5S)vjln|I^M%=%B`3wh zQr@xZ9-p<Q-e9E5rZ_buN1eJ+7P1vDRvKaJ=QH-2-Tox?GL1$?XqLit38S3NO;)uW z*XCz&XPV5)+>)+l1;s&xv^gQ**X}TpJvG@oW><zf<`+AlkhW6w4Eo>@GJe(#f+*X4 zD#@L1k}v9)*{rmJaS=*#BM|<OK-2|NLhJ;PKO`Y_FO-m&as3`B3O7GBMxXk0X_t2l zmQCVjzhSlKz0Ir{CG$7w19nHySS_!CTPECW^k>w1yWXSDezOu)^&6G^p-*LrTD;E` zRq~4l_O`;92NzDT_uvKEt+MVue~D{Yq(}Xf*XUli=rNpjvn9%cxK&5`+M^pQ5XpJS zz_5ccG<Etx#$>mfTs`#hx~E#Bsf{mII3H@sZ0iRrF)YXJrLL>h=PNh1^m@|hBY!8r zx<h5uQRdGoL24a(8yRo~%`nw1fF-;N>kVl%7!GV<PICuD#`o5KDK~(M1Mw@nzhf!9 zoXp6xCp~?%9k+MkMaimx^k$urbxLOb;<^2jpe428jfD_5Ie6AaqxK9*-r(J~K5P>r zM4De(b_!;$v+Pv|{r*WKpfs_fisEL|1>>eC2J?{apjuT+28RZ#-%kr^YrSfn29Dq= zYVXWErsaCqWw$y_z{X+?g=Lqe9J6!Rd2o2-Gzdd>`w9-ui7_-ly$weqHcQafB!4`j z#aPOlgK#&(lLTIpw|#rx7~u&gw(|MF(d*P4R3h_A!o6Gf3Ik&&7(O|pFJX_LSY&%u zf3YoE5Ic3}AFMjhWc+QI4qcc<n=#qad4XrY*%p@0I^fr45tYFgw#2HceJh-EVMESa zL8~ZOV)<4oHfbtp3(i?-Iji-7d0(*|Aj5^t&iPr`HTX#iwpf;`G?c^29(!5X3WZfF zi^NV+Wo}RX@P$CXNt7)+{BYD9=A>|7Wz=!AFg4FV;c(rrIi~b_vjA^9*u1klo90>! zTa73i<`%X|Zi*$FI+>i0Ju$mX1HCS)tIaiUI$mJR!&{#j9cywI<|ShR%03hyk|lIJ zYLpunnUKQXt=TK;6(_B^idj!!H=eF1@_lA3-U|M~RvfmHV#Ce0-UuAq1OIkrM@I~H zxewO$18wjdmo~Qzw6tRtI?~;rZncYgP7m{(#`m4L){5;rx*lqt++#KZ3t(m38Rpl{ z-m?a~XiNq7j}T}BBeeGc9JYi@X*Un3v0YC<J8uwDa`2_Mip{>o{X_8cl}wH8u42o@ z_<07FRs25W=22+}E*nB7)v%Sz!LU%pp$fmdTQ_J7kVgrw2;(@uj+H;#;6@D@@N1YC zs-q%SAQzbY(t#5|1K@W?4%kc4(~dihB(<2brMd)1hAABNpcd92yr1GH7xUPOwSv4z zLs(ndkI`T);t>|^kK5pcl>tO6Z&na#R;2ep`<W0!BguXV3YIdqNXJS+bY!u%xHG#N z#))~CG*qH(0d3!KDhG?miPI5dl7Gx)ev&`0wDs0zYo3+W9v*?gJ8#hK!^s27AGXUy z3C<<FyJ3s#<nV@@AwWihUfe*8E@0#0H#Q2)nVtDOYU?PstEC(ESv=5&57MP%f8W?X zNLhGrERo1qt+P(1mX`T_216ZjpRx^nmD0uzc31Q?$n1H>vZNwhYLalw`9Hj>T7OcH z*#}>RgVlYN*<p;7O4T@avAV!v6F4~@qIG1vj3txt@p<muI}7*W)Li3Y+?ftXsy12Z zay+X`g$Mj-70y$tpQErBhf_;4#(VoySmW+y6?$=BJ?jzzGUhYmb9XCBcphDEE3Uut zhP#nR(h@S5hdbO`9*bd_$2U0CN<4K6^Q|BxhIe)*m{e>!oU9L1>yn^QA%ok>7itaO z?rhn%9f~}#JI$;d_9H0`uM<A(;>^g!wNZ?VG2{~KS^q;^iv>h<yTOh`8JT>HwvJ*| z*2ml~6jSs&&LszV8i-kIvC2=)H0*TA#bRjq(#kar(b=i?U`KyvFD~VF@5F7IGjWf| zJ!oR*U~Cp+z)}{Z7PAhyROT5=ffrZy5GU4T4s*a9Y}IjuB5twrL+IN8Vub=gVezc) z;bal>7<53K1WLyH?9K@b(ia@A*?xrl3j;*p@UG@BA3TyzHhLsD*%~Gw<MWBUP<U`2 zvbWj1*Ya$acb$mChb!Gbi5i`~6)-)&4KI&d5%$~oC2ge(Ih!T+Q3@bYo`ZSw0H6*s zu_fy4t)VK`P3-@EP}5ir4kL{zye(<>yrs6zMWNlh$EGXW+RE55KGL0rAB35t7dIFj zLQzZG`<yRw`3elp71O|QH@1OH_`oc$h7l2Cb#$1Q9BjUA!4!Zg^UVCqSp`Yt5_@{K z1!5>iMKWC9*n+hU*s8fXq)-#AOwEqSN4SeJ5G-ShXAN}WI3Y)R!)U1q9W}XvA1aU5 zZgdyTW>GjAO*3TRu``<chezS8)`uBUWM7T_04Vg|K>q*}73ypfE1z?qw@v!XHuyEn zX&k}a+!kq1hX(rK^BEa~8?&NOv8<uau^2z*?-U1+CC96<cfiVGk^Uh|mF=}%vFTZG zuzJFp&q>FU)(5cDhfHI7Ee_MNQ3srb*}>=yt6*wNnCLXc8iTMUc_qt|0+=-`hz(eb zDpn*nCR6B6R5QAYERtc6j3ozUteAT_D}l-D5_VeQ0m0O^f&gGyG04Ifbetp71UQ|c zp&kFBZUwF141*o2gI4$^!3i*iz%HnHm06D6q+$k6k&Va8hRn?AVZRB*SQvLNFXI1X zHOzqlq`3ta1ABQvYQb*1P$2=Y=5un=!|5^YA@=Q?+3q413uCu5O=<sc#`|ZU*#*ne zrCD6?3;d{0_8XRN*>67;ja2X;J5C?(6T5I}AFbb}-<V@h<QT&B|9Vcd^opFUf1P+( zQIRCoIjqiTg@&b}>sQ70fVOnw3jv#<sV*daeW#qfb=xU*7@T~VeJT?r!`*{umRFHB z8P-;4=ef4}UIFS~+l5noNI<1Fg2PLS6DcbaHP2Tr#U=yD3_p5fxF#4DxRDw-U?>Kp zC)&Ss8o;LFoO0H(&5<=CF^N*|f1GGztax2;eSsXJmwX2J6q(<PcF}grd5!>Qi8*<e zoQr(R#tTs#cmfpKo{<F8APZrQ$i=p(ryVE`$LSn>7sP7VH%WW)b-#ahp$p4|$@$&3 zVD2`B(u{OurNoa(4c!ilG90*L!GU#bEQYCxVbOUKJa=Hx$>nF&enCUoR`qvF5HIj2 zvPa3dbY_MrE~2;NNPlr*N}srNcC7k^M9PSgvR}gN`8~a@$Kfj$!3?mv*S5g~Z^~mY zkw-JM9iXwA?TpJpA5Lw?=V#l|%vtt4G8%EPoXtq+%PA^mt!}h3QNmaEN7E}DBg~w@ zy2?(3I7aNuo(d67UM4D7-M8$|RgJbMFvs&=GOHNhbHT2M*HBfrYm$b>tlLx}Pl7{# z%-&fJZ>H>MSsau_x8A|*h%pI|;IlQm8@zx^ZE$r%4w9jsZ4N9$s{}Lcf)vW)JGhbl z{P=k?L<=&{>2Ckh3`7)+MDZ_H=~l{QdR`6t6>vTd8EoDPdxr;y;Emf#MIpY$LNof= zg^amqOpALu6z`sEGG%>;$}PREiZas#@@lF|!FrVUSRA{kYN07SFH&I!P2tD@!y8sF zhH!BK&NXM2muQ43@9YqUOEcJiUQmmuHk!z@48|PbBx|5eWmdd>Qwe&Is#v92S=xAl zG(iomdC@iqnTZPa4KTt;KZpxI*E6l%8^PxBydtX++!4_)3`oEY5>kglw7#tqD6<yk zYL}RaWzLT}+!5H_GqY2&wg8t|7vrWUX`X8iSH5`|Qrc_H*WU<j0GmTtC@(E8!4NN> z(j8!vB-KgyDO<+$gB6SI<-z>UZi(cRGog@1H`vyw@tQf{z+f+vb`mB`OVz1xE1%KB zdk@x5HK<YOU3&)mTK7zX0=AJ_K%lND43*$7=WJ>|i;GxV>_NjPv0e(}$j)9Hsrv3J z%E<gY^q^^~DBbjg%@soC%%iiHo$C9ia4yl>iaSR*o@9`R?z8Ox4hkubJ>Y-hOze3L z4bVfM9fM#Kt);uS8@GUgxF2&uEO_!Y<DL%Itmq~L@=&c>Fj|{+m&FRk9Zq*)jN{bl z*;eWRt!7214AD%}0K1G&16Ln+Lb1=*fd$|=FX-R}TMSrHRc7rZhsT7tU*Bd2(>!vK zPaL5pZTiOM_NQH7F*~<pb2}?b&7caRj?k!Pu8P&llGT)Splww9(CA<r!bWg$LpKpn z<o(Q;n}aDfqqirv@NH{v8HIa!^ViH1NLIiiNT~Rzezsp&uQ#hv><2qFXlviu-P#Ug z1YL7QGCNlthG`N^VEkXJYe)AGOrUnsn@1ZI;ocsD4&si3Ut3cZ+U+h8x3)<OTjOvu z9f4`!$fy;OV{p(I)TZiuLD~gz0YRj?8`f1=q^}vaSEXjQjOTkMmuU#jHkuK_rKP>A zd1pA}#CIGa!;e#Yn;n)h@Q3a5*ZHxp`B|VhPE3Y%5ELt_5jdP}9~riO8Hs8HA9ZjC zgWImoAuw@+H)A7|>Kh5Md$N>{a4(r8Jfq9bbyD8_95^Fw?mYwE5>q(d=7BQ4w{{Ih zNeD=SvBo`usk8+yXlxEr-O(xit=;g+mm6P*LeK|RVI+%m821NpTs_#_0)JY{gG<ex zzEnXi;fLwoWg04lRh4;E$F6QLN<ThT_JXHvM+R9iMp)logdJhp;r4#SByfg~1_Wac zbLOZsrO?uUo9?BmLfAP>2c~knQ+XjE!&N2ChMeyqXJR3UZc9Rqa@2BEuB~&e>h8x) zTa1q8mX<niMs|_JdUtx3ZlB=n#78d}s-t(HdBh1l3>Ox;TetP0-F#;EaNmF(Ek^5h z8KK(Xjx0vJ0Yr}Bo^GCI4)@S8U8#p!$0lYfshYz!K-l>h9%}C!kd;YF;R?^JIF@i0 z$LNb=+vv)jqrE*?(i25a5af{{liQ<2mOglBY0v1yob^U#b%1=Vi;|G@6le5wJks3} zF?n*m*8yQ40vucOvn|jzCv6j{+<0y|nHh4i@R5Ph)~><kHc^=$os>Qbb4rVDIL3aQ zsY6VjlO6p7X*(h#4PkPZ!L}7<>Yz>sYc9fFzUL<dNbC0EgwVBnX`c`IOu&H&;T>{C z$KnKvAy6<uuuCw@oB?l_<!Q#Y7yY_1u26_PLp0J`#GE+|Jp>w<?5=IW7*+L)TR2R! z11U2Li*6km7+|!dJO`q`y3aO&p(0w%9J?RKQZzG3TQNP-?lC&ij>qx>T%3#p`tCl+ zrA*?tj?F<eNe385%12h<i1Fs)vE1=kb(qaMO2*ZbdIzV@lN|%tUFK~gY+>Yj+k^br zk*W6;_!r)rIE9r8@R=wSixm9O4v9R}0)2mcc{;_Z4%Ka0viqUu3KXtLEX*(XHNPp) z2<PYUZCNTy=XWuP^>q}tfpAxs+ayr`JFxiBrfy#H#VE;B0BQhck1lMWwGFy+-}0#R z*}YT?*X4Y@EG22>ejRtibHpZlcX!%8AZyiD-NUN~E&J26D~t2d%n<e1ZC}Pj#{)ww z=%H|zcLNt;D-G4nJ1NtZntKPk5G0C|nU-><2j*&ljcG9zffS-G?Va$>s0K#)wwAO` zsLwYT=B|>q^o}ARNX(dnP{A;3L0rmvVx5ARU7P!$wY2rZttM5pjFo{O-gZZMsyRiY z?-G4AZ-CP!MKJ7#c}<^_C-r6{ENh?nsD>!-Y97f6F&H*U<6=uGqf83L=o1hvg1Q4Q zlbF=~ek+0r*@l)`+vX<&nC2FA4j(;G4tS8_6*3z`Sarg|7nXEvo!#KE%Y7`+vSjKt zAyl`)gvBW?hV#IJ=_(?Q(`*2%JtLVKFq~J9m9ifzXO06?t(yJjiaz0Z)3hOKnhk`A zs{%2?B=oVlL?aOwA31>^i;(u=90fXI3`Cmvt{aCk_BjiZXK-L}l$N}R-Jps|4r3&v zd$EB7UB`BIIaVb2bP{EQ&o}|!tkly-;jEAJsIy+oYT3-)hTGaMxlKinDjJX5nWgQ} z*jQ7I^5Pcz6*$sT8w&Hw%2_LVPfVOsHze2*n<$oQ*1Gw{#pMO-Fp|oemrYNt#gDG; zTU)c?nCYXW04{elBPNNK3WTUo*VA0qV>Dr^rEiex9$r7zJQrQjKaY`FCF|*6tsg3S zeB>OGmYFbAmEZ=m-WM5%_v50^KAk|aLN<Pl?q+_H?K!dWz9*@iK}enP1V<7Fbu?=c zMysvsY$3-lHpI^8YKJgFGdmDMFF&c-4rV4UquQ8hb1N4=A8g~?)#uv;t=Qw`1*D(> zmrl8bJUfvjDyb^0%^+e!6;^oBCOfpR9|!?MeSMQDJH(*wt84kN6d&&4D#u9Z+xtwI z@k4GBD2}Z{uhoZ&%cE?d01sUJ54EG@kuDj$Vm;-X4ncve8G|_DVCgzMb4^w&J=H3= zBo1Xi*Dxr`Edwy)$W-Iq)qTTuV;0L`-+5qa>sCog&4o2vJoy&78d{jXxcQ>xl0Nfx zJPpTc8HM#h0uw96VYAi34Zw0seae^NkFqs$%gUGPyoVTBvRdryOuOdi<&Bthg^5!8 zK#bm4V#Y*@1i_H)oxMZ`*`C%JC6fuGaBXe^e!w;}4WG>;G=ajh!)ID!b!>1gE=0Ye z(<GRNci}8XEs0Mt)YMK=K3gNLstMVeG$-QFh_-=Itd_lXfj>xs3+$NF;dMZmS1#`& zWe3H9D<7pg!i)n>2q(<_is1=;8T%8x@NzXh!GFxqiX$^y;&M@BW`k{&DHj3C=&`!& z&Qhr;?3kIcT?s7H9LOFz9jV~-ip^ou+XpdbGS#R)#$r0snlPsa*tqk)irY}M?d@zI zT3sjbNxiNa(P8Ky%|L?G(Ul#vi!Ac%=-jS3ZgH>jDRSkcP%&@xi;k(a5oaSHN~RqI zbp)uZK``_27;k}sOjc9hVo_zYuTvm@14~o@#cCDkJPc(mtgSFGD9PHGL}>6>Kd-Xc z98s&eVH}xzdG-pA>(sAdOjGDzllfR***ZyuNiWIfVe9JF-tIw@TH2`DJ$4=zPh^66 zmuHLmY-6GRt)K$RHr|(3I)8R@m`%aLJl)L59XM4FtXN<Q%;*R_kc`P&`{&Mxq2!VP zHL__H0RUnXR$R|$#}G3bh$|<7qL!~r!(9=yr{0*tmep<s;L>Oq-aEFSMZbudjm7q` zV_h*9cl0)Qx-RLXAe)!ibjUZ%)wCGxjQ-3}+U8CsBQr3rn<JKIY2b6^KoufW(xG&^ zb*ot~k%Oyrc8xc<)d&?B=jA+JgN+HJc>*ntfq-F}!kAtM-2W4AfVb|3GXj72)5BJM zoY)QTI|=_Cr&k$hy7RC$vP;9e!?hGo!noIMHOP4ZX|>Zw?cdqt<~BGuV8=ws807}! zsTMXvB5JW2U&5D1-46m4JG+VRvnwOFVq(N;x(6M{!J{2g!qwIgeMbzkp4g<Es4l`M zK`WQoux;Qj6Pj#sdSkZMyC)p>sF$z;W1_A8z<CeMK88_Yz^yruHwN<tRBPRH+2n7Q zu>3Apq`k=6FWOs?^#28OK3cu2>U_z}ligVbc1$X4o|a=&Fm>_V?DG)=b$RzdEg^E& zE7H~Pha)(x#fgPJ)Hc%PhkYcGeByxAbl)B31Wr@7(yQu~@V0WUwEX@F)3DPKYjhfc z7@<by;mgjc#N%8<Ok&&Y+M#t!y<T1tG<}BIz*e<a4|jw{`}!e<7=K<K53H+DW09cl zM8F*d__C@Q-du5`u?vc@GMg6x|CsNUxQM}?@pgGlR9L;L?j)zh;vlzALOnuiR3Yz$ z1WktDIAF4YU>!a(??r+fVpCi9+P7Z$CYzgN;W^5%-wWjvfU>v%XJ2T{t~9E0UPaQ0 zCF>nzAt%5mU9IBHvQ5JwtVP{h2n%LvKTZ_2N4gNW&f+UuozN<Dr?{qt5yj)8N8PhU zYi=;p5{DKR3t%Nwyn;i`F^lJ&ue+R`(P2E!8J8>3JRES+Rh>E3>F)0bBY5|D*C>}r zA%`cn`<QWoZS~~)#@p>m5hAfi(=azfBsf3!fhoDE!HH5%JrJGGiv)#Wo@I$?jh170 z)8-rjgeU%wk&RnUoZAY-8tG!V0~pt3dxkKZ@@N;JKFtOZ3d3yPf)~xrUXH!Q48Yt@ z%MR$kW|6_JGoGlABKXdmlb^Gwgy<JdlV~;RH#9a`MQlV3eNa8|Ghg(I_aOwO@sCo# zu%~YMVNw~=rakAFhwKEK9w_=;6=T~203QpW^==bfScX!5vD3U~d|ZvdOQ{X2*xe1n zLTXqQ;P|>WKXK}*@YDtSs;Okr>+Y-D7Q4#PMnkiR_pC6?{v8KY=4%Q!B=*Q)79i{j zOu^<ZmQjAJilaSTUBEU7y>VNhEnAB_9zO+xnuY57DXwdb<?T#(sM-rX1qu%>&~Q0s z$@6#-96~^fL#95%t>auC_O1Y<I)ZiYtS9!>2o^@o2J_0PIf#AT*}G>RmL`UmN0k=Q zUiqPWqVi51-|^L^D@GkBU4OHfYw$>uPLQujQ|-;xEi!1bR7Vws^=nOR^+L!vgqw|- zvrx;e_<$IgS!c|Ns9b_ViL$8W5vaa-WF*9Z<DijlF1?rS_jkRmbxL8EA1@iH(H)a; z_e4VzpZOgjcGF;XE|$qrz%k>7TpMrBAzsbUQ1e+i<jyEtI}9`n^GXO-qq<jPcwiJE zFYIHHEg7nOuQ-wyP+;%kyjTydCJSrwkNUAcR|l9J4d71VN-~Y^%t#t6&j@+F^V5Pu zbz8tvN^K1m0XovCyT1c7ZKol3%3zpy(!jz_U%?A2_Va7|ao;E~%=z%FMMHuibA^=$ z(D};@`c*O+#s&!v{CN3KG2NqPyf|Vlfj?txeV2K_p=zSFEvOBXp_-}*Jw+W7gtGnh z)nKAsp8X+2mv9Dv`*jxmy++%m1$wu`LRRB4#X4Q6Av%y&Xut{1%lhcxVc(y%R<-x@ z_)Wc!vCxgP;NZis{ISzZOPx<QIAGC+a{cL?9<A!^#ojxNH);6kHTOG(v$3<3Ro*Ux z7=8`#(Uwg7tipz7mQTBh>De~OLX(m~X^vj!2nie8kHz|ed>Pfy{<QV?@KR;L`xla+ zxwR|Tzct=b@veut49tge--OYYE_u|np%Se#?#8sh;hXiDw-n>vTbm;wg!--^pQMpZ zKDgds^N;1!46@AygC~=~GTWa)T#4nnqs-yXQZ`{AauW^!eYS?XW!#dq%^pnBP{w>c zO+^6F11r#bVUT2Be1j~PzGg0IV<Te3EMDEKk(M{mARJmq<1>S!^rd!T@oog51F;&l zde09&_FTEjdFgQhv#zGZ#jiTV)Ky-R#Y&70d-*f0P5C|rAxY0(vlZKAM`u}}^VH^7 zzF1A{RVOa4(qj68i8IU$=~J3?f(i}A)Hcyedks1^0A0{Gm<iFKNKwC@Dm@e^T(5~t z=E1p83af}>u%CsoB|EQtEkN8*Q{_J_sVz=y@pXICM6!jqY`4sA!R@+TxVyFmj&hf_ zz|fYdk}b=%#Vxqbuw{B;V#~f$PEJogY4gIwW|X<SZ}arr@|LY9HEnI$x+PrVS$e%} z!S)Gy4rMhto`7Tfq>zsLF-x#F-nJ!v6~AL&WLp6Oc9?`nZJOZ^FwADg`<uh->=^#R zctjXD{NSl49#cz1UgIxr{7m!C8D7k&8BgxI7@7&Z_-Q+Spg*CM;s?T5g0cpg1R?xK zb)HYO3?U>Zc7ce-i-Z-Y5<onKQhUur)*uJTw8g4eXk<o=I$5@WWu{;SS)d+#H+zf% z7Qcu8*v1X^0ejo=X7`I#f09a+QX+F?hv<x!jikg6{9Bo>EN%{}P4EZcB$Qn#BPoq) zP>{LY)GO?^i*MueV~dmec%A}R>D8jL=(l{r>kXTh*nHEAW*t~V0zg9&tDx$Rk;v*U z>}46#iwpQSTD2R$*)%*Vj3moX=q>dwtd_}?V9VvDD(u&*#vGWd!3N9$&lGs{ZDyft zCowJRcjh`)??6A#Z<H8th-la8@ro7J3@%L0vLRM7o%MlF%;R0aSdQ1FkbA-krI|z2 zJIA*ZU}yK%%|cN#nC0@9hLBKWZNy7D!fsa+^cy3@i*)wa?;4X9xQYhFn<v6*I#>bb zyePqpjRTakJkCDRjNd3m%WFVohOEkQuM@@5V?Ag`3hf`0;KFZTYT}328h-9=+5-Ti zZ@R*9jXvRbwb2R8-txu>fxnc;qeFeP`tLdm_<OxB6G=~!B=<`W!@o(g_Uggg2iJao z@K=M$+KcvnbMM+8?Y(PnviAEgU-P<4)~tQYC2QV#$(m&Cb(gI9_@!&se)G~bw_S?Y z9~WL9o=5kt$K3mvwbz{R^%Ihl^5E-_zWJE7UpVI04awTu>OWum=yx8!_PXOg^w?zW zjoHsr^ZEWh{;tWj*G}Ftx%P{bKblO|9-Pp7vi7f+uKAx=tXcc_SFCx-<!jcy?D92l zy?jklsLSPt{jzE8JxzaW0>;(<)&RUV`R(7!Uk?XhO>$&%!^T7H6VdW-BmP@0{iX)+ zt$-8H?Z-Qw2jQK6o%oONy9Ix+L6hXU2H%j}@E%Wpgy6fCK6y+Lelg&OB<qraswcco z>7)KfDE*OwUxw#u^?w84tj~eRJN{#o{{4dAE%-XYZxQ@Yf=B&-AoyXM91rWkzu)3N z;@>Fv!wi}v4?qVHzM}*`PVjRDf27iH7yQCf`fkCm5&S5n5Bh&h@P`PVTKWx1a-G)` zm9W2E0e`Q<eT*bY(DQ)sJVJP0i1e$`Gy3=3CpeyRKQ0J<tndW>D@y5K+5mq>hbKDz z=$D|w6@o{<2OVw@e7(wzdL9rw>J$9-n-ZSOM4tzXK6tgie{WFF4+2j9e8L|+-P4pl z>iOl(UjN{qsORm1KTzqTo_7oWP{E^~e-b?UH|TjpljA>H=|9n+o?mJJ|0dvTk`2ib zC4Tt6;K!8UKNfsr3H}SfNryY1j34+rTlM)rf}hgl@W%>%*dd<&xq?%c^6z1SzgqAZ zNB=DN+XavDyGig*3VxcSNwx~!Nk+oo^8`Ol@XtNP;jhL!|2hR9KBZXCe!+jW!{MzD z@bn{spV;N_N8iuk&k_9eK8Npca563Us|A0C;ERHPUGRSr`~`ylT<~`Z|3!eWHXbi+ z0KdEeJox9}Q;OsFjSbSjr2+gMfRlfc_leIx1pxl86MW;${q6mTi(KHpU+^72|A1vU zbFF<&J|g%v_c(l?1j>zouh!mAH-LXpc-H^j@pvyJ$(;?-{|0dK?b*%vfxqCxwWuB8 zuM&Jxh}H}KyB1IX9>HUr{^oS2L&#4KPvUuVo2MW3<|bW&|3>h?3O)+>n&hbD;MI<2 zhv4H%|I2pAGbMQR;}JuiKIFh&ysk#K7d3zfo(18F`oE$<dKSML{x@1R9+vz;cvMZB zhSnrUCmY{l2?Csa7_V!RW0Sl8tqA`LUSsTMiSgqH249za_SsJOC+Xu)1W(`S@Z$yl zwcz(%>VVg%zt)29R>Oa!!Pg}>J=@dYDm;&Ckp7(GR>#xYApMB&-+G!?B<B5d1;0@6 zK9##$@aiT{AN6@P;74NIZG6NHXd(N;|K4u!^~ulPZeY;X{{}Gu9ht08ej|9KzXd-Y z2L8Na*i&v(`U8ds<N8|16MDkW1V5|<|Fhvy=G^1KkXyum-&xMLztOi1f?qh{fbCvP z@&v%yu478$w?pZ_)8*-R3eSw-&!>WizYF}4TxfXKCwG_V@J>swM7hVuh3EBubUMU5 z@)f~f^$Sn@1QGO3!G}7$UFWF&zZd+a=Xm;Mm2n8fAn9<}j~(zFrGGf!?3eeJ>bcS2 z8<J~WY$l;!JxO@pDgKZ7Vw>>1zl5h#>ECdu*K-2>#J@8P?!WW@o~QKhexpM}UcJ=t zZ%DqX`UGFSN$Ec){t5Z{9>G6;rQ>;`3i*uS`v)AL={flt;75QCcfVVNQTp2~y<T#U z?>B&NfMQHKU;iAhp@x0(lLqN;fS_AV4%~<IHoi)HemLg;)zTjaIMZJ#`iRWQCQH9A zdHPGe@}JO$e-ZpH(I-}LeTHX!a$Tt(KZT*V5%jrG@F2xGN`HgkQSQ9pUlu&Z?*&$F z<gPz2xAf4awH^#SZ*7qNg9cxhd<sia{(W4izAE_Z#6PjF{9yw;pM3o4^!%Oh-0w_B z+%EioYk=oSG;p<k`DcT#OCJ6iNANY_*(UhwpYHX4n&8hA{G*?B!2bxovjP5H4d5>j zo^Mqgf1B{U3~=(vi6y?essWyxgy;EZID$)r=T^aA`5Xs)Pw+bp|N7+i694?c;2V-1 zrE(9$0)*q`?sqwYQ-tRP!H;^K*S|~fryE=^xyPW=KS+vyr@oyDIOW>`jqBj6T}uB@ z(Rq*3zeMSOTuOfx;4!D?icLOZc=8bc{Uzbw2JMS~lM*Yp3qGWJzQB_wKLMQe{8Wi< ze^mOfPB<M#{gFHX3e#%*w%*|Dl0*LDh@YVik;e%BDK5<M_X+=;Y!-a$QC`8<h(OO2 z{4bhE{#EIF46c{lBUSqErw%++^;`h_Nc``h#<ix&<V6keyj*xba+M=k`)tQ|nc$N@ z_4i$(=eq^J?QBm!q&j^_@IO}_&@cFx1fP0^r@zFzC;5TkuO0V<i%Nfw;7{&$z}u95 z4d_a~{ostl->UQv2b|-ptHkGzxAaPsdpt#Wp23AG{_Yk2fd=WHWBAu6pDFRlE`x7K zzFnFhUnKm`9CgGY$6hD+XU_6+H>*x>Hn?7Lj}IvQDVsfgD0W{0ob5eOns@F{`rCRP zNsO=G3;ynpIsAB)ahUYOKd4<XPEP=wbUxu0PZ)f7vf!u9JDmGj{A&^Xhv(XBa;-m- zUcnQk5B=)7fOFg(ERFX$ORvni$BTvMCE~ZxlV3qRhpbOtuKGuoD-HjK<j2~th<3eK z@WB$F+$8*Wyu>j)S%_{EeA|PZ@ec@or{K@H*8%5>4)+Rv+G`!~U8O(#Ax_W7?sEXw z^ZYwj@ULjTi*g?)_^Y1lctUQR2sr8XixM9WD*Z>F=IQ^Jqfe#+&%?d`Z&$e&3%*tQ z`4^P_Rl@(B68@`|{%x8Uu2=dS1%IdZe@+$ro5J&v5?>uu`WK$%2`^Lndj!A!!Cudk zMbE>qA-0;lJqmF0|L02M?s1lWUD75!Fy{BIg5N29U|8kuKgRJqM0}!RlV>XZ;$5CF z`ei`y7i+!wB;h$r@Xv)}D>_dbT#0gz7dL>vUU**hc(2J1l;?wjcR#`r-=u<X68u+l z4sXBOGkjC<qo*9tdp0`!4!}vbb4&dHE2Y2j^`8D(5#q0cKj9e;I9%;|BsOM==L==} z1HM{+J=Ne?2kmeKr>k9^f*-B^+AR3#!aq~0=cLl#rwJ|O|2|8<KKXfxZ{I5Tr%UiJ z7#<atdwfIbe_2X@2h$&NL~;u^f^vU9YJlhW4d4&Nf^IeXJkH?jl4nR@e^6zd)F6E` z;H3XTi9RF3^VAnRf=>z0sPXyw<ciXGoKpIiXu-EZ=@$hbU+3+;QSi$I|L*S{@G8OI zF8DpF|5L?3pA@|RJD%{pN`FA`(=}0SQ~IA8T#0gzKQ@3LilqzZse2_qFHxQ&1h4$T z0k;djQSdK5$qNj*+Gg-vf%;ih`k!e6RI`%{0Vn-0EYbf;rT;fg2wzpZu2uSthx@*b z9lW57o0R@$9*E%Yc>6a={?p)k$vysC>A!uC1N$|x{Z8<oea+!N7W_eAw$=FUID=z6 zYJD2(_w5bRcQk;X(Exs419%N^&R_2<jjszW{kr5E($AOF=2uzz4aqGfIdhfLfBkw- zc)IBPA;CM(bND%uSDzQ2D@y(Kv-Mt|YgC`ZRPOhLXUoH!|GNbLrQjc)a=_nI?q3D} zk@|7B;19$?n0&HH^Go1=xWU&a*Sy2=-=KOPC-}iqeKrG5K2P88<&LO69fD8((E)Fj zcp4J?WuJ8TTH&7){H4-APZ6FagX<;tcx40l>l?t|Dg1|M9)F*3eO&O1r4Prv`E|fa zpDRoKa;MUNt<MoWPk4SNc-w~@py@ohPw<aQ;rb8J|Nf6~{MVH5A80VXjzfBM<%++i z2JmL#|5AxRyBnk*GWfdW&ks<CsK2HJ?|z3DJ+99e2;L<+T&$X1CiuCpcEGm;f2ZJg z9qt4eeu#hgfWeh0_xP;Rzxx6QO8rf4ZIJ$EOc3P59a`u=PPl$5Ja1a(75{+bPx44l zfAz4#d7jF@qYduA^Z!0k>A&(ZhkizMc!uD=5Z{U%NoNB*Q%ZlxhaHd9n&f4IzvVuM zzfy%?Dfr3S=)FSaeiCr<=dGpwy~WZibMEm?;d#lJ1B3s6DEJ#c;_$bM4)+QEWHGot zCyzMF>2}wwr{AIUj~4tCtqXRl>`j9I{0y)7<$|9o_-D>=1YZ`OA;GI}^MnW0-WkBz z-Y=KhJFE0B7r|~<|Gv=RDlGSSgYaCdai?OF>xJi|S~#97{{MpD|N2=+vQ4<YDR@V} z146yNQ}FX(wZp%^`sd`g2G>jOalfNiAJ<1WfNwK6#_4w)$)|;@Mew5@?d8V2^Q-#- z{~-@fk{!81@v~p)Tc7Rl=j-#?f}gMb{F4Mf7jUj;%lqN8O5glvFPG=a{Ckn$mwwUT zQ`CchmlF^A@rIJzyUx;kn*6^vS$garYCZ0yB*|ABq`$-9>ymHl++??q{klQ=<QV7Y zUti{!Z&d+D3jQML|67D-gW%7-$^kLnw+nv135Qpd{xrc4`H=$_g#UEFsc*clr1y>~ z{af$y^img+MZu?!cLa|W{+9~R$4YqKWa*VC_js@H?Ejzx-=%LiHAsJ((!c#oPZ)Cb zV1xAc0M7p1sPnSqL7s2zv8(g>BMrVTd6f30=Tx7^3jWh0d?1bqewyIVKj;9dHOXKD z{NqZ$X4KRFtMKd=eBk9y&l?4Q0pP6v!DiQouaG>sRO$Dh=?wlcrGJy)*Ing+Zwvlm z;kmiQ=eG!cSZV*~JHqq9iycAm)vp9ULE|ytUwx?8bBE4bui5PR{;2fVOP_h1`0ZiP zCpkavmEL%p>iKBF=icmq^OgQ-23MloqhIMa-0KOWKI4MlFzEF8knp@f@IPyTzF)ZB z066(Sk)C;l;O|uW8-MA5<0MZ$W9c^}|5=j%w+Mc)MCb1c&ncySx&Ib?<GUUIR@L)f z;kjM-Lrr+_2B+Kew14$9)$<sG>m~Pi0^sDIyG!+Xy1{YoP#UL$4e*?6@O8=fkQ3lv zRL|!LzDMi0C#dWf3x3srr$1Wh-ynF`IS%-Q(q98O>-n2fJwE|B&ppfMdS4QrYc!7T z5dLoozDtV0MZ$m3;5owR=RFPJO^_Q$pgx;=v<_AJHUH%FzqQ8!_fxr#5d7lzIQ$jj zlMR9&Qaaaotl-Um5&}K88eE0t9&HWaX9&-WUhN2O7M^LqNzbp8_;XR|FOz)hP#G6l z`t`}Vn%5Qtze4bDm-e5p5uW$G(F+W@_hG^Be~H7xF6grc&oxLtzoqm)eu&G}O{)K| z1;6haPgqm>wPsJUE_tQqokKK_uNQnqa$vLQ|3tz6<28<;&x=WR2!5&-tZxzi=Neou zxyShp;1>zc)|))>&y?qCz)Al^^pExI4NCv9KX^kYl>W1VKYqmF-xvHp1^*}w?eKS( z;6E|AUUH8I{Ii#PSgG7&0H?hDohCGhYx~<|@EijDe2U>&pZu5PgSsVY6a3l|JZ*rd zX7F{%do{5?L-=1Q_^k&V@DmBRs{!Y@OC$%PX4e8vdS2L3oCiN@@b$@eOZEAR@IUE? zjzMN;$?XOYto7$FmHzvEPUk!H>Ci_x-5zy=10=qaV+H^4`yIYP1ZpyP9dG<P4RF@~ zj?#D>75vzeJ<qi8pZ9sk5OQ*l;J<&d!$VKF)ZkHC{rTnw@ar4EZ*Bm;&EV^j3w3@G z`rh3Q(jU5!?OmT-U+R~K34TinejMQB&o!e?NZK#*Z|g><+r|<<w+g<gWZ!j`;5($x zT$A`;3ixXK6-x$RmmGYar#nOP<b{GSKFBMwN&NY0!N2iyPk)m?l7Bb2UUH8c4Zbd! zz1V^6`gSYe<cA%lcHL$0^~uemPt5zj2AuSH)Q22F(EovtUcFsSfD`{g;SW5|YLNaM zgRe`r%f9YuUQDvPLHZXf{jt)Ar<MLqf?xZWH3o_Og!c>n*Ef2?SjXKY_$xl`@RtkE z0m0`~pXj?g4X#AF$304amd;JqtnrWcKi=tZgywNf>-M(}aMJTxXZrhDg0DBYUUH8u z4d5-p|M}9m9uoe?NZx)!xL$XJmwWv09q=E5r%L}|og?fNd`a*FPxl5zJuedcs*icX zkms)weCxQw^+?_ZIQik+62E=O;Omobm&W7g04IG;yT6zF4l&RHrN6SopNC>ePy9ER z=x|VYUic=j&u`SOzZhIExyQQ45YPJLJ*E0Q25{DA{mq{E56W|z;6Ks9$hhD=f<I@$ z0spOW{T#uMxyIoYrJoc0N8-0QA9)_&Y}Xe{?YcziZ|FY6Fg#K8xz^x9ntR+RJSUd+ zw?8jDf4kTd|3Z1b2l&QZ{`h&X@O-^gpS34A-9AvF+mV3B*a;kbKFZ+hl5U-Mhg{lb zcs3+6!XJ7|yVAdJ(6NlJ_2-bm{dfM~bA)H1gy($WIb8d12bJmhg1;zrz_SIvr~&>r z+5QRcJxRdKDE%86q<>cf_$O8FA#ZR57YNU7f}eP$1A-rZA^0bcJk&lcDgC{GlTSWd z>X*M-dL_y|j)DLuKUbdXKy8yHCkVdnDj#<jDbIGn-#P1mX9~W<;CjhDh5=`Nt|-xe zOz?xH_5Q5zzu+2266@ki1ix?C>$6p5TxIZFf%<u);a{KJQQ9B-obc@Wo+lh~bjddb z|MpHFM<)x<PX%AT!V_wnKKY&C4}G5}JY9GW$41a<e14q4F>lH~?Y+XkMeqwt^H;av z`*hFcQ19j>75wC5yg=Gd^KVx0|9!UC{{fG1_{#t%{l8Y?hsyxp=t&CyUM)N~e9pn4 z?|o44yKZs#yVc&W3x1s#MA?!b8@zzpUhV^Y<4SOH#N(Y0&zta%M=8w)z*+x&CH^^8 z>9@be6RP;+Or<}eq>t@V`d>cVEB++mUl#mB|K)(I1;1SI|0TewqW{%`pCh}PR;B-h z!S#}R+^Y0PUgf}EeLLontMkcEmA*Re_57&P{}yo4;gpixPBuB+{zvz!exZ795d0}Z zFnNe0dc5G*svkqYdaB@Ek|(jw9Tfc2-}n4;!V|ZK=^SPd5m-jfN;^jT5yBOrPSU0m zbt``&d<CqYZ2PL2x51|r!X_}lBb-Mftoy2|w)%~5bC;4`J729X2#LEYc<bum6ITVF zx+?UPRiRH^6?*cj(5I{lJ;@x0nA?mdxF&?xDY$E=CpI`-sqAaos$1^3?d~_+c?%rQ z6yO+@fgI?@6g^P7@@}sayBG348YZ$k-s~TRC#*+vR6xR&VH6eCkg*xFpYaR9E_S2$ zvlxPKNW+WdUM##bdB{lkI)T%{6LA^cI?!V)M*PKGWX1T2h=RG;k`{w9F5TOO`?ze+ z`}1@eX&2xvnmxP&$ms;)&zsMI@VSVDtGYM??N+(fZtj4J-n3TtbW?(o?*G825FCBf zoz)b)8LjF}DlXRNFV*KS)Fa46|7hBd`11@Fly<cZC28AP{cs4?n!pk80DStV105X< z+%iI6L<ly&RGFRK(b?PG(wc5-+Sc@xT)abilJPJPKEl9%<^=^F0~i6b;1Z~|2Oezp z!x!ZI0z-+yJz;e>n996EWX`Y(<<Rqk$3BoVRyiC<^I<~icOl2Jin$$*Xv}*IIS5{J z+==4|9pkwB8pP*=I}5mpp^G|;poTGms^A}XiaEHmNUJsYn+_LOD}2fM2f2QNOE!3n zExW(APJzcEjK+C*;bX_yXoFj{`G4%$Ph?$0kYI#(F;{}_jUk<ZuM7qbRtmY_&732` z;SzigTJzz#4{l%KFA(8ZN)4<nz{kqcRDtSr-h!YeaE{|~6DUI9XmD(ijvk{4CH_ah zBeVs2*nIOSLZxLyH^bkW$Ap|h)Uf%zt%^lSzb&oi<A?z@tMF5U8na{M<+K-Gbuzz) zbWdr)DBxcN|1VTn6aYCEqMocjvzYv2ORPl}HlQBSRncyh-3Sa{UgicgI)!eL=91I{ z+eW;UTs$Z^72H**i!(#f^_B;SEF?3RG{Y9pUB%Z2PV{J02yUC)MI)SLgElh|h;SjA z`TbScAMn#Gs0pW}birbNJqjhJ-2?7pCxzebNwjZlmhP3ZG}|!|H;Bi$lD_61g<jta zfk|vCW(Z5h&Rqh#6uZengGYRC4uP_Rr5N4#7BnFJH9RfAqZeFRYQ^+nzHLV6sFQM{ zv$EtuVwk>avsj|_Ve8J;;QcG-E``3^>=o6;$k_3$;er0v^u(sEC%HeLENn42yC}EB z*4c3Lu(RI#Ed?)O8oKjvT*b*bT=>pZ5R#-}a836uo^=j|u8B`bOo_1w#K}0L;G+qT zK4fmS=p#$MwOsHNy@#dg#J(}e9}gB^EMsXA84Doy<swI;ba)!1U|88iE>tP=HLN{Q zZ9Up6LNi0BD4;~RCP)@|`ts<vjEuV?pa)6;-$$rhdiE+IVS@8hgzKD#Q(O4Fg>Ry1 zM5P2?2y{4UCQsPZV1B*xqKNS@_Kqz=z(EbNxlF-);lP$LMd%F7q_cI=jKy~<2ApMA zjO`+krx03thV!?^2t_PHCr=@eX0jKa-|4w*2~Lv?p?I;i;FfWE*5V`#LzY*nA$IDc zJ9ANnS*4e8lc>8TW6MkP(D$kn=>?n$t2KCq$8<VZX+}6Hz~S_|ETGLzBLywoAcEWH zCKmP=Iwb}l{R4XR8~5$(9^?YQgpFDovq7{t1jQJpDoWt<moX{S+oH<N&$UH}HS@(3 z0nV*EOz63vSmXHlbQ$5ZS*hUr-DqmwD_%IB+l@qp7FlB%W*Ky!tj$BoWN6xK{8$hY zj>vt{F9k1<YKz3O)eWMC;m9~IX<h+JM7G}xXLDc%f+f}{r=5ow`nNz9P#+qT#U(~J zXb3Q1^lGX|jT*Nhs_P;wq8`rNx=OB_YL1sqy6BdBzo=xv8O-hYA{fTV_Yb4SdT@D? zycqSJIoU|@00+Thb$4pvoD<Q;9r+=ED&5NaJkNnx4;RWgo&<D9;)Ph)6^vrUr)XUs zull+rg^T57_?S21*Ml4dr^2T@h5~~2ntM0|YN{5sRO9loB2U!acu7z6N}8WQb(0G` z^BU;EoIH4Vgy1%6hAx=7JM|I6z#kSbDypbiqTXE`uHAFprX+JrQCXz_WJJ7DG+oj? z@1N6jBXKdk=@op224~SVqf{Swkw=&#_EWeH&-A_mH^D(Zf*sFLY?E8-eKL@*9y_ni z;!lyQCZ}dK&tdkcLSd*CHAngqou#X`!Z=J(oAC*GZKO2LzHUD$#)cCrCh~TR9_>VS z6~kK{snu!pQEeT{NCudhV#wCK`E`$z^{~`bWl?v@eq~TEWplYNo=tzW_y%z8x<IdJ zCYwt0cvKmkISglbkN~+jmN7(Zs&qAadAzn%U1E@g6|7iTvh1x+VuH-8D!Dk;m3?_l zMXj*fnIBCbk-?*7-@q0DJl#biSp1R(9-lSunIg#vgO2Ws{b~)u*rW&~zlm(w^ty}w z-B}^TtlpiUZlGO7SNUp@1Dwl61lWN)x{N(c>%kJK2-uI96}t<dEVQ1B(8{DKg&@9Z zAx;g1!>Cp!$>kxcI%ns{$7Z|dCT5o>D}z)=Apa*<nXk((sJYY$H=l}KlFw;@Tx>up z3ORI4{hH{h>?c7WOJa>_l(Q9KTZrurOb#8;DXdOY;~v?YSdDRQo2OEPE{Ro16=FV} zq%U-v?83`m%3$Lei7?7Ij45W&kvW05eS7o+Mv~7R^p{%J9L&SHbCVXi@aSzsuvHAU za=-%E1Xx7Xd|osyXlxuSR!yx?&V2-jYiUMM&njsBjP*iUBbjx!$|4d=70t`GXaMSn zg*%1b@<PCD#*i*1Qdx@p5*6f?ysu$>F<GdR^3<Tspcw_1^jW&6hQ^jx?ODo7GAdxh z6o^(^Z6HA_w3V_=Fs{2$Ey#-iPW@P}=Lf$FEi{4>(EAW73#Wi_=qjj&jZ$ebtk_Dq zlP9b1l#re0=Vm?D75Z+ZI)PANF`!%_n`J18e6d!ZDL~;d*Q;YR$2yKHQ^tV6a6s!$ znsU{rmgGDb+iK5sC|mb|r;r?;EKOWRzt;QOHUy?F$o4=ME0&rIKrC|T9y1;1&QjK0 z+)i!~<JEOLSK6S=R6s;bDPC{Zd0+Ijtuq)css^!FTL2Ae3kb}H#oW^3iZ$<44KcN| z;>qYKCqhIJotW8GR9PStIXn3Z0x?qeLQo;B3qs;hHi7u2tETftxNTJ+8tH3I5fw8{ zqiWm(z=FX@?W(oOVC!}tz^ldv1Y0faU9J|nKNospighY9LLve!=6({j9b>CP8YrO^ zh9x!zUR;<k5mimO+SAC24G!ZF?s9NfALLntbZ}xUFvKx-WWWd&E+lNZLlp~h&r?W6 zv?eaiPh%?ZE|eeGB$QUh5}m^i0cX|9zG_h`RDF!}atTZ>tjz5xv<Q9Ru{@w{S-@)a z2&WoG?4>*J(A#YBXuZa5_W}xE9h=^4N`Z;=sVcU#(m9OZy2_Go{}}zWCR2#&ROe)} z5*MmceQGnyOB@Z^Oq1K|%!L)R?SKOL!N+5!-%xNmkK~-TlYJ15)wBxE{}3lW=lC*> z)3#5qF0a_P<=LaI&z3!8*QYZwk%wQ?<`z~xxlzlua=wu|uHC$q64pHNf+7=3jib=O z*DxaU&bnBUbkyFawGy1hy#d!{Fr=}NDJmr1(%P~`!9oa@!mduD)iP@96OYzPu^s?1 zl7;F*QT)fq%*CbPKyI~hJTe2>i|K^?242G!Ai{N`3DuQ^o}aBwdh0oM8FYg)3LspK zVLfJn7EJV}tiBh!nyY#&m!VR)!mfQV>yS7LN=ZZ1r?WCA_Gj%Xdofd(=00p<Ay~yk zkfvduC0+8{nx+tq3o1Z)lZTPYimSTmc?e^89yf-7gziiCrM7#N+w@b_Cq^&>)KxA_ ze!l8-DX>b!Zd(>-@`_3m_BeB~;0lXe+x(fIie;__hPL57iq6WpmbHfbu`p?|Eggi) z{95A!Vz&t)bO262PQYx_e`=L|d(PSgVWYZ)2*j3*Z4QBG-uKOnqFV_GMoCf#2WQ7; z+Ak=v5<1wzHLTE1d`8GCD3U3*C1z0*Y=1bVr}7z7g|({=c85&o_5gI>*vZZ!qODk^ zCKT3CiVF=Utx6*j;Rhg{bCaPhNYZq?hKN<v(k)UsPi00dU_!P}vM^Rf2y8CVZCc(x zhEq73Wk}|7!R4W*;0~-~VVQxZRjlT{Tq$eqVL%A?TA?l2)61kteOGT~h*@vi?!DNF z;S`#e&o-|@tdA|tR|~k&OHh;wAO>A1&Mp>)p^zpg#ZnUpK)hIB0kk6D_w3DjE4*{5 zF;o(<rWW#0S%Annr8gIJgKqE_BZ_1eh{8id*5+0j0-8=iWGS`v3AHHeP02P*yxf&} z0@}LN=4r1R1fJxj$1a+(#<)1ai9>!N1Z@rM#o4n!pfQWP3tD5_zOaaga-%6D+a=8! zjO8=u+g1BQ8z*4O6;o#HC)8=sIHsCfZCh$OIP;0##I5mt^uEWAve^iMP~tqt#IeOb z4=soa5awtPhoSfg(4TNvi{?)+PM7q}F$?xyXd~I@j4b*iRti+;A#pJ~VpMwlKz3tu zXpRW88g*P)oFC7U*e-M|UQB9(BEaB%nhOSm{jtTRob<usP}>_^ee-CA+jp7znbU;o zT9hqGV&=#PxL?FB8pSR6JKOvW0iE@IPDDpjpyWkcxwC?hnG;#ds9R~KiR6r!Mn!9B zY;LI)s>0&f3OxWd;X#6LGS-rX`Mq_jpNc69P1Jrxek_=F<YS?Gqz^N2%okXNU^k;O zGKRT4nZN-OCS)88U{e<HODF)eZETwm^{C>u{Uz?uE=mlt*s+2(sbTCJ4cIH~hsukf zlhJvF=t?F<JSq-)yK=s7&DqHy(k)_mVb={fhD;&y0P&V)xO|?NjRqYuLOI3E7~LRs zF*ahb=}`}@ig2aeE>N_E)K8Q$@?s|@_z(sVH7Lv28OEtP=64JD3p`vQ`wG+7L0MiZ z!A6F`h(}`w7(N<RVH>Op;K!At?~n&;z$OL@we2pCY@y5mIb6r)Wp@3<&?mn0ma!%? zlb!M;H#Lh8@yRke9Cj2oQR;joH@Ep7*2--?UkBL)tTVn<q}5D?8`RmLCb!pj(lIzG z2Yhv`f#h{B%o-lUf@2*4X?(`VdO0^~+HpV4A_QEXn}(5!wuECZv$*atfnx*x{M!6t zae<d|aI88sY;o&{<Id=fA`GfCt&|*vOtZo2KMvhYU+K2<E3QeZrqp}GSZy+utJ@xf zSy-_MhVEWEcg9Ze{8DwQ>M`b%DLc6=aGr7(R_tyl;XO$y6$}2Q8LCKGw{ewf-Bwo_ zv`}XVa#7uu-fXdNa+*QgY71g+Y$i!lZU642v2i@1$k=lxetG97O$?sfgy=|3m<l{@ zdmS{sT%DcVjB|4bHMewcUK*QDEIEfr(loh$4n_DAhjjJ@I-P9^<zG^KqhMzS{aTn^ zN}4zuCQbO+gdv$UEn(r1G;zs-MDw;^+f<psWC#JB&P)PHym?m1L(37rnTursfz=D~ zEhkX1`6U(u2seS7pw%W#Tpy#G0jnSaC-QTL9&mp(lcV@FJ`Q`H_+sSO7mza##=yzm z7ZH~a3xzQMl=bQV|6>EP(vmgIMvswwYCQj`gxalM>%hn0=L2&2Pf`AO?x-iVUx$_6 zX~&(<zfbw&3A6aZ-`c`kl62!epI`3YlXz|{r7!0{1K;oa``_oI{Wq)pc*Z@H`wLIG z{$qeY2>(U?8&p6%>7S2(tRra``HvwGe^va)A|wA5GER>t{qE-f%Je@UAOD`K|MlxV zbv)yqY}7x>iRTNE{BODZx05087taI!YV~J5OVvp(1B^`$eAkL$;<-Z?j-vd?AMNKg zFXnH-fBd`qiN)v4;r`D2$Kt<o{<i@}ngsr22VVHM!~TUucJZ&=|1=-Z=ij)))5p^q zo<nhje#i6OcrWDdRDM09oq;0iAI}>~`NI!TJTLy%A(7RdQEmWfKAtZ>{OQG0>=(&1 z|Mmg+l=5e#Y}5eI^LN`Kr9U?oUz1z#&hjIF#4CvB9S<yKDAWJ8QvL&S=pN6tn~M2^ zZUMamKgeRLb#g!h|G+C9QcfT5@w^*(;aV`uf4lPE{{NVt_siJ+C_my&98~@t_?G|M zn18`<-ajPoM*fKFu<<g7EQqj_AN-4Y2OsdBO1}In6#wCh%RT=NX3G6V{&@1fOg?|a zkGNa;uZW5XN92p=!%O+Y|H6f@^^7y64&Ruo3x6Jq{KS<Nqx;-<djO1N)7#&dePa5J z{3rMK&no}K9E?9Be|h{Px&6hHZb9R>KH1~YE4|p83#G42OTVhC<^TMfJ>!?+g0hg8 z)3!9of9Y8+(XM@ZzE&&C8f=h%+Z#Opm%j3k^V3Zb>r|%SpHt_!pS*JQ{LI6@=?3}l z{H5pLr29{vx?catzgPL=dpz$?$MyL8T>$iqd;#Wr$ew`l`6uQ7^1nC~*TIr=@L%w4 n$YqMBQWsl>n>TyPvp3mm_D{L|BOByjPe=Fods!(%={5Pk+Kg@p diff --git a/src/editor.c b/src/editor.c index 89e1dc4d..a811353e 100644 --- a/src/editor.c +++ b/src/editor.c @@ -33,6 +33,7 @@ bool isWave = false; size_t indentation = 4; bool showLineNumbers = false; +bool showLineNumbersBackground = false; bool highlightCurrentLineNumber = true; bool relativeLineNumbers = true; @@ -65,7 +66,7 @@ bool helix = false; bool emacs = false; bool automatic_zoom = true; -float fringeWidth = 6.0f; +float fringeWidth = 8.0f; bool showFringe = true; size_t fillColumn = 80; @@ -103,6 +104,8 @@ bool diredfl_mode = true; + + bool ctrl_x_pressed = false; void reset_keychords() { diff --git a/src/editor.h b/src/editor.h index 6ee42a18..dc24f537 100644 --- a/src/editor.h +++ b/src/editor.h @@ -22,6 +22,7 @@ extern float zoom_factor; extern float min_zoom_factor; extern float max_zoom_factor; extern bool showLineNumbers; +extern bool showLineNumbersBackground; extern bool isWave; extern bool showWhitespaces; extern bool hl_line; diff --git a/src/file_browser.c b/src/file_browser.c index af6c82ef..bf695e44 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -175,7 +175,12 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl sr->time = (float)SDL_GetTicks() / 1000.0f; // Highlight the selected file - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_COLOR); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + } + if (fb->cursor < fb->files.count) { FileInfo highlighted_file = fb->files.items[fb->cursor]; char highlighted_line[1024]; @@ -195,7 +200,11 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl simple_renderer_flush(sr); // Render file attributes and names - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + if (isWave) { + simple_renderer_set_shader(sr, VERTEX_SHADER_WAVE, SHADER_FOR_TEXT); + } else { + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); + } for (size_t row = 0; row < fb->files.count; ++row) { FileInfo file = fb->files.items[row]; Vec2f begin = vec2f(0, -(float)row * FREE_GLYPH_FONT_SIZE); diff --git a/src/main.c b/src/main.c index c160c22c..62edc7b7 100644 --- a/src/main.c +++ b/src/main.c @@ -348,6 +348,8 @@ int main(int argc, char **argv) } simple_renderer_init(&sr); + + free_glyph_atlas_init(&atlas, face); editor.atlas = &atlas; @@ -670,7 +672,7 @@ int main(int argc, char **argv) editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); if (SDL_GetModState() & KMOD_CTRL){ editor_move_char_left(&editor); - } else { + } else if (SDL_GetModState() & KMOD_ALT) { editor_move_word_left(&editor); } editor.last_stroke = SDL_GetTicks(); @@ -863,8 +865,6 @@ int main(int argc, char **argv) } break; - - case SDLK_d: if (event.key.keysym.mod & KMOD_SHIFT) { emacs_kill_line(&editor); @@ -1337,15 +1337,22 @@ int main(int argc, char **argv) if (event.key.keysym.mod & KMOD_CTRL) { if (event.key.keysym.mod & KMOD_SHIFT) { relativeLineNumbers = !relativeLineNumbers; + } else if (event.key.keysym.mod & KMOD_ALT) { + showLineNumbersBackground = !showLineNumbersBackground; } else { showLineNumbers = !showLineNumbers; } + } else if (event.key.keysym.mod & KMOD_ALT) { - select_region_from_inside_braces(&editor); + select_region_from_inside_braces(&editor); } else { - editor_move_char_right(&editor); - // Toggle mixSelectionColor when Shift is pressed without Ctrl or Alt - mixSelectionColor = (event.key.keysym.mod & KMOD_SHIFT) && !(event.key.keysym.mod & KMOD_CTRL) && !(event.key.keysym.mod & KMOD_ALT); + editor_move_char_right(&editor); + // Toggle mixSelectionColor when Shift is pressed + // without Ctrl or Alt + mixSelectionColor = + (event.key.keysym.mod & KMOD_SHIFT) && + !(event.key.keysym.mod & KMOD_CTRL) && + !(event.key.keysym.mod & KMOD_ALT); } editor.last_stroke = SDL_GetTicks(); break; @@ -2597,6 +2604,8 @@ int main(int argc, char **argv) render_minibuffer_content(&atlas, &sr, &editor, ":"); } else if (editor.searching) { render_minibuffer_content(&atlas, &sr, &editor, "SEARCHING"); + } else { + /* render_minibuffer_content(&atlas, &sr, &editor, "MESSAGES: "); */ } } diff --git a/src/render.c b/src/render.c index 8af5dd06..f04ccd95 100644 --- a/src/render.c +++ b/src/render.c @@ -59,12 +59,12 @@ void render_fill_column(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *ed simple_renderer_flush(sr); } + void render_minibuffer_content(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor, const char *prefixText) { - // Check if either the minibuffer or search mode is active if (editor->minibuffer_active || editor->searching) { Vec4f cursorColor = CURRENT_THEME.cursor; Vec4f textColor = CURRENT_THEME.text; @@ -72,7 +72,6 @@ void render_minibuffer_content(Free_Glyph_Atlas *atlas, float prefixRightPadding = 0.0f; float minibufferCursorOffset = 5.0f; - // Apply the original logic for prefix padding if (M_x_active) { prefixRightPadding = 50.0f; } else if (evil_command_active) { @@ -81,7 +80,7 @@ void render_minibuffer_content(Free_Glyph_Atlas *atlas, prefixRightPadding = 50.0f; } - // Render the prefix (visible in all cases) + // Render the prefix free_glyph_atlas_render_line_sized(atlas, sr, prefixText, strlen(prefixText), &textPos, cursorColor); float prefixWidth = free_glyph_atlas_measure_line_width(atlas, prefixText, strlen(prefixText)); @@ -233,8 +232,20 @@ void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *edito } } +void adjust_line_number_width(Editor *editor, float *lineNumberWidth) { + size_t lineCount = editor->lines.count; + + if (lineCount < 10) { + *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; + } else if (lineCount < 100) { + *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; + } else if (lineCount < 1000) { + *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; + } else { + *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 4; + } +} -// TODO render_line_numbers_background void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { if (showLineNumbers) { simple_renderer_set_shader(sr, isWave ? VERTEX_SHADER_WAVE : VERTEX_SHADER_SIMPLE, SHADER_FOR_TEXT); @@ -264,7 +275,7 @@ void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *e } for (size_t i = 0; i < lineCount; ++i) { - char lineNumberStr[12]; + char lineNumberStr[12]; size_t displayLineNumber = relativeLineNumbers ? (i == currentLineNumber) ? currentLineNumber + 1 : abs((int)i - (int)currentLineNumber) : @@ -272,7 +283,8 @@ void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *e snprintf(lineNumberStr, sizeof(lineNumberStr), "%*zu", lineNumberFieldWidth, displayLineNumber); - Vec2f pos = {0, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; + int whitespace = measure_whitespace_width(atlas); + Vec2f pos = {whitespace, -((float)i + CURSOR_OFFSET) * FREE_GLYPH_FONT_SIZE}; Vec4f colorToUse = (highlightCurrentLineNumber && i == currentLineNumber) ? currentLineColor : defaultColor; @@ -283,18 +295,22 @@ void render_line_numbers(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *e } } -void adjust_line_number_width(Editor *editor, float *lineNumberWidth) { - size_t lineCount = editor->lines.count; - - if (lineCount < 10) { // Less than 10 lines - *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; - } else if (lineCount < 100) { // 10 to 99 lines - *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; - } else if (lineCount < 1000) { // 100 to 999 lines - *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 3; - } else { // 1000 lines or more - *lineNumberWidth = FREE_GLYPH_FONT_SIZE * 4; - } +void render_line_numbers_background(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor) { + if (!showLineNumbers ||!showLineNumbersBackground) return; + + Vec4f backgroundColor = CURRENT_THEME.line_numbers_background; + float viewportHeight = sr->resolution.y / sr->camera_scale; + + adjust_line_number_width(editor, &lineNumberWidth); + + float characterWidth = measure_whitespace_width(atlas); + float lineNumberAreaWidth = lineNumberWidth + characterWidth; + Vec2f pos = {-characterWidth, sr->camera_pos.y - (viewportHeight / 2)}; + Vec2f size = {lineNumberAreaWidth, viewportHeight}; + + simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, pos, size, backgroundColor); + simple_renderer_flush(sr); } void render_whitespaces(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *editor) { @@ -356,6 +372,7 @@ void render_indentation_lines(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Edit float COLUMN_THICKNESS = 5.0f; float CHARACTER_WIDTH = measure_whitespace_width(atlas); // This structure keeps track of open braces and their line start positions. + // TODO this should be done in the lexer struct LineSpan { size_t startLine; size_t endLine; @@ -519,7 +536,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } } - + render_line_numbers_background(sr, atlas, editor); render_line_numbers(sr, atlas, editor); // Render matching parenthesis @@ -1079,6 +1096,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } + // render clock time_t t = time(NULL); struct tm *tm = localtime(&t); @@ -1131,7 +1149,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer if (centeredText) { division = 3; } else { - division = 2.02; + division = 2.04; } offset = cursor_pos.x - w/3/sr->camera_scale; diff --git a/src/render.h b/src/render.h index acb1f0bf..92c31686 100644 --- a/src/render.h +++ b/src/render.h @@ -28,7 +28,7 @@ void render_markdown(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, Editor *edito void render_column(Simple_Renderer *sr, Free_Glyph_Atlas *atlas, Editor *editor); - +// TODO lerp tokens typedef struct { Vec4f originalColor; Vec4f targetColor; diff --git a/src/simple_renderer.c b/src/simple_renderer.c index 1b6e91bb..4ae3935c 100644 --- a/src/simple_renderer.c +++ b/src/simple_renderer.c @@ -12,11 +12,22 @@ char vert_shader_file_path[COUNT_VERTEX_SHADERS][MAX_SHADER_PATH_LENGTH]; char frag_shader_file_paths[COUNT_FRAGMENT_SHADERS][MAX_SHADER_PATH_LENGTH]; +/* void set_shader_path(char* buffer, const char* shaderName) { */ +/* const char* home = getenv("HOME"); */ +/* snprintf(buffer, MAX_SHADER_PATH_LENGTH, "%s/.config/ded/shaders/%s", home, shaderName); */ +/* } */ + void set_shader_path(char* buffer, const char* shaderName) { const char* home = getenv("HOME"); + if (home == NULL) { + fprintf(stderr, "ERROR: HOME environment variable not set.\n"); + return; // or handle error appropriately + } snprintf(buffer, MAX_SHADER_PATH_LENGTH, "%s/.config/ded/shaders/%s", home, shaderName); + fprintf(stderr, "Shader path set to: %s\n", buffer); // Debug statement } + void initialize_shader_paths() { set_shader_path(vert_shader_file_path[VERTEX_SHADER_SIMPLE], "simple.vert"); set_shader_path(vert_shader_file_path[VERTEX_SHADER_FIXED], "fixed.vert"); @@ -27,6 +38,7 @@ void initialize_shader_paths() { set_shader_path(frag_shader_file_paths[SHADER_FOR_IMAGE], "simple_image.frag"); set_shader_path(frag_shader_file_paths[SHADER_FOR_TEXT], "simple_text.frag"); set_shader_path(frag_shader_file_paths[SHADER_FOR_EPICNESS], "simple_epic.frag"); + set_shader_path(frag_shader_file_paths[SHADER_FOR_RAINBOW], "simple_rainbow.frag"); set_shader_path(frag_shader_file_paths[SHADER_FOR_GLOW], "simple_glow.frag"); set_shader_path(frag_shader_file_paths[SHADER_FOR_CURSOR], "cursor.frag"); } @@ -64,6 +76,7 @@ static bool compile_shader_source(const GLchar *source, GLenum shader_type, GLui return true; } + static bool compile_shader_file(const char *file_path, GLenum shader_type, GLuint *shader) { bool result = true; @@ -320,10 +333,6 @@ void simple_renderer_init(Simple_Renderer *sr) { } } - - - - void simple_renderer_reload_shaders(Simple_Renderer *sr) { bool ok = true; diff --git a/src/simple_renderer.h b/src/simple_renderer.h index 3d035aee..7b6f02e8 100644 --- a/src/simple_renderer.h +++ b/src/simple_renderer.h @@ -41,6 +41,7 @@ typedef enum { SHADER_FOR_TEXT, SHADER_FOR_GLOW, SHADER_FOR_EPICNESS, + SHADER_FOR_RAINBOW, SHADER_FOR_CURSOR, VERTEX_SHADER_SIMPLE, VERTEX_SHADER_FIXED, diff --git a/src/theme.c b/src/theme.c index cdbdd717..b5a1fde2 100644 --- a/src/theme.c +++ b/src/theme.c @@ -11,7 +11,7 @@ Theme currentTheme; Theme previousTheme; bool theme_lerp = true; -float theme_lerp_speed = 0.005f; +float theme_lerp_speed = 0.015f; float theme_lerp_treshold = 1.0f; // 0.5 mix themes Vec4f color_lerp(Vec4f start, Vec4f end, float t) { @@ -172,6 +172,7 @@ void update_theme_interpolation() { currentTheme.fb_write_priv = color_lerp(startTheme.fb_write_priv, endTheme.fb_write_priv, interpolationProgress); currentTheme.fb_exec_priv = color_lerp(startTheme.fb_exec_priv, endTheme.fb_exec_priv, interpolationProgress); currentTheme.fb_dir_priv = color_lerp(startTheme.fb_dir_priv, endTheme.fb_dir_priv, interpolationProgress); + currentTheme.line_numbers_background = color_lerp(startTheme.line_numbers_background, endTheme.line_numbers_background, interpolationProgress); @@ -195,8 +196,10 @@ void initialize_themes() { .insert_cursor = hex_to_vec4f(0x514B8EFF), .emacs_cursor = hex_to_vec4f(0x565663FF), .text = hex_to_vec4f(0xC0ACD1FF), - .background = hex_to_vec4f(0x090909FF), - .fringe = hex_to_vec4f(0x090909FF), + /* .background = hex_to_vec4f(0x090909FF), */ + .background = hex_to_vec4f(0x0B0B0BFF), + /* .fringe = hex_to_vec4f(0x090909FF), */ + .fringe = hex_to_vec4f(0x0B0B0BFF), .comment = hex_to_vec4f(0x867892FF), .hashtag = hex_to_vec4f(0x658B5FFF), .logic = hex_to_vec4f(0x658B5FFF), @@ -262,9 +265,10 @@ void initialize_themes() { .fb_write_priv = hex_to_vec4f(0x444E46FF), .fb_exec_priv = hex_to_vec4f(0x4C6750FF), .fb_dir_priv = hex_to_vec4f(0x658B5FFF), + .line_numbers_background = hex_to_vec4f(0x090909FF), }; - + // DOOM one themes[1] = (Theme){ .cursor = hex_to_vec4f(0x51AFEFFF), // #51AFEF @@ -318,6 +322,7 @@ void initialize_themes() { .ampersand = hex_to_vec4f(0x51AFEFFF), .pipe = hex_to_vec4f(0x98BE65FF), .minibuffer = hex_to_vec4f(0x21242BFF), + .line_numbers_background = hex_to_vec4f(0x21242BFF), .modeline = hex_to_vec4f(0x1D2026FF), .modeline_accent = hex_to_vec4f(0x51AFEFFF), .whitespace = hex_to_vec4f(0x3F444AFF), @@ -391,6 +396,7 @@ void initialize_themes() { .ampersand = hex_to_vec4f(0x8BE9FDFF), .pipe = hex_to_vec4f(0x50FA7BFF), .minibuffer = hex_to_vec4f(0x1E2029FF), // #1E2029 + .line_numbers_background = hex_to_vec4f(0x1E2029FF), // #1E2029 .modeline = hex_to_vec4f(0x22232DFF), .modeline_accent = hex_to_vec4f(0xBD93F9FF), .whitespace = hex_to_vec4f(0x565761FF), @@ -463,6 +469,7 @@ void initialize_themes() { .function_definition = hex_to_vec4f(0x82AAFFFF), .anchor = hex_to_vec4f(0xFF5370FF), .minibuffer = hex_to_vec4f(0x292D3EFF), + .line_numbers_background = hex_to_vec4f(0x292D3EFF), .modeline = hex_to_vec4f(0x232635FF), .modeline_accent = hex_to_vec4f(0xC792EAFF), .whitespace = hex_to_vec4f(0x4E5579FF), @@ -482,6 +489,7 @@ void initialize_themes() { }; + // DOOM city lights themes[4] = (Theme){ .cursor = hex_to_vec4f(0x5EC4FFFF), // #5EC4FF @@ -535,6 +543,7 @@ void initialize_themes() { .ampersand = hex_to_vec4f(0x5EC4FFFF), .pipe = hex_to_vec4f(0x8BD49CFF), .minibuffer = hex_to_vec4f(0x181E24FF), + .line_numbers_background = hex_to_vec4f(0x181E24FF), .modeline = hex_to_vec4f(0x181F25FF), .modeline_accent = hex_to_vec4f(0x5EC4FFFF), .whitespace = hex_to_vec4f(0x384551FF), @@ -607,6 +616,7 @@ void initialize_themes() { .ampersand = hex_to_vec4f(0x9C91E4FF), .pipe = hex_to_vec4f(0xB6E63EFF), .minibuffer = hex_to_vec4f(0x222323FF), + .line_numbers_background = hex_to_vec4f(0x222323FF), .modeline = hex_to_vec4f(0x2D2E2EFF), .modeline_accent = hex_to_vec4f(0xB6E63EFF), .whitespace = hex_to_vec4f(0x4E4E4EFF), @@ -679,6 +689,7 @@ void initialize_themes() { .function_definition = hex_to_vec4f(0xE07084FF), // #E07084 .anchor = hex_to_vec4f(0xE07084FF), .minibuffer = hex_to_vec4f(0x0C0D12FF), + .line_numbers_background = hex_to_vec4f(0x0C0D12FF), .modeline = hex_to_vec4f(0x08090CFF), .modeline_accent = hex_to_vec4f(0xD9A173FF), .whitespace = hex_to_vec4f(0x1B1B21FF), @@ -750,6 +761,7 @@ void initialize_themes() { .function_definition = hex_to_vec4f(0xFFFFFFFF), .anchor = hex_to_vec4f(0xFFFFFFFF), .minibuffer = hex_to_vec4f(0x3B224CFF), + .line_numbers_background = hex_to_vec4f(0x3B224CFF), .modeline = hex_to_vec4f(0x281733FF), .modeline_accent = hex_to_vec4f(0x281733FF), .whitespace = hex_to_vec4f(0x281733FF), @@ -813,6 +825,7 @@ void initialize_themes() { .ampersand = hex_to_vec4f(0xC79AF4FF), .pipe = hex_to_vec4f(0x35BF88FF), .minibuffer = hex_to_vec4f(0x14171EFF), + .line_numbers_background = hex_to_vec4f(0x14171EFF), .modeline = hex_to_vec4f(0x191D26FF), .modeline_accent = hex_to_vec4f(0x9587DDFF), .whitespace = hex_to_vec4f(0x454459FF), @@ -885,6 +898,7 @@ void initialize_themes() { .ampersand = hex_to_vec4f(0x82AAFFFF), .pipe = hex_to_vec4f(0xC3E88DFF), .minibuffer = hex_to_vec4f(0x212121FF), + .line_numbers_background = hex_to_vec4f(0x212121FF), .modeline = hex_to_vec4f(0x303030FF), .modeline_accent = hex_to_vec4f(0xC792EAFF), .whitespace = hex_to_vec4f(0x4A4A4AFF), @@ -904,8 +918,6 @@ void initialize_themes() { }; - - // Initialize currentTheme to the first theme if (current_mode == HELIX) { currentTheme = themes[7]; diff --git a/src/theme.h b/src/theme.h index 9b1c08a6..2b64dabe 100644 --- a/src/theme.h +++ b/src/theme.h @@ -19,6 +19,8 @@ typedef struct { Vec4f selection; Vec4f search; Vec4f line_numbers; + Vec4f current_line_number; + Vec4f line_numbers_background; Vec4f todo; Vec4f fixme; Vec4f note; @@ -37,7 +39,6 @@ typedef struct { Vec4f open_square; Vec4f close_square; Vec4f array_content; - Vec4f current_line_number; Vec4f marks; Vec4f fb_selection; Vec4f link; From 757d135f2f3abe1a7edb41957addd4aea092936d Mon Sep 17 00:00:00 2001 From: raulmontoro <raul@user.noreplay.git> Date: Sun, 16 Jun 2024 13:04:06 +0200 Subject: [PATCH 71/74] casting to int, different types comparison error fixed --- src/common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common.c b/src/common.c index 49ed7965..0991930c 100644 --- a/src/common.c +++ b/src/common.c @@ -247,7 +247,7 @@ Errno read_entire_file(const char *file_path, String_Builder *sb) { int c; while ((c = fgetc(f)) != EOF && c != '\0') { if (c == '\t') { - for (int i = 0; i < indentation; i++) { + for (int i = 0; i < (int)indentation; i++) { da_append(sb, ' '); } } else if (c == '\r') { From 34889f8a9d4f0665851a29b0894f251b561dd945 Mon Sep 17 00:00:00 2001 From: raulmontoro <raul@user.noreplay.git> Date: Wed, 19 Jun 2024 17:32:19 +0200 Subject: [PATCH 72/74] type size_t instead of casting (int) --- src/common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common.c b/src/common.c index 0991930c..975b1d5a 100644 --- a/src/common.c +++ b/src/common.c @@ -247,7 +247,7 @@ Errno read_entire_file(const char *file_path, String_Builder *sb) { int c; while ((c = fgetc(f)) != EOF && c != '\0') { if (c == '\t') { - for (int i = 0; i < (int)indentation; i++) { + for (size_t i = 0; i < indentation; i++) { da_append(sb, ' '); } } else if (c == '\r') { From f0bcbde5312d7592a259cb3f067302ae92229329 Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Thu, 27 Jun 2024 00:27:36 +0200 Subject: [PATCH 73/74] jade types --- ded | Bin 0 -> 549896 bytes src/lexer.c | 6 +++--- src/render.c | 8 ++++++-- 3 files changed, 9 insertions(+), 5 deletions(-) create mode 100755 ded diff --git a/ded b/ded new file mode 100755 index 0000000000000000000000000000000000000000..741b19e61b42aa337b8a7bd3bec9d5c260c9475f GIT binary patch literal 549896 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 literal 0 HcmV?d00001 diff --git a/src/lexer.c b/src/lexer.c index c9319183..4a5ba84a 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -40,6 +40,7 @@ const char *cKeywords[] = { "reinterpret_cast", "requires", "static_assert", "static_cast", "synchronized", "template", "this", "thread_local", "throw", "try", "typeid", "typename", "using", "virtual", "wchar_t", "xor", "xor_eq", + "let", "fn", "type", "defer", "println", "use", "impl", "loop", "match" }; @@ -49,11 +50,10 @@ const char *cKeywords[] = { const char *cTypeKeywords[] = { "char", "double", "float", "int", "long", "short", "signed", "unsigned", "void", - "_Bool", "_Complex", "_Imaginary", "bool", "Vec4f" + "_Bool", "_Complex", "_Imaginary", "bool", "Vec4f", + "i128", "i32", "i16", "i8", "u128", "u32", "u16", "u8", "str", "f32", "f16", "f8", }; - - #define cTypeKeywords_count (sizeof(cTypeKeywords) / sizeof(cTypeKeywords[0])) diff --git a/src/render.c b/src/render.c index f04ccd95..18e69c2c 100644 --- a/src/render.c +++ b/src/render.c @@ -308,7 +308,10 @@ void render_line_numbers_background(Simple_Renderer *sr, Free_Glyph_Atlas *atlas Vec2f pos = {-characterWidth, sr->camera_pos.y - (viewportHeight / 2)}; Vec2f size = {lineNumberAreaWidth, viewportHeight}; - simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + /* simple_renderer_set_shader(sr, VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); */ + simple_renderer_set_shader( + sr, isWave ? VERTEX_SHADER_WAVE : VERTEX_SHADER_SIMPLE, SHADER_FOR_COLOR); + simple_renderer_solid_rect(sr, pos, size, backgroundColor); simple_renderer_flush(sr); } @@ -494,7 +497,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer // TODO shader switch - render_indentation_lines(sr, atlas, editor); render_selection(editor, sr, atlas); render_whitespaces(atlas, sr, editor); @@ -539,6 +541,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer render_line_numbers_background(sr, atlas, editor); render_line_numbers(sr, atlas, editor); + render_indentation_lines(sr, atlas, editor); + // Render matching parenthesis { if (current_mode == NORMAL || current_mode == EMACS) { From feed647dc48e47d5eb99820c3f368668500cb14f Mon Sep 17 00:00:00 2001 From: laluxx <lorenzoaddamo10@gmail.com> Date: Fri, 28 Jun 2024 03:17:10 +0200 Subject: [PATCH 74/74] update --- ded | Bin 549896 -> 0 bytes src/editor.c | 42 +++++++++-------- src/editor.h | 8 +++- src/emacs.c | 3 +- src/file_browser.c | 4 +- src/free_glyph.c | 111 ++++++++++++++++++++++++++++++++++++--------- src/free_glyph.h | 15 ++++-- src/lexer.h | 2 +- src/lsp.c | 3 +- src/main.c | 4 +- src/render.c | 26 ++++------- src/theme.c | 93 +++++++++++++++++++++++++++++++++---- 12 files changed, 231 insertions(+), 80 deletions(-) delete mode 100755 ded diff --git a/ded b/ded deleted file mode 100755 index 741b19e61b42aa337b8a7bd3bec9d5c260c9475f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 549896 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 diff --git a/src/editor.c b/src/editor.c index a811353e..6ee1839b 100644 --- a/src/editor.c +++ b/src/editor.c @@ -7,7 +7,7 @@ #include <limits.h> #include "./editor.h" #include "./common.h" -#include "./free_glyph.h" +/* #include "./free_glyph.h" */ #include "./file_browser.h" #include "emacs.h" #include "lexer.h" @@ -24,10 +24,12 @@ // TODO show lock logo in the modeline when the file is in read only mode +Editor editor = {0}; + bool quit = false; float zoom_factor = 3.0f; float min_zoom_factor = 1.0; -float max_zoom_factor = 50.0; +float max_zoom_factor = 100.0; bool isWave = false; size_t indentation = 4; @@ -35,7 +37,7 @@ size_t indentation = 4; bool showLineNumbers = false; bool showLineNumbersBackground = false; bool highlightCurrentLineNumber = true; -bool relativeLineNumbers = true; +bool relativeLineNumbers = false; bool showWhitespaces = false; bool copiedLine = false; @@ -104,8 +106,6 @@ bool diredfl_mode = true; - - bool ctrl_x_pressed = false; void reset_keychords() { @@ -411,6 +411,23 @@ size_t editor_cursor_row(const Editor *e) return e->lines.count - 1; } + +void get_cursor_position(const Editor *e) { + /* assert(e != NULL && line != NULL && character != NULL); */ + + // Get the line number + size_t line = editor_cursor_row(e); + + // Find the start of the current line + size_t line_start = 0; + if (line > 0 && line < e->lines.count) { + line_start = e->lines.items[line].begin; + } + + // Calculate the column number (character position) + int character = e->cursor - line_start; +} + void editor_move_line_up(Editor *e) { editor_stop_search(e); @@ -1525,21 +1542,6 @@ Errno editor_goto_line(Editor *editor, const char *params[]) { return 0; } -void get_cursor_position(const Editor *e, size_t *line, int *character) { - assert(e != NULL && line != NULL && character != NULL); - - // Get the line number - *line = editor_cursor_row(e); - - // Find the start of the current line - size_t line_start = 0; - if (*line > 0 && *line < e->lines.count) { - line_start = e->lines.items[*line].begin; - } - - // Calculate the column number (character position) - *character = e->cursor - line_start; -} diff --git a/src/editor.h b/src/editor.h index dc24f537..cad8b387 100644 --- a/src/editor.h +++ b/src/editor.h @@ -4,7 +4,7 @@ #include <stddef.h> #include <stdlib.h> #include "common.h" -#include "free_glyph.h" +/* #include "free_glyph.h" */ #include "simple_renderer.h" #include "lexer.h" #include <stdbool.h> @@ -159,6 +159,8 @@ typedef struct { } Editor; +extern Editor editor; + Errno editor_save_as(Editor *editor, const char *file_path); Errno editor_save(const Editor *editor); /* Errno editor_load_from_file(Editor *editor, const char *file_path); */ @@ -233,7 +235,9 @@ void editor_save_and_quit(Editor *e); void find_matches_in_editor_data(Editor *e, const char *word, char **matches, size_t *matches_count); void evil_complete_next(Editor *e); Errno editor_goto_line(Editor *editor, const char *params[]); -void get_cursor_position(const Editor *e, size_t *line, int *character); + +/* void get_cursor_position(const Editor *e, size_t *line, int *character); */ +void get_cursor_position(const Editor *e); void set_current_mode(); diff --git a/src/emacs.c b/src/emacs.c index 5d63ef64..632b2f53 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -42,10 +42,11 @@ void emacs_delete_char(Editor *e) { } -// TODO this is so bad +// TODO it should not move the cursor at the start of the line void emacs_open_line(Editor *e) { editor_insert_char(e, '\n'); editor_move_line_up(e); + indent(e); e->last_stroke = SDL_GetTicks(); } diff --git a/src/file_browser.c b/src/file_browser.c index bf695e44..aac268b8 100644 --- a/src/file_browser.c +++ b/src/file_browser.c @@ -1,5 +1,6 @@ #include <string.h> #include "file_browser.h" +#include "la.h" #include "simple_renderer.h" #include "sv.h" #include "editor.h" // only for zoom_factor maybe im bad at programming @@ -267,7 +268,7 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl // Flush text rendering simple_renderer_flush(sr); - // Adjust the camera to follow the cursor or ensure the selected file is visible + /* Adjust the camera to follow the cursor or ensure the selected file is visible */ if (followCursor) { if (max_line_len > 1000.0f) { max_line_len = 1000.0f; @@ -292,6 +293,7 @@ void fb_render(const File_Browser *fb, SDL_Window *window, Free_Glyph_Atlas *atl sr->camera_pos = vec2f_add(sr->camera_pos, vec2f_mul(sr->camera_vel, vec2fs(DELTA_TIME))); sr->camera_scale += sr->camera_scale_vel * DELTA_TIME; } + } diff --git a/src/free_glyph.c b/src/free_glyph.c index 9b491655..82714a4c 100644 --- a/src/free_glyph.c +++ b/src/free_glyph.c @@ -1,4 +1,6 @@ #include <assert.h> +#include "editor.h" +#include "theme.h" #include <stdbool.h> #include "./free_glyph.h" @@ -109,34 +111,99 @@ void free_glyph_atlas_measure_line_sized(Free_Glyph_Atlas *atlas, const char *te } } -void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, const char *text, size_t text_size, Vec2f *pos, Vec4f color) -{ - for (size_t i = 0; i < text_size; ++i) { - size_t glyph_index = text[i]; - // TODO: support for glyphs outside of ASCII range - if (glyph_index >= GLYPH_METRICS_CAPACITY) { - glyph_index = '?'; - } - Glyph_Metric metric = atlas->metrics[glyph_index]; - float x2 = pos->x + metric.bl; - float y2 = -pos->y - metric.bt; - float w = metric.bw; - float h = metric.bh; - pos->x += metric.ax; - pos->y += metric.ay; +// ALMOST TODO multiple lines +void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, + Simple_Renderer *sr, const char *text, + size_t text_size, Vec2f *pos, + Vec4f color) { + // Determine the line and character position of the cursor using the global + // editor + size_t cursor_line = 0; + size_t cursor_character = 0; + + // Find the line that contains the cursor + for (size_t row = 0; row < editor.lines.count; ++row) { + Line line = editor.lines.items[row]; + if (line.begin <= editor.cursor && editor.cursor <= line.end) { + cursor_line = row; + cursor_character = editor.cursor - line.begin; + break; + } + } + + size_t current_pos = 0; + + for (size_t i = 0; i < text_size; ++i) { + size_t glyph_index = text[i]; + if (glyph_index >= GLYPH_METRICS_CAPACITY) { + glyph_index = '?'; // Fallback for unsupported glyphs + } + Glyph_Metric metric = atlas->metrics[glyph_index]; + float x2 = pos->x + metric.bl; + float y2 = -pos->y - metric.bt; + float w = metric.bw; + float h = metric.bh; + + // Use the background color if this character is at the cursor position and + // on the correct line + Vec4f use_color = color; + if (cursor_line * FREE_GLYPH_FONT_SIZE <= pos->y && + pos->y < (cursor_line + 1) * FREE_GLYPH_FONT_SIZE && + current_pos == cursor_character) { + use_color = CURRENT_THEME.background; + } - simple_renderer_image_rect( - sr, - vec2f(x2, -y2), - vec2f(w, -h), - vec2f(metric.tx, 0.0f), - vec2f(metric.bw / (float) atlas->atlas_width, metric.bh / (float) atlas->atlas_height), - color); + simple_renderer_image_rect(sr, vec2f(x2, -y2), vec2f(w, -h), + vec2f(metric.tx, 0.0f), + vec2f(metric.bw / (float)atlas->atlas_width, + metric.bh / (float)atlas->atlas_height), + use_color); + + // Advance the cursor after rendering the glyph + pos->x += metric.ax; + pos->y += metric.ay; + + // Handle newlines + if (text[i] == '\n') { + pos->y -= FREE_GLYPH_FONT_SIZE; + pos->x = 0; } + + current_pos++; + } } +/* ORIGINAL */ +/* void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, const char *text, size_t text_size, Vec2f *pos, Vec4f color) */ +/* { */ +/* for (size_t i = 0; i < text_size; ++i) { */ +/* size_t glyph_index = text[i]; */ +/* // TODO: support for glyphs outside of ASCII range */ +/* if (glyph_index >= GLYPH_METRICS_CAPACITY) { */ +/* glyph_index = '?'; */ +/* } */ +/* Glyph_Metric metric = atlas->metrics[glyph_index]; */ +/* float x2 = pos->x + metric.bl; */ +/* float y2 = -pos->y - metric.bt; */ +/* float w = metric.bw; */ +/* float h = metric.bh; */ + +/* pos->x += metric.ax; */ +/* pos->y += metric.ay; */ + +/* simple_renderer_image_rect( */ +/* sr, */ +/* vec2f(x2, -y2), */ +/* vec2f(w, -h), */ +/* vec2f(metric.tx, 0.0f), */ +/* vec2f(metric.bw / (float) atlas->atlas_width, metric.bh / (float) atlas->atlas_height), */ +/* color); */ +/* } */ +/* } */ + + // ADDED float free_glyph_atlas_measure_line_width(Free_Glyph_Atlas *atlas, const char *text, size_t text_size) { diff --git a/src/free_glyph.h b/src/free_glyph.h index cd3aa175..7562dc99 100644 --- a/src/free_glyph.h +++ b/src/free_glyph.h @@ -1,6 +1,7 @@ #ifndef FREE_GLYPH_H_ #define FREE_GLYPH_H_ + #include <stdlib.h> #include "./la.h" @@ -45,10 +46,18 @@ typedef struct { void free_glyph_atlas_init(Free_Glyph_Atlas *atlas, FT_Face face); float free_glyph_atlas_cursor_pos(const Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f pos, size_t col); void free_glyph_atlas_measure_line_sized(Free_Glyph_Atlas *atlas, const char *text, size_t text_size, Vec2f *pos); -void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, const char *text, size_t text_size, Vec2f *pos, Vec4f color); -// ADDED +/* void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, Simple_Renderer *sr, const char *text, size_t text_size, Vec2f *pos, Vec4f color); */ +void free_glyph_atlas_render_line_sized(Free_Glyph_Atlas *atlas, + Simple_Renderer *sr, const char *text, + size_t text_size, Vec2f *pos, + Vec4f color); + -float free_glyph_atlas_measure_line_width(Free_Glyph_Atlas *atlas, const char *text, size_t text_size); + +// ADDED +float free_glyph_atlas_measure_line_width(Free_Glyph_Atlas *atlas, + const char *text, + size_t text_size); #endif // FREE_GLYPH_H_ diff --git a/src/lexer.h b/src/lexer.h index 3a379bc8..bf16f9fa 100644 --- a/src/lexer.h +++ b/src/lexer.h @@ -45,7 +45,7 @@ typedef enum { TOKEN_TYPE, TOKEN_FUNCTION_DEFINITION, TOKEN_NULL, - } Token_Kind; +} Token_Kind; const char *token_kind_name(Token_Kind kind); diff --git a/src/lsp.c b/src/lsp.c index c4d8a416..7ac328d6 100644 --- a/src/lsp.c +++ b/src/lsp.c @@ -222,7 +222,8 @@ void goto_definition(Editor *e, File_Browser *fb) { get_current_file_uri(e, fb, file_uri, sizeof(file_uri)); int character; size_t line; - get_cursor_position(e, &line, &character); + /* get_cursor_position(e, &line, &character); */ + get_cursor_position(e); char params[512]; int params_length = snprintf(params, sizeof(params), diff --git a/src/main.c b/src/main.c index 62edc7b7..63b16d09 100644 --- a/src/main.c +++ b/src/main.c @@ -84,7 +84,7 @@ void MessageCallback(GLenum source, static Free_Glyph_Atlas atlas = {0}; static Simple_Renderer sr = {0}; -static Editor editor = {0}; +/* static Editor editor = {0}; */ static File_Browser fb = {0}; @@ -2603,7 +2603,7 @@ int main(int argc, char **argv) } else if (evil_command_active) { render_minibuffer_content(&atlas, &sr, &editor, ":"); } else if (editor.searching) { - render_minibuffer_content(&atlas, &sr, &editor, "SEARCHING"); + render_minibuffer_content(&atlas, &sr, &editor, "/"); } else { /* render_minibuffer_content(&atlas, &sr, &editor, "MESSAGES: "); */ } diff --git a/src/render.c b/src/render.c index 18e69c2c..ebf17cf4 100644 --- a/src/render.c +++ b/src/render.c @@ -823,9 +823,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_flush(sr); } - - // Render text + // TODO IMPORTANT alot of this stuff should not run every frame { if (isWave) { @@ -835,6 +834,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } for (size_t i = 0; i < editor->tokens.count; ++i) { + Token token = editor->tokens.items[i]; Vec2f pos = token.position; //Vec4f color = vec4fs(1); @@ -985,43 +985,33 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } break; - case TOKEN_EQUALS: color = CURRENT_THEME.equals; break; - case TOKEN_EXCLAMATION: color = CURRENT_THEME.exclamation; break; - case TOKEN_NOT_EQUALS: color = CURRENT_THEME.not_equals; break; - case TOKEN_EQUALS_EQUALS: color = CURRENT_THEME.equals_equals; break; - - case TOKEN_LESS_THAN: color = CURRENT_THEME.less_than; break; - case TOKEN_GREATER_THAN: color = CURRENT_THEME.greater_than; break; case TOKEN_ARROW: color = CURRENT_THEME.arrow; break; - case TOKEN_MINUS: color = CURRENT_THEME.minus; break; - case TOKEN_PLUS: color = CURRENT_THEME.plus; break; - case TOKEN_TRUE: color = CURRENT_THEME.truee; break; @@ -1049,7 +1039,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer case TOKEN_CLOSE_CURLY: color = CURRENT_THEME.close_curly; break; - case TOKEN_COLOR: { unsigned long long hex_value; if(sscanf(token.text, "0x%llx", &hex_value) == 1) { @@ -1060,7 +1049,7 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer default: {} } - + free_glyph_atlas_render_line_sized(atlas, sr, token.text, token.text_len, &pos, color); // TODO: the max_line_len should be calculated based on what's visible on the screen right now if (max_line_len < pos.x) max_line_len = pos.x; @@ -1088,7 +1077,6 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer simple_renderer_solid_rect(sr, (Vec2f){0.0f, minibufferHeight}, (Vec2f){w, modelineHeight}, CURRENT_THEME.modeline); // render accent simple_renderer_solid_rect(sr, (Vec2f){0.0f, minibufferHeight}, (Vec2f){modelineAccentWidth, modelineHeight}, CURRENT_THEME.modeline_accent); - simple_renderer_flush(sr); } } @@ -1101,6 +1089,8 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer } + + // render clock time_t t = time(NULL); struct tm *tm = localtime(&t); @@ -1152,8 +1142,10 @@ void editor_render(SDL_Window *window, Free_Glyph_Atlas *atlas, Simple_Renderer float division; if (centeredText) { division = 3; - } else { - division = 2.04; + } else /* if (!showLineNumbers) */ { + division = 2.016; + /* } else { */ + /* division = 2.0; */ } offset = cursor_pos.x - w/3/sr->camera_scale; diff --git a/src/theme.c b/src/theme.c index b5a1fde2..b389009a 100644 --- a/src/theme.c +++ b/src/theme.c @@ -3,10 +3,10 @@ #include "editor.h" #include <stdbool.h> -int currentThemeIndex = 0; -int previousThemeIndex = 0; +int currentThemeIndex = 9; +int previousThemeIndex = 9; float interpolationProgress; -Theme themes[10]; +Theme themes[11]; Theme currentTheme; Theme previousTheme; @@ -843,10 +843,82 @@ void initialize_themes() { .fb_exec_priv = hex_to_vec4f(0xE55C7AFF), .fb_dir_priv = hex_to_vec4f(0x9587DDFF), - }; + }; - // doom-material-dark + // kaolin dark themes[9] = (Theme){ + .cursor = hex_to_vec4f(0xEFEFF1FF), + .notext_cursor = hex_to_vec4f(0xEFEFF1FF), + .EOF_cursor = hex_to_vec4f(0xEFEFF1FF), + .insert_cursor = hex_to_vec4f(0x9D81BAFF), + .emacs_cursor = hex_to_vec4f(0xEFEFF1FF), + .text = hex_to_vec4f(0xE4E4E8FF), + .background = hex_to_vec4f(0x18181BFF), + .fringe = hex_to_vec4f(0x18181BFF), + .comment = hex_to_vec4f(0x545C5EFF), + .hashtag = hex_to_vec4f(0x9D81BAFF), + .logic = hex_to_vec4f(0x4D9391FF), + .string = hex_to_vec4f(0x6FB593FF), + .selection = hex_to_vec4f(0x2E403BFF), + .search = hex_to_vec4f(0x303035FF), + .todo = hex_to_vec4f(0xDBAC66FF), + .line_numbers = hex_to_vec4f(0x303035FF), + .current_line_number = hex_to_vec4f(0x545C5EFF), + .fixme = hex_to_vec4f(0xCD5C60FF), + .note = hex_to_vec4f(0x6FB593FF), + .bug = hex_to_vec4f(0x6FB593FF), + .not_equals = hex_to_vec4f(0x6FB593FF), + .exclamation = hex_to_vec4f(0x6FB593FF), + .equals = hex_to_vec4f(0xE4E4E8FF), + .equals_equals = hex_to_vec4f(0xE4E4E8FF), + .greater_than = hex_to_vec4f(0xE4E4E8FF), + .less_than = hex_to_vec4f(0xE4E4E8FF), + .marks = hex_to_vec4f(0x2E403BFF), + .fb_selection = hex_to_vec4f(0xE4E4E8FF), + .plus = hex_to_vec4f(0xE4E4E8FF), + .minus = hex_to_vec4f(0xE4E4E8FF), + .truee = hex_to_vec4f(0x6FB593FF), + .falsee = hex_to_vec4f(0x6FB593FF), + .arrow = hex_to_vec4f(0xE4E4E8FF), + .open_curly = hex_to_vec4f(0xE4E4E8FF), + .close_curly = hex_to_vec4f(0xE4E4E8FF), + .open_square = hex_to_vec4f(0xE4E4E8FF), + .close_square = hex_to_vec4f(0xE4E4E8FF), + .array_content = hex_to_vec4f(0xE4E4E8FF), + .link = hex_to_vec4f(0x968CC7FF), + .matching_parenthesis = hex_to_vec4f(0x303035FF), + .type = hex_to_vec4f(0xCD9575FF), + .function_definition = hex_to_vec4f(0x80BCB6FF), + .anchor = hex_to_vec4f(0x968CC7FF), + .hl_line = hex_to_vec4f(0x222225FF), + .multiplication = hex_to_vec4f(0xE4E4E8FF), + .pointer = hex_to_vec4f(0xE4E4E8FF), + .logic_and = hex_to_vec4f(0xE4E4E8FF), + .logic_or = hex_to_vec4f(0xE4E4E8FF), + .ampersand = hex_to_vec4f(0xE4E4E8FF), + .pipe = hex_to_vec4f(0xE4E4E8FF), + .minibuffer = hex_to_vec4f(0x18181BFF), + .line_numbers_background = hex_to_vec4f(0x222225FF), + .modeline = hex_to_vec4f(0x222225FF), + .modeline_accent = hex_to_vec4f(0x968CC7FF), + .whitespace = hex_to_vec4f(0x222225FF), + .selected_whitespaces = hex_to_vec4f(0xE4E4E8FF), + .indentation_line = hex_to_vec4f(0x222225FF), + .null = hex_to_vec4f(0xAB98B5FF), + .code_block = hex_to_vec4f(0x222225FF), + .fill_column = hex_to_vec4f(0x222225FF), + .fb_dir_name = hex_to_vec4f(0x4D9391FF), + .fb_size = hex_to_vec4f(0xCD5C60FF), + .fb_date_time = hex_to_vec4f(0x9D81BAFF), + .fb_no_priv = hex_to_vec4f(0x545C5EFF), + .fb_read_priv = hex_to_vec4f(0x35BF88FF), + .fb_write_priv = hex_to_vec4f(0xBC90D4FF), + .fb_exec_priv = hex_to_vec4f(0xCD5C60FF), + .fb_dir_priv = hex_to_vec4f(0x4D9391FF), + }; + + // doom-material-dark + themes[10] = (Theme){ .cursor = hex_to_vec4f(0xFFCB6BFF), .notext_cursor = hex_to_vec4f(0xFFCB6BFF), .EOF_cursor = hex_to_vec4f(0xFFCB6BFF), @@ -921,10 +993,11 @@ void initialize_themes() { // Initialize currentTheme to the first theme if (current_mode == HELIX) { currentTheme = themes[7]; - } else { - currentTheme = themes[0]; } - previousThemeIndex = 0; - currentThemeIndex = 0; - interpolationProgress = 1.0f; // No interpolation needed at start + /* } else { */ + /* currentTheme = themes[0]; */ + /* } */ + /* previousThemeIndex = 0; */ + /* currentThemeIndex = 0; */ + /* interpolationProgress = 1.0f; // No interpolation needed at start */ }

    8==1pz@$fCf+@cr@O@c0 z6hK2{zYq_+8`9Yj1*1iJe;qanY@Pcu=`j_RtN`a5?Dm48WZZtJ0GJ)653RE9?5%^3YE(i{ztW)%t^KU_3FaY5 zRxGPc!ye}iyN`x)tg@q`G!`R~yg|t=OwGK=f_pZzWi$ibtfo2sd5kynnn2r$UjbTN zHw)|pKpHk-$uwwMVl&MRM1{>&5M<8Fduq6z2;8d2QQm-I(LN;~mMdkKSyQYx7S8u2D(U`m@HmgGGLzH!3(>95d*d$6}+@ zY<^X5)VAelfk8QoM>9XUDLc4&(0Yxm=M8LTM%==lMp9CZ_Os3p`jX?=qFi6`)sq{P z{W%cZ#tkEJjjs&8hG31F2X4mn7Gr*|M$3lM9m!|AwnqZUSQHIVsT_K2;@{OcvwEYz z9@*xkF-mNl+b^;nKJLGqj7kDVjeiztHb!RY=nJ0{&p4#V4IgEmDst?^XDm~1e3Tsm zZRzJ{w-NYmB2=&cnr3tjI3=uUW>8#1-)PSJ9bOy)Be$&6H(@?})&N&{diVGT7g&>- zX-HhVpcmWWVi45|$`1_8b3u}dZFWE#3vsn(b}jeQH~NKz^B6!3h!bGAdo<8u@}to{ zo;8oe_i;L&Pd*-e{5{|meviIbJbU%upFFzxqdUL&%wqI&_31x9T)gwa^HLiV+Sgk) zb#4uK4F6ud@WOLF56|>{{g0DtH?H0O*vZu=_+S41_Pf7ZId(%n{ww*#ojW)6D|fEl zf9B-c;@W-9!AtV~iD7v4_ + +/* An integral type that can be modified atomically, without the + possibility of a signal arriving in the middle of the operation. */ +typedef __sig_atomic_t sig_atomic_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sig_atomic_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..982c9572d5399481d31ff5d667e45e1d2741b039 GIT binary patch literal 12497 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h new file mode 100644 index 00000000..e8b28de7 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h @@ -0,0 +1,48 @@ +#ifndef __sigevent_t_defined +#define __sigevent_t_defined 1 + +#include +#include +#include + +#define __SIGEV_MAX_SIZE 64 +#if __WORDSIZE == 64 +# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 4) +#else +# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 3) +#endif + +/* Forward declaration. */ +#ifndef __have_pthread_attr_t +typedef union pthread_attr_t pthread_attr_t; +# define __have_pthread_attr_t 1 +#endif + +/* Structure to transport application-defined values with signals. */ +typedef struct sigevent + { + __sigval_t sigev_value; + int sigev_signo; + int sigev_notify; + + union + { + int _pad[__SIGEV_PAD_SIZE]; + + /* When SIGEV_SIGNAL and SIGEV_THREAD_ID set, LWP ID of the + thread to receive the signal. */ + __pid_t _tid; + + struct + { + void (*_function) (__sigval_t); /* Function to start. */ + pthread_attr_t *_attribute; /* Thread attributes. */ + } _sigev_thread; + } _sigev_un; + } sigevent_t; + +/* POSIX names to access some of the members. */ +#define sigev_notify_function _sigev_un._sigev_thread._function +#define sigev_notify_attributes _sigev_un._sigev_thread._attribute + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigevent_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7e129864d20df5dce5ad68b787af65e4bfc5477f GIT binary patch literal 14365 zcmb7LTZ|mV742CY7_S_&vTX0Ju~FN`>)nmVV=tS)o z-Sb#uB#5HKimWJ!ER=jCBuL}~1%!ey5+5i?Q3xhc5!S^`_`@6dF{%7FYdpf6|{0a@JQJ$A0qK`5`^W1#7WsEb~%o$vS&K} z9!pzgxu#zmiL}%TqGiXgm24*>RuV)jpC8CUyS%$lZp2a9@h!Julk$CsjxCfcq~`dB z71(4?UAr=)pShsWSjkGro>2VClZunXW%@KO8-`bj6Eh)3LKl&wu2U&9S<3sCBv;dG zJAM*@q(FMXdFX9rRfY*Zj9SC7QA9_Nm1}N;KAL#6%5h@JL= z;X0nOn8MCX0?)CGmSYnzdBaagB#HAJv+B6Ss6;_4<}d7hzB0gUR@iX-YCu<&zLcXw zKyJF=fW!SEZbVhn>Y6kUZk@PJn?iW;XJ1iq#*|S_%1omHMOUl(P7W%jaPIrDQ)`-T zpW`b^=X8nVk*J3(4?k%-%+PCJzej~Hqaz6#7IRdoWQAolEV)6gGF(oRd2+Mj07Tb?mUhT40m#S)%K85kb+jm=y%e4l$g-s5X2naRNW?QD1K! zV;O-me7JH)PL8TVg!HX|+P>v^!%PoGkCWy26e?xIcOY2NM?K=<8B^#182Bdh0hvt2 zBeq6t)yYs6Ef8ZAfx{rQ{3J(aX*Wn_HqQXe?{aclh>Q0+)Iz{N3H zeUR>rTFNj$(cqYdXSNN~1)Xtm@dPPq6*V5|SB#?F8iCTBK!)Tcgqa{u*0@RKxp>Dx zRZuAppoH})jg&|5qp`(+DH=hgt+r!GUYSgZ(x!18F2D;UilH_5lyADDR5xnLr9}m~ zkW0#LxlULK%m^>$%$cELBz_5M5;$S9qAZ6B7e-a9jwLLVI#q?AN$7bNtww|xHFqUs zNp@bZtCr<4NRxnREe{8rLU1e9;T;2bCoP~Q3-Vo}X52jSAcIp|gM&~wG5~U3ajKr# zbdh(237L@HP{b3F2r4(QOz08RRtMz{9HqlcoC;59u3$6rM$Bu(AFl z16caxGFed?-aJo8z!PF8Njs%W9gBMcDq5IZIV5|}iScA0DR`eoEtyFeHNR1Y=C%@- z21K42du0+uKGVVMrL$^_%srPRk9i~XoFa>``e2_N?k&==QunBynxW--4fmvd5^+ED zjh5*o;WE}JqU14Z2$U3LL_jF+#yV>QDuNQ}g2arWDegYX^Cg$GdG*}~Gn7L-mBgv7709wFl-J)!H9Sj{2=H+5`-dv@6j9V*-D@2^$+Csw$+ zvJGsPyL2+5QDwJdvq`LB`W88bHf&3aqvRAYVv{HM{m9}d6pQqi#5~K@&A9IIZQ7E3 zcTNfbUvQukIYkg0Li5sskcYCR5k)I12pTbBT^`%K2aj5ik=4>9$RvBZtAqX{A#BHp zI}xC8D9eC<*O(zO`56U?1af}K!h$U#h&`@FoY4gQ`4y6J}5Gv>+ zwm_KFBLK|2sANWbpCl7fMhg`eYMeJ{{z3b*2Grt&v~w^+(dJB1R6^nOA+BY3-(*`H z<^3E_sE*=ZumzMX^PJm_SuHrfDX+FgN&l`WZ^`aP!Ck<5Ct08}c7gc?43-o<2$M1E z^5g*fc)HW1t$d~hQ^;fDLi0O#IXdux&c#(ZqMC;!XGTn;GRY~dXpO46W=&m6ArYAk za1R+8(8cITt)Z@l0yFKQB}~zpVL+m4MT404c>jw^>IU1-K0doJ|&MN^#I>y zL*v|N59_m1tvfX%9lWWIhyra@{J`;>uwl$J^Fm1?pBUYoBhw1HCX8GMZ0B%tJ{00( zf!vD2wa^XOOtX@mQ=l9p6J+kM#{;_!Q4G_PKhmBjt__Wmv~Ivm0XB68WV@2R;+rrp zRXkA`AyaB3RbC*uCM6p@DWF4qN-@Nq%s{ARQ1!C53vnovnD{3xFVFpYCGRS0B=KX% z3t^YYs{>CcPwsvsr=9A$)}T-gOqd;5f#(HzEdia4?;AK9&vf5Zn2axX!;X$}6)P!D zL8l^_-6^VSI`{zZ%>+71?0GQea-plEoN;aNd;`fC{8vpiDnNED}$4hL+f8o}?BP50oTDB?#FFqn*6#Qt$$nEQf zk1Crmw(6dCA(mp#1_0*$bd-jvP-c zDZ-|H6u4$1ohjvGwcM)Pi0k=_wye6@J$38dMM>?{9Xs8TGk$sIC$LYZkoyg9@WwQ4Lnx5U=181fmvScWk_ntj4oYqkYE1l? zyN~p21#C}6aqQtW1rit?UiT5=CP(91FqZ(k(={9*KWxhgin8Q>0|T0DfMo{4b;%-7ia$T66W+(kiYIlVu1n-WZ&(=sV@DvGQM z#%H-(0z=8bR0B4j3O;z(E5V+}F4@F#VSWn7Hi|Up;sZ3PtgJ+Sq6WMmln&zs4Stp& zeHG;kLiyBTp(Ch73NWj>j*1%so~H;^)5le z?#GZ8ef@#$AODhFnaj~*h29&1B1!3G7>Ko`v{5Sv89QlsK{D*l8~0tR{=PmzEWku^ z1A415Xux=0ksAdL$H4?T;Vf*Fnv7nn!=x2CXxTtlc2A9Xk;ZGlfdZ8)qdlo$wiCoP zENNoP^fOaep+L%z5AK42bCE6|@NH&>3|wX_mNnHBjH(CDyXb6U^bXAOLd$BK z_Q_nhj7?B6~FRZ_5a^N~OSbn8zejO5P@|JDz&%OnPxL7YQge|5hZM1F=z} zEN229Gf0{@q?bvm9JT{4rwn@I(@X}e$hvXl<^Z2KsN$t}WHN_)gTS&D1DF)sdP5qg!QIg#m_2*SrD|f#cUC+g!V)m&hx#I&K z!9Dh#gSoMBZSC4?we@SY@y^^&|8_!u_FUQY17GLCrD@tGO)Kme+p+HQ*lPH`s|bG@ z>+D$dY++aM!JoCx2TvS&&s*H|!IRqLRY2LPedf7U-`M8w)H*+T?lpbm#k12C5H!L% z=vg<6knXUxsi}3a4*U9qeipWkZJStKIM4so{an=<+Yr5FwCrm;@7(&-pN>6s=C7TF zjlVd1x^(Wa)_LvrD>pp7_r~ciz4)o~PVvA4_v*oK1#{RzgHYn|!%PymrQG+cwq?tf z^!?6?`^O(mww~Ea!4;&8g_-f0nbn2P_pX|K=Eqk)d7deXtqf!vfbzQHb?d2~t}D)h zdy7c>ofw-ePHtIU*tvJ-A;2x9O5f@E*4bEm@b=$-v~e3Z zyAB*!W!4{mLR+_P0?=)|e&e38!p4cYt0`2Wfz=(sNt2d(Qkv@LQl!i9Pa%^9%CPh5 z+s3cIeRld4AzMF3!5X||@7@jCeXNg#e`U~@KY1nqaz>nBE zG>;7u>n$g#Qvu*=alA(>%oXRh0B~)N8CMGW2}5(Ov~8bj%nKL?4$OAVJSTqRpy5|I z^Mo$40*#KQ`x~_TS@)~UKT-fQ^E0EXlh zOz*CyK3lW22uocvan0T_`nklGDy-SR=AqjP(!O1LSra_uIn@sNz-Wfd(xlMv+ABj3cDwE9~h&boVO;UgXTl_KAeRJRdNhkamy5- zo}QSVrMjFhPS2j_I@~q=?mr&A{N9HOpsu$8<~=CpF3Dibk_K3pCQ7%A(a*1?ekIZ{ z1{%Ql0br)~pPHDOp_r$NQ!^=Mk=A$$o^AN_#LAxQkzJ}$(-+snBC`{-+vy^ZMz_mU z!xbP3Pcv|AeRkw16+^T+a2bFL9&03X+PW{T*N&wBc0tn%zxt&Wc24b_r~G%0?>wS$ zz9N6C@~f!<#*+3U`xd^e7577xENmU$%8J3(v8_v55sG6s_orpBM+JQ=C6294+*Z^c ztP@}7(F&h;A3Ua;zMcNz{yXnI3}JHDAsrf?-TJWyPw4P7_&#(gqZR@vfrV>Kg-F%*76V)iq$C#b^KyoMKoV4xtZU&imjqkdFt_zLA4YK;N G_5Tkb%$NWG literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h new file mode 100644 index 00000000..43c4e009 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h @@ -0,0 +1,151 @@ +#ifndef __siginfo_t_defined +#define __siginfo_t_defined 1 + +#include +#include +#include + +#define __SI_MAX_SIZE 128 +#if __WORDSIZE == 64 +# define __SI_PAD_SIZE ((__SI_MAX_SIZE / sizeof (int)) - 4) +#else +# define __SI_PAD_SIZE ((__SI_MAX_SIZE / sizeof (int)) - 3) +#endif + +/* Some fields of siginfo_t have architecture-specific variations. */ +#include +#ifndef __SI_ALIGNMENT +# define __SI_ALIGNMENT /* nothing */ +#endif +#ifndef __SI_BAND_TYPE +# define __SI_BAND_TYPE long int +#endif +#ifndef __SI_CLOCK_T +# define __SI_CLOCK_T __clock_t +#endif +#ifndef __SI_ERRNO_THEN_CODE +# define __SI_ERRNO_THEN_CODE 1 +#endif +#ifndef __SI_HAVE_SIGSYS +# define __SI_HAVE_SIGSYS 1 +#endif +#ifndef __SI_SIGFAULT_ADDL +# define __SI_SIGFAULT_ADDL /* nothing */ +#endif + +typedef struct + { + int si_signo; /* Signal number. */ +#if __SI_ERRNO_THEN_CODE + int si_errno; /* If non-zero, an errno value associated with + this signal, as defined in . */ + int si_code; /* Signal code. */ +#else + int si_code; + int si_errno; +#endif +#if __WORDSIZE == 64 + int __pad0; /* Explicit padding. */ +#endif + + union + { + int _pad[__SI_PAD_SIZE]; + + /* kill(). */ + struct + { + __pid_t si_pid; /* Sending process ID. */ + __uid_t si_uid; /* Real user ID of sending process. */ + } _kill; + + /* POSIX.1b timers. */ + struct + { + int si_tid; /* Timer ID. */ + int si_overrun; /* Overrun count. */ + __sigval_t si_sigval; /* Signal value. */ + } _timer; + + /* POSIX.1b signals. */ + struct + { + __pid_t si_pid; /* Sending process ID. */ + __uid_t si_uid; /* Real user ID of sending process. */ + __sigval_t si_sigval; /* Signal value. */ + } _rt; + + /* SIGCHLD. */ + struct + { + __pid_t si_pid; /* Which child. */ + __uid_t si_uid; /* Real user ID of sending process. */ + int si_status; /* Exit value or signal. */ + __SI_CLOCK_T si_utime; + __SI_CLOCK_T si_stime; + } _sigchld; + + /* SIGILL, SIGFPE, SIGSEGV, SIGBUS. */ + struct + { + void *si_addr; /* Faulting insn/memory ref. */ + __SI_SIGFAULT_ADDL + short int si_addr_lsb; /* Valid LSB of the reported address. */ + union + { + /* used when si_code=SEGV_BNDERR */ + struct + { + void *_lower; + void *_upper; + } _addr_bnd; + /* used when si_code=SEGV_PKUERR */ + __uint32_t _pkey; + } _bounds; + } _sigfault; + + /* SIGPOLL. */ + struct + { + __SI_BAND_TYPE si_band; /* Band event for SIGPOLL. */ + int si_fd; + } _sigpoll; + + /* SIGSYS. */ +#if __SI_HAVE_SIGSYS + struct + { + void *_call_addr; /* Calling user insn. */ + int _syscall; /* Triggering system call number. */ + unsigned int _arch; /* AUDIT_ARCH_* of syscall. */ + } _sigsys; +#endif + } _sifields; + } siginfo_t __SI_ALIGNMENT; + + +/* X/Open requires some more fields with fixed names. */ +#define si_pid _sifields._kill.si_pid +#define si_uid _sifields._kill.si_uid +#define si_timerid _sifields._timer.si_tid +#define si_overrun _sifields._timer.si_overrun +#define si_status _sifields._sigchld.si_status +#define si_utime _sifields._sigchld.si_utime +#define si_stime _sifields._sigchld.si_stime +#define si_value _sifields._rt.si_sigval +#define si_int _sifields._rt.si_sigval.sival_int +#define si_ptr _sifields._rt.si_sigval.sival_ptr +#define si_addr _sifields._sigfault.si_addr +#define si_addr_lsb _sifields._sigfault.si_addr_lsb +#define si_lower _sifields._sigfault._bounds._addr_bnd._lower +#define si_upper _sifields._sigfault._bounds._addr_bnd._upper +#define si_pkey _sifields._sigfault._bounds._pkey +#define si_band _sifields._sigpoll.si_band +#define si_fd _sifields._sigpoll.si_fd +#if __SI_HAVE_SIGSYS +# define si_call_addr _sifields._sigsys._call_addr +# define si_syscall _sifields._sigsys._syscall +# define si_arch _sifields._sigsys._arch +#endif + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@siginfo_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a022af0d807c11d0c8564fd0aab9e796b437a3ad GIT binary patch literal 20823 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h new file mode 100644 index 00000000..8b27e911 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h @@ -0,0 +1,9 @@ +#ifndef __sigset_t_defined +#define __sigset_t_defined 1 + +#include + +/* A set of signals to be blocked, unblocked, or waited for. */ +typedef __sigset_t sigset_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigset_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..3325d9ecb9e01e1fc0d53f3d8835eb3f98d78ec4 GIT binary patch literal 12472 zcmb7KPpBkE8K0NPJLRy5c<>O1O;{w^-f=hUV=tm{V-{g!4x$7F+v@7-ncCO?wySz( z-r~Vy4&p@+1o0qv(1Sz;6$Cv9f-BxU<)BAVB&XnEN%H)vs;jzd`s~P-CwQqRz14%_qYBs@iJJoZE%e;M$|LmNoq|}5V`Rl;3{nQpSgJ}t8bnK zG|~1^ZYh1E*rW9G$YzUH*90KroJczc*2<=@O5_iLL zzE>jr;#c4FacbfA$sYrtta~;f3F=QD*O@bhl7aluQ zxw^^d1_LaVx-&&N0`!navxc#FonO=%WM5cre9xL3R3Jd;`Eh|e5%MHE-Z4OQssb8O zz&q(9Zb&^qaOG7b5%9A6&SeNYzn%hJ~6PZUuv0_bAY8!m&$#?x0*+edr4~iK*r$rH6AJT`% zqs2Ma*&emiwx)T}<`2_{Ncf>|>cj7E*U7i7!mF?(A~Q4QPK?KzkNPTU%Rzk@JG zMWO7lB!)b8n;Lx}votc>>*=!p#hoe%5rWVd09VOR2J%{*d#G)KC+0Xqd4>S92< zD7`2N>`T2!v`!e68b=jMq?{ZOQ3e+Hz#-FqwZTNGm7Ot?bIsQ z^O6@7YAZ6DPEk{<#Ro+1DA7^kqJTA54qcr(8MlVP8vtX7Umt3G0rjN~I2q?{@lS8l9mrzwhWRNUlC{ub2SqO z`?}++$}Oy|`rD3>xEDl}ysk~_`{SQ{)i0x3BxnoR7TV{-$a6SUFt3O`r+ zG@@ocq@mt0Agh){2QHa}WhwS~D%Ex5D4=cVxDkfD*WE>pMa)gB11$7~{hhOQJ==4({?kyEa>lH4BD1Q&XIw{R(9i>^ zQP4hYxnGh2J@ZJYuvr;cEyFk#^$))RJ6DR_Fk zRsb-mrSt(I?n*RY?cq+qertvcXfDx4ilRrFc!0&r7AbQ5nPrgKH~*2_bbEB_n<5;sqnh(AYMZX~0bj>@l-P zx^*@BR14%raM&~DHSC$(eXsWpDjv;KR#bAyrmWj6d+$OlFMkNIGOBLGC zvd?OZV9pU_&5}wt;$hyf)2J!ODmE%gZ7>qa8GO*RM<#)L1w+&Q^U1`ABUDie<8zm>h-T({nwxM zM{@x?ChE%(D5r|vC5+|ev~6}(t&ek#wF-!)b(Ea*MGQNiIt zm_aW*78|8z^Q(F-cMV4i49YowH1kuMqJ=93rPs)M&cJ#W#4YS-1SREY?`r*^E-#KP zz}3}VHMtq-&w<$1ZWxKHeWmf$2W!+kaO0)66Z3mDTGW*8NjlrL9TGssqG*6hWzl0B z{$9qK)fol$!zL%SQ9@%{zo2^XX7}l2P!cd|_`68G3DV0%SNN=W+94foxF~Z}fnz5= zPnmk-!|VoVLtmQRM&LUKU%l=tnbGy$l(4#)L2(UzqdxC;b72S!+@4O~aJlf=09@he z-QgcxOigB{Cb8{;T3GuFKU6CyKXCOr7bI!EOAcs5Aucz}tlNHYuUkY|j{(GhI39-E zM*}S;zZ&i0S@DQmAE)B^#DDKZ%W?VJ-(S7=>o@-Sr~c#^wBjX8;ra8=ncoAI?9=5<(BkCE$?d1q-#d#- G#qa;J6+2J> literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h new file mode 100644 index 00000000..a05d7f46 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h @@ -0,0 +1,18 @@ +#ifndef __sigval_t_defined +#define __sigval_t_defined + +#include + +/* To avoid sigval_t (not a standard type name) having C++ name + mangling depending on whether the selected standard includes union + sigval, it should not be defined at all when using a standard for + which the sigval name is not reserved; in that case, headers should + not include and should use only the + internal __sigval_t name. */ +#ifndef __USE_POSIX199309 +# error "sigval_t defined for standard not including union sigval" +#endif + +typedef __sigval_t sigval_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@sigval_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..bdd8d7b907fd489d704d3ce322afdd3f0922b3e6 GIT binary patch literal 12412 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h new file mode 100644 index 00000000..772ba7e7 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h @@ -0,0 +1,33 @@ +/* Define stack_t. Linux version. + Copyright (C) 1998-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef __stack_t_defined +#define __stack_t_defined 1 + +#define __need_size_t +#include + +/* Structure describing a signal stack. */ +typedef struct + { + void *ss_sp; + int ss_flags; + size_t ss_size; + } stack_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@stack_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..cd3b5052a0c4a5df8cf14156f011f2e83f21abb2 GIT binary patch literal 12838 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 L_lWr2Q*!(tzHO*J literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h new file mode 100644 index 00000000..fc261502 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h @@ -0,0 +1,120 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef __struct_FILE_defined +#define __struct_FILE_defined 1 + +/* Caution: The contents of this file are not part of the official + stdio.h API. However, much of it is part of the official *binary* + interface, and therefore cannot be changed. */ + +#if defined _IO_USE_OLD_IO_FILE && !defined _LIBC +# error "_IO_USE_OLD_IO_FILE should only be defined when building libc itself" +#endif + +#if defined _IO_lock_t_defined && !defined _LIBC +# error "_IO_lock_t_defined should only be defined when building libc itself" +#endif + +#include + +struct _IO_FILE; +struct _IO_marker; +struct _IO_codecvt; +struct _IO_wide_data; + +/* During the build of glibc itself, _IO_lock_t will already have been + defined by internal headers. */ +#ifndef _IO_lock_t_defined +typedef void _IO_lock_t; +#endif + +/* The tag name of this struct is _IO_FILE to preserve historic + C++ mangled names for functions taking FILE* arguments. + That name should not be used in new code. */ +struct _IO_FILE +{ + int _flags; /* High-order word is _IO_MAGIC; rest is flags. */ + + /* The following pointers correspond to the C++ streambuf protocol. */ + char *_IO_read_ptr; /* Current read pointer */ + char *_IO_read_end; /* End of get area. */ + char *_IO_read_base; /* Start of putback+get area. */ + char *_IO_write_base; /* Start of put area. */ + char *_IO_write_ptr; /* Current put pointer. */ + char *_IO_write_end; /* End of put area. */ + char *_IO_buf_base; /* Start of reserve area. */ + char *_IO_buf_end; /* End of reserve area. */ + + /* The following fields are used to support backing up and undo. */ + char *_IO_save_base; /* Pointer to start of non-current get area. */ + char *_IO_backup_base; /* Pointer to first valid character of backup area */ + char *_IO_save_end; /* Pointer to end of non-current get area. */ + + struct _IO_marker *_markers; + + struct _IO_FILE *_chain; + + int _fileno; + int _flags2; + __off_t _old_offset; /* This used to be _offset but it's too small. */ + + /* 1+column number of pbase(); 0 is unknown. */ + unsigned short _cur_column; + signed char _vtable_offset; + char _shortbuf[1]; + + _IO_lock_t *_lock; +#ifdef _IO_USE_OLD_IO_FILE +}; + +struct _IO_FILE_complete +{ + struct _IO_FILE _file; +#endif + __off64_t _offset; + /* Wide character stream stuff. */ + struct _IO_codecvt *_codecvt; + struct _IO_wide_data *_wide_data; + struct _IO_FILE *_freeres_list; + void *_freeres_buf; + size_t __pad5; + int _mode; + /* Make sure we don't get into trouble again. */ + char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)]; +}; + +/* These macros are used by bits/stdio.h and internal headers. */ +#define __getc_unlocked_body(_fp) \ + (__glibc_unlikely ((_fp)->_IO_read_ptr >= (_fp)->_IO_read_end) \ + ? __uflow (_fp) : *(unsigned char *) (_fp)->_IO_read_ptr++) + +#define __putc_unlocked_body(_ch, _fp) \ + (__glibc_unlikely ((_fp)->_IO_write_ptr >= (_fp)->_IO_write_end) \ + ? __overflow (_fp, (unsigned char) (_ch)) \ + : (unsigned char) (*(_fp)->_IO_write_ptr++ = (_ch))) + +#define _IO_EOF_SEEN 0x0010 +#define __feof_unlocked_body(_fp) (((_fp)->_flags & _IO_EOF_SEEN) != 0) + +#define _IO_ERR_SEEN 0x0020 +#define __ferror_unlocked_body(_fp) (((_fp)->_flags & _IO_ERR_SEEN) != 0) + +#define _IO_USER_LOCK 0x8000 +/* Many more flag bits are defined internally. */ + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_FILE.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..bc47685ffa58ee6280ca8f345ea35645ef4e9536 GIT binary patch literal 16640 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. */ + +#ifndef __jmp_buf_tag_defined +#define __jmp_buf_tag_defined 1 + +#include /* Get `__jmp_buf'. */ +#include + +/* Calling environment, plus possibly a saved signal mask. */ +struct __jmp_buf_tag + { + /* NOTE: The machine-dependent definitions of `__sigsetjmp' + assume that a `jmp_buf' begins with a `__jmp_buf' and that + `__mask_was_saved' follows it. Do not move these members + or add others before it. */ + __jmp_buf __jmpbuf; /* Calling environment. */ + int __mask_was_saved; /* Saved the signal mask? */ + __sigset_t __saved_mask; /* Saved signal mask. */ + }; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct___jmp_buf_tag.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..cce2c13c6611a05f0aad3590309dde18d5550ec3 GIT binary patch literal 12902 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h new file mode 100644 index 00000000..17cc1ac8 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h @@ -0,0 +1,14 @@ +#ifndef __itimerspec_defined +#define __itimerspec_defined 1 + +#include +#include + +/* POSIX.1b structure for timer start values and intervals. */ +struct itimerspec + { + struct timespec it_interval; + struct timespec it_value; + }; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_itimerspec.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..4ae6cdf73d540332b450b5859d685dd308a63a83 GIT binary patch literal 12635 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h new file mode 100644 index 00000000..7b080444 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h @@ -0,0 +1,28 @@ +/* Sched parameter structure. Generic version. + Copyright (C) 1996-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_TYPES_STRUCT_SCHED_PARAM +#define _BITS_TYPES_STRUCT_SCHED_PARAM 1 + +/* Data structure to describe a process' schedulability. */ +struct sched_param +{ + int sched_priority; +}; + +#endif /* bits/types/struct_sched_param.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sched_param.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e61a1485938366bccfeb24599f10aa14ac7748c2 GIT binary patch literal 12429 zcmb7KO{^S85#IO6Arh7qDUxFlh^K&p6*5`;2v1f-6gjqIf@~7S4&p~*=Kx7Y-abAjH8!LgK&y33KJdfh$5nIpt)OnCkB7-tC>5-pL;JGBw@x z^VL_?)$`)y;}1W$@@R4}nJ%h=O~v#&lc%bxr;156%~&>-4V@N*moL-Fr>G$1e3WRi zs+v=Tv8CV2p-@jEZ1MZe4N*p zPa>8W|LCxkp;O#e=K1Ul0I(wU{ynA2W>qD$V9#l0sk)MUeVhtj1d9dR5mgnOrYoK? z2zgs7)_CC4bg2w#7S%|Myu+Svy@k9-j-DHs+3#q+vYLD2ztZs&#px{Du)c&Spkjxswnn_ z9)d2_seFK1*_IrV6@9d29?qD~53oT=39Qxr-GQ}`#T0er!Jrg z1-?@uQ3YbuIX+|TYK@I&8N5w7Y}tWiY8B^n4+6l_G42;gQq>l7+Nkm*i@NN9>T zk78I7Y;CLOXaCDWLV=(qb5^p3QyaWwMx?=aFM=K^aF3QqK!B0X41|nt$m2tc6;v*gB#!6m7dH zs+DuNeu#S+-Y4dW6TBZmLOupwa0K*Q#=tG4sRa)&#A;ikc27mIB{v5Jag6m&zCiWj z0`m(PECqgWAv4jnL^FVT>F&_0K7i^_# zR4&LoTq+Q8%m#Yz85-!t^hm7@S3?ye+1?Tscr8t#`lqutPZinBLSo?r+1ysHAHDrX zSh)r$DD4apQEk!E?7Rd%rb*o}IMf9(Lsx=s8mlF!Y?}IGeQLW8y*?huT&RRW ze3F8xMTH-;p>b~4`}(ZT>wKPegSQZfsG_S`S@CiS2gY7A@0{fLB;9b1rxkQf7`YA{ z=Wua56tZK1XvMK!*raT)S?SLy&>b5BHt*Ks!EVD9!>;6yI`hc+-W=)b2Fw)TP?rMR zCD~a?U|t#^(FLJbYP?h|kp$6V!;=C%#Mcsg;%NeeMh11SX}b_Wp~9@ZPm37*wk_W{ zYn1tt7d4y`ZFR7O^0SwI5NW42&>BkBioooERz*?8S^_;AzdSe_?{(kWm>!llX{SfI zL6ibe=&4BWbc(uK4?Y0By+lWaivq@60=hcAGwuz`H$cXK-;ioT1I--YdXBbH0I6Eov~^!m;flF<)Zwj7cd9}yS{do`0r z`?~$3$|a1gHn$xyb$7rJ!6n?Jl zX=KepN<*VzNmdVuc0w{p%Sx_Aru21W56})eK85a8aPHvtfD-3Ah4u@m%0&fbb96o# zQiMbO7RF5-)>=z?r+-L_9r-a8APbtiJOUo8AA<8bS%In;dVSVLfUXPBPtN(OwmGTYP@W9_Y-SS~TQ$5($ zf~dS|@bj`?>3++@BJS34NnWm(Jd`*U_jF+C{%t4*c~g&QFG8` z4e?+L_l(y?jBn2HgUo9UL(>7(KrS#+ciUS4=_@Ohn5!8SityBc1AXX+)aX;Qfj@Y| zbV<}OUGlfQ!8@q_RAj8E)TkMos7NL^6&mH+ny;Ci0Q5lSfjEa|LeGJkN{F5A57iN3 za*Tk-IoYoZlaN>fj;I!Owc1h0ZQ`f^n_mqn4Ij2Fh5jG_(;j^Z&g|WB-IM&T0-Er; z@pcg1P|iXQoEGWiHEa@?A$LX3GbE~64#77}>=i@BAXEcK$v{7Nw@BawlO-9W0;ZvG z2@_a@EI=VMf^C^--|$T z)bc)I+*;n+W>wW@J0Ex_vhQ0r3tsL10pJ>wM5VuGtXde$2X>>1!!K?e~(ld$iofj=?O4lSC9omiwAY)NBK(%u0v5bEu%_-M2BlOT8gwO*4b?8u~_k+D+u*6d1WP9lqD{@L2#|;pyG+A6!QbW~LEw z?SdXthhsj}D!2`W3iUD;34tI~XtQh=Ow8OJr zBk_Hl#`9z{IeZ9z!SCS7xBm0Jhx29oVk^ju3;kKzYG^X#od{r}G7iB|OgM5G|h literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h new file mode 100644 index 00000000..19242baf --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h @@ -0,0 +1,29 @@ +/* Define struct sigstack. + Copyright (C) 1998-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef __sigstack_defined +#define __sigstack_defined 1 + +/* Structure describing a signal stack (obsolete). */ +struct sigstack + { + void *ss_sp; /* Signal stack pointer. */ + int ss_onstack; /* Nonzero if executing on this stack. */ + }; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_sigstack.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..55de81a66316c955d00f723ec218c9c47f4c1f57 GIT binary patch literal 12513 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h new file mode 100644 index 00000000..489e8113 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h @@ -0,0 +1,33 @@ +/* NB: Include guard matches what uses. */ +#ifndef _STRUCT_TIMESPEC +#define _STRUCT_TIMESPEC 1 + +#include +#include +#include + +/* POSIX.1b structure for a time value. This is like a `struct timeval' but + has nanoseconds instead of microseconds. */ +struct timespec +{ +#ifdef __USE_TIME_BITS64 + __time64_t tv_sec; /* Seconds. */ +#else + __time_t tv_sec; /* Seconds. */ +#endif +#if __WORDSIZE == 64 \ + || (defined __SYSCALL_WORDSIZE && __SYSCALL_WORDSIZE == 64) \ + || (__TIMESIZE == 32 && !defined __USE_TIME_BITS64) + __syscall_slong_t tv_nsec; /* Nanoseconds. */ +#else +# if __BYTE_ORDER == __BIG_ENDIAN + int: 32; /* Padding. */ + long int tv_nsec; /* Nanoseconds. */ +# else + long int tv_nsec; /* Nanoseconds. */ + int: 32; /* Padding. */ +# endif +#endif +}; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timespec.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..ee78029fce7b0741fb2a9d9ca63b7d3d021c7be2 GIT binary patch literal 12862 zcmb7KU8p2S6`p&uNLVhrn`BKOY8Y0DA*Oe->*lfqffXWo@7y?heXuncO^S?;_~>CO_UfV>)l}4@geD_V#iNX{{A4`1 zDdr>}Z$ui*ifWJL;~-%bjq9S?f2end!F%^@jT%vnSRV5xp`(irKXG~#(J{-zxJc;9 z$>9CFhc8}tXySUmR4Y<`XC-2_7|B&J3d1ZCHK}P>OD2|-vuLDr8J*g-yOM0q^11>| zf%H0i_ID0fB@_G;jvJPs5`rI-QoMc0HOX`$)Isu2IZZYCYNq0L)0aeos*+QBiP7*fE-7RThHHPludk4l`#v zQWqJE!x>8`xV*`0T3KQrFjK~97*)kg=nw9HIqGp+TsACE3(3`D$zwy1oNxf(dOV1x zN=dwMsZZPq%r-w-V;|*Et{M{u%b&#>fssF*a0@kiNb(Qre;a;5b=br-C_o6Y@%>k zlyP2rbhdtjWR~a*pm68Ka7JPUn72N4-UYFY1k^fq8`y;rRUa(8QBQ>-7#e^XW@H`` z4mQ*3;tA5!D(O7BY8c15V+y6Yh774oh;o5XS230P+&K3+S5d1END2HUjn&8OCu2(q z=2!&PHk}JdUY$&d(zbD3o`w%-C7?CHAUV@=su686{X>r@0Tjc-aDMQp4BlZlK_eL)(hN< zz@v11#{lS*1vH2u-_>r$^{EFLT>2USBE_)*;Q5558JTkA8{$Y4|bM@L|b$vwL7G`v0})PMxR>b6sQ z_aN3tKvgTfmBVhIF@YxoOQHKT>B&yQ80XChn%hVOJ&{L5HlkIPD;wPN?zh|)StFO$ z&u1I-oF=S)5cr{A%m}N?J*-hg$pz{NloWJCgmB=d zI_nTBf)nY6ga~Mg7fU`YaXQ!4^Ui-$H=%&jf-%i$#bWKeARF%lA@&fSoH`U zkSv96PKBFAjNB5~p+@$IluYXO)gSD*{gWzO3*CC#emiW1Y+lIZi?gosI|k7>Kflb#d+SYXhJT&0K{#`4yKkcYaZ5tY_d z5Hw;8Ume@J2d`$3k=@c{$n5s=R0sV>P1T7J2N6gU2NO!5?F*pVEdhPG18?y*WmS=9 zP{wh@DJnQ12GD+?p`-}f=1T<~N(CZ8sGv)VL0L~K5LlroAeBBR*@V=wLd2oQWqtDx z*`GB~i)%Xf$P7hWZ;DD~3@#UOE5r9h9dVrRJxEA5ffpPB?Up`pbD?U%&u{nDwyIt| z75P{$4hsA<);rk()$t3=FJQ3b*ul6=c~>U~ILFJArflUqEto?tD2L{^pPd}|K64*En%8J6F&hZ(_3A$;lmY}p@ zXpi-w?mi@c+>t4-0}B2LGFndx{Fn`mb2DGpXSG&mM)nF1W@LdbSOvY!)}mpVu^PUw^xOXUkBP9$0Xq(BbwCB+(lDhHvSLCve$ zE(B00G0m^UnGb%;nlFsCk@|vVC7cpx;nWtZVjDpAQ=OG z-BjZWs4i{L6T6|)b8@%#n6;%c9Bwe{ox=PHhPRHrPzC4mE^NgbzF0aRs2TtD&#YV_ zDfysfOCfmi5rLx6S2LlvuUkK=oWj^@aogb&cb|xym8EWdU;5!QZW&b~L0dql&_1sY ze|&6}x2194MH?-r@H44TB}(e1G}Ie9$;u(oic5OaaxLaOspWNK2havOHiVup;M~FV z0mYx|YP4TKMa~K+n;XZIN{Vo(-$Y!}v@<2YtT9h{BPM>Pvv@)lw{FX)C~KVwOWG5; z+Rx{HnlQNamHz+Rqp2s6YIl~tbHln(pAccUy+s|d+-wnj(`pkI`oa9{?zr68bEf{s zYpaxP!1@RN*62DPI%%o{+me$yEh_xHY&l(Nm|MgR9~0zxll31=+crcB(m5QNyX(L+ zdAFOutz=(vv!V)`3k@HOY)9Coio%lhH3brw9A2*w;x0$y+H7tGTuj$+0rh2DM^SW3 zjT;!ybQ2UxKLzY=O3P4nP_`=ZV2nG;%Ob`WXZYn@p}g!Qchzc#C8>z}005OiOt7?W z1kezYmsWM4E@vDtq71cdy%7oAl)w%%v!xwtqpM0FdsK&c6fa>OW$%TZZ&2}Kp3tnQ zH=4@vf+S*5)0eGoVOg>{)iZ+*EG^9#+7CH7stV3m`bAVmFyUzgZpK2EFU(GSA-h3+ zDT~>PKxPw@Jg|vZpV06WX3FIg0!(`JBRJ)^2Yg!=Rt1nLvK@#!-gW6TM8RmD-e1Bd zfT?p^CT&hdB}>8iDtBAKP%>~;&*9UN55CO;IP)YyLSqi|Q@FNqv_YBoSkmF_M1JiC zJVw|ymMe+bP+DkZMWb&WEUHlnLH%4p8(RB~+9x;<2{NWpp&E8SZG;mZK2HluV}21Cj^>K`~t9>)n%cFQIvxkD044ui(zj)$bzgDm1P}#L%BKc$l>Z7E$5ny;(1*%z5s_m>N4avIaZW^{yrye9K zm3Sc^G!_j^<{iCJ!Qm#DLKEB-8>Ob3m+7*eRSc~dC})0k!#6Zp19u5hua5Psfz=@p zx3HxVG08gvSK|kHYq4(fE${4#-jT>+AAqZJLq}ZYE0r+a?2DQQuDaw{V)N!J&dNBR zlVoGpwxJC{h=w;Rl}QIv|3evLR%;X(4C|OwM)94`7L%#xUu@q@dL;p)`X5B95s;c9 z+Dc}`Qx0iwMl8xKm1oxG%tm4X%3a^O(-PUZ1e4J3;dr`bD|d z4(0qQ&~t6tf3;=dGl6u4hj*L*;6|!9G8Kub|8i38PWn)-pqjx6c+(^q^I5b)>w|bb zp?c2t-N)Jqgz*@p7!b$F;bv(`i{9s=EuJNhz&2(Q&o|xdJo{eof~^jBm+W9;r@OXN zk+ydRM-G2@@Ufl2p@Tns=k+7e3+D<+0`2NhmZc#)IoyZT%Xui||HFE4=ba}8?Vtb2 zpIgTd9l!g~)&cqBbN{&fmw*0w<#S#9;HzWqS4R&WJ$`8GHS5I;gC9Ti^0nxt-@`i~c?&v}Eagyd_?52>jvP5Qc>1Y}k3W0zR5aA< z@YsC_LyI9%ghS{i8hUa#yfk5A2!A=-qp)^)i5ZZ5au_xBVR-g1%t;QHd(dVjKn`!x z;A(wXq(itDsm$+B4z>;-Iegdl*5Scj+aUQu=z*2`+Te~Ysnmz;Z#t&5iahvWJq>f% zbnuC@M+Q$W1b~f>-*bHTz3oHN%Db=Kd + +/* A time value that is accurate to the nearest + microsecond but also has a range of years. */ +struct timeval +{ +#ifdef __USE_TIME_BITS64 + __time64_t tv_sec; /* Seconds. */ + __suseconds64_t tv_usec; /* Microseconds. */ +#else + __time_t tv_sec; /* Seconds. */ + __suseconds_t tv_usec; /* Microseconds. */ +#endif +}; +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_timeval.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..aaafce1c098ac33f41e0e7b14f3b6b6244b3b34d GIT binary patch literal 12678 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 Q;f3Mh8TIpMaH^F1Ke&&0EC2ui literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h new file mode 100644 index 00000000..b13b6312 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h @@ -0,0 +1,28 @@ +#ifndef __struct_tm_defined +#define __struct_tm_defined 1 + +#include + +/* ISO C `broken-down time' structure. */ +struct tm +{ + int tm_sec; /* Seconds. [0-60] (1 leap second) */ + int tm_min; /* Minutes. [0-59] */ + int tm_hour; /* Hours. [0-23] */ + int tm_mday; /* Day. [1-31] */ + int tm_mon; /* Month. [0-11] */ + int tm_year; /* Year - 1900. */ + int tm_wday; /* Day of week. [0-6] */ + int tm_yday; /* Days in year.[0-365] */ + int tm_isdst; /* DST. [-1/0/1]*/ + +# ifdef __USE_MISC + long int tm_gmtoff; /* Seconds east of UTC. */ + const char *tm_zone; /* Timezone abbreviation. */ +# else + long int __tm_gmtoff; /* Seconds east of UTC. */ + const char *__tm_zone; /* Timezone abbreviation. */ +# endif +}; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@struct_tm.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1906a4afb0e4dc53d0b4e9daa4e8b08aa7554e5b GIT binary patch literal 13354 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 + +/* Returned by `time'. */ +#ifdef __USE_TIME_BITS64 +typedef __time64_t time_t; +#else +typedef __time_t time_t; +#endif + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@time_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..740bb260f80b064e3982fb4a3295e6384934a92c GIT binary patch literal 12352 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h new file mode 100644 index 00000000..d71a4130 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h @@ -0,0 +1,9 @@ +#ifndef __timer_t_defined +#define __timer_t_defined 1 + +#include + +/* Timer ID returned by `timer_create'. */ +typedef __timer_t timer_t; + +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@types@timer_t.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..e3f1df207a1bced7222146a9c68778ae02273202 GIT binary patch literal 12389 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h new file mode 100644 index 00000000..6b6ec0d2 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h @@ -0,0 +1,106 @@ +/* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. + Copyright (C) 2012-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _BITS_TYPES_H +# error "Never include directly; use instead." +#endif + +#ifndef _BITS_TYPESIZES_H +#define _BITS_TYPESIZES_H 1 + +/* See for the meaning of these macros. This file exists so + that need not vary across different GNU platforms. */ + +/* X32 kernel interface is 64-bit. */ +#if defined __x86_64__ && defined __ILP32__ +# define __SYSCALL_SLONG_TYPE __SQUAD_TYPE +# define __SYSCALL_ULONG_TYPE __UQUAD_TYPE +#else +# define __SYSCALL_SLONG_TYPE __SLONGWORD_TYPE +# define __SYSCALL_ULONG_TYPE __ULONGWORD_TYPE +#endif + +#define __DEV_T_TYPE __UQUAD_TYPE +#define __UID_T_TYPE __U32_TYPE +#define __GID_T_TYPE __U32_TYPE +#define __INO_T_TYPE __SYSCALL_ULONG_TYPE +#define __INO64_T_TYPE __UQUAD_TYPE +#define __MODE_T_TYPE __U32_TYPE +#ifdef __x86_64__ +# define __NLINK_T_TYPE __SYSCALL_ULONG_TYPE +# define __FSWORD_T_TYPE __SYSCALL_SLONG_TYPE +#else +# define __NLINK_T_TYPE __UWORD_TYPE +# define __FSWORD_T_TYPE __SWORD_TYPE +#endif +#define __OFF_T_TYPE __SYSCALL_SLONG_TYPE +#define __OFF64_T_TYPE __SQUAD_TYPE +#define __PID_T_TYPE __S32_TYPE +#define __RLIM_T_TYPE __SYSCALL_ULONG_TYPE +#define __RLIM64_T_TYPE __UQUAD_TYPE +#define __BLKCNT_T_TYPE __SYSCALL_SLONG_TYPE +#define __BLKCNT64_T_TYPE __SQUAD_TYPE +#define __FSBLKCNT_T_TYPE __SYSCALL_ULONG_TYPE +#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE +#define __FSFILCNT_T_TYPE __SYSCALL_ULONG_TYPE +#define __FSFILCNT64_T_TYPE __UQUAD_TYPE +#define __ID_T_TYPE __U32_TYPE +#define __CLOCK_T_TYPE __SYSCALL_SLONG_TYPE +#define __TIME_T_TYPE __SYSCALL_SLONG_TYPE +#define __USECONDS_T_TYPE __U32_TYPE +#define __SUSECONDS_T_TYPE __SYSCALL_SLONG_TYPE +#define __SUSECONDS64_T_TYPE __SQUAD_TYPE +#define __DADDR_T_TYPE __S32_TYPE +#define __KEY_T_TYPE __S32_TYPE +#define __CLOCKID_T_TYPE __S32_TYPE +#define __TIMER_T_TYPE void * +#define __BLKSIZE_T_TYPE __SYSCALL_SLONG_TYPE +#define __FSID_T_TYPE struct { int __val[2]; } +#define __SSIZE_T_TYPE __SWORD_TYPE +#define __CPU_MASK_TYPE __SYSCALL_ULONG_TYPE + +#ifdef __x86_64__ +/* Tell the libc code that off_t and off64_t are actually the same type + for all ABI purposes, even if possibly expressed as different base types + for C type-checking purposes. */ +# define __OFF_T_MATCHES_OFF64_T 1 + +/* Same for ino_t and ino64_t. */ +# define __INO_T_MATCHES_INO64_T 1 + +/* And for __rlim_t and __rlim64_t. */ +# define __RLIM_T_MATCHES_RLIM64_T 1 + +/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ +# define __STATFS_MATCHES_STATFS64 1 + +/* And for getitimer, setitimer and rusage */ +# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 +#else +# define __RLIM_T_MATCHES_RLIM64_T 0 + +# define __STATFS_MATCHES_STATFS64 0 + +# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 +#endif + +/* Number of descriptors that can fit in an `fd_set'. */ +#define __FD_SETSIZE 1024 + + +#endif /* bits/typesizes.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@typesizes.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..55c1a4d7df67c72a32b9da77d1637cbabb70796c GIT binary patch literal 16140 zcmb7Ke{dXEeZNzJUA3OFRZNnmX)3!|wiTUDI?J+b%l1h+$&!4sge99ealGE!+q+w9 ze|dNBB-x>m7BUb@r!$arG9753WypjM1ZENffsjr+&0xZm473DyChbf*WLh^NC8P}L z5cT`s?tA;*?Yq6hf4s5oefRsmKR(|d@4MTddgte_k6lfrQ`wqrYFQ&&(7aXOcCx^{at&w(hxE-BOKu zS<5aLin(k_tLm1l+GTC9mU^eJ_oG)i8r9!$@D7rn+bQY3mqoi?R+i0@=PSM@`-ll8 zHS|&z>yjNFrKc+9x^DR{XbPlP^}D{yam6yhB3J8rSt!x*Vzz43(U$bXC%)6-VX$i5 z6>C({6tw4Yk`j}cieKY4#40q__YdbP&hTi0CfGj6Ef#MSaunV#Z2$n)6sP@}o?kB6 zwt)y^M#HQe+tb%`vZ0$CGwwLWw@qD@*YvUmF0Wg@=2GG$U{-WPlS{6><^>N7Jzi?z zHr1)?R>ekKDV7p!2$CxX0I)qCyt-Ra)X1et;?^`nUq>Q*>8s~?IX!exmFkS5K`33d zV(AG|VS@+Q_w;H*F`9tS89ku$byIU0vLyMnhK?P*?b$_Md>S3TT~{$ssgb!OD^A9+ ztEKjODj3O)l9{Bfx8Y^gvQ`m?3~LMDt*gE~GgqAEjwZ5E@o}PKAwnn^W~yzk>YA+E za;0vmzHVC{V?H*I;f#O|yt_1&kfSOPAx#{FzF#xVcCH7fd;Y3-S*T^*(ji!dTa0?* zj7jVO2UrTm08OT33-j>Qn%4G+HBh4yg&o^bEk8kL>NiMc^@|Y#7eERSinB4;eBj zA=m{;x_S+y&+AhYyrNVekP`SK8mbRD55*Q1jI)SP+se8J$t#vAg|uN@J2`kjb3JGc ze$6M1PO2O7ivK3cc%rTguV)#}DY7&6Z-{9B@m2=#RS`#HKA$4d9 zE0)lcJX&!zO|BXn4oI&B(>B?0_|Ppm1r@2rX%MIpH-bcB!;bQB1|!3}rTGE@XE(g}&;K~o%U zC1J_X)`RMK+kb0(LII~`s+y&_x*9kyQ&K#P@0bTENNh*5s<=mpfrJTNOY`_FLgYrk zmIGvG6-P(9-S@~gzJJ1nE7GlHyByKch!z@q-BTKx+Rol2r=W&ybflA<0#0lM34Tn# zTqugFHJ8LB&(##KW(L=^(elZJ6aZMzp%b~R3FIJ_ryhhn6fccJX-NeUMhxK_#CFhw zyK9h<`O-wl=<(=Q2mOby;TxkEL?Dftsc8zdeHo~B4A9vQJj7c=cWujrGA>3Orh*G% z2HG!SC}D!I`NBabqymv3RD@fYf#cU)5E!E;nM?x|i$lYdWfS93?TAk-66ig|%En%G1WErZzT&h=OUx{WR zN$v#NN>I5jEKc&33xiuVY!6M8nudr%X@#YkSP5*bW*k?8OC9GkAt&gjMYTjoE6em+ zF9+QR;xBe&#qcv4_$Om(e$5tNv!QXWuea;7LaXalIUKz4KoknPR5db$zMuKrX}*kNk)SQm z8qhvB4}X%_Vs9hkzAbFDxWca^eO%Ac_>?B}Mv!FDkf_NeEz`2^ts7+@y^f3lnm~t! z&_x^W9eQvx=yV@=PTmkp}K`lI{)dMtzBiLq33Es5Qge81n zeQdPqbnH1&|JAltiZ)=a2maLPK|bWtR1CI`q4*Ws72lUBr%QF6FXDs`3397$w!WB# zZ3q%1b~z&Nt}_XfcX|lCm28#VsHmQ1c>#PVvN>UyilUd>*Az%#Xn5U3D0aCpuF2t4 zz-YQA7BG0(7E@GsWPlqO(8LpzkiG%f?UYs*sv~5J6OV{-OnFqq^ym)H<_hd(F1h1Y zTXqyz;XeQn%HY*RX`KiVKnT6G@-z753$~PzBu+;lR)GUk~~BcuU10Cr!WlzeL^6TUic8)^1};0Eep*8 zpcEMn#5wQsbOA)cXbHVPf=vdd&S9CPIaMfG1)Ps_Hx*1s2Ciyx`Q+q-XUz=UdCHlx zrW!Cmh1WKmHbUktEXi@^BH!l&UPKr+mQ9J7P*P}_c0G9OKv6A}5Y)F2w4t@{sC|O_ zkf&6&l8qboWZp3Qa8zAX*@dDwL5>u}jgUM@Qysp@g7<8A%7`y?9W~9#-_cMr*A!?w z#jgN^yp9Lh8A#GF3CpxjngKDs%`u|FNLFIJ_0spdpTnEu_{u zFWHX2=IX-gA>?da?(lmWvkvbSkX|wCQ3K-(q1eKd##0q5Hhd+1KyNVGO~KLoJG%E!(1@b*MocvwRb5xg9lJIRa|lOas0*bcsiBel(F`#w zH3|%ggMhu#}4ZojElmv{L{Ba~62jPh#t!hL(?2s@iP?S-sgkxKLqtfb$ zUuQs|y6V1;dj#>|fmbj5R3`S0ua&U4QxWDh;S#= z>>JuQn@>+3nmmJ59LNusdPoE z?CC=5NNO_;)SEpI{!?G?T-Uc``NZ_8lhZ|cu~?8-<`$;UOcdpXiIu6@>1FcwC~!y> zBmSK{(K`&Mp6fYxz6-6T@YGy(?Afi?Zts`n#hDp-g&qWd!Iu^*aLizIjF6-o@m=a! z%6Fl)5c1vm@L#|8+RtA8cUfLW<^awsXP1ywZjacpJKfzt`ToUIpfaXQ&q;FwU1*&R zIqo)#rP<$`8v$!B&jA@>cw5Af+34;La$WD0UO+3j0GgnCa`ztY{QyWiE6w(Iq4j*o zd-&Gb@he+y0p63v6TG~=5qo|Q34C^WYNA+_my3%hj}yUvYfM!@%Lax`h zdrzl;VFMg0BC;|NU(A@I!CP^2y@d$rC~o zu{*3Br&;3<^b8DkrC}w;U;4N24vjxE(Gz$Upg7zs?FARW zN^tnjQ!jn_i8sFW6v81OV(R1y%eF6qOKiKD^&#odXjdB6rO;@f*#0Mf{+^W!H=-19 zHWHO_Mf5v1LFCqgQ~(FSnh$xs_1rTHTegon7}8Bb?u>+N(g0zF)qYGG%XOt;Erx8r za{l`ttUmtnm#{sBB7!x;-&=ZVkF*Dbg_WS?=+qA$dvd1heH1G2pY)FL9p?ZWKmOr; zBj2uFc@^W6H8tbGFk4~Y;!{~2_DTD|gRoK$-d`MA?4AWoEG!n7)Wl>GW&*DUg`fjn0fk)5X8~%F>br0U0@hk ziIKmWf2j6}`7dr^4fC$Pfj&rYy9ai|+CSJonNJ_-KXNpm&X44g!4|%`ls)nK3mLH$ zQhOq+#jS))hjJcUEqC9*lT1S+Hr70cWHuWTeB=VaSHC2CAht_dfLb$DZ4D1F**> zH{#92E4zc^RRsH^(ou+9Snmo2-}&KtFT8NyE4yTQsYT>QzhkaZ78sF60HCmv$dz9! z{m%8dAKVU7E}e!BZy5?~(2Ox5#BKGqvcSAF51|Ar3D2MYP50kBFL+S0mQOEFPc5D- zK$A+?zn6h=(=KxW=fMeSVx%h#D{0Lf|3J_D)@LDBmsciMW|nD(8vKbn;T&_0n5Y+b zzh`^S7P``~l0@+MBVU`if5**t2FV2kCw(?aC=k;ObM&i#2zS6|dd>iESV@)n+9%%_ zsJ;0U=qba;LYp&?W;R%4aG2XK?FUH1N+A8af4jx_&KGw-DNoL=fUUuis9{}}XF=8o z(#@M###^LY0Kc$~hA7*A?qe^#_`r+LkR~B=9fORZMF_W8IXTB2kPZMcU?s@7Umn&! zGj-+Bs85QxM{?38itrbwq4YuNAczht3B6x@_KvN0Ufla5(ufexh0PoogSof_JxLP@ zHpz0&GF)6>CE5HR-unK(yzqg8cSIS3tvOtK7bFzAjglc-cE+V~XzySp?cHxZ|K_Kq z!d28eG5437BkW3z7sWJk8bOJ?bKhUKgonS)f. */ + +#if !defined _NETINET_IN_H && !defined _ENDIAN_H +# error "Never use directly; include or instead." +#endif + +#ifndef _BITS_UINTN_IDENTITY_H +#define _BITS_UINTN_IDENTITY_H 1 + +#include + +/* These inline functions are to ensure the appropriate type + conversions and associated diagnostics from macros that convert to + a given endianness. */ + +static __inline __uint16_t +__uint16_identity (__uint16_t __x) +{ + return __x; +} + +static __inline __uint32_t +__uint32_identity (__uint32_t __x) +{ + return __x; +} + +static __inline __uint64_t +__uint64_identity (__uint64_t __x) +{ + return __x; +} + +#endif /* _BITS_UINTN_IDENTITY_H. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@uintn-identity.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..a7bb88bf7859e84d1b2bcbefbb95dccee7b9ddf2 GIT binary patch literal 13149 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 K&v=I-{{9bpI{-fb literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h new file mode 100644 index 00000000..c523ef67 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h @@ -0,0 +1,50 @@ +/* System-specific extensions of , Linux version. + Copyright (C) 2019-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _UNISTD_H +# error "Never include directly; use instead." +#endif + +#ifdef __USE_GNU + +/* Return the kernel thread ID (TID) of the current thread. The + returned value is not subject to caching. Most Linux system calls + accept a TID in place of a PID. Using the TID to change properties + of a thread that has been created using pthread_create can lead to + undefined behavior (comparable to manipulating file descriptors + directly that have not been created explicitly). Note that a TID + uniquely identifies a thread only while this thread is running; a + TID can be reused once a thread has exited, even if the thread is + not detached and has not been joined. */ +extern __pid_t gettid (void) __THROW; + +#ifdef __has_include +# if __has_include ("linux/close_range.h") +# include "linux/close_range.h" +# endif +#endif +/* Unshare the file descriptor table before closing file descriptors. */ +#ifndef CLOSE_RANGE_UNSHARE +# define CLOSE_RANGE_UNSHARE (1U << 1) +#endif +/* Set the FD_CLOEXEC bit instead of closing the file descriptor. */ +#ifndef CLOSE_RANGE_CLOEXEC +# define CLOSE_RANGE_CLOEXEC (1U << 2) +#endif + +#endif /* __USE_GNU */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@unistd_ext.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..352d12ab3fe23e90707c3af025a674e6a142e5e6 GIT binary patch literal 12135 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 N!K=GR4|luW{{eo3%gz7* literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h new file mode 100644 index 00000000..75134278 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h @@ -0,0 +1,39 @@ +/* Definitions of flag bits for `waitpid' et al. + Copyright (C) 1992-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#if !defined _SYS_WAIT_H && !defined _STDLIB_H +# error "Never include directly; use instead." +#endif + + +/* Bits in the third argument to `waitpid'. */ +#define WNOHANG 1 /* Don't block waiting. */ +#define WUNTRACED 2 /* Report status of stopped children. */ + +/* Bits in the fourth argument to `waitid'. */ +#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 +# define WSTOPPED 2 /* Report stopped child (same as WUNTRACED). */ +# define WEXITED 4 /* Report dead child. */ +# define WCONTINUED 8 /* Report continued child. */ +# define WNOWAIT 0x01000000 /* Don't reap, just poll status. */ +#endif + +#define __WNOTHREAD 0x20000000 /* Don't wait on children of other threads + in this group */ +#define __WALL 0x40000000 /* Wait for any child. */ +#define __WCLONE 0x80000000 /* Wait for cloned process. */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitflags.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..9e731e63084a565f0230d15a0704fa060f6a0d8c GIT binary patch literal 12698 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h new file mode 100644 index 00000000..ec7c076b --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h @@ -0,0 +1,59 @@ +/* Definitions of status bits for `wait' et al. + Copyright (C) 1992-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#if !defined _SYS_WAIT_H && !defined _STDLIB_H +# error "Never include directly; use instead." +#endif + + +/* Everything extant so far uses these same bits. */ + + +/* If WIFEXITED(STATUS), the low-order 8 bits of the status. */ +#define __WEXITSTATUS(status) (((status) & 0xff00) >> 8) + +/* If WIFSIGNALED(STATUS), the terminating signal. */ +#define __WTERMSIG(status) ((status) & 0x7f) + +/* If WIFSTOPPED(STATUS), the signal that stopped the child. */ +#define __WSTOPSIG(status) __WEXITSTATUS(status) + +/* Nonzero if STATUS indicates normal termination. */ +#define __WIFEXITED(status) (__WTERMSIG(status) == 0) + +/* Nonzero if STATUS indicates termination by a signal. */ +#define __WIFSIGNALED(status) \ + (((signed char) (((status) & 0x7f) + 1) >> 1) > 0) + +/* Nonzero if STATUS indicates the child is stopped. */ +#define __WIFSTOPPED(status) (((status) & 0xff) == 0x7f) + +/* Nonzero if STATUS indicates the child continued after a stop. We only + define this if provides the WCONTINUED flag bit. */ +#ifdef WCONTINUED +# define __WIFCONTINUED(status) ((status) == __W_CONTINUED) +#endif + +/* Nonzero if STATUS indicates the child dumped core. */ +#define __WCOREDUMP(status) ((status) & __WCOREFLAG) + +/* Macros for constructing status values. */ +#define __W_EXITCODE(ret, sig) ((ret) << 8 | (sig)) +#define __W_STOPCODE(sig) ((sig) << 8 | 0x7f) +#define __W_CONTINUED 0xffff +#define __WCOREFLAG 0x80 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@waitstatus.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7ae1425fcfd8153c8c43072d6574d822c477cc4c GIT binary patch literal 13258 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. */ + +#ifndef _BITS_WCHAR_H +#define _BITS_WCHAR_H 1 + +/* The fallback definitions, for when __WCHAR_MAX__ or __WCHAR_MIN__ + are not defined, give the right value and type as long as both int + and wchar_t are 32-bit types. Adding L'\0' to a constant value + ensures that the type is correct; it is necessary to use (L'\0' + + 0) rather than just L'\0' so that the type in C++ is the promoted + version of wchar_t rather than the distinct wchar_t type itself. + Because wchar_t in preprocessor #if expressions is treated as + intmax_t or uintmax_t, the expression (L'\0' - 1) would have the + wrong value for WCHAR_MAX in such expressions and so cannot be used + to define __WCHAR_MAX in the unsigned case. */ + +#ifdef __WCHAR_MAX__ +# define __WCHAR_MAX __WCHAR_MAX__ +#elif L'\0' - 1 > 0 +# define __WCHAR_MAX (0xffffffffu + L'\0') +#else +# define __WCHAR_MAX (0x7fffffff + L'\0') +#endif + +#ifdef __WCHAR_MIN__ +# define __WCHAR_MIN __WCHAR_MIN__ +#elif L'\0' - 1 > 0 +# define __WCHAR_MIN (L'\0' + 0) +#else +# define __WCHAR_MIN (-__WCHAR_MAX - 1) +#endif + +#endif /* bits/wchar.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wchar.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b0fd14247c525adf25e7edd855aedafad55c3407 GIT binary patch literal 12365 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 P7oL0J@-zDPs^#&2Yf%bg literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h new file mode 100644 index 00000000..70f652bc --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h @@ -0,0 +1,17 @@ +/* Determine the wordsize from the preprocessor defines. */ + +#if defined __x86_64__ && !defined __ILP32__ +# define __WORDSIZE 64 +#else +# define __WORDSIZE 32 +#define __WORDSIZE32_SIZE_ULONG 0 +#define __WORDSIZE32_PTRDIFF_LONG 0 +#endif + +#ifdef __x86_64__ +# define __WORDSIZE_TIME64_COMPAT32 1 +/* Both x86-64 and x32 use the 64-bit system call interface. */ +# define __SYSCALL_WORDSIZE 64 +#else +# define __WORDSIZE_TIME64_COMPAT32 0 +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@bits@wordsize.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..1a5f8586fc6ee5e9776e430cf5243cc6f76e7450 GIT binary patch literal 12374 zcmb7KIm{eM6&~9Jtky;=3lR`mfL3U6@8EyEzns9z_*fa)7_H5e)Z1p9o4VR zKK#$KYfooqX7g25u(_DuWb#B+^;|Kj<{8W8vZ3>W@bYy!J4Xd6my<}7P1T(6a+zej zVN_Mk>6b=NnEmhanRzRlIWMVbGd6#4^X}1n!Ir#CX_c|pSF;aaz4ZRmfQG8m+Pu;7 z2X7W!$+>XpC#_Rk|9gH_uG*C=O1zmtKa&Ljm5iV42eBK-Py z-wWlG`kzBOyS7kGOI3RN&fQzV(M~omz5%-3 z5OEYc%xG1eaF+5a&D)YHUX^mke7iVi5J4aK?&3xSqjJcQJr1bvH$`#C_26`=PUI6* z%eLf@tmvy9^>D;=c7Ov)Vq(C9se5I3NV;MNkJx}3QxvYNnwBb}v-cZ-S!NNy#9cIo z3qno6eDH;PVG!#~K&|7Cfm1j!^}&ZX>ZvpZLqlMu1=*%VfX%GBI6%5urJcw24HH;* z$)GeVKuB9cj0qSKxyqKF{hKixe1Zollp*juNp~}@wPFEOU zq12rz$^oFqJeoI*rAu*I8<2hN(kk?<%|Q(Ugq|E0xD!Dv^1~eiM5ivG2?e}UA>zi= z0|eK;h5*sx_ymZ2!t;Wx1@et^p;59=MI4A+Qi+NZ=n=wJ2R$85^a1bX49t|H(I$9U}@dcN7s(T9Cg=s$x;9yy{ zb7)-`G8xG$B8xd|n$pPV1VAq7{#` z$4GFYUu+0h^$FGnqT~{F1WF1zB0{)eGUhUUa|(DL3^{h zF2HHYl9jCC)H*L&5NT@Qz=J+Ws+yHc(*X>EWG698CPR#Ha_hiOZDh|$&9!bn`04qu zJ2GXd*KM>J?&*BKqQ>4zvS##=fhyX<&tgfC^TOZ8voH)k39JY#WgoO0qo^mC6}hzr?K!-xD*y z1m8y@A)gXnFyQ$kW5F$?sRh6PRIIi&YJcX5vFyhHafEe7zCaE90^12#8wGZ7E;HV> z-~dy)o+EXmK4`E4a>)d=w&U#dItTg^5uS)z9zc#X#-bkNf}?be$^}`5tO62;Y#{f6 zm4IfZ7iMk94Hb-J2TNFBwKRq5pDx-wRixi^#M}wAxvgB^zyFo6a+%$?eL=4*k)JW3AAq z?4Vg0ZXwVU8v;7-*W=M{!xh7>)tb9z1SorN~-WzL@`jQtl%z(B!SU~yF zYv`cDs5Dc^vNuk*dpEgl9iH3-{U5S3RAJ}-Mtk6RuV zamU9cdD#}@gK5`>Xh8G_T#^Uci34h6`w~(gup6N7}f71XkX-yguUhkta$Q1_bP5>K1`btVA=ISK~MwFqoZ8Rf+n-Mr*=8p7hZS<`X z$dBrZVd-g>(0=I6QBw)A z*Ds8qAHkI04fwt+ z>>7N|uB34R(9MP%?1U$nY7+2j3P6%sg3= zF)Cnx3fDG)HYoEEO9q^S%vWK;V}xB}xd+US(uY=2wf5G*M>Q%Ts9);PhSq*k`vmil zBuloaOv4`M4ZDw;a;&nWqSO{6k-S04Elf?k$bx$|vt={`-K3^D{+En5^NK**iC+O) zTsI5s1V9=#VaYgXT4FQJ?T8ASt02gnmwRd$PQy5KB<4REw$Yz|^E3ballgTnV#kI4 ze+0^@ruPZsczJD`O;wxYyyG3op?}|Olxy>k1g=p@RQm76s)a>j78A^mCB*VI{w#;GpjcW z?2&Cw8l%L6^o%BUn@)cD_#W@BWQj=u0Y@r*+{-0)H6sUpXY{G>AW#Yfp8 z(1yM-xsAYg6QO$DzcPbsz%gM>GlSw9`bB-x?eO9d7`bH~zX|iv!*_-@5((%>V?97FW7mm;B=a*+M&cGKh-u%tOhZo-Z;d`m)lRmt2 z?-u;HaO3{HuU~)o#t~3m?fJUX_NiXF0^DD|`10+u`uWw4`v-qx|9=}4owx9nW!}$xJ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h new file mode 100644 index 00000000..e33abe42 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h @@ -0,0 +1,329 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99 Standard 7.4: Character handling + */ + +#ifndef _CTYPE_H +#define _CTYPE_H 1 + +#include +#include + +__BEGIN_DECLS + +#ifndef _ISbit +/* These are all the characteristics of characters. + If there get to be more than 16 distinct characteristics, + many things must be changed that use `unsigned short int's. + + The characteristics are stored always in network byte order (big + endian). We define the bit value interpretations here dependent on the + machine's byte order. */ + +# include +# if __BYTE_ORDER == __BIG_ENDIAN +# define _ISbit(bit) (1 << (bit)) +# else /* __BYTE_ORDER == __LITTLE_ENDIAN */ +# define _ISbit(bit) ((bit) < 8 ? ((1 << (bit)) << 8) : ((1 << (bit)) >> 8)) +# endif + +enum +{ + _ISupper = _ISbit (0), /* UPPERCASE. */ + _ISlower = _ISbit (1), /* lowercase. */ + _ISalpha = _ISbit (2), /* Alphabetic. */ + _ISdigit = _ISbit (3), /* Numeric. */ + _ISxdigit = _ISbit (4), /* Hexadecimal numeric. */ + _ISspace = _ISbit (5), /* Whitespace. */ + _ISprint = _ISbit (6), /* Printing. */ + _ISgraph = _ISbit (7), /* Graphical. */ + _ISblank = _ISbit (8), /* Blank (usually SPC and TAB). */ + _IScntrl = _ISbit (9), /* Control character. */ + _ISpunct = _ISbit (10), /* Punctuation. */ + _ISalnum = _ISbit (11) /* Alphanumeric. */ +}; +#endif /* ! _ISbit */ + +/* These are defined in ctype-info.c. + The declarations here must match those in localeinfo.h. + + In the thread-specific locale model (see `uselocale' in ) + we cannot use global variables for these as was done in the past. + Instead, the following accessor functions return the address of + each variable, which is local to the current thread if multithreaded. + + These point into arrays of 384, so they can be indexed by any `unsigned + char' value [0,255]; by EOF (-1); or by any `signed char' value + [-128,-1). ISO C requires that the ctype functions work for `unsigned + char' values and for EOF; we also support negative `signed char' values + for broken old programs. The case conversion arrays are of `int's + rather than `unsigned char's because tolower (EOF) must be EOF, which + doesn't fit into an `unsigned char'. But today more important is that + the arrays are also used for multi-byte character sets. */ +extern const unsigned short int **__ctype_b_loc (void) + __THROW __attribute__ ((__const__)); +extern const __int32_t **__ctype_tolower_loc (void) + __THROW __attribute__ ((__const__)); +extern const __int32_t **__ctype_toupper_loc (void) + __THROW __attribute__ ((__const__)); + + +#ifndef __cplusplus +# define __isctype(c, type) \ + ((*__ctype_b_loc ())[(int) (c)] & (unsigned short int) type) +#elif defined __USE_EXTERN_INLINES +# define __isctype_f(type) \ + __extern_inline int \ + is##type (int __c) __THROW \ + { \ + return (*__ctype_b_loc ())[(int) (__c)] & (unsigned short int) _IS##type; \ + } +#endif + +#define __isascii(c) (((c) & ~0x7f) == 0) /* If C is a 7 bit value. */ +#define __toascii(c) ((c) & 0x7f) /* Mask off high bits. */ + +#define __exctype(name) extern int name (int) __THROW + +/* The following names are all functions: + int isCHARACTERISTIC(int c); + which return nonzero iff C has CHARACTERISTIC. + For the meaning of the characteristic names, see the `enum' above. */ +__exctype (isalnum); +__exctype (isalpha); +__exctype (iscntrl); +__exctype (isdigit); +__exctype (islower); +__exctype (isgraph); +__exctype (isprint); +__exctype (ispunct); +__exctype (isspace); +__exctype (isupper); +__exctype (isxdigit); + + +/* Return the lowercase version of C. */ +extern int tolower (int __c) __THROW; + +/* Return the uppercase version of C. */ +extern int toupper (int __c) __THROW; + + +/* ISO C99 introduced one new function. */ +#ifdef __USE_ISOC99 +__exctype (isblank); +#endif + +#ifdef __USE_GNU +/* Test C for a set of character classes according to MASK. */ +extern int isctype (int __c, int __mask) __THROW; +#endif + +#if defined __USE_MISC || defined __USE_XOPEN + +/* Return nonzero iff C is in the ASCII set + (i.e., is no more than 7 bits wide). */ +extern int isascii (int __c) __THROW; + +/* Return the part of C that is in the ASCII set + (i.e., the low-order 7 bits of C). */ +extern int toascii (int __c) __THROW; + +/* These are the same as `toupper' and `tolower' except that they do not + check the argument for being in the range of a `char'. */ +__exctype (_toupper); +__exctype (_tolower); +#endif /* Use X/Open or use misc. */ + +/* This code is needed for the optimized mapping functions. */ +#define __tobody(c, f, a, args) \ + (__extension__ \ + ({ int __res; \ + if (sizeof (c) > 1) \ + { \ + if (__builtin_constant_p (c)) \ + { \ + int __c = (c); \ + __res = __c < -128 || __c > 255 ? __c : (a)[__c]; \ + } \ + else \ + __res = f args; \ + } \ + else \ + __res = (a)[(int) (c)]; \ + __res; })) + +#if !defined __NO_CTYPE +# ifdef __isctype_f +__isctype_f (alnum) +__isctype_f (alpha) +__isctype_f (cntrl) +__isctype_f (digit) +__isctype_f (lower) +__isctype_f (graph) +__isctype_f (print) +__isctype_f (punct) +__isctype_f (space) +__isctype_f (upper) +__isctype_f (xdigit) +# ifdef __USE_ISOC99 +__isctype_f (blank) +# endif +# elif defined __isctype +# define isalnum(c) __isctype((c), _ISalnum) +# define isalpha(c) __isctype((c), _ISalpha) +# define iscntrl(c) __isctype((c), _IScntrl) +# define isdigit(c) __isctype((c), _ISdigit) +# define islower(c) __isctype((c), _ISlower) +# define isgraph(c) __isctype((c), _ISgraph) +# define isprint(c) __isctype((c), _ISprint) +# define ispunct(c) __isctype((c), _ISpunct) +# define isspace(c) __isctype((c), _ISspace) +# define isupper(c) __isctype((c), _ISupper) +# define isxdigit(c) __isctype((c), _ISxdigit) +# ifdef __USE_ISOC99 +# define isblank(c) __isctype((c), _ISblank) +# endif +# endif + +# ifdef __USE_EXTERN_INLINES +__extern_inline int +__NTH (tolower (int __c)) +{ + return __c >= -128 && __c < 256 ? (*__ctype_tolower_loc ())[__c] : __c; +} + +__extern_inline int +__NTH (toupper (int __c)) +{ + return __c >= -128 && __c < 256 ? (*__ctype_toupper_loc ())[__c] : __c; +} +# endif + +# if __GNUC__ >= 2 && defined __OPTIMIZE__ && !defined __cplusplus +# define tolower(c) __tobody (c, tolower, *__ctype_tolower_loc (), (c)) +# define toupper(c) __tobody (c, toupper, *__ctype_toupper_loc (), (c)) +# endif /* Optimizing gcc */ + +# if defined __USE_MISC || defined __USE_XOPEN +# define isascii(c) __isascii (c) +# define toascii(c) __toascii (c) + +# define _tolower(c) ((int) (*__ctype_tolower_loc ())[(int) (c)]) +# define _toupper(c) ((int) (*__ctype_toupper_loc ())[(int) (c)]) +# endif + +#endif /* Not __NO_CTYPE. */ + + +#ifdef __USE_XOPEN2K8 +/* POSIX.1-2008 extended locale interface (see locale.h). */ +# include + +/* These definitions are similar to the ones above but all functions + take as an argument a handle for the locale which shall be used. */ +# define __isctype_l(c, type, locale) \ + ((locale)->__ctype_b[(int) (c)] & (unsigned short int) type) + +# define __exctype_l(name) \ + extern int name (int, locale_t) __THROW + +/* The following names are all functions: + int isCHARACTERISTIC(int c, locale_t *locale); + which return nonzero iff C has CHARACTERISTIC. + For the meaning of the characteristic names, see the `enum' above. */ +__exctype_l (isalnum_l); +__exctype_l (isalpha_l); +__exctype_l (iscntrl_l); +__exctype_l (isdigit_l); +__exctype_l (islower_l); +__exctype_l (isgraph_l); +__exctype_l (isprint_l); +__exctype_l (ispunct_l); +__exctype_l (isspace_l); +__exctype_l (isupper_l); +__exctype_l (isxdigit_l); + +__exctype_l (isblank_l); + + +/* Return the lowercase version of C in locale L. */ +extern int __tolower_l (int __c, locale_t __l) __THROW; +extern int tolower_l (int __c, locale_t __l) __THROW; + +/* Return the uppercase version of C. */ +extern int __toupper_l (int __c, locale_t __l) __THROW; +extern int toupper_l (int __c, locale_t __l) __THROW; + +# if __GNUC__ >= 2 && defined __OPTIMIZE__ && !defined __cplusplus +# define __tolower_l(c, locale) \ + __tobody (c, __tolower_l, (locale)->__ctype_tolower, (c, locale)) +# define __toupper_l(c, locale) \ + __tobody (c, __toupper_l, (locale)->__ctype_toupper, (c, locale)) +# define tolower_l(c, locale) __tolower_l ((c), (locale)) +# define toupper_l(c, locale) __toupper_l ((c), (locale)) +# endif /* Optimizing gcc */ + + +# ifndef __NO_CTYPE +# define __isalnum_l(c,l) __isctype_l((c), _ISalnum, (l)) +# define __isalpha_l(c,l) __isctype_l((c), _ISalpha, (l)) +# define __iscntrl_l(c,l) __isctype_l((c), _IScntrl, (l)) +# define __isdigit_l(c,l) __isctype_l((c), _ISdigit, (l)) +# define __islower_l(c,l) __isctype_l((c), _ISlower, (l)) +# define __isgraph_l(c,l) __isctype_l((c), _ISgraph, (l)) +# define __isprint_l(c,l) __isctype_l((c), _ISprint, (l)) +# define __ispunct_l(c,l) __isctype_l((c), _ISpunct, (l)) +# define __isspace_l(c,l) __isctype_l((c), _ISspace, (l)) +# define __isupper_l(c,l) __isctype_l((c), _ISupper, (l)) +# define __isxdigit_l(c,l) __isctype_l((c), _ISxdigit, (l)) + +# define __isblank_l(c,l) __isctype_l((c), _ISblank, (l)) + +# ifdef __USE_MISC +# define __isascii_l(c,l) ((l), __isascii (c)) +# define __toascii_l(c,l) ((l), __toascii (c)) +# endif + +# define isalnum_l(c,l) __isalnum_l ((c), (l)) +# define isalpha_l(c,l) __isalpha_l ((c), (l)) +# define iscntrl_l(c,l) __iscntrl_l ((c), (l)) +# define isdigit_l(c,l) __isdigit_l ((c), (l)) +# define islower_l(c,l) __islower_l ((c), (l)) +# define isgraph_l(c,l) __isgraph_l ((c), (l)) +# define isprint_l(c,l) __isprint_l ((c), (l)) +# define ispunct_l(c,l) __ispunct_l ((c), (l)) +# define isspace_l(c,l) __isspace_l ((c), (l)) +# define isupper_l(c,l) __isupper_l ((c), (l)) +# define isxdigit_l(c,l) __isxdigit_l ((c), (l)) + +# define isblank_l(c,l) __isblank_l ((c), (l)) + +# ifdef __USE_MISC +# define isascii_l(c,l) __isascii_l ((c), (l)) +# define toascii_l(c,l) __toascii_l ((c), (l)) +# endif + +# endif /* Not __NO_CTYPE. */ + +#endif /* Use POSIX 2008. */ + +__END_DECLS + +#endif /* ctype.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@ctype.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..28e76f166a37c04e449e19e1c436140d16ac745b GIT binary patch literal 24312 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͛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 KQ1Oi+?=<$nqQ literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h new file mode 100644 index 00000000..37be2030 --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h @@ -0,0 +1,408 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * POSIX Standard: 5.1.2 Directory Operations + */ + +#ifndef _DIRENT_H +#define _DIRENT_H 1 + +#include + +__BEGIN_DECLS + +#include + +#ifdef __USE_XOPEN +# ifndef __ino_t_defined +# ifndef __USE_FILE_OFFSET64 +typedef __ino_t ino_t; +# else +typedef __ino64_t ino_t; +# endif +# define __ino_t_defined +# endif +# if defined __USE_LARGEFILE64 && !defined __ino64_t_defined +typedef __ino64_t ino64_t; +# define __ino64_t_defined +# endif +#endif + +/* This file defines `struct dirent'. + + It defines the macro `_DIRENT_HAVE_D_NAMLEN' iff there is a `d_namlen' + member that gives the length of `d_name'. + + It defines the macro `_DIRENT_HAVE_D_RECLEN' iff there is a `d_reclen' + member that gives the size of the entire directory entry. + + It defines the macro `_DIRENT_HAVE_D_OFF' iff there is a `d_off' + member that gives the file offset of the next directory entry. + + It defines the macro `_DIRENT_HAVE_D_TYPE' iff there is a `d_type' + member that gives the type of the file. + */ + +#include + +#if defined __USE_MISC && !defined d_fileno +# define d_ino d_fileno /* Backward compatibility. */ +#endif + +/* These macros extract size information from a `struct dirent *'. + They may evaluate their argument multiple times, so it must not + have side effects. Each of these may involve a relatively costly + call to `strlen' on some systems, so these values should be cached. + + _D_EXACT_NAMLEN (DP) returns the length of DP->d_name, not including + its terminating null character. + + _D_ALLOC_NAMLEN (DP) returns a size at least (_D_EXACT_NAMLEN (DP) + 1); + that is, the allocation size needed to hold the DP->d_name string. + Use this macro when you don't need the exact length, just an upper bound. + This macro is less likely to require calling `strlen' than _D_EXACT_NAMLEN. + */ + +#ifdef _DIRENT_HAVE_D_NAMLEN +# define _D_EXACT_NAMLEN(d) ((d)->d_namlen) +# define _D_ALLOC_NAMLEN(d) (_D_EXACT_NAMLEN (d) + 1) +#else +# define _D_EXACT_NAMLEN(d) (strlen ((d)->d_name)) +# ifdef _DIRENT_HAVE_D_RECLEN +# define _D_ALLOC_NAMLEN(d) (((char *) (d) + (d)->d_reclen) - &(d)->d_name[0]) +# else +# define _D_ALLOC_NAMLEN(d) (sizeof (d)->d_name > 1 ? sizeof (d)->d_name \ + : _D_EXACT_NAMLEN (d) + 1) +# endif +#endif + + +#ifdef __USE_MISC +/* File types for `d_type'. */ +enum + { + DT_UNKNOWN = 0, +# define DT_UNKNOWN DT_UNKNOWN + DT_FIFO = 1, +# define DT_FIFO DT_FIFO + DT_CHR = 2, +# define DT_CHR DT_CHR + DT_DIR = 4, +# define DT_DIR DT_DIR + DT_BLK = 6, +# define DT_BLK DT_BLK + DT_REG = 8, +# define DT_REG DT_REG + DT_LNK = 10, +# define DT_LNK DT_LNK + DT_SOCK = 12, +# define DT_SOCK DT_SOCK + DT_WHT = 14 +# define DT_WHT DT_WHT + }; + +/* Convert between stat structure types and directory types. */ +# define IFTODT(mode) (((mode) & 0170000) >> 12) +# define DTTOIF(dirtype) ((dirtype) << 12) +#endif + + +/* This is the data type of directory stream objects. + The actual structure is opaque to users. */ +typedef struct __dirstream DIR; + +/* Close the directory stream DIRP. + Return 0 if successful, -1 if not. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int closedir (DIR *__dirp) __nonnull ((1)); + +/* Open a directory stream on NAME. + Return a DIR stream on the directory, or NULL if it could not be opened. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern DIR *opendir (const char *__name) __nonnull ((1)) + __attribute_malloc__ __attr_dealloc (closedir, 1); + +#ifdef __USE_XOPEN2K8 +/* Same as opendir, but open the stream on the file descriptor FD. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern DIR *fdopendir (int __fd) + __attribute_malloc__ __attr_dealloc (closedir, 1); +#endif + +/* Read a directory entry from DIRP. Return a pointer to a `struct + dirent' describing the entry, or NULL for EOF or error. The + storage returned may be overwritten by a later readdir call on the + same DIR stream. + + If the Large File Support API is selected we have to use the + appropriate interface. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +#ifndef __USE_FILE_OFFSET64 +extern struct dirent *readdir (DIR *__dirp) __nonnull ((1)); +#else +# ifdef __REDIRECT +extern struct dirent *__REDIRECT (readdir, (DIR *__dirp), readdir64) + __nonnull ((1)); +# else +# define readdir readdir64 +# endif +#endif + +#ifdef __USE_LARGEFILE64 +extern struct dirent64 *readdir64 (DIR *__dirp) __nonnull ((1)); +#endif + +#ifdef __USE_POSIX +/* Reentrant version of `readdir'. Return in RESULT a pointer to the + next entry. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +# ifndef __USE_FILE_OFFSET64 +extern int readdir_r (DIR *__restrict __dirp, + struct dirent *__restrict __entry, + struct dirent **__restrict __result) + __nonnull ((1, 2, 3)) __attribute_deprecated__; +# else +# ifdef __REDIRECT +extern int __REDIRECT (readdir_r, + (DIR *__restrict __dirp, + struct dirent *__restrict __entry, + struct dirent **__restrict __result), + readdir64_r) + __nonnull ((1, 2, 3)) __attribute_deprecated__; +# else +# define readdir_r readdir64_r +# endif +# endif + +# ifdef __USE_LARGEFILE64 +extern int readdir64_r (DIR *__restrict __dirp, + struct dirent64 *__restrict __entry, + struct dirent64 **__restrict __result) + __nonnull ((1, 2, 3)) __attribute_deprecated__; +# endif +#endif /* POSIX or misc */ + +/* Rewind DIRP to the beginning of the directory. */ +extern void rewinddir (DIR *__dirp) __THROW __nonnull ((1)); + +#if defined __USE_MISC || defined __USE_XOPEN +# include + +/* Seek to position POS on DIRP. */ +extern void seekdir (DIR *__dirp, long int __pos) __THROW __nonnull ((1)); + +/* Return the current position of DIRP. */ +extern long int telldir (DIR *__dirp) __THROW __nonnull ((1)); +#endif + +#ifdef __USE_XOPEN2K8 + +/* Return the file descriptor used by DIRP. */ +extern int dirfd (DIR *__dirp) __THROW __nonnull ((1)); + +# if defined __OPTIMIZE__ && defined _DIR_dirfd +# define dirfd(dirp) _DIR_dirfd (dirp) +# endif + +# ifdef __USE_MISC +# ifndef MAXNAMLEN +/* Get the definitions of the POSIX.1 limits. */ +# include + +/* `MAXNAMLEN' is the BSD name for what POSIX calls `NAME_MAX'. */ +# ifdef NAME_MAX +# define MAXNAMLEN NAME_MAX +# else +# define MAXNAMLEN 255 +# endif +# endif +# endif + +# define __need_size_t +# include + +/* Scan the directory DIR, calling SELECTOR on each directory entry. + Entries for which SELECT returns nonzero are individually malloc'd, + sorted using qsort with CMP, and collected in a malloc'd array in + *NAMELIST. Returns the number of entries selected, or -1 on error. + + This function is a cancellation point and therefore not marked with + __THROW. */ +# ifndef __USE_FILE_OFFSET64 +extern int scandir (const char *__restrict __dir, + struct dirent ***__restrict __namelist, + int (*__selector) (const struct dirent *), + int (*__cmp) (const struct dirent **, + const struct dirent **)) + __nonnull ((1, 2)); +# else +# ifdef __REDIRECT +extern int __REDIRECT (scandir, + (const char *__restrict __dir, + struct dirent ***__restrict __namelist, + int (*__selector) (const struct dirent *), + int (*__cmp) (const struct dirent **, + const struct dirent **)), + scandir64) __nonnull ((1, 2)); +# else +# define scandir scandir64 +# endif +# endif + +# if defined __USE_GNU && defined __USE_LARGEFILE64 +/* This function is like `scandir' but it uses the 64bit dirent structure. + Please note that the CMP function must now work with struct dirent64 **. */ +extern int scandir64 (const char *__restrict __dir, + struct dirent64 ***__restrict __namelist, + int (*__selector) (const struct dirent64 *), + int (*__cmp) (const struct dirent64 **, + const struct dirent64 **)) + __nonnull ((1, 2)); +# endif + +# ifdef __USE_GNU +/* Similar to `scandir' but a relative DIR name is interpreted relative + to the directory for which DFD is a descriptor. + + This function is a cancellation point and therefore not marked with + __THROW. */ +# ifndef __USE_FILE_OFFSET64 +extern int scandirat (int __dfd, const char *__restrict __dir, + struct dirent ***__restrict __namelist, + int (*__selector) (const struct dirent *), + int (*__cmp) (const struct dirent **, + const struct dirent **)) + __nonnull ((2, 3)); +# else +# ifdef __REDIRECT +extern int __REDIRECT (scandirat, + (int __dfd, const char *__restrict __dir, + struct dirent ***__restrict __namelist, + int (*__selector) (const struct dirent *), + int (*__cmp) (const struct dirent **, + const struct dirent **)), + scandirat64) __nonnull ((2, 3)); +# else +# define scandirat scandirat64 +# endif +# endif + +/* This function is like `scandir' but it uses the 64bit dirent structure. + Please note that the CMP function must now work with struct dirent64 **. */ +extern int scandirat64 (int __dfd, const char *__restrict __dir, + struct dirent64 ***__restrict __namelist, + int (*__selector) (const struct dirent64 *), + int (*__cmp) (const struct dirent64 **, + const struct dirent64 **)) + __nonnull ((2, 3)); +# endif + +/* Function to compare two `struct dirent's alphabetically. */ +# ifndef __USE_FILE_OFFSET64 +extern int alphasort (const struct dirent **__e1, + const struct dirent **__e2) + __THROW __attribute_pure__ __nonnull ((1, 2)); +# else +# ifdef __REDIRECT +extern int __REDIRECT_NTH (alphasort, + (const struct dirent **__e1, + const struct dirent **__e2), + alphasort64) __attribute_pure__ __nonnull ((1, 2)); +# else +# define alphasort alphasort64 +# endif +# endif + +# if defined __USE_GNU && defined __USE_LARGEFILE64 +extern int alphasort64 (const struct dirent64 **__e1, + const struct dirent64 **__e2) + __THROW __attribute_pure__ __nonnull ((1, 2)); +# endif +#endif /* Use XPG7. */ + + +#ifdef __USE_MISC +/* Read directory entries from FD into BUF, reading at most NBYTES. + Reading starts at offset *BASEP, and *BASEP is updated with the new + position after reading. Returns the number of bytes read; zero when at + end of directory; or -1 for errors. */ +# ifndef __USE_FILE_OFFSET64 +extern __ssize_t getdirentries (int __fd, char *__restrict __buf, + size_t __nbytes, + __off_t *__restrict __basep) + __THROW __nonnull ((2, 4)); +# else +# ifdef __REDIRECT +extern __ssize_t __REDIRECT_NTH (getdirentries, + (int __fd, char *__restrict __buf, + size_t __nbytes, + __off64_t *__restrict __basep), + getdirentries64) __nonnull ((2, 4)); +# else +# define getdirentries getdirentries64 +# endif +# endif + +# ifdef __USE_LARGEFILE64 +extern __ssize_t getdirentries64 (int __fd, char *__restrict __buf, + size_t __nbytes, + __off64_t *__restrict __basep) + __THROW __nonnull ((2, 4)); +# endif +#endif /* Use misc. */ + +#ifdef __USE_GNU +/* Function to compare two `struct dirent's by name & version. */ +# ifndef __USE_FILE_OFFSET64 +extern int versionsort (const struct dirent **__e1, + const struct dirent **__e2) + __THROW __attribute_pure__ __nonnull ((1, 2)); +# else +# ifdef __REDIRECT +extern int __REDIRECT_NTH (versionsort, + (const struct dirent **__e1, + const struct dirent **__e2), + versionsort64) + __attribute_pure__ __nonnull ((1, 2)); +# else +# define versionsort versionsort64 +# endif +# endif + +# ifdef __USE_LARGEFILE64 +extern int versionsort64 (const struct dirent64 **__e1, + const struct dirent64 **__e2) + __THROW __attribute_pure__ __nonnull ((1, 2)); +# endif +#endif /* Use GNU. */ + +__END_DECLS + +#include + +#endif /* dirent.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@dirent.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..7fc6215ca2c152d499924e562c2d2520193ad58b GIT binary patch literal 18651 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 fgJ%z+pg0c&1)92e>PLZwPB)%(. */ + +#ifndef _ENDIAN_H +#define _ENDIAN_H 1 + +#include + +/* Get the definitions of __*_ENDIAN, __BYTE_ORDER, and __FLOAT_WORD_ORDER. */ +#include + +#ifdef __USE_MISC +# define LITTLE_ENDIAN __LITTLE_ENDIAN +# define BIG_ENDIAN __BIG_ENDIAN +# define PDP_ENDIAN __PDP_ENDIAN +# define BYTE_ORDER __BYTE_ORDER +#endif + +#if defined __USE_MISC && !defined __ASSEMBLER__ +/* Conversion interfaces. */ +# include +# include + +# if __BYTE_ORDER == __LITTLE_ENDIAN +# define htobe16(x) __bswap_16 (x) +# define htole16(x) __uint16_identity (x) +# define be16toh(x) __bswap_16 (x) +# define le16toh(x) __uint16_identity (x) + +# define htobe32(x) __bswap_32 (x) +# define htole32(x) __uint32_identity (x) +# define be32toh(x) __bswap_32 (x) +# define le32toh(x) __uint32_identity (x) + +# define htobe64(x) __bswap_64 (x) +# define htole64(x) __uint64_identity (x) +# define be64toh(x) __bswap_64 (x) +# define le64toh(x) __uint64_identity (x) + +# else +# define htobe16(x) __uint16_identity (x) +# define htole16(x) __bswap_16 (x) +# define be16toh(x) __uint16_identity (x) +# define le16toh(x) __bswap_16 (x) + +# define htobe32(x) __uint32_identity (x) +# define htole32(x) __bswap_32 (x) +# define be32toh(x) __uint32_identity (x) +# define le32toh(x) __bswap_32 (x) + +# define htobe64(x) __uint64_identity (x) +# define htole64(x) __bswap_64 (x) +# define be64toh(x) __uint64_identity (x) +# define le64toh(x) __bswap_64 (x) +# endif +#endif + +#endif /* endian.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@endian.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..5118c7b09bf220f049cd15980eae1cb24e67cfa9 GIT binary patch literal 13582 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 literal 0 HcmV?d00001 diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h new file mode 100644 index 00000000..d15d890d --- /dev/null +++ b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h @@ -0,0 +1,55 @@ +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* + * ISO C99 Standard: 7.5 Errors + */ + +#ifndef _ERRNO_H +#define _ERRNO_H 1 + +#include + +/* The system-specific definitions of the E* constants, as macros. */ +#include + +/* When included from assembly language, this header only provides the + E* constants. */ +#ifndef __ASSEMBLER__ + +__BEGIN_DECLS + +/* The error code set by various library functions. */ +extern int *__errno_location (void) __THROW __attribute_const__; +# define errno (*__errno_location ()) + +# ifdef __USE_GNU + +/* The full and simple forms of the name with which the program was + invoked. These variables are set up automatically at startup based on + the value of argv[0]. */ +extern char *program_invocation_name; +extern char *program_invocation_short_name; + +#include + +# endif /* __USE_GNU */ + +__END_DECLS + +#endif /* !__ASSEMBLER__ */ +#endif /* errno.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@errno.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..d3027c821b7e335eccd3323e58f7d7dceca55c1a GIT binary patch literal 12553 zcmb7KO^h5z6`nN`2V@}&gk@PACa?k9q&?YnSownZabgE>Vi8DWfuO0WuAV7x^^d!{ zXJ##k5T^*i6+{#`e0Eke)Gqkm%*w{g=>^DqMk`lQfrco)N}6vuEJvV>4U?x zJU9wyqV1#HlKV!nN9pI&69|AMDR-YK>ttFKLJ@Y1rdgGRS8HiLy(*Z2*BO(Ae$;BbnViR zxN|1>N{R66-+s%NQ>uezPG^-3sC2V5=K-m-!AP>hHv$-yLWXQ{Kz+Z= zvR$qRr_1_SK0vi>at_IgKH5+ZM@(x6I3OoF1{|2$N1BJEbGGw{C8#k(;j$=cUI%n` zegiN|3 z8LS-c_>4;&3><~&)08JWfHBLP2{gA;8TDiyk=cY*RjzGt>Cq4U7TH8DtM6q4dQOWX zx;`ZLcSnnJtg}68r$tFc)`ZC1Pe{p?Zr}OoS-*eMg=?)_Z@avva~X{qdnL(&(Oveon4%iCqo;;o3OI3L z0RB3{92JGK?UESs+?>dHX2!Im@3i4r_VmLBOGIX+)*96$H%~%h%+# z>A|ZdAhKVYESWoAO?A+J)J#u|co2a!G@3I4ZC?b{ZX?h)JMcE%7Q8C*49YkjaheJS z#0c6iG?g?#+kEMyL#aR{NEP&vW>D7i3Ix_s6p_lzNe+-YR+tK?aarH~L-l73)Z&`0 z0y0C{Xit7L&6J2KzC#)xP{cU;EnU4+E&%uQ&EWJdQcFD zSnuQtRL3u{zktP(X9w#t?Og*7FvqJ&Q?>G)7R)1;OhEJ7&rU6TpmP!aiKyiPOjsrO4X=TkeScQBeBQ^a_?9gC}wJ<*7)2|!AP>Rgn3qrW2pY|v`OQdtal+HcLHr{ zD%ZE~e8I0=I=HDQq}nKLEfG;^(b8UF-&1zSl)moj;;&$=o2O=uya+()BU%$PN{KJp+piyk@as1)DmA&?C_^{5b7D!yt?f|0tzK&`F)y& z!f#XawXp`NFL_qNlxV7h0hI4O@r^(`wGOSmR4oYX4rq~OMW`iEyYYkG-FT<_R?2i@ zd7XA@mFs!Q3ktOr=}f1nsny~GqPLUiC~=m-noB@er%uMLVekgP7~A6Vn_#b|D>k3KB2Q6C)$&0TD zG=;gEiGzLJ?p5Ui)>iA=j*z$~MCQCKP3!yf*I)F@s1^y@0=9tmd3*U2VynHajQa>} zw7kO4l|Gd$nGb2GHw?(CCDE2kdSSViE0NUdIszQoX!b2q7tc4t3*qww@c0he8i{+L;_7Dpm*v6|* zX!sOnA=D=XnDppNFy*%czAFpc0w{=V7vi3GeL54OV6;H*ufisRt#ex@9j2m^rQm#x z-A*u+3|!SSe0uW1yIBM?PZA}J3fP~*wT-6@%Dl&t9%nD}Yd_&J!nU#80%l9;LMtm8 zbL-%u8kG>#&sAtcYd@%cf_X@i8JiZmVGr|$-A73|R@qTeN`sL|-k{_LrUqVQ!9APa zGU|bDP}3a#j>egJPN40?uK*3M>jicMAPt+as2?;9v7Y8OM1{?j7i8AUYihWj@Z->u z=r3v5Qoa7t$NupL{c&Buj#Kr836xVs?-IuHa@tnQqSVJZ$6JzJU&om!SLW{tT&1f*2{{c1qS6T9t`~CCTrm8LFv`8o-?qX8F33c z8c9js+0R-(s7sDri*j|vSM+XB*5^QMYd3Vn)xOgB>Vq|E9=I7(Ta4ko8qG>dS0owi z+7<~QV^K6frLyR;2!B^&&FYK-dt{T7+9;uMZoSC5_e%STWl$0@YWVv}y)n{DM_2f) zc-kQ?Zn!9ORDolAK4a;7U_35QW!IR6Q3m3+t(bwi|tlRLh!qhRCaXdX4 zFG$6qff|Eo6{$|f>-l5^KW9gyz5NUO*Z21JNBb|sKi+@(;r%Oro_+bXf9r$bKOguw zw8cEvyz^pwsUySq(&fv*=J5|b{?Rk)_m@Ved+^@rn{U7VV)5T^{tW(hKYROk_h0_p z-f4R4%E67x2d}vY@W?;?)|LXpmH-GOv+kbZdC3yC?AAICr$ESb4>pgpH v^w>ps_Q7-Cjec?3{3?Ftg%_T`6F&. */ + +/* We need to know the word size in order to check the time size. */ +#include +#include + +#if defined _TIME_BITS +# if _TIME_BITS == 64 +# if ! defined (_FILE_OFFSET_BITS) || _FILE_OFFSET_BITS != 64 +# error "_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64" +# elif __TIMESIZE == 32 +# define __USE_TIME_BITS64 1 +# endif +# elif _TIME_BITS == 32 +# if __TIMESIZE > 32 +# error "_TIME_BITS=32 is not compatible with __TIMESIZE > 32" +# endif +# else +# error Invalid _TIME_BITS value (can only be 32 or 64-bit) +# endif +#endif diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features-time64.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..b8c047063b05db3ad8275231729c1880b76802f8 GIT binary patch literal 12191 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. */ + +#ifndef _FEATURES_H +#define _FEATURES_H 1 + +/* These are defined by the user (or the compiler) + to specify the desired environment: + + __STRICT_ANSI__ ISO Standard C. + _ISOC99_SOURCE Extensions to ISO C89 from ISO C99. + _ISOC11_SOURCE Extensions to ISO C99 from ISO C11. + _ISOC2X_SOURCE Extensions to ISO C99 from ISO C2X. + __STDC_WANT_LIB_EXT2__ + Extensions to ISO C99 from TR 27431-2:2010. + __STDC_WANT_IEC_60559_BFP_EXT__ + Extensions to ISO C11 from TS 18661-1:2014. + __STDC_WANT_IEC_60559_FUNCS_EXT__ + Extensions to ISO C11 from TS 18661-4:2015. + __STDC_WANT_IEC_60559_TYPES_EXT__ + Extensions to ISO C11 from TS 18661-3:2015. + __STDC_WANT_IEC_60559_EXT__ + ISO C2X interfaces defined only in Annex F. + + _POSIX_SOURCE IEEE Std 1003.1. + _POSIX_C_SOURCE If ==1, like _POSIX_SOURCE; if >=2 add IEEE Std 1003.2; + if >=199309L, add IEEE Std 1003.1b-1993; + if >=199506L, add IEEE Std 1003.1c-1995; + if >=200112L, all of IEEE 1003.1-2004 + if >=200809L, all of IEEE 1003.1-2008 + _XOPEN_SOURCE Includes POSIX and XPG things. Set to 500 if + Single Unix conformance is wanted, to 600 for the + sixth revision, to 700 for the seventh revision. + _XOPEN_SOURCE_EXTENDED XPG things and X/Open Unix extensions. + _LARGEFILE_SOURCE Some more functions for correct standard I/O. + _LARGEFILE64_SOURCE Additional functionality from LFS for large files. + _FILE_OFFSET_BITS=N Select default filesystem interface. + _ATFILE_SOURCE Additional *at interfaces. + _DYNAMIC_STACK_SIZE_SOURCE Select correct (but non compile-time constant) + MINSIGSTKSZ, SIGSTKSZ and PTHREAD_STACK_MIN. + _GNU_SOURCE All of the above, plus GNU extensions. + _DEFAULT_SOURCE The default set of features (taking precedence over + __STRICT_ANSI__). + + _FORTIFY_SOURCE Add security hardening to many library functions. + Set to 1, 2 or 3; 3 performs stricter checks than 2, which + performs stricter checks than 1. + + _REENTRANT, _THREAD_SAFE + Obsolete; equivalent to _POSIX_C_SOURCE=199506L. + + The `-ansi' switch to the GNU C compiler, and standards conformance + options such as `-std=c99', define __STRICT_ANSI__. If none of + these are defined, or if _DEFAULT_SOURCE is defined, the default is + to have _POSIX_SOURCE set to one and _POSIX_C_SOURCE set to + 200809L, as well as enabling miscellaneous functions from BSD and + SVID. If more than one of these are defined, they accumulate. For + example __STRICT_ANSI__, _POSIX_SOURCE and _POSIX_C_SOURCE together + give you ISO C, 1003.1, and 1003.2, but nothing else. + + These are defined by this file and are used by the + header files to decide what to declare or define: + + __GLIBC_USE (F) Define things from feature set F. This is defined + to 1 or 0; the subsequent macros are either defined + or undefined, and those tests should be moved to + __GLIBC_USE. + __USE_ISOC11 Define ISO C11 things. + __USE_ISOC99 Define ISO C99 things. + __USE_ISOC95 Define ISO C90 AMD1 (C95) things. + __USE_ISOCXX11 Define ISO C++11 things. + __USE_POSIX Define IEEE Std 1003.1 things. + __USE_POSIX2 Define IEEE Std 1003.2 things. + __USE_POSIX199309 Define IEEE Std 1003.1, and .1b things. + __USE_POSIX199506 Define IEEE Std 1003.1, .1b, .1c and .1i things. + __USE_XOPEN Define XPG things. + __USE_XOPEN_EXTENDED Define X/Open Unix things. + __USE_UNIX98 Define Single Unix V2 things. + __USE_XOPEN2K Define XPG6 things. + __USE_XOPEN2KXSI Define XPG6 XSI things. + __USE_XOPEN2K8 Define XPG7 things. + __USE_XOPEN2K8XSI Define XPG7 XSI things. + __USE_LARGEFILE Define correct standard I/O things. + __USE_LARGEFILE64 Define LFS things with separate names. + __USE_FILE_OFFSET64 Define 64bit interface as default. + __USE_MISC Define things from 4.3BSD or System V Unix. + __USE_ATFILE Define *at interfaces and AT_* constants for them. + __USE_DYNAMIC_STACK_SIZE Define correct (but non compile-time constant) + MINSIGSTKSZ, SIGSTKSZ and PTHREAD_STACK_MIN. + __USE_GNU Define GNU extensions. + __USE_FORTIFY_LEVEL Additional security measures used, according to level. + + The macros `__GNU_LIBRARY__', `__GLIBC__', and `__GLIBC_MINOR__' are + defined by this file unconditionally. `__GNU_LIBRARY__' is provided + only for compatibility. All new code should use the other symbols + to test for features. + + All macros listed above as possibly being defined by this file are + explicitly undefined if they are not explicitly defined. + Feature-test macros that are not defined by the user or compiler + but are implied by the other feature-test macros defined (or by the + lack of any definitions) are defined by the file. + + ISO C feature test macros depend on the definition of the macro + when an affected header is included, not when the first system + header is included, and so they are handled in + , which does not have a multiple include + guard. Feature test macros that can be handled from the first + system header included are handled here. */ + + +/* Undefine everything, so we get a clean slate. */ +#undef __USE_ISOC11 +#undef __USE_ISOC99 +#undef __USE_ISOC95 +#undef __USE_ISOCXX11 +#undef __USE_POSIX +#undef __USE_POSIX2 +#undef __USE_POSIX199309 +#undef __USE_POSIX199506 +#undef __USE_XOPEN +#undef __USE_XOPEN_EXTENDED +#undef __USE_UNIX98 +#undef __USE_XOPEN2K +#undef __USE_XOPEN2KXSI +#undef __USE_XOPEN2K8 +#undef __USE_XOPEN2K8XSI +#undef __USE_LARGEFILE +#undef __USE_LARGEFILE64 +#undef __USE_FILE_OFFSET64 +#undef __USE_MISC +#undef __USE_ATFILE +#undef __USE_DYNAMIC_STACK_SIZE +#undef __USE_GNU +#undef __USE_FORTIFY_LEVEL +#undef __KERNEL_STRICT_NAMES +#undef __GLIBC_USE_ISOC2X +#undef __GLIBC_USE_DEPRECATED_GETS +#undef __GLIBC_USE_DEPRECATED_SCANF +#undef __GLIBC_USE_C2X_STRTOL + +/* Suppress kernel-name space pollution unless user expressedly asks + for it. */ +#ifndef _LOOSE_KERNEL_NAMES +# define __KERNEL_STRICT_NAMES +#endif + +/* Convenience macro to test the version of gcc. + Use like this: + #if __GNUC_PREREQ (2,8) + ... code requiring gcc 2.8 or later ... + #endif + Note: only works for GCC 2.0 and later, because __GNUC_MINOR__ was + added in 2.0. */ +#if defined __GNUC__ && defined __GNUC_MINOR__ +# define __GNUC_PREREQ(maj, min) \ + ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) +#else +# define __GNUC_PREREQ(maj, min) 0 +#endif + +/* Similarly for clang. Features added to GCC after version 4.2 may + or may not also be available in clang, and clang's definitions of + __GNUC(_MINOR)__ are fixed at 4 and 2 respectively. Not all such + features can be queried via __has_extension/__has_feature. */ +#if defined __clang_major__ && defined __clang_minor__ +# define __glibc_clang_prereq(maj, min) \ + ((__clang_major__ << 16) + __clang_minor__ >= ((maj) << 16) + (min)) +#else +# define __glibc_clang_prereq(maj, min) 0 +#endif + +/* Whether to use feature set F. */ +#define __GLIBC_USE(F) __GLIBC_USE_ ## F + +/* _BSD_SOURCE and _SVID_SOURCE are deprecated aliases for + _DEFAULT_SOURCE. If _DEFAULT_SOURCE is present we do not + issue a warning; the expectation is that the source is being + transitioned to use the new macro. */ +#if (defined _BSD_SOURCE || defined _SVID_SOURCE) \ + && !defined _DEFAULT_SOURCE +# warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" +# undef _DEFAULT_SOURCE +# define _DEFAULT_SOURCE 1 +#endif + +/* If _GNU_SOURCE was defined by the user, turn on all the other features. */ +#ifdef _GNU_SOURCE +# undef _ISOC95_SOURCE +# define _ISOC95_SOURCE 1 +# undef _ISOC99_SOURCE +# define _ISOC99_SOURCE 1 +# undef _ISOC11_SOURCE +# define _ISOC11_SOURCE 1 +# undef _ISOC2X_SOURCE +# define _ISOC2X_SOURCE 1 +# undef _POSIX_SOURCE +# define _POSIX_SOURCE 1 +# undef _POSIX_C_SOURCE +# define _POSIX_C_SOURCE 200809L +# undef _XOPEN_SOURCE +# define _XOPEN_SOURCE 700 +# undef _XOPEN_SOURCE_EXTENDED +# define _XOPEN_SOURCE_EXTENDED 1 +# undef _LARGEFILE64_SOURCE +# define _LARGEFILE64_SOURCE 1 +# undef _DEFAULT_SOURCE +# define _DEFAULT_SOURCE 1 +# undef _ATFILE_SOURCE +# define _ATFILE_SOURCE 1 +# undef _DYNAMIC_STACK_SIZE_SOURCE +# define _DYNAMIC_STACK_SIZE_SOURCE 1 +#endif + +/* If nothing (other than _GNU_SOURCE and _DEFAULT_SOURCE) is defined, + define _DEFAULT_SOURCE. */ +#if (defined _DEFAULT_SOURCE \ + || (!defined __STRICT_ANSI__ \ + && !defined _ISOC99_SOURCE && !defined _ISOC11_SOURCE \ + && !defined _ISOC2X_SOURCE \ + && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE \ + && !defined _XOPEN_SOURCE)) +# undef _DEFAULT_SOURCE +# define _DEFAULT_SOURCE 1 +#endif + +/* This is to enable the ISO C2X extension. */ +#if (defined _ISOC2X_SOURCE \ + || (defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L)) +# define __GLIBC_USE_ISOC2X 1 +#else +# define __GLIBC_USE_ISOC2X 0 +#endif + +/* This is to enable the ISO C11 extension. */ +#if (defined _ISOC11_SOURCE || defined _ISOC2X_SOURCE \ + || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L)) +# define __USE_ISOC11 1 +#endif + +/* This is to enable the ISO C99 extension. */ +#if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE \ + || defined _ISOC2X_SOURCE \ + || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) +# define __USE_ISOC99 1 +#endif + +/* This is to enable the ISO C90 Amendment 1:1995 extension. */ +#if (defined _ISOC99_SOURCE || defined _ISOC11_SOURCE \ + || defined _ISOC2X_SOURCE \ + || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199409L)) +# define __USE_ISOC95 1 +#endif + +#ifdef __cplusplus +/* This is to enable compatibility for ISO C++17. */ +# if __cplusplus >= 201703L +# define __USE_ISOC11 1 +# endif +/* This is to enable compatibility for ISO C++11. + Check the temporary macro for now, too. */ +# if __cplusplus >= 201103L || defined __GXX_EXPERIMENTAL_CXX0X__ +# define __USE_ISOCXX11 1 +# define __USE_ISOC99 1 +# endif +#endif + +/* If none of the ANSI/POSIX macros are defined, or if _DEFAULT_SOURCE + is defined, use POSIX.1-2008 (or another version depending on + _XOPEN_SOURCE). */ +#ifdef _DEFAULT_SOURCE +# if !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE +# define __USE_POSIX_IMPLICITLY 1 +# endif +# undef _POSIX_SOURCE +# define _POSIX_SOURCE 1 +# undef _POSIX_C_SOURCE +# define _POSIX_C_SOURCE 200809L +#endif + +#if ((!defined __STRICT_ANSI__ \ + || (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500)) \ + && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE) +# define _POSIX_SOURCE 1 +# if defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 500 +# define _POSIX_C_SOURCE 2 +# elif defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 600 +# define _POSIX_C_SOURCE 199506L +# elif defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 700 +# define _POSIX_C_SOURCE 200112L +# else +# define _POSIX_C_SOURCE 200809L +# endif +# define __USE_POSIX_IMPLICITLY 1 +#endif + +/* Some C libraries once required _REENTRANT and/or _THREAD_SAFE to be + defined in all multithreaded code. GNU libc has not required this + for many years. We now treat them as compatibility synonyms for + _POSIX_C_SOURCE=199506L, which is the earliest level of POSIX with + comprehensive support for multithreaded code. Using them never + lowers the selected level of POSIX conformance, only raises it. */ +#if ((!defined _POSIX_C_SOURCE || (_POSIX_C_SOURCE - 0) < 199506L) \ + && (defined _REENTRANT || defined _THREAD_SAFE)) +# define _POSIX_SOURCE 1 +# undef _POSIX_C_SOURCE +# define _POSIX_C_SOURCE 199506L +#endif + +#if (defined _POSIX_SOURCE \ + || (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 1) \ + || defined _XOPEN_SOURCE) +# define __USE_POSIX 1 +#endif + +#if defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 2 || defined _XOPEN_SOURCE +# define __USE_POSIX2 1 +#endif + +#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 199309L +# define __USE_POSIX199309 1 +#endif + +#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 199506L +# define __USE_POSIX199506 1 +#endif + +#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 200112L +# define __USE_XOPEN2K 1 +# undef __USE_ISOC95 +# define __USE_ISOC95 1 +# undef __USE_ISOC99 +# define __USE_ISOC99 1 +#endif + +#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 200809L +# define __USE_XOPEN2K8 1 +# undef _ATFILE_SOURCE +# define _ATFILE_SOURCE 1 +#endif + +#ifdef _XOPEN_SOURCE +# define __USE_XOPEN 1 +# if (_XOPEN_SOURCE - 0) >= 500 +# define __USE_XOPEN_EXTENDED 1 +# define __USE_UNIX98 1 +# undef _LARGEFILE_SOURCE +# define _LARGEFILE_SOURCE 1 +# if (_XOPEN_SOURCE - 0) >= 600 +# if (_XOPEN_SOURCE - 0) >= 700 +# define __USE_XOPEN2K8 1 +# define __USE_XOPEN2K8XSI 1 +# endif +# define __USE_XOPEN2K 1 +# define __USE_XOPEN2KXSI 1 +# undef __USE_ISOC95 +# define __USE_ISOC95 1 +# undef __USE_ISOC99 +# define __USE_ISOC99 1 +# endif +# else +# ifdef _XOPEN_SOURCE_EXTENDED +# define __USE_XOPEN_EXTENDED 1 +# endif +# endif +#endif + +#ifdef _LARGEFILE_SOURCE +# define __USE_LARGEFILE 1 +#endif + +#ifdef _LARGEFILE64_SOURCE +# define __USE_LARGEFILE64 1 +#endif + +#if defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64 +# define __USE_FILE_OFFSET64 1 +#endif + +#include + +#if defined _DEFAULT_SOURCE +# define __USE_MISC 1 +#endif + +#ifdef _ATFILE_SOURCE +# define __USE_ATFILE 1 +#endif + +#ifdef _DYNAMIC_STACK_SIZE_SOURCE +# define __USE_DYNAMIC_STACK_SIZE 1 +#endif + +#ifdef _GNU_SOURCE +# define __USE_GNU 1 +#endif + +#if defined _FORTIFY_SOURCE && _FORTIFY_SOURCE > 0 +# if !defined __OPTIMIZE__ || __OPTIMIZE__ <= 0 +# warning _FORTIFY_SOURCE requires compiling with optimization (-O) +# elif !__GNUC_PREREQ (4, 1) +# warning _FORTIFY_SOURCE requires GCC 4.1 or later +# elif _FORTIFY_SOURCE > 2 && (__glibc_clang_prereq (9, 0) \ + || __GNUC_PREREQ (12, 0)) + +# if _FORTIFY_SOURCE > 3 +# warning _FORTIFY_SOURCE > 3 is treated like 3 on this platform +# endif +# define __USE_FORTIFY_LEVEL 3 +# elif _FORTIFY_SOURCE > 1 +# if _FORTIFY_SOURCE > 2 +# warning _FORTIFY_SOURCE > 2 is treated like 2 on this platform +# endif +# define __USE_FORTIFY_LEVEL 2 +# else +# define __USE_FORTIFY_LEVEL 1 +# endif +#endif +#ifndef __USE_FORTIFY_LEVEL +# define __USE_FORTIFY_LEVEL 0 +#endif + +/* The function 'gets' existed in C89, but is impossible to use + safely. It has been removed from ISO C11 and ISO C++14. Note: for + compatibility with various implementations of , this test + must consider only the value of __cplusplus when compiling C++. */ +#if defined __cplusplus ? __cplusplus >= 201402L : defined __USE_ISOC11 +# define __GLIBC_USE_DEPRECATED_GETS 0 +#else +# define __GLIBC_USE_DEPRECATED_GETS 1 +#endif + +/* GNU formerly extended the scanf functions with modified format + specifiers %as, %aS, and %a[...] that allocate a buffer for the + input using malloc. This extension conflicts with ISO C99, which + defines %a as a standalone format specifier that reads a floating- + point number; moreover, POSIX.1-2008 provides the same feature + using the modifier letter 'm' instead (%ms, %mS, %m[...]). + + We now follow C99 unless GNU extensions are active and the compiler + is specifically in C89 or C++98 mode (strict or not). For + instance, with GCC, -std=gnu11 will have C99-compliant scanf with + or without -D_GNU_SOURCE, but -std=c89 -D_GNU_SOURCE will have the + old extension. */ +#if (defined __USE_GNU \ + && (defined __cplusplus \ + ? (__cplusplus < 201103L && !defined __GXX_EXPERIMENTAL_CXX0X__) \ + : (!defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L))) +# define __GLIBC_USE_DEPRECATED_SCANF 1 +#else +# define __GLIBC_USE_DEPRECATED_SCANF 0 +#endif + +/* ISO C2X added support for a 0b or 0B prefix on binary constants as + inputs to strtol-family functions (base 0 or 2). This macro is + used to condition redirection in headers to allow that redirection + to be disabled when building those functions, despite _GNU_SOURCE + being defined. */ +#if __GLIBC_USE (ISOC2X) +# define __GLIBC_USE_C2X_STRTOL 1 +#else +# define __GLIBC_USE_C2X_STRTOL 0 +#endif + +/* Get definitions of __STDC_* predefined macros, if the compiler has + not preincluded this header automatically. */ +#include + +/* This macro indicates that the installed library is the GNU C Library. + For historic reasons the value now is 6 and this will stay from now + on. The use of this variable is deprecated. Use __GLIBC__ and + __GLIBC_MINOR__ now (see below) when you want to test for a specific + GNU C library version and use the values in to get + the sonames of the shared libraries. */ +#undef __GNU_LIBRARY__ +#define __GNU_LIBRARY__ 6 + +/* Major and minor version number of the GNU C library package. Use + these macros to test for features in specific releases. */ +#define __GLIBC__ 2 +#define __GLIBC_MINOR__ 38 + +#define __GLIBC_PREREQ(maj, min) \ + ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) + +/* This is here only because every header file already includes this one. */ +#ifndef __ASSEMBLER__ +# ifndef _SYS_CDEFS_H +# include +# endif + +/* If we don't have __REDIRECT, prototypes will be missing if + __USE_FILE_OFFSET64 but not __USE_LARGEFILE[64]. */ +# if defined __USE_FILE_OFFSET64 && !defined __REDIRECT +# define __USE_LARGEFILE 1 +# define __USE_LARGEFILE64 1 +# endif + +#endif /* !ASSEMBLER */ + +/* Decide whether we can define 'extern inline' functions in headers. */ +#if __GNUC_PREREQ (2, 7) && defined __OPTIMIZE__ \ + && !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__ \ + && defined __extern_inline +# define __USE_EXTERN_INLINES 1 +#endif + + +/* This is here only because every header file already includes this one. + Get the definitions of all the appropriate `__stub_FUNCTION' symbols. + contains `#define __stub_FUNCTION' when FUNCTION is a stub + that will always return failure (and set errno to ENOSYS). */ +#include + + +#endif /* features.h */ diff --git a/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h.blob b/.ccls-cache/@@home@l@Desktop@test@ded/@usr@include@features.h.blob new file mode 100644 index 0000000000000000000000000000000000000000..20c26eb3f91627058a3725641dacfadab741a646 GIT binary patch literal 15333 zcmb7LdyE`MnV()e*c&ZimdHSee4F^PS{sjNcjGK;%Q#-IcawG2yUsqGbwbka>FJqi zyL-Cb-7~Z63ke5z7my+#LIg#i04LoeK5>_zm;=HckJF)xd4)$HBnU_Vap)35qU0Z& zvF}$^-PK()H9f;hGhLec`m66%zwfKBd$(sUy>@>5Tt>;{%8qU1tlUAvKN&b~E-?Hc zS1<}W-_vupW>$9UnRU9QRZ3lvX6uf3(yWxS1=BP1!131J({_bSV~3Kf`d-eg=vK90 zATB@1_sYEx==1NwTOl|t{V^6iY8CI=& za*b>)D0d-cZS}^H(V{ytmLe=Q0kM2V)H^aTozJhq$92u^yrv%%@{VH>!WO$wR<7fl ztD~xA+5$6SIW2H(Q&;O|!GKq*mB8>gaa!yZP0LX8o>TYP4Z~;hZ9Jp9RkKob2v;61 za!*qmLUPSQjCFRoU-gQb9(yfK+_GVrt3-r<{leX%oIY8o#C0YCFO{xTte7cMQG>Ja z_RUgFvzlUCFgl|POxy4hWNGpnHIq8J??2~7@%aV_oT^R(l^a=Dvgl?lrzk|82traR6_(@;%EEmkXfU^*2) zVZJ0((M?YlydyuE0z*aYkR}dN-`8!slk4GhKRD^1mTFn8nAoh+sYKk!K{2ue7N}@6 z1~^_uQ=myj)?P&X2S^9Eg8tZ0T7a93F?A0UHux- z=ltY^s3_M5Qi4CB;rc}Dk-bF)6D%Utwz%p8yjqY_N*nHLcN8}mo{#MRXWnUblii3X z$94&lM|yGHb<1?~j^@epH4SEDjG&T5PC^g{YXUo|a;{g@%QC={QirCfv;caVM~j|e zs3mL7r69X~pe%Zp?Lh(pntrmgz@Z3MzSy~9Ky;D>n$>}Kfrz+i>H)!tuMr?b9KHck zZZV6tRPiMA4?Q99=_=AeK7P)v+QEcrK@~CbCyi^F>wy0qWX=KXA&ou~PB&hWenwZYJZ2gE9vMXnK?u)C-^BNUV2mv~b6A+e__Kb9KwE zTBi!9B;hB$qpq2Ods0>?O38hxBc!CzQ6hv8ZnUyikr9NQ9+7B1isE=GEtV`}m1WPX zUou2Mfzz@jqhffb&YYLcYd($d77y|uaa^NPqBTNGkR-Nl#qdQGiR31Mt+L3@X|73h zyXWCPv3{b7E7q-Txg68+9W6EXs;|`yy_3BoOd$o^*sg9c1x~CnfFGAImx`hr%_%X> zb7jph+w7P&R+vkH0K|fcO60U5kt4D^_aJbnH8o15jWURI$3%SD-extpR|g`CsVO4k z%acW{#nCq{V?K^i?ZeP&12^z4oEFl$Xm#9cDoh_sn4p&#euP!A~TXUTU07l zWN zLH`21Bf$=l%cyr5IN%&lPMV~YZz;h9a^J8}{I+LD8a}98EOAAtjxsX4L|Y^-Np&%mKh@R^hos%cp+k-ofTT$EU97RO$bOV3yn&tq z4s|NfE?ZcuXy}&;kr+9lCDm}Mw2fqGgsgq1fb{7JMF)RU2T466H7_l@BmpHQHY%rd zJ1zW@n#acKN`2q7U7QkGc3^<={vCIwlv8nNwcDzWhTehh*tU~a5|G~bNZa0cOZ82Z zX^G`{+mTkT;3Xj_NLQrgbSgD9X?!4hTQ<6s*tXH;vQX8LmF3o8cmps-{EAQ`3P_*J zNKfn$9qW^exhI-Sq+zv-UT+QkCp2#bdr1{sC6BwBtdX{t4rghP|J+SYPl>2}DA|hG zyz&+SrC^U{)YQ7JbE~q3wpIMJBTd{j&99iQ%Szuz{(f0Zqf{i61x5|!b93`2jV<*y zG42Ivp(P}Klj!65t|3C2)Ef+BNt39_C2e6j@K>!uK%O|Z1auTSd<&g$aPBbK0VN&l z0%^S<71?%>HoM+W6cll&??zm$8upaZW!0^sRrSm1OzV1Ci=VnBPf^@DWwQ{T$mx1% z?l%f19_$kT|6;nB0;J5HZrZt_Q>)MS)z